diff --git a/SQL/database_changelog.txt b/SQL/database_changelog.txt index 9754c511d0..9835d792f6 100644 --- a/SQL/database_changelog.txt +++ b/SQL/database_changelog.txt @@ -1,33 +1,3 @@ -1 September 2016, by Jordie0608 - -Modified table 'notes', adding column 'secret'. - -ALTER TABLE `feedback`.`notes` ADD COLUMN `secret` TINYINT(1) NOT NULL DEFAULT '1' AFTER `server` - -Remember to add a prefix to the table name if you use them - ----------------------------------------------------- - -19 August 2016, by Shadowlight213 - -Changed appearance bans to be jobbans. - -UPDATE 'feedback'.`ban` SET `job` = "appearance", `bantype` = "JOB_PERMABAN" WHERE `bantype` = "APPEARANCE_PERMABAN" - -Remember to add a prefix to the table name if you use them - ----------------------------------------------------- - -3 July 2016, by Jordie0608 - -Modified table 'poll_question', adding column 'dontshow' which was recently added to the server schema. - -ALTER TABLE `feedback`.`poll_question` ADD COLUMN `dontshow` TINYINT(1) NOT NULL DEFAULT '0' AFTER `for_trialmin` - -Remember to add a prefix to the table name if you use them - ----------------------------------------------------- - 16th April 2016 Added ipintel table, only required if ip intel is enabled in the config diff --git a/SQL/tgstation_schema.sql b/SQL/tgstation_schema.sql index 60dcde0fd0..3c4864893d 100644 --- a/SQL/tgstation_schema.sql +++ b/SQL/tgstation_schema.sql @@ -266,7 +266,6 @@ CREATE TABLE `poll_question` ( `createdby_ckey` varchar(45) NULL DEFAULT NULL, `createdby_ip` varchar(45) NULL DEFAULT NULL, `for_trialmin` varchar(45) NULL DEFAULT NULL, - `dontshow` tinyint(1) NOT NULL DEFAULT '0', PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1; /*!40101 SET character_set_client = @saved_cs_client */; @@ -361,7 +360,6 @@ CREATE TABLE `notes` ( `last_editor` varchar(32), `edits` text, `server` varchar(50) NOT NULL, - `secret` tinyint(1) NOT NULL DEFAULT '1', PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1; /*!40101 SET character_set_client = @saved_cs_client */; diff --git a/SQL/tgstation_schema_prefixed.sql b/SQL/tgstation_schema_prefixed.sql index f605339ee3..ab49b337cf 100644 --- a/SQL/tgstation_schema_prefixed.sql +++ b/SQL/tgstation_schema_prefixed.sql @@ -261,7 +261,6 @@ CREATE TABLE `SS13_poll_question` ( `createdby_ckey` varchar(45) NULL DEFAULT NULL, `createdby_ip` varchar(45) NULL DEFAULT NULL, `for_trialmin` varchar(45) NULL DEFAULT NULL, - `dontshow` tinyint(1) NOT NULL DEFAULT '0', PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1; /*!40101 SET character_set_client = @saved_cs_client */; @@ -356,7 +355,6 @@ CREATE TABLE `SS13_notes` ( `last_editor` varchar(32), `edits` text, `server` varchar(50) NOT NULL, - `secret` tinyint(1) NOT NULL DEFAULT '1', PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1; /*!40101 SET character_set_client = @saved_cs_client */; diff --git a/_maps/RandomRuins/LavaRuins/korlavabaseplsbebetteratmapping.dmm b/_maps/RandomRuins/LavaRuins/korlavabaseplsbebetteratmapping.dmm deleted file mode 100644 index bef60a07f6..0000000000 --- a/_maps/RandomRuins/LavaRuins/korlavabaseplsbebetteratmapping.dmm +++ /dev/null @@ -1,35 +0,0 @@ -"a" = (/turf/open/space,/area/space) - -(1,1,1) = {" -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -"} diff --git a/_maps/RandomRuins/LavaRuins/lavaland_biodome_beach.dmm b/_maps/RandomRuins/LavaRuins/lavaland_biodome_beach.dmm index 58ed1fef02..8d4f3204e8 100644 --- a/_maps/RandomRuins/LavaRuins/lavaland_biodome_beach.dmm +++ b/_maps/RandomRuins/LavaRuins/lavaland_biodome_beach.dmm @@ -1,1554 +1,130 @@ -//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE -"aa" = ( -/turf/template_noop, -/area/template_noop) -"ab" = ( -/turf/closed/wall/r_wall{ - baseturf = /turf/open/floor/plating/lava/smooth - }, -/area/ruin/powered) -"ac" = ( -/turf/closed/wall/r_wall, -/area/ruin/powered) -"ad" = ( -/obj/structure/flora/ausbushes/leafybush, -/turf/open/floor/plating/beach/sand, -/area/ruin/powered) -"ae" = ( -/obj/structure/table, -/obj/item/weapon/storage/toolbox/mechanical, -/obj/item/stack/cable_coil, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth - }, -/area/ruin/powered) -"af" = ( -/obj/structure/table, -/obj/item/clothing/mask/gas, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth - }, -/area/ruin/powered) -"ag" = ( -/obj/structure/reagent_dispensers/fueltank, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth - }, -/area/ruin/powered) -"ah" = ( -/obj/machinery/power/smes, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth - }, -/area/ruin/powered) -"ai" = ( -/obj/machinery/portable_atmospherics/canister/oxygen, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth - }, -/area/ruin/powered) -"aj" = ( -/turf/closed/wall/mineral/sandstone{ - baseturf = /turf/open/floor/plating/beach/sand - }, -/area/ruin/powered) -"ak" = ( -/obj/structure/toilet, -/obj/effect/decal/sandeffect, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth - }, -/area/ruin/powered) -"al" = ( -/obj/structure/urinal{ - pixel_y = 32 - }, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth - }, -/area/ruin/powered) -"am" = ( -/obj/structure/urinal{ - pixel_y = 32 - }, -/obj/effect/decal/sandeffect, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth - }, -/area/ruin/powered) -"an" = ( -/obj/item/device/flashlight/lantern, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth - }, -/area/ruin/powered) -"ao" = ( -/obj/structure/sink{ - dir = 4; - icon_state = "sink"; - pixel_x = 11; - pixel_y = 0 - }, -/obj/effect/decal/sandeffect, -/obj/structure/mirror{ - pixel_x = 28 - }, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth - }, -/area/ruin/powered) -"ap" = ( -/obj/structure/flora/ausbushes/sparsegrass, -/turf/open/floor/plating/beach/sand, -/area/ruin/powered) -"aq" = ( -/obj/structure/flora/ausbushes/sunnybush, -/turf/open/floor/plating/beach/sand, -/area/ruin/powered) -"ar" = ( -/turf/open/floor/plating/beach/sand, -/area/ruin/powered) -"as" = ( -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth - }, -/area/ruin/powered) -"at" = ( -/obj/item/weapon/tank/internals/oxygen, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth - }, -/area/ruin/powered) -"au" = ( -/obj/effect/decal/sandeffect, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth - }, -/area/ruin/powered) -"av" = ( -/obj/machinery/door/airlock/hatch, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth - }, -/area/ruin/powered) -"aw" = ( -/obj/machinery/door/airlock/sandstone, -/turf/open/floor/wood, -/area/ruin/powered) -"ax" = ( -/obj/structure/extinguisher_cabinet, -/turf/closed/wall/mineral/sandstone{ - baseturf = /turf/open/floor/plating/beach/sand - }, -/area/ruin/powered) -"ay" = ( -/obj/machinery/door/airlock/hatch, -/obj/effect/decal/sandeffect, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth - }, -/area/ruin/powered) -"az" = ( -/obj/item/clothing/neck/necklace/dope, -/obj/item/weapon/reagent_containers/spray/spraytan, -/turf/open/floor/plating/beach/sand, -/area/ruin/powered) -"aA" = ( -/obj/effect/decal/sandeffect, -/turf/open/floor/plating/beach/sand, -/area/ruin/powered) -"aB" = ( -/turf/open/floor/plasteel/asteroid/warning{ - baseturf = /turf/open/floor/plating/beach/sand; - dir = 1; - tag = "icon-asteroidwarning (NORTH)" - }, -/area/ruin/powered) -"aC" = ( -/turf/open/floor/wood, -/area/ruin/powered) -"aD" = ( -/obj/structure/table, -/obj/item/weapon/storage/box/drinkingglasses, -/obj/item/weapon/storage/box/drinkingglasses, -/obj/item/weapon/reagent_containers/food/drinks/shaker, -/obj/item/weapon/storage/box/beakers, -/turf/open/floor/wood, -/area/ruin/powered) -"aE" = ( -/obj/structure/table, -/obj/machinery/reagentgrinder, -/turf/open/floor/wood, -/area/ruin/powered) -"aF" = ( -/obj/machinery/vending/boozeomat{ - emagged = 1; - req_access_txt = "0" - }, -/turf/open/floor/wood, -/area/ruin/powered) -"aG" = ( -/obj/structure/table, -/obj/item/weapon/book/manual/barman_recipes, -/obj/item/weapon/reagent_containers/glass/rag, -/turf/open/floor/wood, -/area/ruin/powered) -"aH" = ( -/obj/structure/table, -/obj/item/weapon/storage/box/donkpockets, -/turf/open/floor/wood, -/area/ruin/powered) -"aI" = ( -/obj/structure/table, -/obj/machinery/microwave, -/turf/open/floor/wood, -/area/ruin/powered) -"aJ" = ( -/obj/structure/closet/crate/bin, -/obj/item/weapon/tank/internals/emergency_oxygen, -/obj/item/trash/candy, -/obj/item/toy/talking/owl, -/turf/open/floor/plasteel/asteroid/warning{ - baseturf = /turf/open/floor/plating/beach/sand; - dir = 1; - tag = "icon-asteroidwarning (NORTH)" - }, -/area/ruin/powered) -"aK" = ( -/turf/open/floor/plasteel/asteroid{ - baseturf = /turf/open/floor/plating/beach/sand - }, -/area/ruin/powered) -"aL" = ( -/obj/effect/mob_spawn/human/bartender/alive{ - name = "beach bum sleeper" - }, -/turf/open/floor/wood, -/area/ruin/powered) -"aM" = ( -/obj/structure/reagent_dispensers/beerkeg, -/turf/open/floor/wood, -/area/ruin/powered) -"aN" = ( -/obj/machinery/vending/cigarette, -/turf/open/floor/plasteel/asteroid{ - baseturf = /turf/open/floor/plating/beach/sand - }, -/area/ruin/powered) -"aO" = ( -/obj/structure/stacklifter, -/turf/open/floor/plating/beach/sand, -/area/ruin/powered) -"aP" = ( -/obj/structure/table/wood, -/turf/open/floor/wood, -/area/ruin/powered) -"aQ" = ( -/obj/structure/table/wood, -/obj/item/device/flashlight/lamp, -/turf/open/floor/wood, -/area/ruin/powered) -"aR" = ( -/obj/structure/table/wood, -/obj/item/weapon/reagent_containers/food/drinks/bottle/tequila, -/turf/open/floor/wood, -/area/ruin/powered) -"aS" = ( -/obj/machinery/processor, -/turf/open/floor/wood, -/area/ruin/powered) -"aT" = ( -/obj/machinery/vending/cola, -/turf/open/floor/plasteel/asteroid{ - baseturf = /turf/open/floor/plating/beach/sand - }, -/area/ruin/powered) -"aU" = ( -/obj/effect/overlay/palmtree_l, -/turf/open/floor/plating/beach/sand, -/area/ruin/powered) -"aV" = ( -/obj/effect/mob_spawn/human/beach/alive{ - flavour_text = "You're, like, totally a dudebro, bruh. Ch'yea. You came here, like, on spring break, hopin' to pick up some bangin' hot chicks, y'knaw?"; - pocket2 = /obj/item/weapon/reagent_containers/food/snacks/pizzaslice/dank; - uniform = /obj/item/clothing/under/pants/youngfolksjeans - }, -/turf/open/floor/plating/beach/sand, -/area/ruin/powered) -"aW" = ( -/obj/structure/chair/stool, -/turf/open/floor/plasteel/asteroid/warning{ - baseturf = /turf/open/floor/plating/beach/sand; - dir = 1; - tag = "icon-asteroidwarning (NORTH)" - }, -/area/ruin/powered) -"aX" = ( -/obj/structure/closet/secure_closet/freezer/meat, -/turf/open/floor/wood, -/area/ruin/powered) -"aY" = ( -/obj/machinery/vending/snack, -/turf/open/floor/plasteel/asteroid{ - baseturf = /turf/open/floor/plating/beach/sand - }, -/area/ruin/powered) -"aZ" = ( -/obj/effect/overlay/coconut, -/turf/open/floor/plating/beach/sand, -/area/ruin/powered) -"ba" = ( -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/turf/open/floor/pod/dark{ - baseturf = /turf/open/floor/plating/asteroid/basalt - }, -/area/ruin/powered) -"bb" = ( -/obj/structure/weightlifter, -/turf/open/floor/plating/beach/sand, -/area/ruin/powered) -"bc" = ( -/obj/machinery/door/airlock/sandstone, -/obj/effect/decal/sandeffect, -/turf/open/floor/wood, -/area/ruin/powered) -"bd" = ( -/obj/structure/closet/secure_closet/freezer/kitchen{ - req_access = null - }, -/turf/open/floor/wood, -/area/ruin/powered) -"be" = ( -/obj/vehicle/scooter/skateboard{ - dir = 4 - }, -/turf/open/floor/plating/beach/sand, -/area/ruin/powered) -"bf" = ( -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/turf/open/floor/pod/dark{ - baseturf = /turf/open/floor/plating/asteroid/basalt - }, -/area/ruin/powered) -"bg" = ( -/obj/structure/sign/barsign, -/turf/closed/wall/mineral/sandstone, -/area/ruin/powered) -"bh" = ( -/turf/closed/wall/mineral/sandstone, -/area/ruin/powered) -"bi" = ( -/turf/open/floor/plating/beach/sand{ - density = 1; - opacity = 1 - }, -/area/ruin/powered) -"bj" = ( -/obj/structure/chair/wood/normal{ - icon_state = "wooden_chair"; - dir = 4 - }, -/turf/open/floor/plasteel/asteroid{ - baseturf = /turf/open/floor/plating/beach/sand - }, -/area/ruin/powered) -"bk" = ( -/obj/structure/table/wood, -/obj/item/weapon/reagent_containers/food/snacks/pastatomato, -/turf/open/floor/plasteel/asteroid{ - baseturf = /turf/open/floor/plating/beach/sand - }, -/area/ruin/powered) -"bl" = ( -/obj/structure/chair/wood/normal{ - icon_state = "wooden_chair"; - dir = 8 - }, -/turf/open/floor/plasteel/asteroid{ - baseturf = /turf/open/floor/plating/beach/sand - }, -/area/ruin/powered) -"bm" = ( -/mob/living/simple_animal/crab, -/turf/open/floor/plating/beach/sand{ - density = 1; - opacity = 1 - }, -/area/ruin/powered) -"bn" = ( -/obj/structure/closet/athletic_mixed, -/turf/open/floor/pod/dark{ - baseturf = /turf/open/floor/plating/asteroid/basalt - }, -/area/ruin/powered) -"bo" = ( -/obj/structure/rack, -/obj/item/clothing/shoes/sandal, -/obj/item/clothing/shoes/sandal, -/obj/effect/decal/sandeffect, -/turf/open/floor/pod/dark{ - baseturf = /turf/open/floor/plating/asteroid/basalt - }, -/area/ruin/powered) -"bp" = ( -/obj/structure/grille, -/obj/structure/window/fulltile, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth - }, -/area/ruin/powered) -"bq" = ( -/obj/structure/closet/athletic_mixed, -/obj/effect/decal/sandeffect, -/turf/open/floor/pod/dark{ - baseturf = /turf/open/floor/plating/asteroid/basalt - }, -/area/ruin/powered) -"br" = ( -/turf/open/floor/pod/dark{ - baseturf = /turf/open/floor/plating/asteroid/basalt - }, -/area/ruin/powered) -"bs" = ( -/obj/effect/decal/sandeffect, -/turf/open/floor/pod/dark{ - baseturf = /turf/open/floor/plating/asteroid/basalt - }, -/area/ruin/powered) -"bt" = ( -/obj/machinery/door/airlock/hatch, -/obj/structure/fans/tiny, -/turf/open/floor/pod/dark{ - baseturf = /turf/open/floor/plating/asteroid/basalt - }, -/area/ruin/powered) -"bu" = ( -/turf/open/floor/pod/light{ - baseturf = /turf/open/floor/plating/lava/smooth - }, -/area/ruin/powered) -"bv" = ( -/obj/effect/decal/sandeffect, -/turf/open/floor/pod/light{ - baseturf = /turf/open/floor/plating/lava/smooth - }, -/area/ruin/powered) -"bw" = ( -/obj/machinery/door/airlock/sandstone, -/turf/open/floor/pod/dark{ - baseturf = /turf/open/floor/plating/asteroid/basalt - }, -/area/ruin/powered) -"bx" = ( -/obj/structure/flora/rock, -/turf/open/floor/plating/beach/sand, -/area/ruin/powered) -"by" = ( -/obj/machinery/door/airlock/sandstone, -/obj/effect/decal/sandeffect, -/turf/open/floor/pod/dark{ - baseturf = /turf/open/floor/plating/asteroid/basalt - }, -/area/ruin/powered) -"bz" = ( -/mob/living/simple_animal/crab, -/turf/open/floor/plating/beach/sand, -/area/ruin/powered) -"bA" = ( -/obj/structure/window/reinforced{ - dir = 1 - }, -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/item/weapon/bikehorn/airhorn, -/obj/structure/table/wood, -/obj/item/weapon/storage/firstaid, -/obj/item/weapon/storage/firstaid/brute, -/turf/open/floor/wood, -/area/ruin/powered) -"bB" = ( -/obj/structure/window/reinforced{ - dir = 4; - pixel_x = 0 - }, -/obj/structure/window/reinforced{ - dir = 1; - layer = 2.9 - }, -/obj/structure/chair/stool, -/turf/open/floor/wood, -/area/ruin/powered) -"bC" = ( -/obj/structure/table/wood, -/obj/item/weapon/tank/internals/oxygen, -/obj/item/weapon/pickaxe, -/obj/item/clothing/mask/gas, -/turf/open/floor/pod/dark{ - baseturf = /turf/open/floor/plating/asteroid/basalt - }, -/area/ruin/powered) -"bD" = ( -/turf/open/floor/pod/dark{ - baseturf = /turf/open/floor/plating/asteroid/basalt - }, -/obj/structure/dresser, -/turf/open/floor/plasteel/sandeffect, -/area/ruin/powered) -"bE" = ( -/obj/item/weapon/reagent_containers/spray/spraytan, -/turf/open/floor/plating/beach/sand, -/area/ruin/powered) -"bF" = ( -/obj/item/toy/beach_ball, -/turf/open/floor/plating/beach/sand, -/area/ruin/powered) -"bG" = ( -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/structure/window/reinforced, -/obj/item/device/megaphone, -/turf/open/floor/wood, -/area/ruin/powered) -"bH" = ( -/obj/structure/window/reinforced{ - dir = 4; - pixel_x = 0 - }, -/obj/effect/mob_spawn/human/beach/alive{ - flavour_text = "You're a spunky lifeguard! It's up to you to make sure nobody drowns or gets eaten by sharks and stuff."; - has_id = 1; - id_access = "Medical Doctor"; - id_job = "Lifeguard"; - mob_gender = "female" - }, -/turf/open/floor/wood, -/area/ruin/powered) -"bI" = ( -/obj/structure/dresser, -/turf/open/floor/pod/dark{ - baseturf = /turf/open/floor/plating/asteroid/basalt - }, -/area/ruin/powered) -"bJ" = ( -/obj/structure/chair, -/turf/open/floor/plating/beach/sand, -/area/ruin/powered) -"bK" = ( -/obj/item/weapon/storage/backpack/dufflebag, -/turf/open/floor/plating/beach/sand, -/area/ruin/powered) -"bL" = ( -/obj/effect/decal/sandeffect{ - density = 1 - }, -/obj/effect/decal/fakelattice, -/turf/open/floor/pod/light{ - baseturf = /turf/open/floor/plating/lava/smooth; - density = 1 - }, -/area/ruin/powered) -"bM" = ( -/turf/open/floor/plasteel/stairs/old, -/area/ruin/powered) -"bN" = ( -/obj/structure/flora/ausbushes/reedbush, -/turf/open/floor/plating/beach/sand, -/area/ruin/powered) -"bO" = ( -/obj/item/device/camera, -/turf/open/floor/plating/beach/sand, -/area/ruin/powered) -"bP" = ( -/obj/item/weapon/reagent_containers/food/drinks/beer, -/turf/open/floor/plating/beach/sand, -/area/ruin/powered) -"bQ" = ( -/obj/structure/flora/ausbushes/reedbush, -/turf/open/floor/plating/beach/coastline_t, -/area/ruin/powered) -"bR" = ( -/turf/open/floor/plating/beach/coastline_t, -/area/ruin/powered) -"bS" = ( -/obj/structure/flora/ausbushes/sparsegrass, -/turf/open/floor/plating/beach/coastline_t, -/area/ruin/powered) -"bT" = ( -/turf/open/floor/plating/beach/coastline_b, -/area/ruin/powered) -"bU" = ( -/turf/open/floor/plating/beach/water, -/area/ruin/powered) -"bV" = ( -/obj/structure/flora/ausbushes/stalkybush, -/turf/open/floor/plating/beach/water, -/area/ruin/powered) +"aa" = (/turf/template_noop,/area/template_noop) +"ab" = (/turf/closed/wall/r_wall{baseturf = /turf/open/floor/plating/lava/smooth},/area/ruin/powered) +"ac" = (/turf/closed/wall/r_wall,/area/ruin/powered) +"ad" = (/obj/structure/flora/ausbushes/leafybush,/turf/open/floor/plating/beach/sand,/area/ruin/powered) +"ae" = (/obj/structure/table,/obj/item/weapon/storage/toolbox/mechanical,/obj/item/stack/cable_coil,/turf/open/floor/plating{baseturf = /turf/open/floor/plating/lava/smooth},/area/ruin/powered) +"af" = (/obj/structure/table,/obj/item/clothing/mask/gas,/turf/open/floor/plating{baseturf = /turf/open/floor/plating/lava/smooth},/area/ruin/powered) +"ag" = (/obj/structure/reagent_dispensers/fueltank,/turf/open/floor/plating{baseturf = /turf/open/floor/plating/lava/smooth},/area/ruin/powered) +"ah" = (/obj/machinery/power/smes,/turf/open/floor/plating{baseturf = /turf/open/floor/plating/lava/smooth},/area/ruin/powered) +"ai" = (/obj/machinery/portable_atmospherics/canister/oxygen,/turf/open/floor/plating{baseturf = /turf/open/floor/plating/lava/smooth},/area/ruin/powered) +"aj" = (/turf/closed/wall/mineral/sandstone{baseturf = /turf/open/floor/plating/beach/sand},/area/ruin/powered) +"ak" = (/obj/structure/toilet,/obj/effect/decal/sandeffect,/turf/open/floor/plating{baseturf = /turf/open/floor/plating/lava/smooth},/area/ruin/powered) +"al" = (/obj/structure/urinal{pixel_y = 32},/turf/open/floor/plating{baseturf = /turf/open/floor/plating/lava/smooth},/area/ruin/powered) +"am" = (/obj/structure/urinal{pixel_y = 32},/obj/effect/decal/sandeffect,/turf/open/floor/plating{baseturf = /turf/open/floor/plating/lava/smooth},/area/ruin/powered) +"an" = (/obj/item/device/flashlight/lantern,/turf/open/floor/plating{baseturf = /turf/open/floor/plating/lava/smooth},/area/ruin/powered) +"ao" = (/obj/structure/sink{dir = 4; icon_state = "sink"; pixel_x = 11; pixel_y = 0},/obj/effect/decal/sandeffect,/obj/structure/mirror{pixel_x = 28},/turf/open/floor/plating{baseturf = /turf/open/floor/plating/lava/smooth},/area/ruin/powered) +"ap" = (/obj/structure/flora/ausbushes/sparsegrass,/turf/open/floor/plating/beach/sand,/area/ruin/powered) +"aq" = (/obj/structure/flora/ausbushes/sunnybush,/turf/open/floor/plating/beach/sand,/area/ruin/powered) +"ar" = (/turf/open/floor/plating/beach/sand,/area/ruin/powered) +"as" = (/turf/open/floor/plating{baseturf = /turf/open/floor/plating/lava/smooth},/area/ruin/powered) +"at" = (/obj/item/weapon/tank/internals/oxygen,/turf/open/floor/plating{baseturf = /turf/open/floor/plating/lava/smooth},/area/ruin/powered) +"au" = (/obj/effect/decal/sandeffect,/turf/open/floor/plating{baseturf = /turf/open/floor/plating/lava/smooth},/area/ruin/powered) +"av" = (/obj/machinery/door/airlock/hatch,/turf/open/floor/plating{baseturf = /turf/open/floor/plating/lava/smooth},/area/ruin/powered) +"aw" = (/obj/machinery/door/airlock/sandstone,/turf/open/floor/wood,/area/ruin/powered) +"ax" = (/obj/structure/extinguisher_cabinet,/turf/closed/wall/mineral/sandstone{baseturf = /turf/open/floor/plating/beach/sand},/area/ruin/powered) +"ay" = (/obj/machinery/door/airlock/hatch,/obj/effect/decal/sandeffect,/turf/open/floor/plating{baseturf = /turf/open/floor/plating/lava/smooth},/area/ruin/powered) +"az" = (/obj/item/clothing/tie/dope_necklace,/obj/item/weapon/reagent_containers/spray/spraytan,/turf/open/floor/plating/beach/sand,/area/ruin/powered) +"aA" = (/obj/effect/decal/sandeffect,/turf/open/floor/plating/beach/sand,/area/ruin/powered) +"aB" = (/turf/open/floor/plasteel/asteroid/warning{baseturf = /turf/open/floor/plating/beach/sand; dir = 1; tag = "icon-asteroidwarning (NORTH)"},/area/ruin/powered) +"aC" = (/turf/open/floor/wood,/area/ruin/powered) +"aD" = (/obj/structure/table,/obj/item/weapon/storage/box/drinkingglasses,/obj/item/weapon/storage/box/drinkingglasses,/obj/item/weapon/reagent_containers/food/drinks/shaker,/obj/item/weapon/storage/box/beakers,/turf/open/floor/wood,/area/ruin/powered) +"aE" = (/obj/structure/table,/obj/machinery/reagentgrinder,/turf/open/floor/wood,/area/ruin/powered) +"aF" = (/obj/machinery/vending/boozeomat{emagged = 1},/turf/open/floor/wood,/area/ruin/powered) +"aG" = (/obj/structure/table,/obj/item/weapon/book/manual/barman_recipes,/obj/item/weapon/reagent_containers/glass/rag,/turf/open/floor/wood,/area/ruin/powered) +"aH" = (/obj/structure/table,/obj/item/weapon/storage/box/donkpockets,/turf/open/floor/wood,/area/ruin/powered) +"aI" = (/obj/structure/table,/obj/machinery/microwave,/turf/open/floor/wood,/area/ruin/powered) +"aJ" = (/obj/structure/closet/crate/bin,/obj/item/weapon/tank/internals/emergency_oxygen,/obj/item/trash/candy,/obj/item/toy/talking/owl,/turf/open/floor/plasteel/asteroid/warning{baseturf = /turf/open/floor/plating/beach/sand; dir = 1; tag = "icon-asteroidwarning (NORTH)"},/area/ruin/powered) +"aK" = (/turf/open/floor/plasteel/asteroid{baseturf = /turf/open/floor/plating/beach/sand},/area/ruin/powered) +"aL" = (/obj/effect/mob_spawn/human/bartender/alive{name = "beach bum sleeper"},/turf/open/floor/wood,/area/ruin/powered) +"aM" = (/obj/structure/reagent_dispensers/beerkeg,/turf/open/floor/wood,/area/ruin/powered) +"aN" = (/obj/machinery/vending/cigarette,/turf/open/floor/plasteel/asteroid{baseturf = /turf/open/floor/plating/beach/sand},/area/ruin/powered) +"aO" = (/obj/structure/stacklifter,/turf/open/floor/plating/beach/sand,/area/ruin/powered) +"aP" = (/obj/structure/table/wood,/turf/open/floor/wood,/area/ruin/powered) +"aQ" = (/obj/structure/table/wood,/obj/item/device/flashlight/lamp,/turf/open/floor/wood,/area/ruin/powered) +"aR" = (/obj/structure/table/wood,/obj/item/weapon/reagent_containers/food/drinks/bottle/tequila,/turf/open/floor/wood,/area/ruin/powered) +"aS" = (/obj/machinery/processor,/turf/open/floor/wood,/area/ruin/powered) +"aT" = (/obj/machinery/vending/cola,/turf/open/floor/plasteel/asteroid{baseturf = /turf/open/floor/plating/beach/sand},/area/ruin/powered) +"aU" = (/obj/effect/overlay/palmtree_l,/turf/open/floor/plating/beach/sand,/area/ruin/powered) +"aV" = (/obj/effect/mob_spawn/human/beach/alive{flavour_text = "You're, like, totally a dudebro, bruh. Ch'yea. You came here, like, on spring break, hopin' to pick up some bangin' hot chicks, y'knaw?"; pocket2 = /obj/item/weapon/reagent_containers/food/snacks/pizzaslice/dank; uniform = /obj/item/clothing/under/pants/youngfolksjeans},/turf/open/floor/plating/beach/sand,/area/ruin/powered) +"aW" = (/obj/structure/chair/stool,/turf/open/floor/plasteel/asteroid/warning{baseturf = /turf/open/floor/plating/beach/sand; dir = 1; tag = "icon-asteroidwarning (NORTH)"},/area/ruin/powered) +"aX" = (/obj/structure/closet/secure_closet/freezer/meat,/turf/open/floor/wood,/area/ruin/powered) +"aY" = (/obj/machinery/vending/snack,/turf/open/floor/plasteel/asteroid{baseturf = /turf/open/floor/plating/beach/sand},/area/ruin/powered) +"aZ" = (/obj/effect/overlay/coconut,/turf/open/floor/plating/beach/sand,/area/ruin/powered) +"ba" = (/obj/machinery/light{dir = 4; icon_state = "tube1"},/turf/template_noop,/area/ruin/powered) +"bb" = (/obj/structure/weightlifter,/turf/open/floor/plating/beach/sand,/area/ruin/powered) +"bc" = (/obj/machinery/door/airlock/sandstone,/obj/effect/decal/sandeffect,/turf/open/floor/wood,/area/ruin/powered) +"bd" = (/obj/structure/closet/secure_closet/freezer/kitchen,/turf/open/floor/wood,/area/ruin/powered) +"be" = (/obj/vehicle/scooter/skateboard{dir = 4},/turf/open/floor/plating/beach/sand,/area/ruin/powered) +"bf" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/template_noop,/area/ruin/powered) +"bg" = (/obj/structure/sign/barsign,/turf/closed/wall/mineral/sandstone,/area/ruin/powered) +"bh" = (/turf/closed/wall/mineral/sandstone,/area/ruin/powered) +"bi" = (/obj/structure/chair/wood/normal{icon_state = "wooden_chair"; dir = 4},/turf/open/floor/plasteel/asteroid{baseturf = /turf/open/floor/plating/beach/sand},/area/ruin/powered) +"bj" = (/obj/structure/table/wood,/obj/item/weapon/reagent_containers/food/snacks/pastatomato,/turf/open/floor/plasteel/asteroid{baseturf = /turf/open/floor/plating/beach/sand},/area/ruin/powered) +"bk" = (/obj/structure/chair/wood/normal{icon_state = "wooden_chair"; dir = 8},/turf/open/floor/plasteel/asteroid{baseturf = /turf/open/floor/plating/beach/sand},/area/ruin/powered) +"bl" = (/mob/living/simple_animal/crab,/turf/open/floor/plating/beach/sand,/area/ruin/powered) +"bm" = (/obj/structure/closet/athletic_mixed,/turf/open/floor/pod/dark{baseturf = /turf/open/floor/plating/asteroid/basalt},/area/ruin/powered) +"bn" = (/obj/structure/rack,/obj/item/clothing/shoes/sandal,/obj/item/clothing/shoes/sandal,/obj/effect/decal/sandeffect,/turf/open/floor/pod/dark{baseturf = /turf/open/floor/plating/asteroid/basalt},/area/ruin/powered) +"bo" = (/obj/structure/grille,/obj/structure/window/fulltile,/turf/open/floor/plating{baseturf = /turf/open/floor/plating/lava/smooth},/area/ruin/powered) +"bp" = (/obj/structure/closet/athletic_mixed,/obj/effect/decal/sandeffect,/turf/open/floor/pod/dark{baseturf = /turf/open/floor/plating/asteroid/basalt},/area/ruin/powered) +"bq" = (/turf/open/floor/pod/dark{baseturf = /turf/open/floor/plating/asteroid/basalt},/area/ruin/powered) +"br" = (/obj/effect/decal/sandeffect,/turf/open/floor/pod/dark{baseturf = /turf/open/floor/plating/asteroid/basalt},/area/ruin/powered) +"bs" = (/obj/machinery/door/airlock/hatch,/obj/structure/fans/tiny,/turf/open/floor/pod/dark{baseturf = /turf/open/floor/plating/asteroid/basalt},/area/ruin/powered) +"bt" = (/turf/open/floor/pod/light{baseturf = /turf/open/floor/plating/lava/smooth},/area/ruin/powered) +"bu" = (/obj/effect/decal/sandeffect,/turf/open/floor/pod/light{baseturf = /turf/open/floor/plating/lava/smooth},/area/ruin/powered) +"bv" = (/obj/machinery/door/airlock/sandstone,/turf/open/floor/pod/dark{baseturf = /turf/open/floor/plating/asteroid/basalt},/area/ruin/powered) +"bw" = (/obj/structure/flora/rock,/turf/open/floor/plating/beach/sand,/area/ruin/powered) +"bx" = (/obj/machinery/door/airlock/sandstone,/obj/effect/decal/sandeffect,/turf/open/floor/pod/dark{baseturf = /turf/open/floor/plating/asteroid/basalt},/area/ruin/powered) +"by" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/item/weapon/bikehorn/airhorn,/obj/structure/table/wood,/obj/item/weapon/storage/firstaid,/obj/item/weapon/storage/firstaid/brute,/turf/open/floor/wood,/area/ruin/powered) +"bz" = (/obj/structure/window/reinforced{dir = 4; pixel_x = 0},/obj/structure/window/reinforced{dir = 1; layer = 2.9},/obj/structure/chair/stool,/turf/open/floor/wood,/area/ruin/powered) +"bA" = (/obj/structure/table/wood,/obj/item/weapon/tank/internals/oxygen,/obj/item/weapon/pickaxe,/obj/item/clothing/mask/gas,/turf/open/floor/pod/dark{baseturf = /turf/open/floor/plating/asteroid/basalt},/area/ruin/powered) +"bB" = (/obj/structure/dresser,/turf/open/floor/pod/dark{baseturf = /turf/open/floor/plating/asteroid/basalt},/area/ruin/powered) +"bC" = (/obj/item/weapon/reagent_containers/spray/spraytan,/turf/open/floor/plating/beach/sand,/area/ruin/powered) +"bD" = (/obj/item/toy/beach_ball,/turf/open/floor/plating/beach/sand,/area/ruin/powered) +"bE" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/obj/item/device/megaphone,/turf/open/floor/wood,/area/ruin/powered) +"bF" = (/obj/structure/window/reinforced{dir = 4; pixel_x = 0},/obj/effect/mob_spawn/human/beach/alive{flavour_text = "You're a spunky lifeguard! It's up to you to make sure nobody drowns or gets eaten by sharks and stuff."; has_id = 1; id_access = "Medical Doctor"; id_job = "Lifeguard"; mob_gender = "female"},/turf/open/floor/wood,/area/ruin/powered) +"bG" = (/obj/structure/chair,/turf/open/floor/plating/beach/sand,/area/ruin/powered) +"bH" = (/obj/item/weapon/storage/backpack/dufflebag,/turf/open/floor/plating/beach/sand,/area/ruin/powered) +"bI" = (/obj/effect/decal/sandeffect{density = 1},/obj/effect/decal/fakelattice,/turf/open/floor/pod/light{baseturf = /turf/open/floor/plating/lava/smooth; density = 1},/area/ruin/powered) +"bJ" = (/turf/open/floor/plasteel/stairs/old,/area/ruin/powered) +"bK" = (/obj/structure/flora/ausbushes/reedbush,/turf/open/floor/plating/beach/sand,/area/ruin/powered) +"bL" = (/obj/item/device/camera,/turf/open/floor/plating/beach/sand,/area/ruin/powered) +"bM" = (/obj/item/weapon/reagent_containers/food/drinks/beer,/turf/open/floor/plating/beach/sand,/area/ruin/powered) +"bN" = (/obj/structure/flora/ausbushes/reedbush,/turf/open/floor/plating/beach/coastline_t,/area/ruin/powered) +"bO" = (/turf/open/floor/plating/beach/coastline_t,/area/ruin/powered) +"bP" = (/obj/structure/flora/ausbushes/sparsegrass,/turf/open/floor/plating/beach/coastline_t,/area/ruin/powered) +"bQ" = (/turf/open/floor/plating/beach/coastline_b,/area/ruin/powered) +"bR" = (/turf/open/floor/plating/beach/water,/area/ruin/powered) +"bS" = (/obj/structure/flora/ausbushes/stalkybush,/turf/open/floor/plating/beach/water,/area/ruin/powered) (1,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -ba -aa -ab -ac -ac -bt -ab -bt -ac -ac -ab -aa -ba -aa -aa -aa -aa -aa -aa -aa -aa -"} -(2,1,1) = {" -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -ab -ab -bn -br -bu -bv -bu -bs -bC -ab -ab -ab -ab -ab -aa -aa -aa -aa -aa -aa -"} -(3,1,1) = {" -aa -aa -aa -aa -ab -ab -ab -ap -ar -ar -ar -ab -bo -br -bv -bv -bu -br -bI -ab -ad -bQ -bT -ab -ab -ab -aa -aa -aa -aa -"} -(4,1,1) = {" -aa -aa -aa -ab -ab -ap -ar -ar -ar -ar -ar -ab -bp -bp -bp -bw -bp -bp -bp -ab -ap -bR -bT -bU -bU -ab -ab -aa -aa -aa -"} -(5,1,1) = {" -aa -aa -ab -ab -ad -ar -ar -aO -ar -bb -ar -ar -ar -ar -aA -aA -aA -ar -ar -ar -bN -bR -bT -bU -bU -bU -ab -ab -aa -aa -"} -(6,1,1) = {" -aa -aa -ab -aq -ar -ar -ar -ar -aV -ar -ar -ar -ar -ar -ar -ar -ar -bz -ar -bJ -ar -bS -bT -bU -bU -bU -bU -ab -aa -aa -"} -(7,1,1) = {" -aa -ab -ab -ar -ap -az -ar -aO -ar -bb -ar -ar -ar -aU -aZ -ar -ar -ar -ar -ar -ar -bR -bT -bU -bU -bU -bU -ab -ab -aa -"} -(8,1,1) = {" -aa -ab -ad -ar -ar -ar -ar -ar -ar -ar -ar -ar -ar -ar -ar -ar -ar -ar -ar -bJ -bE -bR -bT -bU -bU -bU -bU -bU -ab -aa -"} -(9,1,1) = {" -aa -ab -ab -ab -ab -aA -aA -aA -aA -aA -aA -aA -aA -aA -ar -ar -ar -ap -ar -ar -bO -bR -bT -bU -bU -bU -bU -bU -ab -aa -"} -(10,1,1) = {" -aa -ac -ae -as -ab -aB -aK -aK -aK -aK -aK -aK -aK -aA -ar -ar -ap -bx -ar -bJ -ar -bR -bT -bU -bU -bV -bU -bU -ab -aa -"} -(11,1,1) = {" -aa -ac -af -as -aj -aj -aj -aj -aB -aK -aK -bj -aK -aA -ar -ar -ar -ar -ar -ar -ar -bR -bT -bU -bU -bU -bU -bU -ab -aa -"} -(12,1,1) = {" -aa -ac -ag -as -aw -aC -aC -aP -aW -aK -aK -bk -aK -aA -ar -ar -ap -ar -ar -bJ -ar -bR -bT -bU -bU -bU -bU -bU -ab -aa -"} -(13,1,1) = {" -aa -ac -ah -as -aj -aD -aC -aQ -aW -aK -aK -bl -aK -aA -ar -bx -ar -ar -ar -bK -ar -bR -bT -bU -bU -bU -bU -bU -ab -aa -"} -(14,1,1) = {" -aa -ac -ai -at -ax -aE -aL -aP -aW -aK -aK -aK -aK -aA -ar -ap -ar -ar -ar -bJ -ar -bR -bT -bU -bU -bU -bU -bU -ab -aa -"} -(15,1,1) = {" -aa -ac -aj -aj -aj -aF -aC -aR -aW -aK -aK -aK -aK -aA -ar -ar -ar -ar -bE -ar -ar -bR -bT -bU -bU -bU -bU -bU -ab -aa -"} -(16,1,1) = {" -aa -ac -ak -au -aj -aG -aC -aj -aj -bc -aj -aB -aK -aA -ar -ar -ar -ar -ar -bJ -ar -bR -bT -bU -bU -bU -bU -bU -ab -aa -"} -(17,1,1) = {" -aa -ac -aj -av -aj -aH -aC -aC -aC -aC -bg -aB -aK -aA -ar -ar -aU -ar -ar -ar -ar -bR -bT -bU -bV -bU -bU -bU -ab -aa -"} -(18,1,1) = {" -aa -ac -al -as -aj -aI -aM -aS -aX -bd -bh -aB -aK -aA -ar -aZ -ar -ar -bF -ar -bz -bR -bT -bU -bU -bU -bU -bU -ab -aa -"} -(19,1,1) = {" -aa -ac -am -as -aj -aj -aj -aj -aj -aj -aj -aB -aK -aA -ar -ar -ar -ar -ar -ar -ar -bR -bT -bU -bU -bU -bU -bU -ab -aa -"} -(20,1,1) = {" -aa -ac -an -au -aj -aJ -aN -aT -aY -aK -aK -aK -aK -aA -ar -ar -ar -bA -bG -bL -ar -bR -bT -bU -bU -bU -bU -bU -ab -aa -"} -(21,1,1) = {" -aa -ac -ao -au -ay -aK -aK -aK -aK -aK -aK -aK -aK -aA -ar -ar -ar -bB -bH -bM -ar -bR -bT -bU -bU -bU -bU -bU -ab -aa -"} -(22,1,1) = {" -aa -ab -ab -ab -ab -aA -aA -aA -aA -aA -aA -aA -aA -aA -ar -ar -ar -ar -ar -ar -bP -bR -bT -bU -bU -bU -bV -bU -ab -aa -"} -(23,1,1) = {" -aa -ab -ap -ar -ar -ar -ar -ar -ar -ar -ar -ar -ar -ar -ar -ar -ar -ar -ar -bJ -ar -bR -bT -bU -bU -bU -bU -bU -ab -aa -"} -(24,1,1) = {" -aa -ab -ab -ar -ap -ar -ar -aU -ar -ar -ar -bz -ar -ar -ar -ar -ar -aZ -ar -ar -ar -bR -bT -bU -bU -bU -bU -ab -ab -aa -"} -(25,1,1) = {" -aa -aa -ab -aq -ar -ar -ar -ar -aZ -ar -ar -ar -ar -ar -ar -ar -ar -ar -ar -ar -ar -bS -bT -bU -bU -bU -bU -ab -aa -aa -"} -(26,1,1) = {" -aa -aa -ab -ab -ap -ar -ar -aq -ar -be -ar -ar -ar -ar -aA -aA -aA -ar -ar -aU -ar -bR -bT -bU -bU -bU -ab -ab -aa -aa -"} -(27,1,1) = {" -aa -aa -aa -ab -ab -ad -ar -ar -ar -ar -ar -ab -bp -bp -bp -by -bp -bp -bp -ab -ap -bR -bT -bU -bU -ab -ab -aa -aa -aa -"} -(28,1,1) = {" -aa -aa -aa -aa -ab -ab -ab -ap -ar -ap -ar -ab -bq -br -bu -bv -bv -bs -bI -ab -bN -bR -bT -ab -ab -ab -aa -aa -aa -aa -"} -(29,1,1) = {" -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -ab -ab -bo -bs -bu -bu -bv -br -bC -ab -ab -ab -ab -ab -aa -aa -aa -aa -aa -aa -"} -(30,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -bf -aa -ab -ab -ab -bt -ab -bt -ab -ab -ab -aa -bf -aa -aa -aa -aa -aa -aa -aa -aa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaabababacacacacacacacacacacacacabababaaaaaaaaaaaa +aaaaaaaaabababadabaeafagahaiajakajalamanaoabapabababaaaaaaaa +aaaaaaababaqararabasasasasatajauavasasauauabararaqababaaaaaa +aaaaababadaraparababajawajaxajajajajajajayabaraparapababaaaa +aaaaabapararazaraAaBajaCaDaEaFaGaHaIajaJaKaAararararadabaaaa +aaababarararararaAaKajaCaCaLaCaCaCaMajaNaKaAarararararababaa +aaabaparaOaraOaraAaKajaPaQaPaRajaCaSajaTaKaAaraUaraqarapabaa +aaabarararaVararaAaKaBaWaWaWaWajaCaXajaYaKaAararaZarararabaa +baabararbbarbbaraAaKaKaKaKaKaKbcaCbdajaKaKaAarararbearapabbf +aaabararararararaAaKaKaKaKaKaKajbgbhajaKaKaAararararararabaa +ababababararararaAaKbibjbkaKaKaBaBaBaBaKaKaAarblararabababab +acbmbnboararararaAaKaKaKaKaKaKaKaKaKaKaKaKaAararararbobpbnab +acbqbqboararaUaraAaAaAaAaAaAaAaAaAaAaAaAaAaAararararbobqbrab +bsbtbuboaAaraZararararararararararararararararararaAbobtbtbs +abbububvaAarararararararbwaparararaZarararararararaAbxbubtab +bsbtbtboaAararararaparapararararaUararararararararaAbobububs +acbrbqboarblararapbwarararararararararbybzararaZararbobrbqab +acbAbBboararararararararararbCararbDarbEbFarararararbobBbAab +ababababarbGarbGarbGarbGbHbGarbGarararbIbJarbGararaUabababab +aaabadapbKararbCbLararararararararblarararbMararararapbKabaa +baabbNbObObPbObObObObObObObObObObObObObObObObObObPbObObOabbf +aaabbQbQbQbQbQbQbQbQbQbQbQbQbQbQbQbQbQbQbQbQbQbQbQbQbQbQabaa +aaababbRbRbRbRbRbRbRbRbRbRbRbRbRbRbRbRbRbRbRbRbRbRbRbRababaa +aaaaabbRbRbRbRbRbRbRbRbRbRbRbRbRbSbRbRbRbRbRbRbRbRbRbRabaaaa +aaaaababbRbRbRbRbRbSbRbRbRbRbRbRbRbRbRbRbRbRbRbRbRbRababaaaa +aaaaaaababbRbRbRbRbRbRbRbRbRbRbRbRbRbRbRbRbSbRbRbRababaaaaaa +aaaaaaaaabababbRbRbRbRbRbRbRbRbRbRbRbRbRbRbRbRabababaaaaaaaa +aaaaaaaaaaaaababababababababababababababababababaaaaaaaaaaaa +aaaaaaaaaaaaababababababababababababababababababaaaaaaaaaaaa "} diff --git a/_maps/RandomRuins/LavaRuins/lavaland_biodome_clown_planet.dmm b/_maps/RandomRuins/LavaRuins/lavaland_biodome_clown_planet.dmm index c4e4aed9ed..f5710584a5 100644 --- a/_maps/RandomRuins/LavaRuins/lavaland_biodome_clown_planet.dmm +++ b/_maps/RandomRuins/LavaRuins/lavaland_biodome_clown_planet.dmm @@ -1,2003 +1,138 @@ -//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE -"aa" = ( -/turf/template_noop, -/area/template_noop) -"ab" = ( -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/ruin/powered) -"ac" = ( -/turf/open/floor/noslip{ - baseturf = /turf/open/floor/plating/lava/smooth - }, -/area/ruin/powered) -"ad" = ( -/mob/living/simple_animal/hostile/retaliate/clown, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/ruin/powered) -"ae" = ( -/obj/machinery/light, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/ruin/powered) -"af" = ( -/obj/item/clothing/head/cone, -/turf/open/floor/noslip{ - baseturf = /turf/open/floor/plating/lava/smooth - }, -/area/ruin/powered) -"ag" = ( -/obj/item/weapon/paper/crumpled/bloody{ - info = "Abandon hope, all ye who enter here." - }, -/obj/effect/decal/cleanable/blood/old, -/turf/open/floor/noslip{ - baseturf = /turf/open/floor/plating/lava/smooth - }, -/area/ruin/powered) -"ah" = ( -/turf/closed/wall/r_wall{ - baseturf = /turf/open/floor/plating/lava/smooth - }, -/area/ruin/powered) -"ai" = ( -/obj/machinery/disposal/deliveryChute{ - desc = "The following is engraved upon the chute: A FATE WORSE THAN DEATH LIES WITHIN"; - dir = 1; - name = "THE TRIAL OF HONKITUDE" - }, -/obj/structure/disposalpipe/trunk, -/turf/open/floor/noslip{ - baseturf = /turf/open/floor/plating/lava/smooth - }, -/area/ruin/powered) -"aj" = ( -/obj/structure/disposalpipe/trunk, -/obj/structure/disposaloutlet{ - dir = 1 - }, -/turf/open/floor/noslip{ - baseturf = /turf/open/floor/plating/lava/smooth - }, -/area/ruin/powered) -"ak" = ( -/turf/open/floor/plating/lava/smooth, -/area/ruin/powered) -"al" = ( -/obj/structure/disposalpipe/segment{ - invisibility = 101 - }, -/turf/closed/wall/r_wall{ - baseturf = /turf/open/floor/plating/lava/smooth - }, -/area/ruin/powered) -"am" = ( -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c"; - invisibility = 101 - }, -/turf/closed/wall/r_wall{ - baseturf = /turf/open/floor/plating/lava/smooth - }, -/area/ruin/powered) -"an" = ( -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c"; - invisibility = 101 - }, -/turf/closed/wall/r_wall{ - baseturf = /turf/open/floor/plating/lava/smooth - }, -/area/ruin/powered) -"ao" = ( -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c"; - invisibility = 101 - }, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth - }, -/area/ruin/powered) -"ap" = ( -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c"; - invisibility = 101 - }, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth - }, -/area/ruin/powered) -"aq" = ( -/obj/structure/disposalpipe/trunk, -/obj/structure/disposaloutlet{ - dir = 1 - }, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth - }, -/area/ruin/powered) -"ar" = ( -/obj/structure/disposalpipe/segment{ - invisibility = 101 - }, -/turf/open/indestructible{ - icon_state = "darkyellowfull"; - wet = 5 - }, -/area/ruin/powered) -"as" = ( -/obj/effect/mob_spawn/human/corpse/damaged, -/obj/effect/decal/cleanable/blood/old, -/obj/structure/disposalpipe/segment{ - invisibility = 101 - }, -/turf/open/indestructible{ - icon_state = "darkyellowfull"; - wet = 5 - }, -/area/ruin/powered) -"at" = ( -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c"; - invisibility = 101 - }, -/turf/open/indestructible{ - icon_state = "darkyellowfull"; - wet = 5 - }, -/area/ruin/powered) -"au" = ( -/obj/structure/disposalpipe/segment{ - invisibility = 101 - }, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth - }, -/area/ruin/powered) -"av" = ( -/obj/structure/disposalpipe/sortjunction{ - dir = 1; - icon_state = "pipe-j2s"; - invisibility = 101; - sortType = 3 - }, -/turf/closed/wall/r_wall{ - baseturf = /turf/open/floor/plating/lava/smooth - }, -/area/ruin/powered) -"aw" = ( -/obj/structure/window/reinforced, -/obj/structure/disposalpipe/segment{ - invisibility = 101 - }, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth - }, -/area/ruin/powered) -"ax" = ( -/obj/effect/decal/cleanable/pie_smudge, -/obj/structure/disposalpipe/segment{ - invisibility = 101 - }, -/turf/open/indestructible{ - icon_state = "darkyellowfull"; - wet = 5 - }, -/area/ruin/powered) -"ay" = ( -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c"; - invisibility = 101 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/indestructible{ - icon_state = "darkyellowfull"; - wet = 5 - }, -/area/ruin/powered) -"az" = ( -/obj/structure/disposalpipe/segment{ - dir = 4; - invisibility = 101 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/indestructible{ - icon_state = "darkyellowfull"; - wet = 5 - }, -/area/ruin/powered) -"aA" = ( -/obj/structure/disposalpipe/segment{ - dir = 4; - invisibility = 101 - }, -/turf/open/indestructible{ - icon_state = "darkyellowfull"; - wet = 5 - }, -/area/ruin/powered) -"aB" = ( -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c"; - invisibility = 101 - }, -/turf/open/indestructible{ - icon_state = "darkyellowfull"; - wet = 5 - }, -/area/ruin/powered) -"aC" = ( -/turf/open/indestructible{ - icon_state = "darkyellowfull"; - wet = 5 - }, -/area/ruin/powered) -"aD" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/indestructible{ - icon_state = "darkyellowfull"; - wet = 5 - }, -/area/ruin/powered) -"aE" = ( -/obj/effect/decal/cleanable/cobweb{ - icon_state = "cobweb2" - }, -/turf/open/indestructible{ - icon_state = "darkyellowfull"; - wet = 5 - }, -/area/ruin/powered) -"aF" = ( -/obj/structure/disposalpipe/segment{ - dir = 4; - invisibility = 101 - }, -/obj/effect/decal/cleanable/cobweb, -/turf/open/indestructible{ - icon_state = "darkyellowfull"; - wet = 5 - }, -/area/ruin/powered) -"aG" = ( -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c"; - invisibility = 101 - }, -/turf/open/indestructible{ - icon_state = "darkyellowfull"; - wet = 5 - }, -/area/ruin/powered) -"aH" = ( -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c"; - invisibility = 101 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/indestructible{ - icon_state = "darkyellowfull"; - wet = 5 - }, -/area/ruin/powered) -"aI" = ( -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c"; - invisibility = 101 - }, -/obj/item/weapon/bikehorn, -/turf/open/indestructible{ - icon_state = "darkyellowfull"; - wet = 5 - }, -/area/ruin/powered) -"aJ" = ( -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c"; - invisibility = 101 - }, -/turf/closed/wall/r_wall{ - baseturf = /turf/open/floor/plating/lava/smooth - }, -/area/ruin/powered) -"aK" = ( -/obj/structure/disposalpipe/segment{ - dir = 4; - invisibility = 101 - }, -/obj/effect/decal/cleanable/pie_smudge, -/turf/open/indestructible{ - icon_state = "darkyellowfull"; - wet = 5 - }, -/area/ruin/powered) -"aL" = ( -/obj/structure/disposalpipe/segment{ - dir = 4; - invisibility = 101 - }, -/turf/closed/wall/r_wall{ - baseturf = /turf/open/floor/plating/lava/smooth - }, -/area/ruin/powered) -"aM" = ( -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c"; - invisibility = 101 - }, -/turf/open/indestructible{ - icon_state = "darkyellowfull"; - wet = 5 - }, -/area/ruin/powered) -"aN" = ( -/obj/structure/disposalpipe/segment{ - invisibility = 101 - }, -/turf/open/floor/plating, -/area/ruin/powered) -"aO" = ( -/obj/item/weapon/bikehorn, -/obj/structure/disposalpipe/segment{ - dir = 4; - invisibility = 101 - }, -/turf/open/indestructible{ - icon_state = "darkyellowfull"; - wet = 5 - }, -/area/ruin/powered) -"aP" = ( -/obj/structure/disposalpipe/segment{ - dir = 4; - invisibility = 101 - }, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth - }, -/area/ruin/powered) -"aQ" = ( -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth - }, -/area/ruin/powered) -"aR" = ( -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c"; - invisibility = 101 - }, -/turf/open/floor/plating, -/area/ruin/powered) -"aS" = ( -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c"; - invisibility = 101 - }, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth - }, -/area/ruin/powered) -"aT" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/disposalpipe/segment{ - invisibility = 101 - }, -/turf/open/indestructible{ - icon_state = "darkyellowfull"; - wet = 5 - }, -/area/ruin/powered) -"aU" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth - }, -/area/ruin/powered) -"aV" = ( -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c"; - invisibility = 101 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/indestructible{ - icon_state = "darkyellowfull"; - wet = 5 - }, -/area/ruin/powered) -"aW" = ( -/obj/item/weapon/bikehorn, -/obj/effect/decal/cleanable/dirt, -/obj/structure/disposalpipe/segment{ - invisibility = 101 - }, -/turf/open/indestructible{ - icon_state = "darkyellowfull"; - wet = 5 - }, -/area/ruin/powered) -"aX" = ( -/obj/structure/disposalpipe/trunk{ - dir = 4 - }, -/obj/structure/disposaloutlet{ - dir = 8 - }, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth - }, -/area/ruin/powered) -"aY" = ( -/obj/item/weapon/bikehorn, -/obj/structure/disposalpipe/segment{ - invisibility = 101 - }, -/turf/open/indestructible{ - icon_state = "darkyellowfull"; - wet = 5 - }, -/area/ruin/powered) -"aZ" = ( -/obj/structure/disposalpipe/segment{ - dir = 4; - invisibility = 101 - }, -/turf/open/indestructible{ - icon_state = "darkredfull" - }, -/area/ruin/powered) -"ba" = ( -/obj/effect/decal/cleanable/pie_smudge, -/turf/open/indestructible{ - icon_state = "darkyellowfull"; - wet = 5 - }, -/area/ruin/powered) -"bb" = ( -/obj/structure/disposalpipe/segment{ - dir = 4; - invisibility = 101 - }, -/turf/open/indestructible{ - icon_state = "white" - }, -/area/ruin/powered) -"bc" = ( -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c"; - invisibility = 101 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/indestructible{ - icon_state = "darkyellowfull"; - wet = 5 - }, -/area/ruin/powered) -"bd" = ( -/obj/structure/disposalpipe/segment{ - dir = 4; - invisibility = 101 - }, -/obj/structure/table, -/obj/item/weapon/paper/crumpled/bloody{ - info = "If you dare not continue down this path of madness, escape can be found through the chute in this room. " - }, -/obj/item/weapon/pen/fourcolor, -/turf/open/indestructible{ - icon_state = "white" - }, -/area/ruin/powered) -"be" = ( -/obj/structure/disposalpipe/segment{ - dir = 4; - invisibility = 101 - }, -/obj/structure/table, -/obj/item/device/flashlight/lamp/bananalamp, -/turf/open/indestructible{ - icon_state = "white" - }, -/area/ruin/powered) -"bf" = ( -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c"; - invisibility = 101 - }, -/obj/effect/decal/cleanable/pie_smudge, -/turf/open/indestructible{ - icon_state = "darkyellowfull"; - wet = 5 - }, -/area/ruin/powered) -"bg" = ( -/obj/structure/disposalpipe/segment{ - dir = 4; - invisibility = 101 - }, -/obj/item/weapon/pickaxe, -/turf/open/indestructible{ - icon_state = "white" - }, -/area/ruin/powered) -"bh" = ( -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c"; - invisibility = 101 - }, -/turf/open/indestructible{ - icon_state = "white" - }, -/area/ruin/powered) -"bi" = ( -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c"; - invisibility = 101 - }, -/turf/open/indestructible{ - icon_state = "white" - }, -/area/ruin/powered) -"bj" = ( -/obj/structure/disposalpipe/segment{ - dir = 4; - invisibility = 101 - }, -/turf/open/indestructible{ - icon_state = "light_on" - }, -/area/ruin/powered) -"bk" = ( -/obj/structure/disposalpipe/segment{ - invisibility = 101 - }, -/turf/open/indestructible{ - icon_state = "white" - }, -/area/ruin/powered) -"bl" = ( -/turf/open/indestructible{ - icon_state = "light_on" - }, -/area/ruin/powered) -"bm" = ( -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c"; - invisibility = 101 - }, -/turf/open/indestructible{ - icon_state = "white" - }, -/area/ruin/powered) -"bn" = ( -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c"; - invisibility = 101 - }, -/turf/open/indestructible{ - icon_state = "white" - }, -/area/ruin/powered) -"bo" = ( -/obj/machinery/light{ - icon_state = "tube1"; - dir = 4 - }, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/ruin/powered) -"bp" = ( -/turf/closed/mineral/clown, -/area/ruin/powered) -"bq" = ( -/obj/item/weapon/pickaxe, -/turf/open/indestructible{ - icon_state = "white" - }, -/area/ruin/powered) -"br" = ( -/turf/open/indestructible{ - icon_state = "white" - }, -/area/ruin/powered) -"bs" = ( -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c"; - invisibility = 101 - }, -/turf/open/indestructible{ - icon_state = "darkredfull" - }, -/area/ruin/powered) -"bt" = ( -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c"; - invisibility = 101 - }, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth - }, -/area/ruin/powered) -"bu" = ( -/obj/item/weapon/bikehorn, -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c"; - invisibility = 101 - }, -/turf/open/indestructible{ - icon_state = "darkyellowfull"; - wet = 5 - }, -/area/ruin/powered) -"bv" = ( -/obj/machinery/light{ - dir = 8 - }, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/ruin/powered) -"bw" = ( -/turf/open/chasm/straight_down/lava_land_surface, -/area/ruin/powered) -"bx" = ( -/obj/effect/decal/cleanable/cobweb, -/turf/open/indestructible{ - icon_state = "darkredfull"; - wet = 5 - }, -/area/ruin/powered) -"by" = ( -/obj/structure/disposalpipe/segment, -/turf/open/indestructible{ - icon_state = "darkyellowfull"; - wet = 5 - }, -/area/ruin/powered) -"bz" = ( -/obj/machinery/disposal/deliveryChute{ - dir = 1 - }, -/obj/structure/disposalpipe/trunk, -/turf/open/indestructible{ - icon_state = "white" - }, -/area/ruin/powered) -"bA" = ( -/turf/open/indestructible{ - icon_state = "darkredfull"; - wet = 5 - }, -/area/ruin/powered) -"bB" = ( -/turf/open/indestructible/sound{ - icon_state = "bananium"; - name = "bananium floor"; - sound = 'sound/effects/clownstep1.ogg'; - wet = 5 - }, -/area/ruin/powered) -"bC" = ( -/obj/structure/disposalpipe/junction{ - dir = 1; - icon_state = "pipe-y"; - invisibility = 101 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/indestructible{ - icon_state = "darkyellowfull"; - wet = 5 - }, -/area/ruin/powered) -"bD" = ( -/obj/structure/mecha_wreckage/honker, -/obj/structure/disposalpipe/segment{ - dir = 4; - invisibility = 101 - }, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth - }, -/area/ruin/powered) -"bE" = ( -/obj/effect/decal/cleanable/oil, -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c"; - invisibility = 101 - }, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth - }, -/area/ruin/powered) -"bF" = ( -/obj/effect/decal/cleanable/cobweb{ - icon_state = "cobweb2" - }, -/turf/open/indestructible/sound{ - icon_state = "bananium"; - name = "bananium floor"; - sound = 'sound/effects/clownstep1.ogg'; - wet = 5 - }, -/area/ruin/powered) -"bG" = ( -/obj/item/weapon/grown/bananapeel{ - color = "#2F3000"; - name = "stealth banana peel" - }, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/ruin/powered) -"bH" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/indestructible/sound{ - icon_state = "bananium"; - name = "bananium floor"; - sound = 'sound/effects/clownstep1.ogg'; - wet = 5 - }, -/area/ruin/powered) -"bI" = ( -/obj/effect/mob_spawn/human/corpse/damaged, -/obj/effect/decal/cleanable/blood/old, -/turf/open/indestructible{ - icon_state = "darkyellowfull"; - wet = 5 - }, -/area/ruin/powered) -"bJ" = ( -/obj/structure/disposalpipe/segment{ - dir = 4; - invisibility = 101 - }, -/turf/open/indestructible{ - icon_state = "darkredfull"; - wet = 5 - }, -/area/ruin/powered) -"bK" = ( -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c"; - invisibility = 101 - }, -/turf/open/indestructible{ - icon_state = "darkredfull"; - wet = 5 - }, -/area/ruin/powered) -"bL" = ( -/obj/item/weapon/reagent_containers/food/drinks/trophy/gold_cup, -/obj/structure/table/glass, -/turf/open/floor/carpet{ - baseturf = /turf/open/floor/plating/lava/smooth - }, -/area/ruin/powered) -"bM" = ( -/turf/open/floor/carpet{ - baseturf = /turf/open/floor/plating/lava/smooth - }, -/area/ruin/powered) -"bN" = ( -/obj/machinery/disposal/deliveryChute, -/obj/structure/disposalpipe/trunk{ - dir = 1 - }, -/turf/open/floor/carpet{ - baseturf = /turf/open/floor/plating/lava/smooth - }, -/area/ruin/powered) -"bO" = ( -/obj/effect/decal/cleanable/cobweb, -/turf/open/indestructible/sound{ - icon_state = "bananium"; - name = "bananium floor"; - sound = 'sound/effects/clownstep1.ogg'; - wet = 5 - }, -/area/ruin/powered) -"bP" = ( -/obj/structure/statue/bananium/clown, -/turf/open/floor/carpet{ - baseturf = /turf/open/floor/plating/lava/smooth - }, -/area/ruin/powered) -"bQ" = ( -/obj/structure/table/glass, -/obj/item/weapon/grown/bananapeel/bluespace, -/turf/open/floor/carpet{ - baseturf = /turf/open/floor/plating/lava/smooth - }, -/area/ruin/powered) -"bR" = ( -/obj/structure/table/glass, -/obj/item/clothing/shoes/clown_shoes/banana_shoes, -/turf/open/floor/carpet{ - baseturf = /turf/open/floor/plating/lava/smooth - }, -/area/ruin/powered) -"bS" = ( -/obj/item/weapon/coin/clown, -/obj/item/weapon/coin/clown, -/obj/item/weapon/coin/clown, -/obj/item/weapon/coin/clown, -/turf/open/floor/carpet{ - baseturf = /turf/open/floor/plating/lava/smooth - }, -/area/ruin/powered) -"bT" = ( -/obj/item/slime_extract/rainbow, -/obj/structure/table/glass, -/turf/open/floor/carpet{ - baseturf = /turf/open/floor/plating/lava/smooth - }, -/area/ruin/powered) -"bU" = ( -/obj/item/weapon/bikehorn/airhorn, -/turf/open/floor/carpet{ - baseturf = /turf/open/floor/plating/lava/smooth - }, -/area/ruin/powered) -"bV" = ( -/obj/structure/table/glass, -/obj/item/weapon/gun/magic/staff/honk, -/turf/open/floor/carpet{ - baseturf = /turf/open/floor/plating/lava/smooth - }, -/area/ruin/powered) -"bW" = ( -/obj/item/weapon/bikehorn, -/turf/open/indestructible/sound{ - icon_state = "bananium"; - name = "bananium floor"; - sound = 'sound/effects/clownstep1.ogg'; - wet = 5 - }, -/area/ruin/powered) -"bX" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/ruin/powered) -"bY" = ( -/obj/effect/mob_spawn/human/corpse/damaged, -/obj/effect/decal/cleanable/blood/old, -/turf/open/indestructible/sound{ - icon_state = "bananium"; - name = "bananium floor"; - sound = 'sound/effects/clownstep1.ogg'; - wet = 5 - }, -/area/ruin/powered) -"bZ" = ( -/obj/machinery/door/airlock/clown, -/turf/open/indestructible/sound{ - icon_state = "bananium"; - name = "bananium floor"; - sound = 'sound/effects/clownstep1.ogg'; - wet = 5 - }, -/area/ruin/powered) -"ca" = ( -/obj/item/weapon/bikehorn, -/obj/effect/decal/cleanable/dirt, -/turf/open/indestructible/sound{ - icon_state = "bananium"; - name = "bananium floor"; - sound = 'sound/effects/clownstep1.ogg'; - wet = 5 - }, -/area/ruin/powered) -"cb" = ( -/obj/machinery/light{ - dir = 1 - }, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/ruin/powered) +"aa" = (/turf/template_noop,/area/template_noop) +"ab" = (/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/ruin/powered) +"ac" = (/turf/open/floor/noslip{baseturf = /turf/open/floor/plating/lava/smooth},/area/ruin/powered) +"ad" = (/mob/living/simple_animal/hostile/retaliate/clown,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/ruin/powered) +"ae" = (/obj/machinery/light,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/ruin/powered) +"af" = (/obj/item/clothing/head/cone,/turf/open/floor/noslip{baseturf = /turf/open/floor/plating/lava/smooth},/area/ruin/powered) +"ag" = (/obj/item/weapon/paper/crumpled/bloody{info = "Abandon hope, all ye who enter here."},/obj/effect/decal/cleanable/blood/old,/turf/open/floor/noslip{baseturf = /turf/open/floor/plating/lava/smooth},/area/ruin/powered) +"ah" = (/turf/closed/wall/r_wall{baseturf = /turf/open/floor/plating/lava/smooth},/area/ruin/powered) +"ai" = (/obj/machinery/disposal/deliveryChute{desc = "The following is engraved upon the chute: A FATE WORSE THAN DEATH LIES WITHIN"; dir = 1; name = "THE TRIAL OF HONKITUDE"},/obj/structure/disposalpipe/trunk,/turf/open/floor/noslip{baseturf = /turf/open/floor/plating/lava/smooth},/area/ruin/powered) +"aj" = (/obj/structure/disposalpipe/trunk,/obj/structure/disposaloutlet{dir = 1},/turf/open/floor/noslip{baseturf = /turf/open/floor/plating/lava/smooth},/area/ruin/powered) +"ak" = (/turf/open/floor/plating/lava/smooth/lava_land_surface,/area/ruin/powered) +"al" = (/obj/structure/disposalpipe/segment{invisibility = 101},/turf/closed/wall/r_wall{baseturf = /turf/open/floor/plating/lava/smooth},/area/ruin/powered) +"am" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"; invisibility = 101},/turf/closed/wall/r_wall{baseturf = /turf/open/floor/plating/lava/smooth},/area/ruin/powered) +"an" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"; invisibility = 101},/turf/closed/wall/r_wall{baseturf = /turf/open/floor/plating/lava/smooth},/area/ruin/powered) +"ao" = (/obj/structure/disposalpipe/trunk,/obj/structure/disposaloutlet{dir = 1},/turf/closed/wall/r_wall{baseturf = /turf/open/floor/plating/lava/smooth},/area/ruin/powered) +"ap" = (/obj/structure/disposalpipe/segment{invisibility = 101},/turf/open/indestructible{icon_state = "darkyellowfull"; wet = 5},/area/ruin/powered) +"aq" = (/obj/effect/mob_spawn/human/corpse/damaged,/obj/effect/decal/cleanable/blood/old,/obj/structure/disposalpipe/segment{invisibility = 101},/turf/open/indestructible{icon_state = "darkyellowfull"; wet = 5},/area/ruin/powered) +"ar" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"; invisibility = 101},/turf/open/indestructible{icon_state = "darkyellowfull"; wet = 5},/area/ruin/powered) +"as" = (/obj/structure/disposalpipe/sortjunction{dir = 1; icon_state = "pipe-j2s"; invisibility = 101; sortType = 3},/turf/closed/wall/r_wall{baseturf = /turf/open/floor/plating/lava/smooth},/area/ruin/powered) +"at" = (/obj/effect/decal/cleanable/pie_smudge,/obj/structure/disposalpipe/segment{invisibility = 101},/turf/open/indestructible{icon_state = "darkyellowfull"; wet = 5},/area/ruin/powered) +"au" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"; invisibility = 101},/obj/effect/decal/cleanable/dirt,/turf/open/indestructible{icon_state = "darkyellowfull"; wet = 5},/area/ruin/powered) +"av" = (/obj/structure/disposalpipe/segment{dir = 4; invisibility = 101},/obj/effect/decal/cleanable/dirt,/turf/open/indestructible{icon_state = "darkyellowfull"; wet = 5},/area/ruin/powered) +"aw" = (/obj/structure/disposalpipe/segment{dir = 4; invisibility = 101},/turf/open/indestructible{icon_state = "darkyellowfull"; wet = 5},/area/ruin/powered) +"ax" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"; invisibility = 101},/turf/open/indestructible{icon_state = "darkyellowfull"; wet = 5},/area/ruin/powered) +"ay" = (/turf/open/indestructible{icon_state = "darkyellowfull"; wet = 5},/area/ruin/powered) +"az" = (/obj/effect/decal/cleanable/dirt,/turf/open/indestructible{icon_state = "darkyellowfull"; wet = 5},/area/ruin/powered) +"aA" = (/obj/effect/decal/cleanable/cobweb{icon_state = "cobweb2"},/turf/open/indestructible{icon_state = "darkyellowfull"; wet = 5},/area/ruin/powered) +"aB" = (/obj/structure/disposalpipe/segment{dir = 4; invisibility = 101},/obj/effect/decal/cleanable/cobweb,/turf/open/indestructible{icon_state = "darkyellowfull"; wet = 5},/area/ruin/powered) +"aC" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"; invisibility = 101},/turf/open/indestructible{icon_state = "darkyellowfull"; wet = 5},/area/ruin/powered) +"aD" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"; invisibility = 101},/obj/effect/decal/cleanable/dirt,/turf/open/indestructible{icon_state = "darkyellowfull"; wet = 5},/area/ruin/powered) +"aE" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"; invisibility = 101},/obj/item/weapon/bikehorn,/turf/open/indestructible{icon_state = "darkyellowfull"; wet = 5},/area/ruin/powered) +"aF" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"; invisibility = 101},/turf/closed/wall/r_wall{baseturf = /turf/open/floor/plating/lava/smooth},/area/ruin/powered) +"aG" = (/obj/structure/disposalpipe/segment{dir = 4; invisibility = 101},/obj/effect/decal/cleanable/pie_smudge,/turf/open/indestructible{icon_state = "darkyellowfull"; wet = 5},/area/ruin/powered) +"aH" = (/obj/structure/disposalpipe/segment{dir = 4; invisibility = 101},/turf/closed/wall/r_wall{baseturf = /turf/open/floor/plating/lava/smooth},/area/ruin/powered) +"aI" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"; invisibility = 101},/turf/open/indestructible{icon_state = "darkyellowfull"; wet = 5},/area/ruin/powered) +"aJ" = (/obj/item/weapon/bikehorn,/obj/structure/disposalpipe/segment{dir = 4; invisibility = 101},/turf/open/indestructible{icon_state = "darkyellowfull"; wet = 5},/area/ruin/powered) +"aK" = (/obj/structure/disposalpipe/segment{dir = 4; invisibility = 101},/turf/open/floor/plating{baseturf = /turf/open/floor/plating/lava/smooth},/area/ruin/powered) +"aL" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"; invisibility = 101},/turf/closed/wall/r_wall{baseturf = /turf/open/floor/plating/lava/smooth},/area/ruin/powered) +"aM" = (/obj/effect/decal/cleanable/dirt,/obj/structure/disposalpipe/segment{invisibility = 101},/turf/open/indestructible{icon_state = "darkyellowfull"; wet = 5},/area/ruin/powered) +"aN" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating{baseturf = /turf/open/floor/plating/lava/smooth},/area/ruin/powered) +"aO" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"; invisibility = 101},/obj/effect/decal/cleanable/dirt,/turf/open/indestructible{icon_state = "darkyellowfull"; wet = 5},/area/ruin/powered) +"aP" = (/obj/item/weapon/bikehorn,/obj/effect/decal/cleanable/dirt,/obj/structure/disposalpipe/segment{invisibility = 101},/turf/open/indestructible{icon_state = "darkyellowfull"; wet = 5},/area/ruin/powered) +"aQ" = (/obj/structure/disposalpipe/trunk{dir = 4},/obj/structure/disposaloutlet{dir = 8},/turf/open/floor/plating{baseturf = /turf/open/floor/plating/lava/smooth},/area/ruin/powered) +"aR" = (/obj/item/weapon/bikehorn,/obj/structure/disposalpipe/segment{invisibility = 101},/turf/open/indestructible{icon_state = "darkyellowfull"; wet = 5},/area/ruin/powered) +"aS" = (/obj/structure/disposalpipe/segment{dir = 4; invisibility = 101},/turf/open/indestructible{icon_state = "darkredfull"},/area/ruin/powered) +"aT" = (/obj/effect/decal/cleanable/pie_smudge,/turf/open/indestructible{icon_state = "darkyellowfull"; wet = 5},/area/ruin/powered) +"aU" = (/obj/structure/disposalpipe/segment{dir = 4; invisibility = 101},/turf/open/indestructible{icon_state = "white"},/area/ruin/powered) +"aV" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"; invisibility = 101},/obj/effect/decal/cleanable/dirt,/turf/open/indestructible{icon_state = "darkyellowfull"; wet = 5},/area/ruin/powered) +"aW" = (/obj/structure/disposalpipe/segment{dir = 4; invisibility = 101},/obj/structure/table,/obj/item/weapon/paper/crumpled/bloody{info = "If you dare not continue down this path of madness, escape can be found through the chute in this room. "},/obj/item/weapon/pen/fourcolor,/turf/open/indestructible{icon_state = "white"},/area/ruin/powered) +"aX" = (/obj/structure/disposalpipe/segment{dir = 4; invisibility = 101},/obj/structure/table,/obj/item/device/flashlight/lamp/bananalamp,/turf/open/indestructible{icon_state = "white"},/area/ruin/powered) +"aY" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"; invisibility = 101},/obj/effect/decal/cleanable/pie_smudge,/turf/open/indestructible{icon_state = "darkyellowfull"; wet = 5},/area/ruin/powered) +"aZ" = (/obj/structure/disposalpipe/segment{dir = 4; invisibility = 101},/obj/item/weapon/pickaxe,/turf/open/indestructible{icon_state = "white"},/area/ruin/powered) +"ba" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"; invisibility = 101},/turf/open/indestructible{icon_state = "white"},/area/ruin/powered) +"bb" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"; invisibility = 101},/turf/open/indestructible{icon_state = "white"},/area/ruin/powered) +"bc" = (/obj/structure/disposalpipe/segment{dir = 4; invisibility = 101},/turf/open/indestructible{icon_state = "light_on"},/area/ruin/powered) +"bd" = (/obj/structure/disposalpipe/segment{invisibility = 101},/turf/open/floor/plating{baseturf = /turf/open/floor/plating/lava/smooth},/area/ruin/powered) +"be" = (/obj/structure/disposalpipe/segment{invisibility = 101},/turf/open/indestructible{icon_state = "white"},/area/ruin/powered) +"bf" = (/turf/open/indestructible{icon_state = "light_on"},/area/ruin/powered) +"bg" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"; invisibility = 101},/turf/open/indestructible{icon_state = "white"},/area/ruin/powered) +"bh" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"; invisibility = 101},/turf/open/indestructible{icon_state = "white"},/area/ruin/powered) +"bi" = (/obj/machinery/light{icon_state = "tube1"; dir = 4},/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/ruin/powered) +"bj" = (/turf/closed/mineral/clown,/area/ruin/powered) +"bk" = (/obj/item/weapon/pickaxe,/turf/open/indestructible{icon_state = "white"},/area/ruin/powered) +"bl" = (/turf/open/indestructible{icon_state = "white"},/area/ruin/powered) +"bm" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"; invisibility = 101},/turf/open/indestructible{icon_state = "darkredfull"},/area/ruin/powered) +"bn" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"; invisibility = 101},/turf/open/floor/plating{baseturf = /turf/open/floor/plating/lava/smooth},/area/ruin/powered) +"bo" = (/obj/item/weapon/bikehorn,/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"; invisibility = 101},/turf/open/indestructible{icon_state = "darkyellowfull"; wet = 5},/area/ruin/powered) +"bp" = (/obj/machinery/light{dir = 8},/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/ruin/powered) +"bq" = (/turf/open/chasm/straight_down/lava_land_surface,/area/ruin/powered) +"br" = (/obj/effect/decal/cleanable/cobweb,/turf/open/indestructible{icon_state = "darkredfull"; wet = 5},/area/ruin/powered) +"bs" = (/obj/structure/disposalpipe/segment,/turf/open/indestructible{icon_state = "darkyellowfull"; wet = 5},/area/ruin/powered) +"bt" = (/obj/machinery/disposal/deliveryChute{dir = 1},/obj/structure/disposalpipe/trunk,/turf/open/indestructible{icon_state = "white"},/area/ruin/powered) +"bu" = (/turf/open/indestructible{icon_state = "darkredfull"; wet = 5},/area/ruin/powered) +"bv" = (/turf/open/indestructible/sound{icon_state = "bananium"; name = "bananium floor"; sound = 'sound/effects/clownstep1.ogg'; wet = 5},/area/ruin/powered) +"bw" = (/obj/structure/disposalpipe/junction{dir = 1; icon_state = "pipe-y"; invisibility = 101},/obj/effect/decal/cleanable/dirt,/turf/open/indestructible{icon_state = "darkyellowfull"; wet = 5},/area/ruin/powered) +"bx" = (/obj/structure/mecha_wreckage/honker,/obj/structure/disposalpipe/segment{dir = 4; invisibility = 101},/turf/open/floor/plating{baseturf = /turf/open/floor/plating/lava/smooth},/area/ruin/powered) +"by" = (/obj/effect/decal/cleanable/oil,/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"; invisibility = 101},/turf/open/floor/plating{baseturf = /turf/open/floor/plating/lava/smooth},/area/ruin/powered) +"bz" = (/obj/effect/decal/cleanable/cobweb{icon_state = "cobweb2"},/turf/open/indestructible/sound{icon_state = "bananium"; name = "bananium floor"; sound = 'sound/effects/clownstep1.ogg'; wet = 5},/area/ruin/powered) +"bA" = (/obj/item/weapon/grown/bananapeel{color = "#2F3000"; name = "stealth banana peel"},/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/ruin/powered) +"bB" = (/obj/effect/decal/cleanable/dirt,/turf/open/indestructible/sound{icon_state = "bananium"; name = "bananium floor"; sound = 'sound/effects/clownstep1.ogg'; wet = 5},/area/ruin/powered) +"bC" = (/obj/effect/mob_spawn/human/corpse/damaged,/obj/effect/decal/cleanable/blood/old,/turf/open/indestructible{icon_state = "darkyellowfull"; wet = 5},/area/ruin/powered) +"bD" = (/obj/structure/disposalpipe/segment{dir = 4; invisibility = 101},/turf/open/indestructible{icon_state = "darkredfull"; wet = 5},/area/ruin/powered) +"bE" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"; invisibility = 101},/turf/open/indestructible{icon_state = "darkredfull"; wet = 5},/area/ruin/powered) +"bF" = (/turf/open/floor/plating/lava/smooth/lava_land_surface{initial_gas_mix = "o2=22;n2=82;TEMP=293.15"},/area/ruin/powered) +"bG" = (/obj/item/weapon/reagent_containers/food/drinks/trophy/gold_cup,/obj/structure/table/glass,/turf/open/floor/carpet{baseturf = /turf/open/floor/plating/lava/smooth},/area/ruin/powered) +"bH" = (/turf/open/floor/carpet{baseturf = /turf/open/floor/plating/lava/smooth},/area/ruin/powered) +"bI" = (/obj/machinery/disposal/deliveryChute,/obj/structure/disposalpipe/trunk{dir = 1},/turf/open/floor/carpet{baseturf = /turf/open/floor/plating/lava/smooth},/area/ruin/powered) +"bJ" = (/obj/effect/decal/cleanable/cobweb,/turf/open/floor/plating/lava/smooth/lava_land_surface{initial_gas_mix = "o2=22;n2=82;TEMP=293.15"},/area/ruin/powered) +"bK" = (/obj/structure/statue/bananium/clown,/turf/open/floor/carpet{baseturf = /turf/open/floor/plating/lava/smooth},/area/ruin/powered) +"bL" = (/obj/structure/table/glass,/obj/item/weapon/grown/bananapeel/bluespace,/turf/open/floor/carpet{baseturf = /turf/open/floor/plating/lava/smooth},/area/ruin/powered) +"bM" = (/obj/structure/table/glass,/obj/item/clothing/shoes/clown_shoes/banana_shoes,/turf/open/floor/carpet{baseturf = /turf/open/floor/plating/lava/smooth},/area/ruin/powered) +"bN" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/ruin/powered) +"bO" = (/obj/effect/decal/cleanable/dirt,/turf/open/floor/plating/lava/smooth/lava_land_surface{initial_gas_mix = "o2=22;n2=82;TEMP=293.15"},/area/ruin/powered) +"bP" = (/obj/item/weapon/coin/clown,/obj/item/weapon/coin/clown,/obj/item/weapon/coin/clown,/obj/item/weapon/coin/clown,/turf/open/floor/carpet{baseturf = /turf/open/floor/plating/lava/smooth},/area/ruin/powered) +"bQ" = (/obj/item/slime_extract/rainbow,/obj/structure/table/glass,/turf/open/floor/carpet{baseturf = /turf/open/floor/plating/lava/smooth},/area/ruin/powered) +"bR" = (/obj/item/weapon/bikehorn/airhorn,/turf/open/floor/carpet{baseturf = /turf/open/floor/plating/lava/smooth},/area/ruin/powered) +"bS" = (/obj/structure/table/glass,/obj/item/weapon/gun/magic/staff/honk,/turf/open/floor/carpet{baseturf = /turf/open/floor/plating/lava/smooth},/area/ruin/powered) +"bT" = (/obj/item/weapon/bikehorn,/turf/open/indestructible/sound{icon_state = "bananium"; name = "bananium floor"; sound = 'sound/effects/clownstep1.ogg'; wet = 5},/area/ruin/powered) +"bU" = (/obj/effect/mob_spawn/human/corpse/damaged,/obj/effect/decal/cleanable/blood/old,/turf/open/floor/plating/lava/smooth/lava_land_surface{initial_gas_mix = "o2=22;n2=82;TEMP=293.15"},/area/ruin/powered) +"bV" = (/obj/effect/mob_spawn/human/corpse/damaged,/obj/effect/decal/cleanable/blood/old,/turf/open/indestructible/sound{icon_state = "bananium"; name = "bananium floor"; sound = 'sound/effects/clownstep1.ogg'; wet = 5},/area/ruin/powered) +"bW" = (/obj/machinery/door/airlock/clown,/turf/open/indestructible/sound{icon_state = "bananium"; name = "bananium floor"; sound = 'sound/effects/clownstep1.ogg'; wet = 5},/area/ruin/powered) +"bX" = (/obj/item/weapon/bikehorn,/obj/effect/decal/cleanable/dirt,/turf/open/indestructible/sound{icon_state = "bananium"; name = "bananium floor"; sound = 'sound/effects/clownstep1.ogg'; wet = 5},/area/ruin/powered) +"bY" = (/obj/machinery/light{dir = 1},/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/ruin/powered) (1,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -ab -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -"} -(2,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -ah -ah -ah -ah -ah -ah -ah -bo -ab -bw -ab -ab -bw -bo -ah -ah -ah -ah -ah -aa -aa -aa -aa -aa -aa -"} -(3,1,1) = {" -aa -aa -aa -aa -aa -ah -ah -ah -ak -ak -ak -ak -ak -ah -ah -bw -bw -bG -bw -bw -ah -ah -ak -ak -ak -ah -ah -ah -aa -aa -aa -aa -"} -(4,1,1) = {" -aa -aa -aa -aa -ah -ah -ak -ak -ak -aR -aJ -ao -aJ -ak -ah -ah -bw -bw -bw -ah -ah -ak -ak -bX -aQ -ak -ak -ah -ah -aa -aa -aa -"} -(5,1,1) = {" -aa -aa -aa -ah -ah -ak -ak -am -aN -aS -aV -aH -bf -aJ -ak -ah -ah -ah -ah -ah -bO -bB -bX -ak -ak -ak -ak -ak -ah -ah -aa -aa -"} -(6,1,1) = {" -aa -aa -aa -ah -ak -ak -ah -aF -at -ar -aW -ar -aG -aL -ak -ah -bB -bH -bB -ah -bB -bH -bY -bB -bX -ak -bX -ak -ak -ah -cb -aa -"} -(7,1,1) = {" -aa -aa -ah -ah -ak -am -ax -aB -az -am -ar -aJ -aL -aL -ah -bx -bA -bB -bH -bH -bB -bH -bB -bB -bB -ah -ak -aQ -ak -ah -ah -aa -"} -(8,1,1) = {" -aa -aa -ah -ak -ak -ap -ar -aG -az -aL -aX -aL -bb -bb -bp -ah -bA -bA -bB -ah -ah -bH -ah -bB -bB -bB -bX -ak -ak -ak -ah -aa -"} -(9,1,1) = {" -aa -aa -ah -ak -am -ar -ar -aH -aA -aA -aL -bb -bb -bb -bq -bp -ah -ah -bA -bB -bB -bH -bB -bB -ca -bH -bB -ah -ak -ak -ah -aa -"} -(10,1,1) = {" -aa -ad -ah -ak -an -as -ar -aG -aL -az -aL -bb -bb -bj -bl -br -bA -bA -bA -bB -ah -bB -bB -bH -bH -bB -bB -ak -bX -ak -ah -ah -"} -(11,1,1) = {" -aa -ae -ah -ak -ao -al -ar -aH -az -az -aL -bb -bg -bj -bl -bp -ah -bA -bA -bB -bB -ah -bB -bB -bB -bB -bH -ak -bX -ak -ak -ah -"} -(12,1,1) = {" -aa -ad -ah -ak -ap -ar -ar -aI -az -an -aB -aL -bb -bb -br -ah -ah -bA -bB -bB -ah -ah -bB -bB -ah -bB -bH -ak -aQ -bX -ak -ah -"} -(13,1,1) = {" -ab -ad -ah -ak -ah -at -ar -aB -aM -ax -ar -aB -aL -aL -bs -al -aJ -ah -ah -ah -bP -bS -ah -bB -bB -bH -ca -bB -ak -bX -ak -ah -"} -(14,1,1) = {" -ab -af -ah -ah -ak -an -ar -ar -ar -ar -aY -ar -aH -aA -aV -ay -az -ah -ah -bL -bM -bM -bM -ah -bB -bH -bH -bB -ak -bX -ak -ah -"} -(15,1,1) = {" -ac -ac -ai -al -al -au -ar -al -ar -aT -al -ax -ar -aH -aD -aA -aM -aG -ah -bM -bQ -bT -bM -ah -ah -bH -bB -bB -ak -bX -ak -ah -"} -(16,1,1) = {" -ac -ag -ac -ah -ak -ao -ar -aJ -at -aG -at -ar -ar -au -bt -aM -aG -aV -al -bN -bM -bU -bM -bZ -bB -bH -bB -ah -ak -bX -ak -ah -"} -(17,1,1) = {" -ac -ac -aj -al -al -av -ay -aA -aA -aL -aA -bc -ar -aG -bu -by -bC -aD -ah -bM -bR -bV -bM -ah -bB -bB -bB -bB -ak -bX -ak -ah -"} -(18,1,1) = {" -ab -ac -ah -ah -ak -ah -az -az -az -aA -aA -aA -aC -aM -aG -ba -aL -bI -ah -bL -bM -bM -bM -ah -bB -bB -bB -bB -ak -bX -ak -ah -"} -(19,1,1) = {" -ab -ad -ah -ak -ak -ah -az -az -aO -aA -aA -aL -ah -ah -aZ -ah -bD -ah -bB -ah -bP -bS -ah -bB -bB -bH -bH -bB -ak -bX -ak -ah -"} -(20,1,1) = {" -aa -ad -ah -ak -ah -ah -aA -aA -aA -az -aA -aL -bh -bk -bn -ah -bE -aJ -bB -bB -ah -ah -bY -bB -bB -bH -bB -ak -bX -aQ -ak -ah -"} -(21,1,1) = {" -aa -ae -ah -ak -ah -ah -aA -aK -aL -az -aL -bd -bb -bl -bl -bp -ah -bJ -bA -bB -bB -ah -bB -bH -bB -bB -bB -ak -bX -ak -ak -ah -"} -(22,1,1) = {" -aa -ad -ah -ak -aq -aw -aB -aL -aP -az -aL -be -bb -bl -bl -bz -al -bK -ah -bB -bB -bH -bH -bH -bB -bW -bB -ah -bX -ak -ah -ah -"} -(23,1,1) = {" -aa -aa -ah -ak -ah -ah -aC -aA -aA -aO -aZ -bb -bi -bm -br -bp -ah -bA -bA -bB -bB -bH -bH -bB -bB -ah -ah -ak -aQ -ak -ah -aa -"} -(24,1,1) = {" -aa -aa -ah -ak -ah -ah -aD -aA -aL -aA -aL -aL -bh -bn -bp -ah -bA -bA -bB -bB -bB -bB -bB -ah -bB -bB -ak -aQ -ak -ak -ah -aa -"} -(25,1,1) = {" -aa -aa -ah -ak -ak -ah -aE -aA -aA -aA -aM -aB -aL -ah -ah -bA -bA -bB -bB -bB -bH -bW -bB -bB -bB -ah -ak -bX -ak -ah -ah -aa -"} -(26,1,1) = {" -aa -aa -ah -ah -ak -ah -ah -aM -aB -aM -ar -ar -aS -ah -ak -ah -bF -bB -bB -ah -bB -bB -ah -bB -bB -ak -aQ -ak -ak -ah -cb -aa -"} -(27,1,1) = {" -aa -aa -aa -ah -ah -ak -ak -ah -aQ -ah -ba -aC -aQ -ah -ak -ah -ah -ah -ah -ah -bB -bB -bB -ak -ak -ak -ak -ak -ah -ah -aa -aa -"} -(28,1,1) = {" -aa -aa -aa -aa -ah -ah -ak -ak -ak -aU -aU -aU -ah -ak -ah -ah -bw -bw -bw -ah -ah -ak -ak -aQ -bX -ak -ak -ah -ah -aa -aa -aa -"} -(29,1,1) = {" -aa -aa -aa -aa -aa -ah -ah -ah -ak -ak -ak -ak -ak -ah -ah -bw -bw -bG -bw -bw -ah -ah -ak -ak -ak -ah -ah -ah -aa -aa -aa -aa -"} -(30,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -ah -ah -ah -ah -ah -ah -ah -bv -ab -ab -ab -ab -bw -bv -ah -ah -ah -ah -ah -aa -aa -aa -aa -aa -aa -"} -(31,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -bw -ab -ab -ab -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -"} -(32,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa +aaaaaaaaaaaaaaaaaaaaaaaaababacacacababaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaadaeadadafacagacacadadaeadaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaahahahahahahahahaiacajahahahahahahahahahaaaaaaaaaaaa +aaaaaaaaahahahakakakakakakahalahalahakakakakakakakahahaaaaaaaaaa +aaaaaaahahakakakamanamanahakalakalakakahahaoahahakakahahaaaaaaaa +aaaaahahakakamanapaqalaparanalamasahahahahalahahahahakahahaaaaaa +aaaaahakakahatapapapapapapapapapauavavawawaxayazaAahakakahaaaaaa +aaahahakamaBaxaCaDaCaDaEaxapalaFawavavawaGaHawawawaIahakahahaaaa +aaahakakalaravavawaHavavaIapaparawavaJawaHaKawaHawaxahakakahaaaa +aaahakamaLapamaHawavavanatapaMaCaHawawavavavaJawawaIahaNakahaaaa +aaahakaFaOaPapaQaHaHaHaxapaRalarawawawawaHaHaSaHaIapaTaNakahaaaa +aaahakamaDapaFaHaUaUaUaHaxapatapaVawaHaHaWaXaUaHaxapayaNakahaaaa +aaahakaFaYaCaHaUaUaUaZaUaHaDapapapayahbaaUaUbbbaaHaLahahakahaaaa +aaahahakaFaHaHaUaUbcbcaUaHawaDbdaCaIahbebfbfbgbhahahahakahahaaaa +aabiahahakakahbjbkbfbfblbmaOazbnboaCaSbhbfbfblbjahakakahahbpaaaa +ababbqahahahbrahbjblbjahalauawaIbsaTahahbjbtbjahbuahahahbqababaa +abbqbqbqahbvbubuahbjahahaFavaIaCbwaHbxbyahalahbububzahbqbqabbqaa +ababbAbqahbBbvbububububuahahaCaOazbCahaFbDbEbububvbvahbqbAababaa +ababbqbqahbvbBbvbubububvahahahalahahbvbvbuahbubvbvbvahbqbqababaa +abbqbqahahbFbBbvbvbvbvbvahbGbHbIbHbGahbvbvbvbvbvbvahahahbqbqabaa +aabiahahbJbFbvbvbvbvbvahbKbHbLbHbMbHbKahbvbvbvbvbBbFbFahahbpaaaa +aaahahbNbFbObBbBbBbvbvahbPbHbQbRbSbHbPahbvbBbBbvbTbFbFbNahahaaaa +aaahakakbNbUbFbvbvbvbvbvahbHbHbHbHbHahbVbvbBbBbvbvbFbFbNakahaaaa +aaahakakbNbFbFbvbvbBbvbvbvahahbWahahbvbvbBbBbvbvbvbFbFbNakahaaaa +aaahakakakbNbFbFbXbBbvbBbvbvbBbvbvbvbvbvbvbvbvbvbFbFbFbNakahaaaa +aaahahakakakahbFbObvbvbvbBbBbBbBbvbvbBbBbvbTbvbFbFbFbNakahahaaaa +aaaaahakakakakbNbFbFbObBbXbBbvbvbvbvbBbFbFbFbFbFbFbNakakahaaaaaa +aaaaahahakakakakahbFbFbFbFbFbFbFbFbFbFbFbFbFbFbNbNakakahahaaaaaa +aaaaaaahahakakakakbNbNbFbFbFbFbFbFbFbFbNbNbNbNakakakahahaaaaaaaa +aaaaaaaaahahahakakakakbNbNbNbNbNbNbNbNbNakakakakahahahaaaaaaaaaa +aaaaaaaaaabYahahahahakakakakakakakakakakakahahahahbYaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaahahahahahahahahahahahahahaaaaaaaaaaaaaaaaaaaa "} diff --git a/_maps/RandomRuins/LavaRuins/lavaland_surface_animal_hospital.dmm b/_maps/RandomRuins/LavaRuins/lavaland_surface_animal_hospital.dmm index 0261014729..ede21a8b1b 100644 --- a/_maps/RandomRuins/LavaRuins/lavaland_surface_animal_hospital.dmm +++ b/_maps/RandomRuins/LavaRuins/lavaland_surface_animal_hospital.dmm @@ -1,1505 +1,148 @@ -//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE -"aa" = ( -/turf/template_noop, -/area/template_noop) -"ab" = ( -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/lavaland/surface/outdoors) -"ac" = ( -/turf/open/floor/grass{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/lavaland/surface/outdoors) -"ad" = ( -/obj/structure/flora/ausbushes/brflowers, -/turf/open/floor/grass{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/lavaland/surface/outdoors) -"ae" = ( -/turf/closed/wall/mineral/titanium/nodiagonal{ - baseturf = /turf/open/floor/plating/lava/smooth - }, -/area/ruin/powered) -"af" = ( -/obj/structure/grille, -/obj/structure/window/fulltile, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/ruin/powered) -"ag" = ( -/turf/open/floor/plasteel/bar{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/ruin/powered) -"ah" = ( -/obj/structure/toilet, -/turf/open/floor/plasteel/bar{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/ruin/powered) -"ai" = ( -/obj/machinery/vending/coffee, -/turf/open/floor/plasteel/cmo{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/ruin/powered) -"aj" = ( -/obj/structure/table/wood, -/obj/item/device/flashlight/lamp, -/turf/open/floor/plasteel/cmo{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/ruin/powered) -"ak" = ( -/obj/structure/table/wood, -/obj/item/device/taperecorder, -/obj/item/weapon/pen/blue, -/turf/open/floor/plasteel/cmo{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/ruin/powered) -"al" = ( -/obj/structure/table/wood, -/obj/item/toy/carpplushie, -/turf/open/floor/plasteel/cmo{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/ruin/powered) -"am" = ( -/obj/machinery/vending/snack, -/turf/open/floor/plasteel/cmo{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/ruin/powered) -"an" = ( -/obj/machinery/sleeper{ - icon_state = "sleeper-open"; - dir = 4 - }, -/turf/open/floor/plasteel/white{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/ruin/powered) -"ao" = ( -/turf/open/floor/plasteel/white{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/ruin/powered) -"ap" = ( -/obj/structure/table, -/obj/item/weapon/circular_saw, -/obj/item/weapon/scalpel{ - pixel_y = 12 - }, -/turf/open/floor/plasteel/white{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/ruin/powered) -"aq" = ( -/obj/structure/table, -/obj/item/weapon/cautery{ - pixel_x = 4 - }, -/obj/item/weapon/surgicaldrill, -/turf/open/floor/plasteel/white{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/ruin/powered) -"ar" = ( -/obj/structure/table, -/obj/item/weapon/surgical_drapes, -/obj/item/weapon/razor, -/turf/open/floor/plasteel/white{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/ruin/powered) -"as" = ( -/turf/open/floor/plasteel/cmo{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/ruin/powered) -"at" = ( -/obj/structure/chair/office/dark{ - dir = 1 - }, -/turf/open/floor/plasteel/cmo{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/ruin/powered) -"au" = ( -/obj/structure/chair/office/dark{ - dir = 4 - }, -/turf/open/floor/plasteel/cmo{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/ruin/powered) -"av" = ( -/obj/item/weapon/reagent_containers/glass/rag, -/obj/item/weapon/reagent_containers/spray/cleaner, -/turf/open/floor/plasteel/blue/side{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; - dir = 8 - }, -/area/ruin/powered) -"aw" = ( -/obj/structure/bed/roller, -/turf/open/floor/plasteel/white{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/ruin/powered) -"ax" = ( -/obj/structure/closet/crate/trashcart, -/obj/item/weapon/storage/bag/trash, -/obj/item/trash/cheesie, -/obj/item/weapon/reagent_containers/syringe/antiviral, -/obj/item/bodybag, -/obj/item/weapon/reagent_containers/food/drinks/bottle/vodka, -/turf/open/floor/grass{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/lavaland/surface/outdoors) -"ay" = ( -/obj/structure/sink{ - icon_state = "sink"; - dir = 8; - pixel_x = -12; - pixel_y = 2 - }, -/obj/structure/mirror{ - pixel_x = -28 - }, -/turf/open/floor/plasteel/bar{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/ruin/powered) -"az" = ( -/obj/structure/noticeboard{ - dir = 1; - pixel_y = -27 - }, -/obj/item/weapon/paper{ - info = "Nothing of interest to report."; - name = "Important Notice - Mrs. Henderson" - }, -/turf/open/floor/plasteel/cmo{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/ruin/powered) -"aA" = ( -/obj/structure/closet/secure_closet/medical2, -/turf/open/floor/plasteel/white{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/ruin/powered) -"aB" = ( -/obj/machinery/computer/operating, -/turf/open/floor/plasteel/white{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/ruin/powered) -"aC" = ( -/obj/structure/table/optable, -/turf/open/floor/plasteel/white{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/ruin/powered) -"aD" = ( -/obj/structure/table, -/obj/item/weapon/retractor, -/obj/item/weapon/hemostat, -/turf/open/floor/plasteel/white{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/ruin/powered) -"aE" = ( -/turf/closed/wall/shuttle/smooth/nodiagonal{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/ruin/powered) -"aF" = ( -/obj/machinery/door/unpowered/shuttle{ - name = "Restroom" - }, -/turf/open/floor/plasteel/bar{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/ruin/powered) -"aG" = ( -/obj/structure/extinguisher_cabinet, -/turf/closed/wall/mineral/titanium/nodiagonal{ - baseturf = /turf/open/floor/plating/lava/smooth - }, -/area/ruin/powered) -"aH" = ( -/obj/structure/extinguisher_cabinet, -/turf/closed/wall/shuttle/smooth/nodiagonal{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/ruin/powered) -"aI" = ( -/turf/closed/wall/shuttle/smooth, -/area/ruin/powered) -"aJ" = ( -/turf/open/floor/plasteel/grimy{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/lavaland/surface/outdoors) -"aK" = ( -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/ruin/powered) -"aL" = ( -/turf/open/floor/plasteel/blue/side{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; - dir = 1 - }, -/area/ruin/powered) -"aM" = ( -/obj/effect/mob_spawn/human/doctor/alive/lavaland, -/turf/open/floor/plasteel/blue/side{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; - dir = 1 - }, -/area/ruin/powered) -"aN" = ( -/obj/structure/closet/crate/freezer, -/obj/item/weapon/reagent_containers/blood/random, -/obj/item/weapon/reagent_containers/blood/random, -/obj/item/weapon/reagent_containers/blood/random, -/obj/item/weapon/reagent_containers/blood/random, -/turf/open/floor/plasteel/blue/side{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; - dir = 1 - }, -/area/ruin/powered) -"aO" = ( -/obj/machinery/iv_drip, -/turf/open/floor/plasteel/blue/side{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; - dir = 1 - }, -/area/ruin/powered) -"aP" = ( -/turf/open/floor/plasteel/blue/side{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; - dir = 0 - }, -/area/ruin/powered) -"aQ" = ( -/turf/open/floor/plasteel/blue/corner{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; - dir = 8 - }, -/area/ruin/powered) -"aR" = ( -/turf/open/floor/plasteel/blue/side{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; - dir = 4 - }, -/area/ruin/powered) -"aS" = ( -/turf/open/floor/plasteel/blue/side{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; - dir = 8 - }, -/area/ruin/powered) -"aT" = ( -/obj/structure/closet, -/obj/effect/decal/cleanable/cobweb, -/obj/item/ammo_casing/shotgun/dart, -/obj/item/ammo_casing/shotgun/dart, -/obj/item/weapon/gun/ballistic/revolver/doublebarrel{ - desc = "For putting critters out to pasture." - }, -/obj/item/ammo_casing/shotgun/buckshot, -/obj/item/weapon/storage/box/bodybags, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/ruin/powered) -"aU" = ( -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/ruin/powered) -"aV" = ( -/obj/structure/closet/secure_closet/medical1, -/turf/open/floor/plasteel/white{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/ruin/powered) -"aW" = ( -/obj/machinery/vending/wallmed{ - pixel_y = 28 - }, -/turf/open/floor/plasteel/white{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/ruin/powered) -"aX" = ( -/obj/item/stack/cable_coil/random, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/ruin/powered) -"aY" = ( -/obj/structure/bodycontainer/morgue, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/ruin/powered) -"aZ" = ( -/obj/effect/decal/cleanable/ash, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/ruin/powered) -"ba" = ( -/obj/structure/table/glass, -/obj/item/weapon/reagent_containers/glass/beaker, -/obj/item/weapon/storage/backpack/dufflebag/med, -/turf/open/floor/plasteel/white{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/ruin/powered) -"bb" = ( -/obj/structure/table/reinforced, -/obj/item/device/laser_pointer, -/turf/open/floor/plasteel/white{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/ruin/powered) -"bc" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/storage/firstaid/regular, -/turf/open/floor/plasteel/white{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/ruin/powered) -"bd" = ( -/obj/structure/table/glass, -/obj/item/weapon/storage/box/gloves, -/obj/item/weapon/storage/box/masks{ - pixel_x = 3; - pixel_y = 3 - }, -/turf/open/floor/plasteel/white{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/ruin/powered) -"be" = ( -/obj/effect/decal/cleanable/oil, -/obj/item/weapon/storage/toolbox/mechanical, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/ruin/powered) -"bf" = ( -/obj/structure/table, -/obj/item/weapon/storage/fancy/cigarettes/dromedaryco, -/obj/item/weapon/storage/box/matches, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/ruin/powered) -"bg" = ( -/mob/living/simple_animal/cockroach, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/ruin/powered) -"bh" = ( -/obj/structure/table/glass, -/obj/item/weapon/storage/firstaid/brute, -/turf/open/floor/plasteel/white{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/ruin/powered) -"bi" = ( -/obj/item/toy/cattoy, -/turf/open/floor/plasteel/white{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/ruin/powered) -"bj" = ( -/obj/structure/table/glass, -/obj/item/weapon/lazarus_injector, -/turf/open/floor/plasteel/white{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/ruin/powered) -"bk" = ( -/obj/structure/reagent_dispensers/fueltank, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/ruin/powered) -"bl" = ( -/obj/structure/table, -/obj/item/weapon/reagent_containers/food/snacks/cookie{ - name = "doggie biscuit" - }, -/obj/item/weapon/reagent_containers/food/snacks/cookie{ - name = "doggie biscuit" - }, -/obj/item/weapon/reagent_containers/food/snacks/cookie{ - name = "doggie biscuit" - }, -/obj/item/weapon/reagent_containers/food/snacks/cookie{ - name = "doggie biscuit" - }, -/obj/item/weapon/reagent_containers/food/snacks/cookie{ - name = "doggie biscuit" - }, -/obj/item/weapon/reagent_containers/food/snacks/cookie{ - name = "doggie biscuit" - }, -/turf/open/floor/plasteel/blue/side{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; - dir = 1 - }, -/area/ruin/powered) -"bm" = ( -/obj/structure/chair/comfy/teal{ - dir = 8 - }, -/turf/open/floor/plasteel/blue/side{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; - dir = 1 - }, -/area/ruin/powered) -"bn" = ( -/obj/structure/bed/dogbed, -/turf/open/floor/plasteel/white{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/ruin/powered) -"bo" = ( -/obj/item/weapon/reagent_containers/glass/bowl, -/obj/item/weapon/reagent_containers/food/snacks/cheesewedge, -/obj/item/weapon/reagent_containers/food/snacks/cheesewedge, -/turf/open/floor/plasteel/white{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/ruin/powered) -"bp" = ( -/obj/structure/closet/crate/bin, -/obj/item/trash/pistachios, -/obj/item/weapon/lipstick/random, -/obj/item/seeds/apple, -/turf/open/floor/plasteel/blue/side{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; - dir = 8 - }, -/area/ruin/powered) -"bq" = ( -/obj/structure/filingcabinet/chestdrawer/wheeled, -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/ruin/powered) -"br" = ( -/obj/structure/chair/office/dark, -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/ruin/powered) -"bs" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/phone, -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/ruin/powered) -"bt" = ( -/obj/item/weapon/twohanded/required/kirbyplants, -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/ruin/powered) -"bu" = ( -/obj/structure/chair/comfy/teal{ - dir = 8 - }, -/turf/open/floor/plasteel/blue/side{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; - dir = 4 - }, -/area/ruin/powered) -"bv" = ( -/obj/effect/mob_spawn/mouse{ - dir = 4; - flavour_text = "You're a mousey! You're getting pretty old as mice go, and you haven't been feeling well as of late. Your master loves you a lot so he took you to this place so you can get better! You can't wait to see him again!"; - mob_name = "Stallman Jr." - }, -/turf/open/floor/plasteel/white{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/ruin/powered) -"bw" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/white{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/ruin/powered) -"bx" = ( -/obj/machinery/door/airlock/medical{ - name = "Patient Room"; - req_access_txt = "0" - }, -/turf/open/floor/plasteel/white{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/ruin/powered) -"by" = ( -/obj/structure/table/reinforced, -/obj/item/device/flashlight/lamp, -/turf/open/floor/plasteel/blue/side{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; - dir = 8 - }, -/area/ruin/powered) -"bz" = ( -/obj/structure/table/reinforced, -/obj/item/clothing/glasses/regular, -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/ruin/powered) -"bA" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/paper_bin, -/obj/item/weapon/pen/fourcolor, -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/ruin/powered) -"bB" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/storage/box/hug, -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/ruin/powered) -"bC" = ( -/obj/structure/chair/office/light{ - dir = 1 - }, -/turf/open/floor/plasteel/white{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/ruin/powered) -"bD" = ( -/obj/structure/table/glass, -/obj/item/weapon/reagent_containers/glass/bottle/cyanide{ - desc = "A cocktail of chemotherpy drugs intended to treat bladder cancer."; - name = "MVAC regimen" - }, -/obj/item/weapon/reagent_containers/syringe, -/turf/open/floor/plasteel/white{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/ruin/powered) -"bE" = ( -/obj/structure/closet/crate/critter, -/turf/open/floor/plasteel/blue/side{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; - dir = 8 - }, -/area/ruin/powered) -"bF" = ( -/turf/open/floor/plasteel/blue/side{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; - dir = 10 - }, -/area/ruin/powered) -"bG" = ( -/obj/structure/chair/comfy/teal{ - dir = 8 - }, -/turf/open/floor/plasteel/blue/side{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; - dir = 6 - }, -/area/ruin/powered) -"bH" = ( -/obj/structure/table, -/obj/item/weapon/tank/internals/oxygen, -/obj/item/weapon/tank/internals/oxygen, -/turf/open/floor/plasteel/blue/side{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; - dir = 8 - }, -/area/ruin/powered) -"bI" = ( -/obj/structure/sign/bluecross_2{ - name = "animal hospital" - }, -/turf/closed/wall/mineral/titanium/nodiagonal{ - baseturf = /turf/open/floor/plating/lava/smooth - }, -/area/ruin/powered) -"bJ" = ( -/obj/machinery/door/airlock/glass_large{ - name = "Ian's Pet Care" - }, -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/ruin/powered) -"bK" = ( -/obj/item/weapon/reagent_containers/glass/bowl, -/obj/item/weapon/reagent_containers/food/snacks/grown/wheat, -/obj/item/weapon/reagent_containers/food/snacks/grown/wheat, -/obj/item/weapon/reagent_containers/food/snacks/grown/wheat, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/white{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/ruin/powered) -"bL" = ( -/obj/vehicle/scooter/skateboard{ - dir = 4 - }, -/turf/open/floor/grass{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/lavaland/surface/outdoors) -"bM" = ( -/obj/structure/flora/ausbushes/sunnybush, -/turf/open/floor/grass{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/lavaland/surface/outdoors) -"bN" = ( -/obj/effect/mob_spawn/cow{ - dir = 4; - flavour_text = "You're a cow. You've lived a pampered life as a prized show heifer, a real blue-ribbon winner. After showing signs of a minor respiratory infection, your master took you to the hospital right away. He'd better come back soon. You're getting quite impatient."; - mob_name = "Flossie" - }, -/turf/open/floor/plasteel/white{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/ruin/powered) -"bO" = ( -/obj/structure/flora/ausbushes/ppflowers, -/turf/open/floor/grass{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/lavaland/surface/outdoors) -"bP" = ( -/obj/structure/chair/office/light{ - dir = 4 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/white{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/ruin/powered) -"bQ" = ( -/obj/structure/table/glass, -/obj/item/clothing/neck/petcollar, -/obj/item/weapon/pen/blue, -/turf/open/floor/plasteel/white{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/ruin/powered) -"bR" = ( -/obj/structure/table, -/obj/machinery/cell_charger, -/obj/item/weapon/melee/baton/cattleprod{ - desc = "On-the-fly rabies treatment."; - name = "cattle prod" - }, -/obj/item/weapon/stock_parts/cell/high, -/turf/open/floor/plasteel/blue/side{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; - dir = 10 - }, -/area/ruin/powered) -"bS" = ( -/obj/structure/closet, -/obj/item/weapon/defibrillator/loaded, -/obj/item/weapon/storage/belt/medical, -/obj/item/clothing/glasses/hud/health, -/turf/open/floor/plasteel/blue/side{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; - dir = 6 - }, -/area/ruin/powered) -"bT" = ( -/obj/item/weapon/pickaxe, -/obj/effect/decal/cleanable/blood/old, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/lavaland/surface/outdoors) -"bU" = ( -/obj/effect/decal/remains/human, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/lavaland/surface/outdoors) -"bV" = ( -/obj/effect/decal/cleanable/blood/old, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/lavaland/surface/outdoors) -"bW" = ( -/turf/open/floor/grass, -/area/lavaland/surface/outdoors) -"bX" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible{ - dir = 6 - }, -/turf/open/floor/grass{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/lavaland/surface/outdoors) -"bY" = ( -/obj/machinery/atmospherics/pipe/manifold/general/visible{ - dir = 1 - }, -/turf/open/floor/grass{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/lavaland/surface/outdoors) -"bZ" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible{ - dir = 10 - }, -/turf/open/floor/grass{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/lavaland/surface/outdoors) -"ca" = ( -/obj/machinery/atmospherics/components/unary/tank/air{ - dir = 4 - }, -/turf/open/floor/grass{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/lavaland/surface/outdoors) -"cb" = ( -/obj/machinery/atmospherics/components/binary/valve, -/turf/open/floor/grass{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/lavaland/surface/outdoors) -"cc" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible, -/turf/closed/wall/mineral/titanium/nodiagonal{ - baseturf = /turf/open/floor/plating/lava/smooth - }, -/area/ruin/powered) -"cd" = ( -/obj/structure/table/reinforced, -/obj/item/clothing/gloves/color/latex, -/obj/item/clothing/mask/surgical, -/obj/item/clothing/suit/apron/surgical, -/turf/open/floor/plasteel/white{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/ruin/powered) -"ce" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible{ - dir = 1 - }, -/obj/machinery/portable_atmospherics/pump, -/turf/open/floor/plasteel/white{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/ruin/powered) -"cf" = ( -/obj/structure/closet/l3closet, -/turf/open/floor/plasteel/white{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/ruin/powered) -"cg" = ( -/obj/machinery/door/unpowered/shuttle{ - name = "Break Room" - }, -/turf/open/floor/plasteel/cmo{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/ruin/powered) -"ch" = ( -/obj/machinery/door/unpowered/shuttle{ - name = "Emergency Care" - }, -/turf/open/floor/plasteel/white{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/ruin/powered) -"ci" = ( -/obj/machinery/door/unpowered/shuttle{ - desc = "There's a note wedged in the seam saying something about directing pizza here."; - name = "Staff Entrance" - }, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/ruin/powered) -"cj" = ( -/obj/machinery/door/unpowered/shuttle{ - name = "Morgue" - }, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/ruin/powered) -"ck" = ( -/obj/machinery/door/unpowered/shuttle{ - name = "Medical Supplies" - }, -/turf/open/floor/plasteel/white{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/ruin/powered) -"cl" = ( -/obj/machinery/door/unpowered/shuttle{ - name = "Safety Supplies" - }, -/turf/open/floor/plasteel/white{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/ruin/powered) -"cm" = ( -/obj/machinery/door/unpowered/shuttle{ - name = "Tool Storage" - }, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/ruin/powered) +"aa" = (/turf/template_noop,/area/template_noop) +"ab" = (/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) +"ac" = (/turf/open/floor/grass{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; initial_gas_mix = "o2=14;n2=23;TEMP=300"},/area/lavaland/surface/outdoors) +"ad" = (/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 6},/turf/open/floor/grass{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; initial_gas_mix = "o2=14;n2=23;TEMP=300"},/area/lavaland/surface/outdoors) +"ae" = (/obj/machinery/atmospherics/pipe/manifold/general/visible{dir = 1},/turf/open/floor/grass{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; initial_gas_mix = "o2=14;n2=23;TEMP=300"},/area/lavaland/surface/outdoors) +"af" = (/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 10},/turf/open/floor/grass{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; initial_gas_mix = "o2=14;n2=23;TEMP=300"},/area/lavaland/surface/outdoors) +"ag" = (/obj/structure/flora/ausbushes/brflowers,/turf/open/floor/grass{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; initial_gas_mix = "o2=14;n2=23;TEMP=300"},/area/lavaland/surface/outdoors) +"ah" = (/obj/machinery/atmospherics/components/unary/tank/air{dir = 4},/turf/open/floor/grass{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; initial_gas_mix = "o2=14;n2=23;TEMP=300"},/area/lavaland/surface/outdoors) +"ai" = (/obj/machinery/atmospherics/components/binary/valve,/turf/open/floor/grass{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; initial_gas_mix = "o2=14;n2=23;TEMP=300"},/area/lavaland/surface/outdoors) +"aj" = (/turf/closed/wall/shuttle/smooth{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/ruin/powered) +"ak" = (/obj/structure/grille,/obj/structure/window/fulltile,/turf/open/floor/plating{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/ruin/powered) +"al" = (/obj/machinery/atmospherics/pipe/simple/general/visible,/turf/closed/wall/shuttle/smooth{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/ruin/powered) +"am" = (/turf/open/floor/plasteel/bar{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/ruin/powered) +"an" = (/obj/structure/toilet,/turf/open/floor/plasteel/bar{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/ruin/powered) +"ao" = (/obj/machinery/vending/coffee,/turf/open/floor/plasteel/cmo{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/ruin/powered) +"ap" = (/obj/structure/table/wood,/obj/item/device/flashlight/lamp,/turf/open/floor/plasteel/cmo{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/ruin/powered) +"aq" = (/obj/structure/table/wood,/obj/item/device/taperecorder,/obj/item/weapon/pen/blue,/turf/open/floor/plasteel/cmo{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/ruin/powered) +"ar" = (/obj/structure/table/wood,/obj/item/toy/carpplushie,/turf/open/floor/plasteel/cmo{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/ruin/powered) +"as" = (/obj/machinery/vending/snack,/turf/open/floor/plasteel/cmo{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/ruin/powered) +"at" = (/obj/structure/table/reinforced,/obj/item/clothing/gloves/color/latex,/obj/item/clothing/mask/surgical,/obj/item/clothing/suit/apron/surgical,/turf/open/floor/plasteel/white{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/ruin/powered) +"au" = (/obj/machinery/atmospherics/components/unary/portables_connector/visible{dir = 1},/obj/machinery/portable_atmospherics/pump,/turf/open/floor/plasteel/white{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/ruin/powered) +"av" = (/obj/structure/table,/obj/item/weapon/circular_saw,/obj/item/weapon/scalpel{pixel_y = 12},/turf/open/floor/plasteel/white{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/ruin/powered) +"aw" = (/obj/structure/table,/obj/item/weapon/cautery{pixel_x = 4},/obj/item/weapon/surgicaldrill,/turf/open/floor/plasteel/white{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/ruin/powered) +"ax" = (/obj/structure/table,/obj/item/weapon/surgical_drapes,/obj/item/weapon/razor,/turf/open/floor/plasteel/white{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/ruin/powered) +"ay" = (/turf/open/floor/plasteel/cmo{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/ruin/powered) +"az" = (/obj/structure/chair/office/dark{dir = 1},/turf/open/floor/plasteel/cmo{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/ruin/powered) +"aA" = (/obj/structure/chair/office/dark{dir = 4},/turf/open/floor/plasteel/cmo{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/ruin/powered) +"aB" = (/obj/machinery/sleeper{icon_state = "sleeper-open"; dir = 4},/turf/open/floor/plasteel/white{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/ruin/powered) +"aC" = (/turf/open/floor/plasteel/white{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/ruin/powered) +"aD" = (/obj/structure/bed/roller,/turf/open/floor/plasteel/white{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/ruin/powered) +"aE" = (/obj/structure/closet/crate/trashcart,/obj/item/weapon/storage/bag/trash,/obj/item/trash/cheesie,/obj/item/weapon/reagent_containers/syringe/antiviral,/obj/item/bodybag,/obj/item/weapon/reagent_containers/food/drinks/bottle/vodka,/turf/open/floor/grass{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; initial_gas_mix = "o2=14;n2=23;TEMP=300"},/area/lavaland/surface/outdoors) +"aF" = (/obj/structure/sink{icon_state = "sink"; dir = 8; pixel_x = -12; pixel_y = 2},/obj/structure/mirror{pixel_x = -28},/turf/open/floor/plasteel/bar{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/ruin/powered) +"aG" = (/obj/structure/noticeboard{dir = 1; pixel_y = -27},/obj/item/weapon/paper{info = "Nothing of interest to report."; name = "Important Notice - Mrs. Henderson"},/turf/open/floor/plasteel/cmo{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/ruin/powered) +"aH" = (/obj/structure/closet/secure_closet/medical2,/turf/open/floor/plasteel/white{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/ruin/powered) +"aI" = (/obj/machinery/computer/operating,/turf/open/floor/plasteel/white{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/ruin/powered) +"aJ" = (/obj/structure/table/optable,/turf/open/floor/plasteel/white{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/ruin/powered) +"aK" = (/obj/structure/table,/obj/item/weapon/retractor,/obj/item/weapon/hemostat,/turf/open/floor/plasteel/white{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/ruin/powered) +"aL" = (/turf/closed/wall/shuttle/smooth/nodiagonal{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/ruin/powered) +"aM" = (/obj/machinery/door/unpowered/shuttle{name = "Restroom"},/turf/open/floor/plasteel/bar{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/ruin/powered) +"aN" = (/obj/structure/extinguisher_cabinet,/turf/closed/wall/shuttle/smooth{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/ruin/powered) +"aO" = (/obj/machinery/door/unpowered/shuttle{name = "Break Room"},/turf/open/floor/plasteel/cmo{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/ruin/powered) +"aP" = (/obj/structure/extinguisher_cabinet,/turf/closed/wall/shuttle/smooth/nodiagonal{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/ruin/powered) +"aQ" = (/obj/machinery/door/unpowered/shuttle{name = "Emergency Care"},/turf/open/floor/plasteel/white{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/ruin/powered) +"aR" = (/turf/closed/wall/shuttle/smooth,/area/ruin/powered) +"aS" = (/turf/open/floor/plasteel/grimy{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/lavaland/surface/outdoors) +"aT" = (/obj/machinery/door/unpowered/shuttle{desc = "There's a note wedged in the seam saying something about directing pizza here."; name = "Staff Entrance"},/turf/open/floor/plating{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/ruin/powered) +"aU" = (/turf/open/floor/plasteel{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/ruin/powered) +"aV" = (/turf/open/floor/plasteel/blue/side{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; dir = 1},/area/ruin/powered) +"aW" = (/obj/effect/mob_spawn/human/doctor/alive/lavaland,/turf/open/floor/plasteel/blue/side{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; dir = 1},/area/ruin/powered) +"aX" = (/obj/structure/closet/crate/freezer,/obj/item/weapon/reagent_containers/blood/random,/obj/item/weapon/reagent_containers/blood/random,/obj/item/weapon/reagent_containers/blood/random,/obj/item/weapon/reagent_containers/blood/random,/turf/open/floor/plasteel/blue/side{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; dir = 1},/area/ruin/powered) +"aY" = (/obj/machinery/iv_drip,/turf/open/floor/plasteel/blue/side{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; dir = 1},/area/ruin/powered) +"aZ" = (/turf/open/floor/plasteel/blue/side{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; dir = 0},/area/ruin/powered) +"ba" = (/turf/open/floor/plasteel/blue/corner{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; dir = 8},/area/ruin/powered) +"bb" = (/turf/open/floor/plasteel/blue/side{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; dir = 4},/area/ruin/powered) +"bc" = (/obj/machinery/door/unpowered/shuttle{name = "Morgue"},/turf/open/floor/plating{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/ruin/powered) +"bd" = (/obj/machinery/door/unpowered/shuttle{name = "Medical Supplies"},/turf/open/floor/plasteel/white{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/ruin/powered) +"be" = (/obj/machinery/door/unpowered/shuttle{name = "Safety Supplies"},/turf/open/floor/plasteel/white{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/ruin/powered) +"bf" = (/obj/machinery/door/unpowered/shuttle{name = "Tool Storage"},/turf/open/floor/plating{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/ruin/powered) +"bg" = (/turf/open/floor/plasteel/blue/side{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; dir = 8},/area/ruin/powered) +"bh" = (/obj/structure/closet,/obj/effect/decal/cleanable/cobweb,/obj/item/ammo_casing/shotgun/dart,/obj/item/ammo_casing/shotgun/dart,/obj/item/weapon/gun/projectile/revolver/doublebarrel{desc = "For putting critters out to pasture."},/obj/item/ammo_casing/shotgun/buckshot,/obj/item/weapon/storage/box/bodybags,/turf/open/floor/plating{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/ruin/powered) +"bi" = (/turf/open/floor/plating{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/ruin/powered) +"bj" = (/obj/structure/closet/secure_closet/medical1,/turf/open/floor/plasteel/white{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/ruin/powered) +"bk" = (/obj/machinery/vending/wallmed{pixel_y = 28},/turf/open/floor/plasteel/white{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/ruin/powered) +"bl" = (/obj/structure/closet/l3closet,/turf/open/floor/plasteel/white{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/ruin/powered) +"bm" = (/obj/item/stack/cable_coil/random,/turf/open/floor/plating{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/ruin/powered) +"bn" = (/obj/structure/bodycontainer/morgue,/turf/open/floor/plating{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/ruin/powered) +"bo" = (/obj/effect/decal/cleanable/ash,/turf/open/floor/plating{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/ruin/powered) +"bp" = (/obj/structure/table/glass,/obj/item/weapon/reagent_containers/glass/beaker,/obj/item/weapon/storage/backpack/dufflebag/med,/turf/open/floor/plasteel/white{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/ruin/powered) +"bq" = (/obj/structure/table/reinforced,/obj/item/device/laser_pointer,/turf/open/floor/plasteel/white{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/ruin/powered) +"br" = (/obj/structure/table/reinforced,/obj/item/weapon/storage/firstaid/regular,/turf/open/floor/plasteel/white{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/ruin/powered) +"bs" = (/obj/structure/table/glass,/obj/item/weapon/storage/box/gloves,/obj/item/weapon/storage/box/masks{pixel_x = 3; pixel_y = 3},/turf/open/floor/plasteel/white{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/ruin/powered) +"bt" = (/obj/effect/decal/cleanable/oil,/obj/item/weapon/storage/toolbox/mechanical,/turf/open/floor/plating{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/ruin/powered) +"bu" = (/obj/structure/table,/obj/item/weapon/storage/fancy/cigarettes/dromedaryco,/obj/item/weapon/storage/box/matches,/turf/open/floor/plating{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/ruin/powered) +"bv" = (/mob/living/simple_animal/cockroach,/turf/open/floor/plating{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/ruin/powered) +"bw" = (/obj/structure/table/glass,/obj/item/weapon/storage/firstaid/brute,/turf/open/floor/plasteel/white{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/ruin/powered) +"bx" = (/obj/item/toy/cattoy,/turf/open/floor/plasteel/white{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/ruin/powered) +"by" = (/obj/structure/table/glass,/obj/item/weapon/lazarus_injector,/turf/open/floor/plasteel/white{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/ruin/powered) +"bz" = (/obj/structure/reagent_dispensers/fueltank,/turf/open/floor/plating{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/ruin/powered) +"bA" = (/obj/structure/table,/obj/item/weapon/reagent_containers/food/snacks/cookie{name = "doggie biscuit"},/obj/item/weapon/reagent_containers/food/snacks/cookie{name = "doggie biscuit"},/obj/item/weapon/reagent_containers/food/snacks/cookie{name = "doggie biscuit"},/obj/item/weapon/reagent_containers/food/snacks/cookie{name = "doggie biscuit"},/obj/item/weapon/reagent_containers/food/snacks/cookie{name = "doggie biscuit"},/obj/item/weapon/reagent_containers/food/snacks/cookie{name = "doggie biscuit"},/turf/open/floor/plasteel/blue/side{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; dir = 1},/area/ruin/powered) +"bB" = (/obj/structure/chair/comfy/teal{dir = 8},/turf/open/floor/plasteel/blue/side{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; dir = 1},/area/ruin/powered) +"bC" = (/obj/structure/bed/dogbed,/turf/open/floor/plasteel/white{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/ruin/powered) +"bD" = (/obj/item/weapon/reagent_containers/glass/bowl,/obj/item/weapon/reagent_containers/food/snacks/cheesewedge,/obj/item/weapon/reagent_containers/food/snacks/cheesewedge,/turf/open/floor/plasteel/white{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/ruin/powered) +"bE" = (/obj/item/weapon/reagent_containers/glass/rag,/obj/item/weapon/reagent_containers/spray/cleaner,/turf/open/floor/plasteel/blue/side{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; dir = 8},/area/ruin/powered) +"bF" = (/obj/structure/closet/crate/bin,/obj/item/trash/pistachios,/obj/item/weapon/lipstick/random,/obj/item/seeds/apple,/turf/open/floor/plasteel/blue/side{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; dir = 8},/area/ruin/powered) +"bG" = (/obj/structure/filingcabinet/chestdrawer/wheeled,/turf/open/floor/plasteel{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/ruin/powered) +"bH" = (/obj/structure/chair/office/dark,/turf/open/floor/plasteel{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/ruin/powered) +"bI" = (/obj/structure/table/reinforced,/obj/item/weapon/phone,/turf/open/floor/plasteel{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/ruin/powered) +"bJ" = (/obj/item/weapon/twohanded/required/kirbyplants,/turf/open/floor/plasteel{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/ruin/powered) +"bK" = (/obj/structure/chair/comfy/teal{dir = 8},/turf/open/floor/plasteel/blue/side{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; dir = 4},/area/ruin/powered) +"bL" = (/obj/effect/mob_spawn/mouse{dir = 4; flavour_text = "You're a mousey! You're getting pretty old as mice go, and you haven't been feeling well as of late. Your master loves you a lot so he took you to this place so you can get better! You can't wait to see him again!"; mob_name = "Stallman Jr."},/turf/open/floor/plasteel/white{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/ruin/powered) +"bM" = (/obj/effect/decal/cleanable/dirt,/turf/open/floor/plasteel/white{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/ruin/powered) +"bN" = (/obj/machinery/door/airlock/medical{name = "Patient Room"; req_access_txt = "0"},/turf/open/floor/plasteel/white{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/ruin/powered) +"bO" = (/obj/structure/table/reinforced,/obj/item/device/flashlight/lamp,/turf/open/floor/plasteel/blue/side{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; dir = 8},/area/ruin/powered) +"bP" = (/obj/structure/table/reinforced,/obj/item/clothing/glasses/regular,/turf/open/floor/plasteel{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/ruin/powered) +"bQ" = (/obj/structure/table/reinforced,/obj/item/weapon/paper_bin,/obj/item/weapon/pen/fourcolor,/turf/open/floor/plasteel{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/ruin/powered) +"bR" = (/obj/structure/table/reinforced,/obj/item/weapon/storage/box/hug,/turf/open/floor/plasteel{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/ruin/powered) +"bS" = (/obj/structure/chair/office/light{dir = 1},/turf/open/floor/plasteel/white{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/ruin/powered) +"bT" = (/obj/structure/table/glass,/obj/item/weapon/reagent_containers/glass/bottle/cyanide{desc = "A cocktail of chemotherpy drugs intended to treat bladder cancer."; name = "MVAC regimen"},/obj/item/weapon/reagent_containers/syringe,/turf/open/floor/plasteel/white{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/ruin/powered) +"bU" = (/obj/structure/closet/crate/critter,/turf/open/floor/plasteel/blue/side{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; dir = 8},/area/ruin/powered) +"bV" = (/turf/open/floor/plasteel/blue/side{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; dir = 10},/area/ruin/powered) +"bW" = (/obj/structure/chair/comfy/teal{dir = 8},/turf/open/floor/plasteel/blue/side{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; dir = 6},/area/ruin/powered) +"bX" = (/obj/structure/table,/obj/item/weapon/tank/internals/oxygen,/obj/item/weapon/tank/internals/oxygen,/turf/open/floor/plasteel/blue/side{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; dir = 8},/area/ruin/powered) +"bY" = (/obj/structure/sign/bluecross_2{name = "animal hospital"},/turf/closed/wall/shuttle/smooth{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/ruin/powered) +"bZ" = (/obj/machinery/door/airlock/glass_large{name = "Ian's Pet Care"},/turf/open/floor/plasteel{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/ruin/powered) +"ca" = (/obj/item/weapon/reagent_containers/glass/bowl,/obj/item/weapon/reagent_containers/food/snacks/grown/wheat,/obj/item/weapon/reagent_containers/food/snacks/grown/wheat,/obj/item/weapon/reagent_containers/food/snacks/grown/wheat,/obj/effect/decal/cleanable/dirt,/turf/open/floor/plasteel/white{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/ruin/powered) +"cb" = (/obj/vehicle/scooter/skateboard{dir = 4},/turf/open/floor/grass{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; initial_gas_mix = "o2=14;n2=23;TEMP=300"},/area/lavaland/surface/outdoors) +"cc" = (/obj/structure/flora/ausbushes/sunnybush,/turf/open/floor/grass{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; initial_gas_mix = "o2=14;n2=23;TEMP=300"},/area/lavaland/surface/outdoors) +"cd" = (/obj/effect/mob_spawn/cow{dir = 4; flavour_text = "You're a cow. You've lived a pampered life as a prized show heifer, a real blue-ribbon winner. After showing signs of a minor respiratory infection, your master took you to the hospital right away. He'd better come back soon. You're getting quite impatient."; mob_name = "Flossie"},/turf/open/floor/plasteel/white{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/ruin/powered) +"ce" = (/obj/structure/flora/ausbushes/ppflowers,/turf/open/floor/grass{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; initial_gas_mix = "o2=14;n2=23;TEMP=300"},/area/lavaland/surface/outdoors) +"cf" = (/obj/structure/chair/office/light{dir = 4},/obj/effect/decal/cleanable/dirt,/turf/open/floor/plasteel/white{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/ruin/powered) +"cg" = (/obj/structure/table/glass,/obj/item/clothing/tie/petcollar,/obj/item/weapon/pen/blue,/turf/open/floor/plasteel/white{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/ruin/powered) +"ch" = (/obj/structure/table,/obj/machinery/cell_charger,/obj/item/weapon/melee/baton/cattleprod{desc = "On-the-fly rabies treatment."; name = "cattle prod"},/obj/item/weapon/stock_parts/cell/high,/turf/open/floor/plasteel/blue/side{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; dir = 10},/area/ruin/powered) +"ci" = (/obj/structure/closet,/obj/item/weapon/defibrillator/loaded,/obj/item/weapon/storage/belt/medical,/obj/item/clothing/glasses/hud/health,/turf/open/floor/plasteel/blue/side{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; dir = 6},/area/ruin/powered) +"cj" = (/obj/item/weapon/pickaxe,/obj/effect/decal/cleanable/blood/old,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) +"ck" = (/obj/effect/decal/remains/human,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) +"cl" = (/obj/effect/decal/cleanable/blood/old,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) +"cm" = (/turf/open/floor/grass,/area/lavaland/surface/outdoors) (1,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -aa -ab -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -"} -(2,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -ab -ab -ab -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -aa -aa -"} -(3,1,1) = {" -aa -aa -aa -aa -aa -ab -ab -ab -ab -aJ -ab -ab -ac -ab -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -bU -bV -ab -ab -"} -(4,1,1) = {" -aa -aa -aa -aa -aa -ab -ab -ax -ac -aJ -ac -ae -ae -ae -ae -ae -aa -aa -aa -aa -ab -ab -ab -bT -ab -ab -ab -ab -"} -(5,1,1) = {" -aa -aa -aa -aa -ae -ae -ae -ae -ae -ci -ae -ae -aT -aY -bf -ae -ae -ae -ae -ae -ae -ac -ab -ab -ab -ab -ab -ab -"} -(6,1,1) = {" -aa -aa -aa -ab -ae -ag -ag -ay -ae -aK -aK -cj -aU -aZ -bg -cj -aK -bp -by -bF -ae -ac -ac -ab -ab -ab -ab -ab -"} -(7,1,1) = {" -aa -ab -ab -ab -ae -ah -ag -ag -aF -aK -aK -ae -ae -ae -ae -ae -aL -bq -bz -aP -af -ad -ac -ac -ab -ab -bW -bW -"} -(8,1,1) = {" -aa -ab -ab -ac -ae -ae -ae -ae -aG -aL -aP -ae -aV -ba -bh -aG -aL -br -bA -aP -af -bL -ac -ac -ac -ab -ab -ab -"} -(9,1,1) = {" -ab -ab -ac -ac -ae -ai -as -as -cg -aK -aP -ae -aW -ao -bi -ae -aL -bs -bB -aP -bI -bM -ac -ab -ab -ab -ab -ab -"} -(10,1,1) = {" -ab -ab -ab -ac -af -aj -at -as -ae -aM -aK -ck -ao -bb -ao -ck -aK -aK -aK -aK -bJ -aJ -aJ -aJ -ab -ab -ab -ab -"} -(11,1,1) = {" -ab -ac -ac -ac -af -ak -as -az -ae -aM -aP -ae -ae -ae -ae -ae -bl -bt -aK -aK -aK -aJ -aJ -ab -ab -bW -ab -ab -"} -(12,1,1) = {" -ab -ac -ac -ad -af -al -au -as -ae -aM -aK -cl -ao -bc -ao -cl -aK -aK -aK -aP -ae -bM -ac -ac -ab -ab -ab -ab -"} -(13,1,1) = {" -ab -ab -ac -ac -ae -am -as -as -cg -aK -aP -ae -aW -ao -ao -ae -bm -bu -bu -bG -ae -ac -bO -ac -ab -ab -ab -ab -"} -(14,1,1) = {" -ab -ac -bX -ca -ae -ae -ae -ae -aG -aL -aP -ae -cf -bd -bj -ae -ae -ae -ae -ae -ae -ae -ae -ae -ab -ab -aa -aa -"} -(15,1,1) = {" -ab -ab -bY -ca -ae -cd -an -aA -ae -aL -aP -ae -ae -ae -ae -ae -bn -bv -bC -ae -bn -bN -bP -ae -ab -ab -aa -aa -"} -(16,1,1) = {" -aa -ab -bZ -cb -cc -ce -ao -ao -ch -aK -aK -cm -aX -be -bk -ae -bo -bw -bD -ae -bK -ao -bQ -ae -ab -aa -aa -aa -"} -(17,1,1) = {" -aa -ab -ab -ac -ae -ap -ao -aB -ae -aL -aP -ae -ae -ae -ae -ae -af -bx -ae -ae -af -bx -ae -ae -aa -aa -aa -aa -"} -(18,1,1) = {" -aa -aa -ab -ac -ae -aq -ao -aC -ae -aN -aQ -aS -aS -aS -aS -aS -av -aK -bE -bH -aS -aK -bR -ae -aa -aa -aa -aa -"} -(19,1,1) = {" -aa -aa -ab -ab -ae -ar -aw -aD -ae -aO -aR -aR -aR -aR -aR -aR -aR -aR -aR -aR -aR -aR -bS -ae -aa -aa -aa -aa -"} -(20,1,1) = {" -aa -aa -aa -ab -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -aa -aa -aa -aa -"} -(21,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa +aaaaaaaaaaaaaaaaabababababababaaaaaaaaaaaa +aaaaaaaaaaaaababababacacabacabababaaaaaaaa +aaaaaaaaaaaaababacabacacacadaeafabababaaaa +aaaaaaaaaaababacacacacagacahahaiacacababaa +aaaaaaaaajajajajajakakakajajajalajajajajaa +aaaaababajamanajaoapaqarasajatauavawaxajaa +aaaaababajamamajayazayaAayajaBaCaCaCaDajaa +aaababaEajaFamajayayaGayayajaHaCaIaJaKajaa +abababacaLajaMaNaOajajajaOaPajaQaRaRaRajaa +ababaSaSaTaUaUaVaUaWaWaWaUaVaVaUaVaXaYajaa +abababacajaUaUaZaZaUaZaUaZaZaZaUaZbabbajaa +aaababajaLbcaLajajbdajbeajajaLbfajbgbbajaa +ababacajbhbiajbjbkaCajaCbkblajbmajbgbbajaa +aaababajbnboajbpaCbqajbraCbsajbtajbgbbajaa +aaaaaaajbubvajbwbxaCajaCaCbyajbzajbgbbajaa +aaaaaaajaLbcaLaNajbdajbeajajajajaLbgbbajaa +aaaaaaaaajaUaVaVaVaUbAaUbBajbCbDakbEbbajaa +aaaaaaaaajbFbGbHbIaUbJaUbKajbLbMbNaUbbajaa +aaaaaaaaajbObPbQbRaUaUaUbKajbSbTajbUbbajaa +aaaaaaaaajbVaZaZaZaUaUaZbWajajajaLbXbbajaa +aaaaaaabajajakakbYbZaUajajajbCcaakbgbbajaa +aaaaababacacagcbccaSaSccacajcdaCbNaUbbajaa +aaaaabababacacacacaSaSacceajcfcgajchciajaa +aaababcjababacacabaSabacacajajajajajajajaa +aaabckababababacababababababababaaaaaaaaaa +aaabclabababababababcmababababaaaaaaaaaaaa +aaaaababababcmababababababaaaaaaaaaaaaaaaa +aaaaababababcmababababababaaaaaaaaaaaaaaaa "} diff --git a/_maps/RandomRuins/LavaRuins/lavaland_surface_ash_walker1.dmm b/_maps/RandomRuins/LavaRuins/lavaland_surface_ash_walker1.dmm index dccf2a0dd2..e1f874254d 100644 --- a/_maps/RandomRuins/LavaRuins/lavaland_surface_ash_walker1.dmm +++ b/_maps/RandomRuins/LavaRuins/lavaland_surface_ash_walker1.dmm @@ -187,7 +187,7 @@ /area/ruin/unpowered) "z" = ( /obj/item/weapon/shovel, -/obj/effect/decal/cleanable/cobweb/cobweb2, +/obj/effect/decal/cleanable/cobweb2, /turf/open/floor/engine/cult{ baseturf = /turf/open/floor/plating/lava/smooth }, diff --git a/_maps/RandomRuins/LavaRuins/lavaland_surface_biodome_winter.dmm b/_maps/RandomRuins/LavaRuins/lavaland_surface_biodome_winter.dmm index 2fdd97b8b2..a2728a400b 100644 --- a/_maps/RandomRuins/LavaRuins/lavaland_surface_biodome_winter.dmm +++ b/_maps/RandomRuins/LavaRuins/lavaland_surface_biodome_winter.dmm @@ -1,1372 +1,103 @@ -//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE -"aa" = ( -/turf/template_noop, -/area/template_noop) -"ab" = ( -/turf/closed/wall/r_wall{ - baseturf = /turf/open/floor/plating/lava/smooth - }, -/area/ruin/powered/snow_biodome) -"ac" = ( -/obj/item/stack/medical/ointment, -/obj/structure/table, -/obj/item/stack/medical/bruise_pack, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth - }, -/area/ruin/powered/snow_biodome) -"ad" = ( -/obj/structure/table, -/obj/item/stack/medical/gauze, -/obj/item/stack/medical/gauze, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth - }, -/area/ruin/powered/snow_biodome) -"ae" = ( -/obj/machinery/power/smes, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth - }, -/area/ruin/powered/snow_biodome) -"af" = ( -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth - }, -/area/ruin/powered/snow_biodome) -"ag" = ( -/obj/structure/reagent_dispensers/beerkeg, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth - }, -/area/ruin/powered/snow_biodome) -"ah" = ( -/obj/item/weapon/reagent_containers/food/drinks/mug, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth - }, -/area/ruin/powered/snow_biodome) -"ai" = ( -/obj/machinery/shower, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth - }, -/area/ruin/powered/snow_biodome) -"aj" = ( -/obj/structure/sink, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth - }, -/area/ruin/powered/snow_biodome) -"ak" = ( -/turf/open/floor/plating/asteroid/snow{ - baseturf = /turf/open/floor/plating/lava/smooth; - initial_gas_mix = "o2=22;n2=82;TEMP=180" - }, -/area/ruin/powered/snow_biodome) -"al" = ( -/obj/effect/decal/cleanable/oil, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth - }, -/area/ruin/powered/snow_biodome) -"am" = ( -/obj/machinery/door/airlock/hatch, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth - }, -/area/ruin/powered/snow_biodome) -"an" = ( -/obj/structure/toilet{ - dir = 8 - }, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth - }, -/area/ruin/powered/snow_biodome) -"ao" = ( -/turf/open/floor/plating/ice{ - initial_gas_mix = "o2=22;n2=82;TEMP=180" - }, -/area/ruin/powered/snow_biodome) -"ap" = ( -/obj/structure/flora/rock/icy, -/turf/open/floor/plating/asteroid/snow{ - baseturf = /turf/open/floor/plating/lava/smooth; - initial_gas_mix = "o2=22;n2=82;TEMP=180" - }, -/area/ruin/powered/snow_biodome) -"aq" = ( -/turf/closed/wall/mineral/wood, -/area/ruin/powered/snow_biodome) -"ar" = ( -/obj/machinery/door/airlock/wood, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth - }, -/area/ruin/powered/snow_biodome) -"as" = ( -/obj/structure/fans, -/turf/closed/wall/mineral/wood, -/area/ruin/powered/snow_biodome) -"at" = ( -/turf/open/floor/wood{ - baseturf = /turf/open/floor/plating/lava/smooth; - name = "floor" - }, -/area/ruin/powered/snow_biodome) -"au" = ( -/obj/structure/bed, -/obj/item/weapon/bedsheet/blue, -/turf/open/floor/wood{ - baseturf = /turf/open/floor/plating/lava/smooth; - name = "floor" - }, -/area/ruin/powered/snow_biodome) -"av" = ( -/obj/structure/bookcase/random, -/turf/open/floor/wood{ - baseturf = /turf/open/floor/plating/lava/smooth; - name = "floor" - }, -/area/ruin/powered/snow_biodome) -"aw" = ( -/obj/structure/table/wood, -/turf/open/floor/wood{ - baseturf = /turf/open/floor/plating/lava/smooth; - name = "floor" - }, -/area/ruin/powered/snow_biodome) -"ax" = ( -/obj/structure/table/wood, -/obj/item/weapon/reagent_containers/food/snacks/beans, -/turf/open/floor/wood{ - baseturf = /turf/open/floor/plating/lava/smooth; - name = "floor" - }, -/area/ruin/powered/snow_biodome) -"ay" = ( -/obj/structure/closet/crate/trashcart, -/obj/item/trash/semki, -/obj/item/trash/candy, -/turf/open/floor/plating/asteroid/snow{ - baseturf = /turf/open/floor/plating/lava/smooth; - initial_gas_mix = "o2=22;n2=82;TEMP=180" - }, -/area/ruin/powered/snow_biodome) -"az" = ( -/obj/structure/flora/tree/pine, -/turf/open/floor/plating/asteroid/snow{ - baseturf = /turf/open/floor/plating/lava/smooth; - initial_gas_mix = "o2=22;n2=82;TEMP=180" - }, -/area/ruin/powered/snow_biodome) -"aA" = ( -/obj/structure/chair/comfy/brown{ - tag = "icon-comfychair (EAST)"; - icon_state = "comfychair"; - dir = 4 - }, -/turf/open/floor/wood{ - baseturf = /turf/open/floor/plating/lava/smooth; - name = "floor" - }, -/area/ruin/powered/snow_biodome) -"aB" = ( -/obj/structure/flora/rock/pile/icy, -/turf/open/floor/plating/asteroid/snow{ - baseturf = /turf/open/floor/plating/lava/smooth; - initial_gas_mix = "o2=22;n2=82;TEMP=180" - }, -/area/ruin/powered/snow_biodome) -"aC" = ( -/obj/structure/flora/tree/dead, -/turf/open/floor/plating/asteroid/snow{ - baseturf = /turf/open/floor/plating/lava/smooth; - initial_gas_mix = "o2=22;n2=82;TEMP=180" - }, -/area/ruin/powered/snow_biodome) -"aD" = ( -/obj/machinery/door/airlock/wood, -/turf/open/floor/wood{ - baseturf = /turf/open/floor/plating/lava/smooth; - name = "floor" - }, -/area/ruin/powered/snow_biodome) -"aE" = ( -/obj/structure/extinguisher_cabinet, -/turf/closed/wall/mineral/wood, -/area/ruin/powered/snow_biodome) -"aF" = ( -/obj/structure/table/wood, -/obj/item/weapon/reagent_containers/food/drinks/mug/coco, -/turf/open/floor/wood{ - baseturf = /turf/open/floor/plating/lava/smooth; - name = "floor" - }, -/area/ruin/powered/snow_biodome) -"aG" = ( -/obj/structure/chair/comfy/brown{ - tag = "icon-comfychair (WEST)"; - icon_state = "comfychair"; - dir = 8 - }, -/turf/open/floor/wood{ - baseturf = /turf/open/floor/plating/lava/smooth; - name = "floor" - }, -/area/ruin/powered/snow_biodome) -"aH" = ( -/mob/living/simple_animal/hostile/skeleton/eskimo, -/turf/open/floor/wood{ - baseturf = /turf/open/floor/plating/lava/smooth; - name = "floor" - }, -/area/ruin/powered/snow_biodome) -"aI" = ( -/obj/structure/flora/bush, -/turf/open/floor/plating/asteroid/snow{ - baseturf = /turf/open/floor/plating/lava/smooth; - initial_gas_mix = "o2=22;n2=82;TEMP=180" - }, -/area/ruin/powered/snow_biodome) -"aJ" = ( -/obj/vehicle/atv, -/turf/open/floor/plating/asteroid/snow{ - baseturf = /turf/open/floor/plating/lava/smooth; - initial_gas_mix = "o2=22;n2=82;TEMP=180" - }, -/area/ruin/powered/snow_biodome) -"aK" = ( -/turf/closed/wall/mineral/wood{ - baseturf = /turf/open/floor/plating/lava/smooth - }, -/area/ruin/powered/snow_biodome) -"aL" = ( -/obj/structure/displaycase/captain, -/turf/open/floor/wood{ - baseturf = /turf/open/floor/plating/lava/smooth; - name = "floor" - }, -/area/ruin/powered/snow_biodome) -"aM" = ( -/turf/open/floor/carpet{ - baseturf = /turf/open/floor/plating/lava/smooth - }, -/area/ruin/powered/snow_biodome) -"aN" = ( -/obj/structure/bed/dogbed, -/turf/open/floor/wood{ - baseturf = /turf/open/floor/plating/lava/smooth; - name = "floor" - }, -/area/ruin/powered/snow_biodome) -"aO" = ( -/obj/machinery/door/airlock/glass_large, -/obj/structure/fans/tiny, -/turf/open/floor/pod/dark, -/area/ruin/powered/snow_biodome) -"aP" = ( -/obj/structure/fans/tiny, -/turf/open/floor/pod/dark, -/area/ruin/powered/snow_biodome) -"aQ" = ( -/obj/structure/flora/grass/both, -/turf/open/floor/plating/asteroid/snow{ - baseturf = /turf/open/floor/plating/lava/smooth; - initial_gas_mix = "o2=22;n2=82;TEMP=180" - }, -/area/ruin/powered/snow_biodome) -"aR" = ( -/obj/structure/flora/tree/pine/xmas, -/turf/open/floor/plating/asteroid/snow{ - baseturf = /turf/open/floor/plating/lava/smooth; - initial_gas_mix = "o2=22;n2=82;TEMP=180" - }, -/area/ruin/powered/snow_biodome) -"aS" = ( -/obj/structure/rack, -/obj/item/clothing/suit/hooded/wintercoat/science, -/obj/item/clothing/shoes/winterboots, -/obj/item/clothing/gloves/fingerless, -/turf/open/floor/pod/dark, -/area/ruin/powered/snow_biodome) -"aT" = ( -/obj/structure/grille, -/obj/structure/window/fulltile, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth - }, -/area/ruin/powered/snow_biodome) -"aU" = ( -/obj/machinery/vending/coffee, -/turf/open/floor/pod/dark, -/area/ruin/powered/snow_biodome) -"aV" = ( -/obj/structure/closet/secure_closet/freezer/fridge, -/turf/open/floor/pod/dark, -/area/ruin/powered/snow_biodome) -"aW" = ( -/turf/open/floor/pod/dark, -/area/ruin/powered/snow_biodome) -"aX" = ( -/turf/open/floor/pod/light, -/area/ruin/powered/snow_biodome) -"aY" = ( -/obj/structure/chair/stool, -/turf/open/floor/pod/dark, -/area/ruin/powered/snow_biodome) -"aZ" = ( -/obj/machinery/door/airlock/hatch, -/obj/structure/fans/tiny, -/turf/open/floor/pod/dark, -/area/ruin/powered/snow_biodome) -"ba" = ( -/obj/machinery/door/airlock/silver, -/obj/structure/fans/tiny, -/turf/open/floor/pod/dark, -/area/ruin/powered/snow_biodome) -"bb" = ( -/obj/machinery/door/airlock/silver, -/obj/structure/fans/tiny, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth - }, -/area/ruin/powered/snow_biodome) -"bc" = ( -/obj/structure/table, -/turf/open/floor/pod/dark, -/area/ruin/powered/snow_biodome) -"bd" = ( -/obj/structure/table, -/obj/item/weapon/pen, -/obj/item/weapon/paper_bin, -/turf/open/floor/pod/dark, -/area/ruin/powered/snow_biodome) -"be" = ( -/obj/structure/table, -/obj/machinery/microwave, -/turf/open/floor/pod/dark, -/area/ruin/powered/snow_biodome) -"bf" = ( -/obj/effect/decal/cleanable/oil, -/turf/open/floor/pod/dark, -/area/ruin/powered/snow_biodome) -"bg" = ( -/obj/item/weapon/twohanded/required/chainsaw, -/obj/structure/closet, -/turf/open/floor/pod/dark, -/area/ruin/powered/snow_biodome) -"bh" = ( -/obj/structure/filingcabinet, -/turf/open/floor/pod/dark, -/area/ruin/powered/snow_biodome) -"bi" = ( -/obj/machinery/computer/monitor, -/turf/open/floor/pod/dark, -/area/ruin/powered/snow_biodome) -"bj" = ( -/obj/item/weapon/storage/toolbox/mechanical, -/turf/open/floor/pod/dark, -/area/ruin/powered/snow_biodome) -"bk" = ( -/obj/structure/reagent_dispensers/fueltank, -/turf/open/floor/pod/dark, -/area/ruin/powered/snow_biodome) -"bl" = ( -/turf/open/floor/wood{ - baseturf = /turf/open/floor/plating/lava/smooth; - initial_gas_mix = "o2=22;n2=82;TEMP=180"; - name = "bridge" - }, -/area/ruin/powered/snow_biodome) -"bm" = ( -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/ruin/powered/snow_biodome) -"bn" = ( -/obj/item/clothing/mask/balaclava, -/turf/open/floor/pod/dark, -/area/ruin/powered/snow_biodome) -"bo" = ( -/obj/structure/table, -/obj/item/weapon/storage/fancy/cigarettes/cigpack_carp, -/turf/open/floor/pod/dark, -/area/ruin/powered/snow_biodome) -"bp" = ( -/obj/structure/table, -/obj/item/weapon/pen, -/obj/item/weapon/paper, -/turf/open/floor/pod/dark, -/area/ruin/powered/snow_biodome) -"bq" = ( -/obj/machinery/light/built{ - dir = 1 - }, -/turf/open/floor/pod/dark, -/area/ruin/powered/snow_biodome) -"br" = ( -/obj/structure/fans/tiny, -/obj/machinery/door/airlock/glass_large, -/turf/open/floor/pod/dark, -/area/ruin/powered/snow_biodome) +"aa" = (/turf/template_noop,/area/template_noop) +"ab" = (/turf/closed/wall/r_wall{baseturf = /turf/open/floor/plating/lava/smooth},/area/ruin/powered/snow_biodome) +"ac" = (/obj/item/stack/medical/ointment,/obj/structure/table,/obj/item/stack/medical/bruise_pack,/turf/open/floor/plating{baseturf = /turf/open/floor/plating/lava/smooth},/area/ruin/powered/snow_biodome) +"ad" = (/obj/structure/table,/obj/item/stack/medical/gauze,/obj/item/stack/medical/gauze,/turf/open/floor/plating{baseturf = /turf/open/floor/plating/lava/smooth},/area/ruin/powered/snow_biodome) +"ae" = (/obj/machinery/power/smes,/turf/open/floor/plating{baseturf = /turf/open/floor/plating/lava/smooth},/area/ruin/powered/snow_biodome) +"af" = (/turf/open/floor/plating{baseturf = /turf/open/floor/plating/lava/smooth},/area/ruin/powered/snow_biodome) +"ag" = (/obj/structure/reagent_dispensers/beerkeg,/turf/open/floor/plating{baseturf = /turf/open/floor/plating/lava/smooth},/area/ruin/powered/snow_biodome) +"ah" = (/obj/item/weapon/reagent_containers/food/drinks/mug,/turf/open/floor/plating{baseturf = /turf/open/floor/plating/lava/smooth},/area/ruin/powered/snow_biodome) +"ai" = (/obj/machinery/shower,/turf/open/floor/plating{baseturf = /turf/open/floor/plating/lava/smooth},/area/ruin/powered/snow_biodome) +"aj" = (/obj/structure/sink,/turf/open/floor/plating{baseturf = /turf/open/floor/plating/lava/smooth},/area/ruin/powered/snow_biodome) +"ak" = (/turf/open/floor/plating/asteroid/snow{baseturf = /turf/open/floor/plating/lava/smooth},/area/ruin/powered/snow_biodome) +"al" = (/obj/effect/decal/cleanable/oil,/turf/open/floor/plating{baseturf = /turf/open/floor/plating/lava/smooth},/area/ruin/powered/snow_biodome) +"am" = (/obj/machinery/door/airlock/hatch,/turf/open/floor/plating{baseturf = /turf/open/floor/plating/lava/smooth},/area/ruin/powered/snow_biodome) +"an" = (/obj/structure/toilet{dir = 8},/turf/open/floor/plating{baseturf = /turf/open/floor/plating/lava/smooth},/area/ruin/powered/snow_biodome) +"ao" = (/turf/open/floor/plating/ice,/area/ruin/powered/snow_biodome) +"ap" = (/obj/structure/flora/rock/icy,/turf/open/floor/plating/asteroid/snow{baseturf = /turf/open/floor/plating/lava/smooth},/area/ruin/powered/snow_biodome) +"aq" = (/turf/closed/wall/mineral/wood,/area/ruin/powered/snow_biodome) +"ar" = (/obj/machinery/door/airlock/wood,/turf/open/floor/plating{baseturf = /turf/open/floor/plating/lava/smooth},/area/ruin/powered/snow_biodome) +"as" = (/turf/open/floor/wood{baseturf = /turf/open/floor/plating/lava/smooth; name = "floor"},/area/ruin/powered/snow_biodome) +"at" = (/obj/structure/bed,/obj/item/weapon/bedsheet/blue,/turf/open/floor/wood{baseturf = /turf/open/floor/plating/lava/smooth; name = "floor"},/area/ruin/powered/snow_biodome) +"au" = (/obj/structure/bookcase/random,/turf/open/floor/wood{baseturf = /turf/open/floor/plating/lava/smooth; name = "floor"},/area/ruin/powered/snow_biodome) +"av" = (/obj/structure/table/wood,/turf/open/floor/wood{baseturf = /turf/open/floor/plating/lava/smooth; name = "floor"},/area/ruin/powered/snow_biodome) +"aw" = (/obj/structure/table/wood,/obj/item/weapon/reagent_containers/food/snacks/beans,/turf/open/floor/wood{baseturf = /turf/open/floor/plating/lava/smooth; name = "floor"},/area/ruin/powered/snow_biodome) +"ax" = (/obj/structure/fans,/turf/open/floor/wood{baseturf = /turf/open/floor/plating/lava/smooth; name = "floor"},/area/ruin/powered/snow_biodome) +"ay" = (/obj/structure/closet/crate/trashcart,/obj/item/trash/semki,/obj/item/trash/candy,/turf/open/floor/plating/asteroid/snow{baseturf = /turf/open/floor/plating/lava/smooth},/area/ruin/powered/snow_biodome) +"az" = (/obj/structure/flora/tree/pine,/turf/open/floor/plating/asteroid/snow{baseturf = /turf/open/floor/plating/lava/smooth},/area/ruin/powered/snow_biodome) +"aA" = (/obj/structure/chair/comfy/brown{tag = "icon-comfychair (EAST)"; icon_state = "comfychair"; dir = 4},/turf/open/floor/wood{baseturf = /turf/open/floor/plating/lava/smooth; name = "floor"},/area/ruin/powered/snow_biodome) +"aB" = (/obj/structure/flora/rock/pile/icy,/turf/open/floor/plating/asteroid/snow{baseturf = /turf/open/floor/plating/lava/smooth},/area/ruin/powered/snow_biodome) +"aC" = (/obj/structure/flora/tree/dead,/turf/open/floor/plating/asteroid/snow{baseturf = /turf/open/floor/plating/lava/smooth},/area/ruin/powered/snow_biodome) +"aD" = (/obj/machinery/door/airlock/wood,/turf/open/floor/wood{baseturf = /turf/open/floor/plating/lava/smooth; name = "floor"},/area/ruin/powered/snow_biodome) +"aE" = (/obj/structure/extinguisher_cabinet,/turf/closed/wall/mineral/wood,/area/ruin/powered/snow_biodome) +"aF" = (/obj/structure/table/wood,/obj/item/weapon/reagent_containers/food/drinks/mug/coco,/turf/open/floor/wood{baseturf = /turf/open/floor/plating/lava/smooth; name = "floor"},/area/ruin/powered/snow_biodome) +"aG" = (/obj/structure/chair/comfy/brown{tag = "icon-comfychair (WEST)"; icon_state = "comfychair"; dir = 8},/turf/open/floor/wood{baseturf = /turf/open/floor/plating/lava/smooth; name = "floor"},/area/ruin/powered/snow_biodome) +"aH" = (/mob/living/simple_animal/hostile/skeleton/eskimo,/turf/open/floor/wood{baseturf = /turf/open/floor/plating/lava/smooth; name = "floor"},/area/ruin/powered/snow_biodome) +"aI" = (/obj/structure/flora/bush,/turf/open/floor/plating/asteroid/snow{baseturf = /turf/open/floor/plating/lava/smooth},/area/ruin/powered/snow_biodome) +"aJ" = (/obj/vehicle/atv,/turf/open/floor/plating/asteroid/snow{baseturf = /turf/open/floor/plating/lava/smooth},/area/ruin/powered/snow_biodome) +"aK" = (/turf/closed/wall/mineral/wood{baseturf = /turf/open/floor/plating/lava/smooth},/area/ruin/powered/snow_biodome) +"aL" = (/obj/structure/displaycase/captain,/turf/open/floor/wood{baseturf = /turf/open/floor/plating/lava/smooth; name = "floor"},/area/ruin/powered/snow_biodome) +"aM" = (/turf/open/floor/carpet{baseturf = /turf/open/floor/plating/lava/smooth},/area/ruin/powered/snow_biodome) +"aN" = (/obj/structure/bed/dogbed,/turf/open/floor/wood{baseturf = /turf/open/floor/plating/lava/smooth; name = "floor"},/area/ruin/powered/snow_biodome) +"aO" = (/obj/machinery/door/airlock/glass_large,/obj/structure/fans/tiny,/turf/open/floor/pod/dark,/area/ruin/powered/snow_biodome) +"aP" = (/obj/structure/fans/tiny,/turf/open/floor/pod/dark,/area/ruin/powered/snow_biodome) +"aQ" = (/obj/structure/flora/grass/both,/turf/open/floor/plating/asteroid/snow{baseturf = /turf/open/floor/plating/lava/smooth},/area/ruin/powered/snow_biodome) +"aR" = (/obj/structure/flora/tree/pine/xmas,/turf/open/floor/plating/asteroid/snow{baseturf = /turf/open/floor/plating/lava/smooth},/area/ruin/powered/snow_biodome) +"aS" = (/obj/structure/rack,/obj/item/clothing/suit/hooded/wintercoat/science,/obj/item/clothing/shoes/winterboots,/obj/item/clothing/gloves/fingerless,/turf/open/floor/pod/dark,/area/ruin/powered/snow_biodome) +"aT" = (/obj/structure/grille,/obj/structure/window/fulltile,/turf/open/floor/plating{baseturf = /turf/open/floor/plating/lava/smooth},/area/ruin/powered/snow_biodome) +"aU" = (/obj/machinery/vending/coffee,/turf/open/floor/pod/dark,/area/ruin/powered/snow_biodome) +"aV" = (/obj/structure/closet/secure_closet/freezer/fridge,/turf/open/floor/pod/dark,/area/ruin/powered/snow_biodome) +"aW" = (/turf/open/floor/pod/dark,/area/ruin/powered/snow_biodome) +"aX" = (/turf/open/floor/pod/light,/area/ruin/powered/snow_biodome) +"aY" = (/obj/structure/chair/stool,/turf/open/floor/pod/dark,/area/ruin/powered/snow_biodome) +"aZ" = (/obj/machinery/door/airlock/hatch,/obj/structure/fans/tiny,/turf/open/floor/pod/dark,/area/ruin/powered/snow_biodome) +"ba" = (/obj/machinery/door/airlock/silver,/turf/open/floor/pod/dark,/area/ruin/powered/snow_biodome) +"bb" = (/obj/machinery/door/airlock/silver,/turf/open/floor/plating{baseturf = /turf/open/floor/plating/lava/smooth},/area/ruin/powered/snow_biodome) +"bc" = (/obj/structure/table,/turf/open/floor/pod/dark,/area/ruin/powered/snow_biodome) +"bd" = (/obj/structure/table,/obj/item/weapon/pen,/obj/item/weapon/paper_bin,/turf/open/floor/pod/dark,/area/ruin/powered/snow_biodome) +"be" = (/obj/structure/table,/obj/machinery/microwave,/turf/open/floor/pod/dark,/area/ruin/powered/snow_biodome) +"bf" = (/obj/effect/decal/cleanable/oil,/turf/open/floor/pod/dark,/area/ruin/powered/snow_biodome) +"bg" = (/obj/item/weapon/twohanded/required/chainsaw,/obj/structure/closet,/turf/open/floor/pod/dark,/area/ruin/powered/snow_biodome) +"bh" = (/obj/structure/filingcabinet,/turf/open/floor/pod/dark,/area/ruin/powered/snow_biodome) +"bi" = (/obj/machinery/computer/monitor,/turf/open/floor/pod/dark,/area/ruin/powered/snow_biodome) +"bj" = (/obj/item/weapon/storage/toolbox/mechanical,/turf/open/floor/pod/dark,/area/ruin/powered/snow_biodome) +"bk" = (/obj/structure/reagent_dispensers/fueltank,/turf/open/floor/pod/dark,/area/ruin/powered/snow_biodome) +"bl" = (/turf/open/floor/wood{baseturf = /turf/open/floor/plating/lava/smooth; initial_gas_mix = "TEMP=180"; name = "bridge"},/area/ruin/powered/snow_biodome) +"bm" = (/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/ruin/powered/snow_biodome) +"bn" = (/obj/item/clothing/mask/balaclava,/turf/open/floor/pod/dark,/area/ruin/powered/snow_biodome) +"bo" = (/obj/structure/table,/obj/item/weapon/storage/fancy/cigarettes/cigpack_carp,/turf/open/floor/pod/dark,/area/ruin/powered/snow_biodome) +"bp" = (/obj/structure/table,/obj/item/weapon/pen,/obj/item/weapon/paper,/turf/open/floor/pod/dark,/area/ruin/powered/snow_biodome) +"bq" = (/obj/machinery/light/built{dir = 1},/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/ruin/powered/snow_biodome) +"br" = (/obj/structure/fans/tiny,/obj/machinery/door/airlock/glass_large,/turf/open/floor/pod/dark,/area/ruin/powered/snow_biodome) (1,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -aZ -ab -ab -ab -ab -ab -ab -aa -aa -aa -aa -aa -aa -aa -aa -aa -"} -(2,1,1) = {" -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -ab -aS -aW -aW -aX -aW -aW -bh -ab -ab -ab -ab -ab -aa -aa -aa -aa -aa -aa -aa -"} -(3,1,1) = {" -aa -aa -aa -aa -ab -ab -ab -ak -ak -ak -ab -aS -aW -aW -aX -bd -aY -bi -ab -ak -ak -ak -ab -ab -ab -bm -bm -aa -aa -aa -"} -(4,1,1) = {" -aa -aa -aa -ab -ab -ak -aC -ak -ak -ak -ab -aT -aT -aT -ba -aT -aT -aT -ab -ak -ak -ak -ak -ak -ab -ab -bm -bm -aa -aa -"} -(5,1,1) = {" -aa -aa -ab -ab -ao -ao -ak -aI -ak -ak -ak -az -ak -aB -ak -ak -ak -aI -ak -ak -ak -ak -ak -ak -ak -ab -ab -bm -bm -aa -"} -(6,1,1) = {" -aa -aa -ab -ao -ao -ao -ao -ao -ak -aI -ak -ak -ak -ak -ak -ak -ak -ak -ak -aQ -ak -ak -ak -az -ak -ak -ab -bm -bm -aa -"} -(7,1,1) = {" -aa -ab -ab -ap -ak -ao -ao -ao -ao -ak -ak -ak -ak -ak -az -ak -aC -ak -ak -aI -aI -ak -ak -ak -ak -ak -ab -ab -bm -aa -"} -(8,1,1) = {" -aa -ab -ak -ak -ak -ak -ak -ao -ao -ao -ao -ak -ak -ak -ak -ak -ak -ak -ap -aI -ak -aQ -ak -ak -ak -az -ak -ab -bm -bm -"} -(9,1,1) = {" -aa -ab -ab -ab -ak -az -ak -ak -ao -ao -ao -ao -ao -ak -ak -ak -ak -ak -ak -ak -ak -aC -ak -ak -ak -ak -ak -ab -bq -bm -"} -(10,1,1) = {" -ab -ab -af -ab -ak -ak -ak -ak -ak -ak -ak -ao -ao -ao -ao -ak -aI -az -ak -ak -ak -ak -ak -aI -ak -ak -ak -ab -bm -bm -"} -(11,1,1) = {" -ab -ac -af -aq -aq -aq -aq -aq -aK -aq -ak -ao -ao -ao -ao -ao -ak -ak -bl -bl -ak -aI -ak -ak -ak -ab -ab -ab -ab -bm -"} -(12,1,1) = {" -ab -ad -af -ar -at -at -aD -at -aL -aq -ak -az -ak -ao -ao -ao -ao -ao -bl -bl -ak -ak -ak -az -ak -ab -aS -aS -ab -bm -"} -(13,1,1) = {" -ab -ae -af -aq -au -au -aq -at -at -aq -ak -ak -ak -ao -ao -ao -ao -ao -bl -bl -ao -ak -ak -ak -aI -ab -bn -aW -ab -bm -"} -(14,1,1) = {" -ab -af -al -aq -aq -aq -aE -at -at -aq -ak -ak -aC -ak -ao -ak -ao -ao -bl -bl -ao -ao -aI -ak -ak -ab -aX -aX -ab -bm -"} -(15,1,1) = {" -ab -ae -af -aq -av -at -at -aH -aM -aO -ap -ak -ak -ak -ak -ak -ak -ao -bl -bl -ao -ao -ak -ak -ak -aO -aX -aX -br -bm -"} -(16,1,1) = {" -ab -ag -ah -as -aw -aA -aA -at -aM -aP -ak -ak -aQ -ak -ak -az -ak -ak -bl -bl -ak -ao -ao -ak -ak -aP -aX -aX -aP -bm -"} -(17,1,1) = {" -ab -ah -af -aq -ax -aw -aF -at -at -aq -ak -aI -ak -ak -ak -ak -ak -ak -ak -ak -ak -ao -ao -ao -ak -ab -aX -aX -ab -bm -"} -(18,1,1) = {" -ab -ab -am -aq -av -at -aG -at -at -aq -aR -ak -ak -ak -ak -ak -ak -ak -aC -ak -ak -ak -ao -ao -ao -ab -aW -aW -ab -bm -"} -(19,1,1) = {" -ab -ai -af -aq -av -at -aH -at -aN -aq -ak -ak -ak -az -ak -ak -ak -ak -ak -ak -ak -ak -ak -ao -ao -ab -bo -bp -ab -bm -"} -(20,1,1) = {" -ab -aj -af -aq -aq -aq -aq -aq -aq -aq -ak -ak -ak -ak -ak -aI -ak -az -ak -ak -ak -ak -az -ak -ao -ab -ab -ab -ab -bm -"} -(21,1,1) = {" -ab -ab -an -ab -ay -ak -ak -ak -ak -ak -ak -ak -ak -ak -aC -ak -ak -ak -ak -ap -ak -ak -ak -ak -ak -ak -ak -ab -bm -bm -"} -(22,1,1) = {" -aa -ab -ab -ab -ak -ak -aI -ak -ap -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -aI -ak -ak -aQ -ak -ak -ak -ab -bq -bm -"} -(23,1,1) = {" -aa -ab -ak -ak -az -ak -aJ -ak -ak -ak -ak -ak -ak -az -ak -aQ -ak -aC -ak -aI -ak -az -aI -aI -ak -ak -ak -ab -bm -bm -"} -(24,1,1) = {" -aa -ab -ab -ak -ak -aB -ak -ak -aC -ak -ak -ak -ak -aI -ak -ap -ak -ak -ak -ak -ak -ak -aI -aI -ak -ak -ab -ab -bm -aa -"} -(25,1,1) = {" -aa -aa -ab -ap -ak -ak -ak -ak -ak -aQ -ak -ak -ak -aI -ak -ak -ak -ak -aQ -ak -ak -aB -ak -ak -aC -ak -ab -bm -bm -aa -"} -(26,1,1) = {" -aa -aa -ab -ab -ak -ak -az -ak -ak -ak -ak -ak -ak -ak -ak -ak -az -ak -ak -ak -ak -az -ak -ak -ak -ab -ab -bm -aa -aa -"} -(27,1,1) = {" -aa -aa -aa -ab -ab -ak -ak -ak -ak -ak -ab -aT -aT -aT -bb -aT -aT -aT -ab -ak -ak -ak -ak -ak -ab -ab -bm -bm -aa -aa -"} -(28,1,1) = {" -aa -aa -aa -aa -ab -ab -ab -ak -ak -ak -ab -aU -aW -aX -aX -aX -bf -bj -ab -ak -ak -ak -ab -ab -ab -bm -bm -aa -aa -aa -"} -(29,1,1) = {" -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -ab -aV -aW -aY -bc -be -bg -bk -ab -ab -ab -ab -ab -aa -aa -aa -aa -aa -aa -aa -"} -(30,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -ab -ab -ab -ab -ab -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa +aaaaaaaaaaaaaaaaaaababababababababababababaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaababababacadaeafaeagahabaiajababababaaaaaaaaaaaa +aaaaaaaaabababakabafafafafalafahafamafafanabakabababaaaaaaaa +aaaaaaababaoapakababaqaraqaqaqaqaqaqaqaqababakakapababaaaaaa +aaaaababaoaoakakakakaqasataqauavawauaxaqayakazakakakababaaaa +aaaaabakaoaoaoakazakaqasataqasaAavasasaqakakakaBakakakabaaaa +aaababaCakaoaoakakakaqaDaqaEasaAaFaGaHaqakaIaJakakazakababaa +aaabakakaIaoaoaoakakaqasasasaHasasasasaqakakakakakakakakabaa +aaabakakakakaoaoaoakaKaLasasaMaMasasaNaqakapakaCakakakakabaa +aaabakakakaIakaoaoakaqaqaqaqaOaPaqaqaqaqakakakakaQakakakabaa +ababababakakakaoaoakakakakakapakakaRakakakakakakakakabababab +abaSaSaTazakakakaoaoaoazakakakakaIakakakakakakakakakaTaUaVab +abaWaWaTakakakakaoaoaoakakaCakaQakakakakakakakakakakaTaWaWab +abaWaWaTaBakakakakaoaoaoaoakakakakakazakakakazaIaIakaTaXaYab +aZaXaXbaakakazakakaoaoaoaoaoakakakakakakaCakakakakakbbaXbcab +abaWbdaTakakakakakakaoaoaoakakazakakakaIakakaQapakakaTaXbeab +abaWaYaTakakaCakakaIakaoaoaoakakakakakakakakakakakazaTbfbgab +abbhbiaTaIakakakakazakaoaoaoaoakakakakazakakaCakakakaTbjbkab +ababababakakakapakakblblblblblblakaCakakakakakakaQakabababab +ababakakakaQaIaIakakblblblblblblakakakakapakaIakakakakakabaa +ababakakakakaIakakakakakaoaoaoakakakakakakaIakakakakakakabaa +aaabakakakakakaQaCakaIakakaoaoaoaoakakakakakazakaBazakakabaa +aaababakakakakakakakakakakaIakaoaoaoakazakakaIaIakakakababaa +aaaaabakakazakakakaIakazakakakakaoaoaoakakaQaIaIakakakabaaaa +aaaaababakakakakakakakakaIakakakakaoaoaoakakakakaCakababaaaa +aaaabmababakakazakakababababaOaPababababakakakakakababbmaaaa +aaaabmbmabababakakakabaSbnaXaXaXaXaWboabakakakabababbmbmaaaa +aaaaaabmbmbmabababababaSaWaXaXaXaXaWbpabababababbmbmbmaaaaaa +aaaaaaaabmbmbmbmbqbmababababbraPababababbmbqbmbmbmaaaaaaaaaa +aaaaaaaaaaaaaabmbmbmbmbmbmbmbmbmbmbmbmbmbmbmbmaaaaaaaaaaaaaa "} diff --git a/_maps/RandomRuins/LavaRuins/lavaland_surface_cultaltar.dmm b/_maps/RandomRuins/LavaRuins/lavaland_surface_cultaltar.dmm index 762e3df9db..cb50d1885d 100644 --- a/_maps/RandomRuins/LavaRuins/lavaland_surface_cultaltar.dmm +++ b/_maps/RandomRuins/LavaRuins/lavaland_surface_cultaltar.dmm @@ -3,7 +3,7 @@ /turf/template_noop, /area/template_noop) "b" = ( -/turf/open/floor/engine/cult{ +/turf/open/floor/plasteel/cult{ baseturf = /turf/open/floor/plating/asteroid/basalt/lava_land_surface; initial_gas_mix = "o2=14;n2=23;TEMP=300" }, @@ -22,7 +22,7 @@ /turf/open/floor/plating/asteroid/basalt/lava_land_surface, /area/ruin/unpowered) "f" = ( -/obj/structure/destructible/cult/pylon, +/obj/structure/cult/pylon, /turf/open/floor/plating/asteroid/basalt/lava_land_surface, /area/ruin/unpowered) "g" = ( @@ -36,14 +36,14 @@ sound = 'sound/hallucinations/turn_around1.ogg'; triggerer_only = 1 }, -/turf/open/floor/engine/cult{ +/turf/open/floor/plasteel/cult{ baseturf = /turf/open/floor/plating/asteroid/basalt/lava_land_surface; initial_gas_mix = "o2=14;n2=23;TEMP=300" }, /area/ruin/unpowered) "h" = ( /obj/effect/decal/cleanable/blood/old, -/turf/open/floor/engine/cult{ +/turf/open/floor/plasteel/cult{ baseturf = /turf/open/floor/plating/asteroid/basalt/lava_land_surface; initial_gas_mix = "o2=14;n2=23;TEMP=300" }, @@ -51,7 +51,7 @@ "i" = ( /obj/effect/decal/remains/human, /obj/effect/decal/cleanable/blood/old, -/turf/open/floor/engine/cult{ +/turf/open/floor/plasteel/cult{ baseturf = /turf/open/floor/plating/asteroid/basalt/lava_land_surface; initial_gas_mix = "o2=14;n2=23;TEMP=300" }, @@ -68,7 +68,7 @@ "k" = ( /obj/effect/decal/remains/human, /obj/item/weapon/melee/cultblade, -/turf/open/floor/engine/cult{ +/turf/open/floor/plasteel/cult{ baseturf = /turf/open/floor/plating/asteroid/basalt/lava_land_surface; initial_gas_mix = "o2=14;n2=23;TEMP=300" }, @@ -77,14 +77,14 @@ /obj/effect/decal/remains/human, /obj/item/clothing/shoes/cult, /obj/item/clothing/suit/cultrobes, -/turf/open/floor/engine/cult{ +/turf/open/floor/plasteel/cult{ baseturf = /turf/open/floor/plating/asteroid/basalt/lava_land_surface; initial_gas_mix = "o2=14;n2=23;TEMP=300" }, /area/ruin/unpowered) "m" = ( /obj/effect/decal/remains/human, -/turf/open/floor/engine/cult{ +/turf/open/floor/plasteel/cult{ baseturf = /turf/open/floor/plating/asteroid/basalt/lava_land_surface; initial_gas_mix = "o2=14;n2=23;TEMP=300" }, @@ -101,7 +101,7 @@ sound = 'sound/hallucinations/turn_around1.ogg'; triggerer_only = 1 }, -/turf/open/floor/engine/cult{ +/turf/open/floor/plasteel/cult{ baseturf = /turf/open/floor/plating/asteroid/basalt/lava_land_surface; initial_gas_mix = "o2=14;n2=23;TEMP=300" }, @@ -124,7 +124,7 @@ message = "You've made a grave mistake, haven't you?"; name = "ohfuck" }, -/turf/open/floor/engine/cult{ +/turf/open/floor/plasteel/cult{ baseturf = /turf/open/floor/plating/asteroid/basalt/lava_land_surface; initial_gas_mix = "o2=14;n2=23;TEMP=300" }, @@ -141,7 +141,7 @@ sound = 'sound/hallucinations/turn_around1.ogg'; triggerer_only = 1 }, -/turf/open/floor/engine/cult{ +/turf/open/floor/plasteel/cult{ baseturf = /turf/open/floor/plating/asteroid/basalt/lava_land_surface; initial_gas_mix = "o2=14;n2=23;TEMP=300" }, @@ -151,7 +151,7 @@ /obj/item/clothing/shoes/cult, /obj/item/clothing/suit/cultrobes, /obj/effect/decal/cleanable/blood/old, -/turf/open/floor/engine/cult{ +/turf/open/floor/plasteel/cult{ baseturf = /turf/open/floor/plating/asteroid/basalt/lava_land_surface; initial_gas_mix = "o2=14;n2=23;TEMP=300" }, @@ -168,7 +168,7 @@ sound = 'sound/hallucinations/turn_around1.ogg'; triggerer_only = 1 }, -/turf/open/floor/engine/cult{ +/turf/open/floor/plasteel/cult{ baseturf = /turf/open/floor/plating/asteroid/basalt/lava_land_surface; initial_gas_mix = "o2=14;n2=23;TEMP=300" }, diff --git a/_maps/RandomRuins/LavaRuins/lavaland_surface_envy.dmm b/_maps/RandomRuins/LavaRuins/lavaland_surface_envy.dmm index ce611c6df7..faf5d43979 100644 --- a/_maps/RandomRuins/LavaRuins/lavaland_surface_envy.dmm +++ b/_maps/RandomRuins/LavaRuins/lavaland_surface_envy.dmm @@ -18,7 +18,7 @@ desc = "This mirror has been shattered. It looks like the bad luck energies spilling from it are taking immediate effect on your surroundings!"; icon_state = "mirror_broke"; pixel_x = -28; - broken = 1 + shattered = 1 }, /obj/item/clothing/suit/hooded/bloated_human, /obj/effect/decal/cleanable/blood, @@ -31,7 +31,7 @@ desc = "Oh no, seven years of bad luck!"; icon_state = "mirror_broke"; pixel_x = 28; - broken = 1 + shattered = 1 }, /turf/open/floor/plating{ baseturf = /turf/open/floor/plating/lava/smooth; @@ -44,7 +44,7 @@ desc = "This mirror has been shattered. It looks like the bad luck energies spilling from it are taking immediate effect on your surroundings!"; icon_state = "mirror_broke"; pixel_x = -28; - broken = 1 + shattered = 1 }, /turf/open/floor/plating{ baseturf = /turf/open/floor/plating/lava/smooth @@ -71,7 +71,7 @@ /obj/structure/mirror{ icon_state = "mirror_broke"; pixel_y = 28; - broken = 1 + shattered = 1 }, /obj/item/weapon/kitchen/knife/envy, /turf/open/floor/plating{ @@ -83,7 +83,7 @@ desc = "Oh no, seven years of bad luck!"; icon_state = "mirror_broke"; pixel_x = 28; - broken = 1 + shattered = 1 }, /turf/open/floor/plating{ baseturf = /turf/open/floor/plating/lava/smooth @@ -94,7 +94,7 @@ desc = "This mirror has been shattered. It looks like the bad luck energies spilling from it are taking immediate effect on your surroundings!"; icon_state = "mirror_broke"; pixel_x = -28; - broken = 1 + shattered = 1 }, /turf/open/floor/plating{ baseturf = /turf/open/floor/plating/lava/smooth @@ -112,7 +112,7 @@ desc = "This mirror has been shattered. It looks like the bad luck energies spilling from it are taking immediate effect on your surroundings!"; icon_state = "mirror_broke"; pixel_x = -28; - broken = 1 + shattered = 1 }, /turf/open/floor/plating{ baseturf = /turf/open/floor/plating/lava/smooth; diff --git a/_maps/RandomRuins/LavaRuins/lavaland_surface_fountain_hall.dmm b/_maps/RandomRuins/LavaRuins/lavaland_surface_fountain_hall.dmm index 918b0e894b..b367a068f1 100644 --- a/_maps/RandomRuins/LavaRuins/lavaland_surface_fountain_hall.dmm +++ b/_maps/RandomRuins/LavaRuins/lavaland_surface_fountain_hall.dmm @@ -8,19 +8,19 @@ }, /area/ruin/unpowered) "c" = ( -/obj/structure/healingfountain, +/obj/structure/divine/healingfountain/anyone, /turf/open/floor/engine/cult{ baseturf = /turf/open/floor/plating/lava/smooth }, /area/ruin/unpowered) "d" = ( -/obj/structure/fluff/divine/conduit, +/obj/structure/divine/conduit, /turf/open/floor/engine/cult{ baseturf = /turf/open/floor/plating/lava/smooth }, /area/ruin/unpowered) "e" = ( -/obj/structure/sacrificealtar, +/obj/structure/divine/sacrificealtar, /turf/open/floor/engine/cult{ baseturf = /turf/open/floor/plating/lava/smooth }, diff --git a/_maps/RandomRuins/LavaRuins/lavaland_surface_golem_ship.dmm b/_maps/RandomRuins/LavaRuins/lavaland_surface_golem_ship.dmm index d33bf338cb..8928ee57e2 100644 --- a/_maps/RandomRuins/LavaRuins/lavaland_surface_golem_ship.dmm +++ b/_maps/RandomRuins/LavaRuins/lavaland_surface_golem_ship.dmm @@ -3,7 +3,7 @@ /turf/template_noop, /area/template_noop) "b" = ( -/turf/closed/wall/mineral/titanium/nodiagonal{ +/turf/closed/wall/shuttle/smooth/nodiagonal{ baseturf = /turf/open/floor/plating/lava/smooth }, /area/ruin/powered/golem_ship) @@ -75,43 +75,43 @@ }, /area/ruin/powered/golem_ship) "j" = ( -/obj/machinery/door/airlock/titanium, -/turf/open/floor/mineral/titanium/purple{ +/obj/machinery/door/airlock/shuttle, +/turf/open/floor/plasteel/shuttle/purple{ baseturf = /turf/open/floor/plating/lava/smooth }, /area/ruin/powered/golem_ship) "k" = ( /obj/machinery/computer/arcade/battle, -/turf/open/floor/mineral/titanium/purple{ +/turf/open/floor/plasteel/shuttle/purple{ baseturf = /turf/open/floor/plating/lava/smooth }, /area/ruin/powered/golem_ship) "l" = ( -/turf/open/floor/mineral/titanium/purple{ +/turf/open/floor/plasteel/shuttle/purple{ baseturf = /turf/open/floor/plating/lava/smooth }, /area/ruin/powered/golem_ship) "m" = ( /obj/effect/mob_spawn/human/golem/adamantine, -/turf/open/floor/mineral/titanium/purple{ +/turf/open/floor/plasteel/shuttle/purple{ baseturf = /turf/open/floor/plating/lava/smooth }, /area/ruin/powered/golem_ship) "n" = ( /obj/machinery/mineral/equipment_vendor/golem, -/turf/open/floor/mineral/titanium/purple{ +/turf/open/floor/plasteel/shuttle/purple{ baseturf = /turf/open/floor/plating/lava/smooth }, /area/ruin/powered/golem_ship) "o" = ( /obj/item/weapon/resonator, -/turf/open/floor/mineral/titanium/purple{ +/turf/open/floor/plasteel/shuttle/purple{ baseturf = /turf/open/floor/plating/lava/smooth }, /area/ruin/powered/golem_ship) "p" = ( /obj/machinery/mineral/ore_redemption, -/turf/open/floor/mineral/titanium/purple{ +/turf/open/floor/plasteel/shuttle/purple{ baseturf = /turf/open/floor/plating/lava/smooth }, /area/ruin/powered/golem_ship) @@ -122,19 +122,19 @@ name = "shrine of the liberator"; pixel_x = 0 }, -/turf/open/floor/mineral/titanium/purple{ +/turf/open/floor/plasteel/shuttle/purple{ baseturf = /turf/open/floor/plating/lava/smooth }, /area/ruin/powered/golem_ship) "r" = ( /obj/machinery/computer/shuttle, -/turf/open/floor/mineral/titanium/purple{ +/turf/open/floor/plasteel/shuttle/purple{ baseturf = /turf/open/floor/plating/lava/smooth }, /area/ruin/powered/golem_ship) "s" = ( /obj/machinery/bluespace_beacon, -/turf/open/floor/mineral/titanium/purple{ +/turf/open/floor/plasteel/shuttle/purple{ baseturf = /turf/open/floor/plating/lava/smooth }, /area/ruin/powered/golem_ship) @@ -142,7 +142,7 @@ /obj/structure/extinguisher_cabinet{ pixel_y = 30 }, -/turf/open/floor/mineral/titanium/purple{ +/turf/open/floor/plasteel/shuttle/purple{ baseturf = /turf/open/floor/plating/lava/smooth }, /area/ruin/powered/golem_ship) @@ -165,32 +165,32 @@ name = "shrine of the liberator"; pixel_x = 0 }, -/turf/open/floor/mineral/titanium/purple{ +/turf/open/floor/plasteel/shuttle/purple{ baseturf = /turf/open/floor/plating/lava/smooth }, /area/ruin/powered/golem_ship) "v" = ( /obj/item/weapon/resonator/upgraded, -/turf/open/floor/mineral/titanium/purple{ +/turf/open/floor/plasteel/shuttle/purple{ baseturf = /turf/open/floor/plating/lava/smooth }, /area/ruin/powered/golem_ship) "w" = ( /obj/machinery/autolathe, -/turf/open/floor/mineral/titanium/purple{ +/turf/open/floor/plasteel/shuttle/purple{ baseturf = /turf/open/floor/plating/lava/smooth }, /area/ruin/powered/golem_ship) "x" = ( /obj/structure/table/wood, /obj/machinery/reagentgrinder, -/turf/open/floor/mineral/titanium/purple{ +/turf/open/floor/plasteel/shuttle/purple{ baseturf = /turf/open/floor/plating/lava/smooth }, /area/ruin/powered/golem_ship) "y" = ( /obj/machinery/computer/arcade/orion_trail, -/turf/open/floor/mineral/titanium/purple{ +/turf/open/floor/plasteel/shuttle/purple{ baseturf = /turf/open/floor/plating/lava/smooth }, /area/ruin/powered/golem_ship) @@ -198,7 +198,7 @@ /obj/structure/extinguisher_cabinet{ pixel_y = -30 }, -/turf/open/floor/mineral/titanium/purple{ +/turf/open/floor/plasteel/shuttle/purple{ baseturf = /turf/open/floor/plating/lava/smooth }, /area/ruin/powered/golem_ship) @@ -209,7 +209,7 @@ }, /obj/item/weapon/storage/firstaid/fire, /obj/item/weapon/storage/firstaid/fire, -/turf/open/floor/mineral/titanium/purple{ +/turf/open/floor/plasteel/shuttle/purple{ baseturf = /turf/open/floor/plating/lava/smooth }, /area/ruin/powered/golem_ship) @@ -217,7 +217,7 @@ /obj/item/weapon/storage/firstaid/fire, /obj/structure/table/wood, /obj/item/weapon/storage/firstaid/fire, -/turf/open/floor/mineral/titanium/purple{ +/turf/open/floor/plasteel/shuttle/purple{ baseturf = /turf/open/floor/plating/lava/smooth }, /area/ruin/powered/golem_ship) @@ -229,7 +229,7 @@ desc = "Use to build new structures in the wastes."; name = "land claim" }, -/turf/open/floor/mineral/titanium/purple{ +/turf/open/floor/plasteel/shuttle/purple{ baseturf = /turf/open/floor/plating/lava/smooth }, /area/ruin/powered/golem_ship) @@ -238,7 +238,7 @@ /obj/structure/table/wood, /obj/item/weapon/storage/firstaid/brute, /obj/item/weapon/disk/design_disk/golem_shell, -/turf/open/floor/mineral/titanium/purple{ +/turf/open/floor/plasteel/shuttle/purple{ baseturf = /turf/open/floor/plating/lava/smooth }, /area/ruin/powered/golem_ship) @@ -254,16 +254,6 @@ baseturf = /turf/open/floor/plating/lava/smooth }, /area/ruin/powered/golem_ship) -"G" = ( -/turf/closed/wall/mineral/titanium, -/area/ruin/powered/golem_ship) -"H" = ( -/obj/machinery/door/airlock/titanium, -/obj/structure/fans/tiny, -/turf/open/floor/mineral/titanium/purple{ - baseturf = /turf/open/floor/plating/lava/smooth - }, -/area/ruin/powered/golem_ship) (1,1,1) = {" a @@ -299,7 +289,7 @@ a b q u -G +b a a a @@ -321,7 +311,7 @@ b b r l -G +b b b b @@ -387,7 +377,7 @@ l b l l -G +b l l b @@ -409,7 +399,7 @@ l b l l -G +b l l j @@ -431,7 +421,7 @@ l b l l -G +b l l j @@ -453,7 +443,7 @@ o b l l -G +b o m b @@ -475,7 +465,7 @@ o b l l -G +b o m b @@ -497,7 +487,7 @@ j b j j -G +b j b b @@ -693,8 +683,8 @@ b i i b -H -H +j +j b i i diff --git a/_maps/RandomRuins/LavaRuins/lavaland_surface_greed.dmm b/_maps/RandomRuins/LavaRuins/lavaland_surface_greed.dmm index 2c4442c4b6..8a69cfab7e 100644 --- a/_maps/RandomRuins/LavaRuins/lavaland_surface_greed.dmm +++ b/_maps/RandomRuins/LavaRuins/lavaland_surface_greed.dmm @@ -15,7 +15,7 @@ /area/ruin/powered) "e" = ( /obj/structure/table/wood/poker, -/obj/item/weapon/gun/ballistic/revolver/russian/soul, +/obj/item/weapon/gun/projectile/revolver/russian/soul, /turf/open/floor/carpet{ baseturf = /turf/open/floor/plating/lava/smooth; icon_state = "carpetsymbol" diff --git a/_maps/RandomRuins/LavaRuins/lavaland_surface_hermit.dmm b/_maps/RandomRuins/LavaRuins/lavaland_surface_hermit.dmm index b3c58795ca..7a46f0c7c8 100644 --- a/_maps/RandomRuins/LavaRuins/lavaland_surface_hermit.dmm +++ b/_maps/RandomRuins/LavaRuins/lavaland_surface_hermit.dmm @@ -1,526 +1,56 @@ -//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE -"a" = ( -/turf/closed/mineral/volcanic/lava_land_surface, -/area/lavaland/surface/outdoors) -"b" = ( -/turf/closed/mineral/volcanic/lava_land_surface, -/area/ruin/powered) -"c" = ( -/turf/closed/wall/mineral/iron{ - baseturf = /turf/open/floor/plating/asteroid/basalt/lava_land_surface - }, -/area/ruin/powered) -"d" = ( -/obj/item/clothing/head/helmet/space/orange, -/obj/item/clothing/mask/breath, -/turf/open/floor/plating/asteroid/basalt, -/area/ruin/powered) -"e" = ( -/obj/item/clothing/suit/space/orange, -/turf/open/floor/plating/asteroid/basalt, -/area/ruin/powered) -"f" = ( -/turf/open/floor/plating/asteroid/basalt, -/area/ruin/powered) -"g" = ( -/turf/open/floor/plating/asteroid{ - baseturf = /turf/open/floor/plating/asteroid/basalt; - name = "dirt" - }, -/area/ruin/powered) -"h" = ( -/obj/item/weapon/shovel, -/turf/open/floor/plating/asteroid{ - baseturf = /turf/open/floor/plating/asteroid/basalt; - name = "dirt" - }, -/area/ruin/powered) -"i" = ( -/obj/item/weapon/reagent_containers/glass/bucket, -/turf/open/floor/plating/asteroid{ - baseturf = /turf/open/floor/plating/asteroid/basalt; - name = "dirt" - }, -/area/ruin/powered) -"j" = ( -/obj/structure/sink/puddle, -/turf/open/floor/plating/asteroid{ - baseturf = /turf/open/floor/plating/asteroid/basalt; - name = "dirt" - }, -/area/ruin/powered) -"k" = ( -/obj/structure/glowshroom/single, -/turf/open/floor/plating/asteroid{ - baseturf = /turf/open/floor/plating/asteroid/basalt; - name = "dirt" - }, -/area/ruin/powered) -"l" = ( -/obj/item/weapon/storage/toolbox/emergency, -/turf/open/floor/plating/asteroid{ - baseturf = /turf/open/floor/plating/asteroid/basalt; - name = "dirt" - }, -/area/ruin/powered) -"m" = ( -/obj/structure/rack, -/obj/item/seeds/reishi, -/obj/item/seeds/plump, -/obj/item/seeds/plump, -/obj/item/weapon/reagent_containers/food/snacks/grown/mushroom/glowshroom, -/turf/open/floor/plating/asteroid/basalt, -/area/ruin/powered) -"n" = ( -/obj/machinery/hydroponics/soil, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/asteroid/basalt/lava_land_surface - }, -/area/ruin/powered) -"o" = ( -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/asteroid/basalt/lava_land_surface - }, -/area/ruin/powered) -"p" = ( -/obj/structure/rack, -/obj/item/weapon/storage/bag/ore, -/obj/item/weapon/storage/firstaid/regular, -/turf/open/floor/plating/asteroid/basalt, -/area/ruin/powered) -"q" = ( -/obj/structure/glowshroom/single, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/asteroid/basalt/lava_land_surface - }, -/area/ruin/powered) -"r" = ( -/obj/structure/rack, -/obj/item/weapon/pickaxe/emergency, -/obj/item/weapon/tank/internals/oxygen, -/turf/open/floor/plating/asteroid/basalt, -/area/ruin/powered) -"s" = ( -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/lavaland/surface/outdoors) -"t" = ( -/turf/closed/wall/shuttle/survival/pod{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/ruin/powered) -"u" = ( -/obj/structure/bed/pod, -/obj/item/weapon/bedsheet/black, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/asteroid/basalt/lava_land_surface - }, -/area/ruin/powered) -"v" = ( -/obj/structure/fans, -/turf/open/floor/pod/dark{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/ruin/powered) -"w" = ( -/obj/machinery/smartfridge/survival_pod, -/turf/open/floor/pod/dark{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/ruin/powered) -"x" = ( -/obj/effect/mob_spawn/human/hermit, -/turf/open/floor/pod/dark{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/ruin/powered) -"y" = ( -/turf/open/floor/pod/dark{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/ruin/powered) -"z" = ( -/obj/machinery/light/small{ - dir = 4 - }, -/obj/structure/tubes, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/asteroid/basalt/lava_land_surface - }, -/area/ruin/powered) -"A" = ( -/obj/structure/table, -/obj/item/weapon/kitchen/knife/combat/survival, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/asteroid/basalt/lava_land_surface - }, -/area/ruin/powered) -"B" = ( -/obj/structure/table/survival_pod, -/turf/open/floor/pod/dark{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/ruin/powered) -"C" = ( -/obj/structure/tubes, -/obj/item/weapon/crowbar, -/obj/effect/decal/cleanable/blood/drip, -/turf/open/floor/pod/dark{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/ruin/powered) -"D" = ( -/obj/effect/decal/cleanable/blood/footprints{ - tag = "icon-blood1 (NORTH)"; - icon_state = "blood1"; - dir = 1 - }, -/obj/machinery/door/airlock/survival_pod, -/obj/structure/fans/tiny, -/turf/open/floor/pod/dark{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/ruin/powered) -"E" = ( -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/asteroid/basalt/lava_land_surface; - initial_gas_mix = "o2=14;n2=23;TEMP=300" - }, -/obj/structure/shuttle/engine/propulsion/burst{ - dir = 4 - }, -/turf/closed/wall/mineral/titanium/interior{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/ruin/powered) -"F" = ( -/turf/closed/wall/mineral/titanium{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/ruin/powered) -"G" = ( -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/turf/closed/wall/mineral/titanium/interior{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/ruin/powered) -"H" = ( -/obj/machinery/door/airlock/titanium{ - name = "Escape Pod Airlock" - }, -/turf/open/floor/mineral/titanium/blue{ - baseturf = /turf/open/floor/plating/lava/smooth - }, -/area/ruin/powered) -"I" = ( -/obj/structure/chair{ - dir = 4 - }, -/turf/open/floor/mineral/titanium/blue{ - baseturf = /turf/open/floor/plating/lava/smooth - }, -/area/ruin/powered) -"J" = ( -/obj/structure/grille, -/obj/structure/window/shuttle, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/asteroid/basalt/lava_land_surface; - initial_gas_mix = "o2=14;n2=23;TEMP=300" - }, -/area/ruin/powered) -"K" = ( -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/turf/closed/wall/shuttle{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; - dir = 2; - icon_state = "swall_f9" - }, -/area/ruin/powered) +"a" = (/turf/closed/mineral/volcanic/lava_land_surface,/area/lavaland/surface/outdoors) +"b" = (/turf/closed/mineral/volcanic/lava_land_surface,/area/ruin/powered) +"c" = (/turf/closed/wall/mineral/iron{baseturf = /turf/open/floor/plating/asteroid/basalt/lava_land_surface},/area/ruin/powered) +"d" = (/obj/item/clothing/head/helmet/space/orange,/obj/item/clothing/mask/breath,/turf/open/floor/plating/asteroid/basalt,/area/ruin/powered) +"e" = (/obj/item/clothing/suit/space/orange,/turf/open/floor/plating/asteroid/basalt,/area/ruin/powered) +"f" = (/turf/open/floor/plating/asteroid/basalt,/area/ruin/powered) +"g" = (/turf/open/floor/plating/asteroid{baseturf = /turf/open/floor/plating/asteroid/basalt; name = "dirt"},/area/ruin/powered) +"h" = (/obj/item/weapon/shovel,/turf/open/floor/plating/asteroid{baseturf = /turf/open/floor/plating/asteroid/basalt; name = "dirt"},/area/ruin/powered) +"i" = (/obj/item/weapon/reagent_containers/glass/bucket,/turf/open/floor/plating/asteroid{baseturf = /turf/open/floor/plating/asteroid/basalt; name = "dirt"},/area/ruin/powered) +"j" = (/obj/structure/sink/puddle,/turf/open/floor/plating/asteroid{baseturf = /turf/open/floor/plating/asteroid/basalt; name = "dirt"},/area/ruin/powered) +"k" = (/obj/effect/glowshroom/single,/turf/open/floor/plating/asteroid{baseturf = /turf/open/floor/plating/asteroid/basalt; name = "dirt"},/area/ruin/powered) +"l" = (/obj/item/weapon/storage/toolbox/emergency,/turf/open/floor/plating/asteroid{baseturf = /turf/open/floor/plating/asteroid/basalt; name = "dirt"},/area/ruin/powered) +"m" = (/obj/structure/rack,/obj/item/seeds/reishi,/obj/item/seeds/plump,/obj/item/seeds/plump,/obj/item/weapon/reagent_containers/food/snacks/grown/mushroom/glowshroom,/turf/open/floor/plating/asteroid/basalt,/area/ruin/powered) +"n" = (/obj/machinery/hydroponics/soil,/turf/open/floor/plating{baseturf = /turf/open/floor/plating/asteroid/basalt/lava_land_surface},/area/ruin/powered) +"o" = (/turf/open/floor/plating{baseturf = /turf/open/floor/plating/asteroid/basalt/lava_land_surface},/area/ruin/powered) +"p" = (/obj/structure/rack,/obj/item/weapon/storage/bag/ore,/obj/item/weapon/storage/firstaid/regular,/turf/open/floor/plating/asteroid/basalt,/area/ruin/powered) +"q" = (/obj/effect/glowshroom/single,/turf/open/floor/plating{baseturf = /turf/open/floor/plating/asteroid/basalt/lava_land_surface},/area/ruin/powered) +"r" = (/obj/structure/rack,/obj/item/weapon/pickaxe/emergency,/obj/item/weapon/tank/internals/oxygen,/turf/open/floor/plating/asteroid/basalt,/area/ruin/powered) +"s" = (/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) +"t" = (/turf/closed/wall/shuttle/survival/pod{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/ruin/powered) +"u" = (/obj/structure/bed/pod,/obj/item/weapon/bedsheet/black,/turf/open/floor/plating{baseturf = /turf/open/floor/plating/asteroid/basalt/lava_land_surface},/area/ruin/powered) +"v" = (/obj/structure/fans,/turf/open/floor/pod/dark{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/ruin/powered) +"w" = (/obj/machinery/smartfridge/survival_pod,/turf/open/floor/pod/dark{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/ruin/powered) +"x" = (/obj/effect/mob_spawn/human/hermit,/turf/open/floor/pod/dark{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/ruin/powered) +"y" = (/turf/open/floor/pod/dark{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/ruin/powered) +"z" = (/obj/machinery/light/small{dir = 4},/obj/structure/tubes,/turf/open/floor/plating{baseturf = /turf/open/floor/plating/asteroid/basalt/lava_land_surface},/area/ruin/powered) +"A" = (/obj/structure/table,/obj/item/weapon/kitchen/knife/combat/survival,/turf/open/floor/plating{baseturf = /turf/open/floor/plating/asteroid/basalt/lava_land_surface},/area/ruin/powered) +"B" = (/obj/structure/table/survival_pod,/obj/item/weapon/storage/bag/plants/portaseeder,/turf/open/floor/pod/dark{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/ruin/powered) +"C" = (/obj/structure/tubes,/obj/item/weapon/crowbar,/obj/effect/decal/cleanable/blood/drip,/turf/open/floor/pod/dark{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/ruin/powered) +"D" = (/obj/effect/decal/cleanable/blood/footprints{tag = "icon-blood1 (NORTH)"; icon_state = "blood1"; dir = 1},/obj/machinery/door/airlock/survival_pod,/obj/structure/fans/tiny,/turf/open/floor/pod/dark{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/ruin/powered) +"E" = (/obj/structure/shuttle/engine/propulsion/burst{dir = 4},/turf/open/floor/plating{baseturf = /turf/open/floor/plating/asteroid/basalt/lava_land_surface; initial_gas_mix = "o2=14;n2=23;TEMP=300"},/area/ruin/powered) +"F" = (/turf/closed/wall/shuttle{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; dir = 2; icon_state = "swall12"},/area/ruin/powered) +"G" = (/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/turf/closed/wall/shuttle{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; dir = 2; icon_state = "swall_f10"; layer = 2},/area/ruin/powered) +"H" = (/obj/machinery/door/airlock/shuttle{name = "Escape Pod Airlock"},/turf/open/floor/plasteel/shuttle,/area/ruin/powered) +"I" = (/obj/structure/chair{dir = 4},/turf/open/floor/plasteel/shuttle{baseturf = /turf/open/floor/plating/asteroid/basalt},/area/ruin/powered) +"J" = (/obj/structure/grille,/obj/structure/window/shuttle,/turf/open/floor/plating{baseturf = /turf/open/floor/plating/asteroid/basalt/lava_land_surface; initial_gas_mix = "o2=14;n2=23;TEMP=300"},/area/ruin/powered) +"K" = (/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/turf/closed/wall/shuttle{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; dir = 2; icon_state = "swall_f9"},/area/ruin/powered) (1,1,1) = {" -a -a -a -a -a -a -a -a -s -s -s -s -s -s -s -s -"} -(2,1,1) = {" -a -a -a -a -a -a -a -a -a -a -s -s -s -s -s -s -"} -(3,1,1) = {" -a -a -a -a -a -a -a -a -a -a -s -s -s -s -s -s -"} -(4,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -s -s -s -s -s -"} -(5,1,1) = {" -a -a -a -a -a -b -c -b -t -t -t -t -t -s -s -s -"} -(6,1,1) = {" -a -a -a -a -b -b -n -n -t -v -x -B -t -s -s -s -"} -(7,1,1) = {" -a -a -a -b -b -m -o -o -t -w -y -y -D -s -s -s -"} -(8,1,1) = {" -a -b -b -b -c -f -o -q -o -o -z -C -t -s -s -s -"} -(9,1,1) = {" -b -b -f -i -g -f -f -o -o -o -t -t -t -s -s -s -"} -(10,1,1) = {" -b -d -g -j -g -g -f -f -u -o -A -b -a -s -s -s -"} -(11,1,1) = {" -c -e -h -g -l -c -p -r -c -c -c -b -a -a -s -s -"} -(12,1,1) = {" -b -b -f -k -f -b -b -b -b -a -a -a -a -E -H -E -"} -(13,1,1) = {" -a -b -b -b -b -b -a -a -a -a -a -a -a -F -I -F -"} -(14,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -F -I -F -"} -(15,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -G -J -G -"} -(16,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a +aaaaaaaabbcbaaaa +aaaaaaabbdebbaaa +aaaaaaabfghfbaaa +aaaaaabbijgkbaaa +aaaaabbcgglfbaaa +aaaabbmffgcbbaaa +aaaacnooffpbaaaa +aaaabnoqofrbaaaa +saaatttooucbaaaa +saaatvwooocaaaaa +sssatxyztAcaaaaa +sssstByCtbbaaaaa +ssssttDttaaaaaaa +ssssssssssaEFFGa +sssssssssssHIIJa +sssssssssssEFFKa "} diff --git a/_maps/RandomRuins/LavaRuins/lavaland_surface_hierophant.dmm b/_maps/RandomRuins/LavaRuins/lavaland_surface_hierophant.dmm deleted file mode 100644 index 4426c66cab..0000000000 --- a/_maps/RandomRuins/LavaRuins/lavaland_surface_hierophant.dmm +++ /dev/null @@ -1,64 +0,0 @@ -"a" = (/turf/closed/indestructible/riveted/hierophant,/area/ruin/unpowered/hierophant) -"b" = (/obj/effect/decal/cleanable/blood/tracks,/turf/open/indestructible/hierophant,/area/ruin/unpowered/hierophant) -"c" = (/obj/effect/decal/cleanable/cobweb,/turf/open/indestructible/hierophant,/area/ruin/unpowered/hierophant) -"d" = (/turf/open/indestructible/hierophant,/area/ruin/unpowered/hierophant) -"e" = (/obj/effect/gibspawner/human,/turf/open/indestructible/hierophant,/area/ruin/unpowered/hierophant) -"f" = (/obj/effect/decal/cleanable/blood/gibs/limb,/obj/effect/decal/cleanable/blood,/turf/open/indestructible/hierophant,/area/ruin/unpowered/hierophant) -"g" = (/obj/effect/light_emitter{set_cap = 3; set_luminosity = 7},/turf/open/indestructible/hierophant,/area/ruin/unpowered/hierophant) -"h" = (/obj/effect/decal/cleanable/blood/tracks{tag = "icon-tracks (EAST)"; icon_state = "tracks"; dir = 4},/turf/open/indestructible/hierophant,/area/ruin/unpowered/hierophant) -"i" = (/obj/effect/decal/cleanable/blood/old,/obj/effect/decal/cleanable/blood/tracks{tag = "icon-tracks (EAST)"; icon_state = "tracks"; dir = 4},/turf/open/indestructible/hierophant,/area/ruin/unpowered/hierophant) -"j" = (/obj/effect/decal/cleanable/blood/old,/obj/effect/decal/remains/human,/obj/effect/light_emitter{set_cap = 3; set_luminosity = 5},/turf/open/indestructible/hierophant,/area/ruin/unpowered/hierophant) -"k" = (/obj/effect/decal/cleanable/blood/tracks{tag = "icon-tracks (SOUTHWEST)"; icon_state = "tracks"; dir = 10},/obj/effect/decal/cleanable/blood,/turf/open/indestructible/hierophant,/area/ruin/unpowered/hierophant) -"l" = (/obj/effect/light_emitter{set_cap = 3; set_luminosity = 5},/turf/open/indestructible/hierophant,/area/ruin/unpowered/hierophant) -"m" = (/obj/effect/gibspawner/generic,/turf/open/indestructible/hierophant,/area/ruin/unpowered/hierophant) -"n" = (/obj/effect/decal/cleanable/blood,/turf/open/indestructible/hierophant,/area/ruin/unpowered/hierophant) -"o" = (/obj/effect/decal/cleanable/blood/tracks{tag = "icon-tracks (NORTHEAST)"; icon_state = "tracks"; dir = 5},/turf/open/indestructible/hierophant,/area/ruin/unpowered/hierophant) -"p" = (/obj/effect/light_emitter,/turf/open/indestructible/hierophant,/area/ruin/unpowered/hierophant) -"q" = (/obj/effect/decal/cleanable/blood/old,/turf/open/indestructible/hierophant,/area/ruin/unpowered/hierophant) -"r" = (/obj/effect/decal/cleanable/blood/tracks{tag = "icon-tracks (NORTHWEST)"; icon_state = "tracks"; dir = 9},/turf/open/indestructible/hierophant,/area/ruin/unpowered/hierophant) -"s" = (/obj/effect/decal/cleanable/blood/gibs/limb,/turf/open/indestructible/hierophant,/area/ruin/unpowered/hierophant) -"t" = (/obj/effect/decal/cleanable/ash,/turf/open/indestructible/hierophant,/area/ruin/unpowered/hierophant) -"u" = (/obj/effect/decal/cleanable/blood/tracks{tag = "icon-tracks (SOUTHWEST)"; icon_state = "tracks"; dir = 10},/turf/open/indestructible/hierophant,/area/ruin/unpowered/hierophant) -"v" = (/obj/effect/decal/remains/human,/obj/effect/decal/cleanable/blood,/obj/effect/decal/cleanable/blood/tracks{tag = "icon-tracks (NORTHEAST)"; icon_state = "tracks"; dir = 5},/turf/open/indestructible/hierophant,/area/ruin/unpowered/hierophant) -"w" = (/obj/effect/gibspawner/human,/obj/effect/decal/cleanable/blood/tracks{tag = "icon-tracks (SOUTHEAST)"; icon_state = "tracks"; dir = 6},/turf/open/indestructible/hierophant,/area/ruin/unpowered/hierophant) -"x" = (/obj/effect/decal/cleanable/blood/tracks{tag = "icon-tracks (WEST)"; icon_state = "tracks"; dir = 8},/turf/open/indestructible/hierophant,/area/ruin/unpowered/hierophant) -"y" = (/obj/effect/decal/cleanable/blood/tracks{tag = "icon-tracks (WEST)"; icon_state = "tracks"; dir = 8},/obj/effect/light_emitter{set_cap = 3; set_luminosity = 7},/turf/open/indestructible/hierophant,/area/ruin/unpowered/hierophant) -"z" = (/obj/effect/decal/cleanable/blood/tracks{tag = "icon-tracks (NORTHWEST)"; icon_state = "tracks"; dir = 9},/obj/effect/decal/cleanable/blood,/turf/open/indestructible/hierophant,/area/ruin/unpowered/hierophant) -"A" = (/obj/effect/decal/cleanable/blood/tracks{tag = "icon-tracks (SOUTHEAST)"; icon_state = "tracks"; dir = 6},/turf/open/indestructible/hierophant,/area/ruin/unpowered/hierophant) -"B" = (/mob/living/simple_animal/hostile/megafauna/hierophant,/turf/open/indestructible/hierophant,/area/ruin/unpowered/hierophant) -"C" = (/obj/effect/decal/cleanable/blood,/obj/effect/decal/cleanable/blood/tracks{tag = "icon-tracks (WEST)"; icon_state = "tracks"; dir = 8},/turf/open/indestructible/hierophant,/area/ruin/unpowered/hierophant) -"D" = (/obj/effect/decal/remains/human,/obj/effect/decal/cleanable/blood,/turf/open/indestructible/hierophant,/area/ruin/unpowered/hierophant) -"E" = (/obj/effect/decal/cleanable/blood/gibs/up,/turf/open/indestructible/hierophant,/area/ruin/unpowered/hierophant) -"F" = (/obj/effect/decal/cleanable/blood/old,/obj/effect/decal/remains/human,/turf/open/indestructible/hierophant,/area/ruin/unpowered/hierophant) -"G" = (/obj/effect/decal/cleanable/blood/gibs/core,/turf/open/indestructible/hierophant,/area/ruin/unpowered/hierophant) -"H" = (/obj/effect/decal/cleanable/blood,/obj/effect/decal/cleanable/blood/tracks{tag = "icon-tracks (SOUTHWEST)"; icon_state = "tracks"; dir = 10},/turf/open/indestructible/hierophant,/area/ruin/unpowered/hierophant) -"I" = (/obj/effect/gibspawner/human,/obj/effect/light_emitter{set_cap = 3; set_luminosity = 5},/turf/open/indestructible/hierophant,/area/ruin/unpowered/hierophant) -"J" = (/obj/effect/decal/cleanable/blood/gibs/down,/turf/open/indestructible/hierophant,/area/ruin/unpowered/hierophant) - -(1,1,1) = {" -aaaaaaaaaaaabaaaaaaaaaaaa -acdddddddddddddddddddddda -adeddfddddddgdddhhhdiddda -addjddddddddkhhddddddldda -adddadddaaaaaaaaadddaddda -addddmhdhddddddddddmddnda -adddddgdddddddddddgddodda -addddddddkdopddfdddbdddda -adqdadddddadddaddddbaddda -adddadddddrdddddddddaddda -adstadddadudhhdvadhwabdda -adddadrxxmddddduddddaddda -xxyoazApddddBddddpddadyxC -addbabddddddddtdddddaddda -addbabddadDdEdddadddafdda -adddabddddddndddddqdaddda -adddabddddadddadddddadnda -adqedbddsdddpddddddddddda -addddAgddddeddddddgFdddGa -addddmdddddHdehddxdedddda -adddadddaaaaaaaaadddaddda -addlddddddddrdddddAddIdda -adddddJdddddgdddqddddddda -adnddddddFddbdddddddnddda -aaaaaaaaaaaabaaaaaaaaaaaa -"} diff --git a/_maps/RandomRuins/LavaRuins/lavaland_surface_pizzaparty.dmm b/_maps/RandomRuins/LavaRuins/lavaland_surface_pizzaparty.dmm index 275c7686d4..3936fe3ad6 100644 --- a/_maps/RandomRuins/LavaRuins/lavaland_surface_pizzaparty.dmm +++ b/_maps/RandomRuins/LavaRuins/lavaland_surface_pizzaparty.dmm @@ -88,7 +88,7 @@ name = "pizza spawner" }, /obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/cobweb/cobweb2, +/obj/effect/decal/cleanable/cobweb2, /turf/open/floor/wood{ baseturf = /turf/open/floor/plating/asteroid/basalt/lava_land_surface; initial_gas_mix = "o2=14;n2=23;TEMP=300" @@ -103,7 +103,7 @@ }, /area/ruin/unpowered) "n" = ( -/obj/structure/glowshroom/single, +/obj/effect/glowshroom/single, /obj/effect/decal/cleanable/dirt, /turf/open/floor/wood{ baseturf = /turf/open/floor/plating/asteroid/basalt/lava_land_surface; @@ -161,7 +161,7 @@ }, /area/ruin/unpowered) "u" = ( -/obj/structure/glowshroom/single, +/obj/effect/glowshroom/single, /turf/open/floor/wood{ baseturf = /turf/open/floor/plating/asteroid/basalt/lava_land_surface; initial_gas_mix = "o2=14;n2=23;TEMP=300" @@ -202,7 +202,7 @@ /area/ruin/unpowered) "z" = ( /obj/structure/table/wood, -/obj/structure/glowshroom/single, +/obj/effect/glowshroom/single, /obj/item/weapon/a_gift, /turf/open/floor/wood{ baseturf = /turf/open/floor/plating/asteroid/basalt/lava_land_surface; @@ -283,7 +283,7 @@ }, /area/ruin/unpowered) "J" = ( -/obj/structure/glowshroom/single, +/obj/effect/glowshroom/single, /obj/effect/decal/cleanable/dirt, /turf/open/floor/plating{ baseturf = /turf/open/floor/plating/asteroid/basalt/lava_land_surface; @@ -690,7 +690,7 @@ d d e e -N +B e e d diff --git a/_maps/RandomRuins/LavaRuins/lavaland_surface_prisoner_crash.dmm b/_maps/RandomRuins/LavaRuins/lavaland_surface_prisoner_crash.dmm index e326c88cb7..4cb1602a28 100644 --- a/_maps/RandomRuins/LavaRuins/lavaland_surface_prisoner_crash.dmm +++ b/_maps/RandomRuins/LavaRuins/lavaland_surface_prisoner_crash.dmm @@ -1,591 +1,48 @@ -//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE -"a" = ( -/turf/closed/mineral/volcanic/lava_land_surface, -/area/lavaland/surface/outdoors) -"b" = ( -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/lavaland/surface/outdoors) -"c" = ( -/obj/item/weapon/shard, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/lavaland/surface/outdoors) -"d" = ( -/obj/item/weapon/shard{ - icon_state = "medium" - }, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/lavaland/surface/outdoors) -"e" = ( -/turf/closed/wall/mineral/plastitanium{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/lavaland/surface/outdoors) -"f" = ( -/obj/structure/shuttle/engine/propulsion{ - icon_state = "propulsion"; - dir = 4 - }, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/lavaland/surface/outdoors) -"g" = ( -/obj/structure/shuttle/engine/propulsion{ - icon_state = "propulsion"; - dir = 4 - }, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/ruin/unpowered) -"h" = ( -/turf/closed/wall/mineral/plastitanium{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/ruin/unpowered) -"i" = ( -/turf/open/floor/mineral/plastitanium/brig{ - baseturf = /turf/open/floor/plating/lava/smooth - }, -/area/lavaland/surface/outdoors) -"j" = ( -/obj/item/weapon/pickaxe, -/obj/item/weapon/pickaxe, -/obj/item/weapon/pickaxe, -/obj/item/weapon/pickaxe, -/obj/item/device/flashlight/lantern, -/turf/open/floor/mineral/plastitanium/brig{ - baseturf = /turf/open/floor/plating/lava/smooth - }, -/area/ruin/unpowered) -"k" = ( -/obj/effect/mob_spawn/human/prisoner_transport, -/turf/open/floor/mineral/plastitanium/brig{ - baseturf = /turf/open/floor/plating/lava/smooth - }, -/area/ruin/unpowered) -"l" = ( -/obj/item/weapon/shard, -/turf/open/floor/mineral/plastitanium/brig{ - baseturf = /turf/open/floor/plating/lava/smooth - }, -/area/ruin/unpowered) -"m" = ( -/obj/effect/mob_spawn/human/nanotrasensoldier, -/obj/effect/decal/cleanable/blood, -/obj/item/device/flashlight/seclite, -/obj/effect/light_emitter, -/turf/open/floor/mineral/plastitanium/brig{ - baseturf = /turf/open/floor/plating/lava/smooth - }, -/area/ruin/unpowered) -"n" = ( -/obj/item/weapon/gun/ballistic/automatic/pistol/m1911, -/turf/open/floor/mineral/plastitanium/brig{ - baseturf = /turf/open/floor/plating/lava/smooth - }, -/area/ruin/unpowered) -"o" = ( -/turf/open/floor/mineral/plastitanium/brig{ - baseturf = /turf/open/floor/plating/lava/smooth - }, -/area/ruin/unpowered) -"p" = ( -/obj/machinery/door/airlock/titanium, -/turf/open/floor/mineral/plastitanium/brig{ - baseturf = /turf/open/floor/plating/lava/smooth - }, -/area/ruin/unpowered) -"q" = ( -/obj/item/weapon/shard, -/turf/open/floor/mineral/plastitanium/brig{ - baseturf = /turf/open/floor/plating/lava/smooth - }, -/area/lavaland/surface/outdoors) -"r" = ( -/obj/machinery/door/airlock/titanium, -/turf/open/floor/plasteel/shuttle/red{ - baseturf = /turf/open/floor/plating/lava/smooth; - initial_gas_mix = "o2=16;n2=23" - }, -/area/ruin/unpowered) -"s" = ( -/obj/effect/mob_spawn/human/nanotrasensoldier, -/obj/item/weapon/gun/ballistic/automatic/pistol/m1911, -/obj/effect/decal/cleanable/blood, -/turf/open/floor/mineral/plastitanium/brig{ - baseturf = /turf/open/floor/plating/lava/smooth - }, -/area/ruin/unpowered) -"t" = ( -/obj/structure/closet/crate/internals, -/obj/item/weapon/crowbar/large, -/turf/open/floor/mineral/plastitanium/brig{ - baseturf = /turf/open/floor/plating/lava/smooth - }, -/area/ruin/unpowered) -"u" = ( -/obj/structure/lattice, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/lavaland/surface/outdoors) -"v" = ( -/obj/effect/decal/cleanable/blood, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/lavaland/surface/outdoors) -"w" = ( -/obj/item/weapon/shard{ - icon_state = "small" - }, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/lavaland/surface/outdoors) -"x" = ( -/obj/item/weapon/gun/ballistic/automatic/pistol/m1911, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/lavaland/surface/outdoors) -"y" = ( -/obj/effect/mob_spawn/human/nanotrasensoldier, -/obj/effect/decal/cleanable/blood, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/lavaland/surface/outdoors) -"z" = ( -/obj/effect/decal/cleanable/blood, -/obj/item/device/flashlight/seclite, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/lavaland/surface/outdoors) +"a" = (/turf/closed/mineral/volcanic/lava_land_surface,/area/lavaland/surface/outdoors) +"b" = (/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) +"c" = (/obj/item/weapon/shard,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) +"d" = (/obj/item/weapon/shard{icon_state = "medium"},/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) +"e" = (/turf/closed/indestructible/opshuttle,/area/lavaland/surface/outdoors) +"f" = (/obj/structure/shuttle/engine/propulsion{icon_state = "propulsion"; dir = 4},/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) +"g" = (/obj/structure/shuttle/engine/propulsion{icon_state = "propulsion"; dir = 4},/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/ruin/unpowered) +"h" = (/turf/closed/indestructible/opshuttle,/area/ruin/unpowered) +"i" = (/turf/open/floor/plasteel/shuttle/red{baseturf = /turf/open/floor/plating/lava/smooth; initial_gas_mix = "o2=14;n2=23;TEMP=300"},/area/lavaland/surface/outdoors) +"j" = (/obj/item/weapon/pickaxe,/obj/item/weapon/pickaxe,/obj/item/weapon/pickaxe,/obj/item/weapon/pickaxe,/obj/item/device/flashlight/lantern,/turf/open/floor/plasteel/shuttle/red{baseturf = /turf/open/floor/plating/lava/smooth},/area/ruin/unpowered) +"k" = (/obj/effect/mob_spawn/human/prisoner_transport,/turf/open/floor/plasteel/shuttle/red{baseturf = /turf/open/floor/plating/lava/smooth},/area/ruin/unpowered) +"l" = (/obj/item/weapon/shard,/turf/open/floor/plasteel/shuttle/red{baseturf = /turf/open/floor/plating/lava/smooth; initial_gas_mix = "o2=14;n2=23;TEMP=300"},/area/ruin/unpowered) +"m" = (/obj/effect/mob_spawn/human/nanotrasensoldier,/obj/effect/decal/cleanable/blood,/obj/item/device/flashlight/seclite,/obj/effect/light_emitter,/turf/open/floor/plasteel/shuttle/red{baseturf = /turf/open/floor/plating/lava/smooth},/area/ruin/unpowered) +"n" = (/obj/item/weapon/gun/projectile/automatic/pistol/m1911,/turf/open/floor/plasteel/shuttle/red{baseturf = /turf/open/floor/plating/lava/smooth},/area/ruin/unpowered) +"o" = (/turf/open/floor/plasteel/shuttle/red{baseturf = /turf/open/floor/plating/lava/smooth},/area/ruin/unpowered) +"p" = (/obj/machinery/door/airlock/shuttle,/turf/open/floor/plasteel/shuttle/red{baseturf = /turf/open/floor/plating/lava/smooth},/area/ruin/unpowered) +"q" = (/obj/item/weapon/shard,/turf/open/floor/plasteel/shuttle/red{baseturf = /turf/open/floor/plating/lava/smooth; initial_gas_mix = "o2=14;n2=23;TEMP=300"},/area/lavaland/surface/outdoors) +"r" = (/obj/machinery/door/airlock/shuttle,/turf/open/floor/plasteel/shuttle/red{baseturf = /turf/open/floor/plating/lava/smooth; initial_gas_mix = "o2=14;n2=23;TEMP=300"},/area/ruin/unpowered) +"s" = (/obj/effect/mob_spawn/human/nanotrasensoldier,/obj/item/weapon/gun/projectile/automatic/pistol/m1911,/obj/effect/decal/cleanable/blood,/turf/open/floor/plasteel/shuttle/red{baseturf = /turf/open/floor/plating/lava/smooth; initial_gas_mix = "o2=14;n2=23;TEMP=300"},/area/ruin/unpowered) +"t" = (/obj/structure/closet/crate/internals,/obj/item/weapon/crowbar/large,/turf/open/floor/plasteel/shuttle/red{baseturf = /turf/open/floor/plating/lava/smooth},/area/ruin/unpowered) +"u" = (/obj/effect/decal/cleanable/blood,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) +"v" = (/obj/item/weapon/shard{icon_state = "small"},/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) +"w" = (/obj/item/weapon/gun/projectile/automatic/pistol/m1911,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) +"x" = (/obj/effect/mob_spawn/human/nanotrasensoldier,/obj/effect/decal/cleanable/blood,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) +"y" = (/obj/effect/decal/cleanable/blood,/obj/item/device/flashlight/seclite,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) (1,1,1) = {" -a -a -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -"} -(2,1,1) = {" -b -a -b -b -b -a -a -b -b -b -b -b -b -b -b -b -b -b -a -b -"} -(3,1,1) = {" -b -b -c -b -b -a -a -b -b -b -b -b -b -b -b -b -b -b -b -a -"} -(4,1,1) = {" -b -b -b -b -b -b -a -b -b -g -h -g -h -g -b -b -b -w -b -b -"} -(5,1,1) = {" -b -b -a -a -a -b -b -b -b -h -h -h -h -h -b -b -b -x -b -b -"} -(6,1,1) = {" -b -b -a -a -a -b -b -e -f -h -j -m -t -h -f -e -b -b -y -b -"} -(7,1,1) = {" -b -b -b -b -b -b -b -b -e -h -k -n -k -h -e -b -b -v -z -b -"} -(8,1,1) = {" -a -b -b -b -b -b -b -a -a -h -k -o -k -h -b -b -v -v -b -b -"} -(9,1,1) = {" -b -b -b -d -b -b -b -a -a -h -k -o -k -h -b -b -v -v -b -b -"} -(10,1,1) = {" -b -b -b -b -b -b -b -a -a -h -k -o -k -h -b -b -b -b -a -a -"} -(11,1,1) = {" -a -b -b -b -b -b -b -a -a -h -h -p -h -h -b -b -b -b -a -a -"} -(12,1,1) = {" -a -b -b -b -b -b -b -b -b -e -i -i -i -u -b -b -b -b -a -a -"} -(13,1,1) = {" -b -b -b -a -b -b -b -a -b -i -i -q -i -u -b -b -b -c -a -a -"} -(14,1,1) = {" -b -a -a -b -b -a -a -a -a -i -i -i -i -i -b -b -b -b -a -a -"} -(15,1,1) = {" -b -b -b -a -a -a -a -a -a -h -h -p -e -e -b -b -b -b -a -a -"} -(16,1,1) = {" -b -b -b -a -a -a -a -a -a -h -l -s -a -e -b -b -b -b -a -a -"} -(17,1,1) = {" -b -b -b -a -a -a -a -a -a -e -a -a -a -e -b -b -b -b -a -a -"} -(18,1,1) = {" -b -b -b -b -b -a -a -a -a -a -a -a -e -a -a -b -a -a -a -a -"} -(19,1,1) = {" -b -b -b -b -b -a -a -a -a -a -a -a -a -b -b -b -a -a -a -a -"} -(20,1,1) = {" -b -b -b -b -b -a -a -a -a -a -a -a -a -b -b -b -b -b -a -a +abbbbbbabbaabbbbbbbb +aabbbbbbbbbbbabbbbbb +bbcbaabbbbbbbabbbbbb +bbbbaabbdbbbabaaabbb +bbbbaabbbbbbbbaaabbb +baabbbbbbbbbbaaaaaaa +baaabbbbbbbbbaaaaaaa +bbbbbebaaaabaaaaaaaa +bbbbbfeaaaabbaaaaaaa +bbbghhhhhhheiihheaaa +bbbhhjkkkkhiiihlaaaa +bbbghmnooopiqirsaaaa +bbbhhtkkkkhiiieaaeaa +bbbghhhhhhhbbieeeabb +bbbbbfebbbbbbbbbbabb +bbbbbebbbbbbbbbbbbbb +bbbbbbbuubbbbbbbbaab +bbbvwbuuubbbcbbbbaab +babbbxybbaaaaaaaaaaa +bbabbbbbbaaaaaaaaaaa "} diff --git a/_maps/RandomRuins/LavaRuins/lavaland_surface_swarmer_crash.dmm b/_maps/RandomRuins/LavaRuins/lavaland_surface_swarmer_crash.dmm deleted file mode 100644 index 30fb823af7..0000000000 --- a/_maps/RandomRuins/LavaRuins/lavaland_surface_swarmer_crash.dmm +++ /dev/null @@ -1,24 +0,0 @@ -"a" = (/turf/template_noop,/area/template_noop) -"b" = (/turf/closed/mineral/volcanic/lava_land_surface,/area/template_noop) -"c" = (/turf/closed/wall/mineral/plastitanium{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/ruin/unpowered) -"d" = (/turf/open/floor/mineral/plastitanium/brig{baseturf = /turf/open/floor/plating/lava/smooth},/area/ruin/unpowered) -"e" = (/obj/structure/shuttle/engine/propulsion{icon_state = "propulsion"; dir = 8},/turf/template_noop,/area/ruin/unpowered) -"f" = (/mob/living/simple_animal/hostile/megafauna/swarmer_swarm_beacon,/turf/open/floor/mineral/plastitanium/brig{baseturf = /turf/open/floor/plating/lava/smooth},/area/ruin/unpowered) - -(1,1,1) = {" -aaaaaaaaaaaaaaa -aaabbaaaaaaaaaa -aaabbbbbaaaaaaa -aabbbbbbbbbaaaa -abbbbbbaaabbaaa -bbbbbbcccaaacca -abbbbcddddddcea -acdaaadddddceaa -aaddaaddfddceaa -acddaddddddceaa -aacbbcdddddacea -abbbbacccccacca -abbbbbbbbbbaaaa -aaaabbbbbbbaaaa -aaaaaaaabbaaaaa -"} diff --git a/_maps/RandomRuins/LavaRuins/lavaland_surface_syndicate_base1.dmm b/_maps/RandomRuins/LavaRuins/lavaland_surface_syndicate_base1.dmm deleted file mode 100644 index df90a56146..0000000000 --- a/_maps/RandomRuins/LavaRuins/lavaland_surface_syndicate_base1.dmm +++ /dev/null @@ -1,221 +0,0 @@ -"aa" = (/turf/template_noop,/area/template_noop) -"ab" = (/turf/open/floor/plating/lava/smooth/lava_land_surface,/area/lavaland/surface/outdoors) -"ac" = (/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) -"ad" = (/turf/closed/wall/mineral/plastitanium,/area/ruin/powered/syndicate_lava_base) -"ae" = (/obj/structure/closet/secure_closet/bar{req_access = null; req_access_txt = "150"},/turf/open/floor/plasteel/podhatch{dir = 10},/area/ruin/powered/syndicate_lava_base) -"af" = (/obj/structure/table/wood,/obj/item/weapon/reagent_containers/food/snacks/syndicake,/obj/item/weapon/reagent_containers/food/snacks/syndicake,/obj/item/weapon/reagent_containers/food/snacks/syndicake,/obj/structure/sign/barsign{pixel_y = 32; req_access = null; req_access_txt = "150"},/turf/open/floor/plasteel/podhatch,/area/ruin/powered/syndicate_lava_base) -"ag" = (/obj/structure/table/wood,/obj/item/weapon/reagent_containers/food/snacks/salad/validsalad,/turf/open/floor/plasteel/podhatch{tag = "icon-podhatch (SOUTHEAST)"; icon_state = "podhatch"; dir = 6},/area/ruin/powered/syndicate_lava_base) -"ah" = (/obj/structure/rack{icon = 'icons/obj/stationobjs.dmi'; icon_state = "minibar_left"; name = "skeletal minibar"},/obj/item/weapon/reagent_containers/food/drinks/bottle/vodka,/turf/open/floor/wood,/area/ruin/powered/syndicate_lava_base) -"ai" = (/obj/structure/rack{icon = 'icons/obj/stationobjs.dmi'; icon_state = "minibar_right"; name = "skeletal minibar"},/obj/item/weapon/reagent_containers/food/drinks/bottle/gin,/turf/open/floor/wood,/area/ruin/powered/syndicate_lava_base) -"aj" = (/obj/structure/dresser,/obj/structure/mirror{desc = "Mirror mirror on the wall, who is the most robust of them all?"; pixel_x = -26},/turf/open/floor/plasteel/vault,/area/ruin/powered/syndicate_lava_base) -"ak" = (/obj/item/weapon/twohanded/required/kirbyplants{icon_state = "plant-21"; layer = 4.1},/turf/open/floor/plasteel/vault,/area/ruin/powered/syndicate_lava_base) -"al" = (/obj/item/weapon/twohanded/required/kirbyplants{icon_state = "plant-22"},/turf/open/floor/plasteel/vault,/area/ruin/powered/syndicate_lava_base) -"am" = (/obj/structure/table/wood,/obj/item/weapon/clipboard,/obj/item/toy/figure/syndie,/turf/open/floor/plasteel/vault,/area/ruin/powered/syndicate_lava_base) -"an" = (/obj/machinery/portable_atmospherics/canister/air,/turf/open/floor/plasteel/podhatch{dir = 5},/area/ruin/powered/syndicate_lava_base) -"ao" = (/turf/open/floor/plasteel/black,/area/ruin/powered/syndicate_lava_base) -"ap" = (/turf/open/floor/plasteel/vault{dir = 5},/area/ruin/powered/syndicate_lava_base) -"aq" = (/obj/item/stack/sheet/mineral/plastitanium{amount = 30},/obj/item/stack/rods{amount = 50},/obj/structure/table/reinforced,/turf/open/floor/plasteel/podhatch{dir = 9},/area/ruin/powered/syndicate_lava_base) -"ar" = (/turf/open/floor/wood,/area/ruin/powered/syndicate_lava_base) -"as" = (/obj/effect/mob_spawn/human/lavaland_syndicate{tag = "icon-sleeper_s (EAST)"; icon_state = "sleeper_s"; dir = 4},/turf/open/floor/plasteel/grimy,/area/ruin/powered/syndicate_lava_base) -"at" = (/turf/open/floor/plasteel/grimy,/area/ruin/powered/syndicate_lava_base) -"au" = (/obj/effect/mob_spawn/human/lavaland_syndicate{tag = "icon-sleeper_s (WEST)"; icon_state = "sleeper_s"; dir = 8},/turf/open/floor/plasteel/grimy,/area/ruin/powered/syndicate_lava_base) -"av" = (/obj/structure/reagent_dispensers/watertank,/turf/open/floor/plasteel/podhatch{tag = "icon-podhatch (EAST)"; icon_state = "podhatch"; dir = 4},/area/ruin/powered/syndicate_lava_base) -"aw" = (/obj/item/stack/cable_coil/white,/obj/item/stack/cable_coil/white,/obj/item/stack/packageWrap,/obj/item/weapon/hand_labeler,/obj/structure/table/reinforced,/turf/open/floor/plasteel/podhatch{dir = 8},/area/ruin/powered/syndicate_lava_base) -"ax" = (/obj/structure/table/wood,/obj/item/ammo_box/magazine/m10mm,/obj/item/ammo_box/magazine/m10mm,/obj/item/ammo_box/magazine/m10mm,/obj/item/ammo_box/magazine/m10mm,/obj/item/ammo_box/magazine/sniper_rounds,/obj/item/ammo_box/magazine/sniper_rounds,/obj/item/ammo_box/magazine/sniper_rounds,/turf/open/floor/plasteel/grimy,/area/ruin/powered/syndicate_lava_base) -"ay" = (/obj/structure/table/wood,/obj/item/ammo_box/magazine/m10mm,/obj/item/ammo_box/magazine/m10mm,/obj/item/ammo_box/magazine/m10mm,/obj/item/ammo_box/magazine/m10mm,/obj/item/ammo_box/magazine/sniper_rounds,/obj/item/ammo_box/magazine/sniper_rounds,/obj/item/ammo_box/magazine/sniper_rounds,/obj/item/ammo_box/magazine/sniper_rounds,/obj/item/ammo_box/magazine/sniper_rounds,/obj/item/ammo_box/magazine/sniper_rounds,/turf/open/floor/plasteel/grimy,/area/ruin/powered/syndicate_lava_base) -"az" = (/obj/structure/reagent_dispensers/fueltank,/turf/open/floor/plasteel/podhatch{tag = "icon-podhatch (SOUTHEAST)"; icon_state = "podhatch"; dir = 6},/area/ruin/powered/syndicate_lava_base) -"aA" = (/obj/item/stack/sheet/metal{amount = 50},/obj/item/stack/sheet/glass{amount = 50},/obj/structure/table/reinforced,/obj/item/weapon/wrench,/turf/open/floor/plasteel/podhatch{dir = 10},/area/ruin/powered/syndicate_lava_base) -"aB" = (/obj/structure/table/wood,/obj/item/weapon/paper_bin,/obj/item/weapon/pen,/turf/open/floor/wood{icon_state = "wood-broken4"},/area/ruin/powered/syndicate_lava_base) -"aC" = (/obj/structure/table/wood,/obj/item/weapon/storage/box/drinkingglasses,/turf/open/floor/wood,/area/ruin/powered/syndicate_lava_base) -"aD" = (/obj/structure/table/wood,/obj/item/toy/nuke,/obj/item/weapon/book/manual/nuclear,/turf/open/floor/wood,/area/ruin/powered/syndicate_lava_base) -"aE" = (/obj/structure/table/wood,/obj/item/weapon/lighter{pixel_y = 3},/obj/item/weapon/storage/fancy/cigarettes/cigpack_syndicate,/turf/open/floor/wood,/area/ruin/powered/syndicate_lava_base) -"aF" = (/obj/structure/table/wood,/obj/item/weapon/storage/fancy/donut_box,/turf/open/floor/wood,/area/ruin/powered/syndicate_lava_base) -"aG" = (/obj/structure/extinguisher_cabinet{pixel_x = 26},/turf/open/floor/wood,/area/ruin/powered/syndicate_lava_base) -"aH" = (/obj/effect/mob_spawn/human/lavaland_syndicate/comms{tag = "icon-sleeper_s (EAST)"; icon_state = "sleeper_s"; dir = 4},/turf/open/floor/plasteel/grimy,/area/ruin/powered/syndicate_lava_base) -"aI" = (/obj/structure/sign/nosmoking_2,/turf/closed/wall/mineral/plastitanium,/area/ruin/powered/syndicate_lava_base) -"aJ" = (/obj/structure/closet/crate/bin,/obj/item/trash/syndi_cakes,/turf/open/floor/plasteel/black,/area/ruin/powered/syndicate_lava_base) -"aK" = (/obj/structure/chair/stool/bar,/turf/open/floor/plasteel/vault{dir = 5},/area/ruin/powered/syndicate_lava_base) -"aL" = (/obj/structure/chair/stool/bar,/turf/open/floor/plasteel/black,/area/ruin/powered/syndicate_lava_base) -"aM" = (/obj/structure/table/wood,/obj/item/weapon/lipstick/random{pixel_x = 3; pixel_y = 3},/obj/item/weapon/lipstick/random{pixel_x = -3; pixel_y = -3},/obj/item/weapon/lipstick/random,/turf/open/floor/plasteel/vault{dir = 8},/area/ruin/powered/syndicate_lava_base) -"aN" = (/turf/open/floor/plasteel/vault{dir = 8},/area/ruin/powered/syndicate_lava_base) -"aO" = (/obj/structure/dresser,/obj/structure/mirror{desc = "Mirror mirror on the wall, who is the most robust of them all?"; pixel_x = 26},/turf/open/floor/plasteel/vault{dir = 5},/area/ruin/powered/syndicate_lava_base) -"aP" = (/obj/item/target,/turf/open/floor/plasteel/vault{dir = 8},/area/ruin/powered/syndicate_lava_base) -"aQ" = (/obj/structure/closet/emcloset{anchored = 1},/obj/item/weapon/tank/internals/emergency_oxygen/engi,/obj/item/device/flashlight/seclite,/obj/item/clothing/mask/gas,/turf/open/floor/plasteel/podhatch{dir = 5},/area/ruin/powered/syndicate_lava_base) -"aR" = (/obj/item/weapon/twohanded/required/kirbyplants{icon_state = "plant-21"; layer = 4.1},/turf/open/floor/plasteel/vault{dir = 5},/area/ruin/powered/syndicate_lava_base) -"aS" = (/obj/machinery/syndicatebomb/badmin/varplosion{can_unanchor = 0; name = "self destruct device"},/turf/open/floor/plasteel/black,/area/ruin/powered/syndicate_lava_base) -"aT" = (/obj/machinery/door/airlock/hatch{name = "Dormitories"; req_access_txt = "150"},/turf/open/floor/plasteel/vault{dir = 8},/area/ruin/powered/syndicate_lava_base) -"aU" = (/obj/structure/closet/emcloset,/obj/item/weapon/tank/internals/emergency_oxygen/engi,/obj/item/device/flashlight/seclite,/obj/item/clothing/mask/gas,/turf/open/floor/plasteel/podhatch{tag = "icon-podhatch (EAST)"; icon_state = "podhatch"; dir = 4},/area/ruin/powered/syndicate_lava_base) -"aV" = (/obj/machinery/door/airlock/hatch{name = "Storage Closet"; req_access_txt = "150"},/turf/open/floor/plasteel/vault{dir = 8},/area/ruin/powered/syndicate_lava_base) -"aW" = (/obj/machinery/door/airlock/hatch{name = "Restroom"; req_access_txt = "150"},/turf/open/floor/plasteel/vault{dir = 8},/area/ruin/powered/syndicate_lava_base) -"aX" = (/obj/structure/mirror{desc = "Mirror mirror on the wall, who is the most robust of them all?"; pixel_x = 28},/obj/structure/sink{dir = 4; icon_state = "sink"; pixel_x = 11; pixel_y = 0},/turf/open/floor/plasteel/vault{dir = 5},/area/ruin/powered/syndicate_lava_base) -"aY" = (/turf/open/floor/plasteel/podhatch{dir = 8},/area/ruin/powered/syndicate_lava_base) -"aZ" = (/turf/open/floor/plasteel/podhatch{tag = "icon-podhatch (EAST)"; icon_state = "podhatch"; dir = 4},/area/ruin/powered/syndicate_lava_base) -"ba" = (/obj/structure/closet/emcloset{anchored = 1},/obj/item/weapon/tank/internals/emergency_oxygen/engi,/obj/item/device/flashlight/seclite,/obj/item/clothing/mask/gas,/turf/open/floor/plasteel/podhatch{tag = "icon-podhatch (SOUTHEAST)"; icon_state = "podhatch"; dir = 6},/area/ruin/powered/syndicate_lava_base) -"bb" = (/obj/machinery/syndicatebomb/badmin/varplosion{can_unanchor = 0; name = "self destruct device"},/turf/open/floor/plasteel/vault{dir = 5},/area/ruin/powered/syndicate_lava_base) -"bc" = (/obj/item/weapon/twohanded/required/kirbyplants{icon_state = "plant-22"},/turf/open/floor/plasteel/vault{dir = 5},/area/ruin/powered/syndicate_lava_base) -"bd" = (/obj/structure/bookcase/random,/turf/open/floor/plasteel/vault{dir = 5},/area/ruin/powered/syndicate_lava_base) -"be" = (/obj/item/weapon/twohanded/required/kirbyplants{icon_state = "plant-21"; layer = 4.1},/turf/open/floor/plasteel/black,/area/ruin/powered/syndicate_lava_base) -"bf" = (/obj/structure/bookcase/random,/turf/open/floor/plasteel/black,/area/ruin/powered/syndicate_lava_base) -"bg" = (/obj/structure/toilet{tag = "icon-toilet00 (WEST)"; icon_state = "toilet00"; dir = 8},/turf/open/floor/plasteel/vault{dir = 5},/area/ruin/powered/syndicate_lava_base) -"bh" = (/obj/machinery/door/airlock/hatch{name = "Lounge"; req_access_txt = "150"},/turf/open/floor/plasteel/vault{dir = 8},/area/ruin/powered/syndicate_lava_base) -"bi" = (/obj/machinery/chem_dispenser,/turf/open/floor/plasteel/podhatch{dir = 8},/area/ruin/powered/syndicate_lava_base) -"bj" = (/obj/structure/table/reinforced,/obj/item/weapon/reagent_containers/glass/beaker/large,/obj/item/weapon/reagent_containers/glass/beaker,/obj/item/weapon/reagent_containers/dropper,/obj/item/weapon/reagent_containers/syringe,/obj/structure/sign/nosmoking_2{pixel_y = 32},/turf/open/floor/plasteel/podhatch{tag = "icon-podhatch (NORTH)"; icon_state = "podhatch"; dir = 1},/area/ruin/powered/syndicate_lava_base) -"bk" = (/obj/machinery/chem_master,/turf/open/floor/plasteel/podhatch{tag = "icon-podhatch (EAST)"; icon_state = "podhatch"; dir = 4},/area/ruin/powered/syndicate_lava_base) -"bl" = (/obj/structure/noticeboard{pixel_y = 32},/obj/machinery/reagentgrinder{desc = "Used to grind things up into raw materials and liquids."; pixel_y = 5},/obj/structure/table/reinforced,/turf/open/floor/plasteel/vault{dir = 8},/area/ruin/powered/syndicate_lava_base) -"bm" = (/obj/structure/table/reinforced,/obj/item/weapon/clipboard,/obj/item/weapon/folder/white,/obj/item/weapon/book/manual/wiki/chemistry,/obj/item/weapon/book/manual/wiki/chemistry,/obj/item/device/assembly/signaler,/obj/item/device/assembly/signaler,/obj/item/device/assembly/voice,/obj/item/device/assembly/voice,/turf/open/floor/plasteel/vault{dir = 8},/area/ruin/powered/syndicate_lava_base) -"bn" = (/obj/structure/table/reinforced,/obj/item/weapon/storage/box/beakers{pixel_x = 3; pixel_y = 3},/obj/item/weapon/storage/box/syringes,/obj/item/weapon/gun/syringe/syndicate,/turf/open/floor/plasteel/vault{dir = 8},/area/ruin/powered/syndicate_lava_base) -"bo" = (/turf/open/floor/plasteel/podhatch{dir = 9},/area/ruin/powered/syndicate_lava_base) -"bp" = (/turf/open/floor/plasteel/podhatch{dir = 5},/area/ruin/powered/syndicate_lava_base) -"bq" = (/obj/structure/table/reinforced,/obj/machinery/reagentgrinder{desc = "Used to grind things up into raw materials and liquids."; pixel_y = 5},/obj/structure/noticeboard{pixel_y = 32},/turf/open/floor/plasteel/podhatch/corner,/area/ruin/powered/syndicate_lava_base) -"br" = (/obj/structure/reagent_dispensers/virusfood{pixel_y = 32},/obj/structure/table/reinforced,/obj/item/device/healthanalyzer,/obj/item/stack/sheet/mineral/plasma{amount = 5; layer = 3.1},/turf/open/floor/plasteel/podhatch,/area/ruin/powered/syndicate_lava_base) -"bs" = (/obj/structure/extinguisher_cabinet{pixel_x = 0; pixel_y = 32},/obj/machinery/computer/pandemic,/turf/open/floor/plasteel/podhatch,/area/ruin/powered/syndicate_lava_base) -"bt" = (/obj/structure/table/reinforced,/obj/item/weapon/storage/box/beakers{pixel_x = 3; pixel_y = 3},/obj/item/weapon/storage/box/syringes,/turf/open/floor/plasteel/podhatch,/area/ruin/powered/syndicate_lava_base) -"bu" = (/obj/structure/bed/roller,/obj/machinery/iv_drip,/obj/item/weapon/reagent_containers/blood/random,/turf/open/floor/plasteel/podhatch{tag = "icon-podhatch (SOUTHEAST)"; icon_state = "podhatch"; dir = 6},/area/ruin/powered/syndicate_lava_base) -"bv" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/ruin/powered/syndicate_lava_base) -"bw" = (/mob/living/carbon/monkey,/turf/open/floor/plasteel/vault{dir = 8},/area/ruin/powered/syndicate_lava_base) -"bx" = (/obj/structure/bed/roller,/turf/open/floor/plasteel/vault{dir = 8},/area/space) -"by" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plasteel/vault{dir = 5},/area/ruin/powered/syndicate_lava_base) -"bz" = (/obj/structure/bed/roller,/turf/open/floor/plasteel/vault{dir = 8},/area/ruin/powered/syndicate_lava_base) -"bA" = (/mob/living/carbon/monkey,/turf/open/floor/plasteel/vault{dir = 5},/area/ruin/powered/syndicate_lava_base) -"bB" = (/obj/structure/window/reinforced,/turf/open/floor/plasteel/vault{dir = 5},/area/ruin/powered/syndicate_lava_base) -"bC" = (/obj/machinery/door/window/brigdoor,/turf/open/floor/plasteel/vault{dir = 8},/area/ruin/powered/syndicate_lava_base) -"bD" = (/obj/machinery/chem_heater,/obj/structure/extinguisher_cabinet{pixel_x = -26},/turf/open/floor/plasteel/podhatch{dir = 10},/area/ruin/powered/syndicate_lava_base) -"bE" = (/obj/structure/chair/office/dark{dir = 1},/turf/open/floor/plasteel/podhatch,/area/ruin/powered/syndicate_lava_base) -"bF" = (/obj/structure/closet/crate/bin,/turf/open/floor/plasteel/podhatch{tag = "icon-podhatch (SOUTHEAST)"; icon_state = "podhatch"; dir = 6},/area/ruin/powered/syndicate_lava_base) -"bG" = (/turf/open/floor/plasteel/vault,/area/ruin/powered/syndicate_lava_base) -"bH" = (/obj/item/device/assembly/igniter,/obj/item/device/assembly/igniter,/obj/item/device/assembly/igniter,/obj/item/device/assembly/timer{pixel_x = 3; pixel_y = 3},/obj/item/device/assembly/timer{pixel_x = 3; pixel_y = 3},/obj/item/device/assembly/timer{pixel_x = 3; pixel_y = 3},/obj/structure/table/reinforced,/turf/open/floor/plasteel/vault{dir = 8},/area/ruin/powered/syndicate_lava_base) -"bI" = (/obj/structure/table/reinforced,/obj/item/weapon/book/manual/wiki/infections,/obj/item/stack/sheet/mineral/silver{amount = 10},/turf/open/floor/plasteel/podhatch{tag = "icon-podhatch (EAST)"; icon_state = "podhatch"; dir = 4},/area/ruin/powered/syndicate_lava_base) -"bJ" = (/obj/structure/chair/office/dark{dir = 8},/turf/open/floor/plasteel/vault{dir = 5},/area/ruin/powered/syndicate_lava_base) -"bK" = (/obj/machinery/door/airlock/hatch{name = "Monkey Pen"; req_access_txt = "150"},/turf/open/floor/plasteel/black,/area/ruin/powered/syndicate_lava_base) -"bL" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plasteel/vault{dir = 5},/area/space) -"bM" = (/obj/structure/table/reinforced,/obj/item/weapon/gun/ballistic/automatic/c20r/toy/unrestricted,/obj/item/weapon/gun/ballistic/automatic/c20r/toy/unrestricted,/turf/open/floor/plasteel/vault{dir = 8},/area/ruin/powered/syndicate_lava_base) -"bN" = (/obj/item/weapon/twohanded/required/kirbyplants{icon_state = "plant-21"; layer = 4.1},/turf/open/floor/plasteel/vault{dir = 8},/area/ruin/powered/syndicate_lava_base) -"bO" = (/obj/structure/table/reinforced,/obj/item/clothing/gloves/color/latex,/obj/item/clothing/gloves/color/latex,/obj/item/clothing/suit/toggle/labcoat,/obj/item/clothing/suit/toggle/labcoat,/obj/item/clothing/glasses/science,/obj/item/clothing/glasses/science,/turf/open/floor/plasteel/vault{dir = 8},/area/ruin/powered/syndicate_lava_base) -"bP" = (/obj/machinery/smartfridge/chemistry/virology,/turf/open/floor/plasteel/podhatch{tag = "icon-podhatch (EAST)"; icon_state = "podhatch"; dir = 4},/area/ruin/powered/syndicate_lava_base) -"bQ" = (/obj/machinery/iv_drip,/obj/item/weapon/reagent_containers/blood/random,/turf/open/floor/plasteel/vault{dir = 5},/area/ruin/powered/syndicate_lava_base) -"bR" = (/obj/structure/closet/crate/bin,/turf/open/floor/plasteel/podhatch{dir = 9},/area/ruin/powered/syndicate_lava_base) -"bS" = (/obj/structure/chair/office/dark,/turf/open/floor/plasteel/podhatch{tag = "icon-podhatch (NORTH)"; icon_state = "podhatch"; dir = 1},/area/ruin/powered/syndicate_lava_base) -"bT" = (/obj/machinery/chem_heater,/turf/open/floor/plasteel/podhatch{dir = 5},/area/ruin/powered/syndicate_lava_base) -"bU" = (/obj/structure/table/reinforced,/obj/item/weapon/reagent_containers/glass/beaker/large,/obj/item/weapon/reagent_containers/glass/beaker,/obj/item/weapon/reagent_containers/dropper,/obj/item/weapon/reagent_containers/syringe,/turf/open/floor/plasteel/podhatch{tag = "icon-podhatch (EAST)"; icon_state = "podhatch"; dir = 4},/area/ruin/powered/syndicate_lava_base) -"bV" = (/obj/structure/chair/office/dark,/turf/open/floor/plasteel/vault{dir = 5},/area/ruin/powered/syndicate_lava_base) -"bW" = (/obj/machinery/door/airlock/hatch{name = "Monkey Pen"; req_access_txt = "150"},/turf/open/floor/plasteel/black,/area/space) -"bX" = (/obj/machinery/door/airlock/hatch{name = "Monkey Pen"; req_access_txt = "150"},/turf/open/floor/plasteel/vault{dir = 5},/area/ruin/powered/syndicate_lava_base) -"bY" = (/obj/structure/table/reinforced,/obj/item/weapon/folder,/obj/item/clothing/ears/earmuffs,/obj/item/clothing/ears/earmuffs,/turf/open/floor/plasteel/vault{dir = 8},/area/ruin/powered/syndicate_lava_base) -"bZ" = (/obj/structure/table/reinforced,/obj/item/weapon/suppressor/specialoffer,/obj/item/weapon/gun/ballistic/automatic/toy/pistol/unrestricted,/obj/item/weapon/gun/ballistic/automatic/toy/pistol/unrestricted,/turf/open/floor/plasteel/vault{dir = 8},/area/ruin/powered/syndicate_lava_base) -"ca" = (/obj/machinery/chem_master,/turf/open/floor/plasteel/podhatch{dir = 8},/area/ruin/powered/syndicate_lava_base) -"cb" = (/obj/structure/table/reinforced,/obj/item/weapon/reagent_containers/glass/beaker/large,/obj/item/weapon/reagent_containers/glass/beaker,/obj/item/weapon/reagent_containers/dropper,/obj/item/weapon/reagent_containers/syringe,/turf/open/floor/plasteel/podhatch,/area/ruin/powered/syndicate_lava_base) -"cc" = (/obj/machinery/chem_dispenser,/obj/structure/extinguisher_cabinet{pixel_x = 26},/turf/open/floor/plasteel/podhatch{tag = "icon-podhatch (EAST)"; icon_state = "podhatch"; dir = 4},/area/ruin/powered/syndicate_lava_base) -"cd" = (/obj/structure/table/reinforced,/obj/item/clothing/suit/bio_suit/general,/obj/item/clothing/mask/surgical,/obj/item/clothing/head/bio_hood/general,/turf/open/floor/plasteel/podhatch{tag = "icon-podhatch (SOUTHEAST)"; icon_state = "podhatch"; dir = 6},/area/ruin/powered/syndicate_lava_base) -"ce" = (/obj/machinery/shower{dir = 4; icon_state = "shower"; name = "emergency shower"},/obj/machinery/shower{dir = 8; icon_state = "shower"; name = "emergency shower"},/turf/open/floor/plasteel/vault{dir = 5},/area/ruin/powered/syndicate_lava_base) -"cf" = (/obj/structure/table/reinforced,/obj/item/weapon/paper_bin,/obj/item/weapon/pen,/turf/open/floor/plasteel/podhatch{tag = "icon-podhatch (NORTH)"; icon_state = "podhatch"; dir = 1},/area/ruin/powered/syndicate_lava_base) -"cg" = (/obj/structure/table/reinforced,/obj/item/weapon/folder/white,/obj/item/stack/sheet/mineral/gold{amount = 10},/obj/item/stack/sheet/mineral/uranium{amount = 10},/turf/open/floor/plasteel/podhatch{tag = "icon-podhatch (NORTH)"; icon_state = "podhatch"; dir = 1},/area/ruin/powered/syndicate_lava_base) -"ch" = (/turf/open/floor/plasteel/vault{dir = 8},/area/space) -"ci" = (/obj/structure/bed/roller,/mob/living/carbon/monkey,/turf/open/floor/plasteel/vault{dir = 8},/area/ruin/powered/syndicate_lava_base) -"cj" = (/obj/structure/sign/securearea,/turf/closed/wall/mineral/plastitanium,/area/ruin/powered/syndicate_lava_base) -"ck" = (/obj/machinery/door/airlock/hatch{name = "Firing Range"; req_access_txt = "150"},/turf/open/floor/plasteel/vault{dir = 8},/area/ruin/powered/syndicate_lava_base) -"cl" = (/obj/machinery/door/airlock/hatch{name = "Chemistry Lab"; req_access_txt = "150"},/turf/open/floor/plasteel/vault{dir = 8},/area/ruin/powered/syndicate_lava_base) -"cm" = (/obj/structure/sign/chemistry,/turf/closed/wall/mineral/plastitanium,/area/ruin/powered/syndicate_lava_base) -"cn" = (/obj/machinery/syndicatebomb/badmin/varplosion{can_unanchor = 0; name = "self destruct device"},/turf/open/floor/plasteel/podhatch{dir = 8},/area/ruin/powered/syndicate_lava_base) -"co" = (/obj/structure/sign/biohazard,/turf/closed/wall/mineral/plastitanium,/area/ruin/powered/syndicate_lava_base) -"cp" = (/obj/machinery/door/airlock/hatch{name = "Virology Lab"; req_access_txt = "150"},/turf/open/floor/plasteel/vault{dir = 8},/area/ruin/powered/syndicate_lava_base) -"cq" = (/obj/structure/rack,/obj/item/ammo_box/foambox{pixel_x = -3; pixel_y = 3},/obj/item/ammo_box/foambox,/obj/item/ammo_box/foambox{pixel_x = 3; pixel_y = -3},/turf/open/floor/plasteel/podhatch{dir = 5},/area/ruin/powered/syndicate_lava_base) -"cr" = (/obj/item/weapon/twohanded/required/kirbyplants{icon_state = "plant-22"},/turf/open/floor/plasteel/podhatch{dir = 9},/area/ruin/powered/syndicate_lava_base) -"cs" = (/turf/open/floor/plasteel/podhatch{tag = "icon-podhatch (NORTH)"; icon_state = "podhatch"; dir = 1},/area/ruin/powered/syndicate_lava_base) -"ct" = (/turf/open/floor/plasteel/podhatch/corner{tag = "icon-podhatchcorner (EAST)"; icon_state = "podhatchcorner"; dir = 4},/area/ruin/powered/syndicate_lava_base) -"cu" = (/turf/open/floor/plasteel/podhatch/corner{tag = "icon-podhatchcorner (WEST)"; icon_state = "podhatchcorner"; dir = 8},/area/ruin/powered/syndicate_lava_base) -"cv" = (/obj/item/weapon/twohanded/required/kirbyplants{icon_state = "plant-21"; layer = 4.1},/turf/open/floor/plasteel/podhatch{dir = 5},/area/ruin/powered/syndicate_lava_base) -"cw" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/structure/sign/bluecross_2,/turf/open/floor/plating,/area/ruin/powered/syndicate_lava_base) -"cx" = (/obj/structure/table,/obj/item/weapon/storage/firstaid/regular{pixel_x = 3; pixel_y = 3},/obj/item/weapon/storage/firstaid/fire,/obj/item/weapon/storage/firstaid/regular{pixel_x = -3; pixel_y = -3},/turf/open/floor/plasteel/vault,/area/ruin/powered/syndicate_lava_base) -"cy" = (/obj/machinery/sleeper/syndie{dir = 8},/turf/open/floor/plasteel/vault{dir = 8},/area/ruin/powered/syndicate_lava_base) -"cz" = (/obj/structure/closet/crate/secure,/obj/item/target,/obj/item/target,/obj/item/target/alien,/obj/item/target/alien,/obj/item/target/clown,/obj/item/target/clown,/turf/open/floor/plasteel/podhatch{tag = "icon-podhatch (SOUTHEAST)"; icon_state = "podhatch"; dir = 6},/area/ruin/powered/syndicate_lava_base) -"cA" = (/turf/open/floor/plasteel/podhatch{dir = 10},/area/ruin/powered/syndicate_lava_base) -"cB" = (/obj/machinery/syndicatebomb/badmin/varplosion{can_unanchor = 0; name = "self destruct device"},/turf/open/floor/plasteel/podhatch,/area/ruin/powered/syndicate_lava_base) -"cC" = (/obj/structure/extinguisher_cabinet{pixel_y = -32},/turf/open/floor/plasteel/podhatch,/area/ruin/powered/syndicate_lava_base) -"cD" = (/turf/open/floor/plasteel/podhatch,/area/ruin/powered/syndicate_lava_base) -"cE" = (/turf/open/floor/plasteel/podhatch/corner{tag = "icon-podhatchcorner (NORTH)"; icon_state = "podhatchcorner"; dir = 1},/area/ruin/powered/syndicate_lava_base) -"cF" = (/turf/open/floor/plasteel/podhatch/corner,/area/ruin/powered/syndicate_lava_base) -"cG" = (/turf/open/floor/plasteel/podhatch{tag = "icon-podhatch (SOUTHEAST)"; icon_state = "podhatch"; dir = 6},/area/ruin/powered/syndicate_lava_base) -"cH" = (/obj/machinery/door/airlock/hatch{name = "Infirmary"; req_access_txt = "150"},/turf/open/floor/plasteel/vault{dir = 8},/area/ruin/powered/syndicate_lava_base) -"cI" = (/obj/structure/bed/roller,/obj/machinery/iv_drip,/obj/item/weapon/reagent_containers/blood/random,/turf/open/floor/plasteel/vault{dir = 8},/area/ruin/powered/syndicate_lava_base) -"cJ" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/machinery/door/poddoor/preopen{id = "lavalandsyndi"; name = "Syndicate Research Experimentor Shutters"},/turf/open/floor/plating,/area/ruin/powered/syndicate_lava_base) -"cK" = (/obj/machinery/door/airlock/hatch{name = "Experimentation Room"; req_access_txt = "150"},/turf/open/floor/plasteel/vault{dir = 8},/area/ruin/powered/syndicate_lava_base) -"cL" = (/obj/machinery/door/airlock/hatch{name = "Telecommunications Control"; req_access_txt = "150"},/turf/open/floor/plasteel/vault{dir = 8},/area/ruin/powered/syndicate_lava_base) -"cM" = (/turf/open/floor/engine,/area/ruin/powered/syndicate_lava_base) -"cN" = (/obj/structure/noticeboard{pixel_y = 32},/turf/open/floor/plasteel/vault{dir = 5},/area/ruin/powered/syndicate_lava_base) -"cO" = (/obj/structure/table,/obj/item/weapon/storage/toolbox/syndicate,/obj/item/device/multitool,/turf/open/floor/plasteel/vault{dir = 8},/area/ruin/powered/syndicate_lava_base) -"cP" = (/obj/item/weapon/surgicaldrill,/obj/item/weapon/circular_saw,/obj/structure/table/reinforced,/turf/open/floor/plasteel/vault{dir = 8},/area/ruin/powered/syndicate_lava_base) -"cQ" = (/obj/structure/sink{dir = 4; icon_state = "sink"; pixel_x = 11; pixel_y = 0},/obj/structure/mirror{pixel_x = 30},/turf/open/floor/plasteel/vault{dir = 5},/area/ruin/powered/syndicate_lava_base) -"cR" = (/obj/item/stack/cable_coil/white{pixel_x = 3; pixel_y = 3},/obj/structure/table/reinforced,/obj/item/weapon/storage/toolbox/syndicate,/obj/item/stack/cable_coil/white,/turf/open/floor/plasteel/vault{dir = 8},/area/ruin/powered/syndicate_lava_base) -"cS" = (/obj/structure/table/reinforced,/obj/item/device/flashlight/lamp,/turf/open/floor/plasteel/vault{dir = 8},/area/ruin/powered/syndicate_lava_base) -"cT" = (/obj/structure/table/reinforced,/obj/item/device/radio/intercom{broadcasting = 0; dir = 8; freerange = 1; listening = 1; name = "Pirate Radio Listening Channel"; pixel_x = 0},/turf/open/floor/plasteel/vault{dir = 8},/area/ruin/powered/syndicate_lava_base) -"cU" = (/obj/machinery/computer/camera_advanced,/turf/open/floor/plasteel/vault{dir = 5},/area/ruin/powered/syndicate_lava_base) -"cV" = (/obj/structure/filingcabinet/chestdrawer,/turf/open/floor/plasteel/vault{dir = 8},/area/ruin/powered/syndicate_lava_base) -"cW" = (/obj/item/weapon/cautery,/obj/item/weapon/scalpel,/obj/structure/table/reinforced,/turf/open/floor/plasteel/vault{dir = 8},/area/ruin/powered/syndicate_lava_base) -"cX" = (/obj/structure/table/optable,/obj/item/weapon/surgical_drapes,/turf/open/floor/plasteel/vault{dir = 8},/area/ruin/powered/syndicate_lava_base) -"cY" = (/obj/item/weapon/retractor,/obj/item/weapon/hemostat,/obj/structure/table/reinforced,/turf/open/floor/plasteel/vault{dir = 8},/area/ruin/powered/syndicate_lava_base) -"cZ" = (/obj/structure/sign/nosmoking_2{pixel_x = 32},/turf/open/floor/plasteel/vault{dir = 5},/area/ruin/powered/syndicate_lava_base) -"da" = (/obj/item/weapon/twohanded/required/kirbyplants{icon_state = "plant-22"},/obj/structure/extinguisher_cabinet{pixel_x = -26},/turf/open/floor/plasteel/vault{dir = 5},/area/ruin/powered/syndicate_lava_base) -"db" = (/obj/structure/table/reinforced,/obj/item/device/radio/intercom{broadcasting = 1; dir = 8; freerange = 1; listening = 0; name = "Pirate Radio Broadcast Channel"; pixel_x = 0},/turf/open/floor/plasteel/vault{dir = 8},/area/ruin/powered/syndicate_lava_base) -"dc" = (/obj/structure/sign/fire{pixel_x = -32},/turf/open/floor/engine,/area/ruin/powered/syndicate_lava_base) -"dd" = (/obj/structure/table/reinforced,/obj/item/device/assembly/signaler,/obj/item/device/assembly/signaler,/obj/item/device/assembly/voice,/obj/item/device/assembly/voice,/obj/item/weapon/screwdriver/nuke,/turf/open/floor/plasteel/vault{dir = 8},/area/ruin/powered/syndicate_lava_base) -"de" = (/obj/structure/table/reinforced,/obj/item/stack/sheet/plasteel{amount = 15},/obj/item/device/electropack,/obj/item/device/taperecorder,/turf/open/floor/plasteel/vault{dir = 8},/area/ruin/powered/syndicate_lava_base) -"df" = (/obj/structure/filingcabinet/security,/turf/open/floor/plasteel/vault{dir = 5},/area/ruin/powered/syndicate_lava_base) -"dg" = (/obj/structure/table/reinforced,/obj/item/weapon/paper_bin,/obj/item/weapon/pen,/turf/open/floor/plasteel/vault{dir = 8},/area/ruin/powered/syndicate_lava_base) -"dh" = (/obj/machinery/computer/message_monitor,/obj/item/weapon/paper/monitorkey,/turf/open/floor/plasteel/vault{dir = 8},/area/ruin/powered/syndicate_lava_base) -"di" = (/turf/open/floor/plasteel/vault{tag = "icon-vault (NORTHEAST)"; dir = 5},/area/ruin/powered/syndicate_lava_base) -"dj" = (/obj/effect/baseturf_helper,/turf/open/floor/plasteel/vault{tag = "icon-vault (NORTHEAST)"; dir = 5},/area/ruin/powered/syndicate_lava_base) -"dk" = (/obj/machinery/button/door{id = "lavalandsyndi"; name = "Syndicate Experimentor Lockdown Control"; pixel_x = 26; req_access_txt = "150"},/turf/open/floor/engine,/area/ruin/powered/syndicate_lava_base) -"dl" = (/obj/machinery/button/door{id = "lavalandsyndi"; name = "Syndicate Experimentor Lockdown Control"; pixel_x = -26; req_access_txt = "150"},/turf/open/floor/plasteel/vault{dir = 5},/area/ruin/powered/syndicate_lava_base) -"dm" = (/obj/item/stack/sheet/mineral/plastitanium{amount = 30},/obj/item/stack/rods{amount = 50},/obj/structure/table/reinforced,/turf/open/floor/plasteel/vault{dir = 8},/area/ruin/powered/syndicate_lava_base) -"dn" = (/obj/structure/filingcabinet/medical,/turf/open/floor/plasteel/vault{dir = 5},/area/ruin/powered/syndicate_lava_base) -"do" = (/turf/open/floor/plasteel/circuit/gcircuit,/area/ruin/powered/syndicate_lava_base) -"dp" = (/obj/machinery/door/poddoor/preopen{id = "lavalandsyndi"; name = "Syndicate Research Experimentor Shutters"},/obj/machinery/door/airlock/hatch{name = "Experimentation Room"; req_access_txt = "150"},/turf/open/floor/plasteel/vault{dir = 8},/area/ruin/powered/syndicate_lava_base) -"dq" = (/obj/item/stack/sheet/metal{amount = 50},/obj/item/weapon/grenade/chem_grenade,/obj/item/weapon/grenade/chem_grenade,/obj/item/weapon/grenade/chem_grenade,/obj/structure/table/reinforced,/turf/open/floor/plasteel/vault{dir = 8},/area/ruin/powered/syndicate_lava_base) -"dr" = (/obj/machinery/telecomms/relay/preset/ruskie{use_power = 0},/turf/open/floor/plasteel/vault{tag = "icon-vault (NORTHEAST)"; dir = 5},/area/ruin/powered/syndicate_lava_base) -"ds" = (/obj/machinery/door/airlock/hatch{name = "Syndicate Recon Outpost"; req_access_txt = "150"},/obj/structure/fans/tiny,/turf/open/floor/plasteel/vault{dir = 8},/area/ruin/powered/syndicate_lava_base) -"dt" = (/obj/machinery/door/airlock/hatch{name = "Monkey Pen"; req_access_txt = "150"},/turf/open/floor/plasteel/vault{dir = 8},/area/ruin/powered/syndicate_lava_base) -"du" = (/obj/structure/sign/vacuum{pixel_x = -32},/turf/open/floor/plasteel/vault{dir = 8},/area/ruin/powered/syndicate_lava_base) -"dv" = (/obj/structure/sign/xeno_warning_mining{pixel_x = 32},/turf/open/floor/plasteel/vault{dir = 8},/area/ruin/powered/syndicate_lava_base) -"dw" = (/obj/structure/bed/roller,/obj/machinery/iv_drip,/mob/living/carbon/monkey,/turf/open/floor/plasteel/vault{dir = 8},/area/ruin/powered/syndicate_lava_base) -"dx" = (/obj/structure/sign/securearea{pixel_y = 32},/turf/open/floor/plating/lava/smooth/lava_land_surface,/area/lavaland/surface/outdoors) - -(1,1,1) = {" -aaaaaaaaabaaaaabababababababababababababababababababababababababababababaaaa -aaaaabababababababababababababababababababababababababababababababababababaa -aaaaabababababababababababababababababababababababababababababababababababab -aaaaabababababababababababababababababababababababababababababababababababaa -aaababababababababababababababababababababababababababababababababababababab -ababababababababababacababababacacadadadadadadadadadadadadadadabacababababab -abababababacababababababadadadadadadaeafagadahaiadajakadalamadababababababab -abababababababababababacadanaoapaqadararararararadasatadatauadacabababababab -abababababababacacababacadavapaoawadararararararadaxatadatayadacabababababab -abababababababacadadadadadazaoapaAadaBaCaDaEaFaGadaHatadatauadababacabababab -abababababababacadapapapadaIapaoadadaJaKaLaKaoapadaMaNadaNaOadacabacabababab -ababababababababadapaPapadaQapaoaRadapaoapaoapaSadadaTadaTadadadadababababab -abababababacababadapaNapadaUaoapapaVaoapaoapaoapaTapapapapapaWaXadababababab -abababababababacadaYaNaZadbabbaobcadbdbeapaobcbfadaRapapapaRadbgadacabababab -abababababababacadapaNapadadadadadadadadbhbhadadadadadadadadadadadadadababab -abababababababacadaYaNaZadbibjbkblbmbnadbobpadbqbrbsbtbubvbwbxbybzbAadababab -abababababacabacadbBbCbBadbDbEbFbGbGbHbvaYaZbvbIbJapapapbvbKbLbybKbyadababab -abababababacababadbMaNbNadaRapapapapbObvaYaZbvbPapaoaoaoaoaoaoaoaoaoadababab -abababababacabacadapapapadbQaoapbRbSbTbvaYaZbvbUapapbbbVbybWbybybXbyadababab -abababababababacadbYapbZadbQapapcacbccadaYaZadcdcebRcfcgbychcibyaNciadababab -ababababababacabadcjckadadcjclcmadbvadadcnaZadcocpadbvbvadadadadadadadababab -ababababababababadcqapaRbvcrcscscscscscsctcucscscscscscscvcwcxapcyadabababab -aaabababababacacadczapapckcAcBcCcDcDcDcDcEcFcDcDcDcDcDcDcGcHapapcIadabababab -aaabababababacadadadcJadadadadadadcKcjadaYaZadadcLcjadadadadapapcyadabababab -abababababababadcMcMcMcMcMcMcMcjaRapapadaYaZadaRapapcNbbcOadcPapcQadabababab -abababababababadcMcMcMcMcMcMcMcJcRapapadaYaZadapaocScTcUcVadcWcXcYadabababab -abababababababadcMcMcMcMcMcMcMcJbHapcZadaYaZaddaaodbbJapaNadadadadadabababab -ababababababacaddccMcMcMcMcMcMcJddapdeadaYaZaddfaodgdhapaNcLdidjdiadabababab -abababababababadcMcMcMcMcMcMdkaddlapdmadaYaZaddnapapapapbNaddododoadabababab -ababababababacadcMcMcMcMcMcMcMdpapapdqadcAcGadadadadadadadaddodrdoadabababab -ababababababacadcMcMcMcMcMcMcMaddaapaRaddsdsadacacacacacabadadadadadabababab -ababababababacadadadadadadadadadbvdtbvaddudvadacacacababababababacacabababab -ababababababacacacabababacacacaddwaNdwadaNaNadacababababacababababababababab -ababababababababababababababacadadadadaddsdsadababacacababababababababababab -abababababababababababababababababababdxababdxababababababababababababababab -abababababababababababababababababababababababababababababababababababababaa -aaababababababababababababababababababababababababababababababababababababaa -aaaaabaaababababababababababababababababababababababababababababababaaaaaaaa -"} diff --git a/_maps/RandomRuins/LavaRuins/lavaland_surface_ww_vault.dmm b/_maps/RandomRuins/LavaRuins/lavaland_surface_ww_vault.dmm index 56d0ad808d..f0bf959447 100644 --- a/_maps/RandomRuins/LavaRuins/lavaland_surface_ww_vault.dmm +++ b/_maps/RandomRuins/LavaRuins/lavaland_surface_ww_vault.dmm @@ -1,10005 +1,118 @@ -//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE -"a" = ( -/turf/template_noop, -/area/template_noop) -"b" = ( -/turf/closed/indestructible, -/area/ruin/powered) -"c" = ( -/turf/open/floor/engine/cult, -/area/ruin/powered) -"d" = ( -/obj/structure/destructible/cult/pylon, -/turf/open/floor/engine/cult, -/area/ruin/powered) -"e" = ( -/turf/open/floor/plating{ - icon_state = "cultdamage5" - }, -/area/ruin/powered) -"f" = ( -/mob/living/simple_animal/hostile/faithless, -/turf/open/floor/engine/cult, -/area/ruin/powered) -"g" = ( -/turf/open/floor/plasteel/circuit/off, -/area/ruin/powered) -"h" = ( -/turf/closed/indestructible{ - desc = "The patterns engraved on the wall seem to shift as you try to focus on them. You feel sick."; - icon = 'icons/turf/walls/cult_wall.dmi'; - icon_state = "cult" - }, -/area/ruin/powered) -"i" = ( -/turf/open/floor/plating{ - icon_state = "cultdamage3" - }, -/area/ruin/powered) -"j" = ( -/turf/open/floor/plating{ - icon_state = "cultdamage6" - }, -/area/ruin/powered) -"k" = ( -/obj/effect/gateway, -/turf/open/floor/engine/cult, -/area/ruin/powered) -"l" = ( -/mob/living/simple_animal/hostile/faithless, -/turf/open/floor/plasteel/circuit/off, -/area/ruin/powered) -"m" = ( -/obj/machinery/wish_granter_dark, -/turf/open/floor/plasteel/circuit/gcircuit/off, -/area/ruin/powered) -"n" = ( -/turf/open/floor/plasteel/circuit/gcircuit/off, -/area/ruin/powered) -"o" = ( -/obj/structure/destructible/cult/pylon, -/turf/open/floor/plasteel/circuit/gcircuit/off, -/area/ruin/powered) -"p" = ( -/obj/structure/signpost, -/turf/open/floor/plasteel/circuit/gcircuit/off, -/area/ruin/powered) -"q" = ( -/obj/effect/meatgrinder, -/turf/open/floor/plasteel/circuit/gcircuit/off, -/area/ruin/powered) -"r" = ( -/obj/structure/destructible/cult/pylon, -/turf/open/floor/plasteel/circuit/off, -/area/ruin/powered) -"s" = ( -/turf/open/floor/engine/cult{ - baseturf = /turf/open/floor/plating/lava/smooth - }, -/area/ruin/powered) -"t" = ( -/turf/open/floor/plating{ - icon_state = "cultdamage2" - }, -/area/ruin/powered) -"u" = ( -/turf/open/floor/carpet, -/area/ruin/powered) -"v" = ( -/mob/living/simple_animal/hostile/faithless, -/turf/open/floor/carpet, -/area/ruin/powered) -"w" = ( -/obj/machinery/door/airlock/vault{ - locked = 1 - }, -/turf/open/floor/engine/cult, -/area/ruin/powered) -"x" = ( -/obj/structure/destructible/cult/pylon, -/turf/open/floor/engine/cult{ - baseturf = /turf/open/floor/plating/lava/smooth - }, -/area/ruin/powered) -"y" = ( -/mob/living/simple_animal/hostile/faithless, -/turf/open/floor/engine/cult{ - baseturf = /turf/open/floor/plating/lava/smooth - }, -/area/ruin/powered) -"z" = ( -/turf/template_noop, -/turf/closed/indestructible{ - desc = "The patterns engraved on the wall seem to shift as you try to focus on them. You feel sick."; - icon = 'icons/turf/walls/cult_wall.dmi'; - icon_state = "cult" - }, -/area/ruin/powered) -"A" = ( -/mob/living/simple_animal/hostile/faithless, -/turf/template_noop, -/area/template_noop) -"B" = ( -/obj/effect/mob_spawn/human/miner/rig, -/turf/open/floor/engine/cult{ - baseturf = /turf/open/floor/plating/lava/smooth - }, -/area/ruin/powered) -"C" = ( -/obj/machinery/door/airlock/vault{ - locked = 1 - }, -/turf/open/floor/engine/cult{ - baseturf = /turf/open/floor/plating/lava/smooth; - blocks_air = 1 - }, -/area/ruin/powered) -"D" = ( -/turf/open/floor/engine/cult{ - baseturf = /turf/open/floor/plating/lava/smooth - }, -/area/template_noop) -"E" = ( -/turf/closed/indestructible, -/area/template_noop) -"F" = ( -/obj/item/weapon/paper{ - info = "meat grinder requires sacri" - }, -/turf/open/floor/engine/cult{ - baseturf = /turf/open/floor/plating/lava/smooth - }, -/area/template_noop) -"G" = ( -/obj/effect/mob_spawn/human/syndicatecommando, -/turf/open/floor/engine/cult{ - baseturf = /turf/open/floor/plating/lava/smooth - }, -/area/template_noop) -"H" = ( -/mob/living/simple_animal/hostile/faithless, -/turf/open/floor/engine/cult{ - baseturf = /turf/open/floor/plating/lava/smooth - }, -/area/template_noop) +"a" = (/turf/template_noop,/area/template_noop) +"b" = (/turf/closed/indestructible,/area/ruin/powered) +"c" = (/turf/open/floor/engine/cult,/area/ruin/powered) +"d" = (/obj/structure/cult/pylon,/turf/open/floor/engine/cult,/area/ruin/powered) +"e" = (/turf/open/floor/plating{icon_state = "cultdamage5"},/area/ruin/powered) +"f" = (/mob/living/simple_animal/hostile/faithless,/turf/open/floor/engine/cult,/area/ruin/powered) +"g" = (/turf/open/floor/plasteel/circuit/off,/area/ruin/powered) +"h" = (/turf/closed/indestructible{desc = "The patterns engraved on the wall seem to shift as you try to focus on them. You feel sick."; icon = 'icons/turf/walls/cult_wall.dmi'; icon_state = "cult"},/area/ruin/powered) +"i" = (/turf/open/floor/plating{icon_state = "cultdamage3"},/area/ruin/powered) +"j" = (/turf/open/floor/plating{icon_state = "cultdamage6"},/area/ruin/powered) +"k" = (/obj/effect/gateway,/turf/open/floor/engine/cult,/area/ruin/powered) +"l" = (/mob/living/simple_animal/hostile/faithless,/turf/open/floor/plasteel/circuit/off,/area/ruin/powered) +"m" = (/obj/machinery/wish_granter_dark,/turf/open/floor/plasteel/circuit/gcircuit/off,/area/ruin/powered) +"n" = (/turf/open/floor/plasteel/circuit/gcircuit/off,/area/ruin/powered) +"o" = (/obj/structure/cult/pylon,/turf/open/floor/plasteel/circuit/gcircuit/off,/area/ruin/powered) +"p" = (/obj/structure/signpost,/turf/open/floor/plasteel/circuit/gcircuit/off,/area/ruin/powered) +"q" = (/obj/effect/meatgrinder,/turf/open/floor/plasteel/circuit/gcircuit/off,/area/ruin/powered) +"r" = (/obj/structure/cult/pylon,/turf/open/floor/plasteel/circuit/off,/area/ruin/powered) +"s" = (/turf/open/floor/engine/cult{baseturf = /turf/open/floor/plating/lava/smooth},/area/ruin/powered) +"t" = (/turf/open/floor/plating{icon_state = "cultdamage2"},/area/ruin/powered) +"u" = (/turf/open/floor/carpet,/area/ruin/powered) +"v" = (/mob/living/simple_animal/hostile/faithless,/turf/open/floor/carpet,/area/ruin/powered) +"w" = (/obj/machinery/door/airlock/vault{locked = 1},/turf/open/floor/engine/cult,/area/ruin/powered) +"x" = (/obj/structure/cult/pylon,/turf/open/floor/engine/cult{baseturf = /turf/open/floor/plating/lava/smooth},/area/ruin/powered) +"y" = (/mob/living/simple_animal/hostile/faithless,/turf/open/floor/engine/cult{baseturf = /turf/open/floor/plating/lava/smooth},/area/ruin/powered) +"z" = (/turf/template_noop,/turf/closed/indestructible{desc = "The patterns engraved on the wall seem to shift as you try to focus on them. You feel sick."; icon = 'icons/turf/walls/cult_wall.dmi'; icon_state = "cult"},/area/ruin/powered) +"A" = (/mob/living/simple_animal/hostile/faithless,/turf/template_noop,/area/template_noop) +"B" = (/obj/effect/mob_spawn/human/miner/rig,/turf/open/floor/engine/cult{baseturf = /turf/open/floor/plating/lava/smooth},/area/ruin/powered) +"C" = (/obj/machinery/door/airlock/vault{locked = 1},/turf/open/floor/engine/cult{baseturf = /turf/open/floor/plating/lava/smooth; blocks_air = 1},/area/ruin/powered) +"D" = (/turf/closed/indestructible,/area/template_noop) +"E" = (/obj/item/weapon/paper{info = "meat grinder requires sacri"},/turf/open/floor/engine/cult{baseturf = /turf/open/floor/plating/lava/smooth},/area/template_noop) +"F" = (/turf/open/floor/engine/cult{baseturf = /turf/open/floor/plating/lava/smooth},/area/template_noop) +"G" = (/obj/effect/mob_spawn/human/syndicatecommando,/turf/open/floor/engine/cult{baseturf = /turf/open/floor/plating/lava/smooth},/area/template_noop) +"H" = (/mob/living/simple_animal/hostile/faithless,/turf/open/floor/engine/cult{baseturf = /turf/open/floor/plating/lava/smooth},/area/template_noop) +"I" = (/obj/machinery/door/airlock/vault,/obj/structure/fans/tiny/invisible,/turf/open/floor/engine/cult{baseturf = /turf/open/floor/plating/lava/smooth},/area/template_noop) (1,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(2,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(3,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -b -b -b -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(4,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -b -b -b -a -a -a -a -a -a -a -a -a -b -b -s -s -s -b -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(5,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -b -b -c -c -b -b -a -a -a -a -a -a -a -a -b -s -s -h -s -s -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(6,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -b -c -c -c -c -c -b -b -a -a -a -a -a -a -a -b -s -h -h -h -s -b -b -b -b -b -b -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(7,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -b -c -c -c -c -c -c -b -b -a -a -a -a -a -a -b -s -s -h -h -s -s -s -s -s -s -h -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(8,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -b -c -c -h -h -c -c -b -b -a -a -a -a -a -b -b -s -s -h -h -h -h -h -h -c -h -b -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(9,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -c -f -c -h -c -c -c -b -b -b -b -b -b -b -b -h -s -h -z -s -s -s -s -s -h -s -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(10,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -c -c -c -h -h -c -c -c -c -h -s -s -s -s -h -s -y -h -s -y -h -h -h -h -h -s -b -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(11,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -b -b -c -f -c -d -h -c -c -f -c -h -s -s -h -s -h -y -s -h -y -h -h -s -s -s -h -s -s -b -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(12,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -b -b -b -b -c -h -c -c -c -h -h -c -f -f -c -h -s -s -h -s -h -s -y -h -s -s -s -s -s -s -h -s -s -b -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(13,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -b -b -c -c -c -c -c -h -c -c -h -h -h -h -c -c -f -h -s -s -h -s -s -s -x -h -s -x -s -s -s -s -h -s -s -b -b -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(14,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -b -c -c -c -c -c -c -h -h -c -h -c -c -h -c -c -c -h -h -s -h -s -s -s -s -h -s -s -s -h -s -s -h -s -s -b -s -b -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(15,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -b -h -c -c -c -c -c -c -c -h -c -h -c -f -h -h -c -c -c -h -s -h -h -h -h -h -h -s -s -s -h -s -s -h -s -s -s -s -s -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(16,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -b -c -h -c -c -c -h -h -c -c -h -c -h -c -c -c -h -d -c -c -h -s -c -c -c -c -c -h -h -h -h -h -s -s -h -s -x -s -s -s -b -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(17,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -b -b -c -c -h -h -c -c -c -h -c -c -h -c -h -h -c -c -h -h -c -h -h -s -h -c -c -c -c -c -d -c -h -s -s -s -h -s -s -s -s -s -b -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(18,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -b -b -c -c -c -c -c -h -c -c -c -h -d -c -h -c -c -h -c -c -c -c -c -h -s -s -h -h -h -f -f -c -c -c -h -s -s -s -h -s -s -s -s -s -s -b -a -a -a -a -a -a -D -a -a -a -a -a -a -a -"} -(19,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -c -c -c -c -c -c -c -h -h -c -c -h -c -c -h -c -c -h -h -h -c -c -c -h -s -s -s -s -h -h -h -c -c -c -h -s -s -y -h -s -x -s -s -s -s -b -D -D -D -a -a -a -D -a -a -a -a -a -a -a -"} -(20,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -b -c -c -c -h -d -c -c -c -h -c -c -h -c -c -h -c -c -c -c -h -h -c -c -h -h -s -s -s -s -s -h -h -c -c -h -s -y -s -w -s -s -s -s -s -s -b -a -a -D -D -D -D -a -a -a -a -a -a -a -a -"} -(21,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -b -h -c -c -c -h -h -c -f -c -h -c -c -h -c -c -h -d -c -c -c -c -h -h -c -c -h -h -s -s -s -s -s -h -c -c -h -s -s -s -w -s -s -s -s -s -s -b -a -a -a -D -a -a -a -a -a -a -a -a -a -a -"} -(22,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -c -h -h -h -c -c -h -c -c -c -h -f -c -h -c -c -h -h -c -c -h -c -c -h -c -c -c -h -h -h -x -s -s -h -c -c -h -s -s -s -h -s -x -s -s -s -s -b -D -D -a -a -a -a -a -a -a -a -a -a -a -a -"} -(23,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -c -c -h -h -c -c -h -f -c -c -h -c -c -h -c -c -c -h -c -c -h -c -c -h -h -c -c -c -f -h -h -s -s -h -c -c -h -h -h -h -h -s -s -s -s -s -s -b -a -D -D -a -a -a -a -a -a -a -a -a -a -a -"} -(24,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -c -c -h -h -c -c -h -c -c -c -h -f -c -h -c -c -c -h -c -c -h -f -c -c -h -h -c -f -c -c -h -h -s -h -c -c -c -c -s -s -h -s -s -s -s -s -s -b -D -D -D -D -a -A -a -a -a -a -a -a -a -a -"} -(25,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -c -c -c -h -c -c -h -c -c -c -h -c -c -h -h -c -c -h -c -c -h -h -c -c -c -h -c -s -s -s -s -h -s -h -h -c -c -c -s -s -h -s -x -B -s -s -s -b -a -D -D -D -a -a -a -a -a -a -a -a -a -a -"} -(26,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -c -h -c -h -c -f -h -c -c -c -h -c -c -c -h -c -c -h -c -c -c -h -c -f -c -h -h -s -s -s -s -c -s -s -h -c -c -c -s -s -h -s -s -s -s -s -s -b -D -D -D -D -D -D -D -D -a -a -a -a -a -a -"} -(27,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -c -h -c -f -c -c -h -c -c -h -h -c -c -c -h -c -c -h -h -c -c -h -h -h -h -h -h -s -s -s -s -c -s -h -h -h -h -h -s -s -h -s -s -y -s -s -s -b -a -a -a -a -a -a -a -a -D -D -a -a -a -a -"} -(28,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -c -h -h -c -c -f -h -c -c -h -d -c -c -c -h -c -c -c -h -h -c -c -c -c -c -c -h -h -s -s -s -h -h -h -s -s -s -s -s -s -h -s -x -s -s -s -s -b -a -a -a -a -a -a -a -a -D -a -a -a -a -a -"} -(29,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -c -c -h -d -c -c -h -c -c -h -c -c -c -c -h -h -d -c -c -h -h -h -h -c -c -c -c -h -h -h -h -h -s -s -s -s -s -s -s -s -h -s -s -s -s -s -s -b -E -E -E -E -a -a -a -a -a -a -a -a -a -a -"} -(30,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -c -h -h -h -h -h -h -c -c -c -c -c -c -c -c -h -h -c -c -c -c -c -h -h -h -c -c -c -h -s -s -s -s -s -s -s -s -x -s -s -h -s -s -s -s -s -s -C -F -G -D -D -D -D -D -a -a -a -a -a -a -a -"} -(31,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -c -c -c -c -c -c -h -c -c -c -c -c -c -h -h -h -h -c -f -c -c -c -c -d -h -c -f -c -h -s -s -s -s -s -s -h -h -h -s -s -h -s -x -s -s -s -s -C -D -D -D -H -D -D -a -a -a -a -a -a -a -a -"} -(32,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -b -h -h -h -c -c -h -h -h -c -c -c -h -h -c -c -c -c -c -c -c -c -c -c -h -c -c -h -h -s -s -s -s -h -h -h -s -h -s -s -h -s -s -s -s -s -s -b -E -E -E -E -a -a -D -a -a -a -a -a -a -a -"} -(33,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -b -c -h -h -c -c -c -h -h -h -c -h -c -c -h -h -h -h -h -h -h -c -c -h -c -c -h -s -s -s -s -h -h -x -s -s -h -s -s -h -s -s -s -s -s -s -b -a -a -a -a -a -a -D -D -a -a -a -a -a -a -"} -(34,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -c -c -h -c -c -c -c -d -h -h -h -c -c -h -c -f -f -c -c -h -c -c -c -c -c -h -h -s -s -s -h -s -s -y -s -h -s -s -h -s -x -s -s -s -s -b -a -a -a -a -a -a -D -D -a -a -a -a -a -a -"} -(35,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -c -c -h -h -c -c -c -c -c -c -h -c -c -h -f -c -f -f -c -h -h -c -c -c -c -c -h -s -s -s -s -s -s -s -s -h -s -s -h -s -s -s -s -s -s -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(36,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -c -c -c -h -c -c -c -c -c -c -h -c -c -h -h -h -h -c -f -c -h -c -c -c -c -c -h -s -s -s -s -s -s -h -h -h -s -s -h -s -s -s -s -s -s -b -D -D -a -a -a -a -a -a -a -D -a -a -a -a -"} -(37,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -c -c -c -h -c -c -c -c -c -c -h -c -c -c -c -d -h -c -c -c -h -h -h -h -h -h -h -h -s -s -c -s -h -h -s -s -s -s -h -s -x -s -s -s -b -b -a -D -a -a -a -a -a -a -a -a -a -a -a -a -"} -(38,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -c -c -c -h -h -c -c -c -c -c -h -c -c -c -c -c -h -h -c -c -c -c -c -c -c -c -c -h -h -s -h -h -h -s -s -s -s -y -h -s -s -s -b -b -b -a -a -D -a -a -a -a -a -a -a -a -a -a -a -a -"} -(39,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -b -c -c -c -c -h -h -c -c -c -c -h -h -c -c -c -c -c -h -h -c -c -c -c -c -c -c -c -c -h -h -h -s -s -s -s -s -s -s -h -s -s -b -a -a -a -a -a -D -a -a -a -a -a -a -a -a -a -a -a -a -"} -(40,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -b -c -c -f -f -c -c -h -h -c -c -c -c -h -c -c -c -c -c -c -h -h -h -h -h -h -d -c -c -c -c -c -c -s -s -s -s -s -s -s -b -b -b -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(41,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -h -h -c -c -c -c -c -c -c -h -c -c -c -c -h -h -h -h -h -c -f -c -c -c -h -c -c -c -c -c -c -c -c -c -s -s -s -s -s -c -b -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(42,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -b -h -c -c -c -d -h -h -c -c -h -h -c -f -c -c -c -c -h -c -c -c -c -f -h -h -c -c -c -h -h -h -h -h -c -s -s -s -s -s -b -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(43,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -b -c -h -h -c -c -c -h -h -c -c -c -h -h -h -c -c -f -c -h -c -c -h -h -h -h -c -c -c -c -h -f -c -c -h -h -h -h -h -h -h -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(44,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -b -b -c -c -c -h -h -c -c -h -h -c -c -c -c -d -h -c -c -c -c -h -c -c -h -c -c -c -c -c -c -c -h -c -f -c -c -c -h -h -c -c -b -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(45,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -b -c -c -c -c -c -h -h -c -c -h -h -h -c -c -c -h -h -h -d -c -h -c -c -h -c -c -c -h -h -h -h -h -f -c -c -c -c -c -c -c -c -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(46,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -b -b -c -c -c -c -c -c -h -h -c -c -c -h -h -h -c -c -c -h -h -c -h -c -c -h -c -c -c -h -d -c -c -c -c -h -h -h -h -h -c -c -c -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(47,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -b -c -c -c -c -c -c -c -c -h -c -c -c -c -d -h -c -c -c -c -c -c -h -c -c -h -c -c -c -c -c -c -c -c -h -h -d -h -h -c -c -c -c -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(48,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -b -c -c -c -c -c -c -c -c -h -c -c -c -c -c -h -h -h -c -c -c -c -h -c -c -h -h -h -c -c -c -c -h -h -h -f -c -f -c -f -c -c -b -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(49,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -b -b -c -c -c -c -c -c -c -c -h -h -c -c -f -f -c -c -h -h -h -h -h -h -c -c -c -f -h -h -h -h -h -h -c -c -c -c -c -c -c -c -b -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(50,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -b -c -c -c -c -c -c -c -c -c -c -h -h -h -c -c -c -c -c -c -c -c -d -h -h -c -c -c -c -c -c -c -c -c -c -c -c -h -h -h -h -h -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(51,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -b -c -c -c -c -c -i -c -c -c -c -c -c -h -h -h -c -c -c -c -c -c -c -c -h -h -d -c -c -f -c -c -c -c -c -c -c -h -c -c -c -c -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(52,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -b -c -c -c -c -c -f -c -c -c -d -c -c -c -c -h -c -c -c -c -c -c -c -c -c -h -h -h -h -c -c -c -c -c -c -c -h -h -c -c -c -c -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(53,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -b -c -c -c -c -c -c -c -c -c -c -c -c -c -c -h -h -h -h -h -h -c -c -c -c -c -c -c -h -h -c -c -c -h -h -h -h -f -c -c -c -c -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(54,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -b -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -h -h -h -c -c -c -f -f -c -h -h -h -h -h -d -c -f -c -c -h -c -c -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(55,1,1) = {" -a -a -a -a -a -a -a -a -a -a -b -b -c -c -c -c -c -c -c -j -c -c -c -f -c -c -c -c -c -c -c -c -c -h -h -h -c -c -c -c -c -c -c -c -c -c -c -c -c -f -h -c -c -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(56,1,1) = {" -a -a -a -a -a -a -a -a -a -a -b -c -c -c -c -d -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -h -h -h -h -c -c -c -c -c -c -c -c -c -h -h -h -c -f -b -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(57,1,1) = {" -a -a -a -a -a -a -a -a -a -a -b -c -c -c -c -c -c -c -c -c -c -c -e -c -c -f -c -c -c -c -c -c -c -c -c -c -c -c -h -h -c -c -c -c -c -h -h -h -h -d -c -c -f -c -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(58,1,1) = {" -a -a -a -a -a -a -a -a -a -a -b -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -i -c -c -j -c -c -c -c -c -c -c -c -c -h -h -h -h -h -h -h -c -c -c -c -c -c -c -c -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(59,1,1) = {" -a -a -a -a -a -a -a -a -a -a -b -c -c -c -c -c -c -c -c -c -c -k -c -c -c -c -c -c -s -s -s -c -k -c -c -c -c -c -c -c -c -c -c -c -c -h -c -c -c -c -c -c -c -c -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(60,1,1) = {" -a -a -a -a -a -a -a -a -a -a -b -b -c -c -c -c -e -c -c -c -c -c -c -c -c -c -c -c -c -c -f -c -c -c -c -c -c -c -c -c -c -c -c -c -c -h -w -w -h -h -h -h -h -h -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(61,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -b -c -c -c -c -c -c -f -c -c -c -c -c -c -c -j -c -c -c -c -c -i -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(62,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -b -c -c -c -c -c -c -c -c -c -c -c -d -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -f -c -c -c -d -u -u -u -u -d -c -c -c -c -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(63,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -b -c -c -c -c -f -c -c -c -c -c -c -c -c -c -c -f -c -d -c -c -f -c -c -c -c -c -c -c -c -c -c -c -c -v -u -u -u -c -c -f -c -c -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(64,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -b -b -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -j -c -f -c -c -c -c -c -c -u -u -u -u -c -f -c -c -c -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(65,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -b -b -c -c -c -c -e -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -u -u -v -u -c -c -c -c -c -b -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(66,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -b -c -c -c -c -c -c -c -c -j -c -c -f -c -c -c -c -c -e -c -c -c -c -i -c -c -c -c -c -c -f -c -u -u -u -u -c -c -c -c -c -c -b -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(67,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -b -c -c -c -c -c -c -c -c -c -c -c -c -c -j -c -c -c -c -c -c -c -c -c -c -c -f -c -k -c -c -d -u -u -u -u -d -c -c -c -c -c -c -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(68,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -b -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -u -u -u -u -c -c -c -c -c -c -c -b -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(69,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -b -c -c -c -c -c -k -c -c -f -c -c -c -c -c -c -c -c -f -c -c -c -c -c -d -c -c -c -c -c -c -c -u -u -u -v -c -c -c -c -c -c -c -c -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(70,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -b -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -u -u -u -u -c -c -c -c -c -k -c -c -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(71,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -b -c -c -c -c -c -c -c -c -c -d -c -c -c -c -c -c -c -c -c -c -c -i -c -c -c -c -c -c -f -c -c -u -u -u -u -c -i -c -c -c -c -c -c -b -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(72,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -b -c -c -c -i -c -c -c -c -c -c -c -c -e -c -c -c -c -i -c -c -c -c -c -c -c -c -c -c -c -c -d -u -u -u -u -d -c -c -c -c -c -c -c -c -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(73,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -b -b -c -c -f -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -j -c -c -c -c -c -c -c -c -u -u -u -u -c -c -c -c -c -c -c -c -c -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(74,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -c -c -c -c -c -g -g -c -c -c -c -c -f -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -f -c -u -v -u -u -c -c -c -c -f -c -f -c -c -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(75,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -c -c -c -c -c -c -g -g -g -c -c -c -c -c -c -c -c -f -c -c -c -f -c -c -i -c -c -c -c -c -u -u -u -u -c -c -c -c -c -c -c -c -c -b -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(76,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -c -c -c -c -c -c -c -c -g -c -c -i -c -g -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -u -u -u -u -c -c -c -c -c -c -c -c -c -c -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(77,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -c -g -c -c -c -c -c -l -c -c -c -c -g -g -c -f -c -c -c -c -c -c -c -c -c -c -c -c -c -d -u -u -u -u -d -c -c -c -c -c -c -c -c -c -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(78,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -c -c -g -c -c -c -c -g -c -c -c -c -g -c -c -c -c -c -c -c -d -c -c -c -c -c -c -c -c -c -u -u -u -u -c -c -c -c -c -c -c -c -b -b -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(79,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -c -c -g -g -k -c -c -g -c -c -c -g -c -c -c -c -c -c -c -c -c -c -c -c -c -c -f -c -c -c -v -u -u -u -c -c -f -c -c -c -b -b -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(80,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -c -c -c -g -c -c -c -g -c -c -c -g -c -c -c -c -c -t -c -c -c -c -c -f -c -c -c -c -c -c -u -u -u -u -c -c -c -c -c -b -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(81,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -c -c -c -g -g -c -g -c -c -c -f -g -c -c -d -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -u -u -u -u -c -c -c -c -b -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(82,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -c -c -c -c -g -c -g -c -g -c -c -c -g -c -c -c -c -c -f -j -c -c -c -c -c -c -c -f -c -d -u -u -u -u -d -c -c -b -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(83,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -c -c -c -c -g -c -g -c -g -c -c -c -g -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -b -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(84,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -b -c -c -c -g -c -g -c -c -g -c -g -g -c -g -g -c -c -c -c -c -g -f -c -c -k -c -c -c -c -c -c -c -c -c -b -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(85,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -c -c -c -l -g -g -c -c -g -c -g -c -c -g -c -c -c -c -g -g -g -c -c -c -c -c -c -c -c -c -f -c -c -c -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(86,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -c -c -c -c -g -g -g -d -g -c -g -c -g -g -c -f -c -c -g -c -c -c -c -c -c -c -c -j -c -c -c -c -k -c -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(87,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -b -c -c -c -g -c -g -g -g -g -g -k -g -c -c -c -c -g -g -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -b -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(88,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -c -c -c -g -c -g -g -g -g -c -c -g -c -c -c -g -g -c -c -f -c -c -c -c -d -c -c -c -c -c -c -c -c -c -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(89,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -c -c -c -c -g -g -i -c -g -f -g -c -c -c -c -g -c -c -c -g -c -c -c -c -c -c -c -c -c -c -c -c -c -c -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(90,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -c -c -c -c -g -g -g -c -g -g -g -g -g -c -g -g -r -c -g -g -c -c -c -c -c -c -c -c -c -c -c -c -c -c -b -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(91,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -c -c -i -c -g -g -g -c -g -g -g -c -g -c -g -g -c -g -g -c -c -c -f -c -c -c -c -j -c -c -c -c -c -c -c -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(92,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -c -c -c -g -g -l -g -g -g -g -g -c -g -g -g -c -g -g -c -c -g -g -c -c -c -c -c -c -c -c -f -c -c -c -c -b -b -a -a -a -a -A -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(93,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -b -c -c -c -g -g -g -g -c -g -c -g -l -g -c -g -g -c -c -g -g -c -f -c -c -c -c -c -c -c -c -c -c -c -c -c -b -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(94,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -c -c -c -g -g -g -c -d -g -c -g -g -c -g -g -g -g -g -g -c -c -c -c -c -c -c -c -f -c -c -c -c -d -c -c -c -b -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(95,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -c -c -g -g -g -g -c -c -g -g -l -g -g -g -g -g -g -f -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -b -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(96,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -c -c -c -g -g -g -c -c -g -g -g -g -g -g -f -g -c -c -c -g -c -c -c -c -c -c -c -e -c -c -c -c -c -c -c -c -c -c -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(97,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -c -c -c -c -g -g -g -c -g -g -g -g -g -c -g -g -c -g -g -g -c -c -c -g -g -g -c -c -c -c -c -c -j -c -c -c -c -c -b -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(98,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -c -c -c -c -c -g -g -g -g -c -g -g -g -g -g -g -g -c -g -l -g -g -g -g -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -b -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(99,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -c -c -g -g -i -b -b -g -b -b -g -g -g -g -g -g -g -l -g -c -c -c -c -c -g -c -c -c -c -k -c -c -c -c -c -c -j -c -c -c -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(100,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -c -c -d -g -g -b -g -g -g -b -g -g -g -g -g -c -c -g -g -g -g -g -g -g -g -c -c -c -c -c -f -c -j -c -c -c -c -c -c -c -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(101,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -c -c -c -c -b -b -g -b -g -b -b -g -g -g -g -l -g -g -c -c -c -c -c -f -c -c -c -c -c -c -c -c -c -c -c -f -c -c -c -c -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(102,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -b -c -c -c -b -g -c -g -g -g -b -g -g -g -g -g -g -g -g -g -g -g -c -c -c -c -c -c -d -c -c -c -c -c -c -c -c -c -f -c -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(103,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -c -c -c -b -g -g -g -g -g -b -g -g -g -c -c -c -c -d -c -c -g -g -g -c -c -c -c -c -c -c -c -c -c -c -d -c -c -c -c -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(104,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -c -c -c -b -c -d -g -r -c -b -c -c -g -g -g -c -c -c -c -c -c -c -c -c -c -c -c -c -j -c -c -c -c -c -c -c -c -f -c -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(105,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -b -b -b -b -b -b -n -b -b -b -b -b -c -d -g -g -g -g -c -c -f -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(106,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -b -b -p -n -n -n -n -n -n -n -n -b -c -c -c -c -c -g -c -c -c -c -c -c -f -c -f -c -c -c -c -f -c -c -j -c -c -c -c -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(107,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -b -b -n -n -n -n -n -n -n -n -n -b -c -c -c -f -c -c -c -c -c -k -c -c -c -c -c -c -f -c -c -c -c -c -c -c -f -c -c -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(108,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -b -n -n -n -n -n -n -o -n -n -b -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -e -c -c -c -c -c -c -c -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(109,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -b -b -n -n -n -n -n -b -b -b -b -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -c -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(110,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -b -b -n -n -n -n -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -c -c -c -c -d -c -c -c -c -c -c -c -f -c -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(111,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -b -n -n -n -b -b -b -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -b -b -b -c -c -c -c -c -c -c -f -c -c -c -b -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(112,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -b -b -n -b -b -b -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -c -f -c -c -c -c -f -c -c -c -c -b -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(113,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -b -n -q -n -b -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -c -c -c -c -c -c -c -c -b -b -b -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(114,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -b -n -n -b -n -o -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -c -c -c -b -b -b -b -b -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(115,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -o -n -n -n -n -n -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -b -b -b -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(116,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -n -n -n -n -n -n -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(117,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -b -n -n -n -n -n -n -b -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -A -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(118,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -m -n -n -n -n -n -n -b -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(119,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -n -n -n -o -n -n -n -b -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(120,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -b -b -b -b -b -b -b -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbccccbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbccccccccccccccbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbccccccccccccccccccbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbccccccccccccccccccccccccccccbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbccccccccccccdcccccccccccccccccccccccccccbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbccccccccccccccccceccfcccccccccccccgcccccccccbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbaaaaaaabhhhcccccccifcccccccccccccccccccifccccggcccccccccccccbbbbbbbbbbaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaabbccccccccccbbaaaaabbhchhccccccccccccccccfcccecccccccccccccgggccccccccccccccccccccbbbbbbaaaaaaaaabbbb +aaaaaaaaaaaaaaaaabbbhhccchhhchchbbbbbbbcccchhcccccccccjccccccccccccckccccccccckcgggglcccccicccccccccccccbbbbbbaaabbbbmnb +aaaaaaaaaaaaaaaaabccchhhccchhhchcccccccccccchhcccccccccccccccccccccccccccgccccccccccggggcccgccgcccgdccccbbbbbbbbbbonnnnb +aaaaaaaaaaaaaaaabbccchhhhhfcdhchhccccccfcdccchhhhccdcccccckccccccccccccccggcccccggggggccggggggggccggccccbpnnbbbbbnnnnnnb +aaaaaaaaaaaaaaaabcccccccccccchcchhhccccfchhhcccchhcccccceccccccccjccfcccccgclgggcccccgggggglgggggcigbbbbbnnnnnnbnnnnnnob +aaaaaaaaaaaaaaabbcchhccccfcfchcccchhhhccchhhhcccchccccfccccccdccccccccdcccggcccccggccdggigggggggggbbbggcbnnnnnnnqbnnnnnb +aaaaaaaaaaaaaabbcccdhhhhhhhhhhhhccccchhccccchcccchhccccccccccccccccccccccccccccccccgggggcccggcccggbggcgdbnnnnnnbnnnnnnnb +aaaaaaaaaaaabbbcccccccfcccccccchcccccchhcccchhccfchcccccfccccccccfccccccccccccccfcccccggggggcdcccgggbgggnnnnnnbbbonnnnnb +aaaaaaaaaaaabbhhhcccfcccccccccchhcccccchhhccchdcfchhhcccciccjcccccccccceccciccgggccggggcfgggggggggbggggrbnnnnbbbbbbbbbbb +aaaaaaaaaaabbccchhhccccccchhhccchdccccccchhcchhhcccchcccccccccfcccjccccccfccggcccgggcckcggggccgggcbbbggcbnnobbbbaaaabbba +aaaaaaaaaaabcccccchhhhhhhhhdcccchhcccccccchdccchcccchcccccsccccccccccccccccggccccccccgggcgccgglgggggbbbbbnnnbbbaaaaaaaaa +aaaaaaaaaaabcccccccccfcfccccccccchcccccccfhhhcchhccchccccjscccdcccccccccccccccccdccgggcccggglggggggggggcbnnnbbaaaaaaaaaa +aaaaaaaaaaabccchccccccccccccccchhhhhhhhccccchccchccchcccccsfccccccccccccccccfccccccgcccccccggcgggggggggcbbbbbbaaaaaaaaaa +aaaaabbaaabbccchhhhhhhhhhccccchhcccccchhhccchhcchccchhccccccccccceccfccicccccccccccccfcccgggcgggcgggggggcccccbaaaaaaaaaa +aaaabbbbaabccccccdcccccchhhhhchccccccccchcfcdhcchcccchcccckcicfcccccccccccfcccctcccccccggggcgggfggggggcgdccccbaaaaaaaaaa +aaaabccbbbbhhhcccccccccccccchhhchhhhcccchccccccchdccchhccccccccccccccccccccccccccfccccggcrcggggggggclgcggccccbaaaaaaaaaa +aaabbcccccccchhhhhhhhhccccccdhhchcfhcccchhhhhhhhhhcccchccccccccccccccccccccccccccjccgggcccggcggccggcggccgcfccbaaaaaaaaaa +aaabccccfcfcccccccccdhhhhhhccccchfchdccchcccccccchhccchhcccccccccccccciccccccdccccccgccccggccgfcgclgggccgccccbaaaaaaaaaa +aaabccchcccchhhhhccccccccchhccfchffhhhcccccccccccchhccchcccccccjciccccccjcfccccccccggccfggccggccggggcgdcggcccbaaaaaaaaaa +aaabbcchhhdhhccchhhcccccccchhccchcfcchhcfchhhhhhccdhcfchccccccccccccdccccccccccccccfcccccccggccgglcgcgcccccccbaaaaaaaaaa +aaaabbccchhhhcfccchcchhhhccchccchccfcchhcchcccchfcchcfchhccccccfcccccccccccccccfcccccccccccgcccccgcgcgcccccccbaaaaaaaaaa +aaaaabbccccchhhccchhcccfhhhchccchhhcccchcfhcccchhcchhccchhccccccccfcccccccicccccccccccccccfcfccccgcgcggcfccccbaaaaaaaaaa +aaaaaabbcccfcchhhcchhccccchchhcccchhhcchchhccccchcfchhccchcccfccccccccccccccccccccckcccccccccccccgcgccgccckccbaaaaaaaaaa +aaaaaaabbcffcccdhccchhhccfhcchdccccchcchhhcchhcchcccchccchcccccccckcccccccccccfccccccccdccccccccggcgfcgccccccbaaaaaaaaaa +aaaaaaaabcccfccccccccchhcchcchhhhccchcchcccchdcchcccchccchccccccccccccfccccccccccfccccccccccccccgcggcccccccccbaaaaaaaaaa +aaaaaaaabhhhhhcchhhhccchhhhccccccccchcchcccchccchcccchccchcccccccfcccccccfcccccccccccjccccccccccgccccccccfcccbbaaaaaaaaa +aaaaaaaabsssshhhhsshhcccchhhccfccccchccdcccchcchhccchhccchcccdccccdccccdccccdccccdccccccccjcccccccccccccccccccbaaaaaaaaa +aaaaaaaabssssssssssshhcfssshhcchhhcchcccchhhhcchcccchdcchhhhcuvuuuuuuuuuuuuuuuvuuucccccccccccfcecccccccccfccccbaaaaaaaaa +aaaaaaaabshhhhhchhssshfcsssshhhhshhhhcccchfcfchhcccchccchccwcuuuuuuuuuuuuvuuuuuuuuccfccccccccccccccccdccccccccbbbbbaaaaa +aaabbbbbbssssshcchssshhcsssshssssssshhccchcfchhfccchhfcchccwcuuuvuuuuuuuuuuuuuuuuucccccccccfcccccckccccjccfcccccccbaaaaa +aabbsssbbhhhsshcchhssxhhsssshsssssssshhcchccchdcchhhfcchhcchcuuuuuuuvuuuuuuuuuuuuuccckcccccccccccccfcccccccccdcfccbaaaaa +aabsshsshsyssshccfhsssshhcchhssssssssshcchhcchhfchccccfhdcchcdccccdccccdccccdccccdccccccccccccccccccccccccccccccccbaaaaa +aabshhhssysyxshccfhhssssssshsssshhsschhccchcchhcchccchhhccchcccfcccccciccccccccccccbbbbccccccdccjccjcccccfcecccccbbaaaaa +aabsshhhhhhhhhhhccchhhhhhshhssshhsssshsssshhchcfchccccccccchccfcccccccccccccccfcccbbaabbbbcccccccccccccccccccccccbaaaaaa +aabbssshzsysssshdccccccchhhsssshxssshhsssshhccccchcccccffcchcccccccccccccccccccccbbaaaaaabbbcccccccccccccccccccccbaaaaaa +aaabbbshsyhsxsshcccccccccchssshhsyshhssssshcccccbbbbbbbbccchcccccccccccccfccccccbbaaaaaaaaabbcccccccfcdccjcccccfcbaaaaaa +aaaaabshshhsssshhhhhhhhccchssshsssshsssssshccccbbaaaaaabbbbbbbbbbcccckcccccccccbbaaaaaaaaaaabbccccjcccccccccccfccbaaaaaa +aaaaabshshssshhhsssssshccchssxhhhhhhsssssshbbbbbaaaaaaaaaaaaaaaabbcccccccfccccbbaaaaaaaaaaaaabbcccccccccccfcccccbbaaaaaa +aaaaabshshsssssssssysshssssssssssssssssscbbbaaaaaaaaaaaaaaaaaaaaabbbccccccccccbaaaaaaaaaaaaaaabbbccccfcfcccccfccbaaaaaaa +aaaaabscshssssssssyssshssssssssssssssyssbbaaaaaaaaaaaaaaaaaaaaaaaaabbbbccccccbbaaaaaaaaaaaaaaaaabbccccccccccccccbaaaaaaa +aaaaabhhhhhhhhhhhhhwwhhhhhhhhhhhhhhhhhhbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbccbaaaaaaaaaaaaaAaaaaabbbbbbbbbbbbbbbbaaaaaaa +aaaaabbbsssssssssssssssssssssssssssssssbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbaaaaaaaa +aaaaaaabbbsssssxssxssxssxssxssxssxssxssbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaabbbbbssssssssssBsysssssssssssbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaabbbssssssssssssssssssssssssbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaabbsssssssssssssssssssssssbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaAaaa +aaaaaaaaaaaaabbbbsssssssssssssssssssbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaabbbbbbbbbbbbbbCCbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaDEFDaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaDGFDaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaDFFDaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaDFHDaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaDIIDaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa "} diff --git a/_maps/RandomRuins/LavaRuins/lavaland_surface_xeno_nest.dmm b/_maps/RandomRuins/LavaRuins/lavaland_surface_xeno_nest.dmm index 82ca15d842..75239b9ae5 100644 --- a/_maps/RandomRuins/LavaRuins/lavaland_surface_xeno_nest.dmm +++ b/_maps/RandomRuins/LavaRuins/lavaland_surface_xeno_nest.dmm @@ -53,7 +53,7 @@ }, /obj/structure/alien/weeds{ desc = "A large mottled egg."; - obj_integrity = 100; + health = 100; icon_state = "egg_hatched"; name = "egg" }, @@ -141,7 +141,7 @@ }, /obj/structure/alien/weeds{ desc = "A large mottled egg."; - obj_integrity = 100; + health = 100; icon_state = "egg_hatched"; name = "egg" }, @@ -206,7 +206,7 @@ item_state = "facehugger_impregnated"; stat = 2 }, -/obj/item/weapon/gun/ballistic/automatic/pistol, +/obj/item/weapon/gun/projectile/automatic/pistol, /turf/open/floor/plating/asteroid/basalt/lava_land_surface, /area/awaycontent/a5{ always_unpowered = 1; @@ -336,7 +336,7 @@ /obj/structure/alien/weeds, /obj/structure/alien/weeds{ desc = "A large mottled egg."; - obj_integrity = 100; + health = 100; icon_state = "egg_hatched"; name = "egg" }, @@ -407,7 +407,7 @@ }, /obj/structure/alien/weeds{ desc = "A large mottled egg."; - obj_integrity = 100; + health = 100; icon_state = "egg_hatched"; name = "egg" }, @@ -426,7 +426,7 @@ /obj/structure/alien/weeds, /obj/structure/alien/weeds{ desc = "A large mottled egg."; - obj_integrity = 100; + health = 100; icon_state = "egg_hatched"; name = "egg" }, @@ -615,15 +615,7 @@ "O" = ( /obj/structure/alien/weeds/node, /turf/template_noop, -/area/awaycontent/a5{ - always_unpowered = 1; - has_gravity = 1; - name = "The Hive"; - power_environ = 0; - power_equip = 0; - power_light = 0; - poweralm = 0 - }) +/area/template_noop) "P" = ( /obj/structure/alien/weeds{ icon_state = "weeds2" @@ -652,29 +644,13 @@ "R" = ( /obj/structure/alien/weeds, /turf/template_noop, -/area/awaycontent/a5{ - always_unpowered = 1; - has_gravity = 1; - name = "The Hive"; - power_environ = 0; - power_equip = 0; - power_light = 0; - poweralm = 0 - }) +/area/template_noop) "S" = ( /obj/structure/alien/weeds{ icon_state = "weeds2" }, /turf/template_noop, -/area/awaycontent/a5{ - always_unpowered = 1; - has_gravity = 1; - name = "The Hive"; - power_environ = 0; - power_equip = 0; - power_light = 0; - poweralm = 0 - }) +/area/template_noop) "T" = ( /obj/structure/alien/weeds/node, /obj/structure/alien/resin/wall, @@ -1492,7 +1468,7 @@ a a a a -c +P "} (26,1,1) = {" a @@ -1523,8 +1499,8 @@ c a a a -b -h +U +N "} (27,1,1) = {" a @@ -1553,10 +1529,10 @@ g q b c -h -c -y -g +N +P +T +R "} (28,1,1) = {" a @@ -1587,8 +1563,8 @@ q b O R -p -q +V +S "} (29,1,1) = {" a @@ -1619,8 +1595,8 @@ l b O S -p -g +V +R "} (30,1,1) = {" a @@ -1649,10 +1625,10 @@ h c b c -c -y -q -p +P +T +S +V "} (31,1,1) = {" a @@ -1682,9 +1658,9 @@ a a a a -c -g -q +P +R +S "} (32,1,1) = {" a @@ -1714,9 +1690,9 @@ a a a a -h -p -g +N +V +R "} (33,1,1) = {" a @@ -1745,9 +1721,9 @@ a a a a -c -c -q +P +P +S a "} (34,1,1) = {" @@ -1777,7 +1753,7 @@ a a a a -c +P a a a diff --git a/_maps/RandomRuins/SpaceRuins/TheDerelict.dmm b/_maps/RandomRuins/SpaceRuins/TheDerelict.dmm index 66889720c2..b0a18c5fa3 100644 --- a/_maps/RandomRuins/SpaceRuins/TheDerelict.dmm +++ b/_maps/RandomRuins/SpaceRuins/TheDerelict.dmm @@ -1,872 +1,14509 @@ -"aa" = (/turf/open/space,/area/space) -"ab" = (/obj/structure/lattice,/turf/open/space,/area/space) -"ac" = (/obj/structure/grille,/turf/open/floor/plating/airless,/area/ruin/unpowered/no_grav) -"ad" = (/obj/machinery/power/tracker,/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/open/floor/plasteel/airless,/area/solar/derelict_starboard) -"ae" = (/obj/structure/lattice/catwalk,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/space,/area/solar/derelict_starboard) -"af" = (/turf/open/floor/plating/airless,/turf/open/floor/plating/airless{icon_state = "platingdmg2"},/area/solar/derelict_starboard) -"ag" = (/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/open/floor/plasteel/airless{icon_state = "damaged5"},/area/solar/derelict_starboard) -"ah" = (/obj/machinery/power/solar{id = "derelictsolar"; name = "Derelict Solar Array"},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/open/floor/plasteel/airless,/area/solar/derelict_starboard) -"ai" = (/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/derelict_starboard) -"aj" = (/obj/structure/lattice/catwalk,/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/open/space,/area/solar/derelict_starboard) -"ak" = (/obj/structure/lattice/catwalk,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/space,/area/solar/derelict_starboard) -"al" = (/obj/structure/lattice/catwalk,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/open/space,/area/solar/derelict_starboard) -"am" = (/obj/structure/lattice/catwalk,/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/open/space,/area/solar/derelict_starboard) -"an" = (/obj/structure/lattice/catwalk,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/open/space,/area/solar/derelict_starboard) -"ao" = (/obj/structure/lattice/catwalk,/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/open/space,/area/solar/derelict_starboard) -"ap" = (/obj/machinery/power/solar{id = "derelictsolar"; name = "Derelict Solar Array"},/obj/structure/cable,/turf/open/floor/plasteel/airless,/area/solar/derelict_starboard) -"aq" = (/obj/structure/lattice/catwalk,/obj/structure/cable,/turf/open/space,/area/solar/derelict_starboard) -"ar" = (/obj/structure/lattice/catwalk,/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/open/space,/area/solar/derelict_starboard) -"as" = (/turf/closed/wall,/area/derelict/solar_control) -"at" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/turf/open/floor/plating,/area/derelict/solar_control) -"au" = (/obj/machinery/door/airlock/external{name = "External Engineering"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/open/floor/plating,/area/derelict/solar_control) -"av" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plating,/area/derelict/solar_control) -"aw" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/open/floor/plating,/area/derelict/solar_control) -"ax" = (/turf/closed/wall/r_wall,/area/derelict/bridge/ai_upload) -"ay" = (/turf/open/floor/plating/airless,/area/ruin/unpowered/no_grav) -"az" = (/turf/open/floor/plasteel,/area/derelict/solar_control) -"aA" = (/obj/structure/window/reinforced{dir = 8},/turf/open/floor/plasteel,/area/derelict/solar_control) -"aB" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/floor/plasteel,/area/derelict/solar_control) -"aC" = (/obj/machinery/power/smes,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/open/floor/plasteel,/area/derelict/solar_control) -"aD" = (/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/power/solar_control{id = "derelictsolar"; name = "Primary Solar Control"; track = 0},/obj/structure/cable,/turf/open/floor/plasteel,/area/derelict/solar_control) -"aE" = (/obj/structure/grille,/turf/open/floor/plating/airless,/area/space) -"aF" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/turf/open/floor/plating,/area/derelict/solar_control) -"aG" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel,/area/derelict/solar_control) -"aH" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/open/floor/plasteel,/area/derelict/solar_control) -"aI" = (/obj/machinery/power/terminal{icon_state = "term"; dir = 1},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/open/floor/plasteel,/area/derelict/solar_control) -"aJ" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/light/small{dir = 4},/turf/open/floor/plasteel,/area/derelict/solar_control) -"aK" = (/obj/machinery/light/small{dir = 8},/turf/open/floor/plasteel,/area/derelict/bridge/ai_upload) -"aL" = (/obj/machinery/door/airlock/external{name = "Air Bridge Access"},/turf/open/floor/plasteel,/area/derelict/bridge/ai_upload) -"aM" = (/obj/machinery/door/airlock/external{name = "Air Bridge Access"},/turf/open/floor/plating,/area/derelict/solar_control) -"aN" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel,/area/derelict/solar_control) -"aO" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/turf/open/floor/plasteel,/area/derelict/solar_control) -"aP" = (/obj/structure/window/reinforced,/turf/open/floor/plasteel,/area/derelict/solar_control) -"aQ" = (/obj/machinery/door/window,/turf/open/floor/plasteel,/area/derelict/solar_control) -"aR" = (/turf/open/floor/plasteel,/area/derelict/bridge/ai_upload) -"aS" = (/turf/closed/wall/r_wall,/area/derelict/solar_control) -"aT" = (/obj/machinery/power/apc{dir = 8; environ = 0; equipment = 0; lighting = 0; locked = 0; name = "Starboard Solar APC"; pixel_x = -24; pixel_y = 0},/obj/structure/cable,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/open/floor/plasteel,/area/derelict/solar_control) -"aU" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/open/floor/plasteel,/area/derelict/solar_control) -"aV" = (/obj/machinery/door/airlock/external{name = "External Engineering"},/turf/open/floor/plating,/area/derelict/solar_control) -"aW" = (/obj/machinery/door/airlock/highsecurity,/turf/open/floor/plasteel,/area/derelict/bridge/ai_upload) -"aX" = (/obj/structure/frame/computer,/turf/open/floor/plasteel,/area/derelict/bridge/ai_upload) -"aY" = (/turf/closed/wall/r_wall,/area/ruin/unpowered/no_grav) -"aZ" = (/obj/machinery/computer/monitor,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/open/floor/plasteel,/area/derelict/solar_control) -"ba" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/light/small,/turf/open/floor/plasteel,/area/derelict/solar_control) -"bb" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel,/area/derelict/solar_control) -"bc" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/turf/open/floor/plating,/area/derelict/solar_control) -"bd" = (/obj/structure/grille/broken,/turf/open/floor/plating/airless,/area/ruin/unpowered/no_grav) -"be" = (/obj/machinery/light/small,/turf/open/floor/plasteel,/area/derelict/bridge/ai_upload) -"bf" = (/obj/structure/window/reinforced{dir = 4},/obj/machinery/porta_turret_cover,/turf/open/floor/plasteel,/area/derelict/bridge/ai_upload) -"bg" = (/obj/machinery/porta_turret_cover,/turf/open/floor/plasteel,/area/derelict/bridge/ai_upload) -"bh" = (/obj/machinery/door/airlock/engineering{name = "Starboard Solar Access"; req_access_txt = "10"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel,/area/derelict/solar_control) -"bi" = (/obj/structure/grille,/turf/open/space,/area/ruin/unpowered/no_grav) -"bj" = (/obj/structure/grille,/turf/open/floor/plating/airless,/area/derelict/bridge/ai_upload) -"bk" = (/obj/structure/closet,/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plasteel,/area/derelict/solar_control) -"bl" = (/turf/closed/wall,/area/derelict/bridge/ai_upload) -"bm" = (/obj/machinery/door/window,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel,/area/derelict/solar_control) -"bn" = (/obj/machinery/computer/atmos_alert,/turf/open/floor/plasteel,/area/derelict/bridge/ai_upload) -"bo" = (/obj/machinery/light/small{dir = 1},/turf/open/floor/plasteel,/area/derelict/bridge/ai_upload) -"bp" = (/obj/machinery/door/window{base_state = "right"; dir = 4; icon_state = "right"},/turf/open/floor/plasteel,/area/derelict/bridge/ai_upload) -"bq" = (/obj/machinery/light/small{dir = 8},/turf/open/floor/plasteel,/area/derelict/solar_control) -"br" = (/obj/item/stack/cable_coil/cut{amount = 2; dir = 2; icon_state = "coil_red2"},/turf/open/floor/plasteel,/area/derelict/solar_control) -"bs" = (/turf/open/floor/plasteel{icon_state = "damaged1"},/area/derelict/solar_control) -"bt" = (/obj/machinery/door/window,/turf/open/floor/plasteel,/area/derelict/bridge/ai_upload) -"bu" = (/turf/open/floor/plasteel{icon_state = "damaged5"},/area/derelict/solar_control) -"bv" = (/obj/item/weapon/stock_parts/matter_bin,/turf/open/floor/plasteel{icon_state = "damaged4"},/area/derelict/solar_control) -"bw" = (/obj/structure/rack,/obj/item/weapon/circuitboard/machine/smes,/turf/open/floor/plasteel,/area/derelict/bridge/ai_upload) -"bx" = (/obj/structure/rack,/obj/item/weapon/circuitboard/machine/microwave,/turf/open/floor/plasteel,/area/derelict/bridge/ai_upload) -"by" = (/obj/structure/rack,/turf/open/floor/plasteel,/area/derelict/bridge/ai_upload) -"bz" = (/turf/open/floor/plasteel/airless,/area/derelict/bridge/ai_upload) -"bA" = (/obj/structure/closet,/obj/effect/spawner/lootdrop/maintenance{lootcount = 3; name = "3maintenance loot spawner"},/turf/open/floor/plasteel,/area/derelict/solar_control) -"bB" = (/turf/open/floor/plasteel{icon_state = "damaged2"},/area/derelict/solar_control) -"bC" = (/obj/item/stack/cable_coil/cut{amount = 2; dir = 2; icon_state = "coil_red2"},/turf/open/floor/plasteel{icon_state = "damaged3"},/area/derelict/solar_control) -"bD" = (/obj/structure/rack,/obj/item/weapon/circuitboard/machine/cryo_tube,/turf/open/floor/plasteel,/area/derelict/bridge/ai_upload) -"bE" = (/turf/open/floor/plasteel/airless{icon_state = "damaged4"},/area/derelict/bridge/ai_upload) -"bF" = (/turf/open/floor/plasteel/airless{icon_state = "damaged3"},/area/derelict/bridge/ai_upload) -"bG" = (/obj/machinery/light{dir = 1},/turf/open/floor/plasteel/airless,/area/derelict/bridge/ai_upload) -"bH" = (/obj/structure/closet,/obj/effect/spawner/lootdrop/maintenance{lootcount = 2; name = "2maintenance loot spawner"},/turf/open/floor/plasteel,/area/derelict/solar_control) -"bI" = (/obj/machinery/light/small{dir = 8},/turf/open/floor/plasteel/airless,/area/derelict/bridge/ai_upload) -"bJ" = (/obj/machinery/door/window{base_state = "right"; dir = 4; icon_state = "right"},/turf/open/floor/plasteel/airless,/area/derelict/bridge/ai_upload) -"bK" = (/turf/open/floor/plasteel/airless{icon_state = "damaged2"},/area/derelict/bridge/ai_upload) -"bL" = (/turf/open/space,/area/derelict/bridge/ai_upload) -"bM" = (/obj/item/weapon/stock_parts/console_screen,/turf/open/space,/area/derelict/bridge/ai_upload) -"bN" = (/turf/open/floor/plasteel/airless/circuit,/area/derelict/bridge/ai_upload) -"bO" = (/turf/open/floor/plating/airless,/area/derelict/bridge/ai_upload) -"bP" = (/obj/machinery/porta_turret_cover,/turf/open/floor/plasteel/airless,/area/derelict/bridge/ai_upload) -"bQ" = (/obj/item/device/aicard,/turf/open/floor/plasteel/airless{icon_state = "damaged2"},/area/derelict/bridge/ai_upload) -"bR" = (/obj/structure/lattice,/turf/open/space,/area/derelict/bridge/ai_upload) -"bS" = (/obj/machinery/light/small{dir = 4},/turf/open/floor/plasteel,/area/derelict/solar_control) -"bT" = (/obj/structure/rack,/obj/item/weapon/circuitboard/computer/solar_control,/turf/open/floor/plasteel,/area/derelict/bridge/ai_upload) -"bU" = (/obj/structure/rack,/obj/item/weapon/circuitboard/machine/autolathe,/obj/item/weapon/circuitboard/machine/protolathe{pixel_x = -5; pixel_y = -3},/turf/open/floor/plasteel,/area/derelict/bridge/ai_upload) -"bV" = (/obj/structure/rack,/obj/item/weapon/circuitboard/machine/circuit_imprinter,/turf/open/floor/plasteel,/area/derelict/bridge/ai_upload) -"bW" = (/obj/machinery/power/apc{dir = 8; name = "Worn-out APC"; pixel_x = -24; pixel_y = 0},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/open/floor/plasteel/airless,/area/derelict/bridge/ai_upload) -"bX" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/open/floor/plasteel/airless/circuit,/area/derelict/bridge/ai_upload) -"bY" = (/obj/structure/frame/computer,/obj/item/weapon/circuitboard/computer/rdconsole,/turf/open/floor/plasteel/airless,/area/derelict/bridge/ai_upload) -"bZ" = (/obj/structure/frame/computer,/turf/open/floor/plasteel/airless,/area/derelict/bridge/ai_upload) -"ca" = (/obj/machinery/door/airlock/external,/turf/open/floor/plasteel,/area/derelict/solar_control) -"cb" = (/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plasteel/airless{icon_state = "damaged4"},/area/space) -"cc" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plasteel/airless/circuit,/area/derelict/bridge/ai_upload) -"cd" = (/obj/machinery/light,/turf/open/floor/plasteel/airless,/area/derelict/bridge/ai_upload) -"ce" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/closed/wall/r_wall,/area/derelict/bridge/ai_upload) -"cf" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/closed/wall/r_wall,/area/derelict/bridge/ai_upload) -"cg" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/closed/wall/r_wall,/area/derelict/bridge/ai_upload) -"ch" = (/turf/closed/wall,/area/ruin/unpowered/no_grav) -"ci" = (/turf/closed/wall/r_wall,/area/space) -"cj" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/closed/wall/r_wall,/area/derelict/bridge/ai_upload) -"ck" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/open/floor/plasteel,/area/derelict/solar_control) -"cl" = (/turf/closed/wall/r_wall,/area/derelict/gravity_generator) -"cm" = (/obj/machinery/light/small,/turf/open/floor/plasteel,/area/derelict/solar_control) -"cn" = (/obj/item/weapon/ore/iron,/obj/item/weapon/ore/iron,/obj/item/weapon/ore/iron,/turf/open/space,/area/space) -"co" = (/turf/open/floor/plasteel/airless{icon_state = "damaged2"},/area/derelict/gravity_generator) -"cp" = (/obj/machinery/light/small{dir = 1},/turf/open/floor/plasteel/airless{icon_state = "damaged5"},/area/derelict/gravity_generator) -"cq" = (/obj/item/weapon/stock_parts/manipulator,/turf/open/floor/plasteel/airless{icon_state = "damaged2"},/area/derelict/gravity_generator) -"cr" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/closed/wall,/area/derelict/bridge/access) -"cs" = (/turf/closed/wall,/area/derelict/bridge/access) -"ct" = (/obj/machinery/door/airlock/maintenance,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel,/area/derelict/bridge/access) -"cu" = (/turf/open/floor/plasteel/airless{icon_state = "damaged4"},/area/derelict/gravity_generator) -"cv" = (/obj/item/weapon/ore/slag,/turf/open/floor/plasteel/airless{icon_state = "damaged4"},/area/derelict/gravity_generator) -"cw" = (/turf/open/floor/plasteel/airless{icon_state = "damaged5"},/area/derelict/gravity_generator) -"cx" = (/turf/open/floor/plasteel,/area/derelict/bridge/access) -"cy" = (/obj/structure/rack,/obj/item/weapon/melee/classic_baton,/turf/open/floor/plasteel,/area/derelict/bridge/access) -"cz" = (/obj/structure/rack,/obj/machinery/light/small{dir = 1},/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plasteel,/area/derelict/bridge/access) -"cA" = (/obj/structure/rack,/obj/item/clothing/head/helmet/swat,/turf/open/floor/plasteel,/area/derelict/bridge/access) -"cB" = (/obj/structure/rack,/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plasteel,/area/derelict/bridge/access) -"cC" = (/obj/structure/rack,/obj/item/weapon/electronics/apc,/turf/open/floor/plasteel,/area/derelict/bridge/access) -"cD" = (/obj/structure/rack,/obj/item/weapon/circuitboard/machine/smes,/turf/open/floor/plasteel,/area/derelict/bridge/access) -"cE" = (/obj/structure/rack,/obj/item/weapon/stock_parts/capacitor,/obj/item/weapon/stock_parts/manipulator,/turf/open/floor/plasteel,/area/derelict/bridge/access) -"cF" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel,/area/derelict/bridge/access) -"cG" = (/obj/item/weapon/screwdriver,/turf/open/floor/plasteel/airless{icon_state = "damaged5"},/area/derelict/gravity_generator) -"cH" = (/obj/machinery/gravity_generator/main/station{on = 0},/turf/open/floor/plasteel/airless,/area/derelict/gravity_generator) -"cI" = (/obj/item/weapon/ore/slag,/turf/open/space,/area/space) -"cJ" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/closed/wall,/area/derelict/bridge/access) -"cK" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel,/area/derelict/bridge/access) -"cL" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/open/floor/plasteel,/area/derelict/bridge/access) -"cM" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/open/floor/plasteel,/area/derelict/bridge/access) -"cN" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/open/floor/plasteel,/area/derelict/bridge/access) -"cO" = (/turf/open/floor/plasteel/airless,/area/derelict/gravity_generator) -"cP" = (/obj/item/stack/cable_coil/cut,/turf/open/floor/plasteel/airless{icon_state = "damaged4"},/area/derelict/gravity_generator) -"cQ" = (/obj/structure/cable,/obj/machinery/power/apc{dir = 0; name = "Worn-out APC"; pixel_y = -24},/turf/open/floor/plasteel,/area/derelict/bridge/access) -"cR" = (/obj/structure/rack,/obj/item/weapon/stock_parts/cell/high,/obj/item/weapon/stock_parts/cell/high,/obj/item/weapon/stock_parts/cell/high,/obj/item/weapon/stock_parts/cell/high,/obj/item/weapon/stock_parts/cell/high,/obj/item/weapon/stock_parts/cell/high,/turf/open/floor/plating,/area/derelict/bridge/access) -"cS" = (/obj/machinery/light/small{dir = 4},/obj/structure/rack,/obj/item/stack/cable_coil/cut,/obj/item/stack/cable_coil/cut,/turf/open/floor/plasteel,/area/derelict/bridge/access) -"cT" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/turf/open/floor/plating,/area/derelict/bridge/access) -"cU" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/turf/open/floor/plating,/area/derelict/bridge/access) -"cV" = (/obj/machinery/door/airlock/command{name = "E.V.A."; req_access = null; req_access_txt = "18"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel,/area/derelict/bridge/access) -"cW" = (/obj/machinery/door/airlock/engineering{name = "Engineering Secure Storage"; req_access_txt = "10"},/turf/open/floor/plasteel,/area/derelict/bridge/access) -"cX" = (/obj/machinery/door/firedoor,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel,/area/derelict/bridge/access) -"cY" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/turf/open/floor/plating/airless,/area/derelict/gravity_generator) -"cZ" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/turf/open/floor/plating/airless,/area/derelict/gravity_generator) -"da" = (/obj/machinery/door/airlock/engineering{name = "Engineering Access"; req_access_txt = "10"},/turf/open/floor/plasteel,/area/derelict/gravity_generator) -"db" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/turf/open/floor/plating/airless,/area/derelict/gravity_generator) -"dc" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plating/airless,/area/derelict/gravity_generator) -"dd" = (/turf/open/floor/plating,/area/derelict/bridge/access) -"de" = (/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plasteel/airless/solarpanel,/area/ruin/unpowered/no_grav) -"df" = (/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/item/wallframe/apc,/turf/open/floor/plating/airless,/area/derelict/gravity_generator) -"dg" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plating/airless,/area/derelict/gravity_generator) -"dh" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/floor/plating/airless,/area/derelict/gravity_generator) -"di" = (/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/frame/machine,/obj/item/weapon/stock_parts/console_screen,/turf/open/floor/plating/airless,/area/derelict/gravity_generator) -"dj" = (/turf/open/floor/plasteel/airless/solarpanel,/area/ruin/unpowered/no_grav) -"dk" = (/obj/item/stack/cable_coil/cut,/turf/open/space,/area/space) -"dl" = (/obj/machinery/light/small{dir = 8},/turf/open/floor/plasteel,/area/derelict/bridge/access) -"dm" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/floor/plating,/area/derelict/bridge/access) -"dn" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/open/floor/plasteel,/area/derelict/bridge/access) -"do" = (/obj/machinery/door/firedoor,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel,/area/derelict/bridge/access) -"dp" = (/obj/machinery/door/airlock/glass,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel,/area/derelict/bridge/access) -"dq" = (/obj/item/weapon/reagent_containers/food/drinks/beer,/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/open/floor/plasteel,/area/derelict/bridge/access) -"dr" = (/turf/closed/wall/r_wall,/area/derelict/singularity_engine) -"ds" = (/obj/machinery/light/small{dir = 8},/obj/structure/table,/obj/item/weapon/paper{info = "If the equipment breaks there should be enough spare parts in our engineering storage near the north east solar array."; name = "Equipment Inventory"},/turf/open/floor/plasteel/airless,/area/derelict/gravity_generator) -"dt" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plating/airless,/area/derelict/gravity_generator) -"du" = (/obj/machinery/light/small{dir = 4},/obj/item/weapon/stock_parts/matter_bin{pixel_x = -10; pixel_y = 5},/obj/item/weapon/stock_parts/matter_bin{pixel_x = 5; pixel_y = 5},/obj/item/weapon/stock_parts/matter_bin,/turf/open/floor/plating/airless,/area/derelict/gravity_generator) -"dv" = (/obj/item/weapon/stock_parts/matter_bin,/turf/open/space,/area/space) -"dw" = (/obj/structure/window/reinforced,/turf/open/floor/plasteel,/area/derelict/bridge/access) -"dx" = (/obj/machinery/door/window,/turf/open/floor/plasteel,/area/derelict/bridge/access) -"dy" = (/obj/structure/window/reinforced,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel,/area/derelict/bridge/access) -"dz" = (/turf/closed/wall,/area/derelict/bridge) -"dA" = (/obj/structure/sign/electricshock,/turf/closed/wall/r_wall,/area/derelict/singularity_engine) -"dB" = (/obj/structure/sign/securearea,/turf/closed/wall/r_wall,/area/derelict/singularity_engine) -"dC" = (/obj/machinery/door/airlock/engineering{name = "Engineering Access"; req_access_txt = "10"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plating/airless,/area/derelict/gravity_generator) -"dD" = (/obj/structure/sign/securearea{name = "ENGINEERING ACCESS"},/turf/closed/wall/r_wall,/area/derelict/gravity_generator) -"dE" = (/obj/effect/spawner/lootdrop/maintenance,/turf/open/space,/area/space) -"dF" = (/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plasteel,/area/derelict/bridge/access) -"dG" = (/obj/structure/frame/computer,/turf/open/floor/plasteel,/area/derelict/bridge) -"dH" = (/obj/structure/frame/computer,/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/open/floor/plasteel,/area/derelict/bridge) -"dI" = (/obj/structure/table,/obj/effect/spawner/lootdrop/maintenance{lootcount = 2; name = "2maintenance loot spawner"},/turf/open/floor/plasteel,/area/derelict/bridge) -"dJ" = (/obj/machinery/computer/security,/turf/open/floor/plasteel,/area/derelict/bridge) -"dK" = (/obj/structure/table,/obj/item/stack/cable_coil{pixel_x = 3; pixel_y = -7},/turf/open/floor/plasteel,/area/derelict/bridge) -"dL" = (/obj/structure/table,/obj/machinery/light/small{dir = 1},/turf/open/floor/plasteel,/area/derelict/bridge) -"dM" = (/obj/structure/table,/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/turf/open/floor/plasteel,/area/derelict/bridge) -"dN" = (/obj/item/weapon/grenade/empgrenade,/obj/structure/table,/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plasteel,/area/derelict/bridge) -"dO" = (/turf/open/floor/plasteel/airless{icon_state = "damaged3"},/area/derelict/singularity_engine) -"dP" = (/turf/open/floor/plasteel/airless{icon_state = "damaged4"},/area/derelict/singularity_engine) -"dQ" = (/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plasteel/airless{icon_state = "damaged5"},/area/derelict/singularity_engine) -"dR" = (/obj/item/stack/cable_coil/cut,/obj/machinery/light/small{dir = 1},/turf/open/floor/plating/airless,/area/derelict/singularity_engine) -"dS" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plating/airless,/area/derelict/singularity_engine) -"dT" = (/obj/machinery/door/airlock/engineering{name = "Engineering Access"; req_access_txt = "10"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel,/area/derelict/gravity_generator) -"dU" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/open/floor/plasteel,/area/derelict/gravity_generator) -"dV" = (/obj/machinery/light/small{dir = 4},/turf/open/floor/plasteel,/area/derelict/gravity_generator) -"dW" = (/turf/open/floor/plating/airless,/area/derelict/singularity_engine) -"dX" = (/turf/open/floor/plasteel/airless{icon_state = "damaged5"},/area/derelict/singularity_engine) -"dY" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plating,/area/derelict/bridge/access) -"dZ" = (/obj/item/weapon/reagent_containers/food/drinks/beer,/turf/open/floor/plasteel,/area/derelict/bridge) -"ea" = (/turf/open/floor/plasteel,/area/derelict/bridge) -"eb" = (/turf/open/floor/plating,/area/derelict/bridge) -"ec" = (/obj/structure/table,/obj/item/weapon/paper/crumpled,/turf/open/floor/plasteel,/area/derelict/bridge) -"ed" = (/obj/structure/table,/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plasteel,/area/derelict/bridge) -"ee" = (/obj/structure/window/reinforced,/obj/machinery/portable_atmospherics/canister/toxins,/turf/open/floor/plasteel/airless{icon_state = "damaged3"},/area/derelict/singularity_engine) -"ef" = (/obj/structure/window/reinforced,/turf/open/floor/plasteel/airless{icon_state = "damaged5"},/area/derelict/singularity_engine) -"eg" = (/obj/structure/window/reinforced,/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plasteel/airless{icon_state = "damaged4"},/area/derelict/singularity_engine) -"eh" = (/obj/structure/window/reinforced,/turf/open/floor/plasteel/airless{icon_state = "damaged4"},/area/derelict/singularity_engine) -"ei" = (/obj/structure/window/reinforced,/turf/open/floor/plasteel/airless{icon_state = "damaged3"},/area/derelict/singularity_engine) -"ej" = (/turf/open/floor/plasteel,/area/derelict/gravity_generator) -"ek" = (/obj/structure/closet/radiation,/obj/structure/sign/securearea{desc = "A warning sign which reads 'RADIOACTIVE AREA'"; icon_state = "radiation"; name = "RADIOACTIVE AREA"; pixel_x = 32; pixel_y = 0},/turf/open/floor/plasteel,/area/derelict/gravity_generator) -"el" = (/turf/closed/wall,/area/derelict/gravity_generator) -"em" = (/obj/machinery/light/small{dir = 8},/turf/open/floor/plasteel/airless{icon_state = "damaged2"},/area/derelict/singularity_engine) -"en" = (/obj/machinery/power/emitter{dir = 1; icon_state = "emitter"},/turf/open/floor/plating/airless,/area/derelict/singularity_engine) -"eo" = (/obj/machinery/field/generator,/turf/open/floor/plating/airless,/area/derelict/singularity_engine) -"ep" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/window/reinforced,/turf/open/floor/plasteel,/area/derelict/bridge/access) -"eq" = (/obj/structure/window/reinforced/fulltile,/turf/open/floor/plasteel,/area/derelict/bridge/access) -"er" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plating,/area/derelict/bridge) -"es" = (/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/turf/open/floor/plasteel,/area/derelict/bridge) -"et" = (/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plasteel,/area/derelict/bridge) -"eu" = (/obj/item/stack/rods,/turf/open/floor/plating/airless,/area/ruin/unpowered/no_grav) -"ev" = (/obj/structure/grille,/obj/structure/window/reinforced,/turf/open/floor/plating/airless,/area/derelict/singularity_engine) -"ew" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plating/airless,/area/derelict/singularity_engine) -"ex" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/turf/open/floor/plating/airless,/area/derelict/singularity_engine) -"ey" = (/obj/structure/noticeboard,/turf/closed/wall/r_wall,/area/derelict/singularity_engine) -"ez" = (/turf/open/floor/plasteel/airless{icon_state = "damaged2"},/area/derelict/singularity_engine) -"eA" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plasteel,/area/derelict/bridge/access) -"eB" = (/obj/machinery/door/window/eastleft{name = "Heads of Staff"; req_access_txt = "19"},/turf/open/floor/plasteel,/area/derelict/bridge/access) -"eC" = (/obj/structure/table,/obj/item/device/paicard,/turf/open/floor/plasteel,/area/derelict/bridge) -"eD" = (/obj/structure/chair/stool,/turf/open/floor/plasteel,/area/derelict/bridge) -"eE" = (/obj/structure/table,/obj/item/weapon/stock_parts/cell,/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plasteel,/area/derelict/bridge) -"eF" = (/obj/item/weapon/storage/toolbox/syndicate,/turf/open/floor/plasteel/airless{icon_state = "damaged2"},/area/derelict/singularity_engine) -"eG" = (/obj/item/stack/cable_coil/cut,/turf/open/floor/plasteel/airless{icon_state = "damaged4"},/area/derelict/singularity_engine) -"eH" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/floor/plasteel,/area/derelict/bridge/access) -"eI" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/open/floor/plating,/area/derelict/bridge/access) -"eJ" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/open/floor/plasteel,/area/derelict/bridge/access) -"eK" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/open/floor/plasteel,/area/derelict/bridge) -"eL" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel,/area/derelict/bridge) -"eM" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/open/floor/plasteel,/area/derelict/bridge) -"eN" = (/obj/item/weapon/paper{info = "Objective #1: Destroy the station with a nuclear device."; name = "Objectives of a Nuclear Operative"},/turf/open/floor/plasteel/airless{icon_state = "damaged2"},/area/derelict/singularity_engine) -"eO" = (/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plating,/area/derelict/bridge/access) -"eP" = (/obj/structure/table,/turf/open/floor/plasteel,/area/derelict/bridge) -"eQ" = (/obj/structure/table,/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plasteel,/area/derelict/bridge) -"eR" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plasteel,/area/derelict/bridge) -"eS" = (/obj/structure/chair,/turf/open/floor/plasteel,/area/derelict/bridge) -"eT" = (/obj/structure/table,/obj/item/weapon/screwdriver,/turf/open/floor/plasteel,/area/derelict/bridge) -"eU" = (/obj/structure/table,/obj/item/weapon/reagent_containers/food/drinks/beer,/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plasteel,/area/derelict/bridge) -"eV" = (/obj/item/stack/rods,/turf/open/space,/area/space) -"eW" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/turf/open/floor/plating/airless,/area/derelict/singularity_engine) -"eX" = (/obj/item/weapon/shard,/obj/structure/grille/broken,/obj/effect/decal/remains/human{desc = "This guy seemed to have died in terrible way! Half his remains are dust."; icon_state = "remains"; name = "Syndicate agent remains"},/turf/open/floor/plasteel/airless{icon_state = "damaged2"},/area/derelict/singularity_engine) -"eY" = (/obj/item/clothing/suit/space/syndicate/black/engie,/turf/open/floor/plating/airless,/area/derelict/singularity_engine) -"eZ" = (/obj/item/stack/rods,/turf/open/floor/plating/airless,/area/derelict/singularity_engine) -"fa" = (/obj/item/weapon/shard,/turf/open/floor/plasteel/airless{icon_state = "damaged5"},/area/derelict/singularity_engine) -"fb" = (/obj/structure/grille,/turf/open/floor/plating/airless,/area/derelict/singularity_engine) -"fc" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/turf/open/floor/plating/airless,/area/derelict/singularity_engine) -"fd" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plating/airless,/area/derelict/singularity_engine) -"fe" = (/obj/structure/table,/obj/item/weapon/rack_parts,/turf/open/floor/plasteel,/area/derelict/bridge) -"ff" = (/obj/structure/window/fulltile,/turf/open/floor/plasteel,/area/derelict/bridge) -"fg" = (/obj/structure/table,/obj/machinery/power/apc{dir = 0; name = "Worn-out APC"; pixel_y = -24},/obj/structure/cable,/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plasteel,/area/derelict/bridge) -"fh" = (/obj/structure/table,/obj/machinery/light/small,/turf/open/floor/plasteel,/area/derelict/bridge) -"fi" = (/obj/structure/table,/obj/structure/window/reinforced{dir = 4},/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plasteel,/area/derelict/bridge) -"fj" = (/obj/structure/window/reinforced{dir = 8},/turf/open/floor/plasteel/airless{icon_state = "damaged2"},/area/derelict/singularity_engine) -"fk" = (/obj/item/clothing/head/helmet/space/syndicate/black/engie,/turf/open/floor/plating/airless,/area/derelict/singularity_engine) -"fl" = (/obj/item/weapon/shard{icon_state = "small"},/turf/open/floor/plating/airless,/area/derelict/singularity_engine) -"fm" = (/obj/structure/window/reinforced{dir = 1},/turf/open/floor/plating/airless,/area/derelict/singularity_engine) -"fn" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plating/airless,/area/derelict/singularity_engine) -"fo" = (/turf/closed/wall/r_wall,/area/derelict/bridge) -"fp" = (/obj/machinery/door/window{dir = 2; name = "Captain's Quarters"; req_access_txt = "20"},/obj/structure/grille,/turf/open/floor/plating/airless,/area/derelict/bridge) -"fq" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/turf/open/floor/plating/airless,/area/derelict/singularity_engine) -"fr" = (/obj/structure/window/reinforced{dir = 8},/obj/machinery/light/small{dir = 8},/turf/open/floor/plasteel/airless{icon_state = "damaged2"},/area/derelict/singularity_engine) -"fs" = (/obj/structure/window/reinforced{dir = 4},/obj/machinery/light/small{dir = 4},/turf/open/floor/plating/airless,/area/derelict/singularity_engine) -"ft" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plating/airless,/area/derelict/singularity_engine) -"fu" = (/obj/item/stack/cable_coil/cut,/turf/open/floor/plasteel/airless{icon_state = "damaged5"},/area/derelict/singularity_engine) -"fv" = (/obj/effect/spawner/lootdrop/crate_spawner,/turf/open/floor/plasteel/airless,/area/derelict/bridge/access) -"fw" = (/obj/effect/mob_spawn/derelict_drone,/turf/open/floor/plasteel/airless,/area/derelict/bridge/access) -"fx" = (/turf/open/floor/plasteel/airless,/area/derelict/bridge/access) -"fy" = (/obj/structure/table,/obj/item/device/assembly/flash/handheld,/turf/open/floor/plasteel/airless,/area/derelict/bridge/access) -"fz" = (/obj/structure/table,/obj/machinery/light/small{dir = 1},/obj/item/weapon/electronics/airlock,/turf/open/floor/plasteel/airless,/area/derelict/bridge/access) -"fA" = (/obj/structure/table,/obj/item/stack/cable_coil{pixel_x = 3; pixel_y = -7},/obj/item/weapon/stock_parts/matter_bin,/turf/open/floor/plasteel/airless,/area/derelict/bridge/access) -"fB" = (/obj/structure/table,/obj/item/weapon/stock_parts/cell{charge = 100; maxcharge = 15000},/turf/open/floor/plasteel/airless,/area/derelict/bridge/access) -"fC" = (/turf/open/space,/area/derelict/bridge/access) -"fD" = (/obj/structure/girder,/turf/open/floor/plating/airless,/area/ruin/unpowered/no_grav) -"fE" = (/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plating/airless,/area/derelict/singularity_engine) -"fF" = (/obj/item/weapon/storage/toolbox/electrical{pixel_x = 1; pixel_y = -1},/turf/open/floor/plasteel/airless,/area/derelict/bridge/access) -"fG" = (/obj/item/stack/cable_coil/cut,/turf/open/floor/plasteel/airless{icon_state = "damaged3"},/area/derelict/singularity_engine) -"fH" = (/obj/item/stack/cable_coil/cut,/turf/open/floor/plasteel/airless{icon_state = "damaged2"},/area/derelict/singularity_engine) -"fI" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/turf/open/floor/plasteel/airless{icon_state = "damaged2"},/area/derelict/singularity_engine) -"fJ" = (/obj/structure/window/reinforced{dir = 8},/turf/open/floor/plasteel/airless{icon_state = "damaged3"},/area/derelict/singularity_engine) -"fK" = (/obj/machinery/door/window,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel,/area/derelict/bridge/access) -"fL" = (/obj/structure/table,/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plasteel/airless{icon_state = "damaged2"},/area/derelict/singularity_engine) -"fM" = (/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/turf/open/floor/plating/airless,/area/derelict/singularity_engine) -"fN" = (/obj/item/weapon/shard{icon_state = "medium"},/turf/open/floor/plating/airless,/area/derelict/singularity_engine) -"fO" = (/obj/item/weapon/shard{icon_state = "medium"},/turf/open/floor/plasteel/airless{icon_state = "damaged5"},/area/derelict/singularity_engine) -"fP" = (/obj/structure/grille,/turf/open/floor/plasteel/airless{icon_state = "damaged3"},/area/derelict/singularity_engine) -"fQ" = (/obj/structure/window/reinforced{dir = 8},/turf/open/floor/plasteel/airless{icon_state = "damaged4"},/area/derelict/singularity_engine) -"fR" = (/obj/machinery/door/airlock/maintenance{name = "Tech Storage"; req_access_txt = "23"},/turf/open/floor/plasteel/airless,/area/derelict/bridge/access) -"fS" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/turf/open/floor/plating/airless,/area/derelict/bridge/access) -"fT" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/airless,/area/derelict/bridge/access) -"fU" = (/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plasteel/airless{icon_state = "damaged3"},/area/derelict/singularity_engine) -"fV" = (/obj/item/weapon/screwdriver,/turf/open/floor/plating/airless,/area/derelict/singularity_engine) -"fW" = (/obj/item/stack/rods,/turf/open/floor/plasteel/airless{icon_state = "damaged2"},/area/derelict/singularity_engine) -"fX" = (/obj/item/weapon/shard{icon_state = "medium"},/obj/item/stack/cable_coil/cut,/turf/open/floor/plating/airless,/area/derelict/singularity_engine) -"fY" = (/obj/structure/table,/obj/machinery/light/small{dir = 4},/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plasteel/airless{icon_state = "damaged2"},/area/derelict/singularity_engine) -"fZ" = (/turf/closed/wall,/area/derelict/hallway/primary) -"ga" = (/obj/item/stack/cable_coil/cut{amount = 2; dir = 2; icon_state = "coil_red2"},/turf/open/floor/plasteel/airless{icon_state = "damaged3"},/area/derelict/hallway/primary) -"gb" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel/airless{icon_state = "damaged2"},/area/derelict/hallway/primary) -"gc" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel/airless,/area/derelict/hallway/primary) -"gd" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/open/floor/plating/airless,/area/derelict/bridge/access) -"ge" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/open/floor/plasteel/airless,/area/derelict/bridge/access) -"gf" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/open/floor/plasteel/airless,/area/derelict/bridge/access) -"gg" = (/obj/machinery/light/small{dir = 4},/turf/open/floor/plasteel/airless,/area/derelict/bridge/access) -"gh" = (/obj/item/weapon/ore/slag,/turf/open/floor/plating/airless,/area/derelict/singularity_engine) -"gi" = (/obj/item/weapon/shard,/turf/open/floor/plating/airless,/area/derelict/singularity_engine) -"gj" = (/obj/structure/window/reinforced{dir = 8},/turf/open/floor/plating/airless,/area/derelict/singularity_engine) -"gk" = (/turf/closed/wall/r_wall,/area/derelict/hallway/primary) -"gl" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plating/airless,/area/derelict/hallway/primary) -"gm" = (/turf/open/floor/plasteel/airless{icon_state = "damaged3"},/area/derelict/hallway/primary) -"gn" = (/turf/open/floor/plasteel/airless{icon_state = "damaged2"},/area/derelict/hallway/primary) -"go" = (/turf/open/floor/plasteel/airless,/area/derelict/hallway/primary) -"gp" = (/obj/structure/window/fulltile,/turf/open/floor/plasteel/airless,/area/derelict/hallway/primary) -"gq" = (/turf/open/floor/plating/airless,/area/derelict/bridge/access) -"gr" = (/turf/open/floor/plasteel/airless,/area/ruin/unpowered/no_grav) -"gs" = (/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plasteel/airless{icon_state = "damaged2"},/area/derelict/singularity_engine) -"gt" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/item/weapon/shard{icon_state = "medium"},/turf/open/floor/plating/airless,/area/derelict/singularity_engine) -"gu" = (/obj/structure/window/reinforced{dir = 8},/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plating/airless,/area/derelict/singularity_engine) -"gv" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plating/airless,/area/derelict/singularity_engine) -"gw" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/turf/open/floor/plating/airless,/area/derelict/singularity_engine) -"gx" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/floor/plating/airless,/area/derelict/hallway/primary) -"gy" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plating/airless,/area/derelict/hallway/primary) -"gz" = (/turf/open/floor/plasteel/airless{icon_state = "floorscorched2"},/area/derelict/hallway/primary) -"gA" = (/obj/machinery/light/small,/turf/open/floor/plasteel/airless,/area/derelict/hallway/primary) -"gB" = (/obj/structure/cable,/obj/machinery/power/apc{dir = 0; name = "Worn-out APC"; pixel_y = -24},/turf/open/floor/plasteel/airless,/area/derelict/bridge/access) -"gC" = (/turf/open/floor/plasteel/airless{icon_state = "floorscorched2"},/area/ruin/unpowered/no_grav) -"gD" = (/turf/open/floor/plasteel/airless{icon_state = "damaged2"},/area/ruin/unpowered/no_grav) -"gE" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/turf/open/floor/plating/airless,/area/derelict/singularity_engine) -"gF" = (/obj/machinery/door/window,/turf/open/floor/plating/airless,/area/derelict/hallway/primary) -"gG" = (/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating/airless,/area/ruin/unpowered/no_grav) -"gH" = (/turf/open/floor/plasteel/airless{icon_state = "floorscorched1"},/area/ruin/unpowered/no_grav) -"gI" = (/obj/item/weapon/shard{icon_state = "medium"},/turf/open/floor/plasteel/airless{icon_state = "damaged2"},/area/derelict/singularity_engine) -"gJ" = (/obj/structure/grille/broken,/turf/open/floor/plating/airless,/area/derelict/singularity_engine) -"gK" = (/obj/machinery/light/small{dir = 4},/turf/open/floor/plasteel/airless{icon_state = "damaged3"},/area/derelict/singularity_engine) -"gL" = (/turf/open/floor/plating/airless,/area/derelict/hallway/primary) -"gM" = (/obj/item/weapon/crowbar,/turf/open/floor/plasteel/airless,/area/derelict/hallway/primary) -"gN" = (/obj/structure/grille,/turf/open/floor/plasteel/airless,/area/derelict/hallway/primary) -"gO" = (/obj/structure/girder,/turf/open/floor/plating/airless,/area/derelict/hallway/primary) -"gP" = (/turf/open/floor/plasteel/airless{icon_state = "damaged3"},/area/ruin/unpowered/no_grav) -"gQ" = (/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plasteel/airless,/area/ruin/unpowered/no_grav) -"gR" = (/obj/item/weapon/shard{icon_state = "small"},/obj/item/weapon/shard{icon_state = "medium"},/turf/open/floor/plating/airless,/area/derelict/singularity_engine) -"gS" = (/obj/structure/window/reinforced,/turf/open/floor/plating/airless,/area/derelict/singularity_engine) -"gT" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/turf/open/floor/plating/airless,/area/derelict/singularity_engine) -"gU" = (/obj/item/stack/cable_coil/cut{amount = 2; dir = 2; icon_state = "coil_red2"},/turf/open/floor/plating/airless,/area/derelict/hallway/primary) -"gV" = (/turf/closed/wall/r_wall,/area/derelict/arrival) -"gW" = (/turf/closed/wall,/area/derelict/arrival) -"gX" = (/turf/closed/wall,/area/derelict/medical/chapel) -"gY" = (/turf/closed/wall,/area/derelict/singularity_engine) -"gZ" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/turf/open/floor/plating/airless,/area/derelict/singularity_engine) -"ha" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/open/floor/plating/airless,/area/derelict/hallway/primary) -"hb" = (/obj/machinery/light/small,/turf/open/floor/plasteel/airless{icon_state = "damaged2"},/area/derelict/hallway/primary) -"hc" = (/obj/structure/lattice,/obj/structure/window/fulltile,/turf/open/space,/area/ruin/unpowered/no_grav) -"hd" = (/obj/structure/table,/turf/open/floor/plasteel,/area/derelict/arrival) -"he" = (/obj/structure/chair,/turf/open/floor/plasteel,/area/derelict/arrival) -"hf" = (/turf/open/floor/plasteel,/area/derelict/arrival) -"hg" = (/obj/machinery/light/small{dir = 1},/turf/open/floor/plasteel,/area/derelict/arrival) -"hh" = (/obj/structure/chair{dir = 8},/obj/item/weapon/pen,/turf/open/floor/plasteel,/area/derelict/arrival) -"hi" = (/obj/structure/chair{dir = 8},/turf/open/floor/plasteel,/area/derelict/arrival) -"hj" = (/obj/structure/closet/coffin,/turf/open/floor/plasteel/black,/area/derelict/medical/chapel) -"hk" = (/turf/open/floor/plasteel/black,/area/derelict/medical/chapel) -"hl" = (/obj/machinery/light/small{dir = 1},/turf/open/floor/plasteel/black,/area/derelict/medical/chapel) -"hm" = (/obj/item/weapon/shard,/turf/open/space,/area/space) -"hn" = (/obj/structure/grille,/turf/open/space,/area/derelict/singularity_engine) -"ho" = (/obj/item/weapon/shard,/turf/open/floor/plasteel/airless{icon_state = "damaged2"},/area/derelict/singularity_engine) -"hp" = (/turf/open/floor/plasteel/airless{icon_state = "floorscorched2"},/area/derelict/arrival) -"hq" = (/turf/open/floor/plating/airless,/area/derelict/arrival) -"hr" = (/turf/open/floor/plasteel/airless{icon_state = "damaged3"},/area/derelict/arrival) -"hs" = (/obj/structure/table,/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plasteel,/area/derelict/arrival) -"ht" = (/obj/machinery/light/small,/turf/open/floor/plasteel/black,/area/derelict/medical/chapel) -"hu" = (/obj/machinery/door/airlock/medical{name = "Morgue"; req_access_txt = "6"},/turf/open/floor/plasteel/black,/area/derelict/medical/chapel) -"hv" = (/turf/closed/wall,/area/derelict/medical) -"hw" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/turf/open/floor/plating/airless,/area/derelict/medical) -"hx" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/turf/open/floor/plating/airless,/area/derelict/medical) -"hy" = (/obj/item/weapon/shard,/obj/structure/grille/broken,/turf/open/floor/plating/airless,/area/derelict/medical) -"hz" = (/turf/open/floor/plating/airless,/area/derelict/medical) -"hA" = (/obj/item/weapon/shard{icon_state = "medium"},/turf/open/floor/plating/airless,/area/derelict/medical) -"hB" = (/obj/machinery/door/airlock/external{name = "External Engineering"},/turf/open/floor/plating/airless,/area/space) -"hC" = (/obj/structure/grille,/turf/open/space,/area/space) -"hD" = (/turf/open/floor/plasteel/airless{icon_state = "damaged4"},/area/derelict/hallway/primary) -"hE" = (/obj/machinery/door/window{dir = 8},/turf/open/floor/plasteel,/area/derelict/arrival) -"hF" = (/obj/structure/table,/obj/machinery/computer/pod/old{name = "ProComp IIe"; pixel_y = 7; id = "derelict_gun"},/turf/open/floor/plasteel/chapel,/area/derelict/medical/chapel) -"hG" = (/obj/machinery/door/morgue{name = "coffin storage"; req_access_txt = "22"},/turf/open/floor/plasteel/black,/area/derelict/medical/chapel) -"hH" = (/obj/structure/bodycontainer/morgue,/turf/open/floor/plasteel/black,/area/derelict/medical/chapel) -"hI" = (/turf/open/floor/plasteel/airless/white,/area/derelict/medical) -"hJ" = (/obj/item/weapon/firstaid_arm_assembly,/turf/open/floor/plasteel/airless/white,/area/derelict/medical) -"hK" = (/obj/structure/closet,/obj/structure/window/reinforced{dir = 8},/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plasteel/airless{icon_state = "damaged2"},/area/derelict/medical) -"hL" = (/obj/structure/frame/computer,/turf/open/floor/plasteel/airless{icon_state = "damaged3"},/area/derelict/medical) -"hM" = (/obj/machinery/light{dir = 1},/obj/item/weapon/shard{icon_state = "small"},/turf/open/floor/plating/airless,/area/derelict/medical) -"hN" = (/obj/machinery/light/small,/turf/open/floor/plasteel/airless{icon_state = "damaged4"},/area/derelict/singularity_engine) -"hO" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plating/airless,/area/derelict/hallway/primary) -"hP" = (/turf/open/floor/plating,/area/derelict/arrival) -"hQ" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/grille,/turf/open/space,/area/space) -"hR" = (/obj/structure/table,/obj/structure/window/reinforced{dir = 8},/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plasteel/chapel{dir = 1},/area/derelict/medical/chapel) -"hS" = (/turf/open/floor/plasteel/chapel{dir = 4},/area/derelict/medical/chapel) -"hT" = (/turf/open/floor/plasteel/chapel{dir = 1},/area/derelict/medical/chapel) -"hU" = (/obj/structure/chair{dir = 8},/turf/open/floor/plasteel/chapel{dir = 1},/area/derelict/medical/chapel) -"hV" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/open/floor/plasteel/airless/white,/area/derelict/medical) -"hW" = (/obj/item/stack/medical/bruise_pack,/turf/open/floor/plasteel/airless/white,/area/derelict/medical) -"hX" = (/turf/open/floor/plasteel/airless{icon_state = "damaged2"},/area/derelict/medical) -"hY" = (/turf/open/floor/plasteel/airless{icon_state = "damaged3"},/area/derelict/medical) -"hZ" = (/obj/structure/window/reinforced{dir = 8},/turf/open/floor/plating/airless,/area/derelict/medical) -"ia" = (/turf/open/floor/plasteel/airless{icon_state = "damaged5"},/area/ruin/unpowered/no_grav) -"ib" = (/obj/item/stack/cable_coil/cut,/turf/open/floor/plating/airless,/area/ruin/unpowered/no_grav) -"ic" = (/obj/structure/table,/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plasteel,/area/derelict/arrival) -"id" = (/obj/machinery/light/small{dir = 4},/turf/open/floor/plasteel,/area/derelict/arrival) -"ie" = (/obj/structure/table,/obj/structure/window/reinforced{dir = 8},/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plasteel/chapel{dir = 8},/area/derelict/medical/chapel) -"if" = (/obj/structure/chair{dir = 4},/turf/open/floor/plasteel/chapel,/area/derelict/medical/chapel) -"ig" = (/obj/structure/table,/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plasteel/chapel{dir = 8},/area/derelict/medical/chapel) -"ih" = (/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/turf/open/floor/plasteel/chapel,/area/derelict/medical/chapel) -"ii" = (/turf/open/floor/plasteel/chapel{dir = 8},/area/derelict/medical/chapel) -"ij" = (/turf/open/floor/plasteel/chapel,/area/derelict/medical/chapel) -"ik" = (/obj/structure/chair,/turf/open/floor/plasteel/airless{icon_state = "damaged3"},/area/derelict/medical) -"il" = (/obj/structure/table,/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating/airless,/area/derelict/medical) -"im" = (/obj/item/weapon/storage/box/lights/mixed,/turf/open/floor/plating/airless,/area/derelict/singularity_engine) -"in" = (/obj/effect/mob_spawn/derelict_drone,/turf/open/floor/plating/airless,/area/derelict/singularity_engine) -"io" = (/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating/airless,/area/derelict/singularity_engine) -"ip" = (/obj/item/stack/cable_coil/cut{amount = 2; dir = 2; icon_state = "coil_red2"},/turf/open/floor/plasteel/airless{icon_state = "damaged2"},/area/derelict/hallway/primary) -"iq" = (/turf/open/floor/plasteel/airless{icon_state = "damaged4"},/area/ruin/unpowered/no_grav) -"ir" = (/obj/structure/chair{dir = 1},/turf/open/floor/plasteel,/area/derelict/arrival) -"is" = (/obj/structure/chair{dir = 1},/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plasteel,/area/derelict/arrival) -"it" = (/obj/structure/window/reinforced,/turf/open/space,/area/space) -"iu" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/obj/structure/grille,/turf/open/space,/area/space) -"iv" = (/obj/structure/table,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plasteel/chapel{dir = 1},/area/derelict/medical/chapel) -"iw" = (/obj/structure/window/reinforced,/turf/open/floor/plasteel/chapel{dir = 4},/area/derelict/medical/chapel) -"ix" = (/obj/structure/window/reinforced,/turf/open/floor/plasteel/chapel{dir = 1},/area/derelict/medical/chapel) -"iy" = (/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/turf/open/floor/plasteel/black,/area/derelict/medical/chapel) -"iz" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/black,/area/derelict/medical/chapel) -"iA" = (/obj/machinery/sleeper{icon_state = "sleeper-open"; dir = 4},/turf/open/floor/plasteel/airless/white,/area/derelict/medical) -"iB" = (/obj/structure/table,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/obj/item/weapon/reagent_containers/glass/beaker,/turf/open/floor/plasteel/airless/white,/area/derelict/medical) -"iC" = (/obj/structure/window/reinforced,/turf/open/floor/plasteel/airless/white,/area/derelict/medical) -"iD" = (/obj/structure/window/reinforced,/turf/open/floor/plating/airless,/area/ruin/unpowered/no_grav) -"iE" = (/obj/structure/window/reinforced,/turf/open/floor/plasteel/airless/white,/area/ruin/unpowered/no_grav) -"iF" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/airless{icon_state = "damaged2"},/area/derelict/hallway/primary) -"iG" = (/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plasteel,/area/derelict/arrival) -"iH" = (/obj/machinery/door/poddoor{id = "derelict_gun"; name = "Derelict Mass Driver"},/turf/open/floor/plating,/area/ruin/unpowered/no_grav) -"iI" = (/turf/open/floor/plating,/area/ruin/unpowered/no_grav) -"iJ" = (/turf/open/floor/plating,/area/derelict/medical/chapel) -"iK" = (/obj/machinery/mass_driver{dir = 8; icon_state = "mass_driver"; id = "derelict_gun"},/obj/machinery/door/window{dir = 4; req_access_txt = "25"},/obj/structure/closet/coffin,/turf/open/floor/plating,/area/derelict/medical/chapel) -"iL" = (/obj/item/weapon/shard{icon_state = "small"},/turf/open/floor/plasteel/airless/white,/area/derelict/medical) -"iM" = (/obj/item/stack/medical/bruise_pack,/turf/open/floor/plasteel/airless{icon_state = "damaged2"},/area/derelict/medical) -"iN" = (/obj/item/stack/medical/ointment,/turf/open/floor/plasteel/airless{icon_state = "damaged3"},/area/derelict/medical) -"iO" = (/obj/machinery/light{icon_state = "tube1"; dir = 4},/turf/open/floor/plating/airless,/area/derelict/medical) -"iP" = (/obj/structure/closet/l3closet,/turf/open/floor/plating/airless,/area/ruin/unpowered/no_grav) -"iQ" = (/obj/structure/window/reinforced{dir = 1},/turf/open/floor/plating/airless,/area/ruin/unpowered/no_grav) -"iR" = (/obj/item/weapon/shard{icon_state = "medium"},/turf/open/space,/area/space) -"iS" = (/obj/structure/window/reinforced{dir = 1},/turf/open/space,/area/space) -"iT" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/grille,/turf/open/space,/area/space) -"iU" = (/obj/structure/table,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plasteel/chapel{dir = 1},/area/derelict/medical/chapel) -"iV" = (/obj/structure/window/reinforced{dir = 1},/turf/open/floor/plasteel/chapel{dir = 4},/area/derelict/medical/chapel) -"iW" = (/obj/structure/window/reinforced{dir = 1},/turf/open/floor/plasteel/chapel{dir = 1},/area/derelict/medical/chapel) -"iX" = (/obj/structure/chair{dir = 8},/turf/open/floor/plasteel/chapel{dir = 4},/area/derelict/medical/chapel) -"iY" = (/obj/structure/window/reinforced{dir = 8},/turf/open/floor/plasteel/airless/white,/area/derelict/medical) -"iZ" = (/obj/item/weapon/cigbutt,/turf/open/floor/plasteel/airless/white,/area/derelict/medical) -"ja" = (/obj/machinery/door/airlock/glass{name = "Med-Sci"; req_access_txt = "9"},/turf/open/floor/plating/airless,/area/derelict/medical) -"jb" = (/obj/structure/table,/turf/open/floor/plating/airless,/area/ruin/unpowered/no_grav) -"jc" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plasteel/airless,/area/derelict/hallway/primary) -"jd" = (/obj/structure/closet/emcloset,/turf/open/floor/plasteel,/area/derelict/arrival) -"je" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/chapel,/area/derelict/medical/chapel) -"jf" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/floor/plasteel/airless/white,/area/derelict/medical) -"jg" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/window/reinforced{dir = 8},/turf/open/floor/plasteel/airless/white,/area/derelict/medical) -"jh" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel/airless/white,/area/derelict/medical) -"ji" = (/obj/item/stack/cable_coil/cut{amount = 2; dir = 2; icon_state = "coil_red2"},/turf/open/floor/plasteel/airless/white,/area/derelict/medical) -"jj" = (/obj/item/stack/cable_coil/cut{amount = 2; dir = 2; icon_state = "coil_red2"},/turf/open/floor/plasteel/airless{icon_state = "damaged3"},/area/derelict/medical) -"jk" = (/obj/item/weapon/reagent_containers/glass/beaker,/turf/open/floor/plasteel/airless{icon_state = "damaged3"},/area/derelict/medical) -"jl" = (/obj/structure/closet/wardrobe/genetics_white,/obj/effect/spawner/lootdrop/maintenance{lootcount = 2; name = "2maintenance loot spawner"},/turf/open/floor/plasteel/airless/white,/area/derelict/medical) -"jm" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/turf/open/floor/plating/airless,/area/ruin/unpowered/no_grav) -"jn" = (/obj/item/weapon/shard,/turf/open/floor/plating/airless,/area/ruin/unpowered/no_grav) -"jo" = (/obj/item/weapon/shard{icon_state = "medium"},/turf/open/floor/plating/airless,/area/ruin/unpowered/no_grav) -"jp" = (/turf/open/floor/plasteel/airless/white,/area/ruin/unpowered/no_grav) -"jq" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/airless,/area/derelict/hallway/primary) -"jr" = (/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/turf/open/floor/plasteel/airless{icon_state = "damaged2"},/area/derelict/hallway/primary) -"js" = (/obj/machinery/light/small{dir = 4},/turf/open/floor/plasteel/airless,/area/derelict/hallway/primary) -"jt" = (/obj/item/weapon/pen,/turf/open/floor/plasteel,/area/derelict/arrival) -"ju" = (/obj/machinery/light/small,/turf/open/floor/plasteel/chapel{dir = 4},/area/derelict/medical/chapel) -"jv" = (/obj/machinery/door/window{dir = 8},/turf/open/floor/plasteel/airless,/area/derelict/medical/chapel) -"jw" = (/turf/open/floor/plasteel/airless,/area/derelict/medical/chapel) -"jx" = (/obj/machinery/light/small{dir = 1},/turf/open/floor/plasteel/airless,/area/derelict/medical/chapel) -"jy" = (/obj/machinery/power/apc{dir = 4; name = "Worn-out APC"; pixel_x = 24; pixel_y = 0},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/open/floor/plasteel/airless,/area/derelict/medical/chapel) -"jz" = (/obj/machinery/power/apc{dir = 0; name = "Worn-out APC"; pixel_y = -24},/obj/structure/cable,/turf/open/floor/plasteel/airless/white,/area/derelict/medical) -"jA" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/bed,/turf/open/floor/plasteel/airless/white,/area/derelict/medical) -"jB" = (/obj/item/stack/medical/ointment,/turf/open/floor/plasteel/airless/white,/area/derelict/medical) -"jC" = (/obj/structure/bed,/turf/open/floor/plasteel/airless/white,/area/derelict/medical) -"jD" = (/obj/item/stack/cable_coil/cut{amount = 2; dir = 2; icon_state = "coil_red2"},/turf/open/floor/plasteel/airless{icon_state = "damaged2"},/area/derelict/medical) -"jE" = (/obj/machinery/door/airlock/medical{name = "Medical"},/turf/open/floor/plasteel/airless/white,/area/derelict/medical) -"jF" = (/obj/structure/window/reinforced{dir = 8},/turf/open/floor/plating/airless,/area/ruin/unpowered/no_grav) -"jG" = (/obj/structure/window/fulltile,/turf/open/space,/area/ruin/unpowered/no_grav) -"jH" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/open/floor/plasteel,/area/derelict/arrival) -"jI" = (/obj/machinery/light{icon_state = "tube1"; dir = 4},/turf/open/floor/plasteel,/area/derelict/arrival) -"jJ" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/turf/open/floor/plating,/area/derelict/arrival) -"jK" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plating,/area/derelict/arrival) -"jL" = (/turf/closed/wall/r_wall,/area/derelict/medical/chapel) -"jM" = (/obj/machinery/door/window,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/airless,/area/derelict/medical/chapel) -"jN" = (/obj/machinery/door/window/southleft,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/airless/white,/area/derelict/medical) -"jO" = (/obj/machinery/door/window/southright,/turf/open/floor/plasteel/airless/white,/area/derelict/medical) -"jP" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/open/floor/plasteel/airless,/area/derelict/hallway/primary) -"jQ" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/airlock/research{name = "Toxins Research"; req_access_txt = "7"},/turf/open/floor/plasteel/airless,/area/derelict/hallway/primary) -"jR" = (/obj/item/stack/cable_coil/cut{amount = 2; dir = 2; icon_state = "coil_red2"},/turf/open/floor/plating/airless,/area/ruin/unpowered/no_grav) -"jS" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plating/airless,/area/ruin/unpowered/no_grav) -"jT" = (/obj/structure/lattice,/obj/structure/grille,/turf/open/space,/area/ruin/unpowered/no_grav) -"jU" = (/obj/machinery/door/airlock/external{name = "Arrivals Docking Bay 1"},/turf/open/floor/plating,/area/derelict/arrival) -"jV" = (/obj/machinery/light/small{dir = 4},/turf/open/floor/plasteel/airless{icon_state = "damaged2"},/area/ruin/unpowered/no_grav) -"jW" = (/obj/structure/closet,/obj/effect/spawner/lootdrop/maintenance{lootcount = 2; name = "2maintenance loot spawner"},/turf/open/floor/plasteel/airless,/area/derelict/hallway/primary) -"jX" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/airless{icon_state = "floorscorched1"},/area/derelict/hallway/primary) -"jY" = (/turf/open/floor/plasteel/airless{icon_state = "floorscorched1"},/area/derelict/hallway/primary) -"jZ" = (/obj/machinery/light/small{dir = 1},/turf/open/floor/plasteel/airless,/area/derelict/hallway/primary) -"ka" = (/obj/structure/frame/computer,/turf/open/floor/plasteel/airless,/area/derelict/hallway/primary) -"kb" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/open/floor/plasteel/airless,/area/ruin/unpowered/no_grav) -"kc" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel/airless,/area/ruin/unpowered/no_grav) -"kd" = (/obj/structure/window/fulltile,/turf/open/floor/plating/airless,/area/ruin/unpowered/no_grav) -"ke" = (/obj/effect/decal/cleanable/dirt,/obj/effect/spawner/lootdrop/maintenance{lootcount = 2; name = "2maintenance loot spawner"},/turf/open/floor/plating/airless,/area/ruin/unpowered/no_grav) -"kf" = (/obj/effect/decal/cleanable/dirt,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel/airless,/area/ruin/unpowered/no_grav) -"kg" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/window/fulltile,/turf/open/floor/plating/airless,/area/ruin/unpowered/no_grav) -"kh" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/airlock/research{name = "Toxins Research"; req_access_txt = "7"},/turf/open/floor/plasteel/airless,/area/derelict/arrival) -"ki" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel,/area/derelict/arrival) -"kj" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plating,/area/derelict/arrival) -"kk" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/open/floor/plasteel,/area/derelict/arrival) -"kl" = (/obj/machinery/door/airlock/command{name = "Teleporter Room"},/turf/open/floor/plasteel/airless,/area/derelict/medical/chapel) -"km" = (/obj/item/stack/cable_coil/cut{amount = 2; dir = 2; icon_state = "coil_red2"},/turf/open/floor/plasteel/airless{icon_state = "floorscorched1"},/area/derelict/hallway/primary) -"kn" = (/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/turf/open/floor/plasteel/airless,/area/derelict/hallway/primary) -"ko" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/airless,/area/derelict/hallway/primary) -"kp" = (/obj/machinery/light/small{dir = 8},/turf/open/floor/plasteel/airless,/area/derelict/hallway/primary) -"kq" = (/obj/item/device/assembly/prox_sensor{pixel_x = -8; pixel_y = 4},/turf/open/floor/plasteel/airless,/area/derelict/hallway/primary) -"kr" = (/obj/structure/cable,/obj/machinery/power/apc{dir = 0; name = "Worn-out APC"; pixel_y = -24},/turf/open/floor/plasteel,/area/derelict/arrival) -"ks" = (/obj/machinery/portable_atmospherics/scrubber,/turf/open/floor/plasteel,/area/derelict/arrival) -"kt" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/open/floor/plating/airless,/area/derelict/hallway/primary) -"ku" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/open/floor/plasteel/airless{icon_state = "floorscorched1"},/area/derelict/hallway/primary) -"kv" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/open/floor/plasteel/airless,/area/derelict/hallway/primary) -"kw" = (/obj/machinery/door/window{base_state = "right"; dir = 4; icon_state = "right"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/open/floor/plasteel/airless,/area/derelict/hallway/primary) -"kx" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/open/floor/plasteel/airless,/area/derelict/hallway/primary) -"ky" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/floor/plasteel/airless,/area/derelict/hallway/primary) -"kz" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/open/floor/plasteel/airless,/area/derelict/hallway/primary) -"kA" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/open/floor/plasteel/airless,/area/derelict/hallway/primary) -"kB" = (/obj/structure/window/fulltile,/turf/open/floor/plating/airless,/area/derelict/arrival) -"kC" = (/obj/machinery/portable_atmospherics/pump,/turf/open/floor/plasteel,/area/derelict/arrival) -"kD" = (/obj/machinery/door/window,/turf/open/floor/plasteel/airless,/area/derelict/hallway/primary) -"kE" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/open/floor/plasteel/airless,/area/derelict/hallway/primary) -"kF" = (/obj/machinery/door/window{base_state = "right"; dir = 4; icon_state = "right"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel/airless,/area/derelict/hallway/primary) -"kG" = (/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/open/floor/plasteel/airless,/area/derelict/hallway/primary) -"kH" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/open/floor/plasteel/airless,/area/derelict/hallway/primary) -"kI" = (/obj/machinery/vending/hydronutrients,/turf/open/floor/plasteel/airless,/area/derelict/hallway/primary) -"kJ" = (/obj/structure/girder,/turf/open/floor/plasteel/airless,/area/derelict/hallway/primary) -"kK" = (/obj/structure/girder,/turf/open/floor/plasteel/airless,/area/ruin/unpowered/no_grav) -"kL" = (/obj/structure/window/fulltile,/turf/open/space,/area/space) -"kM" = (/obj/structure/girder,/turf/open/floor/plating,/area/derelict/arrival) -"kN" = (/obj/structure/bed,/turf/open/floor/plasteel/airless,/area/derelict/hallway/primary) -"kO" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/turf/open/floor/plating/airless,/area/derelict/hallway/primary) -"kP" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plating/airless,/area/derelict/hallway/primary) -"kQ" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/turf/open/floor/plating/airless,/area/derelict/hallway/primary) -"kR" = (/obj/machinery/door/airlock/security{name = "Security"; req_access = null; req_access_txt = "1"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/airless,/area/derelict/hallway/primary) -"kS" = (/obj/machinery/door/window,/turf/open/floor/plasteel/airless,/area/hallway/primary/port) -"kT" = (/obj/machinery/vending/hydroseeds,/turf/open/floor/plasteel/airless,/area/hallway/primary/port) -"kU" = (/obj/item/weapon/cigbutt,/turf/open/space,/area/space) -"kV" = (/obj/machinery/light{dir = 1},/turf/open/floor/plasteel,/area/derelict/arrival) -"kW" = (/obj/structure/table,/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plasteel/airless,/area/derelict/hallway/primary) -"kX" = (/obj/structure/table,/obj/item/weapon/stock_parts/cell,/turf/open/floor/plasteel/airless,/area/derelict/hallway/primary) -"kY" = (/obj/machinery/vending/sovietsoda,/turf/open/floor/plasteel/airless,/area/derelict/hallway/primary) -"kZ" = (/obj/effect/decal/cleanable/blood/gibs/old,/turf/open/floor/plasteel/airless,/area/derelict/hallway/primary) -"la" = (/obj/structure/cable,/obj/machinery/power/apc{dir = 0; name = "Worn-out APC"; pixel_y = -24},/turf/open/floor/plasteel/airless,/area/derelict/hallway/primary) -"lb" = (/obj/structure/table,/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plasteel/airless,/area/ruin/unpowered/no_grav) -"lc" = (/obj/structure/window/reinforced{dir = 8},/obj/item/stack/cable_coil/cut{amount = 2; dir = 2; icon_state = "coil_red2"},/turf/open/floor/plasteel/airless,/area/ruin/unpowered/no_grav) -"ld" = (/obj/structure/lattice,/obj/item/stack/cable_coil/cut,/turf/open/space,/area/space) -"le" = (/obj/effect/decal/cleanable/blood/splatter,/turf/open/floor/plasteel/airless,/area/derelict/hallway/primary) -"lf" = (/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/obj/effect/decal/cleanable/blood/splatter,/turf/open/floor/plasteel/airless,/area/derelict/hallway/primary) -"lg" = (/obj/structure/chair/stool,/turf/open/floor/plasteel/airless,/area/derelict/hallway/primary) -"lh" = (/obj/machinery/door/airlock/maintenance{name = "Atmospherics Access"; req_access_txt = "24"},/turf/open/floor/plating/airless,/area/derelict/hallway/primary) -"li" = (/obj/structure/window/reinforced{dir = 8},/turf/open/floor/plasteel/airless,/area/ruin/unpowered/no_grav) -"lj" = (/obj/item/stack/cable_coil/cut{amount = 2; dir = 2; icon_state = "coil_red2"},/turf/open/floor/plasteel/airless,/area/ruin/unpowered/no_grav) -"lk" = (/obj/structure/closet/wardrobe/orange,/obj/effect/spawner/lootdrop/maintenance{lootcount = 2; name = "2maintenance loot spawner"},/obj/item/weapon/shovel/spade,/obj/item/weapon/cultivator,/turf/open/floor/plasteel/airless,/area/ruin/unpowered/no_grav) -"ll" = (/obj/structure/grille,/turf/open/floor/plating,/area/derelict/arrival) -"lm" = (/obj/structure/closet/wardrobe,/obj/effect/spawner/lootdrop/maintenance{lootcount = 3; name = "3maintenance loot spawner"},/turf/open/floor/plasteel,/area/derelict/arrival) -"ln" = (/obj/item/weapon/stock_parts/manipulator{pixel_x = -15; pixel_y = 10},/obj/item/weapon/stock_parts/manipulator,/turf/open/floor/plating/airless,/area/derelict/hallway/primary) -"lo" = (/obj/structure/closet,/obj/effect/spawner/lootdrop/maintenance{lootcount = 3; name = "3maintenance loot spawner"},/turf/open/floor/plating/airless,/area/derelict/hallway/primary) -"lp" = (/obj/structure/chair/stool,/obj/effect/decal/remains/human,/obj/effect/decal/cleanable/blood/old,/turf/open/floor/plasteel/airless,/area/derelict/hallway/primary) -"lq" = (/obj/structure/table,/obj/item/weapon/reagent_containers/glass/beaker{list_reagents = list("sacid" = 50)},/obj/item/weapon/paper/crumpled/bloody{desc = "Looks like someone started shakily writing a will in space common, but were interrupted by something bloody..."; info = "I, Victor Belyakov, do hereby leave my _- "; name = "unifinished paper scrap"},/obj/item/weapon/pen,/turf/open/floor/plasteel/airless,/area/derelict/hallway/primary) -"lr" = (/obj/structure/table,/turf/open/floor/plasteel/airless,/area/derelict/hallway/primary) -"ls" = (/turf/open/floor/plasteel/airless,/area/derelict/atmospherics) -"lt" = (/turf/open/floor/plating/airless,/area/derelict/atmospherics) -"lu" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating/airless,/area/derelict/atmospherics) -"lv" = (/obj/structure/window/reinforced{dir = 8},/turf/open/floor/plating/airless,/area/derelict/atmospherics) -"lw" = (/obj/machinery/atmospherics/components/unary/tank/air,/turf/open/floor/plating/airless,/area/derelict/atmospherics) -"lx" = (/turf/closed/wall,/area/derelict/atmospherics) -"ly" = (/turf/closed/wall/r_wall,/area/derelict/atmospherics) -"lz" = (/turf/open/space,/area/ruin/unpowered/no_grav) -"lA" = (/obj/structure/lattice,/turf/open/space,/area/ruin/unpowered/no_grav) -"lB" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/window/reinforced,/turf/open/floor/plasteel/airless,/area/ruin/unpowered/no_grav) -"lC" = (/obj/structure/window/reinforced,/turf/open/floor/plasteel/airless,/area/ruin/unpowered/no_grav) -"lD" = (/obj/structure/grille,/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/turf/open/floor/plating/airless,/area/ruin/unpowered/no_grav) -"lE" = (/obj/structure/bed,/turf/open/floor/plasteel/airless,/area/ruin/unpowered/no_grav) -"lF" = (/turf/open/floor/plasteel/airless/floorgrime,/area/derelict/hallway/primary) -"lG" = (/turf/open/floor/plasteel/airless{icon_state = "damaged5"},/area/derelict/hallway/primary) -"lH" = (/obj/item/ammo_casing/a357,/turf/open/floor/plasteel/airless,/area/derelict/hallway/primary) -"lI" = (/obj/structure/table,/obj/item/device/healthanalyzer,/turf/open/floor/plasteel/airless,/area/derelict/hallway/primary) -"lJ" = (/obj/machinery/atmospherics/components/unary/portables_connector/visible{dir = 4},/turf/open/floor/plating/airless,/area/derelict/atmospherics) -"lK" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/turf/open/floor/plating/airless,/area/derelict/atmospherics) -"lL" = (/obj/machinery/atmospherics/components/unary/portables_connector/visible{icon_state = "connector_map"; dir = 8},/turf/open/floor/plating/airless,/area/derelict/atmospherics) -"lM" = (/obj/structure/window/reinforced{dir = 8},/obj/machinery/atmospherics/pipe/simple/cyan/visible{dir = 6},/turf/open/floor/plating/airless,/area/derelict/atmospherics) -"lN" = (/obj/machinery/atmospherics/pipe/manifold/cyan/hidden,/obj/machinery/meter,/turf/open/floor/plating/airless,/area/derelict/atmospherics) -"lO" = (/obj/machinery/atmospherics/pipe/simple/cyan/hidden{icon_state = "intact"; dir = 9},/turf/open/floor/plating/airless,/area/derelict/atmospherics) -"lP" = (/obj/machinery/door/airlock/maintenance{name = "Atmospherics Access"; req_access_txt = "24"},/turf/open/floor/plating/airless,/area/derelict/atmospherics) -"lQ" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/airless,/area/ruin/unpowered/no_grav) -"lR" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/turf/open/floor/plating/airless,/area/ruin/unpowered/no_grav) -"lS" = (/obj/structure/closet/wardrobe/mixed,/obj/effect/spawner/lootdrop/maintenance{lootcount = 2; name = "2maintenance loot spawner"},/turf/open/floor/plasteel,/area/derelict/arrival) -"lT" = (/obj/machinery/atmospherics/components/unary/portables_connector/visible{dir = 4},/turf/open/floor/plasteel/airless,/area/derelict/atmospherics) -"lU" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/turf/open/floor/plating/airless,/area/derelict/atmospherics) -"lV" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{icon_state = "intact"; dir = 5},/turf/open/floor/plating/airless,/area/derelict/atmospherics) -"lW" = (/obj/structure/window/reinforced{dir = 8},/obj/machinery/atmospherics/components/binary/valve,/turf/open/floor/plating/airless,/area/derelict/atmospherics) -"lX" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/turf/open/floor/plating/airless,/area/ruin/unpowered/no_grav) -"lY" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/derelict/arrival) -"lZ" = (/obj/machinery/door/airlock/external{name = "Escape Airlock"},/turf/open/floor/plating,/area/derelict/arrival) -"ma" = (/obj/item/weapon/shard{icon_state = "medium"},/turf/open/floor/plating/airless,/area/derelict/atmospherics) -"mb" = (/obj/structure/lattice,/obj/item/stack/cable_coil/cut,/turf/open/space,/area/ruin/unpowered/no_grav) -"mc" = (/obj/machinery/door/window{dir = 8},/obj/item/weapon/shard{icon_state = "medium"},/turf/open/floor/plasteel/airless,/area/ruin/unpowered/no_grav) -"md" = (/turf/closed/wall,/area/derelict/hallway/secondary) -"me" = (/obj/structure/girder,/turf/open/floor/plating/airless,/area/derelict/hallway/secondary) -"mf" = (/turf/closed/wall/r_wall,/area/derelict/hallway/secondary) -"mg" = (/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plating/airless,/area/ruin/unpowered/no_grav) -"mh" = (/obj/machinery/door/window{base_state = "right"; dir = 4; icon_state = "right"},/turf/open/floor/plasteel/airless,/area/derelict/hallway/primary) -"mi" = (/obj/item/ammo_casing/a357{pixel_x = -5},/obj/item/ammo_casing/a357{pixel_x = 5; pixel_y = 6},/obj/item/ammo_casing/a357,/turf/open/floor/plasteel/airless,/area/derelict/hallway/primary) -"mj" = (/obj/machinery/light/small{dir = 8},/turf/open/floor/plating/airless,/area/derelict/atmospherics) -"mk" = (/turf/open/floor/plasteel/airless{icon_state = "floorscorched1"},/area/derelict/atmospherics) -"ml" = (/obj/structure/window/fulltile,/turf/open/floor/plating/airless,/area/derelict/hallway/secondary) -"mm" = (/obj/structure/grille,/obj/item/weapon/shard,/obj/item/weapon/shard{icon_state = "medium"},/turf/open/floor/plating/airless,/area/space) -"mn" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating/airless,/area/ruin/unpowered/no_grav) -"mo" = (/obj/structure/window/reinforced,/turf/open/floor/plasteel/airless,/area/derelict/atmospherics) -"mp" = (/turf/open/floor/plasteel/airless{icon_state = "damaged5"},/area/derelict/atmospherics) -"mq" = (/turf/open/floor/plasteel{icon_state = "damaged2"; initial_gas_mix = "TEMP=2.7"},/area/derelict/atmospherics) -"mr" = (/turf/open/floor/plasteel/airless{icon_state = "damaged3"},/area/derelict/atmospherics) -"ms" = (/turf/open/floor/plasteel/airless{icon_state = "damaged4"},/area/derelict/atmospherics) -"mt" = (/obj/structure/window/fulltile,/turf/open/space,/area/derelict/atmospherics) -"mu" = (/obj/item/stack/rods,/turf/open/floor/plasteel/airless,/area/derelict/hallway/secondary) -"mv" = (/obj/item/weapon/shard{icon_state = "small"},/turf/open/space,/area/space) -"mw" = (/obj/structure/frame/computer,/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plasteel/airless,/area/derelict/atmospherics) -"mx" = (/obj/machinery/portable_atmospherics/canister,/turf/open/floor/plasteel/airless,/area/derelict/atmospherics) -"my" = (/obj/machinery/light/small,/turf/open/floor/plasteel/airless{icon_state = "damaged5"},/area/derelict/atmospherics) -"mz" = (/obj/structure/lattice,/turf/open/space,/area/derelict/atmospherics) -"mA" = (/obj/item/stack/cable_coil/cut,/turf/open/space,/area/ruin/unpowered/no_grav) -"mB" = (/obj/structure/door_assembly/door_assembly_mai{name = "airlock assembly"},/turf/open/floor/plasteel/airless,/area/derelict/hallway/secondary) -"mC" = (/obj/item/weapon/wirecutters,/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/open/floor/plasteel/airless,/area/derelict/hallway/secondary) -"mD" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/turf/open/floor/plating/airless,/area/derelict/hallway/secondary) -"mE" = (/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/turf/open/floor/plating/airless,/area/derelict/hallway/primary) -"mF" = (/obj/structure/chair{dir = 1},/turf/open/floor/plating/airless,/area/derelict/atmospherics) -"mG" = (/turf/open/floor/plasteel/airless{icon_state = "damaged2"},/area/derelict/atmospherics) -"mH" = (/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plasteel/airless{icon_state = "damaged2"},/area/ruin/unpowered/no_grav) -"mI" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/airless,/area/derelict/hallway/secondary) -"mJ" = (/obj/item/stack/cable_coil/cut,/turf/open/floor/plating/airless,/area/derelict/hallway/primary) -"mK" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plating/airless,/area/derelict/hallway/primary) -"mL" = (/obj/structure/window/reinforced,/turf/open/floor/plating/airless,/area/derelict/atmospherics) -"mM" = (/obj/item/weapon/shard{icon_state = "medium"},/turf/open/floor/plasteel/airless,/area/derelict/atmospherics) -"mN" = (/turf/open/floor/plasteel/airless{icon_state = "damaged1"},/area/derelict/atmospherics) -"mO" = (/obj/effect/spawner/lootdrop/maintenance,/turf/open/space,/area/ruin/unpowered/no_grav) -"mP" = (/obj/machinery/portable_atmospherics/pump,/turf/open/floor/plating/airless,/area/derelict/atmospherics) -"mQ" = (/obj/structure/table,/obj/effect/spawner/lootdrop/maintenance{lootcount = 8; name = "8maintenance loot spawner"},/turf/open/floor/plating/airless,/area/derelict/atmospherics) -"mR" = (/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating/airless,/area/derelict/hallway/primary) -"mS" = (/turf/open/space,/area/derelict/atmospherics) -"mT" = (/obj/machinery/light/small,/turf/open/floor/plasteel/airless,/area/derelict/atmospherics) -"mU" = (/turf/open/floor/plasteel/airless,/area/derelict/hallway/secondary) -"mV" = (/obj/machinery/light/small{dir = 4},/turf/open/floor/plasteel/airless,/area/derelict/hallway/secondary) -"mW" = (/obj/machinery/door/airlock/maintenance{name = "Aux Storage"; req_access_txt = "23"},/turf/open/floor/plating/airless,/area/derelict/hallway/secondary) -"mX" = (/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/structure/cable,/obj/machinery/power/apc{dir = 8; name = "Worn-out APC"; pixel_x = -24; pixel_y = 0},/turf/open/floor/plasteel/airless,/area/derelict/hallway/secondary) -"mY" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/turf/open/floor/plating/airless,/area/derelict/hallway/secondary) -"mZ" = (/turf/open/floor/plating/airless,/area/derelict/hallway/secondary) -"na" = (/obj/machinery/light/small{dir = 1},/turf/open/floor/plasteel/airless,/area/derelict/hallway/secondary) -"nb" = (/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/turf/open/floor/plasteel/airless,/area/derelict/hallway/secondary) -"nc" = (/obj/machinery/power/apc{dir = 1; name = "Worn-out APC"; pixel_x = 0; pixel_y = 24},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/open/floor/plasteel/airless,/area/derelict/atmospherics) -"nd" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel/airless,/area/derelict/hallway/secondary) -"ne" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel/airless{icon_state = "derelict9"},/area/derelict/hallway/secondary) -"nf" = (/obj/machinery/light/small{dir = 1},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel/airless{icon_state = "derelict10"},/area/derelict/hallway/secondary) -"ng" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel/airless{icon_state = "derelict11"},/area/derelict/hallway/secondary) -"nh" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel/airless{icon_state = "derelict12"},/area/derelict/hallway/secondary) -"ni" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel/airless{icon_state = "derelict13"},/area/derelict/hallway/secondary) -"nj" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel/airless{icon_state = "derelict14"},/area/derelict/hallway/secondary) -"nk" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel/airless{icon_state = "derelict15"},/area/derelict/hallway/secondary) -"nl" = (/obj/machinery/light/small{dir = 1},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel/airless{icon_state = "derelict16"},/area/derelict/hallway/secondary) -"nm" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel/airless,/area/derelict/hallway/secondary) -"nn" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/open/floor/plasteel/airless,/area/derelict/hallway/secondary) -"no" = (/turf/open/floor/plasteel/airless{icon_state = "derelict1"},/area/derelict/hallway/secondary) -"np" = (/turf/open/floor/plasteel/airless{icon_state = "derelict2"},/area/derelict/hallway/secondary) -"nq" = (/turf/open/floor/plasteel/airless{icon_state = "derelict3"},/area/derelict/hallway/secondary) -"nr" = (/turf/open/floor/plasteel/airless{icon_state = "derelict4"},/area/derelict/hallway/secondary) -"ns" = (/turf/open/floor/plasteel/airless{icon_state = "derelict5"},/area/derelict/hallway/secondary) -"nt" = (/turf/open/floor/plasteel/airless{icon_state = "derelict6"},/area/derelict/hallway/secondary) -"nu" = (/turf/open/floor/plasteel/airless{icon_state = "derelict7"},/area/derelict/hallway/secondary) -"nv" = (/turf/open/floor/plasteel/airless{icon_state = "derelict8"},/area/derelict/hallway/secondary) -"nw" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/airless,/area/derelict/hallway/secondary) -"nx" = (/obj/structure/lattice,/turf/open/space,/area/derelict/hallway/secondary) -"ny" = (/obj/structure/grille,/obj/structure/window/reinforced,/turf/open/floor/plating/airless,/area/derelict/hallway/secondary) -"nz" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/turf/open/floor/plating/airless,/area/derelict/hallway/secondary) -"nA" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/turf/open/floor/plating/airless,/area/derelict/hallway/secondary) -"nB" = (/turf/closed/wall/r_wall,/area/derelict/se_solar) -"nC" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/airlock/engineering{name = "Aft Solar Access"; req_access_txt = "10"},/turf/open/floor/plasteel/airless,/area/derelict/se_solar) -"nD" = (/obj/machinery/door/airlock/external{name = "Escape Airlock"},/turf/open/floor/plating/airless,/area/derelict/hallway/secondary) -"nE" = (/obj/machinery/door/firedoor,/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating/airless,/area/derelict/hallway/secondary) -"nF" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/firedoor,/turf/open/floor/plasteel/airless,/area/derelict/se_solar) -"nG" = (/obj/structure/closet/emcloset,/turf/open/floor/plasteel/airless,/area/derelict/hallway/secondary) -"nH" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/turf/open/floor/plating/airless,/area/derelict/hallway/secondary) -"nI" = (/obj/structure/girder/reinforced,/turf/open/floor/plating/airless,/area/ruin/unpowered/no_grav) -"nJ" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/closed/wall/r_wall,/area/derelict/se_solar) -"nK" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/closed/wall/r_wall,/area/derelict/se_solar) -"nL" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/door/airlock/engineering{name = "Aft Solar Access"; req_access_txt = "10"},/turf/open/floor/plasteel/airless,/area/derelict/se_solar) -"nM" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/turf/open/floor/plating/airless,/area/derelict/se_solar) -"nN" = (/obj/structure/grille,/turf/open/floor/plating/airless,/area/derelict/hallway/secondary) -"nO" = (/obj/machinery/power/smes,/obj/structure/cable,/turf/open/floor/plasteel/airless,/area/derelict/se_solar) -"nP" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/airless,/area/derelict/se_solar) -"nQ" = (/turf/open/floor/plasteel/airless{icon_state = "damaged4"},/area/derelict/se_solar) -"nR" = (/turf/open/floor/plasteel/airless,/area/derelict/se_solar) -"nS" = (/obj/structure/reagent_dispensers/fueltank,/turf/open/floor/plasteel/airless,/area/derelict/se_solar) -"nT" = (/obj/docking_port/stationary{dheight = 0; dir = 2; dwidth = 11; height = 22; id = "whiteship_z4"; name = "KSS13: Derelict"; width = 35},/turf/open/space,/area/space) -"nU" = (/obj/machinery/power/terminal{icon_state = "term"; dir = 1},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/effect/mob_spawn/derelict_drone,/turf/open/floor/plasteel/airless,/area/derelict/se_solar) -"nV" = (/turf/open/floor/plating/airless,/area/derelict/se_solar) -"nW" = (/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/turf/open/floor/plasteel/airless,/area/derelict/se_solar) -"nX" = (/obj/item/weapon/storage/toolbox/syndicate,/turf/open/floor/plasteel/airless,/area/derelict/se_solar) -"nY" = (/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/structure/cable,/obj/machinery/power/solar_control{id = "derelictsolar"; name = "Primary Solar Control"; track = 0},/turf/open/floor/plasteel/airless,/area/derelict/se_solar) -"nZ" = (/obj/structure/cable,/obj/machinery/power/apc{dir = 8; environ = 0; equipment = 0; lighting = 0; locked = 0; name = "Worn-out APC"; pixel_x = -24; pixel_y = 0},/turf/open/floor/plating/airless,/area/derelict/se_solar) -"oa" = (/obj/item/weapon/paper{desc = ""; info = "The Syndicate have cunningly disguised a Syndicate Uplink as your PDA. Simply enter the code \"678 Bravo\" into the ringtone select to unlock its hidden features.

Objective #1. Kill the God damn AI in a fire blast that it rocks the station. Success!
Objective #2. Escape alive. Failed."; name = "Mission Objectives"},/turf/open/floor/plasteel/airless{icon_state = "damaged2"},/area/derelict/se_solar) -"ob" = (/obj/machinery/light/small{dir = 4},/obj/item/clothing/head/helmet/space/syndicate/black/red,/turf/open/floor/plasteel/airless,/area/derelict/se_solar) -"oc" = (/obj/item/stack/rods,/turf/open/floor/plating/airless,/area/derelict/hallway/secondary) -"od" = (/obj/machinery/door/window{base_state = "right"; dir = 4; icon_state = "right"},/turf/open/floor/plasteel/airless,/area/ruin/unpowered/no_grav) -"oe" = (/obj/machinery/light/small,/turf/open/floor/plasteel/airless,/area/derelict/se_solar) -"of" = (/obj/machinery/door/window{base_state = "right"; dir = 4; icon_state = "right"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/airless,/area/derelict/se_solar) -"og" = (/obj/machinery/door/window{base_state = "right"; dir = 4; icon_state = "right"},/turf/open/floor/plasteel/airless,/area/derelict/se_solar) -"oh" = (/obj/item/clothing/suit/space/syndicate/black/red,/turf/open/floor/plasteel/airless,/area/derelict/se_solar) -"oi" = (/obj/effect/decal/remains/human{desc = "This guy seemed to have died in terrible way! Half his remains are dust."; icon_state = "remains"; name = "Syndicate agent remains"},/turf/open/floor/plasteel/airless,/area/derelict/se_solar) -"oj" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/airless,/area/derelict/se_solar) -"ok" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/airlock/external,/turf/open/floor/plasteel/airless,/area/derelict/se_solar) -"ol" = (/obj/structure/cable,/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/derelict_aft) -"om" = (/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/derelict_aft) -"on" = (/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/power/solar{id = "derelictsolar"; name = "Derelict Solar Array"},/turf/open/floor/plasteel/airless,/area/solar/derelict_aft) -"oo" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/derelict_aft) -"op" = (/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/power/solar{id = "derelictsolar"; name = "Derelict Solar Array"},/turf/open/floor/plating/airless{icon_state = "platingdmg3"},/area/solar/derelict_aft) -"oq" = (/turf/open/floor/plating/airless,/turf/open/floor/plating/airless{icon_state = "platingdmg2"},/area/solar/derelict_aft) -"or" = (/obj/structure/lattice/catwalk,/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/open/space,/area/solar/derelict_aft) -"os" = (/obj/structure/lattice/catwalk,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/space,/area/solar/derelict_aft) -"ot" = (/obj/structure/lattice/catwalk,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/space,/area/solar/derelict_aft) -"ou" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/derelict_aft) -"ov" = (/obj/structure/lattice/catwalk,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/open/space,/area/solar/derelict_aft) -"ow" = (/obj/structure/lattice/catwalk,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/open/space,/area/solar/derelict_aft) -"ox" = (/obj/structure/cable,/obj/machinery/power/solar{id = "derelictsolar"; name = "Derelict Solar Array"},/turf/open/floor/plasteel/airless,/area/solar/derelict_aft) -"oy" = (/turf/open/floor/plating/airless{icon_state = "platingdmg1"},/area/solar/derelict_aft) -"oz" = (/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/derelict_aft) -"oA" = (/obj/structure/lattice/catwalk,/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/space,/area/solar/derelict_aft) -"oB" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/derelict_aft) -"oC" = (/obj/structure/lattice/catwalk,/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/open/space,/area/solar/derelict_aft) -"oD" = (/obj/machinery/power/tracker,/obj/structure/cable,/turf/open/floor/plasteel/airless,/area/solar/derelict_aft) +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"aa" = ( +/turf/open/space, +/area/space) +"ab" = ( +/obj/structure/lattice, +/turf/open/space, +/area/space) +"ac" = ( +/obj/structure/grille, +/turf/open/floor/plating/airless, +/area/space) +"ad" = ( +/obj/machinery/power/tracker, +/obj/structure/cable{ + icon_state = "0-2"; + d2 = 2 + }, +/turf/open/floor/plasteel/airless, +/area/solar/derelict_starboard) +"ae" = ( +/obj/structure/lattice/catwalk, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/space, +/area/solar/derelict_starboard) +"af" = ( +/turf/open/floor/plating/airless, +/turf/open/floor/plating/airless{ + icon_state = "platingdmg2" + }, +/area/solar/derelict_starboard) +"ag" = ( +/obj/structure/cable{ + icon_state = "0-2"; + d2 = 2 + }, +/turf/open/floor/plasteel/airless{ + icon_state = "damaged5" + }, +/area/solar/derelict_starboard) +"ah" = ( +/obj/machinery/power/solar{ + id = "derelictsolar"; + name = "Derelict Solar Array" + }, +/obj/structure/cable{ + icon_state = "0-2"; + d2 = 2 + }, +/turf/open/floor/plasteel/airless, +/area/solar/derelict_starboard) +"ai" = ( +/obj/structure/lattice/catwalk, +/turf/open/space, +/area/solar/derelict_starboard) +"aj" = ( +/obj/structure/lattice/catwalk, +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/turf/open/space, +/area/solar/derelict_starboard) +"ak" = ( +/obj/structure/lattice/catwalk, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/open/space, +/area/solar/derelict_starboard) +"al" = ( +/obj/structure/lattice/catwalk, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/turf/open/space, +/area/solar/derelict_starboard) +"am" = ( +/obj/structure/lattice/catwalk, +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/turf/open/space, +/area/solar/derelict_starboard) +"an" = ( +/obj/structure/lattice/catwalk, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/turf/open/space, +/area/solar/derelict_starboard) +"ao" = ( +/obj/structure/lattice/catwalk, +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/turf/open/space, +/area/solar/derelict_starboard) +"ap" = ( +/obj/machinery/power/solar{ + id = "derelictsolar"; + name = "Derelict Solar Array" + }, +/obj/structure/cable, +/turf/open/floor/plasteel/airless, +/area/solar/derelict_starboard) +"aq" = ( +/obj/structure/lattice/catwalk, +/obj/structure/cable, +/turf/open/space, +/area/solar/derelict_starboard) +"ar" = ( +/obj/structure/lattice/catwalk, +/obj/structure/cable{ + icon_state = "0-2"; + d2 = 2 + }, +/turf/open/space, +/area/solar/derelict_starboard) +"as" = ( +/turf/closed/wall, +/area/space) +"at" = ( +/obj/structure/grille, +/obj/structure/window/reinforced, +/obj/structure/window/reinforced{ + dir = 1 + }, +/turf/open/floor/plating, +/area/derelict/solar_control) +"au" = ( +/obj/machinery/door/airlock/external{ + name = "External Engineering" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/turf/open/floor/plating, +/area/derelict/solar_control) +"av" = ( +/obj/structure/grille, +/obj/structure/window/reinforced, +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/open/floor/plating, +/area/derelict/solar_control) +"aw" = ( +/obj/structure/grille, +/obj/structure/window/reinforced, +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/turf/open/floor/plating, +/area/derelict/solar_control) +"ax" = ( +/turf/closed/wall/r_wall, +/area/space) +"ay" = ( +/turf/open/floor/plating/airless, +/area/space) +"az" = ( +/turf/open/floor/plasteel, +/area/derelict/solar_control) +"aA" = ( +/obj/structure/window/reinforced{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/derelict/solar_control) +"aB" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/turf/open/floor/plasteel, +/area/derelict/solar_control) +"aC" = ( +/obj/machinery/power/smes, +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/turf/open/floor/plasteel, +/area/derelict/solar_control) +"aD" = ( +/obj/structure/cable{ + icon_state = "0-2"; + d2 = 2 + }, +/obj/machinery/power/solar_control{ + id = "derelictsolar"; + name = "Primary Solar Control"; + track = 0 + }, +/obj/structure/cable, +/turf/open/floor/plasteel, +/area/derelict/solar_control) +"aE" = ( +/obj/structure/grille, +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/structure/window/reinforced, +/turf/open/floor/plating, +/area/derelict/solar_control) +"aF" = ( +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/open/floor/plasteel, +/area/derelict/solar_control) +"aG" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/turf/open/floor/plasteel, +/area/derelict/solar_control) +"aH" = ( +/obj/machinery/power/terminal{ + icon_state = "term"; + dir = 1 + }, +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/turf/open/floor/plasteel, +/area/derelict/solar_control) +"aI" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/machinery/light/small{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/derelict/solar_control) +"aJ" = ( +/obj/machinery/light/small{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/derelict/bridge/ai_upload) +"aK" = ( +/obj/machinery/door/airlock/external{ + name = "Air Bridge Access" + }, +/turf/open/floor/plasteel, +/area/derelict/bridge/ai_upload) +"aL" = ( +/obj/machinery/door/airlock/external{ + name = "Air Bridge Access" + }, +/turf/open/floor/plating, +/area/derelict/solar_control) +"aM" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/plasteel, +/area/derelict/solar_control) +"aN" = ( +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/structure/window/reinforced, +/turf/open/floor/plasteel, +/area/derelict/solar_control) +"aO" = ( +/obj/structure/window/reinforced, +/turf/open/floor/plasteel, +/area/derelict/solar_control) +"aP" = ( +/obj/machinery/door/window, +/turf/open/floor/plasteel, +/area/derelict/solar_control) +"aQ" = ( +/obj/machinery/power/apc{ + dir = 8; + environ = 0; + equipment = 0; + lighting = 0; + locked = 0; + name = "Starboard Solar APC"; + pixel_x = -24; + pixel_y = 0 + }, +/obj/structure/cable, +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/turf/open/floor/plasteel, +/area/derelict/solar_control) +"aR" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/turf/open/floor/plasteel, +/area/derelict/solar_control) +"aS" = ( +/obj/machinery/door/airlock/external{ + name = "External Engineering" + }, +/turf/open/floor/plating, +/area/derelict/solar_control) +"aT" = ( +/obj/machinery/door/airlock/highsecurity, +/turf/open/floor/plasteel, +/area/derelict/bridge/ai_upload) +"aU" = ( +/obj/structure/frame/computer, +/turf/open/floor/plasteel, +/area/derelict/bridge/ai_upload) +"aV" = ( +/obj/machinery/computer/monitor, +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/turf/open/floor/plasteel, +/area/derelict/solar_control) +"aW" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/light/small, +/turf/open/floor/plasteel, +/area/derelict/solar_control) +"aX" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/open/floor/plasteel, +/area/derelict/solar_control) +"aY" = ( +/obj/structure/grille, +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/structure/window/reinforced{ + dir = 8 + }, +/turf/open/floor/plating, +/area/derelict/solar_control) +"aZ" = ( +/obj/structure/grille/broken, +/turf/open/floor/plating/airless, +/area/space) +"ba" = ( +/obj/machinery/light/small, +/turf/open/floor/plasteel, +/area/derelict/bridge/ai_upload) +"bb" = ( +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/machinery/porta_turret_cover, +/turf/open/floor/plasteel, +/area/derelict/bridge/ai_upload) +"bc" = ( +/obj/machinery/porta_turret_cover, +/turf/open/floor/plasteel, +/area/derelict/bridge/ai_upload) +"bd" = ( +/obj/machinery/door/airlock/engineering{ + name = "Starboard Solar Access"; + req_access_txt = "10" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/plasteel, +/area/derelict/solar_control) +"be" = ( +/obj/structure/grille, +/turf/open/space, +/area/space) +"bf" = ( +/obj/structure/closet, +/obj/effect/spawner/lootdrop/maintenance, +/turf/open/floor/plasteel, +/area/derelict/solar_control) +"bg" = ( +/obj/machinery/door/window, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/plasteel, +/area/derelict/solar_control) +"bh" = ( +/obj/machinery/computer/atmos_alert, +/turf/open/floor/plasteel, +/area/derelict/bridge/ai_upload) +"bi" = ( +/obj/machinery/light/small{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/derelict/bridge/ai_upload) +"bj" = ( +/obj/machinery/door/window{ + base_state = "right"; + dir = 4; + icon_state = "right" + }, +/turf/open/floor/plasteel, +/area/derelict/bridge/ai_upload) +"bk" = ( +/obj/item/stack/cable_coil/cut{ + amount = 2; + dir = 2; + icon_state = "coil_red2" + }, +/turf/open/floor/plasteel, +/area/derelict/solar_control) +"bl" = ( +/turf/open/floor/plasteel{ + icon_state = "damaged1" + }, +/area/derelict/solar_control) +"bm" = ( +/turf/open/floor/plasteel{ + icon_state = "damaged5" + }, +/area/derelict/solar_control) +"bn" = ( +/obj/item/weapon/stock_parts/matter_bin, +/turf/open/floor/plasteel{ + icon_state = "damaged4" + }, +/area/derelict/solar_control) +"bo" = ( +/obj/structure/rack, +/obj/item/weapon/circuitboard/machine/smes, +/turf/open/floor/plasteel, +/area/derelict/bridge/ai_upload) +"bp" = ( +/obj/structure/rack, +/obj/item/weapon/circuitboard/machine/microwave, +/turf/open/floor/plasteel, +/area/derelict/bridge/ai_upload) +"bq" = ( +/obj/structure/rack, +/turf/open/floor/plasteel, +/area/derelict/bridge/ai_upload) +"br" = ( +/turf/open/floor/plasteel/airless, +/area/space) +"bs" = ( +/obj/structure/closet, +/obj/effect/spawner/lootdrop/maintenance{ + lootcount = 3; + name = "3maintenance loot spawner" + }, +/turf/open/floor/plasteel, +/area/derelict/solar_control) +"bt" = ( +/turf/open/floor/plasteel{ + icon_state = "damaged2" + }, +/area/derelict/solar_control) +"bu" = ( +/obj/item/stack/cable_coil/cut{ + amount = 2; + dir = 2; + icon_state = "coil_red2" + }, +/turf/open/floor/plasteel{ + icon_state = "damaged3" + }, +/area/derelict/solar_control) +"bv" = ( +/obj/structure/rack, +/obj/item/weapon/circuitboard/machine/cryo_tube, +/turf/open/floor/plasteel, +/area/derelict/bridge/ai_upload) +"bw" = ( +/turf/open/floor/plasteel/airless{ + icon_state = "damaged4" + }, +/area/space) +"bx" = ( +/turf/open/floor/plasteel/airless{ + icon_state = "damaged3" + }, +/area/space) +"by" = ( +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/plasteel/airless, +/area/derelict/bridge/ai_upload) +"bz" = ( +/obj/structure/closet, +/obj/effect/spawner/lootdrop/maintenance{ + lootcount = 2; + name = "2maintenance loot spawner" + }, +/turf/open/floor/plasteel, +/area/derelict/solar_control) +"bA" = ( +/obj/machinery/light/small{ + dir = 8 + }, +/turf/open/floor/plasteel/airless, +/area/derelict/bridge/ai_upload) +"bB" = ( +/obj/machinery/door/window{ + base_state = "right"; + dir = 4; + icon_state = "right" + }, +/turf/open/floor/plasteel/airless, +/area/space) +"bC" = ( +/turf/open/floor/plasteel/airless{ + icon_state = "damaged2" + }, +/area/space) +"bD" = ( +/obj/item/weapon/stock_parts/console_screen, +/turf/open/space, +/area/derelict/bridge/ai_upload) +"bE" = ( +/turf/open/floor/plasteel/airless/circuit, +/area/derelict/bridge/ai_upload) +"bF" = ( +/obj/machinery/porta_turret_cover, +/turf/open/floor/plasteel/airless, +/area/derelict/bridge/ai_upload) +"bG" = ( +/obj/item/device/aicard, +/turf/open/floor/plasteel/airless{ + icon_state = "damaged2" + }, +/area/derelict/bridge/ai_upload) +"bH" = ( +/obj/machinery/light/small{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/derelict/solar_control) +"bI" = ( +/obj/structure/rack, +/obj/item/weapon/circuitboard/computer/solar_control, +/turf/open/floor/plasteel, +/area/derelict/bridge/ai_upload) +"bJ" = ( +/obj/structure/rack, +/obj/item/weapon/circuitboard/machine/autolathe, +/obj/item/weapon/circuitboard/machine/protolathe{ + pixel_x = -5; + pixel_y = -3 + }, +/turf/open/floor/plasteel, +/area/derelict/bridge/ai_upload) +"bK" = ( +/obj/structure/rack, +/obj/item/weapon/circuitboard/machine/circuit_imprinter, +/turf/open/floor/plasteel, +/area/derelict/bridge/ai_upload) +"bL" = ( +/obj/machinery/power/apc{ + dir = 8; + name = "Worn-out APC"; + pixel_x = -24; + pixel_y = 0 + }, +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/turf/open/floor/plasteel/airless, +/area/derelict/bridge/ai_upload) +"bM" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/turf/open/floor/plasteel/airless/circuit, +/area/derelict/bridge/ai_upload) +"bN" = ( +/obj/structure/frame/computer, +/obj/item/weapon/circuitboard/computer/rdconsole, +/turf/open/floor/plasteel/airless, +/area/derelict/bridge/ai_upload) +"bO" = ( +/obj/structure/frame/computer, +/turf/open/floor/plasteel/airless, +/area/derelict/bridge/ai_upload) +"bP" = ( +/obj/machinery/door/airlock/external, +/turf/open/floor/plasteel, +/area/derelict/solar_control) +"bQ" = ( +/obj/effect/spawner/lootdrop/maintenance, +/turf/open/floor/plasteel/airless{ + icon_state = "damaged4" + }, +/area/space) +"bR" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/turf/open/floor/plasteel/airless/circuit, +/area/derelict/bridge/ai_upload) +"bS" = ( +/obj/machinery/light, +/turf/open/floor/plasteel/airless, +/area/derelict/bridge/ai_upload) +"bT" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/turf/closed/wall/r_wall, +/area/derelict/bridge/ai_upload) +"bU" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/closed/wall/r_wall, +/area/derelict/bridge/ai_upload) +"bV" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/turf/closed/wall/r_wall, +/area/derelict/bridge/ai_upload) +"bW" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/turf/closed/wall/r_wall, +/area/derelict/bridge/ai_upload) +"bX" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/turf/open/floor/plasteel, +/area/derelict/solar_control) +"bY" = ( +/obj/item/weapon/ore/iron, +/obj/item/weapon/ore/iron, +/obj/item/weapon/ore/iron, +/turf/open/space, +/area/space) +"bZ" = ( +/obj/machinery/light/small{ + dir = 1 + }, +/turf/open/floor/plasteel/airless{ + icon_state = "damaged5" + }, +/area/derelict/gravity_generator) +"ca" = ( +/obj/item/weapon/stock_parts/manipulator, +/turf/open/floor/plasteel/airless{ + icon_state = "damaged2" + }, +/area/derelict/gravity_generator) +"cb" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/turf/closed/wall, +/area/derelict/bridge/access) +"cc" = ( +/obj/machinery/door/airlock/maintenance, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/plasteel, +/area/derelict/bridge/access) +"cd" = ( +/obj/item/weapon/ore/slag, +/turf/open/floor/plasteel/airless{ + icon_state = "damaged4" + }, +/area/derelict/gravity_generator) +"ce" = ( +/turf/open/floor/plasteel/airless{ + icon_state = "damaged5" + }, +/area/space) +"cf" = ( +/obj/structure/rack, +/obj/item/weapon/melee/classic_baton, +/turf/open/floor/plasteel, +/area/derelict/bridge/access) +"cg" = ( +/obj/structure/rack, +/obj/machinery/light/small{ + dir = 1 + }, +/obj/effect/spawner/lootdrop/maintenance, +/turf/open/floor/plasteel, +/area/derelict/bridge/access) +"ch" = ( +/obj/structure/rack, +/obj/item/clothing/head/helmet/swat, +/turf/open/floor/plasteel, +/area/derelict/bridge/access) +"ci" = ( +/obj/structure/rack, +/obj/effect/spawner/lootdrop/maintenance, +/turf/open/floor/plasteel, +/area/derelict/bridge/access) +"cj" = ( +/obj/structure/rack, +/obj/item/weapon/electronics/apc, +/turf/open/floor/plasteel, +/area/derelict/bridge/access) +"ck" = ( +/obj/structure/rack, +/obj/item/weapon/stock_parts/capacitor, +/obj/item/weapon/stock_parts/manipulator, +/turf/open/floor/plasteel, +/area/derelict/bridge/access) +"cl" = ( +/obj/item/weapon/screwdriver, +/turf/open/floor/plasteel/airless{ + icon_state = "damaged5" + }, +/area/derelict/gravity_generator) +"cm" = ( +/obj/machinery/gravity_generator/main/station{ + on = 0 + }, +/turf/open/floor/plasteel/airless, +/area/derelict/gravity_generator) +"cn" = ( +/obj/item/weapon/ore/slag, +/turf/open/space, +/area/space) +"co" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/turf/closed/wall, +/area/derelict/bridge/access) +"cp" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/turf/open/floor/plasteel, +/area/derelict/bridge/access) +"cq" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/turf/open/floor/plasteel, +/area/derelict/bridge/access) +"cr" = ( +/obj/item/stack/cable_coil/cut, +/turf/open/floor/plasteel/airless{ + icon_state = "damaged4" + }, +/area/derelict/gravity_generator) +"cs" = ( +/obj/structure/cable, +/obj/machinery/power/apc{ + dir = 0; + name = "Worn-out APC"; + pixel_y = -24 + }, +/turf/open/floor/plasteel, +/area/derelict/bridge/access) +"ct" = ( +/obj/structure/rack, +/obj/item/weapon/stock_parts/cell/high, +/obj/item/weapon/stock_parts/cell/high, +/obj/item/weapon/stock_parts/cell/high, +/obj/item/weapon/stock_parts/cell/high, +/obj/item/weapon/stock_parts/cell/high, +/obj/item/weapon/stock_parts/cell/high, +/turf/open/floor/plating, +/area/derelict/bridge/access) +"cu" = ( +/obj/machinery/light/small{ + dir = 4 + }, +/obj/structure/rack, +/obj/item/stack/cable_coil/cut, +/obj/item/stack/cable_coil/cut, +/turf/open/floor/plasteel, +/area/derelict/bridge/access) +"cv" = ( +/obj/structure/grille, +/obj/structure/window/reinforced, +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/structure/window/reinforced{ + dir = 1 + }, +/turf/open/floor/plating, +/area/derelict/bridge/access) +"cw" = ( +/obj/machinery/door/airlock/command{ + name = "E.V.A."; + req_access = null; + req_access_txt = "18" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/plasteel, +/area/derelict/bridge/access) +"cx" = ( +/obj/machinery/door/airlock/engineering{ + name = "Engineering Secure Storage"; + req_access_txt = "10" + }, +/turf/open/floor/plasteel, +/area/derelict/bridge/access) +"cy" = ( +/obj/machinery/door/firedoor, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/plasteel, +/area/derelict/bridge/access) +"cz" = ( +/obj/structure/grille, +/obj/structure/window/reinforced, +/obj/structure/window/reinforced{ + dir = 8 + }, +/turf/open/floor/plating/airless, +/area/derelict/gravity_generator) +"cA" = ( +/obj/structure/grille, +/obj/structure/window/reinforced, +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/structure/window/reinforced{ + dir = 1 + }, +/turf/open/floor/plating/airless, +/area/derelict/gravity_generator) +"cB" = ( +/obj/machinery/door/airlock/engineering{ + name = "Engineering Access"; + req_access_txt = "10" + }, +/turf/open/floor/plasteel, +/area/derelict/gravity_generator) +"cC" = ( +/obj/structure/grille, +/obj/structure/window/reinforced{ + dir = 1 + }, +/turf/open/floor/plating/airless, +/area/derelict/gravity_generator) +"cD" = ( +/obj/structure/grille, +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/structure/window/reinforced{ + dir = 4 + }, +/turf/open/floor/plating/airless, +/area/derelict/gravity_generator) +"cE" = ( +/turf/open/floor/plating, +/area/space) +"cF" = ( +/obj/effect/spawner/lootdrop/maintenance, +/turf/open/floor/plasteel/airless/solarpanel, +/area/space) +"cG" = ( +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/obj/item/wallframe/apc, +/turf/open/floor/plating/airless, +/area/derelict/gravity_generator) +"cH" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/open/floor/plating/airless, +/area/space) +"cI" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/turf/open/floor/plating/airless, +/area/derelict/gravity_generator) +"cJ" = ( +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/obj/structure/frame/machine, +/obj/item/weapon/stock_parts/console_screen, +/turf/open/floor/plating/airless, +/area/derelict/gravity_generator) +"cK" = ( +/turf/open/floor/plasteel/airless/solarpanel, +/area/space) +"cL" = ( +/obj/item/stack/cable_coil/cut, +/turf/open/space, +/area/space) +"cM" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/turf/open/floor/plating, +/area/derelict/bridge/access) +"cN" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/turf/open/floor/plasteel, +/area/derelict/bridge/access) +"cO" = ( +/obj/machinery/door/firedoor, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/open/floor/plasteel, +/area/derelict/bridge/access) +"cP" = ( +/obj/machinery/door/airlock/glass, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/open/floor/plasteel, +/area/derelict/bridge/access) +"cQ" = ( +/obj/item/weapon/reagent_containers/food/drinks/beer, +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/turf/open/floor/plasteel, +/area/derelict/bridge/access) +"cR" = ( +/obj/machinery/light/small{ + dir = 8 + }, +/obj/structure/table, +/obj/item/weapon/paper{ + info = "If the equipment breaks there should be enough spare parts in our engineering storage near the north east solar array."; + name = "Equipment Inventory" + }, +/turf/open/floor/plasteel/airless, +/area/derelict/gravity_generator) +"cS" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/plating/airless, +/area/derelict/gravity_generator) +"cT" = ( +/obj/machinery/light/small{ + dir = 4 + }, +/obj/item/weapon/stock_parts/matter_bin{ + pixel_x = -10; + pixel_y = 5 + }, +/obj/item/weapon/stock_parts/matter_bin{ + pixel_x = 5; + pixel_y = 5 + }, +/obj/item/weapon/stock_parts/matter_bin, +/turf/open/floor/plating/airless, +/area/derelict/gravity_generator) +"cU" = ( +/obj/item/weapon/stock_parts/matter_bin, +/turf/open/space, +/area/space) +"cV" = ( +/obj/structure/window/reinforced, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/plasteel, +/area/derelict/bridge/access) +"cW" = ( +/obj/structure/sign/electricshock, +/turf/closed/wall/r_wall, +/area/derelict/singularity_engine) +"cX" = ( +/obj/structure/sign/securearea, +/turf/closed/wall/r_wall, +/area/derelict/singularity_engine) +"cY" = ( +/obj/machinery/door/airlock/engineering{ + name = "Engineering Access"; + req_access_txt = "10" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/plating/airless, +/area/derelict/gravity_generator) +"cZ" = ( +/obj/structure/sign/securearea{ + name = "ENGINEERING ACCESS" + }, +/turf/closed/wall/r_wall, +/area/derelict/gravity_generator) +"da" = ( +/obj/effect/spawner/lootdrop/maintenance, +/turf/open/space, +/area/space) +"db" = ( +/obj/structure/window/reinforced{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/derelict/bridge/access) +"dc" = ( +/obj/structure/frame/computer, +/obj/structure/cable{ + icon_state = "0-2"; + d2 = 2 + }, +/turf/open/floor/plasteel, +/area/derelict/bridge) +"dd" = ( +/obj/structure/table, +/obj/effect/spawner/lootdrop/maintenance{ + lootcount = 2; + name = "2maintenance loot spawner" + }, +/turf/open/floor/plasteel, +/area/derelict/bridge) +"de" = ( +/obj/machinery/computer/security, +/turf/open/floor/plasteel, +/area/derelict/bridge) +"df" = ( +/obj/structure/table, +/obj/item/stack/cable_coil{ + pixel_x = 3; + pixel_y = -7 + }, +/turf/open/floor/plasteel, +/area/derelict/bridge) +"dg" = ( +/obj/structure/table, +/obj/machinery/light/small{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/derelict/bridge) +"dh" = ( +/obj/structure/table, +/obj/item/weapon/paper_bin{ + pixel_x = -3; + pixel_y = 7 + }, +/turf/open/floor/plasteel, +/area/derelict/bridge) +"di" = ( +/obj/item/weapon/grenade/empgrenade, +/obj/structure/table, +/obj/structure/window/reinforced{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/derelict/bridge) +"dj" = ( +/obj/effect/spawner/lootdrop/maintenance, +/turf/open/floor/plasteel/airless{ + icon_state = "damaged5" + }, +/area/derelict/singularity_engine) +"dk" = ( +/obj/item/stack/cable_coil/cut, +/obj/machinery/light/small{ + dir = 1 + }, +/turf/open/floor/plating/airless, +/area/derelict/singularity_engine) +"dl" = ( +/obj/machinery/door/airlock/engineering{ + name = "Engineering Access"; + req_access_txt = "10" + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/open/floor/plasteel, +/area/derelict/gravity_generator) +"dm" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/plating, +/area/derelict/bridge/access) +"dn" = ( +/obj/item/weapon/reagent_containers/food/drinks/beer, +/turf/open/floor/plasteel, +/area/derelict/bridge) +"do" = ( +/obj/structure/table, +/obj/item/weapon/paper/crumpled, +/turf/open/floor/plasteel, +/area/derelict/bridge) +"dp" = ( +/obj/structure/table, +/obj/structure/window/reinforced{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/derelict/bridge) +"dq" = ( +/obj/structure/window/reinforced, +/obj/machinery/portable_atmospherics/canister/toxins, +/turf/open/floor/plasteel/airless{ + icon_state = "damaged3" + }, +/area/derelict/singularity_engine) +"dr" = ( +/obj/structure/window/reinforced, +/turf/open/floor/plasteel/airless{ + icon_state = "damaged5" + }, +/area/derelict/singularity_engine) +"ds" = ( +/obj/structure/window/reinforced, +/obj/effect/spawner/lootdrop/maintenance, +/turf/open/floor/plasteel/airless{ + icon_state = "damaged4" + }, +/area/derelict/singularity_engine) +"dt" = ( +/obj/structure/window/reinforced, +/turf/open/floor/plasteel/airless{ + icon_state = "damaged4" + }, +/area/derelict/singularity_engine) +"du" = ( +/obj/structure/window/reinforced, +/turf/open/floor/plasteel/airless{ + icon_state = "damaged3" + }, +/area/derelict/singularity_engine) +"dv" = ( +/obj/structure/closet/radiation, +/obj/structure/sign/securearea{ + desc = "A warning sign which reads 'RADIOACTIVE AREA'"; + icon_state = "radiation"; + name = "RADIOACTIVE AREA"; + pixel_x = 32; + pixel_y = 0 + }, +/turf/open/floor/plasteel, +/area/derelict/gravity_generator) +"dw" = ( +/obj/machinery/light/small{ + dir = 8 + }, +/turf/open/floor/plasteel/airless{ + icon_state = "damaged2" + }, +/area/derelict/singularity_engine) +"dx" = ( +/obj/machinery/power/emitter{ + dir = 1; + icon_state = "emitter" + }, +/turf/open/floor/plating/airless, +/area/derelict/singularity_engine) +"dy" = ( +/obj/machinery/field/generator, +/turf/open/floor/plating/airless, +/area/derelict/singularity_engine) +"dz" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/window/reinforced, +/turf/open/floor/plasteel, +/area/derelict/bridge/access) +"dA" = ( +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plasteel, +/area/derelict/bridge/access) +"dB" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plating, +/area/derelict/bridge) +"dC" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + on = 1 + }, +/turf/open/floor/plasteel, +/area/derelict/bridge) +"dD" = ( +/obj/item/stack/rods, +/turf/open/floor/plating/airless, +/area/space) +"dE" = ( +/obj/structure/grille, +/obj/structure/window/reinforced, +/turf/open/floor/plating/airless, +/area/derelict/singularity_engine) +"dF" = ( +/obj/structure/grille, +/obj/structure/window/reinforced, +/obj/structure/window/reinforced{ + dir = 4 + }, +/turf/open/floor/plating/airless, +/area/derelict/singularity_engine) +"dG" = ( +/obj/structure/grille, +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/structure/window/reinforced, +/obj/structure/window/reinforced{ + dir = 8 + }, +/turf/open/floor/plating/airless, +/area/space) +"dH" = ( +/obj/structure/noticeboard, +/turf/closed/wall/r_wall, +/area/derelict/singularity_engine) +"dI" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/turf/open/floor/plasteel, +/area/derelict/bridge/access) +"dJ" = ( +/obj/machinery/door/window/eastleft{ + name = "Heads of Staff"; + req_access_txt = "19" + }, +/turf/open/floor/plasteel, +/area/derelict/bridge/access) +"dK" = ( +/obj/structure/table, +/obj/item/device/paicard, +/turf/open/floor/plasteel, +/area/derelict/bridge) +"dL" = ( +/obj/structure/chair/stool, +/turf/open/floor/plasteel, +/area/derelict/bridge) +"dM" = ( +/obj/structure/table, +/obj/item/weapon/stock_parts/cell, +/obj/structure/window/reinforced{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/derelict/bridge) +"dN" = ( +/obj/item/weapon/storage/toolbox/syndicate, +/turf/open/floor/plasteel/airless{ + icon_state = "damaged2" + }, +/area/derelict/singularity_engine) +"dO" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/turf/open/floor/plasteel, +/area/derelict/bridge/access) +"dP" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/turf/open/floor/plating, +/area/derelict/bridge/access) +"dQ" = ( +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/turf/open/floor/plasteel, +/area/derelict/bridge/access) +"dR" = ( +/obj/item/weapon/paper{ + info = "Objective #1: Destroy the station with a nuclear device."; + name = "Objectives of a Nuclear Operative" + }, +/turf/open/floor/plasteel/airless{ + icon_state = "damaged2" + }, +/area/derelict/singularity_engine) +"dS" = ( +/obj/structure/window/reinforced{ + dir = 4 + }, +/turf/open/floor/plating, +/area/derelict/bridge/access) +"dT" = ( +/obj/structure/table, +/turf/open/floor/plasteel, +/area/derelict/bridge) +"dU" = ( +/obj/structure/table, +/obj/effect/spawner/lootdrop/maintenance, +/turf/open/floor/plasteel, +/area/derelict/bridge) +"dV" = ( +/obj/structure/chair, +/turf/open/floor/plasteel, +/area/derelict/bridge) +"dW" = ( +/obj/structure/table, +/obj/item/weapon/screwdriver, +/turf/open/floor/plasteel, +/area/derelict/bridge) +"dX" = ( +/obj/structure/table, +/obj/item/weapon/reagent_containers/food/drinks/beer, +/obj/structure/window/reinforced{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/derelict/bridge) +"dY" = ( +/obj/item/stack/rods, +/turf/open/space, +/area/space) +"dZ" = ( +/obj/structure/grille, +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/structure/window/reinforced{ + dir = 8 + }, +/turf/open/floor/plating/airless, +/area/derelict/singularity_engine) +"ea" = ( +/obj/item/weapon/shard, +/obj/structure/grille/broken, +/obj/effect/decal/remains/human{ + desc = "This guy seemed to have died in terrible way! Half his remains are dust."; + icon_state = "remains"; + name = "Syndicate agent remains" + }, +/turf/open/floor/plasteel/airless{ + icon_state = "damaged2" + }, +/area/derelict/singularity_engine) +"eb" = ( +/obj/item/clothing/suit/space/syndicate/black/engie, +/turf/open/floor/plating/airless, +/area/derelict/singularity_engine) +"ec" = ( +/obj/item/weapon/shard, +/turf/open/floor/plasteel/airless{ + icon_state = "damaged5" + }, +/area/derelict/singularity_engine) +"ed" = ( +/obj/structure/table, +/obj/item/weapon/rack_parts, +/turf/open/floor/plasteel, +/area/derelict/bridge) +"ee" = ( +/obj/structure/window/fulltile, +/turf/open/floor/plasteel, +/area/derelict/bridge) +"ef" = ( +/obj/structure/table, +/obj/machinery/power/apc{ + dir = 0; + name = "Worn-out APC"; + pixel_y = -24 + }, +/obj/structure/cable, +/obj/effect/spawner/lootdrop/maintenance, +/turf/open/floor/plasteel, +/area/derelict/bridge) +"eg" = ( +/obj/structure/table, +/obj/machinery/light/small, +/turf/open/floor/plasteel, +/area/derelict/bridge) +"eh" = ( +/obj/structure/table, +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/effect/spawner/lootdrop/maintenance, +/turf/open/floor/plasteel, +/area/derelict/bridge) +"ei" = ( +/obj/structure/window/reinforced{ + dir = 8 + }, +/turf/open/floor/plasteel/airless{ + icon_state = "damaged2" + }, +/area/derelict/singularity_engine) +"ej" = ( +/obj/item/clothing/head/helmet/space/syndicate/black/engie, +/turf/open/floor/plating/airless, +/area/derelict/singularity_engine) +"ek" = ( +/obj/item/weapon/shard{ + icon_state = "small" + }, +/turf/open/floor/plating/airless, +/area/derelict/singularity_engine) +"el" = ( +/obj/structure/window/reinforced{ + dir = 1 + }, +/turf/open/floor/plating/airless, +/area/space) +"em" = ( +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/structure/window/reinforced{ + dir = 4 + }, +/turf/open/floor/plating/airless, +/area/derelict/singularity_engine) +"en" = ( +/obj/machinery/door/window{ + dir = 2; + name = "Captain's Quarters"; + req_access_txt = "20" + }, +/obj/structure/grille, +/turf/open/floor/plating/airless, +/area/derelict/bridge) +"eo" = ( +/obj/structure/grille, +/obj/structure/window/reinforced{ + dir = 8 + }, +/turf/open/floor/plating/airless, +/area/derelict/singularity_engine) +"ep" = ( +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/machinery/light/small{ + dir = 8 + }, +/turf/open/floor/plasteel/airless{ + icon_state = "damaged2" + }, +/area/derelict/singularity_engine) +"eq" = ( +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/machinery/light/small{ + dir = 4 + }, +/turf/open/floor/plating/airless, +/area/derelict/singularity_engine) +"er" = ( +/obj/structure/grille, +/obj/structure/window/reinforced{ + dir = 4 + }, +/turf/open/floor/plating/airless, +/area/derelict/singularity_engine) +"es" = ( +/obj/item/stack/cable_coil/cut, +/turf/open/floor/plasteel/airless{ + icon_state = "damaged5" + }, +/area/derelict/singularity_engine) +"et" = ( +/obj/effect/spawner/lootdrop/crate_spawner, +/turf/open/floor/plasteel/airless, +/area/derelict/bridge/access) +"eu" = ( +/obj/item/drone_shell, +/turf/open/floor/plasteel/airless, +/area/derelict/bridge/access) +"ev" = ( +/obj/structure/table, +/obj/item/device/assembly/flash/handheld, +/turf/open/floor/plasteel/airless, +/area/derelict/bridge/access) +"ew" = ( +/obj/structure/table, +/obj/machinery/light/small{ + dir = 1 + }, +/obj/item/weapon/electronics/airlock, +/turf/open/floor/plasteel/airless, +/area/derelict/bridge/access) +"ex" = ( +/obj/structure/table, +/obj/item/stack/cable_coil{ + pixel_x = 3; + pixel_y = -7 + }, +/obj/item/weapon/stock_parts/matter_bin, +/turf/open/floor/plasteel/airless, +/area/derelict/bridge/access) +"ey" = ( +/obj/structure/table, +/obj/item/weapon/stock_parts/cell{ + charge = 100; + maxcharge = 15000 + }, +/turf/open/floor/plasteel/airless, +/area/derelict/bridge/access) +"ez" = ( +/obj/structure/girder, +/turf/open/floor/plating/airless, +/area/space) +"eA" = ( +/obj/structure/window/reinforced{ + dir = 4 + }, +/turf/open/floor/plating/airless, +/area/space) +"eB" = ( +/obj/item/weapon/storage/toolbox/electrical{ + pixel_x = 1; + pixel_y = -1 + }, +/turf/open/floor/plasteel/airless, +/area/derelict/bridge/access) +"eC" = ( +/obj/item/stack/cable_coil/cut, +/turf/open/floor/plasteel/airless{ + icon_state = "damaged3" + }, +/area/derelict/singularity_engine) +"eD" = ( +/obj/item/stack/cable_coil/cut, +/turf/open/floor/plasteel/airless{ + icon_state = "damaged2" + }, +/area/derelict/singularity_engine) +"eE" = ( +/obj/structure/grille, +/obj/structure/window/reinforced, +/obj/structure/window/reinforced{ + dir = 8 + }, +/turf/open/floor/plasteel/airless{ + icon_state = "damaged2" + }, +/area/derelict/singularity_engine) +"eF" = ( +/obj/structure/window/reinforced{ + dir = 8 + }, +/turf/open/floor/plasteel/airless{ + icon_state = "damaged3" + }, +/area/derelict/singularity_engine) +"eG" = ( +/obj/structure/table, +/obj/effect/spawner/lootdrop/maintenance, +/turf/open/floor/plasteel/airless{ + icon_state = "damaged2" + }, +/area/derelict/singularity_engine) +"eH" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + on = 1 + }, +/turf/open/floor/plating/airless, +/area/derelict/singularity_engine) +"eI" = ( +/obj/item/weapon/shard{ + icon_state = "medium" + }, +/turf/open/floor/plating/airless, +/area/space) +"eJ" = ( +/obj/item/weapon/shard{ + icon_state = "medium" + }, +/turf/open/floor/plasteel/airless{ + icon_state = "damaged5" + }, +/area/derelict/singularity_engine) +"eK" = ( +/obj/structure/grille, +/turf/open/floor/plasteel/airless{ + icon_state = "damaged3" + }, +/area/derelict/singularity_engine) +"eL" = ( +/obj/structure/window/reinforced{ + dir = 8 + }, +/turf/open/floor/plasteel/airless{ + icon_state = "damaged4" + }, +/area/derelict/singularity_engine) +"eM" = ( +/obj/machinery/door/airlock/maintenance{ + name = "Tech Storage"; + req_access_txt = "23" + }, +/turf/open/floor/plasteel/airless, +/area/derelict/bridge/access) +"eN" = ( +/obj/structure/grille, +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/structure/window/reinforced, +/turf/open/floor/plating/airless, +/area/derelict/bridge/access) +"eO" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/plasteel/airless, +/area/space) +"eP" = ( +/obj/structure/window/reinforced{ + dir = 4 + }, +/turf/open/floor/plasteel/airless{ + icon_state = "damaged3" + }, +/area/derelict/singularity_engine) +"eQ" = ( +/obj/item/weapon/screwdriver, +/turf/open/floor/plating/airless, +/area/derelict/singularity_engine) +"eR" = ( +/obj/item/stack/rods, +/turf/open/floor/plasteel/airless{ + icon_state = "damaged2" + }, +/area/derelict/singularity_engine) +"eS" = ( +/obj/item/weapon/shard{ + icon_state = "medium" + }, +/obj/item/stack/cable_coil/cut, +/turf/open/floor/plating/airless, +/area/derelict/singularity_engine) +"eT" = ( +/obj/structure/table, +/obj/machinery/light/small{ + dir = 4 + }, +/obj/effect/spawner/lootdrop/maintenance, +/turf/open/floor/plasteel/airless{ + icon_state = "damaged2" + }, +/area/derelict/singularity_engine) +"eU" = ( +/obj/item/stack/cable_coil/cut{ + amount = 2; + dir = 2; + icon_state = "coil_red2" + }, +/turf/open/floor/plasteel/airless{ + icon_state = "damaged3" + }, +/area/derelict/hallway/primary) +"eV" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/open/floor/plasteel/airless{ + icon_state = "damaged2" + }, +/area/derelict/hallway/primary) +"eW" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/open/floor/plasteel/airless, +/area/space) +"eX" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/turf/open/floor/plating/airless, +/area/derelict/bridge/access) +"eY" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/turf/open/floor/plasteel/airless, +/area/derelict/bridge/access) +"eZ" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/turf/open/floor/plasteel/airless, +/area/derelict/bridge/access) +"fa" = ( +/obj/machinery/light/small{ + dir = 4 + }, +/turf/open/floor/plasteel/airless, +/area/derelict/bridge/access) +"fb" = ( +/obj/item/weapon/ore/slag, +/turf/open/floor/plating/airless, +/area/derelict/singularity_engine) +"fc" = ( +/obj/item/weapon/shard, +/turf/open/floor/plating/airless, +/area/space) +"fd" = ( +/obj/structure/window/reinforced{ + dir = 8 + }, +/turf/open/floor/plating/airless, +/area/space) +"fe" = ( +/obj/structure/window/fulltile, +/turf/open/floor/plasteel/airless, +/area/derelict/hallway/primary) +"ff" = ( +/obj/structure/window/reinforced{ + dir = 4 + }, +/turf/open/floor/plasteel/airless{ + icon_state = "damaged2" + }, +/area/derelict/singularity_engine) +"fg" = ( +/obj/structure/grille, +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/item/weapon/shard{ + icon_state = "medium" + }, +/turf/open/floor/plating/airless, +/area/derelict/singularity_engine) +"fh" = ( +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plating/airless, +/area/derelict/singularity_engine) +"fi" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plating/airless, +/area/derelict/singularity_engine) +"fj" = ( +/obj/structure/grille, +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/structure/window/reinforced{ + dir = 8 + }, +/turf/open/floor/plating/airless, +/area/derelict/singularity_engine) +"fk" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/turf/open/floor/plating/airless, +/area/derelict/hallway/primary) +"fl" = ( +/turf/open/floor/plasteel/airless{ + icon_state = "floorscorched2" + }, +/area/space) +"fm" = ( +/obj/machinery/light/small, +/turf/open/floor/plasteel/airless, +/area/derelict/hallway/primary) +"fn" = ( +/obj/structure/cable, +/obj/machinery/power/apc{ + dir = 0; + name = "Worn-out APC"; + pixel_y = -24 + }, +/turf/open/floor/plasteel/airless, +/area/derelict/bridge/access) +"fo" = ( +/obj/structure/grille, +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/structure/window/reinforced{ + dir = 8 + }, +/turf/open/floor/plating/airless, +/area/space) +"fp" = ( +/obj/machinery/door/window, +/turf/open/floor/plating/airless, +/area/derelict/hallway/primary) +"fq" = ( +/obj/effect/spawner/lootdrop/maintenance, +/turf/open/floor/plating/airless, +/area/space) +"fr" = ( +/turf/open/floor/plasteel/airless{ + icon_state = "floorscorched1" + }, +/area/space) +"fs" = ( +/obj/item/weapon/shard{ + icon_state = "medium" + }, +/turf/open/floor/plasteel/airless{ + icon_state = "damaged2" + }, +/area/derelict/singularity_engine) +"ft" = ( +/obj/machinery/light/small{ + dir = 4 + }, +/turf/open/floor/plasteel/airless{ + icon_state = "damaged3" + }, +/area/derelict/singularity_engine) +"fu" = ( +/obj/item/weapon/crowbar, +/turf/open/floor/plasteel/airless, +/area/derelict/hallway/primary) +"fv" = ( +/obj/structure/grille, +/turf/open/floor/plasteel/airless, +/area/derelict/hallway/primary) +"fw" = ( +/obj/effect/spawner/lootdrop/maintenance, +/turf/open/floor/plasteel/airless, +/area/space) +"fx" = ( +/obj/item/weapon/shard{ + icon_state = "small" + }, +/obj/item/weapon/shard{ + icon_state = "medium" + }, +/turf/open/floor/plating/airless, +/area/derelict/singularity_engine) +"fy" = ( +/obj/structure/window/reinforced, +/turf/open/floor/plating/airless, +/area/space) +"fz" = ( +/obj/structure/grille, +/obj/structure/window/reinforced, +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/structure/window/reinforced{ + dir = 8 + }, +/turf/open/floor/plating/airless, +/area/derelict/singularity_engine) +"fA" = ( +/obj/item/stack/cable_coil/cut{ + amount = 2; + dir = 2; + icon_state = "coil_red2" + }, +/turf/open/floor/plating/airless, +/area/space) +"fB" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/turf/open/floor/plating/airless, +/area/derelict/hallway/primary) +"fC" = ( +/obj/machinery/light/small, +/turf/open/floor/plasteel/airless{ + icon_state = "damaged2" + }, +/area/derelict/hallway/primary) +"fD" = ( +/obj/structure/lattice, +/obj/structure/window/fulltile, +/turf/open/space, +/area/space) +"fE" = ( +/obj/structure/chair{ + dir = 8 + }, +/obj/item/weapon/pen, +/turf/open/floor/plasteel, +/area/derelict/arrival) +"fF" = ( +/obj/structure/chair{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/derelict/arrival) +"fG" = ( +/obj/structure/closet/coffin, +/turf/open/floor/plasteel/black, +/area/derelict/medical/chapel) +"fH" = ( +/turf/open/floor/plasteel/black, +/area/derelict/medical/chapel) +"fI" = ( +/obj/machinery/light/small{ + dir = 1 + }, +/turf/open/floor/plasteel/black, +/area/derelict/medical/chapel) +"fJ" = ( +/obj/item/weapon/shard, +/turf/open/space, +/area/space) +"fK" = ( +/obj/item/weapon/shard, +/turf/open/floor/plasteel/airless{ + icon_state = "damaged2" + }, +/area/derelict/singularity_engine) +"fL" = ( +/obj/machinery/light/small, +/turf/open/floor/plasteel/black, +/area/derelict/medical/chapel) +"fM" = ( +/obj/machinery/door/airlock/medical{ + name = "Morgue"; + req_access_txt = "6" + }, +/turf/open/floor/plasteel/black, +/area/derelict/medical/chapel) +"fN" = ( +/obj/structure/grille, +/obj/structure/window/reinforced, +/obj/structure/window/reinforced{ + dir = 1 + }, +/turf/open/floor/plating/airless, +/area/derelict/medical) +"fO" = ( +/obj/item/weapon/shard, +/obj/structure/grille/broken, +/turf/open/floor/plating/airless, +/area/derelict/medical) +"fP" = ( +/obj/machinery/door/airlock/external{ + name = "External Engineering" + }, +/turf/open/floor/plating/airless, +/area/space) +"fQ" = ( +/obj/machinery/door/window{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/derelict/arrival) +"fR" = ( +/obj/structure/table, +/obj/machinery/computer/pod/old{ + name = "ProComp IIe"; + pixel_y = 7; + id = "derelict_gun" + }, +/turf/open/floor/plasteel/chapel, +/area/derelict/medical/chapel) +"fS" = ( +/obj/machinery/door/morgue{ + name = "coffin storage"; + req_access_txt = "22" + }, +/turf/open/floor/plasteel/black, +/area/derelict/medical/chapel) +"fT" = ( +/obj/structure/bodycontainer/morgue, +/turf/open/floor/plasteel/black, +/area/derelict/medical/chapel) +"fU" = ( +/turf/open/floor/plasteel/airless/white, +/area/space) +"fV" = ( +/obj/item/weapon/firstaid_arm_assembly, +/turf/open/floor/plasteel/airless/white, +/area/derelict/medical) +"fW" = ( +/obj/structure/closet, +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/effect/spawner/lootdrop/maintenance, +/turf/open/floor/plasteel/airless{ + icon_state = "damaged2" + }, +/area/derelict/medical) +"fX" = ( +/obj/structure/frame/computer, +/turf/open/floor/plasteel/airless{ + icon_state = "damaged3" + }, +/area/derelict/medical) +"fY" = ( +/obj/machinery/light{ + dir = 1 + }, +/obj/item/weapon/shard{ + icon_state = "small" + }, +/turf/open/floor/plating/airless, +/area/derelict/medical) +"fZ" = ( +/obj/machinery/light/small, +/turf/open/floor/plasteel/airless{ + icon_state = "damaged4" + }, +/area/derelict/singularity_engine) +"ga" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/turf/open/floor/plating/airless, +/area/derelict/hallway/primary) +"gb" = ( +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/structure/grille, +/turf/open/space, +/area/space) +"gc" = ( +/obj/structure/table, +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/effect/spawner/lootdrop/maintenance, +/turf/open/floor/plasteel/chapel{ + dir = 1 + }, +/area/derelict/medical/chapel) +"gd" = ( +/turf/open/floor/plasteel/chapel{ + dir = 4 + }, +/area/derelict/medical/chapel) +"ge" = ( +/turf/open/floor/plasteel/chapel{ + dir = 1 + }, +/area/derelict/medical/chapel) +"gf" = ( +/obj/structure/chair{ + dir = 8 + }, +/turf/open/floor/plasteel/chapel{ + dir = 1 + }, +/area/derelict/medical/chapel) +"gg" = ( +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/turf/open/floor/plasteel/airless/white, +/area/derelict/medical) +"gh" = ( +/obj/item/stack/medical/bruise_pack, +/turf/open/floor/plasteel/airless/white, +/area/derelict/medical) +"gi" = ( +/obj/item/stack/cable_coil/cut, +/turf/open/floor/plating/airless, +/area/space) +"gj" = ( +/obj/structure/table, +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/effect/spawner/lootdrop/maintenance, +/turf/open/floor/plasteel/chapel{ + dir = 8 + }, +/area/derelict/medical/chapel) +"gk" = ( +/obj/structure/chair{ + dir = 4 + }, +/turf/open/floor/plasteel/chapel, +/area/derelict/medical/chapel) +"gl" = ( +/obj/structure/table, +/obj/effect/spawner/lootdrop/maintenance, +/turf/open/floor/plasteel/chapel{ + dir = 8 + }, +/area/derelict/medical/chapel) +"gm" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + on = 1 + }, +/turf/open/floor/plasteel/chapel, +/area/derelict/medical/chapel) +"gn" = ( +/turf/open/floor/plasteel/chapel{ + dir = 8 + }, +/area/derelict/medical/chapel) +"go" = ( +/turf/open/floor/plasteel/chapel, +/area/derelict/medical/chapel) +"gp" = ( +/obj/structure/chair, +/turf/open/floor/plasteel/airless{ + icon_state = "damaged3" + }, +/area/derelict/medical) +"gq" = ( +/obj/structure/table, +/obj/effect/spawner/lootdrop/maintenance, +/turf/open/floor/plating/airless, +/area/derelict/medical) +"gr" = ( +/obj/item/weapon/storage/box/lights/mixed, +/turf/open/floor/plating/airless, +/area/derelict/singularity_engine) +"gs" = ( +/obj/item/drone_shell, +/turf/open/floor/plating/airless, +/area/derelict/singularity_engine) +"gt" = ( +/obj/item/stack/cable_coil/cut{ + amount = 2; + dir = 2; + icon_state = "coil_red2" + }, +/turf/open/floor/plasteel/airless{ + icon_state = "damaged2" + }, +/area/derelict/hallway/primary) +"gu" = ( +/obj/structure/chair{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/derelict/arrival) +"gv" = ( +/obj/structure/chair{ + dir = 1 + }, +/obj/structure/window/reinforced{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/derelict/arrival) +"gw" = ( +/obj/structure/window/reinforced, +/turf/open/space, +/area/space) +"gx" = ( +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/structure/window/reinforced, +/obj/structure/grille, +/turf/open/space, +/area/space) +"gy" = ( +/obj/structure/table, +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/structure/window/reinforced, +/obj/effect/spawner/lootdrop/maintenance, +/turf/open/floor/plasteel/chapel{ + dir = 1 + }, +/area/derelict/medical/chapel) +"gz" = ( +/obj/structure/window/reinforced, +/turf/open/floor/plasteel/chapel{ + dir = 4 + }, +/area/derelict/medical/chapel) +"gA" = ( +/obj/structure/window/reinforced, +/turf/open/floor/plasteel/chapel{ + dir = 1 + }, +/area/derelict/medical/chapel) +"gB" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + on = 1 + }, +/turf/open/floor/plasteel/black, +/area/derelict/medical/chapel) +"gC" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel/black, +/area/derelict/medical/chapel) +"gD" = ( +/obj/machinery/sleeper{ + icon_state = "sleeper-open"; + dir = 4 + }, +/turf/open/floor/plasteel/airless/white, +/area/derelict/medical) +"gE" = ( +/obj/structure/table, +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/structure/window/reinforced, +/obj/item/weapon/reagent_containers/glass/beaker, +/turf/open/floor/plasteel/airless/white, +/area/derelict/medical) +"gF" = ( +/obj/structure/window/reinforced, +/turf/open/floor/plasteel/airless/white, +/area/space) +"gG" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/plasteel/airless{ + icon_state = "damaged2" + }, +/area/derelict/hallway/primary) +"gH" = ( +/obj/machinery/door/poddoor{ + id = "derelict_gun"; + name = "Derelict Mass Driver" + }, +/turf/open/floor/plating, +/area/space) +"gI" = ( +/obj/machinery/mass_driver{ + dir = 8; + icon_state = "mass_driver"; + id = "derelict_gun" + }, +/obj/machinery/door/window{ + dir = 4; + req_access_txt = "25" + }, +/obj/structure/closet/coffin, +/turf/open/floor/plating, +/area/derelict/medical/chapel) +"gJ" = ( +/obj/item/weapon/shard{ + icon_state = "small" + }, +/turf/open/floor/plasteel/airless/white, +/area/derelict/medical) +"gK" = ( +/obj/item/stack/medical/bruise_pack, +/turf/open/floor/plasteel/airless{ + icon_state = "damaged2" + }, +/area/derelict/medical) +"gL" = ( +/obj/item/stack/medical/ointment, +/turf/open/floor/plasteel/airless{ + icon_state = "damaged3" + }, +/area/derelict/medical) +"gM" = ( +/obj/machinery/light{ + icon_state = "tube1"; + dir = 4 + }, +/turf/open/floor/plating/airless, +/area/derelict/medical) +"gN" = ( +/obj/structure/closet/l3closet, +/turf/open/floor/plating/airless, +/area/space) +"gO" = ( +/obj/item/weapon/shard{ + icon_state = "medium" + }, +/turf/open/space, +/area/space) +"gP" = ( +/obj/structure/window/reinforced{ + dir = 1 + }, +/turf/open/space, +/area/space) +"gQ" = ( +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/structure/grille, +/turf/open/space, +/area/space) +"gR" = ( +/obj/structure/table, +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/effect/spawner/lootdrop/maintenance, +/turf/open/floor/plasteel/chapel{ + dir = 1 + }, +/area/derelict/medical/chapel) +"gS" = ( +/obj/structure/window/reinforced{ + dir = 1 + }, +/turf/open/floor/plasteel/chapel{ + dir = 4 + }, +/area/derelict/medical/chapel) +"gT" = ( +/obj/structure/window/reinforced{ + dir = 1 + }, +/turf/open/floor/plasteel/chapel{ + dir = 1 + }, +/area/derelict/medical/chapel) +"gU" = ( +/obj/structure/chair{ + dir = 8 + }, +/turf/open/floor/plasteel/chapel{ + dir = 4 + }, +/area/derelict/medical/chapel) +"gV" = ( +/obj/structure/window/reinforced{ + dir = 8 + }, +/turf/open/floor/plasteel/airless/white, +/area/derelict/medical) +"gW" = ( +/obj/item/weapon/cigbutt, +/turf/open/floor/plasteel/airless/white, +/area/derelict/medical) +"gX" = ( +/obj/machinery/door/airlock/glass{ + name = "Med-Sci"; + req_access_txt = "9" + }, +/turf/open/floor/plating/airless, +/area/derelict/medical) +"gY" = ( +/obj/structure/table, +/turf/open/floor/plating/airless, +/area/space) +"gZ" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/turf/open/floor/plasteel/airless, +/area/derelict/hallway/primary) +"ha" = ( +/obj/structure/closet/emcloset, +/turf/open/floor/plasteel, +/area/derelict/arrival) +"hb" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel/chapel, +/area/derelict/medical/chapel) +"hc" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/turf/open/floor/plasteel/airless/white, +/area/derelict/medical) +"hd" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/structure/window/reinforced{ + dir = 8 + }, +/turf/open/floor/plasteel/airless/white, +/area/derelict/medical) +"he" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/open/floor/plasteel/airless/white, +/area/derelict/medical) +"hf" = ( +/obj/item/stack/cable_coil/cut{ + amount = 2; + dir = 2; + icon_state = "coil_red2" + }, +/turf/open/floor/plasteel/airless/white, +/area/derelict/medical) +"hg" = ( +/obj/item/weapon/reagent_containers/glass/beaker, +/turf/open/floor/plasteel/airless{ + icon_state = "damaged3" + }, +/area/derelict/medical) +"hh" = ( +/obj/structure/closet/wardrobe/genetics_white, +/obj/effect/spawner/lootdrop/maintenance{ + lootcount = 2; + name = "2maintenance loot spawner" + }, +/turf/open/floor/plasteel/airless/white, +/area/derelict/medical) +"hi" = ( +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/structure/window/reinforced{ + dir = 1 + }, +/turf/open/floor/plating/airless, +/area/space) +"hj" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + on = 1 + }, +/turf/open/floor/plasteel/airless{ + icon_state = "damaged2" + }, +/area/derelict/hallway/primary) +"hk" = ( +/obj/item/weapon/pen, +/turf/open/floor/plasteel, +/area/derelict/arrival) +"hl" = ( +/obj/machinery/light/small, +/turf/open/floor/plasteel/chapel{ + dir = 4 + }, +/area/derelict/medical/chapel) +"hm" = ( +/obj/machinery/door/window{ + dir = 8 + }, +/turf/open/floor/plasteel/airless, +/area/derelict/medical/chapel) +"hn" = ( +/obj/machinery/light/small{ + dir = 1 + }, +/turf/open/floor/plasteel/airless, +/area/derelict/medical/chapel) +"ho" = ( +/obj/machinery/power/apc{ + dir = 4; + name = "Worn-out APC"; + pixel_x = 24; + pixel_y = 0 + }, +/obj/structure/cable{ + icon_state = "0-2"; + d2 = 2 + }, +/turf/open/floor/plasteel/airless, +/area/derelict/medical/chapel) +"hp" = ( +/obj/machinery/power/apc{ + dir = 0; + name = "Worn-out APC"; + pixel_y = -24 + }, +/obj/structure/cable, +/turf/open/floor/plasteel/airless/white, +/area/derelict/medical) +"hq" = ( +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/structure/bed, +/turf/open/floor/plasteel/airless/white, +/area/derelict/medical) +"hr" = ( +/obj/item/stack/medical/ointment, +/turf/open/floor/plasteel/airless/white, +/area/derelict/medical) +"hs" = ( +/obj/structure/bed, +/turf/open/floor/plasteel/airless/white, +/area/derelict/medical) +"ht" = ( +/obj/machinery/door/airlock/medical{ + name = "Medical" + }, +/turf/open/floor/plasteel/airless/white, +/area/derelict/medical) +"hu" = ( +/obj/structure/window/fulltile, +/turf/open/space, +/area/space) +"hv" = ( +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/turf/open/floor/plasteel, +/area/derelict/arrival) +"hw" = ( +/obj/machinery/light{ + icon_state = "tube1"; + dir = 4 + }, +/turf/open/floor/plasteel, +/area/derelict/arrival) +"hx" = ( +/obj/structure/grille, +/obj/structure/window/reinforced, +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/structure/window/reinforced{ + dir = 4 + }, +/turf/open/floor/plating, +/area/derelict/arrival) +"hy" = ( +/obj/machinery/door/window, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/plasteel/airless, +/area/derelict/medical/chapel) +"hz" = ( +/obj/machinery/door/window/southleft, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/plasteel/airless/white, +/area/derelict/medical) +"hA" = ( +/obj/machinery/door/window/southright, +/turf/open/floor/plasteel/airless/white, +/area/derelict/medical) +"hB" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/turf/open/floor/plasteel/airless, +/area/derelict/hallway/primary) +"hC" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/door/airlock/research{ + name = "Toxins Research"; + req_access_txt = "7" + }, +/turf/open/floor/plasteel/airless, +/area/derelict/hallway/primary) +"hD" = ( +/obj/structure/lattice, +/obj/structure/grille, +/turf/open/space, +/area/space) +"hE" = ( +/obj/machinery/door/airlock/external{ + name = "Arrivals Docking Bay 1" + }, +/turf/open/floor/plating, +/area/derelict/arrival) +"hF" = ( +/obj/machinery/light/small{ + dir = 4 + }, +/turf/open/floor/plasteel/airless{ + icon_state = "damaged2" + }, +/area/space) +"hG" = ( +/obj/structure/closet, +/obj/effect/spawner/lootdrop/maintenance{ + lootcount = 2; + name = "2maintenance loot spawner" + }, +/turf/open/floor/plasteel/airless, +/area/derelict/hallway/primary) +"hH" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/plasteel/airless{ + icon_state = "floorscorched1" + }, +/area/derelict/hallway/primary) +"hI" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/turf/open/floor/plasteel/airless, +/area/space) +"hJ" = ( +/obj/structure/window/fulltile, +/turf/open/floor/plating/airless, +/area/space) +"hK" = ( +/obj/effect/decal/cleanable/dirt, +/obj/effect/spawner/lootdrop/maintenance{ + lootcount = 2; + name = "2maintenance loot spawner" + }, +/turf/open/floor/plating/airless, +/area/space) +"hL" = ( +/obj/effect/decal/cleanable/dirt, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/open/floor/plasteel/airless, +/area/space) +"hM" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/structure/window/fulltile, +/turf/open/floor/plating/airless, +/area/space) +"hN" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/open/floor/plating, +/area/derelict/arrival) +"hO" = ( +/obj/machinery/door/airlock/command{ + name = "Teleporter Room" + }, +/turf/open/floor/plasteel/airless, +/area/derelict/medical/chapel) +"hP" = ( +/obj/item/stack/cable_coil/cut{ + amount = 2; + dir = 2; + icon_state = "coil_red2" + }, +/turf/open/floor/plasteel/airless{ + icon_state = "floorscorched1" + }, +/area/derelict/hallway/primary) +"hQ" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + on = 1 + }, +/turf/open/floor/plasteel/airless, +/area/derelict/hallway/primary) +"hR" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel/airless, +/area/derelict/hallway/primary) +"hS" = ( +/obj/item/device/assembly/prox_sensor{ + pixel_x = -8; + pixel_y = 4 + }, +/turf/open/floor/plasteel/airless, +/area/derelict/hallway/primary) +"hT" = ( +/obj/machinery/portable_atmospherics/scrubber, +/turf/open/floor/plasteel, +/area/derelict/arrival) +"hU" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/turf/open/floor/plasteel/airless{ + icon_state = "floorscorched1" + }, +/area/derelict/hallway/primary) +"hV" = ( +/obj/machinery/door/window{ + base_state = "right"; + dir = 4; + icon_state = "right" + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/turf/open/floor/plasteel/airless, +/area/derelict/hallway/primary) +"hW" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/turf/open/floor/plasteel/airless, +/area/derelict/hallway/primary) +"hX" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/turf/open/floor/plasteel/airless, +/area/derelict/hallway/primary) +"hY" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/turf/open/floor/plasteel/airless, +/area/derelict/hallway/primary) +"hZ" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/turf/open/floor/plasteel/airless, +/area/derelict/hallway/primary) +"ia" = ( +/obj/machinery/portable_atmospherics/pump, +/turf/open/floor/plasteel, +/area/derelict/arrival) +"ib" = ( +/obj/machinery/door/window, +/turf/open/floor/plasteel/airless, +/area/derelict/hallway/primary) +"ic" = ( +/obj/machinery/door/window{ + base_state = "right"; + dir = 4; + icon_state = "right" + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/open/floor/plasteel/airless, +/area/derelict/hallway/primary) +"id" = ( +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/obj/structure/cable{ + icon_state = "0-2"; + d2 = 2 + }, +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/turf/open/floor/plasteel/airless, +/area/derelict/hallway/primary) +"ie" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/turf/open/floor/plasteel/airless, +/area/derelict/hallway/primary) +"if" = ( +/obj/machinery/vending/hydronutrients, +/turf/open/floor/plasteel/airless, +/area/derelict/hallway/primary) +"ig" = ( +/obj/structure/girder, +/turf/open/floor/plasteel/airless, +/area/space) +"ih" = ( +/obj/structure/girder, +/turf/open/floor/plating, +/area/derelict/arrival) +"ii" = ( +/obj/structure/bed, +/turf/open/floor/plasteel/airless, +/area/space) +"ij" = ( +/obj/structure/grille, +/obj/structure/window/reinforced, +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/structure/window/reinforced{ + dir = 4 + }, +/turf/open/floor/plating/airless, +/area/derelict/hallway/primary) +"ik" = ( +/obj/structure/grille, +/obj/structure/window/reinforced, +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/structure/window/reinforced{ + dir = 8 + }, +/turf/open/floor/plating/airless, +/area/derelict/hallway/primary) +"il" = ( +/obj/machinery/door/airlock/security{ + name = "Security"; + req_access = null; + req_access_txt = "1" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/plasteel/airless, +/area/derelict/hallway/primary) +"im" = ( +/obj/machinery/vending/hydroseeds, +/turf/open/floor/plasteel/airless, +/area/hallway/primary/port) +"in" = ( +/obj/item/weapon/cigbutt, +/turf/open/space, +/area/space) +"io" = ( +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/derelict/arrival) +"ip" = ( +/obj/structure/table, +/obj/effect/spawner/lootdrop/maintenance, +/turf/open/floor/plasteel/airless, +/area/space) +"iq" = ( +/obj/structure/table, +/obj/item/weapon/stock_parts/cell, +/turf/open/floor/plasteel/airless, +/area/derelict/hallway/primary) +"ir" = ( +/obj/machinery/vending/sovietsoda, +/turf/open/floor/plasteel/airless, +/area/derelict/hallway/primary) +"is" = ( +/obj/effect/decal/cleanable/blood/gibs/old, +/turf/open/floor/plasteel/airless, +/area/derelict/hallway/primary) +"it" = ( +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/item/stack/cable_coil/cut{ + amount = 2; + dir = 2; + icon_state = "coil_red2" + }, +/turf/open/floor/plasteel/airless, +/area/space) +"iu" = ( +/obj/structure/lattice, +/obj/item/stack/cable_coil/cut, +/turf/open/space, +/area/space) +"iv" = ( +/obj/effect/decal/cleanable/blood/splatter, +/turf/open/floor/plasteel/airless, +/area/derelict/hallway/primary) +"iw" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + on = 1 + }, +/obj/effect/decal/cleanable/blood/splatter, +/turf/open/floor/plasteel/airless, +/area/derelict/hallway/primary) +"ix" = ( +/obj/structure/chair/stool, +/turf/open/floor/plasteel/airless, +/area/derelict/hallway/primary) +"iy" = ( +/obj/machinery/door/airlock/maintenance{ + name = "Atmospherics Access"; + req_access_txt = "24" + }, +/turf/open/floor/plating/airless, +/area/derelict/hallway/primary) +"iz" = ( +/obj/structure/window/reinforced{ + dir = 8 + }, +/turf/open/floor/plasteel/airless, +/area/space) +"iA" = ( +/obj/item/stack/cable_coil/cut{ + amount = 2; + dir = 2; + icon_state = "coil_red2" + }, +/turf/open/floor/plasteel/airless, +/area/space) +"iB" = ( +/obj/structure/closet/wardrobe/orange, +/obj/effect/spawner/lootdrop/maintenance{ + lootcount = 2; + name = "2maintenance loot spawner" + }, +/obj/item/weapon/shovel/spade, +/obj/item/weapon/cultivator, +/turf/open/floor/plasteel/airless, +/area/space) +"iC" = ( +/obj/structure/grille, +/turf/open/floor/plating, +/area/derelict/arrival) +"iD" = ( +/obj/structure/closet/wardrobe, +/obj/effect/spawner/lootdrop/maintenance{ + lootcount = 3; + name = "3maintenance loot spawner" + }, +/turf/open/floor/plasteel, +/area/derelict/arrival) +"iE" = ( +/obj/item/weapon/stock_parts/manipulator{ + pixel_x = -15; + pixel_y = 10 + }, +/obj/item/weapon/stock_parts/manipulator, +/turf/open/floor/plating/airless, +/area/derelict/hallway/primary) +"iF" = ( +/obj/structure/closet, +/obj/effect/spawner/lootdrop/maintenance{ + lootcount = 3; + name = "3maintenance loot spawner" + }, +/turf/open/floor/plating/airless, +/area/derelict/hallway/primary) +"iG" = ( +/obj/structure/chair/stool, +/obj/effect/decal/remains/human, +/obj/effect/decal/cleanable/blood/old, +/turf/open/floor/plasteel/airless, +/area/derelict/hallway/primary) +"iH" = ( +/obj/structure/table, +/obj/item/weapon/reagent_containers/glass/beaker{ + list_reagents = list("sacid" = 50) + }, +/obj/item/weapon/paper/crumpled/bloody{ + desc = "Looks like someone started shakily writing a will in space common, but were interrupted by something bloody..."; + info = "I, Victor Belyakov, do hereby leave my _- "; + name = "unifinished paper scrap" + }, +/obj/item/weapon/pen, +/turf/open/floor/plasteel/airless, +/area/derelict/hallway/primary) +"iI" = ( +/obj/structure/table, +/turf/open/floor/plasteel/airless, +/area/derelict/hallway/primary) +"iJ" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plating/airless, +/area/derelict/atmospherics) +"iK" = ( +/obj/machinery/atmospherics/components/unary/tank/air, +/turf/open/floor/plating/airless, +/area/derelict/atmospherics) +"iL" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/window/reinforced, +/turf/open/floor/plasteel/airless, +/area/space) +"iM" = ( +/obj/structure/window/reinforced, +/turf/open/floor/plasteel/airless, +/area/space) +"iN" = ( +/obj/structure/grille, +/obj/structure/grille, +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/structure/window/reinforced{ + dir = 8 + }, +/turf/open/floor/plating/airless, +/area/space) +"iO" = ( +/turf/open/floor/plasteel/airless/floorgrime, +/area/derelict/hallway/primary) +"iP" = ( +/obj/item/ammo_casing/a357, +/turf/open/floor/plasteel/airless, +/area/derelict/hallway/primary) +"iQ" = ( +/obj/structure/table, +/obj/item/device/healthanalyzer, +/turf/open/floor/plasteel/airless, +/area/derelict/hallway/primary) +"iR" = ( +/obj/machinery/atmospherics/components/unary/portables_connector/visible{ + dir = 4 + }, +/turf/open/floor/plating/airless, +/area/derelict/atmospherics) +"iS" = ( +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating/airless, +/area/derelict/atmospherics) +"iT" = ( +/obj/machinery/atmospherics/components/unary/portables_connector/visible{ + icon_state = "connector_map"; + dir = 8 + }, +/turf/open/floor/plating/airless, +/area/derelict/atmospherics) +"iU" = ( +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/cyan/visible{ + dir = 6 + }, +/turf/open/floor/plating/airless, +/area/derelict/atmospherics) +"iV" = ( +/obj/machinery/atmospherics/pipe/manifold/cyan/hidden, +/obj/machinery/meter, +/turf/open/floor/plating/airless, +/area/derelict/atmospherics) +"iW" = ( +/obj/machinery/atmospherics/pipe/simple/cyan/hidden{ + icon_state = "intact"; + dir = 9 + }, +/turf/open/floor/plating/airless, +/area/derelict/atmospherics) +"iX" = ( +/obj/structure/closet/wardrobe/mixed, +/obj/effect/spawner/lootdrop/maintenance{ + lootcount = 2; + name = "2maintenance loot spawner" + }, +/turf/open/floor/plasteel, +/area/derelict/arrival) +"iY" = ( +/obj/machinery/atmospherics/components/unary/portables_connector/visible{ + dir = 4 + }, +/turf/open/floor/plasteel/airless, +/area/derelict/atmospherics) +"iZ" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 9 + }, +/turf/open/floor/plating/airless, +/area/derelict/atmospherics) +"ja" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + icon_state = "intact"; + dir = 5 + }, +/turf/open/floor/plating/airless, +/area/derelict/atmospherics) +"jb" = ( +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/machinery/atmospherics/components/binary/valve, +/turf/open/floor/plating/airless, +/area/derelict/atmospherics) +"jc" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/derelict/arrival) +"jd" = ( +/obj/machinery/door/airlock/external{ + name = "Escape Airlock" + }, +/turf/open/floor/plating, +/area/derelict/arrival) +"je" = ( +/obj/machinery/door/window{ + dir = 8 + }, +/obj/item/weapon/shard{ + icon_state = "medium" + }, +/turf/open/floor/plasteel/airless, +/area/space) +"jf" = ( +/obj/item/ammo_casing/a357{ + pixel_x = -5 + }, +/obj/item/ammo_casing/a357{ + pixel_x = 5; + pixel_y = 6 + }, +/obj/item/ammo_casing/a357, +/turf/open/floor/plasteel/airless, +/area/derelict/hallway/primary) +"jg" = ( +/obj/machinery/light/small{ + dir = 8 + }, +/turf/open/floor/plating/airless, +/area/derelict/atmospherics) +"jh" = ( +/obj/structure/grille, +/obj/item/weapon/shard, +/obj/item/weapon/shard{ + icon_state = "medium" + }, +/turf/open/floor/plating/airless, +/area/space) +"ji" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating/airless, +/area/space) +"jj" = ( +/turf/open/floor/plasteel{ + icon_state = "damaged2"; + initial_gas_mix = "TEMP=2.7" + }, +/area/derelict/atmospherics) +"jk" = ( +/obj/item/stack/rods, +/turf/open/floor/plasteel/airless, +/area/derelict/hallway/secondary) +"jl" = ( +/obj/item/weapon/shard{ + icon_state = "small" + }, +/turf/open/space, +/area/space) +"jm" = ( +/obj/structure/frame/computer, +/obj/structure/window/reinforced{ + dir = 4 + }, +/turf/open/floor/plasteel/airless, +/area/derelict/atmospherics) +"jn" = ( +/obj/machinery/portable_atmospherics/canister, +/turf/open/floor/plasteel/airless, +/area/derelict/atmospherics) +"jo" = ( +/obj/machinery/light/small, +/turf/open/floor/plasteel/airless{ + icon_state = "damaged5" + }, +/area/derelict/atmospherics) +"jp" = ( +/obj/structure/door_assembly/door_assembly_mai{ + name = "airlock assembly" + }, +/turf/open/floor/plasteel/airless, +/area/derelict/hallway/secondary) +"jq" = ( +/obj/item/weapon/wirecutters, +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/turf/open/floor/plasteel/airless, +/area/derelict/hallway/secondary) +"jr" = ( +/obj/structure/chair{ + dir = 1 + }, +/turf/open/floor/plating/airless, +/area/derelict/atmospherics) +"js" = ( +/obj/effect/spawner/lootdrop/maintenance, +/turf/open/floor/plasteel/airless{ + icon_state = "damaged2" + }, +/area/space) +"jt" = ( +/obj/item/weapon/shard{ + icon_state = "medium" + }, +/turf/open/floor/plasteel/airless, +/area/derelict/atmospherics) +"ju" = ( +/turf/open/floor/plasteel/airless{ + icon_state = "damaged1" + }, +/area/derelict/atmospherics) +"jv" = ( +/obj/machinery/portable_atmospherics/pump, +/turf/open/floor/plating/airless, +/area/derelict/atmospherics) +"jw" = ( +/obj/structure/table, +/obj/effect/spawner/lootdrop/maintenance{ + lootcount = 8; + name = "8maintenance loot spawner" + }, +/turf/open/floor/plating/airless, +/area/derelict/atmospherics) +"jx" = ( +/obj/machinery/door/airlock/maintenance{ + name = "Aux Storage"; + req_access_txt = "23" + }, +/turf/open/floor/plating/airless, +/area/derelict/hallway/secondary) +"jy" = ( +/obj/structure/cable{ + icon_state = "0-2"; + d2 = 2 + }, +/obj/structure/cable, +/obj/machinery/power/apc{ + dir = 8; + name = "Worn-out APC"; + pixel_x = -24; + pixel_y = 0 + }, +/turf/open/floor/plasteel/airless, +/area/derelict/hallway/secondary) +"jz" = ( +/obj/structure/grille, +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/structure/window/reinforced{ + dir = 8 + }, +/turf/open/floor/plating/airless, +/area/derelict/hallway/secondary) +"jA" = ( +/obj/machinery/power/apc{ + dir = 1; + name = "Worn-out APC"; + pixel_x = 0; + pixel_y = 24 + }, +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/turf/open/floor/plasteel/airless, +/area/derelict/atmospherics) +"jB" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/open/floor/plasteel/airless{ + icon_state = "derelict9" + }, +/area/derelict/hallway/secondary) +"jC" = ( +/obj/machinery/light/small{ + dir = 1 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/open/floor/plasteel/airless{ + icon_state = "derelict10" + }, +/area/derelict/hallway/secondary) +"jD" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/open/floor/plasteel/airless{ + icon_state = "derelict11" + }, +/area/derelict/hallway/secondary) +"jE" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/open/floor/plasteel/airless{ + icon_state = "derelict12" + }, +/area/derelict/hallway/secondary) +"jF" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/open/floor/plasteel/airless{ + icon_state = "derelict13" + }, +/area/derelict/hallway/secondary) +"jG" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/open/floor/plasteel/airless{ + icon_state = "derelict14" + }, +/area/derelict/hallway/secondary) +"jH" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/open/floor/plasteel/airless{ + icon_state = "derelict15" + }, +/area/derelict/hallway/secondary) +"jI" = ( +/obj/machinery/light/small{ + dir = 1 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/open/floor/plasteel/airless{ + icon_state = "derelict16" + }, +/area/derelict/hallway/secondary) +"jJ" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/open/floor/plasteel/airless, +/area/derelict/hallway/secondary) +"jK" = ( +/turf/open/floor/plasteel/airless{ + icon_state = "derelict1" + }, +/area/derelict/hallway/secondary) +"jL" = ( +/turf/open/floor/plasteel/airless{ + icon_state = "derelict2" + }, +/area/derelict/hallway/secondary) +"jM" = ( +/turf/open/floor/plasteel/airless{ + icon_state = "derelict3" + }, +/area/derelict/hallway/secondary) +"jN" = ( +/turf/open/floor/plasteel/airless{ + icon_state = "derelict4" + }, +/area/derelict/hallway/secondary) +"jO" = ( +/turf/open/floor/plasteel/airless{ + icon_state = "derelict5" + }, +/area/derelict/hallway/secondary) +"jP" = ( +/turf/open/floor/plasteel/airless{ + icon_state = "derelict6" + }, +/area/derelict/hallway/secondary) +"jQ" = ( +/turf/open/floor/plasteel/airless{ + icon_state = "derelict7" + }, +/area/derelict/hallway/secondary) +"jR" = ( +/turf/open/floor/plasteel/airless{ + icon_state = "derelict8" + }, +/area/derelict/hallway/secondary) +"jS" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/door/airlock/engineering{ + name = "Aft Solar Access"; + req_access_txt = "10" + }, +/turf/open/floor/plasteel/airless, +/area/derelict/se_solar) +"jT" = ( +/obj/machinery/door/airlock/external{ + name = "Escape Airlock" + }, +/turf/open/floor/plating/airless, +/area/derelict/hallway/secondary) +"jU" = ( +/obj/machinery/door/firedoor, +/obj/effect/spawner/lootdrop/maintenance, +/turf/open/floor/plating/airless, +/area/derelict/hallway/secondary) +"jV" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/door/firedoor, +/turf/open/floor/plasteel/airless, +/area/derelict/se_solar) +"jW" = ( +/obj/structure/closet/emcloset, +/turf/open/floor/plasteel/airless, +/area/derelict/hallway/secondary) +"jX" = ( +/obj/structure/girder/reinforced, +/turf/open/floor/plating/airless, +/area/space) +"jY" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/turf/closed/wall/r_wall, +/area/derelict/se_solar) +"jZ" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/turf/closed/wall/r_wall, +/area/derelict/se_solar) +"ka" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/machinery/door/airlock/engineering{ + name = "Aft Solar Access"; + req_access_txt = "10" + }, +/turf/open/floor/plasteel/airless, +/area/derelict/se_solar) +"kb" = ( +/obj/machinery/power/smes, +/obj/structure/cable, +/turf/open/floor/plasteel/airless, +/area/derelict/se_solar) +"kc" = ( +/obj/structure/reagent_dispensers/fueltank, +/turf/open/floor/plasteel/airless, +/area/derelict/se_solar) +"kd" = ( +/obj/docking_port/stationary{ + dheight = 0; + dir = 2; + dwidth = 11; + height = 22; + id = "whiteship_z4"; + name = "KSS13: Derelict"; + width = 35 + }, +/turf/open/space, +/area/space) +"ke" = ( +/obj/machinery/power/terminal{ + icon_state = "term"; + dir = 1 + }, +/obj/structure/cable{ + icon_state = "0-2"; + d2 = 2 + }, +/obj/item/drone_shell, +/turf/open/floor/plasteel/airless, +/area/derelict/se_solar) +"kf" = ( +/obj/item/weapon/storage/toolbox/syndicate, +/turf/open/floor/plasteel/airless, +/area/derelict/se_solar) +"kg" = ( +/obj/structure/cable{ + icon_state = "0-2"; + d2 = 2 + }, +/obj/structure/cable, +/obj/machinery/power/solar_control{ + id = "derelictsolar"; + name = "Primary Solar Control"; + track = 0 + }, +/turf/open/floor/plasteel/airless, +/area/derelict/se_solar) +"kh" = ( +/obj/structure/cable, +/obj/machinery/power/apc{ + dir = 8; + environ = 0; + equipment = 0; + lighting = 0; + locked = 0; + name = "Worn-out APC"; + pixel_x = -24; + pixel_y = 0 + }, +/turf/open/floor/plating/airless, +/area/derelict/se_solar) +"ki" = ( +/obj/item/weapon/paper{ + desc = ""; + info = "The Syndicate have cunningly disguised a Syndicate Uplink as your PDA. Simply enter the code \"678 Bravo\" into the ringtone select to unlock its hidden features.

Objective #1. Kill the God damn AI in a fire blast that it rocks the station. Success!
Objective #2. Escape alive. Failed."; + name = "Mission Objectives" + }, +/turf/open/floor/plasteel/airless{ + icon_state = "damaged2" + }, +/area/derelict/se_solar) +"kj" = ( +/obj/machinery/light/small{ + dir = 4 + }, +/obj/item/clothing/head/helmet/space/syndicate/black/red, +/turf/open/floor/plasteel/airless, +/area/derelict/se_solar) +"kk" = ( +/obj/machinery/door/window{ + base_state = "right"; + dir = 4; + icon_state = "right" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/plasteel/airless, +/area/derelict/se_solar) +"kl" = ( +/obj/item/clothing/suit/space/syndicate/black/red, +/turf/open/floor/plasteel/airless, +/area/derelict/se_solar) +"km" = ( +/obj/effect/decal/remains/human{ + desc = "This guy seemed to have died in terrible way! Half his remains are dust."; + icon_state = "remains"; + name = "Syndicate agent remains" + }, +/turf/open/floor/plasteel/airless, +/area/derelict/se_solar) +"kn" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/door/airlock/external, +/turf/open/floor/plasteel/airless, +/area/derelict/se_solar) +"ko" = ( +/obj/structure/cable, +/obj/structure/lattice/catwalk, +/turf/open/space, +/area/solar/derelict_aft) +"kp" = ( +/obj/structure/cable{ + icon_state = "0-2"; + d2 = 2 + }, +/obj/structure/lattice/catwalk, +/turf/open/space, +/area/solar/derelict_aft) +"kq" = ( +/obj/structure/cable{ + icon_state = "0-2"; + d2 = 2 + }, +/obj/machinery/power/solar{ + id = "derelictsolar"; + name = "Derelict Solar Array" + }, +/turf/open/floor/plasteel/airless, +/area/solar/derelict_aft) +"kr" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/obj/structure/lattice/catwalk, +/turf/open/space, +/area/solar/derelict_aft) +"ks" = ( +/obj/structure/cable{ + icon_state = "0-2"; + d2 = 2 + }, +/obj/machinery/power/solar{ + id = "derelictsolar"; + name = "Derelict Solar Array" + }, +/turf/open/floor/plating/airless{ + icon_state = "platingdmg3" + }, +/area/solar/derelict_aft) +"kt" = ( +/obj/structure/lattice/catwalk, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/turf/open/space, +/area/solar/derelict_aft) +"ku" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/obj/structure/lattice/catwalk, +/turf/open/space, +/area/solar/derelict_aft) +"kv" = ( +/obj/structure/lattice/catwalk, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/turf/open/space, +/area/solar/derelict_aft) +"kw" = ( +/obj/structure/lattice/catwalk, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/turf/open/space, +/area/solar/derelict_aft) +"kx" = ( +/obj/structure/cable, +/obj/machinery/power/solar{ + id = "derelictsolar"; + name = "Derelict Solar Array" + }, +/turf/open/floor/plasteel/airless, +/area/solar/derelict_aft) +"ky" = ( +/turf/open/floor/plating/airless{ + icon_state = "platingdmg1" + }, +/area/solar/derelict_aft) +"kz" = ( +/obj/structure/lattice/catwalk, +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/turf/open/space, +/area/solar/derelict_aft) +"kA" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/structure/lattice/catwalk, +/turf/open/space, +/area/solar/derelict_aft) +"kB" = ( +/obj/machinery/power/tracker, +/obj/structure/cable, +/turf/open/floor/plasteel/airless, +/area/solar/derelict_aft) +"kC" = ( +/turf/closed/wall, +/area/derelict/solar_control) +"kD" = ( +/turf/closed/wall/r_wall, +/area/derelict/bridge/ai_upload) +"kE" = ( +/turf/open/floor/plasteel, +/area/derelict/bridge/ai_upload) +"kF" = ( +/turf/closed/wall/r_wall, +/area/derelict/solar_control) +"kG" = ( +/obj/structure/grille, +/turf/open/floor/plating/airless, +/area/derelict/bridge/ai_upload) +"kH" = ( +/turf/closed/wall, +/area/derelict/bridge/ai_upload) +"kI" = ( +/obj/machinery/light/small{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/derelict/solar_control) +"kJ" = ( +/obj/machinery/door/window, +/turf/open/floor/plasteel, +/area/derelict/bridge/ai_upload) +"kK" = ( +/turf/open/floor/plasteel/airless, +/area/derelict/bridge/ai_upload) +"kL" = ( +/turf/open/floor/plasteel/airless{ + icon_state = "damaged4" + }, +/area/derelict/bridge/ai_upload) +"kM" = ( +/turf/open/floor/plasteel/airless{ + icon_state = "damaged3" + }, +/area/derelict/bridge/ai_upload) +"kN" = ( +/obj/machinery/door/window{ + base_state = "right"; + dir = 4; + icon_state = "right" + }, +/turf/open/floor/plasteel/airless, +/area/derelict/bridge/ai_upload) +"kO" = ( +/turf/open/floor/plasteel/airless{ + icon_state = "damaged2" + }, +/area/derelict/bridge/ai_upload) +"kP" = ( +/turf/open/space, +/area/derelict/bridge/ai_upload) +"kQ" = ( +/turf/open/floor/plating/airless, +/area/derelict/bridge/ai_upload) +"kR" = ( +/obj/structure/lattice, +/turf/open/space, +/area/derelict/bridge/ai_upload) +"kS" = ( +/turf/closed/wall/r_wall, +/area/derelict/gravity_generator) +"kT" = ( +/obj/machinery/light/small, +/turf/open/floor/plasteel, +/area/derelict/solar_control) +"kU" = ( +/turf/open/floor/plasteel/airless{ + icon_state = "damaged2" + }, +/area/derelict/gravity_generator) +"kV" = ( +/turf/closed/wall, +/area/derelict/bridge/access) +"kW" = ( +/turf/open/floor/plasteel/airless{ + icon_state = "damaged4" + }, +/area/derelict/gravity_generator) +"kX" = ( +/turf/open/floor/plasteel/airless{ + icon_state = "damaged5" + }, +/area/derelict/gravity_generator) +"kY" = ( +/turf/open/floor/plasteel, +/area/derelict/bridge/access) +"kZ" = ( +/obj/structure/rack, +/obj/item/weapon/circuitboard/machine/smes, +/turf/open/floor/plasteel, +/area/derelict/bridge/access) +"la" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/plasteel, +/area/derelict/bridge/access) +"lb" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/open/floor/plasteel, +/area/derelict/bridge/access) +"lc" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/turf/open/floor/plasteel, +/area/derelict/bridge/access) +"ld" = ( +/turf/open/floor/plasteel/airless, +/area/derelict/gravity_generator) +"le" = ( +/obj/structure/grille, +/obj/structure/window/reinforced, +/obj/structure/window/reinforced{ + dir = 1 + }, +/turf/open/floor/plating, +/area/derelict/bridge/access) +"lf" = ( +/turf/open/floor/plating, +/area/derelict/bridge/access) +"lg" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/open/floor/plating/airless, +/area/derelict/gravity_generator) +"lh" = ( +/obj/machinery/light/small{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/derelict/bridge/access) +"li" = ( +/turf/closed/wall/r_wall, +/area/derelict/singularity_engine) +"lj" = ( +/obj/structure/window/reinforced, +/turf/open/floor/plasteel, +/area/derelict/bridge/access) +"lk" = ( +/obj/machinery/door/window, +/turf/open/floor/plasteel, +/area/derelict/bridge/access) +"ll" = ( +/turf/closed/wall, +/area/derelict/bridge) +"lm" = ( +/obj/structure/frame/computer, +/turf/open/floor/plasteel, +/area/derelict/bridge) +"ln" = ( +/turf/open/floor/plasteel/airless{ + icon_state = "damaged3" + }, +/area/derelict/singularity_engine) +"lo" = ( +/turf/open/floor/plasteel/airless{ + icon_state = "damaged4" + }, +/area/derelict/singularity_engine) +"lp" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/open/floor/plating/airless, +/area/derelict/singularity_engine) +"lq" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/turf/open/floor/plasteel, +/area/derelict/gravity_generator) +"lr" = ( +/obj/machinery/light/small{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/derelict/gravity_generator) +"ls" = ( +/turf/open/floor/plating/airless, +/area/derelict/singularity_engine) +"lt" = ( +/turf/open/floor/plasteel/airless{ + icon_state = "damaged5" + }, +/area/derelict/singularity_engine) +"lu" = ( +/turf/open/floor/plasteel, +/area/derelict/bridge) +"lv" = ( +/turf/open/floor/plating, +/area/derelict/bridge) +"lw" = ( +/turf/open/floor/plasteel, +/area/derelict/gravity_generator) +"lx" = ( +/turf/closed/wall, +/area/derelict/gravity_generator) +"ly" = ( +/obj/structure/window/reinforced{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/derelict/bridge) +"lz" = ( +/obj/structure/grille, +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/structure/window/reinforced, +/obj/structure/window/reinforced{ + dir = 8 + }, +/turf/open/floor/plating/airless, +/area/derelict/singularity_engine) +"lA" = ( +/turf/open/floor/plasteel/airless{ + icon_state = "damaged2" + }, +/area/derelict/singularity_engine) +"lB" = ( +/obj/item/stack/cable_coil/cut, +/turf/open/floor/plasteel/airless{ + icon_state = "damaged4" + }, +/area/derelict/singularity_engine) +"lC" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/turf/open/floor/plasteel, +/area/derelict/bridge) +"lD" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/open/floor/plasteel, +/area/derelict/bridge) +"lE" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/turf/open/floor/plasteel, +/area/derelict/bridge) +"lF" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/turf/open/floor/plasteel, +/area/derelict/bridge) +"lG" = ( +/obj/item/stack/rods, +/turf/open/floor/plating/airless, +/area/derelict/singularity_engine) +"lH" = ( +/obj/structure/grille, +/turf/open/floor/plating/airless, +/area/derelict/singularity_engine) +"lI" = ( +/obj/structure/grille, +/obj/structure/window/reinforced{ + dir = 1 + }, +/turf/open/floor/plating/airless, +/area/derelict/singularity_engine) +"lJ" = ( +/obj/structure/grille, +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/structure/window/reinforced{ + dir = 4 + }, +/turf/open/floor/plating/airless, +/area/derelict/singularity_engine) +"lK" = ( +/obj/structure/window/reinforced{ + dir = 1 + }, +/turf/open/floor/plating/airless, +/area/derelict/singularity_engine) +"lL" = ( +/turf/closed/wall/r_wall, +/area/derelict/bridge) +"lM" = ( +/turf/open/floor/plasteel/airless, +/area/derelict/bridge/access) +"lN" = ( +/turf/open/space, +/area/derelict/bridge/access) +"lO" = ( +/obj/structure/window/reinforced{ + dir = 4 + }, +/turf/open/floor/plating/airless, +/area/derelict/singularity_engine) +"lP" = ( +/obj/machinery/door/window, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/plasteel, +/area/derelict/bridge/access) +"lQ" = ( +/obj/item/weapon/shard{ + icon_state = "medium" + }, +/turf/open/floor/plating/airless, +/area/derelict/singularity_engine) +"lR" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/plasteel/airless, +/area/derelict/bridge/access) +"lS" = ( +/turf/closed/wall, +/area/derelict/hallway/primary) +"lT" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/open/floor/plasteel/airless, +/area/derelict/hallway/primary) +"lU" = ( +/obj/item/weapon/shard, +/turf/open/floor/plating/airless, +/area/derelict/singularity_engine) +"lV" = ( +/obj/structure/window/reinforced{ + dir = 8 + }, +/turf/open/floor/plating/airless, +/area/derelict/singularity_engine) +"lW" = ( +/turf/closed/wall/r_wall, +/area/derelict/hallway/primary) +"lX" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/plating/airless, +/area/derelict/hallway/primary) +"lY" = ( +/turf/open/floor/plasteel/airless{ + icon_state = "damaged3" + }, +/area/derelict/hallway/primary) +"lZ" = ( +/turf/open/floor/plasteel/airless{ + icon_state = "damaged2" + }, +/area/derelict/hallway/primary) +"ma" = ( +/turf/open/floor/plasteel/airless, +/area/derelict/hallway/primary) +"mb" = ( +/turf/open/floor/plating/airless, +/area/derelict/bridge/access) +"mc" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/open/floor/plating/airless, +/area/derelict/hallway/primary) +"md" = ( +/turf/open/floor/plasteel/airless{ + icon_state = "floorscorched2" + }, +/area/derelict/hallway/primary) +"me" = ( +/obj/structure/grille, +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/structure/window/reinforced{ + dir = 8 + }, +/turf/open/floor/plating/airless, +/area/derelict/singularity_engine) +"mf" = ( +/obj/structure/grille/broken, +/turf/open/floor/plating/airless, +/area/derelict/singularity_engine) +"mg" = ( +/turf/open/floor/plating/airless, +/area/derelict/hallway/primary) +"mh" = ( +/obj/structure/girder, +/turf/open/floor/plating/airless, +/area/derelict/hallway/primary) +"mi" = ( +/obj/structure/window/reinforced, +/turf/open/floor/plating/airless, +/area/derelict/singularity_engine) +"mj" = ( +/obj/item/stack/cable_coil/cut{ + amount = 2; + dir = 2; + icon_state = "coil_red2" + }, +/turf/open/floor/plating/airless, +/area/derelict/hallway/primary) +"mk" = ( +/turf/closed/wall/r_wall, +/area/derelict/arrival) +"ml" = ( +/turf/closed/wall, +/area/derelict/arrival) +"mm" = ( +/turf/closed/wall, +/area/derelict/medical/chapel) +"mn" = ( +/turf/closed/wall, +/area/derelict/singularity_engine) +"mo" = ( +/obj/structure/grille, +/obj/structure/window/reinforced, +/obj/structure/window/reinforced{ + dir = 8 + }, +/turf/open/floor/plating/airless, +/area/derelict/singularity_engine) +"mp" = ( +/obj/structure/table, +/turf/open/floor/plasteel, +/area/derelict/arrival) +"mq" = ( +/obj/structure/chair, +/turf/open/floor/plasteel, +/area/derelict/arrival) +"mr" = ( +/turf/open/floor/plasteel, +/area/derelict/arrival) +"ms" = ( +/obj/machinery/light/small{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/derelict/arrival) +"mt" = ( +/obj/structure/grille, +/turf/open/space, +/area/derelict/singularity_engine) +"mu" = ( +/turf/open/floor/plasteel/airless{ + icon_state = "floorscorched2" + }, +/area/derelict/arrival) +"mv" = ( +/turf/open/floor/plating/airless, +/area/derelict/arrival) +"mw" = ( +/turf/open/floor/plasteel/airless{ + icon_state = "damaged3" + }, +/area/derelict/arrival) +"mx" = ( +/obj/structure/table, +/obj/effect/spawner/lootdrop/maintenance, +/turf/open/floor/plasteel, +/area/derelict/arrival) +"my" = ( +/turf/closed/wall, +/area/derelict/medical) +"mz" = ( +/obj/structure/grille, +/obj/structure/window/reinforced{ + dir = 1 + }, +/turf/open/floor/plating/airless, +/area/derelict/medical) +"mA" = ( +/turf/open/floor/plating/airless, +/area/derelict/medical) +"mB" = ( +/obj/item/weapon/shard{ + icon_state = "medium" + }, +/turf/open/floor/plating/airless, +/area/derelict/medical) +"mC" = ( +/turf/open/floor/plasteel/airless{ + icon_state = "damaged4" + }, +/area/derelict/hallway/primary) +"mD" = ( +/turf/open/floor/plasteel/airless/white, +/area/derelict/medical) +"mE" = ( +/turf/open/floor/plating, +/area/derelict/arrival) +"mF" = ( +/turf/open/floor/plasteel/airless{ + icon_state = "damaged2" + }, +/area/derelict/medical) +"mG" = ( +/turf/open/floor/plasteel/airless{ + icon_state = "damaged3" + }, +/area/derelict/medical) +"mH" = ( +/obj/structure/window/reinforced{ + dir = 8 + }, +/turf/open/floor/plating/airless, +/area/derelict/medical) +"mI" = ( +/obj/structure/table, +/obj/structure/window/reinforced{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/derelict/arrival) +"mJ" = ( +/obj/machinery/light/small{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/derelict/arrival) +"mK" = ( +/obj/effect/spawner/lootdrop/maintenance, +/turf/open/floor/plating/airless, +/area/derelict/singularity_engine) +"mL" = ( +/obj/structure/window/reinforced, +/turf/open/floor/plasteel/airless/white, +/area/derelict/medical) +"mM" = ( +/obj/structure/window/reinforced{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/derelict/arrival) +"mN" = ( +/turf/open/floor/plating, +/area/derelict/medical/chapel) +"mO" = ( +/obj/item/stack/cable_coil/cut{ + amount = 2; + dir = 2; + icon_state = "coil_red2" + }, +/turf/open/floor/plasteel/airless{ + icon_state = "damaged3" + }, +/area/derelict/medical) +"mP" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/plasteel/airless, +/area/derelict/hallway/primary) +"mQ" = ( +/obj/machinery/light/small{ + dir = 4 + }, +/turf/open/floor/plasteel/airless, +/area/derelict/hallway/primary) +"mR" = ( +/turf/open/floor/plasteel/airless, +/area/derelict/medical/chapel) +"mS" = ( +/obj/item/stack/cable_coil/cut{ + amount = 2; + dir = 2; + icon_state = "coil_red2" + }, +/turf/open/floor/plasteel/airless{ + icon_state = "damaged2" + }, +/area/derelict/medical) +"mT" = ( +/obj/structure/grille, +/obj/structure/window/reinforced, +/obj/structure/window/reinforced{ + dir = 1 + }, +/turf/open/floor/plating, +/area/derelict/arrival) +"mU" = ( +/turf/closed/wall/r_wall, +/area/derelict/medical/chapel) +"mV" = ( +/turf/open/floor/plasteel/airless{ + icon_state = "floorscorched1" + }, +/area/derelict/hallway/primary) +"mW" = ( +/obj/machinery/light/small{ + dir = 1 + }, +/turf/open/floor/plasteel/airless, +/area/derelict/hallway/primary) +"mX" = ( +/obj/structure/frame/computer, +/turf/open/floor/plasteel/airless, +/area/derelict/hallway/primary) +"mY" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/door/airlock/research{ + name = "Toxins Research"; + req_access_txt = "7" + }, +/turf/open/floor/plasteel/airless, +/area/derelict/arrival) +"mZ" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/open/floor/plasteel, +/area/derelict/arrival) +"na" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/turf/open/floor/plasteel, +/area/derelict/arrival) +"nb" = ( +/obj/machinery/light/small{ + dir = 8 + }, +/turf/open/floor/plasteel/airless, +/area/derelict/hallway/primary) +"nc" = ( +/obj/structure/cable, +/obj/machinery/power/apc{ + dir = 0; + name = "Worn-out APC"; + pixel_y = -24 + }, +/turf/open/floor/plasteel, +/area/derelict/arrival) +"nd" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/turf/open/floor/plating/airless, +/area/derelict/hallway/primary) +"ne" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/turf/open/floor/plasteel/airless, +/area/derelict/hallway/primary) +"nf" = ( +/obj/structure/window/fulltile, +/turf/open/floor/plating/airless, +/area/derelict/arrival) +"ng" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/turf/open/floor/plasteel/airless, +/area/derelict/hallway/primary) +"nh" = ( +/obj/structure/girder, +/turf/open/floor/plasteel/airless, +/area/derelict/hallway/primary) +"ni" = ( +/obj/structure/bed, +/turf/open/floor/plasteel/airless, +/area/derelict/hallway/primary) +"nj" = ( +/obj/structure/grille, +/obj/structure/window/reinforced, +/obj/structure/window/reinforced{ + dir = 1 + }, +/turf/open/floor/plating/airless, +/area/derelict/hallway/primary) +"nk" = ( +/obj/machinery/door/window, +/turf/open/floor/plasteel/airless, +/area/hallway/primary/port) +"nl" = ( +/obj/structure/table, +/obj/effect/spawner/lootdrop/maintenance, +/turf/open/floor/plasteel/airless, +/area/derelict/hallway/primary) +"nm" = ( +/obj/structure/cable, +/obj/machinery/power/apc{ + dir = 0; + name = "Worn-out APC"; + pixel_y = -24 + }, +/turf/open/floor/plasteel/airless, +/area/derelict/hallway/primary) +"nn" = ( +/turf/open/floor/plasteel/airless, +/area/derelict/atmospherics) +"no" = ( +/turf/open/floor/plating/airless, +/area/derelict/atmospherics) +"np" = ( +/obj/structure/window/reinforced{ + dir = 8 + }, +/turf/open/floor/plating/airless, +/area/derelict/atmospherics) +"nq" = ( +/turf/closed/wall, +/area/derelict/atmospherics) +"nr" = ( +/turf/closed/wall/r_wall, +/area/derelict/atmospherics) +"ns" = ( +/turf/open/floor/plasteel/airless{ + icon_state = "damaged5" + }, +/area/derelict/hallway/primary) +"nt" = ( +/obj/machinery/door/airlock/maintenance{ + name = "Atmospherics Access"; + req_access_txt = "24" + }, +/turf/open/floor/plating/airless, +/area/derelict/atmospherics) +"nu" = ( +/obj/item/weapon/shard{ + icon_state = "medium" + }, +/turf/open/floor/plating/airless, +/area/derelict/atmospherics) +"nv" = ( +/turf/closed/wall, +/area/derelict/hallway/secondary) +"nw" = ( +/obj/structure/girder, +/turf/open/floor/plating/airless, +/area/derelict/hallway/secondary) +"nx" = ( +/turf/closed/wall/r_wall, +/area/derelict/hallway/secondary) +"ny" = ( +/obj/machinery/door/window{ + base_state = "right"; + dir = 4; + icon_state = "right" + }, +/turf/open/floor/plasteel/airless, +/area/derelict/hallway/primary) +"nz" = ( +/turf/open/floor/plasteel/airless{ + icon_state = "floorscorched1" + }, +/area/derelict/atmospherics) +"nA" = ( +/obj/structure/window/fulltile, +/turf/open/floor/plating/airless, +/area/derelict/hallway/secondary) +"nB" = ( +/obj/structure/window/reinforced, +/turf/open/floor/plasteel/airless, +/area/derelict/atmospherics) +"nC" = ( +/turf/open/floor/plasteel/airless{ + icon_state = "damaged5" + }, +/area/derelict/atmospherics) +"nD" = ( +/turf/open/floor/plasteel/airless{ + icon_state = "damaged3" + }, +/area/derelict/atmospherics) +"nE" = ( +/turf/open/floor/plasteel/airless{ + icon_state = "damaged4" + }, +/area/derelict/atmospherics) +"nF" = ( +/obj/structure/window/fulltile, +/turf/open/space, +/area/derelict/atmospherics) +"nG" = ( +/obj/structure/lattice, +/turf/open/space, +/area/derelict/atmospherics) +"nH" = ( +/obj/structure/grille, +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/structure/window/reinforced{ + dir = 8 + }, +/turf/open/floor/plating/airless, +/area/derelict/hallway/secondary) +"nI" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + on = 1 + }, +/turf/open/floor/plating/airless, +/area/derelict/hallway/primary) +"nJ" = ( +/turf/open/floor/plasteel/airless{ + icon_state = "damaged2" + }, +/area/derelict/atmospherics) +"nK" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/plasteel/airless, +/area/derelict/hallway/secondary) +"nL" = ( +/obj/item/stack/cable_coil/cut, +/turf/open/floor/plating/airless, +/area/derelict/hallway/primary) +"nM" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plating/airless, +/area/derelict/hallway/primary) +"nN" = ( +/obj/structure/window/reinforced, +/turf/open/floor/plating/airless, +/area/derelict/atmospherics) +"nO" = ( +/obj/effect/spawner/lootdrop/maintenance, +/turf/open/floor/plating/airless, +/area/derelict/hallway/primary) +"nP" = ( +/turf/open/space, +/area/derelict/atmospherics) +"nQ" = ( +/obj/machinery/light/small, +/turf/open/floor/plasteel/airless, +/area/derelict/atmospherics) +"nR" = ( +/turf/open/floor/plasteel/airless, +/area/derelict/hallway/secondary) +"nS" = ( +/obj/machinery/light/small{ + dir = 4 + }, +/turf/open/floor/plasteel/airless, +/area/derelict/hallway/secondary) +"nT" = ( +/turf/open/floor/plating/airless, +/area/derelict/hallway/secondary) +"nU" = ( +/obj/machinery/light/small{ + dir = 1 + }, +/turf/open/floor/plasteel/airless, +/area/derelict/hallway/secondary) +"nV" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + on = 1 + }, +/turf/open/floor/plasteel/airless, +/area/derelict/hallway/secondary) +"nW" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/open/floor/plasteel/airless, +/area/derelict/hallway/secondary) +"nX" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/turf/open/floor/plasteel/airless, +/area/derelict/hallway/secondary) +"nY" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel/airless, +/area/derelict/hallway/secondary) +"nZ" = ( +/obj/structure/lattice, +/turf/open/space, +/area/derelict/hallway/secondary) +"oa" = ( +/obj/structure/grille, +/obj/structure/window/reinforced, +/turf/open/floor/plating/airless, +/area/derelict/hallway/secondary) +"ob" = ( +/obj/structure/grille, +/obj/structure/window/reinforced, +/obj/structure/window/reinforced{ + dir = 1 + }, +/turf/open/floor/plating/airless, +/area/derelict/hallway/secondary) +"oc" = ( +/obj/structure/grille, +/obj/structure/window/reinforced, +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/structure/window/reinforced{ + dir = 8 + }, +/turf/open/floor/plating/airless, +/area/derelict/hallway/secondary) +"od" = ( +/turf/closed/wall/r_wall, +/area/derelict/se_solar) +"oe" = ( +/obj/structure/grille, +/obj/structure/window/reinforced{ + dir = 1 + }, +/turf/open/floor/plating/airless, +/area/derelict/hallway/secondary) +"of" = ( +/obj/structure/grille, +/obj/structure/window/reinforced, +/obj/structure/window/reinforced{ + dir = 1 + }, +/turf/open/floor/plating/airless, +/area/derelict/se_solar) +"og" = ( +/obj/structure/grille, +/turf/open/floor/plating/airless, +/area/derelict/hallway/secondary) +"oh" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/plasteel/airless, +/area/derelict/se_solar) +"oi" = ( +/turf/open/floor/plasteel/airless{ + icon_state = "damaged4" + }, +/area/derelict/se_solar) +"oj" = ( +/turf/open/floor/plasteel/airless, +/area/derelict/se_solar) +"ok" = ( +/turf/open/floor/plating/airless, +/area/derelict/se_solar) +"ol" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + on = 1 + }, +/turf/open/floor/plasteel/airless, +/area/derelict/se_solar) +"om" = ( +/obj/item/stack/rods, +/turf/open/floor/plating/airless, +/area/derelict/hallway/secondary) +"on" = ( +/obj/machinery/light/small, +/turf/open/floor/plasteel/airless, +/area/derelict/se_solar) +"oo" = ( +/obj/machinery/door/window{ + base_state = "right"; + dir = 4; + icon_state = "right" + }, +/turf/open/floor/plasteel/airless, +/area/derelict/se_solar) +"op" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel/airless, +/area/derelict/se_solar) +"oq" = ( +/turf/open/floor/plating/airless, +/turf/open/floor/plating/airless{ + icon_state = "platingdmg2" + }, +/area/solar/derelict_aft) +"or" = ( +/obj/structure/lattice/catwalk, +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/turf/open/space, +/area/solar/derelict_aft) +"os" = ( +/obj/structure/lattice/catwalk, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/open/space, +/area/solar/derelict_aft) +"ot" = ( +/obj/structure/lattice/catwalk, +/turf/open/space, +/area/solar/derelict_aft) +"ou" = ( +/obj/structure/lattice/catwalk, +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/turf/open/space, +/area/solar/derelict_aft) (1,1,1) = {" -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabacacacacacaaadaaababacacacacacacaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaaaaaaaaaaaaaacaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafagahaaahahahaeahahahaaahahahaaacaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaaiaiajakalalalamanananakananaoaaacaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacabapapapaaapapapaqapapapaaapapapababaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaabaaaaaaaaaaaaaraaaaaaaaaaaaabaaacaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaabaaaaaaaaaaaaaeaaaaaaaaaaaaabaaacaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacacacacasatatauavawasacacacacabacaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaxaaaxaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaayasazaAaBaCaDasaEabaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaxaxaxaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaayaFaBaGaHaIaJasaEaEaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaxaKaLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaayaMaNaOaPaPaQasasaEaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaxaRaxaxaxaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaayaSaTaUazazazazaVaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaxaWaxaXaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxayayayayayayaYayayayayayayaYayayayayayayaSaZbabbbbaUazbcbdaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaxaRaRbeaWaRbfbgaxaxaxbgaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaSasasasasbhasasbiaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaxaxaxaxaxaRaxaRaRaRaxaRaRaRaxaxaxaxaxaxaxbjbjbjbjbjbjbjbjbjbjbjbjbjbjbjbjbjbjbjbjbjbjbjasbkaNazasbiaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaablbjblaRaxaRaxaRaxaRaxaRaxaxaxbgaxbgaxaxaxaxaxbjbjbjbjbjbjbjbjbjbjbjbjbjbjbjbjbjbjbjasasbmasasaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaablbjblaRaxaRaxaRaxaRaxaRaxaxaRaRbnaRbobpaWaRaxbjbjbjbjbjbjbjbjbjbjbjbjbjbjbjbjbjbjasasbqbrbsasaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaablbjblaRaxaRaxaRaxaRaxaRaxaxaRaRaRaRaRaxaxbtaxbjbjbjbjbjbjbjbjbjbjbjbjbjbjbjbjbjbjasbkazbubvasaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaablbjblaRaxaRaxaRaxaRaxaRaxaxbwaRbxaRbyaxaxbzbjbjaxaxaxaxaxaxaxaxaxaxaxaxaxbjbjbjbjasbAazbBbCasaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaablbjblaRaxaRaxaRaxaRaxaRaxaxbyaRbDaRbyaxaxbzbjbjaxaxbzbzbzbEbzbzbFbGbzaxaxbjbjbjbjasbHazbrbsasbiaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaablbjblaRboaRaxaRboaRaxaRbpbpaRbeaRbtbgaxaxbIbzbzbzbJbzbKbEbEbLbMbKbzbNaxaxbjbjbjbjasazazaNazasbiaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaablbOblbgaxaxaxbgaxaxaxbgaRaxaRaxaxaWaxaxaxbPbjbjaxaxbNbNbKbQbRbLbKbNbNaxaxbjbjbjbjasazazaNbSasasasaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaablbOblaxaxaxaxaxaxaxaxaxaxaxbTaxbUbebVaxaxbjbjbjaxaxbWbXbYbKbFbEbZbNbzaxaxbjbjbjbjasazazaNazazazcaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaablcbababaaaaaaaaaaaaaaaaaxaxaxaxaxaxaxaxaxbjbjbjaxaxbPcccdbNbEbNbzbNbzaxaxbjbjbjbjasbHazaNazasasasaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaablaaaaababaaaaaaaaayacacacabayaaaaaaaaaaaxaxaxaxaxaxaxcecfcfcfcfcgaxaxaxaxbjbjbjbjasazazaNazasbiaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaaaaaaaaaaaaaababchchchabaaaaaaaaaaaaaaaaaaaaaaaaaaaaciaaaaaacjbjbjbjbjbjbjbjbjasazazckaUasbiaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaciaaaaaacjbjbjbjbjbjbjbjbjasbHazazaNaschaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaaaaaaaaaaaaaabclclclclaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaciaaaaaacjbjbjbjbjbjbjbjbjasasazcmaNasaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaaaaaaaaaaacncocpcocqclaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaciaaaaaacrcscscscscscscscscscscscsctcsaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaaaaaaaaaabcucvcwcucuabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacrcxcxcyczcAcBcscCcDcEcscxcFcsaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabcucGcHcucIaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacJcKcKcLcKcMcNcscxcxcxcscsctcsaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaclcwcOcOcPcoaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacscxcxcxcxcFcQcscRcxcScscxcFcsaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaaaaaaaclcOcOcOcOcuabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacscTcTcTcUcVcscscTcWcTcscscXcsaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabababaYaaaaclcYcZdadbdcclabaaaYababaaaaaaaaaaaaaaaaaaaaaaaaaaaacscxcxcxcxcFcscsddcxcxcxcxcFcsaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaababaYdeababcldfdgdhdgdiclababdjaYabababaaaaaaaaaaaaaadkdkcicicicsdlcxdmcKdndodpcKcKcKcKcKdqcsacaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaababababdrdrdrdrdscOdtcOdudrdrdrdrabababababaaaaaaaaaaaaaadvdkcicicsdwdxdydwdwcscscscscscscscscsdzchaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabdrdrdrdrdAdrdBcldCcldDdrdrdrdrdrdrababaaaaaaaaaadkaadEaacicicicscxcxcFcxcxdFdGdHdIdJdKdLdIdMdNaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadrdrdrdOdPdQdRdSdTdUdVcldWdOdXdOdrdrdrabaaaaaaaaaaaaaadkaaaaaaaacsdlcxdYcxcxdFdZeaebeaeaeaeaecedacaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadrdreeefegehehdOeidaejekelemdOdOdOeneodrciaaaaaaaaaaaaaaaaaaaaaaaacsdwdxepdwdweqeaeaereseaeaebeaeteuaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadrdrevevevevewdWexdrdreydrdWezdXezezdWdrciaaaaaaaaaaaaaaaaaaaaaaaacscxddeAcxcxeBeaeaeaeaeCeaeaeDeEacaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadrdrdWezezezeFdPdOeGezdWezezdOdPdPezezdrciaaaaaaaaaaaaaaaaaaaaaaabcscxcxeHcLeIeJeKeKeLeMebeaeaeaetacaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabdrdrezdPdXdOeNdOdXdOdWdWezdOdOdOdOdXdOdrciaaaaaaaaaaaaaaaaaaaaababcscxcxeAcxcxeOePeQeaeReSeaeSeTeUayeVaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaababdrdrdOdXdOeWeXeYeZdWfadWdWfbfcfdezdPdXdrciabaaaaaaaaaadkaaaaabababcscscscFcscxdFfeePfffgfhdGdGeQfieuaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaababdrdrezdOeWfjfkfldWdWdWdWdWfmfmfnfddOdPdrciababaacicscscscscscscscscscscxcFcscscsfofofpfofofodzdzdzacaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabdrdrdrezezfqfrdPdWdWdWdWdWdWdWdWfsftezfudrciciababcicsfvfwfxfyfzfAfBcscscxcFcsfCfCaYabayayaaaYfDaychacaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadrdrdrdrdrezezfqfjdPdWdWdWdWdWdWdWdWfEftdWezdrdrdrdrdraacsfFfxfxfxfxfxfxcscscxcFcsfCfCabaaaaaaaaababaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabdrdrezfGfHezezfIfJdWeZaaaaaaaaaadWdWfEewdWezdOezdWdrdrabcsfxfxfxfxfxfxfxcscscsfKcscscsabaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadrdrfLdOfEfdezdPezfMdWdWaaaaaaaaaadWdWfNfMezfOfPfQdOezdrdrcscsfRcsfSfSfSfScsfxfxfTfxfxcsdkaaaaaaaaaaaaaaaaayayaYchaychayaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadrdremdXfUftdPdPdPdXdWdWaaaaaaaaaadWdWfVdWezfWfXfQdOfYdrdrfZgagbgbgcgcgcgcgdgegegffxggcsababaaaaaaaaaaaaaaayayaYchayfDayaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadrdrezezfUftezdXeZghdWdWaaaaaaaaaadWdWdWgidWezdOgjdXezgkgkfZglgmgngogogogpcsgqfxfTfxfxcsaaaaaaaaaaaaaaayayaygraYchaychayaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabdrdrezgsewdOdPgtgudWdWaaaaaaaaaadWdWgvgwezezfbfJezdrgkgxgygagzgngogAgogpcsfxfxgBfxfxcsaaaaaaaaaaaaayayayaygCaYchgDchayaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabdrdrdrdrdrezezfqdWdWdOdWdWdWdWdWdWdWdWgEdPdPdrdrdrdrgkglfZfZfZgFfZfZfZfZfZfZfZcscscscsaaaaayaychayaygDgGgHgraYchgrfDayaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaababdrdrdrdOgIgJdWdOdXdWdWdWdPdOdWdWgKgEdXezdrdrdrababglfZgngLgLfZgogMgNfZgOgLcscsaaababayaygCchayaYgrgCgDgPaYchgQchayaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaababdrdrdXdPgRdWdWdOgSdOdPdXeheiehgSgTdPdPdrdraaaagxgUfZgngLgngngogogofZfZaaababayaaaaaygrgrchaygVgVgVgVgVgVgWgWgWayaa -aaaagXgXgXgXgXgXgXgXgXgXgXgXgXaaaaaaaaaaaaaaaaaaaaaaaagYdWgYababgJfbftezezezgZevevewdOdOezdrdraagLhagmfZgogogognhbgofZfZfZabhcchchchhcgWgWgWgWgWgWhdhehfhghfhhhigWaaaa -aaaagXhjhjhjhjhkhkhkhkhkhlhjgXaaaaaaaaaaaaaaaaaaaahmaadWdWhnababdWhoezdOdOfWezezdOdPdXezezdrdraagLgLgmfZfZfZgofZfZfZfZfZfZchgCayaygCgChphphqhqhrgWhshdhshfhfhihfgWaaaa -aaaagXgXgXhjhthkhkhkgXgXhugXgXgXgXgXhvhwhwhwhvhxhyhzhAhvhBabhCabezezdOdPdPdPdOezezdOdPdrdrdrdraaglgmgnfZgogzgngzfZgzgzhDgzaygCgCgCaygChqhphrhrhqhEhfhfhfhfhfhfhfgWaaaa -aahCgXhFgXgXgXgXgXhGgXhHhkhlhkhkhkgXhIhIhIhJhIhKhLhzhzhMababababdrdrezhNdXdOezdrdrdrdrdrdrababgLhOgmgngogogngLgzgzhDgzgLgLchchhchchchcgVgVgVgVgVgVhfhfhPhfhfhfhfgWaaaa -aahQhRhShThShUhShThSgXhHhkhHhkhHhkgXhVhIhIhIhIhWhXhYhzhZhzhzababdrdrdrdrdWdrdrdrdrdrdrabaaayfZgUgmgngnfZgogngngLgkgkgkgkgkabababaaaaaaiagDiaayibgVhdhdhfhdichfidgWaaaa -aahQieifigihiiijiiijgXhHhkhHhkhHhkhuhIhIhIhIhIhIhXikilhzhzhzaaababdrdriminiodrdrabababaaaaayfZgmgmipgnfZfZfZfZgzgkgPgCgPiqaaabaaaaaaaaaaaaiaabiqgVirirhfirishfhfgWaaaa -itiuiviwixiwhThShThSgXhHiyhHizhHhkgXiAhIhIhIhIiBiChXhYhzhzhzaaaaababdrdrdrdrdrababaaaaiDiDiEfZgniFgngofZgogzgngzgkgCiqgCgCaaabaaaadkaaaaaaaaiqabgVhfhfhfhfiGhdhsgWaaaa -iHiIiJiJiJiKiiijiiijgXhHhkhHhkhHhkhuhIhIhIhIhIiLhIiMhXiNhYhzhziOhvhvhvhviPiQabaaabaaiRaaaaayfZfZipgnfZfZgLgogLgzgkgCiaaaaaaaabaaaaaaaaaaaaaaaagPgVgWhfhfgWgWgWgWgWaaaa -iSiTiUiViWiVhTiXhUhSgXhHhkhkhkhthkgXhIhIhIhIhIiYhIiZhIhXhXhYhzhzjahzjaiDayayayaaababababaajbfZgojcgogofZgogogogogkiqgCaaaaaaabaaaaaaaaaaaaaaaagVgVgVhfhfgWjdjdjdgWaaaa -aahQieijiijeiiijiiijgXgXgXgXgXgXgXgXhVhIhIhIjfjgjhjijhjihXhYjjjkhvjlhvgPayayayjmjnayayayjojpfZgojqgogofZgojrgojsgkgkgkayababayabayabababayababayaygVhfhfhfhfhfjtgWaaaa -aahQhRhShTjuhThShThSjvjwjwjwjxjwjygXiAhIhIhIjzjAjBjChIhvjDjEhvhvhvhvhvhIjpgPgDjFaygDayaygPjpfZgojqgojsfZgogogogLgogogkfZjGjGchjGaaaaaaaaabaaaaaaabgVjHhfhfhfhfjIgWjJjK -aahCjLjLjLjLjLjLjLjLjLjLjLjLgXgXjMgXfZfZfZfZfZfZfZfZfZfZjNjOfZfZfZfZfZfZfZfZfZfZgDjpjpjpgDjbfZgojPgcgcgcgcgcgbgcgcgcjQgcjRjSjRjGjGjGchchjTchchchhcgVgWhfhfhfhfhfjUhPjU -aaaaaYgPayabaaaaaaababdEjVjLfZjWjXjYgogojZgojWgogofZkagojqgogogofZgogogogogofZfZfZfZfZfZfZfZfZgojqgogofZgogngogogLgogkfZjGchkbaykckdkekfkgkcjRkckckhkikjkkhPhfhfgWjJjK -aaaaaYgHdEaaaaaaaaaaabaygPklgogLgLkmkngogogogokogofZkpgojqgogojsfZkpkngokogofZfZfZfZgogogogogogojqgogofZgokogngngokqgkfDabaajGjGjGayfDchaajGjGjGjGgVgWhfkrhfhfksgWaaaa -aaaaabayaaaaaaaaaaaaayabayjLfZgUgnktkukvkvkvkvkvkvkwkvkvkxgogogofZgogogogogogogojZgokygcgcgcgcgckzkAgkgkgkgogogogogogkfDabaaaaaaaaaaaaaaaaaaaaaaaakBgWhfgWhfhfkCgWaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaYjLfZgngLfZfZfZgofZfZfZkDfZgogokEgcgcgckFgcgckGgcgcgcgcgcgckHgogogogogogojqgkkIgkgkkJgnfZkKchabaaaaaaaaaaaaaaaaaaaaaaaakLkMgWhfgWgWgWgWgWgVaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaafZgLgmfZkNjZgofZkNjZgofZkOkOkOkPkDkQfZkpgojqgogogogogogogogkgkgkgkgkgkkRgkkSkTgkfZfZfZaaaaaaaaaaaaaaaakUaaaaabaaababgWhPkVhfhfjtkVhfgVgVac -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabgnfZkWknkXfZkWknkWfZkYkZkZgogogofZgogolagogogogogogogogkgrgrlbgrgrlcgrgraYaYchchchgDaaaaeVaaaaaaaaaaaaabldldababgWkMhfhfhPhfhfhfhfgVac -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaababfZfZfZfZfZfZfZfZfZgolelflggogofZfZfZfZfZfZfZfZfZlhfZgkayayayaygrliljgraYlbgrlkchayabaaabababaaaaaaabababaaabaakLllhfhfhfhfhPhflmgVac -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabgLgLgLlnkajYlojYfZgolplqlrlggofZlsltlultlvlwlwlxltlxlylzlzlAeuaygrlBlClDgrgrlEchabchababdkabababababaaabaaaaaakLllkMhfhfhfhfhfhfgVac -aaaaaaaaaaaaaaaaaaaaaaaaaaababababababgLgLjYlFgolGfZkplHlIlrgojsfZlJlKltlLlMlNlOlxlPlxlylzlAlAlAlAaylQgrlRgrlElEchabaaaaaaaaabababaaabaaaaabaaaakLllhfhfhfhfhfhflSgVac -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaababgLgLgLjYgofZgogolrlrgogofZlTlUlVlLlWltlslxlslxlylzlAlzlzlzayljgrlXgrlElEchababaaaaababaaaaaaaaaaaaaaaaaaaalYlZlYjJjJjJjJjJgVac -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagLgLgLfZgogolglggogofZltlsltmamalslslxlPlxlylzlAlAlAmbayaygrmcgrgrgrmdmemfaYaYabaaaaaaaaaaaaaaaaaaaaaamghPjFayayayayaaaYac -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaababababgLmhmigogogogogofZmjltltltlsltmklxlPlxlyaYaYaYaYlzlzjRaYaYaYaYaYmfmlmfaaayaaaaaaaaaaaaaaaaeVaaaaaammlZmnchaaaachaaaYac -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabfZfZfZfZfZfZkDfZgOmoltltltltmpmqmrmrmsmtlzlAlzlAlzlzlzlAaygrgrgrmfmumfaachaaaaaaaaaaaaaaaaaaaaaaaamvaaaaaaaaaaacayaYac -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaababaagLgLhDgngolGfZmwmxltltltlsmyltltmtmzlAlAgPaYmAlzlzlAayjRayljmBmCmDaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaYac -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaababaaaagLgmmEgogofZmFlsltltltlsltltmrmGmtlAlAlAmHlAlAlAlAlzayaygrmfmImDaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacayaYac -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaagLmJgLgnmKgofZmLmMlsltlsltltltmrmGlxlzlzlAlAlzlzlzlAlzlzaygrmfmImDaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaYac -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaabaagLgLgLgogogmfZltlsltltmNlsltltmGmplxgPlzlAaYaYlzlzlAlAlAaYaYmfmImDaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacayaYac -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaaaabababfZgLfZfZfZfZlsltlsltmGmNltmsmNmpmtgPmOlAayaylzlzlAlzlzlzaymdmImDaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaYac -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaagLgLgLgngmgofZltmPmaltltltmQltmpmtmzlzlzlAchlzlzlzlAlzlzaygrmdmImDaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaayacayaYac -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaababaaaaabmEgLmRgnfZlxlxlsmGltlsltltlxlxmzlAlAchchlAlAlAlAayaygrgrmdmImfmdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacaaaYac -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaaagLgLgLgmgofZmSmSlxmTmGmGltltlxmSmSlzlzlzchlzlzlzaygrgrgrgrmdmImUmVmdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabababchmdmemdmdmdmdmWmdmdlxmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmXmUmUmUmYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaababmZmUmUmUnanbmUmUmUncndnenfngnhninjnknlndndndndndndndndndndndnmndnnmZmUmUmDaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabmZmZmZmUmUmUmUmUmUmUmUnonpnqnrnsntnunvmUmUmUmUmUmUmUmUmUmUmUmImUnwmUmUmUmDaaaaaaaaaamvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabababnxnynznznzmdnznznznznzmdnznznznznzmdnznznznznzmdnznznznzmdmImZmZmUmUmUnAitititaaaaaaiRaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaayacacacacacacacacacacchacacacacaceueueuacacacaYacacacacnBnCnBmZmUmUmZnDnEmlmlmZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaYaaaaaaaanBnFnBnGnGmfnHmfnHmfiSiSiSaaaaaamvaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaanIayaynBnJnKnLnBnMnMmfnNmfnNmfaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaababaynBnOnBnPnQnRnSmfnNmfnNmfaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaanTaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabayaynBnUnVnPnWnXnRmfnNmfnNmfaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabldaygPnBnYnBnZnRoaobmfocmfnNmfaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaygPodoeofognRohoinRmfnNmfnNmfaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaygrgrnBnPnBnRnRnVojmfnNmfocmfaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaYaYaYaanBnBoknBnBnBnBnBmfnNmfocmfaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaabolabaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaomaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaonononaaooaaonopoqaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaorososotouotovowdkaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaoxoxoxaaooaaoxoyaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaozaaaaaadkaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaonononaaooaaonononaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacabozoAosoBouoBovovoCababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaoxoxoxaaooaaoxoxoxaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaoDaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacacacacacabacacababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +gw +gH +gP +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(2,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +be +gb +gb +gx +cE +gQ +gb +gb +be +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(3,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +mm +mm +mm +mm +gc +gj +gy +mN +gR +gj +gc +mU +ax +ax +ab +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(4,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +mm +fG +mm +fR +gd +gk +gz +mN +gS +go +gd +mU +bx +fr +ay +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(5,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +mm +fG +mm +mm +ge +gl +gA +mN +gT +gn +ge +mU +ay +da +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(6,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +mm +fG +fG +mm +gd +gm +gz +gI +gS +hb +hl +mU +ab +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(7,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +mm +fG +fL +mm +gf +gn +ge +gn +ge +gn +ge +mU +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(8,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +mm +fH +fH +mm +gd +go +gd +go +gU +go +gd +mU +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(9,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +mm +fH +fH +mm +ge +gn +ge +gn +gf +gn +ge +mU +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(10,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +mm +fH +fH +fS +gd +go +gd +go +gd +go +gd +mU +ab +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(11,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +mm +fH +mm +mm +mm +mm +mm +mm +mm +mm +hm +mU +ab +ab +ay +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(12,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +mm +fH +mm +fT +fT +fT +fT +fT +fT +mm +mR +mU +da +ay +ab +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(13,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +mm +fI +fM +fH +fH +fH +gB +fH +fH +mm +mR +mU +hF +bx +ay +ax +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(14,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +mm +fG +mm +fI +fT +fT +fT +fT +fH +mm +mR +mU +mU +hO +mU +mU +aa +aa +aa +aa +ab +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(15,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +mm +mm +mm +fH +fH +fH +gC +fH +fH +mm +hn +mm +lS +ma +lS +lS +lS +aa +aa +aa +ab +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(16,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +mm +fH +fT +fT +fT +fT +fL +mm +mR +mm +hG +mg +mj +lZ +mg +ab +ab +aa +ab +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(17,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +mm +fH +fH +fH +fH +fH +fH +mm +ho +hy +hH +mg +lZ +mg +lY +lZ +ab +ab +ab +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(18,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +mm +mm +mm +fM +mm +fM +mm +mm +mm +mm +mV +hP +nd +lS +lS +lS +lS +mg +ab +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(19,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +my +mD +gg +mD +gD +mD +mD +gg +gD +lS +ma +hQ +hU +lS +ni +nl +lS +mg +ab +ab +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(20,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +fN +mD +mD +mD +mD +mD +mD +mD +mD +lS +ma +ma +ne +lS +mW +hQ +lS +mg +mg +ab +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(21,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +fN +mD +mD +mD +mD +mD +mD +mD +mD +lS +mW +ma +ne +ma +ma +iq +lS +iE +mg +mg +aa +ab +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(22,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +fN +fV +mD +mD +mD +mD +mD +mD +mD +lS +ma +ma +ne +lS +lS +lS +lS +mX +mV +mg +aa +ab +aa +aa +aa +aa +aa +ab +aa +aa +aa +ab +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(23,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +li +li +li +ab +ab +aa +aa +aa +aa +my +mD +mD +mD +mD +mD +mD +hc +hp +lS +hG +ma +ne +lS +ni +nl +lS +mV +iO +mg +mg +ab +aa +aa +aa +aa +ab +aa +aa +aa +aa +ab +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(24,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +li +li +li +li +li +li +li +ab +aa +aa +aa +mz +fW +gh +mD +gE +gJ +gV +hd +hq +lS +ma +hR +ne +lS +mW +hQ +lS +iF +ma +mV +mg +ab +ab +ab +ab +aa +aa +aa +aa +ab +aa +ab +ab +aa +ab +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(25,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +li +li +eG +dw +lA +li +li +ab +ab +aa +aa +fO +fX +mF +mF +mL +mD +mD +he +hr +lS +ma +ma +ne +ib +ma +nl +lS +mV +ns +ma +mg +mg +lS +ab +ab +ab +ab +ab +ab +ab +ab +as +ab +ab +ab +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(26,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +kD +kD +kD +kD +kD +kD +kD +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +li +li +lA +ln +lt +lA +lA +li +li +ab +aa +fJ +mA +mA +mG +gp +mF +gK +gW +hf +hs +lS +lS +lS +hV +lS +lS +lS +lS +lS +lS +lS +lS +ny +lS +aa +aa +aa +aa +ab +aa +aa +aa +nv +nT +nT +ab +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(27,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +kD +aJ +kE +aT +kE +kD +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +aa +aa +li +li +li +li +li +li +li +li +eC +lO +eP +eP +ff +li +li +li +aa +aa +mB +mA +mA +gq +mG +mF +mD +he +mD +lS +mX +nb +ne +ma +nj +ir +ma +ma +nb +ma +ma +jf +lS +mg +aa +mg +mg +ab +mg +aa +aa +nw +nR +nT +nZ +ay +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(28,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +kD +kD +aK +kD +kD +kE +kD +kH +kH +kH +kH +kH +kH +kH +kH +kH +kH +ab +ab +ab +ab +ab +aa +aa +aa +ab +ab +ab +ab +li +li +li +li +li +li +li +li +li +eD +lJ +er +er +dF +li +li +li +mn +ls +my +fY +mH +mA +mA +gL +mF +hf +my +lS +ma +ma +ne +ma +nj +is +iv +iG +iP +ma +ma +ma +lS +mg +mg +nL +mg +lS +mg +ab +mg +nv +nR +nT +oa +ac +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(29,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +kD +aU +ba +kD +kG +kG +kG +kG +kG +kG +kQ +kQ +bQ +aa +aa +ab +aa +aa +aa +aa +aa +ab +ab +ab +ab +li +li +dq +dE +ls +lA +ln +lA +lA +lA +lA +lA +lo +lA +ln +lA +ln +lt +ls +ls +fP +ab +mA +mA +mA +mG +mF +mF +mS +hz +mP +mP +hW +ng +nj +is +iw +iH +iQ +iI +ix +ma +lS +mC +lY +mg +mg +mg +mg +nI +mg +nv +nR +nR +ob +ac +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(30,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +kD +kD +aT +kD +kH +kH +kH +kH +kH +kH +kH +kH +ab +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ax +ab +li +li +dr +dE +lA +lo +lt +ln +lA +lA +lA +lo +lo +lt +lo +lA +fs +lo +mn +mt +ab +ab +mA +mA +mA +mA +mG +mG +ht +hA +ma +ma +ma +lT +ij +ma +ix +iI +iI +iI +ix +ma +lS +lZ +nI +lZ +ma +lS +lZ +mg +mg +nv +nU +nR +ob +ac +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(31,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +kD +kE +kE +kE +kE +kE +kE +kE +kE +bc +kD +ab +ab +aa +aa +aa +aa +aa +aa +aa +aa +ax +cF +li +li +ln +ds +dE +lA +lt +ln +dZ +eo +eo +eE +lA +lo +lG +fg +eo +mf +fx +ab +ab +be +ab +ab +aa +aa +mA +mA +mO +my +lS +ma +ma +ma +lT +ib +ma +ma +ix +ma +ma +ma +ma +ib +ma +ma +nM +ma +lS +lY +nO +lY +nv +nV +nR +ob +ac +aa +aa +aa +kd +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(32,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +kD +bb +kD +kD +kD +kD +kD +kD +bi +kD +kD +aa +ab +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +li +li +lo +dt +dE +lA +ln +dZ +ei +ep +ei +eF +eH +lt +fb +fh +ls +ls +ls +ab +ab +ab +ab +ab +ab +aa +gM +mA +hg +my +lS +ma +mQ +ma +lT +ik +ma +ma +ma +mQ +ma +ma +ma +lS +ns +ma +ma +lY +lS +ma +lZ +ma +jx +nR +nR +nv +ac +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(33,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +kD +bc +kE +kE +kE +kE +kE +kE +kE +kD +kD +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +li +cW +dj +dt +dF +dN +dR +ea +ej +lo +lo +ls +ls +ls +ls +ls +ls +ln +ls +mf +ls +lA +li +li +ab +ab +my +gX +my +my +lS +lS +lS +lS +ic +lS +lS +lS +lS +lS +lS +lS +lS +mh +lS +lS +lS +lS +lS +lS +lS +lS +nv +nR +nR +ob +ac +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(34,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +kD +kD +kE +kD +kD +kD +kD +kD +kD +kD +kD +aa +aa +aa +aa +aa +aa +ab +ab +kS +kS +kS +kS +li +li +dk +ln +ls +lo +ln +eb +ek +ls +ls +lG +ls +ls +ls +ls +ln +lt +ln +lH +fK +lA +li +li +li +ab +my +mA +hh +my +lS +ma +nb +ma +lT +nb +ma +lS +nn +iR +iY +no +jg +nB +jm +jr +nN +no +nn +no +nq +nP +nv +nR +nR +ob +ac +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(35,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +kD +kD +kE +kE +kE +kE +kE +kE +kE +bc +kD +aa +aa +aa +aa +aa +bY +kW +kW +kX +ld +cz +cG +cR +cX +lp +du +lz +ln +lt +lG +ls +ls +ls +aa +aa +aa +aa +aa +ls +ls +mi +er +lA +ln +lA +li +li +li +my +gX +my +my +lS +ma +hQ +ma +lT +ma +ma +lS +no +iS +iZ +nn +no +no +jn +nn +jt +nn +no +jv +nq +nP +nq +jA +nR +ob +ac +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(36,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +kD +kD +kD +kD +kD +kD +kD +kD +bi +kD +kD +aa +aa +ab +aa +ab +kU +cd +cl +ld +ld +cA +lg +ld +kS +dl +cB +li +lB +ln +ls +ls +ls +ls +aa +aa +aa +aa +aa +ls +ls +ln +lA +ln +lo +fZ +li +gr +li +my +fy +bx +mD +lS +ma +ma +ma +id +mP +nm +lS +iJ +no +ja +no +no +no +no +no +nn +no +nn +nu +nn +nq +nv +nW +nR +ob +ac +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(37,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +kD +bc +kE +kE +kE +kE +kE +kE +kE +kD +kD +aa +ay +ab +aa +kS +bZ +kX +cm +ld +ld +cB +cI +cS +cY +lq +lw +li +lA +ls +ec +ls +ls +ls +aa +aa +aa +aa +aa +ls +ls +lo +lA +ln +lo +lt +ls +gs +li +gN +ay +ay +fU +lS +ma +hR +ma +lT +ma +ma +lS +no +iT +iT +nu +no +no +no +no +no +no +no +no +nJ +nQ +nv +jB +jK +ob +ac +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(38,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +kD +kD +kE +kD +kD +kD +kD +kD +kD +kD +kD +aa +ac +as +aa +kS +kU +kW +kW +cr +ld +cC +lg +ld +kS +lr +dv +dH +ls +ls +ls +ls +ls +ls +aa +aa +aa +aa +aa +ls +lo +lt +lA +eR +lo +ln +li +mK +li +el +ay +ay +bx +lS +ma +ma +ma +lT +ma +ma +lS +np +iU +jb +nu +nn +no +no +no +nn +ju +nJ +no +no +nJ +nv +jC +jL +nv +as +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(39,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +kD +kD +kE +kE +kE +kE +kE +kE +kE +bc +kD +aa +ac +as +aa +kS +ca +kW +cn +kU +kW +cD +cJ +cT +cZ +kS +lx +li +lA +lA +ls +ls +ls +ls +aa +aa +aa +aa +aa +ls +ln +dt +mo +lA +ln +lA +li +li +li +ab +ay +ay +bC +lS +lS +lS +ma +lT +ma +ma +lS +iK +iV +no +nn +no +nC +nn +nn +no +nn +ju +no +nn +nJ +nv +jD +jM +ob +ac +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(40,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +kD +kD +kD +kD +kD +kD +kD +kD +bj +kE +kD +kD +ac +as +aa +kS +kS +ab +aa +aa +ab +kS +kS +li +li +ls +dw +ls +lA +ln +lH +lK +ls +ls +ls +ls +ls +ls +ls +ls +ls +du +dE +lA +lA +li +li +li +ab +aa +aa +hi +fd +lS +lS +lS +ma +lT +ma +ma +lS +iK +iW +nn +nn +nz +jj +jo +no +no +no +no +jw +no +no +nv +jE +jN +ob +ac +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(41,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +kD +kD +kD +kD +kD +kD +kD +kD +bj +kD +kD +kD +ab +ab +aa +aa +aa +aa +aa +aa +aa +ab +ab +li +li +ln +ln +lA +ln +ln +lI +lK +ls +ls +ls +ls +ls +ls +ls +ls +ls +dt +dE +ln +lA +li +li +ab +ab +ab +ab +fc +ay +bC +lS +lS +mW +lT +ma +ma +lS +nq +nq +nq +nq +nq +nD +no +no +no +no +nE +no +no +no +nv +jF +jO +ob +ac +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(42,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +kD +kD +kD +kD +kE +kE +bo +bq +kE +kE +bI +kD +ay +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +li +li +lt +ln +lt +lo +ln +lJ +em +eq +lO +lO +lQ +eQ +ls +fi +ls +ft +mi +dF +lo +ln +li +li +ab +aa +aa +ab +ay +bC +fU +lS +lS +ma +lT +ma +ma +iy +no +nt +nn +nt +nt +nD +no +nD +nD +nJ +ju +nC +nq +nq +nv +jG +jP +ob +ac +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(43,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +kD +kD +kD +bc +kE +kE +kE +kE +ba +kD +kD +kD +aa +aa +aa +aa +aa +aa +aa +aa +aa +ax +cK +li +li +ln +ln +lA +lo +ln +lA +lJ +er +er +dF +eH +ls +lU +fj +me +me +fz +ln +lt +lo +li +li +ab +aa +gO +ab +ay +ay +fU +lS +ma +hX +ie +ma +ma +lS +nq +nq +nq +nq +nq +nE +nF +nJ +nJ +nC +nC +nF +nq +nP +nv +jH +jQ +ob +ac +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(44,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +kD +kD +kD +kD +bh +kE +bp +bv +kE +kD +bJ +kD +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ax +ab +li +li +dx +lA +lA +lt +lo +ln +lA +ls +ls +lA +lA +ls +lA +lo +lt +lo +ln +lA +li +li +ab +aa +fy +aa +ab +ay +ay +fU +lS +ma +lT +ma +lW +lW +lW +nr +nr +nr +nr +nr +nF +nG +nF +nq +nq +nF +nG +nG +nP +nv +jI +jR +nv +dD +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(45,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +kD +kD +kD +bc +kE +kE +kE +kE +kJ +aT +ba +kD +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +li +li +dy +ls +lA +ln +lt +lo +es +lA +lA +eJ +eR +lA +lA +lo +lA +lo +lA +lA +li +li +aa +aa +fy +aa +aa +eI +bx +bC +lS +ma +lT +ma +lW +br +ay +aa +aa +aa +aa +ax +aa +ab +ab +aa +bx +bx +aa +ab +aa +nv +nW +nR +ob +dD +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(46,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +kD +kD +kD +kD +bi +kE +bq +bq +bc +kD +bK +kD +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +li +li +li +li +li +li +li +li +li +ln +eK +eS +ln +lH +li +li +li +li +li +li +ab +ay +ay +gF +ay +gY +fU +fU +gY +lS +ma +lT +ma +lW +br +ay +aa +ab +ab +ab +ax +ab +ab +ab +aa +aa +da +aa +ab +aa +nv +nW +nR +ob +dD +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(47,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ay +kD +kG +kD +bj +kD +kD +kD +kD +kD +kD +kD +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +ax +ax +ax +ax +ax +ax +ax +li +lA +eL +eL +lV +eF +li +li +li +li +li +li +ab +lS +lS +lS +lS +lS +lS +lS +lS +lS +ma +lT +ma +lW +ip +ay +ab +ab +aa +ab +ax +aa +bx +ab +ab +ab +ab +ab +as +aa +nv +nW +nR +ob +ac +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(48,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ay +kD +kG +kD +aT +kD +kD +kD +kD +kD +kD +kD +kD +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +aa +aa +aa +aa +aa +aa +ab +ab +ax +li +ls +ln +ln +lt +lA +li +li +aa +aa +aa +aa +mg +mj +lY +lZ +lS +ma +ma +ma +ma +ma +ma +lT +ma +lW +br +ay +dD +ab +aa +ab +ax +ab +ax +js +ab +ax +ay +as +as +as +nv +nW +nR +ob +ac +aa +aa +aa +aa +aa +aa +aa +ax +ac +ac +ac +ac +ac +ac +ab +ac +ac +ac +ac +"} +(49,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ay +kD +kG +kD +kE +kJ +kK +kK +bA +bF +kG +kG +kD +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +li +li +lA +eT +lA +li +li +ab +aa +mg +mg +lX +ga +lY +lY +gG +gt +gZ +mP +mP +hB +mP +mP +hY +ma +lW +br +br +ay +ab +aa +iu +aa +aa +cL +ab +aa +ax +ay +aa +ab +aa +nv +nW +nR +ob +ac +aa +aa +aa +aa +ab +ab +ab +ax +aa +aa +aa +aa +aa +aa +aa +ab +aa +aa +ac +"} +(50,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ay +kD +kG +kD +kD +kD +kG +kG +kK +kG +kG +kG +kD +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +li +li +li +li +lW +lW +lW +ab +fk +fB +mg +lY +lY +lZ +gt +lZ +lZ +ma +ma +ma +lT +ma +ma +hZ +mP +il +it +iz +br +ay +ay +ay +aa +aa +aa +ab +aa +aa +aa +aa +ab +aa +nv +nW +nR +nv +ax +ax +jX +ab +ab +iu +ay +ay +ax +aa +aa +kq +or +kx +aa +kq +ot +kx +aa +ac +"} +(51,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ay +kD +kG +kG +kG +kG +kG +kG +kK +kG +kG +kG +kD +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ax +ax +aa +ab +li +li +lW +fk +lX +lX +mj +lY +lY +lZ +lZ +lZ +lZ +ma +lS +ma +ma +mQ +lT +ma +ma +lW +lW +lW +br +iA +iL +eO +iA +ay +fA +aa +aa +ab +aa +aa +aa +aa +ab +aa +nv +nW +nR +ob +ac +aa +ay +ab +ay +ay +bx +br +aa +aa +aa +kq +kt +kx +aa +kq +kz +kx +aa +ac +"} +(52,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ay +kD +kG +kG +kG +kG +kD +kD +kK +kD +kD +kD +kD +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +kV +kV +kV +kV +kV +lS +lS +mc +lS +lS +lS +lS +lS +lS +ma +lS +lS +lS +lS +lS +lS +lS +lT +lS +lS +lW +if +nk +br +br +iM +br +br +br +ax +ab +ab +ab +ab +ab +ab +ab +ab +ay +nv +nW +nR +ob +ac +aa +ay +ay +ay +bx +bB +br +od +aa +aa +kq +kt +kx +aa +kq +kt +kx +aa +ac +"} +(53,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ax +kD +kG +kG +kG +kG +kD +kD +kN +kD +kD +kD +kD +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +cL +aa +aa +aa +aa +aa +aa +kV +et +eB +lM +kV +eU +lX +eU +lS +lZ +lZ +ma +lS +ma +ma +ma +lS +ma +mg +ma +ma +ma +lT +ma +ma +lW +lW +im +ax +ax +iN +fo +dG +je +ax +ay +ay +aa +aa +ab +aa +aa +ay +br +nv +nW +nR +ob +ac +aa +od +od +od +od +on +od +od +ab +aa +aa +os +aa +aa +aa +kA +aa +aa +ac +"} +(54,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ay +kD +kG +kG +kG +kG +kD +kK +kK +bE +bL +bF +kD +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +cL +kV +eu +lM +lM +eM +eV +lY +md +lS +mg +mg +ma +lS +md +lZ +lZ +lS +md +ma +ma +hj +ma +lT +lZ +hR +ma +lW +lW +ax +ip +br +br +br +br +ax +br +fA +ay +aa +ab +aa +aa +ay +br +nv +nW +nR +ob +ac +aa +jY +kb +ke +kg +kk +oh +kn +ko +kp +kr +ku +kr +ot +kr +ku +kr +kB +ac +"} +(55,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ay +kD +kG +kG +kG +kG +kD +kK +kO +bE +bM +bR +bT +aa +aa +aa +aa +aa +aa +aa +aa +aa +cL +aa +da +cL +aa +aa +aa +aa +aa +kV +lM +lM +lM +kV +eV +lZ +lZ +fp +mg +lZ +ma +ma +lZ +mg +lZ +lS +lZ +mg +ma +ma +ma +eV +ma +lZ +ma +nh +lS +as +br +br +ii +ii +br +ax +br +ay +ay +ay +ax +aa +ay +br +br +nv +nW +nR +nv +od +od +jZ +od +ok +od +oo +od +od +ab +aa +aa +os +aa +aa +aa +kA +aa +aa +ab +"} +(56,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ay +kD +kG +kG +kG +kG +kD +kK +kL +kO +bN +bS +bU +ax +ax +ax +ax +aa +aa +aa +aa +aa +cL +cU +aa +aa +aa +aa +aa +aa +aa +kV +ev +lM +lM +eN +lT +ma +ma +lS +lS +lZ +lZ +lS +md +md +mg +md +md +md +ma +mQ +mg +lT +ma +lZ +ma +lZ +lS +as +iB +ii +ii +ii +br +ax +br +iA +br +br +ax +ay +br +br +br +nv +jJ +nK +nK +jS +jV +ka +oh +oh +kh +oj +oj +od +aa +aa +kq +kv +kx +aa +kq +kv +kx +aa +ac +"} +(57,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ay +kD +kG +kG +kG +kG +kD +kL +kL +bG +kO +bE +bU +aa +aa +aa +aa +aa +aa +aa +aa +aa +ax +cL +ax +aa +aa +aa +aa +aa +ab +kV +ew +lM +lM +eN +lT +ma +fm +lS +ma +ma +fC +lS +lS +md +lW +lW +lW +lW +lW +lW +ma +lT +mg +ma +ma +lS +lS +as +as +as +as +as +nv +nx +nx +jp +nx +nx +nx +nv +nv +nv +nv +nv +nW +nR +nT +od +od +od +oi +ol +oj +kl +oj +od +aa +aa +ks +kw +ky +aa +kq +kv +kx +aa +ac +"} +(58,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ay +kD +kG +kG +kG +kG +kD +kK +kP +kR +kM +kL +bU +aa +aa +aa +aa +aa +aa +aa +aa +aa +ax +ax +ax +aa +aa +aa +aa +ab +ab +kV +ex +lM +lM +eN +lT +ma +ma +lS +fu +ma +ma +lS +md +mC +lW +bx +fl +fl +bw +lW +ma +lT +ma +hS +ma +ig +aa +bC +ay +ab +ab +ab +nw +nA +jk +jq +nK +nK +nK +nK +nK +nK +nK +jy +nX +nY +nT +nT +jW +of +oj +kf +ki +km +ok +od +aa +aa +oq +cL +aa +cL +kq +ou +kx +aa +ab +"} +(59,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ay +kD +kG +kG +kG +kG +kD +kK +bD +kP +kL +bE +bU +aa +aa +aa +aa +aa +aa +aa +aa +aa +ax +ax +ax +aa +aa +aa +ab +ab +ab +kV +ey +lM +lM +eN +lT +fe +fe +lS +fv +ma +lS +lS +md +md +lW +fl +bw +ce +fl +lW +lW +hC +lW +lW +lW +as +aa +aa +ab +as +aa +ab +nx +nx +nx +nH +nH +nH +nH +nH +nH +nx +nR +nR +nT +nR +nR +nR +jW +of +kc +oj +kj +oj +op +od +aa +aa +aa +aa +aa +aa +aa +ab +aa +aa +ab +"} +(60,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ax +kD +kG +kG +kG +kG +kD +kM +kO +kO +bO +kK +bV +bW +bW +bW +cb +cb +co +kV +kV +kV +kV +kV +kV +kV +kV +kV +kV +kV +kV +kV +kV +kV +kV +kV +eX +kV +kV +lS +lS +lS +lS +lS +mC +mg +lW +bx +fl +aa +aa +ay +lS +lT +lS +ez +ez +ab +aa +aa +aa +ab +aa +aa +ax +aa +aa +aa +aa +aa +aa +aa +aa +nv +nS +nR +nR +nR +nR +nR +nx +nx +nx +nx +nx +nx +nx +nx +ac +ac +ac +ac +ab +ac +ac +ab +ab +ac +aa +"} +(61,1,1) = {" +aa +aa +aa +ab +ac +ac +ac +ac +aa +aa +aa +aa +ay +kD +kG +kG +kG +kG +kD +by +kK +bE +bE +bE +kD +kG +kG +kG +kV +kY +lb +kY +le +kY +lh +lj +kY +lh +lj +kY +kY +kY +kV +kV +kV +kV +kV +lM +eY +mb +lM +lS +mh +lS +lS +lS +md +mg +lW +bw +fl +aa +aa +ab +hu +fA +hu +ab +ab +aa +aa +dY +ab +ab +aa +aa +ax +ay +as +aa +aa +aa +aa +aa +aa +aa +nv +nR +nR +nR +nR +nT +oe +og +og +og +om +og +og +og +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(62,1,1) = {" +aa +aa +aa +aa +ab +aa +aa +ac +aa +aa +aa +aa +ay +kD +kG +kG +kG +kG +kD +kK +bE +bE +kK +kK +kD +kG +kG +kG +kV +kY +lb +kY +le +kY +kY +lk +kY +kY +lk +lf +kY +kY +kV +kY +kY +kY +kV +lM +eY +lM +lM +lS +mg +aa +ab +as +ay +as +ab +aa +aa +aa +aa +ab +hu +cH +as +aa +aa +aa +aa +aa +ab +cL +aa +ab +ab +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +jz +nH +nH +oc +jT +nx +nx +nx +nx +nx +nx +nx +nx +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(63,1,1) = {" +ab +aa +af +ai +ap +ab +ab +ac +aa +aa +aa +aa +ay +kD +kG +kG +kG +kG +kD +kD +kD +kD +kD +kD +kD +kG +kG +kG +kV +cf +cp +kY +le +kY +cM +cV +la +dm +dz +dI +dO +dI +la +la +la +la +lP +lR +eZ +lR +fn +kV +kV +ab +fD +fl +fl +as +ab +ab +ab +ab +ab +ay +as +fA +hI +hu +aa +aa +aa +aa +ab +ab +ab +ab +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +gw +jU +oe +og +og +og +og +og +om +om +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(64,1,1) = {" +ac +aa +ag +ai +ap +aa +aa +ac +aa +aa +aa +aa +ay +kD +kG +kG +kG +kG +kD +kD +kD +kD +kD +kD +kD +kG +kG +kG +kV +cg +lb +kY +cv +kY +lb +lj +kY +kY +lj +kY +cp +kY +kV +kV +kV +kV +kV +lM +lM +lM +lM +kV +kV +ab +as +ay +fl +fD +ab +aa +aa +aa +aa +ab +hu +hu +ay +hu +aa +aa +aa +aa +aa +ab +ab +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +gw +nA +nx +nx +nx +nx +nx +nx +nx +nx +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(65,1,1) = {" +ac +aa +ah +aj +ap +aa +aa +ac +aa +aa +aa +aa +ay +kD +kG +kG +kG +kG +kG +kG +kG +kG +kG +kG +kG +kG +kG +kG +kV +ch +cq +la +cw +la +cN +lj +kY +kY +lj +kY +dP +kY +kY +kV +lN +lN +kV +lM +fa +lM +lM +kV +aa +ay +as +ay +fl +fD +aa +aa +aa +aa +aa +ay +aa +hu +eW +hu +aa +aa +aa +aa +aa +ab +ab +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +gw +nA +gP +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(66,1,1) = {" +ac +aa +aa +ak +aa +aa +aa +ac +ay +ay +ay +ay +ay +kD +kG +kG +kG +kG +kG +kG +kG +kG +kG +kG +kG +kG +kG +kG +kV +ci +lc +cs +kV +kV +cO +kV +db +db +dA +dJ +dQ +dS +db +kV +lN +lN +kV +kV +kV +kV +kV +kV +ab +aa +as +fl +ay +fD +aa +aa +cL +aa +aa +ab +aa +hu +hJ +ay +aa +aa +in +aa +aa +ab +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +nT +gP +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(67,1,1) = {" +ac +aa +ah +al +ap +aa +aa +kC +kC +aE +aL +kF +kF +kF +kG +kG +kG +kG +kG +kG +kG +kG +kG +kG +kG +kG +kG +kG +kV +kV +kV +kV +kV +kV +cP +kV +lm +dn +lu +lu +lC +dT +ed +lL +ax +ab +ab +cL +ab +aa +aa +aa +ab +aa +fD +fl +fl +fD +aa +aa +aa +aa +aa +ab +aa +as +hK +ez +aa +aa +aa +aa +ab +ab +ab +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +gP +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(68,1,1) = {" +ac +aa +ah +al +ap +aa +aa +at +az +aB +aM +aQ +aV +kC +kG +kG +kG +kG +kG +kG +kG +kG +kG +kG +kG +kG +kG +kG +kV +cj +kY +ct +le +lf +lb +kV +dc +lu +lu +lu +lC +dU +dT +lL +ab +aa +aa +aa +ab +aa +aa +aa +ay +ay +ml +mu +mv +mk +ce +aa +aa +aa +aa +ab +aa +as +hL +as +aa +aa +aa +ab +ab +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +jl +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(69,1,1) = {" +aa +aa +ah +al +ap +aa +aa +at +aA +aF +aN +aR +aW +kC +kG +kG +kC +kC +kC +kC +kC +kC +kC +kC +kC +kC +kC +kC +kV +kZ +kY +kY +cx +kY +lb +kV +dd +lv +dB +lu +lD +lu +ee +en +ay +aa +aa +aa +aa +aa +aa +ay +ay +br +ml +mu +mu +mk +bC +aa +aa +aa +aa +ay +ab +hD +hM +aa +aa +aa +ab +iu +ab +ab +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +gO +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(70,1,1) = {" +ad +ae +ae +am +aq +ar +ae +au +aB +aG +aO +az +aX +kC +kC +kC +kC +bf +bs +bz +az +az +az +bz +az +az +bz +kC +kV +ck +kY +cu +le +kY +lb +kV +de +lu +dC +lu +lE +lF +ef +lL +ay +aa +aa +aa +aa +aa +aa +ay +fl +br +ml +mv +mw +mk +ce +ce +aa +aa +aa +ab +aa +as +eW +hu +aa +aa +aa +iu +aa +aa +ab +aa +aa +dY +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(71,1,1) = {" +aa +aa +ah +an +ap +aa +aa +av +aC +aH +aO +az +aX +kC +bf +kC +kI +az +az +az +az +az +az +az +az +az +az +az +kV +kV +kV +kV +kV +kY +lb +kV +df +lu +lu +dK +lv +dV +eg +lL +aa +aa +aa +aa +aa +aa +aa +as +as +as +ml +mv +mw +mk +ay +ab +bw +aa +aa +ab +aa +as +fA +hu +aa +aa +ab +ab +ab +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +jl +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(72,1,1) = {" +ab +aa +ah +an +ap +aa +aa +aw +aD +aI +aP +az +aR +bd +aM +bg +bk +bm +bt +bk +aM +aM +aM +aM +aM +bX +az +kT +kV +kY +kV +kY +kV +kY +lb +kV +dg +lu +lu +lu +lu +lu +lm +lL +ax +ab +ab +aa +aa +aa +aa +ay +ay +ay +ml +mw +mv +mk +gi +bw +ab +bx +mk +ay +aa +as +eW +hu +aa +aa +ab +ab +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(73,1,1) = {" +ab +aa +ah +an +ap +aa +aa +kC +kC +kC +kC +az +az +kC +az +kC +bl +bn +bu +bl +az +bH +az +az +az +aR +aM +aM +cc +la +cc +la +cy +la +cQ +kV +dd +lu +lv +lu +lu +dV +lm +ll +ez +ab +aa +aa +aa +aa +ay +ay +ax +mk +ml +ml +fQ +mk +mk +mk +mk +mk +mk +ay +ab +fD +eW +hu +aa +hu +ml +ml +hu +hu +hu +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(74,1,1) = {" +ac +aa +aa +ak +aa +aa +aa +ac +ac +ac +kC +aS +aY +kC +kC +kC +kC +kC +kC +kC +kC +kC +az +kC +kC +kC +kC +kC +kV +kV +kV +kV +kV +kV +kV +kV +dh +do +lu +dL +lu +dW +dU +ll +ay +aa +aa +aa +aa +ay +ay +bC +br +mk +mp +mx +mr +mr +mp +gu +mr +ml +mk +mk +mk +mk +mY +mk +nf +ih +mE +ih +iC +iC +iC +jc +eA +jh +jl +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(75,1,1) = {" +ac +aa +ah +an +ap +aa +aa +ac +ab +ac +ac +aa +aZ +be +be +aa +aa +aa +aa +be +be +kC +az +kC +be +be +as +aa +aa +aa +aa +aa +aa +aa +ac +ll +di +dp +ly +dM +ly +dX +eh +ll +as +aa +aa +aa +aa +ay +ay +fq +fl +mk +mq +mp +mr +mr +mp +gu +mr +mr +mr +mr +hv +ml +mZ +ml +ml +ml +io +mr +mr +ih +mr +jd +mE +jd +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(76,1,1) = {" +ac +aa +ah +an +ap +aa +aa +ac +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +kC +bP +kC +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +as +aa +ac +dD +ac +ac +ay +dD +ac +ac +aa +aa +ay +ay +ay +ay +fr +bC +mk +mr +mx +mr +mE +mr +mr +mr +mr +mr +mr +mr +mr +hN +mr +mr +mr +mr +mr +mr +mr +mr +jc +fd +ji +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(77,1,1) = {" +ac +aa +ah +ao +ap +ab +ab +ac +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +dY +aa +aa +aa +aa +aa +ay +ay +br +fl +br +bx +mk +ms +mr +mr +mr +mp +gu +mr +ml +ml +mr +mr +mr +na +nc +ml +ml +mr +mE +mr +mr +mr +mT +ay +as +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(78,1,1) = {" +ac +aa +aa +aa +ab +aa +aa +ab +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ax +ax +ax +ax +ax +ax +mk +mr +mr +mr +mr +mI +gv +mM +ml +ha +mr +mr +mr +mE +mr +mr +ml +hk +mr +mr +mr +mr +mT +ay +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(79,1,1) = {" +ac +ac +ac +ac +ab +ac +ac +ac +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +as +as +as +as +as +as +ml +fE +fF +mr +mr +mr +mr +mp +ml +ha +mr +mr +mr +mr +mr +mr +ml +io +mr +mE +mr +mr +mT +ay +aa +aa +aa +aa +aa +aa +aa +ay +ac +ac +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(80,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ay +ay +ay +bC +br +fw +ml +fF +mr +mr +mr +mJ +mr +mx +ml +ha +hk +hw +mr +mr +hT +ia +ml +mr +mr +mr +mr +mr +mT +ay +as +ac +ac +ac +ac +ac +ac +ac +ac +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(81,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +as +ez +as +as +ez +as +ml +ml +ml +ml +ml +ml +ml +ml +ml +ml +ml +ml +hE +ml +ml +ml +ml +mk +mr +iD +mr +iX +mT +aa +aa +ay +aa +ay +aa +ay +aa +ay +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(82,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ay +ay +ay +ay +ay +ay +ay +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +mT +mE +mT +aa +aa +mk +mk +mk +mk +mk +mk +mk +ax +ax +ax +ax +ax +ax +ax +ax +ax +ax +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(83,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +hx +hE +hx +aa +aa +aa +ac +ac +ac +ac +ac +ac +ac +ac +ac +ac +ac +ac +ac +ac +ac +ac +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa "} diff --git a/_maps/RandomRuins/SpaceRuins/abandonedzoo.dmm b/_maps/RandomRuins/SpaceRuins/abandonedzoo.dmm index 03215fd45c..b44df3813f 100644 --- a/_maps/RandomRuins/SpaceRuins/abandonedzoo.dmm +++ b/_maps/RandomRuins/SpaceRuins/abandonedzoo.dmm @@ -13,7 +13,7 @@ d2 = 4 }, /turf/open/floor/plating/airless, -/area/ruin/abandonedzoo) +/area/ruin/unpowered) "ac" = ( /obj/structure/grille, /obj/structure/window/reinforced/fulltile, @@ -24,7 +24,7 @@ pixel_y = 0 }, /turf/open/floor/plating, -/area/ruin/abandonedzoo) +/area/ruin/unpowered) "ad" = ( /obj/machinery/shieldwallgen{ active = 2; @@ -41,7 +41,7 @@ icon_state = "2-8" }, /turf/open/floor/plating/airless, -/area/ruin/abandonedzoo) +/area/ruin/unpowered) "ae" = ( /obj/machinery/shieldwallgen{ active = 2; @@ -59,7 +59,7 @@ d2 = 2 }, /turf/open/floor/plating/airless, -/area/ruin/abandonedzoo) +/area/ruin/unpowered) "af" = ( /obj/machinery/shieldwallgen{ active = 2; @@ -71,22 +71,22 @@ icon_state = "0-8" }, /turf/open/floor/plating/airless, -/area/ruin/abandonedzoo) +/area/ruin/unpowered) "ag" = ( /obj/structure/grille, /obj/structure/window/reinforced/fulltile, /turf/open/floor/plating, -/area/ruin/abandonedzoo) +/area/ruin/unpowered) "ah" = ( /turf/closed/mineral, -/area/ruin/abandonedzoo) +/area/ruin/unpowered) "ai" = ( /turf/open/floor/plating/asteroid, -/area/ruin/abandonedzoo) +/area/ruin/unpowered) "aj" = ( /obj/structure/flora/rock, /turf/open/floor/plating/asteroid, -/area/ruin/abandonedzoo) +/area/ruin/unpowered) "ak" = ( /obj/structure/grille, /obj/structure/window/reinforced/fulltile, @@ -97,11 +97,11 @@ pixel_y = 0 }, /turf/open/floor/plating, -/area/ruin/abandonedzoo) +/area/ruin/unpowered) "al" = ( /obj/structure/flora/ausbushes/genericbush, /turf/open/floor/grass, -/area/ruin/abandonedzoo) +/area/ruin/unpowered) "am" = ( /mob/living/simple_animal/hostile/poison/bees, /mob/living/simple_animal/hostile/poison/bees, @@ -110,50 +110,50 @@ /mob/living/simple_animal/hostile/poison/bees, /mob/living/simple_animal/hostile/poison/bees, /turf/open/floor/grass, -/area/ruin/abandonedzoo) +/area/ruin/unpowered) "an" = ( /mob/living/simple_animal/hostile/poison/bees, /turf/open/floor/grass, -/area/ruin/abandonedzoo) +/area/ruin/unpowered) "ao" = ( /obj/structure/flora/ausbushes/lavendergrass, /turf/open/floor/grass, -/area/ruin/abandonedzoo) +/area/ruin/unpowered) "ap" = ( /mob/living/simple_animal/hostile/asteroid/goldgrub{ will_burrow = 0 }, /turf/open/floor/plating/asteroid, -/area/ruin/abandonedzoo) +/area/ruin/unpowered) "aq" = ( /obj/structure/flora/ausbushes/grassybush, /turf/open/floor/grass, -/area/ruin/abandonedzoo) +/area/ruin/unpowered) "ar" = ( /obj/structure/flora/rock/pile, /turf/open/floor/plating/asteroid, -/area/ruin/abandonedzoo) +/area/ruin/unpowered) "as" = ( /mob/living/simple_animal/hostile/asteroid/basilisk, /turf/open/floor/plating/asteroid, -/area/ruin/abandonedzoo) +/area/ruin/unpowered) "at" = ( /turf/closed/wall/r_wall, -/area/ruin/abandonedzoo) +/area/ruin/unpowered) "au" = ( /obj/structure/flora/ausbushes/leafybush, /mob/living/simple_animal/hostile/poison/bees, /turf/open/floor/grass, -/area/ruin/abandonedzoo) +/area/ruin/unpowered) "av" = ( /obj/structure/flora/ausbushes/brflowers, /turf/open/floor/grass, -/area/ruin/abandonedzoo) +/area/ruin/unpowered) "aw" = ( /obj/structure/flora/rock, /obj/machinery/light, /turf/open/floor/plating/asteroid, -/area/ruin/abandonedzoo) +/area/ruin/unpowered) "ax" = ( /obj/structure/table/reinforced, /obj/item/weapon/clipboard, @@ -166,10 +166,10 @@ /turf/open/floor/plasteel{ icon_state = "dark" }, -/area/ruin/abandonedzoo) +/area/ruin/unpowered) "ay" = ( /turf/open/floor/plasteel/darkgreen, -/area/ruin/abandonedzoo) +/area/ruin/unpowered) "az" = ( /obj/structure/table/reinforced, /obj/item/weapon/storage/box/syringes{ @@ -184,20 +184,20 @@ /turf/open/floor/plasteel{ icon_state = "dark" }, -/area/ruin/abandonedzoo) +/area/ruin/unpowered) "aA" = ( /obj/structure/flora/ausbushes/ywflowers, /turf/open/floor/grass, -/area/ruin/abandonedzoo) +/area/ruin/unpowered) "aB" = ( /obj/machinery/light, /mob/living/simple_animal/hostile/poison/bees, /turf/open/floor/grass, -/area/ruin/abandonedzoo) +/area/ruin/unpowered) "aC" = ( /obj/structure/flora/ausbushes/ppflowers, /turf/open/floor/grass, -/area/ruin/abandonedzoo) +/area/ruin/unpowered) "aD" = ( /obj/structure/cable{ d1 = 4; @@ -212,7 +212,7 @@ /turf/open/floor/plasteel{ icon_state = "dark" }, -/area/ruin/abandonedzoo) +/area/ruin/unpowered) "aE" = ( /obj/machinery/shieldwallgen{ active = 2; @@ -241,7 +241,7 @@ tag = "" }, /turf/open/floor/plating, -/area/ruin/abandonedzoo) +/area/ruin/unpowered) "aF" = ( /obj/structure/cable{ d1 = 4; @@ -250,7 +250,7 @@ pixel_y = 0 }, /turf/closed/wall/r_wall, -/area/ruin/abandonedzoo) +/area/ruin/unpowered) "aG" = ( /obj/structure/table/reinforced, /obj/structure/cable{ @@ -263,7 +263,7 @@ /turf/open/floor/plasteel{ icon_state = "dark" }, -/area/ruin/abandonedzoo) +/area/ruin/unpowered) "aH" = ( /obj/structure/cable{ d1 = 4; @@ -272,7 +272,7 @@ pixel_y = 0 }, /turf/open/floor/plasteel/darkgreen, -/area/ruin/abandonedzoo) +/area/ruin/unpowered) "aI" = ( /obj/structure/table/reinforced, /obj/machinery/computer/med_data/laptop, @@ -285,7 +285,7 @@ /turf/open/floor/plasteel{ icon_state = "dark" }, -/area/ruin/abandonedzoo) +/area/ruin/unpowered) "aJ" = ( /obj/machinery/shieldwallgen{ active = 2; @@ -309,7 +309,7 @@ icon_state = "0-8" }, /turf/open/floor/plating, -/area/ruin/abandonedzoo) +/area/ruin/unpowered) "aK" = ( /obj/structure/window/reinforced{ dir = 4 @@ -320,7 +320,7 @@ /turf/open/floor/plasteel{ icon_state = "dark" }, -/area/ruin/abandonedzoo) +/area/ruin/unpowered) "aM" = ( /obj/structure/cable{ d1 = 1; @@ -329,20 +329,20 @@ pixel_y = 0 }, /turf/closed/wall/r_wall, -/area/ruin/abandonedzoo) +/area/ruin/unpowered) "aN" = ( /obj/structure/table/reinforced, /obj/item/weapon/folder, /turf/open/floor/plasteel{ icon_state = "dark" }, -/area/ruin/abandonedzoo) +/area/ruin/unpowered) "aO" = ( /obj/structure/chair/office/light{ dir = 8 }, /turf/open/floor/plasteel/darkgreen, -/area/ruin/abandonedzoo) +/area/ruin/unpowered) "aP" = ( /obj/structure/table/reinforced, /obj/item/weapon/reagent_containers/glass/bottle/liver_enhance_virion, @@ -350,7 +350,7 @@ /turf/open/floor/plasteel{ icon_state = "dark" }, -/area/ruin/abandonedzoo) +/area/ruin/unpowered) "aQ" = ( /obj/structure/window/reinforced{ dir = 8 @@ -364,7 +364,7 @@ /turf/open/floor/plasteel{ icon_state = "dark" }, -/area/ruin/abandonedzoo) +/area/ruin/unpowered) "aS" = ( /obj/machinery/power/apc{ dir = 8; @@ -386,7 +386,7 @@ /turf/open/floor/plasteel{ icon_state = "dark" }, -/area/ruin/abandonedzoo) +/area/ruin/unpowered) "aT" = ( /obj/structure/cable{ d1 = 2; @@ -405,7 +405,7 @@ /turf/open/floor/plasteel{ icon_state = "dark" }, -/area/ruin/abandonedzoo) +/area/ruin/unpowered) "aU" = ( /obj/structure/rack, /obj/item/weapon/crowbar, @@ -416,20 +416,20 @@ /turf/open/floor/plasteel{ icon_state = "dark" }, -/area/ruin/abandonedzoo) +/area/ruin/unpowered) "aV" = ( /obj/machinery/smartfridge/chemistry, /turf/open/floor/plasteel{ icon_state = "dark" }, -/area/ruin/abandonedzoo) +/area/ruin/unpowered) "aW" = ( /obj/structure/table/reinforced, /obj/item/weapon/gun/syringe, /turf/open/floor/plasteel{ icon_state = "dark" }, -/area/ruin/abandonedzoo) +/area/ruin/unpowered) "aX" = ( /obj/structure/table/reinforced, /obj/item/weapon/grenade/chem_grenade/antiweed{ @@ -449,7 +449,7 @@ /turf/open/floor/plasteel{ icon_state = "dark" }, -/area/ruin/abandonedzoo) +/area/ruin/unpowered) "aY" = ( /obj/structure/table/reinforced, /obj/item/weapon/gun/energy/temperature{ @@ -458,7 +458,7 @@ /turf/open/floor/plasteel{ icon_state = "dark" }, -/area/ruin/abandonedzoo) +/area/ruin/unpowered) "aZ" = ( /obj/structure/table/reinforced, /obj/item/weapon/cultivator, @@ -466,7 +466,7 @@ /turf/open/floor/plasteel{ icon_state = "dark" }, -/area/ruin/abandonedzoo) +/area/ruin/unpowered) "ba" = ( /obj/machinery/light/small{ dir = 8 @@ -474,13 +474,13 @@ /turf/open/floor/plasteel{ icon_state = "dark" }, -/area/ruin/abandonedzoo) +/area/ruin/unpowered) "bb" = ( /obj/machinery/door/airlock/hatch{ name = "Bio-Research Station" }, /turf/open/floor/plasteel/darkgreen, -/area/ruin/abandonedzoo) +/area/ruin/unpowered) "bc" = ( /obj/structure/cable{ d1 = 1; @@ -489,7 +489,7 @@ pixel_y = 0 }, /turf/open/floor/plasteel/darkgreen, -/area/ruin/abandonedzoo) +/area/ruin/unpowered) "bd" = ( /obj/machinery/power/terminal, /obj/structure/cable{ @@ -499,13 +499,13 @@ pixel_y = 0 }, /turf/open/floor/plasteel/darkgreen, -/area/ruin/abandonedzoo) +/area/ruin/unpowered) "be" = ( /obj/structure/reagent_dispensers/fueltank, /turf/open/floor/plasteel{ icon_state = "dark" }, -/area/ruin/abandonedzoo) +/area/ruin/unpowered) "bf" = ( /obj/machinery/power/smes/magical{ desc = "A high-capacity superconducting magnetic energy storage (SMES) unit."; @@ -521,21 +521,21 @@ /turf/open/floor/plasteel{ icon_state = "dark" }, -/area/ruin/abandonedzoo) +/area/ruin/unpowered) "bg" = ( /obj/structure/reagent_dispensers/watertank, /obj/machinery/light, /turf/open/floor/plasteel{ icon_state = "dark" }, -/area/ruin/abandonedzoo) +/area/ruin/unpowered) "bh" = ( /obj/machinery/disposal/bin, /obj/structure/disposalpipe/trunk, /turf/open/floor/plasteel{ icon_state = "dark" }, -/area/ruin/abandonedzoo) +/area/ruin/unpowered) "bi" = ( /obj/structure/table/reinforced, /obj/item/weapon/reagent_containers/hypospray/medipen/stimpack, @@ -543,7 +543,7 @@ /turf/open/floor/plasteel{ icon_state = "dark" }, -/area/ruin/abandonedzoo) +/area/ruin/unpowered) "bj" = ( /obj/structure/table/reinforced, /obj/item/weapon/surgicaldrill, @@ -557,33 +557,33 @@ /turf/open/floor/plasteel{ icon_state = "dark" }, -/area/ruin/abandonedzoo) +/area/ruin/unpowered) "bk" = ( /obj/structure/table/optable, /turf/open/floor/plasteel{ icon_state = "dark" }, -/area/ruin/abandonedzoo) +/area/ruin/unpowered) "bl" = ( /obj/machinery/computer/operating, /turf/open/floor/plasteel{ icon_state = "dark" }, -/area/ruin/abandonedzoo) +/area/ruin/unpowered) "bm" = ( /obj/structure/closet/wardrobe/science_white, /obj/structure/disposalpipe/segment, /turf/open/floor/plasteel{ icon_state = "dark" }, -/area/ruin/abandonedzoo) +/area/ruin/unpowered) "bn" = ( /obj/structure/table/reinforced, /obj/item/weapon/reagent_containers/food/snacks/carrotfries, /turf/open/floor/plasteel{ icon_state = "dark" }, -/area/ruin/abandonedzoo) +/area/ruin/unpowered) "bo" = ( /obj/machinery/shieldwallgen{ active = 2; @@ -609,7 +609,7 @@ icon_state = "1-4" }, /turf/open/floor/plating, -/area/ruin/abandonedzoo) +/area/ruin/unpowered) "bp" = ( /obj/structure/bed, /obj/item/weapon/bedsheet/green, @@ -617,7 +617,7 @@ /turf/open/floor/plasteel{ icon_state = "dark" }, -/area/ruin/abandonedzoo) +/area/ruin/unpowered) "bq" = ( /obj/item/stack/cable_coil/cut, /obj/item/stack/tile/plasteel{ @@ -626,7 +626,7 @@ }, /obj/item/weapon/wirecutters, /turf/open/floor/plating, -/area/ruin/abandonedzoo) +/area/ruin/unpowered) "br" = ( /obj/structure/table/reinforced, /obj/machinery/microwave, @@ -639,7 +639,7 @@ /turf/open/floor/plasteel{ icon_state = "dark" }, -/area/ruin/abandonedzoo) +/area/ruin/unpowered) "bs" = ( /obj/structure/cable{ d1 = 4; @@ -658,7 +658,7 @@ }, /obj/machinery/shieldwallgen, /turf/open/floor/plating, -/area/ruin/abandonedzoo) +/area/ruin/unpowered) "bt" = ( /obj/structure/cable{ d2 = 8; @@ -666,32 +666,32 @@ }, /obj/machinery/shieldwallgen, /turf/open/floor/plating/airless, -/area/ruin/abandonedzoo) +/area/ruin/unpowered) "bu" = ( /obj/structure/flora/ausbushes/sunnybush, /turf/open/floor/plating, -/area/ruin/abandonedzoo) +/area/ruin/unpowered) "bv" = ( /turf/open/floor/plating, -/area/ruin/abandonedzoo) +/area/ruin/unpowered) "bw" = ( /obj/machinery/light{ dir = 1 }, /mob/living/simple_animal/hostile/carp, /turf/open/floor/plating, -/area/ruin/abandonedzoo) +/area/ruin/unpowered) "bx" = ( /obj/structure/flora/ausbushes/palebush, /turf/open/floor/plating, -/area/ruin/abandonedzoo) +/area/ruin/unpowered) "by" = ( /obj/structure/disposalpipe/segment{ dir = 4; icon_state = "pipe-c" }, /turf/closed/wall/r_wall, -/area/ruin/abandonedzoo) +/area/ruin/unpowered) "bz" = ( /obj/machinery/space_heater, /obj/structure/disposalpipe/segment{ @@ -705,55 +705,58 @@ /turf/open/floor/plasteel{ icon_state = "dark" }, -/area/ruin/abandonedzoo) +/area/ruin/unpowered) "bA" = ( /obj/structure/table/reinforced, /obj/machinery/juicer, /turf/open/floor/plasteel{ icon_state = "dark" }, -/area/ruin/abandonedzoo) +/area/ruin/unpowered) "bB" = ( /obj/structure/alien/weeds, /turf/open/floor/plating/airless, -/area/ruin/abandonedzoo) +/area/ruin/unpowered) "bC" = ( /obj/structure/alien/weeds/node, /obj/machinery/light{ dir = 1 }, /turf/open/floor/plating/airless, -/area/ruin/abandonedzoo) +/area/ruin/unpowered) "bD" = ( -/obj/item/clothing/mask/facehugger/dead, +/obj/item/clothing/mask/facehugger{ + icon_state = "facehugger_dead"; + stat = 2 + }, /turf/open/floor/plating/airless, -/area/ruin/abandonedzoo) +/area/ruin/unpowered) "bE" = ( /obj/structure/flora/ausbushes/sparsegrass, /turf/open/floor/plating, -/area/ruin/abandonedzoo) +/area/ruin/unpowered) "bF" = ( /obj/structure/disposalpipe/segment, /turf/closed/wall/r_wall, -/area/ruin/abandonedzoo) +/area/ruin/unpowered) "bG" = ( /obj/machinery/door/airlock/external, /turf/open/floor/plasteel/darkgreen, -/area/ruin/abandonedzoo) +/area/ruin/unpowered) "bH" = ( /obj/structure/alien/resin/wall, /turf/open/floor/plating/airless, -/area/ruin/abandonedzoo) +/area/ruin/unpowered) "bI" = ( /obj/structure/flora/ausbushes/reedbush, /turf/open/floor/plating, -/area/ruin/abandonedzoo) +/area/ruin/unpowered) "bJ" = ( /mob/living/simple_animal/crab{ faction = list("carp") }, /turf/open/floor/plating, -/area/ruin/abandonedzoo) +/area/ruin/unpowered) "bK" = ( /obj/structure/disposalpipe/segment, /turf/open/floor/plating/airless, @@ -763,13 +766,13 @@ dir = 8 }, /turf/open/floor/plasteel/darkgreen, -/area/ruin/abandonedzoo) +/area/ruin/unpowered) "bM" = ( /obj/machinery/light/small{ dir = 4 }, /turf/open/floor/plasteel/darkgreen, -/area/ruin/abandonedzoo) +/area/ruin/unpowered) "bN" = ( /obj/structure/grille{ density = 0; @@ -779,11 +782,11 @@ icon_state = "small" }, /turf/open/floor/plating/airless, -/area/ruin/abandonedzoo) +/area/ruin/unpowered) "bO" = ( /obj/item/weapon/shard, /turf/open/floor/plating/airless, -/area/ruin/abandonedzoo) +/area/ruin/unpowered) "bP" = ( /obj/structure/lattice, /turf/open/space, @@ -802,7 +805,7 @@ }, /obj/structure/cable, /turf/open/floor/plating/airless, -/area/ruin/abandonedzoo) +/area/ruin/unpowered) "bR" = ( /obj/structure/disposalpipe/trunk{ dir = 1 @@ -819,21 +822,21 @@ /obj/structure/cable, /obj/machinery/shieldwallgen, /turf/open/floor/plating/airless, -/area/ruin/abandonedzoo) +/area/ruin/unpowered) "bT" = ( /obj/structure/grille, /obj/item/weapon/shard{ icon_state = "medium" }, /turf/open/floor/plating/airless, -/area/ruin/abandonedzoo) +/area/ruin/unpowered) "bU" = ( /obj/structure/grille{ density = 0; icon_state = "brokengrille" }, /turf/open/floor/plating/airless, -/area/ruin/abandonedzoo) +/area/ruin/unpowered) "bV" = ( /obj/machinery/shieldwallgen, /turf/open/space, @@ -844,7 +847,7 @@ /area/space) "bX" = ( /turf/open/floor/plating/airless, -/area/ruin/abandonedzoo) +/area/ruin/unpowered) (1,1,1) = {" aa diff --git a/_maps/RandomRuins/SpaceRuins/asteroid1.dmm b/_maps/RandomRuins/SpaceRuins/asteroid1.dmm index 7bc6c92e1b..aa1bbf3334 100644 --- a/_maps/RandomRuins/SpaceRuins/asteroid1.dmm +++ b/_maps/RandomRuins/SpaceRuins/asteroid1.dmm @@ -1,6 +1,6 @@ "a" = (/turf/open/space,/area/space) -"b" = (/turf/open/floor/plating/asteroid/airless,/area/ruin/unpowered/no_grav) -"c" = (/turf/closed/mineral/random/high_chance,/area/ruin/unpowered/no_grav) +"b" = (/turf/open/floor/plating/asteroid/airless,/area/space) +"c" = (/turf/closed/mineral/random/high_chance,/area/space) (1,1,1) = {" aaaaaaaaaaaaaaaaaaaa diff --git a/_maps/RandomRuins/SpaceRuins/asteroid2.dmm b/_maps/RandomRuins/SpaceRuins/asteroid2.dmm index c39e9f5896..c6fafdd759 100644 --- a/_maps/RandomRuins/SpaceRuins/asteroid2.dmm +++ b/_maps/RandomRuins/SpaceRuins/asteroid2.dmm @@ -1,7 +1,7 @@ "a" = (/turf/open/space,/area/space) -"b" = (/turf/open/floor/plating/asteroid/airless,/area/ruin/unpowered/no_grav) -"c" = (/turf/closed/mineral,/area/ruin/unpowered/no_grav) -"d" = (/turf/closed/mineral/random/high_chance,/area/ruin/unpowered/no_grav) +"b" = (/turf/open/floor/plating/asteroid/airless,/area/space) +"c" = (/turf/closed/mineral,/area/space) +"d" = (/turf/closed/mineral/random/high_chance,/area/space) (1,1,1) = {" aaaaaaaaaaaaaaaaaaaa diff --git a/_maps/RandomRuins/SpaceRuins/asteroid3.dmm b/_maps/RandomRuins/SpaceRuins/asteroid3.dmm index 982008462c..408231bc71 100644 --- a/_maps/RandomRuins/SpaceRuins/asteroid3.dmm +++ b/_maps/RandomRuins/SpaceRuins/asteroid3.dmm @@ -1,9 +1,9 @@ "a" = (/turf/open/space,/area/space) -"b" = (/turf/open/floor/plating/asteroid/airless,/area/ruin/unpowered/no_grav) -"c" = (/turf/closed/mineral,/area/ruin/unpowered/no_grav) -"d" = (/turf/closed/mineral/random/high_chance,/area/ruin/unpowered/no_grav) -"e" = (/obj/effect/decal/remains/human,/turf/open/floor/plating/asteroid/airless,/area/ruin/unpowered/no_grav) -"f" = (/obj/item/weapon/pickaxe/diamond,/turf/open/floor/plating/asteroid/airless,/area/ruin/unpowered/no_grav) +"b" = (/turf/open/floor/plating/asteroid/airless,/area/space) +"c" = (/turf/closed/mineral,/area/space) +"d" = (/turf/closed/mineral/random/high_chance,/area/space) +"e" = (/obj/effect/decal/remains/human,/turf/open/floor/plating/asteroid/airless,/area/space) +"f" = (/obj/item/weapon/pickaxe/diamond,/turf/open/floor/plating/asteroid/airless,/area/space) (1,1,1) = {" aaaaaaaaaaaaaaaaaaaa diff --git a/_maps/RandomRuins/SpaceRuins/asteroid4.dmm b/_maps/RandomRuins/SpaceRuins/asteroid4.dmm index 8129432219..0bc46ef7dc 100644 --- a/_maps/RandomRuins/SpaceRuins/asteroid4.dmm +++ b/_maps/RandomRuins/SpaceRuins/asteroid4.dmm @@ -1,39 +1,41 @@ "a" = (/turf/open/space,/area/space) -"b" = (/turf/closed/mineral,/area/ruin/unpowered/no_grav) -"c" = (/turf/closed/mineral/random/high_chance,/area/ruin/unpowered/no_grav) -"d" = (/turf/closed/mineral,/area/ruin/unpowered) -"e" = (/turf/open/floor/plating/asteroid/airless,/area/ruin/unpowered/no_grav) -"f" = (/turf/closed/mineral/random/high_chance,/area/ruin/unpowered) -"g" = (/turf/closed/mineral/clown,/area/ruin/unpowered) -"h" = (/turf/open/floor/plating/asteroid/airless,/area/ruin/unpowered) -"i" = (/turf/open/floor/plating/asteroid,/area/ruin/unpowered) -"j" = (/turf/open/floor/plating/asteroid,/turf/closed/wall/mineral/titanium,/area/ruin/unpowered) -"k" = (/turf/open/floor/plating,/obj/item/stack/sheet/mineral/bananium{amount = 15},/turf/closed/wall/mineral/titanium,/area/ruin/unpowered) -"l" = (/turf/closed/wall/mineral/titanium,/area/ruin/unpowered) -"m" = (/obj/structure/chair{dir = 1},/obj/item/weapon/shard,/obj/effect/mob_spawn/human/clown{brute_damage = 120; oxy_damage = 75},/obj/item/weapon/paper{info = "Extraction was successful! The disguise was perfect, the clowns never knew what hit 'em! Once I get back to base with the bananium samples I'll be rich, I tell you! RICH!"},/obj/item/stack/sheet/mineral/bananium{amount = 15},/turf/open/floor/mineral/titanium/blue,/area/ruin/unpowered) -"n" = (/obj/structure/chair{dir = 1},/obj/item/weapon/storage/pod{pixel_x = -26},/turf/open/floor/mineral/titanium/blue,/area/ruin/unpowered) -"o" = (/obj/structure/shuttle/engine/propulsion/burst,/turf/closed/wall/mineral/titanium/overspace,/area/ruin/unpowered) -"p" = (/obj/machinery/door/airlock/titanium{name = "Escape Pod Airlock"},/turf/open/floor/mineral/titanium/blue,/area/ruin/unpowered) +"b" = (/turf/closed/mineral,/area/space) +"c" = (/turf/closed/mineral/random/high_chance,/area/space) +"d" = (/turf/open/floor/plating/asteroid/airless,/area/space) +"e" = (/turf/closed/mineral/clown,/area/ruin/unpowered) +"f" = (/turf/open/floor/plating/asteroid,/area/ruin/unpowered) +"g" = (/obj/item/weapon/shard,/obj/item/weapon/paper{info = "Extraction was successful! The disguise was perfect, the clowns never knew what hit 'em! Once I get back to base with the bananium samples I'll be rich, I tell you! RICH!"},/turf/open/floor/plating/asteroid,/area/ruin/unpowered) +"h" = (/obj/item/stack/sheet/mineral/bananium{amount = 15},/turf/open/floor/plating,/area/ruin/unpowered) +"i" = (/turf/open/floor/plating/asteroid,/turf/closed/wall/shuttle{dir = 2;icon_state = "swall_f10";layer = 2},/area/ruin/unpowered) +"j" = (/turf/closed/wall/shuttle{icon_state = "swall3";dir = 2},/area/ruin/unpowered) +"k" = (/obj/structure/chair{dir = 1},/obj/item/weapon/shard,/obj/effect/mob_spawn/human/clown{brute_damage = 120;oxy_damage = 75},/turf/open/floor/plasteel/shuttle,/area/ruin/unpowered) +"l" = (/obj/structure/chair{dir = 1},/obj/item/weapon/storage/pod{pixel_x = -26},/turf/open/floor/plasteel/shuttle,/area/ruin/unpowered) +"m" = (/turf/open/floor/plating,/obj/structure/shuttle/engine/propulsion/burst,/turf/closed/wall/shuttle{icon_state = "swall_f5";dir = 2},/area/ruin/unpowered) +"n" = (/obj/machinery/door/airlock/shuttle{name = "Escape Pod Airlock"},/turf/open/floor/plasteel/shuttle,/area/ruin/unpowered) +"o" = (/turf/open/floor/plating,/obj/structure/shuttle/engine/propulsion/burst,/turf/closed/wall/shuttle{icon_state = "swall_f9";dir = 2},/area/ruin/unpowered) +"p" = (/turf/closed/mineral,/area/ruin/unpowered) +"q" = (/turf/closed/mineral/random/high_chance,/area/ruin/unpowered) +"r" = (/turf/open/floor/plating/asteroid/airless,/area/ruin/unpowered) (1,1,1) = {" aaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaa aabbbaaaaaaaaaaaaaaa acccbbbbaaaaaaaaaaaa -acccbbcbbbaaaaaadaaa -abbbbbbbbbbaaaaddaaa -abeebbbbbbcaaaadddaa -aaeeebbbbbcaaaaddaaa -aaaeeeeebaaaaadddaaa -aaaaaeeebaaaaaddaaaa -aaaaaaaaaaaaaaddaaaa -aaaaaaaaaaaaffddaaaa -aaabaaaaaaddffdaaaaa -aaabaaaaadddgddaaaaa -aabbbaaahddggidfaaaa -aabbbaaahhdjkjdfaaaa -abbbbaaahhdlmlddaaaa -abbaaaaaaadlnldaaaaa -aaaaabaaaaaopoaaaaaa +acccbbcbbbaaaaaapaaa +abbbbbbbbbbaaaappaaa +abddbbbbbbcaaaapppaa +aadddbbbbbcaaaappaaa +aaadddddbaaaaapppaaa +aaaaadddbaaaaappaaaa +aaaaaaaaaaaaaappaaaa +aaaaaaaaaaaaqqppaaaa +aaabaaaaaappqqpaaaaa +aaabaaaaapppeppaaaaa +aabbbaaarppeefpqaaaa +aabbbaaarrpghipqaaaa +abbbbaaarrpjkjppaaaa +abbaaaaaaapjljpaaaaa +aaaaabaaaaamnoaaaaaa aaabaaaaaaaaaaaaaaaa "} diff --git a/_maps/RandomRuins/SpaceRuins/bigderelict1.dmm b/_maps/RandomRuins/SpaceRuins/bigderelict1.dmm deleted file mode 100644 index e5abb0af59..0000000000 --- a/_maps/RandomRuins/SpaceRuins/bigderelict1.dmm +++ /dev/null @@ -1,289 +0,0 @@ -"aa" = (/turf/open/space,/area/space) -"ab" = (/turf/closed/wall,/area/ruin/derelictoutpost/cargobay) -"ac" = (/obj/machinery/door/poddoor{id = "bigderelictshipdock"},/turf/open/floor/plating/airless,/area/ruin/derelictoutpost/cargobay) -"ad" = (/turf/open/floor/plating/asteroid/airless,/area/ruin/unpowered/no_grav) -"ae" = (/turf/open/floor/plating,/area/ruin/derelictoutpost/cargobay) -"af" = (/obj/structure/sign/vacuum{pixel_y = 32},/obj/effect/decal/cleanable/cobweb,/turf/open/floor/plasteel,/area/ruin/derelictoutpost/cargobay) -"ag" = (/obj/machinery/door/poddoor{id = "bigderelictshipdock"},/turf/open/floor/plating,/area/ruin/derelictoutpost/cargobay) -"ah" = (/obj/structure/sign/vacuum{pixel_y = 32},/turf/open/floor/plasteel,/area/ruin/derelictoutpost/cargobay) -"ai" = (/obj/structure/reagent_dispensers/fueltank,/turf/open/floor/plasteel,/area/ruin/derelictoutpost/cargobay) -"aj" = (/obj/machinery/button/door{name = "tradepost entry doors"; pixel_y = 24},/turf/open/floor/plasteel,/area/ruin/derelictoutpost/cargobay) -"ak" = (/turf/open/floor/plasteel,/area/ruin/derelictoutpost/cargobay) -"al" = (/obj/structure/reagent_dispensers/watertank,/turf/open/floor/plasteel,/area/ruin/derelictoutpost/cargobay) -"am" = (/turf/open/floor/engine,/area/ruin/derelictoutpost/cargobay) -"an" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/floor/plasteel,/area/ruin/derelictoutpost/cargobay) -"ao" = (/obj/machinery/power/apc{cell_type = 0; dir = 4; name = "Cargo Bay APC"; pixel_x = 24; pixel_y = 0},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/open/floor/plasteel,/area/ruin/derelictoutpost/cargobay) -"ap" = (/obj/structure/table,/obj/machinery/light{dir = 8},/obj/item/weapon/reagent_containers/glass/bucket,/turf/open/floor/plasteel,/area/ruin/derelictoutpost/cargobay) -"aq" = (/turf/open/floor/engine,/turf/closed/wall/mineral/titanium/interior,/area/ruin/derelictoutpost/dockedship) -"ar" = (/obj/structure/shuttle/engine/propulsion/burst/right{dir = 1; icon_state = "burst_r"; name = "shuttle engine"; tag = "icon-burst_r (NORTH)"},/turf/open/floor/plating,/area/ruin/derelictoutpost/dockedship) -"as" = (/obj/structure/shuttle/engine/propulsion/burst/left{dir = 1; icon_state = "burst_l"; name = "shuttle engine"; tag = "icon-burst_l (NORTH)"},/turf/open/floor/plating,/area/ruin/derelictoutpost/dockedship) -"at" = (/turf/closed/wall/mineral/titanium,/area/ruin/derelictoutpost/dockedship) -"au" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plasteel,/area/ruin/derelictoutpost/cargobay) -"av" = (/obj/structure/table,/obj/machinery/light{icon_state = "tube1"; dir = 4},/turf/open/floor/plasteel,/area/ruin/derelictoutpost/cargobay) -"aw" = (/obj/structure/table,/turf/open/floor/plasteel,/area/ruin/derelictoutpost/cargobay) -"ax" = (/obj/structure/window/reinforced{tag = "icon-rwindow (NORTH)"; icon_state = "rwindow"; dir = 1},/obj/structure/window/reinforced{tag = "icon-rwindow (WEST)"; icon_state = "rwindow"; dir = 8},/obj/structure/shuttle/engine/heater{tag = "icon-heater (NORTH)"; icon_state = "heater"; dir = 1},/turf/open/floor/mineral/titanium/yellow,/area/ruin/derelictoutpost/dockedship) -"ay" = (/obj/structure/window/reinforced{tag = "icon-rwindow (NORTH)"; icon_state = "rwindow"; dir = 1},/obj/structure/window/reinforced{tag = "icon-rwindow (EAST)"; icon_state = "rwindow"; dir = 4},/obj/structure/shuttle/engine/heater{tag = "icon-heater (NORTH)"; icon_state = "heater"; dir = 1},/turf/open/floor/mineral/titanium/yellow,/area/ruin/derelictoutpost/dockedship) -"az" = (/obj/structure/table,/obj/item/clothing/head/soft,/turf/open/floor/plasteel,/area/ruin/derelictoutpost/cargobay) -"aA" = (/turf/closed/wall,/area/ruin/derelictoutpost/powerstorage) -"aB" = (/obj/machinery/door/airlock/external,/turf/open/floor/plating,/area/ruin/derelictoutpost/powerstorage) -"aC" = (/turf/closed/mineral,/area/ruin/unpowered/no_grav) -"aD" = (/obj/machinery/door/poddoor{id = "bigderelictship"},/turf/open/floor/mineral/titanium/yellow,/area/ruin/derelictoutpost/dockedship) -"aE" = (/obj/structure/closet/crate/medical,/obj/item/weapon/storage/firstaid/o2,/turf/open/floor/mineral/titanium/yellow,/area/ruin/derelictoutpost/dockedship) -"aF" = (/obj/structure/closet/crate/medical,/obj/item/weapon/storage/firstaid/regular,/turf/open/floor/mineral/titanium/yellow,/area/ruin/derelictoutpost/dockedship) -"aG" = (/obj/structure/closet/crate/medical,/obj/item/weapon/storage/firstaid/brute,/turf/open/floor/mineral/titanium/yellow,/area/ruin/derelictoutpost/dockedship) -"aH" = (/obj/structure/closet/crate/engineering,/obj/item/weapon/storage/toolbox/mechanical,/turf/open/floor/mineral/titanium/yellow,/area/ruin/derelictoutpost/dockedship) -"aI" = (/obj/structure/closet/crate/engineering/electrical,/obj/item/weapon/storage/toolbox/electrical,/obj/item/weapon/stock_parts/cell/hyper,/obj/item/weapon/stock_parts/cell/high,/turf/open/floor/mineral/titanium/yellow,/area/ruin/derelictoutpost/dockedship) -"aJ" = (/obj/structure/table,/obj/item/clothing/gloves/fingerless,/turf/open/floor/plasteel,/area/ruin/derelictoutpost/cargobay) -"aK" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/ruin/derelictoutpost) -"aL" = (/obj/machinery/door/airlock/external,/turf/open/floor/plating,/area/ruin/derelictoutpost) -"aM" = (/turf/open/floor/plating,/area/ruin/derelictoutpost/powerstorage) -"aN" = (/obj/structure/closet/crate{icon_state = "crateopen"; opened = 1},/turf/open/floor/plasteel/delivery,/area/ruin/derelictoutpost/cargobay) -"aO" = (/obj/structure/closet/crate/secure/loot,/turf/open/floor/mineral/titanium/yellow,/area/ruin/derelictoutpost/dockedship) -"aP" = (/obj/structure/closet/crate/internals,/obj/item/weapon/storage/toolbox/emergency,/obj/item/clothing/mask/breath,/obj/item/weapon/tank/internals/emergency_oxygen/engi,/obj/item/weapon/tank/internals/emergency_oxygen/engi,/obj/item/clothing/mask/breath,/turf/open/floor/mineral/titanium/yellow,/area/ruin/derelictoutpost/dockedship) -"aQ" = (/obj/structure/closet/crate/radiation,/obj/item/clothing/head/radiation,/obj/item/clothing/suit/radiation,/obj/item/device/geiger_counter,/turf/open/floor/mineral/titanium/yellow,/area/ruin/derelictoutpost/dockedship) -"aR" = (/turf/open/floor/plating,/area/ruin/derelictoutpost) -"aS" = (/turf/closed/wall/r_wall,/area/ruin/derelictoutpost/powerstorage) -"aT" = (/obj/structure/extinguisher_cabinet{pixel_x = -24},/turf/open/floor/plasteel/delivery,/area/ruin/derelictoutpost/cargobay) -"aU" = (/obj/structure/closet/crate/critter{name = "critter crate - mr.tiggles"; opened = 1},/obj/item/weapon/paper/crumpled/snowdin{info = "A crumpled piece of manifest paper, out of the barely legible pen writing, you can see something about a warning involving whatever was originally in the crate."},/obj/structure/alien/weeds{color = "#4BAE56"; desc = "A thick gelatinous surface covers the floor. Someone get the golashes."; name = "gelatinous floor"},/turf/open/floor/plasteel/shuttle/yellow,/area/ruin/derelictoutpost/dockedship) -"aV" = (/obj/structure/closet/crate/engineering,/obj/item/weapon/storage/toolbox/mechanical,/obj/structure/alien/weeds{color = "#4BAE56"; desc = "A thick gelatinous surface covers the floor. Someone get the golashes."; name = "gelatinous floor"},/turf/open/floor/plasteel/shuttle/yellow,/area/ruin/derelictoutpost/dockedship) -"aW" = (/obj/structure/closet/crate/engineering/electrical,/obj/item/weapon/storage/toolbox/electrical,/obj/item/weapon/stock_parts/cell/hyper,/turf/open/floor/mineral/titanium/yellow,/area/ruin/derelictoutpost/dockedship) -"aX" = (/obj/structure/closet/crate,/turf/open/floor/plasteel/delivery,/area/ruin/derelictoutpost/cargobay) -"aY" = (/obj/structure/lattice,/turf/open/space,/area/space) -"aZ" = (/turf/closed/wall,/area/ruin/derelictoutpost) -"ba" = (/obj/item/clothing/head/helmet,/turf/open/floor/plasteel,/area/ruin/derelictoutpost/powerstorage) -"bb" = (/obj/machinery/power/smes,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/open/floor/plasteel,/area/ruin/derelictoutpost/powerstorage) -"bc" = (/obj/structure/table,/obj/item/weapon/stock_parts/cell/hyper,/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/floor/plasteel,/area/ruin/derelictoutpost/powerstorage) -"bd" = (/obj/machinery/power/smes,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/open/floor/plasteel,/area/ruin/derelictoutpost/powerstorage) -"be" = (/obj/structure/alien/weeds{color = "#4BAE56"; desc = "A thick gelatinous surface covers the floor. Someone get the golashes."; name = "gelatinous floor"},/turf/open/floor/plasteel/shuttle,/area/ruin/derelictoutpost/dockedship) -"bf" = (/obj/effect/decal/cleanable/blood/old,/turf/open/floor/mineral/titanium/blue,/area/ruin/derelictoutpost/dockedship) -"bg" = (/obj/structure/alien/weeds{color = "#4BAE56"; desc = "A thick gelatinous surface covers the floor. Someone get the golashes."; name = "gelatinous floor"},/obj/structure/glowshroom/single,/turf/open/floor/plasteel/shuttle,/area/ruin/derelictoutpost/dockedship) -"bh" = (/obj/machinery/button/door{id = "bigderelictship"; name = "shuttle cargo doors"; pixel_x = 24},/obj/structure/alien/weeds{color = "#4BAE56"; desc = "A thick gelatinous surface covers the floor. Someone get the golashes."; name = "gelatinous floor"},/turf/open/floor/plasteel/shuttle,/area/ruin/derelictoutpost/dockedship) -"bi" = (/obj/effect/decal/cleanable/cobweb,/obj/structure/alien/weeds{color = "#4BAE56"; desc = "A thick gelatinous surface covers the floor. Someone get the golashes."; name = "gelatinous floor"},/turf/open/floor/plasteel,/area/ruin/derelictoutpost) -"bj" = (/turf/open/floor/plasteel,/area/ruin/derelictoutpost) -"bk" = (/obj/structure/sign/vacuum{pixel_y = 32},/turf/open/floor/plasteel,/area/ruin/derelictoutpost) -"bl" = (/obj/structure/alien/weeds{color = "#4BAE56"; desc = "A thick gelatinous surface covers the floor. Someone get the golashes."; name = "gelatinous floor"},/turf/open/floor/plasteel,/area/ruin/derelictoutpost) -"bm" = (/obj/structure/alien/weeds{color = "#4BAE56"; desc = "A thick gelatinous surface covers the floor. Someone get the golashes."; name = "gelatinous floor"},/obj/effect/decal/cleanable/blood/old{tag = "icon-trails_1 (NORTHWEST)"; name = "dried blood trail"; icon_state = "trails_1"; dir = 9},/turf/open/floor/plasteel,/area/ruin/derelictoutpost) -"bn" = (/obj/structure/alien/weeds{color = "#4BAE56"; desc = "A thick gelatinous surface covers the floor. Someone get the golashes."; name = "gelatinous floor"},/obj/effect/decal/cleanable/blood/old{tag = "icon-trails_1 (EAST)"; name = "dried blood trail"; icon_state = "trails_1"; dir = 4},/turf/open/floor/plasteel,/area/ruin/derelictoutpost) -"bo" = (/obj/structure/alien/weeds{color = "#4BAE56"; desc = "A thick gelatinous surface covers the floor. Someone get the golashes."; name = "gelatinous floor"},/obj/structure/glowshroom/single,/obj/structure/sign/vacuum{pixel_y = 32},/obj/effect/decal/cleanable/blood/old{tag = "icon-trails_1 (EAST)"; name = "dried blood trail"; icon_state = "trails_1"; dir = 4},/turf/open/floor/plasteel,/area/ruin/derelictoutpost) -"bp" = (/obj/structure/alien/weeds{color = "#4BAE56"; desc = "A thick gelatinous surface covers the floor. Someone get the golashes."; name = "gelatinous floor"},/obj/effect/decal/cleanable/blood/old{tag = "icon-trails_1 (NORTHEAST)"; name = "dried blood trail"; icon_state = "trails_1"; dir = 5},/turf/open/floor/plasteel,/area/ruin/derelictoutpost) -"bq" = (/obj/effect/mob_spawn/human/corpse/nanotrasensoldier{helmet = null; id_job = "Tradepost Officer"; name = "Tradeport Officer"; random = 1},/obj/item/weapon/paper/crumpled/snowdin{icon_state = "scrap_bloodied"; info = "If anyone finds this, please, don't let my kids know I died a coward.."},/obj/effect/decal/cleanable/blood/old{name = "dried blood splatter"; pixel_x = -29},/turf/open/floor/plasteel,/area/ruin/derelictoutpost/powerstorage) -"br" = (/obj/machinery/power/terminal{icon_state = "term"; dir = 1},/turf/open/floor/plasteel,/area/ruin/derelictoutpost/powerstorage) -"bs" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plasteel,/area/ruin/derelictoutpost/powerstorage) -"bt" = (/obj/machinery/door/airlock/titanium,/turf/open/floor/mineral/titanium/blue,/area/ruin/derelictoutpost/dockedship) -"bu" = (/turf/open/floor/mineral/titanium/blue,/area/ruin/derelictoutpost/dockedship) -"bv" = (/obj/item/chair,/obj/effect/decal/cleanable/blood/old,/obj/structure/alien/weeds{color = "#4BAE56"; desc = "A thick gelatinous surface covers the floor. Someone get the golashes."; name = "gelatinous floor"},/turf/open/floor/plasteel/shuttle,/area/ruin/derelictoutpost/dockedship) -"bw" = (/obj/effect/decal/cleanable/blood/old{tag = "icon-trails_1 (NORTHEAST)"; name = "dried blood trail"; icon_state = "trails_1"; dir = 5},/obj/structure/alien/weeds{color = "#4BAE56"; desc = "A thick gelatinous surface covers the floor. Someone get the golashes."; name = "gelatinous floor"},/turf/open/floor/plasteel/shuttle,/area/ruin/derelictoutpost/dockedship) -"bx" = (/obj/structure/alien/weeds{color = "#4BAE56"; desc = "A thick gelatinous surface covers the floor. Someone get the golashes."; name = "gelatinous floor"},/turf/open/floor/plasteel,/area/ruin/derelictoutpost/cargobay) -"by" = (/obj/machinery/door/airlock/glass_security{id_tag = "innerbrig"; name = "Security Checkpoint"; req_access_txt = "63"},/turf/open/floor/plasteel/darkred,/area/ruin/derelictoutpost) -"bz" = (/turf/open/floor/plasteel/darkred,/area/ruin/derelictoutpost) -"bA" = (/obj/structure/alien/weeds{color = "#4BAE56"; desc = "A thick gelatinous surface covers the floor. Someone get the golashes."; name = "gelatinous floor"},/turf/open/floor/plasteel/darkred,/area/ruin/derelictoutpost) -"bB" = (/obj/effect/decal/cleanable/cobweb{icon_state = "cobweb2"},/obj/structure/table,/obj/machinery/recharger,/turf/open/floor/plasteel/darkred,/area/ruin/derelictoutpost) -"bC" = (/turf/closed/wall/r_wall,/area/ruin/derelictoutpost) -"bD" = (/obj/machinery/light{dir = 8},/turf/open/floor/plasteel,/area/ruin/derelictoutpost) -"bE" = (/obj/effect/decal/cleanable/blood/old{icon_state = "trails_1"; name = "dried blood trail"},/turf/open/floor/plasteel,/area/ruin/derelictoutpost) -"bF" = (/obj/structure/alien/resin/wall{color = "#8EC127"; desc = "Thick material shaped into a wall. Eugh."; icon_state = "smooth"; name = "gelatinous wall"},/turf/open/floor/plasteel,/area/ruin/derelictoutpost) -"bG" = (/obj/structure/alien/weeds{color = "#4BAE56"; desc = "A thick gelatinous surface covers the floor. Someone get the golashes."; name = "gelatinous floor"},/obj/effect/decal/cleanable/blood/old,/obj/effect/decal/cleanable/blood/old{tag = "icon-trails_1 (NORTH)"; name = "dried blood trail"; icon_state = "trails_1"; dir = 1},/turf/open/floor/plasteel,/area/ruin/derelictoutpost) -"bH" = (/obj/item/ammo_casing/c45{caliber = null; desc = "A .45 bullet casing. This one is spent."; icon_state = "s-casing"; name = "spent bullet casing"},/obj/machinery/light{dir = 8},/turf/open/floor/plasteel,/area/ruin/derelictoutpost/powerstorage) -"bI" = (/obj/item/weapon/gun/ballistic/automatic/pistol/m1911{spawnwithmagazine = 0},/turf/open/floor/plasteel,/area/ruin/derelictoutpost/powerstorage) -"bJ" = (/turf/open/floor/plasteel,/area/ruin/derelictoutpost/powerstorage) -"bK" = (/obj/structure/table,/obj/machinery/light{dir = 8},/turf/open/floor/plasteel,/area/ruin/derelictoutpost/cargobay) -"bL" = (/obj/structure/table,/turf/open/floor/mineral/titanium/blue,/area/ruin/derelictoutpost/dockedship) -"bM" = (/obj/machinery/computer,/turf/open/floor/mineral/titanium/blue,/area/ruin/derelictoutpost/dockedship) -"bN" = (/obj/structure/table_frame,/obj/item/stack/sheet/metal,/obj/effect/decal/cleanable/blood/old{icon_state = "trails_1"; name = "dried blood trail"},/obj/structure/alien/weeds{color = "#4BAE56"; desc = "A thick gelatinous surface covers the floor. Someone get the golashes."; name = "gelatinous floor"},/turf/open/floor/plasteel/shuttle,/area/ruin/derelictoutpost/dockedship) -"bO" = (/obj/item/weapon/shard,/obj/structure/alien/weeds{color = "#4BAE56"; desc = "A thick gelatinous surface covers the floor. Someone get the golashes."; name = "gelatinous floor"},/turf/open/floor/plasteel/shuttle,/area/ruin/derelictoutpost/dockedship) -"bP" = (/obj/effect/gibspawner/human,/obj/structure/alien/weeds{color = "#4BAE56"; desc = "A thick gelatinous surface covers the floor. Someone get the golashes."; name = "gelatinous floor"},/turf/open/floor/plasteel,/area/ruin/derelictoutpost/cargobay) -"bQ" = (/obj/structure/filingcabinet,/obj/machinery/light{dir = 8},/turf/open/floor/plasteel/darkred,/area/ruin/derelictoutpost) -"bR" = (/obj/item/weapon/shard,/obj/structure/alien/weeds{color = "#4BAE56"; desc = "A thick gelatinous surface covers the floor. Someone get the golashes."; name = "gelatinous floor"},/turf/open/floor/plasteel/darkred,/area/ruin/derelictoutpost) -"bS" = (/obj/item/chair,/obj/structure/alien/weeds{color = "#4BAE56"; desc = "A thick gelatinous surface covers the floor. Someone get the golashes."; name = "gelatinous floor"},/turf/open/floor/plasteel/darkred,/area/ruin/derelictoutpost) -"bT" = (/obj/effect/decal/cleanable/blood/old,/obj/machinery/button/door{id = "bigderelictcheckpoint"; name = "security checkpoint control"; pixel_y = -24},/obj/structure/alien/weeds{color = "#4BAE56"; desc = "A thick gelatinous surface covers the floor. Someone get the golashes."; name = "gelatinous floor"},/turf/open/floor/plasteel/darkred,/area/ruin/derelictoutpost) -"bU" = (/obj/effect/decal/cleanable/blood/old{tag = "icon-trails_1 (EAST)"; name = "dried blood trail"; icon_state = "trails_1"; dir = 4},/turf/open/floor/plating{icon_plating = "wall_thermite"; icon_state = "wall_thermite"; name = "melted wall"},/area/ruin/derelictoutpost) -"bV" = (/obj/effect/decal/cleanable/blood/old{tag = "icon-trails_1 (EAST)"; name = "dried blood trail"; icon_state = "trails_1"; dir = 4},/turf/open/floor/plasteel,/area/ruin/derelictoutpost) -"bW" = (/obj/effect/decal/cleanable/blood/old{tag = "icon-trails_1 (SOUTHEAST)"; name = "dried blood trail"; icon_state = "trails_1"; dir = 6},/turf/open/floor/plasteel,/area/ruin/derelictoutpost) -"bX" = (/obj/structure/alien/weeds{color = "#4BAE56"; desc = "A thick gelatinous surface covers the floor. Someone get the golashes."; name = "gelatinous floor"},/obj/effect/decal/cleanable/blood/old{tag = "icon-trails_1 (NORTH)"; name = "dried blood trail"; icon_state = "trails_1"; dir = 1},/obj/machinery/light{icon_state = "tube1"; dir = 4},/turf/open/floor/plasteel,/area/ruin/derelictoutpost) -"bY" = (/obj/item/device/gps{gpstag = "Distress Signal"},/turf/open/floor/plasteel,/area/ruin/derelictoutpost/powerstorage) -"bZ" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/turf/open/floor/plasteel,/area/ruin/derelictoutpost/powerstorage) -"ca" = (/obj/machinery/power/apc{cell_type = 0; dir = 4; name = "Power Storage APC"; pixel_x = 23; pixel_y = 2},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/open/floor/plasteel,/area/ruin/derelictoutpost/powerstorage) -"cb" = (/obj/structure/closet/wardrobe/cargotech,/turf/open/floor/plasteel,/area/ruin/derelictoutpost/cargobay) -"cc" = (/obj/structure/grille,/obj/structure/window/shuttle,/turf/open/floor/plating,/area/ruin/derelictoutpost/dockedship) -"cd" = (/obj/structure/grille/broken,/obj/item/weapon/shard,/obj/effect/decal/cleanable/blood/old{icon_state = "trails_1"; name = "dried blood trail"},/obj/structure/alien/weeds{color = "#4BAE56"; desc = "A thick gelatinous surface covers the floor. Someone get the golashes."; name = "gelatinous floor"},/turf/open/floor/plating,/area/ruin/derelictoutpost/dockedship) -"ce" = (/obj/structure/alien/weeds{color = "#4BAE56"; desc = "A thick gelatinous surface covers the floor. Someone get the golashes."; name = "gelatinous floor"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plasteel,/area/ruin/derelictoutpost/cargobay) -"cf" = (/obj/structure/table/reinforced,/obj/structure/window/reinforced{tag = "icon-rwindow (NORTH)"; icon_state = "rwindow"; dir = 1},/turf/open/floor/plasteel/darkred,/area/ruin/derelictoutpost) -"cg" = (/obj/item/weapon/shard,/obj/item/stack/cable_coil{amount = 2; icon_state = "coil_red2"; item_state = "coil_red"},/obj/structure/alien/weeds{color = "#4BAE56"; desc = "A thick gelatinous surface covers the floor. Someone get the golashes."; name = "gelatinous floor"},/obj/structure/table_frame,/obj/item/stack/sheet/metal,/obj/item/stack/sheet/plasteel,/turf/open/floor/plasteel/darkred,/area/ruin/derelictoutpost) -"ch" = (/obj/structure/extinguisher_cabinet{pixel_x = -24},/turf/open/floor/plasteel,/area/ruin/derelictoutpost) -"ci" = (/obj/structure/alien/weeds{color = "#4BAE56"; desc = "A thick gelatinous surface covers the floor. Someone get the golashes."; name = "gelatinous floor"},/obj/structure/glowshroom/single,/turf/open/floor/plasteel,/area/ruin/derelictoutpost) -"cj" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/floor/plasteel,/area/ruin/derelictoutpost) -"ck" = (/obj/machinery/power/apc{cell_type = 0; dir = 2; name = "Tradepost APC"; pixel_x = 0; pixel_y = -24},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/open/floor/plasteel,/area/ruin/derelictoutpost) -"cl" = (/obj/structure/alien/weeds{color = "#4BAE56"; desc = "A thick gelatinous surface covers the floor. Someone get the golashes."; name = "gelatinous floor"},/obj/structure/glowshroom/single,/obj/effect/decal/cleanable/blood/old{tag = "icon-trails_1 (NORTH)"; name = "dried blood trail"; icon_state = "trails_1"; dir = 1},/turf/open/floor/plasteel,/area/ruin/derelictoutpost) -"cm" = (/obj/structure/alien/resin/wall{color = "#8EC127"; desc = "Thick material shaped into a wall. Eugh."; icon_state = "smooth"; name = "gelatinous wall"},/turf/open/floor/plating/asteroid,/area/ruin/derelictoutpost) -"cn" = (/obj/structure/table,/obj/item/weapon/storage/toolbox/electrical,/obj/item/stack/cable_coil,/turf/open/floor/plasteel,/area/ruin/derelictoutpost/powerstorage) -"co" = (/obj/structure/table,/obj/item/weapon/storage/toolbox/mechanical,/turf/open/floor/plasteel,/area/ruin/derelictoutpost/powerstorage) -"cp" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/turf/open/floor/plasteel,/area/ruin/derelictoutpost/powerstorage) -"cq" = (/obj/structure/barricade/wooden,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/open/floor/plasteel,/area/ruin/derelictoutpost/powerstorage) -"cr" = (/obj/machinery/door/airlock/engineering{name = "Power Storage"; req_access_txt = "10"},/obj/structure/barricade/wooden,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/open/floor/plasteel,/area/ruin/derelictoutpost/powerstorage) -"cs" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/open/floor/plasteel,/area/ruin/derelictoutpost/cargobay) -"ct" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/open/floor/plasteel,/area/ruin/derelictoutpost/cargobay) -"cu" = (/obj/effect/decal/cleanable/blood/old{icon_state = "trails_1"; name = "dried blood trail"},/obj/structure/alien/weeds{color = "#4BAE56"; desc = "A thick gelatinous surface covers the floor. Someone get the golashes."; name = "gelatinous floor"},/turf/open/floor/plating,/area/ruin/derelictoutpost/cargobay) -"cv" = (/obj/structure/alien/weeds{color = "#4BAE56"; desc = "A thick gelatinous surface covers the floor. Someone get the golashes."; name = "gelatinous floor"},/turf/open/floor/plating,/area/ruin/derelictoutpost/cargobay) -"cw" = (/obj/structure/alien/weeds{color = "#4BAE56"; desc = "A thick gelatinous surface covers the floor. Someone get the golashes."; name = "gelatinous floor"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/floor/plasteel,/area/ruin/derelictoutpost/cargobay) -"cx" = (/obj/structure/alien/weeds{color = "#4BAE56"; desc = "A thick gelatinous surface covers the floor. Someone get the golashes."; name = "gelatinous floor"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/open/floor/plasteel,/area/ruin/derelictoutpost/cargobay) -"cy" = (/obj/machinery/door/airlock/glass,/obj/machinery/door/poddoor{id = "bigderelictcheckpoint"; name = "checkpoint security doors"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/machinery/door/firedoor,/turf/open/floor/plasteel,/area/ruin/derelictoutpost) -"cz" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/open/floor/plasteel,/area/ruin/derelictoutpost) -"cA" = (/obj/structure/alien/weeds{color = "#4BAE56"; desc = "A thick gelatinous surface covers the floor. Someone get the golashes."; name = "gelatinous floor"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/open/floor/plasteel,/area/ruin/derelictoutpost) -"cB" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/open/floor/plasteel,/area/ruin/derelictoutpost) -"cC" = (/obj/structure/alien/weeds{color = "#4BAE56"; desc = "A thick gelatinous surface covers the floor. Someone get the golashes."; name = "gelatinous floor"},/mob/living/simple_animal/hostile/creature{desc = "Awh its so sm-OH GOD WHAT THE FUCK."; health = 25; maxHealth = 25; name = "hatchling"; resize = 0.85},/turf/open/floor/plasteel,/area/ruin/derelictoutpost) -"cD" = (/obj/structure/alien/weeds{color = "#4BAE56"; desc = "A thick gelatinous surface covers the floor. Someone get the golashes."; name = "gelatinous floor"},/obj/effect/decal/cleanable/blood/old{tag = "icon-trails_1 (SOUTHWEST)"; name = "dried blood trail"; icon_state = "trails_1"; dir = 10},/mob/living/simple_animal/hostile/creature{desc = "Awh its so sm-OH GOD WHAT THE FUCK."; health = 25; maxHealth = 25; name = "hatchling"; resize = 0.85},/turf/open/floor/plasteel,/area/ruin/derelictoutpost) -"cE" = (/obj/structure/alien/weeds{color = "#4BAE56"; desc = "A thick gelatinous surface covers the floor. Someone get the golashes."; name = "gelatinous floor"},/obj/effect/decal/cleanable/blood/old{tag = "icon-trails_1 (EAST)"; name = "dried blood trail"; icon_state = "trails_1"; dir = 4},/turf/open/floor/plating/asteroid,/area/ruin/derelictoutpost) -"cF" = (/obj/structure/alien/weeds{color = "#4BAE56"; desc = "A thick gelatinous surface covers the floor. Someone get the golashes."; name = "gelatinous floor"},/obj/effect/decal/cleanable/blood/old{tag = "icon-trails_1 (NORTHEAST)"; name = "dried blood trail"; icon_state = "trails_1"; dir = 5},/turf/open/floor/plating/asteroid,/area/ruin/derelictoutpost) -"cG" = (/obj/machinery/firealarm{dir = 8; pixel_x = -24},/turf/open/floor/plasteel,/area/ruin/derelictoutpost/cargobay) -"cH" = (/obj/structure/closet/crate{icon_state = "crateopen"; opened = 1},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/turf/open/floor/plasteel,/area/ruin/derelictoutpost/cargobay) -"cI" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/structure/janitorialcart,/turf/open/floor/plasteel,/area/ruin/derelictoutpost/cargobay) -"cJ" = (/obj/structure/alien/weeds{color = "#4BAE56"; desc = "A thick gelatinous surface covers the floor. Someone get the golashes."; name = "gelatinous floor"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/item/weapon/mop,/turf/open/floor/plasteel,/area/ruin/derelictoutpost/cargobay) -"cK" = (/obj/effect/decal/cleanable/blood/old{tag = "icon-trails_1 (SOUTHWEST)"; name = "dried blood trail"; icon_state = "trails_1"; dir = 10},/obj/structure/alien/weeds{color = "#4BAE56"; desc = "A thick gelatinous surface covers the floor. Someone get the golashes."; name = "gelatinous floor"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/open/floor/plasteel,/area/ruin/derelictoutpost/cargobay) -"cL" = (/obj/effect/decal/cleanable/blood/old{tag = "icon-trails_1 (NORTHEAST)"; name = "dried blood trail"; icon_state = "trails_1"; dir = 5},/obj/structure/alien/weeds{color = "#4BAE56"; desc = "A thick gelatinous surface covers the floor. Someone get the golashes."; name = "gelatinous floor"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/open/floor/plasteel,/area/ruin/derelictoutpost/cargobay) -"cM" = (/obj/structure/alien/weeds{color = "#4BAE56"; desc = "A thick gelatinous surface covers the floor. Someone get the golashes."; name = "gelatinous floor"},/obj/structure/glowshroom/single,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/open/floor/plasteel,/area/ruin/derelictoutpost/cargobay) -"cN" = (/obj/structure/alien/weeds{color = "#4BAE56"; desc = "A thick gelatinous surface covers the floor. Someone get the golashes."; name = "gelatinous floor"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plasteel,/area/ruin/derelictoutpost/cargobay) -"cO" = (/obj/machinery/light,/turf/open/floor/plasteel,/area/ruin/derelictoutpost) -"cP" = (/obj/item/weapon/shard,/turf/open/floor/plasteel,/area/ruin/derelictoutpost) -"cQ" = (/obj/machinery/firealarm{dir = 4; pixel_x = 24},/turf/open/floor/plasteel,/area/ruin/derelictoutpost) -"cR" = (/obj/structure/alien/weeds{color = "#4BAE56"; desc = "A thick gelatinous surface covers the floor. Someone get the golashes."; name = "gelatinous floor"},/turf/open/floor/plating/asteroid,/area/ruin/derelictoutpost) -"cS" = (/obj/structure/alien/weeds{color = "#4BAE56"; desc = "A thick gelatinous surface covers the floor. Someone get the golashes."; name = "gelatinous floor"},/obj/effect/decal/cleanable/blood/old{tag = "icon-trails_1 (NORTH)"; name = "dried blood trail"; icon_state = "trails_1"; dir = 1},/turf/open/floor/plating/asteroid,/area/ruin/derelictoutpost) -"cT" = (/obj/item/ammo_casing/c45{caliber = null; desc = "A .45 bullet casing. This one is spent."; icon_state = "s-casing"; name = "spent bullet casing"},/turf/open/floor/plasteel,/area/ruin/derelictoutpost/cargobay) -"cU" = (/obj/machinery/door/firedoor,/turf/open/floor/plasteel,/area/ruin/derelictoutpost/cargobay) -"cV" = (/obj/effect/decal/cleanable/xenoblood/xsplatter,/turf/open/floor/plasteel,/area/ruin/derelictoutpost/cargobay) -"cW" = (/turf/open/floor/plasteel/delivery,/area/ruin/derelictoutpost/cargobay) -"cX" = (/obj/effect/decal/cleanable/blood/old{tag = "icon-trails_1 (NORTH)"; name = "dried blood trail"; icon_state = "trails_1"; dir = 1},/obj/structure/alien/weeds{color = "#4BAE56"; desc = "A thick gelatinous surface covers the floor. Someone get the golashes."; name = "gelatinous floor"},/turf/open/floor/plasteel,/area/ruin/derelictoutpost/cargobay) -"cY" = (/obj/structure/grille/broken,/obj/structure/alien/weeds{color = "#4BAE56"; desc = "A thick gelatinous surface covers the floor. Someone get the golashes."; name = "gelatinous floor"},/turf/open/floor/plating,/area/ruin/derelictoutpost) -"cZ" = (/obj/structure/alien/weeds{color = "#4BAE56"; desc = "A thick gelatinous surface covers the floor. Someone get the golashes."; name = "gelatinous floor"},/obj/effect/decal/cleanable/blood/old,/obj/effect/decal/cleanable/blood/old{tag = "icon-trails_1 (NORTH)"; name = "dried blood trail"; icon_state = "trails_1"; dir = 1},/turf/open/floor/plating/asteroid,/area/ruin/derelictoutpost) -"da" = (/obj/structure/alien/weeds{color = "#4BAE56"; desc = "A thick gelatinous surface covers the floor. Someone get the golashes."; name = "gelatinous floor"},/obj/structure/glowshroom/single,/obj/machinery/door/firedoor,/turf/open/floor/plasteel,/area/ruin/derelictoutpost/cargobay) -"db" = (/obj/item/ammo_casing/c45{caliber = null; desc = "A .45 bullet casing. This one is spent."; icon_state = "s-casing"; name = "spent bullet casing"},/obj/structure/alien/weeds{color = "#4BAE56"; desc = "A thick gelatinous surface covers the floor. Someone get the golashes."; name = "gelatinous floor"},/turf/open/floor/plasteel,/area/ruin/derelictoutpost/cargobay) -"dc" = (/obj/structure/alien/weeds{color = "#4BAE56"; desc = "A thick gelatinous surface covers the floor. Someone get the golashes."; name = "gelatinous floor"},/obj/machinery/light,/turf/open/floor/plasteel,/area/ruin/derelictoutpost/cargobay) -"dd" = (/obj/effect/decal/cleanable/blood/old{tag = "icon-trails_1 (SOUTHWEST)"; name = "dried blood trail"; icon_state = "trails_1"; dir = 10},/turf/open/floor/plasteel,/area/ruin/derelictoutpost/cargobay) -"de" = (/obj/effect/decal/cleanable/blood/old{tag = "icon-trails_1 (EAST)"; name = "dried blood trail"; icon_state = "trails_1"; dir = 4},/turf/open/floor/plasteel,/area/ruin/derelictoutpost/cargobay) -"df" = (/obj/effect/decal/cleanable/blood/old{tag = "icon-trails_1 (EAST)"; name = "dried blood trail"; icon_state = "trails_1"; dir = 4},/obj/structure/alien/weeds{color = "#4BAE56"; desc = "A thick gelatinous surface covers the floor. Someone get the golashes."; name = "gelatinous floor"},/obj/machinery/light,/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/turf/open/floor/plasteel,/area/ruin/derelictoutpost/cargobay) -"dg" = (/obj/effect/decal/cleanable/blood/old{tag = "icon-trails_1 (EAST)"; name = "dried blood trail"; icon_state = "trails_1"; dir = 4},/obj/structure/alien/weeds{color = "#4BAE56"; desc = "A thick gelatinous surface covers the floor. Someone get the golashes."; name = "gelatinous floor"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/open/floor/plasteel,/area/ruin/derelictoutpost/cargobay) -"dh" = (/obj/effect/decal/cleanable/blood/old{tag = "icon-trails_1 (EAST)"; name = "dried blood trail"; icon_state = "trails_1"; dir = 4},/obj/structure/alien/weeds{color = "#4BAE56"; desc = "A thick gelatinous surface covers the floor. Someone get the golashes."; name = "gelatinous floor"},/obj/structure/door_assembly/door_assembly_mai{density = 0; desc = "A pried-open airlock. Scratch marks mark the sidings of the door."; name = "pried-open airlock"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/open/floor/plating,/area/ruin/derelictoutpost/cargobay) -"di" = (/obj/effect/decal/cleanable/blood/old{tag = "icon-trails_1 (NORTHEAST)"; name = "dried blood trail"; icon_state = "trails_1"; dir = 5},/obj/effect/decal/cleanable/cobweb{icon_state = "cobweb2"},/obj/structure/alien/weeds{color = "#4BAE56"; desc = "A thick gelatinous surface covers the floor. Someone get the golashes."; name = "gelatinous floor"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/open/floor/plating,/area/ruin/derelictoutpost) -"dj" = (/obj/structure/alien/weeds{color = "#4BAE56"; desc = "A thick gelatinous surface covers the floor. Someone get the golashes."; name = "gelatinous floor"},/obj/item/weapon/shard,/turf/open/floor/plating/asteroid,/area/ruin/derelictoutpost) -"dk" = (/obj/structure/alien/weeds{color = "#4BAE56"; desc = "A thick gelatinous surface covers the floor. Someone get the golashes."; name = "gelatinous floor"},/obj/effect/decal/cleanable/blood/old,/turf/open/floor/plasteel,/area/ruin/derelictoutpost) -"dl" = (/obj/structure/alien/weeds{color = "#4BAE56"; desc = "A thick gelatinous surface covers the floor. Someone get the golashes."; name = "gelatinous floor"},/mob/living/simple_animal/hostile/creature{name = "Miss Tiggles"},/turf/open/floor/plasteel,/area/ruin/derelictoutpost) -"dm" = (/obj/structure/alien/weeds{color = "#4BAE56"; desc = "A thick gelatinous surface covers the floor. Someone get the golashes."; name = "gelatinous floor"},/obj/effect/decal/cleanable/blood/old,/obj/structure/alien/gelpod,/turf/open/floor/plasteel,/area/ruin/derelictoutpost) -"dn" = (/obj/structure/alien/weeds{color = "#4BAE56"; desc = "A thick gelatinous surface covers the floor. Someone get the golashes."; name = "gelatinous floor"},/obj/effect/decal/cleanable/blood/old{tag = "icon-trails_1 (WEST)"; name = "dried blood trail"; icon_state = "trails_1"; dir = 8},/turf/open/floor/plating/asteroid,/area/ruin/derelictoutpost) -"do" = (/obj/structure/alien/weeds{color = "#4BAE56"; desc = "A thick gelatinous surface covers the floor. Someone get the golashes."; name = "gelatinous floor"},/obj/effect/decal/cleanable/blood/old{tag = "icon-trails_1 (SOUTHEAST)"; name = "dried blood trail"; icon_state = "trails_1"; dir = 6},/turf/open/floor/plating/asteroid,/area/ruin/derelictoutpost) -"dp" = (/obj/machinery/light{dir = 8},/turf/open/floor/plasteel,/area/ruin/derelictoutpost/cargobay) -"dq" = (/obj/effect/decal/cleanable/xenoblood/xsplatter,/obj/structure/alien/weeds{color = "#4BAE56"; desc = "A thick gelatinous surface covers the floor. Someone get the golashes."; name = "gelatinous floor"},/turf/open/floor/plasteel,/area/ruin/derelictoutpost/cargobay) -"dr" = (/obj/effect/decal/cleanable/blood/old{icon_state = "trails_1"; name = "dried blood trail"},/obj/structure/alien/weeds{color = "#4BAE56"; desc = "A thick gelatinous surface covers the floor. Someone get the golashes."; name = "gelatinous floor"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plating,/area/ruin/derelictoutpost) -"ds" = (/turf/closed/mineral,/area/ruin/derelictoutpost) -"dt" = (/obj/structure/alien/weeds{color = "#4BAE56"; desc = "A thick gelatinous surface covers the floor. Someone get the golashes."; name = "gelatinous floor"},/obj/structure/glowshroom/single,/turf/open/floor/plating/asteroid,/area/ruin/derelictoutpost) -"du" = (/obj/structure/alien/weeds{color = "#4BAE56"; desc = "A thick gelatinous surface covers the floor. Someone get the golashes."; name = "gelatinous floor"},/obj/item/weapon/gun/ballistic/automatic/pistol/m1911{spawnwithmagazine = 0},/obj/item/ammo_box/magazine/m45,/turf/open/floor/plating/asteroid,/area/ruin/derelictoutpost) -"dv" = (/obj/effect/decal/cleanable/blood/old{tag = "icon-trails_1 (NORTHWEST)"; name = "dried blood trail"; icon_state = "trails_1"; dir = 9},/obj/structure/alien/weeds{color = "#4BAE56"; desc = "A thick gelatinous surface covers the floor. Someone get the golashes."; name = "gelatinous floor"},/turf/open/floor/plating/asteroid,/area/ruin/derelictoutpost) -"dw" = (/obj/effect/decal/cleanable/blood/old{tag = "icon-trails_1 (EAST)"; name = "dried blood trail"; icon_state = "trails_1"; dir = 4},/obj/structure/alien/weeds{color = "#4BAE56"; desc = "A thick gelatinous surface covers the floor. Someone get the golashes."; name = "gelatinous floor"},/obj/structure/alien/weeds{color = "#4BAE56"; desc = "A thick gelatinous surface covers the floor. Someone get the golashes."; name = "gelatinous floor"},/turf/open/floor/plating/asteroid,/area/ruin/derelictoutpost) -"dx" = (/obj/effect/decal/cleanable/blood/old{tag = "icon-trails_1 (EAST)"; name = "dried blood trail"; icon_state = "trails_1"; dir = 4},/obj/structure/alien/weeds{color = "#4BAE56"; desc = "A thick gelatinous surface covers the floor. Someone get the golashes."; name = "gelatinous floor"},/turf/open/floor/plating/asteroid,/area/ruin/derelictoutpost) -"dy" = (/obj/effect/decal/cleanable/blood/old{tag = "icon-trails_1 (EAST)"; name = "dried blood trail"; icon_state = "trails_1"; dir = 4},/obj/structure/alien/weeds{color = "#4BAE56"; desc = "A thick gelatinous surface covers the floor. Someone get the golashes."; name = "gelatinous floor"},/obj/structure/glowshroom/single,/turf/open/floor/plating/asteroid,/area/ruin/derelictoutpost) -"dz" = (/obj/effect/decal/cleanable/blood/old{tag = "icon-trails_1 (NORTHEAST)"; name = "dried blood trail"; icon_state = "trails_1"; dir = 5},/obj/effect/decal/cleanable/cobweb{icon_state = "cobweb2"},/obj/structure/alien/weeds{color = "#4BAE56"; desc = "A thick gelatinous surface covers the floor. Someone get the golashes."; name = "gelatinous floor"},/turf/open/floor/plating/asteroid,/area/ruin/derelictoutpost) -"dA" = (/obj/effect/decal/cleanable/blood/old{tag = "icon-trails_1 (EAST)"; name = "dried blood trail"; icon_state = "trails_1"; dir = 4},/turf/open/floor/plating/asteroid,/area/ruin/derelictoutpost) -"dB" = (/obj/effect/decal/cleanable/blood/old{tag = "icon-trails_1 (SOUTHEAST)"; name = "dried blood trail"; icon_state = "trails_1"; dir = 6},/obj/structure/alien/weeds{color = "#4BAE56"; desc = "A thick gelatinous surface covers the floor. Someone get the golashes."; name = "gelatinous floor"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plating,/area/ruin/derelictoutpost) -"dC" = (/obj/structure/alien/weeds{color = "#4BAE56"; desc = "A thick gelatinous surface covers the floor. Someone get the golashes."; name = "gelatinous floor"},/obj/effect/decal/cleanable/blood/old{icon_state = "trails_1"; name = "dried blood trail"},/turf/open/floor/plasteel,/area/ruin/derelictoutpost) -"dD" = (/obj/structure/alien/weeds{color = "#4BAE56"; desc = "A thick gelatinous surface covers the floor. Someone get the golashes."; name = "gelatinous floor"},/obj/effect/decal/cleanable/blood/old,/turf/open/floor/plating/asteroid,/area/ruin/derelictoutpost) -"dE" = (/obj/structure/alien/weeds{color = "#4BAE56"; desc = "A thick gelatinous surface covers the floor. Someone get the golashes."; name = "gelatinous floor"},/obj/structure/alien/weeds{color = "#4BAE56"; desc = "A thick gelatinous surface covers the floor. Someone get the golashes."; name = "gelatinous floor"},/turf/open/floor/plating/asteroid,/area/ruin/derelictoutpost) -"dF" = (/obj/effect/decal/cleanable/blood/old{tag = "icon-trails_1 (SOUTHWEST)"; name = "dried blood trail"; icon_state = "trails_1"; dir = 10},/obj/structure/alien/weeds{color = "#4BAE56"; desc = "A thick gelatinous surface covers the floor. Someone get the golashes."; name = "gelatinous floor"},/turf/open/floor/plating/asteroid,/area/ruin/derelictoutpost) -"dG" = (/obj/effect/decal/cleanable/blood/old{tag = "icon-trails_1 (WEST)"; name = "dried blood trail"; icon_state = "trails_1"; dir = 8},/obj/structure/alien/weeds{color = "#4BAE56"; desc = "A thick gelatinous surface covers the floor. Someone get the golashes."; name = "gelatinous floor"},/turf/open/floor/plating/asteroid,/area/ruin/derelictoutpost) -"dH" = (/obj/effect/decal/cleanable/blood/old{tag = "icon-trails_1 (SOUTHEAST)"; name = "dried blood trail"; icon_state = "trails_1"; dir = 6},/obj/structure/alien/weeds{color = "#4BAE56"; desc = "A thick gelatinous surface covers the floor. Someone get the golashes."; name = "gelatinous floor"},/turf/open/floor/plating/asteroid,/area/ruin/derelictoutpost) -"dI" = (/obj/structure/alien/weeds{color = "#4BAE56"; desc = "A thick gelatinous surface covers the floor. Someone get the golashes."; name = "gelatinous floor"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plating,/area/ruin/derelictoutpost) -"dJ" = (/obj/item/weapon/gun/ballistic/automatic/pistol/m1911{spawnwithmagazine = 0},/obj/structure/alien/weeds{color = "#4BAE56"; desc = "A thick gelatinous surface covers the floor. Someone get the golashes."; name = "gelatinous floor"},/obj/effect/decal/cleanable/blood/old,/turf/open/floor/plasteel,/area/ruin/derelictoutpost/cargobay) -"dK" = (/obj/item/ammo_casing/c45{caliber = null; desc = "A .45 bullet casing. This one is spent."; icon_state = "s-casing"; name = "spent bullet casing"},/obj/structure/alien/weeds{color = "#4BAE56"; desc = "A thick gelatinous surface covers the floor. Someone get the golashes."; name = "gelatinous floor"},/obj/effect/decal/cleanable/blood/old{tag = "icon-trails_1 (NORTHEAST)"; name = "dried blood trail"; icon_state = "trails_1"; dir = 5},/turf/open/floor/plasteel,/area/ruin/derelictoutpost/cargobay) -"dL" = (/turf/closed/wall,/area/ruin/derelictoutpost/cargostorage) -"dM" = (/obj/structure/alien/weeds{color = "#4BAE56"; desc = "A thick gelatinous surface covers the floor. Someone get the golashes."; name = "gelatinous floor"},/obj/effect/decal/cleanable/blood/old{tag = "icon-trails_1 (NORTHWEST)"; name = "dried blood trail"; icon_state = "trails_1"; dir = 9},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plating,/area/ruin/derelictoutpost) -"dN" = (/obj/effect/decal/cleanable/blood/old{tag = "icon-trails_1 (WEST)"; name = "dried blood trail"; icon_state = "trails_1"; dir = 8},/turf/open/floor/plating{icon_plating = "wall_thermite"; icon_state = "wall_thermite"; name = "melted wall"},/area/ruin/derelictoutpost) -"dO" = (/obj/structure/alien/resin/membrane{color = "#4BAE56"; desc = "A strange combination of thin, gelatinous material."; icon_state = "smooth"; name = "gelatinous membrane"},/obj/effect/decal/cleanable/blood/old{tag = "icon-trails_1 (WEST)"; name = "dried blood trail"; icon_state = "trails_1"; dir = 8},/turf/open/floor/plating{icon_plating = "wall_thermite"; icon_state = "wall_thermite"; name = "melted wall"},/area/ruin/derelictoutpost) -"dP" = (/obj/structure/alien/weeds{color = "#4BAE56"; desc = "A thick gelatinous surface covers the floor. Someone get the golashes."; name = "gelatinous floor"},/obj/structure/glowshroom/single,/obj/effect/decal/cleanable/blood/old{tag = "icon-trails_1 (WEST)"; name = "dried blood trail"; icon_state = "trails_1"; dir = 8},/turf/open/floor/plasteel,/area/ruin/derelictoutpost) -"dQ" = (/obj/structure/alien/weeds{color = "#4BAE56"; desc = "A thick gelatinous surface covers the floor. Someone get the golashes."; name = "gelatinous floor"},/obj/effect/decal/cleanable/blood/old{tag = "icon-trails_1 (SOUTHEAST)"; name = "dried blood trail"; icon_state = "trails_1"; dir = 6},/turf/open/floor/plasteel,/area/ruin/derelictoutpost) -"dR" = (/obj/structure/alien/resin/membrane{color = "#4BAE56"; desc = "A strange combination of thin, gelatinous material."; icon_state = "smooth"; name = "gelatinous membrane"},/turf/open/floor/plating/asteroid,/area/ruin/derelictoutpost) -"dS" = (/obj/item/ammo_box/magazine/m45,/obj/structure/alien/weeds{color = "#4BAE56"; desc = "A thick gelatinous surface covers the floor. Someone get the golashes."; name = "gelatinous floor"},/obj/effect/decal/cleanable/blood/old{icon_state = "trails_1"; name = "dried blood trail"},/turf/open/floor/plasteel,/area/ruin/derelictoutpost/cargobay) -"dT" = (/obj/machinery/suit_storage_unit/standard_unit,/turf/open/floor/plasteel,/area/ruin/derelictoutpost/cargostorage) -"dU" = (/obj/machinery/suit_storage_unit/standard_unit,/obj/machinery/light{dir = 1},/turf/open/floor/plasteel,/area/ruin/derelictoutpost/cargostorage) -"dV" = (/obj/structure/closet/crate,/obj/item/stack/sheet/glass/fifty,/obj/item/stack/sheet/glass/fifty,/turf/open/floor/plasteel/delivery,/area/ruin/derelictoutpost/cargostorage) -"dW" = (/turf/open/floor/plasteel,/area/ruin/derelictoutpost/cargostorage) -"dX" = (/obj/structure/closet/crate/secure/loot,/turf/open/floor/plasteel/delivery,/area/ruin/derelictoutpost/cargostorage) -"dY" = (/obj/structure/closet/crate{icon_state = "crateopen"; opened = 1},/obj/item/stack/sheet/plasteel/twenty,/turf/open/floor/plasteel/delivery,/area/ruin/derelictoutpost/cargostorage) -"dZ" = (/obj/structure/extinguisher_cabinet{pixel_y = 32},/turf/open/floor/plasteel,/area/ruin/derelictoutpost/cargostorage) -"ea" = (/obj/structure/closet/crate,/obj/item/weapon/storage/pill_bottle/stimulant,/turf/open/floor/plasteel/delivery,/area/ruin/derelictoutpost/cargostorage) -"eb" = (/obj/structure/closet/crate,/obj/item/target/syndicate,/obj/item/target/clown,/obj/item/target/clown,/obj/item/target/alien,/obj/item/target,/obj/machinery/light{dir = 1},/turf/open/floor/plasteel/delivery,/area/ruin/derelictoutpost/cargostorage) -"ec" = (/obj/structure/closet/crate/medical,/obj/item/weapon/storage/firstaid/regular{empty = 1; name = "First-Aid (empty)"},/turf/open/floor/plasteel/delivery,/area/ruin/derelictoutpost/cargostorage) -"ed" = (/obj/structure/closet/crate/medical,/obj/item/weapon/storage/firstaid/regular{empty = 1; name = "First-Aid (empty)"},/obj/item/weapon/storage/firstaid/o2,/turf/open/floor/plasteel/delivery,/area/ruin/derelictoutpost/cargostorage) -"ee" = (/obj/effect/decal/cleanable/blood/old{icon_state = "trails_1"; name = "dried blood trail"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plating,/area/ruin/derelictoutpost) -"ef" = (/obj/structure/alien/resin/membrane{color = "#4BAE56"; desc = "A strange combination of thin, gelatinous material."; icon_state = "smooth"; name = "gelatinous membrane"},/turf/open/floor/plating/asteroid/airless,/area/ruin/derelictoutpost) -"eg" = (/obj/structure/alien/weeds{color = "#4BAE56"; desc = "A thick gelatinous surface covers the floor. Someone get the golashes."; name = "gelatinous floor"},/mob/living/simple_animal/hostile/creature{desc = "Awh its so sm-OH GOD WHAT THE FUCK."; health = 25; maxHealth = 25; name = "hatchling"; resize = 0.85},/turf/open/floor/plating/asteroid,/area/ruin/derelictoutpost) -"eh" = (/obj/effect/decal/cleanable/blood/old{icon_state = "trails_1"; name = "dried blood trail"},/turf/open/floor/plasteel,/area/ruin/derelictoutpost/cargobay) -"ei" = (/obj/machinery/door/firedoor,/turf/open/floor/plasteel,/area/ruin/derelictoutpost/cargostorage) -"ej" = (/obj/structure/closet/crate,/obj/item/stack/sheet/cloth/ten,/obj/item/stack/sheet/cloth/ten,/turf/open/floor/plasteel/delivery,/area/ruin/derelictoutpost/cargostorage) -"ek" = (/obj/structure/closet/crate{icon_state = "crateopen"; opened = 1},/obj/item/stack/sheet/cardboard/fifty,/turf/open/floor/plasteel/delivery,/area/ruin/derelictoutpost/cargostorage) -"el" = (/obj/machinery/power/apc{cell_type = 0; dir = 4; name = "Cargo Storage APC"; pixel_x = 24; pixel_y = 0},/obj/structure/cable{icon_state = "0-2"; pixel_y = 1; d2 = 2},/turf/open/floor/plasteel,/area/ruin/derelictoutpost/cargostorage) -"em" = (/turf/closed/wall,/area/ruin/unpowered/no_grav) -"en" = (/obj/structure/alien/resin/wall{color = "#8EC127"; desc = "Thick material shaped into a wall. Eugh."; icon_state = "smooth"; name = "gelatinous wall"},/turf/open/floor/plating/asteroid,/area/ruin/unpowered/no_grav) -"eo" = (/obj/structure/closet/crate/internals,/obj/item/weapon/storage/toolbox/emergency,/obj/item/clothing/mask/breath,/turf/open/floor/plasteel/delivery,/area/ruin/derelictoutpost/cargostorage) -"ep" = (/obj/structure/closet/crate/engineering/electrical,/obj/item/weapon/storage/toolbox/electrical,/obj/item/stack/cable_coil,/turf/open/floor/plasteel/delivery,/area/ruin/derelictoutpost/cargostorage) -"eq" = (/obj/structure/closet/crate{icon_state = "crateopen"; opened = 1},/obj/item/weapon/crowbar,/turf/open/floor/plasteel,/area/ruin/derelictoutpost/cargostorage) -"er" = (/obj/structure/closet/crate/medical,/obj/item/weapon/storage/firstaid/regular,/turf/open/floor/plasteel/delivery,/area/ruin/derelictoutpost/cargostorage) -"es" = (/obj/structure/closet/crate/engineering,/obj/item/weapon/storage/toolbox/mechanical,/turf/open/floor/plasteel,/area/ruin/derelictoutpost/cargostorage) -"et" = (/obj/structure/closet/crate/medical,/obj/item/weapon/storage/firstaid/brute,/obj/item/weapon/storage/firstaid/fire,/turf/open/floor/plasteel/delivery,/area/ruin/derelictoutpost/cargostorage) -"eu" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plasteel,/area/ruin/derelictoutpost/cargostorage) -"ev" = (/obj/structure/alien/weeds{color = "#4BAE56"; desc = "A thick gelatinous surface covers the floor. Someone get the golashes."; name = "gelatinous floor"},/obj/structure/alien/gelpod,/turf/open/floor/plating/asteroid,/area/ruin/derelictoutpost) -"ew" = (/obj/effect/decal/cleanable/blood/old{tag = "icon-trails_1 (WEST)"; name = "dried blood trail"; icon_state = "trails_1"; dir = 8},/obj/machinery/door/firedoor,/turf/open/floor/plasteel,/area/ruin/derelictoutpost/cargostorage) -"ex" = (/obj/effect/decal/cleanable/blood/old{tag = "icon-trails_1 (WEST)"; name = "dried blood trail"; icon_state = "trails_1"; dir = 8},/turf/open/floor/plasteel,/area/ruin/derelictoutpost/cargostorage) -"ey" = (/obj/effect/decal/cleanable/blood/old{tag = "icon-trails_1 (WEST)"; name = "dried blood trail"; icon_state = "trails_1"; dir = 8},/turf/open/floor/plasteel/delivery,/area/ruin/derelictoutpost/cargostorage) -"ez" = (/obj/effect/decal/cleanable/blood/old{tag = "icon-trails_1 (NORTHEAST)"; name = "dried blood trail"; icon_state = "trails_1"; dir = 5},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plasteel,/area/ruin/derelictoutpost/cargostorage) -"eA" = (/obj/structure/closet/crate,/obj/item/stack/sheet/metal/fifty,/obj/item/stack/sheet/metal/fifty,/turf/open/floor/plasteel/delivery,/area/ruin/derelictoutpost/cargostorage) -"eB" = (/obj/structure/closet/crate{icon_state = "crateopen"; opened = 1},/obj/item/device/paicard,/obj/machinery/light,/turf/open/floor/plasteel/delivery,/area/ruin/derelictoutpost/cargostorage) -"eC" = (/obj/structure/closet/crate,/obj/item/device/pda/clear,/turf/open/floor/plasteel/delivery,/area/ruin/derelictoutpost/cargostorage) -"eD" = (/obj/machinery/firealarm{dir = 1; pixel_y = -24},/turf/open/floor/plasteel,/area/ruin/derelictoutpost/cargostorage) -"eE" = (/obj/structure/closet/crate/internals,/obj/item/weapon/tank/internals/emergency_oxygen/engi,/obj/item/weapon/tank/internals/emergency_oxygen/engi,/obj/item/weapon/storage/firstaid/toxin,/turf/open/floor/plasteel/delivery,/area/ruin/derelictoutpost/cargostorage) -"eF" = (/obj/structure/closet/crate,/turf/open/floor/plasteel/delivery,/area/ruin/derelictoutpost/cargostorage) -"eG" = (/obj/machinery/light,/turf/open/floor/plasteel,/area/ruin/derelictoutpost/cargostorage) -"eH" = (/obj/structure/closet/crate/engineering,/obj/item/device/multitool,/turf/open/floor/plasteel/delivery,/area/ruin/derelictoutpost/cargostorage) -"eI" = (/obj/effect/decal/cleanable/blood/old{tag = "icon-trails_1 (SOUTHWEST)"; name = "dried blood trail"; icon_state = "trails_1"; dir = 10},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/turf/open/floor/plasteel,/area/ruin/derelictoutpost/cargostorage) -"eJ" = (/obj/structure/door_assembly/door_assembly_mai{density = 0; desc = "A pried-open airlock. Scratch marks mark the sidings of the door."; name = "pried-open airlock"},/obj/effect/decal/cleanable/blood/old{tag = "icon-trails_1 (EAST)"; name = "dried blood trail"; icon_state = "trails_1"; dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/open/floor/plating,/area/ruin/derelictoutpost/cargostorage) -"eK" = (/obj/effect/decal/cleanable/blood/old{tag = "icon-trails_1 (SOUTHEAST)"; name = "dried blood trail"; icon_state = "trails_1"; dir = 6},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/open/floor/plating,/area/ruin/derelictoutpost) -"eL" = (/obj/machinery/door/airlock/maintenance,/turf/open/floor/plating,/area/ruin/derelictoutpost/cargobay) - -(1,1,1) = {" -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaabacacacacacacacacacabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaadabababaeaeaeaeaeaeaeaeaeabababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaadabafabagagagagagagagagagabahabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaadadabaiajaeaeaeaeaeaeaeaeaeajakabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaadadabalakaeamamamamamamamaeanaoabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaadadabapakaeaqarasatarasaqaeauavabadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaadadabawakaeataxayataxayataeauazabadadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaAaBaAaCaCabawakaeaDaEaFaGaHaIaDaeauaJabadadaaaaaaaaaaaKaLaKadadadaKaLaKaaaaaa -aaaAaMaAaCaCabaNakaeaDaOaPaQaHaIaDaeauaNabadaaaaaaaaaaadaKaRaKadadadaKaRaKadadaa -aaaAaBaAaAaAaSaTakaeaDaOaPaUaVaWaDaeauaXabadaYaYaYaYaYaZaZaLaZaZaZaZaZaLaZaZadad -aaaAbabbbcbdaSaJakaeatbebfbebgbhataeauavabaZaKaKaKaKaZaZbibjbkblbmbnbobnbpaZaCad -aaaAbqbrbsbraSazakaebtbubebvbwbebtaeaubxbxbybzbzbAbBbCbDbjblblblbEbFbFbFbGaZaCad -aaaAbHbIbsbJaSbKakaeatbebLbMbNbOataeaubPbxbCbQbRbSbTbUbnbnbnbnbVbWaZblblbXaZaCaC -aaaAbJbYbZcaaScbakaeaqatcccccdataqaecebxakbCbCcfcgbCbCchbjcicjckbjbFbFbFclaZcmcm -aaaAcncocpcqcrcsctaeaeaeaeaecucvaecvcwcxcscyczczcAczcycAczcAcBaZbFbFcCbFcDcEcFcm -aaaAaAaSaSaSaScGcHcscIcJcxcxcKcLcMcxcNakakbCcOcPblcQbCbFbFbFbFbFbFblblbFcRcRcScm -aaadadabcTcTcUakcVbxbxbxaXcWcWcXbxbxceakabaZaZaKcYaKaZblciblblbFciblbFbFcmcmcZcm -adadaCabakbxdadbdcbxcVakcWaNcWdddededfdgdhdiaZcRdjcRaZdkblbldlbFbldkbFcidmdndocm -adaCaCabdpdqabababababababababababababababdraZdsdtcRaZbldmbFbFbFbFcCbFbFcmducRcm -adadaCabcTbxabdvdwdxdydzdsdsdvdxdAdAdAdxbUdBaZcRcRdsaZbldCbFblcCbFblblbldDcRcmcm -adaCaCabbxbxabdmdEcmdsdFdGdGdHdsdscmcRcRaZdIaZcRcRdsaZbldCbFciblbFbFbFbFcmdtcmaa -aaadaCabdJdKdLdLdLdLdLdLdLdLdLdLdLdLdLdLdLdMdNdndndndOdPdQbFblcCblbldkblcmcRdRad -aaadaCabbxdSdLdTdUdVdWdXdXdYdZeadWebeceddLeeaZefefefaZcRegcRcRdDcRblcRcmcmcRdRad -aaadaCabbxeheidWdWejdWdWdWdWdWekdWdWdWeldLeeemaCaCadencRcRcRdDcmcmcmcmcmcRcRdRaa -aaadadabdpeheidWdWeodWdWepeqdWerdWeseteudLeeemaCaCadencRcRevblcmcRdtcRegblevcmaa -aaadadabakddewexexexexexeyexexexexexeyezdLeeemaCaCadencmcRdDcRcmcRcmcmdRdRcmcmaa -aaadadabakakdLeAeBeCdWeDeEdWdXdXeFeGeHeIeJeKemaCaCadadcmcmcRegcmcRcmaaaaaaaaaaaa -aaadadabeLabdLdLdLdLdLdLdLdLdLdLdLdLdLdLdLaRemadadadadaacmcRcRcRcRcmaaaaaaaaaaaa -aaadadaZaRaRaRaRaRaRaRaRaRaRaRaRaRaRaRaRaRaRemadadaaaaaacmcmdRdRcmcmaaaaaaaaaaaa -aaaaadaZaZaZaZaZaZaZaZaZaZaZaZaZaZaZaZaZaZaZemadadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaadadadadadadadadaCaCaCaCaCaCaCaCaCaCaCaCadadadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaadadaaaaadadadadadaCaCaCaCaCaCaCadadadadadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaadadadadadadadadadadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadadadadadadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -"} diff --git a/_maps/RandomRuins/SpaceRuins/bus.dmm b/_maps/RandomRuins/SpaceRuins/bus.dmm deleted file mode 100644 index ce578a0bab..0000000000 --- a/_maps/RandomRuins/SpaceRuins/bus.dmm +++ /dev/null @@ -1,821 +0,0 @@ -//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE -"aa" = ( -/turf/open/space, -/area/space) -"ab" = ( -/turf/closed/mineral/ash_rock, -/area/ruin/unpowered/no_grav) -"ac" = ( -/obj/item/trash/sosjerky, -/turf/open/space, -/area/space) -"ad" = ( -/turf/open/floor/plating/asteroid/airless, -/area/ruin/unpowered/no_grav) -"ae" = ( -/mob/living/simple_animal/hostile/lizard, -/turf/open/floor/plating/asteroid/airless, -/area/ruin/unpowered/no_grav) -"af" = ( -/obj/structure/reagent_dispensers/fueltank, -/turf/open/floor/plating/asteroid/airless, -/area/ruin/unpowered/no_grav) -"ag" = ( -/obj/item/stack/rods{ - amount = 50 - }, -/obj/item/weapon/stock_parts/manipulator/femto, -/turf/open/floor/plating/asteroid/airless, -/area/ruin/unpowered/no_grav) -"ah" = ( -/obj/item/stack/cable_coil{ - amount = 5 - }, -/obj/item/weapon/shard{ - icon_state = "small" - }, -/turf/open/floor/plating/asteroid/airless, -/area/ruin/unpowered/no_grav) -"ai" = ( -/obj/item/weapon/book/random, -/turf/open/floor/plating/asteroid/airless, -/area/ruin/unpowered/no_grav) -"aj" = ( -/obj/structure/fluff/bus/dense, -/turf/open/floor/plating/asteroid/airless, -/area/ruin/unpowered/no_grav) -"ak" = ( -/obj/structure/fluff/bus/passable{ - tag = "icon-wheredahoodat"; - icon_state = "wheredahoodat" - }, -/turf/open/floor/plating/asteroid/airless, -/area/ruin/unpowered/no_grav) -"al" = ( -/obj/effect/decal/cleanable/salt, -/obj/item/weapon/reagent_containers/food/condiment/saltshaker, -/turf/open/floor/plating/asteroid/airless, -/area/ruin/unpowered/no_grav) -"am" = ( -/obj/structure/fluff/bus/passable/seat{ - tag = "icon-backseat"; - icon_state = "backseat" - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/airless/black{ - icon_state = "bus" - }, -/area/ruin/unpowered/no_grav) -"an" = ( -/obj/structure/fluff/bus/passable/seat{ - tag = "icon-backseat"; - icon_state = "backseat" - }, -/obj/item/weapon/reagent_containers/food/snacks/faggot, -/turf/open/floor/plasteel/airless/black{ - icon_state = "bus" - }, -/area/ruin/unpowered/no_grav) -"ao" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/airless/black{ - icon_state = "bus" - }, -/area/ruin/unpowered/no_grav) -"ap" = ( -/obj/structure/fluff/bus/passable/seat{ - icon_state = "backseat"; - pixel_y = 15; - tag = "icon-backseat" - }, -/turf/open/floor/plasteel/airless/black{ - icon_state = "bus" - }, -/area/ruin/unpowered/no_grav) -"aq" = ( -/obj/structure/fluff/bus/passable/seat{ - tag = "icon-backseat"; - icon_state = "backseat" - }, -/obj/item/weapon/reagent_containers/food/snacks/faggot, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/airless/black{ - icon_state = "bus" - }, -/area/ruin/unpowered/no_grav) -"ar" = ( -/obj/structure/fluff/bus/passable/seat{ - tag = "icon-backseat"; - icon_state = "backseat" - }, -/obj/item/weapon/reagent_containers/food/snacks/grown/citrus/orange, -/turf/open/floor/plasteel/airless/black{ - icon_state = "bus" - }, -/area/ruin/unpowered/no_grav) -"as" = ( -/obj/structure/fluff/bus/passable/seat/driver{ - icon_state = "driverseat"; - pixel_y = 17; - tag = "icon-driverseat" - }, -/obj/item/weapon/reagent_containers/food/snacks/grown/cherry_bomb, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/airless/black{ - icon_state = "bus" - }, -/area/ruin/unpowered/no_grav) -"at" = ( -/obj/structure/fluff/bus/dense{ - tag = "icon-hoodtop"; - icon_state = "hoodtop" - }, -/turf/open/floor/plating/asteroid/airless, -/area/ruin/unpowered/no_grav) -"au" = ( -/obj/item/clothing/head/cone, -/turf/open/floor/plating/asteroid/airless, -/area/ruin/unpowered/no_grav) -"av" = ( -/obj/structure/table, -/obj/item/device/paicard, -/turf/open/floor/plating/asteroid/airless, -/area/ruin/unpowered/no_grav) -"aw" = ( -/obj/effect/decal/cleanable/oil, -/turf/open/floor/plating/asteroid/airless, -/area/ruin/unpowered/no_grav) -"ax" = ( -/obj/structure/fluff/bus/passable, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/airless/black{ - icon_state = "bus" - }, -/area/ruin/unpowered/no_grav) -"ay" = ( -/obj/structure/fluff/bus/passable, -/obj/item/weapon/storage/firstaid/regular, -/turf/open/floor/plasteel/airless/black{ - icon_state = "bus" - }, -/area/ruin/unpowered/no_grav) -"az" = ( -/obj/structure/fluff/bus/passable, -/turf/open/floor/plasteel/airless/black{ - icon_state = "bus" - }, -/area/ruin/unpowered/no_grav) -"aA" = ( -/obj/structure/fluff/bus/passable, -/obj/structure/closet/crate/freezer, -/obj/item/weapon/reagent_containers/food/snacks/faggot, -/obj/item/weapon/reagent_containers/food/snacks/faggot, -/obj/item/weapon/reagent_containers/food/snacks/faggot, -/turf/open/floor/plasteel/airless/black{ - icon_state = "bus" - }, -/area/ruin/unpowered/no_grav) -"aB" = ( -/obj/structure/fluff/bus/passable, -/obj/effect/mine/sound/bwoink, -/turf/open/floor/plasteel/airless/black{ - icon_state = "bus" - }, -/area/ruin/unpowered/no_grav) -"aC" = ( -/obj/structure/fluff/bus/passable, -/obj/item/weapon/reagent_containers/food/condiment/saltshaker, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/airless/black{ - icon_state = "bus" - }, -/area/ruin/unpowered/no_grav) -"aD" = ( -/obj/structure/fluff/bus/passable, -/obj/item/weapon/reagent_containers/food/snacks/faggot, -/turf/open/floor/plasteel/airless/black{ - icon_state = "bus" - }, -/area/ruin/unpowered/no_grav) -"aE" = ( -/obj/structure/fluff/bus/passable{ - tag = "icon-topdoor"; - icon_state = "topdoor" - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/airless/black{ - icon_state = "bus" - }, -/area/ruin/unpowered/no_grav) -"aF" = ( -/obj/structure/fluff/bus/dense{ - tag = "icon-hoodbottom"; - icon_state = "hoodbottom" - }, -/turf/open/floor/plating/asteroid/airless, -/area/ruin/unpowered/no_grav) -"aG" = ( -/obj/structure/fluff/bus/passable/seat{ - tag = "icon-backseat"; - icon_state = "backseat" - }, -/turf/open/floor/plating/asteroid/airless, -/area/ruin/unpowered/no_grav) -"aH" = ( -/obj/structure/table, -/obj/item/weapon/reagent_containers/food/drinks/coffee, -/turf/open/floor/plating/asteroid/airless, -/area/ruin/unpowered/no_grav) -"aI" = ( -/obj/structure/fluff/bus/dense{ - tag = "icon-frontwallbottomrear"; - icon_state = "frontwallbottomrear" - }, -/turf/open/floor/plating/asteroid/airless, -/area/ruin/unpowered/no_grav) -"aJ" = ( -/obj/structure/fluff/bus/dense{ - tag = "icon-frontwallbottom"; - icon_state = "frontwallbottom" - }, -/turf/open/floor/plating/asteroid/airless, -/area/ruin/unpowered/no_grav) -"aK" = ( -/obj/structure/fluff/bus/dense{ - tag = "icon-reartire"; - icon_state = "reartire" - }, -/turf/open/floor/plating/asteroid/airless, -/area/ruin/unpowered/no_grav) -"aL" = ( -/obj/structure/fluff/bus/dense{ - tag = "icon-frontwallbottom"; - icon_state = "frontwallbottom" - }, -/obj/effect/decal/cleanable/oil, -/turf/open/floor/plating/asteroid/airless, -/area/ruin/unpowered/no_grav) -"aM" = ( -/obj/structure/fluff/bus/passable{ - icon_state = "bottomdoor"; - layer = 3; - tag = "icon-bottomdoor" - }, -/turf/open/floor/plating/asteroid/airless, -/area/ruin/unpowered/no_grav) -"aN" = ( -/obj/structure/fluff/bus/dense{ - tag = "icon-fronttire"; - icon_state = "fronttire" - }, -/turf/open/floor/plating/asteroid/airless, -/area/ruin/unpowered/no_grav) -"aO" = ( -/obj/effect/decal/cleanable/robot_debris/old, -/turf/open/floor/plating/asteroid/airless, -/area/ruin/unpowered/no_grav) -"aP" = ( -/obj/item/weapon/reagent_containers/food/snacks/faggot, -/turf/open/floor/plating/asteroid/airless, -/area/ruin/unpowered/no_grav) -"aQ" = ( -/obj/item/weapon/reagent_containers/glass/rag, -/turf/open/floor/plating/asteroid/airless, -/area/ruin/unpowered/no_grav) -"aR" = ( -/obj/item/weapon/storage/toolbox/mechanical, -/obj/effect/decal/cleanable/oil, -/turf/open/floor/plating/asteroid/airless, -/area/ruin/unpowered/no_grav) -"aS" = ( -/obj/item/clothing/head/helmet/space, -/turf/open/floor/plating/asteroid/airless, -/area/ruin/unpowered/no_grav) -"aT" = ( -/obj/effect/decal/remains/human, -/obj/item/clothing/head/helmet/space, -/turf/open/floor/plating/asteroid/airless, -/area/ruin/unpowered/no_grav) -"aU" = ( -/obj/structure/fluff/bus/passable/seat{ - tag = "icon-backseat"; - icon_state = "backseat" - }, -/obj/effect/decal/cleanable/dirt, -/obj/item/weapon/reagent_containers/food/snacks/faggot, -/turf/open/floor/plasteel/airless/black{ - icon_state = "bus" - }, -/area/ruin/unpowered/no_grav) -"aV" = ( -/obj/structure/fluff/bus/passable/seat{ - tag = "icon-backseat"; - icon_state = "backseat" - }, -/obj/effect/decal/remains/human, -/turf/open/floor/plasteel/airless/black{ - icon_state = "bus" - }, -/area/ruin/unpowered/no_grav) -"aW" = ( -/obj/structure/fluff/bus/passable/seat/driver{ - icon_state = "driverseat"; - pixel_y = 17; - tag = "icon-driverseat" - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/airless/black{ - icon_state = "bus" - }, -/area/ruin/unpowered/no_grav) -"aX" = ( -/obj/effect/decal/cleanable/shreds, -/turf/open/floor/plating/asteroid/airless, -/area/ruin/unpowered/no_grav) -"aY" = ( -/obj/effect/decal/remains/human, -/obj/item/clothing/suit/space, -/turf/open/floor/plating/asteroid/airless, -/area/ruin/unpowered/no_grav) -"aZ" = ( -/obj/structure/fluff/bus/passable, -/obj/effect/decal/cleanable/dirt, -/obj/item/weapon/reagent_containers/food/snacks/faggot, -/turf/open/floor/plasteel/airless/black{ - icon_state = "bus" - }, -/area/ruin/unpowered/no_grav) -"ba" = ( -/obj/structure/fluff/bus/passable, -/obj/item/weapon/banhammer, -/turf/open/floor/plasteel/airless/black{ - icon_state = "bus" - }, -/area/ruin/unpowered/no_grav) -"bb" = ( -/obj/item/stack/sheet/metal{ - amount = 50 - }, -/turf/open/floor/plating/asteroid/airless, -/area/ruin/unpowered/no_grav) - -(1,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -"} -(2,1,1) = {" -aa -aa -aa -aa -aa -ab -ab -ab -ad -ad -ad -au -aa -ad -ad -ad -aa -aa -"} -(3,1,1) = {" -aa -aa -aa -aa -ab -ab -ab -ab -ad -ad -aw -ad -ad -ad -ad -ad -ad -aa -"} -(4,1,1) = {" -aa -aa -aa -ab -ab -ab -ab -ab -ad -aw -ad -aP -aj -aU -az -aI -ad -ad -"} -(5,1,1) = {" -aa -aa -aa -ab -ab -ab -ab -ad -al -ad -ad -ad -aj -am -aZ -aK -ad -ad -"} -(6,1,1) = {" -aa -aa -ab -ab -ab -ab -ad -ad -ad -ad -aw -ad -aj -aV -ba -aL -ad -ad -"} -(7,1,1) = {" -aa -aa -ab -ab -ab -ad -ad -aj -am -ax -aI -ad -aj -aU -az -aJ -ad -ad -"} -(8,1,1) = {" -aa -ab -ab -ab -ab -ad -ad -aj -an -ay -aJ -ad -aj -aW -aE -aM -ad -ad -"} -(9,1,1) = {" -aa -ab -ab -ab -ab -ae -ad -aj -am -az -aK -ad -ak -at -aF -aN -ad -ad -"} -(10,1,1) = {" -ab -ab -ab -ab -ab -ab -ad -aj -ao -aA -aJ -aQ -ad -aX -ad -ad -ad -aa -"} -(11,1,1) = {" -ab -ab -ab -ab -ab -ab -ad -aj -ap -aB -aJ -ad -aR -ad -ad -au -ad -aa -"} -(12,1,1) = {" -ab -ab -ab -ab -ab -ab -ad -aj -aq -aC -aL -ad -ad -aY -ad -ad -aa -aa -"} -(13,1,1) = {" -aa -ab -ab -ab -ab -af -ad -aj -ar -ax -aJ -ad -aS -ad -bb -ad -aa -aa -"} -(14,1,1) = {" -ab -ab -ab -ab -ab -ag -ad -aj -am -aD -aJ -ad -aO -ad -ad -ad -aa -aa -"} -(15,1,1) = {" -ab -ab -ab -ab -ab -ah -ad -aj -as -aE -aM -ad -ad -aP -ad -aa -aa -aa -"} -(16,1,1) = {" -ab -ab -ab -ab -ab -ab -ai -ak -at -aF -aN -ad -ad -ad -ad -aa -aa -aa -"} -(17,1,1) = {" -aa -ab -ab -ab -ab -ab -ab -ad -au -ad -ad -au -ad -ad -ad -aa -aa -aa -"} -(18,1,1) = {" -aa -aa -ab -ab -ab -ab -ab -ab -ad -ad -aO -ad -ad -ad -ad -aa -aa -aa -"} -(19,1,1) = {" -aa -aa -aa -ab -ab -ab -ab -ab -ab -ad -ad -ad -aT -ad -ad -aa -aa -aa -"} -(20,1,1) = {" -aa -aa -aa -aa -ab -ab -ab -ab -ab -ab -ad -ad -ad -ad -aa -aa -aa -aa -"} -(21,1,1) = {" -aa -aa -aa -aa -aa -ab -ab -ab -ad -aG -ad -ad -ad -ad -aa -aa -aa -aa -"} -(22,1,1) = {" -aa -ac -aa -aa -aa -aa -aa -ad -av -aH -ad -ad -aa -aa -aa -aa -aa -aa -"} -(23,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -"} diff --git a/_maps/RandomRuins/SpaceRuins/caravanambush.dmm b/_maps/RandomRuins/SpaceRuins/caravanambush.dmm deleted file mode 100644 index 5d476e66a4..0000000000 --- a/_maps/RandomRuins/SpaceRuins/caravanambush.dmm +++ /dev/null @@ -1,230 +0,0 @@ -"aa" = (/turf/open/space,/area/space) -"ab" = (/turf/closed/wall/mineral/plastitanium,/area/ruin/powered) -"ac" = (/obj/machinery/door/airlock/external{icon_state = "door_locked"; locked = 1},/turf/open/floor/plasteel,/area/ruin/powered) -"ad" = (/turf/closed/wall,/area/ruin/powered) -"ae" = (/turf/open/space,/turf/closed/wall/mineral/plastitanium{dir = 1; icon_state = "diagonalWall3"},/area/ruin/powered) -"af" = (/obj/machinery/suit_storage_unit,/turf/open/floor/plasteel,/area/ruin/powered) -"ag" = (/turf/open/floor/plasteel,/area/ruin/powered) -"ah" = (/turf/open/floor/plating/airless,/area/ruin/powered) -"ai" = (/obj/machinery/door/airlock/external,/turf/open/floor/plasteel,/area/ruin/powered) -"aj" = (/obj/structure/statue/silver/medborg,/turf/open/floor/plasteel,/area/ruin/powered) -"ak" = (/mob/living/simple_animal/hostile/pirate/ranged{environment_smash = 0},/turf/open/floor/plasteel,/area/ruin/powered) -"al" = (/obj/structure/closet/emcloset,/turf/open/floor/plasteel,/area/ruin/powered) -"am" = (/obj/structure/closet{name = "pirate outfits"},/obj/item/clothing/head/collectable/pirate,/obj/item/clothing/suit/pirate,/obj/item/clothing/under/pirate,/obj/item/clothing/shoes/jackboots,/obj/item/clothing/head/bandana,/turf/open/floor/plasteel,/area/ruin/powered) -"an" = (/obj/structure/table,/obj/item/stack/sheet/mineral/gold{amount = 25},/obj/item/weapon/coin/plasma,/turf/open/floor/plasteel,/area/ruin/powered) -"ao" = (/obj/structure/table,/obj/item/stack/sheet/mineral/gold{amount = 25},/obj/item/weapon/coin/gold,/obj/item/weapon/coin/gold,/obj/item/weapon/coin/mythril,/obj/item/weapon/coin/plasma,/turf/open/floor/plasteel,/area/ruin/powered) -"ap" = (/obj/structure/table,/obj/item/weapon/coin/gold,/obj/item/weapon/coin/gold,/obj/item/weapon/coin/gold,/obj/item/weapon/coin/mythril,/obj/item/weapon/coin/plasma,/turf/open/floor/plasteel,/area/ruin/powered) -"aq" = (/obj/structure/table,/mob/living/simple_animal/parrot{faction = list("pirate"); name = "Pegwing"},/turf/open/floor/plasteel,/area/ruin/powered) -"ar" = (/obj/structure/shuttle/engine/propulsion/burst{dir = 4},/turf/open/floor/plating/airless,/area/ruin/powered) -"as" = (/obj/structure/shuttle/engine/heater{icon_state = "heater"; dir = 8},/turf/closed/wall/mineral/plastitanium,/area/ruin/powered) -"at" = (/obj/structure/bed,/obj/item/weapon/bedsheet/brown,/turf/open/floor/plasteel,/area/ruin/powered) -"au" = (/obj/structure/chair{dir = 1},/turf/open/floor/plasteel,/area/ruin/powered) -"av" = (/obj/structure/rack,/obj/item/weapon/storage/bag/money/vault,/turf/open/floor/plasteel,/area/ruin/powered) -"aw" = (/obj/structure/closet/crate/secure/loot,/turf/open/floor/plasteel,/area/ruin/powered) -"ax" = (/obj/structure/table,/turf/open/floor/plasteel,/area/ruin/powered) -"ay" = (/obj/machinery/computer,/turf/open/floor/plasteel,/area/ruin/powered) -"az" = (/obj/structure/table,/obj/item/weapon/storage/bag/money/vault,/turf/open/floor/plasteel,/area/ruin/powered) -"aA" = (/obj/structure/closet/crate{icon_state = "crateopen"; opened = 1},/obj/item/stack/sheet/mineral/gold{amount = 25},/obj/item/stack/sheet/mineral/bananium{amount = 5},/obj/item/stack/sheet/mineral/silver{amount = 25},/obj/item/stack/sheet/mineral/uranium{amount = 10},/obj/item/stack/sheet/mineral/diamond{amount = 5},/turf/open/floor/plasteel,/area/ruin/powered) -"aB" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/ruin/powered) -"aC" = (/turf/closed/mineral,/area/ruin/unpowered/no_grav) -"aD" = (/obj/item/stack/rods,/turf/open/space,/area/space) -"aE" = (/obj/structure/fluff/broken_flooring{tag = "icon-pile (EAST)"; icon_state = "pile"; dir = 4},/turf/open/space,/area/space) -"aF" = (/mob/living/simple_animal/hostile/pirate,/turf/open/floor/plasteel,/area/ruin/powered) -"aG" = (/obj/structure/chair{dir = 1},/mob/living/simple_animal/hostile/pirate,/turf/open/floor/plasteel,/area/ruin/powered) -"aH" = (/turf/open/floor/plating/asteroid/airless,/area/ruin/unpowered/no_grav) -"aI" = (/turf/closed/wall/mineral/plastitanium,/area/ruin/unpowered/no_grav) -"aJ" = (/obj/machinery/door/airlock/external{icon_state = "door_locked"; locked = 1},/turf/open/floor/plating,/area/ruin/unpowered/no_grav) -"aK" = (/turf/closed/wall/mineral/iron,/area/ruin/unpowered/no_grav) -"aL" = (/obj/item/weapon/coin/mythril,/turf/open/floor/plasteel,/area/ruin/powered) -"aM" = (/obj/structure/chair,/turf/open/floor/plasteel,/area/ruin/powered) -"aN" = (/obj/structure/shuttle/engine/propulsion/burst{dir = 4},/turf/open/floor/plating/airless,/area/ruin/unpowered/no_grav) -"aO" = (/obj/structure/shuttle/engine/heater{icon_state = "heater"; dir = 8},/turf/closed/wall/mineral/plastitanium,/area/ruin/unpowered/no_grav) -"aP" = (/obj/structure/chair,/obj/item/weapon/shard,/obj/item/stack/sheet/metal,/turf/open/floor/plasteel/airless/shuttle/red,/area/ruin/unpowered/no_grav) -"aQ" = (/obj/structure/chair,/obj/effect/decal/cleanable/shreds,/turf/open/floor/plasteel/airless/shuttle/red,/area/ruin/unpowered/no_grav) -"aR" = (/obj/item/weapon/shard,/turf/open/floor/plasteel/airless/shuttle/red,/area/ruin/unpowered/no_grav) -"aS" = (/turf/open/floor/plating/airless{icon_plating = "platingdmg1"; icon_state = "platingdmg1"},/area/ruin/unpowered/no_grav) -"aT" = (/obj/structure/fluff/broken_flooring{tag = "icon-singular"; icon_state = "singular"},/turf/open/space,/area/space) -"aU" = (/obj/structure/rack,/obj/item/weapon/tank/internals/plasma/full,/obj/item/weapon/tank/internals/plasma/full,/obj/item/weapon/tank/internals/plasma/full,/turf/open/floor/plasteel,/area/ruin/powered) -"aV" = (/obj/structure/fluff/broken_flooring{tag = "icon-singular"; icon_state = "singular"},/obj/effect/decal/cleanable/shreds,/turf/open/floor/plasteel/airless/shuttle/red,/area/ruin/unpowered/no_grav) -"aW" = (/obj/effect/gibspawner/human,/turf/open/floor/plasteel/airless/shuttle/red,/area/ruin/unpowered/no_grav) -"aX" = (/turf/open/space,/turf/open/floor/plating/airless{icon = 'icons/obj/smooth_structures/lattice.dmi'; icon_plating = "lattice"; icon_state = "lattice"; name = "anchor chain"},/area/space) -"aY" = (/obj/structure/statue/gold/cmo,/turf/open/floor/plasteel,/area/ruin/powered) -"aZ" = (/obj/structure/table,/obj/item/weapon/paper_bin,/obj/item/weapon/pen,/turf/open/floor/plasteel,/area/ruin/powered) -"ba" = (/obj/structure/table,/obj/item/stack/sheet/mineral/gold{amount = 25},/turf/open/floor/plasteel,/area/ruin/powered) -"bb" = (/turf/open/space,/turf/closed/wall/mineral/plastitanium{dir = 4; icon_state = "diagonalWall3"},/area/ruin/powered) -"bc" = (/obj/structure/chair{dir = 1},/obj/item/stack/rods,/obj/effect/gibspawner/human,/turf/open/floor/plasteel/airless/shuttle/red,/area/ruin/unpowered/no_grav) -"bd" = (/obj/structure/chair{dir = 1},/obj/item/weapon/shard,/obj/item/stack/sheet/metal,/obj/effect/decal/cleanable/shreds,/turf/open/floor/plasteel/airless/shuttle/red,/area/ruin/unpowered/no_grav) -"be" = (/turf/open/floor/plasteel/airless/shuttle/red,/area/ruin/unpowered/no_grav) -"bf" = (/obj/item/stack/sheet/metal,/turf/open/floor/plating/asteroid/airless,/area/ruin/unpowered/no_grav) -"bg" = (/turf/open/floor/wood/airless,/area/ruin/unpowered/no_grav) -"bh" = (/obj/structure/closet/crate/secure/weapon,/obj/item/weapon/gun/ballistic/automatic/pistol/APS,/turf/open/floor/wood/airless,/area/ruin/unpowered/no_grav) -"bi" = (/mob/living/simple_animal/hostile/pirate/space{environment_smash = 0},/turf/open/floor/wood/airless,/area/ruin/unpowered/no_grav) -"bj" = (/obj/structure/closet/crate/secure/weapon,/obj/item/weapon/gun/ballistic/shotgun/automatic/dual_tube,/turf/open/floor/wood/airless,/area/ruin/unpowered/no_grav) -"bk" = (/obj/structure/girder,/turf/open/space,/area/space) -"bl" = (/turf/closed/wall/mineral/titanium,/area/ruin/unpowered) -"bm" = (/turf/open/floor/plating,/obj/machinery/door/poddoor{id = "caravantrade1"; name = "cargo blastdoor"},/turf/open/floor/plating/airless{icon_plating = "platingdmg2"; icon_state = "platingdmg2"},/area/ruin/unpowered) -"bn" = (/turf/open/floor/plating/airless{icon_plating = "platingdmg1"; icon_state = "platingdmg1"},/area/ruin/unpowered) -"bo" = (/turf/open/floor/mineral/titanium/yellow,/obj/structure/door_assembly/door_assembly_titanium{density = 0; name = "broken airlock"},/turf/open/floor/plating/airless{icon_plating = "platingdmg2"; icon_state = "platingdmg2"},/area/ruin/unpowered) -"bp" = (/turf/closed/wall/mineral/titanium/overspace,/area/ruin/unpowered) -"bq" = (/obj/structure/fluff/broken_flooring{tag = "icon-pile (WEST)"; icon_state = "pile"; dir = 8},/turf/open/space,/area/space) -"br" = (/obj/item/stack/sheet/metal,/turf/open/space,/area/space) -"bs" = (/obj/structure/lattice,/turf/open/space,/area/space) -"bt" = (/turf/open/floor/plating/airless{icon_plating = "platingdmg3"; icon_state = "platingdmg3"},/obj/effect/decal/cleanable/dirt,/turf/open/floor/plating/airless{icon_plating = "platingdmg2"; icon_state = "platingdmg2"},/area/ruin/unpowered) -"bu" = (/obj/item/stack/sheet/metal,/obj/effect/decal/cleanable/dirt,/obj/item/stack/rods,/turf/open/floor/plating/airless{icon_plating = "platingdmg3"; icon_state = "platingdmg3"},/area/ruin/unpowered) -"bv" = (/obj/effect/decal/cleanable/dirt,/turf/open/floor/mineral/titanium/blue,/area/ruin/unpowered) -"bw" = (/turf/open/floor/mineral/titanium/blue,/area/ruin/unpowered) -"bx" = (/obj/machinery/button/door{pixel_x = 24},/turf/open/floor/mineral/titanium/blue,/area/ruin/unpowered) -"by" = (/obj/structure/bed,/obj/item/weapon/bedsheet/black,/turf/open/floor/mineral/titanium/blue,/area/ruin/unpowered) -"bz" = (/turf/open/floor/mineral/titanium/blue,/turf/closed/wall/mineral/titanium/interior,/area/ruin/unpowered) -"bA" = (/obj/structure/fluff/broken_flooring{tag = "icon-pile"; icon_state = "pile"},/turf/open/space,/area/space) -"bB" = (/obj/effect/decal/cleanable/dirt,/turf/open/floor/plating/airless{icon_plating = "platingdmg1"; icon_state = "platingdmg1"},/area/ruin/unpowered) -"bC" = (/turf/open/floor/plating/airless{icon_plating = "platingdmg3"; icon_state = "platingdmg3"},/area/ruin/unpowered) -"bD" = (/obj/structure/closet/crate/secure/gear,/obj/item/ammo_casing/shotgun/techshell,/obj/item/ammo_casing/shotgun/techshell,/obj/item/ammo_casing/shotgun/techshell,/obj/item/ammo_casing/shotgun/pulseslug,/obj/item/weapon/storage/box/lethalshot,/turf/open/floor/mineral/titanium/yellow,/area/ruin/unpowered) -"bE" = (/obj/effect/decal/cleanable/dirt,/turf/open/floor/mineral/titanium/yellow,/area/ruin/unpowered) -"bF" = (/mob/living/simple_animal/hostile/pirate/space/ranged{environment_smash = 0},/turf/open/floor/mineral/titanium/yellow,/area/ruin/unpowered) -"bG" = (/turf/open/floor/mineral/titanium/yellow,/area/ruin/unpowered) -"bH" = (/mob/living/simple_animal/hostile/pirate/space{environment_smash = 0},/turf/open/floor/mineral/titanium/blue,/area/ruin/unpowered) -"bI" = (/obj/structure/table,/obj/item/weapon/storage/firstaid/regular,/turf/open/floor/mineral/titanium/blue,/area/ruin/unpowered) -"bJ" = (/turf/open/floor/plating,/obj/structure/grille,/obj/structure/window/shuttle,/turf/open/floor/plating/airless{icon_plating = "platingdmg2"; icon_state = "platingdmg2"},/area/ruin/unpowered) -"bK" = (/obj/structure/fluff/broken_flooring{tag = "icon-plating (NORTH)"; icon_state = "plating"; dir = 1},/turf/open/space,/area/space) -"bL" = (/obj/machinery/door/airlock/titanium,/turf/open/floor/mineral/titanium/yellow,/area/ruin/unpowered) -"bM" = (/obj/effect/decal/cleanable/blood,/turf/open/floor/mineral/titanium/blue,/area/ruin/unpowered) -"bN" = (/obj/structure/table,/obj/item/weapon/paper_bin,/obj/item/weapon/pen,/turf/open/floor/mineral/titanium/blue,/area/ruin/unpowered) -"bO" = (/obj/machinery/door/airlock/titanium,/turf/open/floor/plating/airless{icon_plating = "platingdmg3"; icon_state = "platingdmg3"},/area/ruin/unpowered) -"bP" = (/turf/open/space,/turf/closed/wall/mineral/plastitanium{dir = 8; icon_state = "diagonalWall3"},/area/ruin/powered) -"bQ" = (/obj/structure/fluff/broken_flooring{tag = "icon-plating (NORTH)"; icon_state = "plating"; dir = 1},/obj/structure/lattice,/turf/open/space,/area/space) -"bR" = (/obj/structure/girder,/turf/open/floor/plating/airless{icon_plating = "platingdmg3"; icon_state = "platingdmg3"},/area/ruin/unpowered) -"bS" = (/obj/structure/girder,/turf/open/floor/plating/airless{icon_plating = "platingdmg2"; icon_state = "platingdmg2"},/area/ruin/unpowered) -"bT" = (/obj/item/stack/sheet/metal,/obj/effect/decal/cleanable/dirt,/turf/open/floor/plating/airless{icon_plating = "platingdmg1"; icon_state = "platingdmg1"},/area/ruin/unpowered) -"bU" = (/obj/item/stack/rods,/obj/effect/decal/cleanable/dirt,/turf/open/floor/plating/airless{icon_plating = "platingdmg3"; icon_state = "platingdmg3"},/area/ruin/unpowered) -"bV" = (/obj/structure/closet/crate/secure/gear,/obj/item/ammo_casing/shotgun/frag12,/obj/item/ammo_casing/shotgun/frag12,/obj/item/ammo_casing/shotgun/frag12,/obj/item/ammo_casing/shotgun/frag12,/obj/item/weapon/storage/box/beanbag,/obj/item/weapon/storage/box/rubbershot,/turf/open/floor/mineral/titanium/yellow,/area/ruin/unpowered) -"bW" = (/obj/structure/closet/crate/secure/gear,/obj/item/ammo_box/c10mm,/obj/item/ammo_casing/shotgun/meteorshot,/obj/item/ammo_casing/shotgun/meteorshot,/obj/item/ammo_casing/shotgun/meteorshot,/turf/open/floor/mineral/titanium/yellow,/area/ruin/unpowered) -"bX" = (/obj/structure/closet/crate/secure/gear,/obj/item/ammo_box/a40mm,/obj/item/ammo_box/a40mm,/turf/open/floor/mineral/titanium/yellow,/area/ruin/unpowered) -"bY" = (/obj/structure/chair{dir = 4},/obj/effect/mob_spawn/human/corpse/nanotrasensoldier,/obj/effect/decal/cleanable/blood,/turf/open/floor/mineral/titanium/blue,/area/ruin/unpowered) -"bZ" = (/obj/machinery/computer,/turf/open/floor/mineral/titanium/blue,/area/ruin/unpowered) -"ca" = (/obj/structure/shuttle/engine/propulsion/burst/left{tag = "icon-burst_l (EAST)"; icon_state = "burst_l"; dir = 4},/turf/open/floor/plating/airless,/area/ruin/unpowered) -"cb" = (/obj/structure/shuttle/engine/heater{icon_state = "heater"; dir = 8},/turf/closed/wall/mineral/titanium,/area/ruin/unpowered) -"cc" = (/obj/structure/table,/turf/open/floor/mineral/titanium/blue,/area/ruin/unpowered) -"cd" = (/obj/effect/decal/cleanable/dirt,/obj/structure/bed,/obj/item/weapon/bedsheet/black,/turf/open/floor/mineral/titanium/blue,/area/ruin/unpowered) -"ce" = (/obj/structure/table,/turf/open/floor/mineral/plastitanium,/area/ruin/powered) -"cf" = (/obj/machinery/computer,/turf/open/floor/mineral/plastitanium,/area/ruin/powered) -"cg" = (/obj/structure/fluff/broken_flooring{tag = "icon-plating (EAST)"; icon_state = "plating"; dir = 4},/obj/structure/lattice,/turf/open/space,/area/space) -"ch" = (/turf/open/space,/obj/item/stack/rods,/obj/effect/decal/cleanable/dirt,/turf/open/floor/plating/airless{icon_plating = "platingdmg2"; icon_state = "platingdmg2"},/area/ruin/unpowered) -"ci" = (/obj/effect/decal/cleanable/dirt,/turf/open/floor/plating/airless{icon_plating = "platingdmg3"; icon_state = "platingdmg3"},/area/ruin/unpowered) -"cj" = (/turf/open/floor/plating/airless,/area/ruin/unpowered) -"ck" = (/obj/structure/closet/crate/secure/weapon,/obj/item/weapon/gun/ballistic/revolver/grenadelauncher/unrestricted,/turf/open/floor/mineral/titanium/yellow,/area/ruin/unpowered) -"cl" = (/mob/living/simple_animal/hostile/pirate/space{environment_smash = 0},/turf/open/floor/mineral/titanium/yellow,/area/ruin/unpowered) -"cm" = (/obj/structure/door_assembly/door_assembly_titanium{density = 0; name = "broken airlock"},/turf/open/floor/mineral/titanium/yellow,/area/ruin/unpowered) -"cn" = (/obj/structure/table,/obj/item/device/gps{gpstag = "Distress Signal"},/turf/open/floor/mineral/titanium/blue,/area/ruin/unpowered) -"co" = (/obj/structure/shuttle/engine/propulsion/burst{dir = 4},/turf/open/floor/plating/airless,/area/ruin/unpowered) -"cp" = (/obj/structure/closet/crate/secure/engineering,/obj/item/weapon/storage/toolbox/mechanical,/obj/item/weapon/storage/toolbox/mechanical,/obj/item/weapon/storage/toolbox/electrical,/obj/item/weapon/storage/toolbox/electrical,/obj/item/clothing/gloves/color/yellow,/turf/open/floor/mineral/titanium/yellow,/area/ruin/unpowered) -"cq" = (/obj/item/weapon/shard,/obj/effect/decal/cleanable/dirt,/turf/open/floor/mineral/titanium/blue,/area/ruin/unpowered) -"cr" = (/obj/structure/table_frame,/obj/effect/decal/cleanable/dirt,/turf/open/floor/mineral/titanium/blue,/area/ruin/unpowered) -"cs" = (/turf/open/floor/mineral/plastitanium,/area/ruin/powered) -"ct" = (/obj/structure/chair{dir = 1},/mob/living/simple_animal/hostile/syndicate{environment_smash = 0; name = "Syndicate Salvage Pilot"},/turf/open/floor/mineral/plastitanium,/area/ruin/powered) -"cu" = (/obj/structure/closet/crate/secure/engineering,/obj/item/weapon/wrench{color = "#ff0000"; desc = "A prototype of a new wrench design, allegedly the red color scheme makes it go faster."; name = "experimental wrench"; toolspeed = 3},/obj/item/weapon/screwdriver{color = "#ff0000"; desc = "A prototype of a new screwdriver design, allegedly the red color scheme makes it go faster."; name = "experimental screwdriver"; toolspeed = 3},/obj/item/weapon/wirecutters{color = "#ff0000"; desc = "A prototype of a new wirecutter design, allegedly the red color scheme makes it go faster."; name = "experimental wirecutters"; toolspeed = 3},/obj/item/weapon/crowbar/red{color = "#ff0000"; desc = "A prototype of a new crowbar design, allegedly the red color scheme makes it go faster."; name = "experimental crowbar"; toolspeed = 3},/turf/open/floor/mineral/plastitanium,/area/ruin/powered) -"cv" = (/obj/effect/decal/cleanable/dirt,/mob/living/simple_animal/hostile/syndicate/ranged/space{environment_smash = 0; name = "Syndicate Salvage Worker"},/turf/open/floor/mineral/titanium/blue,/area/ruin/unpowered) -"cw" = (/obj/item/stack/rods,/turf/open/floor/plating/airless{icon_plating = "platingdmg3"; icon_state = "platingdmg3"},/area/ruin/unpowered) -"cx" = (/turf/open/space,/obj/effect/decal/cleanable/dirt,/turf/open/floor/plating/airless{icon_plating = "platingdmg2"; icon_state = "platingdmg2"},/area/ruin/unpowered) -"cy" = (/obj/effect/decal/cleanable/dirt,/obj/effect/decal/cleanable/dirt,/obj/structure/girder,/turf/open/floor/plating/airless{icon_plating = "platingdmg3"; icon_state = "platingdmg3"},/area/ruin/unpowered) -"cz" = (/obj/item/stack/sheet/metal,/obj/effect/decal/cleanable/dirt,/turf/open/floor/plating/airless{icon_plating = "platingdmg3"; icon_state = "platingdmg3"},/area/ruin/unpowered) -"cA" = (/obj/structure/closet/crate/secure/weapon,/obj/item/weapon/gun/ballistic/shotgun/riot,/obj/item/weapon/gun/ballistic/shotgun/riot,/turf/open/floor/mineral/titanium/yellow,/area/ruin/unpowered) -"cB" = (/obj/structure/closet/crate/secure/weapon,/obj/item/weapon/gun/syringe/syndicate,/obj/item/weapon/gun/syringe/rapidsyringe,/turf/open/floor/mineral/titanium/yellow,/area/ruin/unpowered) -"cC" = (/obj/structure/closet/crate/secure/weapon,/obj/item/weapon/gun/ballistic/automatic/c20r/toy/unrestricted,/obj/item/weapon/gun/ballistic/automatic/c20r/toy/unrestricted,/turf/open/floor/mineral/titanium/yellow,/area/ruin/unpowered) -"cD" = (/mob/living/simple_animal/hostile/pirate/space/ranged{environment_smash = 0},/turf/open/floor/mineral/titanium/blue,/area/ruin/unpowered) -"cE" = (/obj/structure/table,/obj/item/weapon/clipboard,/turf/open/floor/mineral/titanium/blue,/area/ruin/unpowered) -"cF" = (/obj/structure/shuttle/engine/propulsion/burst/right{tag = "icon-burst_r (EAST)"; icon_state = "burst_r"; dir = 4},/turf/open/floor/plating/airless,/area/ruin/unpowered) -"cG" = (/mob/living/simple_animal/hostile/syndicate/melee/space{environment_smash = 0; name = "Syndicate Salvage Worker"},/turf/open/floor/mineral/titanium/yellow,/area/ruin/unpowered) -"cH" = (/obj/item/stack/rods,/obj/effect/decal/cleanable/dirt,/turf/open/floor/plating/airless{icon_plating = "platingdmg1"; icon_state = "platingdmg1"},/area/ruin/unpowered) -"cI" = (/obj/structure/grille/broken,/obj/item/weapon/shard,/turf/open/floor/plating/airless{icon_plating = "platingdmg1"; icon_state = "platingdmg1"},/area/ruin/unpowered) -"cJ" = (/obj/structure/closet/crate/secure/engineering,/obj/item/clothing/gloves/color/yellow,/obj/item/clothing/gloves/color/yellow,/turf/open/floor/mineral/plastitanium,/area/ruin/powered) -"cK" = (/obj/structure/closet/crate,/obj/item/stack/sheet/plasteel/twenty,/obj/item/stack/sheet/plasteel/twenty,/obj/effect/decal/cleanable/dirt,/turf/open/floor/mineral/titanium/yellow,/area/ruin/unpowered) -"cL" = (/obj/item/stack/sheet/metal,/obj/effect/decal/cleanable/dirt,/turf/open/floor/mineral/titanium/yellow,/area/ruin/unpowered) -"cM" = (/obj/effect/decal/cleanable/dirt,/obj/effect/decal/cleanable/dirt,/turf/open/floor/plating/airless{icon_plating = "platingdmg3"; icon_state = "platingdmg3"},/area/ruin/unpowered) -"cN" = (/obj/structure/closet/crate/secure/plasma,/obj/item/weapon/tank/internals/plasma/full,/obj/item/weapon/tank/internals/plasma/full,/obj/item/stack/sheet/mineral/plasma{amount = 25},/turf/open/floor/mineral/titanium/yellow,/area/ruin/unpowered) -"cO" = (/obj/item/weapon/shard,/turf/open/floor/mineral/titanium/blue,/area/ruin/unpowered) -"cP" = (/obj/item/chair,/obj/effect/mob_spawn/human/corpse/nanotrasensoldier,/obj/effect/decal/cleanable/blood,/turf/open/floor/mineral/titanium/blue,/area/ruin/unpowered) -"cQ" = (/obj/item/stack/rods,/obj/item/stack/sheet/metal,/turf/open/floor/plating/airless{icon_plating = "platingdmg1"; icon_state = "platingdmg1"},/area/ruin/unpowered) -"cR" = (/obj/structure/fluff/broken_flooring{tag = "icon-plating (WEST)"; icon_state = "plating"; dir = 8},/obj/structure/lattice,/turf/open/space,/area/space) -"cS" = (/obj/machinery/door/airlock/external{icon_state = "door_locked"; locked = 1},/turf/open/floor/plating,/area/ruin/powered) -"cT" = (/obj/machinery/porta_turret/syndicate/pod,/turf/open/floor/plating/airless,/area/ruin/powered) -"cU" = (/obj/effect/decal/cleanable/dirt,/mob/living/simple_animal/hostile/syndicate/melee/space/stormtrooper{environment_smash = 0; name = "Syndicate Salvage Leader"},/turf/open/floor/mineral/titanium/yellow,/area/ruin/unpowered) -"cV" = (/obj/structure/chair{dir = 4},/obj/effect/decal/cleanable/blood,/turf/open/floor/mineral/titanium/blue,/area/ruin/unpowered) -"cW" = (/obj/structure/closet/crate/secure/plasma,/obj/item/weapon/tank/internals/plasma/full,/obj/item/stack/sheet/mineral/plasma{amount = 25},/turf/open/floor/mineral/titanium/yellow,/area/ruin/unpowered) -"cX" = (/obj/structure/closet/crate/secure/engineering,/obj/item/organ/cyberimp/arm/toolset,/obj/item/organ/cyberimp/arm/toolset,/turf/open/floor/mineral/titanium/yellow,/area/ruin/unpowered) -"cY" = (/obj/structure/closet/crate/secure/plasma,/obj/item/mecha_parts/mecha_equipment/weapon/energy/plasma,/turf/open/floor/mineral/titanium/yellow,/area/ruin/unpowered) -"cZ" = (/mob/living/simple_animal/hostile/syndicate/ranged/space/stormtrooper{environment_smash = 0; name = "Syndicate Salvage Leader"},/turf/open/floor/mineral/titanium/yellow,/area/ruin/unpowered) -"da" = (/obj/item/stack/rods,/obj/item/weapon/shard,/mob/living/simple_animal/hostile/syndicate/melee/space{environment_smash = 0; name = "Syndicate Salvage Worker"},/turf/open/floor/mineral/titanium/blue,/area/ruin/unpowered) -"db" = (/obj/item/weapon/shard,/turf/open/floor/plating/airless{icon_plating = "platingdmg1"; icon_state = "platingdmg1"},/area/ruin/unpowered) -"dc" = (/obj/item/weapon/shard,/turf/open/space,/area/space) -"dd" = (/obj/structure/chair{dir = 4},/turf/open/floor/mineral/plastitanium,/area/ruin/powered) -"de" = (/obj/structure/closet/crate/secure/plasma,/obj/item/stack/sheet/mineral/plasma{amount = 25},/obj/item/stack/sheet/mineral/plasma{amount = 25},/obj/item/weapon/tank/internals/plasma/full,/obj/item/weapon/tank/internals/plasma/full,/turf/open/floor/mineral/plastitanium,/area/ruin/powered) -"df" = (/obj/structure/chair{dir = 8},/turf/open/floor/mineral/plastitanium,/area/ruin/powered) -"dg" = (/obj/structure/closet/crate,/obj/item/stack/sheet/rglass{amount = 20},/obj/item/stack/sheet/rglass{amount = 20},/turf/open/floor/mineral/titanium/yellow,/area/ruin/unpowered) -"dh" = (/obj/structure/closet/crate{icon_state = "crateopen"; opened = 1},/obj/item/stack/sheet/mineral/gold{amount = 25},/obj/item/stack/sheet/mineral/bananium{amount = 5},/turf/open/floor/mineral/titanium/yellow,/area/ruin/unpowered) -"di" = (/obj/structure/closet/crate{icon_state = "crateopen"; opened = 1},/obj/item/stack/sheet/mineral/silver{amount = 25},/obj/item/stack/sheet/mineral/uranium{amount = 10},/turf/open/floor/mineral/titanium/yellow,/area/ruin/unpowered) -"dj" = (/obj/effect/mob_spawn/human/corpse/nanotrasensoldier,/obj/effect/decal/cleanable/blood,/turf/open/floor/mineral/titanium/yellow,/area/ruin/unpowered) -"dk" = (/obj/structure/table,/obj/effect/decal/cleanable/dirt,/turf/open/floor/mineral/titanium/blue,/area/ruin/unpowered) -"dl" = (/obj/structure/closet/crate/secure/plasma,/obj/item/stack/sheet/mineral/plasma{amount = 25},/obj/item/weapon/tank/internals/plasma/full,/turf/open/floor/mineral/plastitanium,/area/ruin/powered) -"dm" = (/obj/structure/chair,/turf/open/floor/mineral/plastitanium,/area/ruin/powered) -"dn" = (/obj/structure/closet/crate,/obj/item/stack/sheet/mineral/gold{amount = 25},/obj/item/stack/sheet/mineral/silver{amount = 25},/turf/open/floor/mineral/plastitanium,/area/ruin/powered) -"do" = (/obj/structure/closet/crate,/obj/item/stack/sheet/metal/fifty,/obj/item/stack/sheet/metal/fifty,/obj/item/stack/sheet/glass/fifty,/obj/item/stack/sheet/glass/fifty,/obj/effect/decal/cleanable/dirt,/turf/open/floor/mineral/titanium/yellow,/area/ruin/unpowered) -"dp" = (/obj/structure/closet/crate,/obj/item/stack/sheet/mineral/silver{amount = 25},/turf/open/floor/mineral/titanium/yellow,/area/ruin/unpowered) -"dq" = (/mob/living/simple_animal/hostile/syndicate/ranged/space{environment_smash = 0; name = "Syndicate Salvage Worker"},/turf/open/floor/mineral/titanium/blue,/area/ruin/unpowered) -"dr" = (/obj/effect/decal/cleanable/dirt,/obj/item/weapon/clipboard,/turf/open/floor/mineral/titanium/blue,/area/ruin/unpowered) -"ds" = (/obj/structure/shuttle/engine/heater,/turf/closed/wall/mineral/plastitanium,/area/ruin/powered) -"dt" = (/obj/structure/closet/crate{icon_state = "crateopen"; opened = 1},/obj/item/stack/sheet/mineral/diamond{amount = 5},/obj/item/stack/sheet/mineral/gold{amount = 25},/turf/open/floor/mineral/plastitanium,/area/ruin/powered) -"du" = (/obj/structure/chair{dir = 4},/mob/living/simple_animal/hostile/syndicate{environment_smash = 0; name = "Syndicate Salvage Pilot"},/turf/open/floor/mineral/plastitanium,/area/ruin/powered) -"dv" = (/obj/structure/shuttle/engine/propulsion/burst,/turf/open/floor/plating/airless,/area/ruin/powered) -"dw" = (/obj/structure/chair{dir = 1},/turf/open/floor/mineral/plastitanium,/area/ruin/powered) -"dx" = (/obj/structure/closet/crate,/obj/item/stack/sheet/mineral/diamond{amount = 5},/obj/item/stack/sheet/mineral/uranium{amount = 10},/obj/item/stack/sheet/mineral/silver{amount = 25},/turf/open/floor/mineral/plastitanium,/area/ruin/powered) -"dy" = (/mob/living/simple_animal/hostile/syndicate/ranged/space/stormtrooper{environment_smash = 0; name = "Syndicate Salvage Leader"},/turf/open/floor/plating/asteroid/airless,/area/ruin/unpowered/no_grav) -"dz" = (/mob/living/simple_animal/hostile/syndicate/ranged/space{environment_smash = 0; name = "Syndicate Salvage Worker"},/turf/open/floor/plating/asteroid/airless,/area/ruin/unpowered/no_grav) - -(1,1,1) = {" -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaababacacadaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadafagagafabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabafagagafabahadahadaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabababaiaiadadadababababaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabadadajagakagalamanaoapaqabadababababadaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarasatatagatatagatatagauabavawaxayazaAaBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaCaCaCaCaCaCaCaaaaaaaaaaaaaaaaaaaaaaaaaaaaaDaaaEaaaaaaaaaaaaaaaaaaaaaaarasawaFagagagagagagakagagagagagaGagagaBaaaaaaaaaaaaaaaCaCaCaCaCaCaHaHaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaHaHaHaHaHaCaCaCaCaCaaaaaaaaaaaaaIaIaIaIaJaIaKaaaaaaaaaaaaaaaaaaaaaaaaaaaaarasawaLagagagagagagagagagagagagaMagagaBaaaaaaaaaaaaaaaCaCaCaCaCaCaHaHaHaHaHaHaHaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaCaCaHaHaHaHaHaHaCaCaCaCaCaCaaaaaaaaaNaOaPaQaRaKaSaTaDaaaaaaaaaaaaaaaaaaaaaaaaarasatatakatatagatataFaMabaUawaxayaxagaBaaaaaaaaaaaaaCaCaCaCaCaCaCaCaHaHaHaHaHaHaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaCaCaCaCaCaCaCaHaHaHaCaCaCaCaaaaaaaaaIaIaVaWaKaKaKaKaKaXaXaXaXaXaaaaaaaaaaaaabadadaYagagagalamazaZbaazabadadabababadbbaaaaaaaaaCaCaCaCaCaCaCaCaCaCaCaCaHaHaHaHaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaCaCaCaCaCaCaCaCaHaHaHaCaCaCaCaCaCaaaNaObcbdbeaKbeaSaaaDaaaaaaaXaXaXaXaXaXaXaXaXadadabaiaiabadadababababbbaaaaaaaaaaaaaaaaaaaCaCaCaCaCaCaCaCaCaCaCaCaHaHaCaCaCaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaCaCaCaCaCaCaCaCaHaHaHaHaCaCaCaaaIaIaIaIaJaIaKaIaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabafagagafabahadahadbbaaaaaaaaaaaaaaaaaaaaaCaCaCaCaCaCaCaCaCaCaCaCaHaCaCaCaCaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaCaCaCaCaCaCaCaCaCaCaCaHaHaCaCaaaaaaaaaaaaaaaDaaaaaTaaaaaaaaaaaaaaaaaaaaaaaaaaabafagagafabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaCaCaCaCaCaCaCaCaCaCaCaHaCaCaCaCaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaCaCaCaCaCaCaCaCaHaHaHaHaCaCaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabadacacadbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaHaHaHaCaCaCaCaCaCaCaHaHaCaCaCaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaHaHaHaHaHbfaHaHaHaCaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabgbgaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaHaHaHaHaHaHaHaHaHaHaHaHaCaCaCaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaHaHaHaHaHaHaHaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabgbhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaHaHaHaHaHaHaHaCaCaCaCaCaCaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabgbiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaHaHaHaHaHaHaHaHaCaCaCaCaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabjbgaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabgbgaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTbkblblblbmbmbnbnblboblbpaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTbraabsbtbubvbwbwbxblbwbybzbpaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaEaDbBbCbDbEbFbGblbwbHbIbJaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaDaaaabraabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabsaabKbBbCbEbGbGbGbLbMbwbNbJaaaaaaaaaaaaaaaaaablblblblblblbmbmbmbmblbOblbpaaaaaabPaBaBaBaeaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaablblblblbsaaaTaaaaaaaaaabQbRaaaaaaaaaaaaaaaaaaaaaaaaaablbSblbTbUbVbGbFbWbXblbwbYbZbJaaaaaaaaaaaaaaaaaaaacacbbwbwccbwbwbwbxblbwcdbzbpaaaaabcecfceabaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacbbvbCcgbraabsbschbBcibzbpaaaaaaaaaaaaaaaaaaaaaaaaaacjcbcibEbGckbGclbGcmbwbwcnbJaaaaaaaaaaaaaaaaaaaacocbbwbwbGbGbGcpbGblbwcqcrbnaaaaabcsctcuabaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacocbbwcvcicicwcxcicyczciccbJaaaaaaaaaaaaaaaaaaaaaaaaaacocbbwbwcAcBbGbGcCblbwcDcEbJaaaaaaaaaaaaaaaaaaaacFcbbwbGbGbGcGbGbGcmbwbvcHcIaaaaabcscJcsabaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacFcbbwcKbEcLcicMcLbEbGbwbNbJaaaaaaaaaaaaaaaaaaaaaaaaaacFcbbwbHccbwbwbwbxblbwbwbzbpaaaaaaaaaaaaaaaaaablblblbwbGcNbGbGcGbGblcOcPcQcRaaaacScscscscSaaaaaaaaaa -aaaaaaaaaaaaaaaacTaaaaaaaaaaaaaaaaaablblblbwbGbGbGbEcUbGblbGcVbZbJaaaaaaaaaaaaaaaaaaaaaaaablblblblblblbmbmbmbmblbOblbpaaaaaaaaaaaaaaaaaaaaaacacbbwcWbGcXbGcYcZcmbMdadbbsaadcabdddedfabaaaaaaaaaa -aaaaaaaaaaaaaaababababcSabababaeaaaaaacacbbwbGdgdhbGbGdicmdjbwccbJaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacocbbwbwbGbGbGbGbGblbwbvdkbnaaaaabdddldfabaaaaaaaaaa -aaaaaaaaaaaaaaarasdmdmcsdncsceaBaaaaaacocbbwbwbGcGdobGdpbldqbwcEbJaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacFcbbwbwccbwbwbwbxbldrbwbzbpaacTabdsabdsabcTaaaaaaaa -aaaaaaaaaaaaaaababdtcscscsducfaBaaaaaacFcbbwbwccbwbwbwbxblbwbwbzbpaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaCaCaHaHaHaCaCaCaaaaaaaaaaaaaaaaaaaaaablblblblblblbmbmbmbmblbOblbpaaaaaaabdvabdvabaaaaaaaaaa -aaaaaaaaaaaaaaarasdwdwcsdxcsceaBaaaablblblblblblbmbmbmbmblbOblbpaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaCaCaCaCaCaCaHaHaCaCaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaababababcSabababbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaCaCaCaCaCaCaCaHdyaCaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaacTaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaCaCaCaCaCaCaCaCaCaHaHaCaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaCaCaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaCaCaCaCaCaCaCaCaHdzaCaCaCaCaaaaaaaacTaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaCaCaCaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaCaCaCaCaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaCaCaCaCaCaCaCaHaHaCaCaCaCaCaaaaaaababababcSabababaeaaaaaaaaaaaaaaaaaaaaaCaCaCaCaCaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaCaCaCaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaCaaaaaaaCaaaaaaaaaaaaaaaaaaaaaaaaaCaCaCaCaCaCaCaHaHaCaCaCaHaHaaaaaaarasdmdmcscscsceaBaaaaaaaaaaaaaaaaaaaCaCaCaCaCaCaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaCaCaCaCaCaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaCaaaCaaaaaaaaaaaaaaaaaaaaaaaaaaaCaCaCaCdzaHaHaHaHaHaCaaaaaaababcscscscsducfaBaaaaaaaaaaaaaaaaaCaCaCaCaCaCaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaCaCaCaCaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaCaaaCaCaCaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaCaCaHaHdzaHaCaCaCaaaaaaarasdwdwcscscsceaBaaaaaaaaaaaaaaaaaCaCaCaCaCaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaCaCaCaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaCaaaaaaaCaCaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaCaCaCaCaCaCaCaaaaaaaaaaababababcSabababbbaaaaaaaaaaaaaaaaaCaCaCaCaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacTaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -"} diff --git a/_maps/RandomRuins/SpaceRuins/crashedclownship.dmm b/_maps/RandomRuins/SpaceRuins/crashedclownship.dmm index f571785a4d..7e76ca7404 100644 --- a/_maps/RandomRuins/SpaceRuins/crashedclownship.dmm +++ b/_maps/RandomRuins/SpaceRuins/crashedclownship.dmm @@ -1,29 +1,29 @@ "a" = (/turf/open/space,/area/space) -"b" = (/turf/closed/mineral/random,/area/ruin/unpowered/no_grav) -"c" = (/turf/open/floor/plating/asteroid/airless,/area/ruin/unpowered/no_grav) +"b" = (/turf/closed/mineral/random,/area/space) +"c" = (/turf/open/floor/plating/asteroid/airless,/area/space) "d" = (/turf/closed/wall/mineral/clown,/area/ruin/unpowered) "e" = (/obj/machinery/door/airlock/clown,/turf/open/floor/mineral/bananium/airless,/area/ruin/unpowered) -"f" = (/turf/open/floor/plating/asteroid/airless,/area/ruin/unpowered) -"g" = (/obj/effect/mob_spawn/human/clown,/turf/open/floor/mineral/bananium/airless,/area/ruin/unpowered) -"h" = (/turf/open/floor/mineral/bananium/airless,/area/ruin/unpowered) -"i" = (/obj/structure/closet/crate,/obj/item/weapon/ore/bananium,/obj/item/weapon/ore/bananium,/obj/item/weapon/ore/bananium,/obj/item/weapon/ore/bananium,/obj/item/weapon/ore/bananium,/turf/open/floor/mineral/bananium/airless,/area/ruin/unpowered) -"j" = (/obj/structure/closet/crate{icon_state = "crateopen"; opened = 1},/obj/item/weapon/ore/bananium,/turf/open/floor/mineral/bananium/airless,/area/ruin/unpowered) -"k" = (/obj/structure/closet/secure_closet{name = "clown locker"; req_access_txt = "46"},/obj/item/clothing/shoes/clown_shoes/banana_shoes,/obj/effect/spawner/lootdrop/maintenance{lootcount = 2; name = "2maintenance loot spawner"},/turf/open/floor/mineral/bananium/airless,/area/ruin/unpowered) -"l" = (/obj/structure/shuttle/engine/heater{color = "#FFFF00"; dir = 4; icon_state = "heater"},/obj/structure/window/reinforced{color = "#FFFF00"; dir = 8},/turf/open/floor/plating/airless{color = "#FFFF00"},/area/ruin/unpowered) -"m" = (/obj/structure/shuttle/engine/propulsion{color = "#FFFF00"; dir = 8; icon_state = "propulsion_l"},/turf/open/space,/area/ruin/unpowered) -"n" = (/turf/closed/mineral/random,/area/ruin/unpowered) -"o" = (/obj/item/weapon/shard{icon_state = "small"},/turf/open/floor/plating/asteroid/airless,/area/ruin/unpowered) -"p" = (/obj/item/weapon/ore/bananium,/turf/open/floor/mineral/bananium/airless,/area/ruin/unpowered) -"q" = (/obj/item/weapon/shard{icon_state = "medium"},/obj/structure/chair{dir = 8},/turf/open/floor/plating/asteroid/airless,/area/ruin/unpowered) -"r" = (/obj/effect/mob_spawn/human/clown{name = "Clown Pilot"},/turf/open/floor/mineral/bananium/airless,/area/ruin/unpowered) -"s" = (/obj/item/weapon/paper{info = "The call has gone out! Our ancestral home has been rediscovered! Not a small patch of land, but a true clown nation, a true Clown Planet! We're on our way home at last!"},/turf/open/floor/mineral/bananium/airless,/area/ruin/unpowered) -"t" = (/obj/structure/grille{color = "#FFFF00"},/obj/structure/window/reinforced{color = "#FFFF00"},/obj/structure/window/reinforced{color = "#FFFF00"; dir = 4},/obj/structure/window/reinforced{color = "#FFFF00"; dir = 8},/turf/open/floor/plating/airless{color = "#FFFF00"},/area/ruin/unpowered) -"u" = (/obj/item/weapon/shard,/obj/structure/chair{dir = 8},/turf/open/floor/mineral/bananium/airless,/area/ruin/unpowered) -"v" = (/obj/item/weapon/shard{icon_state = "medium"},/turf/open/floor/mineral/bananium/airless,/area/ruin/unpowered) -"w" = (/obj/item/weapon/storage/bag/ore,/turf/open/floor/mineral/bananium/airless,/area/ruin/unpowered) -"x" = (/obj/item/weapon/pickaxe,/turf/open/floor/mineral/bananium/airless,/area/ruin/unpowered) -"y" = (/obj/structure/closet/crate,/obj/item/weapon/ore/bananium,/obj/item/weapon/ore/bananium,/obj/item/weapon/ore/bananium,/obj/item/weapon/ore/bananium,/turf/open/floor/mineral/bananium/airless,/area/ruin/unpowered) -"z" = (/obj/item/weapon/shovel,/turf/open/floor/mineral/bananium/airless,/area/ruin/unpowered) +"f" = (/obj/effect/mob_spawn/human/clown,/turf/open/floor/mineral/bananium/airless,/area/ruin/unpowered) +"g" = (/turf/open/floor/mineral/bananium/airless,/area/ruin/unpowered) +"h" = (/obj/structure/closet/crate,/obj/item/weapon/ore/bananium,/obj/item/weapon/ore/bananium,/obj/item/weapon/ore/bananium,/obj/item/weapon/ore/bananium,/obj/item/weapon/ore/bananium,/turf/open/floor/mineral/bananium/airless,/area/ruin/unpowered) +"i" = (/obj/structure/closet/crate{icon_state = "crateopen";opened = 1},/obj/item/weapon/ore/bananium,/turf/open/floor/mineral/bananium/airless,/area/ruin/unpowered) +"j" = (/obj/structure/closet/secure_closet{name = "clown locker";req_access_txt = "46"},/obj/item/clothing/shoes/clown_shoes/banana_shoes,/obj/effect/spawner/lootdrop/maintenance{lootcount = 2;name = "2maintenance loot spawner"},/turf/open/floor/mineral/bananium/airless,/area/ruin/unpowered) +"k" = (/obj/structure/shuttle/engine/heater{color = "#FFFF00";dir = 4;icon_state = "heater"},/obj/structure/window/reinforced{color = "#FFFF00";dir = 8},/turf/open/floor/plating/airless{color = "#FFFF00"},/area/ruin/unpowered) +"l" = (/obj/structure/shuttle/engine/propulsion{color = "#FFFF00";dir = 8;icon_state = "propulsion_l"},/turf/open/space,/area/ruin/unpowered) +"m" = (/obj/item/weapon/shard{icon_state = "small"},/turf/open/floor/plating/asteroid/airless,/area/ruin/unpowered) +"n" = (/obj/item/weapon/ore/bananium,/turf/open/floor/mineral/bananium/airless,/area/ruin/unpowered) +"o" = (/obj/item/weapon/shard{icon_state = "medium"},/obj/structure/chair{dir = 8},/turf/open/floor/plating/asteroid/airless,/area/ruin/unpowered) +"p" = (/obj/effect/mob_spawn/human/clown{name = "Clown Pilot"},/turf/open/floor/mineral/bananium/airless,/area/ruin/unpowered) +"q" = (/obj/item/weapon/paper{info = "The call has gone out! Our ancestral home has been rediscovered! Not a small patch of land, but a true clown nation, a true Clown Planet! We're on our way home at last!"},/turf/open/floor/mineral/bananium/airless,/area/ruin/unpowered) +"r" = (/obj/structure/grille{color = "#FFFF00"},/obj/structure/window/reinforced{color = "#FFFF00"},/obj/structure/window/reinforced{color = "#FFFF00";dir = 4},/obj/structure/window/reinforced{color = "#FFFF00";dir = 8},/turf/open/floor/plating/airless{color = "#FFFF00"},/area/ruin/unpowered) +"s" = (/obj/item/weapon/shard,/obj/structure/chair{dir = 8},/turf/open/floor/mineral/bananium/airless,/area/ruin/unpowered) +"t" = (/obj/item/weapon/shard{icon_state = "medium"},/turf/open/floor/mineral/bananium/airless,/area/ruin/unpowered) +"u" = (/obj/item/weapon/storage/bag/ore,/turf/open/floor/mineral/bananium/airless,/area/ruin/unpowered) +"v" = (/obj/item/weapon/pickaxe,/turf/open/floor/mineral/bananium/airless,/area/ruin/unpowered) +"w" = (/obj/structure/closet/crate,/obj/item/weapon/ore/bananium,/obj/item/weapon/ore/bananium,/obj/item/weapon/ore/bananium,/obj/item/weapon/ore/bananium,/turf/open/floor/mineral/bananium/airless,/area/ruin/unpowered) +"x" = (/obj/item/weapon/shovel,/turf/open/floor/mineral/bananium/airless,/area/ruin/unpowered) +"y" = (/turf/open/floor/plating/asteroid/airless,/area/ruin/unpowered) +"z" = (/turf/closed/mineral/random,/area/ruin/unpowered) (1,1,1) = {" abbaaaaccccccaaaaaaaaaaaaaaa @@ -31,11 +31,11 @@ bbbbaabbbbbccbbbaaaaaaaaaaaa bbbbbbbbbbbccbbaaaaaaaaaaaaa abbbbbbbbbbbbbbaaaaaaaaaaaaa abbbbbbbbbbbbccaadddeeddddda -aabbbbbbbbbbbbcdddfghhiijklm -aaabbbbbbbbbbbbnnnohhhhhphlm -aabbbbbbbbbbbbbnnqrhsphphplm -aabbbbbbbbbbbbbthuhvhghhhplm -aabbbbbbbbbbbbbdddwxhhyyizlm +aabbbbbbbbbbbbcdddyfgghhijkl +aaabbbbbbbbbbbbzzzmgggggngkl +aabbbbbbbbbbbbbzzopgqngngnkl +aabbbbbbbbbbbbbrgsgtgfgggnkl +aabbbbbbbbbbbbbddduvggwwhxkl aabbbbbbbbbbbbbbbdddeeddddda abbbbbbbbbbbbbbbbbbbbbbbbaaa abbabbbbbccbbbbbbbbbbbaaaaaa diff --git a/_maps/RandomRuins/SpaceRuins/crashedship.dmm b/_maps/RandomRuins/SpaceRuins/crashedship.dmm index dfa9a8c50d..05ca50a5b1 100644 --- a/_maps/RandomRuins/SpaceRuins/crashedship.dmm +++ b/_maps/RandomRuins/SpaceRuins/crashedship.dmm @@ -1,439 +1,480 @@ "aa" = (/turf/open/space,/area/space) "ab" = (/obj/item/weapon/circular_saw,/obj/structure/lattice,/turf/open/space,/area/space) -"ac" = (/turf/closed/wall/mineral/titanium,/area/awaymission/BMPship/Aft) -"ad" = (/turf/closed/wall/mineral/titanium/interior,/area/awaymission/BMPship/Aft) -"ae" = (/turf/closed/wall/mineral/titanium/overspace,/area/awaymission/BMPship/Aft) -"af" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/grille,/turf/open/floor/engine,/area/awaymission/BMPship/Aft) -"ag" = (/obj/machinery/porta_turret{dir = 8; emagged = 1; installation = /obj/item/weapon/gun/energy/lasercannon},/turf/open/floor/engine,/area/awaymission/BMPship/Aft) -"ah" = (/turf/open/floor/engine,/area/awaymission/BMPship/Aft) -"ai" = (/obj/machinery/light/small{dir = 8},/turf/open/floor/plating,/area/awaymission/BMPship/Aft) -"aj" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/grille,/turf/open/floor/engine,/area/awaymission/BMPship/Aft) -"ak" = (/obj/machinery/door/unpowered/shuttle,/turf/open/floor/plating,/area/awaymission/BMPship/Aft) -"al" = (/turf/open/floor/plating,/area/awaymission/BMPship/Aft) -"am" = (/obj/structure/lattice,/turf/open/space,/area/space) -"an" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/grille,/turf/open/floor/engine,/area/awaymission/BMPship/Aft) -"ao" = (/obj/machinery/light/small,/turf/open/floor/engine,/area/awaymission/BMPship/Aft) -"ap" = (/turf/closed/wall/mineral/titanium/overspace,/area/awaymission/BMPship/Midship) -"aq" = (/turf/closed/wall/mineral/titanium,/area/awaymission/BMPship/Midship) -"ar" = (/obj/machinery/door/airlock/silver{locked = 1},/turf/open/floor/plating{icon_state = "panelscorched"},/area/awaymission/BMPship/Aft) -"as" = (/obj/structure/bed/roller,/turf/open/floor/plating/airless,/area/awaymission/BMPship/Midship) -"at" = (/turf/open/floor/plating/airless,/area/awaymission/BMPship/Midship) -"au" = (/obj/item/weapon/restraints/handcuffs,/obj/item/weapon/restraints/handcuffs,/obj/structure/closet/crate,/turf/open/floor/plating/airless,/area/awaymission/BMPship/Midship) -"av" = (/obj/item/weapon/scalpel,/obj/structure/closet/crate,/obj/item/weapon/tank/internals/anesthetic,/turf/open/floor/plating/airless,/area/awaymission/BMPship/Midship) -"aw" = (/obj/item/bodybag,/turf/open/floor/plating/airless,/area/awaymission/BMPship/Midship) -"ax" = (/obj/item/weapon/storage/box/syringes,/turf/open/floor/plating/airless,/area/awaymission/BMPship/Midship) -"ay" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/floor/plating/airless,/area/awaymission/BMPship/Midship) -"az" = (/obj/structure/table/optable,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/open/floor/plating/airless,/area/awaymission/BMPship/Midship) -"aA" = (/obj/machinery/computer/operating,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/open/floor/plating/airless,/area/awaymission/BMPship/Midship) -"aB" = (/turf/open/floor/plating/warnplate{dir = 9},/area/awaymission/BMPship/Aft) -"aC" = (/obj/structure/closet/crate/freezer,/obj/item/organ/appendix,/obj/item/weapon/reagent_containers/food/snacks/meat/slab,/obj/item/weapon/reagent_containers/food/snacks/meat/slab/human/mutant/golem,/turf/open/floor/plating/warnplate{dir = 1},/area/awaymission/BMPship/Aft) -"aD" = (/obj/structure/closet/crate/freezer,/obj/item/organ/brain,/obj/item/weapon/reagent_containers/food/snacks/meat/slab,/obj/item/weapon/reagent_containers/food/snacks/meat/slab/human/mutant/slime,/turf/open/floor/plating/warnplate{dir = 1},/area/awaymission/BMPship/Aft) -"aE" = (/obj/structure/table,/obj/item/stack/packageWrap,/turf/open/floor/plating/warnplate{dir = 1},/area/awaymission/BMPship/Aft) -"aF" = (/obj/structure/table,/obj/item/weapon/storage/box,/obj/machinery/light/small{dir = 1},/turf/open/floor/plating/warnplate{dir = 1},/area/awaymission/BMPship/Aft) -"aG" = (/turf/open/floor/plating/warnplate{dir = 1},/area/awaymission/BMPship/Aft) -"aH" = (/turf/closed/wall/mineral/titanium/interior,/area/awaymission/BMPship/Fore) -"aI" = (/turf/closed/wall/mineral/titanium/overspace,/area/awaymission/BMPship/Fore) -"aJ" = (/turf/open/floor/plating/airless{icon_state = "platingdmg2"},/area/awaymission/BMPship/Midship) -"aK" = (/turf/open/floor/plating/airless{icon_state = "platingdmg3"},/area/awaymission/BMPship/Midship) -"aL" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plating/airless,/area/awaymission/BMPship/Midship) -"aM" = (/turf/open/floor/plating/warnplate{dir = 8},/area/awaymission/BMPship/Aft) -"aN" = (/obj/item/weapon/storage/box,/turf/open/floor/plating,/area/awaymission/BMPship/Aft) -"aO" = (/obj/item/weapon/hand_labeler,/turf/open/floor/plating,/area/awaymission/BMPship/Aft) -"aP" = (/obj/structure/closet/crate/large,/turf/open/floor/plating/warnplate{dir = 4},/area/awaymission/BMPship/Aft) -"aQ" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/grille,/turf/open/floor/plating/airless,/area/awaymission/BMPship/Fore) -"aR" = (/obj/structure/table/wood,/obj/item/stack/spacecash/c500,/obj/item/stack/spacecash/c100,/obj/item/weapon/reagent_containers/food/drinks/beer,/turf/open/floor/wood,/area/awaymission/BMPship/Fore) -"aS" = (/obj/structure/bed,/obj/item/weapon/bedsheet/yellow,/turf/open/floor/wood,/area/awaymission/BMPship/Fore) -"aT" = (/turf/closed/wall/mineral/titanium,/area/awaymission/BMPship/Fore) -"aU" = (/turf/open/floor/plating/warnplate{dir = 9},/area/awaymission/BMPship/Fore) -"aV" = (/obj/structure/rack,/turf/open/floor/plating/warnplate{dir = 1},/area/awaymission/BMPship/Fore) -"aW" = (/turf/open/floor/plating/warnplate{dir = 1},/area/awaymission/BMPship/Fore) -"aX" = (/turf/open/floor/plating/warnplate{dir = 5},/area/awaymission/BMPship/Fore) -"aY" = (/obj/structure/sign/vacuum,/turf/closed/wall/mineral/titanium,/area/awaymission/BMPship/Fore) -"aZ" = (/turf/open/floor/plating/airless{icon_state = "platingdmg1"},/area/awaymission/BMPship/Midship) -"ba" = (/turf/open/floor/plating/airless{icon_state = "panelscorched"},/area/awaymission/BMPship/Midship) -"bb" = (/obj/effect/decal/cleanable/blood/gibs/old,/obj/effect/gibspawner/human,/turf/open/floor/plating/airless,/area/awaymission/BMPship/Midship) -"bc" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/item/clothing/glasses/regular/hipster,/turf/open/floor/plating/airless,/area/awaymission/BMPship/Midship) -"bd" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/open/floor/plating/airless,/area/awaymission/BMPship/Midship) -"be" = (/obj/machinery/door/unpowered/shuttle,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf,/area/awaymission/BMPship/Midship) -"bf" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/open/floor/plating/warnplate{dir = 8},/area/awaymission/BMPship/Aft) -"bg" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/open/floor/plating,/area/awaymission/BMPship/Aft) -"bh" = (/obj/structure/closet/crate/freezer,/obj/item/weapon/reagent_containers/food/drinks/beer,/obj/item/weapon/reagent_containers/food/drinks/beer,/turf/open/floor/plating,/area/awaymission/BMPship/Aft) -"bi" = (/obj/machinery/computer/teleporter,/turf/open/floor/plating,/area/awaymission/BMPship/Aft) -"bj" = (/obj/machinery/teleport/station,/turf/open/floor/plating,/area/awaymission/BMPship/Aft) -"bk" = (/obj/machinery/teleport/hub,/turf/open/floor/plating,/area/awaymission/BMPship/Aft) -"bl" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/grille,/turf/open/floor/plating/airless,/area/awaymission/BMPship/Fore) -"bm" = (/turf/open/floor/wood,/area/awaymission/BMPship/Fore) -"bn" = (/obj/machinery/light/small{dir = 4},/turf/open/floor/wood,/area/awaymission/BMPship/Fore) -"bo" = (/turf/open/floor/plating/warnplate{dir = 8},/area/awaymission/BMPship/Fore) -"bp" = (/turf/open/floor/plating,/area/awaymission/BMPship/Fore) -"bq" = (/obj/machinery/door/airlock/external,/turf/open/floor/plating,/area/awaymission/BMPship/Fore) -"br" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plating,/area/awaymission/BMPship/Aft) -"bs" = (/obj/structure/closet/crate,/obj/item/stack/spacecash/c1000,/obj/item/stack/spacecash/c50,/turf/open/floor/plating/warnplate{dir = 4},/area/awaymission/BMPship/Aft) -"bt" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/grille,/turf/open/floor/plating/airless,/area/awaymission/BMPship/Fore) -"bu" = (/turf/open/floor/plasteel{icon_state = "wood-broken"},/area/awaymission/BMPship/Fore) -"bv" = (/turf/open/floor/plating/warnplate{dir = 2},/area/awaymission/BMPship/Fore) -"bw" = (/obj/machinery/light/small,/turf/open/floor/plating/warnplate{dir = 2},/area/awaymission/BMPship/Fore) -"bx" = (/turf/open/floor/plating/warnplate{dir = 6},/area/awaymission/BMPship/Fore) -"by" = (/obj/machinery/light,/obj/effect/decal/cleanable/blood/gibs/old,/turf/open/floor/plating/airless,/area/awaymission/BMPship/Midship) -"bz" = (/obj/machinery/button/door{id = "packerMed"; pixel_y = -24},/turf/open/floor/plating/airless,/area/awaymission/BMPship/Midship) -"bA" = (/obj/machinery/sleeper{dir = 1},/turf/open/floor/plating/airless,/area/awaymission/BMPship/Midship) -"bB" = (/obj/machinery/sleep_console,/turf/open/floor/plating/airless,/area/awaymission/BMPship/Midship) -"bC" = (/obj/machinery/light,/turf/open/floor/plating/airless,/area/awaymission/BMPship/Midship) -"bD" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/open/floor/plating,/area/awaymission/BMPship/Aft) -"bE" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/item/weapon/hand_labeler,/turf/open/floor/plating,/area/awaymission/BMPship/Aft) -"bF" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/open/floor/plating,/area/awaymission/BMPship/Aft) -"bG" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/item/weapon/storage/box,/turf/open/floor/plating,/area/awaymission/BMPship/Aft) -"bH" = (/turf/open/floor/plating/warnplate{dir = 4},/area/awaymission/BMPship/Aft) -"bI" = (/obj/machinery/door/unpowered/shuttle,/turf/open/floor/plasteel{icon_state = "carpetside"; dir = 1},/area/awaymission/BMPship/Fore) -"bJ" = (/obj/machinery/door/airlock/silver,/turf/open/floor/carpet,/area/awaymission/BMPship/Fore) -"bK" = (/obj/machinery/door/poddoor/shutters{id = "packerMed"},/turf/open/floor/plating/airless,/area/awaymission/BMPship/Midship) -"bL" = (/obj/structure/closet/crate/large,/turf/open/floor/plating/warnplate{dir = 10},/area/awaymission/BMPship/Aft) -"bM" = (/turf/open/floor/plating/warnplate{dir = 2},/area/awaymission/BMPship/Aft) -"bN" = (/obj/machinery/light/small,/turf/open/floor/plating/warnplate{dir = 2},/area/awaymission/BMPship/Aft) -"bO" = (/obj/structure/kitchenspike,/turf/open/floor/plating/warnplate{dir = 2},/area/awaymission/BMPship/Aft) -"bP" = (/obj/structure/closet/crate,/obj/item/device/analyzer,/obj/item/stack/spacecash/c10,/turf/open/floor/plating/warnplate{dir = 2},/area/awaymission/BMPship/Aft) -"bQ" = (/obj/structure/closet/crate,/obj/item/stack/spacecash/c1000,/obj/item/stack/spacecash/c200,/obj/item/stack/spacecash/c500,/turf/open/floor/plating/warnplate{dir = 2},/area/awaymission/BMPship/Aft) -"bR" = (/obj/structure/closet/crate/freezer,/obj/item/weapon/reagent_containers/food/snacks/hugemushroomslice,/obj/item/organ/appendix,/obj/item/weapon/reagent_containers/food/snacks/meat/slab,/obj/item/weapon/reagent_containers/food/snacks/meat/slab/human/mutant/golem/adamantine,/turf/open/floor/plating/warnplate{dir = 2},/area/awaymission/BMPship/Aft) -"bS" = (/obj/machinery/button/door{id = "packerCargo"; pixel_y = -24},/obj/machinery/light/small,/turf/open/floor/plating/warnplate{dir = 2},/area/awaymission/BMPship/Aft) -"bT" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plating/warnplate{dir = 2},/area/awaymission/BMPship/Aft) -"bU" = (/turf/open/floor/plating/warnplate{dir = 6},/area/awaymission/BMPship/Aft) -"bV" = (/turf/open/floor/carpet,/area/awaymission/BMPship/Fore) -"bW" = (/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/power/apc{dir = 1; environ = 0; equipment = 3; locked = 0; pixel_y = 32; req_access = ""},/turf/open/floor/carpet,/area/awaymission/BMPship/Fore) -"bX" = (/obj/structure/table,/obj/item/weapon/screwdriver,/obj/item/weapon/screwdriver,/obj/item/weapon/paper{info = "The next person who takes one of my screwdrivers gets stabbed with one. They are MINE. - Love, Madsen"; name = "scribbled note"},/obj/item/weapon/screwdriver,/turf/open/floor/plasteel/bar,/area/awaymission/BMPship/Midship) -"bY" = (/obj/machinery/light{dir = 1},/turf/open/floor/plasteel/bar,/area/awaymission/BMPship/Midship) -"bZ" = (/obj/machinery/hydroponics,/turf/open/floor/plasteel/green/side{dir = 8},/area/awaymission/BMPship/Midship) -"ca" = (/obj/structure/sink{dir = 2},/turf/open/floor/plasteel/yellow/side{dir = 1},/area/awaymission/BMPship/Midship) -"cb" = (/obj/machinery/vending/hydroseeds{slogan_delay = 700},/turf/open/floor/plasteel/yellow/side{dir = 1},/area/awaymission/BMPship/Midship) -"cc" = (/obj/machinery/vending/hydronutrients,/turf/open/floor/plasteel/yellow/side{dir = 1},/area/awaymission/BMPship/Midship) -"cd" = (/obj/machinery/hydroponics,/turf/open/floor/plasteel/green/side{dir = 4},/area/awaymission/BMPship/Midship) -"ce" = (/turf/open/floor/plasteel/bar,/area/awaymission/BMPship/Midship) -"cf" = (/obj/structure/table,/obj/item/weapon/kitchen/knife/butcher,/obj/item/weapon/reagent_containers/food/drinks/beer,/obj/item/weapon/reagent_containers/food/snacks/meat,/turf/open/floor/plasteel/barber,/area/awaymission/BMPship/Midship) -"cg" = (/obj/structure/table,/obj/item/weapon/storage/box/donkpockets,/turf/open/floor/plasteel/barber,/area/awaymission/BMPship/Midship) -"ch" = (/obj/structure/table,/obj/machinery/microwave,/turf/open/floor/plasteel/barber,/area/awaymission/BMPship/Midship) -"ci" = (/obj/machinery/processor,/obj/machinery/light{dir = 1},/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plasteel/barber,/area/awaymission/BMPship/Midship) -"cj" = (/obj/structure/table,/obj/item/weapon/reagent_containers/food/drinks/beer,/turf/open/floor/plasteel/bar,/area/awaymission/BMPship/Midship) -"ck" = (/obj/structure/table,/obj/item/weapon/kitchen/knife,/turf/open/floor/plasteel/bar,/area/awaymission/BMPship/Midship) -"cl" = (/obj/structure/table,/obj/machinery/light/small{dir = 1},/turf/open/floor/plasteel/bar,/area/awaymission/BMPship/Midship) -"cm" = (/obj/structure/table,/obj/effect/decal/cleanable/cobweb/cobweb2,/turf/open/floor/plasteel/bar,/area/awaymission/BMPship/Midship) -"cn" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/poddoor/shutters{id = "packerCargo"},/turf/open/floor/plating,/area/awaymission/BMPship/Aft) -"co" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/carpet,/area/awaymission/BMPship/Fore) -"cp" = (/obj/item/weapon/reagent_containers/food/snacks/hugemushroomslice,/turf/open/floor/plasteel/bar,/area/awaymission/BMPship/Midship) -"cq" = (/turf/open/floor/plasteel,/area/awaymission/BMPship/Midship) -"cr" = (/obj/item/weapon/reagent_containers/food/drinks/beer,/turf/open/floor/plasteel,/area/awaymission/BMPship/Midship) -"cs" = (/turf/open/floor/plasteel/barber,/area/awaymission/BMPship/Midship) -"ct" = (/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plasteel/barber,/area/awaymission/BMPship/Midship) -"cu" = (/obj/structure/chair/stool,/turf/open/floor/plasteel/bar,/area/awaymission/BMPship/Midship) -"cv" = (/obj/structure/kitchenspike,/turf/open/floor/plasteel/showroomfloor,/area/awaymission/BMPship/Aft) -"cw" = (/turf/open/floor/plasteel/showroomfloor,/area/awaymission/BMPship/Aft) -"cx" = (/obj/machinery/door/airlock/silver,/turf/open/floor/plasteel/showroomfloor,/area/awaymission/BMPship/Aft) -"cy" = (/turf/open/floor/plasteel/white,/area/awaymission/BMPship/Aft) -"cz" = (/obj/machinery/light/small{dir = 1},/turf/open/floor/plasteel/white,/area/awaymission/BMPship/Aft) -"cA" = (/obj/effect/decal/cleanable/blood/gibs/old,/turf/open/floor/plasteel/white,/area/awaymission/BMPship/Aft) -"cB" = (/obj/machinery/gibber,/turf/open/floor/plasteel/white,/area/awaymission/BMPship/Aft) -"cC" = (/turf/open/floor/plasteel/hydrofloor,/area/awaymission/BMPship/Aft) -"cD" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel,/area/awaymission/BMPship/Aft) -"cE" = (/turf/open/floor/plasteel,/area/awaymission/BMPship/Aft) -"cF" = (/turf/closed/wall/mineral/titanium/overspace,/area/space) -"cG" = (/turf/open/floor/carpet,/turf/closed/wall/mineral/titanium/interior,/area/awaymission/BMPship/Fore) -"cH" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/open/floor/carpet,/area/awaymission/BMPship/Fore) -"cI" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/open/floor/carpet,/area/awaymission/BMPship/Fore) -"cJ" = (/obj/item/weapon/reagent_containers/food/snacks/hugemushroomslice,/turf/open/floor/plasteel,/area/awaymission/BMPship/Midship) -"cK" = (/obj/machinery/door/unpowered/shuttle,/turf/open/floor/plasteel/bar,/area/awaymission/BMPship/Midship) -"cL" = (/obj/structure/window/reinforced,/turf/open/floor/plasteel/barber,/area/awaymission/BMPship/Midship) -"cM" = (/obj/structure/window/reinforced,/obj/structure/cable{icon_state = "0-2"; pixel_y = 1; d2 = 2},/turf/open/floor/plasteel/barber,/area/awaymission/BMPship/Midship) -"cN" = (/obj/machinery/door/window,/turf/open/floor/plasteel/barber,/area/awaymission/BMPship/Midship) -"cO" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/turf/open/floor/plasteel/barber,/area/awaymission/BMPship/Midship) -"cP" = (/obj/item/weapon/reagent_containers/food/drinks/beer,/turf/open/floor/plasteel/bar,/area/awaymission/BMPship/Midship) -"cQ" = (/obj/structure/cable{icon_state = "0-2"; pixel_y = 1; d2 = 2},/turf/open/floor/plasteel/showroomfloor,/area/awaymission/BMPship/Aft) -"cR" = (/obj/structure/closet/secure_closet/freezer/meat{opened = 1},/turf/open/floor/plasteel/white,/area/awaymission/BMPship/Aft) -"cS" = (/obj/structure/closet/crate/freezer,/obj/item/weapon/reagent_containers/food/snacks/meat/slab,/obj/item/weapon/reagent_containers/food/snacks/meat/slab,/turf/open/floor/plasteel/white,/area/awaymission/BMPship/Aft) -"cT" = (/obj/effect/decal/cleanable/blood/splatter,/turf/open/floor/plasteel/white,/area/awaymission/BMPship/Aft) -"cU" = (/obj/item/weapon/crowbar,/turf/open/floor/plasteel/white,/area/awaymission/BMPship/Aft) -"cV" = (/turf/open/floor/plasteel/warning{dir = 8},/area/awaymission/BMPship/Aft) -"cW" = (/obj/structure/cable{icon_state = "0-2"; pixel_y = 1; d2 = 2},/obj/machinery/power/apc{dir = 1; environ = 0; equipment = 3; locked = 0; pixel_y = 32; req_access = ""},/turf/open/floor/plating,/area/awaymission/BMPship/Aft) -"cX" = (/turf/open/floor/plasteel/warning{dir = 4},/area/awaymission/BMPship/Aft) -"cY" = (/obj/structure/table,/obj/item/weapon/paper{info = "I'm no scientist, but judging from the design and components, it seems to be some kind of teleporter. This thing is gonna be worth a lot of cash to the right man. The boys are excited, as they have every right to be, and I've let them crack into that case of beer we got. I normally wouldn't allow such a thing, but this is a time for celebration! It's not like a couple drinks will hurt anything."; name = "Captain's log entry"},/turf/open/floor/carpet,/area/awaymission/BMPship/Fore) -"cZ" = (/obj/structure/table,/obj/item/weapon/reagent_containers/food/drinks/beer,/turf/open/floor/carpet,/area/awaymission/BMPship/Fore) -"da" = (/obj/structure/frame/computer{anchored = 1},/turf/open/floor/carpet,/area/awaymission/BMPship/Fore) -"db" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/carpet,/area/awaymission/BMPship/Fore) -"dc" = (/obj/machinery/hydroponics,/turf/open/floor/plasteel/green/side{dir = 10},/area/awaymission/BMPship/Midship) -"dd" = (/turf/open/floor/plasteel/green/side,/area/awaymission/BMPship/Midship) -"de" = (/obj/machinery/seed_extractor,/obj/item/seeds/plump/walkingmushroom,/turf/open/floor/plasteel/green/side,/area/awaymission/BMPship/Midship) -"df" = (/obj/machinery/hydroponics,/turf/open/floor/plasteel/green/side{dir = 6},/area/awaymission/BMPship/Midship) -"dg" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/bar,/area/awaymission/BMPship/Midship) -"dh" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/open/floor/plasteel/bar,/area/awaymission/BMPship/Midship) -"di" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/open/floor/plasteel/bar,/area/awaymission/BMPship/Midship) -"dj" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/showroomfloor,/area/awaymission/BMPship/Aft) -"dk" = (/turf/closed/wall/mineral/titanium/nodiagonal,/area/awaymission/BMPship/Aft) -"dl" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/floor/plasteel,/area/awaymission/BMPship/Aft) -"dm" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/open/floor/plating,/area/awaymission/BMPship/Aft) -"dn" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/floor/plating,/area/awaymission/BMPship/Aft) -"do" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/open/floor/plating,/area/awaymission/BMPship/Aft) -"dp" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/light/small{dir = 4},/turf/open/floor/plasteel/warning{dir = 4},/area/awaymission/BMPship/Aft) -"dq" = (/obj/item/device/multitool,/turf/open/floor/engine,/area/awaymission/BMPship/Aft) -"dr" = (/obj/structure/shuttle/engine/heater{icon_state = "heater"; dir = 4},/obj/structure/window/reinforced{dir = 8},/turf/open/floor/engine/airless,/area/awaymission/BMPship/Aft) -"ds" = (/obj/structure/shuttle/engine/propulsion{icon_state = "propulsion"; dir = 8},/turf/open/space,/area/awaymission/BMPship/Aft) -"dt" = (/obj/structure/table,/obj/machinery/recharger,/turf/open/floor/carpet,/area/awaymission/BMPship/Fore) -"du" = (/obj/structure/chair/stool,/turf/open/floor/carpet,/area/awaymission/BMPship/Fore) -"dv" = (/obj/machinery/light{icon_state = "tube1"; dir = 4},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/carpet,/area/awaymission/BMPship/Fore) -"dw" = (/obj/machinery/light/small{dir = 8},/turf/open/floor/plasteel/bar,/area/awaymission/BMPship/Midship) -"dx" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/floor/plasteel/bar,/area/awaymission/BMPship/Midship) -"dy" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/open/floor/plasteel/bar,/area/awaymission/BMPship/Midship) -"dz" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/bar,/area/awaymission/BMPship/Midship) -"dA" = (/obj/machinery/light/small{dir = 4},/turf/open/floor/plasteel/bar,/area/awaymission/BMPship/Midship) -"dB" = (/turf/closed/wall/r_wall,/area/awaymission/BMPship/Midship) -"dC" = (/obj/machinery/light/small{dir = 4},/turf/open/floor/plasteel/showroomfloor,/area/awaymission/BMPship/Aft) -"dD" = (/obj/machinery/light/small{dir = 8},/turf/open/floor/plasteel/warning{dir = 8},/area/awaymission/BMPship/Aft) -"dE" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plasteel,/area/awaymission/BMPship/Aft) -"dF" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/warning{dir = 4},/area/awaymission/BMPship/Aft) -"dG" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/grille,/turf/open/floor/plating,/area/awaymission/BMPship/Fore) -"dH" = (/obj/item/weapon/shard,/turf/open/floor/carpet,/area/awaymission/BMPship/Fore) -"dI" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/open/floor/carpet,/area/awaymission/BMPship/Fore) -"dJ" = (/obj/machinery/door/airlock/silver,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/open/floor/carpet,/area/awaymission/BMPship/Fore) -"dK" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/open/floor/plasteel/bar,/area/awaymission/BMPship/Midship) -"dL" = (/obj/machinery/shieldwallgen,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/open/floor/plating,/area/awaymission/BMPship/Midship) -"dM" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/bar,/area/awaymission/BMPship/Midship) -"dN" = (/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/power/apc{dir = 1; locked = 0; pixel_y = 28; req_access = ""},/turf/open/floor/plasteel/bar,/area/awaymission/BMPship/Midship) -"dO" = (/turf/open/floor/plasteel/loadingarea/dirtydirty{dir = 4},/area/awaymission/BMPship/Midship) -"dP" = (/obj/machinery/conveyor{dir = 4; id = "meatConvey1"},/turf/open/floor/plating,/area/awaymission/BMPship/Midship) -"dQ" = (/obj/machinery/conveyor{dir = 4; id = "meatConvey1"},/obj/structure/plasticflaps,/turf/open/floor/plating,/area/awaymission/BMPship/Midship) -"dR" = (/obj/structure/disposalpipe/trunk{dir = 4},/obj/machinery/disposal/deliveryChute{dir = 8},/turf/open/floor/plating,/area/awaymission/BMPship/Midship) -"dS" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/closed/wall/r_wall,/area/awaymission/BMPship/Midship) -"dT" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/bar,/area/awaymission/BMPship/Midship) -"dU" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/turf/open/floor/plasteel/bar,/area/awaymission/BMPship/Midship) -"dV" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/turf/open/floor/plating,/area/awaymission/BMPship/Aft) -"dW" = (/obj/structure/window/reinforced{dir = 1},/turf/open/floor/plating,/area/awaymission/BMPship/Aft) -"dX" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/turf/open/floor/plating,/area/awaymission/BMPship/Aft) -"dY" = (/obj/structure/rack,/obj/item/weapon/storage/box/lights,/turf/open/floor/plasteel/warning{dir = 8},/area/awaymission/BMPship/Aft) -"dZ" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plasteel/hydrofloor,/area/awaymission/BMPship/Aft) -"ea" = (/obj/machinery/power/smes/magical{desc = "A high-capacity superconducting magnetic energy storage (SMES) unit."; name = "power storage unit"},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/structure/cable,/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/open/floor/plating,/area/awaymission/BMPship/Aft) -"eb" = (/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/power/terminal{dir = 8},/turf/open/floor/plating,/area/awaymission/BMPship/Aft) -"ec" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/open/floor/plasteel/warning{dir = 4},/area/awaymission/BMPship/Aft) -"ed" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/structure/grille,/turf/open/floor/plating,/area/awaymission/BMPship/Fore) -"ee" = (/obj/structure/table,/turf/open/floor/carpet,/area/awaymission/BMPship/Fore) -"ef" = (/obj/structure/chair/office{dir = 8},/turf/open/floor/carpet,/area/awaymission/BMPship/Fore) -"eg" = (/obj/item/weapon/shard{icon_state = "medium"},/turf/open/floor/carpet,/area/awaymission/BMPship/Fore) -"eh" = (/obj/effect/decal/cleanable/dirt,/turf/open/floor/plating,/area/awaymission/BMPship/Midship) -"ei" = (/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plating,/area/awaymission/BMPship/Midship) -"ej" = (/turf/open/floor/plating,/area/awaymission/BMPship/Midship) -"ek" = (/obj/item/weapon/reagent_containers/glass/bucket,/turf/open/floor/plasteel/bar,/area/awaymission/BMPship/Midship) -"el" = (/obj/machinery/conveyor_switch/oneway{id = "meatConvey1"},/turf/open/floor/plasteel/bar,/area/awaymission/BMPship/Midship) -"em" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/turf/open/floor/plasteel/bar,/area/awaymission/BMPship/Midship) -"en" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/light/small{dir = 1},/turf/open/floor/plasteel/bar,/area/awaymission/BMPship/Midship) -"eo" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel/showroomfloor,/area/awaymission/BMPship/Aft) -"ep" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel/showroomfloor,/area/awaymission/BMPship/Aft) -"eq" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/disposalpipe/trunk{dir = 8},/obj/structure/disposaloutlet{dir = 4},/turf/open/floor/plating,/area/awaymission/BMPship/Aft) -"er" = (/obj/effect/decal/cleanable/blood/gibs/old,/turf/open/floor/plating,/area/awaymission/BMPship/Aft) -"es" = (/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plating,/area/awaymission/BMPship/Aft) -"et" = (/obj/structure/rack,/obj/item/weapon/storage/belt/utility/full,/turf/open/floor/plasteel/warning{dir = 8},/area/awaymission/BMPship/Aft) -"eu" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plasteel/warning{dir = 4},/area/awaymission/BMPship/Aft) -"ev" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/floor/carpet,/area/awaymission/BMPship/Fore) -"ew" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/open/floor/carpet,/area/awaymission/BMPship/Fore) -"ex" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/open/floor/carpet,/area/awaymission/BMPship/Fore) -"ey" = (/obj/effect/decal/cleanable/dirt,/obj/effect/gibspawner/xeno,/turf/open/floor/plating,/area/awaymission/BMPship/Midship) -"ez" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/floor/plasteel/bar,/area/awaymission/BMPship/Midship) -"eA" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/open/floor/plasteel/bar,/area/awaymission/BMPship/Midship) -"eB" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/open/floor/plasteel/bar,/area/awaymission/BMPship/Midship) -"eC" = (/obj/machinery/light/small{dir = 1},/turf/open/floor/plasteel/bar,/area/awaymission/BMPship/Midship) -"eD" = (/obj/structure/window/reinforced{dir = 8},/turf/open/floor/plating,/area/awaymission/BMPship/Aft) -"eE" = (/obj/effect/gibspawner/human,/turf/open/floor/plating,/area/awaymission/BMPship/Aft) -"eF" = (/obj/machinery/door/window{base_state = "right"; dir = 4; icon_state = "right"},/turf/open/floor/plating,/area/awaymission/BMPship/Aft) -"eG" = (/obj/structure/rack,/obj/item/weapon/stock_parts/cell/high,/turf/open/floor/plasteel/warning{dir = 8},/area/awaymission/BMPship/Aft) -"eH" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/obj/structure/grille,/turf/open/floor/plating,/area/awaymission/BMPship/Fore) -"eI" = (/obj/effect/decal/cleanable/dirt,/obj/machinery/light/small{dir = 8},/turf/open/floor/plating,/area/awaymission/BMPship/Midship) -"eJ" = (/obj/machinery/door/window{base_state = "right"; dir = 4; icon_state = "right"},/turf/open/floor/plating,/area/awaymission/BMPship/Midship) -"eK" = (/obj/machinery/light,/turf/open/floor/plasteel/bar,/area/awaymission/BMPship/Midship) -"eL" = (/obj/effect/gibspawner/generic,/turf/open/floor/plasteel/bar,/area/awaymission/BMPship/Midship) -"eM" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/open/floor/plasteel/bar,/area/awaymission/BMPship/Midship) -"eN" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/open/floor/plasteel/showroomfloor,/area/awaymission/BMPship/Aft) -"eO" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/open/floor/plasteel/showroomfloor,/area/awaymission/BMPship/Aft) -"eP" = (/obj/structure/rack,/turf/open/floor/plasteel/warning{dir = 8},/area/awaymission/BMPship/Aft) -"eQ" = (/obj/machinery/power/smes/magical{desc = "A high-capacity superconducting magnetic energy storage (SMES) unit."; name = "power storage unit"},/obj/structure/cable,/obj/structure/cable,/turf/open/floor/plating,/area/awaymission/BMPship/Aft) -"eR" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/open/floor/plasteel/warning{dir = 4},/area/awaymission/BMPship/Aft) -"eS" = (/obj/effect/decal/cleanable/cobweb,/obj/machinery/power/port_gen/pacman/super,/turf/open/floor/engine,/area/awaymission/BMPship/Aft) -"eT" = (/obj/structure/closet,/turf/open/floor/carpet,/area/awaymission/BMPship/Fore) -"eU" = (/obj/machinery/light{icon_state = "tube1"; dir = 4},/obj/structure/closet,/turf/open/floor/carpet,/area/awaymission/BMPship/Fore) -"eV" = (/obj/item/weapon/wrench,/turf/open/floor/plating,/area/awaymission/BMPship/Midship) -"eW" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/turf/open/floor/plasteel/bar,/area/awaymission/BMPship/Midship) -"eX" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel/bar,/area/awaymission/BMPship/Midship) -"eY" = (/obj/structure/mopbucket,/turf/open/floor/plating,/area/awaymission/BMPship/Aft) -"eZ" = (/obj/structure/window/reinforced{dir = 4},/obj/item/weapon/kitchen/knife,/turf/open/floor/plating,/area/awaymission/BMPship/Aft) -"fa" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/item/weapon/stock_parts/cell/high,/turf/open/floor/plasteel,/area/awaymission/BMPship/Aft) -"fb" = (/obj/machinery/door/unpowered/shuttle,/turf/closed/wall/mineral/titanium/interior,/area/awaymission/BMPship/Aft) -"fc" = (/obj/machinery/door/unpowered/shuttle,/turf/open/floor/carpet,/area/awaymission/BMPship/Fore) -"fd" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/door/unpowered/shuttle,/turf/open/floor/carpet,/area/awaymission/BMPship/Fore) -"fe" = (/obj/effect/gibspawner/xeno,/turf/open/floor/plating,/area/awaymission/BMPship/Midship) -"ff" = (/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plasteel{icon_state = "panelscorched"},/area/awaymission/BMPship/Midship) -"fg" = (/obj/structure/kitchenspike,/turf/open/floor/plasteel/bar,/area/awaymission/BMPship/Midship) -"fh" = (/turf/open/floor/plasteel/loadingarea/dirty{dir = 4},/area/awaymission/BMPship/Midship) -"fi" = (/obj/machinery/conveyor{dir = 4; id = "meatConvey2"},/obj/item/weapon/kitchen/knife,/turf/open/floor/plating,/area/awaymission/BMPship/Midship) -"fj" = (/obj/machinery/conveyor{dir = 4; id = "meatConvey2"},/obj/structure/plasticflaps,/turf/open/floor/plating,/area/awaymission/BMPship/Midship) -"fk" = (/obj/machinery/conveyor{dir = 4; id = "meatConvey2"},/turf/open/floor/plating,/area/awaymission/BMPship/Midship) -"fl" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/turf/open/floor/plasteel/bar,/area/awaymission/BMPship/Midship) -"fm" = (/turf/closed/wall/mineral/titanium/interior,/area/awaymission/BMPship/Midship) -"fn" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/turf/open/floor/plating,/area/awaymission/BMPship/Aft) -"fo" = (/obj/structure/window/reinforced,/turf/open/floor/plating,/area/awaymission/BMPship/Aft) -"fp" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/turf/open/floor/plating,/area/awaymission/BMPship/Aft) -"fq" = (/obj/item/stack/cable_coil,/turf/open/floor/plating,/area/awaymission/BMPship/Aft) -"fr" = (/obj/machinery/light/small{dir = 4},/turf/open/floor/plasteel/warning{dir = 4},/area/awaymission/BMPship/Aft) -"fs" = (/obj/item/stack/sheet/mineral/uranium{amount = 50},/turf/open/floor/engine,/area/awaymission/BMPship/Aft) -"ft" = (/turf/open/floor/plating/airless{icon_state = "platingdmg1"},/area/awaymission/BMPship/Fore) -"fu" = (/obj/structure/lattice,/turf/open/space,/area/awaymission/BMPship/Fore) -"fv" = (/turf/open/floor/plating/airless{icon_state = "platingdmg3"},/area/awaymission/BMPship/Fore) -"fw" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/open/floor/plating/airless,/area/awaymission/BMPship/Fore) -"fx" = (/obj/item/weapon/shard{icon_state = "small"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/open/floor/plating/airless,/area/awaymission/BMPship/Fore) -"fy" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/open/floor/plating/airless{icon_state = "panelscorched"},/area/awaymission/BMPship/Fore) -"fz" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/open/floor/plating/airless{icon_state = "platingdmg3"},/area/awaymission/BMPship/Fore) -"fA" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/item/weapon/kitchen/knife,/turf/open/floor/plasteel/bar,/area/awaymission/BMPship/Midship) -"fB" = (/obj/machinery/conveyor_switch/oneway{id = "meatConvey2"},/turf/open/floor/plasteel/bar,/area/awaymission/BMPship/Midship) -"fC" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/open/floor/plasteel/showroomfloor,/area/awaymission/BMPship/Aft) -"fD" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/open/floor/plasteel/showroomfloor,/area/awaymission/BMPship/Aft) -"fE" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/open/floor/plasteel/showroomfloor,/area/awaymission/BMPship/Aft) -"fF" = (/obj/item/weapon/mop,/turf/open/floor/plasteel/showroomfloor,/area/awaymission/BMPship/Aft) -"fG" = (/obj/effect/decal/cleanable/oil,/turf/open/floor/plating,/area/awaymission/BMPship/Aft) -"fH" = (/obj/structure/reagent_dispensers/fueltank,/turf/open/floor/plasteel/warning{dir = 4},/area/awaymission/BMPship/Aft) -"fI" = (/turf/open/floor/plating/airless{icon_state = "platingdmg2"},/area/awaymission/BMPship/Fore) -"fJ" = (/obj/item/weapon/shard,/turf/open/floor/plating/airless{icon_state = "platingdmg1"},/area/awaymission/BMPship/Fore) -"fK" = (/obj/structure/chair/stool,/turf/open/floor/plating/airless{icon_state = "platingdmg3"},/area/awaymission/BMPship/Fore) -"fL" = (/obj/item/stack/cable_coil{amount = 5},/turf/open/floor/plating/airless,/area/awaymission/BMPship/Fore) -"fM" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plating/airless,/area/awaymission/BMPship/Fore) -"fN" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/open/floor/plasteel/bar,/area/awaymission/BMPship/Midship) -"fO" = (/obj/structure/closet/crate/freezer,/obj/item/weapon/reagent_containers/food/snacks/meat,/turf/open/floor/plasteel/showroomfloor,/area/awaymission/BMPship/Aft) -"fP" = (/obj/item/weapon/reagent_containers/glass/bucket,/turf/open/floor/plasteel/showroomfloor,/area/awaymission/BMPship/Aft) -"fQ" = (/obj/structure/reagent_dispensers,/turf/open/floor/plasteel/showroomfloor,/area/awaymission/BMPship/Aft) -"fR" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plating,/area/awaymission/BMPship/Aft) -"fS" = (/turf/open/floor/plating/asteroid/airless,/area/awaymission/BMPship) -"fT" = (/obj/structure/frame/computer{anchored = 1},/turf/open/floor/plating/airless{icon_state = "panelscorched"},/area/awaymission/BMPship/Fore) -"fU" = (/obj/structure/frame/computer{anchored = 1},/turf/open/floor/plating/airless{icon_state = "platingdmg1"},/area/awaymission/BMPship/Fore) -"fV" = (/obj/machinery/light/small,/turf/open/floor/plasteel/bar,/area/awaymission/BMPship/Midship) -"fW" = (/turf/open/floor/plasteel{icon_state = "platingdmg3"},/area/awaymission/BMPship/Midship) -"fX" = (/turf/open/floor/plasteel{icon_state = "platingdmg1"},/area/awaymission/BMPship/Midship) -"fY" = (/obj/machinery/door/airlock/silver{locked = 1},/turf/open/floor/plasteel,/area/awaymission/BMPship/Aft) -"fZ" = (/obj/machinery/door/airlock/silver{locked = 1},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel,/area/awaymission/BMPship/Aft) -"ga" = (/obj/machinery/door/unpowered/shuttle,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plasteel,/area/awaymission/BMPship/Aft) -"gb" = (/turf/closed/mineral/random,/area/awaymission/BMPship) -"gc" = (/obj/item/device/multitool,/turf/open/floor/plating/airless{icon_state = "platingdmg2"},/area/awaymission/BMPship) -"gd" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/airlock/silver,/turf/open/floor/plating/airless,/area/awaymission/BMPship/Fore) -"ge" = (/turf/closed/mineral/random,/area/awaymission/BMPship/Midship) -"gf" = (/obj/machinery/light{dir = 1},/turf/open/floor/plasteel,/area/awaymission/BMPship/Aft) -"gg" = (/obj/structure/chair/stool,/turf/open/floor/plasteel,/area/awaymission/BMPship/Aft) -"gh" = (/obj/structure/table,/obj/item/weapon/paper{info = "DEAR DAIRY: So we was doing our typpical route when the captain says we've been picking up weird signals on some backwatter planet. Madsen wanted to stay on course but he ain't the captain, so we went out of the way to check it out. There was lots of rocks on the way, but we got to the planet fine. Found a big fancy camp with nobody around and this big metal donut thing with NT stamps all over it right in the middle. Case of beer too. Captain reckons we can pass it off to some buyer in the Syndicate. Ingram says it's bad luck and that someone is going to come look for it but it sounds like better money than selling bad meat to jerky companies."; name = "Old Diary"},/turf/open/floor/plasteel,/area/awaymission/BMPship/Aft) -"gi" = (/obj/structure/table,/obj/item/weapon/pen/red,/obj/item/weapon/reagent_containers/food/drinks/beer,/turf/open/floor/plasteel,/area/awaymission/BMPship/Aft) -"gj" = (/obj/structure/closet,/obj/item/clothing/under/overalls,/turf/open/floor/plasteel,/area/awaymission/BMPship/Aft) -"gk" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/structure/grille,/turf/open/floor/plating/airless,/area/awaymission/BMPship/Fore) -"gl" = (/obj/machinery/porta_turret{dir = 8; emagged = 1; installation = /obj/item/weapon/gun/energy/lasercannon},/turf/open/floor/engine,/area/awaymission/BMPship/Fore) -"gm" = (/obj/machinery/light/small{dir = 1},/turf/open/floor/engine,/area/awaymission/BMPship/Fore) -"gn" = (/obj/structure/cable,/turf/open/floor/plating/airless{icon_state = "platingdmg3"},/area/awaymission/BMPship/Fore) -"go" = (/obj/machinery/light/small{dir = 1},/turf/open/floor/plating/airless,/area/awaymission/BMPship/Fore) -"gp" = (/turf/open/floor/plating/asteroid/airless,/area/awaymission/BMPship/Fore) -"gq" = (/obj/structure/rack,/turf/open/floor/plating/airless,/area/awaymission/BMPship/Fore) -"gr" = (/obj/machinery/light/small{dir = 1},/turf/open/floor/plating/asteroid/airless,/area/awaymission/BMPship/Fore) -"gs" = (/turf/open/floor/plating/asteroid/airless,/area/awaymission/BMPship/Midship) -"gt" = (/turf/open/floor/plating/airless{broken = 1; icon_state = "platingdmg1"},/area/awaymission/BMPship/Midship) -"gu" = (/obj/machinery/light/small{dir = 1},/turf/open/floor/plating/airless,/area/awaymission/BMPship/Midship) -"gv" = (/obj/item/wallframe/apc,/turf/open/floor/plating/airless,/area/awaymission/BMPship/Midship) -"gw" = (/obj/structure/ore_box,/obj/machinery/light/small{dir = 1},/turf/open/floor/plating/airless,/area/awaymission/BMPship/Midship) -"gx" = (/obj/item/stack/cable_coil{amount = 5},/turf/open/floor/plating/airless,/area/awaymission/BMPship/Midship) -"gy" = (/obj/structure/ore_box,/turf/open/floor/plating/airless,/area/awaymission/BMPship/Midship) -"gz" = (/obj/machinery/computer/arcade,/turf/open/floor/plasteel,/area/awaymission/BMPship/Aft) -"gA" = (/obj/effect/decal/remains/human,/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel,/area/awaymission/BMPship/Aft) -"gB" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/open/floor/plasteel,/area/awaymission/BMPship/Aft) -"gC" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/open/floor/plasteel,/area/awaymission/BMPship/Aft) -"gD" = (/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/item/wallframe/apc,/turf/open/floor/plasteel,/area/awaymission/BMPship/Aft) -"gE" = (/obj/effect/decal/remains/human,/obj/item/clothing/head/helmet/space/syndicate/green/dark,/obj/effect/gibspawner/generic,/turf/open/floor/plating/asteroid/airless,/area/awaymission/BMPship) -"gF" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/grille,/obj/item/weapon/shard{icon_state = "small"},/turf/open/floor/plating/airless,/area/awaymission/BMPship/Fore) -"gG" = (/turf/open/floor/engine,/area/awaymission/BMPship/Fore) -"gH" = (/obj/machinery/door/unpowered/shuttle,/turf,/area/awaymission/BMPship/Fore) -"gI" = (/turf/open/floor/plating/airless,/area/awaymission/BMPship/Fore) -"gJ" = (/obj/effect/gibspawner/robot,/turf/open/floor/plasteel/airless{icon_state = "floorscorched2"},/area/awaymission/BMPship/Fore) -"gK" = (/turf/closed/mineral/random,/area/awaymission/BMPship/Fore) -"gL" = (/turf/open/floor/plating/airless{broken = 1; icon_state = "platingdmg2"},/area/awaymission/BMPship/Midship) -"gM" = (/obj/structure/mecha_wreckage/ripley,/turf/open/floor/plating/airless,/area/awaymission/BMPship/Midship) -"gN" = (/obj/structure/bed,/turf/open/floor/plasteel,/area/awaymission/BMPship/Aft) -"gO" = (/obj/structure/bed,/obj/item/weapon/bedsheet,/obj/item/weapon/storage/wallet/random,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel,/area/awaymission/BMPship/Aft) -"gP" = (/obj/structure/closet,/obj/item/clothing/under/lawyer/bluesuit,/obj/item/clothing/suit/apron,/turf/open/floor/plasteel,/area/awaymission/BMPship/Aft) -"gQ" = (/obj/item/clothing/suit/space/syndicate/green/dark,/turf/open/floor/plating/asteroid/airless,/area/awaymission/BMPship) -"gR" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/obj/structure/grille,/turf/open/floor/plating/airless,/area/awaymission/BMPship/Fore) -"gS" = (/turf/closed/wall/mineral/titanium,/area/awaymission/BMPship) -"gT" = (/obj/effect/gibspawner/robot,/turf/open/floor/plating/airless,/area/awaymission/BMPship/Midship) -"gU" = (/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/open/floor/plating/airless,/area/awaymission/BMPship/Midship) -"gV" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/open/floor/plating/airless,/area/awaymission/BMPship/Midship) -"gW" = (/obj/machinery/door/unpowered/shuttle,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/closed/wall/mineral/titanium/interior,/area/awaymission/BMPship/Midship) -"gX" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/open/floor/plasteel,/area/awaymission/BMPship/Aft) -"gY" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/open/floor/plasteel,/area/awaymission/BMPship/Aft) -"gZ" = (/obj/item/weapon/shard{icon_state = "medium"},/turf/open/space,/area/space) -"ha" = (/turf/open/floor/plating/airless{broken = 1; icon_state = "panelscorched"},/area/awaymission/BMPship/Midship) -"hb" = (/obj/effect/decal/remains/human,/turf/open/floor/plasteel,/area/awaymission/BMPship/Aft) -"hc" = (/obj/structure/bed,/obj/item/weapon/bedsheet,/turf/open/floor/plasteel,/area/awaymission/BMPship/Aft) -"hd" = (/obj/machinery/door/unpowered/shuttle,/turf/open/floor/plasteel/cafeteria{dir = 2},/area/awaymission/BMPship/Aft) -"he" = (/obj/structure/mirror{pixel_y = 28},/turf/open/floor/plasteel/cafeteria{dir = 2},/area/awaymission/BMPship/Aft) -"hf" = (/obj/structure/toilet{dir = 8},/obj/machinery/light/small{dir = 1},/turf/open/floor/plasteel/cafeteria{dir = 2},/area/awaymission/BMPship/Aft) -"hg" = (/turf/open/floor/plating/airless{broken = 1; icon_state = "platingdmg3"},/area/awaymission/BMPship/Midship) -"hh" = (/obj/item/weapon/caution,/turf/open/floor/plating/airless,/area/awaymission/BMPship/Midship) -"hi" = (/obj/machinery/portable_atmospherics/canister/air,/turf/open/floor/plating/airless,/area/awaymission/BMPship/Midship) -"hj" = (/obj/structure/closet/crate,/obj/item/stack/spacecash/c10,/obj/item/stack/spacecash/c200,/turf/open/floor/plasteel,/area/awaymission/BMPship/Aft) -"hk" = (/obj/structure/closet/crate,/obj/item/stack/spacecash/c10,/turf/open/floor/plasteel,/area/awaymission/BMPship/Aft) -"hl" = (/obj/structure/sink{dir = 2},/turf/open/floor/plasteel/cafeteria{dir = 2},/area/awaymission/BMPship/Aft) -"hm" = (/turf/open/floor/plasteel/cafeteria{dir = 2},/turf/closed/wall/mineral/titanium/interior,/area/awaymission/BMPship/Aft) -"hn" = (/obj/item/clothing/gloves/color/fyellow,/turf/open/floor/plating/asteroid/airless,/area/awaymission/BMPship) -"ho" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/grille,/turf/open/floor/engine,/area/awaymission/BMPship/Aft) -"hp" = (/obj/machinery/light/small{dir = 1},/turf/open/floor/engine,/area/awaymission/BMPship/Aft) -"hq" = (/obj/item/weapon/storage/box/matches,/obj/item/weapon/storage/fancy/cigarettes/dromedaryco,/turf/open/floor/plating,/area/awaymission/BMPship/Aft) -"hr" = (/obj/item/weapon/poster/contraband,/turf/open/floor/plating,/area/awaymission/BMPship/Aft) -"hs" = (/obj/item/weapon/reagent_containers/food/drinks/beer,/turf/open/floor/plating,/area/awaymission/BMPship/Aft) -"ht" = (/turf/open/floor/plating,/turf/closed/wall/mineral/titanium/interior,/area/awaymission/BMPship/Aft) -"hu" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/obj/structure/grille,/turf/open/floor/engine,/area/awaymission/BMPship/Aft) -"hv" = (/turf/closed/mineral/diamond,/area/awaymission/BMPship) -"hw" = (/turf/closed/mineral/clown,/area/awaymission/BMPship) +"ac" = (/turf/closed/wall/shuttle{icon_state = "swall4"},/area/awaymission/BMPship/Aft) +"ad" = (/turf/closed/wall/shuttle{icon_state = "swall12"},/area/awaymission/BMPship/Aft) +"ae" = (/turf/closed/wall/shuttle{icon_state = "swall14"},/area/awaymission/BMPship/Aft) +"af" = (/turf/closed/wall/shuttle{icon_state = "swall_s10";dir = 2},/area/awaymission/BMPship/Aft) +"ag" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/grille,/turf/open/floor/engine,/area/awaymission/BMPship/Aft) +"ah" = (/obj/machinery/porta_turret{dir = 8;emagged = 1;installation = /obj/item/weapon/gun/energy/lasercannon},/turf/open/floor/engine,/area/awaymission/BMPship/Aft) +"ai" = (/turf/open/floor/engine,/area/awaymission/BMPship/Aft) +"aj" = (/turf/closed/wall/shuttle{icon_state = "swall3";dir = 2},/area/awaymission/BMPship/Aft) +"ak" = (/obj/machinery/light/small{dir = 8},/turf/open/floor/plating,/area/awaymission/BMPship/Aft) +"al" = (/turf/open/floor/plating,/turf/closed/wall/shuttle{icon_state = "swall_f5";dir = 2},/area/awaymission/BMPship/Aft) +"am" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/grille,/turf/open/floor/engine,/area/awaymission/BMPship/Aft) +"an" = (/obj/machinery/door/unpowered/shuttle,/turf/open/floor/plating,/area/awaymission/BMPship/Aft) +"ao" = (/turf/open/floor/plating,/area/awaymission/BMPship/Aft) +"ap" = (/obj/structure/lattice,/turf/open/space,/area/space) +"aq" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/grille,/turf/open/floor/engine,/area/awaymission/BMPship/Aft) +"ar" = (/obj/machinery/light/small,/turf/open/floor/engine,/area/awaymission/BMPship/Aft) +"as" = (/turf/closed/wall/shuttle{icon_state = "swall7"},/area/awaymission/BMPship/Aft) +"at" = (/turf/closed/wall/shuttle{icon_state = "swall_s6";dir = 2},/area/space) +"au" = (/turf/closed/wall/shuttle{icon_state = "swall13"},/area/awaymission/BMPship/Aft) +"av" = (/turf/closed/wall/shuttle{icon_state = "swall8"},/area/awaymission/BMPship/Aft) +"aw" = (/obj/machinery/door/airlock/silver{locked = 1},/turf/open/floor/plating{icon_state = "panelscorched"},/area/awaymission/BMPship/Aft) +"ax" = (/turf/closed/wall/shuttle{icon_state = "swall12";dir = 2},/area/awaymission/BMPship/Aft) +"ay" = (/turf/closed/wall/shuttle,/area/awaymission/BMPship/Midship) +"az" = (/obj/structure/bed/roller,/turf/open/floor/plating/airless,/area/awaymission/BMPship/Midship) +"aA" = (/turf/open/floor/plating/airless,/area/awaymission/BMPship/Midship) +"aB" = (/obj/item/weapon/restraints/handcuffs,/obj/item/weapon/restraints/handcuffs,/obj/structure/closet/crate,/turf/open/floor/plating/airless,/area/awaymission/BMPship/Midship) +"aC" = (/obj/item/weapon/scalpel,/obj/structure/closet/crate,/obj/item/weapon/tank/internals/anesthetic,/turf/open/floor/plating/airless,/area/awaymission/BMPship/Midship) +"aD" = (/obj/item/bodybag,/turf/open/floor/plating/airless,/area/awaymission/BMPship/Midship) +"aE" = (/obj/item/weapon/storage/box/syringes,/turf/open/floor/plating/airless,/area/awaymission/BMPship/Midship) +"aF" = (/obj/structure/cable{d1 = 2;d2 = 4;icon_state = "2-4"},/turf/open/floor/plating/airless,/area/awaymission/BMPship/Midship) +"aG" = (/obj/structure/table/optable,/obj/structure/cable{d1 = 4;d2 = 8;icon_state = "4-8";pixel_y = 0},/turf/open/floor/plating/airless,/area/awaymission/BMPship/Midship) +"aH" = (/obj/machinery/computer/operating,/obj/structure/cable{d2 = 8;icon_state = "0-8"},/turf/open/floor/plating/airless,/area/awaymission/BMPship/Midship) +"aI" = (/turf/closed/wall/shuttle{icon_state = "swall3"},/area/awaymission/BMPship/Midship) +"aJ" = (/turf/open/floor/plating/warnplate{dir = 9},/area/awaymission/BMPship/Aft) +"aK" = (/obj/structure/closet/crate/freezer,/obj/item/organ/appendix,/obj/item/weapon/reagent_containers/food/snacks/meat/slab,/obj/item/weapon/reagent_containers/food/snacks/meat/slab/human/mutant/golem,/turf/open/floor/plating/warnplate{dir = 1},/area/awaymission/BMPship/Aft) +"aL" = (/obj/structure/closet/crate/freezer,/obj/item/organ/brain,/obj/item/weapon/reagent_containers/food/snacks/meat/slab,/obj/item/weapon/reagent_containers/food/snacks/meat/slab/human/mutant/slime,/turf/open/floor/plating/warnplate{dir = 1},/area/awaymission/BMPship/Aft) +"aM" = (/obj/structure/table,/obj/item/stack/packageWrap,/turf/open/floor/plating/warnplate{dir = 1},/area/awaymission/BMPship/Aft) +"aN" = (/obj/structure/table,/obj/item/weapon/storage/box,/obj/machinery/light/small{dir = 1},/turf/open/floor/plating/warnplate{dir = 1},/area/awaymission/BMPship/Aft) +"aO" = (/turf/open/floor/plating/warnplate{dir = 1},/area/awaymission/BMPship/Aft) +"aP" = (/turf/open/floor/plating/warnplate{dir = 5},/turf/closed/wall/shuttle{icon_state = "swall_f5";dir = 2},/area/awaymission/BMPship/Aft) +"aQ" = (/turf/open/floor/plating/airless{icon_state = "platingdmg2"},/area/awaymission/BMPship/Midship) +"aR" = (/turf/open/floor/plating/airless{icon_state = "platingdmg3"},/area/awaymission/BMPship/Midship) +"aS" = (/obj/structure/cable{d1 = 1;d2 = 2;icon_state = "1-2"},/turf/open/floor/plating/airless,/area/awaymission/BMPship/Midship) +"aT" = (/turf/closed/wall/shuttle{icon_state = "swall1"},/area/awaymission/BMPship/Midship) +"aU" = (/turf/open/floor/plating/warnplate{dir = 8},/area/awaymission/BMPship/Aft) +"aV" = (/obj/item/weapon/storage/box,/turf/open/floor/plating,/area/awaymission/BMPship/Aft) +"aW" = (/obj/item/weapon/hand_labeler,/turf/open/floor/plating,/area/awaymission/BMPship/Aft) +"aX" = (/obj/structure/closet/crate/large,/turf/open/floor/plating/warnplate{dir = 4},/area/awaymission/BMPship/Aft) +"aY" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/grille,/turf/open/floor/plating/airless,/area/awaymission/BMPship/Fore) +"aZ" = (/obj/structure/table/wood,/obj/item/stack/spacecash/c500,/obj/item/stack/spacecash/c100,/obj/item/weapon/reagent_containers/food/drinks/beer,/turf/open/floor/wood,/area/awaymission/BMPship/Fore) +"ba" = (/obj/structure/bed,/obj/item/weapon/bedsheet/yellow,/turf/open/floor/wood,/area/awaymission/BMPship/Fore) +"bb" = (/obj/structure/rack,/turf/open/floor/plating/warnplate{dir = 1},/area/awaymission/BMPship/Fore) +"bc" = (/turf/open/floor/plating/warnplate{dir = 5},/area/awaymission/BMPship/Fore) +"bd" = (/obj/structure/sign/vacuum,/turf/closed/wall/shuttle{icon_state = "swall1"},/area/awaymission/BMPship/Fore) +"be" = (/turf/open/floor/plating/airless{icon_state = "platingdmg1"},/area/awaymission/BMPship/Midship) +"bf" = (/turf/open/floor/plating/airless{icon_state = "panelscorched"},/area/awaymission/BMPship/Midship) +"bg" = (/obj/effect/decal/cleanable/blood/gibs/old,/obj/effect/gibspawner/human,/turf/open/floor/plating/airless,/area/awaymission/BMPship/Midship) +"bh" = (/obj/structure/cable{d1 = 1;d2 = 4;icon_state = "1-4"},/obj/item/clothing/glasses/regular/hipster,/turf/open/floor/plating/airless,/area/awaymission/BMPship/Midship) +"bi" = (/obj/structure/cable{d1 = 4;d2 = 8;icon_state = "4-8";pixel_y = 0},/turf/open/floor/plating/airless,/area/awaymission/BMPship/Midship) +"bj" = (/obj/machinery/door/unpowered/shuttle,/obj/structure/cable{d1 = 4;d2 = 8;icon_state = "4-8";pixel_y = 0},/turf,/area/awaymission/BMPship/Midship) +"bk" = (/obj/structure/cable{d1 = 4;d2 = 8;icon_state = "4-8";pixel_y = 0},/turf/open/floor/plating/warnplate{dir = 8},/area/awaymission/BMPship/Aft) +"bl" = (/obj/structure/cable{d1 = 2;d2 = 8;icon_state = "2-8"},/turf/open/floor/plating,/area/awaymission/BMPship/Aft) +"bm" = (/obj/structure/closet/crate/freezer,/obj/item/weapon/reagent_containers/food/drinks/beer,/obj/item/weapon/reagent_containers/food/drinks/beer,/turf/open/floor/plating,/area/awaymission/BMPship/Aft) +"bn" = (/obj/machinery/computer/teleporter,/turf/open/floor/plating,/area/awaymission/BMPship/Aft) +"bo" = (/obj/machinery/teleport/station,/turf/open/floor/plating,/area/awaymission/BMPship/Aft) +"bp" = (/obj/machinery/teleport/hub,/turf/open/floor/plating,/area/awaymission/BMPship/Aft) +"bq" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/grille,/turf/open/floor/plating/airless,/area/awaymission/BMPship/Fore) +"br" = (/turf/open/floor/wood,/area/awaymission/BMPship/Fore) +"bs" = (/obj/machinery/light/small{dir = 4},/turf/open/floor/wood,/area/awaymission/BMPship/Fore) +"bt" = (/obj/machinery/door/airlock/external,/turf/open/floor/plating,/area/awaymission/BMPship/Fore) +"bu" = (/turf/closed/wall/shuttle{icon_state = "swall2"},/area/awaymission/BMPship/Midship) +"bv" = (/obj/structure/cable{d1 = 1;d2 = 2;icon_state = "1-2"},/turf/open/floor/plating,/area/awaymission/BMPship/Aft) +"bw" = (/obj/structure/closet/crate,/obj/item/stack/spacecash/c1000,/obj/item/stack/spacecash/c50,/turf/open/floor/plating/warnplate{dir = 4},/area/awaymission/BMPship/Aft) +"bx" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/grille,/turf/open/floor/plating/airless,/area/awaymission/BMPship/Fore) +"by" = (/turf/open/floor/plasteel{icon_state = "wood-broken"},/area/awaymission/BMPship/Fore) +"bz" = (/turf/open/floor/plating/warnplate{dir = 2},/area/awaymission/BMPship/Fore) +"bA" = (/obj/machinery/light/small,/turf/open/floor/plating/warnplate{dir = 2},/area/awaymission/BMPship/Fore) +"bB" = (/turf/open/floor/plating/warnplate{dir = 6},/area/awaymission/BMPship/Fore) +"bC" = (/turf/closed/wall/shuttle{icon_state = "swall11"},/area/awaymission/BMPship/Midship) +"bD" = (/obj/machinery/light,/obj/effect/decal/cleanable/blood/gibs/old,/turf/open/floor/plating/airless,/area/awaymission/BMPship/Midship) +"bE" = (/obj/machinery/button/door{id = "packerMed";pixel_y = -24},/turf/open/floor/plating/airless,/area/awaymission/BMPship/Midship) +"bF" = (/obj/machinery/sleeper{dir = 1},/turf/open/floor/plating/airless,/area/awaymission/BMPship/Midship) +"bG" = (/obj/machinery/sleep_console,/turf/open/floor/plating/airless,/area/awaymission/BMPship/Midship) +"bH" = (/obj/machinery/light,/turf/open/floor/plating/airless,/area/awaymission/BMPship/Midship) +"bI" = (/obj/structure/cable{d1 = 1;d2 = 4;icon_state = "1-4"},/turf/open/floor/plating,/area/awaymission/BMPship/Aft) +"bJ" = (/obj/structure/cable{d1 = 4;d2 = 8;icon_state = "4-8";pixel_y = 0},/obj/item/weapon/hand_labeler,/turf/open/floor/plating,/area/awaymission/BMPship/Aft) +"bK" = (/obj/structure/cable{d1 = 4;d2 = 8;icon_state = "4-8";pixel_y = 0},/turf/open/floor/plating,/area/awaymission/BMPship/Aft) +"bL" = (/obj/structure/cable{d1 = 4;d2 = 8;icon_state = "4-8";pixel_y = 0},/obj/item/weapon/storage/box,/turf/open/floor/plating,/area/awaymission/BMPship/Aft) +"bM" = (/turf/open/floor/plating/warnplate{dir = 4},/area/awaymission/BMPship/Aft) +"bN" = (/turf/closed/wall/shuttle{icon_state = "swallc2"},/area/awaymission/BMPship/Fore) +"bO" = (/obj/machinery/door/unpowered/shuttle,/turf/open/floor/plasteel{icon_state = "carpetside";dir = 1},/area/awaymission/BMPship/Fore) +"bP" = (/obj/machinery/door/airlock/silver,/turf/open/floor/carpet,/area/awaymission/BMPship/Fore) +"bQ" = (/turf/closed/wall/shuttle{icon_state = "swall15"},/area/awaymission/BMPship/Midship) +"bR" = (/obj/machinery/door/poddoor/shutters{id = "packerMed"},/turf/open/floor/plating/airless,/area/awaymission/BMPship/Midship) +"bS" = (/obj/structure/closet/crate/large,/turf/open/floor/plating/warnplate{dir = 10},/area/awaymission/BMPship/Aft) +"bT" = (/obj/structure/kitchenspike,/turf/open/floor/plating/warnplate{dir = 2},/area/awaymission/BMPship/Aft) +"bU" = (/obj/structure/closet/crate,/obj/item/device/analyzer,/obj/item/stack/spacecash/c10,/turf/open/floor/plating/warnplate{dir = 2},/area/awaymission/BMPship/Aft) +"bV" = (/obj/structure/closet/crate,/obj/item/stack/spacecash/c1000,/obj/item/stack/spacecash/c200,/obj/item/stack/spacecash/c500,/turf/open/floor/plating/warnplate{dir = 2},/area/awaymission/BMPship/Aft) +"bW" = (/obj/structure/closet/crate/freezer,/obj/item/weapon/reagent_containers/food/snacks/hugemushroomslice,/obj/item/organ/appendix,/obj/item/weapon/reagent_containers/food/snacks/meat/slab,/obj/item/weapon/reagent_containers/food/snacks/meat/slab/human/mutant/golem/adamantine,/turf/open/floor/plating/warnplate{dir = 2},/area/awaymission/BMPship/Aft) +"bX" = (/obj/machinery/button/door{id = "packerCargo";pixel_y = -24},/obj/machinery/light/small,/turf/open/floor/plating/warnplate{dir = 2},/area/awaymission/BMPship/Aft) +"bY" = (/obj/structure/cable{d1 = 1;d2 = 2;icon_state = "1-2"},/turf/open/floor/plating/warnplate{dir = 2},/area/awaymission/BMPship/Aft) +"bZ" = (/turf/open/space,/turf/closed/wall/shuttle{icon_state = "swall_f9";dir = 2},/area/space) +"ca" = (/turf/open/floor/carpet,/turf/closed/wall/shuttle{icon_state = "swall_f9";dir = 2},/area/awaymission/BMPship/Fore) +"cb" = (/turf/open/floor/carpet,/area/awaymission/BMPship/Fore) +"cc" = (/obj/structure/cable{icon_state = "0-2";d2 = 2},/obj/machinery/power/apc{dir = 1;environ = 0;equipment = 3;locked = 0;pixel_y = 32;req_access = ""},/turf/open/floor/carpet,/area/awaymission/BMPship/Fore) +"cd" = (/obj/structure/table,/obj/item/weapon/screwdriver,/obj/item/weapon/screwdriver,/obj/item/weapon/paper{info = "The next person who takes one of my screwdrivers gets stabbed with one. They are MINE. - Love, Madsen";name = "scribbled note"},/obj/item/weapon/screwdriver,/turf/open/floor/plasteel/bar,/area/awaymission/BMPship/Midship) +"ce" = (/obj/machinery/light{dir = 1},/turf/open/floor/plasteel/bar,/area/awaymission/BMPship/Midship) +"cf" = (/obj/machinery/hydroponics,/turf/open/floor/plasteel/green/side{dir = 8},/area/awaymission/BMPship/Midship) +"cg" = (/obj/structure/sink{dir = 2},/turf/open/floor/plasteel/yellow/side{dir = 1},/area/awaymission/BMPship/Midship) +"ch" = (/obj/machinery/vending/hydroseeds{slogan_delay = 700},/turf/open/floor/plasteel/yellow/side{dir = 1},/area/awaymission/BMPship/Midship) +"ci" = (/obj/machinery/vending/hydronutrients,/turf/open/floor/plasteel/yellow/side{dir = 1},/area/awaymission/BMPship/Midship) +"cj" = (/obj/machinery/hydroponics,/turf/open/floor/plasteel/green/side{dir = 4},/area/awaymission/BMPship/Midship) +"ck" = (/turf/open/floor/plasteel/bar,/area/awaymission/BMPship/Midship) +"cl" = (/obj/structure/table,/obj/item/weapon/kitchen/knife/butcher,/obj/item/weapon/reagent_containers/food/drinks/beer,/obj/item/weapon/reagent_containers/food/snacks/meat,/turf/open/floor/plasteel/barber,/area/awaymission/BMPship/Midship) +"cm" = (/obj/structure/table,/obj/item/weapon/storage/box/donkpockets,/turf/open/floor/plasteel/barber,/area/awaymission/BMPship/Midship) +"cn" = (/obj/structure/table,/obj/machinery/microwave,/turf/open/floor/plasteel/barber,/area/awaymission/BMPship/Midship) +"co" = (/obj/machinery/processor,/obj/machinery/light{dir = 1},/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plasteel/barber,/area/awaymission/BMPship/Midship) +"cp" = (/obj/structure/table,/obj/item/weapon/reagent_containers/food/drinks/beer,/turf/open/floor/plasteel/bar,/area/awaymission/BMPship/Midship) +"cq" = (/obj/structure/table,/obj/item/weapon/kitchen/knife,/turf/open/floor/plasteel/bar,/area/awaymission/BMPship/Midship) +"cr" = (/obj/structure/table,/obj/machinery/light/small{dir = 1},/turf/open/floor/plasteel/bar,/area/awaymission/BMPship/Midship) +"cs" = (/obj/structure/table,/obj/effect/decal/cleanable/cobweb2,/turf/open/floor/plasteel/bar,/area/awaymission/BMPship/Midship) +"ct" = (/obj/structure/cable{d1 = 1;d2 = 2;icon_state = "1-2"},/obj/machinery/door/poddoor/shutters{id = "packerCargo"},/turf/open/floor/plating,/area/awaymission/BMPship/Aft) +"cu" = (/obj/structure/cable{d1 = 1;d2 = 2;icon_state = "1-2";pixel_y = 0},/turf/open/floor/carpet,/area/awaymission/BMPship/Fore) +"cv" = (/obj/item/weapon/reagent_containers/food/snacks/hugemushroomslice,/turf/open/floor/plasteel/bar,/area/awaymission/BMPship/Midship) +"cw" = (/turf/open/floor/plasteel,/area/awaymission/BMPship/Midship) +"cx" = (/obj/item/weapon/reagent_containers/food/drinks/beer,/turf/open/floor/plasteel,/area/awaymission/BMPship/Midship) +"cy" = (/turf/open/floor/plasteel/barber,/area/awaymission/BMPship/Midship) +"cz" = (/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plasteel/barber,/area/awaymission/BMPship/Midship) +"cA" = (/obj/structure/chair/stool,/turf/open/floor/plasteel/bar,/area/awaymission/BMPship/Midship) +"cB" = (/obj/structure/kitchenspike,/turf/open/floor/plasteel/showroomfloor,/area/awaymission/BMPship/Aft) +"cC" = (/turf/open/floor/plasteel/showroomfloor,/area/awaymission/BMPship/Aft) +"cD" = (/obj/machinery/door/airlock/silver,/turf/open/floor/plasteel/showroomfloor,/area/awaymission/BMPship/Aft) +"cE" = (/turf/open/floor/plasteel/white,/area/awaymission/BMPship/Aft) +"cF" = (/obj/machinery/light/small{dir = 1},/turf/open/floor/plasteel/white,/area/awaymission/BMPship/Aft) +"cG" = (/obj/effect/decal/cleanable/blood/gibs/old,/turf/open/floor/plasteel/white,/area/awaymission/BMPship/Aft) +"cH" = (/obj/machinery/gibber,/turf/open/floor/plasteel/white,/area/awaymission/BMPship/Aft) +"cI" = (/turf/open/floor/plasteel/hydrofloor,/area/awaymission/BMPship/Aft) +"cJ" = (/obj/structure/cable{d1 = 1;d2 = 2;icon_state = "1-2"},/turf/open/floor/plasteel,/area/awaymission/BMPship/Aft) +"cK" = (/turf/closed/wall/shuttle{icon_state = "swallc3"},/area/awaymission/BMPship/Aft) +"cL" = (/obj/structure/cable{d1 = 1;d2 = 4;icon_state = "1-4"},/turf/open/floor/carpet,/area/awaymission/BMPship/Fore) +"cM" = (/obj/structure/cable{d1 = 2;d2 = 8;icon_state = "2-8"},/turf/open/floor/carpet,/area/awaymission/BMPship/Fore) +"cN" = (/obj/item/weapon/reagent_containers/food/snacks/hugemushroomslice,/turf/open/floor/plasteel,/area/awaymission/BMPship/Midship) +"cO" = (/obj/machinery/door/unpowered/shuttle,/turf/open/floor/plasteel/bar,/area/awaymission/BMPship/Midship) +"cP" = (/obj/structure/window/reinforced,/turf/open/floor/plasteel/barber,/area/awaymission/BMPship/Midship) +"cQ" = (/obj/structure/window/reinforced,/obj/structure/cable{icon_state = "0-2";pixel_y = 1;d2 = 2},/turf/open/floor/plasteel/barber,/area/awaymission/BMPship/Midship) +"cR" = (/obj/machinery/door/window,/turf/open/floor/plasteel/barber,/area/awaymission/BMPship/Midship) +"cS" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/turf/open/floor/plasteel/barber,/area/awaymission/BMPship/Midship) +"cT" = (/obj/item/weapon/reagent_containers/food/drinks/beer,/turf/open/floor/plasteel/bar,/area/awaymission/BMPship/Midship) +"cU" = (/obj/structure/cable{icon_state = "0-2";pixel_y = 1;d2 = 2},/turf/open/floor/plasteel/showroomfloor,/area/awaymission/BMPship/Aft) +"cV" = (/obj/structure/closet/secure_closet/freezer/meat{opened = 1},/turf/open/floor/plasteel/white,/area/awaymission/BMPship/Aft) +"cW" = (/obj/structure/closet/crate/freezer,/obj/item/weapon/reagent_containers/food/snacks/meat/slab,/obj/item/weapon/reagent_containers/food/snacks/meat/slab,/turf/open/floor/plasteel/white,/area/awaymission/BMPship/Aft) +"cX" = (/obj/effect/decal/cleanable/blood/splatter,/turf/open/floor/plasteel/white,/area/awaymission/BMPship/Aft) +"cY" = (/obj/item/weapon/crowbar,/turf/open/floor/plasteel/white,/area/awaymission/BMPship/Aft) +"cZ" = (/turf/open/floor/plasteel/warning{dir = 8},/area/awaymission/BMPship/Aft) +"da" = (/obj/structure/cable{icon_state = "0-2";pixel_y = 1;d2 = 2},/obj/machinery/power/apc{dir = 1;environ = 0;equipment = 3;locked = 0;pixel_y = 32;req_access = ""},/turf/open/floor/plating,/area/awaymission/BMPship/Aft) +"db" = (/turf/open/floor/plasteel/warning{dir = 4},/area/awaymission/BMPship/Aft) +"dc" = (/obj/structure/table,/obj/item/weapon/paper{info = "I'm no scientist, but judging from the design and components, it seems to be some kind of teleporter. This thing is gonna be worth a lot of cash to the right man. The boys are excited, as they have every right to be, and I've let them crack into that case of beer we got. I normally wouldn't allow such a thing, but this is a time for celebration! It's not like a couple drinks will hurt anything.";name = "Captain's log entry"},/turf/open/floor/carpet,/area/awaymission/BMPship/Fore) +"dd" = (/obj/structure/table,/obj/item/weapon/reagent_containers/food/drinks/beer,/turf/open/floor/carpet,/area/awaymission/BMPship/Fore) +"de" = (/obj/structure/frame/computer{anchored = 1},/turf/open/floor/carpet,/area/awaymission/BMPship/Fore) +"df" = (/obj/structure/cable{d1 = 1;d2 = 2;icon_state = "1-2"},/turf/open/floor/carpet,/area/awaymission/BMPship/Fore) +"dg" = (/obj/machinery/hydroponics,/turf/open/floor/plasteel/green/side{dir = 10},/area/awaymission/BMPship/Midship) +"dh" = (/turf/open/floor/plasteel/green/side,/area/awaymission/BMPship/Midship) +"di" = (/obj/machinery/seed_extractor,/obj/item/seeds/plump/walkingmushroom,/turf/open/floor/plasteel/green/side,/area/awaymission/BMPship/Midship) +"dj" = (/obj/machinery/hydroponics,/turf/open/floor/plasteel/green/side{dir = 6},/area/awaymission/BMPship/Midship) +"dk" = (/obj/structure/cable{d1 = 2;d2 = 4;icon_state = "2-4"},/obj/structure/cable{d1 = 1;d2 = 2;icon_state = "1-2"},/turf/open/floor/plasteel/bar,/area/awaymission/BMPship/Midship) +"dl" = (/obj/structure/cable{d1 = 4;d2 = 8;icon_state = "4-8";pixel_x = 0},/turf/open/floor/plasteel/bar,/area/awaymission/BMPship/Midship) +"dm" = (/obj/structure/cable{d1 = 2;d2 = 8;icon_state = "2-8"},/turf/open/floor/plasteel/bar,/area/awaymission/BMPship/Midship) +"dn" = (/obj/structure/cable{d1 = 1;d2 = 2;icon_state = "1-2"},/turf/open/floor/plasteel/showroomfloor,/area/awaymission/BMPship/Aft) +"do" = (/obj/structure/cable{d1 = 1;d2 = 4;icon_state = "1-4"},/obj/structure/cable{d1 = 2;d2 = 4;icon_state = "2-4"},/turf/open/floor/plasteel,/area/awaymission/BMPship/Aft) +"dp" = (/obj/structure/cable{d1 = 4;d2 = 8;icon_state = "4-8";pixel_x = 0},/turf/open/floor/plating,/area/awaymission/BMPship/Aft) +"dq" = (/obj/structure/cable{d1 = 4;d2 = 8;icon_state = "4-8";pixel_x = 0},/obj/structure/cable{d1 = 2;d2 = 4;icon_state = "2-4"},/turf/open/floor/plating,/area/awaymission/BMPship/Aft) +"dr" = (/obj/structure/cable{d1 = 4;d2 = 8;icon_state = "4-8";pixel_x = 0},/obj/structure/cable{d1 = 1;d2 = 4;icon_state = "1-4"},/turf/open/floor/plating,/area/awaymission/BMPship/Aft) +"ds" = (/obj/structure/cable{d1 = 2;d2 = 8;icon_state = "2-8"},/obj/machinery/light/small{dir = 4},/turf/open/floor/plasteel/warning{dir = 4},/area/awaymission/BMPship/Aft) +"dt" = (/obj/item/device/multitool,/turf/open/floor/engine,/area/awaymission/BMPship/Aft) +"du" = (/obj/structure/shuttle/engine/heater{icon_state = "heater";dir = 4},/obj/structure/window/reinforced{dir = 8},/turf/open/floor/engine/airless,/area/awaymission/BMPship/Aft) +"dv" = (/obj/structure/shuttle/engine/propulsion{icon_state = "propulsion";dir = 8},/turf/open/space,/area/awaymission/BMPship/Aft) +"dw" = (/obj/structure/table,/obj/machinery/recharger,/turf/open/floor/carpet,/area/awaymission/BMPship/Fore) +"dx" = (/obj/structure/chair/stool,/turf/open/floor/carpet,/area/awaymission/BMPship/Fore) +"dy" = (/obj/machinery/light{icon_state = "tube1";dir = 4},/obj/structure/cable{d1 = 1;d2 = 2;icon_state = "1-2"},/turf/open/floor/carpet,/area/awaymission/BMPship/Fore) +"dz" = (/obj/machinery/light/small{dir = 8},/turf/open/floor/plasteel/bar,/area/awaymission/BMPship/Midship) +"dA" = (/obj/structure/cable{d1 = 2;d2 = 4;icon_state = "2-4"},/turf/open/floor/plasteel/bar,/area/awaymission/BMPship/Midship) +"dB" = (/obj/structure/cable{d1 = 4;d2 = 8;icon_state = "4-8";pixel_y = 0},/turf/open/floor/plasteel/bar,/area/awaymission/BMPship/Midship) +"dC" = (/obj/structure/cable{d1 = 1;d2 = 2;icon_state = "1-2"},/turf/open/floor/plasteel/bar,/area/awaymission/BMPship/Midship) +"dD" = (/obj/machinery/light/small{dir = 4},/turf/open/floor/plasteel/bar,/area/awaymission/BMPship/Midship) +"dE" = (/turf/closed/wall/r_wall,/area/awaymission/BMPship/Midship) +"dF" = (/obj/machinery/light/small{dir = 4},/turf/open/floor/plasteel/showroomfloor,/area/awaymission/BMPship/Aft) +"dG" = (/obj/machinery/light/small{dir = 8},/turf/open/floor/plasteel/warning{dir = 8},/area/awaymission/BMPship/Aft) +"dH" = (/obj/structure/cable{d1 = 1;d2 = 2;icon_state = "1-2";pixel_y = 0},/turf/open/floor/plasteel,/area/awaymission/BMPship/Aft) +"dI" = (/obj/structure/cable{d1 = 1;d2 = 2;icon_state = "1-2"},/turf/open/floor/plasteel/warning{dir = 4},/area/awaymission/BMPship/Aft) +"dJ" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/grille,/turf/open/floor/plating,/area/awaymission/BMPship/Fore) +"dK" = (/obj/item/weapon/shard,/turf/open/floor/carpet,/area/awaymission/BMPship/Fore) +"dL" = (/obj/structure/cable{d1 = 2;d2 = 4;icon_state = "2-4"},/obj/structure/cable{d1 = 1;d2 = 4;icon_state = "1-4"},/turf/open/floor/carpet,/area/awaymission/BMPship/Fore) +"dM" = (/obj/machinery/door/airlock/silver,/obj/structure/cable{d1 = 4;d2 = 8;icon_state = "4-8";pixel_y = 0},/turf/open/floor/carpet,/area/awaymission/BMPship/Fore) +"dN" = (/obj/structure/cable{d1 = 1;d2 = 8;icon_state = "1-8"},/turf/open/floor/plasteel/bar,/area/awaymission/BMPship/Midship) +"dO" = (/obj/machinery/shieldwallgen,/obj/structure/cable{icon_state = "0-4";d2 = 4},/turf/open/floor/plating,/area/awaymission/BMPship/Midship) +"dP" = (/obj/structure/cable{d1 = 2;d2 = 8;icon_state = "2-8"},/obj/structure/cable{d1 = 1;d2 = 2;icon_state = "1-2"},/turf/open/floor/plasteel/bar,/area/awaymission/BMPship/Midship) +"dQ" = (/obj/structure/cable{icon_state = "0-2";d2 = 2},/obj/machinery/power/apc{dir = 1;locked = 0;pixel_y = 28;req_access = ""},/turf/open/floor/plasteel/bar,/area/awaymission/BMPship/Midship) +"dR" = (/turf/open/floor/plasteel/loadingarea/dirtydirty{dir = 4},/area/awaymission/BMPship/Midship) +"dS" = (/obj/machinery/conveyor{dir = 4;id = "meatConvey1"},/turf/open/floor/plating,/area/awaymission/BMPship/Midship) +"dT" = (/obj/machinery/conveyor{dir = 4;id = "meatConvey1"},/obj/structure/plasticflaps,/turf/open/floor/plating,/area/awaymission/BMPship/Midship) +"dU" = (/obj/structure/disposalpipe/trunk{dir = 4},/obj/machinery/disposal/deliveryChute{dir = 8},/turf/open/floor/plating,/area/awaymission/BMPship/Midship) +"dV" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/closed/wall/r_wall,/area/awaymission/BMPship/Midship) +"dW" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 1;d2 = 2;icon_state = "1-2"},/turf/open/floor/plasteel/bar,/area/awaymission/BMPship/Midship) +"dX" = (/obj/structure/disposalpipe/segment{dir = 2;icon_state = "pipe-c"},/turf/open/floor/plasteel/bar,/area/awaymission/BMPship/Midship) +"dY" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/turf/open/floor/plating,/area/awaymission/BMPship/Aft) +"dZ" = (/obj/structure/window/reinforced{dir = 1},/turf/open/floor/plating,/area/awaymission/BMPship/Aft) +"ea" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/turf/open/floor/plating,/area/awaymission/BMPship/Aft) +"eb" = (/obj/structure/rack,/obj/item/weapon/storage/box/lights,/turf/open/floor/plasteel/warning{dir = 8},/area/awaymission/BMPship/Aft) +"ec" = (/obj/structure/cable{d1 = 1;d2 = 2;icon_state = "1-2";pixel_y = 0},/turf/open/floor/plasteel/hydrofloor,/area/awaymission/BMPship/Aft) +"ed" = (/obj/machinery/power/smes/magical{desc = "A high-capacity superconducting magnetic energy storage (SMES) unit.";name = "power storage unit"},/obj/structure/cable{icon_state = "0-2";d2 = 2},/obj/structure/cable,/obj/structure/cable{icon_state = "0-2";d2 = 2},/turf/open/floor/plating,/area/awaymission/BMPship/Aft) +"ee" = (/obj/structure/cable{icon_state = "0-4";d2 = 4},/obj/machinery/power/terminal{dir = 8},/turf/open/floor/plating,/area/awaymission/BMPship/Aft) +"ef" = (/obj/structure/cable{d1 = 1;d2 = 2;icon_state = "1-2"},/obj/structure/cable{d1 = 1;d2 = 8;icon_state = "1-8"},/turf/open/floor/plasteel/warning{dir = 4},/area/awaymission/BMPship/Aft) +"eg" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/structure/grille,/turf/open/floor/plating,/area/awaymission/BMPship/Fore) +"eh" = (/obj/structure/table,/turf/open/floor/carpet,/area/awaymission/BMPship/Fore) +"ei" = (/obj/structure/chair/office{dir = 8},/turf/open/floor/carpet,/area/awaymission/BMPship/Fore) +"ej" = (/obj/item/weapon/shard{icon_state = "medium"},/turf/open/floor/carpet,/area/awaymission/BMPship/Fore) +"ek" = (/obj/effect/decal/cleanable/dirt,/turf/open/floor/plating,/area/awaymission/BMPship/Midship) +"el" = (/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plating,/area/awaymission/BMPship/Midship) +"em" = (/obj/item/weapon/reagent_containers/glass/bucket,/turf/open/floor/plasteel/bar,/area/awaymission/BMPship/Midship) +"en" = (/obj/machinery/conveyor_switch/oneway{id = "meatConvey1"},/turf/open/floor/plasteel/bar,/area/awaymission/BMPship/Midship) +"eo" = (/obj/structure/disposalpipe/segment{dir = 1;icon_state = "pipe-c"},/turf/open/floor/plasteel/bar,/area/awaymission/BMPship/Midship) +"ep" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/light/small{dir = 1},/turf/open/floor/plasteel/bar,/area/awaymission/BMPship/Midship) +"eq" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel/showroomfloor,/area/awaymission/BMPship/Aft) +"er" = (/obj/structure/cable{d1 = 1;d2 = 2;icon_state = "1-2"},/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel/showroomfloor,/area/awaymission/BMPship/Aft) +"es" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/disposalpipe/trunk{dir = 8},/obj/structure/disposaloutlet{dir = 4},/turf/open/floor/plating,/area/awaymission/BMPship/Aft) +"et" = (/obj/effect/decal/cleanable/blood/gibs/old,/turf/open/floor/plating,/area/awaymission/BMPship/Aft) +"eu" = (/obj/structure/rack,/obj/item/weapon/storage/belt/utility/full,/turf/open/floor/plasteel/warning{dir = 8},/area/awaymission/BMPship/Aft) +"ev" = (/obj/structure/cable{d1 = 1;d2 = 2;icon_state = "1-2";pixel_y = 0},/turf/open/floor/plasteel/warning{dir = 4},/area/awaymission/BMPship/Aft) +"ew" = (/turf/closed/wall/shuttle{icon_state = "swall_s9";dir = 2},/area/awaymission/BMPship/Aft) +"ex" = (/obj/structure/cable{d1 = 2;d2 = 4;icon_state = "2-4"},/turf/open/floor/carpet,/area/awaymission/BMPship/Fore) +"ey" = (/obj/structure/cable{d1 = 4;d2 = 8;icon_state = "4-8";pixel_x = 0},/turf/open/floor/carpet,/area/awaymission/BMPship/Fore) +"ez" = (/obj/structure/cable{d1 = 1;d2 = 8;icon_state = "1-8"},/turf/open/floor/carpet,/area/awaymission/BMPship/Fore) +"eA" = (/obj/effect/decal/cleanable/dirt,/obj/effect/gibspawner/xeno,/turf/open/floor/plating,/area/awaymission/BMPship/Midship) +"eB" = (/obj/structure/cable{d1 = 1;d2 = 4;icon_state = "1-4"},/obj/structure/cable{d1 = 2;d2 = 4;icon_state = "2-4"},/turf/open/floor/plasteel/bar,/area/awaymission/BMPship/Midship) +"eC" = (/obj/structure/cable{d1 = 4;d2 = 8;icon_state = "4-8";pixel_y = 0},/obj/structure/cable{d1 = 1;d2 = 4;icon_state = "1-4"},/turf/open/floor/plasteel/bar,/area/awaymission/BMPship/Midship) +"eD" = (/obj/structure/cable{d1 = 2;d2 = 8;icon_state = "2-8"},/obj/structure/cable{d1 = 1;d2 = 8;icon_state = "1-8"},/turf/open/floor/plasteel/bar,/area/awaymission/BMPship/Midship) +"eE" = (/obj/machinery/light/small{dir = 1},/turf/open/floor/plasteel/bar,/area/awaymission/BMPship/Midship) +"eF" = (/obj/structure/window/reinforced{dir = 8},/turf/open/floor/plating,/area/awaymission/BMPship/Aft) +"eG" = (/obj/effect/gibspawner/human,/turf/open/floor/plating,/area/awaymission/BMPship/Aft) +"eH" = (/obj/machinery/door/window{base_state = "right";dir = 4;icon_state = "right"},/turf/open/floor/plating,/area/awaymission/BMPship/Aft) +"eI" = (/obj/structure/rack,/obj/item/weapon/stock_parts/cell/high,/turf/open/floor/plasteel/warning{dir = 8},/area/awaymission/BMPship/Aft) +"eJ" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/obj/structure/grille,/turf/open/floor/plating,/area/awaymission/BMPship/Fore) +"eK" = (/obj/effect/decal/cleanable/dirt,/obj/machinery/light/small{dir = 8},/turf/open/floor/plating,/area/awaymission/BMPship/Midship) +"eL" = (/obj/machinery/light,/turf/open/floor/plasteel/bar,/area/awaymission/BMPship/Midship) +"eM" = (/obj/effect/gibspawner/generic,/turf/open/floor/plasteel/bar,/area/awaymission/BMPship/Midship) +"eN" = (/obj/structure/cable{d1 = 2;d2 = 4;icon_state = "2-4"},/obj/structure/cable{d1 = 1;d2 = 4;icon_state = "1-4"},/turf/open/floor/plasteel/bar,/area/awaymission/BMPship/Midship) +"eO" = (/obj/structure/cable{d1 = 4;d2 = 8;icon_state = "4-8";pixel_x = 0},/turf/open/floor/plasteel/showroomfloor,/area/awaymission/BMPship/Aft) +"eP" = (/obj/structure/cable{d1 = 1;d2 = 2;icon_state = "1-2"},/obj/structure/cable{d1 = 2;d2 = 8;icon_state = "2-8"},/turf/open/floor/plasteel/showroomfloor,/area/awaymission/BMPship/Aft) +"eQ" = (/obj/structure/rack,/turf/open/floor/plasteel/warning{dir = 8},/area/awaymission/BMPship/Aft) +"eR" = (/obj/machinery/power/smes/magical{desc = "A high-capacity superconducting magnetic energy storage (SMES) unit.";name = "power storage unit"},/obj/structure/cable,/obj/structure/cable,/turf/open/floor/plating,/area/awaymission/BMPship/Aft) +"eS" = (/obj/structure/cable{d1 = 1;d2 = 8;icon_state = "1-8"},/turf/open/floor/plasteel/warning{dir = 4},/area/awaymission/BMPship/Aft) +"eT" = (/obj/effect/decal/cleanable/cobweb,/obj/machinery/power/port_gen/pacman/super,/turf/open/floor/engine,/area/awaymission/BMPship/Aft) +"eU" = (/obj/structure/closet,/turf/open/floor/carpet,/area/awaymission/BMPship/Fore) +"eV" = (/obj/machinery/light{icon_state = "tube1";dir = 4},/obj/structure/closet,/turf/open/floor/carpet,/area/awaymission/BMPship/Fore) +"eW" = (/obj/item/weapon/wrench,/turf/open/floor/plating,/area/awaymission/BMPship/Midship) +"eX" = (/obj/structure/disposalpipe/segment{dir = 4;icon_state = "pipe-c"},/turf/open/floor/plasteel/bar,/area/awaymission/BMPship/Midship) +"eY" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel/bar,/area/awaymission/BMPship/Midship) +"eZ" = (/obj/structure/mopbucket,/turf/open/floor/plating,/area/awaymission/BMPship/Aft) +"fa" = (/obj/structure/window/reinforced{dir = 4},/obj/item/weapon/kitchen/knife,/turf/open/floor/plating,/area/awaymission/BMPship/Aft) +"fb" = (/obj/structure/cable{d1 = 1;d2 = 2;icon_state = "1-2";pixel_y = 0},/obj/item/weapon/stock_parts/cell/high,/turf/open/floor/plasteel,/area/awaymission/BMPship/Aft) +"fc" = (/turf/closed/wall/shuttle{icon_state = "swall_s5";dir = 2},/area/awaymission/BMPship/Fore) +"fd" = (/obj/machinery/door/unpowered/shuttle,/turf/open/floor/carpet,/area/awaymission/BMPship/Fore) +"fe" = (/obj/structure/cable{d1 = 1;d2 = 2;icon_state = "1-2";pixel_y = 0},/obj/machinery/door/unpowered/shuttle,/turf/open/floor/carpet,/area/awaymission/BMPship/Fore) +"ff" = (/turf/closed/wall/shuttle{icon_state = "swall11";dir = 2},/area/awaymission/BMPship/Fore) +"fg" = (/obj/effect/gibspawner/xeno,/turf/open/floor/plating,/area/awaymission/BMPship/Midship) +"fh" = (/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plasteel{icon_state = "panelscorched"},/area/awaymission/BMPship/Midship) +"fi" = (/obj/structure/kitchenspike,/turf/open/floor/plasteel/bar,/area/awaymission/BMPship/Midship) +"fj" = (/turf/open/floor/plasteel/loadingarea/dirty{dir = 4},/area/awaymission/BMPship/Midship) +"fk" = (/obj/machinery/conveyor{dir = 4;id = "meatConvey2"},/obj/item/weapon/kitchen/knife,/turf/open/floor/plating,/area/awaymission/BMPship/Midship) +"fl" = (/obj/machinery/conveyor{dir = 4;id = "meatConvey2"},/obj/structure/plasticflaps,/turf/open/floor/plating,/area/awaymission/BMPship/Midship) +"fm" = (/obj/machinery/conveyor{dir = 4;id = "meatConvey2"},/turf/open/floor/plating,/area/awaymission/BMPship/Midship) +"fn" = (/obj/structure/disposalpipe/segment{dir = 8;icon_state = "pipe-c"},/turf/open/floor/plasteel/bar,/area/awaymission/BMPship/Midship) +"fo" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/turf/open/floor/plating,/area/awaymission/BMPship/Aft) +"fp" = (/obj/structure/window/reinforced,/turf/open/floor/plating,/area/awaymission/BMPship/Aft) +"fq" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/turf/open/floor/plating,/area/awaymission/BMPship/Aft) +"fr" = (/obj/item/stack/cable_coil,/turf/open/floor/plating,/area/awaymission/BMPship/Aft) +"fs" = (/obj/machinery/light/small{dir = 4},/turf/open/floor/plasteel/warning{dir = 4},/area/awaymission/BMPship/Aft) +"ft" = (/obj/item/stack/sheet/mineral/uranium{amount = 50},/turf/open/floor/engine,/area/awaymission/BMPship/Aft) +"fu" = (/obj/structure/cable{d1 = 1;d2 = 4;icon_state = "1-4"},/turf/open/floor/plating/airless,/area/awaymission/BMPship/Fore) +"fv" = (/obj/item/weapon/shard{icon_state = "small"},/obj/structure/cable{d1 = 4;d2 = 8;icon_state = "4-8";pixel_x = 0},/turf/open/floor/plating/airless,/area/awaymission/BMPship/Fore) +"fw" = (/obj/structure/cable{d1 = 4;d2 = 8;icon_state = "4-8";pixel_x = 0},/turf/open/floor/plating/airless{icon_state = "panelscorched"},/area/awaymission/BMPship/Fore) +"fx" = (/obj/structure/cable{d1 = 2;d2 = 8;icon_state = "2-8"},/turf/open/floor/plating/airless{icon_state = "platingdmg3"},/area/awaymission/BMPship/Fore) +"fy" = (/obj/structure/cable{d1 = 1;d2 = 8;icon_state = "1-8"},/obj/item/weapon/kitchen/knife,/turf/open/floor/plasteel/bar,/area/awaymission/BMPship/Midship) +"fz" = (/obj/machinery/conveyor_switch/oneway{id = "meatConvey2"},/turf/open/floor/plasteel/bar,/area/awaymission/BMPship/Midship) +"fA" = (/obj/structure/cable{d1 = 1;d2 = 4;icon_state = "1-4"},/turf/open/floor/plasteel/showroomfloor,/area/awaymission/BMPship/Aft) +"fB" = (/obj/structure/cable{d1 = 4;d2 = 8;icon_state = "4-8";pixel_y = 0},/turf/open/floor/plasteel/showroomfloor,/area/awaymission/BMPship/Aft) +"fC" = (/obj/structure/cable{d1 = 2;d2 = 8;icon_state = "2-8"},/turf/open/floor/plasteel/showroomfloor,/area/awaymission/BMPship/Aft) +"fD" = (/obj/item/weapon/mop,/turf/open/floor/plasteel/showroomfloor,/area/awaymission/BMPship/Aft) +"fE" = (/obj/effect/decal/cleanable/oil,/turf/open/floor/plating,/area/awaymission/BMPship/Aft) +"fF" = (/obj/structure/reagent_dispensers/fueltank,/turf/open/floor/plasteel/warning{dir = 4},/area/awaymission/BMPship/Aft) +"fG" = (/obj/item/weapon/shard,/turf/open/floor/plating/airless{icon_state = "platingdmg1"},/area/awaymission/BMPship/Fore) +"fH" = (/obj/structure/chair/stool,/turf/open/floor/plating/airless{icon_state = "platingdmg3"},/area/awaymission/BMPship/Fore) +"fI" = (/obj/item/stack/cable_coil{amount = 5},/turf/open/floor/plating/airless,/area/awaymission/BMPship/Fore) +"fJ" = (/obj/structure/cable{d1 = 1;d2 = 2;icon_state = "1-2";pixel_y = 0},/turf/open/floor/plating/airless,/area/awaymission/BMPship/Fore) +"fK" = (/obj/structure/cable{d1 = 1;d2 = 4;icon_state = "1-4"},/turf/open/floor/plasteel/bar,/area/awaymission/BMPship/Midship) +"fL" = (/obj/structure/closet/crate/freezer,/obj/item/weapon/reagent_containers/food/snacks/meat,/turf/open/floor/plasteel/showroomfloor,/area/awaymission/BMPship/Aft) +"fM" = (/obj/item/weapon/reagent_containers/glass/bucket,/turf/open/floor/plasteel/showroomfloor,/area/awaymission/BMPship/Aft) +"fN" = (/obj/structure/reagent_dispensers,/turf/open/floor/plasteel/showroomfloor,/area/awaymission/BMPship/Aft) +"fO" = (/obj/structure/cable{d1 = 1;d2 = 2;icon_state = "1-2";pixel_y = 0},/turf/open/floor/plating,/area/awaymission/BMPship/Aft) +"fP" = (/turf/open/floor/plating/asteroid/airless,/area/awaymission/BMPship) +"fQ" = (/turf/open/floor/plating/airless{icon_state = "platingdmg2"},/turf/closed/wall/shuttle{dir = 3;icon_state = "swall_f10";layer = 2},/area/awaymission/BMPship/Fore) +"fR" = (/obj/structure/frame/computer{anchored = 1},/turf/open/floor/plating/airless{icon_state = "panelscorched"},/area/awaymission/BMPship/Fore) +"fS" = (/obj/structure/frame/computer{anchored = 1},/turf/open/floor/plating/airless{icon_state = "platingdmg1"},/area/awaymission/BMPship/Fore) +"fT" = (/obj/machinery/light/small,/turf/open/floor/plasteel/bar,/area/awaymission/BMPship/Midship) +"fU" = (/turf/open/floor/plasteel{icon_state = "platingdmg3"},/area/awaymission/BMPship/Midship) +"fV" = (/turf/open/floor/plasteel{icon_state = "platingdmg1"},/area/awaymission/BMPship/Midship) +"fW" = (/obj/machinery/door/airlock/silver{locked = 1},/turf/open/floor/plasteel,/area/awaymission/BMPship/Aft) +"fX" = (/obj/machinery/door/airlock/silver{locked = 1},/obj/structure/cable{d1 = 1;d2 = 2;icon_state = "1-2"},/turf/open/floor/plasteel,/area/awaymission/BMPship/Aft) +"fY" = (/obj/machinery/door/unpowered/shuttle,/obj/structure/cable{d1 = 1;d2 = 2;icon_state = "1-2";pixel_y = 0},/turf/open/floor/plasteel,/area/awaymission/BMPship/Aft) +"fZ" = (/turf/closed/mineral/random,/area/awaymission/BMPship) +"ga" = (/obj/item/device/multitool,/turf/open/floor/plating/airless{icon_state = "platingdmg2"},/area/space) +"gb" = (/turf/closed/wall/shuttle{icon_state = "swallc1"},/area/awaymission/BMPship/Fore) +"gc" = (/obj/structure/cable{d1 = 1;d2 = 2;icon_state = "1-2"},/obj/machinery/door/airlock/silver,/turf/open/floor/plating/airless,/area/awaymission/BMPship/Fore) +"gd" = (/obj/machinery/light{dir = 1},/turf/open/floor/plasteel,/area/awaymission/BMPship/Aft) +"ge" = (/obj/structure/chair/stool,/turf/open/floor/plasteel,/area/awaymission/BMPship/Aft) +"gf" = (/obj/structure/table,/obj/item/weapon/paper{info = "DEAR DAIRY: So we was doing our typpical route when the captain says we've been picking up weird signals on some backwatter planet. Madsen wanted to stay on course but he ain't the captain, so we went out of the way to check it out. There was lots of rocks on the way, but we got to the planet fine. Found a big fancy camp with nobody around and this big metal donut thing with NT stamps all over it right in the middle. Case of beer too. Captain reckons we can pass it off to some buyer in the Syndicate. Ingram says it's bad luck and that someone is going to come look for it but it sounds like better money than selling bad meat to jerky companies.";name = "Old Diary"},/turf/open/floor/plasteel,/area/awaymission/BMPship/Aft) +"gg" = (/obj/structure/table,/obj/item/weapon/pen/red,/obj/item/weapon/reagent_containers/food/drinks/beer,/turf/open/floor/plasteel,/area/awaymission/BMPship/Aft) +"gh" = (/obj/structure/closet,/obj/item/clothing/under/overalls,/turf/open/floor/plasteel,/area/awaymission/BMPship/Aft) +"gi" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/structure/grille,/turf/open/floor/plating/airless,/area/awaymission/BMPship/Fore) +"gj" = (/obj/machinery/light/small{dir = 1},/turf/open/floor/engine,/area/awaymission/BMPship/Fore) +"gk" = (/obj/structure/cable,/turf/open/floor/plating/airless{icon_state = "platingdmg3"},/area/awaymission/BMPship/Fore) +"gl" = (/obj/machinery/light/small{dir = 1},/turf/open/floor/plating/airless,/area/awaymission/BMPship/Fore) +"gm" = (/obj/structure/rack,/turf/open/floor/plating/airless,/area/awaymission/BMPship/Fore) +"gn" = (/obj/machinery/light/small{dir = 1},/turf/open/floor/plating/asteroid/airless,/area/awaymission/BMPship/Fore) +"go" = (/turf/open/floor/plating/airless{broken = 1;icon_state = "platingdmg1"},/area/awaymission/BMPship/Midship) +"gp" = (/obj/item/wallframe/apc,/turf/open/floor/plating/airless,/area/awaymission/BMPship/Midship) +"gq" = (/obj/structure/ore_box,/obj/machinery/light/small{dir = 1},/turf/open/floor/plating/airless,/area/awaymission/BMPship/Midship) +"gr" = (/obj/structure/ore_box,/turf/open/floor/plating/airless,/area/awaymission/BMPship/Midship) +"gs" = (/obj/machinery/computer/arcade,/turf/open/floor/plasteel,/area/awaymission/BMPship/Aft) +"gt" = (/obj/effect/decal/remains/human,/obj/structure/cable{d1 = 1;d2 = 4;icon_state = "1-4"},/obj/structure/cable{d1 = 1;d2 = 2;icon_state = "1-2"},/turf/open/floor/plasteel,/area/awaymission/BMPship/Aft) +"gu" = (/obj/structure/cable{d1 = 4;d2 = 8;icon_state = "4-8";pixel_y = 0},/turf/open/floor/plasteel,/area/awaymission/BMPship/Aft) +"gv" = (/obj/structure/cable{d1 = 1;d2 = 4;icon_state = "1-4"},/obj/structure/cable{d1 = 1;d2 = 8;icon_state = "1-8"},/turf/open/floor/plasteel,/area/awaymission/BMPship/Aft) +"gw" = (/obj/structure/cable{d2 = 8;icon_state = "0-8"},/obj/item/wallframe/apc,/turf/open/floor/plasteel,/area/awaymission/BMPship/Aft) +"gx" = (/obj/effect/decal/remains/human,/obj/item/clothing/head/helmet/space/syndicate/green/dark,/obj/effect/gibspawner/generic,/turf/open/floor/plating/asteroid/airless,/area/awaymission/BMPship) +"gy" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/grille,/obj/item/weapon/shard{icon_state = "small"},/turf/open/floor/plating/airless,/area/awaymission/BMPship/Fore) +"gz" = (/obj/machinery/door/unpowered/shuttle,/turf,/area/awaymission/BMPship/Fore) +"gA" = (/obj/effect/gibspawner/robot,/turf/open/floor/plasteel/airless{icon_state = "floorscorched2"},/area/awaymission/BMPship/Fore) +"gB" = (/turf/open/floor/plating/airless{broken = 1;icon_state = "platingdmg2"},/area/awaymission/BMPship/Midship) +"gC" = (/obj/structure/mecha_wreckage/ripley,/turf/open/floor/plating/airless,/area/awaymission/BMPship/Midship) +"gD" = (/obj/structure/bed,/turf/open/floor/plasteel,/area/awaymission/BMPship/Aft) +"gE" = (/obj/structure/bed,/obj/item/weapon/bedsheet,/obj/item/weapon/storage/wallet/random,/obj/structure/cable{d1 = 1;d2 = 2;icon_state = "1-2"},/turf/open/floor/plasteel,/area/awaymission/BMPship/Aft) +"gF" = (/obj/structure/closet,/obj/item/clothing/under/lawyer/bluesuit,/obj/item/clothing/suit/apron,/turf/open/floor/plasteel,/area/awaymission/BMPship/Aft) +"gG" = (/obj/item/clothing/suit/space/syndicate/green/dark,/turf/open/floor/plating/asteroid/airless,/area/awaymission/BMPship) +"gH" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/obj/structure/grille,/turf/open/floor/plating/airless,/area/awaymission/BMPship/Fore) +"gI" = (/obj/effect/gibspawner/robot,/turf/open/floor/plating/airless,/area/awaymission/BMPship/Midship) +"gJ" = (/obj/structure/cable{icon_state = "0-4";d2 = 4},/turf/open/floor/plating/airless,/area/awaymission/BMPship/Midship) +"gK" = (/obj/structure/cable{d1 = 4;d2 = 8;icon_state = "4-8";pixel_x = 0},/turf/open/floor/plating/airless,/area/awaymission/BMPship/Midship) +"gL" = (/obj/machinery/door/unpowered/shuttle,/obj/structure/cable{d1 = 4;d2 = 8;icon_state = "4-8";pixel_x = 0},/turf/open/floor/plating,/area/awaymission/BMPship/Midship) +"gM" = (/obj/structure/cable{d1 = 4;d2 = 8;icon_state = "4-8";pixel_x = 0},/turf/open/floor/plasteel,/area/awaymission/BMPship/Aft) +"gN" = (/obj/structure/cable{d1 = 1;d2 = 8;icon_state = "1-8"},/turf/open/floor/plasteel,/area/awaymission/BMPship/Aft) +"gO" = (/obj/item/weapon/shard{icon_state = "medium"},/turf/open/space,/area/space) +"gP" = (/turf/open/floor/plating/airless{broken = 1;icon_state = "panelscorched"},/area/awaymission/BMPship/Midship) +"gQ" = (/obj/effect/decal/remains/human,/turf/open/floor/plasteel,/area/awaymission/BMPship/Aft) +"gR" = (/obj/structure/bed,/obj/item/weapon/bedsheet,/turf/open/floor/plasteel,/area/awaymission/BMPship/Aft) +"gS" = (/obj/machinery/door/unpowered/shuttle,/turf/open/floor/plasteel/cafeteria{dir = 2},/area/awaymission/BMPship/Aft) +"gT" = (/obj/structure/mirror{pixel_y = 28},/turf/open/floor/plasteel/cafeteria{dir = 2},/area/awaymission/BMPship/Aft) +"gU" = (/obj/structure/toilet{dir = 8},/obj/machinery/light/small{dir = 1},/turf/open/floor/plasteel/cafeteria{dir = 2},/area/awaymission/BMPship/Aft) +"gV" = (/turf/open/floor/plating/airless{broken = 1;icon_state = "platingdmg3"},/area/awaymission/BMPship/Midship) +"gW" = (/obj/item/weapon/caution,/turf/open/floor/plating/airless,/area/awaymission/BMPship/Midship) +"gX" = (/obj/machinery/portable_atmospherics/canister/air,/turf/open/floor/plating/airless,/area/awaymission/BMPship/Midship) +"gY" = (/obj/structure/closet/crate,/obj/item/stack/spacecash/c10,/obj/item/stack/spacecash/c200,/turf/open/floor/plasteel,/area/awaymission/BMPship/Aft) +"gZ" = (/obj/structure/closet/crate,/obj/item/stack/spacecash/c10,/turf/open/floor/plasteel,/area/awaymission/BMPship/Aft) +"ha" = (/obj/structure/sink{dir = 2},/turf/open/floor/plasteel/cafeteria{dir = 2},/area/awaymission/BMPship/Aft) +"hb" = (/turf/open/floor/plasteel/cafeteria{dir = 2},/turf/closed/wall/shuttle{icon_state = "swall_f6";dir = 2},/area/awaymission/BMPship/Aft) +"hc" = (/obj/item/clothing/gloves/color/fyellow,/turf/open/floor/plating/asteroid/airless,/area/awaymission/BMPship) +"hd" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/grille,/turf/open/floor/engine,/area/awaymission/BMPship/Aft) +"he" = (/obj/item/weapon/storage/box/matches,/obj/item/weapon/storage/fancy/cigarettes/dromedaryco,/turf/open/floor/plating,/area/awaymission/BMPship/Aft) +"hf" = (/obj/item/weapon/poster/contraband,/turf/open/floor/plating,/area/awaymission/BMPship/Aft) +"hg" = (/obj/item/weapon/reagent_containers/food/drinks/beer,/turf/open/floor/plating,/area/awaymission/BMPship/Aft) +"hh" = (/turf/open/floor/plating,/turf/closed/wall/shuttle{icon_state = "swall_f6";dir = 2},/area/awaymission/BMPship/Aft) +"hi" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/obj/structure/grille,/turf/open/floor/engine,/area/awaymission/BMPship/Aft) +"hj" = (/turf/closed/mineral/diamond,/area/awaymission/BMPship) +"hk" = (/turf/closed/mineral/clown,/area/awaymission/BMPship) +"hl" = (/turf/closed/wall/shuttle{icon_state = "swall_s6";dir = 2},/area/awaymission/BMPship/Midship) +"hm" = (/turf/closed/wall/shuttle{icon_state = "swall12"},/area/awaymission/BMPship/Midship) +"hn" = (/turf/closed/wall/shuttle{icon_state = "swall14"},/area/awaymission/BMPship/Midship) +"ho" = (/turf/closed/wall/shuttle{icon_state = "swall4"},/area/awaymission/BMPship/Fore) +"hp" = (/turf/closed/wall/shuttle{icon_state = "swall12"},/area/awaymission/BMPship/Fore) +"hq" = (/turf/closed/wall/shuttle{icon_state = "swall14"},/area/awaymission/BMPship/Fore) +"hr" = (/turf/closed/wall/shuttle{icon_state = "swall_s10";dir = 2},/area/awaymission/BMPship/Fore) +"hs" = (/turf/closed/wall/shuttle{icon_state = "swall3"},/area/awaymission/BMPship/Aft) +"ht" = (/turf/closed/wall/shuttle{icon_state = "swall3"},/area/awaymission/BMPship/Fore) +"hu" = (/turf/open/floor/plating/warnplate{dir = 9},/area/awaymission/BMPship/Fore) +"hv" = (/turf/open/floor/plating/warnplate{dir = 1},/area/awaymission/BMPship/Fore) +"hw" = (/turf/open/floor/plating/warnplate{dir = 8},/area/awaymission/BMPship/Fore) +"hx" = (/turf/open/floor/plating,/area/awaymission/BMPship/Fore) +"hy" = (/turf/closed/wall/shuttle{icon_state = "swall2"},/area/awaymission/BMPship/Fore) +"hz" = (/turf/closed/wall/shuttle{icon_state = "swall8"},/area/awaymission/BMPship/Fore) +"hA" = (/turf/closed/wall/shuttle{icon_state = "swall1"},/area/awaymission/BMPship/Fore) +"hB" = (/turf/closed/wall/shuttle{icon_state = "swall13"},/area/awaymission/BMPship/Midship) +"hC" = (/turf/closed/wall/shuttle{icon_state = "swall8"},/area/awaymission/BMPship/Midship) +"hD" = (/turf/closed/wall/shuttle{icon_state = "swall4"},/area/awaymission/BMPship/Midship) +"hE" = (/turf/open/floor/plating/warnplate{dir = 2},/area/awaymission/BMPship/Aft) +"hF" = (/obj/machinery/light/small,/turf/open/floor/plating/warnplate{dir = 2},/area/awaymission/BMPship/Aft) +"hG" = (/turf/open/floor/plating/warnplate{dir = 6},/area/awaymission/BMPship/Aft) +"hH" = (/turf/closed/wall/shuttle{icon_state = "swall_s6";dir = 2},/area/awaymission/BMPship/Fore) +"hI" = (/turf/closed/wall/shuttle{icon_state = "swall3";dir = 2},/area/awaymission/BMPship/Fore) +"hJ" = (/turf/closed/wall/shuttle{icon_state = "swall7"},/area/awaymission/BMPship/Midship) +"hK" = (/turf/closed/wall/shuttle{icon_state = "swall15"},/area/awaymission/BMPship/Aft) +"hL" = (/turf/closed/wall/shuttle{icon_state = "swall3";dir = 2},/area/awaymission/BMPship/Midship) +"hM" = (/turf/open/floor/plasteel,/area/awaymission/BMPship/Aft) +"hN" = (/turf/closed/wall/shuttle{icon_state = "swall2"},/area/awaymission/BMPship/Aft) +"hO" = (/turf/closed/wall/shuttle{icon_state = "swall11"},/area/awaymission/BMPship/Aft) +"hP" = (/turf/closed/wall/shuttle{icon_state = "swall1"},/area/awaymission/BMPship/Aft) +"hQ" = (/turf/open/floor/plating,/area/awaymission/BMPship/Midship) +"hR" = (/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plating,/area/awaymission/BMPship/Aft) +"hS" = (/obj/machinery/door/window{base_state = "right";dir = 4;icon_state = "right"},/turf/open/floor/plating,/area/awaymission/BMPship/Midship) +"hT" = (/turf/open/floor/plating/airless{icon_state = "platingdmg1"},/area/awaymission/BMPship/Fore) +"hU" = (/obj/structure/lattice,/turf/open/space,/area/awaymission/BMPship/Fore) +"hV" = (/turf/open/floor/plating/airless{icon_state = "platingdmg3"},/area/awaymission/BMPship/Fore) +"hW" = (/turf/open/floor/plating/airless{icon_state = "platingdmg2"},/area/awaymission/BMPship/Fore) +"hX" = (/turf/closed/wall/shuttle{icon_state = "swallc2"},/area/awaymission/BMPship/Aft) +"hY" = (/turf/closed/wall/shuttle{icon_state = "swallc3"},/area/awaymission/BMPship/Fore) +"hZ" = (/turf/closed/mineral/random,/area/awaymission/BMPship/Midship) +"ia" = (/obj/machinery/porta_turret{dir = 8;emagged = 1;installation = /obj/item/weapon/gun/energy/lasercannon},/turf/open/floor/engine,/area/awaymission/BMPship/Fore) +"ib" = (/turf/open/floor/plating/asteroid/airless,/area/awaymission/BMPship/Fore) +"ic" = (/turf/closed/wall/shuttle,/area/awaymission/BMPship/Fore) +"id" = (/turf/open/floor/plating/asteroid/airless,/area/awaymission/BMPship/Midship) +"ie" = (/obj/machinery/light/small{dir = 1},/turf/open/floor/plating/airless,/area/awaymission/BMPship/Midship) +"if" = (/obj/item/stack/cable_coil{amount = 5},/turf/open/floor/plating/airless,/area/awaymission/BMPship/Midship) +"ig" = (/turf/open/floor/engine,/area/awaymission/BMPship/Fore) +"ih" = (/turf/open/floor/plating/airless,/area/awaymission/BMPship/Fore) +"ii" = (/turf/closed/mineral/random,/area/awaymission/BMPship/Fore) +"ij" = (/turf/closed/wall/shuttle,/area/awaymission/BMPship) +"ik" = (/turf/closed/wall/shuttle{icon_state = "swall13"},/area/awaymission/BMPship/Fore) +"il" = (/obj/machinery/light/small{dir = 1},/turf/open/floor/engine,/area/awaymission/BMPship/Aft) (1,1,1) = {" aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacadadadadaeaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafagahacaiadaeaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaajahahakalaladaeaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaaaaaaaaaaaaaaaaaaaaaaaaanagaoacalalaladaeaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamapaqaqaqaqaqaqaqaqaqaqacacacacacaracadadadadaeaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaaamaqasatauavawaxayazaAaqaBaCaDaEaFaGaGaGaGaGaGadaeaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaHaHaHaHaHaHaHaHaHaHaHaIaaaaaaaaaaaaamaJaKatatatatatataLatataqaMalalaNalalalalalalaOaPadaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaQaRaSaTaUaVaWaVaWaVaXaYaaaaaaaaaaamaZaKatbabbatatasatbcbdbdbebfbgalbhalalbibjbkalalaPadaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaablbmbnaTbobpbpbpbpbpbpbqaaaaaaamapaqatbaaKatbaatatatatatatataqaMbralalalalalalalalalbsadaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaabtbubmaTbpbvbvbwbvbvbxaTaaaaaaapaqaZbaatbybzatatatbAbBbCbAbBaqaMbDbEbFbFbGbFbFbFbFbgbHadaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaTaTbIaTbJaTaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqaqbKbKbKaqaqaqaqaqaqbLbMbNbObMbMbPbQbRbSbTbUadaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaIaTbVbVbWbVaTbXbYbZcacbcccacdbYceaqcfcgchcicececececjckclcjcmaqacacacacacacacacadaccnadadaeaaaaaaaaaa -aaaaaaaaaaaaaaaaaIaTbVbVbVcobVaTcecpbZcqcqcqcrcdceceaqcscscsctcececececucucecuceaqcvcvcwcxcyczcAcBadcCcDcEadacacacaeaaaa -aaaaaaaaaaaaaacFcGbVbVbVbVcHcIaTcecebZcqcJcqcqcdcececKcLcMcNcOcececececececPceceaqcwcQcwaccRcScTcUadcVcDcCcCcWcXadadadae -aaaaaaaaaaaaaIaTbVbVcYcZdabVdbaTcecedcdddddedddfceceaqcedgdhdhdhdhdhdhdhdhdhdiceaqcwdjcwdkacacacacadcVdldmdndodpaddqdrds -aaaaaaaaaaaaaTbVbVbVdtdubVbVdvaTdwdxdydydydydydydiceaqcedzcedAdBdBdBdBdBdBdBdzceaqcwdjcwcwcwcwcwdCaddDdEalbraldFakahdrds -aaaaaaaaaaaadGdadHbVbVbVbVbVdIdJdydKdBdBdBdBdBdLdMcedNcedzdOdPdQdPdPdPdPdRdSdTdUaqcwdjdVdWdWdXcwcwaddYdZaleaebecadahdrds -aaaaaaaaaaaaedeeefbVegbVbVbVdbaTcecedBeheheheiejdzekdzcedzceeldBdBdBdBdBdBdBdzemeneoepeqererescwcwadetdZalbraleuadadadae -aaaaaaaaaaaaedeeefbVbVevewewexaTcecedBeheyejeiejezdyeAdyeBcececececeeCcececedzcececwdjeDaleEeFcwcwadeGdEalbraldFacadadae -aaaaaaaaaaaaeHbVbVbVbVcobVbVbVbJcecedBeIehejeJejdzceeKcedzceceeLcecececececeeMdhdheNeOeDeraleFcwcwadePdEaleQebeRadeSdrds -aaaaaaaaaaaaaTbVbVbVbVcobVeTeUaTdwcedBehejejeieVdzceaqcedzcedAdBdBdBdBdBdBdBdzeWeXeoepeqeYaleZcwdCaddDfaalalalcXfbahdrds -aaaaaaaaaaaaaIaTaTaTfcfdaTaTaTaTcecedBejejfeffejdzfgaqcedzfhfifjfkfkfkfkdRdSdTflfmcwdjfnfofofpcwcwadcVdZalfqalfradfsdrds -aaaaaaaaaaaaaaaIftfufvfwfxfyfzaTcecedBdBdBdBdBdLfAcecKcedzcefBdBdBdBdBdBdBdBdzcefmcwfCfDfDfDfEcwfFadcVdEcEcCfGfHadadadae -aaaaaaaaaaaaaaaafufIfJfufKfLfMaTcecececececececeejceaqcefNdydydydydydydhdhdhdKcefmfOcwcwcwcwdjfPfQadcVfRaladadadadaeaaaa -aafSfSaaaaamaaaaaaaaaHfTfUfvfMaTcefVcecececefWcefXfWaqcefVcececefVcecececefVcecefmacacfYacacfZacacadacgaacadaeaaaaaaaaaa -gbgbgbfSaaamaagcamaaaHaHaHaHgdaTaqaqaqaqaqaqaqaqgefmfmfmfmfmfmfmfmfmfmfmfmfmfmfmfmcEcEcEcEgfcDggghgigfdEgjadaaaaaaaaaaaa -gbgbgbgbfSaaaaaaaaaagkglgmaHgngogpgqftgrfvaTgbgbgbgbaqgsgsatgtgsguatgsgtgvgwgxgyfmgzcEalcEcEgAgBgBgBgBgCgDadaaaaaaaaaaaa -gbgbgbgbgEaaaaaaaaaagFgGgGgHgIfIgIgpgJgIgpgKgbgbgbgbgbaqgsgLgMatgsgtatatatatatatfmggcEcEgNcEgOcEgNcEcEcEgPadaaaaaaaaaaaa -aaaagbfSgQaaaaaaaaaagRglgGaHfvfvgpftgpfvgpaTgbgbgbgSgbgbgbgsgTgsatatatatatatgUgVgWgXgXgXgXgXgYcEcEcEadadadadaaaaaaaaaaaa -aaaaaafSaaaaaaaagZfSaHaHaHaHaHaHgKgpaTgbgbgbgbgbgbgbgbgbgbgbgtgLatatgsatathaatatfmcEcEhbhccEgNcEgNcEhdhehfadaaaaaaaaaaaa -aaaaaaaaaaaaaaaafSfSfSgbgbgbgbgbgbgbgbgbgbgbgbgbgbgbgbgbgbgbaqgsgLatathghhhhhhhifmhjhkcEalcEcEcEcEcEadhlhmaeaaaaaaaaaaaa -aaaaaaaaaaaaaahnfSfSfSgbgbgbgbgbgbgbgbgbgbgbgSgbgbgbgbgbgbgbgbfmfmfmfmfmfmfmfmfmfmadadadadadfYadadadadadaeaaaaaaaaaaaaaa -aaaaaaaaaaaafSfSfSfSgbgbgbgbgbgbgbgbgbgbgbgbgbgbgbgbgbgbgbgbgbgbgbgbfSfSaaaaaaaaaahoaghpachqalhracaeaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaafSfSfSfSfSgbgbgbgbgbgbgbgbgbgbgbgbgbgbgbgbgbgbgbgbgbgbgbgbfSfSaaaaaaaaaaajahahakalhshtaeaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaafSfSfSfSfSgbgbgbgbgbgbgbgbgbgbgbgbgbgbgbgbgbgbgbgbgbgbgbgbfSfSaaaaaaaaaahuagahacaihtaeaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaafSgbgbfSfSgbgbgbgbgbgbgbgbgbgbgbgbgbgbgbgbgbgbgbgbgbgbgbgbfSfSaaaaaaaaaadkacacacacaeaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaagbgbgbfSfSfSgbgbgbgbgbgbgbgbgbgbgbgbgbgbgbgbgbgbgbgbgbgbgbfSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaagbgbgbgbgbfSfSgbgbgbgbgbgbgbgbgbgbgbgbgbgbgbgbgbgbgbgbgbgbfSfSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaagbgbgbgbgbfSfSfSgbgbhvgbgbgbgbgbgbgbgbgbgbgbgbgbgbgbgbgbgbfSfSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaagbgbgbgbgbfSfSfSgbgbgbgbgbgbgbgbgbgbgbgbgbgbgbgbgbgbgbgbfSfSfSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaagbgbgbgbgbfSfSfSgbgbgbgbgbgbhwgbgbgbgbgbgbgbgbgbgbgbfSfSfSfSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaagbgbgbgbgbfSfSfSgbgbgbhwgbgbhwgbgbgbgbgbgbgbgbgbfSfSfSfSgbgbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaagbgbgbgbfSfSfSfSgbgbgbgbgbgbgbgbgbgbgbgbgbgbgbfSfSgbgbgbgbgbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaagbgbfSfSfSfSfSfSgbgbgbgbgbgbgbgbgbgbgbgbfSfSfSfSgbgbgbgbgbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaafSfSfSfSfSfSgbgbgbgbgbgbgbgbfSfSfSfSaaaaaagbgbgbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafSfSfSfSfSfSfSfSfSfSfSfSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacadadaeadafaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagahaiajakalafaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamaiaianaoaoalafaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaapaaaaaaaaaaaaaaaaaaaaaaaaaqaharajaoaoaoasafaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaphlhmhmhmhmhmhmhmhmhmhnadadadauavawacauauadaxafaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaapaaapayazaAaBaCaDaEaFaGaHaIaJaKaLaMaNaOaOaOaOaOaOaPafaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaahohphphqhphphphphphphphraaaaaaaaaaaaapaQaRaAaAaAaAaAaAaSaAaAaTaUaoaoaVaoaoaoaoaoaoaWaXhsaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaYaZbahthubbhvbbhvbbbcbdaaaaaaaaaaapbeaRaAbfbgaAaAazaAbhbibibjbkblaobmaoaobnbobpaoaoaXhsaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaabqbrbshthwhxhxhxhxhxhxbtaaaaaaaphlayaAbfaRaAbfaAaAaAaAaAaAaAbuaUbvaoaoaoaoaoaoaoaoaobwhsaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaabxbybrhthxbzbzbAbzbzbBhyaaaaaahlbCbebfaAbDbEaAaAaAbFbGbHbFbGaIaUbIbJbKbKbLbKbKbKbKblbMhsaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaabNhzbOhAbPbNhmhmhmhmhmhBhmhmhmhBbQhmhmhmhmhCbRbRbRhDhmhmhmhmbCbShEhFbThEhEbUbVbWbXbYhGhsaaaaaaaaaaaa +aaaaaaaaaaaaaabZaahHcacbcbcccbhIcdcecfcgchcicgcjceckaIclcmcncockckckckcpcqcrcpcshJadadadadadadadadaeavctachKafaaaaaaaaaa +aaaaaaaaaaaaaaaahHcacbcbcbcucbhIckcvcfcwcwcwcxcjckckaTcycycyczckckckckcAcAckcAckhLcBcBcCcDcEcFcGcHhscIcJhMcKauadaeafaaaa +aaaaaaaaaaaaaaatcacbcbcbcbcLcMhIckckcfcwcNcwcwcjckckcOcPcQcRcSckckckckckckcTckckaIcCcUcChNcVcWcXcYhscZcJcIcIdadbasauadaf +aaaaaaaaaaaahHcacbcbdcdddecbdfhIckckdgdhdhdidhdjckckbuckdkdldldldldldldldldldmckhLcCdncCcKadadadadhOcZdodpdqdrdshPdtdudv +aaaaaaaaaaaahAcbcbcbdwdxcbcbdyhAdzdAdBdBdBdBdBdBdmckaTckdCckdDdEdEdEdEdEdEdEdCckaIcCdncCcCcCcCcCdFhsdGdHaobvaodIanaidudv +aaaaaaaaaaaadJdedKcbcbcbcbcbdLdMdBdNdEdEdEdEdEdOdPckdQckdCdRdSdTdSdSdSdSdUdVdWdXaTcCdndYdZdZeacCcChsebecaoedeeefhNaidudv +aaaaaaaaaaaaegeheicbejcbcbcbdfhyckckdEekekekelhQdCemdCckdCckendEdEdEdEdEdEdEdCeoepeqeresetethRcCcChseuecaobvaoevasaeadew +aaaaaaaaaaaaegeheicbcbexeyeyezhAckckdEekeAhQelhQeBdBeCdBeDckckckckckeEckckckdCckckcCdneFaoeGeHcCcChseIdHaobvaodIasauadaf +aaaaaaaaaaaaeJcbcbcbcbcucbcbcbbPckckdEeKekhQhShQdCckeLckdCckckeMckckckckckckeNdldleOePeFetaoeHcCcChseQdHaoeReeeShPeTdudv +aaaaaaaaaaaahycbcbcbcbcucbeUeVhydzckdEekhQhQeleWdCckbuckdCckdDdEdEdEdEdEdEdEdCeXeYeqereseZaofacCdFhsdGfbaoaoaodbanaidudv +aaaaaaaaaaaafchqhphpfdfehphphpffckckdEhQhQfgfhhQdCfiaTckdCfjfkflfmfmfmfmdUdVdWfnbucCdnfofpfpfqcCcChscZecaofraofshNftdudv +aaaaaaaaaaaaaafchThUhVfufvfwfxhIckckdEdEdEdEdEdOfyckcOckdCckfzdEdEdEdEdEdEdEdCckaIcCfAfBfBfBfCcCfDhscZdHhMcIfEfFasaeadew +aaaaaaaaaaaaaaaahUhWfGhUfHfIfJhIckckckckckckckckhQckbuckfKdBdBdBdBdBdBdldldldNckhLfLcCcCcCcCdnfMfNhscZfOaohXaeadauewaaaa +aafPfPaaaaapaaaaaaaafQfRfShVfJhIckfTckckckckfUckfVfUaIckfTckckckfTckckckckfTckckhJadavfWacavfXacadauavfYachKewaaaaaaaaaa +fZfZfZfPaaapaagaapaahYhphpgbgchYhmhmhmhmhmhmhmayhZhDbQhmhmhmhmhmhmhmhmhmhmhmhmhmbChMhMhMhMgdcJgegfgggddHghhsaaaaaaaaaaaa +fZfZfZfZfPaaaaaaaaaagiiagjhAgkglibgmhTgnhVicfZfZfZfZaTididaAgoidieaAidgogpgqifgraIgshMaohMhMgtgugugugugvgwhsaaaaaaaaaaaa +fZfZfZfZgxaaaaaaaaaagyigiggzihhWihibgAihibiifZfZfZfZfZayidgBgCaAidgoaAaAaAaAaAaAaTgehMhMgDhMgEhMgDhMhMhMgFhsaaaaaaaaaaaa +aaaafZfPgGaaaaaaaaaagHiaighyhVhVibhTibhVibicfZfZfZijfZfZfZidgIidaAaAaAaAaAaAgJgKgLgMgMgMgMgMgNhMhMhMacadadhOaaaaaaaaaaaa +aaaaaafPaaaaaaaagOfPhohphpikhpiciiibicfZfZfZfZfZfZfZfZfZfZfZgogBaAaAidaAaAgPaAaAbuhMhMgQgRhMgDhMgDhMgSgTgUhsaaaaaaaaaaaa +aaaaaaaaaaaaaaaafPfPfPfZfZfZfZfZfZfZfZfZfZfZfZfZfZfZfZfZfZfZayidgBaAaAgVgWgWgWgXaIgYgZhMaohMhMhMhMhMhNhahbewaaaaaaaaaaaa +aaaaaaaaaaaaaahcfPfPfPfZfZfZfZfZfZfZfZfZfZfZijfZfZfZfZfZfZfZfZayhDhmhmhmhmhmhmhmhBadadadaeavfWacaeaeauadewaaaaaaaaaaaaaa +aaaaaaaaaaaafPfPfPfPfZfZfZfZfZfZfZfZfZfZfZfZfZfZfZfZfZfZfZfZfZfZfZfZfPfPaaaaaaaaaahdahilhPheaohfasewaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaafPfPfPfPfPfZfZfZfZfZfZfZfZfZfZfZfZfZfZfZfZfZfZfZfZfZfZfZfZfPfPaaaaaaaaaaamaiaianaohghhewaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaafPfPfPfPfPfZfZfZfZfZfZfZfZfZfZfZfZfZfZfZfZfZfZfZfZfZfZfZfZfPfPaaaaaaaaaahiahaihNakhhewaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaafPfZfZfPfPfZfZfZfZfZfZfZfZfZfZfZfZfZfZfZfZfZfZfZfZfZfZfZfZfPfPaaaaaaaaaaacadadauadewaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaafZfZfZfPfPfPfZfZfZfZfZfZfZfZfZfZfZfZfZfZfZfZfZfZfZfZfZfZfZfPaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaafZfZfZfZfZfPfPfZfZfZfZfZfZfZfZfZfZfZfZfZfZfZfZfZfZfZfZfZfZfPfPaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaafZfZfZfZfZfPfPfPfZfZhjfZfZfZfZfZfZfZfZfZfZfZfZfZfZfZfZfZfZfPfPaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaafZfZfZfZfZfPfPfPfZfZfZfZfZfZfZfZfZfZfZfZfZfZfZfZfZfZfZfZfPfPfPaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaafZfZfZfZfZfPfPfPfZfZfZfZfZfZhkfZfZfZfZfZfZfZfZfZfZfZfPfPfPfPaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaafZfZfZfZfZfPfPfPfZfZfZhkfZfZhkfZfZfZfZfZfZfZfZfZfPfPfPfPfZfZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaafZfZfZfZfPfPfPfPfZfZfZfZfZfZfZfZfZfZfZfZfZfZfZfPfPfZfZfZfZfZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaafZfZfPfPfPfPfPfPfZfZfZfZfZfZfZfZfZfZfZfZfPfPfPfPfZfZfZfZfZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaafPfPfPfPfPfPfZfZfZfZfZfZfZfZfPfPfPfPaaaaaafZfZfZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafPfPfPfPfPfPfPfPfPfPfPfPaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa "} diff --git a/_maps/RandomRuins/SpaceRuins/deepstorage.dmm b/_maps/RandomRuins/SpaceRuins/deepstorage.dmm index 5f5b0aa8c4..4ef456676a 100644 --- a/_maps/RandomRuins/SpaceRuins/deepstorage.dmm +++ b/_maps/RandomRuins/SpaceRuins/deepstorage.dmm @@ -1,118 +1,118 @@ "aa" = (/turf/open/space,/area/space) "ab" = (/turf/closed/mineral/random/low_chance,/area/ruin/unpowered) -"ac" = (/turf/closed/wall/mineral/iron,/area/ruin/deepstorage) -"ad" = (/obj/structure/closet/cardboard,/obj/item/stack/sheet/mineral/silver,/obj/item/stack/sheet/mineral/gold,/obj/item/stack/sheet/mineral/silver,/obj/item/stack/sheet/mineral/silver,/obj/item/stack/sheet/mineral/gold,/obj/item/stack/sheet/mineral/gold,/turf/open/floor/plasteel/floorgrime,/area/ruin/deepstorage) -"ae" = (/obj/structure/closet/cardboard,/obj/item/weapon/storage/box/monkeycubes,/obj/item/weapon/storage/box/monkeycubes,/obj/item/weapon/storage/box/monkeycubes,/obj/item/weapon/storage/toolbox/drone,/obj/item/weapon/storage/toolbox/drone,/turf/open/floor/plasteel/floorgrime,/area/ruin/deepstorage) -"af" = (/obj/structure/closet/cardboard,/obj/item/stack/sheet/cardboard,/obj/item/stack/cable_coil,/obj/item/stack/sheet/mineral/wood,/obj/item/stack/sheet/mineral/wood,/obj/item/stack/packageWrap,/turf/open/floor/plasteel/floorgrime,/area/ruin/deepstorage) -"ag" = (/obj/structure/closet/cardboard,/obj/item/weapon/storage/box/mousetraps,/obj/item/weapon/storage/box/mousetraps,/obj/item/weapon/storage/box/drinkingglasses,/obj/item/weapon/storage/box/zipties,/obj/item/weapon/switchblade,/turf/open/floor/plasteel/floorgrime,/area/ruin/deepstorage) -"ah" = (/obj/structure/closet/cardboard,/obj/item/stack/sheet/metal{amount = 50;pixel_x = 2;pixel_y = 2},/obj/item/stack/sheet/metal{amount = 50;pixel_x = 2;pixel_y = 2},/obj/item/stack/sheet/metal{amount = 50;pixel_x = 2;pixel_y = 2},/obj/item/stack/sheet/metal{amount = 50;pixel_x = 2;pixel_y = 2},/obj/item/stack/rods{amount = 50},/obj/item/stack/rods{amount = 50},/obj/item/stack/rods{amount = 50},/obj/item/stack/rods{amount = 50},/turf/open/floor/plasteel/floorgrime,/area/ruin/deepstorage) -"ai" = (/obj/structure/closet/cardboard,/obj/item/stack/sheet/glass{amount = 50},/obj/item/stack/sheet/glass{amount = 50},/obj/item/stack/sheet/glass{amount = 50},/obj/item/stack/sheet/glass{amount = 50},/obj/item/stack/sheet/plasteel{amount = 10},/obj/item/stack/sheet/plasteel{amount = 10},/obj/item/stack/sheet/plasteel{amount = 10},/obj/item/stack/sheet/plasteel{amount = 10},/obj/item/clothing/shoes/combat,/obj/item/clothing/shoes/combat,/turf/open/floor/plasteel/floorgrime,/area/ruin/deepstorage) -"aj" = (/obj/structure/closet/cardboard,/obj/machinery/light{icon_state = "tube1";dir = 8},/obj/item/device/flashlight/flare,/obj/item/device/flashlight/flare,/obj/item/device/flashlight/flare,/obj/item/device/flashlight/flare,/obj/item/device/flashlight/flare,/obj/item/device/flashlight/flare,/obj/item/device/flashlight,/obj/item/device/flashlight,/obj/item/device/flashlight,/obj/item/weapon/shovel,/turf/open/floor/plasteel/floorgrime,/area/ruin/deepstorage) -"ak" = (/obj/structure/closet/cardboard,/obj/item/device/flashlight/lantern,/obj/item/device/flashlight/lantern,/obj/item/device/flashlight/lantern,/obj/item/device/tape/random,/obj/item/device/tape/random,/obj/item/device/tape/random,/obj/item/weapon/storage/box/rxglasses,/obj/item/weapon/extinguisher,/obj/item/weapon/extinguisher,/obj/item/clothing/glasses/night,/obj/item/clothing/glasses/night,/turf/open/floor/plasteel/floorgrime,/area/ruin/deepstorage) -"al" = (/obj/structure/closet/cardboard,/obj/item/weapon/storage/box/syringes,/obj/item/weapon/storage/box/syringes,/obj/item/weapon/storage/box/beakers,/obj/item/weapon/storage/box/beakers,/obj/item/weapon/storage/box/matches,/obj/item/weapon/storage/box/bodybags,/obj/item/clothing/glasses/meson/engine,/obj/item/clothing/glasses/meson/engine,/turf/open/floor/plasteel/floorgrime,/area/ruin/deepstorage) -"am" = (/obj/structure/closet/cardboard,/obj/item/weapon/kitchen/knife,/obj/item/weapon/kitchen/knife,/obj/item/weapon/cultivator,/obj/item/weapon/hatchet,/obj/item/weapon/kitchen/rollingpin,/turf/open/floor/plasteel/floorgrime,/area/ruin/deepstorage) -"an" = (/obj/structure/closet/cardboard,/obj/item/weapon/defibrillator,/obj/item/weapon/storage/box/medipens,/turf/open/floor/plasteel/floorgrime,/area/ruin/deepstorage) -"ao" = (/obj/structure/closet/cardboard,/obj/machinery/light{dir = 4;icon_state = "tube1"},/obj/item/ammo_box/c9mm,/obj/item/ammo_box/c9mm,/obj/item/ammo_box/c9mm,/obj/item/ammo_box/c9mm,/obj/item/ammo_box/c9mm,/obj/item/ammo_box/c9mm,/turf/open/floor/plasteel/floorgrime,/area/ruin/deepstorage) -"ap" = (/obj/structure/closet/crate/freezer,/obj/item/weapon/reagent_containers/blood/OMinus,/obj/item/weapon/reagent_containers/blood/OMinus,/obj/item/weapon/reagent_containers/blood/OMinus,/obj/item/weapon/reagent_containers/blood/OMinus,/obj/item/weapon/reagent_containers/blood/OMinus,/obj/item/weapon/reagent_containers/blood/random,/obj/item/weapon/reagent_containers/blood/random,/obj/item/weapon/reagent_containers/blood/random,/obj/item/weapon/reagent_containers/blood/random,/obj/item/weapon/reagent_containers/blood/random,/obj/item/weapon/reagent_containers/blood/random,/turf/open/floor/plasteel/floorgrime,/area/ruin/deepstorage) -"aq" = (/obj/machinery/iv_drip,/turf/open/floor/plasteel/floorgrime,/area/ruin/deepstorage) -"ar" = (/turf/open/floor/plasteel/floorgrime,/area/ruin/deepstorage) -"as" = (/obj/machinery/portable_atmospherics/canister/oxygen,/turf/open/floor/plasteel/floorgrime,/area/ruin/deepstorage) -"at" = (/obj/machinery/portable_atmospherics/canister/air,/turf/open/floor/plasteel/floorgrime,/area/ruin/deepstorage) -"au" = (/obj/machinery/door/airlock/highsecurity{name = "Bunker"},/turf/open/floor/plasteel,/area/ruin/deepstorage) -"av" = (/obj/structure/toilet{dir = 4},/turf/open/floor/plasteel/freezer,/area/ruin/deepstorage) -"aw" = (/obj/structure/mirror{pixel_x = 30},/obj/structure/sink{dir = 4;icon_state = "sink";pixel_x = 11;pixel_y = 0},/turf/open/floor/plasteel/freezer,/area/ruin/deepstorage) -"ax" = (/obj/structure/table,/obj/item/weapon/storage/toolbox/drone,/obj/item/device/flashlight,/obj/item/device/flashlight,/turf/open/floor/plasteel,/area/ruin/deepstorage) -"ay" = (/obj/structure/table,/obj/item/weapon/gun/ballistic/automatic/wt550{pixel_x = -3;pixel_y = 6},/obj/item/weapon/gun/ballistic/automatic/wt550{pixel_x = 2;pixel_y = 0},/obj/structure/reagent_dispensers/peppertank{pixel_y = 30},/turf/open/floor/plasteel/floorgrime,/area/ruin/deepstorage) -"az" = (/obj/structure/table,/obj/item/weapon/storage/backpack/dufflebag/sec{contents = newlist(/obj/item/weapon/scalpel,/obj/item/weapon/hemostat,/obj/item/weapon/retractor,/obj/item/weapon/cautery,/obj/item/weapon/circular_saw,/obj/item/weapon/surgical_drapes,/obj/item/clothing/mask/surgical);desc = "A large dufflebag for holding extra supplies - this one has a material inlay with space for various sharp-looking tools.";name = "dufflebag";pixel_y = 5},/turf/open/floor/plasteel,/area/ruin/deepstorage) -"aA" = (/obj/structure/table,/obj/item/device/radio{pixel_x = -4},/obj/item/device/radio,/obj/item/device/radio{pixel_x = 4},/turf/open/floor/plasteel,/area/ruin/deepstorage) -"aB" = (/obj/structure/table,/obj/item/stack/sheet/metal{amount = 50;pixel_x = 2;pixel_y = 2},/obj/item/stack/rods{amount = 50},/obj/item/stack/cable_coil,/obj/item/stack/cable_coil,/turf/open/floor/plasteel,/area/ruin/deepstorage) -"aC" = (/obj/structure/table,/obj/item/weapon/storage/firstaid/brute{pixel_x = 4;pixel_y = 4},/obj/item/weapon/storage/firstaid/brute,/turf/open/floor/plasteel,/area/ruin/deepstorage) -"aD" = (/obj/structure/table,/obj/item/weapon/storage/firstaid/regular{pixel_x = 4;pixel_y = 4},/obj/item/weapon/storage/firstaid/regular,/obj/machinery/light/small{dir = 4},/turf/open/floor/plasteel,/area/ruin/deepstorage) -"aE" = (/obj/structure/closet/crate/radiation,/turf/open/floor/plasteel,/area/ruin/deepstorage) -"aF" = (/obj/structure/closet/cardboard,/obj/item/weapon/reagent_containers/food/snacks/beans,/obj/item/weapon/reagent_containers/food/snacks/beans,/obj/item/weapon/reagent_containers/food/snacks/beans,/obj/item/weapon/reagent_containers/food/snacks/beans,/obj/item/weapon/reagent_containers/food/snacks/beans,/turf/open/floor/plasteel/floorgrime,/area/ruin/deepstorage) -"aG" = (/obj/structure/closet/cardboard,/obj/item/weapon/reagent_containers/food/snacks/beans,/obj/item/weapon/reagent_containers/food/snacks/beans,/obj/item/weapon/reagent_containers/food/snacks/beans,/obj/machinery/light{dir = 4;icon_state = "tube1"},/obj/item/weapon/reagent_containers/food/snacks/beans,/obj/item/weapon/reagent_containers/food/snacks/beans,/turf/open/floor/plasteel/floorgrime,/area/ruin/deepstorage) -"aH" = (/obj/structure/closet/cardboard,/obj/item/weapon/reagent_containers/food/drinks/soda_cans/cola,/obj/item/weapon/reagent_containers/food/drinks/soda_cans/cola,/obj/item/weapon/reagent_containers/food/drinks/soda_cans/cola,/obj/item/weapon/reagent_containers/food/drinks/soda_cans/cola,/obj/item/weapon/reagent_containers/food/drinks/soda_cans/cola,/turf/open/floor/plasteel,/area/ruin/deepstorage) -"aI" = (/obj/machinery/vending/clothing,/turf/open/floor/wood,/area/ruin/deepstorage) -"aJ" = (/turf/open/floor/wood{icon_state = "wood-broken3"},/area/ruin/deepstorage) -"aK" = (/obj/structure/bed,/turf/open/floor/wood,/area/ruin/deepstorage) -"aL" = (/turf/open/floor/plasteel/freezer,/area/ruin/deepstorage) -"aM" = (/obj/machinery/light/small{dir = 4},/turf/open/floor/plasteel/freezer,/area/ruin/deepstorage) -"aN" = (/obj/structure/table,/obj/item/clothing/gloves/combat{pixel_x = -3;pixel_y = 4},/obj/item/clothing/gloves/combat{pixel_x = 3;pixel_y = -2},/obj/item/clothing/mask/gas,/obj/item/clothing/mask/gas,/obj/item/clothing/mask/gas,/turf/open/floor/plasteel/floorgrime,/area/ruin/deepstorage) -"aO" = (/turf/open/floor/plasteel,/area/ruin/deepstorage) -"aP" = (/obj/structure/table,/obj/item/device/mass_spectrometer/adv,/obj/item/device/mass_spectrometer/adv,/obj/item/device/healthanalyzer,/obj/item/device/healthanalyzer,/obj/item/stack/medical/gauze,/obj/item/stack/medical/gauze,/turf/open/floor/plasteel/floorgrime,/area/ruin/deepstorage) -"aQ" = (/obj/structure/closet/radiation,/obj/machinery/light{icon_state = "tube1";dir = 8},/turf/open/floor/plasteel,/area/ruin/deepstorage) -"aR" = (/obj/structure/closet/cardboard,/obj/item/weapon/reagent_containers/food/snacks/beans,/obj/item/weapon/reagent_containers/food/snacks/beans,/obj/item/weapon/reagent_containers/food/snacks/beans,/obj/item/weapon/reagent_containers/food/snacks/beans,/obj/item/weapon/reagent_containers/food/snacks/beans,/turf/open/floor/plasteel,/area/ruin/deepstorage) -"aS" = (/obj/structure/closet/cardboard,/obj/item/weapon/reagent_containers/food/drinks/soda_cans/cola,/obj/item/weapon/reagent_containers/food/drinks/soda_cans/cola,/obj/item/weapon/reagent_containers/food/drinks/soda_cans/cola,/obj/item/weapon/reagent_containers/food/drinks/soda_cans/cola,/obj/item/weapon/reagent_containers/food/drinks/soda_cans/cola,/turf/open/floor/plasteel/floorgrime,/area/ruin/deepstorage) -"aT" = (/obj/structure/closet/wardrobe/pink,/turf/open/floor/wood{icon_state = "wood-broken"},/area/ruin/deepstorage) -"aU" = (/turf/open/floor/wood,/area/ruin/deepstorage) -"aV" = (/obj/structure/bed,/turf/open/floor/wood{icon_state = "wood-broken7"},/area/ruin/deepstorage) -"aW" = (/obj/machinery/shower{dir = 4},/turf/open/floor/plasteel/freezer,/area/ruin/deepstorage) -"aX" = (/obj/machinery/shower{dir = 8},/turf/open/floor/plasteel/freezer,/area/ruin/deepstorage) -"aY" = (/obj/machinery/light/small{dir = 8},/obj/structure/table,/obj/item/weapon/storage/firstaid/toxin{pixel_x = 4;pixel_y = 4},/obj/item/weapon/storage/firstaid/toxin,/obj/item/weapon/storage/pill_bottle/charcoal,/turf/open/floor/plasteel,/area/ruin/deepstorage) -"aZ" = (/obj/structure/table,/obj/item/device/flashlight/flare,/obj/item/device/flashlight/flare,/obj/item/device/flashlight/flare,/obj/item/device/flashlight/flare{pixel_y = 6},/obj/item/device/flashlight/flare,/obj/item/weapon/crowbar/red,/turf/open/floor/plasteel,/area/ruin/deepstorage) -"ba" = (/obj/machinery/suit_storage_unit/standard_unit,/turf/open/floor/plasteel,/area/ruin/deepstorage) -"bb" = (/obj/structure/closet/wardrobe/pjs,/obj/machinery/light/small{dir = 8},/turf/open/floor/wood,/area/ruin/deepstorage) -"bc" = (/turf/open/floor/wood{icon_state = "wood-broken4"},/area/ruin/deepstorage) -"bd" = (/obj/structure/bed,/turf/open/floor/wood{icon_state = "wood-broken3"},/area/ruin/deepstorage) -"be" = (/obj/machinery/shower{dir = 4},/obj/item/weapon/soap,/turf/open/floor/plasteel/freezer,/area/ruin/deepstorage) -"bf" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/ruin/deepstorage) -"bg" = (/obj/structure/closet/cardboard,/obj/item/weapon/storage/box/donkpockets,/obj/item/weapon/storage/box/donkpockets,/obj/item/weapon/storage/box/donkpockets,/obj/item/weapon/storage/box/donkpockets,/obj/item/weapon/storage/box/donkpockets,/turf/open/floor/plasteel/floorgrime,/area/ruin/deepstorage) -"bh" = (/obj/structure/closet/cardboard,/obj/item/weapon/storage/box/donkpockets,/obj/item/weapon/storage/box/donkpockets,/obj/item/weapon/storage/box/donkpockets,/obj/item/weapon/storage/box/donkpockets,/obj/item/weapon/storage/box/donkpockets,/turf/open/floor/plasteel,/area/ruin/deepstorage) -"bi" = (/obj/machinery/door/airlock/highsecurity{name = "Bunker"},/turf/open/floor/wood,/area/ruin/deepstorage) -"bj" = (/obj/machinery/door/airlock/highsecurity{name = "Bunker"},/turf/open/floor/plasteel/freezer,/area/ruin/deepstorage) -"bk" = (/obj/structure/fireaxecabinet{pixel_y = 30},/turf/open/floor/plasteel,/area/ruin/deepstorage) -"bl" = (/obj/machinery/sleeper{icon_state = "sleeper-open";dir = 4},/obj/machinery/light/small{dir = 8},/turf/open/floor/plasteel/floorgrime,/area/ruin/deepstorage) -"bm" = (/obj/machinery/light/small{dir = 1},/turf/open/floor/plasteel/floorgrime,/area/ruin/deepstorage) -"bn" = (/obj/machinery/light/small{dir = 4},/turf/open/floor/plasteel/floorgrime,/area/ruin/deepstorage) -"bo" = (/obj/machinery/sleeper{icon_state = "sleeper-open";dir = 4},/turf/open/floor/plasteel/floorgrime,/area/ruin/deepstorage) -"bp" = (/obj/machinery/door/airlock/highsecurity{name = "Bunker"},/turf/open/floor/plasteel/floorgrime,/area/ruin/deepstorage) -"bq" = (/obj/machinery/processor{name = "processor"},/turf/open/floor/plasteel,/area/ruin/deepstorage) -"br" = (/obj/structure/table,/obj/item/weapon/storage/box/matches,/turf/open/floor/plasteel,/area/ruin/deepstorage) -"bs" = (/obj/structure/table,/obj/machinery/reagentgrinder,/turf/open/floor/plasteel/floorgrime,/area/ruin/deepstorage) -"bt" = (/obj/structure/table,/obj/machinery/recharger,/turf/open/floor/plasteel/floorgrime,/area/ruin/deepstorage) -"bu" = (/obj/machinery/light{dir = 1},/obj/machinery/hydroponics/constructable,/turf/open/floor/light,/area/ruin/deepstorage) -"bv" = (/obj/machinery/hydroponics/constructable,/turf/open/floor/light,/area/ruin/deepstorage) -"bw" = (/obj/machinery/blackbox_recorder,/turf/open/floor/plasteel,/area/ruin/deepstorage) -"bx" = (/obj/structure/cable{icon_state = "0-4";d2 = 4},/obj/machinery/power/port_gen/pacman,/turf/open/floor/plasteel,/area/ruin/deepstorage) -"by" = (/obj/machinery/power/smes/magical{desc = "A high-capacity superconducting magnetic energy storage (SMES) unit.";name = "power storage unit"},/obj/structure/cable,/obj/structure/cable{icon_state = "0-2";pixel_y = 1;d2 = 2},/obj/structure/cable{d1 = 2;d2 = 8;icon_state = "2-8"},/turf/open/floor/plasteel/floorgrime,/area/ruin/deepstorage) -"bz" = (/obj/machinery/telecomms/relay/preset/telecomms,/turf/open/floor/plasteel,/area/ruin/deepstorage) -"bA" = (/obj/machinery/light/small{dir = 1},/obj/structure/tank_dispenser/oxygen,/turf/open/floor/plasteel,/area/ruin/deepstorage) -"bB" = (/obj/machinery/biogenerator,/turf/open/floor/plasteel,/area/ruin/deepstorage) -"bC" = (/obj/machinery/light,/obj/machinery/hydroponics/constructable,/turf/open/floor/light,/area/ruin/deepstorage) -"bD" = (/obj/machinery/autolathe,/turf/open/floor/plasteel,/area/ruin/deepstorage) -"bE" = (/obj/structure/cable{d1 = 1;d2 = 2;icon_state = "1-2"},/obj/machinery/power/terminal{icon_state = "term";dir = 1},/turf/open/floor/plasteel,/area/ruin/deepstorage) -"bF" = (/obj/structure/reagent_dispensers/fueltank,/turf/open/floor/plasteel/floorgrime,/area/ruin/deepstorage) -"bG" = (/obj/structure/table,/obj/machinery/microwave,/turf/open/floor/plasteel/bar,/area/ruin/deepstorage) -"bH" = (/turf/open/floor/plasteel/bar,/area/ruin/deepstorage) -"bI" = (/obj/structure/table,/obj/item/weapon/storage/box/donkpockets,/turf/open/floor/plasteel/bar,/area/ruin/deepstorage) -"bJ" = (/obj/structure/table,/obj/item/weapon/reagent_containers/food/snacks/beans,/turf/open/floor/plasteel/bar,/area/ruin/deepstorage) -"bK" = (/obj/structure/chair{dir = 8},/turf/open/floor/plasteel/bar,/area/ruin/deepstorage) -"bL" = (/obj/machinery/seed_extractor,/turf/open/floor/plasteel,/area/ruin/deepstorage) -"bM" = (/obj/machinery/power/apc{dir = 8;name = "Bunker APC";pixel_x = -24;pixel_y = 0},/obj/structure/cable{icon_state = "0-4";d2 = 4},/turf/open/floor/plasteel/floorgrime,/area/ruin/deepstorage) -"bN" = (/obj/structure/cable{d1 = 4;d2 = 8;icon_state = "4-8";pixel_y = 0;tag = ""},/turf/open/floor/plasteel,/area/ruin/deepstorage) -"bO" = (/obj/structure/cable{d1 = 1;d2 = 8;icon_state = "1-8";tag = ""},/turf/open/floor/plasteel,/area/ruin/deepstorage) -"bP" = (/obj/structure/reagent_dispensers/watertank,/turf/open/floor/plasteel/floorgrime,/area/ruin/deepstorage) -"bQ" = (/obj/structure/table,/obj/item/weapon/kitchen/knife,/turf/open/floor/plasteel/bar,/area/ruin/deepstorage) -"bR" = (/obj/structure/table,/turf/open/floor/plasteel/bar,/area/ruin/deepstorage) -"bS" = (/obj/structure/table,/obj/item/weapon/kitchen/fork,/turf/open/floor/plasteel/bar,/area/ruin/deepstorage) -"bT" = (/obj/machinery/vending/hydronutrients,/turf/open/floor/plasteel,/area/ruin/deepstorage) -"bU" = (/obj/machinery/space_heater,/turf/open/floor/plasteel/floorgrime,/area/ruin/deepstorage) -"bV" = (/obj/structure/chair/office/dark{dir = 4},/turf/open/floor/plasteel,/area/ruin/deepstorage) -"bW" = (/obj/structure/table/reinforced,/turf/open/floor/plasteel,/area/ruin/deepstorage) -"bX" = (/obj/machinery/smartfridge,/turf/open/floor/plasteel/bar,/area/ruin/deepstorage) -"bY" = (/obj/machinery/light/small,/turf/open/floor/plasteel/bar,/area/ruin/deepstorage) -"bZ" = (/obj/machinery/vending/hydroseeds{slogan_delay = 700},/turf/open/floor/plasteel,/area/ruin/deepstorage) -"ca" = (/obj/machinery/light/small{dir = 8},/turf/open/floor/plasteel/floorgrime,/area/ruin/deepstorage) -"cb" = (/obj/structure/chair/office/dark,/turf/open/floor/plasteel/floorgrime,/area/ruin/deepstorage) -"cc" = (/obj/structure/frame/computer,/turf/open/floor/plasteel,/area/ruin/deepstorage) -"cd" = (/obj/structure/table/reinforced,/obj/machinery/computer/security/telescreen{dir = 1;name = "Bunker Entrance";network = list("Bunker1");pixel_x = 0;pixel_y = 2},/turf/open/floor/plasteel,/area/ruin/deepstorage) -"ce" = (/obj/structure/table/reinforced,/obj/machinery/button/door{id = "bunker1";name = "Inner Doors";pixel_y = 6},/obj/machinery/button/door{id = "bunker2";name = "Outer Doors";pixel_y = -4},/turf/open/floor/plasteel/floorgrime,/area/ruin/deepstorage) -"cf" = (/obj/machinery/door/poddoor{id = "bunker1";name = "Bunker Door";tag = "inner"},/turf/open/floor/plating,/area/ruin/deepstorage) -"cg" = (/turf/open/floor/plating,/area/ruin/deepstorage) -"ch" = (/obj/machinery/camera{network = list("Bunker1")},/turf/open/floor/plating,/area/ruin/deepstorage) -"ci" = (/obj/machinery/light/small{dir = 4},/turf/open/floor/plating,/area/ruin/deepstorage) -"cj" = (/obj/machinery/door/poddoor{id = "bunker2";name = "Bunker Door";tag = "outer"},/turf/open/floor/plating,/area/ruin/deepstorage) -"ck" = (/turf/open/floor/plating/asteroid/airless,/area/ruin/deepstorage) +"ac" = (/turf/closed/wall/mineral/iron,/area/ruin/unpowered) +"ad" = (/obj/structure/closet/cardboard,/obj/item/stack/sheet/mineral/silver,/obj/item/stack/sheet/mineral/gold,/obj/item/stack/sheet/mineral/silver,/obj/item/stack/sheet/mineral/silver,/obj/item/stack/sheet/mineral/gold,/obj/item/stack/sheet/mineral/gold,/turf/open/floor/plasteel/floorgrime,/area/ruin/unpowered) +"ae" = (/obj/structure/closet/cardboard,/obj/item/weapon/storage/box/monkeycubes,/obj/item/weapon/storage/box/monkeycubes,/obj/item/weapon/storage/box/monkeycubes,/obj/item/weapon/storage/toolbox/drone,/obj/item/weapon/storage/toolbox/drone,/turf/open/floor/plasteel/floorgrime,/area/ruin/unpowered) +"af" = (/obj/structure/closet/cardboard,/obj/item/stack/sheet/cardboard,/obj/item/stack/cable_coil,/obj/item/stack/sheet/mineral/wood,/obj/item/stack/sheet/mineral/wood,/obj/item/stack/packageWrap,/turf/open/floor/plasteel/floorgrime,/area/ruin/unpowered) +"ag" = (/obj/structure/closet/cardboard,/obj/item/weapon/storage/box/mousetraps,/obj/item/weapon/storage/box/mousetraps,/obj/item/weapon/storage/box/drinkingglasses,/obj/item/weapon/storage/box/zipties,/obj/item/weapon/switchblade,/turf/open/floor/plasteel/floorgrime,/area/ruin/unpowered) +"ah" = (/obj/structure/closet/cardboard,/obj/item/stack/sheet/metal{amount = 50; pixel_x = 2; pixel_y = 2},/obj/item/stack/sheet/metal{amount = 50; pixel_x = 2; pixel_y = 2},/obj/item/stack/sheet/metal{amount = 50; pixel_x = 2; pixel_y = 2},/obj/item/stack/sheet/metal{amount = 50; pixel_x = 2; pixel_y = 2},/obj/item/stack/rods{amount = 50},/obj/item/stack/rods{amount = 50},/obj/item/stack/rods{amount = 50},/obj/item/stack/rods{amount = 50},/turf/open/floor/plasteel/floorgrime,/area/ruin/unpowered) +"ai" = (/obj/structure/closet/cardboard,/obj/item/stack/sheet/glass{amount = 50},/obj/item/stack/sheet/glass{amount = 50},/obj/item/stack/sheet/glass{amount = 50},/obj/item/stack/sheet/glass{amount = 50},/obj/item/stack/sheet/plasteel{amount = 10},/obj/item/stack/sheet/plasteel{amount = 10},/obj/item/stack/sheet/plasteel{amount = 10},/obj/item/stack/sheet/plasteel{amount = 10},/obj/item/clothing/shoes/combat,/obj/item/clothing/shoes/combat,/turf/open/floor/plasteel/floorgrime,/area/ruin/unpowered) +"aj" = (/obj/structure/closet/cardboard,/obj/machinery/light{icon_state = "tube1"; dir = 8},/obj/item/device/flashlight/flare,/obj/item/device/flashlight/flare,/obj/item/device/flashlight/flare,/obj/item/device/flashlight/flare,/obj/item/device/flashlight/flare,/obj/item/device/flashlight/flare,/obj/item/device/flashlight,/obj/item/device/flashlight,/obj/item/device/flashlight,/obj/item/weapon/shovel,/turf/open/floor/plasteel/floorgrime,/area/ruin/unpowered) +"ak" = (/obj/structure/closet/cardboard,/obj/item/device/flashlight/lantern,/obj/item/device/flashlight/lantern,/obj/item/device/flashlight/lantern,/obj/item/device/tape/random,/obj/item/device/tape/random,/obj/item/device/tape/random,/obj/item/weapon/storage/box/rxglasses,/obj/item/weapon/extinguisher,/obj/item/weapon/extinguisher,/obj/item/clothing/glasses/night,/obj/item/clothing/glasses/night,/turf/open/floor/plasteel/floorgrime,/area/ruin/unpowered) +"al" = (/obj/structure/closet/cardboard,/obj/item/weapon/storage/box/syringes,/obj/item/weapon/storage/box/syringes,/obj/item/weapon/storage/box/beakers,/obj/item/weapon/storage/box/beakers,/obj/item/weapon/storage/box/matches,/obj/item/weapon/storage/box/bodybags,/obj/item/clothing/glasses/meson/engine,/obj/item/clothing/glasses/meson/engine,/turf/open/floor/plasteel/floorgrime,/area/ruin/unpowered) +"am" = (/obj/structure/closet/cardboard,/obj/item/weapon/kitchen/knife,/obj/item/weapon/kitchen/knife,/obj/item/weapon/cultivator,/obj/item/weapon/hatchet,/obj/item/weapon/kitchen/rollingpin,/turf/open/floor/plasteel/floorgrime,/area/ruin/unpowered) +"an" = (/obj/structure/closet/cardboard,/obj/item/weapon/defibrillator,/obj/item/weapon/storage/box/medipens,/turf/open/floor/plasteel/floorgrime,/area/ruin/unpowered) +"ao" = (/obj/structure/closet/cardboard,/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/item/ammo_box/c9mm,/obj/item/ammo_box/c9mm,/obj/item/ammo_box/c9mm,/obj/item/ammo_box/c9mm,/obj/item/ammo_box/c9mm,/obj/item/ammo_box/c9mm,/turf/open/floor/plasteel/floorgrime,/area/ruin/unpowered) +"ap" = (/obj/structure/closet/crate/freezer,/obj/item/weapon/reagent_containers/blood/OMinus,/obj/item/weapon/reagent_containers/blood/OMinus,/obj/item/weapon/reagent_containers/blood/OMinus,/obj/item/weapon/reagent_containers/blood/OMinus,/obj/item/weapon/reagent_containers/blood/OMinus,/obj/item/weapon/reagent_containers/blood/random,/obj/item/weapon/reagent_containers/blood/random,/obj/item/weapon/reagent_containers/blood/random,/obj/item/weapon/reagent_containers/blood/random,/obj/item/weapon/reagent_containers/blood/random,/obj/item/weapon/reagent_containers/blood/random,/turf/open/floor/plasteel/floorgrime,/area/ruin/unpowered) +"aq" = (/obj/machinery/iv_drip,/turf/open/floor/plasteel/floorgrime,/area/ruin/unpowered) +"ar" = (/turf/open/floor/plasteel/floorgrime,/area/ruin/unpowered) +"as" = (/obj/machinery/portable_atmospherics/canister/oxygen,/turf/open/floor/plasteel/floorgrime,/area/ruin/unpowered) +"at" = (/obj/machinery/portable_atmospherics/canister/air,/turf/open/floor/plasteel/floorgrime,/area/ruin/unpowered) +"au" = (/obj/machinery/door/airlock/highsecurity{name = "Bunker"},/turf/open/floor/plasteel,/area/ruin/unpowered) +"av" = (/obj/structure/toilet{dir = 4},/turf/open/floor/plasteel/freezer,/area/ruin/unpowered) +"aw" = (/obj/structure/mirror{pixel_x = 30},/obj/structure/sink{dir = 4; icon_state = "sink"; pixel_x = 11; pixel_y = 0},/turf/open/floor/plasteel/freezer,/area/ruin/unpowered) +"ax" = (/obj/structure/table,/obj/item/weapon/storage/toolbox/drone,/obj/item/device/flashlight,/obj/item/device/flashlight,/turf/open/floor/plasteel,/area/ruin/unpowered) +"ay" = (/obj/structure/table,/obj/item/weapon/gun/projectile/automatic/wt550{pixel_x = -3; pixel_y = 6},/obj/item/weapon/gun/projectile/automatic/wt550{pixel_x = 2; pixel_y = 0},/obj/structure/reagent_dispensers/peppertank{pixel_y = 30},/turf/open/floor/plasteel/floorgrime,/area/ruin/unpowered) +"az" = (/obj/structure/table,/obj/item/weapon/storage/backpack/dufflebag/sec{contents = newlist(/obj/item/weapon/scalpel,/obj/item/weapon/hemostat,/obj/item/weapon/retractor,/obj/item/weapon/cautery,/obj/item/weapon/circular_saw,/obj/item/weapon/surgical_drapes,/obj/item/clothing/mask/surgical); desc = "A large dufflebag for holding extra supplies - this one has a material inlay with space for various sharp-looking tools."; name = "dufflebag"; pixel_y = 5},/turf/open/floor/plasteel,/area/ruin/unpowered) +"aA" = (/obj/structure/table,/obj/item/device/radio{pixel_x = -4},/obj/item/device/radio,/obj/item/device/radio{pixel_x = 4},/turf/open/floor/plasteel,/area/ruin/unpowered) +"aB" = (/obj/structure/table,/obj/item/stack/sheet/metal{amount = 50; pixel_x = 2; pixel_y = 2},/obj/item/stack/rods{amount = 50},/obj/item/stack/cable_coil,/obj/item/stack/cable_coil,/turf/open/floor/plasteel,/area/ruin/unpowered) +"aC" = (/obj/structure/table,/obj/item/weapon/storage/firstaid/brute{pixel_x = 4; pixel_y = 4},/obj/item/weapon/storage/firstaid/brute,/turf/open/floor/plasteel,/area/ruin/unpowered) +"aD" = (/obj/structure/table,/obj/item/weapon/storage/firstaid/regular{pixel_x = 4; pixel_y = 4},/obj/item/weapon/storage/firstaid/regular,/obj/machinery/light/small{dir = 4},/turf/open/floor/plasteel,/area/ruin/unpowered) +"aE" = (/obj/structure/closet/crate/radiation,/turf/open/floor/plasteel,/area/ruin/unpowered) +"aF" = (/obj/structure/closet/cardboard,/obj/item/weapon/reagent_containers/food/snacks/beans,/obj/item/weapon/reagent_containers/food/snacks/beans,/obj/item/weapon/reagent_containers/food/snacks/beans,/obj/item/weapon/reagent_containers/food/snacks/beans,/obj/item/weapon/reagent_containers/food/snacks/beans,/turf/open/floor/plasteel/floorgrime,/area/ruin/unpowered) +"aG" = (/obj/structure/closet/cardboard,/obj/item/weapon/reagent_containers/food/snacks/beans,/obj/item/weapon/reagent_containers/food/snacks/beans,/obj/item/weapon/reagent_containers/food/snacks/beans,/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/item/weapon/reagent_containers/food/snacks/beans,/obj/item/weapon/reagent_containers/food/snacks/beans,/turf/open/floor/plasteel/floorgrime,/area/ruin/unpowered) +"aH" = (/obj/structure/closet/cardboard,/obj/item/weapon/reagent_containers/food/drinks/soda_cans/cola,/obj/item/weapon/reagent_containers/food/drinks/soda_cans/cola,/obj/item/weapon/reagent_containers/food/drinks/soda_cans/cola,/obj/item/weapon/reagent_containers/food/drinks/soda_cans/cola,/obj/item/weapon/reagent_containers/food/drinks/soda_cans/cola,/turf/open/floor/plasteel,/area/ruin/unpowered) +"aI" = (/obj/machinery/vending/clothing,/turf/open/floor/wood,/area/ruin/unpowered) +"aJ" = (/turf/open/floor/wood{icon_state = "wood-broken3"},/area/ruin/unpowered) +"aK" = (/obj/structure/bed,/turf/open/floor/wood,/area/ruin/unpowered) +"aL" = (/turf/open/floor/plasteel/freezer,/area/ruin/unpowered) +"aM" = (/obj/machinery/light/small{dir = 4},/turf/open/floor/plasteel/freezer,/area/ruin/unpowered) +"aN" = (/obj/structure/table,/obj/item/clothing/gloves/combat{pixel_x = -3; pixel_y = 4},/obj/item/clothing/gloves/combat{pixel_x = 3; pixel_y = -2},/obj/item/clothing/mask/gas,/obj/item/clothing/mask/gas,/obj/item/clothing/mask/gas,/turf/open/floor/plasteel/floorgrime,/area/ruin/unpowered) +"aO" = (/turf/open/floor/plasteel,/area/ruin/unpowered) +"aP" = (/obj/structure/table,/obj/item/device/mass_spectrometer/adv,/obj/item/device/mass_spectrometer/adv,/obj/item/device/healthanalyzer,/obj/item/device/healthanalyzer,/obj/item/stack/medical/gauze,/obj/item/stack/medical/gauze,/turf/open/floor/plasteel/floorgrime,/area/ruin/unpowered) +"aQ" = (/obj/structure/closet/radiation,/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/open/floor/plasteel,/area/ruin/unpowered) +"aR" = (/obj/structure/closet/cardboard,/obj/item/weapon/reagent_containers/food/snacks/beans,/obj/item/weapon/reagent_containers/food/snacks/beans,/obj/item/weapon/reagent_containers/food/snacks/beans,/obj/item/weapon/reagent_containers/food/snacks/beans,/obj/item/weapon/reagent_containers/food/snacks/beans,/turf/open/floor/plasteel,/area/ruin/unpowered) +"aS" = (/obj/structure/closet/cardboard,/obj/item/weapon/reagent_containers/food/drinks/soda_cans/cola,/obj/item/weapon/reagent_containers/food/drinks/soda_cans/cola,/obj/item/weapon/reagent_containers/food/drinks/soda_cans/cola,/obj/item/weapon/reagent_containers/food/drinks/soda_cans/cola,/obj/item/weapon/reagent_containers/food/drinks/soda_cans/cola,/turf/open/floor/plasteel/floorgrime,/area/ruin/unpowered) +"aT" = (/obj/structure/closet/wardrobe/pink,/turf/open/floor/wood{icon_state = "wood-broken"},/area/ruin/unpowered) +"aU" = (/turf/open/floor/wood,/area/ruin/unpowered) +"aV" = (/obj/structure/bed,/turf/open/floor/wood{icon_state = "wood-broken7"},/area/ruin/unpowered) +"aW" = (/obj/machinery/shower{dir = 4},/turf/open/floor/plasteel/freezer,/area/ruin/unpowered) +"aX" = (/obj/machinery/shower{dir = 8},/turf/open/floor/plasteel/freezer,/area/ruin/unpowered) +"aY" = (/obj/machinery/light/small{dir = 8},/obj/structure/table,/obj/item/weapon/storage/firstaid/toxin{pixel_x = 4; pixel_y = 4},/obj/item/weapon/storage/firstaid/toxin,/obj/item/weapon/storage/pill_bottle/charcoal,/turf/open/floor/plasteel,/area/ruin/unpowered) +"aZ" = (/obj/structure/table,/obj/item/device/flashlight/flare,/obj/item/device/flashlight/flare,/obj/item/device/flashlight/flare,/obj/item/device/flashlight/flare{pixel_y = 6},/obj/item/device/flashlight/flare,/obj/item/weapon/crowbar/red,/turf/open/floor/plasteel,/area/ruin/unpowered) +"ba" = (/obj/machinery/suit_storage_unit/standard_unit,/turf/open/floor/plasteel,/area/ruin/unpowered) +"bb" = (/obj/structure/closet/wardrobe/pjs,/obj/machinery/light/small{dir = 8},/turf/open/floor/wood,/area/ruin/unpowered) +"bc" = (/turf/open/floor/wood{icon_state = "wood-broken4"},/area/ruin/unpowered) +"bd" = (/obj/structure/bed,/turf/open/floor/wood{icon_state = "wood-broken3"},/area/ruin/unpowered) +"be" = (/obj/machinery/shower{dir = 4},/obj/item/weapon/soap,/turf/open/floor/plasteel/freezer,/area/ruin/unpowered) +"bf" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/ruin/unpowered) +"bg" = (/obj/structure/closet/cardboard,/obj/item/weapon/storage/box/donkpockets,/obj/item/weapon/storage/box/donkpockets,/obj/item/weapon/storage/box/donkpockets,/obj/item/weapon/storage/box/donkpockets,/obj/item/weapon/storage/box/donkpockets,/turf/open/floor/plasteel/floorgrime,/area/ruin/unpowered) +"bh" = (/obj/structure/closet/cardboard,/obj/item/weapon/storage/box/donkpockets,/obj/item/weapon/storage/box/donkpockets,/obj/item/weapon/storage/box/donkpockets,/obj/item/weapon/storage/box/donkpockets,/obj/item/weapon/storage/box/donkpockets,/turf/open/floor/plasteel,/area/ruin/unpowered) +"bi" = (/obj/machinery/door/airlock/highsecurity{name = "Bunker"},/turf/open/floor/wood,/area/ruin/unpowered) +"bj" = (/obj/machinery/door/airlock/highsecurity{name = "Bunker"},/turf/open/floor/plasteel/freezer,/area/ruin/unpowered) +"bk" = (/obj/structure/fireaxecabinet{pixel_y = 30},/turf/open/floor/plasteel,/area/ruin/unpowered) +"bl" = (/obj/machinery/sleeper{icon_state = "sleeper-open"; dir = 4},/obj/machinery/light/small{dir = 8},/turf/open/floor/plasteel/floorgrime,/area/ruin/unpowered) +"bm" = (/obj/machinery/light/small{dir = 1},/turf/open/floor/plasteel/floorgrime,/area/ruin/unpowered) +"bn" = (/obj/machinery/light/small{dir = 4},/turf/open/floor/plasteel/floorgrime,/area/ruin/unpowered) +"bo" = (/obj/machinery/sleeper{icon_state = "sleeper-open"; dir = 4},/turf/open/floor/plasteel/floorgrime,/area/ruin/unpowered) +"bp" = (/obj/machinery/door/airlock/highsecurity{name = "Bunker"},/turf/open/floor/plasteel/floorgrime,/area/ruin/unpowered) +"bq" = (/obj/machinery/processor{name = "processor"},/turf/open/floor/plasteel,/area/ruin/unpowered) +"br" = (/obj/structure/table,/obj/item/weapon/storage/box/matches,/turf/open/floor/plasteel,/area/ruin/unpowered) +"bs" = (/obj/structure/table,/obj/machinery/reagentgrinder,/turf/open/floor/plasteel/floorgrime,/area/ruin/unpowered) +"bt" = (/obj/structure/table,/obj/machinery/recharger,/turf/open/floor/plasteel/floorgrime,/area/ruin/unpowered) +"bu" = (/obj/machinery/light{dir = 1},/obj/machinery/hydroponics/constructable,/turf/open/floor/light,/area/ruin/unpowered) +"bv" = (/obj/machinery/hydroponics/constructable,/turf/open/floor/light,/area/ruin/unpowered) +"bw" = (/obj/machinery/blackbox_recorder,/turf/open/floor/plasteel,/area/ruin/unpowered) +"bx" = (/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/power/port_gen/pacman,/turf/open/floor/plasteel,/area/ruin/unpowered) +"by" = (/obj/machinery/power/smes/magical{desc = "A high-capacity superconducting magnetic energy storage (SMES) unit."; name = "power storage unit"},/obj/structure/cable,/obj/structure/cable{icon_state = "0-2"; pixel_y = 1; d2 = 2},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/open/floor/plasteel/floorgrime,/area/ruin/unpowered) +"bz" = (/obj/machinery/telecomms/relay/preset/telecomms,/turf/open/floor/plasteel,/area/ruin/unpowered) +"bA" = (/obj/machinery/light/small{dir = 1},/obj/structure/tank_dispenser/oxygen,/turf/open/floor/plasteel,/area/ruin/unpowered) +"bB" = (/obj/machinery/biogenerator,/turf/open/floor/plasteel,/area/ruin/unpowered) +"bC" = (/obj/machinery/light,/obj/machinery/hydroponics/constructable,/turf/open/floor/light,/area/ruin/unpowered) +"bD" = (/obj/machinery/autolathe,/turf/open/floor/plasteel,/area/ruin/unpowered) +"bE" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/power/terminal{icon_state = "term"; dir = 1},/turf/open/floor/plasteel,/area/ruin/unpowered) +"bF" = (/obj/structure/reagent_dispensers/fueltank,/turf/open/floor/plasteel/floorgrime,/area/ruin/unpowered) +"bG" = (/obj/structure/table,/obj/machinery/microwave,/turf/open/floor/plasteel/bar,/area/ruin/unpowered) +"bH" = (/turf/open/floor/plasteel/bar,/area/ruin/unpowered) +"bI" = (/obj/structure/table,/obj/item/weapon/storage/box/donkpockets,/turf/open/floor/plasteel/bar,/area/ruin/unpowered) +"bJ" = (/obj/structure/table,/obj/item/weapon/reagent_containers/food/snacks/beans,/turf/open/floor/plasteel/bar,/area/ruin/unpowered) +"bK" = (/obj/structure/chair{dir = 8},/turf/open/floor/plasteel/bar,/area/ruin/unpowered) +"bL" = (/obj/machinery/seed_extractor,/turf/open/floor/plasteel,/area/ruin/unpowered) +"bM" = (/obj/machinery/power/apc{dir = 8; name = "Bunker APC"; pixel_x = -24; pixel_y = 0},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/open/floor/plasteel/floorgrime,/area/ruin/unpowered) +"bN" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0; tag = ""},/turf/open/floor/plasteel,/area/ruin/unpowered) +"bO" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/turf/open/floor/plasteel,/area/ruin/unpowered) +"bP" = (/obj/structure/reagent_dispensers/watertank,/turf/open/floor/plasteel/floorgrime,/area/ruin/unpowered) +"bQ" = (/obj/structure/table,/obj/item/weapon/kitchen/knife,/turf/open/floor/plasteel/bar,/area/ruin/unpowered) +"bR" = (/obj/structure/table,/turf/open/floor/plasteel/bar,/area/ruin/unpowered) +"bS" = (/obj/structure/table,/obj/item/weapon/kitchen/fork,/turf/open/floor/plasteel/bar,/area/ruin/unpowered) +"bT" = (/obj/machinery/vending/hydronutrients,/turf/open/floor/plasteel,/area/ruin/unpowered) +"bU" = (/obj/machinery/space_heater,/turf/open/floor/plasteel/floorgrime,/area/ruin/unpowered) +"bV" = (/obj/structure/chair/office/dark{dir = 4},/turf/open/floor/plasteel,/area/ruin/unpowered) +"bW" = (/obj/structure/table/reinforced,/turf/open/floor/plasteel,/area/ruin/unpowered) +"bX" = (/obj/machinery/smartfridge,/turf/open/floor/plasteel/bar,/area/ruin/unpowered) +"bY" = (/obj/machinery/light/small,/turf/open/floor/plasteel/bar,/area/ruin/unpowered) +"bZ" = (/obj/machinery/vending/hydroseeds{slogan_delay = 700},/turf/open/floor/plasteel,/area/ruin/unpowered) +"ca" = (/obj/machinery/light/small{dir = 8},/turf/open/floor/plasteel/floorgrime,/area/ruin/unpowered) +"cb" = (/obj/structure/chair/office/dark,/turf/open/floor/plasteel/floorgrime,/area/ruin/unpowered) +"cc" = (/obj/structure/frame/computer,/turf/open/floor/plasteel,/area/ruin/unpowered) +"cd" = (/obj/structure/table/reinforced,/obj/machinery/computer/security/telescreen{dir = 1; name = "Bunker Entrance"; network = list("Bunker1"); pixel_x = 0; pixel_y = 2},/turf/open/floor/plasteel,/area/ruin/unpowered) +"ce" = (/obj/structure/table/reinforced,/obj/machinery/button/door{id = "bunker1"; name = "Inner Doors"; pixel_y = 6},/obj/machinery/button/door{id = "bunker2"; name = "Outer Doors"; pixel_y = -4},/turf/open/floor/plasteel/floorgrime,/area/ruin/unpowered) +"cf" = (/obj/machinery/door/poddoor{id = "bunker1"; name = "Bunker Door"; tag = "inner"},/turf/open/floor/plating,/area/ruin/unpowered) +"cg" = (/turf/open/floor/plating,/area/ruin/unpowered) +"ch" = (/obj/machinery/camera{network = list("Bunker1")},/turf/open/floor/plating,/area/ruin/unpowered) +"ci" = (/obj/machinery/light/small{dir = 4},/turf/open/floor/plating,/area/ruin/unpowered) +"cj" = (/obj/machinery/door/poddoor{id = "bunker2"; name = "Bunker Door"; tag = "outer"},/turf/open/floor/plating,/area/ruin/unpowered) +"ck" = (/turf/open/floor/plating/asteroid/airless,/area/ruin/unpowered) (1,1,1) = {" aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaababababababababababababababababababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa diff --git a/_maps/RandomRuins/SpaceRuins/derelict4.dmm b/_maps/RandomRuins/SpaceRuins/derelict4.dmm index 9607996d9a..82fe49f59b 100644 --- a/_maps/RandomRuins/SpaceRuins/derelict4.dmm +++ b/_maps/RandomRuins/SpaceRuins/derelict4.dmm @@ -1,1782 +1,63 @@ -//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE -"a" = ( -/turf/open/space, -/area/space) -"b" = ( -/turf/closed/mineral, -/area/ruin/unpowered) -"c" = ( -/turf/open/floor/plating/asteroid/airless, -/area/ruin/unpowered) -"d" = ( -/turf/closed/mineral/random/high_chance, -/area/ruin/unpowered) -"e" = ( -/turf/closed/wall/mineral/titanium, -/area/ruin/unpowered) -"f" = ( -/obj/machinery/door/airlock/titanium, -/turf/open/floor/plating/airless, -/area/ruin/unpowered) -"g" = ( -/turf/open/floor/plating/airless, -/area/ruin/unpowered) -"h" = ( -/turf/open/floor/plasteel/airless/shuttle, -/area/ruin/unpowered) -"i" = ( -/obj/structure/chair, -/obj/structure/window/reinforced{ - tag = "icon-rwindow (WEST)"; - icon_state = "rwindow"; - dir = 8 - }, -/turf/open/floor/plasteel/airless/shuttle, -/area/ruin/unpowered) -"j" = ( -/obj/structure/chair, -/turf/open/floor/plasteel/airless/shuttle, -/area/ruin/unpowered) -"k" = ( -/obj/effect/spawner/lootdrop/crate_spawner, -/turf/open/floor/plasteel/airless/shuttle, -/area/ruin/unpowered) -"l" = ( -/obj/structure/shuttle/engine/propulsion{ - tag = "icon-propulsion (WEST)"; - icon_state = "propulsion"; - dir = 8 - }, -/turf/open/floor/plating/airless, -/area/ruin/unpowered) -"m" = ( -/obj/item/weapon/shard, -/turf/open/floor/plating/airless, -/area/ruin/unpowered) -"n" = ( -/obj/structure/chair{ - tag = "icon-chair (WEST)"; - icon_state = "chair"; - dir = 8 - }, -/turf/open/floor/plating/airless, -/area/ruin/unpowered) -"o" = ( -/obj/structure/grille, -/turf/open/floor/plating/airless, -/area/ruin/unpowered) -"p" = ( -/obj/structure/table, -/turf/open/floor/plasteel/airless/shuttle, -/area/ruin/unpowered) -"q" = ( -/obj/item/weapon/shard, -/obj/structure/chair{ - tag = "icon-chair (WEST)"; - icon_state = "chair"; - dir = 8 - }, -/turf/open/floor/plasteel/airless/shuttle, -/area/ruin/unpowered) -"r" = ( -/obj/structure/chair{ - dir = 1 - }, -/obj/structure/window/reinforced{ - tag = "icon-rwindow (WEST)"; - icon_state = "rwindow"; - dir = 8 - }, -/turf/open/floor/plasteel/airless/shuttle, -/area/ruin/unpowered) -"s" = ( -/obj/structure/chair{ - dir = 1 - }, -/turf/open/floor/plating/airless, -/area/ruin/unpowered) -"t" = ( -/obj/structure/girder, -/turf/open/floor/plating/airless, -/area/ruin/unpowered) +"a" = (/turf/open/space,/area/space) +"b" = (/turf/closed/mineral,/area/ruin/unpowered) +"c" = (/turf/open/floor/plating/asteroid/airless,/area/ruin/unpowered) +"d" = (/turf/closed/mineral/random/high_chance,/area/ruin/unpowered) +"e" = (/turf/closed/wall/shuttle/smooth,/area/ruin/unpowered) +"f" = (/obj/machinery/door/airlock/shuttle,/turf/open/floor/plating/airless,/area/ruin/unpowered) +"g" = (/turf/open/floor/plating/airless,/area/ruin/unpowered) +"h" = (/turf/open/floor/plasteel/airless{icon_plating = "plating";icon_regular_floor = "shuttlefloor";icon_state = "shuttlefloor"},/area/ruin/unpowered) +"i" = (/obj/structure/chair,/obj/structure/window/reinforced{tag = "icon-rwindow (WEST)";icon_state = "rwindow";dir = 8},/turf/open/floor/plasteel/airless{icon_plating = "plating";icon_regular_floor = "shuttlefloor";icon_state = "shuttlefloor"},/area/ruin/unpowered) +"j" = (/obj/structure/chair,/turf/open/floor/plasteel/airless{icon_plating = "plating";icon_regular_floor = "shuttlefloor";icon_state = "shuttlefloor"},/area/ruin/unpowered) +"k" = (/obj/effect/spawner/lootdrop/crate_spawner,/turf/open/floor/plasteel/airless{icon_plating = "plating";icon_regular_floor = "shuttlefloor";icon_state = "shuttlefloor"},/area/ruin/unpowered) +"l" = (/obj/structure/shuttle/engine/propulsion{tag = "icon-propulsion (WEST)";icon_state = "propulsion";dir = 8},/turf/open/floor/plating/airless,/area/ruin/unpowered) +"m" = (/obj/item/weapon/shard,/turf/open/floor/plating/airless,/area/ruin/unpowered) +"n" = (/obj/structure/chair{tag = "icon-chair (WEST)";icon_state = "chair";dir = 8},/turf/open/floor/plating/airless,/area/ruin/unpowered) +"o" = (/obj/structure/grille,/turf/open/floor/plating/airless,/area/ruin/unpowered) +"p" = (/obj/structure/table,/turf/open/floor/plasteel/airless{icon_plating = "plating";icon_regular_floor = "shuttlefloor";icon_state = "shuttlefloor"},/area/ruin/unpowered) +"q" = (/obj/item/weapon/shard,/obj/structure/chair{tag = "icon-chair (WEST)";icon_state = "chair";dir = 8},/turf/open/floor/plasteel/airless{icon_plating = "plating";icon_regular_floor = "shuttlefloor";icon_state = "shuttlefloor"},/area/ruin/unpowered) +"r" = (/obj/structure/chair{dir = 1},/obj/structure/window/reinforced{tag = "icon-rwindow (WEST)";icon_state = "rwindow";dir = 8},/turf/open/floor/plasteel/airless{icon_plating = "plating";icon_regular_floor = "shuttlefloor";icon_state = "shuttlefloor"},/area/ruin/unpowered) +"s" = (/obj/structure/chair{dir = 1},/turf/open/floor/plating/airless,/area/ruin/unpowered) +"t" = (/obj/structure/girder,/turf/open/floor/plating/airless,/area/ruin/unpowered) (1,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(2,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(3,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(4,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(5,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -b -a -a -a -a -a -a -a -a -a -"} -(6,1,1) = {" -a -a -a -a -a -a -a -c -c -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -b -b -a -a -a -a -a -a -a -a -a -"} -(7,1,1) = {" -a -a -a -a -a -a -b -c -c -c -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -a -a -a -b -b -a -a -a -a -a -a -a -a -a -a -"} -(8,1,1) = {" -a -a -a -a -a -b -b -c -c -c -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(9,1,1) = {" -a -a -a -a -a -b -b -b -b -b -a -a -a -a -a -a -c -c -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(10,1,1) = {" -a -a -a -a -a -b -b -b -b -b -a -a -a -a -a -a -c -c -c -c -c -c -c -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(11,1,1) = {" -a -a -a -a -a -a -a -b -b -a -a -a -a -a -a -a -c -c -c -c -c -c -c -b -b -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(12,1,1) = {" -a -a -a -a -a -a -a -b -b -a -a -a -a -a -b -c -c -c -c -c -c -c -c -c -b -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(13,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -b -b -c -c -c -c -c -c -c -b -b -b -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(14,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -b -b -b -b -b -b -c -c -b -b -b -b -b -b -b -a -a -a -a -a -a -a -a -a -a -a -a -"} -(15,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -b -b -b -b -d -d -b -b -b -b -b -b -b -b -d -a -a -a -a -a -a -a -b -b -b -a -a -"} -(16,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -d -d -b -b -d -d -b -b -b -d -b -b -b -b -b -a -a -a -a -a -a -a -a -b -b -b -a -"} -(17,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -d -d -b -b -b -b -b -b -b -b -b -b -b -b -b -b -a -a -a -a -a -a -b -b -b -b -b -"} -(18,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -d -d -d -b -b -b -g -g -o -b -b -c -b -b -d -d -a -a -a -a -a -d -b -b -b -c -c -"} -(19,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -d -d -b -b -c -e -g -m -p -g -e -c -b -b -d -d -a -a -a -a -d -d -b -b -d -c -c -"} -(20,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -d -b -b -b -c -e -g -n -q -h -e -c -b -b -d -d -a -a -a -d -b -b -b -c -c -c -a -"} -(21,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -b -b -b -b -c -e -g -h -h -h -e -c -c -b -b -b -a -a -a -b -b -b -b -c -c -c -a -"} -(22,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -b -b -b -c -c -e -h -h -h -h -e -c -c -c -c -b -a -a -d -b -b -c -c -c -c -c -a -"} -(23,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -b -c -c -f -h -h -h -h -f -c -c -c -c -b -a -b -b -b -b -c -c -c -a -a -a -"} -(24,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -b -b -c -e -i -h -h -r -e -c -c -c -c -a -a -b -b -b -c -c -c -a -a -a -a -"} -(25,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -b -a -a -b -b -b -c -e -j -h -h -s -t -c -c -c -c -a -a -b -b -c -a -a -a -a -a -a -a -"} -(26,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -b -b -b -d -c -e -k -h -g -g -g -c -c -a -a -a -a -a -b -c -a -a -a -a -a -a -a -"} -(27,1,1) = {" -a -a -a -a -a -a -a -a -b -b -a -a -a -b -b -b -d -c -e -e -e -e -e -e -c -c -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(28,1,1) = {" -a -a -a -a -a -a -a -b -b -b -a -a -a -b -b -b -d -c -e -l -l -l -l -e -c -c -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(29,1,1) = {" -a -a -a -a -a -a -a -a -b -b -a -a -a -b -b -b -b -b -c -c -c -c -c -c -c -c -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(30,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -b -b -c -c -c -c -c -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(31,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -b -c -c -c -c -c -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(32,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(33,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(34,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -c -c -c -a -a -a -a -a -a -"} -(35,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -c -c -b -b -a -a -a -a -a -a -"} -(36,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -c -c -d -b -a -a -a -a -a -a -"} -(37,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -a -b -d -b -b -a -a -a -a -a -a -"} -(38,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -b -a -a -a -a -a -a -a -a -"} -(39,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(40,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaabbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaabbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaacccbbbbaaaaaaaaaaaaaaabaaaaaaaaaaaa +aaaaacccbbbbaaaaaaaaaaaaaabbbaaaaaaaaaaa +aaaaaaccbbaaaaaaaaaaaaaaaabbbaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaabaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaabbdddddbbaaabbbbaaaaaaaaaaa +aaaaaaaaaaabbbbddddbbbbbbbbbbbaaaaaaaaaa +aaaaaaaaaaacbbbbbdbbbbbbbbbbbbbaaaaaaaaa +aaaaaaaaccccbbbbbbbbbccbbdddbbbaaaaaaaaa +aaaaaaaacccccbddbbccccccccccbccaaaaaaaaa +aaaaaaaaaccccbddbbeeeefeeeeecccaaaaaaaaa +aaaaaaaaacccccbbbgggghhijkelcccaaaaaaaaa +aaaaaaaaacccccbbbgmnhhhhhhelcccaaaaaaaaa +aaaaaaaaaccccbbbbopqhhhhhgelcccaaaaaaaaa +aaaaaaaaaccccbbdbbghhhhrsgelcaaaaaaaaaaa +aaaaaaaaaabccbbbbbeeeefetgeecaaaaaaaaaaa +aaaaaabaaabbbbbbbccccccccccccaaaaaaaaaaa +aaaaaaaaaabbbbbbbbbbcccccccccaaaaaaaaaaa +aaabaaaaaaaabbbbbbbbbccccaaaaaaaaaaaaaaa +aaaaaaaaaaaaabdbbdddbccccaaaaaaaaaaaaaaa +aaaaabbaaaaaaaaabdddbbbaaaaaaaaaaaaabaaa +aaaabbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaabbaaaaaaaaaaaaaaaabbbaaaaaaaaaccbbaa +aaaaaaaaaaaaaaaaaaaaadbbbbaaaaaaacccdbaa +aaaaaaaaaaaaaaaaaaadbbbbccaaaaaaacbdbaaa +aaaaaaaaaaaaaaaaaadbbbbcaaaaaaaaacbbbaaa +aaaaaaaaaaaaaaaaaddbbcccaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaababbbbbcccaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaabbbbbccccaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaabbbbdcccaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaabbcccccaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaabccaaaaaaaaaaaaaaaaaaaaa "} diff --git a/_maps/RandomRuins/SpaceRuins/derelict5.dmm b/_maps/RandomRuins/SpaceRuins/derelict5.dmm index c64c449536..00d3158f92 100644 --- a/_maps/RandomRuins/SpaceRuins/derelict5.dmm +++ b/_maps/RandomRuins/SpaceRuins/derelict5.dmm @@ -1,6 +1,6 @@ "a" = (/turf/open/space,/area/space) -"b" = (/turf/closed/mineral,/area/ruin/unpowered/no_grav) -"c" = (/turf/open/floor/plating/asteroid/airless,/area/ruin/unpowered/no_grav) +"b" = (/turf/closed/mineral,/area/space) +"c" = (/turf/open/floor/plating/asteroid/airless,/area/space) "d" = (/turf/closed/mineral,/area/ruin/unpowered) "e" = (/turf/closed/wall,/area/ruin/unpowered) "f" = (/turf/closed/wall/rust,/area/ruin/unpowered) diff --git a/_maps/RandomRuins/SpaceRuins/derelict6.dmm b/_maps/RandomRuins/SpaceRuins/derelict6.dmm index 7942c5c92e..c18faa00cb 100644 --- a/_maps/RandomRuins/SpaceRuins/derelict6.dmm +++ b/_maps/RandomRuins/SpaceRuins/derelict6.dmm @@ -44,7 +44,9 @@ }, /area/ruin/unpowered) "ag" = ( -/turf/open/floor/plasteel/airless, +/turf/open/floor/plasteel{ + initial_gas_mix = "TEMP=2.7" + }, /area/ruin/unpowered) "ah" = ( /turf/open/floor/plating/airless{ @@ -91,7 +93,9 @@ icon_state = "tube-broken"; status = 2 }, -/turf/open/floor/plasteel/airless, +/turf/open/floor/plasteel{ + initial_gas_mix = "TEMP=2.7" + }, /area/ruin/unpowered) "ao" = ( /obj/structure/closet/emcloset, @@ -127,7 +131,9 @@ /area/ruin/unpowered) "at" = ( /obj/item/stack/rods, -/turf/open/floor/plasteel/airless, +/turf/open/floor/plasteel{ + initial_gas_mix = "TEMP=2.7" + }, /area/ruin/unpowered) "au" = ( /obj/item/stack/sheet/metal, @@ -138,15 +144,21 @@ /area/ruin/unpowered) "av" = ( /obj/effect/decal/remains/human, -/turf/open/floor/plasteel/airless, +/turf/open/floor/plasteel{ + initial_gas_mix = "TEMP=2.7" + }, /area/ruin/unpowered) "aw" = ( /obj/item/stack/sheet/metal, -/turf/open/floor/plasteel/airless, +/turf/open/floor/plasteel{ + initial_gas_mix = "TEMP=2.7" + }, /area/ruin/unpowered) "ax" = ( -/mob/living/simple_animal/hostile/retaliate/ghost, -/turf/open/floor/plasteel/airless, +/mob/living/simple_animal/retaliate/ghost, +/turf/open/floor/plasteel{ + initial_gas_mix = "TEMP=2.7" + }, /area/ruin/unpowered) "ay" = ( /turf/open/floor/plating/airless, @@ -186,7 +198,9 @@ icon_state = "tube-broken"; status = 2 }, -/turf/open/floor/plasteel/airless, +/turf/open/floor/plasteel{ + initial_gas_mix = "TEMP=2.7" + }, /area/ruin/unpowered) "aD" = ( /turf/open/space, @@ -203,13 +217,17 @@ /area/ruin/unpowered) "aF" = ( /obj/machinery/door/airlock/glass, -/turf/open/floor/plasteel/airless/bar, +/turf/open/floor/plasteel/bar{ + initial_gas_mix = "TEMP=2.7" + }, /area/ruin/unpowered) "aG" = ( /obj/structure/door_assembly/door_assembly_glass{ name = "broken airlock" }, -/turf/open/floor/plasteel/airless/bar, +/turf/open/floor/plasteel/bar{ + initial_gas_mix = "TEMP=2.7" + }, /area/ruin/unpowered) "aH" = ( /turf/open/floor/plating/airless, @@ -217,12 +235,16 @@ "aI" = ( /obj/structure/table, /obj/machinery/microwave, -/turf/open/floor/plasteel/airless/cafeteria, +/turf/open/floor/plasteel/cafeteria{ + initial_gas_mix = "TEMP=2.7" + }, /area/ruin/unpowered) "aJ" = ( /obj/structure/table, /obj/item/weapon/storage/box/drinkingglasses, -/turf/open/floor/plasteel/airless/cafeteria, +/turf/open/floor/plasteel/cafeteria{ + initial_gas_mix = "TEMP=2.7" + }, /area/ruin/unpowered) "aK" = ( /obj/structure/closet/secure_closet/freezer/fridge, @@ -231,22 +253,32 @@ icon_state = "tube-broken"; status = 2 }, -/turf/open/floor/plasteel/airless/cafeteria, +/turf/open/floor/plasteel/cafeteria{ + initial_gas_mix = "TEMP=2.7" + }, /area/ruin/unpowered) "aL" = ( /obj/structure/closet/secure_closet/freezer/kitchen, -/turf/open/floor/plasteel/airless/cafeteria, +/turf/open/floor/plasteel/cafeteria{ + initial_gas_mix = "TEMP=2.7" + }, /area/ruin/unpowered) "aM" = ( -/turf/open/floor/plasteel/airless/bar, +/turf/open/floor/plasteel/bar{ + initial_gas_mix = "TEMP=2.7" + }, /area/ruin/unpowered) "aN" = ( /obj/item/trash/plate, -/turf/open/floor/plasteel/airless/bar, +/turf/open/floor/plasteel/bar{ + initial_gas_mix = "TEMP=2.7" + }, /area/ruin/unpowered) "aO" = ( /obj/item/chair, -/turf/open/floor/plasteel/airless/bar, +/turf/open/floor/plasteel/bar{ + initial_gas_mix = "TEMP=2.7" + }, /area/ruin/unpowered) "aP" = ( /obj/machinery/light{ @@ -264,15 +296,21 @@ /turf/open/floor/plating/airless, /area/ruin/unpowered) "aR" = ( -/turf/open/floor/plasteel/airless/cafeteria, +/turf/open/floor/plasteel/cafeteria{ + initial_gas_mix = "TEMP=2.7" + }, /area/ruin/unpowered) "aS" = ( /obj/structure/table_frame, -/turf/open/floor/plasteel/airless/cafeteria, +/turf/open/floor/plasteel/cafeteria{ + initial_gas_mix = "TEMP=2.7" + }, /area/ruin/unpowered) "aT" = ( /obj/item/weapon/kitchen/fork, -/turf/open/floor/plasteel/airless/bar, +/turf/open/floor/plasteel/bar{ + initial_gas_mix = "TEMP=2.7" + }, /area/ruin/unpowered) "aU" = ( /obj/structure/table/wood, @@ -292,11 +330,15 @@ /area/ruin/unpowered) "aW" = ( /obj/structure/table, -/turf/open/floor/plasteel/airless/cafeteria, +/turf/open/floor/plasteel/cafeteria{ + initial_gas_mix = "TEMP=2.7" + }, /area/ruin/unpowered) "aX" = ( /obj/item/chair/stool/bar, -/turf/open/floor/plasteel/airless/bar, +/turf/open/floor/plasteel/bar{ + initial_gas_mix = "TEMP=2.7" + }, /area/ruin/unpowered) "aY" = ( /turf/open/floor/plasteel/bar{ @@ -317,21 +359,29 @@ /turf/open/space, /area/space) "ba" = ( -/mob/living/simple_animal/hostile/retaliate/ghost, -/turf/open/floor/plasteel/airless/cafeteria, +/mob/living/simple_animal/retaliate/ghost, +/turf/open/floor/plasteel/cafeteria{ + initial_gas_mix = "TEMP=2.7" + }, /area/ruin/unpowered) "bb" = ( /obj/item/weapon/reagent_containers/food/snacks/donkpocket, -/turf/open/floor/plasteel/airless/cafeteria, +/turf/open/floor/plasteel/cafeteria{ + initial_gas_mix = "TEMP=2.7" + }, /area/ruin/unpowered) "bc" = ( /obj/structure/table, /obj/item/weapon/shard, -/turf/open/floor/plasteel/airless/cafeteria, +/turf/open/floor/plasteel/cafeteria{ + initial_gas_mix = "TEMP=2.7" + }, /area/ruin/unpowered) "bd" = ( /obj/structure/chair/stool/bar, -/turf/open/floor/plasteel/airless/bar, +/turf/open/floor/plasteel/bar{ + initial_gas_mix = "TEMP=2.7" + }, /area/ruin/unpowered) "be" = ( /turf/open/floor/plasteel/bar{ @@ -361,7 +411,9 @@ status = 2 }, /obj/structure/table_frame, -/turf/open/floor/plasteel/airless/cafeteria, +/turf/open/floor/plasteel/cafeteria{ + initial_gas_mix = "TEMP=2.7" + }, /area/ruin/unpowered) "bi" = ( /obj/item/stack/sheet/metal, @@ -374,7 +426,9 @@ "bj" = ( /obj/item/trash/plate, /obj/effect/decal/remains/human, -/turf/open/floor/plasteel/airless/cafeteria, +/turf/open/floor/plasteel/cafeteria{ + initial_gas_mix = "TEMP=2.7" + }, /area/ruin/unpowered) "bk" = ( /obj/structure/table_frame/wood, @@ -429,44 +483,104 @@ icon_state = "platingdmg1" }, /area/ruin/unpowered) -"bs" = ( +"bI" = ( /obj/structure/lattice, /obj/structure/fluff/broken_flooring{ - tag = "icon-singular (NORTH)"; - icon_state = "singular"; - dir = 1 - }, -/turf/open/space, -/area/space) -"bt" = ( -/obj/structure/fluff/broken_flooring{ - tag = "icon-side (NORTH)"; - icon_state = "side"; - dir = 1 - }, -/obj/structure/lattice, -/turf/open/space, -/area/ruin/unpowered) -"bu" = ( -/obj/structure/fluff/broken_flooring, -/turf/open/space, -/area/ruin/unpowered) -"bv" = ( -/obj/structure/fluff/broken_flooring{ - icon_state = "pile" - }, -/turf/open/space, -/area/space) -"bw" = ( -/obj/structure/lattice, -/obj/structure/fluff/broken_flooring{ - tag = "icon-plating (NORTH)"; + tag = "icon-plating (WEST)"; name = "broken plating"; icon_state = "plating"; + dir = 8 + }, +/turf/open/space, +/area/ruin/unpowered) +"bH" = ( +/obj/structure/fluff/broken_flooring{ + icon_state = "plating"; + name = "broken plating" + }, +/obj/structure/lattice, +/turf/open/space, +/area/ruin/unpowered) +"bG" = ( +/obj/structure/fluff/broken_flooring{ + tag = "icon-singular (EAST)"; + icon_state = "singular"; + dir = 4 + }, +/turf/open/space, +/area/space) +"bF" = ( +/obj/structure/lattice, +/obj/structure/fluff/broken_flooring{ + tag = "icon-side (EAST)"; + icon_state = "side"; + dir = 4 + }, +/turf/open/space, +/area/ruin/unpowered) +"bE" = ( +/obj/structure/lattice, +/obj/structure/fluff/broken_flooring{ + tag = "icon-corner (WEST)"; + icon_state = "corner"; + dir = 8 + }, +/turf/open/space, +/area/ruin/unpowered) +"bD" = ( +/obj/structure/fluff/broken_flooring{ + tag = "icon-singular (EAST)"; + icon_state = "singular"; + dir = 4 + }, +/turf/open/floor/plasteel{ + initial_gas_mix = "TEMP=2.7" + }, +/area/ruin/unpowered) +"bC" = ( +/obj/structure/lattice, +/obj/structure/fluff/broken_flooring{ + tag = "icon-corner (NORTH)"; + icon_state = "corner"; dir = 1 }, /turf/open/space, /area/ruin/unpowered) +"bB" = ( +/obj/structure/fluff/broken_flooring{ + tag = "icon-singular (EAST)"; + icon_state = "singular"; + dir = 4 + }, +/obj/structure/lattice, +/turf/open/space, +/area/space) +"bA" = ( +/obj/structure/fluff/broken_flooring{ + icon_state = "singular" + }, +/turf/open/space, +/area/space) +"bz" = ( +/obj/structure/lattice, +/obj/structure/fluff/broken_flooring{ + tag = "icon-plating (EAST)"; + name = "broken plating"; + icon_state = "plating"; + dir = 4 + }, +/turf/open/space, +/area/ruin/unpowered) +"by" = ( +/obj/structure/fluff/broken_flooring{ + tag = "icon-pile (EAST)"; + icon_state = "pile"; + dir = 4 + }, +/turf/open/floor/plasteel{ + initial_gas_mix = "TEMP=2.7" + }, +/area/ruin/unpowered) "bx" = ( /obj/structure/fluff/broken_flooring{ tag = "icon-plating (EAST)"; @@ -477,100 +591,44 @@ /obj/structure/lattice, /turf/open/space, /area/ruin/unpowered) -"by" = ( -/obj/structure/fluff/broken_flooring{ - tag = "icon-pile (EAST)"; - icon_state = "pile"; - dir = 4 - }, -/turf/open/floor/plasteel/airless, -/area/ruin/unpowered) -"bz" = ( +"bw" = ( /obj/structure/lattice, /obj/structure/fluff/broken_flooring{ - tag = "icon-plating (EAST)"; + tag = "icon-plating (NORTH)"; name = "broken plating"; icon_state = "plating"; - dir = 4 - }, -/turf/open/space, -/area/ruin/unpowered) -"bA" = ( -/obj/structure/fluff/broken_flooring{ - icon_state = "singular" - }, -/turf/open/space, -/area/space) -"bB" = ( -/obj/structure/fluff/broken_flooring{ - tag = "icon-singular (EAST)"; - icon_state = "singular"; - dir = 4 - }, -/obj/structure/lattice, -/turf/open/space, -/area/space) -"bC" = ( -/obj/structure/lattice, -/obj/structure/fluff/broken_flooring{ - tag = "icon-corner (NORTH)"; - icon_state = "corner"; dir = 1 }, /turf/open/space, /area/ruin/unpowered) -"bD" = ( +"bv" = ( /obj/structure/fluff/broken_flooring{ - tag = "icon-singular (EAST)"; - icon_state = "singular"; - dir = 4 - }, -/turf/open/floor/plasteel/airless, -/area/ruin/unpowered) -"bE" = ( -/obj/structure/lattice, -/obj/structure/fluff/broken_flooring{ - tag = "icon-corner (WEST)"; - icon_state = "corner"; - dir = 8 - }, -/turf/open/space, -/area/ruin/unpowered) -"bF" = ( -/obj/structure/lattice, -/obj/structure/fluff/broken_flooring{ - tag = "icon-side (EAST)"; - icon_state = "side"; - dir = 4 - }, -/turf/open/space, -/area/ruin/unpowered) -"bG" = ( -/obj/structure/fluff/broken_flooring{ - tag = "icon-singular (EAST)"; - icon_state = "singular"; - dir = 4 + icon_state = "pile" }, /turf/open/space, /area/space) -"bH" = ( +"bu" = ( +/obj/structure/fluff/broken_flooring, +/turf/open/space, +/area/ruin/unpowered) +"bt" = ( /obj/structure/fluff/broken_flooring{ - icon_state = "plating"; - name = "broken plating" + tag = "icon-side (NORTH)"; + icon_state = "side"; + dir = 1 }, /obj/structure/lattice, /turf/open/space, /area/ruin/unpowered) -"bI" = ( +"bs" = ( /obj/structure/lattice, /obj/structure/fluff/broken_flooring{ - tag = "icon-plating (WEST)"; - name = "broken plating"; - icon_state = "plating"; - dir = 8 + tag = "icon-singular (NORTH)"; + icon_state = "singular"; + dir = 1 }, /turf/open/space, -/area/ruin/unpowered) +/area/space) (1,1,1) = {" aa diff --git a/_maps/RandomRuins/SpaceRuins/dragoontomb.dmm b/_maps/RandomRuins/SpaceRuins/dragoontomb.dmm deleted file mode 100644 index 1ad3a8ac1a..0000000000 --- a/_maps/RandomRuins/SpaceRuins/dragoontomb.dmm +++ /dev/null @@ -1,80 +0,0 @@ -"a" = (/turf/open/space,/area/space) -"b" = (/turf/open/floor/plating/asteroid/airless,/area/ruin/unpowered/no_grav) -"c" = (/turf/closed/mineral/volcanic/lava_land_surface,/area/ruin/unpowered/no_grav) -"d" = (/mob/living/simple_animal/hostile/flan,/turf/open/floor/plating/asteroid/airless,/area/ruin/unpowered/no_grav) -"e" = (/mob/living/simple_animal/hostile/flan/fire,/turf/open/floor/plating/asteroid/airless,/area/ruin/unpowered/no_grav) -"f" = (/obj/structure/lattice,/turf/open/space,/area/space) -"g" = (/obj/item/weapon/bikehorn,/turf/open/floor/plating/asteroid/airless,/area/ruin/unpowered/no_grav) -"h" = (/turf/closed/wall/mineral/iron,/area/ruin/unpowered/no_grav) -"i" = (/obj/structure/rack,/obj/item/weapon/kitchen/knife/combat/survival,/turf/open/floor/plating/astplate,/area/ruin/unpowered/no_grav) -"j" = (/turf/open/floor/plating/astplate,/area/ruin/unpowered/no_grav) -"k" = (/obj/structure/rack,/obj/item/weapon/twohanded/spear,/turf/open/floor/plating/astplate,/area/ruin/unpowered/no_grav) -"l" = (/obj/structure/rack,/obj/item/weapon/relic,/turf/open/floor/plating/astplate,/area/ruin/unpowered/no_grav) -"m" = (/obj/structure/mineral_door/wood,/turf/open/floor/plating/astplate,/area/ruin/unpowered/no_grav) -"n" = (/obj/structure/rack,/obj/item/weapon/dice/d4,/turf/open/floor/plating/astplate,/area/ruin/unpowered/no_grav) -"o" = (/obj/structure/rack,/obj/item/weapon/dice/d8,/turf/open/floor/plating/astplate,/area/ruin/unpowered/no_grav) -"p" = (/obj/structure/rack,/obj/item/weapon/dice/d12,/turf/open/floor/plating/astplate,/area/ruin/unpowered/no_grav) -"q" = (/obj/structure/rack,/obj/item/weapon/dice/d00,/turf/open/floor/plating/astplate,/area/ruin/unpowered/no_grav) -"r" = (/obj/structure/rack,/obj/item/weapon/dice/d20,/turf/open/floor/plating/astplate,/area/ruin/unpowered/no_grav) -"s" = (/obj/structure/statue/silver/sec,/turf/open/floor/mineral/silver,/area/ruin/unpowered/no_grav) -"t" = (/obj/structure/statue/silver/md,/turf/open/floor/mineral/silver,/area/ruin/unpowered/no_grav) -"u" = (/obj/structure/table/wood/fancy,/obj/item/weapon/twohanded/skybulge,/turf/open/floor/mineral/silver,/area/ruin/unpowered/no_grav) -"v" = (/turf/open/floor/mineral/silver,/area/ruin/unpowered/no_grav) -"w" = (/obj/structure/mineral_door/silver,/turf/open/floor/mineral/silver,/area/ruin/unpowered/no_grav) -"x" = (/obj/structure/closet/coffin,/obj/item/stack/sheet/bone,/turf/open/floor/mineral/silver,/area/ruin/unpowered/no_grav) -"y" = (/mob/living/simple_animal/hostile/flan/fire,/turf/open/floor/plating/astplate,/area/ruin/unpowered/no_grav) -"z" = (/obj/structure/statue/silver/secborg,/turf/open/floor/mineral/silver,/area/ruin/unpowered/no_grav) -"A" = (/obj/structure/statue/silver/medborg,/turf/open/floor/mineral/silver,/area/ruin/unpowered/no_grav) -"B" = (/obj/structure/table/wood/fancy,/obj/item/weapon/reagent_containers/food/snacks/donkpocket,/turf/open/floor/mineral/silver,/area/ruin/unpowered/no_grav) -"C" = (/turf/open/floor/plating/astplate/warning{tag = "icon-astplate_warn (WEST)"; icon_state = "astplate_warn"; dir = 8},/area/ruin/unpowered/no_grav) -"D" = (/turf/open/floor/plating/astplate/warning{tag = "icon-astplate_warn (EAST)"; icon_state = "astplate_warn"; dir = 4},/area/ruin/unpowered/no_grav) -"E" = (/obj/item/weapon/dice/d10,/turf/open/floor/plating/asteroid/airless,/area/ruin/unpowered/no_grav) -"F" = (/obj/structure/grille,/turf/open/space,/area/ruin/unpowered/no_grav) -"G" = (/obj/item/weapon/dice/d100,/turf/open/floor/plating/asteroid/airless,/area/ruin/unpowered/no_grav) -"H" = (/turf/open/floor/plating/astplate/warning{tag = "icon-astplate_warn (SOUTHWEST)"; icon_state = "astplate_warn"; dir = 10},/area/ruin/unpowered/no_grav) -"I" = (/turf/open/floor/plating/astplate/warning{tag = "icon-astplate_warn (SOUTHEAST)"; icon_state = "astplate_warn"; dir = 6},/area/ruin/unpowered/no_grav) -"J" = (/obj/item/weapon/crowbar/red,/turf/open/floor/plating/asteroid/airless,/area/ruin/unpowered/no_grav) -"K" = (/obj/item/weapon/dice/d1,/turf/open/floor/plating/asteroid/airless,/area/ruin/unpowered/no_grav) - -(1,1,1) = {" -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaabccaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaabccccccccaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaabbcccccccccccbbaaaaaaaaaaaaaaaaaaa -aaaaabbbcccccccccccbbbbaaaaaaaaaaaaaaaaa -aaabbbbcccccccccccccbbbbbaaaaaaaaaaaaaaa -aabbbbbccccbbbccccccbbbbbbbbbaaaaaaaaaaa -aabbccbbccbdbbbcccccccccbbbbbbaaaaaaaaaa -aaccccbbccbbbccccbccccccccccccccaaaaaaaa -aaccccbbccbbebccbbcaccaccccaaccccaaaaaaa -aacccccbccccbbbbdccafaaafafffcccccaaaaaa -aaccccbbcccccbgbbcahhhhhhhhhacccccaaaaaa -aaaccccdbbbbcccbbcahijkhljkhafaccccaaaaa -aaacccccccbbbccbccahjjjhjjjhafaafacaaaaa -aaaccccccccbbccccffhhmhhhmhhhhhhhhccaaaa -aaacccccccccbcccccahnjopqjrhshthuhhccaaa -aaccccccbbccbbccccahjjjjjjvwvvvvvxhccaaa -aaccccbbbbcccbbcccfhjjjyjjjhzhAhBhhaccaa -aacccbbbbbbccbbcccahhhCDhhhhhhhhhhffccaa -aaccccccbbEccbbbccafaFCDFfaafaafaaaccbba -aacccccccccccbbbbbccfFCDFcccccafaacccbba -aabcccbcccbGccccbbbcccHIccbbbccfccccbbaa -aabcccbbcccccccbbcbbccbbbbbcccccccccbbaa -aabbcccbbbbbbccbcccbbJbbbbccbbcbbccbbaaa -aaabccccbdccbbbccbbbbbbdcccbbdbbbbcbbaaa -aaabcccbbccccbbbbbbbbccccbbbccccbbbbbaaa -aaacccbbccccccccbbbcccbccccccbbcccbbbaaa -aaaccccccccbbbbbbdbcccbbbccccccccbbcbbaa -aaaccbbcccbbbcccbbbbccbbKccbbbbccbcccbba -aaaacbcccbbcccccbcbbbcccccccccbbbbccccaa -aaaacbccbbcccccbbcccbbbbbbccccbbccccccaa -aaaacbbccccccccbbcccccccccccccbcccccccaa -aaaaccccccbbcccbbccccccccbbbbbbccccccaaa -aaaccccbbbbbcccbbbcccccccccdccccccccaaaa -aaaccccccccccbbbbbbccccccccbcccccccaaaaa -aaaccccccccccbbbbbbbbcccccbbcbbccccaaaaa -aaaaaccacccbbaaaaaaabcaaccbbabaaccaaaaaa -aaaaaaaaacabaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -"} diff --git a/_maps/RandomRuins/SpaceRuins/emptyshell.dmm b/_maps/RandomRuins/SpaceRuins/emptyshell.dmm index e6d2316ce5..f0470d1b56 100644 --- a/_maps/RandomRuins/SpaceRuins/emptyshell.dmm +++ b/_maps/RandomRuins/SpaceRuins/emptyshell.dmm @@ -1,345 +1,31 @@ -//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE -"a" = ( -/turf/open/space, -/area/space) -"b" = ( -/obj/structure/lattice, -/turf/open/space, -/area/space) -"c" = ( -/turf/closed/wall/r_wall, -/area/ruin/unpowered) -"d" = ( -/turf/open/floor/plating, -/area/ruin/unpowered) -"e" = ( -/obj/effect/spawner/lootdrop/crate_spawner, -/turf/open/floor/plating, -/area/ruin/unpowered) -"f" = ( -/obj/item/ammo_box/magazine/sniper_rounds, -/turf/open/floor/plating, -/area/ruin/unpowered) -"g" = ( -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plating, -/area/ruin/unpowered) -"h" = ( -/obj/item/stack/rods, -/turf/open/floor/plating, -/area/ruin/unpowered) -"i" = ( -/turf/open/floor/plating/airless, -/area/ruin/unpowered) -"j" = ( -/obj/machinery/door/airlock, -/turf/open/floor/plating, -/area/ruin/unpowered) -"k" = ( -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 2; - name = "2maintenance loot spawner" - }, -/turf/open/floor/plating, -/area/ruin/unpowered) -"l" = ( -/obj/item/stack/cable_coil, -/turf/open/floor/plating, -/area/ruin/unpowered) -"m" = ( -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 4; - name = "4maintenance loot spawner" - }, -/turf/open/floor/plating, -/area/ruin/unpowered) +"a" = (/turf/open/space,/area/space) +"b" = (/obj/structure/lattice,/turf/open/space,/area/space) +"c" = (/turf/closed/wall/r_wall,/area/ruin/unpowered) +"d" = (/turf/open/floor/plating,/area/ruin/unpowered) +"e" = (/obj/effect/spawner/lootdrop/crate_spawner,/turf/open/floor/plating,/area/ruin/unpowered) +"f" = (/obj/item/ammo_box/magazine/sniper_rounds,/turf/open/floor/plating,/area/ruin/unpowered) +"g" = (/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/ruin/unpowered) +"h" = (/turf/open/floor/plating/airless,/area/ruin/unpowered) +"i" = (/obj/item/stack/rods,/turf/open/floor/plating,/area/ruin/unpowered) +"j" = (/obj/machinery/door/airlock,/turf/open/floor/plating,/area/ruin/unpowered) +"k" = (/obj/effect/spawner/lootdrop/maintenance{lootcount = 2; name = "2maintenance loot spawner"},/turf/open/floor/plating,/area/ruin/unpowered) +"l" = (/obj/item/stack/cable_coil,/turf/open/floor/plating,/area/ruin/unpowered) +"m" = (/obj/effect/spawner/lootdrop/maintenance{lootcount = 4; name = "4maintenance loot spawner"},/turf/open/floor/plating,/area/ruin/unpowered) (1,1,1) = {" -a -a -a -a -a -a -b -a -a -a -a -a -a -a -a -"} -(2,1,1) = {" -a -a -a -a -b -b -b -a -a -b -a -a -a -a -a -"} -(3,1,1) = {" -a -a -a -b -a -a -b -i -i -b -a -a -a -b -a -"} -(4,1,1) = {" -a -b -b -c -c -c -i -i -i -i -c -c -c -a -a -"} -(5,1,1) = {" -a -b -c -c -c -c -c -j -j -c -c -c -c -c -b -"} -(6,1,1) = {" -a -a -c -c -c -d -d -d -d -d -l -c -c -c -b -"} -(7,1,1) = {" -a -a -c -c -d -d -h -d -d -d -d -d -c -c -a -"} -(8,1,1) = {" -a -a -c -c -e -d -d -h -k -d -e -d -c -c -a -"} -(9,1,1) = {" -a -b -c -c -d -d -d -d -d -d -d -d -c -c -a -"} -(10,1,1) = {" -b -a -c -c -d -d -d -g -d -d -d -d -c -c -a -"} -(11,1,1) = {" -a -b -c -c -f -d -d -d -d -d -m -d -c -c -a -"} -(12,1,1) = {" -a -a -c -c -d -g -d -d -d -h -d -e -c -c -a -"} -(13,1,1) = {" -a -a -c -c -c -d -d -d -d -d -d -c -c -c -a -"} -(14,1,1) = {" -a -b -c -c -c -c -c -c -c -c -c -c -c -c -a -"} -(15,1,1) = {" -a -a -a -c -c -c -c -c -c -c -c -c -c -a -a -"} -(16,1,1) = {" -a -a -b -a -b -b -b -a -b -b -b -a -b -a -a -"} -(17,1,1) = {" -a -a -a -a -a -b -b -a -b -b -b -a -a -a -a +aaaaaaaaabaaaaaaa +aaabbaaababaabaaa +aaabccccccccccaba +aabccccccccccccaa +abacccdeddfdcccba +abaccddddddgdccbb +bbbhcdiddddddccbb +aahhjddidgdddccaa +aahhjddkdddddccbb +abbhcddddddidccbb +aaaccldeddmddccbb +aaacccdddddecccaa +aaaccccccccccccba +aabaccccccccccaaa +aaaabbaaaaaaaaaaa "} diff --git a/_maps/RandomRuins/SpaceRuins/gasthelizards.dmm b/_maps/RandomRuins/SpaceRuins/gasthelizards.dmm index fd610fd7c0..d7cafd2e13 100644 --- a/_maps/RandomRuins/SpaceRuins/gasthelizards.dmm +++ b/_maps/RandomRuins/SpaceRuins/gasthelizards.dmm @@ -1,52 +1,52 @@ "a" = (/turf/open/space,/area/space) "b" = (/obj/structure/lattice,/turf/open/space,/area/space) -"c" = (/turf/closed/wall,/area/ruin/gasthelizard) -"d" = (/obj/machinery/light{dir = 1},/obj/structure/bed,/obj/effect/decal/remains/human,/turf/open/floor/plasteel/airless/darkwarning{dir = 8},/area/ruin/gasthelizard) -"e" = (/obj/structure/window/reinforced{dir = 4;pixel_x = 0},/turf/open/floor/plasteel/airless/darkwarning{dir = 4},/area/ruin/gasthelizard) -"f" = (/obj/structure/window/reinforced{dir = 8},/obj/machinery/light{dir = 1},/obj/structure/bed,/obj/effect/decal/remains/human,/turf/open/floor/plasteel/airless/darkwarning{dir = 8},/area/ruin/gasthelizard) -"g" = (/obj/structure/window/reinforced{dir = 8},/obj/machinery/light{dir = 1},/obj/structure/bed,/turf/open/floor/plasteel/airless/darkwarning{dir = 8},/area/ruin/gasthelizard) -"h" = (/turf/open/floor/plasteel/airless/darkwarning{dir = 4},/area/ruin/gasthelizard) -"i" = (/turf/open/floor/plasteel/airless/darkwarning{dir = 8},/area/ruin/gasthelizard) -"j" = (/obj/structure/window/reinforced{dir = 4;pixel_x = 0},/obj/machinery/atmospherics/components/unary/outlet_injector,/turf/open/floor/plasteel/airless/darkwarning{dir = 4},/area/ruin/gasthelizard) -"k" = (/obj/structure/window/reinforced{dir = 8},/turf/open/floor/plasteel/airless/darkwarning{dir = 8},/area/ruin/gasthelizard) -"l" = (/obj/machinery/atmospherics/components/unary/outlet_injector,/turf/open/floor/plasteel/airless/darkwarning{dir = 4},/area/ruin/gasthelizard) -"m" = (/obj/structure/closet/crate/freezer,/obj/item/stack/sheet/animalhide/lizard,/obj/item/weapon/reagent_containers/food/snacks/meat/slab/human/mutant/lizard,/obj/item/weapon/reagent_containers/food/snacks/meat/slab/human/mutant/lizard,/obj/item/weapon/reagent_containers/food/snacks/meat/slab/human/mutant/lizard,/obj/item/weapon/reagent_containers/food/snacks/meat/slab/human/mutant/lizard,/obj/item/weapon/reagent_containers/food/snacks/meat/slab/human/mutant/lizard,/obj/item/weapon/reagent_containers/food/snacks/meat/slab/human/mutant/lizard,/turf/open/floor/plasteel{icon_state = "dark"},/area/ruin/gasthelizard) -"n" = (/obj/structure/closet/crate/freezer,/obj/item/weapon/reagent_containers/food/snacks/meat/slab/human/mutant/lizard,/obj/item/weapon/reagent_containers/food/snacks/meat/slab/human/mutant/lizard,/obj/item/weapon/reagent_containers/food/snacks/meat/slab/human/mutant/lizard,/obj/item/weapon/reagent_containers/food/snacks/meat/slab/human/mutant/lizard,/obj/item/weapon/reagent_containers/food/snacks/meat/slab/human/mutant/lizard,/obj/machinery/light{dir = 1},/obj/item/weapon/reagent_containers/food/snacks/meat/slab/human/mutant/lizard,/obj/item/weapon/reagent_containers/food/snacks/meat/slab/human/mutant/lizard,/turf/open/floor/plasteel{icon_state = "dark"},/area/ruin/gasthelizard) -"o" = (/obj/structure/closet/crate/freezer,/obj/item/weapon/reagent_containers/food/snacks/meat/slab/human/mutant/lizard,/obj/item/weapon/reagent_containers/food/snacks/meat/slab/human/mutant/lizard,/obj/item/weapon/reagent_containers/food/snacks/meat/slab/human/mutant/lizard,/obj/item/weapon/reagent_containers/food/snacks/meat/slab/human/mutant/lizard,/obj/item/clothing/under/rank/prisoner,/obj/item/weapon/reagent_containers/food/snacks/meat/slab/human/mutant/lizard,/obj/item/weapon/reagent_containers/food/snacks/meat/slab/human/mutant/lizard,/obj/item/weapon/reagent_containers/food/snacks/meat/slab/human/mutant/lizard,/turf/open/floor/plasteel{icon_state = "dark"},/area/ruin/gasthelizard) -"p" = (/obj/structure/window/reinforced{dir = 1;layer = 2.9},/turf/open/floor/plasteel{dir = 1;icon_state = "blue"},/area/ruin/gasthelizard) -"q" = (/obj/machinery/door/window/brigdoor/northleft,/obj/machinery/atmospherics/components/binary/pump{dir = 1},/turf/open/floor/plasteel{dir = 1;icon_state = "blue"},/area/ruin/gasthelizard) -"r" = (/turf/open/floor/plasteel{icon_state = "dark"},/area/ruin/gasthelizard) -"s" = (/obj/machinery/atmospherics/components/unary/portables_connector/visible{dir = 4},/obj/machinery/portable_atmospherics/canister/nitrous_oxide,/turf/open/floor/plasteel,/area/ruin/gasthelizard) -"t" = (/obj/machinery/atmospherics/pipe/manifold/general/visible{dir = 1},/obj/machinery/power/apc{cell_type = 2500;dir = 1;name = "Worn-out APC";pixel_x = 1;pixel_y = 26},/obj/machinery/light{dir = 1},/turf/open/floor/plasteel,/area/ruin/gasthelizard) -"u" = (/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 4},/turf/open/floor/plasteel,/area/ruin/gasthelizard) -"v" = (/obj/machinery/atmospherics/pipe/manifold/general/visible,/turf/open/floor/plasteel,/area/ruin/gasthelizard) -"w" = (/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 9},/obj/machinery/light{dir = 4;icon_state = "tube1"},/turf/open/floor/plasteel,/area/ruin/gasthelizard) -"x" = (/obj/structure/kitchenspike,/turf/open/floor/plasteel{icon_state = "dark"},/area/ruin/gasthelizard) -"y" = (/obj/structure/table/reinforced,/obj/item/weapon/kitchen/knife/butcher,/obj/item/weapon/restraints/handcuffs,/obj/item/weapon/reagent_containers/spray/pepper,/turf/open/floor/plasteel{icon_state = "dark"},/area/ruin/gasthelizard) -"z" = (/obj/machinery/atmospherics/components/unary/portables_connector/visible{dir = 4},/obj/machinery/portable_atmospherics/canister/carbon_dioxide,/turf/open/floor/plasteel,/area/ruin/gasthelizard) -"A" = (/obj/machinery/atmospherics/pipe/manifold/general/visible{dir = 4;initialize_directions = 11},/turf/open/floor/plasteel,/area/ruin/gasthelizard) -"B" = (/turf/open/floor/plasteel,/area/ruin/gasthelizard) -"C" = (/obj/machinery/gibber,/turf/open/floor/plasteel{icon_state = "dark"},/area/ruin/gasthelizard) -"D" = (/obj/structure/table/reinforced,/obj/item/clothing/suit/straight_jacket,/obj/item/weapon/reagent_containers/syringe/lethal,/obj/item/weapon/reagent_containers/syringe/lethal/choral,/turf/open/floor/plasteel{icon_state = "dark"},/area/ruin/gasthelizard) -"E" = (/obj/machinery/atmospherics/components/unary/portables_connector/visible{dir = 4},/obj/machinery/portable_atmospherics/canister/toxins,/turf/open/floor/plasteel,/area/ruin/gasthelizard) -"F" = (/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 9},/turf/open/floor/plasteel,/area/ruin/gasthelizard) -"G" = (/obj/structure/chair/office/dark,/turf/open/floor/plasteel,/area/ruin/gasthelizard) -"H" = (/obj/machinery/door/airlock/security,/turf/open/floor/plasteel{icon_state = "dark"},/area/ruin/gasthelizard) -"I" = (/obj/item/weapon/reagent_containers/glass/bottle/morphine{pixel_x = -4;pixel_y = 1},/obj/item/weapon/reagent_containers/glass/bottle/chloralhydrate{name = "chloral hydrate bottle"},/obj/item/weapon/reagent_containers/glass/bottle/toxin{pixel_x = 6;pixel_y = 8},/obj/item/weapon/reagent_containers/glass/bottle/morphine{pixel_x = 5;pixel_y = 1},/obj/item/weapon/reagent_containers/glass/bottle/facid{name = "fluorosulfuric acid bottle";pixel_x = -3;pixel_y = 6},/obj/structure/table/reinforced,/turf/open/floor/plasteel{icon_state = "dark"},/area/ruin/gasthelizard) -"J" = (/obj/structure/rack,/obj/item/weapon/storage/toolbox/drone,/obj/item/weapon/melee/baton/cattleprod,/turf/open/floor/plasteel,/area/ruin/gasthelizard) -"K" = (/obj/structure/table,/obj/item/weapon/pen/red,/turf/open/floor/plasteel,/area/ruin/gasthelizard) -"L" = (/obj/structure/table,/obj/item/weapon/paper_bin,/turf/open/floor/plasteel,/area/ruin/gasthelizard) -"M" = (/obj/structure/table,/obj/item/weapon/storage/box/prisoner,/turf/open/floor/plasteel,/area/ruin/gasthelizard) -"N" = (/obj/structure/window/reinforced{dir = 4;pixel_x = 0},/obj/machinery/light,/obj/structure/table,/turf/open/floor/plasteel,/area/ruin/gasthelizard) -"O" = (/obj/machinery/portable_atmospherics/scrubber,/turf/open/floor/plasteel{icon_state = "bot";dir = 1},/area/ruin/gasthelizard) -"P" = (/obj/structure/table/reinforced,/obj/item/weapon/surgicaldrill,/obj/item/weapon/hemostat,/obj/item/weapon/scalpel,/obj/item/weapon/surgical_drapes,/obj/item/weapon/retractor,/obj/item/weapon/cautery,/obj/item/weapon/circular_saw,/obj/machinery/light,/turf/open/floor/plasteel{icon_state = "dark"},/area/ruin/gasthelizard) -"Q" = (/obj/structure/table/optable,/obj/effect/decal/cleanable/blood/old,/turf/open/floor/plasteel{icon_state = "dark"},/area/ruin/gasthelizard) -"R" = (/obj/structure/table/reinforced,/obj/item/weapon/reagent_containers/syringe,/obj/item/weapon/reagent_containers/dropper,/obj/item/weapon/reagent_containers/glass/bottle/mutagen,/obj/item/weapon/reagent_containers/glass/bottle/mutagen,/obj/item/weapon/razor,/turf/open/floor/plasteel{icon_state = "dark"},/area/ruin/gasthelizard) -"S" = (/obj/machinery/suit_storage_unit/security,/turf/open/floor/plasteel,/area/ruin/gasthelizard) -"T" = (/obj/machinery/light,/turf/open/floor/plasteel,/area/ruin/gasthelizard) -"U" = (/obj/structure/closet/emcloset,/turf/open/floor/plasteel,/area/ruin/gasthelizard) -"V" = (/obj/machinery/door/airlock/external,/turf/open/floor/plating,/area/ruin/gasthelizard) -"W" = (/turf/open/floor/plating,/area/ruin/gasthelizard) +"c" = (/turf/closed/wall,/area/ruin/unpowered) +"d" = (/obj/machinery/light{dir = 1},/obj/structure/bed,/obj/effect/decal/remains/human,/turf/open/floor/plasteel{icon_state = "warndark";dir = 8},/area/ruin/unpowered) +"e" = (/obj/structure/window/reinforced{dir = 4;pixel_x = 0},/turf/open/floor/plasteel{icon_state = "warndark";dir = 4},/area/ruin/unpowered) +"f" = (/obj/structure/window/reinforced{dir = 8},/obj/machinery/light{dir = 1},/obj/structure/bed,/obj/effect/decal/remains/human,/turf/open/floor/plasteel{icon_state = "warndark";dir = 8},/area/ruin/unpowered) +"g" = (/obj/structure/window/reinforced{dir = 8},/obj/machinery/light{dir = 1},/obj/structure/bed,/turf/open/floor/plasteel{icon_state = "warndark";dir = 8},/area/ruin/unpowered) +"h" = (/turf/open/floor/plasteel{icon_state = "warndark";dir = 4},/area/ruin/unpowered) +"i" = (/turf/open/floor/plasteel{icon_state = "warndark";dir = 8},/area/ruin/unpowered) +"j" = (/obj/structure/window/reinforced{dir = 4;pixel_x = 0},/obj/machinery/atmospherics/components/unary/outlet_injector,/turf/open/floor/plasteel{icon_state = "warndark";dir = 4},/area/ruin/unpowered) +"k" = (/obj/structure/window/reinforced{dir = 8},/turf/open/floor/plasteel{icon_state = "warndark";dir = 8},/area/ruin/unpowered) +"l" = (/obj/machinery/atmospherics/components/unary/outlet_injector,/turf/open/floor/plasteel{icon_state = "warndark";dir = 4},/area/ruin/unpowered) +"m" = (/obj/structure/closet/crate/freezer,/obj/item/stack/sheet/animalhide/lizard,/obj/item/weapon/reagent_containers/food/snacks/meat/slab/human/mutant/lizard,/obj/item/weapon/reagent_containers/food/snacks/meat/slab/human/mutant/lizard,/obj/item/weapon/reagent_containers/food/snacks/meat/slab/human/mutant/lizard,/obj/item/weapon/reagent_containers/food/snacks/meat/slab/human/mutant/lizard,/obj/item/weapon/reagent_containers/food/snacks/meat/slab/human/mutant/lizard,/obj/item/weapon/reagent_containers/food/snacks/meat/slab/human/mutant/lizard,/turf/open/floor/plasteel{icon_state = "dark"},/area/ruin/unpowered) +"n" = (/obj/structure/closet/crate/freezer,/obj/item/weapon/reagent_containers/food/snacks/meat/slab/human/mutant/lizard,/obj/item/weapon/reagent_containers/food/snacks/meat/slab/human/mutant/lizard,/obj/item/weapon/reagent_containers/food/snacks/meat/slab/human/mutant/lizard,/obj/item/weapon/reagent_containers/food/snacks/meat/slab/human/mutant/lizard,/obj/item/weapon/reagent_containers/food/snacks/meat/slab/human/mutant/lizard,/obj/machinery/light{dir = 1},/obj/item/weapon/reagent_containers/food/snacks/meat/slab/human/mutant/lizard,/obj/item/weapon/reagent_containers/food/snacks/meat/slab/human/mutant/lizard,/turf/open/floor/plasteel{icon_state = "dark"},/area/ruin/unpowered) +"o" = (/obj/structure/closet/crate/freezer,/obj/item/weapon/reagent_containers/food/snacks/meat/slab/human/mutant/lizard,/obj/item/weapon/reagent_containers/food/snacks/meat/slab/human/mutant/lizard,/obj/item/weapon/reagent_containers/food/snacks/meat/slab/human/mutant/lizard,/obj/item/weapon/reagent_containers/food/snacks/meat/slab/human/mutant/lizard,/obj/item/clothing/under/rank/prisoner,/obj/item/weapon/reagent_containers/food/snacks/meat/slab/human/mutant/lizard,/obj/item/weapon/reagent_containers/food/snacks/meat/slab/human/mutant/lizard,/obj/item/weapon/reagent_containers/food/snacks/meat/slab/human/mutant/lizard,/turf/open/floor/plasteel{icon_state = "dark"},/area/ruin/unpowered) +"p" = (/obj/structure/window/reinforced{dir = 1;layer = 2.9},/turf/open/floor/plasteel{dir = 1;icon_state = "blue"},/area/ruin/unpowered) +"q" = (/obj/machinery/door/window/brigdoor/northleft,/obj/machinery/atmospherics/components/binary/pump{dir = 1},/turf/open/floor/plasteel{dir = 1;icon_state = "blue"},/area/ruin/unpowered) +"r" = (/turf/open/floor/plasteel{icon_state = "dark"},/area/ruin/unpowered) +"s" = (/obj/machinery/atmospherics/components/unary/portables_connector/visible{dir = 4},/obj/machinery/portable_atmospherics/canister/nitrous_oxide,/turf/open/floor/plasteel,/area/ruin/unpowered) +"t" = (/obj/machinery/atmospherics/pipe/manifold/general/visible{dir = 1},/obj/machinery/power/apc{cell_type = 2500;dir = 1;name = "Worn-out APC";pixel_x = 1;pixel_y = 26},/obj/machinery/light{dir = 1},/turf/open/floor/plasteel,/area/ruin/unpowered) +"u" = (/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 4},/turf/open/floor/plasteel,/area/ruin/unpowered) +"v" = (/obj/machinery/atmospherics/pipe/manifold/general/visible,/turf/open/floor/plasteel,/area/ruin/unpowered) +"w" = (/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 9},/obj/machinery/light{dir = 4;icon_state = "tube1"},/turf/open/floor/plasteel,/area/ruin/unpowered) +"x" = (/obj/structure/kitchenspike,/turf/open/floor/plasteel{icon_state = "dark"},/area/ruin/unpowered) +"y" = (/obj/structure/table/reinforced,/obj/item/weapon/kitchen/knife/butcher,/obj/item/weapon/restraints/handcuffs,/obj/item/weapon/reagent_containers/spray/pepper,/turf/open/floor/plasteel{icon_state = "dark"},/area/ruin/unpowered) +"z" = (/obj/machinery/atmospherics/components/unary/portables_connector/visible{dir = 4},/obj/machinery/portable_atmospherics/canister/carbon_dioxide,/turf/open/floor/plasteel,/area/ruin/unpowered) +"A" = (/obj/machinery/atmospherics/pipe/manifold/general/visible{dir = 4;initialize_directions = 11},/turf/open/floor/plasteel,/area/ruin/unpowered) +"B" = (/turf/open/floor/plasteel,/area/ruin/unpowered) +"C" = (/obj/machinery/gibber,/turf/open/floor/plasteel{icon_state = "dark"},/area/ruin/unpowered) +"D" = (/obj/structure/table/reinforced,/obj/item/clothing/suit/straight_jacket,/obj/item/weapon/reagent_containers/syringe/lethal,/obj/item/weapon/reagent_containers/syringe/lethal/choral,/turf/open/floor/plasteel{icon_state = "dark"},/area/ruin/unpowered) +"E" = (/obj/machinery/atmospherics/components/unary/portables_connector/visible{dir = 4},/obj/machinery/portable_atmospherics/canister/toxins,/turf/open/floor/plasteel,/area/ruin/unpowered) +"F" = (/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 9},/turf/open/floor/plasteel,/area/ruin/unpowered) +"G" = (/obj/structure/chair/office/dark,/turf/open/floor/plasteel,/area/ruin/unpowered) +"H" = (/obj/machinery/door/airlock/security,/turf/open/floor/plasteel{icon_state = "dark"},/area/ruin/unpowered) +"I" = (/obj/item/weapon/reagent_containers/glass/bottle/morphine{pixel_x = -4;pixel_y = 1},/obj/item/weapon/reagent_containers/glass/bottle/chloralhydrate{name = "chloral hydrate bottle"},/obj/item/weapon/reagent_containers/glass/bottle/toxin{pixel_x = 6;pixel_y = 8},/obj/item/weapon/reagent_containers/glass/bottle/morphine{pixel_x = 5;pixel_y = 1},/obj/item/weapon/reagent_containers/glass/bottle/facid{name = "fluorosulfuric acid bottle";pixel_x = -3;pixel_y = 6},/obj/structure/table/reinforced,/turf/open/floor/plasteel{icon_state = "dark"},/area/ruin/unpowered) +"J" = (/obj/structure/rack,/obj/item/weapon/storage/toolbox/drone,/obj/item/weapon/melee/baton/cattleprod,/turf/open/floor/plasteel,/area/ruin/unpowered) +"K" = (/obj/structure/table,/obj/item/weapon/pen/red,/turf/open/floor/plasteel,/area/ruin/unpowered) +"L" = (/obj/structure/table,/obj/item/weapon/paper_bin,/turf/open/floor/plasteel,/area/ruin/unpowered) +"M" = (/obj/structure/table,/obj/item/weapon/storage/box/prisoner,/turf/open/floor/plasteel,/area/ruin/unpowered) +"N" = (/obj/structure/window/reinforced{dir = 4;pixel_x = 0},/obj/machinery/light,/obj/structure/table,/turf/open/floor/plasteel,/area/ruin/unpowered) +"O" = (/obj/machinery/portable_atmospherics/scrubber,/turf/open/floor/plasteel{icon_state = "bot";dir = 1},/area/ruin/unpowered) +"P" = (/obj/structure/table/reinforced,/obj/item/weapon/surgicaldrill,/obj/item/weapon/hemostat,/obj/item/weapon/scalpel,/obj/item/weapon/surgical_drapes,/obj/item/weapon/retractor,/obj/item/weapon/cautery,/obj/item/weapon/circular_saw,/obj/machinery/light,/turf/open/floor/plasteel{icon_state = "dark"},/area/ruin/unpowered) +"Q" = (/obj/structure/table/optable,/obj/effect/decal/cleanable/blood/old,/turf/open/floor/plasteel{icon_state = "dark"},/area/ruin/unpowered) +"R" = (/obj/structure/table/reinforced,/obj/item/weapon/reagent_containers/syringe,/obj/item/weapon/reagent_containers/dropper,/obj/item/weapon/reagent_containers/glass/bottle/mutagen,/obj/item/weapon/reagent_containers/glass/bottle/mutagen,/obj/item/weapon/razor,/turf/open/floor/plasteel{icon_state = "dark"},/area/ruin/unpowered) +"S" = (/obj/machinery/suit_storage_unit/security,/turf/open/floor/plasteel,/area/ruin/unpowered) +"T" = (/obj/machinery/light,/turf/open/floor/plasteel,/area/ruin/unpowered) +"U" = (/obj/structure/closet/emcloset,/turf/open/floor/plasteel,/area/ruin/unpowered) +"V" = (/obj/machinery/door/airlock/external,/turf/open/floor/plating,/area/ruin/unpowered) +"W" = (/turf/open/floor/plating,/area/ruin/unpowered) (1,1,1) = {" aaaababababbaaaaaaa diff --git a/_maps/RandomRuins/SpaceRuins/intactemptyship.dmm b/_maps/RandomRuins/SpaceRuins/intactemptyship.dmm index 3346128321..afaf654fec 100644 --- a/_maps/RandomRuins/SpaceRuins/intactemptyship.dmm +++ b/_maps/RandomRuins/SpaceRuins/intactemptyship.dmm @@ -1,333 +1,43 @@ -//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE -"a" = ( -/turf/open/space, -/area/space) -"b" = ( -/turf/open/space, -/turf/closed/wall/mineral/plastitanium{ - dir = 8; - icon_state = "diagonalWall3" - }, -/area/ruin/powered/authorship) -"c" = ( -/turf/closed/wall/shuttle{ - icon_state = "wall3" - }, -/area/ruin/powered/authorship) -"d" = ( -/turf/open/space, -/turf/closed/wall/mineral/plastitanium{ - dir = 1; - icon_state = "diagonalWall3" - }, -/area/ruin/powered/authorship) -"e" = ( -/obj/structure/shuttle/engine/propulsion{ - tag = "icon-propulsion (EAST)"; - icon_state = "propulsion"; - dir = 4 - }, -/turf/open/space, -/area/ruin/powered/authorship) -"f" = ( -/obj/structure/window/reinforced{ - dir = 4 - }, -/obj/structure/shuttle/engine/heater{ - tag = "icon-heater (WEST)"; - icon_state = "heater"; - dir = 8 - }, -/turf/open/floor/plating/airless, -/area/ruin/powered/authorship) -"g" = ( -/obj/structure/table/wood, -/obj/item/clothing/under/shorts/black, -/turf/open/floor/plasteel/shuttle/purple, -/area/ruin/powered/authorship) -"h" = ( -/turf/open/floor/plasteel/shuttle/purple, -/area/ruin/powered/authorship) -"i" = ( -/obj/structure/table, -/obj/item/device/flashlight/lamp, -/obj/machinery/light{ - dir = 1 - }, -/turf/open/floor/plasteel/shuttle/purple, -/area/ruin/powered/authorship) -"j" = ( -/obj/structure/closet, -/turf/open/floor/plasteel/shuttle/purple, -/area/ruin/powered/authorship) -"k" = ( -/obj/machinery/vending/assist, -/turf/open/floor/plasteel/shuttle/purple, -/area/ruin/powered/authorship) -"l" = ( -/obj/structure/table/wood, -/obj/item/clothing/shoes/sandal, -/turf/open/floor/plasteel/shuttle/purple, -/area/ruin/powered/authorship) -"m" = ( -/obj/machinery/light{ - dir = 8 - }, -/turf/open/floor/plasteel/shuttle/purple, -/area/ruin/powered/authorship) -"n" = ( -/obj/structure/table/wood, -/turf/open/floor/plasteel/shuttle/purple, -/area/ruin/powered/authorship) -"o" = ( -/obj/structure/table/wood, -/obj/machinery/computer/libraryconsole/bookmanagement, -/turf/open/floor/plasteel/shuttle/purple, -/area/ruin/powered/authorship) -"p" = ( -/obj/structure/window/reinforced/fulltile, -/obj/structure/grille, -/turf/open/floor/plating, -/area/ruin/powered/authorship) -"q" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/ruin/powered/authorship) -"r" = ( -/obj/structure/table/wood, -/obj/item/weapon/paper_bin, -/obj/item/weapon/pen, -/turf/open/floor/plasteel/shuttle/purple, -/area/ruin/powered/authorship) -"s" = ( -/obj/machinery/door/poddoor{ - id = "goonwizship1" - }, -/obj/machinery/button/door{ - id = "goonwizship1"; - name = "Strange Ship Door Button"; - pixel_y = 32 - }, -/turf/open/floor/plasteel/shuttle/purple, -/area/ruin/powered/authorship) -"t" = ( -/obj/machinery/door/airlock/external, -/turf/open/floor/plasteel/shuttle/purple, -/area/ruin/powered/authorship) -"u" = ( -/obj/machinery/door/airlock/glass, -/turf/open/floor/plasteel/shuttle/purple, -/area/ruin/powered/authorship) -"v" = ( -/obj/structure/chair{ - dir = 4 - }, -/turf/open/floor/plasteel/shuttle/purple, -/area/ruin/powered/authorship) -"w" = ( -/obj/structure/table/wood, -/obj/item/weapon/paper, -/obj/item/weapon/pen, -/turf/open/floor/plasteel/shuttle/purple, -/area/ruin/powered/authorship) -"x" = ( -/obj/machinery/light, -/turf/open/floor/plasteel/shuttle/purple, -/area/ruin/powered/authorship) -"y" = ( -/mob/living/simple_animal/bot/medbot, -/turf/open/floor/plasteel/shuttle/purple, -/area/ruin/powered/authorship) -"z" = ( -/turf/open/space, -/turf/closed/wall/mineral/plastitanium{ - icon_state = "diagonalWall3" - }, -/area/ruin/powered/authorship) -"A" = ( -/obj/structure/chair, -/turf/open/floor/plasteel/shuttle/purple, -/area/ruin/powered/authorship) -"B" = ( -/turf/open/space, -/turf/closed/wall/mineral/plastitanium{ - dir = 4; - icon_state = "diagonalWall3" - }, -/area/ruin/powered/authorship) -"C" = ( -/obj/machinery/light, -/obj/structure/bed, -/turf/open/floor/plasteel/shuttle/purple, -/area/ruin/powered/authorship) +"a" = (/turf/open/space,/area/space) +"b" = (/turf/closed/wall/shuttle{dir = 8;icon_state = "diagonalWall3"},/area/ruin/powered/authorship) +"c" = (/turf/closed/wall/shuttle{icon_state = "wall3"},/area/ruin/powered/authorship) +"d" = (/turf/closed/wall/shuttle{dir = 1;icon_state = "diagonalWall3"},/area/ruin/powered/authorship) +"e" = (/obj/structure/shuttle/engine/propulsion{tag = "icon-propulsion (EAST)";icon_state = "propulsion";dir = 4},/turf/open/space,/area/ruin/powered/authorship) +"f" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/shuttle/engine/heater{tag = "icon-heater (WEST)";icon_state = "heater";dir = 8},/turf/open/floor/plating,/area/ruin/powered/authorship) +"g" = (/obj/structure/table/wood,/obj/item/clothing/under/shorts/black,/turf/open/floor/plasteel/shuttle/purple,/area/ruin/powered/authorship) +"h" = (/turf/open/floor/plasteel/shuttle/purple,/area/ruin/powered/authorship) +"i" = (/obj/structure/table,/obj/item/device/flashlight/lamp,/obj/machinery/light{dir = 1},/turf/open/floor/plasteel/shuttle/purple,/area/ruin/powered/authorship) +"j" = (/obj/structure/closet,/turf/open/floor/plasteel/shuttle/purple,/area/ruin/powered/authorship) +"k" = (/obj/machinery/vending/assist,/turf/open/floor/plasteel/shuttle/purple,/area/ruin/powered/authorship) +"l" = (/obj/structure/table/wood,/obj/item/clothing/shoes/sandal,/turf/open/floor/plasteel/shuttle/purple,/area/ruin/powered/authorship) +"m" = (/obj/machinery/light{dir = 8},/turf/open/floor/plasteel/shuttle/purple,/area/ruin/powered/authorship) +"n" = (/obj/structure/table/wood,/turf/open/floor/plasteel/shuttle/purple,/area/ruin/powered/authorship) +"o" = (/obj/structure/table/wood,/obj/machinery/computer/libraryconsole/bookmanagement,/turf/open/floor/plasteel/shuttle/purple,/area/ruin/powered/authorship) +"p" = (/obj/structure/window/reinforced/fulltile,/obj/structure/grille,/turf/open/floor/plating,/area/ruin/powered/authorship) +"q" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/ruin/powered/authorship) +"r" = (/obj/structure/table/wood,/obj/item/weapon/paper_bin,/obj/item/weapon/pen,/turf/open/floor/plasteel/shuttle/purple,/area/ruin/powered/authorship) +"s" = (/obj/machinery/door/poddoor{id = "goonwizship1"},/obj/machinery/button/door{id = "goonwizship1";name = "Strange Ship Door Button";pixel_y = 32},/turf/open/floor/plasteel/shuttle/purple,/area/ruin/powered/authorship) +"t" = (/obj/machinery/door/airlock/external,/turf/open/floor/plasteel/shuttle/purple,/area/ruin/powered/authorship) +"u" = (/obj/machinery/door/airlock/glass,/turf/open/floor/plasteel/shuttle/purple,/area/ruin/powered/authorship) +"v" = (/obj/structure/chair{dir = 4},/turf/open/floor/plasteel/shuttle/purple,/area/ruin/powered/authorship) +"w" = (/obj/structure/table/wood,/obj/item/weapon/paper,/obj/item/weapon/pen,/turf/open/floor/plasteel/shuttle/purple,/area/ruin/powered/authorship) +"x" = (/obj/machinery/light,/turf/open/floor/plasteel/shuttle/purple,/area/ruin/powered/authorship) +"y" = (/mob/living/simple_animal/bot/medbot,/turf/open/floor/plasteel/shuttle/purple,/area/ruin/powered/authorship) +"z" = (/turf/closed/wall/shuttle{dir = 2;icon_state = "diagonalWall3"},/area/ruin/powered/authorship) +"A" = (/obj/structure/chair,/turf/open/floor/plasteel/shuttle/purple,/area/ruin/powered/authorship) +"B" = (/turf/closed/wall/shuttle{dir = 4;icon_state = "diagonalWall3"},/area/ruin/powered/authorship) +"C" = (/obj/machinery/light,/obj/structure/bed,/turf/open/floor/plasteel/shuttle/purple,/area/ruin/powered/authorship) (1,1,1) = {" -a -a -a -b -c -s -c -z -a -a -a -"} -(2,1,1) = {" -a -e -e -c -n -h -h -c -e -e -a -"} -(3,1,1) = {" -b -f -f -c -o -h -x -c -f -f -z -"} -(4,1,1) = {" -c -g -l -c -p -t -p -c -A -n -c -"} -(5,1,1) = {" -c -h -h -c -h -h -y -c -h -n -c -"} -(6,1,1) = {" -c -i -h -m -h -h -h -m -h -C -c -"} -(7,1,1) = {" -c -j -h -h -h -h -h -h -h -h -c -"} -(8,1,1) = {" -c -k -h -h -h -h -h -h -h -j -c -"} -(9,1,1) = {" -d -c -c -c -q -u -q -c -c -c -B -"} -(10,1,1) = {" -a -a -c -m -h -h -h -m -c -a -a -"} -(11,1,1) = {" -a -a -c -h -h -v -h -h -c -a -a -"} -(12,1,1) = {" -a -a -c -j -r -w -n -j -c -a -a -"} -(13,1,1) = {" -a -a -d -c -c -c -c -c -B -a -a +aabcccccdaaaa +aefghijkcaaaa +aeflhhhhccccd +bccccmhhcmhjc +cnophhhhqhhrc +shhthhhhuhvwc +chxpyhhhqhhnc +zccccmhhcmhjc +aefAhhhhccccB +aefnnChjcaaaa +aazcccccBaaaa "} diff --git a/_maps/RandomRuins/SpaceRuins/listeningstation.dmm b/_maps/RandomRuins/SpaceRuins/listeningstation.dmm index e2a4579531..efbcfee9a2 100644 --- a/_maps/RandomRuins/SpaceRuins/listeningstation.dmm +++ b/_maps/RandomRuins/SpaceRuins/listeningstation.dmm @@ -1,6585 +1,127 @@ -//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE -"a" = ( -/turf/open/space, -/area/space) -"b" = ( -/turf/closed/mineral, -/area/ruin/unpowered/no_grav) -"c" = ( -/turf/closed/wall/r_wall, -/area/awaymission/listeningpost) -"d" = ( -/turf/open/floor/plating, -/area/awaymission/listeningpost) -"e" = ( -/obj/machinery/power/smes/magical{ - desc = "A high-capacity superconducting magnetic energy storage (SMES) unit."; - name = "power storage unit" - }, -/turf/open/floor/plating, -/area/awaymission/listeningpost) -"f" = ( -/obj/machinery/door/airlock, -/turf/open/floor/plasteel, -/area/awaymission/listeningpost) -"g" = ( -/turf/closed/wall, -/area/awaymission/listeningpost) -"h" = ( -/obj/structure/table, -/obj/item/weapon/paper/monitorkey, -/obj/item/device/radio/intercom{ - desc = "Talk through this. Evilly"; - freerange = 1; - frequency = 1213; - name = "Syndicate Intercom"; - pixel_x = 32; - subspace_transmission = 1; - syndie = 1 - }, -/obj/item/clothing/glasses/regular, -/turf/open/floor/plasteel, -/area/awaymission/listeningpost) -"i" = ( -/obj/structure/table, -/turf/open/floor/plasteel, -/area/awaymission/listeningpost) -"j" = ( -/turf/open/floor/plasteel, -/area/awaymission/listeningpost) -"k" = ( -/obj/machinery/door/airlock/external, -/turf/open/floor/plating, -/area/awaymission/listeningpost) -"l" = ( -/turf/open/floor/plating/asteroid/airless, -/area/ruin/unpowered/no_grav) -"m" = ( -/obj/machinery/computer/message_monitor, -/turf/open/floor/plasteel, -/area/awaymission/listeningpost) -"n" = ( -/obj/structure/chair{ - dir = 4 - }, -/mob/living/simple_animal/hostile/syndicate{ - desc = "A weary looking syndicate operative." - }, -/turf/open/floor/plasteel, -/area/awaymission/listeningpost) -"o" = ( -/obj/structure/table, -/obj/item/weapon/paper{ - info = "Nothing of interest to report."; - name = "november report" - }, -/obj/item/weapon/pen, -/turf/open/floor/plasteel, -/area/awaymission/listeningpost) -"p" = ( -/obj/item/device/radio/intercom{ - desc = "Talk through this. Evilly"; - freerange = 1; - frequency = 1213; - name = "Syndicate Intercom"; - pixel_x = 32; - subspace_transmission = 1; - syndie = 1 - }, -/turf/open/floor/plasteel, -/area/awaymission/listeningpost) -"q" = ( -/obj/structure/rack, -/obj/item/clothing/suit/space/syndicate, -/obj/item/clothing/mask/gas, -/obj/item/clothing/head/helmet/space/syndicate, -/turf/open/floor/plasteel, -/area/awaymission/listeningpost) -"r" = ( -/obj/machinery/door/airlock, -/obj/structure/safe/floor, -/obj/item/weapon/paper{ - info = "I wonder how much longer they will accept my empty reports. They will cancel the case soon without results. When the pickup comes, I will tell them I have lost faith in our cause, and beg them to consider a diplomatic solution. How many nuclear teams have been dispatched with those nukes? I must try and prevent more from ever being sent. If they will not listen to reason, I will detonate the warehouse myself. Maybe some day in the immediate future, space will be peaceful, though I don't intend to live to see it. And that is why I write this down- it is my sacrifice that stabilised your worlds, traveller. Spare a thought for me, and please attempt to prevent nuclear proliferation, should it ever rear it's ugly head again. -Donk Co. Operative #451"; - name = "odd report" - }, -/obj/item/weapon/gun/ballistic/automatic/pistol, -/turf/open/floor/plasteel, -/area/awaymission/listeningpost) -"s" = ( -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/turf/closed/mineral, -/area/ruin/unpowered/no_grav) -"t" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/closed/mineral, -/area/ruin/unpowered/no_grav) -"u" = ( -/obj/structure/disposaloutlet{ - dir = 4 - }, -/obj/structure/disposalpipe/trunk{ - dir = 8 - }, -/turf/open/floor/plating/airless, -/area/ruin/unpowered/no_grav) -"v" = ( -/obj/structure/bed, -/obj/item/weapon/bedsheet/brown, -/turf/open/floor/plasteel, -/area/awaymission/listeningpost) -"w" = ( -/obj/structure/table, -/obj/item/device/flashlight/lamp, -/turf/open/floor/plasteel, -/area/awaymission/listeningpost) -"x" = ( -/obj/machinery/vending/snack, -/turf/open/floor/plasteel, -/area/awaymission/listeningpost) -"y" = ( -/obj/structure/disposalpipe/segment, -/turf/closed/mineral, -/area/ruin/unpowered/no_grav) -"z" = ( -/obj/machinery/vending/cola, -/turf/open/floor/plasteel, -/area/awaymission/listeningpost) -"A" = ( -/obj/structure/closet, -/obj/item/clothing/gloves/boxing, -/turf/open/floor/plasteel, -/area/awaymission/listeningpost) -"B" = ( -/obj/structure/filingcabinet, -/obj/item/weapon/paper{ - info = "A good start to the operation: intercepted Nanotrasen military communications. A convoy is scheduled to transfer nuclear warheads to a new military base. This is as good a chance as any to get our hands on some heavy weaponry, I suggest we take it."; - name = "april report" - }, -/obj/item/weapon/paper{ - info = "Nothing of real interest to report this month. I have intercepted faint transmissions from what appears to be some sort of pirate radio station. They do not appear to be relevant to my assignment."; - name = "may report" - }, -/obj/item/weapon/paper{ - info = "Nanotrasen communications have been noticably less frequent recently. The pirate radio station I found last month has been transmitting pro-Nanotrasen propaganda. I will continue to monitor it."; - name = "june report" - }, -/obj/item/weapon/paper{ - info = "Nothing of interest to report."; - name = "july report" - }, -/obj/item/weapon/paper{ - info = "Nothing of interest to report."; - name = "august report" - }, -/obj/item/weapon/paper{ - info = "Nothing of interest to report."; - name = "september report" - }, -/obj/item/weapon/paper{ - info = "Nothing of interest to report."; - name = "october report" - }, -/obj/item/weapon/paper{ - info = "1 x Stechtkin pistol - $600
1 x silencer - $200
shipping charge - $4360
total - $5160"; - name = "receipt" - }, -/turf/open/floor/plasteel, -/area/awaymission/listeningpost) -"C" = ( -/obj/structure/table, -/obj/item/weapon/paper{ - info = "Mission Details: You have been assigned to a newly constructed listening post constructed within an asteroid in Nanotrasen space to monitor their plasma mining operations. Accurate intel is crucial to the success of our operatives onboard, do not fail us."; - name = "mission briefing" - }, -/turf/open/floor/plasteel, -/area/awaymission/listeningpost) -"D" = ( -/obj/machinery/disposal/bin, -/obj/structure/disposalpipe/trunk{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/listeningpost) -"E" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/closed/wall/r_wall, -/area/awaymission/listeningpost) -"F" = ( -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/turf/closed/mineral, -/area/ruin/unpowered/no_grav) -"G" = ( -/obj/machinery/door/airlock{ - name = "Toilet" - }, -/turf/open/floor/plasteel, -/area/awaymission/listeningpost) -"H" = ( -/turf/open/floor/plasteel/freezer, -/area/awaymission/listeningpost) -"I" = ( -/obj/machinery/shower{ - icon_state = "shower"; - dir = 8 - }, -/turf/open/floor/plasteel/freezer, -/area/awaymission/listeningpost) -"J" = ( -/obj/structure/toilet{ - icon_state = "toilet00"; - dir = 8 - }, -/turf/open/floor/plasteel/freezer, -/area/awaymission/listeningpost) -"K" = ( -/turf/closed/mineral/clown, -/area/ruin/unpowered/no_grav) -"L" = ( -/turf/closed/wall/shuttle{ - icon_state = "wall3" - }, -/area/ruin/unpowered/no_grav) -"M" = ( -/turf/open/floor/plasteel/airless/circuit/gcircuit, -/area/ruin/unpowered/no_grav) -"N" = ( -/turf/closed/wall/r_wall, -/area/ruin/unpowered/no_grav) -"O" = ( -/turf/open/space, -/area/ruin/unpowered/no_grav) -"P" = ( -/turf/open/floor/plasteel, -/area/ruin/unpowered/no_grav) -"Q" = ( -/obj/machinery/door/airlock, -/turf/open/floor/plasteel, -/area/ruin/unpowered/no_grav) -"R" = ( -/turf/closed/wall, -/area/ruin/unpowered/no_grav) +"a" = (/turf/open/space,/area/space) +"b" = (/turf/closed/mineral,/area/ruin/unpowered/no_grav) +"c" = (/turf/closed/wall/r_wall,/area/awaymission/listeningpost) +"d" = (/turf/open/floor/plating,/area/awaymission/listeningpost) +"e" = (/obj/machinery/power/smes/magical{desc = "A high-capacity superconducting magnetic energy storage (SMES) unit.";name = "power storage unit"},/turf/open/floor/plating,/area/awaymission/listeningpost) +"f" = (/obj/machinery/door/airlock,/turf/open/floor/plasteel,/area/awaymission/listeningpost) +"g" = (/turf/closed/wall,/area/awaymission/listeningpost) +"h" = (/obj/structure/table,/obj/item/weapon/paper/monitorkey,/obj/item/device/radio/intercom{desc = "Talk through this. Evilly";freerange = 1;frequency = 1213;name = "Syndicate Intercom";pixel_x = 32;subspace_transmission = 1;syndie = 1},/obj/item/clothing/glasses/regular,/turf/open/floor/plasteel,/area/awaymission/listeningpost) +"i" = (/obj/structure/table,/turf/open/floor/plasteel,/area/awaymission/listeningpost) +"j" = (/turf/open/floor/plasteel,/area/awaymission/listeningpost) +"k" = (/obj/machinery/door/airlock/external,/turf/open/floor/plating,/area/awaymission/listeningpost) +"l" = (/turf/open/floor/plating/asteroid/airless,/area/ruin/unpowered/no_grav) +"m" = (/obj/machinery/computer/message_monitor,/turf/open/floor/plasteel,/area/awaymission/listeningpost) +"n" = (/obj/structure/chair{dir = 4},/mob/living/simple_animal/hostile/syndicate{desc = "A weary looking syndicate operative."},/turf/open/floor/plasteel,/area/awaymission/listeningpost) +"o" = (/obj/structure/table,/obj/item/weapon/paper{info = "Nothing of interest to report.";name = "november report"},/obj/item/weapon/pen,/turf/open/floor/plasteel,/area/awaymission/listeningpost) +"p" = (/obj/item/device/radio/intercom{desc = "Talk through this. Evilly";freerange = 1;frequency = 1213;name = "Syndicate Intercom";pixel_x = 32;subspace_transmission = 1;syndie = 1},/turf/open/floor/plasteel,/area/awaymission/listeningpost) +"q" = (/obj/structure/rack,/obj/item/clothing/suit/space/syndicate,/obj/item/clothing/mask/gas,/obj/item/clothing/head/helmet/space/syndicate,/turf/open/floor/plasteel,/area/awaymission/listeningpost) +"r" = (/obj/machinery/door/airlock,/obj/structure/safe/floor,/obj/item/weapon/paper{info = "I wonder how much longer they will accept my empty reports. They will cancel the case soon without results. When the pickup comes, I will tell them I have lost faith in our cause, and beg them to consider a diplomatic solution. How many nuclear teams have been dispatched with those nukes? I must try and prevent more from ever being sent. If they will not listen to reason, I will detonate the warehouse myself. Maybe some day in the immediate future, space will be peaceful, though I don't intend to live to see it. And that is why I write this down- it is my sacrifice that stabilised your worlds, traveller. Spare a thought for me, and please attempt to prevent nuclear proliferation, should it ever rear it's ugly head again. -Donk Co. Operative #451";name = "odd report"},/obj/item/weapon/gun/projectile/automatic/pistol,/turf/open/floor/plasteel,/area/awaymission/listeningpost) +"s" = (/obj/structure/disposalpipe/segment{dir = 4;icon_state = "pipe-c"},/turf/closed/mineral,/area/ruin/unpowered/no_grav) +"t" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/closed/mineral,/area/ruin/unpowered/no_grav) +"u" = (/obj/structure/disposaloutlet{dir = 4},/obj/structure/disposalpipe/trunk{dir = 8},/turf/open/floor/plating/airless,/area/ruin/unpowered/no_grav) +"v" = (/obj/structure/bed,/obj/item/weapon/bedsheet/brown,/turf/open/floor/plasteel,/area/awaymission/listeningpost) +"w" = (/obj/structure/table,/obj/item/device/flashlight/lamp,/turf/open/floor/plasteel,/area/awaymission/listeningpost) +"x" = (/obj/machinery/vending/snack,/turf/open/floor/plasteel,/area/awaymission/listeningpost) +"y" = (/obj/structure/disposalpipe/segment,/turf/closed/mineral,/area/ruin/unpowered/no_grav) +"z" = (/obj/machinery/vending/cola,/turf/open/floor/plasteel,/area/ruin/unpowered/no_grav) +"A" = (/obj/structure/closet,/obj/item/clothing/gloves/boxing,/turf/open/floor/plasteel,/area/ruin/unpowered/no_grav) +"B" = (/obj/structure/filingcabinet,/obj/item/weapon/paper{info = "A good start to the operation: intercepted Nanotrasen military communications. A convoy is scheduled to transfer nuclear warheads to a new military base. This is as good a chance as any to get our hands on some heavy weaponry, I suggest we take it.";name = "april report"},/obj/item/weapon/paper{info = "Nothing of real interest to report this month. I have intercepted faint transmissions from what appears to be some sort of pirate radio station. They do not appear to be relevant to my assignment.";name = "may report"},/obj/item/weapon/paper{info = "Nanotrasen communications have been noticably less frequent recently. The pirate radio station I found last month has been transmitting pro-Nanotrasen propaganda. I will continue to monitor it.";name = "june report"},/obj/item/weapon/paper{info = "Nothing of interest to report.";name = "july report"},/obj/item/weapon/paper{info = "Nothing of interest to report.";name = "august report"},/obj/item/weapon/paper{info = "Nothing of interest to report.";name = "september report"},/obj/item/weapon/paper{info = "Nothing of interest to report.";name = "october report"},/obj/item/weapon/paper{info = "1 x Stechtkin pistol - $600
1 x silencer - $200
shipping charge - $4360
total - $5160";name = "receipt"},/turf/open/floor/plasteel,/area/ruin/unpowered/no_grav) +"C" = (/obj/structure/table,/obj/item/weapon/paper{info = "Mission Details: You have been assigned to a newly constructed listening post constructed within an asteroid in Nanotrasen space to monitor their plasma mining operations. Accurate intel is crucial to the success of our operatives onboard, do not fail us.";name = "mission briefing"},/turf/open/floor/plasteel,/area/ruin/unpowered/no_grav) +"D" = (/obj/machinery/disposal/bin,/obj/structure/disposalpipe/trunk{dir = 4},/turf/open/floor/plasteel,/area/ruin/unpowered/no_grav) +"E" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/closed/wall/r_wall,/area/ruin/unpowered/no_grav) +"F" = (/obj/structure/disposalpipe/segment{dir = 8;icon_state = "pipe-c"},/turf/closed/mineral,/area/ruin/unpowered/no_grav) +"G" = (/obj/machinery/door/airlock{name = "Toilet"},/turf/open/floor/plasteel,/area/ruin/unpowered/no_grav) +"H" = (/turf/open/floor/plasteel/freezer,/area/ruin/unpowered/no_grav) +"I" = (/obj/machinery/shower{icon_state = "shower";dir = 8},/turf/open/floor/plasteel/freezer,/area/ruin/unpowered/no_grav) +"J" = (/obj/structure/toilet{icon_state = "toilet00";dir = 8},/turf/open/floor/plasteel/freezer,/area/ruin/unpowered/no_grav) +"K" = (/turf/closed/mineral/clown,/area/ruin/unpowered/no_grav) +"L" = (/turf/closed/wall/shuttle{icon_state = "wall3"},/area/ruin/unpowered/no_grav) +"M" = (/turf/open/floor/plasteel/airless/circuit/gcircuit,/area/ruin/unpowered/no_grav) +"N" = (/turf/closed/wall/r_wall,/area/ruin/unpowered/no_grav) +"O" = (/turf/open/space,/area/ruin/unpowered/no_grav) +"P" = (/turf/open/floor/plasteel,/area/ruin/unpowered/no_grav) +"Q" = (/obj/machinery/door/airlock,/turf/open/floor/plasteel,/area/ruin/unpowered/no_grav) +"R" = (/turf/closed/wall,/area/ruin/unpowered/no_grav) (1,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -b -b -b -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(2,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -b -b -b -b -b -b -b -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(3,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -b -b -b -b -b -b -b -b -b -b -b -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(4,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(5,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(6,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(7,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(8,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(9,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(10,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(11,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(12,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(13,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(14,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(15,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(16,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -b -b -b -b -b -b -b -b -b -b -b -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(17,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -b -b -b -b -b -b -b -b -b -b -l -l -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(18,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -b -b -b -b -b -b -b -b -b -b -b -l -l -b -b -b -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(19,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(20,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(21,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(22,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -b -b -a -a -a -a -a -a -a -a -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -a -a -a -a -a -a -b -b -b -a -a -a -a -a -a -a -a -"} -(23,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -b -b -b -b -b -a -a -a -a -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -a -a -a -a -b -b -b -b -b -a -a -a -a -a -a -a -a -"} -(24,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -b -b -b -b -b -b -b -a -a -a -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -a -a -a -a -b -b -b -b -b -b -b -a -a -a -a -a -a -"} -(25,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -a -a -a -a -b -b -b -b -b -b -b -b -a -a -a -a -a -a -"} -(26,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -a -a -a -a -a -b -b -b -b -b -b -b -b -b -a -a -a -a -a -"} -(27,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -l -a -a -a -a -b -b -b -b -b -b -b -b -b -b -b -a -a -a -a -a -"} -(28,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -b -b -a -a -a -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -l -l -l -l -b -b -b -b -b -b -b -b -b -b -b -b -b -a -a -a -a -a -"} -(29,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -a -a -a -a -a -"} -(30,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -a -a -a -a -"} -(31,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -L -l -b -b -b -b -l -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -a -a -a -"} -(32,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -L -M -M -b -M -l -l -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -a -a -a -"} -(33,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -L -M -M -M -M -M -L -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -a -a -a -"} -(34,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -L -M -M -M -M -M -L -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -a -a -a -"} -(35,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -K -K -K -b -b -b -b -K -b -b -b -b -b -b -b -L -M -M -M -M -M -L -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -a -a -"} -(36,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -K -K -b -b -b -b -b -b -b -b -b -b -b -b -L -M -M -M -M -M -L -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -a -a -"} -(37,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -L -L -L -L -L -L -L -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -"} -(38,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -"} -(39,1,1) = {" -a -b -b -b -a -a -a -a -a -a -a -a -a -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -K -b -b -b -b -b -b -b -K -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -"} -(40,1,1) = {" -a -b -b -b -b -a -a -a -a -a -a -a -a -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -K -K -b -b -b -b -b -b -K -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -"} -(41,1,1) = {" -b -b -b -b -b -a -a -b -b -b -b -a -a -a -l -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -"} -(42,1,1) = {" -b -b -b -b -b -b -b -b -b -b -b -b -l -l -l -l -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -K -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -"} -(43,1,1) = {" -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -K -b -b -b -b -b -b -b -b -b -b -K -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -"} -(44,1,1) = {" -a -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -K -b -K -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -a -"} -(45,1,1) = {" -a -a -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -a -a -"} -(46,1,1) = {" -a -a -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -a -a -"} -(47,1,1) = {" -a -a -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -l -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -a -a -"} -(48,1,1) = {" -a -a -a -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -l -l -l -l -l -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -a -a -"} -(49,1,1) = {" -a -a -a -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -l -l -l -a -a -a -a -a -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -a -a -a -a -a -"} -(50,1,1) = {" -a -a -a -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -l -a -a -a -a -a -a -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -a -a -a -a -a -a -a -a -"} -(51,1,1) = {" -a -a -a -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -l -a -a -a -a -b -b -b -b -b -b -b -b -b -l -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -a -a -a -a -a -a -a -a -a -a -"} -(52,1,1) = {" -a -a -a -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -a -a -a -a -b -b -b -b -b -b -b -b -b -l -l -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(53,1,1) = {" -a -a -a -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -a -a -b -b -b -b -b -b -b -b -b -b -l -a -l -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(54,1,1) = {" -a -a -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -l -a -l -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(55,1,1) = {" -a -a -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -l -a -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(56,1,1) = {" -a -a -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -a -a -b -b -b -b -b -b -b -b -b -b -b -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(57,1,1) = {" -a -a -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -a -a -a -a -a -b -b -b -b -b -b -b -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(58,1,1) = {" -a -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(59,1,1) = {" -a -b -b -b -b -b -b -b -b -b -b -b -b -b -b -c -c -c -c -c -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -a -a -b -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(60,1,1) = {" -a -b -b -b -b -b -b -b -b -b -b -b -b -b -b -c -v -j -A -c -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(61,1,1) = {" -a -b -b -b -b -b -b -b -b -b -b -c -c -c -b -c -w -j -B -c -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(62,1,1) = {" -a -b -b -b -b -b -b -b -b -b -c -c -m -c -c -c -g -f -g -c -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(63,1,1) = {" -a -b -b -b -b -b -b -b -b -b -c -h -n -p -j -r -j -j -C -c -c -c -c -b -b -b -b -b -b -b -b -b -b -b -b -b -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(64,1,1) = {" -a -b -b -b -b -b -b -b -c -c -c -i -o -i -j -g -j -j -j -G -H -H -c -b -b -b -b -b -b -b -b -b -b -b -b -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(65,1,1) = {" -a -b -b -b -b -b -b -b -c -d -f -j -j -j -j -g -j -j -D -g -I -J -c -b -b -b -b -b -b -b -b -b -b -b -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(66,1,1) = {" -a -b -b -b -b -b -b -b -c -e -g -j -j -j -q -g -x -z -E -c -c -c -c -b -b -b -b -b -b -b -b -b -b -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(67,1,1) = {" -a -b -b -b -b -b -b -b -c -c -c -k -k -c -c -c -c -c -E -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(68,1,1) = {" -a -a -b -b -b -b -b -b -b -b -c -d -d -c -b -b -b -b -t -b -b -b -b -b -b -b -b -b -b -b -b -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(69,1,1) = {" -a -a -b -b -b -b -b -b -b -b -c -d -d -c -b -s -y -y -F -b -b -b -b -b -b -b -b -b -b -b -b -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(70,1,1) = {" -a -a -a -a -b -b -b -b -b -b -c -k -k -c -b -t -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(71,1,1) = {" -a -a -a -a -a -a -b -b -b -b -a -a -a -a -b -t -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(72,1,1) = {" -a -a -a -a -a -a -a -b -b -b -a -a -a -a -a -u -b -b -b -b -b -b -b -b -b -b -b -b -b -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(73,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -b -b -b -b -b -b -b -b -b -b -b -b -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(74,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -b -b -b -b -b -b -b -b -b -b -b -b -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(75,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -b -a -b -b -b -b -b -b -b -b -b -b -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(76,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -a -a -a -b -b -b -b -b -b -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} -(77,1,1) = {" -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -b -b -b -b -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbaaaaaaaaaaaaabbbbbbbbbbaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbaaaaaabbbbbbbbbbbbbbbbaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbccccbbbbbaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbcdecbbbbbaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbNccfgccccaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbcchijjkddkaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalbbbbbbbbbbbbbbbbbbcmnojjkddkaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbOlbbbbbbbbbbbbbbbbbbccpijjccccaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbllbbbbbbbbbbbbbbbbbbbcjjjqcbbbbaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbblbbbbbbbbbbbbbbbbccccrgggcbsttuaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbcvwgjjjxcbybbbbbbaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbNPPQPPPzNbybbbbbbba +aaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbNABRCPDEEtFbbbbbaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbNNNNNGRNbbbbbbbbbaa +aaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbNHINbbbbbbbbbaa +aaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbNHJNbbbbbbbbbba +aaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbNNNNbbbbbbbbbbb +aaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb +aaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb +aaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb +aaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +aaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +aaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaa +aaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaa +aaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbblllbbbbbbbbbbbbbbbbbbbbaaaaaa +aaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbKKbbbbbbbllaaabbbbbbbbbbbbbbbbbaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbKbbKbbblllaaaabbbbbbbbbbbbbbaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbKbbbbbbbbbbbblaaaaabbbbbbbbbbbbbbaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbKKbbbbbbbbbbblaaaabbbbbbbbbbbbbaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbKKbbbbbbbbbbblaabbbbbbbbbbbbbbaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbKbbbbbbaabbbbbbbbbbbbbaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbabbbbbbbbbbbbaaaaaaaaaaaaaaaa +aaaaaabbbbaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaa +aaaaabbbbbbbaaaaaabbbbbbbbbbbbbbbbbbbbKKbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaa +aaaabbbbbbbbbbbaaabbbbbbbbbbbbbbbbKbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaa +aaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbKbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaa +aaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaa +aaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbKKbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaa +aabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbblllllbbbbaaaaaaaaaaaaaaaaaa +aabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbblaaaabbaaaaaaaaaaaaaaaaaaa +aabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbllbaaaaaaaaaaaaaaaaaaaaaa +aabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaa +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbLLLLLLLbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaa +abbbbbbbbbbbbbbbbbbbbbbbbbbbbblMMMMMLbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaa +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbMMMMMLbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaa +bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbMMMMLbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaa +bbbbbbbbbbbbbbbblbbbbbbbbbbbbbbMMMMMLbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaa +bbbbbbbbbbbbbbbbllbbbbbbbbbbbbblMMMMLbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaa +bbbbbbbbbbbbbbbaalbbbbbbbbbbbbllLLLLLbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaa +bbbbbbbbbbbbbaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaa +abbbbbbbbbbbaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaa +aaaaabbbbbbaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaabbbbbbbbbblbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaabbbbbbbbllbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaabbbbbbbbalbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaabbbbbbbaalbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaabbbbaaabbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa "} diff --git a/_maps/RandomRuins/SpaceRuins/mechtransport.dmm b/_maps/RandomRuins/SpaceRuins/mechtransport.dmm index 21462e9364..f9d7df2278 100644 --- a/_maps/RandomRuins/SpaceRuins/mechtransport.dmm +++ b/_maps/RandomRuins/SpaceRuins/mechtransport.dmm @@ -1,382 +1,68 @@ -//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE -"a" = ( -/turf/open/space, -/area/space) -"b" = ( -/turf/closed/wall/mineral/titanium/overspace, -/area/ruin/powered/mechtransport) -"c" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/ruin/powered/mechtransport) -"d" = ( -/turf/closed/wall/shuttle{ - icon_state = "swall_s10"; - dir = 2 - }, -/area/ruin/powered/mechtransport) -"e" = ( -/turf/closed/wall/mineral/titanium, -/area/ruin/powered/mechtransport) -"f" = ( -/obj/structure/closet/crate/secure/loot, -/obj/effect/decal/cleanable/cobweb, -/turf/open/floor/mineral/titanium/blue, -/area/ruin/powered/mechtransport) -"g" = ( -/obj/structure/closet/crate/secure/loot, -/turf/open/floor/mineral/titanium/blue, -/area/ruin/powered/mechtransport) -"h" = ( -/obj/structure/table, -/obj/machinery/button/door{ - id = "mechaship1"; - name = "Mecha Cargo Ship Doors" - }, -/turf/open/floor/mineral/titanium/blue, -/area/ruin/powered/mechtransport) -"i" = ( -/obj/structure/table, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/mineral/titanium/blue, -/area/ruin/powered/mechtransport) -"j" = ( -/obj/machinery/computer/shuttle, -/turf/open/floor/mineral/titanium/blue, -/area/ruin/powered/mechtransport) -"k" = ( -/obj/effect/decal/cleanable/vomit/old, -/turf/open/floor/mineral/titanium/blue, -/area/ruin/powered/mechtransport) -"l" = ( -/obj/effect/decal/remains/human, -/turf/open/floor/mineral/titanium/blue, -/area/ruin/powered/mechtransport) -"m" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/mineral/titanium/blue, -/area/ruin/powered/mechtransport) -"n" = ( -/obj/structure/chair/office/dark{ - dir = 1 - }, -/turf/open/floor/mineral/titanium/blue, -/area/ruin/powered/mechtransport) -"o" = ( -/turf/closed/wall/shuttle{ - icon_state = "swall13"; - dir = 2 - }, -/area/ruin/powered/mechtransport) -"p" = ( -/obj/machinery/door/airlock/hatch{ - name = "Cockpit"; - req_access_txt = "101" - }, -/turf/open/floor/mineral/titanium, -/area/ruin/powered/mechtransport) -"q" = ( -/turf/closed/wall/shuttle{ - icon_state = "swall12"; - dir = 2 - }, -/area/ruin/powered/mechtransport) -"r" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/cobweb, -/turf/open/floor/mineral/titanium, -/area/ruin/powered/mechtransport) -"s" = ( -/turf/open/floor/mineral/titanium, -/area/ruin/powered/mechtransport) -"t" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/mineral/titanium, -/area/ruin/powered/mechtransport) -"u" = ( -/obj/effect/decal/cleanable/cobweb/cobweb2, -/turf/open/floor/mineral/titanium, -/area/ruin/powered/mechtransport) -"v" = ( -/obj/structure/mecha_wreckage/phazon, -/turf/open/floor/mineral/titanium/yellow, -/area/ruin/powered/mechtransport) -"w" = ( -/turf/open/floor/mineral/titanium/yellow, -/area/ruin/powered/mechtransport) -"x" = ( -/obj/structure/mecha_wreckage/ripley/firefighter, -/turf/open/floor/mineral/titanium/yellow, -/area/ruin/powered/mechtransport) -"y" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/mineral/titanium/yellow, -/area/ruin/powered/mechtransport) -"z" = ( -/obj/structure/mecha_wreckage/ripley, -/turf/open/floor/mineral/titanium/yellow, -/area/ruin/powered/mechtransport) -"A" = ( -/obj/mecha/working/ripley, -/turf/open/floor/mineral/titanium/yellow, -/area/ruin/powered/mechtransport) -"B" = ( -/obj/effect/decal/cleanable/oil, -/turf/open/floor/mineral/titanium/yellow, -/area/ruin/powered/mechtransport) -"C" = ( -/obj/effect/decal/cleanable/robot_debris/up, -/turf/open/floor/mineral/titanium/yellow, -/area/ruin/powered/mechtransport) -"D" = ( -/obj/machinery/door/poddoor{ - id = "mechaship1"; - name = "Cargo Bay Door" - }, -/turf/open/floor/mineral/titanium/yellow, -/area/ruin/powered/mechtransport) -"E" = ( -/obj/effect/decal/cleanable/robot_debris, -/turf/open/floor/mineral/titanium/yellow, -/area/ruin/powered/mechtransport) -"F" = ( -/obj/structure/mecha_wreckage/durand, -/turf/open/floor/mineral/titanium/yellow, -/area/ruin/powered/mechtransport) -"G" = ( -/obj/item/stack/tile/plasteel, -/turf/open/floor/plating/airless, -/area/ruin/powered/mechtransport) -"H" = ( -/turf/open/floor/plating/airless, -/area/ruin/powered/mechtransport) -"I" = ( -/obj/structure/lattice, -/turf/open/space, -/area/space) -"J" = ( -/obj/machinery/computer/mecha, -/turf/open/floor/mineral/titanium/blue, -/area/ruin/powered/mechtransport) -"K" = ( -/obj/effect/decal/cleanable/robot_debris/gib, -/turf/open/floor/plating/airless, -/area/ruin/powered/mechtransport) -"L" = ( -/obj/effect/decal/cleanable/robot_debris, -/obj/item/stack/tile/plasteel, -/turf/open/floor/mineral/titanium/yellow, -/area/ruin/powered/mechtransport) -"M" = ( -/turf/open/floor/plating/airless{ - broken = 1; - icon_state = "platingdmg1" - }, -/area/ruin/powered/mechtransport) -"N" = ( -/turf/open/floor/plating/airless{ - icon_state = "platingdmg2" - }, -/area/ruin/powered/mechtransport) -"O" = ( -/obj/structure/mecha_wreckage/odysseus, -/turf/open/floor/mineral/titanium/yellow, -/area/ruin/powered/mechtransport) -"P" = ( -/obj/item/stack/sheet/metal, -/turf/open/space, -/area/space) -"Q" = ( -/obj/structure/mecha_wreckage/gygax, -/turf/open/floor/mineral/titanium, -/area/ruin/powered/mechtransport) -"R" = ( -/turf/open/floor/plating/airless{ - icon_state = "platingdmg3" - }, -/area/space) -"S" = ( -/obj/item/stack/rods, -/turf/open/floor/plating/airless, -/area/ruin/powered/mechtransport) -"T" = ( -/turf/closed/wall/shuttle{ - icon_state = "swall14"; - dir = 2 - }, -/area/ruin/powered/mechtransport) -"U" = ( -/turf/closed/wall/shuttle{ - icon_state = "swall_s9"; - dir = 2 - }, -/area/ruin/powered/mechtransport) -"V" = ( -/obj/item/stack/rods, -/turf/open/space, -/area/space) -"W" = ( -/turf/closed/wall/shuttle{ - icon_state = "swall15"; - dir = 2 - }, -/area/ruin/powered/mechtransport) -"X" = ( -/obj/structure/shuttle/engine/propulsion, -/turf/open/space, -/area/ruin/powered/mechtransport) +"a" = (/turf/open/space,/area/space) +"b" = (/turf/closed/wall/shuttle{icon_state = "swall_s6";dir = 2},/area/ruin/powered) +"c" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/ruin/powered) +"d" = (/turf/closed/wall/shuttle{icon_state = "swall_s10";dir = 2},/area/ruin/powered) +"e" = (/turf/closed/wall/shuttle{icon_state = "swall3";dir = 2},/area/ruin/powered) +"f" = (/obj/structure/closet/crate/secure/loot,/obj/effect/decal/cleanable/cobweb,/turf/open/floor/plasteel/shuttle,/area/ruin/powered) +"g" = (/obj/structure/closet/crate/secure/loot,/turf/open/floor/plasteel/shuttle,/area/ruin/powered) +"h" = (/obj/structure/table,/obj/machinery/button/door{id = "mechaship1";name = "Mecha Cargo Ship Doors"},/turf/open/floor/plasteel/shuttle,/area/ruin/powered) +"i" = (/obj/structure/table,/obj/effect/decal/cleanable/dirt,/turf/open/floor/plasteel/shuttle,/area/ruin/powered) +"j" = (/obj/machinery/computer/shuttle,/turf/open/floor/plasteel/shuttle,/area/ruin/powered) +"k" = (/obj/effect/decal/cleanable/vomit/old,/turf/open/floor/plasteel/shuttle,/area/ruin/powered) +"l" = (/obj/effect/decal/remains/human,/turf/open/floor/plasteel/shuttle,/area/ruin/powered) +"m" = (/obj/effect/decal/cleanable/dirt,/turf/open/floor/plasteel/shuttle,/area/ruin/powered) +"n" = (/obj/structure/chair/office/dark{dir = 1},/turf/open/floor/plasteel/shuttle,/area/ruin/powered) +"o" = (/turf/closed/wall/shuttle{icon_state = "swall13";dir = 2},/area/ruin/powered) +"p" = (/obj/machinery/door/airlock/hatch{name = "Cockpit";req_access_txt = "101"},/turf/open/floor/plasteel/shuttle{icon_state = "shuttlefloor3"},/area/ruin/powered) +"q" = (/turf/closed/wall/shuttle{icon_state = "swall12";dir = 2},/area/ruin/powered) +"r" = (/obj/effect/decal/cleanable/dirt,/obj/effect/decal/cleanable/cobweb,/turf/open/floor/plasteel/airless/shuttle/white,/area/ruin/powered) +"s" = (/turf/open/floor/plasteel/airless/shuttle/white,/area/ruin/powered) +"t" = (/obj/effect/decal/cleanable/dirt,/turf/open/floor/plasteel/airless/shuttle/white,/area/ruin/powered) +"u" = (/obj/effect/decal/cleanable/cobweb2,/turf/open/floor/plasteel/airless/shuttle/white,/area/ruin/powered) +"v" = (/obj/structure/mecha_wreckage/phazon,/turf/open/floor/plasteel/airless/shuttle/yellow,/area/ruin/powered) +"w" = (/turf/open/floor/plasteel/airless/shuttle/yellow,/area/ruin/powered) +"x" = (/obj/structure/mecha_wreckage/ripley/firefighter,/turf/open/floor/plasteel/airless/shuttle/yellow,/area/ruin/powered) +"y" = (/obj/effect/decal/cleanable/dirt,/turf/open/floor/plasteel/airless/shuttle/yellow,/area/ruin/powered) +"z" = (/obj/structure/mecha_wreckage/ripley,/turf/open/floor/plasteel/airless/shuttle/yellow,/area/ruin/powered) +"A" = (/obj/mecha/working/ripley,/turf/open/floor/plasteel/airless/shuttle/yellow,/area/ruin/powered) +"B" = (/obj/effect/decal/cleanable/oil,/turf/open/floor/plasteel/airless/shuttle/yellow,/area/ruin/powered) +"C" = (/obj/effect/decal/cleanable/robot_debris/up,/turf/open/floor/plasteel/airless/shuttle/yellow,/area/ruin/powered) +"D" = (/obj/machinery/door/poddoor{id = "mechaship1";name = "Cargo Bay Door"},/turf/open/floor/plasteel/airless/shuttle/yellow,/area/ruin/powered) +"E" = (/obj/effect/decal/cleanable/robot_debris,/turf/open/floor/plasteel/airless/shuttle/yellow,/area/ruin/powered) +"F" = (/obj/structure/mecha_wreckage/durand,/turf/open/floor/plasteel/airless/shuttle/yellow,/area/ruin/powered) +"G" = (/obj/item/stack/tile/plasteel,/turf/open/floor/plating/airless,/area/ruin/powered) +"H" = (/turf/open/floor/plating/airless,/area/ruin/powered) +"I" = (/obj/structure/lattice,/turf/open/space,/area/space) +"J" = (/obj/machinery/computer/mecha,/turf/open/floor/plasteel/shuttle,/area/ruin/powered) +"K" = (/obj/effect/decal/cleanable/robot_debris/gib,/turf/open/floor/plating/airless,/area/ruin/powered) +"L" = (/obj/effect/decal/cleanable/robot_debris,/obj/item/stack/tile/plasteel,/turf/open/floor/plasteel/airless/shuttle/yellow,/area/ruin/powered) +"M" = (/turf/open/floor/plating{icon_state = "platingdmg1";initial_gas_mix = "TEMP=2.7"},/area/ruin/powered) +"N" = (/turf/open/floor/plating{icon_state = "platingdmg2";initial_gas_mix = "TEMP=2.7"},/area/ruin/powered) +"O" = (/obj/structure/mecha_wreckage/odysseus,/turf/open/floor/plasteel/airless/shuttle/yellow,/area/ruin/powered) +"P" = (/obj/item/stack/sheet/metal,/turf/open/space,/area/space) +"Q" = (/obj/structure/mecha_wreckage/gygax,/turf/open/floor/plasteel/airless/shuttle/white,/area/ruin/powered) +"R" = (/turf/open/floor/plating{icon_state = "platingdmg3";initial_gas_mix = "TEMP=2.7"},/area/space) +"S" = (/obj/item/stack/rods,/turf/open/floor/plating/airless,/area/ruin/powered) +"T" = (/turf/closed/wall/shuttle{icon_state = "swall14";dir = 2},/area/ruin/powered) +"U" = (/turf/closed/wall/shuttle{icon_state = "swall_s9";dir = 2},/area/ruin/powered) +"V" = (/obj/item/stack/rods,/turf/open/space,/area/space) +"W" = (/turf/closed/wall/shuttle{icon_state = "swall15";dir = 2},/area/ruin/powered) +"X" = (/obj/structure/shuttle/engine/propulsion,/turf/open/space,/area/ruin/powered) (1,1,1) = {" -a -a -a -b -e -e -e -e -G -I -M -P -a -a -a -"} -(2,1,1) = {" -b -e -e -e -r -v -B -E -H -S -H -I -R -V -a -"} -(3,1,1) = {" -c -f -k -p -s -w -w -F -w -H -N -I -I -a -a -"} -(4,1,1) = {" -c -g -l -e -t -w -C -G -F -w -G -H -P -a -a -"} -(5,1,1) = {" -c -h -m -e -s -x -w -w -y -K -O -s -S -I -a -"} -(6,1,1) = {" -c -i -n -e -t -y -z -w -H -L -O -H -H -a -a -"} -(7,1,1) = {" -c -j -J -e -t -z -w -w -y -w -w -Q -e -b -X -"} -(8,1,1) = {" -b -e -e -e -u -A -y -w -w -B -y -s -e -e -X -"} -(9,1,1) = {" -a -a -a -b -e -e -D -D -D -D -D -e -b -b -X +abcccccda +aefghijea +aeklmnJea +bopqqqqod +erststtue +evwwxyzAe +eBwCwzwyD +eEFGwwwwD +GHwFyHywD +ISHwKLwBD +MHNGOOwyD +PIIHsHQse +aRIPSHqTU +aVaaIabWd +aaaaaaXXX "} diff --git a/_maps/RandomRuins/SpaceRuins/miracle.dmm b/_maps/RandomRuins/SpaceRuins/miracle.dmm deleted file mode 100644 index 40a4e2b6ae..0000000000 --- a/_maps/RandomRuins/SpaceRuins/miracle.dmm +++ /dev/null @@ -1,5 +0,0 @@ -"a" = (/obj/item/weapon/storage/backpack/satchel/flat/secret{reward_all_of_these = list(/obj/item/weapon/gun/energy/pulse/prize)},/turf/open/floor/fakespace,/area/ruin/fakespace) - -(1,1,1) = {" -a -"} diff --git a/_maps/RandomRuins/SpaceRuins/oldAIsat.dmm b/_maps/RandomRuins/SpaceRuins/oldAIsat.dmm index de102b742e..76aafafcc0 100644 --- a/_maps/RandomRuins/SpaceRuins/oldAIsat.dmm +++ b/_maps/RandomRuins/SpaceRuins/oldAIsat.dmm @@ -1,160 +1,164 @@ "aa" = (/turf/open/space,/area/space) "ab" = (/obj/structure/lattice,/turf/open/space,/area/space) -"ac" = (/turf/open/floor/plating/airless,/area/tcommsat/chamber) +"ac" = (/turf/open/floor/plating/airless,/area/space) "ad" = (/obj/structure/lattice,/obj/structure/grille/broken,/turf/open/space,/area/space) "ae" = (/obj/structure/lattice,/obj/structure/grille,/turf/open/space,/area/space) "af" = (/obj/structure/grille,/turf/open/floor/plating/airless,/area/space) -"ag" = (/turf/closed/wall/r_wall,/area/tcommsat/chamber) -"ah" = (/obj/structure/girder,/turf/open/floor/plating/airless,/area/tcommsat/chamber) -"ai" = (/obj/structure/window/reinforced{dir = 4},/turf/open/space,/area/space) -"aj" = (/obj/structure/window/reinforced{dir = 8},/turf/open/floor/plating/airless,/area/tcommsat/chamber) -"ak" = (/obj/machinery/power/apc{cell_type = 2500; dir = 1; name = "Worn-out APC"; pixel_x = 1; pixel_y = 26},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/open/floor/plating/airless,/area/tcommsat/chamber) -"al" = (/obj/machinery/light/small{dir = 1},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/open/floor/plating/airless,/area/tcommsat/chamber) -"am" = (/obj/item/weapon/stock_parts/cell,/turf/open/floor/plating/airless,/area/tcommsat/chamber) -"an" = (/obj/machinery/portable_atmospherics/canister/air,/turf/open/floor/plating/airless,/area/tcommsat/chamber) -"ao" = (/obj/item/weapon/coin/clown,/turf/open/floor/engine,/area/tcommsat/chamber) -"ap" = (/obj/structure/bed,/turf/open/floor/plasteel/airless,/area/tcommsat/chamber) -"aq" = (/obj/machinery/light/small{dir = 1},/turf/open/floor/plasteel/airless,/area/tcommsat/chamber) -"ar" = (/turf/open/floor/plasteel/airless{icon_state = "damaged2"},/area/tcommsat/chamber) -"as" = (/turf/open/floor/plasteel/airless{icon_state = "damaged3"},/area/tcommsat/chamber) -"at" = (/obj/structure/lattice,/obj/structure/window/reinforced{dir = 4},/turf/open/space,/area/space) -"au" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plating/airless,/area/tcommsat/chamber) -"av" = (/obj/item/weapon/wrench,/turf/open/floor/plating/airless,/area/tcommsat/chamber) -"aw" = (/obj/structure/window/reinforced{dir = 4},/obj/machinery/portable_atmospherics/canister/air,/turf/open/floor/plating/airless,/area/tcommsat/chamber) -"ax" = (/obj/structure/lattice,/obj/structure/window/reinforced{dir = 8},/turf/open/space,/area/space) -"ay" = (/obj/effect/spawner/lootdrop/crate_spawner,/turf/open/floor/plasteel/airless,/area/tcommsat/chamber) -"az" = (/turf/open/floor/plasteel/airless,/area/tcommsat/chamber) -"aA" = (/obj/structure/table,/obj/item/weapon/paper,/turf/open/floor/plasteel/airless,/area/tcommsat/chamber) -"aB" = (/obj/structure/table,/obj/item/weapon/paper_bin,/obj/item/weapon/pen/blue,/obj/machinery/light/small{dir = 1},/turf/open/floor/plasteel/airless,/area/tcommsat/chamber) -"aC" = (/obj/structure/frame/computer,/turf/open/floor/plasteel/airless,/area/tcommsat/chamber) -"aD" = (/obj/structure/table,/turf/open/floor/plasteel/airless,/area/tcommsat/chamber) -"aE" = (/obj/item/weapon/reagent_containers/food/snacks/meat/slab/synthmeat{name = "Cuban Pete-Meat"},/turf/open/floor/engine,/area/tcommsat/chamber) -"aF" = (/obj/structure/grille,/turf/open/floor/plasteel/airless,/area/tcommsat/chamber) -"aG" = (/obj/structure/grille/broken,/turf/open/floor/plasteel/airless,/area/tcommsat/chamber) -"aH" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/turf/open/floor/plating/airless,/area/tcommsat/chamber) -"aI" = (/obj/structure/window/reinforced,/turf/open/floor/plating/airless,/area/tcommsat/chamber) -"aJ" = (/obj/item/stack/cable_coil/cut{amount = 1},/turf/open/floor/plating/airless,/area/tcommsat/chamber) -"aK" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/closet,/turf/open/floor/plating/airless,/area/tcommsat/chamber) -"aL" = (/obj/structure/window/reinforced{dir = 8},/turf/open/space,/area/space) -"aM" = (/obj/item/weapon/folder/yellow,/turf/open/floor/plasteel/airless,/area/tcommsat/chamber) -"aN" = (/obj/structure/bed,/obj/effect/decal/remains/human,/turf/open/floor/plasteel/airless,/area/tcommsat/chamber) -"aO" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/lattice,/turf/open/space,/area/space) -"aP" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/lattice,/turf/open/space,/area/space) -"aQ" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plating/airless,/area/tcommsat/chamber) -"aR" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/turf/open/space,/area/space) -"aS" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/turf/open/space,/area/space) -"aT" = (/obj/structure/window/reinforced,/turf/open/space,/area/space) -"aU" = (/obj/structure/sign/securearea,/turf/closed/wall/r_wall,/area/tcommsat/chamber) -"aV" = (/obj/machinery/light/small{dir = 8},/turf/open/floor/plasteel/airless,/area/tcommsat/chamber) -"aW" = (/obj/item/weapon/paper/crumpled,/turf/open/floor/plasteel/airless,/area/tcommsat/chamber) -"aX" = (/obj/item/weapon/reagent_containers/food/snacks/meat/slab/synthmeat{name = "Cuban Pete-Meat"},/obj/item/stack/spacecash,/turf/open/floor/engine,/area/tcommsat/chamber) -"aY" = (/obj/structure/chair{dir = 4},/turf/open/floor/plasteel/airless,/area/tcommsat/chamber) -"aZ" = (/obj/structure/table,/obj/item/weapon/storage/fancy/cigarettes,/turf/open/floor/plasteel/airless,/area/tcommsat/chamber) -"ba" = (/obj/structure/chair{dir = 8},/turf/open/floor/plasteel/airless,/area/tcommsat/chamber) -"bb" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/turf/open/floor/plasteel/airless/black,/area/tcommsat/chamber) -"bc" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/turf/open/floor/plasteel/airless/black,/area/tcommsat/chamber) -"bd" = (/obj/structure/window/reinforced,/turf/open/floor/plasteel/airless/black,/area/tcommsat/chamber) -"be" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/item/weapon/electronics/airlock,/turf/open/floor/plasteel/airless/black,/area/tcommsat/chamber) -"bf" = (/obj/structure/door_assembly/door_assembly_hatch,/turf/open/floor/plasteel/airless,/area/tcommsat/chamber) -"bg" = (/obj/item/weapon/cigbutt,/turf/open/floor/plasteel/airless,/area/tcommsat/chamber) -"bh" = (/obj/machinery/vending/snack,/turf/open/floor/plasteel/airless,/area/tcommsat/chamber) -"bi" = (/obj/machinery/vending/cola,/turf/open/floor/plasteel/airless,/area/tcommsat/chamber) -"bj" = (/obj/structure/chair{dir = 1},/turf/open/floor/plasteel/airless,/area/tcommsat/chamber) -"bk" = (/obj/machinery/disposal/bin,/obj/structure/disposalpipe/trunk{dir = 4},/turf/open/floor/plasteel/airless,/area/tcommsat/chamber) -"bl" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/closed/wall/r_wall,/area/tcommsat/chamber) -"bm" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/grille/broken,/turf/open/floor/plating/airless,/area/tcommsat/chamber) -"bn" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plating/airless,/area/tcommsat/chamber) -"bo" = (/obj/structure/disposaloutlet{dir = 4},/obj/structure/disposalpipe/trunk{dir = 8},/turf/open/floor/plating/airless,/area/tcommsat/chamber) -"bp" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plasteel/airless/black,/area/tcommsat/chamber) -"bq" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/turf/open/space,/area/space) -"br" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/lattice,/turf/open/space,/area/space) -"bs" = (/obj/structure/window/reinforced{dir = 1},/turf/open/space,/area/space) -"bt" = (/obj/structure/table,/obj/item/device/radio/off,/turf/open/floor/plasteel/airless,/area/tcommsat/chamber) -"bu" = (/obj/structure/chair,/turf/open/floor/plasteel/airless,/area/tcommsat/chamber) -"bv" = (/obj/machinery/door/airlock/maintenance_hatch,/turf/open/floor/plasteel/airless/black,/area/tcommsat/chamber) -"bw" = (/turf/open/floor/plasteel/airless/black,/area/tcommsat/chamber) -"bx" = (/obj/machinery/door/airlock/hatch,/turf/open/floor/plasteel/airless/black,/area/tcommsat/chamber) -"by" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/lattice,/turf/open/space,/area/space) -"bz" = (/obj/structure/window/reinforced{dir = 8},/obj/item/weapon/shard{icon_state = "medium"},/turf/open/floor/plasteel/airless/black,/area/tcommsat/chamber) -"bA" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/turf/open/floor/plating/airless,/area/tcommsat/chamber) -"bB" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/turf/open/floor/plating/airless,/area/tcommsat/chamber) -"bC" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/turf/open/floor/plating/airless,/area/tcommsat/chamber) -"bD" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plating/airless,/area/tcommsat/chamber) -"bE" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/turf/open/floor/plasteel/airless/black,/area/tcommsat/chamber) -"bF" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/lattice,/turf/open/space,/area/space) -"bG" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/item/stack/rods,/turf/open/floor/plasteel/airless/black,/area/tcommsat/chamber) -"bH" = (/obj/item/stack/rods,/obj/item/weapon/shard{icon_state = "medium"},/turf/open/floor/plating/airless,/area/tcommsat/chamber) -"bI" = (/obj/structure/window/reinforced{dir = 8},/turf/open/floor/plasteel/airless/black,/area/tcommsat/chamber) -"bJ" = (/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plasteel/airless/black,/area/tcommsat/chamber) -"bK" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/turf/open/floor/plating,/area/tcommsat/chamber) -"bL" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/turf/open/floor/plating,/area/tcommsat/chamber) -"bM" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/turf/open/floor/plating,/area/tcommsat/chamber) -"bN" = (/obj/effect/decal/cleanable/blood,/obj/item/weapon/scalpel{pixel_y = 12},/turf/open/floor/plasteel/airless/black,/area/tcommsat/chamber) -"bO" = (/obj/structure/window/reinforced{dir = 4},/obj/item/weapon/shard{icon_state = "medium"},/turf/open/floor/plasteel/airless/black,/area/tcommsat/chamber) -"bP" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/turf/open/floor/plating,/area/tcommsat/chamber) -"bQ" = (/obj/structure/rack,/obj/item/weapon/circuitboard/computer/teleporter,/turf/open/floor/plasteel/airless,/area/tcommsat/chamber) -"bR" = (/obj/item/device/radio/off,/turf/open/floor/plasteel/airless/black,/area/tcommsat/chamber) -"bS" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/turf/open/floor/plating,/area/tcommsat/chamber) -"bT" = (/obj/effect/decal/cleanable/oil,/turf/open/floor/plating/airless,/area/tcommsat/chamber) -"bU" = (/obj/effect/decal/cleanable/blood,/obj/structure/chair,/obj/item/clothing/under/rank/centcom_officer,/obj/item/weapon/restraints/handcuffs,/obj/effect/decal/remains/human,/turf/open/floor/plating/airless,/area/tcommsat/chamber) -"bV" = (/obj/structure/table,/obj/item/device/flashlight/lamp,/turf/open/floor/plating/airless,/area/tcommsat/chamber) -"bW" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/turf/open/floor/plasteel/airless/black,/area/tcommsat/chamber) -"bX" = (/obj/structure/door_assembly/door_assembly_mhatch,/turf/open/floor/plasteel/airless/black,/area/tcommsat/chamber) -"bY" = (/obj/machinery/light/small{dir = 4},/turf/open/floor/plasteel/airless,/area/tcommsat/chamber) -"bZ" = (/obj/item/weapon/cigbutt,/turf/open/floor/plating/airless,/area/tcommsat/chamber) -"ca" = (/obj/effect/decal/cleanable/blood,/obj/item/device/assembly/signaler,/turf/open/floor/plasteel/airless/black,/area/tcommsat/chamber) -"cb" = (/obj/structure/table,/obj/item/weapon/reagent_containers/syringe/lethal/choral,/obj/item/weapon/reagent_containers/syringe/lethal{pixel_y = 4},/turf/open/floor/plasteel/airless/black,/area/tcommsat/chamber) -"cc" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/turf/open/floor/plating,/area/tcommsat/chamber) -"cd" = (/obj/item/weapon/storage/toolbox/syndicate,/turf/open/floor/plasteel/airless,/area/tcommsat/chamber) -"ce" = (/obj/structure/table,/obj/item/device/electropack,/turf/open/floor/plating/airless,/area/tcommsat/chamber) -"cf" = (/obj/structure/table,/obj/item/weapon/hemostat,/turf/open/floor/plasteel/airless/black,/area/tcommsat/chamber) -"cg" = (/obj/structure/table,/obj/item/weapon/circular_saw,/turf/open/floor/plasteel/airless/black,/area/tcommsat/chamber) -"ch" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/turf/open/floor/plating,/area/tcommsat/chamber) -"ci" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/item/stack/rods,/turf/open/floor/plasteel/airless/black,/area/tcommsat/chamber) -"cj" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/turf/open/space,/area/space) -"ck" = (/obj/structure/window/reinforced,/obj/structure/lattice,/turf/open/space,/area/space) -"cl" = (/turf/open/floor/plasteel/airless/warning{dir = 9},/area/tcommsat/chamber) -"cm" = (/turf/open/floor/plasteel/airless/warning/corner{dir = 4},/area/tcommsat/chamber) -"cn" = (/turf/open/floor/plasteel/airless/warning{dir = 1},/area/tcommsat/chamber) -"co" = (/turf/open/floor/plasteel/airless/warning{dir = 5},/area/tcommsat/chamber) -"cp" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/turf/open/space,/area/space) -"cq" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/turf/open/floor/plasteel/airless/black,/area/tcommsat/chamber) -"cr" = (/obj/item/weapon/paper/crumpled,/turf/open/floor/plasteel/airless/warning{dir = 8},/area/tcommsat/chamber) -"cs" = (/obj/item/stack/rods,/turf/open/floor/plasteel/airless,/area/tcommsat/chamber) -"ct" = (/turf/open/floor/plasteel/airless/warning{dir = 4},/area/tcommsat/chamber) -"cu" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plasteel/airless/black,/area/tcommsat/chamber) -"cv" = (/turf/open/floor/plasteel/airless/warning{dir = 10},/area/tcommsat/chamber) -"cw" = (/obj/machinery/light/small,/obj/item/weapon/paper,/turf/open/floor/plasteel/airless/warning/corner{dir = 1},/area/tcommsat/chamber) -"cx" = (/turf/open/floor/plasteel/airless/warning{dir = 6},/area/tcommsat/chamber) -"cy" = (/obj/item/weapon/shard{icon_state = "medium"},/turf/open/space,/area/space) -"cz" = (/obj/structure/lattice,/obj/item/stack/rods,/obj/item/weapon/shard{icon_state = "medium"},/turf/open/space,/area/space) -"cA" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/turf/open/floor/plating/airless,/area/tcommsat/chamber) -"cB" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/turf/open/floor/plating,/area/tcommsat/chamber) -"cC" = (/obj/structure/grille/broken,/turf/open/space,/area/space) -"cD" = (/obj/machinery/door/airlock/hatch,/turf/open/floor/plasteel,/area/tcommsat/chamber) -"cE" = (/turf/open/floor/plasteel/warning{dir = 9},/area/tcommsat/chamber) -"cF" = (/turf/open/floor/plasteel/warning{dir = 1},/area/tcommsat/chamber) -"cG" = (/turf/open/floor/plasteel/warning{dir = 5},/area/tcommsat/chamber) -"cH" = (/turf/open/floor/plasteel/warning/corner{dir = 4},/area/tcommsat/chamber) -"cI" = (/turf/open/floor/plasteel,/area/tcommsat/chamber) -"cJ" = (/turf/open/floor/plasteel/warning/corner{dir = 8},/area/tcommsat/chamber) -"cK" = (/obj/machinery/light/small{dir = 8},/turf/open/floor/plasteel,/area/tcommsat/chamber) -"cL" = (/obj/structure/sign/vacuum,/turf/closed/wall/r_wall,/area/tcommsat/chamber) -"cM" = (/obj/structure/closet/emcloset,/turf/open/floor/plasteel/warning{dir = 9},/area/tcommsat/chamber) -"cN" = (/obj/item/weapon/paper/crumpled,/turf/open/floor/plasteel,/area/tcommsat/chamber) -"cO" = (/obj/structure/closet/malf/suits,/turf/open/floor/plasteel,/area/tcommsat/chamber) -"cP" = (/obj/structure/door_assembly/door_assembly_ext,/turf/open/floor/plating/airless,/area/tcommsat/chamber) -"cQ" = (/obj/machinery/door/airlock/external,/turf/open/floor/plating,/area/tcommsat/chamber) -"cR" = (/turf/open/floor/plasteel/warning{dir = 8},/area/tcommsat/chamber) -"cS" = (/obj/item/weapon/crowbar,/turf/open/floor/plating/airless,/area/tcommsat/chamber) -"cT" = (/obj/structure/closet/crate,/obj/item/clothing/glasses/night,/turf/open/floor/plasteel/warning{dir = 10},/area/tcommsat/chamber) -"cU" = (/turf/open/floor/plasteel/warning/corner{dir = 1},/area/tcommsat/chamber) -"cV" = (/obj/item/weapon/storage/toolbox/electrical{pixel_x = 1; pixel_y = -1},/turf/open/floor/plasteel/warning{dir = 10},/area/tcommsat/chamber) -"cW" = (/turf/open/floor/plasteel/warning{dir = 2},/area/tcommsat/chamber) -"cX" = (/obj/machinery/light/small{dir = 4},/turf/open/floor/plasteel/warning{dir = 6},/area/tcommsat/chamber) -"cY" = (/obj/structure/frame/computer,/turf/open/floor/plating,/area/tcommsat/chamber) -"cZ" = (/obj/machinery/teleport/station,/turf/open/floor/plating,/area/tcommsat/chamber) -"da" = (/obj/machinery/teleport/hub,/turf/open/floor/plating,/area/tcommsat/chamber) +"ag" = (/turf/closed/wall/r_wall,/area/space) +"ah" = (/obj/structure/girder,/turf/open/floor/plating/airless,/area/space) +"ai" = (/turf/closed/wall/r_wall,/area/tcommsat/chamber) +"aj" = (/obj/structure/girder,/turf/open/floor/plating/airless,/area/tcommsat/chamber) +"ak" = (/turf/open/floor/plating/airless,/area/tcommsat/chamber) +"al" = (/obj/structure/window/reinforced{dir = 4},/turf/open/space,/area/space) +"am" = (/obj/structure/window/reinforced{dir = 8},/turf/open/floor/plating/airless,/area/tcommsat/chamber) +"an" = (/obj/machinery/power/apc{cell_type = 2500;dir = 1;name = "Worn-out APC";pixel_x = 1;pixel_y = 26},/obj/structure/cable{icon_state = "0-4";d2 = 4},/turf/open/floor/plating/airless,/area/tcommsat/chamber) +"ao" = (/obj/machinery/light/small{dir = 1},/obj/structure/cable{d1 = 2;d2 = 8;icon_state = "2-8"},/turf/open/floor/plating/airless,/area/tcommsat/chamber) +"ap" = (/obj/item/weapon/stock_parts/cell,/turf/open/floor/plating/airless,/area/tcommsat/chamber) +"aq" = (/obj/machinery/portable_atmospherics/canister/air,/turf/open/floor/plating/airless,/area/tcommsat/chamber) +"ar" = (/obj/item/weapon/coin/clown,/turf/open/floor/engine,/area/tcommsat/chamber) +"as" = (/obj/structure/bed,/turf/open/floor/plasteel/airless,/area/tcommsat/chamber) +"at" = (/obj/machinery/light/small{dir = 1},/turf/open/floor/plasteel/airless,/area/tcommsat/chamber) +"au" = (/turf/open/floor/plasteel/airless{icon_state = "damaged2"},/area/tcommsat/chamber) +"av" = (/turf/open/floor/plasteel/airless{icon_state = "damaged3"},/area/tcommsat/chamber) +"aw" = (/obj/structure/lattice,/obj/structure/window/reinforced{dir = 4},/turf/open/space,/area/space) +"ax" = (/obj/structure/cable{d1 = 1;d2 = 2;icon_state = "1-2";pixel_y = 0},/turf/open/floor/plating/airless,/area/tcommsat/chamber) +"ay" = (/obj/item/weapon/wrench,/turf/open/floor/plating/airless,/area/tcommsat/chamber) +"az" = (/obj/structure/window/reinforced{dir = 4},/obj/machinery/portable_atmospherics/canister/air,/turf/open/floor/plating/airless,/area/tcommsat/chamber) +"aA" = (/obj/structure/lattice,/obj/structure/window/reinforced{dir = 8},/turf/open/space,/area/space) +"aB" = (/obj/effect/spawner/lootdrop/crate_spawner,/turf/open/floor/plasteel/airless,/area/tcommsat/chamber) +"aC" = (/turf/open/floor/plasteel/airless,/area/tcommsat/chamber) +"aD" = (/obj/structure/table,/obj/item/weapon/paper,/turf/open/floor/plasteel/airless,/area/tcommsat/chamber) +"aE" = (/obj/structure/table,/obj/item/weapon/paper_bin,/obj/item/weapon/pen/blue,/obj/machinery/light/small{dir = 1},/turf/open/floor/plasteel/airless,/area/tcommsat/chamber) +"aF" = (/obj/structure/frame/computer,/turf/open/floor/plasteel/airless,/area/tcommsat/chamber) +"aG" = (/obj/structure/table,/turf/open/floor/plasteel/airless,/area/tcommsat/chamber) +"aH" = (/obj/item/weapon/reagent_containers/food/snacks/meat/slab/synthmeat{name = "Cuban Pete-Meat"},/turf/open/floor/engine,/area/tcommsat/chamber) +"aI" = (/obj/structure/grille,/turf/open/floor/plasteel/airless,/area/tcommsat/chamber) +"aJ" = (/obj/structure/grille/broken,/turf/open/floor/plasteel/airless,/area/tcommsat/chamber) +"aK" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/turf/open/floor/plating/airless,/area/tcommsat/chamber) +"aL" = (/obj/structure/window/reinforced,/turf/open/floor/plating/airless,/area/tcommsat/chamber) +"aM" = (/obj/item/stack/cable_coil/cut{amount = 1},/turf/open/floor/plating/airless,/area/tcommsat/chamber) +"aN" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/closet,/turf/open/floor/plating/airless,/area/tcommsat/chamber) +"aO" = (/obj/structure/window/reinforced{dir = 8},/turf/open/space,/area/space) +"aP" = (/obj/item/weapon/folder/yellow,/turf/open/floor/plasteel/airless,/area/tcommsat/chamber) +"aQ" = (/obj/structure/bed,/obj/effect/decal/remains/human,/turf/open/floor/plasteel/airless,/area/tcommsat/chamber) +"aR" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/lattice,/turf/open/space,/area/space) +"aS" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/lattice,/turf/open/space,/area/space) +"aT" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plating/airless,/area/tcommsat/chamber) +"aU" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/turf/open/space,/area/space) +"aV" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/turf/open/space,/area/space) +"aW" = (/obj/structure/window/reinforced,/turf/open/space,/area/space) +"aX" = (/obj/structure/sign/securearea,/turf/closed/wall/r_wall,/area/tcommsat/chamber) +"aY" = (/obj/machinery/light/small{dir = 8},/turf/open/floor/plasteel/airless,/area/tcommsat/chamber) +"aZ" = (/obj/item/weapon/paper/crumpled,/turf/open/floor/plasteel/airless,/area/tcommsat/chamber) +"ba" = (/obj/item/weapon/reagent_containers/food/snacks/meat/slab/synthmeat{name = "Cuban Pete-Meat"},/obj/item/stack/spacecash,/turf/open/floor/engine,/area/tcommsat/chamber) +"bb" = (/obj/structure/chair{dir = 4},/turf/open/floor/plasteel/airless,/area/tcommsat/chamber) +"bc" = (/obj/structure/table,/obj/item/weapon/storage/fancy/cigarettes,/turf/open/floor/plasteel/airless,/area/tcommsat/chamber) +"bd" = (/obj/structure/chair{dir = 8},/turf/open/floor/plasteel/airless,/area/tcommsat/chamber) +"be" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/turf/open/floor/plasteel/airless/black,/area/tcommsat/chamber) +"bf" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/turf/open/floor/plasteel/airless/black,/area/tcommsat/chamber) +"bg" = (/obj/structure/window/reinforced,/turf/open/floor/plasteel/airless/black,/area/tcommsat/chamber) +"bh" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/item/weapon/electronics/airlock,/turf/open/floor/plasteel/airless/black,/area/tcommsat/chamber) +"bi" = (/obj/structure/door_assembly/door_assembly_hatch,/turf/open/floor/plasteel/airless,/area/tcommsat/chamber) +"bj" = (/obj/item/weapon/cigbutt,/turf/open/floor/plasteel/airless,/area/tcommsat/chamber) +"bk" = (/obj/machinery/vending/snack,/turf/open/floor/plasteel/airless,/area/tcommsat/chamber) +"bl" = (/obj/machinery/vending/cola,/turf/open/floor/plasteel/airless,/area/tcommsat/chamber) +"bm" = (/obj/structure/chair{dir = 1},/turf/open/floor/plasteel/airless,/area/tcommsat/chamber) +"bn" = (/obj/machinery/disposal/bin,/obj/structure/disposalpipe/trunk{dir = 4},/turf/open/floor/plasteel/airless,/area/tcommsat/chamber) +"bo" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/closed/wall/r_wall,/area/tcommsat/chamber) +"bp" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/closed/wall/r_wall,/area/space) +"bq" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/grille/broken,/turf/open/floor/plating/airless,/area/space) +"br" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plating/airless,/area/space) +"bs" = (/obj/structure/disposaloutlet{dir = 4},/obj/structure/disposalpipe/trunk{dir = 8},/turf/open/floor/plating/airless,/area/space) +"bt" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plasteel/airless/black,/area/tcommsat/chamber) +"bu" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/turf/open/space,/area/space) +"bv" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/lattice,/turf/open/space,/area/space) +"bw" = (/obj/structure/window/reinforced{dir = 1},/turf/open/space,/area/space) +"bx" = (/obj/structure/table,/obj/item/device/radio/off,/turf/open/floor/plasteel/airless,/area/tcommsat/chamber) +"by" = (/obj/structure/chair,/turf/open/floor/plasteel/airless,/area/tcommsat/chamber) +"bz" = (/obj/machinery/door/airlock/maintenance_hatch,/turf/open/floor/plasteel/airless/black,/area/tcommsat/chamber) +"bA" = (/turf/open/floor/plasteel/airless/black,/area/tcommsat/chamber) +"bB" = (/obj/machinery/door/airlock/hatch,/turf/open/floor/plasteel/airless/black,/area/tcommsat/chamber) +"bC" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/lattice,/turf/open/space,/area/space) +"bD" = (/obj/structure/window/reinforced{dir = 8},/obj/item/weapon/shard{icon_state = "medium"},/turf/open/floor/plasteel/airless/black,/area/tcommsat/chamber) +"bE" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/turf/open/floor/plating/airless,/area/tcommsat/chamber) +"bF" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/turf/open/floor/plating/airless,/area/tcommsat/chamber) +"bG" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/turf/open/floor/plating/airless,/area/tcommsat/chamber) +"bH" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plating/airless,/area/tcommsat/chamber) +"bI" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/turf/open/floor/plasteel/airless/black,/area/tcommsat/chamber) +"bJ" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/lattice,/turf/open/space,/area/space) +"bK" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/item/stack/rods,/turf/open/floor/plasteel/airless/black,/area/tcommsat/chamber) +"bL" = (/obj/item/stack/rods,/obj/item/weapon/shard{icon_state = "medium"},/turf/open/floor/plating/airless,/area/tcommsat/chamber) +"bM" = (/obj/structure/window/reinforced{dir = 8},/turf/open/floor/plasteel/airless/black,/area/tcommsat/chamber) +"bN" = (/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plasteel/airless/black,/area/tcommsat/chamber) +"bO" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/turf/open/floor/plating,/area/tcommsat/chamber) +"bP" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/turf/open/floor/plating,/area/tcommsat/chamber) +"bQ" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/turf/open/floor/plating,/area/tcommsat/chamber) +"bR" = (/obj/effect/decal/cleanable/blood,/obj/item/weapon/scalpel{pixel_y = 12},/turf/open/floor/plasteel/airless/black,/area/tcommsat/chamber) +"bS" = (/obj/structure/window/reinforced{dir = 4},/obj/item/weapon/shard{icon_state = "medium"},/turf/open/floor/plasteel/airless/black,/area/tcommsat/chamber) +"bT" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/turf/open/floor/plating,/area/tcommsat/chamber) +"bU" = (/obj/structure/rack,/obj/item/weapon/circuitboard/computer/teleporter,/turf/open/floor/plasteel/airless,/area/tcommsat/chamber) +"bV" = (/obj/item/device/radio/off,/turf/open/floor/plasteel/airless/black,/area/tcommsat/chamber) +"bW" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/turf/open/floor/plating,/area/tcommsat/chamber) +"bX" = (/obj/effect/decal/cleanable/oil,/turf/open/floor/plating/airless,/area/tcommsat/chamber) +"bY" = (/obj/effect/decal/cleanable/blood,/obj/structure/chair,/obj/item/clothing/under/rank/centcom_officer,/obj/item/weapon/restraints/handcuffs,/obj/effect/decal/remains/human,/turf/open/floor/plating/airless,/area/tcommsat/chamber) +"bZ" = (/obj/structure/table,/obj/item/device/flashlight/lamp,/turf/open/floor/plating/airless,/area/tcommsat/chamber) +"ca" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/turf/open/floor/plasteel/airless/black,/area/tcommsat/chamber) +"cb" = (/obj/structure/door_assembly/door_assembly_mhatch,/turf/open/floor/plasteel/airless/black,/area/tcommsat/chamber) +"cc" = (/obj/machinery/light/small{dir = 4},/turf/open/floor/plasteel/airless,/area/tcommsat/chamber) +"cd" = (/obj/item/weapon/cigbutt,/turf/open/floor/plating/airless,/area/tcommsat/chamber) +"ce" = (/obj/effect/decal/cleanable/blood,/obj/item/device/assembly/signaler,/turf/open/floor/plasteel/airless/black,/area/tcommsat/chamber) +"cf" = (/obj/structure/table,/obj/item/weapon/reagent_containers/syringe/lethal/choral,/obj/item/weapon/reagent_containers/syringe/lethal{pixel_y = 4},/turf/open/floor/plasteel/airless/black,/area/tcommsat/chamber) +"cg" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/turf/open/floor/plating,/area/tcommsat/chamber) +"ch" = (/obj/item/weapon/storage/toolbox/syndicate,/turf/open/floor/plasteel/airless,/area/tcommsat/chamber) +"ci" = (/obj/structure/table,/obj/item/device/electropack,/turf/open/floor/plating/airless,/area/tcommsat/chamber) +"cj" = (/obj/structure/table,/obj/item/weapon/hemostat,/turf/open/floor/plasteel/airless/black,/area/tcommsat/chamber) +"ck" = (/obj/structure/table,/obj/item/weapon/circular_saw,/turf/open/floor/plasteel/airless/black,/area/tcommsat/chamber) +"cl" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/turf/open/floor/plating,/area/tcommsat/chamber) +"cm" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/item/stack/rods,/turf/open/floor/plasteel/airless/black,/area/tcommsat/chamber) +"cn" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/turf/open/space,/area/space) +"co" = (/obj/structure/window/reinforced,/obj/structure/lattice,/turf/open/space,/area/space) +"cp" = (/turf/open/floor/plasteel/airless/warning{dir = 9},/area/tcommsat/chamber) +"cq" = (/turf/open/floor/plasteel/airless/warning/corner{dir = 4},/area/tcommsat/chamber) +"cr" = (/turf/open/floor/plasteel/airless/warning{dir = 1},/area/tcommsat/chamber) +"cs" = (/turf/open/floor/plasteel/airless/warning{dir = 5},/area/tcommsat/chamber) +"ct" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/turf/open/space,/area/space) +"cu" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/turf/open/floor/plasteel/airless/black,/area/tcommsat/chamber) +"cv" = (/obj/item/weapon/paper/crumpled,/turf/open/floor/plasteel/airless/warning{dir = 8},/area/tcommsat/chamber) +"cw" = (/obj/item/stack/rods,/turf/open/floor/plasteel/airless,/area/tcommsat/chamber) +"cx" = (/turf/open/floor/plasteel/airless/warning{dir = 4},/area/tcommsat/chamber) +"cy" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plasteel/airless/black,/area/tcommsat/chamber) +"cz" = (/turf/open/floor/plasteel/airless/warning{dir = 10},/area/tcommsat/chamber) +"cA" = (/obj/machinery/light/small,/obj/item/weapon/paper,/turf/open/floor/plasteel/airless/warning/corner{dir = 1},/area/tcommsat/chamber) +"cB" = (/turf/open/floor/plasteel/airless/warning{dir = 6},/area/tcommsat/chamber) +"cC" = (/obj/item/weapon/shard{icon_state = "medium"},/turf/open/space,/area/space) +"cD" = (/obj/structure/lattice,/obj/item/stack/rods,/obj/item/weapon/shard{icon_state = "medium"},/turf/open/space,/area/space) +"cE" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/turf/open/floor/plating/airless,/area/tcommsat/chamber) +"cF" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/turf/open/floor/plating,/area/tcommsat/chamber) +"cG" = (/obj/structure/grille/broken,/turf/open/space,/area/space) +"cH" = (/obj/machinery/door/airlock/hatch,/turf/open/floor/plasteel,/area/tcommsat/chamber) +"cI" = (/turf/open/floor/plasteel/warning{dir = 9},/area/tcommsat/chamber) +"cJ" = (/turf/open/floor/plasteel/warning{dir = 1},/area/tcommsat/chamber) +"cK" = (/turf/open/floor/plasteel/warning{dir = 5},/area/tcommsat/chamber) +"cL" = (/turf/open/floor/plasteel/warning/corner{dir = 4},/area/tcommsat/chamber) +"cM" = (/turf/open/floor/plasteel,/area/tcommsat/chamber) +"cN" = (/turf/open/floor/plasteel/warning/corner{dir = 8},/area/tcommsat/chamber) +"cO" = (/obj/machinery/light/small{dir = 8},/turf/open/floor/plasteel,/area/tcommsat/chamber) +"cP" = (/obj/structure/sign/vacuum,/turf/closed/wall/r_wall,/area/tcommsat/chamber) +"cQ" = (/obj/structure/closet/emcloset,/turf/open/floor/plasteel/warning{dir = 9},/area/tcommsat/chamber) +"cR" = (/obj/item/weapon/paper/crumpled,/turf/open/floor/plasteel,/area/tcommsat/chamber) +"cS" = (/obj/structure/closet/malf/suits,/turf/open/floor/plasteel,/area/tcommsat/chamber) +"cT" = (/obj/structure/door_assembly/door_assembly_ext,/turf/open/floor/plating/airless,/area/tcommsat/chamber) +"cU" = (/obj/machinery/door/airlock/external,/turf/open/floor/plating,/area/tcommsat/chamber) +"cV" = (/turf/open/floor/plasteel/warning{dir = 8},/area/tcommsat/chamber) +"cW" = (/obj/item/weapon/crowbar,/turf/open/floor/plating/airless,/area/space) +"cX" = (/obj/structure/closet/crate,/obj/item/clothing/glasses/night,/turf/open/floor/plasteel/warning{dir = 10},/area/tcommsat/chamber) +"cY" = (/turf/open/floor/plasteel/warning/corner{dir = 1},/area/tcommsat/chamber) +"cZ" = (/obj/item/weapon/storage/toolbox/electrical{pixel_x = 1;pixel_y = -1},/turf/open/floor/plasteel/warning{dir = 10},/area/tcommsat/chamber) +"da" = (/turf/open/floor/plasteel/warning{dir = 2},/area/tcommsat/chamber) +"db" = (/obj/machinery/light/small{dir = 4},/turf/open/floor/plasteel/warning{dir = 6},/area/tcommsat/chamber) +"dc" = (/obj/structure/frame/computer,/turf/open/floor/plating,/area/tcommsat/chamber) +"dd" = (/obj/machinery/teleport/station,/turf/open/floor/plating,/area/tcommsat/chamber) +"de" = (/obj/machinery/teleport/hub,/turf/open/floor/plating,/area/tcommsat/chamber) (1,1,1) = {" aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa @@ -170,40 +174,40 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeababacacacacacacacababaeaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaaaaeaaaaabaaaaacaaaaabaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeadadaaaaabadaeaeaeaeaeaeaeafaeadaeaeaeaeaeaeadabaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaeagahahacahagagagagagagagagagagagagagagagagagagahacababaaabaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaadaeagagagagagagagagagagagagagagagagagagagagagagagahacabababababaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaeagagagabaaaiajakalamanagagagagagagagagagaoagapaqarasacacabacahadaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaeagagabababatajacauavawaxagayazaAaBaCaDagaEagaFaGazarasasacahagaeaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaeagagaaabaaaiaHaIaJaIaKaLagazaMazazazaCagaEagaNaFazazararagagagaeaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaadagagaaabaaaaaOaPaQaRaSaTaUaVazaWazazaCagaXagaFaFazaYaZbaagagagaeaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaeagagaaabaaaibbbcbdbcbdbebfazazbgazazagagagagbhbiazbgbjbkblblblbmbnboaaaaaaaaaa -aaaaaaaaaaaaaaaaababadaeaeaeagagaaabaaaibpbqbrbsbsbsagazbtbuazazbvbwagagagagbxagagagagagagaeaeadabaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaabaeagagabababbybzaxagagagagagbAbBbCbCbDagbvagagagbybEbFabababagagaeaeaeaaaaaaaaaa -aaaaaaababacacacacacababaaaeagagaaabaaaibGbFagacacacacacbHacacacacbwbwacagbybEaaaaabaaagagaeaeaaabaaaaaaaa -ababababababababacacacacaaaeagagaaabaaaibIbFagacacbwbwacbwbwbwbwbwbwacacagbybJaLbKbLbMagagagaeabacababaaaa -aaaaaaaaaaababababacacacaaaeagagaaabaaaabpbFagacbwbwbwbwbwacbwbNbwbwbwacagbybOaLbPazazbQagagaeaaabaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaacaaaeagagaaabaaaibEaLagacbwbwbwbwbwacbwbRbwbwbwacagbybEaTbSazazaDagagaeaaabaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaacacafagagabababbybpaxagacbwbwbwacbTbUacbVbwbwbwacagbybIbWbXazazbYagagafacabaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaacaaaeagagaaabaaaibpaLagacbwbwacbwbwbZcacbbwbwbwacagaibEbsccazcdazagagaeaaabaaaaaaaa -aaaaaaaaaaaaabababacacacaaaeagagaaabaaaabEaaagacbwbwbwbwbwcecfcgbwbwacacagaabEaLbPazazaDagagaeaaacaaaaaaaa -aaaaaaaaaaabababacacacacaaaeagagaaabaaaibpaLagacbwacbwbwbwbwbwbwbwbwbwacagaibEaLchbLbMagagagaeabacabababab -aaaaaaabababababababababaaaeagagaaabaaaaciaLagacacacacacacacacacacacacacagaibJaLaaabaaagagaeaeaaabababaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaeaeagagabababbybOaxagagagagagagagagagagagagagagagbybEaxabababagahaeaeaeaaaaaaaaaa -aaaaaaaaaaaaabababababadaeaeahagaaaaaaaibEcjckaTaaagclcmarcncmascoagaTaTaTcpbEaLaaabaaahabaeaeaeadabababaa -aaaaaaaaaaaaaaaaaaaaaaaaaaadacahaaaaaaaicqbdbcbcbcbxcrazazazazcsctbxbcbdbcbccuaLaaabaaacabadaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaabacabaaaaaaaabsbsbrbsbsagcvcwararazarcxagbsbsbscybsaaaaabaaabaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaababaaaaaaaaaaaaabaaagagagagagasahagagagagaaaaaaaaaaaaabaaaaaaaaabaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaaaaaaaababababczcAarazagazarazagazaCcBababababaaaaaaaaaaaaaaabcCaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagagazazazazazazaqazazagagaaaaaaaaaaaaaaaaaaabacaeaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabacahagagagagagagagagagagcDagagagagagagagahacababaaaaaaaaacahaeaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabacahagagagagagagagagagagcEcFcGagagagagacabababaaaaaaabababahagadaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaeadaeaeaeaeaeaeaeagagcHcIcJagagaeaeaeadaaaaaaaaaaaaabagagagaeaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadacacaeaeagagcKcIcIcIcIagagaeaeaaaaaaaaabacacahagagaeaeaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacagagcLcMcIcIcIcIcNcOagaeadaaaaaaaaaaababacagaeaeaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacaccPaccQcRcIcIcIcIcIcIagaeaeaaaaaaaaaaabadaeaeaeaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacSacacagagcLcTcUcIcIcIcIcOagaeaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabacacaeaeagagcVcWcWcWcXagagaeaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabadadaeaeaeagagcYcZdaagagaeaeaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaeaeaeagagagagagaeaeaeadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaadaeagagagagagaiaiaiaiaiagagagagagagagagagaiaiaiaiajakabababababaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaeagagagabaaalamanaoapaqaiaiaiaiaiaiaiaiaiaraiasatauavakakabacahadaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaeagagabababawamakaxayazaAaiaBaCaDaEaFaGaiaHaiaIaJaCauavavakahagaeaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaeagagaaabaaalaKaLaMaLaNaOaiaCaPaCaCaCaFaiaHaiaQaIaCaCauauaiagagaeaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaadagagaaabaaaaaRaSaTaUaVaWaXaYaCaZaCaCaFaibaaiaIaIaCbbbcbdaiagagaeaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaeagagaaabaaalbebfbgbfbgbhbiaCaCbjaCaCaiaiaiaibkblaCbjbmbnbobpbpbqbrbsaaaaaaaaaa +aaaaaaaaaaaaaaaaababadaeaeaeagagaaabaaalbtbubvbwbwbwaiaCbxbyaCaCbzbAaiaiaiaibBaiaiaiaiagagaeaeadabaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaabaeagagabababbCbDaAaiaiaiaiaibEbFbGbGbHaibzaiaiaibCbIbJabababagagaeaeaeaaaaaaaaaa +aaaaaaababacacacacacababaaaeagagaaabaaalbKbJaiakakakakakbLakakakakbAbAakaibCbIaaaaabaaagagaeaeaaabaaaaaaaa +ababababababababacacacacaaaeagagaaabaaalbMbJaiakakbAbAakbAbAbAbAbAbAakakaibCbNaObObPbQaiagagaeabacababaaaa +aaaaaaaaaaababababacacacaaaeagagaaabaaaabtbJaiakbAbAbAbAbAakbAbRbAbAbAakaibCbSaObTaCaCbUaiagaeaaabaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaacaaaeagagaaabaaalbIaOaiakbAbAbAbAbAakbAbVbAbAbAakaibCbIaWbWaCaCaGaiagaeaaabaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaacacafagagabababbCbtaAaiakbAbAbAakbXbYakbZbAbAbAakaibCbMcacbaCaCccaiagafacabaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaacaaaeagagaaabaaalbtaOaiakbAbAakbAbAcdcecfbAbAbAakaialbIbwcgaCchaCaiagaeaaabaaaaaaaa +aaaaaaaaaaaaabababacacacaaaeagagaaabaaaabIaaaiakbAbAbAbAbAcicjckbAbAakakaiaabIaObTaCaCaGaiagaeaaacaaaaaaaa +aaaaaaaaaaabababacacacacaaaeagagaaabaaalbtaOaiakbAakbAbAbAbAbAbAbAbAbAakaialbIaOclbPbQaiagagaeabacabababab +aaaaaaabababababababababaaaeagagaaabaaaacmaOaiakakakakakakakakakakakakakaialbNaOaaabaaagagaeaeaaabababaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaeaeagagabababbCbSaAaiaiaiaiaiaiaiaiaiaiaiaiaiaiaibCbIaAabababagahaeaeaeaaaaaaaaaa +aaaaaaaaaaaaabababababadaeaeahagaaaaaaalbIcncoaWaaaicpcqaucrcqavcsaiaWaWaWctbIaOaaabaaahabaeaeaeadabababaa +aaaaaaaaaaaaaaaaaaaaaaaaaaadacahaaaaaaalcubgbfbfbfbBcvaCaCaCaCcwcxbBbfbgbfbfcyaOaaabaaacabadaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaabacabaaaaaaaabwbwbvbwbwaiczcAauauaCaucBaibwbwbwcCbwaaaaabaaabaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaababaaaaaaaaaaaaabaaaiaiaiaiaiavajaiaiaiaiaaaaaaaaaaaaabaaaaaaaaabaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaaaaaaaababababcDcEauaCaiaCauaCaiaCaFcFababababaaaaaaaaaaaaaaabcGaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaiaCaCaCaCaCaCataCaCaiagaaaaaaaaaaaaaaaaaaabacaeaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabacahagagagagagaiaiaiaiaicHaiaiaiaiaiagagahacababaaaaaaaaacahaeaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabacahagagagagagagagagagaicIcJcKaiagagagacabababaaaaaaabababahagadaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaeadaeaeaeaeaeaeaeaiaicLcMcNaiaiaeaeaeadaaaaaaaaaaaaabagagagaeaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadacacaeaeaiaicOcMcMcMcMaiaiaeaeaaaaaaaaabacacahagagaeaeaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacaiaicPcQcMcMcMcMcRcSaiaeadaaaaaaaaaaababacagaeaeaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacaccTakcUcVcMcMcMcMcMcMaiaeaeaaaaaaaaaaabadaeaeaeaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacWacacaiaicPcXcYcMcMcMcMcSaiaeaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabacacaeaeaiaicZdadadadbaiaiaeaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabadadaeaeaeaiaidcdddeaiaiaeaeaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaeaeaeaiaiaiaiaiaeaeaeadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaeaaaeaeaeafaeaeaeaaaeaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaabaaaaacaaaaabaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaabacabacacacabababaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa diff --git a/_maps/RandomRuins/SpaceRuins/oldteleporter.dmm b/_maps/RandomRuins/SpaceRuins/oldteleporter.dmm index 94c5a7c026..4de656779c 100644 --- a/_maps/RandomRuins/SpaceRuins/oldteleporter.dmm +++ b/_maps/RandomRuins/SpaceRuins/oldteleporter.dmm @@ -1,17 +1,17 @@ "a" = (/turf/open/space,/area/space) -"b" = (/obj/structure/lattice,/turf/open/space,/area/ruin/oldteleporter) -"c" = (/turf/open/floor/plating/airless,/area/ruin/oldteleporter) -"d" = (/turf/closed/wall/r_wall,/area/ruin/oldteleporter) -"e" = (/turf/open/floor/plasteel/airless,/area/ruin/oldteleporter) -"f" = (/turf/open/floor/plasteel/airless{icon_state = "damaged2"},/area/ruin/oldteleporter) -"g" = (/obj/structure/light_construct/small{dir = 1},/turf/open/floor/plasteel/airless{icon_state = "damaged3"},/area/ruin/oldteleporter) -"h" = (/obj/machinery/computer/teleporter,/turf/open/floor/plasteel/airless,/area/ruin/oldteleporter) -"i" = (/obj/machinery/teleport/station,/turf/open/floor/plasteel/airless,/area/ruin/oldteleporter) -"j" = (/obj/machinery/teleport/hub,/turf/open/floor/plasteel/airless,/area/ruin/oldteleporter) -"k" = (/obj/structure/light_construct/small{dir = 4},/turf/open/floor/plating/airless,/area/ruin/oldteleporter) -"l" = (/obj/structure/table,/obj/item/weapon/stock_parts/cell{charge = 100;maxcharge = 15000},/turf/open/floor/plasteel/airless,/area/ruin/oldteleporter) -"m" = (/turf/open/floor/plasteel/airless{icon_state = "damaged4"},/area/ruin/oldteleporter) -"n" = (/obj/machinery/power/apc{dir = 0;name = "Worn-out APC";pixel_y = -24},/turf/open/floor/plasteel/airless,/area/ruin/oldteleporter) +"b" = (/obj/structure/lattice,/turf/open/space,/area/ruin/unpowered/no_grav) +"c" = (/turf/open/floor/plating/airless,/area/ruin/unpowered/no_grav) +"d" = (/turf/closed/wall/r_wall,/area/ruin/unpowered/no_grav) +"e" = (/turf/open/floor/plasteel/airless,/area/ruin/unpowered/no_grav) +"f" = (/turf/open/floor/plasteel/airless{icon_state = "damaged2"},/area/ruin/unpowered/no_grav) +"g" = (/obj/machinery/light_construct/small{dir = 1},/turf/open/floor/plasteel/airless{icon_state = "damaged3"},/area/ruin/unpowered/no_grav) +"h" = (/obj/machinery/computer/teleporter,/turf/open/floor/plasteel/airless,/area/ruin/unpowered/no_grav) +"i" = (/obj/machinery/teleport/station,/turf/open/floor/plasteel/airless,/area/ruin/unpowered/no_grav) +"j" = (/obj/machinery/teleport/hub,/turf/open/floor/plasteel/airless,/area/ruin/unpowered/no_grav) +"k" = (/obj/machinery/light_construct/small{dir = 4},/turf/open/floor/plating/airless,/area/ruin/unpowered/no_grav) +"l" = (/obj/structure/table,/obj/item/weapon/stock_parts/cell{charge = 100;maxcharge = 15000},/turf/open/floor/plasteel/airless,/area/ruin/unpowered/no_grav) +"m" = (/turf/open/floor/plasteel/airless{icon_state = "damaged4"},/area/ruin/unpowered/no_grav) +"n" = (/obj/machinery/power/apc{dir = 0;name = "Worn-out APC";pixel_y = -24},/turf/open/floor/plasteel/airless,/area/ruin/unpowered/no_grav) (1,1,1) = {" aaaaaaaaaababbbbbaaba diff --git a/_maps/RandomRuins/SpaceRuins/onehalf.dmm b/_maps/RandomRuins/SpaceRuins/onehalf.dmm index 6d40d62000..e4801445dc 100644 --- a/_maps/RandomRuins/SpaceRuins/onehalf.dmm +++ b/_maps/RandomRuins/SpaceRuins/onehalf.dmm @@ -16,10 +16,10 @@ "ap" = (/turf/open/floor/plasteel,/area/ruin/onehalf/dorms_med) "aq" = (/obj/machinery/door/airlock/external,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plating,/area/ruin/onehalf/drone_bay) "ar" = (/turf/closed/wall,/area/ruin/onehalf/drone_bay) -"as" = (/obj/machinery/door/poddoor{id = "onehalf_drone1ext"; name = "mining drone bay blast door"},/turf/open/floor/plating/airless{dir = 1; icon_state = "warnplate"},/area/ruin/onehalf/drone_bay) -"at" = (/obj/machinery/door/poddoor{id = "onehalf_drone2ext"; name = "mining drone bay blast door"},/turf/open/floor/plating/airless{dir = 1; icon_state = "warnplate"},/area/ruin/onehalf/drone_bay) -"au" = (/obj/machinery/door/poddoor/preopen{id = "onehalf_drone3ext"; name = "mining drone bay blast door"},/turf/open/floor/plating/airless{dir = 1; icon_state = "warnplate"},/area/ruin/onehalf/drone_bay) -"av" = (/obj/machinery/door/poddoor{id = "onehalf_drone4ext"; name = "mining drone bay blast door"},/turf/open/floor/plating/airless{dir = 1; icon_state = "warnplate"},/area/ruin/onehalf/drone_bay) +"as" = (/obj/machinery/door/poddoor{id = "onehalf_drone1ext"; name = "mining drone bay blast door"},/turf/open/floor/plating/airless,/area/ruin/onehalf/drone_bay) +"at" = (/obj/machinery/door/poddoor{id = "onehalf_drone2ext"; name = "mining drone bay blast door"},/turf/open/floor/plating/airless,/area/ruin/onehalf/drone_bay) +"au" = (/obj/machinery/door/poddoor/preopen{id = "onehalf_drone3ext"; name = "mining drone bay blast door"},/turf/open/floor/plating/airless,/area/ruin/onehalf/drone_bay) +"av" = (/obj/machinery/door/poddoor{id = "onehalf_drone4ext"; name = "mining drone bay blast door"},/turf/open/floor/plating/airless,/area/ruin/onehalf/drone_bay) "aw" = (/obj/structure/lattice,/turf/open/space,/area/space) "ax" = (/obj/structure/lattice,/turf/open/space,/area/ruin/onehalf/hallway) "ay" = (/obj/structure/table_frame,/turf/open/floor/plasteel/airless{icon_state = "damaged3"},/area/ruin/onehalf/hallway) @@ -30,13 +30,13 @@ "aD" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/light/small{dir = 8},/turf/open/floor/plating,/area/ruin/onehalf/drone_bay) "aE" = (/obj/structure/disposalpipe/trunk,/turf/open/floor/plating/airless,/area/ruin/onehalf/drone_bay) "aF" = (/obj/structure/disposalpipe/trunk,/obj/item/weapon/ore/diamond,/turf/open/floor/plating/airless,/area/ruin/onehalf/drone_bay) -"aG" = (/turf/open/floor/plating/airless{dir = 1; icon_state = "warnplate"},/area/ruin/onehalf/drone_bay) +"aG" = (/turf/open/floor/plating/airless,/area/ruin/onehalf/drone_bay) "aH" = (/obj/item/stack/rods,/turf/open/space,/area/ruin/onehalf/hallway) "aI" = (/turf/open/floor/plating/airless{icon_state = "platingdmg3"},/area/ruin/onehalf/hallway) "aJ" = (/turf/open/floor/plasteel/airless{icon_state = "damaged5"},/area/ruin/onehalf/hallway) "aK" = (/obj/machinery/iv_drip,/turf/open/floor/plasteel/white,/area/ruin/onehalf/dorms_med) "aL" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/floor/plasteel/white,/area/ruin/onehalf/dorms_med) -"aM" = (/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/closet/crate/medical,/obj/item/clothing/neck/stethoscope,/obj/item/device/healthanalyzer,/obj/item/weapon/reagent_containers/blood/OMinus,/obj/item/weapon/reagent_containers/blood/OMinus,/obj/machinery/power/apc{dir = 4; name = "Crew Quarters APC"; pixel_x = 26; pixel_y = 0},/turf/open/floor/plasteel/white,/area/ruin/onehalf/dorms_med) +"aM" = (/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/closet/crate/medical,/obj/item/clothing/tie/stethoscope,/obj/item/device/healthanalyzer,/obj/item/weapon/reagent_containers/blood/OMinus,/obj/item/weapon/reagent_containers/blood/OMinus,/obj/machinery/power/apc{dir = 4; name = "Crew Quarters APC"; pixel_x = 26; pixel_y = 0},/turf/open/floor/plasteel/white,/area/ruin/onehalf/dorms_med) "aN" = (/obj/structure/disposalpipe/segment,/obj/machinery/door/poddoor{id = "onehalf_drone1int"; name = "mining drone bay blast door"},/turf/open/floor/plating,/area/ruin/onehalf/drone_bay) "aO" = (/obj/structure/disposalpipe/segment,/obj/machinery/door/poddoor{id = "onehalf_drone2int"; name = "mining drone bay blast door"},/turf/open/floor/plating,/area/ruin/onehalf/drone_bay) "aP" = (/obj/structure/disposalpipe/segment,/obj/machinery/door/poddoor{id = "onehalf_drone3int"; name = "mining drone bay blast door"},/turf/open/floor/plating,/area/ruin/onehalf/drone_bay) @@ -47,79 +47,79 @@ "aU" = (/turf/open/floor/plasteel/airless{icon_state = "damaged1"},/area/ruin/onehalf/hallway) "aV" = (/obj/machinery/door/airlock/glass_medical,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/white,/area/ruin/onehalf/dorms_med) "aW" = (/obj/machinery/door/airlock,/turf/open/floor/plasteel,/area/ruin/onehalf/dorms_med) -"aX" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/warning{dir = 9},/area/ruin/onehalf/drone_bay) -"aY" = (/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/power/apc{cell_type = 2500; dir = 1; name = "Mining Drone Bay APC"; pixel_y = 24},/turf/open/floor/plasteel/warning{dir = 1},/area/ruin/onehalf/drone_bay) -"aZ" = (/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel/warning{dir = 1},/area/ruin/onehalf/drone_bay) -"ba" = (/obj/machinery/button/door{id = "onehalf_drone2int"; name = "Drone 2 Internal Hatch Override"; pixel_x = 8; pixel_y = 27},/obj/machinery/button/door{id = "onehalf_drone2ext"; name = "Drone 2 External Hatch Override"; pixel_x = 8; pixel_y = 37},/obj/machinery/button/door{id = "onehalf_drone1int"; name = "Drone 1 Internal Hatch Override"; pixel_x = -8; pixel_y = 27},/obj/machinery/button/door{id = "onehalf_drone1ext"; name = "Drone 1 External Hatch Override"; pixel_x = -8; pixel_y = 37},/turf/open/floor/plasteel/warning{dir = 1},/area/ruin/onehalf/drone_bay) -"bb" = (/turf/open/floor/plasteel/warning{dir = 1},/area/ruin/onehalf/drone_bay) -"bc" = (/obj/machinery/button/door{id = "onehalf_drone3int"; name = "Drone 3 Internal Hatch Override"; pixel_x = -8; pixel_y = 27},/obj/machinery/button/door{id = "onehalf_drone3ext"; name = "Drone 3 External Hatch Override"; pixel_x = -8; pixel_y = 37},/obj/machinery/button/door{id = "onehalf_drone4ext"; name = "Drone 4 External Hatch Override"; pixel_x = 8; pixel_y = 37},/obj/machinery/button/door{id = "onehalf_drone4int"; name = "Drone 4 Internal Hatch Override"; pixel_x = 8; pixel_y = 27},/turf/open/floor/plasteel/warning{dir = 1},/area/ruin/onehalf/drone_bay) -"bd" = (/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel/warning{dir = 5},/area/ruin/onehalf/drone_bay) -"be" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/ruin/onehalf/drone_bay) -"bf" = (/obj/item/stack/sheet/metal,/turf/open/floor/plating/airless{broken = 1; icon_state = "platingdmg1"},/area/ruin/onehalf/hallway) -"bg" = (/obj/structure/disposalpipe/broken{tag = "icon-pipe-b (EAST)"; icon_state = "pipe-b"; dir = 4},/obj/item/stack/cable_coil/cut{amount = 2; dir = 2; icon_state = "coil_red2"},/turf/open/floor/plating/airless{broken = 1; icon_state = "platingdmg2"},/area/ruin/onehalf/hallway) -"bh" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/open/floor/plasteel/airless{icon_state = "damaged3"},/area/ruin/onehalf/hallway) -"bi" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel/airless{icon_state = "damaged5"},/area/ruin/onehalf/hallway) -"bj" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel/airless,/area/ruin/onehalf/hallway) -"bk" = (/obj/structure/disposalpipe/junction{icon_state = "pipe-j1"; dir = 4},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel/airless{icon_state = "damaged1"},/area/ruin/onehalf/hallway) -"bl" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/open/floor/plasteel/airless,/area/ruin/onehalf/hallway) -"bm" = (/obj/structure/disposalpipe/junction{icon_state = "pipe-j1"; dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel/airless,/area/ruin/onehalf/hallway) -"bn" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/door/airlock/glass,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel,/area/ruin/onehalf/drone_bay) -"bo" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/open/floor/plasteel,/area/ruin/onehalf/drone_bay) -"bp" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel,/area/ruin/onehalf/drone_bay) -"bq" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel,/area/ruin/onehalf/drone_bay) -"br" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/door/airlock/maintenance_hatch,/turf/open/floor/plasteel,/area/ruin/onehalf/drone_bay) -"bs" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/light/small{dir = 1},/turf/open/floor/plasteel{icon_state = "floorgrime"},/area/ruin/onehalf/drone_bay) -"bt" = (/obj/structure/disposalpipe/junction{icon_state = "pipe-y"; dir = 1},/turf/open/floor/plasteel{icon_state = "floorgrime"},/area/ruin/onehalf/drone_bay) -"bu" = (/obj/structure/disposalpipe/trunk{dir = 8},/obj/machinery/disposal/bin,/turf/open/floor/plating,/area/ruin/onehalf/drone_bay) -"bv" = (/obj/structure/disposalpipe/broken{tag = "icon-pipe-b (EAST)"; icon_state = "pipe-b"; dir = 4},/turf/open/floor/plating/airless{icon_state = "platingdmg3"},/area/ruin/onehalf/hallway) -"bw" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel/airless{icon_state = "damaged3"},/area/ruin/onehalf/hallway) -"bx" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel/airless,/area/ruin/onehalf/hallway) -"by" = (/obj/structure/disposalpipe/segment,/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel/airless{icon_state = "damaged1"},/area/ruin/onehalf/hallway) -"bz" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable,/obj/machinery/power/apc{dir = 2; name = "Hallway APC"; pixel_y = -24},/turf/open/floor/plasteel/airless,/area/ruin/onehalf/hallway) -"bA" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel/airless{icon_state = "damaged4"},/area/ruin/onehalf/hallway) -"bB" = (/obj/structure/disposalpipe/segment,/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel/airless,/area/ruin/onehalf/hallway) -"bC" = (/obj/machinery/door/airlock/glass,/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel,/area/ruin/onehalf/drone_bay) -"bD" = (/obj/structure/disposalpipe/junction{dir = 8; icon_state = "pipe-j1"},/turf/open/floor/plasteel,/area/ruin/onehalf/drone_bay) -"bE" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/light,/turf/open/floor/plasteel,/area/ruin/onehalf/drone_bay) -"bF" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/turf/open/floor/plasteel,/area/ruin/onehalf/drone_bay) -"bG" = (/turf/open/floor/plasteel,/area/ruin/onehalf/drone_bay) -"bH" = (/obj/machinery/portable_atmospherics/canister/oxygen,/turf/open/floor/plasteel{icon_state = "floorgrime"},/area/ruin/onehalf/drone_bay) -"bI" = (/turf/open/floor/plasteel{icon_state = "floorgrime"},/area/ruin/onehalf/drone_bay) -"bJ" = (/obj/structure/chair/office{tag = "icon-chair (EAST)"; icon_state = "chair"; dir = 4},/turf/open/floor/plasteel{icon_state = "floorgrime"},/area/ruin/onehalf/drone_bay) -"bK" = (/obj/structure/girder,/turf/open/floor/plating/airless,/area/ruin/onehalf/hallway) -"bL" = (/obj/structure/closet/emcloset,/turf/open/floor/plasteel/airless{icon_state = "damaged4"},/area/ruin/onehalf/hallway) -"bM" = (/obj/machinery/vending/coffee,/turf/open/floor/plasteel/airless{icon_state = "damaged4"},/area/ruin/onehalf/hallway) -"bN" = (/obj/machinery/vending/snack,/turf/open/floor/plasteel/airless{icon_state = "damaged2"},/area/ruin/onehalf/hallway) -"bO" = (/obj/structure/disposalpipe/trunk{dir = 1},/obj/machinery/disposal/bin,/turf/open/floor/plasteel/airless,/area/ruin/onehalf/hallway) -"bP" = (/obj/structure/girder/reinforced,/obj/item/stack/sheet/plasteel,/turf/open/floor/plating/airless,/area/ruin/onehalf/hallway) -"bQ" = (/obj/structure/girder/reinforced,/turf/open/floor/plating/airless,/area/ruin/onehalf/hallway) -"bR" = (/turf/closed/wall/r_wall,/area/ruin/onehalf/hallway) -"bS" = (/turf/open/floor/plasteel/airless{icon_state = "damaged2"},/area/ruin/onehalf/hallway) -"bT" = (/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel/airless,/area/ruin/onehalf/hallway) -"bU" = (/turf/closed/wall/r_wall,/area/ruin/onehalf/bridge) -"bV" = (/obj/item/stack/sheet/metal,/turf/open/space,/area/space) -"bW" = (/turf/open/floor/plating/airless{broken = 1; icon_state = "platingdmg1"},/area/ruin/onehalf/hallway) -"bX" = (/obj/structure/disposalpipe/segment,/obj/item/stack/rods,/turf/open/floor/plasteel/airless{icon_state = "damaged5"},/area/ruin/onehalf/hallway) -"bY" = (/obj/structure/grille,/turf/open/floor/plating/airless,/area/ruin/onehalf/hallway) -"bZ" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/machinery/door/poddoor/preopen{id = "bridge_onehalf"; name = "bridge blast door"},/turf/open/floor/plating,/area/ruin/onehalf/bridge) -"ca" = (/obj/structure/table/reinforced,/obj/item/device/flashlight/lamp,/turf/open/floor/plasteel,/area/ruin/onehalf/bridge) -"cb" = (/obj/structure/table/reinforced,/obj/item/weapon/paper,/obj/item/weapon/pen,/turf/open/floor/plasteel,/area/ruin/onehalf/bridge) -"cc" = (/obj/structure/closet/emcloset,/turf/open/floor/plasteel,/area/ruin/onehalf/bridge) -"cd" = (/obj/machinery/light{dir = 1},/obj/structure/frame/computer,/turf/open/floor/plasteel,/area/ruin/onehalf/bridge) -"ce" = (/obj/structure/frame/computer,/turf/open/floor/plasteel,/area/ruin/onehalf/bridge) -"cf" = (/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/power/apc{cell_type = 2500; dir = 1; name = "Bridge APC"; pixel_y = 24},/turf/open/floor/plasteel,/area/ruin/onehalf/bridge) -"cg" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/table/reinforced,/obj/item/stack/spacecash/c500{pixel_y = 8},/obj/item/stack/spacecash/c1000,/turf/open/floor/plasteel,/area/ruin/onehalf/bridge) -"ch" = (/obj/structure/disposalpipe/junction{tag = "icon-pipe-j1 (NORTH)"; icon_state = "pipe-j1"; dir = 1},/obj/item/weapon/shard,/turf/open/floor/plating/airless{broken = 1; icon_state = "platingdmg2"},/area/ruin/onehalf/hallway) -"ci" = (/obj/structure/lattice,/obj/structure/disposalpipe/broken{tag = "icon-pipe-b (EAST)"; icon_state = "pipe-b"; dir = 4},/obj/structure/disposalpipe/broken{tag = "icon-pipe-b (WEST)"; icon_state = "pipe-b"; dir = 8},/obj/item/stack/rods,/turf/open/space,/area/ruin/onehalf/hallway) -"cj" = (/obj/structure/lattice,/obj/structure/disposalpipe/segment{dir = 4},/obj/item/weapon/shard{icon_state = "small"},/turf/open/space,/area/space) -"ck" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/door/poddoor/preopen{id = "bridge_onehalf"; name = "bridge blast door"},/turf/open/floor/plating,/area/ruin/onehalf/bridge) -"cl" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/structure/table/reinforced,/obj/item/weapon/paper_bin{total_paper = 12},/turf/open/floor/plasteel,/area/ruin/onehalf/bridge) -"cm" = (/obj/structure/chair/office{dir = 8},/turf/open/floor/plasteel,/area/ruin/onehalf/bridge) -"cn" = (/turf/open/floor/plasteel,/area/ruin/onehalf/bridge) -"co" = (/obj/structure/chair/office{tag = "icon-chair (NORTH)"; icon_state = "chair"; dir = 1},/turf/open/floor/plasteel,/area/ruin/onehalf/bridge) -"cp" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/table/reinforced,/obj/item/weapon/lighter,/turf/open/floor/plasteel,/area/ruin/onehalf/bridge) -"cq" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/cable{icon_state = "0-2"; pixel_y = 1; d2 = 2},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/door/poddoor/preopen{id = "bridge_onehalf"; name = "bridge blast door"},/turf/open/floor/plating,/area/ruin/onehalf/bridge) -"cr" = (/obj/item/stack/rods,/turf/open/space,/area/space) +"aX" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel,/area/ruin/onehalf/drone_bay) +"aY" = (/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/power/apc{cell_type = 2500; dir = 1; name = "Mining Drone Bay APC"; pixel_y = 24},/turf/open/floor/plasteel,/area/ruin/onehalf/drone_bay) +"aZ" = (/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel,/area/ruin/onehalf/drone_bay) +"ba" = (/obj/machinery/button/door{id = "onehalf_drone2int"; name = "Drone 2 Internal Hatch Override"; pixel_x = 8; pixel_y = 27},/obj/machinery/button/door{id = "onehalf_drone2ext"; name = "Drone 2 External Hatch Override"; pixel_x = 8; pixel_y = 37},/obj/machinery/button/door{id = "onehalf_drone1int"; name = "Drone 1 Internal Hatch Override"; pixel_x = -8; pixel_y = 27},/obj/machinery/button/door{id = "onehalf_drone1ext"; name = "Drone 1 External Hatch Override"; pixel_x = -8; pixel_y = 37},/turf/open/floor/plasteel,/area/ruin/onehalf/drone_bay) +"bb" = (/turf/open/floor/plasteel,/area/ruin/onehalf/drone_bay) +"bc" = (/obj/machinery/button/door{id = "onehalf_drone3int"; name = "Drone 3 Internal Hatch Override"; pixel_x = -8; pixel_y = 27},/obj/machinery/button/door{id = "onehalf_drone3ext"; name = "Drone 3 External Hatch Override"; pixel_x = -8; pixel_y = 37},/obj/machinery/button/door{id = "onehalf_drone4ext"; name = "Drone 4 External Hatch Override"; pixel_x = 8; pixel_y = 37},/obj/machinery/button/door{id = "onehalf_drone4int"; name = "Drone 4 Internal Hatch Override"; pixel_x = 8; pixel_y = 27},/turf/open/floor/plasteel,/area/ruin/onehalf/drone_bay) +"bd" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/ruin/onehalf/drone_bay) +"be" = (/obj/item/stack/sheet/metal,/turf/open/floor/plating/airless{broken = 1; icon_state = "platingdmg1"},/area/ruin/onehalf/hallway) +"bf" = (/obj/structure/disposalpipe/broken{tag = "icon-pipe-b (EAST)"; icon_state = "pipe-b"; dir = 4},/obj/item/stack/cable_coil/cut{amount = 2; dir = 2; icon_state = "coil_red2"},/turf/open/floor/plating/airless{broken = 1; icon_state = "platingdmg2"},/area/ruin/onehalf/hallway) +"bg" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/open/floor/plasteel/airless{icon_state = "damaged3"},/area/ruin/onehalf/hallway) +"bh" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel/airless{icon_state = "damaged5"},/area/ruin/onehalf/hallway) +"bi" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel/airless,/area/ruin/onehalf/hallway) +"bj" = (/obj/structure/disposalpipe/junction{icon_state = "pipe-j1"; dir = 4},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel/airless{icon_state = "damaged1"},/area/ruin/onehalf/hallway) +"bk" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/open/floor/plasteel/airless,/area/ruin/onehalf/hallway) +"bl" = (/obj/structure/disposalpipe/junction{icon_state = "pipe-j1"; dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel/airless,/area/ruin/onehalf/hallway) +"bm" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/door/airlock/glass,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel,/area/ruin/onehalf/drone_bay) +"bn" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/open/floor/plasteel,/area/ruin/onehalf/drone_bay) +"bo" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel,/area/ruin/onehalf/drone_bay) +"bp" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel,/area/ruin/onehalf/drone_bay) +"bq" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/door/airlock/maintenance_hatch,/turf/open/floor/plasteel,/area/ruin/onehalf/drone_bay) +"br" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/light/small{dir = 1},/turf/open/floor/plasteel{icon_state = "floorgrime"},/area/ruin/onehalf/drone_bay) +"bs" = (/obj/structure/disposalpipe/junction{icon_state = "pipe-y"; dir = 1},/turf/open/floor/plasteel{icon_state = "floorgrime"},/area/ruin/onehalf/drone_bay) +"bt" = (/obj/structure/disposalpipe/trunk{dir = 8},/obj/machinery/disposal/bin,/turf/open/floor/plating,/area/ruin/onehalf/drone_bay) +"bu" = (/obj/structure/disposalpipe/broken{tag = "icon-pipe-b (EAST)"; icon_state = "pipe-b"; dir = 4},/turf/open/floor/plating/airless{icon_state = "platingdmg3"},/area/ruin/onehalf/hallway) +"bv" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel/airless{icon_state = "damaged3"},/area/ruin/onehalf/hallway) +"bw" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel/airless,/area/ruin/onehalf/hallway) +"bx" = (/obj/structure/disposalpipe/segment,/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel/airless{icon_state = "damaged1"},/area/ruin/onehalf/hallway) +"by" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable,/obj/machinery/power/apc{dir = 2; name = "Hallway APC"; pixel_y = -24},/turf/open/floor/plasteel/airless,/area/ruin/onehalf/hallway) +"bz" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel/airless{icon_state = "damaged4"},/area/ruin/onehalf/hallway) +"bA" = (/obj/structure/disposalpipe/segment,/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel/airless,/area/ruin/onehalf/hallway) +"bB" = (/obj/machinery/door/airlock/glass,/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel,/area/ruin/onehalf/drone_bay) +"bC" = (/obj/structure/disposalpipe/junction{dir = 8; icon_state = "pipe-j1"},/turf/open/floor/plasteel,/area/ruin/onehalf/drone_bay) +"bD" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/light,/turf/open/floor/plasteel,/area/ruin/onehalf/drone_bay) +"bE" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/turf/open/floor/plasteel,/area/ruin/onehalf/drone_bay) +"bF" = (/obj/machinery/portable_atmospherics/canister/oxygen,/turf/open/floor/plasteel{icon_state = "floorgrime"},/area/ruin/onehalf/drone_bay) +"bG" = (/turf/open/floor/plasteel{icon_state = "floorgrime"},/area/ruin/onehalf/drone_bay) +"bH" = (/obj/structure/chair/office{tag = "icon-chair (EAST)"; icon_state = "chair"; dir = 4},/turf/open/floor/plasteel{icon_state = "floorgrime"},/area/ruin/onehalf/drone_bay) +"bI" = (/obj/structure/girder,/turf/open/floor/plating/airless,/area/ruin/onehalf/hallway) +"bJ" = (/obj/structure/closet/emcloset,/turf/open/floor/plasteel/airless{icon_state = "damaged4"},/area/ruin/onehalf/hallway) +"bK" = (/obj/machinery/vending/coffee,/turf/open/floor/plasteel/airless{icon_state = "damaged4"},/area/ruin/onehalf/hallway) +"bL" = (/obj/machinery/vending/snack,/turf/open/floor/plasteel/airless{icon_state = "damaged2"},/area/ruin/onehalf/hallway) +"bM" = (/obj/structure/disposalpipe/trunk{dir = 1},/obj/machinery/disposal/bin,/turf/open/floor/plasteel/airless,/area/ruin/onehalf/hallway) +"bN" = (/obj/structure/girder/reinforced,/obj/item/stack/sheet/plasteel,/turf/open/floor/plating/airless,/area/ruin/onehalf/hallway) +"bO" = (/obj/structure/girder/reinforced,/turf/open/floor/plating/airless,/area/ruin/onehalf/hallway) +"bP" = (/turf/closed/wall/r_wall,/area/ruin/onehalf/hallway) +"bQ" = (/turf/open/floor/plasteel/airless{icon_state = "damaged2"},/area/ruin/onehalf/hallway) +"bR" = (/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel/airless,/area/ruin/onehalf/hallway) +"bS" = (/turf/closed/wall/r_wall,/area/ruin/onehalf/bridge) +"bT" = (/obj/item/stack/sheet/metal,/turf/open/space,/area/space) +"bU" = (/turf/open/floor/plating/airless{broken = 1; icon_state = "platingdmg1"},/area/ruin/onehalf/hallway) +"bV" = (/obj/structure/disposalpipe/segment,/obj/item/stack/rods,/turf/open/floor/plasteel/airless{icon_state = "damaged5"},/area/ruin/onehalf/hallway) +"bW" = (/obj/structure/grille,/turf/open/floor/plating/airless,/area/ruin/onehalf/hallway) +"bX" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/machinery/door/poddoor/preopen{id = "bridge_onehalf"; name = "bridge blast door"},/turf/open/floor/plating,/area/ruin/onehalf/bridge) +"bY" = (/obj/structure/table/reinforced,/obj/item/device/flashlight/lamp,/turf/open/floor/plasteel,/area/ruin/onehalf/bridge) +"bZ" = (/obj/structure/table/reinforced,/obj/item/weapon/paper,/obj/item/weapon/pen,/turf/open/floor/plasteel,/area/ruin/onehalf/bridge) +"ca" = (/obj/structure/closet/emcloset,/turf/open/floor/plasteel,/area/ruin/onehalf/bridge) +"cb" = (/obj/machinery/light{dir = 1},/obj/structure/frame/computer,/turf/open/floor/plasteel,/area/ruin/onehalf/bridge) +"cc" = (/obj/structure/frame/computer,/turf/open/floor/plasteel,/area/ruin/onehalf/bridge) +"cd" = (/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/power/apc{cell_type = 2500; dir = 1; name = "Bridge APC"; pixel_y = 24},/turf/open/floor/plasteel,/area/ruin/onehalf/bridge) +"ce" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/table/reinforced,/obj/item/stack/spacecash/c500{pixel_y = 8},/obj/item/stack/spacecash/c1000,/turf/open/floor/plasteel,/area/ruin/onehalf/bridge) +"cf" = (/obj/structure/girder/reinforced,/turf/open/floor/plating/airless,/area/space) +"cg" = (/obj/structure/disposalpipe/junction{tag = "icon-pipe-j1 (NORTH)"; icon_state = "pipe-j1"; dir = 1},/obj/item/weapon/shard,/turf/open/floor/plating/airless{broken = 1; icon_state = "platingdmg2"},/area/ruin/onehalf/hallway) +"ch" = (/obj/structure/lattice,/obj/structure/disposalpipe/broken{tag = "icon-pipe-b (EAST)"; icon_state = "pipe-b"; dir = 4},/obj/structure/disposalpipe/broken{tag = "icon-pipe-b (WEST)"; icon_state = "pipe-b"; dir = 8},/obj/item/stack/rods,/turf/open/space,/area/ruin/onehalf/hallway) +"ci" = (/obj/structure/lattice,/obj/structure/disposalpipe/segment{dir = 4},/obj/item/weapon/shard{icon_state = "small"},/turf/open/space,/area/space) +"cj" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/door/poddoor/preopen{id = "bridge_onehalf"; name = "bridge blast door"},/turf/open/floor/plating,/area/ruin/onehalf/bridge) +"ck" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/structure/table/reinforced,/obj/item/weapon/paper_bin{amount = 12},/turf/open/floor/plasteel,/area/ruin/onehalf/bridge) +"cl" = (/obj/structure/chair/office{dir = 8},/turf/open/floor/plasteel,/area/ruin/onehalf/bridge) +"cm" = (/turf/open/floor/plasteel,/area/ruin/onehalf/bridge) +"cn" = (/obj/structure/chair/office{tag = "icon-chair (NORTH)"; icon_state = "chair"; dir = 1},/turf/open/floor/plasteel,/area/ruin/onehalf/bridge) +"co" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/table/reinforced,/obj/item/weapon/lighter,/turf/open/floor/plasteel,/area/ruin/onehalf/bridge) +"cp" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/cable{icon_state = "0-2"; pixel_y = 1; d2 = 2},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/door/poddoor/preopen{id = "bridge_onehalf"; name = "bridge blast door"},/turf/open/floor/plating,/area/ruin/onehalf/bridge) +"cq" = (/obj/item/stack/rods,/turf/open/space,/area/space) +"cr" = (/turf/open/floor/plating/airless,/area/space) "cs" = (/obj/item/stack/sheet/plasteel{amount = 10},/obj/structure/lattice,/turf/open/space,/area/space) "ct" = (/obj/structure/lattice,/obj/item/weapon/shard{icon_state = "medium"},/turf/open/space,/area/ruin/onehalf/hallway) "cu" = (/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel/airless{icon_state = "damaged5"},/area/ruin/onehalf/hallway) @@ -156,16 +156,18 @@ "cZ" = (/obj/structure/table/reinforced,/obj/item/weapon/ore/bluespace_crystal,/obj/item/weapon/coin/plasma,/turf/open/floor/plasteel,/area/ruin/onehalf/bridge) "da" = (/obj/structure/closet/firecloset/full,/turf/open/floor/plasteel,/area/ruin/onehalf/bridge) "db" = (/obj/machinery/light,/obj/structure/table/reinforced,/obj/item/weapon/storage/firstaid/regular,/turf/open/floor/plasteel,/area/ruin/onehalf/bridge) -"dc" = (/obj/structure/grille{density = 0; icon_state = "brokengrille"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plating/airless{broken = 1; icon_state = "platingdmg1"},/area/ruin/onehalf/hallway) -"dd" = (/obj/structure/grille,/obj/item/weapon/shard,/turf/open/floor/plating/airless{icon_state = "platingdmg3"},/area/ruin/onehalf/hallway) -"de" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/structure/cable{icon_state = "0-2"; pixel_y = 1; d2 = 2},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/door/poddoor/preopen{id = "bridge_onehalf"; name = "bridge blast door"},/turf/open/floor/plating,/area/ruin/onehalf/bridge) -"df" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/door/poddoor/preopen{id = "bridge_onehalf"; name = "bridge blast door"},/turf/open/floor/plating,/area/ruin/onehalf/bridge) -"dg" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/structure/cable{icon_state = "0-2"; pixel_y = 1; d2 = 2},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/door/poddoor/preopen{id = "bridge_onehalf"; name = "bridge blast door"},/turf/open/floor/plating,/area/ruin/onehalf/bridge) -"dh" = (/obj/structure/lattice,/obj/item/stack/sheet/plasteel,/turf/open/space,/area/space) -"di" = (/obj/structure/lattice,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/item/weapon/shard{icon_state = "medium"},/turf/open/space,/area/space) -"dj" = (/obj/structure/lattice,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/item/stack/rods,/turf/open/space,/area/space) -"dk" = (/obj/structure/lattice,/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/space,/area/space) -"dl" = (/obj/item/stack/cable_coil/cut{amount = 2; dir = 2; icon_state = "coil_red2"},/turf/open/space,/area/space) +"dc" = (/obj/structure/girder/reinforced,/obj/item/stack/sheet/plasteel,/turf/open/floor/plating/airless,/area/space) +"dd" = (/turf/open/floor/plating/airless{broken = 1; icon_state = "platingdmg2"},/area/space) +"de" = (/obj/structure/grille{density = 0; icon_state = "brokengrille"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plating/airless{broken = 1; icon_state = "platingdmg1"},/area/ruin/onehalf/hallway) +"df" = (/obj/structure/grille,/obj/item/weapon/shard,/turf/open/floor/plating/airless{icon_state = "platingdmg3"},/area/ruin/onehalf/hallway) +"dg" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/structure/cable{icon_state = "0-2"; pixel_y = 1; d2 = 2},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/door/poddoor/preopen{id = "bridge_onehalf"; name = "bridge blast door"},/turf/open/floor/plating,/area/ruin/onehalf/bridge) +"dh" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/door/poddoor/preopen{id = "bridge_onehalf"; name = "bridge blast door"},/turf/open/floor/plating,/area/ruin/onehalf/bridge) +"di" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/structure/cable{icon_state = "0-2"; pixel_y = 1; d2 = 2},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/door/poddoor/preopen{id = "bridge_onehalf"; name = "bridge blast door"},/turf/open/floor/plating,/area/ruin/onehalf/bridge) +"dj" = (/obj/structure/lattice,/obj/item/stack/sheet/plasteel,/turf/open/space,/area/space) +"dk" = (/obj/structure/lattice,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/item/weapon/shard{icon_state = "medium"},/turf/open/space,/area/space) +"dl" = (/obj/structure/lattice,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/item/stack/rods,/turf/open/space,/area/space) +"dm" = (/obj/structure/lattice,/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/space,/area/space) +"dn" = (/obj/item/stack/cable_coil/cut{amount = 2; dir = 2; icon_state = "coil_red2"},/turf/open/space,/area/space) (1,1,1) = {" aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa @@ -174,18 +176,18 @@ aaaaaaaaaeacafagagagagagagahagagaiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaajakakakagalamanagaoapaoagaqarasaratarauaravaraaaaaaaaaaaa aaaaawaxaxayazagaAamaBagaCapaoagaDaraEaraFaraEaraEarawaraGaraaaa aaaaaaaHaIaxaJagaKaLaMagaoapaoagaqaraNaraOaraParaQaraaaraRaraaaa -aaaaaSajaxaTaUagagaVagagagaWagagaXaYaZbaaZbbaZbcbdarararbeararaa -aaaaawbfbgbhbibjbjbkbibiblbjbmbnbobpbqbpbqbpbqbpbqbpbrbsbtbubeaa -aaaaaabvbwbwbxbxbwbybxbxbzbAbBbCbpbpbDbEbDbpbDbEbFbGarbHbIbJbeaa -aaaaaabKajakbLbMbNbObPbQbRbSbTbUbUbUbUbUbUbUbUbUbUbUararbeararaa -aaaaaaaabVbWbKakbQbRajawbRbWbXbYaabZcacbcccdcecfcgbUawaaaaaaaaaa -aaaaaaaaaaaaaaaabQaaaabVaxaxchcicjckclcmcncocncncpcqadaaaaaaaaaa -aaaaaaaaaaaaaacrajcsaaaaajctcucvbUbUcwcncxcncncncyczaiaaaaaaaaaa -aaaaaaaaaaaaaaaaaaawcAaacBcCcDcEcFcGcncxcHcIcncJceczaiaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaacrawajcKcLbUbUbUcMcncncncncnceczaiaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaacNcAaxcOcPcQawbZcRcmcncScncTcUcVcWaaaaaaaaaa -aaaaaaaaaaaaaaaaaacraaaabRcXaJcQaabZcYcZdacececndbbUaiaaaaaaaaaa -aaaaaaaaaaaaaaaaaabPawcLbQdcddbUbUbUbUdedfdfdfdgbUbUaiaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaadhdidjacacacacacdkacacacdkacacafaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaadlaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaSajaxaTaUagagaVagagagaWagagaXaYaZbaaZbbaZbcaZarararbdararaa +aaaaawbebfbgbhbibibjbhbhbkbiblbmbnbobpbobpbobpbobpbobqbrbsbtbdaa +aaaaaabubvbvbwbwbvbxbwbwbybzbAbBbobobCbDbCbobCbDbEbbarbFbGbHbdaa +aaaaaabIajakbJbKbLbMbNbObPbQbRbSbSbSbSbSbSbSbSbSbSbSararbdararaa +aaaaaaaabTbUbIakbObPajawbPbUbVbWaabXbYbZcacbcccdcebSawaaaaaaaaaa +aaaaaaaaaaaaaaaacfaaaabTaxaxcgchcicjckclcmcncmcmcocpadaaaaaaaaaa +aaaaaaaaaaaaaacqcrcsaaaaajctcucvbSbScwcmcxcmcmcmcyczaiaaaaaaaaaa +aaaaaaaaaaaaaaaaaaawcAaacBcCcDcEcFcGcmcxcHcIcmcJccczaiaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaacqawajcKcLbSbSbScMcmcmcmcmcmccczaiaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaacNcAaxcOcPcQawbXcRclcmcScmcTcUcVcWaaaaaaaaaa +aaaaaaaaaaaaaaaaaacqaaaabPcXaJcQaabXcYcZdacccccmdbbSaiaaaaaaaaaa +aaaaaaaaaaaaaaaaaadcawddbOdedfbSbSbSbSdgdhdhdhdibSbSaiaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaadjdkdlacacacacacdmacacacdmacacafaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaadnaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa "} diff --git a/_maps/RandomRuins/SpaceRuins/originalcontent.dmm b/_maps/RandomRuins/SpaceRuins/originalcontent.dmm deleted file mode 100644 index e4eaf7ce8a..0000000000 --- a/_maps/RandomRuins/SpaceRuins/originalcontent.dmm +++ /dev/null @@ -1,175 +0,0 @@ -"aa" = (/turf/open/space,/area/space) -"ab" = (/obj/structure/fluff/paper/corner,/turf/open/space,/area/space) -"ac" = (/obj/structure/fluff/paper,/turf/open/space,/area/space) -"ad" = (/obj/structure/fluff/paper/corner{tag = "icon-papercorner (WEST)"; icon_state = "papercorner"; dir = 8},/turf/open/space,/area/space) -"ae" = (/obj/structure/fluff/paper{tag = "icon-paper (EAST)"; icon_state = "paper"; dir = 4},/turf/open/space,/area/space) -"af" = (/turf/closed/indestructible/paper,/area/ruin/powered) -"ag" = (/obj/structure/fluff/paper{tag = "icon-paper (SOUTHWEST)"; icon_state = "paper"; dir = 10},/turf/open/space,/area/space) -"ah" = (/obj/structure/fluff/paper/corner,/obj/structure/fluff/paper/corner{tag = "icon-papercorner (WEST)"; icon_state = "papercorner"; dir = 8},/turf/open/space,/area/space) -"ai" = (/obj/structure/fluff/paper{tag = "icon-paper (SOUTHEAST)"; icon_state = "paper"; dir = 6},/turf/open/space,/area/space) -"aj" = (/obj/machinery/door/airlock/freezer{name = "airlock"; opacity = 0},/obj/structure/fluff/paper{tag = "icon-paper (WEST)"; icon_state = "paper"; dir = 8},/obj/structure/fluff/paper{tag = "icon-paper (EAST)"; icon_state = "paper"; dir = 4},/turf/open/indestructible{desc = "A floor made of invulernable notebook paper."; icon_state = "paperfloor"; name = "notebook floor"},/area/ruin/powered) -"ak" = (/obj/structure/fluff/paper{tag = "icon-paper (NORTHWEST)"; icon_state = "paper"; dir = 9},/turf/open/indestructible{desc = "A floor made of invulernable notebook paper."; icon_state = "paperfloor"; name = "notebook floor"},/area/ruin/powered) -"al" = (/obj/structure/fluff/paper{tag = "icon-paper (NORTH)"; icon_state = "paper"; dir = 1},/turf/open/indestructible{desc = "A floor made of invulernable notebook paper."; icon_state = "paperfloor"; name = "notebook floor"},/area/ruin/powered) -"am" = (/obj/structure/fluff/paper{tag = "icon-paper (NORTHEAST)"; icon_state = "paper"; dir = 5},/turf/open/indestructible{desc = "A floor made of invulernable notebook paper."; icon_state = "paperfloor"; name = "notebook floor"},/area/ruin/powered) -"an" = (/obj/structure/fluff/paper{tag = "icon-paper (EAST)"; icon_state = "paper"; dir = 4},/obj/structure/fluff/paper{tag = "icon-paper (WEST)"; icon_state = "paper"; dir = 8},/turf/open/indestructible{desc = "A floor made of invulernable notebook paper."; icon_state = "paperfloor"; name = "notebook floor"},/area/ruin/powered) -"ao" = (/obj/structure/fluff/paper/corner{tag = "icon-papercorner (EAST)"; icon_state = "papercorner"; dir = 4},/turf/open/indestructible{desc = "A floor made of invulernable notebook paper."; icon_state = "paperfloor"; name = "notebook floor"},/area/ruin/powered) -"ap" = (/turf/open/indestructible{desc = "A floor made of invulernable notebook paper."; icon_state = "paperfloor"; name = "notebook floor"},/area/ruin/powered) -"aq" = (/obj/structure/fluff/paper{tag = "icon-paper (EAST)"; icon_state = "paper"; dir = 4},/turf/open/indestructible{desc = "A floor made of invulernable notebook paper."; icon_state = "paperfloor"; name = "notebook floor"},/area/ruin/powered) -"ar" = (/obj/structure/fluff/paper{tag = "icon-paper (WEST)"; icon_state = "paper"; dir = 8},/turf/open/indestructible{desc = "A floor made of invulernable notebook paper."; icon_state = "paperfloor"; name = "notebook floor"},/area/ruin/powered) -"as" = (/obj/item/weapon/paper/crumpled{desc = "Various scrawled out drawings and sketches reside on the paper, apparently he didn't much care for these drawings."},/turf/open/indestructible{desc = "A floor made of invulernable notebook paper."; icon_state = "paperfloor"; name = "notebook floor"},/area/ruin/powered) -"at" = (/mob/living/simple_animal/hostile/stickman,/turf/open/indestructible{desc = "A floor made of invulernable notebook paper."; icon_state = "paperfloor"; name = "notebook floor"},/area/ruin/powered) -"au" = (/obj/structure/fluff/paper/stack{tag = "icon-paperstack (EAST)"; icon_state = "paperstack"; dir = 4},/obj/structure/fluff/paper/corner{tag = "icon-papercorner (NORTH)"; icon_state = "papercorner"; dir = 1},/turf/open/indestructible{desc = "A floor made of invulernable notebook paper."; icon_state = "paperfloor"; name = "notebook floor"},/area/ruin/powered) -"av" = (/obj/structure/fluff/paper/corner{tag = "icon-papercorner (NORTH)"; icon_state = "papercorner"; dir = 1},/obj/structure/fluff/paper/corner{tag = "icon-papercorner (EAST)"; icon_state = "papercorner"; dir = 4},/turf/open/indestructible{desc = "A floor made of invulernable notebook paper."; icon_state = "paperfloor"; name = "notebook floor"},/area/ruin/powered) -"aw" = (/obj/structure/fluff/paper{tag = "icon-paper (WEST)"; icon_state = "paper"; dir = 8},/turf/open/space,/area/space) -"ax" = (/obj/structure/fluff/paper/corner{tag = "icon-papercorner (NORTH)"; icon_state = "papercorner"; dir = 1},/turf/open/indestructible{desc = "A floor made of invulernable notebook paper."; icon_state = "paperfloor"; name = "notebook floor"},/area/ruin/powered) -"ay" = (/obj/structure/fluff/paper{tag = "icon-paper (SOUTHWEST)"; icon_state = "paper"; dir = 10},/turf/open/indestructible{desc = "A floor made of invulernable notebook paper."; icon_state = "paperfloor"; name = "notebook floor"},/area/ruin/powered) -"az" = (/obj/structure/fluff/paper,/turf/open/indestructible{desc = "A floor made of invulernable notebook paper."; icon_state = "paperfloor"; name = "notebook floor"},/area/ruin/powered) -"aA" = (/obj/structure/fluff/paper/corner{tag = "icon-papercorner (WEST)"; icon_state = "papercorner"; dir = 8},/turf/open/indestructible{desc = "A floor made of invulernable notebook paper."; icon_state = "paperfloor"; name = "notebook floor"},/area/ruin/powered) -"aB" = (/obj/structure/fluff/paper/stack,/obj/structure/fluff/paper/stack{tag = "icon-paperstack (NORTH)"; icon_state = "paperstack"; dir = 1},/turf/open/indestructible{desc = "A floor made of invulernable notebook paper."; icon_state = "paperfloor"; name = "notebook floor"},/area/ruin/powered) -"aC" = (/obj/structure/fluff/paper{tag = "icon-paper (NORTHEAST)"; icon_state = "paper"; dir = 5},/obj/structure/fluff/paper{tag = "icon-paper (NORTHWEST)"; icon_state = "paper"; dir = 9},/turf/open/indestructible{desc = "A floor made of invulernable notebook paper."; icon_state = "paperfloor"; name = "notebook floor"},/area/ruin/powered) -"aD" = (/obj/structure/fluff/paper/corner{tag = "icon-papercorner (WEST)"; icon_state = "papercorner"; dir = 8},/obj/structure/fluff/paper/corner,/mob/living/simple_animal/hostile/stickman,/turf/open/indestructible{desc = "A floor made of invulernable notebook paper."; icon_state = "paperfloor"; name = "notebook floor"},/area/ruin/powered) -"aE" = (/obj/structure/fluff/paper{tag = "icon-paper (WEST)"; icon_state = "paper"; dir = 8},/obj/structure/fluff/paper/corner{tag = "icon-papercorner (NORTH)"; icon_state = "papercorner"; dir = 1},/turf/open/indestructible{desc = "A floor made of invulernable notebook paper."; icon_state = "paperfloor"; name = "notebook floor"},/area/ruin/powered) -"aF" = (/obj/structure/fluff/paper{tag = "icon-paper (WEST)"; icon_state = "paper"; dir = 8},/obj/structure/fluff/paper{tag = "icon-paper (EAST)"; icon_state = "paper"; dir = 4},/obj/structure/barricade/wooden,/turf/open/indestructible{desc = "A floor made of invulernable notebook paper."; icon_state = "paperfloor"; name = "notebook floor"},/area/ruin/powered) -"aG" = (/obj/structure/fluff/paper{tag = "icon-paper (SOUTHWEST)"; icon_state = "paper"; dir = 10},/obj/structure/fluff/paper/corner{tag = "icon-papercorner (NORTH)"; icon_state = "papercorner"; dir = 1},/obj/structure/barricade/wooden,/turf/open/indestructible{desc = "A floor made of invulernable notebook paper."; icon_state = "paperfloor"; name = "notebook floor"},/area/ruin/powered) -"aH" = (/obj/structure/fluff/paper/corner{tag = "icon-papercorner (WEST)"; icon_state = "papercorner"; dir = 8},/obj/structure/fluff/paper{tag = "icon-paper (NORTHEAST)"; icon_state = "paper"; dir = 5},/obj/structure/barricade/wooden,/turf/open/indestructible{desc = "A floor made of invulernable notebook paper."; icon_state = "paperfloor"; name = "notebook floor"},/area/ruin/powered) -"aI" = (/obj/structure/fluff/paper/stack{tag = "icon-paperstack (NORTH)"; icon_state = "paperstack"; dir = 1},/turf/open/indestructible{desc = "A floor made of invulernable notebook paper."; icon_state = "paperfloor"; name = "notebook floor"},/area/ruin/powered) -"aJ" = (/obj/structure/fluff/paper/corner{tag = "icon-papercorner (NORTH)"; icon_state = "papercorner"; dir = 1},/obj/structure/fluff/paper/corner,/turf/open/indestructible{desc = "A floor made of invulernable notebook paper."; icon_state = "paperfloor"; name = "notebook floor"},/area/ruin/powered) -"aK" = (/obj/structure/fluff/paper{tag = "icon-paper (NORTH)"; icon_state = "paper"; dir = 1},/obj/structure/fluff/paper,/turf/open/indestructible{desc = "A floor made of invulernable notebook paper."; icon_state = "paperfloor"; name = "notebook floor"},/area/ruin/powered) -"aL" = (/obj/structure/fluff/paper{tag = "icon-paper (NORTH)"; icon_state = "paper"; dir = 1},/obj/structure/fluff/paper/corner{tag = "icon-papercorner (WEST)"; icon_state = "papercorner"; dir = 8},/mob/living/simple_animal/hostile/stickman,/turf/open/indestructible{desc = "A floor made of invulernable notebook paper."; icon_state = "paperfloor"; name = "notebook floor"},/area/ruin/powered) -"aM" = (/obj/structure/fluff/paper/stack{tag = "icon-paperstack (SOUTHWEST)"; icon_state = "paperstack"; dir = 10},/turf/open/indestructible{desc = "A floor made of invulernable notebook paper."; icon_state = "paperfloor"; name = "notebook floor"},/area/ruin/powered) -"aN" = (/obj/structure/fluff/paper/corner{tag = "icon-papercorner (WEST)"; icon_state = "papercorner"; dir = 8},/obj/structure/fluff/paper{tag = "icon-paper (EAST)"; icon_state = "paper"; dir = 4},/turf/open/indestructible{desc = "A floor made of invulernable notebook paper."; icon_state = "paperfloor"; name = "notebook floor"},/area/ruin/powered) -"aO" = (/obj/structure/fluff/paper,/mob/living/simple_animal/hostile/stickman/dog,/turf/open/indestructible{desc = "A floor made of invulernable notebook paper."; icon_state = "paperfloor"; name = "notebook floor"},/area/ruin/powered) -"aP" = (/obj/structure/fluff/paper{tag = "icon-paper (WEST)"; icon_state = "paper"; dir = 8},/obj/structure/fluff/paper{tag = "icon-paper (EAST)"; icon_state = "paper"; dir = 4},/turf/open/indestructible{desc = "A floor made of invulernable notebook paper."; icon_state = "paperfloor"; name = "notebook floor"},/area/ruin/powered) -"aQ" = (/obj/structure/fluff/paper{tag = "icon-paper (SOUTHWEST)"; icon_state = "paper"; dir = 10},/obj/structure/fluff/paper/corner{tag = "icon-papercorner (NORTH)"; icon_state = "papercorner"; dir = 1},/turf/open/indestructible{desc = "A floor made of invulernable notebook paper."; icon_state = "paperfloor"; name = "notebook floor"},/area/ruin/powered) -"aR" = (/obj/structure/fluff/paper{tag = "icon-paper (NORTH)"; icon_state = "paper"; dir = 1},/obj/structure/fluff/paper/corner{tag = "icon-papercorner (WEST)"; icon_state = "papercorner"; dir = 8},/turf/open/indestructible{desc = "A floor made of invulernable notebook paper."; icon_state = "paperfloor"; name = "notebook floor"},/area/ruin/powered) -"aS" = (/obj/structure/fluff/paper/corner,/mob/living/simple_animal/hostile/stickman/dog,/turf/open/indestructible{desc = "A floor made of invulernable notebook paper."; icon_state = "paperfloor"; name = "notebook floor"},/area/ruin/powered) -"aT" = (/obj/structure/fluff/paper{tag = "icon-paper (SOUTHEAST)"; icon_state = "paper"; dir = 6},/turf/open/indestructible{desc = "A floor made of invulernable notebook paper."; icon_state = "paperfloor"; name = "notebook floor"},/area/ruin/powered) -"aU" = (/obj/structure/fluff/paper/corner{tag = "icon-papercorner (NORTH)"; icon_state = "papercorner"; dir = 1},/obj/structure/fluff/paper,/turf/open/indestructible{desc = "A floor made of invulernable notebook paper."; icon_state = "paperfloor"; name = "notebook floor"},/area/ruin/powered) -"aV" = (/obj/structure/fluff/paper{tag = "icon-paper (SOUTHEAST)"; icon_state = "paper"; dir = 6},/obj/structure/fluff/paper/corner{tag = "icon-papercorner (EAST)"; icon_state = "papercorner"; dir = 4},/turf/open/indestructible{desc = "A floor made of invulernable notebook paper."; icon_state = "paperfloor"; name = "notebook floor"},/area/ruin/powered) -"aW" = (/obj/structure/fluff/paper{tag = "icon-paper (NORTH)"; icon_state = "paper"; dir = 1},/obj/structure/fluff/paper/stack,/turf/open/indestructible{desc = "A floor made of invulernable notebook paper."; icon_state = "paperfloor"; name = "notebook floor"},/area/ruin/powered) -"aX" = (/obj/structure/fluff/paper/stack,/turf/open/indestructible{desc = "A floor made of invulernable notebook paper."; icon_state = "paperfloor"; name = "notebook floor"},/area/ruin/powered) -"aY" = (/obj/structure/fluff/paper/corner,/obj/structure/fluff/paper/corner{tag = "icon-papercorner (EAST)"; icon_state = "papercorner"; dir = 4},/turf/open/indestructible{desc = "A floor made of invulernable notebook paper."; icon_state = "paperfloor"; name = "notebook floor"},/area/ruin/powered) -"aZ" = (/obj/structure/fluff/paper/corner{tag = "icon-papercorner (WEST)"; icon_state = "papercorner"; dir = 8},/obj/structure/fluff/paper/corner{tag = "icon-papercorner (NORTH)"; icon_state = "papercorner"; dir = 1},/turf/open/indestructible{desc = "A floor made of invulernable notebook paper."; icon_state = "paperfloor"; name = "notebook floor"},/area/ruin/powered) -"ba" = (/obj/structure/fluff/paper{tag = "icon-paper (NORTH)"; icon_state = "paper"; dir = 1},/mob/living/simple_animal/hostile/stickman/dog,/turf/open/indestructible{desc = "A floor made of invulernable notebook paper."; icon_state = "paperfloor"; name = "notebook floor"},/area/ruin/powered) -"bb" = (/obj/structure/fluff/paper/corner{tag = "icon-papercorner (NORTH)"; icon_state = "papercorner"; dir = 1},/obj/structure/fluff/paper/corner{tag = "icon-papercorner (WEST)"; icon_state = "papercorner"; dir = 8},/turf/open/indestructible{desc = "A floor made of invulernable notebook paper."; icon_state = "paperfloor"; name = "notebook floor"},/area/ruin/powered) -"bc" = (/obj/structure/fluff/paper{tag = "icon-paper (NORTHWEST)"; icon_state = "paper"; dir = 9},/turf/open/space,/area/space) -"bd" = (/obj/structure/fluff/paper{tag = "icon-paper (NORTH)"; icon_state = "paper"; dir = 1},/turf/open/space,/area/space) -"be" = (/obj/structure/fluff/paper/corner{tag = "icon-papercorner (EAST)"; icon_state = "papercorner"; dir = 4},/turf/open/space,/area/space) -"bf" = (/obj/structure/fluff/paper{tag = "icon-paper (EAST)"; icon_state = "paper"; dir = 4},/obj/structure/fluff/paper/stack{tag = "icon-paperstack (NORTHWEST)"; icon_state = "paperstack"; dir = 9},/turf/open/indestructible{desc = "A floor made of invulernable notebook paper."; icon_state = "paperfloor"; name = "notebook floor"},/area/ruin/powered) -"bg" = (/obj/structure/fluff/paper{tag = "icon-paper (WEST)"; icon_state = "paper"; dir = 8},/obj/item/toy/crayon/yellow,/turf/open/indestructible{desc = "A floor made of invulernable notebook paper."; icon_state = "paperfloor"; name = "notebook floor"},/area/ruin/powered) -"bh" = (/obj/structure/fluff/paper{tag = "icon-paper (NORTH)"; icon_state = "paper"; dir = 1},/obj/item/toy/crayon/red,/turf/open/indestructible{desc = "A floor made of invulernable notebook paper."; icon_state = "paperfloor"; name = "notebook floor"},/area/ruin/powered) -"bi" = (/obj/structure/fluff/paper{tag = "icon-paper (NORTH)"; icon_state = "paper"; dir = 1},/obj/structure/fluff/paper/corner,/turf/open/indestructible{desc = "A floor made of invulernable notebook paper."; icon_state = "paperfloor"; name = "notebook floor"},/area/ruin/powered) -"bj" = (/obj/structure/fluff/paper,/obj/structure/fluff/paper/corner{tag = "icon-papercorner (EAST)"; icon_state = "papercorner"; dir = 4},/turf/open/indestructible{desc = "A floor made of invulernable notebook paper."; icon_state = "paperfloor"; name = "notebook floor"},/area/ruin/powered) -"bk" = (/obj/structure/fluff/paper/corner{tag = "icon-papercorner (WEST)"; icon_state = "papercorner"; dir = 8},/obj/structure/fluff/paper/corner{tag = "icon-papercorner (NORTH)"; icon_state = "papercorner"; dir = 1},/mob/living/simple_animal/hostile/stickman,/turf/open/indestructible{desc = "A floor made of invulernable notebook paper."; icon_state = "paperfloor"; name = "notebook floor"},/area/ruin/powered) -"bl" = (/obj/structure/fluff/paper/stack{tag = "icon-paperstack (NORTHWEST)"; icon_state = "paperstack"; dir = 9},/turf/open/indestructible{desc = "A floor made of invulernable notebook paper."; icon_state = "paperfloor"; name = "notebook floor"},/area/ruin/powered) -"bm" = (/obj/structure/fluff/paper,/mob/living/simple_animal/hostile/stickman,/turf/open/indestructible{desc = "A floor made of invulernable notebook paper."; icon_state = "paperfloor"; name = "notebook floor"},/area/ruin/powered) -"bn" = (/obj/structure/fluff/paper{tag = "icon-paper (NORTHWEST)"; icon_state = "paper"; dir = 9},/obj/structure/fluff/paper{tag = "icon-paper (SOUTHWEST)"; icon_state = "paper"; dir = 10},/turf/open/space,/area/space) -"bo" = (/obj/structure/fluff/paper/corner{tag = "icon-papercorner (EAST)"; icon_state = "papercorner"; dir = 4},/obj/structure/fluff/paper/corner{tag = "icon-papercorner (WEST)"; icon_state = "papercorner"; dir = 8},/turf/open/space,/area/space) -"bp" = (/obj/structure/fluff/paper{tag = "icon-paper (WEST)"; icon_state = "paper"; dir = 8},/obj/item/toy/crayon/rainbow,/turf/open/indestructible{desc = "A floor made of invulernable notebook paper."; icon_state = "paperfloor"; name = "notebook floor"},/area/ruin/powered) -"bq" = (/obj/structure/fluff/paper{tag = "icon-paper (EAST)"; icon_state = "paper"; dir = 4},/obj/structure/fluff/paper/stack{tag = "icon-paperstack (EAST)"; icon_state = "paperstack"; dir = 4},/turf/open/indestructible{desc = "A floor made of invulernable notebook paper."; icon_state = "paperfloor"; name = "notebook floor"},/area/ruin/powered) -"br" = (/obj/structure/fluff/paper{tag = "icon-paper (WEST)"; icon_state = "paper"; dir = 8},/obj/structure/fluff/paper/stack{tag = "icon-paperstack (EAST)"; icon_state = "paperstack"; dir = 4},/turf/open/indestructible{desc = "A floor made of invulernable notebook paper."; icon_state = "paperfloor"; name = "notebook floor"},/area/ruin/powered) -"bs" = (/obj/item/toy/crayon/spraycan,/turf/open/indestructible{desc = "A floor made of invulernable notebook paper."; icon_state = "paperfloor"; name = "notebook floor"},/area/ruin/powered) -"bt" = (/obj/item/weapon/storage/crayons,/turf/open/indestructible{desc = "A floor made of invulernable notebook paper."; icon_state = "paperfloor"; name = "notebook floor"},/area/ruin/powered) -"bu" = (/mob/living/simple_animal/hostile/stickman/ranged,/turf/open/indestructible{desc = "A floor made of invulernable notebook paper."; icon_state = "paperfloor"; name = "notebook floor"},/area/ruin/powered) -"bv" = (/obj/structure/fluff/paper/corner{tag = "icon-papercorner (WEST)"; icon_state = "papercorner"; dir = 8},/obj/structure/fluff/paper{tag = "icon-paper (EAST)"; icon_state = "paper"; dir = 4},/obj/structure/fluff/paper/stack{tag = "icon-paperstack (NORTH)"; icon_state = "paperstack"; dir = 1},/turf/open/indestructible{desc = "A floor made of invulernable notebook paper."; icon_state = "paperfloor"; name = "notebook floor"},/area/ruin/powered) -"bw" = (/obj/structure/fluff/paper/corner{tag = "icon-papercorner (NORTH)"; icon_state = "papercorner"; dir = 1},/turf/open/space,/area/space) -"bx" = (/obj/structure/fluff/paper{tag = "icon-paper (NORTHEAST)"; icon_state = "paper"; dir = 5},/turf/open/space,/area/space) -"by" = (/obj/structure/fluff/paper/corner,/turf/open/indestructible{desc = "A floor made of invulernable notebook paper."; icon_state = "paperfloor"; name = "notebook floor"},/area/ruin/powered) -"bz" = (/obj/structure/fluff/paper/stack{tag = "icon-paperstack (NORTHWEST)"; icon_state = "paperstack"; dir = 9},/obj/structure/fluff/paper,/turf/open/indestructible{desc = "A floor made of invulernable notebook paper."; icon_state = "paperfloor"; name = "notebook floor"},/area/ruin/powered) -"bA" = (/obj/item/device/toner,/turf/open/indestructible{desc = "A floor made of invulernable notebook paper."; icon_state = "paperfloor"; name = "notebook floor"},/area/ruin/powered) -"bB" = (/obj/structure/easel,/obj/item/weapon/paper/pamphlet{icon = 'icons/obj/fluff.dmi'; icon_state = "painting4"; info = "This picture depicts a crudely-drawn stickman firing a crudely-drawn gun."; name = "Painting - 'BANG' "},/turf/open/indestructible{desc = "A floor made of invulernable notebook paper."; icon_state = "paperfloor"; name = "notebook floor"},/area/ruin/powered) -"bC" = (/obj/item/toy/crayon/yellow,/obj/structure/fluff/paper{tag = "icon-paper (WEST)"; icon_state = "paper"; dir = 8},/turf/open/indestructible{desc = "A floor made of invulernable notebook paper."; icon_state = "paperfloor"; name = "notebook floor"},/area/ruin/powered) -"bD" = (/obj/structure/fluff/paper{tag = "icon-paper (EAST)"; icon_state = "paper"; dir = 4},/obj/structure/fluff/paper/corner{tag = "icon-papercorner (WEST)"; icon_state = "papercorner"; dir = 8},/turf/open/indestructible{desc = "A floor made of invulernable notebook paper."; icon_state = "paperfloor"; name = "notebook floor"},/area/ruin/powered) -"bE" = (/mob/living/simple_animal/hostile/stickman/dog,/turf/open/indestructible{desc = "A floor made of invulernable notebook paper."; icon_state = "paperfloor"; name = "notebook floor"},/area/ruin/powered) -"bF" = (/obj/structure/fluff/paper/stack{tag = "icon-paperstack (NORTH)"; icon_state = "paperstack"; dir = 1},/obj/structure/fluff/paper/stack,/obj/structure/fluff/paper/corner{tag = "icon-papercorner (NORTH)"; icon_state = "papercorner"; dir = 1},/turf/open/indestructible{desc = "A floor made of invulernable notebook paper."; icon_state = "paperfloor"; name = "notebook floor"},/area/ruin/powered) -"bG" = (/obj/item/toy/crayon/blue,/mob/living/simple_animal/hostile/stickman/ranged,/turf/open/indestructible{desc = "A floor made of invulernable notebook paper."; icon_state = "paperfloor"; name = "notebook floor"},/area/ruin/powered) -"bH" = (/obj/structure/fluff/paper{tag = "icon-paper (EAST)"; icon_state = "paper"; dir = 4},/obj/item/toy/crayon/yellow,/turf/open/indestructible{desc = "A floor made of invulernable notebook paper."; icon_state = "paperfloor"; name = "notebook floor"},/area/ruin/powered) -"bI" = (/obj/structure/fluff/paper{tag = "icon-paper (NORTHWEST)"; icon_state = "paper"; dir = 9},/obj/structure/closet/crate/bin,/obj/item/weapon/paper/crumpled{desc = "Various scrawled out drawings and sketches reside on the paper, apparently he didn't much care for these drawings."},/obj/item/weapon/paper/crumpled{desc = "Various scrawled out drawings and sketches reside on the paper, apparently he didn't much care for these drawings."},/obj/item/weapon/paper/crumpled{desc = "Various scrawled out drawings and sketches reside on the paper, apparently he didn't much care for these drawings."},/obj/item/device/gps{gpstag = "Pulpy Signal"},/turf/open/indestructible{desc = "A floor made of invulernable notebook paper."; icon_state = "paperfloor"; name = "notebook floor"},/area/ruin/powered) -"bJ" = (/obj/structure/fluff/paper{tag = "icon-paper (NORTH)"; icon_state = "paper"; dir = 1},/obj/structure/easel,/obj/item/weapon/paper/pamphlet{icon = 'icons/obj/fluff.dmi'; icon_state = "painting1"; info = "This picture depicts a sunny day on a lush hillside, set under a shaded tree."; name = "Painting - 'Treeside' "},/turf/open/indestructible{desc = "A floor made of invulernable notebook paper."; icon_state = "paperfloor"; name = "notebook floor"},/area/ruin/powered) -"bK" = (/obj/structure/fluff/paper{tag = "icon-paper (NORTHEAST)"; icon_state = "paper"; dir = 5},/obj/structure/table/wood,/obj/item/weapon/storage/crayons,/turf/open/indestructible{desc = "A floor made of invulernable notebook paper."; icon_state = "paperfloor"; name = "notebook floor"},/area/ruin/powered) -"bL" = (/obj/structure/fluff/paper{tag = "icon-paper (EAST)"; icon_state = "paper"; dir = 4},/obj/structure/fluff/paper/stack{tag = "icon-paperstack (SOUTHEAST)"; icon_state = "paperstack"; dir = 6},/turf/open/indestructible{desc = "A floor made of invulernable notebook paper."; icon_state = "paperfloor"; name = "notebook floor"},/area/ruin/powered) -"bM" = (/obj/item/toy/crayon/purple,/turf/open/indestructible{desc = "A floor made of invulernable notebook paper."; icon_state = "paperfloor"; name = "notebook floor"},/area/ruin/powered) -"bN" = (/obj/structure/fluff/paper/corner,/obj/structure/fluff/paper/corner{tag = "icon-papercorner (NORTH)"; icon_state = "papercorner"; dir = 1},/turf/open/indestructible{desc = "A floor made of invulernable notebook paper."; icon_state = "paperfloor"; name = "notebook floor"},/area/ruin/powered) -"bO" = (/obj/machinery/door/airlock/freezer{name = "airlock"; opacity = 0},/obj/structure/fluff/paper{tag = "icon-paper (NORTH)"; icon_state = "paper"; dir = 1},/obj/structure/fluff/paper,/turf/open/indestructible{desc = "A floor made of invulernable notebook paper."; icon_state = "paperfloor"; name = "notebook floor"},/area/ruin/powered) -"bP" = (/obj/structure/fluff/paper{tag = "icon-paper (NORTH)"; icon_state = "paper"; dir = 1},/obj/structure/fluff/paper/corner{tag = "icon-papercorner (WEST)"; icon_state = "papercorner"; dir = 8},/obj/structure/fluff/paper/stack{tag = "icon-paperstack (EAST)"; icon_state = "paperstack"; dir = 4},/turf/open/indestructible{desc = "A floor made of invulernable notebook paper."; icon_state = "paperfloor"; name = "notebook floor"},/area/ruin/powered) -"bQ" = (/obj/structure/fluff/paper{tag = "icon-paper (NORTH)"; icon_state = "paper"; dir = 1},/obj/structure/fluff/paper/stack,/obj/structure/fluff/paper/stack{tag = "icon-paperstack (NORTH)"; icon_state = "paperstack"; dir = 1},/turf/open/indestructible{desc = "A floor made of invulernable notebook paper."; icon_state = "paperfloor"; name = "notebook floor"},/area/ruin/powered) -"bR" = (/obj/structure/fluff/paper/stack{tag = "icon-paperstack (EAST)"; icon_state = "paperstack"; dir = 4},/turf/open/indestructible{desc = "A floor made of invulernable notebook paper."; icon_state = "paperfloor"; name = "notebook floor"},/area/ruin/powered) -"bS" = (/obj/structure/fluff/paper/stack{tag = "icon-paperstack (NORTH)"; icon_state = "paperstack"; dir = 1},/obj/structure/fluff/paper/stack,/turf/open/indestructible{desc = "A floor made of invulernable notebook paper."; icon_state = "paperfloor"; name = "notebook floor"},/area/ruin/powered) -"bT" = (/obj/structure/fluff/paper/corner{tag = "icon-papercorner (NORTH)"; icon_state = "papercorner"; dir = 1},/obj/structure/fluff/paper/stack{tag = "icon-paperstack (SOUTHEAST)"; icon_state = "paperstack"; dir = 6},/turf/open/indestructible{desc = "A floor made of invulernable notebook paper."; icon_state = "paperfloor"; name = "notebook floor"},/area/ruin/powered) -"bU" = (/obj/structure/fluff/paper{tag = "icon-paper (EAST)"; icon_state = "paper"; dir = 4},/mob/living/simple_animal/hostile/stickman,/turf/open/indestructible{desc = "A floor made of invulernable notebook paper."; icon_state = "paperfloor"; name = "notebook floor"},/area/ruin/powered) -"bV" = (/obj/item/toy/crayon/yellow,/turf/open/indestructible{desc = "A floor made of invulernable notebook paper."; icon_state = "paperfloor"; name = "notebook floor"},/area/ruin/powered) -"bW" = (/obj/structure/fluff/paper{tag = "icon-paper (WEST)"; icon_state = "paper"; dir = 8},/obj/structure/easel,/obj/item/weapon/paper/pamphlet{icon = 'icons/obj/fluff.dmi'; icon_state = "painting3"; info = "This picture depicts a smiling clown. Something doesn't feel right about this.."; name = "Painting - 'Pennywise' "},/turf/open/indestructible{desc = "A floor made of invulernable notebook paper."; icon_state = "paperfloor"; name = "notebook floor"},/area/ruin/powered) -"bX" = (/obj/item/toy/crayon/blue,/turf/open/indestructible{desc = "A floor made of invulernable notebook paper."; icon_state = "paperfloor"; name = "notebook floor"},/area/ruin/powered) -"bY" = (/obj/item/toy/crayon/red,/turf/open/indestructible{desc = "A floor made of invulernable notebook paper."; icon_state = "paperfloor"; name = "notebook floor"},/area/ruin/powered) -"bZ" = (/obj/structure/fluff/paper{tag = "icon-paper (EAST)"; icon_state = "paper"; dir = 4},/obj/structure/bed,/obj/item/weapon/bedsheet/rainbow,/turf/open/indestructible{desc = "A floor made of invulernable notebook paper."; icon_state = "paperfloor"; name = "notebook floor"},/area/ruin/powered) -"ca" = (/obj/structure/fluff/paper{tag = "icon-paper (SOUTHWEST)"; icon_state = "paper"; dir = 10},/obj/structure/table/wood,/obj/item/weapon/storage/crayons,/turf/open/indestructible{desc = "A floor made of invulernable notebook paper."; icon_state = "paperfloor"; name = "notebook floor"},/area/ruin/powered) -"cb" = (/obj/structure/fluff/paper/stack{tag = "icon-paperstack (NORTHWEST)"; icon_state = "paperstack"; dir = 9},/obj/item/toy/crayon/purple,/turf/open/indestructible{desc = "A floor made of invulernable notebook paper."; icon_state = "paperfloor"; name = "notebook floor"},/area/ruin/powered) -"cc" = (/mob/living/simple_animal/hostile/boss/paper_wizard,/turf/open/indestructible{desc = "A floor made of invulernable notebook paper."; icon_state = "paperfloor"; name = "notebook floor"},/area/ruin/powered) -"cd" = (/obj/structure/fluff/paper{tag = "icon-paper (EAST)"; icon_state = "paper"; dir = 4},/obj/structure/table/wood,/obj/item/toy/crayon/rainbow,/obj/item/toy/crayon/spraycan,/turf/open/indestructible{desc = "A floor made of invulernable notebook paper."; icon_state = "paperfloor"; name = "notebook floor"},/area/ruin/powered) -"ce" = (/obj/structure/fluff/paper{tag = "icon-paper (EAST)"; icon_state = "paper"; dir = 4},/obj/structure/fluff/paper/corner{tag = "icon-papercorner (EAST)"; icon_state = "papercorner"; dir = 4},/turf/open/indestructible{desc = "A floor made of invulernable notebook paper."; icon_state = "paperfloor"; name = "notebook floor"},/area/ruin/powered) -"cf" = (/obj/structure/fluff/paper{tag = "icon-paper (WEST)"; icon_state = "paper"; dir = 8},/obj/structure/fluff/paper/stack,/turf/open/indestructible{desc = "A floor made of invulernable notebook paper."; icon_state = "paperfloor"; name = "notebook floor"},/area/ruin/powered) -"cg" = (/obj/structure/fluff/paper{tag = "icon-paper (EAST)"; icon_state = "paper"; dir = 4},/obj/structure/table/wood,/obj/item/weapon/paper_bin,/turf/open/indestructible{desc = "A floor made of invulernable notebook paper."; icon_state = "paperfloor"; name = "notebook floor"},/area/ruin/powered) -"ch" = (/obj/structure/fluff/paper,/obj/item/weapon/paper/crumpled{desc = "Various scrawled out drawings and sketches reside on the paper, apparently he didn't much care for these drawings."},/turf/open/indestructible{desc = "A floor made of invulernable notebook paper."; icon_state = "paperfloor"; name = "notebook floor"},/area/ruin/powered) -"ci" = (/obj/structure/fluff/paper,/obj/structure/fluff/paper/corner{tag = "icon-papercorner (NORTH)"; icon_state = "papercorner"; dir = 1},/turf/open/indestructible{desc = "A floor made of invulernable notebook paper."; icon_state = "paperfloor"; name = "notebook floor"},/area/ruin/powered) -"cj" = (/obj/structure/fluff/paper{tag = "icon-paper (NORTH)"; icon_state = "paper"; dir = 1},/mob/living/simple_animal/hostile/stickman,/turf/open/indestructible{desc = "A floor made of invulernable notebook paper."; icon_state = "paperfloor"; name = "notebook floor"},/area/ruin/powered) -"ck" = (/obj/structure/fluff/paper{tag = "icon-paper (SOUTHEAST)"; icon_state = "paper"; dir = 6},/obj/structure/fluff/paper{tag = "icon-paper (NORTHEAST)"; icon_state = "paper"; dir = 5},/turf/open/indestructible{desc = "A floor made of invulernable notebook paper."; icon_state = "paperfloor"; name = "notebook floor"},/area/ruin/powered) -"cl" = (/obj/structure/fluff/paper/corner,/obj/structure/fluff/paper/stack{tag = "icon-paperstack (EAST)"; icon_state = "paperstack"; dir = 4},/turf/open/indestructible{desc = "A floor made of invulernable notebook paper."; icon_state = "paperfloor"; name = "notebook floor"},/area/ruin/powered) -"cm" = (/obj/structure/fluff/paper,/obj/structure/table/wood,/obj/item/weapon/storage/crayons,/obj/item/weapon/storage/crayons,/turf/open/indestructible{desc = "A floor made of invulernable notebook paper."; icon_state = "paperfloor"; name = "notebook floor"},/area/ruin/powered) -"cn" = (/obj/structure/fluff/paper{tag = "icon-paper (SOUTHEAST)"; icon_state = "paper"; dir = 6},/obj/structure/table/wood,/obj/item/weapon/canvas/twentythreeXtwentythree,/obj/item/weapon/canvas,/obj/item/weapon/canvas/nineteenXnineteen,/turf/open/indestructible{desc = "A floor made of invulernable notebook paper."; icon_state = "paperfloor"; name = "notebook floor"},/area/ruin/powered) -"co" = (/obj/structure/fluff/paper,/obj/structure/fluff/paper/stack{tag = "icon-paperstack (NORTHWEST)"; icon_state = "paperstack"; dir = 9},/obj/item/toy/crayon/blue,/turf/open/indestructible{desc = "A floor made of invulernable notebook paper."; icon_state = "paperfloor"; name = "notebook floor"},/area/ruin/powered) -"cp" = (/obj/structure/fluff/paper{tag = "icon-paper (SOUTHWEST)"; icon_state = "paper"; dir = 10},/obj/machinery/photocopier,/turf/open/indestructible{desc = "A floor made of invulernable notebook paper."; icon_state = "paperfloor"; name = "notebook floor"},/area/ruin/powered) -"cq" = (/obj/structure/fluff/paper,/obj/structure/table/wood,/obj/item/weapon/storage/crayons,/obj/item/weapon/pen/fourcolor,/turf/open/indestructible{desc = "A floor made of invulernable notebook paper."; icon_state = "paperfloor"; name = "notebook floor"},/area/ruin/powered) -"cr" = (/obj/structure/fluff/paper,/obj/structure/easel,/obj/item/weapon/paper/pamphlet{icon = 'icons/obj/fluff.dmi'; icon_state = "painting2"; info = "This picture depicts a man yelling on a bridge for no apparent reason."; name = "Painting - 'Hands-On-Face' "},/turf/open/indestructible{desc = "A floor made of invulernable notebook paper."; icon_state = "paperfloor"; name = "notebook floor"},/area/ruin/powered) -"cs" = (/obj/structure/fluff/paper,/obj/structure/fluff/paper{tag = "icon-paper (NORTH)"; icon_state = "paper"; dir = 1},/mob/living/simple_animal/hostile/stickman/dog,/turf/open/indestructible{desc = "A floor made of invulernable notebook paper."; icon_state = "paperfloor"; name = "notebook floor"},/area/ruin/powered) -"ct" = (/obj/structure/fluff/paper,/obj/structure/fluff/paper{tag = "icon-paper (NORTH)"; icon_state = "paper"; dir = 1},/turf/open/indestructible{desc = "A floor made of invulernable notebook paper."; icon_state = "paperfloor"; name = "notebook floor"},/area/ruin/powered) -"cu" = (/obj/structure/fluff/paper{tag = "icon-paper (WEST)"; icon_state = "paper"; dir = 8},/obj/structure/fluff/paper/stack{tag = "icon-paperstack (SOUTHEAST)"; icon_state = "paperstack"; dir = 6},/turf/open/indestructible{desc = "A floor made of invulernable notebook paper."; icon_state = "paperfloor"; name = "notebook floor"},/area/ruin/powered) -"cv" = (/obj/structure/fluff/paper,/obj/structure/fluff/paper/stack{tag = "icon-paperstack (SOUTHEAST)"; icon_state = "paperstack"; dir = 6},/turf/open/indestructible{desc = "A floor made of invulernable notebook paper."; icon_state = "paperfloor"; name = "notebook floor"},/area/ruin/powered) -"cw" = (/obj/structure/fluff/paper{tag = "icon-paper (NORTH)"; icon_state = "paper"; dir = 1},/mob/living/simple_animal/hostile/stickman/ranged,/turf/open/indestructible{desc = "A floor made of invulernable notebook paper."; icon_state = "paperfloor"; name = "notebook floor"},/area/ruin/powered) - -(1,1,1) = {" -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabacacacacacacacacacadaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeafafafafafafafafafagacacacacahacadaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabacaiafafafafafafafafafafafafafafajafagadaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabacacaiafafafafafafafafafakalalalalamafanafafagadaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeafafafafafafafafakalalalaoapapapapaqafajafafafagadaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaabacaiafafafafafafafafarapasapapapatapapaualavamafafafawaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaeafafafafafafafafafafarapapapapapapapapapapapaxamafafagacadaa -aaaaaaaaaaaaaaaaaaaaaaabacacaiafafafafafafafafafafayazazaAaBapapapapapapapapaqafafafafawaa -aaaaaaaaaaaaaaaaaaabacaiafafafafafafafafaCafafafafafafafayaDazazaAapapatapapaqafafafafawaa -aaaaaaaaaaaaaaaaaaaeafafafafafafafafafafaEamafafafafafafafaFafafayaAapasapapaxamafafafagad -aaaaaaaaaaaaaaabacaiafafafafafafafakalalaoaqafafafafafafafaGaHafafarapapapapapaqafafafafaw -aaaaaaaaaaaaaaaeafafafafafafafafafayazaAaIaJaKaLalalamafafafanafafayazaAapaMapaqafafafafaw -aaaaaaaaaaaaaaaeafafafafafafafafafafafayazaNafayazaOaNafafafanafafafafayaAapapaxamafafafaw -aaaaaaaaaaaaaaaeafafafafafafafafafafafafafaPafafafafaQaRamafanafafafafafarapaSazaTafafafaw -aaaaaaaaaaaaabaiafafafafafafafafafafafafafaEalamafafafayaUaKaVafafafafafayazaTafafafafafaw -aaaaaaaaabacaiafafafafakalaWalamafafafafafaraXaqafafafafafafafafafafafafafafafafafafafafaw -aaaaaaaaaeafafafafafakaYazazazaZalbaamafafayazbbalamafafafafafafafafafafafafafafafafbcbdbe -aaaaaaaaaeafafafafafaraqafafafayazaAaqafafafafarapbfafafafakalalalamafafafafafafafafawaaaa -aaaaabacaiafafafafafaraqafafafafafbgaxalamafafayazaZbhalbibjazazazbbalamafafafafafafawaaaa -abacaiafafafafafafafaybkamafafafafarapblaxamafafafayazbmaTafafafafayazbbalamafafafbnboaaaa -aeafafafafafafafafafafbpbqafafafakaoapapapaxamafafafafafafafafafafafafbrbsaqafafafafawaaaa -aeafafafafafafafafafakaYaTafakalaoblapbtapbuaxalalalalalalalamafafafafayazbvafafafafawaaaa -bwbdbxafafafafafafafaraqafafarapapapapapapbyazbzaAapapapaXapaqafafafafafafaEalamafafawaaaa -aaaabwbdbdbdbxafafafaraqafafarapapbuapapapaqafafarapaIapapapaqafafafafafafarbuaqafafagaaaa -aaaaaaaaaaaaaeafafafaraqafafarapapapbAapbBaqafafbCapbyazazazaTafafafafafafayazbDafafafawaa -aaaaaaaaaaaaaeafafafaraqafafayaAapapbEapapbFalalaobGbHafafafafafbIbJbKafafafafanafafafawaa -aaaaaaaaaaaabwbxafafarbLafafafarapaMapapapapasbMapapbNbObPalbQalaobAaqafafafafanafafafawaa -aaaaaaaaaaaaaaaeafafaraqafafafayazazaAapapapbRapapbMaqafayaAapbSbMapbTamafafafanafafafawaa -aaaaaaaaaaaaaaaeafafarbUafafafafafafarapbubtapapbVapaqafafbWapbXbtbYapbZafafafanafafafawaa -aaaaaaaaaaaaaaaeafafaraxamafafafafafayazazazazaAapapaxamafcaaAapcbccapcdafafakceafafafawaa -aaaaaaaaaaaaaaaeafafarapaqafafafafafafafafafafayazazazaNafafcfbRapapapcgafafarbqafafafawaa -aaaaaaaaaaaaaaaeafafaychciaRcjalamafafafafafafafafafafaQckafarapapclcmcnafafaraqafafafawaa -aaaaaaaaaaaaaabwbxafafafafaycoazaZalalamafafafafafafafafafafcpcqcraTafafafakaYaTafafafawaa -aaaaaaaaaaaaaaaaaeafafafafafafafayazazaZalalalbicsctctaRamafafafafafafafafcuaqafafafafawaa -aaaaaaaaaaaaaaaabwbxafafafafafafafafafayazazcvaTafafafayciaRalamafafakalcwaYaTafafafafawaa -aaaaaaaaaaaaaaaaaaaeafafafafafafafafafafafafafafafafafafafayazaZalalaoapapaqafafafafbcbeaa -aaaaaaaaaaaaaaaaaaaeafafafafbcbdbdbdbdbxafafafafafafafafafafafayazazazazazaTafafafafawaaaa -aaaaaaaaaaaaaaaaaaaeafafafafawaaaaaaaaaeafafafafafafafafafafafafafafafafafafafafafafawaaaa -aaaaaaaaaaaaaaaaaaaeafafafafawaaaaaaaabwbdbdbdbdbdbdbdbdbdbdbdbdbxafafafafafafbcbdbdbeaaaa -aaaaaaaaaaaaaaaaaabwbxafafbcbeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabwbdbdbdbdbdbdbeaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaeafafawaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaeafafawaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaabwbdbdbeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -"} diff --git a/_maps/RandomRuins/SpaceRuins/shuttlerelic.dmm b/_maps/RandomRuins/SpaceRuins/shuttlerelic.dmm deleted file mode 100644 index 00fd844795..0000000000 --- a/_maps/RandomRuins/SpaceRuins/shuttlerelic.dmm +++ /dev/null @@ -1,508 +0,0 @@ -//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE -"a" = ( -/turf/open/space, -/area/space) -"b" = ( -/turf/open/space, -/turf/closed/indestructible/oldshuttle/corner{ - tag = "icon-corner (WEST)"; - icon_state = "corner"; - dir = 8 - }, -/area/ruin/powered) -"c" = ( -/turf/closed/indestructible/oldshuttle, -/area/ruin/powered) -"d" = ( -/obj/machinery/door/airlock/glass, -/turf/open/floor/oldshuttle{ - baseturf = /turf/open/space; - initial_gas_mix = "o2=22;n2=82;TEMP=293.15" - }, -/area/ruin/powered) -"e" = ( -/turf/open/space, -/turf/closed/indestructible/oldshuttle/corner, -/area/ruin/powered) -"f" = ( -/turf/open/floor/oldshuttle{ - baseturf = /turf/open/space; - initial_gas_mix = "o2=22;n2=82;TEMP=293.15" - }, -/turf/closed/indestructible/oldshuttle/corner{ - tag = "icon-corner (NORTH)"; - icon_state = "corner"; - dir = 1 - }, -/area/ruin/powered) -"g" = ( -/turf/open/floor/oldshuttle{ - baseturf = /turf/open/space; - initial_gas_mix = "o2=22;n2=82;TEMP=293.15" - }, -/area/ruin/powered) -"h" = ( -/turf/open/floor/oldshuttle{ - baseturf = /turf/open/space; - initial_gas_mix = "o2=22;n2=82;TEMP=293.15" - }, -/turf/closed/indestructible/oldshuttle/corner{ - tag = "icon-corner (EAST)"; - icon_state = "corner"; - dir = 4 - }, -/area/ruin/powered) -"i" = ( -/obj/structure/closet{ - icon_state = "oldcloset"; - name = "strange closet" - }, -/turf/open/floor/oldshuttle{ - baseturf = /turf/open/space; - initial_gas_mix = "o2=22;n2=82;TEMP=293.15" - }, -/area/ruin/powered) -"j" = ( -/obj/structure/shuttle/engine/propulsion/burst{ - tag = "icon-propulsion (NORTH)"; - icon_state = "propulsion"; - dir = 1 - }, -/turf/open/space, -/area/ruin/powered) -"k" = ( -/mob/living/simple_animal/hostile/retaliate/spaceman, -/turf/open/floor/oldshuttle{ - baseturf = /turf/open/space; - initial_gas_mix = "o2=22;n2=82;TEMP=293.15" - }, -/area/ruin/powered) -"l" = ( -/turf/closed/indestructible/oldshuttle{ - tag = "icon-orange"; - icon_state = "orange" - }, -/area/ruin/powered) -"m" = ( -/obj/structure/chair/old{ - tag = "icon-chairold (NORTH)"; - icon_state = "chairold"; - dir = 1 - }, -/turf/open/floor/oldshuttle{ - baseturf = /turf/open/space; - initial_gas_mix = "o2=22;n2=82;TEMP=293.15" - }, -/area/ruin/powered) -"n" = ( -/obj/structure/chair/old{ - tag = "icon-chairold (NORTH)"; - icon_state = "chairold"; - dir = 1 - }, -/obj/item/weapon/crowbar/large{ - desc = "It's a big crowbar. It doesn't fit in your pockets, because it's big. It feels oddly heavy.."; - force = 20; - name = "heavy crowbar" - }, -/turf/open/floor/oldshuttle{ - baseturf = /turf/open/space; - initial_gas_mix = "o2=22;n2=82;TEMP=293.15" - }, -/area/ruin/powered) -"o" = ( -/obj/structure/chair/old{ - tag = "icon-chairold (NORTH)"; - icon_state = "chairold"; - dir = 1 - }, -/mob/living/simple_animal/hostile/retaliate/spaceman, -/turf/open/floor/oldshuttle{ - baseturf = /turf/open/space; - initial_gas_mix = "o2=22;n2=82;TEMP=293.15" - }, -/area/ruin/powered) -"p" = ( -/turf/open/floor/oldshuttle{ - baseturf = /turf/open/space; - initial_gas_mix = "o2=22;n2=82;TEMP=293.15" - }, -/turf/closed/indestructible/oldshuttle/corner{ - tag = "icon-corner (WEST)"; - icon_state = "corner"; - dir = 8 - }, -/area/ruin/powered) -"q" = ( -/turf/open/floor/oldshuttle{ - baseturf = /turf/open/space; - initial_gas_mix = "o2=22;n2=82;TEMP=293.15" - }, -/turf/closed/indestructible/oldshuttle/corner, -/area/ruin/powered) -"r" = ( -/turf/open/space, -/turf/closed/indestructible/oldshuttle/corner{ - tag = "icon-corner (NORTH)"; - icon_state = "corner"; - dir = 1 - }, -/area/ruin/powered) -"s" = ( -/turf/open/space, -/turf/closed/indestructible/oldshuttle/corner{ - tag = "icon-corner (EAST)"; - icon_state = "corner"; - dir = 4 - }, -/area/ruin/powered) -"t" = ( -/obj/machinery/power/generator, -/turf/open/floor/oldshuttle{ - baseturf = /turf/open/space; - initial_gas_mix = "o2=22;n2=82;TEMP=293.15" - }, -/area/ruin/powered) -"u" = ( -/obj/machinery/power/smes, -/turf/open/floor/oldshuttle{ - baseturf = /turf/open/space; - initial_gas_mix = "o2=22;n2=82;TEMP=293.15" - }, -/area/ruin/powered) -"v" = ( -/obj/structure/shuttle/engine/propulsion/burst/left, -/turf/open/space, -/area/ruin/powered) -"w" = ( -/obj/structure/shuttle/engine/propulsion/burst/right, -/turf/open/space, -/area/ruin/powered) -"x" = ( -/obj/structure/shuttle/engine/propulsion/burst, -/turf/open/space, -/area/ruin/powered) - -(1,1,1) = {" -a -a -a -a -a -a -a -a -a -a -b -c -l -v -a -"} -(2,1,1) = {" -a -a -a -a -a -a -a -b -c -c -f -g -l -l -x -"} -(3,1,1) = {" -a -a -a -a -a -b -d -f -g -g -g -g -l -l -x -"} -(4,1,1) = {" -a -a -a -a -j -l -g -g -g -g -p -d -l -w -a -"} -(5,1,1) = {" -a -a -a -a -b -c -g -g -g -p -r -a -a -a -a -"} -(6,1,1) = {" -a -a -b -c -c -c -c -c -c -c -c -c -c -s -a -"} -(7,1,1) = {" -a -b -f -i -c -i -i -i -i -i -i -c -u -c -s -"} -(8,1,1) = {" -b -f -i -i -c -m -m -m -o -m -m -c -g -q -c -"} -(9,1,1) = {" -c -g -g -g -g -m -m -m -m -m -p -c -g -g -c -"} -(10,1,1) = {" -d -g -g -g -k -g -g -g -g -g -c -t -g -g -d -"} -(11,1,1) = {" -c -g -g -g -g -m -m -m -m -m -q -c -g -g -c -"} -(12,1,1) = {" -e -h -i -i -c -n -m -m -o -m -m -c -g -p -c -"} -(13,1,1) = {" -a -e -h -i -c -i -i -i -i -i -i -c -u -c -r -"} -(14,1,1) = {" -a -a -e -c -c -c -c -c -c -c -c -c -c -r -a -"} -(15,1,1) = {" -a -a -a -a -e -c -g -g -g -q -s -a -a -a -a -"} -(16,1,1) = {" -a -a -a -a -j -l -g -g -g -g -q -d -l -v -a -"} -(17,1,1) = {" -a -a -a -a -a -e -d -h -g -g -g -g -l -l -x -"} -(18,1,1) = {" -a -a -a -a -a -a -a -e -c -c -h -g -l -l -x -"} -(19,1,1) = {" -a -a -a -a -a -a -a -a -a -a -e -c -l -w -a -"} diff --git a/_maps/RandomRuins/SpaceRuins/spacebar.dmm b/_maps/RandomRuins/SpaceRuins/spacebar.dmm index a4f4df9211..d8d84a01eb 100644 --- a/_maps/RandomRuins/SpaceRuins/spacebar.dmm +++ b/_maps/RandomRuins/SpaceRuins/spacebar.dmm @@ -1,161 +1,2505 @@ -"aa" = (/turf/open/space,/area/space) -"ab" = (/turf/closed/mineral,/area/ruin/unpowered/no_grav) -"ac" = (/turf/open/floor/plating/asteroid/airless,/area/ruin/unpowered/no_grav) -"ad" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/ruin/powered/spacebar) -"ae" = (/turf/closed/wall,/area/ruin/powered/spacebar) -"af" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/ruin/powered/spacebar) -"ag" = (/turf/open/floor/plating/asteroid,/area/ruin/powered/spacebar) -"ah" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating/asteroid,/area/ruin/powered/spacebar) -"ai" = (/turf/closed/mineral,/area/ruin/powered/spacebar) -"aj" = (/turf/open/floor/plating/asteroid,/turf/closed/wall/mineral/titanium/interior,/area/ruin/powered/spacebar) -"ak" = (/obj/structure/grille,/obj/structure/window/shuttle,/turf/open/floor/plating,/area/ruin/powered/spacebar) -"al" = (/turf/closed/wall,/area/ruin/powered/spacebar/bar) -"am" = (/turf/closed/wall/mineral/titanium,/area/ruin/powered/spacebar) -"an" = (/obj/structure/chair{dir = 1},/turf/open/floor/mineral/titanium/blue,/area/ruin/powered/spacebar) -"ao" = (/obj/structure/table,/obj/machinery/chem_dispenser/drinks/beer,/turf/open/floor/wood,/area/ruin/powered/spacebar/bar) -"ap" = (/obj/structure/table,/obj/machinery/chem_dispenser/drinks,/turf/open/floor/wood,/area/ruin/powered/spacebar/bar) -"aq" = (/obj/structure/table,/obj/machinery/light/small{dir = 1},/obj/item/weapon/book/manual/barman_recipes,/turf/open/floor/wood,/area/ruin/powered/spacebar/bar) -"ar" = (/turf/open/floor/wood,/area/ruin/powered/spacebar/bar) -"as" = (/obj/structure/table,/obj/item/toy/figure/bartender,/turf/open/floor/wood,/area/ruin/powered/spacebar/bar) -"at" = (/obj/structure/table,/obj/item/weapon/reagent_containers/food/drinks/shaker,/turf/open/floor/wood,/area/ruin/powered/spacebar/bar) -"au" = (/obj/effect/mob_spawn/human/bartender/alive,/turf/open/floor/wood,/area/ruin/powered/spacebar/bar) -"av" = (/obj/structure/reagent_dispensers/beerkeg,/turf/open/floor/wood,/area/ruin/powered/spacebar/bar) -"aw" = (/turf/open/floor/mineral/titanium/blue,/area/ruin/powered/spacebar) -"ax" = (/obj/machinery/airalarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/turf/open/floor/wood,/area/ruin/powered/spacebar/bar) -"ay" = (/obj/machinery/door/airlock{name = "Bar Storage"; req_access_txt = "25"},/turf/open/floor/wood,/area/ruin/powered/spacebar/bar) -"az" = (/obj/machinery/atmospherics/components/unary/vent_scrubber,/turf/open/floor/wood,/area/ruin/powered/spacebar/bar) -"aA" = (/obj/machinery/atmospherics/components/unary/vent_pump,/turf/open/floor/wood,/area/ruin/powered/spacebar/bar) -"aB" = (/obj/structure/table,/obj/machinery/reagentgrinder,/turf/open/floor/wood,/area/ruin/powered/spacebar/bar) -"aC" = (/turf/open/floor/plating,/obj/structure/shuttle/engine/propulsion/burst,/turf/closed/wall/mineral/titanium/interior,/area/ruin/powered/spacebar) -"aD" = (/obj/machinery/door/airlock/titanium{name = "Escape Pod Airlock"},/turf/open/floor/mineral/titanium/blue,/area/ruin/powered/spacebar) -"aE" = (/obj/machinery/button/door{id = "spacebardock"; name = "pod dock door cycle"; pixel_x = -32},/turf/open/floor/wood,/area/ruin/powered/spacebar/bar) -"aF" = (/obj/machinery/vending/boozeomat,/turf/closed/wall,/area/ruin/powered/spacebar/bar) -"aG" = (/obj/structure/closet/secure_closet/freezer/kitchen,/turf/open/floor/wood,/area/ruin/powered/spacebar/bar) -"aH" = (/obj/machinery/light/small,/obj/structure/table,/obj/machinery/microwave,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/wood,/area/ruin/powered/spacebar/bar) -"aI" = (/obj/structure/closet/secure_closet/freezer/fridge,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/wood,/area/ruin/powered/spacebar/bar) -"aJ" = (/obj/structure/table,/obj/item/stack/sheet/metal{amount = 10},/turf/open/floor/wood,/area/ruin/powered/spacebar/bar) -"aK" = (/turf/closed/wall,/area/ruin/powered/spacebar) -"aL" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1},/turf/open/floor/plating/asteroid,/area/ruin/powered/spacebar) -"aM" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating/asteroid,/area/ruin/powered/spacebar) -"aN" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall,/area/ruin/powered/spacebar/bar) -"aO" = (/obj/structure/table,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/wood,/area/ruin/powered/spacebar/bar) -"aP" = (/obj/structure/table,/obj/item/weapon/reagent_containers/food/drinks/beer,/obj/item/weapon/reagent_containers/glass/rag,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/wood,/area/ruin/powered/spacebar/bar) -"aQ" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/closed/wall,/area/ruin/powered/spacebar/bar) -"aR" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/closed/wall,/area/ruin/powered/spacebar/bar) -"aS" = (/obj/machinery/door/airlock{name = "Bar Storage"; req_access_txt = "25"},/turf/open/floor/plasteel{icon_state = "wood"},/area/ruin/powered/spacebar/bar) -"aT" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/plating/asteroid,/area/ruin/powered/spacebar) -"aU" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating/asteroid,/area/ruin/powered/spacebar) -"aV" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/closed/wall,/area/ruin/powered/spacebar/bar) -"aW" = (/obj/structure/chair/stool,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/bar,/area/ruin/powered/spacebar/bar) -"aX" = (/obj/structure/chair/stool,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/open/floor/plasteel/bar,/area/ruin/powered/spacebar/bar) -"aY" = (/obj/structure/chair/stool,/turf/open/floor/plasteel/bar,/area/ruin/powered/spacebar/bar) -"aZ" = (/turf/open/floor/plasteel/bar,/area/ruin/powered/spacebar/bar) -"ba" = (/obj/machinery/atmospherics/components/unary/vent_scrubber,/turf/open/floor/plasteel/bar,/area/ruin/powered/spacebar/bar) -"bb" = (/obj/machinery/light{dir = 1},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/bar,/area/ruin/powered/spacebar/bar) -"bc" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/bar,/area/ruin/powered/spacebar/bar) -"bd" = (/obj/machinery/airalarm{frequency = 1439; locked = 0; pixel_y = 23},/turf/open/floor/plasteel/bar,/area/ruin/powered/spacebar/bar) -"be" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/ruin/powered/spacebar/bar) -"bf" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/closed/wall,/area/ruin/powered/spacebar/bar) -"bg" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 5},/turf/open/floor/plasteel/bar,/area/ruin/powered/spacebar/bar) -"bh" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/bar,/area/ruin/powered/spacebar/bar) -"bi" = (/obj/machinery/computer/teleporter,/turf/open/floor/plasteel/bar,/area/ruin/powered/spacebar/bar) -"bj" = (/obj/machinery/door/airlock/external,/turf/open/floor/plating,/area/ruin/powered/spacebar/bar) -"bk" = (/turf/open/floor/plating,/area/ruin/powered/spacebar/bar) -"bl" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/open/floor/plasteel/bar,/area/ruin/powered/spacebar/bar) -"bm" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/bar,/area/ruin/powered/spacebar/bar) -"bn" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/bar,/area/ruin/powered/spacebar/bar) -"bo" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9; pixel_y = 0},/turf/open/floor/plasteel/bar,/area/ruin/powered/spacebar/bar) -"bp" = (/obj/machinery/teleport/station,/turf/open/floor/plasteel/bar,/area/ruin/powered/spacebar/bar) -"bq" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/open/floor/plasteel/bar,/area/ruin/powered/spacebar/bar) -"br" = (/obj/structure/chair{tag = "icon-chair (EAST)"; icon_state = "chair"; dir = 4},/turf/open/floor/plasteel/bar,/area/ruin/powered/spacebar/bar) -"bs" = (/obj/structure/table/wood,/turf/open/floor/plasteel/bar,/area/ruin/powered/spacebar/bar) -"bt" = (/obj/structure/chair{tag = "icon-chair (WEST)"; icon_state = "chair"; dir = 8},/turf/open/floor/plasteel/bar,/area/ruin/powered/spacebar/bar) -"bu" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/bar,/area/ruin/powered/spacebar/bar) -"bv" = (/obj/machinery/teleport/hub,/turf/open/floor/plasteel/bar,/area/ruin/powered/spacebar/bar) -"bw" = (/obj/structure/chair,/turf/open/floor/plasteel/bar,/area/ruin/powered/spacebar/bar) -"bx" = (/obj/machinery/bluespace_beacon,/turf/open/floor/plasteel/bar,/area/ruin/powered/spacebar/bar) -"by" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/plasteel/bar,/area/ruin/powered/spacebar/bar) -"bz" = (/obj/machinery/vending/cola,/turf/open/floor/plasteel/bar,/area/ruin/powered/spacebar/bar) -"bA" = (/obj/machinery/vending/cigarette,/turf/open/floor/plasteel/bar,/area/ruin/powered/spacebar/bar) -"bB" = (/obj/machinery/vending/coffee,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/bar,/area/ruin/powered/spacebar/bar) -"bC" = (/obj/machinery/vending/snack,/obj/machinery/light,/turf/open/floor/plasteel/bar,/area/ruin/powered/spacebar/bar) -"bD" = (/obj/structure/chair{dir = 1},/turf/open/floor/plasteel/bar,/area/ruin/powered/spacebar/bar) -"bE" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall,/area/ruin/powered/spacebar/bar) -"bF" = (/obj/machinery/door/airlock{name = "Unisex Bathroom"},/turf/open/floor/plasteel/freezer,/area/ruin/powered/spacebar/bar) -"bG" = (/obj/machinery/airalarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/turf/open/floor/plasteel/bar,/area/ruin/powered/spacebar/bar) -"bH" = (/obj/structure/urinal{pixel_x = -32},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/plasteel/freezer,/area/ruin/powered/spacebar/bar) -"bI" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/freezer,/area/ruin/powered/spacebar/bar) -"bJ" = (/obj/machinery/atmospherics/components/unary/vent_scrubber,/turf/open/floor/plasteel/freezer,/area/ruin/powered/spacebar/bar) -"bK" = (/turf/open/floor/plasteel/freezer,/area/ruin/powered/spacebar/bar) -"bL" = (/obj/structure/urinal{pixel_x = -32},/turf/open/floor/plasteel/freezer,/area/ruin/powered/spacebar/bar) -"bM" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 8},/turf/open/floor/plasteel/freezer,/area/ruin/powered/spacebar/bar) -"bN" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/turf/open/floor/plasteel/freezer,/area/ruin/powered/spacebar/bar) -"bO" = (/obj/structure/sink{dir = 4; icon_state = "sink"; pixel_x = 11; pixel_y = 0},/obj/structure/mirror{pixel_x = 28},/turf/open/floor/plasteel/freezer,/area/ruin/powered/spacebar/bar) -"bP" = (/obj/structure/table/wood,/obj/machinery/light{icon_state = "tube1"; dir = 4},/turf/open/floor/plasteel/bar,/area/ruin/powered/spacebar/bar) -"bQ" = (/obj/machinery/light/small{dir = 8},/turf/open/floor/plasteel/freezer,/area/ruin/powered/spacebar/bar) -"bR" = (/obj/structure/toilet{dir = 4},/obj/machinery/light/small{dir = 8},/turf/open/floor/plasteel/freezer,/area/ruin/powered/spacebar/bar) -"bS" = (/obj/machinery/door/airlock{name = "Toilet"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/freezer,/area/ruin/powered/spacebar/bar) -"bT" = (/obj/structure/glowshroom/single,/turf/open/floor/plasteel/freezer,/area/ruin/powered/spacebar/bar) -"bU" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating/asteroid,/area/ruin/powered/spacebar) -"bV" = (/obj/machinery/door/airlock/external,/turf/open/floor/plating,/area/ruin/powered/spacebar) -"bW" = (/turf/open/floor/plating,/area/ruin/powered/spacebar) -"bX" = (/obj/machinery/atmospherics/components/unary/tank/air,/turf/open/floor/plating/asteroid,/area/ruin/powered/spacebar) -"bY" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating/asteroid,/area/ruin/powered/spacebar) -"bZ" = (/obj/machinery/button/door{id = "spacebardock"; name = "Podbay Airlock"; pixel_y = -24},/turf/open/floor/plating/asteroid,/area/ruin/powered/spacebar) -"ca" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/turf/open/floor/plating/asteroid,/area/ruin/powered/spacebar) -"cb" = (/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden,/obj/machinery/meter,/turf/open/floor/plating/asteroid,/area/ruin/powered/spacebar) -"cc" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9; pixel_y = 0},/turf/open/floor/plating/asteroid,/area/ruin/powered/spacebar) -"cd" = (/obj/machinery/atmospherics/components/binary/valve/open,/turf/open/floor/plating/asteroid,/area/ruin/powered/spacebar) -"ce" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/open/floor/plating/asteroid,/area/ruin/powered/spacebar) -"cf" = (/turf/open/floor/plating/asteroid,/area/ruin/unpowered/no_grav) -"cg" = (/obj/machinery/door/poddoor/preopen{id = "spacebardock"; name = "airlock dock"},/turf/open/floor/plating,/area/ruin/powered/spacebar) -"ch" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/obj/machinery/meter,/turf/open/floor/plating/asteroid,/area/ruin/powered/spacebar) -"ci" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/plating/asteroid,/area/ruin/powered/spacebar) -"cj" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/ruin/powered/spacebar) -"ck" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating/asteroid/airless,/area/ruin/unpowered/no_grav) -"cl" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/mineral,/area/ruin/unpowered/no_grav) -"cm" = (/obj/machinery/atmospherics/components/unary/outlet_injector/on{dir = 1},/turf/open/floor/plating/asteroid/airless,/area/ruin/unpowered/no_grav) -"cn" = (/obj/machinery/door/poddoor{id = "spacebardock"; name = "airlock dock"},/turf/open/floor/plating,/area/ruin/powered/spacebar) +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"aa" = ( +/turf/open/space, +/area/space) +"ab" = ( +/turf/closed/mineral, +/area/space) +"ac" = ( +/turf/open/floor/plating/asteroid, +/area/space) +"ad" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/ruin/unpowered) +"ae" = ( +/turf/closed/wall, +/area/ruin/unpowered) +"af" = ( +/turf/open/floor/plating/asteroid, +/area/ruin/powered) +"ag" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating/asteroid, +/area/ruin/powered) +"ah" = ( +/turf/closed/mineral, +/area/ruin/powered) +"ai" = ( +/turf/open/floor/plating/asteroid, +/turf/closed/wall/shuttle{ + icon_state = "swall_f6"; + dir = 2 + }, +/area/ruin/powered) +"aj" = ( +/obj/structure/grille, +/obj/structure/window/shuttle, +/turf/open/floor/plating, +/area/ruin/powered) +"ak" = ( +/turf/open/floor/plating/asteroid, +/turf/closed/wall/shuttle{ + dir = 2; + icon_state = "swall_f10"; + layer = 2 + }, +/area/ruin/powered) +"al" = ( +/turf/closed/wall, +/area/ruin/powered) +"am" = ( +/turf/closed/wall/shuttle{ + icon_state = "swall3"; + dir = 2 + }, +/area/ruin/powered) +"an" = ( +/obj/structure/chair{ + dir = 1 + }, +/turf/open/floor/plasteel/shuttle, +/area/ruin/powered) +"ao" = ( +/obj/structure/table, +/obj/machinery/chem_dispenser/drinks/beer, +/turf/open/floor/wood, +/area/ruin/powered{ + name = "Space Bar" + }) +"ap" = ( +/obj/structure/table, +/obj/machinery/chem_dispenser/drinks, +/turf/open/floor/wood, +/area/ruin/powered{ + name = "Space Bar" + }) +"aq" = ( +/obj/structure/table, +/obj/machinery/light/small{ + dir = 1 + }, +/obj/item/weapon/book/manual/barman_recipes, +/turf/open/floor/wood, +/area/ruin/powered{ + name = "Space Bar" + }) +"ar" = ( +/turf/open/floor/wood, +/area/ruin/powered{ + name = "Space Bar" + }) +"as" = ( +/obj/structure/table, +/obj/item/toy/figure/bartender, +/turf/open/floor/wood, +/area/ruin/powered{ + name = "Space Bar" + }) +"at" = ( +/obj/structure/table, +/obj/item/weapon/reagent_containers/food/drinks/shaker, +/turf/open/floor/wood, +/area/ruin/powered{ + name = "Space Bar" + }) +"au" = ( +/obj/effect/mob_spawn/human/bartender/alive, +/turf/open/floor/wood, +/area/ruin/powered{ + name = "Space Bar" + }) +"av" = ( +/obj/structure/reagent_dispensers/beerkeg, +/turf/open/floor/wood, +/area/ruin/powered{ + name = "Space Bar" + }) +"aw" = ( +/turf/open/floor/plasteel/shuttle, +/area/ruin/powered) +"ax" = ( +/obj/machinery/door/airlock{ + name = "Bar Storage"; + req_access_txt = "25" + }, +/turf/open/floor/wood, +/area/ruin/powered{ + name = "Space Bar" + }) +"ay" = ( +/obj/structure/table, +/obj/machinery/reagentgrinder, +/turf/open/floor/wood, +/area/ruin/powered{ + name = "Space Bar" + }) +"az" = ( +/turf/open/floor/plating, +/obj/structure/shuttle/engine/propulsion/burst, +/turf/closed/wall/shuttle{ + icon_state = "swall_f5"; + dir = 2 + }, +/area/ruin/powered) +"aA" = ( +/obj/machinery/door/airlock/shuttle{ + name = "Escape Pod Airlock" + }, +/turf/open/floor/plasteel/shuttle, +/area/ruin/powered) +"aB" = ( +/turf/open/floor/plating, +/obj/structure/shuttle/engine/propulsion/burst, +/turf/closed/wall/shuttle{ + icon_state = "swall_f9"; + dir = 2 + }, +/area/ruin/powered) +"aC" = ( +/obj/machinery/button/door{ + id = "spacebardock"; + name = "pod dock door cycle"; + pixel_x = -32 + }, +/turf/open/floor/wood, +/area/ruin/powered{ + name = "Space Bar" + }) +"aD" = ( +/obj/machinery/vending/boozeomat, +/turf/closed/wall, +/area/ruin/powered{ + name = "Space Bar" + }) +"aE" = ( +/obj/machinery/light/small, +/obj/structure/table, +/obj/machinery/microwave, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/wood, +/area/ruin/powered{ + name = "Space Bar" + }) +"aF" = ( +/obj/structure/table, +/obj/item/stack/sheet/metal{ + amount = 10 + }, +/turf/open/floor/wood, +/area/ruin/powered{ + name = "Space Bar" + }) +"aG" = ( +/obj/structure/table, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/wood, +/area/ruin/powered{ + name = "Space Bar" + }) +"aH" = ( +/obj/structure/table, +/obj/item/weapon/reagent_containers/food/drinks/beer, +/obj/item/weapon/reagent_containers/glass/rag, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/wood, +/area/ruin/powered{ + name = "Space Bar" + }) +"aI" = ( +/obj/machinery/door/airlock{ + name = "Bar Storage"; + req_access_txt = "25" + }, +/turf/open/floor/plasteel{ + icon_state = "wood" + }, +/area/ruin/powered{ + name = "Space Bar" + }) +"aJ" = ( +/obj/structure/chair/stool, +/turf/open/floor/plasteel/bar, +/area/ruin/powered{ + name = "Space Bar" + }) +"aK" = ( +/turf/open/floor/plasteel/bar, +/area/ruin/powered{ + name = "Space Bar" + }) +"aL" = ( +/obj/machinery/light{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/bar, +/area/ruin/powered{ + name = "Space Bar" + }) +"aM" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/ruin/powered) +"aN" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/turf/closed/wall, +/area/ruin/powered{ + name = "Space Bar" + }) +"aO" = ( +/obj/machinery/door/airlock/external, +/turf/open/floor/plating, +/area/ruin/powered) +"aP" = ( +/turf/open/floor/plating, +/area/ruin/powered) +"aQ" = ( +/obj/structure/chair{ + tag = "icon-chair (EAST)"; + icon_state = "chair"; + dir = 4 + }, +/turf/open/floor/plasteel/bar, +/area/ruin/powered{ + name = "Space Bar" + }) +"aR" = ( +/obj/structure/table/wood, +/turf/open/floor/plasteel/bar, +/area/ruin/powered{ + name = "Space Bar" + }) +"aS" = ( +/obj/structure/chair{ + tag = "icon-chair (WEST)"; + icon_state = "chair"; + dir = 8 + }, +/turf/open/floor/plasteel/bar, +/area/ruin/powered{ + name = "Space Bar" + }) +"aT" = ( +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/turf/open/floor/plasteel/bar, +/area/ruin/powered{ + name = "Space Bar" + }) +"aU" = ( +/obj/structure/chair, +/turf/open/floor/plasteel/bar, +/area/ruin/powered{ + name = "Space Bar" + }) +"aV" = ( +/obj/machinery/vending/cola, +/turf/open/floor/plasteel/bar, +/area/ruin/powered{ + name = "Space Bar" + }) +"aW" = ( +/obj/machinery/vending/cigarette, +/turf/open/floor/plasteel/bar, +/area/ruin/powered{ + name = "Space Bar" + }) +"aX" = ( +/obj/machinery/vending/coffee, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/bar, +/area/ruin/powered{ + name = "Space Bar" + }) +"aY" = ( +/obj/machinery/vending/snack, +/obj/machinery/light, +/turf/open/floor/plasteel/bar, +/area/ruin/powered{ + name = "Space Bar" + }) +"aZ" = ( +/obj/structure/chair{ + dir = 1 + }, +/turf/open/floor/plasteel/bar, +/area/ruin/powered{ + name = "Space Bar" + }) +"ba" = ( +/obj/machinery/door/airlock{ + name = "Unisex Bathroom" + }, +/turf/open/floor/plasteel/freezer, +/area/ruin/powered{ + name = "Space Bar" + }) +"bb" = ( +/obj/structure/urinal{ + pixel_x = -32 + }, +/turf/open/floor/plasteel/freezer, +/area/ruin/powered{ + name = "Space Bar" + }) +"bc" = ( +/turf/open/floor/plasteel/freezer, +/area/ruin/powered{ + name = "Space Bar" + }) +"bd" = ( +/obj/structure/sink{ + dir = 4; + icon_state = "sink"; + pixel_x = 11; + pixel_y = 0 + }, +/obj/structure/mirror{ + pixel_x = 28 + }, +/turf/open/floor/plasteel/freezer, +/area/ruin/powered{ + name = "Space Bar" + }) +"be" = ( +/obj/structure/table/wood, +/obj/machinery/light{ + icon_state = "tube1"; + dir = 4 + }, +/turf/open/floor/plasteel/bar, +/area/ruin/powered{ + name = "Space Bar" + }) +"bf" = ( +/obj/machinery/light/small{ + dir = 8 + }, +/turf/open/floor/plasteel/freezer, +/area/ruin/powered{ + name = "Space Bar" + }) +"bg" = ( +/obj/structure/toilet{ + dir = 4 + }, +/obj/machinery/light/small{ + dir = 8 + }, +/turf/open/floor/plasteel/freezer, +/area/ruin/powered{ + name = "Space Bar" + }) +"bh" = ( +/obj/machinery/door/airlock{ + name = "Toilet" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/freezer, +/area/ruin/powered{ + name = "Space Bar" + }) +"bi" = ( +/obj/effect/glowshroom/single, +/turf/open/floor/plasteel/freezer, +/area/ruin/powered{ + name = "Space Bar" + }) +"bj" = ( +/turf/open/floor/plating, +/area/ruin/powered{ + name = "Space Bar" + }) +"bk" = ( +/obj/machinery/bluespace_beacon, +/turf/open/floor/plasteel/bar, +/area/ruin/powered{ + name = "Space Bar" + }) +"bl" = ( +/turf/open/floor/plating{ + icon_plating = "warnplate"; + icon_state = "warnplate" + }, +/area/ruin/powered) +"bm" = ( +/obj/machinery/door/poddoor/preopen{ + id = "spacebardock"; + name = "airlock dock" + }, +/turf/open/floor/plating, +/area/ruin/powered) +"bn" = ( +/obj/machinery/door/poddoor{ + id = "spacebardock"; + name = "airlock dock" + }, +/turf/open/floor/plating, +/area/ruin/powered) +"bo" = ( +/turf/closed/wall, +/area/ruin/powered{ + name = "Space Bar" + }) +"bp" = ( +/obj/structure/closet/secure_closet/freezer/kitchen, +/turf/open/floor/wood, +/area/ruin/powered{ + name = "Space Bar" + }) +"bq" = ( +/obj/structure/closet/secure_closet/freezer/fridge, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/wood, +/area/ruin/powered{ + name = "Space Bar" + }) +"br" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/ruin/powered{ + name = "Space Bar" + }) +"bs" = ( +/obj/machinery/door/airlock/external, +/turf/open/floor/plating, +/area/ruin/powered{ + name = "Space Bar" + }) +"bt" = ( +/turf/open/floor/plating/asteroid/airless, +/area/space) +"bu" = ( +/obj/machinery/airalarm{ + dir = 4; + icon_state = "alarm0"; + pixel_x = -22 + }, +/turf/open/floor/wood, +/area/ruin/powered{ + name = "Space Bar" + }) +"bv" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber, +/turf/open/floor/wood, +/area/ruin/powered{ + name = "Space Bar" + }) +"bw" = ( +/obj/machinery/atmospherics/components/unary/vent_pump, +/turf/open/floor/wood, +/area/ruin/powered{ + name = "Space Bar" + }) +"bx" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 4; + on = 1 + }, +/turf/open/floor/plating/asteroid, +/area/ruin/powered) +"by" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plating/asteroid, +/area/ruin/powered) +"bz" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/closed/wall, +/area/ruin/powered{ + name = "Space Bar" + }) +"bA" = ( +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ + dir = 4 + }, +/turf/closed/wall, +/area/ruin/powered{ + name = "Space Bar" + }) +"bB" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/closed/wall, +/area/ruin/powered{ + name = "Space Bar" + }) +"bC" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 4; + on = 1 + }, +/turf/open/floor/plating/asteroid, +/area/ruin/powered) +"bD" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating/asteroid, +/area/ruin/powered) +"bE" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/closed/wall, +/area/ruin/powered{ + name = "Space Bar" + }) +"bF" = ( +/obj/structure/chair/stool, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/bar, +/area/ruin/powered{ + name = "Space Bar" + }) +"bG" = ( +/obj/structure/chair/stool, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 10 + }, +/turf/open/floor/plasteel/bar, +/area/ruin/powered{ + name = "Space Bar" + }) +"bH" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber, +/turf/open/floor/plasteel/bar, +/area/ruin/powered{ + name = "Space Bar" + }) +"bI" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/bar, +/area/ruin/powered{ + name = "Space Bar" + }) +"bJ" = ( +/obj/machinery/airalarm{ + frequency = 1439; + locked = 0; + pixel_y = 23 + }, +/turf/open/floor/plasteel/bar, +/area/ruin/powered{ + name = "Space Bar" + }) +"bK" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 5 + }, +/turf/open/floor/plasteel/bar, +/area/ruin/powered{ + name = "Space Bar" + }) +"bL" = ( +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/bar, +/area/ruin/powered{ + name = "Space Bar" + }) +"bM" = ( +/obj/machinery/computer/teleporter, +/turf/open/floor/plasteel/bar, +/area/ruin/powered{ + name = "Space Bar" + }) +"bN" = ( +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 8 + }, +/turf/open/floor/plasteel/bar, +/area/ruin/powered{ + name = "Space Bar" + }) +"bO" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/bar, +/area/ruin/powered{ + name = "Space Bar" + }) +"bP" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/bar, +/area/ruin/powered{ + name = "Space Bar" + }) +"bQ" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 9; + pixel_y = 0 + }, +/turf/open/floor/plasteel/bar, +/area/ruin/powered{ + name = "Space Bar" + }) +"bR" = ( +/obj/machinery/teleport/station, +/turf/open/floor/plasteel/bar, +/area/ruin/powered{ + name = "Space Bar" + }) +"bS" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/bar, +/area/ruin/powered{ + name = "Space Bar" + }) +"bT" = ( +/obj/machinery/teleport/hub, +/turf/open/floor/plasteel/bar, +/area/ruin/powered{ + name = "Space Bar" + }) +"bU" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 8; + on = 1 + }, +/turf/open/floor/plasteel/bar, +/area/ruin/powered{ + name = "Space Bar" + }) +"bV" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/closed/wall, +/area/ruin/powered{ + name = "Space Bar" + }) +"bW" = ( +/obj/machinery/airalarm{ + dir = 4; + icon_state = "alarm0"; + pixel_x = -22 + }, +/turf/open/floor/plasteel/bar, +/area/ruin/powered{ + name = "Space Bar" + }) +"bX" = ( +/obj/structure/urinal{ + pixel_x = -32 + }, +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 8; + on = 1 + }, +/turf/open/floor/plasteel/freezer, +/area/ruin/powered{ + name = "Space Bar" + }) +"bY" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/freezer, +/area/ruin/powered{ + name = "Space Bar" + }) +"bZ" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber, +/turf/open/floor/plasteel/freezer, +/area/ruin/powered{ + name = "Space Bar" + }) +"ca" = ( +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ + dir = 8 + }, +/turf/open/floor/plasteel/freezer, +/area/ruin/powered{ + name = "Space Bar" + }) +"cb" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 9 + }, +/turf/open/floor/plasteel/freezer, +/area/ruin/powered{ + name = "Space Bar" + }) +"cc" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plating/asteroid, +/area/ruin/powered) +"cd" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/closed/mineral, +/area/ruin/powered) +"ce" = ( +/obj/machinery/atmospherics/components/unary/tank/air, +/turf/open/floor/plating/asteroid, +/area/ruin/powered) +"cf" = ( +/obj/machinery/button/door{ + id = "spacebardock"; + name = "Podbay Airlock"; + pixel_y = -24 + }, +/turf/open/floor/plating/asteroid, +/area/ruin/powered) +"cg" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 5 + }, +/turf/open/floor/plating/asteroid, +/area/ruin/powered) +"ch" = ( +/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, +/obj/machinery/meter, +/turf/open/floor/plating/asteroid, +/area/ruin/powered) +"ci" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 9; + pixel_y = 0 + }, +/turf/open/floor/plating/asteroid, +/area/ruin/powered) +"cj" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plating/asteroid, +/area/ruin/powered) +"ck" = ( +/obj/machinery/atmospherics/components/binary/valve/open, +/turf/open/floor/plating/asteroid, +/area/ruin/powered) +"cl" = ( +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plating/asteroid, +/area/ruin/powered) +"cm" = ( +/obj/machinery/atmospherics/pipe/manifold/supply/hidden, +/obj/machinery/meter, +/turf/open/floor/plating/asteroid, +/area/ruin/powered) +"cn" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 8; + on = 1 + }, +/turf/open/floor/plating/asteroid, +/area/ruin/powered) +"co" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plating, +/area/ruin/powered) +"cp" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plating/asteroid/airless, +/area/space) +"cq" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/closed/mineral, +/area/space) +"cr" = ( +/obj/machinery/atmospherics/components/unary/outlet_injector/on{ + dir = 1 + }, +/turf/open/floor/plating/asteroid/airless, +/area/space) (1,1,1) = {" -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacacacababababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaacacacacacacacacacababacacacacacaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaacacacacacadadaeadadacacacacacacacacacacacacacaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaacacacafafafagagagagagafafacacafafafafafafahacacacacaaaaaaaaaa -aaaaaaaaaaaaaaaaacacacafagagagagagagaiagagagafafagagagagagagagafafacacacaaaaaaaa -aaaaaaaaaaaaaaacacacafagagagagagagaiaiaiaiagagagagagagagagagagagagafacacaaaaaaaa -aaaaaaaaaaacacacacafagajakajagagaiaiaialalalalalalalalalalalalagagafacacaaaaaaaa -aaaaaaaaaaacacacafagagamanamagagaiaiaialaoapaqaralasatauaravalagagafacacacaaaaaa -aaaaaaaaacacafafagagagamawamagagaiaiaialaxarararayarazaAaraBalagagagafacacaaaaaa -aaaaaaababacafagagagagaCaDaCagagagaiaialaEarararaFaGaHaIaraJalagagagafacacaaaaaa -aaaaaaaaabacaKagagagagagagagagaLaMaMaMaNaOaOaPaOaNaNaQaRaSalalagagagaKacaaaaaaaa -aaaaaaaaabacafafagagagagagagagaTaUaUaUaVaWaXaYaYaZbabbbcaZbdalagagagafacabaaaaaa -aaaaaaaaacacacacafagagagagagagagalbebfalaZbcaZaZaZbgbhbcaZbibeagagafacacababaaaa -aaaaaaaaaaacacafagagagagagagagagbjbkbkbjaZblbmbmbmbmbnboaZbpbeagagafacabababaaaa -aaaaaaaaaaacacafagagagagagagagagalbebealbqbcbrbsbtaZbuaZaZbvbeagagafacacaaaaaaaa -aaaaaaaaacacafagagagagagagagagagagagagalbwbcaZaZaZbxbuaZaZaZbeagagafacacaaaaaaaa -aaaaaaaaabacafagagagagagagagagagagagagalbsblbyaZbzbAbBbCaZaZalagagafacacacaaaaaa -aaaaaaababacafagagagagagagagagagagagagalbDbcaZaZalalbEalalbFalaiagagafacacacaaaa -aaaaaaaaabacafagagagagagagagagajakajagalbGblbmbmaVbHbIbJbKbKalaiagagagafacabaaaa -aaaaaaaaacacafagagagagagagagagamanamagbeaZbcaZbwalbLbMbNbKbOalaiaiagagafacabaaaa -aaaaaaaaacacacafagagagagagagagamawamagagbebcaZbPalalbEbQbKbOalaiaiagagafacabaaaa -aaaaaaaaaaacacafagagagagagagagaCaDaCagagagbeaZbDalbRbSbKbTbKalaiaiagagafacacaaaa -aaaaaaaaaaacaKaKaKaKagagagagagagagagagagagbUbealalalbEalalalalaiaiagafacacacaaaa -aaaaaaaaaaaabVbWbWbVagagagagagagagagagagaibUbXbXbXaibYaiaiaiaiaiagagafacacacaaaa -aaaaaaaaaaaaaKaKaKaKagagagagagagagbZagaiaibUcacbccagbYaiaiaiaiaiagafacacacaaaaaa -aaaaaaaaaaaaacacaKagaKbWbWbWbWbWbWaKagagaibUagcdagaLceagagaiaiagagafaccfaaaaaaaa -aaaaaaaaaaaaacabaKagaKcgcgcgcgcgcgaKagagagcaaUchciagbYagagagagagafaKacabaaaaaaaa -aaaaaaaaaaaaababaKaKaKbWbWbWbWbWbWaKaKaKaKafafafafafcjafafafafaKacacacacaaaaaaaa -aaaaaaaaaaaaababababaKbWbWbWbWbWbWaKacacacacacacacacckacacacacacacacacaaaaaaaaaa -aaaaaaaaaaaaaaaaababaKbWbWbWbWbWbWaKacacacacacacacacclacacacacacacaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaKbWbWbWbWbWbWaKacacacacaaaaaaaccmacababaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaKcncncncncncnaKacacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaKaaaaaaaaaaaaaKaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(2,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(3,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(4,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +aa +aa +aa +aa +aa +aa +aa +ab +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(5,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +bt +ab +ab +ab +bt +aa +aa +bt +ab +ab +ab +bt +bt +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(6,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +bt +bt +bt +bt +bt +bt +bt +bt +bt +bt +bt +bt +bt +bt +bt +bt +bt +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(7,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +bt +bt +aM +aM +al +aM +bt +bt +bt +aM +aM +aM +aM +aM +bt +bt +al +aO +al +bt +bt +ab +ab +aa +aa +aa +aa +aa +aa +"} +(8,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +bt +bt +bt +aM +af +af +aM +bt +aM +aM +af +af +af +af +af +aM +aM +al +aP +al +bt +ab +ab +ab +aa +aa +aa +aa +aa +aa +"} +(9,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +bt +bt +bt +aM +af +af +af +af +aM +af +af +af +af +af +af +af +af +af +al +aP +al +al +al +al +ab +ab +aa +aa +aa +aa +aa +"} +(10,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +bt +bt +bt +aM +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +al +aO +al +af +af +al +ab +ab +aa +aa +aa +aa +aa +"} +(11,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +bt +bt +bt +aM +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +al +al +al +al +al +al +al +al +aa +aa +"} +(12,1,1) = {" +aa +aa +aa +aa +aa +aa +bt +bt +bt +aM +af +ai +am +am +az +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +aP +bm +aP +aP +aP +aP +bn +aa +aa +aa +"} +(13,1,1) = {" +aa +aa +aa +aa +aa +aa +bt +bt +aM +af +af +aj +an +aw +aA +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +aP +bm +aP +aP +aP +aP +bn +aa +aa +aa +"} +(14,1,1) = {" +aa +aa +aa +aa +aa +bt +bt +bt +aM +af +af +ak +am +am +aB +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +aP +bm +aP +aP +aP +aP +bn +aa +aa +aa +"} +(15,1,1) = {" +aa +aa +aa +aa +aa +bt +bt +bt +aM +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +aP +bm +aP +aP +aP +aP +bn +aa +aa +aa +"} +(16,1,1) = {" +aa +aa +aa +aa +bt +bt +bt +ad +af +af +af +af +af +af +af +bx +bC +af +af +af +af +af +af +ai +am +am +az +af +af +af +aP +bm +aP +aP +aP +aP +bn +aa +aa +aa +"} +(17,1,1) = {" +aa +aa +aa +aa +bt +bt +bt +ad +af +af +af +ah +ah +ah +af +by +bD +bo +bs +bo +af +af +af +aj +an +aw +aA +af +af +af +aP +bm +aP +aP +aP +aP +bn +aa +aa +aa +"} +(18,1,1) = {" +aa +aa +aa +aa +bt +bt +bt +ae +af +af +ah +ah +ah +ah +ah +by +bD +br +bj +br +af +af +af +ak +am +am +aB +af +af +cf +al +al +al +al +al +al +al +al +aa +aa +"} +(19,1,1) = {" +aa +aa +aa +aa +bt +bt +bt +ad +af +ah +ah +ah +ah +ah +ah +by +bD +aN +bj +br +af +af +af +af +af +af +af +af +af +af +af +af +al +bt +bt +bt +bt +aa +aa +aa +"} +(20,1,1) = {" +aa +aa +aa +ab +bt +bt +bt +ad +af +af +ah +bo +bo +bo +bo +bz +bE +bo +bs +bo +bo +bo +bo +bo +br +af +af +af +af +ah +af +af +al +bt +bt +bt +bt +aa +aa +aa +"} +(21,1,1) = {" +aa +aa +aa +ab +ab +bt +bt +bt +aM +af +ah +bo +ao +bu +aC +aG +bF +aK +aK +aT +aU +aR +aZ +bW +aK +br +af +af +ah +ah +ah +af +al +bt +bt +bt +aa +aa +aa +aa +"} +(22,1,1) = {" +aa +aa +aa +ab +ab +bt +bt +bt +aM +af +af +bo +ap +ar +ar +aG +bG +bI +bN +bI +bI +bN +bI +bN +bI +bI +br +cc +cc +cc +cc +cg +aM +bt +bt +bt +aa +aa +aa +aa +"} +(23,1,1) = {" +aa +aa +aa +aa +ab +ab +bt +bt +bt +aM +af +bo +aq +ar +ar +aH +aJ +aK +bO +aQ +aK +bU +aK +bO +aK +aK +aK +br +ce +cg +af +bD +aM +bt +bt +aa +aa +aa +aa +aa +"} +(24,1,1) = {" +aa +aa +aa +aa +ab +ab +bt +bt +bt +aM +af +bo +ar +ar +ar +aG +aJ +aK +bO +aR +aK +aK +aK +bO +aU +be +aZ +bo +ce +ch +ck +cm +aM +bt +bt +aa +aa +aa +aa +aa +"} +(25,1,1) = {" +aa +aa +aa +aa +aa +bt +bt +bt +aM +af +af +bo +bo +ax +aD +bz +aK +aK +bO +aS +aK +aV +bo +bE +bo +bo +bo +bo +ce +ci +af +cn +aM +bt +bt +aa +aa +aa +aa +aa +"} +(26,1,1) = {" +aa +aa +aa +aa +aa +bt +bt +bt +aM +af +af +bo +as +ar +bp +bz +bH +bK +bO +aK +bk +aW +bo +bX +bb +bo +bg +bo +ah +af +bx +af +aM +bt +bt +bt +aa +aa +aa +aa +"} +(27,1,1) = {" +aa +aa +aa +aa +aa +bt +bt +bt +aM +af +af +bo +at +bv +aE +bA +aL +bL +bP +bS +bS +aX +bV +bY +ca +bV +bh +bV +cj +cj +cl +cj +co +cp +cq +cr +aa +aa +aa +aa +"} +(28,1,1) = {" +aa +aa +aa +aa +aa +bt +bt +bt +aM +af +af +bo +au +bw +bq +bB +bI +bI +bQ +aK +aK +aY +bo +bZ +cb +bf +bc +bo +ah +ah +af +af +aM +bt +bt +bt +aa +aa +aa +aa +"} +(29,1,1) = {" +aa +aa +aa +aa +aa +bt +bt +bt +aM +af +af +bo +ar +ar +ar +aI +aK +aK +aK +aK +aK +aK +bo +bc +bc +bc +bi +bo +ah +ah +af +af +aM +bt +bt +ab +aa +aa +aa +aa +"} +(30,1,1) = {" +aa +aa +aa +aa +aa +aa +bt +bt +aM +af +af +bo +av +ay +aF +bo +bJ +bM +bR +bT +aK +aK +ba +bc +bd +bd +bc +bo +ah +ah +ah +af +aM +bt +bt +ab +aa +aa +aa +aa +"} +(31,1,1) = {" +aa +aa +aa +aa +aa +aa +bt +bt +ag +af +af +bo +bo +bo +bo +bo +bo +br +br +br +br +bo +bo +bo +bo +bo +bo +bo +ah +ah +ah +af +aM +bt +bt +aa +aa +aa +aa +aa +"} +(32,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +bt +bt +aM +af +af +af +af +af +af +af +af +af +af +af +af +ah +ah +ah +ah +ah +ah +ah +ah +af +af +al +bt +bt +aa +aa +aa +aa +aa +"} +(33,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +bt +bt +aM +af +af +af +af +af +af +af +af +af +af +af +af +af +af +ah +ah +ah +ah +af +af +af +aM +bt +bt +bt +aa +aa +aa +aa +aa +"} +(34,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +bt +bt +aM +aM +aM +af +af +af +af +aM +aM +aM +aM +aM +af +af +af +af +af +af +af +aM +aM +al +bt +bt +aa +aa +aa +aa +aa +aa +"} +(35,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +bt +bt +bt +bt +bt +aM +aM +al +aM +bt +bt +bt +bt +bt +aM +af +af +af +af +aM +aM +bt +bt +bt +bt +bt +aa +aa +aa +aa +aa +aa +"} +(36,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +bt +bt +bt +bt +bt +bt +bt +bt +bt +ab +bt +bt +bt +bt +aM +aM +aM +aM +bt +bt +bt +ac +ab +bt +aa +aa +aa +aa +aa +aa +aa +"} +(37,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +bt +bt +bt +aa +ab +ab +ab +aa +aa +bt +bt +bt +bt +bt +bt +bt +bt +bt +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(38,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +aa +aa +aa +bt +ab +ab +ab +bt +bt +bt +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(39,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(40,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa "} diff --git a/_maps/RandomRuins/SpaceRuins/spacehotel.dmm b/_maps/RandomRuins/SpaceRuins/spacehotel.dmm deleted file mode 100644 index a259e23df9..0000000000 --- a/_maps/RandomRuins/SpaceRuins/spacehotel.dmm +++ /dev/null @@ -1,11028 +0,0 @@ -//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE -"aa" = ( -/turf/open/space, -/area/space) -"ab" = ( -/obj/structure/grille, -/turf/open/space, -/area/space) -"ac" = ( -/obj/structure/lattice, -/turf/open/space, -/area/space) -"ad" = ( -/obj/machinery/power/solar, -/obj/structure/cable/yellow{ - d2 = 2; - icon_state = "0-2" - }, -/turf/open/floor/plating/airless, -/area/ruin/unpowered/no_grav) -"ae" = ( -/obj/machinery/power/solar, -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/cable/yellow{ - d2 = 2; - icon_state = "0-2" - }, -/turf/open/floor/plating/airless, -/area/ruin/unpowered/no_grav) -"af" = ( -/obj/structure/cable/yellow{ - d1 = 2; - d2 = 4; - icon_state = "2-4"; - tag = "" - }, -/turf/open/floor/plating/airless, -/area/ruin/unpowered/no_grav) -"ag" = ( -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/floor/plating/airless, -/area/ruin/unpowered/no_grav) -"ah" = ( -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/structure/cable/yellow{ - d1 = 2; - d2 = 8; - icon_state = "2-8"; - tag = "" - }, -/turf/open/floor/plating/airless, -/area/ruin/unpowered/no_grav) -"ai" = ( -/obj/machinery/power/tracker, -/obj/structure/cable/yellow{ - d2 = 8; - icon_state = "0-8" - }, -/turf/open/floor/plating/airless, -/area/ruin/unpowered/no_grav) -"aj" = ( -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plating/airless, -/area/ruin/unpowered/no_grav) -"ak" = ( -/obj/machinery/power/solar, -/obj/structure/cable/yellow, -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plating/airless, -/area/ruin/unpowered/no_grav) -"al" = ( -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/turf/open/floor/plating/airless, -/area/ruin/unpowered/no_grav) -"am" = ( -/turf/closed/wall, -/area/ruin/hotel) -"an" = ( -/turf/closed/wall, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 3" - }) -"ao" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 3" - }) -"ap" = ( -/turf/closed/wall, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 4" - }) -"aq" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 4" - }) -"ar" = ( -/turf/closed/wall, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 5" - }) -"as" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 5" - }) -"at" = ( -/turf/closed/wall, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 6" - }) -"au" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 6" - }) -"av" = ( -/obj/effect/decal/cleanable/cobweb, -/turf/open/floor/plating, -/area/ruin/hotel) -"aw" = ( -/turf/open/floor/plating, -/area/ruin/hotel) -"ax" = ( -/obj/machinery/shower{ - dir = 4 - }, -/obj/item/weapon/soap, -/turf/open/floor/plasteel/showroomfloor, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 3" - }) -"ay" = ( -/obj/structure/window{ - icon_state = "window"; - dir = 8 - }, -/obj/structure/toilet, -/turf/open/floor/plasteel/showroomfloor, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 3" - }) -"az" = ( -/turf/open/floor/plasteel/showroomfloor, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 3" - }) -"aA" = ( -/obj/machinery/door/airlock{ - name = "Bathroom" - }, -/turf/open/floor/plasteel/showroomfloor, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 3" - }) -"aB" = ( -/turf/open/floor/wood, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 3" - }) -"aC" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/wood, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 3" - }) -"aD" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - tag = "icon-plant-02"; - icon_state = "plant-02" - }, -/turf/open/floor/wood, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 3" - }) -"aE" = ( -/obj/structure/dresser, -/turf/open/floor/wood, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 3" - }) -"aF" = ( -/obj/machinery/shower{ - dir = 4 - }, -/obj/item/weapon/soap, -/turf/open/floor/plasteel/showroomfloor, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 4" - }) -"aG" = ( -/obj/structure/window{ - icon_state = "window"; - dir = 8 - }, -/obj/structure/toilet, -/turf/open/floor/plasteel/showroomfloor, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 4" - }) -"aH" = ( -/turf/open/floor/plasteel/showroomfloor, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 4" - }) -"aI" = ( -/obj/machinery/door/airlock{ - name = "Bathroom" - }, -/turf/open/floor/plasteel/showroomfloor, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 4" - }) -"aJ" = ( -/turf/open/floor/wood, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 4" - }) -"aK" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/wood, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 4" - }) -"aL" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - tag = "icon-plant-16"; - icon_state = "plant-16" - }, -/turf/open/floor/wood, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 4" - }) -"aM" = ( -/obj/structure/dresser, -/turf/open/floor/wood, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 4" - }) -"aN" = ( -/obj/machinery/shower{ - dir = 4 - }, -/obj/item/weapon/soap, -/turf/open/floor/plasteel/showroomfloor, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 5" - }) -"aO" = ( -/obj/structure/window{ - icon_state = "window"; - dir = 8 - }, -/obj/structure/toilet, -/turf/open/floor/plasteel/showroomfloor, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 5" - }) -"aP" = ( -/turf/open/floor/plasteel/showroomfloor, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 5" - }) -"aQ" = ( -/obj/machinery/door/airlock{ - name = "Bathroom" - }, -/turf/open/floor/plasteel/showroomfloor, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 5" - }) -"aR" = ( -/turf/open/floor/wood, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 5" - }) -"aS" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/wood, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 5" - }) -"aT" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - tag = "icon-plant-16"; - icon_state = "plant-16" - }, -/turf/open/floor/wood, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 5" - }) -"aU" = ( -/obj/structure/dresser, -/turf/open/floor/wood, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 5" - }) -"aV" = ( -/obj/machinery/shower{ - dir = 4 - }, -/obj/item/weapon/soap, -/turf/open/floor/plasteel/showroomfloor, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 6" - }) -"aW" = ( -/obj/structure/window{ - icon_state = "window"; - dir = 8 - }, -/obj/structure/toilet, -/turf/open/floor/plasteel/showroomfloor, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 6" - }) -"aX" = ( -/turf/open/floor/plasteel/showroomfloor, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 6" - }) -"aY" = ( -/obj/machinery/door/airlock{ - name = "Bathroom" - }, -/turf/open/floor/plasteel/showroomfloor, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 6" - }) -"aZ" = ( -/turf/open/floor/wood, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 6" - }) -"ba" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/wood, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 6" - }) -"bb" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - tag = "icon-plant-18"; - icon_state = "plant-18" - }, -/turf/open/floor/wood, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 6" - }) -"bc" = ( -/obj/structure/dresser, -/turf/open/floor/wood, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 6" - }) -"bd" = ( -/obj/machinery/power/solar, -/obj/structure/cable/yellow, -/turf/open/floor/plating/airless, -/area/ruin/unpowered/no_grav) -"be" = ( -/obj/structure/window{ - icon_state = "window"; - dir = 8 - }, -/turf/open/floor/plasteel/showroomfloor, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 3" - }) -"bf" = ( -/obj/machinery/light/small{ - dir = 4 - }, -/turf/open/floor/plasteel/showroomfloor, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 3" - }) -"bg" = ( -/obj/structure/table/wood, -/obj/item/weapon/paper_bin, -/obj/item/weapon/pen, -/turf/open/floor/wood, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 3" - }) -"bh" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 2; - on = 1 - }, -/turf/open/floor/wood, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 3" - }) -"bi" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/wood, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 3" - }) -"bj" = ( -/obj/structure/bed, -/obj/item/weapon/bedsheet/red, -/turf/open/floor/wood, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 3" - }) -"bk" = ( -/obj/structure/window{ - icon_state = "window"; - dir = 8 - }, -/turf/open/floor/plasteel/showroomfloor, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 4" - }) -"bl" = ( -/obj/machinery/light/small{ - dir = 4 - }, -/turf/open/floor/plasteel/showroomfloor, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 4" - }) -"bm" = ( -/obj/structure/table/wood, -/obj/item/weapon/paper_bin, -/obj/item/weapon/pen, -/turf/open/floor/wood, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 4" - }) -"bn" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 2; - on = 1 - }, -/turf/open/floor/wood, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 4" - }) -"bo" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/wood, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 4" - }) -"bp" = ( -/obj/structure/bed, -/obj/item/weapon/bedsheet/blue, -/turf/open/floor/wood, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 4" - }) -"bq" = ( -/obj/structure/window{ - icon_state = "window"; - dir = 8 - }, -/turf/open/floor/plasteel/showroomfloor, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 5" - }) -"br" = ( -/obj/machinery/light/small{ - dir = 4 - }, -/turf/open/floor/plasteel/showroomfloor, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 5" - }) -"bs" = ( -/obj/structure/table/wood, -/obj/item/weapon/paper_bin, -/obj/item/weapon/pen, -/turf/open/floor/wood, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 5" - }) -"bt" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 2; - on = 1 - }, -/turf/open/floor/wood, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 5" - }) -"bu" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/wood, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 5" - }) -"bv" = ( -/obj/structure/bed, -/obj/item/weapon/bedsheet/black, -/turf/open/floor/wood, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 5" - }) -"bw" = ( -/obj/structure/window{ - icon_state = "window"; - dir = 8 - }, -/turf/open/floor/plasteel/showroomfloor, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 6" - }) -"bx" = ( -/obj/machinery/light/small{ - dir = 4 - }, -/turf/open/floor/plasteel/showroomfloor, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 6" - }) -"by" = ( -/obj/structure/table/wood, -/obj/item/weapon/paper_bin, -/obj/item/weapon/pen, -/turf/open/floor/wood, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 6" - }) -"bz" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 2; - on = 1 - }, -/turf/open/floor/wood, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 6" - }) -"bA" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/wood, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 6" - }) -"bB" = ( -/obj/structure/bed, -/obj/item/weapon/bedsheet/purple, -/turf/open/floor/wood, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 6" - }) -"bC" = ( -/obj/item/clothing/head/cone, -/turf/open/floor/plating, -/area/ruin/hotel) -"bD" = ( -/obj/machinery/light{ - dir = 8 - }, -/obj/structure/table/wood, -/turf/open/floor/wood, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 3" - }) -"bE" = ( -/obj/structure/chair{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/wood, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 3" - }) -"bF" = ( -/obj/machinery/light{ - dir = 8 - }, -/obj/structure/table/wood, -/turf/open/floor/wood, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 4" - }) -"bG" = ( -/obj/structure/chair{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/wood, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 4" - }) -"bH" = ( -/obj/machinery/light{ - dir = 8 - }, -/obj/structure/table/wood, -/turf/open/floor/wood, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 5" - }) -"bI" = ( -/obj/structure/chair{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/wood, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 5" - }) -"bJ" = ( -/obj/machinery/light{ - dir = 8 - }, -/obj/structure/table/wood, -/turf/open/floor/wood, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 6" - }) -"bK" = ( -/obj/structure/chair{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/wood, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 6" - }) -"bL" = ( -/obj/structure/reagent_dispensers/watertank, -/turf/open/floor/plating, -/area/ruin/hotel) -"bM" = ( -/obj/structure/sink{ - dir = 4; - icon_state = "sink"; - pixel_x = 11; - pixel_y = 0 - }, -/obj/structure/mirror{ - pixel_x = 32 - }, -/turf/open/floor/plasteel/showroomfloor, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 3" - }) -"bN" = ( -/obj/machinery/power/apc{ - cell_type = 5000; - dir = 2; - name = "Guest Room APC"; - pixel_y = -24 - }, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/turf/open/floor/wood, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 3" - }) -"bO" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/wood, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 3" - }) -"bP" = ( -/obj/machinery/button/door{ - id = "a3"; - name = "privacy button"; - pixel_y = -24 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/wood, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 3" - }) -"bQ" = ( -/obj/machinery/light_switch{ - pixel_y = -24 - }, -/turf/open/floor/wood, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 3" - }) -"bR" = ( -/obj/structure/table/wood, -/obj/item/clothing/head/sombrero, -/turf/open/floor/wood, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 3" - }) -"bS" = ( -/obj/structure/sink{ - dir = 4; - icon_state = "sink"; - pixel_x = 11; - pixel_y = 0 - }, -/obj/structure/mirror{ - pixel_x = 32 - }, -/turf/open/floor/plasteel/showroomfloor, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 4" - }) -"bT" = ( -/obj/machinery/power/apc{ - cell_type = 5000; - dir = 2; - name = "Guest Room APC"; - pixel_y = -24 - }, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/turf/open/floor/wood, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 4" - }) -"bU" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/wood, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 4" - }) -"bV" = ( -/obj/machinery/button/door{ - id = "a4"; - name = "privacy button"; - pixel_y = -24 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/wood, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 4" - }) -"bW" = ( -/obj/machinery/light_switch{ - pixel_y = -24 - }, -/turf/open/floor/wood, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 4" - }) -"bX" = ( -/obj/structure/table/wood, -/obj/item/weapon/lipstick, -/turf/open/floor/wood, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 4" - }) -"bY" = ( -/obj/structure/sink{ - dir = 4; - icon_state = "sink"; - pixel_x = 11; - pixel_y = 0 - }, -/obj/structure/mirror{ - pixel_x = 32 - }, -/turf/open/floor/plasteel/showroomfloor, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 5" - }) -"bZ" = ( -/obj/machinery/power/apc{ - cell_type = 5000; - dir = 2; - name = "Guest Room APC"; - pixel_y = -24 - }, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/turf/open/floor/wood, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 5" - }) -"ca" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/wood, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 5" - }) -"cb" = ( -/obj/machinery/button/door{ - id = "a5"; - name = "privacy button"; - pixel_y = -24 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/wood, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 5" - }) -"cc" = ( -/obj/machinery/light_switch{ - pixel_y = -24 - }, -/turf/open/floor/wood, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 5" - }) -"cd" = ( -/obj/structure/table/wood, -/obj/item/clothing/head/collectable/kitty, -/turf/open/floor/wood, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 5" - }) -"ce" = ( -/obj/structure/sink{ - dir = 4; - icon_state = "sink"; - pixel_x = 11; - pixel_y = 0 - }, -/obj/structure/mirror{ - pixel_x = 32 - }, -/turf/open/floor/plasteel/showroomfloor, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 6" - }) -"cf" = ( -/obj/machinery/power/apc{ - cell_type = 5000; - dir = 2; - name = "Guest Room APC"; - pixel_y = -24 - }, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/turf/open/floor/wood, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 6" - }) -"cg" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/wood, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 6" - }) -"ch" = ( -/obj/machinery/button/door{ - id = "a6"; - name = "privacy button"; - pixel_y = -24 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/wood, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 6" - }) -"ci" = ( -/obj/machinery/light_switch{ - pixel_y = -24 - }, -/turf/open/floor/wood, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 6" - }) -"cj" = ( -/obj/structure/table/wood, -/turf/open/floor/wood, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 6" - }) -"ck" = ( -/obj/structure/grille, -/turf/open/floor/plating, -/area/ruin/hotel) -"cl" = ( -/obj/machinery/door/airlock{ - id_tag = "a3"; - name = "Guest Room A3" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/wood, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 3" - }) -"cm" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 3" - }) -"cn" = ( -/obj/machinery/door/airlock{ - id_tag = "a4"; - name = "Guest Room A4" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/wood, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 4" - }) -"co" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 4" - }) -"cp" = ( -/obj/machinery/door/airlock{ - id_tag = "a5"; - name = "Guest Room A5" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/wood, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 5" - }) -"cq" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 5" - }) -"cr" = ( -/obj/machinery/door/airlock{ - id_tag = "a6"; - name = "Guest Room A6" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/wood, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 6" - }) -"cs" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 6" - }) -"ct" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 6 - }, -/turf/closed/wall, -/area/ruin/hotel) -"cu" = ( -/obj/structure/reagent_dispensers/fueltank, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/ruin/hotel) -"cv" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/ruin/hotel) -"cw" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/ruin/hotel) -"cx" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/carpet, -/area/ruin/hotel) -"cy" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/carpet, -/area/ruin/hotel) -"cz" = ( -/obj/structure/sign/fire{ - desc = "A sign that states the labeled room's number."; - dir = 4; - icon_state = "roomnum"; - name = "Room Number 3"; - pixel_y = 24; - tag = "icon-roomnum (EAST)" - }, -/obj/machinery/atmospherics/pipe/manifold4w/scrubbers/hidden, -/turf/open/floor/carpet, -/area/ruin/hotel) -"cA" = ( -/obj/structure/sign/fire{ - desc = "A sign that states the labeled room's number."; - dir = 8; - icon_state = "roomnum"; - name = "Room Number 4"; - pixel_y = 24; - tag = "icon-roomnum (WEST)" - }, -/obj/machinery/atmospherics/pipe/manifold4w/scrubbers/hidden, -/turf/open/floor/carpet, -/area/ruin/hotel) -"cB" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 1 - }, -/turf/open/floor/carpet, -/area/ruin/hotel) -"cC" = ( -/obj/structure/sign/fire{ - desc = "A sign that states the labeled room's number."; - dir = 6; - icon_state = "roomnum"; - name = "Room Number 5"; - pixel_y = 24; - tag = "icon-roomnum (SOUTHEAST)" - }, -/obj/machinery/atmospherics/pipe/manifold4w/scrubbers/hidden, -/turf/open/floor/carpet, -/area/ruin/hotel) -"cD" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/extinguisher_cabinet{ - pixel_y = 30 - }, -/turf/open/floor/carpet, -/area/ruin/hotel) -"cE" = ( -/obj/structure/sign/fire{ - desc = "A sign that states the labeled room's number."; - dir = 10; - icon_state = "roomnum"; - name = "Room Number 6"; - pixel_y = 24; - tag = "icon-roomnum (SOUTHWEST)" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 9 - }, -/turf/open/floor/carpet, -/area/ruin/hotel) -"cF" = ( -/turf/open/floor/carpet, -/area/ruin/hotel) -"cG" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/firedoor, -/turf/open/floor/plating, -/area/ruin/hotel) -"cH" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall, -/area/ruin/hotel) -"cI" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 6 - }, -/turf/open/floor/plating, -/area/ruin/hotel) -"cJ" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0; - tag = "" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/ruin/hotel) -"cK" = ( -/obj/machinery/door/airlock/maintenance{ - name = "Hotel Maintenance"; - req_access_txt = "201" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0; - tag = "" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/ruin/hotel) -"cL" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0; - tag = "" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/carpet, -/area/ruin/hotel) -"cM" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0; - tag = "" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, -/turf/open/floor/carpet, -/area/ruin/hotel) -"cN" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0; - tag = "" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/carpet, -/area/ruin/hotel) -"cO" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0; - tag = "" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 1 - }, -/turf/open/floor/carpet, -/area/ruin/hotel) -"cP" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 9; - pixel_y = 0 - }, -/turf/open/floor/carpet, -/area/ruin/hotel) -"cQ" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/ruin/hotel) -"cR" = ( -/obj/machinery/light, -/turf/open/floor/carpet, -/area/ruin/hotel) -"cS" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/carpet, -/area/ruin/hotel) -"cT" = ( -/obj/structure/sign/fire{ - desc = "A sign that states the labeled room's number."; - dir = 1; - icon_state = "roomnum"; - name = "Room Number 2"; - pixel_y = -24; - tag = "icon-roomnum (NORTH)" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/carpet, -/area/ruin/hotel) -"cU" = ( -/obj/structure/extinguisher_cabinet{ - pixel_y = -30 - }, -/turf/open/floor/carpet, -/area/ruin/hotel) -"cV" = ( -/obj/structure/sign/fire{ - desc = "A sign that states the labeled room's number."; - icon_state = "roomnum"; - name = "Room Number 1"; - pixel_y = -24 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/carpet, -/area/ruin/hotel) -"cW" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/carpet, -/area/ruin/hotel) -"cX" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/carpet, -/area/ruin/hotel) -"cY" = ( -/obj/machinery/light, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/carpet, -/area/ruin/hotel) -"cZ" = ( -/turf/closed/wall, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 2" - }) -"da" = ( -/obj/machinery/door/airlock{ - id_tag = "a2"; - name = "Guest Room A2" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/wood, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 2" - }) -"db" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 2" - }) -"dc" = ( -/turf/closed/wall, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 1" - }) -"dd" = ( -/obj/machinery/door/airlock{ - id_tag = "a1"; - name = "Guest Room A1" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/wood, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 1" - }) -"de" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 1" - }) -"df" = ( -/obj/machinery/door/airlock/glass, -/obj/machinery/door/firedoor, -/turf/open/floor/carpet, -/area/ruin/hotel) -"dg" = ( -/obj/machinery/door/airlock/glass, -/obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/carpet, -/area/ruin/hotel) -"dh" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall, -/area/ruin/hotel/workroom) -"di" = ( -/turf/closed/wall, -/area/ruin/hotel/workroom) -"dj" = ( -/obj/machinery/door/airlock/centcom{ - name = "Hotel Staff Storage" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/ruin/hotel/workroom) -"dk" = ( -/obj/machinery/shower{ - dir = 4 - }, -/obj/item/weapon/soap, -/turf/open/floor/plasteel/showroomfloor, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 2" - }) -"dl" = ( -/obj/structure/window{ - icon_state = "window"; - dir = 8 - }, -/obj/structure/toilet, -/turf/open/floor/plasteel/showroomfloor, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 2" - }) -"dm" = ( -/obj/structure/sink{ - dir = 4; - icon_state = "sink"; - pixel_x = 11; - pixel_y = 0 - }, -/obj/structure/mirror{ - pixel_x = 32 - }, -/turf/open/floor/plasteel/showroomfloor, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 2" - }) -"dn" = ( -/obj/machinery/power/apc{ - cell_type = 5000; - dir = 1; - name = "Guest Room APC"; - pixel_x = 0; - pixel_y = 25 - }, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/turf/open/floor/wood, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 2" - }) -"do" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/wood, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 2" - }) -"dp" = ( -/obj/machinery/button/door{ - id = "a2"; - name = "privacy button"; - pixel_y = 24 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/wood, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 2" - }) -"dq" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - tag = "icon-plant-21"; - icon_state = "plant-21" - }, -/turf/open/floor/wood, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 2" - }) -"dr" = ( -/obj/structure/dresser, -/turf/open/floor/wood, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 2" - }) -"ds" = ( -/obj/machinery/shower{ - dir = 4 - }, -/obj/item/weapon/soap, -/turf/open/floor/plasteel/showroomfloor, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 1" - }) -"dt" = ( -/obj/structure/window{ - icon_state = "window"; - dir = 8 - }, -/obj/structure/toilet, -/turf/open/floor/plasteel/showroomfloor, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 1" - }) -"du" = ( -/obj/structure/sink{ - dir = 4; - icon_state = "sink"; - pixel_x = 11; - pixel_y = 0 - }, -/obj/structure/mirror{ - pixel_x = 32 - }, -/turf/open/floor/plasteel/showroomfloor, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 1" - }) -"dv" = ( -/obj/machinery/power/apc{ - cell_type = 5000; - dir = 1; - name = "Guest Room APC"; - pixel_x = 0; - pixel_y = 25 - }, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/turf/open/floor/wood, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 1" - }) -"dw" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/wood, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 1" - }) -"dx" = ( -/obj/machinery/button/door{ - id = "a1"; - name = "privacy button"; - pixel_y = 24 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/wood, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 1" - }) -"dy" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - tag = "icon-plant-14"; - icon_state = "plant-14" - }, -/turf/open/floor/wood, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 1" - }) -"dz" = ( -/obj/structure/dresser, -/turf/open/floor/wood, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 1" - }) -"dA" = ( -/obj/machinery/airalarm{ - pixel_y = 24 - }, -/turf/open/floor/plasteel/white, -/area/ruin/hotel/workroom) -"dB" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/white, -/area/ruin/hotel/workroom) -"dC" = ( -/obj/structure/table, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/white, -/area/ruin/hotel/workroom) -"dD" = ( -/obj/structure/table, -/obj/machinery/light{ - dir = 1 - }, -/turf/open/floor/plasteel/white, -/area/ruin/hotel/workroom) -"dE" = ( -/obj/structure/table, -/obj/item/weapon/soap, -/turf/open/floor/plasteel/white, -/area/ruin/hotel/workroom) -"dF" = ( -/obj/machinery/washing_machine, -/turf/open/floor/plasteel/white, -/area/ruin/hotel/workroom) -"dG" = ( -/obj/structure/table, -/obj/structure/bedsheetbin, -/turf/open/floor/plasteel/white, -/area/ruin/hotel/workroom) -"dH" = ( -/turf/open/floor/plasteel/showroomfloor, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 2" - }) -"dI" = ( -/obj/structure/window{ - icon_state = "window"; - dir = 8 - }, -/turf/open/floor/plasteel/showroomfloor, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 2" - }) -"dJ" = ( -/obj/structure/table/wood, -/obj/item/weapon/paper_bin, -/obj/item/weapon/pen, -/turf/open/floor/wood, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 2" - }) -"dK" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/wood, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 2" - }) -"dL" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/wood, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 2" - }) -"dM" = ( -/turf/open/floor/wood, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 2" - }) -"dN" = ( -/obj/structure/bed, -/obj/item/weapon/bedsheet/yellow, -/turf/open/floor/wood, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 2" - }) -"dO" = ( -/turf/open/floor/plasteel/showroomfloor, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 1" - }) -"dP" = ( -/obj/structure/window{ - icon_state = "window"; - dir = 8 - }, -/turf/open/floor/plasteel/showroomfloor, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 1" - }) -"dQ" = ( -/obj/structure/table/wood, -/obj/item/weapon/paper_bin, -/obj/item/weapon/pen, -/turf/open/floor/wood, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 1" - }) -"dR" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/wood, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 1" - }) -"dS" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/wood, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 1" - }) -"dT" = ( -/turf/open/floor/wood, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 1" - }) -"dU" = ( -/obj/structure/bed, -/obj/item/weapon/bedsheet/ian, -/turf/open/floor/wood, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 1" - }) -"dV" = ( -/turf/open/floor/plasteel/white, -/area/ruin/hotel/workroom) -"dW" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/white, -/area/ruin/hotel/workroom) -"dX" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0; - tag = "" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 5 - }, -/turf/open/floor/plasteel/white, -/area/ruin/hotel/workroom) -"dY" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0; - tag = "" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/ruin/hotel/workroom) -"dZ" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/ruin/hotel/workroom) -"ea" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/ruin/hotel/workroom) -"eb" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/white, -/area/ruin/hotel/workroom) -"ec" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/firedoor, -/turf/open/floor/plating, -/area/ruin/hotel/workroom) -"ed" = ( -/obj/effect/decal/cleanable/oil, -/turf/open/floor/plating, -/area/ruin/hotel) -"ee" = ( -/obj/machinery/light/small{ - dir = 4 - }, -/turf/open/floor/plasteel/showroomfloor, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 2" - }) -"ef" = ( -/obj/machinery/light{ - dir = 8 - }, -/obj/structure/table/wood, -/turf/open/floor/wood, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 2" - }) -"eg" = ( -/obj/structure/chair{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/wood, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 2" - }) -"eh" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/wood, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 2" - }) -"ei" = ( -/obj/machinery/light/small{ - dir = 4 - }, -/turf/open/floor/plasteel/showroomfloor, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 1" - }) -"ej" = ( -/obj/machinery/light{ - dir = 8 - }, -/obj/structure/table/wood, -/turf/open/floor/wood, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 1" - }) -"ek" = ( -/obj/structure/chair{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/wood, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 1" - }) -"el" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/wood, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 1" - }) -"em" = ( -/obj/machinery/light{ - dir = 8 - }, -/turf/open/floor/carpet, -/area/ruin/hotel) -"en" = ( -/obj/machinery/firealarm{ - dir = 8; - pixel_x = -24 - }, -/turf/open/floor/plasteel/white, -/area/ruin/hotel/workroom) -"eo" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 5 - }, -/turf/open/floor/plasteel/white, -/area/ruin/hotel/workroom) -"ep" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/ruin/hotel/workroom) -"eq" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/ruin/hotel/workroom) -"er" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/plasteel/white, -/area/ruin/hotel/workroom) -"es" = ( -/obj/machinery/door/airlock{ - name = "Bathroom" - }, -/turf/open/floor/plasteel/showroomfloor, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 2" - }) -"et" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - external_pressure_bound = 101.325; - on = 1; - pressure_checks = 1 - }, -/turf/open/floor/wood, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 2" - }) -"eu" = ( -/obj/structure/table/wood, -/obj/item/weapon/storage/pill_bottle/dice, -/turf/open/floor/wood, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 2" - }) -"ev" = ( -/obj/machinery/door/airlock{ - name = "Bathroom" - }, -/turf/open/floor/plasteel/showroomfloor, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 1" - }) -"ew" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - external_pressure_bound = 101.325; - on = 1; - pressure_checks = 1 - }, -/turf/open/floor/wood, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 1" - }) -"ex" = ( -/obj/structure/table/wood, -/turf/open/floor/wood, -/area/ruin/hotel/guestroom{ - name = "Hotel Guest Room 1" - }) -"ey" = ( -/obj/structure/closet/wardrobe/mixed, -/turf/open/floor/plasteel/white, -/area/ruin/hotel/workroom) -"ez" = ( -/obj/structure/closet/crate/bin, -/turf/open/floor/plasteel/white, -/area/ruin/hotel/workroom) -"eA" = ( -/obj/machinery/power/apc{ - cell_type = 5000; - dir = 2; - name = "Laundry APC"; - pixel_y = -24 - }, -/obj/structure/cable, -/turf/open/floor/plasteel/white, -/area/ruin/hotel/workroom) -"eB" = ( -/obj/machinery/light, -/turf/open/floor/plasteel/white, -/area/ruin/hotel/workroom) -"eC" = ( -/obj/structure/closet/crate, -/turf/open/floor/plasteel/whitebot, -/area/ruin/hotel/workroom) -"eD" = ( -/obj/structure/closet/crate, -/obj/item/clothing/head/rice_hat, -/turf/open/floor/plasteel/whitebot, -/area/ruin/hotel/workroom) -"eE" = ( -/obj/structure/closet/crate, -/obj/item/weapon/bedsheet/patriot, -/turf/open/floor/plasteel/whitebot, -/area/ruin/hotel/workroom) -"eF" = ( -/obj/structure/closet/crate, -/obj/item/weapon/card/id/away/hotel, -/turf/open/floor/plasteel/whitebot, -/area/ruin/hotel/workroom) -"eG" = ( -/turf/closed/wall, -/area/ruin/hotel/dock) -"eH" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 9 - }, -/turf/closed/wall, -/area/ruin/hotel) -"eI" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/ruin/hotel) -"eJ" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0; - tag = "" - }, -/turf/open/floor/plating, -/area/ruin/hotel) -"eK" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/turf/open/floor/plating, -/area/ruin/hotel) -"eL" = ( -/obj/machinery/airalarm{ - dir = 1; - icon_state = "alarm0"; - pixel_y = -24; - tag = "icon-alarm0 (NORTH)" - }, -/turf/open/floor/plating, -/area/ruin/hotel/bar) -"eM" = ( -/obj/machinery/airalarm{ - dir = 1; - icon_state = "alarm0"; - pixel_y = -24; - tag = "icon-alarm0 (NORTH)" - }, -/turf/open/floor/plating, -/area/ruin/hotel) -"eN" = ( -/obj/machinery/door/airlock/maintenance{ - name = "Hotel Maintenance"; - req_access_txt = "201" - }, -/turf/open/floor/plating, -/area/ruin/hotel) -"eO" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/extinguisher_cabinet{ - pixel_y = 30 - }, -/turf/open/floor/wood, -/area/ruin/hotel) -"eP" = ( -/obj/structure/flora/ausbushes/fernybush, -/turf/open/floor/grass, -/area/ruin/hotel) -"eQ" = ( -/obj/structure/flora/ausbushes/ywflowers, -/turf/open/floor/grass, -/area/ruin/hotel) -"eR" = ( -/obj/machinery/light{ - dir = 1 - }, -/obj/structure/flora/ausbushes/fullgrass, -/turf/open/floor/grass, -/area/ruin/hotel) -"eS" = ( -/obj/structure/flora/ausbushes/fullgrass, -/turf/open/floor/grass, -/area/ruin/hotel) -"eT" = ( -/turf/open/floor/wood, -/area/ruin/hotel) -"eU" = ( -/obj/machinery/vending/cola, -/turf/open/floor/wood, -/area/ruin/hotel) -"eV" = ( -/obj/machinery/light{ - dir = 8 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 2; - on = 1 - }, -/turf/open/floor/wood, -/area/ruin/hotel/dock) -"eW" = ( -/turf/open/floor/wood, -/area/ruin/hotel/dock) -"eX" = ( -/obj/structure/chair/comfy/brown{ - dir = 4 - }, -/turf/open/floor/wood, -/area/ruin/hotel/dock) -"eY" = ( -/obj/structure/table/wood, -/turf/open/floor/wood, -/area/ruin/hotel/dock) -"eZ" = ( -/obj/structure/chair/comfy/brown{ - dir = 8 - }, -/turf/open/floor/wood, -/area/ruin/hotel/dock) -"fa" = ( -/obj/structure/extinguisher_cabinet{ - pixel_y = 30 - }, -/turf/open/floor/wood, -/area/ruin/hotel/dock) -"fb" = ( -/obj/machinery/light{ - dir = 1 - }, -/turf/open/floor/wood, -/area/ruin/hotel/dock) -"fc" = ( -/obj/machinery/airalarm{ - pixel_y = 24 - }, -/turf/open/floor/wood, -/area/ruin/hotel/dock) -"fd" = ( -/obj/effect/decal/cleanable/cobweb, -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 6 - }, -/turf/open/floor/plating, -/area/ruin/hotel) -"fe" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 9; - pixel_y = 0 - }, -/turf/open/floor/plating, -/area/ruin/hotel) -"ff" = ( -/obj/structure/closet/crate, -/obj/item/clothing/head/papersack/smiley, -/turf/open/floor/plating, -/area/ruin/hotel) -"fg" = ( -/obj/structure/reagent_dispensers/fueltank, -/turf/open/floor/plating, -/area/ruin/hotel) -"fh" = ( -/obj/machinery/power/apc{ - cell_type = 5000; - dir = 2; - name = "Kitchen APC"; - pixel_y = -24 - }, -/obj/structure/cable, -/turf/open/floor/plating, -/area/ruin/hotel/bar) -"fi" = ( -/turf/closed/wall, -/area/ruin/hotel/bar) -"fj" = ( -/obj/machinery/door/airlock/maintenance{ - name = "Hotel Maintenance"; - req_access_txt = "200,201" - }, -/turf/open/floor/plating, -/area/ruin/hotel/bar) -"fk" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/carpet, -/area/ruin/hotel) -"fl" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/open/floor/wood, -/area/ruin/hotel) -"fm" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/grass, -/area/ruin/hotel) -"fn" = ( -/obj/structure/flora/ausbushes/ywflowers, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/grass, -/area/ruin/hotel) -"fo" = ( -/obj/structure/flora/ausbushes/fullgrass, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/grass, -/area/ruin/hotel) -"fp" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/wood, -/area/ruin/hotel) -"fq" = ( -/obj/machinery/vending/cigarette, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/wood, -/area/ruin/hotel) -"fr" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/ruin/hotel/dock) -"fs" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/wood, -/area/ruin/hotel/dock) -"ft" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/wood, -/area/ruin/hotel/dock) -"fu" = ( -/turf/open/floor/carpet, -/area/ruin/hotel/dock) -"fv" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/firedoor, -/turf/open/floor/plating, -/area/ruin/hotel/dock) -"fw" = ( -/obj/structure/closet/chefcloset, -/obj/machinery/light{ - dir = 1 - }, -/turf/open/floor/plasteel/cafeteria, -/area/ruin/hotel/bar) -"fx" = ( -/turf/open/floor/plasteel/cafeteria, -/area/ruin/hotel/bar) -"fy" = ( -/obj/structure/sink/kitchen{ - pixel_y = 28 - }, -/turf/open/floor/plasteel/cafeteria, -/area/ruin/hotel/bar) -"fz" = ( -/obj/machinery/processor, -/turf/open/floor/plasteel/cafeteria, -/area/ruin/hotel/bar) -"fA" = ( -/obj/structure/table/reinforced, -/turf/open/floor/plasteel/cafeteria, -/area/ruin/hotel/bar) -"fB" = ( -/obj/structure/table, -/obj/machinery/chem_dispenser/drinks/beer, -/turf/open/floor/plasteel/bar, -/area/ruin/hotel/bar) -"fC" = ( -/obj/structure/table, -/obj/machinery/chem_dispenser/drinks, -/turf/open/floor/plasteel/bar, -/area/ruin/hotel/bar) -"fD" = ( -/obj/structure/table, -/obj/machinery/reagentgrinder, -/obj/machinery/light{ - dir = 1 - }, -/turf/open/floor/plasteel/bar, -/area/ruin/hotel/bar) -"fE" = ( -/obj/machinery/vending/boozeomat{ - req_access_txt = "200" - }, -/turf/open/floor/plasteel/bar, -/area/ruin/hotel/bar) -"fF" = ( -/obj/structure/table, -/obj/item/weapon/book/manual/barman_recipes, -/obj/item/weapon/reagent_containers/food/drinks/shaker, -/turf/open/floor/plasteel/bar, -/area/ruin/hotel/bar) -"fG" = ( -/turf/open/floor/plasteel/bar, -/area/ruin/hotel/bar) -"fH" = ( -/obj/structure/table/reinforced, -/turf/open/floor/plasteel/bar, -/area/ruin/hotel/bar) -"fI" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - tag = "icon-plant-02"; - icon_state = "plant-02" - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/wood, -/area/ruin/hotel) -"fJ" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/wood, -/area/ruin/hotel) -"fK" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/carpet, -/area/ruin/hotel) -"fL" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/open/floor/carpet, -/area/ruin/hotel) -"fM" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/wood, -/area/ruin/hotel) -"fN" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 10 - }, -/turf/open/floor/wood, -/area/ruin/hotel) -"fO" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/firealarm{ - dir = 8; - pixel_x = -24 - }, -/turf/open/floor/carpet, -/area/ruin/hotel/dock) -"fP" = ( -/obj/structure/sink{ - icon_state = "sink"; - dir = 8; - pixel_x = -12; - pixel_y = 2 - }, -/turf/open/floor/plasteel/freezer, -/area/ruin/hotel/bar) -"fQ" = ( -/turf/open/floor/plasteel/freezer, -/area/ruin/hotel/bar) -"fR" = ( -/obj/structure/closet/crate/freezer, -/obj/item/weapon/reagent_containers/food/snacks/grown/wheat, -/obj/item/weapon/reagent_containers/food/snacks/grown/wheat, -/obj/item/weapon/reagent_containers/food/snacks/grown/wheat, -/obj/item/weapon/reagent_containers/food/snacks/grown/wheat, -/obj/item/weapon/reagent_containers/food/snacks/grown/wheat, -/obj/item/weapon/reagent_containers/food/snacks/grown/wheat, -/obj/item/weapon/reagent_containers/food/snacks/grown/wheat, -/obj/item/weapon/reagent_containers/food/snacks/grown/potato, -/obj/item/weapon/reagent_containers/food/snacks/grown/potato, -/obj/item/weapon/reagent_containers/food/snacks/grown/potato, -/obj/item/weapon/reagent_containers/food/snacks/grown/potato, -/obj/item/weapon/reagent_containers/food/snacks/grown/potato, -/obj/item/weapon/reagent_containers/food/snacks/grown/carrot, -/obj/item/weapon/reagent_containers/food/snacks/grown/carrot, -/obj/item/weapon/reagent_containers/food/snacks/grown/carrot, -/obj/item/weapon/reagent_containers/food/snacks/grown/carrot, -/obj/item/weapon/reagent_containers/food/snacks/grown/carrot, -/obj/item/weapon/reagent_containers/food/snacks/grown/carrot, -/obj/item/weapon/reagent_containers/food/snacks/grown/tomato, -/obj/item/weapon/reagent_containers/food/snacks/grown/tomato, -/obj/item/weapon/reagent_containers/food/snacks/grown/tomato, -/obj/item/weapon/reagent_containers/food/snacks/grown/tomato, -/obj/item/weapon/reagent_containers/food/snacks/grown/tomato, -/turf/open/floor/plasteel/freezer, -/area/ruin/hotel/bar) -"fS" = ( -/obj/machinery/chem_master/condimaster{ - name = "CondiMaster Neo" - }, -/turf/open/floor/plasteel/freezer, -/area/ruin/hotel/bar) -"fT" = ( -/obj/machinery/door/airlock/freezer{ - name = "Freezer"; - req_access_txt = "200" - }, -/turf/open/floor/plasteel/freezer, -/area/ruin/hotel/bar) -"fU" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/reagent_containers/food/drinks/beer, -/turf/open/floor/plasteel/bar, -/area/ruin/hotel/bar) -"fV" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 5 - }, -/turf/open/floor/carpet, -/area/ruin/hotel) -"fW" = ( -/obj/machinery/door/airlock/glass, -/obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/carpet, -/area/ruin/hotel/dock) -"fX" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 9; - pixel_y = 0 - }, -/turf/open/floor/carpet, -/area/ruin/hotel/dock) -"fY" = ( -/obj/structure/table, -/obj/item/weapon/kitchen/knife, -/obj/machinery/light{ - dir = 8 - }, -/turf/open/floor/plasteel/freezer, -/area/ruin/hotel/bar) -"fZ" = ( -/obj/structure/table, -/turf/open/floor/plasteel/freezer, -/area/ruin/hotel/bar) -"ga" = ( -/obj/structure/table, -/obj/machinery/microwave, -/turf/open/floor/plasteel/cafeteria, -/area/ruin/hotel/bar) -"gb" = ( -/obj/structure/table, -/obj/item/weapon/reagent_containers/food/condiment/enzyme, -/obj/item/weapon/reagent_containers/food/condiment/enzyme, -/turf/open/floor/plasteel/cafeteria, -/area/ruin/hotel/bar) -"gc" = ( -/obj/structure/table, -/obj/item/weapon/reagent_containers/food/condiment/sugar, -/obj/item/weapon/reagent_containers/food/condiment/sugar, -/turf/open/floor/plasteel/cafeteria, -/area/ruin/hotel/bar) -"gd" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/reagent_containers/glass/rag, -/turf/open/floor/plasteel/bar, -/area/ruin/hotel/bar) -"ge" = ( -/obj/machinery/firealarm{ - dir = 1; - pixel_y = -24 - }, -/turf/open/floor/carpet, -/area/ruin/hotel) -"gf" = ( -/obj/machinery/door/airlock/glass, -/obj/machinery/door/firedoor, -/turf/open/floor/carpet, -/area/ruin/hotel/dock) -"gg" = ( -/turf/open/floor/carpet{ - icon_state = "carpetsymbol" - }, -/area/ruin/hotel/dock) -"gh" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - tag = "icon-plant-22"; - icon_state = "plant-22" - }, -/turf/open/floor/wood, -/area/ruin/hotel/dock) -"gi" = ( -/obj/structure/table/wood, -/obj/machinery/light{ - tag = "icon-tube1 (EAST)"; - icon_state = "tube1"; - dir = 4 - }, -/turf/open/floor/carpet, -/area/ruin/hotel/dock) -"gj" = ( -/obj/effect/decal/cleanable/oil, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/ruin/hotel) -"gk" = ( -/obj/structure/kitchenspike, -/turf/open/floor/plasteel/freezer, -/area/ruin/hotel/bar) -"gl" = ( -/obj/effect/decal/cleanable/blood/old, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 6 - }, -/turf/open/floor/plasteel/freezer, -/area/ruin/hotel/bar) -"gm" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/freezer, -/area/ruin/hotel/bar) -"gn" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/plasteel/freezer, -/area/ruin/hotel/bar) -"go" = ( -/obj/structure/kitchenspike, -/obj/effect/decal/cleanable/blood/old, -/turf/open/floor/plasteel/freezer, -/area/ruin/hotel/bar) -"gp" = ( -/obj/structure/table, -/turf/open/floor/plasteel/cafeteria, -/area/ruin/hotel/bar) -"gq" = ( -/obj/structure/table, -/obj/item/weapon/kitchen/rollingpin, -/turf/open/floor/plasteel/cafeteria, -/area/ruin/hotel/bar) -"gr" = ( -/obj/structure/chair/stool/bar, -/turf/open/floor/plasteel/bar, -/area/ruin/hotel/bar) -"gs" = ( -/obj/machinery/door/airlock/centcom{ - name = "Hotel Staff Room"; - req_access_txt = "200" - }, -/turf/open/floor/plasteel/black, -/area/ruin/hotel/workroom) -"gt" = ( -/obj/structure/table/wood, -/obj/structure/window/reinforced{ - dir = 1; - layer = 2.9 - }, -/obj/machinery/light/small{ - tag = "icon-bulb1 (WEST)"; - icon_state = "bulb1"; - dir = 8 - }, -/turf/open/floor/plasteel/grimy, -/area/ruin/hotel/dock) -"gu" = ( -/obj/structure/table/wood, -/obj/structure/window/reinforced{ - dir = 1; - layer = 2.9 - }, -/turf/open/floor/plasteel/grimy, -/area/ruin/hotel/dock) -"gv" = ( -/obj/structure/table/wood, -/obj/structure/window/reinforced{ - dir = 4 - }, -/obj/structure/window/reinforced{ - dir = 1; - layer = 2.9 - }, -/obj/item/device/gps{ - gpstag = "Twin-Nexus Hotel Retreat"; - name = "hotel gps" - }, -/turf/open/floor/plasteel/grimy, -/area/ruin/hotel/dock) -"gw" = ( -/turf/open/floor/plasteel/black, -/area/ruin/hotel/dock) -"gx" = ( -/obj/structure/table, -/obj/item/weapon/screwdriver, -/obj/item/device/multitool, -/obj/item/weapon/wirecutters, -/obj/machinery/light{ - dir = 1 - }, -/turf/open/floor/plasteel/black, -/area/ruin/hotel/dock) -"gy" = ( -/obj/structure/chair/comfy/brown{ - dir = 8 - }, -/turf/open/floor/carpet, -/area/ruin/hotel/dock) -"gz" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/freezer, -/area/ruin/hotel/bar) -"gA" = ( -/obj/effect/decal/cleanable/blood/old, -/turf/open/floor/plasteel/freezer, -/area/ruin/hotel/bar) -"gB" = ( -/obj/machinery/gibber, -/turf/open/floor/plasteel/freezer, -/area/ruin/hotel/bar) -"gC" = ( -/obj/structure/closet/secure_closet/freezer/meat{ - req_access_txt = "200" - }, -/turf/open/floor/plasteel/cafeteria, -/area/ruin/hotel/bar) -"gD" = ( -/obj/structure/table, -/obj/item/weapon/kitchen/knife, -/turf/open/floor/plasteel/cafeteria, -/area/ruin/hotel/bar) -"gE" = ( -/obj/structure/table, -/obj/item/weapon/reagent_containers/food/condiment/pack/hotsauce, -/obj/item/weapon/reagent_containers/food/condiment/pack/hotsauce, -/obj/item/weapon/reagent_containers/food/condiment/pack/ketchup, -/obj/item/weapon/reagent_containers/food/condiment/pack/ketchup, -/obj/item/weapon/reagent_containers/glass/beaker, -/turf/open/floor/plasteel/cafeteria, -/area/ruin/hotel/bar) -"gF" = ( -/obj/machinery/vending/cola, -/turf/open/floor/plasteel/black, -/area/ruin/hotel/workroom) -"gG" = ( -/turf/open/floor/plasteel/black, -/area/ruin/hotel/workroom) -"gH" = ( -/obj/structure/table, -/obj/machinery/light{ - dir = 1 - }, -/obj/item/weapon/crowbar, -/turf/open/floor/plasteel/black, -/area/ruin/hotel/workroom) -"gI" = ( -/obj/structure/noticeboard{ - pixel_y = 32 - }, -/obj/item/weapon/paper{ - info = "!NOTICE!

We are expecting arriving guests soon from a nearby station! Stay sharp and make sure guests enjoy their time spent here. Don't think you can sneak off while they're here, either.
"; - name = "!NOTICE!" - }, -/turf/open/floor/plasteel/black, -/area/ruin/hotel/workroom) -"gJ" = ( -/obj/structure/closet/secure_closet/freezer/kitchen/mining, -/turf/open/floor/plasteel/black, -/area/ruin/hotel/workroom) -"gK" = ( -/obj/structure/table, -/obj/machinery/microwave, -/turf/open/floor/plasteel/black, -/area/ruin/hotel/workroom) -"gL" = ( -/obj/structure/table, -/obj/item/weapon/storage/box/donkpockets, -/obj/structure/sign/nosmoking_1{ - pixel_y = 32 - }, -/turf/open/floor/plasteel/black, -/area/ruin/hotel/workroom) -"gM" = ( -/obj/effect/mob_spawn/human/hotel_staff, -/turf/open/floor/plasteel/black, -/area/ruin/hotel/workroom) -"gN" = ( -/obj/structure/filingcabinet, -/turf/open/floor/plasteel/grimy, -/area/ruin/hotel/dock) -"gO" = ( -/obj/structure/chair/office/light{ - dir = 4 - }, -/turf/open/floor/plasteel/grimy, -/area/ruin/hotel/dock) -"gP" = ( -/obj/structure/table/wood, -/turf/open/floor/plasteel/grimy, -/area/ruin/hotel/dock) -"gQ" = ( -/obj/machinery/computer/teleporter, -/turf/open/floor/plasteel/black, -/area/ruin/hotel/dock) -"gR" = ( -/obj/machinery/teleport/station, -/turf/open/floor/plasteel/black, -/area/ruin/hotel/dock) -"gS" = ( -/obj/machinery/teleport/hub, -/turf/open/floor/plasteel/black, -/area/ruin/hotel/dock) -"gT" = ( -/obj/machinery/light{ - dir = 8 - }, -/obj/item/weapon/reagent_containers/food/condiment/milk, -/obj/item/weapon/reagent_containers/food/condiment/milk, -/obj/item/weapon/reagent_containers/food/condiment/milk, -/obj/structure/closet/secure_closet/freezer/fridge{ - req_access_txt = "200" - }, -/turf/open/floor/plasteel/cafeteria, -/area/ruin/hotel/bar) -"gU" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 6 - }, -/turf/open/floor/plasteel/cafeteria, -/area/ruin/hotel/bar) -"gV" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/cafeteria, -/area/ruin/hotel/bar) -"gW" = ( -/obj/structure/table/reinforced, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/plasteel/cafeteria, -/area/ruin/hotel/bar) -"gX" = ( -/obj/structure/chair{ - dir = 4 - }, -/turf/open/floor/plasteel/bar, -/area/ruin/hotel/bar) -"gY" = ( -/obj/structure/table/wood, -/obj/item/weapon/reagent_containers/food/condiment/saltshaker{ - pixel_x = 4 - }, -/obj/item/weapon/reagent_containers/food/condiment/peppermill{ - pixel_x = -4 - }, -/turf/open/floor/plasteel/bar, -/area/ruin/hotel/bar) -"gZ" = ( -/obj/structure/chair{ - dir = 8 - }, -/turf/open/floor/plasteel/bar, -/area/ruin/hotel/bar) -"ha" = ( -/obj/machinery/vending/wallmed{ - pixel_x = -32 - }, -/turf/open/floor/plasteel/black, -/area/ruin/hotel/workroom) -"hb" = ( -/turf/open/floor/plasteel/grimy, -/area/ruin/hotel/dock) -"hc" = ( -/obj/structure/table/wood, -/obj/structure/window/reinforced{ - dir = 4 - }, -/obj/item/weapon/paper/pamphlet{ - info = "
The Twin Nexus Hotel

A place of Sanctuary


Welcome to The Twin-Nexus Hotel, \[insert name here]! The loyal staff stride to their best effort to cater for the best possible experience for all space(wo)men! If you have any questions or comments, please ask one of our on-board staff for more infomation.
"; - name = "hotel pamphlet" - }, -/obj/item/weapon/paper/pamphlet{ - info = "
The Twin Nexus Hotel

A place of Sanctuary


Welcome to The Twin-Nexus Hotel, \[insert name here]! The loyal staff stride to their best effort to cater for the best possible experience for all space(wo)men! If you have any questions or comments, please ask one of our on-board staff for more infomation.
"; - name = "hotel pamphlet" - }, -/obj/item/weapon/paper/pamphlet{ - info = "
The Twin Nexus Hotel

A place of Sanctuary


Welcome to The Twin-Nexus Hotel, \[insert name here]! The loyal staff stride to their best effort to cater for the best possible experience for all space(wo)men! If you have any questions or comments, please ask one of our on-board staff for more infomation.
"; - name = "hotel pamphlet" - }, -/obj/item/weapon/paper/pamphlet{ - info = "
The Twin Nexus Hotel

A place of Sanctuary


Welcome to The Twin-Nexus Hotel, \[insert name here]! The loyal staff stride to their best effort to cater for the best possible experience for all space(wo)men! If you have any questions or comments, please ask one of our on-board staff for more infomation.
"; - name = "hotel pamphlet" - }, -/obj/item/weapon/paper/pamphlet{ - info = "
The Twin Nexus Hotel

A place of Sanctuary


Welcome to The Twin-Nexus Hotel, \[insert name here]! The loyal staff stride to their best effort to cater for the best possible experience for all space(wo)men! If you have any questions or comments, please ask one of our on-board staff for more infomation.
"; - name = "hotel pamphlet" - }, -/turf/open/floor/plasteel/grimy, -/area/ruin/hotel/dock) -"hd" = ( -/obj/structure/table/wood, -/obj/item/weapon/reagent_containers/food/drinks/mug/tea, -/turf/open/floor/carpet, -/area/ruin/hotel/dock) -"he" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 8 - }, -/turf/closed/wall, -/area/ruin/hotel) -"hf" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/ruin/hotel) -"hg" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/ruin/hotel/bar) -"hh" = ( -/obj/structure/kitchenspike, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/freezer, -/area/ruin/hotel/bar) -"hi" = ( -/obj/effect/decal/cleanable/blood/old, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/freezer, -/area/ruin/hotel/bar) -"hj" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/freezer, -/area/ruin/hotel/bar) -"hk" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/freezer, -/area/ruin/hotel/bar) -"hl" = ( -/obj/structure/kitchenspike, -/obj/machinery/light{ - tag = "icon-tube1 (EAST)"; - icon_state = "tube1"; - dir = 4 - }, -/turf/open/floor/plasteel/freezer, -/area/ruin/hotel/bar) -"hm" = ( -/obj/item/weapon/reagent_containers/food/condiment/rice, -/obj/item/weapon/reagent_containers/food/condiment/rice, -/obj/item/weapon/reagent_containers/food/condiment/flour, -/obj/item/weapon/reagent_containers/food/condiment/flour, -/obj/structure/closet/secure_closet/freezer/kitchen{ - req_access = null; - req_access_txt = "200" - }, -/turf/open/floor/plasteel/cafeteria, -/area/ruin/hotel/bar) -"hn" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/cafeteria, -/area/ruin/hotel/bar) -"ho" = ( -/obj/structure/table/reinforced, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/cafeteria, -/area/ruin/hotel/bar) -"hp" = ( -/obj/machinery/light{ - tag = "icon-tube1 (EAST)"; - icon_state = "tube1"; - dir = 4 - }, -/turf/open/floor/carpet, -/area/ruin/hotel) -"hq" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - tag = "icon-plant-18"; - icon_state = "plant-18" - }, -/turf/open/floor/plasteel/black, -/area/ruin/hotel/workroom) -"hr" = ( -/obj/item/device/radio/beacon, -/turf/open/floor/plasteel/black, -/area/ruin/hotel/dock) -"hs" = ( -/obj/structure/table/wood, -/turf/open/floor/carpet, -/area/ruin/hotel/dock) -"ht" = ( -/obj/structure/table, -/obj/item/weapon/storage/box/monkeycubes, -/obj/item/weapon/storage/box/monkeycubes, -/turf/open/floor/plasteel/freezer, -/area/ruin/hotel/bar) -"hu" = ( -/obj/structure/closet/crate/freezer, -/obj/item/weapon/reagent_containers/food/snacks/meat/slab/bear, -/obj/item/weapon/reagent_containers/food/snacks/meat/slab/bear, -/obj/item/weapon/reagent_containers/food/snacks/meat/slab/corgi, -/obj/item/weapon/reagent_containers/food/snacks/meat/slab/corgi, -/obj/item/weapon/reagent_containers/food/snacks/meat/slab/monkey, -/obj/item/weapon/reagent_containers/food/snacks/meat/slab/monkey, -/obj/item/weapon/reagent_containers/food/snacks/meat/slab/pug, -/obj/item/weapon/reagent_containers/food/snacks/meat/slab/pug, -/obj/item/weapon/reagent_containers/food/snacks/meat/slab/xeno, -/obj/item/weapon/reagent_containers/food/snacks/meat/slab/xeno, -/obj/item/weapon/reagent_containers/food/snacks/meat/slab/human/mutant/lizard, -/obj/item/weapon/reagent_containers/food/snacks/meat/slab/human/mutant/lizard, -/obj/item/weapon/reagent_containers/food/snacks/meat/slab/human/mutant/plant, -/obj/item/weapon/reagent_containers/food/snacks/meat/slab/human/mutant/plant, -/turf/open/floor/plasteel/freezer, -/area/ruin/hotel/bar) -"hv" = ( -/obj/structure/closet/crate/freezer, -/obj/item/weapon/reagent_containers/food/snacks/meat/slab/bear, -/obj/item/weapon/reagent_containers/food/snacks/meat/slab/bear, -/obj/item/weapon/reagent_containers/food/snacks/meat/slab/bear, -/obj/item/weapon/reagent_containers/food/snacks/meat/slab/corgi, -/obj/item/weapon/reagent_containers/food/snacks/meat/slab/corgi, -/obj/item/weapon/reagent_containers/food/snacks/meat/slab/monkey, -/obj/item/weapon/reagent_containers/food/snacks/meat/slab/monkey, -/obj/item/weapon/reagent_containers/food/snacks/meat/slab/pug, -/obj/item/weapon/reagent_containers/food/snacks/meat/slab/pug, -/obj/item/weapon/reagent_containers/food/snacks/meat/slab/xeno, -/obj/item/weapon/reagent_containers/food/snacks/meat/slab/xeno, -/obj/item/weapon/reagent_containers/food/snacks/meat/slab/human/mutant/lizard, -/obj/item/weapon/reagent_containers/food/snacks/meat/slab/human/mutant/lizard, -/obj/item/weapon/reagent_containers/food/snacks/meat/slab/human/mutant/plant, -/obj/item/weapon/reagent_containers/food/snacks/meat/slab/human/mutant/plant, -/turf/open/floor/plasteel/freezer, -/area/ruin/hotel/bar) -"hw" = ( -/obj/structure/table, -/obj/item/weapon/kitchen/knife, -/turf/open/floor/plasteel/freezer, -/area/ruin/hotel/bar) -"hx" = ( -/obj/item/weapon/reagent_containers/food/condiment/saltshaker{ - pixel_x = 4 - }, -/obj/item/weapon/reagent_containers/food/condiment/peppermill{ - pixel_x = -4 - }, -/obj/structure/table, -/turf/open/floor/plasteel/cafeteria, -/area/ruin/hotel/bar) -"hy" = ( -/obj/structure/table, -/obj/item/weapon/book/manual/chef_recipes, -/turf/open/floor/plasteel/cafeteria, -/area/ruin/hotel/bar) -"hz" = ( -/obj/structure/table/reinforced, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/cafeteria, -/area/ruin/hotel/bar) -"hA" = ( -/obj/machinery/power/apc{ - cell_type = 5000; - dir = 2; - name = "Staff Room APC"; - pixel_y = -24 - }, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/mob/living/simple_animal/bot/medbot{ - name = "Accidents Happen" - }, -/turf/open/floor/plasteel/black, -/area/ruin/hotel/workroom) -"hB" = ( -/obj/structure/mirror{ - pixel_y = -32 - }, -/turf/open/floor/plasteel/black, -/area/ruin/hotel/workroom) -"hC" = ( -/obj/structure/closet/crate/bin, -/obj/structure/extinguisher_cabinet{ - pixel_y = -30 - }, -/turf/open/floor/plasteel/black, -/area/ruin/hotel/workroom) -"hD" = ( -/obj/structure/reagent_dispensers/water_cooler, -/turf/open/floor/plasteel/black, -/area/ruin/hotel/workroom) -"hE" = ( -/obj/structure/table, -/obj/item/weapon/card/id/away/hotel, -/obj/item/weapon/card/id/away/hotel, -/obj/item/weapon/card/id/away/hotel, -/obj/item/weapon/card/id/away/hotel, -/obj/item/weapon/card/id/away/hotel, -/obj/item/weapon/card/id/away/hotel, -/turf/open/floor/plasteel/black, -/area/ruin/hotel/workroom) -"hF" = ( -/obj/structure/table, -/obj/item/weapon/storage/firstaid/regular, -/turf/open/floor/plasteel/black, -/area/ruin/hotel/workroom) -"hG" = ( -/obj/effect/mob_spawn/human/hotel_staff{ - tag = "icon-sleeper_s (NORTH)"; - icon_state = "sleeper_s"; - dir = 1 - }, -/obj/machinery/light, -/turf/open/floor/plasteel/black, -/area/ruin/hotel/workroom) -"hH" = ( -/obj/effect/mob_spawn/human/hotel_staff{ - tag = "icon-sleeper_s (NORTH)"; - icon_state = "sleeper_s"; - dir = 1 - }, -/turf/open/floor/plasteel/black, -/area/ruin/hotel/workroom) -"hI" = ( -/obj/machinery/door/airlock/maintenance{ - name = "Hotel Maintenance"; - req_access_txt = "200,201" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/ruin/hotel/bar) -"hJ" = ( -/obj/structure/table, -/obj/item/weapon/reagent_containers/food/condiment/soysauce, -/turf/open/floor/plasteel/cafeteria, -/area/ruin/hotel/bar) -"hK" = ( -/obj/structure/table, -/obj/machinery/reagentgrinder, -/turf/open/floor/plasteel/cafeteria, -/area/ruin/hotel/bar) -"hL" = ( -/obj/structure/table/wood, -/obj/structure/window/reinforced, -/obj/machinery/light/small{ - tag = "icon-bulb1 (WEST)"; - icon_state = "bulb1"; - dir = 8 - }, -/turf/open/floor/plasteel/grimy, -/area/ruin/hotel/dock) -"hM" = ( -/obj/structure/table/wood, -/obj/structure/window/reinforced, -/turf/open/floor/plasteel/grimy, -/area/ruin/hotel/dock) -"hN" = ( -/obj/structure/table/wood, -/obj/structure/window/reinforced{ - dir = 4 - }, -/obj/structure/window/reinforced, -/turf/open/floor/plasteel/grimy, -/area/ruin/hotel/dock) -"hO" = ( -/obj/machinery/light, -/turf/open/floor/plasteel/black, -/area/ruin/hotel/dock) -"hP" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 5 - }, -/turf/open/floor/plating, -/area/ruin/hotel) -"hQ" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0; - tag = "" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8"; - tag = "" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 1 - }, -/turf/open/floor/plating, -/area/ruin/hotel) -"hR" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0; - tag = "" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/open/floor/plating, -/area/ruin/hotel) -"hS" = ( -/obj/effect/decal/cleanable/cobweb{ - icon_state = "cobweb2" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 10 - }, -/turf/open/floor/plating, -/area/ruin/hotel) -"hT" = ( -/obj/machinery/vending/dinnerware{ - req_access_txt = "200" - }, -/turf/open/floor/plasteel/cafeteria, -/area/ruin/hotel/bar) -"hU" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall, -/area/ruin/hotel/bar) -"hV" = ( -/obj/structure/table/wood, -/obj/item/device/instrument/guitar, -/obj/structure/window/reinforced{ - dir = 1 - }, -/turf/open/floor/plasteel/grimy, -/area/ruin/hotel/bar) -"hW" = ( -/obj/structure/window/reinforced{ - dir = 1 - }, -/turf/open/floor/plasteel/grimy, -/area/ruin/hotel/bar) -"hX" = ( -/obj/structure/window/reinforced{ - dir = 1 - }, -/obj/structure/piano{ - tag = "icon-piano"; - icon_state = "piano" - }, -/turf/open/floor/plasteel/grimy, -/area/ruin/hotel/bar) -"hY" = ( -/obj/structure/window/reinforced{ - dir = 4 - }, -/obj/structure/window/reinforced{ - dir = 1 - }, -/obj/structure/chair/stool, -/turf/open/floor/plasteel/grimy, -/area/ruin/hotel/bar) -"hZ" = ( -/obj/machinery/light{ - dir = 1 - }, -/turf/open/floor/carpet, -/area/ruin/hotel) -"ia" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 5 - }, -/turf/closed/wall, -/area/ruin/hotel) -"ib" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 1 - }, -/turf/closed/wall, -/area/ruin/hotel/power) -"ic" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/ruin/hotel/power) -"id" = ( -/obj/machinery/door/airlock/engineering{ - name = "Power Storage"; - req_access_txt = "200,201" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/ruin/hotel/power) -"ie" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 10 - }, -/turf/closed/wall, -/area/ruin/hotel/power) -"if" = ( -/obj/machinery/smartfridge/food, -/turf/open/floor/plasteel/cafeteria, -/area/ruin/hotel/bar) -"ig" = ( -/obj/structure/table/wood, -/obj/item/device/instrument/violin, -/turf/open/floor/plasteel/grimy, -/area/ruin/hotel/bar) -"ih" = ( -/turf/open/floor/plasteel/grimy, -/area/ruin/hotel/bar) -"ii" = ( -/obj/structure/window/reinforced{ - dir = 4 - }, -/turf/open/floor/plasteel/grimy, -/area/ruin/hotel/bar) -"ij" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 6 - }, -/turf/open/floor/carpet, -/area/ruin/hotel) -"ik" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/carpet, -/area/ruin/hotel) -"il" = ( -/obj/machinery/door/airlock/glass, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0; - tag = "" - }, -/obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/carpet, -/area/ruin/hotel/dock) -"im" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/carpet, -/area/ruin/hotel/dock) -"in" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/carpet, -/area/ruin/hotel/dock) -"io" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 10 - }, -/turf/open/floor/carpet, -/area/ruin/hotel/dock) -"ip" = ( -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/turf/open/floor/plating/airless, -/area/ruin/unpowered/no_grav) -"iq" = ( -/obj/structure/cable/yellow{ - d1 = 2; - d2 = 8; - icon_state = "2-8"; - tag = "" - }, -/turf/open/floor/plating/airless, -/area/ruin/unpowered/no_grav) -"ir" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall, -/area/ruin/hotel/power) -"is" = ( -/obj/structure/reagent_dispensers/fueltank, -/turf/open/floor/plasteel/yellow/side{ - tag = "icon-yellow (NORTHWEST)"; - icon_state = "yellow"; - dir = 9 - }, -/area/ruin/hotel/power) -"it" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/yellow/side{ - tag = "icon-yellow (NORTH)"; - icon_state = "yellow"; - dir = 1 - }, -/area/ruin/hotel/power) -"iu" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0; - tag = "" - }, -/obj/structure/sign/fire{ - desc = "A poster designed to remind the reader to wear appropriate insulation and head protection when working with material."; - icon_state = "safety"; - name = "Safety Poster"; - pixel_x = 0; - pixel_y = 32 - }, -/turf/open/floor/plasteel/yellow/side{ - tag = "icon-yellow (NORTH)"; - icon_state = "yellow"; - dir = 1 - }, -/area/ruin/hotel/power) -"iv" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0; - tag = "" - }, -/obj/machinery/airalarm{ - pixel_y = 24 - }, -/turf/open/floor/plasteel/yellow/side{ - tag = "icon-yellow (NORTH)"; - icon_state = "yellow"; - dir = 1 - }, -/area/ruin/hotel/power) -"iw" = ( -/obj/machinery/power/apc{ - cell_type = 5000; - dir = 1; - name = "Power Storage APC"; - pixel_x = 0; - pixel_y = 25 - }, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/turf/open/floor/plasteel/yellow/side{ - tag = "icon-yellow (NORTH)"; - icon_state = "yellow"; - dir = 1 - }, -/area/ruin/hotel/power) -"ix" = ( -/obj/structure/table, -/obj/item/stack/sheet/metal/fifty, -/obj/item/stack/sheet/metal/fifty, -/turf/open/floor/plasteel/yellow/side{ - tag = "icon-yellow (NORTHEAST)"; - icon_state = "yellow"; - dir = 5 - }, -/area/ruin/hotel/power) -"iy" = ( -/obj/machinery/light, -/turf/open/floor/plasteel/cafeteria, -/area/ruin/hotel/bar) -"iz" = ( -/obj/structure/extinguisher_cabinet{ - pixel_y = -30 - }, -/turf/open/floor/plasteel/cafeteria, -/area/ruin/hotel/bar) -"iA" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/door/airlock{ - name = "Theatre"; - req_access_txt = "200" - }, -/turf/open/floor/plasteel/grimy, -/area/ruin/hotel/bar) -"iB" = ( -/obj/machinery/light, -/turf/open/floor/plasteel/grimy, -/area/ruin/hotel/bar) -"iC" = ( -/obj/machinery/light, -/turf/open/floor/wood, -/area/ruin/hotel) -"iD" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 8 - }, -/turf/open/floor/carpet, -/area/ruin/hotel) -"iE" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/wood, -/area/ruin/hotel) -"iF" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/carpet, -/area/ruin/hotel/dock) -"iG" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/carpet, -/area/ruin/hotel/dock) -"iH" = ( -/obj/structure/table, -/obj/item/weapon/storage/toolbox/electrical, -/obj/item/clothing/gloves/color/yellow, -/obj/machinery/light{ - dir = 8 - }, -/turf/open/floor/plasteel/yellow/side{ - tag = "icon-yellow (WEST)"; - icon_state = "yellow"; - dir = 8 - }, -/area/ruin/hotel/power) -"iI" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/ruin/hotel/power) -"iJ" = ( -/obj/structure/closet/crate, -/obj/item/clothing/mask/breath, -/obj/item/clothing/mask/breath, -/turf/open/floor/plasteel, -/area/ruin/hotel/power) -"iK" = ( -/turf/open/floor/plasteel, -/area/ruin/hotel/power) -"iL" = ( -/obj/structure/table, -/obj/item/stack/sheet/glass/fifty, -/obj/item/stack/sheet/glass/fifty, -/turf/open/floor/plasteel/yellow/side{ - tag = "icon-yellow (EAST)"; - icon_state = "yellow"; - dir = 4 - }, -/area/ruin/hotel/power) -"iM" = ( -/obj/item/weapon/twohanded/required/kirbyplants, -/turf/open/floor/wood, -/area/ruin/hotel) -"iN" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/wood, -/area/ruin/hotel) -"iO" = ( -/obj/machinery/vending/coffee, -/turf/open/floor/wood, -/area/ruin/hotel) -"iP" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/wood, -/area/ruin/hotel/dock) -"iQ" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/wood, -/area/ruin/hotel/dock) -"iR" = ( -/obj/structure/table, -/obj/item/weapon/storage/toolbox/mechanical, -/obj/item/clothing/head/welding, -/turf/open/floor/plasteel/yellow/side{ - tag = "icon-yellow (WEST)"; - icon_state = "yellow"; - dir = 8 - }, -/area/ruin/hotel/power) -"iS" = ( -/obj/structure/tank_dispenser/oxygen, -/turf/open/floor/plasteel, -/area/ruin/hotel/power) -"iT" = ( -/obj/structure/table, -/obj/item/stack/sheet/plasteel/twenty, -/obj/item/stack/rods{ - amount = 60 - }, -/turf/open/floor/plasteel/yellow/side{ - tag = "icon-yellow (EAST)"; - icon_state = "yellow"; - dir = 4 - }, -/area/ruin/hotel/power) -"iU" = ( -/obj/machinery/power/apc{ - cell_type = 5000; - dir = 2; - name = "Security APC"; - pixel_y = -24 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0; - tag = "" - }, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/ruin/hotel/security) -"iV" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0; - tag = "" - }, -/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, -/turf/open/floor/plating, -/area/ruin/hotel) -"iW" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0; - tag = "" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/ruin/hotel) -"iX" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0; - tag = "" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 1 - }, -/turf/open/floor/plating, -/area/ruin/hotel) -"iY" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0; - tag = "" - }, -/obj/machinery/airalarm{ - dir = 1; - icon_state = "alarm0"; - pixel_y = -24; - tag = "icon-alarm0 (NORTH)" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/ruin/hotel/pool) -"iZ" = ( -/obj/machinery/power/apc{ - cell_type = 5000; - dir = 2; - name = "Pool APC"; - pixel_y = -24 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0; - tag = "" - }, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/ruin/hotel/pool) -"ja" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0; - tag = "" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/wood, -/area/ruin/hotel) -"jb" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0; - tag = "" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 4 - }, -/turf/open/floor/carpet, -/area/ruin/hotel) -"jc" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/wood, -/area/ruin/hotel) -"jd" = ( -/obj/machinery/vending/snack, -/turf/open/floor/wood, -/area/ruin/hotel) -"je" = ( -/obj/machinery/light{ - dir = 8 - }, -/obj/machinery/power/apc{ - cell_type = 5000; - dir = 2; - name = "Dock APC"; - pixel_y = -24 - }, -/obj/structure/cable, -/turf/open/floor/wood, -/area/ruin/hotel/dock) -"jf" = ( -/obj/machinery/light, -/turf/open/floor/wood, -/area/ruin/hotel/dock) -"jg" = ( -/obj/structure/chair/comfy/brown{ - dir = 8 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/wood, -/area/ruin/hotel/dock) -"jh" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - external_pressure_bound = 101.325; - on = 1; - pressure_checks = 1 - }, -/turf/open/floor/wood, -/area/ruin/hotel/dock) -"ji" = ( -/obj/structure/table, -/obj/machinery/cell_charger, -/obj/item/weapon/stock_parts/cell/high, -/obj/item/weapon/stock_parts/cell/high, -/turf/open/floor/plasteel/yellow/side{ - tag = "icon-yellow (WEST)"; - icon_state = "yellow"; - dir = 8 - }, -/area/ruin/hotel/power) -"jj" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 5 - }, -/turf/open/floor/plasteel, -/area/ruin/hotel/power) -"jk" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/ruin/hotel/power) -"jl" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 10 - }, -/turf/open/floor/plasteel, -/area/ruin/hotel/power) -"jm" = ( -/obj/structure/table, -/obj/item/stack/sheet/rglass{ - amount = 50 - }, -/turf/open/floor/plasteel/yellow/side{ - tag = "icon-yellow (EAST)"; - icon_state = "yellow"; - dir = 4 - }, -/area/ruin/hotel/power) -"jn" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 5 - }, -/turf/closed/wall, -/area/ruin/hotel/power) -"jo" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/ruin/hotel/security) -"jp" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 1 - }, -/turf/closed/wall, -/area/ruin/hotel/security) -"jq" = ( -/obj/machinery/door/airlock/glass_security{ - name = "Hotel Security Checkpoint"; - req_access_txt = "203" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/ruin/hotel/security) -"jr" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/closed/wall, -/area/ruin/hotel/security) -"js" = ( -/obj/structure/closet, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/ruin/hotel) -"jt" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/ruin/hotel/pool) -"ju" = ( -/obj/machinery/door/airlock/glass, -/obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/carpet, -/area/ruin/hotel/pool) -"jv" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/ruin/hotel/pool) -"jw" = ( -/obj/machinery/door/airlock/glass, -/obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/carpet, -/area/ruin/hotel/pool) -"jx" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/closed/wall, -/area/ruin/hotel/pool) -"jy" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 1 - }, -/turf/closed/wall, -/area/ruin/hotel/pool) -"jz" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 9 - }, -/turf/closed/wall, -/area/ruin/hotel/dock) -"jA" = ( -/obj/structure/table, -/obj/machinery/cell_charger, -/obj/item/weapon/stock_parts/cell/high, -/obj/item/weapon/stock_parts/cell/high, -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/turf/open/floor/plasteel/yellow/side{ - tag = "icon-yellow (WEST)"; - icon_state = "yellow"; - dir = 8 - }, -/area/ruin/hotel/power) -"jB" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/turf/open/floor/plasteel, -/area/ruin/hotel/power) -"jC" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/ruin/hotel/power) -"jD" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/plasteel, -/area/ruin/hotel/power) -"jE" = ( -/turf/open/floor/plasteel/yellow/corner{ - tag = "icon-yellowcorner (EAST)"; - icon_state = "yellowcorner"; - dir = 4 - }, -/area/ruin/hotel/power) -"jF" = ( -/obj/structure/extinguisher_cabinet{ - pixel_x = 30 - }, -/turf/open/floor/plasteel/yellow/side{ - tag = "icon-yellow (NORTHEAST)"; - icon_state = "yellow"; - dir = 5 - }, -/area/ruin/hotel/power) -"jG" = ( -/turf/closed/wall, -/area/ruin/hotel/security) -"jH" = ( -/turf/open/floor/plasteel/red/side{ - tag = "icon-red (NORTHWEST)"; - icon_state = "red"; - dir = 9 - }, -/area/ruin/hotel/security) -"jI" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/red/side{ - tag = "icon-red (NORTH)"; - icon_state = "red"; - dir = 1 - }, -/area/ruin/hotel/security) -"jJ" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/red/side{ - tag = "icon-red (NORTH)"; - icon_state = "red"; - dir = 1 - }, -/area/ruin/hotel/security) -"jK" = ( -/obj/machinery/airalarm{ - pixel_y = 24 - }, -/turf/open/floor/plasteel/red/side{ - tag = "icon-red (NORTH)"; - icon_state = "red"; - dir = 1 - }, -/area/ruin/hotel/security) -"jL" = ( -/obj/structure/extinguisher_cabinet{ - pixel_y = 30 - }, -/turf/open/floor/plasteel/red/side{ - tag = "icon-red (NORTHEAST)"; - icon_state = "red"; - dir = 5 - }, -/area/ruin/hotel/security) -"jM" = ( -/obj/structure/table, -/turf/open/floor/plasteel/darkyellow, -/area/ruin/hotel/security) -"jN" = ( -/obj/structure/chair{ - dir = 8 - }, -/turf/open/floor/plasteel/darkyellow, -/area/ruin/hotel/security) -"jO" = ( -/obj/structure/closet, -/obj/item/weapon/dice/d20, -/turf/open/floor/plasteel/darkyellow, -/area/ruin/hotel/security) -"jP" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall, -/area/ruin/hotel/security) -"jQ" = ( -/turf/closed/wall, -/area/ruin/hotel/pool) -"jR" = ( -/turf/open/floor/plasteel, -/area/ruin/hotel/pool) -"jS" = ( -/obj/machinery/computer/arcade, -/turf/open/floor/plasteel, -/area/ruin/hotel/pool) -"jT" = ( -/obj/structure/extinguisher_cabinet{ - pixel_y = 30 - }, -/turf/open/floor/plasteel, -/area/ruin/hotel/pool) -"jU" = ( -/obj/machinery/light{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/ruin/hotel/pool) -"jV" = ( -/obj/machinery/firealarm{ - pixel_y = 24 - }, -/turf/open/floor/wood, -/area/ruin/hotel/pool) -"jW" = ( -/turf/open/floor/carpet, -/area/ruin/hotel/pool) -"jX" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/carpet, -/area/ruin/hotel/pool) -"jY" = ( -/turf/open/floor/wood, -/area/ruin/hotel/pool) -"jZ" = ( -/obj/structure/sign/nosmoking_2{ - pixel_y = 32 - }, -/turf/open/floor/plasteel, -/area/ruin/hotel/pool) -"ka" = ( -/obj/machinery/computer/arcade, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/ruin/hotel/pool) -"kb" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 8 - }, -/turf/closed/wall, -/area/ruin/hotel/power) -"kc" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/yellow/side{ - tag = "icon-yellow (WEST)"; - icon_state = "yellow"; - dir = 8 - }, -/area/ruin/hotel/power) -"kd" = ( -/obj/machinery/power/terminal, -/obj/structure/cable/yellow{ - icon_state = "0-4"; - d2 = 4 - }, -/turf/open/floor/plasteel, -/area/ruin/hotel/power) -"ke" = ( -/obj/machinery/power/terminal, -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/cable/yellow{ - icon_state = "0-4"; - d2 = 4 - }, -/turf/open/floor/plasteel, -/area/ruin/hotel/power) -"kf" = ( -/obj/structure/cable/yellow{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/components/binary/valve{ - name = "Air Release Valve"; - open = 1 - }, -/turf/open/floor/plasteel, -/area/ruin/hotel/power) -"kg" = ( -/obj/machinery/light{ - tag = "icon-tube1 (EAST)"; - icon_state = "tube1"; - dir = 4 - }, -/turf/open/floor/plasteel/yellow/side{ - tag = "icon-yellow (EAST)"; - icon_state = "yellow"; - dir = 4 - }, -/area/ruin/hotel/power) -"kh" = ( -/obj/machinery/light{ - dir = 8 - }, -/turf/open/floor/plasteel/red/side{ - tag = "icon-red (WEST)"; - icon_state = "red"; - dir = 8 - }, -/area/ruin/hotel/security) -"ki" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/ruin/hotel/security) -"kj" = ( -/obj/structure/chair, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/ruin/hotel/security) -"kk" = ( -/turf/open/floor/plasteel, -/area/ruin/hotel/security) -"kl" = ( -/turf/open/floor/plasteel/red/side{ - tag = "icon-red (EAST)"; - icon_state = "red"; - dir = 4 - }, -/area/ruin/hotel/security) -"km" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/ruin/hotel/security) -"kn" = ( -/turf/open/floor/plasteel/darkyellow, -/area/ruin/hotel/security) -"ko" = ( -/obj/structure/chair/stool, -/turf/open/floor/plasteel, -/area/ruin/hotel/pool) -"kp" = ( -/obj/structure/chair/stool, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/ruin/hotel/pool) -"kq" = ( -/obj/machinery/suit_storage_unit/standard_unit, -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/turf/open/floor/plasteel/yellow/side{ - tag = "icon-yellow (SOUTHWEST)"; - icon_state = "yellow"; - dir = 10 - }, -/area/ruin/hotel/power) -"kr" = ( -/obj/machinery/power/smes/engineering, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/structure/sign/electricshock{ - pixel_y = -32 - }, -/turf/open/floor/plasteel/yellow/side, -/area/ruin/hotel/power) -"ks" = ( -/obj/machinery/power/smes/engineering, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/turf/open/floor/plasteel/yellow/side, -/area/ruin/hotel/power) -"kt" = ( -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/yellow/side, -/area/ruin/hotel/power) -"ku" = ( -/obj/machinery/power/solar_control, -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/cable/yellow{ - icon_state = "0-4"; - d2 = 4 - }, -/turf/open/floor/plasteel/yellow/side, -/area/ruin/hotel/power) -"kv" = ( -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/sign/vacuum{ - pixel_y = -32 - }, -/turf/open/floor/plasteel/yellow/side, -/area/ruin/hotel/power) -"kw" = ( -/obj/structure/cable/yellow{ - d1 = 2; - d2 = 8; - icon_state = "2-8"; - tag = "" - }, -/turf/open/floor/plasteel/yellow/side{ - tag = "icon-yellow (SOUTHEAST)"; - icon_state = "yellow"; - dir = 6 - }, -/area/ruin/hotel/power) -"kx" = ( -/turf/open/floor/plasteel/red/side{ - tag = "icon-red (WEST)"; - icon_state = "red"; - dir = 8 - }, -/area/ruin/hotel/security) -"ky" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel, -/area/ruin/hotel/security) -"kz" = ( -/obj/structure/table, -/obj/item/weapon/folder/red, -/obj/item/weapon/folder/blue, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/ruin/hotel/security) -"kA" = ( -/obj/structure/table, -/obj/item/weapon/storage/fancy/donut_box, -/turf/open/floor/plasteel, -/area/ruin/hotel/security) -"kB" = ( -/obj/machinery/door/window/brigdoor{ - base_state = "rightsecure"; - dir = 4; - icon_state = "rightsecure"; - name = "Cell Door"; - req_access = null; - req_access_txt = "203" - }, -/turf/open/floor/plasteel/red, -/area/ruin/hotel/security) -"kC" = ( -/obj/machinery/light/small{ - dir = 4 - }, -/turf/open/floor/plasteel/darkyellow, -/area/ruin/hotel/security) -"kD" = ( -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/ruin/hotel/pool) -"kE" = ( -/obj/structure/chair, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/ruin/hotel/pool) -"kF" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/wood, -/area/ruin/hotel/pool) -"kG" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel, -/area/ruin/hotel/pool) -"kH" = ( -/turf/closed/wall, -/area/ruin/hotel/power) -"kI" = ( -/obj/machinery/door/airlock/engineering{ - name = "Air Supply"; - req_access_txt = "200,201" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/ruin/hotel/power) -"kJ" = ( -/obj/machinery/door/airlock/glass_external, -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plating, -/area/ruin/hotel/power) -"kK" = ( -/obj/structure/table, -/obj/item/weapon/book/manual/wiki/security_space_law, -/turf/open/floor/plasteel/red/side{ - tag = "icon-red (WEST)"; - icon_state = "red"; - dir = 8 - }, -/area/ruin/hotel/security) -"kL" = ( -/obj/structure/table, -/obj/item/weapon/reagent_containers/food/drinks/coffee, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/ruin/hotel/security) -"kM" = ( -/obj/structure/table, -/obj/item/weapon/paper_bin, -/obj/item/weapon/pen, -/turf/open/floor/plasteel, -/area/ruin/hotel/security) -"kN" = ( -/obj/structure/chair{ - dir = 8 - }, -/turf/open/floor/plasteel/red/side{ - tag = "icon-red (EAST)"; - icon_state = "red"; - dir = 4 - }, -/area/ruin/hotel/security) -"kO" = ( -/turf/open/floor/plasteel/darkyellow, -/turf/open/floor/plasteel/warningline, -/area/ruin/hotel/security) -"kP" = ( -/turf/open/floor/plasteel/darkyellow, -/turf/open/floor/plasteel/warningline/corner{ - tag = "icon-warninglinecorners (WEST)"; - icon_state = "warninglinecorners"; - dir = 8 - }, -/area/ruin/hotel/security) -"kQ" = ( -/obj/machinery/light{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/ruin/hotel/pool) -"kR" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 5 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/ruin/hotel/pool) -"kS" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/ruin/hotel/pool) -"kT" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/plasteel, -/area/ruin/hotel/pool) -"kU" = ( -/obj/machinery/light{ - tag = "icon-tube1 (EAST)"; - icon_state = "tube1"; - dir = 4 - }, -/turf/open/floor/plasteel, -/area/ruin/hotel/pool) -"kV" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 6 - }, -/turf/open/floor/plating, -/area/ruin/hotel/power) -"kW" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 1 - }, -/turf/open/floor/plating, -/area/ruin/hotel/power) -"kX" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 1 - }, -/obj/structure/sign/atmosplaque{ - pixel_y = 32 - }, -/turf/open/floor/plating, -/area/ruin/hotel/power) -"kY" = ( -/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, -/turf/open/floor/plating, -/area/ruin/hotel/power) -"kZ" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 10 - }, -/turf/open/floor/plating, -/area/ruin/hotel/power) -"la" = ( -/obj/machinery/light/small{ - dir = 4 - }, -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plating, -/area/ruin/hotel/power) -"lb" = ( -/obj/structure/table, -/obj/machinery/recharger, -/obj/structure/sign/goldenplaque{ - pixel_x = -32 - }, -/turf/open/floor/plasteel/red/side{ - tag = "icon-red (WEST)"; - icon_state = "red"; - dir = 8 - }, -/area/ruin/hotel/security) -"lc" = ( -/obj/structure/table, -/obj/item/weapon/papercutter, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - external_pressure_bound = 101.325; - on = 1; - pressure_checks = 1 - }, -/turf/open/floor/plasteel, -/area/ruin/hotel/security) -"ld" = ( -/obj/structure/table, -/obj/item/weapon/storage/firstaid/regular, -/turf/open/floor/plasteel, -/area/ruin/hotel/security) -"le" = ( -/obj/structure/toilet{ - dir = 4 - }, -/turf/open/floor/plating, -/area/ruin/hotel/security) -"lf" = ( -/turf/open/floor/plasteel/darkyellow, -/turf/open/floor/plasteel/warningline{ - tag = "icon-warningline (WEST)"; - icon_state = "warningline"; - dir = 8 - }, -/area/ruin/hotel/security) -"lg" = ( -/obj/structure/bed, -/turf/open/floor/plasteel/darkyellow, -/area/ruin/hotel/security) -"lh" = ( -/obj/structure/chair{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/ruin/hotel/pool) -"li" = ( -/obj/effect/light_emitter, -/turf/open/floor/plating/beach/water{ - baseturf = /turf/open/space - }, -/area/ruin/hotel/pool) -"lj" = ( -/turf/open/floor/plating/beach/water{ - baseturf = /turf/open/space - }, -/area/ruin/hotel/pool) -"lk" = ( -/obj/structure/chair{ - dir = 8 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/ruin/hotel/pool) -"ll" = ( -/obj/structure/table, -/turf/open/floor/plasteel, -/area/ruin/hotel/pool) -"lm" = ( -/obj/machinery/shower{ - dir = 4 - }, -/turf/open/floor/plasteel/freezer, -/area/ruin/hotel/pool) -"ln" = ( -/obj/structure/mirror{ - pixel_y = 32 - }, -/obj/structure/sink{ - pixel_y = 24 - }, -/turf/open/floor/plasteel/freezer, -/area/ruin/hotel/pool) -"lo" = ( -/obj/structure/closet/athletic_mixed, -/turf/open/floor/plasteel/freezer, -/area/ruin/hotel/pool) -"lp" = ( -/obj/machinery/atmospherics/components/unary/tank/air{ - dir = 1 - }, -/turf/open/floor/plating, -/area/ruin/hotel/power) -"lq" = ( -/obj/machinery/light/small, -/obj/machinery/atmospherics/components/unary/tank/air{ - dir = 1 - }, -/turf/open/floor/plating, -/area/ruin/hotel/power) -"lr" = ( -/obj/structure/table, -/obj/item/weapon/restraints/handcuffs, -/obj/item/weapon/restraints/handcuffs, -/turf/open/floor/plasteel/red/side{ - tag = "icon-red (WEST)"; - icon_state = "red"; - dir = 8 - }, -/area/ruin/hotel/security) -"ls" = ( -/obj/structure/chair{ - tag = "icon-chair (NORTH)"; - icon_state = "chair"; - dir = 1 - }, -/turf/open/floor/plasteel, -/area/ruin/hotel/security) -"lt" = ( -/obj/structure/table, -/obj/item/toy/beach_ball, -/obj/item/clothing/glasses/sunglasses, -/turf/open/floor/plasteel, -/area/ruin/hotel/pool) -"lu" = ( -/turf/open/floor/plasteel/freezer, -/area/ruin/hotel/pool) -"lv" = ( -/obj/machinery/atmospherics/components/unary/outlet_injector/on{ - dir = 2 - }, -/turf/open/floor/plating/airless, -/area/ruin/unpowered/no_grav) -"lw" = ( -/turf/open/floor/plasteel/red/side{ - tag = "icon-red (SOUTHWEST)"; - icon_state = "red"; - dir = 10 - }, -/area/ruin/hotel/security) -"lx" = ( -/turf/open/floor/plasteel/red/side, -/area/ruin/hotel/security) -"ly" = ( -/turf/open/floor/plasteel/red/corner{ - tag = "icon-redcorner (WEST)"; - icon_state = "redcorner"; - dir = 8 - }, -/area/ruin/hotel/security) -"lz" = ( -/obj/machinery/light{ - tag = "icon-tube1 (EAST)"; - icon_state = "tube1"; - dir = 4 - }, -/turf/open/floor/plasteel/red/side{ - tag = "icon-red (EAST)"; - icon_state = "red"; - dir = 4 - }, -/area/ruin/hotel/security) -"lA" = ( -/obj/structure/closet, -/obj/item/weapon/dice/d1, -/obj/effect/decal/cleanable/cobweb{ - icon_state = "cobweb2" - }, -/turf/open/floor/plasteel/darkyellow, -/area/ruin/hotel/security) -"lB" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 5 - }, -/turf/open/floor/plating/airless, -/area/ruin/unpowered/no_grav) -"lC" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating/airless, -/area/ruin/unpowered/no_grav) -"lD" = ( -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating/airless, -/area/ruin/unpowered/no_grav) -"lE" = ( -/obj/structure/cable/yellow{ - d1 = 2; - d2 = 8; - icon_state = "2-8"; - tag = "" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 9 - }, -/turf/open/floor/plating/airless, -/area/ruin/unpowered/no_grav) -"lF" = ( -/obj/machinery/door/airlock/glass_security{ - name = "Hotel Security Checkpoint"; - req_access_txt = "203" - }, -/turf/open/floor/plasteel/darkred, -/area/ruin/hotel/security) -"lG" = ( -/obj/structure/window{ - tag = "icon-window (NORTH)"; - icon_state = "window"; - dir = 1 - }, -/obj/machinery/light{ - dir = 8 - }, -/turf/open/floor/plasteel/showroomfloor, -/area/ruin/hotel/pool) -"lH" = ( -/turf/open/floor/plasteel/showroomfloor, -/area/ruin/hotel/pool) -"lI" = ( -/obj/structure/closet/crate, -/obj/item/clothing/shoes/sandal, -/obj/item/clothing/shoes/sandal, -/obj/item/clothing/shoes/sandal, -/obj/item/clothing/shoes/sandal, -/obj/item/clothing/shoes/sandal, -/obj/item/clothing/shoes/sandal, -/obj/item/clothing/shoes/sandal, -/obj/item/clothing/shoes/sandal, -/obj/item/clothing/shoes/sandal, -/obj/item/clothing/shoes/sandal, -/obj/structure/window{ - tag = "icon-window (NORTH)"; - icon_state = "window"; - dir = 1 - }, -/turf/open/floor/plasteel/showroomfloor, -/area/ruin/hotel/pool) -"lJ" = ( -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/turf/open/floor/plating/airless, -/area/ruin/unpowered/no_grav) -"lK" = ( -/obj/effect/mob_spawn/human/hotel_staff/security, -/turf/open/floor/plasteel/darkred, -/area/ruin/hotel/security) -"lL" = ( -/turf/open/floor/plasteel/darkred, -/area/ruin/hotel/security) -"lM" = ( -/obj/machinery/door/airlock{ - name = "Men's Changing" - }, -/turf/open/floor/plasteel/showroomfloor, -/area/ruin/hotel/pool) -"lN" = ( -/obj/machinery/light/small{ - tag = "icon-bulb1 (WEST)"; - icon_state = "bulb1"; - dir = 8 - }, -/turf/open/floor/plasteel/darkred, -/area/ruin/hotel/security) -"lO" = ( -/obj/structure/mirror{ - pixel_x = 32 - }, -/turf/open/floor/plasteel/darkred, -/area/ruin/hotel/security) -"lP" = ( -/obj/item/weapon/bikehorn/rubberducky, -/turf/open/floor/plating/beach/water{ - baseturf = /turf/open/space - }, -/area/ruin/hotel/pool) -"lQ" = ( -/obj/structure/table, -/turf/open/floor/plasteel/showroomfloor, -/area/ruin/hotel/pool) -"lR" = ( -/obj/structure/dresser, -/turf/open/floor/plasteel/showroomfloor, -/area/ruin/hotel/pool) -"lS" = ( -/obj/structure/table, -/obj/item/weapon/card/id/away/hotel/securty, -/turf/open/floor/plasteel/darkred, -/area/ruin/hotel/security) -"lT" = ( -/obj/structure/closet/secure_closet/security{ - req_access = null; - req_access_txt = "203" - }, -/obj/item/weapon/gun/energy/laser/scatter/shotty, -/obj/item/clothing/head/helmet/justice, -/turf/open/floor/plasteel/darkred, -/area/ruin/hotel/security) -"lU" = ( -/turf/open/floor/plasteel/red/side{ - tag = "icon-red (SOUTHEAST)"; - icon_state = "red"; - dir = 6 - }, -/area/ruin/hotel/security) -"lV" = ( -/obj/machinery/power/solar, -/obj/structure/cable/yellow{ - icon_state = "0-4"; - d2 = 4 - }, -/turf/open/floor/plating/airless, -/area/ruin/unpowered/no_grav) -"lW" = ( -/obj/machinery/power/solar, -/obj/structure/cable/yellow{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/floor/plating/airless, -/area/ruin/unpowered/no_grav) -"lX" = ( -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/turf/open/floor/plating/airless, -/area/ruin/unpowered/no_grav) -"lY" = ( -/obj/machinery/power/solar, -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/cable/yellow{ - d2 = 8; - icon_state = "0-8" - }, -/turf/open/floor/plating/airless, -/area/ruin/unpowered/no_grav) -"lZ" = ( -/obj/machinery/power/solar, -/obj/structure/cable/yellow{ - d2 = 8; - icon_state = "0-8" - }, -/turf/open/floor/plating/airless, -/area/ruin/unpowered/no_grav) -"ma" = ( -/obj/structure/closet, -/turf/open/floor/plating, -/area/ruin/hotel) -"mb" = ( -/obj/structure/table, -/obj/item/weapon/lipstick, -/turf/open/floor/plasteel/showroomfloor, -/area/ruin/hotel/pool) -"mc" = ( -/obj/structure/mirror{ - pixel_y = 32 - }, -/obj/structure/sink{ - pixel_y = 24 - }, -/turf/open/floor/plasteel/showroomfloor, -/area/ruin/hotel/pool) -"md" = ( -/turf/closed/wall, -/area/ruin/hotel/custodial) -"me" = ( -/mob/living/simple_animal/bot/cleanbot, -/turf/open/floor/plasteel/neutral, -/area/ruin/hotel/custodial) -"mf" = ( -/obj/structure/reagent_dispensers/watertank, -/obj/machinery/light/small{ - tag = "icon-bulb1 (NORTH)"; - icon_state = "bulb1"; - dir = 1 - }, -/turf/open/floor/plasteel/neutral, -/area/ruin/hotel/custodial) -"mg" = ( -/obj/structure/janitorialcart, -/obj/item/weapon/mop, -/turf/open/floor/plasteel/neutral, -/area/ruin/hotel/custodial) -"mh" = ( -/obj/structure/closet/l3closet/janitor, -/turf/open/floor/plasteel/neutral, -/area/ruin/hotel/custodial) -"mi" = ( -/obj/structure/table, -/obj/item/weapon/reagent_containers/glass/bucket, -/obj/item/weapon/reagent_containers/spray/cleaner, -/turf/open/floor/plasteel/neutral, -/area/ruin/hotel/custodial) -"mj" = ( -/obj/structure/table, -/obj/item/weapon/grenade/chem_grenade/cleaner, -/obj/item/weapon/grenade/chem_grenade/cleaner, -/obj/item/weapon/grenade/chem_grenade/cleaner, -/turf/open/floor/plasteel/neutral, -/area/ruin/hotel/custodial) -"mk" = ( -/obj/structure/table, -/obj/machinery/light/small{ - tag = "icon-bulb1 (NORTH)"; - icon_state = "bulb1"; - dir = 1 - }, -/obj/item/device/lightreplacer, -/turf/open/floor/plasteel/neutral, -/area/ruin/hotel/custodial) -"ml" = ( -/turf/open/floor/plasteel/neutral, -/area/ruin/hotel/custodial) -"mm" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall, -/area/ruin/hotel/custodial) -"mn" = ( -/obj/machinery/door/airlock{ - name = "Women's Changing" - }, -/turf/open/floor/plasteel/showroomfloor, -/area/ruin/hotel/pool) -"mo" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/neutral, -/area/ruin/hotel/custodial) -"mp" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/ruin/hotel/custodial) -"mq" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/closed/wall, -/area/ruin/hotel/custodial) -"mr" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel, -/area/ruin/hotel/pool) -"ms" = ( -/obj/structure/window, -/obj/machinery/light{ - dir = 8 - }, -/turf/open/floor/plasteel/showroomfloor, -/area/ruin/hotel/pool) -"mt" = ( -/obj/structure/closet/crate, -/obj/item/clothing/shoes/sandal, -/obj/item/clothing/shoes/sandal, -/obj/item/clothing/shoes/sandal, -/obj/item/clothing/shoes/sandal, -/obj/item/clothing/shoes/sandal, -/obj/item/clothing/shoes/sandal, -/obj/item/clothing/shoes/sandal, -/obj/item/clothing/shoes/sandal, -/obj/item/clothing/shoes/sandal, -/obj/item/clothing/shoes/sandal, -/obj/structure/window, -/turf/open/floor/plasteel/showroomfloor, -/area/ruin/hotel/pool) -"mu" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/plasteel/neutral, -/area/ruin/hotel/custodial) -"mv" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/ruin/hotel/custodial) -"mw" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/ruin/hotel/custodial) -"mx" = ( -/obj/machinery/door/airlock{ - name = "Custodial Closet"; - req_access_txt = "200,201" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0; - tag = "" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/ruin/hotel/custodial) -"my" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/open/floor/plating, -/area/ruin/hotel) -"mz" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/ruin/hotel) -"mA" = ( -/obj/machinery/door/airlock/maintenance{ - name = "Hotel Maintenance"; - req_access_txt = "201" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/ruin/hotel/pool) -"mB" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/ruin/hotel/pool) -"mC" = ( -/obj/structure/chair{ - tag = "icon-chair (NORTH)"; - icon_state = "chair"; - dir = 1 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/ruin/hotel/pool) -"mD" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - tag = "icon-plant-25"; - icon_state = "plant-25" - }, -/turf/open/floor/plasteel/neutral, -/area/ruin/hotel/custodial) -"mE" = ( -/obj/structure/table, -/turf/open/floor/plasteel/neutral, -/area/ruin/hotel/custodial) -"mF" = ( -/obj/structure/chair/stool, -/turf/open/floor/plasteel/neutral, -/area/ruin/hotel/custodial) -"mG" = ( -/obj/machinery/light/small, -/turf/open/floor/plasteel/neutral, -/area/ruin/hotel/custodial) -"mH" = ( -/obj/structure/closet/crate/trashcart, -/turf/open/floor/plasteel/neutral, -/area/ruin/hotel/custodial) -"mI" = ( -/obj/structure/table, -/obj/item/weapon/storage/bag/trash, -/turf/open/floor/plasteel/neutral, -/area/ruin/hotel/custodial) -"mJ" = ( -/obj/machinery/power/apc{ - cell_type = 5000; - dir = 2; - name = "Custodial APC"; - pixel_y = -24 - }, -/obj/structure/cable, -/turf/open/floor/plasteel/neutral, -/area/ruin/hotel/custodial) -"mK" = ( -/obj/structure/closet/secure_closet/personal, -/turf/open/floor/plasteel, -/area/ruin/hotel/pool) -"mL" = ( -/obj/machinery/light, -/obj/structure/table, -/obj/item/toy/beach_ball, -/obj/item/clothing/glasses/sunglasses, -/turf/open/floor/plasteel, -/area/ruin/hotel/pool) -"mM" = ( -/obj/machinery/light, -/obj/structure/table, -/turf/open/floor/plasteel, -/area/ruin/hotel/pool) -"mN" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/firedoor, -/turf/open/floor/plating, -/area/ruin/hotel/pool) -"mO" = ( -/obj/machinery/power/tracker, -/obj/structure/cable/yellow, -/turf/open/floor/plating/airless, -/area/ruin/unpowered/no_grav) -"mV" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0; - tag = "" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/turf/open/floor/carpet, -/area/ruin/hotel) -"mU" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/turf/open/floor/carpet, -/area/ruin/hotel) -"mT" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8"; - tag = "" - }, -/turf/open/floor/carpet, -/area/ruin/hotel) -"mS" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0; - tag = "" - }, -/turf/open/floor/carpet, -/area/ruin/hotel) -"mR" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/turf/open/floor/carpet, -/area/ruin/hotel) -"mQ" = ( -/obj/machinery/door/airlock/centcom{ - name = "Hotel Staff Room"; - req_access_txt = "200" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/turf/open/floor/plasteel/black, -/area/ruin/hotel/workroom) -"mP" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8"; - tag = "" - }, -/turf/open/floor/plasteel/black, -/area/ruin/hotel/workroom) - -(1,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -"} -(2,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -"} -(3,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -"} -(4,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -aa -aa -aa -aa -aa -aa -aa -"} -(5,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -aa -ac -aa -aa -ac -aa -aa -ac -aa -aa -ac -aa -ab -aa -aa -aa -aa -aa -aa -"} -(6,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -aa -ac -aa -aa -lV -aa -aa -lV -aa -aa -lV -aa -aa -lV -aa -ab -aa -aa -aa -aa -aa -aa -"} -(7,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -aa -aa -aa -aa -aa -aa -aa -aa -ab -aa -aa -ac -aa -aa -lW -aa -aa -lW -aa -aa -lW -aa -aa -lW -aa -ab -aa -aa -aa -aa -aa -aa -"} -(8,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -aa -aa -aa -aa -ac -aa -aa -aa -aa -ac -aa -aa -aa -aa -ac -ab -ab -ab -ab -ab -ab -ab -ab -aa -lv -lB -ac -aa -aa -lW -aa -aa -lW -aa -aa -lW -aa -aa -lW -aa -ab -aa -aa -aa -aa -aa -aa -"} -(9,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -aa -af -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -ip -aa -aa -aa -aa -ac -aa -aa -aa -aa -aa -lC -ac -aa -aa -lW -aa -aa -lW -aa -aa -lW -aa -aa -lW -aa -ab -aa -aa -aa -aa -aa -aa -"} -(10,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -aa -aa -aa -aa -ac -aa -aa -aa -aa -aa -ac -aa -aa -aa -ac -ac -ag -ct -cH -cH -cH -cH -cH -cH -cH -he -cH -cH -cH -ia -iq -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -lD -ac -aa -aa -lW -aa -aa -lW -aa -aa -lW -aa -aa -lW -aa -aa -ab -aa -aa -aa -aa -aa -"} -(11,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -aa -af -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -al -cw -fd -cQ -cQ -cQ -gj -cQ -cQ -hf -cQ -cQ -hP -ib -ir -ir -ir -ir -ir -kb -ir -ir -ir -ir -ir -lE -lJ -aj -aj -lX -aj -aj -lX -aj -aj -lX -aj -aj -aj -mO -ac -ab -aa -aa -aa -aa -aa -"} -(12,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -aa -ag -am -am -am -am -am -am -ct -cH -cH -cH -cH -cH -cH -cH -cH -eH -cJ -fi -fi -fi -fi -fi -fi -hg -fi -fi -cJ -ic -is -iH -iR -ji -jA -kc -kq -kH -kV -lp -kH -aa -ag -aa -aa -lY -aa -aa -lY -aa -aa -lY -aa -aa -lY -aa -aa -ab -aa -aa -aa -aa -aa -"} -(13,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ac -ag -am -av -aw -bC -bL -ck -cu -cI -cQ -cQ -cQ -cQ -cQ -cQ -cQ -eI -fe -fi -fP -fY -gk -gk -gk -hh -ht -fi -hQ -id -it -iI -iI -jj -jB -kd -kr -kH -kW -lp -kH -aa -ag -aa -aa -lY -aa -aa -lY -aa -aa -lY -aa -aa -lY -aa -ab -aa -aa -aa -aa -aa -aa -"} -(14,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -aa -ag -am -aw -aw -aw -aw -aw -cv -cJ -aw -aw -bC -aw -ed -aw -aw -eJ -aw -fj -fQ -fQ -gl -gz -gz -hi -gz -hI -hR -ic -iu -iJ -iS -jk -iK -ke -ks -kH -kX -lq -kH -aa -ag -aa -aa -lY -aa -aa -lY -aa -aa -lY -aa -aa -lY -aa -ab -aa -aa -aa -aa -aa -aa -"} -(15,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -aa -ag -an -an -an -an -an -an -cw -cK -am -cZ -cZ -cZ -cZ -cZ -cZ -eJ -ck -fi -fR -fQ -gm -gA -fQ -hj -hu -fi -cJ -ic -iv -iJ -iS -jl -jC -kf -kt -kI -kY -lp -kH -aa -ag -aa -aa -lY -aa -aa -lY -aa -aa -lY -aa -aa -lY -aa -ab -aa -aa -aa -aa -aa -aa -"} -(16,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -aa -ag -an -ax -az -az -az -an -cx -cL -cF -cZ -dk -dH -dH -dH -cZ -eJ -ff -fi -fR -fQ -gn -gB -fQ -hk -hv -fi -cJ -ic -iw -iK -iK -iK -jD -iK -ku -kH -kZ -lp -kH -aa -ag -aa -aa -lZ -aa -aa -lZ -aa -aa -lZ -aa -aa -lZ -aa -ab -aa -aa -aa -aa -aa -aa -"} -(17,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -aa -ag -an -ay -be -be -az -an -cx -cL -cF -cZ -dl -dI -dI -dH -cZ -eJ -fg -fi -fS -fQ -fQ -fQ -fQ -fQ -fQ -fi -cJ -ic -ix -iL -iT -jm -jE -iK -kv -kH -kH -kH -kH -aa -ag -aa -aa -ac -aa -aa -ac -aa -aa -ac -aa -aa -ac -aa -ab -aa -aa -aa -aa -aa -aa -"} -(18,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -aa -ag -an -az -bf -az -bM -an -cx -cL -cF -cZ -dm -dH -ee -dH -cZ -eJ -aw -fi -fQ -fQ -fQ -fQ -fQ -gA -fQ -fi -cJ -ie -ir -ir -ir -jn -jF -kg -kw -kJ -la -kJ -aj -aj -al -aa -aa -ac -aa -aa -ac -aa -aa -ac -aa -aa -ab -ab -aa -aa -aa -aa -aa -aa -aa -"} -(19,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ac -ag -an -aA -an -an -an -an -cx -cL -cR -cZ -cZ -cZ -cZ -es -cZ -eK -fh -fi -fQ -fZ -go -gk -go -hl -hw -fi -hS -cQ -cQ -cQ -hP -jo -jG -jG -jG -jG -jG -jG -jG -jG -jG -jG -jG -jG -aa -aa -ac -aa -aa -ac -aa -ab -aa -aa -aa -aa -aa -aa -aa -aa -aa -"} -(20,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -aa -ag -an -aB -bg -bD -bN -an -cx -cL -cF -cZ -dn -dJ -ef -dM -cZ -aw -fi -fi -fT -fi -fi -fi -fi -fi -fi -fi -fi -fi -fi -fi -cJ -jo -jH -kh -kx -kK -lb -lr -lw -jG -lK -lN -lS -jG -md -md -md -md -md -ac -aa -ab -aa -aa -aa -aa -aa -aa -aa -aa -aa -"} -(21,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -aa -ag -ao -aB -bh -bE -bO -cl -cy -cM -cS -da -do -dK -eg -et -cZ -aw -fi -fw -fx -ga -ga -gC -gT -hm -ga -ga -hT -if -iy -fi -iU -jp -jI -ki -ky -kk -kk -kk -lx -lF -lL -lO -lT -jG -me -ml -ml -mD -md -ac -ac -ab -aa -aa -aa -aa -aa -aa -aa -aa -aa -"} -(22,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -aa -ag -ao -aC -bi -bi -bP -cm -cz -cN -cT -db -dp -dL -eh -dM -cZ -aw -fj -fx -fx -fx -fx -fx -gU -hn -hn -hn -hn -hn -hn -hI -iV -jq -jJ -kj -kz -kL -lc -ls -lx -jG -jG -jG -jG -jG -mf -ml -ml -mE -md -aa -aa -ab -aa -aa -aa -aa -aa -aa -aa -aa -aa -"} -(23,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -aa -ag -ao -aD -aB -aB -bQ -an -cx -cL -cF -cZ -dq -dM -dM -dM -cZ -eL -fi -fx -fx -gb -gp -gD -gV -fx -hx -hJ -gp -fx -fx -fi -cJ -jo -jK -kk -kA -kM -ld -kk -ly -kx -kx -kx -lw -jG -mg -ml -ml -mF -md -aa -aa -ab -aa -aa -aa -aa -aa -aa -aa -aa -aa -"} -(24,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -aa -ag -an -aE -bj -bj -bR -an -cx -cL -cF -cZ -dr -dN -dN -eu -cZ -aw -fi -fy -fx -gc -gq -gE -gV -fx -hy -hK -gp -fx -iz -fi -cJ -jo -jL -kl -kl -kN -kl -kl -lz -kl -kl -kl -lU -jG -mh -ml -mu -mG -md -aa -aa -ab -aa -aa -aa -aa -aa -aa -aa -aa -aa -"} -(25,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ac -ag -an -an -an -an -an -an -cx -cL -cU -cZ -cZ -cZ -cZ -cZ -cZ -aw -fi -fz -fx -fx -fx -fx -gV -fx -fx -fx -fx -fx -fx -fi -cJ -jo -jG -km -kB -km -jG -jG -jG -km -kB -km -jG -jG -mi -mo -mv -mH -md -aa -aa -ab -aa -aa -aa -aa -aa -aa -aa -aa -aa -"} -(26,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -aa -ag -ap -aF -aH -aH -aH -ap -cx -cL -cF -dc -ds -dO -dO -dO -dc -aw -fi -fA -fx -fA -fA -fA -gW -ho -hz -hz -hU -hU -iA -hU -iW -jr -jM -kn -kn -kO -le -jG -jM -kn -kn -kO -le -jG -mj -mp -mv -mI -md -ac -ac -ab -aa -aa -aa -aa -aa -aa -aa -aa -aa -"} -(27,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -aa -ag -ap -aG -bk -bk -aH -ap -cx -cL -cR -dc -dt -dP -dP -dO -dc -aw -fi -fB -fG -fH -gr -fG -gr -fG -gr -fG -hV -ig -ih -fi -cJ -jo -jN -kn -kn -kP -lf -jG -jN -kn -kn -kP -lf -jG -mk -mp -mv -ml -md -aa -aa -ab -aa -aa -aa -aa -aa -aa -aa -aa -aa -"} -(28,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -aa -ag -ap -aH -bl -aH -bS -ap -cx -cL -cF -dc -du -dO -ei -dO -dc -aw -fi -fC -fG -fU -fG -fG -gX -fG -gX -fG -hW -ih -ih -fi -cJ -jo -jO -kn -kC -kn -lg -jG -lA -kn -kC -kn -lg -jG -ml -mp -mw -mJ -md -aa -aa -aa -ab -aa -aa -aa -aa -aa -aa -aa -aa -"} -(29,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ac -ag -ap -aI -ap -ap -ap -ap -cx -cL -cF -dc -dc -dc -dc -ev -dc -aw -fi -fD -fG -fH -gr -fG -gY -fG -gY -fG -hW -ih -ih -fi -cJ -jp -jP -jP -jP -jP -jP -jP -jP -jP -jP -jP -jP -jP -mm -mq -mx -md -md -am -aa -aa -ab -aa -aa -aa -aa -aa -aa -aa -aa -"} -(30,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -aa -ag -ap -aJ -bm -bF -bT -ap -cx -cL -cF -dc -dv -dQ -ej -dT -dc -aw -fi -fE -fG -fH -fG -fG -gZ -fG -gZ -fG -hW -ih -iB -fi -cJ -js -ck -bL -aw -aw -aw -ed -aw -aw -aw -aw -cI -cQ -cQ -hf -my -aw -aw -am -aa -aa -ab -aa -aa -aa -aa -aa -aa -aa -aa -"} -(31,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -aa -ag -aq -aJ -bn -bG -bU -cn -cy -cM -cS -dd -dw -dR -ek -ew -dc -aw -fi -fF -fG -gd -gr -fG -gX -fG -gX -fG -hW -ih -ih -fi -iX -hf -cQ -cQ -cQ -cQ -cQ -cQ -cQ -cQ -cQ -cQ -fe -ma -ck -cv -mz -ed -fg -am -aa -aa -ab -aa -aa -aa -aa -aa -aa -aa -aa -"} -(32,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -aa -ag -aq -aK -bo -bo -bV -co -cA -cN -cV -de -dx -dS -el -dT -dc -aw -fj -fG -fG -fH -fG -fG -gY -fG -gY -fG -hX -ih -ih -fi -cJ -jt -jQ -jQ -jQ -jQ -jQ -jQ -jQ -jQ -jQ -jQ -jQ -jQ -jQ -jt -mA -jQ -jQ -jQ -aa -aa -ab -aa -aa -aa -aa -aa -aa -aa -aa -"} -(33,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -aa -ag -aq -aL -aJ -aJ -bW -ap -cx -cL -cF -dc -dy -dT -dT -dT -dc -aw -fi -fH -fU -fH -gr -fG -gZ -fG -gZ -fG -hY -ii -ii -fi -cJ -jt -jR -jR -jR -kQ -jR -jR -jR -jR -jR -kQ -jR -jR -jR -mr -mB -kQ -jR -jQ -aa -aa -ab -aa -aa -aa -aa -aa -aa -aa -aa -"} -(34,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -aa -ag -ap -aM -bp -bp -bX -ap -cx -cL -cF -dc -dz -dU -dU -ex -dc -eM -ct -fI -cF -cF -cF -cF -cF -cF -cF -cF -cF -cF -eT -am -cJ -jt -jS -ko -jR -jR -jR -jR -jR -jR -jR -jR -jR -jR -jR -jR -kT -jR -mK -jQ -ac -ac -ab -aa -aa -aa -aa -aa -aa -aa -aa -"} -(35,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ac -ag -ap -ap -ap -ap -ap -ap -cx -cL -cR -dc -dc -dc -dc -dc -dc -eN -cw -fJ -cF -cF -cF -cF -cF -hp -cF -cF -cF -cF -eT -am -cJ -jt -jS -ko -kD -kD -lh -lh -lh -kD -kD -kD -lh -lh -lh -kD -kD -jR -mK -mN -aa -aa -ab -aa -aa -aa -aa -aa -aa -aa -aa -"} -(36,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -aa -ag -ar -aN -aP -aP -aP -ar -cx -cL -cF -df -cF -cF -em -cF -df -cF -cx -fK -cF -cF -di -di -di -di -di -di -cF -cF -iC -am -iY -jt -jS -ko -kD -kD -kD -kD -kD -kD -kD -kD -kD -kD -kD -kD -kD -jR -mK -mN -aa -aa -ab -aa -aa -aa -aa -aa -aa -aa -aa -"} -(37,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -aa -ag -ar -aO -bq -bq -aP -ar -cx -cL -cF -am -cF -cF -cF -cF -am -cF -cx -fK -cF -cR -di -gF -ha -hq -hA -di -cF -cF -eT -am -iZ -jt -jR -jR -kE -kD -li -lj -lj -lj -lj -lj -lj -lj -li -kD -mC -jR -mK -mN -aa -aa -ab -aa -aa -aa -aa -aa -aa -aa -aa -"} -(38,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -aa -ag -ar -aP -br -aP -bY -ar -cx -cO -cW -dg -cW -cW -cW -cW -dg -cW -fk -fL -cF -cF -gs -gG -gG -gG -mP -mQ -mR -cF -eT -am -cJ -jt -jT -jR -kE -kD -lj -lj -lj -lj -lj -lj -lj -lj -lj -kD -mC -jR -mK -mN -aa -aa -ab -aa -aa -aa -aa -aa -aa -aa -aa -"} -(39,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ac -ag -ar -aQ -ar -ar -ar -ar -cB -cN -cX -dh -dh -dh -dh -dh -dh -eO -fl -fM -cF -ge -di -gH -gG -gG -hB -di -mS -cF -eT -am -cJ -jt -jU -jR -kE -kD -lj -lj -lj -lj -lj -lj -lj -lj -lj -kD -mC -jR -mL -jQ -aa -aa -ab -aa -aa -aa -aa -aa -aa -aa -aa -"} -(40,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -aa -ag -ar -aR -bs -bH -bZ -ar -cx -cL -cF -di -dA -dV -en -ey -di -eP -fm -fM -cF -cF -di -gI -gG -gG -hC -di -mS -cF -eT -am -cK -jt -jR -jR -kD -kD -lj -lj -lj -lj -lj -lj -lj -lj -lj -kD -kD -jR -ll -jQ -ac -ac -ab -aa -aa -aa -aa -aa -aa -aa -aa -"} -(41,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -aa -ag -as -aR -bt -bI -ca -cp -cy -cM -cS -dj -dB -dW -eo -ey -di -eQ -fn -fM -cF -cF -di -gJ -gG -gG -hD -di -mS -cF -eT -iM -ja -jt -jV -jY -jY -kD -lj -lj -lj -lj -lj -lP -lj -lj -lj -kD -kD -jR -mK -mN -aa -aa -ab -aa -aa -aa -aa -aa -aa -aa -aa -"} -(42,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -aa -ag -as -aS -bu -bu -cb -cq -cC -cN -cY -dh -dC -dX -ep -ey -di -eQ -fn -fM -cF -cF -di -gK -gG -gG -hE -di -mT -mU -mU -mU -mV -ju -jW -jW -jY -kD -lj -lj -lj -lj -lj -lj -lj -lj -lj -kD -mC -jR -mK -mN -aa -aa -ab -aa -aa -aa -aa -aa -aa -aa -aa -"} -(43,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -aa -ag -as -aT -aR -aR -cc -ar -cx -cL -cF -di -dD -dY -ep -ez -di -eR -fo -fM -cF -cF -di -gL -gG -gG -hF -di -cF -cF -cF -cF -cL -jv -jW -jW -jY -kD -lj -lj -lj -lj -li -lj -lj -lj -lj -kD -mC -jR -mK -mN -aa -aa -ab -aa -aa -aa -aa -aa -aa -aa -aa -"} -(44,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -aa -ag -ar -aU -bv -bv -cd -ar -cx -cL -cF -di -dE -dZ -eq -eA -di -eS -fm -fM -cF -cF -di -gM -gG -gG -hG -di -cF -ij -iD -cW -jb -jw -jX -jX -kF -kR -lj -lj -lj -lj -lj -lj -lj -lj -lj -kD -mC -jR -mK -mN -aa -aa -ab -aa -aa -aa -aa -aa -aa -aa -aa -"} -(45,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ac -ag -ar -ar -ar -ar -ar -ar -cx -cL -cF -di -di -ea -ep -dV -di -eT -fp -fN -fV -cF -di -gM -gG -gG -hH -di -hZ -ik -iE -iN -jc -jx -jY -jY -jY -kS -lj -lj -lj -lj -lj -lj -lj -lj -lj -kD -kD -jR -mK -mN -aa -aa -ab -aa -aa -aa -aa -aa -aa -aa -aa -"} -(46,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -aa -ag -at -aV -aX -aX -aX -at -cD -cL -cF -di -dF -ea -ep -dF -di -eU -fq -am -fK -cF -di -gM -gG -gG -hH -di -cF -cL -am -iO -jd -jt -jZ -jR -kD -kS -lj -lj -lj -lj -lj -lj -lj -lj -lj -kD -kD -jR -ll -jQ -ac -ac -ab -aa -aa -aa -aa -aa -aa -aa -aa -"} -(47,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -aa -ag -at -aW -bw -bw -aX -at -cx -cL -cF -di -dG -ea -er -dG -di -eG -fr -eG -fW -gf -di -di -gs -gs -di -di -gf -il -eG -eG -eG -jt -jU -jR -kE -kS -lj -lj -lj -lj -lj -lj -lj -lj -lj -kD -mC -jR -mM -jQ -aa -aa -ab -aa -aa -aa -aa -aa -aa -aa -aa -"} -(48,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -aa -ag -at -aX -bx -aX -ce -at -cx -cL -cF -di -dF -eb -dV -dF -di -eV -fs -fO -fX -fu -gt -gN -hb -hb -gN -hL -fu -im -iF -iP -je -jt -jR -jR -kE -kS -lj -lj -lj -lj -lj -lj -lj -lj -lj -kD -mC -jR -mK -mN -aa -aa -ab -aa -aa -aa -aa -aa -aa -aa -aa -"} -(49,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ac -ag -at -aY -at -at -at -at -cx -cL -cF -di -di -di -dV -dV -di -eW -ft -fu -fu -fu -gu -gO -hb -hb -gO -hM -fu -in -fu -eW -eW -jt -jR -jR -kE -kS -li -lj -lj -lj -lj -lj -lj -lj -li -kD -mC -jR -mK -mN -aa -aa -ab -aa -aa -aa -aa -aa -aa -aa -aa -"} -(50,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -aa -ag -at -aZ -by -bJ -cf -at -cx -cL -cR -am -ac -di -dV -eB -di -eX -fu -fu -fu -fu -gv -gP -hc -hc -gP -hN -fu -in -fu -fu -eX -jt -jS -ko -kD -kS -kD -kD -kD -kD -kD -kD -kD -kD -kD -kD -kD -jR -mK -mN -aa -aa -ab -aa -aa -aa -aa -aa -aa -aa -aa -"} -(51,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -aa -aa -ag -au -aZ -bz -bK -cg -cr -cy -cP -cF -cG -ac -ec -dV -eC -di -eY -fu -fu -fu -fu -fu -fu -fu -fu -fu -fu -fu -in -fu -fu -eY -jt -jS -ko -kD -kS -lk -lk -lk -kD -kD -kD -lk -lk -lk -kD -kD -jR -mK -mN -aa -aa -ab -aa -aa -aa -aa -aa -aa -aa -aa -"} -(52,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ac -aa -ag -au -ba -bA -bA -ch -cs -cE -cF -cF -cG -ac -ec -dV -eD -di -eZ -fu -fu -fu -gg -eW -eW -eW -eW -eW -eW -gg -in -fu -fu -eZ -jy -ka -kp -kG -kT -jR -jR -jR -jR -jR -jR -jR -jR -jR -jR -jR -jR -mK -jQ -ac -ac -ab -aa -aa -aa -aa -aa -aa -aa -aa -"} -(53,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -aa -ac -ac -ag -au -bb -aZ -aZ -ci -at -cF -cF -cF -cG -ac -ec -dV -eE -di -eW -fu -fu -fu -gh -eW -gw -gw -gw -gw -eW -gh -in -fu -fu -eW -jt -jR -jR -jR -kU -ll -lt -ll -jR -jR -kU -jR -jR -jR -jR -jR -kU -jR -jQ -aa -aa -ab -aa -aa -aa -aa -aa -aa -aa -aa -"} -(54,1,1) = {" -aa -aa -aa -aa -ab -ab -ab -ab -aa -aa -aa -aa -aa -ag -at -bc -bB -bB -cj -at -cF -cF -cF -am -ac -di -dV -eF -di -fa -fu -fu -fu -eG -gw -gQ -gw -gw -gw -gw -eG -in -fu -fu -eW -jt -jQ -jQ -jQ -jQ -jQ -jQ -jQ -jQ -lM -jQ -jQ -jQ -mn -jQ -jQ -jQ -jQ -jQ -aa -aa -ab -aa -aa -aa -aa -aa -aa -aa -aa -"} -(55,1,1) = {" -aa -aa -aa -ab -aa -aa -aa -ac -aa -aa -af -aj -aj -al -at -at -at -at -at -at -cG -cG -cG -am -ac -di -di -di -di -fb -fu -fu -fu -eG -gx -gR -gw -hr -gw -hO -eG -in -fu -fu -jf -fr -aa -aa -aa -jQ -lm -lm -lm -lG -lH -lQ -jQ -mb -lH -ms -lm -lm -lm -jQ -aa -aa -ab -aa -aa -aa -aa -aa -aa -aa -aa -"} -(56,1,1) = {" -aa -aa -ab -aa -aa -aa -aa -ac -aa -aa -ag -aa -aa -aa -aa -aa -aa -aa -ac -aa -aa -aa -aa -ac -aa -aa -aa -aa -eG -fc -fu -fu -fu -eG -gw -gS -gw -gw -gw -gw -eG -in -fu -fu -eW -fr -aa -aa -aa -jQ -ln -lu -lu -lH -lH -lH -jQ -mc -lH -lH -lu -lu -lu -jQ -aa -aa -ab -aa -aa -aa -aa -aa -aa -aa -aa -"} -(57,1,1) = {" -aa -aa -ab -ac -ac -ad -ae -ae -ae -ae -ah -ak -ak -ak -ak -bd -aa -aa -ac -aa -aa -aa -aa -ac -aa -aa -aa -aa -eG -eX -fu -fu -fu -gh -eW -gw -gw -gw -gw -eW -gh -in -fu -fu -eX -fr -aa -aa -aa -jQ -ln -lu -lu -lH -lH -lH -jQ -mc -lH -lH -lu -lu -lu -jQ -aa -aa -ab -aa -aa -aa -aa -aa -aa -aa -aa -"} -(58,1,1) = {" -aa -aa -ab -aa -aa -aa -aa -aa -aa -aa -ag -aa -aa -aa -aa -aa -aa -aa -ac -ab -ab -ab -ab -ab -ab -aa -aa -aa -eG -eY -fu -fu -fu -gg -eW -eW -eW -eW -eW -eW -gg -in -fu -fu -eY -fr -aa -aa -aa -jQ -lo -lo -lo -lI -lH -lR -jQ -lR -lH -mt -lo -lo -lo -jQ -aa -aa -ab -aa -aa -aa -aa -aa -aa -aa -aa -"} -(59,1,1) = {" -aa -aa -ab -aa -aa -aa -aa -aa -aa -aa -ag -aa -aa -aa -aa -aa -aa -aa -ab -aa -aa -aa -aa -aa -aa -ab -aa -aa -eG -eZ -fu -fu -fu -fu -fu -fu -fu -fu -fu -fu -fu -in -fu -fu -jg -jz -aa -aa -aa -jQ -jQ -jQ -jQ -jQ -jQ -jQ -jQ -jQ -jQ -jQ -jQ -jQ -jQ -jQ -ac -ac -ab -aa -aa -aa -aa -aa -aa -aa -aa -"} -(60,1,1) = {" -aa -aa -ab -ac -ac -ad -ae -ae -ae -ae -ah -ak -ak -ak -ak -bd -ac -ac -ab -aa -aa -aa -aa -aa -aa -ab -aa -aa -eG -eW -eW -fu -fu -gi -gy -gy -hd -hs -gy -gy -gi -io -iG -iQ -jh -eG -aa -aa -aa -ac -aa -aa -aa -aa -ac -aa -aa -aa -aa -aa -ac -aa -aa -aa -aa -aa -ab -aa -aa -aa -aa -aa -aa -aa -aa -"} -(61,1,1) = {" -aa -aa -ab -aa -aa -aa -aa -aa -aa -aa -ag -aa -aa -aa -aa -aa -aa -aa -ab -aa -aa -aa -aa -aa -aa -ab -ac -ac -eG -eG -fv -fv -fv -eG -fv -fv -fv -fv -fv -fv -eG -fv -fv -fv -eG -eG -aa -aa -aa -ac -aa -aa -aa -aa -ac -aa -aa -aa -aa -aa -ac -aa -aa -aa -aa -aa -ab -aa -aa -aa -aa -aa -aa -aa -aa -"} -(62,1,1) = {" -aa -aa -ab -aa -aa -aa -aa -aa -aa -aa -ag -aa -aa -aa -aa -aa -aa -aa -ab -aa -aa -aa -aa -aa -aa -ab -aa -aa -aa -aa -aa -aa -aa -ac -aa -aa -aa -aa -aa -aa -ac -aa -aa -aa -aa -aa -aa -aa -aa -ac -aa -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -aa -aa -aa -aa -aa -aa -aa -aa -aa -"} -(63,1,1) = {" -aa -aa -ab -ac -ac -ad -ae -ae -ae -ae -ah -ak -ak -ak -ak -bd -ac -ac -ab -aa -aa -aa -aa -aa -aa -ab -aa -aa -aa -aa -aa -aa -aa -ac -aa -aa -aa -aa -aa -aa -ac -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -"} -(64,1,1) = {" -aa -aa -ab -aa -aa -aa -aa -aa -aa -aa -ag -aa -aa -aa -aa -aa -aa -aa -ab -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -"} -(65,1,1) = {" -aa -aa -ab -aa -aa -aa -aa -aa -aa -aa -ag -aa -aa -aa -aa -aa -aa -aa -ab -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -"} -(66,1,1) = {" -aa -aa -ab -ac -ac -ad -ae -ae -ae -ae -ah -ak -ak -ak -ak -bd -ac -ac -ab -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -"} -(67,1,1) = {" -aa -aa -ab -aa -aa -aa -aa -aa -aa -aa -ai -aa -aa -aa -aa -aa -aa -aa -ab -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -"} -(68,1,1) = {" -aa -aa -aa -ab -aa -aa -aa -aa -aa -aa -ac -aa -aa -aa -aa -aa -aa -ab -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -"} -(69,1,1) = {" -aa -aa -aa -aa -ab -ab -ab -ab -ab -ab -ac -ab -ab -ab -ab -ab -ab -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -"} -(70,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -"} -(71,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -"} -(72,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -"} -(73,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -"} -(74,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -"} -(75,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -"} diff --git a/_maps/RandomRuins/SpaceRuins/turretedoutpost.dmm b/_maps/RandomRuins/SpaceRuins/turretedoutpost.dmm index fad402920b..d4f3ce9c1f 100644 --- a/_maps/RandomRuins/SpaceRuins/turretedoutpost.dmm +++ b/_maps/RandomRuins/SpaceRuins/turretedoutpost.dmm @@ -1,51 +1,51 @@ "a" = (/turf/open/space,/area/space) "b" = (/obj/structure/lattice,/turf/open/space,/area/space) -"c" = (/obj/structure/grille,/turf/open/floor/plating,/area/ruin/turretedoutpost) -"d" = (/turf/closed/wall/r_wall,/area/ruin/turretedoutpost) -"e" = (/obj/structure/table/reinforced,/obj/item/weapon/stock_parts/cell/hyper,/turf/open/floor/plasteel,/area/ruin/turretedoutpost) -"f" = (/obj/structure/frame/computer,/turf/open/floor/plasteel,/area/ruin/turretedoutpost) -"g" = (/turf/open/floor/plasteel,/area/ruin/turretedoutpost) -"h" = (/obj/machinery/light{dir = 1},/turf/open/floor/plasteel,/area/ruin/turretedoutpost) -"i" = (/obj/machinery/door/airlock/external,/turf/open/floor/plating,/area/ruin/turretedoutpost) -"j" = (/obj/machinery/light{dir = 1},/turf/open/floor/plating,/area/ruin/turretedoutpost) -"k" = (/turf/open/floor/plating,/area/ruin/turretedoutpost) -"l" = (/turf/open/floor/plating/airless,/area/ruin/turretedoutpost) -"m" = (/obj/structure/table/reinforced,/obj/item/weapon/folder,/obj/item/device/radio,/turf/open/floor/plasteel,/area/ruin/turretedoutpost) -"n" = (/obj/structure/chair/office/dark{dir = 8},/turf/open/floor/plasteel,/area/ruin/turretedoutpost) -"o" = (/obj/machinery/porta_turret,/turf/open/floor/plating/airless,/area/ruin/turretedoutpost) -"p" = (/obj/structure/filingcabinet,/turf/open/floor/plasteel,/area/ruin/turretedoutpost) -"q" = (/obj/machinery/light,/turf/open/floor/plasteel,/area/ruin/turretedoutpost) -"r" = (/obj/machinery/power/apc{dir = 0;name = "Worn-out APC";pixel_y = -24},/turf/open/floor/plasteel,/area/ruin/turretedoutpost) -"s" = (/obj/structure/rack,/turf/open/floor/plasteel{icon_state = "vault";dir = 8},/area/ruin/turretedoutpost) -"t" = (/obj/item/weapon/rack_parts,/turf/open/floor/plasteel{icon_state = "vault";dir = 8},/area/ruin/turretedoutpost) -"u" = (/obj/item/weapon/rack_parts,/obj/machinery/light{dir = 1},/turf/open/floor/plasteel{icon_state = "vault";dir = 8},/area/ruin/turretedoutpost) -"v" = (/obj/structure/rack,/obj/item/device/firing_pin,/turf/open/floor/plasteel{icon_state = "vault";dir = 8},/area/ruin/turretedoutpost) -"w" = (/obj/machinery/door/airlock/glass,/turf/open/floor/plasteel,/area/ruin/turretedoutpost) -"x" = (/obj/machinery/door/airlock,/turf/open/floor/plasteel,/area/ruin/turretedoutpost) -"y" = (/turf/open/floor/plasteel{icon_state = "dark"},/area/ruin/turretedoutpost) -"z" = (/obj/structure/tank_dispenser/oxygen,/turf/open/floor/plasteel{icon_state = "dark"},/area/ruin/turretedoutpost) -"A" = (/obj/structure/table/reinforced,/obj/item/clothing/head/ushanka,/turf/open/floor/plasteel{dir = 4;icon_state = "darkredfull"},/area/ruin/turretedoutpost) -"B" = (/obj/structure/table/reinforced,/obj/structure/reagent_dispensers/peppertank{pixel_y = 32},/turf/open/floor/plasteel,/area/ruin/turretedoutpost) -"C" = (/obj/structure/table/reinforced,/obj/item/weapon/clipboard,/obj/machinery/light{dir = 1},/obj/item/device/radio,/turf/open/floor/plasteel,/area/ruin/turretedoutpost) -"D" = (/obj/machinery/vending/clothing,/turf/open/floor/plasteel,/area/ruin/turretedoutpost) -"E" = (/obj/structure/rack,/obj/item/ammo_box/c9mm,/turf/open/floor/plasteel{icon_state = "vault";dir = 8},/area/ruin/turretedoutpost) -"F" = (/obj/machinery/door/airlock/glass,/turf/open/floor/plasteel{icon_state = "dark"},/area/ruin/turretedoutpost) -"G" = (/turf/open/floor/plasteel{dir = 4;icon_state = "darkredfull"},/area/ruin/turretedoutpost) -"H" = (/obj/structure/bed,/obj/item/weapon/bedsheet/orange,/obj/machinery/light{dir = 4;icon_state = "tube1"},/turf/open/floor/plasteel,/area/ruin/turretedoutpost) -"I" = (/obj/structure/rack,/obj/item/clothing/head/helmet/swat,/turf/open/floor/plasteel{icon_state = "vault";dir = 8},/area/ruin/turretedoutpost) -"J" = (/obj/structure/rack,/obj/item/weapon/crowbar/red,/obj/item/weapon/paper/crumpled,/turf/open/floor/plasteel{icon_state = "vault";dir = 8},/area/ruin/turretedoutpost) -"K" = (/obj/structure/chair/office/dark,/turf/open/floor/plasteel,/area/ruin/turretedoutpost) -"L" = (/obj/structure/chair/comfy/beige{dir = 4},/turf/open/floor/plasteel,/area/ruin/turretedoutpost) -"M" = (/obj/structure/bed,/obj/item/weapon/bedsheet/orange,/turf/open/floor/plasteel,/area/ruin/turretedoutpost) -"N" = (/obj/structure/rack,/obj/item/weapon/grenade/chem_grenade/teargas,/turf/open/floor/plasteel{icon_state = "dark"},/area/ruin/turretedoutpost) -"O" = (/obj/structure/table/reinforced,/obj/item/weapon/paper/crumpled,/turf/open/floor/plasteel{dir = 4;icon_state = "darkredfull"},/area/ruin/turretedoutpost) -"P" = (/obj/structure/table/reinforced,/obj/machinery/light,/obj/item/device/camera_bug,/turf/open/floor/plasteel,/area/ruin/turretedoutpost) -"Q" = (/obj/structure/table/reinforced,/obj/item/weapon/paper_bin,/turf/open/floor/plasteel,/area/ruin/turretedoutpost) -"R" = (/obj/structure/table/reinforced,/obj/item/weapon/pen/blue,/turf/open/floor/plasteel,/area/ruin/turretedoutpost) -"S" = (/obj/structure/table/wood,/obj/item/weapon/reagent_containers/food/drinks/bottle/vodka{pixel_x = -4;pixel_y = 4},/obj/item/weapon/reagent_containers/food/drinks/bottle/vodka/badminka{pixel_x = 3},/turf/open/floor/plasteel,/area/ruin/turretedoutpost) -"T" = (/obj/structure/rack,/obj/item/weapon/storage/belt/military,/obj/machinery/light,/turf/open/floor/plasteel{icon_state = "vault";dir = 8},/area/ruin/turretedoutpost) -"U" = (/obj/structure/rack,/obj/item/clothing/head/helmet/riot,/turf/open/floor/plasteel{icon_state = "vault";dir = 8},/area/ruin/turretedoutpost) -"V" = (/obj/structure/table/wood,/obj/item/weapon/reagent_containers/food/snacks/breadslice/meat,/obj/machinery/light{icon_state = "tube1";dir = 8},/turf/open/floor/plasteel,/area/ruin/turretedoutpost) +"c" = (/obj/structure/grille,/turf/open/floor/plating/airless,/area/ruin/unpowered) +"d" = (/turf/closed/wall/r_wall,/area/ruin/unpowered) +"e" = (/obj/structure/table/reinforced,/obj/item/weapon/stock_parts/cell/hyper,/turf/open/floor/plasteel,/area/ruin/unpowered) +"f" = (/obj/structure/frame/computer,/turf/open/floor/plasteel,/area/ruin/unpowered) +"g" = (/turf/open/floor/plasteel,/area/ruin/unpowered) +"h" = (/obj/machinery/light{dir = 1},/turf/open/floor/plasteel,/area/ruin/unpowered) +"i" = (/obj/machinery/door/airlock/external,/turf/open/floor/plating,/area/ruin/unpowered) +"j" = (/obj/machinery/light{dir = 1},/turf/open/floor/plating,/area/ruin/unpowered) +"k" = (/turf/open/floor/plating,/area/ruin/unpowered) +"l" = (/turf/open/floor/plating/airless,/area/ruin/unpowered) +"m" = (/obj/structure/table/reinforced,/obj/item/weapon/folder,/obj/item/device/radio,/turf/open/floor/plasteel,/area/ruin/unpowered) +"n" = (/obj/structure/chair/office/dark{dir = 8},/turf/open/floor/plasteel,/area/ruin/unpowered) +"o" = (/obj/machinery/porta_turret,/turf/open/floor/plating/airless,/area/ruin/unpowered) +"p" = (/obj/structure/filingcabinet,/turf/open/floor/plasteel,/area/ruin/unpowered) +"q" = (/obj/machinery/light,/turf/open/floor/plasteel,/area/ruin/unpowered) +"r" = (/obj/machinery/power/apc{dir = 0; name = "Worn-out APC"; pixel_y = -24},/turf/open/floor/plasteel,/area/ruin/unpowered) +"s" = (/obj/structure/rack,/turf/open/floor/plasteel{icon_state = "vault"; dir = 8},/area/ruin/unpowered) +"t" = (/obj/item/weapon/rack_parts,/turf/open/floor/plasteel{icon_state = "vault"; dir = 8},/area/ruin/unpowered) +"u" = (/obj/item/weapon/rack_parts,/obj/machinery/light{dir = 1},/turf/open/floor/plasteel{icon_state = "vault"; dir = 8},/area/ruin/unpowered) +"v" = (/obj/structure/rack,/obj/item/device/firing_pin,/turf/open/floor/plasteel{icon_state = "vault"; dir = 8},/area/ruin/unpowered) +"w" = (/obj/machinery/door/airlock/glass,/turf/open/floor/plasteel,/area/ruin/unpowered) +"x" = (/obj/machinery/door/airlock,/turf/open/floor/plasteel,/area/ruin/unpowered) +"y" = (/turf/open/floor/plasteel{icon_state = "dark"},/area/ruin/unpowered) +"z" = (/obj/structure/tank_dispenser/oxygen,/turf/open/floor/plasteel{icon_state = "dark"},/area/ruin/unpowered) +"A" = (/obj/structure/table/reinforced,/obj/item/clothing/head/ushanka,/turf/open/floor/plasteel{dir = 4; icon_state = "darkredfull"},/area/ruin/unpowered) +"B" = (/obj/structure/table/reinforced,/obj/structure/reagent_dispensers/peppertank{pixel_y = 32},/turf/open/floor/plasteel,/area/ruin/unpowered) +"C" = (/obj/structure/table/reinforced,/obj/item/weapon/clipboard,/obj/machinery/light{dir = 1},/obj/item/device/radio,/turf/open/floor/plasteel,/area/ruin/unpowered) +"D" = (/obj/machinery/vending/clothing,/turf/open/floor/plasteel,/area/ruin/unpowered) +"E" = (/obj/structure/rack,/obj/item/ammo_box/c9mm,/turf/open/floor/plasteel{icon_state = "vault"; dir = 8},/area/ruin/unpowered) +"F" = (/obj/machinery/door/airlock/glass,/turf/open/floor/plasteel{icon_state = "dark"},/area/ruin/unpowered) +"G" = (/turf/open/floor/plasteel{dir = 4; icon_state = "darkredfull"},/area/ruin/unpowered) +"H" = (/obj/structure/bed,/obj/item/weapon/bedsheet/orange,/obj/machinery/light{dir = 4; icon_state = "tube1"},/turf/open/floor/plasteel,/area/ruin/unpowered) +"I" = (/obj/structure/rack,/obj/item/clothing/head/helmet/swat,/turf/open/floor/plasteel{icon_state = "vault"; dir = 8},/area/ruin/unpowered) +"J" = (/obj/structure/rack,/obj/item/weapon/crowbar/red,/obj/item/weapon/paper/crumpled,/turf/open/floor/plasteel{icon_state = "vault"; dir = 8},/area/ruin/unpowered) +"K" = (/obj/structure/chair/office/dark,/turf/open/floor/plasteel,/area/ruin/unpowered) +"L" = (/obj/structure/chair/comfy/beige{dir = 4},/turf/open/floor/plasteel,/area/ruin/unpowered) +"M" = (/obj/structure/bed,/obj/item/weapon/bedsheet/orange,/turf/open/floor/plasteel,/area/ruin/unpowered) +"N" = (/obj/structure/rack,/obj/item/weapon/grenade/chem_grenade/teargas,/turf/open/floor/plasteel{icon_state = "dark"},/area/ruin/unpowered) +"O" = (/obj/structure/table/reinforced,/obj/item/weapon/paper/crumpled,/turf/open/floor/plasteel{dir = 4; icon_state = "darkredfull"},/area/ruin/unpowered) +"P" = (/obj/structure/table/reinforced,/obj/machinery/light,/obj/item/device/camera_bug,/turf/open/floor/plasteel,/area/ruin/unpowered) +"Q" = (/obj/structure/table/reinforced,/obj/item/weapon/paper_bin,/turf/open/floor/plasteel,/area/ruin/unpowered) +"R" = (/obj/structure/table/reinforced,/obj/item/weapon/pen/blue,/turf/open/floor/plasteel,/area/ruin/unpowered) +"S" = (/obj/structure/table/wood,/obj/item/weapon/reagent_containers/food/drinks/bottle/vodka{pixel_x = -4; pixel_y = 4},/obj/item/weapon/reagent_containers/food/drinks/bottle/vodka/badminka{pixel_x = 3},/turf/open/floor/plasteel,/area/ruin/unpowered) +"T" = (/obj/structure/rack,/obj/item/weapon/storage/belt/military,/obj/machinery/light,/turf/open/floor/plasteel{icon_state = "vault"; dir = 8},/area/ruin/unpowered) +"U" = (/obj/structure/rack,/obj/item/clothing/head/helmet/riot,/turf/open/floor/plasteel{icon_state = "vault"; dir = 8},/area/ruin/unpowered) +"V" = (/obj/structure/table/wood,/obj/item/weapon/reagent_containers/food/snacks/breadslice/meat,/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/open/floor/plasteel,/area/ruin/unpowered) (1,1,1) = {" aaaaaaaaaaaaaaaaaabbab @@ -55,7 +55,7 @@ aaaaabbbbbcddddddddddd aaaaabaaaacdefffghijki aaalllllllcdmnggggikki aaloddddddcdpqgggrdddd -aalddstuvdddddwdxddkkc +aalddstuvdddddwdxddllc aaldtyyyyzdABCgdgDdddc aaldsysEyyFGgggdgggHdc bbldIysJyyFGgKgdLggMdc diff --git a/_maps/RandomRuins/SpaceRuins/vaporwave.dmm b/_maps/RandomRuins/SpaceRuins/vaporwave.dmm deleted file mode 100644 index 09649f6e18..0000000000 --- a/_maps/RandomRuins/SpaceRuins/vaporwave.dmm +++ /dev/null @@ -1,58 +0,0 @@ -"a" = (/turf/open/space,/area/space) -"b" = (/obj/structure/lattice,/turf/open/space,/area/space) -"c" = (/obj/structure/lattice,/turf/open/floor/plating/asteroid/airless,/area/ruin/unpowered/no_grav) -"d" = (/turf/open/floor/plating/asteroid/airless,/area/ruin/unpowered/no_grav) -"e" = (/obj/structure/lattice,/turf/open/floor/plating/airless,/area/ruin/unpowered/no_grav) -"f" = (/turf/closed/wall,/area/ruin/powered/aesthetic) -"g" = (/turf/closed/wall/rust,/area/ruin/powered/aesthetic) -"h" = (/obj/effect/overlay/palmtree_r,/turf/open/floor/holofloor/beach,/area/ruin/powered/aesthetic) -"i" = (/obj/structure/piano,/obj/structure/window{icon_state = "rwindow"; dir = 8},/turf/open/floor/plasteel/vaporwave,/area/ruin/powered/aesthetic) -"j" = (/obj/structure/chair/stool,/turf/open/floor/plasteel/vaporwave,/area/ruin/powered/aesthetic) -"k" = (/turf/open/floor/plasteel/vaporwave,/area/ruin/powered/aesthetic) -"l" = (/obj/structure/chair/comfy/black{dir = 4},/turf/open/floor/plasteel/vaporwave,/area/ruin/powered/aesthetic) -"m" = (/obj/structure/table/reinforced,/obj/item/device/taperecorder,/turf/open/floor/plasteel/vaporwave,/area/ruin/powered/aesthetic) -"n" = (/obj/structure/chair/comfy/black{dir = 8},/turf/open/floor/plasteel/vaporwave,/area/ruin/powered/aesthetic) -"o" = (/obj/structure/window{icon_state = "rwindow"; dir = 4},/turf/open/floor/plasteel/vaporwave,/area/ruin/powered/aesthetic) -"p" = (/obj/effect/overlay/palmtree_l,/turf/open/floor/holofloor/beach,/area/ruin/powered/aesthetic) -"q" = (/turf/open/floor/holofloor/beach,/area/ruin/powered/aesthetic) -"r" = (/obj/structure/window{icon_state = "rwindow"; dir = 8},/turf/open/floor/plasteel/vaporwave,/area/ruin/powered/aesthetic) -"s" = (/obj/structure/table/reinforced,/obj/item/clothing/glasses/sunglasses/big{name = "aesthetic sunglasses"},/turf/open/floor/plasteel/vaporwave,/area/ruin/powered/aesthetic) -"t" = (/obj/item/device/instrument/eguitar,/turf/open/floor/holofloor/beach,/area/ruin/powered/aesthetic) -"u" = (/turf/open/floor/holofloor/beach/coast_t,/area/ruin/powered/aesthetic) -"v" = (/obj/item/weapon/statuebust,/turf/open/floor/plasteel/vaporwave,/area/ruin/powered/aesthetic) -"w" = (/mob/living/simple_animal/butterfly,/turf/open/floor/plasteel/vaporwave,/area/ruin/powered/aesthetic) -"x" = (/obj/structure/closet/crate/bin,/obj/item/device/tape/random,/turf/open/floor/plating/asteroid/airless,/area/ruin/unpowered/no_grav) -"y" = (/turf/open/floor/holofloor/beach/coast_b,/area/ruin/powered/aesthetic) -"z" = (/obj/structure/fans/tiny,/obj/machinery/door/airlock/hatch,/turf/open/floor/pod/dark,/area/ruin/powered/aesthetic) -"A" = (/obj/effect/decal/sandeffect,/turf/open/floor/plating/astplate,/area/ruin/unpowered/no_grav) -"B" = (/turf/open/floor/plating/astplate,/area/ruin/unpowered/no_grav) -"C" = (/obj/structure/statue/sandstone/venus{desc = "Ugh, this is merely an ugly amateurish replica of the other statue! The letters RIPGOAT are scribbled onto the base."; dir = 8},/turf/open/floor/plating/astplate,/area/ruin/unpowered/no_grav) -"D" = (/turf/open/floor/plasteel/airless/asteroid{tag = "icon-recharge_floor_asteroid"; icon_state = "recharge_floor_asteroid"},/area/ruin/unpowered/no_grav) -"E" = (/turf/open/floor/plasteel/airless/asteroid,/area/ruin/unpowered/no_grav) -"F" = (/obj/structure/statue/sandstone/venus{dir = 4},/turf/open/floor/plating/astplate,/area/ruin/unpowered/no_grav) -"G" = (/turf/open/floor/plating/astplate/warning,/area/ruin/unpowered/no_grav) -"H" = (/obj/effect/overlay/palmtree_l,/turf/open/floor/plating/asteroid/airless,/area/ruin/unpowered/no_grav) -"I" = (/turf/open/space,/obj/effect/decal/sandeffect,/turf/open/floor/plasteel/airless/asteroid{tag = "icon-platingsandeffect"; icon_state = "platingsandeffect"},/area/ruin/unpowered/no_grav) -"J" = (/turf/open/floor/plasteel/airless/asteroid{tag = "icon-stairs-l"; icon_state = "stairs-l"},/area/ruin/unpowered/no_grav) -"K" = (/turf/open/floor/plasteel/airless/asteroid{tag = "icon-stairs-m"; icon_state = "stairs-m"},/area/ruin/unpowered/no_grav) -"L" = (/turf/open/floor/plasteel/airless/asteroid{tag = "icon-stairs-r"; icon_state = "stairs-r"},/area/ruin/unpowered/no_grav) -"M" = (/obj/effect/overlay/palmtree_r,/turf/open/floor/plating/asteroid/airless,/area/ruin/unpowered/no_grav) -"N" = (/obj/effect/decal/sandeffect,/turf/open/floor/plasteel/airless/asteroid,/area/ruin/unpowered/no_grav) - -(1,1,1) = {" -aaaaaaaaaaaabaaaaaa -aaaaaabaaaaabaaaaaa -aaaaaccdddddcddaaaa -aaadddeddcccedddaaa -aaddffgfffggfgfdaaa -adddfhijklmnopfddaa -bccegqrkklsnotgecbb -addcghrkkkkkopfcdda -aaddgurvkkkwougxdda -abcefyrkkkkkoygecda -aaddgffffzfgfggddda -aaddABBCDEDFGBAddaa -aaadddHIJKLIMddddaa -aaaadddANEEAdddaaaa -aaaaaadddNNAdaaaaaa -"} diff --git a/_maps/RandomZLevels/Academy.dmm b/_maps/RandomZLevels/Academy.dmm index 7df0895e72..7f7d501f41 100644 --- a/_maps/RandomZLevels/Academy.dmm +++ b/_maps/RandomZLevels/Academy.dmm @@ -235,7 +235,7 @@ /turf/open/floor/carpet, /area/awaymission/academy/headmaster) "aJ" = ( -/obj/structure/destructible/cult/tome, +/obj/structure/cult/tome, /obj/item/weapon/dice/d20/fate, /turf/open/floor/wood, /area/awaymission/academy/headmaster) @@ -502,7 +502,9 @@ /turf/closed/wall, /area/awaymission/academy/classrooms) "bF" = ( -/turf/closed/wall/mineral/titanium, +/turf/closed/wall/shuttle{ + icon_state = "swallc2" + }, /area/awaymission/academy/classrooms) "bG" = ( /turf/closed/wall/shuttle{ @@ -573,7 +575,7 @@ /turf/open/floor/plasteel/black, /area/awaymission/academy/headmaster) "bQ" = ( -/obj/effect/decal/cleanable/cobweb/cobweb2, +/obj/effect/decal/cleanable/cobweb2, /obj/structure/cable{ d1 = 4; d2 = 8; @@ -852,7 +854,7 @@ /turf/closed/wall, /area/awaymission/academy/headmaster) "cI" = ( -/obj/structure/trap/damage, +/obj/structure/divine/trap/damage, /turf/open/floor/carpet, /area/awaymission/academy/headmaster) "cJ" = ( @@ -2263,14 +2265,14 @@ info = "Grade: A+ Educator's Notes: Excellent form."; name = "Summoning Midterm Exam" }, -/obj/item/weapon/gun/ballistic/shotgun/automatic/combat, +/obj/item/weapon/gun/projectile/shotgun/automatic/combat, /turf/open/floor/plasteel/vault{ dir = 5 }, /area/awaymission/academy/classrooms) "gI" = ( /obj/structure/table, -/obj/item/weapon/gun/ballistic/revolver/russian, +/obj/item/weapon/gun/projectile/revolver/russian, /obj/item/weapon/paper{ info = "Grade: B- Educator's Notes: Keep applying yourself, you're showing improvement."; name = "Summoning Midterm Exam" @@ -2797,7 +2799,7 @@ /area/awaymission/academy/academyaft) "hU" = ( /obj/structure/closet, -/obj/item/clothing/under/skirt/black, +/obj/item/clothing/under/blackskirt, /obj/item/clothing/glasses/regular, /turf/open/floor/plasteel, /area/awaymission/academy/academyaft) @@ -2920,7 +2922,7 @@ }, /area/awaymission/academy/academyaft) "in" = ( -/obj/effect/decal/cleanable/cobweb/cobweb2, +/obj/effect/decal/cleanable/cobweb2, /turf/open/floor/plasteel/cafeteria{ dir = 2 }, @@ -3113,7 +3115,7 @@ /turf/open/floor/wood, /area/awaymission/academy/academyaft) "iP" = ( -/obj/effect/decal/cleanable/cobweb/cobweb2, +/obj/effect/decal/cleanable/cobweb2, /turf/open/floor/engine, /area/awaymission/academy/academyaft) "iQ" = ( @@ -3429,7 +3431,7 @@ }, /area/awaymission/academy/academyaft) "jw" = ( -/obj/structure/destructible/cult/pylon, +/obj/structure/cult/pylon, /turf/open/floor/plasteel/yellow/side{ dir = 10 }, @@ -3438,7 +3440,7 @@ /turf/open/floor/plasteel/yellow/side, /area/awaymission/academy/academyaft) "jy" = ( -/obj/structure/destructible/cult/pylon, +/obj/structure/cult/pylon, /turf/open/floor/plasteel/yellow/side{ dir = 6 }, @@ -3881,11 +3883,11 @@ d2 = 4; icon_state = "2-4" }, -/obj/structure/trap/chill, +/obj/structure/divine/trap/chill, /turf/open/floor/plating, /area/awaymission/academy/academyaft) "kN" = ( -/obj/structure/trap/fire, +/obj/structure/divine/trap/fire, /turf/open/floor/engine, /area/awaymission/academy/academyaft) "kO" = ( @@ -3940,13 +3942,13 @@ /turf/open/floor/engine/cult, /area/awaymission/academy/academycellar) "kZ" = ( -/obj/effect/decal/cleanable/cobweb/cobweb2, +/obj/effect/decal/cleanable/cobweb2, /obj/effect/decal/cleanable/blood/old, /obj/effect/decal/remains/human, /turf/open/floor/engine/cult, /area/awaymission/academy/academycellar) "la" = ( -/obj/structure/trap/damage, +/obj/structure/divine/trap/damage, /turf/open/floor/engine/cult, /area/awaymission/academy/academycellar) "lb" = ( @@ -3961,11 +3963,11 @@ /turf/open/floor/mineral/uranium, /area/awaymission/academy/academycellar) "le" = ( -/obj/structure/spider/stickyweb, +/obj/effect/spider/stickyweb, /turf/open/floor/engine/cult, /area/awaymission/academy/academycellar) "lf" = ( -/obj/effect/decal/cleanable/cobweb/cobweb2, +/obj/effect/decal/cleanable/cobweb2, /turf/open/floor/engine/cult, /area/awaymission/academy/academycellar) "lg" = ( @@ -11607,9 +11609,9 @@ aa aa bs bF -bF -bF -bF +bW +bW +cs cA cA cP @@ -11736,7 +11738,7 @@ aa aa aa bs -bF +bG bX bZ bZ @@ -11866,7 +11868,7 @@ aa aa aP bs -bF +bG bY bZ bZ @@ -11996,7 +11998,7 @@ aa aP aP bs -bF +bG bZ bZ bZ @@ -12126,7 +12128,7 @@ aP aP aa bs -bF +bG bZ bX bZ @@ -12256,7 +12258,7 @@ ab aP aP bs -bF +bG ca bZ bZ @@ -12386,7 +12388,7 @@ aP aa aa bs -bF +bG bZ bZ bZ @@ -12516,10 +12518,10 @@ aP aa aa bs -bF -bF -bF -bF +bH +bW +bW +cs cC cC cR diff --git a/_maps/RandomZLevels/Cabin.dmm b/_maps/RandomZLevels/Cabin.dmm index f9e40b73fc..2aa4616c62 100644 --- a/_maps/RandomZLevels/Cabin.dmm +++ b/_maps/RandomZLevels/Cabin.dmm @@ -310,7 +310,7 @@ /area/awaymission/cabin) "aZ" = ( /obj/structure/guncase/shotgun, -/obj/item/weapon/gun/ballistic/shotgun/riot, +/obj/item/weapon/gun/projectile/shotgun/riot, /turf/open/floor/carpet, /area/awaymission/cabin) "ba" = ( diff --git a/_maps/RandomZLevels/caves.dmm b/_maps/RandomZLevels/caves.dmm index 992ed6dbbf..8e6daec754 100644 --- a/_maps/RandomZLevels/caves.dmm +++ b/_maps/RandomZLevels/caves.dmm @@ -92,7 +92,7 @@ name = "\improper BMP Asteroid Level 4" }) "an" = ( -/obj/structure/destructible/cult/pylon, +/obj/structure/cult/pylon, /turf/open/floor/plating/asteroid/basalt/lava{ initial_gas_mix = "n2=23;o2=14" }, @@ -108,7 +108,7 @@ name = "\improper BMP Asteroid Level 4" }) "ap" = ( -/obj/structure/destructible/cult/pylon, +/obj/structure/cult/pylon, /turf/open/floor/engine/cult{ baseturf = /turf/open/floor/plating/lava/smooth; initial_gas_mix = "n2=23;o2=14" @@ -151,7 +151,7 @@ name = "\improper BMP Asteroid Level 4" }) "au" = ( -/obj/structure/destructible/cult/talisman, +/obj/structure/cult/talisman, /obj/effect/decal/remains/human, /obj/item/stack/sheet/runed_metal{ amount = 25 @@ -167,7 +167,7 @@ name = "\improper BMP Asteroid Level 4" }) "av" = ( -/obj/structure/trap/stun{ +/obj/structure/divine/trap/stun{ desc = "A rune inscribed in the floor, the air feeling electrified around it."; name = "shock rune" }, @@ -199,7 +199,7 @@ name = "\improper BMP Asteroid Level 4" }) "ay" = ( -/obj/structure/destructible/cult/tome, +/obj/structure/cult/tome, /obj/item/weapon/tome, /obj/item/stack/sheet/runed_metal{ amount = 25 @@ -260,7 +260,7 @@ name = "\improper BMP Asteroid Level 4" }) "aE" = ( -/obj/structure/destructible/cult/tome, +/obj/structure/cult/tome, /obj/item/stack/sheet/runed_metal{ amount = 25 }, @@ -474,7 +474,7 @@ name = "\improper BMP Asteroid Level 3" }) "aY" = ( -/obj/structure/trap/fire{ +/obj/structure/divine/trap/fire{ desc = "An old rune inscribed on the floor, giving off an intense amount of heat."; name = "flame rune" }, @@ -485,7 +485,7 @@ name = "\improper BMP Asteroid Level 4" }) "aZ" = ( -/obj/structure/trap/fire{ +/obj/structure/divine/trap/fire{ desc = "An old rune inscribed on the floor, giving off an intense amount of heat."; name = "flame rune" }, @@ -497,7 +497,7 @@ name = "\improper BMP Asteroid Level 4" }) "ba" = ( -/obj/structure/destructible/cult/talisman, +/obj/structure/cult/talisman, /obj/item/weapon/plasma_fist_scroll, /turf/open/floor/engine/cult{ baseturf = /turf/open/floor/plating/lava/smooth; @@ -515,7 +515,7 @@ name = "\improper BMP Asteroid Level 3" }) "bc" = ( -/obj/structure/spider/stickyweb, +/obj/effect/spider/stickyweb, /turf/open/floor/plating/asteroid/basalt{ initial_gas_mix = "n2=23;o2=14" }, @@ -672,7 +672,7 @@ name = "\improper BMP Asteroid Level 4" }) "bs" = ( -/obj/structure/trap/stun{ +/obj/structure/divine/trap/stun{ desc = "A rune inscribed in the floor, the air feeling electrified around it."; name = "shock rune" }, @@ -683,7 +683,7 @@ name = "\improper BMP Asteroid Level 4" }) "bt" = ( -/obj/structure/spider/stickyweb, +/obj/effect/spider/stickyweb, /mob/living/simple_animal/hostile/poison/giant_spider/hunter, /turf/open/floor/plating/asteroid/basalt{ initial_gas_mix = "n2=23;o2=14" @@ -692,7 +692,7 @@ name = "\improper BMP Asteroid Level 3" }) "bu" = ( -/obj/structure/spider/cocoon, +/obj/effect/spider/cocoon, /turf/open/floor/plating/asteroid/basalt{ initial_gas_mix = "n2=23;o2=14" }, @@ -700,7 +700,7 @@ name = "\improper BMP Asteroid Level 3" }) "bv" = ( -/obj/structure/destructible/cult/pylon, +/obj/structure/cult/pylon, /turf/open/floor/plating/asteroid/basalt{ initial_gas_mix = "n2=23;o2=14" }, @@ -745,7 +745,7 @@ name = "\improper BMP Asteroid Level 4" }) "bA" = ( -/obj/structure/destructible/cult/tome, +/obj/structure/cult/tome, /obj/item/device/necromantic_stone, /obj/effect/decal/cleanable/blood, /turf/open/floor/engine/cult{ @@ -781,7 +781,7 @@ name = "\improper BMP Asteroid Level 3" }) "bE" = ( -/obj/structure/destructible/cult/pylon, +/obj/structure/cult/pylon, /obj/effect/decal/cleanable/blood, /turf/open/floor/engine/cult{ baseturf = /turf/open/floor/plating/lava/smooth; @@ -805,7 +805,7 @@ name = "\improper BMP Asteroid Level 3" }) "bG" = ( -/obj/item/weapon/gun/ballistic/automatic/pistol/deagle/gold, +/obj/item/weapon/gun/projectile/automatic/pistol/deagle/gold, /turf/open/floor/plating/asteroid/basalt/lava{ initial_gas_mix = "n2=23;o2=14" }, @@ -1404,7 +1404,7 @@ }, /area/awaymission/research) "cY" = ( -/obj/structure/glowshroom/single, +/obj/effect/glowshroom/single, /turf/open/floor/plasteel{ baseturf = /turf/open/floor/plating/asteroid/basalt; initial_gas_mix = "n2=23;o2=14" @@ -1540,7 +1540,7 @@ name = "\improper BMP Asteroid Level 2" }) "dm" = ( -/obj/structure/spider/stickyweb, +/obj/effect/spider/stickyweb, /turf/open/floor/plating{ baseturf = /turf/open/floor/plating/asteroid/basalt }, @@ -1580,7 +1580,7 @@ icon_state = "bulb1"; dir = 4 }, -/obj/structure/spider/stickyweb, +/obj/effect/spider/stickyweb, /turf/open/floor/plasteel{ baseturf = /turf/open/floor/plating/asteroid/basalt }, @@ -1588,7 +1588,7 @@ name = "\improper BMP Asteroid Level 2" }) "dr" = ( -/obj/structure/spider/stickyweb, +/obj/effect/spider/stickyweb, /turf/open/floor/plasteel{ baseturf = /turf/open/floor/plating/asteroid/basalt }, @@ -1685,7 +1685,7 @@ /area/awaymission/northblock) "dD" = ( /obj/structure/table/wood, -/obj/effect/decal/cleanable/cobweb/cobweb2, +/obj/effect/decal/cleanable/cobweb2, /turf/open/floor/wood{ baseturf = /turf/open/floor/plating/asteroid/basalt }, @@ -1735,7 +1735,7 @@ /area/awaymission/northblock) "dJ" = ( /obj/item/stack/rods, -/obj/structure/spider/stickyweb, +/obj/effect/spider/stickyweb, /turf/open/floor/plating{ baseturf = /turf/open/floor/plating/asteroid/basalt }, @@ -1800,7 +1800,7 @@ }, /area/awaymission/northblock) "dT" = ( -/obj/structure/spider/stickyweb, +/obj/effect/spider/stickyweb, /turf/open/floor/plasteel{ baseturf = /turf/open/floor/plating/asteroid/basalt }, @@ -1832,7 +1832,7 @@ "dY" = ( /obj/structure/bed, /obj/item/weapon/bedsheet, -/obj/effect/decal/cleanable/cobweb/cobweb2, +/obj/effect/decal/cleanable/cobweb2, /obj/effect/landmark{ name = "awaystart" }, @@ -2122,7 +2122,7 @@ /obj/structure/table, /obj/item/weapon/gun/energy/kinetic_accelerator, /obj/item/weapon/gun/energy/kinetic_accelerator, -/obj/effect/decal/cleanable/cobweb/cobweb2, +/obj/effect/decal/cleanable/cobweb2, /turf/open/floor/plasteel{ baseturf = /turf/open/floor/plating/asteroid/basalt }, @@ -2417,7 +2417,7 @@ icon_state = "bulb1"; dir = 1 }, -/obj/structure/spider/stickyweb, +/obj/effect/spider/stickyweb, /mob/living/simple_animal/hostile/poison/giant_spider/hunter, /turf/open/floor/plasteel{ baseturf = /turf/open/floor/plating/asteroid/basalt @@ -2434,7 +2434,7 @@ /obj/structure/table, /obj/item/weapon/storage/firstaid/fire, /obj/item/weapon/storage/firstaid/fire, -/obj/structure/spider/stickyweb, +/obj/effect/spider/stickyweb, /turf/open/floor/plasteel{ baseturf = /turf/open/floor/plating/asteroid/basalt }, @@ -2448,7 +2448,7 @@ }, /area/awaymission/BMPship) "fv" = ( -/obj/structure/glowshroom/single, +/obj/effect/glowshroom/single, /turf/open/floor/plating/asteroid/basalt{ initial_gas_mix = "n2=23;o2=14" }, @@ -2493,7 +2493,7 @@ }, /area/awaymission/BMPship) "fB" = ( -/obj/structure/spider/stickyweb, +/obj/effect/spider/stickyweb, /turf/open/floor/plasteel{ baseturf = /turf/open/floor/plating/asteroid/basalt }, @@ -2505,7 +2505,7 @@ }, /area/awaymission/BMPship) "fD" = ( -/obj/structure/spider/stickyweb, +/obj/effect/spider/stickyweb, /obj/machinery/sleeper{ icon_state = "sleeper-open"; dir = 8 diff --git a/_maps/RandomZLevels/centcomAway.dmm b/_maps/RandomZLevels/centcomAway.dmm index cd8daceac1..b40e2d8618 100644 --- a/_maps/RandomZLevels/centcomAway.dmm +++ b/_maps/RandomZLevels/centcomAway.dmm @@ -408,7 +408,10 @@ /turf/open/floor/plasteel/vault{ dir = 5 }, -/turf/closed/wall/mineral/titanium/interior, +/turf/closed/wall/shuttle{ + icon_state = "swall_f6"; + dir = 2 + }, /area/awaymission/centcomAway/hangar) "bo" = ( /obj/structure/shuttle/engine/propulsion{ @@ -489,7 +492,10 @@ /turf/open/floor/plating, /area/awaymission/centcomAway/maint) "bB" = ( -/turf/closed/wall/mineral/titanium, +/turf/closed/wall/shuttle{ + icon_state = "swall3"; + dir = 2 + }, /area/awaymission/centcomAway/hangar) "bC" = ( /obj/structure/window/reinforced, @@ -585,18 +591,24 @@ /area/awaymission/centcomAway/hangar) "bS" = ( /turf/open/floor/plating, -/turf/closed/wall/mineral/titanium/interior, +/turf/closed/wall/shuttle{ + icon_state = "swall_f6"; + dir = 2 + }, /area/awaymission/centcomAway/hangar) "bT" = ( -/turf/open/floor/mineral/titanium/blue, -/turf/closed/wall/mineral/titanium/interior, +/turf/open/floor/plasteel/shuttle, +/turf/closed/wall/shuttle{ + icon_state = "swall_f9"; + dir = 2 + }, /area/awaymission/centcomAway/hangar) "bU" = ( /obj/structure/closet/emcloset, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/awaymission/centcomAway/hangar) "bV" = ( -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/awaymission/centcomAway/hangar) "bW" = ( /obj/structure/table, @@ -605,7 +617,7 @@ pixel_y = 4 }, /obj/item/weapon/storage/firstaid/toxin, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/awaymission/centcomAway/hangar) "bX" = ( /obj/structure/table, @@ -614,7 +626,7 @@ pixel_x = -2; pixel_y = 4 }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/awaymission/centcomAway/hangar) "bY" = ( /obj/structure/table, @@ -626,7 +638,7 @@ pixel_x = -2; pixel_y = 4 }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/awaymission/centcomAway/hangar) "bZ" = ( /turf/open/floor/plasteel/shuttle, @@ -716,10 +728,13 @@ /turf/open/floor/plating/airless, /area/awaymission/centcomAway/maint) "cm" = ( -/turf/closed/wall/mineral/titanium/nodiagonal, +/turf/closed/wall/shuttle{ + icon_state = "swall1"; + dir = 2 + }, /area/awaymission/centcomAway/hangar) "cn" = ( -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/awaymission/centcomAway/hangar) "co" = ( /obj/item/weapon/pen, @@ -832,41 +847,41 @@ "cJ" = ( /obj/structure/table/reinforced, /obj/item/weapon/paper_bin, -/turf/open/floor/mineral/titanium/yellow, +/turf/open/floor/plasteel/shuttle/yellow, /area/awaymission/centcomAway/hangar) "cK" = ( /obj/structure/table/reinforced, /obj/item/weapon/storage/fancy/donut_box, -/turf/open/floor/mineral/titanium/yellow, +/turf/open/floor/plasteel/shuttle/yellow, /area/awaymission/centcomAway/hangar) "cL" = ( /obj/structure/table/reinforced, /obj/item/weapon/pen, -/turf/open/floor/mineral/titanium/yellow, +/turf/open/floor/plasteel/shuttle/yellow, /area/awaymission/centcomAway/hangar) "cM" = ( /obj/structure/table/reinforced, -/turf/open/floor/mineral/titanium/yellow, +/turf/open/floor/plasteel/shuttle/yellow, /area/awaymission/centcomAway/hangar) "cN" = ( /obj/machinery/sleeper{ icon_state = "sleeper-open"; dir = 8 }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/awaymission/centcomAway/hangar) "cO" = ( /obj/machinery/sleep_console{ icon_state = "console"; dir = 8 }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/awaymission/centcomAway/hangar) "cP" = ( /obj/structure/chair{ dir = 8 }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/awaymission/centcomAway/hangar) "cQ" = ( /turf/closed/wall/shuttle{ @@ -886,32 +901,32 @@ /area/awaymission/centcomAway/cafe) "cT" = ( /obj/structure/table/reinforced, -/obj/item/clothing/neck/stethoscope, +/obj/item/clothing/tie/stethoscope, /turf/open/floor/plasteel/whitepurple/side{ dir = 1 }, /area/awaymission/centcomAway/general) "cU" = ( /obj/machinery/computer/secure_data, -/turf/open/floor/mineral/titanium/yellow, +/turf/open/floor/plasteel/shuttle/yellow, /area/awaymission/centcomAway/hangar) "cV" = ( /obj/structure/chair{ dir = 1 }, -/turf/open/floor/mineral/titanium/yellow, +/turf/open/floor/plasteel/shuttle/yellow, /area/awaymission/centcomAway/hangar) "cW" = ( /obj/structure/chair{ dir = 4 }, -/turf/open/floor/mineral/titanium/yellow, +/turf/open/floor/plasteel/shuttle/yellow, /area/awaymission/centcomAway/hangar) "cX" = ( /obj/structure/table/reinforced, /obj/item/weapon/clipboard, /obj/item/weapon/stamp, -/turf/open/floor/mineral/titanium/yellow, +/turf/open/floor/plasteel/shuttle/yellow, /area/awaymission/centcomAway/hangar) "cY" = ( /turf/open/floor/plasteel/yellow/side{ @@ -932,16 +947,16 @@ "da" = ( /obj/structure/table, /obj/item/device/assembly/flash/handheld, -/turf/open/floor/mineral/titanium/yellow, +/turf/open/floor/plasteel/shuttle/yellow, /area/awaymission/centcomAway/hangar) "db" = ( -/turf/open/floor/mineral/titanium/yellow, +/turf/open/floor/plasteel/shuttle/yellow, /area/awaymission/centcomAway/hangar) "dc" = ( /obj/structure/chair{ dir = 4 }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/awaymission/centcomAway/hangar) "dd" = ( /obj/structure/reagent_dispensers/fueltank, @@ -982,7 +997,7 @@ "dl" = ( /obj/structure/table, /obj/item/weapon/storage/box/handcuffs, -/turf/open/floor/mineral/titanium/yellow, +/turf/open/floor/plasteel/shuttle/yellow, /area/awaymission/centcomAway/hangar) "dm" = ( /obj/machinery/door/window/northright{ @@ -992,7 +1007,7 @@ name = "Security Desk"; req_access_txt = "103" }, -/turf/open/floor/mineral/titanium/yellow, +/turf/open/floor/plasteel/shuttle/yellow, /area/awaymission/centcomAway/hangar) "dn" = ( /obj/structure/closet/crate, @@ -1061,7 +1076,7 @@ /area/awaymission/centcomAway/maint) "dz" = ( /obj/structure/bed, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/awaymission/centcomAway/hangar) "dA" = ( /obj/structure/grille, @@ -1108,7 +1123,7 @@ /area/awaymission/centcomAway/cafe) "dG" = ( /obj/structure/bed, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/awaymission/centcomAway/hangar) "dH" = ( /obj/structure/table, @@ -1136,7 +1151,7 @@ name = "Rest Room"; req_access_txt = "0" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/awaymission/centcomAway/hangar) "dM" = ( /obj/structure/closet/crate/large, @@ -1225,17 +1240,17 @@ "dZ" = ( /obj/structure/table, /obj/structure/bedsheetbin, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/awaymission/centcomAway/hangar) "ea" = ( /obj/structure/table, /obj/item/weapon/hand_labeler, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/awaymission/centcomAway/hangar) "eb" = ( /obj/structure/table, /obj/item/weapon/storage/box/donkpockets, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/awaymission/centcomAway/hangar) "ec" = ( /obj/structure/flora/ausbushes, @@ -1356,7 +1371,7 @@ name = "Cockpit"; req_access_txt = "109" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/awaymission/centcomAway/hangar) "eu" = ( /turf/closed/wall/r_wall, @@ -1382,18 +1397,18 @@ "ez" = ( /obj/structure/table, /obj/item/device/radio/off, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/awaymission/centcomAway/hangar) "eA" = ( /obj/structure/chair{ dir = 4; name = "Prosecution" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/awaymission/centcomAway/hangar) "eB" = ( /obj/structure/filingcabinet, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/awaymission/centcomAway/hangar) "eC" = ( /turf/open/floor/plasteel/green/side{ @@ -1480,7 +1495,7 @@ /area/awaymission/centcomAway/general) "eR" = ( /obj/structure/chair, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/awaymission/centcomAway/hangar) "eS" = ( /obj/machinery/telecomms/relay/preset/ruskie, @@ -1529,26 +1544,26 @@ "eZ" = ( /obj/structure/table, /obj/item/weapon/storage/lockbox, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/awaymission/centcomAway/hangar) "fa" = ( /obj/structure/table, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/awaymission/centcomAway/hangar) "fb" = ( /obj/structure/frame/computer, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/awaymission/centcomAway/hangar) "fc" = ( /obj/structure/table, /obj/item/weapon/clipboard, /obj/item/weapon/pen, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/awaymission/centcomAway/hangar) "fd" = ( /obj/structure/table, /obj/item/weapon/paper_bin, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/awaymission/centcomAway/hangar) "fe" = ( /turf/open/floor/plasteel/green/side{ @@ -2138,11 +2153,17 @@ /obj/structure/shuttle/engine/propulsion/burst{ dir = 4 }, -/turf/closed/wall/mineral/titanium/interior, +/turf/closed/wall/shuttle{ + icon_state = "swall_f6"; + dir = 2 + }, /area/awaymission/centcomAway/hangar) "gT" = ( /turf/open/floor/plasteel/black, -/turf/closed/wall/mineral/titanium/interior, +/turf/closed/wall/shuttle{ + icon_state = "swall_f10"; + dir = 2 + }, /area/awaymission/centcomAway/hangar) "gU" = ( /obj/structure/table, @@ -2191,7 +2212,7 @@ /area/awaymission/centcomAway/courtroom) "hc" = ( /obj/machinery/door/unpowered/shuttle, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/awaymission/centcomAway/hangar) "hd" = ( /obj/structure/chair{ @@ -2200,7 +2221,7 @@ /obj/item/device/radio/intercom{ pixel_y = 25 }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/awaymission/centcomAway/hangar) "he" = ( /obj/structure/grille, @@ -2612,7 +2633,7 @@ /area/awaymission/centcomAway/general) "is" = ( /obj/structure/bookcase, -/obj/effect/decal/cleanable/cobweb/cobweb2, +/obj/effect/decal/cleanable/cobweb2, /turf/open/floor/plasteel/grimy, /area/awaymission/centcomAway/general) "it" = ( @@ -2899,7 +2920,7 @@ }, /area/awaymission/centcomAway/general) "jk" = ( -/obj/effect/decal/cleanable/cobweb/cobweb2, +/obj/effect/decal/cleanable/cobweb2, /turf/open/floor/plasteel/grimy, /area/awaymission/centcomAway/general) "jl" = ( @@ -4160,7 +4181,7 @@ /obj/structure/safe/floor, /obj/item/clothing/under/rank/centcom_officer, /obj/item/clothing/suit/det_suit, -/obj/item/weapon/gun/ballistic/revolver/mateba, +/obj/item/weapon/gun/projectile/revolver/mateba, /turf/open/floor/plasteel/grimy, /area/awaymission/centcomAway/general) "mR" = ( @@ -8686,7 +8707,7 @@ bn bB bB bB -bn +cw bd be be @@ -8711,7 +8732,7 @@ gD gD gS hc -gS +hv gD aV ii @@ -8816,8 +8837,8 @@ bo bC bR bR -bS -bn +ca +cw bd bR bd @@ -8839,19 +8860,19 @@ gm gD gD gD -bB +bH hd -bB +bH gD aV ij -gm +ik ij -gm +ik ij -gm +ik ij -gm +ik aV bR gD @@ -8947,7 +8968,7 @@ bC bR bR bR -bB +bH bd bd bd @@ -8969,19 +8990,19 @@ gm gD gD gD -bB +bH dc -bB +bH gD aV -gm -gm -gm -gm -gm -gm -gm -gm +ik +ik +ik +ik +ik +ik +ik +ik aV gD gD @@ -9077,17 +9098,17 @@ bC bS cm cx -cm +cI +bB +bB +bB +bD bB bB bB bB bB -bB -bB -bB -bB -bS +eq bR bR bd @@ -9101,14 +9122,14 @@ gD gD gT he -gT +hw gD aV il gD gD -gm -gm +ik +ik gD gD gD @@ -9202,8 +9223,8 @@ aa aa aV bd -bn -bB +br +bD bT cn cn @@ -9211,14 +9232,14 @@ cJ cU da dl -bB +bH dz dz dz dz dz -bB -bS +er +eq bR bR bd @@ -9333,7 +9354,7 @@ aa aV bd bd -bB +bE bU cn bV @@ -9341,17 +9362,17 @@ cK cV db db -bB +bH bV bV bV bV bV +er +bI bB bB -bB -bB -bn +cw bd bd bd @@ -9471,13 +9492,13 @@ cL cW db db -bB +bH dz dG bV dz dz -bB +bH ez eb eZ @@ -9490,7 +9511,7 @@ gD gD gS hc -gS +hv gD gD aV @@ -9593,7 +9614,7 @@ aa aV be bd -bB +bG bW cn bV @@ -9601,13 +9622,13 @@ cM cX cM dm +cI +bB cm -bB -bB dL +dR bB -bB -cm +es cP cn fa @@ -9618,9 +9639,9 @@ bd gm gD gD -bB +bH hd -bB +bH gD gD aV @@ -9723,7 +9744,7 @@ aa aV bd bd -bB +bH bX cn bV @@ -9748,9 +9769,9 @@ bd gm gD gD -bB +bH dc -bB +bH gD gD mT @@ -9853,7 +9874,7 @@ aa aV bd bd -bB +bE bY cn bV @@ -9867,7 +9888,7 @@ cP bV cn dZ -bB +bG eA cn fc @@ -9880,7 +9901,7 @@ gD gD gT he -gT +hw gD gD aV @@ -9997,7 +10018,7 @@ dc bV cn ea -bB +bH eB ez fd @@ -10113,7 +10134,7 @@ aa aV bd bd -bB +bG bU cn bV @@ -10127,11 +10148,11 @@ bV bV cn eb +er +bD bB bB -bB -bB -bn +cy bd bd bd @@ -10243,8 +10264,8 @@ aa aV bd bn -bB -bT +bI +bZ cn cn cP @@ -10257,8 +10278,8 @@ cP bV cn bU -bB -bn +er +cy bd bd bd @@ -10374,20 +10395,20 @@ aV bd bo bC -bS +ca cm cx +cQ +bB cm -bB -bB bF -bB +du dA -bB +du bF +dR bB -bB -bn +cy bd bd bd @@ -10507,7 +10528,7 @@ bC bR bR bR -bB +bH bd dd bd @@ -10637,7 +10658,7 @@ bC bR bR bS -bn +cy bd bd bd @@ -10762,11 +10783,11 @@ aa aa aV bd -bn +br bB bB bB -bn +cy bd bd bd @@ -13140,7 +13161,7 @@ gz eD eD eD -fY +jl fx eD eD @@ -13522,7 +13543,7 @@ eD ho fv hI -fY +jl eu eu eu diff --git a/_maps/RandomZLevels/challenge.dmm b/_maps/RandomZLevels/challenge.dmm index 2376fd21fb..79a8b400cf 100644 --- a/_maps/RandomZLevels/challenge.dmm +++ b/_maps/RandomZLevels/challenge.dmm @@ -720,7 +720,7 @@ }, /area/awaymission/challenge/end) "bQ" = ( -/obj/item/weapon/gun/ballistic/revolver/russian, +/obj/item/weapon/gun/projectile/revolver/russian, /turf/open/floor/plasteel/white/side{ dir = 2 }, @@ -858,7 +858,7 @@ /area/awaymission/challenge/end) "ck" = ( /obj/structure/rack, -/obj/item/weapon/gun/ballistic/revolver/mateba, +/obj/item/weapon/gun/projectile/revolver/mateba, /turf/open/floor/wood, /area/awaymission/challenge/end) "cl" = ( @@ -927,7 +927,7 @@ /area/awaymission/challenge/end) "cw" = ( /obj/structure/rack, -/obj/item/weapon/gun/ballistic/automatic/l6_saw, +/obj/item/weapon/gun/projectile/automatic/l6_saw, /turf/open/floor/wood, /area/awaymission/challenge/end) "cx" = ( diff --git a/_maps/RandomZLevels/moonoutpost19.dmm b/_maps/RandomZLevels/moonoutpost19.dmm index d0d41cc665..6bdfdaf1e8 100644 --- a/_maps/RandomZLevels/moonoutpost19.dmm +++ b/_maps/RandomZLevels/moonoutpost19.dmm @@ -82,7 +82,7 @@ /obj/structure/alien/weeds, /obj/structure/alien/weeds{ desc = "A large mottled egg."; - obj_integrity = 100; + health = 100; icon_state = "egg_hatched"; name = "egg" }, @@ -105,7 +105,7 @@ }, /obj/structure/alien/weeds{ desc = "A large mottled egg."; - obj_integrity = 100; + health = 100; icon_state = "egg_hatched"; name = "egg" }, @@ -177,7 +177,7 @@ }, /obj/structure/alien/weeds{ desc = "A large mottled egg."; - obj_integrity = 100; + health = 100; icon_state = "egg_hatched"; name = "egg" }, @@ -249,8 +249,12 @@ /obj/structure/alien/weeds, /obj/structure/bed/nest, /obj/effect/decal/cleanable/blood/gibs, -/obj/item/clothing/mask/facehugger/impregnated, -/obj/item/weapon/gun/ballistic/automatic/pistol, +/obj/item/clothing/mask/facehugger{ + icon_state = "facehugger_impregnated"; + item_state = "facehugger_impregnated"; + stat = 2 + }, +/obj/item/weapon/gun/projectile/automatic/pistol, /turf/open/floor/plating/asteroid{ initial_gas_mix = "co2=48.7;n2=13.2;o2=32.4;TEMP=251"; heat_capacity = 1e+006 @@ -458,7 +462,11 @@ }, /obj/structure/bed/nest, /obj/effect/decal/cleanable/blood/gibs, -/obj/item/clothing/mask/facehugger/impregnated, +/obj/item/clothing/mask/facehugger{ + icon_state = "facehugger_impregnated"; + item_state = "facehugger_impregnated"; + stat = 2 + }, /obj/item/clothing/under/rank/security, /obj/item/clothing/suit/armor/vest, /obj/item/weapon/melee/baton/loaded, @@ -528,7 +536,7 @@ }, /obj/structure/alien/weeds{ desc = "A large mottled egg."; - obj_integrity = 100; + health = 100; icon_state = "egg_hatched"; name = "egg" }, @@ -550,7 +558,7 @@ /obj/structure/alien/weeds, /obj/structure/alien/weeds{ desc = "A large mottled egg."; - obj_integrity = 100; + health = 100; icon_state = "egg_hatched"; name = "egg" }, @@ -883,7 +891,11 @@ /obj/structure/bed/nest, /obj/effect/decal/cleanable/blood/gibs, /obj/effect/decal/cleanable/blood, -/obj/item/clothing/mask/facehugger/impregnated, +/obj/item/clothing/mask/facehugger{ + icon_state = "facehugger_impregnated"; + item_state = "facehugger_impregnated"; + stat = 2 + }, /obj/item/clothing/under/syndicate, /obj/item/clothing/glasses/night, /turf/open/floor/plating/asteroid{ @@ -1958,7 +1970,7 @@ "cG" = ( /obj/structure/grille{ density = 0; - broken = 1; + destroyed = 1; icon_state = "brokengrille" }, /obj/item/stack/rods, @@ -2899,7 +2911,11 @@ /obj/item/clothing/suit/space/syndicate/orange, /obj/item/clothing/mask/gas, /obj/item/clothing/head/helmet/space/syndicate/orange, -/obj/item/clothing/mask/facehugger/impregnated, +/obj/item/clothing/mask/facehugger{ + icon_state = "facehugger_impregnated"; + item_state = "facehugger_impregnated"; + stat = 2 + }, /turf/open/floor/plating/asteroid{ initial_gas_mix = "co2=48.7;n2=13.2;o2=32.4;TEMP=251"; heat_capacity = 1e+006 @@ -3101,13 +3117,15 @@ /obj/machinery/door/poddoor/preopen{ desc = "A heavy duty blast door that opens mechanically. This one has been applied with an acid-proof coating."; id = "Awaybiohazard"; - name = "Acid-Proof biohazard containment door" + name = "Acid-Proof biohazard containment door"; + unacidable = 1 }, /obj/machinery/door/poddoor{ desc = "A heavy duty blast door that opens mechanically. This one has been applied with an acid-proof coating."; id = "Awaybiohazard"; layer = 2.9; - name = "Acid-Proof biohazard containment door" + name = "Acid-Proof biohazard containment door"; + unacidable = 1 }, /obj/structure/window/reinforced/fulltile, /turf/open/floor/plating{ @@ -3269,7 +3287,7 @@ /obj/structure/alien/weeds, /obj/structure/alien/weeds{ desc = "A large mottled egg."; - obj_integrity = 100; + health = 100; icon_state = "egg_hatched"; name = "egg" }, @@ -3288,7 +3306,8 @@ id = "awayxenobio"; name = "Acid-Proof mounted igniter"; pixel_x = 0; - pixel_y = 25 + pixel_y = 25; + unacidable = 1 }, /obj/structure/alien/weeds{ icon_state = "weeds1" @@ -3311,7 +3330,11 @@ /obj/structure/alien/weeds, /obj/structure/bed/nest, /obj/effect/decal/cleanable/blood/gibs, -/obj/item/clothing/mask/facehugger/impregnated, +/obj/item/clothing/mask/facehugger{ + icon_state = "facehugger_impregnated"; + item_state = "facehugger_impregnated"; + stat = 2 + }, /turf/open/floor/engine, /area/awaycontent/a2{ has_gravity = 1; @@ -3415,7 +3438,8 @@ /obj/machinery/door/poddoor/preopen{ desc = "A heavy duty blast door that opens mechanically. This one has been applied with an acid-proof coating."; id = "Awaylab"; - name = "Acid-Proof containment chamber blast door" + name = "Acid-Proof containment chamber blast door"; + unacidable = 1 }, /obj/structure/cable, /obj/structure/grille, @@ -3496,7 +3520,7 @@ /obj/structure/alien/weeds, /obj/structure/alien/weeds{ desc = "A large mottled egg."; - obj_integrity = 100; + health = 100; icon_state = "egg_hatched"; name = "egg" }, @@ -3605,7 +3629,7 @@ }, /obj/structure/alien/weeds{ desc = "A large mottled egg."; - obj_integrity = 100; + health = 100; icon_state = "egg_hatched"; name = "egg" }, @@ -3930,7 +3954,11 @@ /obj/structure/alien/weeds{ icon_state = "weeds1" }, -/obj/item/clothing/mask/facehugger/impregnated, +/obj/item/clothing/mask/facehugger{ + icon_state = "facehugger_impregnated"; + item_state = "facehugger_impregnated"; + stat = 2 + }, /obj/item/xenos_claw, /turf/open/floor/plasteel/floorgrime{ dir = 8; @@ -3993,7 +4021,8 @@ /obj/machinery/door/poddoor/preopen{ desc = "A heavy duty blast door that opens mechanically. This one has been applied with an acid-proof coating."; id = "Awaylab"; - name = "Acid-Proof containment chamber blast door" + name = "Acid-Proof containment chamber blast door"; + unacidable = 1 }, /obj/structure/grille, /obj/structure/window/reinforced/fulltile, @@ -4010,7 +4039,7 @@ }, /obj/structure/alien/weeds{ desc = "A large mottled egg."; - obj_integrity = 100; + health = 100; icon_state = "egg_hatched"; name = "egg" }, @@ -4024,7 +4053,11 @@ icon_state = "weeds1" }, /obj/structure/bed/nest, -/obj/item/clothing/mask/facehugger/impregnated, +/obj/item/clothing/mask/facehugger{ + icon_state = "facehugger_impregnated"; + item_state = "facehugger_impregnated"; + stat = 2 + }, /turf/open/floor/engine, /area/awaycontent/a2{ has_gravity = 1; @@ -4247,7 +4280,8 @@ /obj/machinery/atmospherics/pipe/simple/general/visible{ desc = "A one meter section of pipe. This one has been applied with an acid-proof coating."; dir = 4; - name = "Acid-Proof Pipe" + name = "Acid-Proof Pipe"; + unacidable = 1 }, /obj/item/stack/rods, /obj/item/stack/cable_coil{ @@ -4268,12 +4302,14 @@ /obj/machinery/door/poddoor/preopen{ desc = "A heavy duty blast door that opens mechanically. This one has been applied with an acid-proof coating."; id = "Awaylab"; - name = "Acid-Proof containment chamber blast door" + name = "Acid-Proof containment chamber blast door"; + unacidable = 1 }, /obj/machinery/atmospherics/pipe/simple/general/visible{ desc = "A one meter section of pipe. This one has been applied with an acid-proof coating."; dir = 4; - name = "Acid-Proof Pipe" + name = "Acid-Proof Pipe"; + unacidable = 1 }, /obj/item/stack/rods, /obj/item/stack/cable_coil{ @@ -4297,7 +4333,8 @@ /obj/machinery/atmospherics/pipe/simple/general/visible{ desc = "A one meter section of pipe. This one has been applied with an acid-proof coating."; dir = 4; - name = "Acid-Proof Pipe" + name = "Acid-Proof Pipe"; + unacidable = 1 }, /obj/structure/alien/weeds{ icon_state = "weeds1" @@ -4311,7 +4348,8 @@ /obj/machinery/atmospherics/pipe/simple/general/visible{ desc = "A one meter section of pipe. This one has been applied with an acid-proof coating."; dir = 4; - name = "Acid-Proof Pipe" + name = "Acid-Proof Pipe"; + unacidable = 1 }, /obj/structure/alien/weeds{ icon_state = "weeds1" @@ -4326,7 +4364,8 @@ /obj/machinery/atmospherics/pipe/simple/general/visible{ desc = "A one meter section of pipe. This one has been applied with an acid-proof coating."; dir = 4; - name = "Acid-Proof Pipe" + name = "Acid-Proof Pipe"; + unacidable = 1 }, /obj/structure/alien/weeds{ icon_state = "weeds1" @@ -4341,7 +4380,8 @@ /obj/machinery/atmospherics/pipe/simple/general/visible{ desc = "A one meter section of pipe. This one has been applied with an acid-proof coating."; dir = 4; - name = "Acid-Proof Pipe" + name = "Acid-Proof Pipe"; + unacidable = 1 }, /obj/structure/alien/weeds, /obj/structure/alien/resin/wall, @@ -4356,7 +4396,8 @@ dir = 8; icon_state = "on"; name = "Acid-Proof Air Injector"; - on = 1 + on = 1; + unacidable = 1 }, /obj/structure/alien/weeds, /turf/open/floor/engine, @@ -4626,7 +4667,8 @@ /obj/machinery/door/poddoor/preopen{ desc = "A heavy duty blast door that opens mechanically. This one has been applied with an acid-proof coating."; id = "Awaylab"; - name = "Acid-Proof containment chamber blast door" + name = "Acid-Proof containment chamber blast door"; + unacidable = 1 }, /obj/item/stack/cable_coil/cut{ amount = 1; @@ -4666,7 +4708,11 @@ "ge" = ( /obj/structure/alien/weeds, /obj/structure/bed/nest, -/obj/item/clothing/mask/facehugger/impregnated, +/obj/item/clothing/mask/facehugger{ + icon_state = "facehugger_impregnated"; + item_state = "facehugger_impregnated"; + stat = 2 + }, /turf/open/floor/engine, /area/awaycontent/a2{ has_gravity = 1; @@ -4843,7 +4889,8 @@ /obj/structure/disposalpipe/trunk{ desc = "An underfloor disposal pipe. This one has been applied with an acid-proof coating."; dir = 4; - name = "Acid-Proof disposal pipe" + name = "Acid-Proof disposal pipe"; + unacidable = 1 }, /obj/structure/alien/weeds, /turf/open/floor/plasteel/warning{ @@ -4862,12 +4909,14 @@ /obj/structure/disposalpipe/segment{ desc = "An underfloor disposal pipe. This one has been applied with an acid-proof coating."; dir = 4; - name = "Acid-Proof disposal pipe" + name = "Acid-Proof disposal pipe"; + unacidable = 1 }, /obj/machinery/door/poddoor/preopen{ desc = "A heavy duty blast door that opens mechanically. This one has been applied with an acid-proof coating."; id = "Awaylab"; - name = "Acid-Proof containment chamber blast door" + name = "Acid-Proof containment chamber blast door"; + unacidable = 1 }, /obj/structure/cable, /obj/structure/grille, @@ -4883,7 +4932,8 @@ /obj/structure/disposalpipe/segment{ desc = "An underfloor disposal pipe. This one has been applied with an acid-proof coating."; dir = 4; - name = "Acid-Proof disposal pipe" + name = "Acid-Proof disposal pipe"; + unacidable = 1 }, /obj/structure/alien/weeds, /obj/structure/alien/resin/wall, @@ -4897,7 +4947,8 @@ desc = "An underfloor disposal pipe. This one has been applied with an acid-proof coating."; dir = 2; icon_state = "pipe-c"; - name = "Acid-Proof disposal pipe" + name = "Acid-Proof disposal pipe"; + unacidable = 1 }, /obj/structure/alien/weeds{ icon_state = "weeds2" @@ -5011,7 +5062,7 @@ "gE" = ( /obj/structure/grille{ density = 0; - broken = 1; + destroyed = 1; icon_state = "brokengrille" }, /obj/item/stack/rods, @@ -5144,7 +5195,8 @@ /obj/machinery/door/poddoor/preopen{ desc = "A heavy duty blast door that opens mechanically. This one has been applied with an acid-proof coating."; id = "Awaylab"; - name = "Acid-Proof containment chamber blast door" + name = "Acid-Proof containment chamber blast door"; + unacidable = 1 }, /obj/structure/cable{ icon_state = "0-2"; @@ -5162,7 +5214,8 @@ "gM" = ( /obj/structure/disposalpipe/segment{ desc = "An underfloor disposal pipe. This one has been applied with an acid-proof coating."; - name = "Acid-Proof disposal pipe" + name = "Acid-Proof disposal pipe"; + unacidable = 1 }, /obj/structure/alien/weeds{ icon_state = "weeds1" @@ -5369,12 +5422,14 @@ /obj/structure/disposaloutlet{ desc = "An outlet for the pneumatic disposal system. This one has been applied with an acid-proof coating."; dir = 1; - name = "Acid-Proof disposal outlet" + name = "Acid-Proof disposal outlet"; + unacidable = 1 }, /obj/structure/disposalpipe/trunk{ desc = "An underfloor disposal pipe. This one has been applied with an acid-proof coating."; dir = 1; - name = "Acid-Proof disposal pipe" + name = "Acid-Proof disposal pipe"; + unacidable = 1 }, /obj/structure/alien/weeds{ icon_state = "weeds1" @@ -5410,7 +5465,8 @@ id = "awayxenobio"; name = "Acid-Proof mounted igniter"; pixel_x = 0; - pixel_y = -25 + pixel_y = -25; + unacidable = 1 }, /obj/structure/alien/weeds{ icon_state = "weeds2" @@ -5615,7 +5671,7 @@ name = "research director's locker"; req_access_txt = "201" }, -/obj/item/weapon/storage/backpack/satchel/tox, +/obj/item/weapon/storage/backpack/satchel_tox, /obj/item/clothing/gloves/color/latex, /turf/open/floor/plasteel/cafeteria{ dir = 5 @@ -5712,7 +5768,7 @@ "hx" = ( /obj/structure/grille{ density = 0; - broken = 1; + destroyed = 1; icon_state = "brokengrille" }, /obj/item/stack/rods, @@ -5754,7 +5810,7 @@ pixel_x = -5; pixel_y = -2 }, -/obj/item/bodypart/l_arm/robot, +/obj/item/robot_parts/l_arm, /turf/open/floor/plasteel/white{ heat_capacity = 1e+006 }, @@ -5937,7 +5993,8 @@ desc = "A heavy duty blast door that opens mechanically. This one has been applied with an acid-proof coating."; id = "Awaybiohazard"; layer = 2.9; - name = "Acid-Proof biohazard containment door" + name = "Acid-Proof biohazard containment door"; + unacidable = 1 }, /turf/open/floor/plasteel/delivery{ heat_capacity = 1e+006; @@ -6262,7 +6319,7 @@ desc = "Oh no, seven years of bad luck!"; icon_state = "mirror_broke"; pixel_x = 28; - broken = 1 + shattered = 1 }, /turf/open/floor/plasteel/freezer{ heat_capacity = 1e+006 @@ -8024,7 +8081,7 @@ /obj/item/stack/rods, /obj/structure/grille{ density = 0; - broken = 1; + destroyed = 1; icon_state = "brokengrille" }, /obj/item/stack/rods, @@ -8042,7 +8099,7 @@ "kQ" = ( /obj/structure/grille{ density = 0; - broken = 1; + destroyed = 1; icon_state = "brokengrille" }, /obj/item/stack/rods, @@ -8212,13 +8269,19 @@ initial_gas_mix = "co2=48.7;n2=13.2;o2=32.4;TEMP=251"; heat_capacity = 1e+006 }, -/turf/closed/wall/mineral/titanium/interior, +/turf/closed/wall/shuttle{ + icon_state = "swall_f6"; + dir = 2 + }, /area/awaycontent/a1{ has_gravity = 1; name = "MO19 Arrivals" }) "ld" = ( -/turf/closed/wall/mineral/titanium, +/turf/closed/wall/shuttle{ + icon_state = "swall12"; + dir = 2 + }, /area/awaycontent/a1{ has_gravity = 1; name = "MO19 Arrivals" @@ -8716,7 +8779,7 @@ /obj/effect/decal/remains/human{ desc = "They look like human remains. The skeleton is sitting upright with its legs tucked in and hands still holding onto its arms." }, -/obj/item/weapon/gun/ballistic/shotgun/sc_pump, +/obj/item/weapon/gun/projectile/shotgun/sc_pump, /turf/open/floor/plasteel/showroomfloor{ heat_capacity = 1e+006; temperature = 273.15 @@ -8726,8 +8789,11 @@ name = "MO19 Arrivals" }) "lV" = ( -/turf/open/floor/mineral/titanium/blue, -/turf/closed/wall/mineral/titanium/interior, +/turf/open/floor/plasteel/shuttle, +/turf/closed/wall/shuttle{ + icon_state = "swall_f9"; + dir = 2 + }, /area/awaycontent/a1{ has_gravity = 1; name = "MO19 Arrivals" @@ -8735,7 +8801,7 @@ "lW" = ( /obj/structure/table, /obj/item/weapon/storage/lockbox, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/awaycontent/a1{ has_gravity = 1; name = "MO19 Arrivals" @@ -8743,7 +8809,7 @@ "lX" = ( /obj/structure/table, /obj/item/device/radio/off, -/turf/open/floor/mineral/titanium/yellow, +/turf/open/floor/plasteel/shuttle/yellow, /area/awaycontent/a1{ has_gravity = 1; name = "MO19 Arrivals" @@ -8762,7 +8828,7 @@ pixel_x = -32; pixel_y = 0 }, -/turf/open/floor/mineral/titanium/yellow, +/turf/open/floor/plasteel/shuttle/yellow, /area/awaycontent/a1{ has_gravity = 1; name = "MO19 Arrivals" @@ -8774,13 +8840,13 @@ /obj/machinery/light/small{ dir = 1 }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/awaycontent/a1{ has_gravity = 1; name = "MO19 Arrivals" }) "mb" = ( -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/awaycontent/a1{ has_gravity = 1; name = "MO19 Arrivals" @@ -8789,7 +8855,7 @@ /obj/structure/chair{ dir = 8 }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/awaycontent/a1{ has_gravity = 1; name = "MO19 Arrivals" @@ -8802,14 +8868,14 @@ /obj/machinery/light/small{ dir = 1 }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/awaycontent/a1{ has_gravity = 1; name = "MO19 Arrivals" }) "me" = ( /obj/structure/closet/emcloset, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/awaycontent/a1{ has_gravity = 1; name = "MO19 Arrivals" @@ -8881,7 +8947,7 @@ }) "ml" = ( /obj/structure/table, -/obj/item/weapon/storage/backpack/satchel/leather/withwallet, +/obj/item/weapon/storage/backpack/satchel/withwallet, /turf/open/floor/plasteel/black, /area/awaycontent/a1{ has_gravity = 1; @@ -8947,7 +9013,7 @@ "mp" = ( /obj/structure/table, /obj/item/weapon/storage/box/donkpockets, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/awaycontent/a1{ has_gravity = 1; name = "MO19 Arrivals" @@ -8959,13 +9025,13 @@ /obj/machinery/light/small{ dir = 4 }, -/turf/open/floor/mineral/titanium/yellow, +/turf/open/floor/plasteel/shuttle/yellow, /area/awaycontent/a1{ has_gravity = 1; name = "MO19 Arrivals" }) "mr" = ( -/turf/open/floor/mineral/titanium/yellow, +/turf/open/floor/plasteel/shuttle/yellow, /area/awaycontent/a1{ has_gravity = 1; name = "MO19 Arrivals" @@ -8974,7 +9040,7 @@ /obj/effect/landmark{ name = "awaystart" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/awaycontent/a1{ has_gravity = 1; name = "MO19 Arrivals" @@ -8986,7 +9052,7 @@ /obj/effect/landmark{ name = "awaystart" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/awaycontent/a1{ has_gravity = 1; name = "MO19 Arrivals" @@ -8998,7 +9064,7 @@ /obj/structure/window/reinforced{ dir = 1 }, -/turf/open/floor/mineral/titanium/yellow, +/turf/open/floor/plasteel/shuttle/yellow, /area/awaycontent/a1{ has_gravity = 1; name = "MO19 Arrivals" @@ -9140,16 +9206,16 @@ }) "mG" = ( /obj/machinery/computer/shuttle, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/awaycontent/a1{ has_gravity = 1; name = "MO19 Arrivals" }) "mH" = ( -/obj/machinery/door/airlock/titanium{ +/obj/machinery/door/airlock/shuttle{ name = "Shuttle Cockpit" }, -/turf/open/floor/mineral/titanium/yellow, +/turf/open/floor/plasteel/shuttle/yellow, /area/awaycontent/a1{ has_gravity = 1; name = "MO19 Arrivals" @@ -9158,7 +9224,7 @@ /obj/effect/landmark{ name = "awaystart" }, -/turf/open/floor/mineral/titanium/yellow, +/turf/open/floor/plasteel/shuttle/yellow, /area/awaycontent/a1{ has_gravity = 1; name = "MO19 Arrivals" @@ -9173,16 +9239,16 @@ /obj/effect/landmark{ name = "awaystart" }, -/turf/open/floor/mineral/titanium/yellow, +/turf/open/floor/plasteel/shuttle/yellow, /area/awaycontent/a1{ has_gravity = 1; name = "MO19 Arrivals" }) "mK" = ( -/obj/machinery/door/airlock/titanium{ +/obj/machinery/door/airlock/shuttle{ name = "Shuttle Airlock" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/awaycontent/a1{ has_gravity = 1; name = "MO19 Arrivals" @@ -9344,7 +9410,7 @@ /obj/structure/table, /obj/item/weapon/clipboard, /obj/item/weapon/pen, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/awaycontent/a1{ has_gravity = 1; name = "MO19 Arrivals" @@ -9354,7 +9420,7 @@ /obj/machinery/light/small{ dir = 4 }, -/turf/open/floor/mineral/titanium/yellow, +/turf/open/floor/plasteel/shuttle/yellow, /area/awaycontent/a1{ has_gravity = 1; name = "MO19 Arrivals" @@ -9373,7 +9439,7 @@ dir = 4 }, /obj/structure/window/reinforced, -/turf/open/floor/mineral/titanium/yellow, +/turf/open/floor/plasteel/shuttle/yellow, /area/awaycontent/a1{ has_gravity = 1; name = "MO19 Arrivals" @@ -9456,7 +9522,7 @@ }) "nf" = ( /obj/structure/filingcabinet, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/awaycontent/a1{ has_gravity = 1; name = "MO19 Arrivals" @@ -9466,7 +9532,7 @@ dir = 8 }, /obj/machinery/light/small, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/awaycontent/a1{ has_gravity = 1; name = "MO19 Arrivals" @@ -9477,7 +9543,7 @@ pixel_y = -30 }, /obj/machinery/light/small, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/awaycontent/a1{ has_gravity = 1; name = "MO19 Arrivals" @@ -9611,7 +9677,7 @@ "ns" = ( /obj/structure/grille{ density = 0; - broken = 1; + destroyed = 1; icon_state = "brokengrille" }, /obj/item/stack/rods, @@ -9680,7 +9746,7 @@ }, /obj/structure/table, /obj/structure/bedsheetbin, -/obj/item/clothing/neck/tie/black, +/obj/item/clothing/tie/black, /obj/item/clothing/under/lawyer/blacksuit, /turf/open/floor/plasteel/barber{ initial_gas_mix = "co2=48.7;n2=13.2;o2=32.4;TEMP=251"; @@ -9769,7 +9835,7 @@ "nD" = ( /obj/structure/grille{ density = 0; - broken = 1; + destroyed = 1; icon_state = "brokengrille" }, /obj/item/stack/rods, @@ -9876,7 +9942,7 @@ name = "MO19 Arrivals" }) "nJ" = ( -/obj/effect/decal/cleanable/cobweb/cobweb2, +/obj/effect/decal/cleanable/cobweb2, /turf/open/floor/plating{ broken = 1; heat_capacity = 1e+006; @@ -10182,7 +10248,7 @@ }) "of" = ( /obj/item/weapon/shard, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/awaycontent/a3{ always_unpowered = 1; ambientsounds = list('sound/ambience/ambimine.ogg'); @@ -10197,7 +10263,7 @@ /obj/item/weapon/shard{ icon_state = "medium" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/awaycontent/a3{ always_unpowered = 1; ambientsounds = list('sound/ambience/ambimine.ogg'); @@ -10212,7 +10278,7 @@ /obj/item/weapon/shard{ icon_state = "small" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/awaycontent/a3{ always_unpowered = 1; ambientsounds = list('sound/ambience/ambimine.ogg'); @@ -10224,7 +10290,7 @@ poweralm = 0 }) "oi" = ( -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/awaycontent/a3{ always_unpowered = 1; ambientsounds = list('sound/ambience/ambimine.ogg'); @@ -10238,10 +10304,10 @@ "oj" = ( /obj/structure/grille{ density = 0; - broken = 1; + destroyed = 1; icon_state = "brokengrille" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/awaycontent/a3{ always_unpowered = 1; ambientsounds = list('sound/ambience/ambimine.ogg'); @@ -10254,7 +10320,7 @@ }) "ok" = ( /obj/item/stack/rods, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/awaycontent/a3{ always_unpowered = 1; ambientsounds = list('sound/ambience/ambimine.ogg'); @@ -10267,7 +10333,7 @@ }) "ol" = ( /obj/item/stack/cable_coil, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/awaycontent/a3{ always_unpowered = 1; ambientsounds = list('sound/ambience/ambimine.ogg'); @@ -10282,7 +10348,7 @@ /obj/item/stack/cable_coil{ amount = 5 }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/awaycontent/a3{ always_unpowered = 1; ambientsounds = list('sound/ambience/ambimine.ogg'); @@ -10299,7 +10365,7 @@ icon_state = "coil_red2"; item_state = "coil_red2" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/awaycontent/a3{ always_unpowered = 1; ambientsounds = list('sound/ambience/ambimine.ogg'); @@ -10316,7 +10382,7 @@ icon_state = "coil_red1"; item_state = "coil_red1" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/awaycontent/a3{ always_unpowered = 1; ambientsounds = list('sound/ambience/ambimine.ogg'); @@ -10476,7 +10542,7 @@ poweralm = 0 }) "oy" = ( -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/awaycontent/a3{ always_unpowered = 1; ambientsounds = list('sound/ambience/ambimine.ogg'); @@ -10731,7 +10797,7 @@ poweralm = 0 }) "oN" = ( -/turf/open/floor/mineral/titanium/yellow, +/turf/open/floor/plasteel/shuttle/yellow, /area/awaycontent/a3{ always_unpowered = 1; ambientsounds = list('sound/ambience/ambimine.ogg'); @@ -35947,7 +36013,7 @@ lc lA lA lA -lc +nd ba ba ba @@ -36204,8 +36270,8 @@ lV mp mG mV -lV -lc +ne +nd ba ba ba @@ -36970,13 +37036,13 @@ jS eI ba ba -ld -ld -ld +ly +lY +lC mH -ld -ld -ld +mX +lY +nn ba ba ba @@ -37484,13 +37550,13 @@ fQ eJ hI ba -ld +lz ma mc mr mc ng -ld +lz ba ba ba @@ -37998,13 +38064,13 @@ jU ku io ba -ld +lB mc mt mJ mt mc -ld +lB ba ba ba @@ -38255,13 +38321,13 @@ jU kv io ba -ld +lz md ms mI ms nh -ld +lz ba ba ba @@ -38769,14 +38835,14 @@ jV kw hI lc -ld +lC me mb mr mb me -ld -lc +mX +nd ba ba ba @@ -39282,15 +39348,15 @@ jr jW kv io -lc +le lE mf -ld +lC mK -ld +mX lE mf -lc +nv ba ba ba diff --git a/_maps/RandomZLevels/research.dmm b/_maps/RandomZLevels/research.dmm index b3a85a0887..be9f8f1848 100644 --- a/_maps/RandomZLevels/research.dmm +++ b/_maps/RandomZLevels/research.dmm @@ -20,7 +20,7 @@ /area/awaymission/research/exterior) "ag" = ( /turf/open/floor/plating/asteroid/airless, -/turf/closed/wall/mineral/plastitanium{ +/turf/closed/wall/shuttle{ dir = 8; icon_state = "diagonalWall3" }, @@ -45,13 +45,15 @@ /area/awaymission/research/interior/engineering) "ak" = ( /turf/open/floor/plating/asteroid/airless, -/turf/closed/wall/mineral/plastitanium{ +/turf/closed/wall/shuttle{ dir = 1; icon_state = "diagonalWall3" }, /area/awaymission/research/interior/engineering) "al" = ( -/turf/closed/wall/mineral/plastitanium, +/turf/closed/wall/shuttle{ + icon_state = "wall3" + }, /area/awaymission/research/interior/engineering) "am" = ( /obj/structure/window/reinforced, @@ -239,7 +241,7 @@ /turf/open/floor/plasteel{ icon_state = "damaged4" }, -/turf/closed/wall/mineral/plastitanium{ +/turf/closed/wall/shuttle{ icon_state = "diagonalWall3" }, /area/awaymission/research/interior/engineering) @@ -251,7 +253,7 @@ /turf/open/floor/plasteel{ icon_state = "damaged1" }, -/turf/closed/wall/mineral/plastitanium{ +/turf/closed/wall/shuttle{ dir = 4; icon_state = "diagonalWall3" }, @@ -319,7 +321,7 @@ /turf/open/floor/plasteel{ icon_state = "damaged5" }, -/turf/closed/wall/mineral/plastitanium{ +/turf/closed/wall/shuttle{ icon_state = "diagonalWall3" }, /area/awaymission/research/interior/engineering) @@ -339,7 +341,7 @@ /turf/open/floor/plasteel{ icon_state = "damaged3" }, -/turf/closed/wall/mineral/plastitanium{ +/turf/closed/wall/shuttle{ dir = 4; icon_state = "diagonalWall3" }, @@ -1433,8 +1435,8 @@ /area/awaymission/research/interior/security) "dU" = ( /obj/structure/rack, -/obj/item/weapon/gun/ballistic/automatic/wt550, -/obj/item/weapon/gun/ballistic/automatic/wt550, +/obj/item/weapon/gun/projectile/automatic/wt550, +/obj/item/weapon/gun/projectile/automatic/wt550, /obj/item/ammo_box/magazine/wt550m9, /obj/item/ammo_box/magazine/wt550m9, /turf/open/floor/plasteel/red, @@ -1563,8 +1565,8 @@ /area/awaymission/research/interior/security) "ep" = ( /obj/structure/rack, -/obj/item/weapon/gun/ballistic/automatic/pistol/m1911, -/obj/item/weapon/gun/ballistic/automatic/pistol/m1911, +/obj/item/weapon/gun/projectile/automatic/pistol/m1911, +/obj/item/weapon/gun/projectile/automatic/pistol/m1911, /obj/item/ammo_box/magazine/m45, /obj/item/ammo_box/magazine/m45, /turf/open/floor/plasteel/red, @@ -3531,10 +3533,10 @@ "jp" = ( /obj/structure/barricade/wooden{ desc = "A wooden table hastely flipped over for cover."; - obj_integrity = 55; + health = 55; icon = 'icons/obj/smooth_structures/wood_table.dmi'; icon_state = "wood_table"; - max_integrity = 55; + maxhealth = 55; name = "flipped table" }, /turf/open/floor/plasteel/yellowsiding{ @@ -3648,10 +3650,10 @@ "jG" = ( /obj/structure/barricade/wooden{ desc = "A wooden table hastely flipped over for cover."; - obj_integrity = 55; + health = 55; icon = 'icons/obj/smooth_structures/wood_table.dmi'; icon_state = "wood_table"; - max_integrity = 55; + maxhealth = 55; name = "flipped table" }, /turf/open/floor/plasteel, @@ -3779,10 +3781,10 @@ "kb" = ( /obj/structure/barricade/wooden{ desc = "A wooden table hastely flipped over for cover."; - obj_integrity = 55; + health = 55; icon = 'icons/obj/smooth_structures/wood_table.dmi'; icon_state = "wood_table"; - max_integrity = 55; + maxhealth = 55; name = "flipped table" }, /turf/open/floor/plasteel/yellowsiding, @@ -3916,7 +3918,7 @@ /turf/open/floor/wood, /area/awaymission/research/interior/dorm) "kt" = ( -/obj/item/weapon/gun/ballistic/automatic/pistol/m1911, +/obj/item/weapon/gun/projectile/automatic/pistol/m1911, /turf/open/floor/plasteel, /area/awaymission/research/interior/dorm) "ku" = ( @@ -4557,7 +4559,10 @@ /turf/open/floor/plating/asteroid, /area/awaymission/research/exterior) "me" = ( -/turf/closed/wall/mineral/titanium, +/turf/closed/wall/shuttle{ + icon_state = "swall12"; + dir = 2 + }, /area/awaymission/research/exterior) "mf" = ( /turf/open/floor/plating/asteroid/airless, @@ -4566,7 +4571,11 @@ icon_state = "propulsion"; dir = 8 }, -/turf/closed/wall/mineral/titanium/interior, +/turf/closed/wall/shuttle{ + dir = 3; + icon_state = "swall_f10"; + layer = 2 + }, /area/awaymission/research/exterior) "mg" = ( /obj/structure/closet/emcloset, @@ -4645,7 +4654,7 @@ /turf/open/floor/plasteel/shuttle, /area/awaymission/research/exterior) "mt" = ( -/obj/machinery/door/airlock/titanium{ +/obj/machinery/door/airlock/shuttle{ name = "Escape Pod Airlock" }, /turf/open/floor/plasteel/shuttle, @@ -4676,7 +4685,10 @@ /area/awaymission/research/interior/escapepods) "my" = ( /turf/open/floor/plating/asteroid/airless, -/turf/closed/wall/mineral/titanium/interior, +/turf/closed/wall/shuttle{ + icon_state = "swall_f5"; + dir = 2 + }, /area/awaymission/research/exterior) "mz" = ( /turf/open/floor/plating/asteroid/airless, @@ -4907,7 +4919,7 @@ /turf/open/floor/mineral/plasma, /area/space) "nd" = ( -/obj/structure/healingfountain, +/obj/structure/divine/healingfountain/anyone, /turf/open/floor/mineral/plasma, /area/space) "ne" = ( @@ -33339,7 +33351,7 @@ ad ad mf mt -mf +mz ae ae ae diff --git a/_maps/RandomZLevels/snowdin.dmm b/_maps/RandomZLevels/snowdin.dmm index 91f9619b9f..0ff2a5874e 100644 --- a/_maps/RandomZLevels/snowdin.dmm +++ b/_maps/RandomZLevels/snowdin.dmm @@ -129,7 +129,7 @@ }, /area/awaymission/snowdin/base) "au" = ( -/obj/item/weapon/gun/ballistic/shotgun/boltaction, +/obj/item/weapon/gun/projectile/shotgun/boltaction, /obj/item/ammo_box/a762, /obj/item/ammo_box/a762, /obj/structure/closet/secure_closet{ @@ -363,9 +363,9 @@ /area/awaymission/snowdin) "aY" = ( /obj/structure/guncase/shotgun, -/obj/item/weapon/gun/ballistic/shotgun/automatic, -/obj/item/weapon/gun/ballistic/shotgun/automatic, -/obj/item/weapon/gun/ballistic/shotgun/automatic, +/obj/item/weapon/gun/projectile/shotgun/automatic, +/obj/item/weapon/gun/projectile/shotgun/automatic, +/obj/item/weapon/gun/projectile/shotgun/automatic, /turf/open/floor/plating{ baseturf = /turf/open/floor/plating/asteroid/snow }, @@ -1647,37 +1647,37 @@ }, /area/awaymission/snowdin/dungeon1) "ek" = ( -/obj/structure/spider/stickyweb, -/obj/structure/spider/stickyweb, +/obj/effect/spider/stickyweb, +/obj/effect/spider/stickyweb, /turf/open/floor/plating/asteroid/snow{ temperature = 140 }, /area/awaymission/snowdin/dungeon1) "el" = ( -/obj/structure/spider/stickyweb, +/obj/effect/spider/stickyweb, /obj/effect/spawner/lootdrop/snowdin/dungeonheavy, /turf/open/floor/plating/asteroid/snow{ temperature = 140 }, /area/awaymission/snowdin/dungeon1) "em" = ( -/obj/structure/spider/stickyweb, +/obj/effect/spider/stickyweb, /mob/living/simple_animal/hostile/poison/giant_spider/hunter/ice, /turf/closed/wall/mineral/snow, /area/awaymission/snowdin/dungeon1) "en" = ( -/obj/structure/spider/stickyweb, +/obj/effect/spider/stickyweb, /mob/living/simple_animal/hostile/poison/giant_spider/nurse/ice, /turf/open/floor/plating/asteroid/snow{ temperature = 140 }, /area/awaymission/snowdin/dungeon1) "eo" = ( -/obj/structure/spider/stickyweb, +/obj/effect/spider/stickyweb, /turf/open/floor/plating/ice/colder, /area/awaymission/snowdin/dungeon1) "ep" = ( -/obj/structure/spider/stickyweb, +/obj/effect/spider/stickyweb, /turf/open/floor/plating/asteroid/snow{ temperature = 140 }, @@ -1686,11 +1686,11 @@ /turf/closed/wall/mineral/snow, /area/awaymission/snowdin/dungeon1) "er" = ( -/obj/structure/spider/stickyweb, +/obj/effect/spider/stickyweb, /turf/closed/wall/mineral/snow, /area/awaymission/snowdin/dungeon1) "es" = ( -/obj/structure/spider/stickyweb, +/obj/effect/spider/stickyweb, /obj/structure/barricade/wooden, /turf/open/floor/plating/asteroid/snow{ temperature = 140 @@ -1712,7 +1712,7 @@ }, /area/awaymission/snowdin/dungeon1) "ew" = ( -/obj/structure/spider/stickyweb, +/obj/effect/spider/stickyweb, /mob/living/simple_animal/hostile/poison/giant_spider/hunter/ice, /turf/open/floor/plating/asteroid/snow{ temperature = 140 @@ -2423,7 +2423,7 @@ name = "Contraband Locker"; req_access_txt = "3" }, -/obj/item/weapon/gun/ballistic/automatic/speargun, +/obj/item/weapon/gun/projectile/automatic/speargun, /obj/item/weapon/twohanded/spear, /obj/item/weapon/twohanded/spear, /obj/item/weapon/twohanded/spear, @@ -2721,7 +2721,7 @@ }, /area/awaymission/snowdin/post) "hm" = ( -/obj/item/weapon/gun/ballistic/shotgun/boltaction, +/obj/item/weapon/gun/projectile/shotgun/boltaction, /obj/item/ammo_box/a762, /obj/item/ammo_box/a762, /obj/structure/closet/secure_closet{ @@ -3080,7 +3080,7 @@ }, /area/awaymission/snowdin/sekret) "ir" = ( -/obj/item/weapon/gun/ballistic/shotgun/boltaction, +/obj/item/weapon/gun/projectile/shotgun/boltaction, /obj/item/ammo_box/a762, /obj/item/ammo_box/a762, /obj/structure/closet/secure_closet{ @@ -3893,7 +3893,7 @@ /area/awaymission/snowdin/sekret) "ku" = ( /obj/structure/rack, -/obj/item/weapon/gun/ballistic/automatic/speargun, +/obj/item/weapon/gun/projectile/automatic/speargun, /obj/item/weapon/twohanded/spear, /obj/item/weapon/twohanded/spear, /turf/open/floor/plasteel/darkwarning{ @@ -3915,7 +3915,7 @@ /area/awaymission/snowdin/sekret) "kx" = ( /obj/structure/rack, -/obj/item/weapon/gun/ballistic/automatic/l6_saw/unrestricted, +/obj/item/weapon/gun/projectile/automatic/l6_saw/unrestricted, /obj/machinery/light/small{ dir = 4 }, @@ -3997,7 +3997,7 @@ }, /area/awaymission/snowdin/sekret) "kH" = ( -/obj/item/weapon/gun/ballistic/shotgun/boltaction, +/obj/item/weapon/gun/projectile/shotgun/boltaction, /obj/item/ammo_box/a762, /obj/item/ammo_box/a762, /obj/structure/closet/secure_closet{ @@ -4015,8 +4015,8 @@ /area/awaymission/snowdin/sekret) "kI" = ( /obj/structure/rack, -/obj/item/weapon/gun/ballistic/automatic/c20r/unrestricted, -/obj/item/weapon/gun/ballistic/automatic/c20r/unrestricted, +/obj/item/weapon/gun/projectile/automatic/c20r/unrestricted, +/obj/item/weapon/gun/projectile/automatic/c20r/unrestricted, /obj/machinery/light/small{ dir = 8 }, @@ -4041,7 +4041,7 @@ /area/awaymission/snowdin/sekret) "kL" = ( /obj/structure/rack, -/obj/item/weapon/gun/ballistic/revolver, +/obj/item/weapon/gun/projectile/revolver, /obj/machinery/light/small{ dir = 4 }, @@ -4089,8 +4089,8 @@ /area/awaymission/snowdin/sekret) "kS" = ( /obj/structure/rack, -/obj/item/weapon/gun/ballistic/automatic/mini_uzi, -/obj/item/weapon/gun/ballistic/automatic/mini_uzi, +/obj/item/weapon/gun/projectile/automatic/mini_uzi, +/obj/item/weapon/gun/projectile/automatic/mini_uzi, /turf/open/floor/plasteel/darkwarning{ tag = "icon-warndark (SOUTHWEST)"; dir = 10; @@ -4099,8 +4099,8 @@ /area/awaymission/snowdin/sekret) "kT" = ( /obj/structure/rack, -/obj/item/weapon/gun/ballistic/automatic/shotgun/bulldog/unrestricted, -/obj/item/weapon/gun/ballistic/automatic/shotgun/bulldog/unrestricted, +/obj/item/weapon/gun/projectile/automatic/shotgun/bulldog/unrestricted, +/obj/item/weapon/gun/projectile/automatic/shotgun/bulldog/unrestricted, /turf/open/floor/plasteel/darkwarning{ tag = "icon-warndark (SOUTHEAST)"; dir = 6; @@ -4467,7 +4467,7 @@ }, /area/awaymission/snowdin) "lN" = ( -/obj/item/weapon/gun/ballistic/automatic/pistol, +/obj/item/weapon/gun/projectile/automatic/pistol, /turf/open/floor/plasteel/shuttle/red{ baseturf = /turf/open/floor/plating/asteroid/snow; temperature = 180 @@ -4573,7 +4573,7 @@ /area/awaymission/snowdin/sekret) "ma" = ( /obj/structure/table/wood, -/obj/item/weapon/gun/ballistic/automatic/c20r/toy, +/obj/item/weapon/gun/projectile/automatic/c20r/toy, /turf/open/floor/wood{ baseturf = /turf/open/floor/plating/asteroid/snow }, @@ -5198,7 +5198,7 @@ /area/awaymission/snowdin/sekret) "nx" = ( /obj/structure/table/reinforced, -/obj/item/weapon/gun/ballistic/automatic/pistol, +/obj/item/weapon/gun/projectile/automatic/pistol, /turf/open/floor/plasteel{ baseturf = /turf/open/floor/plating/asteroid/snow; wet = 0 @@ -5216,7 +5216,7 @@ /area/awaymission/snowdin/sekret) "nz" = ( /obj/structure/table/reinforced, -/obj/item/weapon/gun/ballistic/shotgun/automatic/combat, +/obj/item/weapon/gun/projectile/shotgun/automatic/combat, /turf/open/floor/plasteel{ baseturf = /turf/open/floor/plating/asteroid/snow; wet = 0 diff --git a/_maps/RandomZLevels/spacebattle.dmm b/_maps/RandomZLevels/spacebattle.dmm index 1d097a115d..93b2be2c66 100644 --- a/_maps/RandomZLevels/spacebattle.dmm +++ b/_maps/RandomZLevels/spacebattle.dmm @@ -7,7 +7,7 @@ /area/space) "ac" = ( /turf/open/space, -/turf/closed/wall/mineral/plastitanium{ +/turf/closed/wall/shuttle{ dir = 8; icon_state = "diagonalWall3" }, @@ -35,13 +35,15 @@ /area/awaymission/spacebattle/syndicate2) "ag" = ( /turf/open/space, -/turf/closed/wall/mineral/plastitanium{ +/turf/closed/wall/shuttle{ dir = 1; icon_state = "diagonalWall3" }, /area/awaymission/spacebattle/syndicate2) "ah" = ( -/turf/closed/wall/mineral/plastitanium, +/turf/closed/wall/shuttle{ + icon_state = "wall3" + }, /area/awaymission/spacebattle/syndicate2) "ai" = ( /obj/structure/shuttle/engine/heater{ @@ -79,7 +81,7 @@ /area/awaymission/spacebattle/syndicate2) "ap" = ( /mob/living/simple_animal/hostile/syndicate/ranged{ - loot = list(/obj/effect/mob_spawn/human/corpse/syndicatesoldier,/obj/item/weapon/gun/ballistic/automatic/c20r,/obj/item/weapon/shield/energy) + loot = list(/obj/effect/mob_spawn/human/corpse/syndicatesoldier,/obj/item/weapon/gun/projectile/automatic/c20r,/obj/item/weapon/shield/energy) }, /turf/open/floor/plasteel/shuttle/red/syndicate, /area/awaymission/spacebattle/syndicate2) @@ -99,7 +101,7 @@ /area/awaymission/spacebattle/syndicate2) "at" = ( /obj/structure/table/reinforced, -/obj/item/weapon/gun/ballistic/automatic/c20r, +/obj/item/weapon/gun/projectile/automatic/c20r, /turf/open/floor/plasteel/shuttle/red/syndicate, /area/awaymission/spacebattle/syndicate2) "au" = ( @@ -110,7 +112,7 @@ /area/awaymission/spacebattle/syndicate2) "av" = ( /turf/open/space, -/turf/closed/wall/mineral/plastitanium{ +/turf/closed/wall/shuttle{ dir = 8; icon_state = "diagonalWall3" }, @@ -138,18 +140,20 @@ /area/awaymission/spacebattle/syndicate3) "az" = ( /turf/open/space, -/turf/closed/wall/mineral/plastitanium{ +/turf/closed/wall/shuttle{ dir = 1; icon_state = "diagonalWall3" }, /area/awaymission/spacebattle/syndicate3) "aA" = ( /obj/structure/table/reinforced, -/obj/item/weapon/gun/ballistic/automatic/pistol, +/obj/item/weapon/gun/projectile/automatic/pistol, /turf/open/floor/plasteel/shuttle/red/syndicate, /area/awaymission/spacebattle/syndicate2) "aB" = ( -/turf/closed/wall/mineral/plastitanium, +/turf/closed/wall/shuttle{ + icon_state = "wall3" + }, /area/awaymission/spacebattle/syndicate3) "aC" = ( /obj/structure/shuttle/engine/heater{ @@ -168,7 +172,7 @@ /area/awaymission/spacebattle/syndicate3) "aF" = ( /turf/open/space, -/turf/closed/wall/mineral/plastitanium{ +/turf/closed/wall/shuttle{ icon_state = "diagonalWall3" }, /area/awaymission/spacebattle/syndicate2) @@ -181,7 +185,7 @@ /area/awaymission/spacebattle/syndicate2) "aH" = ( /turf/open/space, -/turf/closed/wall/mineral/plastitanium{ +/turf/closed/wall/shuttle{ dir = 4; icon_state = "diagonalWall3" }, @@ -201,7 +205,7 @@ /area/awaymission/spacebattle/syndicate2) "aL" = ( /turf/open/floor/plasteel/shuttle/red/syndicate, -/turf/closed/wall/mineral/plastitanium{ +/turf/closed/wall/shuttle{ dir = 8; icon_state = "diagonalWall3" }, @@ -212,14 +216,14 @@ /area/awaymission/spacebattle/syndicate2) "aN" = ( /turf/open/floor/plasteel/shuttle/red/syndicate, -/turf/closed/wall/mineral/plastitanium{ +/turf/closed/wall/shuttle{ dir = 1; icon_state = "diagonalWall3" }, /area/awaymission/spacebattle/syndicate2) "aO" = ( /turf/open/space, -/turf/closed/wall/mineral/plastitanium{ +/turf/closed/wall/shuttle{ dir = 8; icon_state = "diagonalWall3" }, @@ -247,7 +251,7 @@ /area/awaymission/spacebattle/syndicate1) "aS" = ( /turf/open/space, -/turf/closed/wall/mineral/plastitanium{ +/turf/closed/wall/shuttle{ dir = 1; icon_state = "diagonalWall3" }, @@ -257,7 +261,9 @@ /turf/open/floor/plasteel/shuttle/red/syndicate, /area/awaymission/spacebattle/syndicate3) "aU" = ( -/turf/closed/wall/mineral/plastitanium, +/turf/closed/wall/shuttle{ + icon_state = "wall3" + }, /area/awaymission/spacebattle/syndicate1) "aV" = ( /obj/structure/shuttle/engine/heater{ @@ -387,7 +393,7 @@ /area/awaymission/spacebattle/syndicate1) "bq" = ( /turf/open/space, -/turf/closed/wall/mineral/plastitanium{ +/turf/closed/wall/shuttle{ icon_state = "diagonalWall3" }, /area/awaymission/spacebattle/syndicate3) @@ -397,7 +403,7 @@ /area/awaymission/spacebattle/syndicate3) "bs" = ( /turf/open/space, -/turf/closed/wall/mineral/plastitanium{ +/turf/closed/wall/shuttle{ dir = 4; icon_state = "diagonalWall3" }, @@ -413,14 +419,14 @@ /area/awaymission/spacebattle/syndicate3) "bv" = ( /turf/open/floor/plasteel/shuttle/red/syndicate, -/turf/closed/wall/mineral/plastitanium{ +/turf/closed/wall/shuttle{ dir = 8; icon_state = "diagonalWall3" }, /area/awaymission/spacebattle/syndicate3) "bw" = ( /turf/open/floor/plasteel/shuttle/red/syndicate, -/turf/closed/wall/mineral/plastitanium{ +/turf/closed/wall/shuttle{ dir = 1; icon_state = "diagonalWall3" }, @@ -440,7 +446,7 @@ /area/awaymission/spacebattle/syndicate3) "bz" = ( /turf/open/space, -/turf/closed/wall/mineral/plastitanium{ +/turf/closed/wall/shuttle{ icon_state = "diagonalWall3" }, /area/awaymission/spacebattle/syndicate1) @@ -450,7 +456,7 @@ /area/awaymission/spacebattle/syndicate2) "bB" = ( /turf/open/space, -/turf/closed/wall/mineral/plastitanium{ +/turf/closed/wall/shuttle{ dir = 4; icon_state = "diagonalWall3" }, @@ -461,7 +467,7 @@ /area/awaymission/spacebattle/syndicate1) "bD" = ( /turf/open/floor/plasteel/shuttle/red/syndicate, -/turf/closed/wall/mineral/plastitanium{ +/turf/closed/wall/shuttle{ dir = 8; icon_state = "diagonalWall3" }, @@ -472,7 +478,7 @@ /area/awaymission/spacebattle/syndicate1) "bF" = ( /turf/open/floor/plasteel/shuttle/red/syndicate, -/turf/closed/wall/mineral/plastitanium{ +/turf/closed/wall/shuttle{ dir = 1; icon_state = "diagonalWall3" }, @@ -487,7 +493,7 @@ /area/awaymission/spacebattle/syndicate1) "bH" = ( /turf/open/space, -/turf/closed/wall/mineral/plastitanium{ +/turf/closed/wall/shuttle{ dir = 8; icon_state = "diagonalWall3" }, @@ -512,13 +518,15 @@ /area/awaymission/spacebattle/cruiser) "bL" = ( /turf/open/space, -/turf/closed/wall/mineral/plastitanium{ +/turf/closed/wall/shuttle{ dir = 1; icon_state = "diagonalWall3" }, /area/awaymission/spacebattle/cruiser) "bM" = ( -/turf/closed/wall/mineral/plastitanium, +/turf/closed/wall/shuttle{ + icon_state = "wall3" + }, /area/awaymission/spacebattle/cruiser) "bN" = ( /obj/structure/window/reinforced, @@ -558,10 +566,16 @@ /turf/open/floor/plasteel/shuttle/red/syndicate, /area/awaymission/spacebattle/cruiser) "bS" = ( -/turf/closed/wall/mineral/titanium/overspace, +/turf/closed/wall/shuttle{ + icon_state = "swall_s6"; + dir = 2 + }, /area/awaymission/spacebattle/cruiser) "bT" = ( -/turf/closed/wall/mineral/titanium, +/turf/closed/wall/shuttle{ + icon_state = "swall12"; + dir = 2 + }, /area/awaymission/spacebattle/cruiser) "bU" = ( /turf/closed/wall/shuttle{ @@ -639,7 +653,7 @@ /turf/open/floor/plasteel{ icon_state = "damaged5" }, -/turf/closed/wall/mineral/plastitanium{ +/turf/closed/wall/shuttle{ icon_state = "diagonalWall3" }, /area/awaymission/spacebattle/cruiser) @@ -654,7 +668,7 @@ /turf/open/floor/plasteel{ icon_state = "damaged4" }, -/turf/closed/wall/mineral/plastitanium{ +/turf/closed/wall/shuttle{ dir = 4; icon_state = "diagonalWall3" }, @@ -667,7 +681,7 @@ /turf/open/floor/plasteel{ icon_state = "damaged2" }, -/turf/closed/wall/mineral/plastitanium{ +/turf/closed/wall/shuttle{ icon_state = "diagonalWall3" }, /area/awaymission/spacebattle/cruiser) @@ -685,7 +699,7 @@ /turf/open/floor/plasteel{ icon_state = "damaged5" }, -/turf/closed/wall/mineral/plastitanium{ +/turf/closed/wall/shuttle{ dir = 4; icon_state = "diagonalWall3" }, @@ -713,7 +727,9 @@ }, /area/awaymission/spacebattle/cruiser) "ct" = ( -/turf/closed/wall/mineral/titanium/nodiagonal, +/turf/closed/wall/shuttle{ + icon_state = "swallc1" + }, /area/awaymission/spacebattle/cruiser) "cu" = ( /turf/closed/wall/shuttle{ @@ -906,7 +922,7 @@ /area/awaymission/spacebattle/cruiser) "db" = ( /mob/living/simple_animal/hostile/syndicate/ranged{ - loot = list(/obj/effect/mob_spawn/human/corpse/syndicatesoldier,/obj/item/weapon/gun/ballistic/automatic/c20r,/obj/item/weapon/shield/energy) + loot = list(/obj/effect/mob_spawn/human/corpse/syndicatesoldier,/obj/item/weapon/gun/projectile/automatic/c20r,/obj/item/weapon/shield/energy) }, /turf/open/floor/plasteel/shuttle/red/syndicate, /area/awaymission/spacebattle/syndicate3) @@ -997,7 +1013,7 @@ /turf/open/floor/plasteel{ icon_state = "damaged4" }, -/turf/closed/wall/mineral/plastitanium{ +/turf/closed/wall/shuttle{ icon_state = "diagonalWall3" }, /area/awaymission/spacebattle/cruiser) @@ -1012,7 +1028,7 @@ /turf/open/floor/plasteel{ icon_state = "damaged1" }, -/turf/closed/wall/mineral/plastitanium{ +/turf/closed/wall/shuttle{ dir = 4; icon_state = "diagonalWall3" }, @@ -1025,7 +1041,9 @@ /area/awaymission/spacebattle/cruiser) "du" = ( /obj/effect/decal/cleanable/blood, -/turf/closed/wall/mineral/titanium, +/turf/closed/wall/shuttle{ + icon_state = "swall12" + }, /area/awaymission/spacebattle/cruiser) "dv" = ( /turf/closed/wall/shuttle{ @@ -1114,7 +1132,7 @@ /turf/open/floor/plasteel{ icon_state = "damaged3" }, -/turf/closed/wall/mineral/plastitanium{ +/turf/closed/wall/shuttle{ dir = 4; icon_state = "diagonalWall3" }, @@ -1329,17 +1347,19 @@ /area/awaymission/spacebattle/cruiser) "eq" = ( /turf/open/space, -/turf/closed/wall/mineral/plastitanium{ +/turf/closed/wall/shuttle{ dir = 8; icon_state = "diagonalWall3" }, /area/awaymission/spacebattle/syndicate4) "er" = ( -/turf/closed/wall/mineral/plastitanium, +/turf/closed/wall/shuttle{ + icon_state = "wall3" + }, /area/awaymission/spacebattle/syndicate4) "es" = ( /turf/open/space, -/turf/closed/wall/mineral/plastitanium{ +/turf/closed/wall/shuttle{ dir = 1; icon_state = "diagonalWall3" }, @@ -1374,7 +1394,7 @@ mob_name = "Davis Hume"; name = "Davis Hume" }, -/obj/item/weapon/gun/ballistic/shotgun/automatic/combat, +/obj/item/weapon/gun/projectile/shotgun/automatic/combat, /turf/open/floor/plasteel, /area/awaymission/spacebattle/cruiser) "ez" = ( @@ -1383,7 +1403,7 @@ /area/awaymission/spacebattle/cruiser) "eA" = ( /mob/living/simple_animal/hostile/syndicate/ranged{ - loot = list(/obj/effect/mob_spawn/human/corpse/syndicatesoldier,/obj/item/weapon/gun/ballistic/automatic/c20r,/obj/item/weapon/shield/energy) + loot = list(/obj/effect/mob_spawn/human/corpse/syndicatesoldier,/obj/item/weapon/gun/projectile/automatic/c20r,/obj/item/weapon/shield/energy) }, /turf/open/floor/plasteel/shuttle/red/syndicate, /area/awaymission/spacebattle/syndicate1) @@ -1518,7 +1538,7 @@ mob_name = "Kurt Kliest"; name = "Kurt Kliest" }, -/obj/item/weapon/gun/ballistic/shotgun/automatic/combat, +/obj/item/weapon/gun/projectile/shotgun/automatic/combat, /obj/item/ammo_casing/shotgun, /turf/open/floor/plasteel, /area/awaymission/spacebattle/cruiser) @@ -1590,7 +1610,7 @@ /area/awaymission/spacebattle/cruiser) "fj" = ( /obj/machinery/computer/security/telescreen, -/turf/closed/wall/mineral/titanium, +/turf/closed/wall/shuttle, /area/awaymission/spacebattle/cruiser) "fk" = ( /turf/closed/wall/shuttle{ @@ -1623,7 +1643,7 @@ /area/awaymission/spacebattle/cruiser) "fp" = ( /obj/effect/mob_spawn/human/syndicatesoldier, -/obj/item/weapon/gun/ballistic/automatic/c20r, +/obj/item/weapon/gun/projectile/automatic/c20r, /obj/item/ammo_casing/c10mm, /obj/item/ammo_casing/c10mm, /obj/effect/decal/cleanable/blood, @@ -1640,7 +1660,7 @@ /area/awaymission/spacebattle/cruiser) "fr" = ( /obj/effect/mob_spawn/human/nanotrasensoldier, -/obj/item/weapon/gun/ballistic/automatic/wt550, +/obj/item/weapon/gun/projectile/automatic/wt550, /turf/open/floor/plasteel, /area/awaymission/spacebattle/cruiser) "fs" = ( @@ -1652,7 +1672,7 @@ "ft" = ( /obj/item/ammo_casing/a357, /obj/item/ammo_casing/a357, -/obj/item/weapon/gun/ballistic/revolver/mateba, +/obj/item/weapon/gun/projectile/revolver/mateba, /obj/effect/mob_spawn/human/commander{ mob_name = "Aaron Bowden"; name = "Aaron Bowden" @@ -1777,7 +1797,7 @@ /area/awaymission/spacebattle/cruiser) "fN" = ( /obj/effect/mob_spawn/human/syndicatesoldier, -/obj/item/weapon/gun/ballistic/automatic/c20r, +/obj/item/weapon/gun/projectile/automatic/c20r, /obj/item/ammo_casing/c10mm, /obj/item/ammo_casing/c10mm, /obj/effect/decal/cleanable/blood, @@ -2012,18 +2032,18 @@ /turf/open/floor/wood, /area/awaymission/spacebattle/cruiser) "gz" = ( -/obj/item/weapon/gun/ballistic/shotgun/automatic/combat, +/obj/item/weapon/gun/projectile/shotgun/automatic/combat, /turf/open/floor/plasteel, /area/awaymission/spacebattle/cruiser) "gA" = ( /turf/open/space, -/turf/closed/wall/mineral/plastitanium{ +/turf/closed/wall/shuttle{ icon_state = "diagonalWall3" }, /area/awaymission/spacebattle/syndicate4) "gB" = ( /turf/open/space, -/turf/closed/wall/mineral/plastitanium{ +/turf/closed/wall/shuttle{ dir = 4; icon_state = "diagonalWall3" }, @@ -2103,7 +2123,7 @@ /area/awaymission/spacebattle/syndicate7) "gQ" = ( /turf/open/space, -/turf/closed/wall/mineral/plastitanium{ +/turf/closed/wall/shuttle{ dir = 1; icon_state = "diagonalWall3" }, @@ -2175,13 +2195,15 @@ /area/awaymission/spacebattle/cruiser) "hb" = ( /turf/open/space, -/turf/closed/wall/mineral/plastitanium{ +/turf/closed/wall/shuttle{ dir = 8; icon_state = "diagonalWall3" }, /area/awaymission/spacebattle/syndicate7) "hc" = ( -/turf/closed/wall/mineral/plastitanium, +/turf/closed/wall/shuttle{ + icon_state = "wall3" + }, /area/awaymission/spacebattle/syndicate7) "hd" = ( /obj/structure/shuttle/engine/propulsion, @@ -2350,7 +2372,7 @@ /area/awaymission/spacebattle/cruiser) "hG" = ( /turf/open/space, -/turf/closed/wall/mineral/plastitanium{ +/turf/closed/wall/shuttle{ dir = 4; icon_state = "diagonalWall3" }, @@ -2413,7 +2435,7 @@ /area/awaymission/spacebattle/cruiser) "hR" = ( /mob/living/simple_animal/hostile/syndicate/ranged{ - loot = list(/obj/effect/mob_spawn/human/corpse/syndicatesoldier,/obj/item/weapon/gun/ballistic/automatic/c20r,/obj/item/weapon/shield/energy) + loot = list(/obj/effect/mob_spawn/human/corpse/syndicatesoldier,/obj/item/weapon/gun/projectile/automatic/c20r,/obj/item/weapon/shield/energy) }, /turf/open/floor/plasteel, /area/awaymission/spacebattle/cruiser) @@ -2539,7 +2561,7 @@ /area/awaymission/spacebattle/cruiser) "in" = ( /turf/open/space, -/turf/closed/wall/mineral/plastitanium{ +/turf/closed/wall/shuttle{ icon_state = "diagonalWall3" }, /area/awaymission/spacebattle/syndicate7) @@ -2584,7 +2606,7 @@ /area/awaymission/spacebattle/cruiser) "iu" = ( /obj/effect/mob_spawn/human/syndicatesoldier, -/obj/item/weapon/gun/ballistic/automatic/c20r, +/obj/item/weapon/gun/projectile/automatic/c20r, /turf/open/floor/plasteel{ icon_state = "damaged2" }, @@ -2613,11 +2635,13 @@ /turf/open/space, /area/space) "iz" = ( -/turf/closed/wall/mineral/plastitanium, +/turf/closed/wall/shuttle{ + icon_state = "wall3" + }, /area/space) "iA" = ( /turf/open/space, -/turf/closed/wall/mineral/plastitanium{ +/turf/closed/wall/shuttle{ dir = 1; icon_state = "diagonalWall3" }, @@ -2657,17 +2681,19 @@ /area/space) "iH" = ( /turf/open/space, -/turf/closed/wall/mineral/plastitanium{ +/turf/closed/wall/shuttle{ dir = 8; icon_state = "diagonalWall3" }, /area/awaymission/spacebattle/syndicate5) "iI" = ( -/turf/closed/wall/mineral/plastitanium, +/turf/closed/wall/shuttle{ + icon_state = "wall3" + }, /area/awaymission/spacebattle/syndicate5) "iJ" = ( /turf/open/space, -/turf/closed/wall/mineral/plastitanium{ +/turf/closed/wall/shuttle{ dir = 1; icon_state = "diagonalWall3" }, @@ -2685,13 +2711,13 @@ /area/awaymission/spacebattle/syndicate5) "iN" = ( /turf/open/space, -/turf/closed/wall/mineral/plastitanium{ +/turf/closed/wall/shuttle{ icon_state = "diagonalWall3" }, /area/space) "iO" = ( /turf/open/space, -/turf/closed/wall/mineral/plastitanium{ +/turf/closed/wall/shuttle{ dir = 4; icon_state = "diagonalWall3" }, @@ -2724,13 +2750,13 @@ /area/awaymission/spacebattle/syndicate5) "iU" = ( /turf/open/space, -/turf/closed/wall/mineral/plastitanium{ +/turf/closed/wall/shuttle{ icon_state = "diagonalWall3" }, /area/awaymission/spacebattle/syndicate5) "iV" = ( /turf/open/space, -/turf/closed/wall/mineral/plastitanium{ +/turf/closed/wall/shuttle{ dir = 4; icon_state = "diagonalWall3" }, @@ -2748,17 +2774,19 @@ /area/awaymission/spacebattle/syndicate5) "iY" = ( /turf/open/space, -/turf/closed/wall/mineral/plastitanium{ +/turf/closed/wall/shuttle{ dir = 8; icon_state = "diagonalWall3" }, /area/awaymission/spacebattle/syndicate6) "iZ" = ( -/turf/closed/wall/mineral/plastitanium, +/turf/closed/wall/shuttle{ + icon_state = "wall3" + }, /area/awaymission/spacebattle/syndicate6) "ja" = ( /turf/open/space, -/turf/closed/wall/mineral/plastitanium{ +/turf/closed/wall/shuttle{ dir = 1; icon_state = "diagonalWall3" }, @@ -2787,13 +2815,13 @@ /area/awaymission/spacebattle/syndicate6) "jg" = ( /turf/open/space, -/turf/closed/wall/mineral/plastitanium{ +/turf/closed/wall/shuttle{ icon_state = "diagonalWall3" }, /area/awaymission/spacebattle/syndicate6) "jh" = ( /turf/open/space, -/turf/closed/wall/mineral/plastitanium{ +/turf/closed/wall/shuttle{ dir = 4; icon_state = "diagonalWall3" }, @@ -2846,12 +2874,12 @@ /area/awaymission/spacebattle/cruiser) "js" = ( /obj/structure/rack, -/obj/item/weapon/gun/ballistic/automatic/laser, +/obj/item/weapon/gun/projectile/automatic/laser, /turf/open/floor/engine, /area/awaymission/spacebattle/cruiser) "jt" = ( /obj/structure/rack, -/obj/item/weapon/gun/energy/e_gun/advtaser, +/obj/item/weapon/gun/energy/gun/advtaser, /turf/open/floor/engine, /area/awaymission/spacebattle/cruiser) "ju" = ( @@ -2916,7 +2944,7 @@ "jB" = ( /obj/structure/rack, /obj/structure/window/reinforced, -/obj/item/weapon/gun/energy/e_gun/advtaser, +/obj/item/weapon/gun/energy/gun/advtaser, /turf/open/floor/engine, /area/awaymission/spacebattle/cruiser) "jC" = ( @@ -2986,7 +3014,7 @@ mob_name = "Walter Strider"; name = "Walter Strider" }, -/obj/item/weapon/gun/ballistic/shotgun/automatic/combat, +/obj/item/weapon/gun/projectile/shotgun/automatic/combat, /obj/item/ammo_casing/c10mm, /obj/item/ammo_casing/c10mm, /obj/effect/decal/cleanable/blood, @@ -3033,7 +3061,7 @@ /area/awaymission/spacebattle/cruiser) "jU" = ( /mob/living/simple_animal/hostile/syndicate/ranged/space{ - loot = list(/obj/effect/mob_spawn/human/corpse/syndicatecommando,/obj/item/weapon/gun/ballistic/automatic/c20r) + loot = list(/obj/effect/mob_spawn/human/corpse/syndicatecommando,/obj/item/weapon/gun/projectile/automatic/c20r) }, /turf/open/floor/plasteel/airless, /area/awaymission/spacebattle/cruiser) @@ -3060,14 +3088,14 @@ /area/awaymission/spacebattle/cruiser) "jY" = ( /mob/living/simple_animal/hostile/syndicate/ranged/space{ - loot = list(/obj/effect/mob_spawn/human/corpse/syndicatecommando,/obj/item/weapon/gun/ballistic/automatic/c20r) + loot = list(/obj/effect/mob_spawn/human/corpse/syndicatecommando,/obj/item/weapon/gun/projectile/automatic/c20r) }, /turf/open/floor/plating/airless, /area/awaymission/spacebattle/cruiser) "jZ" = ( /obj/structure/rack, -/obj/item/weapon/gun/ballistic/automatic/laser, -/obj/item/weapon/gun/ballistic/automatic/laser, +/obj/item/weapon/gun/projectile/automatic/laser, +/obj/item/weapon/gun/projectile/automatic/laser, /turf/open/floor/engine, /area/awaymission/spacebattle/cruiser) "ka" = ( @@ -3127,7 +3155,7 @@ /area/awaymission/spacebattle/cruiser) "kl" = ( /obj/effect/mob_spawn/human/nanotrasensoldier, -/obj/item/weapon/gun/ballistic/automatic/wt550, +/obj/item/weapon/gun/projectile/automatic/wt550, /obj/effect/decal/cleanable/blood, /turf/open/floor/plasteel, /area/awaymission/spacebattle/cruiser) @@ -3193,7 +3221,7 @@ /area/awaymission/spacebattle/cruiser) "ku" = ( /mob/living/simple_animal/hostile/syndicate/ranged{ - loot = list(/obj/effect/mob_spawn/human/corpse/syndicatesoldier,/obj/item/weapon/gun/ballistic/automatic/c20r,/obj/item/weapon/shield/energy) + loot = list(/obj/effect/mob_spawn/human/corpse/syndicatesoldier,/obj/item/weapon/gun/projectile/automatic/c20r,/obj/item/weapon/shield/energy) }, /turf/open/floor/plasteel/white, /area/awaymission/spacebattle/cruiser) @@ -21922,7 +21950,7 @@ cf cf cf df -bS +dt ab ab ab @@ -21951,7 +21979,7 @@ cf cf cf iv -bS +dt ab ab ab @@ -22179,7 +22207,7 @@ bY bY bY bY -bT +bV ab ab ab @@ -22198,7 +22226,7 @@ ab ab ab ab -bT +bV bY bY bY @@ -22436,7 +22464,7 @@ cv cg cg cg -bT +bV ab ab ab @@ -22455,7 +22483,7 @@ ab ab ab ab -bT +bV cg cg cg @@ -22693,7 +22721,7 @@ cc cc cQ cc -bT +bV ab ab ab @@ -22712,7 +22740,7 @@ ab ab ab ab -bT +bV cc cc cc @@ -22969,7 +22997,7 @@ ab ab ab ab -bT +bV cc cc cc @@ -23207,7 +23235,7 @@ cc cr cr cr -bT +bV ab ab ab @@ -23226,7 +23254,7 @@ ab ab ab ab -bT +bV cc cc cc @@ -23464,7 +23492,7 @@ cc cQ cc dh -bT +bV ab ab ab @@ -23483,7 +23511,7 @@ ab ab ab ab -bT +bV kB cc cc @@ -23721,7 +23749,7 @@ cc cc cc dh -bT +bV ab ab ab @@ -23740,7 +23768,7 @@ ab ab ab ab -bT +bV kD cc cc @@ -23978,7 +24006,7 @@ cM cc cc dh -bT +bV ab ab ab @@ -23997,7 +24025,7 @@ ab ab ab ab -bT +bV kC cc cc @@ -24235,7 +24263,7 @@ cc cc cr di -bT +bV ab ab ab @@ -24254,7 +24282,7 @@ ab ab ab ab -bT +bV di cc cc @@ -24492,7 +24520,7 @@ cc cS cc di -bT +bV ab ab ab @@ -24511,7 +24539,7 @@ ab ab ab ab -bT +bV di cc cc @@ -26795,16 +26823,16 @@ ab ab ab ab -bT +bU cd cd -bT -bT -bT -bT -bT -bT -bT +cs +ce +ce +ce +ce +ce +ce ht ht ht @@ -26825,16 +26853,16 @@ ht ht ht ht -bT -bT -bT -bT -bT -bT -bT +ce +ce +ce +ce +ce +ce +cs cd cd -bT +eI ab ab ab @@ -27852,12 +27880,12 @@ ka ka hn hn -bT -bT -bT -bT -du -bT +hH +ce +ce +ce +gE +ic ib bT cc @@ -28366,9 +28394,9 @@ cK cK ho ho -bT -bT -bT +hH +ce +ic hW hW hW @@ -28880,9 +28908,9 @@ cK cK eT hx -bT -bT -bT +hH +ce +ic hW hW hW @@ -29394,9 +29422,9 @@ cK cK jJ eT -bT -bT -bT +hH +ce +ic hW hW hW @@ -29908,9 +29936,9 @@ cK cK hp hz -bT -bT -bT +hH +ce +ic hW hW hW @@ -30393,43 +30421,43 @@ ab ab ab ab -bT +bV cc cc ct -bT -bT +ce +ce cd cd -bT -bT -bT -bT -bT -bT -bT -bT -bT -bT +ce +ce +dw +ce +ce +ce +ce +ce +ce +ce fh fh fh fh -bT -du -bT -bT -bT -bT -bT -bT -bT -bT +ce +gE +ce +ce +ce +ce +ce +dw +ce +ce cd cd -bT -bT -ct +ce +ce +eJ cc cc bT @@ -31164,43 +31192,43 @@ ab ab ab ab -bT +bV cc cc -ct -bT -bT -bT -bT -bT -bT +cu +ce +ce +ce +cs +ce +ce cd cd -bT -bT -bT -bT -bT -bT -ct +ce +ce +ce +ce +ce +ce +cR cc cc -ct -bT -bT -bT -bT -bT -bT +cu +ce +ce +ce +ce +ce +ce hB hB -bT -bT -bT -bT -bT -bT -ct +ce +ce +ce +ce +ce +ce +cR cc cc bT @@ -31421,10 +31449,10 @@ ab ab ab ab -bT +bV cc cc -bT +bV cC cP cP @@ -31439,10 +31467,10 @@ da dQ dQ da -bT +bV cc cc -bT +bV gs gG gH @@ -31457,10 +31485,10 @@ gH il gH ip -bT +bV cc cc -bT +bV ab ab ab @@ -31678,10 +31706,10 @@ ab ab ab ab -bT +bV cc cc -bT +bV cD cP cP @@ -31696,10 +31724,10 @@ dx dS eU ep -bT +bV cc cc -bT +bV gt gH gH @@ -31714,10 +31742,10 @@ gH im gH iq -bT +bV cc cc -bT +bV ab ab ab @@ -31935,10 +31963,10 @@ ab ab ab ab -bT +bV cc cc -bT +bV cE cP fI @@ -31953,10 +31981,10 @@ dx dS dS ep -bT +bV cc cc -bT +bV gt gH gH @@ -31971,10 +31999,10 @@ gH gH gH ir -bT +bV cc cc -bT +bV ab ab ab @@ -32192,10 +32220,10 @@ ab ab ab ab -bT +bV cc cc -bT +bV cF cP cP @@ -32210,10 +32238,10 @@ da jC jC da -bT +bV cc cc -bT +bV gu gH gH @@ -32228,10 +32256,10 @@ gH il gH ip -bT +bV cc cc -bT +bV ab ab ab @@ -32449,10 +32477,10 @@ ab ab ab ab -bT +bV cc cc -bT +bV cG cP cP @@ -32467,10 +32495,10 @@ da dQ dQ da -bT +bV cc cc -bT +bV gv gH gH @@ -32485,10 +32513,10 @@ gH im gH iq -bT +bV cc cc -bT +bV ab ab ab @@ -32706,10 +32734,10 @@ ab ab ab ab -bT +bV cc cc -bT +bV cH cP cP @@ -32724,10 +32752,10 @@ dx dR dS ep -bT +bV cc cc -bT +bV gw gH gH @@ -32742,10 +32770,10 @@ ii gH gH ir -bT +bV cc cc -bT +bV ab ab ab @@ -32963,10 +32991,10 @@ ab ab ab ab -bT +bV cc cc -bT +bV cI cP cP @@ -32981,10 +33009,10 @@ dx dS eV ep -bT +bV cc cc -bT +bV gt gH gH @@ -32999,10 +33027,10 @@ gW il gH ip -bT +bV cc cc -bT +bV ab ab ab @@ -33220,10 +33248,10 @@ ab ab ab ab -bT +bV cc cc -bT +bV cI cP cP @@ -33238,10 +33266,10 @@ da dT dT da -bT +bV cc cc -bT +bV gs gG gH @@ -33256,10 +33284,10 @@ gH im gH iq -bT +bV cc cc -bT +bV ab ab ab @@ -33477,46 +33505,46 @@ ab ab ab ab -bT +bV cc cc ct -bT -bT -bT -bT -bT -bT -bT -bT -bT -bT -bT -bT -bT -bT -ct +ce +ce +ce +ce +ce +ce +ce +ce +ce +ce +ce +ce +ce +ce +eJ cc cc ct -bT -bT -bT -bT -bT -bT -bT -bT -bT -bT -bT -bT -bT -bT -ct +ce +ce +ce +ce +ce +ce +ce +ce +ce +ce +ce +ce +ce +ce +eJ cc cc -bT +bV ab ab ab @@ -33734,7 +33762,7 @@ ab ab ab ab -bT +bV cc cc cc @@ -33773,7 +33801,7 @@ cc cc cc cc -bT +bV ab ab ab @@ -33991,7 +34019,7 @@ ab ab ab ab -bT +bV cc cc cc @@ -34030,7 +34058,7 @@ cc cc cc cc -bT +bV ab ab ab @@ -34248,46 +34276,46 @@ ab ab ab ab -bS -bT -bT -bT +bW +ce +ce +cs cJ cJ -ct +cR cc cc -ct -bT -bT -bT -bT -bT +cu +ce +ce +ce +ce +ce cK hs -bT -bT +ce +do cd cd -bT -bT -bT -bT -bT -bT -bT -bT -bT -ct +do +ce +ce +ce +ce +ce +ce +ce +ce +cR cc cc -ct +cu cJ cJ -bT -bT -bT -bS +cs +ce +ce +fk ab ab ab @@ -34511,10 +34539,10 @@ ab bT cK cK -bT +bV cc cc -bT +bV dy dU dU @@ -34523,10 +34551,10 @@ ex cp fL fc -bT +bV fo fJ -bT +bV gx gI gy @@ -34535,10 +34563,10 @@ gy gy hE hJ -bT +bV cc cc -bT +bV cK cK bT @@ -34768,10 +34796,10 @@ ab bT cK cK -bT +bV cc cc -bT +bV dz cc cc @@ -34780,10 +34808,10 @@ ey cQ cc fd -bT +bV fp fK -bT +bV gy gy gy @@ -34792,10 +34820,10 @@ gy gy gy gy -bT +bV cp cc -bT +bV cK cK bT @@ -35025,10 +35053,10 @@ ab bT cK cK -bT +bV cc cc -bT +bV dz cc cc @@ -35052,7 +35080,7 @@ gy cK cp cp -bT +bV cK cK bT @@ -35282,10 +35310,10 @@ ab bT cK cK -bT +bV cc cc -bT +bV dA cc cc @@ -35309,7 +35337,7 @@ gy hs cQ cc -bT +bV cK cK bT @@ -35539,10 +35567,10 @@ ab bT cK cK -bT +bV cc cc -bT +bV dB dV ei @@ -35554,7 +35582,7 @@ cn cK hF fM -bT +bV gy gy gM @@ -35563,10 +35591,10 @@ gy gy gy hK -bT +bV cc cQ -bT +bV cK cK bT @@ -35796,34 +35824,34 @@ ab bT cK cK -bT +bV cc cc -bT -bT -bT -bT -bT -bT +bU +ce +ce +ce +do +eB hs cK -bT -ct +eB +eJ fo fN ct -bT -bT -bT -bT -bT -bT -bT -bT -bT +eB +eB +eB +eB +do +eB +eB +eB +eI cc cc -bT +bV cK cK bT @@ -36050,17 +36078,17 @@ ab ab ab ab -bS +bW cJ cJ -bT +bV cc cc -bT +bV dh dh dh -bT +bV eC cn fL @@ -36073,17 +36101,17 @@ eM eM eM gY -bT +bV hq dh dh -bT +bV cp cc -bT +bV cJ cJ -bS +fk ab ab ab @@ -36310,14 +36338,14 @@ ab ab ab ab -bT +bV cc cm cK cm cc cc -bT +bV jw eN eW @@ -36330,14 +36358,14 @@ cc cr cc gZ -bT +bV cc cQ cn hs cn cc -bT +bV ab ab ab @@ -36567,14 +36595,14 @@ ab ab ab ab -bT +bV fL cp hs cm hQ cc -bT +bV jy cc cc @@ -36587,14 +36615,14 @@ cc cc cc gZ -bT +bV cc cc cp -bT +bV cn cc -bT +bV ab ab ab @@ -36824,14 +36852,14 @@ ab ab ab ab -bT +bV cc cp hs hF cc cc -bT +bV jx cc cc @@ -36844,14 +36872,14 @@ gz cc hR gZ -bT +bV cc cc hL -bT +bV cc cc -bT +bV ab ab ab @@ -37081,14 +37109,14 @@ ab ab ab ab -bT +bV cc cc cd cc cc cc -bT +bV eD cc cc @@ -37101,14 +37129,14 @@ cc cc cc gZ -bT +bV cc cc cc cd cc cc -bT +bV ab ab ab @@ -37338,14 +37366,14 @@ ab ab ab ab -bT +bV cc cc -bT +bV cc cc cc -bT +bV eD cr eX @@ -37358,14 +37386,14 @@ cc cc cc gZ -bT +bV cc cc cc -bT +bV cc cc -bT +bV ab ab ab @@ -37595,14 +37623,14 @@ ab ab ab ab -bT +bV cc cc -bT +bV cc cc cc -bT +bV eD cc eY @@ -37615,14 +37643,14 @@ cc cc cc gZ -bT +bV cc cc cc -bT +bV cc cc -bT +bV ab ab ab @@ -37852,14 +37880,14 @@ ab ab ab ab -bT +bV cc cc -bT +bV cc cc cc -bT +bV eD eO eO @@ -37872,14 +37900,14 @@ cc eO eO gZ -bT +bV cc cc cc -bT +bV cc cc -bT +bV ab ab ab @@ -38109,14 +38137,14 @@ ab ab ab ab -bT +bV cc cc -bT +bV dC dW ej -bT +bV eE eP eZ @@ -38129,14 +38157,14 @@ eE gK gN eE -bT +bV hr dW hM -bT +bV cc cc -bT +bV ab ab ab @@ -38366,14 +38394,14 @@ ab ab ab ab -bT +bV cc cc -bT -bT +bU +ce cd -bT -bT +ce +dw eF eQ eQ @@ -38386,14 +38414,14 @@ eQ eQ eQ ha -bT -bT +dw +ce cd -bT -bT +ce +eI cc cc -bT +bV ab ab ab @@ -38623,10 +38651,10 @@ ab ab ab ab -bT +bV cc cc -bT +bV cZ cZ cZ @@ -38647,10 +38675,10 @@ cZ cZ cZ cZ -bT +bV cc cc -bT +bV ab ab ab @@ -38880,10 +38908,10 @@ ab ab ab ab -bT +bV cc cc -bT +bV cZ cZ cZ @@ -38904,10 +38932,10 @@ cZ cZ cZ cZ -bT +bV cc cc -bT +bV ab ab ab @@ -39137,10 +39165,10 @@ ab ab ab ab -bT +bV cc cc -bT +bV cZ cZ cZ @@ -39161,10 +39189,10 @@ cZ cZ cZ cZ -bT +bV cc cc -bT +bV ab ab ab @@ -39394,10 +39422,10 @@ ab ab ab ab -bT +bV cc cc -bT +bV cZ cZ cZ @@ -39418,10 +39446,10 @@ cZ cZ cZ cZ -bT +bV cc cc -bT +bV ab ab ab @@ -39651,10 +39679,10 @@ ab ab ab ab -bT +bV cc cc -bT +bV dD dX cZ @@ -39675,10 +39703,10 @@ cZ cZ cZ cZ -bT +bV cc cc -bT +bV ab ab ab @@ -39908,10 +39936,10 @@ ab ab ab ab -bT +bV cc cc -bT +bV cZ cZ cZ @@ -39932,10 +39960,10 @@ cZ cZ cZ cZ -bT +bV cc cc -bT +bV ab ab ab @@ -40165,10 +40193,10 @@ ab ab ab ab -bT +bV cc cc -bT +bV cZ cZ cZ @@ -40189,10 +40217,10 @@ cZ cZ jr cZ -bT +bV cc cc -bT +bV ab ab ab @@ -40422,10 +40450,10 @@ ab ab ab ab -bT +bV cc it -bT +bV cZ cZ jr @@ -40446,10 +40474,10 @@ hh dD cZ cZ -bT +bV it cc -bT +bV ab ab ab @@ -40679,10 +40707,10 @@ ab ab ab ab -bT +bV cc cc -bT +bV cZ cZ cZ @@ -40703,10 +40731,10 @@ cZ dD cZ cZ -bT +bV cc cc -bT +bV ab ab ab @@ -40936,10 +40964,10 @@ ab ab ab ab -bT +bV cc cc -bT +bV cZ cZ cZ @@ -40960,10 +40988,10 @@ cZ cZ cZ cZ -bT +bV cc cc -bT +bV ab ab ab @@ -41193,10 +41221,10 @@ ab ab ab ab -bT +bV cc cc -bT +bV cZ cZ cZ @@ -41217,10 +41245,10 @@ cZ cZ cZ cZ -bT +bV cc cc -bT +bV ab ab ab @@ -41450,10 +41478,10 @@ ab ab ab ab -bT +bV cc cc -bT +bV cZ cZ cZ @@ -41474,10 +41502,10 @@ cZ cZ cZ cZ -bT +bV cc cc -bT +bV ab ab ab @@ -41707,10 +41735,10 @@ ab ab ab ab -bT +bV cc cc -bT +bV cZ cZ cZ @@ -41731,10 +41759,10 @@ cZ cZ cZ cZ -bT +bV cc cc -bT +bV ab ab ab @@ -41964,10 +41992,10 @@ ab ab ab ab -bT +bV cc cc -bT +bV cZ cZ cZ @@ -41988,10 +42016,10 @@ cZ cZ cZ cZ -bT +bV cc cc -bT +bV ab ab ab @@ -42221,10 +42249,10 @@ ab ab ab ab -bT +bV cc cc -bT +bV cZ cZ cZ @@ -42245,10 +42273,10 @@ cZ cZ cZ cZ -bT +bV cc cc -bT +bV ab ab ab @@ -42478,10 +42506,10 @@ ab ab ab ab -bT +bV cc cc -bT +bV cZ cZ cZ @@ -42502,10 +42530,10 @@ cZ cZ cZ cZ -bT +bV cc cc -bT +bV ab ab ab @@ -42735,34 +42763,34 @@ ab ab ab ab -bT +bV cc cc ct -bT -bT -bT -bT -bT -bT -bT -bT -ct +ce +ce +ce +ce +ce +ce +ce +ce +cR ab ab -ct -bT -bT -bT -bT -bT -bT -bT -bT -ct +cu +ce +ce +ce +ce +ce +ce +ce +ce +eJ cc cc -bT +bV ab ab ab @@ -42992,7 +43020,7 @@ ab ab ab ab -bT +bV cc cc cd @@ -43004,10 +43032,10 @@ cc cc cc cc -bT +bV ab ab -bT +bV jS jS jS @@ -43019,7 +43047,7 @@ jS cd cc cc -bT +bV ab ab ab @@ -43249,7 +43277,7 @@ ab ab ab ab -bT +bV cc cc cd @@ -43261,10 +43289,10 @@ cc cc cc cc -bT +bV ab ab -bT +bV jS jS jS @@ -43276,7 +43304,7 @@ jS cd cc cc -bT +bV ab ab ab @@ -43506,34 +43534,34 @@ ab ab ab ab -bS -bT -bT -bT -bT -bT -bT -bT -ct +bW +ce +ce +do +do +do +do +do +cR cc cc cc -bT +bV ab ab -bT +bV jS jS jS -ct -bT -bT -bT -bT -bT -bT -bT -bS +cu +cs +cs +cs +cs +cs +ce +ce +ia ab ab ab @@ -43766,28 +43794,28 @@ ab ab ab ab -bS -bT -bT -bT -bT -bT +bW +dv +dv +dv +dv +eI cc cc cc -bT +bV ab ab -bT +bV jS jS jS -bT -bT -bT -bT -bT -bS +bU +dv +dv +dv +dv +ia ab ab ab @@ -44025,25 +44053,25 @@ ab ab ab ct -bT -bT -bT -bT +dp +dp +dp +eI cc cc cc -bT +bV ab ab -bT +bV jS jS jS -bT -bT -bT -bT -ct +bU +dw +dw +dw +eJ ab ab ab @@ -44285,18 +44313,18 @@ dE dY ek el -bT +bV cc cc cc -bT +bV ab ab -bT +bV jS jS jS -bT +bV kd ki kr @@ -44542,18 +44570,18 @@ dF dZ el el -bT +bV cc cc cc -bT +bV ab ab -bT +bV jS jS jS -bT +bV kd kd kq @@ -44799,18 +44827,18 @@ dG dY ek el -bT +bV cc cc cc -bT +bV ab ab -bT +bV jS jS jS -bT +bV kd ki kr @@ -45056,18 +45084,18 @@ dF dZ el el -bT +bV cc cc cc -bT +bV ab ab -bT +bV jS jU jS -bT +bV kd kd kq @@ -45313,18 +45341,18 @@ dG dY ek el -bT +bV cc cr cc -bT +bV ab ab -bT +bV jT jS jS -bT +bV kd ki kd @@ -45570,18 +45598,18 @@ dF dZ el el -bT +bV cc kl cr -bT +bV ab ab -bT +bV jS jS jS -bT +bV kd kd ix @@ -45827,14 +45855,14 @@ dG dY ek el -bT +bV cc cc cc -bT +bV ab ab -bT +bV jS jT jS @@ -46084,14 +46112,14 @@ dF dZ el el -bT +bV cc cc cc -bT +bV ab ab -bT +bV jS jS jS @@ -46341,14 +46369,14 @@ dG dY ek el -bT +bV cc it cc -bT +bV ab ab -bT +bV jS jW jS @@ -46598,14 +46626,14 @@ dF dZ el el -bT +bV cc cc cc -bT +bV ab ab -bT +bV jS jS jS @@ -46855,14 +46883,14 @@ dG dY ek el -bT +bV cc cc cc -bT +bV ab ab -bT +bV jS jT jS @@ -47116,10 +47144,10 @@ cd cc cc cc -bT +bV ab ab -bT +bV jS jS jS @@ -47369,18 +47397,18 @@ dG dY ek el -bT +bV cc cc cc -bT +bV ab ab -bT +bV jU jS jS -bT +bV kd ix ab @@ -47626,18 +47654,18 @@ dF dZ el el -bT +bV cc cc cc -bT +bV ab ab -bT +bV jS jT jS -bT +bV kd kK ab @@ -47883,18 +47911,18 @@ dG dY ek el -bT +bV cc cc cc -bT +bV ab ab -bT +bV jS jS jS -bT +bV kd kd ab @@ -48140,18 +48168,18 @@ dF dZ el el -bT +bV cc cc cc -bT +bV ab ab -bT +bV jS jS jS -bT +bV kd kk ab @@ -48397,18 +48425,18 @@ dG dY ek el -bT +bV cc cc cc -bT +bV ab ab -bT +bV jS jS jS -bT +bV kd ko ix @@ -48654,18 +48682,18 @@ dF dZ el el -bT +bV cc cc cc -bT +bV ab ab -bT +bV jS jS jS -bT +bV kd kd kd @@ -48911,18 +48939,18 @@ dG dY ek el -bT +bV cc cc cc -bT +bV ab ab -bT +bV jS jS jS -bT +bV kd ko kr @@ -49168,18 +49196,18 @@ dF dZ el el -bT +bV cc cc cc -bT +bV ab ab -bT +bV jS jS jS -bT +bV kd kd kq @@ -49425,18 +49453,18 @@ dG dY ek el -bT +bV cc cc cc -bT +bV ab ab -bT +bV jS jS jS -bT +bV kd ko kr @@ -49682,18 +49710,18 @@ dF dZ el el -bT +bV cc cc cc -bT +bV ab ab -bT +bV jS jS jS -bT +bV kd kd kq @@ -49939,18 +49967,18 @@ dH dY ek el -bT +bV cc cc cc -bT +bV ab ab -bT +bV jS jS jS -bT +bV kd ko kr @@ -50192,26 +50220,26 @@ ab ab ab ab -ct -bT -bT -bT -bT +cu +do +do +do +eI cc cc cc -bT +bV ab ab -bT +bV jS jS jS -bT -bT -bT -bT -ct +bU +cs +cs +cs +cR ab ab ab @@ -50449,27 +50477,27 @@ ab ab ab bS -bT -bT -bT -bT -bT +dv +dv +dv +dv +eI cc cc cc -bT +bV ab ab -bT +bV jS jS jS -bT -bT -bT -bT -bT -bS +bU +dv +dv +dv +dv +dt ab ab ab @@ -50703,33 +50731,33 @@ ab ab ab bS -bT -bT -bT -bT -bT -bT -bT -ct +ce +ce +dp +dp +dp +dp +dp +eJ cc cc cc -bT +bV ab ab -bT +bV jS jS jS ct -bT -bT -bT -bT -bT -bT -bT -bS +dw +dw +dw +dw +dw +ce +ce +dt ab ab ab @@ -50959,7 +50987,7 @@ ab ab ab ab -bT +bV cc cc cc @@ -50971,10 +50999,10 @@ cc cc cc cc -bT +bV ab ab -bT +bV jS jS jS @@ -50986,7 +51014,7 @@ jS jS jS jS -bT +bV ab ab ab @@ -51216,7 +51244,7 @@ ab ab ab ab -bT +bV cc cm cc @@ -51228,10 +51256,10 @@ cc cc cc cc -bT +bV ab ab -bT +bV jS jS jS @@ -51243,7 +51271,7 @@ jS jS jS jS -bT +bV ab ab ab @@ -51473,7 +51501,7 @@ ab ab ab ab -bT +bV cm cn cp @@ -51485,10 +51513,10 @@ cc cc fr cc -bT +bV ab ab -bT +bV jS jS jS @@ -51500,7 +51528,7 @@ jS jS jS jS -bT +bV ab ab ab @@ -51742,10 +51770,10 @@ cc cc cc cc -bT +bV ab ab -bT +bV jS jS jS @@ -51757,7 +51785,7 @@ jS jS jS jS -bT +bV ab ab ab @@ -51999,10 +52027,10 @@ cQ cc cc cc -bT +bV ab ab -bT +bV jS jS jS @@ -52014,7 +52042,7 @@ jS jS jS jS -bT +bV ab ab ab @@ -52256,10 +52284,10 @@ jz cc cc cc -bT +bV ab ab -bT +bV jS jS jS @@ -52271,7 +52299,7 @@ kA jS jS jS -bT +bV ab ab ab @@ -52513,10 +52541,10 @@ cc cc cc cQ -bT +bV ab ab -bT +bV jS jS jS @@ -52528,7 +52556,7 @@ jS jS jS jS -bT +bV ab ab ab @@ -52770,10 +52798,10 @@ cc dJ cc cc -bT +bV ab ab -bT +bV jS jS jS @@ -52785,7 +52813,7 @@ jS jS jS jS -bT +bV ab ab ab @@ -53027,10 +53055,10 @@ cc cc cc cc -bT +bV ab ab -bT +bV jS jS jS @@ -53042,7 +53070,7 @@ jS jS jS jS -bT +bV ab ab ab @@ -53272,7 +53300,7 @@ ab ab ab ab -bT +bV cc cN cc @@ -53284,10 +53312,10 @@ hR cc cc cc -bT +bV ab ab -bT +bV jS jU jS @@ -53299,7 +53327,7 @@ jS jS jS jS -bT +bV ab ab ab @@ -53529,7 +53557,7 @@ ab ab ab ab -bT +bV cp cc cc @@ -53541,10 +53569,10 @@ cc cc cc fr -bT +bV ab ab -bT +bV jS jS jS @@ -53556,7 +53584,7 @@ jS jS jS jS -bT +bV ab ab ab @@ -53786,7 +53814,7 @@ ab ab ab ab -bT +bV cc cc cc @@ -53798,10 +53826,10 @@ cc cc cc cc -bT +bV ab ab -bT +bV jS jS jS @@ -53813,7 +53841,7 @@ jS jS jS jS -bT +bV ab ab ab @@ -54043,7 +54071,7 @@ ab ab ab ab -bT +bV cY dd cJ @@ -54055,10 +54083,10 @@ dd cJ cY dd -bT +bV ab ab -bT +bV cY dd cJ @@ -54070,7 +54098,7 @@ dd cJ cY dd -bT +bV ab ab ab @@ -54300,7 +54328,7 @@ ab ab ab ab -bT +bV cZ cZ cZ @@ -54312,10 +54340,10 @@ cZ cZ cZ cZ -bT +bV ab ab -bT +bV cZ cZ cZ @@ -54327,7 +54355,7 @@ cZ cZ cZ cZ -bT +bV ab ab ab @@ -54557,7 +54585,7 @@ ab ab ab ab -bS +bW cZ de cZ @@ -54569,10 +54597,10 @@ de cZ de cZ -bS +fk ab ab -bS +bW cZ de cZ @@ -54584,7 +54612,7 @@ de cZ de cZ -bS +fk ab ab ab diff --git a/_maps/RandomZLevels/undergroundoutpost45.dmm b/_maps/RandomZLevels/undergroundoutpost45.dmm index 3113d7feab..f4bb019090 100644 --- a/_maps/RandomZLevels/undergroundoutpost45.dmm +++ b/_maps/RandomZLevels/undergroundoutpost45.dmm @@ -43,13 +43,19 @@ name = "UO45 Central Hall" }) "af" = ( -/turf/closed/wall/mineral/titanium/nodiagonal, +/turf/closed/wall/shuttle{ + icon_state = "swallc2"; + dir = 2 + }, /area/awaycontent/a1{ has_gravity = 1; name = "UO45 Central Hall" }) "ag" = ( -/turf/closed/wall/mineral/titanium, +/turf/closed/wall/shuttle{ + icon_state = "swall12"; + dir = 2 + }, /area/awaycontent/a1{ has_gravity = 1; name = "UO45 Central Hall" @@ -1144,12 +1150,12 @@ name = "UO45 Central Hall" }) "bW" = ( -/obj/structure/glowshroom/single, +/obj/effect/glowshroom/single, /turf/open/floor/plating/asteroid{ initial_gas_mix = "co2=173.4;n2=135.1;plasma=229.8;TEMP=351.9"; heat_capacity = 1e+006; name = "Cave Floor"; - temperature = 351.9 + temperature = 351.9; }, /area/awaycontent/a7{ always_unpowered = 1; @@ -1165,7 +1171,7 @@ initial_gas_mix = "co2=173.4;n2=135.1;plasma=229.8;TEMP=351.9"; heat_capacity = 1e+006; name = "Cave Floor"; - temperature = 351.9 + temperature = 351.9; }, /area/awaycontent/a7{ always_unpowered = 1; @@ -2776,7 +2782,7 @@ heat_capacity = 1e+006; icon_plating = "asteroidplating"; icon_state = "asteroidplating"; - temperature = 363.9 + temperature = 363.9; }, /area/awaycontent/a7{ always_unpowered = 1; @@ -2961,7 +2967,7 @@ initial_gas_mix = "co2=173.4;n2=135.1;plasma=229.8;TEMP=351.9"; heat_capacity = 1e+006; name = "Cave Floor"; - temperature = 363.9 + temperature = 363.9; }, /area/awaycontent/a7{ always_unpowered = 1; @@ -3380,7 +3386,7 @@ initial_gas_mix = "co2=173.4;n2=135.1;plasma=229.8;TEMP=351.9"; heat_capacity = 1e+006; name = "Cave Floor"; - temperature = 363.9 + temperature = 363.9; }, /area/awaycontent/a1{ has_gravity = 1; @@ -3697,7 +3703,7 @@ initial_gas_mix = "co2=173.4;n2=135.1;plasma=229.8;TEMP=351.9"; heat_capacity = 1e+006; name = "Cave Floor"; - temperature = 363.9 + temperature = 363.9; }, /area/awaycontent/a1{ has_gravity = 1; @@ -3956,12 +3962,12 @@ name = "UO45 Central Hall" }) "gf" = ( -/obj/structure/glowshroom/single, +/obj/effect/glowshroom/single, /turf/open/floor/plating/asteroid{ initial_gas_mix = "co2=173.4;n2=135.1;plasma=229.8;TEMP=351.9"; heat_capacity = 1e+006; name = "Cave Floor"; - temperature = 363.9 + temperature = 363.9; }, /area/awaycontent/a7{ always_unpowered = 1; @@ -4200,7 +4206,7 @@ initial_gas_mix = "co2=173.4;n2=135.1;plasma=229.8;TEMP=351.9"; heat_capacity = 1e+006; name = "Cave Floor"; - temperature = 363.9 + temperature = 363.9; }, /area/awaycontent/a2{ has_gravity = 1; @@ -4544,7 +4550,7 @@ initial_gas_mix = "co2=173.4;n2=135.1;plasma=229.8;TEMP=351.9"; heat_capacity = 1e+006; name = "Cave Floor"; - temperature = 363.9 + temperature = 363.9; }, /area/awaycontent/a5{ has_gravity = 1; @@ -4558,7 +4564,7 @@ initial_gas_mix = "co2=173.4;n2=135.1;plasma=229.8;TEMP=351.9"; heat_capacity = 1e+006; name = "Cave Floor"; - temperature = 363.9 + temperature = 363.9; }, /area/awaycontent/a2{ has_gravity = 1; @@ -4603,7 +4609,7 @@ initial_gas_mix = "co2=173.4;n2=135.1;plasma=229.8;TEMP=351.9"; heat_capacity = 1e+006; name = "Cave Floor"; - temperature = 363.9 + temperature = 363.9; }, /area/awaycontent/a2{ has_gravity = 1; @@ -6323,7 +6329,7 @@ initial_gas_mix = "co2=173.4;n2=135.1;plasma=229.8;TEMP=351.9"; heat_capacity = 1e+006; name = "Cave Floor"; - temperature = 363.9 + temperature = 363.9; }, /area/awaycontent/a6{ has_gravity = 1; @@ -6372,7 +6378,7 @@ initial_gas_mix = "co2=173.4;n2=135.1;plasma=229.8;TEMP=351.9"; heat_capacity = 1e+006; name = "Cave Floor"; - temperature = 363.9 + temperature = 363.9; }, /area/awaycontent/a5{ has_gravity = 1; @@ -6619,7 +6625,7 @@ name = "UO45 Central Hall" }) "kd" = ( -/obj/item/weapon/storage/backpack/satchel/tox, +/obj/item/weapon/storage/backpack/satchel_tox, /obj/item/clothing/gloves/color/latex, /obj/item/clothing/suit/toggle/labcoat/science, /obj/effect/decal/cleanable/dirt, @@ -8448,7 +8454,7 @@ /obj/structure/window/reinforced{ dir = 8 }, -/obj/item/weapon/storage/backpack/satchel/eng, +/obj/item/weapon/storage/backpack/satchel_eng, /obj/item/clothing/suit/hazardvest, /obj/item/clothing/mask/gas, /obj/item/clothing/glasses/meson, @@ -8636,7 +8642,7 @@ initial_gas_mix = "co2=173.4;n2=135.1;plasma=229.8;TEMP=351.9"; heat_capacity = 1e+006; name = "Cave Floor"; - temperature = 363.9 + temperature = 363.9; }, /area/awaycontent/a6{ has_gravity = 1; @@ -10837,7 +10843,7 @@ initial_gas_mix = "co2=173.4;n2=135.1;plasma=229.8;TEMP=351.9"; heat_capacity = 1e+006; name = "Cave Floor"; - temperature = 363.9 + temperature = 363.9; }, /area/awaycontent/a7{ always_unpowered = 1; @@ -10856,7 +10862,7 @@ initial_gas_mix = "co2=173.4;n2=135.1;plasma=229.8;TEMP=351.9"; heat_capacity = 1e+006; name = "Cave Floor"; - temperature = 363.9 + temperature = 363.9; }, /area/awaycontent/a7{ always_unpowered = 1; @@ -10876,7 +10882,7 @@ initial_gas_mix = "co2=173.4;n2=135.1;plasma=229.8;TEMP=351.9"; heat_capacity = 1e+006; name = "Cave Floor"; - temperature = 363.9 + temperature = 363.9; }, /area/awaycontent/a3{ has_gravity = 1; @@ -11279,7 +11285,7 @@ initial_gas_mix = "co2=173.4;n2=135.1;plasma=229.8;TEMP=351.9"; heat_capacity = 1e+006; name = "Cave Floor"; - temperature = 363.9 + temperature = 363.9; }, /area/awaycontent/a7{ always_unpowered = 1; @@ -11497,7 +11503,7 @@ }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/item/weapon/hand_labeler, -/obj/item/clothing/neck/stethoscope, +/obj/item/clothing/tie/stethoscope, /turf/open/floor/plasteel/white/side{ dir = 2; heat_capacity = 1e+006 @@ -11636,7 +11642,7 @@ initial_gas_mix = "co2=173.4;n2=135.1;plasma=229.8;TEMP=351.9"; heat_capacity = 1e+006; name = "Cave Floor"; - temperature = 363.9 + temperature = 363.9; }, /area/awaycontent/a7{ always_unpowered = 1; @@ -11655,7 +11661,7 @@ initial_gas_mix = "co2=173.4;n2=135.1;plasma=229.8;TEMP=351.9"; heat_capacity = 1e+006; name = "Cave Floor"; - temperature = 363.9 + temperature = 363.9; }, /area/awaycontent/a7{ always_unpowered = 1; @@ -11674,7 +11680,7 @@ initial_gas_mix = "co2=173.4;n2=135.1;plasma=229.8;TEMP=351.9"; heat_capacity = 1e+006; name = "Cave Floor"; - temperature = 363.9 + temperature = 363.9; }, /area/awaycontent/a7{ always_unpowered = 1; @@ -13113,7 +13119,7 @@ name = "miner's equipment"; req_access = list(201) }, -/obj/item/weapon/storage/backpack/satchel/eng, +/obj/item/weapon/storage/backpack/satchel_eng, /obj/item/clothing/gloves/fingerless, /turf/open/floor/plasteel/brown/corner{ dir = 2; @@ -14505,7 +14511,7 @@ initial_gas_mix = "co2=173.4;n2=135.1;plasma=229.8;TEMP=351.9"; heat_capacity = 1e+006; name = "Cave Floor"; - temperature = 363.9 + temperature = 363.9; }, /area/awaycontent/a2{ has_gravity = 1; @@ -15352,7 +15358,7 @@ initial_gas_mix = "co2=173.4;n2=135.1;plasma=229.8;TEMP=351.9"; heat_capacity = 1e+006; name = "Cave Floor"; - temperature = 363.9 + temperature = 363.9; }, /area/awaycontent/a7{ always_unpowered = 1; @@ -15667,7 +15673,7 @@ initial_gas_mix = "co2=173.4;n2=135.1;plasma=229.8;TEMP=351.9"; heat_capacity = 1e+006; name = "Cave Floor"; - temperature = 363.9 + temperature = 363.9; }, /area/awaycontent/a5{ has_gravity = 1; @@ -16049,7 +16055,7 @@ initial_gas_mix = "co2=173.4;n2=135.1;plasma=229.8;TEMP=351.9"; heat_capacity = 1e+006; name = "Cave Floor"; - temperature = 363.9 + temperature = 363.9; }, /area/awaycontent/a4{ has_gravity = 1; @@ -17477,7 +17483,7 @@ initial_gas_mix = "co2=173.4;n2=135.1;plasma=229.8;TEMP=351.9"; heat_capacity = 1e+006; name = "Cave Floor"; - temperature = 363.9 + temperature = 363.9; }, /area/awaycontent/a4{ has_gravity = 1; @@ -17489,7 +17495,7 @@ initial_gas_mix = "co2=173.4;n2=135.1;plasma=229.8;TEMP=351.9"; heat_capacity = 1e+006; name = "Cave Floor"; - temperature = 363.9 + temperature = 363.9; }, /area/awaycontent/a7{ always_unpowered = 1; @@ -17506,7 +17512,7 @@ initial_gas_mix = "co2=173.4;n2=135.1;plasma=229.8;TEMP=351.9"; heat_capacity = 1e+006; name = "Cave Floor"; - temperature = 363.9 + temperature = 363.9; }, /area/awaycontent/a7{ always_unpowered = 1; @@ -17527,7 +17533,7 @@ initial_gas_mix = "co2=173.4;n2=135.1;plasma=229.8;TEMP=351.9"; heat_capacity = 1e+006; name = "Cave Floor"; - temperature = 363.9 + temperature = 363.9; }, /area/awaycontent/a7{ always_unpowered = 1; @@ -17547,7 +17553,7 @@ initial_gas_mix = "co2=173.4;n2=135.1;plasma=229.8;TEMP=351.9"; heat_capacity = 1e+006; name = "Cave Floor"; - temperature = 363.9 + temperature = 363.9; }, /area/awaycontent/a7{ always_unpowered = 1; @@ -17562,13 +17568,13 @@ /obj/structure/alien/weeds{ icon_state = "weeds2" }, -/obj/structure/glowshroom/single, +/obj/effect/glowshroom/single, /obj/effect/decal/cleanable/blood/gibs/down, /turf/open/floor/plating/asteroid{ initial_gas_mix = "co2=173.4;n2=135.1;plasma=229.8;TEMP=351.9"; heat_capacity = 1e+006; name = "Cave Floor"; - temperature = 363.9 + temperature = 363.9; }, /area/awaycontent/a7{ always_unpowered = 1; @@ -17588,7 +17594,7 @@ initial_gas_mix = "co2=173.4;n2=135.1;plasma=229.8;TEMP=351.9"; heat_capacity = 1e+006; name = "Cave Floor"; - temperature = 363.9 + temperature = 363.9; }, /area/awaycontent/a7{ always_unpowered = 1; @@ -17607,7 +17613,7 @@ initial_gas_mix = "co2=173.4;n2=135.1;plasma=229.8;TEMP=351.9"; heat_capacity = 1e+006; name = "Cave Floor"; - temperature = 363.9 + temperature = 363.9; }, /area/awaycontent/a7{ always_unpowered = 1; @@ -17625,7 +17631,7 @@ initial_gas_mix = "co2=173.4;n2=135.1;plasma=229.8;TEMP=351.9"; heat_capacity = 1e+006; name = "Cave Floor"; - temperature = 363.9 + temperature = 363.9; }, /area/awaycontent/a7{ always_unpowered = 1; @@ -17645,7 +17651,7 @@ initial_gas_mix = "co2=173.4;n2=135.1;plasma=229.8;TEMP=351.9"; heat_capacity = 1e+006; name = "Cave Floor"; - temperature = 363.9 + temperature = 363.9; }, /area/awaycontent/a7{ always_unpowered = 1; @@ -17662,7 +17668,7 @@ initial_gas_mix = "co2=173.4;n2=135.1;plasma=229.8;TEMP=351.9"; heat_capacity = 1e+006; name = "Cave Floor"; - temperature = 363.9 + temperature = 363.9; }, /area/awaycontent/a7{ always_unpowered = 1; @@ -17679,7 +17685,7 @@ initial_gas_mix = "co2=173.4;n2=135.1;plasma=229.8;TEMP=351.9"; heat_capacity = 1e+006; name = "Cave Floor"; - temperature = 363.9 + temperature = 363.9; }, /area/awaycontent/a7{ always_unpowered = 1; @@ -17697,7 +17703,7 @@ initial_gas_mix = "co2=173.4;n2=135.1;plasma=229.8;TEMP=351.9"; heat_capacity = 1e+006; name = "Cave Floor"; - temperature = 363.9 + temperature = 363.9; }, /area/awaycontent/a7{ always_unpowered = 1; @@ -17712,12 +17718,12 @@ /obj/structure/alien/weeds{ icon_state = "weeds1" }, -/obj/structure/glowshroom/single, +/obj/effect/glowshroom/single, /turf/open/floor/plating/asteroid{ initial_gas_mix = "co2=173.4;n2=135.1;plasma=229.8;TEMP=351.9"; heat_capacity = 1e+006; name = "Cave Floor"; - temperature = 363.9 + temperature = 363.9; }, /area/awaycontent/a7{ always_unpowered = 1; @@ -17735,7 +17741,7 @@ initial_gas_mix = "co2=173.4;n2=135.1;plasma=229.8;TEMP=351.9"; heat_capacity = 1e+006; name = "Cave Floor"; - temperature = 363.9 + temperature = 363.9; }, /area/awaycontent/a7{ always_unpowered = 1; @@ -17753,7 +17759,7 @@ initial_gas_mix = "co2=173.4;n2=135.1;plasma=229.8;TEMP=351.9"; heat_capacity = 1e+006; name = "Cave Floor"; - temperature = 363.9 + temperature = 363.9; }, /area/awaycontent/a7{ always_unpowered = 1; @@ -17771,7 +17777,7 @@ initial_gas_mix = "co2=173.4;n2=135.1;plasma=229.8;TEMP=351.9"; heat_capacity = 1e+006; name = "Cave Floor"; - temperature = 363.9 + temperature = 363.9; }, /area/awaycontent/a7{ always_unpowered = 1; @@ -17790,7 +17796,7 @@ initial_gas_mix = "co2=173.4;n2=135.1;plasma=229.8;TEMP=351.9"; heat_capacity = 1e+006; name = "Cave Floor"; - temperature = 363.9 + temperature = 363.9; }, /area/awaycontent/a7{ always_unpowered = 1; @@ -17807,7 +17813,7 @@ initial_gas_mix = "co2=173.4;n2=135.1;plasma=229.8;TEMP=351.9"; heat_capacity = 1e+006; name = "Cave Floor"; - temperature = 363.9 + temperature = 363.9; }, /area/awaycontent/a7{ always_unpowered = 1; @@ -17824,7 +17830,7 @@ initial_gas_mix = "co2=173.4;n2=135.1;plasma=229.8;TEMP=351.9"; heat_capacity = 1e+006; name = "Cave Floor"; - temperature = 363.9 + temperature = 363.9; }, /area/awaycontent/a7{ always_unpowered = 1; @@ -17842,7 +17848,7 @@ initial_gas_mix = "co2=173.4;n2=135.1;plasma=229.8;TEMP=351.9"; heat_capacity = 1e+006; name = "Cave Floor"; - temperature = 363.9 + temperature = 363.9; }, /area/awaycontent/a7{ always_unpowered = 1; @@ -17859,7 +17865,7 @@ initial_gas_mix = "co2=173.4;n2=135.1;plasma=229.8;TEMP=351.9"; heat_capacity = 1e+006; name = "Cave Floor"; - temperature = 363.9 + temperature = 363.9; }, /area/awaycontent/a7{ always_unpowered = 1; @@ -17877,7 +17883,7 @@ initial_gas_mix = "co2=173.4;n2=135.1;plasma=229.8;TEMP=351.9"; heat_capacity = 1e+006; name = "Cave Floor"; - temperature = 363.9 + temperature = 363.9; }, /area/awaycontent/a7{ always_unpowered = 1; @@ -17898,7 +17904,7 @@ initial_gas_mix = "co2=173.4;n2=135.1;plasma=229.8;TEMP=351.9"; heat_capacity = 1e+006; name = "Cave Floor"; - temperature = 363.9 + temperature = 363.9; }, /area/awaycontent/a7{ always_unpowered = 1; @@ -17918,7 +17924,7 @@ initial_gas_mix = "co2=173.4;n2=135.1;plasma=229.8;TEMP=351.9"; heat_capacity = 1e+006; name = "Cave Floor"; - temperature = 363.9 + temperature = 363.9; }, /area/awaycontent/a7{ always_unpowered = 1; @@ -17938,7 +17944,7 @@ initial_gas_mix = "co2=173.4;n2=135.1;plasma=229.8;TEMP=351.9"; heat_capacity = 1e+006; name = "Cave Floor"; - temperature = 363.9 + temperature = 363.9; }, /area/awaycontent/a7{ always_unpowered = 1; @@ -17957,7 +17963,7 @@ initial_gas_mix = "co2=173.4;n2=135.1;plasma=229.8;TEMP=351.9"; heat_capacity = 1e+006; name = "Cave Floor"; - temperature = 363.9 + temperature = 363.9; }, /area/awaycontent/a7{ always_unpowered = 1; @@ -17978,7 +17984,7 @@ initial_gas_mix = "co2=173.4;n2=135.1;plasma=229.8;TEMP=351.9"; heat_capacity = 1e+006; name = "Cave Floor"; - temperature = 363.9 + temperature = 363.9; }, /area/awaycontent/a7{ always_unpowered = 1; @@ -17996,7 +18002,7 @@ initial_gas_mix = "co2=173.4;n2=135.1;plasma=229.8;TEMP=351.9"; heat_capacity = 1e+006; name = "Cave Floor"; - temperature = 363.9 + temperature = 363.9; }, /area/awaycontent/a7{ always_unpowered = 1; @@ -18069,7 +18075,7 @@ "yN" = ( /obj/structure/grille{ density = 0; - broken = 1; + destroyed = 1; icon_state = "brokengrille" }, /turf/open/floor/plasteel/shuttle{ @@ -48796,10 +48802,10 @@ ad ad ae af -ag -ag -ag -af +ai +ai +ai +av an aS aS @@ -49056,7 +49062,7 @@ ag aj ak aq -ag +aw an aF aS @@ -49827,7 +49833,7 @@ ag am ap fu -ag +aA ae aG aL @@ -50080,11 +50086,11 @@ ad ad ad ae -af -ag -ag -ag -af +ah +ai +ai +ai +aE an aH aS diff --git a/_maps/RandomZLevels/wildwest.dmm b/_maps/RandomZLevels/wildwest.dmm index cefd6b67e8..e1a8d15946 100644 --- a/_maps/RandomZLevels/wildwest.dmm +++ b/_maps/RandomZLevels/wildwest.dmm @@ -9,7 +9,7 @@ /turf/open/floor/engine/cult, /area/awaymission/wwvault) "ad" = ( -/obj/structure/destructible/cult/pylon, +/obj/structure/cult/pylon, /turf/open/floor/engine/cult, /area/awaymission/wwvault) "ae" = ( @@ -71,7 +71,7 @@ /turf/open/floor/plasteel/circuit/gcircuit/off, /area/awaymission/wwvault) "aq" = ( -/obj/structure/destructible/cult/pylon, +/obj/structure/cult/pylon, /turf/open/floor/plasteel/circuit/gcircuit/off, /area/awaymission/wwvault) "ar" = ( @@ -131,7 +131,7 @@ /turf/open/floor/plasteel/circuit/gcircuit/off, /area/awaymission/wwvault) "aB" = ( -/obj/structure/destructible/cult/pylon, +/obj/structure/cult/pylon, /turf/open/floor/plasteel/circuit/off, /area/awaymission/wwvault) "aC" = ( @@ -366,7 +366,7 @@ /area/awaymission/wwmines) "bC" = ( /obj/structure/table/wood, -/obj/item/weapon/gun/ballistic, +/obj/item/weapon/gun/projectile, /turf/open/floor/wood, /area/awaymission/wwmines) "bD" = ( @@ -570,6 +570,7 @@ /turf/open/floor/wood, /area/awaymission/wwmines) "cc" = ( +/obj/structure/sign/maltesefalcon/left, /turf/closed/wall/mineral/sandstone, /area/awaymission/wwmines) "cd" = ( @@ -620,7 +621,7 @@ /area/awaymission/wwmines) "ch" = ( /obj/structure/table/wood, -/obj/item/weapon/gun/ballistic, +/obj/item/weapon/gun/projectile, /turf/open/floor/plasteel/cafeteria{ dir = 5 }, @@ -949,6 +950,7 @@ /turf/open/floor/carpet, /area/awaymission/wwmines) "dl" = ( +/obj/structure/sign/maltesefalcon/right, /turf/closed/wall/mineral/sandstone, /area/awaymission/wwmines) "dm" = ( @@ -1307,7 +1309,7 @@ /turf/open/floor/carpet, /area/awaymission/wwmines) "eq" = ( -/obj/item/weapon/gun/ballistic/shotgun, +/obj/item/weapon/gun/projectile/shotgun, /turf/open/floor/wood, /area/awaymission/wwmines) "er" = ( @@ -1387,7 +1389,7 @@ "eE" = ( /obj/structure/bed, /obj/item/weapon/bedsheet/blue, -/obj/item/weapon/gun/ballistic, +/obj/item/weapon/gun/projectile, /turf/open/floor/wood, /area/awaymission/wwmines) "eF" = ( @@ -1839,7 +1841,7 @@ /area/awaymission/wwmines) "fS" = ( /obj/structure/table/wood, -/obj/item/weapon/gun/ballistic/shotgun, +/obj/item/weapon/gun/projectile/shotgun, /turf/open/floor/wood, /area/awaymission/wwmines) "fT" = ( @@ -1928,7 +1930,7 @@ /area/awaymission/wwmines) "gg" = ( /obj/structure/table/wood, -/obj/item/weapon/gun/ballistic/revolver/russian, +/obj/item/weapon/gun/projectile/revolver/russian, /turf/open/floor/wood, /area/awaymission/wwmines) "gh" = ( @@ -1956,7 +1958,7 @@ /turf/open/floor/wood, /area/awaymission/wwmines) "gm" = ( -/obj/item/weapon/gun/ballistic, +/obj/item/weapon/gun/projectile, /turf/open/floor/wood, /area/awaymission/wwmines) "gn" = ( @@ -2007,11 +2009,11 @@ /turf/open/floor/wood, /area/awaymission/wwmines) "gw" = ( -/obj/item/weapon/gun/ballistic/automatic/pistol, +/obj/item/weapon/gun/projectile/automatic/pistol, /turf/open/floor/wood, /area/awaymission/wwmines) "gx" = ( -/obj/item/weapon/gun/ballistic/shotgun, +/obj/item/weapon/gun/projectile/shotgun, /turf/open/floor/plating/ironsand{ icon_state = "ironsand1" }, @@ -2105,15 +2107,15 @@ /obj/structure/grille, /turf/open/floor/plasteel, /area/awaymission/wwrefine) -"gH" = ( -/obj/structure/sign/barsign, -/turf/closed/wall/mineral/sandstone, -/area/awaymission/wwmines) "gI" = ( -/turf/closed/wall/mineral/titanium/overspace, +/turf/closed/wall/shuttle{ + icon_state = "swall_s6" + }, /area/awaymission/wwrefine) "gJ" = ( -/turf/closed/wall/mineral/titanium, +/turf/closed/wall/shuttle{ + icon_state = "swall12" + }, /area/awaymission/wwrefine) "gK" = ( /turf/closed/wall/shuttle{ @@ -2152,7 +2154,9 @@ }, /area/awaymission/wwrefine) "gS" = ( -/turf/closed/wall/mineral/titanium/nodiagonal, +/turf/closed/wall/shuttle{ + icon_state = "swallc1" + }, /area/awaymission/wwrefine) "gT" = ( /turf/closed/wall/shuttle{ @@ -28346,10 +28350,10 @@ aa aa aa gI -gJ -gJ -gJ -gI +gO +gO +gO +gR aa aa aa @@ -28607,10 +28611,10 @@ gP gP gP gS -gJ -gJ -gJ -gI +gO +gO +gO +gR aa aa aa @@ -28859,7 +28863,7 @@ fj fo fo gG -gJ +gK gP gP gP @@ -29373,7 +29377,7 @@ gA fo fo gG -gJ +gM gP gP gP @@ -29634,11 +29638,11 @@ gJ gP gP gP -gS -gJ -gJ -gJ -gI +gT +gO +gO +gO +gU aa aa aa @@ -29887,11 +29891,11 @@ eJ aa aa aa -gI -gJ -gJ -gJ -gI +gN +gO +gO +gO +gU aa aa aa @@ -44749,7 +44753,7 @@ bj bj bj aT -gH +bu bD bj bD @@ -45275,7 +45279,7 @@ bj bj db bj -gH +cc aT bj bj @@ -45532,7 +45536,7 @@ bj bj bj bj -bu +dl aT bj bj diff --git a/_maps/deltastation.dm b/_maps/deltastation.dm deleted file mode 100644 index 5a66be6ca1..0000000000 --- a/_maps/deltastation.dm +++ /dev/null @@ -1,29 +0,0 @@ -#if !defined(MAP_FILE) - - #define TITLESCREEN "title" //Add an image in misc/fullscreen.dmi, and set this define to the icon_state, to set a custom titlescreen for your map - - #define MINETYPE "lavaland" - - #include "map_files\DeltaStation\DeltaStation2.dmm" - #include "map_files\generic\z2.dmm" - #include "map_files\generic\z3.dmm" - #include "map_files\generic\z4.dmm" - #include "map_files\generic\lavaland.dmm" - #include "map_files\generic\z6.dmm" - #include "map_files\generic\z7.dmm" - #include "map_files\generic\z8.dmm" - #include "map_files\generic\z9.dmm" - #include "map_files\generic\z10.dmm" - #include "map_files\generic\z11.dmm" - - #define MAP_PATH "map_files/DeltaStation" - #define MAP_FILE "DeltaStation2.dmm" - #define MAP_NAME "Delta Station" - - #define MAP_TRANSITION_CONFIG DEFAULT_MAP_TRANSITION_CONFIG - -#elif !defined(MAP_OVERRIDE) - - #warn a map has already been included, deltastation. - -#endif diff --git a/_maps/map_files/BirdStation/BirdStation.dmm b/_maps/map_files/BirdStation/BirdStation.dmm index b5acd31692..ed7cc9b033 100644 --- a/_maps/map_files/BirdStation/BirdStation.dmm +++ b/_maps/map_files/BirdStation/BirdStation.dmm @@ -16,15 +16,26 @@ /turf/open/space, /area/space) "aac" = ( -/turf/closed/wall/mineral/plastitanium, +/turf/open/space, +/obj/machinery/porta_turret/syndicate, +/turf/closed/wall/shuttle{ + dir = 8; + icon_state = "diagonalWall3" + }, /area/shuttle/syndicate) "aad" = ( -/obj/structure/table, -/obj/machinery/microwave, -/turf/open/floor/mineral/plastitanium, +/turf/closed/wall/shuttle{ + icon_state = "wall3" + }, /area/shuttle/syndicate) "aae" = ( -/turf/open/floor/mineral/plastitanium, +/obj/structure/grille, +/obj/machinery/door/poddoor/shutters{ + id = "syndieshutters"; + name = "blast shutters" + }, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, /area/shuttle/syndicate) "aaf" = ( /turf/open/space, @@ -36,23 +47,11 @@ /area/shuttle/syndicate) "aag" = ( /obj/structure/table, -/obj/item/weapon/storage/box/donkpockets{ - pixel_x = 3; - pixel_y = 3 - }, -/turf/open/floor/mineral/plastitanium, +/obj/machinery/microwave, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "aah" = ( -/obj/item/device/radio/intercom{ - desc = "Talk through this. Evilly"; - freerange = 1; - frequency = 1213; - name = "Syndicate Intercom"; - pixel_y = -32; - subspace_transmission = 1; - syndie = 1 - }, -/turf/open/floor/mineral/plastitanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "aai" = ( /obj/structure/table, @@ -63,11 +62,8 @@ /turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "aaj" = ( -/obj/structure/chair/comfy/beige{ - dir = 1; - icon_state = "comfychair" - }, -/turf/open/floor/mineral/plastitanium, +/obj/machinery/computer/shuttle/syndicate, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "aak" = ( /obj/structure/table, @@ -84,11 +80,11 @@ /area/shuttle/syndicate) "aam" = ( /obj/structure/table, -/obj/item/stack/sheet/glass{ - amount = 10 +/obj/item/weapon/storage/box/donkpockets{ + pixel_x = 3; + pixel_y = 3 }, -/obj/item/device/multitool, -/turf/open/floor/mineral/plastitanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "aan" = ( /obj/structure/chair/comfy/black{ @@ -124,6 +120,10 @@ /area/shuttle/syndicate) "aar" = ( /turf/open/space, +/turf/closed/wall/shuttle{ + dir = 2; + icon_state = "diagonalWall3" + }, /area/shuttle/syndicate) "aas" = ( /obj/machinery/door/window{ @@ -134,10 +134,7 @@ /area/shuttle/syndicate) "aat" = ( /turf/open/space, -/obj/machinery/porta_turret/syndicate{ - dir = 6 - }, -/turf/closed/wall/mineral/plastitanium{ +/turf/closed/wall/shuttle{ dir = 4; icon_state = "diagonalWall3" }, @@ -149,10 +146,12 @@ /turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "aav" = ( -/obj/structure/chair{ - dir = 8 +/obj/structure/table, +/obj/item/weapon/storage/box/zipties{ + pixel_x = 1; + pixel_y = 2 }, -/turf/open/floor/mineral/plastitanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "aaw" = ( /obj/structure/chair{ @@ -192,9 +191,8 @@ /turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "aaD" = ( -/obj/structure/table, -/obj/item/device/aicard, -/turf/open/floor/mineral/plastitanium, +/obj/structure/closet/syndicate/nuclear, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "aaE" = ( /obj/structure/chair/stool, @@ -202,30 +200,12 @@ /area/shuttle/syndicate) "aaF" = ( /obj/structure/table, -/obj/item/weapon/c4{ - pixel_x = 2; - pixel_y = -5 - }, -/obj/item/weapon/c4{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/weapon/c4{ - pixel_x = 2; - pixel_y = -3 - }, -/obj/item/weapon/c4{ - pixel_x = -2; - pixel_y = -1 - }, -/obj/item/weapon/c4{ - pixel_x = 3; - pixel_y = 3 - }, -/turf/open/floor/mineral/plastitanium, +/obj/item/device/aicard, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "aaG" = ( /obj/machinery/door/poddoor{ + auto_close = 300; id = "smindicate"; name = "outer blast door" }, @@ -244,7 +224,7 @@ id = "syndicate"; name = "syndicate infiltrator"; roundstart_move = "syndicate_away"; - port_angle = 180; + travelDir = 180; width = 18 }, /obj/docking_port/stationary{ @@ -291,13 +271,11 @@ /area/shuttle/syndicate) "aaL" = ( /obj/machinery/door/window{ - base_state = "right"; dir = 4; - icon_state = "right"; name = "EVA Storage"; req_access_txt = "150" }, -/turf/open/floor/mineral/plastitanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "aaM" = ( /obj/machinery/door/airlock/external{ @@ -356,8 +334,8 @@ /turf/open/space, /area/space) "aaU" = ( -/obj/structure/bed/roller, -/turf/open/floor/mineral/titanium, +/obj/machinery/recharge_station, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "aaV" = ( /obj/machinery/portable_atmospherics/canister/oxygen, @@ -415,9 +393,11 @@ /area/shuttle/syndicate) "abc" = ( /obj/structure/table, -/obj/item/weapon/storage/toolbox/syndicate, -/obj/item/weapon/crowbar/red, -/turf/open/floor/mineral/plastitanium, +/obj/item/weapon/weldingtool/largetank{ + pixel_y = 3 + }, +/obj/item/device/multitool, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "abd" = ( /obj/machinery/door/window{ @@ -425,14 +405,14 @@ name = "Infirmary"; req_access_txt = "150" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "abe" = ( /obj/machinery/door/window/westright{ name = "Tool Storage"; req_access_txt = "150" }, -/turf/open/floor/mineral/plastitanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "abf" = ( /obj/structure/table, @@ -441,13 +421,10 @@ /turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "abg" = ( -/obj/structure/window/reinforced{ - dir = 1 +/obj/machinery/sleeper/syndie{ + dir = 4 }, -/obj/structure/table, -/obj/item/bodypart/r_arm/robot, -/obj/item/bodypart/l_arm/robot, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "abh" = ( /obj/machinery/door/window{ @@ -457,7 +434,7 @@ name = "Infirmary"; req_access_txt = "150" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "abi" = ( /obj/machinery/door/window{ @@ -465,36 +442,26 @@ name = "Tool Storage"; req_access_txt = "150" }, -/turf/open/floor/mineral/plastitanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "abj" = ( /obj/structure/table, -/obj/structure/window/reinforced{ - dir = 8 +/obj/item/weapon/gun/syringe{ + pixel_x = 1; + pixel_y = 2 }, -/obj/item/weapon/storage/firstaid/regular{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/storage/firstaid/brute, -/obj/item/weapon/storage/firstaid/regular{ - pixel_x = -3; - pixel_y = -3 - }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "abk" = ( /obj/structure/table, -/obj/item/weapon/storage/firstaid/regular{ - pixel_x = 3; - pixel_y = 3 +/obj/item/weapon/reagent_containers/syringe/charcoal, +/obj/item/weapon/reagent_containers/syringe/charcoal{ + pixel_y = 2 }, -/obj/item/weapon/storage/firstaid/fire, -/obj/item/weapon/storage/firstaid/regular{ - pixel_x = -3; - pixel_y = -3 +/obj/item/weapon/reagent_containers/syringe/charcoal{ + pixel_y = 4 }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "abl" = ( /obj/structure/window/reinforced{ @@ -519,7 +486,7 @@ pixel_y = 5 }, /obj/item/device/sbeacondrop/bomb, -/turf/open/floor/mineral/plastitanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "abo" = ( /obj/structure/table, @@ -530,7 +497,7 @@ /obj/item/weapon/grenade/syndieminibomb{ pixel_x = -1 }, -/turf/open/floor/mineral/plastitanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "abp" = ( /obj/structure/sink{ @@ -542,7 +509,7 @@ /obj/structure/mirror{ pixel_x = 30 }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "abq" = ( /obj/machinery/telecomms/allinone{ @@ -552,12 +519,7 @@ /area/shuttle/syndicate) "abr" = ( /obj/machinery/nuclearbomb/syndicate, -/obj/machinery/door/window{ - dir = 1; - name = "Secure Storage"; - req_access_txt = "150" - }, -/turf/open/floor/mineral/plastitanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "abs" = ( /turf/closed/wall, @@ -575,20 +537,24 @@ /area/engine/engineering) "abv" = ( /obj/structure/table, +/obj/item/weapon/circular_saw, /obj/item/weapon/cautery, -/obj/item/weapon/scalpel, -/turf/open/floor/mineral/titanium, +/obj/item/weapon/surgicaldrill, +/obj/item/robot_parts/l_arm, +/obj/item/robot_parts/r_arm, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "abw" = ( /obj/structure/table/optable, -/obj/item/weapon/surgical_drapes, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "abx" = ( /obj/structure/table, +/obj/item/weapon/scalpel, /obj/item/weapon/retractor, /obj/item/weapon/hemostat, -/turf/open/floor/mineral/titanium, +/obj/item/weapon/surgical_drapes, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "aby" = ( /obj/structure/shuttle/engine/heater, @@ -598,27 +564,20 @@ /turf/open/floor/plating, /area/shuttle/syndicate) "abz" = ( -/obj/structure/reagent_dispensers/fueltank, -/turf/open/floor/mineral/plastitanium, +/obj/structure/frame/computer, +/obj/item/weapon/paper{ + info = "

Teleporter Instruction


  1. Install circuit board, glass and wiring to complete Teleporter Control Console
  2. Use a screwdriver, wirecutter and screwdriver again on the Teleporter Station to connect it
  3. Set destination with Teleporter Control Computer
  4. Activate Teleporter Hub with Teleporter Station
"; + name = "Teleporter Instructions" + }, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "abA" = ( -/obj/structure/table, -/obj/item/stack/sheet/metal{ - amount = 50 - }, -/obj/item/stack/sheet/glass{ - amount = 50 - }, -/obj/item/stack/rods{ - amount = 50 - }, -/turf/open/floor/mineral/plastitanium, +/obj/machinery/teleport/station, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "abB" = ( -/obj/structure/rack, -/obj/item/clothing/suit/space/syndicate/black/red, -/obj/item/clothing/head/helmet/space/syndicate/black/red, -/turf/open/floor/mineral/plastitanium, +/obj/machinery/teleport/hub/syndicate, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "abC" = ( /turf/open/floor/plasteel/black, @@ -1435,7 +1394,7 @@ /area/space) "adL" = ( /turf/closed/wall/r_wall, -/area/ai_monitored/turret_protected/ai{ +/area/turret_protected/ai{ name = "\improper AI Core" }) "adM" = ( @@ -1550,12 +1509,12 @@ dir = 4 }, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai{ +/area/turret_protected/ai{ name = "\improper AI Core" }) "aec" = ( /turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/ai{ +/area/turret_protected/ai{ name = "\improper AI Core" }) "aed" = ( @@ -1564,7 +1523,7 @@ dir = 1 }, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai{ +/area/turret_protected/ai{ name = "\improper AI Core" }) "aee" = ( @@ -1584,7 +1543,7 @@ dir = 6 }, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai{ +/area/turret_protected/ai{ name = "\improper AI Core" }) "aeg" = ( @@ -1592,13 +1551,13 @@ dir = 8 }, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai{ +/area/turret_protected/ai{ name = "\improper AI Core" }) "aeh" = ( /turf/open/floor/engine{ name = "high pressure o2 floor"; - initial_gas_mix = "o2=500000;TEMP=293.15" + initial_gas_mix = "o2=500000" }, /area/engine/engineering) "aei" = ( @@ -1607,7 +1566,7 @@ }, /turf/open/floor/engine{ name = "high pressure o2 floor"; - initial_gas_mix = "o2=500000;TEMP=293.15" + initial_gas_mix = "o2=500000" }, /area/engine/engineering) "aej" = ( @@ -1681,7 +1640,7 @@ uses = 10 }, /turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/ai{ +/area/turret_protected/ai{ name = "\improper AI Core" }) "aeq" = ( @@ -1689,7 +1648,7 @@ network = "tcommsat" }, /turf/open/floor/plasteel, -/area/ai_monitored/turret_protected/tcomeast{ +/area/turret_protected/tcomeast{ name = "\improper Telecommunications Chamber" }) "aer" = ( @@ -1704,14 +1663,14 @@ }, /turf/open/floor/engine{ name = "high pressure o2 floor"; - initial_gas_mix = "o2=500000;TEMP=293.15" + initial_gas_mix = "o2=500000" }, /area/engine/engineering) "aet" = ( /obj/machinery/portable_atmospherics/canister/oxygen, /turf/open/floor/engine{ name = "high pressure o2 floor"; - initial_gas_mix = "o2=500000;TEMP=293.15" + initial_gas_mix = "o2=500000" }, /area/engine/engineering) "aeu" = ( @@ -1726,7 +1685,7 @@ }, /turf/open/floor/engine{ name = "high pressure o2 floor"; - initial_gas_mix = "o2=500000;TEMP=293.15" + initial_gas_mix = "o2=500000" }, /area/engine/engineering) "aev" = ( @@ -1785,7 +1744,7 @@ /area/engine/engineering) "aeB" = ( /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai{ +/area/turret_protected/ai{ name = "\improper AI Core" }) "aeC" = ( @@ -1798,7 +1757,7 @@ /obj/machinery/light/small, /turf/open/floor/engine{ name = "high pressure o2 floor"; - initial_gas_mix = "o2=500000;TEMP=293.15" + initial_gas_mix = "o2=500000" }, /area/engine/engineering) "aeE" = ( @@ -1838,9 +1797,9 @@ /turf/open/floor/plasteel, /area/engine/engineering) "aeI" = ( -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /turf/open/floor/plasteel, -/area/ai_monitored/turret_protected/tcomeast{ +/area/turret_protected/tcomeast{ name = "\improper Telecommunications Chamber" }) "aeJ" = ( @@ -1926,7 +1885,7 @@ /area/space) "aeU" = ( /turf/closed/wall/r_wall, -/area/ai_monitored/turret_protected/tcomeast{ +/area/turret_protected/tcomeast{ name = "\improper Telecommunications Chamber" }) "aeV" = ( @@ -1935,7 +1894,7 @@ dir = 5 }, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai{ +/area/turret_protected/ai{ name = "\improper AI Core" }) "aeW" = ( @@ -1953,7 +1912,7 @@ dir = 9 }, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai{ +/area/turret_protected/ai{ name = "\improper AI Core" }) "aeY" = ( @@ -2052,27 +2011,26 @@ layer = 4.1 }, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/tcomeast{ +/area/turret_protected/tcomeast{ name = "\improper Telecommunications Chamber" }) "afm" = ( /obj/machinery/camera/autoname, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/tcomeast{ +/area/turret_protected/tcomeast{ name = "\improper Telecommunications Chamber" }) "afn" = ( /obj/machinery/light{ dir = 1 }, -/obj/machinery/ntnet_relay, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/tcomeast{ +/area/turret_protected/tcomeast{ name = "\improper Telecommunications Chamber" }) "afo" = ( /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/tcomeast{ +/area/turret_protected/tcomeast{ name = "\improper Telecommunications Chamber" }) "afp" = ( @@ -2080,7 +2038,7 @@ icon_state = "2-4" }, /turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/ai{ +/area/turret_protected/ai{ name = "\improper AI Core" }) "afq" = ( @@ -2171,19 +2129,19 @@ "afC" = ( /obj/machinery/telecomms/bus/preset_one/birdstation, /turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/tcomeast{ +/area/turret_protected/tcomeast{ name = "\improper Telecommunications Chamber" }) "afD" = ( /obj/machinery/blackbox_recorder, /turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/tcomeast{ +/area/turret_protected/tcomeast{ name = "\improper Telecommunications Chamber" }) "afE" = ( /obj/machinery/telecomms/broadcaster/preset_left/birdstation, /turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/tcomeast{ +/area/turret_protected/tcomeast{ name = "\improper Telecommunications Chamber" }) "afF" = ( @@ -2191,7 +2149,7 @@ icon_state = "1-2" }, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai{ +/area/turret_protected/ai{ name = "\improper AI Core" }) "afG" = ( @@ -2206,7 +2164,7 @@ dir = 10 }, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai{ +/area/turret_protected/ai{ name = "\improper AI Core" }) "afI" = ( @@ -2344,24 +2302,24 @@ "afX" = ( /obj/machinery/telecomms/server/presets/common/birdstation, /turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/tcomeast{ +/area/turret_protected/tcomeast{ name = "\improper Telecommunications Chamber" }) "afY" = ( /turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/tcomeast{ +/area/turret_protected/tcomeast{ name = "\improper Telecommunications Chamber" }) "afZ" = ( /obj/machinery/telecomms/hub/preset, /turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/tcomeast{ +/area/turret_protected/tcomeast{ name = "\improper Telecommunications Chamber" }) "aga" = ( /obj/machinery/announcement_system, /turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/tcomeast{ +/area/turret_protected/tcomeast{ name = "\improper Telecommunications Chamber" }) "agb" = ( @@ -2373,7 +2331,7 @@ icon_state = "1-2" }, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai{ +/area/turret_protected/ai{ name = "\improper AI Core" }) "agc" = ( @@ -2515,19 +2473,19 @@ "agv" = ( /obj/machinery/telecomms/processor/preset_one/birdstation, /turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/tcomeast{ +/area/turret_protected/tcomeast{ name = "\improper Telecommunications Chamber" }) "agw" = ( /obj/machinery/message_server, /turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/tcomeast{ +/area/turret_protected/tcomeast{ name = "\improper Telecommunications Chamber" }) "agx" = ( /obj/machinery/telecomms/receiver/preset_left/birdstation, /turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/tcomeast{ +/area/turret_protected/tcomeast{ name = "\improper Telecommunications Chamber" }) "agy" = ( @@ -2535,7 +2493,7 @@ dir = 4 }, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/aisat_interior{ +/area/turret_protected/aisat_interior{ name = "\improper AI Core Lobby" }) "agz" = ( @@ -2543,7 +2501,7 @@ name = "Cyborg" }, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/aisat_interior{ +/area/turret_protected/aisat_interior{ name = "\improper AI Core Lobby" }) "agA" = ( @@ -2551,7 +2509,7 @@ icon_state = "1-2" }, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/aisat_interior{ +/area/turret_protected/aisat_interior{ name = "\improper AI Core Lobby" }) "agB" = ( @@ -2559,18 +2517,18 @@ dir = 8 }, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/aisat_interior{ +/area/turret_protected/aisat_interior{ name = "\improper AI Core Lobby" }) "agC" = ( /turf/closed/wall/r_wall, -/area/ai_monitored/turret_protected/aisat_interior{ +/area/turret_protected/aisat_interior{ name = "\improper AI Core Lobby" }) "agD" = ( /turf/open/floor/engine{ name = "high pressure plasma floor"; - initial_gas_mix = "plasma=240000;TEMP=293.15" + initial_gas_mix = "plasma=240000" }, /area/engine/engineering) "agE" = ( @@ -2579,7 +2537,7 @@ }, /turf/open/floor/engine{ name = "high pressure plasma floor"; - initial_gas_mix = "plasma=240000;TEMP=293.15" + initial_gas_mix = "plasma=240000" }, /area/engine/engineering) "agF" = ( @@ -2700,23 +2658,23 @@ "agP" = ( /obj/structure/window/reinforced, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/tcomeast{ +/area/turret_protected/tcomeast{ name = "\improper Telecommunications Chamber" }) "agQ" = ( /obj/machinery/door/window/southright, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/tcomeast{ +/area/turret_protected/tcomeast{ name = "\improper Telecommunications Chamber" }) "agR" = ( /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/aisat_interior{ +/area/turret_protected/aisat_interior{ name = "\improper AI Core Lobby" }) "agS" = ( /turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/aisat_interior{ +/area/turret_protected/aisat_interior{ name = "\improper AI Core Lobby" }) "agT" = ( @@ -2724,7 +2682,7 @@ icon_state = "1-2" }, /turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/aisat_interior{ +/area/turret_protected/aisat_interior{ name = "\improper AI Core Lobby" }) "agU" = ( @@ -2739,14 +2697,14 @@ }, /turf/open/floor/engine{ name = "high pressure plasma floor"; - initial_gas_mix = "plasma=240000;TEMP=293.15" + initial_gas_mix = "plasma=240000" }, /area/engine/engineering) "agX" = ( /obj/machinery/portable_atmospherics/canister/toxins, /turf/open/floor/engine{ name = "high pressure plasma floor"; - initial_gas_mix = "plasma=240000;TEMP=293.15" + initial_gas_mix = "plasma=240000" }, /area/engine/engineering) "agY" = ( @@ -2761,7 +2719,7 @@ }, /turf/open/floor/engine{ name = "high pressure plasma floor"; - initial_gas_mix = "plasma=240000;TEMP=293.15" + initial_gas_mix = "plasma=240000" }, /area/engine/engineering) "agZ" = ( @@ -2808,8 +2766,8 @@ "ahf" = ( /obj/structure/cable, /obj/machinery/power/generator{ - cold_dir = 4; - hot_dir = 8 + cold_dir = 8; + hot_dir = 4 }, /turf/open/floor/plasteel, /area/engine/engineering) @@ -2855,7 +2813,7 @@ "ahl" = ( /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, -/area/ai_monitored/turret_protected/tcomeast{ +/area/turret_protected/tcomeast{ name = "\improper Telecommunications Chamber" }) "ahm" = ( @@ -2863,7 +2821,7 @@ network = "tcommsat" }, /turf/open/floor/plasteel, -/area/ai_monitored/turret_protected/tcomeast{ +/area/turret_protected/tcomeast{ name = "\improper Telecommunications Chamber" }) "ahn" = ( @@ -2876,7 +2834,7 @@ layer = 4.1 }, /turf/open/floor/plasteel, -/area/ai_monitored/turret_protected/tcomeast{ +/area/turret_protected/tcomeast{ name = "\improper Telecommunications Chamber" }) "aho" = ( @@ -2887,12 +2845,12 @@ }, /obj/item/weapon/pen, /turf/open/floor/plasteel, -/area/ai_monitored/turret_protected/tcomeast{ +/area/turret_protected/tcomeast{ name = "\improper Telecommunications Chamber" }) "ahp" = ( /turf/open/floor/plasteel/neutral, -/area/ai_monitored/turret_protected/tcomeast{ +/area/turret_protected/tcomeast{ name = "\improper Telecommunications Chamber" }) "ahq" = ( @@ -2904,7 +2862,7 @@ dir = 4 }, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/aisat_interior{ +/area/turret_protected/aisat_interior{ name = "\improper AI Core Lobby" }) "ahr" = ( @@ -2912,7 +2870,7 @@ icon_state = "4-8" }, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/aisat_interior{ +/area/turret_protected/aisat_interior{ name = "\improper AI Core Lobby" }) "ahs" = ( @@ -2930,7 +2888,7 @@ icon_state = "tube1" }, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/aisat_interior{ +/area/turret_protected/aisat_interior{ name = "\improper AI Core Lobby" }) "ahu" = ( @@ -2972,7 +2930,7 @@ /obj/machinery/light/small, /turf/open/floor/engine{ name = "high pressure plasma floor"; - initial_gas_mix = "plasma=240000;TEMP=293.15" + initial_gas_mix = "plasma=240000" }, /area/engine/engineering) "ahB" = ( @@ -3060,7 +3018,7 @@ "ahL" = ( /obj/item/device/radio/beacon, /turf/open/floor/plasteel/neutral, -/area/ai_monitored/turret_protected/tcomeast{ +/area/turret_protected/tcomeast{ name = "\improper Telecommunications Chamber" }) "ahM" = ( @@ -3068,7 +3026,7 @@ icon_state = "4-8" }, /turf/open/floor/plasteel/neutral, -/area/ai_monitored/turret_protected/tcomeast{ +/area/turret_protected/tcomeast{ name = "\improper Telecommunications Chamber" }) "ahN" = ( @@ -3076,7 +3034,7 @@ icon_state = "2-4" }, /turf/open/floor/plasteel/neutral, -/area/ai_monitored/turret_protected/tcomeast{ +/area/turret_protected/tcomeast{ name = "\improper Telecommunications Chamber" }) "ahO" = ( @@ -3088,7 +3046,7 @@ icon_state = "4-8" }, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/tcomeast{ +/area/turret_protected/tcomeast{ name = "\improper Telecommunications Chamber" }) "ahP" = ( @@ -3096,7 +3054,7 @@ icon_state = "1-8" }, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/aisat_interior{ +/area/turret_protected/aisat_interior{ name = "\improper AI Core Lobby" }) "ahQ" = ( @@ -3180,7 +3138,7 @@ "aic" = ( /obj/machinery/light, /turf/open/floor/plasteel/neutral, -/area/ai_monitored/turret_protected/tcomeast{ +/area/turret_protected/tcomeast{ name = "\improper Telecommunications Chamber" }) "aid" = ( @@ -3193,7 +3151,7 @@ icon_state = "0-8" }, /turf/open/floor/plasteel/neutral, -/area/ai_monitored/turret_protected/tcomeast{ +/area/turret_protected/tcomeast{ name = "\improper Telecommunications Chamber" }) "aie" = ( @@ -3204,7 +3162,7 @@ icon_state = "1-2" }, /turf/open/floor/plasteel/neutral, -/area/ai_monitored/turret_protected/tcomeast{ +/area/turret_protected/tcomeast{ name = "\improper Telecommunications Chamber" }) "aif" = ( @@ -3213,7 +3171,7 @@ layer = 4.1 }, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/aisat_interior{ +/area/turret_protected/aisat_interior{ name = "\improper AI Core Lobby" }) "aig" = ( @@ -3223,7 +3181,7 @@ }, /obj/structure/cable/cyan, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/aisat_interior{ +/area/turret_protected/aisat_interior{ name = "\improper AI Core Lobby" }) "aih" = ( @@ -3271,7 +3229,7 @@ "ain" = ( /turf/open/floor/engine{ name = "high pressure co2 floor"; - initial_gas_mix = "co2=200000;TEMP=293.15" + initial_gas_mix = "co2=200000" }, /area/engine/engineering) "aio" = ( @@ -3280,7 +3238,7 @@ }, /turf/open/floor/engine{ name = "high pressure co2 floor"; - initial_gas_mix = "co2=200000;TEMP=293.15" + initial_gas_mix = "co2=200000" }, /area/engine/engineering) "aip" = ( @@ -3346,7 +3304,7 @@ req_access_txt = "61" }, /turf/open/floor/plasteel/neutral, -/area/ai_monitored/turret_protected/tcomeast{ +/area/turret_protected/tcomeast{ name = "\improper Telecommunications Chamber" }) "aiy" = ( @@ -3358,7 +3316,7 @@ icon_state = "1-2" }, /turf/open/floor/plasteel/neutral, -/area/ai_monitored/turret_protected/tcomeast{ +/area/turret_protected/tcomeast{ name = "\improper Telecommunications Chamber" }) "aiz" = ( @@ -3395,14 +3353,14 @@ }, /turf/open/floor/engine{ name = "high pressure co2 floor"; - initial_gas_mix = "co2=200000;TEMP=293.15" + initial_gas_mix = "co2=200000" }, /area/engine/engineering) "aiD" = ( /obj/machinery/portable_atmospherics/canister/carbon_dioxide, /turf/open/floor/engine{ name = "high pressure co2 floor"; - initial_gas_mix = "co2=200000;TEMP=293.15" + initial_gas_mix = "co2=200000" }, /area/engine/engineering) "aiE" = ( @@ -3417,7 +3375,7 @@ }, /turf/open/floor/engine{ name = "high pressure co2 floor"; - initial_gas_mix = "co2=200000;TEMP=293.15" + initial_gas_mix = "co2=200000" }, /area/engine/engineering) "aiF" = ( @@ -3537,7 +3495,7 @@ /obj/machinery/light/small, /turf/open/floor/engine{ name = "high pressure co2 floor"; - initial_gas_mix = "co2=200000;TEMP=293.15" + initial_gas_mix = "co2=200000" }, /area/engine/engineering) "aiW" = ( @@ -3644,7 +3602,7 @@ "aji" = ( /turf/open/floor/engine{ name = "high pressure n2 floor"; - initial_gas_mix = "n2=400000;TEMP=293.15" + initial_gas_mix = "n2=400000" }, /area/engine/engineering) "ajj" = ( @@ -3659,7 +3617,7 @@ }, /turf/open/floor/engine{ name = "high pressure n2 floor"; - initial_gas_mix = "n2=400000;TEMP=293.15" + initial_gas_mix = "n2=400000" }, /area/engine/engineering) "ajk" = ( @@ -3767,14 +3725,14 @@ }, /turf/open/floor/engine{ name = "high pressure n2 floor"; - initial_gas_mix = "n2=400000;TEMP=293.15" + initial_gas_mix = "n2=400000" }, /area/engine/engineering) "ajx" = ( /obj/machinery/portable_atmospherics/canister/nitrogen, /turf/open/floor/engine{ name = "high pressure n2 floor"; - initial_gas_mix = "n2=400000;TEMP=293.15" + initial_gas_mix = "n2=400000" }, /area/engine/engineering) "ajy" = ( @@ -3783,7 +3741,7 @@ }, /turf/open/floor/engine{ name = "high pressure n2 floor"; - initial_gas_mix = "n2=400000;TEMP=293.15" + initial_gas_mix = "n2=400000" }, /area/engine/engineering) "ajz" = ( @@ -3844,7 +3802,7 @@ /obj/machinery/light/small, /turf/open/floor/engine{ name = "high pressure n2 floor"; - initial_gas_mix = "n2=400000;TEMP=293.15" + initial_gas_mix = "n2=400000" }, /area/engine/engineering) "ajI" = ( @@ -4089,7 +4047,7 @@ "akd" = ( /turf/open/floor/engine{ name = "high pressure air floor"; - initial_gas_mix = "o2=10000;n2=40015;TEMP=293.15" + initial_gas_mix = "o2=10000;n2=40015" }, /area/engine/engineering) "ake" = ( @@ -4116,7 +4074,7 @@ }) "akh" = ( /turf/closed/wall/r_wall, -/area/ai_monitored/turret_protected/ai_upload) +/area/turret_protected/ai_upload) "aki" = ( /turf/closed/wall, /area/gateway) @@ -4133,14 +4091,14 @@ }, /turf/open/floor/engine{ name = "high pressure air floor"; - initial_gas_mix = "o2=10000;n2=40015;TEMP=293.15" + initial_gas_mix = "o2=10000;n2=40015" }, /area/engine/engineering) "akm" = ( /obj/machinery/portable_atmospherics/canister/air, /turf/open/floor/engine{ name = "high pressure air floor"; - initial_gas_mix = "o2=10000;n2=40015;TEMP=293.15" + initial_gas_mix = "o2=10000;n2=40015" }, /area/engine/engineering) "akn" = ( @@ -4155,7 +4113,7 @@ }, /turf/open/floor/engine{ name = "high pressure air floor"; - initial_gas_mix = "o2=10000;n2=40015;TEMP=293.15" + initial_gas_mix = "o2=10000;n2=40015" }, /area/engine/engineering) "ako" = ( @@ -4248,11 +4206,11 @@ pixel_y = 0 }, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai_upload) +/area/turret_protected/ai_upload) "akA" = ( /obj/machinery/porta_turret/ai, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai_upload) +/area/turret_protected/ai_upload) "akB" = ( /obj/structure/table, /obj/item/weapon/aiModule/reset, @@ -4260,14 +4218,14 @@ dir = 1 }, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai_upload) +/area/turret_protected/ai_upload) "akC" = ( /obj/structure/table, /obj/item/weapon/aiModule/core/full/asimov, /obj/item/weapon/aiModule/core/full/asimovpp, /obj/item/weapon/aiModule/core/full/corp, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai_upload) +/area/turret_protected/ai_upload) "akD" = ( /obj/item/weapon/twohanded/required/kirbyplants{ icon_state = "plant-02"; @@ -4378,26 +4336,26 @@ icon_state = "4-8" }, /turf/open/floor/plasteel, -/area/ai_monitored/turret_protected/ai_upload) +/area/turret_protected/ai_upload) "akT" = ( /obj/structure/cable/cyan{ icon_state = "2-8" }, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai_upload) +/area/turret_protected/ai_upload) "akU" = ( /obj/machinery/door/airlock/command{ name = "command door"; req_access_txt = "19" }, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai_upload) +/area/turret_protected/ai_upload) "akV" = ( /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai_upload) +/area/turret_protected/ai_upload) "akW" = ( /turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/ai_upload) +/area/turret_protected/ai_upload) "akX" = ( /obj/machinery/computer/upload/borg, /obj/structure/window/reinforced{ @@ -4412,7 +4370,7 @@ req_access_txt = "55" }, /turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/ai_upload) +/area/turret_protected/ai_upload) "akY" = ( /obj/item/weapon/twohanded/required/kirbyplants{ anchored = 1; @@ -4424,7 +4382,7 @@ dir = 8 }, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai_upload) +/area/turret_protected/ai_upload) "akZ" = ( /turf/closed/wall/r_wall, /area/maintenance/fsmaint) @@ -4454,7 +4412,7 @@ /area/maintenance/fsmaint) "alf" = ( /obj/structure/table/wood, -/obj/item/clothing/under/skirt/red, +/obj/item/clothing/under/blueskirt/redskirt, /turf/open/floor/wood, /area/maintenance/fsmaint) "alg" = ( @@ -4571,7 +4529,7 @@ dir = 8 }, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai_upload) +/area/turret_protected/ai_upload) "alt" = ( /obj/machinery/computer/upload/ai, /obj/structure/window/reinforced{ @@ -4586,7 +4544,7 @@ req_access_txt = "55" }, /turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/ai_upload) +/area/turret_protected/ai_upload) "alu" = ( /obj/item/weapon/twohanded/required/kirbyplants{ anchored = 1; @@ -4595,7 +4553,7 @@ name = "incredibly heavy plant" }, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai_upload) +/area/turret_protected/ai_upload) "alv" = ( /obj/structure/cable/cyan{ icon_state = "1-2" @@ -4732,19 +4690,19 @@ icon_state = "0-2" }, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai_upload) +/area/turret_protected/ai_upload) "alN" = ( /obj/machinery/porta_turret/ai{ dir = 1 }, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai_upload) +/area/turret_protected/ai_upload) "alO" = ( /obj/structure/table, /obj/item/weapon/aiModule/supplied/freeform, /obj/machinery/light/small, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai_upload) +/area/turret_protected/ai_upload) "alP" = ( /obj/structure/table, /obj/item/weapon/aiModule/core/full/tyrant, @@ -4756,7 +4714,7 @@ /obj/item/weapon/aiModule/supplied/protectStation, /obj/item/weapon/aiModule/supplied/safeguard, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai_upload) +/area/turret_protected/ai_upload) "alQ" = ( /obj/structure/cable/cyan{ icon_state = "4-8" @@ -4934,7 +4892,7 @@ dir = 4 }, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai_upload) +/area/turret_protected/ai_upload) "amo" = ( /turf/closed/wall/r_wall, /area/crew_quarters/captain{ @@ -5736,7 +5694,7 @@ pixel_y = -29 }, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai{ +/area/turret_protected/ai{ name = "\improper AI Core" }) "aok" = ( @@ -5756,7 +5714,7 @@ dir = 8 }, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai{ +/area/turret_protected/ai{ name = "\improper AI Core" }) "aom" = ( @@ -5765,7 +5723,7 @@ icon_state = "tube1" }, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai{ +/area/turret_protected/ai{ name = "\improper AI Core" }) "aon" = ( @@ -6570,7 +6528,7 @@ /turf/open/floor/wood, /area/maintenance/fsmaint) "aqc" = ( -/obj/item/weapon/gun/ballistic/shotgun/toy, +/obj/item/weapon/gun/projectile/shotgun/toy, /turf/open/floor/wood, /area/maintenance/fsmaint) "aqd" = ( @@ -6945,10 +6903,16 @@ /turf/open/floor/wood, /area/maintenance/fsmaint) "ara" = ( -/turf/closed/wall/mineral/titanium/overspace, +/turf/closed/wall/shuttle{ + icon_state = "swall_s6"; + dir = 2 + }, /area/shuttle/supply) "arb" = ( -/turf/closed/wall/mineral/titanium, +/turf/closed/wall/shuttle{ + icon_state = "swall12"; + dir = 2 + }, /area/shuttle/supply) "arc" = ( /turf/closed/wall/shuttle{ @@ -7376,7 +7340,7 @@ d2 = 2 }, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai{ +/area/turret_protected/ai{ name = "\improper AI Core" }) "asa" = ( @@ -7624,7 +7588,7 @@ pixel_y = 24 }, /turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/ai{ +/area/turret_protected/ai{ name = "\improper AI Core" }) "asG" = ( @@ -7958,13 +7922,13 @@ icon_state = "1-4" }, /turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/ai{ +/area/turret_protected/ai{ name = "\improper AI Core" }) "att" = ( /obj/machinery/light, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai{ +/area/turret_protected/ai{ name = "\improper AI Core" }) "atu" = ( @@ -8052,7 +8016,7 @@ /turf/open/floor/plasteel/shuttle/white, /area/shuttle/supply) "atI" = ( -/obj/machinery/door/airlock/titanium{ +/obj/machinery/door/airlock/shuttle{ name = "Supply Shuttle Airlock"; req_access_txt = "31" }, @@ -8170,9 +8134,9 @@ "auc" = ( /obj/structure/disposalpipe/segment, /obj/structure/closet/wardrobe/grey, -/obj/item/weapon/storage/backpack/satchel, -/obj/item/weapon/storage/backpack/satchel, -/obj/item/weapon/storage/backpack/satchel, +/obj/item/weapon/storage/backpack/satchel_norm, +/obj/item/weapon/storage/backpack/satchel_norm, +/obj/item/weapon/storage/backpack/satchel_norm, /obj/item/weapon/storage/backpack/dufflebag, /obj/item/weapon/storage/backpack/dufflebag, /obj/item/weapon/storage/backpack/dufflebag, @@ -8385,13 +8349,13 @@ /obj/structure/cable/cyan{ icon_state = "1-8" }, -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /mob/living/simple_animal/bot/ed209{ name = "Officer Pingsky II"; radio_channel = "AI Private" }, /turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/aisat_interior{ +/area/turret_protected/aisat_interior{ name = "\improper AI Core Lobby" }) "auE" = ( @@ -8524,7 +8488,7 @@ /turf/open/floor/plating, /area/maintenance/fsmaint) "auU" = ( -/obj/machinery/door/airlock/titanium{ +/obj/machinery/door/airlock/shuttle{ name = "Supply Shuttle Airlock"; req_access_txt = "31" }, @@ -9063,7 +9027,10 @@ }, /area/shuttle/mining) "awi" = ( -/turf/closed/wall/mineral/titanium, +/turf/closed/wall/shuttle{ + icon_state = "swall12"; + dir = 2 + }, /area/shuttle/mining) "awj" = ( /obj/structure/grille, @@ -9079,7 +9046,9 @@ }, /area/shuttle/mining) "awl" = ( -/turf/closed/wall/mineral/titanium/nodiagonal, +/turf/closed/wall/shuttle{ + icon_state = "swallc3" + }, /area/shuttle/supply) "awm" = ( /turf/closed/wall/shuttle{ @@ -9736,7 +9705,7 @@ /turf/open/floor/wood, /area/maintenance/fsmaint) "ayj" = ( -/obj/machinery/door/airlock/titanium{ +/obj/machinery/door/airlock/shuttle{ name = "Mining Shuttle Airlock"; req_access_txt = "0" }, @@ -9746,7 +9715,7 @@ height = 5; id = "mining"; name = "mining shuttle"; - port_angle = 270; + travelDir = 270; width = 7 }, /obj/docking_port/stationary{ @@ -10634,7 +10603,7 @@ /turf/open/floor/plating, /area/maintenance/fsmaint) "aAw" = ( -/obj/item/clothing/neck/petcollar, +/obj/item/clothing/tie/petcollar, /obj/effect/spawner/lootdrop/maintenance{ lootcount = 3; name = "3maintenance loot spawner" @@ -10864,8 +10833,8 @@ /obj/machinery/light/small{ dir = 4 }, -/obj/item/weapon/storage/backpack/satchel, -/obj/item/weapon/storage/backpack/satchel, +/obj/item/weapon/storage/backpack/satchel_norm, +/obj/item/weapon/storage/backpack/satchel_norm, /turf/open/floor/wood, /area/crew_quarters/sleep) "aAZ" = ( @@ -10919,7 +10888,7 @@ /obj/item/weapon/wirerod, /obj/item/weapon/reagent_containers/syringe, /obj/item/weapon/restraints/handcuffs, -/obj/item/clothing/neck/stethoscope, +/obj/item/clothing/tie/stethoscope, /turf/open/floor/plasteel/white, /area/space) "aBj" = ( @@ -11881,10 +11850,16 @@ /turf/open/floor/plating, /area/maintenance/asmaint2) "aDn" = ( -/turf/closed/wall/mineral/titanium/overspace, +/turf/closed/wall/shuttle{ + icon_state = "swall_s6"; + dir = 2 + }, /area/shuttle/escape) "aDo" = ( -/turf/closed/wall/mineral/titanium, +/turf/closed/wall/shuttle{ + icon_state = "swall12"; + dir = 2 + }, /area/shuttle/escape) "aDp" = ( /turf/closed/wall/shuttle{ @@ -12329,7 +12304,7 @@ /obj/structure/cable/cyan{ icon_state = "1-2" }, -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /turf/open/floor/plasteel, /area/hallway/primary/fore{ name = "\improper Command Hallway" @@ -12513,7 +12488,10 @@ /turf/open/floor/plasteel, /area/maintenance/asmaint2) "aEQ" = ( -/turf/closed/wall/mineral/titanium/nodiagonal, +/turf/closed/wall/shuttle{ + icon_state = "swallc4"; + dir = 2 + }, /area/shuttle/escape) "aER" = ( /obj/machinery/computer/emergency_shuttle, @@ -12643,7 +12621,7 @@ }) "aFh" = ( /obj/structure/table/wood, -/obj/item/weapon/gun/ballistic/revolver/doublebarrel, +/obj/item/weapon/gun/projectile/revolver/doublebarrel, /turf/open/floor/wood, /area/crew_quarters/bar{ name = "\improper Bar and Kitchen" @@ -13652,7 +13630,7 @@ /turf/open/floor/plasteel/black, /area/shuttle/escape) "aHX" = ( -/obj/machinery/door/airlock/titanium, +/obj/machinery/door/airlock/shuttle, /turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "aHY" = ( @@ -13986,7 +13964,7 @@ /area/maintenance/asmaint2) "aIK" = ( /obj/structure/closet/chefcloset, -/obj/item/clothing/under/skirt/blue, +/obj/item/clothing/under/blueskirt, /obj/item/clothing/under/janimaid, /obj/item/clothing/under/sundress, /obj/item/clothing/glasses/sunglasses/reagent, @@ -14019,13 +13997,13 @@ /turf/open/floor/plasteel/black, /area/shuttle/escape) "aIP" = ( -/obj/machinery/door/airlock/titanium, +/obj/machinery/door/airlock/shuttle, /obj/docking_port/mobile/emergency{ dheight = 0; dir = 8; dwidth = 6; height = 18; - port_angle = 90; + travelDir = 90; width = 14; name = "Birdboat emergency shuttle" }, @@ -14045,7 +14023,7 @@ /turf/open/floor/plasteel, /area/hallway/secondary/exit) "aIR" = ( -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /turf/open/floor/plasteel, /area/engine/engineering) "aIS" = ( @@ -14676,7 +14654,7 @@ /turf/open/floor/wood, /area/maintenance/fsmaint) "aKw" = ( -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /turf/open/floor/plasteel, /area/teleporter{ name = "\improper Teleporter Room" @@ -14999,7 +14977,8 @@ /area/maintenance/asmaint2) "aLm" = ( /obj/machinery/atmospherics/components/unary/outlet_injector/on{ - name = "acidproof air injector" + name = "acidproof air injector"; + unacidable = 1 }, /turf/open/floor/engine, /area/toxins/xenobiology) @@ -15285,13 +15264,13 @@ /turf/open/floor/plasteel, /area/bridge) "aLS" = ( -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /turf/open/floor/plasteel, /area/ai_monitored/storage/eva{ name = "E.V.A. Storage" }) "aLT" = ( -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /turf/open/floor/plasteel, /area/storage/primary{ name = "Tool Storage" @@ -15300,7 +15279,7 @@ /obj/effect/landmark{ name = "lightsout" }, -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /turf/open/floor/plasteel/black, /area/bridge) "aLV" = ( @@ -15317,7 +15296,7 @@ /turf/open/floor/engine, /area/toxins/xenobiology) "aLX" = ( -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /mob/living/simple_animal/pet/dog/corgi/Ian, /turf/open/floor/carpet, /area/crew_quarters/heads) @@ -16548,9 +16527,9 @@ /area/medical/medbay) "aPb" = ( /obj/structure/closet/wardrobe/white/medical, -/obj/item/clothing/neck/stethoscope, -/obj/item/clothing/neck/stethoscope, -/obj/item/clothing/under/skirt/blue, +/obj/item/clothing/tie/stethoscope, +/obj/item/clothing/tie/stethoscope, +/obj/item/clothing/under/blueskirt, /obj/item/clothing/under/plaid_skirt/blue, /turf/open/floor/plasteel/white, /area/medical/medbay) @@ -17155,8 +17134,8 @@ /area/toxins/xenobiology) "aQz" = ( /obj/structure/rack, -/obj/item/weapon/gun/energy/e_gun/advtaser, -/obj/item/weapon/gun/energy/e_gun/advtaser{ +/obj/item/weapon/gun/energy/gun/advtaser, +/obj/item/weapon/gun/energy/gun/advtaser{ pixel_x = 5; pixel_y = -5 }, @@ -18090,7 +18069,7 @@ /obj/structure/cable/cyan{ icon_state = "1-2" }, -/obj/item/clothing/neck/stethoscope, +/obj/item/clothing/tie/stethoscope, /obj/machinery/camera/autoname{ icon_state = "camera"; dir = 4 @@ -18550,7 +18529,7 @@ name = "\improper South Hallway" }) "aTG" = ( -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /turf/open/floor/plasteel, /area/quartermaster/storage) "aTH" = ( @@ -18573,7 +18552,7 @@ name = "\improper South Hallway" }) "aTL" = ( -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /turf/open/floor/plasteel, /area/crew_quarters/sleep) "aTM" = ( @@ -18736,7 +18715,7 @@ "aUd" = ( /obj/structure/closet/wardrobe/red, /obj/machinery/light, -/obj/item/clothing/under/skirt/red, +/obj/item/clothing/under/blueskirt/redskirt, /obj/item/clothing/under/plaid_skirt, /turf/open/floor/plasteel/black, /area/security/warden) @@ -18750,11 +18729,18 @@ /area/security/warden) "aUf" = ( /obj/structure/rack, -/obj/item/weapon/gun/energy/temperature/security{ +/obj/item/weapon/gun/energy/temperature{ + name = "security temperature gun"; + origin_tech = "combat=2;materials=2;powerstorage=1;magnets=1"; + pin = /obj/item/device/firing_pin; pixel_x = -5; pixel_y = 5 }, -/obj/item/weapon/gun/energy/temperature/security, +/obj/item/weapon/gun/energy/temperature{ + name = "security temperature gun"; + origin_tech = "combat=2;materials=2;powerstorage=1;magnets=1"; + pin = /obj/item/device/firing_pin + }, /turf/open/floor/plasteel/vault{ dir = 8 }, @@ -19845,7 +19831,10 @@ }, /area/shuttle/arrival) "aWG" = ( -/turf/closed/wall/mineral/titanium, +/turf/closed/wall/shuttle{ + icon_state = "swall12"; + dir = 2 + }, /area/shuttle/arrival) "aWH" = ( /obj/item/device/assembly/mousetrap/armed, @@ -20117,7 +20106,7 @@ /turf/open/floor/plasteel/showroomfloor, /area/maintenance/asmaint2) "aXy" = ( -/obj/item/clothing/neck/stethoscope, +/obj/item/clothing/tie/stethoscope, /turf/open/floor/plating, /area/maintenance/asmaint2) "aXz" = ( @@ -20557,7 +20546,7 @@ }) "aYD" = ( /obj/structure/table/wood, -/obj/item/weapon/gun/ballistic/revolver/doublebarrel/improvised, +/obj/item/weapon/gun/projectile/revolver/doublebarrel/improvised, /turf/open/floor/wood, /area/maintenance/fore{ name = "Security Maintenance" @@ -20924,7 +20913,7 @@ /turf/open/floor/plasteel/shuttle, /area/shuttle/arrival) "aZw" = ( -/obj/structure/spider/stickyweb, +/obj/effect/spider/stickyweb, /turf/open/floor/plating{ icon_plating = "asteroidplating"; icon_state = "asteroidplating" @@ -21087,7 +21076,7 @@ }, /area/shuttle/arrival) "aZP" = ( -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /turf/open/floor/wood, /area/crew_quarters/theatre) "aZQ" = ( @@ -21227,7 +21216,7 @@ id = "kitchen shutter"; name = "kitchen shutter" }, -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /obj/machinery/newscaster{ pixel_y = 32 }, @@ -21320,7 +21309,7 @@ /turf/closed/wall, /area/medical/morgue) "bav" = ( -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /obj/machinery/atmospherics/pipe/simple/cyan/hidden{ icon_state = "intact"; dir = 4 @@ -21389,7 +21378,7 @@ /obj/structure/cable/cyan{ icon_state = "2-4" }, -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /turf/open/floor/plasteel, /area/hallway/secondary/exit) "baA" = ( @@ -21672,7 +21661,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "bbc" = ( -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /turf/open/floor/plasteel, /area/crew_quarters/fitness) "bbd" = ( @@ -22390,10 +22379,16 @@ icon_state = "propulsion"; dir = 4 }, -/turf/closed/wall/mineral/titanium/overspace, +/turf/closed/wall/shuttle{ + icon_state = "swall_s6"; + dir = 2 + }, /area/shuttle/transport) "bcP" = ( -/turf/closed/wall/mineral/titanium, +/turf/closed/wall/shuttle{ + icon_state = "swall12"; + dir = 2 + }, /area/shuttle/transport) "bcQ" = ( /obj/structure/window/shuttle, @@ -22406,7 +22401,10 @@ /turf/open/floor/plating, /area/shuttle/transport) "bcS" = ( -/turf/closed/wall/mineral/titanium/overspace, +/turf/closed/wall/shuttle{ + icon_state = "swall_s10"; + dir = 2 + }, /area/shuttle/transport) "bcT" = ( /obj/machinery/light{ @@ -22469,14 +22467,14 @@ /turf/open/floor/plasteel/white, /area/maintenance/asmaint) "bdf" = ( -/obj/machinery/door/airlock/titanium, +/obj/machinery/door/airlock/shuttle, /turf/open/floor/plasteel/shuttle, /area/shuttle/transport) "bdg" = ( /turf/open/floor/plasteel/shuttle, /area/shuttle/transport) "bdh" = ( -/obj/machinery/door/airlock/titanium, +/obj/machinery/door/airlock/shuttle, /obj/docking_port/mobile{ dir = 8; dwidth = 2; @@ -22484,7 +22482,7 @@ id = "ferry"; name = "ferry shuttle"; roundstart_move = "ferry_away"; - port_angle = 180; + travelDir = 180; width = 5 }, /obj/docking_port/stationary{ @@ -22723,7 +22721,7 @@ /obj/structure/cable/cyan{ icon_state = "2-8" }, -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /turf/open/floor/plasteel/white, /area/medical/genetics_cloning) "bdL" = ( @@ -22792,11 +22790,11 @@ /obj/structure/cable/cyan{ icon_state = "1-2" }, -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /turf/open/floor/plasteel, /area/security/brig) "bdS" = ( -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /turf/open/floor/plasteel, /area/medical/robotics) "bdT" = ( @@ -22929,7 +22927,7 @@ /obj/structure/cable/cyan{ icon_state = "1-8" }, -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /turf/open/floor/plasteel/showroomfloor, /area/security/warden) "bed" = ( @@ -22995,11 +22993,11 @@ icon_state = "intact"; dir = 4 }, -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /turf/open/floor/plasteel, /area/toxins/misc_lab) "bem" = ( -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /turf/open/floor/plasteel/white, /area/medical/medbay) "ben" = ( @@ -23022,7 +23020,7 @@ name = "\improper South Hallway" }) "bep" = ( -/obj/machinery/door/airlock/titanium{ +/obj/machinery/door/airlock/shuttle{ name = "Arrivals Shuttle Airlock" }, /turf/open/floor/plating, @@ -23048,7 +23046,7 @@ height = 7; id = "arrival"; name = "arrival shuttle"; - port_angle = -90; + travelDir = -90; width = 9 }, /obj/docking_port/stationary{ @@ -23058,7 +23056,10 @@ name = "port bay 1"; width = 9 }, -/turf/closed/wall/mineral/titanium, +/turf/closed/wall/shuttle{ + icon_state = "swall12"; + dir = 2 + }, /area/shuttle/arrival) "bet" = ( /obj/machinery/atmospherics/pipe/simple/cyan/hidden, @@ -23169,7 +23170,7 @@ /area/toxins/xenobiology) "beI" = ( /obj/structure/rack, -/obj/item/weapon/gun/energy/e_gun/dragnet, +/obj/item/weapon/gun/energy/gun/dragnet, /turf/open/floor/plasteel/bot, /area/security/warden) "beJ" = ( @@ -23179,11 +23180,11 @@ /obj/item/weapon/storage/box/rubbershot, /obj/item/weapon/storage/box/rubbershot, /obj/item/weapon/storage/box/rubbershot, -/obj/item/weapon/gun/ballistic/shotgun/riot{ +/obj/item/weapon/gun/projectile/shotgun/riot{ pixel_x = -5; pixel_y = 5 }, -/obj/item/weapon/gun/ballistic/shotgun/riot, +/obj/item/weapon/gun/projectile/shotgun/riot, /turf/open/floor/plasteel/bot, /area/security/warden) "beK" = ( @@ -23233,7 +23234,7 @@ lootcount = 3; name = "teargas clusterbuster spawner" }, -/obj/item/weapon/gun/energy/e_gun/hos, +/obj/item/weapon/gun/energy/gun/hos, /obj/item/weapon/storage/box/lethalshot, /obj/item/weapon/storage/box/lethalshot, /turf/open/floor/plasteel, @@ -23262,336 +23263,6 @@ /area/maintenance/fore{ name = "Security Maintenance" }) -"ZyZ" = ( -/obj/effect/landmark/xmastree/rdrod, -/turf/open/floor/plasteel/warnwhite{ - dir = 8 - }, -/area/toxins/lab) -"Zza" = ( -/turf/open/space, -/obj/machinery/porta_turret/syndicate{ - dir = 9 - }, -/turf/closed/wall/mineral/plastitanium{ - dir = 8; - icon_state = "diagonalWall3" - }, -/area/space) -"Zzb" = ( -/turf/closed/wall/mineral/plastitanium, -/area/space) -"Zzc" = ( -/obj/structure/grille, -/obj/machinery/door/poddoor/shutters{ - id = "syndieshutters"; - name = "blast shutters" - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/space) -"Zzd" = ( -/turf/open/space, -/obj/machinery/porta_turret/syndicate{ - dir = 5 - }, -/turf/closed/wall/mineral/plastitanium{ - dir = 1; - icon_state = "diagonalWall3" - }, -/area/space) -"Zze" = ( -/obj/structure/table, -/obj/item/device/flashlight/lamp{ - pixel_x = 4; - pixel_y = 1 - }, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/syndicate) -"Zzf" = ( -/obj/machinery/computer/shuttle/syndicate, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/syndicate) -"Zzg" = ( -/obj/structure/table, -/obj/machinery/button/door{ - id = "syndieshutters"; - name = "remote shutter control"; - req_access_txt = "150" - }, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/syndicate) -"Zzh" = ( -/obj/structure/frame/computer, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/syndicate) -"Zzi" = ( -/obj/structure/closet/syndicate/personal, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/syndicate) -"Zzj" = ( -/turf/open/space, -/turf/closed/wall/mineral/plastitanium{ - icon_state = "diagonalWall3" - }, -/area/shuttle/syndicate) -"Zzk" = ( -/obj/machinery/door/window{ - name = "Cockpit"; - req_access_txt = "150" - }, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/syndicate) -"Zzl" = ( -/turf/open/space, -/turf/closed/wall/mineral/plastitanium{ - dir = 4; - icon_state = "diagonalWall3" - }, -/area/shuttle/syndicate) -"Zzm" = ( -/obj/structure/table, -/obj/item/stack/cable_coil, -/obj/item/weapon/crowbar/red, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/syndicate) -"Zzn" = ( -/obj/structure/table, -/obj/item/weapon/storage/box/zipties{ - pixel_x = 1; - pixel_y = 2 - }, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/syndicate) -"Zzo" = ( -/obj/machinery/porta_turret/syndicate{ - dir = 4 - }, -/turf/closed/wall/mineral/plastitanium, -/area/shuttle/syndicate) -"Zzp" = ( -/obj/machinery/suit_storage_unit/syndicate, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/syndicate) -"Zzq" = ( -/obj/structure/closet/syndicate/nuclear, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/syndicate) -"Zzr" = ( -/obj/structure/chair/stool{ - pixel_y = 8 - }, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/syndicate) -"Zzs" = ( -/obj/machinery/door/poddoor{ - auto_close = 300; - id = "smindicate"; - name = "outer blast door" - }, -/obj/machinery/button/door{ - id = "smindicate"; - name = "external door control"; - pixel_x = -26; - pixel_y = 0; - req_access_txt = "150" - }, -/obj/docking_port/mobile{ - dheight = 9; - dir = 2; - dwidth = 5; - height = 24; - id = "syndicate"; - name = "syndicate infiltrator"; - port_angle = 0; - roundstart_move = "syndicate_away"; - width = 18 - }, -/obj/docking_port/stationary{ - dheight = 9; - dir = 2; - dwidth = 5; - height = 24; - id = "syndicate_nw"; - name = "northwest of station"; - turf_type = /turf/open/space; - width = 18 - }, -/turf/open/floor/plating, -/area/space) -"Zzt" = ( -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; - icon_state = "space"; - layer = 4; - name = "EXTERNAL AIRLOCK"; - pixel_x = 0 - }, -/turf/closed/wall/mineral/plastitanium, -/area/space) -"Zzu" = ( -/obj/machinery/door/window{ - name = "Ready Room"; - req_access_txt = "150" - }, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/syndicate) -"Zzv" = ( -/obj/machinery/door/window{ - dir = 4; - name = "EVA Storage"; - req_access_txt = "150" - }, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/syndicate) -"Zzw" = ( -/obj/machinery/door/airlock/external{ - req_access_txt = "150" - }, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/syndicate) -"Zzx" = ( -/turf/open/space, -/turf/closed/wall/mineral/plastitanium{ - dir = 1; - icon_state = "diagonalWall3" - }, -/area/space) -"Zzy" = ( -/obj/item/device/radio/intercom{ - desc = "Talk through this. Evilly"; - freerange = 1; - frequency = 1213; - name = "Syndicate Intercom"; - pixel_x = -32; - subspace_transmission = 1; - syndie = 1 - }, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/syndicate) -"Zzz" = ( -/obj/machinery/sleeper/syndie{ - dir = 4 - }, -/turf/open/floor/mineral/titanium, -/area/shuttle/syndicate) -"ZzA" = ( -/turf/open/floor/mineral/titanium, -/area/shuttle/syndicate) -"ZzB" = ( -/obj/machinery/portable_atmospherics/canister/oxygen, -/turf/open/floor/mineral/titanium, -/area/shuttle/syndicate) -"ZzC" = ( -/obj/structure/tank_dispenser/oxygen, -/turf/open/floor/mineral/titanium, -/area/shuttle/syndicate) -"ZzD" = ( -/obj/structure/table, -/obj/item/stack/medical/ointment, -/obj/item/stack/medical/bruise_pack, -/obj/structure/extinguisher_cabinet{ - pixel_x = -5; - pixel_y = 30 - }, -/turf/open/floor/mineral/titanium, -/area/shuttle/syndicate) -"ZzE" = ( -/obj/structure/table, -/obj/item/weapon/stock_parts/cell/high{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/weapon/stock_parts/cell/high, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/syndicate) -"ZzF" = ( -/obj/structure/table, -/obj/item/weapon/screwdriver{ - pixel_y = 9 - }, -/obj/item/device/assembly/voice{ - pixel_y = 3 - }, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/syndicate) -"ZzG" = ( -/obj/structure/table, -/obj/item/weapon/wrench, -/obj/item/device/assembly/infra, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/syndicate) -"ZzH" = ( -/obj/structure/table, -/obj/item/device/assembly/signaler, -/obj/item/device/assembly/signaler, -/obj/item/device/assembly/prox_sensor{ - pixel_x = -8; - pixel_y = 4 - }, -/obj/item/device/assembly/prox_sensor{ - pixel_x = -8; - pixel_y = 4 - }, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/syndicate) -"ZzI" = ( -/obj/structure/table, -/obj/item/weapon/weldingtool/largetank{ - pixel_y = 3 - }, -/obj/item/device/multitool, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/syndicate) -"ZzJ" = ( -/obj/structure/sign/bluecross_2, -/turf/closed/wall/mineral/plastitanium, -/area/shuttle/syndicate) -"ZzK" = ( -/obj/machinery/recharge_station, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/syndicate) -"ZzL" = ( -/obj/machinery/porta_turret/syndicate{ - dir = 5 - }, -/turf/closed/wall/mineral/plastitanium, -/area/shuttle/syndicate) -"ZzM" = ( -/obj/machinery/door/window{ - dir = 1; - name = "Surgery"; - req_access_txt = "150" - }, -/turf/open/floor/mineral/titanium, -/area/shuttle/syndicate) -"ZzN" = ( -/obj/structure/window/reinforced{ - dir = 1 - }, -/turf/open/floor/mineral/titanium, -/area/shuttle/syndicate) -"ZzO" = ( -/obj/structure/table, -/obj/item/weapon/surgicaldrill, -/obj/item/weapon/circular_saw, -/turf/open/floor/mineral/titanium, -/area/shuttle/syndicate) -"ZzP" = ( -/obj/machinery/telecomms/allinone{ - intercept = 1 - }, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/syndicate) -"ZzQ" = ( -/turf/open/space, -/obj/machinery/porta_turret/syndicate{ - dir = 10 - }, -/turf/closed/wall/mineral/plastitanium{ - icon_state = "diagonalWall3" - }, -/area/shuttle/syndicate) "ZzR" = ( /obj/machinery/light/small{ dir = 1 @@ -38260,16 +37931,16 @@ aaa aaa aaa aaa -Zza -aac -aac -aac -aac -ZzL -aac -aac -aac -Zzj +aaa +aaz +aad +aad +aad +aad +aad +aad +aad +aar aaa aaa aaa @@ -38511,19 +38182,19 @@ aaa aaa aaa aaa -Zza -aac -aac -aac -aac -aac -aac -Zzz +aaa +aaz +aad +aad +aad +aad +aad +aad aaU -Zzz -ZzA +aah abg -ZzO +abg +aah abv aby abH @@ -38768,19 +38439,19 @@ aaa aaa aaa aaa -Zzb -Zzp -Zzp -Zzp -Zzp -Zzp -aac -ZzA -ZzA -ZzA -ZzA -ZzM -ZzA +aaa +aad +aaC +aaC +aaC +aaC +aaC +aad +aaU +aah +aah +aah +aah abw aby abI @@ -39025,18 +38696,18 @@ aaa aaa aaa aaa -Zzb -aae -aae -aae -aae -aae -aac -ZzB -ZzA -ZzA -ZzA -ZzN +aaa +aad +aah +aah +aah +aah +aah +aad +aaV +aah +aah +aah abp abx aby @@ -39275,28 +38946,28 @@ aaa aaa aaa aaa -Zza +aaa aac -aac -aac -Zzj +aad +aad +aad aar aaa -Zzb -aae -Zzr -aae -aae -aae -aac -ZzC -ZzA -ZzA -ZzA +aaa +aad +aah +aaE +aah +aah +aah +aad +aaW +aaE +aah abj -aac -aac -aac +aad +aad +aad aat aaa aaa @@ -39532,26 +39203,26 @@ aaa aaa aaa aaa -Zzb +aaa aad aag aam -aac -aar +aao +aad aaa -Zzb -Zzq +aaa +aad aaD aaF -aae -aae -aac -ZzD -ZzA -ZzA -ZzA +aaK +aah +aah +aad +aaX +aah +aah abk -aac +aad aaa aaa aaa @@ -39789,28 +39460,28 @@ aaa aaa aaa aaa -Zzc +aaa aae -aae -aae -aac -aac -aac -aac -aac -aac -aac -Zzv +aah +aah +aah +aad +aad +aad +aad +aad +aad +aad aaL -aac -aac -ZzJ +aaO +aad +aad abd abh -aac -aac -aac -Zzj +aad +aad +aad +aar aaa aaa aaa @@ -40046,26 +39717,26 @@ aaa aaa aaa aaa -Zzc -Zze +aaa aae -aae -aac -Zzm -aae -aae -aae -aae -aaP -aae -aae -Zzy -aae -aae -aae -aae -aae -aaP +aai +aah +aah +aad +aau +aaw +aaw +aaw +aaw +aah +aah +aah +aaS +aah +aah +aah +abl +abq aby abH aaa @@ -40303,25 +39974,25 @@ aaa aaa aaa aaa -Zzc -Zzf +aaa +aae aaj -aae -Zzk -aae -aae -aae -aae -aae -Zzu -aae -aae -aae -aae -aae -aae -aae -aae +aan +aah +aas +aah +aah +aah +aah +aah +aah +aah +aah +aah +aah +aah +aah +abm abr aby abI @@ -40560,26 +40231,26 @@ aaa aaa aaa aaa -Zzc -Zzg +aaa aae +aak aah -aac -Zzn +aap +aad aav -aav -aav -aav -aaP -aae -aae -aae -aae -aae -aae -aae -aae -aaP +aax +aax +aax +aax +aah +aah +aah +aah +aah +aah +aah +abl +aah aby abJ aaa @@ -40817,28 +40488,28 @@ aaa aaa aaa aaa -Zzc -Zzh +aaa aae -aae -aac -aac -aac -Zzo -aac -aac -aac -Zzw +aal +aah +aah +aad +aad +aad +aaA +aad +aad +aad +aaM aaP -aac -aac -aac +aad +aad abe abi -aac -aac -aac -Zzl +aad +aad +aad +aat aaa aaa aaa @@ -41074,27 +40745,27 @@ aaa aaa aaa aaa -Zzb -Zzh -aae -Zzi -aac -Zzl +aaa +aad +aal +aah +aaq +aad aaa aaa aaa -Zzb -aae -aae -aae -aac -ZzE -aae -aae -aae +aaa +aad +aah +aah +aah +aad +aaY +aah +aah abn -ZzP -Zzb +aad +aaa aaa aaa aaa @@ -41331,29 +41002,29 @@ aaa aaa aaa aaa -Zzd -aac -aac -aac -Zzl -aar +aaa +aaf +aad +aad +aad +aat aaa aaa aaa -Zzs -aae -aae -aae -aac -ZzF -aae -aae -aae +aaa +aaG +aah +aah +aah +aad +aaZ +aaE +aah abo -aac -aac -aac -ZzQ +aad +aad +aad +aar aaa aaa aaa @@ -41597,17 +41268,17 @@ aaa aaa aaa aaa -Zzt -aae -aae -aae -aac -ZzG -aae -aae -aae -aae -aae +aaa +aaH +aah +aah +aaQ +aad +aba +aah +aah +aah +aah abz aby abH @@ -41854,17 +41525,17 @@ aaa aaa aaa aaa -Zzd -aac -aac -aac -aac -ZzH -Zzr -aae -aae -aae -aae +aaa +aaI +aad +aad +aad +aad +abb +aaE +aah +aah +aah abA aby abI @@ -42114,14 +41785,14 @@ aaa aaa aaa aaa -Zzx -Zzb -ZzI +aaa +aaa +aad abc -aae -ZzK -ZzK -aae +abf +aah +aah +aah abB aby abJ @@ -42372,16 +42043,16 @@ aaa aaa aaa aaa -Zzd -aac -aac -aac -aac -Zzo -aac -aac -aac -Zzl +aaa +aaI +aad +aad +aad +aad +aad +aad +aad +aat aaa aaa aaa @@ -46814,16 +46485,16 @@ aaa aaa aaa aaa -aDo -aDo +aDn +aEU aDZ -aDo +aHf aDZ aDZ aDZ aDZ aDZ -aDo +aMf aaa aaa aaa @@ -47070,7 +46741,7 @@ aaa aaa aaa aaa -aDo +aDn aEQ aFG aET @@ -47080,8 +46751,8 @@ aIN aIN aIN aHS -aEQ -aDo +aMg +aMf aaa aaa aaa @@ -47327,7 +46998,7 @@ aaa aaa aaa aaa -aDo +aDY aER aFH aES @@ -47588,7 +47259,7 @@ aDZ aES aES aES -aDo +aEa aHU aHU aHW @@ -48098,7 +47769,7 @@ aaa aaa aaa aaa -aDo +aEa aET aES aET @@ -48109,8 +47780,8 @@ aHW aHT aHT aMh -aEQ -aDo +aMg +aMf aaa aaa aaa @@ -48355,11 +48026,11 @@ aaa aaa aaa aaa -aDo -aDo +aDp +aEU bah aDZ -aDo +aDY aHT aHT aHT @@ -48624,7 +48295,7 @@ aHT aHT aHT aNc -aDo +aDY aaa aaa aaa @@ -49387,7 +49058,7 @@ aDo aEV aFJ aGt -aDo +aEa aHT aHT aJM @@ -49629,13 +49300,13 @@ aaa aaa aaa aaa -awi -awi +awh +awR awj -awi +awR awj -awi -awi +awR +aAC aaa aaa aaa @@ -49652,7 +49323,7 @@ aKz aHT aHT aHS -aDo +aEa aaa aaa aaa @@ -49896,20 +49567,20 @@ awi aaa aaa aaa -aDo -aDo -aDo -aDo -aDo +aDn +aEb +aEf +aEf +aEf aEQ aHT aHT -aDo -aDo +aJN +aEU aHh aDZ -aDo -aDo +aJN +aHj aaa aaa aaa @@ -50657,13 +50328,13 @@ aaa aaa aaa aaa -awi -awi +awk +awR awj ayj awj -awi -awi +awR +aAE aaa aaa aaa @@ -50671,12 +50342,12 @@ aDo aEe aEe aEe -aEQ -aDo +aGv +aHi aHX aHX -aDo -aEQ +aGv +aHi aLp aMi aNf @@ -50924,20 +50595,20 @@ aaa aaa aaa aaa -aDo -aDo -aDo -aDo -aDo -aDo +aDp +aEf +aEf +aEf +aGw +aHj aHT aHT -aDo -aDo -aDo -aDo -aDo -aDo +aDp +aGw +aEf +aEf +aEf +aHj aaa aaa aaa @@ -51181,20 +50852,20 @@ aaa aaa aaa aaa -aDo +aDq aEg aEX aFK -aDo -aDo +aGx +aDY aHX aIP -aDo -aDo +aDY +aDq aEg aEX aFK -aDo +aGx aaa aaa aaa @@ -51420,15 +51091,15 @@ aaa aaa aaa aaa -arb -arb -arb -arb -arb -arb -arb -arb -arb +ara +arH +arH +arH +arH +arH +arH +arH +awl aaa axJ aym @@ -51685,7 +51356,7 @@ atG atG atG aso -arb +awm awU axJ ayn @@ -51995,7 +51666,7 @@ aaa aaa bcO bdf -bcO +bdo aaa aaa aaa @@ -52253,7 +51924,7 @@ bcO bda bdg bdp -bcO +bdo aaa aaa aaa @@ -52713,7 +52384,7 @@ atH aup atH aso -arb +awm awW axK ayr @@ -52962,15 +52633,15 @@ aaa aaa aaa aaa -arb -arb -arb +arc +arH +arH ath atI -arb +arH auU avA -arb +awo aaa axK ays @@ -65070,7 +64741,7 @@ aJt aKn aHu aEF -ZyZ +aMC aMC aOu aPk diff --git a/_maps/map_files/Deltastation/DeltaStation2.dmm b/_maps/map_files/Deltastation/DeltaStation2.dmm deleted file mode 100644 index 8bf8c3211c..0000000000 --- a/_maps/map_files/Deltastation/DeltaStation2.dmm +++ /dev/null @@ -1,182047 +0,0 @@ -//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE -"aaa" = ( -/turf/open/space, -/area/space) -"aab" = ( -/obj/docking_port/stationary{ - dheight = 9; - dir = 2; - dwidth = 5; - height = 24; - id = "syndicate_ne"; - name = "northeast of station"; - turf_type = /turf/open/space; - width = 18 - }, -/turf/open/space, -/area/space) -"aac" = ( -/obj/docking_port/stationary{ - dheight = 9; - dir = 2; - dwidth = 5; - height = 24; - id = "syndicate_n"; - name = "north of station"; - turf_type = /turf/open/space; - width = 18 - }, -/turf/open/space, -/area/space) -"aad" = ( -/obj/effect/landmark{ - name = "carpspawn" - }, -/turf/open/space, -/area/space) -"aae" = ( -/obj/structure/lattice, -/obj/structure/grille, -/turf/open/space, -/area/space) -"aaf" = ( -/obj/structure/lattice, -/turf/open/space, -/area/space) -"aag" = ( -/obj/structure/cable, -/obj/machinery/power/tracker, -/turf/open/floor/plasteel/airless/solarpanel, -/area/solar/auxstarboard) -"aah" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/structure/lattice/catwalk, -/turf/open/space, -/area/solar/auxstarboard) -"aai" = ( -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/obj/machinery/power/solar{ - id = "forestarboard"; - name = "Fore-Starboard Solar Array" - }, -/turf/open/floor/plasteel/airless/solarpanel, -/area/solar/auxstarboard) -"aaj" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/structure/lattice/catwalk, -/turf/open/space, -/area/solar/auxstarboard) -"aak" = ( -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/structure/lattice/catwalk, -/turf/open/space, -/area/solar/auxstarboard) -"aal" = ( -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/structure/lattice/catwalk, -/turf/open/space, -/area/solar/auxstarboard) -"aam" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/structure/lattice/catwalk, -/turf/open/space, -/area/solar/auxstarboard) -"aan" = ( -/obj/structure/cable, -/obj/machinery/power/solar{ - id = "forestarboard"; - name = "Fore-Starboard Solar Array" - }, -/turf/open/floor/plasteel/airless/solarpanel, -/area/solar/auxstarboard) -"aao" = ( -/obj/structure/lattice/catwalk, -/obj/structure/cable, -/turf/open/space, -/area/solar/auxstarboard) -"aap" = ( -/obj/docking_port/stationary/random{ - id = "pod_asteroid1"; - name = "asteroid" - }, -/turf/open/space, -/area/space) -"aaq" = ( -/obj/docking_port/stationary/random{ - id = "pod_asteroid2"; - name = "asteroid" - }, -/turf/open/space, -/area/space) -"aar" = ( -/obj/structure/lattice/catwalk, -/obj/effect/landmark{ - name = "xeno_spawn"; - pixel_x = -1 - }, -/turf/open/space, -/area/solar/auxstarboard) -"aas" = ( -/turf/closed/wall/mineral/titanium, -/area/shuttle/pod_1) -"aat" = ( -/obj/structure/grille, -/obj/structure/window/shuttle, -/turf/open/floor/plating, -/area/shuttle/pod_1) -"aau" = ( -/turf/closed/wall/mineral/titanium, -/area/shuttle/pod_2) -"aav" = ( -/obj/structure/grille, -/obj/structure/window/shuttle, -/turf/open/floor/plating, -/area/shuttle/pod_2) -"aaw" = ( -/obj/structure/lattice/catwalk, -/turf/open/space, -/area/solar/auxstarboard) -"aax" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"aay" = ( -/turf/closed/wall/mineral/plastitanium, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"aaz" = ( -/obj/structure/chair{ - dir = 1 - }, -/obj/machinery/status_display{ - density = 0; - layer = 3; - pixel_x = 32; - pixel_y = 0 - }, -/obj/machinery/computer/shuttle/pod{ - pixel_x = -32; - possible_destinations = "pod_asteroid1"; - shuttleId = "pod1" - }, -/turf/open/floor/plasteel/warnwhite/side, -/area/shuttle/pod_1) -"aaA" = ( -/obj/structure/chair{ - dir = 1 - }, -/obj/machinery/status_display{ - density = 0; - layer = 3; - pixel_x = 32; - pixel_y = 0 - }, -/obj/machinery/computer/shuttle/pod{ - pixel_x = -32; - possible_destinations = "pod_asteroid2"; - shuttleId = "pod2" - }, -/turf/open/floor/plasteel/warnwhite/side, -/area/shuttle/pod_2) -"aaB" = ( -/turf/closed/wall/mineral/plastitanium, -/area/mining_construction) -"aaC" = ( -/turf/open/floor/plasteel/delivery, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"aaD" = ( -/turf/closed/wall, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"aaE" = ( -/obj/structure/chair{ - dir = 1 - }, -/obj/item/device/radio/intercom{ - pixel_x = 25 - }, -/obj/item/weapon/storage/pod{ - pixel_x = -26 - }, -/turf/open/floor/plasteel/warnwhite/side, -/area/shuttle/pod_1) -"aaF" = ( -/obj/structure/chair{ - dir = 1 - }, -/obj/item/device/radio/intercom{ - pixel_x = 25 - }, -/obj/item/weapon/storage/pod{ - pixel_x = -26 - }, -/turf/open/floor/plasteel/warnwhite/side, -/area/shuttle/pod_2) -"aaG" = ( -/turf/closed/wall, -/area/mining_construction) -"aaH" = ( -/obj/structure/lattice/catwalk, -/turf/open/space, -/area/space) -"aaI" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/light/small{ - dir = 8 - }, -/obj/machinery/airalarm{ - dir = 4; - locked = 0; - pixel_x = -23; - pixel_y = 0 - }, -/turf/open/floor/plasteel/warning{ - dir = 9 - }, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"aaJ" = ( -/obj/machinery/light/small{ - dir = 4 - }, -/turf/open/floor/plasteel/warning{ - dir = 5 - }, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"aaK" = ( -/obj/structure/shuttle/engine/propulsion/burst, -/turf/closed/wall/mineral/titanium, -/area/shuttle/pod_1) -"aaL" = ( -/obj/machinery/door/airlock/shuttle{ - name = "Escape Pod Airlock" - }, -/obj/docking_port/mobile/pod{ - id = "pod1"; - name = "escape pod 1"; - port_angle = 180 - }, -/turf/open/floor/plasteel/warnwhite/end, -/area/shuttle/pod_1) -"aaM" = ( -/obj/structure/shuttle/engine/propulsion/burst, -/turf/closed/wall/mineral/titanium, -/area/shuttle/pod_2) -"aaN" = ( -/obj/machinery/door/airlock/shuttle{ - name = "Escape Pod Airlock" - }, -/obj/docking_port/mobile/pod{ - id = "pod2"; - name = "escape pod 2"; - port_angle = 180 - }, -/turf/open/floor/plasteel/warnwhite/end, -/area/shuttle/pod_2) -"aaO" = ( -/obj/item/stack/cable_coil, -/obj/structure/lattice/catwalk, -/turf/open/space, -/area/solar/auxstarboard) -"aaP" = ( -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"aaQ" = ( -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"aaR" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/light/small{ - dir = 8 - }, -/turf/open/floor/plating/warnplate{ - dir = 1 - }, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"aaS" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating/warnplate{ - dir = 1 - }, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"aaT" = ( -/obj/machinery/light/small{ - dir = 4 - }, -/turf/open/floor/plating/warnplate{ - dir = 1 - }, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"aaU" = ( -/obj/machinery/door/airlock/external{ - name = "External Airlock"; - req_access_txt = "13" - }, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/mining_construction) -"aaV" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/door/airlock/external{ - name = "Escape Pod 1" - }, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"aaW" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/door/airlock/external{ - name = "Escape Pod 2" - }, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"aaX" = ( -/obj/machinery/light/small{ - dir = 8 - }, -/obj/structure/closet/emcloset{ - anchored = 1 - }, -/obj/structure/sign/vacuum{ - pixel_x = -32 - }, -/turf/open/floor/plasteel/bot, -/area/mining_construction) -"aaY" = ( -/obj/structure/fans/tiny, -/turf/open/floor/plasteel/warning/side, -/area/mining_construction) -"aaZ" = ( -/obj/structure/reagent_dispensers/fueltank, -/turf/open/floor/plasteel/bot, -/area/mining_construction) -"aba" = ( -/obj/machinery/door/firedoor, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"abb" = ( -/obj/structure/sign/pods{ - pixel_x = -32 - }, -/turf/open/floor/plasteel/warning{ - dir = 9 - }, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"abc" = ( -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"abd" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/turf/open/floor/plasteel/warning{ - dir = 5 - }, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"abe" = ( -/obj/machinery/door/airlock/external{ - name = "External Airlock"; - req_access_txt = "13" - }, -/obj/structure/sign/directions/engineering{ - desc = "A sign that shows there are doors here. There are doors everywhere!"; - icon_state = "doors"; - name = "WARNING: EXTERNAL AIRLOCK"; - pixel_x = 32; - tag = "icon-doors" - }, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/mining_construction) -"abf" = ( -/turf/closed/wall/r_wall, -/area/maintenance/auxsolarstarboard) -"abg" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/maintenance/auxsolarstarboard) -"abh" = ( -/turf/open/floor/plasteel/neutral, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"abi" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1 - }, -/turf/open/floor/plasteel/yellow/side{ - dir = 9; - initial_gas_mix = "o2=22;n2=82;TEMP=293.15"; - tag = "icon-yellow (NORTHWEST)" - }, -/area/mining_construction) -"abj" = ( -/turf/open/floor/plasteel/yellow/side{ - dir = 1; - icon_state = "yellow"; - initial_gas_mix = "o2=22;n2=82;TEMP=293.15"; - tag = "icon-yellow (NORTH)" - }, -/area/mining_construction) -"abk" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/yellow/side{ - dir = 5 - }, -/area/mining_construction) -"abl" = ( -/obj/structure/sign/electricshock, -/turf/closed/wall/r_wall, -/area/maintenance/auxsolarstarboard) -"abm" = ( -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/plating/warnplate{ - dir = 9 - }, -/area/maintenance/auxsolarstarboard) -"abn" = ( -/obj/machinery/power/smes, -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/turf/open/floor/plating/warnplate{ - dir = 1 - }, -/area/maintenance/auxsolarstarboard) -"abo" = ( -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_y = 26 - }, -/obj/machinery/camera{ - c_tag = "Solar - Fore Starboard"; - name = "solar camera" - }, -/turf/open/floor/plating/warnplate{ - dir = 5 - }, -/area/maintenance/auxsolarstarboard) -"abp" = ( -/obj/structure/shuttle/engine/propulsion{ - tag = "icon-propulsion (NORTH)"; - icon_state = "propulsion"; - dir = 1 - }, -/turf/open/floor/plating/warnplate{ - dir = 1 - }, -/area/shuttle/arrival) -"abq" = ( -/turf/closed/wall/mineral/plastitanium, -/area/shuttle/arrival) -"abr" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/storage/belt/utility, -/obj/item/weapon/wrench, -/turf/open/floor/plasteel/yellow/side{ - dir = 8 - }, -/area/mining_construction) -"abs" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHEAST)"; - icon_state = "intact"; - dir = 6 - }, -/turf/open/floor/plasteel/neutral, -/area/mining_construction) -"abt" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/yellow/side{ - dir = 4 - }, -/area/mining_construction) -"abu" = ( -/obj/machinery/door/airlock/engineering{ - name = "Fore Starboard Solar Access"; - req_access_txt = "10" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/maintenance/auxsolarstarboard) -"abv" = ( -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/plating/warnplate{ - dir = 8 - }, -/area/maintenance/auxsolarstarboard) -"abw" = ( -/obj/machinery/power/terminal{ - icon_state = "term"; - dir = 1 - }, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/effect/landmark{ - name = "blobstart" - }, -/turf/open/floor/plating, -/area/maintenance/auxsolarstarboard) -"abx" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0; - tag = "" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/turf/open/floor/plating/warnplate{ - dir = 4 - }, -/area/maintenance/auxsolarstarboard) -"aby" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0; - tag = "" - }, -/obj/machinery/door/airlock/external{ - name = "External Solar Access"; - req_access_txt = "10" - }, -/turf/open/floor/plasteel/warning/side, -/area/maintenance/auxsolarstarboard) -"abz" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0; - tag = "" - }, -/obj/structure/fans/tiny, -/turf/open/floor/plasteel/delivery, -/area/maintenance/auxsolarstarboard) -"abA" = ( -/obj/structure/lattice/catwalk, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0; - tag = "" - }, -/turf/open/space, -/area/solar/auxstarboard) -"abB" = ( -/obj/machinery/status_display{ - pixel_x = -32 - }, -/obj/machinery/light{ - dir = 8 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"abC" = ( -/obj/machinery/status_display{ - pixel_x = 32 - }, -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHWEST)"; - icon_state = "intact"; - dir = 10 - }, -/obj/machinery/camera{ - c_tag = "Arrivals Dock - Fore"; - dir = 8; - name = "arrivals camera" - }, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"abD" = ( -/obj/machinery/status_display{ - pixel_x = -32 - }, -/obj/machinery/light{ - dir = 8 - }, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"abE" = ( -/obj/machinery/status_display{ - pixel_x = 32 - }, -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/obj/machinery/camera{ - c_tag = "Arrivals Shuttle - Fore Port"; - dir = 8; - name = "arrivals camera" - }, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"abF" = ( -/obj/structure/window/reinforced, -/obj/structure/shuttle/engine/heater{ - tag = "icon-heater (NORTH)"; - icon_state = "heater"; - dir = 1 - }, -/turf/open/floor/plating/warnplate{ - dir = 1 - }, -/area/shuttle/arrival) -"abG" = ( -/obj/machinery/status_display{ - pixel_x = -32 - }, -/obj/machinery/light{ - dir = 8 - }, -/obj/machinery/camera{ - c_tag = "Arrivals Shuttle - Fore Starboard"; - dir = 4; - name = "arrivals camera" - }, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"abH" = ( -/obj/machinery/status_display{ - pixel_x = 32 - }, -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"abI" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/clipboard, -/obj/item/weapon/mining_voucher, -/obj/machinery/camera{ - c_tag = "Auxillary Construction - Storage"; - dir = 4; - name = "engineering camera" - }, -/turf/open/floor/plasteel/yellow/side{ - dir = 8 - }, -/area/mining_construction) -"abJ" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral, -/area/mining_construction) -"abK" = ( -/turf/open/floor/plasteel/yellow/side{ - dir = 4 - }, -/area/mining_construction) -"abL" = ( -/obj/structure/sign/directions/engineering{ - desc = "A sign that shows there are doors here. There are doors everywhere!"; - icon_state = "doors"; - name = "WARNING: EXTERNAL AIRLOCK"; - pixel_x = 0; - tag = "icon-doors" - }, -/turf/closed/wall/r_wall, -/area/maintenance/auxsolarstarboard) -"abM" = ( -/obj/structure/cable/white, -/obj/machinery/power/apc{ - cell_type = 10000; - dir = 2; - name = "Fore Starboard Solar APC"; - pixel_y = -26 - }, -/turf/open/floor/plating/warnplate{ - dir = 10 - }, -/area/maintenance/auxsolarstarboard) -"abN" = ( -/obj/structure/chair/office/dark{ - dir = 4 - }, -/turf/open/floor/plating/warnplate, -/area/maintenance/auxsolarstarboard) -"abO" = ( -/obj/machinery/power/solar_control{ - id = "forestarboard"; - name = "Fore Starboard Solar Control"; - track = 0 - }, -/obj/structure/cable, -/turf/open/floor/plating/warnplate{ - dir = 6 - }, -/area/maintenance/auxsolarstarboard) -"abP" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/structure/sign/directions/engineering{ - desc = "A sign that shows there are doors here. There are doors everywhere!"; - icon_state = "doors"; - name = "WARNING: EXTERNAL AIRLOCK"; - pixel_x = 0; - tag = "icon-doors" - }, -/turf/open/floor/plating, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"abQ" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"abR" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/structure/sign/vacuum, -/turf/open/floor/plating, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"abS" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"abT" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/structure/sign/directions/engineering{ - desc = "A sign that shows there are doors here. There are doors everywhere!"; - icon_state = "doors"; - name = "WARNING: EXTERNAL AIRLOCK"; - tag = "icon-doors" - }, -/turf/open/floor/plating, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"abU" = ( -/turf/closed/wall/mineral/titanium/nodiagonal, -/area/shuttle/arrival) -"abV" = ( -/turf/closed/wall/mineral/titanium, -/area/shuttle/arrival) -"abW" = ( -/obj/structure/window/shuttle, -/obj/structure/grille, -/turf/open/floor/plating, -/area/shuttle/arrival) -"abX" = ( -/obj/structure/table/reinforced, -/obj/item/device/analyzer, -/turf/open/floor/plasteel/yellow/side{ - dir = 8 - }, -/area/mining_construction) -"abY" = ( -/obj/item/clothing/suit/hazardvest{ - desc = "A high-visibility lifejacket complete with whistle and slot for oxygen tanks."; - name = "emergency lifejacket" - }, -/obj/item/clothing/suit/hazardvest{ - desc = "A high-visibility lifejacket complete with whistle and slot for oxygen tanks."; - name = "emergency lifejacket" - }, -/obj/item/clothing/suit/hazardvest{ - desc = "A high-visibility lifejacket complete with whistle and slot for oxygen tanks."; - name = "emergency lifejacket" - }, -/obj/item/clothing/suit/hazardvest{ - desc = "A high-visibility lifejacket complete with whistle and slot for oxygen tanks."; - name = "emergency lifejacket" - }, -/obj/item/clothing/suit/hazardvest{ - desc = "A high-visibility lifejacket complete with whistle and slot for oxygen tanks."; - name = "emergency lifejacket" - }, -/obj/item/weapon/tank/internals/emergency_oxygen/double{ - pixel_x = 3 - }, -/obj/item/weapon/tank/internals/emergency_oxygen/double{ - pixel_x = 3 - }, -/obj/item/weapon/tank/internals/emergency_oxygen/double{ - pixel_x = 3 - }, -/obj/item/weapon/tank/internals/emergency_oxygen/double{ - pixel_x = 3 - }, -/obj/item/weapon/tank/internals/emergency_oxygen/double{ - pixel_x = 3 - }, -/obj/item/clothing/mask/breath{ - pixel_x = -3; - pixel_y = -3 - }, -/obj/item/clothing/mask/breath{ - pixel_x = -3; - pixel_y = -3 - }, -/obj/item/clothing/mask/breath{ - pixel_x = -3; - pixel_y = -3 - }, -/obj/item/clothing/mask/breath{ - pixel_x = -3; - pixel_y = -3 - }, -/obj/item/clothing/mask/breath{ - pixel_x = -3; - pixel_y = -3 - }, -/obj/item/clothing/head/hardhat/orange{ - name = "protective hat"; - pixel_y = 9 - }, -/obj/item/clothing/head/hardhat/orange{ - name = "protective hat"; - pixel_y = 9 - }, -/obj/item/clothing/head/hardhat/orange{ - name = "protective hat"; - pixel_y = 9 - }, -/obj/item/clothing/head/hardhat/orange{ - name = "protective hat"; - pixel_y = 9 - }, -/obj/item/clothing/head/hardhat/orange{ - name = "protective hat"; - pixel_y = 9 - }, -/obj/structure/closet/crate/internals, -/turf/open/floor/plasteel/bot, -/area/shuttle/arrival) -"abZ" = ( -/turf/open/floor/plasteel/delivery, -/area/shuttle/arrival) -"aca" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/storage/toolbox/emergency, -/turf/open/floor/plasteel/bot, -/area/shuttle/arrival) -"acb" = ( -/obj/structure/table/reinforced, -/obj/structure/extinguisher_cabinet{ - pixel_y = 32 - }, -/obj/item/weapon/storage/firstaid/regular{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/storage/firstaid/regular, -/turf/open/floor/plasteel/bot, -/area/shuttle/arrival) -"acc" = ( -/obj/structure/table/reinforced, -/obj/machinery/cell_charger, -/turf/open/floor/plasteel/bot, -/area/shuttle/arrival) -"acd" = ( -/obj/structure/rack, -/obj/item/weapon/storage/toolbox/emergency, -/obj/item/weapon/crowbar/red, -/turf/open/floor/plasteel/yellow/side{ - dir = 10 - }, -/area/mining_construction) -"ace" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/yellow/side, -/area/mining_construction) -"acf" = ( -/turf/open/floor/plasteel/yellow/side{ - dir = 6 - }, -/area/mining_construction) -"acg" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/mining_construction) -"ach" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/door/airlock/external{ - name = "External Docking Port" - }, -/turf/open/floor/plasteel/warning/side, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"aci" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/fans/tiny, -/turf/open/floor/plasteel/delivery, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"acj" = ( -/obj/machinery/door/airlock/external{ - name = "External Docking Port" - }, -/turf/open/floor/plasteel/warning/side, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"ack" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/delivery, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"acl" = ( -/obj/machinery/door/airlock/shuttle{ - name = "Arrival Shuttle Airlock"; - req_access_txt = "0" - }, -/turf/open/floor/plasteel/warnwhite/side, -/area/shuttle/arrival) -"acm" = ( -/turf/open/floor/plasteel/neutral/side{ - dir = 8; - heat_capacity = 1e+006 - }, -/area/shuttle/arrival) -"acn" = ( -/turf/open/floor/plasteel/neutral, -/area/shuttle/arrival) -"aco" = ( -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/shuttle/arrival) -"acp" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/door/airlock/engineering{ - name = "Auxiliary Construction Storage"; - req_access_txt = "32;47;48" - }, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/mining_construction) -"acq" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHEAST)"; - icon_state = "intact"; - dir = 6 - }, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"acr" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/plasteel/neutral, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"acs" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/obj/machinery/status_display{ - pixel_x = -32 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 8; - heat_capacity = 1e+006 - }, -/area/shuttle/arrival) -"act" = ( -/obj/machinery/holopad, -/turf/open/floor/plasteel/bot, -/area/shuttle/arrival) -"acu" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/obj/machinery/ai_status_display{ - pixel_x = 32 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/shuttle/arrival) -"acv" = ( -/obj/machinery/status_display, -/turf/closed/wall, -/area/mining_construction) -"acw" = ( -/obj/machinery/requests_console{ - department = "Construction"; - departmentType = 0; - name = "Construction RC"; - pixel_x = 0; - pixel_y = 32 - }, -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1 - }, -/turf/open/floor/plasteel/yellow/side{ - dir = 9; - initial_gas_mix = "o2=22;n2=82;TEMP=293.15"; - tag = "icon-yellow (NORTHWEST)" - }, -/area/mining_construction) -"acx" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/yellow/side{ - dir = 1; - icon_state = "yellow"; - initial_gas_mix = "o2=22;n2=82;TEMP=293.15"; - tag = "icon-yellow (NORTH)" - }, -/area/mining_construction) -"acy" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/mining_shuttle_beacon, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_y = 26 - }, -/turf/open/floor/plasteel/yellow/side{ - dir = 5 - }, -/area/mining_construction) -"acz" = ( -/turf/open/floor/plating/warnplate{ - dir = 9 - }, -/area/shuttle/auxillary_base) -"acA" = ( -/turf/open/floor/plating/warnplate{ - dir = 1 - }, -/area/shuttle/auxillary_base) -"acB" = ( -/turf/open/floor/plating/warnplate{ - dir = 5 - }, -/area/shuttle/auxillary_base) -"acC" = ( -/obj/structure/closet/emcloset, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/delivery, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"acD" = ( -/obj/effect/decal/cleanable/dirt, -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/obj/machinery/light{ - dir = 1 - }, -/turf/open/floor/plasteel/delivery, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"acE" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/obj/machinery/light{ - dir = 1 - }, -/turf/open/floor/plasteel/delivery, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"acF" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"acG" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/obj/machinery/light{ - dir = 1 - }, -/turf/open/floor/plasteel/delivery, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"acH" = ( -/obj/structure/chair{ - dir = 4 - }, -/obj/effect/landmark/latejoin, -/turf/open/floor/plasteel/bot, -/area/shuttle/arrival) -"acI" = ( -/obj/structure/chair{ - dir = 8 - }, -/obj/effect/landmark/latejoin, -/turf/open/floor/plasteel/bot, -/area/shuttle/arrival) -"acJ" = ( -/obj/structure/flora/ausbushes/grassybush, -/obj/structure/flora/ausbushes/lavendergrass, -/obj/structure/flora/ausbushes/ppflowers, -/obj/structure/flora/ausbushes/sunnybush, -/obj/structure/window/shuttle, -/turf/open/floor/grass, -/area/shuttle/arrival) -"acK" = ( -/obj/machinery/vending/snack, -/obj/machinery/light{ - dir = 1 - }, -/turf/open/floor/plasteel/delivery, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"acL" = ( -/obj/machinery/door/poddoor/shutters{ - id = "construction"; - name = "Construction Shutters" - }, -/turf/open/floor/plasteel/warning/side, -/area/mining_construction) -"acM" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHEAST)"; - icon_state = "intact"; - dir = 6 - }, -/turf/open/floor/plasteel/yellow/side{ - dir = 8 - }, -/area/mining_construction) -"acN" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHWEST)"; - icon_state = "intact"; - dir = 9 - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/neutral, -/area/mining_construction) -"acO" = ( -/obj/structure/table/reinforced, -/obj/item/stack/packageWrap, -/obj/item/stack/cable_coil/white{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/stack/cable_coil/white, -/obj/item/weapon/stock_parts/cell/high, -/turf/open/floor/plasteel/yellow/side{ - dir = 4 - }, -/area/mining_construction) -"acP" = ( -/turf/open/floor/plating/warnplate{ - dir = 8 - }, -/area/shuttle/auxillary_base) -"acQ" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/shuttle/auxillary_base) -"acR" = ( -/turf/open/floor/plating, -/area/shuttle/auxillary_base) -"acS" = ( -/turf/open/floor/plating/warnplate{ - dir = 4 - }, -/area/shuttle/auxillary_base) -"acT" = ( -/obj/structure/closet/emcloset, -/turf/open/floor/plasteel/delivery, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"acU" = ( -/obj/structure/chair{ - dir = 8 - }, -/obj/effect/decal/cleanable/dirt, -/obj/effect/landmark/start{ - name = "Assistant" - }, -/turf/open/floor/plasteel/delivery, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"acV" = ( -/obj/structure/chair{ - dir = 4 - }, -/turf/open/floor/plasteel/delivery, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"acW" = ( -/obj/structure/chair{ - dir = 8 - }, -/turf/open/floor/plasteel/delivery, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"acX" = ( -/obj/structure/extinguisher_cabinet, -/turf/closed/wall/shuttle/smooth/nodiagonal, -/area/shuttle/arrival) -"acY" = ( -/obj/machinery/vending/cola, -/turf/open/floor/plasteel/delivery, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"acZ" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"ada" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"adb" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"adc" = ( -/obj/machinery/door/poddoor/shutters{ - id = "construction"; - name = "Construction Shutters" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/mining_construction) -"add" = ( -/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, -/turf/open/floor/plasteel/yellow/side{ - dir = 8 - }, -/area/mining_construction) -"ade" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/neutral, -/area/mining_construction) -"adf" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/table/reinforced, -/obj/item/weapon/clipboard, -/obj/item/weapon/folder/yellow, -/obj/item/device/assault_pod/mining, -/turf/open/floor/plasteel/yellow/side{ - dir = 4 - }, -/area/mining_construction) -"adg" = ( -/obj/structure/chair{ - dir = 4 - }, -/obj/effect/landmark/start{ - name = "Assistant" - }, -/turf/open/floor/plasteel/delivery, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"adh" = ( -/obj/structure/flora/ausbushes/grassybush, -/obj/structure/flora/ausbushes/lavendergrass, -/obj/structure/flora/ausbushes/ywflowers, -/obj/structure/flora/ausbushes/fernybush, -/obj/structure/window/shuttle, -/turf/open/floor/grass, -/area/shuttle/arrival) -"adi" = ( -/obj/item/device/radio/beacon, -/turf/open/floor/plasteel/delivery, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"adj" = ( -/obj/machinery/button/door{ - id = "construction"; - name = "Auxiliary Construction Shutters"; - pixel_x = -26; - req_access_txt = "32;47;48" - }, -/obj/machinery/light_switch{ - pixel_x = -38 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/camera{ - c_tag = "Auxillary Construction"; - dir = 4; - name = "engineering camera" - }, -/turf/open/floor/plasteel/yellow/side{ - dir = 8 - }, -/area/mining_construction) -"adk" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/neutral, -/area/mining_construction) -"adl" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/turf/open/floor/plasteel/yellow/side{ - dir = 4 - }, -/area/mining_construction) -"adm" = ( -/turf/open/space, -/obj/machinery/porta_turret/syndicate{ - dir = 9 - }, -/turf/closed/wall/mineral/plastitanium{ - dir = 8; - icon_state = "diagonalWall3" - }, -/area/shuttle/syndicate) -"adn" = ( -/turf/closed/wall/mineral/plastitanium, -/area/shuttle/syndicate) -"ado" = ( -/obj/structure/grille, -/obj/machinery/door/poddoor/shutters{ - id = "syndieshutters"; - name = "blast shutters" - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/shuttle/syndicate) -"adp" = ( -/turf/open/space, -/obj/machinery/porta_turret/syndicate{ - dir = 5 - }, -/turf/closed/wall/mineral/plastitanium{ - dir = 1; - icon_state = "diagonalWall3" - }, -/area/shuttle/syndicate) -"adq" = ( -/obj/structure/closet/firecloset, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/delivery, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"adr" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/turf/open/floor/plasteel/delivery, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"ads" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/turf/open/floor/plasteel/delivery, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"adt" = ( -/obj/machinery/vending/wallmed{ - name = "Emergency NanoMed"; - pixel_x = 0; - pixel_y = 0; - req_access_txt = "0"; - use_power = 0 - }, -/turf/closed/wall/shuttle/smooth/nodiagonal, -/area/shuttle/arrival) -"adu" = ( -/obj/machinery/light{ - dir = 8 - }, -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/machinery/power/apc{ - dir = 8; - name = "Auxiliary Construction APC"; - pixel_x = -26; - pixel_y = 3 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/yellow/side{ - dir = 8 - }, -/area/mining_construction) -"adv" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/effect/landmark{ - name = "lightsout" - }, -/obj/machinery/holopad, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/neutral, -/area/mining_construction) -"adw" = ( -/obj/machinery/door/airlock/external{ - name = "Auxiliary Base Airlock" - }, -/turf/open/floor/plating/warnplate/side, -/area/mining_construction) -"adx" = ( -/obj/machinery/light{ - icon_state = "tube1"; - dir = 4 - }, -/turf/open/floor/plating, -/area/shuttle/auxillary_base) -"ady" = ( -/obj/docking_port/mobile/auxillary_base{ - dheight = 4; - dir = 2; - dwidth = 4; - height = 9; - width = 9 - }, -/obj/machinery/bluespace_beacon, -/obj/machinery/computer/shuttle/auxillary_base{ - pixel_y = 0 - }, -/turf/closed/wall, -/area/shuttle/auxillary_base) -"adz" = ( -/obj/machinery/light{ - dir = 8 - }, -/obj/machinery/camera{ - c_tag = "Auxillary Base"; - dir = 4; - name = "engineering camera" - }, -/turf/open/floor/plating, -/area/shuttle/auxillary_base) -"adA" = ( -/obj/machinery/computer/med_data{ - icon_keyboard = "syndi_key" - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/shuttle/syndicate) -"adB" = ( -/obj/machinery/computer/crew{ - icon_keyboard = "syndi_key" - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/shuttle/syndicate) -"adC" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/folder/red, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/shuttle/syndicate) -"adD" = ( -/obj/machinery/computer/shuttle/syndicate, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/shuttle/syndicate) -"adE" = ( -/obj/structure/table/reinforced, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/shuttle/syndicate) -"adF" = ( -/obj/machinery/computer/camera_advanced{ - icon_keyboard = "syndi_key" - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/shuttle/syndicate) -"adG" = ( -/obj/machinery/computer/secure_data{ - icon_keyboard = "syndi_key" - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/shuttle/syndicate) -"adH" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHEAST)"; - icon_state = "intact"; - dir = 6 - }, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"adI" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"adJ" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/neutral, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"adK" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHWEST)"; - icon_state = "intact"; - dir = 10 - }, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"adL" = ( -/obj/structure/sign/nanotrasen, -/turf/closed/wall/mineral/titanium, -/area/shuttle/arrival) -"adM" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 8; - heat_capacity = 1e+006 - }, -/area/shuttle/arrival) -"adN" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/clipboard, -/obj/item/toy/figure/assistant, -/turf/open/floor/plasteel/delivery, -/area/shuttle/arrival) -"adO" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/folder, -/obj/item/weapon/storage/pill_bottle/dice, -/turf/open/floor/plasteel/delivery, -/area/shuttle/arrival) -"adP" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/shuttle/arrival) -"adQ" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/yellow/side{ - dir = 8 - }, -/area/mining_construction) -"adR" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/neutral, -/area/mining_construction) -"adS" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1 - }, -/turf/open/floor/plasteel/yellow/side{ - dir = 4 - }, -/area/mining_construction) -"adT" = ( -/obj/structure/table/reinforced, -/obj/machinery/status_display{ - pixel_x = -32 - }, -/obj/item/weapon/clipboard, -/obj/item/toy/figure/syndie, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/shuttle/syndicate) -"adU" = ( -/obj/structure/chair/office/dark{ - dir = 8 - }, -/turf/open/floor/plasteel/black, -/area/shuttle/syndicate) -"adV" = ( -/turf/open/floor/plasteel/black, -/area/shuttle/syndicate) -"adW" = ( -/obj/structure/chair/office/dark{ - dir = 1 - }, -/obj/machinery/button/door{ - id = "syndieshutters"; - name = "Cockpit View Control"; - pixel_x = 32; - pixel_y = 32; - req_access_txt = "150" - }, -/turf/open/floor/plasteel/black, -/area/shuttle/syndicate) -"adX" = ( -/obj/structure/chair/office/dark{ - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/shuttle/syndicate) -"adY" = ( -/obj/structure/table/reinforced, -/obj/machinery/ai_status_display{ - pixel_x = 32 - }, -/obj/item/weapon/storage/fancy/donut_box, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/shuttle/syndicate) -"adZ" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"aea" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"aeb" = ( -/obj/effect/landmark{ - name = "Observer-Start" - }, -/turf/open/floor/plasteel/neutral, -/area/shuttle/arrival) -"aec" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"aed" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/engineering{ - name = "Auxiliary Construction Zone"; - req_access_txt = "32;47;48" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/mining_construction) -"aee" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/yellow/side{ - dir = 8 - }, -/area/mining_construction) -"aef" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/neutral, -/area/mining_construction) -"aeg" = ( -/obj/structure/table/reinforced, -/obj/item/stack/sheet/metal{ - amount = 50 - }, -/obj/item/stack/sheet/glass{ - amount = 30 - }, -/obj/item/weapon/pipe_dispenser, -/turf/open/floor/plasteel/yellow/side{ - dir = 4 - }, -/area/mining_construction) -"aeh" = ( -/turf/open/floor/plasteel/vault, -/area/shuttle/syndicate) -"aei" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/paper_bin, -/obj/item/weapon/pen, -/turf/open/floor/plasteel/bot, -/area/shuttle/arrival) -"aej" = ( -/turf/open/floor/plasteel/neutral/side, -/area/shuttle/arrival) -"aek" = ( -/turf/open/floor/plasteel/blue/corner, -/area/shuttle/arrival) -"ael" = ( -/turf/open/floor/plasteel/blue/side, -/area/shuttle/arrival) -"aem" = ( -/turf/open/floor/plasteel/blue/corner{ - tag = "icon-bluecorner (WEST)"; - icon_state = "bluecorner"; - dir = 8 - }, -/area/shuttle/arrival) -"aen" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/storage/briefcase{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/storage/secure/briefcase, -/turf/open/floor/plasteel/bot, -/area/shuttle/arrival) -"aeo" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/engineering{ - name = "Auxiliary Construction Zone"; - req_access_txt = "32;47;48" - }, -/turf/open/floor/plasteel/warning/side, -/area/mining_construction) -"aep" = ( -/obj/structure/table/reinforced, -/obj/item/stack/sheet/plasteel{ - amount = 20 - }, -/obj/item/stack/rods{ - amount = 50 - }, -/obj/item/weapon/storage/box/lights/mixed, -/turf/open/floor/plasteel/yellow/side{ - dir = 4 - }, -/area/mining_construction) -"aeq" = ( -/turf/open/floor/plating/warnplate{ - dir = 10 - }, -/area/shuttle/auxillary_base) -"aer" = ( -/turf/open/floor/plating/warnplate{ - dir = 6 - }, -/area/shuttle/auxillary_base) -"aes" = ( -/turf/open/space, -/turf/closed/wall/mineral/plastitanium{ - icon_state = "diagonalWall3" - }, -/area/shuttle/syndicate) -"aet" = ( -/obj/machinery/status_display, -/turf/closed/wall/mineral/plastitanium, -/area/shuttle/syndicate) -"aeu" = ( -/obj/machinery/door/airlock/hatch{ - name = "Cockpit"; - req_access_txt = "150" - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/shuttle/syndicate) -"aev" = ( -/turf/open/space, -/turf/closed/wall/mineral/plastitanium{ - dir = 4; - icon_state = "diagonalWall3" - }, -/area/shuttle/syndicate) -"aew" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"aex" = ( -/obj/machinery/status_display, -/turf/closed/wall/mineral/titanium, -/area/shuttle/arrival) -"aey" = ( -/obj/machinery/door/airlock/glass_command{ - name = "Cockpit"; - req_access_txt = "19" - }, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/shuttle/arrival) -"aez" = ( -/obj/machinery/ai_status_display, -/turf/closed/wall/mineral/titanium, -/area/shuttle/arrival) -"aeA" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/newscaster{ - pixel_x = 0; - pixel_y = -32 - }, -/obj/machinery/firealarm{ - dir = 8; - pixel_x = -24 - }, -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHEAST)"; - icon_state = "intact"; - dir = 5 - }, -/turf/open/floor/plasteel/yellow/side{ - dir = 10; - initial_gas_mix = "o2=22;n2=82;TEMP=293.15"; - tag = "icon-yellow (SOUTHWEST)" - }, -/area/mining_construction) -"aeB" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHWEST)"; - icon_state = "intact"; - dir = 10 - }, -/turf/open/floor/plasteel/yellow/side, -/area/mining_construction) -"aeC" = ( -/obj/machinery/airalarm{ - dir = 1; - icon_state = "alarm0"; - pixel_y = -22 - }, -/obj/structure/rack, -/obj/item/weapon/storage/toolbox/mechanical{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/weapon/storage/toolbox/mechanical, -/obj/item/weapon/wrench, -/turf/open/floor/plasteel/yellow/side{ - dir = 6 - }, -/area/mining_construction) -"aeD" = ( -/turf/open/floor/plating/warnplate, -/area/shuttle/auxillary_base) -"aeE" = ( -/turf/open/space, -/obj/machinery/porta_turret/syndicate{ - dir = 10 - }, -/turf/closed/wall/mineral/plastitanium{ - icon_state = "diagonalWall3" - }, -/area/shuttle/syndicate) -"aeF" = ( -/obj/structure/table/reinforced, -/obj/item/stack/cable_coil/white, -/obj/item/stack/cable_coil/white, -/obj/item/weapon/crowbar/red, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/shuttle/syndicate) -"aeG" = ( -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/shuttle/syndicate) -"aeH" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/storage/box/handcuffs{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/storage/box/zipties, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/shuttle/syndicate) -"aeI" = ( -/turf/open/space, -/obj/machinery/porta_turret/syndicate{ - dir = 6 - }, -/turf/closed/wall/mineral/plastitanium{ - dir = 4; - icon_state = "diagonalWall3" - }, -/area/shuttle/syndicate) -"aeJ" = ( -/obj/machinery/status_display{ - pixel_x = -32 - }, -/obj/machinery/light{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"aeK" = ( -/obj/machinery/status_display{ - pixel_x = 32 - }, -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/camera{ - c_tag = "Arrivals Dock - Aft"; - dir = 8; - name = "arrivals camera" - }, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"aeL" = ( -/obj/machinery/status_display{ - pixel_x = -32 - }, -/obj/machinery/light{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"aeM" = ( -/obj/machinery/status_display{ - pixel_x = 32 - }, -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/camera{ - c_tag = "Arrivals Shuttle - Aft Port"; - dir = 8; - name = "arrivals camera" - }, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"aeN" = ( -/turf/open/floor/plasteel/blue/side{ - dir = 8 - }, -/area/shuttle/arrival) -"aeO" = ( -/obj/structure/chair/office/dark, -/turf/open/floor/plasteel/blue/side{ - dir = 1 - }, -/area/shuttle/arrival) -"aeP" = ( -/turf/open/floor/plasteel/blue/side{ - tag = "icon-blue (EAST)"; - icon_state = "blue"; - dir = 4 - }, -/area/shuttle/arrival) -"aeQ" = ( -/obj/machinery/status_display{ - pixel_x = -32 - }, -/obj/machinery/light{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/camera{ - c_tag = "Arrivals Shuttle - Aft Starboard"; - dir = 4; - name = "arrivals camera" - }, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"aeR" = ( -/obj/machinery/status_display{ - pixel_x = 32 - }, -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"aeS" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Maintenance Hatch"; - req_access_txt = "12" - }, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/mining_construction) -"aeT" = ( -/obj/structure/chair{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/shuttle/syndicate) -"aeU" = ( -/obj/structure/chair{ - dir = 8 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/shuttle/syndicate) -"aeV" = ( -/obj/structure/frame/computer, -/turf/open/floor/plasteel/blue, -/area/shuttle/arrival) -"aeW" = ( -/obj/structure/frame/computer, -/turf/open/floor/plasteel/blue/side, -/area/shuttle/arrival) -"aeX" = ( -/turf/closed/wall, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"aeY" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/closet/emcloset, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"aeZ" = ( -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/delivery, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"afa" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"afb" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 5; - initial_gas_mix = "o2=22;n2=82;TEMP=293.15"; - tag = "icon-neutral (NORTHEAST)" - }, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"afc" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/structure/barricade/wooden, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"afd" = ( -/obj/machinery/vending/snack, -/obj/effect/decal/cleanable/cobweb, -/turf/open/floor/plasteel/vault{ - dir = 4 - }, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"afe" = ( -/obj/machinery/vending/cola, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/vault{ - dir = 4 - }, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"aff" = ( -/obj/effect/decal/cleanable/dirt, -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/obj/structure/sign/poster{ - pixel_y = 32 - }, -/turf/open/floor/plasteel/vault{ - dir = 6 - }, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"afg" = ( -/obj/structure/chair/stool, -/obj/machinery/light/small{ - dir = 1 - }, -/obj/machinery/airalarm{ - pixel_y = 23 - }, -/turf/open/floor/plasteel/vault, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"afh" = ( -/obj/structure/table/wood, -/obj/machinery/newscaster{ - pixel_y = 32 - }, -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plasteel/vault, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"afi" = ( -/obj/structure/chair/stool, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/vault, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"afj" = ( -/obj/effect/decal/cleanable/dirt, -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/turf/open/floor/plasteel/vault, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"afk" = ( -/obj/machinery/porta_turret/syndicate{ - dir = 4 - }, -/turf/closed/wall/mineral/plastitanium, -/area/shuttle/syndicate) -"afl" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"afm" = ( -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Maintenance Hatch"; - req_access_txt = "12" - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning/side, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"afn" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"afo" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/landmark{ - name = "blobstart" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"afp" = ( -/mob/living/simple_animal/cockroach, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"afq" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/delivery, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"afr" = ( -/obj/structure/door_assembly/door_assembly_mhatch, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning/side, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"afs" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/redyellow, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"aft" = ( -/turf/open/floor/plasteel/redyellow, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"afu" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"afv" = ( -/obj/machinery/suit_storage_unit/syndicate, -/turf/open/floor/plasteel/podhatch{ - dir = 5 - }, -/area/shuttle/syndicate) -"afw" = ( -/obj/machinery/portable_atmospherics/canister/oxygen, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/shuttle/syndicate) -"afx" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/warning{ - dir = 10 - }, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"afy" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/warning{ - dir = 6 - }, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"afz" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/warning{ - dir = 10 - }, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"afA" = ( -/turf/open/floor/plasteel/warning, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"afB" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/warning{ - dir = 6 - }, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"afC" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/light/small, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 5 - }, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"afD" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 8; - heat_capacity = 1e+006 - }, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"afE" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/delivery, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"afF" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Maintenance Hatch"; - req_access_txt = "12" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/barricade/wooden, -/turf/open/floor/plasteel/warning/side, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"afG" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/redyellow, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"afH" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/redyellow, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"afI" = ( -/obj/effect/landmark{ - name = "blobstart" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/redyellow, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"afJ" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/plasteel/redyellow, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"afK" = ( -/obj/machinery/suit_storage_unit/syndicate, -/turf/open/floor/plasteel/podhatch{ - tag = "icon-podhatch (EAST)"; - icon_state = "podhatch"; - dir = 4 - }, -/area/shuttle/syndicate) -"afL" = ( -/obj/structure/tank_dispenser/oxygen, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/shuttle/syndicate) -"afM" = ( -/obj/machinery/door/poddoor{ - id = "smindicate"; - name = "outer blast door" - }, -/obj/machinery/button/door{ - id = "smindicate"; - name = "external door control"; - pixel_x = -26; - pixel_y = 0; - req_access_txt = "150" - }, -/obj/docking_port/mobile{ - dheight = 9; - dir = 2; - dwidth = 5; - height = 24; - id = "syndicate"; - name = "syndicate infiltrator"; - port_angle = 0; - roundstart_move = "syndicate_away"; - width = 18 - }, -/obj/docking_port/stationary{ - dheight = 9; - dir = 2; - dwidth = 5; - height = 24; - id = "syndicate_nw"; - name = "northwest of station"; - turf_type = /turf/open/space; - width = 18 - }, -/obj/structure/fans/tiny, -/turf/open/floor/plasteel/podhatch{ - tag = "icon-podhatch (NORTH)"; - icon_state = "podhatch"; - dir = 1 - }, -/area/shuttle/syndicate) -"afN" = ( -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; - icon_state = "space"; - layer = 4; - name = "EXTERNAL AIRLOCK"; - pixel_x = 0 - }, -/turf/closed/wall/mineral/plastitanium, -/area/shuttle/syndicate) -"afO" = ( -/obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"afP" = ( -/obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"afQ" = ( -/obj/machinery/door/firedoor, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"afR" = ( -/obj/structure/sign/pods, -/turf/closed/wall, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"afS" = ( -/obj/machinery/door/firedoor, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"afT" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/bot, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"afU" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/bot, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"afV" = ( -/obj/structure/table_frame/wood, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/redyellow, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"afW" = ( -/obj/item/chair/stool/bar{ - pixel_y = -8 - }, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/vomit/old, -/turf/open/floor/plasteel/redyellow, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"afX" = ( -/obj/structure/chair/stool/bar, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/redyellow, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"afY" = ( -/obj/machinery/light/small, -/turf/open/floor/plasteel/redyellow, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"afZ" = ( -/obj/structure/chair/stool/bar, -/turf/open/floor/plasteel/redyellow, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"aga" = ( -/obj/structure/table/wood, -/obj/effect/decal/cleanable/dirt, -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plasteel/redyellow, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"agb" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/shuttle/syndicate) -"agc" = ( -/obj/machinery/door/airlock/external{ - name = "Ready Room"; - req_access_txt = "150" - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/shuttle/syndicate) -"agd" = ( -/obj/item/weapon/storage/toolbox/syndicate, -/obj/item/weapon/crowbar/red, -/obj/structure/table/reinforced, -/turf/open/floor/plasteel/podhatch{ - dir = 10 - }, -/area/shuttle/syndicate) -"age" = ( -/turf/open/floor/plasteel/podhatch, -/area/shuttle/syndicate) -"agf" = ( -/obj/structure/chair, -/turf/open/floor/plasteel/podhatch{ - tag = "icon-podhatch (SOUTHEAST)"; - icon_state = "podhatch"; - dir = 6 - }, -/area/shuttle/syndicate) -"agg" = ( -/obj/structure/grille, -/turf/closed/wall/r_wall, -/area/space) -"agh" = ( -/obj/structure/table, -/obj/item/weapon/storage/briefcase, -/turf/open/floor/plasteel/delivery, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"agi" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/arrival{ - tag = "icon-arrival (NORTHWEST)"; - icon_state = "arrival"; - dir = 9 - }, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"agj" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/arrival{ - dir = 1 - }, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"agk" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/plasteel/arrival{ - dir = 1 - }, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"agl" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/arrival{ - dir = 1 - }, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"agm" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 2; - on = 1; - scrub_N2O = 1; - scrub_Toxins = 1 - }, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_y = 26 - }, -/turf/open/floor/plasteel/arrival{ - dir = 1 - }, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"agn" = ( -/obj/machinery/light{ - dir = 1 - }, -/obj/machinery/newscaster{ - pixel_y = 32 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/arrival{ - dir = 1 - }, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"ago" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plasteel/arrival{ - dir = 1 - }, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"agp" = ( -/obj/machinery/light{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/arrival{ - dir = 1 - }, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"agq" = ( -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/machinery/power/apc{ - cell_type = 5000; - dir = 1; - name = "Arrivals APC"; - pixel_x = 0; - pixel_y = 25 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/camera{ - c_tag = "Arrivals - Center Port"; - dir = 2; - name = "arrivals camera" - }, -/turf/open/floor/plasteel/arrival{ - dir = 1 - }, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"agr" = ( -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, -/turf/open/floor/plasteel/arrival{ - dir = 1 - }, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"ags" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/arrival{ - dir = 1 - }, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"agt" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 2; - on = 1; - scrub_N2O = 1; - scrub_Toxins = 1 - }, -/turf/open/floor/plasteel/arrival{ - dir = 1 - }, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"agu" = ( -/obj/machinery/light{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_y = 26 - }, -/turf/open/floor/plasteel/arrival{ - dir = 1 - }, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"agv" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/arrival{ - dir = 1 - }, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"agw" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/open/floor/plasteel/arrival{ - dir = 1 - }, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"agx" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHWEST)"; - icon_state = "intact"; - dir = 10 - }, -/turf/open/floor/plasteel/arrival{ - dir = 1 - }, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"agy" = ( -/turf/open/floor/plasteel/arrival{ - tag = "icon-arrival (NORTHEAST)"; - icon_state = "arrival"; - dir = 5 - }, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"agz" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/obj/machinery/light/small{ - dir = 4 - }, -/turf/open/floor/plasteel/delivery, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"agA" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"agB" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 5 - }, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"agC" = ( -/obj/structure/table/reinforced, -/obj/effect/decal/cleanable/dirt, -/obj/item/weapon/reagent_containers/food/snacks/meat/slab/human{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/reagent_containers/food/snacks/meat/slab/human, -/turf/open/floor/plasteel/delivery, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"agD" = ( -/obj/structure/table/reinforced, -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plasteel/delivery, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"agE" = ( -/obj/structure/sign/nosmoking_2, -/turf/closed/wall, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"agF" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/reagent_containers/food/condiment/saltshaker{ - pixel_x = -8; - pixel_y = 5 - }, -/obj/item/weapon/reagent_containers/food/condiment/peppermill{ - pixel_x = -8 - }, -/turf/open/floor/plasteel/delivery, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"agG" = ( -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/shuttle/syndicate) -"agH" = ( -/obj/machinery/door/airlock/external{ - name = "E.V.A. Gear Storage"; - req_access_txt = "150" - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/shuttle/syndicate) -"agI" = ( -/obj/machinery/door/airlock/external{ - req_access_txt = "150" - }, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/syndicate) -"agJ" = ( -/obj/effect/decal/cleanable/dirt, -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/turf/open/floor/plasteel/delivery, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"agK" = ( -/turf/open/floor/plasteel/arrival{ - tag = "icon-arrival (SOUTHWEST)"; - icon_state = "arrival"; - dir = 10 - }, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"agL" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHEAST)"; - icon_state = "intact"; - dir = 5 - }, -/turf/open/floor/plasteel/arrival, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"agM" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/arrival, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"agN" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/arrival, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"agO" = ( -/obj/machinery/airalarm{ - dir = 1; - icon_state = "alarm0"; - pixel_y = -22 - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/open/floor/plasteel/arrival, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"agP" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/camera{ - c_tag = "Arrivals - Port"; - dir = 1; - name = "arrivals camera" - }, -/turf/open/floor/plasteel/arrival, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"agQ" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plasteel/arrival, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"agR" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/turf/open/floor/plasteel/arrival, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"agS" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/arrival, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"agT" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/open/floor/plasteel/arrival, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"agU" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plasteel/arrival/corner{ - tag = "icon-arrivalcorner (WEST)"; - icon_state = "arrivalcorner"; - dir = 8 - }, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"agV" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"agW" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/open/floor/plasteel/neutral, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"agX" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"agY" = ( -/obj/effect/landmark{ - name = "lightsout" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"agZ" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plasteel/arrival/corner, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"aha" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/camera{ - c_tag = "Arrivals - Starboard"; - dir = 1; - name = "arrivals camera" - }, -/turf/open/floor/plasteel/arrival, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"ahb" = ( -/obj/structure/extinguisher_cabinet{ - pixel_y = -32 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/turf/open/floor/plasteel/arrival, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"ahc" = ( -/obj/machinery/airalarm{ - dir = 1; - icon_state = "alarm0"; - pixel_y = -22 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHWEST)"; - icon_state = "intact"; - dir = 9 - }, -/turf/open/floor/plasteel/arrival, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"ahd" = ( -/turf/open/floor/plasteel/arrival{ - tag = "icon-arrival (SOUTHEAST)"; - icon_state = "arrival"; - dir = 6 - }, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"ahe" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/table, -/obj/machinery/newscaster{ - pixel_x = 32 - }, -/obj/item/weapon/storage/toolbox/emergency, -/turf/open/floor/plasteel/delivery, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"ahf" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral/side{ - dir = 8; - heat_capacity = 1e+006 - }, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"ahg" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"ahh" = ( -/turf/open/floor/plasteel/red/side, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"ahi" = ( -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/plasteel/bot, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"ahj" = ( -/turf/open/floor/plasteel/white/side, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"ahk" = ( -/obj/structure/sink/kitchen{ - desc = "A sink used for washing one's hands and face. It looks rusty and home-made"; - name = "old sink"; - pixel_y = 28 - }, -/obj/effect/decal/cleanable/cobweb/cobweb2, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/red/side, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"ahl" = ( -/obj/structure/closet/crate/freezer/blood, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/cobweb, -/turf/open/floor/plasteel/bot, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"ahm" = ( -/obj/structure/sink/kitchen{ - desc = "A sink used for washing one's hands and face. It looks rusty and home-made"; - name = "old sink"; - pixel_y = 28 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/white/side, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"ahn" = ( -/obj/structure/table, -/obj/item/clothing/gloves/color/latex, -/obj/item/weapon/restraints/handcuffs, -/obj/item/clothing/mask/muzzle, -/turf/open/floor/plasteel/red/corner{ - dir = 8 - }, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"aho" = ( -/obj/machinery/suit_storage_unit/syndicate, -/turf/open/floor/plasteel/podhatch{ - tag = "icon-podhatch (SOUTHEAST)"; - icon_state = "podhatch"; - dir = 6 - }, -/area/shuttle/syndicate) -"ahp" = ( -/obj/structure/reagent_dispensers/fueltank, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/shuttle/syndicate) -"ahq" = ( -/obj/structure/chair{ - dir = 1 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/shuttle/syndicate) -"ahr" = ( -/obj/structure/rack, -/obj/item/clothing/suit/space/syndicate/black/red, -/obj/item/clothing/head/helmet/space/syndicate/black/red, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/shuttle/syndicate) -"ahs" = ( -/turf/open/space, -/turf/closed/wall/mineral/plastitanium{ - dir = 1; - icon_state = "diagonalWall3" - }, -/area/shuttle/syndicate) -"aht" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/door/airlock{ - name = "Auxiliary Storage Closet"; - req_access_txt = "32" - }, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"ahu" = ( -/turf/closed/wall, -/area/security/vacantoffice) -"ahv" = ( -/obj/structure/sign/nanotrasen, -/turf/closed/wall, -/area/security/vacantoffice) -"ahw" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall, -/area/security/vacantoffice) -"ahx" = ( -/obj/machinery/door/airlock{ - name = "Auxiliary Office"; - req_access_txt = "32" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/security/vacantoffice) -"ahy" = ( -/obj/machinery/status_display, -/turf/closed/wall, -/area/security/vacantoffice) -"ahz" = ( -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Maintenance Hatch"; - req_access_txt = "12" - }, -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"ahA" = ( -/turf/closed/wall, -/area/bridge{ - name = "Customs" - }) -"ahB" = ( -/obj/structure/sign/nanotrasen, -/turf/closed/wall, -/area/bridge{ - name = "Customs" - }) -"ahC" = ( -/obj/structure/cable/white{ - d2 = 2; - icon_state = "0-2"; - tag = "icon-0-2" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/bridge{ - name = "Customs" - }) -"ahD" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/arrival{ - tag = "icon-arrival (WEST)"; - icon_state = "arrival"; - dir = 8 - }, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"ahE" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"ahF" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/turf/open/floor/plasteel/neutral/corner, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"ahG" = ( -/obj/machinery/vending/cigarette, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/bot, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"ahH" = ( -/obj/machinery/vending/clothing, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/bot, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"ahI" = ( -/obj/machinery/vending/coffee, -/turf/open/floor/plasteel/bot, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"ahJ" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 8 - }, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"ahK" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/arrival{ - tag = "icon-arrival (EAST)"; - icon_state = "arrival"; - dir = 4 - }, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"ahL" = ( -/turf/closed/wall, -/area/security/checkpoint2) -"ahM" = ( -/obj/structure/cable/white{ - d2 = 2; - icon_state = "0-2"; - tag = "icon-0-2" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/checkpoint2) -"ahN" = ( -/obj/structure/sign/nanotrasen, -/turf/closed/wall, -/area/security/checkpoint2) -"ahO" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral/side{ - dir = 8; - heat_capacity = 1e+006 - }, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"ahP" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/delivery, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"ahQ" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Maintenance Hatch"; - req_access_txt = "12" - }, -/obj/structure/barricade/wooden, -/turf/open/floor/plasteel/warning/side, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"ahR" = ( -/obj/effect/decal/cleanable/blood/old, -/turf/open/floor/plasteel/red, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"ahS" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/white, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"ahT" = ( -/turf/open/floor/plasteel/red, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"ahU" = ( -/turf/open/floor/plasteel/white, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"ahV" = ( -/obj/machinery/newscaster{ - pixel_x = 32; - pixel_y = 32 - }, -/turf/open/floor/plasteel/delivery, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"ahW" = ( -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Maintenance Hatch"; - req_access_txt = "12" - }, -/obj/effect/decal/cleanable/dirt, -/obj/structure/barricade/wooden, -/turf/open/floor/plasteel/warning/side, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"ahX" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/delivery, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"ahY" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/vomit/old, -/turf/open/floor/plasteel/red, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"ahZ" = ( -/obj/structure/table/optable, -/obj/effect/decal/cleanable/blood/old, -/obj/effect/decal/remains/human, -/turf/open/floor/plasteel/white/side{ - tag = "icon-whitehall (WEST)"; - icon_state = "whitehall"; - dir = 8 - }, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"aia" = ( -/obj/machinery/ai_status_display, -/turf/closed/wall/mineral/plastitanium, -/area/shuttle/syndicate) -"aib" = ( -/turf/closed/wall, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"aic" = ( -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"aid" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"aie" = ( -/obj/structure/table, -/obj/item/weapon/storage/toolbox/emergency, -/obj/item/weapon/tank/internals/oxygen, -/obj/item/weapon/wrench, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"aif" = ( -/obj/structure/table/wood, -/obj/item/weapon/folder, -/obj/item/weapon/pen, -/turf/open/floor/plasteel/grimy, -/area/security/vacantoffice) -"aig" = ( -/obj/structure/table/wood, -/obj/item/weapon/paper_bin, -/obj/item/weapon/pen, -/obj/machinery/newscaster{ - pixel_y = 32 - }, -/turf/open/floor/plasteel/grimy, -/area/security/vacantoffice) -"aih" = ( -/obj/machinery/light/small{ - dir = 1 - }, -/obj/machinery/photocopier, -/turf/open/floor/plasteel/grimy, -/area/security/vacantoffice) -"aii" = ( -/obj/structure/table/wood, -/obj/item/stack/packageWrap, -/obj/item/weapon/hand_labeler, -/obj/machinery/newscaster{ - pixel_y = 32 - }, -/turf/open/floor/plasteel/grimy, -/area/security/vacantoffice) -"aij" = ( -/obj/structure/table/wood, -/obj/item/weapon/storage/briefcase, -/turf/open/floor/plasteel/grimy, -/area/security/vacantoffice) -"aik" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1 - }, -/obj/machinery/firealarm{ - pixel_y = 24 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/wood, -/area/security/vacantoffice) -"ail" = ( -/obj/machinery/light_switch{ - pixel_x = 26; - pixel_y = 26 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/wood, -/area/security/vacantoffice) -"aim" = ( -/obj/structure/table/wood, -/obj/item/device/flashlight/lamp, -/turf/open/floor/plasteel/grimy, -/area/security/vacantoffice) -"ain" = ( -/obj/structure/table/wood, -/obj/item/device/taperecorder, -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/carpet, -/area/security/vacantoffice) -"aio" = ( -/obj/structure/table/wood, -/obj/item/weapon/paper_bin, -/obj/item/weapon/pen, -/obj/structure/sign/poster{ - icon_state = "poster22_legit"; - pixel_y = 32; - tag = "icon-poster22_legit" - }, -/turf/open/floor/carpet, -/area/security/vacantoffice) -"aip" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/delivery, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"aiq" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/storage/box/ids, -/turf/open/floor/plasteel/blue/side{ - dir = 9 - }, -/area/bridge{ - name = "Customs" - }) -"air" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/photocopier, -/turf/open/floor/plasteel/blue/side{ - dir = 1 - }, -/area/bridge{ - name = "Customs" - }) -"ais" = ( -/obj/machinery/firealarm{ - pixel_y = 26 - }, -/obj/machinery/keycard_auth{ - pixel_x = 26; - pixel_y = 26 - }, -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/turf/open/floor/plasteel/blue/side{ - tag = "icon-blue (NORTHEAST)"; - icon_state = "blue"; - dir = 5 - }, -/area/bridge{ - name = "Customs" - }) -"ait" = ( -/obj/machinery/ai_status_display, -/turf/closed/wall, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"aiu" = ( -/obj/machinery/status_display, -/turf/closed/wall, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"aiv" = ( -/obj/structure/filingcabinet/security, -/obj/machinery/firealarm{ - pixel_y = 26 - }, -/turf/open/floor/plasteel/red/side{ - dir = 9 - }, -/area/security/checkpoint2) -"aiw" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/table/reinforced, -/obj/item/weapon/crowbar, -/obj/item/weapon/restraints/handcuffs, -/turf/open/floor/plasteel/red/side{ - dir = 1 - }, -/area/security/checkpoint2) -"aix" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/book/manual/wiki/security_space_law, -/obj/item/device/radio, -/obj/structure/reagent_dispensers/peppertank{ - pixel_x = 32 - }, -/turf/open/floor/plasteel/red/side{ - dir = 5 - }, -/area/security/checkpoint2) -"aiy" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHEAST)"; - icon_state = "intact"; - dir = 6 - }, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"aiz" = ( -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 1 - }, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"aiA" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 1 - }, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"aiB" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"aiC" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHWEST)"; - icon_state = "intact"; - dir = 9 - }, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"aiD" = ( -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"aiE" = ( -/obj/structure/table, -/obj/effect/decal/cleanable/dirt, -/obj/item/weapon/reagent_containers/blood/random{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/reagent_containers/blood/random, -/turf/open/floor/plasteel/bot, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"aiF" = ( -/obj/structure/closet/secure_closet/freezer/fridge, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"aiG" = ( -/obj/structure/closet/secure_closet/freezer/kitchen, -/turf/open/floor/plasteel/bot, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"aiH" = ( -/obj/structure/rack, -/obj/effect/decal/cleanable/dirt, -/obj/item/weapon/storage/box/donkpockets, -/obj/item/weapon/kitchen/knife/butcher, -/obj/item/stack/packageWrap, -/turf/open/floor/plasteel/bot, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"aiI" = ( -/obj/structure/table, -/obj/effect/decal/cleanable/dirt, -/obj/item/clothing/suit/apron/chef, -/obj/item/clothing/head/chefhat, -/turf/open/floor/plasteel/bot, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"aiJ" = ( -/obj/structure/table, -/obj/machinery/microwave{ - desc = "Cooks and boils stuff, somehow."; - pixel_x = -3; - pixel_y = 5 - }, -/obj/machinery/airalarm{ - dir = 8; - icon_state = "alarm0"; - pixel_x = 24 - }, -/turf/open/floor/plasteel/bot, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"aiK" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/bot, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"aiL" = ( -/obj/structure/table_frame, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/white/side{ - dir = 1 - }, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"aiM" = ( -/obj/structure/table, -/obj/effect/decal/cleanable/dirt, -/obj/item/weapon/retractor, -/obj/item/weapon/hemostat, -/turf/open/floor/plasteel/red/corner{ - dir = 1 - }, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"aiN" = ( -/obj/machinery/sleeper/syndie{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/shuttle/syndicate) -"aiO" = ( -/obj/item/weapon/reagent_containers/glass/bottle/epinephrine{ - pixel_x = 6; - pixel_y = 0 - }, -/obj/item/weapon/reagent_containers/glass/bottle/charcoal{ - pixel_x = -3 - }, -/obj/item/weapon/reagent_containers/glass/bottle/epinephrine{ - pixel_x = -3; - pixel_y = 8 - }, -/obj/item/weapon/reagent_containers/glass/bottle/charcoal{ - pixel_x = 6; - pixel_y = 8 - }, -/obj/item/weapon/reagent_containers/syringe/epinephrine{ - pixel_x = 3; - pixel_y = -2 - }, -/obj/item/weapon/reagent_containers/syringe/epinephrine{ - pixel_x = 4; - pixel_y = 1 - }, -/obj/item/weapon/reagent_containers/syringe/epinephrine{ - pixel_x = -2; - pixel_y = 5 - }, -/obj/item/weapon/reagent_containers/syringe/epinephrine{ - pixel_x = 2; - pixel_y = 8 - }, -/obj/structure/table/reinforced, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/shuttle/syndicate) -"aiP" = ( -/obj/structure/table/reinforced, -/obj/item/stack/medical/gauze, -/obj/item/stack/medical/bruise_pack, -/obj/item/stack/medical/ointment, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/shuttle/syndicate) -"aiQ" = ( -/obj/item/weapon/stock_parts/cell/high{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/weapon/stock_parts/cell/high, -/obj/structure/table/reinforced, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/shuttle/syndicate) -"aiR" = ( -/obj/item/weapon/screwdriver{ - pixel_y = 9 - }, -/obj/item/device/assembly/voice{ - pixel_y = 3 - }, -/obj/structure/table/reinforced, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/shuttle/syndicate) -"aiS" = ( -/obj/item/weapon/wrench, -/obj/item/device/assembly/infra, -/obj/structure/table/reinforced, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/shuttle/syndicate) -"aiT" = ( -/obj/item/device/assembly/signaler, -/obj/item/device/assembly/signaler, -/obj/item/device/assembly/prox_sensor{ - pixel_x = -8; - pixel_y = 4 - }, -/obj/item/device/assembly/prox_sensor{ - pixel_x = -8; - pixel_y = 4 - }, -/obj/structure/table/reinforced, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/shuttle/syndicate) -"aiU" = ( -/obj/item/weapon/weldingtool/largetank{ - pixel_y = 3 - }, -/obj/item/device/multitool, -/obj/structure/table/reinforced, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/shuttle/syndicate) -"aiV" = ( -/obj/structure/cable, -/obj/machinery/power/tracker, -/turf/open/floor/plasteel/airless/solarpanel, -/area/solar/auxport) -"aiW" = ( -/turf/closed/wall/r_wall, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"aiX" = ( -/turf/closed/wall, -/area/crew_quarters/bar{ - name = "Electronic Marketing Den" - }) -"aiY" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/crew_quarters/bar{ - name = "Electronic Marketing Den" - }) -"aiZ" = ( -/obj/machinery/light/small{ - dir = 8 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 8; - heat_capacity = 1e+006 - }, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"aja" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"ajb" = ( -/obj/structure/closet/firecloset, -/turf/open/floor/plating{ - icon_state = "panelscorched" - }, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"ajc" = ( -/obj/structure/chair/office/dark{ - dir = 1 - }, -/obj/structure/sign/poster{ - icon_state = "poster16_legit"; - pixel_x = -32; - pixel_y = 0; - tag = "icon-poster16_legit" - }, -/turf/open/floor/plasteel/grimy, -/area/security/vacantoffice) -"ajd" = ( -/turf/open/floor/plasteel/grimy, -/area/security/vacantoffice) -"aje" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/grimy, -/area/security/vacantoffice) -"ajf" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/grimy, -/area/security/vacantoffice) -"ajg" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHWEST)"; - icon_state = "intact"; - dir = 9 - }, -/turf/open/floor/wood, -/area/security/vacantoffice) -"ajh" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/wood, -/area/security/vacantoffice) -"aji" = ( -/obj/structure/table/wood, -/obj/item/weapon/folder/blue{ - pixel_x = 6; - pixel_y = 6 - }, -/obj/item/weapon/folder/yellow, -/obj/item/weapon/pen, -/turf/open/floor/plasteel/grimy, -/area/security/vacantoffice) -"ajj" = ( -/obj/structure/chair/office/dark{ - dir = 8 - }, -/turf/open/floor/carpet, -/area/security/vacantoffice) -"ajk" = ( -/obj/machinery/ai_status_display{ - pixel_x = 32 - }, -/obj/structure/frame/computer, -/turf/open/floor/carpet, -/area/security/vacantoffice) -"ajl" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"ajm" = ( -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/machinery/power/apc{ - dir = 8; - name = "Customs Desk APC"; - pixel_x = -26; - pixel_y = 0 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/blue/side{ - dir = 8 - }, -/area/bridge{ - name = "Customs" - }) -"ajn" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/machinery/holopad, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/bot, -/area/bridge{ - name = "Customs" - }) -"ajo" = ( -/obj/machinery/light_switch{ - pixel_x = 26; - pixel_y = 26 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/blue/side{ - tag = "icon-blue (EAST)"; - icon_state = "blue"; - dir = 4 - }, -/area/bridge{ - name = "Customs" - }) -"ajp" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass_command{ - cyclelinkeddir = 0; - name = "Customs Desk"; - req_access_txt = "19" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/bridge{ - name = "Customs" - }) -"ajq" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plasteel/blue/corner{ - tag = "icon-bluecorner (WEST)"; - icon_state = "bluecorner"; - dir = 8 - }, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"ajr" = ( -/obj/structure/table/wood, -/obj/item/device/flashlight/lamp, -/obj/machinery/camera{ - c_tag = "Arrivals - Center"; - dir = 2; - name = "arrivals camera" - }, -/turf/open/floor/plasteel/grimy, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"ajs" = ( -/obj/structure/chair/comfy/brown, -/turf/open/floor/plasteel/grimy, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"ajt" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-18" - }, -/turf/open/floor/plasteel/grimy, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"aju" = ( -/obj/structure/chair/comfy/brown, -/obj/effect/landmark/start{ - name = "Assistant" - }, -/turf/open/floor/plasteel/grimy, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"ajv" = ( -/obj/structure/table/wood, -/obj/item/weapon/storage/fancy/donut_box, -/turf/open/floor/plasteel/grimy, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"ajw" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/plasteel/red/corner, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"ajx" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass_security{ - name = "Security Checkpoint"; - req_access_txt = "63" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/security/checkpoint2) -"ajy" = ( -/obj/machinery/light_switch{ - pixel_x = -26; - pixel_y = 26 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/red/side{ - dir = 8 - }, -/area/security/checkpoint2) -"ajz" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/machinery/holopad, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/bot, -/area/security/checkpoint2) -"ajA" = ( -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/machinery/power/apc{ - dir = 4; - name = "Security Checkpoint APC"; - pixel_x = 26; - pixel_y = 0 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/red/side{ - dir = 4 - }, -/area/security/checkpoint2) -"ajB" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"ajC" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"ajD" = ( -/obj/structure/girder, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"ajE" = ( -/obj/structure/closet, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 2; - name = "2maintenance loot spawner" - }, -/turf/open/floor/plasteel/neutral/side, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"ajF" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/rack, -/obj/item/weapon/crowbar/red, -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plasteel/neutral/side, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"ajG" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/closet/crate{ - icon_state = "crateopen"; - opened = 1 - }, -/obj/item/device/flashlight, -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plasteel/neutral/side{ - dir = 6 - }, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"ajH" = ( -/obj/structure/sign/poster, -/turf/closed/wall, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"ajI" = ( -/obj/structure/bed/roller, -/obj/machinery/iv_drip, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/shuttle/syndicate) -"ajJ" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/structure/lattice/catwalk, -/turf/open/space, -/area/solar/auxport) -"ajK" = ( -/obj/structure/reflector/single, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"ajL" = ( -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"ajM" = ( -/obj/structure/reflector/box{ - tag = "icon-reflector_box (EAST)"; - icon_state = "reflector_box"; - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"ajN" = ( -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"ajO" = ( -/obj/machinery/camera{ - c_tag = "Atmospherics - Reflector Box"; - name = "atmospherics camera" - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"ajP" = ( -/obj/structure/reflector/single{ - tag = "icon-reflector (WEST)"; - icon_state = "reflector"; - dir = 8 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"ajQ" = ( -/obj/structure/table/wood, -/obj/structure/sign/barsign{ - pixel_y = 32 - }, -/obj/structure/sign/poster{ - pixel_x = -32 - }, -/obj/item/weapon/wirerod, -/obj/item/weapon/wrench, -/obj/item/clothing/under/waiter, -/obj/item/clothing/tie/waistcoat, -/turf/open/floor/plasteel/black, -/area/crew_quarters/bar{ - name = "Electronic Marketing Den" - }) -"ajR" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/bar{ - name = "Electronic Marketing Den" - }) -"ajS" = ( -/obj/structure/table/wood, -/obj/item/weapon/storage/box/matches{ - pixel_x = -3; - pixel_y = 5 - }, -/turf/open/floor/plasteel/black, -/area/crew_quarters/bar{ - name = "Electronic Marketing Den" - }) -"ajT" = ( -/obj/machinery/status_display{ - pixel_y = 32 - }, -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/wood, -/area/crew_quarters/bar{ - name = "Electronic Marketing Den" - }) -"ajU" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/turf/open/floor/wood, -/area/crew_quarters/bar{ - name = "Electronic Marketing Den" - }) -"ajV" = ( -/obj/structure/table/wood, -/obj/item/weapon/paper_bin, -/obj/item/weapon/pen, -/turf/open/floor/wood, -/area/crew_quarters/bar{ - name = "Electronic Marketing Den" - }) -"ajW" = ( -/obj/structure/table/wood, -/obj/item/weapon/storage/briefcase, -/obj/item/device/taperecorder, -/turf/open/floor/wood{ - icon_state = "wood-broken4" - }, -/area/crew_quarters/bar{ - name = "Electronic Marketing Den" - }) -"ajX" = ( -/obj/structure/table/wood, -/obj/item/weapon/electronics/firelock, -/obj/item/weapon/electronics/airlock, -/turf/open/floor/wood, -/area/crew_quarters/bar{ - name = "Electronic Marketing Den" - }) -"ajY" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/turf/open/floor/wood, -/area/crew_quarters/bar{ - name = "Electronic Marketing Den" - }) -"ajZ" = ( -/obj/machinery/status_display{ - pixel_y = 32 - }, -/obj/machinery/light/small{ - dir = 1 - }, -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/turf/open/floor/wood, -/area/crew_quarters/bar{ - name = "Electronic Marketing Den" - }) -"aka" = ( -/obj/structure/table/wood, -/obj/item/weapon/clipboard, -/obj/item/weapon/electronics/apc, -/turf/open/floor/wood, -/area/crew_quarters/bar{ - name = "Electronic Marketing Den" - }) -"akb" = ( -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 8; - heat_capacity = 1e+006 - }, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"akc" = ( -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/plasteel/neutral, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"akd" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible{ - tag = "icon-connector_map (WEST)"; - icon_state = "connector_map"; - dir = 8 - }, -/obj/machinery/portable_atmospherics/canister/air, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"ake" = ( -/obj/structure/extinguisher_cabinet{ - pixel_x = -26 - }, -/turf/open/floor/plasteel/grimy, -/area/security/vacantoffice) -"akf" = ( -/obj/structure/chair/office/dark{ - dir = 4 - }, -/turf/open/floor/carpet, -/area/security/vacantoffice) -"akg" = ( -/obj/structure/table/wood, -/obj/item/weapon/folder, -/obj/item/weapon/pen, -/turf/open/floor/carpet, -/area/security/vacantoffice) -"akh" = ( -/turf/open/floor/wood, -/area/security/vacantoffice) -"aki" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/mob/living/simple_animal/cockroach, -/turf/open/floor/wood, -/area/security/vacantoffice) -"akj" = ( -/obj/structure/table/wood, -/obj/item/device/paicard, -/turf/open/floor/plasteel/grimy, -/area/security/vacantoffice) -"akk" = ( -/turf/open/floor/carpet, -/area/security/vacantoffice) -"akl" = ( -/obj/machinery/status_display{ - pixel_x = 32 - }, -/obj/structure/frame/computer, -/turf/open/floor/carpet, -/area/security/vacantoffice) -"akm" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"akn" = ( -/obj/machinery/computer/crew, -/obj/machinery/ai_status_display{ - pixel_x = -32 - }, -/turf/open/floor/plasteel/blue/side{ - dir = 10 - }, -/area/bridge{ - name = "Customs" - }) -"ako" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/neutral, -/area/bridge{ - name = "Customs" - }) -"akp" = ( -/obj/structure/table/reinforced, -/obj/item/stack/packageWrap, -/obj/item/weapon/hand_labeler, -/turf/open/floor/plasteel/blue/side{ - tag = "icon-blue (EAST)"; - icon_state = "blue"; - dir = 4 - }, -/area/bridge{ - name = "Customs" - }) -"akq" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/structure/cable/white{ - d2 = 2; - icon_state = "0-2"; - tag = "icon-0-2" - }, -/turf/open/floor/plating, -/area/bridge{ - name = "Customs" - }) -"akr" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/blue/corner{ - tag = "icon-bluecorner (WEST)"; - icon_state = "bluecorner"; - dir = 8 - }, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"aks" = ( -/obj/structure/chair/comfy/brown{ - icon_state = "comfychair"; - dir = 4 - }, -/turf/open/floor/plasteel/grimy, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"akt" = ( -/turf/open/floor/carpet, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"aku" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/carpet, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"akv" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/carpet, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"akw" = ( -/obj/structure/chair/comfy/brown{ - icon_state = "comfychair"; - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/grimy, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"akx" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"aky" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plasteel/red/corner, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"akz" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/structure/cable/white{ - d2 = 2; - icon_state = "0-2"; - tag = "icon-0-2" - }, -/turf/open/floor/plating, -/area/security/checkpoint2) -"akA" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/paper_bin, -/obj/item/weapon/pen, -/turf/open/floor/plasteel/red/side{ - dir = 8 - }, -/area/security/checkpoint2) -"akB" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/neutral, -/area/security/checkpoint2) -"akC" = ( -/obj/machinery/computer/prisoner, -/obj/machinery/status_display{ - pixel_x = 32 - }, -/obj/machinery/camera{ - c_tag = "Security Post - Arrivals"; - dir = 8; - name = "security camera" - }, -/turf/open/floor/plasteel/red/side{ - dir = 6 - }, -/area/security/checkpoint2) -"akD" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral/side{ - dir = 8 - }, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"akE" = ( -/obj/machinery/computer/arcade, -/obj/effect/decal/cleanable/cobweb, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"akF" = ( -/obj/structure/cable/white{ - tag = "icon-0-2"; - icon_state = "0-2" - }, -/obj/machinery/power/apc{ - cell_type = 5000; - dir = 1; - name = "Fore Starboard Maintenance APC"; - pixel_x = 0; - pixel_y = 25 - }, -/obj/effect/decal/cleanable/dirt, -/obj/structure/chair/stool/bar, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"akG" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"akH" = ( -/obj/structure/table/wood, -/obj/item/weapon/paper_bin, -/obj/item/weapon/pen, -/turf/open/floor/plasteel/redyellow, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"akI" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/redyellow, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"akJ" = ( -/obj/structure/table/wood, -/obj/item/clothing/suit/syndicatefake, -/obj/item/clothing/head/syndicatefake, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/redyellow, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"akK" = ( -/turf/open/floor/plasteel/podhatch{ - dir = 9 - }, -/area/shuttle/syndicate) -"akL" = ( -/turf/open/floor/plasteel/podhatch{ - tag = "icon-podhatch (NORTH)"; - icon_state = "podhatch"; - dir = 1 - }, -/area/shuttle/syndicate) -"akM" = ( -/obj/machinery/door/airlock/hatch{ - req_access_txt = "150" - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/shuttle/syndicate) -"akN" = ( -/turf/open/floor/plasteel/podhatch{ - dir = 5 - }, -/area/shuttle/syndicate) -"akO" = ( -/obj/structure/closet/syndicate/personal, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/shuttle/syndicate) -"akP" = ( -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"akQ" = ( -/obj/structure/reflector/double, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"akR" = ( -/obj/structure/reflector/double{ - tag = "icon-reflector_double (NORTH)"; - icon_state = "reflector_double"; - dir = 1 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"akS" = ( -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/bar{ - name = "Electronic Marketing Den" - }) -"akT" = ( -/turf/open/floor/plasteel/black, -/area/crew_quarters/bar{ - name = "Electronic Marketing Den" - }) -"akU" = ( -/obj/structure/table/wood, -/obj/item/clothing/neck/tie/red, -/obj/item/clothing/head/that, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/bar{ - name = "Electronic Marketing Den" - }) -"akV" = ( -/turf/open/floor/wood{ - icon_state = "wood-broken7" - }, -/area/crew_quarters/bar{ - name = "Electronic Marketing Den" - }) -"akW" = ( -/turf/open/floor/wood, -/area/crew_quarters/bar{ - name = "Electronic Marketing Den" - }) -"akX" = ( -/obj/structure/chair/comfy/brown{ - icon_state = "comfychair"; - dir = 4 - }, -/turf/open/floor/wood{ - tag = "icon-wood-broken3"; - icon_state = "wood-broken3" - }, -/area/crew_quarters/bar{ - name = "Electronic Marketing Den" - }) -"akY" = ( -/obj/structure/table/wood, -/obj/item/weapon/poster/contraband{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/poster/contraband{ - pixel_x = -3; - pixel_y = -3 - }, -/obj/item/weapon/poster/contraband, -/turf/open/floor/wood, -/area/crew_quarters/bar{ - name = "Electronic Marketing Den" - }) -"akZ" = ( -/obj/structure/chair/comfy/brown{ - icon_state = "comfychair"; - dir = 8 - }, -/turf/open/floor/wood{ - icon_state = "wood-broken5" - }, -/area/crew_quarters/bar{ - name = "Electronic Marketing Den" - }) -"ala" = ( -/turf/open/floor/wood{ - icon_state = "wood-broken" - }, -/area/crew_quarters/bar{ - name = "Electronic Marketing Den" - }) -"alb" = ( -/obj/structure/frame/computer, -/obj/item/stack/cable_coil/white, -/turf/open/floor/wood, -/area/crew_quarters/bar{ - name = "Electronic Marketing Den" - }) -"alc" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/plasteel/neutral, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"ald" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible{ - tag = "icon-connector_map (WEST)"; - icon_state = "connector_map"; - dir = 8 - }, -/obj/machinery/portable_atmospherics/canister/oxygen, -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"ale" = ( -/obj/machinery/airalarm{ - dir = 4; - locked = 0; - pixel_x = -23; - pixel_y = 0 - }, -/turf/open/floor/plasteel/grimy, -/area/security/vacantoffice) -"alf" = ( -/obj/structure/table/wood, -/obj/item/device/flashlight/lamp, -/turf/open/floor/carpet, -/area/security/vacantoffice) -"alg" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/wood, -/area/security/vacantoffice) -"alh" = ( -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/wood, -/area/security/vacantoffice) -"ali" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/wood, -/area/security/vacantoffice) -"alj" = ( -/obj/machinery/light_switch{ - pixel_x = 26; - pixel_y = -26 - }, -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/wood, -/area/security/vacantoffice) -"alk" = ( -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Office Maintenance"; - req_access_txt = "32" - }, -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/security/vacantoffice) -"all" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plasteel/delivery, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"alm" = ( -/obj/machinery/computer/card, -/obj/machinery/light{ - dir = 8 - }, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = -26; - pixel_y = 0 - }, -/obj/machinery/camera{ - c_tag = "Arrivals Customs"; - dir = 4; - name = "customs camera" - }, -/turf/open/floor/plasteel/blue, -/area/bridge{ - name = "Customs" - }) -"aln" = ( -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/chair/office/dark{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/bridge{ - name = "Customs" - }) -"alo" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/table/reinforced, -/obj/item/weapon/folder/blue, -/obj/item/weapon/pen, -/turf/open/floor/plasteel/blue/side{ - tag = "icon-blue (EAST)"; - icon_state = "blue"; - dir = 4 - }, -/area/bridge{ - name = "Customs" - }) -"alp" = ( -/obj/machinery/door/firedoor, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/machinery/door/window/brigdoor/southright{ - dir = 8; - name = "Customs Desk"; - req_access_txt = "19" - }, -/turf/open/floor/plasteel/warning/side, -/area/bridge{ - name = "Customs" - }) -"alq" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/delivery, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"alr" = ( -/turf/open/floor/plasteel/grimy, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"als" = ( -/obj/machinery/holopad, -/turf/open/floor/carpet, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"alt" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/delivery, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"alu" = ( -/obj/machinery/door/firedoor, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/machinery/door/window/brigdoor/southright{ - dir = 4; - name = "Security Desk"; - req_access_txt = "63" - }, -/turf/open/floor/plasteel/warning/side, -/area/security/checkpoint2) -"alv" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/table/reinforced, -/obj/item/weapon/folder/red, -/obj/item/weapon/pen, -/turf/open/floor/plasteel/red/side{ - dir = 8 - }, -/area/security/checkpoint2) -"alw" = ( -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/chair/office/dark{ - dir = 8 - }, -/turf/open/floor/plasteel/neutral, -/area/security/checkpoint2) -"alx" = ( -/obj/machinery/computer/security, -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = 26; - pixel_y = 0 - }, -/turf/open/floor/plasteel/red, -/area/security/checkpoint2) -"aly" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral/side{ - dir = 8 - }, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"alz" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/effect/landmark{ - name = "blobstart" - }, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"alA" = ( -/obj/structure/table/wood, -/obj/item/toy/carpplushie, -/obj/effect/decal/cleanable/cobweb, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"alB" = ( -/obj/machinery/computer/arcade, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"alC" = ( -/obj/machinery/computer/arcade, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"alD" = ( -/obj/structure/table/wood, -/obj/item/weapon/coin/antagtoken, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"alE" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/chair/stool/bar, -/turf/open/floor/plasteel/black, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"alF" = ( -/obj/structure/table/wood, -/obj/item/weapon/clipboard, -/obj/item/weapon/folder, -/obj/item/toy/dummy, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/redyellow, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"alG" = ( -/obj/structure/chair/office/dark{ - dir = 8 - }, -/turf/open/floor/plasteel/redyellow, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"alH" = ( -/obj/structure/table/wood, -/obj/item/weapon/clipboard, -/obj/item/toy/syndicateballoon, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/redyellow, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"alI" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/maintenance/disposal) -"alJ" = ( -/turf/closed/wall, -/area/maintenance/disposal) -"alK" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/reagent_containers/glass/beaker/large, -/obj/item/weapon/reagent_containers/glass/beaker, -/obj/item/weapon/reagent_containers/dropper, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/shuttle/syndicate) -"alL" = ( -/turf/open/floor/plasteel/podhatch{ - dir = 10 - }, -/area/shuttle/syndicate) -"alM" = ( -/turf/open/floor/plasteel/podhatch{ - tag = "icon-podhatch (SOUTHEAST)"; - icon_state = "podhatch"; - dir = 6 - }, -/area/shuttle/syndicate) -"alN" = ( -/obj/structure/closet/syndicate/nuclear, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/shuttle/syndicate) -"alO" = ( -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/obj/machinery/power/solar{ - id = "foreport"; - name = "Fore-Port Solar Array" - }, -/turf/open/floor/plasteel/airless/solarpanel, -/area/solar/auxport) -"alP" = ( -/obj/structure/reflector/double{ - tag = "icon-reflector_double (EAST)"; - icon_state = "reflector_double"; - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"alQ" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 2; - on = 1 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"alR" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 2; - on = 1; - scrub_N2O = 1; - scrub_Toxins = 1 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"alS" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/turf/open/floor/plasteel/black, -/area/crew_quarters/bar{ - name = "Electronic Marketing Den" - }) -"alT" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/bar{ - name = "Electronic Marketing Den" - }) -"alU" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/crew_quarters/bar{ - name = "Electronic Marketing Den" - }) -"alV" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/wood, -/area/crew_quarters/bar{ - name = "Electronic Marketing Den" - }) -"alW" = ( -/obj/structure/chair/comfy/black{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/wood, -/area/crew_quarters/bar{ - name = "Electronic Marketing Den" - }) -"alX" = ( -/obj/structure/table/wood, -/obj/item/weapon/clipboard, -/obj/item/weapon/electronics/airalarm, -/obj/item/weapon/electronics/airlock, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/wood, -/area/crew_quarters/bar{ - name = "Electronic Marketing Den" - }) -"alY" = ( -/obj/structure/chair/comfy/black{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/wood, -/area/crew_quarters/bar{ - name = "Electronic Marketing Den" - }) -"alZ" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/wood, -/area/crew_quarters/bar{ - name = "Electronic Marketing Den" - }) -"ama" = ( -/obj/structure/chair/office/dark{ - dir = 4 - }, -/turf/open/floor/wood, -/area/crew_quarters/bar{ - name = "Electronic Marketing Den" - }) -"amb" = ( -/obj/structure/frame/computer, -/obj/item/weapon/circuitboard/computer/secure_data, -/turf/open/floor/wood{ - tag = "icon-wood-broken2"; - icon_state = "wood-broken2" - }, -/area/crew_quarters/bar{ - name = "Electronic Marketing Den" - }) -"amc" = ( -/obj/machinery/light/small{ - dir = 8 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"amd" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating{ - icon_state = "platingdmg3" - }, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"ame" = ( -/obj/structure/reagent_dispensers/watertank, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"amf" = ( -/obj/structure/chair/office/dark, -/turf/open/floor/plasteel/grimy, -/area/security/vacantoffice) -"amg" = ( -/mob/living/simple_animal/cockroach, -/turf/open/floor/plasteel/grimy, -/area/security/vacantoffice) -"amh" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/turf/open/floor/wood, -/area/security/vacantoffice) -"ami" = ( -/obj/structure/table/wood, -/obj/item/device/camera_film{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/device/camera_film, -/turf/open/floor/wood, -/area/security/vacantoffice) -"amj" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"amk" = ( -/obj/machinery/computer/med_data, -/obj/machinery/status_display{ - pixel_x = -32 - }, -/turf/open/floor/plasteel/blue/side{ - dir = 9 - }, -/area/bridge{ - name = "Customs" - }) -"aml" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 2; - on = 1 - }, -/turf/open/floor/plasteel/neutral, -/area/bridge{ - name = "Customs" - }) -"amm" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/paper_bin, -/obj/item/weapon/pen, -/turf/open/floor/plasteel/blue/side{ - tag = "icon-blue (EAST)"; - icon_state = "blue"; - dir = 4 - }, -/area/bridge{ - name = "Customs" - }) -"amn" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/structure/cable/white, -/turf/open/floor/plating, -/area/bridge{ - name = "Customs" - }) -"amo" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/bot, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"amp" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/plasteel/neutral, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"amq" = ( -/obj/structure/chair/comfy/brown{ - icon_state = "comfychair"; - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/grimy, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"amr" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/carpet, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"ams" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/carpet, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"amt" = ( -/obj/structure/chair/comfy/brown{ - icon_state = "comfychair"; - dir = 8 - }, -/turf/open/floor/plasteel/grimy, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"amu" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/structure/cable/white, -/turf/open/floor/plating, -/area/security/checkpoint2) -"amv" = ( -/obj/structure/table/reinforced, -/obj/machinery/recharger, -/turf/open/floor/plasteel/red/side{ - dir = 8 - }, -/area/security/checkpoint2) -"amw" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 2; - on = 1 - }, -/turf/open/floor/plasteel/neutral, -/area/security/checkpoint2) -"amx" = ( -/obj/machinery/computer/secure_data, -/obj/machinery/ai_status_display{ - pixel_x = 32 - }, -/turf/open/floor/plasteel/red/side{ - dir = 5 - }, -/area/security/checkpoint2) -"amy" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"amz" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1 - }, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"amA" = ( -/obj/structure/chair/stool/bar, -/turf/open/floor/plasteel/black, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"amB" = ( -/obj/structure/chair/stool/bar, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/black, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"amC" = ( -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"amD" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/black, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"amE" = ( -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"amF" = ( -/obj/structure/table/wood, -/obj/effect/decal/cleanable/dirt, -/obj/item/weapon/coin/iron{ - icon_state = "coin_bananium_heads"; - name = "arcade coin"; - pixel_x = 6 - }, -/obj/item/weapon/coin/iron{ - icon_state = "coin_bananium_heads"; - name = "arcade coin"; - pixel_x = -6 - }, -/obj/item/weapon/coin/iron{ - icon_state = "coin_bananium_heads"; - name = "arcade coin"; - pixel_y = 6 - }, -/turf/open/floor/plasteel/redyellow, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"amG" = ( -/obj/structure/table/wood, -/obj/item/weapon/folder/blue, -/obj/item/clothing/head/collectable/HoP, -/turf/open/floor/plasteel/redyellow, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"amH" = ( -/obj/effect/decal/cleanable/cobweb, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/maintenance/disposal) -"amI" = ( -/obj/machinery/light/small{ - dir = 8 - }, -/obj/machinery/conveyor{ - dir = 5; - id = "garbage"; - verted = -1 - }, -/turf/open/floor/plating/warnplate/end{ - tag = "icon-plating_warn_end (WEST)"; - icon_state = "plating_warn_end"; - dir = 8 - }, -/area/maintenance/disposal) -"amJ" = ( -/obj/machinery/conveyor{ - dir = 8; - id = "garbage" - }, -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/obj/structure/sign/vacuum{ - pixel_y = 32 - }, -/turf/open/floor/plating/warnplate/side{ - tag = "icon-plating_warn_side (WEST)"; - icon_state = "plating_warn_side"; - dir = 8 - }, -/area/maintenance/disposal) -"amK" = ( -/obj/machinery/conveyor{ - dir = 8; - id = "garbage" - }, -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/turf/open/floor/plating/warnplate/side{ - tag = "icon-plating_warn_side (WEST)"; - icon_state = "plating_warn_side"; - dir = 8 - }, -/area/maintenance/disposal) -"amL" = ( -/obj/machinery/mass_driver{ - dir = 4; - id = "trash" - }, -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/plating/warnplate/side{ - tag = "icon-plating_warn_side (WEST)"; - icon_state = "plating_warn_side"; - dir = 8 - }, -/area/maintenance/disposal) -"amM" = ( -/obj/machinery/door/poddoor{ - id = "trash"; - name = "Disposals Launch Seal" - }, -/obj/structure/fans/tiny, -/turf/open/floor/plasteel/warning/side, -/area/maintenance/disposal) -"amN" = ( -/obj/structure/window/reinforced{ - dir = 1 - }, -/obj/item/bodypart/r_arm/robot, -/obj/item/bodypart/l_arm/robot, -/obj/structure/table/reinforced, -/turf/open/floor/plasteel/vault, -/area/shuttle/syndicate) -"amO" = ( -/obj/machinery/door/window{ - dir = 1; - name = "Surgery"; - req_access_txt = "150" - }, -/turf/open/floor/plasteel/vault, -/area/shuttle/syndicate) -"amP" = ( -/obj/structure/window/reinforced{ - dir = 1 - }, -/turf/open/floor/plasteel/vault, -/area/shuttle/syndicate) -"amQ" = ( -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/item/weapon/storage/firstaid/regular{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/storage/firstaid/brute, -/obj/item/weapon/storage/firstaid/regular{ - pixel_x = -3; - pixel_y = -3 - }, -/obj/structure/table/reinforced, -/turf/open/floor/plasteel/vault, -/area/shuttle/syndicate) -"amR" = ( -/obj/item/weapon/storage/firstaid/regular{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/storage/firstaid/fire, -/obj/item/weapon/storage/firstaid/regular{ - pixel_x = -3; - pixel_y = -3 - }, -/obj/structure/table/reinforced, -/turf/open/floor/plasteel/vault, -/area/shuttle/syndicate) -"amS" = ( -/obj/item/device/sbeacondrop/bomb{ - pixel_y = 5 - }, -/obj/item/device/sbeacondrop/bomb, -/obj/structure/table/reinforced, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/shuttle/syndicate) -"amT" = ( -/obj/item/weapon/grenade/syndieminibomb{ - pixel_x = 4; - pixel_y = 2 - }, -/obj/item/weapon/grenade/syndieminibomb{ - pixel_x = -1 - }, -/obj/structure/table/reinforced, -/obj/structure/window/reinforced{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/shuttle/syndicate) -"amU" = ( -/obj/machinery/door/window{ - dir = 1; - name = "Technological Storage"; - req_access_txt = "150" - }, -/turf/open/floor/plasteel/vault, -/area/shuttle/syndicate) -"amV" = ( -/obj/structure/window/reinforced{ - dir = 1 - }, -/obj/structure/table/reinforced, -/obj/item/device/aicard, -/turf/open/floor/plasteel/vault, -/area/shuttle/syndicate) -"amW" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/structure/lattice/catwalk, -/turf/open/space, -/area/solar/auxport) -"amX" = ( -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/structure/lattice/catwalk, -/turf/open/space, -/area/solar/auxport) -"amY" = ( -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/structure/lattice/catwalk, -/turf/open/space, -/area/solar/auxport) -"amZ" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/structure/lattice/catwalk, -/turf/open/space, -/area/solar/auxport) -"ana" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"anb" = ( -/obj/structure/reflector/box, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"anc" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"and" = ( -/obj/structure/table/wood, -/obj/item/weapon/circuitboard/computer/arcade, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/bar{ - name = "Electronic Marketing Den" - }) -"ane" = ( -/obj/structure/table/wood, -/obj/item/weapon/electronics/airalarm, -/obj/item/weapon/circuitboard/computer/med_data, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/bar{ - name = "Electronic Marketing Den" - }) -"anf" = ( -/obj/structure/chair/stool/bar, -/turf/open/floor/wood, -/area/crew_quarters/bar{ - name = "Electronic Marketing Den" - }) -"ang" = ( -/obj/structure/chair/comfy/brown{ - icon_state = "comfychair"; - dir = 4 - }, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/turf/open/floor/wood, -/area/crew_quarters/bar{ - name = "Electronic Marketing Den" - }) -"anh" = ( -/obj/structure/table/wood, -/obj/item/weapon/folder/red, -/obj/item/weapon/pen, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/wood, -/area/crew_quarters/bar{ - name = "Electronic Marketing Den" - }) -"ani" = ( -/obj/structure/chair/comfy/brown{ - icon_state = "comfychair"; - dir = 8 - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/wood, -/area/crew_quarters/bar{ - name = "Electronic Marketing Den" - }) -"anj" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/wood, -/area/crew_quarters/bar{ - name = "Electronic Marketing Den" - }) -"ank" = ( -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/turf/open/floor/wood{ - icon_state = "wood-broken4" - }, -/area/crew_quarters/bar{ - name = "Electronic Marketing Den" - }) -"anl" = ( -/obj/structure/frame/computer, -/obj/machinery/status_display{ - pixel_x = 32 - }, -/turf/open/floor/wood, -/area/crew_quarters/bar{ - name = "Electronic Marketing Den" - }) -"anm" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral/side, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"ann" = ( -/obj/structure/reagent_dispensers/fueltank, -/turf/open/floor/plasteel/neutral/side{ - dir = 6; - initial_gas_mix = "o2=22;n2=82;TEMP=293.15"; - tag = "icon-neutral (SOUTHEAST)" - }, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"ano" = ( -/obj/structure/table/wood, -/obj/item/weapon/phone{ - desc = "Supposedly a direct line to NanoTrasen Central Command. It's not even plugged in."; - pixel_x = -3; - pixel_y = 3 - }, -/obj/machinery/newscaster{ - pixel_x = 0; - pixel_y = -32 - }, -/turf/open/floor/plasteel/grimy, -/area/security/vacantoffice) -"anp" = ( -/obj/structure/filingcabinet/chestdrawer, -/obj/machinery/light/small, -/obj/structure/sign/poster{ - icon_state = "poster17_legit"; - pixel_x = 0; - pixel_y = -32; - tag = "icon-poster17_legit" - }, -/turf/open/floor/plasteel/grimy, -/area/security/vacantoffice) -"anq" = ( -/obj/structure/table/wood, -/obj/item/weapon/paper_bin, -/obj/item/weapon/pen, -/obj/machinery/newscaster{ - pixel_y = -32 - }, -/turf/open/floor/plasteel/grimy, -/area/security/vacantoffice) -"anr" = ( -/obj/structure/table/wood, -/obj/item/weapon/clipboard, -/obj/machinery/camera{ - c_tag = "Vacant Office"; - dir = 1; - name = "security camera" - }, -/turf/open/floor/plasteel/grimy, -/area/security/vacantoffice) -"ans" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/turf/open/floor/wood, -/area/security/vacantoffice) -"ant" = ( -/obj/machinery/power/apc{ - dir = 2; - name = "Auxiliary Office APC"; - pixel_y = -26 - }, -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white, -/turf/open/floor/wood, -/area/security/vacantoffice) -"anu" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1 - }, -/turf/open/floor/wood, -/area/security/vacantoffice) -"anv" = ( -/obj/structure/table/wood, -/obj/item/device/camera, -/obj/machinery/light/small, -/obj/structure/sign/nanotrasen{ - pixel_y = -32 - }, -/turf/open/floor/wood, -/area/security/vacantoffice) -"anw" = ( -/obj/structure/table/wood, -/obj/item/device/flashlight/lamp, -/obj/structure/sign/nosmoking_2{ - pixel_x = 32 - }, -/turf/open/floor/wood, -/area/security/vacantoffice) -"anx" = ( -/obj/structure/closet/secure_closet{ - anchored = 1; - name = "Contraband Locker"; - req_access_txt = "19" - }, -/obj/machinery/airalarm{ - dir = 1; - icon_state = "alarm0"; - pixel_y = -22 - }, -/obj/item/weapon/storage/secure/briefcase, -/turf/open/floor/plasteel/blue/side{ - dir = 10 - }, -/area/bridge{ - name = "Customs" - }) -"any" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/blue/side, -/area/bridge{ - name = "Customs" - }) -"anz" = ( -/obj/structure/filingcabinet/medical, -/obj/machinery/newscaster{ - pixel_x = 32 - }, -/turf/open/floor/plasteel/blue/side{ - tag = "icon-blue (SOUTHEAST)"; - icon_state = "blue"; - dir = 6 - }, -/area/bridge{ - name = "Customs" - }) -"anA" = ( -/obj/structure/table/wood, -/obj/item/weapon/reagent_containers/food/snacks/chips, -/turf/open/floor/plasteel/grimy, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"anB" = ( -/obj/structure/chair/comfy/brown{ - buildstackamount = 0; - dir = 1 - }, -/obj/effect/landmark/start{ - name = "Assistant" - }, -/obj/machinery/airalarm{ - dir = 1; - icon_state = "alarm0"; - pixel_y = -22 - }, -/turf/open/floor/plasteel/grimy, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"anC" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/obj/machinery/light, -/obj/machinery/newscaster{ - pixel_y = -32 - }, -/turf/open/floor/plasteel/grimy, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"anD" = ( -/obj/structure/chair/comfy/brown{ - buildstackamount = 0; - dir = 1 - }, -/turf/open/floor/plasteel/grimy, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"anE" = ( -/obj/structure/table/wood, -/obj/item/weapon/folder, -/obj/item/weapon/pen, -/turf/open/floor/plasteel/grimy, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"anF" = ( -/obj/structure/closet/wardrobe/red, -/obj/machinery/newscaster{ - pixel_x = -32 - }, -/turf/open/floor/plasteel/red/side{ - dir = 10 - }, -/area/security/checkpoint2) -"anG" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/red/side, -/area/security/checkpoint2) -"anH" = ( -/obj/structure/closet/secure_closet/security, -/obj/machinery/airalarm{ - dir = 8; - icon_state = "alarm0"; - pixel_x = 24 - }, -/turf/open/floor/plasteel/red/side{ - dir = 6 - }, -/area/security/checkpoint2) -"anI" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"anJ" = ( -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/delivery, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"anK" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"anL" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"anM" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"anN" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"anO" = ( -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"anP" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"anQ" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 2; - on = 1 - }, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (WEST)"; - icon_state = "brown"; - dir = 8 - }, -/area/maintenance/disposal) -"anR" = ( -/obj/machinery/conveyor{ - dir = 2; - id = "garbage" - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating/warnplate/side, -/area/maintenance/disposal) -"anS" = ( -/obj/machinery/button/door{ - id = "Disposal Exit"; - name = "Disposal Vent Control"; - pixel_x = -25; - pixel_y = 4; - req_access_txt = "12" - }, -/obj/machinery/button/massdriver{ - id = "trash"; - name = "Trash Ejector Control"; - pixel_x = -26; - pixel_y = -6 - }, -/obj/structure/chair/stool, -/obj/machinery/light/small{ - dir = 8 - }, -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/delivery, -/area/maintenance/disposal) -"anT" = ( -/obj/machinery/conveyor_switch/oneway{ - convdir = -1; - id = "garbage"; - name = "disposal coveyor" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/delivery, -/area/maintenance/disposal) -"anU" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/delivery, -/area/maintenance/disposal) -"anV" = ( -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/oil, -/turf/open/floor/plasteel/bot, -/area/maintenance/disposal) -"anW" = ( -/obj/item/weapon/surgicaldrill, -/obj/item/weapon/circular_saw, -/obj/structure/table/reinforced, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/shuttle/syndicate) -"anX" = ( -/obj/structure/sink{ - dir = 4; - icon_state = "sink"; - pixel_x = 11; - pixel_y = 0 - }, -/obj/structure/mirror{ - pixel_x = 30 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/shuttle/syndicate) -"anY" = ( -/obj/machinery/nuclearbomb/syndicate, -/obj/machinery/door/window{ - dir = 1; - name = "Theatre Stage"; - req_access_txt = "0" - }, -/turf/open/floor/plasteel/circuit/rcircuit, -/area/shuttle/syndicate) -"anZ" = ( -/obj/structure/cable, -/obj/machinery/power/solar{ - id = "foreport"; - name = "Fore-Port Solar Array" - }, -/turf/open/floor/plasteel/airless/solarpanel, -/area/solar/auxport) -"aoa" = ( -/obj/structure/reflector/single{ - tag = "icon-reflector (NORTH)"; - icon_state = "reflector"; - dir = 1 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"aob" = ( -/obj/structure/table/wood, -/obj/machinery/airalarm{ - dir = 4; - locked = 0; - pixel_x = -23; - pixel_y = 0 - }, -/obj/machinery/light_switch{ - pixel_y = -26 - }, -/obj/item/stack/cable_coil/white, -/obj/item/stack/cable_coil/white, -/obj/item/weapon/stock_parts/console_screen, -/obj/item/weapon/stock_parts/console_screen, -/obj/item/weapon/circuitboard/machine/microwave, -/turf/open/floor/plasteel/black, -/area/crew_quarters/bar{ - name = "Electronic Marketing Den" - }) -"aoc" = ( -/obj/machinery/newscaster{ - pixel_y = -32 - }, -/obj/machinery/light/small, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/bar{ - name = "Electronic Marketing Den" - }) -"aod" = ( -/obj/structure/table/wood, -/obj/item/weapon/poster/contraband{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/poster/contraband{ - pixel_x = -3; - pixel_y = -3 - }, -/obj/item/weapon/poster/contraband, -/turf/open/floor/plasteel/black, -/area/crew_quarters/bar{ - name = "Electronic Marketing Den" - }) -"aoe" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/wood{ - tag = "icon-wood-broken"; - icon_state = "wood-broken" - }, -/area/crew_quarters/bar{ - name = "Electronic Marketing Den" - }) -"aof" = ( -/obj/machinery/light/small, -/turf/open/floor/wood, -/area/crew_quarters/bar{ - name = "Electronic Marketing Den" - }) -"aog" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/wood, -/area/crew_quarters/bar{ - name = "Electronic Marketing Den" - }) -"aoh" = ( -/turf/open/floor/wood{ - tag = "icon-wood-broken7"; - icon_state = "wood-broken7" - }, -/area/crew_quarters/bar{ - name = "Electronic Marketing Den" - }) -"aoi" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/obj/structure/cable/white, -/obj/machinery/power/apc{ - dir = 2; - name = "Electronics Marketing APC"; - pixel_y = -26 - }, -/turf/open/floor/wood, -/area/crew_quarters/bar{ - name = "Electronic Marketing Den" - }) -"aoj" = ( -/obj/structure/table/wood, -/obj/machinery/newscaster{ - pixel_x = 32 - }, -/obj/item/weapon/folder/red, -/obj/item/weapon/lighter, -/turf/open/floor/wood, -/area/crew_quarters/bar{ - name = "Electronic Marketing Den" - }) -"aok" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"aol" = ( -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Maintenance Hatch"; - req_access_txt = "12" - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"aom" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral/side, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"aon" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Customs Maintenance"; - req_access_txt = "19" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/bridge{ - name = "Customs" - }) -"aoo" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Security Maintenance"; - req_access_txt = "63" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/security/checkpoint2) -"aop" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"aoq" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"aor" = ( -/obj/structure/chair/stool/bar, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/black, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"aos" = ( -/turf/open/floor/plasteel/black, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"aot" = ( -/obj/structure/table/wood, -/obj/item/toy/talking/AI, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"aou" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (WEST)"; - icon_state = "brown"; - dir = 8 - }, -/area/maintenance/disposal) -"aov" = ( -/obj/machinery/disposal/deliveryChute{ - dir = 4 - }, -/obj/structure/window/reinforced, -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/structure/window/reinforced{ - dir = 1 - }, -/obj/machinery/door/window{ - base_state = "right"; - dir = 4; - icon_state = "right"; - layer = 3 - }, -/obj/structure/disposalpipe/trunk{ - dir = 1 - }, -/turf/open/floor/plasteel/delivery, -/area/maintenance/disposal) -"aow" = ( -/obj/machinery/conveyor{ - dir = 4; - id = "garbage" - }, -/obj/machinery/door/window/eastright{ - base_state = "left"; - dir = 1; - icon_state = "left"; - name = "Danger: Conveyor Access"; - req_access_txt = "12" - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/bot, -/area/maintenance/disposal) -"aox" = ( -/obj/machinery/mineral/stacking_machine{ - input_dir = 2 - }, -/obj/structure/window/reinforced{ - dir = 4 - }, -/obj/structure/window/reinforced{ - dir = 1 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/bot, -/area/maintenance/disposal) -"aoy" = ( -/obj/machinery/mineral/stacking_unit_console{ - dir = 2; - machinedir = 8; - pixel_x = 32; - pixel_y = 0 - }, -/obj/structure/disposalpipe/segment, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (EAST)"; - icon_state = "brown"; - dir = 4 - }, -/area/maintenance/disposal) -"aoz" = ( -/obj/item/weapon/cautery, -/obj/item/weapon/scalpel, -/obj/structure/table/reinforced, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/shuttle/syndicate) -"aoA" = ( -/obj/structure/table/optable, -/obj/item/weapon/surgical_drapes, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/shuttle/syndicate) -"aoB" = ( -/obj/item/weapon/retractor, -/obj/item/weapon/hemostat, -/obj/structure/table/reinforced, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/shuttle/syndicate) -"aoC" = ( -/obj/structure/shuttle/engine/heater, -/obj/structure/window/reinforced{ - dir = 1 - }, -/turf/open/floor/plating/warnplate, -/area/shuttle/syndicate) -"aoD" = ( -/turf/open/space, -/area/shuttle/syndicate) -"aoE" = ( -/obj/machinery/recharge_station, -/turf/open/floor/plasteel/circuit/rcircuit, -/area/shuttle/syndicate) -"aoF" = ( -/obj/machinery/telecomms/allinone{ - intercept = 1 - }, -/turf/open/floor/plasteel/circuit/rcircuit, -/area/shuttle/syndicate) -"aoG" = ( -/obj/structure/lattice/catwalk, -/obj/effect/landmark{ - name = "xeno_spawn"; - pixel_x = -1 - }, -/turf/open/space, -/area/solar/auxport) -"aoH" = ( -/obj/structure/cable{ - icon_state = "0-2"; - pixel_y = 1; - d2 = 2 - }, -/obj/machinery/power/emitter{ - anchored = 1; - dir = 1; - state = 2 - }, -/turf/open/floor/plasteel/circuit/gcircuit, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"aoI" = ( -/obj/structure/sign/electricshock, -/turf/closed/wall/r_wall, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"aoJ" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/atmos{ - name = "Reflector Access"; - req_access_txt = "24" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (EAST)"; - icon_state = "plasteel_warn_side"; - dir = 4 - }, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"aoK" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"aoL" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/atmos{ - name = "Reflector Access"; - req_access_txt = "24" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (EAST)"; - icon_state = "plasteel_warn_side"; - dir = 4 - }, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"aoM" = ( -/obj/structure/sign/poster, -/turf/closed/wall, -/area/crew_quarters/bar{ - name = "Electronic Marketing Den" - }) -"aoN" = ( -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Maintenance Hatch"; - req_access_txt = "12" - }, -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/barricade/wooden, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/crew_quarters/bar{ - name = "Electronic Marketing Den" - }) -"aoO" = ( -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Maintenance Hatch"; - req_access_txt = "12" - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/barricade/wooden, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/crew_quarters/bar{ - name = "Electronic Marketing Den" - }) -"aoP" = ( -/obj/structure/closet/firecloset, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"aoQ" = ( -/obj/structure/girder, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"aoR" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/rack, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 2; - name = "2maintenance loot spawner" - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"aoS" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/neutral/side{ - dir = 1 - }, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"aoT" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"aoU" = ( -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"aoV" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"aoW" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 1 - }, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"aoX" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 1 - }, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"aoY" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"aoZ" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral/side{ - dir = 1; - heat_capacity = 1e+006 - }, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"apa" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"apb" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/delivery, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"apc" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/space_heater, -/turf/open/floor/plasteel/neutral/side{ - dir = 5 - }, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"apd" = ( -/obj/machinery/light{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral/corner{ - dir = 8 - }, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"ape" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 4 - }, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"apf" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/disposal/bin, -/obj/structure/disposalpipe/trunk, -/turf/open/floor/plasteel/bot, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"apg" = ( -/obj/machinery/vending/cola, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/camera{ - c_tag = "Arrivals - Aft"; - dir = 2; - name = "arrivals camera" - }, -/turf/open/floor/plasteel/bot, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"aph" = ( -/obj/machinery/vending/snack, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_y = 26 - }, -/turf/open/floor/plasteel/bot, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"api" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 1 - }, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"apj" = ( -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral/corner, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"apk" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/closet/firecloset, -/turf/open/floor/plasteel/neutral/side{ - dir = 9 - }, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"apl" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"apm" = ( -/obj/machinery/light/small{ - dir = 1 - }, -/obj/structure/closet/crate, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 3; - name = "3maintenance loot spawner" - }, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"apn" = ( -/obj/structure/table/wood, -/obj/effect/decal/cleanable/dirt, -/obj/item/weapon/coin/iron{ - icon_state = "coin_bananium_heads"; - name = "arcade coin" - }, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"apo" = ( -/obj/machinery/computer/arcade, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"app" = ( -/obj/structure/table/wood, -/obj/item/toy/talking/codex_gigas, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"apq" = ( -/obj/structure/table/wood, -/obj/item/clothing/glasses/regular/hipster, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"apr" = ( -/obj/machinery/computer/arcade, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"aps" = ( -/obj/machinery/airalarm{ - dir = 1; - icon_state = "alarm0"; - pixel_y = -22 - }, -/obj/structure/table/wood, -/obj/effect/decal/cleanable/dirt, -/obj/item/weapon/coin/iron{ - icon_state = "coin_bananium_heads"; - name = "arcade coin" - }, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"apt" = ( -/obj/structure/table/wood, -/obj/item/weapon/gun/ballistic/automatic/toy/pistol/unrestricted, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"apu" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/disposal) -"apv" = ( -/obj/machinery/light/small{ - dir = 8 - }, -/obj/machinery/conveyor{ - dir = 9; - id = "garbage"; - verted = -1 - }, -/turf/open/floor/plating/warnplate/side, -/area/maintenance/disposal) -"apw" = ( -/obj/machinery/conveyor{ - dir = 4; - id = "garbage" - }, -/turf/open/floor/plating/warnplate{ - dir = 1 - }, -/area/maintenance/disposal) -"apx" = ( -/obj/machinery/conveyor{ - dir = 4; - id = "garbage" - }, -/obj/effect/decal/cleanable/blood/splatter, -/turf/open/floor/plating/warnplate{ - dir = 1 - }, -/area/maintenance/disposal) -"apy" = ( -/obj/machinery/conveyor{ - dir = 6; - id = "garbage" - }, -/obj/machinery/door/window/eastright{ - base_state = "left"; - dir = 4; - icon_state = "left"; - name = "Danger: Conveyor Access"; - req_access_txt = "12" - }, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating/warnplate{ - dir = 5 - }, -/area/maintenance/disposal) -"apz" = ( -/obj/structure/disposalpipe/segment, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (EAST)"; - icon_state = "brown"; - dir = 4 - }, -/area/maintenance/disposal) -"apA" = ( -/obj/structure/shuttle/engine/propulsion{ - icon_state = "propulsion_l" - }, -/turf/open/floor/plating/warnplate, -/area/shuttle/syndicate) -"apB" = ( -/obj/structure/shuttle/engine/propulsion, -/turf/open/floor/plating/warnplate, -/area/shuttle/syndicate) -"apC" = ( -/obj/structure/shuttle/engine/propulsion{ - icon_state = "propulsion_r" - }, -/turf/open/floor/plating/warnplate, -/area/shuttle/syndicate) -"apD" = ( -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/turf/open/floor/plasteel/airless/solarpanel, -/area/solar/auxport) -"apE" = ( -/obj/structure/lattice/catwalk, -/turf/open/space, -/area/solar/auxport) -"apF" = ( -/obj/item/clothing/gloves/color/black, -/obj/item/clothing/glasses/meson/engine, -/obj/structure/table/reinforced, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHEAST)"; - icon_state = "intact"; - dir = 6 - }, -/turf/open/floor/plasteel/bot, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"apG" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning{ - dir = 9 - }, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"apH" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"apI" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"apJ" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"apK" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/light/small{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"apL" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/open/floor/plasteel/warning{ - dir = 5 - }, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"apM" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/caution{ - dir = 4 - }, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"apN" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/circuit/gcircuit, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"apO" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/caution{ - tag = "icon-caution (WEST)"; - icon_state = "caution"; - dir = 8 - }, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"apP" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/warning{ - dir = 9 - }, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"apQ" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"apR" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHWEST)"; - icon_state = "intact"; - dir = 10 - }, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"apS" = ( -/turf/open/floor/plasteel/warning{ - dir = 5 - }, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"apT" = ( -/obj/structure/table/reinforced, -/obj/item/clothing/suit/radiation, -/obj/item/clothing/head/radiation, -/turf/open/floor/plasteel/bot, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"apU" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/sign/barsign{ - pixel_y = 32 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 1 - }, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"apV" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"apW" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 5 - }, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"apX" = ( -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"apY" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/neutral/side, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"apZ" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 5 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"aqa" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"aqb" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"aqc" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"aqd" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 10; - heat_capacity = 1e+006 - }, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"aqe" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/delivery, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"aqf" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/open/floor/plasteel/neutral/side, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"aqg" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"aqh" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"aqi" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"aqj" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"aqk" = ( -/obj/structure/closet/crate{ - icon_state = "crateopen"; - opened = 1 - }, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 2; - name = "2maintenance loot spawner" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"aql" = ( -/obj/structure/girder, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"aqm" = ( -/obj/structure/closet, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 3; - name = "3maintenance loot spawner" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"aqn" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"aqo" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"aqp" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"aqq" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"aqr" = ( -/turf/open/floor/plating{ - icon_state = "panelscorched" - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plating{ - icon_state = "platingdmg2" - }, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"aqs" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"aqt" = ( -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"aqu" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"aqv" = ( -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Maintenance Hatch"; - req_access_txt = "12" - }, -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"aqw" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 8 - }, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"aqx" = ( -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"aqy" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"aqz" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"aqA" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/navbeacon{ - codes_txt = "patrol;next_patrol=hall1"; - location = "hall15" - }, -/turf/open/floor/plasteel/neutral, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"aqB" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"aqC" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"aqD" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"aqE" = ( -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Maintenance Hatch"; - req_access_txt = "12" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"aqF" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"aqG" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, -/turf/open/floor/plasteel/neutral, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"aqH" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"aqI" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"aqJ" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"aqK" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Maintenance Hatch"; - req_access_txt = "12" - }, -/obj/structure/barricade/wooden, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (EAST)"; - icon_state = "plasteel_warn_side"; - dir = 4 - }, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"aqL" = ( -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/turf/closed/wall, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"aqM" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/closed/wall, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"aqN" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/closed/wall, -/area/maintenance/disposal) -"aqO" = ( -/obj/structure/rack, -/obj/effect/decal/cleanable/dirt, -/obj/item/weapon/weldingtool, -/obj/item/device/assembly/voice, -/obj/item/clothing/head/welding, -/obj/effect/spawner/lootdrop/maintenance, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/warning{ - dir = 9 - }, -/area/maintenance/disposal) -"aqP" = ( -/obj/machinery/light/small{ - dir = 1 - }, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/oil, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/maintenance/disposal) -"aqQ" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/disposal) -"aqR" = ( -/obj/machinery/conveyor{ - dir = 8; - id = "garbage" - }, -/obj/structure/disposaloutlet{ - dir = 4 - }, -/obj/structure/disposalpipe/trunk{ - dir = 8 - }, -/turf/open/floor/plating/warnplate{ - dir = 10 - }, -/area/maintenance/disposal) -"aqS" = ( -/obj/machinery/conveyor{ - dir = 8; - id = "garbage" - }, -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating/warnplate, -/area/maintenance/disposal) -"aqT" = ( -/obj/machinery/conveyor{ - dir = 8; - id = "garbage" - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 2; - on = 1 - }, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/blood/splatter, -/turf/open/floor/plating/warnplate, -/area/maintenance/disposal) -"aqU" = ( -/obj/machinery/conveyor{ - dir = 8; - id = "garbage" - }, -/obj/machinery/recycler, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating/warnplate, -/area/maintenance/disposal) -"aqV" = ( -/obj/machinery/door/window/eastright{ - dir = 4; - name = "Danger: Conveyor Access"; - req_access_txt = "12" - }, -/obj/machinery/conveyor{ - dir = 10; - id = "garbage" - }, -/obj/effect/decal/cleanable/blood/splatter, -/turf/open/floor/plating/warnplate{ - dir = 6 - }, -/area/maintenance/disposal) -"aqW" = ( -/obj/structure/disposalpipe/segment, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/maintenance/disposal) -"aqX" = ( -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/obj/structure/lattice/catwalk, -/turf/open/space, -/area/solar/auxport) -"aqY" = ( -/obj/structure/table/reinforced, -/obj/item/device/analyzer, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/bot, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"aqZ" = ( -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"ara" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/turf/open/floor/plasteel/neutral, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"arb" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/yellow, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"arc" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/neutral, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"ard" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/yellow, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"are" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"arf" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/caution{ - dir = 4 - }, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"arg" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/circuit/gcircuit, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"arh" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/caution{ - tag = "icon-caution (WEST)"; - icon_state = "caution"; - dir = 8 - }, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"ari" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"arj" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/yellow, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"ark" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"arl" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHWEST)"; - icon_state = "intact"; - dir = 10 - }, -/turf/open/floor/plasteel/yellow, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"arm" = ( -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"arn" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/tank/internals/emergency_oxygen/engi{ - pixel_x = -5 - }, -/obj/item/weapon/tank/internals/emergency_oxygen/engi{ - pixel_x = 5; - pixel_y = 0 - }, -/obj/item/device/geiger_counter, -/obj/item/device/geiger_counter, -/obj/machinery/airalarm{ - dir = 8; - icon_state = "alarm0"; - pixel_x = 24 - }, -/turf/open/floor/plasteel/bot, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"aro" = ( -/obj/structure/sign/poster, -/turf/closed/wall, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"arp" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"arq" = ( -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Maintenance Hatch"; - req_access_txt = "12" - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"arr" = ( -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Maintenance Hatch"; - req_access_txt = "12" - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"ars" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/neutral/side{ - dir = 8 - }, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"art" = ( -/turf/closed/wall, -/area/janitor) -"aru" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"arv" = ( -/turf/closed/wall, -/area/crew_quarters/toilet{ - name = "\improper Auxiliary Restrooms" - }) -"arw" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHEAST)"; - icon_state = "intact"; - dir = 5 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 8 - }, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"arx" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 8 - }, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"ary" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 8 - }, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"arz" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral/corner{ - tag = "icon-neutralcorner (NORTH)"; - icon_state = "neutralcorner"; - dir = 1 - }, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"arA" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral/corner{ - dir = 4 - }, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"arB" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"arC" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/open/floor/plasteel/neutral/corner, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"arD" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"arE" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"arF" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"arG" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHWEST)"; - icon_state = "intact"; - dir = 10 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"arH" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"arI" = ( -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHEAST)"; - icon_state = "intact"; - dir = 5 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"arJ" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 6 - }, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"arK" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/bot, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"arL" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 8 - }, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"arM" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"arN" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"arO" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/obj/structure/disposalpipe/segment, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/delivery, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"arP" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 4 - }, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"arQ" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"arR" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/maintenance/starboard{ - name = "Fore Starboard Maintenance" - }) -"arS" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Maintenance Hatch"; - req_access_txt = "12" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/warning/side, -/area/maintenance/disposal) -"arT" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plating, -/area/maintenance/disposal) -"arU" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/warning, -/area/maintenance/disposal) -"arV" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/warning{ - dir = 6 - }, -/area/maintenance/disposal) -"arW" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/brown, -/area/maintenance/disposal) -"arX" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/effect/decal/cleanable/blood/splatter, -/turf/open/floor/plating, -/area/maintenance/disposal) -"arY" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/effect/decal/cleanable/blood/splatter, -/turf/open/floor/plasteel/brown, -/area/maintenance/disposal) -"arZ" = ( -/obj/machinery/power/apc{ - dir = 2; - name = "Disposal APC"; - pixel_x = 0; - pixel_y = -24 - }, -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (SOUTHEAST)"; - icon_state = "brown"; - dir = 6 - }, -/area/maintenance/disposal) -"asa" = ( -/obj/machinery/atmospherics/pipe/heat_exchanging/simple{ - dir = 6 - }, -/obj/structure/lattice/catwalk, -/turf/open/space, -/area/space) -"asb" = ( -/obj/machinery/atmospherics/pipe/heat_exchanging/simple{ - tag = "icon-intact (EAST)"; - icon_state = "intact"; - dir = 4 - }, -/obj/structure/lattice/catwalk, -/turf/open/space, -/area/space) -"asc" = ( -/obj/machinery/atmospherics/pipe/heat_exchanging/junction{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/closed/wall/r_wall, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"asd" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/delivery, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"ase" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible{ - dir = 4 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"asf" = ( -/obj/machinery/atmospherics/pipe/manifold/general/visible{ - dir = 1 - }, -/obj/machinery/meter, -/turf/open/floor/plasteel/yellow, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"asg" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/turf/open/floor/plasteel/warning/corner, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"ash" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible{ - dir = 4 - }, -/obj/machinery/light, -/turf/open/floor/plasteel/warning, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"asi" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible{ - dir = 4 - }, -/turf/open/floor/plasteel/warning, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"asj" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible{ - dir = 4 - }, -/obj/structure/extinguisher_cabinet{ - pixel_y = -32 - }, -/turf/open/floor/plasteel/warning{ - dir = 6 - }, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"ask" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible{ - dir = 4 - }, -/obj/structure/sign/electricshock{ - pixel_y = -32 - }, -/turf/open/floor/plasteel/caution{ - dir = 4 - }, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"asl" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible{ - dir = 4 - }, -/turf/open/floor/plasteel/circuit/gcircuit, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"asm" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible{ - dir = 4 - }, -/turf/open/floor/plasteel/caution{ - tag = "icon-caution (WEST)"; - icon_state = "caution"; - dir = 8 - }, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"asn" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible{ - dir = 4 - }, -/obj/structure/sign/nosmoking_2{ - pixel_y = -32 - }, -/turf/open/floor/plasteel/warning{ - dir = 10 - }, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"aso" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible{ - dir = 4 - }, -/obj/effect/decal/cleanable/dirt, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = 0; - pixel_y = -26 - }, -/turf/open/floor/plasteel/warning, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"asp" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/warning/corner{ - dir = 1 - }, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"asq" = ( -/obj/machinery/atmospherics/components/trinary/filter{ - dir = 4; - filter_type = "n2"; - on = 1 - }, -/turf/open/floor/plasteel/yellow, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"asr" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - dir = 10 - }, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"ass" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/obj/structure/sign/nosmoking_2{ - pixel_x = 32 - }, -/turf/open/floor/plasteel/delivery, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"ast" = ( -/turf/open/floor/plasteel/neutral/side{ - dir = 8 - }, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"asu" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/grille, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"asv" = ( -/obj/structure/closet, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 2; - name = "2maintenance loot spawner" - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"asw" = ( -/obj/structure/closet/crate{ - icon_state = "crateopen"; - opened = 1 - }, -/obj/item/weapon/crowbar/red, -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"asx" = ( -/obj/structure/table/wood, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/item/clothing/gloves/color/white, -/obj/item/clothing/head/rabbitears, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"asy" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/redblue/redside{ - tag = "icon-redblue (WEST)"; - icon_state = "redblue"; - dir = 8 - }, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"asz" = ( -/obj/structure/table_frame/wood, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"asA" = ( -/obj/structure/easel, -/obj/item/weapon/canvas/twentythreeXtwentythree, -/obj/item/weapon/canvas/twentythreeXtwentythree, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"asB" = ( -/obj/structure/easel, -/obj/item/weapon/canvas/twentythreeXtwentythree, -/obj/item/weapon/canvas/twentythreeXtwentythree, -/turf/open/floor/wood{ - icon_state = "wood-broken7" - }, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"asC" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/wood{ - icon_state = "wood-broken" - }, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"asD" = ( -/obj/structure/table/wood, -/obj/item/device/camera_film, -/obj/effect/decal/cleanable/cobweb/cobweb2, -/turf/open/floor/wood, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"asE" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"asF" = ( -/obj/structure/table/reinforced, -/obj/machinery/light/small{ - dir = 1 - }, -/obj/structure/sign/nanotrasen{ - pixel_y = 32 - }, -/obj/item/weapon/storage/box/mousetraps{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/storage/box/mousetraps, -/obj/item/weapon/restraints/legcuffs/beartrap{ - tag = "icon-beartrap0"; - icon_state = "beartrap0" - }, -/obj/item/weapon/restraints/legcuffs/beartrap{ - tag = "icon-beartrap0"; - icon_state = "beartrap0" - }, -/obj/item/weapon/restraints/legcuffs/beartrap{ - tag = "icon-beartrap0"; - icon_state = "beartrap0" - }, -/obj/effect/decal/cleanable/cobweb, -/turf/open/floor/plasteel/bot, -/area/janitor) -"asG" = ( -/obj/vehicle/janicart, -/obj/machinery/status_display{ - pixel_y = 32 - }, -/obj/effect/decal/cleanable/dirt, -/obj/item/weapon/storage/bag/trash, -/obj/item/key/janitor, -/turf/open/floor/plasteel/bot, -/area/janitor) -"asH" = ( -/obj/structure/closet/jcloset, -/obj/machinery/power/apc{ - cell_type = 5000; - dir = 1; - name = "Custodial Closet APC"; - pixel_x = 0; - pixel_y = 25 - }, -/obj/structure/cable/white{ - tag = "icon-0-2"; - icon_state = "0-2" - }, -/turf/open/floor/plasteel/bot, -/area/janitor) -"asI" = ( -/obj/structure/closet/l3closet/janitor, -/obj/machinery/requests_console{ - department = "Custodial Closet"; - departmentType = 0; - name = "Custodial RC"; - pixel_x = 0; - pixel_y = 32 - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/camera{ - c_tag = "Custodial Closet"; - dir = 2; - name = "service camera" - }, -/turf/open/floor/plasteel/bot, -/area/janitor) -"asJ" = ( -/obj/structure/table/reinforced, -/obj/machinery/status_display{ - pixel_y = 32 - }, -/obj/item/weapon/clipboard, -/obj/item/toy/figure/janitor, -/turf/open/floor/plating, -/area/janitor) -"asK" = ( -/obj/structure/table/reinforced, -/obj/machinery/light/small{ - dir = 1 - }, -/obj/item/stack/packageWrap, -/obj/item/weapon/crowbar, -/obj/item/weapon/hand_labeler, -/obj/machinery/newscaster{ - pixel_y = 32 - }, -/turf/open/floor/plating, -/area/janitor) -"asL" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"asM" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/table, -/obj/item/weapon/storage/firstaid/regular, -/turf/open/floor/plasteel/bot, -/area/crew_quarters/toilet{ - name = "\improper Auxiliary Restrooms" - }) -"asN" = ( -/obj/structure/urinal{ - pixel_y = 28 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/bot, -/area/crew_quarters/toilet{ - name = "\improper Auxiliary Restrooms" - }) -"asO" = ( -/obj/structure/urinal{ - pixel_y = 28 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/crew_quarters/toilet{ - name = "\improper Auxiliary Restrooms" - }) -"asP" = ( -/obj/structure/urinal{ - pixel_y = 28 - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/light/small{ - dir = 4 - }, -/turf/open/floor/plating, -/area/crew_quarters/toilet{ - name = "\improper Auxiliary Restrooms" - }) -"asQ" = ( -/obj/machinery/door/airlock{ - name = "Auxiliary Restroom" - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/crew_quarters/toilet{ - name = "\improper Auxiliary Restrooms" - }) -"asR" = ( -/obj/structure/sign/directions/evac{ - pixel_y = -8 - }, -/obj/structure/sign/directions/science{ - dir = 2 - }, -/obj/structure/sign/directions/engineering{ - dir = 2; - pixel_y = 8 - }, -/turf/closed/wall, -/area/crew_quarters/toilet{ - name = "\improper Auxiliary Restrooms" - }) -"asS" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass{ - name = "Fore Primary Hallway" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/hallway/primary/fore) -"asT" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass{ - name = "Fore Primary Hallway" - }, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/hallway/primary/fore) -"asU" = ( -/obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/door/airlock/glass{ - name = "Fore Primary Hallway" - }, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/hallway/primary/fore) -"asV" = ( -/obj/structure/sign/directions/evac{ - pixel_y = -8 - }, -/obj/structure/sign/directions/medical{ - dir = 2 - }, -/obj/structure/sign/directions/security{ - dir = 2; - pixel_y = 8 - }, -/turf/closed/wall, -/area/quartermaster/sorting{ - name = "\improper Warehouse" - }) -"asW" = ( -/turf/closed/wall, -/area/quartermaster/sorting{ - name = "\improper Warehouse" - }) -"asX" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Warehouse Maintenance"; - req_access_txt = "31" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/quartermaster/sorting{ - name = "\improper Warehouse" - }) -"asY" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/closed/wall, -/area/quartermaster/sorting{ - name = "\improper Warehouse" - }) -"asZ" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/quartermaster/sorting{ - name = "\improper Warehouse" - }) -"ata" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/quartermaster/storage) -"atb" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHWEST)"; - icon_state = "intact"; - dir = 10 - }, -/turf/closed/wall, -/area/quartermaster/storage) -"atc" = ( -/turf/closed/wall, -/area/quartermaster/storage) -"atd" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Cargo Maintenance"; - req_access_txt = "48;50" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/quartermaster/storage) -"ate" = ( -/obj/structure/lattice/catwalk, -/obj/structure/cable, -/turf/open/space, -/area/solar/auxport) -"atf" = ( -/obj/machinery/atmospherics/pipe/heat_exchanging/simple{ - dir = 5 - }, -/obj/structure/lattice/catwalk, -/turf/open/space, -/area/space) -"atg" = ( -/obj/machinery/atmospherics/pipe/heat_exchanging/simple{ - tag = "icon-intact (EAST)"; - icon_state = "intact"; - dir = 4 - }, -/obj/structure/lattice, -/turf/open/space, -/area/space) -"ath" = ( -/obj/machinery/atmospherics/pipe/heat_exchanging/simple{ - dir = 10 - }, -/obj/structure/lattice, -/turf/open/space, -/area/space) -"ati" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/bot, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"atj" = ( -/obj/machinery/atmospherics/components/binary/pump{ - dir = 1; - icon_state = "pump_map"; - name = "Gas to Loop" - }, -/turf/open/floor/plasteel/neutral, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"atk" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"atl" = ( -/obj/machinery/ai_status_display, -/turf/closed/wall/r_wall, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"atm" = ( -/obj/machinery/status_display, -/turf/closed/wall/r_wall, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"atn" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"ato" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible, -/turf/open/floor/plasteel/neutral, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"atp" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/visible{ - dir = 8; - icon_state = "manifold"; - name = "scrubbers pipe" - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"atq" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/bot, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"atr" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plating, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"ats" = ( -/obj/structure/lattice/catwalk, -/obj/machinery/atmospherics/components/unary/outlet_injector/on{ - dir = 8; - frequency = 1441; - id = "n2_in" - }, -/turf/open/space, -/area/space) -"att" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/neutral, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"atu" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/landmark{ - name = "blobstart" - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"atv" = ( -/obj/structure/grille, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"atw" = ( -/obj/structure/mirror{ - desc = "Mirror mirror on the wall, who is the most robust of them all?"; - pixel_x = -28 - }, -/obj/structure/table/wood, -/obj/effect/decal/cleanable/dirt, -/obj/item/clothing/suit/suspenders, -/obj/effect/landmark/costume, -/turf/open/floor/plasteel/redblue, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"atx" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/turf/open/floor/plasteel/redblue/redside{ - tag = "icon-redblue (WEST)"; - icon_state = "redblue"; - dir = 8 - }, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"aty" = ( -/obj/effect/decal/cleanable/dirt, -/obj/item/weapon/melee/skateboard, -/turf/open/floor/plasteel/cafeteria, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"atz" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/wood{ - tag = "icon-wood-broken2"; - icon_state = "wood-broken2" - }, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"atA" = ( -/mob/living/simple_animal/cockroach, -/turf/open/floor/wood, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"atB" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/wood, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"atC" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/wood, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"atD" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/wood, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"atE" = ( -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Maintenance Hatch"; - req_access_txt = "12" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"atF" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"atG" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"atH" = ( -/obj/structure/mirror{ - desc = "Mirror mirror on the wall, who is the most robust of them all?"; - pixel_x = -28 - }, -/obj/structure/table/reinforced, -/obj/item/clothing/gloves/color/orange, -/obj/item/weapon/reagent_containers/spray/cleaner, -/obj/item/weapon/reagent_containers/spray/cleaner, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHEAST)"; - icon_state = "intact"; - dir = 6 - }, -/obj/item/weapon/grenade/chem_grenade/cleaner, -/obj/item/weapon/grenade/chem_grenade/cleaner, -/obj/item/weapon/grenade/chem_grenade/cleaner, -/turf/open/floor/plasteel/bot, -/area/janitor) -"atI" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/landmark/start{ - name = "Janitor" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/janitor) -"atJ" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/janitor) -"atK" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/purple/side{ - tag = "icon-purple (NORTH)"; - icon_state = "purple"; - dir = 1 - }, -/area/janitor) -"atL" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/landmark/start{ - name = "Janitor" - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/green/side{ - dir = 5; - initial_gas_mix = "n2=100;TEMP=80"; - tag = "SERVER" - }, -/area/janitor) -"atM" = ( -/obj/structure/reagent_dispensers/watertank, -/obj/structure/sign/nosmoking_2{ - pixel_x = 32 - }, -/obj/item/weapon/reagent_containers/glass/bucket, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/bot, -/area/janitor) -"atN" = ( -/obj/effect/landmark{ - name = "blobstart" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"atO" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/mirror{ - desc = "Mirror mirror on the wall, who is the most robust of them all?"; - pixel_x = -26 - }, -/obj/structure/sink{ - dir = 8; - icon_state = "sink"; - pixel_x = -12 - }, -/turf/open/floor/plasteel/bot, -/area/crew_quarters/toilet{ - name = "\improper Auxiliary Restrooms" - }) -"atP" = ( -/turf/open/floor/plasteel/neutral/side{ - dir = 1; - heat_capacity = 1e+006 - }, -/area/crew_quarters/toilet{ - name = "\improper Auxiliary Restrooms" - }) -"atQ" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/neutral/side{ - dir = 1; - heat_capacity = 1e+006 - }, -/area/crew_quarters/toilet{ - name = "\improper Auxiliary Restrooms" - }) -"atR" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/crew_quarters/toilet{ - name = "\improper Auxiliary Restrooms" - }) -"atS" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1 - }, -/obj/machinery/camera{ - c_tag = "Auxiliary Restroom"; - dir = 2; - name = "restroom camera" - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 1; - heat_capacity = 1e+006 - }, -/area/crew_quarters/toilet{ - name = "\improper Auxiliary Restrooms" - }) -"atT" = ( -/obj/effect/decal/cleanable/dirt, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_y = 26 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 1; - heat_capacity = 1e+006 - }, -/area/crew_quarters/toilet{ - name = "\improper Auxiliary Restrooms" - }) -"atU" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 5 - }, -/area/crew_quarters/toilet{ - name = "\improper Auxiliary Restrooms" - }) -"atV" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral/corner{ - dir = 1 - }, -/area/hallway/primary/fore) -"atW" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/fore) -"atX" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/obj/machinery/camera{ - c_tag = "Arrivals Hallway - Fore"; - dir = 8; - name = "hallway camera" - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 4 - }, -/area/hallway/primary/fore) -"atY" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/reagent_dispensers/fueltank, -/turf/open/floor/plasteel/neutral, -/area/quartermaster/sorting{ - name = "\improper Warehouse" - }) -"atZ" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/cobweb, -/turf/open/floor/plating, -/area/quartermaster/sorting{ - name = "\improper Warehouse" - }) -"aua" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/quartermaster/sorting{ - name = "\improper Warehouse" - }) -"aub" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/quartermaster/sorting{ - name = "\improper Warehouse" - }) -"auc" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (NORTH)"; - icon_state = "brown"; - dir = 1 - }, -/area/quartermaster/sorting{ - name = "\improper Warehouse" - }) -"aud" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/camera{ - c_tag = "Cargo - Warehouse"; - dir = 2; - name = "cargo camera" - }, -/turf/open/floor/plating, -/area/quartermaster/sorting{ - name = "\improper Warehouse" - }) -"aue" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (NORTH)"; - icon_state = "brown"; - dir = 1 - }, -/area/quartermaster/sorting{ - name = "\improper Warehouse" - }) -"auf" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/cobweb/cobweb2, -/turf/open/floor/plating, -/area/quartermaster/sorting{ - name = "\improper Warehouse" - }) -"aug" = ( -/obj/item/stack/packageWrap, -/obj/item/weapon/hand_labeler, -/obj/structure/table, -/turf/open/floor/plasteel/bot, -/area/quartermaster/storage) -"auh" = ( -/obj/machinery/airalarm{ - pixel_y = 22 - }, -/obj/structure/filingcabinet/filingcabinet, -/turf/open/floor/plasteel/bot, -/area/quartermaster/storage) -"aui" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/filingcabinet/filingcabinet, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/bot, -/area/quartermaster/storage) -"auj" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/light{ - dir = 1 - }, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (NORTH)"; - icon_state = "brown"; - dir = 1 - }, -/area/quartermaster/storage) -"auk" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/delivery, -/area/quartermaster/storage) -"aul" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (NORTH)"; - icon_state = "brown"; - dir = 1 - }, -/area/quartermaster/storage) -"aum" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/paper_bin, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (NORTH)"; - icon_state = "brown"; - dir = 1 - }, -/area/quartermaster/storage) -"aun" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/storage/box/lights/mixed, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = 0; - pixel_y = 26 - }, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (NORTH)"; - icon_state = "brown"; - dir = 1 - }, -/area/quartermaster/storage) -"auo" = ( -/obj/structure/table/reinforced, -/obj/machinery/computer/stockexchange, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (NORTH)"; - icon_state = "brown"; - dir = 1 - }, -/area/quartermaster/storage) -"aup" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/light{ - dir = 1 - }, -/obj/structure/filingcabinet/chestdrawer, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (NORTH)"; - icon_state = "brown"; - dir = 1 - }, -/area/quartermaster/storage) -"auq" = ( -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (NORTH)"; - icon_state = "brown"; - dir = 1 - }, -/area/quartermaster/storage) -"aur" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/closet/crate{ - icon_state = "crateopen"; - opened = 1 - }, -/turf/open/floor/plasteel/delivery, -/area/quartermaster/storage) -"aus" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/closet/crate, -/turf/open/floor/plasteel/delivery, -/area/quartermaster/storage) -"aut" = ( -/obj/machinery/status_display{ - density = 0; - name = "cargo display"; - pixel_x = 0; - pixel_y = 0; - supply_display = 1 - }, -/turf/closed/wall, -/area/quartermaster/storage) -"auu" = ( -/obj/item/stack/cable_coil, -/obj/structure/lattice/catwalk, -/turf/open/space, -/area/solar/auxport) -"auv" = ( -/obj/machinery/atmospherics/pipe/heat_exchanging/simple{ - tag = "icon-intact (EAST)"; - icon_state = "intact"; - dir = 4 - }, -/turf/open/space, -/area/space) -"auw" = ( -/obj/machinery/atmospherics/pipe/heat_exchanging/simple{ - dir = 9 - }, -/obj/structure/lattice, -/turf/open/space, -/area/space) -"aux" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/bot, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"auy" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible{ - icon_state = "intact"; - dir = 6 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"auz" = ( -/obj/machinery/atmospherics/pipe/manifold/general/visible{ - dir = 4 - }, -/obj/machinery/meter, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/yellow, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"auA" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"auB" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "engsm"; - name = "Radiation Chamber Shutters" - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating/warnplate{ - dir = 4 - }, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"auC" = ( -/obj/machinery/power/rad_collector{ - anchored = 1 - }, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/turf/open/floor/plasteel/circuit/gcircuit, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"auD" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/general/visible{ - icon_state = "intact"; - dir = 6 - }, -/turf/open/floor/plating, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"auE" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"auF" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"auG" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/general/visible{ - dir = 10 - }, -/turf/open/floor/plating, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"auH" = ( -/obj/machinery/power/rad_collector{ - anchored = 1 - }, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/turf/open/floor/plasteel/circuit/gcircuit, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"auI" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "engsm"; - name = "Radiation Chamber Shutters" - }, -/turf/open/floor/plating/warnplate{ - dir = 8 - }, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"auJ" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"auK" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible, -/turf/open/floor/plasteel/yellow, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"auL" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"auM" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/turf/open/floor/plasteel/bot, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"auN" = ( -/turf/open/floor/plasteel/neutral, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"auO" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/neutral, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"auP" = ( -/obj/structure/rack, -/obj/item/weapon/reagent_containers/food/drinks/bottle/whiskey, -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"auQ" = ( -/obj/structure/table_frame/wood, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/redblue, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"auR" = ( -/turf/open/floor/plasteel/redblue, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"auS" = ( -/turf/open/floor/plasteel/redblue/redside{ - tag = "icon-redblue (WEST)"; - icon_state = "redblue"; - dir = 8 - }, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"auT" = ( -/obj/structure/dresser, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/cafeteria, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"auU" = ( -/obj/structure/table/wood, -/obj/item/device/camera, -/turf/open/floor/wood{ - tag = "icon-wood-broken3"; - icon_state = "wood-broken3" - }, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"auV" = ( -/obj/structure/chair/comfy/brown{ - icon_state = "comfychair"; - dir = 8 - }, -/turf/open/floor/wood{ - tag = "icon-wood-broken3"; - icon_state = "wood-broken3" - }, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"auW" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/sign/nosmoking_2{ - pixel_y = -32 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"auX" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/sign/poster{ - pixel_y = -32 - }, -/turf/open/floor/wood{ - tag = "icon-wood-broken7"; - icon_state = "wood-broken7" - }, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"auY" = ( -/obj/machinery/photocopier, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"auZ" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/mob/living/simple_animal/cockroach, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"ava" = ( -/obj/structure/table/reinforced, -/obj/machinery/airalarm{ - dir = 4; - locked = 0; - pixel_x = -23; - pixel_y = 0 - }, -/obj/item/weapon/storage/box/lights/mixed{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/storage/box/lights/mixed, -/obj/item/device/lightreplacer, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/janitor) -"avb" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 2; - on = 1 - }, -/turf/open/floor/plasteel/green/side{ - dir = 8 - }, -/area/janitor) -"avc" = ( -/obj/machinery/holopad, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/bot, -/area/janitor) -"avd" = ( -/obj/effect/decal/cleanable/dirt, -/mob/living/simple_animal/hostile/lizard{ - name = "Eats-The-Roaches"; - real_name = "Wags-His-Tail" - }, -/turf/open/floor/plasteel/bot, -/area/janitor) -"ave" = ( -/turf/open/floor/plasteel/purple/side{ - tag = "icon-purple (EAST)"; - icon_state = "purple"; - dir = 4 - }, -/area/janitor) -"avf" = ( -/obj/structure/janitorialcart, -/obj/structure/sign/poster{ - icon_state = "poster17_legit"; - pixel_x = 32; - pixel_y = 0; - tag = "icon-poster17_legit" - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/janitor) -"avg" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral/corner{ - dir = 4 - }, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"avh" = ( -/obj/machinery/light/small, -/obj/structure/extinguisher_cabinet{ - pixel_y = -32 - }, -/turf/open/floor/plating, -/area/crew_quarters/toilet{ - name = "\improper Auxiliary Restrooms" - }) -"avi" = ( -/turf/open/floor/plasteel/neutral/side, -/area/crew_quarters/toilet{ - name = "\improper Auxiliary Restrooms" - }) -"avj" = ( -/obj/machinery/status_display{ - pixel_y = -32 - }, -/turf/open/floor/plasteel/neutral/side, -/area/crew_quarters/toilet{ - name = "\improper Auxiliary Restrooms" - }) -"avk" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/neutral/side, -/area/crew_quarters/toilet{ - name = "\improper Auxiliary Restrooms" - }) -"avl" = ( -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/power/apc{ - dir = 2; - name = "Auxiliary Restrooms APC"; - pixel_y = -26 - }, -/turf/open/floor/plating, -/area/crew_quarters/toilet{ - name = "\improper Auxiliary Restrooms" - }) -"avm" = ( -/obj/machinery/airalarm{ - dir = 8; - icon_state = "alarm0"; - pixel_x = 24 - }, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/neutral/side{ - dir = 6 - }, -/area/crew_quarters/toilet{ - name = "\improper Auxiliary Restrooms" - }) -"avn" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 1 - }, -/area/hallway/primary/fore) -"avo" = ( -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/fore) -"avp" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/obj/structure/disposalpipe/junction{ - icon_state = "pipe-j1"; - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 4 - }, -/area/hallway/primary/fore) -"avq" = ( -/obj/machinery/door/firedoor, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Maintenance Hatch"; - req_access_txt = "12" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/quartermaster/sorting{ - name = "\improper Warehouse" - }) -"avr" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHWEST)"; - icon_state = "intact"; - dir = 10 - }, -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/turf/open/floor/plating, -/area/quartermaster/sorting{ - name = "\improper Warehouse" - }) -"avs" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/closet/crate/secure/loot, -/turf/open/floor/plasteel/bot, -/area/quartermaster/sorting{ - name = "\improper Warehouse" - }) -"avt" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/blood/old, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/plasteel/neutral, -/area/quartermaster/sorting{ - name = "\improper Warehouse" - }) -"avu" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/closet/crate, -/obj/effect/spawner/lootdrop/maintenance, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/bot, -/area/quartermaster/sorting{ - name = "\improper Warehouse" - }) -"avv" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/delivery, -/area/quartermaster/sorting{ - name = "\improper Warehouse" - }) -"avw" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/closet/cardboard, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 2; - name = "2maintenance loot spawner" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/bot, -/area/quartermaster/sorting{ - name = "\improper Warehouse" - }) -"avx" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (EAST)"; - icon_state = "brown"; - dir = 4 - }, -/area/quartermaster/sorting{ - name = "\improper Warehouse" - }) -"avy" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/mining{ - name = "Cargo Warehouse"; - req_access_txt = "31" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/quartermaster/sorting{ - name = "\improper Warehouse" - }) -"avz" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning{ - dir = 9 - }, -/area/quartermaster/storage) -"avA" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/quartermaster/storage) -"avB" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/quartermaster/storage) -"avC" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/quartermaster/storage) -"avD" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/quartermaster/storage) -"avE" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/quartermaster/storage) -"avF" = ( -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/quartermaster/storage) -"avG" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/quartermaster/storage) -"avH" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning{ - dir = 5 - }, -/area/quartermaster/storage) -"avI" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/loadingarea{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; - dir = 8 - }, -/area/quartermaster/storage) -"avJ" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/conveyor, -/turf/open/floor/plating, -/area/quartermaster/storage) -"avK" = ( -/obj/structure/cable/white{ - tag = "icon-0-2"; - icon_state = "0-2" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/quartermaster/storage) -"avL" = ( -/turf/closed/wall/mineral/titanium, -/area/shuttle/supply) -"avM" = ( -/obj/machinery/atmospherics/components/unary/thermomachine/heater{ - dir = 4; - on = 1 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/bot, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"avN" = ( -/obj/machinery/atmospherics/pipe/manifold/general/visible{ - icon_state = "manifold"; - dir = 4 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"avO" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"avP" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/manifold/general/visible{ - dir = 8 - }, -/turf/open/floor/plating, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"avQ" = ( -/obj/machinery/power/supermatter_shard{ - anchored = 1; - base_icon_state = "darkmatter"; - explosion_power = 20; - gasefficency = 0.15; - icon_state = "darkmatter"; - name = "supermatter crystal" - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"avR" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/manifold/general/visible{ - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plating, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"avS" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "engsm"; - name = "Radiation Chamber Shutters" - }, -/obj/effect/decal/cleanable/oil, -/turf/open/floor/plating/warnplate{ - dir = 8 - }, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"avT" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"avU" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/neutral, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"avV" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - dir = 5 - }, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"avW" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"avX" = ( -/obj/structure/closet/crate, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 2; - name = "2maintenance loot spawner" - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"avY" = ( -/obj/machinery/light/small, -/obj/machinery/power/apc{ - dir = 2; - name = "Fore Port Maintenance APC"; - pixel_y = -26 - }, -/obj/structure/cable/white, -/turf/open/floor/plasteel/neutral/side, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"avZ" = ( -/obj/structure/sign/poster{ - pixel_y = -32 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/redblue, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"awa" = ( -/obj/machinery/vending/autodrobe{ - req_access_txt = "0" - }, -/obj/machinery/light/small, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/redblue/redside{ - tag = "icon-redblue (WEST)"; - icon_state = "redblue"; - dir = 8 - }, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"awb" = ( -/obj/structure/table/wood, -/obj/structure/sign/poster{ - pixel_y = -32 - }, -/obj/effect/decal/cleanable/dirt, -/obj/item/clothing/shoes/jackboots, -/obj/effect/landmark/costume, -/turf/open/floor/plasteel/cafeteria, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"awc" = ( -/obj/structure/table/wood, -/obj/item/weapon/lipstick/random{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/lipstick/random{ - pixel_x = -3; - pixel_y = -3 - }, -/obj/item/weapon/lipstick/random, -/obj/structure/sign/nosmoking_2{ - pixel_y = -32 - }, -/turf/open/floor/plasteel/cafeteria, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"awd" = ( -/obj/structure/table/wood, -/obj/item/weapon/canvas/twentythreeXnineteen, -/obj/item/weapon/canvas/nineteenXnineteen, -/obj/item/weapon/storage/crayons, -/obj/item/weapon/storage/crayons, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/light/small, -/turf/open/floor/wood{ - tag = "icon-wood-broken6"; - icon_state = "wood-broken6" - }, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"awe" = ( -/obj/structure/sink{ - dir = 8; - icon_state = "sink"; - pixel_x = -12 - }, -/obj/structure/sign/poster{ - icon_state = "poster3_legit"; - pixel_x = -32; - pixel_y = 0; - tag = "icon-poster3_legit" - }, -/obj/item/weapon/reagent_containers/glass/bucket, -/obj/item/weapon/reagent_containers/glass/bucket, -/obj/effect/decal/cleanable/dirt, -/obj/item/weapon/mop, -/obj/item/weapon/mop, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = 0; - pixel_y = -26 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/light/small, -/turf/open/floor/plasteel/bot, -/area/janitor) -"awf" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/turf/open/floor/plasteel/purple/side{ - dir = 10 - }, -/area/janitor) -"awg" = ( -/obj/machinery/light_switch{ - pixel_y = -26 - }, -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/turf/open/floor/plasteel/green/side, -/area/janitor) -"awh" = ( -/turf/open/floor/plasteel/delivery, -/area/janitor) -"awi" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/delivery, -/area/janitor) -"awj" = ( -/obj/machinery/disposal/bin, -/obj/structure/extinguisher_cabinet{ - pixel_x = 26 - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/light/small, -/obj/structure/disposalpipe/trunk{ - dir = 8 - }, -/turf/open/floor/plasteel/bot, -/area/janitor) -"awk" = ( -/obj/machinery/door/airlock{ - name = "Toilet Unit" - }, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (EAST)"; - icon_state = "plasteel_warn_side"; - dir = 4 - }, -/area/crew_quarters/toilet{ - name = "\improper Auxiliary Restrooms" - }) -"awl" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/delivery, -/area/crew_quarters/toilet{ - name = "\improper Auxiliary Restrooms" - }) -"awm" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral/corner{ - dir = 1 - }, -/area/hallway/primary/fore) -"awn" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/fore) -"awo" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 4 - }, -/area/hallway/primary/fore) -"awp" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plating, -/area/quartermaster/sorting{ - name = "\improper Warehouse" - }) -"awq" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/airalarm{ - dir = 4; - locked = 0; - pixel_x = -23; - pixel_y = 0 - }, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (WEST)"; - icon_state = "brown"; - dir = 8 - }, -/area/quartermaster/sorting{ - name = "\improper Warehouse" - }) -"awr" = ( -/obj/item/weapon/storage/box/lights/mixed, -/turf/open/floor/plating, -/area/quartermaster/sorting{ - name = "\improper Warehouse" - }) -"aws" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral, -/area/quartermaster/sorting{ - name = "\improper Warehouse" - }) -"awt" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/plasteel/delivery, -/area/quartermaster/sorting{ - name = "\improper Warehouse" - }) -"awu" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/spawner/lootdrop/maintenance, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/bot, -/area/quartermaster/sorting{ - name = "\improper Warehouse" - }) -"awv" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/closet/crate/internals, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plating, -/area/quartermaster/sorting{ - name = "\improper Warehouse" - }) -"aww" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/bot, -/area/quartermaster/sorting{ - name = "\improper Warehouse" - }) -"awx" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (EAST)"; - icon_state = "brown"; - dir = 4 - }, -/area/quartermaster/sorting{ - name = "\improper Warehouse" - }) -"awy" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/mining{ - name = "Cargo Warehouse"; - req_access_txt = "31" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/quartermaster/sorting{ - name = "\improper Warehouse" - }) -"awz" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning{ - dir = 10 - }, -/area/quartermaster/storage) -"awA" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning, -/area/quartermaster/storage) -"awB" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plasteel/warning/corner{ - dir = 1 - }, -/area/quartermaster/storage) -"awC" = ( -/turf/open/floor/plasteel/neutral, -/area/quartermaster/storage) -"awD" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral, -/area/quartermaster/storage) -"awE" = ( -/obj/structure/closet/crate{ - icon_state = "crateopen"; - opened = 1 - }, -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plasteel/bot, -/area/quartermaster/storage) -"awF" = ( -/obj/effect/landmark/start{ - name = "Cargo Technician" - }, -/turf/open/floor/plasteel/bot, -/area/quartermaster/storage) -"awG" = ( -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plasteel/bot, -/area/quartermaster/storage) -"awH" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/delivery, -/area/quartermaster/storage) -"awI" = ( -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/quartermaster/storage) -"awJ" = ( -/turf/open/floor/plasteel/loadingarea{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; - dir = 8 - }, -/area/quartermaster/storage) -"awK" = ( -/obj/structure/cable/white, -/obj/structure/cable/white{ - tag = "icon-0-2"; - icon_state = "0-2" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/quartermaster/storage) -"awL" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning{ - tag = "icon-plasteel_warn (NORTHWEST)"; - icon_state = "plasteel_warn"; - dir = 9 - }, -/area/shuttle/supply) -"awM" = ( -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/shuttle/supply) -"awN" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/shuttle/supply) -"awO" = ( -/turf/open/floor/plasteel/warning{ - tag = "icon-plasteel_warn (NORTHEAST)"; - icon_state = "plasteel_warn"; - dir = 5 - }, -/area/shuttle/supply) -"awP" = ( -/obj/structure/lattice/catwalk, -/obj/structure/cable{ - icon_state = "0-2"; - pixel_y = 1; - d2 = 2 - }, -/turf/open/space, -/area/solar/auxport) -"awQ" = ( -/obj/machinery/atmospherics/pipe/heat_exchanging/simple{ - dir = 9 - }, -/obj/structure/lattice/catwalk, -/turf/open/space, -/area/space) -"awR" = ( -/obj/machinery/atmospherics/components/unary/thermomachine/freezer{ - tag = "icon-freezer (EAST)"; - icon_state = "freezer"; - dir = 4 - }, -/obj/structure/sign/securearea{ - pixel_x = -32 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/camera{ - c_tag = "Atmospherics - Engine Port"; - dir = 4; - name = "atmospherics camera" - }, -/turf/open/floor/plasteel/bot, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"awS" = ( -/obj/machinery/atmospherics/pipe/manifold/general/visible{ - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"awT" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/yellow, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"awU" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "engsm"; - name = "Radiation Chamber Shutters" - }, -/turf/open/floor/plating/warnplate{ - dir = 4 - }, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"awV" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"awW" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/sign/securearea{ - pixel_x = 32; - pixel_y = 0 - }, -/obj/machinery/camera{ - c_tag = "Atmospherics - Engine Starboard"; - dir = 8; - name = "atmospherics camera" - }, -/turf/open/floor/plasteel/bot, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"awX" = ( -/turf/closed/wall, -/area/hydroponics{ - name = "Abandoned Garden" - }) -"awY" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/neutral/side{ - dir = 9 - }, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"awZ" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/landmark{ - name = "blobstart" - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"axa" = ( -/turf/open/floor/plasteel/neutral/side{ - dir = 1 - }, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"axb" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"axc" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall, -/area/janitor) -"axd" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/door/airlock{ - name = "Custodial Closet"; - req_access_txt = "26" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/janitor) -"axe" = ( -/obj/machinery/door/poddoor/shutters{ - id = "custodialshutters"; - name = "Custodial Closet Shutters" - }, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (EAST)"; - icon_state = "plasteel_warn_side"; - dir = 4 - }, -/area/janitor) -"axf" = ( -/obj/machinery/door/poddoor/shutters{ - id = "custodialshutters"; - name = "Custodial Closet Shutters" - }, -/obj/machinery/button/door{ - id = "custodialshutters"; - name = "Custodial Shutters"; - pixel_x = 26; - req_access_txt = "26" - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (EAST)"; - icon_state = "plasteel_warn_side"; - dir = 4 - }, -/area/janitor) -"axg" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral/side, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"axh" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/vomit/old, -/obj/structure/toilet{ - tag = "icon-toilet00 (WEST)"; - icon_state = "toilet00"; - dir = 8 - }, -/obj/machinery/newscaster{ - pixel_x = -32 - }, -/obj/machinery/light/small, -/turf/open/floor/plating, -/area/crew_quarters/toilet{ - name = "\improper Auxiliary Restrooms" - }) -"axi" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/toilet{ - tag = "icon-toilet00 (WEST)"; - icon_state = "toilet00"; - dir = 8 - }, -/obj/machinery/newscaster{ - pixel_x = -32 - }, -/obj/machinery/light/small, -/turf/open/floor/plasteel/bot, -/area/crew_quarters/toilet{ - name = "\improper Auxiliary Restrooms" - }) -"axj" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/toilet{ - tag = "icon-toilet00 (WEST)"; - icon_state = "toilet00"; - dir = 8 - }, -/obj/machinery/newscaster{ - pixel_x = -32 - }, -/obj/machinery/light/small, -/obj/effect/landmark/start{ - name = "Assistant" - }, -/turf/open/floor/plasteel/bot, -/area/crew_quarters/toilet{ - name = "\improper Auxiliary Restrooms" - }) -"axk" = ( -/obj/machinery/vending/cigarette, -/obj/machinery/light/small, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/crew_quarters/toilet{ - name = "\improper Auxiliary Restrooms" - }) -"axl" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/fore) -"axm" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral/corner{ - dir = 4 - }, -/area/hallway/primary/fore) -"axn" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plating, -/area/quartermaster/sorting{ - name = "\improper Warehouse" - }) -"axo" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/plating, -/area/quartermaster/sorting{ - name = "\improper Warehouse" - }) -"axp" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/quartermaster/sorting{ - name = "\improper Warehouse" - }) -"axq" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/landmark/start{ - name = "Cargo Technician" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/plasteel/neutral, -/area/quartermaster/sorting{ - name = "\improper Warehouse" - }) -"axr" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/landmark{ - name = "blobstart" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/quartermaster/sorting{ - name = "\improper Warehouse" - }) -"axs" = ( -/obj/effect/decal/cleanable/oil, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/quartermaster/sorting{ - name = "\improper Warehouse" - }) -"axt" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/neutral, -/area/quartermaster/sorting{ - name = "\improper Warehouse" - }) -"axu" = ( -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (EAST)"; - icon_state = "brown"; - dir = 4 - }, -/area/quartermaster/sorting{ - name = "\improper Warehouse" - }) -"axv" = ( -/obj/machinery/navbeacon{ - codes_txt = "delivery;dir=4"; - dir = 4; - freq = 1400; - location = "QM #1" - }, -/turf/open/floor/plasteel/delivery, -/area/quartermaster/storage) -"axw" = ( -/obj/structure/window/reinforced{ - dir = 1 - }, -/turf/open/floor/plasteel/loadingarea{ - dir = 4 - }, -/area/quartermaster/storage) -"axx" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/warning/corner{ - dir = 4 - }, -/area/quartermaster/storage) -"axy" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/plasteel/neutral, -/area/quartermaster/storage) -"axz" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral, -/area/quartermaster/storage) -"axA" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/neutral, -/area/quartermaster/storage) -"axB" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/conveyor_switch{ - id = "cargounload" - }, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (EAST)"; - icon_state = "brown"; - dir = 4 - }, -/area/quartermaster/storage) -"axC" = ( -/obj/machinery/conveyor, -/turf/open/floor/plating, -/area/quartermaster/storage) -"axD" = ( -/obj/structure/cable/white, -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/quartermaster/storage) -"axE" = ( -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/structure/sign/vacuum, -/turf/open/floor/plating, -/area/quartermaster/storage) -"axF" = ( -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/structure/cable/white{ - tag = "icon-0-2"; - icon_state = "0-2" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/quartermaster/storage) -"axG" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/shuttle/supply) -"axH" = ( -/turf/open/floor/plasteel/bot, -/area/shuttle/supply) -"axI" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/bot, -/area/shuttle/supply) -"axJ" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/shuttle/supply) -"axK" = ( -/obj/structure/lattice/catwalk, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/space, -/area/solar/auxport) -"axL" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/bot, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"axM" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible{ - dir = 5 - }, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"axN" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/general/visible{ - icon_state = "intact"; - dir = 4 - }, -/obj/machinery/meter, -/turf/open/floor/plasteel/neutral, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"axO" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/general/visible{ - dir = 10 - }, -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"axP" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible{ - icon_state = "intact"; - dir = 5 - }, -/turf/closed/wall/r_wall, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"axQ" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible{ - dir = 10 - }, -/obj/machinery/meter, -/turf/closed/wall/r_wall, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"axR" = ( -/obj/machinery/door/airlock/glass_atmos{ - name = "Supermatter Chamber"; - req_access_txt = "24" - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"axS" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible{ - icon_state = "intact"; - dir = 6 - }, -/obj/machinery/meter, -/turf/closed/wall/r_wall, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"axT" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible{ - dir = 9 - }, -/turf/closed/wall/r_wall, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"axU" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/light{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"axV" = ( -/obj/machinery/atmospherics/pipe/manifold/general/visible{ - dir = 8 - }, -/obj/machinery/meter, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/neutral, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"axW" = ( -/obj/machinery/atmospherics/components/binary/pump{ - dir = 8; - icon_state = "pump_map"; - name = "Nitrogen to Loop" - }, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"axX" = ( -/obj/machinery/atmospherics/pipe/simple/yellow/visible{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/bot, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"axY" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/yellow/visible{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plating, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"axZ" = ( -/obj/structure/lattice/catwalk, -/obj/machinery/atmospherics/pipe/simple/yellow/visible{ - icon_state = "intact"; - dir = 10 - }, -/turf/open/space, -/area/space) -"aya" = ( -/obj/machinery/hydroponics/soil, -/obj/item/seeds/sunflower, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/delivery, -/area/hydroponics{ - name = "Abandoned Garden" - }) -"ayb" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/obj/machinery/light/small{ - dir = 1 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/delivery, -/area/hydroponics{ - name = "Abandoned Garden" - }) -"ayc" = ( -/obj/structure/table, -/obj/item/clothing/suit/apron/overalls, -/obj/item/weapon/cultivator, -/turf/open/floor/plasteel/bot, -/area/hydroponics{ - name = "Abandoned Garden" - }) -"ayd" = ( -/obj/machinery/biogenerator, -/turf/open/floor/plasteel/delivery, -/area/hydroponics{ - name = "Abandoned Garden" - }) -"aye" = ( -/obj/structure/table, -/obj/item/seeds/poppy/lily{ - pixel_x = 4; - pixel_y = 4 - }, -/obj/item/seeds/poppy/geranium, -/obj/effect/decal/cleanable/dirt, -/obj/item/weapon/reagent_containers/food/snacks/grown/wheat, -/obj/item/weapon/reagent_containers/food/snacks/grown/corn, -/obj/item/weapon/reagent_containers/food/snacks/grown/apple, -/turf/open/floor/plasteel/bot, -/area/hydroponics{ - name = "Abandoned Garden" - }) -"ayf" = ( -/obj/machinery/hydroponics/soil, -/obj/item/seeds/tea, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/delivery, -/area/hydroponics{ - name = "Abandoned Garden" - }) -"ayg" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/obj/machinery/status_display{ - pixel_y = 32 - }, -/turf/open/floor/plasteel/delivery, -/area/hydroponics{ - name = "Abandoned Garden" - }) -"ayh" = ( -/obj/structure/table, -/obj/item/stack/packageWrap, -/obj/effect/decal/cleanable/dirt, -/obj/item/weapon/hand_labeler, -/obj/item/weapon/reagent_containers/food/snacks/grown/tea, -/obj/item/weapon/reagent_containers/food/snacks/grown/grapes, -/obj/item/weapon/reagent_containers/food/snacks/grown/cherries, -/turf/open/floor/plasteel/bot, -/area/hydroponics{ - name = "Abandoned Garden" - }) -"ayi" = ( -/obj/machinery/hydroponics/soil, -/obj/item/seeds/poppy, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/delivery, -/area/hydroponics{ - name = "Abandoned Garden" - }) -"ayj" = ( -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"ayk" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHEAST)"; - icon_state = "intact"; - dir = 6 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"ayl" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"aym" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"ayn" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"ayo" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"ayp" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"ayq" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/manifold4w/scrubbers/hidden, -/obj/structure/disposalpipe/junction{ - dir = 8; - icon_state = "pipe-j2" - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 9 - }, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"ayr" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/sortjunction{ - dir = 8; - icon_state = "pipe-j2s"; - name = "Bar Junction"; - sortType = 19 - }, -/turf/open/floor/plasteel/delivery, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"ays" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 1 - }, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"ayt" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/delivery, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"ayu" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/sortjunction{ - dir = 8; - icon_state = "pipe-j1s"; - name = "Custodial Junction"; - sortType = 22 - }, -/turf/open/floor/plasteel/delivery, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"ayv" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/light/small{ - dir = 1 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"ayw" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 1 - }, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"ayx" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 5 - }, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"ayy" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"ayz" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/crew_quarters/toilet{ - name = "\improper Auxiliary Restrooms" - }) -"ayA" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 1 - }, -/area/hallway/primary/fore) -"ayB" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral, -/area/quartermaster/sorting{ - name = "\improper Warehouse" - }) -"ayC" = ( -/turf/open/floor/plating, -/area/quartermaster/sorting{ - name = "\improper Warehouse" - }) -"ayD" = ( -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plasteel/bot, -/area/quartermaster/sorting{ - name = "\improper Warehouse" - }) -"ayE" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral, -/area/quartermaster/sorting{ - name = "\improper Warehouse" - }) -"ayF" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/deadcockroach, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/bot, -/area/quartermaster/sorting{ - name = "\improper Warehouse" - }) -"ayG" = ( -/obj/structure/closet/crate{ - icon_state = "crateopen"; - opened = 1 - }, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 2; - name = "2maintenance loot spawner" - }, -/turf/open/floor/plating, -/area/quartermaster/sorting{ - name = "\improper Warehouse" - }) -"ayH" = ( -/obj/effect/decal/cleanable/dirt, -/obj/item/weapon/storage/box/mousetraps, -/turf/open/floor/plasteel/bot, -/area/quartermaster/sorting{ - name = "\improper Warehouse" - }) -"ayI" = ( -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plasteel/delivery, -/area/quartermaster/sorting{ - name = "\improper Warehouse" - }) -"ayJ" = ( -/obj/structure/plasticflaps{ - opacity = 1 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/delivery, -/area/quartermaster/sorting{ - name = "\improper Warehouse" - }) -"ayK" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/navbeacon{ - codes_txt = "delivery;dir=4"; - dir = 4; - freq = 1400; - location = "QM #2" - }, -/mob/living/simple_animal/bot/mulebot{ - home_destination = "QM #3"; - suffix = "#3" - }, -/turf/open/floor/plasteel/delivery, -/area/quartermaster/storage) -"ayL" = ( -/turf/open/floor/plasteel/loadingarea{ - dir = 4 - }, -/area/quartermaster/storage) -"ayM" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral, -/area/quartermaster/storage) -"ayN" = ( -/obj/effect/decal/cleanable/oil, -/turf/open/floor/plasteel/neutral, -/area/quartermaster/storage) -"ayO" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral, -/area/quartermaster/storage) -"ayP" = ( -/turf/open/floor/plasteel/bot, -/area/quartermaster/storage) -"ayQ" = ( -/obj/structure/closet/crate, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 2; - name = "2maintenance loot spawner" - }, -/turf/open/floor/plasteel/bot, -/area/quartermaster/storage) -"ayR" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plasteel/delivery, -/area/quartermaster/storage) -"ayS" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/quartermaster/storage) -"ayT" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (EAST)"; - icon_state = "brown"; - dir = 4 - }, -/area/quartermaster/storage) -"ayU" = ( -/obj/machinery/conveyor{ - dir = 8; - id = "cargounload" - }, -/obj/machinery/door/poddoor{ - id = "cargounload"; - name = "supply dock unloading door" - }, -/turf/open/floor/plating, -/area/quartermaster/storage) -"ayV" = ( -/obj/machinery/conveyor{ - dir = 8; - id = "cargounload" - }, -/obj/structure/plasticflaps, -/turf/open/floor/plating, -/area/quartermaster/storage) -"ayW" = ( -/obj/machinery/conveyor{ - dir = 8; - id = "cargounload" - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/door/poddoor{ - id = "cargounload"; - name = "supply dock unloading door" - }, -/turf/open/floor/plating, -/area/quartermaster/storage) -"ayX" = ( -/obj/machinery/conveyor{ - dir = 8; - id = "cargounload" - }, -/obj/machinery/door/poddoor{ - id = "cargounload"; - name = "supply dock unloading door" - }, -/turf/open/floor/plating, -/area/shuttle/supply) -"ayY" = ( -/obj/effect/decal/cleanable/oil, -/turf/open/floor/plasteel/bot, -/area/shuttle/supply) -"ayZ" = ( -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/shuttle/supply) -"aza" = ( -/obj/machinery/atmospherics/components/trinary/filter{ - dir = 1; - filter_type = "n2"; - name = "nitogren filter"; - on = 1 - }, -/turf/open/floor/plasteel/yellow, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"azb" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/general/visible{ - dir = 9 - }, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"azc" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible, -/obj/machinery/portable_atmospherics/scrubber, -/turf/open/floor/plasteel/bot, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"azd" = ( -/obj/structure/sign/radiation, -/turf/closed/wall/r_wall, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"aze" = ( -/obj/machinery/atmospherics/components/binary/pump{ - name = "Gas to Filter" - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"azf" = ( -/obj/machinery/atmospherics/components/binary/pump{ - dir = 1; - icon_state = "pump_map"; - name = "Gas to Chamber" - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"azg" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible, -/obj/structure/extinguisher_cabinet{ - pixel_y = 32 - }, -/turf/open/floor/plasteel/bot, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"azh" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/bot, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"azi" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"azj" = ( -/obj/machinery/atmospherics/pipe/manifold/general/visible{ - dir = 8 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/yellow, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"azk" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible{ - icon_state = "intact"; - dir = 4 - }, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"azl" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible{ - icon_state = "connector_map"; - dir = 8 - }, -/obj/machinery/portable_atmospherics/scrubber, -/turf/open/floor/plasteel/escape{ - tag = "icon-escape (EAST)"; - icon_state = "escape"; - dir = 4 - }, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"azm" = ( -/obj/structure/lattice, -/obj/machinery/atmospherics/pipe/simple/yellow/visible, -/turf/open/space, -/area/space) -"azn" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/hydrofloor, -/area/hydroponics{ - name = "Abandoned Garden" - }) -"azo" = ( -/turf/open/floor/plasteel/hydrofloor, -/area/hydroponics{ - name = "Abandoned Garden" - }) -"azp" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHEAST)"; - icon_state = "intact"; - dir = 6 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"azq" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"azr" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"azs" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/closed/wall, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"azt" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"azu" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/delivery, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"azv" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/light/small, -/turf/open/floor/plasteel/neutral/side, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"azw" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"azx" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 8; - heat_capacity = 1e+006 - }, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"azy" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 4 - }, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"azz" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Maintenance Hatch"; - req_access_txt = "12" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"azA" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 1 - }, -/area/hallway/primary/fore) -"azB" = ( -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/fore) -"azC" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 4 - }, -/area/hallway/primary/fore) -"azD" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHEAST)"; - icon_state = "intact"; - dir = 5 - }, -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/turf/open/floor/plating, -/area/quartermaster/sorting{ - name = "\improper Warehouse" - }) -"azE" = ( -/obj/machinery/door/firedoor, -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Warehouse Maintenance"; - req_access_txt = "31" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/quartermaster/sorting{ - name = "\improper Warehouse" - }) -"azF" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/sortjunction{ - dir = 4; - icon_state = "pipe-j1s"; - sortType = 1 - }, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (WEST)"; - icon_state = "brown"; - dir = 8 - }, -/area/quartermaster/sorting{ - name = "\improper Warehouse" - }) -"azG" = ( -/obj/effect/decal/cleanable/oil, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/delivery, -/area/quartermaster/sorting{ - name = "\improper Warehouse" - }) -"azH" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHWEST)"; - icon_state = "intact"; - dir = 9 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/quartermaster/sorting{ - name = "\improper Warehouse" - }) -"azI" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/delivery, -/area/quartermaster/sorting{ - name = "\improper Warehouse" - }) -"azJ" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/bot, -/area/quartermaster/sorting{ - name = "\improper Warehouse" - }) -"azK" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/delivery, -/area/quartermaster/sorting{ - name = "\improper Warehouse" - }) -"azL" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/closet/crate, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 2; - name = "2maintenance loot spawner" - }, -/turf/open/floor/plasteel/bot, -/area/quartermaster/sorting{ - name = "\improper Warehouse" - }) -"azM" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/machinery/power/apc{ - dir = 4; - name = "Cargo Warehouse APC"; - pixel_x = 26; - pixel_y = 0 - }, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (EAST)"; - icon_state = "brown"; - dir = 4 - }, -/area/quartermaster/sorting{ - name = "\improper Warehouse" - }) -"azN" = ( -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/obj/machinery/navbeacon{ - codes_txt = "delivery;dir=4"; - dir = 4; - freq = 1400; - location = "QM #3" - }, -/turf/open/floor/plasteel/delivery, -/area/quartermaster/storage) -"azO" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/loadingarea{ - dir = 4 - }, -/area/quartermaster/storage) -"azP" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/plasteel/neutral, -/area/quartermaster/storage) -"azQ" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/quartermaster/storage) -"azR" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral, -/area/quartermaster/storage) -"azS" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/quartermaster/storage) -"azT" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/neutral, -/area/quartermaster/storage) -"azU" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/door/airlock/external{ - name = "Supply Dock Airlock"; - req_access_txt = "31" - }, -/turf/open/floor/plasteel/warning/side, -/area/quartermaster/storage) -"azV" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (EAST)"; - icon_state = "plasteel_warn_side"; - dir = 4 - }, -/area/quartermaster/storage) -"azW" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/door/airlock/external{ - name = "Supply Dock Airlock"; - req_access_txt = "31" - }, -/turf/open/floor/plasteel/warning/side, -/area/quartermaster/storage) -"azX" = ( -/obj/machinery/door/airlock/shuttle{ - name = "Supply Shuttle Airlock"; - req_access_txt = "31" - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/shuttle/supply) -"azY" = ( -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/shuttle/supply) -"azZ" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"aAa" = ( -/obj/machinery/atmospherics/components/binary/pump{ - dir = 1; - icon_state = "pump_map"; - name = "Gas to Thermo" - }, -/turf/open/floor/plasteel/neutral, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"aAb" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - dir = 5 - }, -/obj/item/weapon/wrench, -/turf/open/floor/plasteel/bot, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"aAc" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/visible{ - tag = "icon-manifold (EAST)"; - name = "scrubbers pipe"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plasteel/bot, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"aAd" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible, -/turf/closed/wall/r_wall, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"aAe" = ( -/obj/machinery/atmospherics/components/binary/pump, -/turf/open/floor/plasteel/bot, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"aAf" = ( -/obj/machinery/atmospherics/components/binary/pump{ - name = "External Gas to Loop" - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/bot, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"aAg" = ( -/obj/machinery/atmospherics/pipe/manifold/general/visible{ - dir = 8 - }, -/turf/open/floor/plasteel/neutral, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"aAh" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible{ - icon_state = "intact"; - dir = 4 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"aAi" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible{ - icon_state = "connector_map"; - dir = 8 - }, -/obj/machinery/portable_atmospherics/pump, -/turf/open/floor/plasteel/arrival{ - dir = 4 - }, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"aAj" = ( -/obj/structure/lattice/catwalk, -/obj/machinery/atmospherics/pipe/simple/yellow/visible, -/turf/open/space, -/area/space) -"aAk" = ( -/obj/structure/sink{ - icon_state = "sink"; - dir = 8; - pixel_x = -12; - pixel_y = 2 - }, -/obj/structure/sign/nosmoking_2{ - pixel_x = -32 - }, -/turf/open/floor/plasteel/bot, -/area/hydroponics{ - name = "Abandoned Garden" - }) -"aAl" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 2; - on = 1 - }, -/turf/open/floor/plasteel/hydrofloor, -/area/hydroponics{ - name = "Abandoned Garden" - }) -"aAm" = ( -/obj/structure/sink{ - dir = 4; - pixel_x = 11 - }, -/obj/structure/sign/botany{ - pixel_x = 32 - }, -/turf/open/floor/plasteel/bot, -/area/hydroponics{ - name = "Abandoned Garden" - }) -"aAn" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral/side{ - dir = 8 - }, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"aAo" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall, -/area/crew_quarters/sleep{ - name = "Service Hall" - }) -"aAp" = ( -/obj/structure/table/wood, -/obj/item/weapon/paper_bin, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/sleep{ - name = "Service Hall" - }) -"aAq" = ( -/obj/structure/closet/secure_closet/personal/cabinet, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/sleep{ - name = "Service Hall" - }) -"aAr" = ( -/obj/structure/bed, -/obj/machinery/status_display{ - pixel_y = 32 - }, -/obj/item/weapon/bedsheet/rainbow, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/sleep{ - name = "Service Hall" - }) -"aAs" = ( -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/sleep{ - name = "Service Hall" - }) -"aAt" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1 - }, -/obj/structure/sign/nanotrasen{ - pixel_x = 32 - }, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/sleep{ - name = "Service Hall" - }) -"aAu" = ( -/turf/closed/wall, -/area/crew_quarters/sleep{ - name = "Service Hall" - }) -"aAv" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/disposalpipe/segment, -/turf/closed/wall, -/area/crew_quarters/sleep{ - name = "Service Hall" - }) -"aAw" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Maintenance Hatch"; - req_access_txt = "12" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/crew_quarters/sleep{ - name = "Service Hall" - }) -"aAx" = ( -/turf/closed/wall, -/area/crew_quarters/bar) -"aAy" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 1 - }, -/area/hallway/primary/fore) -"aAz" = ( -/obj/structure/extinguisher_cabinet{ - pixel_x = 26 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral/corner{ - dir = 4 - }, -/area/hallway/primary/fore) -"aAA" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/closet/firecloset, -/turf/open/floor/plasteel/brown, -/area/quartermaster/sorting{ - name = "\improper Warehouse" - }) -"aAB" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plating, -/area/quartermaster/sorting{ - name = "\improper Warehouse" - }) -"aAC" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/brown, -/area/quartermaster/sorting{ - name = "\improper Warehouse" - }) -"aAD" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHEAST)"; - icon_state = "intact"; - dir = 6 - }, -/turf/open/floor/plasteel/brown, -/area/quartermaster/sorting{ - name = "\improper Warehouse" - }) -"aAE" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHWEST)"; - icon_state = "intact"; - dir = 9 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plating, -/area/quartermaster/sorting{ - name = "\improper Warehouse" - }) -"aAF" = ( -/obj/machinery/light/small, -/turf/open/floor/plating, -/area/quartermaster/sorting{ - name = "\improper Warehouse" - }) -"aAG" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/brown, -/area/quartermaster/sorting{ - name = "\improper Warehouse" - }) -"aAH" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/brown, -/area/quartermaster/sorting{ - name = "\improper Warehouse" - }) -"aAI" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (SOUTHEAST)"; - icon_state = "brown"; - dir = 6 - }, -/area/quartermaster/sorting{ - name = "\improper Warehouse" - }) -"aAJ" = ( -/obj/machinery/camera{ - c_tag = "Cargo Bay - Port"; - dir = 4; - name = "cargo camera" - }, -/obj/machinery/navbeacon{ - codes_txt = "delivery;dir=4"; - dir = 4; - freq = 1400; - location = "QM #4" - }, -/mob/living/simple_animal/bot/mulebot{ - beacon_freq = 1400; - home_destination = "QM #1"; - suffix = "#1" - }, -/turf/open/floor/plasteel/delivery, -/area/quartermaster/storage) -"aAK" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/window/reinforced, -/turf/open/floor/plasteel/loadingarea{ - dir = 4 - }, -/area/quartermaster/storage) -"aAL" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/warning/corner{ - dir = 1 - }, -/area/quartermaster/storage) -"aAM" = ( -/obj/structure/closet/cardboard, -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plasteel/bot, -/area/quartermaster/storage) -"aAN" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/landmark/start{ - name = "Cargo Technician" - }, -/turf/open/floor/plasteel/bot, -/area/quartermaster/storage) -"aAO" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plasteel/bot, -/area/quartermaster/storage) -"aAP" = ( -/turf/open/floor/plasteel/delivery, -/area/quartermaster/storage) -"aAQ" = ( -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (EAST)"; - icon_state = "brown"; - dir = 4 - }, -/area/quartermaster/storage) -"aAR" = ( -/obj/machinery/button/door{ - dir = 2; - id = "cargounload"; - layer = 4; - name = "Loading Doors"; - pixel_x = 24; - pixel_y = 8 - }, -/obj/machinery/button/door{ - id = "cargoload"; - layer = 4; - name = "Loading Doors"; - pixel_x = 24; - pixel_y = -8 - }, -/obj/machinery/computer/cargo, -/obj/machinery/camera{ - c_tag = "Cargo Bay - Starboard"; - dir = 8; - name = "cargo camera" - }, -/turf/open/floor/plasteel/bot, -/area/quartermaster/storage) -"aAS" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/quartermaster/storage) -"aAT" = ( -/obj/structure/cable/white{ - d2 = 2; - icon_state = "0-2"; - tag = "icon-0-2" - }, -/obj/structure/cable/white, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/quartermaster/storage) -"aAU" = ( -/obj/machinery/button/door{ - dir = 2; - id = "cargounload"; - name = "Loading Doors"; - pixel_x = -24; - pixel_y = 8 - }, -/obj/machinery/button/door{ - id = "cargoload"; - name = "Loading Doors"; - pixel_x = -24; - pixel_y = -8 - }, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/shuttle/supply) -"aAV" = ( -/obj/machinery/atmospherics/components/binary/pump{ - dir = 8; - name = "Gas to Cooling Loop"; - on = 1 - }, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"aAW" = ( -/obj/machinery/atmospherics/pipe/manifold/general/visible, -/obj/machinery/meter, -/turf/open/floor/plasteel/yellow, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"aAX" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/simple/general/visible{ - icon_state = "intact"; - dir = 4 - }, -/turf/open/floor/plasteel/warning/corner{ - dir = 8 - }, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"aAY" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"aAZ" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/structure/sign/fire{ - pixel_x = 32; - pixel_y = 32 - }, -/obj/machinery/atmospherics/components/trinary/filter{ - density = 0; - dir = 8; - req_access = "0" - }, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"aBa" = ( -/obj/machinery/atmospherics/pipe/manifold/general/visible, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/button/door{ - id = "engsm"; - name = "Radiation Shutters Control"; - pixel_y = 24; - req_access_txt = "24" - }, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"aBb" = ( -/obj/machinery/atmospherics/components/binary/pump{ - dir = 8; - name = "Gas to Filter"; - on = 1 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"aBc" = ( -/obj/machinery/atmospherics/pipe/manifold/general/visible, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/camera{ - c_tag = "Atmospherics - Engine Aft"; - name = "atmospherics camera" - }, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"aBd" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/airalarm{ - pixel_y = 23 - }, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"aBe" = ( -/obj/machinery/atmospherics/pipe/manifold/general/visible, -/obj/machinery/meter, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"aBf" = ( -/obj/machinery/atmospherics/pipe/manifold/general/visible, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"aBg" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/warning/corner{ - dir = 4 - }, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"aBh" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible{ - dir = 9 - }, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/turf/open/floor/plasteel/yellow, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"aBi" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"aBj" = ( -/obj/machinery/power/apc{ - dir = 4; - name = "Atmospherics Engine APC"; - pixel_x = 26; - pixel_y = 0 - }, -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/turf/open/floor/plasteel/delivery, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"aBk" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/turf/open/floor/plasteel/hydrofloor, -/area/hydroponics{ - name = "Abandoned Garden" - }) -"aBl" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/hydrofloor, -/area/hydroponics{ - name = "Abandoned Garden" - }) -"aBm" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/hydrofloor, -/area/hydroponics{ - name = "Abandoned Garden" - }) -"aBn" = ( -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/turf/open/floor/plasteel/hydrofloor, -/area/hydroponics{ - name = "Abandoned Garden" - }) -"aBo" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"aBp" = ( -/obj/structure/table/wood, -/obj/item/weapon/folder, -/obj/item/weapon/pen, -/obj/machinery/newscaster{ - pixel_x = -32 - }, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/sleep{ - name = "Service Hall" - }) -"aBq" = ( -/obj/structure/chair/office/dark{ - dir = 8 - }, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/sleep{ - name = "Service Hall" - }) -"aBr" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/sleep{ - name = "Service Hall" - }) -"aBs" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/sleep{ - name = "Service Hall" - }) -"aBt" = ( -/obj/machinery/door/airlock{ - name = "Cabin A"; - req_access_txt = "25" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/sleep{ - name = "Service Hall" - }) -"aBu" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/light/small{ - dir = 1 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral/corner{ - dir = 1 - }, -/area/crew_quarters/sleep{ - name = "Service Hall" - }) -"aBv" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 4 - }, -/area/crew_quarters/sleep{ - name = "Service Hall" - }) -"aBw" = ( -/obj/structure/table/wood, -/obj/structure/reagent_dispensers/beerkeg, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = 0; - pixel_y = 26 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/crew_quarters/bar) -"aBx" = ( -/obj/structure/closet/secure_closet/bar, -/obj/machinery/power/apc{ - cell_type = 5000; - dir = 1; - name = "Bar APC"; - pixel_x = 0; - pixel_y = 25 - }, -/obj/machinery/light/small{ - dir = 1 - }, -/obj/structure/cable/white{ - tag = "icon-0-2"; - icon_state = "0-2" - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/bar) -"aBy" = ( -/obj/structure/sink/kitchen{ - desc = "A sink used for washing one's hands and face. It looks rusty and home-made"; - name = "sink"; - pixel_y = 28 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 2; - on = 1; - scrub_N2O = 1; - scrub_Toxins = 1 - }, -/obj/machinery/camera{ - c_tag = "Bar Backroom"; - dir = 2; - name = "service camera" - }, -/turf/open/floor/plasteel/black, -/area/crew_quarters/bar) -"aBz" = ( -/obj/structure/closet/secure_closet/bar, -/obj/machinery/status_display{ - pixel_y = 32 - }, -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/bar) -"aBA" = ( -/obj/structure/table/wood, -/obj/machinery/light_switch{ - pixel_x = 26; - pixel_y = 26 - }, -/obj/structure/extinguisher_cabinet{ - pixel_y = 32 - }, -/obj/item/weapon/storage/box/beanbag, -/turf/open/floor/plasteel/black, -/area/crew_quarters/bar) -"aBB" = ( -/obj/structure/sign/poster, -/turf/closed/wall, -/area/crew_quarters/bar) -"aBC" = ( -/obj/structure/table/wood, -/obj/structure/sign/barsign{ - pixel_y = 32 - }, -/obj/machinery/chem_dispenser/drinks, -/turf/open/floor/plasteel/black, -/area/crew_quarters/bar) -"aBD" = ( -/obj/structure/table/wood, -/obj/machinery/chem_dispenser/drinks/beer, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/bar) -"aBE" = ( -/obj/machinery/vending/boozeomat, -/obj/machinery/status_display{ - pixel_y = 32 - }, -/turf/open/floor/plasteel/black, -/area/crew_quarters/bar) -"aBF" = ( -/obj/structure/table/wood, -/obj/machinery/light{ - dir = 1 - }, -/obj/machinery/requests_console{ - department = "Bar Counter"; - departmentType = 0; - name = "Bar RC"; - pixel_x = 0; - pixel_y = 32 - }, -/obj/item/weapon/book/manual/barman_recipes, -/obj/item/weapon/reagent_containers/food/drinks/shaker, -/obj/item/weapon/reagent_containers/glass/rag, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/bar) -"aBG" = ( -/obj/structure/table/wood, -/obj/machinery/status_display{ - pixel_y = 32 - }, -/obj/item/weapon/clipboard, -/obj/item/toy/figure/bartender, -/turf/open/floor/plasteel/black, -/area/crew_quarters/bar) -"aBH" = ( -/obj/structure/table/wood, -/obj/item/weapon/storage/fancy/cigarettes/cigars{ - pixel_y = 6 - }, -/obj/item/weapon/storage/fancy/cigarettes/cigars/cohiba{ - pixel_y = 3 - }, -/obj/item/weapon/storage/fancy/cigarettes/cigars/havana, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = 0; - pixel_y = 26 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/bar) -"aBI" = ( -/obj/machinery/disposal/bin, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/crew_quarters/bar) -"aBJ" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/machinery/power/apc{ - dir = 8; - name = "Port Primary Hallway APC"; - pixel_x = -26; - pixel_y = 3 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 1 - }, -/area/hallway/primary/fore) -"aBK" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/fore) -"aBL" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/airalarm{ - dir = 8; - icon_state = "alarm0"; - pixel_x = 24 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 4 - }, -/area/hallway/primary/fore) -"aBM" = ( -/turf/closed/wall, -/area/quartermaster/office{ - name = "\improper Cargo Office" - }) -"aBN" = ( -/obj/structure/disposalpipe/segment, -/turf/closed/wall, -/area/quartermaster/office{ - name = "\improper Cargo Office" - }) -"aBO" = ( -/obj/machinery/door/firedoor, -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/door/airlock/mining{ - name = "Cargo Warehouse"; - req_access_txt = "31" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (EAST)"; - icon_state = "plasteel_warn_side"; - dir = 4 - }, -/area/quartermaster/office{ - name = "\improper Cargo Office" - }) -"aBP" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall, -/area/quartermaster/office{ - name = "\improper Cargo Office" - }) -"aBQ" = ( -/turf/closed/wall, -/area/security/checkpoint/supply{ - name = "Security Post - Cargo" - }) -"aBR" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/warning/corner{ - dir = 4 - }, -/area/quartermaster/storage) -"aBS" = ( -/obj/machinery/door/airlock/external{ - name = "Supply Dock Airlock"; - req_access_txt = "31" - }, -/turf/open/floor/plasteel/warning/side, -/area/quartermaster/storage) -"aBT" = ( -/obj/docking_port/mobile/supply{ - dwidth = 5; - roundstart_move = "supply_away"; - width = 12 - }, -/obj/docking_port/stationary{ - dir = 8; - dwidth = 5; - height = 7; - id = "supply_home"; - name = "Cargo Bay"; - width = 12 - }, -/turf/closed/wall/mineral/titanium, -/area/shuttle/supply) -"aBU" = ( -/turf/closed/wall/r_wall, -/area/security/prison) -"aBV" = ( -/obj/structure/cable/white{ - d2 = 2; - icon_state = "0-2"; - tag = "icon-0-2" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/prison) -"aBW" = ( -/obj/structure/lattice, -/obj/structure/grille/broken, -/turf/open/space, -/area/space) -"aBX" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/maintenance/auxsolarport) -"aBY" = ( -/turf/closed/wall/r_wall, -/area/maintenance/auxsolarport) -"aBZ" = ( -/turf/closed/wall/r_wall, -/area/maintenance/incinerator) -"aCa" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/maintenance/incinerator) -"aCb" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/tank/internals/plasma, -/obj/machinery/light/small, -/obj/structure/extinguisher_cabinet{ - pixel_x = -26 - }, -/obj/structure/sign/nosmoking_2{ - pixel_y = -32 - }, -/turf/open/floor/plasteel/bot, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"aCc" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning{ - dir = 10 - }, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"aCd" = ( -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = -28; - pixel_y = -28 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHWEST)"; - icon_state = "intact"; - dir = 10 - }, -/turf/open/floor/plasteel/warning/corner{ - dir = 1 - }, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"aCe" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/yellow, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"aCf" = ( -/turf/open/floor/plasteel/neutral, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"aCg" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHEAST)"; - icon_state = "intact"; - dir = 6 - }, -/turf/open/floor/plasteel/yellow, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"aCh" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plasteel/yellow, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"aCi" = ( -/obj/machinery/holopad, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/bot, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"aCj" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 2; - on = 1 - }, -/turf/open/floor/plasteel/yellow, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"aCk" = ( -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"aCl" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHWEST)"; - icon_state = "intact"; - dir = 9 - }, -/turf/open/floor/plasteel/yellow, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"aCm" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/turf/open/floor/plasteel/warning/corner, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"aCn" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/turf/open/floor/plasteel/warning{ - dir = 6 - }, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"aCo" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/crowbar/red, -/obj/item/weapon/wrench, -/obj/item/clothing/mask/gas, -/obj/machinery/light/small, -/turf/open/floor/plasteel/bot, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"aCp" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/delivery, -/area/hydroponics{ - name = "Abandoned Garden" - }) -"aCq" = ( -/obj/machinery/hydroponics/soil, -/obj/item/seeds/harebell, -/obj/machinery/light/small, -/turf/open/floor/plasteel/delivery, -/area/hydroponics{ - name = "Abandoned Garden" - }) -"aCr" = ( -/obj/structure/table, -/obj/item/weapon/shovel/spade, -/obj/item/weapon/reagent_containers/glass/bottle/nutrient/rh{ - pixel_x = 5 - }, -/obj/item/weapon/reagent_containers/glass/bottle/nutrient/ez{ - pixel_x = -5 - }, -/obj/item/weapon/reagent_containers/syringe, -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white, -/obj/machinery/power/apc{ - dir = 2; - name = "Abandoned Garden APC"; - pixel_y = -26 - }, -/turf/open/floor/plasteel/bot, -/area/hydroponics{ - name = "Abandoned Garden" - }) -"aCs" = ( -/obj/machinery/seed_extractor, -/obj/machinery/status_display{ - pixel_y = -32 - }, -/obj/item/weapon/reagent_containers/glass/bucket, -/turf/open/floor/plasteel/delivery, -/area/hydroponics{ - name = "Abandoned Garden" - }) -"aCt" = ( -/obj/structure/table, -/obj/item/device/plant_analyzer, -/obj/item/weapon/hatchet, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/bot, -/area/hydroponics{ - name = "Abandoned Garden" - }) -"aCu" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/delivery, -/area/hydroponics{ - name = "Abandoned Garden" - }) -"aCv" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/delivery, -/area/hydroponics{ - name = "Abandoned Garden" - }) -"aCw" = ( -/obj/structure/table, -/obj/item/weapon/crowbar, -/obj/item/weapon/wrench, -/obj/item/weapon/reagent_containers/glass/bucket, -/turf/open/floor/plasteel/bot, -/area/hydroponics{ - name = "Abandoned Garden" - }) -"aCx" = ( -/obj/machinery/hydroponics/soil, -/obj/item/seeds/tower, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/light/small, -/turf/open/floor/plasteel/delivery, -/area/hydroponics{ - name = "Abandoned Garden" - }) -"aCy" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"aCz" = ( -/obj/structure/table/wood, -/obj/item/device/flashlight/lamp, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/sleep{ - name = "Service Hall" - }) -"aCA" = ( -/obj/structure/table/wood, -/obj/item/device/paicard, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/sleep{ - name = "Service Hall" - }) -"aCB" = ( -/obj/machinery/light, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/sleep{ - name = "Service Hall" - }) -"aCC" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/sleep{ - name = "Service Hall" - }) -"aCD" = ( -/obj/structure/dresser, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/sleep{ - name = "Service Hall" - }) -"aCE" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/crew_quarters/sleep{ - name = "Service Hall" - }) -"aCF" = ( -/obj/machinery/atmospherics/pipe/manifold4w/scrubbers/hidden, -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 1 - }, -/area/crew_quarters/sleep{ - name = "Service Hall" - }) -"aCG" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/delivery, -/area/crew_quarters/sleep{ - name = "Service Hall" - }) -"aCH" = ( -/obj/structure/plasticflaps{ - opacity = 1 - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/navbeacon{ - codes_txt = "delivery;dir=4"; - dir = 4; - freq = 1400; - location = "Bar" - }, -/turf/open/floor/plasteel/delivery, -/area/crew_quarters/bar) -"aCI" = ( -/obj/machinery/firealarm{ - dir = 8; - pixel_x = -24; - pixel_y = 32 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/delivery, -/area/crew_quarters/bar) -"aCJ" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/bar) -"aCK" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/bar) -"aCL" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/bar) -"aCM" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/bar) -"aCN" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock{ - name = "Bar Backroom"; - req_access_txt = "25" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/crew_quarters/bar) -"aCO" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/crew_quarters/bar) -"aCP" = ( -/obj/machinery/holopad, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/crew_quarters/bar) -"aCQ" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_Toxins = 0 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/crew_quarters/bar) -"aCR" = ( -/obj/machinery/newscaster{ - pixel_x = 32 - }, -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/bar) -"aCS" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/delivery, -/area/hallway/primary/fore) -"aCT" = ( -/obj/structure/plasticflaps{ - opacity = 1 - }, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/delivery, -/area/quartermaster/office{ - name = "\improper Cargo Office" - }) -"aCU" = ( -/turf/open/floor/plating, -/area/quartermaster/office{ - name = "\improper Cargo Office" - }) -"aCV" = ( -/turf/open/floor/plasteel/delivery, -/area/quartermaster/office{ - name = "\improper Cargo Office" - }) -"aCW" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/disposalpipe/trunk{ - tag = "icon-pipe-t (NORTH)"; - icon_state = "pipe-t"; - dir = 1 - }, -/obj/structure/disposaloutlet, -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/structure/window/reinforced{ - dir = 4 - }, -/turf/open/floor/plasteel/delivery, -/area/quartermaster/office{ - name = "\improper Cargo Office" - }) -"aCX" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/quartermaster/office{ - name = "\improper Cargo Office" - }) -"aCY" = ( -/obj/structure/window/reinforced{ - dir = 4 - }, -/obj/machinery/light{ - dir = 1 - }, -/obj/structure/extinguisher_cabinet{ - pixel_y = 32 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/warning{ - dir = 5 - }, -/area/quartermaster/office{ - name = "\improper Cargo Office" - }) -"aCZ" = ( -/obj/structure/disposalpipe/trunk{ - tag = "icon-pipe-t (NORTH)"; - icon_state = "pipe-t"; - dir = 1 - }, -/obj/structure/disposaloutlet, -/turf/open/floor/plating, -/area/quartermaster/office{ - name = "\improper Cargo Office" - }) -"aDa" = ( -/obj/machinery/status_display{ - pixel_y = 32 - }, -/obj/structure/reagent_dispensers/peppertank{ - pixel_x = -32 - }, -/obj/structure/table/reinforced, -/obj/item/weapon/book/manual/wiki/security_space_law, -/obj/item/device/radio, -/obj/machinery/button/door{ - desc = "A remote control switch."; - id = "cardoor"; - name = "Cargo Cell Control"; - normaldoorcontrol = 1; - pixel_x = -36; - pixel_y = -7 - }, -/turf/open/floor/plasteel/red/side{ - dir = 9 - }, -/area/security/checkpoint/supply{ - name = "Security Post - Cargo" - }) -"aDb" = ( -/obj/structure/table/reinforced, -/obj/machinery/recharger, -/obj/machinery/light{ - dir = 1 - }, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = 0; - pixel_y = 26 - }, -/turf/open/floor/plasteel/red/side{ - dir = 1 - }, -/area/security/checkpoint/supply{ - name = "Security Post - Cargo" - }) -"aDc" = ( -/obj/machinery/ai_status_display{ - pixel_y = 32 - }, -/obj/machinery/firealarm{ - dir = 4; - icon_state = "fire0"; - pixel_x = 24; - pixel_y = 0; - tag = "icon-fire0 (EAST)" - }, -/obj/machinery/light_switch{ - pixel_x = 38 - }, -/obj/structure/extinguisher_cabinet{ - pixel_x = 26; - pixel_y = 32 - }, -/turf/open/floor/plasteel/red/side{ - dir = 5 - }, -/area/security/checkpoint/supply{ - name = "Security Post - Cargo" - }) -"aDd" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/red/corner{ - dir = 8 - }, -/area/quartermaster/storage) -"aDe" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral, -/area/quartermaster/storage) -"aDf" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/bot, -/area/quartermaster/storage) -"aDg" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/closet/crate, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 3; - name = "3maintenance loot spawner" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/delivery, -/area/quartermaster/storage) -"aDh" = ( -/obj/item/clothing/suit/hazardvest{ - desc = "A high-visibility lifejacket complete with whistle and slot for oxygen tanks."; - name = "emergency lifejacket" - }, -/obj/item/clothing/suit/hazardvest{ - desc = "A high-visibility lifejacket complete with whistle and slot for oxygen tanks."; - name = "emergency lifejacket" - }, -/obj/item/clothing/suit/hazardvest{ - desc = "A high-visibility lifejacket complete with whistle and slot for oxygen tanks."; - name = "emergency lifejacket" - }, -/obj/item/clothing/suit/hazardvest{ - desc = "A high-visibility lifejacket complete with whistle and slot for oxygen tanks."; - name = "emergency lifejacket" - }, -/obj/item/clothing/suit/hazardvest{ - desc = "A high-visibility lifejacket complete with whistle and slot for oxygen tanks."; - name = "emergency lifejacket" - }, -/obj/item/weapon/tank/internals/emergency_oxygen/double{ - pixel_x = 3 - }, -/obj/item/weapon/tank/internals/emergency_oxygen/double{ - pixel_x = 3 - }, -/obj/item/weapon/tank/internals/emergency_oxygen/double{ - pixel_x = 3 - }, -/obj/item/weapon/tank/internals/emergency_oxygen/double{ - pixel_x = 3 - }, -/obj/item/weapon/tank/internals/emergency_oxygen/double{ - pixel_x = 3 - }, -/obj/item/clothing/mask/breath{ - pixel_x = -3; - pixel_y = -3 - }, -/obj/item/clothing/mask/breath{ - pixel_x = -3; - pixel_y = -3 - }, -/obj/item/clothing/mask/breath{ - pixel_x = -3; - pixel_y = -3 - }, -/obj/item/clothing/mask/breath{ - pixel_x = -3; - pixel_y = -3 - }, -/obj/item/clothing/mask/breath{ - pixel_x = -3; - pixel_y = -3 - }, -/obj/item/clothing/head/hardhat/orange{ - name = "protective hat"; - pixel_y = 9 - }, -/obj/item/clothing/head/hardhat/orange{ - name = "protective hat"; - pixel_y = 9 - }, -/obj/item/clothing/head/hardhat/orange{ - name = "protective hat"; - pixel_y = 9 - }, -/obj/item/clothing/head/hardhat/orange{ - name = "protective hat"; - pixel_y = 9 - }, -/obj/item/clothing/head/hardhat/orange{ - name = "protective hat"; - pixel_y = 9 - }, -/obj/structure/closet/crate/internals, -/turf/open/floor/plasteel/bot, -/area/quartermaster/storage) -"aDi" = ( -/obj/machinery/conveyor{ - dir = 4; - id = "cargoload" - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/quartermaster/storage) -"aDj" = ( -/obj/machinery/conveyor{ - dir = 4; - id = "cargoload" - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/door/poddoor{ - id = "cargoload"; - name = "supply dock loading door" - }, -/turf/open/floor/plating, -/area/quartermaster/storage) -"aDk" = ( -/obj/machinery/conveyor{ - dir = 4; - id = "cargoload" - }, -/obj/structure/plasticflaps, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/quartermaster/storage) -"aDl" = ( -/obj/machinery/conveyor{ - dir = 4; - id = "cargoload" - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/door/poddoor{ - id = "cargoload"; - name = "supply dock loading door" - }, -/turf/open/floor/plating, -/area/quartermaster/storage) -"aDm" = ( -/obj/machinery/door/poddoor{ - id = "cargoload"; - name = "supply dock loading door" - }, -/obj/machinery/conveyor{ - dir = 4; - id = "cargoload" - }, -/turf/open/floor/plating, -/area/shuttle/supply) -"aDn" = ( -/obj/machinery/hydroponics/constructable, -/obj/machinery/light/small{ - dir = 8 - }, -/obj/item/seeds/carrot, -/obj/structure/sign/electricshock{ - pixel_y = 32 - }, -/turf/open/floor/plasteel/red/corner{ - dir = 1 - }, -/area/security/prison) -"aDo" = ( -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/item/weapon/cultivator, -/turf/open/floor/plasteel/neutral/corner{ - dir = 1 - }, -/area/security/prison) -"aDp" = ( -/obj/structure/sink/kitchen{ - desc = "A sink used for washing one's hands and face. It looks rusty and home-made"; - name = "old sink"; - pixel_y = 28 - }, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/camera{ - c_tag = "Prison - Garden"; - dir = 2; - name = "prison camera"; - network = list("SS13","prison") - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 1 - }, -/area/security/prison) -"aDq" = ( -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/item/weapon/reagent_containers/glass/bucket, -/obj/effect/decal/cleanable/dirt, -/mob/living/simple_animal/mouse, -/turf/open/floor/plasteel/neutral/corner{ - dir = 4 - }, -/area/security/prison) -"aDr" = ( -/obj/machinery/hydroponics/constructable, -/obj/machinery/light/small{ - dir = 4 - }, -/obj/item/seeds/tower, -/obj/item/seeds/amanita{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/structure/sign/electricshock{ - pixel_x = 0; - pixel_y = 32 - }, -/obj/effect/decal/cleanable/cobweb/cobweb2, -/turf/open/floor/plating, -/area/security/prison) -"aDs" = ( -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_y = 26 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating/warnplate{ - dir = 9 - }, -/area/maintenance/auxsolarport) -"aDt" = ( -/obj/machinery/power/smes, -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/plating/warnplate{ - dir = 1 - }, -/area/maintenance/auxsolarport) -"aDu" = ( -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/structure/sign/directions/engineering{ - desc = "A sign that shows there are doors here. There are doors everywhere!"; - icon_state = "doors"; - name = "WARNING: EXTERNAL AIRLOCK"; - pixel_x = 32; - tag = "icon-doors" - }, -/obj/machinery/camera{ - c_tag = "Solar - Fore Port"; - name = "solar camera" - }, -/turf/open/floor/plating/warnplate{ - dir = 5 - }, -/area/maintenance/auxsolarport) -"aDv" = ( -/obj/machinery/disposal/bin, -/obj/structure/sign/deathsposal{ - pixel_y = 32 - }, -/obj/structure/disposalpipe/trunk{ - dir = 4 - }, -/turf/open/floor/plasteel/vault, -/area/maintenance/incinerator) -"aDw" = ( -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/vault, -/area/maintenance/incinerator) -"aDx" = ( -/obj/machinery/atmospherics/components/unary/tank/toxins, -/obj/structure/sign/nosmoking_2{ - pixel_y = 32 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/vault, -/area/maintenance/incinerator) -"aDy" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible, -/obj/machinery/light{ - dir = 1 - }, -/obj/machinery/airalarm{ - pixel_y = 23 - }, -/obj/machinery/portable_atmospherics/canister/oxygen, -/turf/open/floor/plasteel/vault, -/area/maintenance/incinerator) -"aDz" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible, -/obj/structure/extinguisher_cabinet{ - pixel_y = 32 - }, -/obj/machinery/portable_atmospherics/canister, -/obj/machinery/camera{ - c_tag = "Atmospherics - Incinerator"; - name = "atmospherics camera" - }, -/turf/open/floor/plasteel/vault, -/area/maintenance/incinerator) -"aDA" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible{ - dir = 6 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/vault, -/area/maintenance/incinerator) -"aDB" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible{ - dir = 10 - }, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/turf/open/floor/plasteel/vault, -/area/maintenance/incinerator) -"aDC" = ( -/obj/machinery/power/smes{ - charge = 1e+006 - }, -/obj/structure/sign/electricshock{ - pixel_y = 32 - }, -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/turf/open/floor/plasteel/vault, -/area/maintenance/incinerator) -"aDD" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 5 - }, -/turf/open/floor/plasteel/warning{ - dir = 10 - }, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"aDE" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plasteel/warning, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"aDF" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"aDG" = ( -/obj/machinery/status_display{ - pixel_y = -32 - }, -/obj/machinery/light, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/warning, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"aDH" = ( -/obj/machinery/firealarm{ - dir = 1; - pixel_x = 0; - pixel_y = -24 - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"aDI" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/warning/corner{ - dir = 1 - }, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"aDJ" = ( -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"aDK" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plasteel/warning/corner, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"aDL" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/light_switch{ - pixel_y = -26 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"aDM" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/sign/electricshock{ - pixel_y = -32 - }, -/obj/machinery/light, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/open/floor/plasteel/warning, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"aDN" = ( -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"aDO" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"aDP" = ( -/obj/effect/decal/cleanable/dirt, -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHWEST)"; - icon_state = "intact"; - dir = 10 - }, -/turf/open/floor/plasteel/warning{ - dir = 6 - }, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"aDQ" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/structure/barricade/wooden, -/turf/open/floor/plating, -/area/hydroponics{ - name = "Abandoned Garden" - }) -"aDR" = ( -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Maintenance Hatch"; - req_access_txt = "12" - }, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/barricade/wooden, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/hydroponics{ - name = "Abandoned Garden" - }) -"aDS" = ( -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Maintenance Hatch"; - req_access_txt = "12" - }, -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/barricade/wooden, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/hydroponics{ - name = "Abandoned Garden" - }) -"aDT" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral/side, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"aDU" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/obj/machinery/newscaster{ - pixel_x = -32 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/camera{ - c_tag = "Service Hallway - Fore"; - dir = 4; - name = "hallway camera" - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 1 - }, -/area/crew_quarters/sleep{ - name = "Service Hall" - }) -"aDV" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/bot, -/area/crew_quarters/sleep{ - name = "Service Hall" - }) -"aDW" = ( -/obj/machinery/door/firedoor, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/door/airlock{ - name = "Bar Backroom"; - req_access_txt = "25" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/crew_quarters/bar) -"aDX" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/delivery, -/area/crew_quarters/bar) -"aDY" = ( -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/bar) -"aDZ" = ( -/obj/effect/landmark/start{ - name = "Bartender" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/bar) -"aEa" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/bar) -"aEb" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/crew_quarters/bar) -"aEc" = ( -/obj/structure/sign/poster, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/crew_quarters/bar) -"aEd" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/crew_quarters/bar) -"aEe" = ( -/obj/effect/landmark/start{ - name = "Bartender" - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/bar) -"aEf" = ( -/turf/open/floor/plasteel/black, -/area/crew_quarters/bar) -"aEg" = ( -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/bar) -"aEh" = ( -/obj/effect/landmark/start{ - name = "Bartender" - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/bar) -"aEi" = ( -/obj/structure/extinguisher_cabinet{ - pixel_x = 26 - }, -/turf/open/floor/plasteel/black, -/area/crew_quarters/bar) -"aEj" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/bot, -/area/hallway/primary/fore) -"aEk" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/quartermaster/office{ - name = "\improper Cargo Office" - }) -"aEl" = ( -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/structure/window/reinforced{ - dir = 4 - }, -/turf/open/floor/plasteel/bot, -/area/quartermaster/office{ - name = "\improper Cargo Office" - }) -"aEm" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral, -/area/quartermaster/office{ - name = "\improper Cargo Office" - }) -"aEn" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/quartermaster/office{ - name = "\improper Cargo Office" - }) -"aEo" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/conveyor{ - dir = 2; - id = "cargodisposals" - }, -/turf/open/floor/plating, -/area/quartermaster/office{ - name = "\improper Cargo Office" - }) -"aEp" = ( -/obj/structure/cable/white{ - tag = "icon-0-2"; - icon_state = "0-2" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/checkpoint/supply{ - name = "Security Post - Cargo" - }) -"aEq" = ( -/obj/machinery/computer/secure_data, -/turf/open/floor/plasteel/red/side{ - tag = "icon-red (SOUTHEAST)"; - icon_state = "red"; - dir = 6 - }, -/area/security/checkpoint/supply{ - name = "Security Post - Cargo" - }) -"aEr" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/plasteel/neutral, -/area/security/checkpoint/supply{ - name = "Security Post - Cargo" - }) -"aEs" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/red/side{ - tag = "icon-red (EAST)"; - icon_state = "red"; - dir = 4 - }, -/area/security/checkpoint/supply{ - name = "Security Post - Cargo" - }) -"aEt" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/security{ - name = "Security Post - Cargo"; - req_access_txt = "63" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/security/checkpoint/supply{ - name = "Security Post - Cargo" - }) -"aEu" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/red/side{ - dir = 8 - }, -/area/quartermaster/storage) -"aEv" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/quartermaster/storage) -"aEw" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/quartermaster/storage) -"aEx" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/neutral, -/area/quartermaster/storage) -"aEy" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/conveyor_switch{ - id = "cargoload" - }, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (EAST)"; - icon_state = "brown"; - dir = 4 - }, -/area/quartermaster/storage) -"aEz" = ( -/obj/machinery/conveyor{ - dir = 2; - id = "cargoload" - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/quartermaster/storage) -"aEA" = ( -/obj/structure/cable/white{ - tag = "icon-0-2"; - icon_state = "0-2" - }, -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/quartermaster/storage) -"aEB" = ( -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/structure/cable/white, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/quartermaster/storage) -"aEC" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning{ - dir = 10 - }, -/area/shuttle/supply) -"aED" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning, -/area/shuttle/supply) -"aEE" = ( -/turf/open/floor/plasteel/warning, -/area/shuttle/supply) -"aEF" = ( -/turf/open/floor/plasteel/warning{ - dir = 6 - }, -/area/shuttle/supply) -"aEG" = ( -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/prison) -"aEH" = ( -/obj/machinery/seed_extractor, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/security/prison) -"aEI" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 2; - on = 1; - scrub_N2O = 1; - scrub_Toxins = 1 - }, -/turf/open/floor/plasteel/neutral, -/area/security/prison) -"aEJ" = ( -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/neutral, -/area/security/prison) -"aEK" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 2; - on = 1 - }, -/turf/open/floor/plasteel/neutral, -/area/security/prison) -"aEL" = ( -/obj/machinery/biogenerator, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/security/prison) -"aEM" = ( -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/prison) -"aEN" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0; - tag = "" - }, -/obj/machinery/door/airlock/external{ - name = "External Solar Access"; - req_access_txt = "24" - }, -/turf/open/floor/plasteel/warning/side, -/area/maintenance/auxsolarport) -"aEO" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0; - tag = "" - }, -/obj/structure/fans/tiny, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/delivery, -/area/maintenance/auxsolarport) -"aEP" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0; - tag = "" - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating/warnplate{ - dir = 8 - }, -/area/maintenance/auxsolarport) -"aEQ" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/power/terminal{ - icon_state = "term"; - dir = 1 - }, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/effect/landmark{ - name = "blobstart" - }, -/turf/open/floor/plating, -/area/maintenance/auxsolarport) -"aER" = ( -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating/warnplate{ - dir = 4; - luminosity = 2; - initial_gas_mix = "o2=0.01;n2=0.01"; - temperature = 2.7 - }, -/area/maintenance/auxsolarport) -"aES" = ( -/obj/machinery/door/firedoor, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/door/airlock/atmos{ - name = "Fore Port Solar Access"; - req_access_txt = "24" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/maintenance/auxsolarport) -"aET" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/vault{ - tag = "icon-vault (WEST)"; - icon_state = "vault"; - dir = 8 - }, -/area/maintenance/incinerator) -"aEU" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/structure/disposalpipe/segment, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning{ - dir = 9 - }, -/area/maintenance/incinerator) -"aEV" = ( -/obj/machinery/atmospherics/components/binary/pump{ - name = "Gas to Turbine" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/maintenance/incinerator) -"aEW" = ( -/obj/machinery/atmospherics/components/binary/pump{ - name = "Gas to Turbine" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/maintenance/incinerator) -"aEX" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/maintenance/incinerator) -"aEY" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/maintenance/incinerator) -"aEZ" = ( -/obj/machinery/power/terminal{ - icon_state = "term"; - dir = 1 - }, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/maintenance/incinerator) -"aFa" = ( -/obj/machinery/light{ - dir = 1 - }, -/obj/machinery/power/apc{ - cell_type = 5000; - dir = 1; - name = "Turbine Generator APC"; - pixel_x = 0; - pixel_y = 25 - }, -/obj/structure/cable/white{ - tag = "icon-0-2"; - icon_state = "0-2" - }, -/obj/effect/decal/cleanable/oil, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/maintenance/incinerator) -"aFb" = ( -/obj/machinery/firealarm{ - dir = 4; - icon_state = "fire0"; - pixel_x = 24; - pixel_y = 0; - tag = "icon-fire0 (EAST)" - }, -/obj/machinery/light_switch{ - pixel_x = 24; - pixel_y = 24 - }, -/obj/structure/reagent_dispensers/fueltank, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/bot, -/area/maintenance/incinerator) -"aFc" = ( -/obj/machinery/door/firedoor, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/door/airlock/atmos{ - name = "Atmospherics Access"; - req_access_txt = "24" - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (EAST)"; - icon_state = "plasteel_warn_side"; - dir = 4 - }, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"aFd" = ( -/obj/structure/sign/securearea, -/turf/closed/wall/r_wall, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"aFe" = ( -/obj/structure/sign/biohazard, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall/r_wall, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"aFf" = ( -/obj/machinery/door/firedoor, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/door/airlock/atmos{ - name = "Atmospherics Engine Access"; - req_access_txt = "24" - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (EAST)"; - icon_state = "plasteel_warn_side"; - dir = 4 - }, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"aFg" = ( -/obj/structure/sign/radiation, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/closed/wall/r_wall, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"aFh" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/cable/white{ - tag = "icon-0-2"; - icon_state = "0-2" - }, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/turf/open/floor/plating, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"aFi" = ( -/obj/machinery/door/firedoor, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/machinery/door/airlock/glass_atmos{ - name = "Power Monitoring"; - req_access_txt = "24" - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (EAST)"; - icon_state = "plasteel_warn_side"; - dir = 4 - }, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"aFj" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"aFk" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 5 - }, -/turf/open/floor/plasteel/delivery, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"aFl" = ( -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"aFm" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 1 - }, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"aFn" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral/side{ - dir = 5 - }, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"aFo" = ( -/obj/structure/table/wood, -/obj/structure/table/wood, -/obj/item/device/flashlight/lamp, -/turf/open/floor/wood, -/area/crew_quarters/sleep{ - name = "Service Hall" - }) -"aFp" = ( -/obj/structure/table/wood, -/obj/structure/table/wood, -/obj/item/weapon/folder, -/obj/item/weapon/pen, -/turf/open/floor/wood, -/area/crew_quarters/sleep{ - name = "Service Hall" - }) -"aFq" = ( -/obj/structure/bed, -/obj/machinery/status_display{ - pixel_y = 32 - }, -/obj/item/weapon/bedsheet/orange, -/turf/open/floor/wood, -/area/crew_quarters/sleep{ - name = "Service Hall" - }) -"aFr" = ( -/obj/structure/dresser, -/turf/open/floor/wood{ - tag = "icon-wood-broken6"; - icon_state = "wood-broken6" - }, -/area/crew_quarters/sleep{ - name = "Service Hall" - }) -"aFs" = ( -/obj/structure/closet/secure_closet/personal/cabinet, -/turf/open/floor/wood, -/area/crew_quarters/sleep{ - name = "Service Hall" - }) -"aFt" = ( -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = -26; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 1 - }, -/area/crew_quarters/sleep{ - name = "Service Hall" - }) -"aFu" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/light/small{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/loadingarea, -/area/crew_quarters/sleep{ - name = "Service Hall" - }) -"aFv" = ( -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/bot, -/area/crew_quarters/bar) -"aFw" = ( -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/bar) -"aFx" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/bar) -"aFy" = ( -/obj/structure/table/wood, -/obj/item/weapon/gun/ballistic/revolver/doublebarrel, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/bar) -"aFz" = ( -/obj/machinery/status_display, -/turf/closed/wall, -/area/crew_quarters/bar) -"aFA" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/lighter{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/lighter, -/obj/machinery/camera{ - c_tag = "Bar - Fore"; - dir = 4; - name = "service camera" - }, -/turf/open/floor/plasteel/vault, -/area/crew_quarters/bar) -"aFB" = ( -/obj/structure/table/reinforced, -/turf/open/floor/plasteel/vault, -/area/crew_quarters/bar) -"aFC" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/storage/box/matches{ - pixel_x = -3; - pixel_y = 5 - }, -/turf/open/floor/plasteel/vault, -/area/crew_quarters/bar) -"aFD" = ( -/obj/structure/sign/nanotrasen, -/turf/closed/wall, -/area/crew_quarters/bar) -"aFE" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/obj/machinery/camera{ - c_tag = "Arrivals Hallway - Center"; - dir = 4; - name = "hallway camera" - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 1 - }, -/area/hallway/primary/fore) -"aFF" = ( -/obj/effect/landmark{ - name = "lightsout" - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_Toxins = 0 - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/fore) -"aFG" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/paper_bin, -/obj/item/weapon/pen, -/turf/open/floor/plasteel/bot, -/area/quartermaster/office{ - name = "\improper Cargo Office" - }) -"aFH" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/loadingarea, -/area/quartermaster/office{ - name = "\improper Cargo Office" - }) -"aFI" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHEAST)"; - icon_state = "intact"; - dir = 6 - }, -/turf/open/floor/plasteel/loadingarea, -/area/quartermaster/office{ - name = "\improper Cargo Office" - }) -"aFJ" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHWEST)"; - icon_state = "intact"; - dir = 9 - }, -/turf/open/floor/plasteel/neutral, -/area/quartermaster/office{ - name = "\improper Cargo Office" - }) -"aFK" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/quartermaster/office{ - name = "\improper Cargo Office" - }) -"aFL" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/conveyor{ - dir = 2; - id = "cargodisposals" - }, -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plating, -/area/quartermaster/office{ - name = "\improper Cargo Office" - }) -"aFM" = ( -/obj/structure/cable/white{ - tag = "icon-0-2"; - icon_state = "0-2" - }, -/obj/structure/cable/white, -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/checkpoint/supply{ - name = "Security Post - Cargo" - }) -"aFN" = ( -/obj/machinery/computer/security, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/red, -/area/security/checkpoint/supply{ - name = "Security Post - Cargo" - }) -"aFO" = ( -/obj/structure/chair/office/dark{ - dir = 8 - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/turf/open/floor/plasteel/neutral, -/area/security/checkpoint/supply{ - name = "Security Post - Cargo" - }) -"aFP" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/red/side{ - tag = "icon-red (EAST)"; - icon_state = "red"; - dir = 4 - }, -/area/security/checkpoint/supply{ - name = "Security Post - Cargo" - }) -"aFQ" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/turf/open/floor/plating, -/area/security/checkpoint/supply{ - name = "Security Post - Cargo" - }) -"aFR" = ( -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/red/side{ - dir = 8 - }, -/area/quartermaster/storage) -"aFS" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/neutral, -/area/quartermaster/storage) -"aFT" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/quartermaster/storage) -"aFU" = ( -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plasteel/delivery, -/area/quartermaster/storage) -"aFV" = ( -/obj/effect/landmark/start{ - name = "Cargo Technician" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/bot, -/area/quartermaster/storage) -"aFW" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/closet/crate{ - icon_state = "crateopen"; - opened = 1 - }, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 2; - name = "2maintenance loot spawner" - }, -/turf/open/floor/plasteel/bot, -/area/quartermaster/storage) -"aFX" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/delivery, -/area/shuttle/supply) -"aFY" = ( -/turf/open/floor/plasteel/delivery, -/area/shuttle/supply) -"aFZ" = ( -/obj/machinery/hydroponics/constructable, -/obj/item/seeds/glowshroom, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/neutral/corner{ - dir = 8 - }, -/area/security/prison) -"aGa" = ( -/obj/item/weapon/reagent_containers/glass/bucket, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating{ - icon_state = "panelscorched" - }, -/area/security/prison) -"aGb" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel, -/area/security/prison) -"aGc" = ( -/obj/item/device/plant_analyzer, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral/corner, -/area/security/prison) -"aGd" = ( -/obj/machinery/hydroponics/constructable, -/obj/item/seeds/ambrosia, -/turf/open/floor/plating, -/area/security/prison) -"aGe" = ( -/turf/closed/wall, -/area/space) -"aGf" = ( -/obj/machinery/power/solar_control{ - id = "foreport"; - name = "Fore Port Solar Control"; - track = 0 - }, -/obj/structure/cable, -/turf/open/floor/plating/warnplate{ - dir = 10 - }, -/area/maintenance/auxsolarport) -"aGg" = ( -/obj/structure/chair/office/dark{ - dir = 8 - }, -/turf/open/floor/plating/warnplate, -/area/maintenance/auxsolarport) -"aGh" = ( -/obj/structure/cable/white, -/obj/machinery/power/apc{ - cell_type = 10000; - dir = 2; - name = "Fore Port Solar APC"; - pixel_y = -26 - }, -/turf/open/floor/plating/warnplate{ - dir = 6 - }, -/area/maintenance/auxsolarport) -"aGi" = ( -/obj/structure/sign/electricshock, -/turf/closed/wall/r_wall, -/area/maintenance/auxsolarport) -"aGj" = ( -/obj/structure/rack, -/obj/item/weapon/storage/toolbox/emergency, -/obj/item/weapon/wrench, -/obj/item/weapon/tank/internals/emergency_oxygen/engi, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/caution{ - dir = 9 - }, -/area/maintenance/incinerator) -"aGk" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/maintenance/incinerator) -"aGl" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible{ - icon_state = "intact"; - dir = 5 - }, -/turf/open/floor/plasteel/neutral, -/area/maintenance/incinerator) -"aGm" = ( -/obj/machinery/atmospherics/pipe/manifold/general/visible, -/obj/machinery/meter, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/neutral, -/area/maintenance/incinerator) -"aGn" = ( -/obj/machinery/atmospherics/pipe/manifold/general/visible, -/turf/open/floor/plasteel/neutral, -/area/maintenance/incinerator) -"aGo" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible{ - dir = 9 - }, -/turf/open/floor/plasteel/neutral, -/area/maintenance/incinerator) -"aGp" = ( -/obj/machinery/atmospherics/components/binary/pump{ - name = "Mix to Turbine" - }, -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/neutral, -/area/maintenance/incinerator) -"aGq" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/plasteel/neutral, -/area/maintenance/incinerator) -"aGr" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/neutral, -/area/maintenance/incinerator) -"aGs" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/delivery, -/area/maintenance/incinerator) -"aGt" = ( -/obj/machinery/door/firedoor, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/door/airlock/atmos{ - name = "Turbine Generator Access"; - req_access_txt = "24" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/maintenance/incinerator) -"aGu" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning{ - dir = 9 - }, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"aGv" = ( -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plasteel/warning{ - dir = 5 - }, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"aGw" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/closet/secure_closet/atmospherics, -/turf/open/floor/plasteel/bot, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"aGx" = ( -/obj/structure/closet/radiation, -/obj/effect/decal/cleanable/dirt, -/obj/structure/sign/poster{ - icon_state = "poster3_legit"; - pixel_x = -32; - pixel_y = 0; - tag = "icon-poster3_legit" - }, -/obj/machinery/camera{ - c_tag = "Atmospherics - Engine Access"; - name = "atmospherics camera" - }, -/turf/open/floor/plasteel/bot, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"aGy" = ( -/obj/machinery/shower{ - dir = 4; - icon_state = "shower"; - name = "emergency shower" - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/plasteel/warning{ - dir = 9 - }, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"aGz" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/delivery, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"aGA" = ( -/obj/machinery/shower{ - dir = 8; - icon_state = "shower"; - name = "emergency shower" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/warning{ - dir = 5 - }, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"aGB" = ( -/obj/structure/closet/radiation, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/bot, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"aGC" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/firealarm{ - dir = 8; - pixel_x = -24; - pixel_y = 0 - }, -/turf/open/floor/plasteel/warning{ - dir = 10 - }, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"aGD" = ( -/obj/structure/cable, -/obj/machinery/power/terminal, -/turf/open/floor/plasteel/warning, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"aGE" = ( -/obj/structure/extinguisher_cabinet{ - pixel_x = 26 - }, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = 28; - pixel_y = 26 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/warning{ - dir = 6 - }, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"aGF" = ( -/obj/structure/closet/emcloset, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"aGG" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/rack, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 2; - name = "2maintenance loot spawner" - }, -/turf/open/floor/plasteel/neutral/side, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"aGH" = ( -/obj/structure/closet, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"aGI" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/neutral/side, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"aGJ" = ( -/turf/open/floor/plasteel/neutral/side, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"aGK" = ( -/obj/structure/table/wood, -/obj/item/device/camera, -/obj/machinery/newscaster{ - pixel_x = -32 - }, -/turf/open/floor/wood, -/area/crew_quarters/sleep{ - name = "Service Hall" - }) -"aGL" = ( -/obj/structure/chair/office/dark{ - dir = 1 - }, -/turf/open/floor/wood, -/area/crew_quarters/sleep{ - name = "Service Hall" - }) -"aGM" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/wood, -/area/crew_quarters/sleep{ - name = "Service Hall" - }) -"aGN" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/wood, -/area/crew_quarters/sleep{ - name = "Service Hall" - }) -"aGO" = ( -/obj/machinery/door/airlock{ - name = "Cabin B" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/wood, -/area/crew_quarters/sleep{ - name = "Service Hall" - }) -"aGP" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral/corner{ - dir = 1 - }, -/area/crew_quarters/sleep{ - name = "Service Hall" - }) -"aGQ" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/open/floor/plasteel/neutral/corner{ - dir = 4 - }, -/area/crew_quarters/sleep{ - name = "Service Hall" - }) -"aGR" = ( -/obj/machinery/airalarm{ - dir = 4; - icon_state = "alarm0"; - pixel_x = -22 - }, -/obj/machinery/newscaster{ - pixel_y = -32 - }, -/obj/machinery/disposal/bin, -/obj/structure/disposalpipe/trunk{ - dir = 1 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/crew_quarters/bar) -"aGS" = ( -/obj/machinery/chem_master/condimaster{ - name = "HoochMaster 2000" - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/bar) -"aGT" = ( -/obj/structure/closet/gmcloset, -/obj/item/weapon/wrench, -/obj/item/stack/sheet/glass{ - amount = 30 - }, -/obj/item/stack/sheet/metal{ - amount = 30 - }, -/obj/item/stack/cable_coil/random, -/obj/item/stack/cable_coil/random, -/obj/machinery/light, -/turf/open/floor/plasteel/black, -/area/crew_quarters/bar) -"aGU" = ( -/obj/structure/table/wood, -/obj/machinery/reagentgrinder{ - desc = "Used to grind things up into raw materials and liquids."; - pixel_y = 5 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/bar) -"aGV" = ( -/obj/structure/table/wood, -/obj/item/stack/packageWrap, -/obj/item/weapon/hand_labeler, -/turf/open/floor/plasteel/black, -/area/crew_quarters/bar) -"aGW" = ( -/obj/structure/chair/stool/bar, -/obj/machinery/newscaster{ - pixel_x = -32 - }, -/turf/open/floor/plasteel/redyellow, -/area/crew_quarters/bar{ - name = "Atrium" - }) -"aGX" = ( -/obj/structure/chair/stool/bar, -/turf/open/floor/plasteel/redyellow, -/area/crew_quarters/bar{ - name = "Atrium" - }) -"aGY" = ( -/turf/open/floor/plasteel/redyellow, -/area/crew_quarters/bar{ - name = "Atrium" - }) -"aGZ" = ( -/obj/structure/chair/stool/bar, -/obj/effect/landmark/start{ - name = "Assistant" - }, -/turf/open/floor/plasteel/redyellow, -/area/crew_quarters/bar{ - name = "Atrium" - }) -"aHa" = ( -/obj/structure/chair/stool/bar, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = 26; - pixel_y = 0 - }, -/turf/open/floor/plasteel/redyellow, -/area/crew_quarters/bar{ - name = "Atrium" - }) -"aHb" = ( -/turf/closed/wall, -/area/crew_quarters/bar{ - name = "Atrium" - }) -"aHc" = ( -/obj/structure/table/reinforced, -/obj/machinery/door/firedoor, -/obj/item/weapon/folder/yellow, -/obj/item/weapon/pen, -/turf/open/floor/plasteel/delivery, -/area/quartermaster/office{ - name = "\improper Cargo Office" - }) -"aHd" = ( -/obj/structure/chair/office/dark{ - dir = 8 - }, -/obj/effect/landmark/start{ - name = "Cargo Technician" - }, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (NORTHWEST)"; - icon_state = "brown"; - dir = 9 - }, -/area/quartermaster/office{ - name = "\improper Cargo Office" - }) -"aHe" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (NORTH)"; - icon_state = "brown"; - dir = 1 - }, -/area/quartermaster/office{ - name = "\improper Cargo Office" - }) -"aHf" = ( -/obj/effect/landmark{ - name = "lightsout" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (NORTH)"; - icon_state = "brown"; - dir = 1 - }, -/area/quartermaster/office{ - name = "\improper Cargo Office" - }) -"aHg" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (NORTHEAST)"; - icon_state = "brown"; - dir = 5 - }, -/area/quartermaster/office{ - name = "\improper Cargo Office" - }) -"aHh" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHWEST)"; - icon_state = "intact"; - dir = 9 - }, -/obj/machinery/conveyor_switch/oneway{ - id = "cargodisposals"; - name = "Trash Filter Switch"; - pixel_x = -1; - pixel_y = 0 - }, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/quartermaster/office{ - name = "\improper Cargo Office" - }) -"aHi" = ( -/obj/structure/cable/white, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/checkpoint/supply{ - name = "Security Post - Cargo" - }) -"aHj" = ( -/obj/machinery/computer/cargo, -/turf/open/floor/plasteel/red/side{ - dir = 5 - }, -/area/security/checkpoint/supply{ - name = "Security Post - Cargo" - }) -"aHk" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/holopad, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHEAST)"; - icon_state = "intact"; - dir = 6 - }, -/turf/open/floor/plasteel/neutral, -/area/security/checkpoint/supply{ - name = "Security Post - Cargo" - }) -"aHl" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/red/side{ - tag = "icon-red (EAST)"; - icon_state = "red"; - dir = 4 - }, -/area/security/checkpoint/supply{ - name = "Security Post - Cargo" - }) -"aHm" = ( -/obj/structure/table/reinforced, -/obj/machinery/door/firedoor, -/obj/machinery/door/window/brigdoor/southright{ - dir = 8; - name = "Security Desk"; - req_access_txt = "63" - }, -/obj/machinery/door/window/northright{ - dir = 4; - name = "Security Desk" - }, -/obj/item/weapon/folder/red, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/delivery, -/area/security/checkpoint/supply{ - name = "Security Post - Cargo" - }) -"aHn" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/red/side{ - dir = 8 - }, -/area/quartermaster/storage) -"aHo" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/plasteel/neutral, -/area/quartermaster/storage) -"aHp" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/quartermaster/storage) -"aHq" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/quartermaster/storage) -"aHr" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/plasteel/neutral, -/area/quartermaster/storage) -"aHs" = ( -/obj/structure/window/reinforced{ - dir = 1 - }, -/obj/structure/shuttle/engine/heater, -/turf/open/floor/plating/warnplate, -/area/shuttle/supply) -"aHt" = ( -/obj/structure/window/reinforced{ - dir = 1 - }, -/obj/structure/shuttle/engine/heater, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating/warnplate, -/area/shuttle/supply) -"aHu" = ( -/turf/closed/wall, -/area/security/prison) -"aHv" = ( -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/ai_status_display{ - pixel_x = -32 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/security/prison) -"aHw" = ( -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/door/airlock/glass{ - name = "Garden" - }, -/turf/open/floor/plasteel, -/area/security/prison) -"aHx" = ( -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/status_display{ - pixel_x = 32 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/security/prison) -"aHy" = ( -/turf/closed/wall/r_wall, -/area/prison/solitary{ - name = "Prisoner Education Chamber" - }) -"aHz" = ( -/obj/machinery/door/poddoor{ - id = "justiceblast"; - name = "Justice Blast door" - }, -/turf/open/floor/plasteel/darkwarning/side{ - tag = "icon-black_warn_side (WEST)"; - icon_state = "black_warn_side"; - dir = 8 - }, -/area/prison/solitary{ - name = "Prisoner Education Chamber" - }) -"aHA" = ( -/obj/structure/lattice/catwalk, -/obj/item/weapon/wrench, -/turf/open/space, -/area/space) -"aHB" = ( -/obj/machinery/status_display{ - pixel_x = -32 - }, -/obj/machinery/atmospherics/components/unary/portables_connector/visible, -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/obj/machinery/portable_atmospherics/canister, -/turf/open/floor/plasteel/caution{ - dir = 8 - }, -/area/maintenance/incinerator) -"aHC" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/structure/disposalpipe/segment, -/obj/effect/decal/cleanable/oil, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/maintenance/incinerator) -"aHD" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible{ - dir = 6 - }, -/turf/open/floor/plasteel/caution/corner, -/area/maintenance/incinerator) -"aHE" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible{ - dir = 4 - }, -/turf/open/floor/plasteel/caution, -/area/maintenance/incinerator) -"aHF" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible{ - dir = 4 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 2; - on = 1; - scrub_N2O = 1; - scrub_Toxins = 1 - }, -/turf/open/floor/plasteel/caution, -/area/maintenance/incinerator) -"aHG" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible{ - dir = 4 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/delivery, -/area/maintenance/incinerator) -"aHH" = ( -/obj/machinery/meter, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/manifold/general/visible, -/turf/open/floor/plasteel/caution, -/area/maintenance/incinerator) -"aHI" = ( -/obj/machinery/atmospherics/components/binary/pump{ - dir = 8; - name = "Port to Turbine" - }, -/turf/open/floor/plasteel/caution, -/area/maintenance/incinerator) -"aHJ" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible{ - dir = 10 - }, -/turf/open/floor/plasteel/caution, -/area/maintenance/incinerator) -"aHK" = ( -/obj/structure/reagent_dispensers/watertank, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/bot, -/area/maintenance/incinerator) -"aHL" = ( -/obj/structure/sign/vacuum{ - pixel_x = -32 - }, -/obj/machinery/light/small{ - dir = 8 - }, -/obj/machinery/camera{ - c_tag = "Atmospherics - Turbine Access"; - dir = 1; - name = "atmospherics camera" - }, -/turf/open/floor/plasteel/warning{ - dir = 10 - }, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"aHM" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/turf/open/floor/plasteel/warning{ - dir = 6 - }, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"aHN" = ( -/obj/structure/extinguisher_cabinet{ - pixel_x = 26 - }, -/obj/structure/closet/emcloset{ - anchored = 1 - }, -/turf/open/floor/plasteel/bot, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"aHO" = ( -/obj/structure/closet/radiation, -/obj/effect/decal/cleanable/dirt, -/obj/structure/extinguisher_cabinet{ - pixel_x = -26 - }, -/turf/open/floor/plasteel/bot, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"aHP" = ( -/obj/machinery/shower{ - dir = 4; - icon_state = "shower"; - name = "emergency shower" - }, -/obj/machinery/light/small, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/warning{ - dir = 10 - }, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"aHQ" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/plasteel/delivery, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"aHR" = ( -/obj/machinery/shower{ - dir = 8; - icon_state = "shower"; - name = "emergency shower" - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/light/small, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plasteel/warning{ - dir = 6 - }, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"aHS" = ( -/obj/structure/closet/radiation, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/firealarm{ - dir = 1; - pixel_x = 0; - pixel_y = -24 - }, -/obj/machinery/airalarm{ - dir = 8; - icon_state = "alarm0"; - pixel_x = 24 - }, -/turf/open/floor/plasteel/bot, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"aHT" = ( -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/machinery/computer/monitor{ - name = "Engineering Power Monitoring Console" - }, -/obj/structure/cable/white, -/obj/machinery/status_display{ - pixel_y = -32 - }, -/turf/open/floor/plasteel/vault, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"aHU" = ( -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/machinery/power/smes{ - charge = 2e+006 - }, -/obj/machinery/light/small, -/turf/open/floor/plasteel/circuit/gcircuit, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"aHV" = ( -/obj/structure/sign/nosmoking_2{ - pixel_x = 32 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/turf/open/floor/plasteel/vault, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"aHW" = ( -/turf/closed/wall, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"aHX" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"aHY" = ( -/obj/structure/table/wood, -/obj/item/weapon/paper_bin, -/turf/open/floor/wood, -/area/crew_quarters/sleep{ - name = "Service Hall" - }) -"aHZ" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/wood, -/area/crew_quarters/sleep{ - name = "Service Hall" - }) -"aIa" = ( -/obj/machinery/light, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/wood, -/area/crew_quarters/sleep{ - name = "Service Hall" - }) -"aIb" = ( -/obj/structure/table/wood, -/obj/item/weapon/storage/briefcase, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/wood, -/area/crew_quarters/sleep{ - name = "Service Hall" - }) -"aIc" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/wood, -/area/crew_quarters/sleep{ - name = "Service Hall" - }) -"aId" = ( -/obj/structure/extinguisher_cabinet{ - pixel_x = -26 - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 1 - }, -/area/crew_quarters/sleep{ - name = "Service Hall" - }) -"aIe" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/airalarm{ - dir = 8; - icon_state = "alarm0"; - pixel_x = 24 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral/corner{ - dir = 4 - }, -/area/crew_quarters/sleep{ - name = "Service Hall" - }) -"aIf" = ( -/obj/machinery/light{ - dir = 8 - }, -/obj/structure/extinguisher_cabinet{ - pixel_x = -26 - }, -/turf/open/floor/plasteel/redyellow, -/area/crew_quarters/bar{ - name = "Atrium" - }) -"aIg" = ( -/obj/machinery/airalarm{ - dir = 8; - icon_state = "alarm0"; - pixel_x = 24 - }, -/obj/machinery/light{ - icon_state = "tube1"; - dir = 4 - }, -/turf/open/floor/plasteel/redyellow, -/area/crew_quarters/bar{ - name = "Atrium" - }) -"aIh" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/loadingarea, -/area/hallway/primary/fore) -"aIi" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1 - }, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (WEST)"; - icon_state = "brown"; - dir = 8 - }, -/area/quartermaster/office{ - name = "\improper Cargo Office" - }) -"aIj" = ( -/turf/open/floor/plasteel/neutral, -/area/quartermaster/office{ - name = "\improper Cargo Office" - }) -"aIk" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral, -/area/quartermaster/office{ - name = "\improper Cargo Office" - }) -"aIl" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (EAST)"; - icon_state = "brown"; - dir = 4 - }, -/area/quartermaster/office{ - name = "\improper Cargo Office" - }) -"aIm" = ( -/obj/structure/window/reinforced{ - dir = 4 - }, -/obj/machinery/camera{ - c_tag = "Cargo - Delivery Office"; - dir = 1; - name = "cargo camera" - }, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/quartermaster/office{ - name = "\improper Cargo Office" - }) -"aIn" = ( -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/machinery/door_timer{ - id = "cargocell"; - name = "Cargo Cell"; - pixel_x = -32; - pixel_y = -32 - }, -/obj/machinery/power/apc{ - dir = 8; - name = "Security Post - Cargo APC"; - pixel_x = -26; - pixel_y = 0 - }, -/turf/open/floor/plasteel/red/side{ - tag = "icon-red (SOUTHWEST)"; - icon_state = "red"; - dir = 10 - }, -/area/security/checkpoint/supply{ - name = "Security Post - Cargo" - }) -"aIo" = ( -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/red/side, -/area/security/checkpoint/supply{ - name = "Security Post - Cargo" - }) -"aIp" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1 - }, -/obj/machinery/airalarm{ - dir = 8; - icon_state = "alarm0"; - pixel_x = 24 - }, -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/obj/machinery/camera{ - c_tag = "Security Post - Cargo"; - dir = 8; - name = "security camera" - }, -/turf/open/floor/plasteel/red/side{ - tag = "icon-red (SOUTHEAST)"; - icon_state = "red"; - dir = 6 - }, -/area/security/checkpoint/supply{ - name = "Security Post - Cargo" - }) -"aIq" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/red/corner{ - dir = 1 - }, -/area/quartermaster/storage) -"aIr" = ( -/obj/effect/spawner/lootdrop/maintenance, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/delivery, -/area/quartermaster/storage) -"aIs" = ( -/obj/machinery/conveyor{ - dir = 2; - id = "cargoload" - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/light{ - icon_state = "tube1"; - dir = 4 - }, -/turf/open/floor/plating, -/area/quartermaster/storage) -"aIt" = ( -/obj/structure/shuttle/engine/propulsion{ - icon_state = "burst_l" - }, -/turf/open/floor/plating/warnplate, -/area/shuttle/supply) -"aIu" = ( -/obj/structure/shuttle/engine/propulsion, -/turf/open/floor/plating/warnplate, -/area/shuttle/supply) -"aIv" = ( -/obj/structure/shuttle/engine/propulsion{ - icon_state = "burst_r" - }, -/turf/open/floor/plating/warnplate, -/area/shuttle/supply) -"aIw" = ( -/obj/machinery/shower{ - icon_state = "shower"; - dir = 4 - }, -/obj/item/weapon/soap/nanotrasen, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 2; - on = 1 - }, -/turf/open/floor/plasteel/floorgrime, -/area/security/prison) -"aIx" = ( -/turf/open/floor/plasteel/red/corner{ - dir = 1 - }, -/obj/structure/table, -/obj/item/weapon/storage/crayons, -/obj/item/weapon/storage/crayons, -/obj/structure/sign/electricshock{ - pixel_y = 32 - }, -/obj/effect/decal/cleanable/cobweb, -/turf/open/floor/plating{ - icon_state = "platingdmg2" - }, -/area/security/prison) -"aIy" = ( -/obj/structure/table, -/obj/machinery/computer/libraryconsole/bookmanagement, -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/turf/open/floor/plating, -/area/security/prison) -"aIz" = ( -/obj/structure/easel, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/computer/security/telescreen/entertainment{ - pixel_y = 32 - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/plasteel/red/corner{ - dir = 1 - }, -/area/security/prison) -"aIA" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/neutral/corner{ - tag = "icon-neutralcorner (NORTH)"; - icon_state = "neutralcorner"; - dir = 1 - }, -/area/security/prison) -"aIB" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/red/corner{ - dir = 1 - }, -/area/security/prison) -"aIC" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 1 - }, -/area/security/prison) -"aID" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral/corner{ - dir = 4 - }, -/area/security/prison) -"aIE" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/red/corner{ - dir = 1 - }, -/area/security/prison) -"aIF" = ( -/obj/structure/table, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/item/weapon/paper_bin, -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 4 - }, -/area/security/prison) -"aIG" = ( -/obj/structure/table, -/obj/item/weapon/clipboard, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/item/toy/figure/syndie, -/obj/structure/sign/electricshock{ - pixel_x = 0; - pixel_y = 32 - }, -/turf/open/floor/plasteel/red/corner{ - dir = 1 - }, -/area/security/prison) -"aIH" = ( -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 4 - }, -/area/security/prison) -"aII" = ( -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/structure/punching_bag, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/arrival{ - dir = 1 - }, -/area/security/prison) -"aIJ" = ( -/obj/machinery/light/small{ - dir = 4 - }, -/obj/structure/weightlifter, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating{ - icon_state = "platingdmg3" - }, -/area/security/prison) -"aIK" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/light/small{ - dir = 8 - }, -/obj/structure/sign/vacuum{ - pixel_x = -32 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/prison/solitary{ - name = "Prisoner Education Chamber" - }) -"aIL" = ( -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/prison/solitary{ - name = "Prisoner Education Chamber" - }) -"aIM" = ( -/obj/machinery/light/small{ - dir = 4 - }, -/obj/structure/sign/directions/engineering{ - desc = "A sign that shows there are doors here. There are doors everywhere!"; - icon_state = "doors"; - name = "WARNING: EXTERNAL AIRLOCK"; - pixel_x = 32; - tag = "icon-doors" - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/prison/solitary{ - name = "Prisoner Education Chamber" - }) -"aIN" = ( -/obj/structure/sign/fire, -/turf/closed/wall/r_wall, -/area/maintenance/incinerator) -"aIO" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/engine/vacuum, -/area/maintenance/incinerator) -"aIP" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible{ - dir = 4 - }, -/turf/closed/wall/r_wall, -/area/maintenance/incinerator) -"aIQ" = ( -/obj/machinery/doorButtons/access_button{ - idDoor = "incinerator_airlock_exterior"; - idSelf = "incinerator_access_control"; - layer = 3.1; - name = "Incinerator airlock control"; - pixel_x = -24; - pixel_y = -8 - }, -/obj/machinery/doorButtons/access_button{ - idDoor = "incinerator_airlock_interior"; - idSelf = "incinerator_access_control"; - name = "Incinerator airlock control"; - pixel_x = 24; - pixel_y = -8 - }, -/obj/machinery/atmospherics/components/binary/pump{ - dir = 4 - }, -/obj/machinery/light/small{ - dir = 1 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/engine, -/area/maintenance/incinerator) -"aIR" = ( -/obj/machinery/atmospherics/pipe/manifold/general/visible, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/caution{ - tag = "icon-caution (SOUTHWEST)"; - icon_state = "caution"; - dir = 10 - }, -/area/maintenance/incinerator) -"aIS" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible{ - dir = 10 - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/maintenance/incinerator) -"aIT" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/caution{ - dir = 4 - }, -/area/maintenance/incinerator) -"aIU" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/atmos) -"aIV" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/atmos) -"aIW" = ( -/obj/machinery/door/airlock/atmos{ - name = "Turbine Generator Access"; - req_access_txt = "24" - }, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (EAST)"; - icon_state = "plasteel_warn_side"; - dir = 4 - }, -/area/atmos) -"aIX" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/general/visible, -/turf/open/floor/plating, -/area/atmos) -"aIY" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/closed/wall/r_wall, -/area/atmos) -"aIZ" = ( -/turf/closed/wall/r_wall, -/area/atmos) -"aJa" = ( -/obj/machinery/door/firedoor, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/door/airlock/atmos{ - name = "Atmospherics Access"; - req_access_txt = "24" - }, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (EAST)"; - icon_state = "plasteel_warn_side"; - dir = 4 - }, -/area/atmos) -"aJb" = ( -/obj/structure/sign/radiation, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall/r_wall, -/area/atmos) -"aJc" = ( -/obj/machinery/door/firedoor, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/door/airlock/atmos{ - name = "Atmospherics Engine Access"; - req_access_txt = "24" - }, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (EAST)"; - icon_state = "plasteel_warn_side"; - dir = 4 - }, -/area/atmos) -"aJd" = ( -/obj/structure/sign/fire, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/closed/wall/r_wall, -/area/atmos) -"aJe" = ( -/obj/structure/sign/electricshock, -/turf/closed/wall/r_wall, -/area/atmos) -"aJf" = ( -/obj/structure/lattice/catwalk, -/obj/machinery/atmospherics/pipe/simple/yellow/visible{ - tag = "icon-intact (NORTHEAST)"; - icon_state = "intact"; - dir = 5 - }, -/turf/open/space, -/area/space) -"aJg" = ( -/obj/structure/lattice/catwalk, -/obj/machinery/atmospherics/pipe/simple/yellow/visible{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/space, -/area/space) -"aJh" = ( -/obj/structure/lattice, -/obj/machinery/atmospherics/pipe/simple/yellow/visible{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/space, -/area/space) -"aJi" = ( -/obj/structure/lattice/catwalk, -/obj/machinery/atmospherics/pipe/simple/yellow/visible{ - tag = "icon-intact (SOUTHWEST)"; - icon_state = "intact"; - dir = 10 - }, -/turf/open/space, -/area/space) -"aJj" = ( -/obj/structure/table/wood, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"aJk" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"aJl" = ( -/obj/structure/table/wood, -/obj/item/weapon/paper_bin, -/obj/item/weapon/pen, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"aJm" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"aJn" = ( -/obj/structure/cable/white{ - tag = "icon-0-2"; - icon_state = "0-2" - }, -/obj/machinery/power/apc{ - cell_type = 5000; - dir = 1; - name = "Abandoned Gambling Den APC"; - pixel_x = 0; - pixel_y = 25 - }, -/turf/open/floor/wood{ - icon_state = "wood-broken7" - }, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"aJo" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/turf/open/floor/wood, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"aJp" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall, -/area/crew_quarters/theatre) -"aJq" = ( -/turf/closed/wall, -/area/crew_quarters/theatre) -"aJr" = ( -/obj/structure/sign/nosmoking_2{ - pixel_x = -32 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral/corner{ - dir = 1 - }, -/area/crew_quarters/sleep{ - name = "Service Hall" - }) -"aJs" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral/corner{ - dir = 4 - }, -/area/crew_quarters/sleep{ - name = "Service Hall" - }) -"aJt" = ( -/obj/structure/table/wood, -/obj/machinery/status_display{ - pixel_x = -32 - }, -/obj/item/device/camera_film{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/device/camera_film, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/bar{ - name = "Atrium" - }) -"aJu" = ( -/obj/structure/table/wood, -/obj/structure/sign/poster{ - pixel_y = 32 - }, -/obj/item/weapon/soap/nanotrasen, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/bar{ - name = "Atrium" - }) -"aJv" = ( -/obj/structure/cable/white{ - tag = "icon-0-2"; - icon_state = "0-2" - }, -/obj/machinery/light{ - dir = 1 - }, -/obj/machinery/power/apc{ - cell_type = 5000; - dir = 1; - name = "Atrium APC"; - pixel_x = 0; - pixel_y = 25 - }, -/obj/machinery/camera{ - c_tag = "Theatre Stage"; - dir = 2; - name = "service camera" - }, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/bar{ - name = "Atrium" - }) -"aJw" = ( -/obj/structure/sign/poster{ - pixel_y = 32 - }, -/obj/structure/easel, -/obj/item/weapon/canvas/twentythreeXtwentythree, -/obj/item/weapon/canvas/twentythreeXtwentythree, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/bar{ - name = "Atrium" - }) -"aJx" = ( -/obj/structure/window/reinforced{ - dir = 4; - pixel_x = 0 - }, -/obj/machinery/status_display{ - pixel_y = 32 - }, -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/bar{ - name = "Atrium" - }) -"aJy" = ( -/obj/machinery/vending/cigarette, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/bar{ - name = "Atrium" - }) -"aJz" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 2; - on = 1 - }, -/turf/open/floor/plasteel/redyellow, -/area/crew_quarters/bar{ - name = "Atrium" - }) -"aJA" = ( -/obj/structure/chair/stool, -/turf/open/floor/plasteel/redyellow, -/area/crew_quarters/bar{ - name = "Atrium" - }) -"aJB" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/crew_quarters/bar{ - name = "Atrium" - }) -"aJC" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = 26; - pixel_y = 0 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 4 - }, -/area/hallway/primary/fore) -"aJD" = ( -/obj/structure/filingcabinet/filingcabinet, -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (WEST)"; - icon_state = "brown"; - dir = 8 - }, -/area/quartermaster/office{ - name = "\improper Cargo Office" - }) -"aJE" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/neutral, -/area/quartermaster/office{ - name = "\improper Cargo Office" - }) -"aJF" = ( -/obj/machinery/holopad, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/bot, -/area/quartermaster/office{ - name = "\improper Cargo Office" - }) -"aJG" = ( -/obj/machinery/status_display, -/turf/closed/wall, -/area/quartermaster/office{ - name = "\improper Cargo Office" - }) -"aJH" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/conveyor{ - dir = 2; - id = "cargodisposals" - }, -/obj/structure/plasticflaps, -/turf/open/floor/plating, -/area/quartermaster/office{ - name = "\improper Cargo Office" - }) -"aJI" = ( -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/checkpoint/supply{ - name = "Security Post - Cargo" - }) -"aJJ" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/machinery/door/window/brigdoor{ - id = "cargocell"; - name = "Cargo Cell"; - req_access_txt = "63" - }, -/turf/open/floor/plasteel/red, -/area/security/checkpoint/supply{ - name = "Security Post - Cargo" - }) -"aJK" = ( -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/checkpoint/supply{ - name = "Security Post - Cargo" - }) -"aJL" = ( -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/obj/structure/disposalpipe/segment, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = -26 - }, -/turf/open/floor/plasteel/warning/corner{ - dir = 1 - }, -/area/quartermaster/storage) -"aJM" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral, -/area/quartermaster/storage) -"aJN" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/loadingarea{ - tag = "icon-loadingarea (NORTH)"; - icon_state = "loadingarea"; - dir = 1 - }, -/area/quartermaster/storage) -"aJO" = ( -/obj/structure/toilet{ - dir = 4 - }, -/obj/machinery/light/small{ - dir = 8 - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHEAST)"; - icon_state = "intact"; - dir = 5 - }, -/turf/open/floor/plating{ - icon_state = "platingdmg3" - }, -/area/security/prison) -"aJP" = ( -/obj/machinery/door/airlock{ - name = "Bathroom" - }, -/obj/structure/sign/poster{ - icon_state = "poster3_legit"; - pixel_y = 32; - tag = "icon-poster3_legit" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/floorgrime, -/area/security/prison) -"aJQ" = ( -/turf/open/floor/plating, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating{ - icon_state = "platingdmg2" - }, -/area/security/prison) -"aJR" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 2; - on = 1; - scrub_N2O = 1; - scrub_Toxins = 1 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/mob/living/simple_animal/mouse, -/turf/open/floor/plasteel/neutral, -/area/security/prison) -"aJS" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/security/prison) -"aJT" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating{ - icon_state = "platingdmg1" - }, -/area/security/prison) -"aJU" = ( -/obj/structure/table, -/obj/item/weapon/storage/pill_bottle/dice, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating{ - icon_state = "platingdmg3" - }, -/area/security/prison) -"aJV" = ( -/obj/structure/table, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/item/weapon/paper, -/obj/item/weapon/pen, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/security/prison) -"aJW" = ( -/obj/structure/chair/stool, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/open/floor/plasteel/neutral, -/area/security/prison) -"aJX" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating{ - icon_state = "platingdmg3" - }, -/area/security/prison) -"aJY" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plasteel/neutral, -/area/security/prison) -"aJZ" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/plasteel/red/corner{ - dir = 4 - }, -/area/security/prison) -"aKa" = ( -/turf/open/floor/plating{ - icon_state = "platingdmg3" - }, -/area/security/prison) -"aKb" = ( -/obj/machinery/airalarm{ - dir = 8; - icon_state = "alarm0"; - pixel_x = 24 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/security/prison) -"aKc" = ( -/obj/machinery/sparker{ - dir = 1; - id = "justicespark"; - pixel_x = -22 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 2; - on = 1; - scrub_N2O = 1; - scrub_Toxins = 1 - }, -/turf/open/floor/plasteel/darkred/corner{ - tag = "icon-darkredcorners (NORTH)"; - icon_state = "darkredcorners"; - dir = 1 - }, -/area/prison/solitary{ - name = "Prisoner Education Chamber" - }) -"aKd" = ( -/obj/structure/bed, -/obj/item/clothing/suit/straight_jacket, -/obj/item/clothing/mask/muzzle, -/obj/item/clothing/glasses/sunglasses/blindfold, -/obj/effect/decal/cleanable/blood/old, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/prison/solitary{ - name = "Prisoner Education Chamber" - }) -"aKe" = ( -/obj/machinery/flasher{ - id = "justiceflash"; - pixel_x = 26; - req_access_txt = "63" - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 2; - on = 1 - }, -/turf/open/floor/plasteel/darkred/corner{ - tag = "icon-darkredcorners (EAST)"; - icon_state = "darkredcorners"; - dir = 4 - }, -/area/prison/solitary{ - name = "Prisoner Education Chamber" - }) -"aKf" = ( -/obj/machinery/door/poddoor{ - id = "turbinevent"; - name = "Turbine Vent" - }, -/turf/open/floor/engine/vacuum, -/area/maintenance/incinerator) -"aKg" = ( -/obj/machinery/power/turbine{ - tag = "icon-turbine (WEST)"; - icon_state = "turbine"; - dir = 8; - luminosity = 2 - }, -/obj/structure/sign/vacuum{ - pixel_y = -32 - }, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/turf/open/floor/engine/vacuum, -/area/maintenance/incinerator) -"aKh" = ( -/obj/machinery/power/compressor{ - tag = "icon-compressor (EAST)"; - icon_state = "compressor"; - dir = 4; - luminosity = 2; - comp_id = "incineratorturbine" - }, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/engine/vacuum, -/area/maintenance/incinerator) -"aKi" = ( -/obj/machinery/igniter{ - icon_state = "igniter0"; - id = "Incinerator"; - luminosity = 2; - on = 0 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/turf/open/floor/engine/vacuum, -/area/maintenance/incinerator) -"aKj" = ( -/obj/machinery/door/airlock/glass{ - autoclose = 0; - frequency = 1449; - heat_proof = 1; - icon_state = "door_locked"; - id_tag = "incinerator_airlock_exterior"; - locked = 1; - name = "Incinerator Exterior Airlock"; - req_access_txt = "12" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/engine, -/area/maintenance/incinerator) -"aKk" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/engine/vacuum, -/area/maintenance/incinerator) -"aKl" = ( -/obj/machinery/door/airlock/glass{ - autoclose = 0; - frequency = 1449; - heat_proof = 1; - icon_state = "door_locked"; - id_tag = "incinerator_airlock_interior"; - locked = 1; - name = "Incinerator Interior Airlock"; - req_access_txt = "12" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/engine, -/area/maintenance/incinerator) -"aKm" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - tag = "icon-vault (WEST)"; - icon_state = "vault"; - dir = 8 - }, -/area/maintenance/incinerator) -"aKn" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/components/binary/valve, -/turf/open/floor/plasteel/warning{ - dir = 10 - }, -/area/maintenance/incinerator) -"aKo" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning, -/area/maintenance/incinerator) -"aKp" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/vault, -/area/atmos) -"aKq" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/vault, -/area/atmos) -"aKr" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/general/visible, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/vault, -/area/atmos) -"aKs" = ( -/obj/machinery/light{ - dir = 1 - }, -/obj/structure/extinguisher_cabinet{ - pixel_y = 32 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHWEST)"; - icon_state = "intact"; - dir = 9 - }, -/turf/open/floor/plasteel/vault, -/area/atmos) -"aKt" = ( -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = 0; - pixel_y = 26 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - dir = 6 - }, -/turf/open/floor/plasteel/vault, -/area/atmos) -"aKu" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/vault{ - dir = 10 - }, -/area/atmos) -"aKv" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/delivery, -/area/atmos) -"aKw" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/vault{ - dir = 6 - }, -/area/atmos) -"aKx" = ( -/obj/machinery/status_display{ - pixel_y = 32 - }, -/obj/machinery/light/small{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/vault, -/area/atmos) -"aKy" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/vault, -/area/atmos) -"aKz" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/vault{ - dir = 10 - }, -/area/atmos) -"aKA" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/delivery, -/area/atmos) -"aKB" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/vault{ - dir = 6 - }, -/area/atmos) -"aKC" = ( -/obj/machinery/light{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - dir = 10 - }, -/turf/open/floor/plasteel/vault, -/area/atmos) -"aKD" = ( -/turf/open/floor/plasteel/vault, -/area/atmos) -"aKE" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/turf/open/floor/plasteel/vault, -/area/atmos) -"aKF" = ( -/obj/machinery/light/small{ - dir = 8 - }, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"aKG" = ( -/obj/structure/chair/office/dark{ - dir = 4 - }, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"aKH" = ( -/obj/structure/table/wood, -/obj/item/weapon/clipboard, -/obj/item/weapon/folder/red, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"aKI" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/wood{ - icon_state = "wood-broken" - }, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"aKJ" = ( -/obj/structure/chair/stool/bar, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/blood/old, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/wood, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"aKK" = ( -/obj/machinery/computer/slot_machine, -/obj/machinery/light/small{ - dir = 4 - }, -/obj/structure/sign/poster{ - pixel_x = 32 - }, -/turf/open/floor/wood{ - tag = "icon-wood-broken2"; - icon_state = "wood-broken2" - }, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"aKL" = ( -/obj/structure/dresser, -/obj/machinery/newscaster{ - pixel_y = 32 - }, -/obj/machinery/status_display{ - pixel_x = -32 - }, -/turf/open/floor/plasteel/redblue, -/area/crew_quarters/theatre) -"aKM" = ( -/obj/structure/table/wood, -/obj/structure/sign/poster{ - pixel_y = 32 - }, -/obj/item/device/instrument/eguitar, -/obj/item/toy/crayon/spraycan/lubecan{ - charges = 5 - }, -/turf/open/floor/plasteel/redblue, -/area/crew_quarters/theatre) -"aKN" = ( -/obj/machinery/vending/autodrobe, -/obj/structure/cable/white{ - d2 = 2; - icon_state = "0-2"; - tag = "icon-0-2" - }, -/obj/machinery/light{ - dir = 1 - }, -/obj/machinery/power/apc{ - cell_type = 5000; - dir = 1; - name = "Theatre Backstage APC"; - pixel_x = 0; - pixel_y = 25 - }, -/turf/open/floor/plasteel/redblue, -/area/crew_quarters/theatre) -"aKO" = ( -/obj/structure/table/wood, -/obj/structure/sign/poster{ - pixel_y = 32 - }, -/obj/item/weapon/clipboard, -/obj/item/toy/figure/clown, -/turf/open/floor/plasteel/redblue, -/area/crew_quarters/theatre) -"aKP" = ( -/obj/structure/table/wood, -/obj/structure/extinguisher_cabinet{ - pixel_x = 26 - }, -/obj/item/weapon/storage/crayons, -/obj/item/weapon/storage/crayons, -/obj/item/device/flashlight/lamp/bananalamp{ - pixel_y = 5 - }, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = 0; - pixel_y = 26 - }, -/turf/open/floor/plasteel/redblue, -/area/crew_quarters/theatre) -"aKQ" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral/corner{ - dir = 1 - }, -/area/crew_quarters/sleep{ - name = "Service Hall" - }) -"aKR" = ( -/obj/structure/sign/poster, -/turf/closed/wall, -/area/crew_quarters/bar{ - name = "Atrium" - }) -"aKS" = ( -/obj/structure/table/wood, -/obj/item/device/instrument/guitar, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/bar{ - name = "Atrium" - }) -"aKT" = ( -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/bar{ - name = "Atrium" - }) -"aKU" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 2; - on = 1 - }, -/turf/open/floor/carpet, -/area/crew_quarters/bar{ - name = "Atrium" - }) -"aKV" = ( -/turf/open/floor/carpet, -/area/crew_quarters/bar{ - name = "Atrium" - }) -"aKW" = ( -/obj/structure/window/reinforced{ - dir = 4; - pixel_x = 0 - }, -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/bar{ - name = "Atrium" - }) -"aKX" = ( -/obj/structure/table/wood, -/obj/item/clothing/head/fedora, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/bar{ - name = "Atrium" - }) -"aKY" = ( -/obj/structure/chair/stool, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/redyellow, -/area/crew_quarters/bar{ - name = "Atrium" - }) -"aKZ" = ( -/obj/structure/table/wood, -/obj/item/weapon/storage/pill_bottle/dice, -/turf/open/floor/plasteel/redyellow, -/area/crew_quarters/bar{ - name = "Atrium" - }) -"aLa" = ( -/obj/item/weapon/reagent_containers/food/condiment/saltshaker{ - pixel_x = -8; - pixel_y = 5 - }, -/obj/item/weapon/reagent_containers/food/condiment/peppermill{ - pixel_x = -8 - }, -/obj/structure/table/wood, -/turf/open/floor/plasteel/redyellow, -/area/crew_quarters/bar{ - name = "Atrium" - }) -"aLb" = ( -/obj/structure/table/wood, -/obj/item/weapon/reagent_containers/food/drinks/soda_cans/cola, -/turf/open/floor/plasteel/redyellow, -/area/crew_quarters/bar{ - name = "Atrium" - }) -"aLc" = ( -/obj/structure/table, -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/item/stack/wrapping_paper{ - pixel_y = 5 - }, -/obj/item/stack/packageWrap, -/obj/item/weapon/hand_labeler, -/obj/machinery/power/apc{ - dir = 8; - name = "Delivery Office APC"; - pixel_x = -26; - pixel_y = 3 - }, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (WEST)"; - icon_state = "brown"; - dir = 8 - }, -/area/quartermaster/office{ - name = "\improper Cargo Office" - }) -"aLd" = ( -/obj/structure/chair/office/dark{ - dir = 8 - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/effect/landmark/start{ - name = "Cargo Technician" - }, -/turf/open/floor/plasteel/neutral, -/area/quartermaster/office{ - name = "\improper Cargo Office" - }) -"aLe" = ( -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/plasteel/neutral, -/area/quartermaster/office{ - name = "\improper Cargo Office" - }) -"aLf" = ( -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (EAST)"; - icon_state = "brown"; - dir = 4 - }, -/area/quartermaster/office{ - name = "\improper Cargo Office" - }) -"aLg" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/plasticflaps, -/turf/open/floor/plasteel/delivery, -/area/quartermaster/office{ - name = "\improper Cargo Office" - }) -"aLh" = ( -/obj/structure/cable/white{ - d2 = 2; - icon_state = "0-2"; - tag = "icon-0-2" - }, -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/checkpoint/supply{ - name = "Security Post - Cargo" - }) -"aLi" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/closet/secure_closet/brig{ - id = "cargocell"; - name = "Cargo Cell Locker" - }, -/turf/open/floor/plasteel/red/side{ - dir = 9 - }, -/area/security/checkpoint/supply{ - name = "Security Post - Cargo" - }) -"aLj" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/turf/open/floor/plasteel/red/side{ - dir = 1 - }, -/area/security/checkpoint/supply{ - name = "Security Post - Cargo" - }) -"aLk" = ( -/obj/structure/chair{ - dir = 8 - }, -/turf/open/floor/plasteel/red/side{ - dir = 5 - }, -/area/security/checkpoint/supply{ - name = "Security Post - Cargo" - }) -"aLl" = ( -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/warning{ - dir = 10 - }, -/area/quartermaster/storage) -"aLm" = ( -/turf/open/floor/plasteel/warning, -/area/quartermaster/storage) -"aLn" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHEAST)"; - icon_state = "intact"; - dir = 5 - }, -/turf/open/floor/plasteel/warning, -/area/quartermaster/storage) -"aLo" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHWEST)"; - icon_state = "intact"; - dir = 10 - }, -/turf/open/floor/plasteel/warning, -/area/quartermaster/storage) -"aLp" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/warning, -/area/quartermaster/storage) -"aLq" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning, -/area/quartermaster/storage) -"aLr" = ( -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/turf/open/floor/plasteel/warning, -/area/quartermaster/storage) -"aLs" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/light, -/obj/machinery/camera{ - c_tag = "Cargo Bay - Aft Starboard"; - dir = 1; - name = "cargo camera" - }, -/turf/open/floor/plasteel/warning, -/area/quartermaster/storage) -"aLt" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/warning{ - dir = 6 - }, -/area/quartermaster/storage) -"aLu" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/delivery, -/area/quartermaster/storage) -"aLv" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/delivery, -/area/quartermaster/storage) -"aLw" = ( -/obj/structure/cable/white, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/turf/open/floor/plating, -/area/quartermaster/storage) -"aLx" = ( -/obj/structure/table, -/obj/item/weapon/book/manual/chef_recipes, -/obj/item/weapon/storage/box/donkpockets, -/obj/item/clothing/head/chefhat, -/turf/open/floor/plasteel/neutral/corner{ - dir = 8 - }, -/area/security/prison) -"aLy" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/plasteel/neutral, -/area/security/prison) -"aLz" = ( -/obj/effect/decal/cleanable/blood/old, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/security/prison) -"aLA" = ( -/obj/structure/chair/stool, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/security/prison) -"aLB" = ( -/obj/structure/table, -/obj/item/trash/deadmouse{ - pixel_y = 5 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHWEST)"; - icon_state = "intact"; - dir = 9 - }, -/turf/open/floor/plating, -/area/security/prison) -"aLC" = ( -/obj/structure/table, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/item/toy/cards/deck, -/turf/open/floor/plasteel/neutral, -/area/security/prison) -"aLD" = ( -/obj/structure/chair/stool, -/turf/open/floor/plating, -/area/security/prison) -"aLE" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/neutral, -/area/security/prison) -"aLF" = ( -/turf/open/floor/plasteel/neutral, -/area/security/prison) -"aLG" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/security/prison) -"aLH" = ( -/obj/structure/chair/stool, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/security/prison) -"aLI" = ( -/obj/machinery/vending/coffee, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/redyellow/side, -/area/security/prison) -"aLJ" = ( -/turf/open/floor/plasteel/redyellow/side, -/obj/machinery/vending/sustenance, -/turf/open/floor/plating{ - icon_state = "platingdmg2" - }, -/area/security/prison) -"aLK" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/vault, -/area/prison/solitary{ - name = "Prisoner Education Chamber" - }) -"aLL" = ( -/obj/machinery/atmospherics/components/unary/outlet_injector/on, -/turf/open/floor/plasteel/vault, -/area/prison/solitary{ - name = "Prisoner Education Chamber" - }) -"aLM" = ( -/obj/structure/sign/poster{ - icon_state = "poster4_legit"; - pixel_x = 32; - pixel_y = 0; - tag = "icon-poster4_legit" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/vault, -/area/prison/solitary{ - name = "Prisoner Education Chamber" - }) -"aLN" = ( -/obj/machinery/atmospherics/components/unary/outlet_injector/on{ - dir = 4; - frequency = 1441; - id = "mix_in"; - pixel_y = 1 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/engine/vacuum, -/area/maintenance/incinerator) -"aLO" = ( -/obj/structure/sign/fire, -/obj/machinery/atmospherics/pipe/simple/general/visible{ - dir = 4 - }, -/turf/closed/wall/r_wall, -/area/maintenance/incinerator) -"aLP" = ( -/obj/machinery/atmospherics/components/binary/pump{ - dir = 8 - }, -/obj/machinery/light/small, -/turf/open/floor/engine/vacuum, -/area/maintenance/incinerator) -"aLQ" = ( -/obj/machinery/doorButtons/airlock_controller{ - idExterior = "incinerator_airlock_exterior"; - idInterior = "incinerator_airlock_interior"; - idSelf = "incinerator_access_control"; - name = "Incinerator Access Console"; - pixel_x = 8; - pixel_y = -24; - req_access_txt = "12" - }, -/obj/machinery/button/ignition{ - id = "Incinerator"; - pixel_x = 8; - pixel_y = -36 - }, -/obj/machinery/button/door{ - id = "turbinevent"; - name = "Turbine Vent Control"; - pixel_x = -8; - pixel_y = -36; - req_access_txt = "12" - }, -/obj/machinery/button/door{ - id = "auxincineratorvent"; - name = "Auxiliary Vent Control"; - pixel_x = -8; - pixel_y = -24; - req_access_txt = "12" - }, -/obj/machinery/computer/turbine_computer{ - id = "incineratorturbine" - }, -/obj/machinery/atmospherics/pipe/simple/general/visible{ - dir = 4 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/caution{ - tag = "icon-caution (SOUTHWEST)"; - icon_state = "caution"; - dir = 10 - }, -/area/maintenance/incinerator) -"aLR" = ( -/obj/structure/table/reinforced, -/obj/machinery/atmospherics/pipe/simple/general/visible{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/general/visible, -/obj/item/weapon/clipboard, -/obj/item/weapon/folder/yellow, -/obj/item/weapon/reagent_containers/pill/patch/silver_sulf, -/obj/structure/disposalpipe/segment, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/caution, -/area/maintenance/incinerator) -"aLS" = ( -/obj/structure/table/reinforced, -/obj/machinery/atmospherics/pipe/simple/general/visible{ - dir = 9 - }, -/obj/machinery/newscaster{ - pixel_y = -32 - }, -/obj/item/weapon/paper_bin, -/obj/item/weapon/pen, -/turf/open/floor/plasteel/caution, -/area/maintenance/incinerator) -"aLT" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHEAST)"; - icon_state = "intact"; - dir = 5 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/atmos) -"aLU" = ( -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/structure/window/reinforced{ - dir = 1; - pixel_y = 1 - }, -/obj/structure/table/reinforced, -/obj/item/weapon/paper_bin, -/obj/item/weapon/pen, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/caution{ - dir = 9 - }, -/area/atmos) -"aLV" = ( -/obj/structure/window/reinforced{ - dir = 1; - pixel_y = 1 - }, -/obj/structure/tank_dispenser, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/caution{ - dir = 1 - }, -/area/atmos) -"aLW" = ( -/obj/structure/window/reinforced{ - dir = 1; - pixel_y = 1 - }, -/obj/machinery/computer/atmos_control, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/caution{ - dir = 1 - }, -/area/atmos) -"aLX" = ( -/obj/structure/window/reinforced{ - dir = 1; - pixel_y = 1 - }, -/obj/machinery/computer/atmos_alert, -/obj/machinery/atmospherics/pipe/simple/general/visible, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/caution{ - dir = 1 - }, -/area/atmos) -"aLY" = ( -/obj/structure/window/reinforced{ - dir = 1; - pixel_y = 1 - }, -/obj/structure/table/reinforced, -/obj/item/weapon/crowbar/red, -/obj/item/weapon/wrench, -/obj/item/clothing/mask/gas, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/caution{ - dir = 1 - }, -/area/atmos) -"aLZ" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/tank/internals/emergency_oxygen{ - pixel_x = 6 - }, -/obj/item/weapon/tank/internals/emergency_oxygen{ - pixel_x = -6 - }, -/obj/item/clothing/mask/breath, -/obj/item/clothing/mask/breath, -/obj/structure/window/reinforced{ - dir = 1; - pixel_y = 1 - }, -/obj/structure/window/reinforced{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plasteel/caution{ - dir = 5 - }, -/area/atmos) -"aMa" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/atmos) -"aMb" = ( -/turf/open/floor/plasteel/delivery, -/area/atmos) -"aMc" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/atmos) -"aMd" = ( -/obj/structure/window/reinforced{ - dir = 1; - pixel_y = 1 - }, -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/structure/table/reinforced, -/obj/item/weapon/electronics/airalarm, -/obj/item/weapon/electronics/airalarm, -/obj/item/weapon/electronics/firealarm, -/obj/item/weapon/electronics/firealarm, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHEAST)"; - icon_state = "intact"; - dir = 6 - }, -/turf/open/floor/plasteel/caution{ - dir = 9 - }, -/area/atmos) -"aMe" = ( -/obj/structure/window/reinforced{ - dir = 1; - pixel_y = 1 - }, -/obj/structure/window/reinforced{ - dir = 4 - }, -/obj/structure/table/reinforced, -/obj/item/stack/cable_coil/white, -/obj/item/weapon/pipe_dispenser, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/caution{ - dir = 5 - }, -/area/atmos) -"aMf" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHWEST)"; - icon_state = "intact"; - dir = 9 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/atmos) -"aMg" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/delivery, -/area/atmos) -"aMh" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-18" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/atmos) -"aMi" = ( -/obj/structure/window/reinforced{ - dir = 1; - pixel_y = 1 - }, -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/structure/table/reinforced, -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible, -/obj/item/stack/rods{ - amount = 23 - }, -/obj/item/weapon/storage/box/lights/mixed, -/turf/open/floor/plasteel/caution{ - dir = 9 - }, -/area/atmos) -"aMj" = ( -/obj/structure/window/reinforced{ - dir = 1; - pixel_y = 1 - }, -/obj/structure/table/reinforced, -/obj/machinery/cell_charger, -/obj/item/weapon/stock_parts/cell/high, -/turf/open/floor/plasteel/caution{ - dir = 1 - }, -/area/atmos) -"aMk" = ( -/obj/structure/window/reinforced{ - dir = 1; - pixel_y = 1 - }, -/obj/structure/table/reinforced, -/obj/item/stack/sheet/plasteel{ - amount = 20 - }, -/obj/item/stack/sheet/rglass{ - amount = 20; - pixel_x = 2; - pixel_y = -2 - }, -/turf/open/floor/plasteel/caution{ - dir = 5 - }, -/area/atmos) -"aMl" = ( -/obj/structure/window/reinforced{ - dir = 8 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/atmos) -"aMm" = ( -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/atmos) -"aMn" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/neutral/side{ - dir = 8 - }, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"aMo" = ( -/obj/structure/sign/poster{ - pixel_x = -32 - }, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"aMp" = ( -/obj/structure/table/wood, -/obj/item/weapon/storage/briefcase, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"aMq" = ( -/obj/structure/table/wood, -/obj/item/toy/cards/deck/syndicate{ - icon_state = "deck_syndicate_full"; - pixel_x = 0; - pixel_y = 6 - }, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"aMr" = ( -/turf/open/floor/wood, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"aMs" = ( -/obj/structure/chair/stool/bar, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/wood, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"aMt" = ( -/obj/machinery/computer/slot_machine, -/obj/structure/sign/poster{ - pixel_x = 32 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/wood{ - icon_state = "wood-broken4" - }, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"aMu" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"aMv" = ( -/obj/structure/mirror{ - desc = "Mirror mirror on the wall, who is the most robust of them all?"; - pixel_x = -28 - }, -/turf/open/floor/plasteel/redblue, -/area/crew_quarters/theatre) -"aMw" = ( -/obj/effect/landmark/start{ - name = "Clown" - }, -/turf/open/floor/plasteel/redblue, -/area/crew_quarters/theatre) -"aMx" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 2; - on = 1 - }, -/turf/open/floor/plasteel/redblue, -/area/crew_quarters/theatre) -"aMy" = ( -/turf/open/floor/plasteel/delivery, -/area/crew_quarters/theatre) -"aMz" = ( -/obj/structure/plasticflaps{ - opacity = 1 - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/navbeacon{ - codes_txt = "delivery;dir=8"; - dir = 8; - freq = 1400; - location = "Theatre" - }, -/turf/open/floor/plasteel/delivery, -/area/crew_quarters/theatre) -"aMA" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/delivery, -/area/crew_quarters/sleep{ - name = "Service Hall" - }) -"aMB" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/light/small{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral/corner{ - dir = 4 - }, -/area/crew_quarters/sleep{ - name = "Service Hall" - }) -"aMC" = ( -/obj/structure/table/wood, -/obj/machinery/firealarm{ - dir = 8; - pixel_x = -24; - pixel_y = 0 - }, -/obj/item/device/camera, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/bar{ - name = "Atrium" - }) -"aMD" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/carpet, -/area/crew_quarters/bar{ - name = "Atrium" - }) -"aME" = ( -/obj/structure/chair/wood/normal, -/turf/open/floor/carpet, -/area/crew_quarters/bar{ - name = "Atrium" - }) -"aMF" = ( -/obj/structure/window/reinforced{ - dir = 4; - pixel_x = 0 - }, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/bar{ - name = "Atrium" - }) -"aMG" = ( -/obj/structure/chair/comfy/brown{ - icon_state = "comfychair"; - dir = 8 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/bar{ - name = "Atrium" - }) -"aMH" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 5 - }, -/turf/open/floor/plasteel/redyellow, -/area/crew_quarters/bar{ - name = "Atrium" - }) -"aMI" = ( -/obj/structure/table/wood, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/item/weapon/reagent_containers/food/drinks/bottle/orangejuice, -/turf/open/floor/plasteel/redyellow, -/area/crew_quarters/bar{ - name = "Atrium" - }) -"aMJ" = ( -/obj/structure/table/wood, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/item/weapon/reagent_containers/food/snacks/cheesiehonkers, -/turf/open/floor/plasteel/redyellow, -/area/crew_quarters/bar{ - name = "Atrium" - }) -"aMK" = ( -/obj/structure/table/wood, -/obj/item/toy/cards/deck, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/redyellow, -/area/crew_quarters/bar{ - name = "Atrium" - }) -"aML" = ( -/obj/structure/chair/stool, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/redyellow, -/area/crew_quarters/bar{ - name = "Atrium" - }) -"aMM" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/redyellow, -/area/crew_quarters/bar{ - name = "Atrium" - }) -"aMN" = ( -/obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/door/airlock/glass{ - name = "Atrium" - }, -/turf/open/floor/plasteel/warning/side, -/area/crew_quarters/bar{ - name = "Atrium" - }) -"aMO" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral/corner{ - dir = 1 - }, -/area/hallway/primary/fore) -"aMP" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral/side{ - dir = 1 - }, -/area/hallway/primary/fore) -"aMQ" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/obj/machinery/light{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 4 - }, -/area/hallway/primary/fore) -"aMR" = ( -/obj/structure/table, -/obj/item/weapon/storage/box{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/storage/box/lights/mixed, -/obj/machinery/firealarm{ - dir = 1; - pixel_x = 0; - pixel_y = -24 - }, -/obj/machinery/light_switch{ - pixel_x = -26; - pixel_y = -26 - }, -/obj/machinery/newscaster{ - pixel_x = -32 - }, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (SOUTHWEST)"; - icon_state = "brown"; - dir = 10 - }, -/area/quartermaster/office{ - name = "\improper Cargo Office" - }) -"aMS" = ( -/obj/structure/table, -/obj/item/weapon/folder/yellow, -/obj/item/device/destTagger, -/turf/open/floor/plasteel/brown, -/area/quartermaster/office{ - name = "\improper Cargo Office" - }) -"aMT" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/brown, -/area/quartermaster/office{ - name = "\improper Cargo Office" - }) -"aMU" = ( -/obj/effect/decal/cleanable/dirt, -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1 - }, -/obj/machinery/airalarm{ - dir = 8; - icon_state = "alarm0"; - pixel_x = 24 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (SOUTHEAST)"; - icon_state = "brown"; - dir = 6 - }, -/area/quartermaster/office{ - name = "\improper Cargo Office" - }) -"aMV" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/disposalpipe/trunk, -/obj/machinery/disposal/deliveryChute{ - tag = "icon-intake (NORTH)"; - icon_state = "intake"; - dir = 1 - }, -/turf/open/floor/plating, -/area/quartermaster/office{ - name = "\improper Cargo Office" - }) -"aMW" = ( -/turf/open/floor/plasteel/red/side{ - tag = "icon-red (SOUTHWEST)"; - icon_state = "red"; - dir = 10 - }, -/area/security/checkpoint/supply{ - name = "Security Post - Cargo" - }) -"aMX" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/turf/open/floor/plasteel/red/side, -/area/security/checkpoint/supply{ - name = "Security Post - Cargo" - }) -"aMY" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/chair{ - dir = 8 - }, -/turf/open/floor/plasteel/red/side{ - tag = "icon-red (SOUTHEAST)"; - icon_state = "red"; - dir = 6 - }, -/area/security/checkpoint/supply{ - name = "Security Post - Cargo" - }) -"aMZ" = ( -/obj/structure/cable/white{ - tag = "icon-0-2"; - icon_state = "0-2" - }, -/obj/structure/cable/white, -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/checkpoint/supply{ - name = "Security Post - Cargo" - }) -"aNa" = ( -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (NORTHWEST)"; - icon_state = "brown"; - dir = 9 - }, -/area/quartermaster/storage) -"aNb" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (NORTH)"; - icon_state = "brown"; - dir = 1 - }, -/area/quartermaster/storage) -"aNc" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (NORTH)"; - icon_state = "brown"; - dir = 1 - }, -/area/quartermaster/storage) -"aNd" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (NORTHEAST)"; - icon_state = "brown"; - dir = 5 - }, -/area/quartermaster/storage) -"aNe" = ( -/obj/machinery/status_display{ - density = 0; - name = "cargo display"; - pixel_x = 0; - pixel_y = 0; - supply_display = 1 - }, -/turf/closed/wall, -/area/quartermaster/qm) -"aNf" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/quartermaster/qm) -"aNg" = ( -/turf/closed/wall, -/area/quartermaster/qm) -"aNh" = ( -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/quartermaster/qm) -"aNi" = ( -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/quartermaster/qm) -"aNj" = ( -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/quartermaster/qm) -"aNk" = ( -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/structure/cable/white{ - tag = "icon-0-2"; - icon_state = "0-2" - }, -/turf/open/floor/plating, -/area/quartermaster/qm) -"aNl" = ( -/obj/structure/cable/white{ - tag = "icon-0-2"; - icon_state = "0-2" - }, -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/quartermaster/qm) -"aNm" = ( -/obj/structure/table/glass, -/obj/item/weapon/reagent_containers/glass/bottle/morphine, -/obj/item/weapon/reagent_containers/syringe, -/turf/open/floor/plasteel/whitered/side{ - dir = 9 - }, -/area/security/prison) -"aNn" = ( -/obj/structure/table/glass, -/obj/item/weapon/folder/blue, -/obj/item/device/healthanalyzer, -/obj/machinery/light{ - dir = 1 - }, -/turf/open/floor/plasteel/whitered/side{ - dir = 1 - }, -/area/security/prison) -"aNo" = ( -/obj/structure/table/glass, -/obj/item/weapon/reagent_containers/glass/bottle/morphine, -/obj/item/weapon/reagent_containers/syringe, -/turf/open/floor/plasteel/whitered/side{ - dir = 5 - }, -/area/security/prison) -"aNp" = ( -/obj/structure/table, -/obj/machinery/microwave{ - pixel_x = -2; - pixel_y = 5 - }, -/turf/open/floor/plating, -/area/security/prison) -"aNq" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating{ - icon_state = "panelscorched" - }, -/area/security/prison) -"aNr" = ( -/obj/machinery/light/small, -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/red/corner{ - dir = 8 - }, -/area/security/prison) -"aNs" = ( -/obj/machinery/newscaster{ - pixel_y = -32 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/neutral/corner{ - dir = 8 - }, -/area/security/prison) -"aNt" = ( -/obj/machinery/camera{ - c_tag = "Prison - Relaxation Area"; - dir = 1; - name = "prison camera"; - network = list("SS13","prison") - }, -/turf/open/floor/plating, -/area/security/prison) -"aNu" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/neutral/corner, -/area/security/prison) -"aNv" = ( -/obj/machinery/holopad, -/obj/item/device/radio/intercom{ - desc = "Talk through this. It looks like it has been modified to not broadcast."; - dir = 2; - name = "Prison Intercom"; - pixel_x = 0; - pixel_y = -28; - prison_radio = 1 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/bot, -/area/security/prison) -"aNw" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1 - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/light/small, -/turf/open/floor/plating{ - icon_state = "panelscorched" - }, -/area/security/prison) -"aNx" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/security/prison) -"aNy" = ( -/obj/machinery/computer/arcade, -/turf/open/floor/plating, -/area/security/prison) -"aNz" = ( -/obj/structure/cable/white{ - d2 = 2; - icon_state = "0-2"; - tag = "icon-0-2" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor/preopen{ - id = "justicechamber"; - name = "Justice Chamber Blast door" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/prison/solitary{ - name = "Prisoner Education Chamber" - }) -"aNA" = ( -/obj/machinery/door/poddoor/preopen{ - id = "justicechamber"; - name = "Justice Chamber Blast door" - }, -/obj/machinery/door/window/brigdoor/northright{ - dir = 2; - name = "Justice Chamber"; - req_access_txt = "3" - }, -/obj/machinery/door/window/brigdoor/northright{ - name = "Justice Chamber"; - req_access_txt = "3" - }, -/obj/structure/window/reinforced{ - dir = 4 - }, -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/general/hidden, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/prison/solitary{ - name = "Prisoner Education Chamber" - }) -"aNB" = ( -/obj/structure/cable/white{ - d2 = 2; - icon_state = "0-2"; - tag = "icon-0-2" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor/preopen{ - id = "justicechamber"; - name = "Justice Chamber Blast door" - }, -/obj/structure/sign/electricshock{ - pixel_x = 32 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/prison/solitary{ - name = "Prisoner Education Chamber" - }) -"aNC" = ( -/obj/structure/lattice/catwalk, -/obj/structure/disposaloutlet{ - tag = "icon-outlet (WEST)"; - icon_state = "outlet"; - dir = 8 - }, -/obj/structure/disposalpipe/trunk{ - dir = 4 - }, -/turf/open/space, -/area/space) -"aND" = ( -/obj/machinery/atmospherics/components/unary/outlet_injector/on, -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/turf/open/floor/plating/warnplate{ - dir = 10 - }, -/area/space) -"aNE" = ( -/obj/machinery/door/poddoor{ - id = "auxincineratorvent"; - name = "Incineration Chamber Vent" - }, -/turf/open/floor/engine/vacuum, -/area/maintenance/incinerator) -"aNF" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/general/visible, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plating, -/area/maintenance/incinerator) -"aNG" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/visible{ - dir = 6 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/atmos) -"aNH" = ( -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/structure/table/reinforced, -/obj/machinery/atmospherics/pipe/simple/cyan/visible{ - dir = 4 - }, -/obj/item/clothing/gloves/color/black, -/obj/item/clothing/gloves/color/black, -/obj/item/clothing/suit/hazardvest, -/obj/item/clothing/suit/hazardvest, -/obj/item/clothing/mask/gas, -/obj/item/clothing/mask/gas, -/turf/open/floor/plasteel/caution{ - dir = 8 - }, -/area/atmos) -"aNI" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/visible{ - dir = 4 - }, -/turf/open/floor/plasteel/warning{ - dir = 9 - }, -/area/atmos) -"aNJ" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/visible{ - dir = 4 - }, -/obj/effect/decal/cleanable/dirt, -/obj/structure/chair/stool, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/atmos) -"aNK" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/visible{ - dir = 4 - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/general/visible, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/atmos) -"aNL" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/visible{ - dir = 4 - }, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/atmos) -"aNM" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/visible{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/atmos) -"aNN" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/visible{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/atmos) -"aNO" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/visible{ - dir = 4 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/atmos) -"aNP" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/visible{ - dir = 4 - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/atmos) -"aNQ" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/visible{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/atmos) -"aNR" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/visible{ - dir = 4 - }, -/obj/machinery/light{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/atmos) -"aNS" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/visible{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/atmos) -"aNT" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/visible{ - dir = 10; - initialize_directions = 10 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/atmos) -"aNU" = ( -/obj/structure/lattice, -/turf/open/space, -/area/atmos) -"aNV" = ( -/obj/structure/grille, -/turf/closed/wall/r_wall, -/area/atmos) -"aNW" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/structure/barricade/wooden, -/turf/open/floor/plating, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"aNX" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/wood{ - icon_state = "wood-broken4" - }, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"aNY" = ( -/turf/open/floor/wood{ - tag = "icon-wood-broken2"; - icon_state = "wood-broken2" - }, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"aNZ" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/wood, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"aOa" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 2; - on = 1 - }, -/mob/living/simple_animal/cockroach, -/turf/open/floor/wood{ - tag = "icon-wood-broken5"; - icon_state = "wood-broken5" - }, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"aOb" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/wood, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"aOc" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/obj/structure/disposalpipe/sortjunction{ - dir = 2; - icon_state = "pipe-j2s"; - name = "Theatre Junction"; - sortType = 18 - }, -/turf/open/floor/plasteel/delivery, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"aOd" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/door/airlock{ - name = "Theatre Backstage"; - req_access_txt = "46" - }, -/turf/open/floor/plasteel/warning/side, -/area/crew_quarters/theatre) -"aOe" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 2; - on = 1; - scrub_N2O = 1; - scrub_Toxins = 1 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/redblue/redside{ - tag = "icon-redblue (NORTH)"; - icon_state = "redblue"; - dir = 1 - }, -/area/crew_quarters/theatre) -"aOf" = ( -/obj/machinery/holopad, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/bot, -/area/crew_quarters/theatre) -"aOg" = ( -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/redblue/redside{ - tag = "icon-redblue (NORTH)"; - icon_state = "redblue"; - dir = 1 - }, -/area/crew_quarters/theatre) -"aOh" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/redblue/redside{ - tag = "icon-redblue (NORTH)"; - icon_state = "redblue"; - dir = 1 - }, -/area/crew_quarters/theatre) -"aOi" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/delivery, -/area/crew_quarters/theatre) -"aOj" = ( -/obj/machinery/door/firedoor, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/door/airlock{ - name = "Theatre Backstage"; - req_access_txt = "46" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/crew_quarters/theatre) -"aOk" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/bot, -/area/crew_quarters/sleep{ - name = "Service Hall" - }) -"aOl" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, -/turf/open/floor/plasteel/bot, -/area/crew_quarters/sleep{ - name = "Service Hall" - }) -"aOm" = ( -/obj/machinery/door/firedoor, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/door/airlock{ - name = "Theatre Backstage"; - req_access_txt = "46" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/crew_quarters/bar{ - name = "Atrium" - }) -"aOn" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/light_switch{ - pixel_x = -26; - pixel_y = -26 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/bar{ - name = "Atrium" - }) -"aOo" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/bar{ - name = "Atrium" - }) -"aOp" = ( -/obj/structure/chair/wood/normal{ - tag = "icon-wooden_chair (EAST)"; - icon_state = "wooden_chair"; - dir = 4 - }, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHWEST)"; - icon_state = "intact"; - dir = 9 - }, -/turf/open/floor/carpet, -/area/crew_quarters/bar{ - name = "Atrium" - }) -"aOq" = ( -/obj/machinery/holopad, -/turf/open/floor/carpet, -/area/crew_quarters/bar{ - name = "Atrium" - }) -"aOr" = ( -/obj/effect/landmark{ - name = "lightsout" - }, -/turf/open/floor/plasteel/redyellow, -/area/crew_quarters/bar{ - name = "Atrium" - }) -"aOs" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass{ - name = "Atrium" - }, -/turf/open/floor/plasteel/warning/side, -/area/crew_quarters/bar{ - name = "Atrium" - }) -"aOt" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/goonplaque, -/area/hallway/primary/fore) -"aOu" = ( -/obj/machinery/door/firedoor, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/door/airlock/glass_mining{ - name = "Delivery Office"; - req_access_txt = "48;50" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (EAST)"; - icon_state = "plasteel_warn_side"; - dir = 4 - }, -/area/quartermaster/office{ - name = "\improper Cargo Office" - }) -"aOv" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/quartermaster/office{ - name = "\improper Cargo Office" - }) -"aOw" = ( -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/turf/closed/wall, -/area/quartermaster/office{ - name = "\improper Cargo Office" - }) -"aOx" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/closed/wall, -/area/security/checkpoint/supply{ - name = "Security Post - Cargo" - }) -"aOy" = ( -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plating, -/area/security/checkpoint/supply{ - name = "Security Post - Cargo" - }) -"aOz" = ( -/obj/machinery/door/firedoor, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/machinery/door/airlock/glass_security{ - id_tag = "cardoor"; - name = "Cargo Cell"; - req_access_txt = "63" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/security/checkpoint/supply{ - name = "Security Post - Cargo" - }) -"aOA" = ( -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plating, -/area/security/checkpoint/supply{ - name = "Security Post - Cargo" - }) -"aOB" = ( -/obj/structure/cable/white{ - d2 = 2; - icon_state = "0-2"; - tag = "icon-0-2" - }, -/obj/machinery/power/apc{ - dir = 8; - name = "Cargo Bay APC"; - pixel_x = -26; - pixel_y = 3 - }, -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/obj/machinery/camera{ - c_tag = "Cargo Bay - Aft Port"; - dir = 4; - name = "cargo camera" - }, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (WEST)"; - icon_state = "brown"; - dir = 8 - }, -/area/quartermaster/storage) -"aOC" = ( -/obj/structure/table/reinforced, -/obj/machinery/computer/stockexchange, -/turf/open/floor/plasteel/neutral, -/area/quartermaster/storage) -"aOD" = ( -/obj/structure/table/reinforced, -/obj/item/stack/packageWrap, -/obj/item/weapon/hand_labeler, -/turf/open/floor/plasteel/neutral, -/area/quartermaster/storage) -"aOE" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral, -/area/quartermaster/storage) -"aOF" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/storage/box/donkpockets, -/turf/open/floor/plasteel/neutral, -/area/quartermaster/storage) -"aOG" = ( -/obj/structure/table/reinforced, -/obj/machinery/microwave{ - desc = "Cooks and boils stuff, somehow."; - pixel_x = -3; - pixel_y = 5 - }, -/turf/open/floor/plasteel/neutral, -/area/quartermaster/storage) -"aOH" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (EAST)"; - icon_state = "brown"; - dir = 4 - }, -/area/quartermaster/storage) -"aOI" = ( -/obj/structure/filingcabinet/chestdrawer, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (NORTHWEST)"; - icon_state = "brown"; - dir = 9 - }, -/area/quartermaster/qm) -"aOJ" = ( -/obj/structure/table, -/obj/item/weapon/clipboard, -/obj/item/toy/figure/qm, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (NORTH)"; - icon_state = "brown"; - dir = 1 - }, -/area/quartermaster/qm) -"aOK" = ( -/obj/machinery/disposal/bin, -/obj/structure/disposalpipe/trunk, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (NORTH)"; - icon_state = "brown"; - dir = 1 - }, -/area/quartermaster/qm) -"aOL" = ( -/obj/structure/cable/white{ - tag = "icon-0-2"; - icon_state = "0-2" - }, -/obj/machinery/power/apc{ - cell_type = 10000; - dir = 1; - name = "Quartermaster's Office APC"; - pixel_x = 0; - pixel_y = 28 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 2; - on = 1 - }, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (NORTH)"; - icon_state = "brown"; - dir = 1 - }, -/area/quartermaster/qm) -"aOM" = ( -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (NORTH)"; - icon_state = "brown"; - dir = 1 - }, -/area/quartermaster/qm) -"aON" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (NORTH)"; - icon_state = "brown"; - dir = 1 - }, -/area/quartermaster/qm) -"aOO" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/folder/yellow, -/obj/item/stack/packageWrap, -/obj/item/weapon/hand_labeler, -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/obj/structure/extinguisher_cabinet{ - pixel_x = 26; - pixel_y = 32 - }, -/obj/item/device/radio/intercom{ - dir = 8; - name = "Station Intercom (General)"; - pixel_x = 28 - }, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (NORTHEAST)"; - icon_state = "brown"; - dir = 5 - }, -/area/quartermaster/qm) -"aOP" = ( -/obj/structure/bed, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/item/weapon/bedsheet/qm, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (NORTH)"; - icon_state = "brown"; - dir = 1 - }, -/area/quartermaster/qm) -"aOQ" = ( -/obj/structure/table/reinforced, -/obj/item/device/flashlight/lamp, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (NORTHEAST)"; - icon_state = "brown"; - dir = 5 - }, -/area/quartermaster/qm) -"aOR" = ( -/obj/structure/cable/white, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/quartermaster/qm) -"aOS" = ( -/obj/structure/bed, -/obj/item/clothing/suit/straight_jacket, -/obj/item/clothing/mask/muzzle, -/obj/item/clothing/glasses/sunglasses/blindfold, -/turf/open/floor/plasteel/whitered/side{ - dir = 8 - }, -/area/security/prison) -"aOT" = ( -/turf/open/floor/plasteel/white, -/area/security/prison) -"aOU" = ( -/obj/structure/bed, -/obj/item/clothing/suit/straight_jacket, -/obj/item/clothing/mask/muzzle, -/obj/item/clothing/glasses/sunglasses/blindfold, -/turf/open/floor/plasteel/whitered/side{ - dir = 4 - }, -/area/security/prison) -"aOV" = ( -/obj/machinery/door/poddoor{ - density = 0; - icon_state = "open"; - id = "permacell3"; - name = "Cell Shutters"; - opacity = 0 - }, -/obj/machinery/door/airlock/glass{ - id_tag = "permabolt3"; - name = "Cell 3" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (EAST)"; - icon_state = "plasteel_warn_side"; - dir = 4 - }, -/area/security/prison) -"aOW" = ( -/obj/machinery/door/poddoor{ - density = 0; - icon_state = "open"; - id = "permacell2"; - name = "Cell Shutters"; - opacity = 0 - }, -/obj/machinery/door/airlock/glass{ - id_tag = "permabolt2"; - name = "Cell 2" - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (EAST)"; - icon_state = "plasteel_warn_side"; - dir = 4 - }, -/area/security/prison) -"aOX" = ( -/obj/machinery/door/poddoor{ - density = 0; - icon_state = "open"; - id = "permacell1"; - name = "Cell Shutters"; - opacity = 0 - }, -/obj/machinery/door/airlock/glass{ - id_tag = "permabolt1"; - name = "Cell 1" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (EAST)"; - icon_state = "plasteel_warn_side"; - dir = 4 - }, -/area/security/prison) -"aOY" = ( -/obj/structure/table/reinforced, -/obj/machinery/airalarm{ - dir = 4; - locked = 0; - pixel_x = -23; - pixel_y = 0 - }, -/obj/machinery/status_display{ - pixel_y = 32 - }, -/obj/item/weapon/reagent_containers/glass/bottle/morphine{ - pixel_x = 7; - pixel_y = 7 - }, -/obj/item/weapon/reagent_containers/glass/bottle/morphine{ - pixel_x = -7; - pixel_y = 7 - }, -/obj/item/weapon/reagent_containers/glass/bottle/chloralhydrate{ - pixel_x = -7 - }, -/obj/item/weapon/reagent_containers/glass/bottle/facid{ - pixel_x = 7 - }, -/obj/item/weapon/storage/backpack/dufflebag/sec{ - contents = newlist(/obj/item/weapon/scalpel,/obj/item/weapon/hemostat,/obj/item/weapon/retractor,/obj/item/weapon/cautery,/obj/item/weapon/circular_saw,/obj/item/weapon/surgical_drapes,/obj/item/clothing/mask/surgical); - desc = "A large dufflebag for holding extra supplies - this one has a material inlay with space for various sharp-looking tools."; - name = "dufflebag"; - pixel_y = 5 - }, -/turf/open/floor/plasteel/darkred/side{ - tag = "icon-darkred (NORTHWEST)"; - icon_state = "darkred"; - dir = 9 - }, -/area/prison/solitary{ - name = "Prisoner Education Chamber" - }) -"aOZ" = ( -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/structure/table/reinforced, -/obj/machinery/button/ignition{ - id = "justicespark"; - pixel_x = 7; - pixel_y = 26; - req_access_txt = "63" - }, -/obj/machinery/button/flasher{ - id = "justiceflash"; - pixel_x = 7; - pixel_y = 38; - req_access_txt = "63" - }, -/obj/machinery/button/door{ - id = "justiceblast"; - name = "Justice Shutters Control"; - pixel_x = -7; - pixel_y = 26; - req_access_txt = "63" - }, -/obj/machinery/button/door{ - id = "justicechamber"; - name = "Justice Chamber Control"; - pixel_x = -7; - pixel_y = 38; - req_access_txt = "3" - }, -/obj/item/weapon/folder/red{ - pixel_x = 3 - }, -/obj/item/weapon/restraints/handcuffs, -/obj/item/device/taperecorder, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHEAST)"; - icon_state = "intact"; - dir = 6 - }, -/turf/open/floor/plasteel/darkred/side{ - dir = 1 - }, -/area/prison/solitary{ - name = "Prisoner Education Chamber" - }) -"aPa" = ( -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/darkred/side{ - dir = 1 - }, -/area/prison/solitary{ - name = "Prisoner Education Chamber" - }) -"aPb" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/general/hidden, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/darkred/side{ - dir = 1 - }, -/area/prison/solitary{ - name = "Prisoner Education Chamber" - }) -"aPc" = ( -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/structure/closet/secure_closet/injection, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHWEST)"; - icon_state = "intact"; - dir = 9 - }, -/turf/open/floor/plasteel/darkred/side{ - dir = 5 - }, -/area/prison/solitary{ - name = "Prisoner Education Chamber" - }) -"aPd" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible, -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/machinery/portable_atmospherics/canister/carbon_dioxide, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/prison/solitary{ - name = "Prisoner Education Chamber" - }) -"aPe" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible, -/obj/machinery/portable_atmospherics/canister/nitrous_oxide, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/prison/solitary{ - name = "Prisoner Education Chamber" - }) -"aPf" = ( -/obj/structure/lattice, -/obj/machinery/atmospherics/pipe/simple/general/visible{ - icon_state = "intact"; - dir = 5 - }, -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/turf/open/space, -/area/space) -"aPg" = ( -/obj/structure/lattice/catwalk, -/obj/machinery/atmospherics/pipe/simple/general/visible{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/space, -/area/space) -"aPh" = ( -/obj/structure/lattice, -/obj/machinery/atmospherics/pipe/simple/general/visible{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/space, -/area/space) -"aPi" = ( -/obj/structure/lattice/catwalk, -/obj/machinery/atmospherics/pipe/simple/general/visible{ - dir = 9 - }, -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/turf/open/space, -/area/space) -"aPj" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/visible, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/atmos) -"aPk" = ( -/obj/structure/window/reinforced, -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/structure/table/reinforced, -/obj/item/stack/packageWrap, -/obj/item/weapon/hand_labeler, -/turf/open/floor/plasteel/caution{ - tag = "icon-caution (SOUTHWEST)"; - icon_state = "caution"; - dir = 10 - }, -/area/atmos) -"aPl" = ( -/obj/machinery/atmospherics/pipe/simple/yellow/visible{ - dir = 6 - }, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/atmos) -"aPm" = ( -/obj/machinery/atmospherics/pipe/simple/yellow/visible{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/atmos) -"aPn" = ( -/obj/machinery/atmospherics/pipe/simple/yellow/visible{ - dir = 4 - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/components/binary/pump{ - dir = 1; - icon_state = "pump_map"; - name = "Port to Turbine" - }, -/turf/open/floor/plasteel/neutral, -/area/atmos) -"aPo" = ( -/obj/machinery/atmospherics/pipe/simple/yellow/visible{ - dir = 4 - }, -/obj/machinery/atmospherics/components/binary/pump{ - dir = 1; - icon_state = "pump_map"; - name = "Port to Filter" - }, -/turf/open/floor/plasteel/neutral, -/area/atmos) -"aPp" = ( -/obj/machinery/atmospherics/pipe/simple/yellow/visible{ - dir = 4 - }, -/obj/effect/landmark{ - name = "lightsout" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral, -/area/atmos) -"aPq" = ( -/obj/machinery/atmospherics/pipe/simple/yellow/visible{ - dir = 4 - }, -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/turf/open/floor/plasteel/neutral, -/area/atmos) -"aPr" = ( -/obj/machinery/atmospherics/pipe/simple/yellow/visible{ - dir = 4 - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral, -/area/atmos) -"aPs" = ( -/obj/machinery/atmospherics/pipe/simple/yellow/visible{ - dir = 4 - }, -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible, -/turf/open/floor/plasteel/neutral, -/area/atmos) -"aPt" = ( -/obj/machinery/atmospherics/pipe/manifold/yellow/visible{ - dir = 1 - }, -/obj/machinery/meter, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/atmos) -"aPu" = ( -/obj/structure/window/reinforced{ - dir = 4; - pixel_x = 0 - }, -/obj/structure/window/reinforced{ - dir = 1; - pixel_y = 1 - }, -/obj/machinery/atmospherics/components/binary/pump{ - dir = 8; - name = "Air to Pure" - }, -/turf/open/floor/plasteel/arrival{ - dir = 5 - }, -/area/atmos) -"aPv" = ( -/obj/machinery/atmospherics/pipe/manifold/cyan/visible, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/atmos) -"aPw" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/cyan/visible{ - dir = 4 - }, -/turf/open/floor/plating, -/area/atmos) -"aPx" = ( -/obj/structure/lattice/catwalk, -/obj/machinery/atmospherics/pipe/simple/cyan/visible{ - dir = 4 - }, -/turf/open/space, -/area/atmos) -"aPy" = ( -/obj/machinery/meter{ - name = "Mixed Air Tank Out" - }, -/obj/structure/grille, -/obj/machinery/atmospherics/pipe/simple/cyan/visible{ - dir = 4 - }, -/turf/closed/wall/r_wall, -/area/atmos) -"aPz" = ( -/obj/machinery/atmospherics/components/unary/vent_pump/high_volume{ - dir = 8; - external_pressure_bound = 0; - frequency = 1441; - icon_state = "in"; - id_tag = "air_out"; - internal_pressure_bound = 2000; - on = 1; - pressure_checks = 2; - pump_direction = 0 - }, -/turf/open/floor/engine/air, -/area/atmos) -"aPA" = ( -/obj/machinery/camera{ - c_tag = "Atmospherics - Air Supply"; - name = "atmospherics camera" - }, -/turf/open/floor/engine/air, -/area/atmos) -"aPB" = ( -/turf/open/floor/engine/air, -/area/atmos) -"aPC" = ( -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Maintenance Hatch"; - req_access_txt = "12" - }, -/obj/structure/barricade/wooden, -/turf/open/floor/plasteel/warning/side, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"aPD" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"aPE" = ( -/obj/structure/chair/stool/bar, -/turf/open/floor/wood{ - tag = "icon-wood-broken3"; - icon_state = "wood-broken3" - }, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"aPF" = ( -/obj/structure/chair/stool/bar, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 5 - }, -/turf/open/floor/plating, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"aPG" = ( -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/wood{ - icon_state = "wood-broken5" - }, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"aPH" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"aPI" = ( -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Maintenance Hatch"; - req_access_txt = "12" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/barricade/wooden, -/turf/open/floor/plasteel/warning/side, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"aPJ" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/delivery, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"aPK" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/closed/wall, -/area/crew_quarters/theatre) -"aPL" = ( -/obj/structure/mirror{ - desc = "Mirror mirror on the wall, who is the most robust of them all?"; - pixel_x = -28 - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/open/floor/plasteel/cafeteria, -/area/crew_quarters/theatre) -"aPM" = ( -/obj/effect/landmark/start{ - name = "Mime" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/cafeteria, -/area/crew_quarters/theatre) -"aPN" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/cafeteria, -/area/crew_quarters/theatre) -"aPO" = ( -/obj/machinery/firealarm{ - dir = 4; - icon_state = "fire0"; - pixel_x = 24; - pixel_y = 0; - tag = "icon-fire0 (EAST)" - }, -/obj/machinery/light_switch{ - pixel_x = 26; - pixel_y = -26 - }, -/obj/machinery/disposal/bin, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/trunk{ - dir = 1 - }, -/obj/machinery/camera{ - c_tag = "Theatre Backstage"; - dir = 8; - name = "service camera" - }, -/turf/open/floor/plasteel/bot, -/area/crew_quarters/theatre) -"aPP" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/crew_quarters/theatre) -"aPQ" = ( -/obj/machinery/atmospherics/pipe/manifold4w/scrubbers/hidden, -/turf/open/floor/plasteel/loadingarea, -/area/crew_quarters/sleep{ - name = "Service Hall" - }) -"aPR" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/item/weapon/storage/pod{ - pixel_x = 32 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 4 - }, -/area/crew_quarters/sleep{ - name = "Service Hall" - }) -"aPS" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/crew_quarters/bar{ - name = "Atrium" - }) -"aPT" = ( -/obj/structure/table/wood, -/obj/item/weapon/lipstick/random{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/lipstick/random{ - pixel_x = -3; - pixel_y = -3 - }, -/obj/item/weapon/lipstick/random, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/bar{ - name = "Atrium" - }) -"aPU" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/bar{ - name = "Atrium" - }) -"aPV" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHWEST)"; - icon_state = "intact"; - dir = 10 - }, -/turf/open/floor/carpet, -/area/crew_quarters/bar{ - name = "Atrium" - }) -"aPW" = ( -/obj/structure/chair/wood/normal{ - tag = "icon-wooden_chair (NORTH)"; - icon_state = "wooden_chair"; - dir = 1 - }, -/turf/open/floor/carpet, -/area/crew_quarters/bar{ - name = "Atrium" - }) -"aPX" = ( -/obj/structure/table/wood, -/obj/item/weapon/reagent_containers/food/drinks/coffee, -/turf/open/floor/plasteel/redyellow, -/area/crew_quarters/bar{ - name = "Atrium" - }) -"aPY" = ( -/obj/structure/table/wood, -/obj/item/device/paicard, -/turf/open/floor/plasteel/redyellow, -/area/crew_quarters/bar{ - name = "Atrium" - }) -"aPZ" = ( -/obj/structure/chair/stool, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHEAST)"; - icon_state = "intact"; - dir = 6 - }, -/turf/open/floor/plasteel/redyellow, -/area/crew_quarters/bar{ - name = "Atrium" - }) -"aQa" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/redyellow, -/area/crew_quarters/bar{ - name = "Atrium" - }) -"aQb" = ( -/obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/door/airlock/glass{ - name = "Atrium" - }, -/turf/open/floor/plasteel/warning/side, -/area/crew_quarters/bar{ - name = "Atrium" - }) -"aQc" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral/side, -/area/hallway/primary/fore) -"aQd" = ( -/obj/structure/table/reinforced, -/obj/machinery/computer/stockexchange, -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/obj/machinery/newscaster{ - pixel_x = -32 - }, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (NORTHWEST)"; - icon_state = "brown"; - dir = 9 - }, -/area/quartermaster/office{ - name = "\improper Cargo Office" - }) -"aQe" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/folder/yellow, -/obj/item/device/multitool, -/obj/item/weapon/pen/red, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHEAST)"; - icon_state = "intact"; - dir = 6 - }, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (NORTH)"; - icon_state = "brown"; - dir = 1 - }, -/area/quartermaster/office{ - name = "\improper Cargo Office" - }) -"aQf" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (NORTH)"; - icon_state = "brown"; - dir = 1 - }, -/area/quartermaster/office{ - name = "\improper Cargo Office" - }) -"aQg" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHWEST)"; - icon_state = "intact"; - dir = 9 - }, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (NORTH)"; - icon_state = "brown"; - dir = 1 - }, -/area/quartermaster/office{ - name = "\improper Cargo Office" - }) -"aQh" = ( -/obj/machinery/photocopier, -/obj/machinery/ai_status_display{ - pixel_y = 32 - }, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (NORTH)"; - icon_state = "brown"; - dir = 1 - }, -/area/quartermaster/office{ - name = "\improper Cargo Office" - }) -"aQi" = ( -/obj/structure/table, -/obj/item/weapon/storage/firstaid/regular, -/obj/machinery/requests_console{ - department = "Cargo Office"; - departmentType = 0; - name = "Cargo Office RC"; - pixel_x = 0; - pixel_y = 32 - }, -/obj/machinery/camera{ - c_tag = "Cargo - Office"; - dir = 2; - name = "cargo camera" - }, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (NORTH)"; - icon_state = "brown"; - dir = 1 - }, -/area/quartermaster/office{ - name = "\improper Cargo Office" - }) -"aQj" = ( -/obj/structure/table, -/obj/item/weapon/paper_bin, -/obj/machinery/power/apc{ - cell_type = 10000; - dir = 1; - name = "Cargo Office APC"; - pixel_x = 0; - pixel_y = 28 - }, -/obj/structure/cable/white{ - tag = "icon-0-2"; - icon_state = "0-2" - }, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (NORTH)"; - icon_state = "brown"; - dir = 1 - }, -/area/quartermaster/office{ - name = "\improper Cargo Office" - }) -"aQk" = ( -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (NORTH)"; - icon_state = "brown"; - dir = 1 - }, -/area/quartermaster/office{ - name = "\improper Cargo Office" - }) -"aQl" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (NORTH)"; - icon_state = "brown"; - dir = 1 - }, -/area/quartermaster/office{ - name = "\improper Cargo Office" - }) -"aQm" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1 - }, -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/obj/structure/extinguisher_cabinet{ - pixel_x = 26 - }, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (NORTHEAST)"; - icon_state = "brown"; - dir = 5 - }, -/area/quartermaster/office{ - name = "\improper Cargo Office" - }) -"aQn" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/obj/structure/extinguisher_cabinet{ - pixel_x = -26 - }, -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (WEST)"; - icon_state = "brown"; - dir = 8 - }, -/area/quartermaster/storage) -"aQo" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/paper_bin, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/quartermaster/storage) -"aQp" = ( -/obj/structure/chair/office/dark{ - dir = 1 - }, -/obj/effect/landmark/start{ - name = "Cargo Technician" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/quartermaster/storage) -"aQq" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral, -/area/quartermaster/storage) -"aQr" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/quartermaster/storage) -"aQs" = ( -/obj/effect/decal/cleanable/oil, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/quartermaster/storage) -"aQt" = ( -/obj/machinery/computer/cargo, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/quartermaster/storage) -"aQu" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHEAST)"; - icon_state = "intact"; - dir = 6 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (EAST)"; - icon_state = "brown"; - dir = 4 - }, -/area/quartermaster/storage) -"aQv" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plating, -/area/quartermaster/qm) -"aQw" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (WEST)"; - icon_state = "brown"; - dir = 8 - }, -/area/quartermaster/qm) -"aQx" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/quartermaster/qm) -"aQy" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/neutral, -/area/quartermaster/qm) -"aQz" = ( -/obj/structure/chair/office/dark{ - dir = 4 - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/open/floor/plasteel/neutral, -/area/quartermaster/qm) -"aQA" = ( -/obj/structure/table/reinforced, -/obj/item/device/flashlight/lamp, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/quartermaster/qm) -"aQB" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/quartermaster/qm) -"aQC" = ( -/obj/machinery/computer/cargo, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (EAST)"; - icon_state = "brown"; - dir = 4 - }, -/area/quartermaster/qm) -"aQD" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/tinted/fulltile, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/quartermaster/qm) -"aQE" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (WEST)"; - icon_state = "brown"; - dir = 8 - }, -/area/quartermaster/qm) -"aQF" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/plasteel/neutral, -/area/quartermaster/qm) -"aQG" = ( -/obj/machinery/computer/security/mining, -/obj/machinery/status_display{ - pixel_x = 32 - }, -/obj/machinery/camera{ - c_tag = "Cargo - Quartermaster's Quarters"; - dir = 8; - name = "cargo camera" - }, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (EAST)"; - icon_state = "brown"; - dir = 4 - }, -/area/quartermaster/qm) -"aQH" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 2; - on = 1 - }, -/turf/open/floor/plasteel/whitered/side{ - dir = 8 - }, -/area/security/prison) -"aQI" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 2; - on = 1; - scrub_N2O = 1; - scrub_Toxins = 1 - }, -/turf/open/floor/plasteel/whitered/side{ - dir = 4 - }, -/area/security/prison) -"aQJ" = ( -/obj/structure/bed, -/obj/item/weapon/bedsheet/brown, -/obj/effect/landmark{ - name = "revenantspawn" - }, -/turf/open/floor/plasteel/red/side{ - dir = 8 - }, -/area/security/prison) -"aQK" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral/side, -/area/security/prison) -"aQL" = ( -/obj/machinery/light/small{ - dir = 1 - }, -/obj/machinery/button/door{ - id = "permabolt3"; - name = "Cell Bolt Control"; - normaldoorcontrol = 1; - pixel_x = 0; - pixel_y = 25; - req_access_txt = "0"; - specialfunctions = 4 - }, -/obj/structure/chair/stool, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 2; - on = 1 - }, -/obj/machinery/camera{ - c_tag = "Prison - Cell 3"; - dir = 2; - name = "prison camera"; - network = list("SS13","prison") - }, -/turf/open/floor/plating{ - icon_state = "panelscorched" - }, -/area/security/prison) -"aQM" = ( -/obj/structure/bed, -/obj/item/weapon/bedsheet/brown, -/obj/effect/decal/cleanable/dirt, -/obj/effect/landmark{ - name = "revenantspawn" - }, -/turf/open/floor/plasteel/red/side{ - dir = 8 - }, -/area/security/prison) -"aQN" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/neutral/side, -/area/security/prison) -"aQO" = ( -/obj/machinery/light/small{ - dir = 1 - }, -/obj/machinery/button/door{ - id = "permabolt2"; - name = "Cell Bolt Control"; - normaldoorcontrol = 1; - pixel_x = 0; - pixel_y = 25; - req_access_txt = "0"; - specialfunctions = 4 - }, -/obj/item/chair/stool, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 2; - on = 1 - }, -/obj/machinery/camera{ - c_tag = "Prison - Cell 2"; - dir = 2; - name = "prison camera"; - network = list("SS13","prison") - }, -/turf/open/floor/plasteel/red/side{ - dir = 4 - }, -/area/security/prison) -"aQP" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating{ - icon_state = "panelscorched" - }, -/area/security/prison) -"aQQ" = ( -/obj/machinery/light/small{ - dir = 1 - }, -/obj/machinery/button/door{ - id = "permabolt1"; - name = "Cell Bolt Control"; - normaldoorcontrol = 1; - pixel_x = 0; - pixel_y = 25; - req_access_txt = "0"; - specialfunctions = 4 - }, -/obj/structure/chair/stool, -/obj/effect/decal/cleanable/cobweb/cobweb2, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 2; - on = 1 - }, -/obj/machinery/camera{ - c_tag = "Prison - Cell 1"; - dir = 2; - name = "prison camera"; - network = list("SS13","prison") - }, -/turf/open/floor/plasteel/red/side{ - dir = 4 - }, -/area/security/prison) -"aQR" = ( -/obj/structure/table/reinforced, -/obj/structure/reagent_dispensers/peppertank{ - pixel_x = -32 - }, -/obj/item/device/electropack, -/obj/item/device/assembly/signaler, -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/turf/open/floor/plasteel/darkred/side{ - dir = 8 - }, -/area/prison/solitary{ - name = "Prisoner Education Chamber" - }) -"aQS" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/chair/office/dark{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/prison/solitary{ - name = "Prisoner Education Chamber" - }) -"aQT" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/prison/solitary{ - name = "Prisoner Education Chamber" - }) -"aQU" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_Toxins = 0 - }, -/obj/machinery/atmospherics/pipe/simple/general/hidden, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/prison/solitary{ - name = "Prisoner Education Chamber" - }) -"aQV" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/darkred/side{ - dir = 4 - }, -/area/prison/solitary{ - name = "Prisoner Education Chamber" - }) -"aQW" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible{ - dir = 5 - }, -/obj/machinery/meter, -/obj/machinery/door/window/westright, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/prison/solitary{ - name = "Prisoner Education Chamber" - }) -"aQX" = ( -/obj/structure/closet/crate{ - icon_state = "crateopen"; - opened = 1 - }, -/obj/machinery/atmospherics/pipe/manifold/general/visible{ - dir = 4; - initialize_directions = 11 - }, -/obj/structure/sign/nanotrasen{ - pixel_x = 32 - }, -/obj/item/weapon/tank/internals/oxygen/red{ - pixel_x = 3 - }, -/obj/item/weapon/tank/internals/oxygen/red{ - pixel_x = -3 - }, -/obj/item/weapon/wrench, -/obj/machinery/light{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/prison/solitary{ - name = "Prisoner Education Chamber" - }) -"aQY" = ( -/obj/machinery/door/airlock/external{ - cyclelinkeddir = 2; - name = "Security External Airlock"; - req_access_txt = "63" - }, -/turf/open/floor/plating/warnplate/side{ - tag = "icon-plating_warn_side (EAST)"; - icon_state = "plating_warn_side"; - dir = 4 - }, -/area/security/prison) -"aQZ" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/visible, -/obj/machinery/light/small{ - dir = 8 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/atmos) -"aRa" = ( -/obj/machinery/atmospherics/pipe/simple/green/visible{ - dir = 6 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/atmos) -"aRb" = ( -/obj/machinery/atmospherics/pipe/simple/yellow/visible, -/obj/machinery/atmospherics/pipe/simple/green/visible{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/atmos) -"aRc" = ( -/obj/machinery/atmospherics/pipe/simple/green/visible{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/neutral, -/area/atmos) -"aRd" = ( -/obj/machinery/atmospherics/pipe/simple/green/visible{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/general/visible, -/turf/open/floor/plasteel/neutral, -/area/atmos) -"aRe" = ( -/obj/machinery/atmospherics/pipe/simple/green/visible{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/caution, -/area/atmos) -"aRf" = ( -/obj/machinery/atmospherics/pipe/simple/green/visible{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/obj/machinery/airalarm{ - dir = 1; - icon_state = "alarm0"; - pixel_y = -22 - }, -/obj/machinery/camera{ - c_tag = "Atmospherics - Fore"; - dir = 1; - name = "atmospherics camera" - }, -/turf/open/floor/plasteel/caution, -/area/atmos) -"aRg" = ( -/obj/machinery/atmospherics/pipe/simple/green/visible{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/caution, -/area/atmos) -"aRh" = ( -/obj/machinery/atmospherics/pipe/simple/green/visible{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/caution, -/area/atmos) -"aRi" = ( -/obj/machinery/atmospherics/pipe/simple/green/visible{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral, -/area/atmos) -"aRj" = ( -/obj/machinery/atmospherics/pipe/simple/green/visible{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible, -/turf/open/floor/plasteel/neutral, -/area/atmos) -"aRk" = ( -/obj/machinery/atmospherics/pipe/simple/yellow/visible, -/obj/machinery/atmospherics/pipe/simple/green/visible{ - dir = 4 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/atmos) -"aRl" = ( -/obj/machinery/computer/atmos_control/tank{ - frequency = 1441; - input_tag = "air_in"; - name = "Mixed Air Supply Control"; - output_tag = "air_out"; - sensors = list("air_sensor" = "Tank") - }, -/obj/structure/window/reinforced{ - dir = 4; - pixel_x = 0 - }, -/obj/machinery/atmospherics/pipe/simple/general/visible{ - dir = 10 - }, -/turf/open/floor/plasteel/arrival{ - dir = 4 - }, -/area/atmos) -"aRm" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/cyan/visible{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plating, -/area/atmos) -"aRn" = ( -/obj/machinery/air_sensor{ - frequency = 1441; - id_tag = "air_sensor" - }, -/turf/open/floor/engine/air, -/area/atmos) -"aRo" = ( -/obj/machinery/portable_atmospherics/canister/air, -/turf/open/floor/engine/air, -/area/atmos) -"aRp" = ( -/obj/machinery/light/small{ - dir = 4 - }, -/turf/open/floor/engine/air, -/area/atmos) -"aRq" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"aRr" = ( -/obj/machinery/light/small, -/obj/structure/table/wood, -/obj/item/weapon/storage/pill_bottle, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"aRs" = ( -/obj/machinery/computer/slot_machine, -/obj/structure/sign/poster{ - pixel_y = -32 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/wood{ - icon_state = "wood-broken7" - }, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"aRt" = ( -/obj/machinery/computer/slot_machine, -/obj/structure/sign/poster{ - pixel_y = -32 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"aRu" = ( -/obj/machinery/light/small, -/obj/structure/table/wood, -/obj/item/weapon/reagent_containers/blood/random, -/obj/item/weapon/reagent_containers/syringe{ - pixel_y = 5 - }, -/obj/item/weapon/reagent_containers/syringe, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"aRv" = ( -/obj/structure/table/wood, -/obj/machinery/requests_console{ - department = "Theatre Backstage"; - departmentType = 0; - name = "Theatre RC"; - pixel_x = -32; - pixel_y = 0 - }, -/obj/item/weapon/lipstick/random{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/lipstick/random{ - pixel_x = -3; - pixel_y = -3 - }, -/obj/item/weapon/lipstick/random, -/obj/structure/sign/nosmoking_2{ - pixel_y = -32 - }, -/turf/open/floor/plasteel/cafeteria, -/area/crew_quarters/theatre) -"aRw" = ( -/obj/structure/table/wood, -/obj/structure/sign/poster{ - pixel_y = -32 - }, -/obj/item/weapon/reagent_containers/food/snacks/baguette, -/obj/item/toy/crayon/spraycan/mimecan{ - charges = 5 - }, -/turf/open/floor/plasteel/cafeteria, -/area/crew_quarters/theatre) -"aRx" = ( -/obj/machinery/vending/autodrobe, -/obj/machinery/airalarm{ - dir = 1; - icon_state = "alarm0"; - pixel_y = -22 - }, -/obj/machinery/light, -/turf/open/floor/plasteel/cafeteria, -/area/crew_quarters/theatre) -"aRy" = ( -/obj/structure/table/wood, -/obj/item/weapon/clipboard, -/obj/item/toy/figure/mime, -/turf/open/floor/plasteel/cafeteria, -/area/crew_quarters/theatre) -"aRz" = ( -/obj/structure/dresser, -/obj/structure/sign/poster{ - pixel_y = -32 - }, -/turf/open/floor/plasteel/cafeteria, -/area/crew_quarters/theatre) -"aRA" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/camera{ - c_tag = "Service Hallway - Aft"; - dir = 8; - name = "hallway camera" - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 4 - }, -/area/crew_quarters/sleep{ - name = "Service Hall" - }) -"aRB" = ( -/obj/structure/table/wood, -/obj/item/device/instrument/violin, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/bar{ - name = "Atrium" - }) -"aRC" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/carpet, -/area/crew_quarters/bar{ - name = "Atrium" - }) -"aRD" = ( -/obj/structure/table/wood, -/obj/item/clothing/mask/cigarette/pipe, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/bar{ - name = "Atrium" - }) -"aRE" = ( -/obj/structure/chair/stool, -/obj/effect/landmark/start{ - name = "Assistant" - }, -/turf/open/floor/plasteel/redyellow, -/area/crew_quarters/bar{ - name = "Atrium" - }) -"aRF" = ( -/obj/structure/table/wood, -/obj/item/weapon/reagent_containers/food/snacks/chips, -/turf/open/floor/plasteel/redyellow, -/area/crew_quarters/bar{ - name = "Atrium" - }) -"aRG" = ( -/obj/structure/table/wood, -/obj/item/weapon/reagent_containers/food/drinks/soda_cans/dr_gibb, -/turf/open/floor/plasteel/redyellow, -/area/crew_quarters/bar{ - name = "Atrium" - }) -"aRH" = ( -/obj/structure/table/wood, -/obj/item/weapon/reagent_containers/food/drinks/britcup, -/turf/open/floor/plasteel/redyellow, -/area/crew_quarters/bar{ - name = "Atrium" - }) -"aRI" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/redyellow, -/area/crew_quarters/bar{ - name = "Atrium" - }) -"aRJ" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/sortjunction{ - dir = 1; - icon_state = "pipe-j1s"; - name = "Quartermaster Junction"; - sortType = 3 - }, -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/fore) -"aRK" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/brown/corner{ - tag = "icon-browncorner (EAST)"; - icon_state = "browncorner"; - dir = 4 - }, -/area/hallway/primary/fore) -"aRL" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plating, -/area/quartermaster/office{ - name = "\improper Cargo Office" - }) -"aRM" = ( -/obj/structure/filingcabinet/chestdrawer, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (WEST)"; - icon_state = "brown"; - dir = 8 - }, -/area/quartermaster/office{ - name = "\improper Cargo Office" - }) -"aRN" = ( -/obj/structure/chair/office/dark{ - dir = 1 - }, -/obj/effect/landmark/start{ - name = "Cargo Technician" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/quartermaster/office{ - name = "\improper Cargo Office" - }) -"aRO" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/quartermaster/office{ - name = "\improper Cargo Office" - }) -"aRP" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/quartermaster/office{ - name = "\improper Cargo Office" - }) -"aRQ" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/quartermaster/office{ - name = "\improper Cargo Office" - }) -"aRR" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/turf/open/floor/plasteel/neutral, -/area/quartermaster/office{ - name = "\improper Cargo Office" - }) -"aRS" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/turf/open/floor/plasteel/neutral, -/area/quartermaster/office{ - name = "\improper Cargo Office" - }) -"aRT" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (EAST)"; - icon_state = "brown"; - dir = 4 - }, -/area/quartermaster/office{ - name = "\improper Cargo Office" - }) -"aRU" = ( -/obj/machinery/door/firedoor, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/door/airlock/mining{ - name = "Cargo Bay"; - req_access_txt = "0"; - req_one_access_txt = "48;50" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/quartermaster/storage) -"aRV" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (WEST)"; - icon_state = "brown"; - dir = 8 - }, -/area/quartermaster/storage) -"aRW" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/neutral, -/area/quartermaster/storage) -"aRX" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/quartermaster/storage) -"aRY" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral, -/area/quartermaster/storage) -"aRZ" = ( -/obj/machinery/holopad, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/effect/landmark/start{ - name = "Quartermaster" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/bot, -/area/quartermaster/storage) -"aSa" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/quartermaster/storage) -"aSb" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/neutral, -/area/quartermaster/storage) -"aSc" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/quartermaster/storage) -"aSd" = ( -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (EAST)"; - icon_state = "brown"; - dir = 4 - }, -/area/quartermaster/storage) -"aSe" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/mining{ - name = "Quartermaster's Office"; - req_access_txt = "41" - }, -/turf/open/floor/plasteel/warning/side, -/area/quartermaster/qm) -"aSf" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (WEST)"; - icon_state = "brown"; - dir = 8 - }, -/area/quartermaster/qm) -"aSg" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/neutral, -/area/quartermaster/qm) -"aSh" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/mob/living/simple_animal/sloth/citrus, -/turf/open/floor/plasteel/neutral, -/area/quartermaster/qm) -"aSi" = ( -/obj/machinery/holopad, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/turf/open/floor/plasteel/bot, -/area/quartermaster/qm) -"aSj" = ( -/obj/structure/table/reinforced, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/item/weapon/folder/yellow, -/obj/item/weapon/stamp/qm, -/turf/open/floor/plasteel/neutral, -/area/quartermaster/qm) -"aSk" = ( -/obj/structure/chair/office/dark{ - dir = 8 - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/effect/landmark/start{ - name = "Quartermaster" - }, -/turf/open/floor/plasteel/neutral, -/area/quartermaster/qm) -"aSl" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (EAST)"; - icon_state = "brown"; - dir = 4 - }, -/area/quartermaster/qm) -"aSm" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/mining{ - name = "Quartermaster's Quarters"; - req_access_txt = "41" - }, -/turf/open/floor/plasteel/warning/side, -/area/quartermaster/qm) -"aSn" = ( -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/effect/landmark/start{ - name = "Quartermaster" - }, -/turf/open/floor/plasteel/neutral, -/area/quartermaster/qm) -"aSo" = ( -/obj/machinery/computer/shuttle/mining, -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/obj/machinery/ai_status_display{ - pixel_x = 32; - pixel_y = 0 - }, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (EAST)"; - icon_state = "brown"; - dir = 4 - }, -/area/quartermaster/qm) -"aSp" = ( -/obj/structure/table/glass, -/obj/item/weapon/storage/firstaid/regular, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/whitered/side{ - dir = 8 - }, -/area/security/prison) -"aSq" = ( -/obj/structure/bed/roller, -/obj/machinery/iv_drip, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/whitered/side{ - dir = 4 - }, -/area/security/prison) -"aSr" = ( -/obj/machinery/flasher{ - id = "PCell 3"; - pixel_x = -28 - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 2; - on = 1; - scrub_N2O = 1; - scrub_Toxins = 1 - }, -/turf/open/floor/plasteel/red/side{ - dir = 8 - }, -/area/security/prison) -"aSs" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral/side{ - dir = 1 - }, -/area/security/prison) -"aSt" = ( -/obj/structure/table, -/obj/item/weapon/paper, -/obj/item/weapon/pen, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/red/side{ - dir = 4 - }, -/area/security/prison) -"aSu" = ( -/obj/machinery/flasher{ - id = "PCell 2"; - pixel_x = -28 - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 2; - on = 1; - scrub_N2O = 1; - scrub_Toxins = 1 - }, -/turf/open/floor/plating{ - icon_state = "platingdmg3" - }, -/area/security/prison) -"aSv" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 1 - }, -/area/security/prison) -"aSw" = ( -/obj/machinery/flasher{ - id = "PCell 1"; - pixel_x = -28 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 2; - on = 1; - scrub_N2O = 1; - scrub_Toxins = 1 - }, -/turf/open/floor/plating{ - icon_state = "platingdmg1" - }, -/area/security/prison) -"aSx" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 1 - }, -/area/security/prison) -"aSy" = ( -/obj/structure/table, -/obj/item/weapon/paper, -/obj/item/weapon/pen, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHWEST)"; - icon_state = "intact"; - dir = 9 - }, -/turf/open/floor/plasteel/red/side{ - dir = 4 - }, -/area/security/prison) -"aSz" = ( -/obj/structure/table/reinforced, -/obj/machinery/light_switch{ - pixel_x = -7; - pixel_y = -26 - }, -/obj/item/device/flashlight/lamp, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = -26 - }, -/turf/open/floor/plasteel/darkred/side{ - tag = "icon-darkred (SOUTHWEST)"; - icon_state = "darkred"; - dir = 10 - }, -/area/prison/solitary{ - name = "Prisoner Education Chamber" - }) -"aSA" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/plasteel/darkred/side, -/area/prison/solitary{ - name = "Prisoner Education Chamber" - }) -"aSB" = ( -/obj/machinery/firealarm{ - dir = 1; - pixel_x = 0; - pixel_y = -24 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/plasteel/darkred/side, -/area/prison/solitary{ - name = "Prisoner Education Chamber" - }) -"aSC" = ( -/obj/machinery/newscaster/security_unit{ - pixel_y = -32 - }, -/obj/machinery/atmospherics/pipe/simple/general/hidden{ - tag = "icon-intact (NORTHEAST)"; - icon_state = "intact"; - dir = 5 - }, -/turf/open/floor/plasteel/darkred/side, -/area/prison/solitary{ - name = "Prisoner Education Chamber" - }) -"aSD" = ( -/obj/structure/cable/white, -/obj/machinery/power/apc{ - dir = 2; - name = "Education Chamer APC"; - pixel_y = -26 - }, -/obj/machinery/atmospherics/pipe/simple/general/hidden{ - tag = "icon-intact (EAST)"; - icon_state = "intact"; - dir = 4 - }, -/turf/open/floor/plasteel/darkred/side{ - tag = "icon-darkred (SOUTHEAST)"; - icon_state = "darkred"; - dir = 6 - }, -/area/prison/solitary{ - name = "Prisoner Education Chamber" - }) -"aSE" = ( -/obj/machinery/atmospherics/components/binary/pump{ - dir = 8; - name = "Justice gas pump"; - on = 0 - }, -/obj/machinery/door/window/westleft, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/prison/solitary{ - name = "Prisoner Education Chamber" - }) -"aSF" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible{ - dir = 9 - }, -/obj/machinery/space_heater, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/prison/solitary{ - name = "Prisoner Education Chamber" - }) -"aSG" = ( -/obj/structure/sign/securearea{ - pixel_x = 32 - }, -/obj/effect/decal/cleanable/dirt, -/obj/structure/fans/tiny, -/obj/machinery/light/small{ - dir = 8 - }, -/turf/open/floor/plating, -/area/security/prison) -"aSH" = ( -/turf/open/floor/engine/co2, -/area/atmos) -"aSI" = ( -/obj/machinery/camera{ - c_tag = "Atmospherics - co2 Cell"; - name = "atmospherics camera" - }, -/turf/open/floor/engine/co2, -/area/atmos) -"aSJ" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - external_pressure_bound = 0; - frequency = 1441; - id_tag = "co2_out"; - initialize_directions = 1; - internal_pressure_bound = 4000; - name = "co2 vent"; - on = 1; - pressure_checks = 2; - pump_direction = 0 - }, -/turf/open/floor/engine/co2, -/area/atmos) -"aSK" = ( -/obj/machinery/meter, -/obj/machinery/atmospherics/pipe/simple/yellow/visible{ - dir = 4 - }, -/obj/structure/grille, -/turf/closed/wall/r_wall, -/area/atmos) -"aSL" = ( -/obj/structure/lattice/catwalk, -/obj/machinery/atmospherics/pipe/simple/yellow/visible{ - dir = 4 - }, -/turf/open/space, -/area/atmos) -"aSM" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/yellow/visible{ - dir = 4 - }, -/turf/open/floor/plating, -/area/atmos) -"aSN" = ( -/obj/machinery/atmospherics/pipe/simple/yellow/visible{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/cyan/visible, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/atmos) -"aSO" = ( -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/structure/window/reinforced{ - dir = 1; - pixel_y = 1 - }, -/obj/machinery/atmospherics/pipe/simple/green/visible, -/obj/machinery/atmospherics/components/binary/pump{ - dir = 4; - name = "CO2 to Pure"; - on = 0 - }, -/turf/open/floor/plasteel/vault, -/area/atmos) -"aSP" = ( -/obj/machinery/atmospherics/pipe/manifold4w/yellow/visible, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/atmos) -"aSQ" = ( -/obj/machinery/atmospherics/components/unary/thermomachine/heater{ - dir = 8 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/delivery, -/area/atmos) -"aSR" = ( -/obj/machinery/atmospherics/pipe/manifold/general/visible{ - dir = 8 - }, -/turf/open/floor/plasteel/neutral, -/area/atmos) -"aSS" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible{ - dir = 4 - }, -/obj/machinery/meter, -/turf/open/floor/plasteel/neutral, -/area/atmos) -"aST" = ( -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/obj/machinery/atmospherics/pipe/manifold/general/visible{ - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/atmos) -"aSU" = ( -/obj/machinery/ai_status_display, -/turf/closed/wall, -/area/atmos) -"aSV" = ( -/turf/closed/wall, -/area/atmos) -"aSW" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass_atmos{ - name = "Atmospherics Storage"; - req_access_txt = "24" - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (EAST)"; - icon_state = "plasteel_warn_side"; - dir = 4 - }, -/area/atmos) -"aSX" = ( -/obj/structure/sign/nosmoking_2, -/turf/closed/wall, -/area/atmos) -"aSY" = ( -/obj/machinery/status_display, -/turf/closed/wall, -/area/atmos) -"aSZ" = ( -/obj/machinery/light{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral, -/area/atmos) -"aTa" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible, -/turf/open/floor/plasteel/neutral, -/area/atmos) -"aTb" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/visible{ - dir = 6 - }, -/turf/open/floor/plasteel/neutral, -/area/atmos) -"aTc" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/visible{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/yellow/visible, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/atmos) -"aTd" = ( -/obj/structure/window/reinforced{ - dir = 4; - pixel_x = 0 - }, -/obj/structure/window/reinforced, -/obj/machinery/atmospherics/pipe/simple/green/visible, -/obj/machinery/atmospherics/pipe/simple/cyan/visible{ - dir = 4 - }, -/turf/open/floor/plasteel/arrival{ - dir = 6 - }, -/area/atmos) -"aTe" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/visible{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/atmos) -"aTf" = ( -/obj/machinery/meter{ - name = "Mixed Air Tank In" - }, -/obj/structure/grille, -/obj/machinery/atmospherics/pipe/simple/cyan/visible{ - dir = 4 - }, -/turf/closed/wall/r_wall, -/area/atmos) -"aTg" = ( -/obj/machinery/atmospherics/components/unary/outlet_injector/on{ - dir = 8; - frequency = 1441; - id = "air_in" - }, -/turf/open/floor/engine/air, -/area/atmos) -"aTh" = ( -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/machinery/power/apc{ - dir = 8; - name = "Service Hall APC"; - pixel_x = -26; - pixel_y = 3 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral/corner{ - dir = 1 - }, -/area/crew_quarters/sleep{ - name = "Service Hall" - }) -"aTi" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/machinery/newscaster{ - pixel_x = 32 - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 4 - }, -/area/crew_quarters/sleep{ - name = "Service Hall" - }) -"aTj" = ( -/obj/structure/table/wood, -/obj/structure/extinguisher_cabinet{ - pixel_x = -26; - pixel_y = -32 - }, -/obj/item/weapon/staff/broom, -/obj/item/clothing/head/witchwig, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/bar{ - name = "Atrium" - }) -"aTk" = ( -/obj/structure/table/wood, -/obj/structure/sign/poster{ - pixel_y = -32 - }, -/obj/item/clothing/mask/fakemoustache, -/obj/item/weapon/cane, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/bar{ - name = "Atrium" - }) -"aTl" = ( -/obj/structure/piano{ - tag = "icon-piano"; - icon_state = "piano" - }, -/obj/machinery/airalarm{ - dir = 1; - icon_state = "alarm0"; - pixel_y = -22 - }, -/obj/machinery/light, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/bar{ - name = "Atrium" - }) -"aTm" = ( -/obj/structure/chair/stool/bar, -/obj/structure/sign/poster{ - pixel_y = -32 - }, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/bar{ - name = "Atrium" - }) -"aTn" = ( -/obj/machinery/door/window/eastright{ - name = "Theatre Stage" - }, -/obj/machinery/newscaster{ - pixel_y = -32 - }, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/bar{ - name = "Atrium" - }) -"aTo" = ( -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/bar{ - name = "Atrium" - }) -"aTp" = ( -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = -26; - pixel_y = -26 - }, -/turf/open/floor/plasteel/redyellow, -/area/crew_quarters/bar{ - name = "Atrium" - }) -"aTq" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/redyellow, -/area/crew_quarters/bar{ - name = "Atrium" - }) -"aTr" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/sortjunction{ - dir = 1; - icon_state = "pipe-j1s"; - name = "Cargo Junction"; - sortType = 2 - }, -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/fore) -"aTs" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/delivery, -/area/hallway/primary/fore) -"aTt" = ( -/obj/structure/plasticflaps{ - opacity = 1 - }, -/obj/effect/decal/cleanable/dirt, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/delivery, -/area/quartermaster/office{ - name = "\improper Cargo Office" - }) -"aTu" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/delivery, -/area/quartermaster/office{ - name = "\improper Cargo Office" - }) -"aTv" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/quartermaster/office{ - name = "\improper Cargo Office" - }) -"aTw" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/quartermaster/office{ - name = "\improper Cargo Office" - }) -"aTx" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/quartermaster/office{ - name = "\improper Cargo Office" - }) -"aTy" = ( -/obj/effect/decal/cleanable/oil, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/quartermaster/office{ - name = "\improper Cargo Office" - }) -"aTz" = ( -/obj/machinery/holopad, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/bot, -/area/quartermaster/office{ - name = "\improper Cargo Office" - }) -"aTA" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 2; - on = 1; - scrub_N2O = 1; - scrub_Toxins = 1 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/quartermaster/office{ - name = "\improper Cargo Office" - }) -"aTB" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/quartermaster/office{ - name = "\improper Cargo Office" - }) -"aTC" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (EAST)"; - icon_state = "brown"; - dir = 4 - }, -/area/quartermaster/office{ - name = "\improper Cargo Office" - }) -"aTD" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/mining{ - name = "Cargo Bay"; - req_access_txt = "0"; - req_one_access_txt = "48;50" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/quartermaster/storage) -"aTE" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (WEST)"; - icon_state = "brown"; - dir = 8 - }, -/area/quartermaster/storage) -"aTF" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/neutral, -/area/quartermaster/storage) -"aTG" = ( -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral, -/area/quartermaster/storage) -"aTH" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 2; - on = 1; - scrub_N2O = 1; - scrub_Toxins = 1 - }, -/turf/open/floor/plasteel/neutral, -/area/quartermaster/storage) -"aTI" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (EAST)"; - icon_state = "brown"; - dir = 4 - }, -/area/quartermaster/storage) -"aTJ" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHEAST)"; - icon_state = "intact"; - dir = 6 - }, -/turf/open/floor/plating, -/area/quartermaster/qm) -"aTK" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (WEST)"; - icon_state = "brown"; - dir = 8 - }, -/area/quartermaster/qm) -"aTL" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/quartermaster/qm) -"aTM" = ( -/obj/structure/chair/office/dark{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plasteel/neutral, -/area/quartermaster/qm) -"aTN" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/cartridge/quartermaster{ - pixel_x = -6 - }, -/obj/item/weapon/cartridge/quartermaster{ - pixel_x = 6 - }, -/obj/item/weapon/cartridge/quartermaster{ - pixel_y = 6 - }, -/obj/item/device/gps/mining, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/quartermaster/qm) -"aTO" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/quartermaster/qm) -"aTP" = ( -/obj/machinery/computer/security/mining, -/obj/machinery/requests_console{ - department = "Quartermaster's Desk"; - departmentType = 0; - name = "Quartermaster RC"; - pixel_x = 32; - pixel_y = -32 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (EAST)"; - icon_state = "brown"; - dir = 4 - }, -/area/quartermaster/qm) -"aTQ" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/quartermaster/qm) -"aTR" = ( -/obj/structure/closet/secure_closet/quartermaster, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = -26 - }, -/turf/open/floor/plasteel/warning{ - dir = 9 - }, -/area/quartermaster/qm) -"aTS" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/quartermaster/qm) -"aTT" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/suit_storage_unit/mining/eva, -/turf/open/floor/plasteel/warning{ - dir = 5 - }, -/area/quartermaster/qm) -"aTU" = ( -/obj/structure/cable/white{ - tag = "icon-0-2"; - icon_state = "0-2" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/quartermaster/qm) -"aTV" = ( -/obj/structure/cable/white{ - tag = "icon-0-2"; - icon_state = "0-2" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/security/prison) -"aTW" = ( -/obj/machinery/door/airlock/glass_medical{ - name = "Sanitarium"; - req_access_txt = "63" - }, -/turf/open/floor/plasteel/white/side{ - dir = 1 - }, -/area/security/prison) -"aTX" = ( -/obj/structure/cable/white{ - tag = "icon-0-2"; - icon_state = "0-2" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/structure/sign/bluecross_2, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/security/prison) -"aTY" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall, -/area/security/prison) -"aTZ" = ( -/obj/machinery/door/airlock/glass_security{ - name = "Long-Term Cell 3"; - req_access_txt = "2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/floorgrime, -/area/security/prison) -"aUa" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/closed/wall, -/area/security/prison) -"aUb" = ( -/obj/machinery/door/airlock/glass_security{ - name = "Long-Term Cell 2"; - req_access_txt = "2" - }, -/turf/open/floor/plasteel/floorgrime, -/area/security/prison) -"aUc" = ( -/obj/machinery/door/airlock/glass_security{ - name = "Long-Term Cell 1"; - req_access_txt = "2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/floorgrime, -/area/security/prison) -"aUd" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/security{ - name = "Education Chamber"; - req_access_txt = "3" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/security/prison) -"aUe" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall/r_wall, -/area/security/prison) -"aUf" = ( -/obj/machinery/door/airlock/external{ - cyclelinkeddir = 1; - name = "Security External Airlock"; - req_access_txt = "63" - }, -/obj/effect/decal/cleanable/dirt, -/obj/structure/sign/directions/engineering{ - desc = "A sign that shows there are doors here. There are doors everywhere!"; - icon_state = "doors"; - name = "WARNING: EXTERNAL AIRLOCK"; - pixel_x = 32; - tag = "icon-doors" - }, -/turf/open/floor/plating/warnplate/side{ - tag = "icon-plating_warn_side (EAST)"; - icon_state = "plating_warn_side"; - dir = 4 - }, -/area/security/prison) -"aUg" = ( -/turf/closed/wall/mineral/plastitanium, -/area/security/prison) -"aUh" = ( -/obj/machinery/light/small{ - dir = 8 - }, -/turf/open/floor/engine/co2, -/area/atmos) -"aUi" = ( -/obj/machinery/portable_atmospherics/canister/carbon_dioxide, -/turf/open/floor/engine/co2, -/area/atmos) -"aUj" = ( -/obj/machinery/air_sensor{ - frequency = 1441; - id_tag = "co2_sensor" - }, -/turf/open/floor/engine/co2, -/area/atmos) -"aUk" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/visible, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/atmos) -"aUl" = ( -/obj/machinery/computer/atmos_control/tank{ - frequency = 1441; - input_tag = "co2_in"; - name = "Carbon Dioxide Supply Control"; - output_tag = "co2_out"; - sensors = list("co2_sensor" = "Tank") - }, -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/green/visible, -/turf/open/floor/plasteel/vault, -/area/atmos) -"aUm" = ( -/obj/machinery/atmospherics/pipe/simple/yellow/visible, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/atmos) -"aUn" = ( -/obj/machinery/atmospherics/components/unary/thermomachine/heater{ - dir = 4; - on = 1 - }, -/turf/open/floor/plasteel/delivery, -/area/atmos) -"aUo" = ( -/obj/machinery/atmospherics/pipe/manifold/general/visible{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/atmos) -"aUp" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/neutral, -/area/atmos) -"aUq" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/atmos) -"aUr" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/folder/yellow, -/obj/item/device/lightreplacer, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/atmos) -"aUs" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/atmos) -"aUt" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/disposal/bin, -/obj/machinery/light{ - dir = 8 - }, -/obj/machinery/light_switch{ - pixel_x = -26 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/trunk, -/turf/open/floor/plasteel/caution{ - tag = "icon-caution (WEST)"; - icon_state = "caution"; - dir = 8 - }, -/area/atmos) -"aUu" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plasteel/delivery, -/area/atmos) -"aUv" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/wrench, -/obj/item/weapon/tank/internals/emergency_oxygen/engi, -/obj/item/weapon/tank/internals/emergency_oxygen/engi, -/obj/machinery/newscaster{ - pixel_x = 32 - }, -/turf/open/floor/plasteel/bot, -/area/atmos) -"aUw" = ( -/obj/structure/table/reinforced, -/obj/item/clothing/gloves/color/black, -/obj/item/clothing/suit/hazardvest, -/obj/item/clothing/mask/gas, -/obj/item/clothing/gloves/color/black, -/obj/item/clothing/suit/hazardvest, -/obj/item/clothing/mask/gas, -/turf/open/floor/plasteel/warning/side, -/area/atmos) -"aUx" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/plasteel/neutral, -/area/atmos) -"aUy" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/plasteel/neutral, -/area/atmos) -"aUz" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/visible, -/turf/open/floor/plasteel/neutral, -/area/atmos) -"aUA" = ( -/obj/machinery/atmospherics/pipe/manifold/yellow/visible{ - dir = 8 - }, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/atmos) -"aUB" = ( -/obj/machinery/atmospherics/pipe/simple/green/visible, -/obj/machinery/atmospherics/components/binary/pump{ - dir = 8; - name = "O2 to Pure" - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/atmos) -"aUC" = ( -/obj/machinery/atmospherics/pipe/simple/yellow/visible{ - tag = "icon-intact (SOUTHWEST)"; - icon_state = "intact"; - dir = 10 - }, -/obj/effect/decal/cleanable/dirt, -/obj/structure/sign/securearea{ - pixel_x = 32 - }, -/obj/machinery/light/small{ - dir = 4 - }, -/obj/machinery/camera{ - c_tag = "Atmospherics - Starboard"; - dir = 8; - name = "atmospherics camera" - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/atmos) -"aUD" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/space_heater, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"aUE" = ( -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 5 - }, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"aUF" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"aUG" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"aUH" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/sortjunction{ - dir = 8; - icon_state = "pipe-j2s"; - name = "Hydroponics Junction"; - sortType = 21 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"aUI" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/delivery, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"aUJ" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"aUK" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"aUL" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/delivery, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"aUM" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Maintenance Hatch"; - req_access_txt = "12" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/crew_quarters/sleep{ - name = "Service Hall" - }) -"aUN" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral/corner{ - dir = 1 - }, -/area/crew_quarters/sleep{ - name = "Service Hall" - }) -"aUO" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/effect/landmark{ - name = "lightsout" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/obj/machinery/light/small{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 4 - }, -/area/crew_quarters/sleep{ - name = "Service Hall" - }) -"aUP" = ( -/turf/closed/wall, -/area/crew_quarters/kitchen) -"aUQ" = ( -/obj/machinery/status_display, -/turf/closed/wall, -/area/crew_quarters/kitchen) -"aUR" = ( -/obj/machinery/light{ - dir = 8 - }, -/obj/machinery/camera{ - c_tag = "Bar - Aft"; - dir = 4; - name = "service camera" - }, -/turf/open/floor/plasteel/redyellow, -/area/crew_quarters/bar{ - name = "Atrium" - }) -"aUS" = ( -/obj/machinery/firealarm{ - dir = 4; - icon_state = "fire0"; - pixel_x = 24; - pixel_y = 0; - tag = "icon-fire0 (EAST)" - }, -/obj/machinery/light{ - icon_state = "tube1"; - dir = 4 - }, -/turf/open/floor/plasteel/redyellow, -/area/crew_quarters/bar{ - name = "Atrium" - }) -"aUT" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/camera{ - c_tag = "Arrivals Hallway - Bar"; - dir = 4; - name = "hallway camera" - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 1 - }, -/area/hallway/primary/fore) -"aUU" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/fore) -"aUV" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plasteel/brown/corner{ - tag = "icon-browncorner (EAST)"; - icon_state = "browncorner"; - dir = 4 - }, -/area/hallway/primary/fore) -"aUW" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (WEST)"; - icon_state = "brown"; - dir = 8 - }, -/area/quartermaster/office{ - name = "\improper Cargo Office" - }) -"aUX" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/plasteel/neutral, -/area/quartermaster/office{ - name = "\improper Cargo Office" - }) -"aUY" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/quartermaster/office{ - name = "\improper Cargo Office" - }) -"aUZ" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/quartermaster/office{ - name = "\improper Cargo Office" - }) -"aVa" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/quartermaster/office{ - name = "\improper Cargo Office" - }) -"aVb" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/open/floor/plasteel/neutral, -/area/quartermaster/office{ - name = "\improper Cargo Office" - }) -"aVc" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/folder, -/obj/item/weapon/stamp/denied{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/stamp, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (EAST)"; - icon_state = "brown"; - dir = 4 - }, -/area/quartermaster/office{ - name = "\improper Cargo Office" - }) -"aVd" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1 - }, -/obj/machinery/firealarm{ - dir = 8; - pixel_x = -24; - pixel_y = -32 - }, -/obj/machinery/light_switch{ - pixel_x = -26 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (SOUTHWEST)"; - icon_state = "brown"; - dir = 10 - }, -/area/quartermaster/storage) -"aVe" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plasteel/brown, -/area/quartermaster/storage) -"aVf" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/purple/side, -/area/quartermaster/storage) -"aVg" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1 - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/open/floor/plasteel/brown, -/area/quartermaster/storage) -"aVh" = ( -/obj/structure/closet/wardrobe/cargotech, -/obj/machinery/airalarm{ - dir = 1; - icon_state = "alarm0"; - pixel_y = -22 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/bot, -/area/quartermaster/storage) -"aVi" = ( -/obj/structure/closet/wardrobe/cargotech, -/obj/machinery/ai_status_display{ - pixel_y = -32 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/bot, -/area/quartermaster/storage) -"aVj" = ( -/obj/machinery/disposal/bin, -/obj/machinery/light, -/obj/machinery/newscaster{ - pixel_y = -32 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/trunk{ - dir = 1 - }, -/turf/open/floor/plasteel/bot, -/area/quartermaster/storage) -"aVk" = ( -/obj/machinery/atmospherics/pipe/manifold4w/scrubbers/hidden, -/turf/open/floor/plasteel/brown, -/area/quartermaster/storage) -"aVl" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/item/weapon/storage/pod{ - pixel_x = 32; - pixel_y = -32 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/purple/side{ - tag = "icon-purple (SOUTHEAST)"; - icon_state = "purple"; - dir = 6 - }, -/area/quartermaster/storage) -"aVm" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/quartermaster/qm) -"aVn" = ( -/obj/machinery/photocopier, -/obj/machinery/firealarm{ - dir = 8; - pixel_x = -24; - pixel_y = -32 - }, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (SOUTHWEST)"; - icon_state = "brown"; - dir = 10 - }, -/area/quartermaster/qm) -"aVo" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/table, -/obj/item/weapon/paper_bin, -/turf/open/floor/plasteel/brown, -/area/quartermaster/qm) -"aVp" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1 - }, -/obj/machinery/light, -/obj/machinery/newscaster{ - pixel_y = -32 - }, -/turf/open/floor/plasteel/brown, -/area/quartermaster/qm) -"aVq" = ( -/obj/machinery/airalarm{ - dir = 1; - icon_state = "alarm0"; - pixel_y = -22 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_Toxins = 0 - }, -/obj/machinery/camera{ - c_tag = "Cargo - Quartermaster's Office"; - dir = 1; - name = "cargo camera" - }, -/turf/open/floor/plasteel/brown, -/area/quartermaster/qm) -"aVr" = ( -/turf/open/floor/plasteel/brown, -/area/quartermaster/qm) -"aVs" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/brown, -/area/quartermaster/qm) -"aVt" = ( -/obj/structure/table/reinforced, -/obj/machinery/computer/stockexchange, -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (SOUTHEAST)"; - icon_state = "brown"; - dir = 6 - }, -/area/quartermaster/qm) -"aVu" = ( -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/structure/cable/white, -/turf/open/floor/plating, -/area/quartermaster/qm) -"aVv" = ( -/obj/structure/cable/white, -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/quartermaster/qm) -"aVw" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1 - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/turf/open/floor/plasteel/red/corner, -/area/security/prison) -"aVx" = ( -/obj/machinery/newscaster/security_unit{ - pixel_y = 32 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 2; - on = 1 - }, -/turf/open/floor/plasteel/red/corner, -/area/security/prison) -"aVy" = ( -/obj/machinery/camera{ - c_tag = "Security - Prison Port"; - dir = 2; - name = "security camera" - }, -/turf/open/floor/plasteel/red/corner, -/area/security/prison) -"aVz" = ( -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/red/corner, -/area/security/prison) -"aVA" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/turf/open/floor/plasteel/red/corner, -/area/security/prison) -"aVB" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/plasteel/red/corner, -/area/security/prison) -"aVC" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/red/corner, -/area/security/prison) -"aVD" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/open/floor/plasteel/red/corner, -/area/security/prison) -"aVE" = ( -/obj/machinery/button/door{ - id = "permacell3"; - name = "Cell 3 Lockdown"; - pixel_x = -4; - pixel_y = 25; - req_access_txt = "2" - }, -/obj/machinery/button/flasher{ - id = "PCell 3"; - pixel_x = 6; - pixel_y = 24 - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/red/corner{ - dir = 2 - }, -/area/security/prison) -"aVF" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/computer/security/telescreen{ - name = "Prisoner Telescreen"; - network = list("prison"); - pixel_y = 32 - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plasteel/red/corner, -/area/security/prison) -"aVG" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/obj/machinery/camera{ - c_tag = "Security - Prison"; - dir = 2; - name = "security camera" - }, -/turf/open/floor/plasteel/red/corner, -/area/security/prison) -"aVH" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/red/corner, -/area/security/prison) -"aVI" = ( -/obj/machinery/button/door{ - id = "permacell2"; - name = "Cell 2 Lockdown"; - pixel_x = -4; - pixel_y = 25; - req_access_txt = "2" - }, -/obj/machinery/button/flasher{ - id = "PCell 2"; - pixel_x = 6; - pixel_y = 24 - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/red/corner{ - dir = 2 - }, -/area/security/prison) -"aVJ" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/computer/security/telescreen{ - name = "Prisoner Telescreen"; - network = list("prison"); - pixel_y = 32 - }, -/turf/open/floor/plasteel/red/corner, -/area/security/prison) -"aVK" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/open/floor/plasteel/red/corner, -/area/security/prison) -"aVL" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/red/corner, -/area/security/prison) -"aVM" = ( -/obj/machinery/button/door{ - id = "permacell1"; - name = "Cell 1 Lockdown"; - pixel_x = -4; - pixel_y = 25; - req_access_txt = "2" - }, -/obj/machinery/button/flasher{ - id = "PCell 1"; - pixel_x = 6; - pixel_y = 24 - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/red/corner{ - dir = 2 - }, -/area/security/prison) -"aVN" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/red/corner, -/area/security/prison) -"aVO" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 2; - on = 1 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/red/corner, -/area/security/prison) -"aVP" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/machinery/button/door{ - id = "brigprison"; - name = "Prison Lockdown"; - pixel_x = 26; - pixel_y = 26; - req_access_txt = "63" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/security/prison) -"aVQ" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHWEST)"; - icon_state = "intact"; - dir = 9 - }, -/turf/open/floor/plasteel/red/side{ - dir = 4 - }, -/area/security/prison) -"aVR" = ( -/obj/machinery/door/firedoor, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/door/airlock/glass_security{ - name = "Prison Wing"; - req_access_txt = "1" - }, -/turf/open/floor/plasteel/warning/side, -/area/security/prison) -"aVS" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/security/prison) -"aVT" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/door/poddoor/preopen{ - id = "brigprison"; - name = "Prison Blast door" - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/delivery, -/area/security/prison) -"aVU" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/red/side{ - dir = 9 - }, -/area/security/prison) -"aVV" = ( -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/turf/open/floor/plating, -/area/security/prison) -"aVW" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/camera{ - c_tag = "Security - Escape Pod"; - dir = 2; - name = "security camera" - }, -/turf/open/floor/plasteel/red/side{ - dir = 5 - }, -/area/security/prison) -"aVX" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/prison) -"aVY" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating/warnplate{ - dir = 4; - luminosity = 2; - initial_gas_mix = "o2=0.01;n2=0.01"; - temperature = 2.7 - }, -/area/security/prison) -"aVZ" = ( -/obj/structure/shuttle/engine/propulsion/burst{ - dir = 4 - }, -/turf/closed/wall/mineral/titanium, -/area/shuttle/pod_3) -"aWa" = ( -/turf/closed/wall/mineral/titanium, -/area/shuttle/pod_3) -"aWb" = ( -/obj/machinery/atmospherics/components/unary/outlet_injector/on{ - dir = 4; - frequency = 1441; - id = "co2_in"; - pixel_y = 1 - }, -/turf/open/floor/engine/co2, -/area/atmos) -"aWc" = ( -/obj/machinery/meter, -/obj/machinery/atmospherics/pipe/simple/green/visible{ - dir = 4 - }, -/obj/structure/grille, -/turf/closed/wall/r_wall, -/area/atmos) -"aWd" = ( -/obj/structure/lattice/catwalk, -/obj/machinery/atmospherics/pipe/simple/green/visible{ - dir = 4 - }, -/turf/open/space, -/area/atmos) -"aWe" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/green/visible{ - dir = 4 - }, -/turf/open/floor/plating, -/area/atmos) -"aWf" = ( -/obj/machinery/atmospherics/pipe/simple/green/visible{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/cyan/visible, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/atmos) -"aWg" = ( -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/structure/window/reinforced, -/obj/machinery/atmospherics/components/trinary/filter{ - dir = 2; - filter_type = "co2"; - name = "co2 filter"; - on = 1 - }, -/turf/open/floor/plasteel/vault, -/area/atmos) -"aWh" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible{ - dir = 4 - }, -/obj/machinery/portable_atmospherics/canister, -/turf/open/floor/plasteel/bot, -/area/atmos) -"aWi" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/manifold/general/visible{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/atmos) -"aWj" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/neutral, -/area/atmos) -"aWk" = ( -/obj/machinery/atmospherics/pipe/manifold/general/visible{ - dir = 8 - }, -/obj/machinery/meter, -/obj/item/weapon/wrench, -/turf/open/floor/plasteel/neutral, -/area/atmos) -"aWl" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible{ - icon_state = "connector_map"; - dir = 8 - }, -/obj/machinery/portable_atmospherics/canister, -/turf/open/floor/plasteel/warning/side, -/area/atmos) -"aWm" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_Toxins = 0 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/caution{ - tag = "icon-caution (WEST)"; - icon_state = "caution"; - dir = 8 - }, -/area/atmos) -"aWn" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/atmos) -"aWo" = ( -/obj/structure/closet/secure_closet/atmospherics, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning/end{ - tag = "icon-plasteel_warn_end (NORTH)"; - icon_state = "plasteel_warn_end"; - dir = 1 - }, -/area/atmos) -"aWp" = ( -/obj/machinery/pipedispenser/disposal/transit_tube, -/turf/open/floor/plasteel/warning/side, -/area/atmos) -"aWq" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral, -/area/atmos) -"aWr" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible, -/turf/open/floor/plasteel/neutral, -/area/atmos) -"aWs" = ( -/obj/machinery/atmospherics/components/trinary/mixer{ - dir = 1; - name = "air mixer"; - node1_concentration = 0.8; - node2_concentration = 0.2; - on = 1; - pixel_x = 0; - pixel_y = 0; - target_pressure = 4500 - }, -/turf/open/floor/plasteel/neutral, -/area/atmos) -"aWt" = ( -/obj/structure/window/reinforced{ - dir = 4; - pixel_x = 0 - }, -/obj/structure/window/reinforced{ - dir = 1; - pixel_y = 1 - }, -/obj/machinery/atmospherics/pipe/simple/green/visible, -/obj/machinery/atmospherics/components/binary/pump{ - dir = 8; - name = "O2 to Airmix"; - on = 1 - }, -/turf/open/floor/plasteel/blue/side{ - dir = 5 - }, -/area/atmos) -"aWu" = ( -/obj/machinery/atmospherics/pipe/manifold/yellow/visible, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/atmos) -"aWv" = ( -/obj/machinery/meter, -/obj/structure/grille, -/obj/machinery/atmospherics/pipe/simple/yellow/visible{ - color = "purple"; - dir = 4 - }, -/turf/closed/wall/r_wall, -/area/atmos) -"aWw" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - external_pressure_bound = 0; - frequency = 1441; - id_tag = "o2_out"; - initialize_directions = 1; - internal_pressure_bound = 4000; - name = "oxygen vent"; - on = 1; - pressure_checks = 2; - pump_direction = 0 - }, -/turf/open/floor/engine/o2, -/area/atmos) -"aWx" = ( -/obj/machinery/camera{ - c_tag = "Atmospherics - Oxygen Supply"; - name = "atmospherics camera" - }, -/turf/open/floor/engine/o2, -/area/atmos) -"aWy" = ( -/turf/open/floor/engine/o2, -/area/atmos) -"aWz" = ( -/turf/open/floor/plasteel/neutral/corner, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"aWA" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"aWB" = ( -/turf/closed/wall, -/area/hydroponics) -"aWC" = ( -/obj/structure/disposalpipe/segment, -/turf/closed/wall, -/area/hydroponics) -"aWD" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Hydroponic's Maintenance"; - req_access_txt = "35" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/hydroponics) -"aWE" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/closed/wall, -/area/hydroponics) -"aWF" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/hydroponics) -"aWG" = ( -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = -26; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/obj/machinery/door/firedoor, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/crew_quarters/sleep{ - name = "Service Hall" - }) -"aWH" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/door/firedoor, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/crew_quarters/sleep{ - name = "Service Hall" - }) -"aWI" = ( -/obj/structure/kitchenspike, -/turf/open/floor/plasteel/bot, -/area/crew_quarters/kitchen) -"aWJ" = ( -/obj/structure/sink/kitchen{ - desc = "A sink used for washing one's hands and face. It looks rusty and home-made"; - name = "sink"; - pixel_y = 28 - }, -/turf/open/floor/plasteel/warning{ - dir = 10 - }, -/area/crew_quarters/kitchen) -"aWK" = ( -/obj/machinery/gibber, -/obj/machinery/light{ - dir = 1 - }, -/turf/open/floor/plasteel/warning, -/area/crew_quarters/kitchen) -"aWL" = ( -/obj/structure/sink/kitchen{ - desc = "A sink used for washing one's hands and face. It looks rusty and home-made"; - name = "sink"; - pixel_y = 28 - }, -/obj/machinery/camera{ - c_tag = "Kitchen Cold Room"; - dir = 2; - name = "service camera" - }, -/turf/open/floor/plasteel/warning{ - dir = 6 - }, -/area/crew_quarters/kitchen) -"aWM" = ( -/obj/structure/closet/secure_closet/freezer/meat, -/turf/open/floor/plasteel/bot, -/area/crew_quarters/kitchen) -"aWN" = ( -/obj/machinery/newscaster{ - pixel_x = -32 - }, -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/turf/open/floor/plasteel/redyellow, -/area/crew_quarters/bar{ - name = "Atrium" - }) -"aWO" = ( -/obj/structure/chair/stool/bar, -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/redyellow, -/area/crew_quarters/bar{ - name = "Atrium" - }) -"aWP" = ( -/obj/machinery/disposal/bin, -/obj/structure/disposalpipe/trunk{ - dir = 8 - }, -/turf/open/floor/plasteel/redyellow, -/area/crew_quarters/bar{ - name = "Atrium" - }) -"aWQ" = ( -/obj/structure/extinguisher_cabinet{ - pixel_x = -26 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/light{ - dir = 8 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 1 - }, -/area/hallway/primary/fore) -"aWR" = ( -/obj/machinery/autolathe, -/obj/machinery/airalarm{ - dir = 1; - icon_state = "alarm0"; - pixel_y = -22 - }, -/obj/machinery/firealarm{ - dir = 8; - pixel_x = -24; - pixel_y = -32 - }, -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/obj/machinery/light_switch{ - pixel_x = -26 - }, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (SOUTHWEST)"; - icon_state = "brown"; - dir = 10 - }, -/area/quartermaster/office{ - name = "\improper Cargo Office" - }) -"aWS" = ( -/obj/machinery/disposal/bin, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/disposalpipe/trunk, -/turf/open/floor/plasteel/brown, -/area/quartermaster/office{ - name = "\improper Cargo Office" - }) -"aWT" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/brown, -/area/quartermaster/office{ - name = "\improper Cargo Office" - }) -"aWU" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1 - }, -/turf/open/floor/plasteel/brown, -/area/quartermaster/office{ - name = "\improper Cargo Office" - }) -"aWV" = ( -/obj/structure/table, -/obj/item/weapon/clipboard, -/obj/item/toy/figure/cargotech, -/turf/open/floor/plasteel/brown, -/area/quartermaster/office{ - name = "\improper Cargo Office" - }) -"aWW" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-18"; - layer = 4.1 - }, -/turf/open/floor/plasteel/brown, -/area/quartermaster/office{ - name = "\improper Cargo Office" - }) -"aWX" = ( -/obj/structure/filingcabinet/filingcabinet, -/turf/open/floor/plasteel/brown, -/area/quartermaster/office{ - name = "\improper Cargo Office" - }) -"aWY" = ( -/obj/machinery/computer/cargo, -/turf/open/floor/plasteel/brown, -/area/quartermaster/office{ - name = "\improper Cargo Office" - }) -"aWZ" = ( -/obj/structure/chair/office/dark, -/obj/effect/landmark/start{ - name = "Cargo Technician" - }, -/turf/open/floor/plasteel/brown, -/area/quartermaster/office{ - name = "\improper Cargo Office" - }) -"aXa" = ( -/obj/structure/table/reinforced, -/obj/machinery/computer/stockexchange, -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/obj/machinery/newscaster{ - pixel_y = -32 - }, -/obj/item/device/radio/intercom{ - dir = 8; - name = "Station Intercom (General)"; - pixel_x = 28 - }, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (SOUTHEAST)"; - icon_state = "brown"; - dir = 6 - }, -/area/quartermaster/office{ - name = "\improper Cargo Office" - }) -"aXb" = ( -/turf/closed/wall, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"aXc" = ( -/obj/machinery/status_display, -/turf/closed/wall, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"aXd" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"aXe" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass_mining{ - name = "Mining Office"; - req_access_txt = "48" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (EAST)"; - icon_state = "plasteel_warn_side"; - dir = 4 - }, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"aXf" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"aXg" = ( -/obj/structure/plasticflaps{ - opacity = 1 - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/delivery, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"aXh" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/door/firedoor, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/door/airlock/mining{ - name = "Mining Dock"; - req_access_txt = "48" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (EAST)"; - icon_state = "plasteel_warn_side"; - dir = 4 - }, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"aXi" = ( -/obj/machinery/status_display, -/turf/closed/wall, -/area/quartermaster/qm) -"aXj" = ( -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/structure/cable/white{ - d2 = 2; - icon_state = "0-2"; - tag = "icon-0-2" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/structure/cable/white, -/turf/open/floor/plating, -/area/quartermaster/qm) -"aXk" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/turf/open/floor/plasteel, -/area/security/prison) -"aXl" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHEAST)"; - icon_state = "intact"; - dir = 5 - }, -/turf/open/floor/plasteel/red/corner{ - dir = 1 - }, -/area/security/prison) -"aXm" = ( -/obj/machinery/firealarm{ - dir = 1; - pixel_x = 0; - pixel_y = -26 - }, -/obj/machinery/light, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/red/corner{ - dir = 1 - }, -/area/security/prison) -"aXn" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, -/turf/open/floor/plasteel/red/corner{ - dir = 1 - }, -/area/security/prison) -"aXo" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/red/corner{ - dir = 1 - }, -/area/security/prison) -"aXp" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/red/corner{ - dir = 1 - }, -/area/security/prison) -"aXq" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/red/corner{ - dir = 1 - }, -/area/security/prison) -"aXr" = ( -/obj/machinery/airalarm{ - dir = 1; - icon_state = "alarm0"; - pixel_y = -22 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/red/corner{ - dir = 1 - }, -/area/security/prison) -"aXs" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/open/floor/plasteel/red/corner{ - dir = 1 - }, -/area/security/prison) -"aXt" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/red/corner{ - dir = 1 - }, -/area/security/prison) -"aXu" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/effect/landmark{ - name = "lightsout" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/red/corner{ - dir = 1 - }, -/area/security/prison) -"aXv" = ( -/obj/structure/cable/white, -/obj/machinery/power/apc{ - cell_type = 5000; - dir = 2; - name = "Prison Wing APC"; - pixel_x = 1; - pixel_y = -24 - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/open/floor/plasteel/red/corner{ - dir = 1 - }, -/area/security/prison) -"aXw" = ( -/obj/machinery/light, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_y = -26 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/red/corner{ - dir = 1 - }, -/area/security/prison) -"aXx" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/open/floor/plasteel/red/corner{ - dir = 1 - }, -/area/security/prison) -"aXy" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1 - }, -/obj/structure/sign/pods{ - dir = 8; - pixel_y = -32 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/red/side{ - dir = 4 - }, -/area/security/prison) -"aXz" = ( -/obj/structure/cable/white, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/security/prison) -"aXA" = ( -/obj/machinery/light/small, -/obj/structure/sign/securearea{ - pixel_y = -32 - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/security/prison) -"aXB" = ( -/obj/machinery/door/poddoor/preopen{ - id = "brigprison"; - name = "Prison Blast door" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/delivery, -/area/security/prison) -"aXC" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating{ - icon_state = "panelscorched" - }, -/area/security/prison) -"aXD" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/plasteel/neutral, -/area/security/prison) -"aXE" = ( -/turf/open/floor/plating, -/area/security/prison) -"aXF" = ( -/obj/machinery/door/airlock/external{ - name = "Escape Pod 3" - }, -/turf/open/floor/plasteel/warning/side, -/area/security/prison) -"aXG" = ( -/obj/machinery/door/airlock/shuttle{ - name = "Escape Pod Airlock" - }, -/obj/docking_port/mobile/pod{ - dir = 4; - id = "pod3"; - name = "escape pod 3"; - port_angle = 180; - preferred_direction = 4 - }, -/turf/open/floor/plasteel/warnwhite/end{ - tag = "icon-white_warn_end (WEST)"; - icon_state = "white_warn_end"; - dir = 8 - }, -/area/shuttle/pod_3) -"aXH" = ( -/obj/structure/chair{ - dir = 4 - }, -/obj/item/device/radio/intercom{ - pixel_y = 25 - }, -/obj/item/weapon/storage/pod{ - pixel_x = 6; - pixel_y = -32 - }, -/turf/open/floor/plasteel/warnwhite/side{ - tag = "icon-white_warn_side (EAST)"; - icon_state = "white_warn_side"; - dir = 4 - }, -/area/shuttle/pod_3) -"aXI" = ( -/obj/structure/chair{ - dir = 4 - }, -/obj/machinery/status_display{ - density = 0; - layer = 3; - pixel_x = 0; - pixel_y = 32 - }, -/obj/machinery/computer/shuttle/pod{ - pixel_y = -32; - possible_destinations = "pod_asteroid3"; - shuttleId = "pod3" - }, -/turf/open/floor/plasteel/warnwhite/side{ - tag = "icon-white_warn_side (EAST)"; - icon_state = "white_warn_side"; - dir = 4 - }, -/area/shuttle/pod_3) -"aXJ" = ( -/obj/structure/grille, -/obj/structure/window/shuttle, -/turf/open/floor/plating, -/area/shuttle/pod_3) -"aXK" = ( -/obj/docking_port/stationary/random{ - dir = 4; - id = "pod_asteroid4"; - name = "asteroid" - }, -/turf/open/space, -/area/space) -"aXL" = ( -/obj/structure/grille, -/obj/machinery/atmospherics/pipe/simple/general/visible, -/turf/closed/wall/r_wall, -/area/atmos) -"aXM" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/visible, -/obj/structure/sign/securearea{ - pixel_x = -32 - }, -/obj/machinery/light/small{ - dir = 8 - }, -/obj/machinery/camera{ - c_tag = "Atmospherics - Port"; - dir = 4; - name = "atmospherics camera" - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/atmos) -"aXN" = ( -/obj/machinery/atmospherics/pipe/simple/green/visible, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/atmos) -"aXO" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/manifold/general/visible{ - dir = 4 - }, -/obj/machinery/meter, -/turf/open/floor/plasteel/neutral, -/area/atmos) -"aXP" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/landmark/start{ - name = "Atmospheric Technician" - }, -/turf/open/floor/plasteel/neutral, -/area/atmos) -"aXQ" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/components/trinary/filter{ - dir = 1 - }, -/turf/open/floor/plasteel/neutral, -/area/atmos) -"aXR" = ( -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/caution{ - tag = "icon-caution (WEST)"; - icon_state = "caution"; - dir = 8 - }, -/area/atmos) -"aXS" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/landmark/start{ - name = "Atmospheric Technician" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/neutral, -/area/atmos) -"aXT" = ( -/obj/machinery/suit_storage_unit/atmos, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning/side, -/area/atmos) -"aXU" = ( -/obj/machinery/pipedispenser/disposal, -/turf/open/floor/plasteel/warning/side, -/area/atmos) -"aXV" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible, -/obj/effect/landmark/start{ - name = "Atmospheric Technician" - }, -/turf/open/floor/plasteel/neutral, -/area/atmos) -"aXW" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/visible{ - tag = "icon-intact (NORTH)"; - icon_state = "intact"; - dir = 1 - }, -/turf/open/floor/plasteel/neutral, -/area/atmos) -"aXX" = ( -/obj/machinery/atmospherics/pipe/simple/yellow/visible, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/atmos) -"aXY" = ( -/obj/machinery/computer/atmos_control/tank{ - frequency = 1441; - input_tag = "o2_in"; - name = "Oxygen Supply Control"; - output_tag = "o2_out"; - sensors = list("o2_sensor" = "Tank") - }, -/obj/structure/window/reinforced{ - dir = 4; - pixel_x = 0 - }, -/obj/machinery/atmospherics/pipe/simple/green/visible, -/turf/open/floor/plasteel/blue/side{ - dir = 4 - }, -/area/atmos) -"aXZ" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/atmos) -"aYa" = ( -/obj/machinery/air_sensor{ - frequency = 1441; - id_tag = "o2_sensor" - }, -/turf/open/floor/engine/o2, -/area/atmos) -"aYb" = ( -/obj/machinery/portable_atmospherics/canister/oxygen, -/turf/open/floor/engine/o2, -/area/atmos) -"aYc" = ( -/obj/machinery/light/small{ - dir = 4 - }, -/turf/open/floor/engine/o2, -/area/atmos) -"aYd" = ( -/obj/structure/reagent_dispensers/watertank, -/obj/structure/window/reinforced{ - dir = 1; - pixel_y = 1 - }, -/obj/item/weapon/reagent_containers/glass/bucket, -/turf/open/floor/plasteel/bot, -/area/hydroponics) -"aYe" = ( -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/bot, -/area/hydroponics) -"aYf" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/bot, -/area/hydroponics) -"aYg" = ( -/obj/structure/closet/secure_closet/hydroponics, -/obj/structure/extinguisher_cabinet{ - pixel_y = 32 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/bot, -/area/hydroponics) -"aYh" = ( -/obj/structure/closet/secure_closet/hydroponics, -/turf/open/floor/plasteel/bot, -/area/hydroponics) -"aYi" = ( -/obj/structure/closet/secure_closet/hydroponics, -/obj/machinery/light{ - dir = 1 - }, -/turf/open/floor/plasteel/bot, -/area/hydroponics) -"aYj" = ( -/obj/structure/closet/wardrobe/botanist, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = 0; - pixel_y = 26 - }, -/turf/open/floor/plasteel/bot, -/area/hydroponics) -"aYk" = ( -/obj/structure/table/glass, -/obj/item/weapon/wrench, -/obj/item/clothing/suit/apron, -/turf/open/floor/plasteel/bot, -/area/hydroponics) -"aYl" = ( -/obj/machinery/airalarm{ - pixel_y = 22 - }, -/obj/machinery/firealarm{ - dir = 4; - icon_state = "fire0"; - pixel_x = 24; - pixel_y = 0; - tag = "icon-fire0 (EAST)" - }, -/obj/machinery/chem_master/condimaster{ - name = "BrewMaster 3000" - }, -/turf/open/floor/plasteel/bot, -/area/hydroponics) -"aYm" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/plasteel/loadingarea{ - tag = "icon-loadingarea (NORTH)"; - icon_state = "loadingarea"; - dir = 1 - }, -/area/crew_quarters/sleep{ - name = "Service Hall" - }) -"aYn" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/delivery, -/area/crew_quarters/sleep{ - name = "Service Hall" - }) -"aYo" = ( -/obj/structure/plasticflaps{ - opacity = 1 - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/navbeacon{ - codes_txt = "delivery;dir=4"; - dir = 4; - freq = 1400; - location = "Kitchen" - }, -/turf/open/floor/plasteel/delivery, -/area/crew_quarters/kitchen) -"aYp" = ( -/obj/machinery/light_switch{ - pixel_x = -26; - pixel_y = 26 - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plasteel/delivery, -/area/crew_quarters/kitchen) -"aYq" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/freezer, -/area/crew_quarters/kitchen) -"aYr" = ( -/mob/living/simple_animal/hostile/retaliate/goat{ - name = "Pete" - }, -/turf/open/floor/plasteel/freezer, -/area/crew_quarters/kitchen) -"aYs" = ( -/turf/open/floor/plasteel/freezer, -/area/crew_quarters/kitchen) -"aYt" = ( -/obj/structure/closet/secure_closet/freezer/kitchen, -/obj/structure/extinguisher_cabinet{ - pixel_x = 26 - }, -/turf/open/floor/plasteel/bot, -/area/crew_quarters/kitchen) -"aYu" = ( -/obj/structure/table/reinforced, -/obj/machinery/door/firedoor, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "kitchencounter"; - name = "Kitchen Counter Shutters" - }, -/obj/item/weapon/reagent_containers/food/condiment/saltshaker{ - pixel_x = -8; - pixel_y = 5 - }, -/obj/item/weapon/reagent_containers/food/condiment/peppermill{ - pixel_x = -8 - }, -/obj/item/weapon/reagent_containers/food/drinks/britcup, -/turf/open/floor/plasteel/delivery, -/area/crew_quarters/kitchen) -"aYv" = ( -/obj/structure/table/reinforced, -/obj/machinery/door/firedoor, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "kitchencounter"; - name = "Kitchen Counter Shutters" - }, -/turf/open/floor/plasteel/delivery, -/area/crew_quarters/kitchen) -"aYw" = ( -/obj/structure/table/reinforced, -/obj/machinery/door/firedoor, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "kitchencounter"; - name = "Kitchen Counter Shutters" - }, -/obj/item/weapon/storage/fancy/donut_box, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/delivery, -/area/crew_quarters/kitchen) -"aYx" = ( -/obj/structure/sign/nanotrasen, -/turf/closed/wall, -/area/crew_quarters/kitchen) -"aYy" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/door/firedoor, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/hallway/primary/fore) -"aYz" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/door/firedoor, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/hallway/primary/fore) -"aYA" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/door/firedoor, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/hallway/primary/fore) -"aYB" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plating, -/area/quartermaster/office{ - name = "\improper Cargo Office" - }) -"aYC" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass_mining{ - name = "Cargo Office"; - req_access_txt = "48;50" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (EAST)"; - icon_state = "plasteel_warn_side"; - dir = 4 - }, -/area/quartermaster/office{ - name = "\improper Cargo Office" - }) -"aYD" = ( -/obj/structure/table/reinforced, -/obj/machinery/door/firedoor, -/obj/item/weapon/folder/yellow, -/obj/item/weapon/pen, -/obj/machinery/door/window/southleft{ - dir = 1; - req_access_txt = "50" - }, -/turf/open/floor/plasteel/delivery, -/area/quartermaster/office{ - name = "\improper Cargo Office" - }) -"aYE" = ( -/obj/structure/filingcabinet/chestdrawer, -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = -26 - }, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (NORTHWEST)"; - icon_state = "brown"; - dir = 9 - }, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"aYF" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/purple/side{ - tag = "icon-purple (NORTH)"; - icon_state = "purple"; - dir = 1 - }, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"aYG" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (NORTH)"; - icon_state = "brown"; - dir = 1 - }, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"aYH" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/storage/belt/utility, -/turf/open/floor/plasteel/purple/side{ - tag = "icon-purple (NORTH)"; - icon_state = "purple"; - dir = 1 - }, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"aYI" = ( -/obj/structure/table/reinforced, -/obj/machinery/computer/stockexchange, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (NORTHEAST)"; - icon_state = "brown"; - dir = 5 - }, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"aYJ" = ( -/obj/structure/table, -/obj/effect/decal/cleanable/dirt, -/obj/item/weapon/clipboard, -/obj/item/toy/figure/miner, -/obj/machinery/firealarm{ - dir = 8; - pixel_x = -24; - pixel_y = 0 - }, -/obj/machinery/light{ - dir = 1 - }, -/turf/open/floor/plasteel/bot, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"aYK" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/delivery, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"aYL" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/delivery, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"aYM" = ( -/obj/structure/closet/secure_closet/miner, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/delivery, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"aYN" = ( -/obj/structure/closet/secure_closet/miner, -/turf/open/floor/plasteel/delivery, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"aYO" = ( -/obj/machinery/mineral/equipment_vendor, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/light{ - dir = 1 - }, -/turf/open/floor/plasteel/bot, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"aYP" = ( -/obj/structure/table, -/obj/machinery/microwave{ - desc = "Cooks and boils stuff, somehow."; - pixel_x = -3; - pixel_y = 5 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/bot, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"aYQ" = ( -/obj/structure/table, -/obj/item/weapon/storage/box/donkpockets, -/turf/open/floor/plasteel/bot, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"aYR" = ( -/obj/structure/cable/white{ - d2 = 2; - icon_state = "0-2"; - tag = "icon-0-2" - }, -/obj/structure/cable/white, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"aYS" = ( -/turf/closed/wall/mineral/titanium, -/area/shuttle/mining) -"aYT" = ( -/obj/structure/grille, -/obj/structure/window/shuttle, -/turf/open/floor/plating, -/area/shuttle/mining) -"aYU" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/folder/red, -/obj/item/weapon/pen, -/turf/open/floor/plasteel/vault, -/area/security/prison) -"aYV" = ( -/obj/structure/table/reinforced, -/obj/machinery/recharger, -/turf/open/floor/plasteel/vault, -/area/security/prison) -"aYW" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass_security{ - name = "Prison Wing"; - req_access_txt = "1" - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (EAST)"; - icon_state = "plasteel_warn_side"; - dir = 4 - }, -/area/security/prison) -"aYX" = ( -/obj/structure/cable/white, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/prison) -"aYY" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass_security{ - name = "Prison Wing"; - req_access_txt = "1" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (EAST)"; - icon_state = "plasteel_warn_side"; - dir = 4 - }, -/area/security/prison) -"aYZ" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/paper_bin, -/obj/item/weapon/pen, -/obj/structure/reagent_dispensers/peppertank{ - pixel_y = -32 - }, -/obj/machinery/light/small{ - dir = 8 - }, -/turf/open/floor/plasteel/vault, -/area/security/prison) -"aZa" = ( -/obj/structure/rack, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/item/weapon/restraints/handcuffs, -/obj/item/weapon/restraints/handcuffs, -/obj/item/weapon/restraints/handcuffs, -/obj/item/device/assembly/flash/handheld, -/turf/open/floor/plasteel/vault, -/area/security/prison) -"aZb" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/storage/box/bodybags{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/storage/box/prisoner, -/obj/structure/extinguisher_cabinet{ - pixel_y = -32 - }, -/turf/open/floor/plasteel/vault, -/area/security/prison) -"aZc" = ( -/obj/structure/closet/secure_closet/brig{ - name = "Prisoner Locker" - }, -/obj/machinery/ai_status_display{ - pixel_y = -32 - }, -/obj/machinery/light/small{ - dir = 8 - }, -/turf/open/floor/plasteel/vault, -/area/security/prison) -"aZd" = ( -/obj/structure/closet/secure_closet/brig{ - name = "Prisoner Locker" - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/vault, -/area/security/prison) -"aZe" = ( -/obj/structure/closet/secure_closet/brig{ - name = "Prisoner Locker" - }, -/obj/machinery/status_display{ - pixel_y = -32 - }, -/turf/open/floor/plasteel/vault, -/area/security/prison) -"aZf" = ( -/obj/structure/table, -/obj/item/weapon/storage/box/bodybags, -/obj/item/weapon/pen, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/red/side{ - dir = 10 - }, -/area/security/prison) -"aZg" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/table, -/obj/item/weapon/restraints/handcuffs, -/obj/item/clothing/suit/armor/vest, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/red/side, -/area/security/prison) -"aZh" = ( -/turf/open/floor/plating/warnplate{ - dir = 4; - luminosity = 2; - initial_gas_mix = "o2=0.01;n2=0.01"; - temperature = 2.7 - }, -/area/security/prison) -"aZi" = ( -/turf/open/floor/engine/plasma, -/area/atmos) -"aZj" = ( -/obj/machinery/camera{ - c_tag = "Atmospherics - Plasma Cell"; - name = "atmospherics camera" - }, -/turf/open/floor/engine/plasma, -/area/atmos) -"aZk" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - external_pressure_bound = 0; - frequency = 1441; - id_tag = "tox_out"; - initialize_directions = 1; - internal_pressure_bound = 4000; - name = "plasma vent"; - on = 1; - pressure_checks = 2; - pump_direction = 0 - }, -/turf/open/floor/engine/plasma, -/area/atmos) -"aZl" = ( -/obj/machinery/atmospherics/pipe/simple/yellow/visible{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/cyan/visible, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/atmos) -"aZm" = ( -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/structure/window/reinforced{ - dir = 1; - pixel_y = 1 - }, -/obj/machinery/atmospherics/pipe/simple/green/visible, -/obj/machinery/atmospherics/components/binary/pump{ - dir = 4; - name = "Plasma to Pure"; - on = 0 - }, -/turf/open/floor/plasteel/purple/side{ - tag = "icon-purple (NORTHWEST)"; - icon_state = "purple"; - dir = 9 - }, -/area/atmos) -"aZn" = ( -/obj/machinery/atmospherics/pipe/manifold/yellow/visible{ - dir = 4 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/atmos) -"aZo" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible{ - dir = 4 - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/portable_atmospherics/canister, -/turf/open/floor/plasteel/bot, -/area/atmos) -"aZp" = ( -/obj/machinery/atmospherics/pipe/manifold/general/visible{ - dir = 4; - initialize_directions = 11 - }, -/turf/open/floor/plasteel/neutral, -/area/atmos) -"aZq" = ( -/turf/open/floor/plasteel/neutral, -/area/atmos) -"aZr" = ( -/obj/machinery/atmospherics/pipe/manifold/general/visible{ - dir = 8 - }, -/obj/machinery/meter, -/turf/open/floor/plasteel/neutral, -/area/atmos) -"aZs" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 2; - on = 1 - }, -/turf/open/floor/plasteel/caution{ - tag = "icon-caution (WEST)"; - icon_state = "caution"; - dir = 8 - }, -/area/atmos) -"aZt" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral, -/area/atmos) -"aZu" = ( -/obj/structure/closet/secure_closet/atmospherics, -/turf/open/floor/plasteel/warning/end, -/area/atmos) -"aZv" = ( -/obj/machinery/pipedispenser, -/turf/open/floor/plasteel/warning/side, -/area/atmos) -"aZw" = ( -/obj/structure/window/reinforced{ - dir = 4; - pixel_x = 0 - }, -/obj/structure/window/reinforced, -/obj/machinery/atmospherics/components/trinary/filter{ - dir = 1; - filter_type = "o2"; - name = "oxygen filter"; - on = 1 - }, -/turf/open/floor/plasteel/blue/side{ - dir = 6 - }, -/area/atmos) -"aZx" = ( -/obj/machinery/atmospherics/pipe/simple/green/visible{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/atmos) -"aZy" = ( -/obj/machinery/meter, -/obj/structure/grille, -/obj/machinery/atmospherics/pipe/simple/green/visible{ - dir = 4 - }, -/turf/closed/wall/r_wall, -/area/atmos) -"aZz" = ( -/obj/machinery/atmospherics/components/unary/outlet_injector/on{ - dir = 8; - frequency = 1441; - id = "o2_in" - }, -/turf/open/floor/engine/o2, -/area/atmos) -"aZA" = ( -/mob/living/simple_animal/cockroach, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"aZB" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"aZC" = ( -/obj/structure/reagent_dispensers/watertank, -/obj/structure/window/reinforced, -/obj/item/weapon/reagent_containers/glass/bucket, -/obj/structure/sign/poster{ - icon_state = "poster2_legit"; - pixel_x = -32; - tag = "icon-poster2_legit" - }, -/turf/open/floor/plasteel/bot, -/area/hydroponics) -"aZD" = ( -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/greenblue/side{ - tag = "icon-greenblue (NORTH)"; - icon_state = "greenblue"; - dir = 1 - }, -/area/hydroponics) -"aZE" = ( -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/greenblue/side{ - tag = "icon-greenblue (NORTH)"; - icon_state = "greenblue"; - dir = 1 - }, -/area/hydroponics) -"aZF" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/greenblue/side{ - tag = "icon-greenblue (NORTH)"; - icon_state = "greenblue"; - dir = 1 - }, -/area/hydroponics) -"aZG" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/greenblue/side{ - tag = "icon-greenblue (NORTH)"; - icon_state = "greenblue"; - dir = 1 - }, -/area/hydroponics) -"aZH" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/greenblue/side{ - tag = "icon-greenblue (NORTH)"; - icon_state = "greenblue"; - dir = 1 - }, -/area/hydroponics) -"aZI" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plasteel/greenblue/side{ - tag = "icon-greenblue (NORTH)"; - icon_state = "greenblue"; - dir = 1 - }, -/area/hydroponics) -"aZJ" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/delivery, -/area/hydroponics) -"aZK" = ( -/obj/machinery/door/firedoor, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/door/airlock{ - name = "Hydroponics Backroom"; - req_access_txt = "35" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/crew_quarters/sleep{ - name = "Service Hall" - }) -"aZL" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/turf/open/floor/plasteel/bot, -/area/crew_quarters/sleep{ - name = "Service Hall" - }) -"aZM" = ( -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, -/turf/open/floor/plasteel/bot, -/area/crew_quarters/sleep{ - name = "Service Hall" - }) -"aZN" = ( -/obj/machinery/door/firedoor, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/door/airlock{ - name = "Kitchen Coldroom"; - req_access_txt = "28" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/crew_quarters/kitchen) -"aZO" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/delivery, -/area/crew_quarters/kitchen) -"aZP" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/freezer, -/area/crew_quarters/kitchen) -"aZQ" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/effect/landmark/start{ - name = "Chef" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plasteel/freezer, -/area/crew_quarters/kitchen) -"aZR" = ( -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/plasteel/freezer, -/area/crew_quarters/kitchen) -"aZS" = ( -/obj/structure/closet/chefcloset, -/turf/open/floor/plasteel/bot, -/area/crew_quarters/kitchen) -"aZT" = ( -/obj/structure/rack, -/obj/item/weapon/book/manual/chef_recipes, -/obj/item/stack/packageWrap, -/obj/item/weapon/hand_labeler, -/obj/machinery/airalarm{ - dir = 4; - icon_state = "alarm0"; - pixel_x = -22 - }, -/turf/open/floor/plasteel/bot, -/area/crew_quarters/kitchen) -"aZU" = ( -/turf/open/floor/plasteel/red, -/area/crew_quarters/kitchen) -"aZV" = ( -/turf/open/floor/plasteel/white, -/area/crew_quarters/kitchen) -"aZW" = ( -/obj/structure/sink/kitchen{ - desc = "A sink used for washing one's hands and face. It looks rusty and home-made"; - name = "sink"; - pixel_y = 28 - }, -/turf/open/floor/plasteel/red, -/area/crew_quarters/kitchen) -"aZX" = ( -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/red, -/area/crew_quarters/kitchen) -"aZY" = ( -/obj/machinery/light{ - icon_state = "tube1"; - dir = 4 - }, -/obj/machinery/button/door{ - id = "kitchencounter"; - name = "Kitchen Counter Shutters"; - pixel_x = 26; - pixel_y = 8; - req_access_txt = "26" - }, -/obj/machinery/button/door{ - id = "kitchenside"; - name = "Kitchen Side Shutters"; - pixel_x = 26; - pixel_y = -8; - req_access_txt = "26" - }, -/obj/machinery/disposal/bin, -/obj/structure/disposalpipe/trunk, -/turf/open/floor/plasteel/delivery, -/area/crew_quarters/kitchen) -"aZZ" = ( -/turf/closed/wall, -/area/hallway/primary/fore) -"baa" = ( -/obj/structure/table, -/obj/item/weapon/paper_bin, -/obj/item/weapon/pen, -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = -26 - }, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (NORTHWEST)"; - icon_state = "brown"; - dir = 9 - }, -/area/hallway/primary/fore) -"bab" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (NORTH)"; - icon_state = "brown"; - dir = 1 - }, -/area/hallway/primary/fore) -"bac" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (NORTH)"; - icon_state = "brown"; - dir = 1 - }, -/area/hallway/primary/fore) -"bad" = ( -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (NORTH)"; - icon_state = "brown"; - dir = 1 - }, -/area/hallway/primary/fore) -"bae" = ( -/obj/machinery/camera{ - c_tag = "Cargo - Waiting Room"; - dir = 2; - name = "cargo camera" - }, -/turf/open/floor/plasteel/loadingarea{ - dir = 4 - }, -/area/hallway/primary/fore) -"baf" = ( -/turf/open/floor/plasteel/bot, -/area/hallway/primary/fore) -"bag" = ( -/turf/open/floor/plasteel/delivery, -/area/hallway/primary/fore) -"bah" = ( -/obj/machinery/computer/cargo/request, -/obj/machinery/light{ - dir = 1 - }, -/turf/open/floor/plasteel/bot, -/area/hallway/primary/fore) -"bai" = ( -/obj/machinery/computer/cargo/request, -/turf/open/floor/plasteel/purple/side{ - tag = "icon-purple (WEST)"; - icon_state = "purple"; - dir = 8 - }, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"baj" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/plasteel/neutral, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"bak" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"bal" = ( -/obj/structure/chair/office/dark{ - dir = 1 - }, -/turf/open/floor/plasteel/neutral, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"bam" = ( -/obj/structure/filingcabinet/filingcabinet, -/turf/open/floor/plasteel/purple/side{ - tag = "icon-purple (EAST)"; - icon_state = "purple"; - dir = 4 - }, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"ban" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1 - }, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (WEST)"; - icon_state = "brown"; - dir = 8 - }, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"bao" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (NORTH)"; - icon_state = "brown"; - dir = 1 - }, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"bap" = ( -/turf/open/floor/plasteel/loadingarea{ - tag = "icon-loadingarea (NORTH)"; - icon_state = "loadingarea"; - dir = 1 - }, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"baq" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/loadingarea{ - tag = "icon-loadingarea (NORTH)"; - icon_state = "loadingarea"; - dir = 1 - }, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"bar" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (NORTH)"; - icon_state = "brown"; - dir = 1 - }, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"bas" = ( -/turf/open/floor/plasteel/purple/side{ - tag = "icon-purple (NORTH)"; - icon_state = "purple"; - dir = 1 - }, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"bat" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (NORTHEAST)"; - icon_state = "brown"; - dir = 5 - }, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"bau" = ( -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/structure/cable/white, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"bav" = ( -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"baw" = ( -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/structure/sign/vacuum, -/turf/open/floor/plating, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"bax" = ( -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/structure/cable/white{ - d2 = 2; - icon_state = "0-2"; - tag = "icon-0-2" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"bay" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/storage/toolbox/emergency, -/turf/open/floor/plasteel/warning{ - tag = "icon-plasteel_warn (NORTHWEST)"; - icon_state = "plasteel_warn"; - dir = 9 - }, -/area/shuttle/mining) -"baz" = ( -/obj/machinery/computer/shuttle/mining, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/shuttle/mining) -"baA" = ( -/obj/structure/table/reinforced, -/obj/effect/decal/cleanable/dirt, -/obj/item/weapon/crowbar/red, -/obj/item/weapon/wrench, -/obj/item/weapon/tank/internals/emergency_oxygen/engi, -/obj/item/clothing/mask/gas, -/turf/open/floor/plasteel/warning{ - dir = 5 - }, -/area/shuttle/mining) -"baB" = ( -/obj/machinery/door/poddoor/preopen{ - id = "brigprison"; - name = "Prison Blast door" - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/effect/decal/cleanable/dirt, -/obj/structure/sign/pods{ - pixel_x = -32 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/delivery, -/area/security/prison) -"baC" = ( -/obj/machinery/door/poddoor/preopen{ - id = "brigprison"; - name = "Prison Blast door" - }, -/turf/open/floor/plasteel/delivery, -/area/security/prison) -"baD" = ( -/obj/machinery/door/poddoor/preopen{ - id = "brigprison"; - name = "Prison Blast door" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/delivery, -/area/security/prison) -"baE" = ( -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_y = 26 - }, -/obj/effect/decal/cleanable/dirt, -/obj/effect/landmark{ - name = "blobstart" - }, -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/security/prison) -"baF" = ( -/obj/structure/closet/bombclosetsecurity, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/security/prison) -"baG" = ( -/obj/machinery/light/small{ - dir = 8 - }, -/turf/open/floor/engine/plasma, -/area/atmos) -"baH" = ( -/obj/machinery/portable_atmospherics/canister/toxins, -/turf/open/floor/engine/plasma, -/area/atmos) -"baI" = ( -/obj/machinery/air_sensor{ - frequency = 1441; - id_tag = "tox_sensor" - }, -/turf/open/floor/engine/plasma, -/area/atmos) -"baJ" = ( -/obj/machinery/computer/atmos_control/tank{ - frequency = 1441; - input_tag = "tox_in"; - name = "Plasma Supply Control"; - output_tag = "tox_out"; - sensors = list("tox_sensor" = "Tank") - }, -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/green/visible, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/purple/side{ - tag = "icon-purple (WEST)"; - icon_state = "purple"; - dir = 8 - }, -/area/atmos) -"baK" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 2; - on = 1 - }, -/turf/open/floor/plasteel/neutral, -/area/atmos) -"baL" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible, -/turf/open/floor/plasteel/neutral, -/area/atmos) -"baM" = ( -/obj/structure/table/reinforced, -/obj/item/device/analyzer, -/turf/open/floor/plasteel/warning/side, -/area/atmos) -"baN" = ( -/obj/effect/decal/cleanable/dirt, -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/obj/machinery/firealarm{ - dir = 8; - pixel_x = -24; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/caution{ - tag = "icon-caution (WEST)"; - icon_state = "caution"; - dir = 8 - }, -/area/atmos) -"baO" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/delivery, -/area/atmos) -"baP" = ( -/obj/structure/closet/wardrobe/atmospherics_yellow, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/obj/item/weapon/storage/backpack/satchel/eng, -/turf/open/floor/plasteel/bot, -/area/atmos) -"baQ" = ( -/obj/structure/sign/atmosplaque, -/turf/closed/wall, -/area/atmos) -"baR" = ( -/obj/structure/table/reinforced, -/obj/item/stack/packageWrap, -/obj/item/weapon/hand_labeler, -/turf/open/floor/plasteel/warning/side, -/area/atmos) -"baS" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/cyan/visible{ - tag = "icon-intact (NORTH)"; - icon_state = "intact"; - dir = 1 - }, -/turf/open/floor/plasteel/neutral, -/area/atmos) -"baT" = ( -/obj/machinery/atmospherics/pipe/simple/yellow/visible{ - tag = "icon-intact (NORTHEAST)"; - icon_state = "intact"; - dir = 5 - }, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/atmos) -"baU" = ( -/obj/machinery/atmospherics/pipe/simple/green/visible, -/obj/machinery/atmospherics/components/binary/pump{ - dir = 8; - name = "N2 to Pure" - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/atmos) -"baV" = ( -/obj/structure/sign/securearea{ - pixel_x = 32 - }, -/obj/machinery/light/small{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/yellow/visible{ - tag = "icon-intact (SOUTHWEST)"; - icon_state = "intact"; - dir = 10 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/atmos) -"baW" = ( -/obj/structure/closet/firecloset, -/obj/machinery/light/small{ - dir = 4 - }, -/turf/open/floor/plasteel/bot, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"baX" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"baY" = ( -/obj/structure/closet/crate/hydroponics, -/obj/item/weapon/cultivator, -/obj/item/weapon/hatchet, -/obj/item/weapon/wirecutters, -/obj/item/weapon/shovel/spade, -/turf/open/floor/plasteel/bot, -/area/hydroponics) -"baZ" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/greenblue/side, -/area/hydroponics) -"bba" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/greenblue/side, -/area/hydroponics) -"bbb" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/delivery, -/area/hydroponics) -"bbc" = ( -/obj/machinery/camera{ - c_tag = "Hydroponics Backroom"; - dir = 1; - name = "service camera" - }, -/turf/open/floor/plasteel/greenblue/side, -/area/hydroponics) -"bbd" = ( -/obj/structure/cable/white, -/obj/machinery/power/apc{ - dir = 2; - name = "Hydroponics APC"; - pixel_y = -26 - }, -/turf/open/floor/plasteel/greenblue/side, -/area/hydroponics) -"bbe" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/turf/open/floor/plasteel/greenblue/side, -/area/hydroponics) -"bbf" = ( -/turf/open/floor/plasteel/greenblue/side, -/area/hydroponics) -"bbg" = ( -/obj/machinery/light_switch{ - pixel_x = 8; - pixel_y = -26 - }, -/turf/open/floor/plasteel/delivery, -/area/hydroponics) -"bbh" = ( -/obj/structure/plasticflaps{ - opacity = 1 - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/navbeacon{ - codes_txt = "delivery;dir=8"; - dir = 8; - freq = 1400; - location = "Hydroponics" - }, -/turf/open/floor/plasteel/delivery, -/area/crew_quarters/sleep{ - name = "Service Hall" - }) -"bbi" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/delivery, -/area/crew_quarters/sleep{ - name = "Service Hall" - }) -"bbj" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral/corner{ - dir = 4 - }, -/area/crew_quarters/sleep{ - name = "Service Hall" - }) -"bbk" = ( -/obj/structure/kitchenspike, -/obj/machinery/firealarm{ - dir = 8; - pixel_x = -24; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/bot, -/area/crew_quarters/kitchen) -"bbl" = ( -/obj/machinery/airalarm{ - dir = 1; - icon_state = "alarm0"; - pixel_y = -22 - }, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = -26; - pixel_y = -26 - }, -/turf/open/floor/plasteel/bot, -/area/crew_quarters/kitchen) -"bbm" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/delivery, -/area/crew_quarters/kitchen) -"bbn" = ( -/obj/structure/cable/white, -/obj/machinery/power/apc{ - dir = 2; - name = "Kitchen APC"; - pixel_y = -26 - }, -/turf/open/floor/plasteel/bot, -/area/crew_quarters/kitchen) -"bbo" = ( -/obj/machinery/chem_master/condimaster, -/turf/open/floor/plasteel/bot, -/area/crew_quarters/kitchen) -"bbp" = ( -/obj/structure/closet/secure_closet/freezer/fridge, -/obj/machinery/newscaster{ - pixel_x = -32 - }, -/turf/open/floor/plasteel/delivery, -/area/crew_quarters/kitchen) -"bbq" = ( -/mob/living/carbon/monkey/punpun, -/turf/open/floor/plasteel/red, -/area/crew_quarters/kitchen) -"bbr" = ( -/obj/machinery/holopad, -/obj/effect/landmark/start{ - name = "Cook" - }, -/turf/open/floor/plasteel/bot, -/area/crew_quarters/kitchen) -"bbs" = ( -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/white, -/area/crew_quarters/kitchen) -"bbt" = ( -/obj/structure/table/reinforced, -/obj/machinery/door/firedoor, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "kitchenside"; - name = "Kitchen Hall Shutters" - }, -/turf/open/floor/plasteel/delivery, -/area/crew_quarters/kitchen) -"bbu" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/brown/corner{ - tag = "icon-browncorner (EAST)"; - icon_state = "browncorner"; - dir = 4 - }, -/area/hallway/primary/fore) -"bbv" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/hallway/primary/fore) -"bbw" = ( -/obj/structure/chair{ - dir = 4 - }, -/obj/effect/landmark/start{ - name = "Assistant" - }, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (WEST)"; - icon_state = "brown"; - dir = 8 - }, -/area/hallway/primary/fore) -"bbx" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/fore) -"bby" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/fore) -"bbz" = ( -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/fore) -"bbA" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 2; - on = 1 - }, -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/fore) -"bbB" = ( -/obj/structure/table/reinforced, -/obj/machinery/door/firedoor, -/obj/item/weapon/folder/yellow, -/obj/item/weapon/pen, -/obj/machinery/door/window/westleft{ - dir = 4; - name = "Mining Desk"; - req_access_txt = "48" - }, -/turf/open/floor/plasteel/delivery, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"bbC" = ( -/obj/structure/chair/office/dark{ - dir = 8 - }, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (WEST)"; - icon_state = "brown"; - dir = 8 - }, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"bbD" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"bbE" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"bbF" = ( -/turf/open/floor/plasteel/neutral, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"bbG" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (EAST)"; - icon_state = "brown"; - dir = 4 - }, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"bbH" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/mining{ - name = "Mining Dock"; - req_access_txt = "48" - }, -/turf/open/floor/plasteel/warning/side, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"bbI" = ( -/turf/open/floor/plasteel/purple/side{ - tag = "icon-purple (WEST)"; - icon_state = "purple"; - dir = 8 - }, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"bbJ" = ( -/obj/effect/decal/cleanable/oil, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"bbK" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/plasteel/neutral, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"bbL" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/landmark/start{ - name = "Shaft Miner" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"bbM" = ( -/obj/effect/landmark/start{ - name = "Shaft Miner" - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/plasteel/neutral, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"bbN" = ( -/obj/effect/landmark/start{ - name = "Shaft Miner" - }, -/turf/open/floor/plasteel/neutral, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"bbO" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"bbP" = ( -/turf/open/floor/plasteel/purple/side{ - tag = "icon-purple (EAST)"; - icon_state = "purple"; - dir = 4 - }, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"bbQ" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/structure/sign/pods{ - name = "MINING POD"; - pixel_x = 0 - }, -/turf/open/floor/plating, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"bbR" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/ore_box, -/turf/open/floor/plasteel/bot, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"bbS" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/closet/emcloset, -/turf/open/floor/plasteel/delivery, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"bbT" = ( -/obj/structure/cable/white, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"bbU" = ( -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/shuttle/mining) -"bbV" = ( -/obj/structure/chair{ - dir = 1 - }, -/turf/open/floor/plasteel/neutral, -/area/shuttle/mining) -"bbW" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/blood/old, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/shuttle/mining) -"bbX" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/structure/sign/securearea{ - pixel_x = -32 - }, -/obj/machinery/light/small{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/security/prison) -"bbY" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/security/prison) -"bbZ" = ( -/obj/machinery/button/door{ - id = "brigprison"; - name = "Prison Lockdown"; - pixel_x = 26; - pixel_y = 26; - req_access_txt = "63" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/security/prison) -"bca" = ( -/obj/machinery/door/firedoor, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/door/airlock/glass_security{ - name = "Storage Closet"; - req_access_txt = "63" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/security/prison) -"bcb" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/security/prison) -"bcc" = ( -/obj/structure/closet/l3closet/security, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/security/prison) -"bcd" = ( -/obj/machinery/atmospherics/components/unary/outlet_injector/on{ - dir = 4; - frequency = 1441; - id = "tox_in"; - pixel_y = 1 - }, -/turf/open/floor/engine/plasma, -/area/atmos) -"bce" = ( -/obj/machinery/atmospherics/pipe/simple/green/visible{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/cyan/visible, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/atmos) -"bcf" = ( -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/structure/window/reinforced, -/obj/machinery/atmospherics/components/trinary/filter{ - dir = 2; - filter_type = "plasma"; - name = "plasma filter"; - on = 1 - }, -/turf/open/floor/plasteel/purple/side{ - dir = 10 - }, -/area/atmos) -"bcg" = ( -/obj/machinery/atmospherics/components/binary/pump{ - dir = 1; - name = "Port Mix to Port Ports"; - on = 0 - }, -/turf/open/floor/plasteel/neutral, -/area/atmos) -"bch" = ( -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/obj/machinery/atmospherics/components/binary/pump{ - dir = 1; - name = "Port Mix to Starboard Ports"; - on = 0 - }, -/turf/open/floor/plasteel/neutral, -/area/atmos) -"bci" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/atmos) -"bcj" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass_atmos{ - name = "Atmospherics Storage"; - req_access_txt = "24" - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (EAST)"; - icon_state = "plasteel_warn_side"; - dir = 4 - }, -/area/atmos) -"bck" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/visible{ - tag = "icon-intact (NORTHEAST)"; - icon_state = "intact"; - dir = 5 - }, -/turf/open/floor/plasteel/neutral, -/area/atmos) -"bcl" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/visible{ - dir = 4 - }, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/atmos) -"bcm" = ( -/obj/structure/window/reinforced{ - dir = 4; - pixel_x = 0 - }, -/obj/structure/window/reinforced{ - dir = 1; - pixel_y = 1 - }, -/obj/machinery/atmospherics/pipe/simple/green/visible, -/obj/machinery/atmospherics/components/binary/pump{ - dir = 8; - name = "N2 to Airmix"; - on = 1 - }, -/turf/open/floor/plasteel/red/side{ - dir = 5 - }, -/area/atmos) -"bcn" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/manifold/yellow/visible, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/atmos) -"bco" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - external_pressure_bound = 0; - frequency = 1441; - id_tag = "n2_out"; - initialize_directions = 1; - internal_pressure_bound = 4000; - name = "n2 vent"; - on = 1; - pressure_checks = 2; - pump_direction = 0 - }, -/turf/open/floor/engine/n2, -/area/atmos) -"bcp" = ( -/obj/machinery/camera{ - c_tag = "Atmospherics - Nitrogen Cell"; - name = "atmospherics camera" - }, -/turf/open/floor/engine/n2, -/area/atmos) -"bcq" = ( -/turf/open/floor/engine/n2, -/area/atmos) -"bcr" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"bcs" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/closet, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 3; - name = "3maintenance loot spawner" - }, -/turf/open/floor/plasteel/bot, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"bct" = ( -/obj/structure/sign/botany, -/turf/closed/wall, -/area/hydroponics) -"bcu" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/closed/wall, -/area/hydroponics) -"bcv" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock{ - name = "Hydroponics Backroom"; - req_access_txt = "35" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/hydroponics) -"bcw" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock{ - name = "Service Hall"; - req_access_txt = "0" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/crew_quarters/sleep{ - name = "Service Hall" - }) -"bcx" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/closed/wall, -/area/crew_quarters/sleep{ - name = "Service Hall" - }) -"bcy" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall, -/area/crew_quarters/kitchen) -"bcz" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock{ - name = "Kitchen Coldroom"; - req_access_txt = "28" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/crew_quarters/kitchen) -"bcA" = ( -/obj/structure/closet/secure_closet/freezer/fridge, -/obj/machinery/light{ - dir = 8 - }, -/obj/machinery/camera{ - c_tag = "Kitchen"; - dir = 4; - name = "service camera" - }, -/turf/open/floor/plasteel/delivery, -/area/crew_quarters/kitchen) -"bcB" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/storage/bag/tray, -/turf/open/floor/plasteel/bot, -/area/crew_quarters/kitchen) -"bcC" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/reagent_containers/glass/bowl, -/turf/open/floor/plasteel/bot, -/area/crew_quarters/kitchen) -"bcD" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/reagent_containers/food/condiment/flour, -/turf/open/floor/plasteel/bot, -/area/crew_quarters/kitchen) -"bcE" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/junction{ - dir = 1; - icon_state = "pipe-j1" - }, -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/fore) -"bcF" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/brown/corner{ - tag = "icon-browncorner (EAST)"; - icon_state = "browncorner"; - dir = 4 - }, -/area/hallway/primary/fore) -"bcG" = ( -/obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/hallway/primary/fore) -"bcH" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (WEST)"; - icon_state = "brown"; - dir = 8 - }, -/area/hallway/primary/fore) -"bcI" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/fore) -"bcJ" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/open/floor/plasteel/bot, -/area/hallway/primary/fore) -"bcK" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/delivery, -/area/hallway/primary/fore) -"bcL" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/fore) -"bcM" = ( -/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, -/turf/open/floor/plasteel/bot, -/area/hallway/primary/fore) -"bcN" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/loadingarea{ - tag = "icon-loadingarea (NORTH)"; - icon_state = "loadingarea"; - dir = 1 - }, -/area/hallway/primary/fore) -"bcO" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"bcP" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/purple/side{ - tag = "icon-purple (WEST)"; - icon_state = "purple"; - dir = 8 - }, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"bcQ" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"bcR" = ( -/obj/machinery/holopad, -/obj/effect/landmark{ - name = "lightsout" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/open/floor/plasteel/bot, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"bcS" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"bcT" = ( -/obj/effect/decal/cleanable/dirt, -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-18"; - layer = 4.1 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/purple/side{ - tag = "icon-purple (EAST)"; - icon_state = "purple"; - dir = 4 - }, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"bcU" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (WEST)"; - icon_state = "brown"; - dir = 8 - }, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"bcV" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"bcW" = ( -/obj/machinery/suit_storage_unit/mining/eva, -/turf/open/floor/plasteel/delivery, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"bcX" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/suit_storage_unit/mining/eva, -/turf/open/floor/plasteel/delivery, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"bcY" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"bcZ" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/external{ - name = "Mining Dock Airlock"; - req_access = null; - req_access_txt = "48" - }, -/turf/open/floor/plasteel/warning/side, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"bda" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (EAST)"; - icon_state = "plasteel_warn_side"; - dir = 4 - }, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"bdb" = ( -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (EAST)"; - icon_state = "plasteel_warn_side"; - dir = 4 - }, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"bdc" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/blood/old, -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/external{ - name = "Mining Dock Airlock"; - req_access = null; - req_access_txt = "48" - }, -/turf/open/floor/plasteel/warning/side, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"bdd" = ( -/obj/machinery/door/airlock/shuttle{ - name = "Mining Shuttle Airlock"; - req_access_txt = "0" - }, -/turf/open/floor/plasteel/warnwhite/side, -/area/shuttle/mining) -"bde" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/shuttle/mining) -"bdf" = ( -/turf/open/floor/plasteel/neutral, -/area/shuttle/mining) -"bdg" = ( -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/shuttle/mining) -"bdh" = ( -/obj/docking_port/mobile{ - dir = 8; - dwidth = 3; - height = 5; - id = "mining"; - name = "mining shuttle"; - port_angle = 90; - width = 7 - }, -/obj/docking_port/stationary{ - dir = 8; - dwidth = 3; - height = 5; - id = "mining_home"; - name = "mining shuttle bay"; - width = 7 - }, -/obj/machinery/door/airlock/shuttle{ - name = "Mining Shuttle Airlock"; - req_access_txt = "48" - }, -/turf/open/floor/plasteel/warnwhite/side, -/area/shuttle/mining) -"bdi" = ( -/turf/closed/wall/r_wall, -/area/security/brig) -"bdj" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass_security{ - name = "Prison Wing"; - req_access_txt = "1" - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (EAST)"; - icon_state = "plasteel_warn_side"; - dir = 4 - }, -/area/security/brig) -"bdk" = ( -/obj/structure/cable/white{ - tag = "icon-0-2"; - icon_state = "0-2" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/structure/sign/directions/engineering{ - desc = "A sign that shows there are doors here. There are doors everywhere!"; - icon_state = "doors"; - name = "WARNING: BLAST DOORS"; - pixel_x = 0; - pixel_y = 0; - tag = "icon-doors" - }, -/turf/open/floor/plating, -/area/security/brig) -"bdl" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass_security{ - name = "Prison Wing"; - req_access_txt = "1" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (EAST)"; - icon_state = "plasteel_warn_side"; - dir = 4 - }, -/area/security/brig) -"bdm" = ( -/turf/closed/wall/r_wall, -/area/security/main) -"bdn" = ( -/obj/structure/cable/white{ - tag = "icon-0-2"; - icon_state = "0-2" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/main) -"bdo" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/visible, -/obj/effect/decal/cleanable/dirt, -/obj/structure/sign/securearea{ - pixel_x = -32 - }, -/obj/machinery/light/small{ - dir = 8 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/atmos) -"bdp" = ( -/obj/machinery/atmospherics/pipe/manifold/general/visible{ - dir = 1 - }, -/obj/machinery/meter, -/turf/open/floor/plasteel/neutral, -/area/atmos) -"bdq" = ( -/turf/open/floor/plasteel/caution{ - dir = 1 - }, -/area/atmos) -"bdr" = ( -/obj/machinery/power/apc{ - cell_type = 5000; - dir = 1; - name = "Atmospherics APC"; - pixel_x = 0; - pixel_y = 25 - }, -/obj/structure/cable/white{ - tag = "icon-0-2"; - icon_state = "0-2" - }, -/turf/open/floor/plasteel/caution{ - dir = 1 - }, -/area/atmos) -"bds" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/caution{ - dir = 1 - }, -/area/atmos) -"bdt" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHEAST)"; - icon_state = "intact"; - dir = 5 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/caution{ - dir = 1 - }, -/area/atmos) -"bdu" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/caution{ - dir = 1 - }, -/area/atmos) -"bdv" = ( -/obj/structure/extinguisher_cabinet{ - pixel_y = 32 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/camera{ - c_tag = "Atmospherics - Aft"; - name = "atmospherics camera" - }, -/turf/open/floor/plasteel/caution{ - dir = 1 - }, -/area/atmos) -"bdw" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/caution{ - dir = 1 - }, -/area/atmos) -"bdx" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/atmos) -"bdy" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/atmos) -"bdz" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plasteel/neutral, -/area/atmos) -"bdA" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/atmos) -"bdB" = ( -/obj/machinery/computer/atmos_control/tank{ - frequency = 1441; - input_tag = "n2_in"; - name = "Nitrogen Supply Control"; - output_tag = "n2_out"; - sensors = list("n2_sensor" = "Tank") - }, -/obj/structure/window/reinforced{ - dir = 4; - pixel_x = 0 - }, -/obj/machinery/atmospherics/pipe/simple/green/visible, -/turf/open/floor/plasteel/red/side{ - dir = 4 - }, -/area/atmos) -"bdC" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/atmos) -"bdD" = ( -/obj/machinery/air_sensor{ - frequency = 1441; - id_tag = "n2_sensor" - }, -/turf/open/floor/engine/n2, -/area/atmos) -"bdE" = ( -/obj/machinery/portable_atmospherics/canister/nitrogen, -/turf/open/floor/engine/n2, -/area/atmos) -"bdF" = ( -/obj/machinery/light/small{ - dir = 4 - }, -/turf/open/floor/engine/n2, -/area/atmos) -"bdG" = ( -/obj/structure/reagent_dispensers/watertank, -/obj/item/weapon/reagent_containers/glass/bucket, -/obj/structure/window/reinforced{ - dir = 8 - }, -/turf/open/floor/plasteel/bot, -/area/hydroponics) -"bdH" = ( -/obj/structure/reagent_dispensers/watertank, -/obj/item/weapon/reagent_containers/glass/bucket, -/obj/structure/window/reinforced{ - dir = 4; - pixel_x = 0 - }, -/turf/open/floor/plasteel/bot, -/area/hydroponics) -"bdI" = ( -/obj/machinery/disposal/bin, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/trunk, -/turf/open/floor/plasteel/bot, -/area/hydroponics) -"bdJ" = ( -/obj/machinery/light_switch{ - pixel_x = -26; - pixel_y = 26 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/delivery, -/area/hydroponics) -"bdK" = ( -/obj/structure/table/glass, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = 0; - pixel_y = 26 - }, -/obj/item/weapon/storage/box/beakers{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/storage/box/syringes, -/turf/open/floor/plasteel/bot, -/area/hydroponics) -"bdL" = ( -/obj/machinery/reagentgrinder{ - desc = "Used to grind things up into raw materials and liquids."; - pixel_y = 5 - }, -/obj/structure/table/glass, -/turf/open/floor/plasteel/bot, -/area/hydroponics) -"bdM" = ( -/obj/structure/table/glass, -/obj/machinery/newscaster{ - pixel_y = 32 - }, -/obj/item/weapon/clipboard, -/obj/item/toy/figure/botanist, -/turf/open/floor/plasteel/bot, -/area/hydroponics) -"bdN" = ( -/obj/machinery/firealarm{ - pixel_y = 24 - }, -/turf/open/floor/plasteel/bot, -/area/hydroponics) -"bdO" = ( -/obj/machinery/smartfridge, -/turf/closed/wall, -/area/hydroponics) -"bdP" = ( -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/sleep{ - name = "Service Hall" - }) -"bdQ" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/sleep{ - name = "Service Hall" - }) -"bdR" = ( -/obj/machinery/light/small{ - dir = 1 - }, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = 0; - pixel_y = 26 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/sleep{ - name = "Service Hall" - }) -"bdS" = ( -/obj/machinery/smartfridge, -/turf/closed/wall, -/area/crew_quarters/kitchen) -"bdT" = ( -/obj/machinery/firealarm{ - dir = 8; - pixel_x = -24; - pixel_y = 32 - }, -/obj/machinery/light_switch{ - pixel_x = -7; - pixel_y = 26 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/red/side{ - dir = 4 - }, -/area/crew_quarters/kitchen) -"bdU" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/red, -/area/crew_quarters/kitchen) -"bdV" = ( -/obj/machinery/requests_console{ - department = "Kitchen"; - departmentType = 0; - name = "Kitchen RC"; - pixel_x = 0; - pixel_y = 32 - }, -/turf/open/floor/plasteel/red, -/area/crew_quarters/kitchen) -"bdW" = ( -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = 0; - pixel_y = 26 - }, -/turf/open/floor/plasteel/white, -/area/crew_quarters/kitchen) -"bdX" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/reagent_containers/food/snacks/dough, -/turf/open/floor/plasteel/bot, -/area/crew_quarters/kitchen) -"bdY" = ( -/obj/structure/table/reinforced, -/turf/open/floor/plasteel/bot, -/area/crew_quarters/kitchen) -"bdZ" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/storage/box/papersack{ - tag = "icon-paperbag_NanotrasenStandard_closed"; - icon_state = "paperbag_NanotrasenStandard_closed" - }, -/obj/item/weapon/storage/box/papersack{ - tag = "icon-paperbag_NanotrasenStandard_closed"; - icon_state = "paperbag_NanotrasenStandard_closed" - }, -/obj/item/weapon/storage/box/papersack{ - tag = "icon-paperbag_NanotrasenStandard_closed"; - icon_state = "paperbag_NanotrasenStandard_closed" - }, -/obj/item/weapon/storage/box/papersack{ - tag = "icon-paperbag_NanotrasenStandard_closed"; - icon_state = "paperbag_NanotrasenStandard_closed" - }, -/obj/item/weapon/storage/box/papersack{ - tag = "icon-paperbag_NanotrasenStandard_closed"; - icon_state = "paperbag_NanotrasenStandard_closed" - }, -/turf/open/floor/plasteel/bot, -/area/crew_quarters/kitchen) -"bea" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 1 - }, -/area/hallway/primary/fore) -"beb" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/fore) -"bec" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/brown/corner{ - tag = "icon-browncorner (EAST)"; - icon_state = "browncorner"; - dir = 4 - }, -/area/hallway/primary/fore) -"bed" = ( -/obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/hallway/primary/fore) -"bee" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (WEST)"; - icon_state = "brown"; - dir = 8 - }, -/area/hallway/primary/fore) -"bef" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/fore) -"beg" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plasteel/delivery, -/area/hallway/primary/fore) -"beh" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plasteel/bot, -/area/hallway/primary/fore) -"bei" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/fore) -"bej" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/delivery, -/area/hallway/primary/fore) -"bek" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/bot, -/area/hallway/primary/fore) -"bel" = ( -/obj/machinery/door/firedoor, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/door/airlock/glass_mining{ - name = "Mining Office"; - req_access_txt = "48" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"bem" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (WEST)"; - icon_state = "brown"; - dir = 8 - }, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"ben" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/open/floor/plasteel/neutral, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"beo" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plasteel/neutral, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"bep" = ( -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plasteel/neutral, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"beq" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (EAST)"; - icon_state = "brown"; - dir = 4 - }, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"ber" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/mining{ - name = "Mining Dock"; - req_access_txt = "48" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"bes" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/purple/side{ - tag = "icon-purple (WEST)"; - icon_state = "purple"; - dir = 8 - }, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"bet" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/open/floor/plasteel/neutral, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"beu" = ( -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"bev" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"bew" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/neutral, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"bex" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/neutral, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"bey" = ( -/obj/structure/table/reinforced, -/obj/effect/decal/cleanable/dirt, -/obj/item/device/flashlight/lamp, -/turf/open/floor/plasteel/purple/side{ - tag = "icon-purple (EAST)"; - icon_state = "purple"; - dir = 4 - }, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"bez" = ( -/obj/structure/reagent_dispensers/fueltank, -/turf/open/floor/plasteel/delivery, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"beA" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/oil, -/turf/open/floor/plasteel/bot, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"beB" = ( -/obj/structure/cable/white{ - d2 = 2; - icon_state = "0-2"; - tag = "icon-0-2" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"beC" = ( -/obj/structure/chair{ - dir = 1 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning/end{ - tag = "icon-plasteel_warn_end (WEST)"; - icon_state = "plasteel_warn_end"; - dir = 8 - }, -/area/shuttle/mining) -"beD" = ( -/obj/structure/chair{ - dir = 1 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (EAST)"; - icon_state = "plasteel_warn_side"; - dir = 4 - }, -/area/shuttle/mining) -"beE" = ( -/obj/structure/chair{ - dir = 1 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning/end{ - tag = "icon-plasteel_warn_end (EAST)"; - icon_state = "plasteel_warn_end"; - dir = 4 - }, -/area/shuttle/mining) -"beF" = ( -/obj/structure/cable/white{ - tag = "icon-0-2"; - icon_state = "0-2" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/brig) -"beG" = ( -/obj/structure/table/glass, -/obj/machinery/computer/med_data/laptop, -/obj/structure/sign/poster{ - icon_state = "poster3_legit"; - pixel_y = 32; - tag = "icon-poster3_legit" - }, -/turf/open/floor/plasteel/whitered/side{ - dir = 9 - }, -/area/security/brig) -"beH" = ( -/obj/structure/sink{ - pixel_y = 22 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/whitered/side{ - dir = 1 - }, -/area/security/brig) -"beI" = ( -/obj/structure/bed, -/obj/machinery/iv_drip, -/obj/item/weapon/bedsheet/medical, -/obj/machinery/vending/wallmed{ - name = "Emergency NanoMed"; - pixel_x = 0; - pixel_y = 26; - req_access_txt = "0"; - use_power = 0 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/camera{ - c_tag = "Security - Medbay"; - dir = 2; - name = "security camera" - }, -/turf/open/floor/plasteel/whitered/side{ - dir = 1 - }, -/area/security/brig) -"beJ" = ( -/obj/structure/cable/white{ - tag = "icon-0-2"; - icon_state = "0-2" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/security/brig) -"beK" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/red/side{ - dir = 9 - }, -/area/security/brig) -"beL" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/red/side{ - dir = 1 - }, -/area/security/brig) -"beM" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plasteel/red/side{ - dir = 5 - }, -/area/security/brig) -"beN" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/turf/open/floor/plasteel/red/side{ - dir = 9 - }, -/area/security/main) -"beO" = ( -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/red/side{ - dir = 1 - }, -/area/security/main) -"beP" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/airalarm{ - pixel_y = 22 - }, -/turf/open/floor/plasteel/red/side{ - dir = 1 - }, -/area/security/main) -"beQ" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/light{ - dir = 1 - }, -/obj/structure/sign/nanotrasen{ - pixel_y = 32 - }, -/obj/machinery/camera{ - c_tag = "Security - Office Fore"; - dir = 2; - name = "security camera" - }, -/turf/open/floor/plasteel/red/side{ - dir = 1 - }, -/area/security/main) -"beR" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/newscaster/security_unit{ - pixel_y = 32 - }, -/turf/open/floor/plasteel/red/side{ - dir = 1 - }, -/area/security/main) -"beS" = ( -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/turf/open/floor/plasteel/red/side{ - dir = 1 - }, -/area/security/main) -"beT" = ( -/obj/machinery/recharger, -/obj/structure/table/reinforced, -/obj/structure/reagent_dispensers/peppertank{ - pixel_y = 32 - }, -/turf/open/floor/plasteel/red/side{ - dir = 1 - }, -/area/security/main) -"beU" = ( -/obj/structure/chair/office/dark{ - dir = 4 - }, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = 26; - pixel_y = 26 - }, -/obj/effect/landmark/start{ - name = "Security Officer" - }, -/turf/open/floor/plasteel/red/side{ - dir = 5 - }, -/area/security/main) -"beV" = ( -/obj/machinery/computer/security, -/obj/machinery/status_display{ - pixel_x = 32 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/security/main) -"beW" = ( -/turf/closed/wall/r_wall, -/area/security/hos) -"beX" = ( -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor/preopen{ - id = "hosspace"; - name = "HoS Space Blast door" - }, -/turf/open/floor/plating, -/area/security/hos) -"beY" = ( -/obj/structure/cable/white{ - tag = "icon-0-2"; - icon_state = "0-2" - }, -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor/preopen{ - id = "hosspace"; - name = "HoS Space Blast door" - }, -/turf/open/floor/plating, -/area/security/hos) -"beZ" = ( -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor/preopen{ - id = "hosspace"; - name = "HoS Space Blast door" - }, -/turf/open/floor/plating, -/area/security/hos) -"bfa" = ( -/turf/open/floor/engine/n2o, -/area/atmos) -"bfb" = ( -/obj/machinery/camera{ - c_tag = "Atmospherics - n2o Cell"; - name = "atmospherics camera" - }, -/turf/open/floor/engine/n2o, -/area/atmos) -"bfc" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - external_pressure_bound = 0; - frequency = 1441; - id_tag = "n2o_out"; - initialize_directions = 1; - internal_pressure_bound = 4000; - name = "n2o vent"; - on = 1; - pressure_checks = 2; - pump_direction = 0 - }, -/turf/open/floor/engine/n2o, -/area/atmos) -"bfd" = ( -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/structure/window/reinforced{ - dir = 1; - pixel_y = 1 - }, -/obj/machinery/atmospherics/pipe/simple/green/visible, -/obj/machinery/atmospherics/components/binary/pump{ - dir = 4; - name = "N2O to Pure"; - on = 0 - }, -/turf/open/floor/plasteel/escape{ - dir = 9 - }, -/area/atmos) -"bfe" = ( -/obj/machinery/atmospherics/pipe/manifold/yellow/visible{ - dir = 4 - }, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/atmos) -"bff" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 5 - }, -/turf/open/floor/plasteel/neutral, -/area/atmos) -"bfg" = ( -/obj/machinery/atmospherics/components/binary/pump{ - dir = 1; - name = "Pure to Ports"; - on = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/atmos) -"bfh" = ( -/obj/machinery/atmospherics/components/binary/pump{ - dir = 1; - name = "Mix to Ports"; - on = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/atmos) -"bfi" = ( -/obj/machinery/atmospherics/components/binary/pump{ - dir = 1; - name = "Air to Ports"; - on = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/atmos) -"bfj" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/atmos) -"bfk" = ( -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/atmos) -"bfl" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/open/floor/plasteel/neutral, -/area/atmos) -"bfm" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/neutral, -/area/atmos) -"bfn" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/atmos) -"bfo" = ( -/obj/machinery/holopad, -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/bot, -/area/atmos) -"bfp" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/atmos) -"bfq" = ( -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible, -/turf/open/floor/plasteel/neutral, -/area/atmos) -"bfr" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral, -/area/atmos) -"bfs" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/atmos) -"bft" = ( -/obj/structure/window/reinforced{ - dir = 4; - pixel_x = 0 - }, -/obj/structure/window/reinforced, -/obj/machinery/atmospherics/components/trinary/filter{ - dir = 1; - filter_type = "n2"; - name = "nitogren filter"; - on = 1 - }, -/turf/open/floor/plasteel/red/side{ - dir = 6 - }, -/area/atmos) -"bfu" = ( -/obj/machinery/atmospherics/pipe/simple/green/visible{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/atmos) -"bfv" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/green/visible{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plating, -/area/atmos) -"bfw" = ( -/obj/structure/lattice/catwalk, -/obj/machinery/atmospherics/pipe/simple/green/visible{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/space, -/area/atmos) -"bfx" = ( -/obj/machinery/atmospherics/components/unary/outlet_injector/on{ - dir = 8; - frequency = 1441; - id = "n2_in" - }, -/turf/open/floor/engine/n2, -/area/atmos) -"bfy" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/closet/crate{ - icon_state = "crateopen"; - opened = 1 - }, -/obj/item/device/flashlight, -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plasteel/bot, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"bfz" = ( -/obj/structure/sink{ - dir = 8; - icon_state = "sink"; - pixel_x = -12 - }, -/obj/machinery/airalarm{ - dir = 4; - icon_state = "alarm0"; - pixel_x = -22 - }, -/turf/open/floor/plasteel/bot, -/area/hydroponics) -"bfA" = ( -/turf/open/floor/plasteel/greenblue/side{ - tag = "icon-greenblue (NORTHWEST)"; - icon_state = "greenblue"; - dir = 9 - }, -/area/hydroponics) -"bfB" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/greenblue/side{ - tag = "icon-greenblue (NORTH)"; - icon_state = "greenblue"; - dir = 1 - }, -/area/hydroponics) -"bfC" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/greenblue/side{ - tag = "icon-greenblue (NORTH)"; - icon_state = "greenblue"; - dir = 1 - }, -/area/hydroponics) -"bfD" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/greenblue/side{ - tag = "icon-greenblue (NORTH)"; - icon_state = "greenblue"; - dir = 1 - }, -/area/hydroponics) -"bfE" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/greenblue/side{ - tag = "icon-greenblue (NORTHEAST)"; - icon_state = "greenblue"; - dir = 5 - }, -/area/hydroponics) -"bfF" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/delivery, -/area/hydroponics) -"bfG" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass_medical{ - name = "Hydroponics"; - req_access_txt = "35" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/hydroponics) -"bfH" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/sleep{ - name = "Service Hall" - }) -"bfI" = ( -/obj/machinery/holopad, -/obj/machinery/atmospherics/pipe/manifold4w/scrubbers/hidden, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/bot, -/area/crew_quarters/sleep{ - name = "Service Hall" - }) -"bfJ" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/sleep{ - name = "Service Hall" - }) -"bfK" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock{ - name = "Kitchen"; - req_access_txt = "28" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/crew_quarters/kitchen) -"bfL" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/white/side{ - dir = 4 - }, -/area/crew_quarters/kitchen) -"bfM" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/red, -/area/crew_quarters/kitchen) -"bfN" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/crew_quarters/kitchen) -"bfO" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_Toxins = 0 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/red, -/area/crew_quarters/kitchen) -"bfP" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/crew_quarters/kitchen) -"bfQ" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/red, -/area/crew_quarters/kitchen) -"bfR" = ( -/obj/effect/landmark/start{ - name = "Cook" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/crew_quarters/kitchen) -"bfS" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 2; - on = 1 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/red, -/area/crew_quarters/kitchen) -"bfT" = ( -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/red, -/area/crew_quarters/kitchen) -"bfU" = ( -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/white, -/area/crew_quarters/kitchen) -"bfV" = ( -/obj/structure/table/reinforced, -/obj/machinery/door/firedoor, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "kitchenside"; - name = "Kitchen Hall Shutters" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/delivery, -/area/crew_quarters/kitchen) -"bfW" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 1 - }, -/area/hallway/primary/fore) -"bfX" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/sortjunction{ - dir = 1; - icon_state = "pipe-j2s"; - name = "Kitchen Junction"; - sortType = 20 - }, -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/fore) -"bfY" = ( -/obj/structure/chair{ - dir = 4 - }, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (WEST)"; - icon_state = "brown"; - dir = 8 - }, -/area/hallway/primary/fore) -"bfZ" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/fore) -"bga" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/fore) -"bgb" = ( -/obj/effect/decal/cleanable/dirt, -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1 - }, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (EAST)"; - icon_state = "brown"; - dir = 4 - }, -/area/hallway/primary/fore) -"bgc" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/storage/toolbox/mechanical, -/turf/open/floor/plasteel/purple/side{ - tag = "icon-purple (WEST)"; - icon_state = "purple"; - dir = 8 - }, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"bgd" = ( -/obj/structure/chair/office/dark{ - dir = 8 - }, -/turf/open/floor/plasteel/neutral, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"bge" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/neutral, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"bgf" = ( -/obj/machinery/photocopier, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/purple/side{ - tag = "icon-purple (EAST)"; - icon_state = "purple"; - dir = 4 - }, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"bgg" = ( -/obj/effect/decal/cleanable/dirt, -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1 - }, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (WEST)"; - icon_state = "brown"; - dir = 8 - }, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"bgh" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/purple/side, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"bgi" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/brown, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"bgj" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/purple/side, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"bgk" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/requests_console{ - department = "Mining"; - departmentType = 0; - name = "Mining Dock RC"; - pixel_x = 0; - pixel_y = -32 - }, -/obj/machinery/camera{ - c_tag = "Cargo - Mining Dock"; - dir = 1; - name = "cargo camera" - }, -/turf/open/floor/plasteel/brown, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"bgl" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/brown, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"bgm" = ( -/obj/structure/chair/office/dark{ - dir = 4 - }, -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/purple/side, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"bgn" = ( -/obj/structure/table/reinforced, -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/item/weapon/folder/yellow, -/obj/item/device/gps/mining, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (SOUTHEAST)"; - icon_state = "brown"; - dir = 6 - }, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"bgo" = ( -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/structure/cable/white{ - d2 = 2; - icon_state = "0-2"; - tag = "icon-0-2" - }, -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"bgp" = ( -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/structure/cable/white, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"bgq" = ( -/obj/item/clothing/suit/hazardvest{ - desc = "A high-visibility lifejacket complete with whistle and slot for oxygen tanks."; - name = "emergency lifejacket" - }, -/obj/item/clothing/suit/hazardvest{ - desc = "A high-visibility lifejacket complete with whistle and slot for oxygen tanks."; - name = "emergency lifejacket" - }, -/obj/item/clothing/suit/hazardvest{ - desc = "A high-visibility lifejacket complete with whistle and slot for oxygen tanks."; - name = "emergency lifejacket" - }, -/obj/item/clothing/suit/hazardvest{ - desc = "A high-visibility lifejacket complete with whistle and slot for oxygen tanks."; - name = "emergency lifejacket" - }, -/obj/item/clothing/suit/hazardvest{ - desc = "A high-visibility lifejacket complete with whistle and slot for oxygen tanks."; - name = "emergency lifejacket" - }, -/obj/item/weapon/tank/internals/emergency_oxygen/double{ - pixel_x = 3 - }, -/obj/item/weapon/tank/internals/emergency_oxygen/double{ - pixel_x = 3 - }, -/obj/item/weapon/tank/internals/emergency_oxygen/double{ - pixel_x = 3 - }, -/obj/item/weapon/tank/internals/emergency_oxygen/double{ - pixel_x = 3 - }, -/obj/item/weapon/tank/internals/emergency_oxygen/double{ - pixel_x = 3 - }, -/obj/item/clothing/mask/breath{ - pixel_x = -3; - pixel_y = -3 - }, -/obj/item/clothing/mask/breath{ - pixel_x = -3; - pixel_y = -3 - }, -/obj/item/clothing/mask/breath{ - pixel_x = -3; - pixel_y = -3 - }, -/obj/item/clothing/mask/breath{ - pixel_x = -3; - pixel_y = -3 - }, -/obj/item/clothing/mask/breath{ - pixel_x = -3; - pixel_y = -3 - }, -/obj/item/clothing/head/hardhat/orange{ - name = "protective hat"; - pixel_y = 9 - }, -/obj/item/clothing/head/hardhat/orange{ - name = "protective hat"; - pixel_y = 9 - }, -/obj/item/clothing/head/hardhat/orange{ - name = "protective hat"; - pixel_y = 9 - }, -/obj/item/clothing/head/hardhat/orange{ - name = "protective hat"; - pixel_y = 9 - }, -/obj/item/clothing/head/hardhat/orange{ - name = "protective hat"; - pixel_y = 9 - }, -/obj/structure/closet/crate/internals, -/obj/effect/decal/cleanable/dirt, -/obj/item/weapon/pickaxe/emergency, -/obj/item/weapon/pickaxe/emergency, -/turf/open/floor/plasteel/delivery, -/area/shuttle/mining) -"bgr" = ( -/obj/structure/shuttle/engine/heater, -/obj/structure/window/reinforced{ - dir = 4 - }, -/obj/structure/window/reinforced{ - dir = 1 - }, -/obj/structure/window/reinforced{ - dir = 8 - }, -/turf/open/floor/plating/warnplate, -/area/shuttle/mining) -"bgs" = ( -/obj/structure/ore_box, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/delivery, -/area/shuttle/mining) -"bgt" = ( -/obj/structure/cable/white{ - tag = "icon-0-2"; - icon_state = "0-2" - }, -/obj/structure/cable/white, -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/brig) -"bgu" = ( -/obj/structure/table/glass, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/item/clothing/gloves/color/latex, -/obj/item/device/healthanalyzer, -/obj/item/weapon/reagent_containers/spray, -/turf/open/floor/plasteel/whitered/side{ - dir = 8 - }, -/area/security/brig) -"bgv" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/white, -/area/security/brig) -"bgw" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/plasteel/white, -/area/security/brig) -"bgx" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/machinery/door/airlock/glass_medical{ - name = "Infirmary" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/whitered/side{ - dir = 4 - }, -/area/security/brig) -"bgy" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plasteel/red/side{ - dir = 8 - }, -/area/security/brig) -"bgz" = ( -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/neutral, -/area/security/brig) -"bgA" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/red/side{ - dir = 4 - }, -/area/security/brig) -"bgB" = ( -/obj/structure/extinguisher_cabinet{ - pixel_x = -26; - pixel_y = 32 - }, -/obj/machinery/disposal/bin, -/obj/structure/disposalpipe/trunk, -/turf/open/floor/plasteel/bot, -/area/security/main) -"bgC" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/red/corner, -/area/security/main) -"bgD" = ( -/obj/structure/chair/office/dark, -/obj/effect/landmark/start{ - name = "Security Officer" - }, -/turf/open/floor/plasteel/red/side, -/area/security/main) -"bgE" = ( -/turf/open/floor/plasteel/red/corner{ - dir = 8 - }, -/area/security/main) -"bgF" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 2; - on = 1 - }, -/turf/open/floor/plasteel/neutral, -/area/security/main) -"bgG" = ( -/turf/open/floor/plasteel/neutral, -/area/security/main) -"bgH" = ( -/turf/open/floor/plasteel/red/side{ - dir = 4 - }, -/area/security/main) -"bgI" = ( -/obj/machinery/computer/secure_data, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/security/main) -"bgJ" = ( -/obj/structure/bed/dogbed{ - desc = "Seems kind of... fishy."; - name = "Cayenne's bed"; - pixel_y = 5 - }, -/obj/machinery/computer/security/telescreen/entertainment{ - pixel_y = 32 - }, -/obj/machinery/camera{ - c_tag = "Security - Head of Security's Office"; - dir = 2; - name = "security camera" - }, -/turf/open/floor/plasteel/vault{ - dir = 4 - }, -/area/security/hos) -"bgK" = ( -/obj/structure/table/wood, -/obj/machinery/recharger, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/security/hos) -"bgL" = ( -/obj/structure/table/wood, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/item/device/taperecorder{ - pixel_x = 3 - }, -/obj/item/weapon/storage/box/deputy, -/obj/item/device/flashlight/seclite, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/security/hos) -"bgM" = ( -/obj/structure/table/wood, -/obj/item/weapon/storage/secure/briefcase, -/obj/item/weapon/book/manual/wiki/security_space_law, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/security/hos) -"bgN" = ( -/obj/machinery/photocopier, -/obj/machinery/light{ - dir = 1 - }, -/obj/machinery/requests_console{ - announcementConsole = 1; - department = "Head of Security's Desk"; - departmentType = 5; - name = "Head of Security RC"; - pixel_x = 0; - pixel_y = 32 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/security/hos) -"bgO" = ( -/obj/structure/window/reinforced, -/turf/open/space, -/area/space) -"bgP" = ( -/obj/structure/window/reinforced, -/obj/structure/lattice, -/turf/open/space, -/area/space) -"bgQ" = ( -/obj/machinery/light/small{ - dir = 8 - }, -/turf/open/floor/engine/n2o, -/area/atmos) -"bgR" = ( -/obj/machinery/portable_atmospherics/canister/nitrous_oxide{ - valve_open = 1 - }, -/turf/open/floor/engine/n2o, -/area/atmos) -"bgS" = ( -/obj/machinery/air_sensor{ - frequency = 1441; - id_tag = "n2o_sensor" - }, -/turf/open/floor/engine/n2o, -/area/atmos) -"bgT" = ( -/obj/machinery/computer/atmos_control/tank{ - frequency = 1441; - input_tag = "co2_in"; - name = "Carbon Dioxide Supply Control"; - output_tag = "co2_out"; - sensors = list("co2_sensor" = "Tank") - }, -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/green/visible, -/turf/open/floor/plasteel/escape{ - dir = 8 - }, -/area/atmos) -"bgU" = ( -/obj/machinery/atmospherics/pipe/simple/yellow/visible, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning{ - dir = 10 - }, -/area/atmos) -"bgV" = ( -/turf/open/floor/plasteel/warning, -/area/atmos) -"bgW" = ( -/obj/machinery/atmospherics/pipe/simple/yellow/visible, -/obj/machinery/meter, -/turf/open/floor/plasteel/warning, -/area/atmos) -"bgX" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/visible, -/obj/machinery/meter, -/turf/open/floor/plasteel/warning, -/area/atmos) -"bgY" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - dir = 6 - }, -/turf/open/floor/plasteel/warning, -/area/atmos) -"bgZ" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - tag = "icon-intact (EAST)"; - icon_state = "intact"; - dir = 4 - }, -/turf/open/floor/plasteel/warning, -/area/atmos) -"bha" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/visible{ - tag = "icon-manifold (NORTH)"; - name = "scrubbers pipe"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plasteel/warning, -/area/atmos) -"bhb" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/visible{ - tag = "icon-manifold (NORTH)"; - name = "scrubbers pipe"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plasteel/warning/corner{ - dir = 1 - }, -/area/atmos) -"bhc" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral, -/area/atmos) -"bhd" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/warning/corner, -/area/atmos) -"bhe" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/visible, -/obj/machinery/meter, -/turf/open/floor/plasteel/warning, -/area/atmos) -"bhf" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/warning, -/area/atmos) -"bhg" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/warning{ - dir = 6 - }, -/area/atmos) -"bhh" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - tag = "icon-intact (NORTHWEST)"; - icon_state = "intact"; - dir = 9 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/atmos) -"bhi" = ( -/obj/machinery/status_display{ - pixel_x = 32 - }, -/obj/machinery/light/small{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/atmos) -"bhj" = ( -/obj/structure/lattice/catwalk, -/turf/open/space, -/area/atmos) -"bhk" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/reagent_dispensers/fueltank, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"bhl" = ( -/obj/effect/landmark{ - name = "blobstart" - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"bhm" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"bhn" = ( -/obj/machinery/hydroponics/constructable, -/obj/machinery/status_display{ - pixel_x = -32 - }, -/turf/open/floor/plasteel/delivery, -/area/hydroponics) -"bho" = ( -/turf/open/floor/plasteel/greenblue/side{ - tag = "icon-greenblue (WEST)"; - icon_state = "greenblue"; - dir = 8 - }, -/area/hydroponics) -"bhp" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 5 - }, -/turf/open/floor/plasteel/neutral, -/area/hydroponics) -"bhq" = ( -/obj/machinery/hydroponics/constructable, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/delivery, -/area/hydroponics) -"bhr" = ( -/obj/machinery/hydroponics/constructable, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/delivery, -/area/hydroponics) -"bhs" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plasteel/neutral, -/area/hydroponics) -"bht" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/greenblue/side{ - tag = "icon-greenblue (EAST)"; - icon_state = "greenblue"; - dir = 4 - }, -/area/hydroponics) -"bhu" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/bot, -/area/hydroponics) -"bhv" = ( -/obj/structure/table/reinforced, -/obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/door/window/eastleft{ - dir = 8; - name = "Hydroponics Desk"; - req_access_txt = "35" - }, -/obj/item/weapon/storage/bag/plants/portaseeder, -/turf/open/floor/plasteel/delivery, -/area/hydroponics) -"bhw" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/sleep{ - name = "Service Hall" - }) -"bhx" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/sleep{ - name = "Service Hall" - }) -"bhy" = ( -/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/sleep{ - name = "Service Hall" - }) -"bhz" = ( -/obj/structure/table/reinforced, -/obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/door/window/eastleft{ - dir = 4; - name = "Kitchen Desk"; - req_access_txt = "28" - }, -/obj/item/weapon/storage/bag/tray, -/turf/open/floor/plasteel/delivery, -/area/crew_quarters/kitchen) -"bhA" = ( -/obj/structure/sign/poster{ - icon_state = "poster16_legit"; - pixel_y = -32; - tag = "icon-poster16_legit" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/bot, -/area/crew_quarters/kitchen) -"bhB" = ( -/obj/machinery/food_cart, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/delivery, -/area/crew_quarters/kitchen) -"bhC" = ( -/obj/machinery/light, -/obj/machinery/status_display{ - pixel_y = -32 - }, -/obj/machinery/vending/dinnerware, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/open/floor/plasteel/delivery, -/area/crew_quarters/kitchen) -"bhD" = ( -/obj/machinery/icecream_vat, -/obj/structure/extinguisher_cabinet{ - pixel_y = -32 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/delivery, -/area/crew_quarters/kitchen) -"bhE" = ( -/obj/structure/rack, -/obj/machinery/button/door{ - id = "kitchenwindows"; - name = "Kitchen Privacy Control"; - pixel_y = -26; - req_access_txt = "28" - }, -/obj/item/weapon/storage/box/donkpockets, -/obj/item/weapon/storage/box/donkpockets, -/obj/item/clothing/head/chefhat, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/bot, -/area/crew_quarters/kitchen) -"bhF" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/reagent_containers/food/snacks/mint, -/obj/item/weapon/reagent_containers/food/condiment/enzyme{ - pixel_y = 5 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/bot, -/area/crew_quarters/kitchen) -"bhG" = ( -/obj/structure/table/reinforced, -/obj/machinery/reagentgrinder{ - desc = "Used to grind things up into raw materials and liquids."; - pixel_y = 5 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/bot, -/area/crew_quarters/kitchen) -"bhH" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/clipboard, -/obj/item/toy/figure/chef, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/bot, -/area/crew_quarters/kitchen) -"bhI" = ( -/obj/machinery/light, -/obj/machinery/processor, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/end{ - tag = "icon-plasteel_warn_end (NORTH)"; - icon_state = "plasteel_warn_end"; - dir = 1 - }, -/area/crew_quarters/kitchen) -"bhJ" = ( -/obj/structure/table/reinforced, -/obj/item/clothing/suit/apron/chef, -/obj/item/weapon/kitchen/rollingpin, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHWEST)"; - icon_state = "intact"; - dir = 9 - }, -/turf/open/floor/plasteel/bot, -/area/crew_quarters/kitchen) -"bhK" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/reagent_containers/food/condiment/saltshaker{ - pixel_x = -8; - pixel_y = 5 - }, -/obj/item/weapon/reagent_containers/food/condiment/peppermill{ - pixel_x = -8 - }, -/obj/item/weapon/kitchen/knife, -/turf/open/floor/plasteel/delivery, -/area/crew_quarters/kitchen) -"bhL" = ( -/obj/structure/table/reinforced, -/obj/machinery/microwave{ - desc = "Cooks and boils stuff, somehow."; - pixel_x = -3; - pixel_y = 5 - }, -/turf/open/floor/plasteel/bot, -/area/crew_quarters/kitchen) -"bhM" = ( -/obj/structure/table/reinforced, -/obj/machinery/light{ - icon_state = "tube1"; - dir = 4 - }, -/obj/machinery/microwave{ - desc = "Cooks and boils stuff, somehow."; - pixel_x = -3; - pixel_y = 5 - }, -/obj/structure/sign/poster{ - icon_state = "poster3_legit"; - pixel_x = 32; - pixel_y = 0; - tag = "icon-poster3_legit" - }, -/turf/open/floor/plasteel/bot, -/area/crew_quarters/kitchen) -"bhN" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/camera{ - c_tag = "Arrivals Hallway - Aft"; - dir = 8; - name = "hallway camera" - }, -/turf/open/floor/plasteel/brown/corner{ - tag = "icon-browncorner (EAST)"; - icon_state = "browncorner"; - dir = 4 - }, -/area/hallway/primary/fore) -"bhO" = ( -/obj/structure/sign/nanotrasen, -/turf/closed/wall, -/area/hallway/primary/fore) -"bhP" = ( -/obj/structure/table, -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/obj/item/weapon/clipboard, -/obj/item/stack/packageWrap, -/obj/item/weapon/hand_labeler, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (SOUTHWEST)"; - icon_state = "brown"; - dir = 10 - }, -/area/hallway/primary/fore) -"bhQ" = ( -/obj/structure/chair{ - dir = 1 - }, -/turf/open/floor/plasteel/brown, -/area/hallway/primary/fore) -"bhR" = ( -/turf/open/floor/plasteel/brown, -/area/hallway/primary/fore) -"bhS" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/brown, -/area/hallway/primary/fore) -"bhT" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1 - }, -/obj/machinery/light, -/turf/open/floor/plasteel/brown, -/area/hallway/primary/fore) -"bhU" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/brown, -/area/hallway/primary/fore) -"bhV" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/chair{ - dir = 1 - }, -/obj/effect/landmark/start{ - name = "Assistant" - }, -/turf/open/floor/plasteel/brown, -/area/hallway/primary/fore) -"bhW" = ( -/obj/structure/table, -/obj/item/weapon/storage/box/lights/mixed, -/turf/open/floor/plasteel/brown, -/area/hallway/primary/fore) -"bhX" = ( -/obj/structure/table, -/obj/item/weapon/paper_bin, -/obj/item/weapon/pen, -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (SOUTHEAST)"; - icon_state = "brown"; - dir = 6 - }, -/area/hallway/primary/fore) -"bhY" = ( -/obj/structure/table/reinforced, -/obj/machinery/computer/stockexchange, -/obj/machinery/airalarm{ - dir = 4; - locked = 0; - pixel_x = -23; - pixel_y = 0 - }, -/obj/machinery/firealarm{ - dir = 1; - pixel_x = 0; - pixel_y = -24 - }, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (SOUTHWEST)"; - icon_state = "brown"; - dir = 10 - }, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"bhZ" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/loadingarea{ - dir = 4 - }, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"bia" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/bot, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"bib" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/turf/open/floor/plasteel/loadingarea{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; - dir = 8 - }, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"bic" = ( -/obj/structure/table, -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/item/weapon/storage/firstaid/regular, -/obj/machinery/light, -/obj/machinery/power/apc{ - dir = 4; - name = "Mining Dock APC"; - pixel_x = 26; - pixel_y = 0 - }, -/obj/machinery/camera{ - c_tag = "Cargo - Mining Office"; - dir = 8; - name = "cargo camera" - }, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (SOUTHEAST)"; - icon_state = "brown"; - dir = 6 - }, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"bid" = ( -/obj/structure/rack, -/obj/effect/decal/cleanable/dirt, -/obj/item/weapon/storage/toolbox/emergency{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/weapon/storage/toolbox/emergency, -/obj/structure/extinguisher_cabinet{ - pixel_x = -26 - }, -/obj/item/weapon/shovel, -/obj/item/weapon/shovel, -/obj/item/weapon/pickaxe, -/obj/item/weapon/pickaxe, -/turf/open/floor/plasteel/bot, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"bie" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/delivery, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"bif" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/delivery, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"big" = ( -/obj/structure/closet/wardrobe/miner, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/light, -/obj/item/device/radio/intercom{ - dir = 8; - name = "Station Intercom (General)"; - pixel_x = 0; - pixel_y = -26 - }, -/obj/item/weapon/storage/backpack/satchel/explorer, -/turf/open/floor/plasteel/bot, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"bih" = ( -/obj/machinery/disposal/bin, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/light, -/turf/open/floor/plasteel/delivery, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"bii" = ( -/obj/structure/filingcabinet/chestdrawer, -/obj/machinery/airalarm{ - dir = 1; - icon_state = "alarm0"; - pixel_y = -22 - }, -/turf/open/floor/plasteel/delivery, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"bij" = ( -/obj/machinery/computer/security/mining, -/obj/machinery/newscaster{ - pixel_y = -32 - }, -/turf/open/floor/plasteel/bot, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"bik" = ( -/obj/machinery/computer/shuttle/mining, -/turf/open/floor/plasteel/bot, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"bil" = ( -/obj/structure/shuttle/engine/propulsion/burst, -/obj/structure/window/reinforced{ - dir = 1; - layer = 2.9 - }, -/turf/open/floor/plating/warnplate, -/area/shuttle/mining) -"bim" = ( -/obj/structure/cable/white, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/brig) -"bin" = ( -/obj/structure/table/glass, -/obj/item/weapon/storage/firstaid/regular, -/obj/item/weapon/reagent_containers/glass/bottle/epinephrine, -/obj/item/weapon/reagent_containers/glass/bottle/charcoal, -/obj/item/weapon/reagent_containers/syringe, -/turf/open/floor/plasteel/whitered/side{ - dir = 10 - }, -/area/security/brig) -"bio" = ( -/obj/machinery/light/small, -/obj/machinery/holopad, -/turf/open/floor/plasteel/whitered/side, -/area/security/brig) -"bip" = ( -/obj/structure/bed/roller, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = 0; - pixel_y = -26 - }, -/turf/open/floor/plasteel/whitered/side, -/area/security/brig) -"biq" = ( -/obj/structure/cable/white, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/structure/sign/bluecross_2, -/turf/open/floor/plating, -/area/security/brig) -"bir" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/red/side{ - dir = 8 - }, -/area/security/brig) -"bis" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/turf/open/floor/plasteel/neutral, -/area/security/brig) -"bit" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/red/side{ - dir = 4 - }, -/area/security/brig) -"biu" = ( -/obj/structure/cable/white, -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/main) -"biv" = ( -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/red/side{ - dir = 8 - }, -/area/security/main) -"biw" = ( -/obj/structure/chair/office/dark{ - dir = 4 - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/effect/landmark/start{ - name = "Security Officer" - }, -/turf/open/floor/plasteel/red/side{ - dir = 4 - }, -/area/security/main) -"bix" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/folder/red, -/obj/item/clothing/mask/gas/sechailer, -/turf/open/floor/plasteel/red, -/area/security/main) -"biy" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/storage/fancy/donut_box, -/turf/open/floor/plasteel/red, -/area/security/main) -"biz" = ( -/turf/open/floor/plasteel/red/side{ - dir = 8 - }, -/area/security/main) -"biA" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral, -/area/security/main) -"biB" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/security/main) -"biC" = ( -/obj/structure/cable/white{ - tag = "icon-0-2"; - icon_state = "0-2" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor/preopen{ - id = "hosprivacy"; - name = "HoS Privacy Blast door" - }, -/turf/open/floor/plating, -/area/security/hos) -"biD" = ( -/obj/structure/reagent_dispensers/peppertank{ - pixel_x = -32; - pixel_y = 32 - }, -/turf/open/floor/plasteel/grimy, -/area/security/hos) -"biE" = ( -/mob/living/simple_animal/hostile/carp/cayenne{ - color = ""; - desc = "A failed experiment of Nanotrasen to create weaponised carp technology. This less than intimidating carp now serves as an authority figure's pet."; - health = 200; - icon_dead = "magicarp_dead"; - icon_gib = "magicarp_gib"; - icon_living = "magicarp"; - icon_state = "magicarp"; - maxHealth = 200; - melee_damage_lower = 20; - melee_damage_upper = 20; - name = "Lia" - }, -/turf/open/floor/plasteel/grimy, -/area/security/hos) -"biF" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 2; - on = 1 - }, -/turf/open/floor/plasteel/grimy, -/area/security/hos) -"biG" = ( -/turf/open/floor/plasteel/grimy, -/area/security/hos) -"biH" = ( -/obj/machinery/ai_status_display{ - pixel_x = 32; - pixel_y = 32 - }, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = 26; - pixel_y = 58 - }, -/turf/open/floor/plasteel/grimy, -/area/security/hos) -"biI" = ( -/obj/structure/table/wood, -/obj/item/weapon/folder/red, -/obj/item/weapon/pen, -/obj/machinery/button/door{ - id = "hosprivacy"; - name = "Privacy Control"; - pixel_x = 26; - pixel_y = 7; - req_access_txt = "58" - }, -/obj/machinery/button/door{ - id = "hosspace"; - name = "Space Shutters Control"; - pixel_x = 26; - pixel_y = -7; - req_access_txt = "58" - }, -/obj/machinery/light_switch{ - pixel_x = 38 - }, -/obj/machinery/keycard_auth{ - pixel_x = 26; - pixel_y = 26 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/security/hos) -"biJ" = ( -/turf/closed/wall, -/area/security/hos) -"biK" = ( -/obj/structure/dresser, -/obj/machinery/newscaster/security_unit{ - pixel_y = 32 - }, -/turf/open/floor/plasteel/grimy, -/area/security/hos) -"biL" = ( -/obj/structure/bed, -/obj/item/weapon/bedsheet/hos, -/obj/machinery/status_display{ - pixel_y = 32 - }, -/obj/machinery/camera{ - c_tag = "Security - Head of Security's Quarters"; - dir = 2; - name = "security camera" - }, -/turf/open/floor/plasteel/grimy, -/area/security/hos) -"biM" = ( -/obj/structure/table/wood, -/obj/item/weapon/storage/secure/safe/HoS{ - pixel_x = 32 - }, -/obj/item/device/flashlight/lamp, -/turf/open/floor/plasteel/grimy, -/area/security/hos) -"biN" = ( -/obj/structure/window/reinforced{ - dir = 4; - pixel_x = 0 - }, -/turf/open/space, -/area/space) -"biO" = ( -/obj/structure/window/reinforced{ - dir = 1; - layer = 2.9 - }, -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/construction/hallway{ - name = "\improper MiniSat Exterior" - }) -"biP" = ( -/obj/structure/window/reinforced{ - dir = 1; - layer = 2.9 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/construction/hallway{ - name = "\improper MiniSat Exterior" - }) -"biQ" = ( -/obj/structure/window/reinforced{ - dir = 1; - layer = 2.9 - }, -/obj/structure/window/reinforced{ - dir = 4; - pixel_x = 0 - }, -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/construction/hallway{ - name = "\improper MiniSat Exterior" - }) -"biR" = ( -/obj/structure/window/reinforced{ - dir = 8 - }, -/turf/open/space, -/area/space) -"biS" = ( -/obj/machinery/atmospherics/components/unary/outlet_injector/on{ - dir = 4; - frequency = 1441; - id = "n2o_in"; - pixel_y = 1 - }, -/turf/open/floor/engine/n2o, -/area/atmos) -"biT" = ( -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/structure/window/reinforced, -/obj/machinery/atmospherics/components/trinary/filter{ - dir = 2; - filter_type = "n2o"; - name = "n2o filter"; - on = 1 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/escape{ - dir = 10 - }, -/area/atmos) -"biU" = ( -/obj/machinery/atmospherics/pipe/simple/yellow/visible{ - tag = "icon-intact (NORTHEAST)"; - icon_state = "intact"; - dir = 5 - }, -/turf/open/floor/plasteel/bot, -/area/atmos) -"biV" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/manifold/yellow/visible{ - dir = 1 - }, -/turf/open/floor/plasteel/bot, -/area/atmos) -"biW" = ( -/obj/machinery/atmospherics/pipe/simple/yellow/visible{ - tag = "icon-intact (NORTHWEST)"; - icon_state = "intact"; - dir = 9 - }, -/turf/open/floor/plasteel/bot, -/area/atmos) -"biX" = ( -/obj/machinery/atmospherics/pipe/simple/yellow/visible, -/turf/open/floor/plasteel/delivery, -/area/atmos) -"biY" = ( -/obj/machinery/atmospherics/pipe/manifold/cyan/visible{ - dir = 8; - initialize_directions = 11 - }, -/turf/open/floor/plasteel/bot, -/area/atmos) -"biZ" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/visible{ - dir = 4 - }, -/turf/open/floor/plasteel/bot, -/area/atmos) -"bja" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible, -/obj/machinery/atmospherics/pipe/simple/cyan/visible{ - dir = 4 - }, -/turf/open/floor/plasteel/caution{ - tag = "icon-caution (NORTHWEST)"; - icon_state = "caution"; - dir = 9 - }, -/area/atmos) -"bjb" = ( -/obj/machinery/atmospherics/pipe/manifold/cyan/visible{ - dir = 1; - initialize_directions = 11 - }, -/turf/open/floor/plasteel/caution{ - dir = 1 - }, -/area/atmos) -"bjc" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible, -/obj/machinery/atmospherics/pipe/simple/cyan/visible{ - dir = 4 - }, -/turf/open/floor/plasteel/caution{ - dir = 1 - }, -/area/atmos) -"bjd" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible, -/obj/machinery/atmospherics/pipe/simple/cyan/visible{ - dir = 4 - }, -/turf/open/floor/plasteel/caution{ - tag = "icon-caution (NORTHEAST)"; - icon_state = "caution"; - dir = 5 - }, -/area/atmos) -"bje" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - tag = "icon-intact (NORTH)"; - icon_state = "intact"; - dir = 1 - }, -/obj/machinery/atmospherics/pipe/simple/cyan/visible{ - dir = 4 - }, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/atmos) -"bjf" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/cyan/visible{ - dir = 10; - initialize_directions = 10 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral, -/area/atmos) -"bjg" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/atmos) -"bjh" = ( -/obj/structure/table/reinforced, -/obj/item/stack/sheet/glass{ - amount = 50 - }, -/obj/item/stack/rods{ - amount = 50 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHEAST)"; - icon_state = "intact"; - dir = 6 - }, -/turf/open/floor/plasteel/bot, -/area/atmos) -"bji" = ( -/obj/structure/table/reinforced, -/obj/item/stack/sheet/metal{ - amount = 50 - }, -/obj/item/stack/sheet/metal{ - amount = 50 - }, -/obj/item/weapon/grenade/chem_grenade/metalfoam, -/obj/item/weapon/grenade/chem_grenade/metalfoam, -/obj/machinery/newscaster{ - pixel_y = -32 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHWEST)"; - icon_state = "intact"; - dir = 9 - }, -/turf/open/floor/plasteel/bot, -/area/atmos) -"bjj" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/paper_bin, -/obj/structure/sign/poster{ - icon_state = "poster16_legit"; - pixel_y = -32; - tag = "icon-poster16_legit" - }, -/turf/open/floor/plasteel/bot, -/area/atmos) -"bjk" = ( -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/atmos) -"bjl" = ( -/obj/machinery/atmospherics/pipe/simple/yellow/visible{ - tag = "icon-intact (NORTHEAST)"; - icon_state = "intact"; - dir = 5 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/atmos) -"bjm" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/yellow/visible{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plating, -/area/atmos) -"bjn" = ( -/obj/structure/lattice/catwalk, -/obj/machinery/atmospherics/pipe/simple/yellow/visible{ - tag = "icon-intact (NORTHWEST)"; - icon_state = "intact"; - dir = 9 - }, -/turf/open/space, -/area/space) -"bjo" = ( -/obj/structure/rack, -/obj/effect/landmark/costume, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 2; - name = "2maintenance loot spawner" - }, -/turf/open/floor/plasteel/bot, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"bjp" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"bjq" = ( -/obj/machinery/hydroponics/constructable, -/obj/machinery/light{ - dir = 8 - }, -/turf/open/floor/plasteel/delivery, -/area/hydroponics) -"bjr" = ( -/obj/effect/landmark/start{ - name = "Botanist" - }, -/turf/open/floor/plasteel/neutral, -/area/hydroponics) -"bjs" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral, -/area/hydroponics) -"bjt" = ( -/turf/open/floor/plasteel/neutral, -/area/hydroponics) -"bju" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/turf/open/floor/plasteel/neutral, -/area/hydroponics) -"bjv" = ( -/turf/open/floor/plasteel/greenblue/side{ - tag = "icon-greenblue (EAST)"; - icon_state = "greenblue"; - dir = 4 - }, -/area/hydroponics) -"bjw" = ( -/obj/machinery/light{ - icon_state = "tube1"; - dir = 4 - }, -/obj/machinery/light_switch{ - pixel_x = 26; - pixel_y = 8 - }, -/obj/machinery/plantgenes, -/obj/machinery/camera{ - c_tag = "Hydroponics"; - dir = 8; - name = "service camera" - }, -/turf/open/floor/plasteel/delivery, -/area/hydroponics) -"bjx" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/crew_quarters/sleep{ - name = "Service Hall" - }) -"bjy" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass{ - name = "Service Foyer" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/crew_quarters/sleep{ - name = "Service Hall" - }) -"bjz" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plating, -/area/crew_quarters/sleep{ - name = "Service Hall" - }) -"bjA" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor/preopen{ - id = "kitchenwindows"; - name = "Kitchen Privacy Shutters" - }, -/turf/open/floor/plating, -/area/crew_quarters/kitchen) -"bjB" = ( -/obj/structure/sign/directions/evac{ - pixel_y = -8 - }, -/obj/structure/sign/directions/science{ - dir = 8 - }, -/obj/structure/sign/directions/engineering{ - dir = 8; - pixel_y = 8 - }, -/turf/closed/wall, -/area/crew_quarters/kitchen) -"bjC" = ( -/obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/door/airlock/glass{ - name = "Fore Primary Hallway" - }, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/hallway/primary/fore) -"bjD" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass{ - name = "Fore Primary Hallway" - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/hallway/primary/fore) -"bjE" = ( -/obj/structure/sign/directions/security{ - dir = 4; - pixel_y = 8 - }, -/obj/structure/sign/directions/engineering{ - desc = "A direction sign, pointing out which way the Supply department is."; - dir = 4; - icon_state = "direction_supply"; - name = "supply department"; - tag = "icon-direction_supply" - }, -/obj/structure/sign/directions/medical{ - pixel_y = -8 - }, -/turf/closed/wall, -/area/hallway/primary/fore) -"bjF" = ( -/obj/machinery/door/firedoor, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/hallway/primary/fore) -"bjG" = ( -/obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/hallway/primary/fore) -"bjH" = ( -/obj/machinery/status_display, -/turf/closed/wall, -/area/hallway/primary/fore) -"bjI" = ( -/obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/hallway/primary/fore) -"bjJ" = ( -/obj/machinery/mineral/ore_redemption, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/delivery, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"bjK" = ( -/obj/structure/plasticflaps{ - opacity = 1 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/delivery, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"bjL" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/door/airlock/mining{ - name = "Mining Dock"; - req_access_txt = "48" - }, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (EAST)"; - icon_state = "plasteel_warn_side"; - dir = 4 - }, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"bjM" = ( -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"bjN" = ( -/obj/structure/cable/white{ - tag = "icon-0-2"; - icon_state = "0-2" - }, -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/transfer) -"bjO" = ( -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/transfer) -"bjP" = ( -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/structure/cable/white{ - tag = "icon-0-2"; - icon_state = "0-2" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/transfer) -"bjQ" = ( -/turf/closed/wall/r_wall, -/area/security/transfer) -"bjR" = ( -/obj/machinery/light{ - dir = 8 - }, -/obj/machinery/airalarm{ - dir = 4; - locked = 0; - pixel_x = -23; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/plasteel/red/side{ - dir = 8 - }, -/area/security/brig) -"bjS" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/security/brig) -"bjT" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/red/side{ - dir = 4 - }, -/area/security/brig) -"bjU" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/closed/wall/r_wall, -/area/security/main) -"bjV" = ( -/obj/machinery/power/apc{ - dir = 8; - name = "Security Office APC"; - pixel_x = -26; - pixel_y = 0 - }, -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/red/side{ - dir = 8 - }, -/area/security/main) -"bjW" = ( -/obj/structure/chair/office/dark{ - dir = 4 - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/effect/landmark/start{ - name = "Security Officer" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/red/side{ - dir = 4 - }, -/area/security/main) -"bjX" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/restraints/handcuffs, -/obj/item/device/assembly/flash/handheld, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/red, -/area/security/main) -"bjY" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/red/side{ - dir = 9 - }, -/area/security/main) -"bjZ" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/red/corner{ - dir = 1 - }, -/area/security/main) -"bka" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/folder/red{ - pixel_x = -2; - pixel_y = -2 - }, -/obj/item/weapon/folder/blue{ - pixel_x = 2; - pixel_y = 2 - }, -/obj/item/weapon/lighter, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/open/floor/plasteel/red/side{ - dir = 9 - }, -/area/security/main) -"bkb" = ( -/obj/machinery/photocopier, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/red/side{ - dir = 5 - }, -/area/security/main) -"bkc" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plasteel/red/side{ - dir = 4 - }, -/area/security/main) -"bkd" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/security/main) -"bke" = ( -/obj/structure/cable/white, -/obj/structure/cable/white{ - tag = "icon-0-2"; - icon_state = "0-2" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor/preopen{ - id = "hosprivacy"; - name = "HoS Privacy Blast door" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/security/hos) -"bkf" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/grimy, -/area/security/hos) -"bkg" = ( -/obj/structure/chair/office/dark{ - dir = 4 - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/grimy, -/area/security/hos) -"bkh" = ( -/obj/structure/table/wood, -/obj/item/device/flashlight/lamp, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/open/floor/plasteel/grimy, -/area/security/hos) -"bki" = ( -/obj/machinery/computer/secure_data, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/grimy, -/area/security/hos) -"bkj" = ( -/obj/machinery/computer/card/minor/hos, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/security/hos) -"bkk" = ( -/obj/structure/cable/white{ - tag = "icon-0-2"; - icon_state = "0-2" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/tinted/fulltile, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/security/hos) -"bkl" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/plasteel/grimy, -/area/security/hos) -"bkm" = ( -/obj/machinery/computer/prisoner, -/turf/open/floor/plasteel/grimy, -/area/security/hos) -"bkn" = ( -/obj/structure/cable/white{ - tag = "icon-0-2"; - icon_state = "0-2" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor/preopen{ - id = "hosroom"; - name = "HoS Room Blast door" - }, -/turf/open/floor/plating, -/area/security/hos) -"bko" = ( -/obj/structure/window/reinforced, -/obj/structure/window/reinforced{ - dir = 4; - pixel_x = 0 - }, -/turf/open/space, -/area/space) -"bkp" = ( -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 2; - on = 1; - scrub_N2O = 1; - scrub_Toxins = 1 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/construction/hallway{ - name = "\improper MiniSat Exterior" - }) -"bkq" = ( -/obj/structure/chair{ - dir = 1 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/construction/hallway{ - name = "\improper MiniSat Exterior" - }) -"bkr" = ( -/obj/machinery/holopad, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/construction/hallway{ - name = "\improper MiniSat Exterior" - }) -"bks" = ( -/obj/structure/window/reinforced{ - dir = 4; - pixel_x = 0 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 2; - on = 1 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/construction/hallway{ - name = "\improper MiniSat Exterior" - }) -"bkt" = ( -/obj/structure/window/reinforced, -/obj/structure/window/reinforced{ - dir = 8 - }, -/turf/open/space, -/area/space) -"bku" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/manifold/cyan/visible{ - dir = 8; - initialize_directions = 11 - }, -/obj/machinery/status_display{ - pixel_x = -32 - }, -/turf/open/floor/plating, -/area/atmos) -"bkv" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/green/visible, -/obj/machinery/atmospherics/pipe/simple/cyan/visible{ - dir = 4 - }, -/turf/open/floor/plating, -/area/atmos) -"bkw" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/yellow/visible, -/obj/machinery/atmospherics/pipe/simple/cyan/visible{ - dir = 4 - }, -/turf/open/floor/plating, -/area/atmos) -"bkx" = ( -/obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/simple/yellow/visible, -/obj/machinery/atmospherics/pipe/simple/cyan/visible{ - dir = 4 - }, -/obj/machinery/door/airlock/glass_atmos{ - name = "Distribution Loop"; - req_access_txt = "24" - }, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (EAST)"; - icon_state = "plasteel_warn_side"; - dir = 4 - }, -/area/atmos) -"bky" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/cyan/visible{ - tag = "icon-intact (NORTHWEST)"; - icon_state = "intact"; - dir = 9 - }, -/turf/open/floor/plating, -/area/atmos) -"bkz" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/storage/toolbox/mechanical, -/obj/item/device/flashlight, -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible, -/turf/open/floor/plasteel/bot, -/area/atmos) -"bkA" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - tag = "icon-intact (NORTH)"; - icon_state = "intact"; - dir = 1 - }, -/turf/open/floor/plasteel/neutral, -/area/atmos) -"bkB" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/clipboard, -/obj/effect/decal/cleanable/dirt, -/obj/item/toy/figure/atmos, -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - tag = "icon-intact (NORTH)"; - icon_state = "intact"; - dir = 1 - }, -/turf/open/floor/plasteel/bot, -/area/atmos) -"bkC" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - tag = "icon-intact (NORTH)"; - icon_state = "intact"; - dir = 1 - }, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/atmos) -"bkD" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/cyan/visible{ - tag = "icon-intact (NORTH)"; - icon_state = "intact"; - dir = 1 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral, -/area/atmos) -"bkE" = ( -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = 28; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/atmos) -"bkF" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall/r_wall, -/area/atmos) -"bkG" = ( -/obj/machinery/hydroponics/constructable, -/obj/structure/sign/botany{ - pixel_x = -32 - }, -/turf/open/floor/plasteel/delivery, -/area/hydroponics) -"bkH" = ( -/obj/machinery/biogenerator, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/bot, -/area/hydroponics) -"bkI" = ( -/obj/machinery/seed_extractor, -/turf/open/floor/plasteel/bot, -/area/hydroponics) -"bkJ" = ( -/obj/machinery/holopad, -/turf/open/floor/plasteel/bot, -/area/hydroponics) -"bkK" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/paper_bin, -/obj/item/weapon/pen, -/turf/open/floor/plasteel/bot, -/area/hydroponics) -"bkL" = ( -/obj/machinery/status_display, -/turf/closed/wall, -/area/hydroponics) -"bkM" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHEAST)"; - icon_state = "intact"; - dir = 6 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 1 - }, -/area/hallway/primary/central) -"bkN" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHWEST)"; - icon_state = "intact"; - dir = 9 - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 1 - }, -/area/hallway/primary/central) -"bkO" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral/corner{ - dir = 1 - }, -/area/hallway/primary/central) -"bkP" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 1 - }, -/area/hallway/primary/central) -"bkQ" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/camera{ - c_tag = "Central Hallway - Fore Port"; - dir = 2; - name = "hallway camera" - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 1 - }, -/area/hallway/primary/central) -"bkR" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 1 - }, -/area/hallway/primary/central) -"bkS" = ( -/obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/hallway/primary/central) -"bkT" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral/corner{ - dir = 1 - }, -/area/hallway/primary/central) -"bkU" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral/side{ - dir = 1 - }, -/area/hallway/primary/central) -"bkV" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/open/floor/plasteel/brown/corner{ - tag = "icon-browncorner (EAST)"; - icon_state = "browncorner"; - dir = 4 - }, -/area/hallway/primary/central) -"bkW" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/brown/corner{ - tag = "icon-browncorner (EAST)"; - icon_state = "browncorner"; - dir = 4 - }, -/area/hallway/primary/central) -"bkX" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/brown/corner{ - tag = "icon-browncorner (EAST)"; - icon_state = "browncorner"; - dir = 4 - }, -/area/hallway/primary/central) -"bkY" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plasteel/brown/corner{ - tag = "icon-browncorner (EAST)"; - icon_state = "browncorner"; - dir = 4 - }, -/area/hallway/primary/central) -"bkZ" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/camera{ - c_tag = "Central Hallway - Fore Starboard"; - dir = 2; - name = "hallway camera" - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 4 - }, -/area/hallway/primary/central) -"bla" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/extinguisher_cabinet{ - pixel_y = 32 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 4 - }, -/area/hallway/primary/central) -"blb" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 4 - }, -/area/hallway/primary/central) -"blc" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/purple/corner{ - tag = "icon-purplecorner (EAST)"; - icon_state = "purplecorner"; - dir = 4 - }, -/area/hallway/primary/central) -"bld" = ( -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 4 - }, -/area/hallway/primary/central) -"ble" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 4 - }, -/area/hallway/primary/central) -"blf" = ( -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Maintenance Hatch"; - req_access_txt = "12" - }, -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"blg" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (WEST)"; - icon_state = "brown"; - dir = 8 - }, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"blh" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHWEST)"; - icon_state = "intact"; - dir = 9 - }, -/turf/open/floor/plasteel/delivery, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"bli" = ( -/turf/open/floor/plating, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"blj" = ( -/obj/effect/decal/cleanable/cobweb/cobweb2, -/obj/effect/decal/cleanable/dirt, -/obj/structure/reagent_dispensers/watertank, -/turf/open/floor/plating, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"blk" = ( -/obj/structure/cable/white, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/transfer) -"bll" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/turf/open/floor/plasteel/warning{ - dir = 9 - }, -/area/security/transfer) -"blm" = ( -/obj/structure/filingcabinet/chestdrawer, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/red/side{ - dir = 9 - }, -/area/security/transfer) -"bln" = ( -/obj/machinery/computer/shuttle/labor, -/obj/machinery/status_display{ - pixel_x = 0; - pixel_y = 32 - }, -/turf/open/floor/plasteel/red/side{ - dir = 5 - }, -/area/security/transfer) -"blo" = ( -/obj/machinery/computer/security{ - name = "Labor Camp Monitoring"; - network = list("Labor") - }, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = 0; - pixel_y = 26 - }, -/turf/open/floor/plasteel/red, -/area/security/transfer) -"blp" = ( -/obj/machinery/computer/secure_data, -/obj/machinery/ai_status_display{ - pixel_y = 32 - }, -/obj/machinery/camera{ - c_tag = "Security - Transfer Centre"; - dir = 2; - name = "security camera" - }, -/turf/open/floor/plasteel/red/side{ - dir = 9 - }, -/area/security/transfer) -"blq" = ( -/obj/structure/table/reinforced, -/obj/machinery/recharger, -/turf/open/floor/plasteel/red/side{ - dir = 5 - }, -/area/security/transfer) -"blr" = ( -/obj/structure/cable/white{ - tag = "icon-0-2"; - icon_state = "0-2" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/transfer) -"bls" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/effect/landmark{ - name = "lightsout" - }, -/turf/open/floor/plasteel/neutral, -/area/security/brig) -"blt" = ( -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/red/corner{ - dir = 1 - }, -/area/security/main) -"blu" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/red/side{ - dir = 4 - }, -/area/security/main) -"blv" = ( -/turf/open/floor/plasteel/red, -/area/security/main) -"blw" = ( -/obj/machinery/holopad, -/turf/open/floor/plasteel/bot, -/area/security/main) -"blx" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/clipboard, -/obj/item/clothing/tie/armband/deputy, -/obj/item/clothing/tie/armband/deputy, -/obj/item/clothing/tie/armband/deputy, -/obj/item/clothing/tie/armband/deputy, -/obj/item/clothing/tie/armband/deputy, -/obj/item/weapon/reagent_containers/food/snacks/donut/jelly/cherryjelly, -/turf/open/floor/plasteel/red/side{ - dir = 8 - }, -/area/security/main) -"bly" = ( -/obj/structure/chair/comfy/black{ - dir = 8 - }, -/turf/open/floor/plasteel/red/side{ - dir = 4 - }, -/area/security/main) -"blz" = ( -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/red/side{ - dir = 4 - }, -/area/security/main) -"blA" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/security/main) -"blB" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/machinery/door/airlock/command{ - name = "Head of Security's Office"; - req_access = null; - req_access_txt = "58" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/security/hos) -"blC" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/grimy, -/area/security/hos) -"blD" = ( -/obj/machinery/holopad, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/grimy, -/area/security/hos) -"blE" = ( -/obj/structure/table/wood, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/item/weapon/folder/red, -/obj/item/weapon/stamp/hos, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/grimy, -/area/security/hos) -"blF" = ( -/obj/structure/chair/comfy/black{ - dir = 8 - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/effect/landmark/start{ - name = "Head of Security" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/grimy, -/area/security/hos) -"blG" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/grimy, -/area/security/hos) -"blH" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/security/hos) -"blI" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/machinery/door/airlock/command{ - name = "Head of Security's Quarters"; - req_access = null; - req_access_txt = "58" - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/security/hos) -"blJ" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/grimy, -/area/security/hos) -"blK" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/effect/landmark/start{ - name = "Head of Security" - }, -/turf/open/floor/plasteel/grimy, -/area/security/hos) -"blL" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/computer/crew, -/turf/open/floor/plasteel/grimy, -/area/security/hos) -"blM" = ( -/obj/structure/cable/white{ - tag = "icon-0-2"; - icon_state = "0-2" - }, -/obj/structure/cable/white, -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor/preopen{ - id = "hosroom"; - name = "HoS Room Blast door" - }, -/turf/open/floor/plating, -/area/security/hos) -"blN" = ( -/obj/structure/window/reinforced{ - dir = 4; - pixel_x = 0 - }, -/obj/structure/lattice, -/turf/open/space, -/area/space) -"blO" = ( -/obj/structure/window/reinforced{ - dir = 1; - layer = 2.9 - }, -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/machinery/door/window/southleft, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/construction/hallway{ - name = "\improper MiniSat Exterior" - }) -"blP" = ( -/obj/structure/window/reinforced, -/obj/structure/window/reinforced{ - dir = 1; - layer = 2.9 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/construction/hallway{ - name = "\improper MiniSat Exterior" - }) -"blQ" = ( -/obj/structure/window/reinforced, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/construction/hallway{ - name = "\improper MiniSat Exterior" - }) -"blR" = ( -/obj/structure/window/reinforced, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/construction/hallway{ - name = "\improper MiniSat Exterior" - }) -"blS" = ( -/obj/structure/window/reinforced, -/obj/machinery/camera{ - c_tag = "AI Satellite - Fore"; - dir = 1; - name = "ai camera"; - network = list("Sat"); - pixel_x = 0; - pixel_y = 0; - start_active = 1 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/construction/hallway{ - name = "\improper MiniSat Exterior" - }) -"blT" = ( -/obj/structure/window/reinforced, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/construction/hallway{ - name = "\improper MiniSat Exterior" - }) -"blU" = ( -/obj/structure/window/reinforced{ - dir = 1; - layer = 2.9 - }, -/obj/structure/window/reinforced{ - dir = 4; - pixel_x = 0 - }, -/obj/machinery/door/window/southright, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/construction/hallway{ - name = "\improper MiniSat Exterior" - }) -"blV" = ( -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/structure/lattice, -/turf/open/space, -/area/space) -"blW" = ( -/turf/open/floor/engine/vacuum, -/area/atmos) -"blX" = ( -/obj/machinery/atmospherics/components/unary/outlet_injector/on{ - dir = 4; - frequency = 1441; - id = "mix_in"; - pixel_y = 1 - }, -/turf/open/floor/engine/vacuum, -/area/atmos) -"blY" = ( -/obj/machinery/atmospherics/pipe/simple/green/visible{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/cyan/visible, -/turf/open/floor/plasteel/green/side{ - dir = 9 - }, -/area/atmos) -"blZ" = ( -/obj/machinery/atmospherics/pipe/simple/green/visible, -/obj/machinery/atmospherics/components/binary/pump{ - dir = 8; - name = "Unfiltered & Air to Mix"; - on = 1 - }, -/turf/open/floor/plasteel/neutral, -/area/atmos) -"bma" = ( -/obj/machinery/atmospherics/pipe/simple/green/visible{ - tag = "icon-intact (SOUTHWEST)"; - icon_state = "intact"; - dir = 10 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/neutral, -/area/atmos) -"bmb" = ( -/obj/machinery/atmospherics/components/binary/pump{ - dir = 2; - name = "Pure to Mix"; - on = 0 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/neutral, -/area/atmos) -"bmc" = ( -/obj/machinery/atmospherics/pipe/simple/yellow/visible{ - dir = 6 - }, -/turf/open/floor/plasteel/caution{ - dir = 1 - }, -/area/atmos) -"bmd" = ( -/obj/machinery/atmospherics/pipe/simple/yellow/visible{ - tag = "icon-intact (NORTHWEST)"; - icon_state = "intact"; - dir = 9 - }, -/turf/open/floor/plasteel/caution{ - dir = 1 - }, -/area/atmos) -"bme" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - dir = 6 - }, -/turf/open/floor/plasteel/caution{ - dir = 1 - }, -/area/atmos) -"bmf" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - dir = 4 - }, -/turf/open/floor/plating, -/area/atmos) -"bmg" = ( -/obj/item/clothing/gloves/color/black, -/obj/structure/table/reinforced, -/obj/item/clothing/glasses/meson/engine/tray, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - dir = 9 - }, -/turf/open/floor/plasteel/bot, -/area/atmos) -"bmh" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - tag = "icon-intact (NORTH)"; - icon_state = "intact"; - dir = 1 - }, -/obj/effect/landmark/start{ - name = "Atmospheric Technician" - }, -/turf/open/floor/plasteel/neutral, -/area/atmos) -"bmi" = ( -/obj/item/weapon/weldingtool, -/obj/item/clothing/head/welding, -/obj/structure/table/reinforced, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - tag = "icon-intact (NORTH)"; - icon_state = "intact"; - dir = 1 - }, -/turf/open/floor/plasteel/bot, -/area/atmos) -"bmj" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/cyan/visible{ - tag = "icon-intact (NORTHEAST)"; - icon_state = "intact"; - dir = 5 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral, -/area/atmos) -"bmk" = ( -/obj/structure/sign/poster{ - icon_state = "poster17_legit"; - pixel_x = 32; - pixel_y = 0; - tag = "icon-poster17_legit" - }, -/obj/machinery/atmospherics/components/binary/pump{ - dir = 4; - name = "Air to External Air Ports"; - on = 1 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/atmos) -"bml" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/closed/wall/r_wall, -/area/atmos) -"bmm" = ( -/obj/machinery/space_heater, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/bot, -/area/atmos) -"bmn" = ( -/obj/machinery/portable_atmospherics/canister/nitrous_oxide, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/bot, -/area/atmos) -"bmo" = ( -/obj/machinery/portable_atmospherics/canister/nitrogen, -/obj/machinery/light{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/bot, -/area/atmos) -"bmp" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/portable_atmospherics/canister/oxygen, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/bot, -/area/atmos) -"bmq" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/portable_atmospherics/canister/air, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/bot, -/area/atmos) -"bmr" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHWEST)"; - icon_state = "intact"; - dir = 10 - }, -/turf/closed/wall/r_wall, -/area/atmos) -"bms" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/turf/open/floor/plasteel/yellow/corner{ - dir = 1 - }, -/area/hallway/primary/port) -"bmt" = ( -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/plasteel/yellow/side{ - dir = 1 - }, -/area/hallway/primary/port) -"bmu" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/yellow/corner{ - dir = 4 - }, -/area/hallway/primary/port) -"bmv" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Maintenance Hatch"; - req_access_txt = "12" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"bmw" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/delivery, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"bmx" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"bmy" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"bmz" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 10; - heat_capacity = 1e+006 - }, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"bmA" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/bot, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"bmB" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/junction{ - dir = 8; - icon_state = "pipe-j2" - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"bmC" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"bmD" = ( -/obj/machinery/hydroponics/constructable, -/obj/machinery/newscaster{ - pixel_x = -32 - }, -/turf/open/floor/plasteel/delivery, -/area/hydroponics) -"bmE" = ( -/obj/machinery/seed_extractor, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/bot, -/area/hydroponics) -"bmF" = ( -/obj/machinery/biogenerator, -/turf/open/floor/plasteel/bot, -/area/hydroponics) -"bmG" = ( -/obj/structure/chair/office/dark{ - dir = 4 - }, -/obj/effect/landmark/start{ - name = "Botanist" - }, -/turf/open/floor/plasteel/bot, -/area/hydroponics) -"bmH" = ( -/obj/structure/table/reinforced, -/obj/machinery/door/firedoor, -/obj/item/weapon/folder, -/obj/item/weapon/pen, -/obj/machinery/door/window/eastleft{ - dir = 8; - name = "Hydroponics Desk"; - req_access_txt = "35" - }, -/obj/item/weapon/reagent_containers/food/snacks/grown/apple, -/turf/open/floor/plasteel/delivery, -/area/hydroponics) -"bmI" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 1 - }, -/area/hallway/primary/central) -"bmJ" = ( -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_Toxins = 0 - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/obj/machinery/navbeacon{ - codes_txt = "patrol;next_patrol=hall3"; - location = "hall2" - }, -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/central) -"bmK" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/junction{ - dir = 4; - icon_state = "pipe-j2" - }, -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/central) -"bmL" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/central) -"bmM" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/central) -"bmN" = ( -/obj/machinery/door/firedoor, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/hallway/primary/central) -"bmO" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 8 - }, -/area/hallway/primary/central) -"bmP" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel{ - icon_state = "L1" - }, -/area/hallway/primary/central) -"bmQ" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel{ - icon_state = "L3" - }, -/area/hallway/primary/central) -"bmR" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/navbeacon{ - codes_txt = "patrol;next_patrol=hall2"; - location = "hall1" - }, -/turf/open/floor/plasteel{ - icon_state = "L5" - }, -/area/hallway/primary/central) -"bmS" = ( -/obj/effect/landmark{ - name = "lightsout" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 2; - on = 1; - scrub_N2O = 1; - scrub_Toxins = 1 - }, -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/obj/machinery/navbeacon{ - codes_txt = "patrol;next_patrol=hall15"; - location = "hall14" - }, -/turf/open/floor/plasteel{ - icon_state = "L7" - }, -/area/hallway/primary/central) -"bmT" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel{ - icon_state = "L9" - }, -/area/hallway/primary/central) -"bmU" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel{ - icon_state = "L11" - }, -/area/hallway/primary/central) -"bmV" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel{ - desc = ""; - icon_state = "L13"; - name = "floor" - }, -/area/hallway/primary/central) -"bmW" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/hallway/primary/central) -"bmX" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/central) -"bmY" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/central) -"bmZ" = ( -/obj/machinery/door/firedoor, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/warning/side, -/area/hallway/primary/central) -"bna" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/central) -"bnb" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHEAST)"; - icon_state = "intact"; - dir = 6 - }, -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/central) -"bnc" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_Toxins = 0 - }, -/obj/machinery/navbeacon{ - codes_txt = "patrol;next_patrol=hall14"; - location = "hall13" - }, -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/central) -"bnd" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral/corner{ - dir = 4 - }, -/area/hallway/primary/central) -"bne" = ( -/turf/closed/wall/mineral/titanium, -/area/shuttle/labor) -"bnf" = ( -/obj/structure/grille, -/obj/structure/window/shuttle, -/turf/open/floor/plating, -/area/shuttle/labor) -"bng" = ( -/obj/machinery/light{ - dir = 8 - }, -/obj/structure/sign/electricshock{ - pixel_x = -32 - }, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/security/transfer) -"bnh" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/red/side{ - dir = 8 - }, -/area/security/transfer) -"bni" = ( -/turf/open/floor/plasteel/warning, -/area/security/transfer) -"bnj" = ( -/obj/structure/chair/office/dark{ - dir = 1 - }, -/turf/open/floor/plasteel/warning, -/area/security/transfer) -"bnk" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/warning, -/area/security/transfer) -"bnl" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/red/side{ - dir = 4 - }, -/area/security/transfer) -"bnm" = ( -/obj/structure/cable/white, -/obj/structure/cable/white{ - tag = "icon-0-2"; - icon_state = "0-2" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/security/transfer) -"bnn" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/red/side{ - dir = 8 - }, -/area/security/brig) -"bno" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/neutral, -/area/security/brig) -"bnp" = ( -/obj/machinery/atmospherics/pipe/manifold4w/scrubbers/hidden, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/red/side{ - dir = 4 - }, -/area/security/brig) -"bnq" = ( -/obj/machinery/door/firedoor, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/door/airlock/glass_security{ - name = "Security Office"; - req_access_txt = "63" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/red/side{ - dir = 8 - }, -/area/security/main) -"bnr" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel, -/area/security/main) -"bns" = ( -/obj/structure/chair/office/dark{ - dir = 4 - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/effect/landmark/start{ - name = "Security Officer" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/red/side{ - dir = 4 - }, -/area/security/main) -"bnt" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/folder/red, -/obj/item/device/flashlight/seclite, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/red, -/area/security/main) -"bnu" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/red/side{ - dir = 10 - }, -/area/security/main) -"bnv" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/red/corner{ - dir = 8 - }, -/area/security/main) -"bnw" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/book/manual/wiki/security_space_law, -/obj/item/device/taperecorder, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plasteel/red/side{ - dir = 10 - }, -/area/security/main) -"bnx" = ( -/obj/machinery/computer/secure_data, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/red/side{ - dir = 6 - }, -/area/security/main) -"bny" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/red/side{ - dir = 4 - }, -/area/security/main) -"bnz" = ( -/obj/effect/landmark{ - name = "secequipment" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/security/main) -"bnA" = ( -/obj/structure/cable/white, -/obj/structure/cable/white{ - tag = "icon-0-2"; - icon_state = "0-2" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor/preopen{ - id = "hosprivacy"; - name = "HoS Privacy Blast door" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/security/hos) -"bnB" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/grimy, -/area/security/hos) -"bnC" = ( -/obj/structure/chair/office/dark{ - dir = 4 - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/grimy, -/area/security/hos) -"bnD" = ( -/obj/structure/table/wood, -/obj/item/weapon/phone{ - desc = "Supposedly a direct line to NanoTrasen Central Command. It's not even plugged in."; - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/clothing/mask/cigarette/cigar/cohiba{ - pixel_x = 6 - }, -/obj/item/clothing/mask/cigarette/cigar/havana{ - pixel_x = 2 - }, -/obj/item/clothing/mask/cigarette/cigar{ - pixel_x = 4.5 - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plasteel/grimy, -/area/security/hos) -"bnE" = ( -/obj/machinery/computer/security, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/grimy, -/area/security/hos) -"bnF" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/grimy, -/area/security/hos) -"bnG" = ( -/obj/machinery/computer/prisoner, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/security/hos) -"bnH" = ( -/obj/structure/cable/white, -/obj/structure/grille, -/obj/structure/window/reinforced/tinted/fulltile, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/security/hos) -"bnI" = ( -/obj/machinery/light_switch{ - pixel_x = -26; - pixel_y = -26 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/grimy, -/area/security/hos) -"bnJ" = ( -/obj/machinery/button/door{ - id = "hosroom"; - name = "Privacy Control"; - pixel_x = 64; - pixel_y = -26; - req_access_txt = "58" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHWEST)"; - icon_state = "intact"; - dir = 10 - }, -/turf/open/floor/plasteel/grimy, -/area/security/hos) -"bnK" = ( -/obj/machinery/computer/secure_data, -/turf/open/floor/plasteel/grimy, -/area/security/hos) -"bnL" = ( -/obj/structure/cable/white, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor/preopen{ - id = "hosroom"; - name = "HoS Room Blast door" - }, -/turf/open/floor/plating, -/area/security/hos) -"bnM" = ( -/obj/structure/window/reinforced{ - dir = 4; - pixel_x = 0 - }, -/obj/structure/window/reinforced{ - dir = 8 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/construction/hallway{ - name = "\improper MiniSat Exterior" - }) -"bnN" = ( -/obj/structure/lattice, -/obj/structure/window/reinforced{ - dir = 1; - layer = 2.9 - }, -/obj/structure/window/reinforced{ - dir = 8 - }, -/turf/open/space, -/area/space) -"bnO" = ( -/obj/structure/window/reinforced{ - dir = 1; - layer = 2.9 - }, -/obj/structure/lattice, -/turf/open/space, -/area/space) -"bnP" = ( -/obj/structure/window/reinforced{ - dir = 1; - layer = 2.9 - }, -/turf/open/space, -/area/space) -"bnQ" = ( -/obj/structure/lattice, -/obj/structure/window/reinforced{ - dir = 1; - layer = 2.9 - }, -/turf/open/space, -/area/space) -"bnR" = ( -/obj/structure/lattice, -/obj/structure/window/reinforced{ - dir = 1; - layer = 2.9 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/space, -/area/space) -"bnS" = ( -/obj/structure/lattice/catwalk, -/obj/structure/window/reinforced{ - dir = 1; - layer = 2.9 - }, -/turf/open/space, -/area/space) -"bnT" = ( -/obj/structure/lattice, -/obj/structure/window/reinforced{ - dir = 1; - layer = 2.9 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/space, -/area/space) -"bnU" = ( -/obj/structure/lattice, -/obj/structure/window/reinforced{ - dir = 1; - layer = 2.9 - }, -/obj/structure/window/reinforced{ - dir = 4; - pixel_x = 0 - }, -/turf/open/space, -/area/space) -"bnV" = ( -/obj/machinery/light/small{ - dir = 8 - }, -/turf/open/floor/engine/vacuum, -/area/atmos) -"bnW" = ( -/obj/machinery/air_sensor{ - frequency = 1441; - id_tag = "mix_sensor" - }, -/turf/open/floor/engine/vacuum, -/area/atmos) -"bnX" = ( -/obj/machinery/computer/atmos_control/tank{ - frequency = 1441; - input_tag = "mix_in"; - name = "Gas Mix Tank Control"; - output_tag = "mix_in"; - sensors = list("mix_sensor" = "Tank") - }, -/obj/machinery/atmospherics/pipe/simple/cyan/visible, -/turf/open/floor/plasteel/green/side{ - dir = 8 - }, -/area/atmos) -"bnY" = ( -/obj/machinery/atmospherics/pipe/manifold/green/visible{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/plasteel/neutral, -/area/atmos) -"bnZ" = ( -/obj/machinery/atmospherics/pipe/manifold/green/visible, -/obj/machinery/meter, -/turf/open/floor/plasteel/neutral, -/area/atmos) -"boa" = ( -/obj/machinery/atmospherics/pipe/simple/green/visible{ - tag = "icon-intact (NORTHWEST)"; - icon_state = "intact"; - dir = 9 - }, -/turf/open/floor/plasteel/neutral, -/area/atmos) -"bob" = ( -/obj/machinery/atmospherics/pipe/manifold/yellow/visible{ - dir = 8 - }, -/turf/open/floor/plasteel/neutral, -/area/atmos) -"boc" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/components/binary/pump{ - dir = 4; - name = "Mix to Filter"; - on = 1 - }, -/turf/open/floor/plasteel/neutral, -/area/atmos) -"bod" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/visible{ - tag = "icon-manifold (EAST)"; - name = "scrubbers pipe"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/atmos) -"boe" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/crowbar/red, -/obj/item/weapon/wrench, -/obj/item/clothing/mask/gas, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/cyan/visible{ - dir = 6 - }, -/turf/open/floor/plasteel/bot, -/area/atmos) -"bof" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/manifold/cyan/visible{ - dir = 4; - initialize_directions = 11 - }, -/turf/open/floor/plasteel/neutral, -/area/atmos) -"bog" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/storage/belt/utility, -/obj/item/device/t_scanner, -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - tag = "icon-intact (NORTH)"; - icon_state = "intact"; - dir = 1 - }, -/turf/open/floor/plasteel/bot, -/area/atmos) -"boh" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - dir = 5 - }, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/atmos) -"boi" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral, -/area/atmos) -"boj" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/components/binary/pump{ - dir = 8; - name = "External Waste Ports to Filter"; - on = 1 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/atmos) -"bok" = ( -/obj/structure/cable/white{ - tag = "icon-0-2"; - icon_state = "0-2" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/atmos) -"bol" = ( -/obj/machinery/space_heater, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/bot, -/area/atmos) -"bom" = ( -/obj/machinery/portable_atmospherics/canister/nitrous_oxide, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/bot, -/area/atmos) -"bon" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/portable_atmospherics/canister/nitrogen, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/bot, -/area/atmos) -"boo" = ( -/obj/machinery/portable_atmospherics/canister/oxygen, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/bot, -/area/atmos) -"bop" = ( -/obj/machinery/portable_atmospherics/canister/air, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/bot, -/area/atmos) -"boq" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/sign/nosmoking_2, -/turf/closed/wall/r_wall, -/area/atmos) -"bor" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/yellow/corner{ - dir = 1 - }, -/area/hallway/primary/port) -"bos" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHWEST)"; - icon_state = "intact"; - dir = 10 - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/navbeacon{ - codes_txt = "patrol;next_patrol=engi3"; - location = "engi2" - }, -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/port) -"bot" = ( -/turf/open/floor/plasteel/yellow/corner{ - dir = 4 - }, -/area/hallway/primary/port) -"bou" = ( -/turf/closed/wall, -/area/storage/tech) -"bov" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/storage/tech) -"bow" = ( -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/turf/closed/wall, -/area/storage/tech) -"box" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 1 - }, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"boy" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall, -/area/hydroponics) -"boz" = ( -/obj/machinery/hydroponics/constructable, -/obj/structure/extinguisher_cabinet{ - pixel_x = -26 - }, -/turf/open/floor/plasteel/delivery, -/area/hydroponics) -"boA" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/neutral, -/area/hydroponics) -"boB" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHWEST)"; - icon_state = "intact"; - dir = 9 - }, -/turf/open/floor/plasteel/neutral, -/area/hydroponics) -"boC" = ( -/obj/structure/table/reinforced, -/obj/machinery/door/firedoor, -/obj/machinery/door/window/eastright{ - dir = 8; - name = "Hydroponics Desk"; - req_access_txt = "35" - }, -/obj/item/seeds/lime{ - pixel_x = 6 - }, -/obj/item/seeds/watermelon, -/obj/item/seeds/grape{ - pixel_x = -6 - }, -/obj/item/weapon/reagent_containers/food/snacks/grown/wheat, -/obj/item/weapon/reagent_containers/food/snacks/grown/watermelon, -/obj/item/weapon/reagent_containers/food/snacks/grown/banana, -/turf/open/floor/plasteel/delivery, -/area/hydroponics) -"boD" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/central) -"boE" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/neutral/corner, -/area/hallway/primary/central) -"boF" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/light, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/firealarm{ - dir = 1; - pixel_x = 0; - pixel_y = -24 - }, -/turf/open/floor/plasteel/neutral/corner, -/area/hallway/primary/central) -"boG" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/airalarm{ - dir = 1; - icon_state = "alarm0"; - pixel_y = -22 - }, -/turf/open/floor/plasteel/neutral/corner, -/area/hallway/primary/central) -"boH" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner, -/area/hallway/primary/central) -"boI" = ( -/obj/structure/sign/poster{ - icon_state = "poster16_legit"; - pixel_y = -32; - tag = "icon-poster16_legit" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/light/small, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner, -/area/hallway/primary/central) -"boJ" = ( -/obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/hallway/primary/central) -"boK" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel{ - icon_state = "L2" - }, -/area/hallway/primary/central) -"boL" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/light/small, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/firealarm{ - dir = 1; - pixel_x = 0; - pixel_y = -24 - }, -/turf/open/floor/plasteel{ - icon_state = "L4" - }, -/area/hallway/primary/central) -"boM" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel{ - icon_state = "L6" - }, -/area/hallway/primary/central) -"boN" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel{ - icon_state = "L8" - }, -/area/hallway/primary/central) -"boO" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel{ - icon_state = "L10" - }, -/area/hallway/primary/central) -"boP" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/light/small, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = 0; - pixel_y = -26 - }, -/obj/machinery/camera{ - c_tag = "Central Hallway - Fore"; - dir = 1; - name = "hallway camera" - }, -/turf/open/floor/plasteel{ - icon_state = "L12" - }, -/area/hallway/primary/central) -"boQ" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel{ - desc = ""; - icon_state = "L14" - }, -/area/hallway/primary/central) -"boR" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 8 - }, -/area/hallway/primary/central) -"boS" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 8 - }, -/area/hallway/primary/central) -"boT" = ( -/obj/structure/sign/poster{ - icon_state = "poster22_legit"; - pixel_y = -32; - tag = "icon-poster22_legit" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/light/small, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 8 - }, -/area/hallway/primary/central) -"boU" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/airalarm{ - dir = 1; - icon_state = "alarm0"; - pixel_y = -22 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 8 - }, -/area/hallway/primary/central) -"boV" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/obj/machinery/light, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/firealarm{ - dir = 1; - pixel_x = 0; - pixel_y = -24 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 8 - }, -/area/hallway/primary/central) -"boW" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 8 - }, -/area/hallway/primary/central) -"boX" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/central) -"boY" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 4 - }, -/area/hallway/primary/central) -"boZ" = ( -/turf/closed/wall, -/area/hallway/primary/central) -"bpa" = ( -/obj/machinery/computer/shuttle/labor, -/obj/structure/reagent_dispensers/peppertank{ - pixel_x = -31; - pixel_y = 0 - }, -/turf/open/floor/plasteel/shuttle/red, -/area/shuttle/labor) -"bpb" = ( -/obj/structure/chair/office/dark{ - dir = 1 - }, -/turf/open/floor/plasteel/shuttle/red, -/area/shuttle/labor) -"bpc" = ( -/obj/item/weapon/folder/red, -/obj/item/weapon/restraints/handcuffs, -/obj/structure/table/reinforced, -/turf/open/floor/plasteel/shuttle/red, -/area/shuttle/labor) -"bpd" = ( -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/transfer) -"bpe" = ( -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/structure/sign/vacuum, -/turf/open/floor/plating, -/area/security/transfer) -"bpf" = ( -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/transfer) -"bpg" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/security/transfer) -"bph" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/red/side{ - dir = 8 - }, -/area/security/transfer) -"bpi" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/folder/red, -/obj/item/weapon/restraints/handcuffs, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/item/weapon/storage/box/prisoner, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/security/transfer) -"bpj" = ( -/obj/machinery/gulag_teleporter, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/security/transfer) -"bpk" = ( -/obj/machinery/computer/gulag_teleporter_computer, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/security/transfer) -"bpl" = ( -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/red/side{ - dir = 4 - }, -/area/security/transfer) -"bpm" = ( -/obj/machinery/door/firedoor, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/machinery/door/airlock/glass_security{ - name = "Security Transfering Control"; - req_access_txt = "63" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/red, -/area/security/transfer) -"bpn" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/red/side{ - dir = 8 - }, -/area/security/brig) -"bpo" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/structure/disposalpipe/segment, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/plasteel/neutral, -/area/security/brig) -"bpp" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/red/side{ - dir = 4 - }, -/area/security/brig) -"bpq" = ( -/obj/machinery/door/firedoor, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/door/airlock/glass_security{ - name = "Security Office"; - req_access_txt = "63" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/red/side{ - dir = 8 - }, -/area/security/main) -"bpr" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/security/main) -"bps" = ( -/obj/structure/chair/office/dark{ - dir = 4 - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/effect/landmark/start{ - name = "Security Officer" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/red/side{ - dir = 4 - }, -/area/security/main) -"bpt" = ( -/obj/structure/table/reinforced, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/item/weapon/folder/red, -/obj/item/weapon/storage/secure/briefcase, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/red, -/area/security/main) -"bpu" = ( -/obj/structure/table/reinforced, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/item/weapon/paper_bin, -/obj/item/weapon/pen, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/red, -/area/security/main) -"bpv" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/red/side{ - dir = 8 - }, -/area/security/main) -"bpw" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/security/main) -"bpx" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/security/main) -"bpy" = ( -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/red/side{ - dir = 4 - }, -/area/security/main) -"bpz" = ( -/obj/effect/landmark{ - name = "secequipment" - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/security/main) -"bpA" = ( -/obj/structure/cable/white, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor/preopen{ - id = "hosprivacy"; - name = "HoS Privacy Blast door" - }, -/turf/open/floor/plating, -/area/security/hos) -"bpB" = ( -/obj/machinery/firealarm{ - dir = 8; - pixel_x = -24; - pixel_y = -32 - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/grimy, -/area/security/hos) -"bpC" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/grimy, -/area/security/hos) -"bpD" = ( -/obj/machinery/status_display{ - pixel_x = 32; - pixel_y = -32 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/grimy, -/area/security/hos) -"bpE" = ( -/obj/structure/table/wood, -/obj/machinery/computer/med_data/laptop, -/obj/machinery/newscaster/security_unit{ - pixel_x = 32 - }, -/obj/structure/extinguisher_cabinet{ - pixel_x = 26; - pixel_y = -32 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/security/hos) -"bpF" = ( -/obj/structure/closet/secure_closet/hos, -/obj/item/clothing/head/HoS/beret, -/obj/item/clothing/suit/armor/hos/trenchcoat, -/obj/item/clothing/under/rank/head_of_security/grey, -/turf/open/floor/plasteel/warning{ - dir = 9 - }, -/area/security/hos) -"bpG" = ( -/obj/machinery/light, -/obj/machinery/ai_status_display{ - pixel_y = -32 - }, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = 26; - pixel_y = -26 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/security/hos) -"bpH" = ( -/obj/machinery/suit_storage_unit/hos, -/turf/open/floor/plasteel/warning{ - dir = 5 - }, -/area/security/hos) -"bpI" = ( -/obj/structure/lattice, -/obj/structure/window/reinforced{ - dir = 8 - }, -/turf/open/space, -/area/space) -"bpJ" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall/r_wall, -/area/ai_monitored/turret_protected/ai) -"bpK" = ( -/turf/closed/wall/r_wall, -/area/ai_monitored/turret_protected/ai) -"bpL" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/closed/wall/r_wall, -/area/ai_monitored/turret_protected/ai) -"bpM" = ( -/obj/structure/lattice, -/obj/structure/window/reinforced{ - dir = 4; - pixel_x = 0 - }, -/turf/open/space, -/area/space) -"bpN" = ( -/obj/machinery/camera{ - c_tag = "Atmospherics - Mix Cell"; - dir = 1; - name = "atmospherics camera" - }, -/turf/open/floor/engine/vacuum, -/area/atmos) -"bpO" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - external_pressure_bound = 0; - frequency = 1441; - id_tag = "mix_in"; - initialize_directions = 1; - internal_pressure_bound = 4000; - name = "distro vent"; - on = 1; - pressure_checks = 2; - pump_direction = 0 - }, -/turf/open/floor/engine/vacuum, -/area/atmos) -"bpP" = ( -/obj/structure/lattice/catwalk, -/obj/machinery/atmospherics/pipe/simple/yellow/visible{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/space, -/area/atmos) -"bpQ" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/visible, -/obj/machinery/atmospherics/pipe/simple/yellow/visible{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/green/side{ - dir = 10 - }, -/area/atmos) -"bpR" = ( -/obj/machinery/atmospherics/pipe/simple/yellow/visible{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/obj/machinery/atmospherics/components/binary/pump{ - dir = 1 - }, -/turf/open/floor/plasteel/neutral, -/area/atmos) -"bpS" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/yellow/visible{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/neutral, -/area/atmos) -"bpT" = ( -/obj/machinery/atmospherics/pipe/manifold/yellow/visible{ - dir = 1 - }, -/obj/effect/landmark/start{ - name = "Atmospheric Technician" - }, -/turf/open/floor/plasteel/neutral, -/area/atmos) -"bpU" = ( -/obj/machinery/atmospherics/pipe/simple/yellow/visible{ - tag = "icon-intact (NORTHWEST)"; - icon_state = "intact"; - dir = 9 - }, -/turf/open/floor/plasteel/neutral, -/area/atmos) -"bpV" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 2; - on = 1; - scrub_N2O = 1; - scrub_Toxins = 1 - }, -/turf/open/floor/plasteel/neutral, -/area/atmos) -"bpW" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/obj/machinery/atmospherics/components/binary/pump{ - dir = 1; - name = "Waste to Filter"; - on = 1 - }, -/turf/open/floor/plasteel/neutral, -/area/atmos) -"bpX" = ( -/obj/machinery/light{ - dir = 8 - }, -/obj/machinery/airalarm{ - dir = 4; - icon_state = "alarm0"; - pixel_x = -22 - }, -/obj/machinery/atmospherics/pipe/simple/cyan/visible{ - tag = "icon-intact (NORTH)"; - icon_state = "intact"; - dir = 1 - }, -/turf/open/floor/plasteel/bot, -/area/atmos) -"bpY" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - tag = "icon-intact (NORTH)"; - icon_state = "intact"; - dir = 1 - }, -/turf/open/floor/plasteel/neutral, -/area/atmos) -"bpZ" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - tag = "icon-intact (NORTH)"; - icon_state = "intact"; - dir = 1 - }, -/turf/open/floor/plasteel/bot, -/area/atmos) -"bqa" = ( -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/atmos) -"bqb" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 2; - on = 1; - scrub_N2O = 1; - scrub_Toxins = 1 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral, -/area/atmos) -"bqc" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/atmos) -"bqd" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass_atmos{ - name = "Atmospherics Desk"; - req_access_txt = "24" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (EAST)"; - icon_state = "intact"; - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/atmos) -"bqe" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/delivery, -/area/atmos) -"bqf" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/portable_atmospherics/canister/nitrous_oxide, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/bot, -/area/atmos) -"bqg" = ( -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/machinery/portable_atmospherics/canister/nitrogen, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/bot, -/area/atmos) -"bqh" = ( -/obj/machinery/portable_atmospherics/canister/oxygen, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHWEST)"; - icon_state = "intact"; - dir = 10 - }, -/turf/open/floor/plasteel/bot, -/area/atmos) -"bqi" = ( -/obj/machinery/portable_atmospherics/canister/air, -/obj/machinery/camera{ - c_tag = "Atmospherics - Desk"; - dir = 8; - name = "atmospherics camera" - }, -/turf/open/floor/plasteel/bot, -/area/atmos) -"bqj" = ( -/obj/machinery/status_display, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/closed/wall/r_wall, -/area/atmos) -"bqk" = ( -/turf/open/floor/plasteel/yellow/corner{ - dir = 1 - }, -/area/hallway/primary/port) -"bql" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/port) -"bqm" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"bqn" = ( -/obj/machinery/vending/hydroseeds, -/turf/open/floor/plasteel/bot, -/area/hydroponics) -"bqo" = ( -/obj/machinery/vending/hydronutrients, -/turf/open/floor/plasteel/bot, -/area/hydroponics) -"bqp" = ( -/obj/structure/table/glass, -/obj/machinery/light{ - icon_state = "tube1"; - dir = 4 - }, -/obj/item/stack/packageWrap, -/obj/item/weapon/book/manual/hydroponics_pod_people, -/obj/item/weapon/hand_labeler, -/turf/open/floor/plasteel/bot, -/area/hydroponics) -"bqq" = ( -/obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/hallway/primary/central) -"bqr" = ( -/obj/machinery/door/firedoor, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/hallway/primary/central) -"bqs" = ( -/obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/hallway/primary/central) -"bqt" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/hallway/primary/central) -"bqu" = ( -/obj/machinery/status_display, -/turf/closed/wall, -/area/hallway/primary/central) -"bqv" = ( -/obj/machinery/door/firedoor, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/hallway/primary/central) -"bqw" = ( -/turf/closed/wall/r_wall, -/area/security/nuke_storage) -"bqx" = ( -/obj/structure/grille, -/obj/structure/cable/yellow{ - d2 = 8; - icon_state = "0-8" - }, -/obj/structure/window/shuttle, -/turf/open/floor/plating, -/area/shuttle/labor) -"bqy" = ( -/turf/open/floor/plasteel/shuttle/red, -/area/shuttle/labor) -"bqz" = ( -/obj/machinery/button/flasher{ - id = "gulagshuttleflasher"; - name = "Flash Control"; - pixel_x = 0; - pixel_y = -26; - req_access_txt = "1" - }, -/turf/open/floor/plasteel/shuttle/red, -/area/shuttle/labor) -"bqA" = ( -/obj/machinery/mineral/labor_claim_console{ - machinedir = 2; - pixel_x = 30; - pixel_y = 30 - }, -/turf/open/floor/plasteel/shuttle/red, -/area/shuttle/labor) -"bqB" = ( -/obj/machinery/door/airlock/shuttle{ - name = "Labor Shuttle Airlock"; - req_access_txt = "2" - }, -/turf/open/floor/plasteel/warnwhite/side, -/area/shuttle/labor) -"bqC" = ( -/obj/machinery/door/airlock/external{ - cyclelinkeddir = 4; - name = "Gulag Shuttle Airlock"; - req_access_txt = "63" - }, -/turf/open/floor/plasteel/warning/side, -/area/security/transfer) -"bqD" = ( -/obj/structure/fans/tiny, -/turf/open/floor/plasteel/delivery, -/area/security/transfer) -"bqE" = ( -/obj/machinery/door/airlock/external{ - cyclelinkeddir = 8; - name = "Gulag Shuttle Airlock"; - req_access_txt = "63" - }, -/turf/open/floor/plasteel/warning/side, -/area/security/transfer) -"bqF" = ( -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/security/transfer) -"bqG" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/red/side{ - dir = 8 - }, -/area/security/transfer) -"bqH" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/security/transfer) -"bqI" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/security/transfer) -"bqJ" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/security/transfer) -"bqK" = ( -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/red/side{ - dir = 4 - }, -/area/security/transfer) -"bqL" = ( -/obj/structure/cable/white{ - tag = "icon-0-2"; - icon_state = "0-2" - }, -/obj/structure/cable/white, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/security/transfer) -"bqM" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plasteel/red/side{ - dir = 8 - }, -/area/security/brig) -"bqN" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral, -/area/security/brig) -"bqO" = ( -/obj/structure/cable/white, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/main) -"bqP" = ( -/obj/machinery/firealarm{ - dir = 8; - pixel_x = -24; - pixel_y = -32 - }, -/turf/open/floor/plasteel/red/corner{ - dir = 8 - }, -/area/security/main) -"bqQ" = ( -/turf/open/floor/plasteel/red/corner{ - dir = 4 - }, -/area/security/main) -"bqR" = ( -/obj/structure/chair/office/dark{ - dir = 1 - }, -/obj/effect/landmark/start{ - name = "Security Officer" - }, -/turf/open/floor/plasteel/red/side{ - dir = 1 - }, -/area/security/main) -"bqS" = ( -/turf/open/floor/plasteel/red/corner{ - dir = 1 - }, -/area/security/main) -"bqT" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/neutral, -/area/security/main) -"bqU" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/red/side{ - dir = 4 - }, -/area/security/main) -"bqV" = ( -/obj/effect/landmark{ - name = "secequipment" - }, -/obj/machinery/light/small{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/security/main) -"bqW" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/obj/machinery/power/apc{ - dir = 2; - name = "Head of Security's Office APC"; - pixel_y = -26 - }, -/obj/structure/cable/white, -/turf/open/floor/plasteel/vault{ - dir = 1 - }, -/area/security/hos) -"bqX" = ( -/obj/structure/table/wood, -/obj/item/weapon/clipboard, -/obj/item/toy/figure/hos, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/security/hos) -"bqY" = ( -/obj/structure/table/wood, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/item/weapon/storage/fancy/donut_box, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/security/hos) -"bqZ" = ( -/obj/structure/table/wood, -/obj/item/weapon/paper_bin, -/obj/item/weapon/pen, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/security/hos) -"bra" = ( -/obj/machinery/disposal/bin, -/obj/machinery/airalarm{ - dir = 1; - icon_state = "alarm0"; - pixel_y = -22 - }, -/obj/machinery/light, -/obj/structure/sign/nanotrasen{ - pixel_x = 32; - pixel_y = -32 - }, -/obj/structure/disposalpipe/trunk{ - dir = 1 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/security/hos) -"brb" = ( -/obj/machinery/atmospherics/pipe/manifold/cyan/visible{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/obj/machinery/light/small{ - dir = 8 - }, -/turf/open/floor/plasteel/neutral, -/area/atmos) -"brc" = ( -/obj/machinery/atmospherics/pipe/manifold/cyan/visible{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/obj/machinery/meter, -/turf/open/floor/plasteel/neutral, -/area/atmos) -"brd" = ( -/obj/machinery/atmospherics/components/binary/pump{ - dir = 2; - name = "Mix to Distro"; - on = 0 - }, -/turf/open/floor/plasteel/neutral, -/area/atmos) -"bre" = ( -/obj/machinery/atmospherics/components/unary/thermomachine/heater, -/turf/open/floor/plasteel/neutral, -/area/atmos) -"brf" = ( -/obj/machinery/atmospherics/components/unary/thermomachine/freezer{ - tag = "icon-freezer (EAST)"; - icon_state = "freezer"; - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral, -/area/atmos) -"brg" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/visible{ - tag = "icon-manifold (EAST)"; - name = "scrubbers pipe"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/atmos) -"brh" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible{ - dir = 1 - }, -/obj/machinery/portable_atmospherics/pump, -/obj/structure/extinguisher_cabinet{ - pixel_x = -26 - }, -/obj/structure/sign/nosmoking_2{ - pixel_y = -32 - }, -/turf/open/floor/plasteel/arrival, -/area/atmos) -"bri" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible{ - dir = 1 - }, -/obj/machinery/portable_atmospherics/pump, -/obj/machinery/newscaster{ - pixel_y = -32 - }, -/obj/machinery/camera{ - c_tag = "Atmospherics - Pumps"; - dir = 1; - name = "atmospherics camera" - }, -/turf/open/floor/plasteel/arrival, -/area/atmos) -"brj" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible{ - dir = 1 - }, -/obj/machinery/portable_atmospherics/scrubber, -/turf/open/floor/plasteel/escape, -/area/atmos) -"brk" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible{ - dir = 1 - }, -/obj/machinery/portable_atmospherics/scrubber, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/firealarm{ - dir = 1; - pixel_x = 0; - pixel_y = -24 - }, -/turf/open/floor/plasteel/escape, -/area/atmos) -"brl" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/light/small, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHEAST)"; - icon_state = "intact"; - dir = 6 - }, -/turf/open/floor/plasteel/warning{ - dir = 10 - }, -/area/atmos) -"brm" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/warning, -/area/atmos) -"brn" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/obj/machinery/light/small, -/obj/machinery/light_switch{ - pixel_x = 26; - pixel_y = -26 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/warning{ - dir = 6 - }, -/area/atmos) -"bro" = ( -/obj/structure/cable/white, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plating, -/area/atmos) -"brp" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/atmos) -"brq" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHWEST)"; - icon_state = "intact"; - dir = 10 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/atmos) -"brr" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/atmos) -"brs" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/atmos) -"brt" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/loadingarea{ - dir = 1 - }, -/area/atmos) -"bru" = ( -/obj/structure/cable/white{ - tag = "icon-0-2"; - icon_state = "0-2" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor/preopen{ - id = "atmoslock"; - name = "Atmospherics Lockdown Blast door" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plating, -/area/atmos) -"brv" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/yellow/corner{ - dir = 1 - }, -/area/hallway/primary/port) -"brw" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/junction, -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/port) -"brx" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible{ - icon_state = "connector_map"; - dir = 8 - }, -/obj/machinery/portable_atmospherics/scrubber, -/turf/open/floor/plasteel/escape{ - tag = "icon-escape (EAST)"; - icon_state = "escape"; - dir = 4 - }, -/area/hallway/primary/port) -"bry" = ( -/obj/structure/sign/electricshock, -/turf/closed/wall/r_wall, -/area/storage/tech) -"brz" = ( -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/storage/tech) -"brA" = ( -/obj/structure/cable/white{ - tag = "icon-0-2"; - icon_state = "0-2" - }, -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/storage/tech) -"brB" = ( -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/storage/tech) -"brC" = ( -/obj/structure/sink{ - dir = 8; - icon_state = "sink"; - pixel_x = -12 - }, -/obj/structure/sign/poster{ - icon_state = "poster3_legit"; - pixel_x = -32; - pixel_y = 0; - tag = "icon-poster3_legit" - }, -/turf/open/floor/plasteel/bot, -/area/hydroponics) -"brD" = ( -/turf/open/floor/plasteel/greenblue/side{ - tag = "icon-greenblue (SOUTHWEST)"; - icon_state = "greenblue"; - dir = 10 - }, -/area/hydroponics) -"brE" = ( -/turf/open/floor/plasteel/greenblue/side{ - tag = "icon-greenblue (SOUTHEAST)"; - icon_state = "greenblue"; - dir = 6 - }, -/area/hydroponics) -"brF" = ( -/obj/structure/sink{ - dir = 4; - icon_state = "sink"; - pixel_x = 11; - pixel_y = 0 - }, -/obj/machinery/requests_console{ - department = "Hydroponics"; - departmentType = 0; - name = "Hydroponics RC"; - pixel_x = 32; - pixel_y = -32 - }, -/turf/open/floor/plasteel/bot, -/area/hydroponics) -"brG" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/hydroponics) -"brH" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral/corner{ - dir = 1 - }, -/area/hallway/primary/central) -"brI" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/central) -"brJ" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral/corner, -/area/hallway/primary/central) -"brK" = ( -/obj/structure/closet/firecloset, -/turf/open/floor/plasteel/delivery, -/area/hallway/primary/central) -"brL" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/space) -"brM" = ( -/obj/structure/closet/emcloset, -/turf/open/floor/plasteel/delivery, -/area/hallway/primary/central) -"brN" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral/corner{ - dir = 8 - }, -/area/hallway/primary/central) -"brO" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/central) -"brP" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral/corner{ - dir = 4 - }, -/area/hallway/primary/central) -"brQ" = ( -/obj/structure/cable/white{ - tag = "icon-0-2"; - icon_state = "0-2" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/hallway/primary/central) -"brR" = ( -/turf/open/floor/plasteel/vault{ - dir = 1 - }, -/area/security/nuke_storage) -"brS" = ( -/obj/structure/closet/crate{ - name = "Silver Crate" - }, -/obj/item/stack/spacecash/c1000, -/obj/item/stack/spacecash/c1000, -/obj/item/stack/spacecash/c500, -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/security/nuke_storage) -"brT" = ( -/obj/machinery/ai_status_display{ - pixel_y = 32 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 2; - on = 1; - scrub_N2O = 1; - scrub_Toxins = 1 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/security/nuke_storage) -"brU" = ( -/obj/structure/filingcabinet, -/obj/item/weapon/folder/documents, -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/security/nuke_storage) -"brV" = ( -/obj/machinery/computer/bank_machine, -/turf/open/floor/plasteel/vault{ - dir = 4 - }, -/area/security/nuke_storage) -"brW" = ( -/obj/machinery/door/airlock/shuttle{ - name = "Labor Shuttle Airlock"; - req_access_txt = "2" - }, -/turf/open/floor/plasteel/warnwhite/side{ - tag = "icon-white_warn_side (EAST)"; - icon_state = "white_warn_side"; - dir = 4 - }, -/area/shuttle/labor) -"brX" = ( -/turf/closed/wall/mineral/titanium/nodiagonal, -/area/shuttle/labor) -"brY" = ( -/obj/machinery/mineral/stacking_machine/laborstacker{ - input_dir = 2; - output_dir = 1 - }, -/turf/open/floor/plasteel/warnwhite/side{ - tag = "icon-white_warn_side (EAST)"; - icon_state = "white_warn_side"; - dir = 4 - }, -/area/shuttle/labor) -"brZ" = ( -/obj/structure/closet/emcloset, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/warning{ - dir = 10 - }, -/area/security/transfer) -"bsa" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/red/side{ - dir = 10 - }, -/area/security/transfer) -"bsb" = ( -/turf/open/floor/plasteel/red/side, -/area/security/transfer) -"bsc" = ( -/obj/structure/cable/white, -/obj/machinery/power/apc{ - dir = 2; - name = "Security Transfering APC"; - pixel_y = -26 - }, -/turf/open/floor/plasteel/red/side, -/area/security/transfer) -"bsd" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/red/side, -/area/security/transfer) -"bse" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/obj/machinery/firealarm{ - dir = 1; - pixel_x = 24; - pixel_y = -24 - }, -/obj/structure/reagent_dispensers/peppertank{ - pixel_y = -32 - }, -/turf/open/floor/plasteel/red/side{ - dir = 6 - }, -/area/security/transfer) -"bsf" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/turf/open/floor/plasteel/red/side{ - dir = 10 - }, -/area/security/main) -"bsg" = ( -/obj/machinery/computer/security/telescreen/entertainment{ - pixel_x = 0; - pixel_y = -32 - }, -/turf/open/floor/plasteel/red/corner{ - dir = 8 - }, -/area/security/main) -"bsh" = ( -/turf/open/floor/plasteel, -/area/security/main) -"bsi" = ( -/obj/structure/sign/goldenplaque{ - pixel_y = -32 - }, -/turf/open/floor/plasteel/red/corner, -/area/security/main) -"bsj" = ( -/obj/machinery/light, -/obj/machinery/ai_status_display{ - pixel_y = -32 - }, -/obj/machinery/camera{ - c_tag = "Security - Office Aft"; - dir = 1; - name = "security camera" - }, -/turf/open/floor/plasteel/red/side, -/area/security/main) -"bsk" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/turf/open/floor/plasteel/red/side, -/area/security/main) -"bsl" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/red/corner{ - dir = 4 - }, -/area/security/main) -"bsm" = ( -/obj/item/weapon/storage/pod{ - pixel_x = 32 - }, -/obj/effect/landmark{ - name = "secequipment" - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/security/main) -"bsn" = ( -/obj/structure/cable/white, -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor/preopen{ - id = "hosspace"; - name = "HoS Space Blast door" - }, -/turf/open/floor/plating, -/area/security/hos) -"bso" = ( -/obj/machinery/ai_status_display, -/turf/closed/wall/r_wall, -/area/ai_monitored/turret_protected/ai) -"bsp" = ( -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/turf/open/floor/plasteel/darkwarning, -/area/ai_monitored/turret_protected/ai) -"bsq" = ( -/obj/machinery/power/smes{ - charge = 5e+006 - }, -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/structure/sign/electricshock{ - pixel_y = 32 - }, -/obj/machinery/camera/motion{ - c_tag = "AI Chamber - Fore"; - name = "motion-sensitive ai camera"; - network = list("AI") - }, -/turf/open/floor/plasteel/darkwarning, -/area/ai_monitored/turret_protected/ai) -"bsr" = ( -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/obj/structure/sign/nosmoking_2{ - pixel_y = 32 - }, -/turf/open/floor/plasteel/darkwarning, -/area/ai_monitored/turret_protected/ai) -"bss" = ( -/obj/machinery/atmospherics/components/unary/thermomachine/heater{ - dir = 1; - on = 1 - }, -/turf/open/floor/plasteel/neutral, -/area/atmos) -"bst" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/cyan/visible{ - tag = "icon-intact (NORTHEAST)"; - icon_state = "intact"; - dir = 5 - }, -/turf/open/floor/plasteel/neutral, -/area/atmos) -"bsu" = ( -/obj/machinery/atmospherics/components/binary/pump{ - dir = 4; - name = "Air to Distro"; - on = 1; - target_pressure = 101 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral, -/area/atmos) -"bsv" = ( -/obj/machinery/airalarm{ - dir = 1; - icon_state = "alarm0"; - pixel_y = -22 - }, -/obj/machinery/atmospherics/pipe/manifold/supply/visible, -/obj/machinery/camera{ - c_tag = "Atmospherics - Distro Loop"; - dir = 1; - name = "atmospherics camera" - }, -/turf/open/floor/plasteel/neutral, -/area/atmos) -"bsw" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/meter{ - frequency = 1441; - id_tag = "distro_meter"; - name = "Distribution Loop" - }, -/obj/machinery/atmospherics/pipe/manifold4w/supply/visible, -/turf/open/floor/plasteel/neutral, -/area/atmos) -"bsx" = ( -/obj/machinery/atmospherics/components/binary/pump{ - dir = 4; - name = "Distro to Waste"; - on = 0 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral, -/area/atmos) -"bsy" = ( -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = 26; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/visible{ - tag = "icon-manifold (EAST)"; - name = "scrubbers pipe"; - icon_state = "manifold"; - dir = 4 - }, -/obj/machinery/meter{ - frequency = 1441; - id_tag = "waste_meter"; - name = "Waste Loop" - }, -/turf/open/floor/plasteel/neutral, -/area/atmos) -"bsz" = ( -/obj/machinery/status_display, -/turf/closed/wall/r_wall, -/area/atmos) -"bsA" = ( -/obj/structure/sign/securearea, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall/r_wall, -/area/atmos) -"bsB" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/atmos{ - name = "Atmospherics Access"; - req_access_txt = "24" - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (EAST)"; - icon_state = "plasteel_warn_side"; - dir = 4 - }, -/area/atmos) -"bsC" = ( -/obj/machinery/disposal/bin, -/obj/machinery/light{ - dir = 8 - }, -/obj/machinery/firealarm{ - dir = 8; - pixel_x = -24; - pixel_y = 0 - }, -/obj/machinery/light_switch{ - pixel_x = -38; - pixel_y = -8 - }, -/obj/structure/disposalpipe/trunk{ - dir = 4 - }, -/turf/open/floor/plasteel/caution/corner{ - dir = 8 - }, -/area/atmos) -"bsD" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_Toxins = 0 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/atmos) -"bsE" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/atmos) -"bsF" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/atmos) -"bsG" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/delivery, -/area/atmos) -"bsH" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/plasticflaps{ - opacity = 1 - }, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/machinery/door/poddoor/preopen{ - id = "atmoslock"; - name = "Atmospherics Lockdown Blast door" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/navbeacon{ - codes_txt = "delivery;dir=8"; - dir = 8; - freq = 1400; - location = "Atmospherics" - }, -/turf/open/floor/plasteel/delivery, -/area/atmos) -"bsI" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/delivery, -/area/hallway/primary/port) -"bsJ" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHEAST)"; - icon_state = "intact"; - dir = 5 - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/sortjunction{ - name = "Atmospherics Junction"; - sortType = 6 - }, -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/port) -"bsK" = ( -/obj/structure/rack, -/obj/item/weapon/circuitboard/computer/robotics{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/weapon/circuitboard/computer/mecha_control, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/warning{ - dir = 10 - }, -/area/storage/tech) -"bsL" = ( -/obj/structure/rack, -/obj/item/weapon/circuitboard/computer/communications{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/weapon/circuitboard/computer/card, -/obj/item/weapon/circuitboard/computer/crew{ - pixel_x = 3; - pixel_y = -3 - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/warning, -/area/storage/tech) -"bsM" = ( -/obj/structure/rack, -/obj/item/weapon/circuitboard/aicore{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/weapon/circuitboard/computer/aiupload, -/obj/item/weapon/circuitboard/computer/borgupload{ - pixel_x = 3; - pixel_y = -3 - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/warning{ - dir = 6 - }, -/area/storage/tech) -"bsN" = ( -/obj/item/weapon/shovel/spade, -/obj/item/weapon/crowbar, -/obj/item/weapon/cultivator, -/obj/structure/table/glass, -/obj/item/seeds/wheat{ - pixel_x = 6 - }, -/obj/item/seeds/potato, -/obj/item/seeds/pumpkin{ - pixel_x = -6 - }, -/obj/item/weapon/reagent_containers/food/snacks/grown/wheat, -/obj/item/weapon/reagent_containers/food/snacks/grown/watermelon, -/obj/item/weapon/reagent_containers/food/snacks/grown/grapes, -/obj/item/weapon/reagent_containers/food/snacks/grown/tomato, -/turf/open/floor/plasteel/bot, -/area/hydroponics) -"bsO" = ( -/obj/machinery/hydroponics/constructable, -/turf/open/floor/plasteel/delivery, -/area/hydroponics) -"bsP" = ( -/obj/machinery/hydroponics/constructable, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = 0; - pixel_y = -26 - }, -/turf/open/floor/plasteel/delivery, -/area/hydroponics) -"bsQ" = ( -/obj/machinery/hydroponics/constructable, -/obj/structure/sign/nanotrasen{ - pixel_x = 0; - pixel_y = -32 - }, -/turf/open/floor/plasteel/delivery, -/area/hydroponics) -"bsR" = ( -/obj/structure/table/glass, -/obj/item/weapon/reagent_containers/spray/plantbgone, -/obj/item/weapon/reagent_containers/spray/plantbgone{ - pixel_x = 16 - }, -/obj/item/weapon/watertank, -/obj/item/weapon/grenade/chem_grenade/antiweed, -/obj/structure/sign/poster{ - icon_state = "poster8_legit"; - pixel_y = -32; - tag = "icon-poster8_legit" - }, -/turf/open/floor/plasteel/bot, -/area/hydroponics) -"bsS" = ( -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/structure/cable/white{ - tag = "icon-0-2"; - icon_state = "0-2" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor/preopen{ - id = "bridgewindows"; - name = "Bridge View Blast door" - }, -/turf/open/floor/plating, -/area/bridge) -"bsT" = ( -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor/preopen{ - id = "bridgewindows"; - name = "Bridge View Blast door" - }, -/turf/open/floor/plating, -/area/bridge) -"bsU" = ( -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/structure/cable/white{ - tag = "icon-0-2"; - icon_state = "0-2" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor/preopen{ - id = "bridgewindows"; - name = "Bridge View Blast door" - }, -/turf/open/floor/plating, -/area/bridge) -"bsV" = ( -/turf/closed/wall/r_wall, -/area/bridge) -"bsW" = ( -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor/preopen{ - id = "bridgewindows"; - name = "Bridge View Blast door" - }, -/turf/open/floor/plating, -/area/bridge) -"bsX" = ( -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/structure/cable/white{ - tag = "icon-0-2"; - icon_state = "0-2" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor/preopen{ - id = "bridgewindows"; - name = "Bridge View Blast door" - }, -/turf/open/floor/plating, -/area/bridge) -"bsY" = ( -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor/preopen{ - id = "bridgewindows"; - name = "Bridge View Blast door" - }, -/turf/open/floor/plating, -/area/bridge) -"bsZ" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 8 - }, -/area/hallway/primary/central) -"bta" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/central) -"btb" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral/corner{ - dir = 4 - }, -/area/hallway/primary/central) -"btc" = ( -/obj/structure/cable/white{ - tag = "icon-0-2"; - icon_state = "0-2" - }, -/obj/structure/cable/white, -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/hallway/primary/central) -"btd" = ( -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/security/nuke_storage) -"bte" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall/r_wall, -/area/security/nuke_storage) -"btf" = ( -/obj/machinery/camera/motion{ - c_tag = "Vault"; - dir = 4; - network = list("SS13") - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/security/nuke_storage) -"btg" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/circuit/gcircuit, -/area/security/nuke_storage) -"bth" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHWEST)"; - icon_state = "intact"; - dir = 9 - }, -/turf/open/floor/plasteel/circuit/gcircuit, -/area/security/nuke_storage) -"bti" = ( -/turf/open/floor/plasteel/circuit/gcircuit, -/area/security/nuke_storage) -"btj" = ( -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/security/nuke_storage) -"btk" = ( -/turf/open/floor/plasteel/warning{ - dir = 9 - }, -/area/shuttle/labor) -"btl" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/shuttle/labor) -"btm" = ( -/obj/machinery/mineral/labor_claim_console{ - machinedir = 1; - pixel_x = 30; - pixel_y = 0 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning{ - dir = 5 - }, -/area/shuttle/labor) -"btn" = ( -/obj/machinery/door/firedoor, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/machinery/door/airlock/glass_security{ - name = "Security Transfering Control"; - req_access_txt = "63" - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/red, -/area/security/transfer) -"bto" = ( -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/transfer) -"btp" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/red/side{ - dir = 8 - }, -/area/security/brig) -"btq" = ( -/obj/machinery/newscaster/security_unit{ - pixel_x = 32 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/camera{ - c_tag = "Security - Brig Fore"; - dir = 8; - name = "security camera" - }, -/turf/open/floor/plasteel/red/side{ - dir = 4 - }, -/area/security/brig) -"btr" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/security{ - name = "Interrogation"; - req_access_txt = "63" - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/security/main) -"bts" = ( -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/tinted/fulltile, -/turf/open/floor/plating, -/area/security/main) -"btt" = ( -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/door/airlock/security{ - name = "Interrogation Monitoring"; - req_access_txt = "63" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/security/main) -"btu" = ( -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/tinted/fulltile, -/turf/open/floor/plating, -/area/security/main) -"btv" = ( -/obj/structure/window/reinforced{ - dir = 4; - pixel_x = 0 - }, -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/machinery/camera{ - c_tag = "AI Satellite - Fore Port"; - dir = 8; - name = "ai camera"; - network = list("Sat"); - pixel_x = 0; - pixel_y = 0; - start_active = 1 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/construction/hallway{ - name = "\improper MiniSat Exterior" - }) -"btw" = ( -/obj/machinery/porta_turret/ai, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/ai_monitored/turret_protected/ai) -"btx" = ( -/obj/machinery/light{ - dir = 1 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/ai_monitored/turret_protected/ai) -"bty" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/ai_monitored/turret_protected/ai) -"btz" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/ai_monitored/turret_protected/ai) -"btA" = ( -/obj/machinery/power/terminal{ - icon_state = "term"; - dir = 1 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/ai_monitored/turret_protected/ai) -"btB" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/ai_monitored/turret_protected/ai) -"btC" = ( -/obj/structure/window/reinforced{ - dir = 4; - pixel_x = 0 - }, -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/machinery/camera{ - c_tag = "AI Satellite - Fore Starboard"; - dir = 4; - name = "ai camera"; - network = list("Sat"); - pixel_x = 0; - pixel_y = 0; - start_active = 1 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/construction/hallway{ - name = "\improper MiniSat Exterior" - }) -"btD" = ( -/turf/closed/wall/r_wall, -/area/engine/gravity_generator) -"btE" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/external{ - name = "External Airlock"; - req_access_txt = "13" - }, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (EAST)"; - icon_state = "plasteel_warn_side"; - dir = 4 - }, -/area/engine/gravity_generator) -"btF" = ( -/turf/closed/wall/r_wall, -/area/engine/break_room) -"btG" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHEAST)"; - icon_state = "intact"; - dir = 5 - }, -/turf/closed/wall/r_wall, -/area/engine/break_room) -"btH" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/closed/wall/r_wall, -/area/engine/break_room) -"btI" = ( -/obj/machinery/status_display, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/closed/wall/r_wall, -/area/engine/break_room) -"btJ" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHEAST)"; - icon_state = "intact"; - dir = 5 - }, -/turf/closed/wall/r_wall, -/area/engine/break_room) -"btK" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/closed/wall/r_wall, -/area/engine/break_room) -"btL" = ( -/obj/structure/table/reinforced, -/obj/machinery/microwave{ - desc = "It looks really dirty."; - name = "maint microwave"; - pixel_y = 5 - }, -/obj/structure/sign/poster{ - icon_state = "poster4_legit"; - pixel_x = -32; - pixel_y = 0; - tag = "icon-poster4_legit" - }, -/turf/open/floor/plasteel/redyellow, -/area/engine/break_room) -"btM" = ( -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/plasteel/bot, -/area/engine/break_room) -"btN" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/paper_bin, -/obj/item/weapon/pen, -/obj/structure/extinguisher_cabinet{ - pixel_x = 26 - }, -/turf/open/floor/plasteel/redyellow, -/area/engine/break_room) -"btO" = ( -/obj/structure/closet/firecloset, -/obj/machinery/light/small{ - dir = 8 - }, -/obj/structure/extinguisher_cabinet{ - pixel_x = -26 - }, -/obj/machinery/firealarm{ - pixel_x = -32; - pixel_y = 24 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/bot, -/area/engine/break_room) -"btP" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/delivery, -/area/engine/break_room) -"btQ" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/reagent_dispensers/fueltank, -/turf/open/floor/plasteel/bot, -/area/engine/break_room) -"btR" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/crowbar/red, -/obj/item/weapon/wrench, -/obj/item/device/analyzer, -/obj/machinery/newscaster{ - pixel_x = -32 - }, -/turf/open/floor/plasteel/caution{ - dir = 8 - }, -/area/atmos) -"btS" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/neutral, -/area/atmos) -"btT" = ( -/obj/effect/decal/cleanable/dirt, -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/turf/open/floor/plasteel/caution{ - dir = 4 - }, -/area/atmos) -"btU" = ( -/obj/structure/cable/white{ - tag = "icon-0-2"; - icon_state = "0-2" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor/preopen{ - id = "atmoslock"; - name = "Atmospherics Lockdown Blast door" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/atmos) -"btV" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHEAST)"; - icon_state = "intact"; - dir = 6 - }, -/turf/open/floor/plasteel/yellow/corner{ - dir = 1 - }, -/area/hallway/primary/port) -"btW" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_Toxins = 0 - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/port) -"btX" = ( -/obj/structure/table, -/obj/machinery/light{ - dir = 4 - }, -/obj/machinery/airalarm{ - dir = 8; - icon_state = "alarm0"; - pixel_x = 24 - }, -/obj/item/weapon/wrench, -/obj/item/clothing/mask/gas, -/turf/open/floor/plasteel/caution{ - dir = 4 - }, -/area/hallway/primary/port) -"btY" = ( -/turf/closed/wall/r_wall, -/area/storage/tech) -"btZ" = ( -/obj/machinery/light/small{ - dir = 8 - }, -/turf/open/floor/plasteel/bot, -/area/storage/tech) -"bua" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 2; - on = 1 - }, -/turf/open/floor/plasteel/delivery, -/area/storage/tech) -"bub" = ( -/obj/machinery/light/small{ - dir = 4 - }, -/obj/machinery/camera{ - c_tag = "Technology Storage - Secure"; - dir = 8; - name = "engineering camera" - }, -/turf/open/floor/plasteel/bot, -/area/storage/tech) -"buc" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral/side, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"bud" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/extinguisher_cabinet{ - pixel_x = -26 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 1 - }, -/area/hallway/primary/central) -"bue" = ( -/obj/structure/cable/white, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor/preopen{ - id = "bridgewindows"; - name = "Bridge View Blast door" - }, -/turf/open/floor/plating, -/area/bridge) -"buf" = ( -/obj/machinery/computer/card, -/turf/open/floor/plasteel/darkblue/corner{ - dir = 1 - }, -/area/bridge) -"bug" = ( -/obj/machinery/computer/crew, -/turf/open/floor/plasteel/darkblue/side{ - tag = "icon-darkblue (NORTH)"; - icon_state = "darkblue"; - dir = 1 - }, -/area/bridge) -"buh" = ( -/obj/machinery/computer/med_data, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/darkblue/side{ - tag = "icon-darkblue (NORTH)"; - icon_state = "darkblue"; - dir = 1 - }, -/area/bridge) -"bui" = ( -/obj/structure/table/reinforced, -/obj/machinery/ai_status_display{ - pixel_y = 32 - }, -/obj/item/weapon/restraints/handcuffs, -/obj/item/device/assembly/flash/handheld, -/turf/open/floor/plasteel/black, -/area/bridge) -"buj" = ( -/obj/machinery/computer/prisoner, -/turf/open/floor/plasteel/darkred/side{ - dir = 1 - }, -/area/bridge) -"buk" = ( -/obj/machinery/computer/security, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/darkred/side{ - dir = 1 - }, -/area/bridge) -"bul" = ( -/obj/machinery/computer/secure_data, -/turf/open/floor/plasteel/darkred/side{ - dir = 1 - }, -/area/bridge) -"bum" = ( -/obj/structure/table/reinforced, -/obj/machinery/status_display{ - pixel_y = 32 - }, -/obj/item/weapon/storage/toolbox/mechanical, -/turf/open/floor/plasteel/black, -/area/bridge) -"bun" = ( -/obj/machinery/computer/station_alert, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/darkyellow/side{ - tag = "icon-darkyellow (NORTH)"; - icon_state = "darkyellow"; - dir = 1 - }, -/area/bridge) -"buo" = ( -/obj/machinery/computer/atmos_alert, -/turf/open/floor/plasteel/darkyellow/side{ - tag = "icon-darkyellow (NORTH)"; - icon_state = "darkyellow"; - dir = 1 - }, -/area/bridge) -"bup" = ( -/obj/machinery/computer/monitor, -/turf/open/floor/plasteel/darkyellow/corner{ - tag = "icon-darkyellowcorners (EAST)"; - icon_state = "darkyellowcorners"; - dir = 4 - }, -/area/bridge) -"buq" = ( -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/central) -"bur" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral/corner{ - dir = 4 - }, -/area/hallway/primary/central) -"bus" = ( -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/door/airlock/vault{ - locked = 1; - name = "Vault Door"; - req_access_txt = "53" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/hallway/primary/central) -"but" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/security/nuke_storage) -"buu" = ( -/obj/machinery/door/airlock/vault{ - locked = 1; - name = "Vault Door"; - req_access_txt = "53" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/sign/electricshock{ - pixel_y = -32 - }, -/obj/structure/sign/securearea{ - pixel_y = 32 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/security/nuke_storage) -"buv" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/circuit/gcircuit, -/area/security/nuke_storage) -"buw" = ( -/obj/machinery/nuclearbomb/selfdestruct{ - layer = 2 - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHWEST)"; - icon_state = "intact"; - dir = 10 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/security/nuke_storage) -"bux" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/circuit/gcircuit, -/area/security/nuke_storage) -"buy" = ( -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/machinery/power/apc{ - dir = 4; - name = "Vault APC"; - pixel_x = 26; - pixel_y = 0 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/security/nuke_storage) -"buz" = ( -/obj/structure/chair{ - dir = 4 - }, -/turf/open/floor/plasteel/warning{ - dir = 10 - }, -/area/shuttle/labor) -"buA" = ( -/turf/open/floor/plasteel/warning, -/area/shuttle/labor) -"buB" = ( -/obj/structure/chair{ - dir = 8 - }, -/obj/machinery/flasher{ - id = "gulagshuttleflasher"; - pixel_x = 25 - }, -/turf/open/floor/plasteel/warning{ - dir = 6 - }, -/area/shuttle/labor) -"buC" = ( -/obj/machinery/gulag_item_reclaimer{ - pixel_y = 28 - }, -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/warning{ - dir = 9 - }, -/area/security/transfer) -"buD" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/red/side{ - dir = 9 - }, -/area/security/transfer) -"buE" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/storage/briefcase{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/storage/secure/briefcase, -/turf/open/floor/plasteel/red/side{ - dir = 1 - }, -/area/security/transfer) -"buF" = ( -/obj/structure/table/reinforced, -/obj/machinery/light{ - dir = 1 - }, -/obj/item/weapon/folder/red, -/obj/item/weapon/book/manual/wiki/security_space_law, -/turf/open/floor/plasteel/red/side{ - dir = 1 - }, -/area/security/transfer) -"buG" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/paper_bin, -/obj/item/weapon/pen, -/turf/open/floor/plasteel/red/side{ - dir = 1 - }, -/area/security/transfer) -"buH" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/turf/open/floor/plasteel/red/side{ - dir = 5 - }, -/area/security/transfer) -"buI" = ( -/obj/machinery/firealarm{ - dir = 8; - pixel_x = -24; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/red/side{ - dir = 8 - }, -/area/security/brig) -"buJ" = ( -/obj/machinery/light{ - icon_state = "tube1"; - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/red/side{ - dir = 4 - }, -/area/security/brig) -"buK" = ( -/turf/closed/wall, -/area/security/main) -"buL" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/security/main) -"buM" = ( -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/security/main) -"buN" = ( -/obj/machinery/holopad, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/security/main) -"buO" = ( -/obj/structure/cable/white{ - tag = "icon-0-2"; - icon_state = "0-2" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/tinted/fulltile, -/turf/open/floor/plating, -/area/security/main) -"buP" = ( -/obj/structure/chair/office/dark{ - dir = 8 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/security/main) -"buQ" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/security/main) -"buR" = ( -/obj/structure/window/reinforced{ - dir = 4; - pixel_x = 0 - }, -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 2; - on = 1 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/construction/hallway{ - name = "\improper MiniSat Exterior" - }) -"buS" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/folder/blue, -/obj/item/bodypart/l_leg/robot, -/obj/item/bodypart/r_leg/robot, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/ai_monitored/turret_protected/ai) -"buT" = ( -/obj/structure/chair/office/dark{ - dir = 8 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/ai_monitored/turret_protected/ai) -"buU" = ( -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHEAST)"; - icon_state = "intact"; - dir = 6 - }, -/turf/open/floor/plasteel/circuit/gcircuit, -/area/ai_monitored/turret_protected/ai) -"buV" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/open/floor/plasteel/circuit/gcircuit, -/area/ai_monitored/turret_protected/ai) -"buW" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/circuit/gcircuit, -/area/ai_monitored/turret_protected/ai) -"buX" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/machinery/ai_slipper{ - icon_state = "motion0"; - uses = 10 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/circuit/gcircuit, -/area/ai_monitored/turret_protected/ai) -"buY" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/circuit/gcircuit, -/area/ai_monitored/turret_protected/ai) -"buZ" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/circuit/gcircuit, -/area/ai_monitored/turret_protected/ai) -"bva" = ( -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHWEST)"; - icon_state = "intact"; - dir = 10 - }, -/turf/open/floor/plasteel/circuit/gcircuit, -/area/ai_monitored/turret_protected/ai) -"bvb" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/ai_monitored/turret_protected/ai) -"bvc" = ( -/obj/structure/table/reinforced, -/obj/item/device/flashlight/lamp, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/ai_monitored/turret_protected/ai) -"bvd" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/cobweb, -/obj/structure/closet/emcloset{ - anchored = 1 - }, -/turf/open/floor/plasteel/delivery, -/area/engine/gravity_generator) -"bve" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/fans/tiny, -/turf/open/floor/plasteel/bot, -/area/engine/gravity_generator) -"bvf" = ( -/obj/machinery/light/small{ - dir = 4 - }, -/turf/open/floor/plasteel/delivery, -/area/engine/gravity_generator) -"bvg" = ( -/turf/closed/wall, -/area/engine/break_room) -"bvh" = ( -/obj/structure/table/reinforced, -/obj/machinery/light/small{ - dir = 1 - }, -/obj/item/stack/sheet/metal{ - amount = 30 - }, -/obj/item/stack/sheet/glass{ - amount = 30 - }, -/obj/item/weapon/crowbar/red, -/obj/item/weapon/wrench, -/obj/structure/sign/nosmoking_2{ - pixel_y = 32 - }, -/turf/open/floor/plasteel/bot, -/area/engine/break_room) -"bvi" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/storage/toolbox/electrical, -/obj/item/weapon/wrench/power, -/obj/machinery/status_display{ - pixel_y = 32 - }, -/turf/open/floor/plasteel/bot, -/area/engine/break_room) -"bvj" = ( -/obj/structure/cable/white{ - tag = "icon-0-2"; - icon_state = "0-2" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/engine/break_room) -"bvk" = ( -/obj/structure/table/reinforced, -/obj/item/stack/rods{ - amount = 50 - }, -/obj/item/stack/sheet/rglass{ - amount = 30; - pixel_x = 2; - pixel_y = -2 - }, -/obj/item/stack/cable_coil/white, -/turf/open/floor/plasteel/bot, -/area/engine/break_room) -"bvl" = ( -/obj/structure/table/reinforced, -/obj/machinery/light/small{ - dir = 1 - }, -/obj/item/stack/sheet/plasteel{ - amount = 50 - }, -/obj/item/weapon/crowbar/power, -/obj/structure/sign/nanotrasen{ - pixel_x = 32 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/bot, -/area/engine/break_room) -"bvm" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/bonfire, -/obj/item/weapon/reagent_containers/food/drinks/bottle/orangejuice{ - desc = "For the weary spacemen on their quest to rekindle the first plasmafire."; - name = "Carton of Estus" - }, -/obj/item/weapon/nullrod/claymore/glowing{ - desc = "Don't tell anyone you put any points into dex, though."; - force = 10; - name = "moonlight greatsword" - }, -/obj/effect/decal/remains/human, -/turf/open/floor/plating{ - icon_state = "panelscorched" - }, -/area/engine/break_room) -"bvn" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/storage/box/donkpockets, -/obj/machinery/newscaster{ - pixel_x = -32 - }, -/turf/open/floor/plasteel/redyellow, -/area/engine/break_room) -"bvo" = ( -/turf/open/floor/plasteel/bot, -/area/engine/break_room) -"bvp" = ( -/obj/machinery/vending/cola, -/obj/machinery/newscaster{ - pixel_x = 32 - }, -/turf/open/floor/plasteel/redyellow, -/area/engine/break_room) -"bvq" = ( -/obj/structure/sign/nosmoking_2, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall/r_wall, -/area/engine/break_room) -"bvr" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/atmos{ - name = "Atmospherics Access"; - req_access_txt = "24" - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (EAST)"; - icon_state = "plasteel_warn_side"; - dir = 4 - }, -/area/engine/break_room) -"bvs" = ( -/obj/structure/sign/securearea, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/closed/wall/r_wall, -/area/engine/break_room) -"bvt" = ( -/obj/machinery/computer/atmos_control, -/obj/machinery/status_display{ - pixel_x = -32 - }, -/turf/open/floor/plasteel/caution{ - dir = 8 - }, -/area/atmos) -"bvu" = ( -/obj/structure/chair/office/dark{ - dir = 8 - }, -/turf/open/floor/plasteel/neutral, -/area/atmos) -"bvv" = ( -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/machinery/holopad, -/obj/effect/landmark/start{ - name = "Atmospheric Technician" - }, -/turf/open/floor/plasteel/bot, -/area/atmos) -"bvw" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral, -/area/atmos) -"bvx" = ( -/obj/structure/chair/office/dark{ - dir = 4 - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/caution{ - dir = 4 - }, -/area/atmos) -"bvy" = ( -/obj/structure/table/reinforced, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/item/weapon/folder/yellow, -/obj/item/weapon/pen, -/obj/machinery/door/poddoor/preopen{ - id = "atmoslock"; - name = "Atmospherics Lockdown Blast door" - }, -/obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/delivery, -/area/atmos) -"bvz" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/yellow/corner{ - dir = 1 - }, -/area/hallway/primary/port) -"bvA" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHEAST)"; - icon_state = "intact"; - dir = 6 - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/port) -"bvB" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible{ - icon_state = "connector_map"; - dir = 8 - }, -/obj/machinery/portable_atmospherics/pump, -/obj/machinery/camera{ - c_tag = "Engineering Hallway - Fore"; - dir = 8; - name = "hallway camera" - }, -/turf/open/floor/plasteel/arrival{ - dir = 4 - }, -/area/hallway/primary/port) -"bvC" = ( -/obj/machinery/door/firedoor, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/door/airlock/highsecurity, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/storage/tech) -"bvD" = ( -/obj/structure/extinguisher_cabinet, -/turf/closed/wall/r_wall, -/area/storage/tech) -"bvE" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/plasteel/bot, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"bvF" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"bvG" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"bvH" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"bvI" = ( -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Maintenance Hatch"; - req_access_txt = "12" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"bvJ" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 1 - }, -/area/hallway/primary/central) -"bvK" = ( -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/central) -"bvL" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/obj/machinery/light{ - dir = 4 - }, -/obj/structure/disposalpipe/segment, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = 26; - pixel_y = 0 - }, -/obj/machinery/camera{ - c_tag = "Central Hallway - Bridge Port"; - dir = 8; - name = "hallway camera" - }, -/turf/open/floor/plasteel/neutral/corner, -/area/hallway/primary/central) -"bvM" = ( -/obj/structure/table/reinforced, -/obj/machinery/light{ - dir = 8 - }, -/obj/item/weapon/storage/firstaid/regular, -/turf/open/floor/plasteel/darkblue/corner{ - dir = 1 - }, -/area/bridge) -"bvN" = ( -/obj/structure/chair/office/dark{ - dir = 8 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/bridge) -"bvO" = ( -/obj/structure/chair/office/dark{ - dir = 1 - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/bridge) -"bvP" = ( -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/bridge) -"bvQ" = ( -/obj/structure/chair/office/dark{ - dir = 1 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/bridge) -"bvR" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/bridge) -"bvS" = ( -/obj/structure/chair/office/dark{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/bridge) -"bvT" = ( -/obj/structure/table/reinforced, -/obj/machinery/light{ - icon_state = "tube1"; - dir = 4 - }, -/obj/item/weapon/wrench, -/obj/item/device/assembly/timer, -/obj/item/device/assembly/signaler, -/turf/open/floor/plasteel/darkyellow/corner{ - tag = "icon-darkyellowcorners (EAST)"; - icon_state = "darkyellowcorners"; - dir = 4 - }, -/area/bridge) -"bvU" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 8 - }, -/area/hallway/primary/central) -"bvV" = ( -/obj/machinery/holopad, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/bot, -/area/hallway/primary/central) -"bvW" = ( -/obj/structure/cable/white, -/obj/structure/cable/white{ - tag = "icon-0-2"; - icon_state = "0-2" - }, -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/hallway/primary/central) -"bvX" = ( -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/nuke_storage) -"bvY" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/circuit/gcircuit, -/area/security/nuke_storage) -"bvZ" = ( -/obj/item/clothing/suit/hazardvest{ - desc = "A high-visibility lifejacket complete with whistle and slot for oxygen tanks."; - name = "emergency lifejacket" - }, -/obj/item/clothing/suit/hazardvest{ - desc = "A high-visibility lifejacket complete with whistle and slot for oxygen tanks."; - name = "emergency lifejacket" - }, -/obj/item/clothing/suit/hazardvest{ - desc = "A high-visibility lifejacket complete with whistle and slot for oxygen tanks."; - name = "emergency lifejacket" - }, -/obj/item/clothing/suit/hazardvest{ - desc = "A high-visibility lifejacket complete with whistle and slot for oxygen tanks."; - name = "emergency lifejacket" - }, -/obj/item/clothing/suit/hazardvest{ - desc = "A high-visibility lifejacket complete with whistle and slot for oxygen tanks."; - name = "emergency lifejacket" - }, -/obj/item/weapon/tank/internals/emergency_oxygen/double{ - pixel_x = 3 - }, -/obj/item/weapon/tank/internals/emergency_oxygen/double{ - pixel_x = 3 - }, -/obj/item/weapon/tank/internals/emergency_oxygen/double{ - pixel_x = 3 - }, -/obj/item/weapon/tank/internals/emergency_oxygen/double{ - pixel_x = 3 - }, -/obj/item/weapon/tank/internals/emergency_oxygen/double{ - pixel_x = 3 - }, -/obj/item/clothing/mask/breath{ - pixel_x = -3; - pixel_y = -3 - }, -/obj/item/clothing/mask/breath{ - pixel_x = -3; - pixel_y = -3 - }, -/obj/item/clothing/mask/breath{ - pixel_x = -3; - pixel_y = -3 - }, -/obj/item/clothing/mask/breath{ - pixel_x = -3; - pixel_y = -3 - }, -/obj/item/clothing/mask/breath{ - pixel_x = -3; - pixel_y = -3 - }, -/obj/item/clothing/head/hardhat/orange{ - name = "protective hat"; - pixel_y = 9 - }, -/obj/item/clothing/head/hardhat/orange{ - name = "protective hat"; - pixel_y = 9 - }, -/obj/item/clothing/head/hardhat/orange{ - name = "protective hat"; - pixel_y = 9 - }, -/obj/item/clothing/head/hardhat/orange{ - name = "protective hat"; - pixel_y = 9 - }, -/obj/item/clothing/head/hardhat/orange{ - name = "protective hat"; - pixel_y = 9 - }, -/obj/structure/closet/crate/internals, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/delivery, -/area/shuttle/labor) -"bwa" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning/end{ - tag = "icon-plasteel_warn_end (WEST)"; - icon_state = "plasteel_warn_end"; - dir = 8 - }, -/area/shuttle/labor) -"bwb" = ( -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (EAST)"; - icon_state = "plasteel_warn_side"; - dir = 4 - }, -/area/shuttle/labor) -"bwc" = ( -/obj/machinery/door/airlock/shuttle{ - id_tag = "prisonshuttle"; - name = "Labor Shuttle Airlock" - }, -/obj/docking_port/mobile{ - dir = 8; - dwidth = 2; - height = 5; - id = "laborcamp"; - name = "labor camp shuttle"; - port_angle = 90; - width = 9 - }, -/obj/docking_port/stationary{ - dir = 8; - dwidth = 2; - height = 5; - id = "laborcamp_home"; - name = "fore bay 1"; - width = 9 - }, -/turf/open/floor/plasteel/warnwhite/side, -/area/shuttle/labor) -"bwd" = ( -/obj/machinery/door/airlock/external{ - cyclelinkeddir = 4; - name = "Gulag Shuttle Airlock"; - req_access_txt = "0" - }, -/turf/open/floor/plasteel/warning/side, -/area/security/transfer) -"bwe" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/fans/tiny, -/turf/open/floor/plasteel/delivery, -/area/security/transfer) -"bwf" = ( -/obj/machinery/door/airlock/external{ - cyclelinkeddir = 8; - name = "Gulag Shuttle Airlock"; - req_access_txt = "0" - }, -/turf/open/floor/plasteel/warning/side, -/area/security/transfer) -"bwg" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/red/side{ - dir = 8 - }, -/area/security/transfer) -"bwh" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/security/transfer) -"bwi" = ( -/obj/machinery/holopad, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/bot, -/area/security/transfer) -"bwj" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/red/side{ - dir = 4 - }, -/area/security/transfer) -"bwk" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/security{ - name = "Security Transfering Center"; - req_access_txt = "63" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/red, -/area/security/transfer) -"bwl" = ( -/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, -/turf/open/floor/plasteel/red/side{ - dir = 8 - }, -/area/security/brig) -"bwm" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral, -/area/security/brig) -"bwn" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/red/side{ - dir = 4 - }, -/area/security/brig) -"bwo" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/security{ - name = "Interrogation"; - req_access_txt = "63" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/security/main) -"bwp" = ( -/obj/structure/chair/office/dark{ - dir = 4 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/security/main) -"bwq" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/folder/red, -/obj/item/weapon/pen, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/security/main) -"bwr" = ( -/obj/structure/chair/office/dark{ - dir = 8 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 2; - on = 1; - scrub_N2O = 1; - scrub_Toxins = 1 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/security/main) -"bws" = ( -/obj/structure/cable/white, -/obj/structure/cable/white{ - tag = "icon-0-2"; - icon_state = "0-2" - }, -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/tinted/fulltile, -/turf/open/floor/plating, -/area/security/main) -"bwt" = ( -/obj/structure/chair/office/dark{ - dir = 8 - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/security/main) -"bwu" = ( -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/item/device/radio/intercom{ - anyai = 1; - broadcasting = 0; - freerange = 1; - frequency = 1424; - listening = 1; - name = "Interrogation Intercom"; - pixel_x = 0; - pixel_y = -58 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/security/main) -"bwv" = ( -/obj/structure/table/wood, -/obj/machinery/light/small{ - dir = 4 - }, -/obj/item/weapon/paper_bin, -/obj/item/weapon/pen, -/obj/machinery/camera{ - c_tag = "Security - Interrogation Monitoring"; - dir = 8; - name = "security camera" - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/security/main) -"bww" = ( -/obj/structure/window/reinforced{ - dir = 4; - pixel_x = 0 - }, -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/construction/hallway{ - name = "\improper MiniSat Exterior" - }) -"bwx" = ( -/obj/machinery/status_display, -/turf/closed/wall/r_wall, -/area/ai_monitored/turret_protected/ai) -"bwy" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/paper_bin, -/obj/item/weapon/pen, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/ai_monitored/turret_protected/ai) -"bwz" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/ai_monitored/turret_protected/ai) -"bwA" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/circuit/gcircuit, -/area/ai_monitored/turret_protected/ai) -"bwB" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/ai_monitored/turret_protected/ai) -"bwC" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/ai_monitored/turret_protected/ai) -"bwD" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/ai_monitored/turret_protected/ai) -"bwE" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHEAST)"; - icon_state = "intact"; - dir = 5 - }, -/turf/open/floor/plasteel/circuit/gcircuit, -/area/ai_monitored/turret_protected/ai) -"bwF" = ( -/obj/structure/chair/office/dark{ - dir = 4 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/ai_monitored/turret_protected/ai) -"bwG" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/folder/blue, -/obj/item/weapon/pen, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/ai_monitored/turret_protected/ai) -"bwH" = ( -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/engine/gravity_generator) -"bwI" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHEAST)"; - icon_state = "intact"; - dir = 6 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/engine/gravity_generator) -"bwJ" = ( -/obj/structure/cable/white{ - d2 = 2; - icon_state = "0-2"; - tag = "icon-0-2" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/structure/sign/electricshock{ - pixel_y = 32 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plating, -/area/engine/gravity_generator) -"bwK" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/light{ - dir = 1 - }, -/obj/machinery/status_display{ - pixel_y = 32 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/warning{ - dir = 9 - }, -/area/engine/gravity_generator) -"bwL" = ( -/obj/machinery/power/apc{ - cell_type = 5000; - dir = 1; - name = "Gravity Generator APC"; - pixel_x = 0; - pixel_y = 25 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/engine/gravity_generator) -"bwM" = ( -/obj/machinery/power/terminal{ - tag = "icon-term (EAST)"; - icon_state = "term"; - dir = 4 - }, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = 0; - pixel_y = 26 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHWEST)"; - icon_state = "intact"; - dir = 10 - }, -/obj/structure/cable/white{ - d2 = 2; - icon_state = "0-2"; - tag = "icon-0-2" - }, -/turf/open/floor/plasteel/warning{ - dir = 5 - }, -/area/engine/gravity_generator) -"bwN" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/cobweb/cobweb2, -/obj/machinery/power/smes{ - charge = 5e+006 - }, -/obj/structure/sign/nanotrasen{ - pixel_y = 32 - }, -/obj/structure/extinguisher_cabinet{ - pixel_x = 26 - }, -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/turf/open/floor/plasteel/bot, -/area/engine/gravity_generator) -"bwO" = ( -/turf/closed/wall, -/area/engine/gravity_generator) -"bwP" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/external{ - name = "External Airlock"; - req_access_txt = "13" - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (EAST)"; - icon_state = "plasteel_warn_side"; - dir = 4 - }, -/area/engine/gravity_generator) -"bwQ" = ( -/obj/structure/extinguisher_cabinet{ - pixel_x = -26 - }, -/turf/open/floor/plasteel/delivery, -/area/engine/break_room) -"bwR" = ( -/turf/open/floor/plasteel/delivery, -/area/engine/break_room) -"bwS" = ( -/obj/structure/cable/white{ - tag = "icon-0-2"; - icon_state = "0-2" - }, -/obj/structure/cable/white, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/engine/break_room) -"bwT" = ( -/obj/machinery/newscaster{ - pixel_x = 32 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/delivery, -/area/engine/break_room) -"bwU" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall, -/area/engine/break_room) -"bwV" = ( -/obj/machinery/disposal/bin, -/obj/structure/disposalpipe/trunk, -/turf/open/floor/plasteel/redyellow, -/area/engine/break_room) -"bwW" = ( -/obj/machinery/vending/snack, -/turf/open/floor/plasteel/redyellow, -/area/engine/break_room) -"bwX" = ( -/obj/machinery/door/poddoor/preopen{ - id = "atmoslock"; - name = "Atmospherics Lockdown Blast door" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (EAST)"; - icon_state = "plasteel_warn_side"; - dir = 4 - }, -/area/engine/break_room) -"bwY" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/door/poddoor/preopen{ - id = "atmoslock"; - name = "Atmospherics Lockdown Blast door" - }, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (EAST)"; - icon_state = "plasteel_warn_side"; - dir = 4 - }, -/area/engine/break_room) -"bwZ" = ( -/obj/machinery/door/poddoor/preopen{ - id = "atmoslock"; - name = "Atmospherics Lockdown Blast door" - }, -/obj/machinery/button/door{ - id = "atmoslock"; - name = "Atmospherics Lockdown Control"; - pixel_x = 26; - req_access_txt = "25" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (EAST)"; - icon_state = "plasteel_warn_side"; - dir = 4 - }, -/area/engine/break_room) -"bxa" = ( -/obj/machinery/computer/atmos_control, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/button/door{ - id = "atmoslock"; - name = "Atmospherics Lockdown Control"; - pixel_x = -26; - req_access_txt = "25" - }, -/turf/open/floor/plasteel/caution{ - dir = 8 - }, -/area/atmos) -"bxb" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/chair/office/dark, -/turf/open/floor/plasteel/neutral, -/area/atmos) -"bxc" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/turf/open/floor/plasteel/neutral, -/area/atmos) -"bxd" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/tank/internals/emergency_oxygen{ - pixel_x = 6 - }, -/obj/item/weapon/tank/internals/emergency_oxygen{ - pixel_x = -6 - }, -/obj/item/clothing/mask/breath, -/obj/item/clothing/mask/breath, -/turf/open/floor/plasteel/caution{ - dir = 4 - }, -/area/atmos) -"bxe" = ( -/obj/structure/cable/white, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor/preopen{ - id = "atmoslock"; - name = "Atmospherics Lockdown Blast door" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHEAST)"; - icon_state = "intact"; - dir = 5 - }, -/turf/open/floor/plating, -/area/atmos) -"bxf" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/yellow/corner{ - dir = 1 - }, -/area/hallway/primary/port) -"bxg" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/port) -"bxh" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible{ - icon_state = "connector_map"; - dir = 8 - }, -/obj/machinery/portable_atmospherics/pump, -/turf/open/floor/plasteel/arrival{ - dir = 4 - }, -/area/hallway/primary/port) -"bxi" = ( -/obj/structure/table/reinforced, -/obj/item/device/plant_analyzer, -/obj/item/device/plant_analyzer, -/obj/item/device/radio, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/storage/tech) -"bxj" = ( -/obj/structure/table/reinforced, -/obj/item/device/analyzer, -/obj/item/device/analyzer, -/obj/item/device/assembly/signaler, -/obj/item/device/assembly/signaler, -/turf/open/floor/plasteel/bot, -/area/storage/tech) -"bxk" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/turf/open/floor/plasteel/delivery, -/area/storage/tech) -"bxl" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/delivery, -/area/storage/tech) -"bxm" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/turf/open/floor/plasteel/delivery, -/area/storage/tech) -"bxn" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/aiModule/reset, -/obj/item/device/assembly/flash/handheld, -/obj/item/device/assembly/flash/handheld, -/turf/open/floor/plasteel/bot, -/area/storage/tech) -"bxo" = ( -/obj/structure/table/reinforced, -/obj/item/bodypart/chest/robot, -/obj/item/device/mmi, -/obj/item/device/mmi, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/storage/tech) -"bxp" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral/side{ - dir = 1 - }, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"bxq" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/closed/wall, -/area/storage/primary) -"bxr" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/storage/primary) -"bxs" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Maintenance Hatch"; - req_access_txt = "12" - }, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (EAST)"; - icon_state = "plasteel_warn_side"; - dir = 4 - }, -/area/storage/primary) -"bxt" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/plasticflaps{ - opacity = 1 - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/navbeacon{ - codes_txt = "delivery;dir=2"; - dir = 2; - freq = 1400; - location = "Tool Storage" - }, -/turf/open/floor/plasteel/delivery, -/area/storage/primary) -"bxu" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 1 - }, -/area/hallway/primary/central) -"bxv" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/blue/corner, -/area/hallway/primary/central) -"bxw" = ( -/obj/structure/cable/white{ - tag = "icon-0-2"; - icon_state = "0-2" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/bridge) -"bxx" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/obj/machinery/light/small{ - dir = 1 - }, -/obj/structure/sign/nanotrasen{ - pixel_x = 32; - pixel_y = 32 - }, -/obj/structure/sign/directions/engineering{ - desc = "A sign that shows there are doors here. There are doors everywhere!"; - icon_state = "doors"; - name = "WARNING: BLAST DOORS"; - pixel_x = 0; - pixel_y = 32; - tag = "icon-doors" - }, -/turf/open/floor/plasteel/darkblue/side{ - tag = "icon-darkblue (NORTH)"; - icon_state = "darkblue"; - dir = 1 - }, -/area/bridge) -"bxy" = ( -/obj/machinery/door/poddoor/preopen{ - id = "bridgedoors"; - name = "Bridge Access Blast door" - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/bridge) -"bxz" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1 - }, -/turf/open/floor/plasteel/darkblue/side{ - tag = "icon-darkblue (NORTH)"; - icon_state = "darkblue"; - dir = 1 - }, -/area/bridge) -"bxA" = ( -/obj/machinery/vending/cola, -/turf/open/floor/plasteel/darkblue/side{ - tag = "icon-darkblue (NORTH)"; - icon_state = "darkblue"; - dir = 1 - }, -/area/bridge) -"bxB" = ( -/obj/machinery/vending/snack, -/turf/open/floor/plasteel/darkblue/side{ - tag = "icon-darkblue (NORTH)"; - icon_state = "darkblue"; - dir = 1 - }, -/area/bridge) -"bxC" = ( -/turf/closed/wall, -/area/bridge) -"bxD" = ( -/obj/machinery/computer/security/mining, -/turf/open/floor/plasteel/darkpurple/side{ - tag = "icon-darkpurple (NORTH)"; - icon_state = "darkpurple"; - dir = 1 - }, -/area/bridge) -"bxE" = ( -/obj/machinery/computer/cargo/request, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/darkyellow/side{ - tag = "icon-darkyellow (NORTH)"; - icon_state = "darkyellow"; - dir = 1 - }, -/area/bridge) -"bxF" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/clipboard, -/obj/item/weapon/mining_voucher, -/turf/open/floor/plasteel/black, -/area/bridge) -"bxG" = ( -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = -26; - pixel_y = 26 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/bridge) -"bxH" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 2; - on = 1 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/bridge) -"bxI" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/item/device/radio/beacon, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/bridge) -"bxJ" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 2; - on = 1; - scrub_N2O = 1; - scrub_Toxins = 1 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/bridge) -"bxK" = ( -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = 26; - pixel_y = 26 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/bridge) -"bxL" = ( -/obj/structure/table/reinforced, -/obj/machinery/computer/security/telescreen{ - desc = "Used for watching the RD's goons and the AI's satellite from the safety of his office."; - name = "Research Monitor"; - network = list("RD","Sat"); - pixel_x = 0; - pixel_y = 2 - }, -/turf/open/floor/plasteel/black, -/area/bridge) -"bxM" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/modular_computer/console/preset/research, -/turf/open/floor/plasteel/darkpurple/side{ - tag = "icon-darkpurple (NORTH)"; - icon_state = "darkpurple"; - dir = 1 - }, -/area/bridge) -"bxN" = ( -/obj/machinery/computer/aifixer, -/turf/open/floor/plasteel/darkpurple/side{ - tag = "icon-darkpurple (NORTH)"; - icon_state = "darkpurple"; - dir = 1 - }, -/area/bridge) -"bxO" = ( -/obj/machinery/vending/coffee, -/turf/open/floor/plasteel/darkblue/side{ - tag = "icon-darkblue (NORTH)"; - icon_state = "darkblue"; - dir = 1 - }, -/area/bridge) -"bxP" = ( -/obj/machinery/vending/cigarette, -/turf/open/floor/plasteel/darkblue/side{ - tag = "icon-darkblue (NORTH)"; - icon_state = "darkblue"; - dir = 1 - }, -/area/bridge) -"bxQ" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/blue/corner{ - tag = "icon-bluecorner (WEST)"; - icon_state = "bluecorner"; - dir = 8 - }, -/area/hallway/primary/central) -"bxR" = ( -/obj/structure/cable/white, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/hallway/primary/central) -"bxS" = ( -/turf/open/floor/plasteel/vault{ - dir = 4 - }, -/area/security/nuke_storage) -"bxT" = ( -/obj/structure/closet/crate{ - name = "Gold Crate" - }, -/obj/item/weapon/storage/belt/champion, -/obj/item/stack/spacecash/c1000, -/obj/item/stack/spacecash/c1000, -/obj/item/stack/spacecash/c500, -/obj/machinery/airalarm{ - dir = 1; - icon_state = "alarm0"; - pixel_y = -22 - }, -/obj/machinery/light/small, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/security/nuke_storage) -"bxU" = ( -/obj/machinery/status_display{ - pixel_y = -32 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/security/nuke_storage) -"bxV" = ( -/obj/structure/safe, -/obj/item/clothing/neck/stethoscope, -/obj/item/weapon/book{ - desc = "An undeniably handy book."; - icon_state = "bookknock"; - name = "A Simpleton's Guide to Safe-cracking with Stethoscopes" - }, -/obj/item/stack/sheet/mineral/diamond, -/obj/item/stack/spacecash/c1000, -/obj/item/stack/spacecash/c1000, -/obj/item/stack/spacecash/c1000, -/obj/item/stack/spacecash/c1000, -/obj/item/stack/spacecash/c1000, -/obj/item/stack/spacecash/c500, -/obj/item/stack/spacecash/c500, -/obj/item/stack/spacecash/c500, -/obj/item/stack/spacecash/c500, -/obj/item/stack/spacecash/c500, -/obj/machinery/light/small, -/obj/item/weapon/gun/ballistic/automatic/pistol/m1911, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/security/nuke_storage) -"bxW" = ( -/obj/structure/shuttle/engine/heater, -/obj/structure/window/reinforced{ - dir = 1; - layer = 2.9 - }, -/turf/open/floor/plating/warnplate, -/area/shuttle/labor) -"bxX" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/red/side{ - dir = 8 - }, -/area/security/transfer) -"bxY" = ( -/turf/open/floor/plasteel/neutral, -/area/security/transfer) -"bxZ" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/neutral, -/area/security/transfer) -"bya" = ( -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = 26; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/red/side{ - dir = 4 - }, -/area/security/transfer) -"byb" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall/r_wall, -/area/security/transfer) -"byc" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/light/small, -/turf/open/floor/plasteel/red/side{ - dir = 8 - }, -/area/security/brig) -"byd" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel, -/area/security/brig) -"bye" = ( -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = 0; - pixel_y = -26 - }, -/obj/structure/extinguisher_cabinet{ - pixel_x = 26 - }, -/obj/machinery/atmospherics/pipe/manifold4w/scrubbers/hidden, -/turf/open/floor/plasteel/red/side{ - dir = 4 - }, -/area/security/brig) -"byf" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/security/main) -"byg" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/security/main) -"byh" = ( -/obj/structure/chair/office/dark{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/security/main) -"byi" = ( -/obj/structure/table/reinforced, -/obj/item/device/flashlight/lamp, -/obj/item/device/radio/intercom{ - anyai = 1; - broadcasting = 1; - freerange = 1; - frequency = 1424; - listening = 0; - name = "Interrogation Intercom"; - pixel_x = 0; - pixel_y = -24 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/camera{ - c_tag = "Security - Interrogation"; - dir = 1; - name = "security camera" - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/security/main) -"byj" = ( -/obj/structure/chair/office/dark{ - dir = 8 - }, -/obj/structure/sign/poster{ - icon_state = "poster16_legit"; - pixel_y = -32; - tag = "icon-poster16_legit" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/security/main) -"byk" = ( -/obj/structure/cable/white, -/obj/structure/grille, -/obj/structure/window/reinforced/tinted/fulltile, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/security/main) -"byl" = ( -/obj/structure/chair/office/dark{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/security/main) -"bym" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/security/main) -"byn" = ( -/obj/structure/table/wood, -/obj/item/weapon/folder/red, -/obj/item/weapon/pen, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/security/main) -"byo" = ( -/turf/open/floor/plasteel/vault{ - dir = 4 - }, -/area/ai_monitored/turret_protected/ai) -"byp" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/circuit/gcircuit, -/area/ai_monitored/turret_protected/ai) -"byq" = ( -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/ai_monitored/turret_protected/ai) -"byr" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "aicorewindow"; - name = "AI Core Shutters" - }, -/turf/open/floor/plating, -/area/ai_monitored/turret_protected/ai) -"bys" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/circuit/gcircuit, -/area/ai_monitored/turret_protected/ai) -"byt" = ( -/turf/open/floor/plasteel/vault{ - dir = 1 - }, -/area/ai_monitored/turret_protected/ai) -"byu" = ( -/turf/open/floor/plasteel/vault{ - dir = 1 - }, -/area/engine/gravity_generator) -"byv" = ( -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/engine/gravity_generator) -"byw" = ( -/turf/open/floor/plasteel/vault{ - dir = 4 - }, -/area/engine/gravity_generator) -"byx" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/engine/gravity_generator) -"byy" = ( -/obj/structure/cable/white, -/obj/structure/cable/white{ - d2 = 2; - icon_state = "0-2"; - tag = "icon-0-2" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/engine/gravity_generator) -"byz" = ( -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/engine/gravity_generator) -"byA" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4"; - tag = "90Curve" - }, -/turf/open/floor/plasteel/neutral, -/area/engine/gravity_generator) -"byB" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/engine/gravity_generator) -"byC" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/turf/open/floor/plasteel/bot, -/area/engine/gravity_generator) -"byD" = ( -/obj/structure/sign/radiation, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/closed/wall/r_wall, -/area/engine/gravity_generator) -"byE" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/airalarm{ - pixel_y = 23 - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/obj/machinery/camera{ - c_tag = "Engineering - Gravity Generator Foyer"; - dir = 4; - name = "engineering camera" - }, -/turf/open/floor/plasteel/warning{ - dir = 9 - }, -/area/engine/gravity_generator) -"byF" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/delivery, -/area/engine/gravity_generator) -"byG" = ( -/obj/structure/closet/radiation, -/obj/machinery/light/small{ - dir = 1 - }, -/obj/structure/extinguisher_cabinet{ - pixel_x = 26 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/warning{ - dir = 5 - }, -/area/engine/gravity_generator) -"byH" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/closed/wall, -/area/engine/break_room) -"byI" = ( -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plating, -/area/engine/break_room) -"byJ" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass_command{ - cyclelinkeddir = 0; - name = "Power Tools Storage"; - req_access_txt = "19" - }, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (EAST)"; - icon_state = "plasteel_warn_side"; - dir = 4 - }, -/area/engine/break_room) -"byK" = ( -/obj/structure/cable/white{ - tag = "icon-0-2"; - icon_state = "0-2" - }, -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/structure/cable/white, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plating, -/area/engine/break_room) -"byL" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass_command{ - cyclelinkeddir = 0; - name = "Power Tools Storage"; - req_access_txt = "19" - }, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (EAST)"; - icon_state = "plasteel_warn_side"; - dir = 4 - }, -/area/engine/break_room) -"byM" = ( -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/open/floor/plating, -/area/engine/break_room) -"byN" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/warning/side, -/area/engine/break_room) -"byO" = ( -/obj/machinery/firealarm{ - pixel_y = 24 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/delivery, -/area/engine/break_room) -"byP" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/yellow/side{ - dir = 9 - }, -/area/engine/break_room) -"byQ" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plasteel/yellow/side{ - dir = 1 - }, -/area/engine/break_room) -"byR" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/yellow/side{ - dir = 1 - }, -/area/engine/break_room) -"byS" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/obj/machinery/light{ - dir = 1 - }, -/obj/machinery/power/apc{ - cell_type = 5000; - dir = 1; - name = "Engineering Foyer APC"; - pixel_x = 0; - pixel_y = 25 - }, -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/yellow/side{ - dir = 1 - }, -/area/engine/break_room) -"byT" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/caution{ - dir = 1 - }, -/area/engine/break_room) -"byU" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (EAST)"; - icon_state = "intact"; - dir = 4 - }, -/turf/open/floor/plasteel/caution{ - dir = 1 - }, -/area/engine/break_room) -"byV" = ( -/obj/machinery/airalarm{ - dir = 8; - icon_state = "alarm0"; - pixel_x = 24 - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plasteel/caution{ - dir = 5 - }, -/area/engine/break_room) -"byW" = ( -/obj/structure/table/reinforced, -/obj/item/device/flashlight/lamp, -/turf/open/floor/plasteel/caution{ - tag = "icon-caution (SOUTHWEST)"; - icon_state = "caution"; - dir = 10 - }, -/area/atmos) -"byX" = ( -/obj/machinery/computer/station_alert, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/airalarm{ - dir = 1; - icon_state = "alarm0"; - pixel_y = -22 - }, -/turf/open/floor/plasteel/caution, -/area/atmos) -"byY" = ( -/obj/machinery/computer/atmos_alert, -/obj/machinery/light, -/obj/machinery/newscaster{ - pixel_y = -32 - }, -/turf/open/floor/plasteel/caution, -/area/atmos) -"byZ" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/folder/yellow, -/obj/item/weapon/pen, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = 0; - pixel_y = -26 - }, -/turf/open/floor/plasteel/caution, -/area/atmos) -"bza" = ( -/obj/structure/table/reinforced, -/obj/effect/decal/cleanable/dirt, -/obj/item/weapon/paper_bin, -/obj/item/weapon/pen, -/obj/machinery/status_display{ - pixel_y = -32 - }, -/obj/machinery/requests_console{ - department = "Atmospherics Office"; - departmentType = 0; - name = "Atmospherics RC"; - pixel_x = 30; - pixel_y = 0 - }, -/obj/structure/extinguisher_cabinet{ - pixel_x = 26; - pixel_y = -32 - }, -/turf/open/floor/plasteel/caution{ - dir = 6 - }, -/area/atmos) -"bzb" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/port) -"bzc" = ( -/obj/structure/table/reinforced, -/obj/item/device/healthanalyzer, -/obj/item/stack/cable_coil/white{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/stack/cable_coil/white, -/obj/item/device/healthanalyzer, -/obj/machinery/light{ - dir = 8 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/storage/tech) -"bzd" = ( -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/storage/tech) -"bze" = ( -/turf/open/floor/plasteel/neutral, -/area/storage/tech) -"bzf" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral, -/area/storage/tech) -"bzg" = ( -/turf/open/floor/plasteel/neutral/side{ - dir = 8 - }, -/area/storage/tech) -"bzh" = ( -/obj/structure/table/reinforced, -/obj/item/device/aicard, -/obj/machinery/light{ - icon_state = "tube1"; - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/storage/tech) -"bzi" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall, -/area/storage/primary) -"bzj" = ( -/obj/structure/table/reinforced, -/obj/item/device/analyzer, -/obj/item/device/analyzer, -/obj/item/device/assembly/signaler, -/obj/item/device/assembly/signaler, -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/turf/open/floor/plasteel/bot, -/area/storage/primary) -"bzk" = ( -/obj/structure/reagent_dispensers/watertank, -/obj/structure/sign/poster{ - icon_state = "poster22_legit"; - pixel_y = 32; - tag = "icon-poster22_legit" - }, -/turf/open/floor/plasteel/delivery, -/area/storage/primary) -"bzl" = ( -/obj/machinery/disposal/bin, -/obj/machinery/requests_console{ - department = "Primary Tool Storage"; - departmentType = 0; - name = "Primary Tool Storage RC"; - pixel_x = 0; - pixel_y = 32 - }, -/obj/structure/disposalpipe/trunk, -/turf/open/floor/plasteel/bot, -/area/storage/primary) -"bzm" = ( -/turf/open/floor/plasteel/bot, -/area/storage/primary) -"bzn" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/delivery, -/area/storage/primary) -"bzo" = ( -/obj/item/clothing/suit/hazardvest{ - desc = "A high-visibility lifejacket complete with whistle and slot for oxygen tanks."; - name = "emergency lifejacket" - }, -/obj/item/clothing/suit/hazardvest{ - desc = "A high-visibility lifejacket complete with whistle and slot for oxygen tanks."; - name = "emergency lifejacket" - }, -/obj/item/clothing/suit/hazardvest{ - desc = "A high-visibility lifejacket complete with whistle and slot for oxygen tanks."; - name = "emergency lifejacket" - }, -/obj/item/clothing/suit/hazardvest{ - desc = "A high-visibility lifejacket complete with whistle and slot for oxygen tanks."; - name = "emergency lifejacket" - }, -/obj/item/clothing/suit/hazardvest{ - desc = "A high-visibility lifejacket complete with whistle and slot for oxygen tanks."; - name = "emergency lifejacket" - }, -/obj/item/weapon/tank/internals/emergency_oxygen/double{ - pixel_x = 3 - }, -/obj/item/weapon/tank/internals/emergency_oxygen/double{ - pixel_x = 3 - }, -/obj/item/weapon/tank/internals/emergency_oxygen/double{ - pixel_x = 3 - }, -/obj/item/weapon/tank/internals/emergency_oxygen/double{ - pixel_x = 3 - }, -/obj/item/weapon/tank/internals/emergency_oxygen/double{ - pixel_x = 3 - }, -/obj/item/clothing/mask/breath{ - pixel_x = -3; - pixel_y = -3 - }, -/obj/item/clothing/mask/breath{ - pixel_x = -3; - pixel_y = -3 - }, -/obj/item/clothing/mask/breath{ - pixel_x = -3; - pixel_y = -3 - }, -/obj/item/clothing/mask/breath{ - pixel_x = -3; - pixel_y = -3 - }, -/obj/item/clothing/mask/breath{ - pixel_x = -3; - pixel_y = -3 - }, -/obj/item/clothing/head/hardhat/orange{ - name = "protective hat"; - pixel_y = 9 - }, -/obj/item/clothing/head/hardhat/orange{ - name = "protective hat"; - pixel_y = 9 - }, -/obj/item/clothing/head/hardhat/orange{ - name = "protective hat"; - pixel_y = 9 - }, -/obj/item/clothing/head/hardhat/orange{ - name = "protective hat"; - pixel_y = 9 - }, -/obj/item/clothing/head/hardhat/orange{ - name = "protective hat"; - pixel_y = 9 - }, -/obj/structure/closet/crate/internals, -/obj/structure/window/reinforced{ - dir = 4 - }, -/turf/open/floor/plasteel/bot, -/area/storage/primary) -"bzp" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/storage/belt/utility, -/obj/item/weapon/weldingtool, -/obj/item/clothing/head/welding, -/obj/machinery/newscaster{ - pixel_y = 32 - }, -/turf/open/floor/plasteel/bot, -/area/storage/primary) -"bzq" = ( -/obj/structure/table/reinforced, -/obj/item/device/assembly/igniter, -/obj/item/device/assembly/igniter, -/obj/item/device/assembly/igniter, -/obj/effect/spawner/lootdrop/maintenance, -/obj/machinery/light{ - dir = 1 - }, -/turf/open/floor/plasteel/bot, -/area/storage/primary) -"bzr" = ( -/obj/machinery/status_display, -/turf/closed/wall, -/area/storage/primary) -"bzs" = ( -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/effect/landmark{ - name = "lightsout" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/central) -"bzt" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/blue/corner, -/area/hallway/primary/central) -"bzu" = ( -/obj/machinery/door/firedoor, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/door/airlock/glass_command{ - cyclelinkeddir = 0; - name = "Bridge Access"; - req_access_txt = "19" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/bridge) -"bzv" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/bridge) -"bzw" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/door/poddoor/preopen{ - id = "bridgedoors"; - name = "Bridge Access Blast door" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/bridge) -"bzx" = ( -/obj/machinery/door/firedoor, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/door/airlock/glass_command{ - cyclelinkeddir = 0; - name = "Bridge Access"; - req_access_txt = "19" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/bridge) -"bzy" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/bridge) -"bzz" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/bridge) -"bzA" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/machinery/light{ - dir = 1 - }, -/obj/machinery/newscaster{ - pixel_y = 32 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/bridge) -"bzB" = ( -/obj/structure/chair/office/dark{ - dir = 4 - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/bridge) -"bzC" = ( -/obj/structure/chair/office/dark{ - dir = 1 - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/bridge) -"bzD" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/darkblue/corner, -/area/bridge) -"bzE" = ( -/obj/structure/window/reinforced, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/darkblue/side, -/area/bridge) -"bzF" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/door/window/brigdoor/southright{ - name = "Command Chair"; - req_access_txt = "19" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plasteel/darkblue/side, -/area/bridge) -"bzG" = ( -/obj/structure/window/reinforced, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/darkblue/side, -/area/bridge) -"bzH" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/open/floor/plasteel/darkblue/corner{ - dir = 8 - }, -/area/bridge) -"bzI" = ( -/obj/structure/chair/office/dark{ - dir = 1 - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/bridge) -"bzJ" = ( -/obj/structure/chair/office/dark{ - dir = 1 - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/bridge) -"bzK" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 2; - on = 1 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/bridge) -"bzL" = ( -/obj/machinery/door/firedoor, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/door/airlock/glass_command{ - cyclelinkeddir = 0; - name = "Bridge Access"; - req_access_txt = "19" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/bridge) -"bzM" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/door/poddoor/preopen{ - id = "bridgedoors"; - name = "Bridge Access Blast door" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/bridge) -"bzN" = ( -/obj/machinery/door/firedoor, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/door/airlock/glass_command{ - cyclelinkeddir = 0; - name = "Bridge Access"; - req_access_txt = "19" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/bridge) -"bzO" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plasteel/blue/corner{ - tag = "icon-bluecorner (WEST)"; - icon_state = "bluecorner"; - dir = 8 - }, -/area/hallway/primary/central) -"bzP" = ( -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/central) -"bzQ" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment, -/obj/machinery/camera{ - c_tag = "Central Hallway - Bridge Starboard"; - dir = 8; - name = "hallway camera" - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 4 - }, -/area/hallway/primary/central) -"bzR" = ( -/obj/structure/shuttle/engine/propulsion, -/turf/open/floor/plating/warnplate, -/area/shuttle/labor) -"bzS" = ( -/turf/closed/wall, -/area/security/transfer) -"bzT" = ( -/obj/structure/closet/emcloset, -/obj/machinery/firealarm{ - dir = 1; - pixel_x = -32; - pixel_y = -26 - }, -/obj/structure/sign/electricshock{ - pixel_x = -32 - }, -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/obj/machinery/button/door{ - desc = "A remote control switch."; - id = "gulagdoor"; - name = "Transfer Door Control"; - normaldoorcontrol = 1; - pixel_x = -24; - pixel_y = -40 - }, -/turf/open/floor/plasteel/warning{ - dir = 10 - }, -/area/security/transfer) -"bzU" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/sortjunction{ - dir = 8; - icon_state = "pipe-j1s"; - name = "HoS Junction"; - sortType = 8 - }, -/turf/open/floor/plasteel/red/side{ - dir = 10 - }, -/area/security/transfer) -"bzV" = ( -/obj/structure/chair{ - dir = 1 - }, -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/red/side, -/area/security/transfer) -"bzW" = ( -/obj/structure/chair{ - dir = 1 - }, -/obj/structure/sign/poster{ - icon_state = "poster17_legit"; - pixel_x = 0; - pixel_y = -32; - tag = "icon-poster17_legit" - }, -/obj/machinery/camera{ - c_tag = "Security - Transfer Centre Aft"; - dir = 1; - name = "security camera" - }, -/turf/open/floor/plasteel/red/side, -/area/security/transfer) -"bzX" = ( -/obj/structure/chair{ - dir = 1 - }, -/obj/machinery/airalarm{ - dir = 1; - icon_state = "alarm0"; - pixel_y = -22 - }, -/turf/open/floor/plasteel/red/side, -/area/security/transfer) -"bzY" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/obj/structure/extinguisher_cabinet{ - pixel_x = 26 - }, -/turf/open/floor/plasteel/red/side{ - dir = 6 - }, -/area/security/transfer) -"bzZ" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/closed/wall, -/area/security/brig) -"bAa" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/door/airlock/security{ - name = "Brig"; - req_access_txt = "63" - }, -/obj/structure/sign/poster{ - icon_state = "poster2_legit"; - pixel_x = -32; - tag = "icon-poster2_legit" - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel, -/area/security/brig) -"bAb" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall, -/area/security/brig) -"bAc" = ( -/obj/item/device/radio/intercom{ - anyai = 1; - freerange = 1; - listening = 0; - name = "Custom Channel"; - pixel_x = -10; - pixel_y = 22 - }, -/obj/item/device/radio/intercom{ - broadcasting = 0; - freerange = 1; - listening = 1; - name = "Common Channel"; - pixel_x = -27; - pixel_y = 0 - }, -/obj/item/device/radio/intercom{ - anyai = 1; - broadcasting = 0; - freerange = 1; - frequency = 1447; - name = "Private Channel"; - pixel_x = -10; - pixel_y = -25 - }, -/obj/machinery/door/window{ - base_state = "rightsecure"; - dir = 4; - icon_state = "rightsecure"; - layer = 4.1; - name = "Secondary AI Core Access"; - pixel_x = 4; - req_access_txt = "16" - }, -/obj/effect/landmark{ - name = "tripai" - }, -/turf/open/floor/greengrid, -/area/ai_monitored/turret_protected/ai) -"bAd" = ( -/obj/machinery/holopad, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/ai_monitored/turret_protected/ai) -"bAe" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/ai_slipper{ - icon_state = "motion0"; - uses = 10 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/circuit/gcircuit, -/area/ai_monitored/turret_protected/ai) -"bAf" = ( -/obj/machinery/turretid{ - icon_state = "control_stun"; - name = "AI Chamber turret control"; - pixel_x = 3; - pixel_y = -23 - }, -/obj/machinery/door/window{ - base_state = "leftsecure"; - dir = 8; - icon_state = "leftsecure"; - name = "Primary AI Core Access"; - req_access_txt = "16" - }, -/obj/machinery/newscaster/security_unit{ - pixel_x = 4; - pixel_y = 33 - }, -/turf/open/floor/plasteel/vault{ - dir = 6 - }, -/area/ai_monitored/turret_protected/ai) -"bAg" = ( -/obj/machinery/requests_console{ - department = "AI"; - departmentType = 5; - name = "AI RC"; - pixel_x = 30; - pixel_y = 30 - }, -/obj/machinery/ai_slipper{ - icon_state = "motion0"; - uses = 10 - }, -/obj/machinery/flasher{ - id = "AI"; - pixel_x = 23; - pixel_y = -23 - }, -/turf/open/floor/plasteel/vault, -/area/ai_monitored/turret_protected/ai) -"bAh" = ( -/obj/machinery/door/window{ - base_state = "rightsecure"; - dir = 4; - icon_state = "rightsecure"; - name = "Primary AI Core Access"; - req_access_txt = "16" - }, -/turf/open/floor/plasteel/vault{ - dir = 10 - }, -/area/ai_monitored/turret_protected/ai) -"bAi" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/ai_slipper{ - icon_state = "motion0"; - uses = 10 - }, -/turf/open/floor/plasteel/circuit/gcircuit, -/area/ai_monitored/turret_protected/ai) -"bAj" = ( -/obj/item/device/radio/intercom{ - anyai = 1; - freerange = 1; - listening = 0; - name = "Custom Channel"; - pixel_x = 10; - pixel_y = 22 - }, -/obj/item/device/radio/intercom{ - broadcasting = 0; - freerange = 1; - listening = 1; - name = "Common Channel"; - pixel_x = 27; - pixel_y = 0 - }, -/obj/item/device/radio/intercom{ - anyai = 1; - broadcasting = 0; - freerange = 1; - frequency = 1447; - name = "Private Channel"; - pixel_x = 10; - pixel_y = -25 - }, -/obj/machinery/door/window{ - base_state = "leftsecure"; - dir = 8; - icon_state = "leftsecure"; - layer = 4.1; - name = "Tertiary AI Core Access"; - pixel_x = -3; - req_access_txt = "16" - }, -/obj/effect/landmark{ - name = "tripai" - }, -/turf/open/floor/greengrid, -/area/ai_monitored/turret_protected/ai) -"bAk" = ( -/obj/machinery/light{ - dir = 8 - }, -/obj/structure/sign/radiation{ - pixel_x = -32 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/engine/gravity_generator) -"bAl" = ( -/turf/open/floor/plasteel/circuit/gcircuit, -/area/engine/gravity_generator) -"bAm" = ( -/obj/machinery/door/firedoor, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/machinery/door/airlock/glass_command{ - name = "Gravity Generator Chamber"; - req_access_txt = "19; 61" - }, -/turf/open/floor/plasteel/warning/side, -/area/engine/gravity_generator) -"bAn" = ( -/obj/machinery/holopad, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/bot, -/area/engine/gravity_generator) -"bAo" = ( -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/engine/gravity_generator) -"bAp" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/delivery, -/area/engine/gravity_generator) -"bAq" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/highsecurity{ - name = "Gravity Generator Room"; - req_access_txt = "19;23" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/warning/side, -/area/engine/gravity_generator) -"bAr" = ( -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/delivery, -/area/engine/gravity_generator) -"bAs" = ( -/obj/machinery/holopad, -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/bot, -/area/engine/gravity_generator) -"bAt" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHEAST)"; - icon_state = "intact"; - dir = 6 - }, -/turf/open/floor/plasteel/delivery, -/area/engine/gravity_generator) -"bAu" = ( -/obj/machinery/door/firedoor, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/door/airlock/highsecurity{ - name = "Gravity Generator Foyer"; - req_access_txt = "10" - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/warning/side, -/area/engine/break_room) -"bAv" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/warning/end{ - tag = "icon-plasteel_warn_end (WEST)"; - icon_state = "plasteel_warn_end"; - dir = 8 - }, -/area/engine/break_room) -"bAw" = ( -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (EAST)"; - icon_state = "plasteel_warn_side"; - dir = 4 - }, -/area/engine/break_room) -"bAx" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (EAST)"; - icon_state = "plasteel_warn_side"; - dir = 4 - }, -/area/engine/break_room) -"bAy" = ( -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (EAST)"; - icon_state = "plasteel_warn_side"; - dir = 4 - }, -/area/engine/break_room) -"bAz" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/warning/end{ - tag = "icon-plasteel_warn_end (EAST)"; - icon_state = "plasteel_warn_end"; - dir = 4 - }, -/area/engine/break_room) -"bAA" = ( -/obj/machinery/door/firedoor, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/door/airlock/highsecurity{ - name = "Engineering Heavy-Equipment Storage"; - req_access_txt = "32" - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/warning/side, -/area/engine/break_room) -"bAB" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers, -/turf/open/floor/plasteel/warning/side, -/area/engine/break_room) -"bAC" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/delivery, -/area/engine/break_room) -"bAD" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/yellow/side{ - dir = 8 - }, -/area/engine/break_room) -"bAE" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/neutral, -/area/engine/break_room) -"bAF" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/neutral, -/area/engine/break_room) -"bAG" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/engine/break_room) -"bAH" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/turf/open/floor/plasteel/neutral, -/area/engine/break_room) -"bAI" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/caution{ - dir = 4 - }, -/area/engine/break_room) -"bAJ" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHEAST)"; - icon_state = "intact"; - dir = 6 - }, -/turf/closed/wall/r_wall, -/area/atmos) -"bAK" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/closed/wall/r_wall, -/area/atmos) -"bAL" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/port) -"bAM" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHWEST)"; - icon_state = "intact"; - dir = 10 - }, -/turf/open/floor/plasteel/yellow/corner{ - dir = 4 - }, -/area/hallway/primary/port) -"bAN" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/obj/machinery/status_display{ - pixel_x = -32 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/storage/tech) -"bAO" = ( -/obj/structure/rack, -/obj/item/weapon/circuitboard/computer/scan_consolenew{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/weapon/circuitboard/computer/med_data, -/obj/item/weapon/circuitboard/computer/pandemic{ - pixel_x = 3; - pixel_y = -3 - }, -/turf/open/floor/plasteel/bot, -/area/storage/tech) -"bAP" = ( -/obj/structure/rack, -/obj/item/weapon/circuitboard/computer/aifixer{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/weapon/circuitboard/computer/rdconsole, -/obj/item/weapon/circuitboard/machine/rdserver{ - pixel_x = 3; - pixel_y = -3 - }, -/turf/open/floor/plasteel/bot, -/area/storage/tech) -"bAQ" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/obj/machinery/ai_status_display{ - pixel_x = 32 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/storage/tech) -"bAR" = ( -/obj/structure/table/reinforced, -/obj/item/stack/rods{ - amount = 25 - }, -/obj/item/stack/cable_coil/white{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/stack/cable_coil/white, -/obj/machinery/power/apc{ - dir = 8; - name = "Primary Tool Storage APC"; - pixel_x = -26; - pixel_y = 3 - }, -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/turf/open/floor/plasteel/bot, -/area/storage/primary) -"bAS" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/yellow/side{ - dir = 9 - }, -/area/storage/primary) -"bAT" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/yellow/side{ - dir = 1 - }, -/area/storage/primary) -"bAU" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/yellow/side{ - dir = 1 - }, -/area/storage/primary) -"bAV" = ( -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/yellow/side{ - dir = 1 - }, -/area/storage/primary) -"bAW" = ( -/turf/open/floor/plasteel/yellow/side{ - dir = 1 - }, -/area/storage/primary) -"bAX" = ( -/turf/open/floor/plasteel/yellow/side{ - dir = 5 - }, -/area/storage/primary) -"bAY" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/crowbar, -/obj/item/weapon/wrench, -/obj/item/device/gps, -/turf/open/floor/plasteel/bot, -/area/storage/primary) -"bAZ" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/storage/primary) -"bBa" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/yellow/corner{ - dir = 1 - }, -/area/hallway/primary/central) -"bBb" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/blue/corner, -/area/hallway/primary/central) -"bBc" = ( -/obj/machinery/door/firedoor, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/door/airlock/glass_command{ - cyclelinkeddir = 0; - name = "Bridge Access"; - req_access_txt = "19" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/bridge) -"bBd" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/bridge) -"bBe" = ( -/obj/machinery/door/poddoor/preopen{ - id = "bridgedoors"; - name = "Bridge Access Blast door" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/sortjunction{ - dir = 1; - icon_state = "pipe-j1s"; - name = "HoP Junction"; - sortType = 15; - tag = "icon-pipe-j1s (NORTH)" - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/bridge) -"bBf" = ( -/obj/machinery/door/firedoor, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/door/airlock/glass_command{ - cyclelinkeddir = 0; - name = "Bridge Access"; - req_access_txt = "19" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/bridge) -"bBg" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/bridge) -"bBh" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_Toxins = 0 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/bridge) -"bBi" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/bridge) -"bBj" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/bridge) -"bBk" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/bridge) -"bBl" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/darkblue/side{ - dir = 9 - }, -/area/bridge) -"bBm" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/open/floor/plasteel/darkblue/side{ - tag = "icon-darkblue (NORTH)"; - icon_state = "darkblue"; - dir = 1 - }, -/area/bridge) -"bBn" = ( -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/structure/table/wood, -/obj/item/weapon/restraints/handcuffs, -/obj/item/device/assembly/flash/handheld, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/grimy, -/area/bridge) -"bBo" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/grimy, -/area/bridge) -"bBp" = ( -/obj/machinery/computer/communications, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/grimy, -/area/bridge) -"bBq" = ( -/obj/structure/table/wood, -/obj/machinery/computer/security/wooden_tv, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plasteel/grimy, -/area/bridge) -"bBr" = ( -/obj/structure/table/wood, -/obj/structure/window/reinforced{ - dir = 4 - }, -/obj/item/device/flashlight/lamp, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/grimy, -/area/bridge) -"bBs" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/darkblue/side{ - tag = "icon-darkblue (NORTH)"; - icon_state = "darkblue"; - dir = 1 - }, -/area/bridge) -"bBt" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/darkblue/side{ - dir = 5 - }, -/area/bridge) -"bBu" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/bridge) -"bBv" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/bridge) -"bBw" = ( -/obj/machinery/door/poddoor/preopen{ - id = "bridgedoors"; - name = "Bridge Access Blast door" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/bridge) -"bBx" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/blue/corner{ - tag = "icon-bluecorner (WEST)"; - icon_state = "bluecorner"; - dir = 8 - }, -/area/hallway/primary/central) -"bBy" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/central) -"bBz" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral/corner{ - dir = 4 - }, -/area/hallway/primary/central) -"bBA" = ( -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plating, -/area/security/transfer) -"bBB" = ( -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/machinery/door/airlock/glass_security{ - id_tag = "gulagdoor"; - name = "Security Transfering Center"; - req_access_txt = "63" - }, -/turf/open/floor/plasteel/red/side{ - dir = 1 - }, -/area/security/transfer) -"bBC" = ( -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plating, -/area/security/transfer) -"bBD" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel, -/area/security/brig) -"bBE" = ( -/obj/machinery/disposal/bin, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/light/small{ - dir = 1 - }, -/obj/structure/disposalpipe/trunk, -/turf/open/floor/plasteel/bot, -/area/security/brig) -"bBF" = ( -/turf/closed/wall/r_wall, -/area/security/warden) -"bBG" = ( -/obj/structure/closet{ - name = "Evidence Closet" - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/security/warden) -"bBH" = ( -/obj/structure/closet{ - name = "Evidence Closet" - }, -/obj/machinery/light{ - dir = 1 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/security/warden) -"bBI" = ( -/obj/structure/closet/secure_closet{ - anchored = 1; - name = "Secure Evidence Closet"; - req_access_txt = "0"; - req_one_access_txt = "3,4" - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/security/warden) -"bBJ" = ( -/obj/structure/cable/white{ - tag = "icon-0-2"; - icon_state = "0-2" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/warden) -"bBK" = ( -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_y = 26 - }, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/security/warden) -"bBL" = ( -/obj/machinery/suit_storage_unit/security, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/security/warden) -"bBM" = ( -/obj/machinery/light{ - icon_state = "tube1"; - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/ai_monitored/turret_protected/ai) -"bBN" = ( -/obj/item/device/radio/intercom{ - broadcasting = 0; - freerange = 1; - listening = 1; - name = "Common Channel"; - pixel_x = -27; - pixel_y = -7 - }, -/obj/item/device/radio/intercom{ - anyai = 1; - freerange = 1; - listening = 0; - name = "Custom Channel"; - pixel_x = 0; - pixel_y = -27 - }, -/obj/item/device/radio/intercom{ - anyai = 1; - broadcasting = 0; - freerange = 1; - frequency = 1447; - name = "Private Channel"; - pixel_x = 27; - pixel_y = -7 - }, -/obj/machinery/button/door{ - id = "aicorewindow"; - name = "AI Core Shutters"; - pixel_x = 24; - pixel_y = -22; - req_access_txt = "16" - }, -/obj/machinery/button/door{ - id = "aicoredoor"; - name = "AI Chamber Access Control"; - pixel_x = -23; - pixel_y = -23; - req_access_txt = "16" - }, -/obj/effect/landmark/start{ - name = "AI" - }, -/turf/open/floor/greengrid, -/area/ai_monitored/turret_protected/ai) -"bBO" = ( -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/ai_monitored/turret_protected/ai) -"bBP" = ( -/obj/structure/window/reinforced{ - dir = 4; - pixel_x = 0 - }, -/obj/structure/window/reinforced{ - dir = 4; - pixel_x = 0 - }, -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/construction/hallway{ - name = "\improper MiniSat Exterior" - }) -"bBQ" = ( -/obj/machinery/gravity_generator/main/station, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/engine/gravity_generator) -"bBR" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 2; - on = 1; - scrub_N2O = 1; - scrub_Toxins = 1 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/engine/gravity_generator) -"bBS" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/engine/gravity_generator) -"bBT" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/neutral, -/area/engine/gravity_generator) -"bBU" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/engine/gravity_generator) -"bBV" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/power/port_gen/pacman, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/bot, -/area/engine/gravity_generator) -"bBW" = ( -/obj/structure/sign/radiation, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/closed/wall/r_wall, -/area/engine/gravity_generator) -"bBX" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/warning{ - dir = 10 - }, -/area/engine/gravity_generator) -"bBY" = ( -/obj/machinery/status_display{ - pixel_x = 32; - pixel_y = -32 - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plasteel/delivery, -/area/engine/gravity_generator) -"bBZ" = ( -/obj/structure/closet/radiation, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHWEST)"; - icon_state = "intact"; - dir = 9 - }, -/obj/machinery/light/small, -/turf/open/floor/plasteel/warning{ - dir = 6 - }, -/area/engine/gravity_generator) -"bCa" = ( -/obj/machinery/firealarm{ - dir = 8; - pixel_x = -24; - pixel_y = 0 - }, -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/turf/open/floor/plasteel/delivery, -/area/engine/break_room) -"bCb" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/obj/machinery/camera{ - c_tag = "Engineering - Power Tools"; - dir = 1; - name = "engineering camera" - }, -/turf/open/floor/plasteel/caution, -/area/engine/break_room) -"bCc" = ( -/obj/machinery/light, -/turf/open/floor/plasteel/caution, -/area/engine/break_room) -"bCd" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/caution, -/area/engine/break_room) -"bCe" = ( -/obj/machinery/firealarm{ - dir = 4; - icon_state = "fire0"; - pixel_x = 24; - pixel_y = 0; - tag = "icon-fire0 (EAST)" - }, -/obj/machinery/airalarm{ - dir = 1; - icon_state = "alarm0"; - pixel_y = -22 - }, -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/turf/open/floor/plasteel/delivery, -/area/engine/break_room) -"bCf" = ( -/turf/open/floor/plasteel/warning/side, -/area/engine/break_room) -"bCg" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/disposalpipe/junction{ - icon_state = "pipe-j2"; - dir = 2 - }, -/turf/open/floor/plasteel/yellow/side{ - dir = 8 - }, -/area/engine/break_room) -"bCh" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/engine/break_room) -"bCi" = ( -/obj/structure/chair/stool/bar, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/engine/break_room) -"bCj" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/engine/break_room) -"bCk" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/engine/break_room) -"bCl" = ( -/obj/machinery/status_display{ - pixel_x = 32; - pixel_y = 32 - }, -/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/caution/corner{ - dir = 4 - }, -/area/engine/break_room) -"bCm" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/yellow/side{ - dir = 1; - icon_state = "yellow"; - initial_gas_mix = "o2=22;n2=82;TEMP=293.15"; - tag = "icon-yellow (NORTH)" - }, -/area/engine/break_room) -"bCn" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/obj/machinery/firealarm{ - dir = 4; - icon_state = "fire0"; - pixel_x = 24; - pixel_y = 0; - tag = "icon-fire0 (EAST)" - }, -/obj/machinery/light_switch{ - pixel_y = 26 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/yellow/side{ - dir = 5 - }, -/area/engine/break_room) -"bCo" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/closed/wall, -/area/engine/break_room) -"bCp" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/closet/emcloset, -/turf/open/floor/plasteel/warning{ - dir = 9 - }, -/area/engine/break_room) -"bCq" = ( -/obj/machinery/light{ - dir = 1 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/engine/break_room) -"bCr" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/warning{ - dir = 5 - }, -/area/engine/break_room) -"bCs" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/cable/white{ - tag = "icon-0-2"; - icon_state = "0-2" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/engine/break_room) -"bCt" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/yellow/corner{ - dir = 1 - }, -/area/hallway/primary/port) -"bCu" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/port) -"bCv" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/yellow/corner{ - dir = 4 - }, -/area/hallway/primary/port) -"bCw" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/stock_parts/cell/high, -/obj/item/weapon/stock_parts/cell/high, -/obj/machinery/cell_charger, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/storage/tech) -"bCx" = ( -/obj/structure/rack, -/obj/item/weapon/circuitboard/computer/cloning{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/weapon/circuitboard/machine/clonescanner, -/obj/item/weapon/circuitboard/machine/clonepod{ - pixel_x = 3; - pixel_y = -3 - }, -/turf/open/floor/plasteel/bot, -/area/storage/tech) -"bCy" = ( -/obj/structure/rack, -/obj/item/weapon/circuitboard/machine/destructive_analyzer{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/weapon/circuitboard/machine/protolathe, -/obj/item/weapon/circuitboard/machine/mechfab, -/obj/item/weapon/circuitboard/machine/circuit_imprinter{ - pixel_x = 3; - pixel_y = -3 - }, -/turf/open/floor/plasteel/bot, -/area/storage/tech) -"bCz" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/stock_parts/matter_bin{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/stock_parts/matter_bin, -/obj/item/weapon/stock_parts/micro_laser, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = 26; - pixel_y = 0 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/storage/tech) -"bCA" = ( -/obj/structure/rack, -/obj/item/weapon/airlock_painter, -/obj/item/device/toner, -/obj/machinery/status_display{ - pixel_x = -32 - }, -/turf/open/floor/plasteel/bot, -/area/storage/primary) -"bCB" = ( -/turf/open/floor/plasteel/yellow/side{ - dir = 8 - }, -/area/storage/primary) -"bCC" = ( -/turf/open/floor/plasteel/neutral, -/area/storage/primary) -"bCD" = ( -/obj/machinery/holopad, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/bot, -/area/storage/primary) -"bCE" = ( -/turf/open/floor/plasteel/yellow/side{ - dir = 4 - }, -/area/storage/primary) -"bCF" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/turf/open/floor/plasteel/bot, -/area/storage/primary) -"bCG" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/central) -"bCH" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/blue/corner, -/area/hallway/primary/central) -"bCI" = ( -/obj/structure/cable/white, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plating, -/area/bridge) -"bCJ" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/obj/structure/sign/nanotrasen{ - pixel_x = 32; - pixel_y = -32 - }, -/obj/machinery/light/small, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/darkblue/side, -/area/bridge) -"bCK" = ( -/obj/machinery/door/poddoor/preopen{ - id = "bridgedoors"; - name = "Bridge Access Blast door" - }, -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/bridge) -"bCL" = ( -/obj/structure/cable/white, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/bridge) -"bCM" = ( -/obj/machinery/light_switch{ - pixel_x = -7; - pixel_y = -26 - }, -/turf/open/floor/plasteel/darkblue/side, -/area/bridge) -"bCN" = ( -/turf/open/floor/plasteel/darkblue/side, -/area/bridge) -"bCO" = ( -/obj/structure/extinguisher_cabinet{ - pixel_y = -32 - }, -/turf/open/floor/plasteel/darkblue/side, -/area/bridge) -"bCP" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/darkblue/side, -/area/bridge) -"bCQ" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/camera{ - c_tag = "Bridge - Port"; - dir = 1; - name = "command camera" - }, -/turf/open/floor/plasteel/darkblue/side, -/area/bridge) -"bCR" = ( -/obj/structure/cable/white, -/obj/machinery/power/apc{ - dir = 2; - name = "Bridge APC"; - pixel_y = -26 - }, -/turf/open/floor/plasteel/darkblue/side, -/area/bridge) -"bCS" = ( -/obj/structure/fireaxecabinet{ - pixel_y = -28 - }, -/turf/open/floor/plasteel/darkblue/side, -/area/bridge) -"bCT" = ( -/turf/open/floor/plasteel/darkblue/side{ - dir = 8 - }, -/area/bridge) -"bCU" = ( -/obj/structure/rack, -/obj/machinery/light/small, -/obj/item/device/aicard, -/obj/item/weapon/storage/secure/briefcase, -/turf/open/floor/plasteel/vault{ - tag = "icon-vault (WEST)"; - icon_state = "vault"; - dir = 8 - }, -/area/bridge) -"bCV" = ( -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/structure/table/wood, -/obj/item/device/taperecorder, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHEAST)"; - icon_state = "intact"; - dir = 6 - }, -/turf/open/floor/plasteel/grimy, -/area/bridge) -"bCW" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/carpet, -/area/bridge) -"bCX" = ( -/obj/structure/chair/comfy/brown{ - color = "#596479"; - dir = 1 - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/carpet, -/area/bridge) -"bCY" = ( -/obj/machinery/holopad, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/carpet, -/area/bridge) -"bCZ" = ( -/obj/structure/table/wood, -/obj/structure/window/reinforced{ - dir = 4 - }, -/obj/item/weapon/folder/blue, -/obj/item/weapon/pen, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHWEST)"; - icon_state = "intact"; - dir = 10 - }, -/turf/open/floor/plasteel/grimy, -/area/bridge) -"bDa" = ( -/obj/structure/rack, -/obj/machinery/light/small, -/obj/item/weapon/storage/toolbox/emergency, -/obj/item/weapon/wrench, -/turf/open/floor/plasteel/vault{ - tag = "icon-vault (WEST)"; - icon_state = "vault"; - dir = 8 - }, -/area/bridge) -"bDb" = ( -/turf/open/floor/plasteel/darkblue/side{ - dir = 4 - }, -/area/bridge) -"bDc" = ( -/obj/machinery/airalarm{ - dir = 1; - icon_state = "alarm0"; - pixel_y = -22 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/darkblue/side, -/area/bridge) -"bDd" = ( -/obj/machinery/camera{ - c_tag = "Bridge - Starboard"; - dir = 1; - name = "command camera" - }, -/turf/open/floor/plasteel/darkblue/side, -/area/bridge) -"bDe" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/darkblue/side, -/area/bridge) -"bDf" = ( -/obj/machinery/firealarm{ - dir = 1; - pixel_x = 0; - pixel_y = -26 - }, -/turf/open/floor/plasteel/darkblue/side, -/area/bridge) -"bDg" = ( -/obj/machinery/light_switch{ - pixel_x = 7; - pixel_y = -26 - }, -/turf/open/floor/plasteel/darkblue/side, -/area/bridge) -"bDh" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/obj/structure/sign/nanotrasen{ - pixel_x = -32; - pixel_y = -32 - }, -/obj/machinery/light/small, -/turf/open/floor/plasteel/darkblue/side, -/area/bridge) -"bDi" = ( -/turf/closed/wall/r_wall, -/area/security/detectives_office) -"bDj" = ( -/obj/structure/cable/white{ - tag = "icon-0-2"; - icon_state = "0-2" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor/preopen{ - id = "detectivewindows"; - name = "Detective Privacy Blast door" - }, -/turf/open/floor/plating, -/area/security/detectives_office) -"bDk" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/red/corner{ - dir = 1 - }, -/area/hallway/primary/starboard) -"bDl" = ( -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/starboard) -"bDm" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/red/corner{ - dir = 4 - }, -/area/hallway/primary/starboard) -"bDn" = ( -/obj/structure/cable/white{ - tag = "icon-0-2"; - icon_state = "0-2" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor/preopen{ - id = "brigwindows"; - name = "Brig Front Blast door" - }, -/turf/open/floor/plating, -/area/security/brig) -"bDo" = ( -/obj/structure/closet/secure_closet/brig{ - id = "brig1"; - name = "Cell 1 Locker" - }, -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/plasteel/red/side{ - dir = 9 - }, -/area/security/brig) -"bDp" = ( -/obj/machinery/flasher{ - id = "brig1"; - pixel_y = 26 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/plasteel/red/side{ - dir = 5 - }, -/area/security/brig) -"bDq" = ( -/obj/structure/cable/white{ - tag = "icon-0-2"; - icon_state = "0-2" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/security/brig) -"bDr" = ( -/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, -/turf/open/floor/plasteel/red/corner{ - dir = 1 - }, -/area/security/brig) -"bDs" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral, -/area/security/brig) -"bDt" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel, -/area/security/brig) -"bDu" = ( -/obj/machinery/door/firedoor, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/door/airlock/security{ - name = "Evidence Storage"; - req_access_txt = "63" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/red/side{ - dir = 4 - }, -/area/security/warden) -"bDv" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/security/warden) -"bDw" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/security/warden) -"bDx" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/effect/landmark{ - name = "blobstart" - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/security/warden) -"bDy" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/security/warden) -"bDz" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/machinery/door/airlock/glass_security{ - name = "Security E.V.A. Storage"; - req_access_txt = "3" - }, -/turf/open/floor/plasteel/warning/side, -/area/security/warden) -"bDA" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/security/warden) -"bDB" = ( -/obj/structure/tank_dispenser/oxygen, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/security/warden) -"bDC" = ( -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/warden) -"bDD" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/crowbar, -/obj/item/weapon/wrench, -/obj/item/device/mmi, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/ai_monitored/turret_protected/ai) -"bDE" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHEAST)"; - icon_state = "intact"; - dir = 5 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/engine/gravity_generator) -"bDF" = ( -/obj/structure/cable/white, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/structure/sign/electricshock{ - pixel_y = -32 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plating, -/area/engine/gravity_generator) -"bDG" = ( -/obj/machinery/light, -/obj/machinery/status_display{ - pixel_y = -32 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/obj/machinery/camera{ - c_tag = "Engineering - Gravity Generator"; - dir = 1; - name = "engineering camera" - }, -/turf/open/floor/plasteel/warning{ - dir = 10 - }, -/area/engine/gravity_generator) -"bDH" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/airalarm{ - dir = 1; - icon_state = "alarm0"; - pixel_y = -22 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/warning, -/area/engine/gravity_generator) -"bDI" = ( -/obj/machinery/newscaster{ - pixel_y = -32 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHWEST)"; - icon_state = "intact"; - dir = 9 - }, -/turf/open/floor/plasteel/warning{ - dir = 6 - }, -/area/engine/gravity_generator) -"bDJ" = ( -/obj/machinery/firealarm{ - dir = 4; - icon_state = "fire0"; - pixel_x = 24; - pixel_y = 0; - tag = "icon-fire0 (EAST)" - }, -/obj/machinery/light_switch{ - pixel_y = -26 - }, -/obj/structure/table/reinforced, -/obj/item/stack/sheet/plasteel{ - amount = 20 - }, -/obj/item/weapon/wrench, -/turf/open/floor/plasteel/bot, -/area/engine/gravity_generator) -"bDK" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/door/poddoor/preopen{ - id = "transitlock"; - name = "Transit Tube Lockdown Door" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (EAST)"; - icon_state = "plasteel_warn_side"; - dir = 4 - }, -/area/engine/gravity_generator) -"bDL" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/door/poddoor/preopen{ - id = "transitlock"; - name = "Transit Tube Lockdown Door" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (EAST)"; - icon_state = "plasteel_warn_side"; - dir = 4 - }, -/area/engine/gravity_generator) -"bDM" = ( -/turf/closed/wall/r_wall, -/area/crew_quarters/chief) -"bDN" = ( -/obj/structure/sign/directions/engineering{ - desc = "A handy sign praising the engineering department."; - icon_state = "safety"; - name = "engineering plaque"; - tag = "icon-safety" - }, -/turf/closed/wall, -/area/engine/break_room) -"bDO" = ( -/obj/machinery/status_display, -/turf/closed/wall, -/area/engine/break_room) -"bDP" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/disposalpipe/segment, -/obj/machinery/camera{ - c_tag = "Engineering - Foyer"; - dir = 4; - name = "engineering camera" - }, -/turf/open/floor/plasteel/yellow/side{ - dir = 8 - }, -/area/engine/break_room) -"bDQ" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral, -/area/engine/break_room) -"bDR" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/reagent_containers/food/drinks/soda_cans/thirteenloko, -/turf/open/floor/plasteel/bot, -/area/engine/break_room) -"bDS" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/folder/yellow, -/obj/item/weapon/pen, -/turf/open/floor/plasteel/bot, -/area/engine/break_room) -"bDT" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/folder/yellow, -/obj/item/device/lightreplacer, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/bot, -/area/engine/break_room) -"bDU" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/turf/open/floor/plasteel/neutral, -/area/engine/break_room) -"bDV" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral, -/area/engine/break_room) -"bDW" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/neutral, -/area/engine/break_room) -"bDX" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/yellow/side{ - dir = 4 - }, -/area/engine/break_room) -"bDY" = ( -/obj/machinery/door/firedoor, -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/door/airlock/engineering{ - name = "Engineering Foyer"; - req_access_txt = "0"; - req_one_access_txt = "32;19" - }, -/turf/open/floor/plasteel/warning/side, -/area/engine/break_room) -"bDZ" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/delivery, -/area/engine/break_room) -"bEa" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/effect/landmark{ - name = "lightsout" - }, -/turf/open/floor/plasteel/neutral, -/area/engine/break_room) -"bEb" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/delivery, -/area/engine/break_room) -"bEc" = ( -/obj/machinery/door/firedoor, -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/door/airlock/engineering{ - name = "Engineering Foyer"; - req_access_txt = "0"; - req_one_access_txt = "32;19" - }, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/turf/open/floor/plasteel/warning/side, -/area/engine/break_room) -"bEd" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/yellow/side{ - dir = 8 - }, -/area/hallway/primary/port) -"bEe" = ( -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/port) -"bEf" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/light{ - dir = 4 - }, -/turf/open/floor/plasteel/yellow/corner{ - dir = 4 - }, -/area/hallway/primary/port) -"bEg" = ( -/obj/structure/table/reinforced, -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/item/weapon/folder/yellow, -/obj/item/weapon/electronics/airlock, -/obj/machinery/power/apc{ - dir = 8; - name = "Technology Storage APC"; - pixel_x = -26; - pixel_y = 3 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/storage/tech) -"bEh" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/storage/tech) -"bEi" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHWEST)"; - icon_state = "intact"; - dir = 10 - }, -/turf/open/floor/plasteel/neutral, -/area/storage/tech) -"bEj" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/plasteel/neutral, -/area/storage/tech) -"bEk" = ( -/obj/machinery/holopad, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/bot, -/area/storage/tech) -"bEl" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 8 - }, -/area/storage/tech) -"bEm" = ( -/obj/structure/table/reinforced, -/obj/item/stack/cable_coil/white{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/stack/cable_coil/white, -/obj/item/weapon/stock_parts/scanning_module{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/stock_parts/capacitor, -/obj/item/weapon/stock_parts/manipulator, -/obj/item/weapon/stock_parts/manipulator, -/obj/machinery/airalarm{ - dir = 8; - icon_state = "alarm0"; - pixel_x = 24 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/storage/tech) -"bEn" = ( -/obj/machinery/vending/assist, -/obj/structure/extinguisher_cabinet{ - pixel_x = -26 - }, -/obj/machinery/camera{ - c_tag = "Primary Tool Storage"; - dir = 4; - name = "engineering camera" - }, -/turf/open/floor/plasteel/delivery, -/area/storage/primary) -"bEo" = ( -/obj/effect/landmark{ - name = "lightsout" - }, -/turf/open/floor/plasteel/neutral, -/area/storage/primary) -"bEp" = ( -/obj/structure/table/reinforced, -/obj/item/stack/packageWrap, -/obj/item/weapon/hand_labeler, -/turf/open/floor/plasteel/bot, -/area/storage/primary) -"bEq" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/storage/toolbox/mechanical, -/obj/item/device/flashlight, -/turf/open/floor/plasteel/bot, -/area/storage/primary) -"bEr" = ( -/obj/effect/landmark/start{ - name = "Assistant" - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/neutral, -/area/storage/primary) -"bEs" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/yellow/corner{ - dir = 4 - }, -/area/storage/primary) -"bEt" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/delivery, -/area/storage/primary) -"bEu" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass_engineering{ - name = "Primary Tool Storage"; - req_access_txt = "0" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/storage/primary) -"bEv" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plasteel/yellow/corner{ - dir = 1 - }, -/area/hallway/primary/central) -"bEw" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/firealarm{ - dir = 4; - icon_state = "fire0"; - pixel_x = 24; - pixel_y = 0; - tag = "icon-fire0 (EAST)" - }, -/turf/open/floor/plasteel/neutral/corner, -/area/hallway/primary/central) -"bEx" = ( -/turf/closed/wall/r_wall, -/area/bridge/meeting_room{ - name = "Council Chamber" - }) -"bEy" = ( -/turf/closed/wall, -/area/bridge/meeting_room{ - name = "Council Chamber" - }) -"bEz" = ( -/obj/machinery/door/firedoor, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/door/airlock/command{ - name = "Council Chambers"; - req_access = null; - req_access_txt = "19" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/wood, -/area/bridge/meeting_room{ - name = "Council Chamber" - }) -"bEA" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall, -/area/bridge/meeting_room{ - name = "Council Chamber" - }) -"bEB" = ( -/obj/structure/table/reinforced, -/obj/machinery/recharger, -/turf/open/floor/plasteel/vault{ - tag = "icon-vault (WEST)"; - icon_state = "vault"; - dir = 8 - }, -/area/bridge) -"bEC" = ( -/obj/structure/table/reinforced, -/obj/machinery/cell_charger, -/turf/open/floor/plasteel/vault{ - tag = "icon-vault (WEST)"; - icon_state = "vault"; - dir = 8 - }, -/area/bridge) -"bED" = ( -/obj/machinery/status_display, -/turf/closed/wall, -/area/bridge) -"bEE" = ( -/obj/structure/table/wood, -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/item/weapon/storage/fancy/donut_box, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/grimy, -/area/bridge) -"bEF" = ( -/obj/machinery/button/door{ - id = "bridgedoors"; - name = "Bridge Access Blast doors"; - pixel_x = 7; - pixel_y = -26; - req_access_txt = "19" - }, -/obj/machinery/button/door{ - id = "bridgewindows"; - name = "Bridge View Blast doors"; - pixel_x = -7; - pixel_y = -26; - req_access_txt = "19" - }, -/obj/machinery/requests_console{ - announcementConsole = 1; - department = "Bridge"; - departmentType = 5; - name = "Bridge RC"; - pixel_x = -32; - pixel_y = -32 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_Toxins = 0 - }, -/obj/machinery/camera{ - c_tag = "Bridge - Command Chair"; - dir = 1; - name = "command camera" - }, -/turf/open/floor/carpet, -/area/bridge) -"bEG" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/carpet, -/area/bridge) -"bEH" = ( -/obj/machinery/button/door{ - id = "evastorage"; - name = "E.V.A. Shutters"; - pixel_x = 7; - pixel_y = -26; - req_access_txt = "19" - }, -/obj/machinery/button/door{ - id = "teleportershutters"; - name = "Teleporter Shutters"; - pixel_x = -7; - pixel_y = -26 - }, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = 26; - pixel_y = -26 - }, -/obj/machinery/keycard_auth{ - pixel_x = -7; - pixel_y = -38 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/turf/open/floor/carpet, -/area/bridge) -"bEI" = ( -/obj/structure/table/wood, -/obj/structure/window/reinforced{ - dir = 4 - }, -/obj/item/weapon/paper_bin, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/grimy, -/area/bridge) -"bEJ" = ( -/obj/machinery/ai_status_display, -/turf/closed/wall, -/area/bridge) -"bEK" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/paper_bin, -/turf/open/floor/plasteel/vault{ - tag = "icon-vault (WEST)"; - icon_state = "vault"; - dir = 8 - }, -/area/bridge) -"bEL" = ( -/turf/closed/wall/r_wall, -/area/crew_quarters/captain) -"bEM" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall/r_wall, -/area/crew_quarters/captain) -"bEN" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/command{ - name = "Captain's Office"; - req_access = null; - req_access_txt = "20" - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/wood, -/area/crew_quarters/captain) -"bEO" = ( -/obj/machinery/computer/security/telescreen/entertainment, -/turf/closed/wall/r_wall, -/area/crew_quarters/captain) -"bEP" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral/corner{ - dir = 4 - }, -/area/hallway/primary/central) -"bEQ" = ( -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Maintenance Hatch"; - req_access_txt = "12" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plating/warnplate/side, -/area/hallway/primary/central) -"bER" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 1 - }, -/area/hallway/primary/central) -"bES" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plating, -/area/hallway/primary/central) -"bET" = ( -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/delivery, -/area/hallway/primary/central) -"bEU" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plating, -/area/hallway/primary/central) -"bEV" = ( -/obj/effect/decal/cleanable/cobweb/cobweb2, -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 5; - initial_gas_mix = "o2=22;n2=82;TEMP=293.15"; - tag = "icon-neutral (NORTHEAST)" - }, -/area/hallway/primary/central) -"bEW" = ( -/obj/structure/table/wood, -/obj/item/weapon/clipboard, -/obj/item/toy/figure/detective, -/obj/structure/sign/poster{ - icon_state = "poster22_legit"; - pixel_y = 32; - tag = "icon-poster22_legit" - }, -/turf/open/floor/plasteel/vault, -/area/security/detectives_office) -"bEX" = ( -/obj/structure/closet/secure_closet/detective, -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/vault, -/area/security/detectives_office) -"bEY" = ( -/obj/structure/table/wood, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/item/weapon/book/manual/wiki/security_space_law, -/obj/item/device/camera/detective, -/turf/open/floor/plasteel/vault, -/area/security/detectives_office) -"bEZ" = ( -/obj/structure/table/wood, -/obj/structure/cable/white{ - tag = "icon-0-2"; - icon_state = "0-2" - }, -/obj/machinery/power/apc{ - cell_type = 5000; - dir = 1; - name = "Detective's Office APC"; - pixel_x = 0; - pixel_y = 25 - }, -/obj/item/device/taperecorder, -/obj/item/weapon/restraints/handcuffs, -/turf/open/floor/plasteel/vault, -/area/security/detectives_office) -"bFa" = ( -/obj/structure/filingcabinet/security, -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/turf/open/floor/plasteel/vault, -/area/security/detectives_office) -"bFb" = ( -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/trunk, -/obj/machinery/disposal/bin, -/turf/open/floor/plasteel/vault, -/area/security/detectives_office) -"bFc" = ( -/obj/machinery/photocopier, -/obj/machinery/ai_status_display{ - pixel_x = 0; - pixel_y = 32 - }, -/turf/open/floor/plasteel/vault, -/area/security/detectives_office) -"bFd" = ( -/obj/structure/rack, -/obj/item/weapon/storage/briefcase{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/weapon/storage/secure/briefcase, -/turf/open/floor/plasteel/vault, -/area/security/detectives_office) -"bFe" = ( -/obj/structure/dresser, -/turf/open/floor/plasteel/vault, -/area/security/detectives_office) -"bFf" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHEAST)"; - icon_state = "intact"; - dir = 6 - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/camera{ - c_tag = "Security Hallway - Fore"; - dir = 4; - name = "hallway camera" - }, -/turf/open/floor/plasteel/red/corner{ - dir = 1 - }, -/area/hallway/primary/starboard) -"bFg" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/starboard) -"bFh" = ( -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/red/corner{ - dir = 4 - }, -/area/hallway/primary/starboard) -"bFi" = ( -/obj/structure/cable/white, -/obj/structure/cable/white{ - tag = "icon-0-2"; - icon_state = "0-2" - }, -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor/preopen{ - id = "brigwindows"; - name = "Brig Front Blast door" - }, -/turf/open/floor/plating, -/area/security/brig) -"bFj" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/red/side{ - dir = 8 - }, -/area/security/brig) -"bFk" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/red/side{ - dir = 4 - }, -/area/security/brig) -"bFl" = ( -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/door/window/brigdoor/westright{ - id = "brig1"; - name = "Cell 1"; - req_access_txt = "2" - }, -/turf/open/floor/plasteel/red/side{ - dir = 8 - }, -/area/security/brig) -"bFm" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/security/brig) -"bFn" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral, -/area/security/brig) -"bFo" = ( -/obj/machinery/newscaster/security_unit{ - pixel_x = 32 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/red/corner, -/area/security/brig) -"bFp" = ( -/obj/structure/table, -/obj/item/stack/packageWrap, -/obj/item/weapon/hand_labeler, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/security/warden) -"bFq" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/security/warden) -"bFr" = ( -/obj/structure/closet/secure_closet{ - anchored = 1; - name = "Secure Evidence Closet"; - req_access_txt = "0"; - req_one_access_txt = "3,4" - }, -/obj/machinery/camera{ - c_tag = "Security - Evidence Storage"; - dir = 1; - name = "security camera" - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/security/warden) -"bFs" = ( -/obj/structure/cable/white, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/warden) -"bFt" = ( -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/security/warden) -"bFu" = ( -/obj/machinery/suit_storage_unit/security, -/obj/machinery/light/small, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/security/warden) -"bFv" = ( -/obj/structure/chair/office/dark{ - dir = 8 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/ai_monitored/turret_protected/ai) -"bFw" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plasteel/circuit/gcircuit, -/area/ai_monitored/turret_protected/ai) -"bFx" = ( -/obj/machinery/airalarm{ - pixel_y = 22 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/ai_monitored/turret_protected/ai) -"bFy" = ( -/obj/machinery/flasher{ - id = "AI"; - pixel_y = 26 - }, -/obj/machinery/porta_turret/ai, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/ai_monitored/turret_protected/ai) -"bFz" = ( -/obj/structure/cable/white{ - tag = "icon-0-2"; - icon_state = "0-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHEAST)"; - icon_state = "intact"; - dir = 6 - }, -/obj/machinery/power/apc{ - aidisabled = 0; - dir = 1; - name = "AI Chamber APC"; - pixel_y = 24 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/ai_monitored/turret_protected/ai) -"bFA" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/ai_monitored/turret_protected/ai) -"bFB" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/circuit/gcircuit, -/area/ai_monitored/turret_protected/ai) -"bFC" = ( -/obj/structure/chair/office/dark{ - dir = 4 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/ai_monitored/turret_protected/ai) -"bFD" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/folder/blue, -/obj/item/device/assembly/flash/handheld, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/ai_monitored/turret_protected/ai) -"bFE" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/door/airlock/hatch{ - name = "MiniSat Transit Tube Access"; - req_one_access_txt = "32;19" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/engine/break_room{ - name = "Transit Tube" - }) -"bFF" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall/r_wall, -/area/engine/break_room{ - name = "Transit Tube" - }) -"bFG" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/chief) -"bFH" = ( -/obj/machinery/disposal/bin, -/obj/structure/extinguisher_cabinet{ - pixel_y = 32 - }, -/obj/structure/disposalpipe/trunk{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/crew_quarters/chief) -"bFI" = ( -/obj/machinery/cell_charger, -/obj/structure/table/reinforced, -/obj/machinery/ai_status_display{ - pixel_y = 32 - }, -/obj/item/weapon/stock_parts/cell/high, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/chief) -"bFJ" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/clipboard, -/obj/item/device/gps/engineering{ - gpstag = "CE0" - }, -/obj/machinery/newscaster{ - pixel_y = 32 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/chief) -"bFK" = ( -/obj/structure/rack, -/obj/item/weapon/crowbar, -/obj/item/weapon/storage/toolbox/mechanical, -/obj/machinery/computer/security/telescreen/entertainment{ - pixel_y = 32 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHEAST)"; - icon_state = "intact"; - dir = 6 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/chief) -"bFL" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/obj/machinery/firealarm{ - pixel_y = 24 - }, -/obj/machinery/button/door{ - id = "ceblast"; - name = "Lockdown Control"; - pixel_x = 26; - pixel_y = 26; - req_access_txt = "56" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/chief) -"bFM" = ( -/obj/structure/cable/white{ - tag = "icon-0-2"; - icon_state = "0-2" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plating, -/area/crew_quarters/chief) -"bFN" = ( -/obj/machinery/door/poddoor/preopen{ - id = "ceblast"; - name = "Chief's Lockdown Shutters" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/engine/break_room) -"bFO" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/delivery, -/area/engine/break_room) -"bFP" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHWEST)"; - icon_state = "intact"; - dir = 9 - }, -/obj/structure/disposalpipe/sortjunction{ - name = "CE's Junction"; - sortType = 5 - }, -/turf/open/floor/plasteel/yellow/side{ - dir = 8 - }, -/area/engine/break_room) -"bFQ" = ( -/turf/open/floor/plasteel/neutral, -/area/engine/break_room) -"bFR" = ( -/obj/structure/chair/stool/bar, -/turf/open/floor/plasteel/neutral, -/area/engine/break_room) -"bFS" = ( -/obj/structure/chair/stool/bar, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/plasteel/neutral, -/area/engine/break_room) -"bFT" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/neutral, -/area/engine/break_room) -"bFU" = ( -/obj/machinery/holopad, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/bot, -/area/engine/break_room) -"bFV" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/neutral, -/area/engine/break_room) -"bFW" = ( -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/yellow/side{ - dir = 4 - }, -/area/engine/break_room) -"bFX" = ( -/obj/structure/sign/securearea, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/closed/wall, -/area/engine/break_room) -"bFY" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/obj/structure/closet/firecloset, -/turf/open/floor/plasteel/warning{ - dir = 10 - }, -/area/engine/break_room) -"bFZ" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/warning, -/area/engine/break_room) -"bGa" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning{ - dir = 6 - }, -/area/engine/break_room) -"bGb" = ( -/obj/structure/cable/white, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/engine/break_room) -"bGc" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/yellow/corner{ - dir = 8 - }, -/area/hallway/primary/port) -"bGd" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/port) -"bGe" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/electronics/airalarm, -/obj/item/weapon/electronics/apc, -/obj/machinery/camera{ - c_tag = "Technology Storage"; - dir = 4; - name = "engineering camera" - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/storage/tech) -"bGf" = ( -/obj/structure/rack, -/obj/item/weapon/circuitboard/computer/security{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/weapon/circuitboard/computer/prisoner, -/obj/item/weapon/circuitboard/computer/secure_data{ - pixel_x = 3; - pixel_y = -3 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/bot, -/area/storage/tech) -"bGg" = ( -/obj/structure/rack, -/obj/item/weapon/circuitboard/computer/atmos_alert{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/weapon/circuitboard/computer/powermonitor, -/obj/item/weapon/circuitboard/computer/stationalert{ - pixel_x = 3; - pixel_y = -3 - }, -/turf/open/floor/plasteel/bot, -/area/storage/tech) -"bGh" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/folder/white, -/obj/item/weapon/stock_parts/cell/high, -/obj/item/weapon/stock_parts/console_screen, -/obj/item/weapon/stock_parts/console_screen, -/obj/item/weapon/stock_parts/console_screen, -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/storage/tech) -"bGi" = ( -/obj/machinery/vending/tool, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = -26; - pixel_y = 0 - }, -/turf/open/floor/plasteel/delivery, -/area/storage/primary) -"bGj" = ( -/obj/structure/table/reinforced, -/obj/item/clothing/gloves/color/yellow, -/obj/item/weapon/storage/box/lights/mixed, -/turf/open/floor/plasteel/bot, -/area/storage/primary) -"bGk" = ( -/turf/open/floor/plasteel/yellow/corner, -/area/storage/primary) -"bGl" = ( -/turf/open/floor/plasteel/delivery, -/area/storage/primary) -"bGm" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass_engineering{ - name = "Primary Tool Storage"; - req_access_txt = "0" - }, -/turf/open/floor/plasteel/warning/side, -/area/storage/primary) -"bGn" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral/corner, -/area/hallway/primary/central) -"bGo" = ( -/obj/machinery/status_display{ - pixel_x = -32 - }, -/obj/machinery/newscaster{ - pixel_y = 32 - }, -/obj/structure/table/wood, -/obj/item/device/flashlight/lamp, -/turf/open/floor/wood, -/area/bridge/meeting_room{ - name = "Council Chamber" - }) -"bGp" = ( -/obj/structure/bookcase/random, -/turf/open/floor/wood, -/area/bridge/meeting_room{ - name = "Council Chamber" - }) -"bGq" = ( -/obj/machinery/light{ - dir = 1 - }, -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/turf/open/floor/wood, -/area/bridge/meeting_room{ - name = "Council Chamber" - }) -"bGr" = ( -/obj/machinery/firealarm{ - pixel_y = 26 - }, -/turf/open/floor/wood, -/area/bridge/meeting_room{ - name = "Council Chamber" - }) -"bGs" = ( -/obj/structure/cable/white{ - d2 = 2; - icon_state = "0-2"; - tag = "icon-0-2" - }, -/obj/machinery/power/apc{ - cell_type = 10000; - dir = 1; - name = "Council Chambers APC"; - pixel_x = 0; - pixel_y = 26 - }, -/turf/open/floor/wood, -/area/bridge/meeting_room{ - name = "Council Chamber" - }) -"bGt" = ( -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/turf/open/floor/wood, -/area/bridge/meeting_room{ - name = "Council Chamber" - }) -"bGu" = ( -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/machinery/light_switch{ - pixel_x = 26; - pixel_y = 26 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/turf/open/floor/wood, -/area/bridge/meeting_room{ - name = "Council Chamber" - }) -"bGv" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/wood, -/area/bridge/meeting_room{ - name = "Council Chamber" - }) -"bGw" = ( -/obj/structure/table/wood, -/obj/item/device/paicard, -/turf/open/floor/wood, -/area/bridge/meeting_room{ - name = "Council Chamber" - }) -"bGx" = ( -/turf/closed/wall/r_wall, -/area/tcommsat/computer{ - name = "\improper Telecoms Control Room" - }) -"bGy" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall/r_wall, -/area/tcommsat/computer{ - name = "\improper Telecoms Control Room" - }) -"bGz" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/command{ - name = "Telecoms Control Room"; - req_access = null; - req_access_txt = "19; 61" - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/tcommsat/computer{ - name = "\improper Telecoms Control Room" - }) -"bGA" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/closed/wall/r_wall, -/area/tcommsat/computer{ - name = "\improper Telecoms Control Room" - }) -"bGB" = ( -/obj/structure/table/wood, -/obj/item/weapon/clipboard, -/obj/item/toy/figure/captain, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/wood, -/area/crew_quarters/captain) -"bGC" = ( -/obj/machinery/disposal/bin, -/obj/structure/disposalpipe/trunk, -/turf/open/floor/wood, -/area/crew_quarters/captain) -"bGD" = ( -/obj/machinery/light_switch{ - pixel_x = -26; - pixel_y = 26 - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/wood, -/area/crew_quarters/captain) -"bGE" = ( -/obj/machinery/light{ - dir = 1 - }, -/turf/open/floor/wood, -/area/crew_quarters/captain) -"bGF" = ( -/obj/machinery/firealarm{ - pixel_y = 26 - }, -/turf/open/floor/wood, -/area/crew_quarters/captain) -"bGG" = ( -/obj/machinery/ai_status_display{ - pixel_y = 32 - }, -/turf/open/floor/plasteel/vault{ - dir = 6 - }, -/area/crew_quarters/captain) -"bGH" = ( -/obj/structure/fireplace, -/turf/open/floor/plasteel/vault, -/area/crew_quarters/captain) -"bGI" = ( -/obj/machinery/status_display{ - pixel_x = 0; - pixel_y = 32 - }, -/turf/open/floor/plasteel/vault{ - dir = 10 - }, -/area/crew_quarters/captain) -"bGJ" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1 - }, -/turf/open/floor/wood, -/area/crew_quarters/captain) -"bGK" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/firealarm{ - dir = 8; - pixel_x = -24; - pixel_y = 0 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 8 - }, -/area/hallway/primary/central) -"bGL" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = 26; - pixel_y = 0 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 4 - }, -/area/hallway/primary/central) -"bGM" = ( -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Auxiliary Tool Storage Maintenance"; - req_access_txt = "12" - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plating/warnplate/side{ - tag = "icon-plating_warn_side (EAST)"; - icon_state = "plating_warn_side"; - dir = 4 - }, -/area/hallway/primary/central) -"bGN" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/turf/open/floor/plating, -/area/hallway/primary/central) -"bGO" = ( -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Detective's Office Maintenance"; - req_access_txt = "4" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/warning/side, -/area/security/detectives_office) -"bGP" = ( -/obj/structure/extinguisher_cabinet{ - pixel_x = -26; - pixel_y = 32 - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/security/detectives_office) -"bGQ" = ( -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/security/detectives_office) -"bGR" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/grimy, -/area/security/detectives_office) -"bGS" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/grimy, -/area/security/detectives_office) -"bGT" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plasteel/grimy, -/area/security/detectives_office) -"bGU" = ( -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/structure/reagent_dispensers/peppertank{ - pixel_x = 64; - pixel_y = 32 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/grimy, -/area/security/detectives_office) -"bGV" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/grimy, -/area/security/detectives_office) -"bGW" = ( -/obj/machinery/door/airlock/security{ - name = "Private Interrogation"; - req_access = null; - req_access_txt = "4" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/security/detectives_office) -"bGX" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/security/detectives_office) -"bGY" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/obj/machinery/camera{ - c_tag = "Detective's Interrogation"; - dir = 8; - name = "security camera" - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/security/detectives_office) -"bGZ" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/red/corner{ - dir = 1 - }, -/area/hallway/primary/starboard) -"bHa" = ( -/obj/structure/cable/white, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor/preopen{ - id = "brigwindows"; - name = "Brig Front Blast door" - }, -/turf/open/floor/plating, -/area/security/brig) -"bHb" = ( -/obj/structure/chair{ - dir = 1 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/red/side{ - dir = 10 - }, -/area/security/brig) -"bHc" = ( -/obj/structure/chair{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHWEST)"; - icon_state = "intact"; - dir = 10 - }, -/turf/open/floor/plasteel/red/side{ - dir = 6 - }, -/area/security/brig) -"bHd" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/red/corner{ - dir = 8 - }, -/area/security/brig) -"bHe" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_Toxins = 0 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral, -/area/security/brig) -"bHf" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/red/side{ - dir = 4 - }, -/area/security/brig) -"bHg" = ( -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/warden) -"bHh" = ( -/obj/machinery/door/firedoor, -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/door/airlock/glass_security{ - name = "Warden's Office"; - req_access_txt = "3" - }, -/turf/open/floor/plasteel/red, -/area/security/warden) -"bHi" = ( -/turf/closed/wall/r_wall, -/area/ai_monitored/security/armory) -"bHj" = ( -/obj/structure/window/reinforced{ - dir = 1; - layer = 2.9 - }, -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHEAST)"; - icon_state = "intact"; - dir = 6 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/construction/hallway{ - name = "\improper MiniSat Exterior" - }) -"bHk" = ( -/obj/structure/window/reinforced, -/obj/structure/window/reinforced{ - dir = 1; - layer = 2.9 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/construction/hallway{ - name = "\improper MiniSat Exterior" - }) -"bHl" = ( -/obj/structure/window/reinforced, -/obj/structure/window/reinforced{ - dir = 4; - pixel_x = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHWEST)"; - icon_state = "intact"; - dir = 9 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/construction/hallway{ - name = "\improper MiniSat Exterior" - }) -"bHm" = ( -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/structure/window/reinforced{ - dir = 8 - }, -/turf/open/space, -/area/space) -"bHn" = ( -/obj/structure/table/reinforced, -/obj/item/bodypart/chest/robot, -/obj/item/bodypart/r_arm/robot{ - pixel_x = 6 - }, -/obj/item/bodypart/l_arm/robot{ - pixel_x = -6 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/ai_monitored/turret_protected/ai) -"bHo" = ( -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/circuit/gcircuit, -/area/ai_monitored/turret_protected/ai) -"bHp" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/circuit/gcircuit, -/area/ai_monitored/turret_protected/ai) -"bHq" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/ai_slipper{ - icon_state = "motion0"; - uses = 10 - }, -/turf/open/floor/plasteel/circuit/gcircuit, -/area/ai_monitored/turret_protected/ai) -"bHr" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/circuit/gcircuit, -/area/ai_monitored/turret_protected/ai) -"bHs" = ( -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/turf/open/floor/plasteel/circuit/gcircuit, -/area/ai_monitored/turret_protected/ai) -"bHt" = ( -/obj/structure/window/reinforced, -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHEAST)"; - icon_state = "intact"; - dir = 5 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/construction/hallway{ - name = "\improper MiniSat Exterior" - }) -"bHu" = ( -/obj/structure/window/reinforced{ - dir = 1; - layer = 2.9 - }, -/obj/structure/window/reinforced{ - dir = 4; - pixel_x = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHWEST)"; - icon_state = "intact"; - dir = 10 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/construction/hallway{ - name = "\improper MiniSat Exterior" - }) -"bHv" = ( -/turf/closed/wall/r_wall, -/area/engine/break_room{ - name = "Transit Tube" - }) -"bHw" = ( -/obj/structure/closet/emcloset{ - anchored = 1 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/engine/break_room{ - name = "Transit Tube" - }) -"bHx" = ( -/obj/machinery/status_display, -/turf/closed/wall, -/area/engine/break_room{ - name = "Transit Tube" - }) -"bHy" = ( -/obj/machinery/power/apc{ - cell_type = 5000; - dir = 1; - name = "Transit Tube Access APC"; - pixel_x = 0; - pixel_y = 25 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 2; - on = 1 - }, -/turf/open/floor/plasteel/vault, -/area/engine/break_room{ - name = "Transit Tube" - }) -"bHz" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/vault, -/area/engine/break_room{ - name = "Transit Tube" - }) -"bHA" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/obj/machinery/firealarm{ - dir = 4; - icon_state = "fire0"; - pixel_x = 24; - pixel_y = 0; - tag = "icon-fire0 (EAST)" - }, -/obj/machinery/button/door{ - id = "transitlock"; - name = "Transit Tube Lockdown Control"; - pixel_x = 0; - pixel_y = 26; - req_access_txt = "39; 19" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/engine/break_room{ - name = "Transit Tube" - }) -"bHB" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/obj/machinery/button/door{ - id = "atmoslock"; - name = "Atmospherics Lockdown Control"; - pixel_x = -26; - req_access_txt = "25" - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/chief) -"bHC" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHEAST)"; - icon_state = "intact"; - dir = 6 - }, -/turf/open/floor/plasteel/neutral/corner, -/area/crew_quarters/chief) -"bHD" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/neutral/side, -/area/crew_quarters/chief) -"bHE" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral/corner{ - dir = 8; - heat_capacity = 1e+006 - }, -/area/crew_quarters/chief) -"bHF" = ( -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/chief) -"bHG" = ( -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/command{ - name = "Chief Engineer's Office"; - req_access_txt = "56" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/warning/side, -/area/crew_quarters/chief) -"bHH" = ( -/obj/machinery/door/poddoor/preopen{ - id = "ceblast"; - name = "Chief's Lockdown Shutters" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/warning/side, -/area/engine/break_room) -"bHI" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/delivery, -/area/engine/break_room) -"bHJ" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/yellow/side{ - dir = 8 - }, -/area/engine/break_room) -"bHK" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHWEST)"; - icon_state = "intact"; - dir = 9 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/engine/break_room) -"bHL" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_Toxins = 0 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/engine/break_room) -"bHM" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/engine/break_room) -"bHN" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/engine/break_room) -"bHO" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/neutral, -/area/engine/break_room) -"bHP" = ( -/obj/structure/extinguisher_cabinet{ - pixel_x = 26 - }, -/turf/open/floor/plasteel/yellow/side{ - dir = 4 - }, -/area/engine/break_room) -"bHQ" = ( -/turf/closed/wall, -/area/security/checkpoint/engineering) -"bHR" = ( -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHEAST)"; - icon_state = "intact"; - dir = 5 - }, -/turf/open/floor/plating, -/area/security/checkpoint/engineering) -"bHS" = ( -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/machinery/door/airlock/glass_security{ - id_tag = "engdoor"; - name = "Engineering Cell"; - req_access_txt = "63" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/red, -/area/security/checkpoint/engineering) -"bHT" = ( -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/security/checkpoint/engineering) -"bHU" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/sign/electricshock, -/turf/closed/wall/r_wall, -/area/security/checkpoint/engineering) -"bHV" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plasteel/yellow/corner{ - dir = 8 - }, -/area/hallway/primary/port) -"bHW" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/obj/machinery/ai_status_display{ - pixel_x = -32 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/storage/tech) -"bHX" = ( -/obj/structure/rack, -/obj/item/weapon/circuitboard/machine/teleporter_hub{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/weapon/circuitboard/machine/teleporter_station, -/obj/item/weapon/circuitboard/computer/teleporter{ - pixel_x = 3; - pixel_y = -3 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/bot, -/area/storage/tech) -"bHY" = ( -/obj/structure/rack, -/obj/item/weapon/circuitboard/machine/telecomms/server{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/weapon/circuitboard/machine/telecomms/relay, -/obj/item/weapon/circuitboard/machine/telecomms/receiver, -/obj/item/weapon/circuitboard/machine/telecomms/processor, -/obj/item/weapon/circuitboard/machine/telecomms/hub, -/obj/item/weapon/circuitboard/machine/telecomms/bus, -/obj/item/weapon/circuitboard/machine/telecomms/broadcaster{ - pixel_x = 3; - pixel_y = -3 - }, -/turf/open/floor/plasteel/bot, -/area/storage/tech) -"bHZ" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/obj/machinery/status_display{ - pixel_x = 32 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/storage/tech) -"bIa" = ( -/obj/structure/rack, -/obj/item/weapon/book/manual/wiki/engineering_hacking{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/weapon/book/manual/wiki/engineering_guide, -/obj/item/weapon/book/manual/wiki/engineering_construction{ - pixel_x = 3; - pixel_y = -3 - }, -/obj/machinery/status_display{ - pixel_x = -32 - }, -/turf/open/floor/plasteel/bot, -/area/storage/primary) -"bIb" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 2; - on = 1 - }, -/turf/open/floor/plasteel/neutral, -/area/storage/primary) -"bIc" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/turf/open/floor/plasteel/bot, -/area/storage/primary) -"bId" = ( -/obj/structure/cable/white{ - d2 = 2; - icon_state = "0-2"; - tag = "icon-0-2" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor/preopen{ - id = "councilblast"; - name = "Council Chambers Blast door" - }, -/turf/open/floor/plating, -/area/bridge/meeting_room{ - name = "Council Chamber" - }) -"bIe" = ( -/obj/structure/table/wood, -/obj/item/clothing/mask/cigarette/cigar/cohiba{ - pixel_x = 3 - }, -/obj/item/clothing/mask/cigarette/cigar/havana{ - pixel_x = -3 - }, -/obj/item/clothing/mask/cigarette/cigar, -/turf/open/floor/wood, -/area/bridge/meeting_room{ - name = "Council Chamber" - }) -"bIf" = ( -/turf/open/floor/plasteel/grimy, -/area/bridge/meeting_room{ - name = "Council Chamber" - }) -"bIg" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/carpet, -/area/bridge/meeting_room{ - name = "Council Chamber" - }) -"bIh" = ( -/obj/structure/chair/comfy/black, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/carpet, -/area/bridge/meeting_room{ - name = "Council Chamber" - }) -"bIi" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/chair/comfy/brown, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/carpet, -/area/bridge/meeting_room{ - name = "Council Chamber" - }) -"bIj" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/chair/comfy/black, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/carpet, -/area/bridge/meeting_room{ - name = "Council Chamber" - }) -"bIk" = ( -/obj/structure/table/wood, -/obj/item/weapon/cigbutt/cigarbutt{ - pixel_x = 7 - }, -/obj/item/weapon/phone{ - desc = "Supposedly a direct line to NanoTrasen Central Command. It's not even plugged in."; - pixel_x = -3; - pixel_y = 3 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/grimy, -/area/bridge/meeting_room{ - name = "Council Chamber" - }) -"bIl" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/wood, -/area/bridge/meeting_room{ - name = "Council Chamber" - }) -"bIm" = ( -/obj/structure/sign/nanotrasen{ - pixel_x = 32; - pixel_y = 32 - }, -/turf/open/floor/wood, -/area/bridge/meeting_room{ - name = "Council Chamber" - }) -"bIn" = ( -/obj/machinery/vending/coffee, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/bridge/meeting_room{ - name = "Council Chamber" - }) -"bIo" = ( -/obj/structure/table/wood, -/obj/machinery/light{ - dir = 1 - }, -/obj/item/weapon/paper_bin, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/tcommsat/computer{ - name = "\improper Telecoms Control Room" - }) -"bIp" = ( -/obj/structure/table/wood, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_y = 26 - }, -/obj/item/weapon/folder/blue, -/obj/item/weapon/pen, -/turf/open/floor/plasteel/grimy, -/area/tcommsat/computer{ - name = "\improper Telecoms Control Room" - }) -"bIq" = ( -/obj/machinery/power/apc{ - cell_type = 10000; - dir = 1; - name = "Telecoms Monitoring APC"; - pixel_x = 0; - pixel_y = 28 - }, -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/obj/structure/cable/white{ - d2 = 2; - icon_state = "0-2"; - tag = "icon-0-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHEAST)"; - icon_state = "intact"; - dir = 5 - }, -/turf/open/floor/plasteel/grimy, -/area/tcommsat/computer{ - name = "\improper Telecoms Control Room" - }) -"bIr" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHWEST)"; - icon_state = "intact"; - dir = 10 - }, -/obj/machinery/camera{ - c_tag = "Telecomms - Monitoring"; - dir = 2; - name = "telecomms camera"; - network = list("SS13","tcomm") - }, -/turf/open/floor/plasteel/grimy, -/area/tcommsat/computer{ - name = "\improper Telecoms Control Room" - }) -"bIs" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/light_switch{ - pixel_x = -26; - pixel_y = 26 - }, -/turf/open/floor/plasteel/grimy, -/area/tcommsat/computer{ - name = "\improper Telecoms Control Room" - }) -"bIt" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHEAST)"; - icon_state = "intact"; - dir = 6 - }, -/turf/open/floor/plasteel/grimy, -/area/tcommsat/computer{ - name = "\improper Telecoms Control Room" - }) -"bIu" = ( -/obj/machinery/airalarm{ - pixel_y = 22 - }, -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHWEST)"; - icon_state = "intact"; - dir = 9 - }, -/turf/open/floor/plasteel/grimy, -/area/tcommsat/computer{ - name = "\improper Telecoms Control Room" - }) -"bIv" = ( -/obj/structure/table/wood, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_y = 26 - }, -/obj/item/device/radio{ - pixel_y = 5 - }, -/turf/open/floor/plasteel/grimy, -/area/tcommsat/computer{ - name = "\improper Telecoms Control Room" - }) -"bIw" = ( -/obj/structure/table/wood, -/obj/machinery/light{ - dir = 1 - }, -/obj/item/device/flashlight/lamp, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/tcommsat/computer{ - name = "\improper Telecoms Control Room" - }) -"bIx" = ( -/obj/machinery/vending/boozeomat, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/crew_quarters/captain) -"bIy" = ( -/obj/structure/sign/nanotrasen{ - pixel_x = -32; - pixel_y = 32 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/wood, -/area/crew_quarters/captain) -"bIz" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/turf/open/floor/wood, -/area/crew_quarters/captain) -"bIA" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/turf/open/floor/wood, -/area/crew_quarters/captain) -"bIB" = ( -/turf/open/floor/wood, -/area/crew_quarters/captain) -"bIC" = ( -/obj/structure/chair/comfy/brown{ - icon_state = "comfychair"; - dir = 4 - }, -/obj/effect/landmark/start{ - name = "Captain" - }, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/captain) -"bID" = ( -/obj/structure/table/wood, -/obj/item/weapon/storage/fancy/donut_box, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/captain) -"bIE" = ( -/obj/structure/chair/comfy/brown{ - icon_state = "comfychair"; - dir = 8 - }, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/captain) -"bIF" = ( -/obj/machinery/airalarm{ - dir = 8; - icon_state = "alarm0"; - pixel_x = 24 - }, -/turf/open/floor/wood, -/area/crew_quarters/captain) -"bIG" = ( -/turf/closed/wall, -/area/storage/tools) -"bIH" = ( -/obj/structure/reagent_dispensers/fueltank, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/yellow/side{ - dir = 9 - }, -/area/storage/tools) -"bII" = ( -/obj/structure/cable/white{ - d2 = 2; - icon_state = "0-2"; - tag = "icon-0-2" - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/disposal/bin, -/obj/structure/disposalpipe/trunk, -/obj/machinery/power/apc{ - cell_type = 5000; - dir = 1; - name = "Auxiliary Tool Storage APC"; - pixel_x = 0; - pixel_y = 25 - }, -/turf/open/floor/plasteel/yellow/corner{ - dir = 1 - }, -/area/storage/tools) -"bIJ" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel, -/area/storage/tools) -"bIK" = ( -/obj/structure/closet/toolcloset, -/obj/effect/decal/cleanable/dirt, -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plasteel/yellow/corner{ - dir = 4 - }, -/area/storage/tools) -"bIL" = ( -/obj/structure/closet/toolcloset, -/obj/effect/decal/cleanable/dirt, -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plasteel/yellow/side{ - dir = 5 - }, -/area/storage/tools) -"bIM" = ( -/turf/closed/wall, -/area/security/detectives_office) -"bIN" = ( -/obj/machinery/light{ - dir = 8 - }, -/obj/machinery/newscaster/security_unit{ - pixel_x = -32 - }, -/obj/machinery/camera{ - c_tag = "Detective's Office"; - dir = 4; - name = "security camera" - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/security/detectives_office) -"bIO" = ( -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/security/detectives_office) -"bIP" = ( -/obj/machinery/holopad, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHEAST)"; - icon_state = "intact"; - dir = 6 - }, -/turf/open/floor/plasteel/grimy, -/area/security/detectives_office) -"bIQ" = ( -/obj/structure/chair/office/dark{ - dir = 4 - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/grimy, -/area/security/detectives_office) -"bIR" = ( -/obj/structure/table/wood, -/obj/item/clothing/mask/cigarette/cigar/cohiba{ - pixel_x = 3 - }, -/obj/item/clothing/mask/cigarette/cigar/havana{ - pixel_x = -3 - }, -/obj/item/clothing/mask/cigarette/cigar, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/carpet, -/area/security/detectives_office) -"bIS" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/carpet, -/area/security/detectives_office) -"bIT" = ( -/obj/machinery/computer/med_data, -/obj/machinery/requests_console{ - department = "Detective's Office"; - departmentType = 0; - name = "Detective RC"; - pixel_x = 30; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/carpet, -/area/security/detectives_office) -"bIU" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall/r_wall, -/area/security/detectives_office) -"bIV" = ( -/obj/structure/chair/office/dark, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/security/detectives_office) -"bIW" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHWEST)"; - icon_state = "intact"; - dir = 10 - }, -/obj/machinery/light/small{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/security/detectives_office) -"bIX" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment, -/obj/machinery/airalarm{ - dir = 4; - icon_state = "alarm0"; - pixel_x = -22 - }, -/turf/open/floor/plasteel/red/corner{ - dir = 1 - }, -/area/hallway/primary/starboard) -"bIY" = ( -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'HIGH VOLTAGE'"; - icon_state = "shock"; - name = "HIGH VOLTAGE"; - pixel_x = 32; - pixel_y = 0 - }, -/obj/machinery/light{ - dir = 4 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/red/corner{ - dir = 4 - }, -/area/hallway/primary/starboard) -"bIZ" = ( -/turf/closed/wall, -/area/security/brig) -"bJa" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1 - }, -/obj/machinery/door_timer{ - id = "brig1"; - name = "Cell 1"; - pixel_x = -32 - }, -/obj/machinery/light{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/camera{ - c_tag = "Security - Brig Center"; - dir = 4; - name = "security camera" - }, -/turf/open/floor/plasteel/red/side{ - dir = 8 - }, -/area/security/brig) -"bJb" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/red/side{ - dir = 4 - }, -/area/security/brig) -"bJc" = ( -/obj/machinery/computer/crew, -/obj/machinery/requests_console{ - department = "Security"; - departmentType = 0; - name = "Security RC"; - pixel_x = -32; - pixel_y = 32 - }, -/turf/open/floor/plasteel/red/side{ - dir = 9 - }, -/area/security/warden) -"bJd" = ( -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/red/side{ - dir = 1 - }, -/area/security/warden) -"bJe" = ( -/obj/structure/rack, -/obj/item/weapon/storage/box/handcuffs, -/obj/item/weapon/storage/box/flashbangs{ - pixel_x = 3; - pixel_y = -3 - }, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = 26; - pixel_y = 0 - }, -/obj/item/clothing/mask/gas/sechailer, -/obj/item/clothing/mask/gas/sechailer, -/obj/item/device/flashlight/seclite, -/obj/item/device/flashlight/seclite, -/turf/open/floor/plasteel/red/side{ - dir = 5 - }, -/area/security/warden) -"bJf" = ( -/obj/machinery/flasher/portable, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/ai_monitored/security/armory) -"bJg" = ( -/obj/item/weapon/grenade/barrier{ - pixel_x = -3; - pixel_y = 1 - }, -/obj/item/weapon/grenade/barrier, -/obj/item/weapon/grenade/barrier{ - pixel_x = 3; - pixel_y = -1 - }, -/obj/item/weapon/grenade/barrier{ - pixel_x = 6; - pixel_y = -2 - }, -/obj/structure/table/reinforced, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_y = 26 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/ai_monitored/security/armory) -"bJh" = ( -/obj/item/weapon/storage/box/chemimp{ - pixel_x = 6 - }, -/obj/item/weapon/storage/box/trackimp{ - pixel_x = -3 - }, -/obj/item/weapon/storage/lockbox/loyalty, -/obj/structure/table/reinforced, -/obj/machinery/airalarm{ - pixel_y = 22 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/ai_monitored/security/armory) -"bJi" = ( -/obj/item/weapon/storage/box/firingpins, -/obj/item/weapon/storage/box/firingpins, -/obj/item/key/security, -/obj/structure/table/reinforced, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/ai_monitored/security/armory) -"bJj" = ( -/obj/item/weapon/storage/box/teargas{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/storage/box/handcuffs, -/obj/item/weapon/storage/box/flashbangs{ - pixel_x = -3; - pixel_y = -3 - }, -/obj/structure/table/reinforced, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/ai_monitored/security/armory) -"bJk" = ( -/obj/structure/window/reinforced{ - dir = 1; - layer = 2.9 - }, -/obj/structure/window/reinforced{ - dir = 8 - }, -/turf/open/space, -/area/space) -"bJl" = ( -/obj/machinery/light, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHEAST)"; - icon_state = "intact"; - dir = 5 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/ai_monitored/turret_protected/ai) -"bJm" = ( -/obj/machinery/firealarm{ - dir = 1; - pixel_x = 0; - pixel_y = -26 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 6 - }, -/area/ai_monitored/turret_protected/ai) -"bJn" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHWEST)"; - icon_state = "intact"; - dir = 10 - }, -/obj/machinery/camera/motion{ - c_tag = "AI Chamber - Aft"; - dir = 1; - name = "motion-sensitive ai camera"; - network = list("AI") - }, -/turf/open/floor/plasteel/vault, -/area/ai_monitored/turret_protected/ai) -"bJo" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/vault, -/area/ai_monitored/turret_protected/ai) -"bJp" = ( -/turf/open/floor/plasteel/vault{ - dir = 10 - }, -/area/ai_monitored/turret_protected/ai) -"bJq" = ( -/obj/machinery/light, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/ai_monitored/turret_protected/ai) -"bJr" = ( -/obj/structure/window/reinforced{ - dir = 1; - layer = 2.9 - }, -/obj/structure/window/reinforced{ - dir = 4; - pixel_x = 0 - }, -/turf/open/space, -/area/space) -"bJs" = ( -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/construction/hallway{ - name = "\improper MiniSat Exterior" - }) -"bJt" = ( -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/construction/hallway{ - name = "\improper MiniSat Exterior" - }) -"bJu" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/door/airlock/hatch{ - name = "MiniSat Exterior Access"; - req_one_access_txt = "32;19" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/construction/hallway{ - name = "\improper MiniSat Exterior" - }) -"bJv" = ( -/obj/structure/lattice/catwalk, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/space, -/area/space) -"bJw" = ( -/obj/structure/lattice/catwalk, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHWEST)"; - icon_state = "intact"; - dir = 10 - }, -/turf/open/space, -/area/space) -"bJx" = ( -/obj/structure/lattice/catwalk, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHEAST)"; - icon_state = "intact"; - dir = 6 - }, -/turf/open/space, -/area/space) -"bJy" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/door/airlock/hatch{ - name = "MiniSat Exterior Access"; - req_one_access_txt = "32;19" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/engine/break_room{ - name = "Transit Tube" - }) -"bJz" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/engine/break_room{ - name = "Transit Tube" - }) -"bJA" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/engine/break_room{ - name = "Transit Tube" - }) -"bJB" = ( -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHWEST)"; - icon_state = "intact"; - dir = 9 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/engine/break_room{ - name = "Transit Tube" - }) -"bJC" = ( -/obj/machinery/light/small{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/engine/break_room{ - name = "Transit Tube" - }) -"bJD" = ( -/obj/machinery/computer/card/minor/ce{ - pixel_x = 0 - }, -/obj/machinery/status_display{ - pixel_x = -32 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/chief) -"bJE" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/turf/open/floor/plasteel/neutral/side{ - tag = "icon-neutral (EAST)"; - icon_state = "neutral"; - dir = 4 - }, -/area/crew_quarters/chief) -"bJF" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/paper_bin, -/obj/item/weapon/pen, -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/chief) -"bJG" = ( -/obj/structure/table/reinforced, -/obj/item/device/flashlight/lamp, -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/chief) -"bJH" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral/side{ - dir = 8; - heat_capacity = 1e+006 - }, -/area/crew_quarters/chief) -"bJI" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/chief) -"bJJ" = ( -/obj/structure/cable/white, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/crew_quarters/chief) -"bJK" = ( -/obj/machinery/door/poddoor/preopen{ - id = "ceblast"; - name = "Chief's Lockdown Shutters" - }, -/turf/open/floor/plasteel/warning/side, -/area/engine/break_room) -"bJL" = ( -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = 0; - pixel_y = -26 - }, -/turf/open/floor/plasteel/yellow/side{ - dir = 10 - }, -/area/engine/break_room) -"bJM" = ( -/obj/structure/rack, -/obj/item/weapon/book/manual/wiki/engineering_hacking{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/weapon/book/manual/wiki/engineering_guide, -/obj/item/weapon/book/manual/wiki/engineering_construction{ - pixel_x = 3; - pixel_y = -3 - }, -/turf/open/floor/plasteel/yellow/side, -/area/engine/break_room) -"bJN" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/stock_parts/cell/high, -/obj/item/weapon/stock_parts/cell/high, -/obj/machinery/cell_charger, -/turf/open/floor/plasteel/yellow/side, -/area/engine/break_room) -"bJO" = ( -/obj/machinery/light, -/obj/machinery/light_switch{ - pixel_y = -26 - }, -/obj/structure/table/reinforced, -/obj/item/weapon/paper_bin, -/obj/item/weapon/pen, -/turf/open/floor/plasteel/yellow/side, -/area/engine/break_room) -"bJP" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/yellow/side, -/area/engine/break_room) -"bJQ" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/yellow/side, -/area/engine/break_room) -"bJR" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/yellow/side, -/area/engine/break_room) -"bJS" = ( -/obj/machinery/status_display{ - pixel_y = -32 - }, -/turf/open/floor/plasteel/yellow/side, -/area/engine/break_room) -"bJT" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/turf/open/floor/plasteel/yellow/side{ - dir = 6 - }, -/area/engine/break_room) -"bJU" = ( -/obj/structure/cable/white{ - tag = "icon-0-2"; - icon_state = "0-2" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/checkpoint/engineering) -"bJV" = ( -/obj/structure/chair{ - dir = 4 - }, -/turf/open/floor/plasteel/red/side{ - dir = 9 - }, -/area/security/checkpoint/engineering) -"bJW" = ( -/turf/open/floor/plasteel/red/side{ - dir = 1 - }, -/area/security/checkpoint/engineering) -"bJX" = ( -/obj/machinery/light/small{ - dir = 4 - }, -/obj/structure/closet/secure_closet/brig{ - id = "engcell"; - name = "Engineering Cell Locker" - }, -/turf/open/floor/plasteel/red/side{ - dir = 5 - }, -/area/security/checkpoint/engineering) -"bJY" = ( -/obj/structure/sign/nanotrasen, -/turf/closed/wall/r_wall, -/area/security/checkpoint/engineering) -"bJZ" = ( -/obj/structure/table/reinforced, -/obj/item/clothing/gloves/color/yellow, -/obj/item/weapon/storage/toolbox/electrical, -/obj/item/device/multitool, -/obj/machinery/light{ - dir = 8 - }, -/obj/structure/extinguisher_cabinet{ - pixel_x = -26 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/storage/tech) -"bKa" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral, -/area/storage/tech) -"bKb" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/electronics/firelock, -/obj/item/weapon/electronics/firelock, -/obj/item/weapon/electronics/firealarm, -/obj/item/weapon/electronics/firealarm, -/obj/machinery/light{ - icon_state = "tube1"; - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/storage/tech) -"bKc" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/maintenance/fpmaint2{ - name = "Fore Port Maintenance" - }) -"bKd" = ( -/obj/structure/table/reinforced, -/obj/item/stack/sheet/metal{ - amount = 30 - }, -/obj/item/stack/sheet/glass{ - amount = 30 - }, -/obj/machinery/airalarm{ - dir = 4; - locked = 0; - pixel_x = -23; - pixel_y = 0 - }, -/turf/open/floor/plasteel/bot, -/area/storage/primary) -"bKe" = ( -/turf/open/floor/plasteel/yellow/side{ - dir = 10 - }, -/area/storage/primary) -"bKf" = ( -/turf/open/floor/plasteel/yellow/side, -/area/storage/primary) -"bKg" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/yellow/corner{ - dir = 8 - }, -/area/storage/primary) -"bKh" = ( -/turf/open/floor/plasteel/yellow/side{ - dir = 6 - }, -/area/storage/primary) -"bKi" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/storage/toolbox/electrical, -/turf/open/floor/plasteel/bot, -/area/storage/primary) -"bKj" = ( -/obj/structure/cable/white, -/obj/structure/cable/white{ - d2 = 2; - icon_state = "0-2"; - tag = "icon-0-2" - }, -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor/preopen{ - id = "councilblast"; - name = "Council Chambers Blast door" - }, -/turf/open/floor/plating, -/area/bridge/meeting_room{ - name = "Council Chamber" - }) -"bKk" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/photocopier, -/turf/open/floor/wood, -/area/bridge/meeting_room{ - name = "Council Chamber" - }) -"bKl" = ( -/obj/machinery/holopad, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/grimy, -/area/bridge/meeting_room{ - name = "Council Chamber" - }) -"bKm" = ( -/obj/structure/chair/comfy/brown{ - color = "#c45c57"; - dir = 4; - icon_state = "comfychair" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/carpet, -/area/bridge/meeting_room{ - name = "Council Chamber" - }) -"bKn" = ( -/obj/structure/table/wood, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/item/weapon/folder/blue, -/obj/item/weapon/pen, -/turf/open/floor/carpet, -/area/bridge/meeting_room{ - name = "Council Chamber" - }) -"bKo" = ( -/obj/structure/table/wood, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/item/weapon/folder/red, -/obj/item/weapon/lighter, -/turf/open/floor/carpet, -/area/bridge/meeting_room{ - name = "Council Chamber" - }) -"bKp" = ( -/obj/structure/table/wood, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/item/weapon/folder/yellow, -/obj/structure/disposalpipe/segment, -/turf/open/floor/carpet, -/area/bridge/meeting_room{ - name = "Council Chamber" - }) -"bKq" = ( -/obj/structure/table/wood, -/obj/item/weapon/storage/fancy/donut_box, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/plasteel/grimy, -/area/bridge/meeting_room{ - name = "Council Chamber" - }) -"bKr" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/wood, -/area/bridge/meeting_room{ - name = "Council Chamber" - }) -"bKs" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/wood, -/area/bridge/meeting_room{ - name = "Council Chamber" - }) -"bKt" = ( -/obj/machinery/vending/cigarette, -/obj/machinery/light{ - icon_state = "tube1"; - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/bridge/meeting_room{ - name = "Council Chamber" - }) -"bKu" = ( -/obj/machinery/announcement_system, -/obj/machinery/ai_status_display{ - pixel_x = -32 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/tcommsat/computer{ - name = "\improper Telecoms Control Room" - }) -"bKv" = ( -/obj/structure/chair/office/dark{ - dir = 1 - }, -/turf/open/floor/plasteel/grimy, -/area/tcommsat/computer{ - name = "\improper Telecoms Control Room" - }) -"bKw" = ( -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/grimy, -/area/tcommsat/computer{ - name = "\improper Telecoms Control Room" - }) -"bKx" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plasteel/grimy, -/area/tcommsat/computer{ - name = "\improper Telecoms Control Room" - }) -"bKy" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/holopad, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/turf/open/floor/plasteel/grimy, -/area/tcommsat/computer{ - name = "\improper Telecoms Control Room" - }) -"bKz" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/plasteel/grimy, -/area/tcommsat/computer{ - name = "\improper Telecoms Control Room" - }) -"bKA" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/plasteel/grimy, -/area/tcommsat/computer{ - name = "\improper Telecoms Control Room" - }) -"bKB" = ( -/obj/structure/chair/office/dark{ - dir = 4 - }, -/turf/open/floor/plasteel/grimy, -/area/tcommsat/computer{ - name = "\improper Telecoms Control Room" - }) -"bKC" = ( -/obj/machinery/computer/telecomms/monitor, -/obj/machinery/status_display{ - pixel_x = 32 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/tcommsat/computer{ - name = "\improper Telecoms Control Room" - }) -"bKD" = ( -/obj/machinery/vending/cigarette, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/crew_quarters/captain) -"bKE" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/wood, -/area/crew_quarters/captain) -"bKF" = ( -/obj/machinery/holopad, -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/wood, -/area/crew_quarters/captain) -"bKG" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/wood, -/area/crew_quarters/captain) -"bKH" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 2; - on = 1; - scrub_N2O = 1; - scrub_Toxins = 1 - }, -/turf/open/floor/wood, -/area/crew_quarters/captain) -"bKI" = ( -/obj/structure/chair/comfy/brown{ - icon_state = "comfychair"; - dir = 4 - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/captain) -"bKJ" = ( -/obj/structure/table/wood, -/obj/item/clothing/mask/cigarette/cigar/cohiba{ - pixel_x = 3 - }, -/obj/item/clothing/mask/cigarette/cigar/havana{ - pixel_x = -3 - }, -/obj/item/clothing/mask/cigarette/cigar, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/captain) -"bKK" = ( -/obj/machinery/light{ - icon_state = "tube1"; - dir = 4 - }, -/obj/structure/extinguisher_cabinet{ - pixel_x = 26 - }, -/turf/open/floor/wood, -/area/crew_quarters/captain) -"bKL" = ( -/obj/structure/rack, -/obj/item/clothing/gloves/color/fyellow, -/obj/item/clothing/suit/hazardvest, -/obj/item/device/multitool, -/obj/structure/extinguisher_cabinet{ - pixel_x = -26 - }, -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/turf/open/floor/plasteel/yellow/side{ - dir = 8 - }, -/area/storage/tools) -"bKM" = ( -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 2; - on = 1; - scrub_N2O = 1; - scrub_Toxins = 1 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral, -/area/storage/tools) -"bKN" = ( -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/turf/open/floor/plasteel/neutral, -/area/storage/tools) -"bKO" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 2; - on = 1 - }, -/turf/open/floor/plasteel/neutral, -/area/storage/tools) -"bKP" = ( -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = 26; - pixel_y = 0 - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/camera{ - c_tag = "Auxiliary Tool Storage"; - dir = 8; - name = "engineering camera" - }, -/turf/open/floor/plasteel/yellow/side{ - dir = 4 - }, -/area/storage/tools) -"bKQ" = ( -/obj/structure/table, -/obj/item/weapon/storage/box/bodybags, -/obj/item/clothing/gloves/color/latex, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/security/detectives_office) -"bKR" = ( -/obj/machinery/door/window/eastright{ - name = "Detective's Morgue" - }, -/turf/open/floor/plasteel/black, -/area/security/detectives_office) -"bKS" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHEAST)"; - icon_state = "intact"; - dir = 6 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/security/detectives_office) -"bKT" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plasteel/grimy, -/area/security/detectives_office) -"bKU" = ( -/obj/structure/chair/office/dark{ - dir = 4 - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/grimy, -/area/security/detectives_office) -"bKV" = ( -/obj/structure/table/wood, -/obj/item/weapon/folder/red, -/obj/item/weapon/hand_labeler, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/carpet, -/area/security/detectives_office) -"bKW" = ( -/obj/structure/chair/office/dark{ - dir = 8 - }, -/obj/effect/landmark/start{ - name = "Detective" - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/carpet, -/area/security/detectives_office) -"bKX" = ( -/obj/machinery/computer/secure_data, -/obj/machinery/light{ - icon_state = "tube1"; - dir = 4 - }, -/obj/machinery/status_display{ - pixel_x = 32 - }, -/turf/open/floor/carpet, -/area/security/detectives_office) -"bKY" = ( -/obj/structure/table/wood, -/obj/item/weapon/clipboard, -/obj/item/weapon/folder/red, -/obj/item/weapon/pen, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/security/detectives_office) -"bKZ" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/landmark/start{ - name = "Detective" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/security/detectives_office) -"bLa" = ( -/obj/effect/landmark{ - name = "lightsout" - }, -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/starboard) -"bLb" = ( -/obj/structure/closet/secure_closet/brig{ - id = "brig2"; - name = "Cell 2 Locker" - }, -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/plasteel/red/side{ - dir = 9 - }, -/area/security/brig) -"bLc" = ( -/obj/machinery/flasher{ - id = "brig2"; - pixel_y = 26 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/red/side{ - dir = 5 - }, -/area/security/brig) -"bLd" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plasteel/red/corner{ - dir = 1 - }, -/area/security/brig) -"bLe" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/holopad, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/bot, -/area/security/brig) -"bLf" = ( -/obj/structure/table/reinforced, -/obj/machinery/door/firedoor, -/obj/machinery/door/window/brigdoor/northright{ - dir = 4; - name = "Warden's Desk"; - req_access_txt = "3" - }, -/obj/machinery/door/window/westleft{ - name = "Warden's Desk" - }, -/obj/item/weapon/folder/red, -/obj/item/weapon/pen, -/turf/open/floor/plasteel/delivery, -/area/security/warden) -"bLg" = ( -/obj/structure/chair/office/dark{ - dir = 8 - }, -/obj/effect/landmark/start{ - name = "Warden" - }, -/turf/open/floor/plasteel/red/side{ - dir = 8 - }, -/area/security/warden) -"bLh" = ( -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 2; - on = 1; - scrub_N2O = 1; - scrub_Toxins = 1 - }, -/turf/open/floor/plasteel/neutral, -/area/security/warden) -"bLi" = ( -/obj/machinery/computer/secure_data, -/turf/open/floor/plasteel/red/side{ - dir = 6 - }, -/area/security/warden) -"bLj" = ( -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/ai_monitored/security/armory) -"bLk" = ( -/turf/open/floor/plasteel/warning{ - dir = 9 - }, -/area/ai_monitored/security/armory) -"bLl" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 2; - on = 1; - scrub_N2O = 1; - scrub_Toxins = 1 - }, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/ai_monitored/security/armory) -"bLm" = ( -/turf/open/floor/plasteel/warning{ - dir = 5 - }, -/area/ai_monitored/security/armory) -"bLn" = ( -/obj/structure/closet/secure_closet{ - anchored = 1; - name = "Contraband Locker"; - req_access_txt = "3" - }, -/obj/machinery/light{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/ai_monitored/security/armory) -"bLo" = ( -/obj/structure/window/reinforced{ - dir = 4; - pixel_x = 0 - }, -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/camera{ - c_tag = "AI Satellite - Port"; - dir = 8; - name = "ai camera"; - network = list("Sat"); - pixel_x = 0; - pixel_y = 0; - start_active = 1 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/construction/hallway{ - name = "\improper MiniSat Exterior" - }) -"bLp" = ( -/turf/closed/wall/r_wall, -/area/ai_monitored/turret_protected/aisat_interior) -"bLq" = ( -/obj/machinery/ai_status_display, -/turf/closed/wall/r_wall, -/area/ai_monitored/turret_protected/aisat_interior) -"bLr" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall/r_wall, -/area/ai_monitored/turret_protected/aisat_interior) -"bLs" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/highsecurity{ - locked = 1; - name = "MiniSat Chamber"; - req_access_txt = "16" - }, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "aicoredoor"; - name = "AI Core Access" - }, -/obj/machinery/flasher{ - id = "AI"; - pixel_x = -26 - }, -/obj/item/device/radio/intercom{ - broadcasting = 1; - frequency = 1447; - listening = 0; - name = "AI Intercom"; - pixel_x = 28; - pixel_y = 0 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/ai_monitored/turret_protected/aisat_interior) -"bLt" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/closed/wall/r_wall, -/area/ai_monitored/turret_protected/aisat_interior) -"bLu" = ( -/obj/structure/sign/kiddieplaque, -/turf/closed/wall/r_wall, -/area/ai_monitored/turret_protected/aisat_interior) -"bLv" = ( -/obj/machinery/status_display, -/turf/closed/wall/r_wall, -/area/ai_monitored/turret_protected/aisat_interior) -"bLw" = ( -/obj/structure/window/reinforced{ - dir = 4; - pixel_x = 0 - }, -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/camera{ - c_tag = "AI Satellite - Starboard"; - dir = 4; - name = "ai camera"; - network = list("Sat"); - pixel_x = 0; - pixel_y = 0; - start_active = 1 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/construction/hallway{ - name = "\improper MiniSat Exterior" - }) -"bLx" = ( -/obj/structure/lattice/catwalk, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/space, -/area/space) -"bLy" = ( -/obj/machinery/light/small, -/obj/structure/sign/vacuum{ - pixel_x = -32 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/engine/break_room{ - name = "Transit Tube" - }) -"bLz" = ( -/turf/closed/wall, -/area/engine/break_room{ - name = "Transit Tube" - }) -"bLA" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/obj/machinery/airalarm{ - dir = 4; - locked = 0; - pixel_x = -23; - pixel_y = 0 - }, -/obj/machinery/flasher{ - id = "AI"; - pixel_x = -26; - pixel_y = -26 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/engine/break_room{ - name = "Transit Tube" - }) -"bLB" = ( -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/engine/break_room{ - name = "Transit Tube" - }) -"bLC" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/engine/break_room{ - name = "Transit Tube" - }) -"bLD" = ( -/obj/machinery/computer/atmos_alert, -/obj/machinery/requests_console{ - announcementConsole = 1; - department = "Chief Engineer's Desk"; - departmentType = 5; - name = "Chief Engineer's RC"; - pixel_x = -32; - pixel_y = 0 - }, -/obj/machinery/camera{ - c_tag = "Engineering - Chief Engineer's Office"; - dir = 4; - name = "engineering camera" - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/chief) -"bLE" = ( -/turf/open/floor/plasteel/neutral/side{ - tag = "icon-neutral (EAST)"; - icon_state = "neutral"; - dir = 4 - }, -/area/crew_quarters/chief) -"bLF" = ( -/obj/structure/chair/office/light{ - dir = 4 - }, -/obj/effect/landmark/start{ - name = "Chief Engineer" - }, -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/chief) -"bLG" = ( -/obj/structure/table/reinforced, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/item/weapon/folder/blue{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/folder/yellow, -/obj/item/weapon/lighter, -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/chief) -"bLH" = ( -/obj/structure/chair/office/light{ - dir = 8 - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral/side{ - dir = 8; - heat_capacity = 1e+006 - }, -/area/crew_quarters/chief) -"bLI" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/chief) -"bLJ" = ( -/obj/structure/sign/electricshock, -/turf/closed/wall/r_wall, -/area/crew_quarters/chief) -"bLK" = ( -/obj/structure/sign/nanotrasen, -/turf/closed/wall/r_wall, -/area/crew_quarters/chief) -"bLL" = ( -/obj/structure/sign/nosmoking_2, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall, -/area/engine/break_room) -"bLM" = ( -/obj/machinery/door/firedoor, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/door/airlock/engineering{ - name = "Engineering Access"; - req_access_txt = "10" - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (EAST)"; - icon_state = "plasteel_warn_side"; - dir = 4 - }, -/area/engine/break_room) -"bLN" = ( -/obj/structure/sign/securearea, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/closed/wall, -/area/engine/break_room) -"bLO" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/turf/open/floor/plasteel/delivery, -/area/engine/break_room) -"bLP" = ( -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/structure/cable/white, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/checkpoint/engineering) -"bLQ" = ( -/obj/structure/chair{ - dir = 4 - }, -/turf/open/floor/plasteel/red/side{ - dir = 10 - }, -/area/security/checkpoint/engineering) -"bLR" = ( -/turf/open/floor/plasteel/red/side, -/area/security/checkpoint/engineering) -"bLS" = ( -/turf/open/floor/plasteel/red/side{ - dir = 6 - }, -/area/security/checkpoint/engineering) -"bLT" = ( -/turf/closed/wall/r_wall, -/area/security/checkpoint/engineering) -"bLU" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/firealarm{ - dir = 8; - pixel_x = -24 - }, -/turf/open/floor/plasteel/yellow/corner{ - dir = 8 - }, -/area/hallway/primary/port) -"bLV" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/port) -"bLW" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plasteel/yellow/corner{ - dir = 4 - }, -/area/hallway/primary/port) -"bLX" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/book/manual/wiki/engineering_hacking{ - pixel_y = 3 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/storage/tech) -"bLY" = ( -/obj/structure/table/reinforced, -/obj/item/device/assembly/timer, -/obj/item/device/assembly/timer, -/obj/item/device/assembly/voice, -/obj/item/device/assembly/voice, -/turf/open/floor/plasteel/bot, -/area/storage/tech) -"bLZ" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/obj/machinery/firealarm{ - dir = 1; - pixel_x = 0; - pixel_y = -24 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/delivery, -/area/storage/tech) -"bMa" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/obj/machinery/light_switch{ - pixel_y = -26 - }, -/turf/open/floor/plasteel/delivery, -/area/storage/tech) -"bMb" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/wrench, -/obj/item/weapon/crowbar, -/obj/item/device/paicard, -/obj/machinery/newscaster{ - pixel_y = -32 - }, -/turf/open/floor/plasteel/bot, -/area/storage/tech) -"bMc" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/storage/toolbox/mechanical, -/obj/item/device/flashlight, -/obj/item/device/flashlight, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/storage/tech) -"bMd" = ( -/obj/structure/table/reinforced, -/obj/item/device/assembly/timer, -/obj/item/device/assembly/timer, -/obj/item/device/multitool, -/obj/item/device/multitool, -/obj/machinery/light, -/turf/open/floor/plasteel/bot, -/area/storage/primary) -"bMe" = ( -/obj/structure/reagent_dispensers/fueltank, -/turf/open/floor/plasteel/delivery, -/area/storage/primary) -"bMf" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/delivery, -/area/storage/primary) -"bMg" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/stock_parts/cell/high, -/obj/item/weapon/stock_parts/cell/high, -/obj/machinery/cell_charger, -/turf/open/floor/plasteel/bot, -/area/storage/primary) -"bMh" = ( -/obj/structure/table/reinforced, -/obj/item/device/radio{ - pixel_x = 5; - pixel_y = 5 - }, -/obj/item/device/radio{ - pixel_x = -5; - pixel_y = 5 - }, -/obj/item/device/radio, -/obj/machinery/firealarm{ - dir = 1; - pixel_x = 0; - pixel_y = -24 - }, -/obj/machinery/light_switch{ - pixel_x = 26 - }, -/obj/machinery/light{ - dir = 4 - }, -/turf/open/floor/plasteel/bot, -/area/storage/primary) -"bMi" = ( -/turf/closed/wall, -/area/storage/primary) -"bMj" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/obj/machinery/camera{ - c_tag = "Central Hallway - Port"; - dir = 4; - name = "hallway camera" - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 1 - }, -/area/hallway/primary/central) -"bMk" = ( -/obj/structure/cable/white, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor/preopen{ - id = "councilblast"; - name = "Council Chambers Blast door" - }, -/turf/open/floor/plating, -/area/bridge/meeting_room{ - name = "Council Chamber" - }) -"bMl" = ( -/obj/structure/table/wood, -/obj/item/weapon/folder/red, -/obj/item/weapon/book/manual/wiki/security_space_law, -/turf/open/floor/wood, -/area/bridge/meeting_room{ - name = "Council Chamber" - }) -"bMm" = ( -/turf/open/floor/carpet, -/area/bridge/meeting_room{ - name = "Council Chamber" - }) -"bMn" = ( -/obj/structure/chair/comfy/brown{ - buildstackamount = 0; - dir = 1 - }, -/turf/open/floor/carpet, -/area/bridge/meeting_room{ - name = "Council Chamber" - }) -"bMo" = ( -/obj/structure/chair/comfy/black{ - dir = 1 - }, -/turf/open/floor/carpet, -/area/bridge/meeting_room{ - name = "Council Chamber" - }) -"bMp" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/chair/comfy/brown{ - dir = 1 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/carpet, -/area/bridge/meeting_room{ - name = "Council Chamber" - }) -"bMq" = ( -/obj/structure/table/wood, -/obj/item/weapon/paper_bin, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/grimy, -/area/bridge/meeting_room{ - name = "Council Chamber" - }) -"bMr" = ( -/obj/machinery/newscaster{ - pixel_x = 32; - pixel_y = -32 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/wood, -/area/bridge/meeting_room{ - name = "Council Chamber" - }) -"bMs" = ( -/turf/open/floor/wood, -/area/bridge/meeting_room{ - name = "Council Chamber" - }) -"bMt" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/bridge/meeting_room{ - name = "Council Chamber" - }) -"bMu" = ( -/obj/machinery/computer/message_monitor, -/obj/machinery/newscaster{ - pixel_x = -32 - }, -/obj/item/weapon/paper/monitorkey, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/tcommsat/computer{ - name = "\improper Telecoms Control Room" - }) -"bMv" = ( -/obj/structure/chair/office/dark{ - dir = 8 - }, -/turf/open/floor/plasteel/grimy, -/area/tcommsat/computer{ - name = "\improper Telecoms Control Room" - }) -"bMw" = ( -/turf/open/floor/plasteel/grimy, -/area/tcommsat/computer{ - name = "\improper Telecoms Control Room" - }) -"bMx" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/grimy, -/area/tcommsat/computer{ - name = "\improper Telecoms Control Room" - }) -"bMy" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/grimy, -/area/tcommsat/computer{ - name = "\improper Telecoms Control Room" - }) -"bMz" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/grimy, -/area/tcommsat/computer{ - name = "\improper Telecoms Control Room" - }) -"bMA" = ( -/obj/structure/chair/office/dark, -/turf/open/floor/plasteel/grimy, -/area/tcommsat/computer{ - name = "\improper Telecoms Control Room" - }) -"bMB" = ( -/obj/machinery/computer/telecomms/server, -/obj/machinery/newscaster{ - pixel_x = 32 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/tcommsat/computer{ - name = "\improper Telecoms Control Room" - }) -"bMC" = ( -/obj/structure/bed/dogbed{ - anchored = 1; - desc = "Renault's bed! Looks comfy. A foxy person needs a foxy pet."; - name = "Renault's bed"; - pixel_y = 2 - }, -/mob/living/simple_animal/pet/fox/Renault, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/crew_quarters/captain) -"bMD" = ( -/obj/machinery/newscaster{ - pixel_x = -32; - pixel_y = -32 - }, -/obj/item/device/radio/intercom{ - pixel_y = -26 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHEAST)"; - icon_state = "intact"; - dir = 5 - }, -/turf/open/floor/wood, -/area/crew_quarters/captain) -"bME" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/wood, -/area/crew_quarters/captain) -"bMF" = ( -/obj/structure/chair/comfy/brown, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/wood, -/area/crew_quarters/captain) -"bMG" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/wood, -/area/crew_quarters/captain) -"bMH" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHWEST)"; - icon_state = "intact"; - dir = 9 - }, -/turf/open/floor/wood, -/area/crew_quarters/captain) -"bMI" = ( -/obj/machinery/power/apc{ - cell_type = 10000; - dir = 2; - name = "Captain's Office APC"; - pixel_y = -24 - }, -/obj/structure/cable/white, -/turf/open/floor/wood, -/area/crew_quarters/captain) -"bMJ" = ( -/obj/structure/sign/goldenplaque{ - name = "The Most Robust Captain Award for Robustness"; - pixel_x = 32 - }, -/turf/open/floor/wood, -/area/crew_quarters/captain) -"bMK" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/light{ - dir = 4 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral/corner{ - dir = 4 - }, -/area/hallway/primary/central) -"bML" = ( -/obj/structure/rack, -/obj/item/weapon/storage/toolbox/emergency{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/weapon/storage/toolbox/emergency, -/obj/effect/decal/cleanable/dirt, -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plasteel/yellow/side{ - dir = 10 - }, -/area/storage/tools) -"bMM" = ( -/obj/structure/table, -/obj/item/stack/sheet/metal, -/obj/item/stack/rods{ - amount = 50 - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/yellow/corner{ - dir = 8 - }, -/area/storage/tools) -"bMN" = ( -/turf/open/floor/plasteel, -/area/storage/tools) -"bMO" = ( -/obj/structure/table, -/obj/item/stack/sheet/glass/fifty, -/obj/item/weapon/storage/box/lights/mixed, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/yellow/corner, -/area/storage/tools) -"bMP" = ( -/obj/structure/table, -/obj/item/stack/packageWrap, -/obj/item/weapon/hand_labeler, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/yellow/side{ - dir = 6 - }, -/area/storage/tools) -"bMQ" = ( -/obj/structure/bodycontainer/morgue, -/obj/machinery/light/small{ - dir = 8 - }, -/obj/effect/landmark{ - name = "revenantspawn" - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/security/detectives_office) -"bMR" = ( -/obj/structure/window/reinforced{ - dir = 4; - pixel_x = 0 - }, -/turf/open/floor/plasteel/black, -/area/security/detectives_office) -"bMS" = ( -/obj/machinery/firealarm{ - dir = 1; - pixel_x = 0; - pixel_y = -26 - }, -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/security/detectives_office) -"bMT" = ( -/obj/machinery/airalarm{ - dir = 1; - icon_state = "alarm0"; - pixel_y = -22 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/security/detectives_office) -"bMU" = ( -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/grimy, -/area/security/detectives_office) -"bMV" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/turf/open/floor/plasteel/grimy, -/area/security/detectives_office) -"bMW" = ( -/obj/structure/table/wood, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/item/weapon/paper_bin, -/obj/item/weapon/pen, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/carpet, -/area/security/detectives_office) -"bMX" = ( -/obj/machinery/computer/security/wooden_tv{ - density = 0 - }, -/obj/structure/table/wood, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/machinery/button/door{ - id = "detectivewindows"; - name = "Privacy Shutters"; - pixel_x = 26; - pixel_y = -26; - req_access_txt = "4" - }, -/obj/machinery/light_switch{ - pixel_x = 38; - pixel_y = -26 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/carpet, -/area/security/detectives_office) -"bMY" = ( -/obj/structure/table/wood, -/obj/item/device/flashlight/lamp, -/obj/item/weapon/storage/secure/safe{ - pixel_x = 32 - }, -/obj/item/weapon/reagent_containers/food/drinks/flask/det, -/turf/open/floor/carpet, -/area/security/detectives_office) -"bMZ" = ( -/obj/structure/chair/office/dark{ - dir = 1 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/security/detectives_office) -"bNa" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-18" - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/security/detectives_office) -"bNb" = ( -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/door/window/brigdoor/westright{ - id = "brig2"; - name = "Cell 2"; - req_access_txt = "2" - }, -/turf/open/floor/plasteel/red/side{ - dir = 8 - }, -/area/security/brig) -"bNc" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/paper_bin, -/obj/item/weapon/pen, -/turf/open/floor/plasteel/red/side{ - dir = 8 - }, -/area/security/warden) -"bNd" = ( -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral, -/area/security/warden) -"bNe" = ( -/obj/machinery/computer/security, -/turf/open/floor/plasteel/red, -/area/security/warden) -"bNf" = ( -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/ai_monitored/security/armory) -"bNg" = ( -/obj/structure/rack, -/obj/item/weapon/gun/ballistic/shotgun/riot{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/weapon/gun/ballistic/shotgun/riot, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/bot, -/area/ai_monitored/security/armory) -"bNh" = ( -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/ai_monitored/security/armory) -"bNi" = ( -/obj/structure/rack, -/obj/item/clothing/suit/armor/vest{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/clothing/suit/armor/vest{ - pixel_y = 0 - }, -/obj/item/clothing/suit/armor/vest{ - pixel_x = 3; - pixel_y = -3 - }, -/obj/item/clothing/head/helmet{ - layer = 3.00001; - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/clothing/head/helmet{ - layer = 3.00001 - }, -/obj/item/clothing/head/helmet{ - layer = 3.00001; - pixel_x = 3; - pixel_y = -3 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/ai_monitored/security/armory) -"bNj" = ( -/obj/structure/lattice, -/obj/structure/window/reinforced, -/obj/structure/window/reinforced{ - dir = 8 - }, -/turf/open/space, -/area/space) -"bNk" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible, -/obj/machinery/portable_atmospherics/canister/air, -/turf/open/floor/plating/warnplate/corner{ - dir = 8 - }, -/area/ai_monitored/turret_protected/aisat_interior) -"bNl" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/machinery/portable_atmospherics/canister/air, -/obj/machinery/airalarm{ - pixel_y = 23 - }, -/turf/open/floor/plating/warnplate{ - dir = 1 - }, -/area/ai_monitored/turret_protected/aisat_interior) -"bNm" = ( -/obj/machinery/power/smes{ - charge = 5e+006 - }, -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/machinery/light{ - dir = 1 - }, -/obj/machinery/ai_status_display{ - pixel_y = 32 - }, -/turf/open/floor/plating/warnplate{ - dir = 1 - }, -/area/ai_monitored/turret_protected/aisat_interior) -"bNn" = ( -/obj/machinery/power/port_gen/pacman, -/obj/structure/cable/yellow{ - d2 = 2; - icon_state = "0-2" - }, -/obj/structure/sign/electricshock{ - pixel_y = 32 - }, -/turf/open/floor/plating/warnplate{ - dir = 1 - }, -/area/ai_monitored/turret_protected/aisat_interior) -"bNo" = ( -/obj/machinery/cell_charger, -/obj/structure/table/reinforced, -/obj/item/weapon/stock_parts/cell/high, -/turf/open/floor/plating/warnplate/corner{ - dir = 4 - }, -/area/ai_monitored/turret_protected/aisat_interior) -"bNp" = ( -/obj/structure/sign/nanotrasen, -/turf/closed/wall/r_wall, -/area/ai_monitored/turret_protected/aisat_interior) -"bNq" = ( -/obj/machinery/porta_turret/ai, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/ai_monitored/turret_protected/aisat_interior) -"bNr" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/turf/open/floor/plasteel/vault, -/area/ai_monitored/turret_protected/aisat_interior) -"bNs" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/camera{ - c_tag = "AI Satellite - Antechamber"; - dir = 2; - name = "ai camera"; - network = list("Sat"); - pixel_x = 0; - pixel_y = 0; - start_active = 1 - }, -/turf/open/floor/plasteel/vault, -/area/ai_monitored/turret_protected/aisat_interior) -"bNt" = ( -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/ai_monitored/turret_protected/aisat_interior) -"bNu" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/vault, -/area/ai_monitored/turret_protected/aisat_interior) -"bNv" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/turf/open/floor/plasteel/vault, -/area/ai_monitored/turret_protected/aisat_interior) -"bNw" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/ai_monitored/turret_protected/aisat_interior) -"bNx" = ( -/obj/machinery/teleport/hub, -/obj/machinery/airalarm{ - pixel_y = 23 - }, -/turf/open/floor/plasteel/darkwarning{ - dir = 10 - }, -/area/ai_monitored/turret_protected/aisat_interior) -"bNy" = ( -/obj/machinery/teleport/station, -/obj/machinery/light{ - dir = 1 - }, -/obj/machinery/ai_status_display{ - pixel_y = 32 - }, -/turf/open/floor/plasteel/darkwarning, -/area/ai_monitored/turret_protected/aisat_interior) -"bNz" = ( -/obj/machinery/computer/teleporter, -/turf/open/floor/plasteel/darkwarning{ - dir = 6 - }, -/area/ai_monitored/turret_protected/aisat_interior) -"bNA" = ( -/obj/structure/lattice, -/obj/structure/window/reinforced, -/obj/structure/window/reinforced{ - dir = 4; - pixel_x = 0 - }, -/turf/open/space, -/area/space) -"bNB" = ( -/obj/structure/lattice, -/obj/structure/window/reinforced, -/turf/open/space, -/area/space) -"bNC" = ( -/obj/structure/sign/vacuum, -/turf/closed/wall, -/area/space) -"bND" = ( -/obj/structure/lattice, -/obj/structure/transit_tube/curved/flipped{ - tag = "icon-curved1 (EAST)"; - icon_state = "curved1"; - dir = 4 - }, -/turf/open/space, -/area/space) -"bNE" = ( -/obj/structure/lattice, -/obj/structure/transit_tube/crossing/horizontal, -/turf/open/space, -/area/space) -"bNF" = ( -/obj/structure/lattice, -/obj/structure/transit_tube/curved{ - tag = "icon-curved0 (WEST)"; - icon_state = "curved0"; - dir = 8 - }, -/turf/open/space, -/area/space) -"bNG" = ( -/obj/structure/lattice/catwalk, -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHEAST)"; - icon_state = "intact"; - dir = 5 - }, -/turf/open/space, -/area/space) -"bNH" = ( -/obj/structure/lattice/catwalk, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHWEST)"; - icon_state = "intact"; - dir = 9 - }, -/turf/open/space, -/area/space) -"bNI" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/engine/break_room{ - name = "Transit Tube" - }) -"bNJ" = ( -/obj/machinery/door/airlock/hatch{ - name = "MiniSat Transit Tube Access"; - req_one_access_txt = "32;19" - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/engine/break_room{ - name = "Transit Tube" - }) -"bNK" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/engine/break_room{ - name = "Transit Tube" - }) -"bNL" = ( -/obj/machinery/computer/monitor, -/obj/machinery/keycard_auth{ - pixel_x = -26 - }, -/obj/machinery/button/door{ - id = "engstorage"; - name = "Engineering Secure Storage Control"; - pixel_x = -38; - pixel_y = 8; - req_access_txt = "11" - }, -/obj/machinery/button/door{ - id = "transitlock"; - name = "Transit Tube Lockdown Control"; - pixel_x = -38; - pixel_y = -8; - req_access_txt = "39; 19" - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/chief) -"bNM" = ( -/obj/machinery/holopad, -/turf/open/floor/plasteel/bot, -/area/crew_quarters/chief) -"bNN" = ( -/obj/structure/table/reinforced, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/item/weapon/clipboard, -/obj/item/toy/figure/ce, -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/chief) -"bNO" = ( -/obj/structure/chair/office/light{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral/side{ - dir = 8; - heat_capacity = 1e+006 - }, -/area/crew_quarters/chief) -"bNP" = ( -/obj/structure/cable/white{ - tag = "icon-0-2"; - icon_state = "0-2" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/tinted/fulltile, -/turf/open/floor/plating, -/area/crew_quarters/chief) -"bNQ" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/obj/machinery/newscaster{ - pixel_y = 32 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/chief) -"bNR" = ( -/obj/structure/table/wood, -/obj/item/device/flashlight/lamp, -/obj/machinery/ai_status_display{ - pixel_y = 32 - }, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/chief) -"bNS" = ( -/obj/structure/bed, -/obj/item/weapon/bedsheet/ce, -/obj/machinery/light{ - dir = 1 - }, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/chief) -"bNT" = ( -/obj/structure/dresser, -/obj/machinery/status_display{ - pixel_y = 32 - }, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/chief) -"bNU" = ( -/obj/structure/closet/secure_closet/engineering_chief, -/obj/machinery/button/door{ - id = "ceprivacy"; - name = "Privacy Control"; - pixel_x = 26; - req_access_txt = "56" - }, -/obj/machinery/light_switch{ - pixel_w = 0; - pixel_x = 26; - pixel_y = 26 - }, -/obj/machinery/camera{ - c_tag = "Engineering - Chief Engineer's Quarters"; - dir = 2; - name = "engineering camera" - }, -/turf/open/floor/plasteel/warning{ - dir = 9 - }, -/area/crew_quarters/chief) -"bNV" = ( -/obj/structure/closet/radiation, -/obj/structure/extinguisher_cabinet{ - pixel_x = -26 - }, -/obj/machinery/light/small{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/warning{ - dir = 9 - }, -/area/engine/engineering) -"bNW" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/delivery, -/area/engine/engineering) -"bNX" = ( -/obj/structure/closet/toolcloset, -/obj/machinery/light/small{ - dir = 1 - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/warning{ - dir = 5 - }, -/area/engine/engineering) -"bNY" = ( -/turf/closed/wall, -/area/engine/engineering) -"bNZ" = ( -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/checkpoint/engineering) -"bOa" = ( -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/machinery/door/window/brigdoor{ - dir = 1; - id = "engcell"; - name = "Engineering Cell"; - req_access_txt = "63" - }, -/turf/open/floor/plasteel/red, -/area/security/checkpoint/engineering) -"bOb" = ( -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/checkpoint/engineering) -"bOc" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/camera{ - c_tag = "Engineering Hallway - Center"; - dir = 8; - name = "hallway camera" - }, -/turf/open/floor/plasteel/yellow/corner{ - dir = 4 - }, -/area/hallway/primary/port) -"bOd" = ( -/obj/structure/sign/nanotrasen, -/turf/closed/wall, -/area/storage/tech) -"bOe" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall, -/area/storage/tech) -"bOf" = ( -/obj/machinery/door/firedoor, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/door/airlock/engineering{ - name = "Technology Storage"; - req_access_txt = "23" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/storage/tech) -"bOg" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass_engineering{ - name = "Primary Tool Storage"; - req_access_txt = "0" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/storage/primary) -"bOh" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass_engineering{ - name = "Primary Tool Storage"; - req_access_txt = "0" - }, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/storage/primary) -"bOi" = ( -/obj/structure/sign/directions/science{ - dir = 2 - }, -/obj/structure/sign/directions/engineering{ - dir = 8; - pixel_y = 8 - }, -/obj/structure/sign/directions/engineering{ - desc = "A direction sign, pointing out which way the Command department is."; - dir = 4; - icon_state = "direction_bridge"; - name = "command department"; - pixel_y = -8; - tag = "icon-direction_bridge" - }, -/turf/closed/wall, -/area/storage/primary) -"bOj" = ( -/obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/hallway/primary/central) -"bOk" = ( -/obj/machinery/ai_status_display{ - pixel_x = -32 - }, -/obj/structure/table/wood, -/obj/item/weapon/storage/briefcase{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/storage/secure/briefcase, -/turf/open/floor/wood, -/area/bridge/meeting_room{ - name = "Council Chamber" - }) -"bOl" = ( -/obj/machinery/button/door{ - id = "councilblast"; - name = "Council Blast doors"; - pixel_x = -26; - pixel_y = -26 - }, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = 0; - pixel_y = -26 - }, -/obj/structure/bookcase/random, -/turf/open/floor/wood, -/area/bridge/meeting_room{ - name = "Council Chamber" - }) -"bOm" = ( -/obj/machinery/light, -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/turf/open/floor/wood, -/area/bridge/meeting_room{ - name = "Council Chamber" - }) -"bOn" = ( -/obj/machinery/airalarm{ - dir = 1; - icon_state = "alarm0"; - pixel_y = -22 - }, -/obj/machinery/camera{ - c_tag = "Bridge - Council Chamber"; - dir = 1; - name = "command camera" - }, -/turf/open/floor/wood, -/area/bridge/meeting_room{ - name = "Council Chamber" - }) -"bOo" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/light_switch{ - pixel_x = 26; - pixel_y = -26 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/wood, -/area/bridge/meeting_room{ - name = "Council Chamber" - }) -"bOp" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/wood, -/area/bridge/meeting_room{ - name = "Council Chamber" - }) -"bOq" = ( -/obj/structure/table/wood, -/obj/machinery/microwave{ - desc = "Cooks and boils stuff, somehow."; - pixel_x = -3; - pixel_y = 5 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/tcommsat/computer{ - name = "\improper Telecoms Control Room" - }) -"bOr" = ( -/obj/structure/table/wood, -/obj/item/weapon/storage/box/donkpockets, -/turf/open/floor/plasteel/grimy, -/area/tcommsat/computer{ - name = "\improper Telecoms Control Room" - }) -"bOs" = ( -/obj/structure/filingcabinet/security, -/turf/open/floor/plasteel/grimy, -/area/tcommsat/computer{ - name = "\improper Telecoms Control Room" - }) -"bOt" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/grimy, -/area/tcommsat/computer{ - name = "\improper Telecoms Control Room" - }) -"bOu" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/grimy, -/area/tcommsat/computer{ - name = "\improper Telecoms Control Room" - }) -"bOv" = ( -/obj/structure/filingcabinet/medical, -/turf/open/floor/plasteel/grimy, -/area/tcommsat/computer{ - name = "\improper Telecoms Control Room" - }) -"bOw" = ( -/obj/structure/table/wood, -/obj/item/weapon/folder/red, -/obj/item/weapon/pen, -/turf/open/floor/plasteel/grimy, -/area/tcommsat/computer{ - name = "\improper Telecoms Control Room" - }) -"bOx" = ( -/obj/structure/table/wood, -/obj/machinery/firealarm{ - dir = 1; - pixel_x = 0; - pixel_y = -26 - }, -/obj/item/weapon/phone{ - desc = "Supposedly a direct line to NanoTrasen Central Command. It's not even plugged in."; - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/weapon/cigbutt/cigarbutt{ - pixel_x = 6 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/tcommsat/computer{ - name = "\improper Telecoms Control Room" - }) -"bOy" = ( -/obj/structure/table/wood, -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/obj/item/device/flashlight/lamp/green, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/camera{ - c_tag = "Bridge - Captain's Office"; - dir = 4; - name = "command camera" - }, -/turf/open/floor/carpet, -/area/crew_quarters/captain) -"bOz" = ( -/obj/structure/table/wood, -/obj/item/weapon/folder/blue, -/obj/item/weapon/pen/fourcolor, -/obj/item/weapon/stamp/captain, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/carpet, -/area/crew_quarters/captain) -"bOA" = ( -/obj/structure/table/wood, -/obj/item/weapon/paper_bin, -/turf/open/floor/carpet, -/area/crew_quarters/captain) -"bOB" = ( -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/captain) -"bOC" = ( -/obj/structure/table/wood, -/obj/item/weapon/storage/secure/briefcase{ - pixel_x = 5; - pixel_y = 5 - }, -/obj/item/weapon/storage/lockbox/medal, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/captain) -"bOD" = ( -/obj/structure/table/wood, -/obj/item/weapon/storage/photo_album, -/obj/item/device/camera, -/turf/open/floor/wood, -/area/crew_quarters/captain) -"bOE" = ( -/obj/structure/table/wood, -/obj/machinery/recharger, -/turf/open/floor/wood, -/area/crew_quarters/captain) -"bOF" = ( -/obj/structure/sign/directions/science{ - dir = 2; - pixel_y = -8 - }, -/obj/structure/sign/directions/engineering{ - desc = "A direction sign, pointing out which way the Command department is."; - dir = 1; - icon_state = "direction_bridge"; - name = "command department"; - pixel_y = 0; - tag = "icon-direction_bridge" - }, -/obj/structure/sign/directions/engineering{ - desc = "A direction sign, pointing out which way the Supply department is."; - dir = 1; - icon_state = "direction_supply"; - name = "supply department"; - pixel_y = 8; - tag = "icon-direction_supply" - }, -/turf/closed/wall, -/area/storage/tools) -"bOG" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plating, -/area/storage/tools) -"bOH" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass_engineering{ - name = "Auxiliary Tool Storage"; - req_access_txt = "12" - }, -/turf/open/floor/plasteel, -/area/storage/tools) -"bOI" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/storage/tools) -"bOJ" = ( -/obj/structure/cable/white, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor/preopen{ - id = "detectivewindows"; - name = "Detective Privacy Blast door" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/security/detectives_office) -"bOK" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/security{ - name = "Detective's Office"; - req_access = null; - req_access_txt = "4" - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/red/side{ - dir = 1 - }, -/area/security/detectives_office) -"bOL" = ( -/obj/structure/cable/white, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor/preopen{ - id = "detectivewindows"; - name = "Detective Privacy Blast door" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/security/detectives_office) -"bOM" = ( -/obj/structure/cable/white, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor/preopen{ - id = "detectivewindows"; - name = "Detective Privacy Blast door" - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plating, -/area/security/detectives_office) -"bON" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment, -/obj/machinery/firealarm{ - dir = 8; - pixel_x = -24 - }, -/turf/open/floor/plasteel/red/corner{ - dir = 1 - }, -/area/hallway/primary/starboard) -"bOO" = ( -/obj/structure/chair{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/open/floor/plasteel/red/side{ - dir = 6 - }, -/area/security/brig) -"bOP" = ( -/obj/structure/cable/white, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/security/brig) -"bOQ" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/red/corner{ - dir = 8 - }, -/area/security/brig) -"bOR" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral, -/area/security/brig) -"bOS" = ( -/obj/structure/table/reinforced, -/obj/machinery/airalarm{ - dir = 4; - locked = 0; - pixel_x = -23; - pixel_y = 0 - }, -/obj/item/weapon/clipboard, -/obj/item/toy/figure/warden, -/obj/machinery/light{ - dir = 8 - }, -/turf/open/floor/plasteel/red/side{ - dir = 8 - }, -/area/security/warden) -"bOT" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral, -/area/security/warden) -"bOU" = ( -/obj/machinery/computer/prisoner, -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/machinery/power/apc{ - dir = 4; - name = "Warden's Office APC"; - pixel_x = 26; - pixel_y = 0 - }, -/obj/machinery/camera{ - c_tag = "Security - Warden's Office"; - dir = 8; - name = "security camera" - }, -/turf/open/floor/plasteel/red/side{ - dir = 5 - }, -/area/security/warden) -"bOV" = ( -/obj/structure/rack, -/obj/item/weapon/storage/box/rubbershot{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/weapon/storage/box/rubbershot{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/weapon/storage/box/rubbershot, -/obj/item/weapon/storage/box/rubbershot, -/obj/item/weapon/storage/box/rubbershot{ - pixel_x = 3; - pixel_y = -3 - }, -/obj/item/weapon/storage/box/rubbershot{ - pixel_x = 3; - pixel_y = -3 - }, -/obj/machinery/firealarm{ - dir = 8; - pixel_x = -24 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/ai_monitored/security/armory) -"bOW" = ( -/obj/structure/rack, -/obj/item/weapon/gun/ballistic/automatic/wt550{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/weapon/gun/ballistic/automatic/wt550, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/bot, -/area/ai_monitored/security/armory) -"bOX" = ( -/obj/structure/rack, -/obj/item/clothing/suit/armor/bulletproof{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/clothing/suit/armor/bulletproof{ - pixel_y = 0 - }, -/obj/item/clothing/suit/armor/bulletproof{ - pixel_x = 3; - pixel_y = -3 - }, -/obj/item/clothing/head/helmet/alt{ - layer = 3.00001; - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/clothing/head/helmet/alt{ - layer = 3.00001 - }, -/obj/item/clothing/head/helmet/alt{ - layer = 3.00001; - pixel_x = 3; - pixel_y = -3 - }, -/obj/item/weapon/storage/secure/safe{ - pixel_x = 32 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/ai_monitored/security/armory) -"bOY" = ( -/obj/machinery/camera/motion{ - c_tag = "Armoury - Exterior"; - dir = 4; - network = list("SS13") - }, -/turf/open/space, -/area/space) -"bOZ" = ( -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/machinery/door/window/northleft, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/construction/hallway{ - name = "\improper MiniSat Exterior" - }) -"bPa" = ( -/obj/structure/window/reinforced{ - dir = 1; - layer = 2.9 - }, -/obj/machinery/firealarm{ - dir = 4; - icon_state = "fire0"; - pixel_x = 24; - pixel_y = 0; - tag = "icon-fire0 (EAST)" - }, -/obj/machinery/light/small{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/construction/hallway{ - name = "\improper MiniSat Exterior" - }) -"bPb" = ( -/obj/structure/showcase{ - density = 0; - desc = "An old, deactivated cyborg. Whilst once actively used to guard against intruders, it now simply intimidates them with its cold, steely gaze."; - dir = 4; - icon = 'icons/mob/robots.dmi'; - icon_state = "robot_old"; - name = "Cyborg Statue"; - pixel_x = -9; - pixel_y = 2 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHEAST)"; - icon_state = "intact"; - dir = 5 - }, -/turf/open/floor/plating/warnplate, -/area/ai_monitored/turret_protected/aisat_interior) -"bPc" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/obj/machinery/meter, -/turf/open/floor/plating/warnplate, -/area/ai_monitored/turret_protected/aisat_interior) -"bPd" = ( -/obj/machinery/power/terminal{ - icon_state = "term"; - dir = 1 - }, -/obj/structure/cable/yellow{ - d2 = 4; - icon_state = "0-4" - }, -/turf/open/floor/plating/warnplate, -/area/ai_monitored/turret_protected/aisat_interior) -"bPe" = ( -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/turf/open/floor/plating/warnplate, -/area/ai_monitored/turret_protected/aisat_interior) -"bPf" = ( -/obj/machinery/camera{ - c_tag = "AI Satellite - Maintenance"; - dir = 8; - name = "ai camera"; - network = list("Sat"); - pixel_x = 0; - pixel_y = 0; - start_active = 1 - }, -/turf/open/floor/plating/warnplate, -/area/ai_monitored/turret_protected/aisat_interior) -"bPg" = ( -/obj/structure/showcase{ - density = 0; - desc = "An old, deactivated cyborg. Whilst once actively used to guard against intruders, it now simply intimidates them with its cold, steely gaze."; - dir = 4; - icon = 'icons/mob/robots.dmi'; - icon_state = "robot_old"; - name = "Cyborg Statue"; - pixel_x = -9; - pixel_y = 2 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHEAST)"; - icon_state = "intact"; - dir = 6 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/ai_monitored/turret_protected/aisat_interior) -"bPh" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/grimy, -/area/ai_monitored/turret_protected/aisat_interior) -"bPi" = ( -/obj/machinery/atmospherics/pipe/manifold4w/scrubbers/hidden, -/turf/open/floor/plasteel/grimy, -/area/ai_monitored/turret_protected/aisat_interior) -"bPj" = ( -/obj/machinery/ai_slipper{ - icon_state = "motion0"; - uses = 10 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/grimy, -/area/ai_monitored/turret_protected/aisat_interior) -"bPk" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/grimy, -/area/ai_monitored/turret_protected/aisat_interior) -"bPl" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plasteel/grimy, -/area/ai_monitored/turret_protected/aisat_interior) -"bPm" = ( -/obj/structure/showcase{ - density = 0; - desc = "An old, deactivated cyborg. Whilst once actively used to guard against intruders, it now simply intimidates them with its cold, steely gaze."; - dir = 8; - icon = 'icons/mob/robots.dmi'; - icon_state = "robot_old"; - name = "Cyborg Statue"; - pixel_x = 9; - pixel_y = 2 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/ai_monitored/turret_protected/aisat_interior) -"bPn" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall/r_wall, -/area/ai_monitored/turret_protected/aisat_interior) -"bPo" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/obj/machinery/turretid{ - control_area = "AI Satellite Antechamber"; - enabled = 1; - icon_state = "control_standby"; - name = "Antechamber Turret Control"; - pixel_x = -32; - pixel_y = 0; - req_access = list(65) - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/camera{ - c_tag = "AI Satellite - Teleporter"; - dir = 4; - name = "ai camera"; - network = list("Sat"); - pixel_x = 0; - pixel_y = 0; - start_active = 1 - }, -/turf/open/floor/plasteel/vault{ - dir = 6 - }, -/area/ai_monitored/turret_protected/aisat_interior) -"bPp" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/vault, -/area/ai_monitored/turret_protected/aisat_interior) -"bPq" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plasteel/vault, -/area/ai_monitored/turret_protected/aisat_interior) -"bPr" = ( -/obj/structure/showcase{ - density = 0; - desc = "An old, deactivated cyborg. Whilst once actively used to guard against intruders, it now simply intimidates them with its cold, steely gaze."; - dir = 8; - icon = 'icons/mob/robots.dmi'; - icon_state = "robot_old"; - name = "Cyborg Statue"; - pixel_x = 9; - pixel_y = 2 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 10 - }, -/area/ai_monitored/turret_protected/aisat_interior) -"bPs" = ( -/obj/structure/window/reinforced{ - dir = 1; - layer = 2.9 - }, -/obj/machinery/airalarm{ - dir = 4; - icon_state = "alarm0"; - pixel_x = -22 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/light/small{ - dir = 8 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/construction/hallway{ - name = "\improper MiniSat Exterior" - }) -"bPt" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/door/window/northright, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/construction/hallway{ - name = "\improper MiniSat Exterior" - }) -"bPu" = ( -/obj/structure/window/reinforced{ - dir = 1; - layer = 2.9 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/construction/hallway{ - name = "\improper MiniSat Exterior" - }) -"bPv" = ( -/obj/structure/window/reinforced{ - dir = 1; - layer = 2.9 - }, -/obj/structure/window/reinforced{ - dir = 4; - pixel_x = 0 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHWEST)"; - icon_state = "intact"; - dir = 10 - }, -/obj/structure/transit_tube/curved, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/construction/hallway{ - name = "\improper MiniSat Exterior" - }) -"bPw" = ( -/obj/structure/lattice, -/obj/structure/transit_tube/diagonal{ - tag = "icon-diagonal (EAST)"; - icon_state = "diagonal"; - dir = 4 - }, -/turf/open/space, -/area/space) -"bPx" = ( -/obj/structure/lattice/catwalk, -/obj/structure/window/reinforced{ - dir = 4; - pixel_x = 0 - }, -/turf/open/space, -/area/space) -"bPy" = ( -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/structure/table/reinforced, -/obj/machinery/light/small{ - dir = 1 - }, -/obj/machinery/camera{ - c_tag = "AI Satellite - Transit Tube"; - dir = 2; - name = "ai camera"; - network = list("Sat"); - pixel_x = 0; - pixel_y = 0; - start_active = 1 - }, -/obj/item/weapon/clipboard, -/obj/item/weapon/folder/blue, -/obj/item/weapon/pen, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/engine/break_room{ - name = "Transit Tube" - }) -"bPz" = ( -/obj/structure/chair/office/dark{ - dir = 8 - }, -/obj/machinery/flasher{ - id = "AI"; - pixel_x = -26; - pixel_y = 26 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/engine/break_room{ - name = "Transit Tube" - }) -"bPA" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 2; - on = 1; - scrub_N2O = 1; - scrub_Toxins = 1 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/engine/break_room{ - name = "Transit Tube" - }) -"bPB" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/engine/break_room{ - name = "Transit Tube" - }) -"bPC" = ( -/obj/machinery/computer/station_alert, -/obj/machinery/status_display{ - pixel_x = -32 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/chief) -"bPD" = ( -/obj/item/weapon/phone{ - desc = "Supposedly a direct line to NanoTrasen Central Command. It's not even plugged in."; - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/clothing/mask/cigarette/cigar/cohiba{ - pixel_x = 6 - }, -/obj/item/clothing/mask/cigarette/cigar/havana{ - pixel_x = 2 - }, -/obj/item/clothing/mask/cigarette/cigar{ - pixel_x = 4.5 - }, -/obj/structure/table/reinforced, -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/chief) -"bPE" = ( -/obj/structure/table/reinforced, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/item/weapon/cartridge/engineering{ - pixel_x = 6 - }, -/obj/item/weapon/cartridge/engineering{ - pixel_x = -6 - }, -/obj/item/weapon/cartridge/engineering{ - pixel_y = 6 - }, -/obj/item/weapon/reagent_containers/pill/patch/silver_sulf, -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/chief) -"bPF" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 8; - heat_capacity = 1e+006 - }, -/area/crew_quarters/chief) -"bPG" = ( -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHEAST)"; - icon_state = "intact"; - dir = 5 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/chief) -"bPH" = ( -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/command{ - name = "Chief Engineer's Quarters"; - req_access_txt = "56" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/warning/side, -/area/crew_quarters/chief) -"bPI" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/chief) -"bPJ" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/chief) -"bPK" = ( -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/effect/landmark/start{ - name = "Chief Engineer" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/chief) -"bPL" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/crew_quarters/chief) -"bPM" = ( -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "ceprivacy"; - name = "Chief's Privacy Shutters" - }, -/turf/open/floor/plating, -/area/crew_quarters/chief) -"bPN" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/engine/engineering) -"bPO" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/item/device/radio/beacon, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral, -/area/engine/engineering) -"bPP" = ( -/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/engine/engineering) -"bPQ" = ( -/obj/structure/cable/white{ - tag = "icon-0-2"; - icon_state = "0-2" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/structure/sign/nanotrasen{ - pixel_y = 32 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (EAST)"; - icon_state = "intact"; - dir = 4 - }, -/turf/open/floor/plating, -/area/engine/engineering) -"bPR" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (EAST)"; - icon_state = "intact"; - dir = 4 - }, -/turf/open/floor/plasteel/red/side{ - dir = 9 - }, -/area/security/checkpoint/engineering) -"bPS" = ( -/obj/machinery/power/apc{ - cell_type = 5000; - dir = 1; - name = "Security Post - Engineering APC"; - pixel_x = 0; - pixel_y = 25 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (EAST)"; - icon_state = "intact"; - dir = 4 - }, -/obj/machinery/button/door{ - desc = "A remote control switch."; - id = "engdoor"; - name = "Engineering Cell Control"; - normaldoorcontrol = 1; - pixel_x = 7; - pixel_y = 36 - }, -/obj/structure/cable/white{ - tag = "icon-0-2"; - icon_state = "0-2" - }, -/turf/open/floor/plasteel/red/side{ - dir = 1 - }, -/area/security/checkpoint/engineering) -"bPT" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (EAST)"; - icon_state = "intact"; - dir = 4 - }, -/turf/open/floor/plasteel/red/side{ - dir = 1 - }, -/area/security/checkpoint/engineering) -"bPU" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/plasteel/red/side{ - dir = 1 - }, -/area/security/checkpoint/engineering) -"bPV" = ( -/obj/structure/closet/secure_closet/security/engine, -/obj/machinery/door_timer{ - id = "engcell"; - name = "Engineering Cell"; - pixel_x = 32; - pixel_y = 32 - }, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = 26; - pixel_y = 0 - }, -/obj/machinery/camera{ - c_tag = "Security Post - Engineering"; - dir = 8; - name = "security camera" - }, -/turf/open/floor/plasteel/red/side{ - dir = 5 - }, -/area/security/checkpoint/engineering) -"bPW" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/port) -"bPX" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/yellow/corner{ - dir = 4 - }, -/area/hallway/primary/port) -"bPY" = ( -/obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/warning/side, -/area/hallway/primary/port) -"bPZ" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 1 - }, -/area/hallway/primary/port) -"bQa" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/yellow/corner{ - dir = 1 - }, -/area/hallway/primary/port) -"bQb" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/yellow/corner{ - dir = 1 - }, -/area/hallway/primary/port) -"bQc" = ( -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/yellow/corner{ - dir = 1 - }, -/area/hallway/primary/port) -"bQd" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/yellow/corner{ - dir = 1 - }, -/area/hallway/primary/port) -"bQe" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 1 - }, -/area/hallway/primary/port) -"bQf" = ( -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/open/floor/plasteel/neutral/corner{ - dir = 1 - }, -/area/hallway/primary/port) -"bQg" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/camera{ - c_tag = "Engineering Hallway - Starboard"; - dir = 2; - name = "hallway camera" - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 1 - }, -/area/hallway/primary/port) -"bQh" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/door/firedoor, -/turf/open/floor/plasteel/warning/side, -/area/hallway/primary/port) -"bQi" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/open/floor/plasteel/yellow/corner{ - dir = 1 - }, -/area/hallway/primary/port) -"bQj" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plasteel/yellow/corner{ - dir = 1 - }, -/area/hallway/primary/port) -"bQk" = ( -/obj/machinery/door/firedoor, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/door/airlock/glass{ - name = "Port Primary Hallway" - }, -/turf/open/floor/plasteel/warning/side, -/area/hallway/primary/port) -"bQl" = ( -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/central) -"bQm" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner, -/area/hallway/primary/central) -"bQn" = ( -/turf/closed/wall/r_wall, -/area/crew_quarters/heads) -"bQo" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/command{ - name = "Head of Personnel's Office"; - req_access = null; - req_access_txt = "57" - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/wood, -/area/crew_quarters/heads) -"bQp" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/closed/wall/r_wall, -/area/crew_quarters/heads) -"bQq" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall/r_wall, -/area/crew_quarters/heads) -"bQr" = ( -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/tcommsat/server) -"bQs" = ( -/turf/closed/wall/r_wall, -/area/tcommsat/server) -"bQt" = ( -/obj/structure/sign/nanotrasen, -/turf/closed/wall/r_wall, -/area/tcommsat/server) -"bQu" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/tcommsat/server) -"bQv" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/tcommsat/server) -"bQw" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/command{ - cyclelinkeddir = 2; - name = "Telecoms Server Room"; - req_access = null; - req_access_txt = "61" - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/tcommsat/server) -"bQx" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/tcommsat/server) -"bQy" = ( -/obj/machinery/computer/card, -/obj/machinery/keycard_auth{ - pixel_x = -26; - pixel_y = 26 - }, -/obj/machinery/requests_console{ - announcementConsole = 1; - department = "Captain's Desk"; - departmentType = 5; - name = "Captain RC"; - pixel_x = -32; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/carpet, -/area/crew_quarters/captain) -"bQz" = ( -/obj/structure/chair/comfy/brown{ - buildstackamount = 0; - color = "#c45c57"; - dir = 1 - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/effect/landmark/start{ - name = "Captain" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/carpet, -/area/crew_quarters/captain) -"bQA" = ( -/obj/structure/table/wood, -/obj/machinery/computer/security/wooden_tv, -/turf/open/floor/carpet, -/area/crew_quarters/captain) -"bQB" = ( -/obj/structure/table/wood, -/obj/machinery/status_display{ - pixel_x = 32 - }, -/obj/item/weapon/coin/adamantine{ - pixel_x = -4; - pixel_y = 4 - }, -/obj/item/weapon/hand_tele, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/captain) -"bQC" = ( -/turf/closed/wall/r_wall, -/area/crew_quarters/captain{ - name = "\improper Captain's Quarters" - }) -"bQD" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 4 - }, -/area/hallway/primary/central) -"bQE" = ( -/obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/door/airlock/glass{ - name = "Starboard Primary Hallway" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/hallway/primary/starboard) -"bQF" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/yellow/corner{ - dir = 4 - }, -/area/hallway/primary/starboard) -"bQG" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/obj/structure/disposalpipe/junction{ - dir = 8; - icon_state = "pipe-j1" - }, -/turf/open/floor/plasteel/yellow/corner{ - dir = 4 - }, -/area/hallway/primary/starboard) -"bQH" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/yellow/corner{ - dir = 4 - }, -/area/hallway/primary/starboard) -"bQI" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/firealarm{ - pixel_y = 26 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 4 - }, -/area/hallway/primary/starboard) -"bQJ" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/door/firedoor, -/turf/open/floor/plasteel/warning/side, -/area/hallway/primary/starboard) -"bQK" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/camera{ - c_tag = "Security Hallway - Port"; - dir = 2; - name = "hallway camera" - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 4 - }, -/area/hallway/primary/starboard) -"bQL" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 4 - }, -/area/hallway/primary/starboard) -"bQM" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 4 - }, -/area/hallway/primary/starboard) -"bQN" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 4 - }, -/area/hallway/primary/starboard) -"bQO" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 4 - }, -/area/hallway/primary/starboard) -"bQP" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/red/corner{ - dir = 4 - }, -/area/hallway/primary/starboard) -"bQQ" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/red/corner{ - dir = 4 - }, -/area/hallway/primary/starboard) -"bQR" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/red/corner{ - dir = 4 - }, -/area/hallway/primary/starboard) -"bQS" = ( -/obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/hallway/primary/starboard) -"bQT" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/red/corner{ - dir = 1 - }, -/area/hallway/primary/starboard) -"bQU" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/starboard) -"bQV" = ( -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'HIGH VOLTAGE'"; - icon_state = "shock"; - name = "HIGH VOLTAGE"; - pixel_x = 32; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHWEST)"; - icon_state = "intact"; - dir = 10 - }, -/obj/machinery/light{ - dir = 4 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/red/corner{ - dir = 4 - }, -/area/hallway/primary/starboard) -"bQW" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1 - }, -/obj/machinery/door_timer{ - id = "brig2"; - name = "Cell 2"; - pixel_x = -32 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/red/corner{ - dir = 1 - }, -/area/security/brig) -"bQX" = ( -/obj/structure/table/reinforced, -/obj/machinery/recharger, -/obj/machinery/newscaster/security_unit{ - pixel_x = -32 - }, -/turf/open/floor/plasteel/red/side{ - dir = 8 - }, -/area/security/warden) -"bQY" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral, -/area/security/warden) -"bQZ" = ( -/obj/structure/rack, -/obj/item/weapon/storage/toolbox/mechanical{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/weapon/storage/toolbox/electrical, -/obj/item/weapon/screwdriver{ - pixel_y = 5 - }, -/obj/item/device/multitool, -/turf/open/floor/plasteel/red/side{ - dir = 4 - }, -/area/security/warden) -"bRa" = ( -/obj/structure/cable/white{ - d2 = 2; - icon_state = "0-2"; - tag = "icon-0-2" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/ai_monitored/security/armory) -"bRb" = ( -/obj/vehicle/secway, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/ai_monitored/security/armory) -"bRc" = ( -/obj/structure/rack, -/obj/item/weapon/gun/energy/e_gun/advtaser{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/weapon/gun/energy/e_gun/advtaser, -/obj/item/weapon/gun/energy/e_gun/advtaser{ - pixel_x = 3; - pixel_y = -3 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/bot, -/area/ai_monitored/security/armory) -"bRd" = ( -/obj/structure/rack, -/obj/item/clothing/suit/armor/riot{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/clothing/suit/armor/riot, -/obj/item/clothing/suit/armor/riot{ - pixel_x = 3; - pixel_y = -3 - }, -/obj/item/clothing/head/helmet/riot{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/clothing/head/helmet/riot, -/obj/item/clothing/head/helmet/riot{ - pixel_x = 3; - pixel_y = -3 - }, -/obj/item/weapon/shield/riot{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/weapon/shield/riot, -/obj/item/weapon/shield/riot{ - pixel_x = 3; - pixel_y = -3 - }, -/obj/structure/sign/nanotrasen{ - pixel_x = 32 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/ai_monitored/security/armory) -"bRe" = ( -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/construction/hallway{ - name = "\improper MiniSat Exterior" - }) -"bRf" = ( -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/construction/hallway{ - name = "\improper MiniSat Exterior" - }) -"bRg" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/maintenance_hatch{ - name = "MiniSat Maintenance"; - req_access_txt = "16" - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/ai_monitored/turret_protected/aisat_interior) -"bRh" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/ai_monitored/turret_protected/aisat_interior) -"bRi" = ( -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/ai_monitored/turret_protected/aisat_interior) -"bRj" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/holopad, -/obj/effect/landmark/start{ - name = "Cyborg" - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/ai_monitored/turret_protected/aisat_interior) -"bRk" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/ai_slipper{ - icon_state = "motion0"; - uses = 10 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/ai_monitored/turret_protected/aisat_interior) -"bRl" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/ai_monitored/turret_protected/aisat_interior) -"bRm" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/maintenance_hatch{ - name = "MiniSat Antechamber"; - req_access_txt = "16" - }, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = 0; - pixel_y = 26 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/ai_monitored/turret_protected/aisat_interior) -"bRn" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHWEST)"; - icon_state = "intact"; - dir = 9 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/ai_monitored/turret_protected/aisat_interior) -"bRo" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 2; - on = 1 - }, -/turf/open/floor/plasteel/grimy, -/area/ai_monitored/turret_protected/aisat_interior) -"bRp" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/grimy, -/area/ai_monitored/turret_protected/aisat_interior) -"bRq" = ( -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/mob/living/simple_animal/bot/secbot/pingsky, -/turf/open/floor/plasteel/grimy, -/area/ai_monitored/turret_protected/aisat_interior) -"bRr" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/grimy, -/area/ai_monitored/turret_protected/aisat_interior) -"bRs" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/grimy, -/area/ai_monitored/turret_protected/aisat_interior) -"bRt" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/ai_monitored/turret_protected/aisat_interior) -"bRu" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/hatch{ - name = "MiniSat Antechamber"; - req_one_access_txt = "32;19" - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/ai_monitored/turret_protected/aisat_interior) -"bRv" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/ai_slipper{ - icon_state = "motion0"; - uses = 10 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 2; - on = 1 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/ai_monitored/turret_protected/aisat_interior) -"bRw" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/ai_monitored/turret_protected/aisat_interior) -"bRx" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/hatch{ - name = "MiniSat Access"; - req_one_access_txt = "32;19" - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/ai_monitored/turret_protected/aisat_interior) -"bRy" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/construction/hallway{ - name = "\improper MiniSat Exterior" - }) -"bRz" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/construction/hallway{ - name = "\improper MiniSat Exterior" - }) -"bRA" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/construction/hallway{ - name = "\improper MiniSat Exterior" - }) -"bRB" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/construction/hallway{ - name = "\improper MiniSat Exterior" - }) -"bRC" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/holopad, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/construction/hallway{ - name = "\improper MiniSat Exterior" - }) -"bRD" = ( -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/construction/hallway{ - name = "\improper MiniSat Exterior" - }) -"bRE" = ( -/obj/structure/window/reinforced{ - dir = 4; - pixel_x = 0 - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/obj/structure/transit_tube/station{ - tag = "icon-closed_station0 (WEST)"; - icon_state = "closed_station0"; - dir = 8 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/construction/hallway{ - name = "\improper MiniSat Exterior" - }) -"bRF" = ( -/obj/structure/lattice/catwalk, -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/space, -/area/space) -"bRG" = ( -/obj/structure/lattice/catwalk, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/space, -/area/space) -"bRH" = ( -/obj/structure/lattice/catwalk, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/transit_tube/junction{ - tag = "icon-junction0 (EAST)"; - icon_state = "junction0"; - dir = 4 - }, -/turf/open/space, -/area/space) -"bRI" = ( -/obj/structure/lattice/catwalk, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/transit_tube/crossing/horizontal, -/turf/open/space, -/area/space) -"bRJ" = ( -/obj/structure/lattice/catwalk, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/transit_tube/horizontal, -/turf/open/space, -/area/space) -"bRK" = ( -/obj/structure/lattice/catwalk, -/obj/structure/window/reinforced{ - dir = 4; - pixel_x = 0 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/transit_tube/curved{ - tag = "icon-curved0 (WEST)"; - icon_state = "curved0"; - dir = 8 - }, -/turf/open/space, -/area/space) -"bRL" = ( -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/structure/table/reinforced, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/computer/security/telescreen{ - desc = "Used for watching the AI's satellite."; - dir = 4; - name = "Research Monitor"; - network = list("Sat"); - pixel_x = 0; - pixel_y = 2 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/engine/break_room{ - name = "Transit Tube" - }) -"bRM" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/engine/break_room{ - name = "Transit Tube" - }) -"bRN" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/engine/break_room{ - name = "Transit Tube" - }) -"bRO" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/obj/machinery/light/small{ - dir = 4 - }, -/obj/machinery/airalarm{ - dir = 8; - icon_state = "alarm0"; - pixel_x = 24 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHWEST)"; - icon_state = "intact"; - dir = 9 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/engine/break_room{ - name = "Transit Tube" - }) -"bRP" = ( -/obj/structure/filingcabinet/chestdrawer, -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/mob/living/simple_animal/parrot/Poly, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/chief) -"bRQ" = ( -/turf/open/floor/plasteel/neutral/corner{ - dir = 4 - }, -/area/crew_quarters/chief) -"bRR" = ( -/turf/open/floor/plasteel/neutral/side{ - dir = 1; - heat_capacity = 1e+006 - }, -/area/crew_quarters/chief) -"bRS" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 1; - heat_capacity = 1e+006 - }, -/area/crew_quarters/chief) -"bRT" = ( -/turf/open/floor/plasteel/neutral/corner{ - dir = 1 - }, -/area/crew_quarters/chief) -"bRU" = ( -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/chief) -"bRV" = ( -/obj/structure/cable/white, -/obj/structure/grille, -/obj/structure/window/reinforced/tinted/fulltile, -/turf/open/floor/plating, -/area/crew_quarters/chief) -"bRW" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-18" - }, -/obj/machinery/firealarm{ - dir = 1; - pixel_x = -24; - pixel_y = -24 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/chief) -"bRX" = ( -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/chief) -"bRY" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/chief) -"bRZ" = ( -/obj/machinery/suit_storage_unit/ce, -/obj/machinery/airalarm{ - dir = 8; - icon_state = "alarm0"; - pixel_x = 24 - }, -/turf/open/floor/plasteel/warning{ - dir = 10 - }, -/area/crew_quarters/chief) -"bSa" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/engine/engineering) -"bSb" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_Toxins = 0 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral, -/area/engine/engineering) -"bSc" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/engine/engineering) -"bSd" = ( -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/structure/cable/white, -/obj/structure/cable/white{ - tag = "icon-0-2"; - icon_state = "0-2" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/engine/engineering) -"bSe" = ( -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 2; - on = 1; - scrub_N2O = 1; - scrub_Toxins = 1 - }, -/turf/open/floor/plasteel/red/side{ - dir = 8 - }, -/area/security/checkpoint/engineering) -"bSf" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/holopad, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/turf/open/floor/plasteel/neutral, -/area/security/checkpoint/engineering) -"bSg" = ( -/obj/structure/chair/office/dark, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/neutral, -/area/security/checkpoint/engineering) -"bSh" = ( -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/turf/open/floor/plasteel/neutral, -/area/security/checkpoint/engineering) -"bSi" = ( -/obj/structure/table/reinforced, -/obj/machinery/airalarm{ - dir = 8; - icon_state = "alarm0"; - pixel_x = 24 - }, -/obj/item/weapon/book/manual/wiki/security_space_law, -/obj/item/device/radio, -/turf/open/floor/plasteel/red/side{ - tag = "icon-red (EAST)"; - icon_state = "red"; - dir = 4 - }, -/area/security/checkpoint/engineering) -"bSj" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/turf/open/floor/plasteel/yellow/corner{ - dir = 8 - }, -/area/hallway/primary/port) -"bSk" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/navbeacon{ - codes_txt = "patrol;next_patrol=engi2"; - location = "engi1" - }, -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/port) -"bSl" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/navbeacon{ - codes_txt = "patrol;next_patrol=hall4"; - location = "engi3" - }, -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/port) -"bSm" = ( -/obj/machinery/door/firedoor, -/turf/open/floor/plasteel/warning/side, -/area/hallway/primary/port) -"bSn" = ( -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/port) -"bSo" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/port) -"bSp" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 2; - on = 1; - scrub_N2O = 1; - scrub_Toxins = 1 - }, -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/port) -"bSq" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/port) -"bSr" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass{ - name = "Port Primary Hallway" - }, -/turf/open/floor/plasteel/warning/side, -/area/hallway/primary/port) -"bSs" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/navbeacon{ - codes_txt = "patrol;next_patrol=engi1"; - location = "hall3" - }, -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/central) -"bSt" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/navbeacon{ - codes_txt = "patrol;next_patrol=hall5"; - location = "hall4" - }, -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/central) -"bSu" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/light{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner, -/area/hallway/primary/central) -"bSv" = ( -/obj/machinery/ai_status_display, -/turf/closed/wall, -/area/hallway/primary/central) -"bSw" = ( -/obj/structure/table, -/obj/item/weapon/paper_bin, -/obj/item/weapon/pen, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/hallway/primary/central) -"bSx" = ( -/obj/structure/table/wood, -/obj/machinery/computer/med_data/laptop, -/obj/machinery/requests_console{ - announcementConsole = 1; - department = "Head of Personnel's Desk"; - departmentType = 5; - name = "Head of Personnel RC"; - pixel_x = 32; - pixel_y = 32 - }, -/obj/machinery/light_switch{ - pixel_x = -38; - pixel_y = 7 - }, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_y = 26 - }, -/obj/machinery/button/door{ - id = "hopline"; - name = "Queue Shutters Control"; - pixel_x = -26; - pixel_y = -7; - req_access_txt = "57" - }, -/obj/machinery/button/door{ - id = "hopblast"; - name = "Lockdown Blast doors"; - pixel_x = -26; - pixel_y = 7; - req_access_txt = "57" - }, -/obj/machinery/button/flasher{ - id = "hopflash"; - pixel_x = -38; - pixel_y = -7; - req_access_txt = "28" - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/crew_quarters/heads) -"bSy" = ( -/obj/structure/table/wood, -/obj/item/weapon/paper_bin, -/obj/item/weapon/stamp/hop, -/turf/open/floor/wood, -/area/crew_quarters/heads) -"bSz" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/turf/open/floor/wood, -/area/crew_quarters/heads) -"bSA" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/turf/open/floor/wood, -/area/crew_quarters/heads) -"bSB" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1 - }, -/turf/open/floor/wood, -/area/crew_quarters/heads) -"bSC" = ( -/obj/structure/table/wood, -/obj/item/weapon/storage/box/ids{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/storage/box/silver_ids, -/turf/open/floor/wood, -/area/crew_quarters/heads) -"bSD" = ( -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/tcommsat/server) -"bSE" = ( -/turf/open/floor/plasteel/circuit/gcircuit{ - name = "Mainframe Base"; - initial_gas_mix = "n2=100;TEMP=80" - }, -/area/tcommsat/server) -"bSF" = ( -/obj/machinery/telecomms/receiver/preset_right, -/turf/open/floor/plasteel/circuit/gcircuit{ - name = "Mainframe Base"; - initial_gas_mix = "n2=100;TEMP=80" - }, -/area/tcommsat/server) -"bSG" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/fans/tiny, -/turf/open/floor/plasteel/vault{ - tag = "icon-vault (NORTHEAST)"; - dir = 5 - }, -/area/tcommsat/server) -"bSH" = ( -/obj/machinery/telecomms/receiver/preset_left, -/turf/open/floor/plasteel/circuit/gcircuit{ - name = "Mainframe Base"; - initial_gas_mix = "n2=100;TEMP=80" - }, -/area/tcommsat/server) -"bSI" = ( -/obj/machinery/light{ - icon_state = "tube1"; - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/tcommsat/server) -"bSJ" = ( -/obj/machinery/computer/communications, -/obj/machinery/ai_status_display{ - pixel_x = -32 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/carpet, -/area/crew_quarters/captain) -"bSK" = ( -/obj/machinery/light_switch{ - pixel_x = 26; - pixel_y = -26 - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/carpet, -/area/crew_quarters/captain) -"bSL" = ( -/turf/open/floor/carpet, -/area/crew_quarters/captain) -"bSM" = ( -/obj/item/device/radio/intercom{ - pixel_y = -26 - }, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/captain) -"bSN" = ( -/obj/structure/displaycase/captain{ - req_access = null; - req_access_txt = "20" - }, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/captain) -"bSO" = ( -/obj/structure/toilet{ - dir = 4 - }, -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/obj/effect/landmark/start{ - name = "Captain" - }, -/turf/open/floor/plasteel/white, -/area/crew_quarters/captain{ - name = "\improper Captain's Quarters" - }) -"bSP" = ( -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/machinery/shower{ - pixel_y = 16 - }, -/obj/structure/curtain, -/obj/machinery/door/window/brigdoor/southleft{ - name = "Shower" - }, -/obj/item/weapon/soap/deluxe, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 2; - on = 1 - }, -/turf/open/floor/plasteel/white, -/area/crew_quarters/captain{ - name = "\improper Captain's Quarters" - }) -"bSQ" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/obj/machinery/camera{ - c_tag = "Central Hallway - Security Hallway"; - dir = 4; - name = "hallway camera" - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 8 - }, -/area/hallway/primary/central) -"bSR" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/effect/landmark{ - name = "lightsout" - }, -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/machinery/navbeacon{ - codes_txt = "patrol;next_patrol=hall13"; - location = "hall12" - }, -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/central) -"bSS" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/navbeacon{ - codes_txt = "patrol;next_patrol=hall11"; - location = "hall10" - }, -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/central) -"bST" = ( -/obj/machinery/door/firedoor, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/door/airlock/glass{ - name = "Starboard Primary Hallway" - }, -/turf/open/floor/plasteel/warning/side, -/area/hallway/primary/starboard) -"bSU" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/starboard) -"bSV" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/starboard) -"bSW" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 2; - on = 1 - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/starboard) -"bSX" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/door/firedoor, -/turf/open/floor/plasteel/warning/side, -/area/hallway/primary/starboard) -"bSY" = ( -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/starboard) -"bSZ" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/starboard) -"bTa" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/starboard) -"bTb" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/starboard) -"bTc" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/starboard) -"bTd" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/starboard) -"bTe" = ( -/obj/machinery/door/firedoor, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/warning/side, -/area/hallway/primary/starboard) -"bTf" = ( -/obj/item/device/radio/beacon, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/navbeacon{ - codes_txt = "patrol;next_patrol=hall12"; - location = "hall11" - }, -/mob/living/simple_animal/bot/secbot/beepsky{ - desc = "It's Officer Beepsky! Powered by a potato and a shot of whiskey."; - name = "Officer Beepsky" - }, -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/starboard) -"bTg" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHEAST)"; - icon_state = "intact"; - dir = 5 - }, -/obj/structure/disposalpipe/sortjunction{ - dir = 1; - icon_state = "pipe-j1s"; - name = "Security Junction"; - sortType = 7; - tag = "icon-pipe-j1s (NORTH)" - }, -/turf/open/floor/plasteel/red/corner, -/area/hallway/primary/starboard) -"bTh" = ( -/obj/machinery/door/firedoor, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/door/airlock/glass_security{ - name = "Brig"; - req_access_txt = "63" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/security/brig) -"bTi" = ( -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/security/brig) -"bTj" = ( -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/door/poddoor/preopen{ - id = "brigfront"; - name = "Brig Blast door" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/delivery, -/area/security/brig) -"bTk" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/security/brig) -"bTl" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/neutral, -/area/security/brig) -"bTm" = ( -/obj/machinery/atmospherics/pipe/manifold4w/scrubbers/hidden, -/obj/structure/disposalpipe/junction{ - icon_state = "pipe-j2"; - dir = 2 - }, -/turf/open/floor/plasteel/red/corner{ - dir = 4 - }, -/area/security/brig) -"bTn" = ( -/obj/structure/cable/white{ - d2 = 2; - icon_state = "0-2"; - tag = "icon-0-2" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plating, -/area/security/warden) -"bTo" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/disposal/bin, -/obj/structure/disposalpipe/trunk{ - dir = 8 - }, -/turf/open/floor/plasteel/red/corner{ - dir = 1 - }, -/area/security/warden) -"bTp" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/open/floor/plasteel/neutral, -/area/security/warden) -"bTq" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/red/side{ - dir = 4 - }, -/area/security/warden) -"bTr" = ( -/obj/machinery/door/firedoor, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/door/airlock/security{ - name = "Armoury"; - req_access_txt = "3" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/ai_monitored/security/armory) -"bTs" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/ai_monitored/security/armory) -"bTt" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/corner{ - dir = 4 - }, -/area/ai_monitored/security/armory) -"bTu" = ( -/obj/structure/rack, -/obj/item/weapon/gun/energy/e_gun{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/weapon/gun/energy/e_gun, -/obj/item/weapon/gun/energy/e_gun{ - pixel_x = 3; - pixel_y = -3 - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHWEST)"; - icon_state = "intact"; - dir = 9 - }, -/turf/open/floor/plasteel/bot, -/area/ai_monitored/security/armory) -"bTv" = ( -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/ai_monitored/security/armory) -"bTw" = ( -/obj/structure/rack, -/obj/item/weapon/gun/energy/ionrifle, -/obj/item/clothing/suit/armor/laserproof, -/obj/item/weapon/gun/energy/temperature/security, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/ai_monitored/security/armory) -"bTx" = ( -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/machinery/door/window/southright, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/construction/hallway{ - name = "\improper MiniSat Exterior" - }) -"bTy" = ( -/obj/structure/window/reinforced, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/light/small{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/construction/hallway{ - name = "\improper MiniSat Exterior" - }) -"bTz" = ( -/obj/structure/sign/nosmoking_2, -/turf/closed/wall/r_wall, -/area/ai_monitored/turret_protected/aisat_interior) -"bTA" = ( -/obj/structure/showcase{ - density = 0; - desc = "An old, deactivated cyborg. Whilst once actively used to guard against intruders, it now simply intimidates them with its cold, steely gaze."; - dir = 4; - icon = 'icons/mob/robots.dmi'; - icon_state = "robot_old"; - name = "Cyborg Statue"; - pixel_x = -9; - pixel_y = 2 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/ai_monitored/turret_protected/aisat_interior) -"bTB" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/ai_monitored/turret_protected/aisat_interior) -"bTC" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/ai_monitored/turret_protected/aisat_interior) -"bTD" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/obj/machinery/firealarm{ - dir = 4; - icon_state = "fire0"; - pixel_x = 24; - pixel_y = 0; - tag = "icon-fire0 (EAST)" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/ai_monitored/turret_protected/aisat_interior) -"bTE" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/closed/wall/r_wall, -/area/ai_monitored/turret_protected/aisat_interior) -"bTF" = ( -/obj/structure/showcase{ - density = 0; - desc = "An old, deactivated cyborg. Whilst once actively used to guard against intruders, it now simply intimidates them with its cold, steely gaze."; - dir = 4; - icon = 'icons/mob/robots.dmi'; - icon_state = "robot_old"; - name = "Cyborg Statue"; - pixel_x = -9; - pixel_y = 2 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/ai_monitored/turret_protected/aisat_interior) -"bTG" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/open/floor/plasteel/grimy, -/area/ai_monitored/turret_protected/aisat_interior) -"bTH" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/grimy, -/area/ai_monitored/turret_protected/aisat_interior) -"bTI" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/grimy, -/area/ai_monitored/turret_protected/aisat_interior) -"bTJ" = ( -/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, -/turf/open/floor/plasteel/grimy, -/area/ai_monitored/turret_protected/aisat_interior) -"bTK" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/grimy, -/area/ai_monitored/turret_protected/aisat_interior) -"bTL" = ( -/obj/structure/showcase{ - density = 0; - desc = "An old, deactivated cyborg. Whilst once actively used to guard against intruders, it now simply intimidates them with its cold, steely gaze."; - dir = 8; - icon = 'icons/mob/robots.dmi'; - icon_state = "robot_old"; - name = "Cyborg Statue"; - pixel_x = 9; - pixel_y = 2 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/ai_monitored/turret_protected/aisat_interior) -"bTM" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/obj/machinery/firealarm{ - dir = 8; - pixel_x = -24; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/ai_monitored/turret_protected/aisat_interior) -"bTN" = ( -/obj/structure/window/reinforced, -/obj/machinery/firealarm{ - dir = 8; - pixel_x = -24; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/light/small{ - dir = 8 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/construction/hallway{ - name = "\improper MiniSat Exterior" - }) -"bTO" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/obj/machinery/door/window/southleft, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/construction/hallway{ - name = "\improper MiniSat Exterior" - }) -"bTP" = ( -/obj/structure/window/reinforced, -/obj/structure/cable/white, -/obj/machinery/power/apc{ - dir = 2; - name = "AI Satellite Exterior APC"; - pixel_y = -26 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/construction/hallway{ - name = "\improper MiniSat Exterior" - }) -"bTQ" = ( -/obj/structure/window/reinforced, -/obj/structure/window/reinforced{ - dir = 4; - pixel_x = 0 - }, -/obj/structure/transit_tube/curved/flipped{ - tag = "icon-curved1 (NORTH)"; - icon_state = "curved1"; - dir = 1 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/construction/hallway{ - name = "\improper MiniSat Exterior" - }) -"bTR" = ( -/obj/structure/lattice, -/obj/structure/transit_tube/diagonal, -/turf/open/space, -/area/space) -"bTS" = ( -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/structure/transit_tube/curved{ - tag = "icon-curved0 (EAST)"; - icon_state = "curved0"; - dir = 4 - }, -/obj/structure/sign/securearea{ - pixel_y = -32 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/engine/break_room{ - name = "Transit Tube" - }) -"bTT" = ( -/obj/structure/transit_tube/horizontal, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/engine/break_room{ - name = "Transit Tube" - }) -"bTU" = ( -/obj/machinery/ai_status_display{ - pixel_y = -32 - }, -/obj/structure/transit_tube/station/reverse/flipped, -/obj/structure/transit_tube_pod{ - dir = 8 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/engine/break_room{ - name = "Transit Tube" - }) -"bTV" = ( -/obj/machinery/newscaster{ - pixel_x = 32 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/engine/break_room{ - name = "Transit Tube" - }) -"bTW" = ( -/obj/structure/table/reinforced, -/obj/item/stack/packageWrap, -/obj/item/weapon/hand_labeler, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/chief) -"bTX" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/folder/yellow, -/obj/item/weapon/cartridge/atmos, -/obj/item/weapon/cartridge/atmos, -/obj/item/weapon/cartridge/atmos, -/obj/machinery/airalarm{ - dir = 1; - icon_state = "alarm0"; - pixel_y = -22 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/chief) -"bTY" = ( -/obj/structure/rack, -/obj/item/weapon/storage/secure/briefcase, -/obj/machinery/newscaster{ - pixel_y = -32 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/chief) -"bTZ" = ( -/obj/structure/cable/white, -/obj/machinery/power/apc{ - dir = 2; - name = "Chief Engineer's APC"; - pixel_y = -26 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/chief) -"bUa" = ( -/obj/machinery/photocopier, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/chief) -"bUb" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/obj/machinery/light_switch{ - pixel_x = 26; - pixel_y = -26 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/chief) -"bUc" = ( -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "ceprivacy"; - name = "Chief's Privacy Shutters" - }, -/turf/open/floor/plating, -/area/crew_quarters/chief) -"bUd" = ( -/obj/structure/cable/white, -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "ceprivacy"; - name = "Chief's Privacy Shutters" - }, -/turf/open/floor/plating, -/area/crew_quarters/chief) -"bUe" = ( -/obj/structure/closet/toolcloset, -/obj/machinery/light/small, -/obj/machinery/airalarm{ - dir = 4; - locked = 0; - pixel_x = -23; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/camera{ - c_tag = "Engineering - Engine Foyer"; - dir = 1; - name = "engineering camera" - }, -/turf/open/floor/plasteel/warning{ - dir = 10 - }, -/area/engine/engineering) -"bUf" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/delivery, -/area/engine/engineering) -"bUg" = ( -/obj/structure/closet/radiation, -/obj/machinery/light/small, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/warning{ - dir = 6 - }, -/area/engine/engineering) -"bUh" = ( -/obj/structure/cable/white, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/engine/engineering) -"bUi" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/light_switch{ - pixel_x = -26; - pixel_y = -26 - }, -/obj/machinery/firealarm{ - dir = 8; - pixel_x = -38; - pixel_y = -24 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/red/side{ - dir = 10 - }, -/area/security/checkpoint/engineering) -"bUj" = ( -/obj/machinery/computer/station_alert, -/obj/machinery/ai_status_display{ - pixel_y = -32 - }, -/turf/open/floor/plasteel/red/side, -/area/security/checkpoint/engineering) -"bUk" = ( -/obj/machinery/newscaster{ - pixel_y = -32 - }, -/obj/machinery/light, -/obj/machinery/computer/security, -/turf/open/floor/plasteel/red/side, -/area/security/checkpoint/engineering) -"bUl" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/computer/secure_data, -/turf/open/floor/plasteel/red/side, -/area/security/checkpoint/engineering) -"bUm" = ( -/obj/structure/table/reinforced, -/obj/structure/reagent_dispensers/peppertank{ - pixel_y = -32 - }, -/obj/structure/extinguisher_cabinet{ - pixel_x = 26; - pixel_y = -32 - }, -/obj/machinery/status_display{ - pixel_x = 32 - }, -/obj/machinery/recharger, -/turf/open/floor/plasteel/red/side{ - dir = 6 - }, -/area/security/checkpoint/engineering) -"bUn" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHEAST)"; - icon_state = "intact"; - dir = 5 - }, -/turf/open/floor/plasteel/yellow/corner{ - dir = 8 - }, -/area/hallway/primary/port) -"bUo" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/port) -"bUp" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/yellow/corner, -/area/hallway/primary/port) -"bUq" = ( -/obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/hallway/primary/port) -"bUr" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 8 - }, -/area/hallway/primary/port) -"bUs" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 8 - }, -/area/hallway/primary/port) -"bUt" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/open/floor/plasteel/neutral/corner{ - dir = 8 - }, -/area/hallway/primary/port) -"bUu" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/obj/machinery/light, -/obj/structure/extinguisher_cabinet{ - pixel_y = -32 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 8 - }, -/area/hallway/primary/port) -"bUv" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/airalarm{ - dir = 1; - icon_state = "alarm0"; - pixel_y = -22 - }, -/obj/machinery/door/firedoor, -/turf/open/floor/plasteel/warning/side, -/area/hallway/primary/port) -"bUw" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/light, -/obj/machinery/firealarm{ - dir = 1; - pixel_x = 0; - pixel_y = -26 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 8 - }, -/area/hallway/primary/port) -"bUx" = ( -/obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/door/airlock/glass{ - name = "Port Primary Hallway" - }, -/turf/open/floor/plasteel/warning/side, -/area/hallway/primary/port) -"bUy" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 8 - }, -/area/hallway/primary/central) -"bUz" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/blue/corner, -/area/hallway/primary/central) -"bUA" = ( -/obj/machinery/door/poddoor/shutters/preopen{ - id = "hopline"; - name = "Queue Shutters" - }, -/turf/open/floor/plasteel/loadingarea{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; - dir = 8 - }, -/area/hallway/primary/central) -"bUB" = ( -/obj/machinery/flasher{ - id = "hopflash"; - pixel_y = 58 - }, -/turf/open/floor/plasteel/delivery, -/area/hallway/primary/central) -"bUC" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/folder/blue, -/obj/machinery/door/firedoor, -/obj/machinery/door/poddoor/preopen{ - id = "hopblast"; - name = "HoP Blast door" - }, -/obj/machinery/door/window/brigdoor/eastleft{ - name = "Access Desk"; - req_access_txt = "57" - }, -/obj/machinery/door/window/westright{ - name = "Access Queue" - }, -/turf/open/floor/plasteel/warning/side, -/area/crew_quarters/heads) -"bUD" = ( -/obj/structure/chair/office/dark{ - dir = 8 - }, -/obj/effect/landmark/start{ - name = "Head of Personnel" - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/heads) -"bUE" = ( -/turf/open/floor/wood, -/area/crew_quarters/heads) -"bUF" = ( -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/heads) -"bUG" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/heads) -"bUH" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/heads) -"bUI" = ( -/obj/machinery/vending/cart, -/obj/machinery/computer/security/telescreen/entertainment{ - pixel_x = 32 - }, -/turf/open/floor/wood, -/area/crew_quarters/heads) -"bUJ" = ( -/obj/machinery/telecomms/server/presets/medical, -/turf/open/floor/plasteel/whiteblue/side{ - dir = 9; - initial_gas_mix = "n2=100;TEMP=80"; - tag = "icon-whiteblue (NORTHWEST)" - }, -/area/tcommsat/server) -"bUK" = ( -/obj/machinery/telecomms/server/presets/science, -/turf/open/floor/plasteel/whitepurple/side{ - dir = 5; - initial_gas_mix = "n2=100;TEMP=80"; - tag = "icon-whitehall (WEST)" - }, -/area/tcommsat/server) -"bUL" = ( -/turf/open/floor/plasteel/vault, -/area/tcommsat/server) -"bUM" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/door/airlock/command{ - cyclelinkeddir = 1; - name = "Telecoms Server Room"; - req_access = null; - req_access_txt = "61" - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/tcommsat/server) -"bUN" = ( -/obj/machinery/telecomms/server/presets/command, -/turf/open/floor/plasteel/darkblue/side{ - dir = 9; - initial_gas_mix = "n2=100;TEMP=80" - }, -/area/tcommsat/server) -"bUO" = ( -/obj/machinery/telecomms/server/presets/security, -/turf/open/floor/plasteel/darkred/side{ - dir = 5; - initial_gas_mix = "n2=100;TEMP=80"; - tag = "SERVER" - }, -/area/tcommsat/server) -"bUP" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall/r_wall, -/area/crew_quarters/captain{ - name = "\improper Captain's Quarters" - }) -"bUQ" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/command{ - name = "Captain's Quarters"; - req_access = null; - req_access_txt = "20" - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/wood, -/area/crew_quarters/captain{ - name = "\improper Captain's Quarters" - }) -"bUR" = ( -/obj/structure/sign/nanotrasen, -/turf/closed/wall/r_wall, -/area/crew_quarters/captain{ - name = "\improper Captain's Quarters" - }) -"bUS" = ( -/turf/open/floor/plasteel/white, -/area/crew_quarters/captain{ - name = "\improper Captain's Quarters" - }) -"bUT" = ( -/obj/structure/sink{ - dir = 4; - icon_state = "sink"; - pixel_x = 11; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/white, -/area/crew_quarters/captain{ - name = "\improper Captain's Quarters" - }) -"bUU" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/neutral/corner, -/area/hallway/primary/central) -"bUV" = ( -/obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/door/airlock/glass{ - name = "Starboard Primary Hallway" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/hallway/primary/starboard) -"bUW" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner, -/area/hallway/primary/starboard) -"bUX" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner, -/area/hallway/primary/starboard) -"bUY" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner, -/area/hallway/primary/starboard) -"bUZ" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/obj/machinery/light, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/airalarm{ - dir = 1; - icon_state = "alarm0"; - pixel_y = -22 - }, -/turf/open/floor/plasteel/neutral/corner, -/area/hallway/primary/starboard) -"bVa" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/door/firedoor, -/turf/open/floor/plasteel/warning/side, -/area/hallway/primary/starboard) -"bVb" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner, -/area/hallway/primary/starboard) -"bVc" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner, -/area/hallway/primary/starboard) -"bVd" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/obj/machinery/light, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/extinguisher_cabinet{ - pixel_y = -32 - }, -/turf/open/floor/plasteel/neutral/corner, -/area/hallway/primary/starboard) -"bVe" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/junction{ - dir = 4; - icon_state = "pipe-j2" - }, -/turf/open/floor/plasteel/neutral/corner, -/area/hallway/primary/starboard) -"bVf" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/red/corner, -/area/hallway/primary/starboard) -"bVg" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/red/corner, -/area/hallway/primary/starboard) -"bVh" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/red/corner, -/area/hallway/primary/starboard) -"bVi" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/camera{ - c_tag = "Security Hallway - Center"; - dir = 1; - name = "hallway camera" - }, -/turf/open/floor/plasteel/neutral/corner, -/area/hallway/primary/starboard) -"bVj" = ( -/obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/hallway/primary/starboard) -"bVk" = ( -/obj/structure/sign/poster{ - icon_state = "poster4_legit"; - pixel_x = -32; - pixel_y = -32; - tag = "icon-poster4_legit" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/red/corner{ - dir = 8 - }, -/area/hallway/primary/starboard) -"bVl" = ( -/obj/machinery/holopad, -/turf/open/floor/plasteel/bot, -/area/hallway/primary/starboard) -"bVm" = ( -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/red/corner, -/area/hallway/primary/starboard) -"bVn" = ( -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor/preopen{ - id = "brigwindows"; - name = "Brig Front Blast door" - }, -/turf/open/floor/plating, -/area/security/brig) -"bVo" = ( -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 2; - on = 1 - }, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/security/brig) -"bVp" = ( -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/machinery/door/poddoor/preopen{ - id = "brigfront"; - name = "Brig Blast door" - }, -/turf/open/floor/plasteel/delivery, -/area/security/brig) -"bVq" = ( -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/brig) -"bVr" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/turf/open/floor/plasteel/neutral, -/area/security/brig) -"bVs" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel, -/area/security/brig) -"bVt" = ( -/obj/machinery/door/firedoor, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/machinery/door/airlock/glass_security{ - name = "Warden's Office"; - req_access_txt = "3" - }, -/turf/open/floor/plasteel, -/area/security/warden) -"bVu" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHEAST)"; - icon_state = "intact"; - dir = 6 - }, -/turf/open/floor/plasteel, -/area/security/warden) -"bVv" = ( -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/button/door{ - id = "brigwindows"; - name = "Cell Window Control"; - pixel_x = -32; - pixel_y = -26; - req_access_txt = "63" - }, -/obj/machinery/button/door{ - id = "brigfront"; - name = "Brig Access Control"; - pixel_x = -26; - pixel_y = -36; - req_access_txt = "63" - }, -/obj/machinery/button/door{ - id = "brigprison"; - name = "Prison Lockdown"; - pixel_x = -38; - pixel_y = -36; - req_access_txt = "63" - }, -/obj/effect/landmark/start{ - name = "Warden" - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/plasteel/neutral, -/area/security/warden) -"bVw" = ( -/turf/open/floor/plasteel/red/side{ - dir = 4 - }, -/area/security/warden) -"bVx" = ( -/obj/machinery/door/firedoor, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/door/airlock/security{ - name = "Armoury"; - req_access_txt = "3" - }, -/turf/open/floor/plasteel/warning/side, -/area/ai_monitored/security/armory) -"bVy" = ( -/turf/open/floor/plasteel, -/area/ai_monitored/security/armory) -"bVz" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 2; - on = 1 - }, -/turf/open/floor/plasteel, -/area/ai_monitored/security/armory) -"bVA" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/ai_monitored/security/armory) -"bVB" = ( -/obj/structure/closet/secure_closet/lethalshots, -/obj/machinery/light{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/ai_monitored/security/armory) -"bVC" = ( -/obj/structure/table/reinforced, -/obj/item/stack/sheet/metal{ - amount = 50 - }, -/obj/item/stack/sheet/glass{ - amount = 50 - }, -/obj/item/stack/sheet/mineral/plasma{ - amount = 20; - layer = 3.1 - }, -/obj/structure/extinguisher_cabinet{ - pixel_x = -26 - }, -/obj/machinery/power/apc{ - dir = 2; - name = "MiniSat APC"; - pixel_x = 0; - pixel_y = -27 - }, -/obj/structure/cable/white, -/turf/open/floor/plasteel/darkwarning{ - dir = 1 - }, -/area/ai_monitored/turret_protected/aisat_interior) -"bVD" = ( -/obj/machinery/recharge_station, -/obj/machinery/ai_status_display{ - pixel_y = -32 - }, -/turf/open/floor/plasteel/darkwarning{ - dir = 1 - }, -/area/ai_monitored/turret_protected/aisat_interior) -"bVE" = ( -/obj/machinery/computer/monitor, -/obj/machinery/light, -/obj/item/device/radio/intercom{ - broadcasting = 1; - frequency = 1447; - listening = 0; - name = "AI Intercom"; - pixel_x = 0; - pixel_y = -26 - }, -/turf/open/floor/plasteel/darkwarning{ - dir = 1 - }, -/area/ai_monitored/turret_protected/aisat_interior) -"bVF" = ( -/obj/machinery/recharge_station, -/obj/machinery/status_display{ - pixel_y = -32 - }, -/turf/open/floor/plasteel/darkwarning{ - dir = 1 - }, -/area/ai_monitored/turret_protected/aisat_interior) -"bVG" = ( -/obj/item/weapon/storage/toolbox/mechanical{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/weapon/storage/toolbox/electrical, -/obj/structure/table/reinforced, -/turf/open/floor/plasteel/darkwarning{ - dir = 1 - }, -/area/ai_monitored/turret_protected/aisat_interior) -"bVH" = ( -/obj/structure/cable/white, -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/obj/machinery/light, -/turf/open/floor/plasteel/vault, -/area/ai_monitored/turret_protected/aisat_interior) -"bVI" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/vault, -/area/ai_monitored/turret_protected/aisat_interior) -"bVJ" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/ai_monitored/turret_protected/aisat_interior) -"bVK" = ( -/obj/machinery/turretid{ - control_area = "AI Upload Chamber"; - icon_state = "control_stun"; - name = "AI Upload turret control"; - pixel_x = 0; - pixel_y = -32 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/vault, -/area/ai_monitored/turret_protected/aisat_interior) -"bVL" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/obj/machinery/light, -/obj/machinery/airalarm{ - dir = 1; - icon_state = "alarm0"; - pixel_y = -22 - }, -/turf/open/floor/plasteel/vault, -/area/ai_monitored/turret_protected/aisat_interior) -"bVM" = ( -/obj/machinery/firealarm{ - dir = 4; - icon_state = "fire0"; - pixel_x = 24; - pixel_y = 0; - tag = "icon-fire0 (EAST)" - }, -/obj/machinery/porta_turret/ai, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/ai_monitored/turret_protected/aisat_interior) -"bVN" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/paper_bin, -/obj/machinery/status_display{ - pixel_y = -32 - }, -/obj/item/weapon/pen, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/ai_monitored/turret_protected/aisat_interior) -"bVO" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/clipboard, -/obj/item/toy/figure/borg, -/obj/machinery/light, -/obj/item/device/radio/intercom{ - broadcasting = 1; - frequency = 1447; - listening = 0; - name = "AI Intercom"; - pixel_x = 0; - pixel_y = -26 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/ai_monitored/turret_protected/aisat_interior) -"bVP" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/folder/blue{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/folder/yellow, -/obj/machinery/ai_status_display{ - pixel_y = -32 - }, -/obj/item/device/aicard, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/ai_monitored/turret_protected/aisat_interior) -"bVQ" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/obj/structure/sign/poster{ - icon_state = "poster8_legit"; - pixel_y = -32; - tag = "icon-poster8_legit" - }, -/obj/structure/extinguisher_cabinet{ - pixel_x = 26 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/ai_monitored/turret_protected/aisat_interior) -"bVR" = ( -/obj/structure/lattice, -/obj/structure/transit_tube/curved{ - tag = "icon-curved0 (EAST)"; - icon_state = "curved0"; - dir = 4 - }, -/turf/open/space, -/area/space) -"bVS" = ( -/obj/structure/lattice, -/obj/structure/transit_tube/curved/flipped{ - tag = "icon-curved1 (WEST)"; - icon_state = "curved1"; - dir = 8 - }, -/turf/open/space, -/area/space) -"bVT" = ( -/turf/closed/wall/r_wall, -/area/engine/engineering) -"bVU" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/storage/firstaid/fire, -/turf/open/floor/plasteel/delivery, -/area/engine/engineering) -"bVV" = ( -/obj/machinery/disposal/bin, -/obj/structure/disposalpipe/trunk, -/turf/open/floor/plasteel/delivery, -/area/engine/engineering) -"bVW" = ( -/obj/structure/closet/secure_closet/engineering_personal, -/turf/open/floor/plasteel/delivery, -/area/engine/engineering) -"bVX" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/storage/fancy/donut_box, -/turf/open/floor/plasteel/delivery, -/area/engine/engineering) -"bVY" = ( -/obj/structure/sign/securearea, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall, -/area/engine/engineering) -"bVZ" = ( -/obj/machinery/door/firedoor, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/door/airlock/engineering{ - name = "Engineering Access"; - req_access_txt = "10" - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (EAST)"; - icon_state = "plasteel_warn_side"; - dir = 4 - }, -/area/engine/engineering) -"bWa" = ( -/obj/structure/sign/radiation, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/closed/wall, -/area/engine/engineering) -"bWb" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/security{ - name = "Security Post - Engineering"; - req_access_txt = "63" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (EAST)"; - icon_state = "plasteel_warn_side"; - dir = 4 - }, -/area/security/checkpoint/engineering) -"bWc" = ( -/obj/structure/cable/white, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/checkpoint/engineering) -"bWd" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/turf/open/floor/plasteel/yellow/corner{ - dir = 8 - }, -/area/hallway/primary/port) -"bWe" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHEAST)"; - icon_state = "intact"; - dir = 6 - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/yellow/side, -/area/hallway/primary/port) -"bWf" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHWEST)"; - icon_state = "intact"; - dir = 9 - }, -/obj/structure/closet/emcloset, -/turf/open/floor/plasteel/yellow/corner, -/area/hallway/primary/port) -"bWg" = ( -/turf/closed/wall, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"bWh" = ( -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Maintenance Hatch"; - req_access_txt = "12" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (EAST)"; - icon_state = "plasteel_warn_side"; - dir = 4 - }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"bWi" = ( -/turf/closed/wall, -/area/library) -"bWj" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/library) -"bWk" = ( -/obj/machinery/door/airlock/glass{ - name = "Library Access" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/library) -"bWl" = ( -/obj/machinery/door/airlock/glass{ - name = "Library Access" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/library) -"bWm" = ( -/obj/structure/sign/directions/evac{ - pixel_y = -8 - }, -/obj/structure/sign/directions/medical{ - dir = 2 - }, -/obj/structure/sign/directions/security{ - dir = 2; - pixel_y = 8 - }, -/turf/closed/wall, -/area/library) -"bWn" = ( -/turf/open/floor/plasteel/bot, -/area/hallway/primary/central) -"bWo" = ( -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor/preopen{ - id = "hopblast"; - name = "HoP Blast door" - }, -/turf/open/floor/plating, -/area/crew_quarters/heads) -"bWp" = ( -/obj/machinery/computer/card, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/crew_quarters/heads) -"bWq" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/wood, -/area/crew_quarters/heads) -"bWr" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/heads) -"bWs" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/heads) -"bWt" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/heads) -"bWu" = ( -/obj/machinery/pdapainter, -/obj/machinery/status_display{ - pixel_x = 32 - }, -/turf/open/floor/wood, -/area/crew_quarters/heads) -"bWv" = ( -/obj/machinery/telecomms/bus/preset_one, -/turf/open/floor/plasteel/whiteblue/side{ - dir = 10; - initial_gas_mix = "n2=100;TEMP=80"; - tag = "icon-whiteblue (SOUTHWEST)" - }, -/area/tcommsat/server) -"bWw" = ( -/obj/machinery/telecomms/processor/preset_one, -/turf/open/floor/plasteel/whitepurple/side{ - dir = 6; - initial_gas_mix = "n2=100;TEMP=80"; - tag = "icon-whitepurple (SOUTHEAST)" - }, -/area/tcommsat/server) -"bWx" = ( -/turf/open/floor/plasteel/vault{ - tag = "icon-vault (NORTHEAST)"; - dir = 5 - }, -/area/tcommsat/server) -"bWy" = ( -/obj/machinery/light/small{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/vault{ - tag = "icon-vault (NORTHEAST)"; - dir = 5 - }, -/area/tcommsat/server) -"bWz" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/vault{ - tag = "icon-vault (NORTHEAST)"; - dir = 5 - }, -/area/tcommsat/server) -"bWA" = ( -/obj/machinery/light/small{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/vault{ - tag = "icon-vault (NORTHEAST)"; - dir = 5 - }, -/area/tcommsat/server) -"bWB" = ( -/obj/machinery/telecomms/processor/preset_three, -/turf/open/floor/plasteel/darkblue/side{ - dir = 10; - initial_gas_mix = "n2=100;TEMP=80" - }, -/area/tcommsat/server) -"bWC" = ( -/obj/machinery/telecomms/bus/preset_three, -/turf/open/floor/plasteel/darkred/side{ - dir = 6; - initial_gas_mix = "n2=100;TEMP=80"; - tag = "SERVER" - }, -/area/tcommsat/server) -"bWD" = ( -/obj/machinery/photocopier, -/obj/machinery/computer/security/telescreen/entertainment{ - pixel_x = -32 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/wood, -/area/crew_quarters/captain{ - name = "\improper Captain's Quarters" - }) -"bWE" = ( -/obj/machinery/light_switch{ - pixel_x = 26; - pixel_y = 26 - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/wood, -/area/crew_quarters/captain{ - name = "\improper Captain's Quarters" - }) -"bWF" = ( -/turf/open/floor/wood, -/area/crew_quarters/captain{ - name = "\improper Captain's Quarters" - }) -"bWG" = ( -/obj/machinery/light{ - dir = 1 - }, -/obj/machinery/suit_storage_unit/captain, -/turf/open/floor/plasteel/warning{ - dir = 10 - }, -/area/crew_quarters/captain{ - name = "\improper Captain's Quarters" - }) -"bWH" = ( -/obj/structure/closet/secure_closet/captains, -/obj/item/clothing/suit/armor/vest/capcarapace, -/obj/item/clothing/head/caphat, -/turf/open/floor/plasteel/warning{ - dir = 6 - }, -/area/crew_quarters/captain{ - name = "\improper Captain's Quarters" - }) -"bWI" = ( -/turf/closed/wall, -/area/crew_quarters/captain{ - name = "\improper Captain's Quarters" - }) -"bWJ" = ( -/obj/machinery/door/airlock/silver{ - name = "Bathroom" - }, -/turf/open/floor/plasteel/white, -/area/crew_quarters/captain{ - name = "\improper Captain's Quarters" - }) -"bWK" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/closed/wall, -/area/crew_quarters/captain{ - name = "\improper Captain's Quarters" - }) -"bWL" = ( -/obj/structure/sign/directions/evac{ - pixel_y = -8 - }, -/obj/structure/sign/directions/medical{ - dir = 2 - }, -/obj/structure/sign/directions/security{ - dir = 4; - pixel_y = 8 - }, -/turf/closed/wall, -/area/crew_quarters/courtroom) -"bWM" = ( -/turf/closed/wall, -/area/crew_quarters/courtroom) -"bWN" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/tinted/fulltile, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/crew_quarters/courtroom) -"bWO" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock{ - name = "Courtroom" - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/courtroom) -"bWP" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/tinted/fulltile, -/turf/open/floor/plating, -/area/crew_quarters/courtroom) -"bWQ" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/security{ - name = "Courtroom"; - req_access_txt = "42" - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/bot, -/area/crew_quarters/courtroom) -"bWR" = ( -/turf/closed/wall, -/area/lawoffice) -"bWS" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/lawoffice) -"bWT" = ( -/obj/machinery/door/firedoor, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/door/airlock{ - name = "Law Office"; - req_access_txt = "38" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/wood, -/area/lawoffice) -"bWU" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/lawoffice) -"bWV" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 5 - }, -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/red/corner{ - dir = 8 - }, -/area/hallway/primary/starboard) -"bWW" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/red/side, -/area/hallway/primary/starboard) -"bWX" = ( -/obj/machinery/flasher{ - id = "brigflashdoor"; - pixel_x = 26; - pixel_y = -26 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/red/corner, -/area/hallway/primary/starboard) -"bWY" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass_security{ - name = "Brig"; - req_access_txt = "63" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/security/brig) -"bWZ" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/obj/structure/sign/directions/engineering{ - desc = "A sign that shows there are doors here. There are doors everywhere!"; - icon_state = "doors"; - name = "WARNING: BLAST DOORS"; - pixel_x = 0; - pixel_y = -32; - tag = "icon-doors" - }, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/security/brig) -"bXa" = ( -/obj/machinery/door/poddoor/preopen{ - id = "brigfront"; - name = "Brig Blast door" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/delivery, -/area/security/brig) -"bXb" = ( -/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, -/turf/open/floor/plasteel, -/area/security/brig) -"bXc" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/red/corner, -/area/security/brig) -"bXd" = ( -/obj/structure/cable/white, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/security/warden) -"bXe" = ( -/obj/structure/table/reinforced, -/obj/machinery/light_switch{ - pixel_x = -38; - pixel_y = -26 - }, -/obj/machinery/firealarm{ - dir = 1; - pixel_x = -26; - pixel_y = -26 - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/open/floor/plasteel/red/side, -/area/security/warden) -"bXf" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/red/side, -/area/security/warden) -"bXg" = ( -/obj/structure/closet/secure_closet/warden, -/obj/item/clothing/under/rank/warden/grey, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/red/side{ - dir = 6 - }, -/area/security/warden) -"bXh" = ( -/obj/structure/cable/white, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/ai_monitored/security/armory) -"bXi" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/red/side, -/area/ai_monitored/security/armory) -"bXj" = ( -/obj/machinery/button/door{ - id = "armouryaccess"; - name = "Armoury Access"; - pixel_x = -26; - pixel_y = -26; - req_access_txt = "3" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/red/side, -/area/ai_monitored/security/armory) -"bXk" = ( -/obj/structure/chair/office/dark, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHWEST)"; - icon_state = "intact"; - dir = 9 - }, -/turf/open/floor/plasteel/red/corner{ - dir = 8 - }, -/area/ai_monitored/security/armory) -"bXl" = ( -/obj/structure/cable/white, -/obj/machinery/power/apc{ - dir = 2; - name = "Armoury APC"; - pixel_y = -26 - }, -/obj/machinery/camera{ - c_tag = "Armory - Interior"; - dir = 1; - name = "security camera" - }, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/ai_monitored/security/armory) -"bXm" = ( -/obj/vehicle/secway, -/obj/structure/reagent_dispensers/peppertank{ - pixel_x = 32 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/ai_monitored/security/armory) -"bXn" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/highsecurity{ - name = "MiniSat Upload"; - req_access_txt = "16" - }, -/obj/machinery/flasher{ - id = "AI"; - pixel_x = -26 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/ai_monitored/turret_protected/aisat_interior) -"bXo" = ( -/obj/structure/grille, -/turf/open/floor/plating/warnplate, -/area/engine/engineering) -"bXp" = ( -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/structure/grille, -/turf/open/floor/plating/warnplate, -/area/engine/engineering) -"bXq" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/grille, -/turf/open/floor/plating/warnplate, -/area/engine/engineering) -"bXr" = ( -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/structure/grille, -/turf/open/floor/plating/warnplate/corner{ - dir = 1 - }, -/area/engine/engineering) -"bXs" = ( -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/structure/grille, -/turf/open/floor/plating/warnplate/corner, -/area/engine/engineering) -"bXt" = ( -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/grille, -/turf/open/floor/plating/warnplate, -/area/engine/engineering) -"bXu" = ( -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/structure/grille, -/turf/open/floor/plating/warnplate, -/area/engine/engineering) -"bXv" = ( -/obj/structure/closet/emcloset{ - anchored = 1 - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/plasteel/bot, -/area/engine/engineering) -"bXw" = ( -/obj/structure/sign/vacuum, -/turf/closed/wall, -/area/engine/engineering) -"bXx" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/turf/open/floor/plasteel/warning{ - dir = 9 - }, -/area/engine/engineering) -"bXy" = ( -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/engine/engineering) -"bXz" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHEAST)"; - icon_state = "intact"; - dir = 6 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/engine/engineering) -"bXA" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/engine/engineering) -"bXB" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/light_switch{ - pixel_y = 26 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/camera{ - c_tag = "Engineering - Fore"; - dir = 2; - name = "engineering camera" - }, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/engine/engineering) -"bXC" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/engine/engineering) -"bXD" = ( -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/structure/disposalpipe/sortjunction{ - name = "Engineering Junction"; - sortType = 4 - }, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/engine/engineering) -"bXE" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/engine/engineering) -"bXF" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/firealarm{ - pixel_y = 24 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/engine/engineering) -"bXG" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plasteel/warning{ - dir = 5 - }, -/area/engine/engineering) -"bXH" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-0-2"; - icon_state = "0-2" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/engine/engineering) -"bXI" = ( -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/power/smes/engineering{ - charge = 2e+006 - }, -/turf/open/floor/plasteel/circuit/gcircuit, -/area/engine/engineering) -"bXJ" = ( -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/machinery/power/smes/engineering{ - charge = 2e+006 - }, -/turf/open/floor/plasteel/circuit/gcircuit, -/area/engine/engineering) -"bXK" = ( -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Maintenance Hatch"; - req_access_txt = "12" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (EAST)"; - icon_state = "plasteel_warn_side"; - dir = 4 - }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"bXL" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/closet/firecloset, -/turf/open/floor/plasteel/neutral/side{ - dir = 9 - }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"bXM" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"bXN" = ( -/obj/structure/closet/crate, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 3; - name = "3maintenance loot spawner" - }, -/obj/machinery/power/apc{ - dir = 4; - name = "Port Maintenance APC"; - pixel_x = 26; - pixel_y = 0 - }, -/obj/structure/cable/white{ - tag = "icon-0-2"; - icon_state = "0-2" - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"bXO" = ( -/obj/structure/table/wood, -/obj/machinery/computer/libraryconsole, -/obj/machinery/light_switch{ - pixel_y = 26 - }, -/turf/open/floor/plasteel/black, -/area/library) -"bXP" = ( -/obj/structure/table/wood, -/obj/item/device/flashlight/lamp, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/library) -"bXQ" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/grimy, -/area/library) -"bXR" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/grimy, -/area/library) -"bXS" = ( -/turf/open/floor/plasteel/black, -/area/library) -"bXT" = ( -/obj/structure/table/wood, -/obj/item/weapon/paper_bin, -/obj/item/weapon/pen, -/obj/machinery/firealarm{ - pixel_y = 24 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/library) -"bXU" = ( -/obj/structure/table/wood, -/obj/item/device/flashlight/lamp, -/obj/machinery/computer/security/telescreen/entertainment{ - pixel_x = -32 - }, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_y = 26 - }, -/turf/open/floor/plasteel/black, -/area/library) -"bXV" = ( -/obj/machinery/light/small{ - dir = 1 - }, -/obj/structure/table/wood, -/obj/item/weapon/folder, -/obj/item/weapon/pen, -/obj/machinery/newscaster{ - pixel_y = 32 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/library) -"bXW" = ( -/obj/machinery/computer/libraryconsole, -/obj/structure/table/wood, -/turf/open/floor/plasteel/black, -/area/library) -"bXX" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = -26; - pixel_y = 0 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 1 - }, -/area/hallway/primary/central) -"bXY" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/central) -"bXZ" = ( -/obj/effect/landmark{ - name = "lightsout" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/blue/corner, -/area/hallway/primary/central) -"bYa" = ( -/obj/machinery/status_display, -/turf/closed/wall/r_wall, -/area/crew_quarters/heads) -"bYb" = ( -/obj/machinery/computer/secure_data, -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/crew_quarters/heads) -"bYc" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/heads) -"bYd" = ( -/obj/structure/table/wood, -/obj/machinery/light, -/obj/item/stack/packageWrap, -/obj/item/weapon/hand_labeler, -/turf/open/floor/wood, -/area/crew_quarters/heads) -"bYe" = ( -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/machinery/camera{ - c_tag = "Telecomms - Chamber Port"; - dir = 4; - name = "telecomms camera"; - network = list("SS13","tcomm") - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/tcommsat/server) -"bYf" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/vault{ - dir = 10 - }, -/area/tcommsat/server) -"bYg" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 2; - external_pressure_bound = 140; - name = "server vent"; - on = 1; - pressure_checks = 0 - }, -/turf/open/floor/plasteel/vault{ - tag = "icon-vault (NORTHEAST)"; - dir = 5 - }, -/area/tcommsat/server) -"bYh" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/vault{ - tag = "icon-vault (NORTHEAST)"; - dir = 5 - }, -/area/tcommsat/server) -"bYi" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/vault{ - tag = "icon-vault (NORTHEAST)"; - dir = 5 - }, -/area/tcommsat/server) -"bYj" = ( -/obj/structure/table/glass, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/item/weapon/folder/yellow, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHEAST)"; - icon_state = "intact"; - dir = 6 - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/circuit/gcircuit, -/area/tcommsat/server) -"bYk" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/vault{ - tag = "icon-vault (NORTHEAST)"; - dir = 5 - }, -/area/tcommsat/server) -"bYl" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 2; - external_pressure_bound = 120; - initialize_directions = 1; - internal_pressure_bound = 4000; - name = "server vent"; - on = 1; - pressure_checks = 2; - pump_direction = 0 - }, -/turf/open/floor/plasteel/vault{ - tag = "icon-vault (NORTHEAST)"; - dir = 5 - }, -/area/tcommsat/server) -"bYm" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/vault{ - dir = 6 - }, -/area/tcommsat/server) -"bYn" = ( -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/tcommsat/server) -"bYo" = ( -/obj/structure/table/wood, -/obj/item/weapon/pinpointer, -/obj/item/weapon/disk/nuclear, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = -26 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/captain{ - name = "\improper Captain's Quarters" - }) -"bYp" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 5 - }, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/captain{ - name = "\improper Captain's Quarters" - }) -"bYq" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/wood, -/area/crew_quarters/captain{ - name = "\improper Captain's Quarters" - }) -"bYr" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/wood, -/area/crew_quarters/captain{ - name = "\improper Captain's Quarters" - }) -"bYs" = ( -/obj/structure/table/wood, -/obj/item/device/flashlight/lamp/green, -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/item/weapon/card/id/captains_spare, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/captain{ - name = "\improper Captain's Quarters" - }) -"bYt" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/captain{ - name = "\improper Captain's Quarters" - }) -"bYu" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHWEST)"; - icon_state = "intact"; - dir = 9 - }, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/captain{ - name = "\improper Captain's Quarters" - }) -"bYv" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment, -/obj/structure/extinguisher_cabinet{ - pixel_x = 26 - }, -/turf/open/floor/plasteel/neutral/corner, -/area/hallway/primary/central) -"bYw" = ( -/obj/machinery/vending/snack, -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/obj/structure/extinguisher_cabinet{ - pixel_y = 32 - }, -/turf/open/floor/plasteel/vault, -/area/crew_quarters/courtroom) -"bYx" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/vault, -/area/crew_quarters/courtroom) -"bYy" = ( -/turf/open/floor/plasteel/vault, -/area/crew_quarters/courtroom) -"bYz" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/turf/open/floor/plasteel/vault, -/area/crew_quarters/courtroom) -"bYA" = ( -/obj/structure/chair{ - dir = 4 - }, -/obj/structure/sign/poster{ - icon_state = "poster22_legit"; - pixel_y = 32; - tag = "icon-poster22_legit" - }, -/obj/machinery/camera{ - c_tag = "Courtroom - Fore"; - dir = 2; - name = "security camera" - }, -/turf/open/floor/plasteel/vault, -/area/crew_quarters/courtroom) -"bYB" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/crew_quarters/courtroom) -"bYC" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 1 - }, -/area/crew_quarters/courtroom) -"bYD" = ( -/obj/machinery/newscaster{ - pixel_y = 32 - }, -/obj/structure/filingcabinet/chestdrawer, -/turf/open/floor/plasteel/neutral/side{ - dir = 1 - }, -/area/crew_quarters/courtroom) -"bYE" = ( -/obj/machinery/airalarm{ - pixel_y = 22 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 1 - }, -/area/crew_quarters/courtroom) -"bYF" = ( -/obj/machinery/light{ - dir = 1 - }, -/obj/structure/reagent_dispensers/peppertank{ - pixel_y = 32 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 1 - }, -/area/crew_quarters/courtroom) -"bYG" = ( -/obj/machinery/light_switch{ - pixel_x = 26; - pixel_y = 26 - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral/side{ - dir = 1 - }, -/area/crew_quarters/courtroom) -"bYH" = ( -/obj/structure/closet/secure_closet/courtroom, -/turf/open/floor/plasteel/neutral/side{ - dir = 5 - }, -/area/crew_quarters/courtroom) -"bYI" = ( -/obj/structure/table/wood, -/obj/item/weapon/book/manual/wiki/security_space_law, -/obj/item/weapon/book/manual/wiki/security_space_law, -/obj/item/device/taperecorder{ - pixel_x = 3 - }, -/obj/item/clothing/glasses/sunglasses, -/obj/structure/extinguisher_cabinet{ - pixel_x = -26 - }, -/turf/open/floor/wood, -/area/lawoffice) -"bYJ" = ( -/obj/structure/table/wood, -/obj/item/weapon/clipboard, -/obj/item/toy/figure/lawyer, -/turf/open/floor/wood, -/area/lawoffice) -"bYK" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/wood, -/area/lawoffice) -"bYL" = ( -/obj/machinery/light_switch{ - pixel_x = 26; - pixel_y = 26 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/wood, -/area/lawoffice) -"bYM" = ( -/obj/structure/closet/lawcloset, -/obj/machinery/firealarm{ - dir = 4; - icon_state = "fire0"; - pixel_x = 24; - pixel_y = 0; - tag = "icon-fire0 (EAST)" - }, -/turf/open/floor/wood, -/area/lawoffice) -"bYN" = ( -/turf/closed/wall/r_wall, -/area/lawoffice) -"bYO" = ( -/obj/machinery/door/firedoor, -/obj/structure/table/reinforced, -/obj/machinery/door/poddoor/preopen{ - id = "brigwindows"; - name = "Brig Front Blast door" - }, -/obj/item/weapon/folder/red, -/obj/item/weapon/pen, -/obj/machinery/door/window/brigdoor/southright{ - name = "Security Desk"; - req_access_txt = "63" - }, -/obj/machinery/door/window/northright{ - name = "Security Desk" - }, -/turf/open/floor/plasteel/red, -/area/security/brig) -"bYP" = ( -/obj/machinery/firealarm{ - dir = 8; - pixel_x = -24 - }, -/obj/machinery/light{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/plasteel/red/corner{ - dir = 8 - }, -/area/security/brig) -"bYQ" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/plasteel/neutral, -/area/security/brig) -"bYR" = ( -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = 26; - pixel_y = -7 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/disposalpipe/segment, -/obj/machinery/camera{ - c_tag = "Security - Brig Aft"; - dir = 8; - name = "security camera" - }, -/turf/open/floor/plasteel/red/corner{ - dir = 4 - }, -/area/security/brig) -"bYS" = ( -/obj/structure/table/reinforced, -/obj/machinery/door/firedoor, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/machinery/door/window/brigdoor/northright{ - name = "Warden's Desk"; - req_access_txt = "3" - }, -/obj/machinery/door/window/southright{ - name = "Warden's Desk" - }, -/obj/item/weapon/folder/red, -/obj/item/weapon/pen, -/obj/item/weapon/poster/legit{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/poster/legit, -/turf/open/floor/plasteel/delivery, -/area/security/warden) -"bYT" = ( -/obj/machinery/door/poddoor{ - id = "armouryaccess"; - name = "Armoury Access" - }, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (EAST)"; - icon_state = "plasteel_warn_side"; - dir = 4 - }, -/area/ai_monitored/security/armory) -"bYU" = ( -/obj/structure/table/reinforced, -/obj/machinery/door/firedoor, -/obj/machinery/door/window/brigdoor/northright{ - name = "Armoury Desk"; - req_access_txt = "3" - }, -/obj/item/weapon/folder/red, -/obj/item/weapon/pen, -/obj/machinery/door/window/southright{ - name = "Armoury Desk" - }, -/turf/open/floor/plasteel/delivery, -/area/ai_monitored/security/armory) -"bYV" = ( -/turf/closed/wall/r_wall, -/area/ai_monitored/turret_protected/ai_upload) -"bYW" = ( -/obj/machinery/ai_status_display, -/turf/closed/wall/r_wall, -/area/ai_monitored/turret_protected/ai_upload) -"bYX" = ( -/obj/machinery/porta_turret/ai, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/ai_monitored/turret_protected/ai_upload) -"bYY" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/obj/machinery/light{ - dir = 1 - }, -/turf/open/floor/plasteel/vault, -/area/ai_monitored/turret_protected/ai_upload) -"bYZ" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/vault, -/area/ai_monitored/turret_protected/ai_upload) -"bZa" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/ai_monitored/turret_protected/ai_upload) -"bZb" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/camera/motion{ - c_tag = "AI - Upload"; - name = "motion-sensitive ai camera"; - network = list("Sat") - }, -/turf/open/floor/plasteel/vault, -/area/ai_monitored/turret_protected/ai_upload) -"bZc" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/obj/machinery/light{ - dir = 1 - }, -/turf/open/floor/plasteel/vault, -/area/ai_monitored/turret_protected/ai_upload) -"bZd" = ( -/obj/machinery/firealarm{ - pixel_y = 24 - }, -/obj/machinery/porta_turret/ai, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/ai_monitored/turret_protected/ai_upload) -"bZe" = ( -/obj/structure/grille, -/turf/open/floor/plating/warnplate{ - dir = 4 - }, -/area/space) -"bZf" = ( -/turf/open/floor/plating, -/area/engine/engineering) -"bZg" = ( -/obj/structure/cable/white, -/obj/machinery/power/emitter{ - anchored = 1; - state = 2 - }, -/turf/open/floor/plating/warnplate{ - dir = 1 - }, -/area/engine/engineering) -"bZh" = ( -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/structure/grille, -/turf/open/floor/plating/warnplate{ - dir = 10 - }, -/area/engine/engineering) -"bZi" = ( -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/structure/grille, -/turf/open/floor/plating/warnplate{ - dir = 6 - }, -/area/engine/engineering) -"bZj" = ( -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/engine/engineering) -"bZk" = ( -/obj/machinery/door/airlock/external{ - name = "External Containment Access"; - req_access_txt = "10; 13" - }, -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/warning/side, -/area/engine/engineering) -"bZl" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/fans/tiny, -/turf/open/floor/plasteel/delivery, -/area/engine/engineering) -"bZm" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/engine/engineering) -"bZn" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/neutral, -/area/engine/engineering) -"bZo" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/yellow, -/area/engine/engineering) -"bZp" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/neutral, -/area/engine/engineering) -"bZq" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/yellow, -/area/engine/engineering) -"bZr" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/yellow, -/area/engine/engineering) -"bZs" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/neutral, -/area/engine/engineering) -"bZt" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/plasteel/yellow, -/area/engine/engineering) -"bZu" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/plasteel/neutral, -/area/engine/engineering) -"bZv" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHEAST)"; - icon_state = "intact"; - dir = 5 - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/engine/engineering) -"bZw" = ( -/obj/machinery/door/firedoor, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/machinery/door/airlock/glass_engineering{ - name = "Power Monitoring"; - req_access_txt = "32" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/warning/side, -/area/engine/engineering) -"bZx" = ( -/obj/machinery/power/terminal{ - icon_state = "term"; - dir = 1 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/turf/open/floor/plasteel/warning{ - dir = 9 - }, -/area/engine/engineering) -"bZy" = ( -/obj/machinery/power/terminal{ - icon_state = "term"; - dir = 1 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/engine/engineering) -"bZz" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/light_switch{ - pixel_x = 26; - pixel_y = 32 - }, -/obj/machinery/power/terminal{ - icon_state = "term"; - dir = 1 - }, -/obj/structure/extinguisher_cabinet{ - pixel_x = 26 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHWEST)"; - icon_state = "intact"; - dir = 10 - }, -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/turf/open/floor/plasteel/warning{ - dir = 5 - }, -/area/engine/engineering) -"bZA" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/closet, -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plasteel/neutral/side{ - dir = 9 - }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"bZB" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/delivery, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"bZC" = ( -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"bZD" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"bZE" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"bZF" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"bZG" = ( -/obj/structure/table/wood, -/obj/item/weapon/folder, -/obj/item/weapon/pen, -/obj/machinery/computer/security/telescreen/entertainment{ - pixel_x = -32 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/library) -"bZH" = ( -/obj/structure/chair/office/dark{ - dir = 8 - }, -/obj/effect/landmark/start{ - name = "Librarian" - }, -/turf/open/floor/plasteel/black, -/area/library) -"bZI" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/plasteel/grimy, -/area/library) -"bZJ" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/library) -"bZK" = ( -/obj/structure/chair/comfy/black{ - dir = 8 - }, -/obj/machinery/newscaster{ - pixel_x = 32 - }, -/obj/machinery/camera{ - c_tag = "Library - Fore"; - dir = 8; - name = "library camera" - }, -/turf/open/floor/plasteel/black, -/area/library) -"bZL" = ( -/obj/machinery/photocopier, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/library) -"bZM" = ( -/obj/structure/chair/office/dark{ - dir = 1 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 2; - on = 1 - }, -/turf/open/floor/plasteel/black, -/area/library) -"bZN" = ( -/obj/structure/table/wood, -/obj/item/weapon/paper_bin, -/obj/item/weapon/pen, -/obj/machinery/status_display{ - pixel_x = 32 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/library) -"bZO" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/plasteel/blue/corner, -/area/hallway/primary/central) -"bZP" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/hallway/primary/central) -"bZQ" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/plasteel/bot, -/area/hallway/primary/central) -"bZR" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/heads) -"bZS" = ( -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/heads) -"bZT" = ( -/obj/machinery/power/apc{ - dir = 4; - name = "HoP Office APC"; - pixel_x = 26; - pixel_y = 0 - }, -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/camera{ - c_tag = "Bridge - Head of Personnel's Office"; - dir = 8; - name = "command camera" - }, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/heads) -"bZU" = ( -/turf/closed/wall, -/area/crew_quarters/heads) -"bZV" = ( -/obj/machinery/power/apc{ - dir = 8; - name = "Telecoms Server Room APC"; - pixel_x = -26; - pixel_y = 0 - }, -/obj/structure/cable/white, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/tcommsat/server) -"bZW" = ( -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/turf/open/floor/plasteel/vault{ - dir = 10 - }, -/area/tcommsat/server) -"bZX" = ( -/obj/machinery/telecomms/broadcaster/preset_left, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 5 - }, -/turf/open/floor/bluegrid{ - name = "Mainframe Base"; - initial_gas_mix = "n2=100;TEMP=80" - }, -/area/tcommsat/server) -"bZY" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - tag = "icon-vault (NORTHEAST)"; - dir = 5 - }, -/area/tcommsat/server) -"bZZ" = ( -/obj/machinery/message_server, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/circuit/gcircuit{ - name = "Mainframe Base"; - initial_gas_mix = "n2=100;TEMP=80" - }, -/area/tcommsat/server) -"caa" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - tag = "icon-vault (NORTHEAST)"; - dir = 5 - }, -/area/tcommsat/server) -"cab" = ( -/obj/machinery/telecomms/hub/preset, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plasteel/circuit/gcircuit, -/area/tcommsat/server) -"cac" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/open/floor/plasteel/vault{ - tag = "icon-vault (NORTHEAST)"; - dir = 5 - }, -/area/tcommsat/server) -"cad" = ( -/obj/machinery/blackbox_recorder, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/circuit/gcircuit{ - name = "Mainframe Base"; - initial_gas_mix = "n2=100;TEMP=80" - }, -/area/tcommsat/server) -"cae" = ( -/obj/machinery/telecomms/broadcaster/preset_right, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHWEST)"; - icon_state = "intact"; - dir = 9 - }, -/turf/open/floor/bluegrid{ - name = "Mainframe Base"; - initial_gas_mix = "n2=100;TEMP=80" - }, -/area/tcommsat/server) -"caf" = ( -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/machinery/power/terminal{ - tag = "icon-term (EAST)"; - icon_state = "term"; - dir = 4 - }, -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/turf/open/floor/plasteel/vault{ - dir = 6 - }, -/area/tcommsat/server) -"cag" = ( -/obj/machinery/power/smes{ - charge = 5e+006 - }, -/obj/structure/cable/white, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/tcommsat/server) -"cah" = ( -/obj/structure/table/wood, -/obj/item/weapon/folder/blue, -/obj/item/weapon/pen/fourcolor, -/obj/machinery/status_display{ - pixel_x = -32 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/captain{ - name = "\improper Captain's Quarters" - }) -"cai" = ( -/obj/structure/chair/comfy/brown{ - color = "#c45c57"; - dir = 8; - icon_state = "comfychair" - }, -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/effect/landmark/start{ - name = "Captain" - }, -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/captain{ - name = "\improper Captain's Quarters" - }) -"caj" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 2; - on = 1; - scrub_N2O = 1; - scrub_Toxins = 1 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/wood, -/area/crew_quarters/captain{ - name = "\improper Captain's Quarters" - }) -"cak" = ( -/obj/machinery/holopad, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/turf/open/floor/wood, -/area/crew_quarters/captain{ - name = "\improper Captain's Quarters" - }) -"cal" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/turf/open/floor/wood, -/area/crew_quarters/captain{ - name = "\improper Captain's Quarters" - }) -"cam" = ( -/obj/machinery/door/window/brigdoor/westleft{ - name = "Captain's Bedroom"; - req_access_txt = "20" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/captain{ - name = "\improper Captain's Quarters" - }) -"can" = ( -/turf/open/floor/carpet, -/area/crew_quarters/captain{ - name = "\improper Captain's Quarters" - }) -"cao" = ( -/obj/machinery/light/small{ - dir = 4 - }, -/obj/structure/bed, -/obj/item/weapon/bedsheet/captain, -/obj/machinery/newscaster{ - pixel_x = 32 - }, -/obj/effect/landmark/start{ - name = "Captain" - }, -/turf/open/floor/carpet, -/area/crew_quarters/captain{ - name = "\improper Captain's Quarters" - }) -"cap" = ( -/obj/structure/table, -/obj/machinery/microwave{ - pixel_x = -2; - pixel_y = 5 - }, -/obj/machinery/newscaster{ - pixel_x = -32 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/courtroom) -"caq" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/courtroom) -"car" = ( -/obj/structure/chair{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/courtroom) -"cas" = ( -/obj/structure/chair{ - dir = 2; - name = "Prosecution" - }, -/turf/open/floor/plasteel/red/side{ - dir = 9 - }, -/area/crew_quarters/courtroom) -"cat" = ( -/obj/structure/chair{ - dir = 2; - name = "Prosecution" - }, -/turf/open/floor/plasteel/red/side{ - dir = 5 - }, -/area/crew_quarters/courtroom) -"cau" = ( -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/courtroom) -"cav" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/courtroom) -"caw" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/courtroom) -"cax" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/crew_quarters/courtroom) -"cay" = ( -/obj/machinery/door/firedoor, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/door/airlock{ - name = "Law Office"; - req_access_txt = "38" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/bot, -/area/lawoffice) -"caz" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/wood, -/area/lawoffice) -"caA" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/grimy, -/area/lawoffice) -"caB" = ( -/obj/machinery/holopad, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/grimy, -/area/lawoffice) -"caC" = ( -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/effect/landmark/start{ - name = "Lawyer" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plasteel/grimy, -/area/lawoffice) -"caD" = ( -/obj/structure/filingcabinet/employment, -/obj/machinery/airalarm{ - dir = 8; - icon_state = "alarm0"; - pixel_x = 24 - }, -/turf/open/floor/wood, -/area/lawoffice) -"caE" = ( -/obj/machinery/computer/security, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/red/side{ - dir = 9 - }, -/area/security/brig) -"caF" = ( -/obj/structure/chair/office/dark{ - dir = 1 - }, -/obj/effect/landmark/start{ - name = "Security Officer" - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 2; - on = 1 - }, -/turf/open/floor/plasteel/red/side{ - dir = 1 - }, -/area/security/brig) -"caG" = ( -/obj/machinery/computer/secure_data, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/button/flasher{ - id = "gulagshuttleflasher"; - name = "Flash Control"; - pixel_x = 26; - pixel_y = 7; - req_access_txt = "63" - }, -/obj/machinery/button/door{ - id = "brigfront"; - name = "Brig Access Control"; - pixel_x = 26; - pixel_y = -7; - req_access_txt = "63" - }, -/obj/machinery/button/door{ - id = "brigwindows"; - name = "Cell Window Control"; - pixel_x = 38; - pixel_y = -7; - req_access_txt = "63" - }, -/turf/open/floor/plasteel/red/side{ - dir = 5 - }, -/area/security/brig) -"caH" = ( -/obj/structure/chair, -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/plasteel/red/side{ - dir = 9 - }, -/area/security/brig) -"caI" = ( -/obj/structure/chair, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 2; - on = 1 - }, -/turf/open/floor/plasteel/red/side{ - dir = 1 - }, -/area/security/brig) -"caJ" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/plasteel/red/corner{ - dir = 1 - }, -/area/security/brig) -"caK" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/effect/landmark{ - name = "lightsout" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/security/brig) -"caL" = ( -/obj/machinery/door/firedoor, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/door/airlock/glass_security{ - name = "Gear Room"; - req_access_txt = "63" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/security/brig) -"caM" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/red/side{ - dir = 9 - }, -/area/security/brig) -"caN" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/red/side{ - dir = 1 - }, -/area/security/brig) -"caO" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/red/side{ - dir = 1 - }, -/area/security/brig) -"caP" = ( -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/machinery/power/apc{ - cell_type = 10000; - dir = 1; - name = "Brig APC"; - pixel_x = 0; - pixel_y = 28 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/camera{ - c_tag = "Security - Gear Room"; - dir = 2; - name = "security camera" - }, -/turf/open/floor/plasteel/red/side{ - dir = 1 - }, -/area/security/brig) -"caQ" = ( -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_y = 26 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/red/side{ - dir = 1 - }, -/area/security/brig) -"caR" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/red/side{ - dir = 1 - }, -/area/security/brig) -"caS" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHWEST)"; - icon_state = "intact"; - dir = 10 - }, -/turf/open/floor/plasteel/red/side{ - dir = 1 - }, -/area/security/brig) -"caT" = ( -/obj/structure/closet/secure_closet/security/sec, -/turf/open/floor/plasteel/red/side{ - dir = 5 - }, -/area/security/brig) -"caU" = ( -/obj/structure/closet/secure_closet/security/sec, -/turf/open/floor/plasteel/red, -/area/security/brig) -"caV" = ( -/obj/structure/table/reinforced, -/obj/machinery/door/window/brigdoor{ - dir = 4; - name = "Core Modules"; - req_access_txt = "20" - }, -/obj/item/weapon/aiModule/core/full/paladin{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/aiModule/core/full/asimov, -/obj/item/weapon/aiModule/core/full/corp{ - pixel_x = -3; - pixel_y = -3 - }, -/obj/structure/sign/nanotrasen{ - pixel_x = -32 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/ai_monitored/turret_protected/ai_upload) -"caW" = ( -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/ai_monitored/turret_protected/ai_upload) -"caX" = ( -/turf/open/floor/plasteel/circuit/gcircuit, -/area/ai_monitored/turret_protected/ai_upload) -"caY" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHEAST)"; - icon_state = "intact"; - dir = 5 - }, -/turf/open/floor/plasteel/circuit/gcircuit, -/area/ai_monitored/turret_protected/ai_upload) -"caZ" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/ai_monitored/turret_protected/ai_upload) -"cba" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/circuit/gcircuit, -/area/ai_monitored/turret_protected/ai_upload) -"cbb" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHWEST)"; - icon_state = "intact"; - dir = 10 - }, -/turf/open/floor/plasteel/circuit/gcircuit, -/area/ai_monitored/turret_protected/ai_upload) -"cbc" = ( -/obj/structure/table/reinforced, -/obj/machinery/door/window/brigdoor/westright{ - name = "Core Modules"; - req_access_txt = "20" - }, -/obj/item/weapon/aiModule/core/full/antimov{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/aiModule/supplied/oxygen, -/obj/item/weapon/aiModule/supplied/protectStation{ - pixel_x = -3; - pixel_y = -3 - }, -/obj/structure/sign/electricshock{ - pixel_x = 32 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/ai_monitored/turret_protected/ai_upload) -"cbd" = ( -/turf/open/floor/plating/warnplate, -/area/engine/engineering) -"cbe" = ( -/obj/machinery/camera/emp_proof{ - c_tag = "Containment - Fore Starboard"; - dir = 8; - icon_state = "camera"; - network = list("Singularity"); - tag = "icon-camera (WEST)" - }, -/turf/open/floor/plating, -/area/engine/engineering) -"cbf" = ( -/obj/structure/sign/vacuum, -/turf/closed/wall/r_wall, -/area/engine/engineering) -"cbg" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/obj/machinery/status_display{ - pixel_x = -32 - }, -/turf/open/floor/plasteel/warning{ - dir = 10 - }, -/area/engine/engineering) -"cbh" = ( -/turf/open/floor/plasteel/warning, -/area/engine/engineering) -"cbi" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHEAST)"; - icon_state = "intact"; - dir = 6 - }, -/turf/open/floor/plasteel/warning/corner{ - dir = 1 - }, -/area/engine/engineering) -"cbj" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral, -/area/engine/engineering) -"cbk" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/warning/corner, -/area/engine/engineering) -"cbl" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/warning, -/area/engine/engineering) -"cbm" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/warning, -/area/engine/engineering) -"cbn" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/warning{ - dir = 6 - }, -/area/engine/engineering) -"cbo" = ( -/obj/structure/cable/white, -/obj/structure/cable/white{ - tag = "icon-0-2"; - icon_state = "0-2" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/floor/plating, -/area/engine/engineering) -"cbp" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/cable{ - icon_state = "1-8" - }, -/turf/open/floor/plasteel/warning{ - dir = 10 - }, -/area/engine/engineering) -"cbq" = ( -/obj/structure/chair/office/dark, -/obj/effect/landmark/start{ - name = "Station Engineer" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/cable{ - icon_state = "1-8" - }, -/turf/open/floor/plasteel/warning, -/area/engine/engineering) -"cbr" = ( -/obj/structure/sign/electricshock{ - pixel_x = 32 - }, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = 26; - pixel_y = -26 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_Toxins = 0 - }, -/obj/structure/cable{ - icon_state = "1-8" - }, -/turf/open/floor/plasteel/warning{ - dir = 6 - }, -/area/engine/engineering) -"cbs" = ( -/obj/structure/rack, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 2; - name = "2maintenance loot spawner" - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cbt" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/neutral, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cbu" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cbv" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/neutral/side{ - dir = 8 - }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cbw" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cbx" = ( -/obj/machinery/light{ - dir = 8 - }, -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/obj/structure/sign/kiddieplaque{ - desc = "A long list of rules to be followed when in the library, extolling the virtues of being quiet at all times and threatening those who would dare eat hot food inside."; - name = "Library Rules Sign"; - pixel_x = -32; - pixel_y = 0 - }, -/turf/open/floor/wood, -/area/library) -"cby" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/wood, -/area/library) -"cbz" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plasteel/grimy, -/area/library) -"cbA" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/obj/machinery/light/small{ - dir = 4 - }, -/turf/open/floor/wood, -/area/library) -"cbB" = ( -/obj/structure/sign/nosmoking_2, -/turf/closed/wall, -/area/library) -"cbC" = ( -/obj/machinery/door/morgue{ - name = "Private Study" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/library) -"cbD" = ( -/obj/structure/sign/kiddieplaque{ - desc = "A long list of rules to be followed when in the library, extolling the virtues of being quiet at all times and threatening those who would dare eat hot food inside."; - name = "Library Rules Sign"; - pixel_x = -32; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral/corner{ - dir = 8 - }, -/area/hallway/primary/central) -"cbE" = ( -/obj/structure/sign/electricshock, -/turf/closed/wall/r_wall, -/area/crew_quarters/heads) -"cbF" = ( -/obj/machinery/computer/cargo/request, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/crew_quarters/heads) -"cbG" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/heads) -"cbH" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/heads) -"cbI" = ( -/obj/structure/table/wood, -/obj/machinery/light{ - dir = 1 - }, -/obj/item/weapon/storage/lockbox/loyalty, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/wood, -/area/crew_quarters/heads) -"cbJ" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/vault{ - dir = 10 - }, -/area/tcommsat/server) -"cbK" = ( -/turf/open/floor/plasteel/vault{ - dir = 10 - }, -/area/tcommsat/server) -"cbL" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/vault, -/area/tcommsat/server) -"cbM" = ( -/obj/machinery/ntnet_relay, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/circuit/gcircuit, -/area/tcommsat/server) -"cbN" = ( -/turf/open/floor/plasteel/vault{ - dir = 6 - }, -/area/tcommsat/server) -"cbO" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/vault{ - dir = 6 - }, -/area/tcommsat/server) -"cbP" = ( -/obj/machinery/camera{ - c_tag = "Telecomms - Chamber Starboard"; - dir = 8; - name = "telecomms camera"; - network = list("SS13","tcomm") - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/tcommsat/server) -"cbQ" = ( -/obj/structure/table/wood, -/obj/item/device/radio/intercom{ - dir = 8; - freerange = 1; - name = "Captain's Intercom"; - pixel_x = -26 - }, -/obj/item/weapon/reagent_containers/food/drinks/flask/gold, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHEAST)"; - icon_state = "intact"; - dir = 5 - }, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/captain{ - name = "\improper Captain's Quarters" - }) -"cbR" = ( -/obj/structure/table/wood, -/obj/machinery/computer/security/wooden_tv, -/obj/machinery/light/small, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/captain{ - name = "\improper Captain's Quarters" - }) -"cbS" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-18"; - layer = 4.1 - }, -/obj/machinery/airalarm{ - dir = 1; - icon_state = "alarm0"; - pixel_y = -22 - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/open/floor/wood, -/area/crew_quarters/captain{ - name = "\improper Captain's Quarters" - }) -"cbT" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/wood, -/area/crew_quarters/captain{ - name = "\improper Captain's Quarters" - }) -"cbU" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1 - }, -/obj/machinery/firealarm{ - dir = 1; - pixel_x = 0; - pixel_y = -26 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHWEST)"; - icon_state = "intact"; - dir = 10 - }, -/obj/machinery/camera{ - c_tag = "Bridge - Captain's Quarters"; - dir = 1; - name = "command camera" - }, -/turf/open/floor/wood, -/area/crew_quarters/captain{ - name = "\improper Captain's Quarters" - }) -"cbV" = ( -/obj/structure/table/wood, -/obj/machinery/recharger, -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/machinery/power/apc{ - cell_type = 10000; - dir = 2; - name = "Captain's Quarters APC"; - pixel_y = -24 - }, -/obj/structure/cable/white, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/captain{ - name = "\improper Captain's Quarters" - }) -"cbW" = ( -/obj/structure/filingcabinet/security, -/turf/open/floor/carpet, -/area/crew_quarters/captain{ - name = "\improper Captain's Quarters" - }) -"cbX" = ( -/obj/structure/dresser, -/turf/open/floor/carpet, -/area/crew_quarters/captain{ - name = "\improper Captain's Quarters" - }) -"cbY" = ( -/obj/structure/table, -/obj/machinery/ai_status_display{ - pixel_x = -32 - }, -/obj/item/weapon/storage/box/donkpockets, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/courtroom) -"cbZ" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/courtroom) -"cca" = ( -/obj/structure/chair{ - dir = 4 - }, -/obj/effect/landmark/start{ - name = "Assistant" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/courtroom) -"ccb" = ( -/obj/structure/chair{ - dir = 4 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/courtroom) -"ccc" = ( -/obj/structure/table/wood, -/obj/item/weapon/folder/red, -/obj/item/weapon/pen, -/turf/open/floor/plasteel/neutral/side{ - dir = 9 - }, -/area/crew_quarters/courtroom) -"ccd" = ( -/obj/structure/table/wood, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = 0; - pixel_y = 0 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 1 - }, -/area/crew_quarters/courtroom) -"cce" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 1 - }, -/area/crew_quarters/courtroom) -"ccf" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHEAST)"; - icon_state = "intact"; - dir = 6 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 1 - }, -/area/crew_quarters/courtroom) -"ccg" = ( -/obj/structure/table/wood, -/obj/item/weapon/folder/blue, -/obj/item/weapon/pen, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/red/side{ - dir = 8 - }, -/area/crew_quarters/courtroom) -"cch" = ( -/obj/structure/chair{ - dir = 8; - name = "Judge" - }, -/obj/machinery/newscaster{ - pixel_x = 32 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/courtroom) -"cci" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/lawoffice) -"ccj" = ( -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/newscaster{ - pixel_x = -32 - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/wood, -/area/lawoffice) -"cck" = ( -/obj/structure/table/wood, -/obj/item/weapon/folder/yellow, -/obj/item/clothing/glasses/sunglasses/big{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/clothing/glasses/sunglasses, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/grimy, -/area/lawoffice) -"ccl" = ( -/obj/structure/chair/office/dark{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/plasteel/grimy, -/area/lawoffice) -"ccm" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/grimy, -/area/lawoffice) -"ccn" = ( -/obj/structure/disposalpipe/trunk{ - dir = 8 - }, -/obj/machinery/disposal/bin, -/turf/open/floor/wood, -/area/lawoffice) -"cco" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/table/reinforced, -/obj/machinery/newscaster/security_unit{ - pixel_x = -32 - }, -/obj/item/weapon/clipboard, -/obj/item/toy/figure/secofficer, -/turf/open/floor/plasteel/red/side{ - dir = 8 - }, -/area/security/brig) -"ccp" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHEAST)"; - icon_state = "intact"; - dir = 5 - }, -/turf/open/floor/plasteel/neutral, -/area/security/brig) -"ccq" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/filingcabinet/chestdrawer, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/red/side{ - dir = 4 - }, -/area/security/brig) -"ccr" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/red/corner{ - dir = 1 - }, -/area/security/brig) -"ccs" = ( -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/open/floor/plasteel, -/area/security/brig) -"cct" = ( -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/door/window/brigdoor/westright{ - name = "Holding Cell"; - req_access_txt = "63" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/security/brig) -"ccu" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plasteel, -/area/security/brig) -"ccv" = ( -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/turf/open/floor/plasteel/neutral, -/area/security/brig) -"ccw" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/red/corner, -/area/security/brig) -"ccx" = ( -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/security/brig) -"ccy" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/restraints/handcuffs, -/obj/item/device/assembly/flash/handheld, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/red/side{ - dir = 8 - }, -/area/security/brig) -"ccz" = ( -/obj/structure/extinguisher_cabinet{ - pixel_x = -32; - pixel_y = -64 - }, -/obj/effect/landmark/start{ - name = "Security Officer" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/security/brig) -"ccA" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/effect/landmark/start{ - name = "Security Officer" - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/neutral, -/area/security/brig) -"ccB" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/effect/landmark/start{ - name = "Security Officer" - }, -/turf/open/floor/plasteel/neutral, -/area/security/brig) -"ccC" = ( -/obj/machinery/holopad, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/bot, -/area/security/brig) -"ccD" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/effect/landmark/start{ - name = "Security Officer" - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/turf/open/floor/plasteel/neutral, -/area/security/brig) -"ccE" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/neutral, -/area/security/brig) -"ccF" = ( -/obj/machinery/newscaster/security_unit{ - pixel_x = 32; - pixel_y = -32 - }, -/obj/structure/reagent_dispensers/peppertank{ - pixel_x = 32; - pixel_y = 32 - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/red/side{ - dir = 4 - }, -/area/security/brig) -"ccG" = ( -/obj/structure/window/reinforced{ - dir = 1; - layer = 2.9 - }, -/obj/structure/window/reinforced{ - dir = 1; - layer = 2.9 - }, -/obj/structure/window/reinforced{ - dir = 4; - pixel_x = 0 - }, -/turf/open/space, -/area/space) -"ccH" = ( -/obj/structure/cable/white{ - tag = "icon-0-2"; - icon_state = "0-2" - }, -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor/preopen{ - id = "aiuploadwindow"; - name = "AI Upload Lockdown Door" - }, -/turf/open/floor/plating, -/area/ai_monitored/turret_protected/ai_upload) -"ccI" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/table/reinforced, -/obj/machinery/door/window/brigdoor/westright{ - dir = 4; - name = "Core Modules"; - req_access_txt = "20" - }, -/obj/structure/window/reinforced, -/obj/item/weapon/aiModule/core/freeformcore{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/aiModule/core/full/custom, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/ai_monitored/turret_protected/ai_upload) -"ccJ" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/ai_monitored/turret_protected/ai_upload) -"ccK" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHEAST)"; - icon_state = "intact"; - dir = 6 - }, -/turf/open/floor/plasteel/circuit/gcircuit, -/area/ai_monitored/turret_protected/ai_upload) -"ccL" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/ai_monitored/turret_protected/ai_upload) -"ccM" = ( -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/holopad, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/ai_monitored/turret_protected/ai_upload) -"ccN" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHWEST)"; - icon_state = "intact"; - dir = 9 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/ai_monitored/turret_protected/ai_upload) -"ccO" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/circuit/gcircuit, -/area/ai_monitored/turret_protected/ai_upload) -"ccP" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/table/reinforced, -/obj/machinery/door/window/brigdoor{ - dir = 8; - name = "Core Modules"; - req_access_txt = "20" - }, -/obj/structure/window/reinforced, -/obj/item/weapon/aiModule/core/full/tyrant{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/aiModule/zeroth/oneHuman, -/obj/item/weapon/aiModule/reset/purge{ - pixel_x = -3; - pixel_y = -3 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/ai_monitored/turret_protected/ai_upload) -"ccQ" = ( -/obj/structure/cable/white{ - tag = "icon-0-2"; - icon_state = "0-2" - }, -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor/preopen{ - id = "aiuploadwindow"; - name = "AI Upload Lockdown Door" - }, -/turf/open/floor/plating, -/area/ai_monitored/turret_protected/ai_upload) -"ccR" = ( -/obj/structure/window/reinforced{ - dir = 1; - layer = 2.9 - }, -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/structure/window/reinforced{ - dir = 8 - }, -/turf/open/space, -/area/space) -"ccS" = ( -/obj/structure/window/reinforced{ - dir = 1; - layer = 2.9 - }, -/obj/structure/window/reinforced{ - dir = 1; - layer = 2.9 - }, -/turf/open/space, -/area/space) -"ccT" = ( -/obj/structure/reagent_dispensers/fueltank, -/turf/open/floor/plating/warnplate, -/area/engine/engineering) -"ccU" = ( -/obj/machinery/door/poddoor/shutters/preopen{ - id = "engpa"; - name = "Engineering Chamber Shutters" - }, -/turf/open/floor/plating/warnplate{ - dir = 8 - }, -/area/engine/engineering) -"ccV" = ( -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/engine/engineering) -"ccW" = ( -/turf/open/floor/plasteel/yellow/side{ - dir = 1; - icon_state = "yellow"; - initial_gas_mix = "o2=22;n2=82;TEMP=293.15"; - tag = "icon-yellow (NORTH)" - }, -/area/engine/engineering) -"ccX" = ( -/turf/open/floor/plasteel/yellow/side{ - dir = 5 - }, -/area/engine/engineering) -"ccY" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/engine/engineering) -"ccZ" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/yellow, -/area/engine/engineering) -"cda" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/engine/engineering) -"cdb" = ( -/turf/open/floor/plasteel/yellow/side{ - dir = 9; - initial_gas_mix = "o2=22;n2=82;TEMP=293.15"; - tag = "icon-yellow (NORTHWEST)" - }, -/area/engine/engineering) -"cdc" = ( -/obj/machinery/vending/engivend, -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/turf/open/floor/plasteel/delivery, -/area/engine/engineering) -"cdd" = ( -/obj/structure/cable/white, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plating, -/area/engine/engineering) -"cde" = ( -/obj/machinery/computer/monitor{ - name = "Engineering Power Monitoring Console" - }, -/obj/machinery/firealarm{ - dir = 8; - pixel_x = -24; - pixel_y = -32 - }, -/obj/machinery/status_display{ - pixel_y = -32 - }, -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/machinery/camera{ - c_tag = "Engineering - Power Monitoring"; - dir = 1; - name = "engineering camera" - }, -/turf/open/floor/plasteel/vault, -/area/engine/engineering) -"cdf" = ( -/obj/machinery/light, -/obj/machinery/computer/station_alert, -/turf/open/floor/plasteel/vault, -/area/engine/engineering) -"cdg" = ( -/obj/machinery/computer/atmos_alert, -/obj/structure/sign/nosmoking_1{ - pixel_x = 28; - pixel_y = -28 - }, -/turf/open/floor/plasteel/vault, -/area/engine/engineering) -"cdh" = ( -/obj/structure/rack, -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cdi" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cdj" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cdk" = ( -/obj/effect/landmark{ - name = "blobstart" - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 8 - }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cdl" = ( -/obj/structure/table/wood, -/obj/item/weapon/paper_bin, -/obj/item/weapon/pen, -/obj/machinery/airalarm{ - dir = 4; - icon_state = "alarm0"; - pixel_x = -22 - }, -/turf/open/floor/wood, -/area/library) -"cdm" = ( -/obj/structure/chair/office/dark, -/turf/open/floor/wood, -/area/library) -"cdn" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/turf/open/floor/wood, -/area/library) -"cdo" = ( -/obj/machinery/bookbinder, -/turf/open/floor/wood, -/area/library) -"cdp" = ( -/obj/machinery/light{ - dir = 1 - }, -/obj/machinery/newscaster{ - pixel_y = 32 - }, -/obj/structure/bookcase/random, -/turf/open/floor/wood, -/area/library) -"cdq" = ( -/obj/structure/chair/comfy/brown, -/obj/effect/landmark/start{ - name = "Assistant" - }, -/turf/open/floor/wood, -/area/library) -"cdr" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/wood, -/area/library) -"cds" = ( -/obj/machinery/photocopier, -/obj/structure/extinguisher_cabinet{ - pixel_y = 32 - }, -/turf/open/floor/wood, -/area/library) -"cdt" = ( -/obj/machinery/light{ - dir = 1 - }, -/obj/machinery/newscaster{ - pixel_y = 32 - }, -/obj/structure/bookcase/manuals/research_and_development, -/obj/machinery/camera{ - c_tag = "Library"; - dir = 2; - name = "library camera" - }, -/turf/open/floor/wood, -/area/library) -"cdu" = ( -/obj/structure/chair/comfy/brown, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_y = 26 - }, -/turf/open/floor/wood, -/area/library) -"cdv" = ( -/obj/machinery/vending/coffee, -/turf/open/floor/wood, -/area/library) -"cdw" = ( -/obj/machinery/door/poddoor/shutters/preopen{ - id = "hopline"; - name = "Queue Shutters" - }, -/turf/open/floor/plasteel/loadingarea{ - dir = 4 - }, -/area/hallway/primary/central) -"cdx" = ( -/obj/machinery/computer/security/mining, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/crew_quarters/heads) -"cdy" = ( -/obj/structure/chair/office/dark, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/effect/landmark/start{ - name = "Head of Personnel" - }, -/turf/open/floor/wood, -/area/crew_quarters/heads) -"cdz" = ( -/obj/structure/table/wood, -/obj/machinery/recharger, -/obj/machinery/newscaster{ - pixel_x = 32 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/wood, -/area/crew_quarters/heads) -"cdA" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/circuit/gcircuit{ - name = "Mainframe Base"; - initial_gas_mix = "n2=100;TEMP=80" - }, -/area/tcommsat/server) -"cdB" = ( -/obj/machinery/telecomms/bus/preset_four, -/turf/open/floor/plasteel/brown{ - dir = 9; - initial_gas_mix = "n2=100;TEMP=80"; - tag = "SERVER" - }, -/area/tcommsat/server) -"cdC" = ( -/obj/machinery/telecomms/processor/preset_four, -/turf/open/floor/plasteel/green/side{ - dir = 5; - initial_gas_mix = "n2=100;TEMP=80"; - tag = "SERVER" - }, -/area/tcommsat/server) -"cdD" = ( -/obj/machinery/light/small, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/vault{ - tag = "icon-vault (NORTHEAST)"; - dir = 5 - }, -/area/tcommsat/server) -"cdE" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/vault{ - tag = "icon-vault (NORTHEAST)"; - dir = 5 - }, -/area/tcommsat/server) -"cdF" = ( -/obj/machinery/light/small, -/turf/open/floor/plasteel/vault{ - tag = "icon-vault (NORTHEAST)"; - dir = 5 - }, -/area/tcommsat/server) -"cdG" = ( -/obj/machinery/telecomms/processor/preset_two, -/turf/open/floor/plasteel/yellow/side{ - dir = 9; - initial_gas_mix = "n2=100;TEMP=80"; - tag = "icon-yellow (NORTHWEST)" - }, -/area/tcommsat/server) -"cdH" = ( -/obj/machinery/telecomms/bus/preset_two, -/turf/open/floor/plasteel/neutral/side{ - dir = 5; - initial_gas_mix = "n2=100;TEMP=80"; - tag = "icon-neutral (NORTHEAST)" - }, -/area/tcommsat/server) -"cdI" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/command{ - name = "Emergency Escape"; - req_access = null; - req_access_txt = "20" - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (EAST)"; - icon_state = "plasteel_warn_side"; - dir = 4 - }, -/area/crew_quarters/captain{ - name = "\improper Captain's Quarters" - }) -"cdJ" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment, -/obj/machinery/firealarm{ - dir = 4; - icon_state = "fire0"; - pixel_x = 24; - pixel_y = 0; - tag = "icon-fire0 (EAST)" - }, -/turf/open/floor/plasteel/neutral/corner, -/area/hallway/primary/central) -"cdK" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/courtroom) -"cdL" = ( -/obj/structure/chair{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/courtroom) -"cdM" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/crew_quarters/courtroom) -"cdN" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 8 - }, -/area/crew_quarters/courtroom) -"cdO" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/courtroom) -"cdP" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/courtroom) -"cdQ" = ( -/obj/structure/table/wood, -/obj/item/weapon/gavelblock, -/obj/item/weapon/gavelhammer, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/blue/side{ - dir = 9 - }, -/area/crew_quarters/courtroom) -"cdR" = ( -/obj/structure/table/wood, -/obj/item/weapon/paper_bin, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHWEST)"; - icon_state = "intact"; - dir = 9 - }, -/turf/open/floor/plasteel/blue/side{ - dir = 1 - }, -/area/crew_quarters/courtroom) -"cdS" = ( -/turf/open/floor/plasteel/blue/side{ - dir = 1 - }, -/area/crew_quarters/courtroom) -"cdT" = ( -/obj/structure/chair/office/dark{ - dir = 4 - }, -/obj/structure/cable/white, -/obj/machinery/power/apc{ - dir = 8; - name = "Law Office APC"; - pixel_x = -26; - pixel_y = 3 - }, -/obj/effect/landmark/start{ - name = "Lawyer" - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/wood, -/area/lawoffice) -"cdU" = ( -/obj/structure/table/wood, -/obj/machinery/requests_console{ - department = "Law Office"; - departmentType = 0; - name = "'Law Office RC"; - pixel_x = 0; - pixel_y = -64 - }, -/obj/item/weapon/folder/blue{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/folder/red, -/obj/item/weapon/stamp/law, -/turf/open/floor/plasteel/grimy, -/area/lawoffice) -"cdV" = ( -/obj/structure/chair/office/dark{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/grimy, -/area/lawoffice) -"cdW" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/grimy, -/area/lawoffice) -"cdX" = ( -/obj/machinery/photocopier, -/obj/machinery/status_display{ - pixel_x = 32 - }, -/obj/machinery/camera{ - c_tag = "Lawyer's Office"; - dir = 8; - name = "security camera" - }, -/turf/open/floor/wood, -/area/lawoffice) -"cdY" = ( -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/structure/table/reinforced, -/obj/item/weapon/paper_bin, -/obj/machinery/light/small{ - dir = 8 - }, -/obj/item/weapon/pen, -/obj/structure/sign/poster{ - icon_state = "poster29_legit"; - pixel_x = 0; - pixel_y = -32; - tag = "icon-poster29_legit" - }, -/turf/open/floor/plasteel/red/side{ - dir = 10 - }, -/area/security/brig) -"cdZ" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/sign/nanotrasen{ - pixel_y = -32 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_Toxins = 0 - }, -/obj/machinery/camera{ - c_tag = "Security - Brig Desk"; - dir = 1; - name = "security camera" - }, -/turf/open/floor/plasteel/red/side, -/area/security/brig) -"cea" = ( -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/extinguisher_cabinet{ - pixel_y = -26 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/red/side{ - dir = 6 - }, -/area/security/brig) -"ceb" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass_security{ - name = "Security Desk"; - req_access_txt = "63" - }, -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/red/side{ - dir = 8 - }, -/area/security/brig) -"cec" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/red/corner, -/area/security/brig) -"ced" = ( -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/structure/chair{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/red/side, -/area/security/brig) -"cee" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/red/side, -/area/security/brig) -"cef" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/red/side, -/area/security/brig) -"ceg" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/red/side{ - dir = 6 - }, -/area/security/brig) -"ceh" = ( -/obj/structure/table/reinforced, -/obj/machinery/airalarm{ - dir = 4; - locked = 0; - pixel_x = -23; - pixel_y = 0 - }, -/obj/item/device/radio{ - pixel_x = 5; - pixel_y = 5 - }, -/obj/item/device/radio{ - pixel_x = -5; - pixel_y = 5 - }, -/obj/item/device/radio, -/turf/open/floor/plasteel/red/side{ - dir = 10 - }, -/area/security/brig) -"cei" = ( -/obj/structure/closet/secure_closet/security/sec, -/turf/open/floor/plasteel/red/side{ - dir = 6 - }, -/area/security/brig) -"cej" = ( -/obj/structure/closet/wardrobe/red, -/obj/structure/sign/poster{ - icon_state = "poster16_legit"; - pixel_y = -32; - tag = "icon-poster16_legit" - }, -/obj/item/clothing/under/rank/security/grey, -/obj/item/clothing/under/rank/security/grey, -/obj/item/clothing/under/rank/security/grey, -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/item/weapon/storage/backpack/satchel/sec, -/turf/open/floor/plasteel/red, -/area/security/brig) -"cek" = ( -/obj/structure/closet/secure_closet/security/sec, -/obj/machinery/status_display{ - pixel_y = -32 - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/red/side{ - dir = 10 - }, -/area/security/brig) -"cel" = ( -/obj/structure/table/reinforced, -/obj/machinery/recharger, -/obj/machinery/light, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/red/side, -/area/security/brig) -"cem" = ( -/obj/machinery/vending/security, -/obj/structure/sign/nanotrasen{ - pixel_y = -32 - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/red/side, -/area/security/brig) -"cen" = ( -/obj/structure/table/reinforced, -/obj/machinery/recharger, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/turf/open/floor/plasteel/red/side, -/area/security/brig) -"ceo" = ( -/obj/structure/closet/secure_closet/security/sec, -/obj/machinery/ai_status_display{ - pixel_y = -32 - }, -/turf/open/floor/plasteel/red/side{ - dir = 6 - }, -/area/security/brig) -"cep" = ( -/obj/structure/cable/white, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor/preopen{ - id = "aiuploadwindow"; - name = "AI Upload Lockdown Door" - }, -/turf/open/floor/plating, -/area/ai_monitored/turret_protected/ai_upload) -"ceq" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/ai_monitored/turret_protected/ai_upload) -"cer" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plasteel/circuit/gcircuit, -/area/ai_monitored/turret_protected/ai_upload) -"ces" = ( -/obj/machinery/computer/upload/ai, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/ai_monitored/turret_protected/ai_upload) -"cet" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/ai_monitored/turret_protected/ai_upload) -"ceu" = ( -/obj/machinery/computer/upload/borg, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/ai_monitored/turret_protected/ai_upload) -"cev" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/plasteel/circuit/gcircuit, -/area/ai_monitored/turret_protected/ai_upload) -"cew" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/ai_monitored/turret_protected/ai_upload) -"cex" = ( -/obj/structure/lattice, -/obj/machinery/camera/emp_proof{ - c_tag = "Containment - Fore Port"; - dir = 4; - icon_state = "camera"; - network = list("Singularity"); - tag = "icon-camera (EAST)" - }, -/turf/open/space, -/area/space) -"cey" = ( -/obj/structure/lattice/catwalk, -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/turf/open/space, -/area/space) -"cez" = ( -/obj/structure/lattice/catwalk, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/space, -/area/space) -"ceA" = ( -/obj/structure/lattice/catwalk, -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/space, -/area/space) -"ceB" = ( -/obj/structure/lattice/catwalk, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/turf/open/space, -/area/space) -"ceC" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/engine/engineering) -"ceD" = ( -/obj/machinery/power/rad_collector{ - anchored = 1 - }, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/turf/open/floor/plating/warnplate{ - dir = 4; - luminosity = 2; - initial_gas_mix = "o2=0.01;n2=0.01"; - temperature = 2.7 - }, -/area/engine/engineering) -"ceE" = ( -/obj/machinery/door/poddoor/shutters/preopen{ - id = "engpa"; - name = "Engineering Chamber Shutters" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/turf/open/floor/plating/warnplate{ - dir = 8 - }, -/area/engine/engineering) -"ceF" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/engine/engineering) -"ceG" = ( -/obj/effect/landmark/start{ - name = "Station Engineer" - }, -/turf/open/floor/plasteel/neutral, -/area/engine/engineering) -"ceH" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/book/manual/wiki/engineering_guide{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/book/manual/engineering_particle_accelerator, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/delivery, -/area/engine/engineering) -"ceI" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/book/manual/wiki/engineering_hacking{ - pixel_x = 6; - pixel_y = 6 - }, -/obj/item/weapon/book/manual/wiki/engineering_construction{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/book/manual/engineering_singularity_safety, -/turf/open/floor/plasteel/delivery, -/area/engine/engineering) -"ceJ" = ( -/obj/effect/landmark/start{ - name = "Station Engineer" - }, -/turf/open/floor/plasteel/yellow/side{ - dir = 4 - }, -/area/engine/engineering) -"ceK" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral, -/area/engine/engineering) -"ceL" = ( -/turf/open/floor/plasteel/yellow/side{ - dir = 8 - }, -/area/engine/engineering) -"ceM" = ( -/turf/open/floor/plasteel/neutral, -/area/engine/engineering) -"ceN" = ( -/obj/machinery/vending/tool, -/turf/open/floor/plasteel/delivery, -/area/engine/engineering) -"ceO" = ( -/obj/structure/girder, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"ceP" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"ceQ" = ( -/obj/structure/table/wood, -/obj/item/device/flashlight/lamp, -/obj/machinery/newscaster{ - pixel_x = -32 - }, -/turf/open/floor/wood, -/area/library) -"ceR" = ( -/obj/structure/table/wood, -/obj/item/weapon/folder, -/obj/item/weapon/pen, -/turf/open/floor/wood, -/area/library) -"ceS" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/grimy, -/area/library) -"ceT" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/open/floor/plasteel/grimy, -/area/library) -"ceU" = ( -/obj/machinery/door/airlock/glass{ - name = "Library Access" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/library) -"ceV" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral/corner{ - dir = 8 - }, -/area/hallway/primary/central) -"ceW" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/obj/machinery/camera{ - c_tag = "Central Hallway - Head of Personnel Line"; - dir = 8; - name = "hallway camera" - }, -/turf/open/floor/plasteel/neutral/corner, -/area/hallway/primary/central) -"ceX" = ( -/obj/machinery/vending/cola, -/obj/structure/sign/poster{ - icon_state = "poster8_legit"; - pixel_y = -32; - tag = "icon-poster8_legit" - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/hallway/primary/central) -"ceY" = ( -/obj/structure/table/wood, -/obj/machinery/keycard_auth{ - pixel_x = -26 - }, -/obj/item/device/flashlight/lamp, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/heads) -"ceZ" = ( -/obj/structure/table/wood, -/obj/machinery/newscaster{ - pixel_x = -32; - pixel_y = -32 - }, -/obj/item/weapon/folder/blue, -/obj/item/weapon/pen, -/turf/open/floor/wood, -/area/crew_quarters/heads) -"cfa" = ( -/obj/structure/table/wood, -/obj/item/weapon/paper_bin, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/heads) -"cfb" = ( -/obj/machinery/holopad, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/heads) -"cfc" = ( -/obj/machinery/photocopier, -/obj/structure/sign/poster{ - icon_state = "poster17_legit"; - pixel_x = 32; - pixel_y = 0; - tag = "icon-poster17_legit" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/wood, -/area/crew_quarters/heads) -"cfd" = ( -/obj/machinery/telecomms/server/presets/supply, -/turf/open/floor/plasteel/brown{ - dir = 10; - initial_gas_mix = "n2=100;TEMP=80"; - tag = "SERVER" - }, -/area/tcommsat/server) -"cfe" = ( -/obj/machinery/telecomms/server/presets/service, -/turf/open/floor/plasteel/green/side{ - dir = 6; - initial_gas_mix = "n2=100;TEMP=80"; - tag = "SERVER" - }, -/area/tcommsat/server) -"cff" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/door/airlock/command{ - cyclelinkeddir = 2; - name = "Telecoms Server Room"; - req_access = null; - req_access_txt = "61" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/tcommsat/server) -"cfg" = ( -/obj/machinery/telecomms/server/presets/engineering, -/turf/open/floor/plasteel/yellow/side{ - dir = 10; - initial_gas_mix = "n2=100;TEMP=80"; - tag = "icon-yellow (SOUTHWEST)" - }, -/area/tcommsat/server) -"cfh" = ( -/obj/machinery/telecomms/server/presets/common, -/turf/open/floor/plasteel/neutral/side{ - dir = 6; - initial_gas_mix = "n2=100;TEMP=80"; - tag = "icon-neutral (SOUTHEAST)" - }, -/area/tcommsat/server) -"cfi" = ( -/turf/closed/wall/r_wall, -/area/teleporter{ - name = "\improper Teleporter Room" - }) -"cfj" = ( -/obj/machinery/shieldwallgen, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/delivery, -/area/teleporter{ - name = "\improper Teleporter Room" - }) -"cfk" = ( -/turf/closed/wall, -/area/teleporter{ - name = "\improper Teleporter Room" - }) -"cfl" = ( -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/machinery/camera/motion{ - c_tag = "Bridge - Captain's Emergency Escape"; - dir = 4; - name = "command camera"; - network = list("SS13") - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 5 - }, -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/blue/side{ - dir = 9 - }, -/area/teleporter{ - name = "\improper Teleporter Room" - }) -"cfm" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plating, -/area/teleporter{ - name = "\improper Teleporter Room" - }) -"cfn" = ( -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHWEST)"; - icon_state = "intact"; - dir = 10 - }, -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/turf/open/floor/plating, -/area/teleporter{ - name = "\improper Teleporter Room" - }) -"cfo" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/teleporter{ - name = "\improper Teleporter Room" - }) -"cfp" = ( -/obj/structure/closet/emcloset, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/blue/corner{ - dir = 4 - }, -/area/teleporter{ - name = "\improper Teleporter Room" - }) -"cfq" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral/corner, -/area/hallway/primary/central) -"cfr" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/tinted/fulltile, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/crew_quarters/courtroom) -"cfs" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/courtroom) -"cft" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/courtroom) -"cfu" = ( -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/courtroom) -"cfv" = ( -/obj/effect/landmark{ - name = "lightsout" - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/courtroom) -"cfw" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass{ - name = "Courtroom"; - req_access_txt = "42" - }, -/turf/open/floor/plasteel/bot, -/area/crew_quarters/courtroom) -"cfx" = ( -/obj/item/device/radio/beacon, -/turf/open/floor/plasteel/neutral/side{ - dir = 8 - }, -/area/crew_quarters/courtroom) -"cfy" = ( -/obj/machinery/holopad, -/obj/effect/landmark/start{ - name = "Lawyer" - }, -/turf/open/floor/plasteel/bot, -/area/crew_quarters/courtroom) -"cfz" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/courtroom) -"cfA" = ( -/obj/structure/table/wood, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = 0; - pixel_y = -32 - }, -/obj/item/weapon/folder/yellow{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/folder/blue, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/blue/side{ - dir = 8 - }, -/area/crew_quarters/courtroom) -"cfB" = ( -/obj/structure/chair{ - dir = 8; - name = "Judge" - }, -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/courtroom) -"cfC" = ( -/obj/machinery/status_display{ - pixel_x = 32 - }, -/obj/machinery/camera{ - c_tag = "Courtroom - Center"; - dir = 8; - name = "security camera" - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/crew_quarters/courtroom) -"cfD" = ( -/obj/structure/table/wood, -/obj/item/device/flashlight/lamp, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = -26; - pixel_y = 0 - }, -/turf/open/floor/wood, -/area/lawoffice) -"cfE" = ( -/obj/structure/table/wood, -/obj/item/weapon/paper_bin, -/turf/open/floor/wood, -/area/lawoffice) -"cfF" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/obj/structure/sign/poster{ - icon_state = "poster22_legit"; - pixel_y = -32; - tag = "icon-poster22_legit" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/wood, -/area/lawoffice) -"cfG" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/wood, -/area/lawoffice) -"cfH" = ( -/obj/structure/rack, -/obj/item/weapon/storage/briefcase{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/weapon/storage/secure/briefcase, -/turf/open/floor/wood, -/area/lawoffice) -"cfI" = ( -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHEAST)"; - icon_state = "intact"; - dir = 5 - }, -/turf/open/floor/plating, -/area/security/brig) -"cfJ" = ( -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/security{ - name = "Shooting Range"; - req_access_txt = "63" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHWEST)"; - icon_state = "intact"; - dir = 10 - }, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (EAST)"; - icon_state = "plasteel_warn_side"; - dir = 4 - }, -/area/security/brig) -"cfK" = ( -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plating, -/area/security/brig) -"cfL" = ( -/obj/structure/window/reinforced{ - dir = 4; - pixel_x = 0 - }, -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/construction/hallway{ - name = "\improper MiniSat Exterior" - }) -"cfM" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/aiModule/reset, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = -26; - pixel_y = 0 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/ai_monitored/turret_protected/ai_upload) -"cfN" = ( -/obj/machinery/status_display{ - pixel_x = -32; - pixel_y = -32 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/ai_monitored/turret_protected/ai_upload) -"cfO" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/circuit/gcircuit, -/area/ai_monitored/turret_protected/ai_upload) -"cfP" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/ai_slipper{ - icon_state = "motion0"; - uses = 10 - }, -/turf/open/floor/plasteel/circuit/gcircuit, -/area/ai_monitored/turret_protected/ai_upload) -"cfQ" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/circuit/gcircuit, -/area/ai_monitored/turret_protected/ai_upload) -"cfR" = ( -/obj/machinery/status_display{ - pixel_x = 32; - pixel_y = -32 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/ai_monitored/turret_protected/ai_upload) -"cfS" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/aiModule/supplied/quarantine, -/obj/item/device/radio/intercom{ - broadcasting = 1; - frequency = 1447; - listening = 0; - name = "AI Intercom"; - pixel_x = 28; - pixel_y = 0 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/ai_monitored/turret_protected/ai_upload) -"cfT" = ( -/obj/structure/lattice/catwalk, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/space, -/area/space) -"cfU" = ( -/obj/machinery/power/grounding_rod, -/turf/open/floor/plating/warnplate/corner{ - dir = 4 - }, -/area/space) -"cfV" = ( -/turf/open/floor/plating/warnplate{ - dir = 1 - }, -/area/space) -"cfW" = ( -/obj/machinery/power/tesla_coil, -/obj/structure/cable, -/turf/open/floor/plating/warnplate{ - dir = 1 - }, -/area/space) -"cfX" = ( -/obj/machinery/power/grounding_rod, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plating/warnplate/corner{ - dir = 8 - }, -/area/space) -"cfY" = ( -/obj/effect/decal/cleanable/oil, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "engpa"; - name = "Engineering Chamber Shutters" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4"; - tag = "" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/turf/open/floor/plating/warnplate{ - dir = 8 - }, -/area/engine/engineering) -"cfZ" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/engine/engineering) -"cga" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/turf/open/floor/plasteel/neutral, -/area/engine/engineering) -"cgb" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/neutral, -/area/engine/engineering) -"cgc" = ( -/turf/open/floor/plasteel/yellow/side{ - dir = 4 - }, -/area/engine/engineering) -"cgd" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/engine/engineering) -"cge" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/yellow/side{ - dir = 8 - }, -/area/engine/engineering) -"cgf" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/effect/landmark/start{ - name = "Station Engineer" - }, -/turf/open/floor/plasteel/neutral, -/area/engine/engineering) -"cgg" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/machinery/power/apc{ - dir = 4; - name = "Engine Room APC"; - pixel_x = 26; - pixel_y = 0 - }, -/turf/open/floor/plasteel/bot, -/area/engine/engineering) -"cgh" = ( -/obj/machinery/shieldgen, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning{ - dir = 9 - }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cgi" = ( -/obj/machinery/light/small{ - dir = 1 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cgj" = ( -/obj/structure/rack, -/obj/item/weapon/crowbar/red, -/obj/item/weapon/wrench, -/obj/item/weapon/tank/internals/emergency_oxygen/engi, -/obj/effect/decal/cleanable/dirt, -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cgk" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cgl" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cgm" = ( -/obj/structure/chair/office/dark{ - dir = 8 - }, -/obj/effect/landmark/start{ - name = "Assistant" - }, -/turf/open/floor/wood, -/area/library) -"cgn" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/plasteel/grimy, -/area/library) -"cgo" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/grimy, -/area/library) -"cgp" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/grimy, -/area/library) -"cgq" = ( -/obj/effect/landmark{ - name = "lightsout" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/grimy, -/area/library) -"cgr" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plasteel/grimy, -/area/library) -"cgs" = ( -/obj/machinery/door/airlock/glass{ - name = "Library Access" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/library) -"cgt" = ( -/obj/structure/chair/office/dark{ - dir = 1 - }, -/turf/open/floor/wood, -/area/crew_quarters/heads) -"cgu" = ( -/obj/structure/chair/office/dark{ - dir = 1 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/heads) -"cgv" = ( -/obj/structure/bed/dogbed{ - anchored = 1; - desc = "Ian's bed! Looks comfy."; - name = "Ian's bed"; - pixel_y = 2 - }, -/obj/machinery/airalarm{ - dir = 8; - icon_state = "alarm0"; - pixel_x = 24 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/mob/living/simple_animal/pet/dog/corgi/Ian, -/turf/open/floor/wood, -/area/crew_quarters/heads) -"cgw" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/tcommsat/server) -"cgx" = ( -/obj/structure/sign/electricshock{ - pixel_y = -32 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/tcommsat/server) -"cgy" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/fans/tiny, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/vault{ - tag = "icon-vault (NORTHEAST)"; - dir = 5 - }, -/area/tcommsat/server) -"cgz" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall, -/area/teleporter{ - name = "\improper Teleporter Room" - }) -"cgA" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Teleporter Maintenance"; - req_access_txt = "17" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plating/warnplate/side{ - tag = "icon-plating_warn_side (WEST)"; - icon_state = "plating_warn_side"; - dir = 8 - }, -/area/teleporter{ - name = "\improper Teleporter Room" - }) -"cgB" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/obj/machinery/light{ - dir = 8 - }, -/obj/structure/sign/securearea{ - pixel_x = -32 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 8 - }, -/area/hallway/primary/central) -"cgC" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral/corner, -/area/hallway/primary/central) -"cgD" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock{ - name = "Courtroom" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/courtroom) -"cgE" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/courtroom) -"cgF" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/courtroom) -"cgG" = ( -/obj/structure/chair{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/courtroom) -"cgH" = ( -/obj/structure/chair{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/courtroom) -"cgI" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/crew_quarters/courtroom) -"cgJ" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 8 - }, -/area/crew_quarters/courtroom) -"cgK" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/courtroom) -"cgL" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/courtroom) -"cgM" = ( -/obj/structure/table/wood, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plasteel/blue/side{ - dir = 10 - }, -/area/crew_quarters/courtroom) -"cgN" = ( -/obj/structure/table/wood, -/obj/item/weapon/storage/briefcase{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/storage/secure/briefcase, -/turf/open/floor/plasteel/blue/side, -/area/crew_quarters/courtroom) -"cgO" = ( -/obj/structure/sign/nanotrasen{ - pixel_x = 32 - }, -/turf/open/floor/plasteel/blue/side, -/area/crew_quarters/courtroom) -"cgP" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall, -/area/lawoffice) -"cgQ" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Law Office Maintenance"; - req_access_txt = "38" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plating/warnplate/side{ - tag = "icon-plating_warn_side (EAST)"; - icon_state = "plating_warn_side"; - dir = 4 - }, -/area/lawoffice) -"cgR" = ( -/obj/effect/decal/cleanable/cobweb, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/neutral/corner{ - dir = 1 - }, -/area/maintenance/starboard) -"cgS" = ( -/obj/structure/closet/crate{ - icon_state = "crateopen"; - opened = 1 - }, -/obj/effect/decal/cleanable/dirt, -/obj/item/device/flashlight, -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plating, -/area/maintenance/starboard) -"cgT" = ( -/obj/structure/girder, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/maintenance/starboard) -"cgU" = ( -/obj/structure/rack, -/obj/effect/decal/cleanable/dirt, -/obj/item/weapon/crowbar/red, -/obj/item/weapon/book/manual/wiki/security_space_law, -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plating, -/area/maintenance/starboard) -"cgV" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/maintenance/starboard) -"cgW" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/red/corner{ - dir = 4 - }, -/area/maintenance/starboard) -"cgX" = ( -/turf/closed/wall, -/area/security/range) -"cgY" = ( -/obj/item/stack/rods{ - amount = 50 - }, -/obj/item/stack/sheet/glass{ - amount = 50 - }, -/obj/item/stack/sheet/metal{ - amount = 50 - }, -/obj/item/target, -/obj/item/target/syndicate, -/obj/item/target/alien, -/obj/item/target/clown, -/obj/structure/closet/crate/secure{ - desc = "A secure crate containing various materials for building a customised test-site."; - name = "Test Site Materials Crate"; - req_access_txt = "63" - }, -/obj/structure/extinguisher_cabinet{ - pixel_x = -26 - }, -/obj/machinery/firealarm{ - dir = 8; - pixel_x = -24; - pixel_y = 32 - }, -/obj/machinery/light/small{ - dir = 8 - }, -/turf/open/floor/plasteel/bot, -/area/security/range) -"cgZ" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/security/range) -"cha" = ( -/obj/structure/table/reinforced, -/obj/machinery/recharger, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/warning{ - dir = 5 - }, -/area/security/range) -"chb" = ( -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/security/range) -"chc" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating/warnplate{ - dir = 1 - }, -/area/security/range) -"chd" = ( -/obj/structure/sign/securearea{ - pixel_y = 32 - }, -/obj/machinery/light{ - dir = 1 - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/security/range) -"che" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/plating/warnplate{ - dir = 1 - }, -/area/security/range) -"chf" = ( -/turf/open/floor/plating, -/area/security/range) -"chg" = ( -/turf/open/floor/plating/warnplate{ - dir = 9 - }, -/area/security/range) -"chh" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/security/range) -"chi" = ( -/obj/machinery/light/small{ - dir = 4 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating/warnplate{ - dir = 5 - }, -/area/security/range) -"chj" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/aiModule/supplied/freeform, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/ai_monitored/turret_protected/ai_upload) -"chk" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/flasher{ - pixel_x = -26; - pixel_y = -26 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/ai_monitored/turret_protected/ai_upload) -"chl" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/circuit/gcircuit, -/area/ai_monitored/turret_protected/ai_upload) -"chm" = ( -/obj/machinery/flasher{ - pixel_x = 26; - pixel_y = -26 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/ai_monitored/turret_protected/ai_upload) -"chn" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/aiModule/core/full/drone{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/aiModule/core/full/reporter, -/obj/item/weapon/aiModule/core/full/liveandletlive{ - pixel_x = -3; - pixel_y = -3 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/ai_monitored/turret_protected/ai_upload) -"cho" = ( -/turf/open/floor/plating/warnplate{ - dir = 8 - }, -/area/space) -"chp" = ( -/obj/machinery/field/generator{ - anchored = 1; - state = 2 - }, -/turf/open/floor/plating/warnplate{ - dir = 9 - }, -/area/space) -"chq" = ( -/obj/machinery/field/generator{ - anchored = 1; - state = 2 - }, -/turf/open/floor/plating/warnplate{ - dir = 1 - }, -/area/space) -"chr" = ( -/obj/machinery/field/generator{ - anchored = 1; - state = 2 - }, -/turf/open/floor/plating/warnplate{ - dir = 5 - }, -/area/space) -"chs" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plating/warnplate{ - dir = 4 - }, -/area/space) -"cht" = ( -/obj/machinery/door/poddoor/shutters/preopen{ - id = "engpa"; - name = "Engineering Chamber Shutters" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/turf/open/floor/plating/warnplate{ - dir = 8 - }, -/area/engine/engineering) -"chu" = ( -/obj/structure/rack, -/obj/item/weapon/crowbar, -/obj/item/weapon/tank/internals/emergency_oxygen/engi, -/obj/item/stack/cable_coil/white, -/turf/open/floor/plasteel/bot, -/area/engine/engineering) -"chv" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/delivery, -/area/engine/engineering) -"chw" = ( -/obj/structure/rack, -/obj/machinery/button/door{ - id = "engpa"; - name = "Engineering Chamber Shutters Control"; - pixel_y = -26; - req_access_txt = "11" - }, -/obj/item/clothing/gloves/color/black, -/obj/item/weapon/wrench, -/obj/item/clothing/glasses/meson/engine, -/turf/open/floor/plasteel/bot, -/area/engine/engineering) -"chx" = ( -/obj/structure/closet/radiation, -/turf/open/floor/plasteel/bot, -/area/engine/engineering) -"chy" = ( -/obj/structure/closet/secure_closet/engineering_welding, -/turf/open/floor/plasteel/bot, -/area/engine/engineering) -"chz" = ( -/obj/structure/closet/wardrobe/engineering_yellow, -/obj/item/weapon/storage/backpack/satchel/eng, -/turf/open/floor/plasteel/delivery, -/area/engine/engineering) -"chA" = ( -/obj/structure/closet/secure_closet/engineering_personal, -/obj/machinery/newscaster{ - pixel_y = -32 - }, -/turf/open/floor/plasteel/delivery, -/area/engine/engineering) -"chB" = ( -/obj/structure/closet/secure_closet/engineering_personal, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/requests_console{ - department = "Engineering"; - departmentType = 0; - name = "Engineering RC"; - pixel_x = 0; - pixel_y = -32 - }, -/obj/structure/sign/poster{ - icon_state = "poster16_legit"; - pixel_x = 32; - pixel_y = 0; - tag = "icon-poster16_legit" - }, -/turf/open/floor/plasteel/delivery, -/area/engine/engineering) -"chC" = ( -/obj/machinery/shieldgen, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"chD" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/obj/effect/landmark{ - name = "xeno_spawn"; - pixel_x = -1 - }, -/turf/open/floor/plasteel/warning, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"chE" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning{ - dir = 6 - }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"chF" = ( -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Maintenance Hatch"; - req_access_txt = "12" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"chG" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/delivery, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"chH" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"chI" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"chJ" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"chK" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"chL" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/turf/open/floor/plasteel/delivery, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"chM" = ( -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Maintenance Hatch"; - req_access_txt = "12" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/library) -"chN" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/wood, -/area/library) -"chO" = ( -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/grimy, -/area/library) -"chP" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plasteel/grimy, -/area/library) -"chQ" = ( -/turf/open/floor/wood, -/area/library) -"chR" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/wood, -/area/library) -"chS" = ( -/obj/machinery/holopad, -/turf/open/floor/wood, -/area/library) -"chT" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/turf/open/floor/wood, -/area/library) -"chU" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/extinguisher_cabinet{ - pixel_x = 26 - }, -/turf/open/floor/plasteel/neutral/corner, -/area/hallway/primary/central) -"chV" = ( -/obj/structure/dresser, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/heads) -"chW" = ( -/obj/structure/filingcabinet/medical, -/obj/machinery/light{ - dir = 1 - }, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/heads) -"chX" = ( -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/obj/structure/extinguisher_cabinet{ - pixel_x = -26 - }, -/turf/open/floor/wood, -/area/crew_quarters/heads) -"chY" = ( -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/heads) -"chZ" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 2; - on = 1 - }, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/heads) -"cia" = ( -/obj/machinery/ai_status_display{ - pixel_x = 32 - }, -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/wood, -/area/crew_quarters/heads) -"cib" = ( -/obj/structure/cable/white, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/tcommsat/server) -"cic" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/command{ - cyclelinkeddir = 1; - name = "Telecoms Server Room"; - req_access = null; - req_access_txt = "61" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/tcommsat/server) -"cid" = ( -/obj/machinery/light{ - dir = 8 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/loadingarea, -/area/teleporter{ - name = "\improper Teleporter Room" - }) -"cie" = ( -/turf/open/floor/plasteel/loadingarea, -/area/teleporter{ - name = "\improper Teleporter Room" - }) -"cif" = ( -/obj/structure/table, -/obj/item/stack/packageWrap, -/obj/item/weapon/hand_labeler, -/obj/structure/extinguisher_cabinet{ - pixel_x = 0; - pixel_y = 32 - }, -/turf/open/floor/plasteel/bot, -/area/teleporter{ - name = "\improper Teleporter Room" - }) -"cig" = ( -/obj/structure/table, -/obj/item/weapon/hand_tele, -/obj/machinery/power/apc{ - cell_type = 10000; - dir = 1; - name = "Teleporter APC"; - pixel_x = 0; - pixel_y = 28 - }, -/obj/structure/cable/white{ - tag = "icon-0-2"; - icon_state = "0-2" - }, -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/bot, -/area/teleporter{ - name = "\improper Teleporter Room" - }) -"cih" = ( -/obj/structure/table, -/obj/machinery/cell_charger, -/obj/item/weapon/stock_parts/cell/high, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/bot, -/area/teleporter{ - name = "\improper Teleporter Room" - }) -"cii" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/delivery, -/area/teleporter{ - name = "\improper Teleporter Room" - }) -"cij" = ( -/obj/machinery/button/door{ - id = "teleporterhubshutters"; - name = "Teleporter Shutters"; - pixel_x = 0; - pixel_y = 26 - }, -/obj/machinery/bluespace_beacon, -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/teleporter{ - name = "\improper Teleporter Room" - }) -"cik" = ( -/obj/machinery/teleport/hub, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/teleporter{ - name = "\improper Teleporter Room" - }) -"cil" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/poddoor/shutters{ - id = "teleporterhubshutters"; - name = "Teleporter Shutters" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/teleporter{ - name = "\improper Teleporter Room" - }) -"cim" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 8 - }, -/area/hallway/primary/central) -"cin" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/junction{ - dir = 1; - icon_state = "pipe-j2" - }, -/turf/open/floor/plasteel/neutral/corner, -/area/hallway/primary/central) -"cio" = ( -/obj/structure/chair{ - dir = 4 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/courtroom) -"cip" = ( -/obj/structure/chair{ - dir = 4 - }, -/obj/effect/landmark/start{ - name = "Assistant" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/courtroom) -"ciq" = ( -/obj/structure/table/wood, -/obj/item/weapon/folder/blue, -/obj/item/weapon/pen, -/turf/open/floor/plasteel/neutral/side{ - dir = 10; - heat_capacity = 1e+006 - }, -/area/crew_quarters/courtroom) -"cir" = ( -/obj/structure/table/wood, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = 0; - pixel_y = 0 - }, -/turf/open/floor/plasteel/neutral/side, -/area/crew_quarters/courtroom) -"cis" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/neutral/side, -/area/crew_quarters/courtroom) -"cit" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral/side, -/area/crew_quarters/courtroom) -"ciu" = ( -/obj/structure/table/wood, -/obj/item/weapon/folder/red, -/obj/item/weapon/pen, -/turf/open/floor/plasteel/green/side{ - dir = 8 - }, -/area/crew_quarters/courtroom) -"civ" = ( -/obj/structure/chair{ - dir = 8; - name = "Judge" - }, -/obj/machinery/newscaster{ - pixel_x = 32 - }, -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/courtroom) -"ciw" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/effect/landmark{ - name = "blobstart" - }, -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 9 - }, -/area/maintenance/starboard) -"cix" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 1 - }, -/area/maintenance/starboard) -"ciy" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/starboard) -"ciz" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHEAST)"; - icon_state = "intact"; - dir = 5 - }, -/obj/structure/disposalpipe/junction{ - dir = 8; - icon_state = "pipe-j1" - }, -/turf/open/floor/plating, -/area/maintenance/starboard) -"ciA" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/light/small{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plating{ - icon_state = "platingdmg3" - }, -/area/maintenance/starboard) -"ciB" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/starboard) -"ciC" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/effect/landmark{ - name = "blobstart" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/starboard) -"ciD" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/mob/living/simple_animal/cockroach, -/turf/open/floor/plating, -/area/maintenance/starboard) -"ciE" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/maintenance/starboard) -"ciF" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/starboard) -"ciG" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/obj/structure/disposalpipe/junction{ - dir = 8; - icon_state = "pipe-j2" - }, -/turf/open/floor/plating, -/area/maintenance/starboard) -"ciH" = ( -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Security Maintenance"; - req_access_txt = "63" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/security/range) -"ciI" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 2; - on = 1; - scrub_N2O = 1; - scrub_Toxins = 1 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/security/range) -"ciJ" = ( -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/security/range) -"ciK" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/security/range) -"ciL" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/door/window/brigdoor/westright{ - name = "Shooting Range"; - req_access_txt = "63" - }, -/turf/open/floor/plating, -/area/security/range) -"ciM" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plating, -/area/security/range) -"ciN" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/effect/decal/cleanable/dirt, -/obj/effect/landmark{ - name = "blobstart" - }, -/turf/open/floor/plating, -/area/security/range) -"ciO" = ( -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/item/target/syndicate, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/bot, -/area/security/range) -"ciP" = ( -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/range) -"ciQ" = ( -/obj/structure/window/reinforced{ - dir = 4; - pixel_x = 0 - }, -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/machinery/camera{ - c_tag = "AI Satellite - Aft Port"; - dir = 8; - name = "ai camera"; - network = list("Sat"); - pixel_x = 0; - pixel_y = 0; - start_active = 1 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/construction/hallway{ - name = "\improper MiniSat Exterior" - }) -"ciR" = ( -/obj/structure/cable/white, -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/obj/machinery/light, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/power/apc{ - dir = 2; - name = "AI Upload Access APC"; - pixel_x = 0; - pixel_y = -27 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/ai_monitored/turret_protected/ai_upload) -"ciS" = ( -/obj/machinery/porta_turret/ai, -/obj/structure/sign/electricshock{ - pixel_y = -32 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/ai_monitored/turret_protected/ai_upload) -"ciT" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/table/reinforced, -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-07"; - name = "Photosynthetic Potted plant"; - pixel_y = 10 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/ai_monitored/turret_protected/ai_upload) -"ciU" = ( -/obj/machinery/porta_turret/ai, -/obj/structure/sign/nanotrasen{ - pixel_y = -32 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/ai_monitored/turret_protected/ai_upload) -"ciV" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/obj/machinery/light, -/obj/machinery/airalarm{ - dir = 1; - icon_state = "alarm0"; - pixel_y = -22 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/ai_monitored/turret_protected/ai_upload) -"ciW" = ( -/obj/structure/window/reinforced{ - dir = 4; - pixel_x = 0 - }, -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/machinery/camera{ - c_tag = "AI Satellite - Aft Starboard"; - dir = 4; - name = "ai camera"; - network = list("Sat"); - pixel_x = 0; - pixel_y = 0; - start_active = 1 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/construction/hallway{ - name = "\improper MiniSat Exterior" - }) -"ciX" = ( -/obj/structure/lattice/catwalk, -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4"; - tag = "" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/space, -/area/space) -"ciY" = ( -/obj/machinery/power/tesla_coil, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/turf/open/floor/plating/warnplate{ - dir = 8 - }, -/area/space) -"ciZ" = ( -/obj/structure/sign/radiation, -/turf/closed/wall/r_wall, -/area/engine/engineering) -"cja" = ( -/obj/machinery/status_display, -/turf/closed/wall/r_wall, -/area/engine/engineering) -"cjb" = ( -/obj/machinery/door/poddoor/shutters/preopen{ - id = "engpa"; - name = "Engineering Chamber Shutters" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (EAST)"; - icon_state = "plasteel_warn_side"; - dir = 4 - }, -/area/engine/engineering) -"cjc" = ( -/obj/machinery/requests_console{ - department = "Chapel Office"; - departmentType = 0; - name = "Chapel RC"; - pixel_x = 0; - pixel_y = -32 - }, -/turf/closed/wall/r_wall, -/area/engine/engineering) -"cjd" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/storage/toolbox/mechanical, -/obj/item/device/flashlight, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = -26; - pixel_y = 0 - }, -/turf/open/floor/plasteel/bot, -/area/engine/engineering) -"cje" = ( -/obj/machinery/status_display, -/turf/closed/wall, -/area/engine/engineering) -"cjf" = ( -/turf/closed/wall/r_wall, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cjg" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 8 - }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cjh" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cji" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/library) -"cjj" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/bookcase/random/fiction, -/turf/open/floor/wood, -/area/library) -"cjk" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plasteel/grimy, -/area/library) -"cjl" = ( -/obj/structure/bookcase/random/reference, -/turf/open/floor/wood, -/area/library) -"cjm" = ( -/obj/structure/bookcase/manuals/medical, -/turf/open/floor/wood, -/area/library) -"cjn" = ( -/obj/structure/bookcase/manuals/engineering, -/turf/open/floor/wood, -/area/library) -"cjo" = ( -/obj/structure/table/wood, -/obj/item/device/flashlight/lamp, -/turf/open/floor/plasteel/grimy, -/area/library) -"cjp" = ( -/obj/structure/table/wood, -/obj/item/weapon/storage/fancy/donut_box, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/grimy, -/area/library) -"cjq" = ( -/obj/structure/table/wood, -/obj/item/weapon/folder, -/obj/item/weapon/pen, -/turf/open/floor/plasteel/grimy, -/area/library) -"cjr" = ( -/obj/structure/table/wood, -/turf/open/floor/plasteel/grimy, -/area/library) -"cjs" = ( -/obj/structure/table/wood, -/obj/item/device/camera_film{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/device/camera_film, -/obj/machinery/firealarm{ - dir = 4; - icon_state = "fire0"; - pixel_x = 24; - pixel_y = 0; - tag = "icon-fire0 (EAST)" - }, -/turf/open/floor/plasteel/grimy, -/area/library) -"cjt" = ( -/obj/structure/bed, -/obj/machinery/newscaster{ - pixel_x = -32 - }, -/obj/item/weapon/bedsheet/hop, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/heads) -"cju" = ( -/obj/machinery/light_switch{ - pixel_x = 26; - pixel_y = 26 - }, -/obj/effect/landmark/start{ - name = "Head of Personnel" - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/heads) -"cjv" = ( -/obj/machinery/door/airlock/command{ - name = "Head of Personnel's Quarters"; - req_access = null; - req_access_txt = "57" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/wood, -/area/crew_quarters/heads) -"cjw" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/wood, -/area/crew_quarters/heads) -"cjx" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/heads) -"cjy" = ( -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/heads) -"cjz" = ( -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/heads) -"cjA" = ( -/obj/structure/table/wood, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = 26 - }, -/obj/item/weapon/clipboard, -/obj/item/toy/figure/hop{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/toy/figure/ian, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/wood, -/area/crew_quarters/heads) -"cjB" = ( -/turf/closed/wall, -/area/tcommsat/server) -"cjC" = ( -/obj/machinery/atmospherics/components/unary/thermomachine/freezer{ - dir = 1; - min_temperature = 80; - on = 1; - target_temperature = 80 - }, -/turf/open/floor/plasteel/delivery, -/area/tcommsat/server) -"cjD" = ( -/obj/machinery/holopad, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/warning{ - dir = 9 - }, -/area/tcommsat/server) -"cjE" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/tcommsat/server) -"cjF" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/obj/effect/landmark{ - name = "xeno_spawn"; - pixel_x = -1 - }, -/turf/open/floor/plasteel/warning{ - dir = 5 - }, -/area/tcommsat/server) -"cjG" = ( -/obj/machinery/atmospherics/components/unary/thermomachine/freezer{ - dir = 1; - min_temperature = 80; - on = 1; - target_temperature = 80 - }, -/obj/machinery/camera{ - c_tag = "Telecomms - Cooling Room"; - dir = 8; - name = "telecomms camera"; - network = list("SS13","tcomm") - }, -/turf/open/floor/plasteel/delivery, -/area/tcommsat/server) -"cjH" = ( -/obj/structure/rack, -/obj/item/weapon/storage/toolbox/emergency, -/obj/item/weapon/wrench, -/obj/item/weapon/crowbar, -/turf/open/floor/plasteel/bot, -/area/teleporter{ - name = "\improper Teleporter Room" - }) -"cjI" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHEAST)"; - icon_state = "intact"; - dir = 6 - }, -/turf/open/floor/plasteel/neutral, -/area/teleporter{ - name = "\improper Teleporter Room" - }) -"cjJ" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/teleporter{ - name = "\improper Teleporter Room" - }) -"cjK" = ( -/obj/machinery/holopad, -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/bot, -/area/teleporter{ - name = "\improper Teleporter Room" - }) -"cjL" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/disposalpipe/junction{ - dir = 4; - icon_state = "pipe-j2" - }, -/turf/open/floor/plasteel/neutral, -/area/teleporter{ - name = "\improper Teleporter Room" - }) -"cjM" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHWEST)"; - icon_state = "intact"; - dir = 9 - }, -/obj/structure/disposalpipe/junction{ - dir = 4; - icon_state = "pipe-j2" - }, -/turf/open/floor/plasteel/neutral, -/area/teleporter{ - name = "\improper Teleporter Room" - }) -"cjN" = ( -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/effect/decal/cleanable/dirt, -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/teleporter{ - name = "\improper Teleporter Room" - }) -"cjO" = ( -/obj/machinery/teleport/station, -/obj/machinery/status_display{ - pixel_x = 32 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/teleporter{ - name = "\improper Teleporter Room" - }) -"cjP" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment, -/obj/machinery/camera{ - c_tag = "Central Hallway - Starboard"; - dir = 8; - name = "hallway camera" - }, -/turf/open/floor/plasteel/neutral/corner, -/area/hallway/primary/central) -"cjQ" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = -26; - pixel_y = 0 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/courtroom) -"cjR" = ( -/obj/structure/chair{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/courtroom) -"cjS" = ( -/obj/structure/chair{ - dir = 1; - name = "Defense" - }, -/turf/open/floor/plasteel/green/side{ - dir = 10 - }, -/area/crew_quarters/courtroom) -"cjT" = ( -/obj/structure/chair{ - dir = 1; - name = "Defense" - }, -/turf/open/floor/plasteel/green/side{ - dir = 6 - }, -/area/crew_quarters/courtroom) -"cjU" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/courtroom) -"cjV" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHWEST)"; - icon_state = "intact"; - dir = 9 - }, -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/courtroom) -"cjW" = ( -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/courtroom) -"cjX" = ( -/obj/structure/extinguisher_cabinet{ - pixel_x = 26 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/crew_quarters/courtroom) -"cjY" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plating, -/area/maintenance/starboard) -"cjZ" = ( -/obj/structure/closet, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 2; - name = "2maintenance loot spawner" - }, -/turf/open/floor/plating{ - icon_state = "panelscorched" - }, -/area/maintenance/starboard) -"cka" = ( -/obj/structure/girder, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHEAST)"; - icon_state = "intact"; - dir = 5 - }, -/turf/open/floor/plating, -/area/maintenance/starboard) -"ckb" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/rack, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 2; - name = "2maintenance loot spawner" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side, -/area/maintenance/starboard) -"ckc" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side, -/area/maintenance/starboard) -"ckd" = ( -/obj/effect/decal/cleanable/oil, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 6 - }, -/area/maintenance/starboard) -"cke" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/starboard) -"ckf" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating{ - icon_state = "panelscorched" - }, -/area/maintenance/starboard) -"ckg" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plasteel/neutral/side, -/area/maintenance/starboard) -"ckh" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plating, -/area/maintenance/starboard) -"cki" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/security/range) -"ckj" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/power/apc{ - dir = 8; - name = "Shooting Range APC"; - pixel_x = -26; - pixel_y = 0 - }, -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/open/floor/plasteel/delivery, -/area/security/range) -"ckk" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning, -/area/security/range) -"ckl" = ( -/obj/structure/table/reinforced, -/obj/machinery/airalarm{ - dir = 1; - icon_state = "alarm0"; - pixel_y = -22 - }, -/obj/item/weapon/gun/energy/laser/practice{ - pixel_x = 3; - pixel_y = -3 - }, -/obj/item/weapon/gun/energy/laser/practice, -/obj/item/clothing/ears/earmuffs, -/obj/item/clothing/ears/earmuffs, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/open/floor/plasteel/warning{ - dir = 6 - }, -/area/security/range) -"ckm" = ( -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/security/range) -"ckn" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating/warnplate, -/area/security/range) -"cko" = ( -/obj/structure/sign/securearea{ - pixel_y = -32 - }, -/obj/machinery/light, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/camera{ - c_tag = "Security - Shooting Range"; - dir = 1; - name = "security camera" - }, -/turf/open/floor/plating, -/area/security/range) -"ckp" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plating/warnplate, -/area/security/range) -"ckq" = ( -/turf/open/floor/plating/warnplate{ - dir = 10 - }, -/area/security/range) -"ckr" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plating, -/area/security/range) -"cks" = ( -/obj/machinery/light/small{ - dir = 4 - }, -/turf/open/floor/plating/warnplate{ - dir = 6 - }, -/area/security/range) -"ckt" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/closed/wall/r_wall, -/area/ai_monitored/turret_protected/ai_upload) -"cku" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall/r_wall, -/area/ai_monitored/turret_protected/ai_upload) -"ckv" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/turf/open/floor/plating/warnplate{ - dir = 9 - }, -/area/engine/engineering) -"ckw" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/floor/plating/warnplate{ - dir = 1 - }, -/area/engine/engineering) -"ckx" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/turf/open/floor/plating/warnplate{ - dir = 1 - }, -/area/engine/engineering) -"cky" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plating/warnplate{ - dir = 1 - }, -/area/engine/engineering) -"ckz" = ( -/obj/machinery/button/door{ - id = "engpa"; - name = "Engineering Chamber Shutters Control"; - pixel_y = 26; - req_access_txt = "11" - }, -/turf/open/floor/plating/warnplate{ - dir = 5 - }, -/area/engine/engineering) -"ckA" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/clipboard, -/obj/item/toy/figure/engineer, -/turf/open/floor/plasteel/bot, -/area/engine/engineering) -"ckB" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/airlock_painter, -/turf/open/floor/plasteel/delivery, -/area/engine/engineering) -"ckC" = ( -/obj/structure/sign/securearea, -/turf/closed/wall/r_wall, -/area/engine/engineering) -"ckD" = ( -/obj/structure/closet/crate, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/light/small{ - dir = 8 - }, -/obj/item/weapon/crowbar/red, -/obj/item/stack/sheet/mineral/plasma{ - amount = 20 - }, -/obj/item/device/gps/engineering{ - gpstag = "ENG0" - }, -/turf/open/floor/plasteel/bot, -/area/engine/engineering) -"ckE" = ( -/obj/machinery/shieldgen, -/turf/open/floor/plasteel/bot, -/area/engine/engineering) -"ckF" = ( -/obj/machinery/shieldgen, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/structure/sign/nosmoking_2{ - pixel_y = 32 - }, -/turf/open/floor/plasteel/bot, -/area/engine/engineering) -"ckG" = ( -/obj/machinery/field/generator, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/bot, -/area/engine/engineering) -"ckH" = ( -/obj/machinery/shieldwallgen, -/obj/effect/decal/cleanable/cobweb, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"ckI" = ( -/obj/machinery/shieldwallgen, -/turf/open/floor/plasteel/bot, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"ckJ" = ( -/obj/structure/tank_dispenser, -/obj/effect/decal/cleanable/dirt, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = 0; - pixel_y = 26 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/bot, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"ckK" = ( -/obj/machinery/portable_atmospherics/canister/oxygen, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/bot, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"ckL" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"ckM" = ( -/obj/machinery/power/apc{ - dir = 8; - name = "Library APC"; - pixel_x = -26; - pixel_y = 3 - }, -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/turf/open/floor/wood, -/area/library) -"ckN" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/wood, -/area/library) -"ckO" = ( -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/grimy, -/area/library) -"ckP" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/wood, -/area/library) -"ckQ" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/carpet, -/area/library) -"ckR" = ( -/obj/structure/chair/office/dark{ - dir = 1 - }, -/obj/effect/landmark/start{ - name = "Librarian" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHWEST)"; - icon_state = "intact"; - dir = 10 - }, -/turf/open/floor/carpet, -/area/library) -"ckS" = ( -/turf/open/floor/carpet, -/area/library) -"ckT" = ( -/obj/structure/table/wood, -/obj/machinery/computer/libraryconsole/bookmanagement, -/obj/machinery/newscaster{ - pixel_x = 32 - }, -/turf/open/floor/plasteel/grimy, -/area/library) -"ckU" = ( -/obj/structure/table/wood, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = -26 - }, -/obj/item/device/flashlight/lamp/green, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/heads) -"ckV" = ( -/obj/structure/closet/secure_closet/hop, -/obj/item/clothing/suit/ianshirt, -/obj/item/weapon/bedsheet/ian, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/heads) -"ckW" = ( -/obj/structure/sign/nanotrasen, -/turf/closed/wall, -/area/crew_quarters/heads) -"ckX" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-18"; - layer = 4.1 - }, -/turf/open/floor/wood, -/area/crew_quarters/heads) -"ckY" = ( -/obj/machinery/disposal/bin, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/trunk{ - dir = 1 - }, -/turf/open/floor/wood, -/area/crew_quarters/heads) -"ckZ" = ( -/obj/machinery/firealarm{ - dir = 1; - pixel_x = 0; - pixel_y = -26 - }, -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/turf/open/floor/wood, -/area/crew_quarters/heads) -"cla" = ( -/obj/machinery/light_switch{ - pixel_x = 26; - pixel_y = -26 - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/wood, -/area/crew_quarters/heads) -"clb" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/wood, -/area/crew_quarters/heads) -"clc" = ( -/obj/machinery/airalarm{ - dir = 4; - locked = 0; - pixel_x = -23; - pixel_y = 0 - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/delivery, -/area/tcommsat/server) -"cld" = ( -/obj/machinery/light, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plasteel/warning{ - dir = 10 - }, -/area/tcommsat/server) -"cle" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/warning, -/area/tcommsat/server) -"clf" = ( -/obj/machinery/firealarm{ - dir = 1; - pixel_x = 0; - pixel_y = -26 - }, -/turf/open/floor/plasteel/warning{ - dir = 6 - }, -/area/tcommsat/server) -"clg" = ( -/obj/structure/table, -/obj/structure/extinguisher_cabinet{ - pixel_x = 26 - }, -/obj/effect/decal/cleanable/dirt, -/obj/item/weapon/wrench, -/obj/item/weapon/screwdriver{ - pixel_y = 5 - }, -/turf/open/floor/plasteel/delivery, -/area/tcommsat/server) -"clh" = ( -/obj/structure/rack, -/obj/item/weapon/tank/internals/oxygen, -/obj/item/device/radio, -/obj/machinery/firealarm{ - dir = 1; - pixel_x = 0; - pixel_y = -26 - }, -/turf/open/floor/plasteel/bot, -/area/teleporter{ - name = "\improper Teleporter Room" - }) -"cli" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/plasteel/delivery, -/area/teleporter{ - name = "\improper Teleporter Room" - }) -"clj" = ( -/obj/machinery/light_switch{ - pixel_x = -7; - pixel_y = -26 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/obj/machinery/camera{ - c_tag = "Bridge - Teleporter"; - dir = 1; - name = "command camera" - }, -/turf/open/floor/plasteel/warning/corner, -/area/teleporter{ - name = "\improper Teleporter Room" - }) -"clk" = ( -/turf/open/floor/plasteel/warning, -/area/teleporter{ - name = "\improper Teleporter Room" - }) -"cll" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/plasteel/warning, -/area/teleporter{ - name = "\improper Teleporter Room" - }) -"clm" = ( -/obj/machinery/light, -/obj/machinery/airalarm{ - dir = 1; - icon_state = "alarm0"; - pixel_y = -22 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/warning/corner{ - dir = 1 - }, -/area/teleporter{ - name = "\improper Teleporter Room" - }) -"cln" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/teleporter{ - name = "\improper Teleporter Room" - }) -"clo" = ( -/obj/machinery/computer/teleporter, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/teleporter{ - name = "\improper Teleporter Room" - }) -"clp" = ( -/obj/structure/table, -/obj/machinery/status_display{ - pixel_x = -32 - }, -/obj/item/weapon/paper_bin, -/obj/item/weapon/pen, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/courtroom) -"clq" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/courtroom) -"clr" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/turf/open/floor/plasteel/neutral/side, -/area/crew_quarters/courtroom) -"cls" = ( -/obj/structure/filingcabinet/chestdrawer, -/turf/open/floor/plasteel/neutral/side, -/area/crew_quarters/courtroom) -"clt" = ( -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/turf/open/floor/plasteel/neutral/side, -/area/crew_quarters/courtroom) -"clu" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/neutral/side, -/area/crew_quarters/courtroom) -"clv" = ( -/obj/machinery/power/apc{ - dir = 4; - name = "Courtroom APC"; - pixel_x = 26; - pixel_y = 0 - }, -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/turf/open/floor/plasteel/neutral/side, -/area/crew_quarters/courtroom) -"clw" = ( -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Maintenance Hatch"; - req_access_txt = "12" - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (EAST)"; - icon_state = "plasteel_warn_side"; - dir = 4 - }, -/area/crew_quarters/locker) -"clx" = ( -/turf/closed/wall, -/area/crew_quarters/locker) -"cly" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall, -/area/maintenance/starboard) -"clz" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Maintenance Hatch"; - req_access_txt = "12" - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (EAST)"; - icon_state = "plasteel_warn_side"; - dir = 4 - }, -/area/maintenance/starboard) -"clA" = ( -/obj/structure/plasticflaps{ - opacity = 1 - }, -/obj/machinery/navbeacon{ - codes_txt = "delivery;dir=1"; - dir = 1; - freq = 1400; - location = "Security" - }, -/turf/open/floor/plasteel/delivery, -/area/security/range) -"clB" = ( -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Security Maintenance"; - req_access_txt = "63" - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (EAST)"; - icon_state = "plasteel_warn_side"; - dir = 4 - }, -/area/security/range) -"clC" = ( -/obj/structure/cable/white, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/range) -"clD" = ( -/obj/structure/window/reinforced, -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/structure/lattice, -/turf/open/space, -/area/space) -"clE" = ( -/obj/structure/lattice, -/obj/structure/window/reinforced, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/space, -/area/space) -"clF" = ( -/obj/structure/lattice/catwalk, -/obj/structure/window/reinforced, -/turf/open/space, -/area/space) -"clG" = ( -/obj/structure/lattice, -/obj/structure/window/reinforced, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/space, -/area/space) -"clH" = ( -/obj/structure/window/reinforced, -/obj/structure/window/reinforced{ - dir = 4; - pixel_x = 0 - }, -/obj/structure/lattice, -/obj/structure/lattice, -/turf/open/space, -/area/space) -"clI" = ( -/obj/machinery/field/generator{ - anchored = 1; - state = 2 - }, -/turf/open/floor/plating/warnplate{ - dir = 8 - }, -/area/space) -"clJ" = ( -/turf/open/floor/plating/warnplate{ - dir = 9 - }, -/area/space) -"clK" = ( -/obj/machinery/the_singularitygen, -/turf/open/floor/plating/warnplate{ - dir = 1 - }, -/area/space) -"clL" = ( -/turf/open/floor/plating/warnplate{ - dir = 5 - }, -/area/space) -"clM" = ( -/obj/structure/cable{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plating/warnplate{ - dir = 8 - }, -/area/engine/engineering) -"clN" = ( -/obj/structure/particle_accelerator/particle_emitter/left{ - tag = "icon-emitter_left (WEST)"; - icon_state = "emitter_left"; - dir = 8 - }, -/turf/open/floor/plating, -/area/engine/engineering) -"clO" = ( -/obj/effect/landmark/start{ - name = "Station Engineer" - }, -/turf/open/floor/plating, -/area/engine/engineering) -"clP" = ( -/obj/machinery/particle_accelerator/control_box, -/obj/structure/cable, -/turf/open/floor/plating, -/area/engine/engineering) -"clQ" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4"; - tag = "" - }, -/turf/open/floor/plating, -/area/engine/engineering) -"clR" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/floor/plating/warnplate{ - dir = 4 - }, -/area/engine/engineering) -"clS" = ( -/obj/machinery/door/poddoor/shutters/preopen{ - id = "engpa"; - name = "Engineering Chamber Shutters" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/warning/side, -/area/engine/engineering) -"clT" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/warning{ - dir = 9 - }, -/area/engine/engineering) -"clU" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/warning/corner{ - dir = 4 - }, -/area/engine/engineering) -"clV" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/yellow, -/area/engine/engineering) -"clW" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/plasteel/warning/corner{ - dir = 8 - }, -/area/engine/engineering) -"clX" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/warning{ - dir = 5 - }, -/area/engine/engineering) -"clY" = ( -/obj/machinery/door/poddoor{ - id = "engstorage"; - name = "Engineering Secure Storage Lockdown" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/warning/side, -/area/engine/engineering) -"clZ" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/warning{ - dir = 5 - }, -/area/engine/engineering) -"cma" = ( -/obj/machinery/shieldgen, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/bot, -/area/engine/engineering) -"cmb" = ( -/obj/machinery/field/generator, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/bot, -/area/engine/engineering) -"cmc" = ( -/obj/machinery/field/generator, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHWEST)"; - icon_state = "intact"; - dir = 10 - }, -/turf/open/floor/plasteel/bot, -/area/engine/engineering) -"cmd" = ( -/obj/machinery/shieldwallgen, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/bot, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cme" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/delivery, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cmf" = ( -/obj/machinery/portable_atmospherics/canister/oxygen, -/turf/open/floor/plasteel/bot, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cmg" = ( -/obj/structure/sign/securearea, -/turf/closed/wall/r_wall, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cmh" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cmi" = ( -/obj/machinery/light{ - dir = 8 - }, -/obj/structure/bookcase/random/fiction, -/turf/open/floor/wood, -/area/library) -"cmj" = ( -/obj/structure/bookcase/random/fiction, -/turf/open/floor/wood, -/area/library) -"cmk" = ( -/obj/structure/bookcase/random/adult, -/turf/open/floor/wood, -/area/library) -"cml" = ( -/obj/structure/table/wood, -/obj/item/weapon/storage/briefcase, -/turf/open/floor/plasteel/grimy, -/area/library) -"cmm" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/carpet, -/area/library) -"cmn" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/carpet, -/area/library) -"cmo" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/carpet, -/area/library) -"cmp" = ( -/obj/machinery/libraryscanner, -/obj/machinery/status_display{ - pixel_x = 32 - }, -/turf/open/floor/plasteel/grimy, -/area/library) -"cmq" = ( -/obj/structure/sign/nanotrasen, -/turf/closed/wall/r_wall, -/area/crew_quarters/heads) -"cmr" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor/preopen{ - id = "hopblast"; - name = "HoP Blast door" - }, -/obj/structure/cable/white, -/turf/open/floor/plating, -/area/crew_quarters/heads) -"cms" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/door/firedoor, -/obj/machinery/door/poddoor/preopen{ - id = "hopblast"; - name = "HoP Blast door" - }, -/obj/machinery/door/airlock/command{ - name = "Head of Personnel's Office"; - req_access = null; - req_access_txt = "57" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/wood, -/area/crew_quarters/heads) -"cmt" = ( -/turf/closed/wall/r_wall, -/area/bridge/meeting_room{ - name = "\improper Command Hallway" - }) -"cmu" = ( -/obj/structure/cable/white{ - tag = "icon-0-2"; - icon_state = "0-2" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/bridge/meeting_room{ - name = "\improper Command Hallway" - }) -"cmv" = ( -/obj/structure/sign/securearea, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall/r_wall, -/area/bridge/meeting_room{ - name = "\improper Command Hallway" - }) -"cmw" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/command{ - cyclelinkeddir = 0; - name = "Telecoms Foyer"; - req_access = null; - req_access_txt = "61" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (EAST)"; - icon_state = "plasteel_warn_side"; - dir = 4 - }, -/area/bridge/meeting_room{ - name = "\improper Command Hallway" - }) -"cmx" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/command{ - name = "Teleport Access"; - req_access_txt = "17" - }, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/teleporter{ - name = "\improper Teleporter Room" - }) -"cmy" = ( -/obj/machinery/button/door{ - id = "teleportershutters"; - name = "Teleporter Shutters"; - pixel_x = -26; - pixel_y = 0; - req_access_txt = "19" - }, -/obj/machinery/door/poddoor/shutters{ - id = "teleportershutters"; - name = "Teleporter Shutters" - }, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (EAST)"; - icon_state = "plasteel_warn_side"; - dir = 4 - }, -/area/teleporter{ - name = "\improper Teleporter Room" - }) -"cmz" = ( -/obj/machinery/door/poddoor/shutters{ - id = "teleportershutters"; - name = "Teleporter Shutters" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (EAST)"; - icon_state = "plasteel_warn_side"; - dir = 4 - }, -/area/teleporter{ - name = "\improper Teleporter Room" - }) -"cmA" = ( -/obj/structure/cable/white, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/teleporter{ - name = "\improper Teleporter Room" - }) -"cmB" = ( -/obj/structure/sign/nanotrasen, -/turf/closed/wall/r_wall, -/area/teleporter{ - name = "\improper Teleporter Room" - }) -"cmC" = ( -/obj/structure/table, -/obj/machinery/airalarm{ - dir = 4; - locked = 0; - pixel_x = -23; - pixel_y = 0 - }, -/obj/item/weapon/storage/fancy/donut_box, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/courtroom) -"cmD" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/courtroom) -"cmE" = ( -/obj/machinery/vending/cigarette, -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/obj/machinery/camera{ - c_tag = "Courtroom - Aft"; - dir = 8; - name = "security camera" - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/courtroom) -"cmF" = ( -/obj/structure/sign/nanotrasen, -/turf/closed/wall, -/area/crew_quarters/courtroom) -"cmG" = ( -/obj/structure/table/wood, -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/obj/item/weapon/paper_bin, -/obj/item/weapon/pen, -/turf/open/floor/plasteel/vault, -/area/crew_quarters/courtroom) -"cmH" = ( -/obj/structure/table/wood, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = 0; - pixel_y = 0 - }, -/turf/open/floor/plasteel/vault, -/area/crew_quarters/courtroom) -"cmI" = ( -/obj/structure/table/wood, -/obj/item/weapon/clipboard, -/obj/item/weapon/folder, -/turf/open/floor/plasteel/vault, -/area/crew_quarters/courtroom) -"cmJ" = ( -/obj/structure/table/wood, -/obj/item/weapon/folder/yellow, -/obj/item/weapon/pen, -/turf/open/floor/plasteel/vault, -/area/crew_quarters/courtroom) -"cmK" = ( -/obj/structure/table/wood, -/obj/item/weapon/storage/briefcase, -/obj/structure/sign/poster{ - icon_state = "poster4_legit"; - pixel_x = 32; - pixel_y = 0; - tag = "icon-poster4_legit" - }, -/turf/open/floor/plasteel/vault, -/area/crew_quarters/courtroom) -"cmL" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/locker) -"cmM" = ( -/obj/structure/closet/secure_closet/personal, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/locker) -"cmN" = ( -/obj/machinery/status_display, -/turf/closed/wall, -/area/crew_quarters/locker) -"cmO" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible, -/obj/machinery/portable_atmospherics/pump, -/turf/open/floor/plasteel/arrival{ - dir = 1 - }, -/area/crew_quarters/locker) -"cmP" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible, -/obj/machinery/portable_atmospherics/scrubber, -/turf/open/floor/plasteel/escape{ - tag = "icon-escape (NORTH)"; - icon_state = "escape"; - dir = 1 - }, -/area/crew_quarters/locker) -"cmQ" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/cobweb, -/obj/structure/closet, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 3; - name = "3maintenance loot spawner" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral/side{ - dir = 9 - }, -/area/maintenance/starboard) -"cmR" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plating, -/area/maintenance/starboard) -"cmS" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/delivery, -/area/maintenance/starboard) -"cmT" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/maintenance/starboard) -"cmU" = ( -/turf/open/floor/plating, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating{ - icon_state = "platingdmg2" - }, -/area/maintenance/starboard) -"cmV" = ( -/obj/structure/cable/white{ - d2 = 2; - icon_state = "0-2"; - tag = "icon-0-2" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/maintenance/starboard) -"cmW" = ( -/obj/structure/closet/secure_closet/security/sec, -/obj/effect/decal/cleanable/cobweb/cobweb2, -/turf/open/floor/plasteel/warning/end{ - tag = "icon-plasteel_warn_end (NORTH)"; - icon_state = "plasteel_warn_end"; - dir = 1 - }, -/area/maintenance/starboard) -"cmX" = ( -/turf/closed/wall, -/area/maintenance/starboard) -"cmY" = ( -/obj/structure/sign/electricshock{ - pixel_x = -32; - pixel_y = 32 - }, -/turf/open/space, -/area/space) -"cmZ" = ( -/obj/structure/window/reinforced, -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/machinery/door/window/northleft, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/construction/hallway{ - name = "\improper MiniSat Exterior" - }) -"cna" = ( -/obj/structure/window/reinforced{ - dir = 1; - layer = 2.9 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/construction/hallway{ - name = "\improper MiniSat Exterior" - }) -"cnb" = ( -/obj/structure/window/reinforced{ - dir = 1; - layer = 2.9 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/construction/hallway{ - name = "\improper MiniSat Exterior" - }) -"cnc" = ( -/obj/structure/window/reinforced, -/obj/structure/window/reinforced{ - dir = 4; - pixel_x = 0 - }, -/obj/machinery/door/window/northright, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/construction/hallway{ - name = "\improper MiniSat Exterior" - }) -"cnd" = ( -/obj/item/weapon/wrench, -/turf/open/floor/plating, -/area/space) -"cne" = ( -/turf/open/floor/plating/warnplate{ - dir = 4 - }, -/area/space) -"cnf" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4"; - tag = "90Curve" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/turf/open/floor/plating/warnplate{ - dir = 4 - }, -/area/space) -"cng" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/floor/plating, -/area/engine/engineering) -"cnh" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/turf/open/floor/plating/warnplate{ - dir = 8 - }, -/area/engine/engineering) -"cni" = ( -/obj/structure/particle_accelerator/particle_emitter/center{ - tag = "icon-emitter_center (WEST)"; - icon_state = "emitter_center"; - dir = 8 - }, -/turf/open/floor/plating, -/area/engine/engineering) -"cnj" = ( -/obj/structure/particle_accelerator/power_box{ - tag = "icon-power_box (WEST)"; - icon_state = "power_box"; - dir = 8 - }, -/turf/open/floor/plating, -/area/engine/engineering) -"cnk" = ( -/obj/structure/particle_accelerator/fuel_chamber{ - tag = "icon-fuel_chamber (WEST)"; - icon_state = "fuel_chamber"; - dir = 8 - }, -/turf/open/floor/plating, -/area/engine/engineering) -"cnl" = ( -/obj/structure/particle_accelerator/end_cap{ - tag = "icon-end_cap (WEST)"; - icon_state = "end_cap"; - dir = 8 - }, -/turf/open/floor/plating, -/area/engine/engineering) -"cnm" = ( -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/turf/open/floor/plating/warnplate{ - dir = 4 - }, -/area/engine/engineering) -"cnn" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/obj/machinery/camera{ - c_tag = "Engineering - Central"; - dir = 4; - name = "engineering camera" - }, -/obj/machinery/computer/security/telescreen{ - desc = "Used for watching the singularity chamber."; - dir = 4; - layer = 4; - name = "Engine Containment Telescreen"; - network = list("Singularity"); - pixel_x = -30; - pixel_y = 0 - }, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/engine/engineering) -"cno" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/yellow, -/area/engine/engineering) -"cnp" = ( -/obj/machinery/holopad, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/bot, -/area/engine/engineering) -"cnq" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/plasteel/yellow, -/area/engine/engineering) -"cnr" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/engine/engineering) -"cns" = ( -/obj/machinery/door/poddoor{ - id = "engstorage"; - name = "Engineering Secure Storage Lockdown" - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning/side, -/area/engine/engineering) -"cnt" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/engine/engineering) -"cnu" = ( -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/engine/engineering) -"cnv" = ( -/obj/effect/decal/cleanable/oil, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/engine/engineering) -"cnw" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/light/small{ - dir = 4 - }, -/obj/structure/sign/fire{ - pixel_x = 32 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/warning/end{ - tag = "icon-plasteel_warn_end (EAST)"; - icon_state = "plasteel_warn_end"; - dir = 4 - }, -/area/engine/engineering) -"cnx" = ( -/obj/machinery/light{ - dir = 8 - }, -/turf/open/floor/plasteel/warning{ - dir = 9 - }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cny" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/landmark{ - name = "xeno_spawn"; - pixel_x = -1 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cnz" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cnA" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning{ - dir = 5 - }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cnB" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/door/airlock/highsecurity{ - name = "Engineering Auxiliary Storage"; - req_access_txt = "32" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cnC" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cnD" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cnE" = ( -/obj/machinery/newscaster{ - pixel_x = -32 - }, -/turf/open/floor/wood, -/area/library) -"cnF" = ( -/obj/structure/table/wood, -/obj/item/weapon/folder, -/obj/item/weapon/pen/blue{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/pen/red, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/grimy, -/area/library) -"cnG" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/carpet, -/area/library) -"cnH" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/carpet, -/area/library) -"cnI" = ( -/obj/structure/table/wood, -/obj/item/weapon/storage/bag/books, -/obj/item/device/taperecorder, -/obj/structure/noticeboard{ - dir = 8; - icon_state = "nboard00"; - pixel_x = 32; - pixel_y = 0; - tag = "icon-nboard00 (WEST)" - }, -/turf/open/floor/plasteel/grimy, -/area/library) -"cnJ" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHEAST)"; - icon_state = "intact"; - dir = 6 - }, -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/central) -"cnK" = ( -/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, -/turf/open/floor/plasteel/neutral/corner{ - dir = 4 - }, -/area/hallway/primary/central) -"cnL" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass{ - name = "Command Hallway" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/bridge/meeting_room{ - name = "\improper Command Hallway" - }) -"cnM" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 1 - }, -/area/bridge/meeting_room{ - name = "\improper Command Hallway" - }) -"cnN" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 1 - }, -/area/bridge/meeting_room{ - name = "\improper Command Hallway" - }) -"cnO" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, -/turf/open/floor/plasteel/neutral/corner{ - dir = 1 - }, -/area/bridge/meeting_room{ - name = "\improper Command Hallway" - }) -"cnP" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral/corner{ - dir = 1 - }, -/area/bridge/meeting_room{ - name = "\improper Command Hallway" - }) -"cnQ" = ( -/obj/structure/sign/electricshock{ - pixel_y = 32 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 1 - }, -/area/bridge/meeting_room{ - name = "\improper Command Hallway" - }) -"cnR" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 1 - }, -/area/bridge/meeting_room{ - name = "\improper Command Hallway" - }) -"cnS" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/power/apc{ - aidisabled = 0; - dir = 1; - name = "Command Hall APC"; - pixel_y = 24 - }, -/obj/structure/cable/white{ - d2 = 2; - icon_state = "0-2"; - tag = "icon-0-2" - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 1 - }, -/area/bridge/meeting_room{ - name = "\improper Command Hallway" - }) -"cnT" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/open/floor/plasteel/neutral/side{ - dir = 1 - }, -/area/bridge/meeting_room{ - name = "\improper Command Hallway" - }) -"cnU" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/camera{ - c_tag = "Central Hallway - Center"; - dir = 2; - name = "hallway camera" - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 4 - }, -/area/bridge/meeting_room{ - name = "\improper Command Hallway" - }) -"cnV" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 4 - }, -/area/bridge/meeting_room{ - name = "\improper Command Hallway" - }) -"cnW" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_y = 26 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 4 - }, -/area/bridge/meeting_room{ - name = "\improper Command Hallway" - }) -"cnX" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 4 - }, -/area/bridge/meeting_room{ - name = "\improper Command Hallway" - }) -"cnY" = ( -/obj/structure/sign/electricshock{ - pixel_x = 0; - pixel_y = 32 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 4 - }, -/area/bridge/meeting_room{ - name = "\improper Command Hallway" - }) -"cnZ" = ( -/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, -/turf/open/floor/plasteel/neutral/corner{ - dir = 4 - }, -/area/bridge/meeting_room{ - name = "\improper Command Hallway" - }) -"coa" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/corner{ - dir = 8 - }, -/area/bridge/meeting_room{ - name = "\improper Command Hallway" - }) -"cob" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 2; - on = 1; - scrub_N2O = 1; - scrub_Toxins = 1 - }, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/bridge/meeting_room{ - name = "\improper Command Hallway" - }) -"coc" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/bridge/meeting_room{ - name = "\improper Command Hallway" - }) -"cod" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/corner{ - dir = 4 - }, -/area/bridge/meeting_room{ - name = "\improper Command Hallway" - }) -"coe" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral/corner{ - tag = "icon-neutralcorner (NORTH)"; - icon_state = "neutralcorner"; - dir = 1 - }, -/area/hallway/primary/central) -"cof" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral/corner, -/area/hallway/primary/central) -"cog" = ( -/obj/machinery/vending/coffee, -/obj/machinery/firealarm{ - dir = 1; - pixel_x = 0; - pixel_y = -26 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/courtroom) -"coh" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/courtroom) -"coi" = ( -/obj/structure/sign/poster{ - icon_state = "poster17_legit"; - pixel_x = 0; - pixel_y = -32; - tag = "icon-poster17_legit" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/courtroom) -"coj" = ( -/obj/machinery/door/airlock{ - name = "Jury"; - req_access_txt = "42" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/courtroom) -"cok" = ( -/obj/structure/chair{ - dir = 1; - name = "Jury" - }, -/obj/machinery/ai_status_display{ - pixel_y = -32 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/courtroom) -"col" = ( -/obj/structure/chair{ - dir = 1; - name = "Jury" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/courtroom) -"com" = ( -/obj/structure/chair{ - dir = 1; - name = "Jury" - }, -/obj/machinery/status_display{ - pixel_y = -32 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/courtroom) -"con" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/courtroom) -"coo" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/extinguisher_cabinet{ - pixel_x = -26 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral/corner{ - dir = 1 - }, -/area/crew_quarters/locker) -"cop" = ( -/turf/open/floor/plasteel/neutral/corner{ - dir = 1 - }, -/area/crew_quarters/locker) -"coq" = ( -/obj/machinery/light{ - dir = 1 - }, -/obj/machinery/camera{ - c_tag = "Locker Room - Fore"; - dir = 2; - name = "dormitories camera" - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 1; - heat_capacity = 1e+006 - }, -/area/crew_quarters/locker) -"cor" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 4 - }, -/area/crew_quarters/locker) -"cos" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHWEST)"; - icon_state = "intact"; - dir = 9 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 4 - }, -/area/crew_quarters/locker) -"cot" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 4 - }, -/area/crew_quarters/locker) -"cou" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHWEST)"; - icon_state = "intact"; - dir = 9 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 4 - }, -/area/crew_quarters/locker) -"cov" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral/side{ - dir = 8; - heat_capacity = 1e+006 - }, -/area/maintenance/starboard) -"cow" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plating, -/area/maintenance/starboard) -"cox" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/starboard) -"coy" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/starboard) -"coz" = ( -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/blood/old, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plating, -/area/maintenance/starboard) -"coA" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/plasteel/neutral, -/area/maintenance/starboard) -"coB" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plating, -/area/maintenance/starboard) -"coC" = ( -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/door/airlock/glass_security{ - name = "Storage Closet"; - req_access_txt = "63" - }, -/obj/structure/barricade/wooden, -/turf/open/floor/plating/warnplate/side, -/area/maintenance/starboard) -"coD" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating/warnplate{ - dir = 4 - }, -/area/maintenance/starboard) -"coE" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/maintenance/starboard) -"coF" = ( -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/construction/hallway{ - name = "\improper MiniSat Exterior" - }) -"coG" = ( -/obj/structure/chair, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/construction/hallway{ - name = "\improper MiniSat Exterior" - }) -"coH" = ( -/obj/structure/window/reinforced{ - dir = 4; - pixel_x = 0 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/construction/hallway{ - name = "\improper MiniSat Exterior" - }) -"coI" = ( -/turf/open/floor/plating/warnplate{ - dir = 10 - }, -/area/space) -"coJ" = ( -/obj/machinery/the_singularitygen/tesla, -/turf/open/floor/plating/warnplate, -/area/space) -"coK" = ( -/turf/open/floor/plating/warnplate{ - dir = 6 - }, -/area/space) -"coL" = ( -/obj/machinery/field/generator{ - anchored = 1; - state = 2 - }, -/turf/open/floor/plating/warnplate{ - dir = 4; - luminosity = 2; - initial_gas_mix = "o2=0.01;n2=0.01"; - temperature = 2.7 - }, -/area/space) -"coM" = ( -/obj/structure/particle_accelerator/particle_emitter/right{ - tag = "icon-emitter_right (WEST)"; - icon_state = "emitter_right"; - dir = 8 - }, -/turf/open/floor/plating, -/area/engine/engineering) -"coN" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/engine/engineering) -"coO" = ( -/obj/effect/decal/cleanable/oil, -/turf/open/floor/plating, -/area/engine/engineering) -"coP" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/turf/open/floor/plating, -/area/engine/engineering) -"coQ" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/warning{ - dir = 10 - }, -/area/engine/engineering) -"coR" = ( -/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/warning/corner{ - dir = 1 - }, -/area/engine/engineering) -"coS" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/yellow, -/area/engine/engineering) -"coT" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/warning/corner, -/area/engine/engineering) -"coU" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/warning{ - dir = 6 - }, -/area/engine/engineering) -"coV" = ( -/obj/machinery/door/poddoor{ - id = "engstorage"; - name = "Engineering Secure Storage Lockdown" - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/warning/side, -/area/engine/engineering) -"coW" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/plasteel/warning{ - dir = 6 - }, -/area/engine/engineering) -"coX" = ( -/obj/machinery/portable_atmospherics/canister/toxins, -/turf/open/floor/plasteel/bot, -/area/engine/engineering) -"coY" = ( -/obj/machinery/power/tesla_coil, -/turf/open/floor/plasteel/bot, -/area/engine/engineering) -"coZ" = ( -/obj/machinery/power/emitter, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/bot, -/area/engine/engineering) -"cpa" = ( -/obj/machinery/power/emitter, -/turf/open/floor/plasteel/bot, -/area/engine/engineering) -"cpb" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning{ - dir = 10 - }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cpc" = ( -/turf/open/floor/plasteel/warning, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cpd" = ( -/obj/effect/decal/cleanable/oil, -/turf/open/floor/plasteel/warning, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cpe" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning{ - dir = 6 - }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cpf" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral/side{ - dir = 8 - }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cpg" = ( -/obj/structure/bookcase/random/nonfiction, -/turf/open/floor/wood, -/area/library) -"cph" = ( -/obj/machinery/light, -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/obj/machinery/camera{ - c_tag = "Library - Aft"; - dir = 1; - name = "library camera" - }, -/turf/open/floor/wood, -/area/library) -"cpi" = ( -/obj/structure/table/wood, -/obj/item/weapon/storage/pill_bottle/dice, -/obj/machinery/computer/security/telescreen/entertainment{ - pixel_y = -32 - }, -/turf/open/floor/plasteel/grimy, -/area/library) -"cpj" = ( -/obj/machinery/light, -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/obj/machinery/light_switch{ - pixel_y = -26 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/grimy, -/area/library) -"cpk" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/turf/open/floor/plasteel/grimy, -/area/library) -"cpl" = ( -/obj/structure/table/wood, -/obj/item/weapon/clipboard, -/obj/item/toy/figure/librarian, -/obj/machinery/airalarm{ - dir = 8; - icon_state = "alarm0"; - pixel_x = 24 - }, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_y = -26 - }, -/turf/open/floor/plasteel/grimy, -/area/library) -"cpm" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/central) -"cpn" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner, -/area/hallway/primary/central) -"cpo" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass{ - name = "Command Hallway" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/bridge/meeting_room{ - name = "\improper Command Hallway" - }) -"cpp" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 8 - }, -/area/bridge/meeting_room{ - name = "\improper Command Hallway" - }) -"cpq" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 8 - }, -/area/bridge/meeting_room{ - name = "\improper Command Hallway" - }) -"cpr" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/obj/machinery/light, -/turf/open/floor/plasteel/neutral/corner{ - dir = 8 - }, -/area/bridge/meeting_room{ - name = "\improper Command Hallway" - }) -"cps" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/camera{ - c_tag = "Central Hallway - Center Port"; - dir = 1; - name = "hallway camera" - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 8 - }, -/area/bridge/meeting_room{ - name = "\improper Command Hallway" - }) -"cpt" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 8 - }, -/area/bridge/meeting_room{ - name = "\improper Command Hallway" - }) -"cpu" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/open/floor/plasteel/neutral/corner{ - dir = 8 - }, -/area/bridge/meeting_room{ - name = "\improper Command Hallway" - }) -"cpv" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 8 - }, -/area/bridge/meeting_room{ - name = "\improper Command Hallway" - }) -"cpw" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/light/small, -/turf/open/floor/plasteel/neutral/corner{ - dir = 8 - }, -/area/bridge/meeting_room{ - name = "\improper Command Hallway" - }) -"cpx" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/sign/electricshock{ - pixel_x = -32; - pixel_y = -32 - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 8 - }, -/area/bridge/meeting_room{ - name = "\improper Command Hallway" - }) -"cpy" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/blue/corner{ - tag = "icon-bluecorner (NORTH)"; - icon_state = "bluecorner"; - dir = 1 - }, -/area/bridge/meeting_room{ - name = "\improper Command Hallway" - }) -"cpz" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/chair/comfy/black, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/open/floor/plasteel/blue/corner{ - tag = "icon-bluecorner (NORTH)"; - icon_state = "bluecorner"; - dir = 1 - }, -/area/bridge/meeting_room{ - name = "\improper Command Hallway" - }) -"cpA" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/item/device/radio/beacon, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/blue/corner{ - tag = "icon-bluecorner (NORTH)"; - icon_state = "bluecorner"; - dir = 1 - }, -/area/bridge/meeting_room{ - name = "\improper Command Hallway" - }) -"cpB" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/chair/comfy/black, -/obj/effect/landmark/start{ - name = "Assistant" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/blue/corner{ - tag = "icon-bluecorner (NORTH)"; - icon_state = "bluecorner"; - dir = 1 - }, -/area/bridge/meeting_room{ - name = "\improper Command Hallway" - }) -"cpC" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/table/wood, -/obj/item/weapon/storage/fancy/donut_box, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/blue/corner{ - tag = "icon-bluecorner (NORTH)"; - icon_state = "bluecorner"; - dir = 1 - }, -/area/bridge/meeting_room{ - name = "\improper Command Hallway" - }) -"cpD" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/sign/electricshock{ - pixel_x = 32; - pixel_y = -32 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner, -/area/bridge/meeting_room{ - name = "\improper Command Hallway" - }) -"cpE" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/light/small, -/turf/open/floor/plasteel/neutral/corner, -/area/bridge/meeting_room{ - name = "\improper Command Hallway" - }) -"cpF" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner, -/area/bridge/meeting_room{ - name = "\improper Command Hallway" - }) -"cpG" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner, -/area/bridge/meeting_room{ - name = "\improper Command Hallway" - }) -"cpH" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plasteel/neutral/corner, -/area/bridge/meeting_room{ - name = "\improper Command Hallway" - }) -"cpI" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral/corner, -/area/bridge/meeting_room{ - name = "\improper Command Hallway" - }) -"cpJ" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/obj/machinery/light, -/obj/machinery/camera{ - c_tag = "Central Hallway - Center Starboard"; - dir = 1; - name = "hallway camera" - }, -/turf/open/floor/plasteel/neutral/corner, -/area/bridge/meeting_room{ - name = "\improper Command Hallway" - }) -"cpK" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/open/floor/plasteel/neutral/corner, -/area/bridge/meeting_room{ - name = "\improper Command Hallway" - }) -"cpL" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 8 - }, -/area/hallway/primary/central) -"cpM" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/central) -"cpN" = ( -/obj/structure/sign/directions/engineering{ - desc = "A sign that shows there are doors here. There are doors everywhere!"; - icon_state = "doors"; - name = "WARNING: PRESSURIZED DOORS"; - pixel_x = 0; - pixel_y = 0; - tag = "icon-doors" - }, -/turf/closed/wall, -/area/crew_quarters/courtroom) -"cpO" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/tinted/fulltile, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/crew_quarters/courtroom) -"cpP" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral/corner{ - dir = 1 - }, -/area/crew_quarters/locker) -"cpQ" = ( -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/locker) -"cpR" = ( -/obj/structure/chair/stool, -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/locker) -"cpS" = ( -/obj/structure/chair/stool, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/locker) -"cpT" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/locker) -"cpU" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/crew_quarters/locker) -"cpV" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Maintenance Hatch"; - req_access_txt = "12" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/crew_quarters/locker) -"cpW" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plasteel/delivery, -/area/maintenance/starboard) -"cpX" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plating, -/area/maintenance/starboard) -"cpY" = ( -/obj/structure/table, -/obj/item/weapon/storage/box/bodybags, -/obj/effect/decal/cleanable/dirt, -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plating, -/area/maintenance/starboard) -"cpZ" = ( -/obj/structure/table, -/obj/item/clothing/under/rank/security, -/obj/item/weapon/restraints/handcuffs, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/light/small, -/obj/machinery/power/apc{ - dir = 2; - name = "Starboard Maintenance APC"; - pixel_y = -26 - }, -/obj/structure/cable/white, -/turf/open/floor/plating, -/area/maintenance/starboard) -"cqa" = ( -/obj/structure/closet/crate{ - icon_state = "crateopen"; - opened = 1 - }, -/obj/item/clothing/shoes/jackboots, -/obj/item/device/radio, -/obj/item/weapon/storage/secure/briefcase, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 2; - name = "2maintenance loot spawner" - }, -/turf/open/floor/plating, -/area/maintenance/starboard) -"cqb" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/red/corner, -/area/maintenance/starboard) -"cqc" = ( -/obj/structure/cable/white, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/maintenance/starboard) -"cqd" = ( -/obj/structure/reagent_dispensers/peppertank{ - pixel_y = -32 - }, -/obj/structure/rack, -/obj/effect/decal/cleanable/dirt, -/obj/item/weapon/storage/box/flashes, -/turf/open/floor/plating/warnplate/end, -/area/maintenance/starboard) -"cqe" = ( -/turf/closed/wall, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cqf" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cqg" = ( -/obj/structure/window/reinforced, -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/construction/hallway{ - name = "\improper MiniSat Exterior" - }) -"cqh" = ( -/obj/structure/window/reinforced, -/obj/structure/window/reinforced{ - dir = 4; - pixel_x = 0 - }, -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/construction/hallway{ - name = "\improper MiniSat Exterior" - }) -"cqi" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4"; - tag = "" - }, -/turf/open/floor/plating/warnplate{ - dir = 10 - }, -/area/engine/engineering) -"cqj" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/floor/plating/warnplate, -/area/engine/engineering) -"cqk" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/floor/plating/warnplate, -/area/engine/engineering) -"cql" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/camera/emp_proof{ - c_tag = "Containment - Particle Accelerator"; - dir = 1; - network = list("Singularity") - }, -/turf/open/floor/plating/warnplate, -/area/engine/engineering) -"cqm" = ( -/obj/structure/cable{ - icon_state = "1-8" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plating/warnplate, -/area/engine/engineering) -"cqn" = ( -/obj/machinery/button/door{ - id = "engpa"; - name = "Engineering Chamber Shutters Control"; - pixel_y = -26; - req_access_txt = "11" - }, -/turf/open/floor/plating/warnplate{ - dir = 6 - }, -/area/engine/engineering) -"cqo" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/tank/internals/plasma, -/obj/structure/extinguisher_cabinet{ - pixel_x = -26 - }, -/turf/open/floor/plasteel/bot, -/area/engine/engineering) -"cqp" = ( -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral, -/area/engine/engineering) -"cqq" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/engine/engineering) -"cqr" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/stock_parts/cell/high, -/obj/item/weapon/stock_parts/cell/high, -/obj/machinery/cell_charger, -/turf/open/floor/plasteel/delivery, -/area/engine/engineering) -"cqs" = ( -/obj/machinery/the_singularitygen, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/light/small{ - dir = 8 - }, -/turf/open/floor/plasteel/bot, -/area/engine/engineering) -"cqt" = ( -/obj/machinery/portable_atmospherics/canister/toxins, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/bot, -/area/engine/engineering) -"cqu" = ( -/obj/machinery/power/tesla_coil, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/camera{ - c_tag = "Engineering - Secure Storage"; - dir = 1; - name = "engineering camera" - }, -/turf/open/floor/plasteel/bot, -/area/engine/engineering) -"cqv" = ( -/obj/machinery/power/emitter, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/bot, -/area/engine/engineering) -"cqw" = ( -/obj/structure/rack, -/obj/item/weapon/crowbar/red, -/obj/item/weapon/wrench, -/obj/item/weapon/tank/internals/emergency_oxygen/engi, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/bot, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cqx" = ( -/obj/structure/table/reinforced, -/obj/item/stack/sheet/metal{ - amount = 30 - }, -/obj/item/stack/sheet/glass{ - amount = 30 - }, -/obj/item/weapon/electronics/apc, -/obj/item/weapon/electronics/airlock, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/bot, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cqy" = ( -/obj/structure/table/reinforced, -/obj/structure/extinguisher_cabinet{ - pixel_y = -32 - }, -/obj/item/weapon/clipboard, -/obj/item/weapon/folder/blue, -/obj/item/weapon/electronics/firelock, -/obj/item/weapon/stock_parts/console_screen, -/turf/open/floor/plasteel/bot, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cqz" = ( -/obj/structure/table/reinforced, -/obj/item/stack/cable_coil/white, -/obj/item/weapon/electronics/airalarm, -/obj/item/weapon/electronics/firealarm, -/obj/item/weapon/stock_parts/cell/high, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/bot, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cqA" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral/side{ - dir = 8 - }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cqB" = ( -/obj/machinery/door/airlock/glass{ - name = "Library Game Room" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/grimy, -/area/library) -"cqC" = ( -/obj/machinery/door/airlock/glass{ - name = "Library Game Room" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/grimy, -/area/library) -"cqD" = ( -/obj/machinery/status_display, -/turf/closed/wall, -/area/library) -"cqE" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall, -/area/library) -"cqF" = ( -/obj/machinery/door/morgue{ - name = "Librarian's Study"; - req_access_txt = "37" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/library) -"cqG" = ( -/obj/structure/sign/directions/engineering{ - desc = "A direction sign, pointing out which way the Command department is."; - dir = 1; - icon_state = "direction_bridge"; - name = "command department"; - pixel_y = 0; - tag = "icon-direction_bridge" - }, -/turf/closed/wall/r_wall, -/area/ai_monitored/storage/eva{ - name = "E.V.A. Storage" - }) -"cqH" = ( -/turf/closed/wall/r_wall, -/area/ai_monitored/storage/eva{ - name = "E.V.A. Storage" - }) -"cqI" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/command{ - name = "E.V.A. Storage"; - req_access = null; - req_access_txt = "18" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (EAST)"; - icon_state = "plasteel_warn_side"; - dir = 4 - }, -/area/ai_monitored/storage/eva{ - name = "E.V.A. Storage" - }) -"cqJ" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/command{ - name = "E.V.A. Storage"; - req_access = null; - req_access_txt = "18" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (EAST)"; - icon_state = "plasteel_warn_side"; - dir = 4 - }, -/area/ai_monitored/storage/eva{ - name = "E.V.A. Storage" - }) -"cqK" = ( -/obj/structure/cable/white, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/bridge/meeting_room{ - name = "\improper Command Hallway" - }) -"cqL" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 8 - }, -/area/bridge/meeting_room{ - name = "\improper Command Hallway" - }) -"cqM" = ( -/obj/structure/chair/comfy/black{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/blue/corner{ - tag = "icon-bluecorner (NORTH)"; - icon_state = "bluecorner"; - dir = 1 - }, -/area/bridge/meeting_room{ - name = "\improper Command Hallway" - }) -"cqN" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/neutral, -/area/bridge/meeting_room{ - name = "\improper Command Hallway" - }) -"cqO" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/holopad, -/obj/effect/landmark{ - name = "lightsout" - }, -/turf/open/floor/plasteel/bot, -/area/bridge/meeting_room{ - name = "\improper Command Hallway" - }) -"cqP" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/plasteel/neutral, -/area/bridge/meeting_room{ - name = "\improper Command Hallway" - }) -"cqQ" = ( -/obj/structure/chair/comfy/black{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/blue/corner, -/area/bridge/meeting_room{ - name = "\improper Command Hallway" - }) -"cqR" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/obj/machinery/light{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner, -/area/bridge/meeting_room{ - name = "\improper Command Hallway" - }) -"cqS" = ( -/turf/closed/wall/r_wall, -/area/gateway) -"cqT" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall/r_wall, -/area/gateway) -"cqU" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/command{ - name = "Gateway Atrium"; - req_access_txt = "62" - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/gateway) -"cqV" = ( -/obj/machinery/vending/cigarette, -/turf/open/floor/plasteel/bot, -/area/bridge/meeting_room{ - name = "\improper Command Hallway" - }) -"cqW" = ( -/obj/machinery/vending/coffee, -/turf/open/floor/plasteel/delivery, -/area/bridge/meeting_room{ - name = "\improper Command Hallway" - }) -"cqX" = ( -/obj/machinery/vending/cola, -/turf/open/floor/plasteel/delivery, -/area/bridge/meeting_room{ - name = "\improper Command Hallway" - }) -"cqY" = ( -/obj/structure/sign/directions/engineering{ - desc = "A direction sign, pointing out which way the Command department is."; - dir = 1; - icon_state = "direction_bridge"; - name = "command department"; - pixel_y = 0; - tag = "icon-direction_bridge" - }, -/turf/closed/wall/r_wall, -/area/gateway) -"cqZ" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral/corner{ - tag = "icon-neutralcorner (NORTH)"; - icon_state = "neutralcorner"; - dir = 1 - }, -/area/hallway/primary/central) -"cra" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 4 - }, -/area/hallway/primary/central) -"crb" = ( -/obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/door/airlock/glass{ - name = "Starboard Auxiliary Hallway" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/hallway/primary/central) -"crc" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 4 - }, -/area/hallway/primary/central) -"crd" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 4 - }, -/area/hallway/primary/central) -"cre" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 1; - heat_capacity = 1e+006 - }, -/area/hallway/primary/central) -"crf" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 1 - }, -/area/hallway/primary/central) -"crg" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 1 - }, -/area/hallway/primary/central) -"crh" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/camera{ - c_tag = "Dormitory Hallway"; - dir = 2; - name = "hallway camera" - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 1 - }, -/area/hallway/primary/central) -"cri" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/door/firedoor, -/turf/open/floor/plasteel/warning/side, -/area/hallway/primary/central) -"crj" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 1 - }, -/area/hallway/primary/central) -"crk" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock{ - name = "Lockerroom" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/crew_quarters/locker) -"crl" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 1 - }, -/area/crew_quarters/locker) -"crm" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/locker) -"crn" = ( -/obj/structure/chair/stool, -/obj/effect/landmark/start{ - name = "Assistant" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/locker) -"cro" = ( -/obj/structure/table, -/obj/item/weapon/storage/fancy/donut_box, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/locker) -"crp" = ( -/obj/structure/table, -/obj/item/device/camera_film{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/device/camera_film, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/locker) -"crq" = ( -/obj/structure/table, -/obj/item/device/camera, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/locker) -"crr" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 2; - on = 1 - }, -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/locker) -"crs" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/locker) -"crt" = ( -/obj/machinery/disposal/bin, -/obj/structure/disposalpipe/trunk{ - dir = 8 - }, -/turf/open/floor/plasteel/bot, -/area/crew_quarters/locker) -"cru" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/maintenance/starboard) -"crv" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/maintenance/starboard) -"crw" = ( -/obj/structure/girder, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/maintenance/starboard) -"crx" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 1 - }, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cry" = ( -/turf/open/floor/plasteel/neutral/corner{ - dir = 1 - }, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"crz" = ( -/obj/structure/table, -/obj/item/stack/sheet/cloth/ten, -/turf/open/floor/plasteel/neutral/corner{ - dir = 1 - }, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"crA" = ( -/obj/machinery/light{ - dir = 1 - }, -/obj/structure/table, -/obj/item/weapon/clipboard, -/obj/item/weapon/folder/white, -/obj/item/weapon/pen, -/obj/machinery/camera{ - c_tag = "Recreation - Fore"; - dir = 2; - name = "recreation camera" - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 1 - }, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"crB" = ( -/obj/structure/table, -/obj/item/weapon/paper_bin, -/obj/item/weapon/pen, -/turf/open/floor/plasteel/neutral/side{ - dir = 1 - }, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"crC" = ( -/turf/open/floor/plasteel/neutral/corner{ - dir = 4 - }, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"crD" = ( -/turf/open/floor/plasteel/neutral/side{ - dir = 8; - heat_capacity = 1e+006 - }, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"crE" = ( -/obj/structure/closet/masks, -/obj/structure/sign/nanotrasen{ - pixel_x = 32; - pixel_y = 32 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"crF" = ( -/obj/structure/table/reinforced, -/obj/item/clothing/gloves/color/yellow, -/obj/item/weapon/storage/toolbox/electrical, -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/turf/open/floor/plasteel/bot, -/area/engine/engineering) -"crG" = ( -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/yellow, -/area/engine/engineering) -"crH" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/status_display{ - pixel_x = 32 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/engine/engineering) -"crI" = ( -/turf/closed/wall/r_wall, -/area/engine/engineering{ - name = "Engineering Storage" - }) -"crJ" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"crK" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/turf/open/floor/plasteel/black, -/area/library) -"crL" = ( -/obj/structure/easel, -/obj/item/weapon/canvas/twentythreeXnineteen, -/obj/item/weapon/canvas/twentythreeXtwentythree, -/obj/item/weapon/canvas/twentythreeXtwentythree, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/library) -"crM" = ( -/obj/structure/easel, -/obj/item/weapon/canvas/nineteenXnineteen, -/obj/item/weapon/canvas/twentythreeXtwentythree, -/obj/item/weapon/canvas/twentythreeXtwentythree, -/obj/machinery/light_switch{ - pixel_y = 26 - }, -/turf/open/floor/plasteel/black, -/area/library) -"crN" = ( -/obj/structure/table/wood, -/obj/item/weapon/storage/crayons, -/obj/item/weapon/storage/crayons, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/library) -"crO" = ( -/obj/structure/table/wood, -/obj/item/weapon/storage/fancy/candle_box{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/storage/fancy/candle_box, -/turf/open/floor/plasteel/black, -/area/library) -"crP" = ( -/obj/structure/dresser, -/obj/machinery/computer/security/telescreen/entertainment{ - pixel_x = -32 - }, -/turf/open/floor/plasteel/black, -/area/library) -"crQ" = ( -/obj/machinery/light_switch{ - pixel_y = 26 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/library) -"crR" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/black, -/area/library) -"crS" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/library) -"crT" = ( -/obj/structure/bookcase{ - name = "Forbidden Knowledge" - }, -/turf/open/floor/plasteel/black, -/area/library) -"crU" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/light{ - dir = 4 - }, -/obj/machinery/airalarm{ - dir = 8; - icon_state = "alarm0"; - pixel_x = 24 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 4 - }, -/area/hallway/primary/central) -"crV" = ( -/obj/item/stack/cable_coil, -/obj/item/device/multitool, -/obj/structure/table/reinforced, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/ai_monitored/storage/eva{ - name = "E.V.A. Storage" - }) -"crW" = ( -/obj/machinery/light{ - dir = 1 - }, -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/turf/open/floor/plasteel/warning{ - dir = 9 - }, -/area/ai_monitored/storage/eva{ - name = "E.V.A. Storage" - }) -"crX" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/ai_monitored/storage/eva{ - name = "E.V.A. Storage" - }) -"crY" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1 - }, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/ai_monitored/storage/eva{ - name = "E.V.A. Storage" - }) -"crZ" = ( -/obj/machinery/power/apc{ - dir = 1; - name = "E.V.A. Storage APC"; - pixel_x = 0; - pixel_y = 26 - }, -/obj/structure/cable/white{ - tag = "icon-0-2"; - icon_state = "0-2" - }, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/ai_monitored/storage/eva{ - name = "E.V.A. Storage" - }) -"csa" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/ai_monitored/storage/eva{ - name = "E.V.A. Storage" - }) -"csb" = ( -/obj/machinery/light{ - dir = 1 - }, -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/turf/open/floor/plasteel/warning{ - tag = "icon-plasteel_warn (NORTHEAST)"; - icon_state = "plasteel_warn"; - dir = 5 - }, -/area/ai_monitored/storage/eva{ - name = "E.V.A. Storage" - }) -"csc" = ( -/obj/item/stack/packageWrap, -/obj/item/weapon/hand_labeler, -/obj/machinery/newscaster{ - pixel_x = 32 - }, -/obj/structure/table/reinforced, -/obj/machinery/camera{ - c_tag = "Bridge - E.V.A. Fore"; - dir = 2; - name = "command camera" - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/ai_monitored/storage/eva{ - name = "E.V.A. Storage" - }) -"csd" = ( -/obj/structure/cable/white{ - d2 = 2; - icon_state = "0-2"; - tag = "icon-0-2" - }, -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/bridge/meeting_room{ - name = "\improper Command Hallway" - }) -"cse" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral/corner{ - dir = 8 - }, -/area/bridge/meeting_room{ - name = "\improper Command Hallway" - }) -"csf" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/table/wood, -/obj/item/weapon/paper_bin, -/turf/open/floor/plasteel/blue/corner, -/area/bridge/meeting_room{ - name = "\improper Command Hallway" - }) -"csg" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/chair/comfy/black{ - dir = 1 - }, -/obj/effect/landmark/start{ - name = "Assistant" - }, -/turf/open/floor/plasteel/blue/corner, -/area/bridge/meeting_room{ - name = "\improper Command Hallway" - }) -"csh" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/turf/open/floor/plasteel/blue/corner, -/area/bridge/meeting_room{ - name = "\improper Command Hallway" - }) -"csi" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/chair/comfy/black{ - dir = 1 - }, -/turf/open/floor/plasteel/blue/corner, -/area/bridge/meeting_room{ - name = "\improper Command Hallway" - }) -"csj" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1 - }, -/turf/open/floor/plasteel/blue/corner, -/area/bridge/meeting_room{ - name = "\improper Command Hallway" - }) -"csk" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral/corner, -/area/bridge/meeting_room{ - name = "\improper Command Hallway" - }) -"csl" = ( -/obj/structure/cable/white{ - d2 = 2; - icon_state = "0-2"; - tag = "icon-0-2" - }, -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/bridge/meeting_room{ - name = "\improper Command Hallway" - }) -"csm" = ( -/obj/structure/closet/secure_closet/exile, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/bot, -/area/gateway) -"csn" = ( -/obj/structure/cable/white{ - tag = "icon-0-2"; - icon_state = "0-2" - }, -/obj/machinery/power/apc{ - cell_type = 10000; - dir = 1; - name = "Gateway APC"; - pixel_x = 0; - pixel_y = 28 - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/bot, -/area/gateway) -"cso" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/light_switch{ - pixel_x = 26; - pixel_y = 26 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/bot, -/area/gateway) -"csp" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/bot, -/area/gateway) -"csq" = ( -/obj/structure/closet/crate, -/obj/item/stack/sheet/metal/fifty, -/obj/item/stack/rods{ - amount = 25 - }, -/obj/item/weapon/storage/toolbox/emergency, -/obj/item/device/flashlight, -/obj/structure/extinguisher_cabinet{ - pixel_x = 26 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/bot, -/area/gateway) -"csr" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/obj/machinery/airalarm{ - dir = 4; - icon_state = "alarm0"; - pixel_x = -22 - }, -/turf/open/floor/plasteel/neutral/corner{ - tag = "icon-neutralcorner (NORTH)"; - icon_state = "neutralcorner"; - dir = 1 - }, -/area/hallway/primary/central) -"css" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/central) -"cst" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass{ - name = "Starboard Auxiliary Hallway" - }, -/turf/open/floor/plasteel/warning/side, -/area/hallway/primary/central) -"csu" = ( -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/central) -"csv" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 2; - on = 1; - scrub_N2O = 1; - scrub_Toxins = 1 - }, -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/central) -"csw" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/central) -"csx" = ( -/obj/effect/landmark{ - name = "lightsout" - }, -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/central) -"csy" = ( -/obj/machinery/door/firedoor, -/turf/open/floor/plasteel/warning/side, -/area/hallway/primary/central) -"csz" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/central) -"csA" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1 - }, -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/central) -"csB" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/tinted/fulltile, -/turf/open/floor/plating, -/area/crew_quarters/locker) -"csC" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 8 - }, -/area/crew_quarters/locker) -"csD" = ( -/obj/structure/table, -/obj/item/weapon/storage/crayons, -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/locker) -"csE" = ( -/obj/structure/table, -/obj/item/weapon/folder, -/obj/item/weapon/pen, -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/locker) -"csF" = ( -/obj/structure/table, -/obj/item/toy/cards/deck, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHEAST)"; - icon_state = "intact"; - dir = 5 - }, -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/locker) -"csG" = ( -/obj/structure/chair/stool, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/locker) -"csH" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/locker) -"csI" = ( -/obj/structure/table, -/obj/item/weapon/paper_bin, -/obj/item/weapon/pen, -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHWEST)"; - icon_state = "intact"; - dir = 10 - }, -/turf/open/floor/plasteel/neutral/corner, -/area/crew_quarters/locker) -"csJ" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral/side{ - dir = 8; - heat_capacity = 1e+006 - }, -/area/maintenance/starboard) -"csK" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHEAST)"; - icon_state = "intact"; - dir = 5 - }, -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/turf/open/floor/plating, -/area/maintenance/starboard) -"csL" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 1; - heat_capacity = 1e+006 - }, -/area/maintenance/starboard) -"csM" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/delivery, -/area/maintenance/starboard) -"csN" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Maintenance Hatch"; - req_access_txt = "12" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"csO" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHWEST)"; - icon_state = "intact"; - dir = 10 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 1 - }, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"csP" = ( -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"csQ" = ( -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"csR" = ( -/obj/structure/closet/athletic_mixed, -/obj/machinery/light/small{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"csS" = ( -/obj/machinery/field/generator{ - anchored = 1; - state = 2 - }, -/turf/open/floor/plating/warnplate{ - dir = 10 - }, -/area/space) -"csT" = ( -/obj/machinery/field/generator{ - anchored = 1; - state = 2 - }, -/turf/open/floor/plating/warnplate, -/area/space) -"csU" = ( -/obj/machinery/field/generator{ - anchored = 1; - state = 2 - }, -/turf/open/floor/plating/warnplate{ - dir = 6 - }, -/area/space) -"csV" = ( -/obj/machinery/power/rad_collector{ - anchored = 1 - }, -/obj/machinery/power/rad_collector{ - anchored = 1 - }, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/turf/open/floor/plating/warnplate{ - dir = 4; - luminosity = 2; - initial_gas_mix = "o2=0.01;n2=0.01"; - temperature = 2.7 - }, -/area/engine/engineering) -"csW" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "engpa"; - name = "Engineering Chamber Shutters" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/turf/open/floor/plating/warnplate{ - dir = 8 - }, -/area/engine/engineering) -"csX" = ( -/obj/structure/rack, -/obj/item/weapon/crowbar, -/obj/item/weapon/wirecutters, -/obj/item/stack/cable_coil/white, -/turf/open/floor/plasteel/bot, -/area/engine/engineering) -"csY" = ( -/obj/structure/rack, -/obj/machinery/button/door{ - id = "engpa"; - name = "Engineering Chamber Shutters Control"; - pixel_y = 26; - req_access_txt = "11" - }, -/obj/item/weapon/storage/belt/utility, -/obj/item/weapon/weldingtool, -/obj/item/clothing/head/welding, -/turf/open/floor/plasteel/bot, -/area/engine/engineering) -"csZ" = ( -/obj/structure/closet/toolcloset, -/turf/open/floor/plasteel/bot, -/area/engine/engineering) -"cta" = ( -/obj/structure/closet/secure_closet/engineering_electrical, -/obj/machinery/light_switch{ - pixel_x = -26; - pixel_y = 26 - }, -/turf/open/floor/plasteel/bot, -/area/engine/engineering) -"ctb" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/airalarm{ - dir = 8; - icon_state = "alarm0"; - pixel_x = 24 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/engine/engineering) -"ctc" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/obj/effect/decal/cleanable/dirt, -/obj/structure/sign/electricshock{ - pixel_y = 32 - }, -/turf/open/floor/plasteel/bot, -/area/engine/engineering{ - name = "Engineering Storage" - }) -"ctd" = ( -/obj/machinery/suit_storage_unit/engine, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/ai_status_display{ - pixel_y = 32 - }, -/turf/open/floor/plasteel/warning{ - dir = 10 - }, -/area/engine/engineering{ - name = "Engineering Storage" - }) -"cte" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/light{ - dir = 1 - }, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = 0; - pixel_y = 26 - }, -/obj/machinery/suit_storage_unit/engine, -/turf/open/floor/plasteel/warning, -/area/engine/engineering{ - name = "Engineering Storage" - }) -"ctf" = ( -/obj/machinery/suit_storage_unit/engine, -/obj/machinery/status_display{ - pixel_y = 32 - }, -/turf/open/floor/plasteel/warning{ - dir = 6 - }, -/area/engine/engineering{ - name = "Engineering Storage" - }) -"ctg" = ( -/obj/structure/table/reinforced, -/obj/item/stack/sheet/metal{ - amount = 50 - }, -/obj/item/stack/sheet/metal{ - amount = 50 - }, -/obj/item/stack/sheet/glass{ - amount = 50 - }, -/obj/item/stack/sheet/glass{ - amount = 50 - }, -/obj/item/weapon/crowbar, -/obj/item/weapon/grenade/chem_grenade/metalfoam, -/obj/item/weapon/grenade/chem_grenade/metalfoam, -/obj/structure/sign/poster{ - icon_state = "poster22_legit"; - pixel_y = 32; - tag = "icon-poster22_legit" - }, -/turf/open/floor/plasteel/bot, -/area/engine/engineering{ - name = "Engineering Storage" - }) -"cth" = ( -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cti" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"ctj" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 1 - }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"ctk" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"ctl" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"ctm" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"ctn" = ( -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral/side{ - dir = 6 - }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cto" = ( -/obj/structure/table/wood, -/obj/item/weapon/clipboard, -/obj/item/weapon/folder, -/obj/machinery/ai_status_display{ - pixel_x = -32 - }, -/turf/open/floor/plasteel/black, -/area/library) -"ctp" = ( -/turf/open/floor/plasteel/grimy, -/area/library) -"ctq" = ( -/obj/structure/chair/office/dark, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/plasteel/grimy, -/area/library) -"ctr" = ( -/obj/structure/chair/office/dark, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/grimy, -/area/library) -"cts" = ( -/obj/machinery/holopad, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/grimy, -/area/library) -"ctt" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/library) -"ctu" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/black, -/area/library) -"ctv" = ( -/obj/structure/table/wood, -/obj/item/weapon/storage/briefcase{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/storage/secure/briefcase, -/obj/machinery/newscaster{ - pixel_x = 32 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/library) -"ctw" = ( -/obj/structure/destructible/cult/tome, -/obj/item/weapon/book/codex_gigas, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/library) -"ctx" = ( -/obj/effect/landmark{ - name = "revenantspawn" - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/black, -/area/library) -"cty" = ( -/obj/structure/chair/comfy/black, -/obj/effect/landmark/start{ - name = "Librarian" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHEAST)"; - icon_state = "intact"; - dir = 5 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/library) -"ctz" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/library) -"ctA" = ( -/obj/machinery/newscaster{ - pixel_x = 32 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/library) -"ctB" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/camera{ - c_tag = "Central Hallway - Aft Port"; - dir = 4; - name = "hallway camera" - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 8 - }, -/area/hallway/primary/central) -"ctC" = ( -/obj/item/stack/sheet/plasteel/twenty, -/obj/item/stack/sheet/rglass{ - amount = 30; - pixel_x = 2; - pixel_y = -2 - }, -/obj/item/weapon/crowbar, -/obj/machinery/firealarm{ - dir = 8; - pixel_x = -24 - }, -/obj/structure/table/reinforced, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/ai_monitored/storage/eva{ - name = "E.V.A. Storage" - }) -"ctD" = ( -/turf/open/floor/plasteel/warning{ - dir = 10 - }, -/area/ai_monitored/storage/eva{ - name = "E.V.A. Storage" - }) -"ctE" = ( -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHEAST)"; - icon_state = "intact"; - dir = 5 - }, -/turf/open/floor/plasteel/warning, -/area/ai_monitored/storage/eva{ - name = "E.V.A. Storage" - }) -"ctF" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHWEST)"; - icon_state = "intact"; - dir = 10 - }, -/turf/open/floor/plasteel/warning, -/area/ai_monitored/storage/eva{ - name = "E.V.A. Storage" - }) -"ctG" = ( -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/warning, -/area/ai_monitored/storage/eva{ - name = "E.V.A. Storage" - }) -"ctH" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHEAST)"; - icon_state = "intact"; - dir = 6 - }, -/turf/open/floor/plasteel/warning, -/area/ai_monitored/storage/eva{ - name = "E.V.A. Storage" - }) -"ctI" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHWEST)"; - icon_state = "intact"; - dir = 9 - }, -/turf/open/floor/plasteel/warning, -/area/ai_monitored/storage/eva{ - name = "E.V.A. Storage" - }) -"ctJ" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/warning{ - dir = 6 - }, -/area/ai_monitored/storage/eva{ - name = "E.V.A. Storage" - }) -"ctK" = ( -/obj/machinery/cell_charger, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/table/reinforced, -/obj/item/weapon/stock_parts/cell/high, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/ai_monitored/storage/eva{ - name = "E.V.A. Storage" - }) -"ctL" = ( -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/ai_monitored/storage/eva{ - name = "E.V.A. Storage" - }) -"ctM" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral/corner{ - dir = 8 - }, -/area/bridge/meeting_room{ - name = "\improper Command Hallway" - }) -"ctN" = ( -/turf/open/floor/plasteel/neutral/corner{ - dir = 8 - }, -/area/bridge/meeting_room{ - name = "\improper Command Hallway" - }) -"ctO" = ( -/turf/open/floor/plasteel/neutral/side, -/area/bridge/meeting_room{ - name = "\improper Command Hallway" - }) -"ctP" = ( -/turf/open/floor/plasteel/neutral/corner, -/area/bridge/meeting_room{ - name = "\improper Command Hallway" - }) -"ctQ" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral/corner, -/area/bridge/meeting_room{ - name = "\improper Command Hallway" - }) -"ctR" = ( -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/gateway) -"ctS" = ( -/obj/structure/closet/secure_closet/medical1, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/bot, -/area/gateway) -"ctT" = ( -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/warning{ - tag = "icon-plasteel_warn (NORTHWEST)"; - icon_state = "plasteel_warn"; - dir = 9 - }, -/area/gateway) -"ctU" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHEAST)"; - icon_state = "intact"; - dir = 5 - }, -/turf/open/floor/plasteel/warning{ - tag = "icon-warning (NORTH)"; - dir = 1 - }, -/area/gateway) -"ctV" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHWEST)"; - icon_state = "intact"; - dir = 10 - }, -/turf/open/floor/plasteel/warning{ - tag = "icon-warning (NORTHEAST)"; - dir = 5 - }, -/area/gateway) -"ctW" = ( -/obj/structure/table, -/obj/item/weapon/storage/firstaid/regular, -/turf/open/floor/plasteel/bot, -/area/gateway) -"ctX" = ( -/obj/structure/cable/white{ - tag = "icon-0-2"; - icon_state = "0-2" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/gateway) -"ctY" = ( -/obj/machinery/gateway{ - dir = 9 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/vault{ - dir = 1 - }, -/area/gateway) -"ctZ" = ( -/obj/machinery/gateway{ - dir = 1 - }, -/obj/machinery/status_display{ - density = 0; - layer = 4; - pixel_x = 0; - pixel_y = 32 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/gateway) -"cua" = ( -/obj/machinery/gateway{ - dir = 5 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/vault{ - dir = 4 - }, -/area/gateway) -"cub" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/plasteel/neutral/corner{ - tag = "icon-neutralcorner (NORTH)"; - icon_state = "neutralcorner"; - dir = 1 - }, -/area/hallway/primary/central) -"cuc" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/neutral/corner, -/area/hallway/primary/central) -"cud" = ( -/obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/door/airlock/glass{ - name = "Starboard Auxiliary Hallway" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/hallway/primary/central) -"cue" = ( -/obj/machinery/light, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner, -/area/hallway/primary/central) -"cuf" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner, -/area/hallway/primary/central) -"cug" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/door/firedoor, -/turf/open/floor/plasteel/warning/side, -/area/hallway/primary/central) -"cuh" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 8; - heat_capacity = 1e+006 - }, -/area/hallway/primary/central) -"cui" = ( -/obj/machinery/light, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 8; - heat_capacity = 1e+006 - }, -/area/hallway/primary/central) -"cuj" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/airalarm{ - dir = 1; - icon_state = "alarm0"; - pixel_y = -22 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 8; - heat_capacity = 1e+006 - }, -/area/hallway/primary/central) -"cuk" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock{ - name = "Lockerroom" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/crew_quarters/locker) -"cul" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 8; - heat_capacity = 1e+006 - }, -/area/crew_quarters/locker) -"cum" = ( -/obj/machinery/holopad, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/bot, -/area/crew_quarters/locker) -"cun" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/locker) -"cuo" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/locker) -"cup" = ( -/obj/effect/landmark{ - name = "lightsout" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/locker) -"cuq" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHWEST)"; - icon_state = "intact"; - dir = 9 - }, -/obj/structure/disposalpipe/junction, -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/locker) -"cur" = ( -/obj/structure/table, -/obj/item/weapon/storage/firstaid/regular, -/obj/machinery/status_display{ - pixel_x = 32 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral/corner, -/area/crew_quarters/locker) -"cus" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHEAST)"; - icon_state = "intact"; - dir = 5 - }, -/turf/open/floor/plating, -/area/maintenance/starboard) -"cut" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side, -/area/maintenance/starboard) -"cuu" = ( -/obj/structure/closet/crate{ - icon_state = "crateopen"; - opened = 1 - }, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 2; - name = "2maintenance loot spawner" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/starboard) -"cuv" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/girder, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/starboard) -"cuw" = ( -/obj/structure/rack, -/obj/item/weapon/wrench, -/obj/effect/spawner/lootdrop/maintenance, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side, -/area/maintenance/starboard) -"cux" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/light/small, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side, -/area/maintenance/starboard) -"cuy" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 6 - }, -/area/maintenance/starboard) -"cuz" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cuA" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 1 - }, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cuB" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cuC" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/weightlifter, -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cuD" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 1; - heat_capacity = 1e+006 - }, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cuE" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/obj/structure/stacklifter, -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cuF" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cuG" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHWEST)"; - icon_state = "intact"; - dir = 10 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 4 - }, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cuH" = ( -/obj/structure/closet/boxinggloves, -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cuI" = ( -/obj/machinery/power/grounding_rod, -/turf/open/floor/plating/warnplate/corner{ - dir = 1 - }, -/area/space) -"cuJ" = ( -/turf/open/floor/plating/warnplate, -/area/space) -"cuK" = ( -/obj/machinery/power/tesla_coil, -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/turf/open/floor/plating/warnplate, -/area/space) -"cuL" = ( -/obj/machinery/power/grounding_rod, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plating/warnplate/corner, -/area/space) -"cuM" = ( -/obj/machinery/door/poddoor/shutters/preopen{ - id = "engpa"; - name = "Engineering Chamber Shutters" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4"; - tag = "" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/turf/open/floor/plating/warnplate{ - dir = 8 - }, -/area/engine/engineering) -"cuN" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/turf/open/floor/plasteel/neutral, -/area/engine/engineering) -"cuO" = ( -/obj/structure/cable/white{ - d2 = 2; - icon_state = "0-2"; - tag = "icon-0-2" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/engine/engineering{ - name = "Engineering Storage" - }) -"cuP" = ( -/obj/structure/rack, -/obj/item/clothing/gloves/color/black, -/obj/item/weapon/wrench, -/obj/item/clothing/glasses/meson/engine, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/light_switch{ - pixel_x = -22; - pixel_y = 26 - }, -/turf/open/floor/plasteel/bot, -/area/engine/engineering{ - name = "Engineering Storage" - }) -"cuQ" = ( -/turf/open/floor/plasteel/yellow/side{ - dir = 1; - icon_state = "yellow"; - initial_gas_mix = "o2=22;n2=82;TEMP=293.15"; - tag = "icon-yellow (NORTH)" - }, -/area/engine/engineering{ - name = "Engineering Storage" - }) -"cuR" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 2; - on = 1; - scrub_N2O = 1; - scrub_Toxins = 1 - }, -/turf/open/floor/plasteel/yellow/side{ - dir = 1; - icon_state = "yellow"; - initial_gas_mix = "o2=22;n2=82;TEMP=293.15"; - tag = "icon-yellow (NORTH)" - }, -/area/engine/engineering{ - name = "Engineering Storage" - }) -"cuS" = ( -/obj/structure/table/reinforced, -/obj/item/stack/cable_coil/white{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/stack/cable_coil/white, -/obj/item/weapon/electronics/airlock, -/obj/item/weapon/electronics/airlock, -/obj/effect/decal/cleanable/dirt, -/obj/structure/extinguisher_cabinet{ - pixel_x = 26 - }, -/turf/open/floor/plasteel/bot, -/area/engine/engineering{ - name = "Engineering Storage" - }) -"cuT" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cuU" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral/side{ - dir = 1; - heat_capacity = 1e+006 - }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cuV" = ( -/obj/machinery/light{ - dir = 8 - }, -/obj/machinery/disposal/bin, -/obj/structure/sign/kiddieplaque{ - desc = "A long list of rules to be followed when in the library, extolling the virtues of being quiet at all times and threatening those who would dare eat hot food inside."; - name = "Library Rules Sign"; - pixel_x = -32; - pixel_y = 0 - }, -/obj/structure/disposalpipe/trunk{ - dir = 4 - }, -/obj/machinery/camera{ - c_tag = "Library Backroom"; - dir = 4; - name = "library camera" - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/library) -"cuW" = ( -/obj/structure/chair/office/dark{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/grimy, -/area/library) -"cuX" = ( -/obj/structure/table/wood, -/obj/item/device/paicard, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/carpet, -/area/library) -"cuY" = ( -/obj/structure/table/wood, -/obj/item/weapon/folder, -/obj/item/weapon/pen, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/carpet, -/area/library) -"cuZ" = ( -/obj/structure/chair/office/dark{ - dir = 8 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/grimy, -/area/library) -"cva" = ( -/obj/effect/landmark{ - name = "blobstart" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/library) -"cvb" = ( -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/library) -"cvc" = ( -/obj/machinery/photocopier, -/obj/machinery/light{ - icon_state = "tube1"; - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/library) -"cvd" = ( -/obj/structure/filingcabinet, -/obj/machinery/airalarm{ - dir = 1; - icon_state = "alarm0"; - pixel_y = -22 - }, -/turf/open/floor/plasteel/black, -/area/library) -"cve" = ( -/obj/structure/table/wood, -/obj/item/weapon/paper_bin, -/obj/item/weapon/pen, -/obj/machinery/status_display{ - pixel_x = 0; - pixel_y = -32 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/library) -"cvf" = ( -/obj/machinery/light, -/obj/structure/table/wood, -/obj/item/weapon/folder, -/obj/item/device/laser_pointer{ - pixel_x = 3 - }, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_y = -26 - }, -/turf/open/floor/plasteel/black, -/area/library) -"cvg" = ( -/obj/structure/table/wood, -/obj/item/device/taperecorder, -/obj/item/device/camera, -/obj/machinery/ai_status_display{ - pixel_y = -32 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/library) -"cvh" = ( -/obj/machinery/photocopier, -/turf/open/floor/plasteel/black, -/area/library) -"cvi" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/firealarm{ - dir = 4; - icon_state = "fire0"; - pixel_x = 24; - pixel_y = 0; - tag = "icon-fire0 (EAST)" - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 4 - }, -/area/hallway/primary/central) -"cvj" = ( -/obj/machinery/door/window/northleft{ - dir = 4; - name = "Magboot Storage"; - pixel_x = -1; - pixel_y = 0; - req_access_txt = "19" - }, -/obj/structure/window/reinforced{ - dir = 1; - pixel_y = 1 - }, -/obj/structure/rack{ - dir = 8; - layer = 2.9 - }, -/obj/item/clothing/shoes/magboots{ - pixel_x = -4; - pixel_y = 3 - }, -/obj/item/clothing/shoes/magboots{ - pixel_x = 0; - pixel_y = 0 - }, -/obj/item/clothing/shoes/magboots{ - pixel_x = 4; - pixel_y = -3 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/ai_monitored/storage/eva{ - name = "E.V.A. Storage" - }) -"cvk" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/ai_monitored/storage/eva{ - name = "E.V.A. Storage" - }) -"cvl" = ( -/obj/machinery/suit_storage_unit/standard_unit, -/turf/open/floor/plasteel/delivery, -/area/ai_monitored/storage/eva{ - name = "E.V.A. Storage" - }) -"cvm" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/ai_monitored/storage/eva{ - name = "E.V.A. Storage" - }) -"cvn" = ( -/obj/item/device/radio/beacon, -/turf/open/floor/plasteel/neutral, -/area/ai_monitored/storage/eva{ - name = "E.V.A. Storage" - }) -"cvo" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/ai_monitored/storage/eva{ - name = "E.V.A. Storage" - }) -"cvp" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/ai_monitored/storage/eva{ - name = "E.V.A. Storage" - }) -"cvq" = ( -/obj/machinery/suit_storage_unit/standard_unit, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/ai_monitored/storage/eva{ - name = "E.V.A. Storage" - }) -"cvr" = ( -/obj/structure/cable/white{ - tag = "icon-0-2"; - icon_state = "0-2" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "corporatelounge"; - name = "Corporate Lounge Shutters" - }, -/turf/open/floor/plating, -/area/assembly/showroom{ - name = "\improper Corporate Showroom" - }) -"cvs" = ( -/turf/closed/wall/r_wall, -/area/assembly/showroom{ - name = "\improper Corporate Showroom" - }) -"cvt" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/command{ - name = "Corporate Lounge"; - req_access = null; - req_access_txt = "19" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/wood, -/area/assembly/showroom{ - name = "\improper Corporate Showroom" - }) -"cvu" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/command{ - name = "Corporate Lounge"; - req_access = null; - req_access_txt = "19" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/wood, -/area/assembly/showroom{ - name = "\improper Corporate Showroom" - }) -"cvv" = ( -/obj/structure/bed/roller, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/delivery, -/area/gateway) -"cvw" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/gateway) -"cvx" = ( -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/neutral, -/area/gateway) -"cvy" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/warning{ - tag = "icon-warning (EAST)"; - dir = 4 - }, -/area/gateway) -"cvz" = ( -/obj/structure/table, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/item/weapon/clipboard, -/obj/item/weapon/paper/pamphlet, -/obj/item/weapon/paper/pamphlet, -/obj/item/weapon/paper/pamphlet, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/bot, -/area/gateway) -"cvA" = ( -/obj/structure/cable/white, -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/gateway) -"cvB" = ( -/obj/machinery/gateway{ - dir = 8 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/gateway) -"cvC" = ( -/obj/machinery/gateway/centerstation, -/obj/structure/cable/white{ - tag = "icon-0-2"; - icon_state = "0-2" - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/black, -/area/gateway) -"cvD" = ( -/obj/machinery/gateway{ - dir = 4 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/gateway) -"cvE" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/camera{ - c_tag = "Central Hallway - Dormitory Hallway"; - dir = 4; - name = "hallway camera" - }, -/turf/open/floor/plasteel/neutral/corner{ - tag = "icon-neutralcorner (NORTH)"; - icon_state = "neutralcorner"; - dir = 1 - }, -/area/hallway/primary/central) -"cvF" = ( -/turf/closed/wall, -/area/crew_quarters/locker/locker_toilet{ - name = "\improper Restrooms" - }) -"cvG" = ( -/obj/machinery/door/firedoor, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/door/airlock{ - name = "Primary Restroom" - }, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/crew_quarters/locker/locker_toilet{ - name = "\improper Restrooms" - }) -"cvH" = ( -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/obj/machinery/firealarm{ - dir = 8; - pixel_x = -24 - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 8; - heat_capacity = 1e+006 - }, -/area/crew_quarters/locker) -"cvI" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/locker) -"cvJ" = ( -/obj/structure/table, -/obj/item/weapon/storage/toolbox/mechanical{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/storage/toolbox/emergency, -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/locker) -"cvK" = ( -/obj/structure/table, -/obj/item/toy/foamblade, -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/locker) -"cvL" = ( -/obj/structure/table, -/obj/item/weapon/storage/briefcase, -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/locker) -"cvM" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/locker) -"cvN" = ( -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/locker) -"cvO" = ( -/obj/structure/table, -/obj/item/weapon/folder, -/obj/item/weapon/pen, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral/corner, -/area/crew_quarters/locker) -"cvP" = ( -/turf/closed/wall, -/area/crew_quarters/sleep) -"cvQ" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 1 - }, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cvR" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cvS" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 8; - heat_capacity = 1e+006 - }, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cvT" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cvU" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/punching_bag, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cvV" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cvW" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHWEST)"; - icon_state = "intact"; - dir = 10 - }, -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cvX" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral/corner{ - dir = 4 - }, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cvY" = ( -/obj/structure/lattice, -/obj/machinery/camera/emp_proof{ - c_tag = "Containment - Aft Port"; - dir = 4; - icon_state = "camera"; - network = list("Singularity"); - tag = "icon-camera (NORTHEAST)" - }, -/turf/open/space, -/area/space) -"cvZ" = ( -/obj/structure/lattice/catwalk, -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4"; - tag = "" - }, -/turf/open/space, -/area/space) -"cwa" = ( -/obj/structure/lattice/catwalk, -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4"; - tag = "" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/space, -/area/space) -"cwb" = ( -/obj/structure/lattice/catwalk, -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/turf/open/space, -/area/space) -"cwc" = ( -/obj/machinery/power/rad_collector{ - anchored = 1 - }, -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/turf/open/floor/plating/warnplate{ - dir = 4; - luminosity = 2; - initial_gas_mix = "o2=0.01;n2=0.01"; - temperature = 2.7 - }, -/area/engine/engineering) -"cwd" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/landmark/start{ - name = "Station Engineer" - }, -/turf/open/floor/plasteel/neutral, -/area/engine/engineering) -"cwe" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/paper_bin, -/obj/item/weapon/pen, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/delivery, -/area/engine/engineering) -"cwf" = ( -/obj/structure/table/reinforced, -/obj/item/stack/packageWrap, -/obj/item/weapon/hand_labeler, -/turf/open/floor/plasteel/delivery, -/area/engine/engineering) -"cwg" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/engine/engineering) -"cwh" = ( -/obj/structure/cable/white, -/obj/structure/cable/white{ - d2 = 2; - icon_state = "0-2"; - tag = "icon-0-2" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plating, -/area/engine/engineering{ - name = "Engineering Storage" - }) -"cwi" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/obj/machinery/power/port_gen/pacman, -/turf/open/floor/plasteel/bot, -/area/engine/engineering{ - name = "Engineering Storage" - }) -"cwj" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/neutral, -/area/engine/engineering{ - name = "Engineering Storage" - }) -"cwk" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHWEST)"; - icon_state = "intact"; - dir = 9 - }, -/turf/open/floor/plasteel/yellow, -/area/engine/engineering{ - name = "Engineering Storage" - }) -"cwl" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/neutral, -/area/engine/engineering{ - name = "Engineering Storage" - }) -"cwm" = ( -/obj/structure/table/reinforced, -/obj/item/clothing/shoes/magboots{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/clothing/shoes/magboots, -/obj/machinery/airalarm{ - dir = 8; - icon_state = "alarm0"; - pixel_x = 24 - }, -/turf/open/floor/plasteel/delivery, -/area/engine/engineering{ - name = "Engineering Storage" - }) -"cwn" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cwo" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/table/reinforced, -/obj/item/weapon/storage/toolbox/mechanical, -/obj/item/device/flashlight, -/turf/open/floor/plasteel/bot, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cwp" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/tank/internals/emergency_oxygen{ - pixel_x = 6 - }, -/obj/item/weapon/tank/internals/emergency_oxygen{ - pixel_x = -6 - }, -/obj/item/clothing/mask/breath, -/obj/item/clothing/mask/breath, -/obj/structure/sign/nosmoking_2{ - pixel_y = 32 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cwq" = ( -/obj/structure/rack, -/obj/item/clothing/gloves/color/black, -/obj/item/weapon/wrench, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/light/small{ - dir = 1 - }, -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plasteel/bot, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cwr" = ( -/obj/effect/decal/cleanable/dirt, -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/obj/effect/decal/cleanable/cobweb/cobweb2, -/turf/open/floor/plasteel/delivery, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cws" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/obj/structure/extinguisher_cabinet{ - pixel_x = -26 - }, -/turf/open/floor/plasteel/black, -/area/library) -"cwt" = ( -/obj/structure/chair/office/dark{ - dir = 4 - }, -/turf/open/floor/plasteel/grimy, -/area/library) -"cwu" = ( -/obj/structure/table/wood, -/obj/item/weapon/storage/pill_bottle/dice, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/carpet, -/area/library) -"cwv" = ( -/obj/structure/table/wood, -/obj/item/toy/cards/deck/cas{ - pixel_x = -5; - pixel_y = 5 - }, -/obj/item/toy/cards/deck/cas/black{ - pixel_x = 5; - pixel_y = 5 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/carpet, -/area/library) -"cww" = ( -/obj/structure/chair/office/dark{ - dir = 8 - }, -/turf/open/floor/plasteel/grimy, -/area/library) -"cwx" = ( -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/library) -"cwy" = ( -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/black, -/area/library) -"cwz" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/obj/machinery/newscaster{ - pixel_x = 32 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/library) -"cwA" = ( -/obj/structure/sign/nanotrasen, -/turf/closed/wall/r_wall, -/area/ai_monitored/storage/eva{ - name = "E.V.A. Storage" - }) -"cwB" = ( -/obj/structure/closet/crate/rcd{ - pixel_y = 4 - }, -/obj/machinery/door/window/northleft{ - dir = 4; - name = "RCD Storage"; - pixel_x = 1; - pixel_y = 0; - req_access_txt = "19" - }, -/obj/structure/window/reinforced, -/obj/structure/window/reinforced{ - dir = 1; - pixel_y = 1 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/ai_monitored/storage/eva{ - name = "E.V.A. Storage" - }) -"cwC" = ( -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/ai_monitored/storage/eva{ - name = "E.V.A. Storage" - }) -"cwD" = ( -/obj/structure/tank_dispenser/oxygen, -/turf/open/floor/plasteel/bot, -/area/ai_monitored/storage/eva{ - name = "E.V.A. Storage" - }) -"cwE" = ( -/obj/machinery/camera/motion{ - c_tag = "E.V.A. Storage"; - dir = 8; - name = "motion-sensitive command camera" - }, -/obj/machinery/requests_console{ - department = "E.V.A. Storage"; - departmentType = 0; - name = "E.V.A. RC"; - pixel_x = 32; - pixel_y = 0 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/ai_monitored/storage/eva{ - name = "E.V.A. Storage" - }) -"cwF" = ( -/turf/closed/wall, -/area/ai_monitored/storage/eva{ - name = "E.V.A. Storage" - }) -"cwG" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/window/reinforced, -/obj/structure/window/reinforced{ - dir = 4 - }, -/obj/structure/showcase{ - desc = "A stand with an empty old NanoTrasen Corporation combat mech bolted to it. It is described as the premier unit used to defend corporate interests and employees."; - icon = 'icons/mecha/mecha.dmi'; - icon_state = "marauder"; - name = "combat mech exhibit" - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/grimy, -/area/assembly/showroom{ - name = "\improper Corporate Showroom" - }) -"cwH" = ( -/obj/structure/bookcase, -/obj/structure/sign/nanotrasen{ - pixel_x = 0; - pixel_y = 32 - }, -/turf/open/floor/wood, -/area/assembly/showroom{ - name = "\improper Corporate Showroom" - }) -"cwI" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/wood, -/area/assembly/showroom{ - name = "\improper Corporate Showroom" - }) -"cwJ" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/grimy, -/area/assembly/showroom{ - name = "\improper Corporate Showroom" - }) -"cwK" = ( -/obj/machinery/ai_status_display{ - pixel_y = 32 - }, -/obj/machinery/camera{ - c_tag = "Bridge - Corporate Lounge"; - dir = 2; - name = "command camera" - }, -/turf/open/floor/plasteel/vault{ - dir = 6 - }, -/area/assembly/showroom{ - name = "\improper Corporate Showroom" - }) -"cwL" = ( -/obj/structure/fireplace, -/turf/open/floor/plasteel/vault, -/area/assembly/showroom{ - name = "\improper Corporate Showroom" - }) -"cwM" = ( -/obj/machinery/status_display{ - pixel_x = 0; - pixel_y = 32 - }, -/turf/open/floor/plasteel/vault{ - dir = 10 - }, -/area/assembly/showroom{ - name = "\improper Corporate Showroom" - }) -"cwN" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/wood, -/area/assembly/showroom{ - name = "\improper Corporate Showroom" - }) -"cwO" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/window/reinforced, -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/structure/showcase{ - desc = "A flimsy model of a standard NanoTrasen automated loyalty implant machine. With secure positioning harnesses and a robotic surgical injector, brain damage and other serious medical anomalies are now up to 60% less likely!"; - icon = 'icons/obj/machines/implantchair.dmi'; - icon_state = "implantchair"; - layer = 2.7; - name = "NanoTrasen automated loyalty implanter exhibit"; - pixel_x = 0; - pixel_y = 4 - }, -/turf/open/floor/plasteel/grimy, -/area/assembly/showroom{ - name = "\improper Corporate Showroom" - }) -"cwP" = ( -/obj/structure/rack, -/obj/item/stack/medical/gauze, -/obj/item/stack/medical/bruise_pack, -/obj/item/stack/medical/ointment, -/obj/item/weapon/reagent_containers/syringe/epinephrine{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/weapon/reagent_containers/syringe/charcoal, -/obj/machinery/vending/wallmed{ - name = "Emergency NanoMed"; - pixel_x = 0; - pixel_y = 0; - req_access_txt = "0"; - use_power = 0 - }, -/obj/machinery/camera{ - c_tag = "Bridge - Gateway Atrium"; - dir = 4; - name = "command camera" - }, -/turf/open/floor/plasteel/bot, -/area/gateway) -"cwQ" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/gateway) -"cwR" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/neutral, -/area/gateway) -"cwS" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/warning{ - tag = "icon-warning (EAST)"; - dir = 4 - }, -/area/gateway) -"cwT" = ( -/obj/structure/tank_dispenser/oxygen, -/obj/machinery/light{ - icon_state = "tube1"; - dir = 4 - }, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = 26 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/delivery, -/area/gateway) -"cwU" = ( -/turf/closed/wall, -/area/gateway) -"cwV" = ( -/obj/machinery/gateway{ - dir = 10 - }, -/obj/machinery/light{ - dir = 8 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/vault{ - dir = 4 - }, -/area/gateway) -"cwW" = ( -/obj/machinery/gateway, -/obj/structure/cable/white{ - tag = "icon-0-2"; - icon_state = "0-2" - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/gateway) -"cwX" = ( -/obj/machinery/gateway{ - dir = 6 - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/camera{ - c_tag = "Bridge - Gateway Chamber"; - dir = 8; - name = "command camera" - }, -/turf/open/floor/plasteel/vault{ - dir = 1 - }, -/area/gateway) -"cwY" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = -26; - pixel_y = 0 - }, -/turf/open/floor/plasteel/neutral/corner{ - tag = "icon-neutralcorner (NORTH)"; - icon_state = "neutralcorner"; - dir = 1 - }, -/area/hallway/primary/central) -"cwZ" = ( -/obj/machinery/shower{ - icon_state = "shower"; - dir = 4 - }, -/obj/item/weapon/soap/nanotrasen, -/turf/open/floor/plasteel/neutral/corner{ - dir = 1 - }, -/area/crew_quarters/locker/locker_toilet{ - name = "\improper Restrooms" - }) -"cxa" = ( -/obj/machinery/light/small{ - dir = 1 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 1; - heat_capacity = 1e+006 - }, -/area/crew_quarters/locker/locker_toilet{ - name = "\improper Restrooms" - }) -"cxb" = ( -/obj/machinery/shower{ - dir = 8; - icon_state = "shower" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 4 - }, -/area/crew_quarters/locker/locker_toilet{ - name = "\improper Restrooms" - }) -"cxc" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/crew_quarters/locker/locker_toilet{ - name = "\improper Restrooms" - }) -"cxd" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/firealarm{ - dir = 8; - pixel_x = -24 - }, -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner{ - tag = "icon-neutralcorner (NORTH)"; - icon_state = "neutralcorner"; - dir = 1 - }, -/area/crew_quarters/locker/locker_toilet{ - name = "\improper Restrooms" - }) -"cxe" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 4 - }, -/area/crew_quarters/locker/locker_toilet{ - name = "\improper Restrooms" - }) -"cxf" = ( -/obj/structure/cable/white{ - tag = "icon-0-2"; - icon_state = "0-2" - }, -/obj/machinery/power/apc{ - cell_type = 5000; - dir = 1; - name = "Primary Restroom APC"; - pixel_x = 0; - pixel_y = 25 - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/obj/machinery/camera{ - c_tag = "Primary Restroom"; - dir = 2; - name = "restroom camera" - }, -/turf/open/floor/plasteel/neutral/corner{ - tag = "icon-neutralcorner (NORTH)"; - icon_state = "neutralcorner"; - dir = 1 - }, -/area/crew_quarters/locker/locker_toilet{ - name = "\improper Restrooms" - }) -"cxg" = ( -/obj/structure/urinal{ - pixel_y = 28 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/bot, -/area/crew_quarters/locker/locker_toilet{ - name = "\improper Restrooms" - }) -"cxh" = ( -/obj/structure/urinal{ - pixel_y = 28 - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/bot, -/area/crew_quarters/locker/locker_toilet{ - name = "\improper Restrooms" - }) -"cxi" = ( -/obj/structure/urinal{ - pixel_y = 28 - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/crew_quarters/locker/locker_toilet{ - name = "\improper Restrooms" - }) -"cxj" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 4 - }, -/area/crew_quarters/locker/locker_toilet{ - name = "\improper Restrooms" - }) -"cxk" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 8; - heat_capacity = 1e+006 - }, -/area/crew_quarters/locker) -"cxl" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/locker) -"cxm" = ( -/obj/structure/chair/stool, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/locker) -"cxn" = ( -/obj/structure/table, -/obj/item/weapon/folder, -/obj/item/weapon/pen, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/locker) -"cxo" = ( -/obj/structure/table, -/obj/item/device/paicard, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/locker) -"cxp" = ( -/obj/structure/table, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/item/toy/gun, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/locker) -"cxq" = ( -/obj/structure/chair/stool, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/effect/landmark/start{ - name = "Assistant" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/locker) -"cxr" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/locker) -"cxs" = ( -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/machinery/power/apc{ - dir = 4; - name = "Lockerroom APC"; - pixel_x = 26; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner, -/area/crew_quarters/locker) -"cxt" = ( -/obj/structure/dresser, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/sleep) -"cxu" = ( -/obj/structure/closet/secure_closet/personal/cabinet, -/obj/machinery/light{ - dir = 1 - }, -/obj/item/clothing/suit/jacket{ - desc = "All the class of a trenchcoat without the security fibers."; - icon_state = "greydet"; - name = "trenchcoat" - }, -/obj/item/clothing/suit/toggle/lawyer/black, -/obj/machinery/status_display{ - pixel_y = 32 - }, -/obj/item/clothing/head/fedora, -/obj/item/clothing/under/blacktango, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/sleep) -"cxv" = ( -/obj/structure/table/wood, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = 26; - pixel_y = 26 - }, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/sleep) -"cxw" = ( -/obj/structure/table/wood, -/obj/item/device/flashlight/lamp, -/obj/structure/sign/nanotrasen{ - pixel_x = -32 - }, -/turf/open/floor/wood, -/area/crew_quarters/sleep) -"cxx" = ( -/obj/structure/table/wood, -/obj/item/weapon/paper_bin, -/obj/item/weapon/pen, -/obj/machinery/light{ - dir = 1 - }, -/obj/machinery/status_display{ - pixel_y = 32 - }, -/turf/open/floor/wood, -/area/crew_quarters/sleep) -"cxy" = ( -/obj/structure/closet/secure_closet/personal/cabinet, -/obj/item/clothing/suit/jacket/letterman_nanotrasen, -/obj/item/clothing/suit/toggle/lawyer, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = 26; - pixel_y = 26 - }, -/obj/item/clothing/under/kilt, -/turf/open/floor/wood, -/area/crew_quarters/sleep) -"cxz" = ( -/obj/structure/dresser, -/turf/open/floor/carpet, -/area/crew_quarters/sleep) -"cxA" = ( -/obj/structure/bed, -/obj/machinery/light{ - dir = 1 - }, -/obj/item/weapon/bedsheet/red, -/obj/machinery/status_display{ - pixel_y = 32 - }, -/turf/open/floor/carpet, -/area/crew_quarters/sleep) -"cxB" = ( -/obj/structure/closet/secure_closet/personal/cabinet, -/obj/item/clothing/suit/jacket{ - desc = "All the class of a trenchcoat without the security fibers."; - icon_state = "detective"; - name = "trenchcoat" - }, -/obj/item/clothing/suit/toggle/lawyer/purple, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = 26; - pixel_y = 26 - }, -/obj/item/clothing/head/fedora{ - icon_state = "detective" - }, -/obj/item/clothing/under/geisha, -/turf/open/floor/carpet, -/area/crew_quarters/sleep) -"cxC" = ( -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/obj/machinery/vending/coffee, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/delivery, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cxD" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cxE" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 8; - heat_capacity = 1e+006 - }, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cxF" = ( -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cxG" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cxH" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cxI" = ( -/obj/structure/chair{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/light{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 4 - }, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cxJ" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/structure/reagent_dispensers/watertank, -/turf/open/floor/plating/warnplate{ - dir = 1 - }, -/area/engine/engineering) -"cxK" = ( -/turf/open/floor/plasteel/yellow/side, -/area/engine/engineering) -"cxL" = ( -/turf/open/floor/plasteel/yellow/side{ - dir = 6 - }, -/area/engine/engineering) -"cxM" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/engine/engineering) -"cxN" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/engine/engineering) -"cxO" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass_engineering{ - name = "Engineering Storage"; - req_access_txt = "32" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/warning/side, -/area/engine/engineering{ - name = "Engineering Storage" - }) -"cxP" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/turf/open/floor/plasteel/delivery, -/area/engine/engineering{ - name = "Engineering Storage" - }) -"cxQ" = ( -/turf/open/floor/plasteel/yellow, -/area/engine/engineering{ - name = "Engineering Storage" - }) -"cxR" = ( -/obj/machinery/holopad, -/turf/open/floor/plasteel/bot, -/area/engine/engineering{ - name = "Engineering Storage" - }) -"cxS" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/sign/nosmoking_2{ - pixel_x = 32 - }, -/obj/structure/tank_dispenser, -/obj/machinery/camera{ - c_tag = "Engineering - Gear Storage"; - dir = 8; - name = "engineering camera" - }, -/turf/open/floor/plasteel/bot, -/area/engine/engineering{ - name = "Engineering Storage" - }) -"cxT" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/effect/landmark{ - name = "blobstart" - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 1 - }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cxU" = ( -/obj/structure/reagent_dispensers/fueltank, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/delivery, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cxV" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/yellow/side{ - dir = 1 - }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cxW" = ( -/turf/open/floor/plasteel/bot, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cxX" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral/corner{ - dir = 4 - }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cxY" = ( -/obj/structure/table/wood, -/obj/item/weapon/newspaper{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/newspaper, -/obj/machinery/status_display{ - pixel_x = -32 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/library) -"cxZ" = ( -/obj/structure/chair/office/dark{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHEAST)"; - icon_state = "intact"; - dir = 5 - }, -/turf/open/floor/plasteel/grimy, -/area/library) -"cya" = ( -/obj/structure/chair/office/dark{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/grimy, -/area/library) -"cyb" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/grimy, -/area/library) -"cyc" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/black, -/area/library) -"cyd" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 2; - on = 1 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/library) -"cye" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/closed/wall, -/area/library) -"cyf" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cyg" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHWEST)"; - icon_state = "intact"; - dir = 10 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 1; - heat_capacity = 1e+006 - }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cyh" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/neutral/side{ - dir = 1; - heat_capacity = 1e+006 - }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cyi" = ( -/obj/machinery/space_heater, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cyj" = ( -/obj/machinery/door/window/northleft{ - dir = 4; - name = "Jetpack Storage"; - pixel_x = -1; - pixel_y = 0; - req_access_txt = "19" - }, -/obj/structure/window/reinforced, -/obj/structure/rack{ - dir = 8; - layer = 2.9 - }, -/obj/item/weapon/tank/jetpack/carbondioxide{ - pixel_x = 4; - pixel_y = -1 - }, -/obj/item/weapon/tank/jetpack/carbondioxide{ - pixel_x = 0; - pixel_y = 0 - }, -/obj/item/weapon/tank/jetpack/carbondioxide{ - pixel_x = -4; - pixel_y = 1 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/ai_monitored/storage/eva{ - name = "E.V.A. Storage" - }) -"cyk" = ( -/obj/machinery/holopad, -/turf/open/floor/plasteel/bot, -/area/ai_monitored/storage/eva{ - name = "E.V.A. Storage" - }) -"cyl" = ( -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/ai_monitored/storage/eva{ - name = "E.V.A. Storage" - }) -"cym" = ( -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/machinery/power/apc{ - dir = 8; - name = "Corporate Lounge APC"; - pixel_x = -26; - pixel_y = 0 - }, -/turf/open/floor/wood, -/area/assembly/showroom{ - name = "\improper Corporate Showroom" - }) -"cyn" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/wood, -/area/assembly/showroom{ - name = "\improper Corporate Showroom" - }) -"cyo" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/wood, -/area/assembly/showroom{ - name = "\improper Corporate Showroom" - }) -"cyp" = ( -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/chair/comfy/brown{ - icon_state = "comfychair"; - dir = 4 - }, -/turf/open/floor/carpet, -/area/assembly/showroom{ - name = "\improper Corporate Showroom" - }) -"cyq" = ( -/obj/structure/table/wood, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/item/weapon/reagent_containers/food/drinks/bottle/whiskey, -/turf/open/floor/carpet, -/area/assembly/showroom{ - name = "\improper Corporate Showroom" - }) -"cyr" = ( -/obj/structure/table/wood, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/item/weapon/storage/fancy/donut_box, -/turf/open/floor/carpet, -/area/assembly/showroom{ - name = "\improper Corporate Showroom" - }) -"cys" = ( -/obj/structure/table/wood, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/item/weapon/paper_bin, -/turf/open/floor/carpet, -/area/assembly/showroom{ - name = "\improper Corporate Showroom" - }) -"cyt" = ( -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/chair/comfy/black{ - dir = 8 - }, -/turf/open/floor/carpet, -/area/assembly/showroom{ - name = "\improper Corporate Showroom" - }) -"cyu" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/wood, -/area/assembly/showroom{ - name = "\improper Corporate Showroom" - }) -"cyv" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/wood, -/area/assembly/showroom{ - name = "\improper Corporate Showroom" - }) -"cyw" = ( -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/machinery/airalarm{ - dir = 8; - icon_state = "alarm0"; - pixel_x = 24 - }, -/turf/open/floor/wood, -/area/assembly/showroom{ - name = "\improper Corporate Showroom" - }) -"cyx" = ( -/obj/item/clothing/suit/hazardvest{ - desc = "A high-visibility lifejacket complete with whistle and slot for oxygen tanks."; - name = "emergency lifejacket" - }, -/obj/item/clothing/suit/hazardvest{ - desc = "A high-visibility lifejacket complete with whistle and slot for oxygen tanks."; - name = "emergency lifejacket" - }, -/obj/item/clothing/suit/hazardvest{ - desc = "A high-visibility lifejacket complete with whistle and slot for oxygen tanks."; - name = "emergency lifejacket" - }, -/obj/item/clothing/suit/hazardvest{ - desc = "A high-visibility lifejacket complete with whistle and slot for oxygen tanks."; - name = "emergency lifejacket" - }, -/obj/item/clothing/suit/hazardvest{ - desc = "A high-visibility lifejacket complete with whistle and slot for oxygen tanks."; - name = "emergency lifejacket" - }, -/obj/item/weapon/tank/internals/emergency_oxygen/double{ - pixel_x = 3 - }, -/obj/item/weapon/tank/internals/emergency_oxygen/double{ - pixel_x = 3 - }, -/obj/item/weapon/tank/internals/emergency_oxygen/double{ - pixel_x = 3 - }, -/obj/item/weapon/tank/internals/emergency_oxygen/double{ - pixel_x = 3 - }, -/obj/item/weapon/tank/internals/emergency_oxygen/double{ - pixel_x = 3 - }, -/obj/item/clothing/mask/breath{ - pixel_x = -3; - pixel_y = -3 - }, -/obj/item/clothing/mask/breath{ - pixel_x = -3; - pixel_y = -3 - }, -/obj/item/clothing/mask/breath{ - pixel_x = -3; - pixel_y = -3 - }, -/obj/item/clothing/mask/breath{ - pixel_x = -3; - pixel_y = -3 - }, -/obj/item/clothing/mask/breath{ - pixel_x = -3; - pixel_y = -3 - }, -/obj/item/clothing/head/hardhat/orange{ - name = "protective hat"; - pixel_y = 9 - }, -/obj/item/clothing/head/hardhat/orange{ - name = "protective hat"; - pixel_y = 9 - }, -/obj/item/clothing/head/hardhat/orange{ - name = "protective hat"; - pixel_y = 9 - }, -/obj/item/clothing/head/hardhat/orange{ - name = "protective hat"; - pixel_y = 9 - }, -/obj/item/clothing/head/hardhat/orange{ - name = "protective hat"; - pixel_y = 9 - }, -/obj/structure/closet/crate/internals, -/turf/open/floor/plasteel/bot, -/area/gateway) -"cyy" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/plasteel/neutral, -/area/gateway) -"cyz" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, -/turf/open/floor/plasteel/warning/corner{ - dir = 8 - }, -/area/gateway) -"cyA" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning{ - tag = "icon-warning (NORTHEAST)"; - dir = 5 - }, -/area/gateway) -"cyB" = ( -/obj/structure/cable/white{ - tag = "icon-0-2"; - icon_state = "0-2" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/gateway) -"cyC" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning{ - tag = "icon-plasteel_warn (NORTHWEST)"; - icon_state = "plasteel_warn"; - dir = 9 - }, -/area/gateway) -"cyD" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/plasteel/warning{ - tag = "icon-warning (NORTH)"; - dir = 1 - }, -/area/gateway) -"cyE" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning{ - tag = "icon-warning (NORTHEAST)"; - dir = 5 - }, -/area/gateway) -"cyF" = ( -/obj/machinery/shower{ - icon_state = "shower"; - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 8 - }, -/area/crew_quarters/locker/locker_toilet{ - name = "\improper Restrooms" - }) -"cyG" = ( -/obj/effect/landmark/start{ - name = "Assistant" - }, -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/locker/locker_toilet{ - name = "\improper Restrooms" - }) -"cyH" = ( -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/crew_quarters/locker/locker_toilet{ - name = "\improper Restrooms" - }) -"cyI" = ( -/obj/machinery/door/firedoor, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/door/airlock{ - name = "Unisex Showers"; - req_access_txt = "0" - }, -/turf/open/floor/plasteel/warning/side, -/area/crew_quarters/locker/locker_toilet{ - name = "\improper Restrooms" - }) -"cyJ" = ( -/turf/open/floor/plasteel/neutral/corner{ - tag = "icon-neutralcorner (NORTH)"; - icon_state = "neutralcorner"; - dir = 1 - }, -/area/crew_quarters/locker/locker_toilet{ - name = "\improper Restrooms" - }) -"cyK" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral/corner{ - dir = 4 - }, -/area/crew_quarters/locker/locker_toilet{ - name = "\improper Restrooms" - }) -"cyL" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 8 - }, -/area/crew_quarters/locker/locker_toilet{ - name = "\improper Restrooms" - }) -"cyM" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/locker/locker_toilet{ - name = "\improper Restrooms" - }) -"cyN" = ( -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/locker/locker_toilet{ - name = "\improper Restrooms" - }) -"cyO" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 2; - on = 1; - scrub_N2O = 1; - scrub_Toxins = 1 - }, -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/locker/locker_toilet{ - name = "\improper Restrooms" - }) -"cyP" = ( -/obj/machinery/airalarm{ - dir = 8; - icon_state = "alarm0"; - pixel_x = 24 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/crew_quarters/locker/locker_toilet{ - name = "\improper Restrooms" - }) -"cyQ" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 8; - heat_capacity = 1e+006 - }, -/area/crew_quarters/locker) -"cyR" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/locker) -"cyS" = ( -/obj/item/weapon/storage/pod{ - pixel_x = 32 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral/corner, -/area/crew_quarters/locker) -"cyT" = ( -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/sleep) -"cyU" = ( -/obj/structure/bed, -/obj/item/weapon/bedsheet/black, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/sleep) -"cyV" = ( -/obj/structure/table/wood, -/obj/item/weapon/folder, -/obj/item/weapon/pen, -/obj/machinery/newscaster{ - pixel_x = -32 - }, -/turf/open/floor/wood, -/area/crew_quarters/sleep) -"cyW" = ( -/obj/structure/chair/office/dark{ - dir = 8 - }, -/turf/open/floor/wood, -/area/crew_quarters/sleep) -"cyX" = ( -/turf/open/floor/wood, -/area/crew_quarters/sleep) -"cyY" = ( -/obj/structure/table/wood, -/obj/item/weapon/folder/red, -/obj/item/weapon/pen, -/obj/structure/sign/nanotrasen{ - pixel_x = -32 - }, -/turf/open/floor/carpet, -/area/crew_quarters/sleep) -"cyZ" = ( -/turf/open/floor/carpet, -/area/crew_quarters/sleep) -"cza" = ( -/obj/structure/table, -/obj/item/weapon/paper_bin, -/obj/item/weapon/pen, -/obj/machinery/ai_status_display{ - pixel_x = -32 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral/corner{ - dir = 1 - }, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"czb" = ( -/obj/structure/stacklifter, -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"czc" = ( -/turf/open/floor/plasteel/neutral/side, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"czd" = ( -/obj/structure/weightlifter, -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cze" = ( -/obj/structure/chair{ - dir = 4 - }, -/obj/effect/landmark/start{ - name = "Assistant" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral/corner{ - dir = 4 - }, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"czf" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHEAST)"; - icon_state = "intact"; - dir = 6 - }, -/turf/open/floor/plating, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"czg" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"czh" = ( -/obj/machinery/status_display, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"czi" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHWEST)"; - icon_state = "intact"; - dir = 10 - }, -/turf/open/floor/plating, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"czj" = ( -/turf/open/floor/plating/warnplate{ - dir = 1 - }, -/area/engine/engineering) -"czk" = ( -/obj/effect/decal/cleanable/oil, -/turf/open/floor/plating/warnplate{ - dir = 1 - }, -/area/engine/engineering) -"czl" = ( -/obj/machinery/camera/emp_proof{ - c_tag = "Containment - Aft Starboard"; - dir = 8; - icon_state = "camera"; - network = list("Singularity"); - tag = "icon-camera (NORTHWEST)" - }, -/turf/open/floor/plating, -/area/engine/engineering) -"czm" = ( -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/obj/machinery/status_display{ - pixel_x = -32 - }, -/turf/open/floor/plasteel/warning{ - dir = 9 - }, -/area/engine/engineering) -"czn" = ( -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/engine/engineering) -"czo" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/plasteel/warning/corner{ - dir = 4 - }, -/area/engine/engineering) -"czp" = ( -/obj/effect/landmark{ - name = "lightsout" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral, -/area/engine/engineering) -"czq" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/engine/engineering) -"czr" = ( -/obj/structure/cable/white, -/obj/structure/cable/white{ - d2 = 2; - icon_state = "0-2"; - tag = "icon-0-2" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plating, -/area/engine/engineering{ - name = "Engineering Storage" - }) -"czs" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/bot, -/area/engine/engineering{ - name = "Engineering Storage" - }) -"czt" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/neutral, -/area/engine/engineering{ - name = "Engineering Storage" - }) -"czu" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHWEST)"; - icon_state = "intact"; - dir = 10 - }, -/turf/open/floor/plasteel/yellow, -/area/engine/engineering{ - name = "Engineering Storage" - }) -"czv" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/neutral, -/area/engine/engineering{ - name = "Engineering Storage" - }) -"czw" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/tank/jetpack/carbondioxide{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/tank/jetpack/carbondioxide, -/obj/machinery/power/apc{ - dir = 4; - name = "Engineering Storage APC"; - pixel_x = 26; - pixel_y = 0 - }, -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/turf/open/floor/plasteel/delivery, -/area/engine/engineering{ - name = "Engineering Storage" - }) -"czx" = ( -/obj/machinery/portable_atmospherics/canister/oxygen, -/obj/effect/decal/cleanable/dirt, -/obj/structure/extinguisher_cabinet{ - pixel_x = -26 - }, -/turf/open/floor/plasteel/delivery, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"czy" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/effect/landmark{ - name = "xeno_spawn"; - pixel_x = -1 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/plasteel/yellow, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"czz" = ( -/obj/effect/landmark{ - name = "blobstart" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"czA" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/delivery, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"czB" = ( -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Maintenance Hatch"; - req_access_txt = "12" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/warning/side, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"czC" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"czD" = ( -/obj/structure/table/wood, -/obj/item/device/flashlight/lamp, -/turf/open/floor/plasteel/black, -/area/library) -"czE" = ( -/obj/structure/table/wood, -/obj/item/weapon/storage/fancy/donut_box, -/obj/machinery/airalarm{ - dir = 1; - icon_state = "alarm0"; - pixel_y = -22 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/library) -"czF" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/turf/open/floor/plasteel/black, -/area/library) -"czG" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_y = -26 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHEAST)"; - icon_state = "intact"; - dir = 5 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/library) -"czH" = ( -/obj/machinery/light, -/obj/structure/dresser, -/obj/machinery/status_display{ - pixel_y = -32 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/library) -"czI" = ( -/obj/structure/table/wood, -/obj/item/weapon/dice/d20{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/dice/d10{ - pixel_x = -3 - }, -/obj/machinery/computer/security/telescreen/entertainment{ - pixel_y = -32 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/library) -"czJ" = ( -/obj/structure/filingcabinet, -/obj/machinery/atmospherics/pipe/manifold/supply, -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/black, -/area/library) -"czK" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/library) -"czL" = ( -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Maintenance Hatch"; - req_access_txt = "12" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/library) -"czM" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHWEST)"; - icon_state = "intact"; - dir = 10 - }, -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"czN" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/landmark{ - name = "blobstart" - }, -/turf/open/floor/plasteel/neutral, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"czO" = ( -/turf/open/floor/plasteel/neutral, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"czP" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/structure/rack, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 2; - name = "2maintenance loot spawner" - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"czQ" = ( -/obj/item/stack/sheet/metal/fifty, -/obj/item/stack/sheet/glass/fifty, -/obj/item/weapon/wrench, -/obj/structure/extinguisher_cabinet{ - pixel_x = -26 - }, -/obj/structure/table/reinforced, -/obj/item/weapon/grenade/chem_grenade/metalfoam, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/ai_monitored/storage/eva{ - name = "E.V.A. Storage" - }) -"czR" = ( -/turf/open/floor/plasteel/warning{ - dir = 9 - }, -/area/ai_monitored/storage/eva{ - name = "E.V.A. Storage" - }) -"czS" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/ai_monitored/storage/eva{ - name = "E.V.A. Storage" - }) -"czT" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/ai_monitored/storage/eva{ - name = "E.V.A. Storage" - }) -"czU" = ( -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/ai_monitored/storage/eva{ - name = "E.V.A. Storage" - }) -"czV" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/ai_monitored/storage/eva{ - name = "E.V.A. Storage" - }) -"czW" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/ai_monitored/storage/eva{ - name = "E.V.A. Storage" - }) -"czX" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning{ - tag = "icon-plasteel_warn (NORTHEAST)"; - icon_state = "plasteel_warn"; - dir = 5 - }, -/area/ai_monitored/storage/eva{ - name = "E.V.A. Storage" - }) -"czY" = ( -/obj/item/stack/rods{ - amount = 25 - }, -/obj/machinery/airalarm{ - dir = 8; - icon_state = "alarm0"; - pixel_x = 24 - }, -/obj/structure/table/reinforced, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/ai_monitored/storage/eva{ - name = "E.V.A. Storage" - }) -"czZ" = ( -/obj/structure/table/wood, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/item/weapon/clipboard, -/obj/item/toy/figure/dsquad, -/turf/open/floor/plasteel/grimy, -/area/assembly/showroom{ - name = "\improper Corporate Showroom" - }) -"cAa" = ( -/turf/open/floor/plasteel/grimy, -/area/assembly/showroom{ - name = "\improper Corporate Showroom" - }) -"cAb" = ( -/obj/structure/chair/comfy/black{ - dir = 4 - }, -/turf/open/floor/carpet, -/area/assembly/showroom{ - name = "\improper Corporate Showroom" - }) -"cAc" = ( -/obj/structure/table/wood, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/item/weapon/folder/blue, -/obj/item/weapon/pen, -/turf/open/floor/carpet, -/area/assembly/showroom{ - name = "\improper Corporate Showroom" - }) -"cAd" = ( -/obj/structure/table/wood, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/item/clothing/mask/cigarette/cigar/cohiba{ - pixel_x = 3 - }, -/obj/item/clothing/mask/cigarette/cigar/havana{ - pixel_x = -3 - }, -/obj/item/clothing/mask/cigarette/cigar, -/turf/open/floor/carpet, -/area/assembly/showroom{ - name = "\improper Corporate Showroom" - }) -"cAe" = ( -/obj/structure/table/wood, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/item/weapon/lighter, -/turf/open/floor/carpet, -/area/assembly/showroom{ - name = "\improper Corporate Showroom" - }) -"cAf" = ( -/obj/structure/chair/comfy/brown{ - icon_state = "comfychair"; - dir = 8 - }, -/turf/open/floor/carpet, -/area/assembly/showroom{ - name = "\improper Corporate Showroom" - }) -"cAg" = ( -/obj/structure/table/wood, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/item/weapon/storage/secure/briefcase, -/turf/open/floor/plasteel/grimy, -/area/assembly/showroom{ - name = "\improper Corporate Showroom" - }) -"cAh" = ( -/obj/structure/table, -/obj/item/weapon/storage/belt, -/obj/item/device/radio, -/obj/item/device/radio, -/obj/item/device/radio, -/obj/machinery/firealarm{ - dir = 8; - pixel_x = -24 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/bot, -/area/gateway) -"cAi" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/plasteel/warning{ - dir = 10 - }, -/area/gateway) -"cAj" = ( -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning, -/area/gateway) -"cAk" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/warning, -/area/gateway) -"cAl" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning{ - tag = "icon-warning (SOUTHEAST)"; - dir = 6 - }, -/area/gateway) -"cAm" = ( -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/door/airlock/glass_command{ - name = "Gateway Chamber" - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/gateway) -"cAn" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/gateway) -"cAo" = ( -/obj/machinery/holopad, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/bot, -/area/gateway) -"cAp" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/warning{ - tag = "icon-warning (EAST)"; - dir = 4 - }, -/area/gateway) -"cAq" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/shower{ - icon_state = "shower"; - dir = 4 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plating, -/area/crew_quarters/locker/locker_toilet{ - name = "\improper Restrooms" - }) -"cAr" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side, -/area/crew_quarters/locker/locker_toilet{ - name = "\improper Restrooms" - }) -"cAs" = ( -/obj/machinery/shower{ - dir = 8; - icon_state = "shower" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner, -/area/crew_quarters/locker/locker_toilet{ - name = "\improper Restrooms" - }) -"cAt" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/crew_quarters/locker/locker_toilet{ - name = "\improper Restrooms" - }) -"cAu" = ( -/obj/structure/mirror{ - desc = "Mirror mirror on the wall, who is the most robust of them all?"; - pixel_x = -26 - }, -/obj/structure/sink{ - dir = 8; - icon_state = "sink"; - pixel_x = -12 - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plasteel/bot, -/area/crew_quarters/locker/locker_toilet{ - name = "\improper Restrooms" - }) -"cAv" = ( -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/crew_quarters/locker/locker_toilet{ - name = "\improper Restrooms" - }) -"cAw" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/light, -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 8; - heat_capacity = 1e+006 - }, -/area/crew_quarters/locker/locker_toilet{ - name = "\improper Restrooms" - }) -"cAx" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 8; - heat_capacity = 1e+006 - }, -/area/crew_quarters/locker/locker_toilet{ - name = "\improper Restrooms" - }) -"cAy" = ( -/obj/machinery/status_display{ - pixel_y = -32 - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 8; - heat_capacity = 1e+006 - }, -/area/crew_quarters/locker/locker_toilet{ - name = "\improper Restrooms" - }) -"cAz" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/open/floor/plasteel/neutral/corner, -/area/crew_quarters/locker/locker_toilet{ - name = "\improper Restrooms" - }) -"cAA" = ( -/obj/machinery/light, -/obj/machinery/status_display{ - pixel_y = -32 - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner, -/area/crew_quarters/locker/locker_toilet{ - name = "\improper Restrooms" - }) -"cAB" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner, -/area/crew_quarters/locker/locker_toilet{ - name = "\improper Restrooms" - }) -"cAC" = ( -/obj/machinery/door/firedoor, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/door/airlock{ - name = "Primary Restroom" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/crew_quarters/locker/locker_toilet{ - name = "\improper Restrooms" - }) -"cAD" = ( -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 8; - heat_capacity = 1e+006 - }, -/area/crew_quarters/locker) -"cAE" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 8; - heat_capacity = 1e+006 - }, -/area/crew_quarters/locker) -"cAF" = ( -/obj/machinery/light, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/camera{ - c_tag = "Locker Room - Aft"; - dir = 1; - name = "dormitories camera" - }, -/turf/open/floor/plasteel/neutral/side, -/area/crew_quarters/locker) -"cAG" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner, -/area/crew_quarters/locker) -"cAH" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner, -/area/crew_quarters/locker) -"cAI" = ( -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/neutral/corner, -/area/crew_quarters/locker) -"cAJ" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/neutral/corner, -/area/crew_quarters/locker) -"cAK" = ( -/obj/structure/chair/office/dark, -/obj/machinery/newscaster{ - pixel_x = -32 - }, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/sleep) -"cAL" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1 - }, -/obj/structure/sign/nanotrasen{ - pixel_x = 32 - }, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/sleep) -"cAM" = ( -/obj/structure/bed, -/obj/item/weapon/bedsheet/blue, -/turf/open/floor/wood, -/area/crew_quarters/sleep) -"cAN" = ( -/obj/structure/table/wood, -/obj/item/device/flashlight/lamp/green, -/obj/machinery/newscaster{ - pixel_x = -32 - }, -/turf/open/floor/carpet, -/area/crew_quarters/sleep) -"cAO" = ( -/obj/structure/chair/office/dark{ - dir = 8 - }, -/turf/open/floor/carpet, -/area/crew_quarters/sleep) -"cAP" = ( -/obj/structure/table, -/obj/item/weapon/folder, -/obj/machinery/airalarm{ - dir = 4; - locked = 0; - pixel_x = -23; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral/corner{ - dir = 1 - }, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cAQ" = ( -/obj/structure/chair{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral/corner{ - dir = 4 - }, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cAR" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cAS" = ( -/turf/open/floor/engine{ - name = "Holodeck Projector Floor" - }, -/area/holodeck/rec_center) -"cAT" = ( -/obj/machinery/camera{ - c_tag = "Holodeck - Fore"; - dir = 2; - name = "holodeck camera" - }, -/turf/open/floor/engine{ - name = "Holodeck Projector Floor" - }, -/area/holodeck/rec_center) -"cAU" = ( -/obj/structure/cable/white{ - tag = "icon-0-2"; - icon_state = "0-2" - }, -/obj/machinery/power/emitter{ - tag = "icon-emitter (NORTH)"; - icon_state = "emitter"; - dir = 1; - anchored = 1; - state = 2 - }, -/turf/open/floor/plating/warnplate, -/area/engine/engineering) -"cAV" = ( -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/structure/grille, -/turf/open/floor/plating/warnplate{ - dir = 9 - }, -/area/engine/engineering) -"cAW" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/grille, -/turf/open/floor/plating/warnplate{ - dir = 1 - }, -/area/engine/engineering) -"cAX" = ( -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/structure/grille, -/turf/open/floor/plating/warnplate{ - dir = 5 - }, -/area/engine/engineering) -"cAY" = ( -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/turf/open/floor/plating, -/area/engine/engineering) -"cAZ" = ( -/obj/machinery/door/airlock/external{ - name = "External Containment Access"; - req_access_txt = "10; 13" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/warning/side, -/area/engine/engineering) -"cBa" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/fans/tiny, -/turf/open/floor/plasteel/delivery, -/area/engine/engineering) -"cBb" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 2; - on = 1; - scrub_N2O = 1; - scrub_Toxins = 1 - }, -/turf/open/floor/plasteel/yellow, -/area/engine/engineering) -"cBc" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/neutral, -/area/engine/engineering) -"cBd" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/yellow, -/area/engine/engineering) -"cBe" = ( -/obj/effect/decal/cleanable/dirt, -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/engine/engineering) -"cBf" = ( -/obj/structure/cable/white, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/engine/engineering{ - name = "Engineering Storage" - }) -"cBg" = ( -/obj/structure/rack, -/obj/item/weapon/storage/belt/utility, -/obj/item/weapon/weldingtool, -/obj/item/clothing/head/welding, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/firealarm{ - dir = 8; - pixel_x = -24; - pixel_y = -32 - }, -/turf/open/floor/plasteel/bot, -/area/engine/engineering{ - name = "Engineering Storage" - }) -"cBh" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/yellow/side, -/area/engine/engineering{ - name = "Engineering Storage" - }) -"cBi" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/turf/open/floor/plasteel/yellow/side, -/area/engine/engineering{ - name = "Engineering Storage" - }) -"cBj" = ( -/obj/structure/table/reinforced, -/obj/item/stack/sheet/plasteel{ - amount = 50 - }, -/obj/item/stack/sheet/rglass{ - amount = 50; - pixel_x = 2; - pixel_y = -2 - }, -/obj/machinery/newscaster{ - pixel_x = 32 - }, -/turf/open/floor/plasteel/bot, -/area/engine/engineering{ - name = "Engineering Storage" - }) -"cBk" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 1 - }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cBl" = ( -/obj/structure/reagent_dispensers/watertank, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cBm" = ( -/turf/open/floor/plasteel/yellow/side, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cBn" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/caution, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cBo" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral/side{ - dir = 8 - }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cBp" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/neutral, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cBq" = ( -/obj/item/weapon/clipboard, -/obj/item/weapon/folder/yellow, -/obj/machinery/light, -/obj/structure/table/reinforced, -/obj/item/device/gps, -/obj/item/device/gps, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/ai_monitored/storage/eva{ - name = "E.V.A. Storage" - }) -"cBr" = ( -/obj/machinery/ai_status_display{ - pixel_y = -32 - }, -/obj/machinery/camera{ - c_tag = "Bridge - E.V.A. Aft"; - dir = 1; - name = "command camera" - }, -/turf/open/floor/plasteel/warning{ - dir = 10 - }, -/area/ai_monitored/storage/eva{ - name = "E.V.A. Storage" - }) -"cBs" = ( -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_y = -26 - }, -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning, -/area/ai_monitored/storage/eva{ - name = "E.V.A. Storage" - }) -"cBt" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/warning, -/area/ai_monitored/storage/eva{ - name = "E.V.A. Storage" - }) -"cBu" = ( -/turf/open/floor/plasteel/warning, -/area/ai_monitored/storage/eva{ - name = "E.V.A. Storage" - }) -"cBv" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/warning, -/area/ai_monitored/storage/eva{ - name = "E.V.A. Storage" - }) -"cBw" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-18"; - layer = 4.1 - }, -/turf/open/floor/plasteel/warning, -/area/ai_monitored/storage/eva{ - name = "E.V.A. Storage" - }) -"cBx" = ( -/obj/machinery/status_display{ - pixel_x = 0; - pixel_y = -32 - }, -/turf/open/floor/plasteel/warning{ - dir = 6 - }, -/area/ai_monitored/storage/eva{ - name = "E.V.A. Storage" - }) -"cBy" = ( -/obj/item/weapon/storage/belt, -/obj/item/device/radio, -/obj/machinery/light, -/obj/structure/table/reinforced, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/ai_monitored/storage/eva{ - name = "E.V.A. Storage" - }) -"cBz" = ( -/obj/structure/table/wood, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/item/weapon/folder/blue, -/obj/item/clothing/under/rank/centcom_commander{ - desc = "A replica of a jumpsuit worn by the highest ranking commanders under Nanotrasen's central command."; - name = "Replica Centcom officer's jumpsuit" - }, -/obj/item/clothing/head/centhat{ - armor = list("melee" = 0, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 0); - desc = "A replica hat of a Central Commander's attire. It has a small tag on it saying, 'It's good to be emperor.'"; - name = "Replica Centcom hat" - }, -/obj/machinery/computer/security/telescreen/entertainment{ - pixel_x = -32 - }, -/turf/open/floor/plasteel/grimy, -/area/assembly/showroom{ - name = "\improper Corporate Showroom" - }) -"cBA" = ( -/obj/structure/table/wood, -/obj/item/weapon/storage/photo_album, -/turf/open/floor/plasteel/grimy, -/area/assembly/showroom{ - name = "\improper Corporate Showroom" - }) -"cBB" = ( -/obj/machinery/firealarm{ - dir = 1; - pixel_x = 0; - pixel_y = -26 - }, -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/obj/machinery/light, -/turf/open/floor/plasteel/grimy, -/area/assembly/showroom{ - name = "\improper Corporate Showroom" - }) -"cBC" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/chair/comfy/brown{ - dir = 1 - }, -/turf/open/floor/plasteel/grimy, -/area/assembly/showroom{ - name = "\improper Corporate Showroom" - }) -"cBD" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/holopad, -/turf/open/floor/plasteel/grimy, -/area/assembly/showroom{ - name = "\improper Corporate Showroom" - }) -"cBE" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/chair/comfy/black{ - dir = 1 - }, -/turf/open/floor/plasteel/grimy, -/area/assembly/showroom{ - name = "\improper Corporate Showroom" - }) -"cBF" = ( -/obj/machinery/button/door{ - id = "corporatelounge"; - name = "Corporate Lounge Shutters"; - pixel_x = -7; - pixel_y = -26 - }, -/obj/machinery/light_switch{ - pixel_x = 7; - pixel_y = -26 - }, -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/obj/machinery/light, -/turf/open/floor/plasteel/grimy, -/area/assembly/showroom{ - name = "\improper Corporate Showroom" - }) -"cBG" = ( -/obj/structure/table/wood, -/obj/item/device/paicard, -/turf/open/floor/plasteel/grimy, -/area/assembly/showroom{ - name = "\improper Corporate Showroom" - }) -"cBH" = ( -/obj/structure/table/wood, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/item/weapon/folder/red, -/obj/item/toy/gun, -/obj/item/clothing/head/beret/sec{ - armor = list("melee" = 0, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 0); - desc = "A replica beret resembling that of a special operations officer under Nanotrasen."; - name = "replica officer's beret" - }, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = 26 - }, -/turf/open/floor/plasteel/grimy, -/area/assembly/showroom{ - name = "\improper Corporate Showroom" - }) -"cBI" = ( -/obj/structure/table, -/obj/machinery/recharger, -/turf/open/floor/plasteel/bot, -/area/gateway) -"cBJ" = ( -/obj/structure/table, -/obj/machinery/cell_charger, -/obj/machinery/button/door{ - id = "gatewayshutters"; - name = "Gateway Shutters"; - pixel_x = -26; - pixel_y = -26 - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/bot, -/area/gateway) -"cBK" = ( -/obj/machinery/light_switch{ - pixel_x = -26; - pixel_y = -26 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHEAST)"; - icon_state = "intact"; - dir = 6 - }, -/turf/open/floor/plasteel/bot, -/area/gateway) -"cBL" = ( -/obj/machinery/airalarm{ - dir = 1; - icon_state = "alarm0"; - pixel_y = -22 - }, -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-18"; - layer = 4.1 - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHWEST)"; - icon_state = "intact"; - dir = 9 - }, -/turf/open/floor/plasteel/bot, -/area/gateway) -"cBM" = ( -/obj/machinery/recharge_station, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/bot, -/area/gateway) -"cBN" = ( -/obj/structure/cable/white, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/gateway) -"cBO" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning{ - dir = 10 - }, -/area/gateway) -"cBP" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning, -/area/gateway) -"cBQ" = ( -/turf/open/floor/plasteel/warning{ - tag = "icon-warning (SOUTHEAST)"; - dir = 6 - }, -/area/gateway) -"cBR" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/effect/landmark{ - name = "lightsout" - }, -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/central) -"cBS" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/mirror{ - desc = "Mirror mirror on the wall, who is the most robust of them all?"; - pixel_x = -26 - }, -/obj/structure/sink{ - dir = 8; - icon_state = "sink"; - pixel_x = -12 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/bot, -/area/crew_quarters/locker/locker_toilet{ - name = "\improper Restrooms" - }) -"cBT" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral/corner, -/area/crew_quarters/locker/locker_toilet{ - name = "\improper Restrooms" - }) -"cBU" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/door/airlock{ - name = "Toilet Unit" - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 1; - heat_capacity = 1e+006 - }, -/area/crew_quarters/locker/locker_toilet{ - name = "\improper Restrooms" - }) -"cBV" = ( -/obj/machinery/door/airlock{ - name = "Toilet Unit" - }, -/turf/open/floor/plating, -/area/crew_quarters/locker/locker_toilet{ - name = "\improper Restrooms" - }) -"cBW" = ( -/obj/machinery/vending/clothing, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/locker) -"cBX" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/locker) -"cBY" = ( -/obj/machinery/airalarm{ - dir = 1; - icon_state = "alarm0"; - pixel_y = -22 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/locker) -"cBZ" = ( -/obj/machinery/vending/autodrobe{ - req_access_txt = "0" - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/locker) -"cCa" = ( -/obj/structure/table, -/obj/item/weapon/paper_bin, -/obj/item/weapon/pen, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/locker) -"cCb" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/locker) -"cCc" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-18"; - layer = 4.1 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/locker) -"cCd" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/locker) -"cCe" = ( -/obj/structure/table/wood, -/obj/item/weapon/folder/blue, -/obj/item/weapon/lighter, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/sleep) -"cCf" = ( -/obj/structure/table/wood, -/obj/item/device/flashlight/lamp, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/sleep) -"cCg" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1 - }, -/turf/open/floor/wood, -/area/crew_quarters/sleep) -"cCh" = ( -/obj/structure/dresser, -/turf/open/floor/wood, -/area/crew_quarters/sleep) -"cCi" = ( -/obj/structure/table/wood, -/obj/item/weapon/paper_bin, -/turf/open/floor/carpet, -/area/crew_quarters/sleep) -"cCj" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1 - }, -/turf/open/floor/carpet, -/area/crew_quarters/sleep) -"cCk" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral/corner{ - dir = 1 - }, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cCl" = ( -/obj/structure/chair, -/turf/open/floor/plasteel/neutral/side, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cCm" = ( -/obj/structure/grille, -/turf/open/floor/plating/warnplate{ - dir = 1 - }, -/area/engine/engineering) -"cCn" = ( -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/structure/grille, -/turf/open/floor/plating/warnplate{ - dir = 1 - }, -/area/engine/engineering) -"cCo" = ( -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/structure/grille, -/turf/open/floor/plating/warnplate/corner{ - dir = 4 - }, -/area/engine/engineering) -"cCp" = ( -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/structure/grille, -/turf/open/floor/plating/warnplate/corner{ - dir = 8 - }, -/area/engine/engineering) -"cCq" = ( -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/grille, -/turf/open/floor/plating/warnplate{ - dir = 1 - }, -/area/engine/engineering) -"cCr" = ( -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/structure/grille, -/turf/open/floor/plating/warnplate{ - dir = 1 - }, -/area/engine/engineering) -"cCs" = ( -/obj/structure/closet/emcloset{ - anchored = 1 - }, -/obj/machinery/light/small, -/turf/open/floor/plasteel/bot, -/area/engine/engineering) -"cCt" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/turf/open/floor/plasteel/warning{ - dir = 10 - }, -/area/engine/engineering) -"cCu" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHEAST)"; - icon_state = "intact"; - dir = 5 - }, -/turf/open/floor/plasteel/warning, -/area/engine/engineering) -"cCv" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/delivery, -/area/engine/engineering) -"cCw" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/obj/machinery/camera{ - c_tag = "Engineering - Aft"; - dir = 1; - name = "engineering camera" - }, -/turf/open/floor/plasteel/warning, -/area/engine/engineering) -"cCx" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/warning, -/area/engine/engineering) -"cCy" = ( -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/warning, -/area/engine/engineering) -"cCz" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHWEST)"; - icon_state = "intact"; - dir = 9 - }, -/turf/open/floor/plasteel/warning{ - dir = 6 - }, -/area/engine/engineering) -"cCA" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/obj/effect/decal/cleanable/dirt, -/obj/structure/sign/electricshock{ - pixel_y = -32 - }, -/turf/open/floor/plasteel/bot, -/area/engine/engineering{ - name = "Engineering Storage" - }) -"cCB" = ( -/obj/structure/reagent_dispensers/watertank, -/obj/machinery/status_display{ - pixel_y = -32 - }, -/turf/open/floor/plasteel/bot, -/area/engine/engineering{ - name = "Engineering Storage" - }) -"cCC" = ( -/obj/machinery/portable_atmospherics/canister/oxygen, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/light, -/obj/structure/noticeboard{ - dir = 1; - icon_state = "nboard00"; - pixel_y = -32; - tag = "icon-nboard00 (NORTH)" - }, -/turf/open/floor/plasteel/bot, -/area/engine/engineering{ - name = "Engineering Storage" - }) -"cCD" = ( -/obj/structure/reagent_dispensers/fueltank, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/ai_status_display{ - pixel_y = -32 - }, -/turf/open/floor/plasteel/bot, -/area/engine/engineering{ - name = "Engineering Storage" - }) -"cCE" = ( -/obj/structure/table/reinforced, -/obj/item/stack/rods{ - amount = 50 - }, -/obj/item/weapon/wrench, -/obj/item/weapon/storage/box/lights/mixed, -/turf/open/floor/plasteel/bot, -/area/engine/engineering{ - name = "Engineering Storage" - }) -"cCF" = ( -/obj/structure/table/reinforced, -/obj/item/stack/packageWrap, -/obj/item/weapon/hand_labeler, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cCG" = ( -/obj/structure/table/reinforced, -/obj/item/stack/rods{ - amount = 50 - }, -/obj/item/weapon/wrench, -/obj/item/weapon/storage/box/lights/mixed, -/obj/structure/sign/poster{ - pixel_y = -32 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/bot, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cCH" = ( -/obj/structure/rack, -/obj/item/weapon/book/manual/wiki/engineering_hacking{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/weapon/book/manual/wiki/engineering_guide, -/obj/item/weapon/book/manual/wiki/engineering_construction{ - pixel_x = 3; - pixel_y = -3 - }, -/obj/machinery/light/small, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cCI" = ( -/obj/effect/decal/cleanable/dirt, -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cCJ" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 9 - }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cCK" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cCL" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cCM" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 1; - heat_capacity = 1e+006 - }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cCN" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 1; - heat_capacity = 1e+006 - }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cCO" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/sortjunction{ - dir = 4; - icon_state = "pipe-j2s"; - name = "Library Junction"; - sortType = 16 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cCP" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cCQ" = ( -/obj/structure/girder, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cCR" = ( -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cCS" = ( -/obj/structure/sign/directions/engineering{ - desc = "A sign that shows there are doors here. There are doors everywhere!"; - icon_state = "doors"; - name = "WARNING: PRESSURIZED DOORS"; - pixel_x = 0; - pixel_y = 0; - tag = "icon-doors" - }, -/turf/closed/wall/r_wall, -/area/ai_monitored/storage/eva{ - name = "E.V.A. Storage" - }) -"cCT" = ( -/obj/machinery/door/poddoor/shutters{ - id = "evashutters"; - name = "E.V.A. Storage Shutters" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (EAST)"; - icon_state = "plasteel_warn_side"; - dir = 4 - }, -/area/ai_monitored/storage/eva{ - name = "E.V.A. Storage" - }) -"cCU" = ( -/obj/machinery/door/poddoor/shutters{ - id = "evashutters"; - name = "E.V.A. Storage Shutters" - }, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (EAST)"; - icon_state = "plasteel_warn_side"; - dir = 4 - }, -/area/ai_monitored/storage/eva{ - name = "E.V.A. Storage" - }) -"cCV" = ( -/obj/machinery/button/door{ - id = "evashutters"; - name = "E.V.A. Shutters"; - pixel_x = 26; - req_access_txt = "19" - }, -/obj/machinery/door/poddoor/shutters{ - id = "evashutters"; - name = "E.V.A. Storage Shutters" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (EAST)"; - icon_state = "plasteel_warn_side"; - dir = 4 - }, -/area/ai_monitored/storage/eva{ - name = "E.V.A. Storage" - }) -"cCW" = ( -/obj/structure/cable/white, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "corporatelounge"; - name = "Corporate Lounge Shutters" - }, -/turf/open/floor/plating, -/area/assembly/showroom{ - name = "\improper Corporate Showroom" - }) -"cCX" = ( -/obj/structure/sign/electricshock, -/turf/closed/wall/r_wall, -/area/assembly/showroom{ - name = "\improper Corporate Showroom" - }) -"cCY" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/command{ - name = "Corporate Lounge"; - req_access = null; - req_access_txt = "19" - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/wood, -/area/assembly/showroom{ - name = "\improper Corporate Showroom" - }) -"cCZ" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/command{ - name = "Gateway Atrium"; - req_access_txt = "62" - }, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/gateway) -"cDa" = ( -/obj/machinery/door/poddoor/shutters{ - id = "gatewayshutters"; - name = "Gateway Chamber Shutters" - }, -/obj/machinery/button/door{ - id = "gatewayshutters"; - name = "Gateway Shutters"; - pixel_x = -26 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (EAST)"; - icon_state = "plasteel_warn_side"; - dir = 4 - }, -/area/gateway) -"cDb" = ( -/obj/machinery/door/poddoor/shutters{ - id = "gatewayshutters"; - name = "Gateway Chamber Shutters" - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (EAST)"; - icon_state = "plasteel_warn_side"; - dir = 4 - }, -/area/gateway) -"cDc" = ( -/obj/machinery/door/poddoor/shutters{ - id = "gatewayshutters"; - name = "Gateway Chamber Shutters" - }, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (EAST)"; - icon_state = "plasteel_warn_side"; - dir = 4 - }, -/area/gateway) -"cDd" = ( -/obj/structure/sign/directions/engineering{ - desc = "A sign that shows there are doors here. There are doors everywhere!"; - icon_state = "doors"; - name = "WARNING: BLAST DOORS"; - pixel_x = 0; - pixel_y = 0; - tag = "icon-doors" - }, -/turf/closed/wall/r_wall, -/area/gateway) -"cDe" = ( -/turf/closed/wall, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"cDf" = ( -/obj/effect/decal/cleanable/cobweb, -/obj/effect/decal/cleanable/dirt, -/obj/structure/rack, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 2; - name = "2maintenance loot spawner" - }, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"cDg" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"cDh" = ( -/obj/structure/mopbucket, -/obj/item/weapon/mop, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"cDi" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/vending/cigarette, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/crew_quarters/locker/locker_toilet{ - name = "\improper Restrooms" - }) -"cDj" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral/corner, -/area/crew_quarters/locker/locker_toilet{ - name = "\improper Restrooms" - }) -"cDk" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/vomit/old, -/obj/structure/toilet{ - tag = "icon-toilet00 (WEST)"; - icon_state = "toilet00"; - dir = 8 - }, -/obj/machinery/newscaster{ - pixel_x = -32 - }, -/obj/machinery/light/small, -/turf/open/floor/plating, -/area/crew_quarters/locker/locker_toilet{ - name = "\improper Restrooms" - }) -"cDl" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/toilet{ - tag = "icon-toilet00 (WEST)"; - icon_state = "toilet00"; - dir = 8 - }, -/obj/machinery/newscaster{ - pixel_x = -32 - }, -/obj/machinery/light/small, -/turf/open/floor/plasteel/bot, -/area/crew_quarters/locker/locker_toilet{ - name = "\improper Restrooms" - }) -"cDm" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/toilet{ - tag = "icon-toilet00 (WEST)"; - icon_state = "toilet00"; - dir = 8 - }, -/obj/machinery/newscaster{ - pixel_x = -32 - }, -/obj/machinery/light/small, -/obj/effect/landmark/start{ - name = "Assistant" - }, -/turf/open/floor/plasteel/bot, -/area/crew_quarters/locker/locker_toilet{ - name = "\improper Restrooms" - }) -"cDn" = ( -/obj/machinery/door/firedoor, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/door/airlock{ - name = "Lockerroom" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/crew_quarters/locker) -"cDo" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock{ - name = "Lockerroom" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/crew_quarters/locker) -"cDp" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock{ - name = "Cabin 1" - }, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/sleep) -"cDq" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock{ - name = "Cabin 2" - }, -/turf/open/floor/wood, -/area/crew_quarters/sleep) -"cDr" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock{ - name = "Cabin 3" - }, -/turf/open/floor/carpet, -/area/crew_quarters/sleep) -"cDs" = ( -/obj/machinery/firealarm{ - dir = 8; - pixel_x = -24; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral/corner{ - dir = 1 - }, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cDt" = ( -/obj/structure/window/reinforced{ - dir = 1; - layer = 2.9 - }, -/obj/structure/window/reinforced{ - dir = 8 - }, -/turf/open/floor/plasteel/black, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cDu" = ( -/obj/structure/window/reinforced{ - dir = 1; - layer = 2.9 - }, -/turf/open/floor/plasteel/black, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cDv" = ( -/obj/structure/window/reinforced{ - dir = 1; - layer = 2.9 - }, -/obj/machinery/door/window{ - dir = 4; - name = "Fitness Ring"; - req_access_txt = "0" - }, -/turf/open/floor/plasteel/black, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cDw" = ( -/obj/machinery/status_display, -/turf/closed/wall, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cDx" = ( -/obj/structure/closet/emcloset{ - anchored = 1 - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/plasteel/bot, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cDy" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/plasticflaps{ - opacity = 1 - }, -/obj/machinery/navbeacon{ - codes_txt = "delivery;dir=1"; - dir = 1; - freq = 1400; - location = "Engineering" - }, -/turf/open/floor/plasteel/delivery, -/area/engine/engineering) -"cDz" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall/r_wall, -/area/engine/engineering) -"cDA" = ( -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Engineering Maintenance"; - req_access_txt = "10" - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (EAST)"; - icon_state = "plasteel_warn_side"; - dir = 4 - }, -/area/engine/engineering) -"cDB" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cDC" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cDD" = ( -/obj/structure/disposalpipe/segment, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cDE" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHEAST)"; - icon_state = "intact"; - dir = 6 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cDF" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cDG" = ( -/obj/effect/landmark{ - name = "lightsout" - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/central) -"cDH" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/open/floor/plasteel/neutral/corner{ - dir = 4 - }, -/area/hallway/primary/central) -"cDI" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_y = 26 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 4 - }, -/area/hallway/primary/central) -"cDJ" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/camera{ - c_tag = "Central Hallway - Science Aft"; - dir = 2; - name = "hallway camera" - }, -/turf/open/floor/plasteel/warning/corner{ - dir = 8 - }, -/area/hallway/primary/central) -"cDK" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/hallway/primary/central) -"cDL" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/hallway/primary/central) -"cDM" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/hallway/primary/central) -"cDN" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plasteel/warning/corner{ - dir = 4 - }, -/area/hallway/primary/central) -"cDO" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/light{ - dir = 1 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 4 - }, -/area/hallway/primary/central) -"cDP" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/firealarm{ - pixel_y = 24 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 4 - }, -/area/hallway/primary/central) -"cDQ" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel{ - icon_state = "L1" - }, -/area/hallway/primary/central) -"cDR" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel{ - icon_state = "L3" - }, -/area/hallway/primary/central) -"cDS" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel{ - icon_state = "L5" - }, -/area/hallway/primary/central) -"cDT" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel{ - icon_state = "L7" - }, -/area/hallway/primary/central) -"cDU" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plasteel{ - icon_state = "L9" - }, -/area/hallway/primary/central) -"cDV" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel{ - icon_state = "L11" - }, -/area/hallway/primary/central) -"cDW" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/open/floor/plasteel{ - desc = ""; - icon_state = "L13"; - name = "floor" - }, -/area/hallway/primary/central) -"cDX" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/extinguisher_cabinet{ - pixel_y = 32 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 1 - }, -/area/hallway/primary/central) -"cDY" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/light{ - dir = 1 - }, -/obj/machinery/camera{ - c_tag = "Central Hallway - Medbay Aft"; - dir = 2; - name = "hallway camera" - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 1 - }, -/area/hallway/primary/central) -"cDZ" = ( -/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, -/turf/open/floor/plasteel/neutral/corner{ - dir = 1 - }, -/area/hallway/primary/central) -"cEa" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/corner{ - dir = 8 - }, -/area/hallway/primary/central) -"cEb" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/camera{ - c_tag = "Central Hallway - Aft Starboard"; - dir = 8; - name = "hallway camera" - }, -/turf/open/floor/plasteel/neutral/corner, -/area/hallway/primary/central) -"cEc" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/rack, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 2; - name = "2maintenance loot spawner" - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 8; - heat_capacity = 1e+006 - }, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"cEd" = ( -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"cEe" = ( -/obj/structure/girder, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"cEf" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall, -/area/crew_quarters/locker/locker_toilet{ - name = "\improper Restrooms" - }) -"cEg" = ( -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Maintenance Hatch"; - req_access_txt = "12" - }, -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (EAST)"; - icon_state = "plasteel_warn_side"; - dir = 4 - }, -/area/crew_quarters/locker/locker_toilet{ - name = "\improper Restrooms" - }) -"cEh" = ( -/obj/effect/decal/cleanable/cobweb, -/obj/effect/decal/cleanable/dirt, -/obj/structure/closet/emcloset, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"cEi" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/rack, -/obj/item/weapon/reagent_containers/blood/random, -/obj/item/roller, -/turf/open/floor/plasteel/blue/corner{ - tag = "icon-bluecorner (NORTH)"; - icon_state = "bluecorner"; - dir = 1 - }, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"cEj" = ( -/obj/structure/table, -/obj/item/weapon/storage/box/bodybags, -/obj/item/weapon/pen, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"cEk" = ( -/obj/effect/decal/cleanable/cobweb/cobweb2, -/obj/effect/decal/cleanable/dirt, -/obj/structure/table, -/obj/item/weapon/storage/firstaid/regular, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"cEl" = ( -/obj/machinery/washing_machine, -/obj/machinery/camera{ - c_tag = "Dormitories - Port"; - dir = 4; - name = "dormitories camera" - }, -/turf/open/floor/plasteel/arrival{ - tag = "icon-arrival (WEST)"; - icon_state = "arrival"; - dir = 8 - }, -/area/crew_quarters/sleep) -"cEm" = ( -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral/corner{ - dir = 1 - }, -/area/crew_quarters/sleep) -"cEn" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHEAST)"; - icon_state = "intact"; - dir = 6 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 1; - heat_capacity = 1e+006 - }, -/area/crew_quarters/sleep) -"cEo" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral/corner{ - dir = 4 - }, -/area/crew_quarters/sleep) -"cEp" = ( -/obj/machinery/door/firedoor, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/door/airlock{ - name = "Dormitories" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/crew_quarters/sleep) -"cEq" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 1 - }, -/area/crew_quarters/sleep) -"cEr" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 1 - }, -/area/crew_quarters/sleep) -"cEs" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 1; - heat_capacity = 1e+006 - }, -/area/crew_quarters/sleep) -"cEt" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 4 - }, -/area/crew_quarters/sleep) -"cEu" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/camera{ - c_tag = "Dormitories - Starboard"; - dir = 2; - name = "dormitories camera" - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 4 - }, -/area/crew_quarters/sleep) -"cEv" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 4 - }, -/area/crew_quarters/sleep) -"cEw" = ( -/obj/machinery/door/firedoor, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/door/airlock{ - name = "Recreational Area" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/crew_quarters/sleep) -"cEx" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 1 - }, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cEy" = ( -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cEz" = ( -/obj/structure/window/reinforced{ - dir = 8 - }, -/turf/open/floor/plasteel/black, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cEA" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cEB" = ( -/obj/structure/window/reinforced{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cEC" = ( -/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cED" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 4 - }, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cEE" = ( -/obj/machinery/door/airlock/glass{ - name = "Holodeck Access" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cEF" = ( -/obj/machinery/light, -/obj/structure/extinguisher_cabinet{ - pixel_x = 0; - pixel_y = -32 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/bot, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cEG" = ( -/obj/machinery/door/airlock/glass{ - name = "Holodeck Access" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHWEST)"; - icon_state = "intact"; - dir = 9 - }, -/turf/open/floor/plasteel/warning/side, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cEH" = ( -/obj/machinery/door/airlock/glass{ - name = "Holodeck Access" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHEAST)"; - icon_state = "intact"; - dir = 5 - }, -/turf/open/floor/plasteel/warning/side, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cEI" = ( -/obj/machinery/light, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/bot, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cEJ" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 1; - heat_capacity = 1e+006 - }, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cEK" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/obj/machinery/camera{ - c_tag = "Holodeck Control"; - dir = 2; - name = "holodeck camera" - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 1; - heat_capacity = 1e+006 - }, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cEL" = ( -/turf/open/floor/plasteel/neutral/side{ - dir = 5 - }, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cEM" = ( -/obj/machinery/door/airlock/external{ - name = "External Airlock"; - req_access_txt = "13" - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning/side, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cEN" = ( -/turf/open/floor/plasteel/neutral/side{ - dir = 1; - heat_capacity = 1e+006 - }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cEO" = ( -/obj/structure/girder, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHEAST)"; - icon_state = "intact"; - dir = 6 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cEP" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/closet/crate{ - icon_state = "crateopen"; - opened = 1 - }, -/obj/item/device/flashlight, -/obj/effect/spawner/lootdrop/maintenance, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 1; - heat_capacity = 1e+006 - }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cEQ" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 1; - heat_capacity = 1e+006 - }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cER" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 1; - heat_capacity = 1e+006 - }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cES" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 1; - heat_capacity = 1e+006 - }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cET" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 1; - heat_capacity = 1e+006 - }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cEU" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cEV" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cEW" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cEX" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 1; - heat_capacity = 1e+006 - }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cEY" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 1; - heat_capacity = 1e+006 - }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cEZ" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/delivery, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cFa" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 1; - heat_capacity = 1e+006 - }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cFb" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/delivery, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cFc" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cFd" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cFe" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 1; - heat_capacity = 1e+006 - }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cFf" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cFg" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cFh" = ( -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cFi" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 8 - }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cFj" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 8 - }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cFk" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cFl" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cFm" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cFn" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cFo" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cFp" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/effect/landmark{ - name = "blobstart" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cFq" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/open/floor/plasteel/neutral/side{ - dir = 10; - heat_capacity = 1e+006 - }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cFr" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral/corner{ - dir = 8 - }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cFs" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cFt" = ( -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cFu" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHWEST)"; - icon_state = "intact"; - dir = 9 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cFv" = ( -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Maintenance Hatch"; - req_access_txt = "12" - }, -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cFw" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 8 - }, -/area/hallway/primary/central) -"cFx" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_Toxins = 0 - }, -/obj/machinery/navbeacon{ - codes_txt = "patrol;next_patrol=hall6"; - location = "hall5" - }, -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/central) -"cFy" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 8 - }, -/area/hallway/primary/central) -"cFz" = ( -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel{ - icon_state = "L2" - }, -/area/hallway/primary/central) -"cFA" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel{ - icon_state = "L4" - }, -/area/hallway/primary/central) -"cFB" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel{ - icon_state = "L6" - }, -/area/hallway/primary/central) -"cFC" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 2; - on = 1; - scrub_N2O = 1; - scrub_Toxins = 1 - }, -/obj/machinery/navbeacon{ - codes_txt = "patrol;next_patrol=hall7"; - location = "hall6" - }, -/turf/open/floor/plasteel{ - icon_state = "L8" - }, -/area/hallway/primary/central) -"cFD" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/navbeacon{ - codes_txt = "patrol;next_patrol=hall9"; - location = "hall8" - }, -/turf/open/floor/plasteel{ - icon_state = "L10" - }, -/area/hallway/primary/central) -"cFE" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel{ - icon_state = "L12" - }, -/area/hallway/primary/central) -"cFF" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel{ - desc = ""; - icon_state = "L14" - }, -/area/hallway/primary/central) -"cFG" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/central) -"cFH" = ( -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_Toxins = 0 - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/navbeacon{ - codes_txt = "patrol;next_patrol=hall10"; - location = "hall9" - }, -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/central) -"cFI" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 5 - }, -/obj/structure/disposalpipe/sortjunction{ - dir = 1; - icon_state = "pipe-j1s"; - name = "Medbay Junction"; - sortType = 9; - tag = "icon-pipe-j1s (NORTH)" - }, -/turf/open/floor/plasteel/neutral/corner, -/area/hallway/primary/central) -"cFJ" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Maintenance Hatch"; - req_access_txt = "12" - }, -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"cFK" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"cFL" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"cFM" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"cFN" = ( -/obj/structure/girder, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"cFO" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"cFP" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/delivery, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"cFQ" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"cFR" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/delivery, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"cFS" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Maintenance Hatch"; - req_access_txt = "12" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"cFT" = ( -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"cFU" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/landmark{ - name = "blobstart" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"cFV" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHWEST)"; - icon_state = "intact"; - dir = 10 - }, -/obj/structure/table, -/obj/item/weapon/reagent_containers/glass/beaker/large, -/obj/item/weapon/reagent_containers/glass/beaker, -/obj/item/weapon/reagent_containers/dropper, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"cFW" = ( -/obj/structure/table, -/obj/structure/bedsheetbin, -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/turf/open/floor/plasteel/arrival{ - tag = "icon-arrival (WEST)"; - icon_state = "arrival"; - dir = 8 - }, -/area/crew_quarters/sleep) -"cFX" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral/side{ - dir = 8 - }, -/area/crew_quarters/sleep) -"cFY" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/sleep) -"cFZ" = ( -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/crew_quarters/sleep) -"cGa" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/tinted/fulltile, -/turf/open/floor/plating, -/area/crew_quarters/sleep) -"cGb" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 8 - }, -/area/crew_quarters/sleep) -"cGc" = ( -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/sleep) -"cGd" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 2; - on = 1; - scrub_N2O = 1; - scrub_Toxins = 1 - }, -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/sleep) -"cGe" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/sleep) -"cGf" = ( -/obj/effect/landmark{ - name = "lightsout" - }, -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/sleep) -"cGg" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1 - }, -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/sleep) -"cGh" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/light/small{ - dir = 8 - }, -/obj/machinery/camera{ - c_tag = "Recreation - Center"; - dir = 4; - name = "recreation camera" - }, -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cGi" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/holopad, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/bot, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cGj" = ( -/obj/structure/window/reinforced{ - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cGk" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cGl" = ( -/obj/structure/sign/nosmoking_2, -/turf/closed/wall, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cGm" = ( -/obj/machinery/computer/holodeck, -/turf/open/floor/plasteel/neutral/side{ - dir = 8; - heat_capacity = 1e+006 - }, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cGn" = ( -/obj/structure/chair/office/light{ - dir = 8 - }, -/obj/effect/landmark/start{ - name = "Assistant" - }, -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cGo" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/paper_bin, -/obj/item/weapon/pen, -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cGp" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHEAST)"; - icon_state = "intact"; - dir = 6 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 8 - }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cGq" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cGr" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/neutral/side, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cGs" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/neutral/side, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cGt" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plasteel/delivery, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cGu" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cGv" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/neutral/side, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cGw" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cGx" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/delivery, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cGy" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/neutral/side, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cGz" = ( -/obj/structure/girder, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cGA" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/closet/crate, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 2; - name = "2maintenance loot spawner" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/neutral/side, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cGB" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/rack, -/obj/item/clothing/gloves/color/fyellow, -/obj/effect/spawner/lootdrop/maintenance, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/neutral/side, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cGC" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 8 - }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cGD" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cGE" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cGF" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHEAST)"; - icon_state = "intact"; - dir = 6 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cGG" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall/r_wall, -/area/toxins/xenobiology) -"cGH" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/closed/wall/r_wall, -/area/toxins/xenobiology) -"cGI" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall/r_wall, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cGJ" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cGK" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cGL" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cGM" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cGN" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cGO" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 8 - }, -/area/hallway/primary/central) -"cGP" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/junction{ - icon_state = "pipe-j1"; - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 8 - }, -/area/hallway/primary/central) -"cGQ" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 8 - }, -/area/hallway/primary/central) -"cGR" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 8 - }, -/area/hallway/primary/central) -"cGS" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/obj/structure/disposalpipe/sortjunction{ - dir = 4; - icon_state = "pipe-j1s"; - name = "Research Junction"; - sortType = 12 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 8 - }, -/area/hallway/primary/central) -"cGT" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/light/small, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/camera{ - c_tag = "Central Hallway - Aft"; - dir = 1; - name = "hallway camera" - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 8 - }, -/area/hallway/primary/central) -"cGU" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 8 - }, -/area/hallway/primary/central) -"cGV" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/open/floor/plasteel/neutral/side, -/area/hallway/primary/central) -"cGW" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/blue/corner, -/area/hallway/primary/central) -"cGX" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/light/small, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/blue/corner, -/area/hallway/primary/central) -"cGY" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/blue/corner, -/area/hallway/primary/central) -"cGZ" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/blue/corner, -/area/hallway/primary/central) -"cHa" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/sortjunction{ - dir = 4; - icon_state = "pipe-j1s"; - name = "CMO's Junction"; - sortType = 10 - }, -/turf/open/floor/plasteel/blue/corner, -/area/hallway/primary/central) -"cHb" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/neutral/corner, -/area/hallway/primary/central) -"cHc" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"cHd" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"cHe" = ( -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"cHf" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/effect/spawner/lootdrop/maintenance, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"cHg" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/effect/landmark{ - name = "blobstart" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"cHh" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"cHi" = ( -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"cHj" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall/r_wall, -/area/medical/medbay2{ - name = "Medbay Storage" - }) -"cHk" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/light/small{ - dir = 8 - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"cHl" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHWEST)"; - icon_state = "intact"; - dir = 10 - }, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"cHm" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/iv_drip{ - density = 0 - }, -/turf/open/floor/plasteel/blue/corner{ - dir = 4 - }, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"cHn" = ( -/obj/machinery/washing_machine, -/turf/open/floor/plasteel/arrival{ - tag = "icon-arrival (WEST)"; - icon_state = "arrival"; - dir = 8 - }, -/area/crew_quarters/sleep) -"cHo" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHEAST)"; - icon_state = "intact"; - dir = 5 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 8; - heat_capacity = 1e+006 - }, -/area/crew_quarters/sleep) -"cHp" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side, -/area/crew_quarters/sleep) -"cHq" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/neutral/corner, -/area/crew_quarters/sleep) -"cHr" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock{ - name = "Dormitories" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/crew_quarters/sleep) -"cHs" = ( -/obj/machinery/firealarm{ - dir = 1; - pixel_x = 0; - pixel_y = -26 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 8; - heat_capacity = 1e+006 - }, -/area/crew_quarters/sleep) -"cHt" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 8; - heat_capacity = 1e+006 - }, -/area/crew_quarters/sleep) -"cHu" = ( -/obj/machinery/light, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 8 - }, -/area/crew_quarters/sleep) -"cHv" = ( -/obj/structure/cable/white, -/obj/machinery/power/apc{ - dir = 2; - name = "Dormitories APC"; - pixel_y = -26 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/camera{ - c_tag = "Dormitories - Center"; - dir = 1; - name = "dormitories camera" - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 8; - heat_capacity = 1e+006 - }, -/area/crew_quarters/sleep) -"cHw" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side, -/area/crew_quarters/sleep) -"cHx" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner, -/area/crew_quarters/sleep) -"cHy" = ( -/obj/machinery/light, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner, -/area/crew_quarters/sleep) -"cHz" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock{ - name = "Recreational Area" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/crew_quarters/sleep) -"cHA" = ( -/obj/machinery/light_switch{ - pixel_x = -26; - pixel_y = -26 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 8 - }, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cHB" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/effect/landmark{ - name = "lightsout" - }, -/obj/machinery/atmospherics/pipe/manifold4w/scrubbers/hidden, -/obj/structure/disposalpipe/junction{ - dir = 1; - icon_state = "pipe-j2" - }, -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cHC" = ( -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cHD" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cHE" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/folder/blue, -/obj/item/weapon/storage/firstaid/regular, -/turf/open/floor/plasteel/neutral/side{ - dir = 8; - heat_capacity = 1e+006 - }, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cHF" = ( -/obj/machinery/holopad, -/turf/open/floor/plasteel/bot, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cHG" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/clipboard, -/obj/item/weapon/folder, -/obj/item/weapon/paper{ - desc = ""; - info = "Brusies sustained in the holodeck can be healed simply by sleeping."; - name = "Holodeck Disclaimer" - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cHH" = ( -/obj/machinery/shieldgen, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning{ - dir = 5 - }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cHI" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral/side{ - dir = 8 - }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cHJ" = ( -/turf/closed/wall, -/area/maintenance/electrical) -"cHK" = ( -/obj/structure/sign/securearea, -/turf/closed/wall, -/area/maintenance/electrical) -"cHL" = ( -/obj/machinery/door/airlock/atmos{ - name = "Atmospherics Auxiliary Port"; - req_access_txt = "24" - }, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (EAST)"; - icon_state = "plasteel_warn_side"; - dir = 4 - }, -/area/maintenance/electrical) -"cHM" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall, -/area/maintenance/electrical) -"cHN" = ( -/obj/structure/sign/electricshock, -/turf/closed/wall, -/area/maintenance/electrical) -"cHO" = ( -/obj/machinery/door/airlock/engineering{ - name = "Engineering Auxiliary Power"; - req_access_txt = "10" - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (EAST)"; - icon_state = "plasteel_warn_side"; - dir = 4 - }, -/area/maintenance/electrical) -"cHP" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHEAST)"; - icon_state = "intact"; - dir = 5 - }, -/mob/living/simple_animal/cockroach, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cHQ" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cHR" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cHS" = ( -/turf/closed/wall/r_wall, -/area/toxins/xenobiology) -"cHT" = ( -/obj/structure/reagent_dispensers/watertank, -/obj/item/weapon/extinguisher, -/obj/item/weapon/extinguisher, -/turf/open/floor/plasteel/bot, -/area/toxins/xenobiology) -"cHU" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible, -/obj/machinery/light/small{ - dir = 1 - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/portable_atmospherics/canister/air, -/turf/open/floor/plasteel/bot, -/area/toxins/xenobiology) -"cHV" = ( -/obj/machinery/atmospherics/components/unary/tank/air, -/turf/open/floor/plasteel/bot, -/area/toxins/xenobiology) -"cHW" = ( -/turf/closed/wall, -/area/toxins/xenobiology) -"cHX" = ( -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/toxins/xenobiology) -"cHY" = ( -/obj/machinery/light/small{ - dir = 1 - }, -/obj/machinery/camera{ - c_tag = "Xenobiology - Cell 1"; - name = "xenobiology camera"; - network = list("SS13","xeno","RD") - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/toxins/xenobiology) -"cHZ" = ( -/obj/machinery/light/small{ - dir = 1 - }, -/obj/machinery/camera{ - c_tag = "Xenobiology - Cell 2"; - name = "xenobiology camera"; - network = list("SS13","xeno","RD") - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/toxins/xenobiology) -"cIa" = ( -/obj/machinery/light/small{ - dir = 1 - }, -/obj/machinery/camera{ - c_tag = "Xenobiology - Cell 3"; - name = "xenobiology camera"; - network = list("SS13","xeno","RD") - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/toxins/xenobiology) -"cIb" = ( -/obj/machinery/light/small{ - dir = 1 - }, -/obj/machinery/camera{ - c_tag = "Xenobiology - Killroom Chamber"; - dir = 2; - name = "xenobiology camera"; - network = list("SS13","xeno","RD") - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/toxins/xenobiology) -"cIc" = ( -/obj/structure/closet/crate{ - icon_state = "crateopen"; - opened = 1 - }, -/obj/item/device/flashlight, -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cId" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral/side, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cIe" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/closet, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 2; - name = "2maintenance loot spawner" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cIf" = ( -/obj/machinery/light, -/obj/structure/closet/emcloset, -/turf/open/floor/plasteel/delivery, -/area/hallway/primary/central) -"cIg" = ( -/obj/machinery/disposal/bin, -/obj/structure/disposalpipe/trunk{ - dir = 1 - }, -/turf/open/floor/plasteel/delivery, -/area/hallway/primary/central) -"cIh" = ( -/obj/structure/sign/science, -/turf/closed/wall, -/area/hallway/primary/central) -"cIi" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/medical/research{ - name = "Research Division" - }) -"cIj" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plating, -/area/medical/research{ - name = "Research Division" - }) -"cIk" = ( -/obj/machinery/door/firedoor, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/medical/research{ - name = "Research Division" - }) -"cIl" = ( -/obj/machinery/status_display, -/turf/closed/wall, -/area/medical/research{ - name = "Research Division" - }) -"cIm" = ( -/obj/machinery/door/firedoor, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/medical/research{ - name = "Research Division" - }) -"cIn" = ( -/obj/structure/sign/directions/evac{ - pixel_y = -8 - }, -/obj/structure/sign/directions/science{ - dir = 8 - }, -/obj/structure/sign/directions/engineering{ - dir = 8; - pixel_y = 8 - }, -/turf/closed/wall, -/area/medical/research{ - name = "Research Division" - }) -"cIo" = ( -/obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/door/airlock/glass{ - name = "Aft Primary Hallway" - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/hallway/primary/central) -"cIp" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass{ - name = "Aft Primary Hallway" - }, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/hallway/primary/central) -"cIq" = ( -/obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/door/airlock/glass{ - name = "Aft Primary Hallway" - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/hallway/primary/central) -"cIr" = ( -/obj/structure/sign/directions/evac{ - pixel_y = -8 - }, -/obj/structure/sign/directions/medical{ - dir = 4 - }, -/obj/structure/sign/directions/security{ - dir = 4; - pixel_y = 8 - }, -/turf/closed/wall, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cIs" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cIt" = ( -/obj/machinery/door/firedoor, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cIu" = ( -/obj/machinery/status_display, -/turf/closed/wall, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cIv" = ( -/obj/machinery/door/firedoor, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cIw" = ( -/obj/structure/sign/bluecross_2, -/turf/closed/wall, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cIx" = ( -/obj/machinery/disposal/bin, -/turf/open/floor/plasteel/delivery, -/area/hallway/primary/central) -"cIy" = ( -/obj/machinery/vending/snack, -/obj/machinery/light, -/turf/open/floor/plasteel/delivery, -/area/hallway/primary/central) -"cIz" = ( -/obj/machinery/vending/cola, -/turf/open/floor/plasteel/delivery, -/area/hallway/primary/central) -"cIA" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/neutral/side{ - dir = 8; - heat_capacity = 1e+006 - }, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"cIB" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/neutral, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"cIC" = ( -/obj/structure/grille, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"cID" = ( -/turf/closed/wall/r_wall, -/area/medical/medbay2{ - name = "Medbay Storage" - }) -"cIE" = ( -/obj/machinery/vending/medical, -/turf/open/floor/plasteel/neutral/corner, -/area/medical/medbay2{ - name = "Medbay Storage" - }) -"cIF" = ( -/obj/structure/closet/secure_closet/medical3, -/obj/machinery/newscaster{ - pixel_y = 32 - }, -/turf/open/floor/plasteel/neutral/side, -/area/medical/medbay2{ - name = "Medbay Storage" - }) -"cIG" = ( -/obj/structure/closet/secure_closet/medical3, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = 0; - pixel_y = 26 - }, -/turf/open/floor/plasteel/neutral/side, -/area/medical/medbay2{ - name = "Medbay Storage" - }) -"cIH" = ( -/obj/structure/closet/wardrobe/white/medical, -/obj/structure/extinguisher_cabinet{ - pixel_y = 32 - }, -/obj/item/weapon/storage/backpack/satchel/med, -/turf/open/floor/plasteel/neutral/side, -/area/medical/medbay2{ - name = "Medbay Storage" - }) -"cII" = ( -/obj/machinery/disposal/bin, -/obj/structure/disposalpipe/trunk, -/turf/open/floor/plasteel/bot, -/area/medical/medbay2{ - name = "Medbay Storage" - }) -"cIJ" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/blue/corner{ - tag = "icon-bluecorner (WEST)"; - icon_state = "bluecorner"; - dir = 8 - }, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"cIK" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/plasteel/neutral, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"cIL" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"cIM" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock{ - name = "Cabin 4" - }, -/turf/open/floor/wood, -/area/crew_quarters/sleep) -"cIN" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock{ - name = "Cabin 5" - }, -/turf/open/floor/carpet, -/area/crew_quarters/sleep) -"cIO" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock{ - name = "Cabin 6" - }, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/sleep) -"cIP" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral/corner{ - dir = 8 - }, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cIQ" = ( -/obj/structure/window/reinforced, -/obj/machinery/door/window{ - dir = 8; - name = "Fitness Ring"; - req_access_txt = "0" - }, -/turf/open/floor/plasteel/black, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cIR" = ( -/obj/structure/window/reinforced, -/turf/open/floor/plasteel/black, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cIS" = ( -/obj/structure/window/reinforced, -/obj/structure/window/reinforced{ - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cIT" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/plasteel/neutral/corner, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cIU" = ( -/obj/machinery/door/airlock/glass{ - name = "Holodeck Access" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cIV" = ( -/obj/machinery/light{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/bot, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cIW" = ( -/obj/machinery/door/airlock/glass{ - name = "Holodeck Access" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHWEST)"; - icon_state = "intact"; - dir = 10 - }, -/turf/open/floor/plasteel/warning/side, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cIX" = ( -/obj/machinery/door/airlock/glass{ - name = "Holodeck Access" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHEAST)"; - icon_state = "intact"; - dir = 6 - }, -/turf/open/floor/plasteel/warning/side, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cIY" = ( -/obj/machinery/light{ - dir = 1 - }, -/obj/structure/extinguisher_cabinet{ - pixel_y = 32 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/bot, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cIZ" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cJa" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/neutral/side, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cJb" = ( -/turf/open/floor/plasteel/neutral/side{ - dir = 6 - }, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cJc" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cJd" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cJe" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning{ - tag = "icon-warning (EAST)"; - dir = 4 - }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cJf" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cJg" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/closet, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 3; - name = "3maintenance loot spawner" - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cJh" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible, -/obj/structure/sign/poster{ - icon_state = "poster4_legit"; - pixel_x = 0; - pixel_y = 32; - tag = "icon-poster4_legit" - }, -/turf/open/floor/plasteel/warning{ - dir = 9 - }, -/area/maintenance/electrical) -"cJi" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible, -/obj/machinery/portable_atmospherics/canister/air, -/turf/open/floor/plasteel/warning{ - dir = 5 - }, -/area/maintenance/electrical) -"cJj" = ( -/obj/machinery/atmospherics/pipe/simple/supply/visible, -/turf/open/floor/plasteel/delivery, -/area/maintenance/electrical) -"cJk" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible, -/obj/machinery/light_switch{ - pixel_y = 26 - }, -/turf/open/floor/plasteel/bot, -/area/maintenance/electrical) -"cJl" = ( -/obj/structure/closet/secure_closet/engineering_electrical, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/maintenance/electrical) -"cJm" = ( -/obj/structure/table/reinforced, -/obj/structure/extinguisher_cabinet{ - pixel_x = -26 - }, -/obj/item/weapon/reagent_containers/food/drinks/soda_cans/thirteenloko, -/turf/open/floor/plasteel/delivery, -/area/maintenance/electrical) -"cJn" = ( -/obj/structure/table/reinforced, -/obj/machinery/airalarm{ - pixel_y = 23 - }, -/obj/item/weapon/electronics/apc{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/electronics/apc, -/turf/open/floor/plasteel/delivery, -/area/maintenance/electrical) -"cJo" = ( -/obj/machinery/power/port_gen/pacman, -/obj/machinery/light/small{ - dir = 1 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/delivery, -/area/maintenance/electrical) -"cJp" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/turf/open/floor/plasteel/bot, -/area/maintenance/electrical) -"cJq" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/delivery, -/area/maintenance/electrical) -"cJr" = ( -/obj/machinery/light_switch{ - pixel_y = 26 - }, -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/bot, -/area/maintenance/electrical) -"cJs" = ( -/obj/machinery/light/small{ - dir = 1 - }, -/obj/structure/rack, -/obj/structure/sign/poster{ - icon_state = "poster22_legit"; - pixel_y = 32; - tag = "icon-poster22_legit" - }, -/obj/item/weapon/storage/toolbox/mechanical{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/weapon/storage/toolbox/electrical, -/turf/open/floor/plasteel/delivery, -/area/maintenance/electrical) -"cJt" = ( -/obj/structure/table/reinforced, -/obj/machinery/newscaster{ - pixel_y = 32 - }, -/obj/item/stack/cable_coil/white{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/stack/cable_coil/white, -/obj/item/device/multitool, -/turf/open/floor/plasteel/delivery, -/area/maintenance/electrical) -"cJu" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/storage/box/lights/mixed{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/storage/box/lights/mixed, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/delivery, -/area/maintenance/electrical) -"cJv" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cJw" = ( -/obj/structure/girder, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cJx" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/closet, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 2; - name = "2maintenance loot spawner" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cJy" = ( -/obj/structure/rack, -/obj/item/weapon/book/manual/wiki/engineering_guide, -/obj/effect/spawner/lootdrop/maintenance, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cJz" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cJA" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cJB" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHWEST)"; - icon_state = "intact"; - dir = 9 - }, -/turf/open/floor/plasteel/delivery, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cJC" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Xenobiology Maintenance"; - req_access_txt = "47" - }, -/turf/open/floor/plasteel/warning/side, -/area/toxins/xenobiology) -"cJD" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/warning{ - dir = 9 - }, -/area/toxins/xenobiology) -"cJE" = ( -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/effect/landmark{ - name = "blobstart" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/toxins/xenobiology) -"cJF" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHWEST)"; - icon_state = "intact"; - dir = 9 - }, -/turf/open/floor/plasteel/warning{ - dir = 5 - }, -/area/toxins/xenobiology) -"cJG" = ( -/mob/living/simple_animal/slime, -/turf/open/floor/plasteel/circuit/gcircuit, -/area/toxins/xenobiology) -"cJH" = ( -/turf/open/floor/plasteel/circuit/gcircuit, -/area/toxins/xenobiology) -"cJI" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 2; - external_pressure_bound = 140; - name = "server vent"; - on = 1; - pressure_checks = 0 - }, -/turf/open/floor/bluegrid{ - name = "Killroom Floor"; - initial_gas_mix = "n2=500;TEMP=80" - }, -/area/toxins/xenobiology) -"cJJ" = ( -/turf/open/floor/bluegrid{ - name = "Mainframe Base"; - initial_gas_mix = "n2=100;TEMP=80" - }, -/area/toxins/xenobiology) -"cJK" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 2; - external_pressure_bound = 120; - initialize_directions = 1; - internal_pressure_bound = 4000; - name = "server vent"; - on = 1; - pressure_checks = 2; - pump_direction = 0 - }, -/turf/open/floor/bluegrid{ - name = "Killroom Floor"; - initial_gas_mix = "n2=500;TEMP=80" - }, -/area/toxins/xenobiology) -"cJL" = ( -/turf/closed/wall/r_wall, -/area/medical/research{ - name = "Research Division" - }) -"cJM" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/closed/wall/r_wall, -/area/medical/research{ - name = "Research Division" - }) -"cJN" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Science Maintenance"; - req_access_txt = "47" - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/medical/research{ - name = "Research Division" - }) -"cJO" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall/r_wall, -/area/medical/research{ - name = "Research Division" - }) -"cJP" = ( -/turf/closed/wall/r_wall, -/area/security/checkpoint/science{ - name = "Security Post - Research Division" - }) -"cJQ" = ( -/obj/structure/table, -/obj/item/weapon/paper_bin, -/obj/item/weapon/pen, -/obj/structure/sign/poster{ - tag = "icon-poster7_legit"; - icon_state = "poster7_legit"; - pixel_x = -32; - pixel_y = 0 - }, -/turf/open/floor/plasteel/whitepurple/corner{ - tag = "icon-whitepurplecorner (NORTH)"; - icon_state = "whitepurplecorner"; - dir = 1 - }, -/area/medical/research{ - name = "Research Division" - }) -"cJR" = ( -/obj/structure/chair, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/whitepurple/corner{ - tag = "icon-whitepurplecorner (NORTH)"; - icon_state = "whitepurplecorner"; - dir = 1 - }, -/area/medical/research{ - name = "Research Division" - }) -"cJS" = ( -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/whitepurple/corner{ - tag = "icon-whitepurplecorner (NORTH)"; - icon_state = "whitepurplecorner"; - dir = 1 - }, -/area/medical/research{ - name = "Research Division" - }) -"cJT" = ( -/obj/structure/chair, -/obj/effect/landmark/start{ - name = "Assistant" - }, -/turf/open/floor/plasteel/whitepurple/corner{ - tag = "icon-whitepurplecorner (NORTH)"; - icon_state = "whitepurplecorner"; - dir = 1 - }, -/area/medical/research{ - name = "Research Division" - }) -"cJU" = ( -/obj/structure/table, -/obj/item/weapon/folder/white, -/obj/item/device/paicard, -/turf/open/floor/plasteel/whitepurple/corner{ - tag = "icon-whitepurplecorner (NORTH)"; - icon_state = "whitepurplecorner"; - dir = 1 - }, -/area/medical/research{ - name = "Research Division" - }) -"cJV" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-18" - }, -/obj/machinery/light{ - dir = 1 - }, -/turf/open/floor/plasteel/whitepurple/side{ - tag = "icon-whitepurple (NORTH)"; - icon_state = "whitepurple"; - dir = 1 - }, -/area/medical/research{ - name = "Research Division" - }) -"cJW" = ( -/obj/structure/table, -/obj/item/stack/cable_coil/white, -/obj/item/device/assembly/igniter, -/obj/item/device/assembly/timer{ - pixel_x = 3; - pixel_y = 3 - }, -/turf/open/floor/plasteel/whitepurple/corner{ - dir = 4 - }, -/area/medical/research{ - name = "Research Division" - }) -"cJX" = ( -/obj/structure/chair, -/turf/open/floor/plasteel/whitepurple/corner{ - dir = 4 - }, -/area/medical/research{ - name = "Research Division" - }) -"cJY" = ( -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/whitepurple/corner{ - dir = 4 - }, -/area/medical/research{ - name = "Research Division" - }) -"cJZ" = ( -/turf/open/floor/plasteel/whitepurple/corner{ - dir = 4 - }, -/area/medical/research{ - name = "Research Division" - }) -"cKa" = ( -/obj/structure/chair, -/obj/effect/landmark/start{ - name = "Assistant" - }, -/turf/open/floor/plasteel/whitepurple/corner{ - dir = 4 - }, -/area/medical/research{ - name = "Research Division" - }) -"cKb" = ( -/obj/structure/table, -/obj/item/clothing/gloves/color/latex, -/obj/item/clothing/glasses/science, -/turf/open/floor/plasteel/whitepurple/corner{ - dir = 4 - }, -/area/medical/research{ - name = "Research Division" - }) -"cKc" = ( -/obj/structure/sign/science, -/turf/closed/wall, -/area/medical/research{ - name = "Research Division" - }) -"cKd" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral/corner{ - dir = 8 - }, -/area/hallway/primary/aft) -"cKe" = ( -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/aft) -"cKf" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/blue/corner, -/area/hallway/primary/aft) -"cKg" = ( -/obj/structure/table, -/obj/item/weapon/storage/box/bodybags, -/obj/item/weapon/pen, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 1 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cKh" = ( -/obj/structure/chair, -/obj/effect/landmark/start{ - name = "Assistant" - }, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 1 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cKi" = ( -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 1 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cKj" = ( -/obj/structure/chair, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 1 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cKk" = ( -/obj/structure/table, -/obj/item/weapon/reagent_containers/glass/bottle/charcoal{ - pixel_x = 6 - }, -/obj/item/weapon/reagent_containers/glass/bottle/epinephrine, -/obj/item/weapon/reagent_containers/syringe, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 1 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cKl" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-18" - }, -/obj/machinery/light{ - dir = 1 - }, -/turf/open/floor/plasteel/whiteblue/side{ - dir = 1 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cKm" = ( -/obj/structure/table, -/obj/item/stack/medical/gauze, -/obj/item/stack/medical/bruise_pack, -/obj/item/stack/medical/ointment, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 4 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cKn" = ( -/obj/structure/chair, -/obj/effect/landmark/start{ - name = "Assistant" - }, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 4 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cKo" = ( -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 4 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cKp" = ( -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 4 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cKq" = ( -/obj/structure/chair, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 4 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cKr" = ( -/obj/structure/table, -/obj/item/weapon/storage/firstaid/regular, -/obj/item/device/radio/intercom{ - dir = 8; - name = "Station Intercom (General)"; - pixel_x = 28 - }, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 4 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cKs" = ( -/turf/closed/wall, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cKt" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/structure/reagent_dispensers/fueltank, -/turf/open/floor/plasteel/neutral/side{ - dir = 10; - heat_capacity = 1e+006 - }, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"cKu" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/reagent_dispensers/watertank, -/obj/item/weapon/reagent_containers/glass/bucket, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"cKv" = ( -/obj/structure/closet/firecloset, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"cKw" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/neutral/side, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"cKx" = ( -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/machinery/power/apc{ - dir = 8; - name = "Medbay Storage APC"; - pixel_x = -26; - pixel_y = 0 - }, -/obj/machinery/camera{ - c_tag = "Medbay - Storage"; - dir = 4; - name = "medbay camera" - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/medical/medbay2{ - name = "Medbay Storage" - }) -"cKy" = ( -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/whiteblue/side{ - tag = "icon-whiteblue (NORTH)"; - icon_state = "whiteblue"; - dir = 1 - }, -/area/medical/medbay2{ - name = "Medbay Storage" - }) -"cKz" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/whiteblue/side{ - tag = "icon-whiteblue (NORTH)"; - icon_state = "whiteblue"; - dir = 1 - }, -/area/medical/medbay2{ - name = "Medbay Storage" - }) -"cKA" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 8; - heat_capacity = 1e+006 - }, -/area/medical/medbay2{ - name = "Medbay Storage" - }) -"cKB" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/door/airlock{ - name = "Medbay Auxiliary Storage"; - req_access_txt = "5" - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/medical/medbay2{ - name = "Medbay Storage" - }) -"cKC" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/delivery, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"cKD" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"cKE" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHEAST)"; - icon_state = "intact"; - dir = 5 - }, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"cKF" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/blue/corner, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"cKG" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/delivery, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"cKH" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Maintenance Hatch"; - req_access_txt = "12" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"cKI" = ( -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/delivery, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"cKJ" = ( -/obj/effect/decal/cleanable/cobweb/cobweb2, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHWEST)"; - icon_state = "intact"; - dir = 10 - }, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"cKK" = ( -/obj/structure/dresser, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = 26; - pixel_y = 26 - }, -/turf/open/floor/wood, -/area/crew_quarters/sleep) -"cKL" = ( -/obj/structure/table/wood, -/obj/item/device/flashlight/lamp/green, -/turf/open/floor/carpet, -/area/crew_quarters/sleep) -"cKM" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1 - }, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = 26; - pixel_y = 26 - }, -/turf/open/floor/carpet, -/area/crew_quarters/sleep) -"cKN" = ( -/obj/structure/table/wood, -/obj/item/weapon/folder/blue, -/obj/item/weapon/pen/blue, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/sleep) -"cKO" = ( -/obj/structure/table/wood, -/obj/item/device/flashlight/lamp, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = 26; - pixel_y = 26 - }, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/sleep) -"cKP" = ( -/obj/machinery/vending/cola, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/delivery, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cKQ" = ( -/turf/open/floor/plasteel/neutral/side{ - dir = 1 - }, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cKR" = ( -/obj/structure/chair{ - dir = 1 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 1 - }, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cKS" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral/corner, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cKT" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cKU" = ( -/obj/structure/rack, -/obj/item/clothing/gloves/color/black, -/obj/item/weapon/crowbar/red, -/obj/item/weapon/wrench, -/obj/machinery/light/small, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning{ - dir = 10 - }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cKV" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/blood/splatter, -/turf/open/floor/plasteel/warning{ - dir = 6 - }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cKW" = ( -/obj/machinery/atmospherics/components/binary/valve, -/obj/machinery/airalarm{ - dir = 4; - locked = 0; - pixel_x = -23; - pixel_y = 0 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/maintenance/electrical) -"cKX" = ( -/obj/machinery/atmospherics/components/binary/valve, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/maintenance/electrical) -"cKY" = ( -/obj/machinery/atmospherics/pipe/simple/supply/visible, -/turf/open/floor/plasteel/caution{ - dir = 8 - }, -/area/maintenance/electrical) -"cKZ" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/caution{ - dir = 4 - }, -/area/maintenance/electrical) -"cLa" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/maintenance/electrical) -"cLb" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/maintenance/electrical) -"cLc" = ( -/obj/item/weapon/book/manual/wiki/engineering_hacking{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/weapon/book/manual/wiki/engineering_guide, -/obj/item/weapon/book/manual/wiki/engineering_construction{ - pixel_x = 3; - pixel_y = -3 - }, -/obj/structure/table/reinforced, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/maintenance/electrical) -"cLd" = ( -/turf/open/floor/plasteel/warning{ - dir = 9 - }, -/area/maintenance/electrical) -"cLe" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/maintenance/electrical) -"cLf" = ( -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/maintenance/electrical) -"cLg" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/maintenance/electrical) -"cLh" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/maintenance/electrical) -"cLi" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/maintenance/electrical) -"cLj" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plating, -/area/maintenance/electrical) -"cLk" = ( -/obj/machinery/cell_charger, -/obj/structure/table/reinforced, -/obj/item/weapon/stock_parts/cell/high, -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/machinery/power/apc{ - dir = 4; - name = "Auxiliary Power APC"; - pixel_x = 26; - pixel_y = 0 - }, -/turf/open/floor/plating, -/area/maintenance/electrical) -"cLl" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral/side{ - dir = 8 - }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cLm" = ( -/obj/machinery/door/firedoor, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/door/airlock/research{ - name = "Xenobiology Lab"; - req_access_txt = "47" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/toxins/xenobiology) -"cLn" = ( -/obj/structure/disposaloutlet{ - tag = "icon-outlet (NORTH)"; - icon_state = "outlet"; - dir = 1 - }, -/obj/structure/disposalpipe/trunk, -/turf/open/floor/plasteel/vault{ - dir = 1 - }, -/area/toxins/xenobiology) -"cLo" = ( -/obj/machinery/atmospherics/pipe/manifold/general/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/toxins/xenobiology) -"cLp" = ( -/obj/machinery/atmospherics/pipe/manifold/general/hidden, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/toxins/xenobiology) -"cLq" = ( -/obj/machinery/atmospherics/pipe/simple/general/hidden{ - tag = "icon-intact (NORTHWEST)"; - icon_state = "intact"; - dir = 9 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/toxins/xenobiology) -"cLr" = ( -/obj/structure/closet/wardrobe/science_white, -/obj/machinery/light/small{ - dir = 8 - }, -/obj/item/weapon/storage/backpack/satchel/tox, -/turf/open/floor/plasteel/delivery, -/area/medical/research{ - name = "Research Division" - }) -"cLs" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/whitepurple/corner{ - dir = 1 - }, -/area/medical/research{ - name = "Research Division" - }) -"cLt" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/whitepurple/side{ - tag = "icon-whitepurple (NORTH)"; - icon_state = "whitepurple"; - dir = 1 - }, -/area/medical/research{ - name = "Research Division" - }) -"cLu" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/whitepurple/corner{ - dir = 4 - }, -/area/medical/research{ - name = "Research Division" - }) -"cLv" = ( -/turf/closed/wall, -/area/security/checkpoint/science{ - name = "Security Post - Research Division" - }) -"cLw" = ( -/obj/structure/closet/secure_closet/security/science, -/obj/machinery/firealarm{ - dir = 8; - pixel_x = -24; - pixel_y = 0 - }, -/obj/machinery/status_display{ - pixel_y = 32 - }, -/obj/structure/extinguisher_cabinet{ - pixel_x = -26; - pixel_y = 32 - }, -/turf/open/floor/plasteel/red/side{ - dir = 9 - }, -/area/security/checkpoint/science{ - name = "Security Post - Research Division" - }) -"cLx" = ( -/obj/structure/table/reinforced, -/obj/machinery/recharger, -/obj/machinery/light{ - dir = 1 - }, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = 0; - pixel_y = 26 - }, -/turf/open/floor/plasteel/red/side{ - dir = 1 - }, -/area/security/checkpoint/science{ - name = "Security Post - Research Division" - }) -"cLy" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/book/manual/wiki/security_space_law, -/obj/item/device/radio, -/obj/machinery/ai_status_display{ - pixel_y = 32 - }, -/obj/structure/reagent_dispensers/peppertank{ - pixel_x = 32 - }, -/turf/open/floor/plasteel/red/side{ - dir = 5 - }, -/area/security/checkpoint/science{ - name = "Security Post - Research Division" - }) -"cLz" = ( -/obj/structure/table, -/obj/item/weapon/folder/white, -/obj/item/device/assembly/infra, -/turf/open/floor/plasteel/whitepurple/corner{ - tag = "icon-whitepurplecorner (NORTH)"; - icon_state = "whitepurplecorner"; - dir = 1 - }, -/area/medical/research{ - name = "Research Division" - }) -"cLA" = ( -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral, -/area/medical/research{ - name = "Research Division" - }) -"cLB" = ( -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/purple, -/area/medical/research{ - name = "Research Division" - }) -"cLC" = ( -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/neutral, -/area/medical/research{ - name = "Research Division" - }) -"cLD" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/purple, -/area/medical/research{ - name = "Research Division" - }) -"cLE" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/medical/research{ - name = "Research Division" - }) -"cLF" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/holopad, -/turf/open/floor/plasteel/purple, -/area/medical/research{ - name = "Research Division" - }) -"cLG" = ( -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/neutral, -/area/medical/research{ - name = "Research Division" - }) -"cLH" = ( -/turf/open/floor/plasteel/purple, -/area/medical/research{ - name = "Research Division" - }) -"cLI" = ( -/turf/open/floor/plasteel/neutral, -/area/medical/research{ - name = "Research Division" - }) -"cLJ" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1 - }, -/turf/open/floor/plasteel/whitepurple/corner{ - dir = 4 - }, -/area/medical/research{ - name = "Research Division" - }) -"cLK" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1 - }, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 1 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cLL" = ( -/turf/open/floor/plasteel/blue, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cLM" = ( -/turf/open/floor/plasteel/neutral, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cLN" = ( -/obj/machinery/holopad, -/turf/open/floor/plasteel/neutral, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cLO" = ( -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/blue, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cLP" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 4 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cLQ" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1 - }, -/obj/machinery/button/door{ - desc = "A remote control switch for the medbay foyer."; - id = "MedbayFoyer"; - name = "Medbay Doors Control"; - normaldoorcontrol = 1; - pixel_x = -24; - pixel_y = 24 - }, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 1 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cLR" = ( -/obj/structure/bed/roller, -/obj/machinery/iv_drip, -/turf/open/floor/plasteel/whiteblue/side{ - dir = 1 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cLS" = ( -/obj/structure/bed/roller, -/obj/machinery/iv_drip, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 4 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cLT" = ( -/turf/closed/wall, -/area/security/checkpoint/medical) -"cLU" = ( -/turf/closed/wall/r_wall, -/area/security/checkpoint/medical) -"cLV" = ( -/turf/closed/wall, -/area/medical/medbay2{ - name = "Medbay Storage" - }) -"cLW" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1 - }, -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/medical/medbay2{ - name = "Medbay Storage" - }) -"cLX" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/cmo, -/area/medical/medbay2{ - name = "Medbay Storage" - }) -"cLY" = ( -/turf/open/floor/plasteel/cmo, -/area/medical/medbay2{ - name = "Medbay Storage" - }) -"cLZ" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHEAST)"; - icon_state = "intact"; - dir = 6 - }, -/turf/open/floor/plasteel/cmo, -/area/medical/medbay2{ - name = "Medbay Storage" - }) -"cMa" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/delivery, -/area/medical/medbay2{ - name = "Medbay Storage" - }) -"cMb" = ( -/obj/structure/plasticflaps{ - opacity = 1 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/navbeacon{ - codes_txt = "delivery;dir=4"; - dir = 4; - freq = 1400; - location = "Medbay" - }, -/turf/open/floor/plasteel/delivery, -/area/medical/medbay2{ - name = "Medbay Storage" - }) -"cMc" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHWEST)"; - icon_state = "intact"; - dir = 9 - }, -/turf/open/floor/plasteel/delivery, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"cMd" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"cMe" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"cMf" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/blue/corner, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"cMg" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/space_heater, -/turf/open/floor/plasteel/blue, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"cMh" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHWEST)"; - icon_state = "intact"; - dir = 10 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral/side{ - dir = 8 - }, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"cMi" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"cMj" = ( -/obj/structure/bed, -/obj/item/weapon/bedsheet/clown, -/turf/open/floor/wood, -/area/crew_quarters/sleep) -"cMk" = ( -/obj/structure/table/wood, -/obj/item/weapon/storage/briefcase{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/storage/briefcase, -/obj/machinery/newscaster{ - pixel_x = -32 - }, -/turf/open/floor/carpet, -/area/crew_quarters/sleep) -"cMl" = ( -/obj/structure/chair/office/dark{ - dir = 1 - }, -/obj/machinery/newscaster{ - pixel_x = -32 - }, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/sleep) -"cMm" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1 - }, -/obj/structure/sign/nanotrasen{ - pixel_x = 32; - pixel_y = -32 - }, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/sleep) -"cMn" = ( -/obj/machinery/vending/snack, -/obj/structure/extinguisher_cabinet{ - pixel_x = -26 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/delivery, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cMo" = ( -/obj/structure/chair{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral/corner, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cMp" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cMq" = ( -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cMr" = ( -/obj/machinery/atmospherics/pipe/simple/supply/visible{ - tag = "icon-intact (NORTHEAST)"; - icon_state = "intact"; - dir = 5 - }, -/obj/machinery/light/small{ - dir = 8 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning{ - dir = 10 - }, -/area/maintenance/electrical) -"cMs" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/visible, -/turf/open/floor/plasteel/warning{ - dir = 6 - }, -/area/maintenance/electrical) -"cMt" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/visible{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/obj/machinery/meter, -/turf/open/floor/plasteel/caution{ - dir = 8 - }, -/area/maintenance/electrical) -"cMu" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/maintenance/electrical) -"cMv" = ( -/obj/machinery/light/small{ - dir = 4 - }, -/obj/structure/table/reinforced, -/obj/item/clothing/gloves/color/black, -/obj/item/clothing/suit/hazardvest, -/obj/item/clothing/mask/gas, -/turf/open/floor/plasteel/bot, -/area/maintenance/electrical) -"cMw" = ( -/obj/machinery/status_display, -/turf/closed/wall, -/area/maintenance/electrical) -"cMx" = ( -/obj/machinery/computer/atmos_alert, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/maintenance/electrical) -"cMy" = ( -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/maintenance/electrical) -"cMz" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/plating, -/area/maintenance/electrical) -"cMA" = ( -/obj/effect/decal/cleanable/oil, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/neutral, -/area/maintenance/electrical) -"cMB" = ( -/obj/structure/cable/white, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHWEST)"; - icon_state = "intact"; - dir = 9 - }, -/turf/open/floor/plasteel/neutral, -/area/maintenance/electrical) -"cMC" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHEAST)"; - icon_state = "intact"; - dir = 5 - }, -/turf/open/floor/plasteel/neutral, -/area/maintenance/electrical) -"cMD" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/neutral, -/area/maintenance/electrical) -"cME" = ( -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/maintenance/electrical) -"cMF" = ( -/obj/machinery/space_heater, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/maintenance/electrical) -"cMG" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral/side{ - dir = 8 - }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cMH" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cMI" = ( -/turf/open/floor/plasteel/vault{ - tag = "icon-vault (NORTHEAST)"; - icon_state = "vault"; - dir = 5 - }, -/area/toxins/xenobiology) -"cMJ" = ( -/obj/machinery/light{ - dir = 1 - }, -/turf/open/floor/plasteel/vault{ - tag = "icon-vault (NORTHEAST)"; - icon_state = "vault"; - dir = 5 - }, -/area/toxins/xenobiology) -"cMK" = ( -/obj/machinery/shieldwallgen, -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/turf/open/floor/plating/warnplate{ - dir = 6 - }, -/area/toxins/xenobiology) -"cML" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/delivery, -/area/toxins/xenobiology) -"cMM" = ( -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/machinery/status_display{ - pixel_y = 32 - }, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/machinery/camera{ - c_tag = "Xenobiology - Port"; - dir = 2; - name = "xenobiology camera"; - network = list("SS13","xeno","RD") - }, -/turf/open/floor/plasteel/delivery, -/area/toxins/xenobiology) -"cMN" = ( -/obj/machinery/light_switch{ - pixel_x = 26; - pixel_y = 26 - }, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/bot, -/area/toxins/xenobiology) -"cMO" = ( -/obj/structure/table, -/obj/machinery/light{ - dir = 1 - }, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = 26; - pixel_y = 0 - }, -/obj/item/weapon/paper_bin, -/obj/item/weapon/pen, -/turf/open/floor/plasteel/bot, -/area/toxins/xenobiology) -"cMP" = ( -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor/preopen{ - id = "xeno4"; - name = "Creature Cell #4" - }, -/turf/open/floor/plating, -/area/toxins/xenobiology) -"cMQ" = ( -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/machinery/door/window/brigdoor{ - dir = 1; - name = "Creature Pen"; - req_access_txt = "47" - }, -/obj/machinery/door/poddoor/preopen{ - id = "xeno4"; - name = "Creature Cell #4" - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/toxins/xenobiology) -"cMR" = ( -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/structure/disposalpipe/segment, -/obj/machinery/door/poddoor/preopen{ - id = "xeno4"; - name = "Creature Cell #4" - }, -/turf/open/floor/plating, -/area/toxins/xenobiology) -"cMS" = ( -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor/preopen{ - id = "xeno5"; - name = "Creature Cell #5" - }, -/turf/open/floor/plating, -/area/toxins/xenobiology) -"cMT" = ( -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/machinery/door/window/brigdoor{ - dir = 1; - name = "Creature Pen"; - req_access_txt = "47" - }, -/obj/machinery/door/poddoor/preopen{ - id = "xeno5"; - name = "Creature Cell #5" - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/toxins/xenobiology) -"cMU" = ( -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/structure/disposalpipe/segment, -/obj/machinery/door/poddoor/preopen{ - id = "xeno5"; - name = "Creature Cell #5" - }, -/turf/open/floor/plating, -/area/toxins/xenobiology) -"cMV" = ( -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor/preopen{ - id = "xeno6"; - name = "Creature Cell #6" - }, -/turf/open/floor/plating, -/area/toxins/xenobiology) -"cMW" = ( -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/machinery/door/window/brigdoor{ - dir = 1; - name = "Creature Pen"; - req_access_txt = "47" - }, -/obj/machinery/door/poddoor/preopen{ - id = "xeno6"; - name = "Creature Cell #6" - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/toxins/xenobiology) -"cMX" = ( -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/structure/disposalpipe/segment, -/obj/machinery/door/poddoor/preopen{ - id = "xeno6"; - name = "Creature Cell #6" - }, -/turf/open/floor/plating, -/area/toxins/xenobiology) -"cMY" = ( -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/general/hidden, -/turf/open/floor/plating, -/area/toxins/xenobiology) -"cMZ" = ( -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/machinery/door/airlock/glass_research{ - name = "Xenobiology Kill Room"; - req_access_txt = "47" - }, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/toxins/xenobiology) -"cNa" = ( -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/toxins/xenobiology) -"cNb" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/purple, -/area/medical/research{ - name = "Research Division" - }) -"cNc" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/whitepurple/corner{ - dir = 4 - }, -/area/medical/research{ - name = "Research Division" - }) -"cNd" = ( -/obj/structure/cable/white{ - d2 = 2; - icon_state = "0-2"; - tag = "icon-0-2" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/checkpoint/science{ - name = "Security Post - Research Division" - }) -"cNe" = ( -/obj/machinery/light_switch{ - pixel_x = -38; - pixel_y = 26 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 2; - on = 1 - }, -/turf/open/floor/plasteel/red/side{ - dir = 8 - }, -/area/security/checkpoint/science{ - name = "Security Post - Research Division" - }) -"cNf" = ( -/turf/open/floor/plasteel/neutral, -/area/security/checkpoint/science{ - name = "Security Post - Research Division" - }) -"cNg" = ( -/obj/machinery/computer/secure_data, -/turf/open/floor/plasteel/red/side{ - dir = 6 - }, -/area/security/checkpoint/science{ - name = "Security Post - Research Division" - }) -"cNh" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/turf/open/floor/plasteel/whitepurple/corner{ - tag = "icon-whitepurplecorner (NORTH)"; - icon_state = "whitepurplecorner"; - dir = 1 - }, -/area/medical/research{ - name = "Research Division" - }) -"cNi" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 2; - on = 1; - scrub_N2O = 1; - scrub_Toxins = 1 - }, -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/whitepurple/corner, -/area/medical/research{ - name = "Research Division" - }) -"cNj" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHEAST)"; - icon_state = "intact"; - dir = 6 - }, -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/whitepurple/corner, -/area/medical/research{ - name = "Research Division" - }) -"cNk" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/whitepurple/corner, -/area/medical/research{ - name = "Research Division" - }) -"cNl" = ( -/obj/effect/landmark{ - name = "lightsout" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/whitepurple/corner, -/area/medical/research{ - name = "Research Division" - }) -"cNm" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/whitepurple/corner, -/area/medical/research{ - name = "Research Division" - }) -"cNn" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/whitepurple/corner, -/area/medical/research{ - name = "Research Division" - }) -"cNo" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/purple, -/area/medical/research{ - name = "Research Division" - }) -"cNp" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/whitepurple/corner{ - dir = 4 - }, -/area/medical/research{ - name = "Research Division" - }) -"cNq" = ( -/obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/medical/research{ - name = "Research Division" - }) -"cNr" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral/corner{ - dir = 8 - }, -/area/hallway/primary/aft) -"cNs" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/aft) -"cNt" = ( -/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/blue/corner, -/area/hallway/primary/aft) -"cNu" = ( -/obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cNv" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 1 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cNw" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cNx" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/cmo, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cNy" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 2; - on = 1; - scrub_N2O = 1; - scrub_Toxins = 1 - }, -/turf/open/floor/plasteel/cmo, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cNz" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/cmo, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cNA" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 4 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cNB" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass_medical{ - id_tag = "MedbayFoyer"; - name = "Medbay"; - req_access_txt = "5" - }, -/turf/open/floor/plasteel/warning/side, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cNC" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/blue, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cND" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHWEST)"; - icon_state = "intact"; - dir = 10 - }, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 4 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cNE" = ( -/obj/machinery/status_display{ - pixel_y = 32 - }, -/obj/structure/reagent_dispensers/peppertank{ - pixel_x = -32 - }, -/obj/structure/table/reinforced, -/obj/item/weapon/book/manual/wiki/security_space_law, -/obj/item/device/radio, -/obj/machinery/button/door{ - desc = "A remote control switch for the medbay foyer."; - id = "MedbayFoyer"; - name = "Medbay Doors Control"; - normaldoorcontrol = 1; - pixel_x = -24; - pixel_y = 24 - }, -/obj/machinery/button/door{ - desc = "A remote control switch."; - id = "meddoor"; - name = "Medical Cell Control"; - normaldoorcontrol = 1; - pixel_x = -36; - pixel_y = 24 - }, -/turf/open/floor/plasteel/red/side{ - dir = 9 - }, -/area/security/checkpoint/medical) -"cNF" = ( -/obj/structure/table/reinforced, -/obj/machinery/recharger, -/obj/machinery/light{ - dir = 1 - }, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = 0; - pixel_y = 26 - }, -/turf/open/floor/plasteel/red/side{ - dir = 1 - }, -/area/security/checkpoint/medical) -"cNG" = ( -/obj/machinery/ai_status_display{ - pixel_y = 32 - }, -/obj/machinery/firealarm{ - dir = 4; - icon_state = "fire0"; - pixel_x = 24; - pixel_y = 0; - tag = "icon-fire0 (EAST)" - }, -/obj/machinery/light_switch{ - pixel_x = 38 - }, -/obj/structure/extinguisher_cabinet{ - pixel_x = 26; - pixel_y = 32 - }, -/obj/structure/closet/secure_closet/security/med, -/turf/open/floor/plasteel/red/side{ - dir = 5 - }, -/area/security/checkpoint/medical) -"cNH" = ( -/obj/structure/table, -/obj/item/weapon/storage/box/bodybags{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/storage/box/masks, -/obj/machinery/newscaster{ - pixel_y = 32 - }, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 1 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cNI" = ( -/obj/structure/table, -/obj/item/weapon/storage/box/gloves{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/storage/box/beakers, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = 0; - pixel_y = 26 - }, -/turf/open/floor/plasteel/whiteblue/side{ - dir = 1 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cNJ" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1 - }, -/obj/item/weapon/storage/pod{ - pixel_x = 32; - pixel_y = 32 - }, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 4 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cNK" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/medical/medbay2{ - name = "Medbay Storage" - }) -"cNL" = ( -/obj/structure/table/glass, -/obj/item/weapon/storage/firstaid/fire{ - pixel_x = 6; - pixel_y = 6 - }, -/obj/item/weapon/storage/firstaid/fire{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/storage/firstaid/regular, -/obj/item/weapon/storage/firstaid/fire{ - pixel_x = -3; - pixel_y = -3 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/medical/medbay2{ - name = "Medbay Storage" - }) -"cNM" = ( -/obj/effect/landmark/start{ - name = "Medical Doctor" - }, -/turf/open/floor/plasteel/cmo, -/area/medical/medbay2{ - name = "Medbay Storage" - }) -"cNN" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/cmo, -/area/medical/medbay2{ - name = "Medbay Storage" - }) -"cNO" = ( -/obj/structure/table/glass, -/obj/item/weapon/storage/firstaid/toxin{ - pixel_x = 6; - pixel_y = 6 - }, -/obj/item/weapon/storage/firstaid/toxin{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/storage/firstaid/regular, -/obj/item/weapon/storage/firstaid/toxin{ - pixel_x = -3; - pixel_y = -3 - }, -/obj/machinery/airalarm{ - dir = 8; - icon_state = "alarm0"; - pixel_x = 24 - }, -/obj/machinery/light{ - icon_state = "tube1"; - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 8; - heat_capacity = 1e+006 - }, -/area/medical/medbay2{ - name = "Medbay Storage" - }) -"cNP" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cNQ" = ( -/obj/machinery/door/airlock{ - name = "Medbay Auxiliary Storage"; - req_access_txt = "5" - }, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cNR" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"cNS" = ( -/obj/structure/table/wood, -/obj/item/weapon/paper_bin, -/obj/item/weapon/pen, -/obj/machinery/newscaster{ - pixel_x = -32 - }, -/turf/open/floor/wood, -/area/crew_quarters/sleep) -"cNT" = ( -/obj/structure/chair/office/dark, -/turf/open/floor/wood, -/area/crew_quarters/sleep) -"cNU" = ( -/obj/structure/bed, -/obj/item/weapon/bedsheet/mime, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/sleep) -"cNV" = ( -/obj/structure/table, -/obj/item/weapon/storage/fancy/donut_box, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral/corner{ - dir = 8 - }, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cNW" = ( -/obj/structure/chair/stool, -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cNX" = ( -/obj/structure/table, -/obj/item/weapon/folder, -/obj/item/weapon/pen, -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cNY" = ( -/obj/structure/table, -/obj/item/clothing/under/sl_suit{ - name = "referee suit" - }, -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cNZ" = ( -/obj/structure/table, -/obj/item/weapon/storage/briefcase, -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cOa" = ( -/obj/machinery/camera{ - c_tag = "Holodeck - Aft"; - dir = 1; - name = "holodeck camera" - }, -/turf/open/floor/engine{ - name = "Holodeck Projector Floor" - }, -/area/holodeck/rec_center) -"cOb" = ( -/obj/structure/table, -/obj/item/weapon/extinguisher/mini, -/obj/item/weapon/tank/internals/emergency_oxygen/engi, -/obj/item/clothing/mask/breath, -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/plasteel/warning{ - dir = 9 - }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cOc" = ( -/obj/machinery/space_heater, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning{ - dir = 5 - }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cOd" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral/side{ - dir = 8 - }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cOe" = ( -/obj/machinery/status_display{ - pixel_x = -32 - }, -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/turf/open/floor/plasteel/bot, -/area/maintenance/electrical) -"cOf" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/bot, -/area/maintenance/electrical) -"cOg" = ( -/obj/machinery/atmospherics/components/binary/volume_pump{ - name = "Ports to Distro" - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/caution{ - dir = 8 - }, -/area/maintenance/electrical) -"cOh" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible, -/turf/open/floor/plasteel/caution{ - dir = 4 - }, -/area/maintenance/electrical) -"cOi" = ( -/obj/structure/table/reinforced, -/obj/item/device/analyzer, -/turf/open/floor/plasteel/bot, -/area/maintenance/electrical) -"cOj" = ( -/obj/machinery/computer/monitor, -/turf/open/floor/plasteel/bot, -/area/maintenance/electrical) -"cOk" = ( -/obj/structure/chair/office/light{ - dir = 8 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/maintenance/electrical) -"cOl" = ( -/turf/open/floor/plasteel/neutral, -/area/maintenance/electrical) -"cOm" = ( -/obj/machinery/holopad, -/turf/open/floor/plasteel/bot, -/area/maintenance/electrical) -"cOn" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/neutral, -/area/maintenance/electrical) -"cOo" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/delivery, -/area/maintenance/electrical) -"cOp" = ( -/obj/machinery/door/airlock/engineering{ - name = "Engineering Auxiliary Power"; - req_access_txt = "10" - }, -/turf/open/floor/plasteel/warning/side, -/area/maintenance/electrical) -"cOq" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/delivery, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cOr" = ( -/obj/effect/decal/remains/xeno, -/obj/effect/decal/cleanable/xenoblood, -/turf/open/floor/plasteel/circuit/gcircuit, -/area/toxins/xenobiology) -"cOs" = ( -/obj/structure/sign/electricshock, -/turf/closed/wall/r_wall, -/area/toxins/xenobiology) -"cOt" = ( -/obj/structure/cable/white{ - d2 = 2; - icon_state = "0-2"; - tag = "icon-0-2" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor/preopen{ - id = "xenosecure"; - name = "Secure Pen Shutters" - }, -/turf/open/floor/plating, -/area/toxins/xenobiology) -"cOu" = ( -/obj/structure/table/reinforced, -/obj/machinery/computer/security/telescreen{ - dir = 4; - network = list("xeno") - }, -/turf/open/floor/plasteel/bot, -/area/toxins/xenobiology) -"cOv" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/bot, -/area/toxins/xenobiology) -"cOw" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral, -/area/toxins/xenobiology) -"cOx" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHWEST)"; - icon_state = "intact"; - dir = 10 - }, -/turf/open/floor/plasteel/bot, -/area/toxins/xenobiology) -"cOy" = ( -/obj/structure/sign/xenobio, -/turf/closed/wall, -/area/toxins/xenobiology) -"cOz" = ( -/obj/structure/table/reinforced, -/obj/structure/window/reinforced{ - dir = 4 - }, -/obj/machinery/button/door{ - id = "xeno4"; - name = "Containment Control"; - req_access_txt = "55" - }, -/turf/open/floor/plasteel/bot, -/area/toxins/xenobiology) -"cOA" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/door/window/brigdoor{ - name = "Creature Pen"; - req_access_txt = "47" - }, -/turf/open/floor/plasteel/delivery, -/area/toxins/xenobiology) -"cOB" = ( -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/machinery/disposal/bin, -/obj/structure/disposalpipe/trunk{ - tag = "icon-pipe-t (NORTH)"; - icon_state = "pipe-t"; - dir = 1 - }, -/turf/open/floor/plasteel/bot, -/area/toxins/xenobiology) -"cOC" = ( -/obj/structure/sign/electricshock, -/turf/closed/wall, -/area/toxins/xenobiology) -"cOD" = ( -/obj/structure/table/reinforced, -/obj/structure/window/reinforced{ - dir = 4 - }, -/obj/machinery/button/door{ - id = "xeno5"; - name = "Containment Control"; - req_access_txt = "55" - }, -/turf/open/floor/plasteel/bot, -/area/toxins/xenobiology) -"cOE" = ( -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/machinery/disposal/bin, -/obj/structure/extinguisher_cabinet{ - pixel_x = 26; - pixel_y = 32 - }, -/obj/structure/disposalpipe/trunk{ - tag = "icon-pipe-t (NORTH)"; - icon_state = "pipe-t"; - dir = 1 - }, -/turf/open/floor/plasteel/bot, -/area/toxins/xenobiology) -"cOF" = ( -/obj/structure/sign/directions/engineering{ - desc = "A sign that shows there are doors here. There are doors everywhere!"; - icon_state = "doors"; - name = "WARNING: BIOHAZARD CELL"; - pixel_x = 0; - tag = "icon-doors" - }, -/turf/closed/wall, -/area/toxins/xenobiology) -"cOG" = ( -/obj/structure/table/reinforced, -/obj/structure/window/reinforced{ - dir = 4 - }, -/obj/structure/extinguisher_cabinet{ - pixel_x = -26; - pixel_y = 32 - }, -/obj/machinery/button/door{ - id = "xeno6"; - name = "Containment Control"; - req_access_txt = "55" - }, -/turf/open/floor/plasteel/bot, -/area/toxins/xenobiology) -"cOH" = ( -/obj/structure/sign/biohazard, -/turf/closed/wall, -/area/toxins/xenobiology) -"cOI" = ( -/obj/machinery/monkey_recycler, -/obj/machinery/monkey_recycler, -/obj/structure/extinguisher_cabinet{ - pixel_y = 32 - }, -/turf/open/floor/plasteel/bot, -/area/toxins/xenobiology) -"cOJ" = ( -/obj/machinery/atmospherics/components/unary/thermomachine/freezer{ - dir = 1; - min_temperature = 80; - on = 1; - target_temperature = 80 - }, -/turf/open/floor/plasteel/bot, -/area/toxins/xenobiology) -"cOK" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/delivery, -/area/toxins/xenobiology) -"cOL" = ( -/obj/machinery/chem_master, -/turf/open/floor/plasteel/bot, -/area/toxins/xenobiology) -"cOM" = ( -/obj/machinery/chem_dispenser/constructable, -/turf/open/floor/plasteel/delivery, -/area/toxins/xenobiology) -"cON" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/storage/box/beakers{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/storage/box/syringes, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = 0; - pixel_y = 32 - }, -/obj/item/weapon/extinguisher/mini, -/turf/open/floor/plasteel/delivery, -/area/toxins/xenobiology) -"cOO" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/plasteel/whitepurple/corner{ - dir = 1 - }, -/area/medical/research{ - name = "Research Division" - }) -"cOP" = ( -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/medical/research{ - name = "Research Division" - }) -"cOQ" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/whitepurple/corner{ - dir = 4 - }, -/area/medical/research{ - name = "Research Division" - }) -"cOR" = ( -/obj/machinery/door/firedoor, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/machinery/door/airlock/security{ - name = "Security Post - Science"; - req_access_txt = "63" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/security/checkpoint/science{ - name = "Security Post - Research Division" - }) -"cOS" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHWEST)"; - icon_state = "intact"; - dir = 9 - }, -/turf/open/floor/plasteel/red/side{ - dir = 8 - }, -/area/security/checkpoint/science{ - name = "Security Post - Research Division" - }) -"cOT" = ( -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/structure/chair/office/dark{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/security/checkpoint/science{ - name = "Security Post - Research Division" - }) -"cOU" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/computer/security, -/turf/open/floor/plasteel/red, -/area/security/checkpoint/science{ - name = "Security Post - Research Division" - }) -"cOV" = ( -/obj/structure/cable/white, -/obj/structure/cable/white{ - d2 = 2; - icon_state = "0-2"; - tag = "icon-0-2" - }, -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/checkpoint/science{ - name = "Security Post - Research Division" - }) -"cOW" = ( -/turf/open/floor/plasteel/whitepurple/corner{ - dir = 8 - }, -/area/medical/research{ - name = "Research Division" - }) -"cOX" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHEAST)"; - icon_state = "intact"; - dir = 6 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral, -/area/medical/research{ - name = "Research Division" - }) -"cOY" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/open/floor/plasteel/whitepurple/corner{ - dir = 1 - }, -/area/medical/research{ - name = "Research Division" - }) -"cOZ" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/whitepurple/corner{ - dir = 1 - }, -/area/medical/research{ - name = "Research Division" - }) -"cPa" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/whitepurple/corner{ - dir = 1 - }, -/area/medical/research{ - name = "Research Division" - }) -"cPb" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/whitepurple/corner{ - dir = 1 - }, -/area/medical/research{ - name = "Research Division" - }) -"cPc" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/whitepurple/corner{ - dir = 1 - }, -/area/medical/research{ - name = "Research Division" - }) -"cPd" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/medical/research{ - name = "Research Division" - }) -"cPe" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/whitepurple/corner, -/area/medical/research{ - name = "Research Division" - }) -"cPf" = ( -/obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/medical/research{ - name = "Research Division" - }) -"cPg" = ( -/obj/machinery/atmospherics/pipe/manifold4w/scrubbers/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral/corner{ - dir = 8 - }, -/area/hallway/primary/aft) -"cPh" = ( -/obj/effect/landmark{ - name = "lightsout" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/aft) -"cPi" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/sortjunction{ - dir = 1; - icon_state = "pipe-j1s"; - name = "Chemistry Junction"; - sortType = 11; - tag = "icon-pipe-j1s (NORTH)" - }, -/turf/open/floor/plasteel/blue/corner, -/area/hallway/primary/aft) -"cPj" = ( -/obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cPk" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 8 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cPl" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/blue, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cPm" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/cmo, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cPn" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/cmo, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cPo" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/cmo, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cPp" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/cmo, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cPq" = ( -/obj/effect/landmark{ - name = "lightsout" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/cmo, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cPr" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/cmo, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cPs" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/whiteblue/corner, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cPt" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass_medical{ - id_tag = "MedbayFoyer"; - name = "Medbay"; - req_access_txt = "5" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cPu" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHWEST)"; - icon_state = "intact"; - dir = 10 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 1 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cPv" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/neutral, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cPw" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 4 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cPx" = ( -/obj/structure/cable/white{ - tag = "icon-0-2"; - icon_state = "0-2" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/checkpoint/medical) -"cPy" = ( -/obj/machinery/computer/secure_data, -/turf/open/floor/plasteel/red/side{ - tag = "icon-red (SOUTHEAST)"; - icon_state = "red"; - dir = 6 - }, -/area/security/checkpoint/medical) -"cPz" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/neutral, -/area/security/checkpoint/medical) -"cPA" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/red/side{ - tag = "icon-red (EAST)"; - icon_state = "red"; - dir = 4 - }, -/area/security/checkpoint/medical) -"cPB" = ( -/obj/structure/cable/white{ - tag = "icon-0-2"; - icon_state = "0-2" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/security/checkpoint/medical) -"cPC" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHWEST)"; - icon_state = "intact"; - dir = 10 - }, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 1 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cPD" = ( -/obj/structure/table/glass, -/obj/item/weapon/storage/firstaid/brute{ - pixel_x = 6; - pixel_y = 6 - }, -/obj/item/weapon/storage/firstaid/brute{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/storage/firstaid/regular, -/obj/item/weapon/storage/firstaid/brute{ - pixel_x = -3; - pixel_y = -3 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/medical/medbay2{ - name = "Medbay Storage" - }) -"cPE" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/turf/open/floor/plasteel/cmo, -/area/medical/medbay2{ - name = "Medbay Storage" - }) -"cPF" = ( -/obj/structure/table/glass, -/obj/item/weapon/storage/firstaid/o2{ - pixel_x = 6; - pixel_y = 6 - }, -/obj/item/weapon/storage/firstaid/o2{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/storage/firstaid/regular, -/obj/item/weapon/storage/firstaid/o2{ - pixel_x = -3; - pixel_y = -3 - }, -/obj/machinery/requests_console{ - department = "Medbay Storage"; - departmentType = 0; - name = "Medbay Storage RC"; - pixel_x = 32; - pixel_y = 0 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 8; - heat_capacity = 1e+006 - }, -/area/medical/medbay2{ - name = "Medbay Storage" - }) -"cPG" = ( -/obj/structure/toilet{ - dir = 4 - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/newscaster{ - pixel_y = 32 - }, -/obj/machinery/light/small{ - dir = 8 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/obj/effect/landmark{ - name = "xeno_spawn"; - pixel_x = -1 - }, -/turf/open/floor/plating{ - icon_state = "panelscorched" - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cPH" = ( -/obj/machinery/door/airlock{ - name = "Bathroom" - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cPI" = ( -/obj/structure/urinal{ - pixel_y = 28 - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cPJ" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cPK" = ( -/obj/structure/mirror{ - pixel_x = 26 - }, -/obj/structure/sink{ - dir = 4; - pixel_x = 11 - }, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/vomit/old, -/obj/structure/sign/poster{ - icon_state = "poster3_legit"; - pixel_y = 32; - tag = "icon-poster3_legit" - }, -/obj/machinery/light/small{ - dir = 1 - }, -/obj/effect/landmark{ - name = "blobstart" - }, -/turf/open/floor/plasteel/neutral, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cPL" = ( -/obj/structure/closet, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 3; - name = "3maintenance loot spawner" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"cPM" = ( -/obj/structure/table/wood, -/obj/item/weapon/folder, -/obj/item/weapon/pen, -/obj/machinery/light, -/obj/machinery/status_display{ - pixel_y = -32 - }, -/turf/open/floor/wood, -/area/crew_quarters/sleep) -"cPN" = ( -/obj/structure/closet/secure_closet/personal/cabinet, -/obj/item/clothing/suit/jacket/letterman_nanotrasen, -/obj/item/clothing/suit/toggle/lawyer, -/obj/item/clothing/under/maid, -/turf/open/floor/wood, -/area/crew_quarters/sleep) -"cPO" = ( -/obj/structure/bed, -/obj/machinery/light, -/obj/item/weapon/bedsheet/brown, -/obj/machinery/status_display{ - pixel_y = -32 - }, -/turf/open/floor/carpet, -/area/crew_quarters/sleep) -"cPP" = ( -/obj/structure/closet/secure_closet/personal/cabinet, -/obj/item/clothing/suit/jacket{ - desc = "All the class of a trenchcoat without the security fibers."; - icon_state = "detective"; - name = "trenchcoat" - }, -/obj/item/clothing/suit/toggle/lawyer/purple, -/obj/item/clothing/head/fedora{ - icon_state = "detective" - }, -/obj/item/clothing/under/lawyer/female, -/turf/open/floor/carpet, -/area/crew_quarters/sleep) -"cPQ" = ( -/obj/structure/closet/secure_closet/personal/cabinet, -/obj/machinery/light, -/obj/item/clothing/suit/jacket{ - desc = "All the class of a trenchcoat without the security fibers."; - icon_state = "greydet"; - name = "trenchcoat" - }, -/obj/item/clothing/suit/toggle/lawyer/black, -/obj/machinery/status_display{ - pixel_y = -32 - }, -/obj/item/clothing/head/fedora, -/obj/item/clothing/under/redeveninggown, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/sleep) -"cPR" = ( -/obj/structure/table/wood, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/sleep) -"cPS" = ( -/obj/structure/table, -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/obj/item/toy/katana, -/obj/machinery/ai_status_display{ - pixel_x = -32 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral/corner{ - dir = 8 - }, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cPT" = ( -/obj/structure/table, -/obj/item/toy/cards/deck, -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cPU" = ( -/obj/structure/table, -/obj/item/weapon/storage/firstaid/regular, -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cPV" = ( -/obj/structure/table, -/obj/item/weapon/paper_bin, -/obj/item/weapon/pen, -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cPW" = ( -/obj/structure/chair{ - dir = 4 - }, -/obj/effect/landmark/start{ - name = "Assistant" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/light{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cPX" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHEAST)"; - icon_state = "intact"; - dir = 5 - }, -/turf/open/floor/plating, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cPY" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cPZ" = ( -/obj/machinery/status_display, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cQa" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHWEST)"; - icon_state = "intact"; - dir = 9 - }, -/turf/open/floor/plating, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cQb" = ( -/obj/structure/rack, -/obj/item/clothing/suit/fire/firefighter, -/obj/item/clothing/mask/gas, -/obj/item/clothing/head/hardhat/red, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cQc" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cQd" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plasteel/delivery, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cQe" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - dir = 6 - }, -/obj/machinery/light/small{ - dir = 8 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning{ - dir = 9 - }, -/area/maintenance/electrical) -"cQf" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/visible{ - tag = "icon-manifold (NORTH)"; - name = "scrubbers pipe"; - icon_state = "manifold"; - dir = 1 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning{ - dir = 5 - }, -/area/maintenance/electrical) -"cQg" = ( -/obj/machinery/atmospherics/pipe/simple/supply/visible, -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - dir = 4 - }, -/obj/machinery/meter, -/turf/open/floor/plasteel/caution{ - dir = 8 - }, -/area/maintenance/electrical) -"cQh" = ( -/obj/machinery/atmospherics/components/trinary/filter, -/turf/open/floor/plasteel/caution{ - dir = 4 - }, -/area/maintenance/electrical) -"cQi" = ( -/obj/machinery/light/small{ - dir = 4 - }, -/obj/structure/table/reinforced, -/obj/item/weapon/crowbar/red, -/obj/item/weapon/wrench, -/turf/open/floor/plasteel/bot, -/area/maintenance/electrical) -"cQj" = ( -/obj/machinery/computer/station_alert, -/turf/open/floor/plasteel/bot, -/area/maintenance/electrical) -"cQk" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/turf/open/floor/plating/warnplate{ - dir = 9 - }, -/area/maintenance/electrical) -"cQl" = ( -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/turf/open/floor/plating/warnplate{ - dir = 1 - }, -/area/maintenance/electrical) -"cQm" = ( -/turf/open/floor/plating/warnplate{ - dir = 1 - }, -/area/maintenance/electrical) -"cQn" = ( -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/turf/open/floor/plating/warnplate{ - dir = 1 - }, -/area/maintenance/electrical) -"cQo" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/turf/open/floor/plating/warnplate{ - dir = 5 - }, -/area/maintenance/electrical) -"cQp" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/maintenance/electrical) -"cQq" = ( -/obj/machinery/light_switch{ - pixel_x = 26 - }, -/turf/open/floor/plasteel/bot, -/area/maintenance/electrical) -"cQr" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cQs" = ( -/obj/structure/cable/white, -/obj/structure/cable/white{ - d2 = 2; - icon_state = "0-2"; - tag = "icon-0-2" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor/preopen{ - id = "xenosecure"; - name = "Secure Pen Shutters" - }, -/obj/machinery/door/poddoor/preopen{ - id = "xenosecure"; - name = "Secure Pen Shutters" - }, -/turf/open/floor/plating, -/area/toxins/xenobiology) -"cQt" = ( -/obj/structure/table/reinforced, -/obj/structure/window/reinforced, -/obj/machinery/button/door{ - id = "xenosecure"; - name = "Containment Control"; - pixel_y = -3; - req_access_txt = "55" - }, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = 0; - pixel_y = 5 - }, -/turf/open/floor/plasteel/bot, -/area/toxins/xenobiology) -"cQu" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/toxins/xenobiology) -"cQv" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/plasteel/neutral, -/area/toxins/xenobiology) -"cQw" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/delivery, -/area/toxins/xenobiology) -"cQx" = ( -/obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/toxins/xenobiology) -"cQy" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/delivery, -/area/toxins/xenobiology) -"cQz" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/toxins/xenobiology) -"cQA" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 1 - }, -/area/toxins/xenobiology) -"cQB" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 1 - }, -/area/toxins/xenobiology) -"cQC" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/obj/machinery/light{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 1 - }, -/area/toxins/xenobiology) -"cQD" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 1 - }, -/area/toxins/xenobiology) -"cQE" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/toxins/xenobiology) -"cQF" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/whitepurple/side{ - dir = 9 - }, -/area/toxins/xenobiology) -"cQG" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/whitepurple/side{ - tag = "icon-whitepurple (NORTH)"; - icon_state = "whitepurple"; - dir = 1 - }, -/area/toxins/xenobiology) -"cQH" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/plasteel/whitepurple/side{ - tag = "icon-whitepurple (NORTH)"; - icon_state = "whitepurple"; - dir = 1 - }, -/area/toxins/xenobiology) -"cQI" = ( -/obj/structure/chair/office/light{ - dir = 1 - }, -/turf/open/floor/plasteel/warning{ - dir = 9 - }, -/area/toxins/xenobiology) -"cQJ" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/folder/white, -/obj/item/stack/sheet/mineral/plasma{ - amount = 5 - }, -/obj/item/weapon/reagent_containers/glass/beaker/large, -/obj/item/weapon/reagent_containers/glass/beaker, -/obj/item/weapon/reagent_containers/dropper, -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/obj/machinery/newscaster{ - pixel_x = 32 - }, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/toxins/xenobiology) -"cQK" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/plasteel/purple, -/area/medical/research{ - name = "Research Division" - }) -"cQL" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/plasteel/whitepurple/corner{ - dir = 4 - }, -/area/medical/research{ - name = "Research Division" - }) -"cQM" = ( -/obj/structure/cable/white, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/security/checkpoint/science{ - name = "Security Post - Research Division" - }) -"cQN" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHWEST)"; - icon_state = "intact"; - dir = 10 - }, -/turf/open/floor/plasteel/red/side{ - dir = 8 - }, -/area/security/checkpoint/science{ - name = "Security Post - Research Division" - }) -"cQO" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/holopad, -/turf/open/floor/plasteel/neutral, -/area/security/checkpoint/science{ - name = "Security Post - Research Division" - }) -"cQP" = ( -/obj/machinery/computer/mecha, -/turf/open/floor/plasteel/red/side{ - dir = 5 - }, -/area/security/checkpoint/science{ - name = "Security Post - Research Division" - }) -"cQQ" = ( -/obj/structure/cable/white, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/checkpoint/science{ - name = "Security Post - Research Division" - }) -"cQR" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1 - }, -/turf/open/floor/plasteel/whitepurple/corner{ - dir = 8 - }, -/area/medical/research{ - name = "Research Division" - }) -"cQS" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/purple, -/area/medical/research{ - name = "Research Division" - }) -"cQT" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/purple, -/area/medical/research{ - name = "Research Division" - }) -"cQU" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/turf/open/floor/plasteel/whitepurple/corner, -/area/medical/research{ - name = "Research Division" - }) -"cQV" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/junction{ - dir = 1; - icon_state = "pipe-j1" - }, -/turf/open/floor/plasteel/blue/corner, -/area/hallway/primary/aft) -"cQW" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/structure/disposalpipe/segment{ - tag = "icon-pipe-s (EAST)"; - icon_state = "pipe-s"; - dir = 4 - }, -/turf/open/floor/plating, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cQX" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/obj/structure/disposalpipe/segment{ - tag = "icon-pipe-s (EAST)"; - icon_state = "pipe-s"; - dir = 4 - }, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 8 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cQY" = ( -/obj/structure/disposalpipe/segment{ - tag = "icon-pipe-s (EAST)"; - icon_state = "pipe-s"; - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cQZ" = ( -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/blue, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cRa" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1 - }, -/turf/open/floor/plasteel/whiteblue/corner, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cRb" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 1 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cRc" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 4 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cRd" = ( -/obj/structure/cable/white{ - tag = "icon-0-2"; - icon_state = "0-2" - }, -/obj/structure/cable/white, -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/checkpoint/medical) -"cRe" = ( -/obj/machinery/computer/security, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/red, -/area/security/checkpoint/medical) -"cRf" = ( -/obj/structure/chair/office/dark{ - dir = 8 - }, -/turf/open/floor/plasteel/neutral, -/area/security/checkpoint/medical) -"cRg" = ( -/turf/open/floor/plasteel/red/side{ - dir = 4 - }, -/area/security/checkpoint/medical) -"cRh" = ( -/obj/machinery/door/firedoor, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/machinery/door/airlock/security{ - name = "Security Post - Medical"; - req_access_txt = "63" - }, -/turf/open/floor/plasteel/warning/side, -/area/security/checkpoint/medical) -"cRi" = ( -/obj/machinery/newscaster, -/turf/closed/wall, -/area/medical/medbay2{ - name = "Medbay Storage" - }) -"cRj" = ( -/obj/structure/table/glass, -/obj/item/weapon/storage/box/beakers{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/storage/box/syringes, -/obj/item/weapon/gun/syringe, -/obj/machinery/status_display{ - pixel_x = -32 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/medical/medbay2{ - name = "Medbay Storage" - }) -"cRk" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/whiteblue/side, -/area/medical/medbay2{ - name = "Medbay Storage" - }) -"cRl" = ( -/turf/open/floor/plasteel/whiteblue/side, -/area/medical/medbay2{ - name = "Medbay Storage" - }) -"cRm" = ( -/obj/machinery/light_switch{ - pixel_x = 26; - pixel_y = -38 - }, -/turf/open/floor/plasteel/whiteblue/side, -/area/medical/medbay2{ - name = "Medbay Storage" - }) -"cRn" = ( -/obj/structure/table/glass, -/obj/item/weapon/storage/belt/medical, -/obj/item/weapon/storage/belt/medical, -/obj/item/clothing/neck/stethoscope, -/obj/item/clothing/neck/stethoscope, -/obj/item/clothing/glasses/hud/health, -/obj/item/clothing/glasses/hud/health, -/obj/item/weapon/reagent_containers/spray/cleaner, -/obj/machinery/status_display{ - pixel_x = 32 - }, -/obj/machinery/firealarm{ - dir = 1; - pixel_x = 0; - pixel_y = -24 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 8; - heat_capacity = 1e+006 - }, -/area/medical/medbay2{ - name = "Medbay Storage" - }) -"cRo" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock{ - name = "Bathroom" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cRp" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral/side{ - dir = 8 - }, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"cRq" = ( -/obj/structure/girder, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"cRr" = ( -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral/corner{ - dir = 8 - }, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cRs" = ( -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cRt" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 2; - on = 1; - scrub_N2O = 1; - scrub_Toxins = 1 - }, -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cRu" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 2; - on = 1 - }, -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cRv" = ( -/obj/structure/reagent_dispensers/fueltank, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning{ - dir = 10 - }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cRw" = ( -/obj/machinery/atmospherics/components/binary/valve{ - tag = "icon-mvalve_map (NORTH)"; - icon_state = "mvalve_map"; - dir = 1 - }, -/obj/structure/sign/nosmoking_2{ - pixel_x = -32 - }, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/maintenance/electrical) -"cRx" = ( -/obj/machinery/atmospherics/components/binary/valve{ - tag = "icon-mvalve_map (NORTH)"; - icon_state = "mvalve_map"; - dir = 1 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/maintenance/electrical) -"cRy" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/bot, -/area/maintenance/electrical) -"cRz" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/folder/yellow, -/obj/item/weapon/pen, -/turf/open/floor/plasteel/delivery, -/area/maintenance/electrical) -"cRA" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning{ - dir = 10 - }, -/area/maintenance/electrical) -"cRB" = ( -/obj/machinery/power/terminal, -/obj/structure/cable, -/turf/open/floor/plating/warnplate{ - dir = 8 - }, -/area/maintenance/electrical) -"cRC" = ( -/turf/open/floor/plating/warnplate/corner, -/area/maintenance/electrical) -"cRD" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating/warnplate, -/area/maintenance/electrical) -"cRE" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating/warnplate/corner{ - dir = 1 - }, -/area/maintenance/electrical) -"cRF" = ( -/obj/machinery/power/terminal, -/obj/structure/cable, -/turf/open/floor/plating/warnplate{ - dir = 4 - }, -/area/maintenance/electrical) -"cRG" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning{ - dir = 6 - }, -/area/maintenance/electrical) -"cRH" = ( -/obj/structure/sign/nosmoking_2{ - pixel_x = 32 - }, -/turf/open/floor/plasteel/delivery, -/area/maintenance/electrical) -"cRI" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/effect/landmark{ - name = "blobstart" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral/side{ - dir = 8 - }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cRJ" = ( -/obj/machinery/camera{ - c_tag = "Xenobiology - Secure Cell"; - dir = 4; - name = "xenobiology camera"; - network = list("SS13","xeno","RD") - }, -/turf/open/floor/plasteel/vault{ - tag = "icon-vault (NORTHEAST)"; - icon_state = "vault"; - dir = 5 - }, -/area/toxins/xenobiology) -"cRK" = ( -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/machinery/door/window/brigdoor{ - dir = 8; - name = "Secure Creature Pen"; - req_access_txt = "47" - }, -/obj/machinery/door/poddoor/preopen{ - id = "xenosecure"; - name = "Secure Pen Shutters" - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/toxins/xenobiology) -"cRL" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/door/window/brigdoor{ - dir = 4; - name = "Secure Creature Pen"; - req_access_txt = "47" - }, -/turf/open/floor/plasteel/delivery, -/area/toxins/xenobiology) -"cRM" = ( -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/toxins/xenobiology) -"cRN" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral, -/area/toxins/xenobiology) -"cRO" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/delivery, -/area/toxins/xenobiology) -"cRP" = ( -/obj/machinery/door/firedoor, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/warning/side, -/area/toxins/xenobiology) -"cRQ" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/shower{ - dir = 4; - icon_state = "shower"; - name = "emergency shower" - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 2; - on = 1; - scrub_N2O = 1; - scrub_Toxins = 1 - }, -/turf/open/floor/plasteel/warnwhite/end{ - tag = "icon-white_warn_end (WEST)"; - icon_state = "white_warn_end"; - dir = 8 - }, -/area/toxins/xenobiology) -"cRR" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/warnwhite/side{ - tag = "icon-white_warn_side (EAST)"; - icon_state = "white_warn_side"; - dir = 4 - }, -/area/toxins/xenobiology) -"cRS" = ( -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/effect/landmark{ - name = "lightsout" - }, -/turf/open/floor/plasteel/warnwhite/side{ - tag = "icon-white_warn_side (EAST)"; - icon_state = "white_warn_side"; - dir = 4 - }, -/area/toxins/xenobiology) -"cRT" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/shower{ - dir = 8; - icon_state = "shower"; - name = "emergency shower" - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/turf/open/floor/plasteel/warnwhite/end{ - tag = "icon-white_warn_end (EAST)"; - icon_state = "white_warn_end"; - dir = 4 - }, -/area/toxins/xenobiology) -"cRU" = ( -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/toxins/xenobiology) -"cRV" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/whitepurple/side{ - dir = 8 - }, -/area/toxins/xenobiology) -"cRW" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/effect/landmark/start{ - name = "Scientist" - }, -/turf/open/floor/plasteel/neutral, -/area/toxins/xenobiology) -"cRX" = ( -/turf/open/floor/plasteel/neutral/side{ - dir = 8 - }, -/area/toxins/xenobiology) -"cRY" = ( -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/toxins/xenobiology) -"cRZ" = ( -/obj/machinery/computer/camera_advanced/xenobio, -/obj/machinery/status_display{ - pixel_x = 32 - }, -/turf/open/floor/plasteel/circuit/gcircuit, -/area/toxins/xenobiology) -"cSa" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/camera{ - c_tag = "Science - Fore"; - dir = 8; - name = "science camera"; - network = list("SS13","RD") - }, -/turf/open/floor/plasteel/whitepurple/corner{ - dir = 4 - }, -/area/medical/research{ - name = "Research Division" - }) -"cSb" = ( -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/machinery/door_timer{ - id = "scicell"; - name = "Science Cell"; - pixel_x = -32; - pixel_y = -32 - }, -/obj/machinery/power/apc{ - dir = 8; - name = "Security Post - Science APC"; - pixel_x = -26; - pixel_y = 3 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_Toxins = 0 - }, -/obj/machinery/button/door{ - desc = "A remote control switch."; - id = "scidoor"; - name = "Science Cell Control"; - normaldoorcontrol = 1; - pixel_x = -36; - pixel_y = -7 - }, -/turf/open/floor/plasteel/red/side{ - tag = "icon-red (SOUTHWEST)"; - icon_state = "red"; - dir = 10 - }, -/area/security/checkpoint/science{ - name = "Security Post - Research Division" - }) -"cSc" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/turf/open/floor/plasteel/red/side, -/area/security/checkpoint/science{ - name = "Security Post - Research Division" - }) -"cSd" = ( -/obj/machinery/airalarm{ - dir = 8; - icon_state = "alarm0"; - pixel_x = 24 - }, -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/obj/machinery/camera{ - c_tag = "Security Post - Science"; - dir = 8; - name = "security camera"; - network = list("SS13","RD") - }, -/turf/open/floor/plasteel/red/side{ - dir = 6 - }, -/area/security/checkpoint/science{ - name = "Security Post - Research Division" - }) -"cSe" = ( -/obj/structure/table, -/obj/item/weapon/clipboard, -/obj/item/weapon/electronics/airlock, -/obj/item/weapon/stock_parts/console_screen, -/obj/item/device/assembly/signaler, -/turf/open/floor/plasteel/whitepurple/corner{ - dir = 8 - }, -/area/medical/research{ - name = "Research Division" - }) -"cSf" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/whitepurple/corner{ - dir = 8 - }, -/area/medical/research{ - name = "Research Division" - }) -"cSg" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/whitepurple/corner{ - dir = 8 - }, -/area/medical/research{ - name = "Research Division" - }) -"cSh" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/turf/open/floor/plasteel/whitepurple/corner{ - dir = 8 - }, -/area/medical/research{ - name = "Research Division" - }) -"cSi" = ( -/obj/structure/table, -/obj/machinery/cell_charger, -/obj/item/weapon/stock_parts/cell/high, -/obj/machinery/light, -/obj/machinery/camera{ - c_tag = "Science - Waiting Room"; - dir = 1; - name = "science camera"; - network = list("SS13","RD") - }, -/turf/open/floor/plasteel/whitepurple/corner{ - dir = 8 - }, -/area/medical/research{ - name = "Research Division" - }) -"cSj" = ( -/obj/structure/table, -/obj/item/device/gps, -/obj/item/device/assembly/flash/handheld, -/obj/machinery/status_display{ - pixel_y = -32 - }, -/turf/open/floor/plasteel/whitepurple/side, -/area/medical/research{ - name = "Research Division" - }) -"cSk" = ( -/obj/structure/table, -/obj/item/weapon/paper_bin, -/obj/item/weapon/pen, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/whitepurple/corner, -/area/medical/research{ - name = "Research Division" - }) -"cSl" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1 - }, -/turf/open/floor/plasteel/whitepurple/corner, -/area/medical/research{ - name = "Research Division" - }) -"cSm" = ( -/obj/machinery/disposal/bin, -/obj/structure/disposalpipe/trunk{ - dir = 1 - }, -/turf/open/floor/plasteel/bot, -/area/medical/research{ - name = "Research Division" - }) -"cSn" = ( -/turf/open/floor/plasteel/whitepurple/corner, -/area/medical/research{ - name = "Research Division" - }) -"cSo" = ( -/obj/machinery/autolathe, -/turf/open/floor/plasteel/whitepurple/corner, -/area/medical/research{ - name = "Research Division" - }) -"cSp" = ( -/obj/structure/table, -/obj/item/stack/sheet/metal{ - amount = 50 - }, -/obj/item/stack/sheet/glass{ - amount = 50 - }, -/obj/item/stack/packageWrap, -/obj/machinery/light, -/turf/open/floor/plasteel/whitepurple/corner, -/area/medical/research{ - name = "Research Division" - }) -"cSq" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral/corner, -/area/hallway/primary/aft) -"cSr" = ( -/obj/structure/table, -/obj/item/weapon/paper_bin, -/obj/item/weapon/pen, -/obj/machinery/light, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 8 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cSs" = ( -/obj/structure/table, -/obj/item/weapon/folder/white, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 8 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cSt" = ( -/obj/machinery/disposal/bin, -/obj/structure/disposalpipe/trunk{ - dir = 1 - }, -/turf/open/floor/plasteel/bot, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cSu" = ( -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 8 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cSv" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 8 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cSw" = ( -/obj/structure/bed/roller, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 8 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cSx" = ( -/obj/structure/bed/roller, -/turf/open/floor/plasteel/whiteblue/side, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cSy" = ( -/obj/structure/bed/roller, -/obj/structure/sign/chemistry{ - pixel_y = -32 - }, -/obj/machinery/light, -/obj/machinery/camera{ - c_tag = "Medbay - Waiting Room"; - dir = 1; - name = "medbay camera" - }, -/turf/open/floor/plasteel/whiteblue/corner, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cSz" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/turf/open/floor/plasteel/whiteblue/corner, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cSA" = ( -/turf/open/floor/plasteel/whiteblue/corner, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cSB" = ( -/obj/structure/table, -/obj/item/weapon/paper_bin, -/obj/item/weapon/pen, -/turf/open/floor/plasteel/whiteblue/corner, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cSC" = ( -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cSD" = ( -/obj/structure/cable/white, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/checkpoint/medical) -"cSE" = ( -/obj/machinery/computer/crew, -/turf/open/floor/plasteel/red/side{ - dir = 5 - }, -/area/security/checkpoint/medical) -"cSF" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/holopad, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHEAST)"; - icon_state = "intact"; - dir = 6 - }, -/turf/open/floor/plasteel/neutral, -/area/security/checkpoint/medical) -"cSG" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/red/side{ - tag = "icon-red (EAST)"; - icon_state = "red"; - dir = 4 - }, -/area/security/checkpoint/medical) -"cSH" = ( -/obj/structure/cable/white, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/security/checkpoint/medical) -"cSI" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 1 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cSJ" = ( -/obj/structure/sign/bluecross_2{ - pixel_x = 32 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHWEST)"; - icon_state = "intact"; - dir = 10 - }, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 4 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cSK" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass_medical{ - name = "Medbay Storage"; - req_access_txt = "5" - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/sign/poster{ - icon_state = "poster3_legit"; - pixel_x = -32; - pixel_y = 0; - tag = "icon-poster3_legit" - }, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/medical/medbay2{ - name = "Medbay Storage" - }) -"cSL" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass_medical{ - name = "Medbay Storage"; - req_access_txt = "5" - }, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/medical/medbay2{ - name = "Medbay Storage" - }) -"cSM" = ( -/obj/structure/table/wood, -/obj/machinery/microwave{ - desc = "Cooks and boils stuff, somehow."; - pixel_x = -3; - pixel_y = 5 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 1 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cSN" = ( -/obj/structure/table/wood, -/obj/item/weapon/storage/box/donkpockets, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral/corner{ - dir = 1 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cSO" = ( -/obj/machinery/camera{ - c_tag = "Medbay - Break Room"; - dir = 2; - name = "medbay camera" - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 1 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cSP" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 4 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cSQ" = ( -/obj/machinery/disposal/bin, -/obj/structure/disposalpipe/trunk{ - dir = 8 - }, -/turf/open/floor/plasteel/bot, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cSR" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"cSS" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"cST" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 1; - heat_capacity = 1e+006 - }, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"cSU" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 1; - heat_capacity = 1e+006 - }, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"cSV" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/landmark{ - name = "blobstart" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"cSW" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/closet, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 2; - name = "2maintenance loot spawner" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 1; - heat_capacity = 1e+006 - }, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"cSX" = ( -/obj/structure/girder, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"cSY" = ( -/obj/structure/closet/crate, -/obj/item/weapon/storage/box/donkpockets, -/obj/effect/spawner/lootdrop/maintenance, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 1; - heat_capacity = 1e+006 - }, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"cSZ" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 1; - heat_capacity = 1e+006 - }, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"cTa" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 5 - }, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"cTb" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cTc" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/open/floor/plasteel/neutral/corner{ - dir = 8 - }, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cTd" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cTe" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cTf" = ( -/obj/structure/chair/stool, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cTg" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cTh" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHWEST)"; - icon_state = "intact"; - dir = 9 - }, -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cTi" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible{ - dir = 1 - }, -/obj/machinery/portable_atmospherics/canister, -/turf/open/floor/plasteel/warning{ - dir = 10 - }, -/area/maintenance/electrical) -"cTj" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible{ - dir = 1 - }, -/obj/machinery/light_switch{ - pixel_y = -26 - }, -/turf/open/floor/plasteel/warning{ - dir = 6 - }, -/area/maintenance/electrical) -"cTk" = ( -/obj/machinery/atmospherics/pipe/simple/supply/visible, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/delivery, -/area/maintenance/electrical) -"cTl" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/bot, -/area/maintenance/electrical) -"cTm" = ( -/obj/structure/extinguisher_cabinet{ - pixel_x = 26 - }, -/obj/structure/closet/toolcloset, -/turf/open/floor/plating, -/area/maintenance/electrical) -"cTn" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/paper_bin, -/obj/item/weapon/pen, -/turf/open/floor/plasteel/delivery, -/area/maintenance/electrical) -"cTo" = ( -/obj/structure/table/reinforced, -/obj/structure/sign/poster{ - icon_state = "poster16_legit"; - pixel_y = -32; - tag = "icon-poster16_legit" - }, -/obj/item/clothing/gloves/color/yellow, -/obj/item/weapon/storage/toolbox/electrical, -/turf/open/floor/plating, -/area/maintenance/electrical) -"cTp" = ( -/obj/machinery/power/smes, -/obj/machinery/light/small, -/obj/machinery/status_display{ - pixel_y = -32 - }, -/turf/open/floor/plating/warnplate{ - dir = 8 - }, -/area/maintenance/electrical) -"cTq" = ( -/obj/machinery/light_switch{ - pixel_y = -26 - }, -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/turf/open/floor/plasteel/bot, -/area/maintenance/electrical) -"cTr" = ( -/turf/open/floor/plasteel/delivery, -/area/maintenance/electrical) -"cTs" = ( -/obj/machinery/power/smes, -/obj/machinery/light/small, -/obj/machinery/status_display{ - pixel_y = -32 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating/warnplate{ - dir = 4 - }, -/area/maintenance/electrical) -"cTt" = ( -/obj/structure/closet/toolcloset, -/turf/open/floor/plasteel/delivery, -/area/maintenance/electrical) -"cTu" = ( -/obj/structure/closet/secure_closet/engineering_electrical, -/turf/open/floor/plating, -/area/maintenance/electrical) -"cTv" = ( -/obj/structure/disposaloutlet{ - tag = "icon-outlet (WEST)"; - icon_state = "outlet"; - dir = 8 - }, -/obj/structure/disposalpipe/trunk{ - tag = "icon-pipe-t (EAST)"; - icon_state = "pipe-t"; - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 1 - }, -/area/toxins/xenobiology) -"cTw" = ( -/obj/structure/cable/white, -/obj/structure/cable/white{ - d2 = 2; - icon_state = "0-2"; - tag = "icon-0-2" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor/preopen{ - id = "xenosecure"; - name = "Secure Pen Shutters" - }, -/obj/structure/disposalpipe/segment{ - tag = "icon-pipe-s (EAST)"; - icon_state = "pipe-s"; - dir = 4 - }, -/turf/open/floor/plating, -/area/toxins/xenobiology) -"cTx" = ( -/obj/structure/window/reinforced{ - dir = 1; - pixel_y = 1 - }, -/obj/machinery/disposal/bin, -/obj/structure/disposalpipe/trunk{ - tag = "icon-pipe-t (WEST)"; - icon_state = "pipe-t"; - dir = 8 - }, -/turf/open/floor/plasteel/bot, -/area/toxins/xenobiology) -"cTy" = ( -/obj/machinery/holopad, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/bot, -/area/toxins/xenobiology) -"cTz" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/plasteel/delivery, -/area/toxins/xenobiology) -"cTA" = ( -/obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/toxins/xenobiology) -"cTB" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/delivery, -/area/toxins/xenobiology) -"cTC" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/toxins/xenobiology) -"cTD" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/open/floor/plasteel/neutral/side, -/area/toxins/xenobiology) -"cTE" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/obj/machinery/light, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side, -/area/toxins/xenobiology) -"cTF" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side, -/area/toxins/xenobiology) -"cTG" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side, -/area/toxins/xenobiology) -"cTH" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/toxins/xenobiology) -"cTI" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/whitepurple/side{ - dir = 8 - }, -/area/toxins/xenobiology) -"cTJ" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHWEST)"; - icon_state = "intact"; - dir = 10 - }, -/turf/open/floor/plasteel/purple, -/area/toxins/xenobiology) -"cTK" = ( -/obj/machinery/holopad, -/turf/open/floor/plasteel/bot, -/area/toxins/xenobiology) -"cTL" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/storage/box/monkeycubes, -/obj/item/weapon/storage/box/monkeycubes, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/toxins/xenobiology) -"cTM" = ( -/obj/structure/table/reinforced, -/obj/machinery/reagentgrinder{ - pixel_y = 5 - }, -/obj/machinery/requests_console{ - department = "Xenobiology Lab"; - departmentType = 0; - name = "Xenobiology RC"; - pixel_x = 32; - pixel_y = 0 - }, -/obj/machinery/camera{ - c_tag = "Xenobiology - Starboard"; - dir = 8; - name = "xenobiology camera"; - network = list("SS13","xeno","RD") - }, -/turf/open/floor/plasteel/delivery, -/area/toxins/xenobiology) -"cTN" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/turf/open/floor/plasteel/whitepurple/corner{ - dir = 1 - }, -/area/medical/research{ - name = "Research Division" - }) -"cTO" = ( -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/checkpoint/science{ - name = "Security Post - Research Division" - }) -"cTP" = ( -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/door/window/brigdoor{ - id = "scicell"; - name = "Medical Cell"; - req_access_txt = "63" - }, -/turf/open/floor/plasteel/red, -/area/security/checkpoint/science{ - name = "Security Post - Research Division" - }) -"cTQ" = ( -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/structure/sign/nanotrasen{ - pixel_x = 32 - }, -/turf/open/floor/plating, -/area/security/checkpoint/science{ - name = "Security Post - Research Division" - }) -"cTR" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/research{ - name = "Research Division Access"; - req_access_txt = "47" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/medical/research{ - name = "Research Division" - }) -"cTS" = ( -/obj/structure/sign/science, -/turf/closed/wall/r_wall, -/area/medical/research{ - name = "Research Division" - }) -"cTT" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/research{ - name = "Research Division Access"; - req_access_txt = "47" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/medical/research{ - name = "Research Division" - }) -"cTU" = ( -/obj/structure/sign/securearea, -/turf/closed/wall/r_wall, -/area/medical/research{ - name = "Research Division" - }) -"cTV" = ( -/obj/structure/sign/science, -/turf/closed/wall, -/area/toxins/lab) -"cTW" = ( -/turf/closed/wall/r_wall, -/area/toxins/lab) -"cTX" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/structure/disposalpipe/segment, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "rndlab1"; - name = "Research and Development Shutter" - }, -/turf/open/floor/plating, -/area/toxins/lab) -"cTY" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "rndlab1"; - name = "Research and Development Shutter" - }, -/turf/open/floor/plating, -/area/toxins/lab) -"cTZ" = ( -/obj/structure/table/reinforced, -/obj/machinery/door/firedoor, -/obj/item/weapon/folder, -/obj/item/weapon/pen, -/obj/machinery/door/window/southleft{ - name = "Research Lab Desk"; - req_access_txt = "7" - }, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "rndlab1"; - name = "Research and Development Shutter" - }, -/turf/open/floor/plasteel/delivery, -/area/toxins/lab) -"cUa" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/toxins/lab) -"cUb" = ( -/obj/structure/sign/nanotrasen, -/turf/closed/wall/r_wall, -/area/toxins/lab) -"cUc" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral/corner{ - dir = 8 - }, -/area/hallway/primary/aft) -"cUd" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment, -/obj/structure/extinguisher_cabinet{ - dir = 4; - pixel_x = 24; - pixel_y = 0 - }, -/turf/open/floor/plasteel/neutral/corner, -/area/hallway/primary/aft) -"cUe" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "chemisttop"; - name = "Chemisty Lobby Shutters" - }, -/turf/open/floor/plating, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cUf" = ( -/obj/machinery/smartfridge/chemistry, -/turf/closed/wall, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cUg" = ( -/obj/structure/table/reinforced, -/obj/machinery/door/firedoor, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "chemisttop"; - name = "Chemisty Lobby Shutters" - }, -/obj/machinery/door/window/southleft{ - name = "Chemistry Desk"; - req_access_txt = "5; 33" - }, -/obj/item/weapon/folder/yellow, -/turf/open/floor/plasteel/delivery, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cUh" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "chemisttop"; - name = "Chemisty Lobby Shutters" - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plating, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cUi" = ( -/obj/structure/table/reinforced, -/obj/machinery/door/firedoor, -/obj/item/weapon/folder/white, -/obj/item/weapon/reagent_containers/hypospray/medipen, -/turf/open/floor/plasteel/delivery, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cUj" = ( -/obj/structure/table/reinforced, -/obj/machinery/door/firedoor, -/obj/item/weapon/reagent_containers/glass/bottle/charcoal{ - pixel_x = 6 - }, -/obj/item/weapon/reagent_containers/glass/bottle/epinephrine, -/obj/item/weapon/reagent_containers/syringe, -/turf/open/floor/plasteel/delivery, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cUk" = ( -/obj/structure/table/reinforced, -/obj/machinery/door/firedoor, -/obj/item/weapon/reagent_containers/food/drinks/britcup, -/turf/open/floor/plasteel/delivery, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cUl" = ( -/obj/machinery/airalarm{ - dir = 4; - locked = 0; - pixel_x = -23; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 1 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cUm" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/camera{ - c_tag = "Medbay - Fore Port"; - dir = 8; - name = "medbay camera" - }, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 4 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cUn" = ( -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/machinery/door_timer{ - id = "medcell"; - name = "Medical Cell"; - pixel_x = -32; - pixel_y = -32 - }, -/obj/machinery/power/apc{ - dir = 8; - name = "Security Post - Medical APC"; - pixel_x = -26; - pixel_y = 0 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/obj/machinery/camera{ - c_tag = "Security Post - Medbay"; - dir = 4; - name = "security camera" - }, -/turf/open/floor/plasteel/red/side{ - tag = "icon-red (SOUTHWEST)"; - icon_state = "red"; - dir = 10 - }, -/area/security/checkpoint/medical) -"cUo" = ( -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHWEST)"; - icon_state = "intact"; - dir = 9 - }, -/turf/open/floor/plasteel/red/side, -/area/security/checkpoint/medical) -"cUp" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1 - }, -/obj/machinery/airalarm{ - dir = 8; - icon_state = "alarm0"; - pixel_x = 24 - }, -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/turf/open/floor/plasteel/red/side{ - tag = "icon-red (SOUTHEAST)"; - icon_state = "red"; - dir = 6 - }, -/area/security/checkpoint/medical) -"cUq" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 1 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cUr" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/plasteel/blue, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cUs" = ( -/obj/structure/table/glass, -/obj/item/stack/medical/gauze, -/obj/item/stack/medical/bruise_pack, -/obj/item/stack/medical/ointment, -/obj/machinery/camera{ - c_tag = "Medbay - Sleepers"; - dir = 2; - name = "medbay camera" - }, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 1 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cUt" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 1 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cUu" = ( -/turf/open/floor/plasteel/whiteblue/side{ - tag = "icon-whiteblue (NORTH)"; - icon_state = "whiteblue"; - dir = 1 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cUv" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1 - }, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 4 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cUw" = ( -/obj/machinery/newscaster{ - pixel_x = -32 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 1 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cUx" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plasteel/redblue, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cUy" = ( -/turf/open/floor/plasteel/redblue, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cUz" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/redblue, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cUA" = ( -/obj/machinery/vending/coffee, -/turf/open/floor/plasteel/neutral/corner{ - dir = 4 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cUB" = ( -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"cUC" = ( -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"cUD" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"cUE" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/effect/spawner/lootdrop/maintenance, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"cUF" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"cUG" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"cUH" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"cUI" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"cUJ" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"cUK" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/delivery, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"cUL" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Maintenance Hatch"; - req_access_txt = "12" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cUM" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/junction{ - icon_state = "pipe-j1"; - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 8 - }, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cUN" = ( -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cUO" = ( -/obj/structure/chair/stool, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cUP" = ( -/obj/structure/table, -/obj/item/clothing/under/suit_jacket/really_black, -/obj/item/weapon/cane, -/obj/item/clothing/head/bowler{ - pixel_y = 5 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cUQ" = ( -/obj/structure/table, -/obj/item/weapon/clipboard, -/obj/item/weapon/folder, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cUR" = ( -/obj/structure/table, -/obj/item/toy/sword, -/obj/item/weapon/gun/ballistic/shotgun/toy/crossbow, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cUS" = ( -/obj/structure/chair/stool, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cUT" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHWEST)"; - icon_state = "intact"; - dir = 9 - }, -/turf/open/floor/plasteel/neutral/corner, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cUU" = ( -/turf/open/floor/plasteel/escape{ - dir = 8 - }, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cUV" = ( -/obj/structure/table/wood, -/obj/item/weapon/storage/crayons, -/obj/item/weapon/storage/crayons, -/turf/open/floor/plasteel/escape{ - tag = "icon-escape (EAST)"; - icon_state = "escape"; - dir = 4 - }, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cUW" = ( -/obj/structure/mopbucket, -/obj/effect/decal/cleanable/dirt, -/obj/item/weapon/mop, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cUX" = ( -/obj/structure/sink/kitchen{ - desc = "A sink used for washing one's hands and face. It looks rusty and home-made"; - name = "old sink"; - pixel_y = 28 - }, -/obj/item/weapon/reagent_containers/glass/bucket, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cUY" = ( -/obj/machinery/door/airlock/atmos{ - name = "Atmospherics Auxiliary Port"; - req_access_txt = "24" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (EAST)"; - icon_state = "plasteel_warn_side"; - dir = 4 - }, -/area/maintenance/electrical) -"cUZ" = ( -/obj/structure/sign/securearea, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall, -/area/maintenance/electrical) -"cVa" = ( -/obj/machinery/door/airlock/engineering{ - name = "Engineering Auxiliary Power"; - req_access_txt = "10" - }, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (EAST)"; - icon_state = "plasteel_warn_side"; - dir = 4 - }, -/area/maintenance/electrical) -"cVb" = ( -/obj/structure/cable/white, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor/preopen{ - id = "xenosecure"; - name = "Secure Pen Shutters" - }, -/turf/open/floor/plating, -/area/toxins/xenobiology) -"cVc" = ( -/obj/structure/table/reinforced, -/obj/machinery/cell_charger, -/turf/open/floor/plasteel/bot, -/area/toxins/xenobiology) -"cVd" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/plasteel/bot, -/area/toxins/xenobiology) -"cVe" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHWEST)"; - icon_state = "intact"; - dir = 9 - }, -/turf/open/floor/plasteel/neutral, -/area/toxins/xenobiology) -"cVf" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/bot, -/area/toxins/xenobiology) -"cVg" = ( -/obj/structure/window/reinforced{ - dir = 4 - }, -/obj/machinery/disposal/bin, -/obj/structure/disposalpipe/trunk, -/turf/open/floor/plasteel/bot, -/area/toxins/xenobiology) -"cVh" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/door/window/brigdoor{ - dir = 1; - name = "Creature Pen"; - req_access_txt = "47" - }, -/turf/open/floor/plasteel/delivery, -/area/toxins/xenobiology) -"cVi" = ( -/obj/structure/table/reinforced, -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/structure/extinguisher_cabinet{ - pixel_x = 26; - pixel_y = -32 - }, -/obj/machinery/button/door{ - id = "xeno1"; - name = "Containment Control"; - req_access_txt = "55" - }, -/turf/open/floor/plasteel/bot, -/area/toxins/xenobiology) -"cVj" = ( -/obj/structure/window/reinforced{ - dir = 4 - }, -/obj/machinery/disposal/bin, -/obj/structure/extinguisher_cabinet{ - pixel_x = -26; - pixel_y = -32 - }, -/obj/structure/disposalpipe/trunk, -/turf/open/floor/plasteel/bot, -/area/toxins/xenobiology) -"cVk" = ( -/obj/structure/table/reinforced, -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/machinery/button/door{ - id = "xeno2"; - name = "Containment Control"; - req_access_txt = "55" - }, -/turf/open/floor/plasteel/bot, -/area/toxins/xenobiology) -"cVl" = ( -/obj/structure/table/reinforced, -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/machinery/button/door{ - id = "xeno3"; - name = "Containment Control"; - req_access_txt = "55" - }, -/turf/open/floor/plasteel/bot, -/area/toxins/xenobiology) -"cVm" = ( -/obj/machinery/processor/slime, -/turf/open/floor/plasteel/bot, -/area/toxins/xenobiology) -"cVn" = ( -/turf/open/floor/plasteel/whitepurple/side{ - dir = 8 - }, -/area/toxins/xenobiology) -"cVo" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/effect/landmark/start{ - name = "Scientist" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral, -/area/toxins/xenobiology) -"cVp" = ( -/obj/structure/chair/office/light{ - tag = "icon-officechair_white (EAST)"; - icon_state = "officechair_white"; - dir = 4 - }, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/toxins/xenobiology) -"cVq" = ( -/obj/structure/cable/white{ - d2 = 2; - icon_state = "0-2"; - tag = "icon-0-2" - }, -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/checkpoint/science{ - name = "Security Post - Research Division" - }) -"cVr" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/chair{ - dir = 4 - }, -/turf/open/floor/plasteel/red/side{ - dir = 9 - }, -/area/security/checkpoint/science{ - name = "Security Post - Research Division" - }) -"cVs" = ( -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/turf/open/floor/plasteel/red/side{ - dir = 1 - }, -/area/security/checkpoint/science{ - name = "Security Post - Research Division" - }) -"cVt" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/closet/secure_closet/brig{ - id = "scicell"; - name = "Science Cell Locker" - }, -/turf/open/floor/plasteel/red/side{ - dir = 5 - }, -/area/security/checkpoint/science{ - name = "Security Post - Research Division" - }) -"cVu" = ( -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/checkpoint/science{ - name = "Security Post - Research Division" - }) -"cVv" = ( -/obj/structure/closet/emcloset, -/turf/open/floor/plasteel/bot, -/area/medical/research{ - name = "Research Division" - }) -"cVw" = ( -/obj/machinery/shower{ - dir = 4; - icon_state = "shower"; - name = "emergency shower" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/warning{ - dir = 9 - }, -/area/medical/research{ - name = "Research Division" - }) -"cVx" = ( -/obj/machinery/light/small{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHEAST)"; - icon_state = "intact"; - dir = 6 - }, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/medical/research{ - name = "Research Division" - }) -"cVy" = ( -/obj/structure/sink{ - dir = 4; - pixel_x = 11 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHWEST)"; - icon_state = "intact"; - dir = 9 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/warning{ - dir = 5 - }, -/area/medical/research{ - name = "Research Division" - }) -"cVz" = ( -/obj/structure/closet/firecloset, -/turf/open/floor/plasteel/bot, -/area/medical/research{ - name = "Research Division" - }) -"cVA" = ( -/obj/structure/sign/nosmoking_2, -/turf/closed/wall/r_wall, -/area/toxins/lab) -"cVB" = ( -/obj/machinery/disposal/bin, -/obj/structure/disposalpipe/trunk{ - tag = "icon-pipe-t (EAST)"; - icon_state = "pipe-t"; - dir = 4 - }, -/turf/open/floor/plasteel/warning{ - dir = 5 - }, -/area/toxins/lab) -"cVC" = ( -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/whitepurple/corner{ - dir = 1 - }, -/area/toxins/lab) -"cVD" = ( -/obj/machinery/light{ - dir = 1 - }, -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1 - }, -/obj/machinery/status_display{ - pixel_y = 32 - }, -/turf/open/floor/plasteel/whitepurple/corner{ - dir = 1 - }, -/area/toxins/lab) -"cVE" = ( -/turf/open/floor/plasteel/whitepurple/side{ - tag = "icon-whitepurple (NORTH)"; - icon_state = "whitepurple"; - dir = 1 - }, -/area/toxins/lab) -"cVF" = ( -/obj/structure/chair/office/light{ - dir = 1 - }, -/turf/open/floor/plasteel/whitepurple/corner{ - dir = 4 - }, -/area/toxins/lab) -"cVG" = ( -/turf/open/floor/plasteel/whitepurple/corner{ - dir = 4 - }, -/area/toxins/lab) -"cVH" = ( -/obj/structure/table, -/obj/item/stack/sheet/metal{ - amount = 50 - }, -/obj/item/stack/sheet/glass{ - amount = 50 - }, -/obj/item/weapon/wrench, -/obj/item/clothing/glasses/welding, -/obj/machinery/newscaster{ - pixel_y = 32 - }, -/turf/open/floor/plasteel/whitepurple/corner{ - dir = 4 - }, -/area/toxins/lab) -"cVI" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/purple/corner{ - tag = "icon-purplecorner (WEST)"; - icon_state = "purplecorner"; - dir = 8 - }, -/area/hallway/primary/aft) -"cVJ" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/aft) -"cVK" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/orange/corner, -/area/hallway/primary/aft) -"cVL" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "chemistbot"; - name = "Chemisty Side Shutters" - }, -/turf/open/floor/plating, -/area/medical/chemistry) -"cVM" = ( -/obj/structure/table/glass, -/obj/item/weapon/folder/white, -/obj/item/weapon/reagent_containers/glass/beaker/large{ - pixel_x = -3 - }, -/obj/item/weapon/reagent_containers/glass/beaker{ - pixel_x = 3 - }, -/obj/item/weapon/reagent_containers/dropper, -/obj/machinery/newscaster{ - pixel_y = 32 - }, -/turf/open/floor/plasteel/whiteyellow/corner{ - tag = "icon-whiteyellowcorner (NORTH)"; - icon_state = "whiteyellowcorner"; - dir = 1 - }, -/area/medical/chemistry) -"cVN" = ( -/obj/structure/table/glass, -/obj/item/weapon/clipboard, -/obj/item/toy/figure/chemist, -/turf/open/floor/plasteel/whiteyellow/corner{ - tag = "icon-whiteyellowcorner (NORTH)"; - icon_state = "whiteyellowcorner"; - dir = 1 - }, -/area/medical/chemistry) -"cVO" = ( -/obj/machinery/chem_master{ - density = 0 - }, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/medical/chemistry) -"cVP" = ( -/obj/structure/chair/office/light{ - dir = 1 - }, -/obj/effect/landmark/start{ - name = "Chemist" - }, -/turf/open/floor/plasteel/bot, -/area/medical/chemistry) -"cVQ" = ( -/obj/machinery/chem_dispenser, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/medical/chemistry) -"cVR" = ( -/obj/structure/cable/white{ - tag = "icon-0-2"; - icon_state = "0-2" - }, -/obj/machinery/power/apc{ - cell_type = 5000; - dir = 1; - name = "Chemistry Lab APC"; - pixel_x = 0; - pixel_y = 25 - }, -/turf/open/floor/plasteel/whiteyellow/corner{ - dir = 4 - }, -/area/medical/chemistry) -"cVS" = ( -/obj/structure/closet/wardrobe/chemistry_white, -/turf/open/floor/plasteel/warning{ - tag = "icon-plasteel_warn (NORTHWEST)"; - icon_state = "plasteel_warn"; - dir = 9 - }, -/area/medical/chemistry) -"cVT" = ( -/obj/machinery/ai_status_display, -/turf/closed/wall, -/area/medical/chemistry) -"cVU" = ( -/obj/machinery/computer/med_data, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 1 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cVV" = ( -/obj/structure/chair/office/light{ - dir = 1 - }, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 1 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cVW" = ( -/turf/open/floor/plasteel/whiteblue/side{ - dir = 1 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cVX" = ( -/obj/structure/chair/office/light{ - dir = 1 - }, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 4 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cVY" = ( -/obj/structure/filingcabinet/chestdrawer, -/obj/machinery/button/door{ - desc = "A remote control switch for the medbay foyer."; - id = "MedbayFoyer"; - name = "Medbay Doors Control"; - normaldoorcontrol = 1; - pixel_x = 24; - pixel_y = 24 - }, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 4 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cVZ" = ( -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/checkpoint/medical) -"cWa" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/machinery/door/window/brigdoor{ - id = "medcell"; - name = "Medical Cell"; - req_access_txt = "63" - }, -/turf/open/floor/plasteel/red, -/area/security/checkpoint/medical) -"cWb" = ( -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/checkpoint/medical) -"cWc" = ( -/obj/structure/sign/poster{ - icon_state = "poster4_legit"; - pixel_x = -32; - pixel_y = 0; - tag = "icon-poster4_legit" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 1 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cWd" = ( -/obj/machinery/door/firedoor, -/turf/open/floor/plasteel/warning/side, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cWe" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/neutral, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cWf" = ( -/obj/effect/landmark/start{ - name = "Medical Doctor" - }, -/turf/open/floor/plasteel/blue, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cWg" = ( -/obj/structure/mirror{ - pixel_x = 26 - }, -/obj/structure/sink{ - dir = 4; - pixel_x = 11 - }, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 4 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cWh" = ( -/obj/structure/chair/stool, -/turf/open/floor/plasteel/neutral/side{ - dir = 8 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cWi" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/redblue, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cWj" = ( -/obj/machinery/holopad, -/obj/effect/landmark/start{ - name = "Medical Doctor" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHEAST)"; - icon_state = "intact"; - dir = 6 - }, -/turf/open/floor/plasteel/redblue, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cWk" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plasteel/redblue, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cWl" = ( -/obj/machinery/vending/cola, -/obj/machinery/status_display{ - pixel_x = 32 - }, -/obj/machinery/light{ - icon_state = "tube1"; - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cWm" = ( -/obj/structure/girder, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"cWn" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"cWo" = ( -/turf/closed/wall, -/area/medical/medbay3{ - name = "Abandoned Medbay" - }) -"cWp" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral/side{ - dir = 8 - }, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"cWq" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"cWr" = ( -/obj/machinery/disposal/bin, -/obj/structure/disposalpipe/trunk{ - dir = 1 - }, -/turf/open/floor/plasteel/bot, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cWs" = ( -/obj/structure/table, -/obj/item/weapon/storage/photo_album, -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cWt" = ( -/obj/item/weapon/lipstick/random{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/lipstick/random{ - pixel_x = -3; - pixel_y = -3 - }, -/obj/item/weapon/lipstick/random, -/obj/structure/table, -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cWu" = ( -/obj/structure/table, -/obj/item/device/camera_film{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/device/camera_film, -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cWv" = ( -/turf/open/floor/plasteel/neutral/corner, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cWw" = ( -/obj/structure/chair/stool, -/turf/open/floor/plasteel/escape{ - dir = 8 - }, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cWx" = ( -/obj/structure/easel, -/obj/item/weapon/canvas/twentythreeXtwentythree, -/obj/item/weapon/canvas/twentythreeXtwentythree, -/obj/item/weapon/canvas/twentythreeXtwentythree, -/obj/machinery/light/small{ - dir = 4 - }, -/turf/open/floor/plasteel/escape{ - tag = "icon-escape (EAST)"; - icon_state = "escape"; - dir = 4 - }, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cWy" = ( -/obj/structure/table, -/obj/effect/decal/cleanable/dirt, -/obj/item/clothing/gloves/color/orange, -/obj/item/weapon/storage/box/mousetraps{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/storage/box/lights/mixed, -/obj/item/weapon/grenade/chem_grenade/cleaner, -/turf/open/floor/plasteel/green/side{ - dir = 8 - }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cWz" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHEAST)"; - icon_state = "intact"; - dir = 6 - }, -/turf/open/floor/plasteel/purple/side{ - tag = "icon-purple (EAST)"; - icon_state = "purple"; - dir = 4 - }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cWA" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/open/floor/plasteel/delivery, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cWB" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 1; - heat_capacity = 1e+006 - }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cWC" = ( -/obj/effect/landmark{ - name = "blobstart" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 1; - heat_capacity = 1e+006 - }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cWD" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 1; - heat_capacity = 1e+006 - }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cWE" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/open/floor/plasteel/delivery, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cWF" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral/side{ - dir = 1; - heat_capacity = 1e+006 - }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cWG" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 1; - heat_capacity = 1e+006 - }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cWH" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/obj/machinery/power/apc{ - cell_type = 10000; - dir = 1; - name = "Port Maintenance APC"; - pixel_x = 0; - pixel_y = 28 - }, -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cWI" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cWJ" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 1; - heat_capacity = 1e+006 - }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cWK" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 1; - heat_capacity = 1e+006 - }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cWL" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/delivery, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cWM" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 1; - heat_capacity = 1e+006 - }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cWN" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cWO" = ( -/obj/machinery/light, -/turf/open/floor/plasteel/vault{ - tag = "icon-vault (NORTHEAST)"; - icon_state = "vault"; - dir = 5 - }, -/area/toxins/xenobiology) -"cWP" = ( -/obj/machinery/shieldwallgen, -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/turf/open/floor/plating/warnplate{ - dir = 5 - }, -/area/toxins/xenobiology) -"cWQ" = ( -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/machinery/airalarm{ - dir = 1; - icon_state = "alarm0"; - pixel_y = -22 - }, -/turf/open/floor/plasteel/delivery, -/area/toxins/xenobiology) -"cWR" = ( -/obj/machinery/newscaster{ - pixel_y = -32 - }, -/turf/open/floor/plasteel/bot, -/area/toxins/xenobiology) -"cWS" = ( -/obj/structure/table, -/obj/item/weapon/crowbar, -/obj/item/weapon/wrench, -/obj/item/clothing/mask/gas, -/obj/machinery/light, -/obj/structure/extinguisher_cabinet{ - pixel_x = 26 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/bot, -/area/toxins/xenobiology) -"cWT" = ( -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/structure/disposalpipe/segment, -/obj/machinery/door/poddoor/preopen{ - id = "xeno1"; - name = "Creature Cell #1" - }, -/turf/open/floor/plating, -/area/toxins/xenobiology) -"cWU" = ( -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/machinery/door/window/brigdoor{ - name = "Creature Pen"; - req_access_txt = "47" - }, -/obj/machinery/door/poddoor/preopen{ - id = "xeno1"; - name = "Creature Cell #1" - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/toxins/xenobiology) -"cWV" = ( -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor/preopen{ - id = "xeno1"; - name = "Creature Cell #1" - }, -/turf/open/floor/plating, -/area/toxins/xenobiology) -"cWW" = ( -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/structure/disposalpipe/segment, -/obj/machinery/door/poddoor/preopen{ - id = "xeno2"; - name = "Creature Cell #2" - }, -/turf/open/floor/plating, -/area/toxins/xenobiology) -"cWX" = ( -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/machinery/door/window/brigdoor{ - name = "Creature Pen"; - req_access_txt = "47" - }, -/obj/machinery/door/poddoor/preopen{ - id = "xeno2"; - name = "Creature Cell #2" - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/toxins/xenobiology) -"cWY" = ( -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor/preopen{ - id = "xeno2"; - name = "Creature Cell #2" - }, -/turf/open/floor/plating, -/area/toxins/xenobiology) -"cWZ" = ( -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/structure/disposalpipe/segment, -/obj/machinery/door/poddoor/preopen{ - id = "xeno3"; - name = "Creature Cell #3" - }, -/turf/open/floor/plating, -/area/toxins/xenobiology) -"cXa" = ( -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/machinery/door/window/brigdoor{ - name = "Creature Pen"; - req_access_txt = "47" - }, -/obj/machinery/door/poddoor/preopen{ - id = "xeno3"; - name = "Creature Cell #3" - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/toxins/xenobiology) -"cXb" = ( -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor/preopen{ - id = "xeno3"; - name = "Creature Cell #3" - }, -/turf/open/floor/plating, -/area/toxins/xenobiology) -"cXc" = ( -/obj/machinery/smartfridge/extract, -/obj/machinery/light_switch{ - pixel_x = -26 - }, -/turf/open/floor/plasteel/bot, -/area/toxins/xenobiology) -"cXd" = ( -/turf/open/floor/plasteel/whitepurple/side{ - dir = 10 - }, -/area/toxins/xenobiology) -"cXe" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHEAST)"; - icon_state = "intact"; - dir = 5 - }, -/turf/open/floor/plasteel/whitepurple/side, -/area/toxins/xenobiology) -"cXf" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/whitepurple/side, -/area/toxins/xenobiology) -"cXg" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/warning{ - dir = 10 - }, -/area/toxins/xenobiology) -"cXh" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/folder/white, -/obj/item/weapon/pen, -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/obj/machinery/power/apc{ - dir = 4; - name = "Xenobiology Lab APC"; - pixel_x = 26; - pixel_y = 0 - }, -/turf/open/floor/plasteel/warning, -/area/toxins/xenobiology) -"cXi" = ( -/obj/structure/chair{ - dir = 4 - }, -/turf/open/floor/plasteel/red/side{ - tag = "icon-red (SOUTHWEST)"; - icon_state = "red"; - dir = 10 - }, -/area/security/checkpoint/science{ - name = "Security Post - Research Division" - }) -"cXj" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/red/side, -/area/security/checkpoint/science{ - name = "Security Post - Research Division" - }) -"cXk" = ( -/turf/open/floor/plasteel/red/side{ - dir = 6 - }, -/area/security/checkpoint/science{ - name = "Security Post - Research Division" - }) -"cXl" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/security{ - id_tag = "scidoor"; - name = "Security Post - Science"; - req_access_txt = "63" - }, -/turf/open/floor/plasteel/warning/side, -/area/security/checkpoint/science{ - name = "Security Post - Research Division" - }) -"cXm" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/bot, -/area/medical/research{ - name = "Research Division" - }) -"cXn" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/medical/research{ - name = "Research Division" - }) -"cXo" = ( -/obj/machinery/holopad, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/bot, -/area/medical/research{ - name = "Research Division" - }) -"cXp" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 2; - on = 1 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/medical/research{ - name = "Research Division" - }) -"cXq" = ( -/obj/structure/closet/firecloset, -/obj/machinery/camera{ - c_tag = "Science - Research Division Access"; - dir = 8; - name = "science camera"; - network = list("SS13","RD") - }, -/turf/open/floor/plasteel/bot, -/area/medical/research{ - name = "Research Division" - }) -"cXr" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/stock_parts/matter_bin{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/stock_parts/matter_bin, -/obj/item/weapon/stock_parts/micro_laser, -/obj/machinery/airalarm{ - dir = 4; - locked = 0; - pixel_x = -23; - pixel_y = 0 - }, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/toxins/lab) -"cXs" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 2; - on = 1 - }, -/turf/open/floor/plasteel/neutral, -/area/toxins/lab) -"cXt" = ( -/obj/effect/landmark/start{ - name = "Scientist" - }, -/turf/open/floor/plasteel/neutral, -/area/toxins/lab) -"cXu" = ( -/turf/open/floor/plasteel/neutral, -/area/toxins/lab) -"cXv" = ( -/obj/machinery/r_n_d/destructive_analyzer, -/turf/open/floor/plasteel/warning{ - dir = 9 - }, -/area/toxins/lab) -"cXw" = ( -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/toxins/lab) -"cXx" = ( -/obj/machinery/r_n_d/protolathe, -/obj/machinery/ai_status_display{ - pixel_x = 32 - }, -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/turf/open/floor/plasteel/warning{ - dir = 5 - }, -/area/toxins/lab) -"cXy" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment, -/obj/machinery/camera{ - c_tag = "Departures Hallway - Fore"; - dir = 8; - name = "hallway camera" - }, -/turf/open/floor/plasteel/orange/corner, -/area/hallway/primary/aft) -"cXz" = ( -/turf/closed/wall, -/area/medical/chemistry) -"cXA" = ( -/obj/structure/table/glass, -/obj/item/device/assembly/igniter, -/obj/item/device/assembly/igniter, -/obj/item/device/assembly/igniter, -/obj/item/device/assembly/timer{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/device/assembly/timer{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/device/assembly/timer{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/machinery/status_display{ - pixel_x = -32 - }, -/turf/open/floor/plasteel/whiteyellow/side{ - dir = 8 - }, -/area/medical/chemistry) -"cXB" = ( -/turf/open/floor/plasteel/white, -/area/medical/chemistry) -"cXC" = ( -/obj/machinery/chem_heater, -/turf/open/floor/plasteel/warning{ - dir = 10 - }, -/area/medical/chemistry) -"cXD" = ( -/turf/open/floor/plasteel/warning, -/area/medical/chemistry) -"cXE" = ( -/obj/machinery/disposal/bin, -/obj/structure/disposalpipe/trunk{ - dir = 1 - }, -/turf/open/floor/plasteel/warning{ - dir = 6 - }, -/area/medical/chemistry) -"cXF" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/neutral, -/area/medical/chemistry) -"cXG" = ( -/obj/structure/closet/secure_closet/medical1, -/obj/structure/window/reinforced, -/turf/open/floor/plasteel/warning{ - dir = 10 - }, -/area/medical/chemistry) -"cXH" = ( -/obj/machinery/computer/crew, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = -26; - pixel_y = 0 - }, -/turf/open/floor/plasteel/whiteblue/side{ - dir = 8 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cXI" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 2; - on = 1 - }, -/turf/open/floor/plasteel/neutral, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cXJ" = ( -/obj/machinery/holopad, -/obj/effect/landmark/start{ - name = "Medical Doctor" - }, -/turf/open/floor/plasteel/neutral, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cXK" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/whiteblue/side{ - dir = 4 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cXL" = ( -/obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/door/airlock/glass_medical{ - name = "Medbay Desk"; - req_access_txt = "5" - }, -/turf/open/floor/plasteel/warning/side, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cXM" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 1 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cXN" = ( -/obj/structure/cable/white{ - d2 = 2; - icon_state = "0-2"; - tag = "icon-0-2" - }, -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/checkpoint/medical) -"cXO" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/chair{ - dir = 4 - }, -/turf/open/floor/plasteel/red/side{ - dir = 9 - }, -/area/security/checkpoint/medical) -"cXP" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/turf/open/floor/plasteel/red/side{ - dir = 1 - }, -/area/security/checkpoint/medical) -"cXQ" = ( -/obj/structure/closet/secure_closet/brig{ - id = "medcell"; - name = "Medical Cell Locker" - }, -/turf/open/floor/plasteel/red/side{ - dir = 5 - }, -/area/security/checkpoint/medical) -"cXR" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/blue, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cXS" = ( -/obj/machinery/holopad{ - pixel_y = 16 - }, -/turf/open/floor/plasteel/neutral, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cXT" = ( -/obj/machinery/shower{ - dir = 8; - icon_state = "shower"; - name = "emergency shower" - }, -/obj/structure/extinguisher_cabinet{ - pixel_x = 26 - }, -/turf/open/floor/plasteel/whiteblue/corner, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cXU" = ( -/obj/structure/table/wood, -/obj/item/weapon/folder/white, -/obj/item/weapon/reagent_containers/spray/cleaner, -/turf/open/floor/plasteel/neutral/corner{ - dir = 8 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cXV" = ( -/obj/structure/chair/stool, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/redblue, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cXW" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/turf/open/floor/plasteel/redblue, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cXX" = ( -/obj/machinery/vending/cigarette, -/obj/structure/extinguisher_cabinet{ - pixel_x = 26 - }, -/turf/open/floor/plasteel/neutral/corner, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cXY" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/closet/crate, -/obj/item/weapon/retractor, -/obj/effect/spawner/lootdrop/maintenance, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"cXZ" = ( -/obj/machinery/airalarm{ - dir = 4; - pixel_x = -23; - pixel_y = 0 - }, -/obj/machinery/sleeper{ - icon_state = "sleeper-open"; - dir = 4 - }, -/turf/open/floor/plasteel/warning{ - dir = 6 - }, -/area/medical/medbay3{ - name = "Abandoned Medbay" - }) -"cYa" = ( -/obj/structure/mirror{ - icon_state = "mirror_broke"; - pixel_y = 28; - tag = "icon-mirror_broke" - }, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 1 - }, -/area/medical/medbay3{ - name = "Abandoned Medbay" - }) -"cYb" = ( -/obj/structure/bed/roller, -/obj/machinery/iv_drip{ - density = 0 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/medical/medbay3{ - name = "Abandoned Medbay" - }) -"cYc" = ( -/obj/structure/table/glass, -/obj/item/stack/medical/gauze, -/obj/item/stack/medical/bruise_pack, -/obj/item/stack/medical/ointment, -/obj/structure/sign/nosmoking_2{ - pixel_y = 32 - }, -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/plasteel/whiteblue/side{ - dir = 1 - }, -/area/medical/medbay3{ - name = "Abandoned Medbay" - }) -"cYd" = ( -/obj/structure/bed/roller, -/obj/machinery/iv_drip{ - density = 0 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 4 - }, -/area/medical/medbay3{ - name = "Abandoned Medbay" - }) -"cYe" = ( -/obj/structure/mirror{ - icon_state = "mirror_broke"; - pixel_y = 28; - tag = "icon-mirror_broke" - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 4 - }, -/area/medical/medbay3{ - name = "Abandoned Medbay" - }) -"cYf" = ( -/obj/structure/frame/machine, -/obj/effect/decal/cleanable/cobweb/cobweb2, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning{ - dir = 10 - }, -/area/medical/medbay3{ - name = "Abandoned Medbay" - }) -"cYg" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"cYh" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/reagent_dispensers/fueltank, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"cYi" = ( -/obj/machinery/vending/cigarette, -/turf/open/floor/plasteel/delivery, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cYj" = ( -/turf/open/floor/plasteel/neutral/corner{ - dir = 8; - heat_capacity = 1e+006 - }, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cYk" = ( -/obj/machinery/light, -/obj/machinery/camera{ - c_tag = "Recreation - Aft"; - dir = 1; - name = "recreation camera" - }, -/turf/open/floor/plasteel/neutral/side, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cYl" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1 - }, -/turf/open/floor/plasteel/neutral/corner, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cYm" = ( -/obj/structure/table/wood, -/obj/item/stack/packageWrap{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/stack/wrapping_paper, -/turf/open/floor/plasteel/escape{ - dir = 8 - }, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cYn" = ( -/obj/structure/table/wood, -/obj/item/device/camera, -/obj/structure/sign/nanotrasen{ - pixel_x = 32; - pixel_y = -32 - }, -/turf/open/floor/plasteel/escape{ - tag = "icon-escape (EAST)"; - icon_state = "escape"; - dir = 4 - }, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) -"cYo" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/turf/open/floor/plasteel/green/side{ - dir = 6 - }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cYp" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/neutral/side{ - dir = 10 - }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cYq" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/neutral/side, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cYr" = ( -/turf/open/floor/plasteel/neutral/side, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cYs" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHEAST)"; - icon_state = "intact"; - dir = 5 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cYt" = ( -/obj/structure/closet/emcloset, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cYu" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/rack, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 2; - name = "2maintenance loot spawner" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cYv" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cYw" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cYx" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/turf/open/floor/plasteel/delivery, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cYy" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cYz" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cYA" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cYB" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cYC" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cYD" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall/r_wall, -/area/toxins/xenobiology) -"cYE" = ( -/obj/structure/disposaloutlet, -/obj/structure/disposalpipe/trunk{ - tag = "icon-pipe-t (NORTH)"; - icon_state = "pipe-t"; - dir = 1 - }, -/turf/open/floor/plasteel/vault{ - dir = 1 - }, -/area/toxins/xenobiology) -"cYF" = ( -/obj/structure/table, -/obj/item/weapon/paper_bin, -/obj/item/weapon/pen, -/obj/machinery/firealarm{ - dir = 8; - pixel_x = -24; - pixel_y = 0 - }, -/obj/item/weapon/storage/bag/bio, -/obj/item/weapon/storage/bag/bio, -/turf/open/floor/plasteel/bot, -/area/toxins/xenobiology) -"cYG" = ( -/turf/open/floor/plasteel/bot, -/area/toxins/xenobiology) -"cYH" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/turf/open/floor/plasteel/bot, -/area/toxins/xenobiology) -"cYI" = ( -/obj/structure/filingcabinet/chestdrawer, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/ai_status_display{ - pixel_y = -32 - }, -/turf/open/floor/plasteel/bot, -/area/toxins/xenobiology) -"cYJ" = ( -/obj/structure/table/reinforced, -/obj/item/clothing/gloves/color/latex, -/obj/item/device/slime_scanner, -/turf/open/floor/plasteel/delivery, -/area/toxins/xenobiology) -"cYK" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/extinguisher_cabinet{ - pixel_x = 26 - }, -/turf/open/floor/plasteel/whitepurple/corner{ - dir = 4 - }, -/area/medical/research{ - name = "Research Division" - }) -"cYL" = ( -/obj/structure/cable/white, -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/checkpoint/science{ - name = "Security Post - Research Division" - }) -"cYM" = ( -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = 0; - pixel_y = -32 - }, -/obj/structure/closet/emcloset, -/turf/open/floor/plasteel/bot, -/area/medical/research{ - name = "Research Division" - }) -"cYN" = ( -/obj/machinery/shower{ - dir = 4; - icon_state = "shower"; - name = "emergency shower" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/warning{ - dir = 10 - }, -/area/medical/research{ - name = "Research Division" - }) -"cYO" = ( -/obj/machinery/light/small, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 5 - }, -/turf/open/floor/plasteel/warning, -/area/medical/research{ - name = "Research Division" - }) -"cYP" = ( -/obj/structure/sink{ - dir = 4; - pixel_x = 11 - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/warning{ - dir = 6 - }, -/area/medical/research{ - name = "Research Division" - }) -"cYQ" = ( -/obj/structure/closet/l3closet/scientist, -/turf/open/floor/plasteel/bot, -/area/medical/research{ - name = "Research Division" - }) -"cYR" = ( -/obj/structure/table/reinforced, -/obj/item/stack/cable_coil/white{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/stack/cable_coil/white, -/obj/item/weapon/stock_parts/scanning_module{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/stock_parts/capacitor, -/obj/item/weapon/stock_parts/manipulator, -/obj/item/weapon/stock_parts/manipulator, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = -26; - pixel_y = 0 - }, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/toxins/lab) -"cYS" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral, -/area/toxins/lab) -"cYT" = ( -/turf/open/floor/plasteel/whitepurple/side{ - dir = 9 - }, -/area/toxins/lab) -"cYU" = ( -/turf/open/floor/plasteel/whitepurple/side{ - dir = 5; - initial_gas_mix = "o2=22;n2=82;TEMP=293.15"; - tag = "icon-whitehall (WEST)" - }, -/area/toxins/lab) -"cYV" = ( -/obj/machinery/computer/rdconsole/core, -/turf/open/floor/plasteel/warning{ - dir = 10 - }, -/area/toxins/lab) -"cYW" = ( -/turf/open/floor/plasteel/warning, -/area/toxins/lab) -"cYX" = ( -/obj/machinery/r_n_d/circuit_imprinter, -/obj/item/weapon/reagent_containers/glass/beaker/sulphuric, -/turf/open/floor/plasteel/warning{ - dir = 6 - }, -/area/toxins/lab) -"cYY" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/orange/corner, -/area/hallway/primary/aft) -"cYZ" = ( -/obj/structure/table/glass, -/obj/item/clothing/glasses/science{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/clothing/glasses/science, -/obj/item/stack/cable_coil/white{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/stack/cable_coil/white, -/obj/item/weapon/grenade/chem_grenade, -/obj/item/weapon/grenade/chem_grenade, -/obj/item/weapon/grenade/chem_grenade, -/obj/item/weapon/grenade/chem_grenade, -/turf/open/floor/plasteel/whiteyellow/corner{ - tag = "icon-whiteyellowcorner (WEST)"; - icon_state = "whiteyellowcorner"; - dir = 8 - }, -/area/medical/chemistry) -"cZa" = ( -/turf/open/floor/plasteel/whiteyellow/corner{ - tag = "icon-whiteyellowcorner (WEST)"; - icon_state = "whiteyellowcorner"; - dir = 8 - }, -/area/medical/chemistry) -"cZb" = ( -/turf/open/floor/plasteel/neutral, -/area/medical/chemistry) -"cZc" = ( -/turf/open/floor/plasteel/whiteyellow/side{ - dir = 9 - }, -/area/medical/chemistry) -"cZd" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 2; - on = 1; - scrub_N2O = 1; - scrub_Toxins = 1 - }, -/turf/open/floor/plasteel/whiteyellow/side{ - dir = 5 - }, -/area/medical/chemistry) -"cZe" = ( -/obj/structure/table/glass, -/obj/machinery/reagentgrinder{ - pixel_y = 5 - }, -/turf/open/floor/plasteel/whiteyellow/corner{ - dir = 4 - }, -/area/medical/chemistry) -"cZf" = ( -/obj/machinery/status_display, -/turf/closed/wall, -/area/medical/chemistry) -"cZg" = ( -/obj/structure/table/glass, -/obj/item/weapon/clipboard, -/obj/item/toy/figure/md, -/obj/structure/sign/poster{ - icon_state = "poster8_legit"; - pixel_y = -32; - tag = "icon-poster8_legit" - }, -/obj/machinery/light/small, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 8 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cZh" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 8 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cZi" = ( -/obj/structure/chair/office/light, -/turf/open/floor/plasteel/whiteblue/side, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cZj" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1 - }, -/obj/machinery/light/small, -/turf/open/floor/plasteel/whiteblue/corner, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cZk" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 1 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cZl" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_Toxins = 0 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cZm" = ( -/obj/structure/chair{ - dir = 4 - }, -/turf/open/floor/plasteel/red/side{ - tag = "icon-red (SOUTHWEST)"; - icon_state = "red"; - dir = 10 - }, -/area/security/checkpoint/medical) -"cZn" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/turf/open/floor/plasteel/red/side, -/area/security/checkpoint/medical) -"cZo" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/red/side{ - tag = "icon-red (SOUTHEAST)"; - icon_state = "red"; - dir = 6 - }, -/area/security/checkpoint/medical) -"cZp" = ( -/obj/structure/cable/white{ - tag = "icon-0-2"; - icon_state = "0-2" - }, -/obj/structure/cable/white, -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/checkpoint/medical) -"cZq" = ( -/obj/machinery/sleeper{ - icon_state = "sleeper-open"; - dir = 4 - }, -/turf/open/floor/plasteel/warning/end{ - tag = "icon-plasteel_warn_end (EAST)"; - icon_state = "plasteel_warn_end"; - dir = 4 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cZr" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 8 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cZs" = ( -/turf/open/floor/plasteel/whiteblue/side, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cZt" = ( -/obj/machinery/sleeper{ - icon_state = "sleeper-open"; - dir = 8 - }, -/turf/open/floor/plasteel/warning/end{ - tag = "icon-plasteel_warn_end (WEST)"; - icon_state = "plasteel_warn_end"; - dir = 8 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cZu" = ( -/obj/structure/table/wood, -/obj/item/weapon/storage/pill_bottle/dice, -/obj/structure/sign/poster{ - icon_state = "poster4_legit"; - pixel_x = -32; - pixel_y = 0; - tag = "icon-poster4_legit" - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 8 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cZv" = ( -/obj/structure/chair/stool, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral/corner{ - dir = 8 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cZw" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral/side, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cZx" = ( -/turf/open/floor/plasteel/neutral/corner, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cZy" = ( -/obj/structure/table/wood, -/obj/item/weapon/paper_bin, -/obj/item/weapon/pen, -/turf/open/floor/plasteel/neutral/corner, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cZz" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/rack, -/obj/item/clothing/neck/stethoscope, -/obj/effect/spawner/lootdrop/maintenance, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral/side{ - dir = 8 - }, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"cZA" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"cZB" = ( -/obj/structure/sign/examroom{ - pixel_x = -32 - }, -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1 - }, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 1 - }, -/area/medical/medbay3{ - name = "Abandoned Medbay" - }) -"cZC" = ( -/turf/open/floor/plasteel/blue, -/area/medical/medbay3{ - name = "Abandoned Medbay" - }) -"cZD" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/neutral, -/area/medical/medbay3{ - name = "Abandoned Medbay" - }) -"cZE" = ( -/turf/open/floor/plasteel/neutral, -/area/medical/medbay3{ - name = "Abandoned Medbay" - }) -"cZF" = ( -/obj/item/weapon/crowbar/red, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/blue, -/area/medical/medbay3{ - name = "Abandoned Medbay" - }) -"cZG" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/medical/medbay3{ - name = "Abandoned Medbay" - }) -"cZH" = ( -/obj/structure/sign/bluecross_2, -/turf/closed/wall, -/area/medical/medbay3{ - name = "Abandoned Medbay" - }) -"cZI" = ( -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Maintenance Hatch"; - req_access_txt = "12" - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/barricade/wooden, -/turf/open/floor/plasteel/warning/side, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cZJ" = ( -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Maintenance Hatch"; - req_access_txt = "12" - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/barricade/wooden, -/turf/open/floor/plasteel/warning/side, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cZK" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHEAST)"; - icon_state = "intact"; - dir = 5 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cZL" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 1 - }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cZM" = ( -/obj/structure/closet/crate, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 3; - name = "3maintenance loot spawner" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 1 - }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cZN" = ( -/obj/structure/girder, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cZO" = ( -/obj/structure/rack, -/obj/item/weapon/crowbar/red, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 2; - name = "2maintenance loot spawner" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cZP" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 1 - }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cZQ" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"cZR" = ( -/obj/structure/sign/xenobio, -/turf/closed/wall/r_wall, -/area/toxins/xenobiology) -"cZS" = ( -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor/preopen{ - id = "rdxeno"; - name = "Xenobiology Containment Door" - }, -/turf/open/floor/plating, -/area/toxins/xenobiology) -"cZT" = ( -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/door/poddoor/preopen{ - id = "rdxeno"; - name = "Xenobiology Containment Door" - }, -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/research{ - name = "Xenobiology Lab"; - req_access_txt = "47" - }, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/toxins/xenobiology) -"cZU" = ( -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor/preopen{ - id = "rdxeno"; - name = "Xenobiology Containment Door" - }, -/turf/open/floor/plating, -/area/toxins/xenobiology) -"cZV" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/door/firedoor, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (EAST)"; - icon_state = "plasteel_warn_side"; - dir = 4 - }, -/area/medical/research{ - name = "Research Division" - }) -"cZW" = ( -/obj/machinery/door/firedoor, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (EAST)"; - icon_state = "plasteel_warn_side"; - dir = 4 - }, -/area/medical/research{ - name = "Research Division" - }) -"cZX" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/door/firedoor, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (EAST)"; - icon_state = "plasteel_warn_side"; - dir = 4 - }, -/area/medical/research{ - name = "Research Division" - }) -"cZY" = ( -/obj/structure/sign/nanotrasen, -/turf/closed/wall, -/area/medical/research{ - name = "Research Division" - }) -"cZZ" = ( -/obj/structure/table, -/obj/item/weapon/storage/box/bodybags{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/storage/box/gloves, -/turf/open/floor/plasteel/delivery, -/area/medical/research{ - name = "Research Division" - }) -"daa" = ( -/obj/structure/table, -/obj/effect/decal/cleanable/dirt, -/obj/item/weapon/crowbar, -/obj/item/weapon/wrench, -/obj/item/clothing/mask/gas, -/turf/open/floor/plasteel/bot, -/area/medical/research{ - name = "Research Division" - }) -"dab" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1 - }, -/obj/item/weapon/storage/pod{ - pixel_x = 32 - }, -/turf/open/floor/plasteel/delivery, -/area/medical/research{ - name = "Research Division" - }) -"dac" = ( -/turf/closed/wall, -/area/medical/research{ - name = "Research Division" - }) -"dad" = ( -/obj/structure/sign/securearea, -/turf/closed/wall, -/area/medical/research{ - name = "Research Division" - }) -"dae" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/folder/white, -/obj/item/weapon/stock_parts/cell/high, -/obj/item/weapon/stock_parts/console_screen, -/obj/item/weapon/stock_parts/console_screen, -/obj/item/weapon/stock_parts/console_screen, -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/machinery/power/apc{ - dir = 8; - name = "Research and Development Lab APC"; - pixel_x = -26; - pixel_y = 3 - }, -/turf/open/floor/plasteel/warning{ - dir = 6 - }, -/area/toxins/lab) -"daf" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral, -/area/toxins/lab) -"dag" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/whitepurple/side{ - dir = 8 - }, -/area/toxins/lab) -"dah" = ( -/obj/machinery/holopad{ - pixel_x = -16 - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/turf/open/floor/plasteel/whitepurple/side{ - dir = 4 - }, -/area/toxins/lab) -"dai" = ( -/obj/machinery/requests_console{ - department = "Research Lab"; - departmentType = 0; - name = "Research RC"; - pixel_x = 32; - pixel_y = 0 - }, -/obj/machinery/camera{ - c_tag = "Science - Research and Development"; - dir = 8; - name = "science camera"; - network = list("SS13","RD") - }, -/turf/open/floor/plasteel/whitepurple/corner, -/area/toxins/lab) -"daj" = ( -/obj/structure/sign/chemistry, -/turf/closed/wall, -/area/medical/chemistry) -"dak" = ( -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/obj/machinery/button/door{ - id = "chemistbot"; - name = "Chemistry Shutter Control"; - pixel_x = -26; - pixel_y = -7; - req_access_txt = "33" - }, -/obj/machinery/button/door{ - id = "chemisttop"; - name = "Chemistry Shutter Control"; - pixel_x = -26; - pixel_y = 7; - req_access_txt = "33" - }, -/turf/open/floor/plasteel/whiteyellow/corner{ - tag = "icon-whiteyellowcorner (WEST)"; - icon_state = "whiteyellowcorner"; - dir = 8 - }, -/area/medical/chemistry) -"dal" = ( -/turf/open/floor/plasteel/whiteyellow/side{ - dir = 8 - }, -/area/medical/chemistry) -"dam" = ( -/obj/machinery/holopad{ - pixel_x = -16 - }, -/obj/effect/landmark/start{ - name = "Chemist" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/whiteyellow/side{ - dir = 4 - }, -/area/medical/chemistry) -"dan" = ( -/obj/structure/table/glass, -/obj/item/stack/sheet/mineral/plasma, -/obj/item/stack/sheet/mineral/plasma, -/obj/item/stack/sheet/mineral/plasma, -/obj/item/weapon/reagent_containers/glass/bottle/charcoal{ - pixel_x = 6 - }, -/obj/item/weapon/reagent_containers/glass/bottle/epinephrine, -/obj/item/weapon/reagent_containers/dropper, -/obj/machinery/firealarm{ - dir = 4; - icon_state = "fire0"; - pixel_x = 24; - pixel_y = 0; - tag = "icon-fire0 (EAST)" - }, -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/obj/machinery/camera{ - c_tag = "Medbay - Chemistry"; - dir = 8; - name = "medbay camera"; - network = list("SS13","Medbay") - }, -/turf/open/floor/plasteel/whiteyellow/corner, -/area/medical/chemistry) -"dao" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dap" = ( -/obj/structure/table/reinforced, -/obj/machinery/door/firedoor, -/obj/item/weapon/folder/white, -/obj/item/weapon/reagent_containers/spray/cleaner, -/turf/open/floor/plasteel/delivery, -/area/medical/medbay{ - name = "Medbay Central" - }) -"daq" = ( -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/whiteblue, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dar" = ( -/obj/structure/sign/nanotrasen, -/turf/closed/wall, -/area/security/checkpoint/medical) -"das" = ( -/obj/machinery/door/firedoor, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/machinery/door/airlock/glass_security{ - id_tag = "meddoor"; - name = "Medical Cell"; - req_access_txt = "63" - }, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/security/checkpoint/medical) -"dat" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/door/firedoor, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (EAST)"; - icon_state = "plasteel_warn_side"; - dir = 4 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dau" = ( -/obj/machinery/door/firedoor, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (EAST)"; - icon_state = "plasteel_warn_side"; - dir = 4 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dav" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/door/firedoor, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (EAST)"; - icon_state = "plasteel_warn_side"; - dir = 4 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"daw" = ( -/obj/structure/sign/examroom, -/turf/closed/wall, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dax" = ( -/obj/machinery/door/firedoor, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"day" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/tinted/fulltile, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/medical/medbay{ - name = "Medbay Central" - }) -"daz" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/medical{ - name = "Break Room"; - req_access_txt = "5" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"daA" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/tinted/fulltile, -/turf/open/floor/plating, -/area/medical/medbay{ - name = "Medbay Central" - }) -"daB" = ( -/obj/item/weapon/firstaid_arm_assembly, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral/side{ - dir = 8 - }, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"daC" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"daD" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Maintenance Hatch"; - req_access_txt = "12" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/barricade/wooden, -/turf/open/floor/plasteel/warning/side, -/area/medical/medbay3{ - name = "Abandoned Medbay" - }) -"daE" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 1 - }, -/area/medical/medbay3{ - name = "Abandoned Medbay" - }) -"daF" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/medical/medbay3{ - name = "Abandoned Medbay" - }) -"daG" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/blue, -/area/medical/medbay3{ - name = "Abandoned Medbay" - }) -"daH" = ( -/obj/item/weapon/wrench, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/obj/effect/landmark{ - name = "xeno_spawn"; - pixel_x = -1 - }, -/turf/open/floor/plating, -/area/medical/medbay3{ - name = "Abandoned Medbay" - }) -"daI" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 4 - }, -/area/medical/medbay3{ - name = "Abandoned Medbay" - }) -"daJ" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Maintenance Hatch"; - req_access_txt = "12" - }, -/obj/structure/barricade/wooden, -/turf/open/floor/plasteel/warning/side, -/area/medical/medbay3{ - name = "Abandoned Medbay" - }) -"daK" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"daL" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"daM" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"daN" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/obj/effect/decal/cleanable/cobweb, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"daO" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"daP" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/black, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"daQ" = ( -/obj/structure/table/wood, -/obj/machinery/cell_charger, -/turf/open/floor/plating, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"daR" = ( -/obj/structure/table/wood, -/obj/structure/cable/white{ - tag = "icon-0-2"; - icon_state = "0-2" - }, -/obj/item/clothing/gloves/color/fyellow, -/obj/item/weapon/storage/toolbox/electrical, -/obj/machinery/power/apc{ - cell_type = 5000; - dir = 1; - name = "Abandoned Gambling Den APC"; - pixel_x = 0; - pixel_y = 25 - }, -/turf/open/floor/plating, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"daS" = ( -/obj/structure/table/wood, -/obj/machinery/light{ - dir = 1 - }, -/obj/item/stack/rods{ - amount = 23 - }, -/obj/item/stack/cable_coil/white{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/stack/cable_coil/white, -/turf/open/floor/plating, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"daT" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/turf/open/floor/plating, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"daU" = ( -/obj/structure/sign/poster{ - pixel_y = 32 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/black, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"daV" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plating, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"daW" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"daX" = ( -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/plating, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"daY" = ( -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHEAST)"; - icon_state = "intact"; - dir = 5 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"daZ" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"dba" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/neutral/side, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"dbb" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/neutral/side, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"dbc" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/neutral/side, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"dbd" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"dbe" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHWEST)"; - icon_state = "intact"; - dir = 10 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"dbf" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"dbg" = ( -/obj/machinery/light/small, -/obj/machinery/camera{ - c_tag = "Xenobiology - Cell 4"; - dir = 1; - name = "xenobiology camera"; - network = list("SS13","xeno","RD") - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/toxins/xenobiology) -"dbh" = ( -/obj/machinery/light/small, -/obj/machinery/camera{ - c_tag = "Xenobiology - Cell 5"; - dir = 1; - name = "xenobiology camera"; - network = list("SS13","xeno","RD") - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/toxins/xenobiology) -"dbi" = ( -/obj/machinery/light/small, -/obj/machinery/camera{ - c_tag = "Xenobiology - Cell 6"; - dir = 1; - name = "xenobiology camera"; - network = list("SS13","xeno","RD") - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/toxins/xenobiology) -"dbj" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1 - }, -/turf/open/floor/plasteel/whitepurple/corner{ - dir = 1 - }, -/area/medical/research{ - name = "Research Division" - }) -"dbk" = ( -/turf/open/floor/plasteel/whitepurple/corner{ - dir = 1 - }, -/area/medical/research{ - name = "Research Division" - }) -"dbl" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHEAST)"; - icon_state = "intact"; - dir = 6 - }, -/turf/open/floor/plasteel/whitepurple/corner{ - dir = 1 - }, -/area/medical/research{ - name = "Research Division" - }) -"dbm" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plasteel/whitepurple/corner{ - dir = 1 - }, -/area/medical/research{ - name = "Research Division" - }) -"dbn" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_y = 26 - }, -/obj/machinery/camera{ - c_tag = "Science - Port"; - dir = 2; - name = "science camera"; - network = list("SS13","RD") - }, -/turf/open/floor/plasteel/whitepurple/corner{ - dir = 1 - }, -/area/medical/research{ - name = "Research Division" - }) -"dbo" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/whitepurple/corner{ - dir = 1 - }, -/area/medical/research{ - name = "Research Division" - }) -"dbp" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/open/floor/plasteel/whitepurple/corner{ - dir = 1 - }, -/area/medical/research{ - name = "Research Division" - }) -"dbq" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/medical/research{ - name = "Research Division" - }) -"dbr" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/whitepurple/corner{ - dir = 4 - }, -/area/medical/research{ - name = "Research Division" - }) -"dbs" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/light{ - dir = 1 - }, -/obj/machinery/door/firedoor, -/turf/open/floor/plasteel/warning/side, -/area/medical/research{ - name = "Research Division" - }) -"dbt" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/whitepurple/side{ - tag = "icon-whitepurple (NORTH)"; - icon_state = "whitepurple"; - dir = 1 - }, -/area/medical/research{ - name = "Research Division" - }) -"dbu" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/camera{ - c_tag = "Science - Center"; - dir = 2; - name = "science camera"; - network = list("SS13","RD") - }, -/turf/open/floor/plasteel/whitepurple/corner{ - dir = 1 - }, -/area/medical/research{ - name = "Research Division" - }) -"dbv" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/whitepurple/corner{ - dir = 1 - }, -/area/medical/research{ - name = "Research Division" - }) -"dbw" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/light{ - dir = 1 - }, -/turf/open/floor/plasteel/whitepurple/side{ - tag = "icon-whitepurple (NORTH)"; - icon_state = "whitepurple"; - dir = 1 - }, -/area/medical/research{ - name = "Research Division" - }) -"dbx" = ( -/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/whitepurple/corner{ - dir = 4 - }, -/area/medical/research{ - name = "Research Division" - }) -"dby" = ( -/obj/structure/table/reinforced, -/obj/machinery/door/firedoor, -/obj/item/weapon/folder, -/obj/item/weapon/pen, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "rdrnd"; - name = "Research and Development Shutters" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/door/window/southleft{ - dir = 4; - name = "Research Lab Desk"; - req_access_txt = "7" - }, -/turf/open/floor/plasteel/delivery, -/area/toxins/lab) -"dbz" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/whitepurple/corner{ - dir = 8 - }, -/area/toxins/lab) -"dbA" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHWEST)"; - icon_state = "intact"; - dir = 9 - }, -/turf/open/floor/plasteel/neutral, -/area/toxins/lab) -"dbB" = ( -/obj/structure/table, -/obj/item/weapon/clipboard, -/obj/item/toy/figure/scientist, -/turf/open/floor/plasteel/whitepurple/side{ - dir = 10 - }, -/area/toxins/lab) -"dbC" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/table, -/obj/item/weapon/disk/tech_disk{ - pixel_x = -6 - }, -/obj/item/weapon/disk/tech_disk{ - pixel_x = 6 - }, -/obj/item/weapon/disk/tech_disk{ - pixel_y = 6 - }, -/turf/open/floor/plasteel/whitepurple/side{ - dir = 6; - initial_gas_mix = "o2=22;n2=82;TEMP=293.15"; - tag = "icon-whitepurple (SOUTHEAST)" - }, -/area/toxins/lab) -"dbD" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/neutral, -/area/toxins/lab) -"dbE" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1 - }, -/turf/open/floor/plasteel/whitepurple/corner, -/area/toxins/lab) -"dbF" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "rndlab2"; - name = "Secondary Research and Development Shutter" - }, -/turf/open/floor/plating, -/area/toxins/lab) -"dbG" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/paper_bin, -/obj/item/weapon/pen, -/turf/open/floor/plasteel/purple, -/area/hallway/primary/aft) -"dbH" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/junction{ - dir = 1; - icon_state = "pipe-j1" - }, -/turf/open/floor/plasteel/orange/corner, -/area/hallway/primary/aft) -"dbI" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/paper_bin, -/obj/item/weapon/pen, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/orange, -/area/hallway/primary/aft) -"dbJ" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "chemistbot"; - name = "Chemisty Side Shutters" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plating, -/area/medical/chemistry) -"dbK" = ( -/obj/machinery/chem_dispenser, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/medical/chemistry) -"dbL" = ( -/obj/machinery/disposal/bin, -/obj/structure/disposalpipe/trunk{ - tag = "icon-pipe-t (WEST)"; - icon_state = "pipe-t"; - dir = 8 - }, -/turf/open/floor/plasteel/warning{ - dir = 5 - }, -/area/medical/chemistry) -"dbM" = ( -/turf/open/floor/plasteel/whiteyellow/side{ - dir = 10 - }, -/area/medical/chemistry) -"dbN" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHEAST)"; - icon_state = "intact"; - dir = 5 - }, -/turf/open/floor/plasteel/whiteyellow/side{ - dir = 6 - }, -/area/medical/chemistry) -"dbO" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/medical/chemistry) -"dbP" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/whiteyellow/corner, -/area/medical/chemistry) -"dbQ" = ( -/obj/structure/table/reinforced, -/obj/machinery/door/firedoor, -/obj/machinery/door/window/southleft{ - dir = 8; - name = "Chemistry Desk"; - req_access_txt = "5; 33" - }, -/obj/machinery/door/window/eastright{ - name = "Chemistry Desk" - }, -/obj/item/weapon/folder/white, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/delivery, -/area/medical/chemistry) -"dbR" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/whiteyellow/corner{ - tag = "icon-whiteyellowcorner (NORTH)"; - icon_state = "whiteyellowcorner"; - dir = 1 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dbS" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 1 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dbT" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 1 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dbU" = ( -/obj/structure/extinguisher_cabinet{ - pixel_x = -26; - pixel_y = 32 - }, -/obj/machinery/atmospherics/pipe/manifold4w/scrubbers/hidden, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 1 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dbV" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/whiteblue, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dbW" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 4 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dbX" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/door/firedoor, -/turf/open/floor/plasteel/warning/side, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dbY" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 4 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dbZ" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 4 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dca" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plasteel/whiteblue/side{ - dir = 1 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dcb" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/camera{ - c_tag = "Medbay - Center"; - dir = 2; - name = "medbay camera" - }, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 1 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dcc" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 1 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dcd" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dce" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 4 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dcf" = ( -/obj/structure/sign/poster{ - icon_state = "poster22_legit"; - pixel_y = 32; - tag = "icon-poster22_legit" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 4 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dcg" = ( -/obj/machinery/atmospherics/pipe/manifold4w/scrubbers/hidden, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 4 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dch" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dci" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"dcj" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"dck" = ( -/obj/machinery/shower{ - dir = 4; - icon_state = "shower"; - name = "emergency shower" - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 8 - }, -/area/medical/medbay3{ - name = "Abandoned Medbay" - }) -"dcl" = ( -/turf/open/floor/plating, -/area/medical/medbay3{ - name = "Abandoned Medbay" - }) -"dcm" = ( -/obj/machinery/iv_drip{ - density = 0 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/medical/medbay3{ - name = "Abandoned Medbay" - }) -"dcn" = ( -/obj/structure/table/optable, -/obj/effect/decal/cleanable/blood/old, -/obj/effect/decal/cleanable/dirt, -/obj/item/weapon/surgical_drapes, -/turf/open/floor/plasteel/blue, -/area/medical/medbay3{ - name = "Abandoned Medbay" - }) -"dco" = ( -/obj/structure/frame/computer, -/obj/item/weapon/circuitboard/computer/operating, -/turf/open/floor/plasteel/neutral, -/area/medical/medbay3{ - name = "Abandoned Medbay" - }) -"dcp" = ( -/obj/structure/chair{ - dir = 8 - }, -/obj/machinery/vending/wallmed{ - name = "Emergency NanoMed"; - pixel_x = 26; - pixel_y = 0; - req_access_txt = "0"; - use_power = 0 - }, -/turf/open/floor/plasteel/whiteblue/corner, -/area/medical/medbay3{ - name = "Abandoned Medbay" - }) -"dcq" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"dcr" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/tinted/fulltile, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"dcs" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"dct" = ( -/obj/machinery/vending/cigarette, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"dcu" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHEAST)"; - icon_state = "intact"; - dir = 6 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"dcv" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plating, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"dcw" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"dcx" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plating, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"dcy" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"dcz" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"dcA" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/mob/living/simple_animal/cockroach, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"dcB" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"dcC" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHWEST)"; - icon_state = "intact"; - dir = 10 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"dcD" = ( -/obj/structure/sign/poster{ - pixel_x = 32 - }, -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"dcE" = ( -/turf/closed/wall, -/area/medical/research{ - name = "Abandoned Research Lab" - }) -"dcF" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/structure/cable/white, -/obj/structure/barricade/wooden, -/turf/open/floor/plating, -/area/medical/research{ - name = "Abandoned Research Lab" - }) -"dcG" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/structure/barricade/wooden, -/turf/open/floor/plating, -/area/medical/research{ - name = "Abandoned Research Lab" - }) -"dcH" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"dcI" = ( -/obj/structure/sign/nanotrasen, -/turf/closed/wall/r_wall, -/area/toxins/xenobiology) -"dcJ" = ( -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/turf/open/floor/plasteel/whitepurple/side{ - dir = 8 - }, -/area/medical/research{ - name = "Research Division" - }) -"dcK" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral, -/area/medical/research{ - name = "Research Division" - }) -"dcL" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/turf/open/floor/plasteel/purple, -/area/medical/research{ - name = "Research Division" - }) -"dcM" = ( -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/neutral, -/area/medical/research{ - name = "Research Division" - }) -"dcN" = ( -/obj/item/device/radio/beacon, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/purple, -/area/medical/research{ - name = "Research Division" - }) -"dcO" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/medical/research{ - name = "Research Division" - }) -"dcP" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/door/firedoor, -/turf/open/floor/plasteel/warning/side, -/area/medical/research{ - name = "Research Division" - }) -"dcQ" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 2; - on = 1; - scrub_N2O = 1; - scrub_Toxins = 1 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/purple, -/area/medical/research{ - name = "Research Division" - }) -"dcR" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/purple, -/area/medical/research{ - name = "Research Division" - }) -"dcS" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/purple, -/area/medical/research{ - name = "Research Division" - }) -"dcT" = ( -/turf/open/floor/plasteel/whitepurple/side{ - dir = 4 - }, -/area/medical/research{ - name = "Research Division" - }) -"dcU" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/research{ - name = "Research and Development Lab"; - req_access_txt = "0"; - req_one_access_txt = "7;29" - }, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "rdrnd"; - name = "Research and Development Shutters" - }, -/turf/open/floor/plasteel/warning/side, -/area/toxins/lab) -"dcV" = ( -/turf/open/floor/plasteel/whitepurple/corner{ - dir = 8 - }, -/area/toxins/lab) -"dcW" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/effect/landmark/start{ - name = "Scientist" - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 2; - on = 1; - scrub_N2O = 1; - scrub_Toxins = 1 - }, -/turf/open/floor/plasteel/neutral, -/area/toxins/lab) -"dcX" = ( -/obj/structure/chair/office/light{ - tag = "icon-officechair_white (EAST)"; - icon_state = "officechair_white"; - dir = 4 - }, -/turf/open/floor/plasteel/whitepurple/corner, -/area/toxins/lab) -"dcY" = ( -/obj/structure/table/reinforced, -/obj/machinery/door/firedoor, -/obj/item/weapon/folder, -/obj/item/weapon/pen, -/obj/machinery/door/window/southleft{ - dir = 8; - name = "Research Lab Desk"; - req_access_txt = "7" - }, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "rndlab2"; - name = "Secondary Research and Development Shutter" - }, -/turf/open/floor/plasteel/delivery, -/area/toxins/lab) -"dcZ" = ( -/turf/open/floor/plasteel/purple, -/area/hallway/primary/aft) -"dda" = ( -/turf/open/floor/plasteel/orange, -/area/hallway/primary/aft) -"ddb" = ( -/obj/structure/table/reinforced, -/obj/machinery/door/firedoor, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "chemistbot"; - name = "Chemisty Side Shutters" - }, -/obj/machinery/door/window/southleft{ - dir = 4; - name = "Chemistry Desk"; - req_access_txt = "5; 33" - }, -/obj/item/weapon/folder/white, -/obj/item/weapon/pen, -/turf/open/floor/plasteel/delivery, -/area/medical/chemistry) -"ddc" = ( -/obj/structure/chair/office/light{ - dir = 8 - }, -/obj/effect/landmark/start{ - name = "Chemist" - }, -/turf/open/floor/plasteel/bot, -/area/medical/chemistry) -"ddd" = ( -/obj/machinery/requests_console{ - department = "Chemistry Lab"; - departmentType = 0; - name = "Chemistry RC"; - pixel_x = 0; - pixel_y = -64 - }, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/medical/chemistry) -"dde" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 2; - on = 1 - }, -/turf/open/floor/plasteel/neutral, -/area/medical/chemistry) -"ddf" = ( -/turf/open/floor/plasteel/whiteyellow/corner, -/area/medical/chemistry) -"ddg" = ( -/obj/machinery/smartfridge/chemistry, -/turf/closed/wall, -/area/medical/chemistry) -"ddh" = ( -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/turf/open/floor/plasteel/whiteyellow/side{ - dir = 8 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"ddi" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/blue, -/area/medical/medbay{ - name = "Medbay Central" - }) -"ddj" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/neutral, -/area/medical/medbay{ - name = "Medbay Central" - }) -"ddk" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/blue, -/area/medical/medbay{ - name = "Medbay Central" - }) -"ddl" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/whiteblue, -/area/medical/medbay{ - name = "Medbay Central" - }) -"ddm" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/whiteblue, -/area/medical/medbay{ - name = "Medbay Central" - }) -"ddn" = ( -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/item/device/radio/beacon, -/obj/effect/landmark{ - name = "lightsout" - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/whiteblue, -/area/medical/medbay{ - name = "Medbay Central" - }) -"ddo" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/whiteblue, -/area/medical/medbay{ - name = "Medbay Central" - }) -"ddp" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/door/firedoor, -/turf/open/floor/plasteel/warning/side, -/area/medical/medbay{ - name = "Medbay Central" - }) -"ddq" = ( -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/blue, -/area/medical/medbay{ - name = "Medbay Central" - }) -"ddr" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/neutral, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dds" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral, -/area/medical/medbay{ - name = "Medbay Central" - }) -"ddt" = ( -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/blue, -/area/medical/medbay{ - name = "Medbay Central" - }) -"ddu" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral, -/area/medical/medbay{ - name = "Medbay Central" - }) -"ddv" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/turf/open/floor/plasteel/blue, -/area/medical/medbay{ - name = "Medbay Central" - }) -"ddw" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/blue, -/area/medical/medbay{ - name = "Medbay Central" - }) -"ddx" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/blue, -/area/medical/medbay{ - name = "Medbay Central" - }) -"ddy" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/whiteblue/side{ - dir = 4 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"ddz" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Medbay Maintenance"; - req_access_txt = "5" - }, -/turf/open/floor/plasteel/warning/side, -/area/medical/medbay{ - name = "Medbay Central" - }) -"ddA" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/delivery, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"ddB" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"ddC" = ( -/obj/structure/sink{ - dir = 8; - icon_state = "sink"; - pixel_x = -12 - }, -/obj/effect/decal/cleanable/dirt, -/obj/structure/mirror{ - desc = "Mirror mirror on the wall, who is the most robust of them all?"; - pixel_x = -28 - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plating, -/area/medical/medbay3{ - name = "Abandoned Medbay" - }) -"ddD" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 8 - }, -/area/medical/medbay3{ - name = "Abandoned Medbay" - }) -"ddE" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/whiteblue/side, -/area/medical/medbay3{ - name = "Abandoned Medbay" - }) -"ddF" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/whiteblue/corner, -/area/medical/medbay3{ - name = "Abandoned Medbay" - }) -"ddG" = ( -/obj/structure/chair{ - dir = 8 - }, -/obj/machinery/light_switch{ - pixel_x = 26 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/whiteblue/corner, -/area/medical/medbay3{ - name = "Abandoned Medbay" - }) -"ddH" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral/side{ - dir = 8 - }, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"ddI" = ( -/obj/effect/decal/cleanable/cobweb, -/obj/structure/dresser, -/turf/open/floor/wood, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"ddJ" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/structure/table/wood, -/obj/item/clothing/suit/toggle/owlwings, -/obj/item/clothing/under/owl, -/obj/item/clothing/mask/gas/owl_mask, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"ddK" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/table/wood, -/obj/item/weapon/storage/secure/briefcase, -/obj/item/weapon/restraints/handcuffs, -/obj/item/weapon/grenade/smokebomb, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"ddL" = ( -/obj/machinery/vending/assist, -/obj/machinery/newscaster{ - pixel_x = -32 - }, -/obj/machinery/light/small{ - dir = 8 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"ddM" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"ddN" = ( -/obj/structure/chair/stool, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"ddO" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/wood, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"ddP" = ( -/obj/structure/chair/wood/normal, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/wood{ - icon_state = "wood-broken7" - }, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"ddQ" = ( -/obj/structure/chair/wood/normal, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"ddR" = ( -/obj/structure/chair/wood/normal, -/turf/open/floor/wood, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"ddS" = ( -/obj/structure/table/wood/poker, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/item/weapon/storage/wallet/random, -/turf/open/floor/wood, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"ddT" = ( -/obj/structure/table/wood/poker, -/obj/item/weapon/storage/briefcase, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"ddU" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/obj/effect/landmark{ - name = "xeno_spawn"; - pixel_x = -1 - }, -/turf/open/floor/plating, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"ddV" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/black, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"ddW" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/turf/open/floor/plating, -/area/medical/research{ - name = "Abandoned Research Lab" - }) -"ddX" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/medical/research{ - name = "Abandoned Research Lab" - }) -"ddY" = ( -/obj/structure/table/reinforced, -/obj/machinery/light/small{ - dir = 1 - }, -/obj/item/weapon/clipboard, -/obj/item/weapon/reagent_containers/glass/beaker/sulphuric, -/obj/item/weapon/reagent_containers/dropper, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/delivery, -/area/medical/research{ - name = "Abandoned Research Lab" - }) -"ddZ" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/storage/toolbox/emergency{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/storage/toolbox/emergency, -/obj/item/weapon/wrench, -/obj/machinery/status_display{ - pixel_y = 32 - }, -/turf/open/floor/plasteel/delivery, -/area/medical/research{ - name = "Abandoned Research Lab" - }) -"dea" = ( -/obj/structure/table/reinforced, -/obj/machinery/cell_charger, -/turf/open/floor/plasteel/delivery, -/area/medical/research{ - name = "Abandoned Research Lab" - }) -"deb" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/delivery, -/area/medical/research{ - name = "Abandoned Research Lab" - }) -"dec" = ( -/obj/machinery/light/small{ - dir = 1 - }, -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/medical/research{ - name = "Abandoned Research Lab" - }) -"ded" = ( -/obj/structure/table, -/obj/item/weapon/folder/white, -/obj/item/weapon/pen, -/turf/open/floor/plating, -/area/medical/research{ - name = "Abandoned Research Lab" - }) -"dee" = ( -/obj/structure/table, -/obj/item/device/flashlight/lamp, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/delivery, -/area/medical/research{ - name = "Abandoned Research Lab" - }) -"def" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral/side{ - dir = 8 - }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"deg" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHEAST)"; - icon_state = "intact"; - dir = 5 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"deh" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"dei" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHWEST)"; - icon_state = "intact"; - dir = 10 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 5 - }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"dej" = ( -/turf/closed/wall/r_wall, -/area/toxins/explab) -"dek" = ( -/obj/structure/table/reinforced, -/obj/structure/sign/poster{ - tag = "icon-poster7_legit"; - icon_state = "poster7_legit"; - pixel_x = -32; - pixel_y = 0 - }, -/obj/item/weapon/storage/toolbox/mechanical, -/obj/item/device/flashlight, -/turf/open/floor/plasteel/bot, -/area/toxins/explab) -"del" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible, -/turf/open/floor/plasteel/warning{ - dir = 10 - }, -/area/toxins/explab) -"dem" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible, -/obj/machinery/light{ - dir = 1 - }, -/obj/structure/sign/nosmoking_2{ - pixel_y = 32 - }, -/turf/open/floor/plasteel/warning, -/area/toxins/explab) -"den" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible, -/turf/open/floor/plasteel/warning{ - dir = 6 - }, -/area/toxins/explab) -"deo" = ( -/obj/structure/cable/white{ - d2 = 2; - icon_state = "0-2"; - tag = "icon-0-2" - }, -/obj/machinery/power/apc{ - cell_type = 5000; - dir = 1; - name = "Experimentation Lab APC"; - pixel_x = 0; - pixel_y = 25 - }, -/obj/machinery/camera{ - c_tag = "Science - Experimentation Lab"; - dir = 2; - name = "science camera"; - network = list("SS13","RD") - }, -/turf/open/floor/plasteel/delivery, -/area/toxins/explab) -"dep" = ( -/obj/structure/filingcabinet/chestdrawer, -/obj/machinery/status_display{ - pixel_y = 32 - }, -/turf/open/floor/plasteel/bot, -/area/toxins/explab) -"deq" = ( -/obj/structure/closet/l3closet/scientist, -/turf/open/floor/plasteel/bot, -/area/toxins/explab) -"der" = ( -/obj/structure/closet/bombcloset, -/obj/machinery/light{ - dir = 1 - }, -/turf/open/floor/plasteel/bot, -/area/toxins/explab) -"des" = ( -/obj/structure/table/reinforced, -/obj/item/clothing/suit/radiation, -/obj/item/clothing/head/radiation, -/turf/open/floor/plasteel/bot, -/area/toxins/explab) -"det" = ( -/turf/closed/wall, -/area/toxins/explab) -"deu" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHEAST)"; - icon_state = "intact"; - dir = 6 - }, -/turf/open/floor/plasteel/whitepurple/corner{ - dir = 8 - }, -/area/medical/research{ - name = "Research Division" - }) -"dev" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/whitepurple/side, -/area/medical/research{ - name = "Research Division" - }) -"dew" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/whitepurple/corner, -/area/medical/research{ - name = "Research Division" - }) -"dex" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/whitepurple/corner, -/area/medical/research{ - name = "Research Division" - }) -"dey" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/whitepurple/side, -/area/medical/research{ - name = "Research Division" - }) -"dez" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/whitepurple/corner{ - dir = 8 - }, -/area/medical/research{ - name = "Research Division" - }) -"deA" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/open/floor/plasteel/whitepurple/corner{ - dir = 8 - }, -/area/medical/research{ - name = "Research Division" - }) -"deB" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/door/firedoor, -/turf/open/floor/plasteel/warning/side, -/area/medical/research{ - name = "Research Division" - }) -"deC" = ( -/obj/machinery/atmospherics/pipe/manifold4w/scrubbers/hidden, -/turf/open/floor/plasteel/whitepurple/corner{ - dir = 8 - }, -/area/medical/research{ - name = "Research Division" - }) -"deD" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/purple, -/area/medical/research{ - name = "Research Division" - }) -"deE" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/whitepurple/corner, -/area/medical/research{ - name = "Research Division" - }) -"deF" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/whitepurple/corner, -/area/medical/research{ - name = "Research Division" - }) -"deG" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "rdrnd"; - name = "Research and Development Shutters" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/toxins/lab) -"deH" = ( -/obj/structure/table/reinforced, -/obj/machinery/light, -/obj/machinery/cell_charger, -/obj/machinery/firealarm{ - dir = 1; - pixel_x = 0; - pixel_y = -26 - }, -/obj/machinery/light_switch{ - pixel_x = -26; - pixel_y = -26 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning{ - dir = 9 - }, -/area/toxins/lab) -"deI" = ( -/obj/structure/table/reinforced, -/obj/item/stack/packageWrap, -/obj/item/weapon/hand_labeler, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/toxins/lab) -"deJ" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/storage/toolbox/mechanical{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/weapon/storage/toolbox/mechanical, -/obj/item/stack/cable_coil/white, -/obj/item/stack/cable_coil/white, -/obj/machinery/status_display{ - pixel_y = -32 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning{ - dir = 5 - }, -/area/toxins/lab) -"deK" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHWEST)"; - icon_state = "intact"; - dir = 9 - }, -/turf/open/floor/plasteel/whitepurple/corner, -/area/toxins/lab) -"deL" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/folder/white, -/obj/item/weapon/reagent_containers/glass/beaker/large, -/obj/item/weapon/reagent_containers/glass/beaker, -/obj/item/weapon/reagent_containers/dropper, -/obj/structure/extinguisher_cabinet{ - pixel_y = -32 - }, -/turf/open/floor/plasteel/warning{ - dir = 9 - }, -/area/toxins/lab) -"deM" = ( -/obj/structure/table/reinforced, -/obj/machinery/light, -/obj/item/weapon/paper_bin, -/obj/item/weapon/pen, -/obj/machinery/button/door{ - id = "rndlab1"; - name = "Primary Research Shutters Control"; - pixel_x = -7; - pixel_y = -23; - req_access_txt = "7" - }, -/obj/machinery/button/door{ - id = "rndlab2"; - name = "Secondary Research Shutters Control"; - pixel_x = 7; - pixel_y = -23; - req_access_txt = "7" - }, -/turf/open/floor/plasteel/warning{ - dir = 5 - }, -/area/toxins/lab) -"deN" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/turf/open/floor/plasteel/purple, -/area/hallway/primary/aft) -"deO" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/turf/open/floor/plasteel/orange, -/area/hallway/primary/aft) -"deP" = ( -/obj/machinery/chem_master, -/obj/structure/extinguisher_cabinet{ - pixel_y = -32 - }, -/obj/structure/sign/nosmoking_2{ - pixel_x = -32; - pixel_y = -32 - }, -/turf/open/floor/plasteel/warning, -/area/medical/chemistry) -"deQ" = ( -/obj/machinery/chem_heater, -/turf/open/floor/plasteel/warning{ - dir = 6 - }, -/area/medical/chemistry) -"deR" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/plasteel/whiteyellow/corner{ - tag = "icon-whiteyellowcorner (WEST)"; - icon_state = "whiteyellowcorner"; - dir = 8 - }, -/area/medical/chemistry) -"deS" = ( -/obj/structure/table/glass, -/obj/item/stack/packageWrap, -/obj/item/weapon/hand_labeler, -/obj/machinery/airalarm{ - dir = 1; - icon_state = "alarm0"; - pixel_y = -22 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/whiteyellow/corner, -/area/medical/chemistry) -"deT" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1 - }, -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = 0; - pixel_y = -26 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/whiteyellow/corner, -/area/medical/chemistry) -"deU" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/light_switch{ - pixel_x = 7; - pixel_y = -26 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/whiteyellow/corner, -/area/medical/chemistry) -"deV" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass_medical{ - name = "Chemistry Lab"; - req_access_txt = "5; 33" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/medical/chemistry) -"deW" = ( -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/whiteyellow/corner{ - tag = "icon-whiteyellowcorner (WEST)"; - icon_state = "whiteyellowcorner"; - dir = 8 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"deX" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 8 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"deY" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 8 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"deZ" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/light, -/obj/machinery/camera{ - c_tag = "Medbay - Port"; - dir = 1; - name = "medbay camera" - }, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 8 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dfa" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 8 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dfb" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/whiteblue, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dfc" = ( -/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, -/turf/open/floor/plasteel/whiteblue/corner, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dfd" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/light, -/obj/machinery/door/firedoor, -/turf/open/floor/plasteel/warning/side, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dfe" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/whiteblue/corner, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dff" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/whiteblue/side, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dfg" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/light, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 8 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dfh" = ( -/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 8 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dfi" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dfj" = ( -/obj/structure/sign/bluecross_2{ - pixel_x = 32; - pixel_y = -32 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/whiteblue/corner, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dfk" = ( -/obj/structure/sign/poster{ - icon_state = "poster17_legit"; - pixel_x = 0; - pixel_y = -32; - tag = "icon-poster17_legit" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/light, -/obj/machinery/camera{ - c_tag = "Medbay - Starboard"; - dir = 1; - name = "medbay camera" - }, -/turf/open/floor/plasteel/whiteblue/corner, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dfl" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/whiteblue/corner, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dfm" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/open/floor/plasteel/whiteblue/corner, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dfn" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plasteel/whiteblue/corner, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dfo" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dfp" = ( -/obj/structure/rack, -/obj/item/roller, -/obj/item/weapon/reagent_containers/blood, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 8 - }, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"dfq" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"dfr" = ( -/obj/structure/closet/secure_closet/medical2, -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white, -/obj/machinery/power/apc{ - cell_type = 5000; - dir = 2; - name = "Abandoned Medical Lab APC"; - pixel_x = 1; - pixel_y = -24 - }, -/turf/open/floor/plating, -/area/medical/medbay3{ - name = "Abandoned Medbay" - }) -"dfs" = ( -/obj/machinery/light/small, -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/medical/medbay3{ - name = "Abandoned Medbay" - }) -"dft" = ( -/obj/structure/table/reinforced, -/obj/machinery/status_display{ - pixel_y = -32 - }, -/obj/item/weapon/storage/firstaid/regular, -/obj/item/clothing/gloves/color/latex, -/obj/item/clothing/suit/apron/surgical, -/obj/item/clothing/mask/surgical, -/turf/open/floor/plasteel/vault, -/area/medical/medbay3{ - name = "Abandoned Medbay" - }) -"dfu" = ( -/obj/structure/table/reinforced, -/obj/machinery/newscaster{ - pixel_y = -32 - }, -/obj/item/weapon/hemostat, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/medical/medbay3{ - name = "Abandoned Medbay" - }) -"dfv" = ( -/obj/structure/table/reinforced, -/obj/machinery/status_display{ - pixel_y = -32 - }, -/obj/item/weapon/reagent_containers/blood/random, -/obj/item/weapon/reagent_containers/blood/random, -/obj/item/weapon/reagent_containers/syringe/epinephrine{ - pixel_y = 5 - }, -/obj/item/weapon/reagent_containers/syringe, -/obj/item/clothing/neck/stethoscope, -/turf/open/floor/plasteel/vault, -/area/medical/medbay3{ - name = "Abandoned Medbay" - }) -"dfw" = ( -/obj/structure/table/reinforced, -/obj/machinery/light/small, -/obj/structure/bedsheetbin, -/obj/item/weapon/gun/syringe, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/vault, -/area/medical/medbay3{ - name = "Abandoned Medbay" - }) -"dfx" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/medical/medbay3{ - name = "Abandoned Medbay" - }) -"dfy" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/space_heater, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"dfz" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/plasteel/delivery, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"dfA" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Maintenance Hatch"; - req_access_txt = "12" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"dfB" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/effect/landmark{ - name = "xeno_spawn"; - pixel_x = -1 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/wood{ - tag = "icon-wood-broken2"; - icon_state = "wood-broken2" - }, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"dfC" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/chair/office/dark{ - dir = 4 - }, -/obj/effect/landmark{ - name = "revenantspawn" - }, -/turf/open/floor/wood, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"dfD" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/table/wood, -/obj/item/device/modular_computer/tablet/preset/cheap, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"dfE" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"dfF" = ( -/obj/structure/cable/white{ - tag = "icon-0-2"; - icon_state = "0-2" - }, -/obj/structure/grille, -/obj/structure/window/reinforced{ - dir = 1 - }, -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/structure/window/reinforced{ - dir = 4 - }, -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/turf/open/floor/plating, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"dfG" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/machinery/door/window/northright, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"dfH" = ( -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/structure/grille, -/obj/structure/window/reinforced{ - dir = 1 - }, -/obj/structure/window/reinforced{ - dir = 8 - }, -/turf/open/floor/plating, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"dfI" = ( -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/structure/grille, -/obj/structure/window/reinforced{ - dir = 1 - }, -/turf/open/floor/plating, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"dfJ" = ( -/obj/structure/cable/white{ - tag = "icon-0-2"; - icon_state = "0-2" - }, -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/structure/cable/white, -/obj/structure/grille, -/obj/structure/window/reinforced{ - dir = 1 - }, -/obj/structure/window/reinforced{ - dir = 4 - }, -/turf/open/floor/plating, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"dfK" = ( -/obj/structure/table/wood/poker, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"dfL" = ( -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"dfM" = ( -/obj/machinery/airalarm{ - dir = 8; - icon_state = "alarm0"; - pixel_x = 24 - }, -/turf/open/floor/plasteel/black, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"dfN" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/disk/tech_disk{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/disk/tech_disk, -/obj/item/device/assembly/timer, -/turf/open/floor/plasteel/delivery, -/area/medical/research{ - name = "Abandoned Research Lab" - }) -"dfO" = ( -/turf/open/floor/plasteel/warning{ - dir = 9 - }, -/area/medical/research{ - name = "Abandoned Research Lab" - }) -"dfP" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/medical/research{ - name = "Abandoned Research Lab" - }) -"dfQ" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/medical/research{ - name = "Abandoned Research Lab" - }) -"dfR" = ( -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/medical/research{ - name = "Abandoned Research Lab" - }) -"dfS" = ( -/obj/structure/chair/office/light{ - dir = 1 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/medical/research{ - name = "Abandoned Research Lab" - }) -"dfT" = ( -/obj/structure/table, -/obj/item/weapon/paper_bin, -/obj/item/weapon/pen, -/turf/open/floor/plasteel/delivery, -/area/medical/research{ - name = "Abandoned Research Lab" - }) -"dfU" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHEAST)"; - icon_state = "intact"; - dir = 5 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"dfV" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"dfW" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"dfX" = ( -/obj/structure/table/reinforced, -/obj/machinery/newscaster{ - pixel_x = -32 - }, -/obj/item/weapon/crowbar, -/obj/item/weapon/wrench, -/obj/item/clothing/mask/gas, -/turf/open/floor/plasteel/bot, -/area/toxins/explab) -"dfY" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible{ - dir = 5 - }, -/turf/open/floor/plasteel/whitepurple/corner{ - dir = 1 - }, -/area/toxins/explab) -"dfZ" = ( -/obj/machinery/atmospherics/components/trinary/filter{ - density = 0; - dir = 8; - req_access = "0" - }, -/turf/open/floor/plasteel/whitepurple/corner{ - dir = 1 - }, -/area/toxins/explab) -"dga" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible{ - dir = 9 - }, -/turf/open/floor/plasteel/whitepurple/corner{ - dir = 1 - }, -/area/toxins/explab) -"dgb" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/whitepurple/side{ - tag = "icon-whitepurple (NORTH)"; - icon_state = "whitepurple"; - dir = 1 - }, -/area/toxins/explab) -"dgc" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 2; - on = 1 - }, -/turf/open/floor/plasteel/whitepurple/corner{ - dir = 4 - }, -/area/toxins/explab) -"dgd" = ( -/turf/open/floor/plasteel/whitepurple/corner{ - dir = 4 - }, -/area/toxins/explab) -"dge" = ( -/obj/structure/table/reinforced, -/obj/structure/sign/poster{ - icon_state = "poster3_legit"; - pixel_x = 32; - pixel_y = 0; - tag = "icon-poster3_legit" - }, -/obj/item/stack/cable_coil/white{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/stack/cable_coil/white, -/obj/item/device/geiger_counter, -/turf/open/floor/plasteel/bot, -/area/toxins/explab) -"dgf" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/medical/research{ - name = "Research Division" - }) -"dgg" = ( -/obj/machinery/door/firedoor/heavy, -/obj/machinery/door/airlock/research{ - name = "Research Division Access"; - req_access_txt = "47" - }, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/medical/research{ - name = "Research Division" - }) -"dgh" = ( -/obj/structure/sign/nosmoking_2, -/turf/closed/wall, -/area/medical/research{ - name = "Research Division" - }) -"dgi" = ( -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/toxins/misc_lab{ - name = "\improper Research Testing Range" - }) -"dgj" = ( -/obj/machinery/door/firedoor, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/machinery/door/airlock/research{ - name = "Firing Range"; - req_access_txt = "47" - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/toxins/misc_lab{ - name = "\improper Research Testing Range" - }) -"dgk" = ( -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/toxins/misc_lab{ - name = "\improper Research Testing Range" - }) -"dgl" = ( -/obj/structure/sign/nanotrasen, -/turf/closed/wall/r_wall, -/area/crew_quarters/hor) -"dgm" = ( -/turf/closed/wall/r_wall, -/area/crew_quarters/hor) -"dgn" = ( -/obj/structure/cable/white{ - d2 = 2; - icon_state = "0-2"; - tag = "icon-0-2" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor/preopen{ - id = "rdoffice"; - name = "Research Director's Shutters" - }, -/turf/open/floor/plating, -/area/crew_quarters/hor) -"dgo" = ( -/obj/structure/sign/securearea, -/turf/closed/wall/r_wall, -/area/crew_quarters/hor) -"dgp" = ( -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor/preopen{ - id = "rdoffice"; - name = "Research Director's Shutters" - }, -/turf/open/floor/plating, -/area/crew_quarters/hor) -"dgq" = ( -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor/preopen{ - id = "rdoffice"; - name = "Research Director's Shutters" - }, -/turf/open/floor/plating, -/area/crew_quarters/hor) -"dgr" = ( -/obj/structure/cable/white{ - d2 = 2; - icon_state = "0-2"; - tag = "icon-0-2" - }, -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor/preopen{ - id = "rdoffice"; - name = "Research Director's Shutters" - }, -/turf/open/floor/plating, -/area/crew_quarters/hor) -"dgs" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/whitepurple/corner{ - dir = 8 - }, -/area/medical/research{ - name = "Research Division" - }) -"dgt" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/extinguisher_cabinet{ - pixel_x = 26 - }, -/turf/open/floor/plasteel/whitepurple/corner, -/area/medical/research{ - name = "Research Division" - }) -"dgu" = ( -/turf/closed/wall, -/area/assembly/chargebay) -"dgv" = ( -/turf/closed/wall/r_wall, -/area/assembly/chargebay) -"dgw" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/assembly/chargebay) -"dgx" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/research{ - name = "Research and Development Lab"; - req_access_txt = "0"; - req_one_access_txt = "7;29" - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/assembly/chargebay) -"dgy" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/disposalpipe/segment, -/obj/machinery/door/firedoor, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (EAST)"; - icon_state = "plasteel_warn_side"; - dir = 4 - }, -/area/hallway/primary/aft) -"dgz" = ( -/obj/machinery/door/firedoor, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (EAST)"; - icon_state = "plasteel_warn_side"; - dir = 4 - }, -/area/hallway/primary/aft) -"dgA" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment, -/obj/machinery/firealarm{ - dir = 4; - icon_state = "fire0"; - pixel_x = 24; - pixel_y = 0; - tag = "icon-fire0 (EAST)" - }, -/obj/machinery/door/firedoor, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (EAST)"; - icon_state = "plasteel_warn_side"; - dir = 4 - }, -/area/hallway/primary/aft) -"dgB" = ( -/turf/closed/wall, -/area/hallway/primary/aft) -"dgC" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Chemistry Maintenance"; - req_access_txt = "5; 33" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/hallway/primary/aft) -"dgD" = ( -/turf/closed/wall, -/area/medical/genetics_cloning) -"dgE" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/medical/genetics_cloning) -"dgF" = ( -/obj/structure/sign/bluecross_2, -/turf/closed/wall, -/area/medical/genetics_cloning) -"dgG" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/door/firedoor, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (EAST)"; - icon_state = "plasteel_warn_side"; - dir = 4 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dgH" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/door/firedoor, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (EAST)"; - icon_state = "plasteel_warn_side"; - dir = 4 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dgI" = ( -/turf/closed/wall, -/area/medical/surgery) -"dgJ" = ( -/obj/machinery/status_display, -/turf/closed/wall, -/area/medical/surgery) -"dgK" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/medical{ - name = "Surgery Observation"; - req_access_txt = "0" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/medical/surgery) -"dgL" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/tinted/fulltile, -/turf/open/floor/plating, -/area/medical/surgery) -"dgM" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/medical{ - name = "Surgery Observation"; - req_access_txt = "0" - }, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/medical/surgery) -"dgN" = ( -/obj/structure/girder, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"dgO" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"dgP" = ( -/turf/closed/wall, -/area/hallway/secondary/construction) -"dgQ" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-18" - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"dgR" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/wood, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"dgS" = ( -/obj/structure/cable/white, -/obj/structure/cable/white{ - tag = "icon-0-2"; - icon_state = "0-2" - }, -/obj/structure/grille, -/obj/structure/window/reinforced{ - dir = 8 - }, -/turf/open/floor/plating, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"dgT" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"dgU" = ( -/obj/effect/decal/cleanable/blood/old, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"dgV" = ( -/obj/structure/cable/white, -/obj/structure/cable/white{ - tag = "icon-0-2"; - icon_state = "0-2" - }, -/obj/structure/grille, -/obj/structure/window/reinforced{ - dir = 4 - }, -/turf/open/floor/plating, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"dgW" = ( -/obj/structure/chair/wood/normal{ - tag = "icon-wooden_chair (WEST)"; - icon_state = "wooden_chair"; - dir = 8 - }, -/turf/open/floor/wood{ - icon_state = "wood-broken4" - }, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"dgX" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/stock_parts/matter_bin, -/obj/machinery/airalarm{ - dir = 4; - locked = 0; - pixel_x = -23; - pixel_y = 0 - }, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/medical/research{ - name = "Abandoned Research Lab" - }) -"dgY" = ( -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/medical/research{ - name = "Abandoned Research Lab" - }) -"dgZ" = ( -/obj/structure/frame/machine, -/obj/item/stack/cable_coil/white, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning{ - dir = 9 - }, -/area/medical/research{ - name = "Abandoned Research Lab" - }) -"dha" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/medical/research{ - name = "Abandoned Research Lab" - }) -"dhb" = ( -/obj/structure/frame/machine, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning{ - dir = 5 - }, -/area/medical/research{ - name = "Abandoned Research Lab" - }) -"dhc" = ( -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/medical/research{ - name = "Abandoned Research Lab" - }) -"dhd" = ( -/obj/effect/decal/cleanable/oil, -/turf/open/floor/plasteel/neutral, -/area/medical/research{ - name = "Abandoned Research Lab" - }) -"dhe" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/medical/research{ - name = "Abandoned Research Lab" - }) -"dhf" = ( -/obj/structure/rack, -/obj/item/weapon/storage/toolbox/electrical, -/obj/item/device/multitool, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/medical/research{ - name = "Abandoned Research Lab" - }) -"dhg" = ( -/obj/machinery/light/small{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"dhh" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/turf/open/floor/plasteel/bot, -/area/toxins/explab) -"dhi" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 2; - on = 1; - scrub_N2O = 1; - scrub_Toxins = 1 - }, -/turf/open/floor/plasteel/whitepurple/side{ - dir = 8 - }, -/area/toxins/explab) -"dhj" = ( -/turf/open/floor/plasteel/neutral, -/area/toxins/explab) -"dhk" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/neutral, -/area/toxins/explab) -"dhl" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/neutral, -/area/toxins/explab) -"dhm" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral, -/area/toxins/explab) -"dhn" = ( -/obj/machinery/holopad, -/turf/open/floor/plasteel/bot, -/area/toxins/explab) -"dho" = ( -/turf/open/floor/plasteel/whitepurple/side{ - dir = 4 - }, -/area/toxins/explab) -"dhp" = ( -/obj/machinery/firealarm{ - dir = 4; - icon_state = "fire0"; - pixel_x = 24; - pixel_y = 0; - tag = "icon-fire0 (EAST)" - }, -/turf/open/floor/plasteel/bot, -/area/toxins/explab) -"dhq" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_Toxins = 0 - }, -/obj/machinery/firealarm{ - dir = 8; - pixel_x = -24; - pixel_y = 0 - }, -/turf/open/floor/plasteel/bot, -/area/medical/research{ - name = "Research Division" - }) -"dhr" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plasteel/warning{ - dir = 9 - }, -/area/medical/research{ - name = "Research Division" - }) -"dhs" = ( -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/medical/research{ - name = "Research Division" - }) -"dht" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/plasteel/warning{ - dir = 5 - }, -/area/medical/research{ - name = "Research Division" - }) -"dhu" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/obj/machinery/camera{ - c_tag = "Science - Lab Access"; - dir = 8; - name = "science camera"; - network = list("SS13","RD") - }, -/turf/open/floor/plasteel/bot, -/area/medical/research{ - name = "Research Division" - }) -"dhv" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/gun/energy/laser/practice{ - pixel_x = 3; - pixel_y = -3 - }, -/obj/item/weapon/gun/energy/laser/practice, -/obj/item/clothing/ears/earmuffs, -/obj/item/clothing/ears/earmuffs, -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/machinery/firealarm{ - dir = 8; - pixel_x = -24; - pixel_y = 32 - }, -/obj/machinery/power/apc{ - dir = 8; - name = "Firing Range APC"; - pixel_x = -26; - pixel_y = 3 - }, -/turf/open/floor/plasteel/delivery, -/area/toxins/misc_lab{ - name = "\improper Research Testing Range" - }) -"dhw" = ( -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/toxins/misc_lab{ - name = "\improper Research Testing Range" - }) -"dhx" = ( -/obj/item/stack/rods{ - amount = 50 - }, -/obj/item/stack/sheet/glass{ - amount = 50 - }, -/obj/item/stack/sheet/metal{ - amount = 50 - }, -/obj/item/target, -/obj/item/target/syndicate, -/obj/item/target/alien, -/obj/item/target/clown, -/obj/structure/closet/crate/secure{ - desc = "A secure crate containing various materials for building a customised test-site."; - name = "Test Site Materials Crate"; - req_access_txt = "47" - }, -/obj/machinery/light{ - icon_state = "tube1"; - dir = 4 - }, -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/turf/open/floor/plasteel/delivery, -/area/toxins/misc_lab{ - name = "\improper Research Testing Range" - }) -"dhy" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/folder/white, -/obj/item/device/paicard, -/obj/machinery/airalarm{ - dir = 4; - locked = 0; - pixel_x = -23; - pixel_y = 0 - }, -/obj/structure/extinguisher_cabinet{ - pixel_y = 32 - }, -/turf/open/floor/plasteel/bot, -/area/crew_quarters/hor) -"dhz" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/crew_quarters/hor) -"dhA" = ( -/obj/structure/displaycase/labcage, -/obj/machinery/light{ - dir = 1 - }, -/turf/open/floor/plasteel/delivery, -/area/crew_quarters/hor) -"dhB" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 2; - on = 1; - scrub_N2O = 1; - scrub_Toxins = 1 - }, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/crew_quarters/hor) -"dhC" = ( -/obj/structure/table, -/obj/item/weapon/paper_bin, -/obj/item/weapon/pen, -/turf/open/floor/plasteel/bot, -/area/crew_quarters/hor) -"dhD" = ( -/obj/structure/cable/white, -/obj/structure/cable/white{ - d2 = 2; - icon_state = "0-2"; - tag = "icon-0-2" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor/preopen{ - id = "rdoffice"; - name = "Research Director's Shutters" - }, -/turf/open/floor/plating, -/area/crew_quarters/hor) -"dhE" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/whitepurple/corner, -/area/medical/research{ - name = "Research Division" - }) -"dhF" = ( -/obj/structure/table, -/obj/item/weapon/stock_parts/cell/high, -/obj/item/weapon/stock_parts/cell/high, -/obj/machinery/cell_charger, -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/obj/machinery/airalarm{ - dir = 4; - locked = 0; - pixel_x = -23; - pixel_y = 0 - }, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = 0; - pixel_y = 26 - }, -/turf/open/floor/plasteel/bot, -/area/assembly/chargebay) -"dhG" = ( -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/turf/open/floor/plasteel/warning{ - dir = 9 - }, -/area/assembly/chargebay) -"dhH" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/assembly/chargebay) -"dhI" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/assembly/chargebay) -"dhJ" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/assembly/chargebay) -"dhK" = ( -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/machinery/power/apc{ - cell_type = 10000; - dir = 1; - name = "Mech Bay APC"; - pixel_x = 0; - pixel_y = 28 - }, -/turf/open/floor/plasteel/warning{ - dir = 5 - }, -/area/assembly/chargebay) -"dhL" = ( -/obj/structure/table, -/obj/item/weapon/paper_bin, -/obj/item/weapon/pen, -/obj/machinery/light{ - icon_state = "tube1"; - dir = 4 - }, -/obj/structure/sign/nosmoking_2{ - pixel_x = 32 - }, -/turf/open/floor/plasteel/bot, -/area/assembly/chargebay) -"dhM" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/rack, -/obj/item/weapon/wrench, -/obj/item/roller, -/turf/open/floor/plasteel/blue/corner{ - tag = "icon-bluecorner (NORTH)"; - icon_state = "bluecorner"; - dir = 1 - }, -/area/hallway/primary/aft) -"dhN" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/blue/corner{ - tag = "icon-bluecorner (NORTH)"; - icon_state = "bluecorner"; - dir = 1 - }, -/area/hallway/primary/aft) -"dhO" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/hallway/primary/aft) -"dhP" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/blue/corner{ - dir = 4 - }, -/area/hallway/primary/aft) -"dhQ" = ( -/turf/open/floor/plating, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/cobweb/cobweb2, -/obj/structure/table, -/obj/item/weapon/storage/firstaid/regular, -/turf/open/floor/plating{ - icon_state = "platingdmg2" - }, -/area/hallway/primary/aft) -"dhR" = ( -/obj/machinery/clonepod, -/obj/structure/window/reinforced{ - dir = 4; - pixel_x = 0 - }, -/obj/machinery/status_display{ - pixel_x = -32 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/medical/genetics_cloning) -"dhS" = ( -/obj/machinery/computer/cloning, -/obj/machinery/light{ - dir = 1 - }, -/obj/structure/sign/nosmoking_2{ - pixel_y = 32 - }, -/turf/open/floor/plasteel/whitepurple/corner{ - tag = "icon-whitepurplecorner (NORTH)"; - icon_state = "whitepurplecorner"; - dir = 1 - }, -/area/medical/genetics_cloning) -"dhT" = ( -/obj/machinery/dna_scannernew, -/obj/machinery/airalarm{ - pixel_y = 22 - }, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 1 - }, -/area/medical/genetics_cloning) -"dhU" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1 - }, -/turf/open/floor/plasteel/whitepurple/corner{ - tag = "icon-whitepurplecorner (NORTH)"; - icon_state = "whitepurplecorner"; - dir = 1 - }, -/area/medical/genetics_cloning) -"dhV" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 2; - on = 1 - }, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 4 - }, -/area/medical/genetics_cloning) -"dhW" = ( -/obj/structure/table/glass, -/obj/item/weapon/storage/box/bodybags{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/storage/box/bodybags, -/obj/item/weapon/pen, -/turf/open/floor/plasteel/whitepurple/corner{ - dir = 4 - }, -/area/medical/genetics_cloning) -"dhX" = ( -/obj/structure/table/glass, -/obj/structure/cable/white{ - tag = "icon-0-2"; - icon_state = "0-2" - }, -/obj/machinery/power/apc{ - cell_type = 5000; - dir = 1; - name = "Cloning Lab APC"; - pixel_x = 0; - pixel_y = 25 - }, -/obj/item/weapon/folder/white, -/obj/item/weapon/book/manual/medical_cloning, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 4 - }, -/area/medical/genetics_cloning) -"dhY" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 8 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dhZ" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dia" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plasteel/whiteblue/corner, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dib" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1 - }, -/turf/open/floor/plasteel/whiteblue, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dic" = ( -/obj/machinery/atmospherics/components/unary/cryo_cell, -/turf/open/floor/plasteel/warning{ - dir = 9 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"did" = ( -/obj/structure/table, -/obj/item/weapon/reagent_containers/glass/beaker/cryoxadone{ - pixel_x = -6; - pixel_y = 6 - }, -/obj/item/weapon/reagent_containers/glass/beaker/cryoxadone{ - pixel_x = 6; - pixel_y = 6 - }, -/obj/item/weapon/storage/pill_bottle/mannitol, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"die" = ( -/obj/machinery/atmospherics/components/unary/cryo_cell, -/turf/open/floor/plasteel/warning{ - dir = 5 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dif" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 8 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dig" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/plasteel/neutral, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dih" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/whiteblue/corner, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dii" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1 - }, -/turf/open/floor/plasteel/vault, -/area/medical/surgery) -"dij" = ( -/turf/open/floor/plasteel/vault, -/area/medical/surgery) -"dik" = ( -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/plasteel/vault, -/area/medical/surgery) -"dil" = ( -/obj/structure/sign/bluecross_2, -/turf/closed/wall, -/area/medical/surgery) -"dim" = ( -/obj/structure/chair, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/medical/surgery) -"din" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/medical/surgery) -"dio" = ( -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/medical/surgery) -"dip" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/medical/surgery) -"diq" = ( -/obj/structure/chair, -/obj/machinery/newscaster{ - pixel_x = 32 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/medical/surgery) -"dir" = ( -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"dis" = ( -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/mob/living/simple_animal/cockroach, -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"dit" = ( -/obj/structure/table, -/obj/item/weapon/storage/toolbox/mechanical, -/obj/item/device/flashlight, -/turf/open/floor/plasteel/bot, -/area/hallway/secondary/construction) -"diu" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning/end{ - tag = "icon-plasteel_warn_end (WEST)"; - icon_state = "plasteel_warn_end"; - dir = 8 - }, -/area/hallway/secondary/construction) -"div" = ( -/obj/machinery/pipedispenser, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (EAST)"; - icon_state = "plasteel_warn_side"; - dir = 4 - }, -/area/hallway/secondary/construction) -"diw" = ( -/obj/machinery/pipedispenser/disposal, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (EAST)"; - icon_state = "plasteel_warn_side"; - dir = 4 - }, -/area/hallway/secondary/construction) -"dix" = ( -/obj/machinery/pipedispenser/disposal/transit_tube, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (EAST)"; - icon_state = "plasteel_warn_side"; - dir = 4 - }, -/area/hallway/secondary/construction) -"diy" = ( -/obj/structure/filingcabinet/chestdrawer, -/turf/open/floor/plasteel/warning/end{ - tag = "icon-plasteel_warn_end (EAST)"; - icon_state = "plasteel_warn_end"; - dir = 4 - }, -/area/hallway/secondary/construction) -"diz" = ( -/obj/structure/table, -/obj/item/clothing/gloves/color/black, -/obj/item/clothing/suit/hazardvest, -/obj/item/clothing/mask/gas, -/turf/open/floor/plasteel/bot, -/area/hallway/secondary/construction) -"diA" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/closet, -/obj/effect/spawner/lootdrop/maintenance, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral/side{ - dir = 8 - }, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"diB" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/plasteel/delivery, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"diC" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning{ - dir = 9 - }, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"diD" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/effect/landmark{ - name = "xeno_spawn"; - pixel_x = -1 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"diE" = ( -/obj/machinery/portable_atmospherics/canister/air, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/delivery, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"diF" = ( -/obj/structure/sign/poster{ - pixel_x = -32 - }, -/obj/machinery/light/small{ - dir = 8 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"diG" = ( -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"diH" = ( -/obj/structure/table/wood/poker, -/obj/item/stack/spacecash/c1000{ - pixel_y = 8 - }, -/obj/item/stack/spacecash/c500, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"diI" = ( -/obj/structure/chair/wood/normal{ - tag = "icon-wooden_chair (EAST)"; - icon_state = "wooden_chair"; - dir = 4 - }, -/turf/open/floor/wood, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"diJ" = ( -/turf/open/floor/plating, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"diK" = ( -/obj/structure/chair/wood/normal{ - tag = "icon-wooden_chair (WEST)"; - icon_state = "wooden_chair"; - dir = 8 - }, -/turf/open/floor/plating, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"diL" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"diM" = ( -/obj/structure/table/reinforced, -/obj/item/stack/cable_coil/white, -/obj/item/weapon/stock_parts/scanning_module{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = -26; - pixel_y = 0 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/medical/research{ - name = "Abandoned Research Lab" - }) -"diN" = ( -/obj/structure/frame/computer, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning{ - dir = 10 - }, -/area/medical/research{ - name = "Abandoned Research Lab" - }) -"diO" = ( -/turf/open/floor/plasteel/warning, -/area/medical/research{ - name = "Abandoned Research Lab" - }) -"diP" = ( -/obj/structure/frame/machine, -/obj/item/stack/cable_coil/white, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning{ - dir = 6 - }, -/area/medical/research{ - name = "Abandoned Research Lab" - }) -"diQ" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/medical/research{ - name = "Abandoned Research Lab" - }) -"diR" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 2; - on = 1 - }, -/obj/effect/landmark{ - name = "xeno_spawn"; - pixel_x = -1 - }, -/turf/open/floor/plasteel/neutral, -/area/medical/research{ - name = "Abandoned Research Lab" - }) -"diS" = ( -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/medical/research{ - name = "Abandoned Research Lab" - }) -"diT" = ( -/turf/open/floor/plasteel/delivery, -/area/medical/research{ - name = "Abandoned Research Lab" - }) -"diU" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/button/door{ - id = "maintrobotics"; - name = "Decrepit Control"; - pixel_x = 26 - }, -/turf/open/floor/plating, -/area/medical/research{ - name = "Abandoned Research Lab" - }) -"diV" = ( -/obj/machinery/door/poddoor/preopen{ - id = "maintrobotics"; - name = "Decrepit Blast Door" - }, -/obj/structure/girder, -/obj/structure/grille, -/turf/open/floor/plasteel/warning/side, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"diW" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"diX" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"diY" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Science Maintenance"; - req_access_txt = "47" - }, -/turf/open/floor/plasteel/warning/side, -/area/toxins/explab) -"diZ" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/delivery, -/area/toxins/explab) -"dja" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/whitepurple/corner{ - dir = 8 - }, -/area/toxins/explab) -"djb" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/whitepurple/corner{ - dir = 8 - }, -/area/toxins/explab) -"djc" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/whitepurple/corner{ - dir = 8 - }, -/area/toxins/explab) -"djd" = ( -/obj/structure/table/reinforced, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/item/stack/sheet/mineral/plasma{ - amount = 5; - layer = 3.1 - }, -/obj/item/device/taperecorder, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/warning{ - dir = 9 - }, -/area/toxins/explab) -"dje" = ( -/obj/structure/chair/office/light, -/obj/effect/landmark/start{ - name = "Scientist" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/toxins/explab) -"djf" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/clipboard, -/obj/item/weapon/folder/white, -/obj/item/weapon/pen, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/warning{ - dir = 5 - }, -/area/toxins/explab) -"djg" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/whitepurple/corner, -/area/toxins/explab) -"djh" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/delivery, -/area/toxins/explab) -"dji" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/research{ - name = "Experimentation Lab"; - req_access_txt = "47" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/toxins/explab) -"djj" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/bot, -/area/medical/research{ - name = "Research Division" - }) -"djk" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/medical/research{ - name = "Research Division" - }) -"djl" = ( -/obj/machinery/holopad, -/obj/effect/landmark{ - name = "lightsout" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/bot, -/area/medical/research{ - name = "Research Division" - }) -"djm" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/medical/research{ - name = "Research Division" - }) -"djn" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/research{ - name = "Firing Range"; - req_access_txt = "47" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/medical/research{ - name = "Research Division" - }) -"djo" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/toxins/misc_lab{ - name = "\improper Research Testing Range" - }) -"djp" = ( -/obj/machinery/holopad, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/obj/structure/disposalpipe/junction{ - dir = 4; - icon_state = "pipe-j2" - }, -/turf/open/floor/plasteel/bot, -/area/toxins/misc_lab{ - name = "\improper Research Testing Range" - }) -"djq" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHWEST)"; - icon_state = "intact"; - dir = 10 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/toxins/misc_lab{ - name = "\improper Research Testing Range" - }) -"djr" = ( -/obj/structure/cable/white{ - d2 = 2; - icon_state = "0-2"; - tag = "icon-0-2" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor/preopen{ - id = "rdoffice"; - name = "Research Director's Shutters" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plating, -/area/crew_quarters/hor) -"djs" = ( -/obj/structure/table/reinforced, -/obj/item/device/aicard, -/obj/item/weapon/circuitboard/aicore, -/obj/structure/disposalpipe/sortjunction{ - dir = 4; - icon_state = "pipe-j1s"; - name = "RD's Junction"; - sortType = 13 - }, -/turf/open/floor/plasteel/bot, -/area/crew_quarters/hor) -"djt" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/warning{ - dir = 10 - }, -/area/crew_quarters/hor) -"dju" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/warning, -/area/crew_quarters/hor) -"djv" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/warning{ - dir = 6 - }, -/area/crew_quarters/hor) -"djw" = ( -/obj/structure/filingcabinet/chestdrawer, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/bot, -/area/crew_quarters/hor) -"djx" = ( -/obj/structure/cable/white, -/obj/structure/cable/white{ - d2 = 2; - icon_state = "0-2"; - tag = "icon-0-2" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor/preopen{ - id = "rdoffice"; - name = "Research Director's Shutters" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plating, -/area/crew_quarters/hor) -"djy" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plasteel/whitepurple/corner{ - dir = 8 - }, -/area/medical/research{ - name = "Research Division" - }) -"djz" = ( -/obj/structure/disposalpipe/sortjunction{ - dir = 1; - icon_state = "pipe-j1s"; - name = "Robotics Junction"; - sortType = 14 - }, -/turf/open/floor/plasteel/neutral, -/area/medical/research{ - name = "Research Division" - }) -"djA" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/whitepurple/corner, -/area/medical/research{ - name = "Research Division" - }) -"djB" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/assembly/chargebay) -"djC" = ( -/obj/machinery/recharge_station, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/bot, -/area/assembly/chargebay) -"djD" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/effect/decal/cleanable/dirt, -/obj/effect/landmark/start{ - name = "Cyborg" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/assembly/chargebay) -"djE" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/plasteel/bot, -/area/assembly/chargebay) -"djF" = ( -/obj/machinery/computer/mech_bay_power_console, -/turf/open/floor/plasteel/circuit, -/area/assembly/chargebay) -"djG" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/mech_bay_recharge_floor, -/area/assembly/chargebay) -"djH" = ( -/obj/machinery/mech_bay_recharge_port{ - tag = "icon-recharge_port (WEST)"; - icon_state = "recharge_port"; - dir = 8 - }, -/turf/open/floor/plating/warnplate{ - dir = 5 - }, -/area/assembly/chargebay) -"djI" = ( -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/assembly/chargebay) -"djJ" = ( -/obj/structure/filingcabinet/chestdrawer, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/bot, -/area/assembly/chargebay) -"djK" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/disposalpipe/segment, -/obj/machinery/camera{ - c_tag = "Departures Hallway - Mech Bay"; - dir = 4; - name = "hallway camera" - }, -/turf/open/floor/plasteel/warning/corner{ - dir = 1 - }, -/area/hallway/primary/aft) -"djL" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral/corner, -/area/hallway/primary/aft) -"djM" = ( -/obj/machinery/door/firedoor, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Maintenance Hatch"; - req_access_txt = "12" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/hallway/primary/aft) -"djN" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/hallway/primary/aft) -"djO" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating{ - icon_state = "platingdmg3" - }, -/area/hallway/primary/aft) -"djP" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/aft) -"djQ" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/aft) -"djR" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/table, -/obj/item/weapon/reagent_containers/blood/random, -/obj/item/weapon/reagent_containers/dropper, -/turf/open/floor/plasteel/blue/corner{ - dir = 4 - }, -/area/hallway/primary/aft) -"djS" = ( -/obj/machinery/door/window/eastleft, -/obj/structure/mirror{ - pixel_x = -28 - }, -/obj/machinery/shower{ - dir = 4; - icon_state = "shower"; - name = "emergency shower" - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/medical/genetics_cloning) -"djT" = ( -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 1 - }, -/area/medical/genetics_cloning) -"djU" = ( -/turf/open/floor/plasteel/neutral, -/area/medical/genetics_cloning) -"djV" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/plasteel/neutral, -/area/medical/genetics_cloning) -"djW" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/medical/genetics_cloning) -"djX" = ( -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/whitepurple/corner{ - dir = 4 - }, -/area/medical/genetics_cloning) -"djY" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass_medical{ - id_tag = "cloningfoyer"; - name = "Cloning Lab"; - req_access_txt = "5" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/medical/genetics_cloning) -"djZ" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/whitepurple/corner{ - tag = "icon-whitepurplecorner (WEST)"; - icon_state = "whitepurplecorner"; - dir = 8 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dka" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/blue, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dkb" = ( -/turf/open/floor/plasteel/whiteblue, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dkc" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible{ - dir = 5 - }, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dkd" = ( -/obj/machinery/atmospherics/pipe/manifold/general/visible{ - dir = 1 - }, -/obj/effect/landmark/start{ - name = "Medical Doctor" - }, -/turf/open/floor/plasteel, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dke" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible{ - dir = 9 - }, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dkf" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/extinguisher_cabinet{ - pixel_x = 26 - }, -/turf/open/floor/plasteel/whiteblue/corner, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dkg" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/medical/surgery) -"dkh" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/medical{ - name = "Surgery Observation"; - req_access_txt = "0" - }, -/turf/open/floor/plasteel/warning/side, -/area/medical/surgery) -"dki" = ( -/obj/structure/chair, -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/medical/surgery) -"dkj" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral/side{ - dir = 8 - }, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"dkk" = ( -/obj/structure/rack, -/obj/machinery/light/small{ - dir = 8 - }, -/obj/item/weapon/crowbar/red, -/obj/item/weapon/wrench, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 2; - name = "2maintenance loot spawner" - }, -/turf/open/floor/plasteel/bot, -/area/hallway/secondary/construction) -"dkl" = ( -/turf/open/floor/plating, -/area/hallway/secondary/construction) -"dkm" = ( -/obj/effect/decal/cleanable/oil, -/turf/open/floor/plating, -/area/hallway/secondary/construction) -"dkn" = ( -/obj/machinery/light/small{ - dir = 4 - }, -/obj/machinery/airalarm{ - dir = 8; - icon_state = "alarm0"; - pixel_x = 24 - }, -/turf/open/floor/plasteel/yellow/corner{ - dir = 4 - }, -/area/hallway/secondary/construction) -"dko" = ( -/obj/effect/landmark{ - name = "blobstart" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"dkp" = ( -/obj/structure/closet/emcloset, -/obj/item/clothing/mask/breath, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"dkq" = ( -/obj/structure/reagent_dispensers/watertank, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning{ - dir = 6 - }, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"dkr" = ( -/obj/machinery/portable_atmospherics/canister/air, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"dks" = ( -/obj/structure/table/wood/poker, -/obj/item/clothing/glasses/sunglasses/big, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"dkt" = ( -/obj/structure/table/wood/poker, -/obj/item/stack/spacecash/c10{ - pixel_x = -16; - pixel_y = 8 - }, -/obj/item/stack/spacecash/c100, -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"dku" = ( -/obj/structure/table/wood/poker, -/obj/item/toy/cards/deck/syndicate{ - icon_state = "deck_syndicate_full"; - pixel_x = 0; - pixel_y = 6 - }, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"dkv" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/mob/living/simple_animal/cockroach, -/turf/open/floor/wood, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"dkw" = ( -/obj/structure/chair/wood/normal{ - tag = "icon-wooden_chair (EAST)"; - icon_state = "wooden_chair"; - dir = 4 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/wood{ - tag = "icon-wood-broken3"; - icon_state = "wood-broken3" - }, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"dkx" = ( -/obj/effect/decal/cleanable/blood/old, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"dky" = ( -/obj/effect/decal/cleanable/vomit/old, -/obj/effect/landmark{ - name = "blobstart" - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"dkz" = ( -/obj/item/weapon/storage/toolbox/emergency, -/obj/effect/decal/cleanable/blood/old, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"dkA" = ( -/obj/structure/chair/wood/normal{ - tag = "icon-wooden_chair (WEST)"; - icon_state = "wooden_chair"; - dir = 8 - }, -/turf/open/floor/wood, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"dkB" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/folder/white, -/obj/item/weapon/stock_parts/cell/high, -/obj/item/weapon/stock_parts/console_screen, -/obj/item/weapon/stock_parts/console_screen, -/obj/item/weapon/stock_parts/console_screen, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/medical/research{ - name = "Abandoned Research Lab" - }) -"dkC" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning{ - dir = 10 - }, -/area/medical/research{ - name = "Abandoned Research Lab" - }) -"dkD" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning, -/area/medical/research{ - name = "Abandoned Research Lab" - }) -"dkE" = ( -/turf/open/floor/plating, -/area/medical/research{ - name = "Abandoned Research Lab" - }) -"dkF" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/turf/open/floor/plasteel/warning, -/area/medical/research{ - name = "Abandoned Research Lab" - }) -"dkG" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHEAST)"; - icon_state = "intact"; - dir = 5 - }, -/turf/open/floor/plasteel/warning, -/area/medical/research{ - name = "Abandoned Research Lab" - }) -"dkH" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/warning{ - dir = 6 - }, -/area/medical/research{ - name = "Abandoned Research Lab" - }) -"dkI" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/delivery, -/area/medical/research{ - name = "Abandoned Research Lab" - }) -"dkJ" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/obj/structure/barricade/wooden, -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Maintenance Hatch"; - req_access_txt = "12" - }, -/turf/open/floor/plasteel/warning/side, -/area/medical/research{ - name = "Abandoned Research Lab" - }) -"dkK" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/door/poddoor/preopen{ - id = "maintrobotics"; - name = "Decrepit Blast Door" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/obj/structure/girder, -/obj/structure/grille, -/turf/open/floor/plasteel/warning/side, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"dkL" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 8 - }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"dkM" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"dkN" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/closed/wall/r_wall, -/area/toxins/explab) -"dkO" = ( -/obj/structure/table, -/obj/item/stack/medical/gauze, -/obj/item/stack/medical/bruise_pack, -/obj/item/stack/medical/ointment, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plasteel/bot, -/area/toxins/explab) -"dkP" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/open/floor/plasteel/delivery, -/area/toxins/explab) -"dkQ" = ( -/obj/machinery/light, -/obj/machinery/disposal/bin, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/trunk{ - dir = 1 - }, -/turf/open/floor/plasteel/bot, -/area/toxins/explab) -"dkR" = ( -/obj/structure/table/reinforced, -/obj/item/clothing/gloves/color/white, -/obj/item/clothing/gloves/color/white, -/obj/item/clothing/glasses/science, -/obj/item/clothing/glasses/science, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning{ - dir = 9 - }, -/area/toxins/explab) -"dkS" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/book/manual/experimentor, -/obj/item/device/healthanalyzer, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/corner{ - dir = 4 - }, -/area/toxins/explab) -"dkT" = ( -/obj/machinery/computer/rdconsole/experiment, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/bot, -/area/toxins/explab) -"dkU" = ( -/obj/structure/table/reinforced, -/obj/item/stack/packageWrap, -/obj/item/weapon/hand_labeler, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/warning/corner{ - dir = 8 - }, -/area/toxins/explab) -"dkV" = ( -/obj/structure/table/reinforced, -/obj/machinery/light, -/obj/item/weapon/paper_bin, -/obj/item/weapon/pen, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning{ - dir = 5 - }, -/area/toxins/explab) -"dkW" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/bot, -/area/toxins/explab) -"dkX" = ( -/obj/structure/sign/securearea, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/toxins/explab) -"dkY" = ( -/obj/machinery/light/small, -/obj/structure/closet/firecloset, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/bot, -/area/medical/research{ - name = "Research Division" - }) -"dkZ" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/open/floor/plasteel/warning{ - dir = 10 - }, -/area/medical/research{ - name = "Research Division" - }) -"dla" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning, -/area/medical/research{ - name = "Research Division" - }) -"dlb" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning{ - dir = 6 - }, -/area/medical/research{ - name = "Research Division" - }) -"dlc" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall/r_wall, -/area/medical/research{ - name = "Research Division" - }) -"dld" = ( -/obj/structure/table/reinforced, -/obj/machinery/recharger, -/obj/machinery/airalarm{ - dir = 4; - icon_state = "alarm0"; - pixel_x = -22 - }, -/obj/machinery/light_switch{ - pixel_x = -26; - pixel_y = -26 - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plasteel/delivery, -/area/toxins/misc_lab{ - name = "\improper Research Testing Range" - }) -"dle" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/warning, -/area/toxins/misc_lab{ - name = "\improper Research Testing Range" - }) -"dlf" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/delivery, -/area/toxins/misc_lab{ - name = "\improper Research Testing Range" - }) -"dlg" = ( -/obj/machinery/door/firedoor, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/machinery/door/airlock/command{ - name = "Research Director's Office"; - req_access = null; - req_access_txt = "30" - }, -/turf/open/floor/plasteel/warning/side, -/area/crew_quarters/hor) -"dlh" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/delivery, -/area/crew_quarters/hor) -"dli" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/turf/open/floor/plasteel/whitepurple/corner{ - dir = 1 - }, -/area/crew_quarters/hor) -"dlj" = ( -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHEAST)"; - icon_state = "intact"; - dir = 6 - }, -/turf/open/floor/plasteel/whitepurple/side{ - tag = "icon-whitepurple (NORTH)"; - icon_state = "whitepurple"; - dir = 1 - }, -/area/crew_quarters/hor) -"dlk" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/whitepurple/corner{ - dir = 4 - }, -/area/crew_quarters/hor) -"dll" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/delivery, -/area/crew_quarters/hor) -"dlm" = ( -/obj/machinery/door/firedoor, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/machinery/door/airlock/command{ - name = "Research Director's Office"; - req_access = null; - req_access_txt = "30" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/crew_quarters/hor) -"dln" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/whitepurple/corner{ - dir = 8 - }, -/area/medical/research{ - name = "Research Division" - }) -"dlo" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/junction{ - dir = 1; - icon_state = "pipe-j2" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/turf/open/floor/plasteel/purple, -/area/medical/research{ - name = "Research Division" - }) -"dlp" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/whitepurple/corner, -/area/medical/research{ - name = "Research Division" - }) -"dlq" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/light_switch{ - pixel_x = -26 - }, -/turf/open/floor/plasteel/bot, -/area/assembly/chargebay) -"dlr" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/assembly/chargebay) -"dls" = ( -/turf/open/floor/plasteel/bot, -/area/assembly/chargebay) -"dlt" = ( -/turf/open/floor/plasteel/circuit, -/area/assembly/chargebay) -"dlu" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/assembly/chargebay) -"dlv" = ( -/turf/open/floor/plasteel/delivery, -/area/assembly/chargebay) -"dlw" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/door/poddoor/shutters{ - id = "mechbay"; - name = "Mech Bay Shutters" - }, -/obj/machinery/button/door{ - id = "mechbay"; - name = "Mech Bay Shutters Control"; - pixel_y = 26; - req_access_txt = "29" - }, -/turf/open/floor/plasteel/warning/side, -/area/assembly/chargebay) -"dlx" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/hallway/primary/aft) -"dly" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/aft) -"dlz" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating{ - icon_state = "panelscorched" - }, -/area/hallway/primary/aft) -"dlA" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/vomit/old, -/turf/open/floor/plating, -/area/hallway/primary/aft) -"dlB" = ( -/obj/effect/landmark{ - name = "blobstart" - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/aft) -"dlC" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/aft) -"dlD" = ( -/obj/structure/rack, -/obj/item/device/healthanalyzer, -/obj/item/clothing/glasses/eyepatch, -/turf/open/floor/plating{ - icon_state = "panelscorched" - }, -/area/hallway/primary/aft) -"dlE" = ( -/obj/machinery/door/window/eastright, -/obj/machinery/ai_status_display{ - pixel_x = -32 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/medical/genetics_cloning) -"dlF" = ( -/turf/open/floor/plasteel/whitepurple/corner{ - dir = 8 - }, -/area/medical/genetics_cloning) -"dlG" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/neutral, -/area/medical/genetics_cloning) -"dlH" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/medical/genetics_cloning) -"dlI" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral, -/area/medical/genetics_cloning) -"dlJ" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plasteel/neutral, -/area/medical/genetics_cloning) -"dlK" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/whiteblue/corner, -/area/medical/genetics_cloning) -"dlL" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass_medical{ - id_tag = "cloningfoyer"; - name = "Cloning Lab"; - req_access_txt = "5" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/medical/genetics_cloning) -"dlM" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 8 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dlN" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dlO" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/whiteblue/corner, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dlP" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible{ - dir = 6 - }, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dlQ" = ( -/obj/machinery/atmospherics/pipe/manifold4w/general/visible, -/turf/open/floor/plasteel, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dlR" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible{ - dir = 10 - }, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dlS" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/medical/surgery) -"dlT" = ( -/obj/structure/rack, -/obj/structure/extinguisher_cabinet{ - pixel_x = -26 - }, -/obj/item/stack/sheet/metal{ - amount = 30 - }, -/obj/item/stack/packageWrap, -/obj/item/stack/sheet/glass{ - amount = 30 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/bot, -/area/hallway/secondary/construction) -"dlU" = ( -/obj/structure/girder, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/hallway/secondary/construction) -"dlV" = ( -/obj/structure/chair/stool/bar, -/obj/structure/sign/poster{ - pixel_x = -32 - }, -/obj/machinery/light/small{ - dir = 8 - }, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"dlW" = ( -/obj/structure/chair/stool/bar, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"dlX" = ( -/obj/structure/chair/wood/normal{ - tag = "icon-wooden_chair (EAST)"; - icon_state = "wooden_chair"; - dir = 4 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"dlY" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/effect/landmark{ - name = "revenantspawn" - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"dlZ" = ( -/obj/structure/cable/white, -/obj/structure/cable/white{ - tag = "icon-0-2"; - icon_state = "0-2" - }, -/obj/structure/grille, -/obj/structure/window/reinforced, -/obj/structure/window/reinforced{ - dir = 4 - }, -/turf/open/floor/plating, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"dma" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/wood{ - tag = "icon-wood-broken3"; - icon_state = "wood-broken3" - }, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"dmb" = ( -/obj/structure/table/wood, -/obj/machinery/light{ - icon_state = "tube1"; - dir = 4 - }, -/obj/item/weapon/paper_bin, -/obj/item/weapon/pen, -/turf/open/floor/plasteel/black, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"dmc" = ( -/obj/structure/filingcabinet/chestdrawer, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/medical/research{ - name = "Abandoned Research Lab" - }) -"dmd" = ( -/obj/machinery/light/small, -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/delivery, -/area/medical/research{ - name = "Abandoned Research Lab" - }) -"dme" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/delivery, -/area/medical/research{ - name = "Abandoned Research Lab" - }) -"dmf" = ( -/obj/structure/cable/white, -/obj/machinery/power/apc{ - cell_type = 5000; - dir = 2; - name = "Abandoned Research Lab APC"; - pixel_x = 1; - pixel_y = -24 - }, -/turf/open/floor/plasteel/delivery, -/area/medical/research{ - name = "Abandoned Research Lab" - }) -"dmg" = ( -/obj/machinery/light/small, -/turf/open/floor/plating, -/area/medical/research{ - name = "Abandoned Research Lab" - }) -"dmh" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/medical/research{ - name = "Abandoned Research Lab" - }) -"dmi" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/light_switch{ - pixel_x = 26 - }, -/turf/open/floor/plasteel/delivery, -/area/medical/research{ - name = "Abandoned Research Lab" - }) -"dmj" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/door/poddoor/preopen{ - id = "maintrobotics"; - name = "Decrepit Blast Door" - }, -/obj/structure/girder, -/obj/structure/grille, -/turf/open/floor/plasteel/warning/side, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"dmk" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"dml" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall/r_wall, -/area/toxins/explab) -"dmm" = ( -/obj/machinery/door/firedoor/heavy, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/button/door{ - id = "experimentor"; - name = "Experimentor Door Control"; - pixel_x = -26; - req_access_txt = "47" - }, -/obj/machinery/door/poddoor/preopen{ - id = "experimentor"; - name = "Test Chamber Blast door" - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/toxins/explab) -"dmn" = ( -/obj/structure/sign/securearea, -/turf/closed/wall/r_wall, -/area/toxins/explab) -"dmo" = ( -/obj/machinery/status_display, -/turf/closed/wall/r_wall, -/area/toxins/explab) -"dmp" = ( -/obj/machinery/door/firedoor/heavy, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/toxins/explab) -"dmq" = ( -/obj/machinery/door/firedoor/heavy, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/toxins/explab) -"dmr" = ( -/obj/structure/sign/nanotrasen, -/turf/closed/wall/r_wall, -/area/toxins/explab) -"dms" = ( -/turf/closed/wall/r_wall, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dmt" = ( -/obj/structure/sign/fire, -/turf/closed/wall/r_wall, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dmu" = ( -/obj/machinery/door/firedoor/heavy, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "rdtoxins"; - name = "Toxins Lab Shutters" - }, -/turf/open/floor/plating, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dmv" = ( -/obj/machinery/door/firedoor/heavy, -/obj/machinery/door/airlock/research{ - name = "Toxins Mixing Lab"; - req_access_txt = "8" - }, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "rdtoxins"; - name = "Toxins Lab Shutters" - }, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dmw" = ( -/obj/structure/sign/biohazard, -/turf/closed/wall/r_wall, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dmx" = ( -/obj/structure/window/reinforced{ - dir = 1 - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/toxins/misc_lab{ - name = "\improper Research Testing Range" - }) -"dmy" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/door/window/northright{ - name = "Shooting Range" - }, -/turf/open/floor/plating, -/area/toxins/misc_lab{ - name = "\improper Research Testing Range" - }) -"dmz" = ( -/obj/structure/window/reinforced{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/toxins/misc_lab{ - name = "\improper Research Testing Range" - }) -"dmA" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1 - }, -/obj/machinery/power/apc{ - dir = 8; - name = "Research Director's Office APC"; - pixel_x = -26; - pixel_y = 0 - }, -/obj/structure/cable/white, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/bot, -/area/crew_quarters/hor) -"dmB" = ( -/obj/machinery/holopad, -/turf/open/floor/plasteel/whitepurple/corner{ - dir = 1 - }, -/area/crew_quarters/hor) -"dmC" = ( -/obj/structure/chair/office/light, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/white, -/area/crew_quarters/hor) -"dmD" = ( -/obj/structure/chair/office/light, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/whitepurple/corner{ - dir = 4 - }, -/area/crew_quarters/hor) -"dmE" = ( -/obj/structure/table, -/obj/item/weapon/cartridge/signal/toxins{ - pixel_x = 6 - }, -/obj/item/weapon/cartridge/signal/toxins{ - pixel_x = -6 - }, -/obj/item/weapon/cartridge/signal/toxins{ - pixel_y = 6 - }, -/obj/machinery/firealarm{ - dir = 4; - icon_state = "fire0"; - pixel_x = 24; - pixel_y = 0; - tag = "icon-fire0 (EAST)" - }, -/obj/machinery/camera{ - c_tag = "Science - Research Director's Office"; - dir = 8; - name = "science camera"; - network = list("SS13","RD") - }, -/turf/open/floor/plasteel/bot, -/area/crew_quarters/hor) -"dmF" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/turf/open/floor/plasteel/whitepurple/corner{ - dir = 8 - }, -/area/medical/research{ - name = "Research Division" - }) -"dmG" = ( -/obj/structure/disposalpipe/segment, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/neutral, -/area/medical/research{ - name = "Research Division" - }) -"dmH" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/whitepurple/corner, -/area/medical/research{ - name = "Research Division" - }) -"dmI" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/research{ - name = "Mech Bay"; - req_access_txt = "29" - }, -/turf/open/floor/plasteel/warning/side, -/area/assembly/chargebay) -"dmJ" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/assembly/chargebay) -"dmK" = ( -/turf/open/floor/plasteel/neutral, -/area/assembly/chargebay) -"dmL" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/neutral, -/area/assembly/chargebay) -"dmM" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/landmark/start{ - name = "Roboticist" - }, -/turf/open/floor/plasteel/neutral, -/area/assembly/chargebay) -"dmN" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/delivery, -/area/assembly/chargebay) -"dmO" = ( -/obj/machinery/door/poddoor/shutters{ - id = "mechbay"; - name = "Mech Bay Shutters" - }, -/turf/open/floor/plasteel/warning/side, -/area/assembly/chargebay) -"dmP" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/hallway/primary/aft) -"dmQ" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment, -/obj/machinery/airalarm{ - dir = 8; - icon_state = "alarm0"; - pixel_x = 24 - }, -/turf/open/floor/plasteel/neutral/corner, -/area/hallway/primary/aft) -"dmR" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/bed/roller, -/obj/machinery/iv_drip, -/turf/open/floor/plasteel/blue/corner{ - tag = "icon-bluecorner (WEST)"; - icon_state = "bluecorner"; - dir = 8 - }, -/area/hallway/primary/aft) -"dmS" = ( -/turf/open/floor/plating, -/area/hallway/primary/aft) -"dmT" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/blue/corner, -/area/hallway/primary/aft) -"dmU" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/blue/corner, -/area/hallway/primary/aft) -"dmV" = ( -/obj/structure/window/reinforced{ - dir = 4; - pixel_x = 0 - }, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = -26; - pixel_y = 0 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/medical/genetics_cloning) -"dmW" = ( -/obj/structure/closet/secure_closet/personal/patient, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 8 - }, -/area/medical/genetics_cloning) -"dmX" = ( -/obj/machinery/limbgrower, -/turf/open/floor/plasteel/whitepurple/corner{ - dir = 8 - }, -/area/medical/genetics_cloning) -"dmY" = ( -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 8 - }, -/area/medical/genetics_cloning) -"dmZ" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/whitepurple/corner, -/area/medical/genetics_cloning) -"dna" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-18" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/whiteblue/corner, -/area/medical/genetics_cloning) -"dnb" = ( -/obj/structure/filingcabinet/chestdrawer, -/obj/machinery/firealarm{ - dir = 4; - icon_state = "fire0"; - pixel_x = 7; - pixel_y = -26; - tag = "icon-fire0 (EAST)" - }, -/obj/machinery/light, -/obj/machinery/light_switch{ - pixel_x = 7; - pixel_y = -38 - }, -/obj/machinery/button/door{ - desc = "A remote control switch for the medbay foyer."; - id = "cloningfoyer"; - name = "Cloning Doors Control"; - normaldoorcontrol = 1; - pixel_x = -6; - pixel_y = -24 - }, -/obj/machinery/camera{ - c_tag = "Medbay - Cloning Lab"; - dir = 1; - name = "medbay camera" - }, -/turf/open/floor/plasteel/whitepurple/corner, -/area/medical/genetics_cloning) -"dnc" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/whitepurple/corner{ - tag = "icon-whitepurplecorner (WEST)"; - icon_state = "whitepurplecorner"; - dir = 8 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dnd" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/blue, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dne" = ( -/obj/structure/table/glass, -/obj/item/weapon/folder/white, -/obj/item/weapon/reagent_containers/glass/beaker/cryoxadone, -/obj/item/weapon/reagent_containers/glass/beaker/cryoxadone, -/obj/item/weapon/reagent_containers/dropper, -/turf/open/floor/plasteel/whiteblue, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dnf" = ( -/obj/machinery/portable_atmospherics/canister/oxygen, -/obj/machinery/atmospherics/components/unary/portables_connector/visible{ - dir = 1 - }, -/turf/open/floor/plasteel/warning{ - dir = 10 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dng" = ( -/obj/machinery/atmospherics/components/unary/thermomachine/freezer{ - dir = 1 - }, -/turf/open/floor/plasteel/warning, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dnh" = ( -/obj/machinery/portable_atmospherics/canister/oxygen, -/obj/machinery/atmospherics/components/unary/portables_connector/visible{ - dir = 1 - }, -/turf/open/floor/plasteel/warning{ - dir = 6 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dni" = ( -/obj/structure/table/glass, -/obj/item/weapon/wrench/medical, -/obj/item/clothing/neck/stethoscope, -/obj/machinery/camera{ - c_tag = "Medbay - Cryogenics"; - dir = 1; - name = "medbay camera" - }, -/turf/open/floor/plasteel/whiteblue, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dnj" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/plasteel/whiteblue/corner, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dnk" = ( -/obj/structure/sign/nosmoking_2, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/medical/surgery) -"dnl" = ( -/obj/structure/bed/roller, -/obj/machinery/iv_drip, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 1 - }, -/area/medical/surgery) -"dnm" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/whiteblue/side{ - dir = 1 - }, -/area/medical/surgery) -"dnn" = ( -/obj/structure/bed, -/obj/item/weapon/bedsheet/medical, -/obj/machinery/iv_drip, -/obj/machinery/newscaster{ - pixel_x = 32 - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 4 - }, -/area/medical/surgery) -"dno" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/medical/surgery) -"dnp" = ( -/obj/item/clothing/gloves/color/latex, -/obj/item/clothing/suit/apron/surgical, -/obj/item/clothing/mask/surgical, -/obj/item/weapon/surgical_drapes, -/obj/structure/table/reinforced, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 1 - }, -/area/medical/surgery) -"dnq" = ( -/obj/item/weapon/retractor, -/obj/item/weapon/hemostat, -/obj/structure/table/reinforced, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/whiteblue/side{ - dir = 5 - }, -/area/medical/surgery) -"dnr" = ( -/obj/item/weapon/circular_saw, -/obj/item/weapon/surgicaldrill{ - pixel_y = 5 - }, -/obj/structure/table/reinforced, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plasteel/whiteblue, -/area/medical/surgery) -"dns" = ( -/obj/item/weapon/scalpel, -/obj/item/weapon/cautery, -/obj/structure/table/reinforced, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/whiteblue/side{ - dir = 9 - }, -/area/medical/surgery) -"dnt" = ( -/obj/machinery/computer/med_data/laptop, -/obj/structure/table/reinforced, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 4 - }, -/area/medical/surgery) -"dnu" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"dnv" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/yellow/corner{ - dir = 1 - }, -/area/hallway/secondary/construction) -"dnw" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/hallway/secondary/construction) -"dnx" = ( -/turf/open/floor/plasteel/yellow/corner{ - dir = 4 - }, -/area/hallway/secondary/construction) -"dny" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"dnz" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/door/window/eastleft, -/obj/effect/decal/cleanable/blood/old, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"dnA" = ( -/obj/structure/table/wood, -/obj/machinery/status_display{ - pixel_x = 32 - }, -/obj/item/weapon/book/manual/wiki/engineering_hacking, -/turf/open/floor/plating, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"dnB" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/medical/research{ - name = "Abandoned Research Lab" - }) -"dnC" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Maintenance Hatch"; - req_access_txt = "12" - }, -/obj/structure/barricade/wooden, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (EAST)"; - icon_state = "plasteel_warn_side"; - dir = 4 - }, -/area/medical/research{ - name = "Abandoned Research Lab" - }) -"dnD" = ( -/obj/structure/girder, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"dnE" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/vault, -/area/toxins/explab) -"dnF" = ( -/turf/open/floor/plasteel/vault, -/area/toxins/explab) -"dnG" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/vault, -/area/toxins/explab) -"dnH" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/vault, -/area/toxins/explab) -"dnI" = ( -/obj/structure/closet/bombcloset, -/obj/machinery/firealarm{ - dir = 8; - pixel_x = -24; - pixel_y = 0 - }, -/turf/open/floor/plasteel/warning{ - dir = 6 - }, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dnJ" = ( -/turf/open/floor/plasteel/whitepurple/corner{ - dir = 1 - }, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dnK" = ( -/turf/open/floor/plasteel/whitepurple/side{ - tag = "icon-whitepurple (NORTH)"; - icon_state = "whitepurple"; - dir = 1 - }, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dnL" = ( -/turf/open/floor/plasteel/whitepurple/corner{ - dir = 4 - }, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dnM" = ( -/obj/structure/closet/bombcloset, -/obj/machinery/light_switch{ - pixel_x = 26; - pixel_y = 26 - }, -/turf/open/floor/plasteel/warning{ - dir = 10 - }, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dnN" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating/warnplate{ - dir = 8 - }, -/area/toxins/misc_lab{ - name = "\improper Research Testing Range" - }) -"dnO" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plating, -/area/toxins/misc_lab{ - name = "\improper Research Testing Range" - }) -"dnP" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating/warnplate{ - dir = 4 - }, -/area/toxins/misc_lab{ - name = "\improper Research Testing Range" - }) -"dnQ" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/disposal/bin, -/obj/structure/disposalpipe/trunk{ - dir = 1 - }, -/turf/open/floor/plasteel/delivery, -/area/crew_quarters/hor) -"dnR" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/whitepurple/side{ - dir = 8 - }, -/area/crew_quarters/hor) -"dnS" = ( -/obj/structure/table/reinforced, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/machinery/button/door{ - id = "rdxeno"; - name = "Xenobiology Containment Control"; - pixel_x = -7; - pixel_y = 7; - req_access_txt = "30" - }, -/obj/machinery/button/door{ - id = "rdtoxins"; - name = "Toxins Containment Control"; - pixel_x = -7; - pixel_y = -4; - req_access_txt = "30" - }, -/obj/machinery/button/door{ - id = "rdrnd"; - name = "Research and Development Containment Control"; - pixel_x = 7; - pixel_y = 7; - req_access_txt = "30" - }, -/obj/machinery/button/door{ - id = "rdoffice"; - name = "Privacy Control"; - pixel_x = 7; - pixel_y = -4; - req_access_txt = "30" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/white, -/area/crew_quarters/hor) -"dnT" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/folder/white, -/obj/item/weapon/stamp/rd, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/whitepurple/side{ - dir = 4 - }, -/area/crew_quarters/hor) -"dnU" = ( -/obj/machinery/computer/card/minor/rd, -/obj/machinery/ai_status_display{ - pixel_x = 32 - }, -/turf/open/floor/plasteel/bot, -/area/crew_quarters/hor) -"dnV" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/obj/structure/disposalpipe/segment, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/purple, -/area/medical/research{ - name = "Research Division" - }) -"dnW" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/status_display{ - pixel_x = -32 - }, -/turf/open/floor/plasteel/bot, -/area/assembly/chargebay) -"dnX" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/circuit/gcircuit, -/area/assembly/chargebay) -"dnY" = ( -/turf/open/floor/plasteel/circuit/gcircuit, -/area/assembly/chargebay) -"dnZ" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = 26; - pixel_y = 0 - }, -/turf/open/floor/plasteel/neutral/corner, -/area/hallway/primary/aft) -"doa" = ( -/turf/closed/wall, -/area/medical/genetics) -"dob" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Genetics Desk Maintenance"; - req_access_txt = "9" - }, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/medical/genetics) -"doc" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/closed/wall, -/area/medical/genetics) -"dod" = ( -/turf/closed/wall/r_wall, -/area/medical/genetics) -"doe" = ( -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/medical/genetics) -"dof" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/research{ - name = "Genetics Lab"; - req_access_txt = "9" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/medical/genetics) -"dog" = ( -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/medical/genetics) -"doh" = ( -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/machinery/power/apc{ - dir = 8; - name = "Medbay APC"; - pixel_x = -26; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 8 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"doi" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral, -/area/medical/medbay{ - name = "Medbay Central" - }) -"doj" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/light{ - dir = 4 - }, -/turf/open/floor/plasteel/whiteblue/corner, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dok" = ( -/obj/structure/sign/bluecross_2, -/turf/closed/wall/r_wall, -/area/medical/cmo) -"dol" = ( -/turf/closed/wall/r_wall, -/area/medical/cmo) -"dom" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "cmoshutter"; - name = "CMO Office Shutters" - }, -/turf/open/floor/plating, -/area/medical/cmo) -"don" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 8 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"doo" = ( -/obj/structure/bed/roller, -/obj/machinery/iv_drip, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 1 - }, -/area/medical/surgery) -"dop" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/neutral, -/area/medical/surgery) -"doq" = ( -/obj/structure/bed, -/obj/item/weapon/bedsheet/medical, -/obj/machinery/iv_drip, -/obj/machinery/camera{ - c_tag = "Medbay - Recovery Room"; - dir = 8; - name = "medbay camera" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHWEST)"; - icon_state = "intact"; - dir = 9 - }, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 4 - }, -/area/medical/surgery) -"dor" = ( -/obj/machinery/firealarm{ - dir = 8; - pixel_x = -24; - pixel_y = 0 - }, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 1 - }, -/area/medical/surgery) -"dos" = ( -/turf/open/floor/plasteel/blue, -/area/medical/surgery) -"dot" = ( -/obj/effect/landmark/start{ - name = "Medical Doctor" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHEAST)"; - icon_state = "intact"; - dir = 5 - }, -/turf/open/floor/plasteel/neutral, -/area/medical/surgery) -"dou" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/blue, -/area/medical/surgery) -"dov" = ( -/obj/machinery/airalarm{ - dir = 8; - icon_state = "alarm0"; - pixel_x = 24 - }, -/obj/structure/mirror{ - pixel_x = 26; - pixel_y = 32 - }, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 4 - }, -/area/medical/surgery) -"dow" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral/side{ - dir = 8 - }, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"dox" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/plasteel/delivery, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"doy" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Maintenance Hatch"; - req_access_txt = "12" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/hallway/secondary/construction) -"doz" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/delivery, -/area/hallway/secondary/construction) -"doA" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/hallway/secondary/construction) -"doB" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/hallway/secondary/construction) -"doC" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/plating, -/area/hallway/secondary/construction) -"doD" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/delivery, -/area/hallway/secondary/construction) -"doE" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Maintenance Hatch"; - req_access_txt = "12" - }, -/turf/open/floor/plasteel/warning/side, -/area/hallway/secondary/construction) -"doF" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/delivery, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"doG" = ( -/obj/structure/cable/white, -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/structure/grille, -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/structure/window/reinforced, -/turf/open/floor/plating, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"doH" = ( -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/structure/grille, -/obj/structure/window/reinforced, -/turf/open/floor/plating, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"doI" = ( -/obj/structure/cable/white, -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/structure/grille, -/obj/structure/window/reinforced{ - dir = 1 - }, -/obj/structure/window/reinforced, -/obj/structure/window/reinforced{ - dir = 4 - }, -/turf/open/floor/plating, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"doJ" = ( -/obj/structure/chair/stool, -/turf/open/floor/wood, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"doK" = ( -/obj/structure/table/wood, -/obj/item/device/assembly/igniter, -/obj/item/device/assembly/igniter, -/obj/item/device/assembly/timer{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"doL" = ( -/obj/structure/table, -/obj/item/stack/packageWrap, -/obj/item/weapon/hand_labeler, -/turf/open/floor/plasteel/bot, -/area/medical/research{ - name = "Abandoned Research Lab" - }) -"doM" = ( -/obj/machinery/light/small{ - dir = 1 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/medical/research{ - name = "Abandoned Research Lab" - }) -"doN" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/turf/open/floor/plasteel/delivery, -/area/medical/research{ - name = "Abandoned Research Lab" - }) -"doO" = ( -/obj/structure/table/reinforced, -/obj/item/device/mmi, -/obj/item/device/assembly/prox_sensor, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/medical/research{ - name = "Abandoned Research Lab" - }) -"doP" = ( -/obj/structure/frame/machine, -/obj/item/stack/cable_coil/white, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/medical/research{ - name = "Abandoned Research Lab" - }) -"doQ" = ( -/obj/structure/rack, -/obj/item/weapon/book/manual/robotics_cyborgs, -/obj/item/weapon/storage/belt/utility, -/obj/item/weapon/reagent_containers/glass/beaker/large, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/delivery, -/area/medical/research{ - name = "Abandoned Research Lab" - }) -"doR" = ( -/obj/machinery/mecha_part_fabricator, -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/plasteel/delivery, -/area/medical/research{ - name = "Abandoned Research Lab" - }) -"doS" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/stock_parts/console_screen, -/obj/item/weapon/stock_parts/micro_laser, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/delivery, -/area/medical/research{ - name = "Abandoned Research Lab" - }) -"doT" = ( -/obj/structure/table/reinforced, -/obj/item/stack/sheet/metal{ - amount = 50 - }, -/obj/item/stack/sheet/glass{ - amount = 50 - }, -/obj/item/device/assembly/flash/handheld, -/turf/open/floor/plasteel/bot, -/area/medical/research{ - name = "Abandoned Research Lab" - }) -"doU" = ( -/obj/structure/reagent_dispensers/fueltank, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral/side{ - dir = 8 - }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"doV" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"doW" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHEAST)"; - icon_state = "intact"; - dir = 5 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/toxins/explab) -"doX" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/toxins/explab) -"doY" = ( -/mob/living/simple_animal/pet/dog/pug{ - name = "Swanson" - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/toxins/explab) -"doZ" = ( -/obj/effect/landmark{ - name = "revenantspawn" - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/toxins/explab) -"dpa" = ( -/obj/machinery/r_n_d/experimentor, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/toxins/explab) -"dpb" = ( -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/toxins/explab) -"dpc" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHEAST)"; - icon_state = "intact"; - dir = 5 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/toxins/explab) -"dpd" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/obj/effect/landmark{ - name = "xeno_spawn"; - pixel_x = -1 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/toxins/explab) -"dpe" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/toxins/explab) -"dpf" = ( -/obj/machinery/airalarm{ - dir = 4; - icon_state = "alarm0"; - pixel_x = -22 - }, -/turf/open/floor/plasteel/delivery, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dpg" = ( -/turf/open/floor/plasteel/neutral, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dph" = ( -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = 26; - pixel_y = 26 - }, -/turf/open/floor/plasteel/delivery, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dpi" = ( -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/obj/structure/sign/securearea{ - pixel_x = -32 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/toxins/misc_lab{ - name = "\improper Research Testing Range" - }) -"dpj" = ( -/obj/machinery/light{ - icon_state = "tube1"; - dir = 4 - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/toxins/misc_lab{ - name = "\improper Research Testing Range" - }) -"dpk" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/clipboard, -/obj/item/toy/figure/rd, -/obj/machinery/requests_console{ - announcementConsole = 1; - department = "Research Director's Desk"; - departmentType = 5; - name = "Research Director's RC"; - pixel_x = -32; - pixel_y = 0 - }, -/turf/open/floor/plasteel/bot, -/area/crew_quarters/hor) -"dpl" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/plasteel/whitepurple/corner{ - dir = 8 - }, -/area/crew_quarters/hor) -"dpm" = ( -/obj/machinery/computer/aifixer, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/crew_quarters/hor) -"dpn" = ( -/obj/structure/chair/office/light{ - dir = 1 - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/effect/landmark/start{ - name = "Research Director" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/whitepurple/corner, -/area/crew_quarters/hor) -"dpo" = ( -/obj/machinery/computer/mecha, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/bot, -/area/crew_quarters/hor) -"dpp" = ( -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor/preopen{ - id = "rdoffice"; - name = "Research Director's Shutters" - }, -/turf/open/floor/plating, -/area/crew_quarters/hor) -"dpq" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/plasteel/whitepurple/corner{ - dir = 8 - }, -/area/medical/research{ - name = "Research Division" - }) -"dpr" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/obj/structure/disposalpipe/segment, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/neutral, -/area/medical/research{ - name = "Research Division" - }) -"dps" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/whitepurple/corner, -/area/medical/research{ - name = "Research Division" - }) -"dpt" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plating, -/area/assembly/chargebay) -"dpu" = ( -/obj/machinery/recharge_station, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/bot, -/area/assembly/chargebay) -"dpv" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/effect/decal/cleanable/dirt, -/obj/effect/landmark/start{ - name = "Cyborg" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/assembly/chargebay) -"dpw" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/bot, -/area/assembly/chargebay) -"dpx" = ( -/obj/machinery/computer/mech_bay_power_console, -/turf/open/floor/plasteel/circuit/gcircuit, -/area/assembly/chargebay) -"dpy" = ( -/obj/machinery/mech_bay_recharge_port{ - tag = "icon-recharge_port (WEST)"; - icon_state = "recharge_port"; - dir = 8 - }, -/turf/open/floor/plating/warnplate{ - dir = 6 - }, -/area/assembly/chargebay) -"dpz" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/firealarm{ - dir = 4; - icon_state = "fire0"; - pixel_x = 24; - pixel_y = -26; - tag = "icon-fire0 (EAST)" - }, -/obj/machinery/light_switch{ - pixel_x = 26; - pixel_y = -38 - }, -/turf/open/floor/plasteel/delivery, -/area/assembly/chargebay) -"dpA" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/warning/corner{ - dir = 4 - }, -/area/hallway/primary/aft) -"dpB" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/purple/corner, -/area/hallway/primary/aft) -"dpC" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1 - }, -/obj/machinery/firealarm{ - dir = 8; - pixel_x = -24; - pixel_y = 0 - }, -/turf/open/floor/plasteel/bot, -/area/medical/genetics) -"dpD" = ( -/obj/structure/extinguisher_cabinet{ - pixel_y = 32 - }, -/turf/open/floor/plasteel/whitepurple/corner{ - dir = 1 - }, -/area/medical/genetics) -"dpE" = ( -/turf/open/floor/plasteel/whitepurple/corner{ - dir = 1 - }, -/area/medical/genetics) -"dpF" = ( -/obj/machinery/newscaster{ - pixel_y = 32 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/whitepurple/corner{ - dir = 4 - }, -/area/medical/genetics) -"dpG" = ( -/obj/structure/table/glass, -/obj/item/weapon/storage/box/beakers{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/storage/box/masks, -/turf/open/floor/plasteel/whitepurple/corner{ - dir = 4 - }, -/area/medical/genetics) -"dpH" = ( -/obj/machinery/status_display, -/turf/closed/wall/r_wall, -/area/medical/genetics) -"dpI" = ( -/obj/structure/table/reinforced, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = 0; - pixel_y = 26 - }, -/obj/item/clothing/gloves/color/latex, -/obj/item/weapon/storage/box/disks, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/medical/genetics) -"dpJ" = ( -/obj/machinery/computer/scan_consolenew, -/obj/machinery/light{ - dir = 1 - }, -/obj/structure/noticeboard{ - pixel_y = 32 - }, -/turf/open/floor/plasteel/warning/end{ - tag = "icon-plasteel_warn_end (WEST)"; - icon_state = "plasteel_warn_end"; - dir = 8 - }, -/area/medical/genetics) -"dpK" = ( -/obj/machinery/dna_scannernew, -/turf/open/floor/plasteel/warning/end{ - tag = "icon-plasteel_warn_end (EAST)"; - icon_state = "plasteel_warn_end"; - dir = 4 - }, -/area/medical/genetics) -"dpL" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1 - }, -/obj/machinery/firealarm{ - pixel_x = -26; - pixel_y = 26 - }, -/turf/open/floor/plasteel/whitepurple/side{ - tag = "icon-whitepurple (WEST)"; - icon_state = "whitepurple"; - dir = 8 - }, -/area/medical/genetics) -"dpM" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/white, -/area/medical/genetics) -"dpN" = ( -/obj/machinery/button/door{ - id = "geneticslab"; - name = "Genetics Lab Shutters"; - pixel_x = 26; - pixel_y = 26; - req_access_txt = "9" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/whitepurple/side{ - dir = 4 - }, -/area/medical/genetics) -"dpO" = ( -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/structure/window/reinforced{ - dir = 1; - layer = 2.9 - }, -/obj/structure/window/reinforced{ - dir = 4; - pixel_x = 0 - }, -/obj/effect/decal/cleanable/dirt, -/mob/living/carbon/monkey, -/turf/open/floor/plasteel/warning/end{ - tag = "icon-plasteel_warn_end (NORTH)"; - icon_state = "plasteel_warn_end"; - dir = 1 - }, -/area/medical/genetics) -"dpP" = ( -/obj/structure/cable/white{ - tag = "icon-0-2"; - icon_state = "0-2" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "geneticslab"; - name = "Genetics Lab Shutters" - }, -/turf/open/floor/plating, -/area/medical/genetics) -"dpQ" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/whitepurple/corner{ - dir = 8 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dpR" = ( -/obj/structure/cable/white{ - tag = "icon-0-2"; - icon_state = "0-2" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "cmoshutter"; - name = "CMO Office Shutters" - }, -/turf/open/floor/plating, -/area/medical/cmo) -"dpS" = ( -/obj/structure/filingcabinet/chestdrawer, -/obj/machinery/firealarm{ - pixel_y = 26 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/medical/cmo) -"dpT" = ( -/obj/structure/table/glass, -/obj/item/weapon/folder/blue, -/obj/item/weapon/cartridge/medical{ - pixel_x = -3 - }, -/obj/item/weapon/cartridge/medical{ - pixel_x = 3 - }, -/obj/item/weapon/cartridge/chemistry{ - pixel_x = 0; - pixel_y = 6 - }, -/turf/open/floor/plasteel/cmo, -/area/medical/cmo) -"dpU" = ( -/obj/structure/table/glass, -/obj/item/weapon/folder/white, -/obj/item/device/flashlight/pen, -/obj/item/clothing/neck/stethoscope, -/turf/open/floor/plasteel/cmo, -/area/medical/cmo) -"dpV" = ( -/obj/structure/table/glass, -/obj/item/weapon/storage/firstaid/regular, -/turf/open/floor/plasteel/cmo, -/area/medical/cmo) -"dpW" = ( -/obj/structure/table/glass, -/obj/item/weapon/folder/blue, -/obj/item/clothing/glasses/hud/health, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = 0; - pixel_y = 26 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 8; - heat_capacity = 1e+006 - }, -/area/medical/cmo) -"dpX" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/blue, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dpY" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/whiteblue/corner, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dpZ" = ( -/obj/machinery/door/firedoor, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/door/airlock/medical{ - name = "Recovery Room" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/medical/surgery) -"dqa" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/whiteblue/side{ - dir = 8 - }, -/area/medical/surgery) -"dqb" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/effect/landmark/start{ - name = "Medical Doctor" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plasteel/blue, -/area/medical/surgery) -"dqc" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/whiteblue/side{ - dir = 4 - }, -/area/medical/surgery) -"dqd" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/medical{ - name = "Surgery Theatre"; - req_access_txt = "45" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/medical/surgery) -"dqe" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 8 - }, -/area/medical/surgery) -"dqf" = ( -/obj/machinery/computer/operating, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plasteel/neutral, -/area/medical/surgery) -"dqg" = ( -/obj/structure/table/optable, -/obj/effect/decal/cleanable/blood/old, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/blue, -/area/medical/surgery) -"dqh" = ( -/obj/machinery/holopad, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/bot, -/area/medical/surgery) -"dqi" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/whiteblue/corner, -/area/medical/surgery) -"dqj" = ( -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Surgery Maintenance"; - req_access_txt = "45" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/medical/surgery) -"dqk" = ( -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/delivery, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"dql" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"dqm" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/yellow/corner{ - dir = 8 - }, -/area/hallway/secondary/construction) -"dqn" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/hallway/secondary/construction) -"dqo" = ( -/obj/structure/table, -/obj/item/device/analyzer, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/bot, -/area/hallway/secondary/construction) -"dqp" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"dqq" = ( -/obj/structure/rack, -/obj/effect/decal/cleanable/dirt, -/obj/item/weapon/weldingtool, -/obj/item/device/assembly/voice, -/obj/item/clothing/head/welding, -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plasteel/warning{ - dir = 9 - }, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"dqr" = ( -/obj/machinery/light/small{ - dir = 1 - }, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/oil, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"dqs" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/cobweb/cobweb2, -/obj/structure/reagent_dispensers/fueltank, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"dqt" = ( -/obj/structure/table/wood, -/obj/machinery/newscaster{ - pixel_x = -32 - }, -/obj/machinery/light/small{ - dir = 8 - }, -/obj/effect/decal/cleanable/dirt, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 2; - name = "2maintenance loot spawner" - }, -/turf/open/floor/plasteel/black, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"dqu" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"dqv" = ( -/turf/open/floor/wood{ - tag = "icon-wood-broken7"; - icon_state = "wood-broken7" - }, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"dqw" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/turf/open/floor/plasteel/black, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"dqx" = ( -/obj/structure/table, -/obj/machinery/cell_charger, -/obj/item/weapon/stock_parts/cell/high, -/turf/open/floor/plasteel/bot, -/area/medical/research{ - name = "Abandoned Research Lab" - }) -"dqy" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning{ - dir = 5 - }, -/area/medical/research{ - name = "Abandoned Research Lab" - }) -"dqz" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/paper_bin, -/obj/item/weapon/pen, -/turf/open/floor/plasteel/bot, -/area/medical/research{ - name = "Abandoned Research Lab" - }) -"dqA" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/effect/landmark{ - name = "blobstart" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"dqB" = ( -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/toxins/explab) -"dqC" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/light, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/toxins/explab) -"dqD" = ( -/obj/machinery/camera{ - c_tag = "Science - Experimentor"; - dir = 1; - name = "science camera"; - network = list("SS13","RD") - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/toxins/explab) -"dqE" = ( -/obj/machinery/portable_atmospherics/scrubber, -/obj/machinery/atmospherics/components/unary/portables_connector/visible{ - dir = 4 - }, -/obj/machinery/camera{ - c_tag = "Science - Toxins Mixing Lab Fore"; - dir = 4; - name = "science camera"; - network = list("SS13","RD") - }, -/turf/open/floor/plasteel/escape{ - tag = "icon-escape (WEST)"; - icon_state = "escape"; - dir = 8 - }, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dqF" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHWEST)"; - icon_state = "intact"; - dir = 10 - }, -/turf/open/floor/plasteel/whitepurple/corner{ - dir = 1 - }, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dqG" = ( -/obj/machinery/atmospherics/components/unary/vent_pump, -/turf/open/floor/plasteel/neutral, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dqH" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible{ - icon_state = "intact"; - dir = 6 - }, -/turf/open/floor/plasteel/whitepurple/corner{ - dir = 4 - }, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dqI" = ( -/obj/machinery/atmospherics/components/unary/thermomachine/heater{ - tag = "icon-heater (WEST)"; - icon_state = "heater"; - dir = 8; - on = 1 - }, -/turf/open/floor/plasteel/warning{ - dir = 9 - }, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dqJ" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/camera{ - c_tag = "Science - Firing Range"; - dir = 4; - name = "science camera"; - network = list("SS13","RD") - }, -/turf/open/floor/plating/warnplate{ - dir = 8 - }, -/area/toxins/misc_lab{ - name = "\improper Research Testing Range" - }) -"dqK" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating{ - icon_state = "panelscorched" - }, -/area/toxins/misc_lab{ - name = "\improper Research Testing Range" - }) -"dqL" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating/warnplate{ - dir = 4 - }, -/area/toxins/misc_lab{ - name = "\improper Research Testing Range" - }) -"dqM" = ( -/obj/structure/table/reinforced, -/obj/machinery/light, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/item/weapon/storage/secure/briefcase, -/obj/item/device/taperecorder, -/obj/machinery/newscaster{ - pixel_y = -32 - }, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = -26; - pixel_y = -26 - }, -/turf/open/floor/plasteel/bot, -/area/crew_quarters/hor) -"dqN" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/whitepurple/corner{ - dir = 8 - }, -/area/crew_quarters/hor) -"dqO" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/whitepurple/side, -/area/crew_quarters/hor) -"dqP" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/whitepurple/corner, -/area/crew_quarters/hor) -"dqQ" = ( -/obj/machinery/computer/robotics, -/obj/machinery/light, -/obj/machinery/status_display{ - pixel_x = 32 - }, -/obj/machinery/keycard_auth{ - pixel_x = -5; - pixel_y = -26 - }, -/obj/machinery/light_switch{ - pixel_x = 5; - pixel_y = -26 - }, -/turf/open/floor/plasteel/bot, -/area/crew_quarters/hor) -"dqR" = ( -/obj/structure/disposalpipe/segment, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/purple, -/area/medical/research{ - name = "Research Division" - }) -"dqS" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment, -/obj/machinery/camera{ - c_tag = "Science - Aft Center"; - dir = 8; - name = "science camera"; - network = list("SS13","RD") - }, -/turf/open/floor/plasteel/whitepurple/corner, -/area/medical/research{ - name = "Research Division" - }) -"dqT" = ( -/obj/structure/table, -/obj/effect/decal/cleanable/dirt, -/obj/item/stack/packageWrap, -/obj/item/weapon/hand_labeler, -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/obj/structure/extinguisher_cabinet{ - pixel_x = -26 - }, -/turf/open/floor/plasteel/bot, -/area/assembly/chargebay) -"dqU" = ( -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/turf/open/floor/plasteel/warning{ - dir = 10 - }, -/area/assembly/chargebay) -"dqV" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/warning, -/area/assembly/chargebay) -"dqW" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/camera{ - c_tag = "Science - Mech Bay"; - dir = 1; - name = "science camera"; - network = list("SS13","RD") - }, -/turf/open/floor/plasteel/warning, -/area/assembly/chargebay) -"dqX" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/warning, -/area/assembly/chargebay) -"dqY" = ( -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/turf/open/floor/plasteel/warning, -/area/assembly/chargebay) -"dqZ" = ( -/turf/open/floor/plasteel/warning{ - dir = 6 - }, -/area/assembly/chargebay) -"dra" = ( -/obj/structure/reagent_dispensers/fueltank, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/light{ - icon_state = "tube1"; - dir = 4 - }, -/turf/open/floor/plasteel/bot, -/area/assembly/chargebay) -"drb" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral/corner{ - dir = 8 - }, -/area/hallway/primary/aft) -"drc" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/aft) -"drd" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/sortjunction{ - dir = 1; - icon_state = "pipe-j1s"; - name = "Genetics Junction"; - sortType = 23 - }, -/turf/open/floor/plasteel/purple/corner, -/area/hallway/primary/aft) -"dre" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/research{ - name = "Genetics Desk"; - req_access_txt = "9" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/medical/genetics) -"drf" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/bot, -/area/medical/genetics) -"drg" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/whitepurple/corner{ - dir = 1 - }, -/area/medical/genetics) -"drh" = ( -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/neutral, -/area/medical/genetics) -"dri" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral, -/area/medical/genetics) -"drj" = ( -/obj/structure/table/glass, -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/item/weapon/clipboard, -/obj/item/toy/figure/geneticist, -/obj/machinery/power/apc{ - dir = 4; - name = "Genetics Lab APC"; - pixel_x = 26; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/whitepurple/corner{ - dir = 4 - }, -/area/medical/genetics) -"drk" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall/r_wall, -/area/medical/genetics) -"drl" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/folder/white, -/obj/item/weapon/storage/pill_bottle/mutadone, -/obj/item/weapon/storage/pill_bottle/mannitol, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/camera{ - c_tag = "Medbay - Genetics Lab"; - dir = 4; - name = "medbay camera" - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/medical/genetics) -"drm" = ( -/obj/structure/chair/office/light{ - dir = 8 - }, -/obj/effect/landmark/start{ - name = "Geneticist" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/whitepurple/side{ - dir = 9 - }, -/area/medical/genetics) -"drn" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/whitepurple/side{ - tag = "icon-whitepurple (NORTH)"; - icon_state = "whitepurple"; - dir = 1 - }, -/area/medical/genetics) -"dro" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/whitepurple/corner{ - dir = 1 - }, -/area/medical/genetics) -"drp" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral, -/area/medical/genetics) -"drq" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plasteel/whitepurple/side{ - dir = 4 - }, -/area/medical/genetics) -"drr" = ( -/obj/structure/window/reinforced{ - dir = 4; - pixel_x = 0 - }, -/obj/machinery/door/window/westright{ - name = "'Monkey Pen"; - req_access_txt = "9" - }, -/obj/effect/decal/cleanable/dirt, -/mob/living/carbon/monkey, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (NORTH)"; - icon_state = "plasteel_warn_side"; - dir = 1 - }, -/area/medical/genetics) -"drs" = ( -/obj/structure/cable/white{ - tag = "icon-0-2"; - icon_state = "0-2" - }, -/obj/structure/cable/white, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "geneticslab"; - name = "Genetics Lab Shutters" - }, -/turf/open/floor/plating, -/area/medical/genetics) -"drt" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/plasteel/whitepurple/corner{ - dir = 8 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dru" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral, -/area/medical/medbay{ - name = "Medbay Central" - }) -"drv" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/whiteblue/corner, -/area/medical/medbay{ - name = "Medbay Central" - }) -"drw" = ( -/obj/machinery/door/airlock/command{ - name = "Chief Medical Officer's Office"; - req_access_txt = "40" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/medical/cmo) -"drx" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/medical/cmo) -"dry" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHWEST)"; - icon_state = "intact"; - dir = 10 - }, -/turf/open/floor/plasteel/cmo, -/area/medical/cmo) -"drz" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/cmo, -/area/medical/cmo) -"drA" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHEAST)"; - icon_state = "intact"; - dir = 6 - }, -/turf/open/floor/plasteel/cmo, -/area/medical/cmo) -"drB" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 8; - heat_capacity = 1e+006 - }, -/area/medical/cmo) -"drC" = ( -/obj/machinery/door/airlock/command{ - name = "Chief Medical Officer's Office"; - req_access_txt = "40" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/medical/cmo) -"drD" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 8 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"drE" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/effect/landmark{ - name = "lightsout" - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/neutral, -/area/medical/medbay{ - name = "Medbay Central" - }) -"drF" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plasteel/whiteblue/corner, -/area/medical/medbay{ - name = "Medbay Central" - }) -"drG" = ( -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 8 - }, -/area/medical/surgery) -"drH" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/turf/open/floor/plasteel/neutral, -/area/medical/surgery) -"drI" = ( -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/turf/open/floor/plasteel/whiteblue/corner, -/area/medical/surgery) -"drJ" = ( -/obj/machinery/light_switch{ - pixel_x = -26 - }, -/obj/structure/sink{ - dir = 8; - icon_state = "sink"; - pixel_x = -12 - }, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 8 - }, -/area/medical/surgery) -"drK" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 8 - }, -/area/medical/surgery) -"drL" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/whiteblue/side, -/area/medical/surgery) -"drM" = ( -/turf/open/floor/plasteel/whiteblue/corner, -/area/medical/surgery) -"drN" = ( -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = 26; - pixel_y = 0 - }, -/turf/open/floor/plasteel/whiteblue/corner, -/area/medical/surgery) -"drO" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral/side{ - dir = 8 - }, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"drP" = ( -/obj/structure/rack, -/obj/machinery/light/small{ - dir = 8 - }, -/obj/item/weapon/storage/toolbox/emergency{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/weapon/storage/toolbox/electrical, -/turf/open/floor/plasteel/bot, -/area/hallway/secondary/construction) -"drQ" = ( -/turf/open/floor/plating/warnplate/corner, -/area/hallway/secondary/construction) -"drR" = ( -/turf/open/floor/plating/warnplate, -/area/hallway/secondary/construction) -"drS" = ( -/turf/open/floor/plating/warnplate/corner{ - dir = 1 - }, -/area/hallway/secondary/construction) -"drT" = ( -/obj/structure/chair/office/light{ - dir = 4 - }, -/turf/open/floor/plating, -/area/hallway/secondary/construction) -"drU" = ( -/obj/structure/table, -/obj/machinery/light/small{ - dir = 4 - }, -/obj/item/weapon/clipboard, -/obj/item/weapon/folder/yellow, -/obj/item/weapon/electronics/firealarm, -/obj/item/weapon/stock_parts/console_screen, -/turf/open/floor/plasteel/bot, -/area/hallway/secondary/construction) -"drV" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/plasteel/delivery, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"drW" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"drX" = ( -/obj/effect/landmark{ - name = "xeno_spawn"; - pixel_x = -1 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/plasteel/warning, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"drY" = ( -/obj/structure/closet/firecloset, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning{ - dir = 6 - }, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"drZ" = ( -/obj/structure/chair/wood/normal{ - tag = "icon-wooden_chair (NORTH)"; - icon_state = "wooden_chair"; - dir = 1 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"dsa" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"dsb" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"dsc" = ( -/obj/structure/chair/stool/bar, -/turf/open/floor/wood, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"dsd" = ( -/obj/structure/chair/stool/bar, -/turf/open/floor/wood{ - icon_state = "wood-broken" - }, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"dse" = ( -/mob/living/simple_animal/cockroach, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"dsf" = ( -/obj/machinery/recharge_station, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/delivery, -/area/medical/research{ - name = "Abandoned Research Lab" - }) -"dsg" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/medical/research{ - name = "Abandoned Research Lab" - }) -"dsh" = ( -/turf/open/floor/plasteel/circuit/gcircuit, -/area/medical/research{ - name = "Abandoned Research Lab" - }) -"dsi" = ( -/obj/machinery/computer/mech_bay_power_console, -/turf/open/floor/plasteel/circuit/gcircuit, -/area/medical/research{ - name = "Abandoned Research Lab" - }) -"dsj" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/delivery, -/area/medical/research{ - name = "Abandoned Research Lab" - }) -"dsk" = ( -/turf/open/floor/plasteel/neutral, -/area/medical/research{ - name = "Abandoned Research Lab" - }) -"dsl" = ( -/obj/effect/decal/cleanable/oil, -/turf/open/floor/plasteel/delivery, -/area/medical/research{ - name = "Abandoned Research Lab" - }) -"dsm" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/light_switch{ - pixel_x = 26 - }, -/turf/open/floor/plasteel/delivery, -/area/medical/research{ - name = "Abandoned Research Lab" - }) -"dsn" = ( -/obj/machinery/portable_atmospherics/scrubber, -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/obj/structure/sign/nosmoking_2{ - pixel_x = -32 - }, -/obj/machinery/atmospherics/components/unary/portables_connector/visible{ - dir = 4 - }, -/turf/open/floor/plasteel/escape{ - tag = "icon-escape (WEST)"; - icon_state = "escape"; - dir = 8 - }, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dso" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plasteel/whitepurple/corner{ - dir = 1 - }, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dsp" = ( -/obj/effect/landmark/start{ - name = "Scientist" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dsq" = ( -/obj/machinery/atmospherics/pipe/manifold/general/visible{ - dir = 8 - }, -/turf/open/floor/plasteel/whitepurple/corner{ - dir = 4 - }, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dsr" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible{ - tag = "icon-connector_map (WEST)"; - icon_state = "connector_map"; - dir = 8 - }, -/obj/machinery/portable_atmospherics/canister/oxygen, -/obj/machinery/light{ - icon_state = "tube1"; - dir = 4 - }, -/obj/structure/extinguisher_cabinet{ - pixel_x = 26 - }, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dss" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plating, -/area/toxins/misc_lab{ - name = "\improper Research Testing Range" - }) -"dst" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/turf/open/floor/plating, -/area/toxins/misc_lab{ - name = "\improper Research Testing Range" - }) -"dsu" = ( -/turf/closed/wall, -/area/crew_quarters/hor) -"dsv" = ( -/obj/structure/cable/white, -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/tinted/fulltile, -/turf/open/floor/plating, -/area/crew_quarters/hor) -"dsw" = ( -/obj/machinery/door/firedoor, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/machinery/door/airlock/command{ - name = "Research Director's Quarters"; - req_access = null; - req_access_txt = "30" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/crew_quarters/hor) -"dsx" = ( -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/tinted/fulltile, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/crew_quarters/hor) -"dsy" = ( -/obj/structure/disposalpipe/segment, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/door/firedoor, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (EAST)"; - icon_state = "plasteel_warn_side"; - dir = 4 - }, -/area/medical/research{ - name = "Research Division" - }) -"dsz" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment, -/obj/machinery/door/firedoor, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (EAST)"; - icon_state = "plasteel_warn_side"; - dir = 4 - }, -/area/medical/research{ - name = "Research Division" - }) -"dsA" = ( -/turf/closed/wall, -/area/assembly/robotics) -"dsB" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "roboticsprivacy"; - name = "Robotics Shutters" - }, -/turf/open/floor/plating, -/area/assembly/robotics) -"dsC" = ( -/obj/structure/sign/science, -/turf/closed/wall, -/area/assembly/robotics) -"dsD" = ( -/obj/machinery/door/firedoor, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/door/airlock/glass_research{ - name = "Robotics Lab"; - req_access_txt = "29" - }, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/assembly/robotics) -"dsE" = ( -/turf/closed/wall/r_wall, -/area/assembly/robotics) -"dsF" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment, -/obj/machinery/door/firedoor, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (EAST)"; - icon_state = "plasteel_warn_side"; - dir = 4 - }, -/area/hallway/primary/aft) -"dsG" = ( -/obj/structure/table/glass, -/obj/machinery/airalarm{ - dir = 4; - locked = 0; - pixel_x = -23; - pixel_y = 0 - }, -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/obj/item/weapon/folder/white, -/obj/item/weapon/storage/box/disks, -/obj/machinery/camera{ - c_tag = "Medbay - Genetics Desk"; - dir = 4; - name = "medbay camera" - }, -/turf/open/floor/plasteel/whitepurple/side{ - dir = 8 - }, -/area/medical/genetics) -"dsH" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/neutral, -/area/medical/genetics) -"dsI" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/medical/genetics) -"dsJ" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/whitepurple/side{ - dir = 4 - }, -/area/medical/genetics) -"dsK" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/research{ - name = "Genetics Lab"; - req_access_txt = "9" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/medical/genetics) -"dsL" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/medical/genetics) -"dsM" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/whitepurple/side{ - tag = "icon-whitepurple (WEST)"; - icon_state = "whitepurple"; - dir = 8 - }, -/area/medical/genetics) -"dsN" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/medical/genetics) -"dsO" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/medical/genetics) -"dsP" = ( -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/machinery/holopad, -/obj/effect/landmark/start{ - name = "Geneticist" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHWEST)"; - icon_state = "intact"; - dir = 9 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/medical/genetics) -"dsQ" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_Toxins = 0 - }, -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/whitepurple/side{ - dir = 4 - }, -/area/medical/genetics) -"dsR" = ( -/obj/structure/window/reinforced{ - dir = 4; - pixel_x = 0 - }, -/obj/machinery/door/window/westleft{ - name = "'Monkey Pen"; - req_access_txt = "9" - }, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (NORTH)"; - icon_state = "plasteel_warn_side"; - dir = 1 - }, -/area/medical/genetics) -"dsS" = ( -/obj/structure/cable/white{ - tag = "icon-0-2"; - icon_state = "0-2" - }, -/obj/structure/cable/white, -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "geneticslab"; - name = "Genetics Lab Shutters" - }, -/turf/open/floor/plating, -/area/medical/genetics) -"dsT" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/plasteel/whitepurple/corner{ - dir = 8 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dsU" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_Toxins = 0 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/blue, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dsV" = ( -/obj/structure/cable/white, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "cmoshutter"; - name = "CMO Office Shutters" - }, -/turf/open/floor/plating, -/area/medical/cmo) -"dsW" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/medical/cmo) -"dsX" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/cmo, -/area/medical/cmo) -"dsY" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/plasteel/cmo, -/area/medical/cmo) -"dsZ" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plasteel/cmo, -/area/medical/cmo) -"dta" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 8; - heat_capacity = 1e+006 - }, -/area/medical/cmo) -"dtb" = ( -/obj/structure/table, -/obj/machinery/firealarm{ - dir = 8; - pixel_x = -24; - pixel_y = 0 - }, -/obj/machinery/ai_status_display{ - pixel_y = -32 - }, -/obj/item/clothing/suit/straight_jacket, -/obj/item/clothing/mask/muzzle, -/obj/item/clothing/glasses/sunglasses/blindfold, -/obj/item/clothing/ears/earmuffs, -/obj/item/weapon/gun/syringe, -/obj/item/clothing/glasses/eyepatch, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 8 - }, -/area/medical/surgery) -"dtc" = ( -/obj/machinery/computer/med_data, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = 0; - pixel_y = -26 - }, -/turf/open/floor/plasteel/whiteblue/side, -/area/medical/surgery) -"dtd" = ( -/obj/machinery/computer/crew, -/obj/machinery/status_display{ - pixel_y = -32 - }, -/turf/open/floor/plasteel/whiteblue/corner, -/area/medical/surgery) -"dte" = ( -/obj/structure/closet/secure_closet/medical2, -/obj/structure/sign/poster{ - icon_state = "poster3_legit"; - pixel_x = -32; - pixel_y = 0; - tag = "icon-poster3_legit" - }, -/turf/open/floor/plasteel/vault, -/area/medical/surgery) -"dtf" = ( -/obj/machinery/ai_status_display{ - pixel_y = -32 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/turf/open/floor/plasteel/vault, -/area/medical/surgery) -"dtg" = ( -/obj/structure/cable/white, -/obj/machinery/power/apc{ - dir = 2; - name = "Surgery APC"; - pixel_y = -26 - }, -/obj/machinery/camera{ - c_tag = "Medbay - Surgery"; - dir = 1; - name = "medbay camera" - }, -/turf/open/floor/plasteel/vault, -/area/medical/surgery) -"dth" = ( -/obj/machinery/status_display{ - pixel_y = -32 - }, -/turf/open/floor/plasteel/vault, -/area/medical/surgery) -"dti" = ( -/obj/structure/closet/crate/freezer/blood, -/obj/machinery/vending/wallmed{ - name = "Emergency NanoMed"; - pixel_x = 26; - pixel_y = 0; - req_access_txt = "0"; - use_power = 0 - }, -/turf/open/floor/plasteel/vault, -/area/medical/surgery) -"dtj" = ( -/obj/structure/table, -/obj/item/weapon/stock_parts/cell/high, -/obj/item/weapon/stock_parts/cell/high, -/obj/machinery/cell_charger, -/turf/open/floor/plasteel/bot, -/area/hallway/secondary/construction) -"dtk" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/delivery, -/area/hallway/secondary/construction) -"dtl" = ( -/obj/machinery/power/apc{ - dir = 2; - name = "Auxiliary Construction Zone APC"; - pixel_y = -26 - }, -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/turf/open/floor/plasteel/bot, -/area/hallway/secondary/construction) -"dtm" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/turf/open/floor/plasteel/delivery, -/area/hallway/secondary/construction) -"dtn" = ( -/obj/structure/table, -/obj/item/device/flashlight/lamp, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/bot, -/area/hallway/secondary/construction) -"dto" = ( -/obj/structure/table, -/obj/item/weapon/paper_bin, -/obj/item/weapon/pen, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/bot, -/area/hallway/secondary/construction) -"dtp" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"dtq" = ( -/obj/structure/table/wood, -/obj/machinery/newscaster{ - pixel_y = -32 - }, -/obj/machinery/light/small, -/obj/effect/decal/cleanable/dirt, -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plasteel/black, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"dtr" = ( -/obj/structure/table/wood/poker, -/obj/item/device/flashlight/lamp, -/turf/open/floor/plating, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"dts" = ( -/obj/structure/table/wood/poker, -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/wood{ - icon_state = "wood-broken5" - }, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"dtt" = ( -/obj/structure/table/wood/poker, -/obj/item/weapon/storage/box/matches{ - pixel_x = -3; - pixel_y = 5 - }, -/turf/open/floor/wood, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"dtu" = ( -/obj/structure/table/wood/poker, -/obj/effect/decal/cleanable/dirt, -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/wood, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"dtv" = ( -/obj/structure/table/wood/poker, -/obj/item/weapon/storage/fancy/cigarettes/dromedaryco{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/storage/fancy/cigarettes/dromedaryco, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/black, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"dtw" = ( -/obj/machinery/airalarm{ - dir = 1; - icon_state = "alarm0"; - pixel_y = -22 - }, -/turf/open/floor/plating, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"dtx" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/status_display{ - pixel_x = -32 - }, -/turf/open/floor/plasteel/delivery, -/area/medical/research{ - name = "Abandoned Research Lab" - }) -"dty" = ( -/turf/open/floor/plasteel/bot, -/area/medical/research{ - name = "Abandoned Research Lab" - }) -"dtz" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/mech_bay_recharge_floor, -/area/medical/research{ - name = "Abandoned Research Lab" - }) -"dtA" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/neutral, -/area/medical/research{ - name = "Abandoned Research Lab" - }) -"dtB" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/obj/effect/landmark{ - name = "xeno_spawn"; - pixel_x = -1 - }, -/turf/open/floor/plasteel/neutral, -/area/medical/research{ - name = "Abandoned Research Lab" - }) -"dtC" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/neutral, -/area/medical/research{ - name = "Abandoned Research Lab" - }) -"dtD" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/medical/research{ - name = "Abandoned Research Lab" - }) -"dtE" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/delivery, -/area/medical/research{ - name = "Abandoned Research Lab" - }) -"dtF" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/obj/structure/barricade/wooden, -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Maintenance Hatch"; - req_access_txt = "12" - }, -/turf/open/floor/plasteel/warning/side, -/area/medical/research{ - name = "Abandoned Research Lab" - }) -"dtG" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHEAST)"; - icon_state = "intact"; - dir = 5 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"dtH" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 1 - }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"dtI" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 1 - }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"dtJ" = ( -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 1 - }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"dtK" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHWEST)"; - icon_state = "intact"; - dir = 10 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"dtL" = ( -/obj/machinery/portable_atmospherics/pump, -/obj/machinery/atmospherics/components/unary/portables_connector/visible{ - dir = 4 - }, -/turf/open/floor/plasteel/arrival{ - tag = "icon-arrival (WEST)"; - icon_state = "arrival"; - dir = 8 - }, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dtM" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/whitepurple/corner{ - dir = 1 - }, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dtN" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dtO" = ( -/obj/machinery/atmospherics/pipe/manifold/general/visible{ - dir = 8 - }, -/obj/machinery/meter, -/turf/open/floor/plasteel/whitepurple/corner{ - dir = 4 - }, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dtP" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible{ - tag = "icon-connector_map (WEST)"; - icon_state = "connector_map"; - dir = 8 - }, -/obj/structure/sign/fire{ - pixel_x = 32 - }, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dtQ" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating/warnplate{ - dir = 9 - }, -/area/toxins/misc_lab{ - name = "\improper Research Testing Range" - }) -"dtR" = ( -/turf/open/floor/plating/warnplate{ - dir = 5 - }, -/area/toxins/misc_lab{ - name = "\improper Research Testing Range" - }) -"dtS" = ( -/obj/structure/closet/secure_closet/RD, -/obj/machinery/computer/security/telescreen/entertainment{ - pixel_x = -32 - }, -/turf/open/floor/plasteel/warning{ - dir = 5 - }, -/area/crew_quarters/hor) -"dtT" = ( -/turf/open/floor/plasteel/whitepurple/corner{ - dir = 4 - }, -/area/crew_quarters/hor) -"dtU" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/whitepurple/corner{ - dir = 4 - }, -/area/crew_quarters/hor) -"dtV" = ( -/obj/machinery/light_switch{ - pixel_x = 26; - pixel_y = 26 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/whitepurple/corner{ - dir = 4 - }, -/area/crew_quarters/hor) -"dtW" = ( -/obj/structure/dresser, -/obj/item/weapon/storage/secure/safe{ - pixel_x = 32 - }, -/turf/open/floor/plasteel/whitepurple/corner{ - dir = 4 - }, -/area/crew_quarters/hor) -"dtX" = ( -/obj/item/stack/sheet/metal{ - amount = 50 - }, -/obj/item/stack/sheet/metal{ - amount = 50 - }, -/obj/item/stack/sheet/metal{ - amount = 50 - }, -/obj/item/stack/sheet/glass{ - amount = 50 - }, -/obj/structure/table/reinforced, -/obj/machinery/requests_console{ - department = "Robotics Lab"; - departmentType = 0; - name = "Robotics RC"; - pixel_x = 0; - pixel_y = 32 - }, -/obj/structure/extinguisher_cabinet{ - pixel_x = -26 - }, -/turf/open/floor/plasteel/bot, -/area/assembly/robotics) -"dtY" = ( -/obj/item/weapon/paper_bin, -/obj/item/device/assembly/prox_sensor{ - pixel_x = 5; - pixel_y = 7 - }, -/obj/item/device/assembly/prox_sensor{ - pixel_x = 5; - pixel_y = 7 - }, -/obj/item/device/assembly/prox_sensor{ - pixel_x = 5; - pixel_y = 7 - }, -/obj/structure/table/reinforced, -/turf/open/floor/plasteel/bot, -/area/assembly/robotics) -"dtZ" = ( -/obj/machinery/mecha_part_fabricator, -/turf/open/floor/plasteel/delivery, -/area/assembly/robotics) -"dua" = ( -/obj/structure/rack, -/obj/item/weapon/book/manual/robotics_cyborgs, -/obj/item/weapon/storage/belt/utility/full, -/obj/machinery/light{ - dir = 1 - }, -/obj/item/weapon/circuitboard/mecha/ripley/main, -/obj/item/weapon/circuitboard/mecha/ripley/peripherals, -/turf/open/floor/plasteel/bot, -/area/assembly/robotics) -"dub" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/delivery, -/area/assembly/robotics) -"duc" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/clipboard, -/obj/item/toy/figure/roboticist, -/obj/machinery/button/door{ - id = "roboticsprivacy"; - name = "Robotics Privacy Control"; - pixel_x = 26; - pixel_y = 26; - req_access_txt = "29" - }, -/obj/machinery/light_switch{ - pixel_x = 26; - pixel_y = 38 - }, -/turf/open/floor/plasteel/bot, -/area/assembly/robotics) -"dud" = ( -/obj/structure/sign/science{ - pixel_x = -32; - pixel_y = 32 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/purple/corner{ - tag = "icon-purplecorner (WEST)"; - icon_state = "purplecorner"; - dir = 8 - }, -/area/hallway/primary/aft) -"due" = ( -/obj/structure/sign/science{ - pixel_x = 32; - pixel_y = 32 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/purple/corner, -/area/hallway/primary/aft) -"duf" = ( -/obj/structure/table/reinforced, -/obj/machinery/door/firedoor, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "geneticsdesk"; - name = "Genetics Desk Shutters" - }, -/obj/machinery/door/window/westright{ - dir = 4; - name = "Genetics Desk"; - req_access_txt = "9" - }, -/obj/machinery/door/window/westright{ - name = "Genetics Desk" - }, -/obj/item/weapon/folder/white, -/obj/item/weapon/pen, -/turf/open/floor/plasteel/delivery, -/area/medical/genetics) -"dug" = ( -/obj/structure/chair/office/light{ - dir = 8 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/whitepurple/corner{ - tag = "icon-whitepurplecorner (WEST)"; - icon_state = "whitepurplecorner"; - dir = 8 - }, -/area/medical/genetics) -"duh" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/medical/genetics) -"dui" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/turf/open/floor/plasteel/neutral, -/area/medical/genetics) -"duj" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1 - }, -/turf/open/floor/plasteel/whitepurple/corner, -/area/medical/genetics) -"duk" = ( -/obj/structure/cable/white, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "geneticslab"; - name = "Genetics Lab Shutters" - }, -/turf/open/floor/plating, -/area/medical/genetics) -"dul" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/storage/box/monkeycubes, -/obj/item/weapon/storage/box/monkeycubes, -/obj/item/device/radio/headset/headset_medsci, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/medical/genetics) -"dum" = ( -/obj/structure/chair/office/light, -/obj/effect/landmark/start{ - name = "Geneticist" - }, -/turf/open/floor/plasteel/whitepurple/side{ - dir = 10 - }, -/area/medical/genetics) -"dun" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/turf/open/floor/plasteel/whitepurple/side, -/area/medical/genetics) -"duo" = ( -/turf/open/floor/plasteel/whitepurple/corner{ - dir = 8 - }, -/area/medical/genetics) -"dup" = ( -/turf/open/floor/plasteel/neutral, -/area/medical/genetics) -"duq" = ( -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/whitepurple/side{ - dir = 4 - }, -/area/medical/genetics) -"dur" = ( -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/structure/window/reinforced, -/obj/structure/window/reinforced{ - dir = 4; - pixel_x = 0 - }, -/obj/effect/decal/cleanable/dirt, -/mob/living/carbon/monkey, -/turf/open/floor/plasteel/warning/end, -/area/medical/genetics) -"dus" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/camera{ - c_tag = "Medbay - Aft Port"; - dir = 8; - name = "medbay camera" - }, -/turf/open/floor/plasteel/whiteblue/corner, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dut" = ( -/obj/structure/bed/dogbed{ - desc = "A comfy-looking cat bed. You can even strap your pet in, in case the gravity turns off."; - name = "Runtime's bed" - }, -/obj/machinery/airalarm{ - dir = 4; - locked = 0; - pixel_x = -23; - pixel_y = 0 - }, -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/mob/living/simple_animal/pet/cat/Runtime, -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/medical/cmo) -"duu" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/holopad, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/cmo, -/area/medical/cmo) -"duv" = ( -/obj/structure/chair/office/light, -/turf/open/floor/plasteel/cmo, -/area/medical/cmo) -"duw" = ( -/obj/structure/chair/office/light, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/cmo, -/area/medical/cmo) -"dux" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-18" - }, -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/obj/machinery/power/apc{ - dir = 4; - name = "Chief Medical Officer's Office APC"; - pixel_x = 26; - pixel_y = 0 - }, -/obj/machinery/camera{ - c_tag = "Medbay - Chief Medical Officer's Office"; - dir = 8; - name = "medbay camera" - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 8; - heat_capacity = 1e+006 - }, -/area/medical/cmo) -"duy" = ( -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = 26; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/whiteblue/corner, -/area/medical/medbay{ - name = "Medbay Central" - }) -"duz" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"duA" = ( -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Maintenance Hatch"; - req_access_txt = "12" - }, -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (EAST)"; - icon_state = "plasteel_warn_side"; - dir = 4 - }, -/area/hallway/secondary/construction) -"duB" = ( -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_y = 26 - }, -/turf/open/floor/plating/warnplate{ - dir = 9 - }, -/area/maintenance/auxsolarstarboard) -"duC" = ( -/obj/machinery/power/smes, -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/plating/warnplate{ - dir = 1 - }, -/area/maintenance/auxsolarstarboard) -"duD" = ( -/obj/machinery/camera{ - c_tag = "Solar - Aft Starboard"; - name = "solar camera" - }, -/turf/open/floor/plating/warnplate{ - dir = 5 - }, -/area/maintenance/auxsolarstarboard) -"duE" = ( -/obj/structure/frame/machine, -/obj/item/weapon/circuitboard/machine/cyborgrecharger, -/turf/open/floor/plating, -/area/medical/research{ - name = "Abandoned Research Lab" - }) -"duF" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/bot, -/area/medical/research{ - name = "Abandoned Research Lab" - }) -"duG" = ( -/obj/machinery/mech_bay_recharge_port{ - tag = "icon-recharge_port (NORTH)"; - icon_state = "recharge_port"; - dir = 1 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating/warnplate{ - dir = 6 - }, -/area/medical/research{ - name = "Abandoned Research Lab" - }) -"duH" = ( -/obj/item/robot_suit, -/turf/open/floor/plasteel/delivery, -/area/medical/research{ - name = "Abandoned Research Lab" - }) -"duI" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/medical/research{ - name = "Abandoned Research Lab" - }) -"duJ" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHEAST)"; - icon_state = "intact"; - dir = 5 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"duK" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"duL" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"duM" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"duN" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"duO" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"duP" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHWEST)"; - icon_state = "intact"; - dir = 10 - }, -/turf/open/floor/plasteel/neutral, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"duQ" = ( -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/machinery/power/apc{ - dir = 8; - name = "Toxins Lab APC"; - pixel_x = -26; - pixel_y = 3 - }, -/turf/open/floor/plasteel/delivery, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"duR" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/whitepurple/side{ - dir = 8 - }, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"duS" = ( -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"duT" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible{ - dir = 5 - }, -/turf/open/floor/plasteel/whitepurple/corner{ - dir = 4 - }, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"duU" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible{ - tag = "icon-connector_map (WEST)"; - icon_state = "connector_map"; - dir = 8 - }, -/obj/machinery/portable_atmospherics/canister, -/turf/open/floor/plasteel/warning{ - dir = 10 - }, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"duV" = ( -/turf/open/floor/plating, -/turf/open/floor/plating{ - icon_state = "platingdmg2" - }, -/area/toxins/misc_lab{ - name = "\improper Research Testing Range" - }) -"duW" = ( -/obj/item/target/syndicate, -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/bot, -/area/toxins/misc_lab{ - name = "\improper Research Testing Range" - }) -"duX" = ( -/turf/open/floor/plating, -/area/toxins/misc_lab{ - name = "\improper Research Testing Range" - }) -"duY" = ( -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/obj/machinery/ai_status_display{ - pixel_x = -32 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/crew_quarters/hor) -"duZ" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/hor) -"dva" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/effect/landmark/start{ - name = "Research Director" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHWEST)"; - icon_state = "intact"; - dir = 9 - }, -/turf/open/floor/plasteel/purple, -/area/crew_quarters/hor) -"dvb" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/neutral, -/area/crew_quarters/hor) -"dvc" = ( -/obj/machinery/light{ - icon_state = "tube1"; - dir = 4 - }, -/obj/structure/bed, -/obj/item/weapon/bedsheet/rd, -/obj/machinery/status_display{ - pixel_x = 32 - }, -/turf/open/floor/plasteel/whitepurple/side{ - dir = 4 - }, -/area/crew_quarters/hor) -"dvd" = ( -/obj/item/stack/sheet/plasteel{ - amount = 15 - }, -/obj/item/weapon/wrench, -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/obj/item/clothing/glasses/welding, -/obj/structure/table/reinforced, -/obj/machinery/firealarm{ - dir = 8; - pixel_x = -24; - pixel_y = 0 - }, -/turf/open/floor/plasteel/bot, -/area/assembly/robotics) -"dve" = ( -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/turf/open/floor/plasteel/warning{ - dir = 9 - }, -/area/assembly/robotics) -"dvf" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/assembly/robotics) -"dvg" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/assembly/robotics) -"dvh" = ( -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/assembly/robotics) -"dvi" = ( -/obj/structure/chair/office/light{ - tag = "icon-officechair_white (EAST)"; - icon_state = "officechair_white"; - dir = 4 - }, -/obj/effect/landmark/start{ - name = "Roboticist" - }, -/turf/open/floor/plasteel/warning{ - dir = 5 - }, -/area/assembly/robotics) -"dvj" = ( -/obj/structure/table/reinforced, -/obj/machinery/door/firedoor, -/obj/item/weapon/folder, -/obj/item/weapon/pen, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "roboticsprivacy"; - name = "Robotics Shutters" - }, -/obj/machinery/door/window/westleft{ - name = "Robotics Desk"; - req_access_txt = "29" - }, -/turf/open/floor/plasteel/delivery, -/area/assembly/robotics) -"dvk" = ( -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "geneticsdesk"; - name = "Genetics Desk Shutters" - }, -/turf/open/floor/plating, -/area/medical/genetics) -"dvl" = ( -/obj/structure/filingcabinet/chestdrawer, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/button/door{ - id = "geneticsdesk"; - name = "Genetics Desk Shutters"; - pixel_x = -26; - pixel_y = -26; - req_access_txt = "9" - }, -/obj/structure/noticeboard{ - dir = 1; - icon_state = "nboard00"; - pixel_y = -32; - tag = "icon-nboard00 (NORTH)" - }, -/turf/open/floor/plasteel/whitepurple/corner{ - tag = "icon-whitepurplecorner (WEST)"; - icon_state = "whitepurplecorner"; - dir = 8 - }, -/area/medical/genetics) -"dvm" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/whitepurple/corner{ - tag = "icon-whitepurplecorner (WEST)"; - icon_state = "whitepurplecorner"; - dir = 8 - }, -/area/medical/genetics) -"dvn" = ( -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = 0; - pixel_y = -26 - }, -/turf/open/floor/plasteel/whitepurple/corner, -/area/medical/genetics) -"dvo" = ( -/obj/structure/closet/wardrobe/genetics_white, -/turf/open/floor/plasteel/whitepurple/corner, -/area/medical/genetics) -"dvp" = ( -/obj/machinery/ai_status_display, -/turf/closed/wall/r_wall, -/area/medical/genetics) -"dvq" = ( -/obj/structure/table/reinforced, -/obj/machinery/requests_console{ - department = "Medbay Storage"; - departmentType = 0; - name = "Genetics Lab RC"; - pixel_x = 0; - pixel_y = -32 - }, -/obj/item/weapon/storage/box/gloves{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/storage/box/bodybags, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/medical/genetics) -"dvr" = ( -/obj/machinery/computer/scan_consolenew, -/obj/machinery/light, -/obj/structure/sign/nosmoking_2{ - pixel_y = -32 - }, -/turf/open/floor/plasteel/warning/end{ - tag = "icon-plasteel_warn_end (WEST)"; - icon_state = "plasteel_warn_end"; - dir = 8 - }, -/area/medical/genetics) -"dvs" = ( -/obj/machinery/dna_scannernew, -/obj/structure/extinguisher_cabinet{ - pixel_y = -32 - }, -/turf/open/floor/plasteel/warning/end{ - tag = "icon-plasteel_warn_end (EAST)"; - icon_state = "plasteel_warn_end"; - dir = 4 - }, -/area/medical/genetics) -"dvt" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1 - }, -/obj/machinery/airalarm{ - dir = 1; - icon_state = "alarm0"; - pixel_y = -22 - }, -/turf/open/floor/plasteel/whitepurple/side{ - tag = "icon-whitepurple (WEST)"; - icon_state = "whitepurple"; - dir = 8 - }, -/area/medical/genetics) -"dvu" = ( -/obj/machinery/computer/med_data/laptop, -/obj/structure/table/glass, -/obj/structure/mirror{ - pixel_y = -28 - }, -/turf/open/floor/plasteel/white, -/area/medical/genetics) -"dvv" = ( -/obj/machinery/newscaster{ - pixel_y = -32 - }, -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/whitepurple/side{ - dir = 4 - }, -/area/medical/genetics) -"dvw" = ( -/obj/machinery/disposal/bin, -/obj/structure/disposalpipe/trunk{ - dir = 8 - }, -/turf/open/floor/plasteel/bot, -/area/medical/genetics) -"dvx" = ( -/obj/structure/cable/white, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "geneticslab"; - name = "Genetics Lab Shutters" - }, -/obj/structure/sign/electricshock{ - pixel_y = -32 - }, -/turf/open/floor/plating, -/area/medical/genetics) -"dvy" = ( -/obj/structure/sign/poster{ - icon_state = "poster16_legit"; - pixel_y = -32; - tag = "icon-poster16_legit" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/whitepurple/corner{ - dir = 8 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dvz" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHEAST)"; - icon_state = "intact"; - dir = 6 - }, -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/whiteblue/side, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dvA" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1 - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/whiteblue/corner, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dvB" = ( -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "cmoshutter"; - name = "CMO Office Shutters" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plating, -/area/medical/cmo) -"dvC" = ( -/obj/machinery/disposal/bin, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/bot, -/area/medical/cmo) -"dvD" = ( -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/cmo, -/area/medical/cmo) -"dvE" = ( -/obj/structure/table/glass, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/item/weapon/paper_bin, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/cmo, -/area/medical/cmo) -"dvF" = ( -/obj/structure/table/glass, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/item/weapon/folder/blue{ - pixel_x = 6; - pixel_y = 6 - }, -/obj/item/weapon/folder/white, -/obj/item/weapon/pen, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plasteel/cmo, -/area/medical/cmo) -"dvG" = ( -/obj/machinery/computer/med_data/laptop, -/obj/structure/table/glass, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 8; - heat_capacity = 1e+006 - }, -/area/medical/cmo) -"dvH" = ( -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "cmoshutter"; - name = "CMO Office Shutters" - }, -/turf/open/floor/plating, -/area/medical/cmo) -"dvI" = ( -/obj/structure/closet/secure_closet/personal/patient, -/turf/open/floor/plasteel/vault, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dvJ" = ( -/obj/machinery/iv_drip, -/turf/open/floor/plasteel/vault, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dvK" = ( -/obj/structure/bed, -/obj/item/weapon/bedsheet/medical, -/turf/open/floor/plasteel/vault, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dvL" = ( -/obj/item/weapon/folder/white, -/obj/item/device/flashlight/pen, -/obj/item/clothing/neck/stethoscope, -/obj/structure/table, -/turf/open/floor/plasteel/vault, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dvM" = ( -/obj/machinery/computer/med_data/laptop, -/obj/structure/table, -/obj/machinery/newscaster{ - pixel_x = 32 - }, -/turf/open/floor/plasteel/vault, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dvN" = ( -/obj/effect/decal/cleanable/cobweb, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHEAST)"; - icon_state = "intact"; - dir = 6 - }, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"dvO" = ( -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 1; - heat_capacity = 1e+006 - }, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"dvP" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 1; - heat_capacity = 1e+006 - }, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"dvQ" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"dvR" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"dvS" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"dvT" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"dvU" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 1; - heat_capacity = 1e+006 - }, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"dvV" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 1; - heat_capacity = 1e+006 - }, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"dvW" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"dvX" = ( -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 1; - heat_capacity = 1e+006 - }, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"dvY" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHWEST)"; - icon_state = "intact"; - dir = 9 - }, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"dvZ" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/plasteel/delivery, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"dwa" = ( -/obj/machinery/door/airlock/engineering{ - name = "Aft Starboard Solar Access"; - req_access_txt = "10" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/maintenance/auxsolarstarboard) -"dwb" = ( -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/structure/lattice/catwalk, -/turf/open/space, -/area/solar/starboard) -"dwc" = ( -/obj/structure/lattice/catwalk, -/turf/open/space, -/area/solar/starboard) -"dwd" = ( -/obj/structure/sign/poster{ - pixel_y = -32 - }, -/obj/machinery/light/small, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/chem_dispenser/drinks/beer, -/obj/structure/table/wood/poker, -/turf/open/floor/plating, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"dwe" = ( -/obj/structure/table/wood/poker, -/obj/item/weapon/reagent_containers/food/drinks/bottle/rum{ - pixel_x = 6; - pixel_y = 3 - }, -/obj/item/weapon/reagent_containers/food/drinks/bottle/whiskey{ - pixel_y = 7 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/wood, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"dwf" = ( -/obj/machinery/vending/boozeomat{ - req_access_txt = "0" - }, -/obj/structure/sign/poster{ - pixel_y = -32 - }, -/obj/machinery/light/small, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"dwg" = ( -/obj/structure/table/wood/poker, -/obj/item/weapon/reagent_containers/food/drinks/shaker, -/obj/item/weapon/reagent_containers/glass/beaker/cryoxadone, -/obj/item/weapon/reagent_containers/dropper, -/turf/open/floor/plating, -/area/crew_quarters/bar{ - name = "Abandoned Gambling Den" - }) -"dwh" = ( -/obj/structure/table, -/obj/item/weapon/crowbar/red, -/obj/item/weapon/wrench, -/obj/item/clothing/mask/gas, -/turf/open/floor/plating, -/area/medical/research{ - name = "Abandoned Research Lab" - }) -"dwi" = ( -/turf/open/floor/plasteel/warning{ - dir = 10 - }, -/area/medical/research{ - name = "Abandoned Research Lab" - }) -"dwj" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning, -/area/medical/research{ - name = "Abandoned Research Lab" - }) -"dwk" = ( -/obj/structure/chair/office/light, -/turf/open/floor/plasteel/warning, -/area/medical/research{ - name = "Abandoned Research Lab" - }) -"dwl" = ( -/obj/structure/rack, -/obj/item/weapon/storage/toolbox/mechanical, -/obj/item/clothing/head/welding, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/medical/research{ - name = "Abandoned Research Lab" - }) -"dwm" = ( -/turf/open/floor/plasteel/neutral/side{ - dir = 8 - }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"dwn" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"dwo" = ( -/obj/structure/table/reinforced, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = 0; - pixel_y = -32 - }, -/obj/item/device/assembly/igniter{ - pixel_x = 6; - pixel_y = 6 - }, -/obj/item/device/assembly/igniter, -/obj/item/device/assembly/igniter{ - pixel_x = -6; - pixel_y = -6 - }, -/turf/open/floor/plasteel/warning{ - dir = 5 - }, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dwp" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/whitepurple/side{ - dir = 8 - }, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dwq" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/holopad, -/turf/open/floor/plasteel/bot, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dwr" = ( -/turf/open/floor/plasteel/whitepurple/side{ - dir = 4 - }, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dws" = ( -/obj/machinery/newscaster{ - pixel_x = 32 - }, -/turf/open/floor/plasteel/delivery, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dwt" = ( -/obj/machinery/light/small, -/turf/open/floor/plating/warnplate{ - dir = 10 - }, -/area/toxins/misc_lab{ - name = "\improper Research Testing Range" - }) -"dwu" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/toxins/misc_lab{ - name = "\improper Research Testing Range" - }) -"dwv" = ( -/obj/machinery/light/small, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating/warnplate{ - dir = 6 - }, -/area/toxins/misc_lab{ - name = "\improper Research Testing Range" - }) -"dww" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/suit_storage_unit/rd, -/turf/open/floor/plasteel/warning{ - dir = 6 - }, -/area/crew_quarters/hor) -"dwx" = ( -/obj/machinery/button/door{ - id = "idquarters"; - name = "Privacy Control"; - pixel_x = -26; - pixel_y = -26; - req_access_txt = "30" - }, -/turf/open/floor/plasteel/whitepurple/corner, -/area/crew_quarters/hor) -"dwy" = ( -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/machinery/camera{ - c_tag = "Science - Research Director's Quarters"; - dir = 1; - name = "science camera"; - network = list("SS13","RD") - }, -/turf/open/floor/plasteel/whitepurple/corner, -/area/crew_quarters/hor) -"dwz" = ( -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/turf/open/floor/plasteel/whitepurple/corner, -/area/crew_quarters/hor) -"dwA" = ( -/obj/structure/table/wood, -/obj/item/device/flashlight/lamp, -/obj/machinery/newscaster{ - pixel_y = -32 - }, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = 26; - pixel_y = 0 - }, -/turf/open/floor/plasteel/whitepurple/corner, -/area/crew_quarters/hor) -"dwB" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/whitepurple/corner, -/area/medical/research{ - name = "Research Division" - }) -"dwC" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/assembly/robotics) -"dwD" = ( -/obj/item/stack/cable_coil/white, -/obj/item/bodypart/r_arm/robot{ - pixel_x = 3 - }, -/obj/item/bodypart/l_arm/robot{ - pixel_x = -3 - }, -/obj/item/device/assembly/flash/handheld, -/obj/item/device/assembly/flash/handheld, -/obj/structure/table/reinforced, -/obj/machinery/light_switch{ - pixel_x = -38; - pixel_y = 26 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/item/device/assembly/flash/handheld, -/obj/item/device/assembly/flash/handheld, -/obj/item/device/assembly/flash/handheld, -/obj/item/device/assembly/flash/handheld, -/turf/open/floor/plasteel/bot, -/area/assembly/robotics) -"dwE" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/assembly/robotics) -"dwF" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/plasteel/neutral, -/area/assembly/robotics) -"dwG" = ( -/obj/effect/decal/cleanable/oil, -/turf/open/floor/plasteel/bot, -/area/assembly/robotics) -"dwH" = ( -/turf/open/floor/plasteel/neutral, -/area/assembly/robotics) -"dwI" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/bot, -/area/assembly/robotics) -"dwJ" = ( -/obj/structure/filingcabinet/chestdrawer, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/assembly/robotics) -"dwK" = ( -/turf/closed/wall, -/area/medical/morgue) -"dwL" = ( -/obj/machinery/door/firedoor, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/door/airlock/centcom{ - name = "Morgue"; - req_access_txt = "9" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/medical/morgue) -"dwM" = ( -/obj/structure/sign/nosmoking_2, -/turf/closed/wall, -/area/medical/morgue) -"dwN" = ( -/turf/closed/wall/r_wall, -/area/medical/morgue) -"dwO" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall, -/area/medical/morgue) -"dwP" = ( -/obj/machinery/door/firedoor, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Morgue Maintenance"; - req_access_txt = "5" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/medical/morgue) -"dwQ" = ( -/obj/structure/table/glass, -/obj/item/weapon/clipboard, -/obj/item/toy/figure/cmo, -/obj/machinery/status_display{ - pixel_x = -32 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/medical/cmo) -"dwR" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/plasteel/cmo, -/area/medical/cmo) -"dwS" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/cmo, -/area/medical/cmo) -"dwT" = ( -/obj/structure/chair/office/light{ - dir = 1 - }, -/obj/effect/landmark/start{ - name = "Chief Medical Officer" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/cmo, -/area/medical/cmo) -"dwU" = ( -/obj/machinery/computer/card/minor/cmo, -/obj/machinery/ai_status_display{ - pixel_x = 32 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 8; - heat_capacity = 1e+006 - }, -/area/medical/cmo) -"dwV" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/obj/machinery/camera{ - c_tag = "Medbay - Aft Starboard"; - dir = 4; - name = "medbay camera" - }, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 8 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dwW" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/medical{ - name = "Patient Room" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dwX" = ( -/obj/effect/landmark/start{ - name = "Medical Doctor" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/blue, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dwY" = ( -/obj/structure/chair/office/light{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dwZ" = ( -/obj/structure/sink{ - dir = 4; - pixel_x = 11 - }, -/obj/machinery/vending/wallmed{ - name = "Emergency NanoMed"; - pixel_x = 26; - pixel_y = 0; - req_access_txt = "0"; - use_power = 0 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/plasteel/cmo, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dxa" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHEAST)"; - icon_state = "intact"; - dir = 6 - }, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"dxb" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/closet/crate{ - icon_state = "crateopen"; - opened = 1 - }, -/obj/item/device/flashlight, -/obj/effect/spawner/lootdrop/maintenance, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"dxc" = ( -/obj/structure/girder, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"dxd" = ( -/obj/structure/closet, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 2; - name = "2maintenance loot spawner" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"dxe" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"dxf" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"dxg" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plasteel/neutral/side, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"dxh" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"dxi" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plasteel/delivery, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"dxj" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHWEST)"; - icon_state = "intact"; - dir = 9 - }, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"dxk" = ( -/obj/structure/cable/white, -/turf/open/floor/plating/warnplate{ - dir = 10 - }, -/area/maintenance/auxsolarstarboard) -"dxl" = ( -/obj/machinery/power/solar_control{ - id = "aftstarboard"; - name = "Aft Starboard Solar Control"; - track = 0 - }, -/obj/structure/cable, -/turf/open/floor/plating/warnplate{ - dir = 6 - }, -/area/maintenance/auxsolarstarboard) -"dxm" = ( -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/obj/structure/lattice/catwalk, -/turf/open/space, -/area/solar/starboard) -"dxn" = ( -/obj/structure/table, -/obj/item/stack/rods{ - amount = 23 - }, -/obj/item/stack/cable_coil/white, -/obj/item/device/flashlight/seclite, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/medical/research{ - name = "Abandoned Research Lab" - }) -"dxo" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/medical/research{ - name = "Abandoned Research Lab" - }) -"dxp" = ( -/obj/machinery/light/small, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/delivery, -/area/medical/research{ - name = "Abandoned Research Lab" - }) -"dxq" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/turf/open/floor/plasteel/delivery, -/area/medical/research{ - name = "Abandoned Research Lab" - }) -"dxr" = ( -/obj/structure/table, -/obj/item/weapon/clipboard, -/obj/item/weapon/folder/white, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/delivery, -/area/medical/research{ - name = "Abandoned Research Lab" - }) -"dxs" = ( -/obj/structure/frame/computer, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/airalarm{ - dir = 1; - icon_state = "alarm0"; - pixel_y = -22 - }, -/turf/open/floor/plating, -/area/medical/research{ - name = "Abandoned Research Lab" - }) -"dxt" = ( -/obj/structure/frame/machine, -/obj/machinery/light/small, -/obj/item/weapon/stock_parts/console_screen, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/medical/research{ - name = "Abandoned Research Lab" - }) -"dxu" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/delivery, -/area/medical/research{ - name = "Abandoned Research Lab" - }) -"dxv" = ( -/obj/structure/table, -/obj/item/clothing/gloves/color/black, -/obj/item/weapon/storage/toolbox/electrical, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/medical/research{ - name = "Abandoned Research Lab" - }) -"dxw" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"dxx" = ( -/obj/item/device/assembly/prox_sensor{ - pixel_x = -4; - pixel_y = 1 - }, -/obj/item/device/assembly/prox_sensor{ - pixel_x = 8; - pixel_y = 9 - }, -/obj/item/device/assembly/prox_sensor{ - pixel_x = 9; - pixel_y = -2 - }, -/obj/item/device/assembly/prox_sensor{ - pixel_x = 0; - pixel_y = 2 - }, -/obj/structure/table/reinforced, -/obj/machinery/status_display{ - pixel_x = -32 - }, -/turf/open/floor/plasteel/warning/corner{ - dir = 8 - }, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dxy" = ( -/obj/item/device/assembly/timer{ - pixel_x = 5; - pixel_y = 4 - }, -/obj/item/device/assembly/timer{ - pixel_x = -4; - pixel_y = 2 - }, -/obj/item/device/assembly/timer{ - pixel_x = 6; - pixel_y = -4 - }, -/obj/item/device/assembly/timer{ - pixel_x = 0; - pixel_y = 0 - }, -/obj/structure/table/reinforced, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/warning{ - dir = 5 - }, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dxz" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dxA" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible{ - icon_state = "intact"; - dir = 6 - }, -/turf/open/floor/plasteel/whitepurple/corner, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dxB" = ( -/obj/machinery/atmospherics/components/unary/thermomachine/freezer{ - tag = "icon-freezer (WEST)"; - icon_state = "freezer"; - dir = 8 - }, -/turf/open/floor/plasteel/warning{ - dir = 9 - }, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dxC" = ( -/obj/structure/sign/fire, -/turf/closed/wall/r_wall, -/area/toxins/misc_lab{ - name = "\improper Research Testing Range" - }) -"dxD" = ( -/obj/machinery/door/firedoor/heavy, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/door/airlock/research{ - name = "Toxins Secure Storage"; - req_access_txt = "8" - }, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "rdtoxins"; - name = "Toxins Lab Shutters" - }, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/toxins/misc_lab{ - name = "\improper Research Testing Range" - }) -"dxE" = ( -/turf/closed/wall/r_wall, -/area/toxins/misc_lab{ - name = "\improper Research Testing Range" - }) -"dxF" = ( -/obj/machinery/door/firedoor/heavy, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "idquarters"; - name = "Director's Quarters Shutters" - }, -/obj/structure/cable/white, -/turf/open/floor/plating, -/area/crew_quarters/hor) -"dxG" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = -26; - pixel_y = 0 - }, -/turf/open/floor/plasteel/whitepurple/corner{ - dir = 8 - }, -/area/medical/research{ - name = "Research Division" - }) -"dxH" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/whitepurple/corner, -/area/medical/research{ - name = "Research Division" - }) -"dxI" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass_research{ - name = "Robotics Lab"; - req_access_txt = "29" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/assembly/robotics) -"dxJ" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/delivery, -/area/assembly/robotics) -"dxK" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/assembly/robotics) -"dxL" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/neutral, -/area/assembly/robotics) -"dxM" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plasteel/neutral, -/area/assembly/robotics) -"dxN" = ( -/obj/effect/landmark/start{ - name = "Roboticist" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/neutral, -/area/assembly/robotics) -"dxO" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/neutral, -/area/assembly/robotics) -"dxP" = ( -/obj/structure/noticeboard{ - dir = 8; - icon_state = "nboard00"; - pixel_x = 32; - pixel_y = 0; - tag = "icon-nboard00 (WEST)" - }, -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/obj/machinery/camera{ - c_tag = "Science - Robotics Lab"; - dir = 8; - name = "science camera"; - network = list("SS13","RD") - }, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/assembly/robotics) -"dxQ" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment, -/obj/structure/extinguisher_cabinet{ - pixel_x = 26 - }, -/turf/open/floor/plasteel/neutral/corner, -/area/hallway/primary/aft) -"dxR" = ( -/obj/structure/table, -/obj/effect/decal/cleanable/cobweb, -/obj/item/weapon/storage/box/bodybags{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/storage/box/bodybags, -/turf/open/floor/plating, -/area/medical/morgue) -"dxS" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/medical/morgue) -"dxT" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/light_switch{ - pixel_x = 26; - pixel_y = 26 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/medical/morgue) -"dxU" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/light/small{ - dir = 1 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 2; - on = 1; - scrub_N2O = 1; - scrub_Toxins = 1 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/medical/morgue) -"dxV" = ( -/obj/structure/bodycontainer/morgue, -/obj/effect/landmark{ - name = "revenantspawn" - }, -/turf/open/floor/plating, -/area/medical/morgue) -"dxW" = ( -/obj/structure/bodycontainer/morgue, -/obj/effect/landmark{ - name = "revenantspawn" - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/medical/morgue) -"dxX" = ( -/obj/structure/bodycontainer/morgue, -/obj/effect/decal/cleanable/dirt, -/obj/effect/landmark{ - name = "revenantspawn" - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/medical/morgue) -"dxY" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/plating, -/area/medical/morgue) -"dxZ" = ( -/turf/open/floor/plating, -/obj/structure/filingcabinet/chestdrawer, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/cobweb/cobweb2, -/turf/open/floor/plating{ - icon_state = "platingdmg2" - }, -/area/medical/morgue) -"dya" = ( -/obj/structure/bed/roller, -/obj/machinery/iv_drip, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/cobweb, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/medical/morgue) -"dyb" = ( -/obj/structure/bed/roller, -/obj/machinery/iv_drip, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/medical/morgue) -"dyc" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/medical/morgue) -"dyd" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/medical/morgue) -"dye" = ( -/obj/structure/table/glass, -/obj/item/weapon/folder/white, -/obj/item/weapon/storage/secure/briefcase, -/obj/machinery/newscaster{ - pixel_x = -32 - }, -/obj/structure/sign/nanotrasen{ - pixel_x = -32; - pixel_y = -32 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/medical/cmo) -"dyf" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/vending/wallmed{ - pixel_x = -32; - pixel_y = -32 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/cmo, -/area/medical/cmo) -"dyg" = ( -/turf/open/floor/plasteel/cmo, -/area/medical/cmo) -"dyh" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/cmo, -/area/medical/cmo) -"dyi" = ( -/obj/machinery/computer/crew, -/obj/machinery/button/door{ - id = "cmoshutter"; - name = "CMO Office Shutters"; - pixel_x = 7; - pixel_y = -26; - req_access_txt = "40" - }, -/obj/machinery/keycard_auth{ - pixel_x = 7; - pixel_y = -38 - }, -/obj/machinery/light_switch{ - pixel_x = -7; - pixel_y = -26 - }, -/obj/machinery/requests_console{ - announcementConsole = 1; - department = "Chief Medical Officer's Desk"; - departmentType = 5; - name = "Chief Medical Officer's RC"; - pixel_x = 32; - pixel_y = 0 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 8; - heat_capacity = 1e+006 - }, -/area/medical/cmo) -"dyj" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/tinted/fulltile, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dyk" = ( -/obj/structure/dresser, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/cmo, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dyl" = ( -/obj/structure/mirror{ - pixel_y = -28 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/cmo, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dym" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1 - }, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = 0; - pixel_y = -26 - }, -/obj/machinery/light, -/turf/open/floor/plasteel/cmo, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dyn" = ( -/obj/structure/closet/wardrobe/pjs, -/turf/open/floor/plasteel/cmo, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dyo" = ( -/obj/structure/filingcabinet/chestdrawer, -/obj/machinery/status_display{ - pixel_x = 32 - }, -/turf/open/floor/plasteel/cmo, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dyp" = ( -/obj/effect/landmark{ - name = "blobstart" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral/side{ - dir = 8 - }, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"dyq" = ( -/turf/closed/wall, -/area/crew_quarters/theatre{ - name = "Abandoned Theatre" - }) -"dyr" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/structure/barricade/wooden, -/turf/open/floor/plating, -/area/crew_quarters/theatre{ - name = "Abandoned Theatre" - }) -"dys" = ( -/turf/closed/wall, -/area/security/detectives_office{ - name = "Private Investigator's Office" - }) -"dyt" = ( -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Maintenance Hatch"; - req_access_txt = "12" - }, -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/barricade/wooden, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (EAST)"; - icon_state = "plasteel_warn_side"; - dir = 4 - }, -/area/security/detectives_office{ - name = "Private Investigator's Office" - }) -"dyu" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/structure/lattice/catwalk, -/turf/open/space, -/area/solar/starboard) -"dyv" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dyw" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/neutral/side{ - dir = 10; - heat_capacity = 1e+006 - }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"dyx" = ( -/obj/structure/closet, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral/side{ - dir = 6 - }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"dyy" = ( -/obj/item/device/transfer_valve{ - pixel_x = -5 - }, -/obj/item/device/transfer_valve{ - pixel_x = -5 - }, -/obj/item/device/transfer_valve{ - pixel_x = 0 - }, -/obj/item/device/transfer_valve{ - pixel_x = 0 - }, -/obj/item/device/transfer_valve{ - pixel_x = 5 - }, -/obj/item/device/transfer_valve{ - pixel_x = 5 - }, -/obj/structure/table/reinforced, -/obj/machinery/requests_console{ - department = "Toxins Lab"; - departmentType = 0; - name = "Toxins RC"; - pixel_x = -32; - pixel_y = 0 - }, -/turf/open/floor/plasteel/delivery, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dyz" = ( -/obj/structure/chair/office/light{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dyA" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/effect/landmark/start{ - name = "Scientist" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/neutral, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dyB" = ( -/obj/machinery/atmospherics/pipe/manifold/general/visible{ - dir = 8 - }, -/turf/open/floor/plasteel/whitepurple/corner, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dyC" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible{ - tag = "icon-connector_map (WEST)"; - icon_state = "connector_map"; - dir = 8 - }, -/obj/structure/sign/poster{ - icon_state = "poster7_legit"; - pixel_x = 32; - pixel_y = 0; - tag = "icon-poster7_legit" - }, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dyD" = ( -/obj/structure/filingcabinet/chestdrawer, -/obj/machinery/light{ - dir = 1 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/bot, -/area/toxins/storage) -"dyE" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/delivery, -/area/toxins/storage) -"dyF" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/airalarm{ - pixel_y = 22 - }, -/obj/machinery/portable_atmospherics/canister/nitrogen, -/turf/open/floor/plasteel/bot, -/area/toxins/storage) -"dyG" = ( -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = 0; - pixel_y = 26 - }, -/obj/machinery/portable_atmospherics/canister/nitrogen, -/turf/open/floor/plasteel/bot, -/area/toxins/storage) -"dyH" = ( -/obj/structure/table, -/obj/machinery/light{ - dir = 1 - }, -/obj/effect/decal/cleanable/dirt, -/obj/item/weapon/crowbar, -/obj/item/weapon/wrench, -/obj/item/clothing/mask/gas, -/obj/structure/extinguisher_cabinet{ - pixel_x = 26 - }, -/turf/open/floor/plasteel/bot, -/area/toxins/storage) -"dyI" = ( -/turf/closed/wall/r_wall, -/area/toxins/server{ - name = "\improper Research Division Server Room" - }) -"dyJ" = ( -/obj/machinery/airalarm{ - dir = 4; - locked = 0; - pixel_x = -23; - pixel_y = 0 - }, -/obj/structure/table, -/obj/structure/extinguisher_cabinet{ - pixel_y = 32 - }, -/obj/item/weapon/clipboard, -/obj/item/weapon/wrench, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/toxins/server{ - name = "\improper Research Division Server Room" - }) -"dyK" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/toxins/server{ - name = "\improper Research Division Server Room" - }) -"dyL" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/components/unary/thermomachine/freezer{ - min_temperature = 80; - on = 1; - target_temperature = 80 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/toxins/server{ - name = "\improper Research Division Server Room" - }) -"dyM" = ( -/obj/structure/sign/securearea, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall/r_wall, -/area/toxins/server{ - name = "\improper Research Division Server Room" - }) -"dyN" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/assembly/robotics) -"dyO" = ( -/obj/structure/rack, -/obj/item/weapon/storage/firstaid, -/obj/item/weapon/storage/firstaid, -/obj/item/device/paicard, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/bot, -/area/assembly/robotics) -"dyP" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/assembly/robotics) -"dyQ" = ( -/obj/item/robot_suit, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/bot, -/area/assembly/robotics) -"dyR" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/neutral, -/area/assembly/robotics) -"dyS" = ( -/turf/open/floor/plasteel/bot, -/area/assembly/robotics) -"dyT" = ( -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/assembly/robotics) -"dyU" = ( -/obj/machinery/computer/rdconsole/robotics, -/obj/structure/sign/bluecross_2{ - pixel_x = 32 - }, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = 28; - pixel_y = 26 - }, -/turf/open/floor/plasteel/bot, -/area/assembly/robotics) -"dyV" = ( -/obj/effect/landmark{ - name = "lightsout" - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/aft) -"dyW" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/camera{ - c_tag = "Departures Hallway - Center"; - dir = 8; - name = "hallway camera" - }, -/turf/open/floor/plasteel/neutral/corner, -/area/hallway/primary/aft) -"dyX" = ( -/obj/structure/table, -/obj/effect/decal/cleanable/dirt, -/obj/item/clothing/gloves/color/latex, -/turf/open/floor/plating, -/area/medical/morgue) -"dyY" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/medical/morgue) -"dyZ" = ( -/obj/effect/decal/cleanable/blood/old, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral, -/area/medical/morgue) -"dza" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral, -/area/medical/morgue) -"dzb" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/medical/morgue) -"dzc" = ( -/turf/open/floor/plasteel/neutral, -/area/medical/morgue) -"dzd" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 2; - on = 1 - }, -/obj/effect/landmark{ - name = "xeno_spawn"; - pixel_x = -1 - }, -/turf/open/floor/plasteel/neutral, -/area/medical/morgue) -"dze" = ( -/turf/open/floor/plating, -/area/medical/morgue) -"dzf" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/neutral, -/area/medical/morgue) -"dzg" = ( -/obj/effect/decal/cleanable/blood/old, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/medical/morgue) -"dzh" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/medical/morgue) -"dzi" = ( -/obj/structure/table, -/obj/effect/decal/cleanable/dirt, -/obj/item/weapon/storage/backpack/dufflebag/med, -/obj/item/device/flashlight/pen, -/turf/open/floor/plating, -/area/medical/morgue) -"dzj" = ( -/turf/closed/wall, -/area/medical/cmo) -"dzk" = ( -/obj/structure/cable/white, -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/tinted/fulltile, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/medical/cmo) -"dzl" = ( -/obj/machinery/door/airlock/command{ - name = "Chief Medical Officer's Quarters"; - req_access_txt = "40" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/cmo, -/area/medical/cmo) -"dzm" = ( -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/tinted/fulltile, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/medical/cmo) -"dzn" = ( -/obj/machinery/airalarm{ - dir = 4; - locked = 0; - pixel_x = -23; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 8 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dzo" = ( -/obj/structure/extinguisher_cabinet{ - pixel_x = 26 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/whiteblue/corner, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dzp" = ( -/obj/structure/table/wood, -/obj/item/clothing/under/maid, -/obj/item/clothing/head/kitty, -/obj/effect/decal/cleanable/cobweb, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/crew_quarters/theatre{ - name = "Abandoned Theatre" - }) -"dzq" = ( -/obj/machinery/vending/autodrobe{ - req_access_txt = "0" - }, -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/plating, -/area/crew_quarters/theatre{ - name = "Abandoned Theatre" - }) -"dzr" = ( -/obj/structure/cable/white{ - tag = "icon-0-2"; - icon_state = "0-2" - }, -/obj/machinery/power/apc{ - cell_type = 5000; - dir = 1; - name = "Abandoned Theatre APC"; - pixel_x = 0; - pixel_y = 25 - }, -/turf/open/floor/plating, -/area/crew_quarters/theatre{ - name = "Abandoned Theatre" - }) -"dzs" = ( -/obj/machinery/newscaster{ - pixel_y = 32 - }, -/turf/open/floor/wood, -/area/crew_quarters/theatre{ - name = "Abandoned Theatre" - }) -"dzt" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/theatre{ - name = "Abandoned Theatre" - }) -"dzu" = ( -/obj/machinery/door/window{ - dir = 8; - name = "Theatre Stage"; - req_access_txt = "0" - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/wood, -/area/crew_quarters/theatre{ - name = "Abandoned Theatre" - }) -"dzv" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1 - }, -/turf/open/floor/wood{ - icon_state = "wood-broken5" - }, -/area/crew_quarters/theatre{ - name = "Abandoned Theatre" - }) -"dzw" = ( -/obj/structure/dresser, -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/theatre{ - name = "Abandoned Theatre" - }) -"dzx" = ( -/obj/structure/table/wood, -/obj/item/device/instrument/guitar, -/obj/effect/decal/cleanable/cobweb/cobweb2, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/theatre{ - name = "Abandoned Theatre" - }) -"dzy" = ( -/obj/effect/decal/cleanable/cobweb, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/photocopier, -/obj/item/weapon/newspaper{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/newspaper, -/turf/open/floor/plating, -/area/security/detectives_office{ - name = "Private Investigator's Office" - }) -"dzz" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/wood, -/area/security/detectives_office{ - name = "Private Investigator's Office" - }) -"dzA" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/light_switch{ - pixel_y = 26 - }, -/turf/open/floor/plating, -/area/security/detectives_office{ - name = "Private Investigator's Office" - }) -"dzB" = ( -/obj/structure/sign/poster{ - icon_state = "poster22_legit"; - pixel_y = 32; - tag = "icon-poster22_legit" - }, -/turf/open/floor/wood{ - tag = "icon-wood-broken5"; - icon_state = "wood-broken5" - }, -/area/security/detectives_office{ - name = "Private Investigator's Office" - }) -"dzC" = ( -/obj/structure/table/wood, -/obj/item/weapon/crowbar/red, -/obj/item/weapon/book/manual/wiki/security_space_law{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/book/manual/detective, -/obj/item/device/camera/detective, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/security/detectives_office{ - name = "Private Investigator's Office" - }) -"dzD" = ( -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/obj/machinery/power/solar{ - id = "aftstarboard"; - name = "Aft-Starboard Solar Array" - }, -/turf/open/floor/plasteel/airless/solarpanel, -/area/solar/starboard) -"dzE" = ( -/obj/structure/chair/office/dark{ - dir = 8 - }, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = -26; - pixel_y = 32 - }, -/turf/open/floor/plasteel/warning{ - dir = 9 - }, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dzF" = ( -/turf/open/floor/plasteel/warning{ - dir = 5 - }, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dzG" = ( -/obj/structure/table, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/status_display{ - pixel_y = 32 - }, -/obj/item/weapon/crowbar, -/obj/item/weapon/wrench, -/obj/item/clothing/mask/gas, -/obj/machinery/camera{ - c_tag = "Science - Toxins Launch Site"; - dir = 2; - name = "science camera"; - network = list("SS13","RD") - }, -/turf/open/floor/plasteel/bot, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dzH" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible, -/turf/open/floor/plasteel/warning{ - dir = 10 - }, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dzI" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible, -/obj/machinery/light{ - dir = 1 - }, -/turf/open/floor/plasteel/warning, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dzJ" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible, -/obj/machinery/newscaster{ - pixel_x = 0; - pixel_y = 32 - }, -/obj/machinery/airalarm{ - dir = 8; - icon_state = "alarm0"; - pixel_x = 24 - }, -/turf/open/floor/plasteel/warning{ - dir = 6 - }, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dzK" = ( -/turf/closed/wall, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dzL" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Maintenance Hatch"; - req_access_txt = "12" - }, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dzM" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dzN" = ( -/obj/item/device/assembly/signaler{ - pixel_x = 0; - pixel_y = 8 - }, -/obj/item/device/assembly/signaler{ - pixel_x = -8; - pixel_y = 5 - }, -/obj/item/device/assembly/signaler{ - pixel_x = 6; - pixel_y = 5 - }, -/obj/item/device/assembly/signaler{ - pixel_x = -2; - pixel_y = -2 - }, -/obj/structure/table/reinforced, -/obj/machinery/status_display{ - pixel_x = -32 - }, -/turf/open/floor/plasteel/warning/corner, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dzO" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/wrench, -/obj/item/weapon/screwdriver{ - pixel_y = 10 - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/warning{ - dir = 6 - }, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dzP" = ( -/obj/machinery/atmospherics/pipe/manifold/general/visible{ - dir = 8 - }, -/obj/machinery/meter, -/turf/open/floor/plasteel/whitepurple/corner, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dzQ" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible{ - tag = "icon-connector_map (WEST)"; - icon_state = "connector_map"; - dir = 8 - }, -/obj/machinery/light{ - icon_state = "tube1"; - dir = 4 - }, -/obj/machinery/camera{ - c_tag = "Science - Toxins Mixing Lab Aft"; - dir = 8; - name = "science camera"; - network = list("SS13","RD") - }, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dzR" = ( -/obj/structure/extinguisher_cabinet{ - pixel_x = -26 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHEAST)"; - icon_state = "intact"; - dir = 6 - }, -/turf/open/floor/plasteel/warning{ - dir = 9 - }, -/area/toxins/storage) -"dzS" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/toxins/storage) -"dzT" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/toxins/storage) -"dzU" = ( -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/toxins/storage) -"dzV" = ( -/turf/open/floor/plasteel/warning{ - dir = 5 - }, -/area/toxins/storage) -"dzW" = ( -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/machinery/computer/rdservercontrol, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/toxins/server{ - name = "\improper Research Division Server Room" - }) -"dzX" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/toxins/server{ - name = "\improper Research Division Server Room" - }) -"dzY" = ( -/obj/machinery/atmospherics/pipe/simple/general/hidden, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/toxins/server{ - name = "\improper Research Division Server Room" - }) -"dzZ" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/door/airlock/command{ - name = "Research Division Server Room"; - req_access = null; - req_access_txt = "30" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/toxins/server{ - name = "\improper Research Division Server Room" - }) -"dAa" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/whitepurple/corner{ - dir = 8 - }, -/area/medical/research{ - name = "Research Division" - }) -"dAb" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/structure/disposalpipe/segment, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/neutral, -/area/medical/research{ - name = "Research Division" - }) -"dAc" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plasteel/whitepurple/corner, -/area/medical/research{ - name = "Research Division" - }) -"dAd" = ( -/obj/machinery/disposal/bin, -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/machinery/power/apc{ - dir = 8; - name = "Robotics Lab APC"; - pixel_x = -26; - pixel_y = 0 - }, -/obj/structure/disposalpipe/trunk{ - dir = 1 - }, -/turf/open/floor/plasteel/delivery, -/area/assembly/robotics) -"dAe" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/warning{ - dir = 10 - }, -/area/assembly/robotics) -"dAf" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning, -/area/assembly/robotics) -"dAg" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/warning, -/area/assembly/robotics) -"dAh" = ( -/turf/open/floor/plasteel/warning, -/area/assembly/robotics) -"dAi" = ( -/turf/open/floor/plasteel/warning{ - dir = 6 - }, -/area/assembly/robotics) -"dAj" = ( -/obj/machinery/r_n_d/circuit_imprinter, -/obj/item/weapon/reagent_containers/glass/beaker/sulphuric, -/obj/machinery/airalarm{ - dir = 8; - icon_state = "alarm0"; - pixel_x = 24 - }, -/turf/open/floor/plasteel/bot, -/area/assembly/robotics) -"dAk" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/obj/structure/disposalpipe/junction{ - dir = 1; - icon_state = "pipe-j1" - }, -/turf/open/floor/plasteel/neutral/corner, -/area/hallway/primary/aft) -"dAl" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/centcom{ - name = "Morgue"; - req_access_txt = "6" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/medical/morgue) -"dAm" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/medical/morgue) -"dAn" = ( -/turf/open/floor/plating, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plating{ - icon_state = "platingdmg2" - }, -/area/medical/morgue) -"dAo" = ( -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral, -/area/medical/morgue) -"dAp" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral, -/area/medical/morgue) -"dAq" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/medical/morgue) -"dAr" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/effect/landmark/start{ - name = "Medical Doctor" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/medical/morgue) -"dAs" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/blood/old, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/effect/landmark{ - name = "blobstart" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/medical/morgue) -"dAt" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/open/floor/plasteel/neutral, -/area/medical/morgue) -"dAu" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/light_switch{ - pixel_x = 26; - pixel_y = 26 - }, -/obj/machinery/firealarm{ - dir = 4; - icon_state = "fire0"; - pixel_x = 24; - pixel_y = -26; - tag = "icon-fire0 (EAST)" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/medical/morgue) -"dAv" = ( -/obj/machinery/door/firedoor, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/door/airlock/centcom{ - name = "Morgue"; - req_access_txt = "5" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/medical/morgue) -"dAw" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/medical/morgue) -"dAx" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/effect/landmark{ - name = "blobstart" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plating, -/area/medical/morgue) -"dAy" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/medical/morgue) -"dAz" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/medical/morgue) -"dAA" = ( -/obj/structure/table, -/obj/item/clothing/gloves/color/latex/nitrile, -/obj/item/clothing/suit/apron/surgical, -/obj/item/clothing/mask/breath/medical, -/turf/open/floor/plating, -/area/medical/morgue) -"dAB" = ( -/obj/structure/closet/secure_closet/CMO, -/obj/item/clothing/under/rank/nursesuit, -/obj/item/clothing/head/nursehat, -/turf/open/floor/plasteel/warning{ - dir = 5 - }, -/area/medical/cmo) -"dAC" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/cmo, -/area/medical/cmo) -"dAD" = ( -/obj/machinery/light_switch{ - pixel_x = 26; - pixel_y = 26 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/cmo, -/area/medical/cmo) -"dAE" = ( -/obj/structure/dresser, -/obj/structure/mirror{ - pixel_x = 26 - }, -/turf/open/floor/plasteel/cmo, -/area/medical/cmo) -"dAF" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/plasteel/blue, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dAG" = ( -/obj/structure/rack, -/obj/effect/landmark/costume, -/obj/effect/landmark/costume, -/obj/item/clothing/neck/tie/black, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral/side{ - dir = 8 - }, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"dAH" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"dAI" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/crew_quarters/theatre{ - name = "Abandoned Theatre" - }) -"dAJ" = ( -/turf/open/floor/wood, -/area/crew_quarters/theatre{ - name = "Abandoned Theatre" - }) -"dAK" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plating, -/area/crew_quarters/theatre{ - name = "Abandoned Theatre" - }) -"dAL" = ( -/turf/open/floor/plating, -/area/crew_quarters/theatre{ - name = "Abandoned Theatre" - }) -"dAM" = ( -/obj/structure/table/wood, -/obj/item/weapon/newspaper, -/obj/item/clothing/head/bowler, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/theatre{ - name = "Abandoned Theatre" - }) -"dAN" = ( -/obj/structure/window/reinforced{ - dir = 8 - }, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/theatre{ - name = "Abandoned Theatre" - }) -"dAO" = ( -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/theatre{ - name = "Abandoned Theatre" - }) -"dAP" = ( -/obj/structure/table/wood, -/obj/item/clothing/suit/justice, -/obj/item/clothing/head/helmet/justice/escape{ - name = "justice helmet" - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/theatre{ - name = "Abandoned Theatre" - }) -"dAQ" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/light/small{ - dir = 8 - }, -/obj/machinery/newscaster{ - pixel_x = -32 - }, -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1 - }, -/turf/open/floor/plating, -/area/security/detectives_office{ - name = "Private Investigator's Office" - }) -"dAR" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/wood{ - icon_state = "wood-broken" - }, -/area/security/detectives_office{ - name = "Private Investigator's Office" - }) -"dAS" = ( -/turf/open/floor/wood, -/area/security/detectives_office{ - name = "Private Investigator's Office" - }) -"dAT" = ( -/turf/open/floor/plating, -/area/security/detectives_office{ - name = "Private Investigator's Office" - }) -"dAU" = ( -/obj/structure/closet/secure_closet/personal/cabinet, -/obj/item/clothing/suit/jacket{ - desc = "All the class of a trenchcoat without the security fibers."; - icon_state = "greydet"; - name = "trenchcoat" - }, -/obj/item/clothing/suit/jacket{ - desc = "All the class of a trenchcoat without the security fibers."; - icon_state = "detective"; - name = "trenchcoat" - }, -/obj/item/clothing/head/fedora, -/obj/item/clothing/head/fedora{ - icon_state = "detective" - }, -/turf/open/floor/plating, -/area/security/detectives_office{ - name = "Private Investigator's Office" - }) -"dAV" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/detectives_office{ - name = "Private Investigator's Office" - }) -"dAW" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/structure/lattice/catwalk, -/turf/open/space, -/area/solar/starboard) -"dAX" = ( -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/structure/lattice/catwalk, -/turf/open/space, -/area/solar/starboard) -"dAY" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/structure/lattice/catwalk, -/turf/open/space, -/area/solar/starboard) -"dAZ" = ( -/turf/closed/wall/r_wall, -/area/toxins/test_area) -"dBa" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/tinted/fulltile, -/turf/open/floor/plating, -/area/toxins/test_area) -"dBb" = ( -/obj/structure/table/reinforced, -/obj/machinery/computer/security/telescreen{ - desc = "Used for watching the testing site."; - dir = 4; - layer = 4; - name = "Testing Site Telescreen"; - network = list("Toxins"); - pixel_x = 0; - pixel_y = 0 - }, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dBc" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning{ - tag = "icon-warning (EAST)"; - dir = 4 - }, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dBd" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 2; - on = 1 - }, -/obj/effect/landmark{ - name = "xeno_spawn"; - pixel_x = -1 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 1; - heat_capacity = 1e+006 - }, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dBe" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible{ - dir = 5 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/neutral/side{ - dir = 1 - }, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dBf" = ( -/obj/machinery/atmospherics/components/trinary/filter{ - density = 0; - dir = 8; - req_access = "0" - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 1 - }, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dBg" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible{ - dir = 9 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 1 - }, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dBh" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning{ - dir = 9 - }, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dBi" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral/side, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dBj" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/warning{ - dir = 5 - }, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dBk" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/storage/firstaid/toxin, -/turf/open/floor/plasteel/warning{ - dir = 6 - }, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dBl" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/whitepurple/corner{ - dir = 8 - }, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dBm" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible{ - dir = 5 - }, -/turf/open/floor/plasteel/whitepurple/corner, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dBn" = ( -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/warning{ - dir = 10 - }, -/area/toxins/storage) -"dBo" = ( -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHEAST)"; - icon_state = "intact"; - dir = 6 - }, -/turf/open/floor/plasteel/warning, -/area/toxins/storage) -"dBp" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plasteel/warning, -/area/toxins/storage) -"dBq" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/warning, -/area/toxins/storage) -"dBr" = ( -/turf/open/floor/plasteel/warning{ - dir = 6 - }, -/area/toxins/storage) -"dBs" = ( -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor/preopen{ - id = "rdxeno"; - name = "Xenobiology Containment Door" - }, -/turf/open/floor/plating, -/area/toxins/server{ - name = "\improper Research Division Server Room" - }) -"dBt" = ( -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/door/poddoor/preopen{ - id = "rdxeno"; - name = "Xenobiology Containment Door" - }, -/obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/simple/general/hidden{ - tag = "icon-intact (SOUTHEAST)"; - icon_state = "intact"; - dir = 6 - }, -/obj/machinery/door/airlock/glass_command{ - name = "Server Access"; - req_access_txt = "30" - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/toxins/server{ - name = "\improper Research Division Server Room" - }) -"dBu" = ( -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor/preopen{ - id = "rdxeno"; - name = "Xenobiology Containment Door" - }, -/obj/machinery/atmospherics/pipe/simple/general/hidden{ - tag = "icon-intact (NORTHWEST)"; - icon_state = "intact"; - dir = 9 - }, -/turf/open/floor/plating, -/area/toxins/server{ - name = "\improper Research Division Server Room" - }) -"dBv" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_Toxins = 0 - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/purple, -/area/medical/research{ - name = "Research Division" - }) -"dBw" = ( -/obj/structure/rack, -/obj/item/weapon/storage/toolbox/mechanical{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/weapon/storage/toolbox/electrical, -/obj/item/weapon/screwdriver{ - pixel_y = 5 - }, -/obj/item/device/multitool, -/obj/item/clothing/head/welding, -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/obj/machinery/newscaster{ - pixel_x = -32 - }, -/turf/open/floor/plasteel/bot, -/area/assembly/robotics) -"dBx" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/bot, -/area/assembly/robotics) -"dBy" = ( -/obj/structure/table, -/obj/structure/window/reinforced{ - dir = 4; - pixel_x = 0 - }, -/obj/item/weapon/storage/box/gloves{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/storage/box/bodybags, -/obj/item/borg/upgrade/rename, -/turf/open/floor/plasteel/bot, -/area/assembly/robotics) -"dBz" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/delivery, -/area/assembly/robotics) -"dBA" = ( -/obj/structure/table/reinforced, -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/item/clothing/gloves/color/latex, -/obj/item/weapon/surgical_drapes, -/obj/item/weapon/cautery, -/turf/open/floor/plasteel/bot, -/area/assembly/robotics) -"dBB" = ( -/obj/machinery/holopad, -/turf/open/floor/plasteel/whitepurple/corner{ - dir = 1 - }, -/area/assembly/robotics) -"dBC" = ( -/obj/effect/landmark/start{ - name = "Roboticist" - }, -/turf/open/floor/plasteel/whitepurple/corner{ - dir = 4 - }, -/area/assembly/robotics) -"dBD" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/retractor, -/obj/item/weapon/hemostat, -/obj/machinery/light{ - icon_state = "tube1"; - dir = 4 - }, -/obj/machinery/ai_status_display{ - pixel_x = 32 - }, -/turf/open/floor/plasteel/bot, -/area/assembly/robotics) -"dBE" = ( -/obj/machinery/firealarm{ - dir = 8; - pixel_x = -24; - pixel_y = 0 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/medical/morgue) -"dBF" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/turf/open/floor/plasteel/neutral, -/area/medical/morgue) -"dBG" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHEAST)"; - icon_state = "intact"; - dir = 5 - }, -/turf/open/floor/plasteel/neutral, -/area/medical/morgue) -"dBH" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/open/floor/plasteel/neutral, -/area/medical/morgue) -"dBI" = ( -/obj/structure/bodycontainer/morgue, -/obj/effect/landmark{ - name = "revenantspawn" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/medical/morgue) -"dBJ" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/medical/morgue) -"dBK" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plasteel/neutral, -/area/medical/morgue) -"dBL" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/medical/morgue) -"dBM" = ( -/obj/structure/table, -/obj/effect/decal/cleanable/dirt, -/obj/item/weapon/paper_bin, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/medical/morgue) -"dBN" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/medical/morgue) -"dBO" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/medical/morgue) -"dBP" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/medical/morgue) -"dBQ" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plating, -/area/medical/morgue) -"dBR" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral, -/area/medical/morgue) -"dBS" = ( -/obj/structure/rack, -/obj/effect/decal/cleanable/dirt, -/obj/item/weapon/crowbar, -/obj/item/weapon/storage/pill_bottle, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/medical/morgue) -"dBT" = ( -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/obj/machinery/ai_status_display{ - pixel_x = -32 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/medical/cmo) -"dBU" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHWEST)"; - icon_state = "intact"; - dir = 9 - }, -/turf/open/floor/plasteel/neutral, -/area/medical/cmo) -"dBV" = ( -/obj/effect/landmark/start{ - name = "Chief Medical Officer" - }, -/turf/open/floor/plasteel/blue, -/area/medical/cmo) -"dBW" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/turf/open/floor/plasteel/neutral, -/area/medical/cmo) -"dBX" = ( -/obj/structure/bed, -/obj/item/weapon/bedsheet/cmo, -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/obj/machinery/status_display{ - pixel_x = 32 - }, -/turf/open/floor/plasteel/cmo, -/area/medical/cmo) -"dBY" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/rack, -/obj/effect/landmark/costume, -/obj/effect/landmark/costume, -/obj/effect/spawner/lootdrop/maintenance, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral/side{ - dir = 8 - }, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"dBZ" = ( -/obj/machinery/light_switch{ - pixel_x = -26 - }, -/turf/open/floor/wood, -/area/crew_quarters/theatre{ - name = "Abandoned Theatre" - }) -"dCa" = ( -/turf/open/floor/wood{ - icon_state = "wood-broken" - }, -/area/crew_quarters/theatre{ - name = "Abandoned Theatre" - }) -"dCb" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/wood, -/area/crew_quarters/theatre{ - name = "Abandoned Theatre" - }) -"dCc" = ( -/obj/structure/chair/wood/normal{ - tag = "icon-wooden_chair (EAST)"; - icon_state = "wooden_chair"; - dir = 4 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/theatre{ - name = "Abandoned Theatre" - }) -"dCd" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/wood{ - tag = "icon-wood-broken6"; - icon_state = "wood-broken6" - }, -/area/crew_quarters/theatre{ - name = "Abandoned Theatre" - }) -"dCe" = ( -/obj/structure/table/wood, -/obj/item/weapon/storage/fancy/candle_box{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/storage/fancy/candle_box, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/crew_quarters/theatre{ - name = "Abandoned Theatre" - }) -"dCf" = ( -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/machinery/power/apc{ - dir = 8; - name = "Private Investigator's Office APC"; - pixel_x = -26; - pixel_y = 3 - }, -/turf/open/floor/plating, -/area/security/detectives_office{ - name = "Private Investigator's Office" - }) -"dCg" = ( -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/effect/landmark{ - name = "xeno_spawn"; - pixel_x = -1 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/turf/open/floor/wood, -/area/security/detectives_office{ - name = "Private Investigator's Office" - }) -"dCh" = ( -/turf/open/floor/wood{ - tag = "icon-wood-broken2"; - icon_state = "wood-broken2" - }, -/area/security/detectives_office{ - name = "Private Investigator's Office" - }) -"dCi" = ( -/obj/structure/filingcabinet/security, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/security/detectives_office{ - name = "Private Investigator's Office" - }) -"dCj" = ( -/obj/structure/cable, -/obj/machinery/power/solar{ - id = "aftstarboard"; - name = "Aft-Starboard Solar Array" - }, -/turf/open/floor/plasteel/airless/solarpanel, -/area/solar/starboard) -"dCk" = ( -/obj/structure/window/reinforced, -/obj/item/target, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating/warnplate/end{ - tag = "icon-plating_warn_end (NORTH)"; - icon_state = "plating_warn_end"; - dir = 1 - }, -/area/toxins/test_area) -"dCl" = ( -/obj/machinery/button/massdriver{ - dir = 2; - id = "toxinsdriver"; - pixel_x = -24; - pixel_y = 0 - }, -/obj/structure/chair/office/dark{ - dir = 8 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dCm" = ( -/turf/open/floor/plasteel/warning{ - tag = "icon-warning (EAST)"; - dir = 4 - }, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dCn" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHEAST)"; - icon_state = "intact"; - dir = 5 - }, -/turf/open/floor/plasteel/warnwhite/side{ - tag = "icon-white_warn_side (EAST)"; - icon_state = "white_warn_side"; - dir = 4 - }, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dCo" = ( -/obj/effect/landmark/start{ - name = "Scientist" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warnwhite/side{ - tag = "icon-white_warn_side (EAST)"; - icon_state = "white_warn_side"; - dir = 4 - }, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dCp" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warnwhite/side{ - tag = "icon-white_warn_side (EAST)"; - icon_state = "white_warn_side"; - dir = 4 - }, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dCq" = ( -/obj/machinery/light_switch{ - pixel_x = 26; - pixel_y = 26 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warnwhite/side{ - tag = "icon-white_warn_side (EAST)"; - icon_state = "white_warn_side"; - dir = 4 - }, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dCr" = ( -/obj/machinery/door/firedoor, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/door/airlock/research{ - name = "Toxins Launch Site"; - req_access_txt = "8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dCs" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dCt" = ( -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/effect/landmark{ - name = "blobstart" - }, -/obj/item/device/radio/beacon, -/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, -/turf/open/floor/plasteel/bot, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dCu" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral/side{ - dir = 8; - heat_capacity = 1e+006 - }, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dCv" = ( -/obj/machinery/door/firedoor, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/door/airlock/research{ - name = "Toxins Mixing Lab"; - req_access_txt = "8" - }, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "rdtoxins"; - name = "Toxins Lab Shutters" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dCw" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/light_switch{ - pixel_x = -26; - pixel_y = -26 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/delivery, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dCx" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/whitepurple/corner{ - dir = 8 - }, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dCy" = ( -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/open/floor/plasteel/whitepurple/side, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dCz" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/whitepurple/corner, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dCA" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/delivery, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dCB" = ( -/obj/machinery/door/firedoor/heavy, -/obj/machinery/door/airlock/research{ - name = "Toxins Secure Storage"; - req_access_txt = "8" - }, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "rdtoxins"; - name = "Toxins Lab Shutters" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/warning/side, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dCC" = ( -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHWEST)"; - icon_state = "intact"; - dir = 9 - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/delivery, -/area/toxins/storage) -"dCD" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/bot, -/area/toxins/storage) -"dCE" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/warning/side, -/area/toxins/storage) -"dCF" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/delivery, -/area/toxins/storage) -"dCG" = ( -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/turf/open/floor/plasteel/delivery, -/area/toxins/storage) -"dCH" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 2; - external_pressure_bound = 140; - name = "server vent"; - on = 1; - pressure_checks = 0 - }, -/turf/open/floor/plasteel/circuit/gcircuit{ - name = "Mainframe Base"; - initial_gas_mix = "n2=100;TEMP=80" - }, -/area/toxins/server{ - name = "\improper Research Division Server Room" - }) -"dCI" = ( -/obj/machinery/atmospherics/pipe/simple/general/hidden, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/toxins/server{ - name = "\improper Research Division Server Room" - }) -"dCJ" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 2; - external_pressure_bound = 120; - initialize_directions = 1; - internal_pressure_bound = 4000; - name = "server vent"; - on = 1; - pressure_checks = 2; - pump_direction = 0 - }, -/obj/machinery/camera{ - c_tag = "Science - Server Room"; - dir = 8; - name = "science camera"; - network = list("SS13","RD") - }, -/turf/open/floor/plasteel/circuit/gcircuit{ - name = "Mainframe Base"; - initial_gas_mix = "n2=100;TEMP=80" - }, -/area/toxins/server{ - name = "\improper Research Division Server Room" - }) -"dCK" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/extinguisher_cabinet{ - pixel_x = -26 - }, -/obj/machinery/camera{ - c_tag = "Science - Aft"; - dir = 4; - name = "science camera"; - network = list("SS13","RD") - }, -/turf/open/floor/plasteel/whitepurple/corner{ - dir = 8 - }, -/area/medical/research{ - name = "Research Division" - }) -"dCL" = ( -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral, -/area/medical/research{ - name = "Research Division" - }) -"dCM" = ( -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/power/apc{ - dir = 4; - name = "Research Division APC"; - pixel_x = 26; - pixel_y = 0 - }, -/turf/open/floor/plasteel/whitepurple/corner, -/area/medical/research{ - name = "Research Division" - }) -"dCN" = ( -/obj/structure/table, -/obj/item/weapon/stock_parts/cell/high, -/obj/item/weapon/stock_parts/cell/high, -/obj/machinery/cell_charger, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = 0; - pixel_y = -26 - }, -/turf/open/floor/plasteel/bot, -/area/assembly/robotics) -"dCO" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/bot, -/area/assembly/robotics) -"dCP" = ( -/obj/structure/closet/wardrobe/robotics_black, -/obj/structure/window/reinforced{ - dir = 4; - pixel_x = 0 - }, -/turf/open/floor/plasteel/bot, -/area/assembly/robotics) -"dCQ" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/delivery, -/area/assembly/robotics) -"dCR" = ( -/obj/structure/table/reinforced, -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/item/device/mmi, -/obj/item/device/mmi, -/obj/item/device/mmi, -/obj/structure/sign/bluecross_2{ - pixel_y = -32 - }, -/turf/open/floor/plasteel/bot, -/area/assembly/robotics) -"dCS" = ( -/obj/machinery/computer/operating, -/obj/machinery/newscaster{ - pixel_y = -32 - }, -/turf/open/floor/plasteel/whitepurple/corner{ - dir = 8 - }, -/area/assembly/robotics) -"dCT" = ( -/obj/structure/table/optable, -/obj/effect/decal/cleanable/blood/old, -/obj/machinery/status_display{ - pixel_y = -32 - }, -/turf/open/floor/plasteel/whitepurple/corner, -/area/assembly/robotics) -"dCU" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/scalpel{ - pixel_y = 16 - }, -/obj/item/weapon/circular_saw, -/obj/structure/sign/nosmoking_2{ - pixel_y = -32 - }, -/obj/structure/mirror{ - desc = "Mirror mirror on the wall, who is the most robust of them all?"; - pixel_x = 28 - }, -/turf/open/floor/plasteel/bot, -/area/assembly/robotics) -"dCV" = ( -/obj/machinery/disposal/bin, -/turf/open/floor/plating, -/area/medical/morgue) -"dCW" = ( -/obj/structure/cable/white, -/obj/machinery/power/apc{ - dir = 2; - name = "Morgue APC"; - pixel_y = -26 - }, -/turf/open/floor/plating, -/area/medical/morgue) -"dCX" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/light/small, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/medical/morgue) -"dCY" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/sign/poster{ - icon_state = "poster6_legit"; - pixel_x = 0; - pixel_y = -32; - tag = "icon-poster6_legit" - }, -/obj/machinery/camera{ - c_tag = "Medbay - Morgue"; - dir = 1; - name = "medbay camera" - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/medical/morgue) -"dCZ" = ( -/obj/machinery/airalarm{ - dir = 1; - icon_state = "alarm0"; - pixel_y = -22 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plating{ - icon_state = "platingdmg1" - }, -/area/medical/morgue) -"dDa" = ( -/obj/structure/bodycontainer/morgue, -/obj/effect/decal/cleanable/dirt, -/obj/effect/landmark{ - name = "revenantspawn" - }, -/turf/open/floor/plating, -/area/medical/morgue) -"dDb" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/light_construct/small, -/turf/open/floor/plating, -/area/medical/morgue) -"dDc" = ( -/obj/structure/table, -/obj/item/stack/packageWrap, -/obj/item/weapon/hand_labeler, -/turf/open/floor/plating, -/area/medical/morgue) -"dDd" = ( -/obj/structure/closet/secure_closet/medical3, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/medical/morgue) -"dDe" = ( -/obj/structure/closet/wardrobe/white/medical, -/turf/open/floor/plating, -/area/medical/morgue) -"dDf" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/medical/morgue) -"dDg" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/medical/morgue) -"dDh" = ( -/obj/machinery/suit_storage_unit/cmo, -/turf/open/floor/plasteel/warning{ - dir = 6 - }, -/area/medical/cmo) -"dDi" = ( -/obj/structure/table/glass, -/obj/machinery/computer/med_data/laptop, -/obj/machinery/newscaster{ - pixel_y = -32 - }, -/turf/open/floor/plasteel/cmo, -/area/medical/cmo) -"dDj" = ( -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = 0; - pixel_y = -26 - }, -/obj/machinery/camera{ - c_tag = "Medbay - Chief Medical Officer's Quarters"; - dir = 1; - name = "medbay camera" - }, -/turf/open/floor/plasteel/cmo, -/area/medical/cmo) -"dDk" = ( -/obj/machinery/computer/security/telescreen/entertainment{ - pixel_x = 0; - pixel_y = -32 - }, -/turf/open/floor/plasteel/cmo, -/area/medical/cmo) -"dDl" = ( -/obj/structure/table/wood, -/obj/item/device/flashlight/lamp, -/obj/structure/sign/nanotrasen{ - pixel_x = 32 - }, -/turf/open/floor/plasteel/cmo, -/area/medical/cmo) -"dDm" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/whitegreen/corner{ - dir = 8 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dDn" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/whitegreen/side, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dDo" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/plasteel/whitegreen/corner, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dDp" = ( -/obj/structure/closet/crate, -/obj/effect/landmark/costume, -/obj/effect/spawner/lootdrop/maintenance, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"dDq" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"dDr" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Maintenance Hatch"; - req_access_txt = "12" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/barricade/wooden, -/turf/open/floor/plasteel/warning/side, -/area/crew_quarters/theatre{ - name = "Abandoned Theatre" - }) -"dDs" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/wood, -/area/crew_quarters/theatre{ - name = "Abandoned Theatre" - }) -"dDt" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/mob/living/simple_animal/cockroach, -/turf/open/floor/wood, -/area/crew_quarters/theatre{ - name = "Abandoned Theatre" - }) -"dDu" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/wood, -/area/crew_quarters/theatre{ - name = "Abandoned Theatre" - }) -"dDv" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/wood, -/area/crew_quarters/theatre{ - name = "Abandoned Theatre" - }) -"dDw" = ( -/obj/structure/chair/wood/normal{ - tag = "icon-wooden_chair (EAST)"; - icon_state = "wooden_chair"; - dir = 4 - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/theatre{ - name = "Abandoned Theatre" - }) -"dDx" = ( -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/theatre{ - name = "Abandoned Theatre" - }) -"dDy" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/theatre{ - name = "Abandoned Theatre" - }) -"dDz" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/landmark{ - name = "xeno_spawn"; - pixel_x = -1 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/plating, -/area/crew_quarters/theatre{ - name = "Abandoned Theatre" - }) -"dDA" = ( -/obj/structure/mirror{ - desc = "Mirror mirror on the wall, who is the most robust of them all?"; - pixel_x = 28 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/crew_quarters/theatre{ - name = "Abandoned Theatre" - }) -"dDB" = ( -/turf/open/floor/wood{ - tag = "icon-wood-broken7"; - icon_state = "wood-broken7" - }, -/area/security/detectives_office{ - name = "Private Investigator's Office" - }) -"dDC" = ( -/obj/structure/chair/office/dark, -/turf/open/floor/wood, -/area/security/detectives_office{ - name = "Private Investigator's Office" - }) -"dDD" = ( -/obj/structure/chair/office/dark, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/wood, -/area/security/detectives_office{ - name = "Private Investigator's Office" - }) -"dDE" = ( -/mob/living/simple_animal/cockroach, -/turf/open/floor/wood, -/area/security/detectives_office{ - name = "Private Investigator's Office" - }) -"dDF" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/sign/poster{ - icon_state = "poster16_legit"; - pixel_x = 32; - pixel_y = 0; - tag = "icon-poster16_legit" - }, -/obj/machinery/light/small{ - dir = 4 - }, -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/security/detectives_office{ - name = "Private Investigator's Office" - }) -"dDG" = ( -/obj/structure/chair, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating/warnplate{ - dir = 9 - }, -/area/toxins/test_area) -"dDH" = ( -/turf/open/floor/plating, -/area/toxins/test_area) -"dDI" = ( -/obj/structure/chair, -/turf/open/floor/plating/warnplate{ - dir = 5 - }, -/area/toxins/test_area) -"dDJ" = ( -/obj/machinery/doppler_array{ - dir = 4 - }, -/obj/structure/extinguisher_cabinet{ - pixel_x = -26; - pixel_y = -32 - }, -/turf/open/floor/plasteel/warning{ - dir = 10 - }, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dDK" = ( -/obj/machinery/light, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/warning{ - dir = 6 - }, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dDL" = ( -/obj/item/stack/rods{ - amount = 50 - }, -/obj/item/stack/sheet/glass{ - amount = 50 - }, -/obj/item/stack/sheet/metal{ - amount = 50 - }, -/obj/item/target, -/obj/item/target/syndicate, -/obj/item/target/alien, -/obj/item/target/clown, -/obj/structure/closet/crate/secure{ - desc = "A secure crate containing various materials for building a customised test-site."; - name = "Test Site Materials Crate"; - req_access_txt = "8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/bot, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dDM" = ( -/obj/structure/table, -/obj/effect/decal/cleanable/dirt, -/obj/item/clothing/gloves/color/latex, -/obj/item/clothing/glasses/science, -/obj/item/clothing/glasses/science, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/bot, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dDN" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/bot, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dDO" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/firealarm{ - dir = 4; - icon_state = "fire0"; - pixel_x = 24; - pixel_y = 0; - tag = "icon-fire0 (EAST)" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/bot, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dDP" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall/r_wall, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dDQ" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/light/small, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning{ - dir = 10 - }, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dDR" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 1 - }, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dDS" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plasteel/warning{ - dir = 6 - }, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dDT" = ( -/obj/structure/tank_dispenser, -/turf/open/floor/plasteel/bot, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dDU" = ( -/obj/structure/rack, -/obj/structure/extinguisher_cabinet{ - pixel_y = -32 - }, -/obj/item/clothing/suit/fire/firefighter, -/obj/item/clothing/head/hardhat/red, -/obj/item/clothing/mask/gas, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHEAST)"; - icon_state = "intact"; - dir = 5 - }, -/turf/open/floor/plasteel/bot, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dDV" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plasteel/delivery, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dDW" = ( -/obj/machinery/disposal/bin, -/obj/effect/decal/cleanable/dirt, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = 0; - pixel_y = -32 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/delivery, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dDX" = ( -/obj/item/weapon/storage/toolbox/mechanical{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/weapon/storage/toolbox/electrical, -/obj/structure/sign/poster{ - icon_state = "poster22_legit"; - pixel_y = -32; - tag = "icon-poster22_legit" - }, -/obj/structure/table/reinforced, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/bot, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dDY" = ( -/obj/structure/sign/securearea, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/closed/wall/r_wall, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dDZ" = ( -/obj/structure/table, -/obj/item/weapon/paper_bin, -/obj/item/weapon/pen, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/obj/machinery/camera{ - c_tag = "Science - Toxins Secure Storage"; - dir = 4; - name = "science camera"; - network = list("SS13","RD") - }, -/turf/open/floor/plasteel/bot, -/area/toxins/storage) -"dEa" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHWEST)"; - icon_state = "intact"; - dir = 9 - }, -/turf/open/floor/plasteel/bot, -/area/toxins/storage) -"dEb" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/warning/side, -/area/toxins/storage) -"dEc" = ( -/obj/machinery/portable_atmospherics/scrubber/huge, -/turf/open/floor/plasteel/bot, -/area/toxins/storage) -"dEd" = ( -/obj/machinery/portable_atmospherics/scrubber/huge, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/power/apc{ - dir = 4; - name = "Toxins Storage APC"; - pixel_x = 26; - pixel_y = 0 - }, -/obj/structure/cable/white, -/turf/open/floor/plasteel/bot, -/area/toxins/storage) -"dEe" = ( -/obj/machinery/r_n_d/server/core, -/obj/machinery/atmospherics/pipe/simple/general/hidden{ - tag = "icon-intact (NORTHEAST)"; - icon_state = "intact"; - dir = 5 - }, -/turf/open/floor/plasteel/circuit/gcircuit{ - name = "Mainframe Base"; - initial_gas_mix = "n2=100;TEMP=80" - }, -/area/toxins/server{ - name = "\improper Research Division Server Room" - }) -"dEf" = ( -/obj/machinery/atmospherics/pipe/manifold/general/hidden, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/toxins/server{ - name = "\improper Research Division Server Room" - }) -"dEg" = ( -/obj/machinery/r_n_d/server/robotics, -/obj/machinery/atmospherics/pipe/simple/general/hidden{ - tag = "icon-intact (NORTHWEST)"; - icon_state = "intact"; - dir = 9 - }, -/turf/open/floor/plasteel/circuit/gcircuit{ - name = "Mainframe Base"; - initial_gas_mix = "n2=100;TEMP=80" - }, -/area/toxins/server{ - name = "\improper Research Division Server Room" - }) -"dEh" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/whitepurple/corner{ - dir = 8 - }, -/area/medical/research{ - name = "Research Division" - }) -"dEi" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/purple, -/area/medical/research{ - name = "Research Division" - }) -"dEj" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Robotics Lab Maintenance"; - req_access_txt = "29" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/assembly/robotics) -"dEk" = ( -/obj/structure/plasticflaps{ - opacity = 1 - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/navbeacon{ - codes_txt = "delivery;dir=1"; - dir = 1; - freq = 1400; - location = "Robotics" - }, -/turf/open/floor/plasteel/delivery, -/area/assembly/robotics) -"dEl" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment, -/obj/machinery/firealarm{ - dir = 4; - icon_state = "fire0"; - pixel_x = 24; - pixel_y = 0; - tag = "icon-fire0 (EAST)" - }, -/turf/open/floor/plasteel/neutral/corner, -/area/hallway/primary/aft) -"dEm" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Maintenance Hatch"; - req_access_txt = "12" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/medical/morgue) -"dEn" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/closed/wall, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dEo" = ( -/obj/machinery/door/firedoor, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/door/airlock/virology{ - name = "Virology Access"; - req_access_txt = "39" - }, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dEp" = ( -/obj/effect/landmark{ - name = "xeno_spawn"; - pixel_x = -1 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/turf/open/floor/wood{ - tag = "icon-wood-broken6"; - icon_state = "wood-broken6" - }, -/area/crew_quarters/theatre{ - name = "Abandoned Theatre" - }) -"dEq" = ( -/obj/structure/chair/wood/normal{ - tag = "icon-wooden_chair (EAST)"; - icon_state = "wooden_chair"; - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/theatre{ - name = "Abandoned Theatre" - }) -"dEr" = ( -/obj/structure/table/wood, -/obj/item/clothing/under/geisha, -/obj/item/clothing/shoes/sandal, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/theatre{ - name = "Abandoned Theatre" - }) -"dEs" = ( -/obj/structure/table/wood, -/obj/item/device/flashlight/lamp, -/turf/open/floor/plasteel/grimy, -/area/security/detectives_office{ - name = "Private Investigator's Office" - }) -"dEt" = ( -/obj/structure/table/wood, -/obj/item/weapon/folder/white{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/folder/red, -/obj/effect/decal/cleanable/dirt, -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plasteel/grimy, -/area/security/detectives_office{ - name = "Private Investigator's Office" - }) -"dEu" = ( -/obj/structure/table/wood, -/obj/item/weapon/paper_bin, -/obj/item/weapon/pen, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/grimy, -/area/security/detectives_office{ - name = "Private Investigator's Office" - }) -"dEv" = ( -/obj/structure/table/wood, -/obj/item/clothing/gloves/color/black, -/obj/item/weapon/storage/box/evidence, -/obj/item/device/taperecorder, -/obj/machinery/airalarm{ - dir = 8; - icon_state = "alarm0"; - pixel_x = 24 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/security/detectives_office{ - name = "Private Investigator's Office" - }) -"dEw" = ( -/obj/structure/chair{ - dir = 4 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating/warnplate{ - dir = 9 - }, -/area/toxins/test_area) -"dEx" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating/warnplate/corner{ - dir = 4 - }, -/area/toxins/test_area) -"dEy" = ( -/obj/effect/decal/cleanable/oil, -/turf/open/floor/plating/warnplate/corner{ - dir = 8 - }, -/area/toxins/test_area) -"dEz" = ( -/obj/structure/chair{ - dir = 8 - }, -/turf/open/floor/plating/warnplate{ - dir = 5 - }, -/area/toxins/test_area) -"dEA" = ( -/obj/structure/sign/vacuum, -/turf/closed/wall, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dEB" = ( -/obj/structure/sign/securearea, -/turf/closed/wall, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dEC" = ( -/obj/machinery/door/window/southleft{ - name = "Mass Driver Door"; - req_access_txt = "7" - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/loadingarea, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dED" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Maintenance Hatch"; - req_access_txt = "12" - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dEE" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Toxins Maintenance"; - req_access_txt = "8" - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dEF" = ( -/obj/machinery/portable_atmospherics/canister/carbon_dioxide, -/turf/open/floor/plasteel/bot, -/area/toxins/storage) -"dEG" = ( -/obj/machinery/portable_atmospherics/canister/nitrous_oxide, -/turf/open/floor/plasteel/bot, -/area/toxins/storage) -"dEH" = ( -/obj/machinery/portable_atmospherics/canister/nitrous_oxide, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/bot, -/area/toxins/storage) -"dEI" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/research{ - name = "Break Room"; - req_access_txt = "47" - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/medical/research{ - name = "Research Division" - }) -"dEJ" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHEAST)"; - icon_state = "intact"; - dir = 6 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 9 - }, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dEK" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/delivery, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dEL" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 1; - heat_capacity = 1e+006 - }, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dEM" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/open/floor/plasteel/delivery, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dEN" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 1 - }, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dEO" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 1; - heat_capacity = 1e+006 - }, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dEP" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 5 - }, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dEQ" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/hallway/primary/aft) -"dER" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/delivery, -/area/hallway/primary/aft) -"dES" = ( -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/aft) -"dET" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral/corner, -/area/hallway/primary/aft) -"dEU" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/delivery, -/area/hallway/primary/aft) -"dEV" = ( -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Maintenance Hatch"; - req_access_txt = "12" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/hallway/primary/aft) -"dEW" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/delivery, -/area/maintenance/aft{ - name = "Aft Maintenance" - }) -"dEX" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/aft{ - name = "Aft Maintenance" - }) -"dEY" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/aft{ - name = "Aft Maintenance" - }) -"dEZ" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 1; - heat_capacity = 1e+006 - }, -/area/maintenance/aft{ - name = "Aft Maintenance" - }) -"dFa" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 1; - heat_capacity = 1e+006 - }, -/area/maintenance/aft{ - name = "Aft Maintenance" - }) -"dFb" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/turf/open/floor/plating, -/area/maintenance/aft{ - name = "Aft Maintenance" - }) -"dFc" = ( -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/effect/decal/cleanable/dirt, -/obj/structure/closet/crate{ - icon_state = "crateopen"; - opened = 1 - }, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 2; - name = "2maintenance loot spawner" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/aft{ - name = "Aft Maintenance" - }) -"dFd" = ( -/obj/structure/girder, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/aft{ - name = "Aft Maintenance" - }) -"dFe" = ( -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/structure/rack, -/obj/item/weapon/crowbar/red, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 1; - heat_capacity = 1e+006 - }, -/area/maintenance/aft{ - name = "Aft Maintenance" - }) -"dFf" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/effect/landmark{ - name = "blobstart" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/open/floor/plasteel/neutral/side{ - dir = 1; - heat_capacity = 1e+006 - }, -/area/maintenance/aft{ - name = "Aft Maintenance" - }) -"dFg" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/delivery, -/area/maintenance/aft{ - name = "Aft Maintenance" - }) -"dFh" = ( -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/aft{ - name = "Aft Maintenance" - }) -"dFi" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/cobweb/cobweb2, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 5 - }, -/area/maintenance/aft{ - name = "Aft Maintenance" - }) -"dFj" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/whitegreen/corner{ - dir = 1 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dFk" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plasteel/whitegreen/side{ - dir = 1 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dFl" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/obj/machinery/atmospherics/pipe/manifold4w/scrubbers/hidden, -/turf/open/floor/plasteel/whitegreen/corner{ - dir = 4 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dFm" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 9 - }, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"dFn" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 1; - heat_capacity = 1e+006 - }, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"dFo" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plasteel/neutral/side{ - dir = 1; - heat_capacity = 1e+006 - }, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"dFp" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 1; - heat_capacity = 1e+006 - }, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"dFq" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHWEST)"; - icon_state = "intact"; - dir = 9 - }, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"dFr" = ( -/obj/machinery/light/small{ - dir = 8 - }, -/obj/machinery/status_display{ - pixel_x = -32 - }, -/turf/open/floor/wood{ - tag = "icon-wood-broken"; - icon_state = "wood-broken" - }, -/area/crew_quarters/theatre{ - name = "Abandoned Theatre" - }) -"dFs" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/wood, -/area/crew_quarters/theatre{ - name = "Abandoned Theatre" - }) -"dFt" = ( -/obj/structure/table/wood, -/obj/item/clothing/head/papersack/smiley, -/obj/item/weapon/pen, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/theatre{ - name = "Abandoned Theatre" - }) -"dFu" = ( -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/theatre{ - name = "Abandoned Theatre" - }) -"dFv" = ( -/turf/open/floor/wood{ - tag = "icon-wood-broken"; - icon_state = "wood-broken" - }, -/area/crew_quarters/theatre{ - name = "Abandoned Theatre" - }) -"dFw" = ( -/obj/structure/table/wood, -/obj/item/clothing/suit/cardborg, -/obj/item/clothing/head/cardborg, -/obj/machinery/light/small{ - dir = 4 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/crew_quarters/theatre{ - name = "Abandoned Theatre" - }) -"dFx" = ( -/obj/structure/frame/computer, -/obj/item/weapon/circuitboard/computer/secure_data, -/obj/machinery/light/small{ - dir = 8 - }, -/obj/machinery/status_display{ - pixel_x = -32 - }, -/turf/open/floor/plasteel/grimy, -/area/security/detectives_office{ - name = "Private Investigator's Office" - }) -"dFy" = ( -/obj/structure/chair/office/dark{ - dir = 1 - }, -/turf/open/floor/plasteel/grimy, -/area/security/detectives_office{ - name = "Private Investigator's Office" - }) -"dFz" = ( -/obj/structure/table/wood, -/obj/item/weapon/storage/fancy/cigarettes/cigpack_uplift{ - pixel_x = 6 - }, -/obj/item/weapon/storage/fancy/cigarettes/cigpack_carp{ - pixel_x = -3 - }, -/obj/item/weapon/lighter, -/turf/open/floor/plasteel/grimy, -/area/security/detectives_office{ - name = "Private Investigator's Office" - }) -"dFA" = ( -/turf/open/floor/wood{ - tag = "icon-wood-broken3"; - icon_state = "wood-broken3" - }, -/area/security/detectives_office{ - name = "Private Investigator's Office" - }) -"dFB" = ( -/obj/structure/rack, -/obj/item/weapon/storage/briefcase{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/weapon/storage/secure/briefcase, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/security/detectives_office{ - name = "Private Investigator's Office" - }) -"dFC" = ( -/obj/structure/lattice/catwalk, -/obj/structure/cable, -/turf/open/space, -/area/solar/starboard) -"dFD" = ( -/turf/closed/indestructible/opshuttle, -/area/toxins/test_area) -"dFE" = ( -/obj/item/target, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/camera{ - active_power_usage = 0; - c_tag = "Bomb Test Site"; - desc = "A specially-reinforced camera with a long lasting battery, used to monitor the bomb testing site."; - dir = 4; - invuln = 1; - light = null; - name = "hardened testing camera"; - network = list("Toxins"); - start_active = 1; - use_power = 0 - }, -/turf/open/floor/plating, -/area/toxins/test_area) -"dFF" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/toxins/test_area) -"dFG" = ( -/obj/item/device/radio/beacon, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/toxins/test_area) -"dFH" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating/warnplate/side{ - tag = "icon-plating_warn_side (WEST)"; - icon_state = "plating_warn_side"; - dir = 8 - }, -/area/toxins/test_area) -"dFI" = ( -/turf/open/floor/plating/warnplate/end{ - tag = "icon-plating_warn_end (EAST)"; - icon_state = "plating_warn_end"; - dir = 4 - }, -/area/toxins/test_area) -"dFJ" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating/warnplate{ - dir = 8 - }, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dFK" = ( -/turf/open/floor/plating/warnplate{ - dir = 4; - luminosity = 2; - initial_gas_mix = "o2=0.01;n2=0.01"; - temperature = 2.7 - }, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dFL" = ( -/obj/machinery/door/poddoor{ - id = "toxinsdriver"; - name = "Toxins Launcher Bay Door" - }, -/obj/structure/fans/tiny, -/turf/open/floor/plating, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dFM" = ( -/turf/open/floor/plating, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dFN" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating/warnplate{ - dir = 4; - luminosity = 2; - initial_gas_mix = "o2=0.01;n2=0.01"; - temperature = 2.7 - }, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dFO" = ( -/obj/machinery/mass_driver{ - dir = 8; - id = "toxinsdriver" - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dFP" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/reagent_dispensers/fueltank, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dFQ" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/delivery, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dFR" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral/side{ - dir = 1; - heat_capacity = 1e+006 - }, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dFS" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/neutral/side{ - dir = 1; - heat_capacity = 1e+006 - }, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dFT" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/closet/crate{ - icon_state = "crateopen"; - opened = 1 - }, -/obj/item/weapon/crowbar/red, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 2; - name = "2maintenance loot spawner" - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dFU" = ( -/obj/structure/girder, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dFV" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dFW" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dFX" = ( -/turf/open/floor/plasteel/neutral/side{ - dir = 5 - }, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dFY" = ( -/turf/closed/wall/r_wall, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dFZ" = ( -/obj/machinery/portable_atmospherics/canister/oxygen, -/turf/open/floor/plasteel/bot, -/area/toxins/storage) -"dGa" = ( -/obj/machinery/portable_atmospherics/canister/toxins, -/turf/open/floor/plasteel/bot, -/area/toxins/storage) -"dGb" = ( -/obj/structure/urinal{ - pixel_y = 28 - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/light/small{ - dir = 8 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 2; - on = 1 - }, -/obj/effect/landmark{ - name = "xeno_spawn"; - pixel_x = -1 - }, -/turf/open/floor/plasteel/neutral, -/area/medical/research{ - name = "Research Division" - }) -"dGc" = ( -/obj/structure/table/wood, -/obj/machinery/microwave{ - desc = "Cooks and boils stuff, somehow."; - pixel_x = -3; - pixel_y = 5 - }, -/obj/structure/extinguisher_cabinet{ - pixel_x = -26 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 9 - }, -/area/medical/research{ - name = "Research Division" - }) -"dGd" = ( -/obj/structure/table/wood, -/obj/structure/sign/poster{ - icon_state = "poster22_legit"; - pixel_y = 32; - tag = "icon-poster22_legit" - }, -/obj/item/weapon/storage/box/donkpockets, -/turf/open/floor/plasteel/neutral/side{ - dir = 1 - }, -/area/medical/research{ - name = "Research Division" - }) -"dGe" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_y = 26 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 1 - }, -/area/medical/research{ - name = "Research Division" - }) -"dGf" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral/side{ - dir = 1 - }, -/area/medical/research{ - name = "Research Division" - }) -"dGg" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral/side{ - dir = 5 - }, -/area/medical/research{ - name = "Research Division" - }) -"dGh" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral/side{ - dir = 10; - heat_capacity = 1e+006 - }, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dGi" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dGj" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dGk" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dGl" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/turf/open/floor/plasteel/delivery, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dGm" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral/side, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dGn" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/delivery, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dGo" = ( -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Maintenance Hatch"; - req_access_txt = "12" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/hallway/primary/aft) -"dGp" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/light/small, -/turf/open/floor/plasteel/delivery, -/area/hallway/primary/aft) -"dGq" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral/corner{ - dir = 8 - }, -/area/hallway/primary/aft) -"dGr" = ( -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/aft) -"dGs" = ( -/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral/corner, -/area/hallway/primary/aft) -"dGt" = ( -/obj/structure/closet/firecloset, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/light/small, -/turf/open/floor/plasteel/delivery, -/area/hallway/primary/aft) -"dGu" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/hallway/primary/aft) -"dGv" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/space_heater, -/turf/open/floor/plasteel/neutral/side{ - dir = 10 - }, -/area/maintenance/aft{ - name = "Aft Maintenance" - }) -"dGw" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/closet, -/obj/item/weapon/storage/box/bodybags, -/obj/effect/spawner/lootdrop/maintenance, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/aft{ - name = "Aft Maintenance" - }) -"dGx" = ( -/obj/structure/girder, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/aft{ - name = "Aft Maintenance" - }) -"dGy" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/closet/crate, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 2; - name = "2maintenance loot spawner" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/aft{ - name = "Aft Maintenance" - }) -"dGz" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side, -/area/maintenance/aft{ - name = "Aft Maintenance" - }) -"dGA" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side, -/area/maintenance/aft{ - name = "Aft Maintenance" - }) -"dGB" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/cable/white, -/obj/machinery/power/apc{ - cell_type = 5000; - dir = 2; - name = "Aft Maintenance APC"; - pixel_x = 1; - pixel_y = -24 - }, -/turf/open/floor/plating, -/area/maintenance/aft{ - name = "Aft Maintenance" - }) -"dGC" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plating, -/area/maintenance/aft{ - name = "Aft Maintenance" - }) -"dGD" = ( -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side, -/area/maintenance/aft{ - name = "Aft Maintenance" - }) -"dGE" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/aft{ - name = "Aft Maintenance" - }) -"dGF" = ( -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/aft{ - name = "Aft Maintenance" - }) -"dGG" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side, -/area/maintenance/aft{ - name = "Aft Maintenance" - }) -"dGH" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/open/floor/plasteel/neutral/side, -/area/maintenance/aft{ - name = "Aft Maintenance" - }) -"dGI" = ( -/obj/structure/reagent_dispensers/watertank, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/aft{ - name = "Aft Maintenance" - }) -"dGJ" = ( -/obj/structure/closet, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 3; - name = "3maintenance loot spawner" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side, -/area/maintenance/aft{ - name = "Aft Maintenance" - }) -"dGK" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/aft{ - name = "Aft Maintenance" - }) -"dGL" = ( -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/aft{ - name = "Aft Maintenance" - }) -"dGM" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/delivery, -/area/maintenance/aft{ - name = "Aft Maintenance" - }) -"dGN" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Maintenance Hatch"; - req_access_txt = "12" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dGO" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, -/turf/open/floor/plasteel/whitegreen/side{ - dir = 8 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dGP" = ( -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/effect/landmark{ - name = "lightsout" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_Toxins = 0 - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/turf/open/floor/plasteel/bot, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dGQ" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/whitegreen/side{ - tag = "icon-whitegreen (EAST)"; - icon_state = "whitegreen"; - dir = 4 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dGR" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Maintenance Hatch"; - req_access_txt = "12" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dGS" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/delivery, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"dGT" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"dGU" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"dGV" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"dGW" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"dGX" = ( -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHWEST)"; - icon_state = "intact"; - dir = 9 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 6 - }, -/area/maintenance/starboard{ - name = "Aft Starboard Maintenance" - }) -"dGY" = ( -/obj/structure/dresser, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/crew_quarters/theatre{ - name = "Abandoned Theatre" - }) -"dGZ" = ( -/obj/structure/table/wood, -/obj/item/weapon/wrench, -/obj/item/weapon/storage/secure/briefcase{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/storage/briefcase, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/crew_quarters/theatre{ - name = "Abandoned Theatre" - }) -"dHa" = ( -/obj/effect/decal/cleanable/dirt, -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/turf/open/floor/wood, -/area/crew_quarters/theatre{ - name = "Abandoned Theatre" - }) -"dHb" = ( -/obj/machinery/airalarm{ - dir = 1; - icon_state = "alarm0"; - pixel_y = -22 - }, -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1 - }, -/turf/open/floor/wood{ - tag = "icon-wood-broken3"; - icon_state = "wood-broken3" - }, -/area/crew_quarters/theatre{ - name = "Abandoned Theatre" - }) -"dHc" = ( -/obj/machinery/vending/cigarette, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/crew_quarters/theatre{ - name = "Abandoned Theatre" - }) -"dHd" = ( -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/structure/piano, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/crew_quarters/theatre{ - name = "Abandoned Theatre" - }) -"dHe" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/chair/stool/bar, -/turf/open/floor/plating, -/area/crew_quarters/theatre{ - name = "Abandoned Theatre" - }) -"dHf" = ( -/obj/structure/table/wood, -/obj/item/weapon/lipstick/random{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/lipstick/random{ - pixel_x = -3; - pixel_y = -3 - }, -/obj/item/weapon/lipstick/random, -/turf/open/floor/plating, -/area/crew_quarters/theatre{ - name = "Abandoned Theatre" - }) -"dHg" = ( -/obj/item/device/instrument/violin, -/obj/structure/table/wood, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/crew_quarters/theatre{ - name = "Abandoned Theatre" - }) -"dHh" = ( -/obj/structure/frame/computer, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/grimy, -/area/security/detectives_office{ - name = "Private Investigator's Office" - }) -"dHi" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/grimy, -/area/security/detectives_office{ - name = "Private Investigator's Office" - }) -"dHj" = ( -/turf/open/floor/plasteel/grimy, -/area/security/detectives_office{ - name = "Private Investigator's Office" - }) -"dHk" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/wood, -/area/security/detectives_office{ - name = "Private Investigator's Office" - }) -"dHl" = ( -/obj/structure/dresser, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/security/detectives_office{ - name = "Private Investigator's Office" - }) -"dHm" = ( -/obj/structure/lattice/catwalk, -/obj/effect/landmark{ - name = "xeno_spawn"; - pixel_x = -1 - }, -/turf/open/space, -/area/solar/starboard) -"dHn" = ( -/obj/structure/chair{ - dir = 4 - }, -/turf/open/floor/plating/warnplate{ - dir = 10 - }, -/area/toxins/test_area) -"dHo" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating/warnplate/corner{ - dir = 1 - }, -/area/toxins/test_area) -"dHp" = ( -/obj/effect/decal/cleanable/blood/old, -/obj/effect/decal/remains/human, -/turf/open/floor/plating, -/area/toxins/test_area) -"dHq" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating/warnplate/corner, -/area/toxins/test_area) -"dHr" = ( -/obj/structure/chair{ - dir = 8 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating/warnplate{ - dir = 6 - }, -/area/toxins/test_area) -"dHs" = ( -/obj/structure/rack, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 2; - name = "2maintenance loot spawner" - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dHt" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/neutral, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dHu" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHEAST)"; - icon_state = "intact"; - dir = 5 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dHv" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dHw" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dHx" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dHy" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dHz" = ( -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHWEST)"; - icon_state = "intact"; - dir = 10 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dHA" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/warning/side, -/area/toxins/storage) -"dHB" = ( -/obj/machinery/portable_atmospherics/canister/toxins, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/bot, -/area/toxins/storage) -"dHC" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock{ - name = "Bathroom" - }, -/turf/open/floor/plasteel/warning/side, -/area/medical/research{ - name = "Research Division" - }) -"dHD" = ( -/turf/open/floor/plasteel/neutral/side{ - dir = 8; - heat_capacity = 1e+006 - }, -/area/medical/research{ - name = "Research Division" - }) -"dHE" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 6 - }, -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/turf/open/floor/plasteel/redyellow, -/area/medical/research{ - name = "Research Division" - }) -"dHF" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/redyellow, -/area/medical/research{ - name = "Research Division" - }) -"dHG" = ( -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/redyellow, -/area/medical/research{ - name = "Research Division" - }) -"dHH" = ( -/obj/structure/chair/stool, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/medical/research{ - name = "Research Division" - }) -"dHI" = ( -/obj/structure/girder, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dHJ" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dHK" = ( -/obj/machinery/door/firedoor, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/door/airlock/glass_command{ - cyclelinkeddir = 0; - name = "Customs Desk"; - req_access_txt = "19" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/bridge{ - name = "Customs" - }) -"dHL" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall, -/area/bridge{ - name = "Customs" - }) -"dHM" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass{ - name = "Departures Lounge" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/hallway/primary/aft) -"dHN" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass{ - name = "Departures Lounge" - }, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/hallway/primary/aft) -"dHO" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass{ - name = "Departures Lounge" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/hallway/primary/aft) -"dHP" = ( -/turf/closed/wall, -/area/maintenance/aft{ - name = "Aft Maintenance" - }) -"dHQ" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/maintenance/aft{ - name = "Aft Maintenance" - }) -"dHR" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/obj/machinery/camera{ - c_tag = "Virology - Medbay Access"; - dir = 4; - name = "virology camera" - }, -/turf/open/floor/plasteel/whitegreen/side{ - dir = 8 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dHS" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/plasteel/bot, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dHT" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/whitegreen/side{ - tag = "icon-whitegreen (EAST)"; - icon_state = "whitegreen"; - dir = 4 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dHU" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/crew_quarters/theatre{ - name = "Abandoned Theatre" - }) -"dHV" = ( -/obj/structure/chair{ - dir = 1 - }, -/turf/open/floor/plating/warnplate{ - dir = 10 - }, -/area/toxins/test_area) -"dHW" = ( -/obj/structure/chair{ - dir = 1 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating/warnplate{ - dir = 6 - }, -/area/toxins/test_area) -"dHX" = ( -/obj/machinery/door/airlock/external{ - name = "External Airlock"; - req_access_txt = "13" - }, -/turf/open/floor/plasteel/warning/side, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dHY" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/bot, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dHZ" = ( -/obj/machinery/door/airlock/external{ - name = "External Airlock"; - req_access_txt = "13" - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning/side, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dIa" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/delivery, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dIb" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/neutral/side{ - dir = 8; - heat_capacity = 1e+006 - }, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dIc" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHEAST)"; - icon_state = "intact"; - dir = 6 - }, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/turf/open/floor/plasteel/delivery, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dId" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/delivery, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dIe" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 10 - }, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dIf" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/turf/open/floor/plasteel/neutral/side, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dIg" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dIh" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dIi" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dIj" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 10 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dIk" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dIl" = ( -/obj/machinery/portable_atmospherics/canister/oxygen, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/bot, -/area/toxins/storage) -"dIm" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning/side, -/area/toxins/storage) -"dIn" = ( -/obj/structure/sink{ - dir = 8; - icon_state = "sink"; - pixel_x = -12 - }, -/obj/structure/mirror{ - desc = "Mirror mirror on the wall, who is the most robust of them all?"; - pixel_x = 28 - }, -/obj/effect/decal/cleanable/dirt, -/obj/effect/landmark{ - name = "blobstart" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 5 - }, -/turf/open/floor/plating{ - icon_state = "panelscorched" - }, -/area/medical/research{ - name = "Research Division" - }) -"dIo" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/medical/research{ - name = "Research Division" - }) -"dIp" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 8; - heat_capacity = 1e+006 - }, -/area/medical/research{ - name = "Research Division" - }) -"dIq" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/disposalpipe/segment, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/redyellow, -/area/medical/research{ - name = "Research Division" - }) -"dIr" = ( -/obj/effect/landmark/start{ - name = "Scientist" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/redyellow, -/area/medical/research{ - name = "Research Division" - }) -"dIs" = ( -/obj/structure/chair/stool, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plasteel/redyellow, -/area/medical/research{ - name = "Research Division" - }) -"dIt" = ( -/obj/structure/table/wood, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHWEST)"; - icon_state = "intact"; - dir = 9 - }, -/obj/item/weapon/reagent_containers/food/drinks/soda_cans/dr_gibb, -/obj/machinery/camera{ - c_tag = "Science - Break Room"; - dir = 8; - name = "science camera"; - network = list("SS13","RD") - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/medical/research{ - name = "Research Division" - }) -"dIu" = ( -/obj/structure/rack, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 2; - name = "2maintenance loot spawner" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dIv" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral/side{ - dir = 5 - }, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dIw" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/obj/machinery/airalarm{ - dir = 4; - locked = 0; - pixel_x = -23; - pixel_y = 0 - }, -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_y = 26 - }, -/turf/open/floor/plasteel/blue/side{ - dir = 9 - }, -/area/bridge{ - name = "Customs" - }) -"dIx" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/light_switch{ - pixel_x = 26; - pixel_y = 26 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/blue/side{ - dir = 1 - }, -/area/bridge{ - name = "Customs" - }) -"dIy" = ( -/obj/machinery/photocopier, -/obj/machinery/computer/security/telescreen/entertainment{ - pixel_x = 32; - pixel_y = 32 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/blue/side{ - dir = 1 - }, -/area/bridge{ - name = "Customs" - }) -"dIz" = ( -/obj/structure/filingcabinet/medical, -/obj/machinery/firealarm{ - dir = 4; - icon_state = "fire0"; - pixel_x = 24; - pixel_y = 0; - tag = "icon-fire0 (EAST)" - }, -/turf/open/floor/plasteel/blue/side{ - dir = 5 - }, -/area/bridge{ - name = "Customs" - }) -"dIA" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/obj/machinery/computer/security/telescreen/entertainment{ - pixel_y = 32 - }, -/obj/machinery/camera{ - c_tag = "Departures Hallway - Aft"; - dir = 4; - name = "hallway camera" - }, -/turf/open/floor/plasteel/bot, -/area/hallway/primary/aft) -"dIB" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/escape{ - tag = "icon-escape (NORTH)"; - icon_state = "escape"; - dir = 1 - }, -/area/hallway/primary/aft) -"dIC" = ( -/turf/open/floor/plasteel/escape{ - tag = "icon-escape (NORTH)"; - icon_state = "escape"; - dir = 1 - }, -/area/hallway/primary/aft) -"dID" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/escape{ - tag = "icon-escape (NORTH)"; - icon_state = "escape"; - dir = 1 - }, -/area/hallway/primary/aft) -"dIE" = ( -/obj/structure/table, -/obj/machinery/airalarm{ - pixel_y = 22 - }, -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/obj/machinery/newscaster{ - pixel_x = 32 - }, -/obj/item/weapon/paper_bin, -/obj/item/weapon/pen, -/turf/open/floor/plasteel/delivery, -/area/hallway/primary/aft) -"dIF" = ( -/obj/machinery/light/small, -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/whitegreen/corner{ - dir = 8 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dIG" = ( -/obj/machinery/light/small, -/obj/machinery/iv_drip, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/whitegreen/corner, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dIH" = ( -/obj/item/stack/cable_coil, -/obj/structure/lattice/catwalk, -/turf/open/space, -/area/solar/starboard) -"dII" = ( -/obj/structure/window/reinforced{ - dir = 1; - pixel_y = 1 - }, -/obj/item/target, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating/warnplate/end, -/area/toxins/test_area) -"dIJ" = ( -/turf/closed/wall, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dIK" = ( -/turf/closed/wall, -/area/library{ - name = "Abandoned Library" - }) -"dIL" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/structure/barricade/wooden, -/turf/open/floor/plating, -/area/library{ - name = "Abandoned Library" - }) -"dIM" = ( -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Maintenance Hatch"; - req_access_txt = "12" - }, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/structure/barricade/wooden, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/library{ - name = "Abandoned Library" - }) -"dIN" = ( -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Maintenance Hatch"; - req_access_txt = "12" - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/barricade/wooden, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/library{ - name = "Abandoned Library" - }) -"dIO" = ( -/turf/open/floor/plasteel/neutral/side{ - dir = 8; - heat_capacity = 1e+006 - }, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dIP" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dIQ" = ( -/turf/closed/wall/r_wall, -/area/toxins/storage) -"dIR" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/door/airlock{ - name = "Bathroom" - }, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/medical/research{ - name = "Research Division" - }) -"dIS" = ( -/obj/machinery/vending/coffee, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral/side{ - dir = 8; - heat_capacity = 1e+006 - }, -/area/medical/research{ - name = "Research Division" - }) -"dIT" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_Toxins = 0 - }, -/obj/structure/disposalpipe/segment, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/redyellow, -/area/medical/research{ - name = "Research Division" - }) -"dIU" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/redyellow, -/area/medical/research{ - name = "Research Division" - }) -"dIV" = ( -/obj/structure/chair/stool, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/turf/open/floor/plasteel/redyellow, -/area/medical/research{ - name = "Research Division" - }) -"dIW" = ( -/obj/structure/table/wood, -/obj/machinery/newscaster{ - pixel_x = 32 - }, -/obj/item/weapon/clipboard, -/obj/item/weapon/folder, -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/medical/research{ - name = "Research Division" - }) -"dIX" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral/side{ - dir = 8 - }, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dIY" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/effect/landmark{ - name = "blobstart" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dIZ" = ( -/obj/machinery/computer/med_data, -/obj/machinery/status_display{ - pixel_x = -32 - }, -/turf/open/floor/plasteel/blue/side{ - dir = 10 - }, -/area/bridge{ - name = "Customs" - }) -"dJa" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/turf/open/floor/plasteel/neutral, -/area/bridge{ - name = "Customs" - }) -"dJb" = ( -/obj/machinery/holopad, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/bot, -/area/bridge{ - name = "Customs" - }) -"dJc" = ( -/obj/structure/table/reinforced, -/obj/item/stack/packageWrap, -/obj/item/weapon/hand_labeler, -/turf/open/floor/plasteel/blue/side{ - dir = 6 - }, -/area/bridge{ - name = "Customs" - }) -"dJd" = ( -/obj/structure/cable/white{ - tag = "icon-0-2"; - icon_state = "0-2" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/bridge{ - name = "Customs" - }) -"dJe" = ( -/turf/open/floor/plasteel/bot, -/area/hallway/primary/aft) -"dJf" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/aft) -"dJg" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/aft) -"dJh" = ( -/obj/structure/chair{ - dir = 8 - }, -/turf/open/floor/plasteel/delivery, -/area/hallway/primary/aft) -"dJi" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/hallway/primary/aft) -"dJj" = ( -/obj/structure/shuttle/engine/propulsion{ - tag = "icon-propulsion (NORTH)"; - icon_state = "propulsion"; - dir = 1 - }, -/turf/open/floor/plating/warnplate{ - dir = 1 - }, -/area/shuttle/escape) -"dJk" = ( -/turf/closed/wall/mineral/plastitanium, -/area/shuttle/escape) -"dJl" = ( -/turf/closed/wall/r_wall, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dJm" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/closed/wall/r_wall, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dJn" = ( -/obj/machinery/door/firedoor, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/door/airlock/virology{ - name = "Virology Access"; - req_access_txt = "39" - }, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (EAST)"; - icon_state = "plasteel_warn_side"; - dir = 4 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dJo" = ( -/obj/structure/sign/biohazard, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall/r_wall, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dJp" = ( -/turf/closed/wall/r_wall, -/area/medical/virology) -"dJq" = ( -/obj/structure/grille, -/obj/structure/cable/white{ - d2 = 2; - icon_state = "0-2"; - tag = "icon-0-2" - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/medical/virology) -"dJr" = ( -/obj/structure/grille, -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/medical/virology) -"dJs" = ( -/obj/structure/grille, -/obj/structure/cable/white{ - tag = "icon-0-2"; - icon_state = "0-2" - }, -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/medical/virology) -"dJt" = ( -/obj/structure/table/wood, -/obj/effect/decal/cleanable/cobweb, -/obj/effect/decal/cleanable/dirt, -/obj/item/weapon/paper_bin, -/obj/item/weapon/pen, -/turf/open/floor/plating, -/area/library{ - name = "Abandoned Library" - }) -"dJu" = ( -/obj/structure/table/wood, -/obj/effect/decal/cleanable/dirt, -/obj/item/weapon/folder, -/obj/item/weapon/pen, -/turf/open/floor/plating, -/area/library{ - name = "Abandoned Library" - }) -"dJv" = ( -/obj/effect/decal/cleanable/dirt, -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/library{ - name = "Abandoned Library" - }) -"dJw" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/grimy, -/area/library{ - name = "Abandoned Library" - }) -"dJx" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/grimy, -/area/library{ - name = "Abandoned Library" - }) -"dJy" = ( -/obj/effect/decal/cleanable/dirt, -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/turf/open/floor/plasteel/black, -/area/library{ - name = "Abandoned Library" - }) -"dJz" = ( -/obj/structure/table/wood, -/obj/item/weapon/dice/d20, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/library{ - name = "Abandoned Library" - }) -"dJA" = ( -/turf/open/floor/plasteel/grimy, -/area/library{ - name = "Abandoned Library" - }) -"dJB" = ( -/obj/structure/chair/office/dark, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/grimy, -/area/library{ - name = "Abandoned Library" - }) -"dJC" = ( -/obj/structure/chair/office/dark, -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/plating, -/area/library{ - name = "Abandoned Library" - }) -"dJD" = ( -/obj/effect/decal/cleanable/cobweb/cobweb2, -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/turf/open/floor/plasteel/grimy, -/area/library{ - name = "Abandoned Library" - }) -"dJE" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 8; - heat_capacity = 1e+006 - }, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dJF" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dJG" = ( -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dJH" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible, -/turf/open/floor/plasteel/warning{ - dir = 10 - }, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dJI" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible, -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/plasteel/warning, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dJJ" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning{ - dir = 6 - }, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dJK" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/power/apc{ - cell_type = 5000; - dir = 1; - name = "Aft Port Maintenance APC"; - pixel_x = 0; - pixel_y = 25 - }, -/obj/structure/cable/white{ - tag = "icon-0-2"; - icon_state = "0-2" - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 1 - }, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dJL" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/oil, -/obj/effect/landmark{ - name = "blobstart" - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 1 - }, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dJM" = ( -/obj/structure/toilet{ - tag = "icon-toilet00 (WEST)"; - icon_state = "toilet00"; - dir = 8 - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/light/small, -/obj/machinery/newscaster{ - pixel_x = -32 - }, -/turf/open/floor/plasteel/neutral, -/area/medical/research{ - name = "Research Division" - }) -"dJN" = ( -/obj/machinery/disposal/bin, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/trunk{ - dir = 4 - }, -/turf/open/floor/plasteel/bot, -/area/medical/research{ - name = "Research Division" - }) -"dJO" = ( -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/neutral/side, -/area/medical/research{ - name = "Research Division" - }) -"dJP" = ( -/obj/machinery/vending/cola, -/obj/machinery/light, -/obj/machinery/status_display{ - pixel_y = -32 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral/side, -/area/medical/research{ - name = "Research Division" - }) -"dJQ" = ( -/obj/machinery/vending/cigarette, -/turf/open/floor/plasteel/neutral/side, -/area/medical/research{ - name = "Research Division" - }) -"dJR" = ( -/obj/structure/table/wood, -/obj/item/weapon/paper_bin, -/obj/item/weapon/pen, -/turf/open/floor/plasteel/neutral/side{ - dir = 6 - }, -/area/medical/research{ - name = "Research Division" - }) -"dJS" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral/side{ - dir = 8 - }, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dJT" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dJU" = ( -/obj/machinery/computer/card, -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/machinery/power/apc{ - dir = 8; - name = "Departures Customs APC"; - pixel_x = -26; - pixel_y = 3 - }, -/obj/machinery/camera{ - c_tag = "Departures Customs"; - dir = 4; - name = "customs camera" - }, -/turf/open/floor/plasteel/blue, -/area/bridge{ - name = "Customs" - }) -"dJV" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/turf/open/floor/plasteel/neutral, -/area/bridge{ - name = "Customs" - }) -"dJW" = ( -/obj/structure/chair/office/light{ - dir = 4 - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral, -/area/bridge{ - name = "Customs" - }) -"dJX" = ( -/obj/structure/table/reinforced, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/item/weapon/folder/blue, -/obj/item/weapon/pen, -/turf/open/floor/plasteel/blue, -/area/bridge{ - name = "Customs" - }) -"dJY" = ( -/obj/machinery/door/firedoor, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/machinery/door/window/brigdoor/southright{ - dir = 8; - name = "Customs Desk"; - req_access_txt = "19" - }, -/turf/open/floor/plasteel/warning/side, -/area/bridge{ - name = "Customs" - }) -"dJZ" = ( -/turf/open/floor/plasteel/delivery, -/area/hallway/primary/aft) -"dKa" = ( -/obj/machinery/holopad, -/turf/open/floor/plasteel/bot, -/area/hallway/primary/aft) -"dKb" = ( -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/aft) -"dKc" = ( -/obj/structure/chair{ - dir = 8 - }, -/obj/effect/landmark/start{ - name = "Assistant" - }, -/turf/open/floor/plasteel/delivery, -/area/hallway/primary/aft) -"dKd" = ( -/obj/structure/window/reinforced, -/obj/structure/shuttle/engine/heater{ - tag = "icon-heater (NORTH)"; - icon_state = "heater"; - dir = 1 - }, -/turf/open/floor/plating/warnplate{ - dir = 1 - }, -/area/shuttle/escape) -"dKe" = ( -/obj/structure/sink{ - dir = 8; - icon_state = "sink"; - pixel_x = -12 - }, -/obj/machinery/shower{ - dir = 8; - icon_state = "shower"; - name = "emergency shower" - }, -/obj/machinery/firealarm{ - dir = 8; - pixel_x = -24; - pixel_y = 0 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/turf/open/floor/plasteel/bot, -/area/medical/virology) -"dKf" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/warnwhite{ - tag = "icon-white_warn (NORTHWEST)"; - icon_state = "white_warn"; - dir = 9 - }, -/area/medical/virology) -"dKg" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/camera{ - c_tag = "Virology - Airlock"; - dir = 2; - name = "virology camera" - }, -/turf/open/floor/plasteel/delivery, -/area/medical/virology) -"dKh" = ( -/obj/structure/grille, -/obj/structure/cable/white{ - d2 = 2; - icon_state = "0-2"; - tag = "icon-0-2" - }, -/obj/structure/window/reinforced/fulltile, -/obj/structure/sign/vacuum, -/turf/open/floor/plating, -/area/medical/virology) -"dKi" = ( -/turf/open/floor/plasteel/whitegreen/corner{ - dir = 1 - }, -/area/medical/virology) -"dKj" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/turf/open/floor/plasteel/whitegreen/side{ - dir = 1 - }, -/area/medical/virology) -"dKk" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/turf/open/floor/plasteel/whitegreen/corner{ - dir = 4 - }, -/area/medical/virology) -"dKl" = ( -/turf/closed/wall, -/area/medical/virology) -"dKm" = ( -/obj/structure/table/glass, -/obj/machinery/newscaster{ - pixel_x = -32 - }, -/obj/item/weapon/paper_bin, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_y = 26 - }, -/obj/machinery/computer/security/telescreen/entertainment{ - pixel_x = -32; - pixel_y = 32 - }, -/turf/open/floor/plasteel/whitegreen/corner{ - dir = 1 - }, -/area/medical/virology) -"dKn" = ( -/obj/structure/table/glass, -/obj/machinery/computer/med_data/laptop, -/turf/open/floor/plasteel/whitegreen/corner{ - dir = 1 - }, -/area/medical/virology) -"dKo" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/filingcabinet/chestdrawer, -/turf/open/floor/plasteel/whitegreen/corner{ - dir = 4 - }, -/area/medical/virology) -"dKp" = ( -/obj/machinery/light/small{ - dir = 4 - }, -/obj/structure/sign/nanotrasen{ - pixel_x = 32; - pixel_y = 32 - }, -/obj/structure/extinguisher_cabinet{ - pixel_x = 26 - }, -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/obj/machinery/camera{ - c_tag = "Virology - Break Room"; - dir = 2; - name = "virology camera" - }, -/turf/open/floor/plasteel/whitegreen/corner{ - dir = 4 - }, -/area/medical/virology) -"dKq" = ( -/obj/structure/grille, -/obj/structure/cable/white{ - tag = "icon-0-2"; - icon_state = "0-2" - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/medical/virology) -"dKr" = ( -/obj/structure/table_frame/wood, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/library{ - name = "Abandoned Library" - }) -"dKs" = ( -/obj/structure/chair/office/dark{ - dir = 8 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/library{ - name = "Abandoned Library" - }) -"dKt" = ( -/turf/open/floor/plasteel/black, -/area/library{ - name = "Abandoned Library" - }) -"dKu" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/grimy, -/area/library{ - name = "Abandoned Library" - }) -"dKv" = ( -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/library{ - name = "Abandoned Library" - }) -"dKw" = ( -/obj/structure/chair/office/dark{ - dir = 4 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/grimy, -/area/library{ - name = "Abandoned Library" - }) -"dKx" = ( -/obj/structure/table/wood, -/obj/effect/decal/cleanable/dirt, -/obj/item/device/paicard, -/turf/open/floor/carpet, -/area/library{ - name = "Abandoned Library" - }) -"dKy" = ( -/obj/structure/table/wood, -/obj/item/weapon/storage/pill_bottle/dice, -/turf/open/floor/carpet, -/area/library{ - name = "Abandoned Library" - }) -"dKz" = ( -/obj/structure/chair/office/dark{ - dir = 8 - }, -/turf/open/floor/plasteel/grimy, -/area/library{ - name = "Abandoned Library" - }) -"dKA" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dKB" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dKC" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible{ - dir = 5 - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dKD" = ( -/obj/machinery/atmospherics/components/trinary/filter{ - density = 0; - dir = 8; - req_access = "0" - }, -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/neutral, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dKE" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible{ - dir = 9 - }, -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/neutral, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dKF" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dKG" = ( -/obj/machinery/droneDispenser, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/bot, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dKH" = ( -/obj/structure/table, -/obj/effect/decal/cleanable/dirt, -/obj/item/stack/sheet/metal{ - amount = 30 - }, -/obj/item/stack/sheet/glass{ - amount = 30 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dKI" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Science Maintenance"; - req_access_txt = "47" - }, -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/medical/research{ - name = "Research Division" - }) -"dKJ" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dKK" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dKL" = ( -/obj/machinery/computer/crew, -/obj/machinery/ai_status_display{ - pixel_x = -32 - }, -/turf/open/floor/plasteel/blue/side{ - dir = 9 - }, -/area/bridge{ - name = "Customs" - }) -"dKM" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral, -/area/bridge{ - name = "Customs" - }) -"dKN" = ( -/obj/structure/table/reinforced, -/obj/machinery/newscaster{ - pixel_x = 32; - pixel_y = -32 - }, -/obj/item/weapon/paper_bin, -/obj/item/weapon/pen, -/turf/open/floor/plasteel/blue/side{ - dir = 5 - }, -/area/bridge{ - name = "Customs" - }) -"dKO" = ( -/obj/structure/cable/white, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/bridge{ - name = "Customs" - }) -"dKP" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_Toxins = 0 - }, -/obj/structure/closet/emcloset, -/turf/open/floor/plasteel/bot, -/area/hallway/primary/aft) -"dKQ" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHWEST)"; - icon_state = "intact"; - dir = 9 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/aft) -"dKR" = ( -/obj/item/device/radio/beacon, -/turf/open/floor/plasteel/neutral, -/area/hallway/primary/aft) -"dKS" = ( -/turf/closed/wall/mineral/titanium/nodiagonal, -/area/shuttle/escape) -"dKT" = ( -/turf/closed/wall/mineral/titanium, -/area/shuttle/escape) -"dKU" = ( -/obj/structure/window/shuttle, -/obj/structure/grille, -/turf/open/floor/plating, -/area/shuttle/escape) -"dKV" = ( -/obj/structure/sink{ - dir = 8; - icon_state = "sink"; - pixel_x = -12 - }, -/obj/structure/mirror{ - desc = "Mirror mirror on the wall, who is the most robust of them all?"; - pixel_x = -28 - }, -/obj/machinery/shower{ - dir = 8; - icon_state = "shower"; - name = "emergency shower" - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/bot, -/area/medical/virology) -"dKW" = ( -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warnwhite{ - tag = "icon-white_warn (SOUTHWEST)"; - icon_state = "white_warn"; - dir = 10 - }, -/area/medical/virology) -"dKX" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHWEST)"; - icon_state = "intact"; - dir = 9 - }, -/turf/open/floor/plasteel/warnwhite{ - tag = "icon-white_warn (SOUTHEAST)"; - icon_state = "white_warn"; - dir = 6 - }, -/area/medical/virology) -"dKY" = ( -/obj/machinery/door/firedoor, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/door/airlock/virology{ - name = "Virology Access"; - req_access_txt = "39" - }, -/turf/open/floor/plasteel/warning/side, -/area/medical/virology) -"dKZ" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/medical/virology) -"dLa" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/medical/virology) -"dLb" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/virology{ - name = "Virology Access"; - req_access_txt = "39" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/warning/side, -/area/medical/virology) -"dLc" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/light_switch{ - pixel_x = -26; - pixel_y = 26 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHEAST)"; - icon_state = "intact"; - dir = 6 - }, -/turf/open/floor/plasteel/whitegreen/corner{ - dir = 1 - }, -/area/medical/virology) -"dLd" = ( -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/medical/virology) -"dLe" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/whitegreen/corner{ - dir = 4 - }, -/area/medical/virology) -"dLf" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/medical/virology) -"dLg" = ( -/obj/structure/table/glass, -/obj/item/weapon/clipboard, -/obj/item/toy/figure/virologist, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/whitegreen/corner{ - dir = 1 - }, -/area/medical/virology) -"dLh" = ( -/obj/structure/chair/office/light{ - dir = 8 - }, -/obj/effect/landmark/start{ - name = "Virologist" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/medical/virology) -"dLi" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plasteel/green, -/area/medical/virology) -"dLj" = ( -/obj/structure/sign/poster{ - icon_state = "poster3_legit"; - pixel_x = 0; - pixel_y = 0; - tag = "icon-poster3_legit" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/medical/virology) -"dLk" = ( -/obj/machinery/newscaster{ - pixel_y = 32 - }, -/obj/structure/table/glass, -/obj/item/device/flashlight/lamp, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/vault, -/area/medical/virology) -"dLl" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/bed, -/obj/item/weapon/bedsheet/medical, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHWEST)"; - icon_state = "intact"; - dir = 10 - }, -/turf/open/floor/plasteel/vault, -/area/medical/virology) -"dLm" = ( -/obj/structure/table/glass, -/obj/machinery/computer/med_data/laptop, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_y = 26 - }, -/obj/machinery/computer/security/telescreen/entertainment{ - pixel_x = 32 - }, -/turf/open/floor/plasteel/vault, -/area/medical/virology) -"dLn" = ( -/turf/open/space, -/area/toxins/test_area) -"dLo" = ( -/obj/machinery/light/small{ - dir = 8 - }, -/turf/open/floor/plating, -/area/library{ - name = "Abandoned Library" - }) -"dLp" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/wood{ - icon_state = "wood-broken4" - }, -/area/library{ - name = "Abandoned Library" - }) -"dLq" = ( -/turf/open/floor/wood{ - tag = "icon-wood-broken2"; - icon_state = "wood-broken2" - }, -/area/library{ - name = "Abandoned Library" - }) -"dLr" = ( -/obj/structure/bookcase, -/obj/effect/decal/cleanable/cobweb/cobweb2, -/turf/open/floor/wood, -/area/library{ - name = "Abandoned Library" - }) -"dLs" = ( -/turf/open/floor/wood{ - icon_state = "wood-broken5" - }, -/area/library{ - name = "Abandoned Library" - }) -"dLt" = ( -/obj/structure/chair/office/dark{ - dir = 4 - }, -/turf/open/floor/plasteel/grimy, -/area/library{ - name = "Abandoned Library" - }) -"dLu" = ( -/obj/structure/table/wood, -/obj/item/toy/cards/deck/cas{ - pixel_x = -5; - pixel_y = 5 - }, -/obj/item/toy/cards/deck/cas/black{ - pixel_x = 5; - pixel_y = 5 - }, -/turf/open/floor/carpet, -/area/library{ - name = "Abandoned Library" - }) -"dLv" = ( -/obj/structure/table/wood, -/obj/item/weapon/clipboard, -/obj/item/weapon/folder/red, -/turf/open/floor/carpet, -/area/library{ - name = "Abandoned Library" - }) -"dLw" = ( -/obj/structure/chair/office/dark{ - dir = 8 - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/airalarm{ - dir = 8; - icon_state = "alarm0"; - pixel_x = 24 - }, -/turf/open/floor/plating, -/area/library{ - name = "Abandoned Library" - }) -"dLx" = ( -/obj/structure/closet, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 3; - name = "3maintenance loot spawner" - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 10 - }, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dLy" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral/corner{ - dir = 8 - }, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dLz" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHEAST)"; - icon_state = "intact"; - dir = 5 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dLA" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dLB" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dLC" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/delivery, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dLD" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dLE" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dLF" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 9 - }, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dLG" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/mob/living/simple_animal/cockroach, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dLH" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dLI" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 1; - heat_capacity = 1e+006 - }, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dLJ" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/open/floor/plasteel/neutral/side{ - dir = 1; - heat_capacity = 1e+006 - }, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dLK" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dLL" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 5 - }, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dLM" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dLN" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 10 - }, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dLO" = ( -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/delivery, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dLP" = ( -/obj/structure/table/reinforced, -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/obj/structure/sign/poster{ - icon_state = "poster16_legit"; - pixel_y = -32; - tag = "icon-poster16_legit" - }, -/obj/item/weapon/crowbar, -/obj/item/device/radio, -/turf/open/floor/plasteel/blue/side{ - dir = 10 - }, -/area/bridge{ - name = "Customs" - }) -"dLQ" = ( -/obj/structure/table/reinforced, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/item/weapon/storage/box/ids, -/turf/open/floor/plasteel/blue/side, -/area/bridge{ - name = "Customs" - }) -"dLR" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/blue/side, -/area/bridge{ - name = "Customs" - }) -"dLS" = ( -/obj/structure/closet/secure_closet{ - anchored = 1; - name = "Contraband Locker"; - req_access_txt = "19" - }, -/obj/item/weapon/storage/secure/briefcase, -/turf/open/floor/plasteel/blue/side{ - dir = 6 - }, -/area/bridge{ - name = "Customs" - }) -"dLT" = ( -/obj/structure/closet/firecloset, -/turf/open/floor/plasteel/bot, -/area/hallway/primary/aft) -"dLU" = ( -/obj/structure/disposalpipe/junction{ - icon_state = "pipe-j2"; - dir = 2 - }, -/turf/open/floor/plasteel/escape, -/area/hallway/primary/aft) -"dLV" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/escape, -/area/hallway/primary/aft) -"dLW" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/escape, -/area/hallway/primary/aft) -"dLX" = ( -/obj/machinery/disposal/bin, -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/obj/structure/sign/poster{ - icon_state = "poster4_legit"; - pixel_x = 32; - pixel_y = 0; - tag = "icon-poster4_legit" - }, -/obj/structure/disposalpipe/trunk{ - dir = 8 - }, -/turf/open/floor/plasteel/delivery, -/area/hallway/primary/aft) -"dLY" = ( -/obj/item/clothing/suit/hazardvest{ - desc = "A high-visibility lifejacket complete with whistle and slot for oxygen tanks."; - name = "emergency lifejacket" - }, -/obj/item/clothing/suit/hazardvest{ - desc = "A high-visibility lifejacket complete with whistle and slot for oxygen tanks."; - name = "emergency lifejacket" - }, -/obj/item/clothing/suit/hazardvest{ - desc = "A high-visibility lifejacket complete with whistle and slot for oxygen tanks."; - name = "emergency lifejacket" - }, -/obj/item/clothing/suit/hazardvest{ - desc = "A high-visibility lifejacket complete with whistle and slot for oxygen tanks."; - name = "emergency lifejacket" - }, -/obj/item/clothing/suit/hazardvest{ - desc = "A high-visibility lifejacket complete with whistle and slot for oxygen tanks."; - name = "emergency lifejacket" - }, -/obj/item/weapon/tank/internals/emergency_oxygen/double{ - pixel_x = 3 - }, -/obj/item/weapon/tank/internals/emergency_oxygen/double{ - pixel_x = 3 - }, -/obj/item/weapon/tank/internals/emergency_oxygen/double{ - pixel_x = 3 - }, -/obj/item/weapon/tank/internals/emergency_oxygen/double{ - pixel_x = 3 - }, -/obj/item/weapon/tank/internals/emergency_oxygen/double{ - pixel_x = 3 - }, -/obj/item/clothing/mask/breath{ - pixel_x = -3; - pixel_y = -3 - }, -/obj/item/clothing/mask/breath{ - pixel_x = -3; - pixel_y = -3 - }, -/obj/item/clothing/mask/breath{ - pixel_x = -3; - pixel_y = -3 - }, -/obj/item/clothing/mask/breath{ - pixel_x = -3; - pixel_y = -3 - }, -/obj/item/clothing/mask/breath{ - pixel_x = -3; - pixel_y = -3 - }, -/obj/item/clothing/head/hardhat/orange{ - name = "protective hat"; - pixel_y = 9 - }, -/obj/item/clothing/head/hardhat/orange{ - name = "protective hat"; - pixel_y = 9 - }, -/obj/item/clothing/head/hardhat/orange{ - name = "protective hat"; - pixel_y = 9 - }, -/obj/item/clothing/head/hardhat/orange{ - name = "protective hat"; - pixel_y = 9 - }, -/obj/item/clothing/head/hardhat/orange{ - name = "protective hat"; - pixel_y = 9 - }, -/obj/structure/closet/crate/internals, -/turf/open/floor/plasteel/bot, -/area/shuttle/escape) -"dLZ" = ( -/turf/open/floor/plasteel/neutral/side{ - dir = 1 - }, -/area/shuttle/escape) -"dMa" = ( -/obj/item/weapon/defibrillator/loaded, -/obj/structure/table/reinforced, -/turf/open/floor/plasteel/cmo, -/area/shuttle/escape) -"dMb" = ( -/obj/machinery/computer/operating, -/turf/open/floor/plasteel/cmo, -/area/shuttle/escape) -"dMc" = ( -/obj/structure/table/optable, -/obj/item/weapon/surgical_drapes, -/turf/open/floor/plasteel/cmo, -/area/shuttle/escape) -"dMd" = ( -/obj/item/weapon/scalpel{ - pixel_y = 12 - }, -/obj/item/weapon/circular_saw, -/obj/item/weapon/retractor{ - pixel_x = 4 - }, -/obj/item/weapon/hemostat{ - pixel_x = -4 - }, -/obj/item/clothing/gloves/color/latex, -/obj/item/clothing/mask/surgical, -/obj/structure/table/reinforced, -/turf/open/floor/plasteel/cmo, -/area/shuttle/escape) -"dMe" = ( -/obj/structure/closet/l3closet/virology, -/obj/structure/sign/biohazard{ - pixel_y = -32 - }, -/turf/open/floor/plasteel/bot, -/area/medical/virology) -"dMf" = ( -/obj/structure/closet/l3closet/virology, -/obj/machinery/light/small, -/obj/structure/extinguisher_cabinet{ - pixel_y = -32 - }, -/turf/open/floor/plasteel/bot, -/area/medical/virology) -"dMg" = ( -/obj/structure/closet/emcloset, -/obj/structure/sign/securearea{ - pixel_y = -32 - }, -/turf/open/floor/plasteel/bot, -/area/medical/virology) -"dMh" = ( -/obj/structure/grille, -/obj/structure/cable/white, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/medical/virology) -"dMi" = ( -/obj/machinery/firealarm{ - dir = 8; - pixel_x = -24; - pixel_y = 0 - }, -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/whitegreen/corner{ - dir = 1 - }, -/area/medical/virology) -"dMj" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/turf/open/floor/plasteel/green, -/area/medical/virology) -"dMk" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/whitegreen/corner{ - dir = 4 - }, -/area/medical/virology) -"dMl" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/virology{ - name = "Virology Break Room"; - req_access_txt = "39" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/warning/side, -/area/medical/virology) -"dMm" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/whitegreen/corner{ - dir = 8 - }, -/area/medical/virology) -"dMn" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 2; - on = 1 - }, -/turf/open/floor/plasteel/green, -/area/medical/virology) -"dMo" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/neutral, -/area/medical/virology) -"dMp" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/whitegreen/corner, -/area/medical/virology) -"dMq" = ( -/obj/machinery/door/airlock/virology{ - name = "Virology Cabin"; - req_access_txt = "39" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/warning/side, -/area/medical/virology) -"dMr" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/light_switch{ - pixel_x = -26; - pixel_y = -26 - }, -/turf/open/floor/plasteel/whitegreen/corner{ - dir = 1 - }, -/area/medical/virology) -"dMs" = ( -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/effect/landmark/start{ - name = "Virologist" - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/green, -/area/medical/virology) -"dMt" = ( -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/obj/machinery/status_display{ - pixel_x = 32 - }, -/turf/open/floor/plasteel/whitegreen/corner{ - dir = 4 - }, -/area/medical/virology) -"dMu" = ( -/obj/structure/bookcase, -/obj/effect/decal/cleanable/cobweb, -/turf/open/floor/wood, -/area/library{ - name = "Abandoned Library" - }) -"dMv" = ( -/obj/structure/bookcase, -/turf/open/floor/wood, -/area/library{ - name = "Abandoned Library" - }) -"dMw" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/obj/effect/landmark{ - name = "xeno_spawn"; - pixel_x = -1 - }, -/turf/open/floor/plating, -/area/library{ - name = "Abandoned Library" - }) -"dMx" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/grimy, -/area/library{ - name = "Abandoned Library" - }) -"dMy" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/effect/decal/cleanable/blood/splatter, -/turf/open/floor/plasteel/grimy, -/area/library{ - name = "Abandoned Library" - }) -"dMz" = ( -/turf/open/floor/wood, -/area/library{ - name = "Abandoned Library" - }) -"dMA" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/landmark{ - name = "blobstart" - }, -/turf/open/floor/plating, -/area/library{ - name = "Abandoned Library" - }) -"dMB" = ( -/obj/structure/chair/office/dark{ - dir = 1 - }, -/turf/open/floor/plasteel/grimy, -/area/library{ - name = "Abandoned Library" - }) -"dMC" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 8; - heat_capacity = 1e+006 - }, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dMD" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dME" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/chapel/office) -"dMF" = ( -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Chapel Maintenance"; - req_access_txt = "27" - }, -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/chapel/office) -"dMG" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall, -/area/chapel/office) -"dMH" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dMI" = ( -/obj/structure/girder, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dMJ" = ( -/obj/structure/closet, -/obj/effect/landmark/costume, -/obj/effect/spawner/lootdrop/maintenance, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dMK" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dML" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, -/turf/open/floor/plasteel/delivery, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dMM" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral/side, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dMN" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/reagent_dispensers/watertank, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dMO" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"dMP" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Maintenance Hatch"; - req_access_txt = "12" - }, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"dMQ" = ( -/turf/closed/wall, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"dMR" = ( -/obj/structure/cable/white, -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"dMS" = ( -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"dMT" = ( -/obj/structure/sign/nanotrasen, -/turf/closed/wall, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"dMU" = ( -/obj/structure/sign/directions/evac{ - pixel_y = -8 - }, -/obj/structure/sign/directions/science{ - dir = 1 - }, -/obj/structure/sign/directions/engineering{ - dir = 1; - pixel_y = 8 - }, -/turf/closed/wall, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"dMV" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass{ - name = "Departures Lounge" - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"dMW" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass{ - name = "Departures Lounge" - }, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"dMX" = ( -/obj/structure/sign/directions/evac{ - pixel_y = -8 - }, -/obj/structure/sign/directions/medical{ - dir = 1 - }, -/obj/structure/sign/directions/security{ - dir = 1; - pixel_y = 8 - }, -/turf/closed/wall, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"dMY" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"dMZ" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 8; - heat_capacity = 1e+006 - }, -/area/shuttle/escape) -"dNa" = ( -/turf/open/floor/plasteel/neutral, -/area/shuttle/escape) -"dNb" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/shuttle/escape) -"dNc" = ( -/obj/machinery/status_display, -/turf/closed/wall/mineral/titanium, -/area/shuttle/escape) -"dNd" = ( -/obj/item/weapon/reagent_containers/glass/bottle/epinephrine{ - pixel_x = 6; - pixel_y = 0 - }, -/obj/item/weapon/reagent_containers/glass/bottle/charcoal{ - pixel_x = -3 - }, -/obj/item/weapon/reagent_containers/glass/bottle/epinephrine{ - pixel_x = -3; - pixel_y = 8 - }, -/obj/item/weapon/reagent_containers/glass/bottle/charcoal{ - pixel_x = 6; - pixel_y = 8 - }, -/obj/item/weapon/reagent_containers/syringe/epinephrine{ - pixel_x = 3; - pixel_y = -2 - }, -/obj/item/weapon/reagent_containers/syringe/epinephrine{ - pixel_x = 4; - pixel_y = 1 - }, -/obj/item/weapon/reagent_containers/syringe/epinephrine{ - pixel_x = -2; - pixel_y = 5 - }, -/obj/item/weapon/reagent_containers/syringe/epinephrine{ - pixel_x = 2; - pixel_y = 8 - }, -/obj/structure/table/reinforced, -/turf/open/floor/plasteel/cmo, -/area/shuttle/escape) -"dNe" = ( -/obj/structure/chair/office/light{ - dir = 1 - }, -/turf/open/floor/plasteel/cmo, -/area/shuttle/escape) -"dNf" = ( -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = 26; - pixel_y = 58 - }, -/turf/open/floor/plasteel/cmo, -/area/shuttle/escape) -"dNg" = ( -/obj/structure/sink{ - dir = 4; - pixel_x = 11 - }, -/turf/open/floor/plasteel/cmo, -/area/shuttle/escape) -"dNh" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/whitegreen/corner{ - dir = 1 - }, -/area/medical/virology) -"dNi" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/plasteel/neutral, -/area/medical/virology) -"dNj" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plasteel/whitegreen/corner{ - dir = 4 - }, -/area/medical/virology) -"dNk" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/medical/virology) -"dNl" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/whitegreen/corner{ - dir = 8 - }, -/area/medical/virology) -"dNm" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/open/floor/plasteel/whitegreen/corner{ - dir = 8 - }, -/area/medical/virology) -"dNn" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/whitegreen/corner, -/area/medical/virology) -"dNo" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/whitegreen/corner, -/area/medical/virology) -"dNp" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/medical/virology) -"dNq" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHWEST)"; - icon_state = "intact"; - dir = 10 - }, -/turf/open/floor/plasteel/neutral, -/area/medical/virology) -"dNr" = ( -/obj/machinery/ai_status_display{ - pixel_x = 32 - }, -/obj/machinery/camera{ - c_tag = "Virology - Cabin"; - dir = 8; - name = "virology camera" - }, -/turf/open/floor/plasteel/whitegreen/corner, -/area/medical/virology) -"dNs" = ( -/obj/structure/cable, -/obj/machinery/power/tracker, -/turf/open/floor/plasteel/airless/solarpanel, -/area/solar/starboard) -"dNt" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/machinery/power/apc{ - dir = 8; - name = "Abandoned Library APC"; - pixel_x = -26; - pixel_y = 3 - }, -/turf/open/floor/wood{ - icon_state = "wood-broken" - }, -/area/library{ - name = "Abandoned Library" - }) -"dNu" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/wood{ - tag = "icon-wood-broken6"; - icon_state = "wood-broken6" - }, -/area/library{ - name = "Abandoned Library" - }) -"dNv" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/wood, -/area/library{ - name = "Abandoned Library" - }) -"dNw" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/grimy, -/area/library{ - name = "Abandoned Library" - }) -"dNx" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/turf/open/floor/plasteel/grimy, -/area/library{ - name = "Abandoned Library" - }) -"dNy" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/turf/open/floor/wood{ - icon_state = "wood-broken7" - }, -/area/library{ - name = "Abandoned Library" - }) -"dNz" = ( -/obj/effect/decal/cleanable/dirt, -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/turf/open/floor/wood{ - tag = "icon-wood-broken"; - icon_state = "wood-broken" - }, -/area/library{ - name = "Abandoned Library" - }) -"dNA" = ( -/obj/machinery/photocopier, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/library{ - name = "Abandoned Library" - }) -"dNB" = ( -/obj/structure/table/wood, -/obj/item/weapon/paper_bin, -/obj/item/weapon/pen, -/turf/open/floor/wood{ - tag = "icon-wood-broken2"; - icon_state = "wood-broken2" - }, -/area/library{ - name = "Abandoned Library" - }) -"dNC" = ( -/obj/structure/table/wood, -/obj/effect/decal/cleanable/cobweb/cobweb2, -/obj/effect/decal/cleanable/dirt, -/obj/item/device/flashlight/lamp, -/turf/open/floor/plating, -/area/library{ - name = "Abandoned Library" - }) -"dND" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dNE" = ( -/turf/closed/wall, -/area/chapel/office) -"dNF" = ( -/obj/structure/bodycontainer/morgue, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/chapel/office) -"dNG" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/chapel/office) -"dNH" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/chapel/office) -"dNI" = ( -/turf/closed/wall, -/area/chapel/main) -"dNJ" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Maintenance Hatch"; - req_access_txt = "12" - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/chapel/main) -"dNK" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall, -/area/chapel/main) -"dNL" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/delivery, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"dNM" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/warning{ - tag = "icon-plasteel_warn (NORTHWEST)"; - icon_state = "plasteel_warn"; - dir = 9 - }, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"dNN" = ( -/obj/machinery/newscaster{ - pixel_y = 32 - }, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"dNO" = ( -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"dNP" = ( -/obj/structure/cable/white{ - tag = "icon-0-2"; - icon_state = "0-2" - }, -/obj/machinery/power/apc{ - cell_type = 10000; - dir = 1; - name = "Departure Lounge APC"; - pixel_x = 0; - pixel_y = 28 - }, -/obj/machinery/camera{ - c_tag = "Departures - Fore"; - dir = 2; - name = "departures camera" - }, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"dNQ" = ( -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"dNR" = ( -/turf/open/floor/plasteel/warning{ - dir = 5 - }, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"dNS" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/obj/machinery/firealarm{ - pixel_y = 24 - }, -/turf/open/floor/plasteel/delivery, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"dNT" = ( -/obj/structure/chair{ - dir = 4 - }, -/turf/open/floor/plasteel/bot, -/area/shuttle/escape) -"dNU" = ( -/obj/structure/chair{ - dir = 8 - }, -/turf/open/floor/plasteel/bot, -/area/shuttle/escape) -"dNV" = ( -/obj/structure/flora/ausbushes/grassybush, -/obj/structure/flora/ausbushes/lavendergrass, -/obj/structure/flora/ausbushes/brflowers, -/obj/structure/flora/ausbushes/leafybush, -/obj/structure/window/shuttle, -/turf/open/floor/grass, -/area/shuttle/escape) -"dNW" = ( -/obj/machinery/computer/med_data, -/turf/open/floor/plasteel/whiteblue/side{ - dir = 1 - }, -/area/shuttle/escape) -"dNX" = ( -/obj/structure/chair/office/light{ - dir = 8 - }, -/turf/open/floor/plasteel/whiteblue/side{ - tag = "icon-whiteblue (NORTH)"; - icon_state = "whiteblue"; - dir = 1 - }, -/area/shuttle/escape) -"dNY" = ( -/turf/open/floor/plasteel/whiteblue/side{ - tag = "icon-whiteblue (NORTH)"; - icon_state = "whiteblue"; - dir = 1 - }, -/area/shuttle/escape) -"dNZ" = ( -/obj/item/weapon/storage/firstaid/toxin, -/obj/item/weapon/storage/firstaid/o2{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/structure/table/reinforced, -/turf/open/floor/plasteel/whiteblue/side{ - dir = 5 - }, -/area/shuttle/escape) -"dOa" = ( -/obj/structure/extinguisher_cabinet{ - pixel_x = -26 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/whitegreen/corner{ - dir = 1 - }, -/area/medical/virology) -"dOb" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/green, -/area/medical/virology) -"dOc" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/whitegreen/corner{ - dir = 4 - }, -/area/medical/virology) -"dOd" = ( -/obj/machinery/atmospherics/components/unary/tank/air{ - dir = 1 - }, -/obj/machinery/light/small{ - dir = 8 - }, -/obj/machinery/firealarm{ - dir = 8; - pixel_x = -24; - pixel_y = 0 - }, -/obj/structure/sign/poster{ - icon_state = "poster17_legit"; - pixel_x = 0; - pixel_y = -32; - tag = "icon-poster17_legit" - }, -/turf/open/floor/plasteel/vault, -/area/medical/virology) -"dOe" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible{ - dir = 1 - }, -/obj/machinery/status_display{ - pixel_y = -32 - }, -/obj/machinery/portable_atmospherics/canister/air, -/turf/open/floor/plasteel/vault, -/area/medical/virology) -"dOf" = ( -/obj/item/clothing/neck/stethoscope, -/obj/structure/table, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/item/weapon/storage/box/donkpockets, -/obj/item/weapon/storage/box/donkpockets, -/turf/open/floor/plasteel/vault, -/area/medical/virology) -"dOg" = ( -/obj/structure/table, -/obj/machinery/airalarm{ - dir = 1; - icon_state = "alarm0"; - pixel_y = -22 - }, -/obj/machinery/microwave{ - desc = "Cooks and boils stuff, somehow."; - pixel_x = -3; - pixel_y = 5 - }, -/turf/open/floor/plasteel/vault, -/area/medical/virology) -"dOh" = ( -/obj/structure/sign/nosmoking_2, -/turf/closed/wall, -/area/medical/virology) -"dOi" = ( -/obj/structure/dresser, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/medical/virology) -"dOj" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/medical/virology) -"dOk" = ( -/obj/structure/closet/wardrobe/virology_white, -/obj/item/weapon/storage/backpack/satchel/vir, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/medical/virology) -"dOl" = ( -/mob/living/simple_animal/cockroach, -/turf/open/floor/wood, -/area/library{ - name = "Abandoned Library" - }) -"dOm" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/grimy, -/area/library{ - name = "Abandoned Library" - }) -"dOn" = ( -/turf/open/floor/wood{ - tag = "icon-wood-broken3"; - icon_state = "wood-broken3" - }, -/area/library{ - name = "Abandoned Library" - }) -"dOo" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/wood, -/area/library{ - name = "Abandoned Library" - }) -"dOp" = ( -/obj/structure/girder, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dOq" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dOr" = ( -/obj/structure/table, -/obj/item/weapon/storage/box/gloves{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/storage/box/bodybags, -/obj/machinery/newscaster{ - pixel_x = -32 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/chapel/office) -"dOs" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/chapel/office) -"dOt" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-18"; - layer = 4.1 - }, -/obj/machinery/light{ - icon_state = "tube1"; - dir = 4 - }, -/obj/machinery/firealarm{ - dir = 4; - icon_state = "fire0"; - pixel_x = 24; - pixel_y = 0; - tag = "icon-fire0 (EAST)" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/chapel/office) -"dOu" = ( -/obj/structure/table/wood, -/obj/item/weapon/storage/fancy/candle_box{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/storage/fancy/candle_box, -/turf/open/floor/plasteel/black, -/area/chapel/main) -"dOv" = ( -/obj/structure/bookcase, -/obj/machinery/light{ - dir = 1 - }, -/obj/structure/sign/atmosplaque{ - desc = "A plaque commemorating the fallen, may they rest in peace, forever asleep amongst the stars. Someone has drawn a picture of a crying badger at the bottom."; - icon_state = "kiddieplaque"; - name = "Remembrance Plaque"; - pixel_x = 0; - pixel_y = 32 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/chapel/main) -"dOw" = ( -/obj/structure/table/wood, -/obj/item/weapon/reagent_containers/food/snacks/grown/poppy{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/reagent_containers/food/snacks/grown/poppy{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/weapon/reagent_containers/food/snacks/grown/poppy, -/obj/machinery/status_display{ - pixel_x = 0; - pixel_y = 32 - }, -/turf/open/floor/plasteel/black, -/area/chapel/main) -"dOx" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/chapel/main) -"dOy" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/black, -/area/chapel/main) -"dOz" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = 0; - pixel_y = 26 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/chapel/main) -"dOA" = ( -/obj/structure/table/wood, -/obj/item/weapon/reagent_containers/food/snacks/grown/harebell{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/reagent_containers/food/snacks/grown/harebell{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/weapon/reagent_containers/food/snacks/grown/harebell, -/obj/machinery/status_display{ - pixel_y = 32 - }, -/turf/open/floor/plasteel/black, -/area/chapel/main) -"dOB" = ( -/obj/structure/bookcase, -/obj/machinery/light{ - dir = 1 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/chapel/main) -"dOC" = ( -/obj/structure/table/wood, -/obj/item/weapon/paper_bin, -/turf/open/floor/plasteel/black, -/area/chapel/main) -"dOD" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/tinted/fulltile, -/turf/open/floor/plating, -/area/chapel/main) -"dOE" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/delivery, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"dOF" = ( -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"dOG" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 2; - on = 1; - scrub_N2O = 1; - scrub_Toxins = 1 - }, -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/neutral, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"dOH" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"dOI" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"dOJ" = ( -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"dOK" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"dOL" = ( -/obj/structure/disposalpipe/sortjunction{ - name = "Chapel Junction"; - sortType = 17 - }, -/turf/open/floor/plasteel/neutral, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"dOM" = ( -/obj/machinery/navbeacon{ - codes_txt = "patrol;next_patrol=hall8"; - location = "hall7" - }, -/turf/open/floor/plasteel/neutral, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"dON" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 2; - on = 1 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"dOO" = ( -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"dOP" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/turf/open/floor/plasteel/delivery, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"dOQ" = ( -/obj/machinery/ai_status_display, -/turf/closed/wall/shuttle/smooth/nodiagonal, -/area/shuttle/escape) -"dOR" = ( -/obj/machinery/status_display, -/turf/closed/wall/shuttle/smooth/nodiagonal, -/area/shuttle/escape) -"dOS" = ( -/turf/open/floor/plasteel/delivery, -/area/shuttle/escape) -"dOT" = ( -/obj/machinery/door/airlock/glass_medical{ - id_tag = null; - name = "Escape Shuttle Infirmary"; - req_access_txt = "0" - }, -/turf/open/floor/plasteel/warning/side, -/area/shuttle/escape) -"dOU" = ( -/obj/item/weapon/storage/firstaid/fire, -/obj/item/weapon/storage/firstaid/regular{ - pixel_x = 2; - pixel_y = 3 - }, -/obj/structure/table/reinforced, -/turf/open/floor/plasteel/whiteblue/side{ - dir = 4 - }, -/area/shuttle/escape) -"dOV" = ( -/obj/structure/grille, -/obj/structure/cable/white{ - tag = "icon-0-2"; - icon_state = "0-2" - }, -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/medical/virology) -"dOW" = ( -/obj/structure/grille, -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/structure/cable/white{ - tag = "icon-0-2"; - icon_state = "0-2" - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/medical/virology) -"dOX" = ( -/obj/structure/grille, -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/structure/cable/white{ - tag = "icon-0-2"; - icon_state = "0-2" - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/medical/virology) -"dOY" = ( -/obj/structure/grille, -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/medical/virology) -"dOZ" = ( -/obj/machinery/vending/wallmed{ - pixel_x = -32 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/whitegreen/corner{ - dir = 1 - }, -/area/medical/virology) -"dPa" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/turf/open/floor/plasteel/neutral, -/area/medical/virology) -"dPb" = ( -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/obj/machinery/power/apc{ - dir = 4; - name = "Virology Satellite APC"; - pixel_x = 26; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/turf/open/floor/plasteel/whitegreen/corner{ - dir = 4 - }, -/area/medical/virology) -"dPc" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/light/small{ - dir = 8 - }, -/turf/open/floor/plating, -/area/library{ - name = "Abandoned Library" - }) -"dPd" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/wood{ - tag = "icon-wood-broken"; - icon_state = "wood-broken" - }, -/area/library{ - name = "Abandoned Library" - }) -"dPe" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/library{ - name = "Abandoned Library" - }) -"dPf" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/light/small{ - dir = 4 - }, -/turf/open/floor/wood{ - tag = "icon-wood-broken5"; - icon_state = "wood-broken5" - }, -/area/library{ - name = "Abandoned Library" - }) -"dPg" = ( -/obj/structure/destructible/cult/tome, -/obj/effect/decal/cleanable/cobweb, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/blood/old, -/turf/open/floor/plating, -/area/library{ - name = "Abandoned Library" - }) -"dPh" = ( -/obj/structure/bookcase{ - name = "Forbidden Knowledge" - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/black, -/area/library{ - name = "Abandoned Library" - }) -"dPi" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/closet/crate{ - icon_state = "crateopen"; - opened = 1 - }, -/obj/item/device/flashlight, -/obj/effect/spawner/lootdrop/maintenance, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dPj" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dPk" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/chapel/office) -"dPl" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/chapel/office) -"dPm" = ( -/obj/machinery/door/airlock/centcom{ - name = "Chapel Morgue"; - req_access_txt = "27" - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/chapel/main) -"dPn" = ( -/turf/open/floor/plasteel/grimy, -/area/chapel/main) -"dPo" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/grimy, -/area/chapel/main) -"dPp" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/grimy, -/area/chapel/main) -"dPq" = ( -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/grimy, -/area/chapel/main) -"dPr" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/grimy, -/area/chapel/main) -"dPs" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/centcom{ - name = "Chapel Hall" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/chapel/main) -"dPt" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/delivery, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"dPu" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"dPv" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHWEST)"; - icon_state = "intact"; - dir = 9 - }, -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/neutral, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"dPw" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/neutral, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"dPx" = ( -/turf/open/floor/plasteel/neutral, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"dPy" = ( -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/neutral, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"dPz" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/neutral, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"dPA" = ( -/turf/open/floor/plasteel/delivery, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"dPB" = ( -/obj/structure/chair{ - dir = 4 - }, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = -26; - pixel_y = 0 - }, -/turf/open/floor/plasteel/bot, -/area/shuttle/escape) -"dPC" = ( -/obj/structure/flora/ausbushes/grassybush, -/obj/structure/flora/ausbushes/lavendergrass, -/obj/structure/flora/ausbushes/ywflowers, -/obj/structure/flora/ausbushes/genericbush, -/obj/structure/window/shuttle, -/turf/open/floor/grass, -/area/shuttle/escape) -"dPD" = ( -/obj/machinery/shower{ - dir = 8; - icon_state = "shower"; - name = "emergency shower" - }, -/turf/open/floor/plasteel/whiteblue/side{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; - dir = 4; - tag = "icon-whiteblue (EAST)" - }, -/area/shuttle/escape) -"dPE" = ( -/obj/structure/table/glass, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/item/clothing/gloves/color/latex, -/obj/item/device/healthanalyzer, -/obj/item/clothing/glasses/hud/health, -/turf/open/floor/plasteel/warning/corner, -/area/medical/virology) -"dPF" = ( -/obj/structure/table/glass, -/obj/machinery/requests_console{ - department = "Virology Lab"; - departmentType = 0; - name = "Virology RC"; - pixel_x = 0; - pixel_y = 32 - }, -/obj/item/weapon/folder/white, -/obj/item/weapon/pen/red, -/obj/item/stack/sheet/mineral/plasma{ - amount = 5 - }, -/turf/open/floor/plasteel/warning, -/area/medical/virology) -"dPG" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/computer/pandemic, -/turf/open/floor/plasteel/warning{ - dir = 6 - }, -/area/medical/virology) -"dPH" = ( -/obj/structure/filingcabinet/chestdrawer, -/turf/open/floor/plasteel/bot, -/area/medical/virology) -"dPI" = ( -/obj/machinery/light{ - dir = 1 - }, -/obj/machinery/status_display{ - pixel_y = 32 - }, -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/turf/open/floor/plasteel/bot, -/area/medical/virology) -"dPJ" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 2; - on = 1; - scrub_N2O = 1; - scrub_Toxins = 1 - }, -/turf/open/floor/plasteel/bot, -/area/medical/virology) -"dPK" = ( -/obj/structure/closet/crate/freezer/blood, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_y = 26 - }, -/obj/machinery/camera{ - c_tag = "Virology Lab - Starboard"; - dir = 2; - name = "virology camera" - }, -/turf/open/floor/plasteel/bot, -/area/medical/virology) -"dPL" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/whitegreen/side{ - dir = 8 - }, -/area/medical/virology) -"dPM" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/effect/landmark{ - name = "lightsout" - }, -/turf/open/floor/plasteel/green, -/area/medical/virology) -"dPN" = ( -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = 26; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/camera{ - c_tag = "Virology - Center"; - dir = 8; - name = "virology camera" - }, -/turf/open/floor/plasteel/whitegreen/side{ - tag = "icon-whitegreen (EAST)"; - icon_state = "whitegreen"; - dir = 4 - }, -/area/medical/virology) -"dPO" = ( -/obj/effect/decal/cleanable/dirt, -/mob/living/carbon/monkey, -/turf/open/floor/plasteel/whitegreen/side{ - tag = "icon-whitegreen (NORTHWEST)"; - icon_state = "whitegreen"; - dir = 9 - }, -/area/medical/virology) -"dPP" = ( -/obj/machinery/light/small{ - dir = 1 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 2; - on = 1 - }, -/turf/open/floor/plasteel/whitegreen/side{ - dir = 1 - }, -/area/medical/virology) -"dPQ" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/whitegreen/side{ - dir = 1 - }, -/area/medical/virology) -"dPR" = ( -/obj/machinery/light/small{ - dir = 1 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 2; - on = 1; - scrub_N2O = 1; - scrub_Toxins = 1 - }, -/mob/living/carbon/monkey, -/turf/open/floor/plasteel/whitegreen/side{ - dir = 1 - }, -/area/medical/virology) -"dPS" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/whitegreen/side{ - tag = "icon-whitegreen (NORTHEAST)"; - icon_state = "whitegreen"; - dir = 5 - }, -/area/medical/virology) -"dPT" = ( -/obj/structure/bookcase, -/obj/effect/decal/cleanable/cobweb/cobweb2, -/turf/open/floor/plating, -/area/library{ - name = "Abandoned Library" - }) -"dPU" = ( -/obj/effect/decal/cleanable/blood/splatter, -/turf/open/floor/wood{ - tag = "icon-wood-broken6"; - icon_state = "wood-broken6" - }, -/area/library{ - name = "Abandoned Library" - }) -"dPV" = ( -/obj/effect/decal/remains/human, -/obj/effect/decal/cleanable/blood/old, -/obj/effect/landmark{ - name = "revenantspawn" - }, -/turf/open/floor/plasteel/black, -/area/library{ - name = "Abandoned Library" - }) -"dPW" = ( -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral/side{ - dir = 8; - heat_capacity = 1e+006 - }, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dPX" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dPY" = ( -/obj/structure/table, -/obj/item/weapon/wrench, -/obj/item/weapon/crowbar, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = -26 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/chapel/office) -"dPZ" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/effect/landmark/start{ - name = "Chaplain" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/chapel/office) -"dQa" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/chapel/office) -"dQb" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/plasteel/grimy, -/area/chapel/main) -"dQc" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/grimy, -/area/chapel/main) -"dQd" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/effect/landmark{ - name = "lightsout" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plasteel/grimy, -/area/chapel/main) -"dQe" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/plasteel/grimy, -/area/chapel/main) -"dQf" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/grimy, -/area/chapel/main) -"dQg" = ( -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/grimy, -/area/chapel/main) -"dQh" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/centcom{ - name = "Chapel Hall" - }, -/turf/open/floor/plasteel/warning/side, -/area/chapel/main) -"dQi" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/delivery, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"dQj" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"dQk" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/delivery, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"dQl" = ( -/obj/structure/chair{ - dir = 1 - }, -/turf/open/floor/plasteel/bot, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"dQm" = ( -/obj/structure/chair{ - dir = 1 - }, -/obj/machinery/light, -/turf/open/floor/plasteel/bot, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"dQn" = ( -/obj/structure/table, -/obj/item/weapon/paper_bin, -/obj/item/weapon/pen, -/turf/open/floor/plasteel/delivery, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"dQo" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"dQp" = ( -/obj/structure/extinguisher_cabinet, -/turf/closed/wall/shuttle/smooth/nodiagonal, -/area/shuttle/escape) -"dQq" = ( -/obj/structure/bed/roller, -/obj/machinery/iv_drip, -/turf/open/floor/plasteel/whiteblue/side, -/area/shuttle/escape) -"dQr" = ( -/turf/open/floor/plasteel/whiteblue/side, -/area/shuttle/escape) -"dQs" = ( -/obj/structure/bed/roller, -/obj/machinery/iv_drip, -/obj/structure/extinguisher_cabinet{ - pixel_x = 26 - }, -/turf/open/floor/plasteel/whiteblue/side{ - dir = 6 - }, -/area/shuttle/escape) -"dQt" = ( -/obj/structure/reagent_dispensers/virusfood{ - pixel_x = -32 - }, -/obj/structure/table/glass, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/reagentgrinder{ - desc = "Used to grind things up into raw materials and liquids."; - pixel_y = 5 - }, -/obj/machinery/camera{ - c_tag = "Virology Lab - Port"; - dir = 4; - name = "virology camera" - }, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/medical/virology) -"dQu" = ( -/obj/structure/chair/office/light{ - dir = 1 - }, -/turf/open/floor/plasteel/whitegreen/corner{ - dir = 1 - }, -/area/medical/virology) -"dQv" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/whitegreen/corner{ - dir = 1 - }, -/area/medical/virology) -"dQw" = ( -/turf/open/floor/plasteel/whitegreen/side{ - dir = 1 - }, -/area/medical/virology) -"dQx" = ( -/turf/open/floor/plasteel/whitegreen/corner{ - dir = 4 - }, -/area/medical/virology) -"dQy" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHEAST)"; - icon_state = "intact"; - dir = 5 - }, -/turf/open/floor/plasteel/whitegreen/corner{ - dir = 4 - }, -/area/medical/virology) -"dQz" = ( -/obj/machinery/iv_drip, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/bot, -/area/medical/virology) -"dQA" = ( -/obj/structure/grille, -/obj/structure/cable/white{ - tag = "icon-0-2"; - icon_state = "0-2" - }, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/medical/virology) -"dQB" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plasteel/whitegreen/corner{ - dir = 8 - }, -/area/medical/virology) -"dQC" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/turf/open/floor/plasteel/neutral, -/area/medical/virology) -"dQD" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/whitegreen/corner, -/area/medical/virology) -"dQE" = ( -/obj/structure/bed/roller, -/obj/effect/decal/cleanable/dirt, -/mob/living/carbon/monkey, -/turf/open/floor/plasteel/bot, -/area/medical/virology) -"dQF" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/whitegreen/corner{ - dir = 8 - }, -/area/medical/virology) -"dQG" = ( -/obj/effect/landmark{ - name = "revenantspawn" - }, -/turf/open/floor/plasteel/delivery, -/area/medical/virology) -"dQH" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/whitegreen/corner, -/area/medical/virology) -"dQI" = ( -/obj/structure/bed/roller, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/bot, -/area/medical/virology) -"dQJ" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/airalarm{ - dir = 4; - locked = 0; - pixel_x = -23; - pixel_y = 0 - }, -/turf/open/floor/wood, -/area/library{ - name = "Abandoned Library" - }) -"dQK" = ( -/turf/open/floor/wood{ - icon_state = "wood-broken7" - }, -/area/library{ - name = "Abandoned Library" - }) -"dQL" = ( -/obj/effect/decal/cleanable/dirt, -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/turf/open/floor/plating, -/area/library{ - name = "Abandoned Library" - }) -"dQM" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/turf/open/floor/plating, -/area/library{ - name = "Abandoned Library" - }) -"dQN" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/blood/old, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 2; - on = 1 - }, -/obj/effect/landmark{ - name = "xeno_spawn"; - pixel_x = -1 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/library{ - name = "Abandoned Library" - }) -"dQO" = ( -/obj/structure/spirit_board{ - anchored = 1 - }, -/obj/effect/decal/cleanable/blood/old, -/turf/open/floor/plating, -/area/library{ - name = "Abandoned Library" - }) -"dQP" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral/side{ - dir = 8; - heat_capacity = 1e+006 - }, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dQQ" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dQR" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/chapel/office) -"dQS" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/camera{ - c_tag = "Chapel Morgue"; - dir = 8; - name = "chapel camera" - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/chapel/office) -"dQT" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/obj/machinery/camera{ - c_tag = "Chapel - Port"; - dir = 4; - name = "chapel camera" - }, -/turf/open/floor/plasteel{ - dir = 1; - icon_state = "chapel" - }, -/area/chapel/main) -"dQU" = ( -/turf/open/floor/plasteel{ - dir = 4; - icon_state = "chapel" - }, -/area/chapel/main) -"dQV" = ( -/turf/open/floor/plasteel{ - dir = 1; - icon_state = "chapel" - }, -/area/chapel/main) -"dQW" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel{ - dir = 1; - icon_state = "chapel" - }, -/area/chapel/main) -"dQX" = ( -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel{ - dir = 1; - icon_state = "chapel" - }, -/area/chapel/main) -"dQY" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/turf/open/floor/plasteel{ - dir = 4; - icon_state = "chapel" - }, -/area/chapel/main) -"dQZ" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/delivery, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"dRa" = ( -/obj/structure/flora/ausbushes/grassybush, -/obj/structure/flora/ausbushes/lavendergrass, -/obj/structure/flora/ausbushes/ppflowers, -/obj/structure/flora/ausbushes/sunnybush, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/grass, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"dRb" = ( -/obj/machinery/status_display, -/turf/closed/wall, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"dRc" = ( -/obj/structure/flora/ausbushes/grassybush, -/obj/structure/flora/ausbushes/lavendergrass, -/obj/structure/flora/ausbushes/ywflowers, -/obj/structure/flora/ausbushes/fernybush, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/grass, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"dRd" = ( -/obj/machinery/ai_status_display, -/turf/closed/wall, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"dRe" = ( -/obj/machinery/door/airlock/external{ - name = "External Docking Port" - }, -/turf/open/floor/plasteel/warning/side, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"dRf" = ( -/obj/structure/fans/tiny, -/turf/open/floor/plasteel/delivery, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"dRg" = ( -/obj/machinery/door/airlock/shuttle{ - name = "Emergency Shuttle Airlock"; - req_access_txt = "0" - }, -/turf/open/floor/plasteel/warnwhite/side, -/area/shuttle/escape) -"dRh" = ( -/obj/structure/sign/bluecross_2, -/turf/closed/wall/mineral/titanium, -/area/shuttle/escape) -"dRi" = ( -/obj/machinery/sleeper{ - icon_state = "sleeper-open"; - dir = 4 - }, -/turf/open/floor/plasteel/cmo, -/area/shuttle/escape) -"dRj" = ( -/turf/open/floor/plasteel/cmo, -/area/shuttle/escape) -"dRk" = ( -/obj/machinery/sleeper{ - icon_state = "sleeper-open"; - dir = 8 - }, -/turf/open/floor/plasteel/cmo, -/area/shuttle/escape) -"dRl" = ( -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/smartfridge/chemistry/virology, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/medical/virology) -"dRm" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/whitegreen/side{ - dir = 8 - }, -/area/medical/virology) -"dRn" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/green, -/area/medical/virology) -"dRo" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/holopad, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/bot, -/area/medical/virology) -"dRp" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/green, -/area/medical/virology) -"dRq" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHEAST)"; - icon_state = "intact"; - dir = 6 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/whitegreen/side{ - tag = "icon-whitegreen (EAST)"; - icon_state = "whitegreen"; - dir = 4 - }, -/area/medical/virology) -"dRr" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/delivery, -/area/medical/virology) -"dRs" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass_virology{ - name = "Virology Lab"; - req_access_txt = "39" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/medical/virology) -"dRt" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/whitegreen/corner{ - dir = 8 - }, -/area/medical/virology) -"dRu" = ( -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/green, -/area/medical/virology) -"dRv" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plasteel/whitegreen/corner, -/area/medical/virology) -"dRw" = ( -/obj/structure/sign/biohazard, -/turf/closed/wall, -/area/medical/virology) -"dRx" = ( -/obj/structure/grille, -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/medical/virology) -"dRy" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass_virology{ - name = "Virology Monkey Pen"; - req_access_txt = "39" - }, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/medical/virology) -"dRz" = ( -/obj/structure/grille, -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/medical/virology) -"dRA" = ( -/obj/structure/table/wood, -/obj/item/weapon/paper_bin, -/obj/item/weapon/pen, -/turf/open/floor/wood, -/area/library{ - name = "Abandoned Library" - }) -"dRB" = ( -/obj/structure/chair/office/dark, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/library{ - name = "Abandoned Library" - }) -"dRC" = ( -/obj/structure/chair/office/dark{ - dir = 4 - }, -/turf/open/floor/wood{ - tag = "icon-wood-broken5"; - icon_state = "wood-broken5" - }, -/area/library{ - name = "Abandoned Library" - }) -"dRD" = ( -/obj/structure/table/wood, -/obj/item/weapon/folder, -/obj/item/weapon/pen, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHEAST)"; - icon_state = "intact"; - dir = 5 - }, -/turf/open/floor/wood, -/area/library{ - name = "Abandoned Library" - }) -"dRE" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/wood, -/area/library{ - name = "Abandoned Library" - }) -"dRF" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/wood{ - icon_state = "wood-broken4" - }, -/area/library{ - name = "Abandoned Library" - }) -"dRG" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/wood, -/area/library{ - name = "Abandoned Library" - }) -"dRH" = ( -/obj/effect/decal/cleanable/blood/old, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/wood{ - icon_state = "wood-broken" - }, -/area/library{ - name = "Abandoned Library" - }) -"dRI" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/door/morgue{ - name = "Occult Study" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/library{ - name = "Abandoned Library" - }) -"dRJ" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHWEST)"; - icon_state = "intact"; - dir = 9 - }, -/turf/open/floor/plasteel/black, -/area/library{ - name = "Abandoned Library" - }) -"dRK" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/blood/old, -/obj/effect/decal/remains/human, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/library{ - name = "Abandoned Library" - }) -"dRL" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dRM" = ( -/obj/structure/table, -/obj/item/stack/packageWrap, -/obj/item/weapon/hand_labeler, -/obj/structure/sign/nosmoking_2{ - pixel_x = -32 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/chapel/office) -"dRN" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/effect/landmark{ - name = "blobstart" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/chapel/office) -"dRO" = ( -/obj/machinery/airalarm{ - dir = 8; - icon_state = "alarm0"; - pixel_x = 24 - }, -/obj/machinery/light{ - icon_state = "tube1"; - dir = 4 - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/chapel/office) -"dRP" = ( -/obj/structure/chair/wood, -/turf/open/floor/plasteel{ - dir = 8; - icon_state = "chapel" - }, -/area/chapel/main) -"dRQ" = ( -/obj/structure/chair/wood, -/turf/open/floor/plasteel{ - icon_state = "chapel" - }, -/area/chapel/main) -"dRR" = ( -/obj/structure/chair/wood, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel{ - dir = 8; - icon_state = "chapel" - }, -/area/chapel/main) -"dRS" = ( -/obj/structure/chair/wood, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel{ - dir = 8; - icon_state = "chapel" - }, -/area/chapel/main) -"dRT" = ( -/obj/structure/chair/wood, -/obj/machinery/firealarm{ - dir = 4; - icon_state = "fire0"; - pixel_x = 24; - pixel_y = 0; - tag = "icon-fire0 (EAST)" - }, -/obj/machinery/camera{ - c_tag = "Chapel - Starboard"; - dir = 8; - name = "chapel camera" - }, -/turf/open/floor/plasteel{ - icon_state = "chapel" - }, -/area/chapel/main) -"dRU" = ( -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/turf/open/floor/plasteel/delivery, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"dRV" = ( -/obj/structure/chair, -/turf/open/floor/plasteel/bot, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"dRW" = ( -/obj/structure/table, -/obj/item/weapon/folder, -/obj/item/weapon/pen, -/turf/open/floor/plasteel/delivery, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"dRX" = ( -/obj/structure/chair, -/obj/effect/landmark/start{ - name = "Assistant" - }, -/obj/machinery/camera{ - c_tag = "Departures - Center"; - dir = 2; - name = "departures camera" - }, -/turf/open/floor/plasteel/bot, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"dRY" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/structure/sign/vacuum, -/turf/open/floor/plating, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"dRZ" = ( -/obj/structure/sign/nanotrasen, -/turf/closed/wall/mineral/titanium, -/area/shuttle/escape) -"dSa" = ( -/turf/open/floor/plasteel/bot, -/area/shuttle/escape) -"dSb" = ( -/obj/machinery/door/airlock/glass_medical{ - id_tag = null; - name = "Escape Shuttle Infirmary"; - req_access_txt = "0" - }, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (EAST)"; - icon_state = "plasteel_warn_side"; - dir = 4 - }, -/area/shuttle/escape) -"dSc" = ( -/obj/structure/table/glass, -/obj/machinery/airalarm{ - dir = 4; - locked = 0; - pixel_x = -23; - pixel_y = 0 - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/item/weapon/book/manual/wiki/infections, -/obj/item/weapon/reagent_containers/syringe/antiviral, -/obj/item/weapon/reagent_containers/dropper, -/obj/item/weapon/reagent_containers/spray/cleaner, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/medical/virology) -"dSd" = ( -/obj/structure/chair/office/light{ - dir = 8 - }, -/obj/effect/landmark/start{ - name = "Virologist" - }, -/turf/open/floor/plasteel/whitegreen/corner{ - dir = 8 - }, -/area/medical/virology) -"dSe" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/whitegreen/corner{ - dir = 8 - }, -/area/medical/virology) -"dSf" = ( -/turf/open/floor/plasteel/whitegreen/side, -/area/medical/virology) -"dSg" = ( -/turf/open/floor/plasteel/whitegreen/corner, -/area/medical/virology) -"dSh" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/whitegreen/corner, -/area/medical/virology) -"dSi" = ( -/obj/structure/closet/l3closet/virology, -/turf/open/floor/plasteel/bot, -/area/medical/virology) -"dSj" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/plasteel/whitegreen/corner{ - dir = 8 - }, -/area/medical/virology) -"dSk" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_Toxins = 0 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral, -/area/medical/virology) -"dSl" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/whitegreen/corner, -/area/medical/virology) -"dSm" = ( -/obj/structure/sink{ - dir = 8; - icon_state = "sink"; - pixel_x = -12 - }, -/obj/structure/extinguisher_cabinet{ - pixel_y = 32 - }, -/turf/open/floor/plasteel/whitegreen/corner{ - dir = 1 - }, -/area/medical/virology) -"dSn" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/whitegreen/corner{ - dir = 1 - }, -/area/medical/virology) -"dSo" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/whitegreen/side{ - dir = 1 - }, -/area/medical/virology) -"dSp" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHEAST)"; - icon_state = "intact"; - dir = 5 - }, -/turf/open/floor/plasteel/whitegreen/corner{ - dir = 4 - }, -/area/medical/virology) -"dSq" = ( -/obj/structure/table/glass, -/obj/machinery/airalarm{ - pixel_y = 22 - }, -/obj/item/stack/packageWrap, -/obj/item/weapon/hand_labeler, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = 26; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHWEST)"; - icon_state = "intact"; - dir = 10 - }, -/turf/open/floor/plasteel/whitegreen/corner{ - dir = 4 - }, -/area/medical/virology) -"dSr" = ( -/obj/structure/table/wood, -/obj/effect/decal/cleanable/dirt, -/obj/item/device/flashlight/lamp, -/turf/open/floor/plating, -/area/library{ - name = "Abandoned Library" - }) -"dSs" = ( -/obj/structure/table/wood, -/obj/effect/decal/cleanable/dirt, -/obj/item/weapon/folder, -/obj/item/weapon/pen, -/turf/open/floor/wood{ - icon_state = "wood-broken5" - }, -/area/library{ - name = "Abandoned Library" - }) -"dSt" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/obj/machinery/light/small, -/turf/open/floor/wood{ - tag = "icon-wood-broken3"; - icon_state = "wood-broken3" - }, -/area/library{ - name = "Abandoned Library" - }) -"dSu" = ( -/obj/structure/table/wood, -/obj/item/clothing/under/rank/librarian, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 2; - name = "2maintenance loot spawner" - }, -/turf/open/floor/wood, -/area/library{ - name = "Abandoned Library" - }) -"dSv" = ( -/obj/structure/table/wood, -/obj/effect/decal/cleanable/dirt, -/obj/item/weapon/paper_bin, -/obj/item/weapon/pen, -/turf/open/floor/wood, -/area/library{ - name = "Abandoned Library" - }) -"dSw" = ( -/obj/effect/decal/cleanable/dirt, -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/turf/open/floor/wood, -/area/library{ - name = "Abandoned Library" - }) -"dSx" = ( -/obj/structure/easel, -/obj/effect/decal/cleanable/dirt, -/obj/item/weapon/canvas/twentythreeXtwentythree, -/obj/item/weapon/canvas/twentythreeXtwentythree, -/obj/machinery/light/small, -/turf/open/floor/plating, -/area/library{ - name = "Abandoned Library" - }) -"dSy" = ( -/obj/structure/table/wood, -/obj/item/weapon/storage/crayons, -/obj/item/weapon/storage/crayons, -/turf/open/floor/wood, -/area/library{ - name = "Abandoned Library" - }) -"dSz" = ( -/obj/structure/table/wood, -/obj/effect/decal/cleanable/dirt, -/obj/item/weapon/paper_bin, -/turf/open/floor/plating, -/area/library{ - name = "Abandoned Library" - }) -"dSA" = ( -/obj/structure/dresser, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/library{ - name = "Abandoned Library" - }) -"dSB" = ( -/obj/structure/table/wood, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/item/device/taperecorder, -/turf/open/floor/plasteel/black, -/area/library{ - name = "Abandoned Library" - }) -"dSC" = ( -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dSD" = ( -/obj/structure/bodycontainer/morgue, -/obj/structure/sign/poster{ - icon_state = "poster8_legit"; - pixel_y = -32; - tag = "icon-poster8_legit" - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/chapel/office) -"dSE" = ( -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/chapel/office) -"dSF" = ( -/obj/machinery/light_switch{ - pixel_x = -26; - pixel_y = -26 - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/chapel/office) -"dSG" = ( -/obj/structure/chair/wood/normal, -/obj/machinery/newscaster{ - pixel_x = -32 - }, -/turf/open/floor/plasteel{ - dir = 1; - icon_state = "chapel" - }, -/area/chapel/main) -"dSH" = ( -/obj/structure/chair/wood/normal, -/turf/open/floor/plasteel{ - dir = 4; - icon_state = "chapel" - }, -/area/chapel/main) -"dSI" = ( -/obj/structure/chair/wood/normal, -/turf/open/floor/plasteel{ - dir = 1; - icon_state = "chapel" - }, -/area/chapel/main) -"dSJ" = ( -/obj/structure/chair/wood/normal, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel{ - dir = 1; - icon_state = "chapel" - }, -/area/chapel/main) -"dSK" = ( -/obj/structure/chair/wood/normal, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel{ - dir = 1; - icon_state = "chapel" - }, -/area/chapel/main) -"dSL" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/closet/emcloset, -/turf/open/floor/plasteel/delivery, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"dSM" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"dSN" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plasteel/neutral, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"dSO" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"dSP" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"dSQ" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHWEST)"; - icon_state = "intact"; - dir = 9 - }, -/turf/open/floor/plasteel/neutral, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"dSR" = ( -/obj/machinery/door/airlock/shuttle{ - name = "Emergency Shuttle Airlock" - }, -/obj/docking_port/mobile/emergency{ - dheight = 0; - dwidth = 11; - height = 18; - name = "Delta emergency shuttle"; - timid = 0; - width = 30 - }, -/obj/docking_port/stationary{ - dheight = 0; - dir = 4; - dwidth = 11; - height = 18; - id = "emergency_home"; - name = "DeltaStation emergency evac bay"; - turf_type = /turf/open/space; - width = 30 - }, -/turf/open/floor/plating, -/area/shuttle/escape) -"dSS" = ( -/obj/structure/flora/ausbushes/grassybush, -/obj/structure/flora/ausbushes/lavendergrass, -/obj/structure/flora/ausbushes/ppflowers, -/obj/structure/flora/ausbushes/sunnybush, -/obj/structure/window/shuttle, -/turf/open/floor/grass, -/area/shuttle/escape) -"dST" = ( -/obj/structure/extinguisher_cabinet{ - pixel_x = -26 - }, -/obj/machinery/shieldgen, -/turf/open/floor/plasteel/bot, -/area/shuttle/escape) -"dSU" = ( -/obj/structure/rack, -/obj/item/weapon/storage/toolbox/electrical{ - pixel_x = -3; - pixel_y = 1 - }, -/obj/item/weapon/storage/toolbox/mechanical{ - pixel_x = 0; - pixel_y = -1 - }, -/obj/item/weapon/storage/toolbox/emergency{ - pixel_x = 3; - pixel_y = -5 - }, -/turf/open/floor/plasteel/bot, -/area/shuttle/escape) -"dSV" = ( -/obj/structure/table/glass, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/item/weapon/storage/box/beakers{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/storage/box/syringes, -/turf/open/floor/plasteel/warning/corner{ - dir = 8 - }, -/area/medical/virology) -"dSW" = ( -/obj/structure/table/glass, -/obj/structure/sign/deathsposal{ - pixel_y = -32 - }, -/obj/item/weapon/paper_bin, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/medical/virology) -"dSX" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/disposal/bin, -/obj/structure/disposalpipe/trunk{ - dir = 1 - }, -/turf/open/floor/plasteel/warning{ - dir = 5 - }, -/area/medical/virology) -"dSY" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/turf/open/floor/plasteel/bot, -/area/medical/virology) -"dSZ" = ( -/obj/machinery/light, -/obj/machinery/status_display{ - pixel_y = -32 - }, -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/turf/open/floor/plasteel/bot, -/area/medical/virology) -"dTa" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/turf/open/floor/plasteel/bot, -/area/medical/virology) -"dTb" = ( -/obj/machinery/firealarm{ - dir = 4; - icon_state = "fire0"; - pixel_x = 24; - pixel_y = 0; - tag = "icon-fire0 (EAST)" - }, -/obj/structure/closet/secure_closet/medical1, -/obj/machinery/light_switch{ - pixel_x = 26; - pixel_y = -26 - }, -/obj/structure/extinguisher_cabinet{ - pixel_y = -32 - }, -/turf/open/floor/plasteel/bot, -/area/medical/virology) -"dTc" = ( -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/whitegreen/corner{ - dir = 8 - }, -/area/medical/virology) -"dTd" = ( -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/green, -/area/medical/virology) -"dTe" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHEAST)"; - icon_state = "intact"; - dir = 5 - }, -/turf/open/floor/plasteel/whitegreen/corner, -/area/medical/virology) -"dTf" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass_virology{ - name = "Virology Access"; - req_access_txt = "39" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/turf/open/floor/plasteel/warning/side, -/area/medical/virology) -"dTg" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/whitegreen/side{ - dir = 8 - }, -/area/medical/virology) -"dTh" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, -/turf/open/floor/plasteel/green, -/area/medical/virology) -"dTi" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/machinery/holopad, -/obj/effect/landmark{ - name = "blobstart" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/bot, -/area/medical/virology) -"dTj" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHWEST)"; - icon_state = "intact"; - dir = 10 - }, -/turf/open/floor/plasteel/green, -/area/medical/virology) -"dTk" = ( -/obj/structure/table/glass, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/item/weapon/folder/white, -/obj/item/weapon/pen/red, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/whitegreen/side{ - tag = "icon-whitegreen (EAST)"; - icon_state = "whitegreen"; - dir = 4 - }, -/area/medical/virology) -"dTl" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral/side{ - dir = 8; - heat_capacity = 1e+006 - }, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dTm" = ( -/obj/structure/girder, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dTn" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/closed/wall, -/area/chapel/office) -"dTo" = ( -/obj/machinery/door/airlock/centcom{ - name = "Crematorium"; - req_access_txt = "27" - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/chapel/office) -"dTp" = ( -/obj/structure/chair/wood, -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/turf/open/floor/plasteel{ - dir = 8; - icon_state = "chapel" - }, -/area/chapel/main) -"dTq" = ( -/turf/open/floor/plasteel{ - icon_state = "chapel" - }, -/area/chapel/main) -"dTr" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel{ - dir = 8; - icon_state = "chapel" - }, -/area/chapel/main) -"dTs" = ( -/obj/structure/chair/wood, -/obj/machinery/light{ - icon_state = "tube1"; - dir = 4 - }, -/obj/machinery/newscaster{ - pixel_x = 32 - }, -/turf/open/floor/plasteel{ - icon_state = "chapel" - }, -/area/chapel/main) -"dTt" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/vending/cola, -/turf/open/floor/plasteel/delivery, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"dTu" = ( -/obj/effect/landmark{ - name = "lightsout" - }, -/turf/open/floor/plasteel/neutral, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"dTv" = ( -/obj/structure/reagent_dispensers/fueltank, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = -26; - pixel_y = 0 - }, -/turf/open/floor/plasteel/bot, -/area/shuttle/escape) -"dTw" = ( -/turf/open/floor/plasteel/warning{ - dir = 9 - }, -/area/shuttle/escape) -"dTx" = ( -/turf/open/floor/plasteel/warning{ - dir = 5 - }, -/area/shuttle/escape) -"dTy" = ( -/obj/structure/closet/crate/medical{ - name = "medical crate" - }, -/obj/item/weapon/storage/firstaid/regular, -/obj/item/weapon/storage/firstaid/o2{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/storage/firstaid/toxin{ - pixel_x = -4; - pixel_y = 3 - }, -/obj/item/device/healthanalyzer{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/lazarus_injector, -/mob/living/simple_animal/bot/medbot{ - name = "\improper emergency medibot"; - pixel_x = -3; - pixel_y = 2 - }, -/turf/open/floor/plasteel/bot, -/area/shuttle/escape) -"dTz" = ( -/obj/structure/grille, -/obj/structure/cable/white, -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/medical/virology) -"dTA" = ( -/obj/structure/grille, -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/structure/cable/white, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/medical/virology) -"dTB" = ( -/obj/structure/grille, -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/structure/cable/white, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/medical/virology) -"dTC" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral, -/area/medical/virology) -"dTD" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/whitegreen/corner, -/area/medical/virology) -"dTE" = ( -/obj/structure/grille, -/obj/structure/cable/white, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/medical/virology) -"dTF" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/sink{ - dir = 8; - icon_state = "sink"; - pixel_x = -12 - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plasteel/whitegreen/corner{ - dir = 8 - }, -/area/medical/virology) -"dTG" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/whitegreen/corner{ - dir = 8 - }, -/area/medical/virology) -"dTH" = ( -/obj/machinery/firealarm{ - dir = 1; - pixel_x = 0; - pixel_y = -26 - }, -/obj/machinery/iv_drip, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/camera{ - c_tag = "Virology - Containment Cells"; - dir = 1; - name = "virology camera" - }, -/turf/open/floor/plasteel/whitegreen/side, -/area/medical/virology) -"dTI" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/whitegreen/corner, -/area/medical/virology) -"dTJ" = ( -/obj/structure/table/glass, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/newscaster{ - pixel_x = 32 - }, -/obj/item/weapon/paper_bin, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plasteel/whitegreen/corner, -/area/medical/virology) -"dTK" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHEAST)"; - icon_state = "intact"; - dir = 6 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dTL" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 1; - heat_capacity = 1e+006 - }, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dTM" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 1; - heat_capacity = 1e+006 - }, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dTN" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/landmark{ - name = "blobstart" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 1; - heat_capacity = 1e+006 - }, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dTO" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dTP" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHWEST)"; - icon_state = "intact"; - dir = 9 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dTQ" = ( -/turf/closed/wall/r_wall, -/area/chapel/office) -"dTR" = ( -/obj/structure/bodycontainer/crematorium{ - id = "cremawheat" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/chapel/office) -"dTS" = ( -/obj/machinery/light_switch{ - pixel_x = -26; - pixel_y = 26 - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/chapel/office) -"dTT" = ( -/obj/machinery/power/apc{ - dir = 8; - name = "Chapel APC"; - pixel_x = -26; - pixel_y = 3 - }, -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/turf/open/floor/plasteel{ - dir = 1; - icon_state = "chapel" - }, -/area/chapel/main) -"dTU" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel{ - dir = 4; - icon_state = "chapel" - }, -/area/chapel/main) -"dTV" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel{ - dir = 1; - icon_state = "chapel" - }, -/area/chapel/main) -"dTW" = ( -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/grimy, -/area/chapel/main) -"dTX" = ( -/obj/machinery/airalarm{ - dir = 8; - icon_state = "alarm0"; - pixel_x = 24 - }, -/turf/open/floor/plasteel{ - dir = 4; - icon_state = "chapel" - }, -/area/chapel/main) -"dTY" = ( -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/vending/snack, -/turf/open/floor/plasteel/delivery, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"dTZ" = ( -/obj/structure/chair{ - dir = 1 - }, -/obj/effect/landmark/start{ - name = "Assistant" - }, -/turf/open/floor/plasteel/bot, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"dUa" = ( -/obj/structure/table, -/obj/item/weapon/storage/firstaid/regular, -/turf/open/floor/plasteel/delivery, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"dUb" = ( -/obj/structure/flora/ausbushes/grassybush, -/obj/structure/flora/ausbushes/lavendergrass, -/obj/structure/flora/ausbushes/ywflowers, -/obj/structure/flora/ausbushes/fernybush, -/obj/structure/window/shuttle, -/turf/open/floor/grass, -/area/shuttle/escape) -"dUc" = ( -/obj/structure/reagent_dispensers/watertank, -/turf/open/floor/plasteel/bot, -/area/shuttle/escape) -"dUd" = ( -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/shuttle/escape) -"dUe" = ( -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/shuttle/escape) -"dUf" = ( -/obj/structure/closet/crate{ - name = "emergency supplies crate" - }, -/obj/item/weapon/storage/toolbox/emergency, -/obj/item/weapon/storage/toolbox/emergency, -/obj/item/device/flashlight/flare{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/device/flashlight/flare{ - pixel_x = -6; - pixel_y = -2 - }, -/obj/item/weapon/crowbar, -/obj/item/weapon/wrench, -/obj/item/device/radio, -/turf/open/floor/plasteel/bot, -/area/shuttle/escape) -"dUg" = ( -/obj/structure/sign/nanotrasen{ - pixel_y = -32 - }, -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHEAST)"; - icon_state = "intact"; - dir = 5 - }, -/turf/open/floor/plasteel/whitegreen/corner{ - dir = 8 - }, -/area/medical/virology) -"dUh" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/table, -/obj/item/weapon/crowbar, -/obj/item/weapon/wrench, -/obj/item/weapon/restraints/handcuffs, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHWEST)"; - icon_state = "intact"; - dir = 10 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/whitegreen/side, -/area/medical/virology) -"dUi" = ( -/obj/structure/table, -/obj/item/weapon/storage/box/masks{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/storage/box/gloves, -/turf/open/floor/plasteel/whitegreen/corner, -/area/medical/virology) -"dUj" = ( -/obj/structure/grille, -/obj/structure/cable/white, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/medical/virology) -"dUk" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass_virology{ - name = "Virology Containment Cell 1"; - req_access_txt = "39" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/medical/virology) -"dUl" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/maintenance/portsolar) -"dUm" = ( -/turf/closed/wall/r_wall, -/area/maintenance/portsolar) -"dUn" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral/side{ - dir = 8 - }, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dUo" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dUp" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/neutral/side, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dUq" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/turf/open/floor/plasteel/blue/side, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dUr" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/blue/side, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dUs" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dUt" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/blue/side, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dUu" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/turf/open/floor/plasteel/neutral/side, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dUv" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHEAST)"; - icon_state = "intact"; - dir = 5 - }, -/obj/machinery/button/crematorium{ - id = "cremawheat"; - pixel_x = -26; - req_access_txt = "27" - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/chapel/office) -"dUw" = ( -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = 26 - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/chapel/office) -"dUx" = ( -/turf/open/floor/plasteel{ - dir = 8; - icon_state = "chapel" - }, -/area/chapel/main) -"dUy" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHEAST)"; - icon_state = "intact"; - dir = 6 - }, -/turf/open/floor/plasteel{ - icon_state = "chapel" - }, -/area/chapel/main) -"dUz" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel{ - dir = 8; - icon_state = "chapel" - }, -/area/chapel/main) -"dUA" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel{ - icon_state = "chapel" - }, -/area/chapel/main) -"dUB" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/grimy, -/area/chapel/main) -"dUC" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plasteel{ - dir = 8; - icon_state = "chapel" - }, -/area/chapel/main) -"dUD" = ( -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel{ - dir = 8; - icon_state = "chapel" - }, -/area/chapel/main) -"dUE" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/closet/firecloset, -/turf/open/floor/plasteel/delivery, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"dUF" = ( -/obj/machinery/holopad, -/turf/open/floor/plasteel/bot, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"dUG" = ( -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/turf/open/floor/plasteel/delivery, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"dUH" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/structure/sign/directions/engineering{ - desc = "A sign that shows there are doors here. There are doors everywhere!"; - icon_state = "doors"; - name = "WARNING: EXTERNAL AIRLOCK"; - tag = "icon-doors" - }, -/turf/open/floor/plating, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"dUI" = ( -/obj/machinery/vending/wallmed{ - name = "Emergency NanoMed"; - pixel_x = 0; - pixel_y = 0; - req_access_txt = "0"; - use_power = 0 - }, -/turf/closed/wall/shuttle/smooth/nodiagonal, -/area/shuttle/escape) -"dUJ" = ( -/obj/machinery/door/airlock/shuttle{ - name = "Emergency Shuttle Cargo" - }, -/turf/open/floor/plasteel/warning/side, -/area/shuttle/escape) -"dUK" = ( -/obj/structure/grille, -/obj/structure/cable/white, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plating, -/area/medical/virology) -"dUL" = ( -/obj/structure/sign/vacuum, -/turf/closed/wall/r_wall, -/area/medical/virology) -"dUM" = ( -/obj/structure/bed, -/obj/item/weapon/bedsheet/medical, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/whitegreen/side{ - tag = "icon-whitegreen (NORTHWEST)"; - icon_state = "whitegreen"; - dir = 9 - }, -/area/medical/virology) -"dUN" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/turf/open/floor/plasteel/whitegreen/side{ - tag = "icon-whitegreen (NORTHEAST)"; - icon_state = "whitegreen"; - dir = 5 - }, -/area/medical/virology) -"dUO" = ( -/obj/structure/sign/nanotrasen, -/turf/closed/wall, -/area/medical/virology) -"dUP" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/turf/open/floor/plasteel/whitegreen/side{ - tag = "icon-whitegreen (NORTHWEST)"; - icon_state = "whitegreen"; - dir = 9 - }, -/area/medical/virology) -"dUQ" = ( -/obj/structure/bed, -/obj/item/weapon/bedsheet/medical, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/whitegreen/side{ - tag = "icon-whitegreen (NORTHEAST)"; - icon_state = "whitegreen"; - dir = 5 - }, -/area/medical/virology) -"dUR" = ( -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_y = 26 - }, -/turf/open/floor/plating/warnplate{ - dir = 9 - }, -/area/maintenance/portsolar) -"dUS" = ( -/obj/machinery/power/smes, -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/plating/warnplate{ - dir = 1 - }, -/area/maintenance/portsolar) -"dUT" = ( -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/machinery/camera{ - c_tag = "Solar - Aft Port"; - name = "solar camera" - }, -/turf/open/floor/plating/warnplate{ - dir = 5 - }, -/area/maintenance/portsolar) -"dUU" = ( -/obj/structure/sign/directions/engineering{ - desc = "A sign that shows there are doors here. There are doors everywhere!"; - icon_state = "doors"; - name = "WARNING: EXTERNAL AIRLOCK"; - pixel_x = 0; - tag = "icon-doors" - }, -/turf/closed/wall/r_wall, -/area/maintenance/portsolar) -"dUV" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral/side{ - dir = 8 - }, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dUW" = ( -/obj/structure/sign/electricshock, -/turf/closed/wall/r_wall, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dUX" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/structure/cable/white, -/obj/structure/barricade/wooden, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dUY" = ( -/obj/machinery/door/poddoor/shutters{ - id = "evashutters2"; - name = "E.V.A. Storage Shutters" - }, -/obj/effect/decal/cleanable/dirt, -/obj/structure/barricade/wooden, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (EAST)"; - icon_state = "plasteel_warn_side"; - dir = 4 - }, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dUZ" = ( -/obj/machinery/button/door{ - id = "evashutters2"; - name = "E.V.A. Shutters"; - pixel_x = 26; - req_access_txt = "19" - }, -/obj/machinery/door/poddoor/shutters{ - id = "evashutters2"; - name = "E.V.A. Storage Shutters" - }, -/obj/structure/barricade/wooden, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (EAST)"; - icon_state = "plasteel_warn_side"; - dir = 4 - }, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dVa" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/door/airlock/command{ - name = "Auxiliary E.V.A. Storage"; - req_access = null; - req_access_txt = "18" - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/barricade/wooden, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dVb" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/door/airlock/command{ - name = "Auxiliary E.V.A. Storage"; - req_access = null; - req_access_txt = "18" - }, -/obj/structure/barricade/wooden, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dVc" = ( -/obj/structure/sign/nanotrasen, -/turf/closed/wall/r_wall, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dVd" = ( -/obj/structure/bodycontainer/morgue, -/obj/machinery/airalarm{ - dir = 4; - icon_state = "alarm0"; - pixel_x = -22 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/chapel/office) -"dVe" = ( -/obj/machinery/light{ - icon_state = "tube1"; - dir = 4 - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/camera{ - c_tag = "Chapel Crematorium"; - dir = 8; - name = "chapel camera" - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/chapel/office) -"dVf" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel{ - dir = 4; - icon_state = "chapel" - }, -/area/chapel/main) -"dVg" = ( -/obj/structure/table/wood/fancy, -/turf/open/floor/plasteel/grimy, -/area/chapel/main) -"dVh" = ( -/obj/structure/table/wood/fancy, -/obj/item/weapon/storage/book/bible, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/grimy, -/area/chapel/main) -"dVi" = ( -/obj/structure/table/wood/fancy, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/grimy, -/area/chapel/main) -"dVj" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/obj/machinery/camera{ - c_tag = "Departures - Port"; - dir = 4; - name = "departures camera" - }, -/turf/open/floor/plasteel/delivery, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"dVk" = ( -/obj/structure/chair, -/obj/machinery/light{ - dir = 1 - }, -/turf/open/floor/plasteel/bot, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"dVl" = ( -/obj/structure/table, -/obj/item/weapon/storage/pill_bottle/dice, -/turf/open/floor/plasteel/delivery, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"dVm" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHEAST)"; - icon_state = "intact"; - dir = 6 - }, -/turf/open/floor/plating/warnplate{ - dir = 1 - }, -/area/space) -"dVn" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHWEST)"; - icon_state = "intact"; - dir = 9 - }, -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/turf/open/floor/plating, -/area/space) -"dVo" = ( -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/turf/open/floor/plating/warnplate{ - dir = 1 - }, -/area/space) -"dVp" = ( -/obj/machinery/iv_drip, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/whitegreen/side{ - tag = "icon-whitegreen (SOUTHWEST)"; - icon_state = "whitegreen"; - dir = 10 - }, -/area/medical/virology) -"dVq" = ( -/obj/machinery/light/small{ - dir = 4 - }, -/obj/structure/chair/office/light, -/obj/effect/decal/cleanable/greenglow, -/turf/open/floor/plasteel/whitegreen/side{ - tag = "icon-whitegreen (SOUTHEAST)"; - icon_state = "whitegreen"; - dir = 6 - }, -/area/medical/virology) -"dVr" = ( -/obj/machinery/status_display, -/turf/closed/wall, -/area/medical/virology) -"dVs" = ( -/obj/machinery/light/small{ - dir = 8 - }, -/obj/structure/chair/office/light, -/turf/open/floor/plasteel/whitegreen/side{ - tag = "icon-whitegreen (SOUTHWEST)"; - icon_state = "whitegreen"; - dir = 10 - }, -/area/medical/virology) -"dVt" = ( -/obj/machinery/iv_drip, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/whitegreen/side{ - tag = "icon-whitegreen (SOUTHEAST)"; - icon_state = "whitegreen"; - dir = 6 - }, -/area/medical/virology) -"dVu" = ( -/obj/structure/lattice/catwalk, -/turf/open/space, -/area/solar/port) -"dVv" = ( -/obj/structure/lattice/catwalk, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/turf/open/space, -/area/solar/port) -"dVw" = ( -/obj/structure/lattice/catwalk, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0; - tag = "" - }, -/turf/open/space, -/area/solar/port) -"dVx" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0; - tag = "" - }, -/obj/machinery/door/airlock/external{ - name = "External Solar Access"; - req_access_txt = "10" - }, -/turf/open/floor/plasteel/warning/side, -/area/maintenance/portsolar) -"dVy" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0; - tag = "" - }, -/obj/structure/fans/tiny, -/turf/open/floor/plasteel/delivery, -/area/maintenance/portsolar) -"dVz" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0; - tag = "" - }, -/turf/open/floor/plating/warnplate{ - dir = 8 - }, -/area/maintenance/portsolar) -"dVA" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/power/terminal{ - icon_state = "term"; - dir = 1 - }, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/effect/landmark{ - name = "blobstart" - }, -/turf/open/floor/plating, -/area/maintenance/portsolar) -"dVB" = ( -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/obj/effect/landmark{ - name = "xeno_spawn"; - pixel_x = -1 - }, -/turf/open/floor/plating/warnplate{ - dir = 4; - luminosity = 2; - initial_gas_mix = "o2=0.01;n2=0.01"; - temperature = 2.7 - }, -/area/maintenance/portsolar) -"dVC" = ( -/obj/machinery/door/airlock/engineering{ - name = "Aft Port Solar Access"; - req_access_txt = "10" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/side, -/area/maintenance/portsolar) -"dVD" = ( -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHWEST)"; - icon_state = "intact"; - dir = 9 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dVE" = ( -/obj/structure/table/reinforced, -/obj/item/stack/packageWrap, -/obj/item/weapon/hand_labeler, -/obj/effect/decal/cleanable/cobweb, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dVF" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dVG" = ( -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dVH" = ( -/obj/machinery/light{ - dir = 1 - }, -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dVI" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dVJ" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/clipboard, -/obj/item/weapon/folder/yellow, -/obj/machinery/light_switch{ - pixel_x = 26 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dVK" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/neutral/side{ - dir = 8 - }, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dVL" = ( -/obj/structure/table, -/obj/item/weapon/storage/box/gloves{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/storage/box/bodybags, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/chapel/office) -"dVM" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/chapel/office) -"dVN" = ( -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/obj/structure/extinguisher_cabinet{ - pixel_x = -26 - }, -/turf/open/floor/plasteel{ - dir = 8; - icon_state = "chapel" - }, -/area/chapel/main) -"dVO" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel{ - icon_state = "chapel" - }, -/area/chapel/main) -"dVP" = ( -/obj/structure/table/wood/fancy, -/obj/item/device/flashlight/lantern, -/turf/open/floor/plasteel/grimy, -/area/chapel/main) -"dVQ" = ( -/obj/effect/landmark/start{ - name = "Chaplain" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/grimy, -/area/chapel/main) -"dVR" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 2; - on = 1 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel{ - dir = 8; - icon_state = "chapel" - }, -/area/chapel/main) -"dVS" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/obj/machinery/light{ - icon_state = "tube1"; - dir = 4 - }, -/obj/structure/sign/nosmoking_2{ - pixel_x = 32 - }, -/turf/open/floor/plasteel{ - icon_state = "chapel" - }, -/area/chapel/main) -"dVT" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHEAST)"; - icon_state = "intact"; - dir = 5 - }, -/turf/open/floor/plasteel/delivery, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"dVU" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"dVV" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/turf/open/floor/plasteel/neutral, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"dVW" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plasteel/neutral, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"dVX" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"dVY" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plasteel/neutral, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"dVZ" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/neutral, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"dWa" = ( -/obj/structure/rack, -/obj/item/clothing/suit/fire/firefighter, -/obj/item/weapon/tank/internals/oxygen/red, -/obj/item/clothing/mask/gas, -/obj/item/clothing/head/hardhat/red, -/turf/open/floor/plasteel/bot, -/area/shuttle/escape) -"dWb" = ( -/turf/open/floor/plasteel/warning{ - dir = 10 - }, -/area/shuttle/escape) -"dWc" = ( -/turf/open/floor/plasteel/warning{ - dir = 6 - }, -/area/shuttle/escape) -"dWd" = ( -/obj/machinery/atmospherics/components/unary/outlet_injector/on{ - tag = "icon-inje_map (NORTH)"; - icon_state = "inje_map"; - dir = 1 - }, -/turf/open/floor/plating/warnplate, -/area/space) -"dWe" = ( -/obj/structure/disposalpipe/trunk{ - dir = 1 - }, -/obj/structure/disposaloutlet, -/turf/open/floor/plating/warnplate, -/area/space) -"dWf" = ( -/obj/structure/table/glass, -/obj/item/weapon/reagent_containers/glass/beaker, -/obj/item/weapon/reagent_containers/syringe/antiviral, -/obj/item/weapon/reagent_containers/dropper, -/turf/open/floor/plasteel/delivery, -/area/medical/virology) -"dWg" = ( -/obj/structure/table/glass, -/obj/item/weapon/folder/white, -/obj/item/weapon/pen/red, -/turf/open/floor/plasteel/delivery, -/area/medical/virology) -"dWh" = ( -/obj/machinery/power/solar_control{ - id = "aftport"; - name = "Aft Port Solar Control"; - track = 0 - }, -/obj/structure/cable, -/turf/open/floor/plating/warnplate{ - dir = 10 - }, -/area/maintenance/portsolar) -"dWi" = ( -/obj/structure/chair/office/dark{ - dir = 8 - }, -/turf/open/floor/plating/warnplate, -/area/maintenance/portsolar) -"dWj" = ( -/obj/structure/cable/white, -/obj/machinery/power/apc{ - cell_type = 10000; - dir = 2; - name = "Aft Port Solar APC"; - pixel_y = -26 - }, -/turf/open/floor/plating/warnplate{ - dir = 6 - }, -/area/maintenance/portsolar) -"dWk" = ( -/obj/structure/sign/electricshock, -/turf/closed/wall/r_wall, -/area/maintenance/portsolar) -"dWl" = ( -/obj/structure/table/reinforced, -/obj/machinery/airalarm{ - dir = 4; - locked = 0; - pixel_x = -23; - pixel_y = 0 - }, -/obj/item/stack/cable_coil/white, -/obj/item/stack/cable_coil/white, -/obj/item/device/multitool, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dWm" = ( -/turf/open/floor/plasteel/warning{ - dir = 10 - }, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dWn" = ( -/turf/open/floor/plasteel/warning, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dWo" = ( -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/plasteel/warning, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dWp" = ( -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHWEST)"; - icon_state = "intact"; - dir = 9 - }, -/turf/open/floor/plasteel/warning, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dWq" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning{ - dir = 6 - }, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dWr" = ( -/obj/structure/table/reinforced, -/obj/machinery/newscaster{ - pixel_x = 32 - }, -/obj/item/clothing/gloves/color/black, -/obj/item/clothing/gloves/color/black, -/obj/item/clothing/gloves/color/black, -/obj/item/clothing/suit/hazardvest, -/obj/item/clothing/suit/hazardvest, -/obj/item/clothing/suit/hazardvest, -/obj/item/clothing/mask/breath, -/obj/item/clothing/mask/breath, -/obj/item/clothing/mask/breath, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dWs" = ( -/obj/structure/bodycontainer/morgue, -/obj/machinery/firealarm{ - dir = 1; - pixel_x = 0; - pixel_y = -24 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/chapel/office) -"dWt" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/chapel/office) -"dWu" = ( -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/chapel/main) -"dWv" = ( -/turf/open/floor/plasteel/black, -/area/chapel/main) -"dWw" = ( -/obj/machinery/ai_status_display{ - pixel_y = -32 - }, -/turf/open/floor/plasteel/grimy, -/area/chapel/main) -"dWx" = ( -/obj/structure/noticeboard{ - desc = "A board for remembering the fallen of the station."; - dir = 1; - icon_state = "nboard00"; - name = "memorial board"; - pixel_y = -32; - tag = "icon-nboard00 (NORTH)" - }, -/obj/machinery/holopad, -/obj/machinery/light, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHEAST)"; - icon_state = "intact"; - dir = 5 - }, -/obj/machinery/camera{ - c_tag = "Chapel - Aft"; - dir = 1; - name = "chapel camera" - }, -/turf/open/floor/plasteel/grimy, -/area/chapel/main) -"dWy" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/grimy, -/area/chapel/main) -"dWz" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/black, -/area/chapel/main) -"dWA" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHEAST)"; - icon_state = "intact"; - dir = 5 - }, -/turf/open/floor/plasteel/warning{ - dir = 10 - }, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"dWB" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"dWC" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"dWD" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plasteel/warning, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"dWE" = ( -/obj/machinery/airalarm{ - dir = 1; - icon_state = "alarm0"; - pixel_y = -22 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/camera{ - c_tag = "Departures - Aft"; - dir = 1; - name = "departures camera" - }, -/turf/open/floor/plasteel/warning, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"dWF" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"dWG" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHWEST)"; - icon_state = "intact"; - dir = 10 - }, -/turf/open/floor/plasteel/warning{ - dir = 6 - }, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"dWH" = ( -/turf/open/floor/plasteel/neutral/side, -/area/shuttle/escape) -"dWI" = ( -/obj/machinery/flasher{ - id = "shuttleflash"; - pixel_y = -26 - }, -/turf/open/floor/plasteel/neutral/side, -/area/shuttle/escape) -"dWJ" = ( -/obj/structure/table, -/obj/item/weapon/clipboard, -/obj/item/weapon/folder/yellow, -/obj/item/weapon/pen, -/obj/item/hand_labeler_refill, -/turf/open/floor/plasteel/bot, -/area/shuttle/escape) -"dWK" = ( -/obj/machinery/recharge_station, -/turf/open/floor/plasteel/delivery, -/area/shuttle/escape) -"dWL" = ( -/obj/structure/table, -/obj/machinery/cell_charger, -/obj/item/weapon/stock_parts/cell/high, -/turf/open/floor/plasteel/bot, -/area/shuttle/escape) -"dWM" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/medical/virology) -"dWN" = ( -/obj/machinery/shieldwallgen, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dWO" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dWP" = ( -/turf/open/floor/plasteel/delivery, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dWQ" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dWR" = ( -/obj/structure/rack, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/effect/decal/cleanable/dirt, -/obj/item/weapon/tank/internals/oxygen, -/obj/item/device/radio, -/obj/item/clothing/mask/breath, -/turf/open/floor/plasteel/bot, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dWS" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dWT" = ( -/obj/machinery/shieldwallgen, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dWU" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/closet, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 3; - name = "3maintenance loot spawner" - }, -/turf/open/floor/plasteel/delivery, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dWV" = ( -/obj/machinery/door/morgue{ - name = "Relic Closet"; - req_access_txt = "27" - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/chapel/office) -"dWW" = ( -/obj/machinery/door/morgue{ - name = "Confession Booth"; - req_access_txt = "0" - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/chapel/main) -"dWX" = ( -/obj/machinery/status_display, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall, -/area/chapel/main) -"dWY" = ( -/obj/machinery/door/airlock/centcom{ - name = "Chapel Office"; - req_access_txt = "27" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/chapel/main) -"dWZ" = ( -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Maintenance Hatch"; - req_access_txt = "12" - }, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"dXa" = ( -/obj/machinery/door/firedoor, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/door/airlock/glass_security{ - name = "Security Checkpoint"; - req_access_txt = "63" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/security/checkpoint2) -"dXb" = ( -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/checkpoint2) -"dXc" = ( -/obj/machinery/door/firedoor, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/machinery/door/window/brigdoor/southright{ - name = "Security Desk"; - req_access_txt = "63" - }, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/security/checkpoint2) -"dXd" = ( -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/security/checkpoint2) -"dXe" = ( -/obj/machinery/status_display, -/turf/closed/wall, -/area/security/checkpoint2) -"dXf" = ( -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/security/checkpoint2) -"dXg" = ( -/obj/machinery/door/firedoor, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/machinery/door/airlock/glass_security{ - name = "Holding Area"; - req_access_txt = "2" - }, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/security/checkpoint2) -"dXh" = ( -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/security/checkpoint2) -"dXi" = ( -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/checkpoint2) -"dXj" = ( -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/structure/sign/vacuum, -/turf/open/floor/plating, -/area/security/checkpoint2) -"dXk" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/checkpoint2) -"dXl" = ( -/obj/machinery/door/airlock/glass_security{ - name = "Holding Area"; - req_access_txt = "2" - }, -/turf/open/floor/plasteel/shuttle/red, -/area/shuttle/escape) -"dXm" = ( -/obj/machinery/door/airlock/glass_command{ - name = "Cockpit"; - req_access_txt = "19" - }, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (EAST)"; - icon_state = "plasteel_warn_side"; - dir = 4 - }, -/area/shuttle/escape) -"dXn" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/closet/firecloset, -/turf/open/floor/plasteel/delivery, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dXo" = ( -/obj/item/clothing/suit/hazardvest{ - desc = "A high-visibility lifejacket complete with whistle and slot for oxygen tanks."; - name = "emergency lifejacket" - }, -/obj/item/clothing/suit/hazardvest{ - desc = "A high-visibility lifejacket complete with whistle and slot for oxygen tanks."; - name = "emergency lifejacket" - }, -/obj/item/clothing/suit/hazardvest{ - desc = "A high-visibility lifejacket complete with whistle and slot for oxygen tanks."; - name = "emergency lifejacket" - }, -/obj/item/clothing/suit/hazardvest{ - desc = "A high-visibility lifejacket complete with whistle and slot for oxygen tanks."; - name = "emergency lifejacket" - }, -/obj/item/clothing/suit/hazardvest{ - desc = "A high-visibility lifejacket complete with whistle and slot for oxygen tanks."; - name = "emergency lifejacket" - }, -/obj/item/weapon/tank/internals/emergency_oxygen/double{ - pixel_x = 3 - }, -/obj/item/weapon/tank/internals/emergency_oxygen/double{ - pixel_x = 3 - }, -/obj/item/weapon/tank/internals/emergency_oxygen/double{ - pixel_x = 3 - }, -/obj/item/weapon/tank/internals/emergency_oxygen/double{ - pixel_x = 3 - }, -/obj/item/weapon/tank/internals/emergency_oxygen/double{ - pixel_x = 3 - }, -/obj/item/clothing/mask/breath{ - pixel_x = -3; - pixel_y = -3 - }, -/obj/item/clothing/mask/breath{ - pixel_x = -3; - pixel_y = -3 - }, -/obj/item/clothing/mask/breath{ - pixel_x = -3; - pixel_y = -3 - }, -/obj/item/clothing/mask/breath{ - pixel_x = -3; - pixel_y = -3 - }, -/obj/item/clothing/mask/breath{ - pixel_x = -3; - pixel_y = -3 - }, -/obj/item/clothing/head/hardhat/orange{ - name = "protective hat"; - pixel_y = 9 - }, -/obj/item/clothing/head/hardhat/orange{ - name = "protective hat"; - pixel_y = 9 - }, -/obj/item/clothing/head/hardhat/orange{ - name = "protective hat"; - pixel_y = 9 - }, -/obj/item/clothing/head/hardhat/orange{ - name = "protective hat"; - pixel_y = 9 - }, -/obj/item/clothing/head/hardhat/orange{ - name = "protective hat"; - pixel_y = 9 - }, -/obj/structure/closet/crate/internals, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dXp" = ( -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dXq" = ( -/obj/structure/rack, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/effect/decal/cleanable/dirt, -/obj/item/weapon/tank/internals/oxygen, -/obj/item/device/radio, -/obj/item/clothing/mask/breath, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dXr" = ( -/obj/effect/decal/cleanable/blood/splatter, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dXs" = ( -/obj/item/clothing/suit/hazardvest{ - desc = "A high-visibility lifejacket complete with whistle and slot for oxygen tanks."; - name = "emergency lifejacket" - }, -/obj/item/clothing/suit/hazardvest{ - desc = "A high-visibility lifejacket complete with whistle and slot for oxygen tanks."; - name = "emergency lifejacket" - }, -/obj/item/clothing/suit/hazardvest{ - desc = "A high-visibility lifejacket complete with whistle and slot for oxygen tanks."; - name = "emergency lifejacket" - }, -/obj/item/clothing/suit/hazardvest{ - desc = "A high-visibility lifejacket complete with whistle and slot for oxygen tanks."; - name = "emergency lifejacket" - }, -/obj/item/clothing/suit/hazardvest{ - desc = "A high-visibility lifejacket complete with whistle and slot for oxygen tanks."; - name = "emergency lifejacket" - }, -/obj/item/weapon/tank/internals/emergency_oxygen/double{ - pixel_x = 3 - }, -/obj/item/weapon/tank/internals/emergency_oxygen/double{ - pixel_x = 3 - }, -/obj/item/weapon/tank/internals/emergency_oxygen/double{ - pixel_x = 3 - }, -/obj/item/weapon/tank/internals/emergency_oxygen/double{ - pixel_x = 3 - }, -/obj/item/weapon/tank/internals/emergency_oxygen/double{ - pixel_x = 3 - }, -/obj/item/clothing/mask/breath{ - pixel_x = -3; - pixel_y = -3 - }, -/obj/item/clothing/mask/breath{ - pixel_x = -3; - pixel_y = -3 - }, -/obj/item/clothing/mask/breath{ - pixel_x = -3; - pixel_y = -3 - }, -/obj/item/clothing/mask/breath{ - pixel_x = -3; - pixel_y = -3 - }, -/obj/item/clothing/mask/breath{ - pixel_x = -3; - pixel_y = -3 - }, -/obj/item/clothing/head/hardhat/orange{ - name = "protective hat"; - pixel_y = 9 - }, -/obj/item/clothing/head/hardhat/orange{ - name = "protective hat"; - pixel_y = 9 - }, -/obj/item/clothing/head/hardhat/orange{ - name = "protective hat"; - pixel_y = 9 - }, -/obj/item/clothing/head/hardhat/orange{ - name = "protective hat"; - pixel_y = 9 - }, -/obj/item/clothing/head/hardhat/orange{ - name = "protective hat"; - pixel_y = 9 - }, -/obj/structure/closet/crate/internals, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dXt" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dXu" = ( -/obj/structure/table/wood/fancy, -/obj/item/weapon/spellbook/oneuse/smoke, -/obj/item/weapon/nullrod, -/obj/item/organ/heart, -/obj/item/weapon/reagent_containers/food/drinks/bottle/holywater, -/turf/open/floor/plasteel/grimy, -/area/chapel/office) -"dXv" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/grimy, -/area/chapel/office) -"dXw" = ( -/obj/structure/chair/wood/normal{ - tag = "icon-wooden_chair (EAST)"; - icon_state = "wooden_chair"; - dir = 4 - }, -/obj/machinery/light/small, -/obj/machinery/newscaster{ - pixel_y = -32 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/chapel/main) -"dXx" = ( -/obj/structure/chair/wood/normal{ - tag = "icon-wooden_chair (WEST)"; - icon_state = "wooden_chair"; - dir = 8 - }, -/obj/machinery/light/small, -/obj/machinery/newscaster{ - pixel_y = 32 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/chapel/office) -"dXy" = ( -/obj/machinery/door/morgue{ - name = "Confession Booth"; - req_access_txt = "27" - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/chapel/office) -"dXz" = ( -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/chapel/office) -"dXA" = ( -/obj/machinery/light{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHEAST)"; - icon_state = "intact"; - dir = 5 - }, -/turf/open/floor/plasteel/black, -/area/chapel/office) -"dXB" = ( -/obj/machinery/airalarm{ - pixel_y = 22 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/chapel/office) -"dXC" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/black, -/area/chapel/office) -"dXD" = ( -/obj/machinery/firealarm{ - pixel_y = 24 - }, -/obj/machinery/light_switch{ - pixel_x = 26; - pixel_y = 26 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/chapel/office) -"dXE" = ( -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Chapel Maintenance"; - req_access_txt = "27" - }, -/turf/open/floor/plasteel/warning/side, -/area/chapel/office) -"dXF" = ( -/obj/machinery/light/small{ - dir = 4 - }, -/turf/open/floor/plasteel/bot, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"dXG" = ( -/obj/structure/filingcabinet/security, -/obj/machinery/firealarm{ - dir = 8; - pixel_x = -24; - pixel_y = 0 - }, -/obj/machinery/light_switch{ - pixel_x = -26; - pixel_y = 26 - }, -/obj/machinery/camera{ - c_tag = "Security - Departures Port"; - dir = 2; - name = "security camera" - }, -/turf/open/floor/plasteel/red/side{ - dir = 9 - }, -/area/security/checkpoint2) -"dXH" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/red/side{ - dir = 1 - }, -/area/security/checkpoint2) -"dXI" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/paper_bin, -/obj/item/weapon/pen, -/turf/open/floor/plasteel/red/side{ - dir = 5 - }, -/area/security/checkpoint2) -"dXJ" = ( -/obj/structure/table/reinforced, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/item/weapon/folder/red, -/obj/item/weapon/pen, -/turf/open/floor/plasteel/red, -/area/security/checkpoint2) -"dXK" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/storage/fancy/donut_box, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/red/side{ - dir = 9 - }, -/area/security/checkpoint2) -"dXL" = ( -/obj/structure/closet/wardrobe/red, -/turf/open/floor/plasteel/red/side{ - dir = 5 - }, -/area/security/checkpoint2) -"dXM" = ( -/obj/structure/chair, -/turf/open/floor/plasteel/red/side{ - dir = 9 - }, -/area/security/checkpoint2) -"dXN" = ( -/obj/structure/chair, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/red/side{ - dir = 1 - }, -/area/security/checkpoint2) -"dXO" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/red/side{ - dir = 1 - }, -/area/security/checkpoint2) -"dXP" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/red/side{ - dir = 1 - }, -/area/security/checkpoint2) -"dXQ" = ( -/turf/open/floor/plasteel/red/side{ - dir = 5 - }, -/area/security/checkpoint2) -"dXR" = ( -/obj/machinery/door/airlock/external{ - name = "External Docking Port"; - req_access_txt = "63" - }, -/turf/open/floor/plasteel/warning/side, -/area/security/checkpoint2) -"dXS" = ( -/obj/structure/fans/tiny, -/turf/open/floor/plasteel/delivery, -/area/security/checkpoint2) -"dXT" = ( -/obj/machinery/door/airlock/shuttle{ - name = "Emergency Shuttle Airlock"; - req_access_txt = "2" - }, -/turf/open/floor/plasteel/warnwhite/side, -/area/shuttle/escape) -"dXU" = ( -/turf/open/floor/plasteel/shuttle/red, -/area/shuttle/escape) -"dXV" = ( -/obj/structure/chair, -/turf/open/floor/plasteel/shuttle/red, -/area/shuttle/escape) -"dXW" = ( -/obj/structure/table/reinforced, -/obj/machinery/recharger, -/turf/open/floor/plasteel/shuttle/red, -/area/shuttle/escape) -"dXX" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1 - }, -/obj/machinery/button/flasher{ - id = "shuttleflash"; - pixel_x = -26; - pixel_y = 24 - }, -/turf/open/floor/plasteel/red/corner{ - dir = 1 - }, -/area/shuttle/escape) -"dXY" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 4 - }, -/area/shuttle/escape) -"dXZ" = ( -/obj/structure/table, -/obj/item/weapon/clipboard, -/obj/item/toy/figure/ninja, -/turf/open/floor/plasteel/bot, -/area/shuttle/escape) -"dYa" = ( -/obj/structure/chair, -/turf/open/floor/plasteel/bot, -/area/shuttle/escape) -"dYb" = ( -/obj/structure/chair, -/obj/machinery/status_display{ - pixel_y = 32 - }, -/turf/open/floor/plasteel/bot, -/area/shuttle/escape) -"dYc" = ( -/obj/structure/lattice, -/obj/structure/grille{ - density = 0; - icon_state = "brokengrille" - }, -/turf/open/space, -/area/space) -"dYd" = ( -/obj/structure/table/reinforced, -/obj/item/stack/sheet/metal{ - amount = 30 - }, -/obj/item/stack/sheet/glass{ - amount = 50 - }, -/obj/item/weapon/crowbar/red, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dYe" = ( -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning{ - dir = 9 - }, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dYf" = ( -/obj/structure/cable/white{ - tag = "icon-2-4"; - icon_state = "2-4" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dYg" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/warning{ - dir = 5 - }, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dYh" = ( -/obj/structure/cable/white, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/turf/open/floor/plasteel/delivery, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dYi" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/warning{ - dir = 9 - }, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dYj" = ( -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dYk" = ( -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dYl" = ( -/obj/structure/table/reinforced, -/obj/structure/extinguisher_cabinet{ - pixel_x = 26 - }, -/obj/item/weapon/storage/toolbox/mechanical, -/obj/item/device/flashlight, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dYm" = ( -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = -26 - }, -/turf/open/floor/plasteel/black, -/area/chapel/office) -"dYn" = ( -/obj/machinery/holopad, -/turf/open/floor/plasteel/grimy, -/area/chapel/office) -"dYo" = ( -/obj/structure/chair/office/dark, -/turf/open/floor/plasteel/grimy, -/area/chapel/office) -"dYp" = ( -/obj/structure/chair/office/dark, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/grimy, -/area/chapel/office) -"dYq" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/obj/structure/sign/nosmoking_2{ - pixel_x = 32 - }, -/turf/open/floor/plasteel/grimy, -/area/chapel/office) -"dYr" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/external{ - name = "External Airlock"; - req_access_txt = "13" - }, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"dYs" = ( -/obj/structure/table/reinforced, -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/obj/machinery/power/apc{ - dir = 8; - name = "Departures Checkpoint APC"; - pixel_x = -26; - pixel_y = 3 - }, -/obj/item/weapon/crowbar, -/obj/item/weapon/wrench, -/obj/item/device/radio, -/turf/open/floor/plasteel/red/side{ - dir = 8 - }, -/area/security/checkpoint2) -"dYt" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/neutral, -/area/security/checkpoint2) -"dYu" = ( -/obj/machinery/holopad, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/turf/open/floor/plasteel/bot, -/area/security/checkpoint2) -"dYv" = ( -/obj/structure/chair/office/dark{ - dir = 1 - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/turf/open/floor/plasteel/neutral, -/area/security/checkpoint2) -"dYw" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/turf/open/floor/plasteel/neutral, -/area/security/checkpoint2) -"dYx" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/red/side{ - dir = 4 - }, -/area/security/checkpoint2) -"dYy" = ( -/obj/machinery/door/firedoor, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/door/airlock/glass_security{ - name = "Holding Area"; - req_access_txt = "2" - }, -/turf/open/floor/plasteel/warning/side, -/area/security/checkpoint2) -"dYz" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/red/side{ - dir = 8 - }, -/area/security/checkpoint2) -"dYA" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHWEST)"; - icon_state = "intact"; - dir = 9 - }, -/turf/open/floor/plasteel/neutral, -/area/security/checkpoint2) -"dYB" = ( -/obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/turf/open/floor/plasteel/neutral, -/area/security/checkpoint2) -"dYC" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/turf/open/floor/plasteel/neutral, -/area/security/checkpoint2) -"dYD" = ( -/obj/structure/chair{ - dir = 8 - }, -/turf/open/floor/plasteel/red/side{ - dir = 4 - }, -/area/security/checkpoint2) -"dYE" = ( -/obj/structure/cable/white{ - tag = "icon-0-2"; - icon_state = "0-2" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/checkpoint2) -"dYF" = ( -/obj/structure/chair{ - dir = 4 - }, -/turf/open/floor/plasteel/shuttle/red, -/area/shuttle/escape) -"dYG" = ( -/turf/open/floor/plasteel/red/corner{ - dir = 1 - }, -/area/shuttle/escape) -"dYH" = ( -/obj/structure/extinguisher_cabinet{ - pixel_x = 26 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 4 - }, -/area/shuttle/escape) -"dYI" = ( -/turf/open/floor/plasteel, -/area/shuttle/escape) -"dYJ" = ( -/turf/open/floor/plasteel/neutral/corner, -/area/shuttle/escape) -"dYK" = ( -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = 0; - pixel_y = 58 - }, -/turf/open/floor/plasteel/neutral/side, -/area/shuttle/escape) -"dYL" = ( -/turf/open/floor/plasteel/neutral/corner{ - dir = 8 - }, -/area/shuttle/escape) -"dYM" = ( -/obj/machinery/door/airlock/external{ - name = "Emergency Recovery Airlock" - }, -/turf/open/floor/plasteel/warning/side, -/area/shuttle/escape) -"dYN" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/storage/toolbox/emergency, -/obj/item/weapon/wrench, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dYO" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/turf/open/floor/plasteel/warning{ - dir = 10 - }, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dYP" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/oil, -/turf/open/floor/plasteel/warning, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dYQ" = ( -/obj/structure/reagent_dispensers/fueltank, -/obj/machinery/light{ - dir = 4 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/warning{ - dir = 6 - }, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dYR" = ( -/obj/structure/reagent_dispensers/watertank, -/obj/machinery/light{ - dir = 8 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dYS" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dYT" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/effect/decal/cleanable/dirt, -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/turf/open/floor/plasteel/warning{ - dir = 6 - }, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dYU" = ( -/obj/structure/table/reinforced, -/obj/item/stack/sheet/rglass{ - amount = 20; - pixel_x = 2; - pixel_y = -2 - }, -/obj/item/stack/rods{ - amount = 50 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dYV" = ( -/obj/structure/table/wood, -/obj/item/device/flashlight/lamp, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = -26 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/chapel/office) -"dYW" = ( -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/turf/open/floor/plasteel/grimy, -/area/chapel/office) -"dYX" = ( -/obj/machinery/light{ - dir = 1 - }, -/obj/machinery/power/apc{ - cell_type = 5000; - dir = 1; - name = "Chapel Quarters APC"; - pixel_x = 0; - pixel_y = 25 - }, -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/turf/open/floor/plasteel/grimy, -/area/chapel/office) -"dYY" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/obj/machinery/camera{ - c_tag = "Chapel Quarters"; - dir = 2; - name = "chapel camera" - }, -/turf/open/floor/plasteel/grimy, -/area/chapel/office) -"dYZ" = ( -/obj/structure/table/wood, -/obj/item/device/camera_film{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/device/camera_film, -/obj/machinery/firealarm{ - dir = 4; - icon_state = "fire0"; - pixel_x = 24; - pixel_y = 0; - tag = "icon-fire0 (EAST)" - }, -/obj/machinery/status_display{ - pixel_x = 0; - pixel_y = 32 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/chapel/office) -"dZa" = ( -/obj/machinery/light/small{ - dir = 1 - }, -/obj/machinery/disposal/bin, -/obj/structure/disposalpipe/trunk{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/chapel/office) -"dZb" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/chapel/office) -"dZc" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/grimy, -/area/chapel/office) -"dZd" = ( -/obj/structure/table/wood, -/obj/item/device/flashlight/lamp, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/carpet, -/area/chapel/office) -"dZe" = ( -/obj/structure/table/wood, -/obj/item/weapon/folder, -/obj/item/weapon/pen/fourcolor, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/turf/open/floor/carpet, -/area/chapel/office) -"dZf" = ( -/obj/structure/table/wood, -/obj/item/weapon/storage/fancy/donut_box, -/obj/machinery/ai_status_display{ - pixel_x = 32 - }, -/turf/open/floor/carpet, -/area/chapel/office) -"dZg" = ( -/obj/structure/fans/tiny, -/obj/structure/sign/directions/engineering{ - desc = "A sign that shows there are doors here. There are doors everywhere!"; - icon_state = "doors"; - name = "WARNING: EXTERNAL AIRLOCK"; - pixel_x = 32; - tag = "icon-doors" - }, -/turf/open/floor/plasteel/bot, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"dZh" = ( -/obj/structure/table/reinforced, -/obj/machinery/recharger, -/obj/machinery/newscaster{ - pixel_y = -32 - }, -/turf/open/floor/plasteel/red/side{ - dir = 10 - }, -/area/security/checkpoint2) -"dZi" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/turf/open/floor/plasteel/red/side, -/area/security/checkpoint2) -"dZj" = ( -/obj/machinery/computer/prisoner, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/red/side{ - dir = 6 - }, -/area/security/checkpoint2) -"dZk" = ( -/obj/machinery/computer/secure_data, -/turf/open/floor/plasteel/red, -/area/security/checkpoint2) -"dZl" = ( -/obj/machinery/computer/security, -/obj/machinery/status_display{ - pixel_y = -32 - }, -/turf/open/floor/plasteel/red/side{ - dir = 10 - }, -/area/security/checkpoint2) -"dZm" = ( -/obj/structure/closet/secure_closet/security, -/obj/machinery/airalarm{ - dir = 1; - icon_state = "alarm0"; - pixel_y = -22 - }, -/obj/machinery/light, -/turf/open/floor/plasteel/red/side{ - dir = 6 - }, -/area/security/checkpoint2) -"dZn" = ( -/obj/structure/chair{ - dir = 1 - }, -/obj/machinery/light, -/obj/structure/sign/poster{ - icon_state = "poster22_legit"; - pixel_y = -32; - tag = "icon-poster22_legit" - }, -/turf/open/floor/plasteel/red/side{ - dir = 10 - }, -/area/security/checkpoint2) -"dZo" = ( -/obj/structure/chair{ - dir = 1 - }, -/turf/open/floor/plasteel/red/side, -/area/security/checkpoint2) -"dZp" = ( -/obj/structure/table, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/item/weapon/restraints/handcuffs, -/obj/item/weapon/restraints/handcuffs, -/obj/item/device/assembly/flash/handheld, -/turf/open/floor/plasteel/red/side, -/area/security/checkpoint2) -"dZq" = ( -/obj/structure/chair{ - dir = 1 - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/red/side, -/area/security/checkpoint2) -"dZr" = ( -/obj/structure/chair{ - dir = 1 - }, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/firealarm{ - dir = 1; - pixel_x = 0; - pixel_y = -26 - }, -/obj/machinery/light, -/obj/machinery/camera{ - c_tag = "Security - Departures Starboard"; - dir = 1; - name = "security camera" - }, -/turf/open/floor/plasteel/red/side{ - dir = 6 - }, -/area/security/checkpoint2) -"dZs" = ( -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/structure/cable/white, -/obj/structure/cable/white{ - tag = "icon-0-2"; - icon_state = "0-2" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/checkpoint2) -"dZt" = ( -/obj/structure/chair{ - dir = 4 - }, -/obj/machinery/status_display{ - pixel_x = -32 - }, -/turf/open/floor/plasteel/shuttle/red, -/area/shuttle/escape) -"dZu" = ( -/obj/structure/chair{ - dir = 8 - }, -/turf/open/floor/plasteel/shuttle/red, -/area/shuttle/escape) -"dZv" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/storage/lockbox/loyalty, -/turf/open/floor/plasteel/shuttle/red, -/area/shuttle/escape) -"dZw" = ( -/obj/structure/table/reinforced, -/obj/machinery/recharger, -/turf/open/floor/plasteel/red/corner{ - dir = 8 - }, -/area/shuttle/escape) -"dZx" = ( -/obj/structure/fireaxecabinet{ - pixel_x = 32 - }, -/turf/open/floor/plasteel/neutral/corner, -/area/shuttle/escape) -"dZy" = ( -/obj/machinery/door/airlock/external{ - name = "Emergency Recovery Airlock" - }, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (EAST)"; - icon_state = "plasteel_warn_side"; - dir = 4 - }, -/area/shuttle/escape) -"dZz" = ( -/turf/open/floor/plasteel/neutral/corner{ - dir = 4 - }, -/area/shuttle/escape) -"dZA" = ( -/turf/open/floor/plasteel/neutral/corner{ - dir = 1 - }, -/area/shuttle/escape) -"dZB" = ( -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/obj/machinery/power/solar{ - id = "aftport"; - name = "Aft-Port Solar Array" - }, -/turf/open/floor/plasteel/airless/solarpanel, -/area/solar/port) -"dZC" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/structure/cable/white, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Aft Port Maintenance" - }) -"dZD" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "chapelprivacy"; - name = "Chapel Privacy Shutters" - }, -/turf/open/floor/plating, -/area/chapel/office) -"dZE" = ( -/obj/structure/bed, -/obj/item/weapon/bedsheet/black, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/chapel/office) -"dZF" = ( -/turf/open/floor/plasteel/grimy, -/area/chapel/office) -"dZG" = ( -/obj/effect/landmark/start{ - name = "Chaplain" - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/plasteel/grimy, -/area/chapel/office) -"dZH" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/grimy, -/area/chapel/office) -"dZI" = ( -/obj/machinery/light_switch{ - pixel_x = 26; - pixel_y = -26 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/chapel/office) -"dZJ" = ( -/obj/machinery/door/airlock/centcom{ - name = "Chapel Quarters"; - req_access_txt = "27" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/chapel/office) -"dZK" = ( -/obj/machinery/light_switch{ - pixel_x = -26; - pixel_y = 26 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/chapel/office) -"dZL" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/chapel/office) -"dZM" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plasteel/grimy, -/area/chapel/office) -"dZN" = ( -/obj/structure/table/wood, -/obj/item/weapon/paper_bin, -/obj/item/weapon/pen, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/carpet, -/area/chapel/office) -"dZO" = ( -/obj/structure/chair/office/dark{ - dir = 1 - }, -/obj/effect/landmark/start{ - name = "Chaplain" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHWEST)"; - icon_state = "intact"; - dir = 9 - }, -/turf/open/floor/carpet, -/area/chapel/office) -"dZP" = ( -/obj/structure/table/wood, -/obj/item/weapon/storage/fancy/candle_box{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/storage/fancy/candle_box, -/obj/machinery/light{ - icon_state = "tube1"; - dir = 4 - }, -/obj/machinery/newscaster{ - pixel_x = 32 - }, -/turf/open/floor/carpet, -/area/chapel/office) -"dZQ" = ( -/obj/machinery/door/airlock/external{ - name = "External Airlock"; - req_access_txt = "13" - }, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"dZR" = ( -/turf/closed/wall/r_wall, -/area/security/checkpoint2) -"dZS" = ( -/obj/structure/cable/white, -/obj/structure/cable/white{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/checkpoint2) -"dZT" = ( -/obj/structure/cable/white{ - tag = "icon-0-8"; - icon_state = "0-8" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/checkpoint2) -"dZU" = ( -/obj/structure/cable/white, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/checkpoint2) -"dZV" = ( -/obj/structure/chair{ - dir = 1 - }, -/turf/open/floor/plasteel/shuttle/red, -/area/shuttle/escape) -"dZW" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/storage/box/zipties, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = 0; - pixel_y = -26 - }, -/turf/open/floor/plasteel/shuttle/red, -/area/shuttle/escape) -"dZX" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/paper_bin, -/obj/item/weapon/pen, -/turf/open/floor/plasteel/red/corner{ - dir = 8 - }, -/area/shuttle/escape) -"dZY" = ( -/turf/open/floor/plasteel/blue/side, -/area/shuttle/escape) -"dZZ" = ( -/obj/machinery/door/airlock/command{ - name = "Emergency Recovery Airlock"; - req_access = null; - req_access_txt = "19" - }, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (NORTH)"; - icon_state = "plasteel_warn_side"; - dir = 1 - }, -/area/shuttle/escape) -"eaa" = ( -/obj/machinery/suit_storage_unit/standard_unit, -/turf/open/floor/plasteel/delivery, -/area/shuttle/escape) -"eab" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/structure/lattice/catwalk, -/turf/open/space, -/area/solar/port) -"eac" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/structure/lattice/catwalk, -/turf/open/space, -/area/solar/port) -"ead" = ( -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/structure/lattice/catwalk, -/turf/open/space, -/area/solar/port) -"eae" = ( -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/structure/lattice/catwalk, -/turf/open/space, -/area/solar/port) -"eaf" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/structure/lattice/catwalk, -/turf/open/space, -/area/solar/port) -"eag" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/structure/lattice/catwalk, -/turf/open/space, -/area/solar/port) -"eah" = ( -/obj/structure/dresser, -/obj/structure/extinguisher_cabinet{ - pixel_x = -26 - }, -/obj/structure/sign/nanotrasen{ - pixel_y = -32 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/chapel/office) -"eai" = ( -/obj/structure/table/wood, -/obj/item/weapon/reagent_containers/food/snacks/grown/poppy/geranium{ - pixel_x = 6; - pixel_y = 6 - }, -/obj/item/weapon/reagent_containers/food/snacks/grown/poppy/lily, -/turf/open/floor/plasteel/grimy, -/area/chapel/office) -"eaj" = ( -/obj/structure/table/wood, -/obj/item/weapon/storage/fancy/candle_box{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/storage/fancy/candle_box, -/turf/open/floor/plasteel/grimy, -/area/chapel/office) -"eak" = ( -/obj/structure/table/wood, -/obj/item/weapon/folder/red, -/obj/item/weapon/pen, -/turf/open/floor/plasteel/grimy, -/area/chapel/office) -"eal" = ( -/obj/structure/closet/wardrobe/chaplain_black, -/obj/machinery/airalarm{ - dir = 1; - icon_state = "alarm0"; - pixel_y = -22 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/chapel/office) -"eam" = ( -/obj/structure/table/wood, -/obj/machinery/firealarm{ - dir = 8; - pixel_x = -24 - }, -/obj/item/weapon/clipboard, -/obj/item/toy/figure/chaplain, -/obj/structure/sign/poster{ - icon_state = "poster6_legit"; - pixel_x = 0; - pixel_y = -32; - tag = "icon-poster6_legit" - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/chapel/office) -"ean" = ( -/obj/machinery/photocopier, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/chapel/office) -"eao" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/turf/open/floor/plasteel/grimy, -/area/chapel/office) -"eap" = ( -/turf/open/floor/carpet, -/area/chapel/office) -"eaq" = ( -/obj/structure/table/wood, -/obj/item/weapon/storage/crayons, -/obj/item/weapon/storage/crayons, -/obj/machinery/requests_console{ - department = "Chapel Office"; - departmentType = 0; - name = "Chapel RC"; - pixel_x = 0; - pixel_y = -32 - }, -/obj/machinery/status_display{ - pixel_x = 32 - }, -/obj/machinery/camera{ - c_tag = "Chapel Office"; - dir = 1; - name = "chapel camera" - }, -/turf/open/floor/carpet, -/area/chapel/office) -"ear" = ( -/obj/structure/cable, -/obj/machinery/power/solar{ - id = "aftport"; - name = "Aft-Port Solar Array" - }, -/turf/open/floor/plasteel/airless/solarpanel, -/area/solar/port) -"eas" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/chapel/office) -"eat" = ( -/obj/structure/table/reinforced, -/obj/machinery/recharger, -/turf/open/floor/plasteel/vault{ - dir = 4 - }, -/area/shuttle/escape) -"eau" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/turf/open/floor/plasteel/vault{ - tag = "icon-vault (NORTHEAST)"; - icon_state = "vault"; - dir = 5 - }, -/area/shuttle/escape) -"eav" = ( -/turf/open/floor/plasteel/vault{ - tag = "icon-vault (NORTHEAST)"; - icon_state = "vault"; - dir = 5 - }, -/area/shuttle/escape) -"eaw" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/storage/fancy/donut_box, -/turf/open/floor/plasteel/vault{ - dir = 4 - }, -/area/shuttle/escape) -"eax" = ( -/obj/machinery/computer/security, -/turf/open/floor/plasteel/darkred/side{ - tag = "icon-darkred (NORTHWEST)"; - icon_state = "darkred"; - dir = 9 - }, -/area/shuttle/escape) -"eay" = ( -/obj/structure/chair/office/dark{ - dir = 8 - }, -/turf/open/floor/plasteel/vault{ - tag = "icon-vault (NORTHEAST)"; - icon_state = "vault"; - dir = 5 - }, -/area/shuttle/escape) -"eaz" = ( -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = 26; - pixel_y = 58 - }, -/turf/open/floor/plasteel/vault{ - tag = "icon-vault (NORTHEAST)"; - icon_state = "vault"; - dir = 5 - }, -/area/shuttle/escape) -"eaA" = ( -/obj/structure/chair/office/dark{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - tag = "icon-vault (NORTHEAST)"; - icon_state = "vault"; - dir = 5 - }, -/area/shuttle/escape) -"eaB" = ( -/obj/machinery/computer/station_alert, -/turf/open/floor/plasteel/darkyellow/side{ - tag = "icon-darkyellow (NORTHEAST)"; - icon_state = "darkyellow"; - dir = 5 - }, -/area/shuttle/escape) -"eaC" = ( -/obj/item/stack/cable_coil, -/obj/structure/lattice/catwalk, -/turf/open/space, -/area/solar/port) -"eaD" = ( -/obj/machinery/computer/secure_data, -/turf/open/floor/plasteel/darkred/side{ - tag = "icon-darkred (SOUTHWEST)"; - icon_state = "darkred"; - dir = 10 - }, -/area/shuttle/escape) -"eaE" = ( -/obj/structure/chair/office/dark{ - dir = 8 - }, -/turf/open/floor/plasteel/vault, -/area/shuttle/escape) -"eaF" = ( -/obj/structure/chair/office/dark, -/turf/open/floor/plasteel/vault, -/area/shuttle/escape) -"eaG" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/storage/firstaid/regular, -/turf/open/floor/plasteel/vault, -/area/shuttle/escape) -"eaH" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/folder/blue, -/obj/item/weapon/pen, -/turf/open/floor/plasteel/vault, -/area/shuttle/escape) -"eaI" = ( -/obj/structure/chair/office/dark{ - dir = 4 - }, -/turf/open/floor/plasteel/vault, -/area/shuttle/escape) -"eaJ" = ( -/obj/machinery/computer/atmos_alert, -/turf/open/floor/plasteel/darkyellow/side{ - tag = "icon-darkyellow (SOUTHEAST)"; - icon_state = "darkyellow"; - dir = 6 - }, -/area/shuttle/escape) -"eaK" = ( -/obj/structure/lattice/catwalk, -/obj/effect/landmark{ - name = "xeno_spawn"; - pixel_x = -1 - }, -/turf/open/space, -/area/solar/port) -"eaL" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/paper_bin, -/obj/item/weapon/pen, -/turf/open/floor/plasteel/vault{ - dir = 4 - }, -/area/shuttle/escape) -"eaM" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/folder/red, -/obj/item/weapon/restraints/handcuffs, -/obj/item/device/assembly/flash/handheld, -/turf/open/floor/plasteel/vault, -/area/shuttle/escape) -"eaN" = ( -/obj/machinery/computer/crew, -/turf/open/floor/plasteel/darkblue/side, -/area/shuttle/escape) -"eaO" = ( -/obj/machinery/computer/med_data, -/turf/open/floor/plasteel/darkblue/side{ - dir = 6 - }, -/area/shuttle/escape) -"eaP" = ( -/obj/machinery/computer/emergency_shuttle, -/turf/open/floor/plasteel/darkblue/side{ - dir = 10 - }, -/area/shuttle/escape) -"eaQ" = ( -/obj/machinery/computer/communications, -/turf/open/floor/plasteel/darkblue/side, -/area/shuttle/escape) -"eaR" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/storage/toolbox/mechanical, -/turf/open/floor/plasteel/vault, -/area/shuttle/escape) -"eaS" = ( -/obj/structure/table/reinforced, -/obj/machinery/cell_charger, -/obj/item/weapon/stock_parts/cell/high, -/turf/open/floor/plasteel/vault{ - dir = 4 - }, -/area/shuttle/escape) -"eaT" = ( -/obj/docking_port/stationary{ - dheight = 9; - dir = 2; - dwidth = 5; - height = 24; - id = "syndicate_sw"; - name = "southwest of station"; - turf_type = /turf/open/space; - width = 18 - }, -/turf/open/space, -/area/space) -"eaU" = ( -/obj/docking_port/stationary{ - dheight = 9; - dir = 2; - dwidth = 5; - height = 24; - id = "syndicate_se"; - name = "southeast of station"; - turf_type = /turf/open/space; - width = 18 - }, -/turf/open/space, -/area/space) -"eaV" = ( -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/obj/structure/lattice/catwalk, -/turf/open/space, -/area/solar/port) -"eaW" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/structure/lattice/catwalk, -/turf/open/space, -/area/solar/port) -"eaX" = ( -/obj/structure/cable, -/obj/machinery/power/tracker, -/turf/open/floor/plasteel/airless/solarpanel, -/area/solar/port) -"eaY" = ( -/obj/docking_port/stationary{ - dheight = 9; - dir = 2; - dwidth = 5; - height = 24; - id = "syndicate_s"; - name = "south of station"; - turf_type = /turf/open/space; - width = 18 - }, -/turf/open/space, -/area/space) -"eaZ" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass_virology{ - name = "Virology Containment Cell 2"; - req_access_txt = "39" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/warning/side{ - tag = "icon-plasteel_warn_side (WEST)"; - icon_state = "plasteel_warn_side"; - dir = 8 - }, -/area/medical/virology) - -(1,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(2,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(3,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(4,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(5,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(6,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(7,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(8,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(9,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(10,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(11,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(12,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aad -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(13,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(14,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(15,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(16,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(17,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(18,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(19,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -agg -agg -agg -agg -aaf -agg -agg -agg -aaf -agg -agg -agg -aaf -agg -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(20,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -agg -aaa -biN -blN -biN -blN -biN -blN -biN -blN -biN -blN -biN -aaa -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(21,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -bgO -bHj -bww -bLo -bww -bOZ -bRe -bTx -bww -bww -bww -bHt -bnP -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(22,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -agg -agg -agg -agg -agg -aaf -agg -agg -aaf -agg -agg -agg -agg -bgP -bHk -bJk -biR -bNj -bPa -bRf -bTy -bnN -biR -bkt -bHk -bnO -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(23,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaa -blN -biN -biN -blN -biN -biN -blN -biN -biN -blN -biN -blN -bko -bHk -bnQ -bLp -bLp -bLp -bRg -bTz -bLp -bLp -bNB -bHk -bnP -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(24,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -adm -adn -adn -adn -adn -adn -adn -adn -adn -aes -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -agg -bgP -blO -bnM -bnM -bnM -bnM -btv -buR -bww -bww -bww -bww -bww -bww -bHl -bnP -bLp -bNk -bPb -bRh -bTA -bVC -bLp -bgO -bHk -bnO -agg -agg -agg -agg -agg -agg -aaf -agg -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(25,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -adm -adn -adn -adn -adn -adn -adn -aiN -ajI -aiN -alK -amN -anW -aoz -aoC -apA -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -agg -bgO -blP -bnN -bpI -biR -biR -biR -bpI -biR -biR -bpI -biR -biR -bpI -bHm -aaa -bLp -bNl -bPc -bRi -bTB -bVD -bLp -bgO -bHk -ccG -biN -blN -biN -biN -blN -biN -blN -aaa -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(26,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -adn -afv -afK -afK -afK -aho -adn -agG -aeh -aeG -aeG -amO -aeG -aoA -aoC -apB -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -agg -bgO -blP -bnO -aaf -aaf -aaf -bpK -bpK -bpK -bpK -bpK -bpK -bpK -bpK -bpK -bpK -bLp -bNm -bPd -bRj -bTC -bVE -bLp -bNB -bHu -bww -bww -cfL -bnM -ciQ -bnM -bnM -cmZ -bnP -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(27,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -adn -aeG -aeG -aeG -aeG -aeG -aia -agG -aeh -akK -alL -amP -anX -aoB -aoC -apC -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -bgP -blP -bnP -aaf -aaf -bpK -bpK -bpK -bwx -bpK -bpK -bpK -bso -bpK -bwx -bpK -bLp -bNn -bPe -bRk -bTC -bVF -bLp -aaa -bpI -biR -biR -bpI -biR -biR -blV -clD -blP -bnO -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(28,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -adm -adn -adn -adn -aes -aaa -aaa -adn -aeG -aeG -aeG -aeG -aeG -adn -aiO -aeh -akL -age -amQ -adn -adn -adn -aeI -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -agg -bgO -blP -bnP -aaa -bpK -bpK -bpK -buS -bwy -bpK -bAc -bpK -bwy -bwG -bHn -bpK -bLp -bNo -bPf -bRl -bTD -bVG -bLp -bYV -bYV -ccH -cep -bYV -bYV -aaf -aaf -bgP -blP -bnP -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(29,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -adn -adA -adT -aeh -adn -aeE -aaa -adn -afw -afL -afw -agG -ahp -adn -aiP -aeh -akL -age -amR -adn -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -agg -agg -agg -bgP -blP -bnQ -aaf -bpK -bpK -btw -buT -bwz -byo -bAd -byt -byq -bFv -byq -btw -bLp -bNp -bLp -bRm -bTE -bLp -bLp -bYW -caV -ccI -bYX -cfM -bYV -bYV -aaf -bgO -blP -bnO -agg -agg -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(30,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -ado -adB -adU -aeh -adn -adn -adn -adn -adn -adn -adn -agH -agb -adn -adn -adn -akM -agb -adn -adn -adn -aes -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -agg -aaa -biN -bko -blP -bnP -aaa -bpK -bso -btx -buU -bwA -byp -bAe -byp -byp -bFw -bHo -bJl -bLq -bNq -bPg -bRn -bTF -bNq -bNp -bYX -caW -ccJ -ceq -cfN -chj -bYV -bYV -bgO -blP -bJr -blN -aaa -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(31,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -ado -adC -adV -aeh -aet -aeF -aeT -aeT -aeT -aeT -agb -aeG -aeG -aeG -aeG -aeG -akL -age -aeh -agb -aoC -apA -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -agg -bgO -biO -bkp -blQ -bnR -bpJ -bpJ -bpJ -bty -buV -bwB -byq -byq -bBM -byq -byq -bHp -bJm -bLp -bNr -bPh -bRo -bTG -bVH -bLp -bYY -caX -ccK -cer -cfO -chk -ciR -ckt -clE -cna -coF -cqg -bnO -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(32,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -ado -adD -adW -aeh -aeu -aeG -adV -adV -adV -aeG -agc -aeG -adV -adV -adV -adV -akL -age -aeh -anY -aoC -apB -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -agg -bgP -biP -bkq -blR -bnP -bpK -bpK -bsp -btz -buW -bwB -bpK -bAf -bpK -bpK -bFx -bHp -bJn -bLr -bNs -bPi -bRp -bTH -bVI -bLr -bYZ -caY -ccL -ces -caX -caW -ciS -bYV -bgO -biP -coG -blR -bnP -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(33,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -ado -adE -adV -aeh -adn -aeH -aeU -aeU -aeU -aeU -agb -aeG -aeG -aeG -aeG -aeG -akL -age -aeh -agb -aoC -apC -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -bgO -biP -bkr -blS -bnS -bpK -bpK -bsq -btA -buX -bwC -byr -bAg -bBN -bpK -bFy -bHq -bAd -bLs -bNt -bPj -bRq -bTI -bVJ -bXn -bZa -caZ -ccM -cet -cfP -chl -ciT -cep -clF -biP -bkr -blR -bnO -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aad -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(34,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -ado -adF -adX -aeh -adn -adn -adn -afk -adn -adn -adn -agI -agb -adn -adn -adn -akM -agb -adn -adn -adn -aev -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -agg -bgP -biP -bkq -blR -bnP -bpK -bpK -bsr -btz -buY -bwB -bpK -bAh -bpK -bpK -bFz -bHr -bJo -bLt -bNu -bPk -bRr -bTJ -bVK -bLt -bZb -cba -ccN -ceu -caX -caW -ciU -bYV -bgO -biP -coG -blR -bnP -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(35,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -adn -adG -adY -aeh -adn -aeI -aaa -aaa -aaa -adn -agd -aeG -ahq -adn -aiQ -aeh -akL -age -amS -adn -aoD -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -agg -bgO -biQ -bks -blT -bnT -bpL -bpL -bpL -btB -buZ -bwD -btB -btB -bBO -btB -bFA -bHp -bJp -bLu -bNv -bPl -bRs -bTK -bVL -bLp -bZc -cbb -ccO -cev -cfQ -chm -ciV -cku -clG -cnb -coH -cqh -bnO -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(36,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -adp -adn -adn -adn -aev -aaa -aaa -aaa -aaa -afM -age -aeG -ahq -adn -aiR -aeh -akL -age -amT -adn -adn -adn -aeE -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -agg -aaa -biR -bkt -blP -bnP -aaa -bpK -bso -btx -bva -bwE -bys -bAi -bys -bys -bFB -bHs -bJq -bLv -bNq -bPm -bRt -bTL -bVM -bLp -bZd -caW -ccJ -cew -cfR -chn -bYV -bYV -bgO -blP -bJk -blV -aaa -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(37,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -afN -agf -aeG -ahr -aet -aiS -aeh -akN -alM -amP -aeG -aoE -aoC -apA -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -agg -agg -agg -bgP -blP -bnQ -aaf -bpK -bpK -btw -bvb -bwF -byt -bAd -byo -byq -bFC -byq -btw -bLp -bNp -bPn -bRu -bTE -bLp -bLp -bYW -cbc -ccP -bYX -cfS -bYV -bYV -aaf -bgO -blP -bnO -agg -agg -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(38,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -adp -adn -adn -adn -adn -aiT -aeh -aeG -aeG -amU -aeG -aoF -aoC -apB -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -agg -bgO -blP -bnP -aaa -bpK -bpK -bpK -bvc -bwG -bpK -bAj -bpK -bDD -bFD -bwy -bpK -bLp -bNw -bPo -bRt -bTM -bNw -bLp -bYV -bYV -ccQ -cep -bYV -bYV -aaf -aaf -bgP -blP -bnP -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(39,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -ahs -adn -aiU -aeh -akO -alN -amV -aeG -aoE -aoC -apC -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -bgO -blP -bnP -aaf -aaf -bpK -bpK -bpK -bwx -bpK -bpK -bpK -bso -bpK -bwx -bpK -bLp -bNx -bPp -bRv -bTB -bVN -bLp -aaa -bpM -biN -biN -bpM -biN -biN -blN -clH -blP -bnO -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(40,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -adp -adn -adn -adn -adn -adn -adn -adn -adn -aev -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -agg -bgO -blP -bnO -aaf -aaf -aaf -bpK -bpK -bpK -bpK -bpK -bpK -bpK -bpK -bpK -bpK -bLp -bNy -bPp -bRj -bTC -bVO -bLp -bNB -bHj -bww -bww -cfL -bnM -ciW -bnM -bnM -cnc -bnP -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(41,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -agg -bgO -blP -bnU -bpM -biN -biN -biN -bpM -biN -biN -bpM -biN -biN -bpM -biN -aaa -bLp -bNz -bPq -bRw -bTC -bVP -bLp -bgO -bHk -ccR -biR -blV -biR -biR -blV -biR -biR -aaa -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(42,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -agg -bgP -blU -bnM -bnM -bnM -bnM -btC -buR -bww -bww -bww -bBP -bww -bww -bHt -bnP -bLp -bNw -bPr -bRt -bTL -bVQ -bLp -bgO -bHk -bnO -agg -agg -aaf -agg -agg -agg -aaf -agg -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(43,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -agg -aaa -blV -biR -biR -blV -biR -biR -blV -biR -biR -blV -biR -blV -bkt -bHk -bnQ -bLp -bLp -bPn -bRx -bTE -bLp -bLp -bNB -bHk -bnP -agg -aaa -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(44,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -agg -agg -agg -agg -aaf -agg -agg -agg -aaf -agg -agg -agg -agg -agg -bgP -bHk -bJr -biN -bNA -bPs -bRy -bTN -bnU -biN -bko -bHk -bnO -agg -aaa -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(45,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaa -aaf -agg -bgO -bHu -bJs -bLw -bww -bPt -bRz -bTO -bww -bww -bww -bHl -ccS -aaf -aaf -aaf -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -dLn -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(46,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaa -aaf -aaf -aaa -bkt -bJt -bJk -bNj -bPu -bRA -blR -bnN -biR -blV -biR -aaa -agg -aaa -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaH -aaa -aaH -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(47,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaa -aaf -agg -agg -bgP -bJu -bnO -bNB -bPu -bRB -blR -bnQ -agg -agg -agg -aaf -agg -aaf -aaf -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -eaT -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(48,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -agg -aaa -aaf -aaa -aaf -aaa -bJv -aaa -bNB -bPu -bRC -blR -bnQ -aaa -aaf -aaa -aaa -aaa -aaf -aaa -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaf -aaa -aaf -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(49,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -agg -aaf -agg -aaa -aaf -aaa -bJv -aaa -bNB -bPu -bRB -blR -bnQ -aaa -aaf -aaa -aaa -aaa -agg -aaf -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaf -dBa -dAZ -dBa -aaf -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(50,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -agg -aaa -agg -aaf -aaf -aaf -bJv -aaf -bNC -bPu -bRD -bTP -aGe -aaf -aaf -aaf -aaf -aaf -agg -aaa -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaf -dAZ -dBa -dFD -dBa -dAZ -aaf -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(51,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaa -agg -aaa -aaf -aaa -bJv -aaa -bgP -bPv -bRE -bTQ -bnO -aaa -aaf -aaa -aaa -aaa -agg -aaf -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaf -dBa -dBa -dEw -dFE -dHn -dBa -dBa -aaf -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(52,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -agg -aaf -agg -aaa -aaf -aaa -bJv -aaa -bND -biR -bRF -biR -bVR -aaa -aaf -aaa -aaa -aaa -aaf -aaa -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaH -aaf -aaf -dAZ -dAZ -dDG -dEx -dFF -dHo -dHV -dAZ -dAZ -aaf -aaf -aaH -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(53,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aad -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -agg -aaa -agg -aaf -aaf -aaf -bJv -aaf -bNE -aaf -bRG -aaf -bNE -aaf -aaf -aaf -aaf -aaf -agg -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -dBa -dCk -dDH -dDH -dFG -dHp -dFF -dII -dBa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(54,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -agg -aaa -aaf -aaa -aaf -aaa -bJv -aaa -bNF -aaa -bRG -aaa -bVS -aaa -aaf -aaa -aaa -aaa -agg -aaf -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaH -aaf -aaf -dAZ -dAZ -dDI -dEy -dDH -dHq -dHW -dAZ -dAZ -aaf -aaf -aaH -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(55,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaa -agg -aaa -aaf -aaa -bJv -aaa -aaf -bPw -bRG -bTR -aaf -aaa -aaf -aaa -aaa -aaa -agg -aaa -agg -aaa -aaa -aaa -aaa -aad -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaf -dBa -dBa -dEz -dFF -dHr -dBa -dBa -aaf -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(56,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -agg -aaf -agg -aaa -aaf -aaa -bJv -aaa -aaf -aaa -bRH -aaa -aaf -aaa -aaf -aaa -aaa -aaa -agg -aaf -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaf -dAZ -dBa -dFH -dBa -dAZ -aaf -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(57,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -agg -aaa -agg -aaf -aaf -aaf -bJw -bLx -bNG -aaf -bRI -aaf -aaf -aaf -aaf -aaf -aaf -aaf -aaf -aaa -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaf -dBa -dFI -dBa -aaf -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(58,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -agg -aaa -aaf -aaa -aaf -aaa -aaf -aaa -bJv -aaa -bRJ -aaa -aaf -aaa -aaf -aaa -aaa -aaa -agg -aaf -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaf -aaa -aaf -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(59,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -agg -aaf -agg -aaa -aaf -aaa -aaf -aaa -bJv -aaa -bRJ -aaa -aaf -aaa -aaf -aaa -aaa -aaa -agg -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(60,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaa -agg -aaf -aaf -aaf -aaf -aaf -bJv -aaf -bRJ -aaf -aaf -aaf -aaf -aaf -aaf -aaf -agg -aaa -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaH -aaa -aaH -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(61,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -agg -aaa -aaf -aaa -aaa -aaa -aaf -aaa -bJv -aaa -bRJ -aaa -aaf -aaa -aaf -aaa -aaa -aaa -agg -aaf -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aad -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(62,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -agg -aaf -agg -aaa -aaa -aaa -aaf -aaa -bJv -aaa -bRJ -aaa -aaf -aaa -aaf -aaa -aaa -aaa -aaf -aaa -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(63,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -agg -aaa -agg -aaf -aaf -aaf -aaf -aaf -bJv -aaf -bRI -aaf -aaf -aaf -aaf -aaf -aaf -aaf -agg -aaf -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aad -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(64,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aad -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -agg -aaf -agg -aaa -aaa -aaa -aaf -aaa -bJv -aaa -bRJ -aaa -aaf -aaa -aaf -aaa -aaa -aaa -agg -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(65,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -agg -aaa -aaf -aaa -aaa -aaa -aaf -aaa -bJv -aaa -bRJ -aaa -aaf -aaa -aaf -aaa -aaa -aaa -agg -aaa -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(66,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aae -aaf -aae -aaf -aae -aae -aae -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -agg -aaf -agg -aaf -aaf -aaf -aaf -aaf -bJv -aaf -bRJ -aaf -aaf -aaf -aaf -aaf -aaf -aaf -agg -aaf -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(67,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aae -aae -aaf -aae -aae -aaa -aaf -aaa -aaf -aaa -aae -aae -aaf -aae -aae -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaa -aaf -aaa -aaa -aaa -aaf -aaa -bJv -aaa -bRJ -aaa -aaf -aaa -aaf -aaa -aaa -aaa -agg -aaa -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(68,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aae -aaa -aaf -aaa -aaf -aaa -alO -amW -anZ -aaa -aaf -aaa -aaf -aaa -aae -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -agg -agg -aaf -agg -agg -agg -aaf -agg -agg -agg -aaf -agg -aaf -aaf -bJv -aaa -bRJ -aaa -aaf -aaa -aaf -aaa -aaa -aaa -agg -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(69,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aae -aaa -alO -amW -anZ -aaa -alO -amW -anZ -aaa -alO -amW -anZ -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -agg -aaa -aaa -aaf -aaa -aaf -aaa -aaf -aaa -aaf -aaa -aaf -aaa -aaa -bJv -aaf -bRI -aaf -aaf -aaf -aaf -aaf -aaf -aaf -aaf -aaf -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaH -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(70,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaa -alO -amW -anZ -aaa -alO -amW -anZ -aaa -alO -amW -anZ -aaa -aae -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -agg -aaf -agg -agg -aaf -agg -agg -agg -agg -aaf -agg -agg -agg -aaf -bJv -aaa -bRJ -aaa -aaf -aaa -aaf -aaa -aaf -agg -agg -agg -agg -aaf -agg -agg -aaf -agg -agg -agg -agg -agg -agg -aaf -aaf -aaf -aaf -aaH -aaf -aaf -agg -agg -agg -aaf -agg -agg -agg -aaf -agg -agg -aaf -agg -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(71,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aae -aaf -alO -amW -anZ -aaf -alO -amW -anZ -aaf -alO -amW -anZ -aaf -aae -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -agg -aaa -agg -aaf -aaf -aaf -aaf -aaf -aaf -aaf -aaf -aaf -agg -aaa -bJv -aaa -bRJ -aaa -aaf -aaa -aaf -aaa -aaf -aaa -aaa -aaf -aaa -aaa -aaa -aaf -aaa -aaa -aaa -aaf -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaH -aaa -aaf -aaa -aaf -aaa -aaf -aaa -aaf -aaa -aaf -aaa -aaf -aaf -aaa -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(72,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aae -aaa -alO -amW -anZ -aaa -apD -amW -anZ -aaa -alO -amW -anZ -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaa -agg -aaf -btD -btD -btD -btD -btD -btD -btD -aaf -aaf -aaf -bJv -aaf -bRJ -aaf -aaf -aaf -agg -agg -agg -aaf -agg -agg -agg -aaf -agg -agg -agg -aaf -agg -agg -agg -aaf -agg -agg -agg -aaf -aaf -aaH -aaf -agg -agg -agg -aaf -agg -agg -agg -aaf -agg -aaf -agg -agg -aaf -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(73,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aae -aaf -aae -aae -aaa -alO -amW -anZ -aaa -aaf -amX -aaf -aaa -alO -amW -anZ -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -agg -aaf -agg -aaf -btD -bwH -bwH -bAk -bwH -bwH -btD -aaf -agg -aaa -bJv -aaa -bRJ -aaa -aaa -aaf -aaa -aaf -aaa -aaf -aaa -aaf -aaa -aaf -aaa -aaf -aaa -aaf -aaa -aaf -aaa -aaf -aaa -aaf -aaa -aaf -aaa -aaH -aaa -aaf -aaa -aaf -aaf -aaf -aaa -aaf -aaf -aaf -aaa -aaf -aaf -aaf -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(74,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aae -aaa -aaf -aaf -aaf -aaf -amX -aaf -aaf -aaf -apE -aaf -aaf -aaf -amX -aaf -aaf -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -agg -aaa -aaf -aaf -btD -bwH -byu -byv -byw -bwH -btD -aaf -agg -aaa -bJv -aaa -bRJ -aaa -aaf -bVT -bZe -bZe -bZe -bVT -bZe -bZe -bZe -bVT -bZe -bZe -bZe -bVT -bZe -bZe -bZe -bVT -bZe -bZe -bZe -bVT -aaf -aaH -bWg -bWg -cJc -bWg -bWg -bWg -cJc -bWg -bWg -bWg -cJc -bWg -bWg -aaf -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(75,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aae -aaf -aiV -ajJ -ajJ -ajJ -ajJ -ajJ -aoG -apE -aqX -ajJ -ate -auu -apE -awP -axK -axK -axK -axK -ate -apE -apE -aaf -aaH -aaH -aaH -aaH -aaH -aaf -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -agg -aaf -agg -aaf -btD -bwH -byv -bAl -bBQ -bwH -btD -aaf -aaf -aaf -bJv -aaf -bRI -aaf -aaf -bVT -bVT -bVT -bVT -bVT -bVT -bVT -bVT -bVT -bVT -bVT -bVT -bVT -bVT -bVT -bVT -bVT -bVT -bVT -bVT -bVT -bWg -cEM -bWg -chC -cJd -cKU -bWg -cOb -cQb -cRv -bWg -cUW -cWy -cBl -bWg -aaa -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(76,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aae -aaa -aaf -aaf -aaf -aaf -amY -aaf -aaf -aaf -apE -aaf -aaf -aaf -amY -aaf -aaf -aaf -aaf -aaf -aaf -aaf -apE -aaf -aHA -aaf -aaa -aaf -aaH -aaa -aaf -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaa -agg -aaf -btD -bwH -byw -byv -byu -bwH -btD -aaf -agg -aaa -bJv -aaa -bRJ -aaa -aaf -bVT -bZe -bZe -bZe -bVT -bZe -bZe -bZe -bVT -bZe -bZe -bZe -bVT -bZe -bZe -bZe -bVT -bZe -bZe -bZe -bVT -cDx -cme -bWg -cHH -cJe -cKV -bWg -cOc -cQc -cbu -bWg -cUX -cWz -cYo -bWg -aaf -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aad -aaa -aaa -aaa -aaa -aaa -aaf -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(77,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aae -aae -aaf -aaf -aaa -alO -amZ -anZ -aaa -aaf -amY -aaf -aaa -alO -amZ -anZ -aaa -aaf -aaa -aaa -aaf -aBX -aEN -aBX -aaH -aIN -aKf -aIN -aNC -aaf -agg -aaf -aaf -agg -agg -agg -agg -agg -aaf -agg -agg -agg -agg -agg -aaf -agg -aaf -agg -aaf -btD -bwI -byx -bwH -bBR -bDE -btD -aaf -aaf -aaa -bJv -aaa -bRJ -aaa -bVT -bVT -bVT -aaf -aaa -cex -aaa -aaa -aaa -aaf -aaa -aaa -aaa -aaf -aaa -aaa -aaa -cvY -aaa -aaf -bVT -bVT -bVT -cEM -bWg -bWg -chF -bWg -bWg -bWg -chF -bWg -bWg -bWg -chF -bWg -bWg -aaf -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(78,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aae -aaa -alO -amZ -anZ -aaa -alO -amZ -anZ -aaa -alO -amZ -anZ -aaa -agg -aaa -aaf -aaf -aBX -aEO -aBX -aaH -aBZ -aKg -aBZ -aND -aPf -aaa -aaf -aaa -aaf -aaa -aaf -aaa -aaf -aaa -aaf -aaa -aaf -aaa -aaf -aaa -aaf -aaa -aaa -aaf -btD -bwJ -byy -bAm -byy -bDF -btD -aaf -bJx -bLx -bNH -aaf -bRJ -aaf -bVT -bXo -bZf -bZf -aaa -cey -cfT -cfT -ciX -cfT -cfT -ciX -cfT -cfT -ciX -cfT -cfT -cvZ -aaa -bZf -bZf -cCm -bVT -bZD -cGp -cHI -cJf -cHI -cMp -cOd -cQd -cHI -cHI -cMp -cWA -cYp -bWg -aaf -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(79,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aae -aaf -alO -amZ -anZ -aaf -alO -amZ -anZ -aaf -alO -amZ -anZ -aaf -agg -aaf -aaf -aBX -aBX -aEN -aBX -aBZ -aBZ -aKh -aBZ -aBZ -aPg -agg -agg -agg -agg -agg -aaf -agg -agg -agg -agg -agg -aaf -agg -agg -agg -agg -agg -aaf -aaf -btD -bwK -byz -byz -bBS -bDG -btD -aaf -bJv -aaf -aaf -aaf -bRJ -aaf -bVT -bXo -bZf -cbd -aaf -cez -cfU -cho -ciY -cho -cho -ciY -cho -cho -ciY -cho -cuI -cez -aaf -czj -bZf -cCm -bVT -cyh -cGq -ceO -cJg -cdj -cMq -cMq -bZC -bZD -cdj -cMq -cGq -bZC -cJc -aaf -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(80,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aae -aaa -alO -amZ -anZ -aaa -alO -amZ -anZ -aaa -alO -amZ -anZ -aaa -agg -aaa -aaf -aBY -aDs -aEP -aGf -aBZ -aIO -aKi -aLN -aNE -aPh -aaf -aaf -aaa -aaf -aaf -aaf -aaa -aaf -aaf -aaf -aaa -aaf -aaf -aaf -aaa -aaf -aaf -aaf -aaf -btD -bwL -byA -bAn -bBT -bDH -btD -bHv -bJy -bHv -bHv -aaf -bRJ -aaf -bVT -bXp -bZg -cbd -aaa -cez -cfV -chp -aaf -aaf -clI -aaa -aaH -aaf -aaf -csS -cuJ -cez -aaa -czj -cAU -cCn -bVT -bZD -cGq -cHJ -cHJ -cHJ -cHJ -cHJ -cHJ -cHJ -cHJ -cHJ -cWB -cbu -bWg -aaf -aaf -aaa -dcs -dcs -aHW -dcs -aHW -dcs -dcs -aaa -aaa -agg -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(81,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaa -alO -amZ -anZ -aaa -alO -amZ -anZ -aaa -alO -amZ -anZ -aaa -aaf -aaa -aaf -aBY -aDt -aEQ -aGg -aBZ -aIP -aKj -aLO -aBZ -aPg -aNV -aNV -aNV -aNV -aNV -aNV -aNV -aNV -aNV -aNV -aNV -aNV -aNV -aNV -aNV -aNV -aNV -aaf -aaf -btD -bwM -byB -bAo -bBU -bDI -btD -bHw -bJz -bLy -bHv -bPx -bRK -bPx -bVT -bXq -bZf -cbd -aaf -ceA -cfW -aaf -aaa -aaa -aaH -aaf -aaH -aaa -aaa -aaf -cuK -cwa -aaf -czj -bZf -cAW -bVT -bZC -cGr -cHJ -cJh -cKW -cMr -cOe -cQe -cRw -cTi -cHJ -cWC -cYq -bWg -aaf -aaf -aaf -dcs -dgQ -diF -dks -dlV -diJ -dcs -aaf -aaf -aaf -aaf -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(82,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -agg -aaa -aaf -aaa -aaf -aaa -alO -amZ -anZ -aaa -aaf -aaa -aaf -aaa -agg -aaf -aaf -aBY -aDu -aER -aGh -aBZ -aIQ -aKk -aLP -aBZ -aPh -aNV -aSH -aUh -aSH -aNV -aZi -baG -aZi -aNV -bfa -bgQ -bfa -aNV -blW -bnV -blW -aNV -aaf -aaf -btD -bwN -byC -bAp -bBV -bDJ -btD -bHx -bJy -bLz -bHv -bPy -bRL -bTS -bVT -bXr -bZh -cbd -aaa -cez -cfV -aaf -aaa -aaH -aaH -aaH -aaH -aaH -aaa -aaf -cuJ -cez -aaa -czj -cAV -cCo -bVT -cEN -cGs -cHK -cJi -cKX -cMs -cOf -cQf -cRx -cTj -cHJ -cWD -cYr -bWg -aHW -dcs -aHW -dcs -aPD -diG -dkt -dlW -aNZ -dcs -aHW -dcs -aHW -aHW -aaf -agg -aaa -aaa -aaa -aaa -aaa -aaf -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(83,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -agg -agg -aaf -agg -aaf -aaa -aaf -aaa -aaf -aaa -aaf -agg -aaf -agg -agg -aaf -aaf -aBY -aBY -aES -aGi -aBZ -aIP -aKl -aLO -aBZ -aPg -aNV -aSI -aUi -aSH -aNV -aZj -baH -aZi -aNV -bfb -bgR -bfa -aNV -blW -blW -bpN -aNV -aaf -btD -btD -btD -byD -bAq -bBW -btD -btD -bHy -bJA -bLA -bNI -bPz -bRM -bTT -bVT -bVT -bXq -cbd -aaH -cez -cfV -chq -aaH -aaH -clJ -cho -coI -aaH -aaH -aaH -cuJ -cez -aaH -czj -cAW -bVT -bVT -bZD -cGt -cHL -cJj -cKY -cMt -cOg -cQg -cKY -cTk -cUY -cWE -cYq -bWg -daN -dct -ddL -daP -aMr -diH -dku -dlW -aNZ -ddQ -dqt -drZ -daT -aHW -aaf -agg -agg -aaa -aaa -aaa -aaa -aaf -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(84,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaa -aaf -aaa -agg -agg -agg -agg -agg -agg -agg -agg -agg -aaf -aaf -aaf -aaf -aaf -aBZ -aDv -aET -aGj -aHB -aIR -aKm -aLQ -aBZ -aPh -aNV -aSJ -aUj -aWb -aNV -aZk -baI -bcd -aNV -bfc -bgS -biS -aNV -blX -bnW -bpO -aNV -aaH -btD -bvd -bwO -byE -bAr -bBX -bDK -bFE -bHz -bJB -bLB -bNJ -bPA -bRN -bTU -bVT -bVT -bXq -bZf -aaf -ceA -cfW -aaa -aaf -aaH -clK -cnd -coJ -aaH -aaf -aaa -cuK -cwa -aaf -bZf -cAW -bVT -bVT -cEO -cGu -cHM -cJk -cKZ -cMu -cOh -cQh -cOh -cTl -cUZ -cWF -cYs -bWg -daO -dcu -ddM -dfE -dgR -dgR -dkv -dgR -dny -ddM -dqu -dsa -dlX -dcs -aaf -aaf -aaf -aaf -agg -aaa -aaa -aaf -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(85,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaa -aaf -aaa -aaf -aaa -aaa -aaf -aaa -aaa -agg -aaa -aaH -aCa -aDw -aEU -aGk -aHC -aIS -aKn -aLR -aNF -aPi -aNV -aSK -aIU -aWc -aXL -aSK -aIU -aWc -aNV -aSK -aIU -aWc -aNV -aWc -aIU -aSK -aNV -aaH -btE -bve -bwP -byF -bAs -bBY -bDL -bFF -bHA -bJC -bLC -bNK -bPB -bRO -bTV -bVT -bVT -bXq -cbd -aaH -cez -cfV -aaH -aaH -aaH -clL -cne -coK -aaH -aaH -csT -cuJ -cez -aaH -czj -cAW -bVT -bVT -cEP -cGq -cHJ -cJl -cLa -cMv -cOi -cQi -cRy -cTm -cHJ -cWG -cYt -bWg -daP -dcv -aMr -aKI -aPD -diI -dkw -dlX -diJ -aNZ -aMr -dfL -dtq -aHW -aaf -aaa -aaa -aaf -agg -aaa -aaa -aaf -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(86,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaa -aaf -aaa -agg -agg -agg -agg -agg -agg -agg -aaf -aaf -aBZ -aDx -aEV -aGl -aHD -aIT -aKo -aLS -aBZ -aaf -aNU -aSL -aNU -aWd -aNU -aSL -aNU -aWd -aNU -aSL -aNU -aWd -aNU -aWd -aNU -bpP -aNU -aaH -btD -bvf -bwO -byG -bAt -bBZ -bDM -bDM -bDM -bDM -bDM -bDM -bDM -bDM -bDM -bVT -bXs -bZi -cbd -aaa -cez -cfV -aaf -aaa -aaH -aaH -aaH -aaH -aaH -aaa -aaf -cuJ -cez -aaa -czj -cAX -cCp -bVT -cEQ -cGs -cHJ -cHJ -cLb -cMw -cLb -cMw -cLb -cHJ -cHJ -cWH -cJw -bWg -daQ -dcw -ddN -dfF -dgS -dgS -dgS -dgS -dgS -doG -aMr -dsb -diK -dcs -dcs -dcs -aaa -aaf -agg -aaf -aaf -aaf -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(87,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -agg -aaa -agg -aaa -aaf -aaa -aaf -aaa -aaf -aaf -aaf -aaf -aaf -aBZ -aDy -aEW -aGm -aHE -aIU -aIU -aIU -aIZ -aIZ -aIZ -aSM -aIU -aWe -aIZ -aSM -aIU -aWe -aIZ -aSM -aIU -aWe -aIZ -aWe -aIU -bjm -aIZ -aIZ -btF -bvg -bvg -byH -bAu -bvg -bDM -bFG -bHB -bJD -bLD -bNL -bPC -bRP -bTW -bVT -bXq -bZf -cbd -aaf -ceA -cfW -aaf -aaa -aaa -aaH -aaf -aaH -aaa -aaa -aaf -cuK -cwa -aaf -czk -bZf -cAW -bVT -cyf -cGv -cHJ -cJm -cLc -cMx -cOj -cQj -cRz -cTn -cHJ -cWI -cYu -bWg -daR -dcx -ddO -dfG -dfL -dfL -dkx -dkx -diJ -doH -dqv -aNZ -aNZ -aPD -diJ -dcs -aaa -aaf -aaa -aaa -aaa -aaf -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aad -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(88,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -agg -aaf -agg -aaf -asa -atf -asa -atf -asa -atf -asa -atf -aaH -aBZ -aDz -aEW -aGn -aHF -aIV -aKp -aLT -aNG -aPj -aQZ -aSN -aUk -aWf -aXM -aZl -aPj -bce -bdo -aZl -aPj -aWf -bku -blY -bnX -bpQ -brb -bss -btF -bvh -bwQ -byI -bAv -bCa -bDM -bFH -bHC -bJE -bLE -bLE -bLE -bRQ -bTX -bVT -bXt -bZg -cbd -aaa -cez -cfV -chr -aaf -aaf -aaH -aaa -coL -aaf -aaf -csU -cuJ -cez -aaa -czj -cAU -cCq -bVT -cER -cGs -cHJ -cJn -cLd -cMy -cOk -cMy -cRA -cTo -cHJ -cWJ -cYu -bWg -daS -dcy -aNZ -dfH -dgT -dgT -diJ -dlY -dfL -doH -diJ -dsc -dtr -dma -dwd -aHW -aaf -aaH -aaa -aaa -aaa -aaf -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aad -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(89,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaa -agg -aaa -asb -atg -auv -atg -asb -atg -auv -ath -atf -aCa -aDA -aEX -aGo -aHG -aIW -aKq -aLU -aNH -aPk -aRa -aSO -aUl -aWg -aXN -aZm -baJ -bcf -aXN -bfd -bgT -biT -bkv -blZ -bnY -bpR -brc -bst -btF -bvi -bwR -byJ -bAw -bCb -bDM -bFI -bHD -bJF -bLF -bNM -bPD -bRR -bTY -bVT -bXq -bZf -cbd -aaf -ceB -cfX -chs -chs -chs -chs -cnf -chs -chs -chs -chs -cuL -cwb -aaf -czj -bZf -cAW -bVT -cES -cGq -cHJ -cJo -cLe -cMz -cOl -cQk -cRB -cTp -cHJ -cWJ -cYv -bWg -daT -dcz -ddP -dfI -dgU -dgT -dky -dgU -aPD -doH -aPD -dsc -dts -diJ -dwe -dcs -aaa -aaH -aaf -aaf -aaf -aaH -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(90,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -agg -aaf -agg -agg -agg -agg -agg -aaf -agg -agg -aaf -agg -aaf -asb -asb -asb -asb -asb -asb -asb -asa -awQ -aCa -aDB -aEY -aGp -aHH -aIU -aKq -aLV -aNI -aPl -aRb -aSP -aUm -aUm -aUm -aZn -aUm -aUm -aUm -bfe -bgU -biU -aPw -bma -bnZ -bpS -baK -bsu -btG -bvj -bwS -byK -bAx -bCc -bDM -bFJ -bHD -bJG -bLG -bNN -bPE -bRS -bTZ -bVT -bXu -bZj -cbe -aaa -aaf -aaa -aaf -ceC -ceC -ceC -cng -ceC -ceC -ceC -aaf -aaa -aaf -aaa -czl -cAY -cCr -bVT -cER -cGw -cHN -cJp -cLf -cMA -cOl -cQl -cRC -cTq -cHJ -cWK -cJA -bWg -daU -dcz -ddQ -dfI -dgU -aPD -dkz -dfL -dgT -doH -aNZ -dsc -dtt -aNZ -dwf -aHW -aaf -aaH -aaa -aaa -aaa -aaf -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(91,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -agg -aaf -aaa -aaa -aaf -aaa -aaf -aaa -aaf -aaf -aaf -aaf -aaf -asb -ath -auw -ath -awQ -ath -auw -ath -atf -aBZ -aDC -aEZ -aGq -aHI -aIU -aKq -aLW -aNJ -aPm -aRc -aSQ -aUn -aWh -aWh -aZo -baK -aWq -aWq -bff -bgV -biV -bkw -bmb -boa -bpT -brd -bsv -btH -bvk -bwR -byL -bAy -bCd -bDM -bFK -bHE -bJH -bLH -bNO -bPF -bRT -bUa -bVT -bVT -bZk -bVT -bVT -ceC -ceC -ceC -ceC -ckv -clM -cnh -clM -cqi -ceC -ceC -ceC -ceC -bVT -bVT -cAZ -bVT -bVT -cET -cGx -cHO -cJq -cLg -cMB -cOm -cQm -cRD -cTr -cVa -cWL -cYw -bWg -aPD -dcz -ddR -dfI -aPD -diJ -diJ -dfL -dkx -doH -aMr -dsd -dtu -aPD -dwg -dcs -aaa -aaH -aaf -aaf -aaf -aaH -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(92,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -agg -aaf -aaf -agg -agg -agg -agg -aaf -agg -aaf -aiW -aoK -aoK -asc -aoK -aoK -aoK -aiW -aoK -aoK -aoK -asc -aiW -aBZ -aFa -aGr -aHJ -aIX -aKr -aLX -aNK -aPn -aRd -aSR -aUo -aWi -aXO -aZp -baL -bcg -aSR -bfg -bgW -biW -aPw -bmc -bob -bpU -bre -bsw -btI -bvl -bwT -byM -bAz -bCe -bDM -bFL -bHF -bJI -bLI -bJI -bPG -bRU -bUb -bVT -bXv -bZl -cbf -ccT -ceD -ceD -ceD -ceC -ckw -clN -cni -coM -cqj -ceC -csV -ceD -cwc -cxJ -cbf -cBa -cCs -bVT -cEU -cGy -cHM -cJr -cLh -cMC -cOl -cQn -cRE -cRy -cHN -cWM -cYx -cZI -daV -dcA -ddS -dfJ -dgV -dgV -dgV -dlZ -dnz -doI -aNY -dse -dtv -dcs -dcs -dcs -aaa -aaf -aaa -aaa -aaa -aaf -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aae -aae -aae -aaf -dYc -aae -aae -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(93,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -agg -aaa -aaf -aaa -aaf -aaf -aaf -aaf -aaf -aaf -aiW -apF -aqY -asd -ati -aux -avM -awR -axL -axL -axL -asd -aCb -aBZ -aFb -aGs -aHK -aIY -aKs -aLY -aNL -aPm -aRc -aSS -aUp -aWj -aXP -aZq -aZq -aWj -bdp -bfh -bgW -biX -bkx -bmd -boc -bpV -brf -bsx -btJ -bvg -bvg -byH -bAA -bvg -bDM -bFM -bHG -bJJ -bLJ -bNP -bPH -bRV -bDM -bVT -bXw -bZk -bVT -ccU -ceE -cfY -cht -ciZ -ckw -clO -cnj -coN -cqk -ciZ -csW -cuM -cht -ccU -bVT -cAZ -bXw -bVT -cEV -cGz -cHJ -cJs -cLi -cMD -cOn -cQo -cRF -cTs -cHJ -cWN -cYy -cZJ -daW -dcB -ddT -dfK -dgW -diK -dkA -dma -aNZ -doJ -aMr -dfL -dtw -aHW -aaf -aaa -aaa -aaf -agg -aaa -aaa -aaf -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aae -aaf -dYc -aae -aae -aaa -aaa -aaf -aaa -aaa -aae -aae -aaf -aae -aae -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(94,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -agg -aaf -agg -aaf -aiW -aiW -aiW -aiW -aiW -aiW -aiW -apG -aqZ -ase -aqZ -auy -avN -awS -axM -aqZ -azZ -aAV -aCc -aBZ -aBZ -aGt -aBZ -aIZ -aKt -aLZ -aNM -aPo -aRd -aST -aUq -aWk -aXQ -aZr -baL -bch -aUo -bfi -bgX -biY -bky -bme -bod -bpW -brg -bsy -btK -bvm -bwU -byN -bAB -bCf -bDN -bFN -bHH -bJK -bDM -bNQ -bPI -bRW -bLJ -bVU -bXx -bZm -cbg -ccV -ceF -cfZ -chu -cja -ckx -clP -cnk -coO -cql -cja -csX -cfZ -ccV -ccV -czm -bZm -cCt -bVT -cEW -cGA -cHJ -cJt -cLj -cME -cME -cQp -cRG -cTt -cHJ -cWD -cYz -bWg -daX -dcC -ddU -dfL -dfL -dfL -dfL -dgT -diL -dfL -dfL -dgT -ddV -dcs -aaf -aaf -aaf -aaf -agg -aaf -aaf -aaf -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aae -aaa -aaa -aaf -aaa -aaa -dZB -eab -ear -aaa -aaa -aaf -aaa -aaa -aae -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(95,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaa -agg -aaf -aiW -ajK -akP -akP -akP -akP -aoH -apH -ara -asf -atj -auz -ato -awT -axN -aza -aAa -aAW -aCd -aDD -azd -aGu -aHL -aIZ -aKu -aMa -aNL -aPm -aRe -aSU -aUr -aWl -aWl -aWl -baM -aSY -bdq -bfj -bgV -biZ -aIU -bmf -aIU -aIZ -aIZ -aIZ -btF -bvg -bvg -byO -bAC -bwR -bDO -bFO -bHI -bwR -bDM -bNR -bPJ -bRX -bUc -bVV -bXy -bZn -cbh -ccW -ceG -cga -chv -cjb -cky -clQ -cnl -coP -cqm -cjb -chv -cuN -cwd -cxK -czn -bZp -cbh -bVT -cEX -cGB -cHJ -cJu -cLk -cMF -cOo -cQq -cRH -cTu -cHJ -cWD -cYA -bWg -daT -dcD -ddV -dfM -ddV -diL -aRq -dmb -dnA -doK -dqw -diJ -aRq -aHW -aaf -aaa -aaa -aaf -agg -aaa -aaa -aaf -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aae -aaa -dZB -eab -ear -aaa -dZB -eac -ear -aaa -dZB -eab -ear -aaa -dYc -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(96,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -agg -aaf -agg -aaa -aiW -ajL -akQ -ajL -ajL -ajL -aoH -apI -arb -asg -atk -auA -avO -auA -axO -azb -atk -aAX -aCe -aDE -aFc -aGv -aHM -aJa -aKv -aMb -aNL -aPm -aRf -aSV -aUs -aIU -aIU -aIU -aSV -aSV -bdr -bfk -bgY -bja -bkz -bmg -boe -bpX -brh -aIZ -btL -bvn -bwV -byP -bAD -bCg -bDP -bFP -bHJ -bJL -bDM -bNS -bPK -bRY -bUd -bVW -bXz -bZo -cbh -ccW -ceH -cgb -chw -bVT -ckz -clR -cnm -clR -cqn -bVT -csY -ceM -cwe -cxK -czn -cBb -cCu -bVT -cEY -cGq -cHJ -cHJ -cHJ -cHN -cOp -cHJ -cHJ -cHJ -cHJ -cGq -cYz -bWg -bWg -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -aaf -agg -aaa -aaa -aaf -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaa -dZB -eac -ear -aaa -dZB -eac -ear -aaa -dZB -eac -ear -aaa -aae -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(97,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aad -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -agg -aaa -agg -aaf -aiW -ajM -ajL -ajL -ajL -ajL -aoH -apJ -arc -ash -atl -auB -auB -awU -atm -azc -aAb -aAY -aCf -aDF -aFd -aGw -aHN -aIZ -aKw -aMc -aNL -aPm -aRg -aIU -aUt -aWm -aXR -aZs -baN -bci -bds -bfl -bgZ -bjb -aXW -aXW -bof -aXW -bri -aIZ -btM -bvo -bwR -byQ -bAE -bCh -bDQ -bDQ -bHK -bJM -bDM -bNT -bPJ -bRX -bPM -bVW -bXA -bZp -cbh -ccW -ceI -ceM -chx -cjc -bVT -clS -bVT -clS -bVT -bVT -csZ -ceM -cwf -cxK -czn -bZp -cCv -cDy -cEZ -cGC -crJ -cmh -cLl -cMG -cOq -cLl -cRI -cMG -cmh -czC -cYB -cLl -daY -dcE -ddW -dfN -dgX -diM -dkB -dmc -dcE -doL -dqx -dsf -dtx -duE -dwh -dxn -dcE -aaf -aaa -aaa -aaa -aaf -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaf -dZB -eac -ear -aaf -dZB -eac -ear -aaf -dZB -eac -ear -aaf -aae -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(98,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -agg -aaf -aaf -aaa -aiW -ajL -ajL -alP -ajL -akR -aoI -apK -ard -asi -aiW -auC -auC -auC -aiW -azc -aAc -aAZ -aCg -aDG -aiW -aiW -aiW -aIZ -aKx -aMd -aNN -aPp -aRh -aSW -aUu -aWn -aXS -aZt -baO -bcj -bdt -bfm -bha -bjc -bkA -bmh -bkA -bpY -brj -bsz -btN -bvp -bwW -byR -bAF -bCi -bDR -bFQ -bHL -bJN -bLK -bNU -bPL -bRZ -bLJ -bVX -bXA -bZq -cbh -ccX -ceJ -cgc -chy -cjd -ckA -clT -cnn -coQ -cqo -crF -cta -cgc -ceJ -cxL -czn -bZq -cCw -cDz -cFa -cGD -bXM -cJv -bXM -cMH -bXM -cQr -cQr -cQr -cMH -cMH -cYC -cZK -daZ -dcE -ddX -dfO -dgY -dgY -dkC -dfP -dnB -deb -dfO -dsg -dgY -dkE -dwi -dxo -dcE -aaf -aaf -aaH -aaa -aaH -aaf -aaH -aaf -aaH -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aae -aaa -dZB -eac -ear -aaa -dZB -eac -ear -aaa -dZB -eac -ear -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(99,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaa -agg -aaf -aiW -ajN -ajL -alQ -ana -ana -aoJ -apL -are -asj -aiW -auD -avP -avP -axP -azd -aiW -aAY -ark -aDH -aiW -aGx -aHO -aIZ -aKy -aMe -aNL -aPm -aRg -aIU -aUv -aWo -aXT -aZu -baP -aIU -bdu -bfn -bha -bjd -bkB -bmi -bog -bpZ -brk -aIZ -btF -btF -btF -byS -bAF -bCi -bDS -bFR -bHM -bJO -bDM -bDM -bPM -bDM -bDM -bNY -bXB -bZp -cbi -ccY -ccY -ccY -ccY -ccY -ccY -clU -cno -coR -ccY -ccY -ccY -ccY -ccY -cxM -czo -cBc -cCx -cDA -cFb -cGE -cHP -cJw -cHS -cHS -cHS -cHS -cHS -cHS -cHS -cHS -cHS -cyf -dba -dcF -ddY -dfP -dgZ -diN -dkD -dmd -dcE -doM -dfR -dkE -dty -duF -dkD -dxp -dcE -aaf -aaa -aaH -aaf -aaf -aaa -aaf -aaa -aaH -aaf -aaf -aaf -aaH -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -agg -agg -aaa -agg -agg -aaa -aae -aaa -dZB -eac -ear -aaa -aaf -ead -aaf -aaa -dZB -eac -ear -aaa -aaf -aae -aae -aae -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(100,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -agg -aaf -agg -aaa -aiW -ajL -ajL -ajL -ajL -ajL -aoK -apM -arf -ask -aiW -auE -auE -auE -axQ -aze -aAd -aBa -aCh -aDI -aFe -aGy -aHP -aJb -aKz -aMf -aNO -aPm -aRg -aSX -aSV -aIU -aIU -aIU -baQ -aSV -bdv -bfn -bhb -bje -bkC -bkC -boh -bqa -brl -bsA -btO -bvq -bwX -byT -bAG -bCj -bDT -bFS -bHN -bJP -bLL -bNV -bPN -bSa -bUe -bVY -bXC -bZr -cbj -ccZ -ceK -ccZ -ceK -ccZ -ceK -clV -cnp -coS -cqp -crG -cqp -crG -cqp -crG -czp -cBd -cCy -bVT -cFc -bZC -cGq -cJx -cHS -cMI -cMI -cMI -cRJ -cMI -cMI -cMI -cHS -cyf -dbb -dcE -ddZ -dfQ -dha -diO -diO -dme -dnC -dkE -dfR -dsh -dsh -dsh -dwj -dfP -dcE -aaf -aaf -aaH -aaa -aaH -aaf -aaH -aaf -aaH -aaa -aaa -aaa -aaH -aaf -aaf -aaf -aaH -aaa -aaa -aaf -aaf -aaf -agg -aaf -aaf -aaf -aaf -aaf -aaf -aaa -aaa -ead -aaf -aaf -aaf -dVu -aaf -aaf -aaf -ead -aaf -aaa -aaa -aaf -aaa -aae -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(101,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -agg -aaa -agg -aaf -aiW -ajO -ajL -akR -anb -ajL -aoK -apN -arg -asl -aoK -ajL -avQ -ajL -axR -ajL -axR -aBb -aCi -aDJ -aFf -aGz -aHQ -aJc -aKA -aMg -aNP -aPq -aRg -aSY -aUw -aWp -aXU -aZv -baR -aSU -bdw -bfo -bhc -bjf -bkD -bmj -boi -bqb -brm -bsB -btP -bvr -bwY -byU -bAH -bCk -bDU -bFT -bHO -bJQ -bLM -bNW -bPO -bSb -bUf -bVZ -bXD -bZs -cbk -cda -cda -cgd -cda -cda -cda -clW -cnq -coT -cqq -crH -ctb -cda -cwg -cxN -czq -cBe -cCz -bVT -cFd -bZC -cHQ -cJy -cHS -cMJ -cOr -cJH -cJH -cJH -cJH -cWO -cHS -cZL -dbc -dcG -dea -dfR -dhb -diP -dkE -diT -dcE -doN -dfR -dsi -dtz -duG -diO -diT -dcE -aaf -aaa -aaa -aaa -aaf -aaa -aaf -aaa -aaH -aaf -aaf -aaf -aaH -aaa -aaa -aaa -aaH -aaf -aaf -aaH -aaa -aaa -agg -aaf -dVu -dVu -dVu -dVu -dVu -dVu -dVu -dVu -dVu -dVu -eaC -eaK -dVu -dVu -dVu -eaV -eaW -eaW -eaW -eaX -aaf -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(102,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -agg -aaa -aaf -aaa -aiW -ajL -ajL -ajL -ajL -ajL -aoK -apO -arh -asm -aiW -auF -auF -auF -axS -azf -aAd -aBc -arj -aDK -aFg -aGA -aHR -aJd -aKB -aMh -aNQ -aPr -aRi -aSZ -aUx -aWq -aWq -aWq -aWq -aSZ -bdx -bfp -bhd -bjg -bkE -bmk -boj -bqc -brn -aJd -btQ -bvs -bwZ -byV -bAI -bCl -bDV -bFU -bDQ -bJR -bLN -bNX -bPP -bSc -bUg -bWa -bXE -bZt -cbl -cdb -ceL -cge -chz -cje -ckB -clX -cnr -coU -cqr -crI -crI -cuO -cwh -cxO -czr -cBf -crI -crI -cFe -cBp -bZD -cJz -cHS -cMI -cMI -cMI -cMI -cMI -cMI -cMI -cHS -cZL -dbc -dcE -deb -dfR -dhc -diQ -dkF -dmf -dcE -doO -dha -dfP -dtA -dsk -diO -dxq -dcE -aaf -agg -aaa -aaa -aaf -aaa -aaf -aaa -aaa -aaa -aaf -aaa -aaH -aaf -aaf -aaf -aaH -aaa -aaa -aaH -aaf -aaf -aaf -aaf -dVu -aaf -aaf -aaf -aaf -aaa -aaa -eae -aaf -aaf -aaf -dVu -aaf -aaf -aaf -eae -aaf -aaa -aaa -aaf -aaa -aae -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(103,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -agg -aaf -agg -aaf -aiW -ajN -ajL -alR -anc -anc -aoL -apP -ari -asn -aiW -auG -avR -avR -axT -azd -aiW -aBd -ark -aDL -aiW -aGB -aHS -aIZ -aKC -aMi -aNR -aPs -aRj -aTa -aUy -aWr -aXV -aWr -aWr -aWr -bdy -bfq -bhe -bjh -bkF -bml -bok -bqd -bro -aIZ -aIZ -aIZ -aIZ -aIZ -aIZ -bCm -bDW -bFV -bFQ -bJS -bvg -bNY -bPQ -bSd -bUh -bNY -bXF -bZu -cbm -ccW -ceM -cgf -chA -bVT -ckC -clY -cns -coV -ckC -crI -ctc -cuP -cwi -cxP -czs -cBg -cCA -crI -cFe -bZC -bZD -cJA -cHS -cHS -cOs -cMI -cMI -cTv -cOs -cHS -cHS -cZM -dbd -dcE -dec -dfQ -dhd -diR -dkG -dmg -dnB -doP -dfP -dsj -dtA -duH -dkD -dxr -dcE -aaf -agg -aaa -aaa -aaf -aaa -aaf -aaa -aaa -aaa -aaf -aaa -aaa -aaa -aaf -aaa -aaH -aaf -aaf -aaH -aaa -aaa -agg -aaf -dVv -aaf -aaa -aaa -aae -aaa -dZB -eaf -ear -aaa -aaf -eae -aaf -aaa -dZB -eaf -ear -aaa -dYc -aae -aae -aae -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(104,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -agg -aaf -agg -aaa -aiW -ajL -ajL -ajL -ajL -ajL -aoI -apK -arj -aso -aiW -auH -auH -auH -aiW -azg -aAe -aBe -aCj -aDM -aiW -aiW -aiW -aIZ -aKD -aMj -aNL -aPm -aRc -aTb -aUz -aWs -aXW -aXW -baS -bck -bdz -bfr -bhf -bji -aIZ -bmm -bol -bqe -brp -bsC -btR -bvt -bxa -byW -aIZ -bCn -bDX -bFW -bHP -bJT -bLO -bJU -bPR -bSe -bUi -bWb -bXG -bZv -cbn -cdc -ceN -cgg -chB -bVT -ckD -clZ -cnt -coW -cqs -crI -ctd -cuQ -cwj -cxQ -czt -cBh -cCB -crI -cFf -cGF -cHR -cJB -cHS -cMK -cOt -cQs -cRK -cTw -cVb -cWP -cHS -cZN -dbb -dcE -ded -dfS -dhe -diS -dkH -dme -dnB -doQ -dfQ -dsk -dtB -dtA -dwk -dxs -dcE -aaf -agg -aaa -aaa -aaf -aaa -aaf -aaa -aaa -aaa -aaf -aaa -aaa -aaa -aaf -aaa -aaa -aaa -aaa -aaf -aaf -aaf -agg -aaf -dVw -aaf -aaa -aaa -aae -aaa -dZB -eaf -ear -aaa -dZB -eaf -ear -aaa -dZB -eaf -ear -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(105,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaf -agg -aaf -aiW -ajL -ajL -ajL -ajL -ajL -aoK -apQ -ark -ash -atm -auI -avS -auI -atl -azh -aAf -aBf -aCk -aDN -aFh -aGC -aHT -aIZ -aKD -aMk -aNL -aPt -aRk -aTc -aUA -aTc -aXX -aXX -baT -bcl -bdA -bfs -bhg -bjj -aIZ -bmn -bom -bqf -brq -bsD -aZq -bvu -bvu -byX -aIZ -bCo -bDY -bFX -bHQ -bJU -bLP -bHQ -bPS -bSf -bUj -bLT -bXH -bZw -cbo -cdd -bVT -bVT -bVT -bVT -ckE -cma -cnu -coX -cqt -crI -cte -cuR -cwk -cxR -czu -cBi -cCC -crI -cFc -cGG -cHS -cJC -cHW -cML -cOu -cQt -cRL -cTx -cVc -cML -cHS -cZO -dbc -dcE -dee -dfT -dhf -diT -dkI -dmh -dnB -doR -dha -dsl -dtC -diT -diO -dxt -dcE -aaf -agg -aaa -aaa -aaf -aaa -aaf -aaa -aaa -aaa -aaf -aaa -aaa -aaa -aaf -aaa -aaa -agg -agg -agg -aaf -aaf -aaf -aaf -dVw -aaf -aaf -aaa -aae -aaf -dZB -eaf -ear -aaf -dZB -eaf -ear -aaf -dZB -eaf -ear -aaf -aae -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(106,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -agg -aaf -aaf -aaf -aiW -ajL -akR -ajL -akQ -ajL -aoK -apQ -arl -asp -atn -auJ -avT -awV -axU -azi -azi -aBg -aCl -aDO -aFi -aGD -aHU -aIZ -aKD -aMl -aNS -aPu -aRl -aTd -aUB -aWt -aXY -aZw -baU -bcm -bdB -bft -bhh -bjk -aIZ -bmo -bon -bqg -brr -bsE -btS -bvv -bxb -byY -bAJ -bCp -bDZ -bFY -bHR -bJV -bLQ -bNZ -bPT -bSg -bUk -bLT -bXI -bZx -cbp -cde -bVT -cgh -chC -bVT -ckF -cma -cnu -coY -cqu -crI -ctf -cuQ -cwl -cxQ -czv -cBh -cCD -crI -cFc -cGG -cHT -cJD -cHW -cMM -cOv -cQu -cRM -cQu -cVd -cWQ -cHS -cZL -dbc -dcE -dcE -dcE -dcE -diU -dkI -dmi -dcE -doS -dqy -diS -dtD -dhe -duI -dxu -dcE -aaf -aaa -aaa -aaa -aaf -aaa -aaf -aaa -aaa -aaa -aaf -aaa -aaa -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -dUl -dVx -dUl -aaf -aaa -aae -aaa -dZB -eaf -ear -aaa -dZB -eaf -ear -aaa -dZB -eaf -ear -aaa -aae -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(107,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -agg -aaa -agg -aaf -aiW -ajP -akP -akP -akP -aoa -aiW -apR -ara -asq -ato -auK -avU -auK -axV -azj -aAg -aBh -aCm -aDP -aFj -aGE -aHV -aIZ -aKE -aMm -aNT -aPv -aMm -aTe -aUC -aWu -aXZ -aZx -baV -bcn -bdC -bfu -bhi -bjl -aIZ -bmp -boo -bqh -brs -bsF -aWq -bvw -bxc -byZ -bAK -bCq -bEa -bFZ -bHS -bJW -bLR -bOa -bPU -bSh -bUl -bWc -bXI -bZy -cbq -cdf -bVT -cgi -chD -bVT -ckG -cmb -cnv -coZ -cqv -crI -ctg -cuS -cwm -cxS -czw -cBj -cCE -crI -cFd -cGG -cHU -cJE -cLm -cMN -cOw -cQv -cRN -cTy -cVe -cWR -cHS -cZP -dbe -cDC -def -dfU -dcE -dcE -dkJ -dcE -dcE -doT -dqz -dsm -dtE -duI -dwl -dxv -dcE -aaf -aaf -aaf -aaf -aaH -aaa -aaH -aaf -aaf -aaf -agg -agg -aaf -agg -agg -agg -agg -agg -aaf -agg -agg -aaf -aaf -dUl -dVy -dUl -aaf -aaf -dYc -aaa -dZB -eag -ear -aaa -dZB -eaf -ear -aaa -dZB -eag -ear -aaa -dYc -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(108,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -agg -aaf -agg -aaf -aiW -aiW -aiW -aiW -aiW -aiW -aiW -apS -arm -asr -atp -auL -avV -arm -axW -azk -aAh -aBi -aCn -aiW -aiW -aiW -aiW -aJe -aIZ -aIZ -aIZ -aPw -aRm -aPw -aIZ -aSM -aIU -aWe -aIZ -aSM -aIU -bfv -aIZ -bjm -aIZ -bmq -bop -bqi -brt -bsG -btT -bvx -bxd -bza -bAK -bCr -bEb -bGa -bHT -bJX -bLS -bOb -bPV -bSi -bUm -bLT -bXJ -bZz -cbr -cdg -bVT -cgj -chE -bVT -ckG -cmc -cnw -cpa -cqv -crI -crI -crI -crI -crI -crI -crI -crI -crI -cFg -cGG -cHV -cJF -cHW -cMO -cOx -cQw -cRO -cTz -cVf -cWS -cYD -cZQ -dbf -dcH -deg -dfV -bWg -diV -dkK -dmj -dcE -dcE -dcG -dcE -dtF -dcE -dcE -dcE -dcE -aaf -aaa -aaa -aaa -aaf -aaa -aaf -aaa -aaa -aaa -aaa -aaf -aaa -aaa -aaa -aaf -aaa -aaa -aaa -aaf -aaa -aaf -dUl -dUl -dVx -dUl -dUl -aaf -aae -aaa -aaa -aaf -aaa -aaa -dZB -eag -ear -aaa -aaa -aaf -aaa -aaa -aae -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(109,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -agg -aaf -aaf -aaa -aaf -aaa -aaf -aaa -aiW -apT -arn -ass -atq -auM -atq -awW -axX -azl -aAi -aBj -aCo -aiW -aaf -aaf -aaf -aaf -aaf -aaf -aNU -aPx -aNU -aPx -aNU -aSL -aNU -aWd -aNU -aSL -aNU -bfw -bhj -aJg -aIZ -bmr -boq -bqj -bru -bsH -btU -bvy -bxe -aIZ -bAK -bCs -bEc -bGb -bHU -bJY -bLT -bLT -bLT -bLT -bLT -bLT -bVT -bVT -bVT -bVT -bVT -bWg -chF -cjf -cjf -cjf -cjf -cjf -cjf -cjf -cth -cbw -cwn -cxT -cbw -cBk -cbw -cwn -cFh -cGG -cHW -cHW -cHW -cHW -cOy -cQx -cRP -cTA -cOy -cHW -cHS -cHS -cHS -cHS -deh -dbe -dhg -diW -dkL -cHI -dnD -doU -def -def -cJf -duJ -bWg -aaa -aaf -aaf -aaf -aaf -aaf -aaH -aaa -aaH -aaH -aaH -aaf -aaa -agg -agg -agg -agg -agg -aaf -agg -agg -agg -aaa -aaf -dUm -dUR -dVz -dWh -dUm -aaf -aae -aae -aae -dYc -aae -aaa -aaa -aaf -aaa -aaa -dYc -aae -aae -aaf -aae -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(110,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaf -aaf -aaf -aaf -aaf -aaf -aiW -aiW -aiW -aiW -atr -aoK -atr -aiW -axY -aoK -aoK -aiW -aiW -aiW -aaa -aaf -aaa -aaf -aaa -aaf -aNV -aPy -aIU -aTf -aNV -aWv -aIU -aZy -aNV -aWv -aIU -aZy -aNV -aJg -aib -bms -bor -bqk -brv -bsI -btV -bvz -bxf -bvz -bxf -bCt -bEd -bGc -bHV -bGc -bLU -bGc -bGc -bSj -bUn -bWd -bWg -bZA -cbs -cdh -bZD -cbv -chG -cjf -ckH -cmd -cnx -cpb -cqw -cjf -cti -bWg -bWg -bWg -bWg -bWg -bWg -bWg -cFc -cGG -cHX -cHX -cHX -cMP -cOz -cQy -cML -cTB -cVg -cWT -cYE -cHX -cHX -cHS -dei -dfW -dcH -diX -dkM -dmk -dcH -doV -dqA -dmk -dtG -duK -bWg -aaf -dms -dyv -dyv -dms -dyv -dms -dFJ -dms -dHX -dIJ -aaf -aaf -aaf -aaf -aaf -aaf -aaf -aaf -aaf -aaf -aaf -aaf -aaf -dUm -dUS -dVA -dWi -dUm -aaf -aaa -aaa -aaa -aaf -aae -aae -aae -aaf -aae -aae -dYc -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(111,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaa -aaf -aaa -aaf -aaa -aaa -aaf -aaa -aaf -ats -aaf -ats -aaf -axZ -azm -aAj -azm -aAj -azm -aAj -azm -aAj -aJf -aaf -aaf -aNV -aPz -aRn -aTg -aNV -aWw -aYa -aZz -aNV -bco -bdD -bfx -aNV -aJh -aib -bmt -bos -bql -brw -bsJ -btW -bvA -bxg -bzb -bAL -bCu -bEe -bGd -bGd -bGd -bLV -bGd -bPW -bSk -bUo -bWe -bXK -bZB -cbt -cdi -cbt -cgk -chH -cjf -ckI -ckI -cny -cpc -cqx -cjf -ctj -bWg -cwo -cxU -czx -cBl -cCF -bWg -cFi -cGG -cHY -cJG -cHX -cMQ -cOA -cQz -cRM -cTC -cVh -cWU -cHX -cJH -dbg -cHS -dej -dej -dej -diY -dkN -dej -dej -dej -dej -dej -cEW -duL -cJc -aaa -dyv -dzE -dBb -dCl -dDJ -dyv -dFK -dms -dHY -dIK -dIK -dIK -dIK -dIK -dIK -dIK -dIK -dIK -dIK -dIK -dIK -dIK -aaf -dUm -dUT -dVB -dWj -dUm -aaf -aaf -aaf -aaa -aaf -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(112,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aad -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aiX -aiX -aiY -aiY -aiY -aiX -aiX -aib -aib -aib -aok -aok -aok -aib -aok -aok -aok -aib -aib -aib -aib -aib -aib -aJg -aaa -aaf -aNV -aPA -aRo -aPB -aNV -aWx -aYb -aWy -aNV -bcp -bdE -bcq -aNV -aJg -aib -bmu -bot -bot -brx -brx -btX -bvB -bxh -bot -bAM -bCv -bEf -bCv -bCv -bCv -bLW -bOc -bPX -bSl -bUp -bWf -bWg -bZC -cbu -cdj -bZC -cdj -chI -cjf -ckJ -cme -cnz -cpd -cqy -cjf -ctk -bWg -cwp -bZD -czy -cBm -cCG -bWg -cFd -cGG -cHX -cHX -cLn -cMR -cOB -cQA -cRQ -cTD -cVi -cWV -cHX -cHX -cHX -cHS -dek -dfX -dhh -diZ -dkO -dml -dnE -doW -dqB -dej -cEV -duM -cJc -aaf -dyv -dzF -dBc -dCm -dDK -dEA -dFL -dms -dHZ -dIK -dJt -dKr -dLo -dMu -dNt -dMv -dPc -dPT -dQJ -dRA -dSr -dIK -dIJ -dUm -dUU -dVC -dWk -dUm -dIJ -dIJ -aaf -agg -aaf -aaa -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aad -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(113,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aiX -ajQ -akS -alS -and -aob -aiX -aic -aic -ast -aic -aoT -avW -ast -aic -aoT -aoT -ars -aic -aic -awY -aGF -aib -aJh -aaf -aaf -aNV -aPB -aRp -aPB -aNV -aWy -aYc -aWy -aNV -bcq -bdF -bcq -aNV -aJh -aib -bmv -bou -bou -bou -bov -bou -bou -bou -bou -bou -bou -bou -bou -bou -bou -bou -bOd -bPY -bSm -bUq -bWg -bWg -bZD -bZC -bWg -ceO -bZC -chI -cjf -ckK -cmf -cnA -cpe -cqz -cjf -cti -bWg -cwq -cxV -czz -cBn -cCH -bWg -cFc -cGG -cHW -cHW -cHW -cHW -cOC -cQA -cRR -cTE -cOF -cHW -cHW -cHW -cHW -cHS -del -dfY -dhi -dja -dkP -dmm -dnF -doX -dqC -dej -dtH -duK -bWg -aaa -dms -dzG -dBd -dCn -dDL -dyv -dFJ -dms -dIa -dIK -dJu -dKs -dLp -dMv -dNu -dLr -dMz -dMu -dQK -dRB -dSs -dIK -dTK -dUn -dUV -dVD -dVK -dFW -dWU -dXt -aaf -agg -agg -aaf -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(114,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aiX -ajR -akT -alT -akT -aoc -aiX -aic -aro -asu -aic -auN -aoQ -awX -awX -awX -awX -awX -awX -awX -aoT -aGG -aib -aJg -aaa -aaf -aNV -aNV -aNV -aNV -aNV -aNV -aNV -aNV -aNV -aNV -aNV -aNV -aNV -aJg -aib -bmw -bou -aaa -aaf -aaa -aaf -btY -bxi -bzc -bAN -bCw -bEg -bGe -bHW -bJZ -bLX -bou -bPZ -bSn -bUr -bWg -bXL -bZC -cbv -cdk -bZD -bZC -chJ -cjf -cjf -cmg -cnB -cjf -cjf -cjf -ctl -bWg -cwr -cxW -czA -bZD -cCI -bWg -cFj -cGG -cHX -cHX -cHX -cMS -cOD -cQA -cRR -cTF -cVj -cWW -cYE -cHX -cHX -cHS -dem -dfZ -dhj -djb -dkQ -dmn -dnF -doY -dqB -dej -dtI -duN -cJc -aaf -dyv -dzH -dBe -dCo -dDM -dEB -dFM -dms -dIb -dIL -dJv -dKt -dLq -dMw -dNv -dOl -dPd -dOo -dMz -dPe -dSt -dIK -dIi -dUo -dFW -dTm -dFW -dQQ -dXn -dXt -aaf -aaf -aaf -aaa -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(115,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aiY -ajS -akU -alU -ane -aod -aiX -apU -aoQ -asv -att -aic -avX -awX -aya -azn -aAk -azo -aCp -awX -axa -ame -aib -aJi -aAj -azm -aAj -azm -aAj -azm -aAj -azm -aAj -azm -aAj -azm -aAj -azm -aAj -bjn -aib -bmx -bou -aaf -bry -brz -btY -btY -bxj -bzd -bzd -bzd -bEh -bzd -bzd -bzd -bLY -bou -bQa -bSn -bUs -bWh -bXM -bZE -bXM -bXM -bXM -cgl -chK -cjg -bXM -bXM -cnC -cpf -cqA -bXM -ctm -cuT -cuT -cuT -czB -cuT -cuT -cuT -cFk -cGH -cHZ -cJH -cHX -cMT -cOA -cQB -cRS -cTG -cVh -cWX -cHX -cJG -dbh -cHS -den -dga -dhk -djc -dkR -dmo -dnF -doZ -dqB -dej -dtH -duK -cJc -aaa -dyv -dzI -dBf -dCp -dDN -dyv -dFN -dms -dFW -dIM -dJw -dJA -dJA -dMx -dNw -dJA -dJA -dJw -dJw -dRC -dSu -dIK -dTL -dUo -dFY -dFY -dFY -dFY -dFY -dFY -dFY -dFY -aaf -aaf -aaf -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(116,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aiX -ajT -akV -alV -anf -anf -aiX -apV -arp -arp -atu -auO -avY -awX -ayb -azo -azo -azn -aCq -aDQ -axa -aoQ -aib -aib -aib -aib -aib -aok -aok -aok -aib -aok -aok -aok -aib -aok -aok -aok -aib -aib -aib -bmy -bou -aaa -brz -bsK -btZ -brz -bxk -bze -bAO -bCx -bEi -bGf -bHX -bKa -bLZ -bOe -bQb -bSo -bUt -bWg -bXN -bZF -cbw -bZF -ceP -cbw -chL -cjh -ckL -cmh -cnD -ckL -cmh -crJ -ctn -cuU -crJ -cxX -czC -crJ -cCJ -cDB -cFl -cGG -cHX -cHX -cLn -cMU -cOE -cQA -cRR -cTF -cVk -cWY -cHX -cHX -cHX -cHS -deo -dgb -dhl -djd -dkS -dmp -dnF -dpa -dqD -dej -cEV -duM -bWg -aaf -dms -dzJ -dBg -dCq -dDO -dEC -dFO -dms -dIc -dIN -dJx -dKu -dJx -dMy -dNx -dOm -dOm -dOm -dOm -dRD -dSv -dIK -dIi -dUp -dUW -dVE -dWl -dWN -dXo -dYd -dYN -dUW -aaf -agg -aaa -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(117,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aiY -ajU -akW -alV -ala -akW -aoM -apW -aic -asw -atv -auP -ame -awX -ayc -azo -azo -aBk -aCr -awX -aoT -aic -ast -aoT -aoT -aMn -ast -aic -aoT -aoT -aoT -ars -ars -ast -aic -aic -ast -ars -bhk -aoQ -ars -bmz -bov -aaf -brA -bsL -bua -bvC -bxl -bzf -bzf -bzf -bEj -bzf -bzf -bzf -bxl -bOf -bQc -bSp -bUu -bWi -bWi -bWi -bWi -bWi -bWi -bWi -chM -cji -bWi -bWi -bWi -bWi -bWi -bWi -bWi -bWi -bWi -bWi -bWi -bWi -cCK -bZD -cFm -cGG -cHW -cHW -cHW -cHW -cOF -cQC -cRR -cTF -cOC -cHW -cHW -cHW -cHW -cHS -dep -dgc -dhm -dje -dkT -dmp -dnF -dpb -dqB -dej -dtI -duO -bWg -bWg -dms -dms -dms -dCr -dDP -dms -dms -dms -dId -dIL -dJy -dKv -dLr -dMz -dMv -dOn -dMu -dPU -dOo -dRE -dSw -dIK -dTM -dUq -dUX -dFW -dWm -dWO -dSC -dYe -dYO -dZC -aaf -agg -aaf -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(118,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aiY -ajV -akX -alW -ang -aoe -aoN -apX -aib -aib -aib -aib -aib -awX -ayd -azn -azo -aBl -aCs -awX -aic -aoQ -aHW -aHW -aHW -aHW -aNW -aPC -aHW -aHW -avX -aWz -aoT -aZA -aoT -bcr -bcr -aic -bhl -aic -aoT -aUG -bou -aaa -brB -bsM -bub -brB -bxm -bze -bAP -bCy -bEk -bGg -bHY -bze -bMa -bou -bQd -bSn -bUr -bWi -bXO -bZG -cbx -cdl -ceQ -ceR -chN -cjj -ckM -cmi -cnE -cpg -bWi -bXT -cto -cuV -cws -cxY -czD -bWi -cCL -ceO -cFn -cGG -cHX -cHX -cHX -cMV -cOG -cQD -cRT -cTF -cVg -cWZ -cYE -cHX -cHX -cHS -deq -dgd -dhn -djf -dkU -dmq -dnG -dpc -dqB -dej -cEW -duN -dwm -bZC -dyw -dzK -dBh -dCs -dDQ -dzK -dFP -dHs -dIe -dIK -dJz -dKt -dLs -dMz -dMz -dOo -dPe -dOo -dOl -dRF -dSx -dIK -dMI -dUo -dUY -dVF -dWn -dWP -dWP -dYf -dYP -dZC -aaf -agg -aaa -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(119,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aiY -ajW -akY -alX -anh -aof -aoM -apY -aib -asx -atw -auQ -aic -awX -aye -azn -azo -aBl -aCt -awX -aoS -aGH -aHW -aJj -aKF -aMo -aNX -aPD -aRq -aHW -aoQ -aGI -aro -aic -baW -bcs -aib -aro -aoQ -aib -aib -bmA -bou -aaf -bry -brB -btY -btY -bxn -bzg -bzg -bzg -bEl -bzg -bzg -bzg -bMb -bou -bQd -bSn -bUr -bWj -bXP -bZH -cby -cdm -ceR -cgm -chN -cjj -ckN -cmj -chQ -cpg -bWj -crK -ctp -cuW -cwt -ctp -czE -bWi -cCM -bZC -cFn -cGG -cIa -cJG -cHX -cMW -cOA -cQE -cRU -cTH -cVh -cXa -cHX -cJH -dbi -cHS -der -dgd -dho -djg -dkV -dmo -dnH -dpd -dqC -dej -dtJ -duP -cmh -dxw -cOq -dzL -dBi -dCt -dDR -dED -dFQ -dHt -dIf -dIK -dJA -dKw -dLt -dMA -dNy -dMv -dMz -dMv -dQL -dRG -dSy -dIK -dTN -dUr -dUZ -dVG -dSC -dWQ -dXp -dYg -dYQ -dFY -aaf -aaf -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(120,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aiY -ajX -akZ -alY -ani -aog -aoO -apZ -aib -aoT -aoT -auR -avZ -awX -ayf -azo -aAl -aBm -aCu -aDR -aFk -aGI -aHW -aJk -aKG -aMp -aNY -aNZ -aRr -aHW -aUD -aic -aib -aoQ -aro -aib -aib -bfy -aic -bjo -aro -aUG -bou -aaa -aaf -aaa -aaf -bvD -bxo -bzh -bAQ -bCz -bEm -bGh -bHZ -bKb -bMc -bou -bQe -bSn -bUs -bWk -bXQ -bXQ -cbz -bXQ -bXQ -cgn -chO -cjk -ckO -bXQ -bXQ -bXQ -cqB -bXQ -ctq -cuX -cwu -cxZ -czF -bWi -cCK -bZD -cFn -cGG -cHX -cHX -cLn -cMX -cOB -cQy -cML -cTB -cVl -cXb -cHX -cHX -cHX -cHS -des -dge -dhp -djh -dkW -dmr -dnH -dpe -dqB -dej -dtK -cMH -dwn -cMH -dyx -dzM -dBj -dCu -dDS -dzM -dFR -dHu -dIg -dIK -dJB -dKx -dLu -dJA -dNz -dMv -dPf -dLr -dQM -dRH -dSz -dIK -dIi -dUr -dFY -dVH -dWo -dWR -dXq -dYh -dIJ -dFY -aaf -agg -aaf -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(121,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aiY -ajY -akW -alZ -anj -aoh -aoM -aqa -arq -asy -atx -auS -awa -awX -ayg -azo -azo -aBn -aCv -aDS -aFl -aGI -aHW -aJl -aKH -aMq -aNZ -aPE -aRs -aHW -awZ -aic -aic -aic -ast -ars -aic -ast -aic -ars -ars -bmB -bow -bou -bou -bov -bou -btY -btY -btY -btY -btY -btY -btY -btY -btY -btY -btY -bQe -bSn -bUr -bWl -bXR -bZI -bXR -bXR -bZI -cgo -chP -bXR -bZI -bXR -bXR -bXR -cqC -bXR -ctr -cuY -cwv -cya -czG -bWi -cCK -bZC -cFo -cGG -cHW -cHW -cHW -cHW -cOH -cQx -cRP -cTA -cOH -cHW -cHW -cHS -cHS -dcI -det -det -det -dji -dkX -dms -dms -dms -dms -dms -dms -dms -dms -dms -dms -dms -dms -dCv -dms -dms -dFS -dHv -dIh -dIK -dJC -dKy -dLv -dMB -dNA -dIK -dIK -dIK -dIK -dRI -dIK -dIK -dTO -dUs -dVa -dVI -dWp -dSC -dXr -dYi -dYR -dFY -aaf -agg -aaa -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(122,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aiX -ajZ -ala -ama -ank -aoi -aiX -aqb -aib -aic -aty -aic -awb -awX -ayh -azn -azo -azo -aCw -awX -aqg -aoT -aHW -aJm -aKI -aMr -aOa -aPF -aRt -aHW -aUE -aWA -aWA -aZB -baX -aWA -aZB -aZB -bhm -bjp -aZB -bmC -box -bqm -aBo -aCy -buc -bvE -bxp -akm -ajl -ajl -axb -akm -ajl -bKc -aip -aol -bQf -bSn -bUr -bWj -bXS -bZJ -cbA -cdn -ceS -cgp -chQ -cjl -ckP -cjl -chQ -cpg -bWj -crL -cts -cuZ -cww -cyb -czH -bWi -cCK -ceO -cFo -cGG -cHX -cHX -cHX -cHW -cOI -cQy -cML -cTB -cVm -cXc -cYF -cZR -dbj -dcJ -cOW -dad -dhq -djj -dkY -dmt -dnI -dpf -dqE -dsn -dtL -duQ -dwo -dxx -dyy -dzN -dBk -dCw -dDT -dms -dFT -dHw -dIh -dIK -dJD -dKz -dLw -dJw -dNB -dIK -dPg -dPV -dQN -dRJ -dSA -dIK -dTM -dUt -dVb -dVF -dWn -dWP -dWP -dYj -dYS -dZC -aaf -aaf -aaa -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(123,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aiY -aka -alb -amb -anl -aoj -aiX -aqc -aib -asz -aic -auT -awc -awX -ayb -azn -azo -azn -aCx -aDQ -aqg -aGJ -aHW -aJn -aKJ -aMs -aOb -aPG -aRu -aHW -aUF -aWB -aWB -aWB -aWB -aWB -aWB -aWB -aWB -aWB -aWB -aWB -boy -boy -boy -boy -boy -bvF -bxq -bzi -bzi -bzi -bzi -bzi -bzi -bzi -bzi -bzi -bQg -bSo -bUt -bWi -bXT -bZK -cbB -cdo -ceS -cgq -chQ -cjl -ckP -cjl -chQ -cpg -bWi -crM -ctt -cva -cwx -cyc -czI -bWi -cCL -ceO -cFm -cGG -cHX -cJI -cLo -cMY -cOJ -cQF -cRV -cTI -cVn -cXd -cYG -cZS -dbk -cLI -deu -dgf -dhr -djk -dkZ -dmu -dnJ -dnJ -dqF -dso -dtM -duR -dwp -dxy -dyz -dzO -dBl -dCx -dDU -dms -dFU -dHw -dIi -dIK -dIK -dIK -dIK -dIK -dNC -dIK -dPh -dMA -dQO -dRK -dSB -dIK -dIi -dUq -dUX -dSC -dWq -dWS -dSC -dYk -dYT -dZC -aaf -agg -aaf -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(124,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaf -aaf -aaf -aaf -aaf -aaf -aaf -aax -ach -aax -aaf -aaa -aaa -aaf -aax -ach -aax -aaf -aaf -aaf -aaf -aaf -aax -aax -aax -aax -aaa -aiY -aiY -aiY -aiY -aiX -aiX -aiX -aqc -aib -aib -aro -aib -aib -awX -ayi -azo -aAm -azn -aCp -awX -aFm -aGJ -aHW -aJo -aKK -aMt -aNZ -aPH -aJm -aHW -aUG -aWB -aYd -aZC -baY -aWB -bdG -bfz -bhn -bjq -bkG -bmD -boz -bjq -brC -bsN -aWB -aqu -bxr -bzj -bAR -bCA -bEn -bGi -bIa -bKd -bMd -bzr -bQh -bSm -bUv -bWi -bWi -bWi -bWi -cdp -ceS -cgp -chQ -chQ -ckP -chQ -chQ -cph -cqD -crN -ctu -cvb -cwy -cyd -czJ -bWi -cCN -bWg -cFp -cGG -cIb -cJJ -cLp -cMZ -cOK -cQG -cRW -cTJ -cVo -cXe -cOK -cZT -dbk -cLH -dev -dgg -dhs -djl -dla -dmv -dnK -dpg -dqG -dsp -dtN -duS -dwq -dxz -dyA -dxz -dxz -dCy -dDV -dEE -dFV -dHx -dIi -dIO -dJE -dFW -dLx -dIK -dIK -dIK -dIK -dIK -dIK -dIK -dIK -dIK -dTM -dUo -dVc -dVJ -dWr -dWT -dXs -dYl -dYU -dUW -aaf -agg -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(125,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaf -aaa -aaa -aaf -aaa -aaa -aaf -aaa -aax -aci -aax -aax -aax -aax -aax -aax -aci -aax -aaa -aaf -aaa -aaa -aaa -aax -agh -agJ -aax -aaf -aaf -aaf -aaf -aaf -aaf -aok -aoP -aqd -aib -asA -atz -auU -awd -awX -awX -awX -awX -awX -awX -awX -aFm -aoT -aHW -aHW -aHW -aHW -aNW -aPI -aHW -aHW -aUH -aWC -aYe -aZD -baZ -bct -bdH -bfA -bho -bho -bho -bho -bho -bho -brD -bsO -aWB -bvG -bxr -bzk -bAS -bCB -bCB -bCB -bCB -bKe -bMe -bAZ -bQd -bSn -bUr -bWi -bXU -bZL -bWi -cdq -ceS -cgp -chQ -cjm -ckP -cmk -chQ -cmk -bWi -crO -ctv -cvc -cwz -cyc -czK -bWi -cCL -ceO -cFn -cGG -cHX -cJK -cLq -cNa -cOL -cQH -cRX -cTK -cRX -cXf -cYH -cZU -dbl -dcK -dew -cIi -dht -djm -dlb -dmu -dnL -dnL -dqH -dsq -dtO -duT -dwr -dxA -dyB -dzP -dBm -dCz -dDW -dms -dFW -dHy -dIj -dIP -dJF -dKA -dLy -dMC -dIP -dOp -dPi -dPW -dQP -dRL -dQP -dTl -dTP -dUu -dFY -dFY -dFY -dFY -dFY -dFY -dFY -dFY -aaf -agg -aaf -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(126,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aax -aax -aaD -aax -aax -aaD -aax -aax -aaD -abP -aax -acj -aax -acC -acT -ack -adq -aax -ach -aax -abR -aaD -aax -aax -aaD -aaD -agi -agK -aaD -aib -aib -aib -aib -aib -aib -aib -aoQ -aqc -aro -asB -atA -auV -aib -aib -ayj -azp -aAn -aBo -aCy -aDT -aFn -aBo -aHX -aCy -aBo -aMu -aOc -aPJ -aBo -aMu -aUI -aWD -aYf -aZE -bba -bcu -bdI -bfB -bhp -bjr -bjt -bjt -boA -bjt -bbf -bsO -aWB -aqu -bxr -bzl -bAT -bCC -bEo -bCC -bCC -bKf -bIc -bAZ -bQd -bSn -bUr -bWi -bXV -bZM -cbC -cdr -ceT -cgp -chQ -cjn -ckP -cmk -cby -cmk -bWi -bWi -bWi -bWi -bWi -cye -czL -bWi -cCK -bZD -cFn -cGG -cHX -cHX -cHX -cHW -cOM -cQI -cRY -cTL -cVp -cXg -cYI -cHS -dbm -dcL -dex -dgh -dhu -djj -dkY -dmw -dnM -dph -dqI -dsr -dtP -duU -dws -dxB -dyC -dzQ -duU -dCA -dDX -dms -dFX -dHz -dIk -dIk -dJG -dKB -dLz -dMD -dND -dOq -dPj -dPX -dQQ -dFW -dSC -dTm -dSC -dSC -dTm -dVK -dFW -dWU -dXt -aaf -aaa -aaa -aaf -aaa -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(127,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aax -aaC -aaI -aaP -aaP -aba -aaP -aaP -abB -aaP -aaP -aaP -aaP -aaP -aaP -aaP -aaP -adH -adZ -adZ -adZ -aeJ -adZ -adZ -afx -afO -agj -agL -aaD -aic -aiZ -akb -aic -amc -aic -aib -aoR -aqe -arr -aoT -atB -auW -aib -awY -ayk -azq -aAo -aAo -aAo -aAo -aAo -aAo -aAo -aJp -aJp -aJp -aOd -aPK -aJp -aJp -aUJ -aWE -aYg -aZF -bbb -bcv -bdJ -bfC -bhq -bjs -bkH -bmE -boB -bqn -bbf -bsP -aWB -aqu -bxs -bzm -bAU -bCD -bEp -bEq -bIb -bKg -bMf -bOg -bQi -bSn -bUr -bWi -bXW -bZN -bWi -cds -ceS -cgp -chQ -cjo -ceS -cml -cnF -cpi -bWi -crP -ctw -cvd -bWi -cyf -czM -cBo -cCO -cDC -cFq -cGI -cjf -cHS -cHS -cHS -cON -cQJ -cRZ -cTM -cRZ -cXh -cYJ -cHS -dbn -cLI -dex -cJL -cJL -djn -dlc -dms -dms -dms -dms -dms -dms -dms -dms -dms -dms -dms -dmt -dCB -dDY -dms -dFY -dFY -dFY -dFY -dJH -dKC -dLA -dME -dNE -dNE -dNE -dNE -dNE -dNE -dNE -dNE -dFX -dFW -dFW -dFW -dQQ -dHs -dXt -aaf -aaf -aaf -aaf -aaf -aaf -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(128,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aax -aaC -aaJ -aaQ -aaQ -aba -aaQ -aaQ -abC -abQ -abQ -abQ -abQ -abQ -abQ -abQ -abQ -adI -abQ -abQ -abQ -aeK -abQ -afl -afy -afP -agk -agM -aht -aid -aja -akc -alc -amd -anm -aol -aip -aqf -aib -asC -atC -auX -aib -awZ -ayl -azr -aAp -aBp -aCz -aAu -aFo -aGK -aHY -aJq -aKL -aMv -aOe -aPL -aRv -aJq -aUK -aWF -aYh -aZG -bbc -aWB -bdK -bfD -bhr -bjt -bkI -bmF -bjt -bqo -bbf -bsQ -aWB -bvH -bxt -bzn -bAV -bCC -bEq -bGj -bCC -bGk -bGl -bOh -bQd -bSn -bUw -bWi -bWi -bWi -bWi -cdt -ceS -cgr -chR -cjp -ckQ -cmm -cnG -cpj -cqE -crQ -ctx -cve -bWi -cyg -bXM -bXM -cCP -bXM -cFr -cGJ -cIc -cJL -cLr -cHS -cHS -cHS -cHS -cHS -cHS -cHS -cHS -cHS -dbo -cLH -dex -dgi -dhv -djo -dld -dmx -dnN -dpi -dqJ -dss -dtQ -duV -dwt -dxC -dyD -dzR -dBn -dCC -dDZ -dEF -dFZ -dFZ -dIl -dIQ -dJI -dKD -dLB -dME -dNF -dOr -dNF -dPY -dNF -dRM -dSD -dNE -dTQ -dTQ -dTQ -dTQ -dTQ -dNE -dNE -dNE -dNE -dZD -dNE -dNE -aaf -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(129,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aax -aax -aaD -aax -aax -aaD -aax -aax -aaD -aax -aax -aax -aax -acD -acU -acW -adr -aax -aax -aax -aax -aaD -aax -aax -aaD -aaD -agl -agN -aaD -aie -ajb -akd -ald -ame -ann -aib -aoS -aqg -aib -asD -atD -auY -aib -aoT -aym -azr -aAq -aBq -aCA -aAu -aFp -aGL -aHZ -aJq -aKM -aMw -aOf -aPM -aRw -aJq -aqg -aWF -aYi -aZH -bbd -aWB -bdL -bfD -bhs -bju -bkJ -bjt -bjt -bjr -bbf -bsO -aWB -aUK -bxr -bzo -bAW -bCC -bEr -bCC -bCC -bKf -bCF -bAZ -bQj -bSq -bUr -bWi -bXU -bZL -bWi -cdu -ceS -cgp -chQ -cjq -ckR -cmn -cnH -bXR -cqF -crR -cty -cvf -bWi -cyh -czN -cBp -cCQ -bZC -cFs -cGK -cId -cJM -cLs -cLs -cOO -cOO -cLs -cTN -cLs -cLs -cLs -cZV -dbp -dcM -dey -dgj -dhw -djp -dle -dmy -dnO -dnO -dqK -dnO -dnO -duW -dwu -dxD -dyE -dzS -dBo -dCD -dEa -dEF -dFZ -dFZ -dIl -dIQ -dJJ -dKE -dLC -dMF -dNG -dOs -dPk -dPZ -dQR -dRN -dSE -dTn -dTR -dUv -dVd -dVL -dWs -dNE -dXu -dNE -dYV -dZE -eah -dNE -aaf -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(130,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaf -aaa -aaa -aaf -aaa -aaa -aaf -aaa -aaa -aaf -aax -aax -aax -aax -aax -aax -aaf -aaa -aaa -aaf -aaa -aaa -aaa -aaD -agm -agO -ahu -ahu -ahu -ahu -ahu -ahu -ahu -ahu -aoT -aqb -aib -aib -atE -aib -aoQ -axa -ayn -azr -aAr -aBr -aCB -aAu -aFq -aGM -aIa -aJq -aKN -aMx -aOg -aPN -aRx -aJq -aqb -aWF -aYj -aZI -bbe -aWB -bdM -bfE -bht -bjv -bjv -bjv -bjv -bjv -brE -bsO -aWB -aqc -bxr -bzp -bAX -bCE -bEs -bGk -bCE -bKh -bMg -bAZ -bQd -bSn -bUr -bWi -bXV -bZM -cbC -cdr -ceT -cgp -chS -cjr -ckS -cmo -ckS -cpk -cqD -crS -ctz -cvg -bWi -bZC -czO -bZD -cCR -cDD -cFt -cGL -cwn -cJN -cLt -cNb -cOP -cQK -cLI -cLH -cLI -cLH -cLI -cZW -dbq -dcN -dez -dgk -dhx -djq -dlf -dmz -dnP -dpj -dqL -dst -dtR -duX -dwv -dxE -dyF -dzT -dBp -dCE -dEb -dEb -dEb -dHA -dIm -dIQ -dJK -dKF -dLD -dMG -dNH -dOt -dPl -dQa -dQS -dRO -dSF -dTo -dTS -dUw -dVe -dVM -dWt -dWV -dXv -dWV -dYW -dZF -eai -dZD -aaf -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(131,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaf -aaf -aaf -aaf -aaf -aaf -aaf -aaf -aaf -aaf -aaa -aaa -aaa -aaa -aaf -aaf -aaf -aaf -aaf -aaf -aaf -aaf -aax -agl -agP -ahu -aif -ajc -ake -ale -amf -aif -ahu -aic -aqg -ars -ars -atF -aoT -ast -aic -ayo -azr -aAs -aBs -aCC -aAu -aFr -aGN -aIb -aJq -aKO -aMw -aOh -aPM -aRy -aJq -aqc -aWF -aYk -aZG -bbf -aWB -bdN -bfF -bhu -bjw -bkK -bmG -bmG -bqp -brF -bsR -aWB -aqg -bxr -bzq -bAY -bCF -bEt -bGl -bIc -bKi -bMh -bMi -bQe -bSn -bUr -bWi -bXW -bZN -bWi -cdv -ceS -cgp -chT -cjs -ckT -cmp -cnI -cpl -bWi -crT -ctA -cvh -bWi -cyi -czP -ceO -czP -cDE -cFu -cGM -cIe -cJO -cLu -cNc -cOQ -cQL -cSa -cNc -cNc -cNc -cYK -cZX -dbr -dcO -deA -dgl -dgm -djr -dlg -dgm -dgp -dgm -dgp -dgm -dgm -dgm -dgm -dgm -dyG -dzU -dBq -dCF -dEc -dEG -dGa -dHB -dHB -dIQ -dJL -dKG -dLE -dMH -dNI -dNI -dPm -dPm -dNI -dNI -dNI -dNI -dNI -dNI -dNI -dNI -dNI -dNI -dNI -dNE -dYX -dZG -eaj -dZD -aaa -aaf -aaa -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(132,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaH -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaD -agn -agN -ahu -aig -ajd -akf -akk -ajd -ano -ahu -aoU -aqh -ajl -asE -atG -auZ -ajl -axb -ayp -azs -aAt -aBs -aCD -aAu -aFs -aGN -aIc -aJq -aKP -aMy -aOi -aPO -aRz -aJq -aUL -aWF -aYl -aZJ -bbg -aWB -bdO -bfG -bhv -aWB -bkL -bmH -boC -bct -brG -aWB -aWB -bvI -bxr -bzr -bAZ -bAZ -bEu -bGm -bAZ -bAZ -bMi -bOi -bQk -bSr -bUx -bWm -bWi -bWi -bWi -bWj -ceU -cgs -bWj -bWi -bWi -bWi -bWi -bWi -bWi -bWi -bWi -bWi -bWi -bWg -bWg -bWg -bWg -cDF -cFv -cGN -bWg -cJP -cLv -cNd -cOR -cQM -cLv -cLv -cVq -cQQ -cLv -cZY -dbs -dcP -deB -dgm -dhy -djs -dlh -dmA -dnQ -dpk -dqM -dsu -dtS -duY -dww -dgm -dyH -dzV -dBr -dCG -dEd -dEH -dGa -dGa -dGa -dIQ -dFX -dKH -dLB -dIh -dNI -dOu -dPn -dPn -dQT -dRP -dSG -dTp -dTT -dUx -dQV -dVN -dWu -dWW -dXw -dNE -dYY -dZH -eak -dZD -aaf -agg -aaa -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(133,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaH -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aax -agl -agN -ahv -aih -aje -akg -alf -amg -anp -ahu -aoV -aqi -art -art -art -art -art -art -ayo -azr -aAu -aBt -aCE -aAu -aAu -aGO -aCE -aJq -aJq -aMz -aOj -aPP -aJq -aJq -aUM -aCE -aAu -aZK -bbh -aAu -bdP -bfH -bhw -bjx -bkM -bmI -bmI -bqq -brH -brH -bud -bvJ -bxu -bmI -bBa -bBa -bEv -bBa -bBa -bBa -bMj -bqq -bvJ -bSs -bUy -brN -bXX -brN -cbD -brN -ceV -bUy -brN -brN -brN -bqq -brN -bsZ -brN -brN -ctB -brN -brN -brN -brN -brN -brN -ceV -cFw -cGO -brK -cJP -cLw -cNe -cOS -cQN -cSb -cTO -cVr -cXi -cTO -cZZ -cNp -cLE -dez -dgn -dhz -djt -dli -dmB -dnR -dpl -dqN -dsv -dtT -duZ -dwx -dgm -dyI -dyI -dyI -dyI -dyI -cJL -cJL -cJL -cJL -cJL -dac -dac -dLA -dMI -dNI -dOv -dPn -dQb -dQU -dRQ -dSH -dRQ -dTU -dUy -dVf -dVO -dWv -dNI -dOD -dNE -dYZ -dZI -eal -dNE -aaf -agg -aaf -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(134,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaH -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aax -agl -agN -ahu -aii -ajf -ajj -ajj -ajd -anq -ahu -aoW -aqj -art -asF -atH -ava -awe -axc -ayq -azt -aAv -aBu -aCF -aDU -aFt -aGP -aId -aJr -aKQ -aMA -aOk -aPQ -aKQ -aTh -aUN -aWG -aYm -aZL -bbi -bcw -bdQ -bfI -bhx -bjy -bkN -bmJ -boD -bqr -brI -brI -brI -bvK -brI -bzs -brO -bCG -brO -brO -brO -brO -brO -bqv -bQl -bSt -brO -brO -bXY -brO -brO -brO -bBy -brO -brO -brO -brO -bqv -cnJ -cpm -brO -brO -brO -brO -brO -brO -brO -brO -brO -cDG -cFx -boR -cIf -cJP -cLx -cNf -cOT -cQO -cSc -cTP -cVs -cXj -cYL -daa -dbt -cLD -dez -dgo -dhA -dju -dlj -dmC -dnS -dpm -dqO -dsw -dtU -dva -dwy -dgm -dyJ -dzW -dBs -dCH -dEe -cJL -dGb -dcK -dIn -dIR -dJM -dac -dLF -dMJ -dNI -dOw -dPn -dQc -dQV -dRP -dSI -dRP -dTV -dUz -dVg -dVP -dPn -dNI -dXx -dNE -dNE -dZJ -dNE -dNE -aaf -aaf -aaa -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(135,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaH -aaf -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aax -agl -agN -ahu -aij -ajf -ajd -ajd -amf -anr -ahu -aoW -aqk -art -asG -atI -avb -awf -axd -ayr -azu -aAw -aBv -aCG -aDV -aFu -aGQ -aIe -aJs -aJs -aMB -aOl -aPR -aRA -aTi -aUO -aWH -aYn -aZM -bbj -bcx -bdR -bfJ -bhy -bjz -bkO -bmK -boE -bqs -brJ -brJ -brJ -bvL -bxv -bzt -bBb -bCH -bEw -bGn -bGn -bGn -bGn -bOj -bQm -bSu -bUz -bUz -bXZ -bZO -bUz -bUz -ceW -bEw -chU -bGn -bGn -bOj -cnK -cpn -bnd -crU -bnd -cvi -bnd -bnd -bnd -bnd -bnd -cDH -bmX -cGP -cIg -cJP -cLy -cNg -cOU -cQP -cSd -cTQ -cVt -cXk -cVu -dab -dbo -cLE -dez -dgp -dhB -djv -dlk -dmD -dnT -dpn -dqP -dsx -dtV -dvb -dwz -dxF -dyK -dzX -dBt -dCI -dEf -cJL -dac -dHC -dIo -dac -dac -dac -dLG -dMK -dNI -dOx -dPn -dQc -dQU -dRQ -dSH -dTq -dTU -dUA -dVg -dPn -dWw -dNI -dXy -dNE -dZa -dZK -eam -dNE -aaf -agg -aaf -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -eaY -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(136,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaH -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aax -agl -agQ -ahw -aik -ajg -akh -alg -akh -ans -ahu -aoV -aql -art -asH -atJ -avc -awg -art -ays -azv -aAx -aAx -aCH -aDW -aBB -aAx -aAx -aHb -aKR -aHb -aOm -aPS -aKR -aHb -aUP -aUP -aYo -aZN -aUP -aUP -bdS -bfK -bhz -aYx -bkP -bmL -boF -boZ -brK -brM -brM -bsV -bxw -bzu -bBc -bCI -bEx -bEx -bId -bKj -bMk -bEx -bQn -bSv -bUA -bqt -bqt -bZP -bqt -cdw -bqu -bQn -bQn -bQn -bQn -cmq -cnL -cpo -cqG -cqH -cqH -cqH -cwA -cqH -cqH -cqH -cCS -bkS -bmZ -boJ -cIh -cJP -cJP -cNd -cOV -cQQ -cJP -cJP -cVu -cXl -cLv -dac -dbu -dcQ -deA -dgq -dhC -djw -dll -dmE -dnU -dpo -dqQ -dsu -dtW -dvc -dwA -dgm -dyL -dzY -dBu -dCJ -dEg -cJL -dGc -dHD -dIp -dIS -dJN -cJM -dLH -dML -dNJ -dOy -dPo -dQd -dPo -dPo -dPo -dPo -dTW -dUB -dVh -dVQ -dWx -dNI -dXz -dYm -dZb -dZL -ean -dZD -aaf -agg -aaa -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(137,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaH -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aax -ago -agM -ahx -ail -ajh -aki -alh -amh -ant -ahu -aoX -aqm -art -asI -atK -avd -awh -axe -ayt -aqg -aAx -aBw -aCI -aDX -aFv -aGR -aAx -aJt -aKS -aMC -aOn -aPT -aRB -aTj -aUQ -aWI -aYp -aZO -bbk -bcy -bdT -bfL -bhA -aUP -bkP -bmL -boG -boZ -brL -brL -brL -bsV -bxx -bzv -bBd -bCJ -bEx -bGo -bIe -bKk -bMl -bOk -bQn -bSw -bUB -bWn -bWn -bZQ -bWn -bWn -ceX -bQn -chV -cjt -ckU -bQn -cnM -cpp -cqH -crV -ctC -cvj -cwB -cyj -czQ -cBq -cqH -cDI -bmX -boR -cIi -cJQ -cLz -cNh -cOW -cQR -cSe -cJL -cVv -cXm -cYM -dac -dbo -cLE -dez -dgr -dhD -djx -dlm -dgm -dgm -dpp -dgm -dgl -dgm -dgm -dgm -dgm -dyM -dzZ -dyI -dyI -dyI -cJL -dGd -dHE -dIq -dIT -dJO -dKI -dLI -dMM -dNK -dOz -dPp -dQe -dQW -dRR -dSJ -dTr -dQW -dUC -dVi -dPp -dWy -dWX -dXA -dYn -dZc -dZM -eao -eas -aaa -aaf -aaa -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(138,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaH -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aax -ach -aax -aaf -aaa -aaa -aaf -aax -acj -aax -aaa -aaa -aaa -aaa -aaa -aaD -agp -agN -ahu -aim -aji -akj -ali -alg -anu -ahu -aoV -aqn -art -asJ -atL -ave -awi -axf -ayu -aqc -aAx -aBx -aCJ -aDY -aFw -aGS -aAx -aJu -aKT -aKT -aOo -aPU -aKT -aTk -aUP -aWJ -aYq -aZP -bbl -aUP -aZV -bfM -bhB -aUP -bkP -bmL -boH -bqt -aaa -aaf -aaa -bsV -bxy -bzw -bBe -bCK -bEx -bGp -bIf -bKl -bIf -bOl -bQn -bQn -bUC -bWo -bYa -bWo -cbE -bWo -bQn -bQn -chW -cju -ckV -bQn -cnM -cpp -cqH -crW -ctD -cvk -cwC -cwC -czR -cBr -cqH -blb -bmX -cGQ -cIj -cJR -cLA -cLB -cOX -cQS -cSf -cTR -cVw -cXn -cYN -cTR -dbv -dcR -deC -dgs -dgs -djy -dln -dmF -dgs -dpq -dgs -cZX -dgs -dgs -dgs -dxG -djy -dAa -dpq -dCK -dEh -cJO -dGe -dHF -dIr -dIU -dJP -cJO -dLJ -dIi -dNI -dOA -dPn -dQf -dQU -dRQ -dSH -dRQ -dQU -dTq -dVg -dVP -dQc -dNI -dXB -dYo -dZd -dZN -eap -eas -aaa -aaf -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(139,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaf -aaf -aaf -aaf -aaf -aaf -aaf -aax -aci -aax -aaf -aaf -aaf -aaf -aax -aci -aax -aaf -aaf -aaf -aaf -aaf -aax -agl -agN -ahy -ain -ajj -akk -ali -akh -anv -ahu -aoV -aqj -art -asK -atM -avf -awj -art -ayv -aqb -aAx -aBy -aCK -aDZ -aFx -aGT -aAx -aJv -aKU -aMD -aOp -aPV -aRC -aTl -aUP -aWK -aYr -aZQ -bbm -bcz -bdU -bfN -bhC -aUP -bkP -bmL -boH -bqt -aaa -aaf -aaa -bsV -bxw -bzx -bBf -bCL -bEx -bGq -bIg -bKm -bMm -bOm -bQn -bSx -bUD -bWp -bYb -bZR -cbF -cdx -ceY -bZU -bZU -cjv -ckW -bQn -cnM -cpq -cqI -crX -ctE -cvl -cvl -cvl -czS -cBs -cqH -cDJ -bmX -cGR -cIk -cJS -cLB -cNi -cOY -cLI -cOW -cTS -cVx -cXo -cYO -cKc -dbw -dcM -deD -cLA -cLB -djz -dlo -dmG -dnV -dpr -dqR -dsy -dqR -dmG -dqR -dpr -dqR -dAb -dBv -dCL -dEi -dEI -dGf -dHG -dIs -dIV -dJQ -dac -dLK -dIi -dNI -dOB -dPq -dQg -dQX -dRS -dSK -dRS -dQX -dUD -dQX -dVR -dWz -dWY -dXC -dYp -dZe -dZO -eap -eas -aaf -agg -aaa -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(140,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaf -aaa -aaa -aaf -aaa -aaa -aaf -aaa -aax -ack -aax -aax -aax -aax -aax -aax -ack -aax -aaa -aaf -aaa -aaa -aaa -aaD -ago -agR -ahu -aio -ajk -akl -alj -ami -anw -ahu -aoY -aqo -art -art -art -art -art -art -ayw -aqb -aAx -aBz -aCL -aEa -aFw -aGU -aAx -aJw -aKV -aME -aOq -aPW -aKV -aTm -aUP -aWL -aYs -aZR -bbn -aUP -aZV -bfO -bhD -aUP -bkP -bmL -boH -bqt -aaa -aaf -aaa -bsV -bxz -bzy -bBg -bCM -bEy -bGr -bIh -bKn -bMn -bMs -bQn -bSy -bUE -bWq -bUE -bWq -bUE -cdy -ceZ -cgt -chX -cjw -ckX -bQn -cnM -cpp -cqH -crY -ctF -cvm -cvm -cvm -czT -cBt -cCT -cDK -bmY -cGS -cIk -cJS -cLC -cNj -cOZ -cQT -cSg -cTT -cVy -cXp -cYP -cTT -dbx -dcS -deE -dgt -dhE -djA -dlp -dmH -dlp -dps -dqS -dsz -dmH -dmH -dwB -dxH -dhE -dAc -dhE -dCM -dhE -cJM -dGg -dHH -dIt -dIW -dJR -dac -dLL -dMN -dNI -dOC -dPr -dPn -dQY -dRT -dSH -dTs -dTX -dTq -dQU -dVS -dOx -dNI -dXD -dYq -dZf -dZP -eaq -dNE -aaf -agg -aaf -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(141,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aay -aaD -aaD -aaD -aaD -aaD -aax -aax -aaD -abR -aax -acj -aax -acE -acV -adg -adr -aax -ach -aax -abT -aaD -aax -aax -aaD -aaD -agq -agN -ahu -ahu -ahu -ahu -alk -ahu -ahu -ahu -aoV -aqp -aru -asL -atN -avg -aru -axg -ayx -azw -aAx -aBA -aCM -aEb -aFy -aGV -aAx -aJx -aKW -aMF -aMF -aMF -aMF -aTn -aUP -aWM -aYt -aZS -bbo -aUP -bdV -bfP -bhE -aUP -bkQ -bmL -boI -boZ -aaf -aaf -aaf -bsV -bxA -bzy -bBg -bCN -bEy -bGs -bIi -bKo -bMo -bOn -bQn -bSz -bUF -bWr -bUF -bWr -bUF -bWr -cfa -cgu -chY -cjx -ckY -cmr -cnN -cpr -cqH -crZ -ctG -cvn -cwD -cyk -czU -cBu -cCU -cDL -bmX -boR -cIi -cJT -cLD -cNk -cPa -cLI -cSh -cTU -cVz -cXq -cYQ -dad -cNp -dcT -deF -dgu -dgu -djB -dgu -dmI -dgu -dpt -dgu -dsA -dsA -dsA -dwC -dxI -dyN -dsA -dsA -dsA -dsE -cJL -dac -dac -dac -dac -dac -dac -dLM -dMH -dNI -dOD -dPs -dQh -dOD -dNI -dOD -dNI -dNI -dOD -dNI -dNI -dNI -dNI -dXE -dNE -dNE -dNE -dNE -dNE -aaf -aaf -aaa -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aad -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(142,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aad -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aas -aas -aas -aaK -aaR -aax -abb -aaP -aaP -abD -abS -aaP -aaP -acq -acF -acF -acF -acF -acF -acF -acF -acF -aeL -acF -acF -afz -afQ -agr -agS -ahz -aip -ajl -akm -all -amj -akm -aom -aoZ -aqq -aib -aib -aib -aib -aib -aib -ayy -azx -aAx -aBB -aCN -aEc -aFz -aAx -aAx -aJy -aKX -aMG -aMG -aMG -aRD -aTo -aUP -aUP -aUP -aUP -aUP -aUP -bdW -bfQ -bhF -bjA -bkP -bmL -boH -bqt -aaa -aaf -aaa -bsV -bxB -bzz -bBh -bCO -bEy -bGt -bIj -bKp -bMp -bOo -bQo -bSA -bUG -bWs -bYc -bZS -cbG -bWs -cfb -bYc -chZ -cjy -ckZ -bQn -cnM -cps -cqH -crY -ctH -cvo -cvo -cvo -czV -cBv -cCV -cDM -bmX -boR -cIi -cJU -cLE -cNk -cPa -cLH -cSi -cTV -cVA -cTW -cTW -cTW -dby -dcU -deG -dgv -dhF -djC -dlq -dlv -dnW -dpu -dqT -dsA -dtX -dvd -dwD -dxJ -dyO -dAd -dBw -dCN -dsE -dEJ -dGh -dHI -dIu -dIX -dJS -dKJ -dLN -dMO -dNL -dOE -dPt -dQi -dQi -dRU -dSL -dTt -dTY -dUE -dVj -dVT -dPA -dWZ -dXF -dYr -dZg -dZQ -aaH -aaH -aaa -aaf -aaa -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(143,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aap -aat -aaz -aaE -aaL -aaS -aaV -abc -abh -abh -abh -abh -abh -abh -acr -abh -abh -abh -abh -adJ -abh -abh -abh -abh -abh -abh -afA -aba -agl -agN -ahA -ahA -ahA -ahA -ahA -ahA -ahA -ahA -aoV -aqr -arv -asM -atO -atO -awk -axh -ayz -aqg -aAx -aBC -aCM -aEd -aFA -aGW -aIf -aGY -aGY -aGY -aGY -aGY -aGY -aTp -aUR -aWN -aUQ -aZT -bbp -bcA -aZU -bfR -bhG -bjA -bkR -bmM -boH -bqt -aaa -aaf -aaa -bsV -bxC -bzA -bBi -bCP -bEz -bGu -bIk -bKq -bMq -bOp -bQp -bSB -bUH -bWt -bWt -bZT -cbH -bWt -bWt -bWt -bWt -cjz -cla -cms -cnO -cpt -cqJ -csa -ctI -cvl -cvl -cvl -czW -cBw -cqH -cDN -bna -boR -cIl -cJV -cLF -cNl -cPa -cLI -cSj -cTW -cVB -cXr -cYR -dae -dbz -dcV -deH -dgv -dhG -djD -dlr -dmJ -dmJ -dpv -dqU -dsB -dtY -dve -dwE -dxK -dyP -dAe -dBx -dCO -dEj -dEK -dGi -dHJ -dIv -dIY -dJT -dKK -dLO -dMP -dNM -dOF -dPu -dQj -dQj -dQj -dSM -dQj -dQj -dQj -dQj -dVU -dWA -ahL -ahL -ahL -ahL -dZR -aaf -aaf -aaa -agg -aaf -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(144,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aas -aas -aas -aaK -aaT -aax -abd -aaQ -aaQ -abE -aaQ -aaQ -aaQ -aaQ -aaQ -aaQ -aaQ -aaQ -adK -aea -aea -aew -aeM -aea -aea -afB -afO -ags -agT -ahB -aiq -ajm -akn -alm -amk -anx -ahA -apa -aqs -arv -asN -atP -avh -arv -arv -ayz -aqc -aAx -aBD -aCO -aEe -aFB -aGX -aGY -aJz -aKY -aMH -aGY -aJA -aRE -aGY -aGY -aGX -aYu -aZU -aZV -aZU -aZV -bfQ -bhH -bjA -bkP -bmL -boH -bqt -aaa -aaf -aaa -bsW -bxD -bzB -bBj -bCQ -bEA -bGv -bIl -bKr -bMr -bGv -bQq -bSC -bUI -bWu -bYd -bZU -cbI -cdz -cfc -cgv -cia -cjA -clb -bQq -cnP -cpu -cqH -csb -ctJ -cvp -cwE -cyl -czX -cBx -cqH -cDO -bmX -boR -cIi -cJW -cLG -cNm -cPb -cLB -cSk -cTX -cVC -cXs -cYS -daf -dbA -cXu -deI -dgw -dhH -djE -dls -dmK -dls -dpw -dqV -dsB -dtZ -dvf -dwF -dxL -dwH -dAf -dBy -dCP -dsE -dEL -dGj -ahA -ahA -ahA -ahA -ahA -ahA -dMQ -dNN -dOG -dPv -dPx -dPx -dPx -dSN -dQo -dQo -dQo -dQo -dVV -dWB -ahN -dXG -dYs -dZh -dZR -aaf -agg -aaf -agg -aaa -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(145,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aay -aaD -aaD -aaD -aaD -aaD -aax -aax -aaD -abT -aax -acj -aax -acG -acW -acW -ads -aax -acj -aax -abR -aaD -aax -aax -aaD -afR -agl -agN -ahC -air -ajn -ako -aln -aml -any -aon -apb -aqt -arv -asO -atQ -avi -awk -axi -ayz -aqg -aAx -aBE -aCM -aEf -aFB -aGX -aGY -aGY -aKZ -aMI -aGY -aPX -aRF -aJA -aGY -aGX -aYv -aZV -bbq -bcB -bdX -bfP -bhI -aUQ -bkS -bmN -boJ -bqu -aaf -aaf -aaf -bsU -bxE -bzC -bBk -bCR -bEy -bGw -bIm -bKs -bMs -bEx -bQn -bQn -bQn -bQn -bQn -bQn -bQn -bQn -bQn -bQn -bQn -bQn -bQn -bQn -cnM -cpp -cqH -csc -ctK -cvq -cwF -cvq -czY -cBy -cqH -cDP -bmX -boR -cIi -cJX -cLH -cNk -cPa -cLI -cSl -cTW -cVD -cXt -cYT -dag -dbB -cXu -deJ -dgv -dhH -djF -dlt -dmL -dnX -dpx -dqW -dsC -dua -dvg -dwG -dxM -dyQ -dAg -dBz -dCQ -dEk -dEM -dGk -ahA -dIw -dIZ -dJU -dKL -dLP -dMQ -dNO -dOH -dPw -dQk -dQZ -dQk -dSO -dPw -dQk -dQZ -dQk -dVW -dWC -dXa -dXH -dYt -dZi -dXb -aaf -aaf -aaa -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(146,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaf -aaf -aaa -aaf -aaa -aaa -aaf -aaa -aax -aci -aax -aax -aax -aax -aax -aax -aci -aax -aaa -aaf -aaa -aaa -aaa -aaD -agl -agN -ahA -ais -ajo -akp -alo -amm -anz -ahA -apc -aqu -arv -asP -atR -avj -arv -arv -ayz -aqc -aAx -aBF -aCP -aEg -aFC -aGY -aGY -aJA -aLa -aMJ -aOr -aPY -aRG -aJA -aGY -aGY -aUP -aZW -bbr -bcC -bdY -bfS -bhJ -bjA -bkP -bmL -boH -bqt -aaa -bsS -bue -bsV -bxF -bzy -bBd -bCS -bEy -bEx -bIn -bKt -bMt -bEx -bQr -bSD -bQr -bQr -bYe -bZV -bQr -bQr -bSD -bQr -bQs -aaa -aaa -cmt -cnQ -cpp -cqH -cqH -ctL -cqH -cqH -cqH -cqH -cqH -cqH -bla -bmX -cGP -cIk -cJY -cLA -cNn -cPc -cLB -cSm -cTY -cVE -cXu -cYU -dah -dbC -dcW -deK -dgx -dhI -djG -dlt -dmM -dnX -djG -dqX -dsB -dtZ -dvg -dwH -dxN -dyR -dAh -dBA -dCR -dsE -dEN -dGl -dHK -dIx -dJa -dJV -ako -dLQ -dMR -dNO -dOI -dPx -dQl -dRa -dRV -dSP -dPx -dQl -dRa -dRV -dVX -dWB -dXb -dXI -dYu -dZj -dZS -aaa -aaf -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(147,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaf -aaf -aaf -aaf -aaf -aaf -aax -acj -aax -aaf -aaa -aaa -aaf -aax -ach -aax -aaf -aaf -aaf -aaf -aaf -aax -agl -agN -ahA -ahA -ajp -akq -alp -amn -ahA -ahB -aib -aqv -arv -arv -atS -avk -awk -axj -ayz -azy -aAx -aBG -aCM -aEf -aFB -aGX -aGY -aJA -aLb -aMK -aGY -aLa -aRH -aGY -aGY -aGZ -aYv -aZV -aZU -bcD -bdZ -bfP -bhK -bjA -bkP -bmL -boH -bqt -aaa -bsT -buf -bvM -bxG -bzy -bBd -bCN -bEB -bGx -bGx -bGx -bGx -bGx -bQs -bQr -bQr -bQr -bYf -bZW -cbJ -cdA -cdA -cgw -cib -aaf -aaf -cmu -cnR -cpv -cqK -aaf -aaf -cvr -cwG -cym -czZ -cBz -cCW -blb -bmX -boR -cIm -cJZ -cLH -cNk -cPa -cLI -cSn -cTZ -cVF -cXv -cYV -cXu -dbD -cXu -deL -dgv -dhJ -djH -dlt -dmK -dnY -dpy -dqY -dsD -dub -dvh -dwI -dxO -dyS -dAh -dBB -dCS -dsE -dEO -dGm -dHL -dIy -dJb -dJW -dKM -dLR -dMS -dNO -dOI -dPx -dQm -dRb -dRV -dSP -dPx -dTZ -dRb -dVk -dVX -dWB -dXc -dXJ -dYv -dZk -dZT -aaf -aaf -aaa -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(148,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaH -aaa -aaf -aaa -aaa -abq -abU -abV -acl -abV -abW -abW -abW -abW -adL -acl -abV -abV -aaa -aaa -aaa -aaa -aaD -agp -agU -ahD -afO -ajq -akr -alq -amo -amo -afO -apd -aqw -arw -arv -atT -avl -arv -arv -ayz -aqc -aAx -aBH -aCQ -aEh -aFB -aGZ -aGY -aGY -aJA -aML -aGY -aPZ -aRI -aTq -aGY -aWO -aYw -aZX -bbs -aZX -bbs -bfT -bhL -bjA -bkP -bmO -boH -bqt -aaa -bsT -bug -bvN -bvP -bzy -bBl -bCT -bEC -bGx -bIo -bKu -bMu -bOq -bQt -bSE -bUJ -bWv -bYg -bZX -cbK -cdB -cfd -cgx -bQs -aaa -aaa -cmt -cnM -cpw -cmt -csd -cqK -cvs -cwH -cyn -cAa -cBA -cCX -blb -cFy -boR -cIi -cKa -cLI -cNo -cPd -cLH -cSo -cUa -cVG -cXw -cYW -dai -dbE -dcX -deM -dgv -dhK -djI -dlu -djI -djI -djI -dqZ -dsB -duc -dvi -dwJ -dxP -dyT -dAi -dBC -dCT -dsE -dEP -dGn -ahA -dIz -dJc -dJX -dKN -dLS -dMT -dNO -dOI -dPx -dQl -dRc -dRV -dSP -dPx -dQl -dRc -dRV -dVX -dWD -dXd -dXK -dYw -dZl -dZR -aaf -agg -aaf -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(149,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaH -aaa -aaf -aaa -abp -abq -abV -abY -acm -acs -acH -acH -acH -acH -adM -acm -aei -abV -aaa -aaa -aaa -aaa -aax -ago -agV -ahE -afP -ahE -ahE -ahE -amp -ahE -afP -ahE -aqx -arx -asQ -atU -avm -awl -axk -ayz -aqe -aAx -aBI -aCR -aEi -aFB -aHa -aIg -aGY -aGY -aMM -aGY -aQa -aGY -aGY -aUS -aWP -aUQ -aZY -aZX -bbs -aZX -bfU -bhM -aYx -bkP -bmP -boK -bqt -aaa -bsU -buh -bvO -bxH -bzD -bBm -bCU -bED -bGx -bIp -bKv -bMv -bOr -bQu -bSE -bUK -bWw -bYh -bZY -cbK -cdC -cfe -bQr -bQs -cjB -cjB -cmt -cnS -cpx -cqL -cse -ctM -cvt -cwI -cyo -cwI -cwI -cCY -cDQ -cFz -boS -cIi -cKb -cLJ -cNp -cPe -cQU -cSp -cTW -cVH -cXx -cYX -cTW -dbF -dcY -dbF -dgv -dhL -djJ -dlv -dmN -dlv -dpz -dra -dsE -dsB -dvj -dsB -dsE -dyU -dAj -dBD -dCU -dsE -dEQ -dGo -ahA -ahA -dJd -dJY -dKO -ahA -dMQ -dNP -dOJ -dPx -dQn -dRd -dRW -dSP -dTu -dUa -dRd -dVl -dVX -dWB -dXe -dXL -dYx -dZm -dZR -aaf -agg -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(150,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaH -aaa -aaf -aaa -abp -abF -abW -abZ -acn -acn -acn -acn -acn -acn -acn -acn -aej -abV -abV -abW -abV -aaa -aax -agt -agW -ahF -ait -ajr -aks -alr -amq -anA -aiu -ape -aqy -ary -asR -arv -arv -arv -arv -ayz -azz -aAx -aAx -aAx -aAx -aFD -aHb -aHb -aJB -aJB -aMN -aOs -aQb -aJB -aJB -aHb -aHb -aYx -aUP -bbt -bbt -bbt -bfV -aUP -bjB -bkP -bmQ -boL -boZ -aaf -bsV -bui -bvP -bvP -bzE -bBn -bCV -bEE -bGy -bIq -bKw -bMw -bOs -bQu -bSF -bUL -bWx -bYh -bZZ -cbK -cbK -cbK -bQr -bQu -cjC -clc -cmt -cnM -cpy -cqM -csf -ctN -cvr -cwJ -cyp -cAb -cBB -cvs -cDR -cFA -cGT -cIn -cKc -cIi -cNq -cPf -cIi -cKc -cUb -cTY -cTW -cTY -cTV -dbG -dcZ -deN -dgv -dgv -dgv -dlw -dmO -dmO -dmI -dgv -dsE -dbG -dcZ -deN -dsE -dsE -dsE -dsE -dsE -dsE -dER -dGp -dgB -dIA -dJe -dJZ -dKP -dLT -dMU -dNO -dOK -dPx -dQl -dRa -dRV -dSP -dPx -dQl -dRa -dRV -dVX -dWE -ahL -dXk -dYy -dXk -dZR -aaf -agg -aaa -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(151,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaH -aaa -aaf -aaa -abp -abF -abW -aca -acn -acn -acI -acI -acI -acI -adN -acn -aek -aex -aeN -aeV -abW -aaa -aax -agl -agX -ahG -aax -ajs -akt -akt -amr -anB -aaD -apf -aqz -arz -asS -atV -avn -awm -awm -ayA -azA -aAy -aBJ -awm -awm -aFE -awm -awm -awm -awm -aMO -awm -ayA -awm -awm -aUT -aWQ -aYy -awm -awm -awm -bea -bfW -awm -bjC -bkT -bmR -boM -bqt -aaa -bsW -buj -bvQ -bvP -bzF -bBo -bCW -bEF -bGx -bIr -bKx -bMx -bOt -bQv -bQv -bQv -bWy -bYi -caa -cbL -cdD -bQv -bQv -bQv -cjD -cld -cmv -cnP -cpz -cqN -csg -ctN -cvs -cwK -cyq -cAc -cBC -cCW -cDS -cFB -cGU -cIo -cKd -cKd -cNr -cPg -cKd -cKd -cUc -cVI -cVI -cVI -cVI -cVI -cVI -cVI -dgy -cUc -djK -dlx -dmP -dmP -dpA -drb -dgy -dud -cVI -cVI -cUc -cKd -cKd -cKd -cKd -cKd -cPg -dGq -dHM -dIB -dJf -dJf -dKQ -dLU -dMV -dNQ -dOL -dPy -dQm -dRb -dRX -dSP -dPx -dQl -dRb -dVk -dVX -dWB -dXb -dXM -dYz -dZn -dZR -aaf -agg -aaf -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(152,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaH -aaf -aaf -aaa -abq -abq -abU -acb -acn -act -acJ -acX -adh -adt -acJ -aeb -ael -aey -aeO -aeW -abW -aaa -aax -agl -agY -ahH -aax -ajt -aku -als -ams -anC -aaD -apg -aqA -agX -asT -atW -avo -awn -axl -axl -azB -axl -aBK -axl -axl -aFF -axl -axl -axl -axl -aMP -aOt -aQc -aRJ -aTr -aUU -axl -aYz -axl -axl -bcE -beb -bfX -axl -bjD -bkU -bmS -boN -bqt -aaa -bsX -buk -bvR -bxI -bzG -bBp -bCX -bEG -bGz -bIs -bKy -bMy -bMy -bQw -bSG -bUM -bWz -bYj -cab -cbM -cdE -cff -cgy -cic -cjE -cle -cmw -cnT -cpA -cqO -csh -ctO -cvs -cwL -cyr -cAd -cBD -cCW -cDT -cFC -cGV -cIp -cKe -cKe -cNs -cPh -cKe -cKe -cKe -cVJ -cKe -cKe -cKe -cKe -cKe -cKe -dgz -cKe -cKe -dly -cKe -cKe -cKe -drc -dgz -cKe -cKe -cKe -cKe -dyV -cKe -cKe -cKe -cKe -dES -dGr -dHN -dIC -cKe -dKa -dKR -dLV -dMW -dNO -dOM -dOK -dQl -dRc -dRV -dSP -dPx -dQl -dRc -dRV -dVY -dWF -dXf -dXN -dYA -dZo -dXb -aaf -aaf -aaa -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(153,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aac -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaH -aaa -aaf -aaa -abp -abF -abW -acc -acn -acn -acH -acH -acH -acH -adO -acn -aem -aez -aeP -aeV -abW -aaa -aax -agl -agX -ahI -aax -aju -akv -akt -akt -anD -aaD -aph -aqB -arA -asU -atX -avp -awo -axm -axm -azC -aAz -aBL -aCS -aEj -aEj -aCS -aIh -aJC -axm -aMQ -axm -axm -aRK -aTs -aUV -axm -aYA -axm -bbu -bcF -bec -bbu -bhN -asU -bkV -bmT -boO -bqt -aaa -bsY -bul -bvQ -bvP -bzE -bBq -bCY -bEH -bGx -bIt -bKz -bMz -bOu -bQx -bQx -bQx -bWA -bYk -cac -bUL -cdF -bQu -bQu -bQu -cjF -clf -cmt -cnU -cpB -cqP -csi -ctP -cvs -cwM -cys -cAe -cBE -cCW -cDU -cFD -cGW -cIq -cKf -cKf -cNt -cPi -cQV -cSq -cUd -cVK -cXy -cYY -cYY -dbH -cYY -cYY -dgA -cSq -djL -cSq -dmQ -dnZ -dpB -drd -dsF -due -dpB -cSq -dxQ -dyW -dAk -cSq -cSq -dEl -dET -dGs -dHO -dID -dJg -dKb -dKb -dLW -dMV -dNQ -dON -dPz -dQo -dQo -dQo -dSQ -dPx -dPx -dUF -dPx -dVZ -dWB -dXg -dXO -dYB -dZp -dZS -aaa -aaf -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(154,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaH -aaa -aaf -aaa -abp -abF -abW -abZ -acn -acn -acn -acn -acn -acn -acn -acn -aej -abV -abV -abW -abV -aaa -aax -agl -agX -ahJ -aiu -ajv -akw -alr -amt -anE -ait -api -aqy -arB -asV -asW -avq -asW -asW -asW -asW -asW -aBM -aCT -aEk -aEk -aHc -aEk -aBM -aBM -aBM -aBM -aBM -aRL -aTt -aEk -aBM -aBM -aZZ -bbv -bcG -bed -bbv -bhO -bjE -bkW -bmU -boP -boZ -aaf -bsV -bum -bvP -bvP -bzE -bBr -bCZ -bEI -bGA -bIu -bKA -bMw -bOv -bQu -bSH -bUL -bWx -bYh -cad -cbN -cbN -cbN -bQr -bQu -cjG -clg -cmt -cnV -cpC -cqQ -csj -ctP -cvr -cwJ -cyt -cAf -cBF -cvs -cDV -cFE -cGX -cIr -cIw -cIs -cNu -cPj -cQW -cIw -cKs -cVL -cXz -cVL -daj -dbI -dda -deO -dgB -dgB -djM -dgB -dgB -doa -doa -dre -doa -dcZ -dbG -dwK -dwK -dwK -dAl -dwK -dwK -dwK -dEU -dGt -dgB -dIE -dJh -dKc -dJh -dLX -dMX -dNR -dOO -dOO -dOO -dOO -dOO -dOO -dOO -dOO -dOO -dOO -dOO -dWG -dXh -dXP -dYC -dZq -dZT -aaf -aaf -aaa -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(155,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaH -aaa -aaf -aaa -abp -abq -abV -abY -aco -acu -acI -acI -acI -acI -adP -aco -aen -abV -aaa -aaa -aaa -aaa -aax -ago -agV -ahE -afP -ahE -akx -ahE -ahE -ahE -afP -ahE -aqC -arB -asW -atY -avr -awp -axn -ayB -azD -aAA -aBM -aCU -aEk -aFG -aHd -aIi -aJD -aLc -aMR -aBM -aQd -aRM -aTu -aUW -aWR -aBM -baa -bbw -bcH -bee -bfY -bhP -bbv -bkW -bmV -boQ -bqt -aaa -bsS -bun -bvO -bxJ -bzH -bBs -bDa -bEJ -bGx -bIv -bKB -bMA -bOw -bQu -bSE -bUN -bWB -bYh -bZY -cbN -cdG -cfg -bQr -bQs -cjB -cjB -cmt -cnW -cpD -cqR -csk -ctQ -cvu -cwN -cyu -cwN -cwN -cvu -cDW -cFF -cGY -cIs -cKg -cLK -cNv -cPk -cQX -cSr -cKs -cVM -cXA -cYZ -cXz -dbJ -ddb -cVL -dgB -dhM -djN -dlz -dmR -doa -dpC -drf -doa -duf -dvk -dwK -dxR -dyX -dAm -dBE -dCV -dwK -dEV -dGu -dgB -dgB -dJi -dJi -dJi -dgB -dMQ -dNS -dOP -dPA -dPA -dPA -dPA -dPA -dPA -dPA -dUG -dPA -dPA -dPA -dXi -dXQ -dYD -dZr -dZR -aaf -agg -aaf -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(156,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaH -aaa -aaf -aaa -aaa -abq -abU -abV -acl -abV -abW -abW -abW -abW -adL -acl -abV -abV -aaa -aaa -aaa -aaa -aaD -agu -agZ -ahK -afO -ajw -aky -alt -amo -amo -afO -apj -aqD -arC -asW -asW -asW -asW -asW -asW -azE -asW -aBM -aCV -aEl -aFH -aHe -aIj -aJE -aLd -aMS -aEk -aQe -aRN -aTv -aUX -aWS -aYB -bab -bbx -bcI -bef -bbz -bhQ -bbv -bkW -bmW -boR -bqt -aaa -bsT -buo -bvS -bvP -bzy -bBt -bDb -bEK -bGx -bIw -bKC -bMB -bOx -bQs -bSE -bUO -bWC -bYl -cae -cbN -cdH -cfh -cgx -bQs -aaa -aaa -cmt -cnV -cpE -cmt -csl -cqK -cvs -cwH -cyv -cAa -cBG -cCX -bkP -bmW -cGY -cIs -cKh -cLL -cNw -cPl -cQY -cSs -cUe -cVN -cXB -cZa -dak -dbK -ddc -deP -dgB -dhN -djO -dlA -dhO -doa -dpD -drg -dsG -dug -dvl -dwK -dxS -dyY -dAn -dBF -dyY -dwK -dEW -dGv -dHP -aaa -aaf -aaa -aaf -aaa -dMY -dMY -dMY -dMY -dMY -dRe -dRY -dRe -dMY -dMY -dUH -dMY -dMY -dRe -dXj -dXR -dYE -dZs -dZU -aaf -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(157,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaf -aaf -aaf -aaf -aaf -aaf -aax -ach -aax -aaf -aaa -aaa -aaf -aax -ach -aax -aaf -aaf -aaf -aaf -aaf -aax -agl -agN -ahL -ahL -ajx -akz -alu -amu -ahL -ahN -aeX -aqE -arD -asW -atZ -aua -awq -aua -ayC -azF -aAB -aBN -aCW -aEl -aFI -aHf -aIk -aJF -aLe -aMT -aOu -aQf -aRO -aTw -aUY -aWT -aYC -bac -bby -bcJ -beg -bfZ -bhR -bjF -bkW -bmX -boR -bqt -aaa -bsT -bup -bvT -bxK -bzy -bBd -bCN -bEB -bGx -bGx -bGx -bGx -bGx -bQs -bQr -bQr -bQr -bYm -caf -cbO -cdA -cdA -cgw -cib -aaf -aaf -cmu -cnX -cpF -cqK -aaf -aaf -cvr -cwO -cyw -cAg -cBH -cCW -bkP -bmX -cGY -cIt -cKi -cLM -cNx -cPm -cQZ -cSt -cUf -cVO -cXC -cZb -cZb -dbL -ddd -deQ -dgB -dhO -djP -dlB -dmS -dob -dpE -drh -dsH -duh -dvm -dwL -dxT -dyZ -dAo -dBG -dCW -dwK -dEX -dGw -dHP -aaf -aaf -aaf -aaf -aaf -aaf -aaf -aaf -aaf -dMY -dRf -dMY -dRf -dMY -aaf -aaf -aaf -dMY -dRf -dXk -dXS -dXk -aaf -aaf -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(158,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaf -aaf -aaa -aaf -aaa -aaa -aaf -aaa -aax -aci -aax -aax -aax -aax -aax -aax -aci -aax -aaa -aaf -aaa -aaa -aaa -aaD -agv -agN -ahL -aiv -ajy -akA -alv -amv -anF -ahL -apk -aqF -arE -asW -aua -avs -awr -axo -ayD -azG -aAC -aBO -aCX -aEm -aFJ -aHg -aIl -aIl -aLf -aMU -aOv -aQg -aRP -aTx -aUZ -aWU -aEk -bad -bbz -bcK -beh -bga -bhS -bjG -bkX -bmY -boS -bqt -aaa -bsU -bue -bsV -bxL -bzy -bBd -bCN -bEL -bEL -bIx -bKD -bMC -bEL -bQr -bSI -bQr -bQr -bYn -cag -cbP -bQr -bSI -bQr -bQs -aaa -aaa -cmt -cnY -cpG -cqS -cqS -ctR -cqS -cqS -cqS -cqS -cqS -cqS -cDX -bmX -cGY -cIt -cKi -cLL -cNy -cPn -cLM -cSu -cUg -cVP -cXD -cZc -dal -dbM -dde -deR -dgC -dhP -djQ -dlC -dmT -doc -dpF -dri -dsI -dui -dvn -dwK -dxU -dza -dAp -dBH -dCX -dwK -dEY -dGx -dHP -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -dMY -dRe -dMY -dRe -dMY -aaa -aaa -aaa -dMY -dRe -dXk -dXR -dXk -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(159,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aay -aaD -aaD -aaD -aaD -aaD -aax -aax -aaD -abR -aax -ach -aax -acK -acY -adi -adr -aax -acj -aax -abT -aaD -aax -aax -aaD -afR -agl -agN -ahM -aiw -ajz -akB -alw -amw -anG -aoo -apl -aqG -arF -asX -aub -avt -aws -axp -ayE -azH -aAD -aBP -aCY -aEn -aFK -aHh -aIm -aJG -aLg -aBM -aBM -aQh -aRQ -aTy -aUZ -aWV -aJG -bae -bbz -bcL -bei -bbz -bhT -bjH -bkS -bmZ -boJ -bqu -aaf -aaf -aaf -bsS -bxM -bzI -bBj -bDc -bEM -bGB -bIy -bKE -bMD -bEL -bEL -bEL -bQC -bQC -bQC -bQC -bQC -bQC -cfi -cfi -cfi -cfi -cfi -cfi -cnV -cpG -cqS -csm -ctS -cvv -cwP -cyx -cAh -cBI -cqS -bkP -bmX -cGY -cIs -cKj -cLM -cNx -cPo -cLO -cSv -cUh -cVQ -cXE -cZd -dam -dbN -cZb -deS -dgB -dhQ -djR -dlD -dmU -doa -dpG -drj -dsJ -duj -dvo -dwM -dxV -dxX -dAq -dBI -dxW -dwK -dEZ -dGy -dHP -aaa -aaa -dJk -dKS -dKT -dKT -dKU -dKU -dKT -dKT -dRg -dRZ -dSR -dKT -dKU -dKU -dKU -dKT -dRg -dKT -dXT -dKT -dKT -dKT -dKT -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(160,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aau -aau -aau -aaM -aaR -aax -abb -aaP -aaP -abG -aaP -aaP -aaP -acq -acF -acZ -acF -acF -acF -acF -acF -acF -aeQ -acF -acF -afz -afP -agw -aha -ahN -aix -ajA -akC -alx -amx -anH -ahL -apm -aqH -arG -asY -auc -avu -awt -axq -ayF -azI -aAE -aBN -aCZ -aEo -aFL -aEo -aEo -aJH -aEo -aMV -aOw -aQi -aRQ -aTz -aVa -aWW -aEk -baf -bbA -bcM -bej -bby -bhU -bjI -bkV -bmX -boR -bqt -aaa -aaf -aaa -bsY -bxN -bzJ -bBd -bDd -bEL -bGC -bIz -bIB -bME -bOy -bQy -bSJ -bUP -bWD -bYo -cah -cbQ -bQC -cfj -cfj -cid -cjH -clh -cfi -cnV -cpH -cqT -csn -ctT -cvw -cwQ -cwQ -cAi -cBJ -cqT -cDY -bmY -cGZ -cIs -cKk -cLL -cNx -cPp -cLM -cSw -cKs -cVR -cXF -cXF -cXF -dbO -cXF -deT -dgD -dgD -dgD -dgD -dgD -dod -dpH -drk -dsK -duk -dvp -dwN -dxS -dzb -dAr -dBJ -dCY -dwK -dFa -dGz -dHQ -aaa -dJj -dKd -dKT -dLY -dMZ -dNT -dNT -dPB -dMZ -dOS -dSa -dOS -dMZ -dNT -dNT -dNT -dMZ -dOS -dKT -dXU -dYF -dZt -dZV -dKT -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(161,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaq -aav -aaA -aaF -aaN -aaS -aaW -abc -abh -abh -abh -abh -abh -abh -acr -abh -ada -abh -abh -adJ -abh -abh -abh -abh -abh -abh -afA -aba -agx -ahb -ahL -ahL -ahL -ahL -ahL -ahL -ahL -ahL -ajD -aiB -arH -asZ -aud -avv -awu -axr -ayG -azJ -aAF -aBQ -aBQ -aEp -aFM -aHi -aBQ -aBQ -aLh -aHi -aOx -aQj -aRR -aTA -aVb -aWX -aEk -baf -bbz -bcK -bek -bbz -bhR -bjF -bkY -bna -boR -bqt -aaa -aaf -aaa -bsV -bxC -bzA -bBu -bDe -bEN -bGD -bIA -bKF -bMF -bOz -bQz -bSK -bUQ -bWE -bYp -cai -cbR -bQC -cfj -cfj -cie -cjI -cli -cmx -cnZ -cpI -cqU -cso -ctU -cvx -cwR -cyy -cAj -cBK -cCZ -cDZ -bna -cGY -cIu -cKl -cLN -cNx -cPq -cLL -cSx -cUe -cVS -cXG -cZe -dan -dbP -ddf -deU -dgD -dhR -djS -dlE -dmV -dod -dpI -drl -dsL -dul -dvq -dwN -dxW -dxW -dAq -dBI -dxX -dwK -dEX -dGA -dHP -aaa -dJj -dKd -dKU -dLZ -dNa -dNa -dNa -dNa -dNa -dNa -dNa -dNa -dNa -dNa -dNa -dNa -dNa -dWH -dXl -dXU -dXU -dXU -dZV -dKU -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(162,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aau -aau -aau -aaM -aaT -aax -abd -aaQ -aaQ -abH -aaQ -aaQ -aaQ -aaQ -aaQ -adb -aaQ -aaQ -adK -aec -aea -aew -aeR -aea -aea -afB -afS -agj -ahc -aeX -aiy -ajB -akD -aly -aly -anI -agA -agA -aqI -arI -asZ -aue -avw -awv -axs -ayH -azK -aAG -aBQ -aDa -aEq -aFN -aHj -aIn -aJI -aLi -aMW -aOy -aQk -aRQ -aTB -aUZ -aWY -aEk -baf -bbz -bcL -bei -bbz -bhV -bbv -bkW -bmX -boR -bqt -aaa -aaf -aaa -bsV -bxO -bzK -bBv -bCN -bEO -bGE -bIB -bKG -bMG -bOA -bQA -bSL -bQC -bWF -bYq -caj -cbS -bQC -cfk -cfk -cif -cjJ -clj -cfi -coa -cpG -cqS -csp -ctV -cvy -cwS -cyz -cAk -cBL -cqS -bkP -bmX -cGY -cIs -cKm -cLL -cNx -cPp -cLM -cSy -cKs -cVT -cXz -cZf -cXz -dbQ -ddg -deV -dgD -dhS -djT -dlF -dmW -dod -dpJ -drm -dsM -dum -dvr -dwN -dxS -dzc -dAs -dBK -dCZ -dwK -dFb -dGB -dHP -aaa -dJj -dKd -dKU -dLZ -dNa -dNU -dNU -dNU -dNU -dNU -dNa -dNU -dNU -dNU -dNU -dNU -dNa -dWH -dKT -dXV -dXU -dXU -dZV -dKT -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(163,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaB -aaG -aaG -aaG -aaG -aaG -aaG -aaG -aaG -aaG -aaG -aaG -acv -acL -adc -aaG -aaG -acv -aed -aeo -aaG -aaG -aeX -afm -aeX -aeX -agy -ahd -aeX -aiz -ajC -ajC -alz -amy -anJ -aop -ahg -aqJ -arJ -asZ -aue -avv -aww -axt -ayI -azL -aAH -aBQ -aDb -aEr -aFO -aHk -aIo -aJJ -aLj -aMX -aOz -aQl -aRS -aTB -aUZ -aWZ -aYD -bag -bbz -bcL -bei -bbz -bhW -bbv -bkW -bmX -boT -boZ -aaf -aaf -aaf -bsV -bxP -bzy -bBd -bDf -bEL -bGF -bIB -bKH -bMH -bOB -bOB -bSM -bQC -bWG -bYr -cak -cbT -cdI -cfl -cfk -cig -cjK -clk -cmy -cob -cpJ -cqS -csq -ctW -cvz -cwT -cyA -cAl -cBM -cqS -bkP -bmX -cGY -cIs -cKn -cLM -cNx -cPp -cLL -cSz -cIs -cVU -cXH -cZg -cKs -dbR -ddh -deW -dgD -dhT -djU -dlG -dmX -dod -dpK -drn -dsN -dun -dvs -dwN -dxX -dxW -dAq -dBI -dDa -dwK -dEZ -dGC -dHQ -aaf -dJk -dJk -dKT -dLZ -dNa -dNV -dOQ -dPC -dQp -dNV -dNa -dSS -dQp -dUb -dOR -dSS -dNa -dWH -dKU -dXV -dXU -dZu -dZV -dKT -dKT -dRZ -dKU -dKT -dKT -aaa -aaa -aad -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(164,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaf -aaG -aaX -aaG -abi -abr -abI -abX -acd -aaG -acw -acM -add -adj -adu -adQ -aee -adQ -aeA -aaG -aeY -afn -afn -aeX -agz -ahe -aeX -aiA -ajD -aeX -aeX -aeX -afF -aeX -aeX -aeX -arK -asZ -auf -avx -awx -axu -aua -azM -aAI -aBQ -aDc -aEs -aFP -aHl -aIp -aJK -aLk -aMY -aOA -aQm -aRT -aTC -aVc -aXa -aBM -bah -bag -bcN -bek -bgb -bhX -aZZ -bkZ -bmX -boR -bqt -aaa -aaf -aaa -bsV -bxz -bzy -bBd -bDg -bEL -bGG -bIC -bKI -bIB -bOC -bQB -bSN -bUR -bWH -bYr -cal -cbU -bUP -cfm -cgz -cih -cjL -cll -cmz -coc -cpK -cqS -cqS -ctX -cvA -cwU -cyB -cAm -cBN -cqS -cEa -bmX -cHa -cIv -cKo -cLO -cNz -cPr -cLM -cSA -cUi -cVV -cXI -cZh -dao -dbS -ddi -deX -dgE -dhU -djU -dlH -dmY -doe -dpL -dro -dsO -duo -dvt -dwN -dxY -dzd -dAt -dBL -dDb -dwK -dEX -dGA -dHP -aaa -dJj -dKd -dKT -dLZ -dNa -dNT -dNT -dNT -dNT -dNT -dNa -dNT -dNT -dNT -dNT -dNT -dNa -dWH -dKT -dXW -dXU -dZv -dZW -dKT -eat -eax -eaD -eaL -dKT -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(165,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaH -aaH -aaU -aaY -abe -abj -abs -abJ -abJ -ace -acp -acx -acN -ade -adk -adv -adR -aef -adR -aeB -aeS -aeZ -afo -afC -aeX -aeX -aeX -aeX -aiB -ajE -aeX -alA -amz -anK -aoq -apn -aeX -arL -asZ -asW -avy -awy -asW -ayJ -asW -asW -aBQ -aBQ -aEt -aFQ -aHm -aBQ -aBQ -aEp -aMZ -aOx -atc -aRU -aTD -ata -aXb -aXb -aXf -bbB -bcO -bel -aXf -aXb -aXb -bla -bmX -boR -bqt -aaa -aaf -aaa -bsV -bxw -bzL -bBc -bCL -bEL -bGH -bID -bKJ -bMI -bEL -bQC -bQC -bQC -bWI -bYs -cam -cbV -bQC -cfn -cgA -cii -cjM -clm -cfi -cod -cpG -cqV -cqS -ctY -cvB -cwV -cyC -cAn -cBO -cDa -cDL -bmX -cGY -cIt -cKp -cLM -cNx -cPm -cLL -cSA -cUj -cVW -cXJ -cZi -dap -dbT -ddj -deY -dgE -dhV -djV -dlI -dmZ -dof -dpM -drp -dsP -dup -dvu -dwN -dxZ -dze -dAu -dBM -dDc -dwK -dEY -dGz -dHP -aaa -dJj -dKd -dKU -dLZ -dNa -dNa -dNa -dNa -dNa -dNa -dNa -dNa -dNa -dNa -dNa -dNa -dNa -dWI -dKT -dKT -dXl -dKU -dRZ -dKT -eau -eay -eaE -eaM -dKU -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(166,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaG -aaZ -aaG -abk -abt -abK -abK -acf -aaG -acy -acO -adf -adl -abK -adS -aeg -aep -aeC -aaG -afa -afp -afD -afT -agA -ahf -ahO -aiC -ajF -aeX -alB -amA -anL -aor -alC -aeX -arM -ata -aug -avz -awz -axv -ayK -azN -aAJ -avF -aDd -aEu -aFR -aHn -aIq -aJL -aLl -aNa -aOB -aQn -aRV -aTE -aVd -aXc -aYE -bai -bbC -bcP -bem -bgc -bhY -aXb -blb -bmX -boR -bqt -aaa -aaf -aaa -bsV -bxy -bzM -bBw -bxy -bEL -bGI -bIE -bIE -bIB -bOD -bQC -bSO -bUS -bWJ -bYt -can -cbW -bQC -cfo -cfk -cij -cjN -cln -cmA -cnV -cpG -cqW -cqS -ctZ -cvC -cwW -cyD -cAo -cBP -cDb -cDL -bmX -cGY -cIs -cKq -cLL -cNw -cPl -cLM -cSA -cUk -cVX -cLM -cSA -cIs -dbT -ddk -deY -dgE -dhW -djW -dlJ -dna -dog -dpN -drq -dsQ -duq -dvv -dwN -dwK -dwK -dAv -dBN -dwK -dwK -dFc -dGD -dHQ -aaf -dJk -dJk -dKT -dLZ -dNa -dNU -dNU -dNU -dNU -dNU -dNa -dNU -dNU -dNU -dNU -dNU -dNa -dWH -dKU -dXX -dYG -dZw -dZX -dNc -eav -eav -eaF -eaN -dKU -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(167,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aad -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aae -aaf -aaG -aaG -abf -abl -abu -abL -abf -acg -aaG -acg -acg -acg -acg -adw -acg -acg -acg -acg -aaG -afb -afq -afE -afU -agB -ahg -ahP -aiD -ajG -aeX -alC -amB -anM -amA -apo -aeX -arN -ata -auh -avA -awA -axw -ayL -azO -aAK -avG -awC -aEv -aFS -azQ -awC -awC -aLm -aul -aOC -aQo -aRW -aTF -aVe -aXd -aYF -baj -bbD -bcQ -ben -bgd -bhZ -aXf -bkW -bmX -boU -boZ -brL -brL -brL -bsV -bxx -bzy -bBd -bDh -bEL -bGJ -bIF -bKK -bMJ -bOE -bQC -bSP -bUT -bWK -bYu -cao -cbX -bQC -cfp -cfk -cik -cjO -clo -cfi -cnV -cpG -cqX -cqS -cua -cvD -cwX -cyE -cAp -cBQ -cDc -cDL -bmX -cGY -cIs -cKr -cLP -cNA -cPs -cRa -cSB -cIs -cVY -cXK -cZj -cKs -dbT -ddj -deY -dgD -dhX -djX -dlK -dnb -dod -dpO -drr -dsR -dur -dvw -dwN -dya -dyY -dAw -dBO -dDd -dwK -dFd -dGE -dHP -aaa -dJj -dKd -dKU -dLZ -dNa -dNV -dOR -dPC -dQp -dNV -dNa -dSS -dOQ -dUb -dUI -dSS -dNa -dWH -dXm -dLZ -dNa -dNa -dZY -dXm -eav -eav -eaG -eaO -dKU -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(168,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aae -aaf -aaf -aaf -abf -abm -abv -abM -abf -aaf -aaG -acz -acP -acP -acP -acP -acP -acP -acP -aeq -aaG -afc -afr -afF -afc -aeX -afc -ahQ -afc -aeX -aeX -alD -amC -anM -aos -app -aeX -arN -atb -aui -avB -awB -axx -ayM -azP -aAL -aBR -aDe -aEw -aFT -aFT -ayM -ayM -aLn -auq -aOD -aQp -aRX -aOE -aVf -aXe -aYG -bak -bbE -bcR -beo -bbD -bia -bjJ -blc -bmY -boV -boZ -brM -brM -brK -bsV -bxw -bzN -bBc -bCL -bEL -bEL -bEL -bEL -bEL -bEL -bQC -bQC -bQC -bQC -bQC -bQC -bQC -bQC -cfi -cfi -cil -cfi -cfi -cmB -cnL -cpo -cqY -cqS -cqS -cqS -cqS -cqS -cqS -cqS -cDd -bkS -bmZ -boJ -cIw -cKs -cIs -cNB -cPt -cIs -cIw -cKs -cIs -cXL -cIs -cKs -dbT -ddl -deZ -dgF -dgE -djY -dlL -dgE -dod -dpP -drs -dsS -drs -dvx -dwN -dyb -dzf -dAx -dBP -dDe -dwK -dFe -dGF -dHP -aaa -dJj -dKd -dKU -dLZ -dNa -dNT -dNT -dNT -dNT -dNT -dNa -dNT -dNT -dNT -dNT -dNT -dNa -dWH -dXm -dLZ -dNa -dNa -dZY -dXm -eav -eav -eaH -eaP -dKU -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(169,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aae -aae -aaf -aaf -abg -abn -abw -abN -abf -aaa -aaG -acA -acz -acQ -acR -acR -acR -acR -aeq -aeD -aaG -afd -afs -afG -afV -aeX -afn -afn -aiE -ajH -akE -alB -amC -anN -amE -amE -aqK -arN -atc -auj -avC -awC -axy -ayN -azQ -axA -awC -aDf -aEv -aFU -awC -ayQ -awC -aLo -aNb -aDe -aQq -aRY -aDe -aVg -aXf -aYH -bal -bbF -bcS -bep -bge -bib -aXf -bkW -bnb -boW -bqq -brN -bsZ -brN -bvU -bxQ -bzO -bBx -bxQ -brN -bGK -brN -brN -brN -bqq -bsZ -bSQ -brN -brN -bsZ -brN -brN -brN -brN -cgB -cim -brN -brN -bqq -coe -cpL -cqZ -csr -cub -cvE -cwY -cqZ -cqZ -cqZ -brH -bkT -cFG -cuf -cIx -cKs -cLQ -cNv -cPu -cRb -cRb -cUl -cRb -cXM -cZk -cRb -dbU -ddm -dfa -dat -dhY -djZ -dlM -dnc -doh -dpQ -drt -dsT -dpQ -dvy -dwO -dyc -dzg -dAy -dBQ -dDf -dwO -dFf -dGG -dHQ -aaf -dJk -dJk -dKT -dLZ -dNa -dNa -dNa -dNa -dNa -dNa -dNa -dNa -dNa -dNa -dNa -dNa -dNa -dWH -dKU -dXY -dYH -dZx -dYJ -dNc -eav -eaz -eaF -eaQ -dKU -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(170,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaf -abf -abo -abx -abO -abf -aaf -aaG -acA -acQ -acR -acR -acR -acR -acR -acR -aeD -aaG -afe -aft -afH -afW -agC -afn -ahR -aiF -aeX -akF -alE -amD -anO -amC -apq -aqL -arO -atd -auk -avD -awD -axz -ayO -azR -awD -ayO -aDg -aEx -aFV -aHo -aIr -aJM -aLp -aNc -aOE -aQr -aRZ -awC -aVh -aXb -aYI -bam -bbG -bcT -beq -bgf -bic -aXb -bld -bnc -boX -bqv -brO -bta -buq -brO -brO -bzP -bBy -bCG -buq -brO -brO -brO -brO -bqv -bta -bSR -brO -brO -bXY -brO -brO -brO -brO -bta -boX -brO -brO -bqv -bBy -cpM -brO -brO -bta -brO -brO -brO -brO -cBR -brO -bBy -cFH -boH -cIy -cKs -cLR -cNC -cPv -cLO -cSC -cLO -cSC -cLO -cZl -daq -dbV -ddn -dfb -dgG -dhZ -dka -dlN -dnd -doi -dnd -dru -dsU -dlN -dvz -dwP -dyd -dzh -dAz -dBR -dDg -dEm -dFg -dGH -dHP -aaa -dJj -dKd -dKU -dLY -dNb -dNU -dOS -dOS -dNU -dNU -dNU -dNU -dNU -dNU -dOS -dOS -dNb -dLY -dKT -dRZ -dKT -dKT -dZZ -dKT -eau -eaA -eaI -eaR -dKU -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(171,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aae -aaf -abg -abg -aby -abg -abg -aaf -aaG -acA -acR -acR -acR -adx -acR -acQ -acR -aeD -aaG -aff -aft -afG -afX -agD -ahh -ahS -aiG -aeX -akG -afn -amE -amE -amA -alB -aqM -arP -atc -aul -avE -awC -awC -axA -azQ -axA -axA -awC -awC -axA -aHp -awC -awC -aLm -aul -awC -aQs -aSa -axA -aVi -aXb -aXb -aXf -bbH -bcO -ber -aXf -aXb -aXb -ble -bnd -boY -bqs -brP -btb -bur -bvV -brP -bzQ -bBz -bBz -bEP -bGL -brP -brP -bMK -bqs -bQD -bSS -bUU -brJ -bYv -brJ -brJ -cdJ -cfq -cgC -cin -cjP -brJ -bqs -cof -cof -cra -css -cuc -brJ -bYv -brJ -brJ -cdJ -brJ -cEb -cFI -cHb -cIz -cKs -cLS -cND -cPw -cRc -cRc -cUm -cRc -cRc -cRc -cRc -dbW -ddo -dfc -dav -dia -dia -dlO -dlO -doj -dlO -drv -dlO -dus -dvA -dwK -dxS -dzi -dAA -dBS -dxS -dwK -dEY -dGA -dHP -aaa -dJj -dKd -dKT -dKT -dNc -dKU -dOT -dOT -dKU -dRh -dKT -dKT -dKT -dKT -dUJ -dUJ -dKT -dKT -dKT -dXZ -dYI -dZy -dSa -dKT -eaw -eaB -eaJ -eaS -dKT -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(172,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaf -abg -abz -abg -aaf -aaf -aaG -acA -acR -acR -acR -ady -acR -acR -acR -aeD -aaG -afg -afs -afI -afY -agE -ahi -ahT -aiH -aeX -akH -alF -amF -amC -amB -apr -aqM -arQ -atc -aum -avF -awE -axA -ayP -azS -aAM -awC -awG -awC -ayP -aHq -awG -awC -aLq -auq -aOF -aQp -aSb -aTG -aVj -aXb -aYJ -ban -bbI -bcU -bes -bgg -bid -aXb -blf -aXb -boZ -boZ -brQ -btc -bus -bvW -bxR -boZ -boZ -boZ -bEQ -boZ -bIG -bIG -bIG -bOF -bQE -bST -bUV -bWL -bWM -bWM -bWM -bWM -cfr -cgD -bWP -bWM -bWM -bWM -bWM -cpN -crb -cst -cud -cvF -cvF -cvF -cvF -cvF -cDe -cDe -cFJ -cHc -cDe -cDe -cLT -cLT -cPx -cRd -cSD -cLT -cLT -cXN -cSD -dar -dbX -ddp -dfd -cIu -cIs -cWd -cWd -cIs -dok -dpR -drw -dsV -dol -dvB -dol -dol -dol -dol -dol -dol -dol -dEY -dGI -dHQ -aaf -dJk -dJk -dKT -dMa -dNd -dNW -dOS -dOS -dQq -dRi -dKT -dST -dTv -dUc -dOS -dOS -dWa -dWJ -dKT -dYa -dYI -dKS -dKT -dKT -dKT -dRZ -dKU -dKT -dKT -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(173,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -abg -aby -abg -aaf -aaf -aaG -acA -acR -acQ -acR -adz -acR -acR -acR -aeD -aaG -afh -aft -afJ -afZ -agF -ahh -ahU -ahX -aeX -akI -alG -afs -anP -amC -aps -aqM -arR -atc -aun -avF -awF -awC -awG -azS -aAN -awC -ayP -axA -aFW -aHp -awG -axA -aLm -auq -aOG -aQt -aSc -aTH -aVk -aXg -aYK -aYF -bbJ -bcQ -bet -bgh -bie -bjK -blg -aXb -aaa -aaf -aaa -btd -but -bvX -aaa -aaf -aaa -boZ -bER -boZ -bIH -bKL -bML -bIG -bQF -bSU -bUW -bWM -bYw -cap -cbY -cdK -cfs -cgE -cfu -cjQ -clp -cmC -cog -bWM -crc -csu -boH -cvF -cwZ -cyF -cAq -cvF -cDf -cEc -cFK -cHd -cIA -cKt -cLU -cNE -cPy -cRe -cSE -cUn -cVZ -cXO -cZm -cVZ -dbY -ddj -dfe -cIs -dib -dkb -dkb -dne -dol -dpS -drx -dsW -dut -dvC -dwQ -dye -dzj -dAB -dBT -dDh -dol -dEY -dGx -dHP -aaa -dJj -dKd -dKU -dMb -dNe -dNX -dNa -dNa -dQr -dRj -dSb -dOS -dTw -dUd -dUd -dUd -dWb -dWK -dKT -dYb -dYJ -dZz -eaa -dKT -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(174,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aae -aae -aaf -aae -aae -aaf -aae -aaa -aaf -aaf -aaf -abA -aaf -aaf -aaa -aaG -acA -acQ -acR -acR -acR -acQ -acR -acR -aeD -aaG -afi -aft -aft -afZ -agD -ahj -ahT -aiI -ajH -akJ -alH -amG -akG -aot -apt -aqM -arK -atc -auo -avG -awG -axA -ayQ -azS -aAO -awC -aDh -axA -aDf -aHq -ayP -awC -aLr -aNd -aOH -aQu -aSd -aTI -aVl -aXh -aYL -bao -bbK -bcV -beu -bgi -bif -bjL -blh -aXb -aaa -bqw -bqw -bte -buu -bqw -bqw -bqw -aaa -boZ -bES -boZ -bII -bKM -bMM -bOG -bQG -bSU -bUX -bWN -bYx -caq -cbZ -cbZ -cft -cgF -caq -caq -caq -caq -cbZ -bWN -crd -csu -boH -cvF -cxa -cyG -cAr -cvF -cDg -cEd -cFL -cHe -cEd -cKu -cLU -cNF -cPz -cRf -cSF -cUo -cWa -cXP -cZn -das -dbZ -ddq -dfe -cKs -dic -dkc -dlP -dnf -dom -dpT -dry -dsX -duu -dvD -dwR -dyf -dzk -dAC -dBU -dDi -dol -dFa -dGJ -dHP -aaa -dJj -dKd -dKU -dMc -dNf -dNY -dNa -dNa -dQr -dRj -dSb -dOS -dTx -dUe -dUe -dUe -dWc -dWK -dKT -dYa -dYK -dLZ -eaa -dKU -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(175,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aae -aae -aaf -aae -aae -aaa -aaa -aaf -aaa -aaa -aae -aae -aaf -aae -aaf -aak -aaf -aae -aaf -aaG -acA -acB -acR -acQ -acR -acR -acR -aer -aeD -aaG -afj -aft -afs -aga -aeX -ahk -ahV -aiJ -aeX -aeX -aeX -afu -afu -aeX -alJ -aqN -arS -alJ -aup -avG -awH -awC -ayR -azT -aAP -awC -awH -ayN -ayR -aHr -awH -awC -aLs -aNe -aNf -aQv -aSe -aTJ -aVm -aNg -aYM -bap -bbL -bcW -bev -bgj -big -aXb -bbO -aXb -aaf -bqw -brR -btf -but -btj -bxS -bqw -aaf -boZ -bET -bGM -bIJ -bKN -bMN -bOH -bQF -bSU -bUW -bWO -bYy -car -cca -cdL -cfu -cgG -cio -car -cfu -cfu -cfs -bWO -cre -csv -cue -cvF -cxb -cyH -cAs -cvF -cDh -cEe -cFM -cHf -cEd -cKv -cLU -cNG -cPA -cRg -cSG -cUp -cWb -cXQ -cZo -cWb -dca -ddr -dff -cIs -did -dkd -dlQ -dng -dom -dpU -drz -dsY -duv -dvE -dwS -dyg -dzl -dyg -dBV -dDj -dol -dFa -dGK -dHQ -aaa -dJj -dKd -dKT -dMd -dNg -dNZ -dOU -dPD -dQs -dRk -dRh -dSU -dTy -dUf -dSa -dSa -dLY -dWL -dKT -dLY -dYL -dZA -eaa -dKT -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(176,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aae -aaa -aaa -aaf -aaa -aaa -aai -aaj -aan -aaa -aaa -aaf -aaa -aaa -aaf -aal -aaa -aae -aaf -aaG -acB -acS -acS -acS -acS -acS -acS -acS -aer -aaG -aeX -afu -afu -aeX -aeX -aeX -ahW -aeX -aeX -aaf -aaf -aaH -aaH -aaf -alI -aqO -arT -alJ -auq -avH -awI -awI -ayS -awI -awI -awI -awI -awI -awI -awI -awI -awI -aLt -aNf -aOI -aQw -aSf -aTK -aVn -aXi -aYM -bap -bbM -bcX -bew -bgk -aXb -aXb -bli -aXb -aaa -bqw -brS -btg -buv -bti -bxT -bqw -aaa -boZ -bER -boZ -bIK -bKO -bMO -bOI -bQH -bSV -bUY -bWP -bYz -car -ccb -cdL -cfv -cgH -cip -cjR -clq -cmD -coh -cpO -crf -csw -cuf -cvF -cxc -cyI -cAt -cvF -cvF -cvF -cFN -cHg -cDg -cKw -cLU -cLT -cPB -cRh -cSH -cLT -cLT -cPx -cZp -dar -dcb -ddk -deY -cKs -die -dke -dlR -dnh -dom -dpV -drA -dsZ -duw -dvF -dwT -dyh -dzm -dAD -dBW -dDk -dol -dFh -dGL -dHP -aaa -aaa -dJk -dKS -dKT -dKU -dKU -dKU -dKU -dKT -dKT -dRZ -dKT -dKU -dKU -dKU -dKU -dKU -dKT -dKT -dKU -dYM -dYM -dKU -dKT -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(177,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaa -aai -aaj -aan -aaa -aai -aaj -aan -aaa -aai -aaj -aan -aaa -aaf -abA -aaf -aae -aaf -aaG -aaG -aaG -aaG -aaG -aaG -aaG -aaG -aaG -aaG -aaG -aaf -aaH -aaH -aaf -aeX -ahl -ahX -aiK -aeX -aaf -alI -alI -alI -alJ -alJ -aqP -arU -alJ -aur -avI -awJ -axB -ayT -ayT -aAQ -aAQ -ayT -aEy -aAQ -aAQ -aDi -aJN -aLu -aNf -aOJ -aQx -aSg -aTL -aVo -aNf -aYN -baq -bbN -bcX -bex -bgj -bih -aXb -bar -aXb -aaa -bqw -brT -bth -buw -bvY -bxU -bqw -aaa -boZ -bEU -boZ -bIL -bKP -bMP -bIG -bQF -bSU -bUW -bWM -bYA -car -car -cdL -cfu -cgG -car -car -car -cmE -coi -bWM -crg -csx -boH -cvF -cxd -cyJ -cAu -cBS -cDi -cEf -cFO -cHh -cIB -cDg -cKs -cNH -cPC -cRb -cSI -cUq -cWc -cRb -cRb -dat -dcc -ddj -deY -cIs -dib -dkb -dkb -dni -dol -dpW -drB -dta -dux -dvG -dwU -dyi -dzj -dAE -dBX -dDl -dol -dFi -dGM -dHP -aaf -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(178,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aae -aaa -aai -aaj -aan -aaa -aai -aaj -aan -aaa -aai -aaj -aan -aaa -aaf -abA -aaa -aaf -aaf -aaf -aaf -aaa -aaf -aaf -aaf -aaa -aaf -aaa -aaf -aaf -aaf -aaf -aaf -aaf -aeX -ahm -ahY -aiL -aeX -aaf -alI -amH -anQ -aou -apu -aqQ -arV -alJ -aus -avJ -avJ -axC -avJ -awH -aAR -awH -aDi -aEz -aEz -aEz -aIs -aJN -aLv -aNf -aOK -aQy -aSh -aTL -aVp -aNg -aYO -bar -bbF -bcY -bbF -bgl -bii -aXb -blj -aXb -aaa -bqw -brU -bti -bux -bti -bxV -bqw -aaa -boZ -bEU -boZ -bIG -bIG -bIG -bIG -bQI -bSW -bUZ -bWM -bYB -bYB -bYB -cdM -cfw -cgI -bYB -bYB -bYB -cmF -coj -bWM -crh -csu -boH -cvG -cxe -cyK -cAv -cBT -cDj -cEg -cFP -cHi -cIC -cDg -cKs -cNI -cLM -cLL -cNw -cUr -cLM -cLL -cLM -dau -dcd -ddk -dfg -cIu -cIs -cWd -cWd -cIs -dok -dpR -drC -dsV -dol -dvH -dol -dol -dol -dol -dol -dol -dol -dch -dGN -cKs -cKs -dJl -dJp -dJp -dJp -dJp -aaa -dOV -dMh -dJp -dJr -dJp -dKq -dTz -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(179,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aae -aaf -aai -aaj -aan -aaf -aai -aaj -aan -aaf -aai -aaj -aan -aaf -aaf -abA -aaa -aae -aae -aaf -aae -aae -aae -aaf -aae -aae -aae -aae -aae -aaa -aaf -aaa -aaa -aaf -aeX -ahn -ahZ -aiM -aeX -aaf -alI -amI -anR -anR -apv -aqR -arW -alJ -aut -avK -awK -axD -ayU -azU -aAS -aBS -aDj -aEA -awK -awK -awK -awK -aLw -aNg -aOL -aQz -aSi -aTM -aVq -aNg -aYP -bas -bbO -bbF -bbF -bgm -bij -aXb -aXb -aXb -aaf -bqw -brV -btj -buy -btj -brR -bqw -aaf -boZ -bEV -bGN -bIM -bKQ -bMQ -bIM -bQJ -bSX -bVa -bWM -bYC -cas -ccc -cdN -cfx -cgJ -ciq -cjS -clr -cmG -cfs -bWM -cri -csy -cug -cvF -cxf -cyL -cAw -cvF -cvF -cvF -cFK -cHd -cDg -cDg -cKs -cNJ -cKp -cKp -cSJ -cPw -cRc -cRc -cRc -dav -dbW -dds -dfh -dav -dif -cZh -cZh -cZh -don -dif -drD -cZh -cZh -cZh -dwV -cZh -dzn -dif -dif -dDm -dEn -dFj -dGO -dHR -dIF -dJm -dKe -dKV -dMe -dJp -aaf -dOW -dPE -dQt -dRl -dSc -dSV -dTA -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(180,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaa -aai -aaj -aan -aaa -aai -aaj -aan -aaa -aai -aaj -aan -aaa -aaf -aak -aaf -aae -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaH -aaf -aaf -aaH -aaf -aaf -aaa -aaa -aaf -aeX -aeX -aeX -aeX -aeX -aaf -alJ -amJ -alJ -alJ -apw -aqS -arW -alJ -aaf -aaf -aaf -axE -ayV -azV -aut -azV -aDk -axE -aaf -aaf -aaf -aaf -aaf -aNh -aOM -aQA -aSj -aTN -aVr -aNh -aYQ -bat -bbP -bbG -bey -bgn -bik -bjM -aaf -aaa -aaa -bqw -bqw -bqw -bqw -bqw -bqw -bqw -aaa -bDi -bDi -bGO -bDi -bKR -bMR -bIM -bQK -bSU -bVb -bWM -bYD -cat -ccd -cdO -cfy -cgK -cir -cjT -cls -cmH -cok -bWM -crg -csu -cuh -cvF -cxg -cyM -cAx -cBU -cDk -cvF -cFQ -cHj -cID -cID -cLV -cNK -cNK -cRi -cLV -cIs -cWd -cWd -cIs -daw -dbY -ddt -dfi -dgH -dig -cXR -cWe -cXR -cWe -dpX -drE -cXR -cWe -cXR -dfi -cXR -cWe -dAF -dfi -dDn -dEo -dFk -dGP -dHS -dDn -dJn -dKf -dKW -dMf -dJp -aaa -dJp -dPF -dQu -dRm -dSd -dSW -dJp -aaf -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(181,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aae -aaf -aae -aae -aaf -aai -aaj -aan -aaa -aaf -aak -aaf -aaa -aai -aaj -aan -aaa -aaf -aaw -aaa -aae -aaa -aaa -aaa -aaa -aaH -aaf -aaf -aaH -aaa -aaa -aaH -aaa -aaf -aaa -aaa -aaf -aaf -aaf -aaf -aaf -aaf -aaf -alI -amK -anS -aov -apw -aqT -arX -alJ -aaa -aaa -aaa -axF -ayW -azW -aAT -azW -aDl -aEB -aaa -aaa -aaa -aaa -aaf -aNi -aON -aQB -aSk -aTO -aVs -aXj -aYR -bau -bbQ -bcZ -aXf -bgo -aYR -bgp -aaf -aaa -aaa -aaa -aaf -aaa -aaf -aaa -aaf -aaa -aaa -bDi -bEW -bGP -bIN -bIO -bMS -bDi -bQL -bSU -bUW -bWM -bYE -cau -cce -cdP -cfz -cgL -cis -cjU -clt -cmI -col -bWM -crg -csu -cuh -cvF -cxg -cyN -cAy -cvF -cvF -cvF -cFQ -cHj -cIE -cKx -cLW -cNL -cPD -cRj -cLV -cUs -cKi -cSu -cZq -cIs -dce -ddu -dfj -dat -dih -dkf -dih -dnj -dih -dpY -drF -dih -duy -dih -dfl -dnj -dzo -dih -dfl -dDo -cNP -dFl -dGQ -dHT -dIG -dJo -dKg -dKX -dMg -dJp -aaf -dOX -dPG -dQv -dRn -dSe -dSX -dTB -aaa -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(182,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aae -aaa -aaf -aaa -aaa -aaf -aak -aaf -aaf -aaf -aaw -aaf -aaf -aaf -aak -aaf -aaf -aaf -aaw -aaf -aae -aaf -aaH -aaf -aaf -aaH -aaa -aaa -aaH -aaf -aaf -aaH -aaf -aaf -aaf -aae -aae -aaf -aaa -aae -aae -aae -aaf -alI -amK -anT -aow -apx -aqU -arX -alI -aaa -avL -avL -avL -ayX -azX -avL -azX -aDm -avL -avL -avL -aaa -aaa -aaf -aNj -aOO -aQC -aSl -aTP -aVt -aNj -aaf -bav -bbR -bda -bez -bav -aaf -aaf -aaf -aaf -aaf -aaf -aae -aae -aae -aae -aae -aaf -aaf -bDj -bEX -bGQ -bIO -bKS -bMT -bDi -bQL -bSU -bUW -bWM -bYF -cav -ccf -cdQ -cfA -cgM -cit -cjV -clu -cmJ -col -bWM -crj -csz -cui -cvF -cxh -cyO -cAz -cBU -cDl -cvF -cFK -cHj -cIF -cKy -cLX -cLX -cLX -cRk -cSK -cUt -cWe -cXR -cZr -dax -dbZ -ddv -dfe -dgI -dgI -dgI -dgI -dnk -dlS -dpZ -dlS -dgI -dgI -daA -dwW -dyj -cKs -daA -dwW -dyj -cKs -dch -dGR -cKs -cKs -dJl -dJp -dKY -dJp -dJp -aaa -dOY -dPH -dQw -dRo -dSf -dSY -dOY -aaa -aaf -aaf -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(183,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaf -aag -aah -aah -aah -aah -aah -aao -aar -aaw -aaw -aaw -aaO -aaw -aaw -aaw -aaw -aaw -aaa -aaf -aaa -aaH -aaa -aaa -aaH -aaf -aaf -aaH -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aae -aaf -alJ -amK -anU -aox -apy -aqV -arY -alI -aaa -avL -awL -axG -axG -azY -aAU -azY -azY -aEC -avL -avL -aIt -aaa -aaf -aNg -aNg -aQD -aSm -aTQ -aNg -aNg -aaa -baw -bbS -bdb -beA -baw -aaa -aaa -aaa -aaa -aaH -aaH -aaH -aaH -aaH -aaH -aaH -aaa -aaa -bDj -bEY -bGR -bIP -bKT -bMU -bOJ -bQM -bSY -bVc -bWQ -bYG -caw -ccg -cdR -cfB -cgN -ciu -cjW -clu -cmH -com -bWM -crg -csu -cuh -cvF -cxi -cyN -cAA -cvF -cvF -cvF -cFQ -cHj -cIG -cKz -cLY -cNM -cLY -cRl -cNK -cUu -cWf -cXS -cZs -cIt -dbY -ddj -dfe -dgI -dii -dkg -dgL -dnl -doo -dqa -drG -dtb -dgI -dvI -cNx -dyk -cKs -dvI -cNx -dyk -cKs -dFm -dGS -cDe -aaa -aaa -dJq -dKZ -dMh -aaa -aaa -dJp -dPI -dQx -dRp -dSg -dSZ -dJp -aaf -agg -aaf -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aad -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(184,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aae -aaa -aaf -aaa -aaa -aaf -aal -aaf -aaf -aaf -aaw -aaf -aaf -aaf -aal -aaf -aaf -aaf -aaf -aaf -aae -aaf -aaH -aaf -aaf -aaH -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -alJ -amL -anV -aoy -apz -aqW -arZ -alJ -aaa -avL -awM -axH -ayY -axH -axH -axH -axI -aED -aFX -aHs -aIu -aaa -aaf -aNh -aOI -aQE -aSf -aTR -aNh -aaf -aaa -bax -bbT -bdc -beB -bgp -aaa -aaa -aaa -bne -bne -bqx -bne -bne -bqx -bne -bne -bne -aaa -bDi -bEZ -bGS -bIQ -bKU -bMV -bOK -bQN -bSZ -bUW -bWM -bYH -cax -cch -cdS -cfC -cgO -civ -cjX -clv -cmK -con -bWM -crg -csA -cuj -cvF -cxj -cyP -cAB -cBV -cDm -cvF -cFR -cHj -cIH -cKz -cLZ -cNN -cPE -cRm -cSL -cKp -cLM -cLL -cSA -cIt -dbY -ddk -dfe -dgJ -dij -dio -dgM -dnm -dop -dqb -drH -dtc -dgI -dvJ -cNw -dyl -cKs -dvJ -cNw -dyl -cKs -dFn -dGT -daM -aaf -aaf -dKh -dLa -dMh -aaf -aaf -dKq -dPJ -dQy -dRq -dSh -dTa -dMh -aaa -agg -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(185,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aae -aae -aae -aae -aaf -aai -aam -aan -aaa -aaf -aal -aaf -aaa -aai -aam -aan -aaf -aae -aaf -aae -aae -aaa -aaH -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aae -aaf -alJ -amM -alJ -alJ -alI -alI -alJ -alJ -aaa -avL -awN -axI -axI -axI -axH -axI -axH -aEE -aFX -aHt -aIu -aaa -aaf -aNk -aOP -aQF -aSn -aTS -aVu -aaf -aYS -aYS -aYT -bdd -aYT -aYS -aYS -aaa -aaa -bnf -bpa -bqy -brW -btk -buz -bvZ -bne -bzR -aaa -bDj -bFa -bGT -bIR -bKV -bMW -bOL -bQO -bTa -bVd -bWR -bWR -cay -cci -bWR -bWR -bWR -bWM -bWM -bWM -bWM -bWM -bWM -crk -csB -cuk -cvF -cxc -cvF -cAC -cvF -cvF -cvF -cFS -cHj -cII -cKA -cMa -cNO -cPF -cRn -cLV -cUv -cWg -cXT -cZt -cIs -dbY -ddj -dfe -dgI -dik -dio -dgL -dnn -doq -dqc -drI -dtd -dgI -dvK -dwX -dym -cKs -dvK -dwX -dym -cKs -cHd -dGU -cDe -aaa -aaa -dJq -dKZ -dMh -aaa -aaa -dJp -dPK -dQz -dRr -dSi -dTb -dJp -aaf -aaf -aaf -agg -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(186,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aae -aaa -aai -aam -aan -aaa -aai -aam -aan -aaa -aai -aam -aan -aaa -aae -aaf -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaH -aaa -aaH -aaf -aaf -aaf -aaf -aaa -aaa -avL -awN -axI -axH -axH -axH -axH -axH -aEE -aFY -aHt -aIu -aaa -aaf -aNi -aOQ -aQG -aSo -aTT -aNi -aaf -aYS -bay -bbU -bde -beC -bgq -aYS -aaa -aaa -bnf -bpb -bqz -brX -btl -buA -bwa -bxW -bzR -aaa -bDj -bFb -bGU -bIS -bKW -bMX -bOM -bQP -bTb -bVe -bWR -bYI -caz -ccj -cdT -cfD -bWR -ciw -cjY -clw -cmL -coo -cpP -crl -csC -cul -cvH -cxk -cyQ -cAD -cBW -clx -cEh -cFR -cHj -cID -cKB -cMb -cID -cID -cLV -cLV -cKs -cKs -cKs -cKs -cIw -dce -ddw -dfk -dgI -dil -dkh -dil -dno -dgI -dqd -dgI -dgI -dgI -dvL -dwY -dyn -cKs -dvL -dwY -dyn -cKs -dFo -dGV -cDe -aaa -dJp -dJp -dLb -dJp -dJp -dJp -dJp -dOh -dQA -dRs -dMh -dKl -dJp -dJp -dJp -aaf -aaf -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(187,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaf -aai -aam -aan -aaf -aai -aam -aan -aaf -aai -aam -aan -aaf -aae -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaa -aaf -aaa -aae -aae -aaa -aaa -aaa -avL -awO -axJ -ayZ -axJ -ayZ -ayZ -axJ -aEF -avL -avL -aIv -aaa -aaf -aNl -aOR -aNg -aNg -aTU -aVv -aaf -aYT -baz -bbV -bdf -beD -bgr -bil -aaa -aaa -bnf -bpc -bqA -brY -btm -buB -bwb -bne -bzR -aaa -bDi -bFc -bGV -bIT -bKX -bMY -bDi -bQQ -bTc -bVf -bWS -bYJ -caA -cck -cdU -cfE -bWR -cix -cjZ -clx -cmM -cop -cpQ -crm -cpQ -cum -cpQ -cxl -cpQ -cAE -cBX -clx -cEi -cFT -cHk -cIJ -cKC -cMc -cKs -cPG -cKs -cSM -cUw -cWh -cXU -cZu -cKs -dcf -ddj -dfe -dgI -dim -dim -dlS -dnp -dor -dqe -drJ -dte -dgI -dvM -dwZ -dyo -cKs -dvM -dwZ -dyo -cKs -dFp -dGU -cDe -aaf -dJp -dKi -dLc -dMi -dNh -dOa -dOZ -dPL -dQB -dRt -dSj -dTc -dSj -dUg -dJp -dVm -dWd -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(188,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aae -aaa -aai -aam -aan -aaa -aai -aam -aan -aaa -aai -aam -aan -aaa -aae -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaH -aaa -aaH -aaa -aaa -aaa -aaa -aaa -aaa -avL -avL -avL -avL -avL -avL -aBT -avL -avL -avL -avL -aaa -aaa -aaf -aaf -aaf -aaa -aaa -aaf -aaf -aaf -aYS -baA -bbW -bdg -beE -bgs -aYS -aaa -aaa -bne -bne -bqB -bne -bne -bne -bwc -bne -bne -aaa -bDi -bDi -bGW -bIU -bDi -bDi -bDi -bQQ -bTd -bVg -bWT -bYK -caB -ccl -cdV -cfF -cgP -ciy -cka -clx -cmM -cop -cpQ -crn -cpQ -cun -cvI -cxm -cpQ -cAE -cBY -clx -cEj -cFU -cHl -cIK -cKD -cMd -cNP -cPH -cNP -cSN -cUx -cWi -cXV -cZv -day -dcg -ddx -dfl -dgK -din -dim -dlS -dnq -dos -dqf -drK -dtf -dgI -cKs -cKs -cKs -cKs -cKs -cKs -cKs -cKs -cHd -dGW -daM -aaa -dJq -dKj -dLd -dMj -dNi -dOb -dPa -dPM -dQC -dRu -dSk -dTd -dTC -dUh -dUK -dVn -aaf -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(189,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aae -aaa -aai -aam -aan -aaa -aai -aam -aan -aaa -aai -aam -aan -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaH -aaH -aaH -aaH -aaH -aaH -aaH -aaH -aaH -aaa -aaa -aaa -aaf -aaa -aaf -aaf -aaf -aaf -aaa -aaa -aYS -aYS -aYT -bdh -aYT -aYS -aYS -aaa -aaa -aaa -bpd -bqC -bpd -aaa -bpd -bwd -bpd -aaa -aaa -bDi -bFd -bGX -bIV -bKY -bMZ -bDi -bQR -bSU -bVh -bWU -bYL -caC -ccm -cdW -cfG -cgQ -ciz -ckb -clx -cmM -cop -cpR -cro -csD -cuo -cvJ -cxn -cpR -cAE -cBZ -clx -cEk -cFV -cHm -cIL -cKE -cMe -cKs -cPI -cKs -cSO -cUy -cWj -cUz -cZw -daz -dbW -dds -dfm -dgL -dio -dim -dlS -dnr -dot -dqg -drL -dtg -dgI -dvN -daK -dyp -cYg -dAG -dBY -dDp -dgN -dFq -dGU -cDe -aaf -dJp -dKk -dLe -dMk -dNj -dOc -dPb -dPN -dQD -dRv -dSl -dTe -dTD -dUi -dUL -dVo -dWe -aaf -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(190,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aae -aaa -aaa -aaf -aaa -aaa -aai -aam -aan -aaa -aaa -aaf -aaa -aaa -aae -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aae -aaf -aaf -aaa -aaa -aaf -aaa -aaa -aaa -aaH -aaH -aaH -aaH -aaH -aaa -aaf -aaf -aaf -bpe -bqD -bpf -aaf -bpf -bwe -bpe -aaf -aaf -bDi -bFe -bGY -bIW -bKZ -bNa -bDi -bQL -bSU -bVi -bWR -bYM -caD -ccn -cdX -cfH -bWR -ciA -ckc -clx -cmN -coq -cpQ -crp -csE -cuo -cvK -cxo -cpR -cAF -cmN -clx -cvP -cvP -cvP -cvP -cKF -cMf -cNQ -cPJ -cRo -cSP -cUz -cWk -cXW -cZx -daA -dbY -ddk -dfn -dgM -dip -dim -dlS -dns -dou -dqh -drM -dth -dgI -dvO -dxa -cZA -dgO -dAH -dcj -dDq -dgO -cWn -dGX -cDe -aaa -dJp -dKl -dLf -dMl -dNk -dKl -dKl -dKl -dOY -dRw -dKq -dTf -dTE -dKl -dJp -dJp -dJp -dJp -aaf -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(191,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aae -aae -aaf -aae -aae -aaa -aaa -aaf -aaa -aaa -aae -aae -aaf -aae -aae -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aae -aaa -aaf -aaa -aaa -aaf -aaa -aaa -aaf -aaa -aaa -aaf -aaa -aaa -aaf -bjN -blk -bjQ -bpf -bqE -bpf -bjQ -bpf -bwf -bpf -bzS -bzS -bDi -bDi -bDi -bDi -bDi -bDi -bDi -bQS -bTe -bVj -bWR -bYN -bYN -bYN -bYN -bYN -bWR -ciB -ckd -clx -cmO -cor -cpS -crq -csF -cuo -cvL -cxp -cpQ -cAG -cCa -clx -cEl -cFW -cHn -cvP -cKG -cMg -cKs -cPK -cKs -cSQ -cUA -cWl -cXX -cZy -cKs -dbY -ddy -dfe -dgI -diq -dki -dlS -dnt -dov -dqi -drN -dti -dgI -dvP -dxb -dyq -dyq -dyr -dyq -dDr -dyq -dyq -dyq -dyq -aaf -dJp -dKm -dLg -dMm -dNl -dOd -dKl -dPO -dQE -dKl -dSm -dTg -dTF -dUj -dUM -dVp -dWf -dJp -aaf -agg -aaf -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(192,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aae -aae -aaf -aae -aae -aaf -aae -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaf -aaf -aaf -aaf -aaf -aaf -aaf -aaf -aaf -aaf -aaf -aae -aaa -aaf -aaf -aaf -aaf -aaf -aaf -aaf -aaf -aaf -aaf -aaf -aaf -aaf -bjO -bll -bng -bpg -bqF -brZ -bjQ -buC -bqF -bpg -bzT -bBA -bDk -bFf -bGZ -bIX -bGZ -bGZ -bON -bQT -bTa -bVk -bWV -bDn -caE -cco -cdY -bdi -cgR -ciC -cke -clx -cmO -cos -cpQ -crr -csG -cup -cvM -cxq -cyR -cAH -cCb -cDn -cEm -cFX -cHo -cvP -cKH -cHc -cKs -cKs -cKs -cKs -cKs -cKs -cKs -cKs -cKs -dch -ddz -dfo -dgI -dgI -dgI -dgI -dno -dgI -dqj -dgI -dgI -dgI -dvQ -dxc -dyq -dzp -dAI -dBZ -dDs -dAJ -dFr -dGY -dyq -aaa -dJr -dKn -dLh -dMn -dNm -dOe -dKl -dPP -dQF -dRx -dSn -dTh -dTG -dUk -dUN -dVq -dWg -dWM -aaa -aaf -aaa -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(193,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaa -aaa -aaf -aaa -aaf -aaa -aaa -aaf -aaa -aaa -aaa -aae -aaa -aaf -aaa -aaa -aaf -aaa -aaa -aaa -aaf -aaa -aaa -aaa -aaa -aaf -bjP -blm -bnh -bph -bqG -bsa -btn -buD -bwg -bxX -bzU -bBB -bDl -bFg -bDl -bDl -bLa -bDl -bDl -bQU -bTf -bVl -bWW -bYO -caF -ccp -cdZ -bdi -cgS -ciD -ckc -clx -cmP -cot -cpT -crs -csH -cuq -cvN -cxr -cvN -cAI -cCc -csB -cEn -cFY -cHp -cvP -cKI -cMh -cNR -cNR -cRp -cRp -cUB -cWm -cXY -cZz -daB -dci -ddA -dfp -dgN -dir -dkj -dkj -dnu -dow -dqk -drO -dkj -duz -dvR -dxd -dyq -dzq -dAJ -dCa -dDt -dAJ -dAL -dGZ -dHU -aaa -dJs -dKo -dLi -dMo -dNn -dOf -dMh -dPQ -dQG -dRy -dSo -dTi -dTH -dKl -dUO -dVr -dKl -dJp -aaf -agg -aaf -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(194,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaf -aaf -aaf -aaa -aaf -aaa -aaa -aaf -aaa -aaa -aaa -aae -aaf -aae -aaa -aaa -aaf -aaa -aaa -aaa -aaf -aaa -bdi -beF -bgt -bim -bjQ -bln -bni -bpi -bqH -bsb -bto -buE -bwh -bxY -bzV -bBC -bDm -bFh -bFh -bIY -bFh -bFh -bFh -bQV -bTg -bVm -bWX -bDn -caG -ccq -cea -bdi -cgT -ciB -cke -clx -cmP -cou -cpU -crt -csI -cur -cvO -cxs -cyS -cAJ -cCd -cDo -cEo -cFZ -cHq -cvP -cKJ -cMi -cMi -cPL -cRq -cSR -cUC -cWn -cWn -cZA -daC -dcj -ddB -dfq -dgO -dis -cMi -dcq -daL -dox -dql -daL -cWq -cWq -dvS -dxe -dyq -dzr -dAK -dCb -dDu -dEp -dFs -dHa -dHU -aaf -dJp -dKp -dLe -dMp -dNo -dOg -dKl -dPR -dQH -dRz -dSp -dTj -dTI -eaZ -dUP -dVs -dWg -dWM -aaa -aaf -aaa -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(195,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaH -aaa -aaa -aaf -aaf -aaf -aaf -aaf -aaf -aaf -aaf -aaf -aae -aaa -aae -aaa -aaa -aBU -aEG -aEG -aBU -aBU -aaa -bdi -beG -bgu -bin -bjQ -blo -bnj -bpj -bqI -bsc -bjQ -buF -bwi -bxY -bzW -bjQ -bDn -bFi -bHa -bdi -bDn -bFi -bHa -bdi -bTh -bVn -bWY -bdi -bdi -bDq -ceb -bdi -cgU -ciE -ckf -clx -clx -clx -cpV -clx -clx -clx -clx -clx -clx -clx -clx -clx -cEp -cGa -cHr -cvP -cvP -cvP -cvP -cvP -cvP -cSS -cUD -cWo -cWo -cWo -daD -cZH -cWo -cWo -dgP -dgP -dgP -dgP -dgP -doy -dgP -dgP -dgP -dgP -dvT -dxf -dyq -dzs -dAL -dAL -dDv -dAJ -dAL -dHb -dyq -aaf -dJp -dKl -dLj -dMq -dNp -dOh -dKl -dPS -dQI -dKl -dSq -dTk -dTJ -dUj -dUQ -dVt -dWf -dJp -aaf -agg -aaf -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(196,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaH -aaf -aaf -aaH -aaa -aaf -aaa -aaa -aaf -aaa -aaa -aaa -aaf -aaa -aae -aaf -aaf -aBU -aVw -aXk -aYU -aBU -aaf -bdi -beH -bgv -bio -bjQ -blp -bnk -bpk -bqJ -bsd -blk -buG -bwh -bxZ -bzX -bjQ -bDo -bFj -bHb -bIZ -bLb -bFj -bHb -bIZ -bTi -bVo -bWZ -bIZ -caH -ccr -cec -bdi -cgV -ciF -ckg -cly -cmQ -cov -cpW -cru -csJ -cus -cvP -cxt -cyT -cAK -cCe -cvP -cEq -cGb -cHs -cvP -cCg -cyX -cNS -cxw -cvP -cST -cUE -cWo -cXZ -cZB -daE -dck -ddC -dfr -dgP -dit -dkk -dlT -dnv -doz -dqm -drP -dtj -dgP -dvU -dxf -dyq -dzt -dAM -dCc -dDw -dEq -dFt -dHc -dyq -aaf -aaf -dJp -dLk -dMr -dNl -dOi -dJp -dJp -dJp -dJp -dJp -dOY -dJp -dJp -dJp -dJp -dJp -dJp -aaf -aaa -aaa -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(197,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaH -aaa -aaa -aaH -aaf -aaf -aaf -agg -agg -agg -aaf -aaf -aaf -aaf -aaf -aaa -aaa -aBU -aVx -aXl -aYV -aBU -aaa -bdi -beI -bgw -bip -bjQ -blq -bnl -bpl -bqK -bse -bjQ -buH -bwj -bya -bzY -bjQ -bDp -bFk -bHc -bAb -bLc -bit -bOO -bIZ -bTj -bVp -bXa -bIZ -caI -ccs -ced -bdi -cgW -ciG -ckh -clz -cmR -cow -cpX -crv -csK -cke -cvP -cxu -cyT -cyT -cyT -cDp -cEq -cGc -cHt -cIM -cyX -cyX -cNT -cPM -cvP -cSU -cUF -cWo -cYa -cZC -daF -dcl -ddD -dfs -dgP -diu -dkl -dkl -dkl -doA -dkl -dkl -dqm -dgP -dvP -cSS -dyq -dzu -dAN -dAN -dDx -dAN -dFu -dHd -dyq -aaf -aaf -dKq -dLl -dMs -dNq -dOj -dMh -aaa -aaf -aaf -aaf -aaa -aaf -aaf -aaf -aaf -aaf -aaf -aaf -agg -aaf -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(198,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaH -aaf -aaf -aaH -aaa -aaa -aaf -aaa -aaf -aaa -aaa -aaf -aBU -aBU -aBU -aBU -aBU -aBU -aVy -aXm -aBU -aBU -aBU -bdi -beJ -bgx -biq -bjQ -blr -bnm -bpm -bqL -blk -bjQ -bjQ -bwk -byb -bjQ -bjQ -bDq -bFl -bim -bIZ -bDq -bNb -bOP -bIZ -bTh -bVq -bWY -bIZ -beF -cct -bOP -bdi -cgX -ciH -cki -cgX -cgT -cox -cmX -cmX -ciB -ckc -cvP -cxv -cyU -cAL -cCf -cvP -cEq -cGd -cHu -cvP -cKK -cMj -cyX -cPN -cvP -cSS -cUF -cWo -cYb -cZD -daG -dcm -dcl -dft -dgP -div -dkl -dkl -dkl -doB -dkl -drQ -dtk -duA -dvV -dxg -dyr -dzv -dAO -dAO -dDy -dAO -dAO -dHe -dHU -aaa -aaf -dJp -dLm -dMt -dNr -dOk -dJp -aaf -agg -agg -agg -aaf -agg -agg -agg -aaa -agg -agg -agg -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(199,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaH -aaf -aaf -agg -aaa -aaf -aaf -aaf -aaf -aBU -aNm -aOS -aQH -aSp -aTV -aVz -aXn -aYW -baB -bbX -bdj -beK -bgy -bir -bjR -bir -bnn -bpn -bqM -bir -btp -buI -bwl -byc -bzZ -bir -bDr -bFm -bHd -bJa -bLd -bFm -bOQ -bQW -bTk -bir -bXb -bYP -caJ -ccu -cee -cfI -cgY -ciI -ckj -clA -cmS -coy -cpY -crw -ciB -cut -cvP -cvP -cvP -cvP -cvP -cvP -cEr -cGe -cHv -cvP -cvP -cvP -cvP -cvP -cvP -cSU -cUG -cWo -cYc -cZC -daH -dcn -ddE -dfu -dgP -diw -dkm -dkl -dnw -doC -dkl -drR -dtl -dgP -dvQ -dxh -dyr -dzw -dAL -dCd -dDz -dAI -dFv -dHf -dHU -aaa -aaf -dJp -dJp -dJp -dJp -dJp -dJp -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaf -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(200,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -agg -aaf -aaf -aBU -aBU -aBU -aBU -aNn -aOT -aOT -aOT -aTW -aVA -aXo -aYX -baC -bbY -bdk -beL -bgz -bis -bjS -bls -bno -bpo -bqN -bqN -bqN -bqN -bwm -byd -bAa -bBD -bDs -bFn -bHe -bqN -bLe -bFn -bOR -bqN -bTl -bVr -bjS -bYQ -caK -ccv -cef -cfJ -cgZ -ciJ -ckk -clB -cmT -coz -cpZ -cmX -ciF -cuu -cvP -cxw -cyV -cyX -cCg -cvP -cEq -cGc -cHt -cvP -cKL -cMk -cyY -cxz -cvP -cSV -cUG -cWo -cYd -cZE -cZC -dco -ddF -dfv -dgP -dix -dkl -dkl -dkl -dkl -dkl -drS -dtm -duA -dvW -cSS -dyq -dzx -dAP -dCe -dDA -dEr -dFw -dHg -dyq -aaf -aaf -aaf -aaa -aaa -aaa -aaf -aaf -aaf -agg -agg -aaf -aaf -aaf -agg -agg -agg -agg -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(201,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -agg -aaa -aaf -aBU -aIw -aJO -aBU -aNo -aOU -aQI -aSq -aTX -aVB -aXp -aYY -baD -bbZ -bdl -beM -bgA -bit -bjT -bgA -bnp -bpp -bgA -bgA -btq -buJ -bwn -bye -bAb -bBE -bDt -bFo -bHf -bJb -bJb -bJb -bHf -bJb -bTm -bVs -bXc -bYR -bDt -ccw -ceg -cfK -cha -ciK -ckl -cgX -cmU -coA -cqa -cmX -csL -cuv -cvP -cxx -cyW -cyX -cyX -cDq -cEs -cGf -cHw -cIN -cyZ -cAO -cyZ -cPO -cvP -cSU -cUG -cWo -cYe -cZF -cZE -cZC -dcl -dfw -dgP -diy -dkl -dkl -dkl -dkl -dqn -drT -dtn -dgP -dvP -drW -dys -dys -dys -dys -dys -dys -dys -dys -dys -aaf -agg -agg -agg -aaf -agg -agg -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(202,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaa -aaf -aBU -aHu -aJP -aBU -aBU -aBU -aBU -aBU -aBU -aVC -aXq -aBU -aBU -bca -bdm -bdm -bdn -biu -bjU -bdn -bnq -bpq -bqO -bdm -bdm -buK -bwo -byf -bdm -bBF -bDu -bBF -bBF -bHg -bLf -bHg -bBF -bBF -bTn -bVt -bXd -bBF -caL -ccx -bdi -bdi -chb -ciL -ckm -cgX -cgW -coB -cqb -cmX -csL -cuw -cvP -cxy -cyX -cAM -cCh -cvP -cEt -cGc -cHx -cvP -cKM -cyZ -cyZ -cPP -cvP -cSW -cUF -cWo -cYf -cZG -daI -dcp -ddG -dfx -dgP -diz -dkn -dlU -dnx -doD -dqo -drU -dto -dgP -dvT -dxf -dys -dzy -dAQ -dCf -dDB -dEs -dFx -dHh -dys -aaf -aaa -aaa -aaf -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(203,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aab -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -agg -agg -aaf -aaf -aaa -aaf -aBU -aIx -aJQ -aLx -aNp -aHu -aQJ -aSr -aTY -aVD -aXq -aBU -baE -bcb -bdm -beN -bgB -biv -bjV -blt -bnr -bpr -bqP -bsf -bdm -buL -bkd -byg -bdm -bBG -bDv -bFp -bHg -bJc -bLg -bNc -bOS -bQX -bTo -bVu -bXe -bHg -caM -ccy -ceh -bdi -chc -ciM -ckn -cgX -cmV -coC -cqc -cmX -ciC -cux -cvP -cvP -cvP -cvP -cvP -cvP -cEu -cGc -cHx -cvP -cvP -cvP -cvP -cvP -cvP -cSX -cUH -cWo -cWo -cZH -daJ -cWo -cWo -cWo -dgP -dgP -dgP -dgP -dgP -doE -dgP -dgP -dgP -dgP -dvX -dxi -dyt -dzz -dAR -dCg -dDC -dEt -dFy -dHi -dAV -aaf -aaf -agg -agg -agg -agg -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(204,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -agg -aaf -aaf -aaf -aaf -aaf -aBV -aIy -aJR -aLy -aNq -aOV -aQK -aSs -aTZ -aVD -aXr -aBU -baF -bcc -bdn -beO -bgC -biw -bjW -blu -bns -bps -bqQ -bsg -bdm -buM -bwp -byh -bdm -bBG -bDw -bFq -bHh -bJd -bLh -bNd -bOT -bQY -bTp -bVv -bXf -bYS -caN -ccz -cei -bdi -chd -ciM -cko -cgX -cmW -coD -cqd -cmX -ciF -ckc -cvP -cxz -cyY -cAN -cCi -cvP -cEv -cFY -cHy -cvP -cKN -cMl -cyT -cxt -cvP -cSY -cUI -cWp -cYg -cYg -daK -cWp -ddH -dfy -cWm -diA -cWp -cYg -ddH -doF -cWp -cWp -dtp -ddH -dvY -dxf -dys -dzA -dAS -dCh -dDD -dEu -dFz -dHj -dAV -aaf -aaf -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aad -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(205,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -agg -aaf -aBU -aBU -aEG -aBU -aBU -aIz -aJS -aLz -aNr -aHu -aQL -aSt -aUa -aVE -aXs -aBU -aBU -aEM -bdm -beP -bgD -bix -bjX -blv -bnt -bpt -bqR -bsh -btr -buM -bwq -byi -bdm -bBH -bDx -bBG -bDC -bJe -bLi -bNe -bOU -bQZ -bTq -bVw -bXg -bDC -caO -ccA -cej -bdi -che -ciM -ckp -cgX -cmX -coE -cmX -cmX -csL -cke -cvP -cxA -cyZ -cAO -cyZ -cDr -cEt -cGc -cHx -cIO -cyT -cyT -cyT -cPQ -cvP -cSZ -cUJ -cWq -cMi -cMi -daL -dcq -cMi -dfz -cWq -diB -dko -daL -dcq -dcq -dqp -drV -daL -dqp -dvZ -dxj -dys -dzB -dAT -dAS -dDE -dAS -dFA -dHk -dAV -aaf -agg -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(206,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aBU -aDn -aEH -aFZ -aHu -aIA -aJT -aLA -aNs -aHu -aHu -aHu -aHu -aVF -aXt -aYZ -aBU -aaa -bdm -beQ -bgD -biy -bjY -biz -bnu -bpu -bqR -bsi -bdm -buN -bwr -byj -bdm -bBI -bDy -bFr -bHi -bHi -bLj -bLj -bHi -bRa -bTr -bVx -bXh -bHi -caP -ccB -cek -bdi -chf -ciM -chh -cgX -aaa -aaa -aaf -coE -csM -cuy -cvP -cxB -cyZ -cyZ -cCj -cvP -cEt -cGg -cHx -cvP -cKO -cMm -cNU -cPR -cvP -cTa -cUK -cEe -cYh -cDe -daM -cDe -cDe -dfA -cDe -dfA -cDe -cDe -daM -cDe -cDe -dfA -abf -abL -dwa -abl -abf -dzC -dAU -dCi -dDF -dEv -dFB -dHl -dys -aaf -agg -aaf -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(207,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aBV -aDo -aEI -aGa -aHv -aIB -aJU -aLB -aNt -aHu -aQM -aSu -aTY -aVG -aXu -aZa -aYX -aaf -bdm -beR -bgE -biz -bjZ -blw -bnv -bpv -bqS -bsj -bdm -buM -buM -byg -bdm -bBJ -bDz -bFs -bHi -bJf -bJf -bJf -bOV -bRb -bTs -bVy -bXi -bHi -caQ -ccC -cel -bim -chg -ciN -ckq -cgX -aaf -aaf -cqe -cqe -csN -cuz -cvP -cvP -cvP -cvP -cvP -cvP -cEw -cGa -cHz -cvP -cvP -cvP -cvP -cvP -cvP -cTb -cUL -cqe -cqe -cqe -aaf -cDe -ddI -dfB -cDe -diC -dkp -cDe -aaf -cDe -dqq -drW -abf -duB -abv -dxk -abf -dys -dAV -dys -dys -dys -dAV -dys -dys -aaf -agg -aaf -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(208,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aBU -aDp -aEJ -aGb -aHw -aIC -aJV -aLC -aGb -aOW -aQN -aSv -aUb -aVH -aXq -aZb -aBU -aaa -bdn -beS -bgF -biA -bka -blx -bnw -bpw -bqT -bsk -bdm -buO -bws -byk -bdm -bBK -bDA -bFt -bHi -bJg -bLk -bNf -bNf -bNf -bTt -bVy -bXj -bYT -caR -ccB -cem -bdi -chh -ciO -ckr -clC -aaa -aaa -cqe -crx -csO -cuA -cvQ -cxC -cza -cAP -cCk -cDs -cEx -cGh -cHA -cIP -cKP -cMn -cNV -cPS -cRr -cTc -cUM -cWr -cYi -cqe -aaa -dcr -ddJ -dfC -cDe -diD -dkq -daM -aaa -daM -dqr -drX -abf -duC -abw -abN -abg -aaf -aaf -aaf -aaf -aaf -aaf -aaf -aaf -aaf -aaa -aaa -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(209,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aad -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aBV -aDq -aEK -aGc -aHx -aID -aJW -aLD -aNu -aHu -aQO -aSt -aUa -aVI -aXv -aHu -aBU -aaf -bdm -beT -bgG -bgG -bkb -bly -bnx -bpx -bgG -bgE -bts -buP -bwt -byl -bdm -bBL -bDB -bFu -bHi -bJh -bLl -bNg -bOW -bRc -bTu -bVz -bXk -bYU -caS -ccD -cen -bim -chi -ciM -cks -cgX -aaf -aaf -cqf -cry -csP -cuB -cvR -cxD -cxD -cxD -cxD -cxD -cEy -cGi -cHB -cxD -cxD -cxD -cxD -cxD -cRs -cvR -cUN -csQ -cYj -cqf -aaf -dcr -ddK -dfD -cDe -diE -dkr -daM -aaf -daM -dqs -drY -abf -duD -abx -dxl -abf -aaf -agg -agg -agg -aaf -agg -agg -agg -aaf -aaf -aaf -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(210,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aBU -aDr -aEL -aGd -aHu -aIE -aJX -aLE -aNv -aHu -aHu -aHu -aHu -aVJ -aXq -aZc -aBU -aaa -bdm -beU -bgH -bgH -bkc -blz -bny -bpy -bqU -bsl -btt -buQ -bwu -bym -bdm -bBF -bDC -bBF -bHi -bJi -bLm -bNh -bNh -bNh -bTv -bVA -bXl -bHi -caT -ccE -ceo -bdi -cgX -ciP -cgX -cgX -aaa -aaa -cqf -cry -csQ -cuC -cvS -cxE -czb -csQ -czc -cDt -cEz -cEz -cHC -cIQ -cKQ -csQ -cNW -cNW -cRt -cTd -cUO -cNW -cYj -cqf -aaa -dcr -dcr -cDe -cDe -cDe -daM -daM -aaa -daM -daM -cDe -abg -abg -aby -abg -abg -aaf -aaa -aaa -aaf -aaa -aaa -aaf -aaf -aaa -aaf -aaa -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(211,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -agg -aaf -aBU -aBU -aEM -aBU -aBU -aIF -aJS -aLF -aNw -aHu -aQJ -aSw -aTY -aVK -aXo -aZd -aYX -aaf -bdm -beV -bgI -biB -bkd -blA -bnz -bpz -bqV -bsm -btu -buL -bwv -byn -bdm -aaf -aaa -aaf -bHi -bJj -bLn -bNi -bOX -bRd -bTw -bVB -bXm -bHi -caU -ccF -caU -bdi -aaa -aaf -aaa -aaa -cmY -aaa -cqf -crz -csQ -cuD -cvT -cxF -czc -csQ -cCl -cDu -cxF -cxF -cHD -cIR -cKR -csQ -cNX -cPT -cNW -cTe -cUP -cWs -cYj -cqf -aaf -aaf -aaf -aaf -aaf -aaf -aaf -aaf -aaf -aaf -aaf -aaf -aaf -abg -abz -abg -aaf -aaa -aaa -agg -agg -aaf -agg -agg -agg -agg -aaf -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(212,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -agg -aaf -aaf -aaf -aaa -aaf -aBU -aIG -aJY -aLG -aNx -aOX -aQP -aSx -aUc -aVL -aXs -aZe -aBU -aaa -bdm -beW -beW -biC -bke -blB -bnA -bpA -beW -beW -bdm -bdm -bdm -bdm -bdm -aaf -aaa -aaf -bHi -bHi -bHi -bHi -bHi -bHi -bHi -bHi -bHi -bHi -bdi -bVq -bdi -bdi -aaa -aaf -aaf -agg -aaf -aaf -cqf -crA -csQ -cuD -cvU -cxF -czc -csQ -cCl -cDu -cxF -cxF -cxF -cIR -cKR -csQ -cNY -cPU -csQ -cTe -cUQ -cWt -cYk -cqf -aaf -aaa -agg -agg -agg -agg -agg -aaa -agg -aaa -agg -agg -aaf -abg -aby -abg -aaf -aaf -agg -agg -aaa -aaa -aaf -aaa -aaa -aaf -aaf -agg -agg -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(213,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaf -aaf -aBV -aIH -aJZ -aLH -aNy -aHu -aQQ -aSy -aHu -aVM -aXw -aBU -aBU -aaf -aaf -beW -bgJ -biD -bkf -blC -bnB -bpB -bqW -beW -aaa -aaa -aaf -aaa -aaa -aaf -aaa -aaf -aaf -aaf -aaf -aaf -bOY -aaf -aaa -aaa -aaf -aaa -aaa -aaf -aaa -aaa -aaa -aaf -aaa -aaa -aaa -aaa -cqf -crB -csQ -cuD -cvT -cxF -czc -csQ -cCl -cDu -cEA -cxF -cxF -cIR -cKR -csQ -cNZ -cPV -csQ -cTf -cUR -cWu -czc -cqf -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaa -dwb -aaf -aaf -aaa -aaf -aaa -aaa -dzD -dAW -dCj -aaa -aaa -aaf -aaa -aaa -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(214,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -agg -aaf -aaa -aaf -aBV -aII -aKa -aLI -aHy -aHy -aHy -aHy -aBU -aVN -aXo -aYX -aaa -aaf -aaa -beX -bgK -biE -bkg -blD -bnC -biG -bqX -beX -aaf -agg -agg -aaf -agg -agg -agg -agg -aaf -agg -agg -agg -agg -aaf -agg -agg -agg -agg -agg -aaf -agg -agg -aaf -aaf -agg -agg -aaf -aaf -cqf -crC -csQ -cuE -cvV -cxG -czd -csQ -czc -cDv -cEB -cGj -cGj -cIS -cKQ -csQ -cNW -cNW -cRu -cTg -cUS -cNW -cWv -cqf -aaf -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -agg -aaf -dwc -aaf -aaa -dzD -dAW -dCj -aaa -dzD -dAW -dCj -aaa -dzD -dAW -dCj -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(215,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aad -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -agg -aaf -aaf -aaf -aBU -aIJ -aKb -aLJ -aHy -aOY -aQR -aSz -aBU -aVO -aXx -aYX -aaf -aaf -aaf -beY -bgL -biF -bkh -blE -bnD -bpC -bqY -bsn -aaa -aaf -aaa -aaa -aaf -aaf -aaa -aaf -aaf -aaf -aaa -aaf -aaf -aaa -aaf -aaa -aaf -aaa -aaa -aaf -aaa -aaa -aaa -aaf -aaa -aaa -aaa -aaa -cqf -crC -csQ -cuF -cvW -cxH -cxH -cxH -cxH -cxH -cEC -cxH -cxH -cxH -cxH -cxH -cxH -cxH -cxH -cTh -cuF -csQ -cWv -cqf -aaf -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaa -dwc -aaf -aaf -dzD -dAW -dCj -aaa -dzD -dAW -dCj -aaa -dzD -dAW -dCj -aaa -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(216,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaa -aGe -aHy -aHy -aHy -aHy -aHy -aOZ -aQS -aSA -aUd -aVP -aXx -aYX -aaa -aaf -aaa -beZ -bgM -biG -bki -blF -bnE -biG -bqZ -beZ -aaf -aaf -agg -agg -agg -aaf -aaf -aaf -aaf -aaf -aaf -agg -agg -agg -agg -aaf -aaf -aaf -agg -agg -agg -agg -aaf -agg -aaf -aaf -agg -aaf -cqf -crC -crC -cuG -cvX -cxI -cze -cAQ -cAQ -cvX -cED -cGk -cGk -cIT -cKS -cMo -cMo -cPW -cMo -cKS -cUT -cWv -cYl -cqf -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -agg -aaf -dwc -aaf -aaa -dzD -dAW -dCj -aaf -dzD -dAW -dCj -aaf -dzD -dAW -dCj -aaf -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aad -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(217,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaH -aaf -aaf -aHz -aIK -aKc -aLK -aNz -aPa -aQT -aSB -aUe -aVQ -aXy -aBU -aaf -aaf -aaf -beW -bgN -biH -bkf -blG -bnF -bpD -bra -beW -aaa -aaf -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -cqf -crD -crD -crD -cqf -cqf -cqf -cqf -cqf -cqf -cEE -cqf -cqf -cIU -cqf -cqf -cqf -cqf -cqf -cqf -cUU -cWw -cYm -cqf -aaf -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -agg -aaa -dwc -aaf -aaf -dzD -dAW -dCj -aaa -dzD -dAW -dCj -aaa -dzD -dAW -dCj -aaa -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(218,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaH -aaa -aaa -aHz -aIL -aKd -aLL -aNA -aPb -aQU -aSC -aBU -aVR -aXz -aBU -aaf -aaa -aaf -beW -beW -biI -bkj -blH -bnG -bpE -beW -beW -aaf -aaf -aaf -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -cqf -crE -csR -cuH -cqf -aaa -aaa -aaf -aaa -cqf -cEF -cqe -cGl -cIV -cqf -aaa -aaf -aaa -aaa -cqf -cUV -cWx -cYn -cqf -aaf -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -agg -aaf -dwc -aaf -aaa -dzD -dAW -dCj -aaa -aaf -dwb -aaf -aaa -dzD -dAW -dCj -aaa -agg -aaf -agg -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(219,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaH -aaf -aaf -aHz -aIM -aKe -aLM -aNB -aPc -aQV -aSD -aBU -aVS -aXA -aBU -aaf -aaa -aaf -aaa -beW -biJ -bkk -blI -bnH -biJ -beW -aaa -aaa -aaf -aaa -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -cqe -cqf -cqf -cqf -cqe -aaf -czf -cAR -cAR -cAR -cEG -cqf -cqf -cIW -cKT -cKT -cKT -cPX -aaf -cqe -cqf -cqf -cqf -cqe -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaa -dwc -aaf -aaa -aaf -dwb -aaf -aaf -aaf -dwc -aaf -aaf -aaf -dwb -aaf -aaa -aaa -aaf -aaa -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(220,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaa -aGe -aHy -aHy -aHy -aHy -aHy -aPd -aQW -aSE -aBU -aVT -aXB -aBU -aaf -aaa -aaf -aaa -beW -biK -bkf -blJ -bnI -bpF -beW -aaf -aaf -aaf -aaa -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaf -aaf -aaf -aaf -cqf -aaa -czg -cAS -cAS -cAS -cAS -cAS -cAS -cAS -cAS -cAS -cAS -cPY -aaa -cqf -aaf -aaf -aaf -aaf -aaf -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -agg -aaf -dwc -dxm -dyu -dyu -dyu -dyu -dyu -dyu -dFC -dHm -dwc -dIH -dxm -dyu -dyu -dyu -dNs -aaf -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(221,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aBW -aaf -aaf -aaf -aaf -aaf -aaf -aaf -aHy -aPe -aQX -aSF -aBU -aVR -aXz -aBU -aHu -aaf -aaf -aaf -beW -biL -bkl -blK -bnJ -bpG -beW -aaa -aaf -aaa -aaf -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -cqf -aaa -czg -cAS -cAS -cAS -cAS -cAS -cAS -cAS -cAS -cAS -cAS -cPY -aaa -cqf -aaf -aaa -aaa -agg -agg -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -agg -aaa -aaa -aaf -aaa -aaf -dAX -aaf -aaf -aaf -dwc -aaf -aaf -aaf -dAX -aaf -aaa -aaa -aaf -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(222,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -agg -agg -agg -aaa -agg -agg -agg -aaa -aHy -aHy -aHy -aHy -aBU -aVU -aXC -aZf -aHu -aaa -aaf -aaa -beW -biM -bkm -blL -bnK -bpH -beW -aaf -aaf -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -agg -aaf -aaf -aaf -cqf -aaf -czh -cAT -cAS -cAS -cAS -cAS -cAS -cAS -cAS -cAS -cOa -cPZ -aaf -cqf -aaf -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -agg -agg -aaf -aaf -aaa -dzD -dAY -dCj -aaa -aaf -dAX -aaf -aaa -dzD -dAY -dCj -aaa -agg -agg -aaf -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(223,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaH -aQY -aSG -aUf -aVV -aXD -aZg -aYX -aaa -aaf -aaa -beW -beW -bkn -blM -bnL -beW -beW -aaa -aaf -aaf -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -cqf -aaa -czg -cAS -cAS -cAS -cAS -cAS -cAS -cAS -cAS -cAS -cAS -cPY -aaa -cqf -aaf -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaf -dzD -dAY -dCj -aaa -dzD -dAY -dCj -aaa -dzD -dAY -dCj -aaa -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(224,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aHu -aHu -aHu -aVW -aXE -aKa -aHu -aaa -aaf -aaa -aaa -aaf -aaa -aaf -aaa -aaf -aaa -aaa -aaf -aaa -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -agg -aaf -cqf -aaa -czg -cAS -cAS -cAS -cAS -cAS -cAS -cAS -cAS -cAS -cAS -cPY -aaa -cqf -aaf -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -agg -aaa -dzD -dAY -dCj -aaf -dzD -dAY -dCj -aaf -dzD -dAY -dCj -aaf -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(225,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aHu -aVX -aXF -aVX -aHu -aaf -agg -agg -agg -aaf -agg -agg -agg -agg -agg -agg -aaf -aaa -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -agg -aaf -cqe -aaf -czi -cAR -cAR -cAR -cEH -cqf -cqf -cIX -cKT -cKT -cKT -cQa -aaf -cqe -aaf -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -agg -aaf -dzD -dAY -dCj -aaa -dzD -dAY -dCj -aaa -dzD -dAY -dCj -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(226,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -agg -aaf -aHu -aVY -aVY -aZh -aHu -aaa -aaa -aaa -aaa -aaf -aaa -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -cqf -aaa -aaa -aaf -aaa -cqf -cEI -cGl -cqe -cIY -cqf -aaa -aaf -aaa -aaa -cqf -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -agg -aaa -dzD -dAY -dCj -aaa -dzD -dAY -dCj -aaa -dzD -dAY -dCj -aaa -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(227,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -agg -aaf -aHu -aVZ -aXG -aVZ -aHu -aaf -aaf -agg -agg -agg -agg -agg -aaf -agg -agg -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -cqf -cqf -cqf -cqf -cqf -cqf -cEE -cqf -cqf -cIU -cqf -cqf -cqf -cqf -cqf -cqf -aaf -agg -aaa -aaa -aaa -aaa -aad -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -agg -aaa -aaa -aaa -aaa -aaa -dzD -dAY -dCj -aaa -aaa -aaa -aaa -aaa -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(228,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aHu -aWa -aXH -aWa -aHu -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaf -aaf -aaf -aaf -aaf -cqf -cEJ -cGm -cHE -cIZ -cqf -aaf -aaf -aaf -aaf -aaf -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -agg -agg -aaf -agg -agg -aaa -aaa -aaa -aaa -aaa -agg -aaf -agg -aaf -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -eaU -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(229,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aUg -aWa -aXI -aWa -aUg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aad -aaa -aaa -aaa -aaa -aaa -aaa -aaa -agg -agg -aaa -agg -aaf -cDw -cEK -cGn -cHF -cJa -cDw -aaf -aaa -agg -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -agg -agg -aaf -agg -agg -aaf -agg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(230,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aWa -aXJ -aWa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -cqf -cEL -cGo -cHG -cJb -cqf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(231,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aXK -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -cqf -cqf -cqf -cqf -cqf -cqf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(232,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aad -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(233,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(234,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(235,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(236,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(237,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aad -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aad -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(238,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(239,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aad -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aad -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(240,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(241,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(242,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(243,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(244,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(245,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(246,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(247,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(248,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(249,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(250,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(251,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(252,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(253,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(254,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(255,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} diff --git a/_maps/map_files/DreamStation/dreamstation04.dmm b/_maps/map_files/DreamStation/dreamstation04.dmm index a493885269..739ad0c688 100644 --- a/_maps/map_files/DreamStation/dreamstation04.dmm +++ b/_maps/map_files/DreamStation/dreamstation04.dmm @@ -81,7 +81,6 @@ /obj/item/stack/sheet/glass{ amount = 50 }, -/obj/item/stack/cable_coil/white, /turf/open/floor/plasteel/black, /area/storage/secure) "aap" = ( @@ -411,40 +410,40 @@ /area/aisat) "aaP" = ( /turf/closed/wall, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "aaQ" = ( /turf/closed/wall/r_wall, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "aaR" = ( /obj/structure/cable/white{ tag = "icon-1-10"; icon_state = "1-10" }, /turf/closed/wall/r_wall, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "aaS" = ( /obj/structure/cable/white{ tag = "icon-5-10"; icon_state = "5-10" }, /turf/closed/wall/r_wall, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "aaT" = ( /obj/machinery/porta_turret_construct, /obj/effect/decal/cleanable/cobweb, /turf/open/floor/plasteel/vault{ dir = 4 }, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "aaU" = ( /turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "aaV" = ( /obj/machinery/light{ dir = 1 }, /turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "aaW" = ( /obj/machinery/flasher{ id = "AI"; @@ -461,13 +460,13 @@ start_active = 1 }, /turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "aaX" = ( /obj/machinery/porta_turret_construct, /turf/open/floor/plasteel/vault{ dir = 1 }, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "aaY" = ( /obj/machinery/firealarm{ dir = 8; @@ -477,7 +476,7 @@ dir = 6 }, /turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "aaZ" = ( /obj/structure/cable/white{ tag = "icon-2-4"; @@ -495,14 +494,14 @@ tag = "icon-darkbluecorners (NORTH)"; dir = 1 }, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "aba" = ( /obj/structure/cable/white{ tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "abb" = ( /obj/machinery/ai_slipper{ icon_state = "motion0"; @@ -519,7 +518,7 @@ /turf/open/floor/plasteel/vault{ dir = 8 }, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "abc" = ( /obj/structure/cable/white{ tag = "icon-2-8"; @@ -533,7 +532,7 @@ tag = "icon-darkbluecorners (EAST)"; dir = 4 }, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "abd" = ( /obj/machinery/airalarm{ dir = 8; @@ -544,7 +543,7 @@ dir = 10 }, /turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "abe" = ( /obj/machinery/light{ icon_state = "tube1"; @@ -552,7 +551,7 @@ }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "abf" = ( /obj/structure/cable/white{ d1 = 1; @@ -560,7 +559,7 @@ icon_state = "1-2" }, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "abg" = ( /obj/machinery/porta_turret/ai{ dir = 4 @@ -568,11 +567,11 @@ /turf/open/floor/plasteel/vault{ dir = 4 }, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "abh" = ( /obj/structure/window/reinforced, /turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "abi" = ( /obj/structure/cable/white{ d1 = 1; @@ -583,9 +582,9 @@ name = "AI Core Door"; req_access_txt = "16" }, -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "abj" = ( /obj/machinery/porta_turret/ai{ dir = 8 @@ -593,14 +592,14 @@ /turf/open/floor/plasteel/vault{ dir = 1 }, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "abk" = ( /obj/machinery/light{ dir = 4 }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "abl" = ( /turf/closed/wall/r_wall, /area/aisat) @@ -610,14 +609,14 @@ }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "abn" = ( /obj/structure/window/reinforced{ dir = 4; pixel_x = 0 }, /turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "abo" = ( /obj/effect/landmark/start{ name = "AI" @@ -666,13 +665,13 @@ pixel_y = -25 }, /turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "abp" = ( /obj/structure/window/reinforced{ dir = 8 }, /turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "abq" = ( /obj/structure/window/reinforced{ dir = 4; @@ -680,7 +679,7 @@ }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "abr" = ( /obj/structure/cable/blue{ tag = "icon-1-2"; @@ -747,7 +746,7 @@ broken = 1; icon_state = "platingdmg2" }, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "abv" = ( /obj/effect/landmark{ name = "tripai" @@ -778,7 +777,7 @@ pixel_y = 23 }, /turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "abw" = ( /obj/machinery/door/window{ dir = 8; @@ -787,7 +786,7 @@ }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "abx" = ( /obj/machinery/ai_slipper{ icon_state = "motion0"; @@ -801,7 +800,7 @@ /turf/open/floor/plasteel/vault{ dir = 8 }, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "aby" = ( /obj/machinery/flasher{ id = "AI"; @@ -813,7 +812,7 @@ pixel_x = 0 }, /turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "abz" = ( /obj/machinery/flasher{ id = "AI"; @@ -824,7 +823,7 @@ dir = 8 }, /turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "abA" = ( /obj/machinery/door/window{ dir = 4; @@ -833,7 +832,7 @@ }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "abB" = ( /obj/effect/landmark{ name = "tripai" @@ -864,7 +863,7 @@ pixel_y = -27 }, /turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "abC" = ( /turf/open/space, /obj/item/weapon/dice/d8{ @@ -886,7 +885,7 @@ broken = 1; icon_state = "platingdmg2" }, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "abD" = ( /obj/structure/cable/blue{ tag = "icon-1-2"; @@ -927,7 +926,7 @@ icon_state = "0-10" }, /turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "abF" = ( /obj/docking_port/stationary{ dheight = 9; @@ -951,7 +950,7 @@ /turf/open/floor/plasteel/vault{ dir = 1 }, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "abH" = ( /obj/structure/window/reinforced{ dir = 1 @@ -967,7 +966,7 @@ icon_state = "2-5" }, /turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "abI" = ( /obj/machinery/power/terminal{ icon_state = "term"; @@ -987,7 +986,7 @@ tag = "icon-0-2" }, /turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "abJ" = ( /obj/structure/window/reinforced{ dir = 1 @@ -1003,7 +1002,7 @@ dir = 4 }, /turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "abK" = ( /obj/machinery/porta_turret/ai{ dir = 8 @@ -1014,7 +1013,7 @@ /turf/open/floor/plasteel/vault{ dir = 4 }, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "abL" = ( /obj/structure/cable/white{ d1 = 1; @@ -1025,7 +1024,7 @@ dir = 4 }, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "abM" = ( /obj/machinery/light{ dir = 4 @@ -1035,7 +1034,7 @@ dir = 4 }, /turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "abN" = ( /obj/machinery/airalarm{ dir = 4; @@ -1044,7 +1043,7 @@ }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "abO" = ( /obj/structure/cable/white{ tag = "icon-1-4"; @@ -1058,7 +1057,7 @@ tag = "icon-darkbluecorners (WEST)"; dir = 8 }, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "abP" = ( /obj/structure/cable/white{ tag = "icon-4-8"; @@ -1068,14 +1067,14 @@ dir = 9 }, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "abQ" = ( /obj/structure/cable/white{ tag = "icon-1-8"; icon_state = "1-8" }, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "abR" = ( /obj/machinery/ai_slipper{ icon_state = "motion0"; @@ -1092,7 +1091,7 @@ /turf/open/floor/plasteel/vault{ dir = 8 }, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "abS" = ( /obj/structure/cable/white{ tag = "icon-4-8"; @@ -1102,7 +1101,7 @@ dir = 6 }, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "abT" = ( /obj/structure/cable/white{ tag = "icon-1-8"; @@ -1119,7 +1118,7 @@ /turf/open/floor/plasteel/darkblue/corner{ tag = "icon-darkbluecorners" }, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "abU" = ( /obj/machinery/firealarm{ dir = 4; @@ -1127,7 +1126,7 @@ }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "abV" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 5 @@ -1136,21 +1135,21 @@ /turf/open/floor/plasteel/vault{ dir = 1 }, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "abW" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ tag = "icon-manifold-r-f (NORTH)"; dir = 1 }, /turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "abX" = ( /obj/machinery/light, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, /turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "abY" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 @@ -1160,7 +1159,7 @@ tag = "s" }, /turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "abZ" = ( /turf/open/floor/plasteel/darkblue/side{ tag = "icon-darkblue" @@ -1179,7 +1178,7 @@ dir = 4 }, /turf/open/floor/plasteel/warningline, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "aca" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 @@ -1191,20 +1190,20 @@ start_active = 1 }, /turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "acb" = ( /obj/machinery/light, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 9 }, /turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "acc" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 6 }, /turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "acd" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 9 @@ -1213,15 +1212,15 @@ /turf/open/floor/plasteel/vault{ dir = 4 }, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "ace" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/closed/wall/r_wall, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "acf" = ( /obj/machinery/status_display, /turf/closed/wall/r_wall, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "acg" = ( /obj/structure/cable/white{ d1 = 1; @@ -1236,29 +1235,30 @@ req_access_txt = "16" }, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "ach" = ( /obj/machinery/ai_status_display, /turf/closed/wall/r_wall, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "aci" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/closed/wall/r_wall, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "acj" = ( /turf/open/space, /obj/machinery/porta_turret/syndicate{ dir = 9 }, -/turf/closed/wall/mineral/plastitanium{ +/turf/closed/wall/shuttle{ dir = 8; icon_state = "diagonalWall3" }, /area/shuttle/syndicate) "ack" = ( -/obj/structure/shuttle/engine/propulsion, -/turf/closed/wall/mineral/titanium, -/area/shuttle/pod_2) +/turf/closed/wall/shuttle{ + icon_state = "wall3" + }, +/area/shuttle/syndicate) "acl" = ( /obj/structure/grille, /obj/machinery/door/poddoor/shutters{ @@ -1269,7 +1269,7 @@ /turf/open/floor/plating, /area/shuttle/syndicate) "acm" = ( -/turf/closed/wall/mineral/plastitanium, +/turf/closed/indestructible/opshuttle, /area/shuttle/syndicate) "acn" = ( /obj/structure/cable/blue{ @@ -1291,20 +1291,20 @@ /area/aisat) "aco" = ( /turf/closed/wall, -/area/ai_monitored/turret_protected/aisat_interior) +/area/turret_protected/aisat_interior) "acp" = ( /turf/closed/wall/r_wall, -/area/ai_monitored/turret_protected/aisat_interior) +/area/turret_protected/aisat_interior) "acq" = ( /obj/structure/table, /obj/item/weapon/secbot_assembly, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/aisat_interior) +/area/turret_protected/aisat_interior) "acr" = ( /obj/machinery/porta_turret/ai, /turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/aisat_interior) +/area/turret_protected/aisat_interior) "acs" = ( /turf/open/floor/plasteel/darkblue/side{ tag = "icon-darkblue (NORTH)"; @@ -1314,7 +1314,7 @@ tag = "icon-warningline (NORTH)"; dir = 1 }, -/area/ai_monitored/turret_protected/aisat_interior) +/area/turret_protected/aisat_interior) "act" = ( /turf/open/floor/plasteel/darkblue/side{ tag = "icon-darkblue (NORTH)"; @@ -1325,7 +1325,7 @@ tag = "icon-warningline (NORTH)"; dir = 1 }, -/area/ai_monitored/turret_protected/aisat_interior) +/area/turret_protected/aisat_interior) "acu" = ( /turf/open/floor/plasteel/darkblue/side{ tag = "icon-darkblue (NORTH)"; @@ -1341,14 +1341,14 @@ tag = "icon-warningline (NORTH)"; dir = 1 }, -/area/ai_monitored/turret_protected/aisat_interior) +/area/turret_protected/aisat_interior) "acv" = ( /obj/structure/table, -/obj/item/robot_suit, -/obj/item/bodypart/head/robot, +/obj/item/robot_parts/robot_suit, +/obj/item/robot_parts/head, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/aisat_interior) +/area/turret_protected/aisat_interior) "acw" = ( /obj/structure/cable/blue{ tag = "icon-1-2"; @@ -1369,10 +1369,10 @@ "acx" = ( /obj/structure/table, /obj/machinery/microwave, -/turf/open/floor/mineral/plastitanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "acy" = ( -/turf/open/floor/mineral/plastitanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "acz" = ( /obj/structure/table, @@ -1380,11 +1380,11 @@ pixel_x = 4; pixel_y = 1 }, -/turf/open/floor/mineral/plastitanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "acA" = ( /obj/machinery/computer/shuttle/syndicate, -/turf/open/floor/mineral/plastitanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "acB" = ( /obj/structure/table, @@ -1393,11 +1393,11 @@ name = "remote shutter control"; req_access_txt = "150" }, -/turf/open/floor/mineral/plastitanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "acC" = ( /obj/structure/frame/computer, -/turf/open/floor/mineral/plastitanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "acD" = ( /obj/structure/cable/blue{ @@ -1415,12 +1415,12 @@ icon_state = "0-4" }, /turf/open/floor/plating, -/area/ai_monitored/turret_protected/aisat_interior) +/area/turret_protected/aisat_interior) "acF" = ( /obj/structure/table, -/obj/item/bodypart/l_arm/robot, -/obj/item/bodypart/chest/robot, -/obj/item/bodypart/l_arm/robot, +/obj/item/robot_parts/l_arm, +/obj/item/robot_parts/chest, +/obj/item/robot_parts/l_arm, /obj/structure/cable/blue{ tag = "icon-2-8"; icon_state = "2-8" @@ -1430,20 +1430,20 @@ tag = "icon-darkbluecorners (NORTH)"; dir = 1 }, -/area/ai_monitored/turret_protected/aisat_interior) +/area/turret_protected/aisat_interior) "acG" = ( /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/aisat_interior) +/area/turret_protected/aisat_interior) "acH" = ( /obj/structure/cable/blue{ tag = "icon-0-2"; icon_state = "0-2" }, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/aisat_interior) +/area/turret_protected/aisat_interior) "acI" = ( /obj/structure/table, -/obj/item/bodypart/r_arm/robot, +/obj/item/robot_parts/r_arm, /obj/structure/cable/blue{ tag = "icon-2-4"; icon_state = "2-4" @@ -1454,7 +1454,7 @@ tag = "icon-darkbluecorners (EAST)"; dir = 4 }, -/area/ai_monitored/turret_protected/aisat_interior) +/area/turret_protected/aisat_interior) "acJ" = ( /obj/effect/spawner/structure/window/reinforced, /obj/structure/cable/blue{ @@ -1462,21 +1462,21 @@ icon_state = "0-8" }, /turf/open/floor/plating, -/area/ai_monitored/turret_protected/aisat_interior) +/area/turret_protected/aisat_interior) "acK" = ( /obj/structure/table, /obj/item/weapon/storage/box/donkpockets{ pixel_x = 3; pixel_y = 3 }, -/turf/open/floor/mineral/plastitanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "acL" = ( /turf/open/space, /obj/machinery/porta_turret/syndicate{ dir = 5 }, -/turf/closed/wall/mineral/plastitanium{ +/turf/closed/wall/shuttle{ dir = 1; icon_state = "diagonalWall3" }, @@ -1498,7 +1498,7 @@ dir = 4 }, /turf/open/floor/plating, -/area/ai_monitored/turret_protected/aisat_interior) +/area/turret_protected/aisat_interior) "acO" = ( /obj/structure/table, /obj/structure/cable/blue{ @@ -1511,9 +1511,9 @@ }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, /obj/item/device/assembly/flash/handheld, -/obj/item/bodypart/r_leg/robot, +/obj/item/robot_parts/r_leg, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/aisat_interior) +/area/turret_protected/aisat_interior) "acP" = ( /obj/structure/cable/blue{ tag = "icon-4-8"; @@ -1523,7 +1523,7 @@ dir = 4 }, /turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/aisat_interior) +/area/turret_protected/aisat_interior) "acQ" = ( /obj/structure/cable/blue{ tag = "icon-4-8"; @@ -1533,7 +1533,7 @@ dir = 10 }, /turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/aisat_interior) +/area/turret_protected/aisat_interior) "acR" = ( /obj/structure/cable/blue{ tag = "icon-1-2"; @@ -1547,12 +1547,12 @@ tag = "icon-2-8"; icon_state = "2-8" }, -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /turf/open/floor/plasteel/darkblue/side{ tag = "icon-darkblue (NORTH)"; dir = 1 }, -/area/ai_monitored/turret_protected/aisat_interior) +/area/turret_protected/aisat_interior) "acS" = ( /obj/structure/cable/blue{ tag = "icon-4-8"; @@ -1562,7 +1562,7 @@ dir = 6 }, /turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/aisat_interior) +/area/turret_protected/aisat_interior) "acT" = ( /obj/structure/cable/blue{ tag = "icon-4-8"; @@ -1572,10 +1572,10 @@ dir = 4 }, /turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/aisat_interior) +/area/turret_protected/aisat_interior) "acU" = ( /obj/structure/table, -/obj/item/bodypart/l_leg/robot, +/obj/item/robot_parts/l_leg, /obj/structure/cable/blue{ tag = "icon-4-8"; icon_state = "4-8" @@ -1588,7 +1588,7 @@ /obj/machinery/atmospherics/pipe/manifold/supply/hidden, /obj/item/device/assembly/flash/handheld, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/aisat_interior) +/area/turret_protected/aisat_interior) "acV" = ( /obj/effect/spawner/structure/window/reinforced, /obj/structure/cable/blue{ @@ -1599,7 +1599,7 @@ dir = 4 }, /turf/open/floor/plating, -/area/ai_monitored/turret_protected/aisat_interior) +/area/turret_protected/aisat_interior) "acW" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 10 @@ -1613,7 +1613,7 @@ amount = 10 }, /obj/item/device/multitool, -/turf/open/floor/mineral/plastitanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "acY" = ( /obj/item/device/radio/intercom{ @@ -1625,11 +1625,11 @@ subspace_transmission = 1; syndie = 1 }, -/turf/open/floor/mineral/plastitanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "acZ" = ( /obj/structure/closet/syndicate/personal, -/turf/open/floor/mineral/plastitanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "ada" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -1647,14 +1647,14 @@ dir = 8 }, /turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/aisat_interior) +/area/turret_protected/aisat_interior) "adc" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/plasteel/darkblue/corner{ tag = "icon-darkbluecorners (NORTH)"; dir = 1 }, -/area/ai_monitored/turret_protected/aisat_interior) +/area/turret_protected/aisat_interior) "add" = ( /obj/machinery/ai_slipper{ icon_state = "motion0"; @@ -1667,14 +1667,14 @@ /turf/open/floor/plasteel/vault{ dir = 8 }, -/area/ai_monitored/turret_protected/aisat_interior) +/area/turret_protected/aisat_interior) "ade" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/open/floor/plasteel/darkblue/corner{ tag = "icon-darkbluecorners (EAST)"; dir = 4 }, -/area/ai_monitored/turret_protected/aisat_interior) +/area/turret_protected/aisat_interior) "adf" = ( /obj/machinery/firealarm{ dir = 4; @@ -1684,7 +1684,7 @@ dir = 4 }, /turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/aisat_interior) +/area/turret_protected/aisat_interior) "adg" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/structure/lattice, @@ -1692,7 +1692,8 @@ /area/space) "adh" = ( /turf/open/space, -/turf/closed/wall/mineral/plastitanium{ +/turf/closed/wall/shuttle{ + dir = 2; icon_state = "diagonalWall3" }, /area/shuttle/syndicate) @@ -1701,11 +1702,11 @@ name = "Cockpit"; req_access_txt = "150" }, -/turf/open/floor/mineral/plastitanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "adj" = ( /turf/open/space, -/turf/closed/wall/mineral/plastitanium{ +/turf/closed/wall/shuttle{ dir = 4; icon_state = "diagonalWall3" }, @@ -1727,14 +1728,14 @@ tag = "icon-darkblue (WEST)"; dir = 8 }, -/area/ai_monitored/turret_protected/aisat_interior) +/area/turret_protected/aisat_interior) "adl" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber{ dir = 1; on = 1 }, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/aisat_interior) +/area/turret_protected/aisat_interior) "adm" = ( /obj/structure/cable/blue{ tag = "icon-2-4"; @@ -1745,7 +1746,7 @@ icon_state = "1-2" }, /turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/aisat_interior) +/area/turret_protected/aisat_interior) "adn" = ( /obj/structure/cable/blue{ tag = "icon-4-8"; @@ -1756,7 +1757,7 @@ on = 1 }, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/aisat_interior) +/area/turret_protected/aisat_interior) "ado" = ( /obj/structure/cable/blue{ tag = "icon-0-8"; @@ -1778,7 +1779,7 @@ tag = "icon-darkblue (EAST)"; dir = 4 }, -/area/ai_monitored/turret_protected/aisat_interior) +/area/turret_protected/aisat_interior) "adp" = ( /obj/structure/lattice, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -1788,7 +1789,7 @@ /obj/structure/table, /obj/item/stack/cable_coil, /obj/item/weapon/crowbar/red, -/turf/open/floor/mineral/plastitanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "adr" = ( /obj/structure/table, @@ -1796,46 +1797,48 @@ pixel_x = 1; pixel_y = 2 }, -/turf/open/floor/mineral/plastitanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "ads" = ( /obj/effect/spawner/structure/window/reinforced, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/plating, -/area/ai_monitored/turret_protected/aisat_interior) +/area/turret_protected/aisat_interior) "adt" = ( /obj/machinery/porta_turret/ai{ dir = 4 }, /turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/aisat_interior) +/area/turret_protected/aisat_interior) "adu" = ( /obj/structure/cable/blue{ tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/aisat_interior) +/area/turret_protected/aisat_interior) "adv" = ( /obj/machinery/porta_turret/ai{ dir = 8 }, /turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/aisat_interior) +/area/turret_protected/aisat_interior) "adw" = ( /obj/effect/spawner/structure/window/reinforced, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/open/floor/plating, -/area/ai_monitored/turret_protected/aisat_interior) +/area/turret_protected/aisat_interior) "adx" = ( -/obj/structure/shuttle/engine/propulsion, -/turf/closed/wall/mineral/titanium, -/area/shuttle/pod_1) +/obj/structure/chair{ + dir = 4 + }, +/turf/open/floor/plasteel/shuttle/red, +/area/shuttle/syndicate) "ady" = ( /obj/structure/chair{ dir = 8 }, -/turf/open/floor/mineral/plastitanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "adz" = ( /obj/structure/cable/blue{ @@ -1871,14 +1874,14 @@ /area/space) "adD" = ( /turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/aisat_interior) +/area/turret_protected/aisat_interior) "adE" = ( /obj/structure/cable/blue{ tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/aisat_interior) +/area/turret_protected/aisat_interior) "adF" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 5 @@ -1916,7 +1919,7 @@ dir = 1; icon_state = "comfychair" }, -/turf/open/floor/mineral/plastitanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "adK" = ( /obj/structure/cable/blue{ @@ -1948,7 +1951,7 @@ req_one_access_txt = "65" }, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/aisat_interior) +/area/turret_protected/aisat_interior) "adM" = ( /obj/structure/cable/blue{ tag = "icon-1-2"; @@ -1969,11 +1972,11 @@ /area/aisat) "adN" = ( /obj/machinery/suit_storage_unit/syndicate, -/turf/open/floor/mineral/plastitanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "adO" = ( /obj/structure/closet/syndicate/nuclear, -/turf/open/floor/mineral/plastitanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "adP" = ( /obj/structure/cable/blue{ @@ -2231,16 +2234,17 @@ "aef" = ( /obj/structure/table, /obj/item/device/aicard, -/turf/open/floor/mineral/plastitanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "aeg" = ( /obj/structure/chair/stool{ pixel_y = 8 }, -/turf/open/floor/mineral/plastitanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "aeh" = ( /obj/machinery/door/poddoor{ + auto_close = 300; id = "smindicate"; name = "outer blast door" }, @@ -2258,8 +2262,8 @@ height = 24; id = "syndicate"; name = "syndicate infiltrator"; - port_angle = 0; roundstart_move = "syndicate_away"; + travelDir = 180; width = 18 }, /obj/docking_port/stationary{ @@ -2276,7 +2280,7 @@ /area/shuttle/syndicate) "aei" = ( /turf/open/space, -/turf/closed/wall/mineral/plastitanium{ +/turf/closed/wall/shuttle{ dir = 1; icon_state = "diagonalWall3" }, @@ -2342,21 +2346,23 @@ /turf/open/floor/plasteel/black, /area/aisat) "aes" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1 +/turf/closed/wall/shuttle{ + icon_state = "swall_s6"; + dir = 2 }, -/turf/open/floor/plasteel, -/area/hallway/secondary/entry) +/area/shuttle/abandoned) "aet" = ( -/turf/closed/wall/mineral/titanium, +/turf/closed/wall/shuttle{ + icon_state = "swall12"; + dir = 2 + }, /area/shuttle/abandoned) "aeu" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 5 +/turf/closed/wall/shuttle{ + icon_state = "swall_s10"; + dir = 2 }, -/turf/open/floor/plasteel/white, -/area/medical/exam_room) +/area/shuttle/abandoned) "aev" = ( /obj/structure/sign/securearea{ desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; @@ -2365,7 +2371,7 @@ name = "EXTERNAL AIRLOCK"; pixel_x = 0 }, -/turf/closed/wall/mineral/plastitanium, +/turf/closed/indestructible/opshuttle, /area/shuttle/syndicate) "aew" = ( /obj/machinery/computer/teleporter, @@ -2420,43 +2426,42 @@ /turf/open/floor/plasteel/black, /area/aisat) "aeD" = ( -/turf/open/floor/mineral/titanium, -/turf/closed/wall/mineral/titanium/interior, +/turf/closed/wall/shuttle{ + tag = "icon-swall_f13"; + icon_state = "swall_f13" + }, /area/shuttle/abandoned) "aeE" = ( /obj/machinery/sleeper, /obj/effect/decal/remains/human, /obj/effect/decal/cleanable/blood/old, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "aeF" = ( -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "aeG" = ( /obj/structure/frame/computer{ anchored = 1 }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "aeH" = ( /obj/structure/table/optable, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "aeI" = ( -/obj/structure/cable/green{ - tag = "icon-1-8"; - icon_state = "1-8" +/turf/closed/wall/shuttle{ + tag = "icon-swall_f11"; + icon_state = "swall_f11" }, -/turf/open/floor/plasteel, -/area/hallway/primary/fore{ - name = "Fore Starboard Hallway" - }) +/area/shuttle/abandoned) "aeJ" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/hallway/primary/fore{ - name = "Fore Starboard Hallway" - }) +/turf/closed/wall/shuttle{ + icon_state = "swall13"; + dir = 2 + }, +/area/shuttle/abandoned) "aeK" = ( /obj/structure/shuttle/engine/propulsion{ icon_state = "propulsion"; @@ -2470,7 +2475,7 @@ name = "EVA Storage"; req_access_txt = "150" }, -/turf/open/floor/mineral/plastitanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "aeM" = ( /obj/structure/table, @@ -2494,7 +2499,7 @@ pixel_x = 3; pixel_y = 3 }, -/turf/open/floor/mineral/plastitanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "aeN" = ( /obj/structure/cable/blue{ @@ -2519,7 +2524,7 @@ tag = "icon-1-8"; icon_state = "1-8" }, -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /turf/open/floor/plasteel/black, /area/aisat) "aeP" = ( @@ -2546,21 +2551,24 @@ /turf/open/floor/plating, /area/aisat) "aeR" = ( -/turf/open/floor/plasteel, -/area/hallway/primary/fore{ - name = "Fore Starboard Hallway" - }) +/turf/closed/wall/shuttle{ + icon_state = "swall11"; + dir = 2 + }, +/area/shuttle/abandoned) "aeS" = ( /obj/structure/table, /obj/item/weapon/storage/firstaid/regular{ pixel_x = 6; pixel_y = -5 }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "aeT" = ( -/turf/open/floor/plating, -/turf/closed/wall/mineral/titanium/interior, +/turf/closed/wall/shuttle{ + tag = "icon-swall_f18"; + icon_state = "swall_f18" + }, /area/shuttle/abandoned) "aeU" = ( /obj/structure/shuttle/engine/heater{ @@ -2577,7 +2585,7 @@ name = "Ready Room"; req_access_txt = "150" }, -/turf/open/floor/mineral/plastitanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "aeW" = ( /obj/machinery/door/window{ @@ -2587,7 +2595,7 @@ name = "EVA Storage"; req_access_txt = "150" }, -/turf/open/floor/mineral/plastitanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "aeX" = ( /obj/structure/grille, @@ -2598,7 +2606,7 @@ /obj/structure/rack, /obj/item/clothing/suit/space/syndicate/black/red, /obj/item/clothing/head/helmet/space/syndicate/black/red, -/turf/open/floor/mineral/plastitanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "aeZ" = ( /obj/structure/transit_tube{ @@ -2608,20 +2616,23 @@ /turf/open/space, /area/space) "afa" = ( -/obj/structure/lattice, -/obj/structure/transit_tube/curved/flipped{ - dir = 4 +/obj/structure/transit_tube{ + icon_state = "E-SW" }, +/obj/structure/lattice, /turf/open/space, /area/space) "afb" = ( +/obj/structure/transit_tube, /obj/structure/lattice, -/obj/structure/transit_tube/horizontal, /turf/open/space, /area/space) "afc" = ( /obj/structure/lattice/catwalk, -/obj/structure/transit_tube/crossing/horizontal, +/obj/structure/transit_tube{ + tag = "icon-E-W-Pass"; + icon_state = "E-W-Pass" + }, /turf/open/space, /area/space) "afd" = ( @@ -2631,15 +2642,15 @@ /area/space) "afe" = ( /obj/structure/window/reinforced/fulltile, -/obj/structure/transit_tube/horizontal, +/obj/structure/transit_tube, /turf/open/floor/plating, /area/aisat) "aff" = ( +/obj/structure/transit_tube, /obj/structure/cable/blue{ tag = "icon-1-2"; icon_state = "1-2" }, -/obj/structure/transit_tube/horizontal, /turf/open/floor/plasteel/darkblue/corner{ tag = "icon-darkbluecorners (WEST)"; dir = 8 @@ -2650,7 +2661,11 @@ tag = "icon-1-2"; icon_state = "1-2" }, -/obj/structure/transit_tube/station/reverse/flipped, +/obj/structure/transit_tube/station/reverse{ + tag = "icon-closed (NORTH)"; + icon_state = "closed"; + dir = 1 + }, /turf/open/floor/plasteel/black, /area/aisat) "afh" = ( @@ -2658,6 +2673,11 @@ tag = "icon-1-2"; icon_state = "1-2" }, +/obj/structure/transit_tube{ + tag = "icon-Block (WEST)"; + icon_state = "Block"; + dir = 8 + }, /turf/open/floor/plasteel/darkblue/corner{ tag = "icon-darkbluecorners" }, @@ -2684,46 +2704,35 @@ /turf/open/floor/plating, /area/aisat) "afk" = ( -/obj/structure/cable/green{ - tag = "icon-2-4"; - icon_state = "2-4" +/turf/closed/wall/shuttle{ + icon_state = "swall15"; + dir = 2 }, -/turf/open/floor/plasteel, -/area/hallway/primary/fore{ - name = "Fore Starboard Hallway" - }) +/area/shuttle/abandoned) "afl" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable/green{ - tag = "icon-4-8"; - icon_state = "4-8" +/turf/closed/wall/shuttle{ + tag = "icon-swall_f14"; + icon_state = "swall_f14" }, -/turf/open/floor/plasteel, -/area/hallway/primary/fore{ - name = "Fore Starboard Hallway" - }) +/area/shuttle/abandoned) "afm" = ( /obj/item/weapon/hemostat, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "afn" = ( /obj/item/weapon/scalpel, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "afo" = ( /obj/item/weapon/circuitboard/computer/operating, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "afp" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/cable/green{ - tag = "icon-4-8"; - icon_state = "4-8" +/turf/closed/wall/shuttle{ + icon_state = "swall7"; + dir = 2 }, -/turf/open/floor/plasteel, -/area/hallway/primary/fore{ - name = "Fore Starboard Hallway" - }) +/area/shuttle/abandoned) "afq" = ( /turf/open/floor/plating, /area/shuttle/abandoned) @@ -2744,11 +2753,13 @@ subspace_transmission = 1; syndie = 1 }, -/turf/open/floor/mineral/plastitanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "aft" = ( +/obj/structure/transit_tube{ + icon_state = "NE-SW" + }, /obj/structure/lattice, -/obj/structure/transit_tube/diagonal, /turf/open/space, /area/space) "afu" = ( @@ -2793,38 +2804,29 @@ /turf/open/floor/plating, /area/aisat) "afA" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - layer = 2.4; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 +/turf/closed/wall/shuttle{ + icon_state = "swall14"; + dir = 2 }, -/obj/structure/cable/green{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel, -/area/hallway/primary/fore{ - name = "Fore Starboard Hallway" - }) +/area/shuttle/abandoned) "afB" = ( /obj/structure/grille, /obj/structure/window/shuttle, /turf/open/floor/plating, /area/shuttle/abandoned) "afC" = ( -/obj/machinery/door/airlock/titanium, -/turf/open/floor/mineral/titanium, +/obj/machinery/door/airlock/shuttle, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "afD" = ( /obj/machinery/recharge_station, -/turf/open/floor/mineral/plastitanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "afE" = ( /obj/machinery/door/airlock/external{ req_access_txt = "150" }, -/turf/open/floor/mineral/plastitanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "afF" = ( /obj/docking_port/stationary{ @@ -2840,13 +2842,13 @@ /turf/open/space, /area/space) "afG" = ( -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/syndicate) "afH" = ( /obj/machinery/sleeper/syndie{ dir = 4 }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/syndicate) "afI" = ( /obj/structure/table, @@ -2856,13 +2858,13 @@ /obj/item/device/assembly/voice{ pixel_y = 3 }, -/turf/open/floor/mineral/plastitanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "afJ" = ( /obj/structure/table, /obj/item/weapon/wrench, /obj/item/device/assembly/infra, -/turf/open/floor/mineral/plastitanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "afK" = ( /obj/structure/table, @@ -2876,7 +2878,7 @@ pixel_x = -8; pixel_y = 4 }, -/turf/open/floor/mineral/plastitanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "afL" = ( /obj/structure/table, @@ -2884,7 +2886,7 @@ pixel_y = 3 }, /obj/item/device/multitool, -/turf/open/floor/mineral/plastitanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "afM" = ( /obj/structure/grille, @@ -2954,50 +2956,44 @@ /obj/structure/chair{ dir = 1 }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "afU" = ( /obj/structure/table, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "afV" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment, -/obj/structure/cable/green{ - tag = "icon-1-2"; - icon_state = "1-2" +/turf/closed/wall/shuttle{ + icon_state = "swall3"; + dir = 2 }, -/turf/open/floor/plating, -/area/maintenance/fpmaint) +/area/shuttle/abandoned) "afW" = ( -/obj/machinery/door/airlock/titanium, +/obj/machinery/door/airlock/shuttle, /turf/open/floor/plating, /area/shuttle/abandoned) "afX" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/disposalpipe/segment{ - dir = 4 +/turf/closed/wall/shuttle{ + tag = "icon-swall_f16"; + icon_state = "swall_f16" }, -/turf/open/floor/plasteel, -/area/hallway/primary/aft{ - name = "Aft Port Hallway" - }) +/area/shuttle/abandoned) "afY" = ( /obj/structure/tank_dispenser/oxygen, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/syndicate) "afZ" = ( /obj/machinery/door/window/westright{ name = "Tool Storage"; req_access_txt = "150" }, -/turf/open/floor/mineral/plastitanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "aga" = ( /obj/structure/table, /obj/item/weapon/storage/toolbox/syndicate, /obj/item/weapon/crowbar/red, -/turf/open/floor/mineral/plastitanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "agb" = ( /obj/structure/lattice/catwalk, @@ -3012,7 +3008,7 @@ /area/space) "agc" = ( /obj/machinery/portable_atmospherics/canister/oxygen, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/syndicate) "agd" = ( /obj/structure/table, @@ -3022,7 +3018,7 @@ pixel_x = -5; pixel_y = 30 }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/syndicate) "age" = ( /obj/machinery/door/window{ @@ -3030,24 +3026,24 @@ name = "Tool Storage"; req_access_txt = "150" }, -/turf/open/floor/mineral/plastitanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "agf" = ( +/obj/structure/transit_tube{ + icon_state = "S-NE" + }, /obj/structure/lattice, -/obj/structure/transit_tube/curved, /turf/open/space, /area/space) "agg" = ( -/obj/docking_port/stationary/random{ - dir = 1; - id = "pod_asteroid2"; - name = "asteroid" +/turf/closed/wall/shuttle{ + tag = "icon-swall_f12"; + icon_state = "swall_f12" }, -/turf/open/space, -/area/space) +/area/shuttle/abandoned) "agh" = ( /obj/machinery/portable_atmospherics/scrubber, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "agi" = ( /obj/structure/table, @@ -3056,15 +3052,15 @@ pixel_y = 3 }, /obj/item/weapon/stock_parts/cell/high, -/turf/open/floor/mineral/plastitanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "agj" = ( /obj/structure/bed/roller, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/syndicate) "agk" = ( /obj/structure/sign/bluecross_2, -/turf/closed/wall/mineral/plastitanium, +/turf/closed/indestructible/opshuttle, /area/shuttle/syndicate) "agl" = ( /obj/machinery/door/window{ @@ -3072,7 +3068,7 @@ name = "Infirmary"; req_access_txt = "150" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/syndicate) "agm" = ( /obj/structure/table, @@ -3080,7 +3076,7 @@ pixel_y = 5 }, /obj/item/device/sbeacondrop/bomb, -/turf/open/floor/mineral/plastitanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "agn" = ( /obj/structure/table, @@ -3091,17 +3087,19 @@ /obj/item/weapon/grenade/syndieminibomb{ pixel_x = -1 }, -/turf/open/floor/mineral/plastitanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "ago" = ( -/obj/structure/transit_tube, +/obj/structure/transit_tube{ + icon_state = "N-S" + }, /turf/open/space, /area/space) "agp" = ( /obj/machinery/door/window, /obj/effect/decal/remains/human, /obj/effect/decal/cleanable/blood/old, -/turf/open/floor/mineral/titanium/purple, +/turf/open/floor/plasteel/shuttle/purple, /area/shuttle/abandoned) "agq" = ( /obj/structure/bed, @@ -3110,7 +3108,7 @@ dir = 4 }, /obj/structure/window/reinforced, -/turf/open/floor/mineral/titanium/purple, +/turf/open/floor/plasteel/shuttle/purple, /area/shuttle/abandoned) "agr" = ( /obj/machinery/door/window{ @@ -3120,13 +3118,13 @@ name = "Infirmary"; req_access_txt = "150" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/syndicate) "ags" = ( /obj/machinery/telecomms/allinone{ intercept = 1 }, -/turf/open/floor/mineral/plastitanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "agt" = ( /obj/machinery/door/window{ @@ -3134,11 +3132,13 @@ name = "Surgery"; req_access_txt = "150" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/syndicate) "agu" = ( +/obj/structure/transit_tube{ + icon_state = "N-S-Pass" + }, /obj/structure/lattice, -/obj/structure/transit_tube/crossing, /turf/open/space, /area/space) "agv" = ( @@ -3153,24 +3153,24 @@ "agw" = ( /obj/structure/table, /obj/item/weapon/tank/internals/oxygen, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "agx" = ( /obj/effect/decal/cleanable/blood/old, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "agy" = ( /obj/machinery/portable_atmospherics/canister/oxygen, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "agz" = ( /obj/structure/window/reinforced{ dir = 1 }, /obj/structure/table, -/obj/item/bodypart/r_arm/robot, -/obj/item/bodypart/l_arm/robot, -/turf/open/floor/mineral/titanium, +/obj/item/robot_parts/r_arm, +/obj/item/robot_parts/l_arm, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/syndicate) "agA" = ( /obj/structure/table, @@ -3186,13 +3186,13 @@ pixel_x = -3; pixel_y = -3 }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/syndicate) "agB" = ( /obj/structure/window/reinforced{ dir = 1 }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/syndicate) "agC" = ( /obj/structure/shuttle/engine/heater, @@ -3212,13 +3212,13 @@ pixel_x = -3; pixel_y = -3 }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/syndicate) "agE" = ( /obj/structure/table, /obj/item/weapon/surgicaldrill, /obj/item/weapon/circular_saw, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/syndicate) "agF" = ( /obj/structure/sink{ @@ -3230,7 +3230,7 @@ /obj/structure/mirror{ pixel_x = 30 }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/syndicate) "agG" = ( /obj/structure/lattice/catwalk, @@ -3243,7 +3243,7 @@ /area/space) "agH" = ( /obj/machinery/computer/shuttle/white_ship, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "agI" = ( /obj/structure/chair{ @@ -3251,20 +3251,20 @@ }, /obj/effect/decal/remains/human, /obj/effect/decal/cleanable/blood/old, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "agJ" = ( /obj/effect/decal/cleanable/blood/drip, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "agK" = ( /obj/item/weapon/ectoplasm, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "agL" = ( /obj/machinery/door/airlock/glass, /obj/effect/decal/cleanable/blood/drip, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "agM" = ( /obj/effect/decal/cleanable/blood/tracks{ @@ -3272,7 +3272,7 @@ icon_state = "tracks"; dir = 10 }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "agN" = ( /obj/effect/decal/cleanable/blood/tracks{ @@ -3281,7 +3281,7 @@ dir = 8 }, /obj/effect/decal/cleanable/blood/drip, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "agO" = ( /obj/effect/decal/cleanable/blood/tracks{ @@ -3289,7 +3289,7 @@ icon_state = "tracks"; dir = 4 }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "agP" = ( /obj/effect/decal/cleanable/blood/tracks{ @@ -3297,16 +3297,16 @@ icon_state = "tracks"; dir = 8 }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "agQ" = ( -/obj/machinery/door/airlock/titanium, +/obj/machinery/door/airlock/shuttle, /obj/effect/decal/cleanable/blood/tracks{ tag = "icon-tracks (WEST)"; icon_state = "tracks"; dir = 8 }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "agR" = ( /obj/effect/decal/remains/human, @@ -3316,7 +3316,7 @@ dir = 4 }, /obj/effect/decal/cleanable/blood/old, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "agS" = ( /obj/structure/shuttle/engine/propulsion{ @@ -3337,7 +3337,7 @@ "agV" = ( /obj/structure/table, /obj/item/weapon/gun/energy/laser/retro, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "agW" = ( /obj/structure/bed, @@ -3349,50 +3349,37 @@ /obj/structure/window/reinforced{ dir = 8 }, -/turf/open/floor/mineral/titanium/purple, +/turf/open/floor/plasteel/shuttle/purple, /area/shuttle/abandoned) "agX" = ( /obj/machinery/door/window/northright, -/turf/open/floor/mineral/titanium/purple, +/turf/open/floor/plasteel/shuttle/purple, /area/shuttle/abandoned) "agY" = ( -/obj/docking_port/stationary/random{ - dir = 1; - id = "pod_asteroid1"; - name = "asteroid" +/turf/closed/wall/shuttle{ + icon_state = "swall_s9"; + dir = 2 }, -/turf/open/space, -/area/space) +/area/shuttle/abandoned) "agZ" = ( -/obj/structure/chair{ - dir = 1 +/turf/closed/wall/shuttle{ + icon_state = "swall_s5"; + dir = 2 }, -/obj/machinery/computer/shuttle/pod{ - pixel_x = -32; - pixel_y = 0; - possible_destinations = "pod_asteroid2"; - shuttleId = "pod2" - }, -/obj/machinery/status_display{ - layer = 4; - pixel_x = 32; - pixel_y = 0 - }, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/pod_2) +/area/shuttle/abandoned) "aha" = ( /obj/machinery/portable_atmospherics/pump, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "ahb" = ( /obj/item/weapon/shard{ icon_state = "medium" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "ahc" = ( /obj/structure/chair, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "ahd" = ( /obj/structure/rack, @@ -3401,37 +3388,26 @@ /obj/item/weapon/tank/internals/emergency_oxygen, /obj/item/weapon/tank/internals/emergency_oxygen, /obj/item/weapon/storage/toolbox/mechanical, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "ahe" = ( /obj/item/weapon/stock_parts/cell{ charge = 100; maxcharge = 15000 }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "ahf" = ( -/obj/structure/chair{ - dir = 1 +/turf/closed/wall/shuttle{ + tag = "icon-swall_f15"; + icon_state = "swall_f15" }, -/obj/machinery/computer/shuttle/pod{ - pixel_x = -32; - pixel_y = 0; - possible_destinations = "pod_asteroid1"; - shuttleId = "pod1" - }, -/obj/machinery/status_display{ - layer = 4; - pixel_x = 32; - pixel_y = 0 - }, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/pod_1) +/area/shuttle/abandoned) "ahg" = ( /obj/structure/rack, /obj/item/clothing/suit/space/hardsuit/medical, /obj/item/clothing/mask/breath, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "ahh" = ( /obj/machinery/door/poddoor{ @@ -3449,69 +3425,67 @@ /turf/open/floor/plating, /area/shuttle/abandoned) "ahj" = ( -/turf/closed/wall, -/area/mining_construction) +/turf/closed/wall/shuttle{ + tag = "icon-swall_f17"; + icon_state = "swall_f17" + }, +/area/shuttle/abandoned) "ahk" = ( -/obj/effect/spawner/structure/window/reinforced, -/turf/open/floor/plating, -/area/mining_construction) +/turf/open/space, +/turf/closed/wall/shuttle{ + icon_state = "swall_f6"; + dir = 2 + }, +/area/shuttle/arrival) "ahl" = ( /obj/structure/grille, /obj/structure/window/shuttle, /turf/open/floor/plating, /area/shuttle/arrival) "ahm" = ( -/obj/structure/chair{ - dir = 1 +/turf/open/space, +/turf/closed/wall/shuttle{ + icon_state = "swall_f10"; + dir = 2 }, -/obj/item/device/radio/intercom{ - broadcasting = 0; - listening = 1; - name = "Station Intercom (General)"; - pixel_x = -25; - pixel_y = -2; - tag = "WEST" - }, -/obj/item/weapon/storage/pod{ - pixel_x = 32; - pixel_y = 0 - }, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/pod_2) +/area/shuttle/arrival) "ahn" = ( /obj/machinery/computer/pod{ id = "oldship_gun" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "aho" = ( -/turf/closed/wall/mineral/titanium, +/turf/closed/wall/shuttle{ + icon_state = "swall3"; + dir = 2 + }, /area/shuttle/arrival) "ahp" = ( /obj/structure/chair{ dir = 4 }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/arrival) "ahq" = ( -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/arrival) "ahr" = ( /obj/structure/chair{ dir = 8 }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/arrival) "ahs" = ( /obj/structure/table, /obj/item/weapon/screwdriver, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "aht" = ( /turf/closed/wall/r_wall, /area/hallway/secondary/entry) "ahu" = ( -/obj/machinery/door/airlock/titanium, +/obj/machinery/door/airlock/shuttle, /obj/docking_port/mobile{ dheight = 0; dir = 1; @@ -3521,7 +3495,7 @@ launch_status = 0; name = "NT Medical Ship"; roundstart_move = "whiteship_away"; - port_angle = 180; + travelDir = 180; width = 35 }, /obj/docking_port/stationary{ @@ -3532,7 +3506,7 @@ name = "SS13 Arrival Docking"; width = 35 }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "ahv" = ( /turf/closed/wall, @@ -3542,33 +3516,22 @@ /turf/open/floor/plating, /area/hallway/secondary/entry) "ahx" = ( -/obj/structure/chair{ - dir = 1 +/turf/closed/wall/shuttle{ + icon_state = "swall13"; + dir = 2 }, -/obj/item/device/radio/intercom{ - broadcasting = 0; - listening = 1; - name = "Station Intercom (General)"; - pixel_x = -25; - pixel_y = -2; - tag = "WEST" - }, -/obj/item/weapon/storage/pod{ - pixel_x = 32; - pixel_y = 0 - }, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/pod_1) +/area/shuttle/arrival) "ahy" = ( -/turf/open/floor/plating/warnplate{ - dir = 9 +/turf/closed/wall/shuttle{ + icon_state = "swall12"; + dir = 2 }, -/area/shuttle/auxillary_base) +/area/shuttle/arrival) "ahz" = ( -/obj/machinery/door/airlock/titanium{ +/obj/machinery/door/airlock/shuttle{ name = "Arrivals Shuttle Airlock" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/arrival) "ahA" = ( /obj/machinery/chem_heater, @@ -3593,17 +3556,31 @@ /turf/open/floor/plating, /area/hallway/secondary/entry) "ahD" = ( -/turf/open/floor/plating/warnplate{ - dir = 1 +/turf/open/space, +/turf/closed/wall/shuttle{ + icon_state = "swall_f6"; + dir = 2 }, -/area/shuttle/auxillary_base) +/area/shuttle/pod_1) "ahE" = ( -/turf/closed/wall/mineral/titanium, +/turf/closed/wall/shuttle{ + icon_state = "swall12"; + dir = 2 + }, /area/shuttle/pod_1) "ahF" = ( -/obj/machinery/light/small, -/turf/open/floor/plating, -/area/mining_construction) +/turf/open/space, +/obj/structure/shuttle/engine/propulsion/burst{ + tag = "icon-propulsion (WEST)"; + icon_state = "propulsion"; + dir = 8 + }, +/turf/closed/wall/shuttle{ + dir = 2; + icon_state = "swall_f10"; + layer = 2 + }, +/area/shuttle/pod_1) "ahG" = ( /obj/structure/sign/securearea{ desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; @@ -3625,7 +3602,9 @@ icon_state = "alarm0"; pixel_x = -22 }, -/turf/open/floor/plasteel, +/turf/open/floor/plasteel/warning/corner{ + dir = 1 + }, /area/hallway/secondary/entry) "ahI" = ( /turf/open/floor/plasteel/arrival{ @@ -3634,12 +3613,12 @@ /area/hallway/secondary/entry) "ahJ" = ( /obj/structure/closet/emcloset, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/arrival) "ahK" = ( /obj/structure/table, /obj/item/weapon/storage/firstaid/regular, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/arrival) "ahL" = ( /turf/open/floor/plasteel/arrival{ @@ -3665,42 +3644,60 @@ /turf/open/floor/plating, /area/hallway/secondary/entry) "ahP" = ( -/turf/open/floor/plating/warnplate{ - dir = 5 +/obj/docking_port/stationary/random{ + dir = 8; + id = "pod_asteroid1"; + name = "asteroid" }, -/area/shuttle/auxillary_base) +/turf/open/space, +/area/space) "ahQ" = ( /obj/structure/grille, /obj/structure/window/shuttle, /turf/open/floor/plating, /area/shuttle/pod_1) "ahR" = ( -/obj/machinery/door/airlock/titanium{ - name = "Escape Pod Airlock" +/obj/structure/chair{ + dir = 8 }, -/obj/docking_port/mobile/pod{ - dir = 1; - id = "pod2"; - name = "escape pod 2" +/obj/machinery/status_display{ + density = 0; + layer = 3; + pixel_x = 0; + pixel_y = 32 }, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/pod_2) +/obj/machinery/computer/shuttle/pod{ + pixel_x = 0; + pixel_y = -32; + possible_destinations = "pod_asteroid1"; + shuttleId = "pod1" + }, +/turf/open/floor/plasteel/shuttle, +/area/shuttle/pod_1) "ahS" = ( -/obj/machinery/door/airlock/titanium{ +/obj/structure/chair{ + dir = 8 + }, +/obj/item/device/radio/intercom{ + pixel_y = 25 + }, +/obj/item/weapon/storage/pod{ + pixel_x = 6; + pixel_y = -26 + }, +/turf/open/floor/plasteel/shuttle, +/area/shuttle/pod_1) +"ahT" = ( +/obj/machinery/door/airlock/shuttle{ name = "Escape Pod Airlock" }, /obj/docking_port/mobile/pod{ - dir = 1; + dir = 8; id = "pod1"; name = "escape pod 1" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/pod_1) -"ahT" = ( -/turf/open/floor/plating/warnplate{ - dir = 8 - }, -/area/shuttle/auxillary_base) "ahU" = ( /obj/machinery/door/airlock/external{ name = "Escape Pod One" @@ -3721,7 +3718,7 @@ /turf/open/floor/plating, /area/hallway/secondary/entry) "ahX" = ( -/obj/machinery/door/airlock/titanium{ +/obj/machinery/door/airlock/shuttle{ name = "Arrivals Shuttle Airlock" }, /obj/docking_port/stationary{ @@ -3738,7 +3735,7 @@ height = 7; id = "arrival"; name = "arrival shuttle"; - port_angle = -90; + travelDir = -90; width = 15 }, /turf/open/floor/plating, @@ -3750,10 +3747,10 @@ /obj/effect/landmark{ name = "JoinLate" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/arrival) "ahZ" = ( -/obj/machinery/door/airlock/titanium{ +/obj/machinery/door/airlock/shuttle{ name = "Arrivals Shuttle Airlock" }, /turf/open/floor/plating, @@ -3770,13 +3767,6 @@ pixel_y = -2; tag = "EAST" }, -/obj/machinery/camera{ - c_tag = "Arrivals Northeast"; - dir = 8; - network = list("SS13"); - pixel_x = 0; - pixel_y = 0 - }, /turf/open/floor/plasteel, /area/hallway/secondary/entry) "aib" = ( @@ -3795,21 +3785,29 @@ /turf/open/floor/plasteel/airless/solarpanel, /area/solar/auxport) "aie" = ( -/turf/open/floor/plating, -/area/shuttle/auxillary_base) +/turf/open/space, +/turf/closed/wall/shuttle{ + icon_state = "swall_f5"; + dir = 2 + }, +/area/shuttle/pod_1) "aif" = ( -/turf/open/floor/plating/warnplate{ - dir = 4; - luminosity = 2; - initial_gas_mix = "o2=0.01;n2=0.01" +/turf/open/space, +/obj/structure/shuttle/engine/propulsion/burst{ + tag = "icon-propulsion (WEST)"; + icon_state = "propulsion"; + dir = 8 }, -/area/shuttle/auxillary_base) +/turf/closed/wall/shuttle{ + icon_state = "swall_f9"; + dir = 2 + }, +/area/shuttle/pod_1) "aig" = ( -/obj/structure/reagent_dispensers/fueltank, -/turf/open/floor/plasteel/warning/corner{ - dir = 4 - }, -/area/mining_construction) +/obj/structure/closet/emcloset, +/obj/machinery/light/small, +/turf/open/floor/plating, +/area/hallway/secondary/entry) "aih" = ( /obj/structure/sign/pods, /turf/closed/wall, @@ -3820,7 +3818,9 @@ dir = 4; network = list("SS13") }, -/turf/open/floor/plasteel, +/turf/open/floor/plasteel/warning/corner{ + dir = 4 + }, /area/hallway/secondary/entry) "aij" = ( /obj/effect/spawner/structure/window/reinforced, @@ -3840,15 +3840,21 @@ network = list("SS13"); start_active = 1 }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/arrival) "ail" = ( /obj/machinery/computer/arcade, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/arrival) "aim" = ( -/obj/structure/closet/emcloset, -/turf/open/floor/plating, +/obj/machinery/camera{ + c_tag = "Arrivals Northeast"; + dir = 8; + network = list("SS13"); + pixel_x = 0; + pixel_y = 0 + }, +/turf/open/floor/plasteel, /area/hallway/secondary/entry) "ain" = ( /turf/open/floor/plasteel/white/side{ @@ -3877,13 +3883,7 @@ pixel_y = -2; tag = "WEST" }, -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/turf/open/floor/plasteel/warning/corner{ - dir = 1 - }, +/turf/open/floor/plasteel, /area/hallway/secondary/entry) "aiq" = ( /obj/machinery/vending/snack, @@ -3891,7 +3891,7 @@ /area/hallway/secondary/entry) "air" = ( /obj/structure/closet/wardrobe/green, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/arrival) "ais" = ( /obj/structure/closet/emcloset, @@ -3908,21 +3908,31 @@ /turf/open/floor/plasteel, /area/hallway/secondary/entry) "aiv" = ( -/obj/machinery/light/small, -/turf/open/floor/plating, -/area/hallway/secondary/entry) +/turf/open/space, +/turf/closed/wall/shuttle{ + icon_state = "swall_f6"; + dir = 2 + }, +/area/shuttle/pod_2) "aiw" = ( -/turf/closed/wall/mineral/titanium, +/turf/closed/wall/shuttle{ + icon_state = "swall12"; + dir = 2 + }, /area/shuttle/pod_2) "aix" = ( -/obj/structure/cable/green{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/warning{ +/turf/open/space, +/obj/structure/shuttle/engine/propulsion/burst{ + tag = "icon-propulsion (WEST)"; + icon_state = "propulsion"; dir = 8 }, -/area/mining_construction) +/turf/closed/wall/shuttle{ + dir = 2; + icon_state = "swall_f10"; + layer = 2 + }, +/area/shuttle/pod_2) "aiy" = ( /obj/structure/sign/securearea{ desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; @@ -3939,26 +3949,23 @@ /turf/open/floor/plating, /area/hallway/secondary/entry) "aiz" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/cable/green{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/turf/open/floor/plasteel/warning{ +/obj/machinery/light{ + icon_state = "tube1"; dir = 8 }, +/turf/open/floor/plasteel/warning/corner{ + dir = 1 + }, /area/hallway/secondary/entry) "aiA" = ( /obj/effect/landmark{ name = "Observer-Start" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/arrival) "aiB" = ( /obj/structure/closet/wardrobe/mixed, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/arrival) "aiC" = ( /obj/structure/extinguisher_cabinet{ @@ -4039,36 +4046,60 @@ /turf/open/floor/plasteel/airless/solarpanel, /area/solar/auxport) "aiK" = ( -/obj/machinery/light, -/turf/open/floor/plating, -/area/shuttle/auxillary_base) +/obj/docking_port/stationary/random{ + dir = 8; + id = "pod_asteroid2"; + name = "asteroid" + }, +/turf/open/space, +/area/space) "aiL" = ( /obj/structure/grille, /obj/structure/window/shuttle, /turf/open/floor/plating, /area/shuttle/pod_2) "aiM" = ( -/obj/machinery/camera{ - c_tag = "Auxillary Mining Base"; - dir = 8; - start_active = 1 +/obj/structure/chair{ + dir = 8 }, -/turf/open/floor/plating, -/area/shuttle/auxillary_base) +/obj/machinery/status_display{ + density = 0; + layer = 3; + pixel_x = 0; + pixel_y = 32 + }, +/obj/machinery/computer/shuttle/pod{ + pixel_x = 0; + pixel_y = -32; + possible_destinations = "pod_asteroid2"; + shuttleId = "pod2" + }, +/turf/open/floor/plasteel/shuttle, +/area/shuttle/pod_2) "aiN" = ( -/obj/machinery/firealarm{ - dir = 8; - pixel_x = -24 +/obj/structure/chair{ + dir = 8 }, -/turf/open/floor/plasteel/warning{ - dir = 1 +/obj/item/device/radio/intercom{ + pixel_y = 25 }, -/area/mining_construction) +/obj/item/weapon/storage/pod{ + pixel_x = 6; + pixel_y = -26 + }, +/turf/open/floor/plasteel/shuttle, +/area/shuttle/pod_2) "aiO" = ( -/turf/open/floor/plasteel/warning/corner{ - dir = 4 +/obj/machinery/door/airlock/shuttle{ + name = "Escape Pod Airlock" }, -/area/mining_construction) +/obj/docking_port/mobile/pod{ + dir = 8; + id = "pod2"; + name = "escape pod 2" + }, +/turf/open/floor/plasteel/shuttle, +/area/shuttle/pod_2) "aiP" = ( /obj/machinery/door/airlock/external{ name = "Escape Pod Two" @@ -4083,7 +4114,7 @@ /area/hallway/secondary/entry) "aiR" = ( /obj/structure/closet/wardrobe/grey, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/arrival) "aiS" = ( /obj/machinery/light{ @@ -4248,44 +4279,32 @@ /turf/open/space, /area/solar/auxport) "ajc" = ( -/obj/docking_port/mobile/auxillary_base{ - dheight = 4; - dir = 4; - dwidth = 4; - height = 9; - width = 9 +/turf/open/space, +/turf/closed/wall/shuttle{ + icon_state = "swall_f5"; + dir = 2 }, -/obj/machinery/bluespace_beacon, -/obj/machinery/computer/shuttle/auxillary_base{ - pixel_y = 0 - }, -/turf/closed/wall, -/area/shuttle/auxillary_base) +/area/shuttle/pod_2) "ajd" = ( -/obj/machinery/door/airlock/external{ - cyclelinkeddir = 1; - glass = 1; - name = "Construction Zone"; - opacity = 0; - req_access = null; - req_access_txt = "0"; - req_one_access_txt = "0" +/turf/open/space, +/obj/structure/shuttle/engine/propulsion/burst{ + tag = "icon-propulsion (WEST)"; + icon_state = "propulsion"; + dir = 8 }, -/turf/open/floor/plating, -/area/mining_construction) +/turf/closed/wall/shuttle{ + icon_state = "swall_f9"; + dir = 2 + }, +/area/shuttle/pod_2) "aje" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable/green{ - tag = "icon-1-2"; - icon_state = "1-2" - }, /turf/open/floor/plasteel/warning/corner{ dir = 4 }, /area/hallway/secondary/entry) "ajf" = ( /obj/structure/closet/wardrobe/black, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/arrival) "ajg" = ( /obj/machinery/vending/coffee, @@ -4303,10 +4322,16 @@ }, /area/hallway/secondary/entry) "ajj" = ( -/turf/open/floor/plating, -/area/mining_construction) +/turf/closed/wall/shuttle{ + icon_state = "swall_s6"; + dir = 2 + }, +/area/shuttle/transport) "ajk" = ( -/turf/closed/wall/mineral/titanium, +/turf/closed/wall/shuttle{ + icon_state = "swall12"; + dir = 2 + }, /area/shuttle/transport) "ajl" = ( /obj/structure/window/shuttle, @@ -4323,7 +4348,10 @@ icon_state = "propulsion"; dir = 8 }, -/turf/closed/wall/mineral/titanium, +/turf/closed/wall/shuttle{ + icon_state = "swall_s10"; + dir = 2 + }, /area/shuttle/transport) "ajo" = ( /obj/machinery/power/solar{ @@ -4377,7 +4405,7 @@ pixel_y = -2; tag = "WEST" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/arrival) "ajt" = ( /obj/machinery/requests_console{ @@ -4386,7 +4414,7 @@ pixel_x = 30; pixel_y = 0 }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/arrival) "aju" = ( /obj/structure/sign/securearea{ @@ -4401,21 +4429,23 @@ /area/hallway/secondary/entry) "ajv" = ( /obj/structure/chair, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/transport) "ajw" = ( /obj/machinery/computer/shuttle/ferry/request, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/transport) "ajx" = ( /obj/structure/chair{ dir = 8 }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/transport) "ajy" = ( -/turf/open/floor/mineral/titanium/blue, -/turf/closed/wall/mineral/titanium/interior, +/turf/open/floor/plasteel/shuttle, +/turf/closed/wall/shuttle/interior{ + icon_state = "swall_f5" + }, /area/shuttle/transport) "ajz" = ( /obj/structure/lattice/catwalk, @@ -4489,18 +4519,12 @@ tag = "icon-4-8"; icon_state = "4-8" }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, /turf/open/floor/plating, /area/maintenance/aft) "ajJ" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 9 - }, /obj/structure/cable/green{ - tag = "icon-1-8"; - icon_state = "1-8" + tag = "icon-2-8"; + icon_state = "2-8" }, /turf/open/floor/plasteel, /area/hallway/secondary/entry) @@ -4515,7 +4539,7 @@ /turf/open/floor/plating, /area/hallway/secondary/entry) "ajL" = ( -/obj/machinery/door/airlock/titanium, +/obj/machinery/door/airlock/shuttle, /obj/docking_port/mobile{ dir = 4; dwidth = 2; @@ -4523,7 +4547,7 @@ id = "ferry"; name = "ferry shuttle"; roundstart_move = "ferry_away"; - port_angle = 180; + travelDir = 180; width = 5 }, /obj/docking_port/stationary{ @@ -4535,14 +4559,14 @@ turf_type = /turf/open/space; width = 5 }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/transport) "ajM" = ( -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/transport) "ajN" = ( -/obj/machinery/door/airlock/titanium, -/turf/open/floor/mineral/titanium/blue, +/obj/machinery/door/airlock/shuttle, +/turf/open/floor/plasteel/shuttle, /area/shuttle/transport) "ajO" = ( /obj/machinery/door/airlock/external{ @@ -4588,11 +4612,11 @@ /turf/open/floor/plasteel, /area/hallway/secondary/entry) "ajV" = ( -/obj/structure/closet/emcloset, -/turf/open/floor/plating/warnplate{ - dir = 8 +/turf/closed/wall/shuttle{ + icon_state = "swall7"; + dir = 2 }, -/area/mining_construction) +/area/shuttle/arrival) "ajW" = ( /obj/structure/window/reinforced{ dir = 1; @@ -4602,32 +4626,38 @@ /turf/open/floor/plasteel/black, /area/shuttle/arrival) "ajX" = ( -/obj/machinery/light{ - dir = 1 +/turf/closed/wall/shuttle{ + tag = "icon-swall11"; + icon_state = "swall11"; + dir = 2 }, -/turf/open/floor/plating, -/area/shuttle/auxillary_base) +/area/shuttle/arrival) "ajY" = ( /obj/structure/chair{ dir = 1 }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/transport) "ajZ" = ( /obj/structure/closet/crate, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/transport) "aka" = ( -/obj/effect/landmark{ - name = "carpspawn" +/turf/open/floor/plasteel/shuttle, +/turf/closed/wall/shuttle/interior{ + icon_state = "swall_f6" }, -/obj/structure/lattice, -/turf/open/space, -/area/space) +/area/shuttle/transport) "akb" = ( -/obj/structure/closet/toolcloset, -/turf/open/floor/plasteel/yellow, -/area/mining_construction) +/obj/structure/shuttle/engine/propulsion{ + icon_state = "propulsion"; + dir = 8 + }, +/turf/closed/wall/shuttle{ + icon_state = "swall_s9"; + dir = 2 + }, +/area/shuttle/transport) "akc" = ( /obj/structure/lattice/catwalk, /obj/structure/cable/yellow{ @@ -4660,10 +4690,11 @@ /turf/open/space, /area/solar/auxport) "akd" = ( -/obj/structure/lattice, -/obj/structure/transit_tube/curved/flipped{ - dir = 1 +/obj/structure/transit_tube{ + tag = "icon-N-SE"; + icon_state = "N-SE" }, +/obj/structure/lattice, /turf/open/space, /area/space) "ake" = ( @@ -4718,13 +4749,12 @@ /turf/open/floor/plating, /area/maintenance/aft) "akl" = ( -/obj/machinery/light{ - dir = 1 +/turf/open/space, +/turf/closed/wall/shuttle{ + icon_state = "swall_f5"; + dir = 2 }, -/turf/open/floor/plasteel/warning/corner{ - dir = 8 - }, -/area/mining_construction) +/area/shuttle/arrival) "akm" = ( /obj/structure/shuttle/engine/propulsion{ icon_state = "burst_l" @@ -4742,10 +4772,13 @@ /turf/open/floor/plasteel/black, /area/shuttle/arrival) "akp" = ( -/turf/open/floor/plasteel/warning{ - dir = 1 +/turf/open/space, +/turf/closed/wall/shuttle{ + tag = "icon-swall_f9"; + icon_state = "swall_f9"; + dir = 2 }, -/area/mining_construction) +/area/shuttle/arrival) "akq" = ( /obj/structure/closet/emcloset, /turf/open/floor/plasteel/warning{ @@ -4754,19 +4787,11 @@ }, /area/hallway/secondary/entry) "akr" = ( -/turf/open/floor/plasteel/yellow, -/obj/structure/closet/toolcloset, -/obj/machinery/camera{ - c_tag = "Auxillary Base Construction"; - dir = 4 +/turf/closed/wall/shuttle{ + icon_state = "swall_s5"; + dir = 2 }, -/obj/machinery/airalarm{ - dir = 4; - icon_state = "alarm0"; - pixel_x = -22 - }, -/turf/open/floor/plasteel/warningline, -/area/mining_construction) +/area/shuttle/transport) "aks" = ( /obj/structure/transit_tube{ tag = "icon-D-NE"; @@ -4776,23 +4801,24 @@ /turf/open/space, /area/space) "akt" = ( -/obj/structure/lattice, -/obj/structure/transit_tube/curved{ - dir = 4 +/obj/structure/transit_tube{ + tag = "icon-E-NW"; + icon_state = "E-NW" }, +/obj/structure/lattice, /turf/open/space, /area/space) "aku" = ( /obj/structure/window/reinforced/fulltile, -/obj/structure/transit_tube/horizontal, +/obj/structure/transit_tube, /turf/open/floor/plating, /area/engine/engineering) "akv" = ( +/obj/structure/transit_tube, /obj/structure/cable/green{ tag = "icon-1-2"; icon_state = "1-2" }, -/obj/structure/transit_tube/horizontal, /turf/open/floor/plasteel/darkblue/corner{ tag = "icon-darkbluecorners (NORTH)"; dir = 1 @@ -4814,6 +4840,11 @@ tag = "icon-1-2"; icon_state = "1-2" }, +/obj/structure/transit_tube{ + tag = "icon-Block (WEST)"; + icon_state = "Block"; + dir = 8 + }, /turf/open/floor/plasteel/darkblue/corner{ tag = "icon-darkbluecorners (EAST)"; dir = 4 @@ -4853,7 +4884,6 @@ pixel_x = 0; pixel_y = 0 }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/plasteel/white/corner{ dir = 4 }, @@ -4913,7 +4943,7 @@ tag = "icon-2-8"; icon_state = "2-8" }, -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 10 }, @@ -4989,7 +5019,6 @@ tag = "icon-1-8"; icon_state = "1-8" }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/open/floor/plating, /area/maintenance/aft) "akP" = ( @@ -5225,8 +5254,8 @@ tag = "icon-4-8"; icon_state = "4-8" }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 1 +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 10 }, /turf/open/floor/plating, /area/maintenance/aft) @@ -5239,9 +5268,6 @@ tag = "icon-2-8"; icon_state = "2-8" }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, /turf/open/floor/plating, /area/maintenance/aft) "alq" = ( @@ -5251,9 +5277,6 @@ lootcount = 2; name = "2maintenance loot spawner" }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, /turf/open/floor/plating, /area/maintenance/aft) "alr" = ( @@ -5263,9 +5286,6 @@ lootcount = 2; name = "2maintenance loot spawner" }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, /turf/open/floor/plating, /area/maintenance/aft) "als" = ( @@ -5277,35 +5297,38 @@ pixel_x = 1; pixel_y = -24 }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 9 - }, /turf/open/floor/plating, /area/security/vacantoffice) "alt" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 +/obj/structure/cable/green{ + tag = "icon-1-4"; + icon_state = "1-4" }, /turf/open/floor/plasteel, -/area/hallway/primary/aft{ - name = "Aft Port Hallway" - }) +/area/hallway/secondary/entry) "alu" = ( +/obj/structure/cable/green{ + tag = "icon-4-8"; + icon_state = "4-8" + }, /obj/structure/extinguisher_cabinet{ pixel_x = 0; pixel_y = -30; tag = "s" }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 5 - }, /turf/open/floor/plasteel, /area/hallway/secondary/entry) "alv" = ( +/obj/structure/cable/green{ + tag = "icon-4-8"; + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 5 + }, /obj/structure/sign/map/left/dream{ pixel_y = -32 }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, /turf/open/floor/plasteel, /area/hallway/secondary/entry) "alw" = ( @@ -5319,6 +5342,10 @@ /turf/open/floor/plasteel, /area/hallway/secondary/entry) "alx" = ( +/obj/structure/cable/green{ + tag = "icon-2-8"; + icon_state = "2-8" + }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, @@ -5332,7 +5359,7 @@ /turf/open/floor/plasteel/neutral/side, /area/hallway/secondary/entry) "alz" = ( -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, @@ -5371,6 +5398,7 @@ icon_state = "4-8" }, /obj/machinery/newscaster{ + hitstaken = 0; pixel_x = 0; pixel_y = -32; tag = "s" @@ -5506,6 +5534,10 @@ /turf/closed/wall/rust, /area/security/vacantoffice) "alW" = ( +/obj/structure/cable/green{ + tag = "icon-1-2"; + icon_state = "1-2" + }, /obj/machinery/door/firedoor, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/open/floor/plasteel/neutral/side{ @@ -5795,6 +5827,10 @@ }, /area/hallway/secondary/entry) "amG" = ( +/obj/structure/cable/green{ + tag = "icon-1-2"; + icon_state = "1-2" + }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ tag = "icon-manifold-b-f (WEST)"; dir = 8 @@ -6120,6 +6156,10 @@ }, /area/hallway/secondary/entry) "anv" = ( +/obj/structure/cable/green{ + tag = "icon-1-2"; + icon_state = "1-2" + }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ tag = "icon-manifold-b-f (EAST)"; dir = 4 @@ -6377,6 +6417,10 @@ }, /area/hallway/secondary/entry) "aof" = ( +/obj/structure/cable/green{ + tag = "icon-1-2"; + icon_state = "1-2" + }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/open/floor/plasteel/neutral/side{ tag = "icon-neutral (EAST)"; @@ -6575,6 +6619,10 @@ /turf/open/floor/plasteel, /area/engine/engineering) "aoE" = ( +/obj/structure/cable/green{ + tag = "icon-1-2"; + icon_state = "1-2" + }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, @@ -6582,7 +6630,7 @@ dir = 4; icon_state = "pipe-c" }, -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /turf/open/floor/plasteel/bot, /area/engine/engineering) "aoF" = ( @@ -6675,6 +6723,10 @@ }, /area/hallway/secondary/entry) "aoP" = ( +/obj/structure/cable/green{ + tag = "icon-1-2"; + icon_state = "1-2" + }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 @@ -7030,6 +7082,10 @@ tag = "icon-2-8"; icon_state = "2-8" }, +/obj/structure/cable/green{ + tag = "icon-1-2"; + icon_state = "1-2" + }, /obj/structure/disposalpipe/segment, /turf/open/floor/plasteel, /area/engine/engineering) @@ -7088,6 +7144,10 @@ }, /area/hallway/secondary/entry) "apK" = ( +/obj/structure/cable/green{ + tag = "icon-1-2"; + icon_state = "1-2" + }, /obj/machinery/light{ dir = 4 }, @@ -7155,6 +7215,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, +/mob/living/simple_animal/mouse, /turf/open/floor/plating{ broken = 1; icon_state = "platingdmg1" @@ -7390,6 +7451,10 @@ /turf/open/floor/plasteel, /area/hallway/secondary/entry) "aqu" = ( +/obj/structure/cable/green{ + tag = "icon-1-2"; + icon_state = "1-2" + }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ tag = "icon-manifold-b-f (EAST)"; dir = 4 @@ -8057,21 +8122,30 @@ /turf/closed/wall, /area/hallway/secondary/entry) "arG" = ( +/obj/structure/cable/green{ + tag = "icon-1-4"; + icon_state = "1-4" + }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 5 }, /turf/open/floor/plasteel, /area/hallway/secondary/entry) "arH" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment{ +/obj/structure/cable/green{ + tag = "icon-4-8"; + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, /turf/open/floor/plasteel, -/area/hallway/primary/aft{ - name = "Aft Port Hallway" - }) +/area/hallway/secondary/entry) "arI" = ( +/obj/structure/cable/green{ + tag = "icon-4-8"; + icon_state = "4-8" + }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 10 }, @@ -8090,6 +8164,10 @@ tag = "icon-2-4"; icon_state = "2-4" }, +/obj/structure/cable/green{ + tag = "icon-2-8"; + icon_state = "2-8" + }, /obj/structure/disposalpipe/junction{ dir = 8; icon_state = "pipe-j1"; @@ -9276,6 +9354,7 @@ dir = 4 }, /obj/machinery/meter, +/mob/living/simple_animal/mouse, /turf/open/floor/plasteel/floorgrime, /area/maintenance/incinerator) "auf" = ( @@ -9917,6 +9996,14 @@ /turf/open/floor/plasteel, /area/hallway/secondary/entry) "avt" = ( +/obj/structure/cable/green{ + tag = "icon-1-2"; + icon_state = "1-2" + }, +/obj/structure/cable/green{ + tag = "icon-2-8"; + icon_state = "2-8" + }, /obj/machinery/navbeacon{ codes_txt = "patrol;next_patrol=CHW"; location = "Lockers" @@ -9924,10 +10011,6 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/structure/cable/green{ - tag = "icon-1-8"; - icon_state = "1-8" - }, /turf/open/floor/plasteel, /area/hallway/secondary/entry) "avu" = ( @@ -10103,7 +10186,7 @@ dir = 8; external_pressure_bound = 0; frequency = 1441; - id_tag = "mix_out"; + id_tag = "mix_in"; initialize_directions = 1; internal_pressure_bound = 4000; on = 1; @@ -10707,7 +10790,7 @@ frequency = 1441; input_tag = "mix_in"; name = "Gas Mix Tank Control"; - output_tag = "mix_out"; + output_tag = "mix_in"; sensors = list("mix_sensor" = "Tank") }, /turf/open/floor/plasteel/green/side{ @@ -10956,6 +11039,7 @@ lootcount = 2; name = "random material damage spawner" }, +/mob/living/simple_animal/mouse, /turf/open/floor/plating, /area/maintenance/asmaint) "axw" = ( @@ -11620,6 +11704,11 @@ /turf/open/floor/plating, /area/maintenance/asmaint) "ayK" = ( +/obj/structure/cable/green{ + tag = "icon-2-4"; + icon_state = "2-4" + }, +/obj/structure/grille/broken, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 6 }, @@ -11628,8 +11717,13 @@ icon_state = "4-8" }, /obj/structure/cable/green{ - tag = "icon-2-4"; - icon_state = "2-4" + tag = "icon-1-4"; + icon_state = "1-4" + }, +/obj/effect/spawner/lootdrop{ + loot = list(/obj/item/stack/sheet/metal = 1, /obj/item/stack/rods = 2, /obj/item/weapon/shard = 2, "" = 3); + lootcount = 2; + name = "random material damage spawner" }, /turf/open/floor/plating, /area/maintenance/asmaint) @@ -11752,10 +11846,6 @@ }, /obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, /obj/structure/disposalpipe/segment, -/obj/structure/cable/green{ - tag = "icon-2-4"; - icon_state = "2-4" - }, /turf/open/floor/plating, /area/maintenance/asmaint) "ayU" = ( @@ -12363,11 +12453,16 @@ /turf/open/floor/plating, /area/maintenance/asmaint) "aAj" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/structure/cable/green{ tag = "icon-1-2"; icon_state = "1-2" }, +/obj/structure/grille, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/structure/cable/green{ + tag = "icon-1-8"; + icon_state = "1-8" + }, /turf/open/floor/plating, /area/maintenance/asmaint) "aAk" = ( @@ -12394,10 +12489,6 @@ }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/structure/disposalpipe/segment, -/obj/structure/cable/green{ - tag = "icon-1-2"; - icon_state = "1-2" - }, /turf/open/floor/plating, /area/maintenance/asmaint) "aAo" = ( @@ -12667,6 +12758,10 @@ }, /area/hallway/secondary/entry) "aAP" = ( +/obj/structure/cable/green{ + tag = "icon-1-2"; + icon_state = "1-2" + }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 10 }, @@ -12760,6 +12855,7 @@ pixel_x = 0; pixel_y = 0 }, +/obj/machinery/portable_atmospherics/canister/bz, /turf/open/floor/plasteel/escape{ tag = "icon-escape (NORTH)"; dir = 1 @@ -13046,7 +13142,7 @@ "aBE" = ( /obj/structure/table, /obj/item/weapon/folder/white, -/obj/item/clothing/neck/stethoscope, +/obj/item/clothing/tie/stethoscope, /obj/machinery/firealarm{ dir = 2; pixel_y = 24 @@ -13083,7 +13179,7 @@ "aBH" = ( /obj/structure/table, /obj/item/weapon/folder/white, -/obj/item/clothing/neck/stethoscope, +/obj/item/clothing/tie/stethoscope, /obj/machinery/firealarm{ dir = 2; pixel_y = 24 @@ -13111,10 +13207,6 @@ dir = 1; icon_state = "pipe-c" }, -/obj/structure/cable/green{ - tag = "icon-1-4"; - icon_state = "1-4" - }, /turf/open/floor/plating, /area/maintenance/asmaint) "aBK" = ( @@ -13128,10 +13220,6 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable/cyan{ - tag = "icon-4-8"; - icon_state = "4-8" - }, /turf/open/floor/plating, /area/medical/medbay) "aBL" = ( @@ -13142,10 +13230,6 @@ dir = 2; icon_state = "pipe-c" }, -/obj/structure/cable/cyan{ - tag = "icon-2-8"; - icon_state = "2-8" - }, /turf/open/floor/plasteel/white, /area/medical/medbay) "aBM" = ( @@ -13379,7 +13463,7 @@ d1 = 1; d2 = 4 }, -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /turf/open/floor/plasteel/black, /area/engine/engine_smes) "aCj" = ( @@ -13438,6 +13522,10 @@ }, /area/hallway/secondary/entry) "aCo" = ( +/obj/structure/cable/green{ + tag = "icon-1-2"; + icon_state = "1-2" + }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ tag = "icon-manifold-b-f (WEST)"; dir = 8 @@ -13549,7 +13637,7 @@ /turf/open/floor/plasteel, /area/atmos) "aCz" = ( -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /obj/machinery/light, /obj/machinery/camera{ c_tag = "Atmospherics"; @@ -13705,22 +13793,30 @@ /turf/open/floor/plating, /area/maintenance/asmaint) "aCY" = ( -/turf/open/floor/plasteel/warning/corner{ - dir = 1 +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 6 }, -/area/mining_construction) +/turf/open/floor/plating, +/area/maintenance/asmaint) "aCZ" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - layer = 2.4; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel, -/area/mining_construction) +/obj/machinery/atmospherics/pipe/manifold/supply/hidden, +/turf/open/floor/plating, +/area/maintenance/asmaint) "aDa" = ( -/turf/open/floor/plasteel/warning/corner, -/area/mining_construction) +/obj/structure/cable/green{ + tag = "icon-1-2"; + icon_state = "1-2" + }, +/obj/structure/grille/broken, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + tag = "icon-manifold-b-f (EAST)"; + dir = 4 + }, +/turf/open/floor/plating{ + broken = 1; + icon_state = "platingdmg1" + }, +/area/maintenance/asmaint) "aDb" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/effect/spawner/lootdrop{ @@ -13777,10 +13873,6 @@ }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/structure/disposalpipe/segment, -/obj/structure/cable/cyan{ - tag = "icon-1-2"; - icon_state = "1-2" - }, /turf/open/floor/plasteel/whiteblue/corner{ dir = 8 }, @@ -13954,10 +14046,13 @@ }, /area/medical/virology) "aDu" = ( -/turf/open/floor/plating/warnplate{ - dir = 10 +/obj/structure/chair/stool, +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 1; + on = 1 }, -/area/shuttle/auxillary_base) +/turf/open/floor/plasteel/white, +/area/medical/virology) "aDv" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber{ dir = 1; @@ -14151,6 +14246,10 @@ /obj/machinery/atmospherics/pipe/simple/cyan/visible{ dir = 4 }, +/obj/structure/cable/green{ + tag = "icon-1-2"; + icon_state = "1-2" + }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/open/floor/plasteel, /area/hallway/secondary/entry) @@ -14844,6 +14943,10 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ dir = 4 }, +/obj/structure/cable/green{ + tag = "icon-1-2"; + icon_state = "1-2" + }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/open/floor/plasteel, /area/hallway/secondary/entry) @@ -15274,6 +15377,10 @@ }, /area/hallway/secondary/entry) "aGi" = ( +/obj/structure/cable/green{ + tag = "icon-1-2"; + icon_state = "1-2" + }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/open/floor/plasteel, /area/hallway/secondary/entry) @@ -15589,11 +15696,23 @@ }, /area/medical/exam_room) "aGW" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 +/obj/machinery/vending/medical{ + pixel_x = -2 }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/open/floor/plasteel/whiteblue/side{ +/obj/machinery/requests_console{ + announcementConsole = 0; + department = "Medbay"; + departmentType = 1; + name = "Medbay RC"; + pixel_x = -30; + pixel_y = 0; + pixel_z = 0 + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + tag = "icon-manifold-b-f (WEST)"; + dir = 8 + }, +/turf/open/floor/plasteel/whiteblue/corner{ dir = 8 }, /area/medical/exam_room) @@ -15602,10 +15721,7 @@ dir = 4 }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/disposalpipe/junction{ - icon_state = "pipe-y"; - dir = 1 - }, +/obj/structure/disposalpipe/segment, /turf/open/floor/plasteel/white, /area/medical/exam_room) "aGY" = ( @@ -15617,17 +15733,10 @@ c_tag = "Medbay Northwest"; network = list("SS13") }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, /turf/open/floor/plasteel/white, /area/medical/exam_room) "aGZ" = ( /obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, /turf/open/floor/plasteel/white, /area/medical/exam_room) "aHa" = ( @@ -15672,7 +15781,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/item/clothing/neck/stethoscope, +/obj/item/clothing/tie/stethoscope, /turf/open/floor/plasteel/cmo, /area/medical/cmo) "aHf" = ( @@ -15876,12 +15985,6 @@ dir = 8 }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable/yellow{ - tag = "icon-4-10"; - icon_state = "4-10"; - d1 = 4; - d2 = 8 - }, /turf/open/floor/plasteel/warning{ dir = 8 }, @@ -16032,6 +16135,10 @@ }, /area/hallway/secondary/entry) "aHQ" = ( +/obj/structure/cable/green{ + tag = "icon-1-2"; + icon_state = "1-2" + }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 9 }, @@ -16231,7 +16338,7 @@ /area/maintenance/fore) "aIo" = ( /obj/structure/rack, -/obj/item/bodypart/l_arm/robot, +/obj/item/robot_parts/l_arm, /obj/item/stack/sheet/metal{ amount = 2 }, @@ -16294,7 +16401,7 @@ pixel_x = 0; pixel_y = 2 }, -/obj/item/clothing/neck/stethoscope, +/obj/item/clothing/tie/stethoscope, /obj/machinery/requests_console{ announcementConsole = 0; department = "Medbay"; @@ -16366,7 +16473,10 @@ /turf/open/floor/plasteel/whiteblue, /area/medical/exam_room) "aIB" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 9 + }, +/obj/structure/disposalpipe/segment{ dir = 4 }, /turf/open/floor/plasteel/whiteblue/side{ @@ -16374,24 +16484,21 @@ }, /area/medical/exam_room) "aIC" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/structure/disposalpipe/junction{ + icon_state = "pipe-y"; + dir = 1 }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - layer = 2.4; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/aft{ - name = "Aft Port Hallway" - }) +/turf/open/floor/plasteel/white, +/area/medical/exam_room) "aID" = ( /obj/machinery/atmospherics/components/unary/vent_pump{ dir = 1; on = 1 }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, /turf/open/floor/plasteel/white, /area/medical/exam_room) "aIE" = ( @@ -16400,7 +16507,10 @@ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment, +/obj/structure/disposalpipe/segment{ + dir = 2; + icon_state = "pipe-c" + }, /turf/open/floor/plasteel/white, /area/medical/exam_room) "aIF" = ( @@ -16993,7 +17103,7 @@ "aJN" = ( /obj/structure/table, /obj/item/stack/cable_coil/green, -/obj/item/bodypart/l_arm/robot, +/obj/item/robot_parts/l_arm, /obj/item/weapon/storage/fancy/cigarettes/cigpack_robustgold, /obj/item/weapon/reagent_containers/food/drinks/mug/coco, /turf/open/floor/plating, @@ -17006,7 +17116,7 @@ "aJP" = ( /obj/structure/cable/green, /obj/machinery/computer/monitor, -/obj/structure/light_construct, +/obj/machinery/light_construct, /turf/open/floor/plating, /area/maintenance/fore) "aJQ" = ( @@ -17130,8 +17240,11 @@ "aKg" = ( /obj/structure/table, /obj/item/weapon/crowbar, -/obj/item/clothing/neck/stethoscope, +/obj/item/clothing/tie/stethoscope, /obj/item/weapon/reagent_containers/spray/cleaner, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, /turf/open/floor/plasteel/whiteblue/corner{ dir = 1 }, @@ -17214,7 +17327,7 @@ /turf/open/floor/plasteel/cafeteria, /area/medical/cmo) "aKp" = ( -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, /turf/open/floor/plasteel/cafeteria, /area/medical/cmo) @@ -17362,12 +17475,6 @@ "aKL" = ( /obj/structure/closet/emcloset, /obj/machinery/light/small, -/obj/structure/cable/yellow{ - tag = "icon-5-9"; - icon_state = "5-9"; - d1 = 4; - d2 = 8 - }, /turf/open/floor/plating/airless, /area/engine/engineering) "aKM" = ( @@ -17507,15 +17614,19 @@ /turf/open/floor/plating, /area/maintenance/aft) "aLd" = ( +/obj/structure/cable/green{ + tag = "icon-2-4"; + icon_state = "2-4" + }, +/obj/structure/cable/green{ + tag = "icon-1-2"; + icon_state = "1-2" + }, /obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ dir = 4 }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/structure/disposalpipe/segment, -/obj/structure/cable/green{ - tag = "icon-1-4"; - icon_state = "1-4" - }, /turf/open/floor/plating, /area/maintenance/aft) "aLe" = ( @@ -17570,6 +17681,14 @@ }, /area/hallway/secondary/entry) "aLi" = ( +/obj/structure/cable/green{ + tag = "icon-1-2"; + icon_state = "1-2" + }, +/obj/structure/cable/green{ + tag = "icon-2-4"; + icon_state = "2-4" + }, /obj/structure/cable/green{ tag = "icon-2-8"; icon_state = "2-8" @@ -17580,6 +17699,10 @@ /turf/open/floor/plasteel, /area/hallway/secondary/entry) "aLj" = ( +/obj/structure/cable/green{ + tag = "icon-4-8"; + icon_state = "4-8" + }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ tag = "icon-manifold-r-f (EAST)"; dir = 4 @@ -17602,6 +17725,10 @@ name = "Atmos Blast Door"; opacity = 0 }, +/obj/structure/cable/green{ + tag = "icon-4-8"; + icon_state = "4-8" + }, /obj/machinery/door/firedoor, /obj/machinery/door/airlock/glass_atmos{ name = "Atmospherics"; @@ -17613,12 +17740,16 @@ /turf/open/floor/plasteel/yellow, /area/atmos) "aLl" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 +/obj/structure/cable/green{ + tag = "icon-4-8"; + icon_state = "4-8" }, /obj/structure/cable/green{ - tag = "icon-2-4"; - icon_state = "2-4" + tag = "icon-2-8"; + icon_state = "2-8" + }, +/obj/structure/disposalpipe/segment{ + dir = 4 }, /turf/open/floor/plasteel/caution{ dir = 8 @@ -17991,7 +18122,7 @@ /area/maintenance/port) "aMb" = ( /obj/effect/spawner/lootdrop/maintenance, -/obj/item/bodypart/l_arm/robot, +/obj/item/robot_parts/l_arm, /turf/open/floor/plating, /area/maintenance/port) "aMc" = ( @@ -18084,8 +18215,14 @@ /turf/open/floor/plasteel/yellow/corner, /area/engine/engineering) "aMo" = ( -/turf/open/floor/plating/warnplate, -/area/shuttle/auxillary_base) +/obj/structure/cable/green{ + tag = "icon-1-2"; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/structure/disposalpipe/segment, +/turf/open/floor/plating, +/area/maintenance/aft) "aMp" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ tag = "icon-manifold-b-f (WEST)"; @@ -18467,7 +18604,7 @@ /turf/open/floor/plasteel/white, /area/medical/genetics) "aNg" = ( -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /turf/open/floor/plasteel/whitebot, /area/medical/genetics) "aNh" = ( @@ -18586,6 +18723,10 @@ /turf/closed/wall, /area/maintenance/aft) "aNx" = ( +/obj/structure/cable/green{ + tag = "icon-1-2"; + icon_state = "1-2" + }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 9 }, @@ -18741,40 +18882,35 @@ /turf/open/floor/plasteel/white, /area/medical/exam_room) "aNQ" = ( -/obj/machinery/portable_atmospherics/canister/air, -/turf/open/floor/plating/warnplate{ - dir = 6 +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 }, -/area/shuttle/auxillary_base) +/turf/open/floor/plasteel/whiteblue/corner{ + dir = 4 + }, +/area/medical/exam_room) "aNR" = ( /obj/structure/cable/cyan{ tag = "icon-2-4"; icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, -/turf/open/floor/plasteel/white, +/turf/open/floor/plasteel/whiteblue/side{ + dir = 1 + }, /area/medical/exam_room) "aNS" = ( -/obj/structure/mining_shuttle_beacon{ - dir = 2 +/obj/structure/cable/cyan{ + tag = "icon-4-8"; + icon_state = "4-8" }, -/obj/machinery/power/apc{ - auto_name = 1; - dir = 8; - name = "Autoname APC West"; - pixel_x = -25; - pixel_y = 0 - }, -/obj/structure/cable/green{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/turf/open/floor/plasteel/darkwarning/end{ - tag = "icon-black_warn_end (EAST)"; - icon_state = "black_warn_end"; +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/area/mining_construction) +/turf/open/floor/plasteel/whiteblue/corner{ + dir = 1 + }, +/area/medical/exam_room) "aNT" = ( /obj/structure/cable/cyan{ tag = "icon-4-8"; @@ -18797,15 +18933,19 @@ /turf/open/floor/plasteel/white, /area/medical/exam_room) "aNV" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 5 +/obj/machinery/firealarm{ + dir = 2; + pixel_y = 24 }, -/obj/structure/cable/green{ +/obj/structure/cable/cyan{ tag = "icon-4-8"; icon_state = "4-8" }, -/turf/open/floor/plasteel, -/area/mining_construction) +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/medical/exam_room) "aNW" = ( /obj/structure/cable/cyan{ tag = "icon-4-8"; @@ -19109,26 +19249,42 @@ /turf/open/floor/plasteel/white, /area/medical/genetics) "aOt" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 +/obj/structure/cable/cyan{ + tag = "icon-2-4"; + icon_state = "2-4" }, /obj/structure/cable/cyan{ - tag = "icon-2-8"; - icon_state = "2-8" + tag = "icon-4-8"; + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 }, /turf/open/floor/plasteel/white, /area/medical/genetics) "aOu" = ( +/obj/structure/cable/cyan{ + tag = "icon-4-8"; + icon_state = "4-8" + }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, /turf/open/floor/plasteel/white, /area/medical/genetics) "aOv" = ( +/obj/structure/cable/cyan{ + tag = "icon-4-8"; + icon_state = "4-8" + }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, /turf/open/floor/plasteel/white, /area/medical/genetics) "aOw" = ( +/obj/structure/cable/cyan{ + tag = "icon-4-8"; + icon_state = "4-8" + }, /obj/machinery/door/airlock/maintenance{ name = "Genetics Maintenance"; req_access_txt = "5;9" @@ -19139,6 +19295,10 @@ /turf/open/floor/plating, /area/medical/genetics) "aOx" = ( +/obj/structure/cable/green{ + tag = "icon-4-8"; + icon_state = "4-8" + }, /obj/structure/cable/green{ tag = "icon-1-4"; icon_state = "1-4" @@ -19426,6 +19586,10 @@ tag = "icon-2-8"; icon_state = "2-8" }, +/obj/structure/cable/green{ + tag = "icon-4-8"; + icon_state = "4-8" + }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, @@ -19438,6 +19602,10 @@ /turf/open/floor/plasteel, /area/engine/engineering) "aOV" = ( +/obj/structure/cable/green{ + tag = "icon-4-8"; + icon_state = "4-8" + }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, @@ -19446,10 +19614,14 @@ icon_state = "pipe-j1s"; sortType = 4 }, -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /turf/open/floor/plasteel/bot, /area/engine/engineering) "aOW" = ( +/obj/structure/cable/green{ + tag = "icon-4-8"; + icon_state = "4-8" + }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, /obj/structure/disposalpipe/segment{ dir = 4 @@ -19461,6 +19633,10 @@ name = "Engineering Maintenance"; req_access_txt = "10" }, +/obj/structure/cable/green{ + tag = "icon-4-8"; + icon_state = "4-8" + }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, @@ -19470,6 +19646,10 @@ /turf/open/floor/plating, /area/engine/engineering) "aOY" = ( +/obj/structure/cable/green{ + tag = "icon-4-8"; + icon_state = "4-8" + }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 9 }, @@ -19479,6 +19659,10 @@ /turf/open/floor/plating, /area/maintenance/aft) "aOZ" = ( +/obj/structure/cable/green{ + tag = "icon-1-8"; + icon_state = "1-8" + }, /obj/structure/disposalpipe/segment{ dir = 8; icon_state = "pipe-c" @@ -19820,6 +20004,7 @@ }, /area/medical/exam_room) "aPI" = ( +/obj/structure/closet/wardrobe/pjs, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ tag = "icon-manifold-r-f (NORTH)"; dir = 1 @@ -19829,6 +20014,11 @@ }, /area/medical/exam_room) "aPJ" = ( +/obj/structure/table, +/obj/item/weapon/folder/white, +/obj/item/weapon/gun/syringe, +/obj/item/weapon/reagent_containers/dropper, +/obj/item/weapon/soap/nanotrasen, /obj/machinery/light, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, /obj/machinery/camera{ @@ -19852,6 +20042,11 @@ /area/medical/exam_room) "aPL" = ( /obj/structure/closet/secure_closet/medical1, +/obj/machinery/airalarm{ + dir = 1; + icon_state = "alarm0"; + pixel_y = -22 + }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, @@ -19974,7 +20169,7 @@ /turf/open/floor/plasteel/white, /area/medical/genetics) "aQb" = ( -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, @@ -20932,7 +21127,7 @@ /turf/open/floor/plasteel, /area/engine/chiefs_office) "aSj" = ( -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /obj/machinery/light_switch{ pixel_y = 24; tag = "n" @@ -21897,17 +22092,15 @@ /turf/open/floor/plasteel/white, /area/medical/medbay) "aUl" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/cable/green{ +/obj/structure/cable/cyan{ tag = "icon-4-8"; icon_state = "4-8" }, -/turf/open/floor/plasteel/warning{ +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/area/mining_construction) +/turf/open/floor/plasteel/white, +/area/medical/medbay) "aUm" = ( /obj/structure/cable/cyan{ tag = "icon-2-4"; @@ -22275,28 +22468,30 @@ }, /area/engine/engineering) "aUS" = ( +/obj/structure/cable/green{ + tag = "icon-2-4"; + icon_state = "2-4" + }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 6 }, /turf/open/floor/plating, /area/maintenance/aft) "aUT" = ( -/obj/machinery/door/airlock/engineering{ - cyclelinkeddir = 1; - name = "Auxillary Base Construction"; - req_access_txt = "0"; - req_one_access_txt = "32;47;48" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, /obj/structure/cable/green{ tag = "icon-4-8"; icon_state = "4-8" }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, /turf/open/floor/plasteel, -/area/mining_construction) +/area/engine/engineering) "aUU" = ( +/obj/structure/cable/green{ + tag = "icon-4-8"; + icon_state = "4-8" + }, /obj/effect/landmark/start{ name = "Station Engineer" }, @@ -22306,6 +22501,10 @@ /turf/open/floor/plasteel, /area/engine/engineering) "aUV" = ( +/obj/structure/cable/green{ + tag = "icon-4-8"; + icon_state = "4-8" + }, /obj/machinery/atmospherics/pipe/manifold4w/scrubbers/hidden, /turf/open/floor/plasteel, /area/engine/engineering) @@ -22314,6 +22513,10 @@ tag = "icon-1-4"; icon_state = "1-4" }, +/obj/structure/cable/green{ + tag = "icon-1-8"; + icon_state = "1-8" + }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, @@ -22798,7 +23001,7 @@ /turf/open/floor/plating, /area/maintenance/asmaint) "aVK" = ( -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /obj/machinery/camera{ c_tag = "Medbay Surgery"; dir = 4; @@ -23541,6 +23744,10 @@ tag = "icon-1-8"; icon_state = "1-8" }, +/obj/structure/cable/green{ + tag = "icon-1-2"; + icon_state = "1-2" + }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/open/floor/plasteel/yellow/corner{ dir = 1 @@ -24256,6 +24463,10 @@ /turf/open/floor/plating, /area/engine/engineering) "aYC" = ( +/obj/structure/cable/green{ + tag = "icon-1-2"; + icon_state = "1-2" + }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/open/floor/plasteel, /area/engine/chiefs_office) @@ -24328,6 +24539,7 @@ pixel_y = 0 }, /obj/machinery/newscaster{ + hitstaken = 0; pixel_x = 0; pixel_y = -32; tag = "s" @@ -24490,7 +24702,7 @@ }, /area/crew_quarters/courtroom) "aZf" = ( -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/open/floor/plasteel/bot, /area/crew_quarters/courtroom) @@ -24911,7 +25123,7 @@ /turf/open/floor/plasteel, /area/crew_quarters/locker) "aZU" = ( -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /turf/open/floor/plasteel, /area/crew_quarters/locker) "aZV" = ( @@ -24953,7 +25165,6 @@ pixel_x = -22; tag = "icon-alarm0 (EAST)" }, -/obj/machinery/ntnet_relay, /turf/open/floor/plasteel/darkyellow{ name = "Mainframe Floor"; initial_gas_mix = "n2=100;TEMP=80" @@ -25092,7 +25303,7 @@ tag = "icon-2-8"; icon_state = "2-8" }, -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/structure/disposalpipe/segment, /turf/open/floor/plasteel/vault{ @@ -25187,6 +25398,10 @@ /turf/open/floor/plating, /area/engine/engineering) "bau" = ( +/obj/structure/cable/green{ + tag = "icon-1-2"; + icon_state = "1-2" + }, /obj/machinery/door/airlock/maintenance{ glass = 0; name = "Chief Engineer's Office Maintenance"; @@ -25500,14 +25715,18 @@ /turf/open/floor/plating, /area/maintenance/asmaint) "bbg" = ( +/obj/structure/cable/cyan{ + tag = "icon-1-2"; + icon_state = "1-2" + }, +/obj/structure/cable/cyan{ + tag = "icon-2-4"; + icon_state = "2-4" + }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable/cyan{ - tag = "icon-1-4"; - icon_state = "1-4" - }, /turf/open/floor/plating, /area/maintenance/asmaint) "bbh" = ( @@ -25546,7 +25765,7 @@ dir = 4 }, /obj/structure/closet/wardrobe/chemistry_white, -/obj/effect/decal/cleanable/cobweb/cobweb2, +/obj/effect/decal/cleanable/cobweb2, /turf/open/floor/plating, /area/maintenance/asmaint) "bbl" = ( @@ -25975,12 +26194,20 @@ /turf/open/floor/plasteel, /area/engine/break_room) "bcb" = ( +/obj/structure/cable/green{ + tag = "icon-1-4"; + icon_state = "1-4" + }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 5 }, /turf/open/floor/plating, /area/maintenance/aft) "bcc" = ( +/obj/structure/cable/green{ + tag = "icon-2-8"; + icon_state = "2-8" + }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 10 }, @@ -26220,6 +26447,10 @@ /area/maintenance/asmaint) "bcC" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, +/obj/structure/cable/cyan{ + tag = "icon-1-2"; + icon_state = "1-2" + }, /turf/open/floor/plating, /area/maintenance/asmaint) "bcD" = ( @@ -26346,7 +26577,7 @@ tag = "icon-1-2"; icon_state = "1-2" }, -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, @@ -26660,7 +26891,7 @@ tag = "icon-1-2"; icon_state = "1-2" }, -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /obj/structure/disposalpipe/segment, /turf/open/floor/plasteel/bot, /area/engine/break_room) @@ -26945,13 +27176,16 @@ /turf/open/floor/plating, /area/maintenance/asmaint) "bee" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 10 +/obj/structure/cable/green{ + tag = "icon-4-8"; + icon_state = "4-8" }, -/turf/open/floor/plasteel/arrival{ - dir = 4 +/obj/structure/cable/green{ + tag = "icon-1-4"; + icon_state = "1-4" }, -/area/hallway/secondary/entry) +/turf/open/floor/plating, +/area/maintenance/asmaint) "bef" = ( /obj/effect/spawner/structure/window, /turf/open/floor/plating, @@ -27121,10 +27355,6 @@ tag = "every single paper bin is edited to this" }, /obj/item/weapon/folder/white, -/obj/item/weapon/paper/morguereminder{ - pixel_x = 4; - pixel_y = 5 - }, /turf/open/floor/plasteel/black, /area/medical/morgue) "bev" = ( @@ -27264,12 +27494,15 @@ /turf/open/floor/plasteel, /area/engine/break_room) "beM" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 5 }, -/turf/open/floor/plasteel, -/area/mining_construction) +/obj/structure/cable/green{ + tag = "icon-1-4"; + icon_state = "1-4" + }, +/turf/open/floor/plating, +/area/maintenance/aft) "beN" = ( /obj/effect/spawner/lootdrop{ loot = list(/obj/item/stack/sheet/metal = 1, /obj/item/stack/rods = 2, /obj/item/weapon/shard = 2, "" = 3); @@ -27279,12 +27512,20 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, +/obj/structure/cable/green{ + tag = "icon-4-8"; + icon_state = "4-8" + }, /turf/open/floor/plating, /area/maintenance/aft) "beO" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, +/obj/structure/cable/green{ + tag = "icon-4-8"; + icon_state = "4-8" + }, /turf/open/floor/plating{ broken = 1; icon_state = "platingdmg3" @@ -27295,6 +27536,10 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, +/obj/structure/cable/green{ + tag = "icon-4-8"; + icon_state = "4-8" + }, /turf/open/floor/plating, /area/maintenance/aft) "beQ" = ( @@ -27305,9 +27550,17 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, +/obj/structure/cable/green{ + tag = "icon-4-8"; + icon_state = "4-8" + }, /turf/open/floor/plating, /area/maintenance/aft) "beR" = ( +/obj/structure/cable/green{ + tag = "icon-4-8"; + icon_state = "4-8" + }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ tag = "icon-manifold-b-f (EAST)"; dir = 4 @@ -27318,13 +27571,16 @@ }, /area/hallway/secondary/entry) "beS" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 +/obj/structure/cable/green{ + tag = "icon-1-2"; + icon_state = "1-2" }, -/turf/open/floor/plasteel/warning{ - dir = 4 +/obj/structure/cable/green{ + tag = "icon-2-8"; + icon_state = "2-8" }, -/area/mining_construction) +/turf/open/floor/plasteel, +/area/hallway/secondary/entry) "beT" = ( /obj/structure/disposalpipe/segment, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -27556,7 +27812,7 @@ /turf/open/floor/wood, /area/lawoffice) "bfp" = ( -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ tag = "icon-manifold-r-f (EAST)"; dir = 4 @@ -28550,6 +28806,10 @@ name = "maintenance access"; req_access_txt = "12" }, +/obj/structure/cable/green{ + tag = "icon-1-2"; + icon_state = "1-2" + }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/plating, /area/maintenance/aft) @@ -29214,16 +29474,21 @@ name = "Fore Port Hallway" }) "biO" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/door/poddoor/shutters{ - id = "aux_base_shutters"; - name = "Auxillary Base Shutters" +/obj/structure/cable/green{ + tag = "icon-1-2"; + icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/turf/open/floor/plasteel, -/area/mining_construction) +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/yellow/corner{ + tag = "icon-yellowcorner (NORTH)"; + dir = 1 + }, +/area/hallway/primary/port{ + name = "Fore Port Hallway" + }) "biP" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 @@ -29771,6 +30036,7 @@ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, +/mob/living/simple_animal/mouse, /turf/open/floor/plating{ broken = 1; icon_state = "platingdmg3" @@ -29797,6 +30063,10 @@ codes_txt = "patrol;next_patrol=AIW"; location = "QM" }, +/obj/structure/cable/green{ + tag = "icon-2-4"; + icon_state = "2-4" + }, /turf/open/floor/plasteel, /area/hallway/primary/port{ name = "Fore Port Hallway" @@ -29989,16 +30259,21 @@ name = "Fore Port Hallway" }) "bjW" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 +/obj/structure/cable/green{ + tag = "icon-4-8"; + icon_state = "4-8" }, +/obj/structure/cable/green{ + tag = "icon-2-4"; + icon_state = "2-4" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/structure/disposalpipe/segment{ dir = 4 }, /turf/open/floor/plasteel, -/area/hallway/primary/aft{ - name = "Aft Port Hallway" +/area/hallway/primary/port{ + name = "Fore Port Hallway" }) "bjX" = ( /obj/structure/cable/green{ @@ -30093,17 +30368,19 @@ name = "Fore Port Hallway" }) "bkc" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 10 +/obj/structure/cable/green{ + tag = "icon-4-8"; + icon_state = "4-8" }, /obj/structure/cable/green{ - tag = "icon-1-2"; - icon_state = "1-2" + tag = "icon-1-8"; + icon_state = "1-8" }, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/hallway/secondary/entry) +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel, +/area/hallway/primary/port{ + name = "Fore Port Hallway" + }) "bkd" = ( /obj/machinery/door/firedoor, /obj/structure/cable/green{ @@ -30150,7 +30427,7 @@ tag = "icon-1-8"; icon_state = "1-8" }, -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /obj/machinery/navbeacon{ codes_txt = "patrol;next_patrol=Security"; location = "EVA2" @@ -30277,6 +30554,10 @@ name = "Fore Starboard Hallway" }) "bkr" = ( +/obj/structure/cable/green{ + tag = "icon-4-8"; + icon_state = "4-8" + }, /obj/machinery/door/firedoor, /turf/open/floor/plasteel, /area/hallway/primary/fore{ @@ -30287,7 +30568,7 @@ tag = "icon-4-8"; icon_state = "4-8" }, -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /turf/open/floor/plasteel/bot, /area/hallway/primary/fore{ name = "Fore Starboard Hallway" @@ -30361,6 +30642,10 @@ tag = "icon-4-8"; icon_state = "4-8" }, +/obj/structure/cable/green{ + tag = "icon-2-8"; + icon_state = "2-8" + }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 @@ -30442,6 +30727,10 @@ name = "Fore Port Hallway" }) "bkH" = ( +/obj/structure/cable/green{ + tag = "icon-1-2"; + icon_state = "1-2" + }, /obj/structure/disposalpipe/segment{ dir = 4; icon_state = "pipe-c" @@ -30684,17 +30973,19 @@ name = "Fore Port Hallway" }) "bla" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/arrival{ +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/area/hallway/secondary/entry) +/turf/open/floor/plasteel/green/corner, +/area/hallway/primary/port{ + name = "Fore Port Hallway" + }) "blb" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/turf/open/floor/plasteel/green/corner, +/turf/open/floor/plasteel/green/side, /area/hallway/primary/port{ name = "Fore Port Hallway" }) @@ -30711,7 +31002,9 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/turf/open/floor/plasteel/green/side, +/turf/open/floor/plasteel/green/corner{ + dir = 8 + }, /area/hallway/primary/port{ name = "Fore Port Hallway" }) @@ -30757,17 +31050,14 @@ name = "Fore Port Hallway" }) "bli" = ( -/obj/machinery/door/firedoor, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, /obj/structure/cable/green{ - tag = "icon-4-8"; - icon_state = "4-8" + tag = "icon-1-2"; + icon_state = "1-2" }, +/obj/machinery/atmospherics/pipe/manifold4w/scrubbers/hidden, /turf/open/floor/plasteel, -/area/hallway/primary/aft{ - name = "Aft Port Hallway" +/area/hallway/primary/port{ + name = "Fore Port Hallway" }) "blj" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, @@ -30783,6 +31073,7 @@ dir = 4 }, /obj/machinery/newscaster{ + hitstaken = 0; pixel_x = 0; pixel_y = -32; tag = "s" @@ -31367,6 +31658,10 @@ }, /area/security/transfer) "bmf" = ( +/obj/structure/cable/green{ + tag = "icon-1-2"; + icon_state = "1-2" + }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 @@ -31428,28 +31723,11 @@ }, /area/security/transfer) "bmm" = ( -/turf/open/floor/plasteel/yellow/side{ - dir = 1 +/turf/closed/wall/shuttle{ + icon_state = "swall_s6"; + dir = 2 }, -/obj/structure/rack{ - dir = 4 - }, -/obj/item/weapon/electronics/airlock, -/obj/item/weapon/electronics/airlock, -/obj/item/weapon/electronics/airlock, -/obj/item/weapon/electronics/airlock, -/obj/item/stack/cable_coil, -/obj/item/stack/cable_coil, -/obj/item/wallframe/camera, -/obj/item/wallframe/camera, -/obj/item/wallframe/camera, -/obj/item/wallframe/camera, -/obj/item/device/assault_pod/mining, -/turf/open/floor/plasteel/warningline{ - tag = "icon-warningline (NORTH)"; - dir = 1 - }, -/area/mining_construction) +/area/shuttle/escape) "bmn" = ( /obj/structure/shuttle/engine/propulsion{ icon_state = "propulsion"; @@ -31458,24 +31736,11 @@ /turf/open/floor/plating/airless, /area/shuttle/escape) "bmo" = ( -/turf/open/floor/plasteel/yellow/side{ - dir = 1 +/turf/closed/wall/shuttle{ + icon_state = "swall_s10"; + dir = 2 }, -/obj/structure/table, -/obj/item/stack/sheet/metal{ - amount = 50 - }, -/obj/item/stack/sheet/metal{ - amount = 50 - }, -/obj/item/stack/sheet/glass{ - amount = 50 - }, -/turf/open/floor/plasteel/warningline{ - tag = "icon-warningline (NORTH)"; - dir = 1 - }, -/area/mining_construction) +/area/shuttle/escape) "bmp" = ( /obj/effect/spawner/lootdrop/maintenance, /turf/open/floor/plating, @@ -31492,6 +31757,10 @@ }) "bmr" = ( /obj/machinery/door/firedoor, +/obj/structure/cable/green{ + tag = "icon-1-2"; + icon_state = "1-2" + }, /obj/structure/disposalpipe/segment, /obj/machinery/door/airlock/glass{ name = "Escape Waiting Area" @@ -31627,6 +31896,10 @@ /obj/machinery/door/airlock/glass{ name = "Bar" }, +/obj/structure/cable/green{ + tag = "icon-1-2"; + icon_state = "1-2" + }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/plasteel/bar, /area/crew_quarters/bar) @@ -31915,6 +32188,12 @@ }, /area/security/brig) "bnr" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, /obj/machinery/door/airlock/maintenance{ name = "maintenance access"; req_access_txt = "2" @@ -32039,7 +32318,10 @@ }, /area/security/transfer) "bnA" = ( -/turf/closed/wall/mineral/titanium, +/turf/closed/wall/shuttle{ + icon_state = "swall13"; + dir = 2 + }, /area/shuttle/escape) "bnB" = ( /obj/structure/shuttle/engine/heater{ @@ -32071,6 +32353,10 @@ /area/hallway/secondary/exit) "bnG" = ( /obj/machinery/door/firedoor, +/obj/structure/cable/green{ + tag = "icon-1-2"; + icon_state = "1-2" + }, /obj/structure/disposalpipe/segment, /turf/open/floor/plasteel, /area/hallway/secondary/exit) @@ -32334,17 +32620,13 @@ /turf/open/floor/plasteel/bar, /area/crew_quarters/bar) "bos" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, /obj/structure/cable/green{ - tag = "icon-4-8"; - icon_state = "4-8" + tag = "icon-1-2"; + icon_state = "1-2" }, -/turf/open/floor/plasteel, -/area/hallway/primary/aft{ - name = "Aft Port Hallway" - }) +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/bar, +/area/crew_quarters/bar) "bot" = ( /obj/machinery/light{ dir = 1 @@ -32829,9 +33111,6 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/effect/landmark/start{ - name = "Security Officer" - }, /turf/open/floor/plasteel/darkred/side{ tag = "icon-darkred (NORTHEAST)"; dir = 5 @@ -32963,6 +33242,12 @@ /turf/open/floor/plasteel/black, /area/security/transfer) "bpE" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 @@ -33122,38 +33407,28 @@ dir = 4; icon_state = "sleeper-open" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "bpR" = ( -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "bpS" = ( /obj/structure/closet/emcloset, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "bpT" = ( -/turf/open/floor/plasteel/yellow/side{ - dir = 1 +/turf/closed/wall/shuttle{ + icon_state = "swall3"; + dir = 2 }, -/obj/structure/table, -/obj/item/stack/sheet/plasteel{ - amount = 10 - }, -/obj/item/stack/rods{ - amount = 50 - }, -/turf/open/floor/plasteel/warningline{ - tag = "icon-warningline (NORTH)"; - dir = 1 - }, -/area/mining_construction) +/area/shuttle/escape) "bpU" = ( /obj/structure/closet/crate, -/turf/open/floor/mineral/titanium/yellow, +/turf/open/floor/plasteel/shuttle/yellow, /area/shuttle/escape) "bpV" = ( /obj/structure/closet, -/turf/open/floor/mineral/titanium/yellow, +/turf/open/floor/plasteel/shuttle/yellow, /area/shuttle/escape) "bpW" = ( /turf/open/floor/plasteel/delivery, @@ -33211,6 +33486,10 @@ /turf/open/floor/plasteel, /area/hallway/secondary/exit) "bqc" = ( +/obj/structure/cable/green{ + tag = "icon-1-2"; + icon_state = "1-2" + }, /obj/structure/disposalpipe/segment, /turf/open/floor/plasteel, /area/hallway/secondary/exit) @@ -33439,6 +33718,10 @@ /turf/open/floor/plasteel/bar, /area/crew_quarters/bar) "bqH" = ( +/obj/structure/cable/green{ + tag = "icon-1-2"; + icon_state = "1-2" + }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 @@ -34151,15 +34434,22 @@ /turf/open/floor/plasteel/black, /area/security/transfer) "brO" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4"; + tag = "" + }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ tag = "icon-manifold-b-f (WEST)"; dir = 8 }, -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, /turf/open/floor/plasteel/darkred/side{ tag = "icon-darkred (SOUTHWEST)"; dir = 10 @@ -34324,10 +34614,10 @@ pixel_x = -27; pixel_y = 0 }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "bsa" = ( -/turf/open/floor/mineral/titanium/yellow, +/turf/open/floor/plasteel/shuttle/yellow, /area/shuttle/escape) "bsb" = ( /turf/open/floor/plasteel/brown{ @@ -34405,6 +34695,10 @@ /turf/open/floor/plasteel, /area/hallway/secondary/exit) "bsl" = ( +/obj/structure/cable/green{ + tag = "icon-1-2"; + icon_state = "1-2" + }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, @@ -34700,6 +34994,10 @@ /turf/open/floor/plasteel/bar, /area/crew_quarters/bar) "bsU" = ( +/obj/structure/cable/green{ + tag = "icon-1-2"; + icon_state = "1-2" + }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ tag = "icon-manifold-r-f (WEST)"; dir = 8 @@ -34854,7 +35152,7 @@ d1 = 4; d2 = 8 }, -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /turf/open/floor/plasteel/warning, /area/engine/gravity_generator) "btk" = ( @@ -34929,7 +35227,7 @@ /turf/open/floor/plasteel/black, /area/crew_quarters/heads) "btu" = ( -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /turf/open/floor/plasteel/vault{ dir = 8 }, @@ -35092,6 +35390,7 @@ "btJ" = ( /obj/structure/closet/secure_closet/detective, /obj/machinery/newscaster{ + hitstaken = 0; pixel_x = 0; pixel_y = -32; tag = "s" @@ -35367,10 +35666,10 @@ pixel_y = 0; tag = "w" }, -/turf/open/floor/mineral/titanium/yellow, +/turf/open/floor/plasteel/shuttle/yellow, /area/shuttle/escape) "buf" = ( -/obj/machinery/door/airlock/titanium{ +/obj/machinery/door/airlock/shuttle{ name = "Emergency Shuttle Airlock" }, /turf/open/floor/plating, @@ -35446,6 +35745,7 @@ /area/hallway/secondary/exit) "bup" = ( /obj/machinery/newscaster{ + hitstaken = 0; pixel_x = -32; pixel_y = 0; tag = "w" @@ -35460,6 +35760,10 @@ /turf/open/floor/plasteel, /area/hallway/secondary/exit) "bur" = ( +/obj/structure/cable/green{ + tag = "icon-1-2"; + icon_state = "1-2" + }, /obj/structure/disposalpipe/segment, /obj/machinery/atmospherics/components/unary/vent_scrubber{ dir = 4; @@ -35755,6 +36059,10 @@ /turf/open/floor/plasteel/bar, /area/crew_quarters/bar) "bva" = ( +/obj/structure/cable/green{ + tag = "icon-1-2"; + icon_state = "1-2" + }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ tag = "icon-manifold-r-f (EAST)"; dir = 4 @@ -35920,43 +36228,33 @@ name = "Bridge Storage" }) "bvt" = ( -/turf/open/floor/plasteel/yellow/side{ - dir = 1 +/turf/open/floor/plasteel/darkwarning{ + tag = "icon-warndark (EAST)"; + dir = 4 }, -/obj/structure/table, -/obj/item/weapon/storage/box/lights/mixed, -/obj/item/weapon/pipe_dispenser, -/obj/machinery/button/door{ - id = "aux_base_shutters"; - name = "Public Shutters Control"; - pixel_x = 24; - pixel_y = 0; - req_access_txt = "0"; - req_one_access_txt = "32;47;48" - }, -/turf/open/floor/plasteel/warningline{ - tag = "icon-warningline (NORTH)"; - dir = 1 - }, -/area/mining_construction) +/area/bridge/meeting_room{ + name = "Bridge Storage" + }) "bvu" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/structure/cable/blue{ tag = "icon-1-2"; icon_state = "1-2" }, -/turf/open/floor/plasteel/darkwarning/end, +/turf/open/floor/plasteel/vault{ + dir = 5 + }, /area/bridge/meeting_room{ name = "Bridge Storage" }) "bvv" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable/green{ - tag = "icon-1-2"; - icon_state = "1-2" +/turf/open/floor/plasteel/darkwarning{ + tag = "icon-warndark (WEST)"; + dir = 8 }, -/turf/open/floor/plasteel, -/area/hallway/secondary/entry) +/area/bridge/meeting_room{ + name = "Bridge Storage" + }) "bvw" = ( /obj/structure/closet/emcloset, /obj/machinery/airalarm{ @@ -36659,52 +36957,42 @@ /turf/open/floor/plating, /area/security/prison) "bwp" = ( -/obj/structure/cable/green{ - tag = "icon-2-4"; - icon_state = "2-4" +/turf/closed/wall/shuttle{ + icon_state = "swall7"; + dir = 2 }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 6 - }, -/turf/open/floor/plating, -/area/maintenance/aft) +/area/shuttle/escape) "bwq" = ( /obj/machinery/door/airlock/glass{ name = "Emergency Shuttle Infirmary" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "bwr" = ( /obj/machinery/status_display, -/turf/closed/wall/mineral/titanium, +/turf/closed/wall/shuttle{ + icon_state = "swall13"; + dir = 2 + }, /area/shuttle/escape) "bws" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/hallway/secondary/entry) +/turf/closed/wall/shuttle{ + icon_state = "swall12"; + dir = 2 + }, +/area/shuttle/escape) "bwt" = ( -/obj/machinery/door/airlock/titanium{ +/obj/machinery/door/airlock/shuttle{ name = "Emergency Shuttle Cargo" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "bwu" = ( -/obj/structure/grille/broken, -/obj/effect/spawner/lootdrop{ - loot = list(/obj/item/stack/sheet/metal = 1, /obj/item/stack/rods = 2, /obj/item/weapon/shard = 2, "" = 3); - lootcount = 2; - name = "random material damage spawner" +/turf/closed/wall/shuttle{ + icon_state = "swall11"; + dir = 2 }, -/obj/structure/cable/green{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/cable/green{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/turf/open/floor/plating, -/area/maintenance/asmaint) +/area/shuttle/escape) "bwv" = ( /obj/effect/spawner/structure/window/reinforced, /obj/structure/sign/securearea{ @@ -37006,7 +37294,7 @@ /area/engine/gravity_generator) "bxj" = ( /turf/closed/wall/r_wall, -/area/ai_monitored/turret_protected/ai_upload) +/area/turret_protected/ai_upload) "bxk" = ( /obj/effect/spawner/structure/window/reinforced, /obj/structure/cable/white{ @@ -37015,7 +37303,7 @@ tag = "icon-0-2" }, /turf/open/floor/plating, -/area/ai_monitored/turret_protected/ai_upload) +/area/turret_protected/ai_upload) "bxl" = ( /obj/structure/sign/securearea{ desc = "A warning sign which reads 'HIGH VOLTAGE'"; @@ -37023,7 +37311,7 @@ name = "HIGH VOLTAGE" }, /turf/closed/wall/r_wall, -/area/ai_monitored/turret_protected/ai_upload) +/area/turret_protected/ai_upload) "bxm" = ( /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, @@ -37115,7 +37403,10 @@ dir = 4; on = 1 }, -/turf/open/floor/plasteel/black, +/turf/open/floor/plasteel/darkwarning/corner{ + tag = "icon-warndarkcorners (WEST)"; + dir = 8 + }, /area/bridge/meeting_room{ name = "Bridge Storage" }) @@ -37128,7 +37419,10 @@ tag = "icon-1-2"; icon_state = "1-2" }, -/turf/open/floor/plasteel/black, +/turf/open/floor/plasteel/darkwarning{ + tag = "icon-warndark (NORTH)"; + dir = 1 + }, /area/bridge/meeting_room{ name = "Bridge Storage" }) @@ -37137,7 +37431,10 @@ dir = 2; on = 1 }, -/turf/open/floor/plasteel/black, +/turf/open/floor/plasteel/darkwarning/corner{ + tag = "icon-warndarkcorners (EAST)"; + dir = 4 + }, /area/bridge/meeting_room{ name = "Bridge Storage" }) @@ -37503,10 +37800,10 @@ pixel_y = 0; tag = "w" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "byr" = ( -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "bys" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -37935,7 +38232,7 @@ tag = "icon-vault (WEST)"; dir = 8 }, -/area/ai_monitored/turret_protected/ai_upload) +/area/turret_protected/ai_upload) "bzn" = ( /turf/open/floor/plasteel/darkblue/side{ tag = "icon-darkblue (EAST)"; @@ -37955,7 +38252,7 @@ tag = "icon-warningline (EAST)"; dir = 4 }, -/area/ai_monitored/turret_protected/ai_upload) +/area/turret_protected/ai_upload) "bzo" = ( /obj/machinery/computer/upload/ai, /obj/structure/window/reinforced{ @@ -37979,7 +38276,7 @@ tag = "icon-vault (WEST)"; dir = 8 }, -/area/ai_monitored/turret_protected/ai_upload) +/area/turret_protected/ai_upload) "bzp" = ( /turf/open/floor/plasteel/darkblue/side{ tag = "icon-darkblue (WEST)"; @@ -37999,7 +38296,7 @@ tag = "icon-warningline (WEST)"; dir = 8 }, -/area/ai_monitored/turret_protected/ai_upload) +/area/turret_protected/ai_upload) "bzq" = ( /obj/machinery/porta_turret/ai{ dir = 8 @@ -38012,7 +38309,7 @@ tag = "icon-vault (WEST)"; dir = 8 }, -/area/ai_monitored/turret_protected/ai_upload) +/area/turret_protected/ai_upload) "bzr" = ( /obj/structure/lattice, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -38105,6 +38402,7 @@ /obj/item/weapon/folder/blue, /obj/item/weapon/stamp/hop, /obj/machinery/newscaster{ + hitstaken = 0; pixel_x = 0; pixel_y = -32; tag = "s" @@ -38472,7 +38770,7 @@ /obj/structure/chair{ dir = 4 }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "bAq" = ( /obj/structure/chair{ @@ -38481,7 +38779,7 @@ /obj/structure/window/reinforced{ dir = 4 }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "bAr" = ( /obj/structure/chair{ @@ -38490,13 +38788,13 @@ /obj/structure/window/reinforced{ dir = 8 }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "bAs" = ( /obj/structure/chair{ dir = 8 }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "bAt" = ( /turf/open/floor/plasteel/escape{ @@ -38568,7 +38866,7 @@ /turf/open/floor/plasteel, /area/storage/eva) "bAD" = ( -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /turf/open/floor/plasteel/bot, /area/storage/eva) "bAE" = ( @@ -38718,14 +39016,14 @@ tag = "icon-warndark (NORTHEAST)"; dir = 5 }, -/area/ai_monitored/turret_protected/ai_upload) +/area/turret_protected/ai_upload) "bAQ" = ( /obj/structure/sign/kiddieplaque{ pixel_x = -32; pixel_y = 32 }, /turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/ai_upload) +/area/turret_protected/ai_upload) "bAR" = ( /turf/open/floor/plasteel/darkblue/side{ tag = "icon-darkblue (EAST)"; @@ -38735,7 +39033,7 @@ tag = "icon-warningline (EAST)"; dir = 4 }, -/area/ai_monitored/turret_protected/ai_upload) +/area/turret_protected/ai_upload) "bAS" = ( /obj/structure/cable/white{ d1 = 1; @@ -38743,7 +39041,7 @@ icon_state = "1-2" }, /turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/ai_upload) +/area/turret_protected/ai_upload) "bAT" = ( /turf/open/floor/plasteel/darkblue/side{ tag = "icon-darkblue (WEST)"; @@ -38753,10 +39051,10 @@ tag = "icon-warningline (WEST)"; dir = 8 }, -/area/ai_monitored/turret_protected/ai_upload) +/area/turret_protected/ai_upload) "bAU" = ( /turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/ai_upload) +/area/turret_protected/ai_upload) "bAV" = ( /obj/machinery/airalarm{ pixel_y = 23 @@ -38780,7 +39078,7 @@ network = list("Sat") }, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai_upload) +/area/turret_protected/ai_upload) "bAW" = ( /obj/effect/spawner/structure/window/reinforced, /obj/structure/cable/white{ @@ -38790,14 +39088,14 @@ }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/open/floor/plating, -/area/ai_monitored/turret_protected/ai_upload) +/area/turret_protected/ai_upload) "bAX" = ( /turf/closed/wall, -/area/ai_monitored/turret_protected/ai_upload_foyer) +/area/turret_protected/ai_upload_foyer) "bAY" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/closed/wall, -/area/ai_monitored/turret_protected/ai_upload_foyer) +/area/turret_protected/ai_upload_foyer) "bAZ" = ( /obj/structure/sign/securearea{ pixel_x = -32 @@ -38994,9 +39292,6 @@ tag = "" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/effect/landmark/start{ - name = "Security Officer" - }, /turf/open/floor/plasteel/darkred/corner{ tag = "icon-darkredcorners (EAST)"; dir = 4 @@ -39040,9 +39335,6 @@ pixel_x = 0; tag = "" }, -/obj/effect/landmark/start{ - name = "Security Officer" - }, /turf/open/floor/plasteel/darkred/corner{ tag = "icon-darkredcorners (NORTH)"; dir = 1 @@ -39531,6 +39823,10 @@ /turf/open/floor/plasteel, /area/hallway/secondary/exit) "bCa" = ( +/obj/structure/cable/green{ + tag = "icon-1-2"; + icon_state = "1-2" + }, /obj/structure/chair/stool, /obj/machinery/navbeacon{ codes_txt = "patrol;next_patrol=AftH"; @@ -39731,10 +40027,6 @@ dir = 2; on = 1 }, -/obj/effect/landmark{ - name = "xeno_spawn"; - pixel_x = -1 - }, /turf/open/floor/plating, /area/maintenance/fsmaint) "bCA" = ( @@ -39827,7 +40119,7 @@ "bCK" = ( /obj/structure/table/wood, /obj/item/weapon/reagent_containers/food/drinks/shaker, -/obj/item/weapon/gun/ballistic/revolver/doublebarrel, +/obj/item/weapon/gun/projectile/revolver/doublebarrel, /obj/item/stack/sheet/metal{ amount = 50 }, @@ -39865,7 +40157,7 @@ icon_state = "0-4" }, /turf/open/floor/plating, -/area/ai_monitored/turret_protected/ai_upload) +/area/turret_protected/ai_upload) "bCP" = ( /obj/structure/table, /obj/item/weapon/aiModule/reset, @@ -39874,7 +40166,7 @@ icon_state = "2-8" }, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai_upload) +/area/turret_protected/ai_upload) "bCQ" = ( /turf/open/floor/plasteel/darkblue/side{ dir = 10; @@ -39888,7 +40180,7 @@ tag = "icon-warningline (SOUTHWEST)"; dir = 10 }, -/area/ai_monitored/turret_protected/ai_upload) +/area/turret_protected/ai_upload) "bCR" = ( /turf/open/floor/plasteel/darkblue/side{ tag = "icon-darkblue" @@ -39897,7 +40189,7 @@ dir = 4 }, /turf/open/floor/plasteel/warningline, -/area/ai_monitored/turret_protected/ai_upload) +/area/turret_protected/ai_upload) "bCS" = ( /turf/open/floor/plasteel/darkblue/side{ tag = "icon-darkblue" @@ -39911,7 +40203,7 @@ dir = 4 }, /turf/open/floor/plasteel/warningline, -/area/ai_monitored/turret_protected/ai_upload) +/area/turret_protected/ai_upload) "bCT" = ( /turf/open/floor/plasteel/darkblue/side{ tag = "icon-darkblue" @@ -39929,7 +40221,7 @@ dir = 4 }, /turf/open/floor/plasteel/warningline, -/area/ai_monitored/turret_protected/ai_upload) +/area/turret_protected/ai_upload) "bCU" = ( /turf/open/floor/plasteel/darkblue/side{ tag = "icon-darkblue" @@ -39945,7 +40237,7 @@ dir = 4 }, /turf/open/floor/plasteel/warningline, -/area/ai_monitored/turret_protected/ai_upload) +/area/turret_protected/ai_upload) "bCV" = ( /turf/open/floor/plasteel/darkblue/side{ tag = "icon-darkblue" @@ -39960,7 +40252,7 @@ pixel_y = 23 }, /turf/open/floor/plasteel/warningline, -/area/ai_monitored/turret_protected/ai_upload_foyer) +/area/turret_protected/ai_upload_foyer) "bCW" = ( /turf/open/floor/plasteel/darkblue/side{ tag = "icon-darkblue" @@ -39978,7 +40270,7 @@ start_active = 1 }, /turf/open/floor/plasteel/warningline, -/area/ai_monitored/turret_protected/ai_upload_foyer) +/area/turret_protected/ai_upload_foyer) "bCX" = ( /obj/machinery/status_display{ layer = 4; @@ -40127,13 +40419,17 @@ /turf/open/floor/plasteel/black, /area/bridge) "bDi" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/open/floor/plasteel/green/corner{ - dir = 8 +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 }, -/area/hallway/primary/port{ - name = "Fore Port Hallway" - }) +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/open/floor/plasteel/darkblue/side{ + tag = "icon-darkblue (EAST)"; + dir = 4 + }, +/area/bridge) "bDj" = ( /obj/machinery/firealarm{ dir = 2; @@ -40734,7 +41030,7 @@ }, /area/hallway/secondary/exit) "bEi" = ( -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/open/floor/plasteel/bot, /area/hallway/secondary/exit) @@ -40757,6 +41053,14 @@ /turf/open/floor/plasteel, /area/hallway/secondary/exit) "bEm" = ( +/obj/structure/cable/green{ + tag = "icon-1-4"; + icon_state = "1-4" + }, +/obj/structure/cable/green{ + tag = "icon-2-4"; + icon_state = "2-4" + }, /obj/structure/chair/stool, /obj/structure/disposalpipe/segment, /turf/open/floor/plasteel, @@ -40780,7 +41084,7 @@ /turf/open/floor/plasteel, /area/hallway/secondary/exit) "bEo" = ( -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/carpet, /area/library) @@ -41013,10 +41317,14 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /turf/open/floor/plasteel/bar, /area/crew_quarters/bar) "bEO" = ( +/obj/structure/cable/green{ + tag = "icon-1-2"; + icon_state = "1-2" + }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, @@ -41196,14 +41504,14 @@ tag = "icon-vault (WEST)"; dir = 8 }, -/area/ai_monitored/turret_protected/ai_upload) +/area/turret_protected/ai_upload) "bFg" = ( /obj/structure/cable/white{ tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai_upload) +/area/turret_protected/ai_upload) "bFh" = ( /turf/open/floor/plasteel/darkblue/side{ tag = "icon-darkblue (EAST)"; @@ -41217,9 +41525,9 @@ tag = "icon-warningline (EAST)"; dir = 4 }, -/area/ai_monitored/turret_protected/ai_upload) +/area/turret_protected/ai_upload) "bFi" = ( -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /obj/structure/cable/white{ tag = "icon-4-8"; icon_state = "4-8" @@ -41233,14 +41541,14 @@ icon_state = "2-4" }, /turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/ai_upload) +/area/turret_protected/ai_upload) "bFj" = ( /obj/structure/cable/white{ tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/ai_upload) +/area/turret_protected/ai_upload) "bFk" = ( /obj/structure/cable/white{ tag = "icon-1-4"; @@ -41251,7 +41559,7 @@ icon_state = "4-8" }, /turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/ai_upload) +/area/turret_protected/ai_upload) "bFl" = ( /obj/structure/cable/white{ tag = "icon-4-8"; @@ -41266,7 +41574,7 @@ icon_state = "1-4" }, /turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/ai_upload) +/area/turret_protected/ai_upload) "bFm" = ( /obj/structure/cable/white{ tag = "icon-4-8"; @@ -41283,7 +41591,7 @@ tag = "icon-warndark (WEST)"; dir = 8 }, -/area/ai_monitored/turret_protected/ai_upload) +/area/turret_protected/ai_upload) "bFn" = ( /obj/structure/cable/white{ tag = "icon-4-8"; @@ -41293,18 +41601,18 @@ tag = "icon-2-4"; icon_state = "2-4" }, -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /turf/open/floor/plasteel/vault{ dir = 8 }, -/area/ai_monitored/turret_protected/ai_upload_foyer) +/area/turret_protected/ai_upload_foyer) "bFo" = ( /obj/structure/cable/white{ tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai_upload_foyer) +/area/turret_protected/ai_upload_foyer) "bFp" = ( /obj/structure/cable/white{ tag = "icon-4-8"; @@ -41321,7 +41629,7 @@ tag = "icon-warndark (EAST)"; dir = 4 }, -/area/ai_monitored/turret_protected/ai_upload_foyer) +/area/turret_protected/ai_upload_foyer) "bFq" = ( /obj/structure/cable/green{ tag = "icon-4-8"; @@ -41449,17 +41757,15 @@ /turf/open/floor/plasteel/black, /area/bridge) "bFB" = ( -/turf/open/floor/plasteel/brown/corner, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ +/obj/structure/cable/blue{ + tag = "icon-4-8"; + icon_state = "4-8" + }, +/turf/open/floor/plasteel/darkblue/side{ + tag = "icon-darkblue (EAST)"; dir = 4 }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/warningline/corner, -/area/hallway/primary/starboard{ - name = "Aft Starboard Hallway" - }) +/area/bridge) "bFC" = ( /obj/structure/cable/blue{ tag = "icon-4-8"; @@ -41568,7 +41874,7 @@ tag = "icon-4-8"; icon_state = "4-8" }, -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /turf/open/floor/plasteel/black, /area/bridge) "bFL" = ( @@ -41666,9 +41972,6 @@ pixel_x = 0; tag = "" }, -/obj/effect/landmark/start{ - name = "Security Officer" - }, /turf/open/floor/plasteel/black, /area/security/main) "bFQ" = ( @@ -41792,7 +42095,7 @@ icon_state = "1-2"; pixel_y = 0 }, -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/structure/disposalpipe/segment, /mob/living/simple_animal/bot/secbot/beepsky{ @@ -41898,7 +42201,7 @@ pixel_x = 0; tag = "" }, -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/open/floor/plasteel/vault{ dir = 8 @@ -42244,7 +42547,7 @@ pixel_x = 0; tag = "" }, -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 9 }, @@ -42372,6 +42675,10 @@ /turf/open/floor/plasteel, /area/hallway/secondary/exit) "bGJ" = ( +/obj/structure/cable/green{ + tag = "icon-1-2"; + icon_state = "1-2" + }, /obj/structure/chair/stool, /obj/machinery/navbeacon{ codes_txt = "patrol;next_patrol=CHE"; @@ -42406,7 +42713,7 @@ /obj/structure/bookcase{ name = "Forbidden Knowledge" }, -/turf/open/floor/engine/cult, +/turf/open/floor/plasteel/cult, /area/library) "bGN" = ( /obj/structure/table/wood, @@ -42424,7 +42731,7 @@ pixel_y = 20; tag = "NORTH" }, -/turf/open/floor/engine/cult, +/turf/open/floor/plasteel/cult, /area/library) "bGO" = ( /obj/structure/table/wood, @@ -42434,7 +42741,7 @@ tag = "every single paper bin is edited to this" }, /obj/item/weapon/pen/invisible, -/turf/open/floor/engine/cult, +/turf/open/floor/plasteel/cult, /area/library) "bGP" = ( /obj/structure/table, @@ -42572,6 +42879,10 @@ /turf/open/floor/plasteel/bar, /area/crew_quarters/bar) "bHe" = ( +/obj/structure/cable/green{ + tag = "icon-1-2"; + icon_state = "1-2" + }, /obj/machinery/atmospherics/pipe/manifold4w/scrubbers/hidden, /obj/structure/chair{ dir = 8 @@ -42683,7 +42994,7 @@ icon_state = "1-8" }, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai_upload) +/area/turret_protected/ai_upload) "bHr" = ( /turf/open/floor/plasteel/darkblue/side{ dir = 9; @@ -42697,7 +43008,7 @@ tag = "icon-warningline (NORTHWEST)"; dir = 9 }, -/area/ai_monitored/turret_protected/ai_upload) +/area/turret_protected/ai_upload) "bHs" = ( /turf/open/floor/plasteel/darkblue/side{ tag = "icon-darkblue (NORTH)"; @@ -42710,7 +43021,7 @@ tag = "icon-warningline (NORTH)"; dir = 1 }, -/area/ai_monitored/turret_protected/ai_upload) +/area/turret_protected/ai_upload) "bHt" = ( /turf/open/floor/plasteel/darkblue/side{ tag = "icon-darkblue (NORTH)"; @@ -42727,7 +43038,7 @@ tag = "icon-warningline (NORTH)"; dir = 1 }, -/area/ai_monitored/turret_protected/ai_upload) +/area/turret_protected/ai_upload) "bHu" = ( /turf/open/floor/plasteel/darkblue/side{ tag = "icon-darkblue (NORTH)"; @@ -42749,7 +43060,7 @@ tag = "icon-warningline (NORTH)"; dir = 1 }, -/area/ai_monitored/turret_protected/ai_upload) +/area/turret_protected/ai_upload) "bHv" = ( /turf/open/floor/plasteel/darkblue/side{ tag = "icon-darkblue (NORTH)"; @@ -42773,7 +43084,7 @@ tag = "icon-warningline (NORTH)"; dir = 1 }, -/area/ai_monitored/turret_protected/ai_upload) +/area/turret_protected/ai_upload) "bHw" = ( /turf/open/floor/plasteel/darkblue/side{ tag = "icon-darkblue (NORTH)"; @@ -42795,7 +43106,7 @@ tag = "icon-warningline (NORTH)"; dir = 1 }, -/area/ai_monitored/turret_protected/ai_upload_foyer) +/area/turret_protected/ai_upload_foyer) "bHx" = ( /turf/open/floor/plasteel/darkblue/side{ tag = "icon-darkblue (NORTH)"; @@ -42812,7 +43123,7 @@ tag = "icon-warningline (NORTH)"; dir = 1 }, -/area/ai_monitored/turret_protected/ai_upload_foyer) +/area/turret_protected/ai_upload_foyer) "bHy" = ( /obj/machinery/ai_status_display{ pixel_x = -32 @@ -42951,24 +43262,17 @@ /turf/open/floor/plasteel/black, /area/bridge) "bHJ" = ( -/turf/open/floor/plasteel/brown/corner{ - tag = "icon-browncorner (WEST)"; - dir = 8 - }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, /obj/structure/disposalpipe/segment{ dir = 4 }, -/turf/open/floor/plasteel/warningline/corner{ - tag = "icon-warninglinecorners (WEST)"; - icon_state = "warninglinecorners"; - dir = 8 +/turf/open/floor/plasteel/darkblue/side{ + tag = "icon-darkblue (EAST)"; + dir = 4 }, -/area/hallway/primary/starboard{ - name = "Aft Starboard Hallway" - }) +/area/bridge) "bHK" = ( /obj/machinery/airalarm{ dir = 1; @@ -43197,9 +43501,6 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/effect/landmark/start{ - name = "Security Officer" - }, /turf/open/floor/plasteel/black, /area/security/main) "bIg" = ( @@ -43624,19 +43925,19 @@ /turf/open/floor/wood, /area/library) "bIO" = ( -/turf/open/floor/engine/cult, +/turf/open/floor/plasteel/cult, /area/library) "bIP" = ( /obj/structure/chair/comfy/brown{ dir = 1 }, -/turf/open/floor/engine/cult, +/turf/open/floor/plasteel/cult, /area/library) "bIQ" = ( -/obj/structure/destructible/cult/tome, +/obj/structure/cult/tome, /obj/item/clothing/under/suit_jacket/red, /obj/item/weapon/book/codex_gigas, -/turf/open/floor/engine/cult, +/turf/open/floor/plasteel/cult, /area/library) "bIR" = ( /obj/structure/filingcabinet/chestdrawer/wheeled, @@ -43647,6 +43948,7 @@ dir = 1; icon_state = "pipe-c" }, +/mob/living/simple_animal/mouse, /turf/open/floor/plating, /area/maintenance/fpmaint) "bIT" = ( @@ -43675,10 +43977,6 @@ dir = 8 }, /obj/structure/disposalpipe/segment, -/obj/structure/cable/green{ - tag = "icon-2-8"; - icon_state = "2-8" - }, /turf/open/floor/plating, /area/maintenance/fpmaint) "bIV" = ( @@ -43895,7 +44193,7 @@ tag = "icon-warndark (SOUTHEAST)"; dir = 6 }, -/area/ai_monitored/turret_protected/ai_upload) +/area/turret_protected/ai_upload) "bJv" = ( /obj/structure/table, /obj/item/weapon/folder/blue, @@ -43910,22 +44208,22 @@ start_active = 1 }, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai_upload) +/area/turret_protected/ai_upload) "bJw" = ( /obj/effect/spawner/structure/window/reinforced, /obj/structure/cable/white, /turf/open/floor/plating, -/area/ai_monitored/turret_protected/ai_upload) +/area/turret_protected/ai_upload) "bJx" = ( /obj/effect/spawner/structure/window/reinforced, /obj/structure/cable/white, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/plating, -/area/ai_monitored/turret_protected/ai_upload) +/area/turret_protected/ai_upload) "bJy" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/closed/wall, -/area/ai_monitored/turret_protected/ai_upload_foyer) +/area/turret_protected/ai_upload_foyer) "bJz" = ( /obj/structure/cable/green{ tag = "icon-0-4"; @@ -44357,10 +44655,10 @@ pixel_y = -30; tag = "s" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "bKh" = ( -/obj/machinery/door/airlock/titanium{ +/obj/machinery/door/airlock/shuttle{ name = "Emergency Shuttle Airlock" }, /obj/docking_port/mobile/emergency{ @@ -44425,6 +44723,10 @@ }, /area/hallway/secondary/exit) "bKo" = ( +/obj/structure/cable/green{ + tag = "icon-1-2"; + icon_state = "1-2" + }, /obj/structure/disposalpipe/junction{ icon_state = "pipe-j2"; dir = 2 @@ -44463,7 +44765,7 @@ name = "Private Study"; req_access_txt = "37" }, -/turf/open/floor/engine/cult, +/turf/open/floor/plasteel/cult, /area/library) "bKs" = ( /obj/structure/cable/green{ @@ -44688,7 +44990,7 @@ tag = "icon-vault (WEST)"; dir = 8 }, -/area/ai_monitored/turret_protected/ai_upload) +/area/turret_protected/ai_upload) "bKR" = ( /turf/open/floor/plasteel/darkblue/side{ tag = "icon-darkblue (EAST)"; @@ -44708,7 +45010,7 @@ tag = "icon-warningline (EAST)"; dir = 4 }, -/area/ai_monitored/turret_protected/ai_upload) +/area/turret_protected/ai_upload) "bKS" = ( /obj/machinery/computer/upload/borg, /obj/structure/window/reinforced{ @@ -44726,7 +45028,7 @@ tag = "icon-vault (WEST)"; dir = 8 }, -/area/ai_monitored/turret_protected/ai_upload) +/area/turret_protected/ai_upload) "bKT" = ( /turf/open/floor/plasteel/darkblue/side{ tag = "icon-darkblue (WEST)"; @@ -44746,7 +45048,7 @@ tag = "icon-warningline (WEST)"; dir = 8 }, -/area/ai_monitored/turret_protected/ai_upload) +/area/turret_protected/ai_upload) "bKU" = ( /obj/machinery/porta_turret/ai{ dir = 8 @@ -44759,7 +45061,7 @@ tag = "icon-vault (WEST)"; dir = 8 }, -/area/ai_monitored/turret_protected/ai_upload) +/area/turret_protected/ai_upload) "bKV" = ( /obj/structure/lattice, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -44964,6 +45266,7 @@ /area/crew_quarters/captain) "bLr" = ( /obj/machinery/newscaster{ + hitstaken = 0; pixel_x = -32; pixel_y = 0; tag = "w" @@ -45082,11 +45385,11 @@ /obj/item/weapon/storage/box/rubbershot, /obj/item/weapon/storage/box/rubbershot, /obj/item/weapon/storage/box/rubbershot, -/obj/item/weapon/gun/ballistic/shotgun/riot{ +/obj/item/weapon/gun/projectile/shotgun/riot{ pixel_x = 3; pixel_y = 3 }, -/obj/item/weapon/gun/ballistic/shotgun/riot, +/obj/item/weapon/gun/projectile/shotgun/riot, /turf/open/floor/plasteel/vault{ tag = "icon-vault (WEST)"; dir = 8 @@ -45097,7 +45400,6 @@ /obj/item/weapon/gun/energy/ionrifle{ pin = /obj/item/device/firing_pin }, -/obj/item/weapon/gun/energy/temperature/security, /obj/item/clothing/suit/armor/laserproof, /obj/item/key/security, /turf/open/floor/plasteel/vault{ @@ -45360,10 +45662,13 @@ /area/security/prison) "bLZ" = ( /obj/structure/table, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "bMa" = ( -/turf/closed/wall/mineral/titanium/nodiagonal, +/turf/closed/wall/shuttle{ + icon_state = "swallc2"; + dir = 2 + }, /area/shuttle/escape) "bMb" = ( /obj/machinery/door/firedoor, @@ -45395,6 +45700,10 @@ /turf/open/floor/plasteel, /area/hallway/secondary/exit) "bMf" = ( +/obj/structure/cable/green{ + tag = "icon-1-2"; + icon_state = "1-2" + }, /obj/machinery/atmospherics/components/unary/vent_pump{ dir = 8; layer = 2.4; @@ -45778,18 +46087,7 @@ }, /area/bridge) "bNd" = ( -/obj/machinery/power/apc{ - auto_name = 1; - dir = 8; - name = "Autoname APC West"; - pixel_x = -25; - pixel_y = 0 - }, -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/turf/open/floor/plasteel/black, +/turf/open/floor/plasteel/darkwarning, /area/security/main) "bNe" = ( /obj/machinery/computer/secure_data, @@ -46017,7 +46315,7 @@ icon_state = "1-2"; pixel_y = 0 }, -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /obj/structure/disposalpipe/segment{ dir = 8; icon_state = "pipe-c" @@ -46128,17 +46426,17 @@ /obj/structure/chair{ dir = 1 }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "bNI" = ( /obj/structure/chair, -/turf/open/floor/mineral/plastitanium/brig, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/escape) "bNJ" = ( -/turf/open/floor/mineral/plastitanium/brig, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/escape) "bNK" = ( -/obj/machinery/door/airlock/titanium{ +/obj/machinery/door/airlock/shuttle{ name = "Emergency Shuttle Airlock"; req_access_txt = "2" }, @@ -46219,6 +46517,10 @@ }, /area/hallway/secondary/exit) "bNT" = ( +/obj/structure/cable/green{ + tag = "icon-1-2"; + icon_state = "1-2" + }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, @@ -46274,10 +46576,6 @@ }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/structure/disposalpipe/segment, -/obj/structure/cable/green{ - tag = "icon-1-2"; - icon_state = "1-2" - }, /turf/open/floor/plating, /area/maintenance/fpmaint) "bOc" = ( @@ -46748,53 +47046,40 @@ /turf/open/floor/plasteel/black, /area/bridge) "bPa" = ( -/obj/structure/cable/green{ - tag = "icon-2-4"; - icon_state = "2-4" +/obj/structure/plasticflaps/mining{ + opacity = 1 }, -/obj/structure/cable/green{ - tag = "icon-1-4"; - icon_state = "1-4" +/obj/structure/window/reinforced{ + dir = 1; + pixel_y = 0 }, -/obj/structure/cable/green{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/grille, /turf/open/floor/plating, -/area/maintenance/asmaint) +/area/maintenance/fore) "bPb" = ( +/obj/structure/plasticflaps/mining{ + opacity = 1 + }, /obj/machinery/navbeacon{ codes_txt = "delivery;dir=4"; dir = 4; freq = 1400; location = "Security" }, -/obj/structure/plasticflaps{ - opacity = 1 - }, /turf/open/floor/plasteel/vault{ dir = 8 }, /area/security/main) "bPc" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0; - tag = "" +/turf/open/floor/plasteel/vault{ + dir = 5 }, -/turf/open/floor/plasteel/black, /area/security/main) "bPd" = ( -/obj/structure/cable/green{ - tag = "icon-1-8"; - icon_state = "1-8" +/turf/open/floor/plasteel/darkwarning{ + tag = "icon-warndark (WEST)"; + dir = 8 }, -/obj/structure/grille, -/turf/open/floor/plating, -/area/maintenance/asmaint) +/area/security/main) "bPe" = ( /obj/structure/chair/office/dark{ dir = 1 @@ -46856,12 +47141,12 @@ /area/security/armory) "bPk" = ( /obj/structure/rack, -/obj/item/weapon/gun/energy/e_gun/advtaser{ +/obj/item/weapon/gun/energy/gun/advtaser{ pixel_x = -3; pixel_y = 3 }, -/obj/item/weapon/gun/energy/e_gun/advtaser, -/obj/item/weapon/gun/energy/e_gun/advtaser{ +/obj/item/weapon/gun/energy/gun/advtaser, +/obj/item/weapon/gun/energy/gun/advtaser{ pixel_x = 3; pixel_y = -3 }, @@ -46894,12 +47179,12 @@ /area/security/armory) "bPm" = ( /obj/structure/rack, -/obj/item/weapon/gun/energy/e_gun{ +/obj/item/weapon/gun/energy/gun{ pixel_x = -3; pixel_y = 3 }, -/obj/item/weapon/gun/energy/e_gun, -/obj/item/weapon/gun/energy/e_gun{ +/obj/item/weapon/gun/energy/gun, +/obj/item/weapon/gun/energy/gun{ pixel_x = 3; pixel_y = -3 }, @@ -47149,7 +47434,7 @@ name = "Emergency Shuttle Brig"; req_access_txt = "2" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "bPH" = ( /obj/machinery/flasher{ @@ -47162,7 +47447,7 @@ pixel_x = 24; pixel_y = 6 }, -/turf/open/floor/mineral/plastitanium/brig, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/escape) "bPI" = ( /turf/open/floor/plasteel/darkred/side{ @@ -47733,19 +48018,32 @@ tag = "" }, /obj/structure/cable{ - d1 = 1; + d1 = 2; d2 = 8; - icon_state = "1-8" + icon_state = "2-8"; + tag = "" + }, +/turf/open/floor/plasteel/darkwarning{ + tag = "icon-warndark (NORTH)"; + dir = 1 }, -/turf/open/floor/plasteel/black, /area/security/main) "bQU" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold-b-f (WEST)"; - dir = 8 +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 }, -/turf/open/floor/plating, -/area/maintenance/asmaint) +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0; + tag = "" + }, +/turf/open/floor/plasteel/darkwarning/corner{ + tag = "icon-warndarkcorners (EAST)"; + dir = 4 + }, +/area/security/main) "bQV" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, /obj/structure/cable{ @@ -47991,7 +48289,7 @@ pixel_y = 3 }, /obj/item/weapon/crowbar, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "bRu" = ( /obj/machinery/flasher{ @@ -47999,13 +48297,13 @@ pixel_x = -6; pixel_y = -24 }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "bRv" = ( /obj/structure/chair{ dir = 1 }, -/turf/open/floor/mineral/plastitanium/brig, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/escape) "bRw" = ( /obj/structure/chair{ @@ -48445,9 +48743,8 @@ pixel_y = 24; req_access_txt = "17" }, -/turf/open/floor/plasteel/darkwarning/side{ - tag = "icon-black_warn_side (EAST)"; - icon_state = "black_warn_side"; +/turf/open/floor/plasteel/darkwarning{ + tag = "icon-warndark (EAST)"; dir = 4 }, /area/teleporter) @@ -48462,7 +48759,7 @@ tag = "icon-2-4"; icon_state = "2-4" }, -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /turf/open/floor/plasteel/vault{ dir = 8 }, @@ -48479,6 +48776,10 @@ /turf/open/floor/plasteel/black, /area/teleporter) "bSr" = ( +/obj/structure/cable/blue{ + tag = "icon-1-2"; + icon_state = "1-2" + }, /obj/structure/cable/blue{ tag = "icon-1-8"; icon_state = "1-8" @@ -48511,13 +48812,12 @@ /area/crew_quarters/captain) "bSu" = ( /obj/structure/mirror{ - pixel_y = -28 + pixel_y = 28 }, /obj/item/weapon/soap/deluxe, /obj/machinery/shower{ - pixel_y = 12 + dir = 8 }, -/obj/structure/curtain, /turf/open/floor/plasteel/freezer, /area/crew_quarters/captain) "bSv" = ( @@ -48546,7 +48846,7 @@ tag = "icon-1-2"; icon_state = "1-2" }, -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /turf/open/floor/wood, /area/crew_quarters/captain) "bSz" = ( @@ -48579,24 +48879,24 @@ /turf/open/floor/plating, /area/maintenance/fore) "bSC" = ( -/obj/structure/grille/broken, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/turf/open/floor/plating{ - broken = 1; - icon_state = "platingdmg1" - }, -/area/maintenance/asmaint) +/turf/closed/wall/r_wall, +/area/security/main) "bSD" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/turf/open/floor/plasteel/darkwarning/end{ - tag = "icon-black_warn_end (EAST)"; - icon_state = "black_warn_end"; - dir = 4 +/obj/machinery/power/apc{ + auto_name = 1; + dir = 2; + name = "Autoname APC South"; + pixel_x = 1; + pixel_y = -24 }, +/obj/structure/cable, +/turf/open/floor/plasteel/black, /area/security/main) "bSE" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -48764,8 +49064,6 @@ pixel_y = -24 }, /obj/machinery/light, -/obj/item/weapon/gun/energy/e_gun/dragnet, -/obj/item/weapon/gun/energy/e_gun/dragnet, /turf/open/floor/plasteel/vault{ dir = 8 }, @@ -48935,34 +49233,17 @@ /turf/open/floor/plasteel/showroomfloor, /area/security/prison) "bTi" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold-b-f (EAST)"; - dir = 4 +/turf/closed/wall/shuttle{ + icon_state = "swall_s5"; + dir = 2 }, -/obj/structure/cable/green{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plating, -/area/maintenance/asmaint) +/area/shuttle/escape) "bTj" = ( -/obj/machinery/vending/medical{ - pixel_x = -2 +/turf/closed/wall/shuttle{ + icon_state = "swall14"; + dir = 2 }, -/obj/machinery/requests_console{ - announcementConsole = 0; - department = "Medbay"; - departmentType = 1; - name = "Medbay RC"; - pixel_x = -30; - pixel_y = 0; - pixel_z = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 8 - }, -/area/medical/exam_room) +/area/shuttle/escape) "bTk" = ( /obj/machinery/status_display, /turf/closed/wall/shuttle{ @@ -48975,13 +49256,14 @@ name = "Emergency Shuttle Cockpit"; req_access_txt = "19" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "bTm" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/white, -/area/medical/exam_room) +/turf/closed/wall/shuttle{ + icon_state = "swall_s9"; + dir = 2 + }, +/area/shuttle/escape) "bTn" = ( /obj/structure/table/wood, /obj/item/weapon/paper, @@ -49170,6 +49452,10 @@ /turf/open/floor/plasteel/bar, /area/crew_quarters/bar) "bTK" = ( +/obj/structure/cable/green{ + tag = "icon-1-2"; + icon_state = "1-2" + }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/structure/disposalpipe/segment{ dir = 4; @@ -49357,6 +49643,10 @@ }, /area/teleporter) "bUi" = ( +/obj/structure/cable/blue{ + tag = "icon-1-2"; + icon_state = "1-2" + }, /turf/open/floor/plasteel/darkblue/side{ tag = "icon-darkblue" }, @@ -49533,13 +49823,13 @@ /area/security/prison) "bUy" = ( /obj/machinery/computer/communications, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "bUz" = ( /obj/structure/chair{ dir = 8 }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "bUA" = ( /obj/machinery/button/flasher{ @@ -49547,7 +49837,7 @@ pixel_x = -6; pixel_y = 24 }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "bUB" = ( /obj/item/device/radio/intercom{ @@ -49555,7 +49845,7 @@ pixel_x = 0; pixel_y = 24 }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "bUC" = ( /obj/structure/chair{ @@ -49565,11 +49855,11 @@ pixel_x = -5; pixel_y = 30 }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "bUD" = ( /obj/machinery/computer/crew, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "bUE" = ( /obj/effect/spawner/structure/window/reinforced, @@ -49622,6 +49912,10 @@ }) "bUL" = ( /obj/machinery/door/firedoor, +/obj/structure/cable/green{ + tag = "icon-1-2"; + icon_state = "1-2" + }, /obj/structure/disposalpipe/segment, /obj/machinery/door/airlock/glass{ name = "Escape Waiting Area" @@ -49647,10 +49941,6 @@ }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/structure/disposalpipe/segment, -/obj/structure/cable/green{ - tag = "icon-1-2"; - icon_state = "1-2" - }, /turf/open/floor/plating, /area/maintenance/fpmaint) "bUO" = ( @@ -49758,6 +50048,10 @@ /obj/machinery/door/airlock/glass{ name = "Bar" }, +/obj/structure/cable/green{ + tag = "icon-1-2"; + icon_state = "1-2" + }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/structure/disposalpipe/segment, /turf/open/floor/plasteel/bar, @@ -49857,6 +50151,10 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "bVk" = ( +/obj/structure/cable/blue{ + tag = "icon-1-2"; + icon_state = "1-2" + }, /obj/machinery/door/firedoor, /obj/machinery/door/airlock/command{ name = "Teleport Access"; @@ -49965,36 +50263,42 @@ /turf/open/floor/plating, /area/security/prison) "bVy" = ( +/turf/open/space, /obj/structure/shuttle/engine/propulsion/burst{ dir = 4 }, -/turf/closed/wall/mineral/titanium, +/turf/closed/wall/shuttle{ + icon_state = "swall_f6"; + dir = 2 + }, /area/shuttle/pod_3) "bVz" = ( -/turf/closed/wall/mineral/titanium, +/turf/closed/wall/shuttle{ + icon_state = "swall12"; + dir = 2 + }, /area/shuttle/pod_3) "bVA" = ( -/obj/structure/cable/yellow{ - tag = "icon-2-6"; - icon_state = "2-6"; - d1 = 4; - d2 = 8 +/turf/open/space, +/turf/closed/wall/shuttle{ + dir = 2; + icon_state = "swall_f10"; + layer = 2 }, -/turf/open/floor/plating/airless, -/area/engine/engineering) +/area/shuttle/pod_3) "bVB" = ( /obj/machinery/computer/security, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "bVC" = ( /obj/structure/chair{ dir = 4 }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "bVD" = ( /obj/machinery/computer/atmos_alert, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "bVE" = ( /obj/structure/table/glass, @@ -50061,6 +50365,10 @@ name = "Aft Port Hallway" }) "bVK" = ( +/obj/structure/cable/green{ + tag = "icon-1-2"; + icon_state = "1-2" + }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, @@ -50197,10 +50505,6 @@ "bVV" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden, /obj/structure/disposalpipe/segment, -/obj/structure/cable/green{ - tag = "icon-1-2"; - icon_state = "1-2" - }, /turf/open/floor/plasteel, /area/hallway/primary/aft{ name = "Aft Port Hallway" @@ -50364,6 +50668,10 @@ name = "Aft Port Hallway" }) "bWj" = ( +/obj/structure/cable/green{ + tag = "icon-1-2"; + icon_state = "1-2" + }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, @@ -50611,6 +50919,10 @@ }, /area/hallway/primary/central) "bWC" = ( +/obj/structure/cable/green{ + tag = "icon-1-2"; + icon_state = "1-2" + }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, @@ -50810,7 +51122,7 @@ /turf/open/floor/plating, /area/security/prison) "bWR" = ( -/obj/machinery/door/airlock/titanium{ +/obj/machinery/door/airlock/shuttle{ name = "Escape Pod Airlock" }, /obj/docking_port/mobile/pod{ @@ -50818,7 +51130,7 @@ id = "pod3"; name = "escape pod 3" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/pod_3) "bWS" = ( /obj/structure/chair{ @@ -50831,7 +51143,7 @@ pixel_x = 6; pixel_y = -26 }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/pod_3) "bWT" = ( /obj/structure/chair{ @@ -50848,7 +51160,7 @@ possible_destinations = "pod_asteroid3"; shuttleId = "pod3" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/pod_3) "bWU" = ( /obj/structure/grille, @@ -50864,8 +51176,10 @@ /turf/open/space, /area/space) "bWW" = ( -/turf/open/floor/mineral/titanium, -/turf/closed/wall/mineral/titanium/interior, +/turf/open/floor/plasteel/shuttle/white, +/turf/closed/wall/shuttle/interior{ + icon_state = "swall_f10" + }, /area/shuttle/escape) "bWX" = ( /obj/structure/table, @@ -50874,33 +51188,27 @@ pixel_y = 3 }, /obj/item/weapon/crowbar, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "bWY" = ( /obj/structure/chair, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "bWZ" = ( /obj/machinery/computer/emergency_shuttle, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "bXa" = ( /obj/structure/table, /obj/item/weapon/storage/firstaid/fire, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "bXb" = ( -/obj/structure/cable/green{ - tag = "icon-4-10"; - icon_state = "4-10" +/turf/open/floor/plasteel/shuttle/white, +/turf/closed/wall/shuttle/interior{ + icon_state = "swall_f6" }, -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/turf/open/floor/plating/airless, -/area/engine/engineering) +/area/shuttle/escape) "bXc" = ( /obj/structure/table/glass, /obj/item/weapon/reagent_containers/food/snacks/grown/poppy, @@ -50954,6 +51262,10 @@ name = "Aft Port Hallway" }) "bXg" = ( +/obj/structure/cable/green{ + tag = "icon-1-4"; + icon_state = "1-4" + }, /obj/machinery/navbeacon{ codes_txt = "patrol;next_patrol=HOP"; location = "CHE" @@ -51005,6 +51317,10 @@ name = "Aft Port Hallway" }) "bXk" = ( +/obj/structure/cable/green{ + tag = "icon-4-8"; + icon_state = "4-8" + }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/structure/disposalpipe/sortjunction{ dir = 4; @@ -51050,6 +51366,10 @@ name = "Aft Port Hallway" }) "bXn" = ( +/obj/structure/cable/green{ + tag = "icon-4-8"; + icon_state = "4-8" + }, /obj/structure/disposalpipe/segment{ dir = 4 }, @@ -51075,24 +51395,24 @@ name = "Aft Port Hallway" }) "bXp" = ( +/obj/structure/cable/green{ + tag = "icon-4-8"; + icon_state = "4-8" + }, /obj/structure/disposalpipe/sortjunction{ dir = 4; icon_state = "pipe-j2s"; sortType = 16 }, -/obj/structure/cable/green{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/structure/cable/green{ - tag = "icon-4-8"; - icon_state = "4-8" - }, /turf/open/floor/plasteel, /area/hallway/primary/aft{ name = "Aft Port Hallway" }) "bXq" = ( +/obj/structure/cable/green{ + tag = "icon-4-8"; + icon_state = "4-8" + }, /obj/structure/cable/green{ tag = "icon-1-4"; icon_state = "1-4" @@ -51100,39 +51420,30 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable/green{ - tag = "icon-4-8"; - icon_state = "4-8" - }, /turf/open/floor/plasteel, /area/hallway/primary/aft{ name = "Aft Port Hallway" }) "bXr" = ( +/obj/structure/cable/green{ + tag = "icon-4-8"; + icon_state = "4-8" + }, +/obj/structure/cable/green{ + tag = "icon-2-4"; + icon_state = "2-4" + }, /obj/structure/disposalpipe/junction{ tag = "icon-pipe-j2 (NORTH)"; icon_state = "pipe-j2"; dir = 1 }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable/green{ - tag = "icon-2-8"; - icon_state = "2-8" - }, /turf/open/floor/plasteel, /area/hallway/primary/aft{ name = "Aft Port Hallway" }) "bXs" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - layer = 2.4; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, /obj/structure/cable/green{ tag = "icon-4-8"; icon_state = "4-8" @@ -51142,26 +51453,43 @@ name = "Aft Port Hallway" }) "bXt" = ( +/obj/structure/cable/green{ + tag = "icon-4-8"; + icon_state = "4-8" + }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/open/floor/plasteel, /area/hallway/primary/aft{ name = "Aft Port Hallway" }) "bXu" = ( +/obj/structure/cable/green{ + tag = "icon-4-8"; + icon_state = "4-8" + }, +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + layer = 2.4; + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, /obj/structure/disposalpipe/segment{ dir = 1; icon_state = "pipe-c" }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1 +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + icon_state = "intact"; + dir = 5 }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/plasteel, /area/hallway/primary/aft{ name = "Aft Port Hallway" }) "bXv" = ( +/obj/structure/cable/green{ + tag = "icon-4-8"; + icon_state = "4-8" + }, /obj/structure/disposalpipe/segment{ dir = 4 }, @@ -51173,18 +51501,30 @@ name = "Aft Port Hallway" }) "bXw" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 +/obj/structure/cable/green{ + tag = "icon-4-8"; + icon_state = "4-8" }, /obj/structure/cable/green{ - tag = "icon-2-8"; - icon_state = "2-8" + tag = "icon-2-4"; + icon_state = "2-4" + }, +/obj/structure/disposalpipe/segment{ + dir = 4 }, /turf/open/floor/plasteel, /area/hallway/primary/aft{ name = "Aft Port Hallway" }) "bXx" = ( +/obj/structure/cable/green{ + tag = "icon-4-8"; + icon_state = "4-8" + }, +/obj/structure/cable/green{ + tag = "icon-1-4"; + icon_state = "1-4" + }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/structure/disposalpipe/junction{ icon_state = "pipe-j2"; @@ -51195,6 +51535,10 @@ name = "Aft Port Hallway" }) "bXy" = ( +/obj/structure/cable/green{ + tag = "icon-4-8"; + icon_state = "4-8" + }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/structure/disposalpipe/sortjunction{ dir = 4; @@ -51206,14 +51550,14 @@ name = "Aft Port Hallway" }) "bXz" = ( +/obj/structure/cable/green{ + tag = "icon-4-8"; + icon_state = "4-8" + }, /obj/structure/disposalpipe/junction{ icon_state = "pipe-j1"; dir = 4 }, -/obj/structure/cable/green{ - tag = "icon-2-4"; - icon_state = "2-4" - }, /turf/open/floor/plasteel, /area/hallway/primary/aft{ name = "Aft Port Hallway" @@ -51251,6 +51595,10 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "bXC" = ( +/obj/structure/cable/green{ + tag = "icon-4-8"; + icon_state = "4-8" + }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/structure/disposalpipe/segment{ dir = 2; @@ -51358,6 +51706,10 @@ tag = "icon-4-8"; icon_state = "4-8" }, +/obj/structure/cable/green{ + tag = "icon-1-8"; + icon_state = "1-8" + }, /obj/structure/disposalpipe/segment{ dir = 4; icon_state = "pipe-c" @@ -51670,31 +52022,22 @@ /turf/open/floor/plating, /area/security/prison) "bYh" = ( -/obj/machinery/door/airlock/external{ - name = "Engineering External Access"; - req_access = null; - req_access_txt = "10;13" +/turf/open/space, +/obj/structure/shuttle/engine/propulsion/burst{ + dir = 4 }, -/obj/structure/cable/green{ - tag = "icon-4-8"; - icon_state = "4-8" +/turf/closed/wall/shuttle{ + icon_state = "swall_f5"; + dir = 2 }, -/obj/structure/cable/yellow{ - tag = "icon-5-10"; - icon_state = "5-10"; - d1 = 4; - d2 = 8 - }, -/turf/open/floor/plating/airless, -/area/engine/engineering) +/area/shuttle/pod_3) "bYi" = ( -/obj/structure/grille, -/obj/structure/cable/green{ - tag = "icon-4-8"; - icon_state = "4-8" +/turf/open/space, +/turf/closed/wall/shuttle{ + icon_state = "swall_f9"; + dir = 2 }, -/turf/open/floor/plating/airless, -/area/engine/engineering) +/area/shuttle/pod_3) "bYj" = ( /obj/structure/table/glass, /obj/item/weapon/reagent_containers/food/snacks/grown/poppy, @@ -51951,15 +52294,14 @@ name = "Aft Port Hallway" }) "bYJ" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment{ +/obj/structure/cable/green{ + tag = "icon-1-2"; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/structure/cable/green{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plasteel, +/turf/open/floor/plasteel/neutral/side, /area/hallway/primary/aft{ name = "Aft Port Hallway" }) @@ -52037,10 +52379,6 @@ dir = 1 }, /obj/structure/disposalpipe/segment, -/obj/structure/cable/green{ - tag = "icon-1-2"; - icon_state = "1-2" - }, /turf/open/floor/plasteel, /area/hallway/primary/aft{ name = "Aft Port Hallway" @@ -52257,14 +52595,13 @@ name = "Aft Starboard Hallway" }) "bZn" = ( -/turf/open/floor/plasteel/brown, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, /obj/structure/disposalpipe/segment{ dir = 4 }, -/turf/open/floor/plasteel/warningline, +/turf/open/floor/plasteel/warning, /area/hallway/primary/starboard{ name = "Aft Starboard Hallway" }) @@ -52512,7 +52849,7 @@ /turf/open/floor/plasteel/black, /area/chapel/main) "bZJ" = ( -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /turf/open/floor/plasteel/black, /area/chapel/main) "bZK" = ( @@ -52673,6 +53010,10 @@ /turf/open/floor/plasteel, /area/crew_quarters/sleep) "cac" = ( +/obj/structure/cable/green{ + tag = "icon-1-2"; + icon_state = "1-2" + }, /obj/effect/spawner/structure/window, /turf/open/floor/plating, /area/crew_quarters/sleep) @@ -52705,10 +53046,6 @@ /obj/machinery/door/airlock/maintenance, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/structure/disposalpipe/segment, -/obj/structure/cable/green{ - tag = "icon-1-2"; - icon_state = "1-2" - }, /turf/open/floor/plating, /area/maintenance/asmaint2) "cai" = ( @@ -53353,6 +53690,10 @@ /turf/open/floor/plasteel, /area/crew_quarters/sleep) "cbI" = ( +/obj/structure/cable/green{ + tag = "icon-1-2"; + icon_state = "1-2" + }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, @@ -53435,10 +53776,6 @@ "cbS" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/structure/disposalpipe/segment, -/obj/structure/cable/green{ - tag = "icon-1-2"; - icon_state = "1-2" - }, /turf/open/floor/plating, /area/maintenance/asmaint2) "cbT" = ( @@ -54183,7 +54520,11 @@ /turf/open/floor/plasteel, /area/crew_quarters/sleep) "cdE" = ( -/obj/machinery/holopad, +/obj/structure/cable/green{ + tag = "icon-1-2"; + icon_state = "1-2" + }, +/obj/machinery/hologram/holopad, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, @@ -55011,7 +55352,7 @@ /turf/open/floor/plasteel/delivery, /area/storage/primary) "cfv" = ( -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /turf/open/floor/plasteel, /area/storage/primary) "cfw" = ( @@ -55046,6 +55387,10 @@ pixel_y = 8 }, /obj/item/device/paicard, +/obj/structure/cable/green{ + tag = "icon-1-2"; + icon_state = "1-2" + }, /turf/open/floor/plasteel, /area/crew_quarters/sleep) "cfA" = ( @@ -55220,7 +55565,7 @@ /turf/open/floor/plasteel/white, /area/assembly/robotics) "cfS" = ( -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /turf/open/floor/plasteel/white, /area/assembly/robotics) "cfT" = ( @@ -55316,7 +55661,7 @@ /turf/open/floor/plasteel, /area/quartermaster/office) "cge" = ( -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /turf/open/floor/plasteel/bot, /area/quartermaster/office) "cgf" = ( @@ -55761,6 +56106,10 @@ pixel_x = 2 }, /obj/item/weapon/coin/silver, +/obj/structure/cable/green{ + tag = "icon-1-2"; + icon_state = "1-2" + }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, @@ -56039,7 +56388,7 @@ /turf/open/floor/bluegrid, /area/assembly/chargebay) "chA" = ( -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /obj/structure/cable/pink{ tag = "icon-1-4"; icon_state = "1-4" @@ -56701,6 +57050,10 @@ "ciP" = ( /obj/structure/table/wood, /obj/item/weapon/storage/firstaid/regular, +/obj/structure/cable/green{ + tag = "icon-1-2"; + icon_state = "1-2" + }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, @@ -56964,7 +57317,7 @@ tag = "icon-1-8"; icon_state = "1-8" }, -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /turf/open/floor/plasteel/vault, /area/security/nuke_storage) "cjr" = ( @@ -57136,6 +57489,10 @@ /turf/open/floor/plating, /area/maintenance/apmaint) "cjJ" = ( +/obj/structure/cable/green{ + tag = "icon-1-2"; + icon_state = "1-2" + }, /obj/structure/cable/green{ tag = "icon-1-4"; icon_state = "1-4" @@ -57540,6 +57897,10 @@ /obj/structure/table/wood, /obj/item/device/instrument/guitar, /obj/item/device/instrument/violin, +/obj/structure/cable/green{ + tag = "icon-1-2"; + icon_state = "1-2" + }, /turf/open/floor/plasteel, /area/crew_quarters/sleep) "ckB" = ( @@ -57601,7 +57962,7 @@ /turf/open/floor/plasteel/white, /area/toxins/lab) "ckJ" = ( -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, @@ -58015,6 +58376,10 @@ /turf/open/floor/plating, /area/maintenance/apmaint) "clx" = ( +/obj/structure/cable/orange{ + tag = "icon-1-2"; + icon_state = "1-2" + }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/structure/disposalpipe/segment, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -58444,21 +58809,17 @@ dir = 4; icon_state = "pipe-c" }, -/obj/structure/cable/green{ - tag = "icon-2-4"; - icon_state = "2-4" - }, /turf/open/floor/plating, /area/maintenance/asmaint2) "cmr" = ( -/obj/machinery/door/firedoor, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, /obj/structure/disposalpipe/segment{ dir = 4 }, -/turf/open/floor/plasteel, -/area/hallway/primary/aft{ - name = "Aft Port Hallway" - }) +/turf/open/floor/plating, +/area/maintenance/asmaint2) "cms" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 9 @@ -58467,10 +58828,6 @@ dir = 8; icon_state = "pipe-c" }, -/obj/structure/cable/green{ - tag = "icon-1-8"; - icon_state = "1-8" - }, /turf/open/floor/plating, /area/maintenance/asmaint2) "cmt" = ( @@ -58994,12 +59351,16 @@ /turf/open/floor/plating, /area/maintenance/apmaint) "cnm" = ( +/obj/structure/cable/orange{ + tag = "icon-1-2"; + icon_state = "1-2" + }, +/obj/structure/cable/orange{ + tag = "icon-1-8"; + icon_state = "1-8" + }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/structure/disposalpipe/segment, -/obj/structure/cable/orange{ - tag = "icon-2-8"; - icon_state = "2-8" - }, /turf/open/floor/plating, /area/maintenance/apmaint) "cnn" = ( @@ -59256,15 +59617,15 @@ /turf/open/floor/plasteel, /area/crew_quarters/sleep) "cnV" = ( -/obj/machinery/door/firedoor, -/obj/structure/disposalpipe/segment{ +/obj/structure/cable/green{ + tag = "icon-1-2"; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/machinery/door/airlock/glass{ - name = "Central Access" - }, /turf/open/floor/plasteel, -/area/hallway/primary/central) +/area/crew_quarters/sleep) "cnW" = ( /obj/machinery/door/firedoor, /obj/machinery/door/airlock{ @@ -60149,6 +60510,10 @@ }, /area/crew_quarters/sleep) "cpL" = ( +/obj/structure/cable/green{ + tag = "icon-1-2"; + icon_state = "1-2" + }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 10 }, @@ -60630,15 +60995,17 @@ /turf/open/floor/plasteel, /area/quartermaster/miningdock) "cqH" = ( -/obj/structure/grille, -/obj/structure/cable/green{ - tag = "icon-5-8"; - icon_state = "5-8" +/turf/open/space, +/turf/closed/wall/shuttle{ + icon_state = "swall_f6"; + dir = 2 }, -/turf/open/floor/plating/airless, -/area/engine/engineering) +/area/shuttle/mining) "cqI" = ( -/turf/closed/wall/mineral/titanium, +/turf/closed/wall/shuttle{ + icon_state = "swall12"; + dir = 2 + }, /area/shuttle/mining) "cqJ" = ( /obj/structure/grille, @@ -60646,9 +61013,13 @@ /turf/open/floor/plating, /area/shuttle/mining) "cqK" = ( -/obj/structure/closet/wardrobe/pjs, -/turf/open/floor/plasteel/white, -/area/medical/exam_room) +/turf/open/space, +/turf/closed/wall/shuttle{ + dir = 2; + icon_state = "swall_f10"; + layer = 2 + }, +/area/shuttle/mining) "cqL" = ( /obj/structure/table, /obj/item/weapon/poster/legit, @@ -60993,6 +61364,14 @@ }, /area/crew_quarters/sleep) "cry" = ( +/obj/structure/cable/green{ + tag = "icon-1-4"; + icon_state = "1-4" + }, +/obj/structure/cable/green{ + tag = "icon-1-8"; + icon_state = "1-8" + }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, @@ -61000,10 +61379,6 @@ dir = 1; on = 1 }, -/obj/structure/cable/green{ - tag = "icon-4-8"; - icon_state = "4-8" - }, /turf/open/floor/plasteel, /area/crew_quarters/sleep) "crz" = ( @@ -61316,7 +61691,7 @@ /turf/open/floor/plasteel, /area/quartermaster/office) "csd" = ( -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/plasteel, /area/quartermaster/office) @@ -61368,17 +61743,18 @@ /turf/open/floor/plating, /area/quartermaster/miningdock) "csk" = ( -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 4 +/turf/closed/wall/shuttle{ + icon_state = "swall3"; + dir = 2 }, -/area/medical/exam_room) +/area/shuttle/mining) "csl" = ( /obj/structure/table, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/mining) "csm" = ( /obj/machinery/computer/shuttle/mining, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/mining) "csn" = ( /obj/structure/closet/emcloset, @@ -61474,6 +61850,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, +/mob/living/simple_animal/mouse, /turf/open/floor/plating, /area/maintenance/fsmaint) "csB" = ( @@ -62193,13 +62570,13 @@ /turf/open/floor/plasteel/warning/corner, /area/quartermaster/miningdock) "ctS" = ( -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/mining) "ctT" = ( /obj/structure/chair{ dir = 1 }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/mining) "ctU" = ( /obj/structure/grille, @@ -63068,14 +63445,14 @@ /turf/open/floor/plasteel, /area/engine/engineering) "cvw" = ( -/obj/machinery/door/airlock/titanium{ +/obj/machinery/door/airlock/shuttle{ name = "Mining Shuttle Airlock"; req_access_txt = "0" }, /turf/open/floor/plating, /area/shuttle/mining) "cvx" = ( -/obj/machinery/door/airlock/titanium{ +/obj/machinery/door/airlock/shuttle{ name = "Mining Shuttle Airlock"; req_access_txt = "0" }, @@ -63085,7 +63462,7 @@ height = 5; id = "mining"; name = "mining shuttle"; - port_angle = 90; + travelDir = 90; width = 7 }, /obj/docking_port/stationary{ @@ -63107,14 +63484,14 @@ /turf/open/floor/plating, /area/maintenance/apmaint) "cvz" = ( -/obj/item/bodypart/l_arm/robot, +/obj/item/robot_parts/l_arm, /obj/structure/closet, /obj/item/weapon/reagent_containers/glass/beaker/large, /obj/effect/spawner/lootdrop/maintenance, /turf/open/floor/plating, /area/maintenance/apmaint) "cvA" = ( -/obj/item/clothing/neck/petcollar, +/obj/item/clothing/tie/petcollar, /obj/structure/closet/cardboard, /turf/open/floor/plating, /area/maintenance/apmaint) @@ -64556,7 +64933,7 @@ /area/quartermaster/qm) "cyw" = ( /obj/structure/closet/crate, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/mining) "cyx" = ( /obj/structure/shuttle/engine/heater, @@ -64573,7 +64950,7 @@ /area/shuttle/mining) "cyy" = ( /obj/structure/ore_box, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/mining) "cyz" = ( /obj/structure/cable/yellow{ @@ -65059,11 +65436,12 @@ }, /area/quartermaster/qm) "czz" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/whiteblue/side{ - dir = 1 +/turf/open/space, +/turf/closed/wall/shuttle{ + icon_state = "swall_f5"; + dir = 2 }, -/area/medical/exam_room) +/area/shuttle/mining) "czA" = ( /obj/structure/shuttle/engine/propulsion/burst, /obj/structure/window/reinforced{ @@ -65073,10 +65451,12 @@ /turf/open/floor/plating/airless, /area/shuttle/mining) "czB" = ( -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 1 +/turf/open/space, +/turf/closed/wall/shuttle{ + icon_state = "swall_f9"; + dir = 2 }, -/area/medical/exam_room) +/area/shuttle/mining) "czC" = ( /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, @@ -65087,10 +65467,6 @@ icon_state = "1-9" }, /obj/structure/grille, -/obj/structure/cable/green{ - tag = "icon-4-9"; - icon_state = "4-9" - }, /turf/open/floor/plating/airless, /area/engine/engineering) "czE" = ( @@ -65621,16 +65997,20 @@ /turf/open/floor/plasteel/white, /area/toxins/explab) "cAv" = ( +/obj/structure/cable/pink{ + tag = "icon-4-8"; + icon_state = "4-8" + }, +/obj/structure/cable/pink{ + tag = "icon-2-4"; + icon_state = "2-4" + }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable/pink{ - tag = "icon-2-8"; - icon_state = "2-8" - }, /turf/open/floor/plasteel/white, /area/toxins/explab) "cAw" = ( @@ -65638,6 +66018,10 @@ name = "Experimentation Lab Maintenance"; req_access_txt = "7" }, +/obj/structure/cable/pink{ + tag = "icon-4-8"; + icon_state = "4-8" + }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, @@ -65651,6 +66035,10 @@ tag = "icon-1-2"; icon_state = "1-2" }, +/obj/structure/cable/green{ + tag = "icon-1-8"; + icon_state = "1-8" + }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ tag = "icon-manifold-b-f (EAST)"; dir = 4 @@ -66099,7 +66487,7 @@ /turf/open/floor/plasteel/white, /area/toxins/explab) "cBr" = ( -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /turf/open/floor/plasteel/whitebot, /area/toxins/explab) "cBs" = ( @@ -66463,7 +66851,7 @@ }, /area/crew_quarters/fitness) "cCa" = ( -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /turf/open/floor/plasteel/vault{ dir = 5 }, @@ -66778,7 +67166,7 @@ tag = "icon-1-8"; icon_state = "1-8" }, -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /turf/open/floor/plasteel, /area/quartermaster/storage) "cCJ" = ( @@ -67408,6 +67796,7 @@ dir = 4; network = list("SS13","Sci") }, +/obj/machinery/portable_atmospherics/canister/bz, /turf/open/floor/plasteel/floorgrime, /area/toxins/storage) "cEh" = ( @@ -67944,6 +68333,7 @@ icon_state = "tube1"; dir = 8 }, +/obj/machinery/portable_atmospherics/canister/bz, /turf/open/floor/plasteel/floorgrime, /area/toxins/storage) "cFh" = ( @@ -67962,6 +68352,7 @@ tag = "icon-4-8"; icon_state = "4-8" }, +/mob/living/simple_animal/mouse, /turf/open/floor/plasteel/floorgrime, /area/toxins/storage) "cFj" = ( @@ -68056,7 +68447,7 @@ /turf/open/floor/plasteel/white, /area/toxins/mixing) "cFr" = ( -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /obj/structure/cable/pink{ tag = "icon-1-2"; icon_state = "1-2" @@ -68151,7 +68542,6 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/machinery/light/small, /turf/open/floor/plating/warnplate, /area/toxins/mixing) "cFB" = ( @@ -68806,8 +69196,8 @@ /obj/structure/disposalpipe/segment, /obj/structure/cable/yellow{ d1 = 1; - d2 = 8; - icon_state = "1-8" + d2 = 2; + icon_state = "1-2" }, /turf/open/floor/plasteel, /area/engine/engineering) @@ -69988,11 +70378,16 @@ /turf/closed/wall/r_wall, /area/maintenance/apmaint) "cIP" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/white, -/area/medical/exam_room) +/turf/closed/wall/shuttle{ + icon_state = "swall_s6"; + dir = 2 + }, +/area/shuttle/supply) "cIQ" = ( -/turf/closed/wall/mineral/titanium, +/turf/closed/wall/shuttle{ + icon_state = "swall12"; + dir = 2 + }, /area/shuttle/supply) "cIR" = ( /obj/machinery/door/poddoor{ @@ -70007,14 +70402,14 @@ /turf/open/floor/plating, /area/shuttle/supply) "cIS" = ( -/obj/machinery/door/airlock/titanium{ +/obj/machinery/door/airlock/shuttle{ name = "Supply Shuttle Airlock"; req_access_txt = "31" }, /turf/open/floor/plating, /area/shuttle/supply) "cIT" = ( -/obj/machinery/door/airlock/titanium{ +/obj/machinery/door/airlock/shuttle{ name = "Supply Shuttle Airlock"; req_access_txt = "31" }, @@ -70045,26 +70440,17 @@ /turf/open/floor/plating, /area/maintenance/atmos_control) "cIV" = ( -/obj/machinery/firealarm{ - dir = 2; - pixel_y = 24 +/turf/closed/wall/shuttle{ + icon_state = "swall14"; + dir = 2 }, -/obj/structure/table, -/obj/item/weapon/soap/nanotrasen, -/obj/item/weapon/gun/syringe, -/obj/item/weapon/reagent_containers/dropper, -/obj/item/weapon/folder/white, -/turf/open/floor/plasteel/white, -/area/medical/exam_room) +/area/shuttle/supply) "cIW" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 +/turf/closed/wall/shuttle{ + icon_state = "swall_s10"; + dir = 2 }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) +/area/shuttle/supply) "cIX" = ( /obj/structure/lattice, /obj/structure/lattice, @@ -70343,16 +70729,13 @@ /turf/open/floor/plating, /area/maintenance/apmaint) "cJy" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 +/turf/closed/wall/shuttle{ + icon_state = "swall3"; + dir = 2 }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/aft) +/area/shuttle/supply) "cJz" = ( -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/supply) "cJA" = ( /obj/machinery/button/door{ @@ -70368,30 +70751,20 @@ pixel_x = 8; pixel_y = 24 }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/supply) "cJB" = ( -/obj/machinery/iv_drip, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 +/turf/open/floor/plasteel/shuttle, +/turf/closed/wall/shuttle/interior{ + icon_state = "swall_f5" }, -/obj/machinery/airalarm{ - dir = 1; - icon_state = "alarm0"; - pixel_y = -22 - }, -/turf/open/floor/plasteel/white, -/area/medical/exam_room) +/area/shuttle/supply) "cJC" = ( -/obj/machinery/door/airlock/maintenance{ - name = "Engineering Maintenance"; - req_access_txt = "10" +/turf/closed/wall/shuttle{ + icon_state = "swall15"; + dir = 2 }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/engine/engineering) +/area/shuttle/supply) "cJD" = ( /obj/structure/shuttle/engine/propulsion{ icon_state = "propulsion"; @@ -70841,7 +71214,7 @@ pixel_y = 24; req_access_txt = "0" }, -/obj/effect/decal/cleanable/cobweb/cobweb2, +/obj/effect/decal/cleanable/cobweb2, /turf/open/floor/plating, /area/maintenance/asmaint2) "cKy" = ( @@ -70902,32 +71275,44 @@ name = "maintenance access"; req_access_txt = "12" }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/cable/green{ +/obj/structure/cable/pink{ tag = "icon-4-8"; icon_state = "4-8" }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, /turf/open/floor/plating, /area/maintenance/asmaint2) "cKF" = ( +/obj/structure/cable/pink{ + tag = "icon-4-8"; + icon_state = "4-8" + }, /obj/machinery/light/small{ dir = 1 }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/structure/cable/green{ - tag = "icon-4-8"; - icon_state = "4-8" - }, /turf/open/floor/plasteel/whitepurple/side{ tag = "icon-whitepurple (NORTH)"; dir = 1 }, /area/toxins/xenobiology) "cKG" = ( +/obj/structure/cable/pink{ + tag = "icon-4-8"; + icon_state = "4-8" + }, +/obj/structure/cable/pink{ + tag = "icon-1-8"; + icon_state = "1-8" + }, +/obj/structure/cable/pink{ + tag = "icon-2-4"; + icon_state = "2-4" + }, /obj/effect/landmark{ name = "lightsout" }, @@ -70939,28 +71324,20 @@ dir = 1; icon_state = "pipe-c" }, -/obj/structure/cable/green{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/pink{ - tag = "icon-1-2"; - icon_state = "1-2" - }, /turf/open/floor/plasteel/whitepurple/side{ tag = "icon-whitepurple (NORTH)"; dir = 1 }, /area/toxins/xenobiology) "cKH" = ( +/obj/structure/cable/pink{ + tag = "icon-4-8"; + icon_state = "4-8" + }, /obj/machinery/atmospherics/pipe/manifold4w/scrubbers/hidden, /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable/green{ - tag = "icon-4-8"; - icon_state = "4-8" - }, /turf/open/floor/plasteel/whitepurple/side{ tag = "icon-whitepurple (NORTH)"; dir = 1 @@ -70971,16 +71348,16 @@ name = "maintenance access"; req_access_txt = "12" }, +/obj/structure/cable/pink{ + tag = "icon-4-8"; + icon_state = "4-8" + }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable/green{ - tag = "icon-4-8"; - icon_state = "4-8" - }, /turf/open/floor/plating, /area/maintenance/asmaint2) "cKJ" = ( @@ -71078,7 +71455,7 @@ id = "toxinsdriver"; name = "Toxins Launcher Bay Door" }, -/turf/open/floor/plating/warnplate/side, +/turf/open/floor/plating, /area/maintenance/apmaint) "cKQ" = ( /obj/structure/disposalpipe/segment, @@ -71311,7 +71688,10 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/turf/open/floor/plating/warnplate/side, +/turf/open/floor/plating{ + broken = 1; + icon_state = "platingdmg1" + }, /area/maintenance/apmaint) "cLs" = ( /obj/effect/spawner/lootdrop{ @@ -71369,8 +71749,11 @@ /turf/open/floor/plating, /area/maintenance/apmaint) "cLx" = ( -/turf/open/floor/plating/airless/warnplate/side, -/area/space/nearstation) +/turf/open/floor/plasteel/shuttle, +/turf/closed/wall/shuttle/interior{ + icon_state = "swall_f6" + }, +/area/shuttle/supply) "cLy" = ( /obj/structure/table, /obj/item/weapon/stock_parts/manipulator, @@ -71465,20 +71848,23 @@ /turf/open/floor/plating, /area/maintenance/apmaint) "cLL" = ( -/turf/open/space, -/area/shuttle/syndicate) +/turf/closed/wall/shuttle{ + icon_state = "swall_s5"; + dir = 2 + }, +/area/shuttle/supply) "cLM" = ( -/obj/machinery/porta_turret/syndicate{ - dir = 4 +/turf/closed/wall/shuttle{ + icon_state = "swall13"; + dir = 2 }, -/turf/closed/wall/mineral/plastitanium, -/area/shuttle/syndicate) +/area/shuttle/supply) "cLN" = ( -/obj/machinery/porta_turret/syndicate{ - dir = 5 +/turf/closed/wall/shuttle{ + icon_state = "swall_s9"; + dir = 2 }, -/turf/closed/wall/mineral/plastitanium, -/area/shuttle/syndicate) +/area/shuttle/supply) "cLO" = ( /obj/structure/lattice/catwalk, /obj/structure/cable/yellow{ @@ -71623,9 +72009,14 @@ /turf/open/floor/plating, /area/maintenance/asmaint2) "cMe" = ( -/obj/effect/landmark/xmastree, -/turf/open/floor/plasteel/bar, -/area/crew_quarters/bar) +/obj/effect/spawner/lootdrop{ + loot = list(/obj/item/stack/sheet/metal = 1, /obj/item/stack/rods = 2, /obj/item/weapon/shard = 2, "" = 3); + lootcount = 2; + name = "random material damage spawner" + }, +/mob/living/simple_animal/mouse, +/turf/open/floor/plating, +/area/maintenance/asmaint2) "cMf" = ( /obj/item/clothing/suit/bio_suit/plaguedoctorsuit, /obj/item/clothing/head/plaguedoctorhat, @@ -71760,9 +72151,12 @@ /turf/open/floor/plating, /area/maintenance/asmaint2) "cMu" = ( -/obj/effect/landmark/xmastree, -/turf/open/floor/carpet, -/area/chapel/main) +/mob/living/simple_animal/mouse, +/turf/open/floor/plating{ + broken = 1; + icon_state = "platingdmg2" + }, +/area/maintenance/asmaint2) "cMv" = ( /obj/structure/girder, /turf/open/floor/plating/airless, @@ -72332,7 +72726,6 @@ /area/maintenance/asmaint2) "cNz" = ( /obj/item/weapon/coin/uranium, -/obj/item/device/instrument/eguitar, /turf/open/floor/plating{ burnt = 1; icon_state = "panelscorched" @@ -72641,7 +73034,7 @@ name = "Secure Storage"; req_access_txt = "150" }, -/turf/open/floor/mineral/plastitanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "cNZ" = ( /turf/open/floor/plasteel/whitepurple/side, @@ -72798,20 +73191,29 @@ /turf/open/floor/plating, /area/maintenance/asmaint2) "cOp" = ( +/turf/open/space, /obj/structure/shuttle/engine/propulsion/burst{ dir = 4 }, -/turf/closed/wall/mineral/titanium, +/turf/closed/wall/shuttle{ + icon_state = "swall_f6"; + dir = 2 + }, /area/shuttle/pod_4) "cOq" = ( -/turf/closed/wall/mineral/titanium, +/turf/closed/wall/shuttle{ + icon_state = "swall12"; + dir = 2 + }, /area/shuttle/pod_4) "cOr" = ( -/turf/open/floor/plating/airless/warnplate/corner{ - tag = "icon-warnplatecorner (WEST)"; - dir = 8 +/turf/open/space, +/turf/closed/wall/shuttle{ + dir = 2; + icon_state = "swall_f10"; + layer = 2 }, -/area/space/nearstation) +/area/shuttle/pod_4) "cOs" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 5 @@ -72891,7 +73293,7 @@ tag = "icon-1-4"; icon_state = "1-4" }, -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /turf/open/floor/plasteel/whitebot, /area/toxins/xenobiology) "cOB" = ( @@ -72978,7 +73380,7 @@ /turf/open/floor/plating, /area/maintenance/asmaint2) "cOI" = ( -/obj/machinery/door/airlock/titanium{ +/obj/machinery/door/airlock/shuttle{ name = "Escape Pod Airlock" }, /obj/docking_port/mobile/pod{ @@ -72986,7 +73388,7 @@ id = "pod4"; name = "escape pod 4" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/pod_4) "cOJ" = ( /obj/structure/chair{ @@ -72999,7 +73401,7 @@ pixel_x = 6; pixel_y = -26 }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/pod_4) "cOK" = ( /obj/structure/chair{ @@ -73016,7 +73418,7 @@ possible_destinations = "pod_asteroid4"; shuttleId = "pod4" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/pod_4) "cOL" = ( /obj/structure/grille, @@ -73153,23 +73555,21 @@ /area/maintenance/asmaint2) "cPd" = ( /turf/open/space, -/obj/machinery/porta_turret/syndicate{ - dir = 6 +/obj/structure/shuttle/engine/propulsion/burst{ + dir = 4 }, -/turf/closed/wall/mineral/plastitanium{ - dir = 4; - icon_state = "diagonalWall3" +/turf/closed/wall/shuttle{ + icon_state = "swall_f5"; + dir = 2 }, -/area/shuttle/syndicate) +/area/shuttle/pod_4) "cPe" = ( /turf/open/space, -/obj/machinery/porta_turret/syndicate{ - dir = 10 +/turf/closed/wall/shuttle{ + icon_state = "swall_f9"; + dir = 2 }, -/turf/closed/wall/mineral/plastitanium{ - icon_state = "diagonalWall3" - }, -/area/shuttle/syndicate) +/area/shuttle/pod_4) "cPf" = ( /obj/structure/closet, /obj/structure/cable/pink{ @@ -73508,7 +73908,8 @@ }, /obj/machinery/door/poddoor/preopen{ id = "Xenolab"; - name = "test chamber blast door" + name = "test chamber blast door"; + unacidable = 1 }, /turf/open/floor/engine, /area/toxins/xenobiology) @@ -73625,7 +74026,8 @@ /area/toxins/xenobiology) "cPV" = ( /obj/machinery/atmospherics/components/unary/outlet_injector/on{ - dir = 1 + dir = 1; + unacidable = 1 }, /turf/open/floor/engine, /area/toxins/xenobiology) @@ -73778,7 +74180,7 @@ "cQp" = ( /obj/structure/table/optable, /obj/item/weapon/surgical_drapes, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/syndicate) "cQq" = ( /obj/structure/disposalpipe/trunk{ @@ -73830,7 +74232,7 @@ /obj/structure/table, /obj/item/weapon/cautery, /obj/item/weapon/scalpel, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/syndicate) "cQA" = ( /obj/structure/chair{ @@ -73978,13 +74380,8 @@ req_access = null; req_access_txt = "10;13" }, -/obj/structure/cable/green{ - tag = "icon-4-8"; - icon_state = "4-8" - }, /obj/structure/cable/yellow{ - tag = "icon-6-9"; - icon_state = "6-9"; + icon_state = "4-8"; d1 = 4; d2 = 8 }, @@ -74013,9 +74410,10 @@ pixel_x = 0; pixel_y = 32 }, -/obj/structure/cable/green{ - tag = "icon-4-8"; - icon_state = "4-8" +/obj/structure/cable/yellow{ + icon_state = "4-8"; + d1 = 4; + d2 = 8 }, /turf/open/floor/plating/airless, /area/engine/engineering) @@ -74025,17 +74423,19 @@ dir = 8 }, /obj/structure/disposalpipe/segment, -/obj/structure/cable/green{ - tag = "icon-4-8"; - icon_state = "4-8" +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 8; + icon_state = "1-8" }, /turf/open/floor/plasteel, /area/engine/engineering) "cQV" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable/green{ - tag = "icon-4-8"; - icon_state = "4-8" +/obj/structure/cable/yellow{ + icon_state = "4-8"; + d1 = 4; + d2 = 8 }, /turf/open/floor/plasteel/warning{ dir = 8 @@ -74057,10 +74457,6 @@ dir = 4 }, /obj/structure/chair/stool, -/obj/structure/cable/green{ - tag = "icon-1-8"; - icon_state = "1-8" - }, /turf/open/floor/plasteel, /area/engine/engineering) "cQX" = ( @@ -74069,10 +74465,6 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/structure/cable/green{ - tag = "icon-4-8"; - icon_state = "4-8" - }, /turf/open/floor/plasteel, /area/engine/engineering) "cQY" = ( @@ -74320,7 +74712,7 @@ /obj/structure/table, /obj/item/weapon/retractor, /obj/item/weapon/hemostat, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/syndicate) "cRu" = ( /obj/structure/table, @@ -74333,11 +74725,11 @@ /obj/item/stack/rods{ amount = 50 }, -/turf/open/floor/mineral/plastitanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "cRv" = ( /obj/structure/reagent_dispensers/fueltank, -/turf/open/floor/mineral/plastitanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "cRw" = ( /obj/docking_port/stationary{ @@ -74436,6 +74828,10 @@ /turf/open/floor/plasteel/bar, /area/crew_quarters/bar) "cRH" = ( +/obj/structure/cable/green{ + tag = "icon-1-2"; + icon_state = "1-2" + }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/structure/chair{ dir = 8 @@ -74528,6 +74924,10 @@ /turf/open/floor/plasteel/cafeteria, /area/crew_quarters/kitchen) "cRT" = ( +/obj/structure/cable/green{ + tag = "icon-1-2"; + icon_state = "1-2" + }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/structure/chair{ dir = 8 @@ -74568,6 +74968,10 @@ /turf/closed/wall/rust, /area/chapel/office) "cRY" = ( +/obj/structure/cable/green{ + tag = "icon-4-8"; + icon_state = "4-8" + }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, @@ -74632,6 +75036,10 @@ name = "Fore Port Hallway" }) "cSe" = ( +/obj/structure/cable/green{ + tag = "icon-4-8"; + icon_state = "4-8" + }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/structure/cable/green{ tag = "icon-1-4"; @@ -81813,23 +82221,23 @@ aae afv aae aaa -bnA +bmm bpP -bnA +bpT bpP -bnA -bnA -bnA +bwp +bpT +bpT bpP bpP bpP -bnA -bnA -bnA +bpT +bpT +bpT bpP -bnA +bpT bpP -bnA +bTi aaa aaa aaa @@ -82069,7 +82477,7 @@ aae aab afv aaa -bnA +bmm bnA bpQ brZ @@ -82086,10 +82494,10 @@ bpR bpR bpR bRt -bnA -bnA -bnA -bnA +bTj +bpT +bpT +bTi aaa aaa aaa @@ -82343,11 +82751,11 @@ byr byr byr bpS -bnA +bws bUy bVB bWW -bnA +bTi aaa aaa aaa @@ -83099,9 +83507,9 @@ afv aaa bmn bnB -bnA -bnA -bnA +bpT +bpT +bpT bwr byr byr @@ -83114,7 +83522,7 @@ bLZ bNH byr bRu -bnA +bws bUA byr bWZ @@ -83359,7 +83767,7 @@ bnB bpU bsa bue -bnA +bws byr bAq bAq @@ -83624,11 +84032,11 @@ bAr bAr bAr byr -bnA +bws bNI bNJ bRv -bnA +bws bUC bVC bXa @@ -83873,7 +84281,7 @@ bnB bpV bsa bsa -bnA +bws byr byr byr @@ -83881,15 +84289,15 @@ byr byr byr bKg -bnA +bws bNI bNJ bRv -bnA +bws bUD bVD -bWW -bnA +bXb +bTm aae aaa aae @@ -84095,7 +84503,7 @@ aaa aaa aaa aaa -cRz +aaa aaa aaa aaa @@ -84125,12 +84533,12 @@ aae aaa afv aaa -bnA +bmo bnA bpV bsa bsa -bnA +bws byr bAs bAs @@ -84138,14 +84546,14 @@ bAs bAs bAs byr -bnA +bws bNJ bPH bRv -bnA -bnA -bnA -bnA +bTj +bpT +bpT +bTm aaa aae aaa @@ -84352,8 +84760,8 @@ aaa aaa aaa aaa -amd aaa +cRz aaa aaa aaa @@ -84383,23 +84791,23 @@ aae afv aae aaa -bnA -bnA -bnA +bmo +bpT +bpT buf -bnA +bwu buf -bnA +bpT bpP bpP bpP -bnA +bpT bKh -bnA +bwu bNK -bnA -bnA -bnA +bpT +bpT +bTm aaa aaa aaa @@ -84609,8 +85017,8 @@ aaa aaa aaa aaa -cRz aaa +amd aaa aaa aaa @@ -84866,13 +85274,13 @@ aaa aaa aaa aaa +aaa cRz aaa aaa aaa aaa -aab -cRz +aaa aaa aaa aaa @@ -85123,14 +85531,14 @@ aaa aaa aaa aaa +aaa cRz aaa aaa aaa aaa -aaa -amd -aaa +aab +cRz aaa aaa aaa @@ -85380,14 +85788,14 @@ aaa aaa aaa aaa -amd -aae -aae -anR -anS -anS -anR aaa +cRz +aaa +aaa +aaa +aaa +aaa +amd aaa aaa aaa @@ -85637,15 +86045,15 @@ aaa aaa aaa aaa -cRz -aae aaa -anR -aBx -aCW -anR +amd aae aae +anR +anS +anS +anR +aae aae aae aae @@ -85892,18 +86300,18 @@ aaa aaa aaa aaa -aae -aae -anR -anR -anR -anR -axl -auq -anR aaa aaa aaa +cRz +aae +aaa +anR +aBx +aCW +anR +aaa +aaa aae aae cRz @@ -86149,17 +86557,17 @@ aaa aaa aaa aaa -aae aaa +aae +aae anR -axi -ayE anR -aBy +anR +anR +axl auq anR aaa -aaa aae aae aaa @@ -86406,17 +86814,17 @@ aaa aaa aaa aaa -anR -anR -anR -anR -anR -anR -anR -aCX -anR aaa aae +aaa +anR +axi +ayE +anR +aBy +auq +anR +aae aae aaa aaa @@ -86628,7 +87036,7 @@ acm acm acm acm -cLN +acm acm acm acm @@ -86663,14 +87071,7 @@ aaa aaa aaa aaa -anS -aun -auq -axj -ayF -aAe -aBz -auq +aaa anR anR anR @@ -86678,6 +87079,13 @@ anR anR anR anR +aCX +anR +anR +anR +anR +anR +anR anR anR anS @@ -86920,24 +87328,24 @@ aaa aaa aaa aaa +aaa anS -auo -avT -aqh -ayG -aqh -aBA -bQU +aun +auq +axj +ayF +aAe +aBz +aCY aEl aqh aqh -aqh aIt aqh aqh aMH aNN -aNN +aPD aRp aqh aqh @@ -87177,21 +87585,21 @@ aaa aaa aaa aaa +aaa anS auo -avU -axl -anR -anR -auV -arm +avT +axk +ayG +aqh +aBA +aCZ aEm aFD aFD aFD aFD aFD -aFD aMI aNO aPE @@ -87434,13 +87842,14 @@ aaa aaa aaa aaa +aaa anS -aup -auq -axm +auo +avU +axl anR -aAf -aBB +anR +auV arm asn aFE @@ -87457,7 +87866,6 @@ aBD aBD aBD aBD -aBD bbe bcA beb @@ -87660,7 +88068,7 @@ agA acm acm acm -cPd +adj aaa aaa aaa @@ -87691,13 +88099,14 @@ aaa aaa aaa aaa -anR +aaa +anS +aup auq +axm anR -anR -anR -anR -anR +aAf +aBB arm asn aFE @@ -87706,7 +88115,6 @@ aIu aJY aLI aBD -cqK aNP aPF aBD @@ -87900,7 +88308,7 @@ acx acK acX acm -cLL +adh aaa acm adO @@ -87948,13 +88356,14 @@ aaa aaa aaa aaa +aaa anR -aur -avV -axn -auq -aAg auq +anR +anR +anR +anR +anR arm asn aFE @@ -87963,8 +88372,7 @@ aIv aJZ aLJ aBD -csk -aIx +aNQ aPG aDe aSD @@ -88205,13 +88613,14 @@ aaa aaa aaa aaa +aaa anR -aus -anR -axl -ayH -aos -axl +aur +avV +axn +auq +aAg +auq arm asn aFE @@ -88220,7 +88629,6 @@ aIw aKa aLK aMJ -czz aNR aPH aRr @@ -88231,7 +88639,7 @@ aXK aZo bbg bcC -bec +bee auq bhg cSc @@ -88415,10 +88823,10 @@ acy acy acm adq -acy -acy -acy -acy +adx +adx +adx +adx aeX acy acy @@ -88462,12 +88870,13 @@ aaa aaa aaa aaa +aaa anR -aut +aus anR -axo -ayI -aAh +axl +ayH +aos axl arm asn @@ -88477,8 +88886,7 @@ aIx aKb aLL aMK -czB -aNU +aNS aPI aRs aSF @@ -88514,7 +88922,7 @@ bRE bnH bUM bVL -afX +bXh bYl bUI afr @@ -88719,13 +89127,14 @@ aaa aaa aaa aaa +aae anR -auu +aut anR -auq -auq -auq -auq +axo +ayI +aAh +axl arm asn aFE @@ -88734,7 +89143,6 @@ aIx aKc aLM aML -cIP aNT aPJ aBD @@ -88771,7 +89179,7 @@ bmt bmt bmt bVM -alt +bXi cSk bUI cbf @@ -88927,7 +89335,7 @@ acl acB acy acY -acm +ack adr ady ady @@ -88976,13 +89384,14 @@ aaa aaa aaa aaa +aae anR -auv +auu anR -axp -ayJ -aAi -aBC +auq +auq +auq +auq arm asn aFE @@ -88991,7 +89400,6 @@ aIy aKd aLN aMK -aKb aNU aPK aBD @@ -89028,7 +89436,7 @@ bRF bTn bmu bVM -alt +bXi bYm bZL bZI @@ -89187,7 +89595,7 @@ acy acm acm acm -cLM +acm acm acm acm @@ -89233,13 +89641,14 @@ aae aaa aaa aae +aae anR -auw +auv anR -axq -axq -axq -axq +axp +ayJ +aAi +aBC arm asn aFE @@ -89248,7 +89657,6 @@ aIz aKe aLO aMK -aKb aNU aPL aBD @@ -89285,7 +89693,7 @@ bnS bTo bmt bVN -alt +bXi bYn bZL bZI @@ -89490,14 +89898,15 @@ aae aae aaa aae +aaa anR -aux -auv -axr -bwu -bPa -bPd -bSC +auw +anR +axq +axq +axq +axq +arm asn aFE aBD @@ -89505,9 +89914,8 @@ aIA aKf aBD aBD -cIV -aNU -cJB +aNV +aPM aBD aSI aUc @@ -89542,7 +89950,7 @@ bnK bnK bmv bVO -arH +bXj bYo bZM cbg @@ -89716,7 +90124,7 @@ agn acm acm acm -cPe +adh aaa aaa aaa @@ -89747,17 +90155,17 @@ aaa aae aae aae +aaa anR -anR +aux auv -auv -auq +axr ayK aAj -bTi +aAj +aDa aEn aFF -bTj aGW aIB aKg @@ -90011,13 +90419,13 @@ atd atd ayL aAk +aqi aDb aEo aFG -bTm aGX -aPQ -aeu +aIC +aKd aLP aMN aNW @@ -90056,14 +90464,14 @@ bqg bTq bmt bVQ -aIC +bXl bYq bZL bZI cba cfd cgN -cMu +cgN cfd clO bZI @@ -90313,7 +90721,7 @@ bqg bTr bmu bVM -alt +bXi bYm bZL cbe @@ -90570,7 +90978,7 @@ bqg bTs bmt bVM -alt +bXi bYm bUI bUI @@ -90740,7 +91148,7 @@ acm acm acm acm -cLM +acm acm acm acm @@ -90827,7 +91235,7 @@ bqg bTt bmt bVM -alt +bXi bYr bZO cbi @@ -91084,7 +91492,7 @@ bqg bTu bmt bVR -alt +bXi bYs bTE cbj @@ -91341,7 +91749,7 @@ bqg bPV bmt bVM -alt +bXi bYt bZP cbj @@ -91355,7 +91763,7 @@ cgO cgO crh cgO -cdl +cuj cvT cgO aaa @@ -91598,7 +92006,7 @@ bqg bTv bmt bVM -alt +bXi bYt bZP cbk @@ -91855,7 +92263,7 @@ bqg bnN bmt bVS -bjW +bXm bYt bZP cbj @@ -92112,7 +92520,7 @@ bRG bmt bmt bVT -alt +bXi bYt bZQ cbj @@ -92369,7 +92777,7 @@ bnX bTw bTE bVM -alt +bXi bYu bTE cbj @@ -92626,7 +93034,7 @@ bnX bTw bTE bVM -alt +bXi bYm bTE cbl @@ -92883,7 +93291,7 @@ bnX bTx bTE bVM -alt +bXi bYm bTE cbm @@ -93397,7 +93805,7 @@ bEs bnX bTE bVU -bli +bXo bYw bTE cbn @@ -93646,12 +94054,12 @@ bCm bEt bEt bIU -afV -afV +bEt +bEt bOb -afV -afV -afV +bEt +bEt +bEt bUN bVV bXp @@ -93911,7 +94319,7 @@ bKt bKu bKu bVW -bos +bXi bYx bKu bKu @@ -94168,7 +94576,7 @@ bOc bTy bUO bVX -bXs +bXl bYy bZR cbp @@ -94425,7 +94833,7 @@ bRH bTz bUP bVY -bYJ +bXj bYz bZS bTz @@ -95967,7 +96375,7 @@ bRL bTD bTE bVM -bVb +bXs bYE bZW bZW @@ -96224,7 +96632,7 @@ bRL bnX bTE bVM -bVb +bXs bYn bZX cbt @@ -96481,7 +96889,7 @@ bRL bTE bTE bVM -bVb +bXs bYr bZY cbu @@ -96497,7 +96905,7 @@ cpF csV cpF cpF -cpF +cxB cpF czQ cAP @@ -96738,7 +97146,7 @@ bRL bTE bUT bWe -bVb +bXs bYF bZX cbv @@ -96995,7 +97403,7 @@ bRM bTE bUU bWe -bVb +bXs bYm bZX cbw @@ -97252,7 +97660,7 @@ bRN bTE bUV bWe -bVb +bXs bYm bZX cbx @@ -97478,7 +97886,7 @@ aQi aHv aHv aQl -aWq +aWs aYc aYc aYc @@ -97509,7 +97917,7 @@ bRO bTE bUW bWe -bVb +bXs bYn bZX cby @@ -97745,7 +98153,7 @@ aKx bhq biu bjP -bkT +bla bmE boj bqx @@ -98537,7 +98945,7 @@ bmH bTG bmH bWg -alt +bXi bYm bTE cbB @@ -98773,7 +99181,7 @@ aSP aRO biv bjS -bDi +bkX bmE boj bqA @@ -98794,7 +99202,7 @@ bOp bTH bmH bVM -alt +bXi bYm caa caa @@ -99051,7 +99459,7 @@ bop bTH bmH bVS -bjW +bXm bYm caa cbC @@ -99308,7 +99716,7 @@ bOq bTI bmH bVM -alt +bXi bYm caa cbD @@ -99565,7 +99973,7 @@ bRQ bTJ bmH bVU -cmr +bXo bYw caa cbE @@ -99822,7 +100230,7 @@ bqF bor bmH bWh -alt +bXi bYm caa cbF @@ -100079,7 +100487,7 @@ bqF bor bmI bWi -alt +bXi bYI caa cbG @@ -100336,7 +100744,7 @@ bqG boq bmJ bVO -arH +bXj bYG cab cbH @@ -100371,7 +100779,7 @@ cdO ckC cdO cdO -chl +cMe cdO cpP cMV @@ -100593,8 +101001,8 @@ bqF bor bmI bWe -alt -bYt +bXw +bYJ cac cbI cdE @@ -100603,7 +101011,7 @@ chd ciP ckA cbI -cdC +cnV cpL cry ctc @@ -100828,10 +101236,10 @@ bex bge bhu biC -bjS -bkY +bjW +bli bmK -bxa +bos bqH bsU bva @@ -101107,7 +101515,7 @@ bqF bTH bmI bWk -aIC +bXl bYL caa cbK @@ -101351,7 +101759,7 @@ bsV bvb bor bsV -cMe +bor bor bEP bsV @@ -101364,7 +101772,7 @@ bqF bTH bmL bVM -alt +bXi cSl caa cbF @@ -101621,7 +102029,7 @@ bqF bTL bmH bVM -alt +bXi aee caa cbL @@ -101878,7 +102286,7 @@ bRR bTM bmH bVM -alt +bXi bYm caa cbM @@ -102135,7 +102543,7 @@ bRR bTN bmH bVM -alt +bXi bYm caa cbN @@ -102392,7 +102800,7 @@ bRR bTO bmH bVM -alt +bXi bYm caa caa @@ -102649,7 +103057,7 @@ bRR bTP bmH bVS -bjW +bXm bYn cae cbO @@ -103163,7 +103571,7 @@ bRT bTR bmH bVM -alt +bXi bYN cag cbQ @@ -103420,7 +103828,7 @@ bRU bTS bmH bVM -alt +bXi bYO cae cbR @@ -103429,7 +103837,7 @@ cfF chk cae cdO -cKN +cmr cdO cpP crI @@ -103677,7 +104085,7 @@ bRU bTT bmH bWl -alt +bXi bYP cae cae @@ -103686,7 +104094,7 @@ cae cae cae cdO -cKN +cmr cdO cpP crJ @@ -103956,7 +104364,7 @@ cqd cBb cCi cpP -cfG +cEe cdO cpP cpP @@ -104495,7 +104903,7 @@ cdO chl cdO cfG -cdO +cLD cdO cdO cdO @@ -104666,7 +105074,7 @@ ame ame amc bhD -bYi +akE aky aky aOK @@ -104923,7 +105331,7 @@ ame ame ame bhF -bYi +akE aky aky aOD @@ -105180,7 +105588,7 @@ ame ame cGL bhD -cqH +akE aky alg aOz @@ -105435,8 +105843,8 @@ ame ame amc bNM -bVA -bXb +amZ +bhD aky aky aky @@ -105900,7 +106308,7 @@ aac aaa aaa aaa -aae +aeZ agf ago agu @@ -105927,7 +106335,7 @@ agu ago ago akd -aae +aks aae aae alN @@ -106023,7 +106431,7 @@ cJV cCj cKC cqd -cdO +cLD cLR cMk cMz @@ -106156,9 +106564,9 @@ aaa aac aaa aaa -aae +aeZ aft -aae +afu afN agv agG @@ -106183,7 +106591,7 @@ agG ajr ajz aae -aae +ake akt aae aaa @@ -106207,7 +106615,7 @@ aql aru aoy aky -bYh +cQR alg alN aky @@ -106412,9 +106820,9 @@ aak aaa aac aaa -aae +aeZ aft -aae +afu afN agb aaa @@ -106425,17 +106833,17 @@ aaa aaa aaa aaa -ahj -ahj -ahj -ahk -ahk -ahk -ahk -ahk -ahj -ahj -ahj +aae +aae +aaa +aaa +aaa +aaa +aaa +aae +aae +aaa +aaa aaa aaa ajA @@ -106668,9 +107076,9 @@ aar aak aaa aac -aae +aeZ aft -aae +afu afN agb aae @@ -106682,17 +107090,17 @@ aaa aaa aaa aae -ahj -ahy -ahT -ahT -ahT -ahT -ahT -ahT -ahT -aDu -ahj +aae +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aae +aae +aaa aaa aaa afP @@ -106926,7 +107334,7 @@ abl abl abl afa -aae +afu afN agb aaa @@ -106939,17 +107347,17 @@ aaa aaa aae aae -ahj -ahD -aie -aie -aie -aie -aie -aie -aie -aMo -ahj +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aae +aae aaa aaa afP @@ -107018,7 +107426,7 @@ bSa bTZ bVc bWn -afX +bXh bYW cao cbZ @@ -107196,17 +107604,17 @@ aaa aae aae aaa -ahk -ahD -aie -aie -aie -aie -aie -aie -aie -aMo -ahk +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aae aae aaa afP @@ -107275,7 +107683,7 @@ bSb bMz bVd bVM -alt +bXi bYX cap cca @@ -107453,17 +107861,17 @@ aae aae aaa aaa -ahk -ahD -aie -aie -aie -aiM -aie -aie -aie -aMo -ahk +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa aae aae afP @@ -107532,7 +107940,7 @@ bMz bMz bTE bWo -alt +bXi bYS cai cca @@ -107696,7 +108104,7 @@ adT aej aey abl -afb +afd aae afP aaa @@ -107710,17 +108118,17 @@ aae aaa aaa aaa -ahk -ahD -aie -aie -aiK -ajc -ajX -aie -aie -aMo -ahk +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa aaa aae ajB @@ -107758,16 +108166,16 @@ aQI aky ajD aUS -awJ -awJ -awJ -awJ -awJ -awJ -awJ +atG +atG +atG +atG +atG +atG +atG bhB -biM -bjM +biO +bkc bkX bhg boJ @@ -107789,7 +108197,7 @@ bSc boM bTE bVM -alt +bXi bYm caj cca @@ -107967,17 +108375,17 @@ aae aae aaa aaa -ahk -ahD -aie -aie -aie -aie -aie -aie -aie -aMo -ahk +aaa +aaa +aaa +aaa +aaa +aab +aaa +aaa +aaa +aaa +aaa aaa aaa ajC @@ -107987,9 +108395,9 @@ akz aki all alQ -anl -anl -anl +amy +amy +amy aoE apB aqr @@ -108014,7 +108422,7 @@ aOS aQJ aky aky -cJC +aOM aky aky aky @@ -108046,7 +108454,7 @@ bSd boK bTE bWp -bjW +bXm bYm caj ccb @@ -108224,17 +108632,17 @@ aaa aae aae aaa -ahk -ahD -aie -aie -aie -aie -aie -aie -aie -aMo -ahk +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa aaa aaa aaa @@ -108271,7 +108679,7 @@ aOP aCa aSd aTh -aoD +aUT aWQ aky baq @@ -108303,7 +108711,7 @@ bze boK bTE bVM -alt +bXi bYm caj ccc @@ -108481,17 +108889,17 @@ aaa aaa aae aae -ahj -ahD -aie -aie -aie -aie -aie -aie -aie -aMo -ahj +aaa +aaa +aaa +aaa +aaa +aaa +ahP +aaa +aaa +aaa +aiK aaa aaa ajD @@ -108528,7 +108936,7 @@ aOP aCa aSd aTi -aoD +aUT aWR aky baq @@ -108560,7 +108968,7 @@ bSe bUa bTE bVM -alt +bXi bYm caj ccb @@ -108738,19 +109146,19 @@ aaa aaa aaa aae -ahj -ahP -aif -aif -aif -aif -aif -aif -aif -aNQ -ahj +aae aaa aaa +aaa +aaa +ahD +ahQ +aie +aaa +aiv +aiL +ajc +aaa ajE ajP ajP @@ -108817,7 +109225,7 @@ bze boJ bTE bVM -alt +bXi bYR cak cca @@ -108995,19 +109403,19 @@ aaa aaa aaa aaa -ahj -ahj -ahj -ahk -ahj -ajd -ahj -ahk -ahj -ahj -ahj -ahk -ahj +aae +aae +aaa +aaa +ahv +ahE +ahR +ahE +ahv +aiw +aiM +aiw +ahv ajD ajQ ajQ @@ -109074,7 +109482,7 @@ bze bTE bTE bWq -alt +bXi bYY bTE cca @@ -109256,15 +109664,15 @@ aae aae aae aae -ahk -ajj -ahj -akb -akr -aNS +ahv +ahE +ahS +ahE +ahv +aiw aiN -bmm -ahj +aiw +ahv ajF ajR akk @@ -109331,7 +109739,7 @@ bSf bTE bVe bWe -alt +bXi bYm bVb ccd @@ -109513,15 +109921,15 @@ aaa aaa aae aae -ahk +ahv ahF -ahj -akl -aCY +ahT +aif +ahv aix aiO -bmo -ahj +ajd +ahv ajD ajD ajD @@ -109588,7 +109996,7 @@ bze bTE bVf bWe -alt +bXi bYm caq cce @@ -109770,15 +110178,15 @@ aaa aaa aaa aae -ahk -ajj -ajd -akp -aCZ -aNV -beM -bpT -ahj +ahv +ahv +ahU +ahv +ahv +ahv +aiP +ahv +ahv ajG ajS ajQ @@ -109809,7 +110217,7 @@ aky aKY aMm aCa -cIW +aOP aQO aSd aTn @@ -109845,7 +110253,7 @@ bze bTE bVg bWe -alt +bXi bYm caq cce @@ -109894,7 +110302,7 @@ czg cpP cOp cOI -cOp +cPd cpP aaa aae @@ -110027,19 +110435,19 @@ aaa aab aaa aaa -ahk -ajV -ahj +ahv +ahG +ahO aig -aDa -aUl -beS -bvt -ahj -bwp -aAG -aAG -aAG +ahv +aiy +ahO +aig +ahv +ajH +ajT +ajT +ajT akO als alU @@ -110102,7 +110510,7 @@ bze bTE bTE bVM -alt +bXi bYm car cce @@ -110278,21 +110686,21 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -ahv -ahv +afv +aae +aae +aae +aae +aae +aht +ahv +ahU +aih +aht +ahv +aiP +aih aht -ahj -ahj -ahj -ahj -aUT -biO -ahj -ahj ajI ahv ahv @@ -110323,7 +110731,7 @@ aky aky aky aNu -cIW +aOP anl aSd aQK @@ -110359,7 +110767,7 @@ bSg bUb bTE bVU -cmr +bXo bYw cas ccf @@ -110394,7 +110802,7 @@ cKO cLk cpP ahA -cwt +cMu cpP cLC cdO @@ -110536,26 +110944,26 @@ aaa aaa aaa aaa -ahv -ahv -ahv -ahv -aim -aih +aaa +aaa +aaa +aaa +aae +ahw ahH -ahM +ahV aii aip aiz -bkc +ahV aje -bvv +ahM ajJ -ahM -ahM -ahM -ahM -ahM +ajU +ajU +ajU +ajU +alt alU amD anq @@ -110616,7 +111024,7 @@ bze boK bhC biQ -cnV +bXB blv bhC ccf @@ -110663,9 +111071,9 @@ aae aae aaa aaa -cOq +cOr cOL -cOq +cPe aaa aaa aaa @@ -110792,26 +111200,26 @@ aaa aaa aaa aaa -aiw -aiw -aiw -ack -ahv -aiy -aiP +aaa +aaa +aaa +aaa +aae +aae +ahw +ahI +ahI +ahI +ahI +ahI +ahI +ahI ahI ahI ahI ahI -bee -bla -bla -bla -bla -bla -bla akB -bws +ahM alu alU amE @@ -110837,7 +111245,7 @@ aJq aLb ajQ aNv -cJy +avq aQP aSi aTq @@ -111048,13 +111456,13 @@ aaa aaa aaa aaa -agg -aiL -agZ -ahm -ahR -aiP -aiv +aaa +aaa +aaa +aaa +aae +aae +aaa ahv ahw ahW @@ -111103,8 +111511,8 @@ aXb aYD aQP bcc -alT -bcb +aAG +beM ajQ bhg big @@ -111302,15 +111710,15 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aiw -aiw -aiw -ack -ahv +afv +aae +aae +aae +aae +aae +aae +aae +aae aht aht ahw @@ -111349,7 +111757,7 @@ aFa aHN aJs aLd -awK +aMo aNx aOZ aQP @@ -111564,11 +111972,11 @@ aaa aaa aaa aaa -ahv -ahv -ahv -ahv -aae +aaa +aaa +aaa +aaa +aaa aaa ahw ahW @@ -111583,7 +111991,7 @@ ahw aaa aht akR -aoW +alw aiu amF anu @@ -111818,15 +112226,15 @@ aaa aaa aaa aaa -afv -aae -aae -aae -aae aaa aaa aaa -aho +aaa +aaa +aaa +aaa +aaa +ahk aho ahX aho @@ -111836,8 +112244,8 @@ ahl ahl aho ahZ -aho -aho +ajV +akl aht akS alx @@ -112080,10 +112488,10 @@ aaa aaa aaa aaa +ahk aho aho -aho -aho +ahx ahJ ahq aik @@ -112105,7 +112513,7 @@ aog aoQ ahv aqv -akR +arH ahM atI avr @@ -112340,7 +112748,7 @@ aaa ahl ahp ahp -aho +ahy ahq ahY ahq @@ -112449,7 +112857,7 @@ ava cns cLq cns -cOr +amd aae aaa aaa @@ -112623,16 +113031,16 @@ arJ ajU atK avt -ahM +ajU ayd -ahM +ajU aAP aCo aDO aFe aGi aHQ -aes +aJw aLi aMq aNz @@ -112646,7 +113054,7 @@ ajU ajU aJw ajU -ajU +beS bgx cQS biS @@ -112702,7 +113110,7 @@ cIf cIK cJw cKf -cLx +amd cKP cLr cKP @@ -112854,7 +113262,7 @@ aaa ahl ahr ahr -aho +ahy ahq ahY ahq @@ -112963,7 +113371,7 @@ auW cns cLs cns -axN +amd aae aaa aaa @@ -113108,10 +113516,10 @@ aaa aaa aaa aaa +ahm aho aho -aho -aho +ahx ahK ahq ail @@ -113360,15 +113768,15 @@ aaa aaa aaa aaa -afv -aae -aae -aae -aae aaa aaa aaa -aho +aaa +aaa +aaa +aaa +aaa +ahm aho ahZ aho @@ -113378,8 +113786,8 @@ ahl ahl aho ahZ -aho -aho +ajX +akp aht akU alA @@ -113620,11 +114028,11 @@ aaa aaa aaa aaa -ahv -ahv -ahv -ahv -aae +aaa +aaa +aaa +aaa +aaa aaa ahw ahW @@ -113872,15 +114280,15 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -ahE -ahE -ahE -adx -ahv +afv +aae +aae +aae +aae +aae +aae +aae +aae aht aht ahw @@ -114132,13 +114540,13 @@ aaa aaa aaa aaa -agY -ahQ -ahf -ahx -ahS -ahU -aiv +aaa +aaa +aaa +aab +aaa +aae +aae ahv ahw ahW @@ -114379,24 +114787,24 @@ aaa aaa aaa aaa +aes +afp +afV +afB +afB +afB +afB +afB +afB +afB +afV +afp +agZ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -ahE -ahE -ahE -adx -ahv -ahG -ahU +ahw ahL ahL ahL @@ -114635,28 +115043,28 @@ aaa aaa aaa aaa +aes +afk +aeD +aeF +aeF +aeF +afU +agH +agV +aeF +aeF +ahb +afl +afk +ahh +agZ aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -ahv -ahv -ahv -ahv -aim -aih +ahw ahM aia -ahM +aim ahM ahM aiS @@ -114758,7 +115166,7 @@ cIh csr csq ccC -chZ +cKv ccC aaa aaa @@ -114891,29 +115299,29 @@ aaa aaa aaa aaa -aaa -aaa +aes +afk +aeD +aeF +aeF +aeF +aeF +afU +agI +afU +aeF +aeF +ahc +aeG aet -aet -aet -afB -afB -afB -afB -afB -afB -afB -aet -aet -aet -aaa +ahi +afA +agZ aaa ahv ahv ahv ahv -ahv -ahw aiu aiu ahv @@ -115147,39 +115555,39 @@ aaa aaa aaa aaa -aaa -aaa -aet -aet -aeD +aes +aeR +aeJ +aeG +afT aeF aeF aeF -afU -agH -agV +aeF +agJ aeF aeF -ahb -aeD -aet -ahh -aet -aaa -aaa -aaa -aae -ahv +aeF +ahc +aeG +afA +afW +aeR +aeR +agZ +ahw +ahN +ahw ain ahM -ahM +aiC ahv aji aju ajK ahw aji -ahv +aht akW alF ama @@ -115404,29 +115812,29 @@ aaa aaa aaa aaa -aaa aet -aet -aeD -aeF -aeF -aeF -aeF -afU -agI -afU -aeF -aeF -ahc aeG -aet -ahi -aet -aet -aaa -aae -aae -ahv +afl +aeI +aeF +aeF +aeF +aeF +aeF +aeF +agJ +aeF +aeF +aeF +agg +aeJ +aeF +ahn +aeF +afC +ahB +ahO +ahB ain ahM ahM @@ -115443,7 +115851,7 @@ amb amS anH aol -akZ +apb apO aqI arQ @@ -115500,7 +115908,7 @@ bJG bVn bWF bXN -bFB +bZm caE ccn cet @@ -115660,33 +116068,33 @@ aaa aaa aaa aaa -aaa +aes +aeD +aeF +aeF aet -aet -aet -aeG -afT +afU +afU +afU +aeF +aeF +agK aeF aeF aeF -aeF -agJ +agg +afk +aeD aeF aeF aeF -ahc -aeG -aet -afW -aet -aet aet ahw -ahN +ahw ahw ain ahM -aiC +aiD aht aaa ahw @@ -115694,7 +116102,7 @@ ajK ahw aaa aht -akX +akY alc alc alc @@ -115917,41 +116325,41 @@ aaa aaa aaa aaa -aaa aet -aeG -aeD +aeE +aeF +aeF +afA +afV +afV +afV +afV +afB +agL +afB +afV +afp +afk aeD aeF aeF aeF aeF -aeF -aeF -agJ -aeF -aeF -aeF -aeD aet -aeF -ahn -aeF -afC -ahB -ahO -ahB +aae +ahw +aib ain ahM -ahM -aht -ajk +aiE +ahw +ajj ajl ajL ajl -ajk -aht -akX +akr +ahw +akZ alc amc amc @@ -116014,7 +116422,7 @@ bMQ bJG bWH bXN -bHJ +bZo caH ccp cev @@ -116175,40 +116583,40 @@ aaa aaa aaa aet -aeD -aeF -aeF -aet -afU -afU -afU -aeF -aeF -agK -aeF -aeF -aeF -aeD -aet -aeD -aeF +aeF +aeF +aeF +afB +aeF +aeF +aeF +aeF +aeF +aeF +agJ +aeF +afl +aeJ +aeF +aeF +aeF aeF aeF aet +aaa ahw -ahw -ahw +aic ain ahM -aiD -aht +aiE +ahw ajk ajv ajM ajY ajk -aht -akY +ahw +akZ alH amd amT @@ -116432,29 +116840,29 @@ aaa aaa aaa aet -aeE aeF aeF -aet -aet -aet -aet -aet +afm afB -agL -afB -aet -aet -aet -aeD aeF aeF aeF aeF +aeF +aeF +aeF +aeF +aeF +afC +aeF +aeF +aeF +aeF +ahs aet -aae +aaa ahw -aib +aic ain ahM aiE @@ -116465,7 +116873,7 @@ ajM ajY ajk ahw -akZ +ala alc ame amd @@ -116511,7 +116919,7 @@ bhG bpb brp btz -bxA +bvt bxx bzH bBh @@ -116554,13 +116962,13 @@ aOe cFW aaa aaa -cIQ -cIQ -cIQ -cIQ -cIQ -cIQ -cIQ +cIP +cJy +cJy +cJy +cJy +cJy +cLL aaa aaa aaa @@ -116689,29 +117097,29 @@ aaa aaa aaa aet +aeG aeF -aeF -aeF +afn afB aeF aeF -aeF -aeF -aeF -aeF -agJ -aeF -aeD -aet -aeF -aeF -aeF -aeF +agg +afV +afV +afV +afV +aeI aeF aet -aaa +aeF +aeF +aeF +aeF +ahd +aet +aae ahw -aic +aib ain ahM aiE @@ -116946,40 +117354,40 @@ aaa aaa aaa aet +aeH aeF aeF -afm -afB -aeF -aeF -aeF -aeF +aet aeF aeF +aet +agp aeF aeF aeF afC -aeF -aeF -aeF -aeF -ahs +agJ +aet +ahd +aeF +aeF +aeF +aeF aet -aaa ahw -aic +ahw +ahw ain ahM -aiE -ahw +aiF +aht ajk ajv ajM ajY ajk -ahw -ala +aht +akZ akZ amf alc @@ -117025,7 +117433,7 @@ bhG bpd brr btz -bxA +bvv bxz bzJ bBj @@ -117202,41 +117610,41 @@ aaa aaa aaa aaa -aet -aeG +aeu +aeI aeF -afn -afB -aeF -aeF -aeD -aet -aet -aet -aet -aeD aeF aet aeF aeF -aeF -aeF -ahd aet -aae -ahw -aib +agq +agw +aeF +agW +aet +aeF +afA +aeI +ahg +ahg +aeF +aeF +ahu +ahC +ahO +ahC ain ahM -aiE -ahw +ahM +aht ajk ajv ajM ajY ajk -ahw -akZ +aht +alb alI akZ akZ @@ -117459,33 +117867,33 @@ aaa aaa aaa aaa +aaa aet -aeH -aeF -aeF -aet -aeF -aeF -aet -agp +aeS aeF +afC aeF aeF afC -agJ +aeF +aeF +aeF +agX aet -ahd aeF -aeF -aeF -aeF -aet -ahw +afl +aeR +afV +afV +afp +afp +agY ahw +ahN ahw ain ahM -aiF +ahM aht ajk ajv @@ -117716,33 +118124,33 @@ aaa aaa aaa aaa +aaa +aeu +aeI +afo aet +aeF +aeF +afl +afV +afV +afV +afV aeD +agJ aeF aeF -aet aeF aeF -aet -agq -agw -aeF -agW -aet -aeF -aet -aeD -ahg -ahg -aeF -aeF -ahu -ahC -ahO -ahC -ain -ahM -ahM +afA +agY +aaa +aaa +aae +aht +ahw +ahw +ahw aht ajm ajv @@ -117974,33 +118382,33 @@ aaa aaa aaa aaa -aet -aeS -aeF -afC -aeF -aeF -afC +aaa +aeu +afp +aeJ aeF aeF aeF -agX -aet aeF -aeD -aet -aet -aet -aet -aet -aet -ahw -ahN -ahw -ain -ahM -ahM -aht +aeF +agJ +aeF +aeF +aeF +aeF +ahe +aeF +agg +agY +aaa +aaa +aaa +aaa +aaa +aae +aae +aaa +aae ajk ajw ajM @@ -118231,33 +118639,33 @@ aaa aaa aaa aaa -aet -aeD -afo -aet +aaa +aaa +aeu +aeJ +aeF +aeF +aeF +aeF +aeF aeF aeF -aeD -aet -aet -aet -aet -aeD agJ aeF aeF aeF -aeF -aet -aet +agg +agY +aaa +aaa +aaa +aaa +aaa +aaa aaa aae aae -aht -ahw -ahw -ahw -aht +aae ajk ajx ajM @@ -118489,28 +118897,28 @@ aaa aaa aaa aaa -aet -aet -aet -aeF -aeF -aeF -aeF -aeF -agJ -aeF -aeF -aeF -aeF -ahe -aeF -aeD -aet +aaa +aes +aeR +afW +afp +afV +afV +afB +agL +afB +afV +afV +afp +afW +aeR +agZ aaa aaa aaa -aae -aka +aaa +aaa +aab aaa aaa aae @@ -118518,8 +118926,8 @@ aae ajn ajy ajM -ajy -ajn +aka +akb aht ale akZ @@ -118746,23 +119154,23 @@ aaa aaa aaa aaa -aaa +aes +aeT +afq +afq aet +agh +aeF +aeF +aeF +aeF +aeF +aha aet -aeF -aeF -aeF -aeF -aeF -aeF -aeF -agJ -aeF -aeF -aeF -aeD -aet -aaa +afq +afq +ahj +agZ aaa aaa aaa @@ -118775,7 +119183,7 @@ aae aaa ajn ajN -ajn +akb aaa aht alf @@ -118867,13 +119275,13 @@ cFV cFW aaa aaa -cIQ -cIQ +cIV +cJB cJz cJz cJz -cIQ -cIQ +cLx +cLM aaa aaa aaa @@ -119002,25 +119410,25 @@ aaa aaa aaa aaa -aaa -aaa -aet -aet -afW -aet -aet -aet -afB -agL -afB -aet -aet -aet -afW -aet -aet -aaa -aaa +aes +aeT +afq +afq +afX +afk +aeI +aeF +agx +agM +agJ +aeF +agg +afk +ahf +afq +afq +ahj +agZ aaa aaa aaa @@ -119124,13 +119532,13 @@ byO cFW aaa aaa -cIQ -cIQ +cIW +cJC cKj cKj cKj -cIQ -cIQ +cJC +cLN aaa aaa aaa @@ -119258,27 +119666,27 @@ aaa aaa aaa aaa -aaa -aaa +aes +aeJ +aeU +aeU +aeU aet -aeT -afq -afq +aeu +aeJ +aeF +aeF +agN +aeF +aeF +afA +agY aet -agh -aeF -aeF -aeF -aeF -aeF -aha -aet -afq -afq -aeT -aet -aaa -aaa +aeU +aeU +aeU +afA +agZ aaa aaa aaa @@ -119515,27 +119923,27 @@ aaa aaa aaa aaa +aeu +aeK +aeK +aeK +aeK +aeK aaa -aet -aeT -afq -afq -aeT -aet -aeD +afA +aeI aeF -agx -agM -agJ +agO aeF -aeD -aet -aeT -afq -afq -aeT -aet +agg +aeJ aaa +aeK +aeK +aeK +aeK +aeK +agY aaa aaa aaa @@ -119589,7 +119997,7 @@ bfb bgG bhJ bjg -aeI +bkp blB bnd bpf @@ -119772,27 +120180,27 @@ aaa aaa aaa aaa -aet -aet -aeU -aeU -aeU -aet -aet -aet -aeF -aeF -agN -aeF -aeF -aet -aet -aet -aeU -aeU -aeU -aet -aet +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aeu +afk +aeI +agP +agg +afk +agY +aaa +aaa +aaa +aaa +aaa +aaa +aaa aaa aaa aaa @@ -119846,7 +120254,7 @@ bfc bgH bhK bjh -aeJ +bkq blM bnd bpf @@ -120029,27 +120437,27 @@ aaa aaa aaa aaa -aet -aeK -aeK -aeK -aeK -aeK aaa -aet -aeD -aeF -agO -aeF -aeD -aet aaa -aeK -aeK -aeK -aeK -aeK -aet +aaa +aaa +aaa +aaa +aaa +aaa +aeu +afk +agQ +afk +agY +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa aaa aaa aaa @@ -120103,7 +120511,7 @@ bfd bdH aYP biW -aeR +bkj blN bne bhG @@ -120293,13 +120701,13 @@ aaa aaa aaa aaa +aaa +aaa aet +agO aet -aeD -agP -aeD -aet -aet +aaa +aaa aaa aaa aaa @@ -120551,11 +120959,11 @@ aaa aaa aaa aaa -aet -aet +aes +afk agQ -aet -aet +afk +agZ aaa aaa aaa @@ -120617,7 +121025,7 @@ bff bgJ aYP biW -aeR +bkj blO bng bpg @@ -120808,11 +121216,11 @@ aaa aaa aaa aaa -aaa -aet -agO -aet -aaa +afA +aeD +agP +afl +aeJ aaa aaa aaa @@ -120874,7 +121282,7 @@ bfg bgK aYP biW -afk +bkm blP bnh bph @@ -120890,7 +121298,7 @@ amc ame amc ame -azY +bPa bQR bSB bUq @@ -121066,9 +121474,9 @@ aaa aaa aaa aet -aet -agQ -aet +agy +agP +aeF aet aaa aaa @@ -121131,7 +121539,7 @@ bfg bgL aYP bjd -afl +bkn blQ bni bpi @@ -121147,9 +121555,9 @@ bDw bzY bzY bzY -bzW -bQS bPb +bQS +bSC bzW bUn bWP @@ -121323,9 +121731,9 @@ aaa aaa aaa aet -aeD -agP -aeD +agx +agR +aeF aet aaa aaa @@ -121580,9 +121988,9 @@ aaa aaa aaa aet -agy -agP aeF +aeF +agx aet aaa aaa @@ -121661,8 +122069,8 @@ bHZ bJL bzY bNe -bPf -bQW +bPd +bQU bSE bzW aaa @@ -121837,8 +122245,8 @@ aaa aaa aaa aet -agx -agR +aeF +aeF aeF aet aaa @@ -122096,7 +122504,7 @@ aaa aet aeF aeF -agx +aeF aet aaa aaa @@ -122159,7 +122567,7 @@ bfj bgO bhL bji -afp +bkq blM bnf bpl @@ -122192,13 +122600,13 @@ cjL clz ccC aaa -cqI -cqI +cqH +csk cqJ cvw cqJ -cqI -cqI +csk +czz aaa aaa afv @@ -122352,7 +122760,7 @@ aaa aaa aet aeF -aeF +agx aeF aet aaa @@ -122416,7 +122824,7 @@ bfk bgP bhM bjj -afA +bkl blR bnf bpm @@ -122666,7 +123074,7 @@ azZ azX azX azX -aRh +aRg bcp bdM bfl @@ -122864,11 +123272,11 @@ aaa aaa aaa aaa -aet +afA +aeI aeF -agx -aeF -aet +agg +aeJ aaa aaa aaa @@ -123121,11 +123529,11 @@ aaa aaa aaa aaa -aet -aeF -aeF -aeF -aet +aeu +aeR +afC +aeR +agY aaa aaa aaa @@ -123220,13 +123628,13 @@ cjO clB ccC aaa -cqI -cqI +cqK +csk cqJ cvx cqJ -cqI -cqI +csk +czB aaa aaa aaa @@ -123378,11 +123786,11 @@ aaa aaa aaa aaa -aet -aeD -aeF -aeD -aet +aaa +aaa +aaa +aaa +aaa aaa aaa aaa @@ -123635,11 +124043,11 @@ aaa aaa aaa aaa -aet -aet -afC -aet -aet +aaa +aaa +aaa +aaa +aaa aaa aaa aaa @@ -124973,7 +125381,7 @@ aae aae azZ arV -aRh +aRg aSw aTC aVu @@ -128046,7 +128454,7 @@ aaa aaa aaa azY -aBm +aBr azY azY azY @@ -129344,7 +129752,7 @@ aCS aPB aRn aRn -aRn +aTP aRn aRn aZj @@ -130148,7 +130556,7 @@ bwf bwf bVy bWR -bVy +bYh bwf aae aaa @@ -130917,9 +131325,9 @@ bwf bwf bTf bwf -bVz +bVA bWU -bVz +bYi aaa aaa aaa diff --git a/_maps/map_files/MetaStation/MetaStation.dmm b/_maps/map_files/MetaStation/MetaStation.dmm index 1d010a3fec..bb988a8430 100644 --- a/_maps/map_files/MetaStation/MetaStation.dmm +++ b/_maps/map_files/MetaStation/MetaStation.dmm @@ -26,13 +26,13 @@ /obj/machinery/porta_turret/syndicate{ dir = 9 }, -/turf/closed/wall/mineral/plastitanium{ +/turf/closed/wall/shuttle{ dir = 8; icon_state = "diagonalWall3" }, /area/shuttle/syndicate) "aae" = ( -/turf/closed/wall/mineral/plastitanium, +/turf/closed/indestructible/opshuttle, /area/shuttle/syndicate) "aaf" = ( /obj/structure/lattice, @@ -351,7 +351,10 @@ /turf/open/floor/plating, /area/security/prison) "aaM" = ( -/turf/closed/wall/mineral/titanium/overspace, +/turf/closed/wall/shuttle{ + icon_state = "swall_s6"; + dir = 2 + }, /area/shuttle/pod_2) "aaN" = ( /obj/structure/grille, @@ -411,27 +414,30 @@ /area/security/prison) "aaW" = ( /turf/open/space, -/turf/closed/wall/mineral/plastitanium{ +/turf/closed/wall/shuttle{ dir = 8; icon_state = "diagonalWall3" }, /area/space) "aaX" = ( -/turf/closed/wall/mineral/titanium, +/turf/closed/wall/shuttle{ + icon_state = "swall3"; + dir = 2 + }, /area/shuttle/pod_2) "aaY" = ( /turf/open/space, /obj/machinery/porta_turret/syndicate{ dir = 5 }, -/turf/closed/wall/mineral/plastitanium{ +/turf/closed/wall/shuttle{ dir = 1; icon_state = "diagonalWall3" }, /area/shuttle/syndicate) "aaZ" = ( /turf/open/space, -/turf/closed/wall/mineral/plastitanium{ +/turf/closed/wall/shuttle{ dir = 1; icon_state = "diagonalWall3" }, @@ -481,7 +487,7 @@ /area/security/prison) "abf" = ( /obj/structure/reagent_dispensers/fueltank, -/turf/open/floor/mineral/plastitanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "abg" = ( /turf/closed/wall, @@ -641,19 +647,22 @@ }, /area/security/prison) "abv" = ( +/turf/open/floor/plating, /obj/structure/shuttle/engine/propulsion/burst, -/turf/closed/wall/mineral/titanium, +/turf/closed/wall/shuttle{ + icon_state = "swall_f5"; + dir = 2 + }, /area/shuttle/pod_2) "abw" = ( -/obj/machinery/door/airlock/titanium{ +/obj/machinery/door/airlock/shuttle{ name = "Escape Pod Airlock" }, /obj/docking_port/mobile/pod{ id = "pod2"; - name = "escape pod 2"; - port_angle = 180 + name = "escape pod 2" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/pod_2) "abx" = ( /turf/open/floor/plating, @@ -1150,7 +1159,7 @@ /turf/open/floor/plasteel/floorgrime, /area/security/prison) "acx" = ( -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /obj/structure/cable/yellow{ d1 = 4; d2 = 8; @@ -1703,16 +1712,26 @@ name = "\improper Recreation Area" }) "adn" = ( +/turf/open/floor/plating, /obj/structure/shuttle/engine/propulsion/burst{ dir = 4 }, -/turf/closed/wall/mineral/titanium, +/turf/closed/wall/shuttle{ + icon_state = "swall_f6"; + dir = 2 + }, /area/shuttle/pod_3) "ado" = ( -/turf/closed/wall/mineral/titanium, +/turf/closed/wall/shuttle{ + icon_state = "swall12"; + dir = 2 + }, /area/shuttle/pod_3) "adp" = ( -/turf/closed/wall/mineral/titanium/overspace, +/turf/closed/wall/shuttle{ + icon_state = "swall_s10"; + dir = 2 + }, /area/shuttle/pod_3) "adq" = ( /obj/structure/table, @@ -1920,17 +1939,15 @@ name = "\improper Recreation Area" }) "adJ" = ( -/obj/machinery/door/airlock/titanium{ +/obj/machinery/door/airlock/shuttle{ name = "Escape Pod Airlock" }, /obj/docking_port/mobile/pod{ dir = 4; id = "pod3"; - name = "escape pod 3"; - port_angle = 180; - preferred_direction = 4 + name = "escape pod 3" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/pod_3) "adK" = ( /obj/docking_port/stationary/random{ @@ -1954,7 +1971,7 @@ possible_destinations = "pod_asteroid2"; shuttleId = "pod2" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/pod_2) "adM" = ( /obj/structure/grille, @@ -2370,11 +2387,10 @@ /obj/item/weapon/gun/energy/ionrifle{ pin = /obj/item/device/firing_pin }, +/obj/item/clothing/suit/armor/laserproof, /obj/machinery/light{ dir = 1 }, -/obj/item/weapon/gun/energy/temperature/security, -/obj/item/clothing/suit/armor/laserproof, /turf/open/floor/plasteel/vault{ dir = 4 }, @@ -2389,7 +2405,7 @@ name = "3maintenance loot spawner" }, /obj/effect/spawner/lootdrop/armory_contraband{ - loot = list(/obj/item/weapon/gun/ballistic/automatic/pistol = 5, /obj/item/weapon/gun/ballistic/shotgun/automatic/combat = 5, /obj/item/weapon/gun/ballistic/revolver/mateba, /obj/item/weapon/gun/ballistic/automatic/pistol/deagle, /obj/item/weapon/storage/box/syndie_kit/throwing_weapons = 3) + loot = list(/obj/item/weapon/gun/projectile/automatic/pistol = 5, /obj/item/weapon/gun/projectile/shotgun/automatic/combat = 5, /obj/item/weapon/gun/projectile/revolver/mateba, /obj/item/weapon/gun/projectile/automatic/pistol/deagle, /obj/item/weapon/storage/box/syndie_kit/throwing_weapons = 3) }, /turf/open/floor/plasteel/vault{ dir = 4 @@ -3471,12 +3487,12 @@ /area/ai_monitored/security/armory) "agh" = ( /obj/structure/rack, -/obj/item/weapon/gun/energy/e_gun/advtaser{ +/obj/item/weapon/gun/energy/gun/advtaser{ pixel_x = -3; pixel_y = 3 }, -/obj/item/weapon/gun/energy/e_gun/advtaser, -/obj/item/weapon/gun/energy/e_gun/advtaser{ +/obj/item/weapon/gun/energy/gun/advtaser, +/obj/item/weapon/gun/energy/gun/advtaser{ pixel_x = 3; pixel_y = -3 }, @@ -3923,13 +3939,13 @@ pixel_y = 0 }, /obj/structure/rack, -/obj/item/weapon/storage/fancy/donut_box, +/obj/item/weapon/storage/fancy, /turf/open/floor/plasteel/vault{ dir = 1 }, /area/ai_monitored/security/armory) "agY" = ( -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /turf/open/floor/plasteel/vault{ dir = 8 }, @@ -3943,23 +3959,23 @@ /obj/item/weapon/storage/box/rubbershot, /obj/item/weapon/storage/box/rubbershot, /obj/item/weapon/storage/box/rubbershot, -/obj/item/weapon/gun/ballistic/shotgun/riot{ +/obj/item/weapon/gun/projectile/shotgun/riot{ pixel_x = -3; pixel_y = 3 }, -/obj/item/weapon/gun/ballistic/shotgun/riot, +/obj/item/weapon/gun/projectile/shotgun/riot, /turf/open/floor/plasteel/vault{ dir = 1 }, /area/ai_monitored/security/armory) "aha" = ( /obj/structure/rack, -/obj/item/weapon/gun/energy/e_gun{ +/obj/item/weapon/gun/energy/gun{ pixel_x = -3; pixel_y = 3 }, -/obj/item/weapon/gun/energy/e_gun, -/obj/item/weapon/gun/energy/e_gun{ +/obj/item/weapon/gun/energy/gun, +/obj/item/weapon/gun/energy/gun{ pixel_x = 3; pixel_y = -3 }, @@ -3995,7 +4011,7 @@ /turf/open/floor/carpet, /area/security/hos) "ahf" = ( -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /obj/structure/chair{ dir = 1 }, @@ -4485,7 +4501,7 @@ /area/ai_monitored/security/armory) "ahW" = ( /obj/item/clothing/head/festive, -/obj/effect/decal/cleanable/cobweb/cobweb2, +/obj/effect/decal/cleanable/cobweb2, /turf/open/floor/plating, /area/maintenance/fore) "ahX" = ( @@ -4504,7 +4520,7 @@ /turf/open/floor/plating, /area/maintenance/fore) "aia" = ( -/obj/effect/decal/cleanable/cobweb/cobweb2, +/obj/effect/decal/cleanable/cobweb2, /obj/structure/table, /obj/item/weapon/stock_parts/manipulator, /obj/effect/spawner/lootdrop/maintenance, @@ -5211,7 +5227,7 @@ }) "ajq" = ( /obj/item/stack/sheet/cardboard, -/obj/structure/light_construct/small{ +/obj/machinery/light_construct/small{ dir = 1 }, /obj/structure/closet/crate, @@ -5617,7 +5633,7 @@ }) "akc" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /turf/open/floor/plasteel, /area/crew_quarters/fitness{ name = "\improper Recreation Area" @@ -5858,12 +5874,12 @@ dir = 8; layer = 2.9 }, -/obj/item/clothing/neck/tie/red{ +/obj/item/clothing/tie/red{ pixel_x = -5; pixel_y = 3 }, -/obj/item/clothing/neck/tie/horrible, -/obj/item/clothing/neck/tie/blue{ +/obj/item/clothing/tie/horrible, +/obj/item/clothing/tie/blue{ pixel_x = 5; pixel_y = -2 }, @@ -6662,7 +6678,7 @@ name = "Port Maintenance" }) "alP" = ( -/obj/structure/light_construct/small{ +/obj/machinery/light_construct/small{ dir = 4 }, /obj/structure/rack{ @@ -7331,9 +7347,8 @@ dir = 8 }, /obj/machinery/conveyor{ - dir = 9; - id = "garbage"; - verted = -1 + dir = 2; + id = "garbage" }, /turf/open/floor/plating, /area/maintenance/disposal) @@ -7346,7 +7361,7 @@ /area/maintenance/disposal) "amW" = ( /obj/machinery/conveyor{ - dir = 6; + dir = 4; id = "garbage" }, /obj/machinery/door/window/eastright{ @@ -7403,7 +7418,7 @@ }) "anb" = ( /obj/structure/table/reinforced, -/obj/structure/light_construct/small{ +/obj/machinery/light_construct/small{ dir = 8 }, /obj/item/weapon/paper_bin{ @@ -7951,7 +7966,7 @@ req_access_txt = "12" }, /obj/machinery/conveyor{ - dir = 10; + dir = 2; id = "garbage" }, /turf/open/floor/plating, @@ -8280,7 +8295,7 @@ pixel_x = 28 }, /obj/structure/closet/secure_closet/warden, -/obj/item/weapon/gun/ballistic/automatic/wt550, +/obj/item/weapon/gun/projectile/automatic/wt550, /turf/open/floor/plasteel/showroomfloor, /area/security/warden) "aoH" = ( @@ -8320,7 +8335,7 @@ /turf/open/floor/plasteel/red, /area/security/main) "aoM" = ( -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /obj/structure/disposalpipe/segment{ dir = 4; icon_state = "pipe-c" @@ -8660,7 +8675,7 @@ /area/maintenance/starboard) "apo" = ( /obj/structure/closet, -/obj/effect/decal/cleanable/cobweb/cobweb2, +/obj/effect/decal/cleanable/cobweb2, /obj/item/weapon/reagent_containers/food/drinks/beer{ desc = "Takes you to a whole new level of thinking."; name = "Meta-Cider" @@ -8760,7 +8775,7 @@ pixel_x = 32; pixel_y = 0 }, -/obj/effect/decal/cleanable/cobweb/cobweb2, +/obj/effect/decal/cleanable/cobweb2, /turf/open/floor/plating, /area/maintenance/auxsolarstarboard) "apy" = ( @@ -8859,7 +8874,7 @@ /turf/open/floor/plasteel/black, /area/storage/tech) "apG" = ( -/obj/structure/light_construct/small{ +/obj/machinery/light_construct/small{ dir = 4 }, /obj/structure/chair{ @@ -9051,7 +9066,7 @@ /obj/structure/rack, /obj/item/clothing/under/color/blue, /obj/item/clothing/ears/earmuffs, -/obj/item/clothing/neck/tie/blue, +/obj/item/clothing/tie/blue, /obj/item/clothing/head/soft/blue, /obj/structure/sign/poster{ pixel_y = -32 @@ -9128,6 +9143,9 @@ /turf/open/floor/plasteel, /area/security/main) "aqh" = ( +/obj/effect/landmark/start{ + name = "Security Officer" + }, /obj/structure/extinguisher_cabinet{ pixel_x = 27; pixel_y = 0 @@ -9164,7 +9182,7 @@ /obj/structure/rack, /obj/item/clothing/under/color/red, /obj/item/clothing/ears/earmuffs, -/obj/item/clothing/neck/tie/red, +/obj/item/clothing/tie/red, /obj/item/clothing/head/soft/red, /turf/open/floor/plasteel/vault, /area/crew_quarters/fitness{ @@ -9539,7 +9557,7 @@ }) "aqT" = ( /obj/structure/rack, -/obj/effect/decal/cleanable/cobweb/cobweb2, +/obj/effect/decal/cleanable/cobweb2, /obj/item/weapon/storage/toolbox/emergency, /obj/effect/spawner/lootdrop/maintenance, /turf/open/floor/plating, @@ -9575,7 +9593,7 @@ name = "Port Maintenance" }) "aqX" = ( -/obj/structure/light_construct/small, +/obj/machinery/light_construct/small, /obj/item/weapon/toolbox_tiles_sensor, /turf/open/floor/plating, /area/maintenance/fpmaint2{ @@ -9792,7 +9810,7 @@ /turf/open/floor/plasteel/showroomfloor, /area/security/warden) "arq" = ( -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/structure/cable/yellow{ d1 = 1; @@ -9846,9 +9864,6 @@ d2 = 8; icon_state = "4-8" }, -/obj/effect/landmark/start{ - name = "Security Officer" - }, /turf/open/floor/plasteel/red/side, /area/security/main) "arw" = ( @@ -9864,9 +9879,6 @@ d2 = 8; icon_state = "2-8" }, -/obj/effect/landmark/start{ - name = "Security Officer" - }, /turf/open/floor/plasteel/red/side, /area/security/main) "arx" = ( @@ -9994,7 +10006,12 @@ /area/crew_quarters/sleep) "arM" = ( /obj/structure/grille, -/obj/structure/window/reinforced/tinted/fulltile, +/obj/structure/window/reinforced/tinted{ + dir = 5; + health = 120; + icon_state = "twindow"; + reinf = 0 + }, /obj/structure/cable/yellow{ d1 = 1; d2 = 2; @@ -10124,7 +10141,7 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 9 }, -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /turf/open/floor/plasteel/warning{ dir = 2 }, @@ -10960,7 +10977,7 @@ req_access_txt = "0"; specialfunctions = 4 }, -/obj/effect/decal/cleanable/cobweb/cobweb2, +/obj/effect/decal/cleanable/cobweb2, /obj/machinery/atmospherics/components/unary/vent_pump{ dir = 4; on = 1 @@ -11438,7 +11455,11 @@ }, /area/maintenance/fore) "atT" = ( -/turf/closed/wall/mineral/titanium/overspace, +/turf/open/space, +/turf/closed/wall/shuttle{ + icon_state = "swall_f6"; + dir = 2 + }, /area/shuttle/labor) "atU" = ( /obj/structure/grille, @@ -11593,7 +11614,12 @@ /area/security/main) "aul" = ( /obj/structure/grille, -/obj/structure/window/reinforced/tinted/fulltile, +/obj/structure/window/reinforced/tinted{ + dir = 5; + health = 120; + icon_state = "twindow"; + reinf = 0 + }, /turf/open/floor/plating, /area/security/main) "aum" = ( @@ -11840,7 +11866,7 @@ "auK" = ( /obj/item/stack/sheet/cardboard, /obj/item/device/flashlight, -/obj/effect/decal/cleanable/cobweb/cobweb2, +/obj/effect/decal/cleanable/cobweb2, /obj/effect/spawner/lootdrop/maintenance, /turf/open/floor/plating, /area/maintenance/starboard) @@ -11947,10 +11973,15 @@ }) "auV" = ( /obj/structure/grille, +/obj/structure/window/reinforced/tinted{ + dir = 5; + health = 120; + icon_state = "twindow"; + reinf = 0 + }, /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/window/reinforced/tinted/fulltile, /turf/open/floor/plating, /area/maintenance/fpmaint2{ name = "Port Maintenance" @@ -12023,7 +12054,10 @@ /turf/open/floor/plating, /area/maintenance/fore) "avc" = ( -/turf/closed/wall/mineral/titanium, +/turf/closed/wall/shuttle{ + icon_state = "swall3"; + dir = 2 + }, /area/shuttle/labor) "avd" = ( /obj/machinery/computer/shuttle/labor, @@ -12031,19 +12065,19 @@ pixel_x = -31; pixel_y = 0 }, -/turf/open/floor/mineral/plastitanium/brig, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/labor) "ave" = ( /obj/structure/chair/office/dark{ dir = 1 }, -/turf/open/floor/mineral/plastitanium/brig, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/labor) "avf" = ( /obj/structure/table, /obj/item/weapon/folder/red, /obj/item/weapon/restraints/handcuffs, -/turf/open/floor/mineral/plastitanium/brig, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/labor) "avg" = ( /obj/structure/disposalpipe/segment{ @@ -12692,6 +12726,7 @@ }) "awe" = ( /obj/structure/disposalpipe/segment, +/mob/living/simple_animal/mouse, /turf/open/floor/plating{ icon_state = "platingdmg2" }, @@ -12719,7 +12754,7 @@ /turf/open/floor/plating, /area/shuttle/labor) "awh" = ( -/turf/open/floor/mineral/plastitanium/brig, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/labor) "awi" = ( /obj/machinery/button/flasher{ @@ -12729,7 +12764,7 @@ pixel_y = -26; req_access_txt = "1" }, -/turf/open/floor/mineral/plastitanium/brig, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/labor) "awj" = ( /obj/machinery/mineral/labor_claim_console{ @@ -12737,14 +12772,14 @@ pixel_x = 30; pixel_y = 30 }, -/turf/open/floor/mineral/plastitanium/brig, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/labor) "awk" = ( -/obj/machinery/door/airlock/titanium{ +/obj/machinery/door/airlock/shuttle{ name = "Labor Shuttle Airlock"; req_access_txt = "2" }, -/turf/open/floor/mineral/plastitanium/brig, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/labor) "awl" = ( /obj/machinery/door/airlock/external{ @@ -13236,10 +13271,17 @@ name = "Port Maintenance" }) "axa" = ( -/turf/closed/wall/mineral/titanium/overspace, +/turf/open/space, +/turf/closed/wall/shuttle{ + icon_state = "swall_f6"; + dir = 2 + }, /area/shuttle/mining) "axb" = ( -/turf/closed/wall/mineral/titanium, +/turf/closed/wall/shuttle{ + icon_state = "swall12"; + dir = 2 + }, /area/shuttle/mining) "axc" = ( /obj/structure/grille, @@ -13331,7 +13373,7 @@ /turf/closed/wall/r_wall, /area/security/nuke_storage) "axm" = ( -/obj/machinery/door/airlock/titanium{ +/obj/machinery/door/airlock/shuttle{ name = "Labor Shuttle Airlock"; req_access_txt = "2" }, @@ -13850,7 +13892,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /turf/open/floor/plasteel/red/corner{ dir = 4 }, @@ -14009,11 +14051,11 @@ /area/shuttle/mining) "ayx" = ( /obj/structure/table, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/mining) "ayy" = ( /obj/machinery/computer/shuttle/mining, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/mining) "ayz" = ( /obj/structure/grille, @@ -14073,7 +14115,11 @@ /turf/open/floor/plating, /area/maintenance/fore) "ayF" = ( -/obj/machinery/computer/bank_machine, +/obj/structure/closet/secure_closet/freezer/money, +/obj/item/weapon/reagent_containers/food/drinks/bottle/vodka/badminka, +/obj/item/weapon/reagent_containers/food/drinks/drinkingglass/shotglass, +/obj/item/weapon/reagent_containers/food/drinks/drinkingglass/shotglass, +/obj/item/clothing/head/bearpelt, /turf/open/floor/plasteel/vault{ dir = 8 }, @@ -14120,7 +14166,7 @@ }, /area/security/nuke_storage) "ayK" = ( -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/labor) "ayL" = ( /obj/machinery/mineral/labor_claim_console{ @@ -14128,7 +14174,7 @@ pixel_x = 30; pixel_y = 0 }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/labor) "ayM" = ( /turf/closed/wall, @@ -14574,7 +14620,7 @@ /obj/item/weapon/twohanded/required/kirbyplants{ icon_state = "plant-22" }, -/obj/effect/decal/cleanable/cobweb/cobweb2, +/obj/effect/decal/cleanable/cobweb2, /turf/open/floor/wood, /area/library) "azw" = ( @@ -14586,13 +14632,13 @@ /turf/open/floor/plating/airless, /area/space) "azy" = ( -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/mining) "azz" = ( /obj/structure/chair{ dir = 1 }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/mining) "azA" = ( /obj/item/weapon/ore/iron, @@ -14806,7 +14852,9 @@ }, /area/security/nuke_storage) "azO" = ( -/obj/machinery/nuclearbomb/selfdestruct, +/obj/machinery/nuclearbomb/selfdestruct{ + layer = 2 + }, /turf/open/floor/plasteel/vault{ dir = 8 }, @@ -14837,7 +14885,7 @@ /obj/structure/chair{ dir = 4 }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/labor) "azS" = ( /obj/structure/chair{ @@ -14847,7 +14895,7 @@ id = "gulagshuttleflasher"; pixel_x = 25 }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/labor) "azT" = ( /obj/structure/grille, @@ -14925,7 +14973,7 @@ }, /area/security/brig) "aAa" = ( -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /turf/open/floor/plasteel/red/side{ dir = 1 }, @@ -15200,7 +15248,7 @@ /obj/item/clothing/tie/waistcoat, /obj/item/clothing/suit/toggle/lawyer/black, /obj/item/clothing/under/suit_jacket/red, -/obj/item/clothing/neck/tie/black, +/obj/item/clothing/tie/black, /obj/item/clothing/under/lawyer/blacksuit, /turf/open/floor/plasteel/barber, /area/crew_quarters/sleep) @@ -15477,7 +15525,7 @@ }, /area/library) "aAR" = ( -/obj/machinery/door/airlock/titanium{ +/obj/machinery/door/airlock/shuttle{ name = "Mining Shuttle Airlock"; req_access_txt = "0" }, @@ -15487,7 +15535,7 @@ height = 5; id = "mining"; name = "mining shuttle"; - port_angle = 90; + travelDir = 90; width = 7 }, /obj/docking_port/stationary{ @@ -15726,10 +15774,10 @@ /area/security/nuke_storage) "aBl" = ( /obj/structure/closet/crate, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/labor) "aBm" = ( -/obj/machinery/door/airlock/titanium{ +/obj/machinery/door/airlock/shuttle{ id_tag = "prisonshuttle"; name = "Labor Shuttle Airlock" }, @@ -15739,7 +15787,7 @@ height = 5; id = "laborcamp"; name = "labor camp shuttle"; - port_angle = 90; + travelDir = 90; width = 9 }, /obj/docking_port/stationary{ @@ -15750,7 +15798,7 @@ name = "fore bay 1"; width = 9 }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/labor) "aBn" = ( /obj/machinery/door/airlock/external{ @@ -15903,7 +15951,7 @@ /turf/open/floor/plasteel/grimy, /area/security/detectives_office) "aBC" = ( -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /turf/open/floor/plasteel/grimy, /area/security/detectives_office) "aBD" = ( @@ -16290,7 +16338,7 @@ }) "aCm" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /turf/open/floor/plasteel, /area/quartermaster/miningdock{ name = "\improper Mining Office" @@ -16427,7 +16475,7 @@ "aCy" = ( /obj/structure/safe, /obj/item/weapon/storage/secure/briefcase{ - contents = newlist(/obj/item/clothing/suit/armor/vest,/obj/item/weapon/gun/ballistic/automatic/pistol,/obj/item/weapon/suppressor,/obj/item/weapon/melee/classic_baton/telescopic,/obj/item/clothing/mask/balaclava,/obj/item/bodybag,/obj/item/weapon/soap/nanotrasen) + contents = newlist(/obj/item/clothing/suit/armor/vest,/obj/item/weapon/gun/projectile/automatic/pistol,/obj/item/weapon/suppressor,/obj/item/weapon/melee/classic_baton/telescopic,/obj/item/clothing/mask/balaclava,/obj/item/bodybag,/obj/item/weapon/soap/nanotrasen) }, /obj/item/weapon/storage/backpack/dufflebag{ contents = newlist(/obj/item/clothing/under/lawyer/blacksuit,/obj/item/clothing/tie/waistcoat,/obj/item/clothing/suit/toggle/lawyer/black,/obj/item/clothing/shoes/laceup,/obj/item/clothing/gloves/color/black,/obj/item/clothing/glasses/sunglasses,/obj/item/clothing/head/fedora); @@ -16442,10 +16490,10 @@ registered_name = "Thirteen" }, /obj/item/weapon/lazarus_injector, -/obj/item/weapon/gun/energy/e_gun/advtaser, -/obj/item/weapon/gun/ballistic/revolver/russian, +/obj/item/weapon/gun/energy/gun/advtaser, +/obj/item/weapon/gun/projectile/revolver/russian, /obj/item/ammo_box/a357, -/obj/item/clothing/neck/stethoscope, +/obj/item/clothing/tie/stethoscope, /obj/item/weapon/book{ desc = "An undeniably handy book."; icon_state = "bookknock"; @@ -16732,7 +16780,7 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /turf/open/floor/plasteel, /area/crew_quarters/sleep) "aCX" = ( @@ -16946,13 +16994,12 @@ /turf/open/floor/plating, /area/engine/engineering) "aDr" = ( -/turf/open/floor/plating/warnplate{ - dir = 9 - }, -/area/shuttle/auxillary_base) -"aDs" = ( /turf/closed/wall, -/area/mining_construction) +/area/construction) +"aDs" = ( +/obj/machinery/door/airlock/external, +/turf/open/floor/plating, +/area/construction) "aDt" = ( /obj/structure/closet/crate, /obj/item/weapon/coin/silver, @@ -16971,7 +17018,7 @@ }) "aDv" = ( /obj/structure/closet/crate, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/mining) "aDw" = ( /obj/structure/shuttle/engine/heater, @@ -16988,7 +17035,7 @@ /area/shuttle/mining) "aDx" = ( /obj/structure/ore_box, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/mining) "aDy" = ( /obj/machinery/firealarm{ @@ -17084,7 +17131,7 @@ scrub_N2O = 0; scrub_Toxins = 0 }, -/obj/structure/light_construct/small{ +/obj/machinery/light_construct/small{ dir = 4 }, /turf/open/floor/plasteel/floorgrime, @@ -17833,7 +17880,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 10 }, -/obj/effect/decal/cleanable/cobweb/cobweb2, +/obj/effect/decal/cleanable/cobweb2, /turf/open/floor/plating, /area/maintenance/fpmaint2{ name = "Port Maintenance" @@ -17861,9 +17908,7 @@ }, /area/shuttle/mining) "aET" = ( -/obj/machinery/computer/security/mining{ - network = list("MINE","AuxBase") - }, +/obj/machinery/computer/security/mining, /turf/open/floor/plasteel, /area/quartermaster/miningdock{ name = "\improper Mining Office" @@ -18621,7 +18666,7 @@ }, /obj/item/weapon/folder, /obj/item/weapon/folder, -/obj/effect/decal/cleanable/cobweb/cobweb2, +/obj/effect/decal/cleanable/cobweb2, /turf/open/floor/plasteel/cult{ dir = 2 }, @@ -19589,19 +19634,15 @@ /turf/open/floor/plasteel, /area/construction) "aHE" = ( -/obj/structure/light_construct{ +/obj/machinery/light_construct{ dir = 1 }, /obj/structure/closet/emcloset, /turf/open/floor/plasteel, /area/construction) "aHF" = ( -/obj/machinery/camera{ - c_tag = "Auxillary Mining Base"; - dir = 1 - }, /turf/open/floor/plating, -/area/shuttle/auxillary_base) +/area/construction) "aHG" = ( /turf/open/floor/plating{ icon_state = "panelscorched" @@ -19629,7 +19670,7 @@ /area/construction) "aHJ" = ( /obj/structure/closet/toolcloset, -/obj/structure/light_construct{ +/obj/machinery/light_construct{ dir = 1 }, /turf/open/floor/plasteel, @@ -20209,20 +20250,8 @@ /turf/open/floor/plating/airless, /area/space) "aIO" = ( -/obj/machinery/camera{ - c_tag = "Auxillary Base Construction"; - dir = 1 - }, -/obj/machinery/button/door{ - id = "aux_base_shutters"; - name = "Public Shutters Control"; - pixel_x = 0; - pixel_y = -24; - req_access_txt = "0"; - req_one_access_txt = "32;47;48" - }, -/turf/open/floor/plasteel/yellow/side, -/area/mining_construction) +/turf/open/floor/plasteel, +/area/construction) "aIP" = ( /obj/structure/closet/crate, /obj/effect/spawner/lootdrop/maintenance{ @@ -21314,7 +21343,7 @@ /area/storage/primary) "aKF" = ( /turf/closed/wall/r_wall, -/area/ai_monitored/turret_protected/ai_upload) +/area/turret_protected/ai_upload) "aKG" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ dir = 8; @@ -21517,7 +21546,12 @@ /area/crew_quarters/sleep) "aLa" = ( /obj/structure/grille, -/obj/structure/window/reinforced/tinted/fulltile, +/obj/structure/window/reinforced/tinted{ + dir = 5; + health = 120; + icon_state = "twindow"; + reinf = 0 + }, /obj/structure/disposalpipe/segment, /turf/open/floor/plating, /area/crew_quarters/sleep) @@ -21650,7 +21684,7 @@ }, /area/engine/engineering) "aLo" = ( -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/plasteel, /area/engine/engineering) @@ -21749,7 +21783,7 @@ }, /area/space) "aLA" = ( -/obj/structure/light_construct{ +/obj/machinery/light_construct{ dir = 8 }, /turf/open/floor/plating, @@ -21764,7 +21798,7 @@ }, /area/construction) "aLD" = ( -/obj/structure/light_construct{ +/obj/machinery/light_construct{ dir = 4 }, /obj/machinery/light_switch{ @@ -22064,14 +22098,14 @@ dir = 4 }, /turf/closed/wall/r_wall, -/area/ai_monitored/turret_protected/ai_upload) +/area/turret_protected/ai_upload) "aMh" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, /obj/machinery/porta_turret/ai, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai_upload) +/area/turret_protected/ai_upload) "aMi" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber{ dir = 8; @@ -22085,7 +22119,7 @@ id = "AI" }, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai_upload) +/area/turret_protected/ai_upload) "aMj" = ( /obj/structure/sign/kiddieplaque{ pixel_y = 32 @@ -22101,7 +22135,7 @@ pixel_y = 10 }, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai_upload) +/area/turret_protected/ai_upload) "aMk" = ( /obj/machinery/atmospherics/components/unary/vent_pump{ dir = 4; @@ -22111,20 +22145,20 @@ pixel_y = 23 }, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai_upload) +/area/turret_protected/ai_upload) "aMl" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, /obj/machinery/porta_turret/ai, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai_upload) +/area/turret_protected/ai_upload) "aMm" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, /turf/closed/wall/r_wall, -/area/ai_monitored/turret_protected/ai_upload) +/area/turret_protected/ai_upload) "aMn" = ( /obj/structure/lattice, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -22726,10 +22760,10 @@ id = "AI" }, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai_upload) +/area/turret_protected/ai_upload) "aNB" = ( /turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/ai_upload) +/area/turret_protected/ai_upload) "aNC" = ( /obj/structure/table, /obj/machinery/door/window{ @@ -22751,7 +22785,7 @@ /obj/item/weapon/aiModule/zeroth/oneHuman, /obj/item/weapon/aiModule/reset/purge, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai_upload) +/area/turret_protected/ai_upload) "aND" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/item/device/radio/intercom{ @@ -22789,7 +22823,7 @@ }, /area/crew_quarters/courtroom) "aNH" = ( -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /turf/open/floor/plasteel/bot, /area/crew_quarters/courtroom) "aNI" = ( @@ -22996,7 +23030,12 @@ /area/crew_quarters/locker) "aOa" = ( /obj/structure/grille, -/obj/structure/window/reinforced/tinted/fulltile, +/obj/structure/window/reinforced/tinted{ + dir = 5; + health = 120; + icon_state = "twindow"; + reinf = 0 + }, /turf/open/floor/plating, /area/hallway/secondary/construction{ name = "\improper Garden" @@ -23223,7 +23262,10 @@ /turf/open/space, /area/space) "aOy" = ( -/turf/closed/wall/mineral/titanium/overspace, +/turf/closed/wall/shuttle{ + icon_state = "swall_s6"; + dir = 2 + }, /area/shuttle/pod_1) "aOz" = ( /obj/structure/grille, @@ -23385,7 +23427,7 @@ dir = 2; network = list("SS13") }, -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 10 }, @@ -23491,13 +23533,13 @@ icon_state = "0-2" }, /turf/open/floor/plating, -/area/ai_monitored/turret_protected/ai_upload) +/area/turret_protected/ai_upload) "aPc" = ( /obj/machinery/porta_turret/ai{ dir = 4 }, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai_upload) +/area/turret_protected/ai_upload) "aPd" = ( /obj/machinery/computer/upload/borg, /obj/structure/window/reinforced{ @@ -23518,11 +23560,11 @@ req_access_txt = "16" }, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai_upload) +/area/turret_protected/ai_upload) "aPe" = ( -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai_upload) +/area/turret_protected/ai_upload) "aPf" = ( /obj/machinery/computer/upload/ai, /obj/structure/window/reinforced{ @@ -23543,13 +23585,13 @@ req_access_txt = "16" }, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai_upload) +/area/turret_protected/ai_upload) "aPg" = ( /obj/machinery/porta_turret/ai{ dir = 8 }, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai_upload) +/area/turret_protected/ai_upload) "aPh" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber{ dir = 1; @@ -23646,7 +23688,7 @@ /turf/open/floor/wood, /area/lawoffice) "aPs" = ( -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /turf/open/floor/wood, /area/lawoffice) "aPt" = ( @@ -23859,7 +23901,7 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /turf/open/floor/plasteel, /area/hallway/secondary/construction{ name = "\improper Garden" @@ -24067,7 +24109,10 @@ /turf/open/space, /area/space) "aQb" = ( -/turf/closed/wall/mineral/titanium, +/turf/closed/wall/shuttle{ + icon_state = "swall3"; + dir = 2 + }, /area/shuttle/pod_1) "aQc" = ( /obj/structure/chair{ @@ -24079,20 +24124,19 @@ /obj/item/weapon/storage/pod{ pixel_x = -26 }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/pod_2) "aQd" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/open/floor/plating, /area/construction) "aQe" = ( -/obj/structure/closet/secure_closet/miner{ - locked = 0 +/obj/machinery/light_construct{ + dir = 4 }, -/turf/open/floor/plating/warnplate{ - dir = 6 - }, -/area/shuttle/auxillary_base) +/obj/machinery/pipedispenser/disposal/transit_tube, +/turf/open/floor/plasteel, +/area/construction) "aQf" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 9; @@ -24321,7 +24365,7 @@ }, /obj/structure/cable/yellow, /turf/open/floor/plating, -/area/ai_monitored/turret_protected/ai_upload) +/area/turret_protected/ai_upload) "aQx" = ( /obj/structure/table, /obj/structure/cable/yellow{ @@ -24331,7 +24375,7 @@ }, /obj/item/weapon/aiModule/supplied/quarantine, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai_upload) +/area/turret_protected/ai_upload) "aQy" = ( /obj/structure/cable/yellow{ d1 = 4; @@ -24339,7 +24383,7 @@ icon_state = "4-8" }, /turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/ai_upload) +/area/turret_protected/ai_upload) "aQz" = ( /obj/structure/cable/yellow{ d1 = 4; @@ -24347,7 +24391,7 @@ icon_state = "4-8" }, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai_upload) +/area/turret_protected/ai_upload) "aQA" = ( /obj/structure/cable/yellow{ d1 = 2; @@ -24364,7 +24408,7 @@ uses = 8 }, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai_upload) +/area/turret_protected/ai_upload) "aQB" = ( /obj/structure/table, /obj/structure/cable/yellow{ @@ -24374,7 +24418,7 @@ }, /obj/item/weapon/aiModule/supplied/freeform, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai_upload) +/area/turret_protected/ai_upload) "aQC" = ( /obj/structure/grille, /obj/structure/window/reinforced/fulltile, @@ -24384,7 +24428,7 @@ }, /obj/structure/cable/yellow, /turf/open/floor/plating, -/area/ai_monitored/turret_protected/ai_upload) +/area/turret_protected/ai_upload) "aQD" = ( /obj/structure/cable/yellow{ d1 = 1; @@ -24530,7 +24574,12 @@ /area/crew_quarters/locker) "aQR" = ( /obj/structure/grille, -/obj/structure/window/reinforced/tinted/fulltile, +/obj/structure/window/reinforced/tinted{ + dir = 5; + health = 120; + icon_state = "twindow"; + reinf = 0 + }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, @@ -24755,7 +24804,7 @@ possible_destinations = "pod_asteroid3"; shuttleId = "pod3" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/pod_3) "aRk" = ( /turf/open/floor/plating{ @@ -24878,9 +24927,7 @@ /turf/closed/wall, /area/quartermaster/qm) "aRy" = ( -/obj/machinery/computer/security/mining{ - network = list("MINE","AuxBase") - }, +/obj/machinery/computer/security/mining, /obj/machinery/light_switch{ pixel_x = -23; pixel_y = 0 @@ -24968,7 +25015,7 @@ }, /area/storage/primary) "aRG" = ( -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /turf/open/floor/plasteel, /area/storage/primary) "aRH" = ( @@ -25001,7 +25048,7 @@ pixel_y = -24 }, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai_upload) +/area/turret_protected/ai_upload) "aRJ" = ( /obj/machinery/power/apc{ cell_type = 5000; @@ -25019,7 +25066,7 @@ network = list("SS13","RD","AIUpload") }, /turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/ai_upload) +/area/turret_protected/ai_upload) "aRK" = ( /obj/structure/cable/yellow{ d1 = 2; @@ -25032,7 +25079,7 @@ icon_state = "1-2" }, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai_upload) +/area/turret_protected/ai_upload) "aRL" = ( /obj/item/device/radio/intercom{ broadcasting = 1; @@ -25046,7 +25093,7 @@ network = list("SS13","RD","AIUpload") }, /turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/ai_upload) +/area/turret_protected/ai_upload) "aRM" = ( /obj/structure/table, /obj/machinery/light{ @@ -25064,7 +25111,7 @@ pixel_y = -24 }, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai_upload) +/area/turret_protected/ai_upload) "aRN" = ( /obj/machinery/light{ icon_state = "tube1"; @@ -25087,7 +25134,12 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/structure/window/reinforced/tinted/fulltile, +/obj/structure/window/reinforced/tinted{ + dir = 5; + health = 120; + icon_state = "twindow"; + reinf = 0 + }, /turf/open/floor/plating, /area/crew_quarters/courtroom) "aRP" = ( @@ -25647,19 +25699,22 @@ name = "Arrivals" }) "aSK" = ( +/turf/open/floor/plating, /obj/structure/shuttle/engine/propulsion/burst, -/turf/closed/wall/mineral/titanium, +/turf/closed/wall/shuttle{ + icon_state = "swall_f5"; + dir = 2 + }, /area/shuttle/pod_1) "aSL" = ( -/obj/machinery/door/airlock/titanium{ +/obj/machinery/door/airlock/shuttle{ name = "Escape Pod Airlock" }, /obj/docking_port/mobile/pod{ id = "pod1"; - name = "escape pod 1"; - port_angle = 180 + name = "escape pod 1" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/pod_1) "aSM" = ( /turf/open/floor/plating, @@ -25670,19 +25725,20 @@ }, /area/shuttle/pod_1) "aSN" = ( -/obj/structure/closet/toolcloset, -/obj/machinery/light{ - dir = 8 +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 4; + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 }, -/turf/open/floor/plasteel/yellow/side{ - dir = 9 - }, -/area/mining_construction) +/turf/open/floor/plasteel, +/area/construction) "aSO" = ( -/turf/open/floor/plasteel/yellow/side{ - dir = 1 +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 }, -/area/mining_construction) +/turf/open/floor/plasteel, +/area/construction) "aSP" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 10 @@ -25690,15 +25746,12 @@ /turf/open/floor/plasteel, /area/construction) "aSQ" = ( -/obj/structure/reagent_dispensers/fueltank, -/obj/machinery/light{ - icon_state = "tube1"; - dir = 4 +/obj/structure/rack{ + dir = 1 }, -/turf/open/floor/plasteel/yellow/side{ - dir = 5 - }, -/area/mining_construction) +/obj/item/clothing/suit/hazardvest, +/turf/open/floor/plasteel, +/area/construction) "aSR" = ( /obj/effect/landmark{ name = "revenantspawn" @@ -25851,7 +25904,7 @@ dir = 1 }, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai_upload) +/area/turret_protected/ai_upload) "aTf" = ( /obj/structure/cable/yellow{ d1 = 1; @@ -25859,13 +25912,13 @@ icon_state = "1-2" }, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai_upload) +/area/turret_protected/ai_upload) "aTg" = ( /obj/machinery/porta_turret/ai{ dir = 1 }, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai_upload) +/area/turret_protected/ai_upload) "aTh" = ( /obj/structure/cable/yellow{ d1 = 1; @@ -25942,7 +25995,7 @@ /turf/open/floor/plasteel, /area/crew_quarters/locker) "aTr" = ( -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /turf/open/floor/plasteel, /area/crew_quarters/locker) "aTs" = ( @@ -26239,14 +26292,9 @@ name = "Arrivals" }) "aTT" = ( -/obj/structure/chair{ - dir = 4 - }, -/obj/machinery/light/small{ - dir = 8 - }, -/turf/open/floor/plating{ - icon_state = "platingdmg1" +/obj/machinery/light/small, +/turf/open/floor/plating/warnplate{ + dir = 1 }, /area/hallway/secondary/entry{ name = "Arrivals" @@ -26269,14 +26317,14 @@ /turf/open/floor/plasteel, /area/construction) "aTX" = ( -/obj/structure/closet/toolcloset, -/turf/open/floor/plasteel/yellow/side{ - dir = 10 - }, -/area/mining_construction) +/obj/machinery/light_construct, +/turf/open/floor/plasteel, +/area/construction) "aTY" = ( -/turf/open/floor/plasteel/yellow/side, -/area/mining_construction) +/obj/structure/table, +/obj/item/clothing/gloves/color/orange, +/turf/open/floor/plasteel, +/area/construction) "aTZ" = ( /obj/structure/table, /obj/item/clothing/head/hardhat/orange{ @@ -26287,64 +26335,34 @@ /turf/open/floor/plasteel, /area/construction) "aUa" = ( -/obj/structure/rack{ - dir = 4 - }, -/obj/item/weapon/electronics/airlock, -/obj/item/weapon/electronics/airlock, -/obj/item/weapon/electronics/airlock, -/obj/item/weapon/electronics/airlock, -/obj/item/stack/cable_coil, -/obj/item/stack/cable_coil, -/obj/item/wallframe/camera, -/obj/item/wallframe/camera, -/obj/item/wallframe/camera, -/obj/item/wallframe/camera, -/obj/item/device/assault_pod/mining, -/obj/structure/cable/yellow{ - d2 = 8; - icon_state = "0-8" - }, /obj/machinery/power/apc{ dir = 2; - name = "Auxillary Base Construction APC"; - pixel_x = 0; + name = "Construction Area APC"; pixel_y = -24 }, -/turf/open/floor/plasteel/yellow/side, -/area/mining_construction) +/obj/structure/cable/yellow{ + d2 = 4; + icon_state = "0-4" + }, +/obj/machinery/light_construct, +/turf/open/floor/plating, +/area/construction) "aUb" = ( -/obj/structure/table, -/obj/item/stack/sheet/metal{ - amount = 50 +/obj/structure/cable/yellow{ + d1 = 2; + d2 = 8; + icon_state = "2-8" }, -/obj/item/stack/sheet/metal{ - amount = 50 - }, -/obj/item/stack/sheet/glass{ - amount = 50 - }, -/obj/item/weapon/pipe_dispenser, -/obj/machinery/airalarm{ - dir = 1; - icon_state = "alarm0"; - pixel_y = -22 - }, -/turf/open/floor/plasteel/yellow/side, -/area/mining_construction) +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel, +/area/construction) "aUc" = ( -/obj/structure/table, -/obj/item/stack/sheet/plasteel{ - amount = 10 +/obj/machinery/light_switch{ + pixel_x = 26; + pixel_y = 0 }, -/obj/item/stack/rods{ - amount = 50 - }, -/obj/item/weapon/storage/box/lights/mixed, -/turf/open/floor/plasteel/yellow/side{ - dir = 6 - }, -/area/mining_construction) +/turf/open/floor/plasteel, +/area/construction) "aUd" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/structure/cable/yellow{ @@ -26582,7 +26600,7 @@ icon_state = "1-2" }, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai_upload) +/area/turret_protected/ai_upload) "aUy" = ( /obj/structure/cable/yellow{ d1 = 1; @@ -26598,7 +26616,12 @@ /area/hallway/primary/fore) "aUz" = ( /obj/structure/grille, -/obj/structure/window/reinforced/tinted/fulltile, +/obj/structure/window/reinforced/tinted{ + dir = 5; + health = 120; + icon_state = "twindow"; + reinf = 0 + }, /turf/open/floor/plating, /area/crew_quarters/courtroom) "aUA" = ( @@ -27003,7 +27026,7 @@ }) "aVk" = ( /turf/closed/wall/r_wall, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "aVl" = ( /obj/structure/cable{ d1 = 2; @@ -27011,7 +27034,7 @@ icon_state = "2-4" }, /turf/closed/wall/r_wall, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "aVm" = ( /obj/machinery/power/smes{ charge = 5e+006 @@ -27021,7 +27044,7 @@ d2 = 4 }, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "aVn" = ( /obj/structure/cable{ d1 = 2; @@ -27030,7 +27053,7 @@ }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/closed/wall/r_wall, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "aVo" = ( /obj/structure/lattice, /obj/structure/window/reinforced{ @@ -27101,15 +27124,25 @@ }) "aVu" = ( /obj/structure/grille, +/obj/structure/window/reinforced/tinted{ + dir = 5; + health = 120; + icon_state = "twindow"; + reinf = 0 + }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/window/reinforced/tinted/fulltile, /turf/open/floor/plating, /area/hallway/secondary/entry{ name = "Arrivals" }) "aVv" = ( /obj/structure/grille, -/obj/structure/window/reinforced/tinted/fulltile, +/obj/structure/window/reinforced/tinted{ + dir = 5; + health = 120; + icon_state = "twindow"; + reinf = 0 + }, /turf/open/floor/plating, /area/hallway/secondary/entry{ name = "Arrivals" @@ -27349,7 +27382,7 @@ /area/hallway/primary/central) "aVR" = ( /turf/closed/wall/r_wall, -/area/ai_monitored/turret_protected/ai_upload_foyer) +/area/turret_protected/ai_upload_foyer) "aVS" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber{ on = 1; @@ -27397,7 +27430,7 @@ /turf/open/floor/plasteel/vault{ dir = 6 }, -/area/ai_monitored/turret_protected/ai_upload_foyer) +/area/turret_protected/ai_upload_foyer) "aVT" = ( /obj/structure/cable/yellow{ d1 = 1; @@ -27410,7 +27443,7 @@ icon_state = "2-8" }, /turf/open/floor/plasteel/vault, -/area/ai_monitored/turret_protected/ai_upload_foyer) +/area/turret_protected/ai_upload_foyer) "aVU" = ( /obj/machinery/atmospherics/components/unary/vent_pump{ dir = 2; @@ -27440,7 +27473,7 @@ /turf/open/floor/plasteel/vault{ dir = 10 }, -/area/ai_monitored/turret_protected/ai_upload_foyer) +/area/turret_protected/ai_upload_foyer) "aVV" = ( /obj/structure/sign/directions/security{ desc = "A direction sign, pointing out which way the security department is."; @@ -27800,7 +27833,7 @@ dir = 4 }, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "aWG" = ( /obj/machinery/status_display{ density = 0; @@ -27815,7 +27848,7 @@ scrub_Toxins = 0 }, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "aWH" = ( /obj/structure/showcase{ density = 0; @@ -27828,7 +27861,7 @@ pixel_y = 20 }, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "aWI" = ( /obj/structure/cable/yellow{ d1 = 4; @@ -27871,7 +27904,7 @@ }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "aWK" = ( /obj/machinery/status_display{ density = 0; @@ -27884,13 +27917,13 @@ on = 1 }, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "aWL" = ( /obj/machinery/porta_turret/ai{ dir = 8 }, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "aWM" = ( /obj/structure/grille, /obj/structure/window/reinforced/fulltile, @@ -27955,12 +27988,6 @@ dir = 4; on = 1 }, -/obj/machinery/status_display{ - density = 0; - layer = 4; - pixel_x = 0; - pixel_y = 32 - }, /turf/open/floor/plasteel/warning{ dir = 1 }, @@ -27992,31 +28019,26 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable/yellow{ - icon_state = "1-4"; - d1 = 1; - d2 = 4 +/obj/machinery/light{ + dir = 1 }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/yellow/side{ +/turf/open/floor/plasteel/warning{ dir = 1 }, /area/hallway/secondary/entry{ name = "Arrivals" }) "aWW" = ( -/obj/machinery/light{ - dir = 1 +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 2 +/obj/machinery/status_display{ + density = 0; + layer = 4; + pixel_x = 0; + pixel_y = 32 }, -/obj/structure/cable/yellow{ - icon_state = "4-8"; - d1 = 4; - d2 = 8 - }, -/turf/open/floor/plasteel/yellow/corner{ +/turf/open/floor/plasteel/warning{ dir = 1 }, /area/hallway/secondary/entry{ @@ -28226,9 +28248,7 @@ name = "Station Intercom (General)"; pixel_x = 27 }, -/obj/machinery/computer/security/mining{ - network = list("MINE","AuxBase") - }, +/obj/machinery/computer/security/mining, /turf/open/floor/plasteel/red/side{ dir = 4 }, @@ -28286,7 +28306,7 @@ "aXt" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/closed/wall/r_wall, -/area/ai_monitored/turret_protected/ai_upload_foyer) +/area/turret_protected/ai_upload_foyer) "aXu" = ( /obj/machinery/door/airlock/highsecurity{ name = "Secure Network Access"; @@ -28298,11 +28318,11 @@ icon_state = "1-2" }, /turf/open/floor/plasteel/vault, -/area/ai_monitored/turret_protected/ai_upload_foyer) +/area/turret_protected/ai_upload_foyer) "aXv" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/closed/wall/r_wall, -/area/ai_monitored/turret_protected/ai_upload_foyer) +/area/turret_protected/ai_upload_foyer) "aXw" = ( /obj/machinery/airalarm{ pixel_y = 23 @@ -28706,21 +28726,21 @@ dir = 8 }, /turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "aYi" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "aYj" = ( /turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "aYk" = ( /obj/machinery/ai_slipper{ icon_state = "motion0"; uses = 10 }, /turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "aYl" = ( /obj/structure/cable{ d1 = 1; @@ -28731,7 +28751,7 @@ dir = 5 }, /turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "aYm" = ( /obj/structure/cable{ d1 = 2; @@ -28742,7 +28762,7 @@ dir = 4 }, /turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "aYn" = ( /obj/machinery/light{ icon_state = "tube1"; @@ -28753,7 +28773,7 @@ pixel_y = 0 }, /turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "aYo" = ( /obj/structure/grille, /obj/structure/window/reinforced/fulltile, @@ -28782,6 +28802,7 @@ pixel_x = 0; pixel_y = -32 }, +/obj/machinery/light, /turf/open/floor/plasteel/warning, /area/hallway/secondary/entry{ name = "Arrivals" @@ -28811,9 +28832,8 @@ name = "Arrivals" }) "aYv" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 8; - initialize_directions = 11 +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 }, /turf/open/floor/plasteel/warning/corner{ dir = 2 @@ -28888,7 +28908,7 @@ /turf/open/floor/plating, /area/quartermaster/storage) "aYC" = ( -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /turf/open/floor/plasteel, /area/quartermaster/storage) "aYD" = ( @@ -29018,6 +29038,7 @@ "aYM" = ( /obj/item/weapon/book/manual/wiki/security_space_law, /obj/machinery/newscaster{ + hitstaken = 1; pixel_x = 0; pixel_y = -32 }, @@ -29509,7 +29530,7 @@ dir = 1; pixel_y = 1 }, -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /turf/open/floor/plasteel/black, /area/construction/hallway{ name = "\improper MiniSat Exterior" @@ -29761,7 +29782,7 @@ /turf/open/floor/plating/warnplate{ dir = 2 }, -/area/maintenance/starboard) +/area/engine/engineering) "aZT" = ( /obj/structure/grille, /obj/structure/cable{ @@ -29805,7 +29826,7 @@ /turf/open/floor/plasteel/vault{ dir = 1 }, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "aZW" = ( /obj/structure/cable{ d1 = 1; @@ -29815,7 +29836,7 @@ }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "aZX" = ( /obj/structure/grille, /obj/structure/window/reinforced/fulltile, @@ -29824,7 +29845,7 @@ name = "AI core shutters" }, /turf/open/floor/plating, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "aZY" = ( /obj/structure/cable{ d1 = 1; @@ -29834,7 +29855,7 @@ }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "aZZ" = ( /obj/structure/showcase{ density = 0; @@ -29849,7 +29870,7 @@ /turf/open/floor/plasteel/vault{ dir = 4 }, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "baa" = ( /obj/structure/sign/securearea{ desc = "A warning sign which reads 'KEEP CLEAR OF DOCKING AREA'."; @@ -29880,12 +29901,6 @@ name = "Arrivals" }) "bad" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, /turf/open/floor/plasteel/warning{ dir = 6 }, @@ -30190,7 +30205,7 @@ d2 = 4; icon_state = "1-4" }, -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /turf/open/floor/plasteel, /area/hallway/primary/central) "baE" = ( @@ -30635,19 +30650,22 @@ }, /area/security/checkpoint/engineering) "bbn" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass{ - name = "Library" +/obj/structure/closet/emcloset, +/obj/machinery/status_display{ + density = 0; + layer = 4; + pixel_x = -32; + pixel_y = 0 }, -/turf/open/floor/wood, -/area/library) +/turf/open/floor/plasteel/black, +/area/hallway/primary/central) "bbo" = ( /obj/machinery/space_heater, -/obj/effect/decal/cleanable/cobweb/cobweb2, +/obj/effect/decal/cleanable/cobweb2, /turf/open/floor/plating{ icon_state = "platingdmg3" }, -/area/maintenance/starboard) +/area/engine/engineering) "bbp" = ( /obj/effect/landmark{ name = "tripai" @@ -30680,7 +30698,7 @@ /obj/machinery/door/window{ base_state = "rightsecure"; dir = 4; - obj_integrity = 300; + health = 300; icon_state = "rightsecure"; layer = 4.1; name = "Secondary AI Core Access"; @@ -30688,9 +30706,9 @@ req_access_txt = "16" }, /turf/open/floor/greengrid, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "bbq" = ( -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /obj/machinery/flasher{ id = "AI"; pixel_x = -25; @@ -30699,7 +30717,7 @@ /turf/open/floor/plasteel/vault{ dir = 1 }, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "bbr" = ( /obj/machinery/ai_slipper{ icon_state = "motion0"; @@ -30707,7 +30725,7 @@ }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "bbs" = ( /obj/machinery/vending/assist, /obj/machinery/light/small{ @@ -30731,7 +30749,7 @@ /obj/machinery/door/window{ base_state = "rightsecure"; dir = 4; - obj_integrity = 300; + health = 300; icon_state = "rightsecure"; name = "Primary AI Core Access"; req_access_txt = "16" @@ -30744,7 +30762,7 @@ /turf/open/floor/plasteel/vault{ dir = 10 }, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "bbv" = ( /obj/machinery/ai_slipper{ icon_state = "motion0"; @@ -30758,9 +30776,9 @@ }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "bbw" = ( -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /obj/machinery/flasher{ id = "AI"; pixel_x = 25; @@ -30769,7 +30787,7 @@ /turf/open/floor/plasteel/vault{ dir = 4 }, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "bbx" = ( /obj/effect/landmark{ name = "tripai" @@ -30802,7 +30820,7 @@ /obj/machinery/door/window{ base_state = "leftsecure"; dir = 8; - obj_integrity = 300; + health = 300; icon_state = "leftsecure"; layer = 4.1; name = "Tertiary AI Core Access"; @@ -30810,7 +30828,7 @@ req_access_txt = "16" }, /turf/open/floor/greengrid, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "bby" = ( /turf/open/floor/plating/warnplate{ dir = 2 @@ -31376,7 +31394,7 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /turf/open/floor/plasteel, /area/hallway/primary/central) "bcs" = ( @@ -31720,7 +31738,7 @@ }, /area/engine/chiefs_office) "bcU" = ( -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /turf/open/floor/plasteel/neutral{ dir = 8 }, @@ -31869,7 +31887,7 @@ /turf/open/floor/plating/warnplate{ dir = 4 }, -/area/maintenance/starboard) +/area/engine/engineering) "bdi" = ( /obj/machinery/door/airlock/external{ req_access_txt = "13" @@ -31890,7 +31908,7 @@ /turf/open/floor/plasteel/vault{ dir = 1 }, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "bdk" = ( /obj/structure/closet/secure_closet/personal, /obj/machinery/light/small{ @@ -31925,7 +31943,7 @@ /turf/open/floor/plasteel/vault{ dir = 4 }, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "bdm" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ req_access_txt = 1 @@ -32245,7 +32263,7 @@ /turf/open/floor/plasteel, /area/storage/tools) "bdT" = ( -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /turf/open/floor/plasteel, /area/storage/tools) "bdU" = ( @@ -32330,7 +32348,7 @@ }, /area/storage/tech) "bec" = ( -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /turf/open/floor/plasteel/vault{ dir = 8 }, @@ -32529,7 +32547,7 @@ pixel_y = 0 }, /turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "beu" = ( /obj/structure/window/reinforced, /obj/structure/window/reinforced{ @@ -32538,16 +32556,22 @@ /turf/open/space, /area/space) "bev" = ( -/turf/closed/wall/mineral/titanium/overspace, +/turf/closed/wall/shuttle{ + icon_state = "swall_s6"; + dir = 2 + }, /area/shuttle/arrival) "bew" = ( -/turf/closed/wall/mineral/titanium, +/turf/closed/wall/shuttle{ + icon_state = "swall12"; + dir = 2 + }, /area/shuttle/arrival) "bex" = ( -/obj/machinery/door/airlock/titanium{ +/obj/machinery/door/airlock/shuttle{ name = "Arrivals Shuttle Airlock" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/arrival) "bey" = ( /obj/structure/grille, @@ -33493,13 +33517,13 @@ }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "bgb" = ( /obj/machinery/airalarm{ pixel_y = 23 }, /turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "bgc" = ( /obj/machinery/atmospherics/components/unary/portables_connector/visible, /obj/machinery/portable_atmospherics/pump, @@ -33520,7 +33544,7 @@ d2 = 4 }, /turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "bge" = ( /obj/structure/cable{ d1 = 1; @@ -33529,7 +33553,7 @@ }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "bgf" = ( /obj/structure/window/reinforced, /obj/structure/window/reinforced{ @@ -33581,18 +33605,18 @@ pixel_x = 3; pixel_y = -3 }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/arrival) "bgk" = ( -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/arrival) "bgl" = ( /obj/machinery/computer/arcade, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/arrival) "bgm" = ( /obj/structure/closet/wardrobe/green, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/arrival) "bgn" = ( /obj/structure/closet/wardrobe/black, @@ -33601,7 +33625,7 @@ icon_state = "map-left-MS"; pixel_y = 32 }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/arrival) "bgo" = ( /obj/structure/closet/wardrobe/mixed, @@ -33610,11 +33634,11 @@ icon_state = "map-right-MS"; pixel_y = 32 }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/arrival) "bgp" = ( /obj/structure/closet/wardrobe/grey, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/arrival) "bgq" = ( /obj/machinery/camera{ @@ -33622,7 +33646,7 @@ dir = 2; network = list("SS13") }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/arrival) "bgr" = ( /turf/closed/wall/shuttle{ @@ -34421,16 +34445,26 @@ /turf/open/floor/plating, /area/engine/break_room) "bhJ" = ( +/turf/open/floor/plating, /obj/structure/shuttle/engine/propulsion/burst{ dir = 4 }, -/turf/closed/wall/mineral/titanium, +/turf/closed/wall/shuttle{ + icon_state = "swall_f6"; + dir = 2 + }, /area/shuttle/pod_4) "bhK" = ( -/turf/closed/wall/mineral/titanium, +/turf/closed/wall/shuttle{ + icon_state = "swall12"; + dir = 2 + }, /area/shuttle/pod_4) "bhL" = ( -/turf/closed/wall/mineral/titanium/overspace, +/turf/closed/wall/shuttle{ + icon_state = "swall_s10"; + dir = 2 + }, /area/shuttle/pod_4) "bhM" = ( /obj/machinery/door/airlock/hatch{ @@ -34504,11 +34538,11 @@ pixel_y = 0 }, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "bhS" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "bhT" = ( /obj/structure/cable{ d1 = 1; @@ -34516,7 +34550,7 @@ icon_state = "1-4" }, /turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "bhU" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 6 @@ -34526,20 +34560,20 @@ uses = 10 }, /turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "bhV" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ dir = 1 }, /turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "bhW" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 9; pixel_y = 0 }, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "bhX" = ( /obj/structure/table/reinforced, /obj/item/weapon/phone{ @@ -34559,7 +34593,7 @@ pixel_y = 0 }, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "bhY" = ( /obj/structure/window/reinforced{ dir = 1; @@ -34597,7 +34631,7 @@ /area/storage/primary) "bib" = ( /obj/structure/chair, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/arrival) "bic" = ( /turf/closed/wall/shuttle{ @@ -34612,13 +34646,13 @@ /obj/effect/landmark{ name = "JoinLate" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/arrival) "bie" = ( /obj/effect/landmark{ name = "JoinLate" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/arrival) "bif" = ( /obj/structure/shuttle/engine/heater{ @@ -35088,7 +35122,6 @@ d2 = 8; icon_state = "4-8" }, -/obj/machinery/portable_atmospherics/canister/water_vapor, /mob/living/simple_animal/hostile/lizard{ name = "Wags-His-Tail"; real_name = "Wags-His-Tail" @@ -35344,7 +35377,7 @@ /obj/structure/window/reinforced{ dir = 8 }, -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /turf/open/floor/wood, /area/crew_quarters/captain{ name = "\improper Captain's Quarters" @@ -35708,17 +35741,15 @@ /turf/open/floor/plating, /area/engine/break_room) "bjS" = ( -/obj/machinery/door/airlock/titanium{ +/obj/machinery/door/airlock/shuttle{ name = "Escape Pod Airlock" }, /obj/docking_port/mobile/pod{ dir = 4; id = "pod4"; - name = "escape pod 4"; - port_angle = 180; - preferred_direction = 4 + name = "escape pod 4" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/pod_4) "bjT" = ( /obj/structure/chair{ @@ -35731,7 +35762,7 @@ pixel_x = 6; pixel_y = -32 }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/pod_3) "bjU" = ( /obj/docking_port/stationary/random{ @@ -35784,7 +35815,7 @@ dir = 8 }, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "bjZ" = ( /obj/structure/chair/office/dark{ dir = 8 @@ -35795,7 +35826,7 @@ }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "bka" = ( /obj/machinery/camera{ c_tag = "AI Chamber - Aft"; @@ -35809,12 +35840,12 @@ scrub_Toxins = 0 }, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "bkb" = ( -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "bkc" = ( /obj/structure/cable/yellow{ d1 = 4; @@ -35838,7 +35869,7 @@ pixel_y = -32 }, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "bke" = ( /obj/structure/table/reinforced, /obj/item/weapon/folder/blue{ @@ -35849,12 +35880,12 @@ dir = 4 }, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "bkf" = ( /obj/effect/landmark{ name = "Observer-Start" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/arrival) "bkg" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -36646,7 +36677,7 @@ dir = 4; initialize_directions = 11 }, -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /turf/open/floor/plasteel, /area/engine/break_room) "blx" = ( @@ -36703,16 +36734,16 @@ }) "blD" = ( /turf/closed/wall/r_wall, -/area/ai_monitored/turret_protected/tcomfoyer{ +/area/turret_protected/tcomfoyer{ name = "\improper MiniSat Foyer" }) "blE" = ( /turf/closed/wall/r_wall, -/area/ai_monitored/turret_protected/aisat_interior) +/area/turret_protected/aisat_interior) "blF" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/closed/wall/r_wall, -/area/ai_monitored/turret_protected/aisat_interior) +/area/turret_protected/aisat_interior) "blG" = ( /obj/machinery/power/terminal{ icon_state = "term"; @@ -36724,7 +36755,7 @@ pixel_y = 28 }, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "blH" = ( /turf/closed/wall/r_wall, /area/ai_monitored/storage/secure{ @@ -36734,7 +36765,7 @@ /obj/structure/chair{ dir = 1 }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/arrival) "blJ" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -37028,7 +37059,7 @@ }) "bme" = ( /obj/structure/disposalpipe/segment, -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /turf/open/floor/plasteel/brown{ dir = 2 }, @@ -37066,7 +37097,7 @@ /area/hallway/primary/port) "bmh" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /turf/open/floor/plasteel/brown/corner{ dir = 8 }, @@ -37246,9 +37277,7 @@ d2 = 4; icon_state = "2-4" }, -/obj/machinery/computer/security/mining{ - network = list("MINE","AuxBase") - }, +/obj/machinery/computer/security/mining, /obj/machinery/keycard_auth{ pixel_x = 0; pixel_y = 24 @@ -37281,15 +37310,18 @@ name = "xeno_spawn"; pixel_x = -1 }, +/obj/machinery/shower{ + icon_state = "shower"; + dir = 4 + }, +/obj/machinery/door/window/westright{ + dir = 4 + }, /obj/item/weapon/soap/deluxe, /obj/machinery/atmospherics/components/unary/vent_pump{ dir = 4; on = 1 }, -/obj/machinery/shower{ - pixel_y = 12 - }, -/obj/structure/curtain, /turf/open/floor/plasteel/white, /area/crew_quarters/captain{ name = "\improper Captain's Quarters" @@ -37673,20 +37705,22 @@ /turf/open/space, /area/space) "bnj" = ( -/obj/structure/lattice, -/obj/structure/transit_tube/curved/flipped{ - dir = 4 +/obj/structure/transit_tube{ + icon_state = "E-SW" }, +/obj/structure/lattice, /turf/open/space, /area/space) "bnk" = ( +/obj/structure/transit_tube{ + icon_state = "E-W-Pass" + }, /obj/structure/lattice, -/obj/structure/transit_tube/crossing/horizontal, /turf/open/space, /area/space) "bnl" = ( -/obj/structure/transit_tube/curved{ - dir = 8 +/obj/structure/transit_tube{ + icon_state = "W-SE" }, /turf/open/space, /area/space) @@ -37720,7 +37754,11 @@ name = "\improper MiniSat Exterior" }) "bnq" = ( -/obj/machinery/atmospherics/components/unary/outlet_injector/on, +/obj/machinery/atmospherics/components/unary/outlet_injector{ + dir = 2; + icon_state = "inje_on"; + on = 1 + }, /obj/structure/window/reinforced, /turf/open/floor/plating/airless, /area/construction/hallway{ @@ -37740,7 +37778,7 @@ /turf/open/floor/plasteel/vault{ dir = 8 }, -/area/ai_monitored/turret_protected/tcomfoyer{ +/area/turret_protected/tcomfoyer{ name = "\improper MiniSat Foyer" }) "bns" = ( @@ -37754,7 +37792,7 @@ /turf/open/floor/plasteel/vault{ dir = 8 }, -/area/ai_monitored/turret_protected/tcomfoyer{ +/area/turret_protected/tcomfoyer{ name = "\improper MiniSat Foyer" }) "bnt" = ( @@ -37762,7 +37800,7 @@ /turf/open/floor/plasteel/vault{ dir = 8 }, -/area/ai_monitored/turret_protected/tcomfoyer{ +/area/turret_protected/tcomfoyer{ name = "\improper MiniSat Foyer" }) "bnu" = ( @@ -37771,7 +37809,7 @@ on = 1 }, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "bnv" = ( /obj/structure/showcase{ density = 0; @@ -37789,11 +37827,11 @@ /turf/open/floor/plasteel/darkblue/corner{ dir = 1 }, -/area/ai_monitored/turret_protected/aisat_interior) +/area/turret_protected/aisat_interior) "bnw" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/aisat_interior) +/area/turret_protected/aisat_interior) "bnx" = ( /obj/structure/showcase{ density = 0; @@ -37808,7 +37846,7 @@ /turf/open/floor/plasteel/darkblue/corner{ dir = 4 }, -/area/ai_monitored/turret_protected/aisat_interior) +/area/turret_protected/aisat_interior) "bny" = ( /obj/machinery/door/airlock/highsecurity{ icon_state = "door_closed"; @@ -37835,7 +37873,7 @@ pixel_y = 0 }, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/aisat_interior) +/area/turret_protected/aisat_interior) "bnz" = ( /obj/machinery/power/smes{ charge = 5e+006 @@ -37904,14 +37942,14 @@ /area/shuttle/arrival) "bnE" = ( /obj/structure/closet/emcloset, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/arrival) "bnF" = ( /obj/item/device/radio/intercom{ name = "Station Intercom (General)"; pixel_y = -29 }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/arrival) "bnG" = ( /obj/structure/sign/map/left{ @@ -37919,7 +37957,7 @@ icon_state = "map-left-MS"; pixel_y = -32 }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/arrival) "bnH" = ( /obj/structure/sign/map/right{ @@ -37927,14 +37965,14 @@ icon_state = "map-right-MS"; pixel_y = -32 }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/arrival) "bnI" = ( /obj/machinery/requests_console{ department = "Arrival shuttle"; pixel_y = -30 }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/arrival) "bnJ" = ( /obj/structure/shuttle/engine/propulsion{ @@ -38810,7 +38848,9 @@ /turf/open/space, /area/space) "bph" = ( -/obj/structure/transit_tube/diagonal, +/obj/structure/transit_tube{ + icon_state = "NE-SW" + }, /turf/open/space, /area/space) "bpi" = ( @@ -38836,7 +38876,9 @@ /obj/structure/window/reinforced{ dir = 8 }, -/obj/structure/transit_tube/curved/flipped, +/obj/structure/transit_tube{ + icon_state = "S-NW" + }, /turf/open/floor/plasteel/darkblue/corner{ dir = 1 }, @@ -38950,7 +38992,7 @@ /turf/open/floor/plasteel/darkblue/corner{ dir = 1 }, -/area/ai_monitored/turret_protected/tcomfoyer{ +/area/turret_protected/tcomfoyer{ name = "\improper MiniSat Foyer" }) "bps" = ( @@ -38961,7 +39003,7 @@ /turf/open/floor/plasteel/darkblue/corner{ dir = 1 }, -/area/ai_monitored/turret_protected/tcomfoyer{ +/area/turret_protected/tcomfoyer{ name = "\improper MiniSat Foyer" }) "bpt" = ( @@ -38984,7 +39026,7 @@ /turf/open/floor/plasteel/darkblue/corner{ dir = 1 }, -/area/ai_monitored/turret_protected/tcomfoyer{ +/area/turret_protected/tcomfoyer{ name = "\improper MiniSat Foyer" }) "bpu" = ( @@ -38992,7 +39034,7 @@ dir = 4 }, /turf/closed/wall/r_wall, -/area/ai_monitored/turret_protected/aisat_interior) +/area/turret_protected/aisat_interior) "bpv" = ( /obj/machinery/light/small{ dir = 8 @@ -39008,15 +39050,15 @@ /turf/open/floor/plasteel/darkblue/corner{ dir = 1 }, -/area/ai_monitored/turret_protected/aisat_interior) +/area/turret_protected/aisat_interior) "bpw" = ( /obj/machinery/atmospherics/pipe/manifold4w/scrubbers/hidden, /turf/open/floor/plasteel/darkblue/corner{ dir = 1 }, -/area/ai_monitored/turret_protected/aisat_interior) +/area/turret_protected/aisat_interior) "bpx" = ( -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, @@ -39025,7 +39067,7 @@ }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/aisat_interior) +/area/turret_protected/aisat_interior) "bpy" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 @@ -39033,7 +39075,7 @@ /turf/open/floor/plasteel/darkblue/corner{ dir = 4 }, -/area/ai_monitored/turret_protected/aisat_interior) +/area/turret_protected/aisat_interior) "bpz" = ( /obj/machinery/power/apc{ aidisabled = 0; @@ -39056,7 +39098,7 @@ /turf/open/floor/plasteel/darkblue/corner{ dir = 4 }, -/area/ai_monitored/turret_protected/aisat_interior) +/area/turret_protected/aisat_interior) "bpA" = ( /obj/machinery/power/terminal{ icon_state = "term"; @@ -39145,7 +39187,7 @@ name = "MiniSat Maintenance" }) "bpE" = ( -/obj/machinery/door/airlock/titanium{ +/obj/machinery/door/airlock/shuttle{ name = "Arrivals Shuttle Airlock" }, /obj/docking_port/mobile{ @@ -39153,8 +39195,7 @@ height = 7; id = "arrival"; name = "arrival shuttle"; - port_angle = -90; - preferred_direction = 8; + travelDir = -90; width = 15 }, /obj/docking_port/stationary{ @@ -39772,7 +39813,7 @@ /obj/structure/table/wood, /obj/item/stack/packageWrap, /obj/item/stack/packageWrap, -/obj/item/weapon/gun/ballistic/revolver/doublebarrel, +/obj/item/weapon/gun/projectile/revolver/doublebarrel, /obj/machinery/camera{ c_tag = "Bar - Backroom"; dir = 2; @@ -40053,20 +40094,18 @@ /turf/closed/wall/r_wall, /area/space) "brs" = ( +/obj/structure/transit_tube/station{ + reverse_launch = 1 + }, /obj/structure/sign/securearea{ pixel_y = 32 }, -/obj/structure/transit_tube/station/reverse/flipped{ - dir = 1 - }, -/obj/structure/transit_tube_pod{ - dir = 4 - }, /turf/open/floor/plasteel/darkblue/corner{ dir = 4 }, /area/engine/break_room) "brt" = ( +/obj/structure/transit_tube, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, @@ -40077,10 +40116,12 @@ icon_state = "4-8"; pixel_y = 0 }, -/obj/structure/transit_tube/horizontal, /turf/open/space, /area/space) "bru" = ( +/obj/structure/transit_tube{ + icon_state = "E-W-Pass" + }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, @@ -40091,10 +40132,10 @@ icon_state = "4-8"; pixel_y = 0 }, -/obj/structure/transit_tube/crossing/horizontal, /turf/open/space, /area/space) "brv" = ( +/obj/structure/transit_tube, /obj/structure/lattice/catwalk, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 @@ -40105,10 +40146,12 @@ icon_state = "4-8"; pixel_y = 0 }, -/obj/structure/transit_tube/horizontal, /turf/open/space, /area/space) "brw" = ( +/obj/structure/transit_tube{ + icon_state = "W-NE-SE" + }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, @@ -40119,9 +40162,6 @@ icon_state = "4-8"; pixel_y = 0 }, -/obj/structure/transit_tube/junction/flipped{ - dir = 8 - }, /turf/open/space, /area/space) "brx" = ( @@ -40173,6 +40213,10 @@ /turf/open/space, /area/space) "brA" = ( +/obj/structure/transit_tube/station{ + icon_state = "closed"; + dir = 4 + }, /obj/structure/window/reinforced{ dir = 8 }, @@ -40185,9 +40229,6 @@ icon_state = "4-8"; pixel_y = 0 }, -/obj/structure/transit_tube/station{ - dir = 4 - }, /turf/open/floor/plasteel/black, /area/construction/hallway{ name = "\improper MiniSat Exterior" @@ -40223,7 +40264,7 @@ name = "\improper MiniSat Exterior" }) "brD" = ( -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /obj/structure/cable/yellow{ icon_state = "4-8"; d1 = 4; @@ -40277,7 +40318,7 @@ req_one_access_txt = "32;19" }, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/tcomfoyer{ +/area/turret_protected/tcomfoyer{ name = "\improper MiniSat Foyer" }) "brH" = ( @@ -40291,7 +40332,7 @@ d2 = 8 }, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/tcomfoyer{ +/area/turret_protected/tcomfoyer{ name = "\improper MiniSat Foyer" }) "brI" = ( @@ -40300,9 +40341,9 @@ d1 = 4; d2 = 8 }, -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/tcomfoyer{ +/area/turret_protected/tcomfoyer{ name = "\improper MiniSat Foyer" }) "brJ" = ( @@ -40323,7 +40364,7 @@ icon_state = "2-4" }, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/tcomfoyer{ +/area/turret_protected/tcomfoyer{ name = "\improper MiniSat Foyer" }) "brK" = ( @@ -40339,7 +40380,7 @@ req_one_access_txt = "32;19" }, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/aisat_interior) +/area/turret_protected/aisat_interior) "brL" = ( /obj/structure/cable/yellow{ icon_state = "4-8"; @@ -40350,7 +40391,7 @@ dir = 5 }, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/aisat_interior) +/area/turret_protected/aisat_interior) "brM" = ( /obj/structure/cable/yellow{ icon_state = "4-8"; @@ -40367,7 +40408,7 @@ dir = 10 }, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/aisat_interior) +/area/turret_protected/aisat_interior) "brN" = ( /obj/structure/cable/yellow{ d1 = 2; @@ -40386,7 +40427,7 @@ }, /mob/living/simple_animal/bot/secbot/pingsky, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/aisat_interior) +/area/turret_protected/aisat_interior) "brO" = ( /obj/structure/cable/yellow{ icon_state = "4-8"; @@ -40398,7 +40439,7 @@ on = 1 }, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/aisat_interior) +/area/turret_protected/aisat_interior) "brP" = ( /obj/structure/cable/yellow{ icon_state = "4-8"; @@ -40411,7 +40452,7 @@ d2 = 4 }, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/aisat_interior) +/area/turret_protected/aisat_interior) "brQ" = ( /obj/structure/cable/yellow{ icon_state = "4-8"; @@ -40424,7 +40465,7 @@ req_access_txt = "32" }, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/aisat_interior) +/area/turret_protected/aisat_interior) "brR" = ( /obj/structure/cable/yellow{ d1 = 4; @@ -40554,7 +40595,7 @@ name = "Arrivals" }) "bsa" = ( -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /obj/structure/cable/yellow{ d1 = 1; d2 = 2; @@ -40605,7 +40646,7 @@ d2 = 2; icon_state = "1-2" }, -/obj/machinery/holopad{ +/obj/machinery/hologram/holopad{ pixel_y = -16 }, /turf/open/floor/carpet, @@ -40674,7 +40715,7 @@ /obj/machinery/door/window{ base_state = "leftsecure"; dir = 8; - obj_integrity = 300; + health = 300; icon_state = "leftsecure"; name = "Primary AI Core Access"; req_access_txt = "16" @@ -40686,7 +40727,7 @@ /turf/open/floor/plasteel/vault{ dir = 6 }, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "bsl" = ( /obj/structure/cable/yellow{ d1 = 4; @@ -40922,6 +40963,10 @@ /turf/open/floor/wood, /area/crew_quarters/heads) "bsD" = ( +/obj/structure/transit_tube{ + dir = 4; + icon_state = "Block" + }, /obj/machinery/status_display{ density = 0; layer = 4; @@ -41466,7 +41511,7 @@ pixel_y = -23 }, /turf/open/floor/plasteel/vault, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "btx" = ( /obj/structure/disposalpipe/segment, /obj/structure/cable/yellow{ @@ -41598,12 +41643,12 @@ dir = 4; pixel_x = 0 }, +/obj/structure/transit_tube{ + icon_state = "W-SE" + }, /obj/machinery/ai_status_display{ pixel_y = 32 }, -/obj/structure/transit_tube/curved{ - dir = 8 - }, /turf/open/floor/plasteel/darkblue/corner{ dir = 4 }, @@ -41649,8 +41694,8 @@ /obj/structure/window/reinforced{ dir = 8 }, -/obj/structure/transit_tube/curved{ - dir = 4 +/obj/structure/transit_tube{ + icon_state = "E-NW" }, /turf/open/space, /area/space) @@ -41659,6 +41704,9 @@ dir = 4; pixel_x = 0 }, +/obj/structure/transit_tube{ + icon_state = "D-NE" + }, /obj/structure/cable{ d1 = 4; d2 = 8; @@ -41703,7 +41751,9 @@ /turf/open/space, /area/space) "btP" = ( -/obj/structure/transit_tube/diagonal/topleft, +/obj/structure/transit_tube{ + icon_state = "NW-SE" + }, /turf/open/space, /area/space) "btQ" = ( @@ -41720,8 +41770,8 @@ /obj/structure/window/reinforced{ dir = 8 }, -/obj/structure/transit_tube/curved{ - dir = 1 +/obj/structure/transit_tube{ + icon_state = "N-SW" }, /turf/open/floor/plasteel/darkblue/corner{ dir = 8 @@ -41837,7 +41887,7 @@ /turf/open/floor/plasteel/darkblue/corner{ dir = 8 }, -/area/ai_monitored/turret_protected/tcomfoyer{ +/area/turret_protected/tcomfoyer{ name = "\improper MiniSat Foyer" }) "btZ" = ( @@ -41862,7 +41912,7 @@ /turf/open/floor/plasteel/vault{ dir = 1 }, -/area/ai_monitored/turret_protected/aisat_interior) +/area/turret_protected/aisat_interior) "bua" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 @@ -41884,7 +41934,7 @@ /turf/open/floor/plasteel/darkblue/corner{ dir = 8 }, -/area/ai_monitored/turret_protected/tcomfoyer{ +/area/turret_protected/tcomfoyer{ name = "\improper MiniSat Foyer" }) "bub" = ( @@ -41892,7 +41942,7 @@ dir = 4 }, /turf/closed/wall/r_wall, -/area/ai_monitored/turret_protected/aisat_interior) +/area/turret_protected/aisat_interior) "buc" = ( /obj/machinery/light/small{ dir = 8 @@ -41909,7 +41959,7 @@ /turf/open/floor/plasteel/darkblue/corner{ dir = 8 }, -/area/ai_monitored/turret_protected/aisat_interior) +/area/turret_protected/aisat_interior) "bud" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 @@ -41918,7 +41968,7 @@ /turf/open/floor/plasteel/darkblue/corner{ dir = 8 }, -/area/ai_monitored/turret_protected/aisat_interior) +/area/turret_protected/aisat_interior) "bue" = ( /obj/structure/cable/yellow{ d1 = 1; @@ -41927,11 +41977,11 @@ }, /obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, /turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/aisat_interior) +/area/turret_protected/aisat_interior) "buf" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden, /turf/open/floor/plasteel/darkblue/corner, -/area/ai_monitored/turret_protected/aisat_interior) +/area/turret_protected/aisat_interior) "bug" = ( /obj/machinery/status_display{ density = 0; @@ -41952,7 +42002,7 @@ /turf/open/floor/plasteel/vault{ dir = 4 }, -/area/ai_monitored/turret_protected/aisat_interior) +/area/turret_protected/aisat_interior) "buh" = ( /obj/machinery/light, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -41961,7 +42011,7 @@ /turf/open/floor/plasteel/darkblue/corner{ dir = 8 }, -/area/ai_monitored/turret_protected/tcomfoyer{ +/area/turret_protected/tcomfoyer{ name = "\improper MiniSat Foyer" }) "bui" = ( @@ -42449,7 +42499,7 @@ /turf/open/floor/carpet, /area/bridge) "buZ" = ( -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /turf/open/floor/carpet, /area/bridge) "bva" = ( @@ -42910,17 +42960,17 @@ /turf/open/space, /area/space) "bvL" = ( -/obj/structure/lattice, -/obj/structure/transit_tube/curved{ - dir = 4 +/obj/structure/transit_tube{ + icon_state = "E-NW" }, +/obj/structure/lattice, /turf/open/space, /area/space) "bvM" = ( -/obj/structure/lattice, -/obj/structure/transit_tube/curved/flipped{ - dir = 8 +/obj/structure/transit_tube{ + icon_state = "W-NE" }, +/obj/structure/lattice, /turf/open/space, /area/space) "bvN" = ( @@ -42928,6 +42978,9 @@ dir = 1; pixel_y = 1 }, +/obj/structure/transit_tube{ + icon_state = "D-NW" + }, /obj/structure/lattice, /turf/open/space, /area/space) @@ -43116,8 +43169,9 @@ "bwj" = ( /obj/machinery/door/firedoor, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/door/airlock/glass{ - name = "Library" +/obj/machinery/door/airlock/centcom{ + name = "Library"; + opacity = 1 }, /turf/open/floor/wood, /area/library) @@ -43126,8 +43180,9 @@ req_access_txt = 1 }, /obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass{ - name = "Library" +/obj/machinery/door/airlock/centcom{ + name = "Library"; + opacity = 1 }, /turf/open/floor/wood, /area/library) @@ -43267,7 +43322,7 @@ d2 = 8; icon_state = "1-8" }, -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /turf/open/floor/carpet, /area/crew_quarters/heads) "bwu" = ( @@ -43391,7 +43446,7 @@ name = "\improper Captain's Quarters" }) "bwJ" = ( -/obj/machinery/holopad{ +/obj/machinery/hologram/holopad{ pixel_x = 9; pixel_y = -9 }, @@ -43687,7 +43742,7 @@ req_access_txt = "16" }, /turf/open/floor/greengrid, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "bxj" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 @@ -44194,7 +44249,7 @@ }) "byc" = ( /obj/structure/closet, -/obj/effect/decal/cleanable/cobweb/cobweb2, +/obj/effect/decal/cleanable/cobweb2, /obj/item/weapon/poster/contraband, /obj/effect/spawner/lootdrop/maintenance, /turf/open/floor/plating, @@ -44400,7 +44455,7 @@ /turf/open/floor/plasteel/black, /area/bridge) "byx" = ( -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /obj/machinery/status_display{ density = 0; layer = 4; @@ -44998,17 +45053,18 @@ name = "Arrivals" }) "bzx" = ( +/obj/item/device/radio/intercom{ + freerange = 0; + frequency = 1459; + name = "Station Intercom (General)"; + pixel_x = 0; + pixel_y = -25 + }, /obj/machinery/camera{ c_tag = "Arrivals - Middle Arm - Far"; dir = 1; network = list("SS13") }, -/obj/machinery/status_display{ - density = 0; - layer = 4; - pixel_x = 0; - pixel_y = -32 - }, /turf/open/floor/plasteel/warning, /area/hallway/secondary/entry{ name = "Arrivals" @@ -45651,7 +45707,7 @@ /turf/open/floor/plasteel/vault{ dir = 8 }, -/area/ai_monitored/turret_protected/ai) +/area/turret_protected/ai) "bAC" = ( /obj/effect/landmark/start{ name = "Bartender" @@ -45787,7 +45843,7 @@ }, /mob/living/simple_animal/bot/cleanbot, /turf/open/floor/plasteel/darkblue/corner, -/area/ai_monitored/turret_protected/aisat_interior) +/area/turret_protected/aisat_interior) "bAR" = ( /turf/closed/wall, /area/crew_quarters/theatre) @@ -46155,7 +46211,7 @@ name = "\improper Telecoms Control Room" }) "bBu" = ( -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, @@ -46698,7 +46754,7 @@ "bCu" = ( /obj/structure/table/wood/poker, /obj/effect/spawner/lootdrop{ - loot = list(/obj/item/weapon/gun/ballistic/revolver/russian = 5, /obj/item/weapon/storage/box/syndie_kit/throwing_weapons, /obj/item/toy/cards/deck/syndicate = 2); + loot = list(/obj/item/weapon/gun/projectile/revolver/russian = 5, /obj/item/weapon/storage/box/syndie_kit/throwing_weapons, /obj/item/toy/cards/deck/syndicate = 2); name = "gambling valuables spawner" }, /turf/open/floor/wood, @@ -47093,7 +47149,7 @@ name = "Arrivals" }) "bDi" = ( -/obj/effect/decal/cleanable/cobweb/cobweb2, +/obj/effect/decal/cleanable/cobweb2, /obj/structure/reagent_dispensers/fueltank, /turf/open/floor/plating, /area/maintenance/fpmaint2{ @@ -47224,7 +47280,7 @@ /turf/open/floor/wood, /area/library) "bDx" = ( -/obj/machinery/portable_atmospherics/canister/nitrogen, +/obj/machinery/portable_atmospherics/canister/bz, /turf/open/floor/plasteel/bot, /area/atmos) "bDy" = ( @@ -47247,7 +47303,7 @@ /turf/open/floor/wood, /area/library) "bDB" = ( -/obj/effect/decal/cleanable/cobweb/cobweb2, +/obj/effect/decal/cleanable/cobweb2, /turf/open/floor/wood, /area/library) "bDC" = ( @@ -47595,7 +47651,7 @@ /turf/open/floor/plasteel/bar, /area/crew_quarters/bar) "bDZ" = ( -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /turf/open/floor/plasteel/bar, /area/crew_quarters/bar) "bEa" = ( @@ -48603,7 +48659,7 @@ /turf/open/floor/wood, /area/crew_quarters/bar) "bFP" = ( -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/carpet, /area/crew_quarters/theatre) @@ -48645,7 +48701,7 @@ }, /area/atmos) "bFU" = ( -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/plasteel, /area/atmos) @@ -48875,7 +48931,7 @@ name = "Port Maintenance" }) "bGw" = ( -/obj/structure/light_construct{ +/obj/machinery/light_construct{ dir = 8 }, /turf/open/floor/wood, @@ -48943,10 +48999,6 @@ pixel_x = -32; pixel_y = 0 }, -/obj/machinery/camera/autoname{ - dir = 4; - network = list("SS13") - }, /turf/open/floor/wood, /area/library) "bGD" = ( @@ -49263,7 +49315,7 @@ name = "\improper Command Hallway" }) "bGX" = ( -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /obj/structure/cable/yellow{ d1 = 4; d2 = 8; @@ -49992,7 +50044,7 @@ }, /area/atmos) "bHS" = ( -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /turf/open/floor/plasteel/caution{ dir = 8 }, @@ -50922,7 +50974,7 @@ }, /area/tcommsat/server) "bJL" = ( -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /obj/structure/cable/yellow{ d1 = 1; d2 = 4; @@ -51094,7 +51146,7 @@ /turf/open/floor/wood, /area/library) "bKb" = ( -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /turf/open/floor/wood, /area/library) "bKc" = ( @@ -52829,7 +52881,7 @@ /turf/open/floor/wood, /area/security/vacantoffice) "bNk" = ( -/obj/structure/light_construct{ +/obj/machinery/light_construct{ dir = 4 }, /turf/open/floor/wood, @@ -52885,7 +52937,7 @@ name = "Port Maintenance" }) "bNq" = ( -/obj/effect/decal/cleanable/cobweb/cobweb2, +/obj/effect/decal/cleanable/cobweb2, /obj/structure/rack{ dir = 8; layer = 2.9 @@ -53359,7 +53411,7 @@ /area/bridge) "bOg" = ( /obj/structure/rack, -/obj/item/weapon/circuitboard/machine/telecomms/bus, +/obj/machinery/telecomms/bus, /obj/item/weapon/circuitboard/machine/telecomms/broadcaster, /obj/machinery/atmospherics/components/unary/vent_pump{ dir = 1; @@ -53376,7 +53428,7 @@ }) "bOh" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /obj/structure/cable/yellow{ d1 = 1; d2 = 2; @@ -53502,7 +53554,7 @@ /turf/open/floor/plasteel, /area/atmos) "bOv" = ( -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /turf/open/floor/plasteel, /area/atmos) "bOw" = ( @@ -53857,13 +53909,13 @@ network = list("SS13") }, /obj/structure/table/wood, -/obj/item/device/taperecorder, -/obj/item/device/tape, /turf/open/floor/wood, /area/library) "bOZ" = ( /obj/machinery/light/small, -/obj/machinery/libraryscanner, +/obj/machinery/photocopier{ + pixel_y = 3 + }, /turf/open/floor/wood, /area/library) "bPa" = ( @@ -53874,10 +53926,16 @@ /turf/open/floor/wood, /area/library) "bPb" = ( -/obj/structure/chair/stool/bar, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/bar, -/area/crew_quarters/bar) +/obj/machinery/firealarm{ + dir = 4; + pixel_x = 24 + }, +/obj/structure/table/wood, +/obj/item/weapon/clipboard, +/obj/item/device/taperecorder, +/obj/item/device/tape, +/turf/open/floor/wood, +/area/library) "bPc" = ( /obj/structure/easel, /obj/item/weapon/canvas/twentythreeXtwentythree, @@ -54178,7 +54236,7 @@ icon_state = "1-2" }, /obj/structure/window/reinforced, -/obj/effect/decal/cleanable/cobweb/cobweb2, +/obj/effect/decal/cleanable/cobweb2, /obj/structure/showcase{ desc = "A flimsy model of a standard NanoTrasen automated loyalty implant machine. With secure positioning harnesses and a robotic surgical injector, brain damage and other serious medical anomalies are now up to 60% less likely!"; icon = 'icons/obj/machines/implantchair.dmi'; @@ -54440,7 +54498,7 @@ icon_state = "alarm0"; pixel_x = 24 }, -/turf/open/floor/wood, +/turf/open/floor/carpet, /area/security/vacantoffice) "bPX" = ( /obj/structure/table, @@ -54613,7 +54671,6 @@ network = list("SS13","tcomm") }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/ntnet_relay, /turf/open/floor/plasteel/black{ name = "Mainframe Floor"; initial_gas_mix = "n2=100;TEMP=80" @@ -54733,7 +54790,9 @@ name = "Private Study"; req_access_txt = "37" }, -/turf/open/floor/engine/cult, +/turf/open/floor/plasteel/cult{ + dir = 2 + }, /area/library) "bQz" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -54777,7 +54836,7 @@ name = "E.V.A. Storage" }) "bQB" = ( -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /turf/open/floor/plasteel/warning{ dir = 8 }, @@ -55127,7 +55186,7 @@ }, /area/crew_quarters/kitchen) "bRh" = ( -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /turf/open/floor/plasteel/cafeteria{ dir = 5 }, @@ -55443,7 +55502,7 @@ dir = 1; icon_state = "comfychair" }, -/turf/open/floor/mineral/plastitanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "bRO" = ( /obj/structure/cable/yellow{ @@ -55561,7 +55620,7 @@ name = "Port Maintenance" }) "bRZ" = ( -/obj/effect/decal/cleanable/cobweb/cobweb2, +/obj/effect/decal/cleanable/cobweb2, /obj/structure/closet/emcloset, /turf/open/floor/plating, /area/maintenance/fpmaint2{ @@ -55620,23 +55679,26 @@ /obj/structure/table/wood, /obj/item/weapon/dice/d20, /obj/item/weapon/dice, -/obj/effect/decal/cleanable/cobweb/cobweb2, +/obj/effect/decal/cleanable/cobweb2, /turf/open/floor/wood, /area/library) "bSh" = ( -/obj/structure/destructible/cult/tome, +/obj/structure/cult/tome, /obj/machinery/newscaster{ pixel_x = -30; pixel_y = 0 }, /obj/item/clothing/under/suit_jacket/red, /obj/effect/decal/cleanable/cobweb, -/obj/item/weapon/book/codex_gigas, -/turf/open/floor/engine/cult, +/turf/open/floor/plasteel/cult{ + dir = 2 + }, /area/library) "bSi" = ( /obj/structure/chair/comfy/brown, -/turf/open/floor/engine/cult, +/turf/open/floor/plasteel/cult{ + dir = 2 + }, /area/library) "bSj" = ( /obj/effect/landmark{ @@ -55649,7 +55711,9 @@ pixel_x = 30; pixel_y = 0 }, -/turf/open/floor/engine/cult, +/turf/open/floor/plasteel/cult{ + dir = 2 + }, /area/library) "bSk" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -55751,12 +55815,12 @@ d2 = 2; icon_state = "1-2" }, -/obj/item/bodypart/chest/robot{ +/obj/item/robot_parts/chest{ name = "cyborg torso"; pixel_x = -2; pixel_y = 2 }, -/obj/item/bodypart/head/robot{ +/obj/item/robot_parts/head{ name = "cyborg head"; pixel_x = 3; pixel_y = 2 @@ -55806,7 +55870,7 @@ }) "bSw" = ( /obj/effect/decal/cleanable/dirt, -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /turf/open/floor/carpet, /area/assembly/showroom{ name = "\improper Corporate Showroom" @@ -56314,7 +56378,7 @@ name = "\improper MiniSat Exterior" }) "bTn" = ( -/turf/open/floor/mineral/plastitanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "bTo" = ( /obj/structure/cable/yellow{ @@ -56352,7 +56416,7 @@ name = "Port Maintenance" }) "bTs" = ( -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /obj/structure/extinguisher_cabinet{ pixel_x = -27; pixel_y = 0 @@ -56386,10 +56450,6 @@ pixel_y = 0 }, /obj/machinery/photocopier, -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, /turf/open/floor/wood, /area/library) "bTx" = ( @@ -56399,7 +56459,9 @@ pixel_y = 7 }, /obj/item/weapon/pen/invisible, -/turf/open/floor/engine/cult, +/turf/open/floor/plasteel/cult{ + dir = 2 + }, /area/library) "bTy" = ( /obj/item/device/taperecorder{ @@ -56410,13 +56472,17 @@ pixel_y = -25 }, /obj/structure/table/wood, -/turf/open/floor/engine/cult, +/turf/open/floor/plasteel/cult{ + dir = 2 + }, /area/library) "bTz" = ( /obj/structure/bookcase{ name = "Forbidden Knowledge" }, -/turf/open/floor/engine/cult, +/turf/open/floor/plasteel/cult{ + dir = 2 + }, /area/library) "bTA" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -57126,7 +57192,7 @@ "bUy" = ( /obj/structure/table, /obj/machinery/microwave, -/turf/open/floor/mineral/plastitanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "bUz" = ( /obj/structure/cable/yellow{ @@ -58427,20 +58493,9 @@ }, /area/maintenance/starboard) "bWI" = ( -/obj/machinery/door/airlock/external{ - name = "Engineering External Access"; - req_access = null; - req_access_txt = "10;13" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/structure/fans/tiny, +/mob/living/simple_animal/mouse, /turf/open/floor/plating, -/area/engine/engineering) +/area/maintenance/starboard) "bWJ" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ dir = 8 @@ -60235,7 +60290,7 @@ }) "bZU" = ( /obj/structure/closet, -/obj/item/clothing/neck/stethoscope, +/obj/item/clothing/tie/stethoscope, /obj/item/weapon/hemostat, /obj/effect/spawner/lootdrop/maintenance, /turf/open/floor/plating, @@ -60446,7 +60501,7 @@ /obj/effect/landmark/start{ name = "Botanist" }, -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /turf/open/floor/plasteel, /area/hydroponics) "cat" = ( @@ -60735,7 +60790,7 @@ name = "Aft Maintenance" }) "caT" = ( -/obj/structure/light_construct, +/obj/machinery/light_construct, /turf/open/floor/plating{ icon_state = "panelscorched" }, @@ -62195,6 +62250,9 @@ /turf/open/floor/plasteel/black, /area/atmos) "cdo" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ + dir = 5 + }, /obj/structure/window/reinforced{ dir = 4; pixel_x = 0 @@ -62203,9 +62261,6 @@ dir = 1; pixel_y = 0 }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/visible{ - dir = 8 - }, /turf/open/floor/plasteel/black, /area/atmos) "cdp" = ( @@ -62342,12 +62397,11 @@ id = "whiteship"; launch_status = 0; name = "NT Recovery White-Ship"; - port_angle = -90; - preferred_direction = 4; roundstart_move = "whiteship_away"; + travelDir = 180; width = 27 }, -/obj/machinery/door/airlock/titanium{ +/obj/machinery/door/airlock/shuttle{ name = "recovery shuttle external airlock" }, /obj/effect/decal/cleanable/dirt{ @@ -62362,7 +62416,7 @@ name = "SS13: Auxiliary Dock, Station-Port"; width = 27 }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/abandoned) "cdz" = ( /obj/structure/window/reinforced, @@ -62468,7 +62522,7 @@ d2 = 4; icon_state = "2-4" }, -/obj/structure/light_construct{ +/obj/machinery/light_construct{ dir = 8 }, /turf/open/floor/plating, @@ -62511,7 +62565,7 @@ /obj/structure/rack, /obj/item/stack/sheet/cardboard, /obj/item/device/radio/off, -/obj/structure/light_construct{ +/obj/machinery/light_construct{ dir = 1 }, /obj/effect/spawner/lootdrop/maintenance, @@ -62587,7 +62641,7 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/item/clothing/neck/stethoscope, +/obj/item/clothing/tie/stethoscope, /turf/open/floor/plating{ icon_state = "platingdmg1" }, @@ -62674,7 +62728,7 @@ name = "Medbay Storage" }) "cdZ" = ( -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /obj/effect/landmark/start{ name = "Medical Doctor" }, @@ -62694,8 +62748,6 @@ network = list("SS13","Medbay") }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/limbgrower, -/obj/item/weapon/reagent_containers/glass/beaker/synthflesh, /turf/open/floor/plasteel/whiteblue/side{ dir = 4 }, @@ -62806,7 +62858,7 @@ /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ dir = 2 }, -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /turf/open/floor/plasteel/white, /area/medical/medbay{ name = "Medbay Central" @@ -62896,7 +62948,7 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 5 }, -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /obj/structure/disposalpipe/segment, /turf/open/floor/plasteel/white, /area/medical/research{ @@ -62974,7 +63026,6 @@ }) "ceA" = ( /obj/machinery/light/small, -/obj/item/toy/dummy, /obj/item/toy/prize/honk{ pixel_y = 12 }, @@ -63601,8 +63652,8 @@ pixel_x = 0; pixel_y = 2 }, -/obj/item/clothing/neck/stethoscope, -/obj/item/clothing/neck/stethoscope, +/obj/item/clothing/tie/stethoscope, +/obj/item/clothing/tie/stethoscope, /obj/item/weapon/gun/syringe, /obj/structure/table/glass, /turf/open/floor/plasteel/whiteblue/side{ @@ -63992,6 +64043,7 @@ scrub_N2O = 0; scrub_Toxins = 0 }, +/mob/living/simple_animal/mouse, /turf/open/floor/plasteel/floorgrime, /area/maintenance/incinerator) "cgp" = ( @@ -65024,7 +65076,7 @@ d2 = 2; icon_state = "0-2" }, -/obj/item/clothing/neck/stethoscope, +/obj/item/clothing/tie/stethoscope, /turf/open/floor/plasteel/vault, /area/medical/sleeper{ name = "Sleepers" @@ -67163,7 +67215,7 @@ pixel_y = 2 }, /obj/structure/table/wood, -/obj/structure/light_construct/small{ +/obj/machinery/light_construct/small{ dir = 1 }, /obj/machinery/newscaster{ @@ -67295,7 +67347,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 6 }, -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /turf/open/floor/plasteel/white, /area/medical/sleeper{ name = "Sleepers" @@ -67850,7 +67902,7 @@ pixel_y = 2 }, /obj/structure/table, -/obj/effect/decal/cleanable/cobweb/cobweb2, +/obj/effect/decal/cleanable/cobweb2, /obj/machinery/reagentgrinder{ pixel_y = 4 }, @@ -68028,7 +68080,7 @@ /turf/open/floor/plasteel/black, /area/medical/surgery) "cni" = ( -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /turf/open/floor/plasteel/black, /area/medical/surgery) "cnj" = ( @@ -68394,7 +68446,7 @@ /turf/open/floor/plasteel/white, /area/toxins/lab) "cnP" = ( -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /turf/open/floor/plasteel/warnwhite{ dir = 4 }, @@ -68764,7 +68816,7 @@ name = "Aft Maintenance" }) "cou" = ( -/obj/structure/light_construct/small{ +/obj/machinery/light_construct/small{ dir = 4 }, /obj/machinery/computer/security/telescreen/entertainment{ @@ -68952,7 +69004,7 @@ d2 = 4; icon_state = "2-4" }, -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /obj/structure/disposalpipe/segment, /turf/open/floor/plasteel/white, /area/medical/chemistry) @@ -69116,7 +69168,12 @@ "cpa" = ( /obj/structure/grille, /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/window/reinforced/tinted/fulltile, +/obj/structure/window/reinforced/tinted{ + dir = 5; + health = 120; + icon_state = "twindow"; + reinf = 0 + }, /turf/open/floor/plating, /area/medical/research{ name = "Research Division" @@ -69221,7 +69278,7 @@ /area/toxins/explab) "cpj" = ( /obj/structure/window/reinforced, -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /turf/open/floor/plasteel/black, /area/construction/hallway{ name = "\improper MiniSat Exterior" @@ -70002,7 +70059,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /turf/open/floor/plasteel/white, /area/toxins/explab) "cqC" = ( @@ -70310,7 +70367,7 @@ /obj/structure/closet/wardrobe/chemistry_white{ pixel_x = -3 }, -/obj/item/weapon/storage/backpack/satchel/chem, +/obj/item/weapon/storage/backpack/satchel_chem, /obj/machinery/airalarm{ dir = 4; icon_state = "alarm0"; @@ -70930,11 +70987,14 @@ /turf/open/space, /area/space) "crZ" = ( -/obj/machinery/atmospherics/components/unary/outlet_injector/on{ - dir = 8 +/obj/machinery/atmospherics/components/unary/outlet_injector{ + dir = 8; + on = 1; + pixel_y = 0; + use_power = 0 }, /turf/open/floor/plating/airless, -/area/maintenance/incinerator) +/area/space) "csa" = ( /obj/structure/window/reinforced{ dir = 8 @@ -70998,7 +71058,7 @@ /obj/machinery/porta_turret/syndicate{ dir = 4 }, -/turf/closed/wall/mineral/plastitanium, +/turf/closed/indestructible/opshuttle, /area/shuttle/syndicate) "csi" = ( /obj/structure/cable/yellow{ @@ -71041,7 +71101,7 @@ /obj/effect/landmark/start{ name = "Medical Doctor" }, -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /turf/open/floor/plasteel/white, /area/medical/surgery) "csm" = ( @@ -71892,7 +71952,7 @@ /obj/item/weapon/screwdriver{ pixel_y = 6 }, -/obj/item/clothing/neck/stethoscope, +/obj/item/clothing/tie/stethoscope, /obj/item/weapon/wrench/medical, /turf/open/floor/plasteel/warnwhite{ dir = 4 @@ -71985,7 +72045,7 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /turf/open/floor/plasteel/barber{ dir = 8 }, @@ -73028,7 +73088,6 @@ pixel_x = 0; pixel_y = 32 }, -/obj/effect/landmark/xmastree/rdrod, /turf/open/floor/plasteel/warnwhite{ dir = 8 }, @@ -73084,6 +73143,7 @@ /obj/structure/sign/nosmoking_2{ pixel_y = 32 }, +/obj/machinery/portable_atmospherics/canister/bz, /turf/open/floor/plasteel/warning{ dir = 5 }, @@ -73286,7 +73346,7 @@ "cvL" = ( /obj/structure/table/glass, /obj/item/weapon/pen, -/obj/item/clothing/neck/stethoscope, +/obj/item/clothing/tie/stethoscope, /obj/structure/extinguisher_cabinet{ pixel_x = 6; pixel_y = -30 @@ -73670,7 +73730,7 @@ "cww" = ( /obj/structure/table, /obj/item/weapon/folder/white, -/obj/item/clothing/neck/stethoscope, +/obj/item/clothing/tie/stethoscope, /obj/machinery/light/small{ dir = 8 }, @@ -74079,6 +74139,9 @@ /area/toxins/storage) "cxg" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/effect/landmark/start{ + name = "Scientist" + }, /obj/structure/disposalpipe/segment, /turf/open/floor/plasteel/warning{ dir = 4 @@ -74697,7 +74760,7 @@ }, /area/crew_quarters/hor) "cyg" = ( -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /turf/open/floor/plasteel/cafeteria{ dir = 5 }, @@ -74902,7 +74965,7 @@ "cyA" = ( /obj/structure/table, /obj/item/weapon/folder/white, -/obj/item/clothing/neck/stethoscope, +/obj/item/clothing/tie/stethoscope, /obj/machinery/light/small{ dir = 8 }, @@ -75042,7 +75105,7 @@ /obj/effect/landmark/start{ name = "Geneticist" }, -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 6 }, @@ -75343,6 +75406,7 @@ /obj/machinery/light_switch{ pixel_y = -23 }, +/obj/machinery/portable_atmospherics/canister/bz, /turf/open/floor/plasteel/warning{ dir = 10 }, @@ -75350,9 +75414,6 @@ "czj" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/structure/disposalpipe/segment, -/obj/effect/landmark/start{ - name = "Scientist" - }, /turf/open/floor/plasteel/warning{ dir = 6 }, @@ -75799,6 +75860,7 @@ dir = 9; pixel_y = 0 }, +/mob/living/simple_animal/mouse, /turf/open/floor/plating, /area/maintenance/aft{ name = "Aft Maintenance" @@ -77570,7 +77632,7 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /obj/effect/landmark/start{ name = "Scientist" }, @@ -77747,7 +77809,7 @@ }) "cDg" = ( /obj/item/weapon/cigbutt, -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /turf/open/floor/plasteel/cafeteria{ dir = 5 }, @@ -77782,7 +77844,12 @@ }) "cDj" = ( /obj/structure/grille, -/obj/structure/window/reinforced/tinted/fulltile, +/obj/structure/window/reinforced/tinted{ + dir = 5; + health = 120; + icon_state = "twindow"; + reinf = 0 + }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, @@ -78459,12 +78526,9 @@ }, /obj/structure/table, /obj/item/weapon/paper_bin{ - pixel_x = 6; + pixel_x = -2; pixel_y = 4 }, -/obj/item/weapon/paper/morguereminder{ - pixel_x = -4 - }, /obj/effect/landmark{ name = "revenantspawn" }, @@ -81022,7 +81086,7 @@ /obj/effect/landmark{ name = "lightsout" }, -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /turf/open/floor/plasteel/white, /area/medical/virology) "cIL" = ( @@ -81323,7 +81387,7 @@ pixel_x = 3; pixel_y = 2 }, -/obj/effect/decal/cleanable/cobweb/cobweb2, +/obj/effect/decal/cleanable/cobweb2, /turf/open/floor/plasteel/floorgrime, /area/maintenance/aft{ name = "Aft Maintenance" @@ -82118,7 +82182,7 @@ dir = 2; on = 1 }, -/obj/effect/decal/cleanable/cobweb/cobweb2, +/obj/effect/decal/cleanable/cobweb2, /turf/open/floor/plasteel/black, /area/toxins/server{ name = "\improper Research Division Server Room" @@ -82280,7 +82344,6 @@ pixel_x = 32; pixel_y = 0 }, -/obj/item/device/instrument/eguitar, /turf/open/floor/plating/warnplate{ dir = 8 }, @@ -82322,7 +82385,7 @@ /area/medical/virology) "cKF" = ( /obj/structure/closet/wardrobe/virology_white, -/obj/item/weapon/storage/backpack/satchel/vir, +/obj/item/weapon/storage/backpack/satchel_vir, /obj/structure/disposalpipe/segment{ dir = 8; icon_state = "pipe-c" @@ -82515,7 +82578,7 @@ /turf/open/floor/plasteel/white, /area/assembly/robotics) "cKW" = ( -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /turf/open/floor/plasteel/white, /area/assembly/robotics) "cKX" = ( @@ -83094,7 +83157,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "cLV" = ( /obj/machinery/computer/operating{ @@ -83327,7 +83390,7 @@ name = "Aft Maintenance" }) "cMp" = ( -/obj/structure/light_construct/small, +/obj/machinery/light_construct/small, /obj/structure/table/wood/poker, /obj/item/toy/cards/deck, /obj/structure/sign/poster{ @@ -84806,6 +84869,9 @@ /turf/open/floor/plating/airless, /area/space) "cOH" = ( +/obj/machinery/atmospherics/components/unary/outlet_injector{ + dir = 4 + }, /obj/structure/disposalpipe/segment{ dir = 4 }, @@ -84813,7 +84879,7 @@ dir = 6 }, /turf/open/floor/plating/airless, -/area/medical/virology) +/area/space) "cOI" = ( /obj/structure/grille, /obj/structure/window/reinforced/fulltile, @@ -85008,7 +85074,7 @@ pixel_x = 0; pixel_y = 25 }, -/obj/effect/decal/cleanable/cobweb/cobweb2, +/obj/effect/decal/cleanable/cobweb2, /obj/structure/table/wood, /turf/open/floor/plasteel/vault, /area/chapel/main) @@ -85377,11 +85443,11 @@ /turf/open/floor/plating/airless, /area/space) "cPE" = ( -/obj/machinery/atmospherics/components/unary/outlet_injector/on{ +/obj/machinery/atmospherics/components/unary/outlet_injector{ dir = 1 }, /turf/open/floor/plating/airless, -/area/medical/virology) +/area/space) "cPF" = ( /obj/structure/bodycontainer/morgue, /turf/open/floor/plasteel/black, @@ -85580,7 +85646,10 @@ /obj/structure/flora/ausbushes/fullgrass, /obj/structure/flora/ausbushes/ppflowers, /obj/structure/flora/ausbushes/palebush, -/obj/structure/window/reinforced/fulltile, +/obj/structure/window/reinforced{ + dir = 5; + health = 1e+007 + }, /turf/open/floor/grass, /area/hallway/secondary/exit{ name = "\improper Departure Lounge" @@ -85828,7 +85897,12 @@ /area/chapel/office) "cQv" = ( /obj/structure/grille, -/obj/structure/window/reinforced/tinted/fulltile, +/obj/structure/window/reinforced/tinted{ + dir = 5; + health = 120; + icon_state = "twindow"; + reinf = 0 + }, /turf/open/floor/plasteel/black, /area/chapel/office) "cQw" = ( @@ -85861,7 +85935,6 @@ dir = 8; initialize_directions = 11 }, -/obj/effect/landmark/xmastree, /turf/open/floor/carpet, /area/chapel/main) "cQz" = ( @@ -86263,10 +86336,13 @@ /obj/structure/flora/ausbushes/fullgrass, /obj/structure/flora/ausbushes/brflowers, /obj/structure/flora/ausbushes/sunnybush, +/obj/structure/window/reinforced{ + dir = 5; + health = 1e+007 + }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/structure/window/reinforced/fulltile, /turf/open/floor/grass, /area/hallway/secondary/exit{ name = "\improper Departure Lounge" @@ -86669,7 +86745,7 @@ pixel_x = -2; pixel_y = 8 }, -/obj/effect/decal/cleanable/cobweb/cobweb2, +/obj/effect/decal/cleanable/cobweb2, /obj/structure/table/wood, /turf/open/floor/plasteel/black, /area/chapel/main) @@ -86709,7 +86785,7 @@ }, /area/chapel/main) "cSd" = ( -/obj/effect/decal/cleanable/cobweb/cobweb2, +/obj/effect/decal/cleanable/cobweb2, /obj/structure/chair/comfy/black{ dir = 8 }, @@ -87307,7 +87383,7 @@ name = "\improper Departure Lounge" }) "cTf" = ( -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /turf/open/floor/plasteel/delivery, /area/hallway/secondary/exit{ name = "\improper Departure Lounge" @@ -87532,11 +87608,12 @@ /turf/open/floor/plasteel/black, /area/chapel/main) "cTE" = ( -/obj/machinery/atmospherics/components/unary/outlet_injector/on{ - dir = 8 +/turf/closed/wall/shuttle{ + tag = "icon-wall3 (NORTHWEST)"; + icon_state = "wall3"; + dir = 9 }, -/turf/open/floor/plating/airless, -/area/toxins/xenobiology) +/area/shuttle/escape) "cTF" = ( /obj/machinery/door/window{ dir = 4; @@ -87595,7 +87672,7 @@ /turf/open/floor/plasteel/vault, /area/chapel/main) "cTK" = ( -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /turf/open/floor/plasteel/vault, /area/chapel/main) "cTL" = ( @@ -88029,7 +88106,7 @@ /area/chapel/main) "cUu" = ( /obj/machinery/computer/shuttle/syndicate, -/turf/open/floor/mineral/plastitanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "cUv" = ( /obj/structure/table/glass, @@ -88355,7 +88432,7 @@ /turf/open/floor/plasteel/white, /area/toxins/xenobiology) "cUY" = ( -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /obj/structure/cable/yellow{ d1 = 1; d2 = 2; @@ -88904,7 +88981,7 @@ /obj/structure/chair/stool{ pixel_y = 8 }, -/turf/open/floor/mineral/plastitanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "cWb" = ( /obj/structure/sign/securearea{ @@ -89123,7 +89200,7 @@ possible_destinations = "pod_asteroid1"; shuttleId = "pod1" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/pod_1) "cWt" = ( /obj/structure/grille, @@ -89287,7 +89364,7 @@ /obj/item/weapon/storage/pod{ pixel_x = -26 }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/pod_1) "cWG" = ( /obj/machinery/door/window/northleft{ @@ -89411,7 +89488,7 @@ possible_destinations = "pod_asteroid4"; shuttleId = "pod4" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/pod_4) "cWP" = ( /obj/structure/disposalpipe/segment, @@ -89465,6 +89542,7 @@ /area/toxins/xenobiology) "cWS" = ( /obj/machinery/door/poddoor{ + auto_close = 300; id = "smindicate"; name = "outer blast door" }, @@ -89482,8 +89560,8 @@ height = 24; id = "syndicate"; name = "syndicate infiltrator"; - port_angle = 0; roundstart_move = "syndicate_away"; + travelDir = 180; width = 18 }, /obj/docking_port/stationary{ @@ -89735,7 +89813,7 @@ pixel_x = 6; pixel_y = -32 }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/pod_4) "cXl" = ( /obj/structure/disposalpipe/trunk{ @@ -89752,7 +89830,7 @@ name = "EXTERNAL AIRLOCK"; pixel_x = 0 }, -/turf/closed/wall/mineral/plastitanium, +/turf/closed/indestructible/opshuttle, /area/shuttle/syndicate) "cXn" = ( /obj/machinery/atmospherics/components/unary/portables_connector/visible, @@ -89854,11 +89932,11 @@ pixel_x = 4; pixel_y = 1 }, -/turf/open/floor/mineral/plastitanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "cXz" = ( /obj/structure/frame/computer, -/turf/open/floor/mineral/plastitanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "cXA" = ( /obj/structure/table, @@ -89867,7 +89945,7 @@ name = "remote shutter control"; req_access_txt = "150" }, -/turf/open/floor/mineral/plastitanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "cXB" = ( /obj/structure/table, @@ -89875,7 +89953,7 @@ pixel_x = 3; pixel_y = 3 }, -/turf/open/floor/mineral/plastitanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "cXC" = ( /obj/structure/table, @@ -89899,7 +89977,7 @@ pixel_x = 3; pixel_y = 3 }, -/turf/open/floor/mineral/plastitanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "cXD" = ( /obj/structure/table, @@ -89907,7 +89985,7 @@ amount = 10 }, /obj/item/device/multitool, -/turf/open/floor/mineral/plastitanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "cXE" = ( /obj/item/device/radio/intercom{ @@ -89919,15 +89997,16 @@ subspace_transmission = 1; syndie = 1 }, -/turf/open/floor/mineral/plastitanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "cXF" = ( /obj/structure/closet/syndicate/personal, -/turf/open/floor/mineral/plastitanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "cXG" = ( /turf/open/space, -/turf/closed/wall/mineral/plastitanium{ +/turf/closed/wall/shuttle{ + dir = 2; icon_state = "diagonalWall3" }, /area/shuttle/syndicate) @@ -89936,11 +90015,11 @@ name = "Cockpit"; req_access_txt = "150" }, -/turf/open/floor/mineral/plastitanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "cXI" = ( /turf/open/space, -/turf/closed/wall/mineral/plastitanium{ +/turf/closed/wall/shuttle{ dir = 4; icon_state = "diagonalWall3" }, @@ -89949,7 +90028,7 @@ /obj/structure/table, /obj/item/stack/cable_coil, /obj/item/weapon/crowbar/red, -/turf/open/floor/mineral/plastitanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "cXK" = ( /obj/structure/table, @@ -89957,36 +90036,41 @@ pixel_x = 1; pixel_y = 2 }, -/turf/open/floor/mineral/plastitanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "cXL" = ( -/obj/effect/landmark/xmastree, -/turf/open/floor/wood, -/area/crew_quarters/bar) +/obj/structure/chair{ + dir = 4 + }, +/turf/open/floor/plasteel/shuttle/red, +/area/shuttle/syndicate) "cXM" = ( /obj/structure/chair{ dir = 8 }, -/turf/open/floor/mineral/plastitanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "cXN" = ( -/obj/structure/disposalpipe/segment, -/turf/closed/wall/r_wall, -/area/toxins/xenobiology) +/turf/open/space, +/turf/closed/wall/shuttle{ + dir = 8; + icon_state = "diagonalWall3" + }, +/area/shuttle/syndicate) "cXO" = ( /obj/machinery/door/window{ name = "Ready Room"; req_access_txt = "150" }, -/turf/open/floor/mineral/plastitanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "cXP" = ( /obj/machinery/suit_storage_unit/syndicate, -/turf/open/floor/mineral/plastitanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "cXQ" = ( /obj/structure/closet/syndicate/nuclear, -/turf/open/floor/mineral/plastitanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "cXR" = ( /obj/docking_port/stationary{ @@ -90004,14 +90088,14 @@ "cXS" = ( /obj/structure/table, /obj/item/device/aicard, -/turf/open/floor/mineral/plastitanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "cXT" = ( -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/syndicate) "cXU" = ( /turf/open/space, -/turf/closed/wall/mineral/plastitanium{ +/turf/closed/wall/shuttle{ dir = 1; icon_state = "diagonalWall3" }, @@ -90020,11 +90104,11 @@ /obj/machinery/sleeper/syndie{ dir = 4 }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/syndicate) "cXW" = ( /obj/structure/tank_dispenser/oxygen, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/syndicate) "cXX" = ( /obj/machinery/door/window{ @@ -90032,13 +90116,13 @@ name = "EVA Storage"; req_access_txt = "150" }, -/turf/open/floor/mineral/plastitanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "cXY" = ( /obj/machinery/door/airlock/external{ req_access_txt = "150" }, -/turf/open/floor/mineral/plastitanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "cXZ" = ( /obj/machinery/door/window{ @@ -90048,7 +90132,7 @@ name = "EVA Storage"; req_access_txt = "150" }, -/turf/open/floor/mineral/plastitanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "cYa" = ( /obj/structure/grille, @@ -90059,7 +90143,7 @@ /obj/structure/rack, /obj/item/clothing/suit/space/syndicate/black/red, /obj/item/clothing/head/helmet/space/syndicate/black/red, -/turf/open/floor/mineral/plastitanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "cYc" = ( /obj/item/device/radio/intercom{ @@ -90071,15 +90155,15 @@ subspace_transmission = 1; syndie = 1 }, -/turf/open/floor/mineral/plastitanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "cYd" = ( /obj/machinery/recharge_station, -/turf/open/floor/mineral/plastitanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "cYe" = ( /obj/machinery/portable_atmospherics/canister/oxygen, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/syndicate) "cYf" = ( /obj/structure/table, @@ -90089,11 +90173,11 @@ pixel_x = -5; pixel_y = 30 }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/syndicate) "cYg" = ( /obj/structure/bed/roller, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/syndicate) "cYh" = ( /obj/structure/table, @@ -90103,7 +90187,7 @@ /obj/item/device/assembly/voice{ pixel_y = 3 }, -/turf/open/floor/mineral/plastitanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "cYi" = ( /obj/structure/table, @@ -90112,7 +90196,7 @@ pixel_y = 3 }, /obj/item/weapon/stock_parts/cell/high, -/turf/open/floor/mineral/plastitanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "cYj" = ( /obj/structure/table, @@ -90126,13 +90210,13 @@ pixel_x = -8; pixel_y = 4 }, -/turf/open/floor/mineral/plastitanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "cYk" = ( /obj/structure/table, /obj/item/weapon/wrench, /obj/item/device/assembly/infra, -/turf/open/floor/mineral/plastitanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "cYl" = ( /obj/structure/table, @@ -90140,24 +90224,24 @@ pixel_y = 3 }, /obj/item/device/multitool, -/turf/open/floor/mineral/plastitanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "cYm" = ( /obj/structure/sign/bluecross_2, -/turf/closed/wall/mineral/plastitanium, +/turf/closed/indestructible/opshuttle, /area/shuttle/syndicate) "cYn" = ( /obj/machinery/door/window/westright{ name = "Tool Storage"; req_access_txt = "150" }, -/turf/open/floor/mineral/plastitanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "cYo" = ( /obj/structure/table, /obj/item/weapon/storage/toolbox/syndicate, /obj/item/weapon/crowbar/red, -/turf/open/floor/mineral/plastitanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "cYp" = ( /obj/machinery/door/window{ @@ -90165,7 +90249,7 @@ name = "Infirmary"; req_access_txt = "150" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/syndicate) "cYq" = ( /obj/machinery/door/window{ @@ -90175,7 +90259,7 @@ name = "Infirmary"; req_access_txt = "150" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/syndicate) "cYr" = ( /obj/machinery/door/window{ @@ -90183,7 +90267,7 @@ name = "Tool Storage"; req_access_txt = "150" }, -/turf/open/floor/mineral/plastitanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "cYs" = ( /obj/machinery/door/window{ @@ -90191,16 +90275,16 @@ name = "Surgery"; req_access_txt = "150" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/syndicate) "cYt" = ( /obj/structure/window/reinforced{ dir = 1 }, /obj/structure/table, -/obj/item/bodypart/r_arm/robot, -/obj/item/bodypart/l_arm/robot, -/turf/open/floor/mineral/titanium, +/obj/item/robot_parts/r_arm, +/obj/item/robot_parts/l_arm, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/syndicate) "cYu" = ( /obj/structure/table, @@ -90216,13 +90300,13 @@ pixel_x = -3; pixel_y = -3 }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/syndicate) "cYv" = ( /obj/structure/window/reinforced{ dir = 1 }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/syndicate) "cYw" = ( /obj/structure/table, @@ -90233,7 +90317,7 @@ /obj/item/weapon/grenade/syndieminibomb{ pixel_x = -1 }, -/turf/open/floor/mineral/plastitanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "cYx" = ( /obj/structure/table, @@ -90241,7 +90325,7 @@ pixel_y = 5 }, /obj/item/device/sbeacondrop/bomb, -/turf/open/floor/mineral/plastitanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "cYy" = ( /obj/structure/table, @@ -90254,19 +90338,19 @@ pixel_x = -3; pixel_y = -3 }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/syndicate) "cYz" = ( /obj/structure/table, /obj/item/weapon/surgicaldrill, /obj/item/weapon/circular_saw, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/syndicate) "cYA" = ( /obj/machinery/telecomms/allinone{ intercept = 1 }, -/turf/open/floor/mineral/plastitanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "cYB" = ( /obj/structure/table/optable, @@ -90282,7 +90366,7 @@ /obj/structure/mirror{ pixel_x = 30 }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/syndicate) "cYD" = ( /obj/machinery/nuclearbomb/syndicate, @@ -90291,7 +90375,7 @@ name = "Secure Storage"; req_access_txt = "150" }, -/turf/open/floor/mineral/plastitanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "cYE" = ( /obj/structure/shuttle/engine/heater, @@ -90318,7 +90402,7 @@ /obj/effect/landmark{ name = "lightsout" }, -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /turf/open/floor/plasteel/white, /area/toxins/xenobiology) "cYH" = ( @@ -90360,37 +90444,31 @@ /turf/open/floor/plating, /area/shuttle/syndicate) "cYL" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible{ - color = "#330000"; - dir = 4 +/turf/closed/wall/shuttle{ + icon_state = "swall_s6"; + dir = 2 }, -/obj/machinery/atmospherics/components/binary/valve/digital{ - name = "Waste Release" - }, -/turf/open/floor/plasteel/black, -/area/atmos) +/area/shuttle/supply) "cYM" = ( -/turf/closed/wall/mineral/titanium, +/turf/closed/wall/shuttle{ + icon_state = "swall12"; + dir = 2 + }, /area/shuttle/supply) "cYN" = ( -/obj/machinery/light{ - dir = 1 +/turf/closed/wall/shuttle{ + icon_state = "swall_s10"; + dir = 2 }, -/obj/machinery/status_display{ - pixel_y = 30 - }, -/obj/machinery/photocopier{ - pixel_y = 3 - }, -/turf/open/floor/wood, -/area/library) +/area/shuttle/supply) "cYO" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/wood, -/area/library) +/turf/closed/wall/shuttle{ + icon_state = "swall3"; + dir = 2 + }, +/area/shuttle/supply) "cYP" = ( -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/supply) "cYQ" = ( /obj/machinery/conveyor{ @@ -90404,7 +90482,7 @@ /turf/open/floor/plating, /area/shuttle/supply) "cYR" = ( -/obj/machinery/door/airlock/titanium{ +/obj/machinery/door/airlock/shuttle{ name = "Supply Shuttle Airlock"; req_access_txt = "31" }, @@ -90424,10 +90502,10 @@ pixel_x = 24; pixel_y = -8 }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/supply) "cYT" = ( -/obj/machinery/door/airlock/titanium{ +/obj/machinery/door/airlock/shuttle{ name = "Supply Shuttle Airlock"; req_access_txt = "31" }, @@ -90451,58 +90529,35 @@ /turf/open/floor/plasteel/white, /area/toxins/xenobiology) "cYV" = ( -/obj/structure/table/wood, -/obj/item/device/camera_film{ - pixel_x = -3; - pixel_y = 5 +/turf/closed/wall/shuttle{ + icon_state = "swall7"; + dir = 2 }, -/obj/item/device/camera_film{ - pixel_y = 9 - }, -/obj/item/device/radio/intercom{ - dir = 4; - name = "Station Intercom (General)"; - pixel_x = 27 - }, -/turf/open/floor/wood, -/area/library) +/area/shuttle/supply) "cYW" = ( -/turf/open/floor/mineral/titanium/blue, -/turf/closed/wall/mineral/titanium/interior, +/turf/open/floor/plasteel/shuttle, +/turf/closed/wall/shuttle/interior{ + icon_state = "swall_f10" + }, /area/shuttle/supply) "cYX" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 8 +/turf/closed/wall/shuttle{ + icon_state = "swall11"; + dir = 2 }, -/obj/item/device/radio/intercom{ - freerange = 1; - frequency = 1459; - name = "Station Intercom (General)"; - pixel_x = -30 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 8 - }, -/area/hallway/primary/central) +/area/shuttle/supply) "cYY" = ( -/obj/structure/table/wood, -/obj/machinery/computer/libraryconsole/bookmanagement, -/obj/structure/noticeboard{ - desc = "A board for pinning important notices upon. Probably helpful for keeping track of requests."; - dir = 8; - name = "requests board"; - pixel_x = 32; - pixel_y = 0 +/turf/open/floor/plasteel/shuttle, +/turf/closed/wall/shuttle/interior{ + icon_state = "swall_f6" }, -/turf/open/floor/wood, -/area/library) +/area/shuttle/supply) "cYZ" = ( -/obj/machinery/light_switch{ - pixel_x = 28; - pixel_y = 0 +/turf/closed/wall/shuttle{ + icon_state = "swall_s5"; + dir = 2 }, -/turf/open/floor/wood, -/area/library) +/area/shuttle/supply) "cZa" = ( /obj/structure/window/reinforced{ dir = 1 @@ -90511,16 +90566,17 @@ /turf/open/floor/plating, /area/shuttle/supply) "cZb" = ( -/obj/structure/closet/emcloset, -/turf/open/floor/plasteel/black, -/area/hallway/primary/central) -"cZc" = ( -/obj/machinery/firealarm{ - dir = 4; - pixel_x = 24 +/turf/closed/wall/shuttle{ + icon_state = "swall15"; + dir = 2 }, -/turf/open/floor/wood, -/area/library) +/area/shuttle/supply) +"cZc" = ( +/turf/closed/wall/shuttle{ + icon_state = "swall_s9"; + dir = 2 + }, +/area/shuttle/supply) "cZd" = ( /obj/structure/shuttle/engine/propulsion, /turf/open/floor/plating, @@ -90542,10 +90598,16 @@ icon_state = "propulsion"; dir = 4 }, -/turf/closed/wall/mineral/titanium/overspace, +/turf/closed/wall/shuttle{ + icon_state = "swall_s6"; + dir = 2 + }, /area/shuttle/transport) "cZh" = ( -/turf/closed/wall/mineral/titanium, +/turf/closed/wall/shuttle{ + icon_state = "swall12"; + dir = 2 + }, /area/shuttle/transport) "cZi" = ( /obj/structure/window/shuttle, @@ -90558,44 +90620,48 @@ /turf/open/floor/plating, /area/shuttle/transport) "cZk" = ( -/turf/closed/wall/mineral/titanium/overspace, +/turf/closed/wall/shuttle{ + icon_state = "swall_s10"; + dir = 2 + }, /area/shuttle/transport) "cZl" = ( -/turf/open/floor/mineral/titanium/blue, -/turf/closed/wall/mineral/titanium/interior, +/turf/open/floor/plasteel/shuttle, +/turf/closed/wall/shuttle/interior{ + icon_state = "swall_f9" + }, /area/shuttle/transport) "cZm" = ( /obj/machinery/computer/shuttle/ferry/request, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/transport) "cZn" = ( /obj/structure/chair{ dir = 4 }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/transport) "cZo" = ( /obj/structure/chair, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/transport) "cZp" = ( -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/transport) "cZq" = ( -/obj/machinery/door/airlock/titanium, -/turf/open/floor/mineral/titanium/blue, +/obj/machinery/door/airlock/shuttle, +/turf/open/floor/plasteel/shuttle, /area/shuttle/transport) "cZr" = ( -/obj/machinery/door/airlock/titanium, +/obj/machinery/door/airlock/shuttle, /obj/docking_port/mobile{ dir = 8; dwidth = 2; height = 12; id = "ferry"; name = "ferry shuttle"; - port_angle = 0; - preferred_direction = 4; roundstart_move = "ferry_away"; + travelDir = 180; width = 5 }, /obj/docking_port/stationary{ @@ -90607,47 +90673,57 @@ turf_type = /turf/open/space; width = 5 }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/transport) "cZs" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/atmos) -"cZt" = ( -/obj/machinery/atmospherics/components/unary/outlet_injector/on{ - dir = 1; - frequency = 1441; - id = "n2_in" +/turf/open/floor/plasteel/shuttle, +/turf/closed/wall/shuttle/interior{ + icon_state = "swall_f10" }, -/turf/open/floor/plating, -/area/atmos) +/area/shuttle/transport) +"cZt" = ( +/obj/structure/shuttle/engine/propulsion{ + icon_state = "propulsion"; + dir = 4 + }, +/turf/closed/wall/shuttle{ + icon_state = "swall_s5"; + dir = 2 + }, +/area/shuttle/transport) "cZu" = ( /obj/structure/closet/crate, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/transport) "cZv" = ( /obj/structure/chair{ dir = 1 }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/transport) "cZw" = ( -/mob/living/simple_animal/sloth/citrus, -/turf/open/floor/plasteel, -/area/quartermaster/storage) -"cZx" = ( -/obj/machinery/portable_atmospherics/canister/nitrous_oxide, -/turf/open/floor/plasteel/bot, -/area/atmos) -"cZy" = ( -/turf/open/floor/plating/warnplate{ - dir = 1 +/turf/closed/wall/shuttle{ + icon_state = "swall_s9"; + dir = 2 }, -/area/shuttle/auxillary_base) +/area/shuttle/transport) +"cZx" = ( +/turf/closed/wall/shuttle{ + icon_state = "swall_s6"; + dir = 2 + }, +/area/shuttle/abandoned) +"cZy" = ( +/turf/closed/wall/shuttle{ + icon_state = "swall12"; + dir = 2 + }, +/area/shuttle/abandoned) "cZz" = ( -/turf/closed/wall/mineral/titanium, +/turf/closed/wall/shuttle{ + icon_state = "swall14"; + dir = 2 + }, /area/shuttle/abandoned) "cZA" = ( /obj/structure/grille, @@ -90655,19 +90731,20 @@ /turf/open/floor/plating, /area/shuttle/abandoned) "cZB" = ( -/turf/open/floor/plating/warnplate{ - dir = 5 +/turf/closed/wall/shuttle{ + icon_state = "swallc1"; + dir = 2 }, -/area/shuttle/auxillary_base) +/area/shuttle/abandoned) "cZC" = ( -/obj/machinery/door/airlock/titanium{ +/obj/machinery/door/airlock/shuttle{ name = "recovery shuttle external airlock" }, /obj/effect/decal/cleanable/dirt{ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/abandoned) "cZD" = ( /obj/structure/window/reinforced, @@ -90686,20 +90763,23 @@ }, /area/atmos) "cZE" = ( -/turf/open/floor/plating/warnplate{ - dir = 8 +/turf/closed/wall/shuttle{ + icon_state = "swallc2"; + dir = 2 }, -/area/shuttle/auxillary_base) +/area/shuttle/abandoned) "cZF" = ( -/turf/open/floor/plating, -/area/shuttle/auxillary_base) -"cZG" = ( -/turf/open/floor/plating/warnplate{ - dir = 4; - luminosity = 2; - initial_gas_mix = "o2=0.01;n2=0.01" +/turf/closed/wall/shuttle{ + icon_state = "swall_s10"; + dir = 2 }, -/area/shuttle/auxillary_base) +/area/shuttle/abandoned) +"cZG" = ( +/turf/closed/wall/shuttle{ + icon_state = "swall13"; + dir = 2 + }, +/area/shuttle/abandoned) "cZH" = ( /obj/structure/shuttle/engine/propulsion{ icon_state = "propulsion_l"; @@ -90718,23 +90798,20 @@ /obj/effect/decal/cleanable/greenglow{ desc = "Looks like something's sprung a leak" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "cZJ" = ( -/obj/structure/sign/poster{ - pixel_x = 32 +/turf/closed/wall/shuttle{ + icon_state = "swall11"; + dir = 2 }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) +/area/shuttle/abandoned) "cZK" = ( -/obj/machinery/light{ - icon_state = "tube1"; - dir = 4 +/turf/closed/wall/shuttle{ + icon_state = "swall3"; + dir = 2 }, -/turf/open/floor/plating, -/area/shuttle/auxillary_base) +/area/shuttle/abandoned) "cZL" = ( /obj/structure/mirror{ pixel_x = 28; @@ -90754,7 +90831,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "cZM" = ( /obj/structure/table, @@ -90765,7 +90842,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "cZN" = ( /obj/structure/closet/wardrobe/mixed, @@ -90781,7 +90858,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "cZO" = ( /obj/structure/table, @@ -90798,7 +90875,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "cZP" = ( /obj/machinery/suit_storage_unit/standard_unit, @@ -90806,7 +90883,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "cZQ" = ( /turf/closed/wall/shuttle{ @@ -90823,7 +90900,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "cZS" = ( /obj/effect/decal/cleanable/dirt{ @@ -90834,7 +90911,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/abandoned) "cZT" = ( /obj/structure/sign/vacuum{ @@ -90844,7 +90921,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/abandoned) "cZU" = ( /obj/structure/closet/crate/medical{ @@ -90922,7 +90999,7 @@ /obj/effect/spawner/lootdrop/maintenance, /obj/item/weapon/extinguisher, /obj/item/weapon/extinguisher, -/obj/effect/decal/cleanable/cobweb/cobweb2, +/obj/effect/decal/cleanable/cobweb2, /obj/effect/decal/cleanable/dirt{ desc = "A thin layer of dust coating the floor."; name = "dust" @@ -90947,34 +91024,26 @@ /turf/open/floor/plating/airless, /area/shuttle/abandoned) "daa" = ( -/obj/docking_port/mobile/auxillary_base{ - dheight = 4; - dir = 2; - dwidth = 4; - height = 9; - width = 9 +/turf/closed/wall/shuttle{ + icon_state = "swall8"; + dir = 2 }, -/obj/machinery/bluespace_beacon, -/obj/machinery/computer/shuttle/auxillary_base{ - pixel_y = 0 - }, -/turf/closed/wall, -/area/shuttle/auxillary_base) +/area/shuttle/abandoned) "dab" = ( -/obj/machinery/light{ - dir = 8 +/turf/closed/wall/shuttle{ + icon_state = "swall7"; + dir = 2 }, -/turf/open/floor/plating, -/area/shuttle/auxillary_base) +/area/shuttle/abandoned) "dac" = ( -/obj/machinery/door/airlock/titanium{ +/obj/machinery/door/airlock/shuttle{ name = "bathroom" }, /obj/effect/decal/cleanable/dirt{ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/abandoned) "dad" = ( /obj/structure/bed, @@ -90985,7 +91054,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "dae" = ( /obj/effect/decal/cleanable/blood/old, @@ -91001,7 +91070,7 @@ name = "remains" }, /obj/item/weapon/gun/energy/laser/retro, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/abandoned) "daf" = ( /obj/structure/table, @@ -91015,7 +91084,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "dag" = ( /obj/effect/decal/cleanable/dirt{ @@ -91023,24 +91092,24 @@ name = "dust" }, /obj/effect/decal/cleanable/oil, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/abandoned) "dah" = ( -/obj/machinery/door/airlock/titanium{ +/obj/machinery/door/airlock/shuttle{ name = "E.V.A. equipment" }, /obj/effect/decal/cleanable/dirt{ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/abandoned) "dai" = ( /obj/effect/decal/cleanable/dirt{ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/abandoned) "daj" = ( /obj/effect/decal/cleanable/blood/old, @@ -91055,7 +91124,7 @@ icon_state = "remains"; name = "remains" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/abandoned) "dak" = ( /obj/effect/decal/cleanable/oil, @@ -91068,7 +91137,7 @@ }, /area/shuttle/abandoned) "dal" = ( -/obj/machinery/door/airlock/titanium{ +/obj/machinery/door/airlock/shuttle{ name = "cargo bay" }, /turf/open/floor/plasteel/delivery{ @@ -91115,7 +91184,7 @@ name = "remains" }, /obj/effect/decal/cleanable/blood/gibs/old, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "dap" = ( /obj/effect/decal/cleanable/blood/old, @@ -91127,7 +91196,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/abandoned) "daq" = ( /obj/structure/bed, @@ -91136,7 +91205,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "dar" = ( /obj/effect/decal/cleanable/blood/old, @@ -91149,7 +91218,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/abandoned) "das" = ( /obj/structure/table, @@ -91166,7 +91235,7 @@ name = "dust" }, /obj/item/weapon/wrench, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "dat" = ( /obj/structure/rack{ @@ -91191,21 +91260,20 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "dau" = ( -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) +/turf/closed/wall/shuttle{ + icon_state = "swall2" + }, +/area/shuttle/abandoned) "dav" = ( /obj/machinery/portable_atmospherics/canister/oxygen, /obj/effect/decal/cleanable/dirt{ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "daw" = ( /obj/effect/decal/cleanable/oil, @@ -91232,13 +91300,13 @@ /turf/open/floor/plasteel/bot, /area/shuttle/abandoned) "daz" = ( -/obj/machinery/portable_atmospherics/canister/air, -/turf/open/floor/plating/warnplate{ - dir = 10 +/turf/closed/wall/shuttle{ + icon_state = "swall1"; + dir = 2 }, -/area/shuttle/auxillary_base) +/area/shuttle/abandoned) "daA" = ( -/obj/machinery/door/airlock/titanium{ +/obj/machinery/door/airlock/shuttle{ name = "bathroom" }, /obj/effect/decal/cleanable/blood/old, @@ -91246,7 +91314,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/abandoned) "daB" = ( /obj/machinery/vending/boozeomat{ @@ -91261,7 +91329,7 @@ }, /area/shuttle/abandoned) "daC" = ( -/obj/machinery/door/airlock/titanium{ +/obj/machinery/door/airlock/shuttle{ name = "dormitory" }, /obj/effect/decal/cleanable/blood/old, @@ -91269,18 +91337,22 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/abandoned) "daD" = ( -/turf/open/floor/plating/warnplate, -/area/shuttle/auxillary_base) +/turf/closed/wall/shuttle{ + icon_state = "swallc4"; + dir = 2 + }, +/area/shuttle/abandoned) "daE" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/mining_construction) +/turf/closed/wall/shuttle{ + icon_state = "swall4"; + dir = 2 + }, +/area/shuttle/abandoned) "daF" = ( -/obj/machinery/door/airlock/titanium{ +/obj/machinery/door/airlock/shuttle{ name = "recovery shuttle interior airlock" }, /obj/effect/decal/cleanable/dirt{ @@ -91291,20 +91363,16 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/abandoned) "daG" = ( -/obj/machinery/door/airlock/external{ - cyclelinkeddir = 1; - name = "Construction Zone"; - req_access = null; - req_access_txt = "0"; - req_one_access_txt = "0" +/turf/closed/wall/shuttle{ + icon_state = "swallc3"; + dir = 2 }, -/turf/open/floor/plating, -/area/mining_construction) +/area/shuttle/abandoned) "daH" = ( -/obj/machinery/door/airlock/titanium{ +/obj/machinery/door/airlock/shuttle{ name = "cargo bay" }, /obj/effect/decal/cleanable/dirt{ @@ -91319,7 +91387,7 @@ /obj/machinery/vending/cigarette{ use_power = 0 }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "daJ" = ( /obj/effect/decal/cleanable/blood/gibs/old, @@ -91327,7 +91395,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/abandoned) "daK" = ( /obj/effect/decal/cleanable/blood/old, @@ -91336,7 +91404,7 @@ name = "dust" }, /obj/effect/decal/cleanable/blood/gibs/limb, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/abandoned) "daL" = ( /obj/effect/decal/cleanable/blood/old, @@ -91344,15 +91412,15 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/abandoned) "daM" = ( /obj/effect/decal/cleanable/dirt{ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/obj/effect/decal/cleanable/cobweb/cobweb2, -/turf/open/floor/mineral/titanium/blue, +/obj/effect/decal/cleanable/cobweb2, +/turf/open/floor/plasteel/shuttle, /area/shuttle/abandoned) "daN" = ( /obj/structure/table, @@ -91361,7 +91429,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "daO" = ( /obj/effect/decal/cleanable/cobweb, @@ -91369,7 +91437,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "daP" = ( /obj/structure/table, @@ -91381,7 +91449,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "daQ" = ( /obj/structure/table, @@ -91390,7 +91458,7 @@ name = "dust" }, /obj/item/weapon/storage/photo_album, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "daR" = ( /obj/structure/reagent_dispensers/fueltank, @@ -91401,14 +91469,14 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/abandoned) "daS" = ( /obj/machinery/vending/coffee{ pixel_x = -2; use_power = 0 }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "daT" = ( /obj/structure/chair, @@ -91416,14 +91484,14 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "daU" = ( /obj/effect/decal/cleanable/dirt{ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "daV" = ( /obj/effect/decal/cleanable/dirt{ @@ -91434,7 +91502,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "daW" = ( /obj/machinery/light/small{ @@ -91460,7 +91528,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "daZ" = ( /obj/structure/table, @@ -91474,17 +91542,17 @@ pixel_x = -1; pixel_y = 2 }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "dba" = ( -/obj/machinery/door/airlock/titanium{ +/obj/machinery/door/airlock/shuttle{ name = "recovery shuttle interior airlock" }, /obj/effect/decal/cleanable/dirt{ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/abandoned) "dbb" = ( /obj/structure/table, @@ -91493,7 +91561,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "dbc" = ( /obj/structure/chair{ @@ -91503,7 +91571,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "dbd" = ( /obj/structure/table, @@ -91512,7 +91580,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "dbe" = ( /obj/structure/table, @@ -91528,7 +91596,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "dbf" = ( /obj/structure/chair{ @@ -91538,17 +91606,17 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "dbg" = ( -/obj/machinery/door/airlock/titanium{ +/obj/machinery/door/airlock/shuttle{ name = "living quarters" }, /obj/effect/decal/cleanable/dirt{ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/abandoned) "dbh" = ( /obj/item/clothing/suit/bio_suit, @@ -91564,7 +91632,7 @@ /obj/item/clothing/mask/breath, /obj/item/clothing/mask/breath, /obj/structure/table, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "dbi" = ( /obj/effect/decal/cleanable/dirt{ @@ -91581,7 +91649,7 @@ }, /obj/item/weapon/reagent_containers/spray/cleaner, /obj/structure/table, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "dbj" = ( /obj/effect/decal/cleanable/blood/old, @@ -91590,7 +91658,7 @@ name = "dust" }, /obj/effect/decal/cleanable/blood/gibs/limb, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "dbk" = ( /obj/effect/decal/cleanable/blood/gibs/old, @@ -91605,7 +91673,7 @@ icon_state = "remains"; name = "remains" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "dbl" = ( /obj/item/weapon/storage/toolbox/emergency{ @@ -91622,7 +91690,7 @@ name = "dust" }, /obj/structure/table, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "dbm" = ( /obj/effect/decal/cleanable/dirt{ @@ -91636,17 +91704,17 @@ /obj/structure/table, /obj/item/clothing/head/helmet/swat/nanotrasen, /obj/item/clothing/head/helmet/swat/nanotrasen, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "dbn" = ( -/obj/machinery/door/airlock/titanium{ +/obj/machinery/door/airlock/shuttle{ name = "bridge" }, /obj/effect/decal/cleanable/dirt{ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/abandoned) "dbo" = ( /obj/effect/decal/cleanable/dirt{ @@ -91654,7 +91722,7 @@ name = "dust" }, /obj/machinery/computer/shuttle/white_ship, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "dbp" = ( /obj/effect/decal/cleanable/blood/old, @@ -91665,7 +91733,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "dbq" = ( /obj/structure/reagent_dispensers/watertank, @@ -91673,14 +91741,14 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/abandoned) "dbr" = ( /obj/machinery/vending/cola{ pixel_x = -1; use_power = 0 }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "dbs" = ( /obj/structure/chair{ @@ -91690,7 +91758,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "dbt" = ( /obj/machinery/camera/emp_proof{ @@ -91710,7 +91778,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "dbw" = ( /obj/item/weapon/phone{ @@ -91726,7 +91794,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "dbx" = ( /obj/effect/decal/cleanable/blood/old, @@ -91745,25 +91813,20 @@ icon_state = "remains"; name = "remains" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/abandoned) "dby" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 +/turf/closed/wall/shuttle{ + icon_state = "swall_s5"; + dir = 2 }, -/turf/open/floor/plasteel/yellow/side{ - dir = 1 - }, -/area/mining_construction) +/area/shuttle/abandoned) "dbz" = ( /obj/machinery/vending/snack{ pixel_x = -1; use_power = 0 }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "dbA" = ( /obj/structure/sign/science{ @@ -91773,7 +91836,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/abandoned) "dbB" = ( /obj/structure/table, @@ -91782,12 +91845,12 @@ name = "dust" }, /obj/item/device/megaphone, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "dbC" = ( /obj/effect/spawner/lootdrop/maintenance, /turf/open/floor/plating, -/area/maintenance/starboard) +/area/engine/engineering) "dbD" = ( /obj/structure/table, /obj/item/device/radio/off{ @@ -91797,7 +91860,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "dbE" = ( /obj/structure/table, @@ -91806,48 +91869,54 @@ name = "dust" }, /obj/item/device/mass_spectrometer, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "dbF" = ( -/obj/machinery/door/airlock/titanium{ +/obj/machinery/door/airlock/shuttle{ name = "hydroponics" }, /obj/effect/decal/cleanable/dirt{ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/abandoned) "dbG" = ( /obj/structure/sign/botany, -/turf/closed/wall/mineral/titanium, +/turf/closed/wall/shuttle{ + icon_state = "swall8"; + dir = 2 + }, /area/shuttle/abandoned) "dbH" = ( -/obj/machinery/door/airlock/titanium{ +/obj/machinery/door/airlock/shuttle{ name = "kitchen" }, /obj/effect/decal/cleanable/dirt{ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/abandoned) "dbI" = ( -/obj/machinery/door/airlock/titanium{ +/obj/machinery/door/airlock/shuttle{ name = "laboratory" }, /obj/effect/decal/cleanable/dirt{ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/abandoned) "dbJ" = ( /obj/structure/sign/bluecross_2, -/turf/closed/wall/mineral/titanium, +/turf/closed/wall/shuttle{ + icon_state = "swall8"; + dir = 2 + }, /area/shuttle/abandoned) "dbK" = ( -/obj/machinery/door/airlock/titanium{ +/obj/machinery/door/airlock/shuttle{ icon_state = "door_closed"; name = "medbay"; welded = 0 @@ -91856,16 +91925,14 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/abandoned) "dbL" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 10 +/turf/closed/wall/shuttle{ + icon_state = "swall_s9"; + dir = 2 }, -/turf/open/floor/plasteel/yellow/side{ - dir = 1 - }, -/area/mining_construction) +/area/shuttle/abandoned) "dbM" = ( /obj/item/weapon/storage/bag/plants/portaseeder, /obj/structure/table, @@ -91885,14 +91952,14 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "dbN" = ( /obj/machinery/biogenerator{ idle_power_usage = 0; use_power = 0 }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "dbO" = ( /obj/machinery/vending/hydroseeds{ @@ -91903,7 +91970,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "dbP" = ( /obj/machinery/processor, @@ -91911,7 +91978,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "dbQ" = ( /obj/structure/table, @@ -91924,8 +91991,8 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/obj/effect/decal/cleanable/cobweb/cobweb2, -/turf/open/floor/mineral/titanium, +/obj/effect/decal/cleanable/cobweb2, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "dbR" = ( /obj/structure/kitchenspike, @@ -91934,7 +92001,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "dbS" = ( /obj/effect/decal/cleanable/oil, @@ -91942,7 +92009,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "dbT" = ( /obj/structure/reagent_dispensers/watertank, @@ -91951,7 +92018,7 @@ }, /obj/effect/spawner/lootdrop/maintenance, /turf/open/floor/plating, -/area/maintenance/starboard) +/area/engine/engineering) "dbU" = ( /obj/machinery/sleeper{ dir = 4; @@ -91961,7 +92028,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "dbV" = ( /obj/structure/closet/crate/freezer, @@ -91976,7 +92043,7 @@ name = "dust" }, /obj/effect/decal/cleanable/xenoblood, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "dbW" = ( /obj/structure/table/optable{ @@ -92009,13 +92076,16 @@ /obj/item/weapon/wirecutters, /obj/item/device/plant_analyzer, /obj/item/weapon/reagent_containers/glass/bucket, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "dbY" = ( /obj/machinery/smartfridge{ use_power = 0 }, -/turf/closed/wall/mineral/titanium, +/turf/closed/wall/shuttle{ + icon_state = "swall3"; + dir = 2 + }, /area/shuttle/abandoned) "dbZ" = ( /obj/structure/sink{ @@ -92028,7 +92098,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/abandoned) "dca" = ( /obj/structure/sink{ @@ -92041,7 +92111,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/abandoned) "dcb" = ( /obj/structure/table, @@ -92051,7 +92121,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "dcc" = ( /obj/effect/decal/cleanable/egg_smudge, @@ -92060,18 +92130,18 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/abandoned) "dcd" = ( /obj/structure/closet/firecloset, /obj/effect/spawner/lootdrop/maintenance, /turf/open/floor/plating, -/area/maintenance/starboard) +/area/engine/engineering) "dce" = ( /obj/machinery/portable_atmospherics/canister/air, /obj/effect/spawner/lootdrop/maintenance, /turf/open/floor/plating, -/area/maintenance/starboard) +/area/engine/engineering) "dcf" = ( /obj/structure/chair/office/light, /obj/effect/decal/cleanable/dirt{ @@ -92082,7 +92152,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/abandoned) "dcg" = ( /obj/machinery/vending/wallmed{ @@ -92100,7 +92170,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/abandoned) "dch" = ( /obj/effect/decal/cleanable/xenoblood, @@ -92114,7 +92184,7 @@ icon_state = "remainsxeno"; name = "remains" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/abandoned) "dci" = ( /obj/effect/decal/cleanable/dirt{ @@ -92123,7 +92193,7 @@ }, /obj/effect/decal/cleanable/ash, /obj/effect/decal/cleanable/xenoblood, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/abandoned) "dcj" = ( /obj/structure/sink{ @@ -92138,7 +92208,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/abandoned) "dck" = ( /obj/structure/shuttle/engine/propulsion{ @@ -92153,7 +92223,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "dcm" = ( /obj/machinery/hydroponics/constructable, @@ -92162,7 +92232,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "dcn" = ( /obj/structure/table, @@ -92176,7 +92246,7 @@ /obj/item/weapon/storage/fancy/egg_box{ pixel_y = 5 }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "dco" = ( /obj/structure/table, @@ -92187,7 +92257,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "dcp" = ( /obj/structure/table, @@ -92207,7 +92277,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "dcq" = ( /obj/structure/table, @@ -92222,7 +92292,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "dcr" = ( /obj/structure/table, @@ -92237,7 +92307,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "dcs" = ( /obj/structure/table, @@ -92246,7 +92316,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "dct" = ( /obj/structure/table, @@ -92255,7 +92325,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "dcu" = ( /obj/structure/table, @@ -92264,7 +92334,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "dcv" = ( /obj/structure/table, @@ -92275,7 +92345,7 @@ name = "dust" }, /obj/item/clothing/suit/apron/surgical, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "dcw" = ( /obj/structure/table, @@ -92291,7 +92361,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "dcx" = ( /obj/structure/table, @@ -92301,41 +92371,39 @@ name = "surgical dufflebag"; pixel_y = 4 }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "dcy" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - on = 1 +/turf/closed/wall/shuttle{ + icon_state = "swall7"; + dir = 2 }, -/turf/open/floor/plasteel/yellow/side{ - dir = 1 - }, -/area/mining_construction) +/area/shuttle/escape) "dcz" = ( /obj/structure/grille, /obj/structure/window/shuttle, /turf/open/floor/plating, /area/shuttle/escape) "dcA" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/cable/yellow{ - d1 = 2; - d2 = 4; - icon_state = "2-4" +/turf/closed/wall/shuttle{ + icon_state = "swall12"; + dir = 2 }, -/turf/open/floor/plasteel/yellow/side, -/area/mining_construction) +/area/shuttle/escape) "dcB" = ( -/obj/machinery/door/airlock/titanium{ +/obj/machinery/door/airlock/shuttle{ name = "Emergency Shuttle Airlock" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "dcC" = ( -/turf/closed/wall/mineral/titanium/nodiagonal, +/turf/closed/wall/shuttle{ + icon_state = "swall14"; + dir = 2 + }, /area/shuttle/escape) "dcD" = ( -/obj/machinery/door/airlock/titanium{ +/obj/machinery/door/airlock/shuttle{ name = "Emergency Shuttle Airlock" }, /obj/docking_port/mobile/emergency{ @@ -92354,42 +92422,27 @@ name = "MetaStation emergency evac bay"; width = 29 }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "dcE" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable/yellow{ - icon_state = "4-8"; - d1 = 4; - d2 = 8 - }, -/obj/structure/mining_shuttle_beacon{ +/turf/closed/wall/shuttle{ + icon_state = "swall8"; dir = 2 }, -/obj/machinery/computer/security/telescreen{ - desc = "Used for the Auxillary Mining Base."; - dir = 1; - name = "Auxillary Base Monitor"; - network = list("AuxBase"); - pixel_x = 0; - pixel_y = -28 - }, -/turf/open/floor/plasteel/yellow/side, -/area/mining_construction) +/area/shuttle/escape) "dcF" = ( -/obj/machinery/door/poddoor/shutters{ - id = "aux_base_shutters"; - name = "Auxillary Base Shutters" +/turf/closed/wall/shuttle{ + icon_state = "swall3"; + dir = 2 }, -/turf/open/floor/plasteel/delivery, -/area/mining_construction) +/area/shuttle/escape) "dcG" = ( /obj/structure/tank_dispenser/oxygen{ layer = 2.7; pixel_x = -1; pixel_y = 2 }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "dcH" = ( /obj/item/clothing/suit/hazardvest{ @@ -92470,36 +92523,29 @@ /obj/structure/closet/crate{ name = "lifejackets" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "dcI" = ( -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "dcJ" = ( -/obj/machinery/door/airlock/engineering{ - cyclelinkeddir = 1; - name = "Auxillary Base Construction"; - req_access_txt = "0"; - req_one_access_txt = "32;47;48" +/turf/closed/wall/shuttle{ + icon_state = "swall4"; + dir = 2 }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plasteel, -/area/mining_construction) +/area/shuttle/escape) "dcK" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/closed/wall, -/area/mining_construction) +/obj/structure/sign/bluecross_2, +/turf/closed/wall/shuttle{ + icon_state = "swall2" + }, +/area/shuttle/escape) "dcL" = ( /obj/structure/table, /obj/item/stack/medical/gauze, /obj/item/stack/medical/bruise_pack, /obj/item/stack/medical/ointment, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "dcM" = ( /obj/item/device/radio/intercom{ @@ -92509,7 +92555,7 @@ pixel_y = 27 }, /obj/structure/chair, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "dcN" = ( /obj/structure/cable/yellow{ @@ -92576,7 +92622,10 @@ /area/shuttle/escape) "dcU" = ( /obj/structure/extinguisher_cabinet, -/turf/closed/wall/mineral/titanium/nodiagonal, +/turf/closed/wall/shuttle{ + icon_state = "swall12"; + dir = 2 + }, /area/shuttle/escape) "dcV" = ( /obj/machinery/vending/wallmed{ @@ -92586,7 +92635,10 @@ req_access_txt = "0"; use_power = 0 }, -/turf/closed/wall/mineral/titanium/nodiagonal, +/turf/closed/wall/shuttle{ + icon_state = "swall12"; + dir = 2 + }, /area/shuttle/escape) "dcW" = ( /obj/structure/cable/yellow{ @@ -92645,36 +92697,32 @@ }, /area/chapel/main) "ddb" = ( -/turf/closed/wall/mineral/titanium, +/turf/closed/wall/shuttle{ + icon_state = "swall_s6"; + dir = 2 + }, /area/shuttle/escape) "ddc" = ( -/obj/structure/chair, -/obj/machinery/light{ - dir = 1 +/turf/closed/wall/shuttle{ + icon_state = "swall1" }, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) +/area/shuttle/escape) "ddd" = ( /obj/structure/sign/nosmoking_2, -/turf/closed/wall/mineral/titanium, +/turf/closed/wall/shuttle{ + icon_state = "swall12"; + dir = 2 + }, /area/shuttle/escape) "dde" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 +/turf/closed/wall/shuttle{ + icon_state = "swall_s10"; + dir = 2 }, -/turf/open/floor/plasteel/yellow/corner{ - dir = 4 - }, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) +/area/shuttle/escape) "ddf" = ( /obj/structure/chair, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "ddg" = ( /obj/structure/shuttle/engine/propulsion{ @@ -92692,7 +92740,7 @@ /obj/structure/chair{ dir = 1 }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "ddi" = ( /obj/structure/shuttle/engine/heater{ @@ -92707,17 +92755,20 @@ /obj/structure/chair/office/dark{ dir = 1 }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "ddk" = ( /obj/machinery/status_display, -/turf/closed/wall/mineral/titanium, +/turf/closed/wall/shuttle{ + icon_state = "swall3"; + dir = 2 + }, /area/shuttle/escape) "ddl" = ( /obj/structure/chair{ dir = 1 }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "ddm" = ( /obj/machinery/door/airlock/glass_medical{ @@ -92725,26 +92776,20 @@ name = "Escape Shuttle Infirmary"; req_access_txt = "0" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "ddn" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 +/turf/closed/wall/shuttle{ + icon_state = "swall11"; + dir = 2 }, -/obj/structure/cable/yellow{ - icon_state = "4-8"; - d1 = 4; - d2 = 8 - }, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) +/area/shuttle/escape) "ddo" = ( /obj/structure/sign/bluecross_2, -/turf/closed/wall/mineral/titanium, +/turf/closed/wall/shuttle{ + icon_state = "swall14"; + dir = 2 + }, /area/shuttle/escape) "ddp" = ( /obj/structure/table, @@ -92753,7 +92798,7 @@ pixel_x = 3; pixel_y = 3 }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "ddq" = ( /obj/structure/table, @@ -92762,7 +92807,7 @@ pixel_x = 2; pixel_y = 3 }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "ddr" = ( /obj/machinery/status_display{ @@ -92770,8 +92815,8 @@ pixel_x = 32; pixel_y = 0 }, -/obj/machinery/holopad, -/turf/open/floor/mineral/titanium/blue, +/obj/machinery/hologram/holopad, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "dds" = ( /turf/open/floor/bluegrid{ @@ -92812,12 +92857,12 @@ pixel_x = 2; pixel_y = 8 }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "ddu" = ( /obj/structure/table, /obj/item/weapon/defibrillator/loaded, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "ddv" = ( /obj/structure/table, @@ -92831,12 +92876,12 @@ pixel_x = 0; pixel_y = -31 }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "ddw" = ( /obj/structure/table/optable, /obj/item/weapon/surgical_drapes, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "ddx" = ( /obj/structure/table, @@ -92846,7 +92891,7 @@ pixel_x = 0; pixel_y = -27 }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "ddy" = ( /obj/machinery/space_heater, @@ -92858,7 +92903,7 @@ /turf/open/floor/plasteel/bot, /area/shuttle/escape) "ddz" = ( -/obj/machinery/door/airlock/titanium{ +/obj/machinery/door/airlock/shuttle{ name = "Emergency Shuttle Cargo Bay Airlock" }, /turf/open/floor/plasteel/delivery, @@ -92867,7 +92912,7 @@ /obj/structure/chair{ dir = 4 }, -/turf/open/floor/mineral/plastitanium/brig, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/escape) "ddB" = ( /obj/structure/table, @@ -92875,14 +92920,14 @@ pixel_x = 2; pixel_y = 2 }, -/turf/open/floor/mineral/plastitanium/brig, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/escape) "ddC" = ( /obj/structure/chair, -/turf/open/floor/mineral/plastitanium/brig, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/escape) "ddD" = ( -/turf/open/floor/mineral/plastitanium/brig, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/escape) "ddE" = ( /obj/structure/table, @@ -92891,25 +92936,25 @@ idle_power_usage = 0; use_power = 0 }, -/turf/open/floor/mineral/plastitanium/brig, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/escape) "ddF" = ( /obj/machinery/door/airlock/glass_security{ name = "Brig"; req_access_txt = "2" }, -/turf/open/floor/mineral/plastitanium/brig, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/escape) "ddG" = ( /obj/structure/table, /obj/item/weapon/restraints/handcuffs{ pixel_y = 3 }, -/turf/open/floor/mineral/plastitanium/brig, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/escape) "ddH" = ( /obj/structure/closet/emcloset, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "ddI" = ( /obj/structure/chair{ @@ -92919,13 +92964,13 @@ /area/shuttle/escape) "ddJ" = ( /obj/machinery/shower, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "ddK" = ( /obj/machinery/sleeper{ dir = 8 }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "ddL" = ( /obj/structure/rack, @@ -92947,36 +92992,25 @@ name = "Cockpit"; req_access_txt = "19" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "ddO" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" +/turf/closed/wall/shuttle{ + icon_state = "swall15"; + dir = 2 }, -/obj/structure/chair{ - dir = 4 - }, -/obj/effect/landmark/start{ - name = "Security Officer" - }, -/turf/open/floor/plasteel/red/side{ - dir = 8 - }, -/area/security/main) +/area/shuttle/escape) "ddP" = ( /obj/structure/table, /obj/item/weapon/restraints/handcuffs{ pixel_y = 3 }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "ddQ" = ( /obj/structure/table, /obj/item/weapon/storage/firstaid/regular, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "ddR" = ( /obj/structure/reagent_dispensers/fueltank, @@ -92988,7 +93022,7 @@ req_access = null; req_access_txt = "19" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "ddT" = ( /turf/open/floor/plasteel/delivery, @@ -93001,21 +93035,24 @@ /obj/structure/chair{ dir = 8 }, -/turf/open/floor/mineral/plastitanium/brig, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/escape) "ddW" = ( /obj/structure/chair/office/dark{ dir = 8 }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "ddX" = ( /obj/machinery/computer/security, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "ddY" = ( /obj/structure/reagent_dispensers/peppertank, -/turf/closed/wall/mineral/titanium, +/turf/closed/wall/shuttle{ + icon_state = "swall3"; + dir = 2 + }, /area/shuttle/escape) "ddZ" = ( /obj/structure/rack, @@ -93047,11 +93084,11 @@ /area/shuttle/escape) "dec" = ( /obj/machinery/computer/crew, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "ded" = ( /obj/structure/chair/office/dark, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "dee" = ( /turf/open/floor/plasteel/warning{ @@ -93061,7 +93098,7 @@ "def" = ( /obj/structure/table, /obj/item/weapon/storage/fancy/donut_box, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "deg" = ( /obj/structure/table, @@ -93073,26 +93110,26 @@ pixel_x = 5; pixel_y = -1 }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "deh" = ( /obj/machinery/computer/communications, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "dei" = ( /obj/machinery/computer/emergency_shuttle, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "dej" = ( /obj/structure/table, /obj/item/weapon/storage/toolbox/emergency{ pixel_y = 3 }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "dek" = ( /obj/machinery/computer/station_alert, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "del" = ( /obj/structure/table, @@ -93102,20 +93139,13 @@ pixel_y = 4; use_power = 0 }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "dem" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/chair{ - dir = 8 +/turf/closed/wall/shuttle{ + icon_state = "diagonalWall3" }, -/obj/effect/landmark/start{ - name = "Security Officer" - }, -/turf/open/floor/plasteel/red/side{ - dir = 4 - }, -/area/security/main) +/area/shuttle/escape) "den" = ( /obj/structure/table, /obj/item/weapon/folder/red{ @@ -93135,7 +93165,7 @@ pixel_x = -4; pixel_y = 4 }, -/turf/open/floor/mineral/plastitanium/brig, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/escape) "deo" = ( /obj/structure/reagent_dispensers/watertank, @@ -93161,21 +93191,17 @@ pixel_x = -27; pixel_y = 0 }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "deq" = ( -/obj/machinery/vending/wallmed{ - name = "Emergency NanoMed"; - pixel_x = 0; - pixel_y = 0; - req_access_txt = "0"; - use_power = 0 +/turf/closed/wall/shuttle{ + icon_state = "swall13"; + dir = 2 }, -/turf/closed/wall/mineral/titanium, /area/shuttle/escape) "der" = ( /obj/structure/sink, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "des" = ( /obj/structure/rack{ @@ -93200,18 +93226,22 @@ /turf/open/floor/plasteel/bot, /area/shuttle/escape) "deu" = ( -/obj/structure/extinguisher_cabinet, -/turf/closed/wall/mineral/titanium, +/turf/closed/wall/shuttle{ + icon_state = "wall3" + }, /area/shuttle/escape) "dev" = ( -/turf/open/space, -/area/shuttle/syndicate) -"dew" = ( -/obj/machinery/porta_turret/syndicate{ - dir = 5 +/turf/closed/wall/shuttle{ + icon_state = "swall_s5"; + dir = 2 }, -/turf/closed/wall/mineral/plastitanium, -/area/shuttle/syndicate) +/area/shuttle/escape) +"dew" = ( +/turf/closed/wall/shuttle{ + icon_state = "swall_s9"; + dir = 2 + }, +/area/shuttle/escape) "dex" = ( /obj/structure/grille, /obj/structure/window/reinforced/fulltile, @@ -93289,9 +93319,6 @@ /obj/structure/disposaloutlet{ dir = 2 }, -/obj/structure/disposalpipe/trunk{ - dir = 1 - }, /turf/open/floor/engine, /area/toxins/xenobiology) "deE" = ( @@ -93311,7 +93338,8 @@ /area/toxins/xenobiology) "deG" = ( /obj/machinery/atmospherics/components/unary/outlet_injector/on{ - dir = 1 + dir = 1; + unacidable = 1 }, /turf/open/floor/engine, /area/toxins/xenobiology) @@ -93481,15 +93509,11 @@ }, /area/toxins/xenobiology) "deX" = ( -/turf/open/space, -/obj/machinery/porta_turret/syndicate{ - dir = 6 - }, -/turf/closed/wall/mineral/plastitanium{ - dir = 4; - icon_state = "diagonalWall3" - }, -/area/shuttle/syndicate) +/obj/structure/disposalpipe/segment, +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating/airless, +/area/toxins/xenobiology) "deY" = ( /obj/structure/cable{ tag = "icon-0-4"; @@ -93758,19 +93782,19 @@ "dfB" = ( /obj/structure/table/optable, /obj/item/weapon/surgical_drapes, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/syndicate) "dfC" = ( /obj/structure/table, /obj/item/weapon/cautery, /obj/item/weapon/scalpel, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/syndicate) "dfD" = ( /obj/structure/table, /obj/item/weapon/retractor, /obj/item/weapon/hemostat, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/syndicate) "dfE" = ( /obj/structure/table, @@ -93783,7 +93807,7 @@ /obj/item/stack/rods{ amount = 50 }, -/turf/open/floor/mineral/plastitanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "dfF" = ( /obj/docking_port/stationary{ @@ -93839,14 +93863,10 @@ }, /area/chapel/main) "dfK" = ( -/turf/open/space, -/obj/machinery/porta_turret/syndicate{ - dir = 10 +/turf/closed/wall/shuttle{ + icon_state = "swall2" }, -/turf/closed/wall/mineral/plastitanium{ - icon_state = "diagonalWall3" - }, -/area/shuttle/syndicate) +/area/shuttle/escape) (1,1,1) = {" aaa @@ -98526,12 +98546,12 @@ aaa aaa aaa aaa -aad +cXN +aae aae aae aae aae -dew aae aae aae @@ -98777,7 +98797,7 @@ aaa aaa aaa aaa -aad +cXN aae aae aae @@ -99563,7 +99583,7 @@ cYu aae aae aae -deX +cXI aaa aaa aaa @@ -99646,11 +99666,11 @@ aaa aaa aaa aaa -cZz -cZz +cZx +cZQ cZC -cZz -cZz +dau +dby aaa aaa aaa @@ -99803,7 +99823,7 @@ bUy cXB cXD aae -dev +cXG aaa aae cXQ @@ -100155,21 +100175,21 @@ aaa aaa aaa aaa -cZz -cZz +cZx +cZG cZY cZY -cZz -cZz -cZz +cZE +cZJ +cZQ dba -cZz -cZz -cZz +dau +cZJ +daG cZY cZY cZz -cZz +dby aaa aaa aaa @@ -100318,10 +100338,10 @@ bTn bTn aae cXJ -bTn -bTn -bTn -bTn +cXL +cXL +cXL +cXL cYa bTn bTn @@ -100413,20 +100433,20 @@ aaa aaa aaa cZz -cZz -cZz -cZz -cZz +cZJ +dab +cZK +cZG daI daS cZS dbr dbz cZz -cZz -cZz -cZz -cZz +cZK +cZK +cZJ +cZG aaa aaa aaa @@ -100669,21 +100689,21 @@ aaa aaa aaa aaa -cZz +cZy cZI -cZz +daa dao -cZz +daa dai dai dai dai dai -cZz +cZy dbM dbX dcl -cZz +cZy aaa aaa aaa @@ -100830,7 +100850,7 @@ aQg cXA bTn cXE -aae +bGq cXK cXM cXM @@ -101184,10 +101204,10 @@ aaa aaa aaa cZz -cZz -cZz -cZz -cZz +cZK +cZK +cZK +daz daJ daT dbb @@ -101450,11 +101470,11 @@ daT dbe dbs dai -cZz +daE dbO dbZ dcl -cZz +cZy aaa aaa aaa @@ -101619,7 +101639,7 @@ cYw aae aae aae -dfK +cXG aaa aaa aaa @@ -101697,7 +101717,7 @@ aaa aaa aaa aaa -cZz +cZy cZM dad daq @@ -101707,11 +101727,11 @@ daT dbd dbs dai -cZz -cZz +cZB +cZK dbY -cZz -cZz +cZK +cZG aaa aaa aaa @@ -101955,10 +101975,10 @@ aaa aaa aaa cZz -cZz -cZz -cZz -cZz +cZK +cZK +cZK +cZG dai daV dbf @@ -101968,7 +101988,7 @@ dbH dai dca dco -cZz +cZy aaa aaa aaa @@ -102211,17 +102231,17 @@ aaa aaa aaa aaa -cZz +cZy cZO daf das -cZz +cZy daM dai cZS dai dai -cZz +daE dbP cZS dcn @@ -102472,13 +102492,13 @@ cZA cZP dag dat -cZz -cZz -cZz +cZB +cZK +cZQ dbg -cZz -cZz -cZz +dau +cZK +cZG dbR dcc dcq @@ -102638,12 +102658,12 @@ aaa aaa aaa aaa -aaY +cXU +aae aae aae aae aae -csh aae aae aae @@ -102691,11 +102711,11 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa +aaW +bnn +aSJ +aSJ +aSJ aaa aaa aaf @@ -102735,11 +102755,11 @@ dai dai dai dai -cZz +cZy dbQ dcb dcp -cZz +cZy aaa aaa aaa @@ -102947,11 +102967,11 @@ aaa aaa aaa aaa -aaa -aaW -bnn -aSJ -aSJ +aOy +aQb +aQb +aSK +aTS aSJ aWM aYo @@ -102974,7 +102994,7 @@ aYo aaa cZg cZq -cZg +cZt aaa aYo aYo @@ -102982,21 +103002,21 @@ aYo aYo aaa aaf -cZz +cZy cZR dai dav -cZz +daE dai daU dbi daU dai cZz -cZz -cZz -cZz -cZz +cZK +cZK +cZK +cZG aaa aaa aaa @@ -103203,11 +103223,11 @@ aaa aaa aaa aaa -aaa -aQb -aQb -aQb -aSK +cWl +aOz +cWs +cWF +aSL aTT aVr aWN @@ -103217,10 +103237,10 @@ aaf aaf aaa bev -bew +bic bey -bew -bev +bic +bnD aaa aaf aaf @@ -103231,29 +103251,29 @@ aYo cZg cZl cZp -cZl -cZg +cZs +cZt aYo bNc aYp aYo aYo aYo -cZz +cZB cZQ dah -cZz -cZz +dau +daD dai daV dbh daV dbA -cZz +daa dbS daU dcr -cZz +cZy aaa aaa aaa @@ -103460,12 +103480,12 @@ aaa aaa aaa aaa -cWl -aOz -cWs -cWF -aSL -bum +aaa +aOA +aQb +aQb +aSM +aTU aVs aWO aYq @@ -103713,15 +103733,15 @@ aaf aaf aaf aaf +aaf aaa aaa +aaf aaa aaa -aaa -aQb -aQb -aQb -aSK +aaZ +bnn +aSJ aTV aSJ aWP @@ -103763,11 +103783,11 @@ dai dbj cZS dai -cZz +daE daU daU dcs -cZz +cZy aaa aaa aaa @@ -103970,29 +103990,29 @@ aaf aaf aaa aaa -aaa -aaa -aaa -aaa -aaf -aaa -aaZ -bnn +aDr +aDr +aDr +aDr +aGd +aGd +aDr +aDr +aDr +aDr aSJ -aSJ -aSJ -ddc +aWQ aYr aSJ aaa aaa bev -bew -bew +bgi +bic bex -bew -bew -bev +bic +bgi +bnD aaa aaa aSJ @@ -104010,21 +104030,21 @@ aYq aYo aYo aYo -cZz -cZz +cZE +cZQ dal -cZz -cZz +dau +daG dai daU dbm daU dai cZz -cZz -cZz -cZz -cZz +cZK +cZK +cZK +cZG aaa aaa aaa @@ -104224,19 +104244,19 @@ aoa aoa aoa aoa -aaf -aoa -aaa -aaf -aaa -aaa -aaf -aaf -aaf -aaf -aaa -aaf -aaf +aDr +aDr +aDr +aDr +aIO +aKl +aLA +aHF +aHF +aHF +aLA +aHG +aTW aSJ aWR aYq @@ -104267,11 +104287,11 @@ aYq aYo aaa aaf -cZz +cZy cZU dak daw -cZz +daa dai daU dbl @@ -104281,7 +104301,7 @@ dbJ dbU dcg dcu -cZz +cZy aaa aaa aaa @@ -104482,19 +104502,19 @@ aoa aaf aoa aDs +aEM aDs -aDs -aDs -aDs -aDs -aDs -aDs -aDs -aDs -aDs -aDs -aDs -aDs +aHC +aIO +aHF +aHF +aHF +aHF +aHF +aIO +aIO +aIO +aVt aWO aYq bab @@ -104738,20 +104758,20 @@ aoa azx aoa aoa -aDs aDr -cZE -cZE -cZE -cZE -cZE -cZE -cZE -daz -daE +aDr +aDr +aHD +aIO +aHF +aHF +aHF +aHF +aHF +aHF aSN aTX -aDs +aSJ aWS aYq aYo @@ -104785,13 +104805,13 @@ cZA cZV dam dax -cZz -cZz -cZz +cZE +cZK +cZQ dbn -cZz -cZz -cZz +dau +cZK +daG dbV dch dcv @@ -104995,20 +105015,20 @@ aoa aoa aaf aai -aDs -cZy -cZF -cZF -cZF -cZF -cZF -cZF -cZF -daD -daE +aag +aaf +aDr +aHE +aHF +aHF +aHF +aHF +aOB +aHF +aHF aSO aTY -dcF +aSJ aWT aYs aYp @@ -105038,21 +105058,21 @@ bOH aYo aaa aaf -cZz +cZy cZX dan day -cZz +cZy daO daY dai dbv daU -cZz +cZy cLU dcj dcx -cZz +cZy aaa aaa aaf @@ -105252,22 +105272,22 @@ ayv aoa aaf aaa -aDs -cZy -cZF -cZF -cZF -cZF -cZF -cZF -cZF -daD -daE -aSO -aTY -dcF -aWT -bxI +aaa +aaf +aGd +aHF +aHF +aHF +aHF +aHF +aHC +aHF +aHF +aSP +aTZ +aVu +aWU +aYt aYq bbz aYo @@ -105295,21 +105315,21 @@ bOI aSJ aaa aaf -cZz -cZz +cZF +cZK cZA -cZz -cZz +cZK +cZG daN cZS dai daL dbB cZz -cZz +cZK cZA -cZz -cZz +cZK +dbL aaa aaa aaf @@ -105509,23 +105529,23 @@ aoa aoa aoa aaf -aDs -cZy -cZF -cZF -cZF -cZK -cZF -cZF -cZF -daD -daE -dby +aaf +aaf +aGd +aHF +aHF +aHF +aLB +aHF +aHF +aHF +aHF +aHF aIO -aDs -dde -bxI -aYq +aVv +aWT +aYu +bac bbA aYo bew @@ -105766,20 +105786,20 @@ aaf aoa aoa aaf -aDs -cZy -cZF -cZF +aaa +aaf +aGd +aHG aHF -daa -cZF -cZF -cZF -daD -daG -dbL -dcA -dcJ +aHF +aHF +aHF +aOC +aHF +aHF +aHF +aIO +aSJ aWV aYv bad @@ -105802,7 +105822,7 @@ cZk cZi cZr cZi -cZk +cZw aYo aWO bzz @@ -106023,20 +106043,20 @@ aaf aaf aaf aaf -aDs -cZy -cZF -cZF -cZF -dab -cZF -cZF -cZF -daD -daE -dcy -dcE -dcK +aaf +aaf +aDr +aHH +aHF +aHF +aLC +aHF +aOD +aHF +aRk +aHF +aIO +aSJ aWW aYw aYo @@ -106070,13 +106090,13 @@ aaa aaa aaa aaa -cZz +cZF cZA cZA cZA cZA cZA -cZz +dbL aaa aaa aaa @@ -106279,22 +106299,22 @@ alQ aaf aaa aaf -aaa -aDs -cZy -cZF -cZF -cZF -cZF -cZF -cZF -cZF -daD -daE -aSO +alQ +alQ +alQ +aDr +aHI +aHF +aHF +aHF +aHF +aOD +aHF +aHF +aHF aUa -aDs -ddn +aSJ +aWT aYw bab bby @@ -106310,7 +106330,7 @@ bab bum bab bxK -bOI +bzC aSJ aYo aYo @@ -106537,32 +106557,32 @@ aaf aaf alQ alQ -aDs -cZy -cZF -cZF -cZF -cZF -cZF -cZF -cZF -daD -daE -aSO +aDt +aMz +aDr +aHJ +aIO +aIO +aHF +aHF +aOE +aQd +aRl +aRl aUb -aDs -ddn +aVw +aWX aYw aYo aYo aYo -bew -bew +bez +bgr bif bif bif -bew -bew +bgr +bpF aYo aYo aYo @@ -106794,32 +106814,32 @@ alQ aiv alQ alI -aDs -cZB -cZG -cZG -cZG -cZG -cZG -cZG -cZG +aDu +aoj +aDr +aHK +aIO +aIO +aIO +aNk +aOF aQe -daE +aRm aSQ aUc -aDs +aSJ aWY aYx bae aYo aaa -bev +beA bgs big big big bnJ -bev +bpG aaa aYo bvU @@ -107051,20 +107071,20 @@ alI auR aqS alI -aDs -aDs -aDs -aDs -aDs -aDs -aDs -aDs -aDs -aDs -aDs -aDs -aDs -aDs +aku +aoj +aDr +aDr +aIP +aIO +aLD +aDr +aDr +aDr +aDr +aDr +aDr +aSJ aWZ aYy baf @@ -107309,16 +107329,16 @@ awf awf aJS awf -bBG -avY -awf -awf -awf -awf -awf -awf -awf -awf +aEO +aGe +aDr +aDr +aKm +aDr +aDr +anf +aqU +aRn awf aUd aVx @@ -107566,16 +107586,16 @@ ana alQ aiv alQ -bRZ -aDt -cZJ -aoj -aoj -dau -auS -aku -aDu -alI +aEP +aGf +awf +awf +aKn +aJS +aNl +awf +aQf +axg aSR aUe alQ @@ -108331,25 +108351,25 @@ asj atA aaf aaa -axb -axb +axa +ayw axc -axb +ayw axc -axb -axb +ayw +aEQ aaa -cYM -cYM -cYM -cYM -cYM -cYM -cYM -cYM -cYM -cYM -cYM +cYL +cYO +cYO +cYO +cYO +cYO +cYO +cYO +cYO +cYV +cYZ aaa aaa alQ @@ -108606,7 +108626,7 @@ cYP cYP cYP cYW -cYM +cZb cZe aaf alQ @@ -109359,13 +109379,13 @@ asj atA aaf aaa -axb -axb +axd +ayw axc aAR axc -axb -axb +ayw +aES aaa cYM cYP @@ -109633,8 +109653,8 @@ cYS cYP cYP cYP -cYW -cYM +cYY +cZb cZf aaf alQ @@ -109881,17 +109901,17 @@ aCj ayz aaf aaa -cYM -cYM -cYM +cYN +cYO +cYO cYQ cYR -cYM +cYO cYT cWM -cYM -cYM -cYM +cYO +cYX +cZc aaa aaf alQ @@ -111434,7 +111454,7 @@ aNp aNp aLI aNp -cZw +aNp aYC bal bbN @@ -111668,7 +111688,7 @@ amW aog ahv aqm -asj +asr atE alI alI @@ -115028,7 +115048,7 @@ aLV awf bhD aQp -awf +aRC avY aUn awf @@ -115050,11 +115070,11 @@ bwh bwh bwh bwh -cYN +bDA byf byf bKb -bKd +bKc bLJ bBI bPa @@ -115307,14 +115327,14 @@ bwh byi bAa bBL +bDB +aOo +bGG +bDC +bKd +bBI bBI -byf -byf bBI -cYV -cYY -cYZ -cZc bQy bSi bTy @@ -115564,14 +115584,14 @@ bwh aGc bAb bwh -bDA -byf -byf -bDC bwh bwh bwh bwh +bLL +bNx +bNw +bPb bwh bSj bTz @@ -115821,18 +115841,18 @@ bwl bwh bwh bwh -cYO -bbn -bbn -cYO -bwh bwi -cZb +bbn aXs bwh bwh bwh bwh +bwh +bwh +bwh +bwh +bwh bVP bXk bYs @@ -116081,8 +116101,8 @@ bBM bwm bFb bwm -bwm -cYX +bLK +bFb bwm bwm bwm @@ -116147,10 +116167,10 @@ aaa ddg ddg ddg -ddb +deu ddg ddg -ddb +deu ddg ddg ddg @@ -116400,18 +116420,18 @@ cTH cRh cOU aaa -ddb +cTE ddi ddi ddi -ddb +deu ddi ddi -ddb +deu ddi ddi ddi -ddb +dem aaa aaa aaa @@ -116552,15 +116572,15 @@ aor apK ahj agw +atT +avc +awg avc avc -atU -avc -avc -atU -avc +awg avc avc +aDK aDN aDN aDN @@ -116657,19 +116677,19 @@ cSB cTI cOU ddb -ddb -ddb -ddb -ddb -ddb -ddb -ddb -ddb -ddb -ddb -ddb -ddb -ddb +dcF +dcF +dcF +dcF +dcF +dcF +dcF +dcy +dcF +dcF +dcF +dcF +dev aaa aaa aaa @@ -116921,7 +116941,7 @@ dei dek dej del -deu +dcU ddI ddI ddI @@ -117069,7 +117089,7 @@ agw atU ave awi -avc +axn ayK ayK ayK @@ -117178,7 +117198,7 @@ ddW ddj dcI ddv -ddb +dcA dcP dcP dcP @@ -117435,9 +117455,9 @@ dcI dcI ded ddx -ddb +dcE deb -dcC +dcJ dcP dcP deb @@ -117580,7 +117600,7 @@ aov ajs arf agw -avc +atV avc awk avc @@ -117588,7 +117608,7 @@ avc avc aBm avc -avc +aDM aDN aGy aIg @@ -117694,7 +117714,7 @@ dcI dcI ddS ddD -ddb +dcA dea dea dcz @@ -117941,20 +117961,20 @@ cSY cTp cTJ cUh -ddb -ddb +dcC +dcF ddk -ddb +ddc ddN -ddb +dfK ddk -ddb -ddb -ddb -ddb +dcF +ddO +dcF +ddn ddk -ddb -ddb +dcF +deq aaa aaa aaa @@ -118198,7 +118218,7 @@ cTa cTr cTL cOU -ddb +dcA ddH dcI dcI @@ -118206,12 +118226,12 @@ dcI dcI dcI ddH -ddb +dcE ddA ddA ddA den -ddb +dcA aaa aaa aaa @@ -118712,7 +118732,7 @@ cOU cOU cOU cOU -ddb +dcA ddf dcI ddl @@ -118840,7 +118860,7 @@ aaa aaa aaf aaa -aaX +aaM aaX aaX abv @@ -118973,16 +118993,16 @@ dcB dcI dcI ddl -deq +dcV ddf dcI ddl -ddb +dcA ddC ddV ddV ddB -ddb +dcA aaa aaa aaa @@ -119234,12 +119254,12 @@ dcz ddf dcI ddh -ddb -ddb +dcC +dcF ddY ddk -ddb -ddb +dcF +deq aaa aaa aaa @@ -119354,10 +119374,10 @@ aaa aaf aaf aaa +aaO aaX aaX -aaX -abv +abx abQ ack aax @@ -119487,16 +119507,16 @@ dcB dcI dcI ddl -deu +dcU ddf dcI ddl -ddb +dcA ddu ddt ddw dep -ddb +dcA aaa aaa aaa @@ -120267,7 +120287,7 @@ ddK ddK dcI ddp -ddb +dcA aaa aaa aaa @@ -120520,11 +120540,11 @@ ddf dcI ddl ddo -ddb +dcF dcz ddm -ddo -ddb +dcK +deq aaa aaa aaa @@ -120768,7 +120788,7 @@ cTd cRK cRK cRK -ddb +dcA dcM dcI ddl @@ -120776,12 +120796,12 @@ dcz ddf dcI ddl -ddb +dcA ddL ddZ dee des -ddb +dcA aaa aaa aaa @@ -121038,7 +121058,7 @@ ddM dcT dcP ddy -ddb +dcA aaa aaa aaa @@ -121290,7 +121310,7 @@ dcz ddf dcI ddl -deu +dcU ddR dcP dcP @@ -121796,7 +121816,7 @@ cRq cRK cRK cRK -ddb +dcA dcI dcI dcI @@ -121809,7 +121829,7 @@ ddT dcP dcP det -ddb +dcA aaa aaa aaa @@ -122053,7 +122073,7 @@ aaf aaa aaa aaf -ddb +dcA dcH dcG dcH @@ -122066,7 +122086,7 @@ ddU ddT ddT dcO -ddb +dcA aaf aaf aaf @@ -122310,20 +122330,20 @@ aaf aaf aaf aaf -ddb -ddb +dde +dcF dcz -ddb +dcF dcz -ddb +dcF dcz -ddb -ddb -ddb +dcF +ddn +dcF dcz dcz -ddb -ddb +dcF +dew aaa aaa aaf @@ -123229,9 +123249,9 @@ aed ajI akS ame -ddO -ddO -ddO +anC +anC +anC aru asM auf @@ -124517,7 +124537,7 @@ amq boY aoN aqe -arx +arz asR aui avi @@ -125031,7 +125051,7 @@ ams anI aoP aqg -arx +arz asT ajJ avi @@ -125285,9 +125305,9 @@ aed ajP ala amt -dem -dem -dem +anJ +anJ +anJ arB asU auk @@ -125423,7 +125443,7 @@ deR deS deW dfz -cXN +cTC cXl aaa aaa @@ -126164,7 +126184,7 @@ aaa aaa aaa aaf -cTE +crZ cTC cUq cUG @@ -127647,7 +127667,7 @@ bDZ bFJ bHt bJi -bPb +bDY bMq bNX bPL @@ -129957,7 +129977,7 @@ byY bAJ bza bAG -cXL +bAG bHA bJm bAG @@ -131443,7 +131463,7 @@ aaa acS adn adJ -adn +aei acS afH agF @@ -132209,12 +132229,12 @@ aaa aaa aaa aaa +aaf +aaf aai -aaa -aaa -ado +adp adM -ado +aej aeI afJ afJ @@ -132281,7 +132301,7 @@ bRs bJs bUo bVq -apk +bWI bXO apj bZm @@ -132466,10 +132486,10 @@ aaa aaa aaa aaa +aaa +aaa aag aaa -aaa -aaa bjU aaa aeJ @@ -132723,10 +132743,10 @@ aaa aaa aaa aaa +aaa +aaa aai aaf -aaf -aaf aai aaf aeI @@ -134587,7 +134607,7 @@ bEn bHQ bJz bKT -cZx +bDx atw cXn bRz @@ -134857,9 +134877,9 @@ bZs bCS cbS cdo -cYL -cZs -cZt +ceY +bzf +aaf bCV bCV bCV @@ -136622,10 +136642,10 @@ aVe ayo aYd ayp -atw -aqy -aqz -aXQ +ayo +bdd +bdf +dcR bjR bjR bjR @@ -136859,7 +136879,7 @@ ajh avN atw ayo -bWI +azn ayo ayo aDq @@ -136877,12 +136897,12 @@ aDq aDq ayo ayo -bWI +azn ayo -atw -apk +ayo +aKe dbT -atw +bjF bhI bjR bhH @@ -137136,13 +137156,13 @@ dbt aaf aYe aZT -atw +ayo dbC dcd -atw +bjF bhJ bjS -bhJ +blz bjF brs btK @@ -137393,8 +137413,8 @@ aaf aoa azq ayr -atw -atn +ayo +bde dce brr bhK @@ -137650,15 +137670,15 @@ aaf aWB aYf aZU -atw -apk -alw +ayo +aKe +aBZ brr bhK cWO bhK brr -aOx +bsE btL aOx bjF @@ -137907,14 +137927,14 @@ aaa aWC bVC ayr -atw -aqz -alw -aaa -bhK +ayo +bdf +aBZ +aaf +bhL bjV -bhK -aaa +blA +aaf aaf brt aaf @@ -138164,15 +138184,15 @@ aaa azq ayq azu -atw +ayo dbC -alw +aBZ aaf aaa cYF aaa aaf -aaf +aaa brt aaa aaf @@ -138421,9 +138441,9 @@ aaa azq ayr ayo -atw -apk -alw +ayo +aKe +aBZ aaf aaf aaf @@ -138679,8 +138699,8 @@ azq aYg ayo bbo -apk -alw +aKe +aBZ aaf aaa aaa @@ -138935,9 +138955,9 @@ aaf azq ayr ayo -atw -avD -alw +ayo +bdg +aBZ aaf aaa aaa @@ -139192,9 +139212,9 @@ aaa azq ayt aZT -atw +ayo dbC -alx +aDq aaf aaa aaa @@ -139449,9 +139469,9 @@ aaa azq bVC ayr -atw +ayo bdh -alw +aBZ aaf aaf aaa @@ -139706,10 +139726,10 @@ aaf aWB aYf azu -atw -atx -alw -alw +ayo +bdi +aBZ +aBZ aaf aaa aaa @@ -139963,10 +139983,10 @@ aaf azq azq ayu -atw -avS +ayo +aKg aZS -atx +bdi acn acn aaf @@ -140220,10 +140240,10 @@ aaf aWD ayu ayu -atw -atx -alw -alw +ayo +bdi +aBZ +aBZ aaf aaa aaa @@ -141000,7 +141020,7 @@ aaa aaa aaf aaa -brt +btN aaa aaf aaa @@ -144083,9 +144103,9 @@ aaf aaa aaa aaf -aaa +bpg brw -aaa +btO aaf aaa aaa @@ -144339,11 +144359,11 @@ aaa aaf aaf aaf -aaf +bni bph -bry +brx btP -aaf +bvK aaa aaa aaa @@ -144597,9 +144617,9 @@ aaf aaa aaa bnj -aaa +bpi bry -aaa +bpf bvL aaa aaa @@ -145111,9 +145131,9 @@ bhM bhM aPX bnl -aOr +bpj brz -aOr +btQ bvM aaa aaa @@ -145367,7 +145387,7 @@ aNi bhN bhN aPX -aNi +bnm bpk brA btR diff --git a/_maps/map_files/MiniStation/MiniStation.dmm b/_maps/map_files/MiniStation/MiniStation.dmm index 639699ef69..25d8fb7e6f 100644 --- a/_maps/map_files/MiniStation/MiniStation.dmm +++ b/_maps/map_files/MiniStation/MiniStation.dmm @@ -22,13 +22,8 @@ /turf/open/space, /area/space) "ad" = ( -/obj/structure/rack, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 4; - name = "4maintenance loot spawner" - }, -/turf/open/floor/plating, -/area/maintenance/starboard) +/turf/closed/mineral/random/low_chance, +/area/mine/explored) "ae" = ( /obj/docking_port/stationary{ dheight = 9; @@ -47,7 +42,7 @@ /area/mine/unexplored) "ag" = ( /turf/closed/mineral/random/high_chance, -/area/mine/unexplored) +/area/mine/explored) "ah" = ( /turf/closed/wall, /area/bridge) @@ -520,9 +515,9 @@ /turf/closed/wall, /area/bridge) "bm" = ( -/obj/structure/table, -/obj/machinery/microwave, -/turf/open/floor/mineral/plastitanium, +/turf/closed/wall/shuttle{ + icon_state = "wall3" + }, /area/shuttle/syndicate) "bn" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber{ @@ -596,13 +591,13 @@ pixel_y = 0 }, /turf/closed/wall, -/area/maintenance/fore) +/area/hallway/primary/central) "bz" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ dir = 8 }, /turf/open/floor/plating, -/area/maintenance/fore) +/area/hallway/primary/central) "bA" = ( /obj/machinery/airalarm{ pixel_y = 23 @@ -610,11 +605,6 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/closet/crate{ - icon_state = "crateopen"; - opened = 1 - }, -/obj/effect/spawner/lootdrop/maintenance, /turf/open/floor/plating, /area/bridge) "bB" = ( @@ -664,12 +654,8 @@ "bG" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/structure/closet, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 8; - name = "8maintenance loot spawner" - }, /turf/open/floor/plating, -/area/maintenance/fore) +/area/hallway/primary/central) "bH" = ( /obj/structure/plasticflaps/mining, /obj/machinery/conveyor{ @@ -717,14 +703,14 @@ req_access_txt = "13" }, /turf/open/floor/plating, -/area/maintenance/fore) +/area/hallway/primary/central) "bN" = ( /turf/open/floor/plating, -/area/maintenance/fore) +/area/hallway/primary/central) "bO" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/open/floor/plating, -/area/maintenance/fore) +/area/hallway/primary/central) "bP" = ( /obj/structure/cable{ d1 = 1; @@ -763,11 +749,11 @@ pixel_y = 0 }, /turf/open/floor/plating, -/area/maintenance/fore) +/area/hallway/primary/central) "bT" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/plating, -/area/maintenance/fore) +/area/hallway/primary/central) "bU" = ( /turf/closed/wall, /area/medical/research{ @@ -801,11 +787,9 @@ /turf/open/floor/plasteel, /area/quartermaster/storage) "bY" = ( -/obj/machinery/conveyor{ - dir = 4; - id = "mining_internal" +/turf/open/floor/plasteel/loadingarea{ + dir = 4 }, -/turf/open/floor/plasteel, /area/quartermaster/storage) "bZ" = ( /obj/machinery/mineral/processing_unit{ @@ -825,14 +809,15 @@ /turf/open/floor/plasteel, /area/quartermaster/storage) "cb" = ( -/obj/machinery/door/airlock/maintenance{ - req_access_txt = "12" +/obj/machinery/mineral/stacking_machine{ + input_dir = 8; + output_dir = 4 }, -/turf/open/floor/plating, -/area/maintenance/starboard) +/turf/open/floor/plasteel, +/area/quartermaster/storage) "cc" = ( /obj/machinery/conveyor{ - dir = 6; + dir = 9; id = "mining_internal" }, /turf/open/floor/plasteel, @@ -859,7 +844,7 @@ dir = 4 }, /turf/open/floor/plating, -/area/maintenance/fore) +/area/hallway/primary/central) "cg" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ dir = 4 @@ -893,7 +878,7 @@ dir = 8 }, /turf/open/floor/plating, -/area/maintenance/fore) +/area/hallway/primary/central) "cj" = ( /turf/closed/wall/r_wall, /area/security/brig) @@ -996,12 +981,12 @@ /turf/closed/wall, /area/quartermaster/storage) "cv" = ( -/obj/machinery/conveyor{ - dir = 2; - id = "mining_bypass" +/obj/machinery/mineral/stacking_unit_console{ + layer = 3; + machinedir = 5; + pixel_y = 0 }, -/obj/structure/plasticflaps, -/turf/open/floor/plating, +/turf/closed/wall, /area/quartermaster/storage) "cw" = ( /obj/machinery/conveyor{ @@ -1013,12 +998,8 @@ /area/quartermaster/storage) "cx" = ( /obj/structure/closet, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 3; - name = "3maintenance loot spawner" - }, /turf/open/floor/plating, -/area/maintenance/fore) +/area/hallway/primary/central) "cy" = ( /turf/open/floor/plasteel/blue/side{ dir = 1 @@ -1211,7 +1192,7 @@ icon_state = "2-4" }, /turf/open/floor/plating, -/area/maintenance/starboard) +/area/hallway/primary/central) "cU" = ( /obj/structure/cable{ d1 = 4; @@ -1220,7 +1201,7 @@ pixel_x = 0 }, /turf/open/floor/plating, -/area/maintenance/fore) +/area/hallway/primary/central) "cV" = ( /obj/structure/cable{ d1 = 4; @@ -1230,7 +1211,7 @@ }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden, /turf/open/floor/plating, -/area/maintenance/fore) +/area/hallway/primary/central) "cW" = ( /obj/structure/cable{ d1 = 4; @@ -1242,7 +1223,7 @@ req_access_txt = "12" }, /turf/open/floor/plating, -/area/maintenance/fore) +/area/hallway/primary/central) "cX" = ( /obj/structure/cable{ d1 = 4; @@ -1299,7 +1280,7 @@ icon_state = "1-8" }, /turf/open/floor/plating, -/area/maintenance/fore) +/area/hallway/primary/central) "db" = ( /obj/structure/cable{ d1 = 4; @@ -1309,7 +1290,7 @@ }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/plating, -/area/maintenance/fore) +/area/hallway/primary/central) "dc" = ( /obj/machinery/power/apc{ auto_name = 1; @@ -1446,9 +1427,11 @@ name = "Research Division" }) "dp" = ( -/turf/open/floor/plasteel/loadingarea{ - dir = 1 +/obj/machinery/firealarm{ + dir = 8; + pixel_x = -24 }, +/turf/open/floor/plasteel/bot, /area/quartermaster/storage) "dq" = ( /turf/open/floor/plasteel/bot, @@ -1477,7 +1460,7 @@ "dt" = ( /obj/machinery/light/small, /turf/open/floor/plating, -/area/maintenance/fore) +/area/hallway/primary/central) "du" = ( /obj/structure/closet/secure_closet/personal, /obj/machinery/airalarm{ @@ -1501,9 +1484,7 @@ "dx" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden, /turf/closed/wall, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) +/area/hallway/primary/central) "dy" = ( /obj/machinery/status_display{ density = 0; @@ -1511,7 +1492,7 @@ supply_display = 1 }, /turf/closed/wall, -/area/maintenance/fore) +/area/hallway/primary/central) "dz" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ dir = 1 @@ -1635,19 +1616,11 @@ name = "Research Division" }) "dN" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 +/obj/machinery/mineral/equipment_vendor, +/turf/open/floor/plasteel/brown/corner{ + dir = 8 }, -/obj/machinery/door/airlock/maintenance{ - req_access_txt = "12" - }, -/turf/open/floor/plating, -/area/maintenance/aft{ - name = "Aft Maintenance" - }) +/area/quartermaster/storage) "dO" = ( /obj/effect/landmark/start{ name = "Cargo Technician" @@ -1918,13 +1891,19 @@ /turf/open/floor/plating, /area/security/brig) "eu" = ( -/turf/closed/wall/mineral/plastitanium, +/turf/open/space, +/obj/machinery/porta_turret/syndicate, +/turf/closed/wall/shuttle{ + dir = 8; + icon_state = "diagonalWall3" + }, /area/shuttle/syndicate) "ev" = ( -/turf/closed/wall, -/area/maintenance/aft{ - name = "Aft Maintenance" - }) +/obj/machinery/suit_storage_unit/mining/eva, +/turf/open/floor/plasteel/brown{ + dir = 8 + }, +/area/quartermaster/storage) "ew" = ( /obj/machinery/door/firedoor, /obj/machinery/door/airlock/glass_mining{ @@ -2233,13 +2212,22 @@ /turf/closed/wall, /area/space) "eY" = ( -/obj/structure/reagent_dispensers/watertank, -/turf/open/floor/plating, -/area/maintenance/aft{ - name = "Aft Maintenance" - }) +/turf/closed/wall/shuttle{ + icon_state = "wall3" + }, +/area/space) "eZ" = ( -/obj/structure/closet/wardrobe/cargotech, +/obj/structure/rack, +/obj/item/weapon/pickaxe, +/obj/item/weapon/pickaxe{ + pixel_x = 5 + }, +/obj/item/weapon/shovel{ + pixel_x = -5 + }, +/obj/item/weapon/shovel{ + pixel_x = -5 + }, /turf/open/floor/plasteel/brown{ dir = 8 }, @@ -2458,7 +2446,7 @@ pixel_x = -25; pixel_y = 0 }, -/obj/structure/closet/wardrobe/cargotech, +/obj/structure/closet/wardrobe/miner, /turf/open/floor/plasteel/brown/corner{ dir = 1 }, @@ -2486,11 +2474,11 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, +/obj/structure/closet/wardrobe/cargotech, /obj/machinery/light{ icon_state = "tube1"; dir = 4 }, -/obj/structure/closet/wardrobe/cargotech, /turf/open/floor/plasteel/yellow/side{ dir = 4 }, @@ -2936,18 +2924,11 @@ name = "Research Division" }) "gy" = ( +/obj/structure/closet/crate, /obj/machinery/camera/autoname{ dir = 8 }, /obj/item/weapon/ore/glass, -/obj/structure/closet/crate{ - icon_state = "crateopen"; - opened = 1 - }, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 2; - name = "2maintenance loot spawner" - }, /turf/open/floor/plasteel/bot, /area/quartermaster/storage) "gz" = ( @@ -2993,7 +2974,6 @@ "gD" = ( /obj/structure/closet/crate, /obj/item/weapon/ore/slag, -/obj/effect/spawner/lootdrop/maintenance, /turf/open/floor/plasteel/bot, /area/quartermaster/storage) "gE" = ( @@ -3243,18 +3223,10 @@ /area/quartermaster/storage) "hb" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/effect/spawner/lootdrop/maintenance, /turf/open/floor/plasteel/bot, /area/quartermaster/storage) "hc" = ( -/obj/structure/closet/crate{ - icon_state = "crateopen"; - opened = 1 - }, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 2; - name = "2maintenance loot spawner" - }, +/obj/structure/closet/crate, /turf/open/floor/plasteel/bot, /area/quartermaster/storage) "hd" = ( @@ -3466,10 +3438,6 @@ "hy" = ( /obj/structure/closet/crate, /obj/item/weapon/ore/glass, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 2; - name = "2maintenance loot spawner" - }, /turf/open/floor/plasteel/bot, /area/quartermaster/storage) "hz" = ( @@ -3593,13 +3561,8 @@ /area/hallway/primary/central) "hP" = ( /obj/machinery/camera{ - active_power_usage = 0; - c_tag = "Bomb Test Site"; - desc = "A specially-reinforced camera with a long lasting battery, used to monitor the bomb testing site."; + c_tag = "Toxin Test Site"; dir = 8; - invuln = 1; - light = null; - name = "Hardened Bomb-Test Camera"; network = list("RD","Toxins"); use_power = 0 }, @@ -3672,12 +3635,8 @@ name = "Research Division" }) "hY" = ( +/obj/structure/closet/crate, /obj/item/weapon/ore/iron, -/obj/structure/closet/crate{ - icon_state = "crateopen"; - opened = 1 - }, -/obj/effect/spawner/lootdrop/maintenance, /turf/open/floor/plasteel/bot, /area/quartermaster/storage) "hZ" = ( @@ -3719,7 +3678,6 @@ pixel_x = 24 }, /obj/structure/closet/crate, -/obj/effect/spawner/lootdrop/maintenance, /turf/open/floor/plasteel/bot, /area/quartermaster/storage) "id" = ( @@ -3981,10 +3939,8 @@ desc = "A warning sign which reads 'BOMB RANGE"; name = "BOMB RANGE" }, -/turf/closed/indestructible{ - desc = "A wall impregnated with Fixium, able to withstand massive explosions with ease"; - icon_state = "riveted"; - name = "hyper-reinforced wall" +/turf/closed/wall/shuttle{ + icon_state = "wall3" }, /area/space) "iE" = ( @@ -3992,7 +3948,7 @@ dir = 6 }, /turf/open/floor/plating, -/area/maintenance/fore) +/area/hallway/primary/central) "iF" = ( /obj/effect/landmark/start{ name = "Assistant" @@ -4056,10 +4012,10 @@ /area/hallway/primary/central) "iM" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/door/firedoor, /obj/machinery/door/airlock/glass{ name = "Central Access" }, +/obj/machinery/door/firedoor, /turf/open/floor/plasteel, /area/hallway/primary/central) "iN" = ( @@ -4069,17 +4025,17 @@ icon_state = "1-2"; pixel_y = 0 }, -/obj/machinery/door/firedoor, /obj/machinery/door/airlock/glass{ name = "Central Access" }, +/obj/machinery/door/firedoor, /turf/open/floor/plasteel, /area/hallway/primary/central) "iO" = ( -/obj/machinery/door/firedoor, /obj/machinery/door/airlock/glass{ name = "Central Access" }, +/obj/machinery/door/firedoor, /turf/open/floor/plasteel, /area/hallway/primary/central) "iP" = ( @@ -4095,9 +4051,7 @@ /obj/machinery/portable_atmospherics/pump, /obj/machinery/atmospherics/components/unary/portables_connector/visible, /turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) +/area/hallway/primary/central) "iR" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber{ dir = 2; @@ -4193,12 +4147,13 @@ name = "Research Division" }) "jc" = ( -/turf/open/floor/plating, -/area/maintenance/aft{ - name = "Aft Maintenance" - }) +/turf/closed/wall/shuttle{ + icon_state = "swall_s6"; + dir = 2 + }, +/area/shuttle/arrival) "jd" = ( -/obj/machinery/door/airlock/titanium{ +/obj/machinery/door/airlock/shuttle{ name = "Arrivals Shuttle Airlock" }, /obj/docking_port/mobile{ @@ -4207,7 +4162,7 @@ height = 7; id = "arrival"; name = "arrival shuttle"; - port_angle = -90; + travelDir = -90; width = 15 }, /obj/docking_port/stationary{ @@ -4218,12 +4173,11 @@ name = "port bay 1"; width = 15 }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/arrival) "je" = ( /obj/machinery/light/small, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/effect/spawner/lootdrop/maintenance, /turf/open/floor/plasteel/bot, /area/quartermaster/storage) "jf" = ( @@ -4310,9 +4264,7 @@ dir = 1 }, /turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) +/area/hallway/primary/central) "jp" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -4760,33 +4712,24 @@ }, /obj/structure/reagent_dispensers/watertank, /turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) +/area/hallway/primary/central) "kj" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/effect/spawner/lootdrop/maintenance, /turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) +/area/hallway/primary/central) "kk" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, /turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) +/area/hallway/primary/central) "kl" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden, /turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) +/area/hallway/primary/central) "km" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 @@ -5046,25 +4989,19 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/machinery/space_heater, /turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) +/area/hallway/primary/central) "kS" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ dir = 8 }, /turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) +/area/hallway/primary/central) "kT" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, /turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) +/area/hallway/primary/central) "kU" = ( /obj/structure/rack{ dir = 1 @@ -5074,11 +5011,8 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/effect/spawner/lootdrop/maintenance, /turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) +/area/hallway/primary/central) "kV" = ( /obj/structure/rack{ dir = 1 @@ -5088,11 +5022,8 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/effect/spawner/lootdrop/maintenance, /turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) +/area/hallway/primary/central) "kW" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, /turf/closed/wall, @@ -5234,9 +5165,7 @@ dir = 4 }, /turf/closed/wall, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) +/area/hallway/secondary/exit) "lq" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 @@ -5244,17 +5173,13 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/machinery/space_heater, /turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) +/area/hallway/primary/central) "lr" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 9 }, /turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) +/area/hallway/primary/central) "ls" = ( /obj/machinery/light{ icon_state = "tube1"; @@ -5270,15 +5195,15 @@ icon_state = "2-8" }, /turf/open/floor/plating, -/area/maintenance/starboard) +/area/hallway/primary/central) "lu" = ( /obj/machinery/vending/assist, /turf/open/floor/plating, -/area/maintenance/starboard) +/area/hallway/primary/central) "lv" = ( /obj/machinery/vending/tool, /turf/open/floor/plating, -/area/maintenance/starboard) +/area/hallway/primary/central) "lw" = ( /obj/machinery/conveyor{ dir = 4; @@ -5486,9 +5411,7 @@ dir = 4 }, /turf/closed/wall, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) +/area/hallway/secondary/exit) "lO" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 @@ -5499,17 +5422,13 @@ name = "Distribution Loop" }, /turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) +/area/hallway/primary/central) "lP" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 10 }, /turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) +/area/hallway/primary/central) "lQ" = ( /obj/structure/reagent_dispensers/watertank, /obj/machinery/atmospherics/components/unary/vent_scrubber{ @@ -5522,19 +5441,14 @@ /turf/open/floor/plating/warnplate{ dir = 4 }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) +/area/hallway/primary/central) "lS" = ( /obj/machinery/conveyor{ dir = 4; id = "recycler" }, -/obj/effect/spawner/lootdrop/maintenance, /turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) +/area/hallway/primary/central) "lT" = ( /obj/machinery/conveyor{ dir = 4; @@ -5542,9 +5456,7 @@ }, /obj/machinery/recycler, /turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) +/area/hallway/primary/central) "lU" = ( /obj/machinery/airalarm{ dir = 8; @@ -5561,9 +5473,7 @@ stack_amt = 10 }, /turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) +/area/hallway/primary/central) "lW" = ( /obj/machinery/mineral/stacking_unit_console{ dir = 2; @@ -5571,11 +5481,8 @@ pixel_y = 27 }, /obj/structure/chair/stool, -/obj/effect/spawner/lootdrop/maintenance, /turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) +/area/hallway/primary/central) "lX" = ( /obj/structure/cable{ d1 = 4; @@ -5587,9 +5494,7 @@ req_access_txt = "12" }, /turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) +/area/hallway/primary/central) "lY" = ( /obj/structure/cable{ d1 = 4; @@ -5624,7 +5529,7 @@ icon_state = "1-8" }, /turf/open/floor/plating, -/area/maintenance/starboard) +/area/hallway/primary/central) "mb" = ( /turf/closed/wall/r_wall, /area/ai_monitored/storage/eva) @@ -5798,52 +5703,36 @@ /area/hallway/secondary/exit) "mr" = ( /obj/structure/closet, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 4; - name = "4maintenance loot spawner" - }, /turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) +/area/hallway/secondary/exit) "ms" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 5 }, /turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) +/area/hallway/primary/central) "mt" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 9 }, /turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) +/area/hallway/primary/central) "mu" = ( /obj/machinery/light/small{ dir = 1 }, /turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) +/area/hallway/primary/central) "mv" = ( /turf/open/floor/plating/warnplate/corner{ dir = 8 }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) +/area/hallway/primary/central) "mw" = ( /turf/open/floor/plating/warnplate{ dir = 1 }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) +/area/hallway/primary/central) "mx" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 5 @@ -5856,9 +5745,7 @@ name = "recycler conveyor" }, /turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) +/area/hallway/primary/central) "mz" = ( /obj/structure/cable{ d1 = 1; @@ -5870,9 +5757,7 @@ dir = 4 }, /turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) +/area/hallway/primary/central) "mA" = ( /obj/structure/table, /obj/item/clothing/head/welding, @@ -5952,7 +5837,7 @@ name = "blobstart" }, /turf/open/floor/plating, -/area/maintenance/starboard) +/area/hallway/primary/central) "mH" = ( /obj/structure/cable{ d1 = 1; @@ -5966,7 +5851,7 @@ pixel_y = 0 }, /turf/open/floor/plating, -/area/maintenance/starboard) +/area/hallway/primary/central) "mI" = ( /obj/machinery/power/apc{ auto_name = 1; @@ -6112,9 +5997,7 @@ req_access_txt = "12" }, /turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) +/area/hallway/secondary/exit) "mV" = ( /obj/structure/cable{ d1 = 4; @@ -6123,9 +6006,7 @@ pixel_x = 0 }, /turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) +/area/hallway/secondary/exit) "mW" = ( /obj/structure/cable{ d1 = 2; @@ -6133,16 +6014,12 @@ icon_state = "2-8" }, /turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) +/area/hallway/secondary/exit) "mX" = ( /turf/open/floor/plating/warnplate/corner{ dir = 4 }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) +/area/hallway/primary/central) "mY" = ( /obj/structure/cable{ d1 = 1; @@ -6150,9 +6027,7 @@ icon_state = "1-8" }, /turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) +/area/hallway/primary/central) "mZ" = ( /obj/structure/table, /obj/item/stack/sheet/rglass{ @@ -6198,9 +6073,8 @@ /obj/machinery/light/small{ dir = 8 }, -/obj/effect/spawner/lootdrop/maintenance, /turf/open/floor/plating, -/area/maintenance/starboard) +/area/hallway/primary/central) "nf" = ( /obj/structure/cable{ d1 = 1; @@ -6210,18 +6084,10 @@ }, /mob/living/simple_animal/mouse, /turf/open/floor/plating, -/area/maintenance/starboard) +/area/hallway/primary/central) "ng" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/turf/open/floor/plating, -/area/maintenance/aft{ - name = "Aft Maintenance" - }) +/turf/closed/wall/r_wall, +/area/hallway/primary/central) "nh" = ( /obj/machinery/conveyor_switch{ id = "ToxinLoad" @@ -6424,9 +6290,7 @@ pixel_y = 0 }, /turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) +/area/hallway/secondary/exit) "nz" = ( /obj/structure/closet/secure_closet/personal, /obj/machinery/airalarm{ @@ -6456,30 +6320,22 @@ name = "Distribution Loop" }, /turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) +/area/hallway/primary/central) "nD" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 10 }, /turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) +/area/hallway/primary/central) "nE" = ( /mob/living/simple_animal/mouse, /turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) +/area/hallway/primary/central) "nF" = ( /turf/open/floor/plating/warnplate{ dir = 9 }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) +/area/hallway/primary/central) "nG" = ( /obj/structure/table, /obj/item/stack/sheet/metal{ @@ -6519,7 +6375,7 @@ "nM" = ( /obj/machinery/space_heater, /turf/open/floor/plating, -/area/maintenance/starboard) +/area/hallway/primary/central) "nN" = ( /obj/structure/cable{ d1 = 1; @@ -6527,7 +6383,7 @@ icon_state = "1-4" }, /turf/open/floor/plating, -/area/maintenance/starboard) +/area/hallway/primary/central) "nO" = ( /obj/machinery/power/apc{ auto_name = 1; @@ -6554,7 +6410,7 @@ /area/medical/medbay) "nR" = ( /obj/structure/table, -/obj/item/clothing/neck/stethoscope, +/obj/item/clothing/tie/stethoscope, /turf/open/floor/plasteel/white, /area/medical/medbay) "nS" = ( @@ -6631,9 +6487,7 @@ }, /obj/machinery/light/small, /turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) +/area/hallway/secondary/exit) "nZ" = ( /obj/machinery/power/apc{ auto_name = 1; @@ -6721,9 +6575,7 @@ icon_state = "2-4" }, /turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) +/area/hallway/primary/central) "oi" = ( /obj/machinery/power/apc{ auto_name = 1; @@ -6793,7 +6645,7 @@ "on" = ( /obj/structure/reagent_dispensers/watertank, /turf/open/floor/plating, -/area/maintenance/starboard) +/area/hallway/primary/central) "oo" = ( /obj/effect/landmark/start{ name = "Assistant" @@ -6996,9 +6848,7 @@ /turf/open/floor/plating/warnplate{ dir = 10 }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) +/area/hallway/primary/central) "oM" = ( /obj/machinery/light{ icon_state = "tube1"; @@ -7147,16 +6997,9 @@ }, /area/medical/medbay) "ph" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/closet, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 2; - name = "2maintenance loot spawner" - }, +/obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, -/area/maintenance/aft{ - name = "Aft Maintenance" - }) +/area/shuttle/arrival) "pi" = ( /obj/structure/chair/comfy/beige, /turf/open/floor/plasteel/grimy, @@ -7237,9 +7080,7 @@ pixel_y = 0 }, /turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) +/area/hallway/primary/central) "ps" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 @@ -7258,7 +7099,7 @@ dir = 1 }, /turf/open/floor/plating, -/area/maintenance/starboard) +/area/hallway/primary/central) "pu" = ( /obj/machinery/power/apc{ auto_name = 1; @@ -7297,9 +7138,7 @@ /obj/structure/cable, /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, -/area/maintenance/aft{ - name = "Aft Maintenance" - }) +/area/hallway/primary/central) "py" = ( /obj/structure/toilet{ pixel_y = 8 @@ -7322,14 +7161,10 @@ /area/hallway/primary/central) "pA" = ( /obj/structure/closet, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 3; - name = "3maintenance loot spawner" - }, /turf/open/floor/plating/warnplate/corner{ dir = 8 }, -/area/maintenance/starboard) +/area/hallway/primary/central) "pB" = ( /obj/structure/sink{ icon_state = "sink"; @@ -7397,8 +7232,7 @@ /area/medical/medbay) "pK" = ( /obj/structure/table/optable, -/obj/item/weapon/surgical_drapes, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "pL" = ( /obj/structure/cable{ @@ -7724,9 +7558,7 @@ req_access_txt = "12" }, /turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) +/area/hallway/primary/central) "qy" = ( /obj/structure/cable{ d1 = 4; @@ -8075,12 +7907,14 @@ /turf/open/floor/plasteel/white, /area/medical/medbay) "rm" = ( -/obj/machinery/atmospherics/pipe/simple{ - dir = 4 - }, -/obj/structure/grille, /obj/machinery/meter, -/turf/closed/wall/r_wall, +/obj/machinery/atmospherics/pipe/simple{ + dir = 4; + icon_state = "intact"; + level = 2 + }, +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plating/airless, /area/engine/engineering) "rn" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -8376,7 +8210,7 @@ /obj/machinery/light/small{ dir = 1 }, -/obj/machinery/telecomms/server/presets/common/birdstation, +/obj/machinery/telecomms/bus/preset_one/ministation, /turf/open/floor/plasteel/black{ name = "Mainframe Floor"; initial_gas_mix = "n2=100;TEMP=80" @@ -8649,11 +8483,12 @@ /turf/open/floor/plasteel/white, /area/medical/medbay) "sF" = ( -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plating, -/area/maintenance/aft{ - name = "Aft Maintenance" - }) +/obj/machinery/telecomms/receiver/preset_left/ministation, +/turf/open/floor/plasteel/black{ + name = "Mainframe Floor"; + initial_gas_mix = "n2=100;TEMP=80" + }, +/area/tcommsat/computer) "sG" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 @@ -8850,9 +8685,7 @@ dir = 10 }, /turf/open/floor/plating, -/area/maintenance/aft{ - name = "Aft Maintenance" - }) +/area/hallway/primary/central) "sY" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber{ dir = 4; @@ -9195,9 +9028,7 @@ dir = 4 }, /turf/closed/wall, -/area/maintenance/aft{ - name = "Aft Maintenance" - }) +/area/hallway/primary/central) "tO" = ( /obj/machinery/firealarm{ dir = 8; @@ -9206,8 +9037,10 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "tP" = ( +/obj/structure/transit_tube{ + icon_state = "N-S" + }, /obj/structure/window/reinforced/fulltile, -/obj/structure/transit_tube, /turf/open/floor/plating, /area/engine/engineering) "tQ" = ( @@ -9456,9 +9289,7 @@ pixel_y = 0 }, /turf/open/floor/plating, -/area/maintenance/aft{ - name = "Aft Maintenance" - }) +/area/hallway/primary/central) "uv" = ( /obj/structure/closet/emcloset, /turf/open/floor/plasteel/blue/side{ @@ -9466,8 +9297,10 @@ }, /area/hallway/primary/central) "uw" = ( +/obj/structure/transit_tube{ + icon_state = "N-S" + }, /obj/structure/window/reinforced/fulltile, -/obj/structure/transit_tube, /turf/open/floor/plating, /area/tcommsat/computer) "ux" = ( @@ -9549,7 +9382,13 @@ /turf/open/floor/wood, /area/crew_quarters/bar) "uI" = ( -/turf/open/floor/mineral/plastitanium, +/obj/structure/grille, +/obj/machinery/door/poddoor/shutters{ + id = "syndieshutters"; + name = "blast shutters" + }, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, /area/shuttle/syndicate) "uJ" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -9804,7 +9643,10 @@ /turf/open/floor/plasteel/white, /area/medical/medbay) "vm" = ( -/turf/closed/wall/mineral/titanium, +/turf/closed/wall/shuttle{ + icon_state = "swall12"; + dir = 2 + }, /area/shuttle/arrival) "vn" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -9818,33 +9660,29 @@ /turf/open/floor/plating/airless, /area/space) "vp" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 10 +/turf/closed/wall/shuttle{ + icon_state = "swall14"; + dir = 2 }, -/turf/open/floor/plating, -/area/maintenance/aft{ - name = "Aft Maintenance" - }) +/area/shuttle/arrival) "vq" = ( -/obj/machinery/door/airlock/titanium{ +/obj/machinery/door/airlock/shuttle{ name = "Arrivals Shuttle Airlock" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/arrival) "vr" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 10 +/turf/closed/wall/shuttle{ + icon_state = "swall_s10"; + dir = 2 }, -/turf/open/floor/plating, -/area/maintenance/aft{ - name = "Aft Maintenance" - }) +/area/shuttle/arrival) "vs" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/aft{ - name = "Aft Maintenance" - }) +/turf/closed/wall/shuttle{ + icon_state = "swall11"; + dir = 2 + }, +/area/shuttle/arrival) "vt" = ( /obj/structure/cable{ d1 = 1; @@ -9927,9 +9765,7 @@ dir = 4 }, /turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) +/area/hallway/primary/central) "vF" = ( /obj/machinery/atmospherics/components/unary/vent_pump{ dir = 1; @@ -10035,36 +9871,34 @@ /turf/open/floor/plasteel/white, /area/medical/medbay) "vS" = ( -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/arrival) "vT" = ( /obj/structure/closet/wardrobe/green, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/arrival) "vU" = ( /obj/machinery/computer/arcade, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/arrival) "vV" = ( /obj/structure/closet/wardrobe/mixed, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/arrival) "vW" = ( /obj/structure/closet/wardrobe/black, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/arrival) "vX" = ( /obj/structure/closet/wardrobe/grey, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/arrival) "vY" = ( -/obj/machinery/door/airlock/maintenance{ - req_access_txt = "12" +/turf/closed/wall/shuttle{ + icon_state = "swall7"; + dir = 2 }, -/turf/open/floor/plating, -/area/maintenance/aft{ - name = "Aft Maintenance" - }) +/area/shuttle/arrival) "vZ" = ( /obj/structure/shuttle/engine/propulsion{ icon_state = "propulsion"; @@ -10073,8 +9907,11 @@ /turf/open/floor/plating/airless, /area/shuttle/arrival) "wa" = ( -/turf/open/floor/mineral/titanium/blue, -/turf/closed/wall/mineral/titanium/interior, +/turf/open/floor/plasteel/shuttle, +/turf/closed/wall/shuttle{ + icon_state = "swall_f9"; + dir = 2 + }, /area/shuttle/arrival) "wb" = ( /obj/structure/rack{ @@ -10082,14 +9919,8 @@ layer = 2.9 }, /obj/item/weapon/tank/internals/emergency_oxygen, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 2; - name = "2maintenance loot spawner" - }, /turf/open/floor/plating, -/area/maintenance/aft{ - name = "Aft Maintenance" - }) +/area/hallway/primary/central) "wc" = ( /turf/closed/wall, /area/crew_quarters/heads{ @@ -10100,14 +9931,8 @@ dir = 1 }, /obj/structure/closet, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 2; - name = "2maintenance loot spawner" - }, /turf/open/floor/plating, -/area/maintenance/aft{ - name = "Aft Maintenance" - }) +/area/hallway/primary/central) "we" = ( /obj/structure/piano, /turf/open/floor/plasteel/bar, @@ -10199,7 +10024,7 @@ /turf/open/floor/plating/warnplate/corner{ dir = 2 }, -/area/maintenance/starboard) +/area/hallway/primary/central) "wp" = ( /obj/structure/cable{ icon_state = "0-2"; @@ -10255,16 +10080,16 @@ /turf/open/floor/plating, /area/engine/gravity_generator) "wu" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/maintenance/aft{ - name = "Aft Maintenance" - }) +/turf/closed/wall/shuttle{ + icon_state = "swall3"; + dir = 2 + }, +/area/shuttle/arrival) "wv" = ( /obj/structure/chair{ dir = 8 }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/arrival) "ww" = ( /obj/structure/chair{ @@ -10273,7 +10098,7 @@ /obj/effect/landmark{ name = "JoinLate" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/arrival) "wx" = ( /obj/structure/shuttle/engine/heater{ @@ -10286,24 +10111,27 @@ /turf/open/floor/plating/airless, /area/shuttle/arrival) "wy" = ( -/obj/machinery/atmospherics/components/unary/vent_pump/high_volume{ +/obj/machinery/atmospherics/components/unary/vent_pump{ dir = 8; external_pressure_bound = 0; - frequency = 1441; - icon_state = "vent_map"; - id_tag = "air_out"; - internal_pressure_bound = 2000; + frequency = 1444; + id_tag = "o2_out"; + initialize_directions = 1; + internal_pressure_bound = 4000; on = 1; pressure_checks = 2; pump_direction = 0 }, -/turf/open/floor/engine/air, +/turf/open/floor/engine{ + name = "air floor"; + initial_gas_mix = "n2=10580;o2=2644" + }, /area/engine/engineering) "wz" = ( /obj/effect/landmark{ name = "Observer-Start" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/arrival) "wA" = ( /obj/machinery/power/apc{ @@ -10343,9 +10171,7 @@ icon_state = "2-4" }, /turf/open/floor/plating, -/area/maintenance/aft{ - name = "Aft Maintenance" - }) +/area/hallway/primary/central) "wD" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ dir = 8 @@ -10357,9 +10183,7 @@ pixel_y = 0 }, /turf/open/floor/plating, -/area/maintenance/aft{ - name = "Aft Maintenance" - }) +/area/hallway/primary/central) "wE" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 10 @@ -10371,9 +10195,7 @@ pixel_y = 0 }, /turf/open/floor/plating, -/area/maintenance/aft{ - name = "Aft Maintenance" - }) +/area/hallway/primary/central) "wF" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 5 @@ -10384,9 +10206,7 @@ icon_state = "1-8" }, /turf/open/floor/plating, -/area/maintenance/aft{ - name = "Aft Maintenance" - }) +/area/hallway/primary/central) "wG" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/closed/wall, @@ -10481,25 +10301,18 @@ /turf/open/floor/plasteel, /area/engine/engineering) "wU" = ( -/obj/structure/closet, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 2; - name = "2maintenance loot spawner" +/turf/open/floor/plasteel/shuttle, +/turf/closed/wall/shuttle{ + icon_state = "swall_f10"; + dir = 2 }, -/turf/open/floor/plating, -/area/maintenance/aft{ - name = "Aft Maintenance" - }) +/area/shuttle/arrival) "wV" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" +/turf/closed/wall/shuttle{ + icon_state = "swall13"; + dir = 2 }, -/turf/open/floor/plating, -/area/maintenance/aft{ - name = "Aft Maintenance" - }) +/area/shuttle/arrival) "wW" = ( /obj/structure/cable{ d1 = 1; @@ -10508,9 +10321,7 @@ }, /mob/living/simple_animal/mouse, /turf/open/floor/plating, -/area/maintenance/aft{ - name = "Aft Maintenance" - }) +/area/hallway/primary/central) "wX" = ( /obj/structure/cable{ d1 = 1; @@ -10520,9 +10331,7 @@ /turf/open/floor/plating/warnplate/corner{ dir = 2 }, -/area/maintenance/aft{ - name = "Aft Maintenance" - }) +/area/hallway/primary/central) "wY" = ( /obj/machinery/atmospherics/components/binary/pump/on, /obj/structure/cable{ @@ -10533,9 +10342,7 @@ /turf/open/floor/plating/warnplate{ dir = 2 }, -/area/maintenance/aft{ - name = "Aft Maintenance" - }) +/area/hallway/primary/central) "wZ" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 5 @@ -10546,9 +10353,7 @@ /turf/open/floor/plating/warnplate/corner{ dir = 1 }, -/area/maintenance/aft{ - name = "Aft Maintenance" - }) +/area/hallway/primary/central) "xa" = ( /obj/structure/closet/crate{ desc = "It's a storage unit for kitchen clothes and equipment."; @@ -10666,16 +10471,11 @@ /turf/open/floor/plasteel/white, /area/medical/medbay) "xq" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 +/turf/closed/wall/shuttle{ + icon_state = "swall_s5"; + dir = 2 }, -/turf/open/floor/plating, -/area/maintenance/aft{ - name = "Aft Maintenance" - }) +/area/shuttle/arrival) "xr" = ( /obj/structure/cable{ d1 = 1; @@ -10683,9 +10483,7 @@ icon_state = "1-2" }, /turf/open/floor/plating, -/area/maintenance/aft{ - name = "Aft Maintenance" - }) +/area/hallway/primary/central) "xs" = ( /obj/structure/sign/securearea{ desc = "A warning sign which reads 'HIGH VOLTAGE'"; @@ -10693,9 +10491,7 @@ name = "HIGH VOLTAGE" }, /turf/closed/wall, -/area/maintenance/aft{ - name = "Aft Maintenance" - }) +/area/hallway/primary/central) "xt" = ( /obj/machinery/atmospherics/pipe/simple/cyan/visible{ icon_state = "intact"; @@ -10709,9 +10505,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/machinery/meter, /turf/open/floor/plating, -/area/maintenance/aft{ - name = "Aft Maintenance" - }) +/area/hallway/primary/central) "xv" = ( /obj/machinery/door/airlock/glass{ name = "Central Access" @@ -10816,31 +10610,23 @@ /turf/open/floor/plasteel/white, /area/medical/medbay) "xI" = ( -/obj/machinery/light/small, -/obj/structure/closet/crate, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 2; - name = "2maintenance loot spawner" +/turf/closed/wall/shuttle{ + icon_state = "swall_s9"; + dir = 2 }, -/turf/open/floor/plating, -/area/maintenance/aft{ - name = "Aft Maintenance" - }) +/area/shuttle/arrival) "xJ" = ( -/obj/effect/landmark{ - name = "blobstart" +/turf/open/space, +/obj/machinery/porta_turret/syndicate, +/turf/closed/wall/shuttle{ + dir = 1; + icon_state = "diagonalWall3" }, -/turf/open/floor/plating, -/area/maintenance/aft{ - name = "Aft Maintenance" - }) +/area/shuttle/syndicate) "xK" = ( /obj/structure/table, -/obj/item/weapon/storage/box/donkpockets{ - pixel_x = 3; - pixel_y = 3 - }, -/turf/open/floor/mineral/plastitanium, +/obj/machinery/microwave, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "xL" = ( /obj/structure/cable{ @@ -10854,9 +10640,7 @@ icon_state = "2-8" }, /turf/open/floor/plating, -/area/maintenance/aft{ - name = "Aft Maintenance" - }) +/area/hallway/primary/central) "xM" = ( /obj/structure/lattice, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -10913,7 +10697,7 @@ /area/engine/engineering) "xU" = ( /obj/structure/table/wood, -/obj/item/weapon/gun/ballistic/revolver/doublebarrel, +/obj/item/weapon/gun/projectile/revolver/doublebarrel, /obj/item/weapon/reagent_containers/food/drinks/shaker, /turf/open/floor/wood, /area/crew_quarters/bar) @@ -10998,7 +10782,7 @@ /obj/item/clothing/glasses/hud/health, /obj/item/clothing/glasses/hud/health, /obj/item/clothing/glasses/hud/health, -/obj/item/clothing/neck/stethoscope, +/obj/item/clothing/tie/stethoscope, /obj/item/weapon/reagent_containers/hypospray, /turf/open/floor/plasteel/white, /area/medical/medbay) @@ -11016,11 +10800,8 @@ /obj/structure/rack, /obj/item/clothing/mask/gas, /obj/item/clothing/glasses/sunglasses, -/obj/effect/spawner/lootdrop/maintenance, /turf/open/floor/plating, -/area/maintenance/aft{ - name = "Aft Maintenance" - }) +/area/hallway/primary/central) "ye" = ( /obj/machinery/meter, /obj/machinery/atmospherics/pipe/simple/cyan/visible{ @@ -11034,18 +10815,14 @@ dir = 5 }, /turf/open/floor/plating, -/area/maintenance/aft{ - name = "Aft Maintenance" - }) +/area/hallway/primary/central) "yg" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, /turf/open/floor/plating, -/area/maintenance/aft{ - name = "Aft Maintenance" - }) +/area/hallway/primary/central) "yh" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ dir = 1 @@ -11087,9 +10864,7 @@ dir = 1 }, /turf/closed/wall, -/area/maintenance/aft{ - name = "Aft Maintenance" - }) +/area/hallway/primary/central) "yo" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ dir = 1 @@ -11115,9 +10890,7 @@ dir = 4 }, /turf/closed/wall, -/area/maintenance/aft{ - name = "Aft Maintenance" - }) +/area/hallway/primary/central) "yr" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 @@ -11128,9 +10901,7 @@ icon_state = "2-4" }, /turf/open/floor/plating, -/area/maintenance/aft{ - name = "Aft Maintenance" - }) +/area/hallway/primary/central) "ys" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 @@ -11142,9 +10913,7 @@ pixel_y = 0 }, /turf/open/floor/plating, -/area/maintenance/aft{ - name = "Aft Maintenance" - }) +/area/hallway/primary/central) "yt" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 9 @@ -11156,9 +10925,7 @@ pixel_y = 0 }, /turf/open/floor/plating, -/area/maintenance/aft{ - name = "Aft Maintenance" - }) +/area/hallway/primary/central) "yu" = ( /obj/machinery/power/apc{ auto_name = 1; @@ -11190,9 +10957,7 @@ dir = 1 }, /turf/open/floor/plating, -/area/maintenance/aft{ - name = "Aft Maintenance" - }) +/area/hallway/primary/central) "yx" = ( /obj/structure/cable{ d1 = 1; @@ -11206,9 +10971,7 @@ pixel_y = 0 }, /turf/open/floor/plating, -/area/maintenance/aft{ - name = "Aft Maintenance" - }) +/area/hallway/primary/central) "yy" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/structure/cable{ @@ -11221,9 +10984,7 @@ req_access_txt = "12" }, /turf/open/floor/plating, -/area/maintenance/aft{ - name = "Aft Maintenance" - }) +/area/hallway/primary/central) "yz" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/machinery/door/airlock/maintenance{ @@ -11236,9 +10997,7 @@ pixel_y = 0 }, /turf/open/floor/plating, -/area/maintenance/aft{ - name = "Aft Maintenance" - }) +/area/hallway/primary/central) "yA" = ( /turf/closed/wall/r_wall, /area/engine/engineering) @@ -11261,9 +11020,7 @@ "yD" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/closed/wall, -/area/maintenance/aft{ - name = "Aft Maintenance" - }) +/area/hallway/primary/central) "yE" = ( /obj/machinery/light{ icon_state = "tube1"; @@ -11568,11 +11325,11 @@ /turf/closed/wall/r_wall, /area/engine/engineering) "zd" = ( -/obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/machinery/door/airlock/glass{ name = "Central Access" }, +/obj/machinery/door/firedoor, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/plasteel, /area/hallway/primary/central) "ze" = ( @@ -11660,7 +11417,10 @@ /turf/open/floor/plating, /area/engine/engineering) "zo" = ( -/turf/open/floor/engine/air, +/turf/open/floor/engine{ + name = "air floor"; + initial_gas_mix = "o2=2644;n2=10580" + }, /area/engine/engineering) "zp" = ( /obj/machinery/atmospherics/pipe/simple/cyan/visible{ @@ -11870,7 +11630,10 @@ /area/engine/engineering) "zO" = ( /obj/machinery/portable_atmospherics/canister/air, -/turf/open/floor/engine/air, +/turf/open/floor/engine{ + name = "air floor"; + initial_gas_mix = "o2=2644;n2=10580" + }, /area/engine/engineering) "zP" = ( /obj/machinery/light/small{ @@ -12112,9 +11875,7 @@ icon_state = "2-4" }, /turf/open/floor/plating, -/area/maintenance/aft{ - name = "Aft Maintenance" - }) +/area/hallway/primary/central) "Aw" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 5 @@ -12366,9 +12127,7 @@ id = "recycler" }, /turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) +/area/hallway/primary/central) "Bd" = ( /obj/machinery/airalarm{ dir = 1; @@ -12589,10 +12348,10 @@ }, /area/engine/engineering) "BH" = ( -/obj/structure/transit_tube/station/reverse/flipped{ - dir = 4 +/obj/structure/transit_tube/station/reverse{ + dir = 8; + icon_state = "closed" }, -/obj/structure/transit_tube_pod, /turf/open/floor/plating/warnplate{ dir = 8 }, @@ -12675,38 +12434,15 @@ }, /area/engine/engineering) "BS" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" +/obj/structure/table, +/obj/item/device/flashlight/lamp{ + pixel_x = 4; + pixel_y = 1 }, -/obj/structure/cable{ - icon_state = "0-2"; - pixel_y = 1; - d2 = 2 - }, -/obj/machinery/power/apc{ - auto_name = 1; - dir = 4; - name = "_East APC"; - pixel_x = 27; - pixel_y = 2 - }, -/turf/open/floor/plating, -/area/maintenance/aft{ - name = "Aft Maintenance" - }) +/turf/open/floor/plasteel/shuttle/red, +/area/shuttle/syndicate) "BT" = ( -/obj/item/device/radio/intercom{ - desc = "Talk through this. Evilly"; - freerange = 1; - frequency = 1213; - name = "Syndicate Intercom"; - pixel_y = -32; - subspace_transmission = 1; - syndie = 1 - }, -/turf/open/floor/mineral/plastitanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "BU" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ @@ -12719,7 +12455,10 @@ /turf/open/floor/plasteel, /area/engine/engineering) "BW" = ( -/obj/structure/transit_tube, +/obj/structure/transit_tube{ + icon_state = "N-S" + }, +/obj/structure/transit_tube_pod, /turf/open/floor/plating/warnplate{ dir = 8 }, @@ -12781,19 +12520,17 @@ /turf/open/floor/plasteel, /area/engine/engineering) "Cf" = ( -/obj/machinery/door/airlock/external{ - req_access_txt = "13" +/obj/structure/table, +/obj/machinery/button/door{ + id = "syndieshutters"; + name = "remote shutter control"; + req_access_txt = "150" }, -/turf/open/floor/plating, -/area/maintenance/aft{ - name = "Aft Maintenance" - }) +/turf/open/floor/plasteel/shuttle/red, +/area/shuttle/syndicate) "Cg" = ( -/obj/structure/chair/comfy/beige{ - dir = 1; - icon_state = "comfychair" - }, -/turf/open/floor/mineral/plastitanium, +/obj/machinery/computer/shuttle/syndicate, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "Ch" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -12804,8 +12541,8 @@ /turf/open/floor/plasteel, /area/engine/engineering) "Ci" = ( -/obj/structure/transit_tube/curved/flipped{ - dir = 1 +/obj/structure/transit_tube{ + icon_state = "N-SE" }, /turf/open/space, /area/space) @@ -12845,10 +12582,10 @@ /turf/open/space, /area/space) "Cp" = ( -/obj/structure/lattice, -/obj/structure/transit_tube/curved{ - dir = 4 +/obj/structure/transit_tube{ + icon_state = "E-NW" }, +/obj/structure/lattice, /turf/open/space, /area/space) "Cq" = ( @@ -12856,13 +12593,15 @@ /turf/open/space, /area/space) "Cr" = ( +/obj/structure/transit_tube{ + icon_state = "E-W-Pass" + }, /obj/structure/lattice, -/obj/structure/transit_tube/crossing/horizontal, /turf/open/space, /area/space) "Cs" = ( -/obj/structure/transit_tube/curved{ - dir = 8 +/obj/structure/transit_tube{ + icon_state = "W-SE" }, /turf/open/space, /area/space) @@ -12891,18 +12630,9 @@ /turf/open/floor/plasteel, /area/engine/engineering) "Cw" = ( -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; - icon_state = "space"; - layer = 4; - name = "EXTERNAL AIRLOCK"; - pixel_x = 0; - pixel_y = 0 - }, -/turf/closed/wall, -/area/maintenance/aft{ - name = "Aft Maintenance" - }) +/obj/structure/frame/computer, +/turf/open/floor/plasteel/shuttle/red, +/area/shuttle/syndicate) "Cx" = ( /obj/structure/table, /obj/item/stack/sheet/glass{ @@ -12934,8 +12664,10 @@ /turf/open/floor/plasteel, /area/engine/engineering) "CA" = ( +/obj/structure/transit_tube{ + icon_state = "S-NW" + }, /obj/structure/lattice, -/obj/structure/transit_tube/curved/flipped, /turf/open/space, /area/space) "CB" = ( @@ -13268,11 +13000,11 @@ /area/engine/engineering) "Ds" = ( /obj/structure/table, -/obj/item/stack/sheet/glass{ - amount = 10 +/obj/item/weapon/storage/box/donkpockets{ + pixel_x = 3; + pixel_y = 3 }, -/obj/item/device/multitool, -/turf/open/floor/mineral/plastitanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "Dt" = ( /obj/structure/chair/office/dark{ @@ -13309,70 +13041,71 @@ /turf/open/floor/plasteel, /area/engine/engineering) "Dx" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 5 +/obj/structure/chair/comfy/black{ + dir = 1; + icon_state = "comfychair"; + name = "pilot's chair" }, -/turf/open/floor/plating, -/area/maintenance/aft{ - name = "Aft Maintenance" - }) +/turf/open/floor/plasteel/shuttle/red, +/area/shuttle/syndicate) "Dy" = ( -/obj/machinery/light/small{ - dir = 1 +/obj/structure/table, +/obj/item/stack/sheet/glass{ + amount = 10 }, -/turf/open/floor/plating, -/area/maintenance/aft{ - name = "Aft Maintenance" - }) +/obj/item/device/multitool, +/turf/open/floor/plasteel/shuttle/red, +/area/shuttle/syndicate) "Dz" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" +/obj/item/device/radio/intercom{ + desc = "Talk through this. Evilly"; + freerange = 1; + frequency = 1213; + name = "Syndicate Intercom"; + pixel_y = -32; + subspace_transmission = 1; + syndie = 1 }, -/turf/open/floor/plating, -/area/maintenance/aft{ - name = "Aft Maintenance" - }) +/turf/open/floor/plasteel/shuttle/red, +/area/shuttle/syndicate) "DA" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/turf/open/floor/plating, -/area/maintenance/aft{ - name = "Aft Maintenance" - }) +/obj/structure/closet/syndicate/personal, +/turf/open/floor/plasteel/shuttle/red, +/area/shuttle/syndicate) "DB" = ( /turf/open/space, +/turf/closed/wall/shuttle{ + dir = 2; + icon_state = "diagonalWall3" + }, /area/shuttle/syndicate) "DC" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall, -/area/maintenance/aft{ - name = "Aft Maintenance" - }) +/obj/machinery/door/window{ + name = "Cockpit"; + req_access_txt = "150" + }, +/turf/open/floor/plasteel/shuttle/red, +/area/shuttle/syndicate) "DD" = ( /turf/open/space, -/obj/machinery/porta_turret/syndicate{ - dir = 6 - }, -/turf/closed/wall/mineral/plastitanium{ +/turf/closed/wall/shuttle{ dir = 4; icon_state = "diagonalWall3" }, /area/shuttle/syndicate) "DE" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating/airless, -/area/engine/engineering) +/obj/structure/table, +/obj/item/stack/cable_coil, +/obj/item/weapon/crowbar/red, +/turf/open/floor/plasteel/shuttle/red, +/area/shuttle/syndicate) "DF" = ( -/obj/structure/chair{ - dir = 8 +/obj/structure/table, +/obj/item/weapon/storage/box/zipties{ + pixel_x = 1; + pixel_y = 2 }, -/turf/open/floor/mineral/plastitanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "DG" = ( /obj/machinery/atmospherics/components/binary/volume_pump{ @@ -13381,41 +13114,29 @@ /turf/open/floor/plating, /area/engine/engineering) "DH" = ( -/obj/structure/rack{ - dir = 8; - layer = 2.9 +/obj/structure/chair{ + dir = 4 }, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 2; - name = "2maintenance loot spawner" - }, -/turf/open/floor/plating, -/area/tcommsat/computer) +/turf/open/floor/plasteel/shuttle/red, +/area/shuttle/syndicate) "DI" = ( -/turf/open/space, -/obj/machinery/porta_turret/syndicate{ - dir = 9 +/obj/structure/chair{ + dir = 8 }, -/turf/closed/wall/mineral/plastitanium{ +/turf/open/floor/plasteel/shuttle/red, +/area/shuttle/syndicate) +"DJ" = ( +/turf/open/space, +/turf/closed/wall/shuttle{ dir = 8; icon_state = "diagonalWall3" }, /area/shuttle/syndicate) -"DJ" = ( -/turf/closed/indestructible{ - desc = "A wall impregnated with Fixium, able to withstand massive explosions with ease"; - icon_state = "riveted"; - name = "hyper-reinforced wall" - }, -/area/space) "DK" = ( -/obj/structure/grille, -/obj/machinery/door/poddoor/shutters{ - id = "syndieshutters"; - name = "blast shutters" +/obj/machinery/porta_turret/syndicate, +/turf/closed/wall/shuttle{ + icon_state = "wall3" }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, /area/shuttle/syndicate) "DL" = ( /obj/machinery/atmospherics/pipe/heat_exchanging/simple{ @@ -13425,64 +13146,69 @@ /turf/open/space, /area/engine/engineering) "DM" = ( -/turf/open/space, -/obj/machinery/porta_turret/syndicate{ - dir = 5 - }, -/turf/closed/wall/mineral/plastitanium{ - dir = 1; - icon_state = "diagonalWall3" - }, +/obj/machinery/suit_storage_unit/syndicate, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "DN" = ( -/obj/structure/table, -/obj/item/device/aicard, -/turf/open/floor/mineral/plastitanium, +/obj/structure/closet/syndicate/nuclear, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "DO" = ( /obj/structure/table, -/obj/item/weapon/c4{ - pixel_x = 2; - pixel_y = -5 - }, -/obj/item/weapon/c4{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/weapon/c4{ - pixel_x = 2; - pixel_y = -3 - }, -/obj/item/weapon/c4{ - pixel_x = -2; - pixel_y = -1 - }, -/obj/item/weapon/c4{ - pixel_x = 3; - pixel_y = 3 - }, -/turf/open/floor/mineral/plastitanium, +/obj/item/device/aicard, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "DP" = ( -/obj/structure/table, -/obj/item/device/flashlight/lamp{ - pixel_x = 4; - pixel_y = 1 - }, -/turf/open/floor/mineral/plastitanium, +/obj/structure/chair/stool, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "DQ" = ( -/obj/machinery/computer/shuttle/syndicate, -/turf/open/floor/mineral/plastitanium, +/obj/structure/sign/securearea{ + desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; + icon_state = "space"; + layer = 4; + name = "EXTERNAL AIRLOCK"; + pixel_x = 0 + }, +/turf/closed/wall/shuttle{ + icon_state = "wall3" + }, /area/shuttle/syndicate) "DR" = ( -/obj/structure/table, +/obj/machinery/door/poddoor{ + auto_close = 300; + id = "smindicate"; + name = "outer blast door" + }, /obj/machinery/button/door{ - id = "syndieshutters"; - name = "remote shutter control"; + id = "smindicate"; + name = "external door control"; + pixel_x = -26; + pixel_y = 0; req_access_txt = "150" }, -/turf/open/floor/mineral/plastitanium, +/obj/docking_port/mobile{ + dheight = 9; + dir = 2; + dwidth = 5; + height = 22; + id = "syndicate"; + name = "syndicate infiltrator"; + roundstart_move = "syndicate_away"; + travelDir = 180; + width = 18 + }, +/obj/docking_port/stationary{ + dheight = 9; + dir = 2; + dwidth = 5; + height = 22; + id = "syndicate_nw"; + name = "northwest of station"; + turf_type = /turf/open/space; + width = 18 + }, +/turf/open/floor/plating, /area/shuttle/syndicate) "DS" = ( /obj/machinery/computer/security/telescreen{ @@ -13509,8 +13235,11 @@ /turf/open/floor/plating, /area/engine/engineering) "DV" = ( -/obj/structure/frame/computer, -/turf/open/floor/mineral/plastitanium, +/turf/open/space, +/turf/closed/wall/shuttle{ + dir = 1; + icon_state = "diagonalWall3" + }, /area/shuttle/syndicate) "DW" = ( /obj/machinery/atmospherics/pipe/heat_exchanging/simple{ @@ -13519,13 +13248,19 @@ /turf/open/floor/engine/vacuum, /area/engine/engineering) "DX" = ( +/obj/structure/transit_tube{ + icon_state = "N-S" + }, /obj/structure/lattice, -/obj/structure/transit_tube/crossing, /turf/open/space, /area/space) "DY" = ( -/obj/structure/closet/syndicate/personal, -/turf/open/floor/mineral/plastitanium, +/obj/structure/table, +/obj/item/weapon/c4{ + pixel_x = 2; + pixel_y = 1 + }, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "DZ" = ( /obj/structure/lattice, @@ -13561,19 +13296,17 @@ /area/tcommsat/computer) "Ed" = ( /obj/machinery/door/window{ - base_state = "right"; dir = 4; - icon_state = "right"; name = "EVA Storage"; req_access_txt = "150" }, -/turf/open/floor/mineral/plastitanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "Ee" = ( -/obj/structure/lattice, -/obj/structure/transit_tube/curved/flipped{ - dir = 1 +/obj/structure/transit_tube{ + icon_state = "N-SE" }, +/obj/structure/lattice, /turf/open/space, /area/space) "Ef" = ( @@ -13632,10 +13365,10 @@ /turf/open/floor/plating, /area/tcommsat/computer) "En" = ( -/turf/open/space, -/turf/closed/wall/mineral/plastitanium{ - icon_state = "diagonalWall3" +/obj/machinery/door/airlock/external{ + req_access_txt = "150" }, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "Eo" = ( /obj/machinery/atmospherics/components/unary/outlet_injector{ @@ -13650,25 +13383,28 @@ /turf/open/space, /area/space) "Eq" = ( -/obj/structure/transit_tube/curved{ - dir = 4 +/obj/structure/transit_tube{ + icon_state = "E-NW" }, /turf/open/space, /area/space) "Er" = ( -/obj/effect/landmark/xmastree, -/turf/open/floor/plasteel/bar, -/area/crew_quarters/bar) -"Es" = ( /obj/structure/lattice, -/obj/structure/transit_tube/horizontal, +/obj/structure/transit_tube{ + icon_state = "E-W-Pass" + }, +/turf/open/space, +/area/space) +"Es" = ( +/obj/structure/transit_tube, +/obj/structure/lattice, /turf/open/space, /area/space) "Et" = ( -/obj/structure/lattice, -/obj/structure/transit_tube/curved{ - dir = 8 +/obj/structure/transit_tube{ + icon_state = "W-SE" }, +/obj/structure/lattice, /turf/open/space, /area/space) "Eu" = ( @@ -13715,16 +13451,21 @@ }, /area/tcommsat/computer) "EB" = ( +/obj/structure/transit_tube{ + icon_state = "NW-SE" + }, /obj/structure/lattice, -/obj/structure/transit_tube/diagonal/topleft, /turf/open/space, /area/space) "EC" = ( /obj/machinery/door/window{ - name = "Cockpit"; + base_state = "right"; + dir = 4; + icon_state = "right"; + name = "EVA Storage"; req_access_txt = "150" }, -/turf/open/floor/mineral/plastitanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "ED" = ( /obj/machinery/light/small, @@ -13767,17 +13508,22 @@ /turf/closed/wall/r_wall, /area/tcommsat/computer) "EM" = ( -/turf/open/space, -/turf/closed/wall/mineral/plastitanium{ - dir = 4; - icon_state = "diagonalWall3" - }, +/obj/structure/rack, +/obj/item/clothing/suit/space/syndicate/black/red, +/obj/item/clothing/head/helmet/space/syndicate/black/red, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "EN" = ( -/obj/structure/table, -/obj/item/stack/cable_coil, -/obj/item/weapon/crowbar/red, -/turf/open/floor/mineral/plastitanium, +/obj/item/device/radio/intercom{ + desc = "Talk through this. Evilly"; + freerange = 1; + frequency = 1213; + name = "Syndicate Intercom"; + pixel_x = -32; + subspace_transmission = 1; + syndie = 1 + }, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "EO" = ( /obj/machinery/atmospherics/components/unary/vent_pump{ @@ -13819,8 +13565,8 @@ }, /area/engine/gravity_generator) "EU" = ( -/obj/structure/bed/roller, -/turf/open/floor/mineral/titanium, +/obj/machinery/recharge_station, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "EV" = ( /turf/open/floor/plasteel/black{ @@ -13829,13 +13575,12 @@ }, /area/tcommsat/computer) "EW" = ( -/obj/structure/table, -/obj/item/weapon/storage/box/zipties{ - pixel_x = 1; - pixel_y = 2 +/obj/machinery/telecomms/server/presets/common/ministation, +/turf/open/floor/plasteel/black{ + name = "Mainframe Floor"; + initial_gas_mix = "n2=100;TEMP=80" }, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/syndicate) +/area/tcommsat/computer) "EX" = ( /obj/machinery/message_server, /turf/open/floor/plasteel/black{ @@ -13903,7 +13648,9 @@ /turf/open/floor/plasteel/black, /area/engine/gravity_generator) "Fh" = ( -/obj/structure/transit_tube, +/obj/structure/transit_tube{ + icon_state = "N-S" + }, /turf/open/floor/plating/warnplate{ dir = 4 }, @@ -13915,10 +13662,8 @@ /turf/open/floor/plating, /area/tcommsat/computer) "Fj" = ( -/obj/machinery/porta_turret/syndicate{ - dir = 4 - }, -/turf/closed/wall/mineral/plastitanium, +/obj/machinery/portable_atmospherics/canister/oxygen, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "Fk" = ( /turf/open/floor/bluegrid{ @@ -13927,12 +13672,15 @@ }, /area/tcommsat/computer) "Fl" = ( -/obj/machinery/suit_storage_unit/syndicate, -/turf/open/floor/mineral/plastitanium, +/obj/structure/table, +/obj/item/stack/medical/ointment, +/obj/item/stack/medical/bruise_pack, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "Fm" = ( -/obj/structure/closet/syndicate/nuclear, -/turf/open/floor/mineral/plastitanium, +/obj/structure/table, +/obj/machinery/cell_charger, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "Fn" = ( /obj/machinery/door/airlock/glass_command{ @@ -13943,10 +13691,13 @@ /turf/open/floor/plasteel, /area/tcommsat/computer) "Fo" = ( -/obj/structure/chair/stool{ - pixel_y = 8 +/obj/structure/table, +/obj/item/weapon/stock_parts/cell/high{ + pixel_x = -3; + pixel_y = 3 }, -/turf/open/floor/mineral/plastitanium, +/obj/item/weapon/stock_parts/cell/high, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "Fp" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -13987,44 +13738,15 @@ /turf/open/floor/plasteel/black, /area/engine/gravity_generator) "Fv" = ( -/obj/machinery/door/poddoor{ - auto_close = 300; - id = "smindicate"; - name = "outer blast door" - }, -/obj/machinery/button/door{ - id = "smindicate"; - name = "external door control"; - pixel_x = -26; - pixel_y = 0; - req_access_txt = "150" - }, -/obj/docking_port/mobile{ - dheight = 9; - dir = 2; - dwidth = 5; - height = 24; - id = "syndicate"; - name = "syndicate infiltrator"; - port_angle = 0; - roundstart_move = "syndicate_away"; - width = 18 - }, -/obj/docking_port/stationary{ - dheight = 9; - dir = 2; - dwidth = 5; - height = 24; - id = "syndicate_nw"; - name = "northwest of station"; - turf_type = /turf/open/space; - width = 18 - }, -/turf/open/floor/plating, +/obj/structure/table, +/obj/item/weapon/wrench, +/obj/item/device/assembly/infra, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "Fw" = ( -/obj/structure/transit_tube/station/reverse/flipped{ - dir = 8 +/obj/structure/transit_tube/station/reverse{ + icon_state = "closed"; + dir = 4 }, /turf/open/floor/plating/warnplate{ dir = 4 @@ -14117,16 +13839,20 @@ /turf/open/floor/plasteel/black, /area/engine/gravity_generator) "FJ" = ( -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; - icon_state = "space"; - layer = 4; - name = "EXTERNAL AIRLOCK"; - pixel_x = 0 +/obj/structure/table, +/obj/item/weapon/screwdriver{ + pixel_y = 9 }, -/turf/closed/wall/mineral/plastitanium, +/obj/item/device/assembly/voice{ + pixel_y = 3 + }, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "FK" = ( +/obj/structure/transit_tube{ + icon_state = "Block"; + dir = 1 + }, /turf/open/floor/plating/warnplate{ dir = 4 }, @@ -14170,7 +13896,7 @@ /turf/open/floor/plasteel, /area/tcommsat/computer) "FQ" = ( -/obj/machinery/holopad, +/obj/machinery/hologram/holopad, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/effect/landmark/start{ name = "Cyborg" @@ -14214,16 +13940,25 @@ /area/engine/gravity_generator) "FV" = ( /obj/structure/table, -/obj/item/weapon/storage/toolbox/syndicate, -/obj/item/weapon/crowbar/red, -/turf/open/floor/mineral/plastitanium, +/obj/item/weapon/weldingtool/largetank{ + pixel_y = 3 + }, +/obj/item/device/multitool, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "FW" = ( -/obj/machinery/door/window{ - name = "Ready Room"; - req_access_txt = "150" +/obj/structure/table, +/obj/item/device/assembly/signaler, +/obj/item/device/assembly/signaler, +/obj/item/device/assembly/prox_sensor{ + pixel_x = -8; + pixel_y = 4 }, -/turf/open/floor/mineral/plastitanium, +/obj/item/device/assembly/prox_sensor{ + pixel_x = -8; + pixel_y = 4 + }, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "FX" = ( /obj/machinery/door/airlock/glass_command{ @@ -14238,22 +13973,20 @@ name = "Infirmary"; req_access_txt = "150" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "FZ" = ( /obj/machinery/door/window/westright{ name = "Tool Storage"; req_access_txt = "150" }, -/turf/open/floor/mineral/plastitanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "Ga" = ( -/obj/machinery/door/window{ - dir = 4; - name = "EVA Storage"; - req_access_txt = "150" - }, -/turf/open/floor/mineral/plastitanium, +/obj/structure/table, +/obj/item/weapon/storage/toolbox/syndicate, +/obj/item/weapon/crowbar/red, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "Gb" = ( /obj/machinery/telecomms/hub/preset, @@ -14412,13 +14145,10 @@ }, /area/tcommsat/computer) "Gu" = ( -/obj/structure/window/reinforced{ - dir = 1 +/obj/machinery/sleeper/syndie{ + dir = 4 }, -/obj/structure/table, -/obj/item/bodypart/r_arm/robot, -/obj/item/bodypart/l_arm/robot, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "Gv" = ( /obj/machinery/door/window{ @@ -14428,7 +14158,7 @@ name = "Infirmary"; req_access_txt = "150" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "Gw" = ( /obj/machinery/door/airlock/engineering{ @@ -14486,7 +14216,7 @@ name = "Tool Storage"; req_access_txt = "150" }, -/turf/open/floor/mineral/plastitanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "GB" = ( /turf/open/floor/plasteel, @@ -14596,16 +14326,14 @@ /area/engine/gravity_generator) "GM" = ( /obj/structure/table, -/obj/item/weapon/storage/firstaid/regular{ - pixel_x = 3; - pixel_y = 3 +/obj/item/weapon/reagent_containers/syringe/charcoal, +/obj/item/weapon/reagent_containers/syringe/charcoal{ + pixel_y = 2 }, -/obj/item/weapon/storage/firstaid/fire, -/obj/item/weapon/storage/firstaid/regular{ - pixel_x = -3; - pixel_y = -3 +/obj/item/weapon/reagent_containers/syringe/charcoal{ + pixel_y = 4 }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "GN" = ( /obj/structure/closet/radiation, @@ -14615,33 +14343,26 @@ /area/tcommsat/computer) "GO" = ( /obj/structure/table, -/obj/structure/window/reinforced{ - dir = 8 +/obj/item/weapon/gun/syringe{ + pixel_x = 1; + pixel_y = 2 }, -/obj/item/weapon/storage/firstaid/regular{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/storage/firstaid/brute, -/obj/item/weapon/storage/firstaid/regular{ - pixel_x = -3; - pixel_y = -3 - }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "GP" = ( -/obj/machinery/telecomms/processor/preset_one/birdstation, +/obj/machinery/telecomms/processor/preset_one, /turf/open/floor/plasteel/black{ name = "Mainframe Floor"; initial_gas_mix = "n2=100;TEMP=80" }, /area/tcommsat/computer) "GQ" = ( -/obj/machinery/door/airlock/external{ - req_access_txt = "150" +/obj/machinery/telecomms/broadcaster/preset_left/ministation, +/turf/open/floor/plasteel/black{ + name = "Mainframe Floor"; + initial_gas_mix = "n2=100;TEMP=80" }, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/syndicate) +/area/tcommsat/computer) "GR" = ( /obj/docking_port/stationary{ dheight = 9; @@ -14656,23 +14377,21 @@ /turf/open/space, /area/space) "GS" = ( -/turf/open/space, -/turf/closed/wall/mineral/plastitanium{ - dir = 1; - icon_state = "diagonalWall3" +/obj/structure/window/reinforced{ + dir = 1 }, +/obj/structure/window/reinforced{ + dir = 1 + }, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "GT" = ( -/obj/item/device/radio/intercom{ - desc = "Talk through this. Evilly"; - freerange = 1; - frequency = 1213; - name = "Syndicate Intercom"; - pixel_x = -32; - subspace_transmission = 1; - syndie = 1 +/obj/machinery/door/window{ + dir = 1; + name = "Secure Storage"; + req_access_txt = "150" }, -/turf/open/floor/mineral/plastitanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "GU" = ( /obj/structure/table, @@ -14680,7 +14399,7 @@ pixel_y = 5 }, /obj/item/device/sbeacondrop/bomb, -/turf/open/floor/mineral/plastitanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "GV" = ( /obj/structure/table, @@ -14691,7 +14410,7 @@ /obj/item/weapon/grenade/syndieminibomb{ pixel_x = -1 }, -/turf/open/floor/mineral/plastitanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "GW" = ( /obj/structure/sink{ @@ -14703,34 +14422,34 @@ /obj/structure/mirror{ pixel_x = 30 }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "GX" = ( -/obj/machinery/sleeper/syndie{ - dir = 4 +/obj/machinery/telecomms/allinone{ + intercept = 1 }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "GY" = ( /obj/machinery/nuclearbomb/syndicate, -/obj/machinery/door/window{ - dir = 1; - name = "Secure Storage"; - req_access_txt = "150" - }, -/turf/open/floor/mineral/plastitanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "GZ" = ( /obj/structure/table, +/obj/item/weapon/circular_saw, /obj/item/weapon/cautery, -/obj/item/weapon/scalpel, -/turf/open/floor/mineral/titanium, +/obj/item/weapon/surgicaldrill, +/obj/item/robot_parts/l_arm, +/obj/item/robot_parts/r_arm, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "Ha" = ( /obj/structure/table, +/obj/item/weapon/scalpel, /obj/item/weapon/retractor, /obj/item/weapon/hemostat, -/turf/open/floor/mineral/titanium, +/obj/item/weapon/surgical_drapes, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "Hb" = ( /obj/structure/table/optable, @@ -14746,27 +14465,20 @@ /turf/open/floor/plating, /area/shuttle/syndicate) "Hd" = ( -/obj/structure/reagent_dispensers/fueltank, -/turf/open/floor/mineral/plastitanium, +/obj/structure/frame/computer, +/obj/item/weapon/paper{ + info = "

Teleporter Instruction


  1. Install circuit board, glass and wiring to complete Teleporter Control Console
  2. Use a screwdriver, wirecutter and screwdriver again on the Teleporter Station to connect it
  3. Set destination with Teleporter Control Computer
  4. Activate Teleporter Hub with Teleporter Station
"; + name = "Teleporter Instructions" + }, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "He" = ( -/obj/structure/rack, -/obj/item/clothing/suit/space/syndicate/black/red, -/obj/item/clothing/head/helmet/space/syndicate/black/red, -/turf/open/floor/mineral/plastitanium, +/obj/machinery/teleport/hub/syndicate, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "Hf" = ( -/obj/structure/table, -/obj/item/stack/sheet/metal{ - amount = 50 - }, -/obj/item/stack/sheet/glass{ - amount = 50 - }, -/obj/item/stack/rods{ - amount = 50 - }, -/turf/open/floor/mineral/plastitanium, +/obj/machinery/teleport/station, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/syndicate) "Hg" = ( /obj/structure/shuttle/engine/propulsion{ @@ -14792,9 +14504,12 @@ /turf/open/floor/plating/airless, /area/shuttle/supply) "Hk" = ( -/obj/structure/transit_tube/horizontal, /turf/open/space, -/area/space) +/turf/closed/wall/shuttle{ + icon_state = "swall_f6"; + dir = 2 + }, +/area/shuttle/supply) "Hl" = ( /obj/structure/shuttle/engine/heater{ icon_state = "heater"; @@ -14804,27 +14519,36 @@ /turf/open/floor/plating/airless, /area/shuttle/supply) "Hm" = ( -/turf/closed/wall/mineral/titanium, +/turf/closed/wall/shuttle{ + icon_state = "swall13"; + dir = 2 + }, /area/shuttle/supply) "Hn" = ( -/turf/open/floor/mineral/titanium, -/area/shuttle/syndicate) +/turf/open/space, +/turf/closed/wall/shuttle{ + icon_state = "swall_f10"; + dir = 2 + }, +/area/shuttle/supply) "Ho" = ( -/obj/machinery/portable_atmospherics/canister/oxygen, -/turf/open/floor/mineral/titanium, -/area/shuttle/syndicate) +/turf/closed/wall/shuttle{ + icon_state = "swall3"; + dir = 2 + }, +/area/shuttle/supply) "Hp" = ( -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/supply) "Hq" = ( -/obj/machinery/door/airlock/titanium{ +/obj/machinery/door/airlock/shuttle{ name = "Supply Shuttle Airlock"; req_access_txt = "31" }, /turf/open/floor/plating, /area/shuttle/supply) "Hr" = ( -/obj/machinery/door/airlock/titanium{ +/obj/machinery/door/airlock/shuttle{ name = "Supply Shuttle Airlock"; req_access_txt = "31" }, @@ -14850,16 +14574,19 @@ /turf/open/floor/plating/airless, /area/shuttle/escape) "Ht" = ( -/obj/machinery/telecomms/broadcaster/preset_left/birdstation, -/turf/open/floor/plasteel/black{ - name = "Mainframe Floor"; - initial_gas_mix = "n2=100;TEMP=80" +/turf/open/space, +/turf/closed/wall/shuttle{ + icon_state = "swall_f6"; + dir = 2 }, -/area/tcommsat/computer) +/area/shuttle/escape) "Hu" = ( -/obj/structure/tank_dispenser/oxygen, -/turf/open/floor/mineral/titanium, -/area/shuttle/syndicate) +/turf/open/space, +/turf/closed/wall/shuttle{ + icon_state = "swall_f10"; + dir = 2 + }, +/area/shuttle/escape) "Hv" = ( /obj/structure/shuttle/engine/heater{ icon_state = "heater"; @@ -14869,20 +14596,19 @@ /turf/open/floor/plating/airless, /area/shuttle/escape) "Hw" = ( -/turf/closed/wall/mineral/titanium, +/turf/closed/wall/shuttle{ + icon_state = "swall13"; + dir = 2 + }, /area/shuttle/escape) "Hx" = ( -/obj/structure/table, -/obj/item/stack/medical/ointment, -/obj/item/stack/medical/bruise_pack, -/obj/structure/extinguisher_cabinet{ - pixel_x = -5; - pixel_y = 30 +/turf/closed/wall/shuttle{ + icon_state = "swall3"; + dir = 2 }, -/turf/open/floor/mineral/titanium, -/area/shuttle/syndicate) +/area/shuttle/escape) "Hy" = ( -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "Hz" = ( /obj/item/weapon/storage/firstaid/regular{ @@ -14893,118 +14619,113 @@ pixel_x = -2; pixel_y = 4 }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "HA" = ( /obj/machinery/sleeper{ dir = 8; icon_state = "sleeper-open" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "HB" = ( -/turf/open/floor/mineral/plastitanium/brig, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/escape) "HC" = ( /obj/structure/chair{ dir = 4 }, -/turf/open/floor/mineral/plastitanium/brig, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/escape) "HD" = ( /obj/structure/chair{ dir = 8 }, -/turf/open/floor/mineral/plastitanium/brig, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/escape) "HE" = ( -/obj/structure/table, -/obj/item/weapon/stock_parts/cell/high{ - pixel_x = -3; - pixel_y = 3 +/turf/open/space, +/turf/closed/wall/shuttle{ + icon_state = "swall_f5"; + dir = 2 }, -/obj/item/weapon/stock_parts/cell/high, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/syndicate) +/area/shuttle/supply) "HF" = ( -/obj/structure/table, -/obj/item/weapon/screwdriver{ - pixel_y = 9 +/turf/closed/wall/shuttle{ + icon_state = "swall12"; + dir = 2 }, -/obj/item/device/assembly/voice{ - pixel_y = 3 - }, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/syndicate) +/area/shuttle/supply) "HG" = ( -/obj/structure/table, -/obj/item/weapon/wrench, -/obj/item/device/assembly/infra, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/syndicate) +/turf/open/space, +/turf/closed/wall/shuttle{ + icon_state = "swall_f9"; + dir = 2 + }, +/area/shuttle/supply) "HH" = ( /obj/machinery/vending/wallmed{ name = "Emergency NanoMed"; pixel_x = 28; req_access_txt = "0" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "HI" = ( /obj/machinery/door/airlock/glass_security{ name = "Escape Shuttle Cell"; req_access_txt = "2" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "HJ" = ( -/obj/machinery/telecomms/bus/preset_one/birdstation, -/turf/open/floor/plasteel/black{ - name = "Mainframe Floor"; - initial_gas_mix = "n2=100;TEMP=80" - }, -/area/tcommsat/computer) +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plating, +/area/shuttle/escape) "HK" = ( /obj/machinery/door/airlock/glass_medical{ id_tag = null; name = "Escape Shuttle Infirmary"; req_access_txt = "0" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "HL" = ( -/turf/closed/wall/mineral/titanium/nodiagonal, +/turf/closed/wall/shuttle{ + icon_state = "swallc4"; + dir = 2 + }, /area/shuttle/escape) "HM" = ( -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "HN" = ( /obj/structure/closet/emcloset, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "HO" = ( -/obj/machinery/door/airlock/titanium{ +/obj/machinery/door/airlock/shuttle{ name = "Emergency Shuttle Airlock" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "HP" = ( /obj/structure/chair{ dir = 4 }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "HQ" = ( /obj/structure/chair{ dir = 1 }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "HR" = ( /obj/structure/chair{ dir = 8 }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "HS" = ( /obj/structure/grille, @@ -15016,7 +14737,10 @@ name = "Emergency NanoMed"; req_access_txt = "0" }, -/turf/closed/wall/mineral/titanium, +/turf/closed/wall/shuttle{ + icon_state = "swall3"; + dir = 2 + }, /area/shuttle/escape) "HU" = ( /obj/structure/chair{ @@ -15025,10 +14749,10 @@ /obj/item/device/radio/intercom{ pixel_x = 25 }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "HV" = ( -/obj/machinery/door/airlock/titanium{ +/obj/machinery/door/airlock/shuttle{ name = "Emergency Shuttle Airlock" }, /obj/docking_port/mobile/emergency{ @@ -15036,7 +14760,6 @@ dwidth = 8; height = 9; name = "Mini emergency shuttle"; - timid = 0; width = 21 }, /obj/docking_port/stationary{ @@ -15047,11 +14770,11 @@ name = "emergency evac bay"; width = 21 }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plating, /area/shuttle/escape) "HW" = ( /obj/structure/chair, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "HX" = ( /obj/structure/table, @@ -15062,103 +14785,101 @@ }, /obj/item/weapon/crowbar, /obj/item/weapon/extinguisher, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "HY" = ( -/obj/structure/table, -/obj/item/device/assembly/signaler, -/obj/item/device/assembly/signaler, -/obj/item/device/assembly/prox_sensor{ - pixel_x = -8; - pixel_y = 4 +/turf/closed/wall/shuttle{ + icon_state = "swall7"; + dir = 2 }, -/obj/item/device/assembly/prox_sensor{ - pixel_x = -8; - pixel_y = 4 - }, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/syndicate) +/area/shuttle/escape) "HZ" = ( -/obj/structure/table, -/obj/item/weapon/weldingtool/largetank{ - pixel_y = 3 +/turf/closed/wall/shuttle{ + icon_state = "swall12"; + dir = 2 }, -/obj/item/device/multitool, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/syndicate) +/area/shuttle/escape) "Ia" = ( /obj/machinery/door/airlock/glass_command{ name = "Escape Shuttle Cockpit"; req_access_txt = "19" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "Ib" = ( /obj/machinery/status_display, -/turf/closed/wall/mineral/titanium, +/turf/closed/wall/shuttle{ + icon_state = "swall12"; + dir = 2 + }, /area/shuttle/escape) "Ic" = ( -/obj/structure/sign/bluecross_2, -/turf/closed/wall/mineral/plastitanium, -/area/shuttle/syndicate) +/turf/closed/wall/shuttle{ + icon_state = "swall11"; + dir = 2 + }, +/area/shuttle/escape) "Id" = ( /obj/structure/chair{ dir = 8 }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "Ie" = ( /obj/machinery/computer/atmos_alert, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "If" = ( /obj/structure/chair{ dir = 4 }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "Ig" = ( /obj/item/device/radio/intercom{ name = "Station Intercom (General)"; pixel_y = 24 }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "Ih" = ( /obj/machinery/computer/security, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "Ii" = ( /obj/machinery/computer/crew, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "Ij" = ( /obj/machinery/computer/communications, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "Ik" = ( -/obj/machinery/recharge_station, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/syndicate) +/turf/open/space, +/turf/closed/wall/shuttle{ + icon_state = "swall_f5"; + dir = 2 + }, +/area/shuttle/escape) "Il" = ( /obj/structure/table, /obj/item/weapon/storage/firstaid/fire, /obj/item/weapon/extinguisher, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "Im" = ( -/obj/machinery/porta_turret/syndicate{ - dir = 5 +/turf/closed/wall/shuttle{ + icon_state = "swallc1"; + dir = 2 }, -/turf/closed/wall/mineral/plastitanium, -/area/shuttle/syndicate) +/area/shuttle/escape) "In" = ( /obj/machinery/computer/emergency_shuttle, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "Io" = ( /obj/structure/chair, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "Ip" = ( /obj/structure/table, @@ -15167,31 +14888,36 @@ pixel_y = 3 }, /obj/item/weapon/crowbar, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "Iq" = ( -/obj/machinery/door/window{ - dir = 1; - name = "Surgery"; - req_access_txt = "150" +/turf/open/space, +/turf/closed/wall/shuttle{ + icon_state = "swall_f9"; + dir = 2 }, -/turf/open/floor/mineral/titanium, -/area/shuttle/syndicate) +/area/shuttle/escape) "Ir" = ( -/obj/structure/window/reinforced{ - dir = 1 +/turf/closed/wall/shuttle{ + icon_state = "swallc2"; + dir = 2 }, -/turf/open/floor/mineral/titanium, -/area/shuttle/syndicate) +/area/shuttle/escape) "Is" = ( /obj/structure/shuttle/engine/propulsion{ icon_state = "propulsion"; dir = 4 }, -/turf/closed/wall/mineral/titanium/overspace, +/turf/closed/wall/shuttle{ + icon_state = "swall_s6"; + dir = 2 + }, /area/shuttle/transport) "It" = ( -/turf/closed/wall/mineral/titanium, +/turf/closed/wall/shuttle{ + icon_state = "swall12"; + dir = 2 + }, /area/shuttle/transport) "Iu" = ( /obj/structure/window/shuttle, @@ -15204,39 +14930,40 @@ /turf/open/floor/plating, /area/shuttle/transport) "Iw" = ( -/obj/machinery/telecomms/receiver/preset_left/birdstation, -/turf/open/floor/plasteel/black{ - name = "Mainframe Floor"; - initial_gas_mix = "n2=100;TEMP=80" +/turf/closed/wall/shuttle{ + icon_state = "swall_s10"; + dir = 2 }, -/area/tcommsat/computer) +/area/shuttle/transport) "Ix" = ( -/turf/open/floor/mineral/titanium/blue, -/turf/closed/wall/mineral/titanium/interior, +/turf/open/floor/plasteel/shuttle, +/turf/closed/wall/shuttle/interior{ + icon_state = "swall_f9" + }, /area/shuttle/transport) "Iy" = ( /obj/machinery/computer/shuttle/ferry/request, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/transport) "Iz" = ( /obj/structure/chair{ dir = 4 }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/transport) "IA" = ( /obj/structure/chair, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/transport) "IB" = ( -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/transport) "IC" = ( -/obj/machinery/door/airlock/titanium, -/turf/open/floor/mineral/titanium/blue, +/obj/machinery/door/airlock/shuttle, +/turf/open/floor/plasteel/shuttle, /area/shuttle/transport) "ID" = ( -/obj/machinery/door/airlock/titanium, +/obj/machinery/door/airlock/shuttle, /obj/docking_port/mobile{ dir = 8; dwidth = 2; @@ -15244,7 +14971,7 @@ id = "ferry"; name = "ferry shuttle"; roundstart_move = "ferry_away"; - port_angle = 180; + travelDir = 180; width = 5 }, /obj/docking_port/stationary{ @@ -15256,39 +14983,40 @@ turf_type = /turf/open/space; width = 5 }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/transport) "IE" = ( -/obj/structure/table, -/obj/item/weapon/surgicaldrill, -/obj/item/weapon/circular_saw, -/turf/open/floor/mineral/titanium, -/area/shuttle/syndicate) -"IF" = ( -/obj/machinery/telecomms/allinone{ - intercept = 1 +/turf/open/floor/plasteel/shuttle, +/turf/closed/wall/shuttle/interior{ + icon_state = "swall_f10" }, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/syndicate) +/area/shuttle/transport) +"IF" = ( +/obj/structure/shuttle/engine/propulsion{ + icon_state = "propulsion"; + dir = 4 + }, +/turf/closed/wall/shuttle{ + icon_state = "swall_s5"; + dir = 2 + }, +/area/shuttle/transport) "IG" = ( /obj/structure/closet/crate, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/transport) "IH" = ( /obj/structure/chair{ dir = 1 }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/transport) "II" = ( -/turf/open/space, -/obj/machinery/porta_turret/syndicate{ - dir = 10 +/turf/closed/wall/shuttle{ + icon_state = "swall_s9"; + dir = 2 }, -/turf/closed/wall/mineral/plastitanium{ - icon_state = "diagonalWall3" - }, -/area/shuttle/syndicate) +/area/shuttle/transport) "IJ" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber{ dir = 1; @@ -15313,9 +15041,66 @@ /obj/item/clothing/under/burial, /obj/item/clothing/under/burial, /turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) +/area/hallway/primary/central) +"IR" = ( +/obj/machinery/atmospherics/pipe/manifold{ + color = "#0000ff"; + dir = 8 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"IQ" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 10 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"IP" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/machinery/door/airlock/maintenance{ + req_access_txt = "12" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/hallway/primary/central) +"IO" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/hallway/primary/central) +"IN" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0; + tag = "" + }, +/turf/open/floor/plating, +/area/hallway/primary/central) "IM" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 @@ -15334,479 +15119,6 @@ dir = 2 }, /area/quartermaster/storage) -"IN" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0; - tag = "" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/turf/open/floor/plating, -/area/maintenance/fore) -"IO" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fore) -"IP" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/machinery/door/airlock/maintenance{ - req_access_txt = "12" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fore) -"IQ" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 10 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"IR" = ( -/obj/machinery/atmospherics/pipe/manifold{ - color = "#0000ff"; - dir = 8 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"IS" = ( -/turf/closed/mineral/random{ - mineralSpawnChanceList = list(/turf/closed/mineral/uranium = 5, /turf/closed/mineral/diamond = 1, /turf/closed/mineral/gold = 10, /turf/closed/mineral/silver = 12, /turf/closed/mineral/plasma = 20, /turf/closed/mineral/iron = 40, /turf/closed/mineral/titanium = 11, /turf/closed/mineral/gibtonite = 4, /turf/closed/mineral/bscrystal = 1) - }, -/area/mine/unexplored) -"IT" = ( -/turf/closed/wall, -/area/maintenance/fore) -"IU" = ( -/turf/closed/wall/mineral/titanium, -/area/shuttle/mining) -"IV" = ( -/obj/structure/grille, -/obj/structure/window/shuttle, -/turf/open/floor/plating, -/area/shuttle/mining) -"IW" = ( -/obj/structure/table, -/turf/open/floor/plasteel/shuttle, -/area/shuttle/mining) -"IX" = ( -/obj/machinery/computer/shuttle/mining, -/turf/open/floor/plasteel/shuttle, -/area/shuttle/mining) -"IY" = ( -/obj/structure/cable{ - icon_state = "0-2"; - pixel_y = 1; - d2 = 2 - }, -/obj/machinery/power/apc{ - auto_name = 1; - dir = 1; - name = "_North APC"; - pixel_y = 24 - }, -/turf/open/floor/plating, -/area/maintenance/fore) -"IZ" = ( -/obj/structure/closet/crate, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 2; - name = "2maintenance loot spawner" - }, -/turf/open/floor/plating, -/area/maintenance/fore) -"Ja" = ( -/turf/open/floor/plasteel/shuttle, -/area/shuttle/mining) -"Jb" = ( -/obj/structure/chair{ - dir = 1 - }, -/turf/open/floor/plasteel/shuttle, -/area/shuttle/mining) -"Jc" = ( -/obj/machinery/mineral/equipment_vendor, -/turf/open/floor/plasteel/brown{ - dir = 9 - }, -/area/quartermaster/storage) -"Jd" = ( -/obj/structure/closet/secure_closet/miner, -/turf/open/floor/plasteel/brown{ - dir = 1 - }, -/area/quartermaster/storage) -"Je" = ( -/obj/machinery/computer/shuttle/mining{ - req_access = "0"; - req_one_access = "0" - }, -/obj/machinery/light{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/quartermaster/storage) -"Jf" = ( -/obj/machinery/door/airlock/titanium{ - name = "Mining Shuttle Airlock"; - req_access_txt = "0" - }, -/obj/docking_port/mobile{ - dir = 8; - dwidth = 3; - height = 5; - id = "mining"; - name = "mining shuttle"; - port_angle = 270; - width = 7 - }, -/obj/docking_port/stationary{ - dir = 8; - dwidth = 3; - height = 5; - id = "mining_home"; - name = "mining shuttle bay"; - width = 7 - }, -/turf/open/floor/plating, -/area/shuttle/mining) -"Jg" = ( -/obj/machinery/door/airlock/external{ - name = "Mining Shuttle Airlock"; - req_access_txt = "0" - }, -/turf/open/floor/plasteel/delivery{ - name = "floor" - }, -/area/quartermaster/storage) -"Jh" = ( -/obj/machinery/camera/autoname, -/turf/open/floor/plasteel/delivery{ - name = "floor" - }, -/area/quartermaster/storage) -"Ji" = ( -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/quartermaster/storage) -"Jj" = ( -/obj/machinery/door/airlock/external{ - name = "Mining Shuttle Airlock"; - req_access_txt = "0" - }, -/turf/open/floor/plasteel, -/area/quartermaster/storage) -"Jk" = ( -/turf/open/floor/plasteel/brown{ - dir = 8 - }, -/area/quartermaster/storage) -"Jl" = ( -/obj/structure/closet/secure_closet/miner, -/turf/open/floor/plasteel/brown{ - dir = 10 - }, -/area/quartermaster/storage) -"Jm" = ( -/obj/structure/rack, -/obj/item/weapon/pickaxe, -/obj/item/weapon/pickaxe{ - pixel_x = 5 - }, -/obj/item/weapon/shovel{ - pixel_x = -5 - }, -/obj/item/weapon/shovel{ - pixel_x = -5 - }, -/turf/open/floor/plasteel/brown{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/quartermaster/storage) -"Jn" = ( -/obj/structure/closet/wardrobe/miner, -/turf/open/floor/plasteel, -/area/quartermaster/storage) -"Jo" = ( -/obj/structure/ore_box, -/turf/open/floor/plasteel/shuttle, -/area/shuttle/mining) -"Jp" = ( -/obj/structure/shuttle/engine/heater, -/obj/structure/window/reinforced{ - dir = 4 - }, -/obj/structure/window/reinforced{ - dir = 1 - }, -/obj/structure/window/reinforced{ - dir = 8 - }, -/turf/open/floor/plating/airless, -/area/shuttle/mining) -"Jq" = ( -/obj/machinery/suit_storage_unit/mining/eva, -/turf/open/floor/plasteel/brown{ - dir = 4 - }, -/area/quartermaster/storage) -"Jr" = ( -/obj/structure/shuttle/engine/propulsion/burst, -/obj/structure/window/reinforced{ - dir = 1; - layer = 2.9 - }, -/turf/open/floor/plating/airless, -/area/shuttle/mining) -"Js" = ( -/obj/machinery/firealarm{ - dir = 8; - pixel_x = -24 - }, -/turf/open/floor/plasteel, -/area/quartermaster/storage) -"Jt" = ( -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"Ju" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 2; - name = "2maintenance loot spawner" - }, -/turf/open/floor/plasteel/bot, -/area/quartermaster/storage) -"Jv" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 6 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"Jw" = ( -/turf/open/floor/plating, -/area/medical/research{ - name = "Research Division" - }) -"Jx" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"Jy" = ( -/turf/closed/wall, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"Jz" = ( -/turf/closed/wall, -/area/maintenance/starboard) -"JA" = ( -/obj/machinery/light/small{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"JB" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/turf/open/floor/plating, -/area/maintenance/starboard) -"JC" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"JD" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/door/airlock/maintenance{ - req_access_txt = "12" - }, -/turf/open/floor/plating, -/area/maintenance/starboard) -"JE" = ( -/turf/open/floor/plating, -/area/maintenance/starboard) -"JF" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/turf/open/floor/plating, -/area/maintenance/starboard) -"JG" = ( -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plating, -/area/maintenance/starboard) -"JH" = ( -/obj/effect/spawner/structure/window/reinforced, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"JI" = ( -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"JJ" = ( -/obj/machinery/light/small, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"JK" = ( -/obj/structure/cable{ - icon_state = "0-2"; - pixel_y = 1; - d2 = 2 - }, -/obj/machinery/power/apc{ - auto_name = 1; - dir = 8; - name = "_West APC"; - pixel_x = -25 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"JL" = ( -/obj/structure/cable, -/obj/machinery/power/apc{ - auto_name = 1; - dir = 8; - name = "_West APC"; - pixel_x = -25 - }, -/turf/open/floor/plating, -/area/maintenance/starboard) -"JM" = ( -/turf/open/floor/plating/warnplate{ - dir = 4 - }, -/area/maintenance/starboard) -"JN" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"JO" = ( -/obj/structure/closet/crate, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 2; - name = "2maintenance loot spawner" - }, -/turf/open/floor/plating, -/area/maintenance/starboard) -"JP" = ( -/obj/machinery/light/small, -/obj/structure/closet/crate, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 2; - name = "2maintenance loot spawner" - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"JQ" = ( -/obj/machinery/vending/tool, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"JR" = ( -/obj/machinery/vending/assist, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"JS" = ( -/obj/structure/closet, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 2; - name = "2maintenance loot spawner" - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"JT" = ( -/obj/structure/closet, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 2; - name = "2maintenance loot spawner" - }, -/turf/open/floor/plating, -/area/tcommsat/computer) (1,1,1) = {" aa @@ -23350,16 +22662,16 @@ aa aa aa aa -DI -eu -eu -eu -eu -Im -eu -eu -eu -En +aa +DJ +bm +bm +bm +bm +bm +bm +bm +DB aa aa aa @@ -23601,19 +22913,19 @@ aa aa aa aa -DI -eu -eu -eu -eu -eu -eu -GX +aa +DJ +bm +bm +bm +bm +bm +bm EU -GX -Hn +BT Gu -IE +Gu +BT GZ Hc Hg @@ -23858,19 +23170,19 @@ aa aa aa aa -eu -Fl -Fl -Fl -Fl -Fl -eu -Hn -Hn -Hn -Hn -Iq -Hn +aa +bm +DM +DM +DM +DM +DM +bm +EU +BT +BT +BT +BT pK Hc Hi @@ -24115,18 +23427,18 @@ aa aa aa aa -eu -uI -uI -uI -uI -uI -eu -Ho -Hn -Hn -Hn -Ir +aa +bm +BT +BT +BT +BT +BT +bm +Fj +BT +BT +BT GW Ha Hc @@ -24365,28 +23677,28 @@ aa aa aa aa -DI -eu -eu -eu -En -DB aa eu -uI -Fo -uI -uI -uI -eu -Hu -Hn -Hn -Hn +bm +bm +bm +DB +aa +aa +bm +BT +DP +BT +BT +BT +bm +Fm +DP +BT GO -eu -eu -eu +bm +bm +bm DD aa aa @@ -24610,8 +23922,9 @@ aa aa aa aa -af -af +ad +ad +aa aa aa aa @@ -24622,26 +23935,25 @@ aa aa aa aa -eu bm xK Ds -eu -DB +Dy +bm aa -eu -Fm +aa +bm DN DO -uI -uI -eu -Hx -Hn -Hn -Hn +DY +BT +BT +bm +Fl +BT +BT GM -eu +bm aa aa aa @@ -24865,11 +24177,12 @@ aa aa aa aa -af -af -IS -IS -af +ad +ad +ad +ad +ad +aa aa aa aa @@ -24879,28 +24192,27 @@ aa aa aa aa -DK uI -uI -uI -eu -eu -eu -eu -eu -eu -eu -Ga +BT +BT +BT +bm +bm +bm +bm +bm +bm +bm Ed -eu -eu -Ic +EC +bm +bm FY Gv -eu -eu -eu -En +bm +bm +bm +DB aa aa aa @@ -25121,11 +24433,12 @@ aa aa aa aa -af -IS -IS -IS -af +ad +ad +ad +ad +ad +aa aa aa aa @@ -25136,26 +24449,25 @@ aa aa aa aa -DK -DP uI -uI -eu +BS +BT +BT +bm +DE +DH +DH +DH +DH +BT +BT +BT EN -uI -uI -uI -uI -EK -uI -uI -GT -uI -uI -uI -uI -uI -EK +BT +BT +BT +GS +GX Hc Hg aa @@ -25378,12 +24690,12 @@ aa aa aa aa -af -IS -IS +ad +ad +ad ag -IS -af +ad +ad aa aa aa @@ -25393,25 +24705,25 @@ aa aa aa aa -DK -DQ +aa +uI Cg -uI -EC -uI -uI -uI -uI -uI -FW -uI -uI -uI -uI -uI -uI -uI -uI +Dx +BT +DC +BT +BT +BT +BT +BT +BT +BT +BT +BT +BT +BT +BT +GT GY Hc Hi @@ -25628,19 +24940,20 @@ aa aa aa aa -af -af +ad +ad aa aa aa aa aa -af -IS -IS -IS -IS -af +ad +ad +ad +ad +ad +ad +aa aa aa aa @@ -25650,26 +24963,25 @@ aa aa aa aa -DK -DR uI +Cf BT -eu -EW +Dz +bm DF -DF -DF -DF -EK -uI -uI -uI -uI -uI -uI -uI -uI -EK +DI +DI +DI +DI +BT +BT +BT +BT +BT +BT +BT +GS +BT Hc Hh aa @@ -25885,18 +25197,18 @@ aa aa aa aa -IS -af +ad +ad aa aa aa aa aa aa -af -af -af -af +ad +ad +ad +ad aa aa aa @@ -25907,28 +25219,28 @@ aa aa aa aa +aa +uI +Cw +BT +BT +bm +bm +bm DK -DV -uI -uI -eu -eu -eu -Fj -eu -eu -eu -GQ +bm +bm +bm +En EK -eu -eu -eu +bm +bm FZ GA -eu -eu -eu -EM +bm +bm +bm +DD aa aa aa @@ -26153,38 +25465,38 @@ aa aa aa aa -af +ad aa aa aa aa aa -af -af -af -aa -aa -eu -DV -uI -DY -eu -EM +ad +ad +ad aa aa aa -eu -uI -uI -uI -eu -HE -uI -uI -uI +bm +Cw +BT +DA +bm +aa +aa +aa +aa +bm +BT +BT +BT +bm +Fo +BT +BT GU -IF -eu +bm +aa aa aa aa @@ -26416,34 +25728,34 @@ aa aa aa aa -af -IS -af -aa -aa -DM -eu -eu -eu -EM -DB +ad +ad +ad aa aa aa -Fv -uI -uI -uI -eu -HF -uI -uI -uI +xJ +bm +bm +bm +DD +aa +aa +aa +aa +DR +BT +BT +BT +bm +FJ +DP +BT GV -eu -eu -eu -II +bm +bm +bm +DB aa aa aa @@ -26660,8 +25972,8 @@ aa aa aa aa -af -IS +ad +ad aa aa aa @@ -26673,9 +25985,9 @@ aa aa aa aa -af -IS -af +ad +ad +ad aa aa aa @@ -26687,17 +25999,17 @@ aa aa aa aa -FJ -uI -uI -uI -eu -HG -uI -uI -uI -uI -uI +aa +DQ +BT +BT +EM +bm +Fv +BT +BT +BT +BT Hd Hc Hg @@ -26917,8 +26229,8 @@ aa aa aa aa -IS -af +ad +ad aa aa aa @@ -26929,10 +26241,10 @@ aa aa aa aa -af -IS +ad +ad ag -af +ad aa aa aa @@ -26944,17 +26256,17 @@ aa aa aa aa -DM -eu -eu -eu -eu -HY -Fo -uI -uI -uI -uI +aa +DV +bm +bm +bm +bm +FW +DP +BT +BT +BT Hf Hc Hi @@ -27169,8 +26481,8 @@ aa aa aa aa -af -af +ad +ad aa aa aa @@ -27186,10 +26498,10 @@ aa aa aa aa -af -IS -IS -af +ad +ad +ad +ad aa aa aa @@ -27204,14 +26516,14 @@ aa aa aa aa -GS -eu -HZ +aa +aa +bm FV -uI -Ik -Ik -uI +Ga +BT +BT +BT He Hc Hh @@ -27425,17 +26737,17 @@ aa aa aa aa -af -IS -IS -af +ad +ad +ad +ad aa aa aa aa aa aa -af +ad aa aa aa @@ -27443,9 +26755,9 @@ aa aa aa aa -af -af -af +ad +ad +ad aa aa aa @@ -27462,16 +26774,16 @@ aa aa aa aa -DM -eu -eu -eu -eu -Fj -eu -eu -eu -EM +aa +DV +bm +bm +bm +bm +bm +bm +bm +DD aa aa aa @@ -27682,17 +26994,17 @@ aa aa aa aa -af -IS -af +ad +ad +ad aa aa aa aa aa aa -af -af +ad +ad aa aa aa @@ -27706,8 +27018,8 @@ aa aa aa aa -af -af +ad +ad aa aa aa @@ -27940,18 +27252,18 @@ aa aa aa aa -af -af +ad +ad aa aa aa aa aa aa -af -IS -af -af +ad +ad +ad +ad aa aa aa @@ -27963,8 +27275,8 @@ aa aa aa aa -af -af +ad +ad aa aa aa @@ -28200,29 +27512,29 @@ aa aa aa aa -af -af -af +ad +ad +ad aa -af -IS -IS -IS -af +ad +ad +ad +ad +ad aa aa aa aa -af -af +ad +ad aa aa aa aa -af -IS -IS -af +ad +ad +ad +ad aa aa aa @@ -28457,29 +27769,29 @@ aa aa aa aa -af +ad ag -af +ad aa -af -IS +ad +ad ag -IS -af +ad +ad aa aa -af -af -IS -IS -af +ad +ad +ad +ad +ad aa aa -af -IS +ad +ad ag -IS -af +ad +ad aa aa aa @@ -28714,36 +28026,36 @@ aa aa aa aa -af -af -af +ad +ad +ad aa -af -IS -IS -IS -af +ad +ad +ad +ad +ad aa -af -IS -IS -IS -IS -af +ad +ad +ad +ad +ad +ad aa aa aa -af -IS -IS -af +ad +ad +ad +ad aa aa aa aa -af -af -af +ad +ad +ad aa aa aa @@ -28975,33 +28287,33 @@ aa aa aa aa -af -IS -IS -af +ad +ad +ad +ad aa aa -af -IS -IS +ad +ad +ad ag -IS -af +ad +ad aa aa aa -af -IS -IS -af +ad +ad +ad +ad aa aa -af -af -IS -IS -IS -af +ad +ad +ad +ad +ad +ad aa aa aa @@ -29233,32 +28545,32 @@ aa aa aa aa -af -af -af +ad +ad +ad aa aa aa -af -IS -IS -af +ad +ad +ad +ad aa aa aa aa -af -IS -af +ad +ad +ad aa aa aa -af -IS -IS +ad +ad +ad ag -IS -af +ad +ad aa aa aa @@ -29490,32 +28802,32 @@ aa aa aa aa -af +ad aa aa aa aa aa -af -IS -IS -af +ad +ad +ad +ad aa aa aa aa aa -af -af +ad +ad aa aa aa -af -IS -IS -IS -IS -af +ad +ad +ad +ad +ad +ad aa aa aa @@ -29754,9 +29066,9 @@ aa aa aa aa -af -af -af +ad +ad +ad aa aa aa @@ -29768,11 +29080,11 @@ aa aa aa aa -af -IS -IS -af -af +ad +ad +ad +ad +ad aa aa aa @@ -30006,7 +29318,7 @@ aa aa aa aa -af +ad aa aa aa @@ -30026,8 +29338,8 @@ aa aa aa aa -af -af +ad +ad aa aa aa @@ -30261,12 +29573,12 @@ aa aa aa aa -af -af -IS -af -af -af +ad +ad +ad +ad +ad +ad aa aa aa @@ -30518,12 +29830,12 @@ aa aa aa aa -af -IS +ad +ad ag -IS -IS -af +ad +ad +ad aa aa aa @@ -30533,9 +29845,9 @@ aa aa aa aa -af -af -af +ad +ad +ad aa aa aa @@ -30775,24 +30087,24 @@ aa aa aa aa -af -IS -IS -IS -af -af +ad +ad +ad +ad +ad +ad aa aa aa aa aa aa -af -af -af -IS -IS -af +ad +ad +ad +ad +ad +ad aa aa aa @@ -30809,9 +30121,9 @@ aa aa aa aa -af -af -af +ad +ad +ad aa aa aa @@ -31032,10 +30344,10 @@ aa aa aa aa -af -IS -IS -af +ad +ad +ad +ad aa aa aa @@ -31043,14 +30355,14 @@ aa aa aa aa -af -IS -IS -IS -IS +ad +ad +ad +ad +ad ag -IS -af +ad +ad aa aa aa @@ -31066,9 +30378,9 @@ aa aa aa aa -af +ad ag -af +ad aa aa aa @@ -31290,9 +30602,9 @@ aa aa aa aa -af -af -af +ad +ad +ad aa aa aa @@ -31300,32 +30612,32 @@ aa aa aa aa -af -IS -IS -IS -IS -IS -IS -IS -af +ad +ad +ad +ad +ad +ad +ad +ad +ad aa aa aa aa aa -af -af -af +ad +ad +ad aa aa aa aa aa aa -af -IS -af +ad +ad +ad aa aa aa @@ -31557,32 +30869,32 @@ aa aa aa aa -af -IS -IS -IS -IS -IS -IS -IS -af +ad +ad +ad +ad +ad +ad +ad +ad +ad aa aa aa -af +ad aa -af +ad ag -IS -af +ad +ad aa aa aa aa aa -af -af -af +ad +ad +ad aa aa aa @@ -31814,24 +31126,24 @@ aa aa aa aa -af -IS -IS -IS -IS -IS -IS -IS -af +ad +ad +ad +ad +ad +ad +ad +ad +ad aa aa aa -af -af -IS -IS -IS -af +ad +ad +ad +ad +ad +ad aa aa aa @@ -32072,22 +31384,22 @@ aa aa aa aa -af -IS +ad +ad ag -IS -IS -IS -af +ad +ad +ad +ad aa aa aa aa -af -IS -IS -IS -af +ad +ad +ad +ad +ad aa aa aa @@ -32329,22 +31641,22 @@ aa aa aa aa -af -af -af -IS -IS -IS -af +ad +ad +ad +ad +ad +ad +ad aa aa aa -af -IS +ad +ad ag -IS -IS -af +ad +ad +ad aa aa aa @@ -32573,8 +31885,8 @@ aa aa aa aa -af -af +ad +ad aa aa aa @@ -32589,19 +31901,19 @@ aa aa aa aa -af -af -af +ad +ad +ad aa aa aa aa -af -IS -IS -IS -IS -af +ad +ad +ad +ad +ad +ad aa aa aa @@ -32617,7 +31929,7 @@ aa aa aa aa -af +ad aa aa aa @@ -32630,9 +31942,9 @@ aa aa aa aa -af -af -af +ad +ad +ad aa aa aa @@ -32829,16 +32141,16 @@ aa aa aa aa -af -IS -IS -af +ad +ad +ad +ad aa aa -af -af -af -af +ad +ad +ad +ad aa aa aa @@ -32854,16 +32166,16 @@ aa aa aa aa -af -af -IS -af +ad +ad +ad +ad aa aa aa aa -af -af +ad +ad aa aa aa @@ -32887,9 +32199,9 @@ aa aa aa aa -af -IS -af +ad +ad +ad aa aa aa @@ -33086,16 +32398,16 @@ aa aa aa aa -af +ad ag -IS -af +ad +ad aa aa -af -IS -IS -af +ad +ad +ad +ad aa aa aa @@ -33113,14 +32425,14 @@ aa aa aa aa -af +ad aa aa aa aa -af -IS -af +ad +ad +ad aa aa aa @@ -33144,9 +32456,9 @@ aa aa aa aa -af -af -af +ad +ad +ad aa aa aa @@ -33343,17 +32655,17 @@ aa aa aa aa -af -IS -IS -af +ad +ad +ad +ad aa aa -af -IS +ad +ad ag -IS -af +ad +ad aa aa aa @@ -33362,9 +32674,9 @@ aa aa aa aa -af -af -af +ad +ad +ad aa aa aa @@ -33373,12 +32685,12 @@ aa aa aa aa -af -af -IS +ad +ad +ad ag -IS -af +ad +ad aa aa aa @@ -33597,19 +32909,19 @@ aa aa aa aa -af -af +ad +ad aa -af -IS -IS -af +ad +ad +ad +ad aa aa -af -af -af -af +ad +ad +ad +ad aa aa aa @@ -33618,10 +32930,10 @@ ac aa aa aa -af -IS -IS -af +ad +ad +ad +ad aa aa aa @@ -33630,12 +32942,12 @@ aa aa aa aa -af -IS -IS -IS -IS -af +ad +ad +ad +ad +ad +ad aa aa aa @@ -33852,14 +33164,14 @@ aa aa aa aa -af -af -IS -IS -af -IS -IS -af +ad +ad +ad +ad +ad +ad +ad +ad aa aa aa @@ -33876,9 +33188,9 @@ aa aa aa aa -af +ad ag -af +ad aa aa aa @@ -33887,12 +33199,12 @@ aa aa aa aa -af +ad ag -IS -af -af -af +ad +ad +ad +ad aa aa ac @@ -34109,14 +33421,14 @@ aa aa aa aa -af -IS -IS -IS -IS -IS -IS -af +ad +ad +ad +ad +ad +ad +ad +ad aa aa aa @@ -34127,15 +33439,15 @@ aa aa aa aa -af +ad aa aa aa aa aa -af -IS -af +ad +ad +ad aa aa aa @@ -34144,9 +33456,9 @@ aa aa aa aa -af -af -af +ad +ad +ad aa aa aa @@ -34365,14 +33677,14 @@ aa aa aa aa -af -IS -IS -IS -IS -IS -IS -af +ad +ad +ad +ad +ad +ad +ad +ad aa aa aa @@ -34383,15 +33695,15 @@ aa aa aa aa -af -IS -af +ad +ad +ad aa aa aa aa aa -af +ad aa aa aa @@ -34622,14 +33934,14 @@ aa aa aa aa -af -IS -IS +ad +ad +ad ag -IS -IS -IS -af +ad +ad +ad +ad aa aa aa @@ -34639,11 +33951,11 @@ aa aa aa aa -af -IS +ad +ad ag -IS -af +ad +ad aa aa aa @@ -34652,8 +33964,8 @@ aa aa aa aa -af -af +ad +ad aa aa aa @@ -34672,9 +33984,9 @@ aa aa aa aa -af -af -af +ad +ad +ad aa aa aa @@ -34879,14 +34191,14 @@ aa aa aa aa -af -IS -IS -IS -IS -IS -af -af +ad +ad +ad +ad +ad +ad +ad +ad aa aa aa @@ -34896,11 +34208,11 @@ aa aa aa aa -af -IS -IS -IS -af +ad +ad +ad +ad +ad aa aa aa @@ -34908,30 +34220,30 @@ aa aa aa aa -af -IS -af +ad +ad +ad aa aa aa aa -af -af -af -af -af -af -af +ad +ad +ad +ad +ad +ad +ad aa aa aa aa -af -af -af -IS -IS -af +ad +ad +ad +ad +ad +ad aa aa aa @@ -35137,11 +34449,11 @@ aa aa aa aa -af -af -IS -IS -af +ad +ad +ad +ad +ad aa aa aa @@ -35153,43 +34465,43 @@ aa aa aa aa -af -IS -IS -IS -af +ad +ad +ad +ad +ad aa aa aa aa aa aa -af -IS +ad +ad ag -IS -af +ad +ad aa aa aa -af -IS -IS -IS -IS -af -af +ad +ad +ad +ad +ad +ad +ad aa aa aa aa -af -IS -IS -IS -IS -IS -af +ad +ad +ad +ad +ad +ad +ad aa aa aa @@ -35396,8 +34708,8 @@ aa aa aa aa -af -af +ad +ad aa aa aa @@ -35411,9 +34723,9 @@ aa aa aa aa -af -af -af +ad +ad +ad aa aa aa @@ -35421,32 +34733,32 @@ aa aa aa aa -af -IS -IS -af +ad +ad +ad +ad aa aa aa aa -af -IS +ad +ad ag -IS -af +ad +ad aa aa aa aa aa -af -IS -IS -IS -IS -IS -IS -af +ad +ad +ad +ad +ad +ad +ad +ad aa aa aa @@ -35672,39 +34984,39 @@ aa aa aa aa -af -af +ad +ad aa aa aa aa -af -IS -IS -IS -af +ad +ad +ad +ad +ad aa aa aa -af -IS -af -af -af +ad +ad +ad +ad +ad aa aa aa aa aa -af -IS -IS -IS +ad +ad +ad +ad ag -IS -IS -IS -af +ad +ad +ad +ad aa aa aa @@ -35929,22 +35241,22 @@ aa aa aa aa -af -af +ad +ad aa aa aa aa -af -af -IS -IS -af +ad +ad +ad +ad +ad aa aa aa -af -af +ad +ad aa aa aa @@ -35953,15 +35265,15 @@ aa aa aa aa -af -af -IS -IS -IS -IS -IS -IS -af +ad +ad +ad +ad +ad +ad +ad +ad +ad aa aa aa @@ -36170,12 +35482,12 @@ aa aa aa aa -af -af -af -af -af -af +ad +ad +ad +ad +ad +ad aa aa aa @@ -36186,17 +35498,17 @@ aa aa aa aa -af -IS -af +ad +ad +ad aa aa aa aa aa -af -af -af +ad +ad +ad aa aa aa @@ -36212,13 +35524,13 @@ aa aa aa aa -af -IS -IS -IS -IS -IS -af +ad +ad +ad +ad +ad +ad +ad aa aa aa @@ -36428,11 +35740,11 @@ aa aa aa aa -af -IS +ad +ad ag -IS -af +ad +ad aa aa aa @@ -36443,9 +35755,9 @@ aa aa aa aa -af -af -af +ad +ad +ad aa aa aa @@ -36469,13 +35781,13 @@ aa aa aa aa -af -IS -IS -IS -IS -IS -af +ad +ad +ad +ad +ad +ad +ad aa aa aa @@ -36685,12 +35997,12 @@ aa aa aa aa -af -IS -IS -IS -IS -af +ad +ad +ad +ad +ad +ad aa aa aa @@ -36700,7 +36012,7 @@ aa aa aa aa -af +ad aa aa aa @@ -36716,9 +36028,9 @@ aa aa aa aa -af -af -af +ad +ad +ad aa aa aa @@ -36727,11 +36039,11 @@ aa aa aa aa -af -af -af -af -af +ad +ad +ad +ad +ad aa aa aa @@ -36942,12 +36254,12 @@ aa aa aa aa -af -IS -IS -IS -af -af +ad +ad +ad +ad +ad +ad aa aa aa @@ -36957,7 +36269,7 @@ aa aa aa aa -af +ad aa aa aa @@ -36973,10 +36285,10 @@ aa aa aa aa -af -IS -IS -af +ad +ad +ad +ad aa aa aa @@ -37185,26 +36497,26 @@ aa aa aa aa -IS -IS -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -af af af aa -af +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ad +ad +ad +aa +ad aa aa aa @@ -37230,11 +36542,11 @@ aa aa aa aa -af -IS -IS -IS -af +ad +ad +ad +ad +ad aa aa aa @@ -37486,12 +36798,12 @@ aa aa aa aa -af -IS -IS +ad +ad +ad ag -IS -af +ad +ad aa aa aa @@ -37507,8 +36819,8 @@ aa aa aa aa -IS -af +ad +ad aa aa aa @@ -37733,8 +37045,8 @@ aa aa aa aa -af -af +ad +ad aa aa aa @@ -37743,12 +37055,12 @@ aa aa aa aa -af -IS -IS -IS -IS -af +ad +ad +ad +ad +ad +ad aa aa aa @@ -37990,8 +37302,8 @@ aa aa aa aa -af -af +ad +ad aa aa aa @@ -38001,11 +37313,11 @@ aa aa aa aa -af -IS -af -af -af +ad +ad +ad +ad +ad aa aa aa @@ -38234,11 +37546,11 @@ aa aa aa aa -af -af -af -af -af +ad +ad +ad +ad +ad aa aa aa @@ -38247,10 +37559,10 @@ aa aa aa aa -af -IS -af -af +ad +ad +ad +ad aa aa aa @@ -38258,8 +37570,8 @@ aa aa aa aa -af -af +ad +ad aa aa aa @@ -38491,11 +37803,11 @@ aa aa aa aa -af -IS -IS -IS -af +ad +ad +ad +ad +ad aa aa aa @@ -38503,11 +37815,11 @@ aa aa aa aa -af -IS +ad +ad ag -IS -af +ad +ad aa aa aa @@ -38554,25 +37866,25 @@ aa aa aa aa -Hw -Hw -Hw -Hw -Hw -Hw -Hw +Ht +Hx +Hx +Hx +Hx +Hx +Hx HS HS HS -Hw -Hw -Hw -Hw -Hw -Hw -Hw -Hw -Hw +Hx +Hx +Hx +Hx +Hx +HY +Hx +Hx +Ik aa aa aa @@ -38744,15 +38056,15 @@ aa aa aa aa -af -af -af -af -IS +ad +ad +ad +ad +ad ag -IS -IS -af +ad +ad +ad aa aa aa @@ -38760,11 +38072,11 @@ aa aa aa aa -af -IS -IS -IS -af +ad +ad +ad +ad +ad aa aa aa @@ -38810,7 +38122,7 @@ aa aa aa aa -Hw +Ht Hw Hz Hy @@ -38826,11 +38138,11 @@ HM HP HP HX -Hw +HZ Ie Ii -HL -Hw +Im +Ik aa aa aa @@ -39001,14 +38313,14 @@ aa aa aa aa -af -IS -af -af -IS -IS -IS -af +ad +ad +ad +ad +ad +ad +ad +ad aa aa aa @@ -39017,10 +38329,10 @@ aa aa aa aa -af -af -af -af +ad +ad +ad +ad aa aa aa @@ -39039,7 +38351,7 @@ aa aa aa aa -af +ad aa aa aa @@ -39072,7 +38384,7 @@ Hv Hy Hy Hy -HS +HJ HM HM HM @@ -39083,11 +38395,11 @@ HM HM HM Hy -Hw +HZ Id Id Il -HS +HJ aa aa aa @@ -39258,14 +38570,14 @@ aa aa aa aa -af -af +ad +ad aa aa -af -af -af -af +ad +ad +ad +ad aa aa aa @@ -39288,16 +38600,16 @@ aa aa aa aa -af -af -af -af +ad +ad +ad +ad aa aa aa aa -af -af +ad +ad aa aa aa @@ -39329,7 +38641,7 @@ Hv HA HH HA -HS +HJ HM HR HR @@ -39344,7 +38656,7 @@ Ib HM HM Io -HS +HJ aa aa aa @@ -39539,23 +38851,23 @@ aa aa aa aa -af -af -af +ad +ad +ad aa aa aa -af -IS -IS -af +ad +ad +ad +ad aa aa aa -af -IS -IS -af +ad +ad +ad +ad aa aa aa @@ -39583,17 +38895,17 @@ aa aa Hs Hv -Hw -Hw -Hw +Hx +Hx +Hx HL HM HQ -HS -HS +HJ +HJ HT -HS -HS +HJ +HJ HW HM HM @@ -39601,7 +38913,7 @@ Ia HM HM In -HS +HJ aa aa aa @@ -39796,22 +39108,29 @@ aa aa aa aa -af +ad ag -af +ad aa aa -af -IS -IS +ad +ad +ad ag -af +ad aa aa aa -af +ad ag -af +ad +aa +aa +aa +aa +aa +aa +aa aa aa aa @@ -39825,13 +39144,6 @@ aa aa aa aa -IU -IU -IV -IU -IV -IU -IU aa aa aa @@ -39842,7 +39154,7 @@ Hs Hv HC HC -HS +HJ Hy HM HP @@ -39854,11 +39166,11 @@ HP HP HM Hy -Hw +HZ Ig HM Io -HS +HJ aa aa aa @@ -40040,9 +39352,9 @@ aa aa aa aa -af -af -af +ad +ad +ad aa aa aa @@ -40053,22 +39365,29 @@ aa aa aa aa -af -IS -af +ad +ad +ad +aa +aa +aa +ad +ad +ad +ad +aa +aa +aa +ad +ad +ad +aa aa aa aa -af -IS -IS -af aa aa aa -af -af -af aa aa aa @@ -40082,13 +39401,6 @@ aa aa aa aa -IU -IW -Ja -Ja -Jb -Jo -IU aa aa aa @@ -40111,11 +39423,11 @@ HM HM HM Hy -Hw +HZ If If Ip -HS +HJ aa aa aa @@ -40296,29 +39608,29 @@ aa aa aa aa -af -IS -IS -af +ad +ad +ad +ad aa aa aa aa -af -IS -af +ad +ad +ad aa aa aa aa -af -af +ad +ad aa aa aa -af -af -af +ad +ad +ad aa aa aa @@ -40339,24 +39651,24 @@ aa aa aa aa -IV -IX -Jb -Ja -Jb -Jp -Jr aa aa aa aa aa aa -Hw +aa +aa +aa +aa +aa +aa +aa +Hu Hw HD HD -HS +HJ HN HM HR @@ -40368,19 +39680,19 @@ HM HR HR HX -Hw +HZ Ih Ij -HL -Hw +Ir +Iq aa aa aa -vm -vm -HS -vm -vm +jc +vY +ph +vY +xq aa aa aa @@ -40545,25 +39857,25 @@ aa aa aa aa -af -af +ad +ad aa aa aa aa aa aa -af -IS -IS -af +ad +ad +ad +ad aa aa aa aa -af -IS -af +ad +ad +ad aa aa aa @@ -40573,7 +39885,7 @@ aa aa aa aa -af +ad aa aa aa @@ -40588,21 +39900,8 @@ aa aa aa aa -af -af -aa -aa -aa -aa -aa -aa -IU -IW -Ja -Ja -Jb -Jo -IU +ad +ad aa aa aa @@ -40610,34 +39909,47 @@ aa aa aa aa -Hw -Hw -Hw -Hw -Hw +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +Hu +Hx +Hx +Hx +Hx HO -Hw -Hw +Hx +Hx HS -Hw -Hw +Hx +Hx HV -Hw -Hw -Hw -Hw -Hw -Hw -Hw +Hx +Hx +Hx +Ic +Hx +Hx +Iq aa aa aa aa -vm +vp wa vS -wa -vm +wU +wV aa aa aa @@ -40810,10 +40122,10 @@ aa aa aa aa -af +ad ag -IS -af +ad +ad aa aa aa @@ -40845,21 +40157,21 @@ aa aa aa aa -IS -af +ad +ad +aa +aa +aa +aa +aa +aa +aa aa aa aa aa aa aa -IU -IU -IV -Jf -IV -IU -IU aa aa aa @@ -40899,7 +40211,7 @@ aa aa Is IC -Is +IF aa aa aa @@ -41067,10 +40379,10 @@ aa aa aa aa -af -IS -IS -af +ad +ad +ad +ad aa aa aa @@ -41112,20 +40424,20 @@ aa aa aa aa -bq -Jg -bq aa aa aa -Hm -Hm -Hm -Hm -Hm -Hm -Hm -Hm +aa +aa +aa +Hk +Ho +Ho +Ho +Ho +Ho +Ho +HE am am fW @@ -41146,18 +40458,18 @@ aa aa aa aa -vm -vm -vm +jc +vs +wu vq -vm -vm -vm +wu +vs +xq Is Ix IB -Ix -Is +IE +IF aa aa aa @@ -41324,16 +40636,19 @@ aa aa aa aa -af -af -af -af +ad +ad +ad +ad aa aa aa aa -af -af +ad +ad +aa +aa +aa aa aa aa @@ -41369,9 +40684,6 @@ aa aa aa aa -bQ -Jh -bq aa aa Hj @@ -41382,7 +40694,7 @@ Hp Hp Hp Hp -Hm +HF kf kf fW @@ -41572,10 +40884,10 @@ aa aa aa aa -af -af -af -af +ad +ad +ad +ad aa aa aa @@ -41589,9 +40901,14 @@ aa aa aa aa -af -IS -af +ad +ad +ad +aa +aa +aa +aa +aa aa aa aa @@ -41625,11 +40942,6 @@ aa aa aa aa -am -bQ -Ji -bq -am aa Hj Hl @@ -41639,7 +40951,7 @@ Hp Hp Hp Hp -Hm +HF kf kM lk @@ -41829,11 +41141,11 @@ aa aa aa aa -af -IS -IS -IS -af +ad +ad +ad +ad +ad aa aa aa @@ -41845,10 +41157,15 @@ aa aa aa aa -af -IS -IS -af +ad +ad +ad +ad +aa +aa +aa +aa +aa aa aa aa @@ -41882,11 +41199,6 @@ aa aa aa aa -bq -bq -Jj -bq -bq aa Hj Hl @@ -41896,7 +41208,7 @@ Hp Hp Hp Hp -Hm +HF fW kN lK @@ -42085,12 +41397,12 @@ aa aa aa aa -af -IS -IS -IS -IS -af +ad +ad +ad +ad +ad +ad aa aa aa @@ -42102,9 +41414,9 @@ aa aa aa aa -af -af -af +ad +ad +ad aa aa aa @@ -42118,12 +41430,17 @@ aa aa aa aa -af +ad +aa +aa +aa +ad +ad +aa +aa aa aa aa -af -af aa aa aa @@ -42139,11 +41456,6 @@ aa aa aa aa -bq -Jc -Jk -Jl -bq aa Hj Hl @@ -42153,7 +41465,7 @@ Hp Hp Hp Hp -Hm +HF fW kN ll @@ -42342,12 +41654,12 @@ aa aa aa aa -af -IS -IS +ad +ad +ad ag -IS -af +ad +ad aa aa aa @@ -42375,7 +41687,12 @@ aa aa aa aa -IS +ad +aa +aa +aa +aa +aa aa aa aa @@ -42396,11 +41713,6 @@ aa aa aa aa -bq -Jd -cS -Jm -bq aa Hj Hm @@ -42410,7 +41722,7 @@ Hp Hp Hp Hp -Hm +HF kf kO lm @@ -42600,11 +41912,11 @@ aa aa aa aa -af -IS -IS -IS -af +ad +ad +ad +ad +ad aa aa aa @@ -42652,22 +41964,22 @@ aa aa aa aa -am -bq -Je -cS -Jn -bq -am aa -Hm -Hm +aa +aa +aa +aa +aa +aa +aa +Hn +Ho Hq -Hm +Ho Hr -Hm -Hm -Hm +Ho +Ho +HG kf kP ln @@ -42857,10 +42169,10 @@ aa aa aa aa -af -af -af -af +ad +ad +ad +ad aa aa aa @@ -42911,9 +42223,9 @@ bq bq bq bq -cS -cS -cS +bq +bq +bq bq bJ bq @@ -43117,7 +42429,7 @@ aa aa aa aa -af +ad aa aa aa @@ -43155,8 +42467,8 @@ aa aa aa aa -af -IS +ad +ad aa aa aa @@ -43170,11 +42482,11 @@ bX ct cM dp -cS -Jk +dN +ev eZ fx -Js +cS gB ha ha @@ -43182,13 +42494,13 @@ ha hA cS bJ -Jy -Jy +kf +kf lp lN -Jy +kf mU -Jy +kf kf kf pi @@ -43365,7 +42677,7 @@ aa aa aa aa -af +ad aa aa aa @@ -43412,8 +42724,8 @@ aa aa aa aa -IS -IS +ad +ad am am am @@ -43445,7 +42757,7 @@ lq dx mr mV -Jt +lJ nX kf pj @@ -43692,7 +43004,7 @@ cS ey hb fc -Ju +hb fc je dS @@ -43700,7 +43012,7 @@ kj kS lr lO -Jt +lJ mW ny nY @@ -43716,18 +43028,18 @@ lK fW fW of -vm -vm +vp +vY wx wx wx -vm -vm -It +vY +wV +Iw Iu ID Iu -It +II aa aa aa @@ -43916,8 +43228,8 @@ aa aa aa aa -IS -af +ad +ad aa aa aa @@ -43955,11 +43267,11 @@ hc bq kk kT -Jt +bN kk -Jt -Jt -JI +lJ +lJ +lJ nZ kf pl @@ -43973,17 +43285,17 @@ lK kf kf am -vm +vr vZ vZ vZ vZ vZ -vm -ev -ev -Cf -ev +xI +bx +bx +bM +bx aa aa aa @@ -44173,8 +43485,8 @@ aa aa aa aa -af -af +ad +ad aa aa aa @@ -44196,7 +43508,7 @@ bu bQ bY cv -cO +cP cS cS cS @@ -44212,10 +43524,10 @@ hY bq kk kT -JA +cf lP ms -Jt +bN nA nA nA @@ -44237,10 +43549,10 @@ am am am am -Cw -jc -jc -ev +by +bN +bN +bx am aa aa @@ -44405,8 +43717,8 @@ aa aa aa aa -af -af +ad +ad aa aa aa @@ -44451,9 +43763,9 @@ aa bk bv bq -bY +cb bQ -cP +cO cS dP cS @@ -44469,10 +43781,10 @@ bq bq kk kU -Jy -Jy +bx +bx kk -Jt +bN nA jh oH @@ -44488,14 +43800,14 @@ qM sr sr sr -ev -ev -ev -ev -ev -ev -ev -Cf +bx +bx +bx +bx +bx +bx +bx +bM yB yB qI @@ -44662,8 +43974,8 @@ aa aa aa aa -IS -af +ad +ad aa aa aa @@ -44719,17 +44031,17 @@ fA cS gC bq -Jt -Jt -Jv -Jx -Jx +bN +bN +iE +bO +bO kl kV -Jy +bx iQ kl -Jt +bN nA ob oI @@ -44745,14 +44057,14 @@ qL un uS sr -jc -jc -jc -sF -wU +bN +bN +bN +bN +cx yd -ev -Dz +bx +cT yC vg za @@ -44976,7 +44288,7 @@ fz fc dZ bq -Jt +bN bx dw jg @@ -44986,7 +44298,7 @@ kW bx iQ mt -Jt +bN nA oc oJ @@ -45002,14 +44314,14 @@ tE uo tL vt -ng -ng -ng -ng -wV -xI -ev -xq +bS +bS +bS +bS +nN +dt +bx +pr yA yO zf @@ -45188,8 +44500,8 @@ aa aa aa aa -af -IS +ad +ad aa aa aa @@ -45227,13 +44539,13 @@ bK cS cS dQ -Jq +fe fe fB cS ez bq -Jt +bN bx cB ii @@ -45241,9 +44553,9 @@ bx nx vc bx -Jy +bx mu -Jt +bN nA od oK @@ -45260,13 +44572,13 @@ tn un sr wb -jc -jc -jc -xq -xJ -ev -xq +bN +bN +bN +pr +mG +bx +pr yA yP za @@ -45445,8 +44757,8 @@ aa aa aa aa -af -af +ad +ad aa aa aa @@ -45490,7 +44802,7 @@ fC ft ew bq -Jt +bN bx du ji @@ -45500,7 +44812,7 @@ ji bx lR mv -Jt +bN nB oe oe @@ -45517,12 +44829,12 @@ tn tu sr wc -ev -ev -ev -xq -jc -ev +bx +bx +bx +pr +bN +bx yw yA yR @@ -45736,7 +45048,7 @@ aa aa aa aa -IT +bx cx bN bq @@ -45747,7 +45059,7 @@ fD fa ez bq -Jt +bN bx bx jj @@ -45757,13 +45069,13 @@ kX bx lS mw -Jt +bN nC jo -Jy -Jt +bx +bN IL -Jy +bx ps rE qX @@ -45775,12 +45087,12 @@ un vu sr wA -jc -jc -xq -jc -jc -xq +bN +bN +pr +bN +bN +pr yA yQ zg @@ -45993,7 +45305,7 @@ aa aa aa bL -IT +bx bN dt bq @@ -46004,7 +45316,7 @@ fA cS ez bq -Jt +bN bx iH jk @@ -46013,13 +45325,13 @@ jk kY bx lT -JH +fw mv nD jo -Jy -JC -ny +bx +cT +bS qx qU rF @@ -46032,10 +45344,10 @@ un vv sr Av -xr +wW xr xL -BS +xr xr yx yA @@ -46248,9 +45560,9 @@ aa aa aa aa -IT +bx bM -IT +bx bN iE dR @@ -46261,7 +45573,7 @@ fE cS ez bq -Jt +bN bx iI iF @@ -46272,12 +45584,12 @@ bx Bc Bc mw -JJ -Jy -Jy +dt +bx +bx pr -Jt -Jy +bN +bx fX cX ks @@ -46291,10 +45603,10 @@ sr wC wX xs -ev -ev -ev -xq +bx +bx +bx +pr yA yT za @@ -46507,7 +45819,7 @@ ah am by bN -IT +bx bN IM bq @@ -46518,7 +45830,7 @@ fF fN dZ bq -Jt +bN bx iJ iG @@ -46527,14 +45839,14 @@ ko la bx lV -JH +fw mX -Jt +bN vE -JK -JN -JP -Jy +bN +pr +dt +bx qV cX ks @@ -46544,14 +45856,14 @@ tK ut uW sq -ph +bG wD wY px xM vo -ev -xq +bx +pr yA yU za @@ -46710,8 +46022,8 @@ aa aa aa aa -IS -IS +ad +ad aa aa aa @@ -46762,10 +46074,10 @@ aN aU ah ah -IT +bx bM -IT -IY +bx +bN IN bq bq @@ -46775,7 +46087,7 @@ fG bQ fV bq -Jt +bN bx iK iG @@ -46785,13 +46097,13 @@ lb bx lW my -Jt -Jt -Jt -Jt +bN +nE +bN +bN pr -JQ -Jy +lv +bx fX qy rV @@ -46805,10 +46117,10 @@ wd wE wZ xs -ev -ev -ev -xq +bx +bx +bx +pr yA yV vw @@ -46967,8 +46279,8 @@ aa aa aa aa -af -af +ad +ad aa aa aa @@ -47024,7 +46336,7 @@ bO bO bO cV -IT +bx eI eI eI @@ -47032,7 +46344,7 @@ fH fX ks bx -Jt +bN id iL kn @@ -47040,19 +46352,19 @@ mc oo lc bx -Jt -Jt -JC -ny +bN +bN +cT +bS oh -ny +bS mY -JR -Jy +lu +bx qW rG fj -dN +qx sX uu uu @@ -47060,12 +46372,12 @@ uu uu uu wF -vr -wu -wu +nD +bT +bT yf -jc -xq +bN +pr yA yW zi @@ -47297,32 +46609,32 @@ jm og AR bx -JC +cT mz mY nF oi oL -Jt -JS -Jy +bN +cx +bx lY fX fX -ev -eY -ev -ev -ev -ev -sF -vp -vs +bx +on +bx +bx +bx +bx +bN +lP +bO xu -vs +bO yg -Dx -xq +ms +pr yA yA yA @@ -47536,9 +46848,9 @@ ah bB ah ah -IT +bx IP -IT +bx dW eK eK @@ -47555,28 +46867,28 @@ tZ el bx lX -Jy -Jy bx bx bx -Jy -Jy -Jy +bx +bx +bx +bx +bx lY fX fX -ev -ev -ev +bx +bx +bx uv uX -ev -ev -ev -ev -ev -ev +bx +bx +bx +bx +bx +bx tN yn yy @@ -48564,7 +47876,7 @@ ah ah ah ah -IT +bx cW dC dr @@ -48580,17 +47892,17 @@ bx eC hG jN -Jz -Jz -JD -Jz -Jz -Jz -Jz -Jz -Jz -Jz -Jz +bx +bx +lX +bx +bx +bx +bx +bx +bx +bx +bx lY fX fX @@ -48608,7 +47920,7 @@ su yh yq yz -DC +jO yY zk zB @@ -48837,17 +48149,17 @@ cj jq fX ks -Jz +bx cT ma -JF -JF -JF -JF -JF +bS +bS +bS +bS +bS nN -JO -Jz +bN +bx pL fX fX @@ -48864,7 +48176,7 @@ wh wl yi yr -DA +mY yA yA yA @@ -49094,8 +48406,8 @@ cj jq fX ks -Jz -JB +bx +cU mb mb mb @@ -49103,8 +48415,8 @@ mb mb mb pt -JE -Jz +bN +bx qY fX fX @@ -49332,9 +48644,9 @@ aT aZ ah ah -IT +bx bM -IT +bx bN cU cj @@ -49351,8 +48663,8 @@ cj jq fX kt -Jz -JB +bx +cU mb mA mZ @@ -49360,8 +48672,8 @@ nG oj mb pu -ad -Jz +cx +bx qm qA fX @@ -49591,8 +48903,8 @@ ah am by bN -IT -IZ +bx +bN dc cj ee @@ -49608,8 +48920,8 @@ cj jq fX ku -Jz -JB +bx +cU mb mB na @@ -49634,7 +48946,7 @@ uf xy wI yl -xq +pr yA yH yH @@ -49846,7 +49158,7 @@ aa aa aa aa -IT +bx bM cj cj @@ -49865,8 +49177,8 @@ cj jq fX ks -Jz -JB +bx +cU mb mC nb @@ -50122,8 +49434,8 @@ cj jq fX ks -Jz -JB +bx +cU mb mD nb @@ -50140,7 +49452,7 @@ kh td td td -Er +td td wj tt @@ -50148,7 +49460,7 @@ uG xA wJ su -jc +bN yA yI yI @@ -50379,8 +49691,8 @@ cj dz ik ks -Jz -JB +bx +cU mb mE nb @@ -50405,7 +49717,7 @@ xg qC xU su -sF +bN yA yJ yJ @@ -50636,8 +49948,8 @@ cj jq fX ks -Jz -JB +bx +cU mb mC iS @@ -50662,7 +49974,7 @@ vH xC xV su -Dy +mu yA yJ yJ @@ -50893,8 +50205,8 @@ cj jr fX ks -Jz -JB +bx +cU mb mF nd @@ -50919,7 +50231,7 @@ xi xD xW su -jc +bN yA yK yK @@ -50937,7 +50249,7 @@ BH BW tP Ci -am +Co am yB CY @@ -51150,8 +50462,8 @@ cj fq fX ks -Jz -JB +bx +cU mb mb mb @@ -51176,7 +50488,7 @@ xj xE xh su -sF +bN yA Ay za @@ -51193,7 +50505,7 @@ qI qI qI yB -aa +Cj Cp am yB @@ -51407,17 +50719,17 @@ cj jq fX ks -Jz -JB -JE +bx +cU +bN mG ne nM on -Jz -Jz -Jz -Jz +bx +bx +bx +bx jq fX ks @@ -51433,7 +50745,7 @@ uH xF uH ym -jc +bN yA uT xB @@ -51451,7 +50763,7 @@ aa aa aa aa -Hk +Cq am yB CX @@ -51664,17 +50976,17 @@ cj gg fX kt -Jz +bx lt -JF +bS mH -JF -mH -JF -JL -JE -JE -cb +nf +nN +bN +bN +bN +bN +id jq fX kt @@ -51690,7 +51002,7 @@ su su su su -jc +bN yA yB yB @@ -51708,7 +51020,7 @@ aa aa aa aa -Hk +Cq am yB Da @@ -51921,17 +51233,17 @@ fK js fX ks -Jz +bx lu -JE -JB -JE -JB -JE -JE -JO -Jz -Jz +bN +cU +bN +cU +bN +bN +bN +bx +bx jr fX rX @@ -51943,12 +51255,12 @@ yN ga Al Ax -vY -jc -jc -jc -jc -ev +id +bN +bN +bN +bN +bx aa yB qI @@ -51965,7 +51277,7 @@ aa aa aa aa -Hk +Cq am yB yB @@ -52178,16 +51490,16 @@ hz jt fX ks -Jz +bx lv -JG +bN mI -go +ng nO wo -JM +lR pA -Jz +bx oQ jq fX @@ -52200,12 +51512,12 @@ vb uB vb wL -ev -ev -ev -Cf -ev -ev +bx +bx +bx +bM +bx +bx aa am aa @@ -52459,9 +51771,9 @@ vb wM bx am -ev -jc -Cw +bx +bN +by am aa am @@ -52479,7 +51791,7 @@ aa aa aa aa -Hk +Cq am aa aa @@ -52716,15 +52028,15 @@ vb wN bx am -ev -Cf -ev +bx +bM +bx am aa zc -DE +zc rm -DE +zc zc aa aa @@ -52736,7 +52048,7 @@ aa aa aa aa -Hk +Cq am aa aa @@ -52993,7 +52305,7 @@ aa aa aa aa -Hk +Cq am aa aa @@ -53250,7 +52562,7 @@ aa aa aa aa -Hk +Cq am aa aa @@ -53508,7 +52820,7 @@ aa aa aa Cs -am +Co am aa aa @@ -53764,21 +53076,21 @@ aa aa aa aa -aa +Cj CA -Cq -Cq -Cq -Cq -Cq +CK +Db +Db +Db +Db DX +DZ DX -DX -Cq -Cq -Cq +Db +Db +Db Ee -aa +Ep aa aa aa @@ -54034,7 +53346,7 @@ am am am am -am +Ef Eq aa aa @@ -54292,7 +53604,7 @@ aa aa aa am -Hk +Cq aa aa aa @@ -54549,7 +53861,7 @@ aa aa aa am -Cr +Er aa aa aa @@ -54806,7 +54118,7 @@ aa aa aa am -Hk +Cq aa aa aa @@ -55063,7 +54375,7 @@ aa aa aa am -Hk +Cq aa aa aa @@ -55320,7 +54632,7 @@ aa aa aa am -Hk +Cq aa aa aa @@ -55577,7 +54889,7 @@ aa aa aa am -Hk +Cq aa aa aa @@ -55834,7 +55146,7 @@ aa aa aa am -Hk +Cq aa aa aa @@ -56091,7 +55403,7 @@ aa aa aa am -Hk +Cq aa aa aa @@ -56348,7 +55660,7 @@ aa aa aa am -Cr +Er aa aa aa @@ -56605,7 +55917,7 @@ aa aa aa am -Hk +Cq aa aa aa @@ -56862,7 +56174,7 @@ aa aa aa am -Hk +Cq aa aa aa @@ -57119,7 +56431,7 @@ aa aa aa am -Hk +Cq aa aa aa @@ -57376,7 +56688,7 @@ aa aa aa am -Hk +Cq aa aa aa @@ -57633,7 +56945,7 @@ aa aa aa am -Cr +Er aa aa aa @@ -58148,7 +57460,7 @@ aa aa am Et -am +Co am am am @@ -58404,9 +57716,9 @@ aa aa aa am -am +Ef EB -am +Co Ea uR uR @@ -58599,7 +57911,7 @@ aa aa am bU -Jw +iZ jL kd kK @@ -58662,7 +57974,7 @@ aa aa am am -am +Ef CA uw Fh @@ -58856,7 +58168,7 @@ aa aa aa bU -iZ +ja bU bV bV @@ -59112,9 +58424,9 @@ aa aa aa aa -bU -ja -bU +am +bL +am aa aa aa @@ -59176,15 +58488,15 @@ aa am am Ea -DH -JT Eh Eh Eh Eh Eh -JT -DH +Eh +Eh +Eh +Eh Ea am am @@ -59949,11 +59261,11 @@ Eg Ea Eh Ew -Ht +sF Fk Fy FN -Iw +GQ Gr Eh Ea @@ -60720,7 +60032,7 @@ Eh Eu Eh Ew -HJ +EW EV EV EV @@ -63481,9 +62793,9 @@ aa aa aa aa -DJ +eY hP -DJ +eY aa aa aa @@ -63738,9 +63050,9 @@ aa aa aa aa -DJ +eY iD -DJ +eY aa aa aa diff --git a/_maps/map_files/MiniStation/cargopacks.dm b/_maps/map_files/MiniStation/cargopacks.dm index 097711e7f4..a6a1db75df 100644 --- a/_maps/map_files/MiniStation/cargopacks.dm +++ b/_maps/map_files/MiniStation/cargopacks.dm @@ -1,3 +1,31 @@ +/datum/supply_pack/engineering/oxygen + name = "Oxygen Canister" + cost = 15 + contains = list(/obj/machinery/portable_atmospherics/canister/oxygen) + crate_name = "oxygen canister crate" + crate_type = /obj/structure/closet/crate/large + +/datum/supply_pack/engineering/toxins + name = "Plasma Canister" + cost = 30 + contains = list(/obj/machinery/portable_atmospherics/canister/toxins) + crate_name = "plasma canister crate" + crate_type = /obj/structure/closet/crate/large + +/datum/supply_pack/engineering/nitrogen + name = "Nitrogen Canister" + cost = 20 + contains = list(/obj/machinery/portable_atmospherics/canister/nitrogen) + crate_name = "nitrogen canister crate" + crate_type = /obj/structure/closet/crate/large + +/datum/supply_pack/engineering/carbon_dio + name = "Carbon Dioxide Canister" + cost = 35 + contains = list(/obj/machinery/portable_atmospherics/canister/carbon_dioxide) + crate_name = "carbon dioxide canister crate" + crate_type = /obj/structure/closet/crate/large + /obj/machinery/hydroponics/constructable/unattached anchored = 0 diff --git a/_maps/map_files/MiniStation/job/jobs.dm b/_maps/map_files/MiniStation/job/jobs.dm index be8271da4a..03bdf00859 100644 --- a/_maps/map_files/MiniStation/job/jobs.dm +++ b/_maps/map_files/MiniStation/job/jobs.dm @@ -80,12 +80,4 @@ total_positions = 4 spawn_positions = 4 access = list(access_security, access_sec_doors, access_brig, access_court) - minimal_access = list(access_security, access_sec_doors, access_brig, access_court) - -/obj/item/weapon/robot_module/miner/New() - ..() - var/mining_type = MINETYPE - if(mining_type == "mining") - var/obj/item/stack/rods/cyborg/R = new /obj/item/stack/rods/cyborg(src) - basic_modules += R - add_module(R, FALSE, TRUE) + minimal_access = list(access_security, access_sec_doors, access_brig, access_court) \ No newline at end of file diff --git a/_maps/map_files/MiniStation/job/removed.dm b/_maps/map_files/MiniStation/job/removed.dm index b425ced227..3954ecf873 100644 --- a/_maps/map_files/MiniStation/job/removed.dm +++ b/_maps/map_files/MiniStation/job/removed.dm @@ -50,3 +50,6 @@ /datum/job/warden/config_check() return 0 + +/datum/job/cyborg/config_check() + return 0 \ No newline at end of file diff --git a/_maps/map_files/MiniStation/lavaland.dmm b/_maps/map_files/MiniStation/lavaland.dmm deleted file mode 100644 index 676d51be4b..0000000000 --- a/_maps/map_files/MiniStation/lavaland.dmm +++ /dev/null @@ -1,66360 +0,0 @@ -//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE -"aa" = ( -/turf/closed/indestructible/necropolis, -/area/lavaland/surface/outdoors) -"ab" = ( -/obj/structure/necropolis_gate, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/lavaland/surface/outdoors) -"ac" = ( -/turf/open/indestructible/necropolis, -/area/lavaland/surface/outdoors) -"ad" = ( -/obj/effect/light_emitter, -/turf/open/indestructible/necropolis, -/area/lavaland/surface/outdoors) -"ae" = ( -/obj/structure/fluff/drake_statue, -/turf/open/indestructible/necropolis, -/area/lavaland/surface/outdoors) -"af" = ( -/obj/structure/fluff/drake_statue/falling, -/turf/open/indestructible/necropolis, -/area/lavaland/surface/outdoors) -"ag" = ( -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/lavaland/surface/outdoors) -"ah" = ( -/turf/closed/mineral/random/high_chance/volcanic, -/area/lavaland/surface/outdoors) -"ai" = ( -/turf/closed/indestructible/necropolis, -/area/ruin/unpowered{ - name = "Necropolis Bridge" - }) -"aj" = ( -/turf/open/indestructible/necropolis, -/area/ruin/unpowered{ - name = "Necropolis Bridge" - }) -"ak" = ( -/turf/open/floor/plating/lava/smooth/lava_land_surface, -/area/lavaland/surface/outdoors) -"al" = ( -/turf/closed/mineral/random/volcanic, -/area/lavaland/surface/outdoors) -"am" = ( -/obj/item/weapon/pickaxe, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/lavaland/surface/outdoors) -"an" = ( -/obj/structure/ore_box, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/lavaland/surface/outdoors) -"ao" = ( -/turf/closed/wall{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/production) -"ap" = ( -/obj/effect/spawner/structure/window/reinforced, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/production) -"aq" = ( -/obj/machinery/light/small{ - dir = 8 - }, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/mine/production) -"ar" = ( -/obj/machinery/airalarm{ - frequency = 1439; - pixel_y = 23 - }, -/obj/machinery/computer/shuttle/mining{ - req_access = "0" - }, -/turf/open/floor/plasteel/purple/side{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; - dir = 1 - }, -/area/mine/production) -"as" = ( -/obj/structure/closet/secure_closet/miner, -/turf/open/floor/plasteel/brown{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; - dir = 1 - }, -/area/mine/production) -"at" = ( -/obj/structure/table, -/obj/item/weapon/pickaxe, -/obj/item/device/gps/mining, -/obj/item/device/gps/mining, -/obj/item/device/gps/mining, -/obj/item/device/gps/mining, -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/plasteel/purple/corner{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; - dir = 8 - }, -/area/mine/production) -"au" = ( -/obj/structure/extinguisher_cabinet{ - pixel_x = -5; - pixel_y = 30 - }, -/obj/structure/tank_dispenser/oxygen, -/turf/open/floor/plasteel/purple/corner{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/production) -"av" = ( -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'KEEP CLEAR OF DOCKING AREA'."; - name = "KEEP CLEAR: DOCKING AREA"; - pixel_y = 0 - }, -/obj/effect/spawner/structure/window/reinforced, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/production) -"aw" = ( -/obj/item/device/radio/beacon, -/turf/open/floor/plasteel/purple/corner{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; - dir = 8 - }, -/area/mine/production) -"ax" = ( -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/production) -"ay" = ( -/obj/machinery/door/airlock/external{ - glass = 1; - name = "Mining External Airlock"; - opacity = 0; - req_access_txt = "54" - }, -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/production) -"az" = ( -/turf/open/floor/plasteel/brown{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; - dir = 8 - }, -/area/mine/production) -"aA" = ( -/turf/open/floor/plasteel/brown{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; - dir = 4 - }, -/area/mine/production) -"aB" = ( -/obj/docking_port/stationary{ - area_type = /area/lavaland/surface/outdoors; - dir = 8; - dwidth = 3; - height = 5; - id = "mining_away"; - name = "lavaland mine"; - turf_type = /turf/open/floor/plating/asteroid/basalt/lava_land_surface; - width = 7 - }, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/lavaland/surface/outdoors) -"aC" = ( -/obj/machinery/door/airlock/external{ - glass = 1; - name = "Mining Shuttle Airlock"; - opacity = 0; - req_access_txt = "0" - }, -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/production) -"aD" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - layer = 2.4; - on = 1 - }, -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/production) -"aE" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 10 - }, -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/production) -"aF" = ( -/obj/structure/closet/emcloset, -/turf/open/floor/plasteel/purple/corner{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; - dir = 1 - }, -/area/mine/production) -"aG" = ( -/obj/structure/ore_box, -/turf/open/floor/plasteel/purple/corner{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; - dir = 4 - }, -/area/mine/production) -"aH" = ( -/obj/machinery/suit_storage_unit/mining, -/turf/open/floor/plasteel/purple/corner{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; - dir = 1 - }, -/area/mine/production) -"aI" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/production) -"aJ" = ( -/turf/open/floor/plating/lava/smooth/lava_land_surface, -/area/lavaland/surface/outdoors/explored) -"aK" = ( -/turf/open/floor/plasteel/purple/corner{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; - dir = 8 - }, -/area/mine/production) -"aL" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/extinguisher_cabinet{ - pixel_x = 30; - pixel_y = 0 - }, -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/production) -"aM" = ( -/obj/machinery/power/apc{ - dir = 8; - name = "Mining Station Starboard Wing APC"; - pixel_x = -27; - pixel_y = 2 - }, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/turf/open/floor/plasteel/brown{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; - dir = 8 - }, -/area/mine/production) -"aN" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/production) -"aO" = ( -/obj/machinery/mineral/equipment_vendor, -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/production) -"aP" = ( -/turf/closed/wall{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/living_quarters) -"aQ" = ( -/obj/item/device/radio/intercom{ - dir = 8; - name = "Station Intercom (General)"; - pixel_x = -28 - }, -/turf/open/floor/plasteel/purple/corner{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; - dir = 1 - }, -/area/mine/production) -"aR" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/production) -"aS" = ( -/turf/closed/wall/r_wall{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/maintenance) -"aT" = ( -/obj/machinery/power/smes{ - charge = 5e+006 - }, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/living_quarters) -"aU" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/light/small{ - dir = 1 - }, -/obj/structure/closet/crate/secure/loot, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/living_quarters) -"aV" = ( -/obj/machinery/portable_atmospherics/canister/oxygen, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/living_quarters) -"aW" = ( -/obj/machinery/suit_storage_unit/mining, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/living_quarters) -"aX" = ( -/obj/structure/reagent_dispensers/fueltank, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/living_quarters) -"aY" = ( -/obj/structure/cable{ - icon_state = "0-2"; - pixel_y = 1; - d2 = 2 - }, -/obj/machinery/power/apc{ - dir = 1; - name = "Mining Communications APC"; - pixel_x = 1; - pixel_y = 25 - }, -/turf/open/floor/plasteel/black{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/maintenance) -"aZ" = ( -/obj/machinery/telecomms/relay/preset/mining, -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/plasteel/vault{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; - dir = 8; - tag = "icon-vault (WEST)" - }, -/area/mine/maintenance) -"ba" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - on = 1 - }, -/obj/machinery/airalarm{ - pixel_y = 24 - }, -/turf/open/floor/plasteel/black{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/maintenance) -"bb" = ( -/obj/machinery/power/terminal{ - icon_state = "term"; - dir = 1 - }, -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/obj/structure/closet/secure_closet/miner, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/living_quarters) -"bc" = ( -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/living_quarters) -"bd" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 6 - }, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/living_quarters) -"be" = ( -/obj/machinery/meter, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/living_quarters) -"bf" = ( -/obj/machinery/atmospherics/components/unary/tank/air{ - dir = 8 - }, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/living_quarters) -"bg" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/machinery/light{ - dir = 4 - }, -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/production) -"bh" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/turf/open/floor/bluegrid{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/maintenance) -"bi" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 6 - }, -/turf/open/floor/plasteel/black{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/maintenance) -"bj" = ( -/obj/machinery/light_switch{ - pixel_y = -25 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 9 - }, -/obj/machinery/camera{ - c_tag = "Communications Relay"; - dir = 8; - network = list("MINE") - }, -/turf/open/floor/bluegrid{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/maintenance) -"bk" = ( -/obj/structure/cable, -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/machinery/power/port_gen/pacman{ - anchored = 1 - }, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/living_quarters) -"bl" = ( -/obj/machinery/power/port_gen/pacman{ - anchored = 1 - }, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/living_quarters) -"bm" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold-b-f (WEST)"; - dir = 8 - }, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/living_quarters) -"bn" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/living_quarters) -"bo" = ( -/obj/machinery/door/airlock/maintenance{ - name = "Mining Station Communications"; - req_access_txt = "48" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/maintenance) -"bp" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/machinery/door/airlock/maintenance{ - name = "Mining Station Maintenance"; - req_access_txt = "48" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/living_quarters) -"bq" = ( -/obj/effect/spawner/structure/window/reinforced, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/living_quarters) -"br" = ( -/turf/open/floor/plasteel/purple/corner{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; - dir = 4 - }, -/area/mine/living_quarters) -"bs" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/turf/open/floor/plasteel/brown{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; - dir = 1; - tag = "icon-brown (NORTH)" - }, -/area/mine/living_quarters) -"bt" = ( -/obj/machinery/camera{ - c_tag = "Crew Area Hallway West"; - network = list("MINE") - }, -/turf/open/floor/plasteel/purple/corner{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; - dir = 1 - }, -/area/mine/living_quarters) -"bu" = ( -/obj/machinery/airalarm{ - frequency = 1439; - pixel_y = 23 - }, -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/living_quarters) -"bv" = ( -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/living_quarters) -"bw" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/brown{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; - dir = 1; - tag = "icon-brown (NORTH)" - }, -/area/mine/living_quarters) -"bx" = ( -/turf/open/floor/plasteel/purple/corner{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; - dir = 1 - }, -/area/mine/living_quarters) -"by" = ( -/obj/machinery/power/apc{ - dir = 1; - name = "Mining Station Port Wing APC"; - pixel_x = 1; - pixel_y = 25 - }, -/obj/structure/cable{ - icon_state = "0-2"; - pixel_y = 1; - d2 = 2 - }, -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/living_quarters) -"bz" = ( -/obj/structure/extinguisher_cabinet{ - pixel_x = -5; - pixel_y = 30 - }, -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/living_quarters) -"bA" = ( -/obj/machinery/light{ - dir = 1 - }, -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/living_quarters) -"bB" = ( -/obj/machinery/camera{ - c_tag = "Crew Area Hallway East"; - network = list("MINE") - }, -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/living_quarters) -"bC" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/living_quarters) -"bD" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4"; - tag = "" - }, -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/living_quarters) -"bE" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/living_quarters) -"bF" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/light, -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/living_quarters) -"bG" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4"; - tag = "" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/living_quarters) -"bH" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4"; - tag = "" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/living_quarters) -"bI" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/production) -"bJ" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 9 - }, -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/machinery/light, -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/production) - -(1,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(2,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(3,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(4,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(5,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(6,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -aJ -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(7,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -aJ -aJ -ak -aJ -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(8,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -aJ -aJ -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(9,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -aJ -aJ -ak -ak -aJ -aJ -ak -ak -aJ -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(10,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -aJ -aJ -aJ -aJ -aJ -aJ -aJ -aJ -aJ -aJ -aJ -aJ -aJ -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(11,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(12,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(13,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(14,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(15,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(16,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(17,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(18,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(19,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(20,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(21,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(22,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(23,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(24,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(25,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(26,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(27,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(28,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(29,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(30,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(31,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(32,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(33,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(34,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(35,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(36,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(37,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(38,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(39,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(40,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(41,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(42,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(43,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(44,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ag -ak -ak -ak -ag -ag -ak -ak -ak -ak -ak -ak -ag -ag -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(45,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ag -ak -ak -ak -ak -ak -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(46,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(47,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ag -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(48,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ag -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(49,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -al -al -al -al -al -ak -al -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(50,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -al -ag -al -al -al -al -al -al -al -al -al -al -al -ak -al -al -al -al -al -al -ah -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(51,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -al -ag -ag -ag -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ak -al -al -al -al -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(52,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ah -al -ag -ag -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ag -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(53,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(54,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ag -ag -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(55,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -al -ag -ag -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(56,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(57,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(58,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -al -ag -ag -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ag -ak -ak -ak -ak -ak -ag -ak -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(59,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ak -ak -ak -ak -ag -ag -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ah -al -al -al -al -al -al -al -al -al -ak -ak -ak -ak -ak -ak -ak -ak -ag -ag -ag -ag -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(60,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(61,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(62,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(63,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ak -ak -ak -ak -ak -ak -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(64,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ag -ak -ak -ak -ak -ak -ak -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ak -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(65,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ag -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ah -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ag -ak -ag -ak -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(66,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ah -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ag -ag -ag -ag -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(67,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ah -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(68,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ah -ah -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ah -al -al -al -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ag -ag -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(69,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ah -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(70,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ag -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(71,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ah -ah -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(72,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ah -ag -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ak -ak -ak -ak -ag -ag -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(73,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ag -ah -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ak -ak -ak -ak -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ah -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(74,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ag -ag -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ag -ak -ak -ak -ak -ak -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ah -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(75,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ag -ag -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ak -ak -ak -ak -ak -ak -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(76,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ah -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(77,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ah -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(78,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ah -ah -ah -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(79,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ag -ag -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(80,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ah -ah -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ak -ak -ak -ak -ak -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(81,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ah -ah -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ak -ak -ak -ak -ak -ak -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(82,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ag -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(83,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ag -ag -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(84,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ah -ah -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ah -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(85,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ah -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ak -ak -ak -ak -ak -ak -ak -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(86,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ag -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ag -ak -ak -ak -ak -ak -ak -ak -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ak -al -ak -ak -ak -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(87,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ag -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ak -ak -ak -ak -ak -ak -ak -ak -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ah -al -al -ak -ak -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(88,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ag -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ak -ak -ak -ak -ak -ak -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(89,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ag -ag -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ak -ak -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(90,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ah -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ag -ag -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(91,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ah -ah -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ah -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(92,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ah -ah -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(93,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ag -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ah -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(94,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ag -ag -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ak -ak -ak -ak -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(95,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ag -ag -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ak -ak -ak -ak -ak -ak -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(96,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ak -ak -ak -ak -ak -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(97,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ah -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(98,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ah -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ag -ak -ak -ag -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ah -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(99,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ak -ak -ag -ag -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ak -ag -ak -ak -ak -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(100,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ag -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ak -ak -ak -ag -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ag -ag -ag -ak -ak -ak -ag -ak -ak -ak -ak -ak -ak -ak -ak -ag -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(101,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ah -ag -ag -ak -ak -ak -ak -ak -ak -ak -ag -ag -ak -ak -ag -ak -ak -ag -ag -ag -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ah -al -ak -ak -ak -ag -ak -ak -ak -ak -ak -ak -ak -ag -ag -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(102,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ah -ag -ag -ak -ak -ak -ak -ak -ak -ag -ag -ak -ak -ak -ak -ak -ag -ag -ag -ag -ah -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ag -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(103,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ah -ah -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ag -ag -ag -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ak -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(104,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ag -ag -ag -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(105,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ag -ag -ag -ak -ak -ak -ak -ag -ak -ak -ak -ag -ak -ag -ag -ag -ag -ag -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(106,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ag -ag -ag -ak -ak -ak -ag -ak -ak -ag -ag -ak -ak -ak -ag -ag -ag -ag -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(107,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ag -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ag -ag -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(108,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ah -ah -ag -ag -ag -ag -ak -ag -ag -ag -ag -ag -ak -ak -ak -ak -ak -ag -ag -ag -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(109,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ah -ah -ah -ag -ag -ak -ak -ak -ak -ak -ag -ak -ak -ak -ak -ak -ag -ag -ah -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ak -ak -ak -ak -ak -ak -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(110,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ah -ah -ah -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ag -ag -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ag -ag -ag -ag -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ag -ag -ag -ag -ag -ag -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(111,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ah -ah -ah -ag -ag -ak -ak -ak -ak -ak -ak -ag -ag -ag -ak -ag -ag -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ag -ag -ag -ag -ag -ag -al -al -al -al -al -al -al -al -al -al -al -al -al -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ag -aS -aS -aS -aS -bq -bq -aP -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(112,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ag -ak -ak -ak -ag -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ag -ag -ag -ag -ag -ag -al -al -al -al -al -al -al -al -al -al -al -al -ak -ak -ak -ak -ak -ak -ak -ag -ak -ak -ak -ak -ak -ag -aS -aY -bh -aS -br -bC -bq -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(113,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ag -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ag -ag -ag -ag -al -ag -al -al -al -al -al -al -al -al -al -ak -al -ak -ak -ak -ak -ak -ak -ag -ak -ak -ak -ak -ak -ak -aS -aZ -bi -bo -bs -bD -bq -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(114,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ag -ag -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ag -al -ag -ag -ag -ag -ag -ag -ag -ag -ag -ag -al -al -al -al -al -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ak -ak -ak -ak -ag -aS -ba -bj -aS -bt -bE -bq -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(115,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ag -ag -ag -ag -ag -ak -ak -ak -ag -ag -ag -ak -ak -ak -ak -ag -ag -ah -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ag -ag -ag -ag -ag -ag -ag -ag -ag -ag -ag -ag -ag -al -al -al -al -al -ak -ak -ak -ak -ak -ak -ak -ak -ag -ak -ag -ak -ag -aP -aS -aS -aS -aS -bu -bF -bq -ag -ak -ak -ak -ak -ak -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(116,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ag -ag -ag -ag -ag -ag -ak -ag -ag -ag -ag -ak -ak -ak -ag -ag -ag -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ag -ag -ag -al -al -ag -ag -ag -ag -ag -ag -ag -ag -al -al -al -al -al -ak -ak -ak -ak -ak -ak -ag -ag -ag -ag -ag -ag -ag -aP -aT -bb -bk -aP -bv -bE -bq -ag -ak -ak -ak -ak -ag -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(117,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ag -ag -ag -ag -ak -ak -ak -ak -ag -ag -ag -ag -ak -ag -ag -ag -ag -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ag -ag -ag -al -al -al -ag -ag -ag -ag -al -al -ag -ag -ag -al -al -al -al -ak -ak -ak -ak -ak -ag -ag -ag -ag -ag -ag -ag -ag -aP -aU -bc -bl -aP -br -bE -bq -ak -ak -ak -ak -ak -ak -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(118,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ag -ag -ag -ak -ak -ak -ak -ak -ag -ag -ag -ag -ak -ak -ag -ag -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ag -ag -ag -al -al -ag -ag -ag -ag -al -al -al -ag -ag -ag -al -al -al -al -al -ak -ak -ak -ag -ag -ag -ag -ag -ag -ag -ag -ag -aP -aV -bd -bm -bp -bw -bG -bq -ag -ak -ak -ak -ak -ak -ag -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(119,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ag -ag -ag -ak -ak -ak -ak -ak -ag -ag -ag -ak -ak -ak -ak -ag -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ag -al -al -al -al -ag -ag -ag -al -al -ah -al -al -ag -ag -ag -al -al -ag -ag -ak -ak -ak -ag -ag -ag -ag -ag -ag -ag -ag -ag -aP -aW -be -bn -aP -bx -bE -bq -ag -ak -ak -ak -ak -ak -ag -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(120,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ag -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ag -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ag -ag -ag -ag -ag -al -al -al -al -al -ag -ag -ag -ag -al -ag -ag -ag -ak -ak -ak -ag -ag -ag -ag -ag -ag -ag -ag -aP -aX -bf -bf -aP -by -bH -bq -ag -ak -ak -ak -ak -ak -ag -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(121,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ag -ag -ag -ag -ag -ak -ak -ak -ak -ag -ag -ak -ak -ak -ak -ak -ag -ag -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ag -ag -ag -ag -ag -ag -al -al -al -al -al -al -ag -ag -ag -al -ag -ag -ag -ak -ak -ak -ag -ag -ag -ag -aB -ag -ag -ag -aP -aP -aP -aP -aP -bz -bE -bq -ag -ak -ak -ak -ak -ak -ak -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(122,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ag -ag -ag -ag -ag -ag -ak -ag -ag -ag -ag -ag -ak -ak -ak -ag -ag -ag -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ag -ag -ag -ag -ag -ag -al -al -al -al -al -al -ag -ag -ag -ag -ag -ag -ag -ag -ak -ak -ak -ag -ag -av -aC -ap -ag -ag -ag -ag -ag -ag -bq -bA -bE -bq -ak -ak -ak -ak -ak -ak -ak -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(123,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ah -ah -ag -ag -ag -ak -ak -ak -ak -ag -ag -ag -ak -ak -ak -ak -ag -ag -ah -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ag -ag -ag -ag -al -al -al -al -al -ag -ag -ag -ag -ag -ag -ag -ag -ak -ak -ak -ak -ag -ap -ax -ap -ag -ak -ak -ak -ak -ag -bq -bv -bE -bq -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(124,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ah -ah -ag -ag -ag -ak -ak -ak -ak -ak -ag -ag -ag -ag -ag -ak -ag -ag -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ah -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ag -ag -ag -ag -al -al -al -al -al -ag -ag -ag -al -al -ag -ag -ag -ag -ak -ak -ak -ap -ap -aC -ap -ap -ag -ak -ak -ak -ag -bq -bB -bE -bq -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(125,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ah -ah -ah -ag -ag -ag -ak -ak -ak -ak -ak -ag -ak -ak -ak -ak -ak -ag -ag -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ag -ag -ag -ag -ag -ag -ag -al -ag -ag -ag -ag -al -al -ag -ag -ag -ag -ag -ag -ao -ap -aw -az -aH -ap -ao -ao -ap -ap -ap -ap -ax -bI -ap -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(126,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ah -ah -ah -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ag -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ag -ag -ag -ag -ag -ag -ag -ag -ag -ag -ag -ag -ag -ag -al -al -al -ag -ag -ag -ag -ag -ao -ar -ax -aD -ax -aK -aM -aQ -ax -ax -ax -ax -ax -bI -ap -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(127,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ag -ag -ag -ag -ag -ag -ag -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ag -ag -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ag -ag -ag -ag -ag -al -al -al -ag -ag -ag -ag -ag -ag -ag -al -al -al -al -al -ag -ag -ag -ag -ap -as -ax -aE -aI -aL -aN -aR -aR -bg -aR -aR -aR -bJ -ap -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(128,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ag -ag -ag -ag -ag -ag -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ag -ag -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ag -ag -ag -ag -ag -al -al -al -al -ag -ag -ag -ag -ag -ag -al -al -al -al -al -ag -ag -ag -ag -ao -ap -ay -ap -ao -ao -aO -ao -ap -ap -ap -ap -ap -ap -ao -ag -ak -ak -ak -ak -ak -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(129,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ag -ag -ag -ag -ag -ag -ag -ag -ak -ak -ak -ak -ag -ak -ak -ak -ak -ak -ak -ag -ag -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ah -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ag -ag -ag -ag -al -ag -al -al -al -al -ag -ag -al -al -ag -ag -al -al -al -al -al -ag -ag -ag -ag -ao -at -az -aF -ao -ao -ao -ao -ag -ak -ak -ag -ag -ag -ag -ag -ak -ak -ak -ak -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(130,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ac -ac -ag -ag -ag -ag -ag -ag -ag -ak -ak -ag -ak -ak -ak -ag -ag -ak -ag -ag -ag -ag -ag -al -al -al -al -al -ah -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ag -ag -ag -ag -al -al -al -al -al -al -al -al -al -al -ag -ag -al -al -al -al -al -al -ag -ag -ag -ao -au -aA -aG -ao -ak -ak -ag -ag -ak -ak -ak -ak -ak -ag -ag -ak -ak -ak -ak -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(131,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ac -ac -ac -ag -ag -ag -ag -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ag -al -al -al -al -ah -ag -ag -ag -ag -ah -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ag -ag -ag -al -al -al -al -al -al -al -al -al -al -ag -ag -ag -al -al -al -al -al -al -ag -ag -ag -ao -ap -ay -ap -ao -ag -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(132,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ac -ae -ac -ac -ag -ag -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ag -al -al -al -al -ag -ag -ag -ag -ag -ag -ah -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ag -ag -ag -al -al -al -al -al -al -al -al -al -al -ag -ag -al -al -al -al -al -al -al -al -ag -ag -aq -ag -ag -ag -aq -ag -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ag -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(133,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ac -ac -ac -ac -ag -ag -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ag -ag -ah -al -ah -ag -ag -ag -ag -ag -ag -ag -ag -ag -ah -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ag -ag -al -al -al -al -al -al -al -al -al -ag -ag -ag -al -al -al -al -al -al -al -al -al -ag -ag -ag -ag -ag -ag -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(134,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ac -ac -ac -ac -ac -ag -ag -ai -ai -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ai -ai -ag -ag -ag -ag -ag -ag -ag -ag -ag -ag -ag -ag -ag -ag -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ag -ag -ag -ag -al -al -al -al -al -al -al -al -al -ag -ag -al -al -al -al -al -al -al -al -al -ag -ag -ag -ag -ag -ag -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(135,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ac -ac -ac -ac -ac -ac -ac -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -ai -ag -ag -ag -ag -ag -ag -ag -ag -ag -ag -ag -ag -ag -ag -ah -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ag -ag -ag -al -al -al -al -al -al -al -al -ag -ag -ag -ag -ag -al -al -al -al -al -al -al -ag -ag -ag -ag -ag -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(136,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ad -ac -ac -ac -ac -ac -ac -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -ag -ag -ag -ag -ag -ag -ag -ag -ag -ag -ag -ag -ag -ag -ag -ag -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ag -ag -ag -al -al -al -al -al -al -al -ag -ag -ag -ag -ag -ag -al -al -al -al -al -al -al -ag -ag -ag -ag -ag -ag -ag -ag -ak -ak -ak -ak -ag -ag -ag -ak -ak -ak -ak -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(137,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ac -ac -ac -ac -ac -ac -ac -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -ai -ag -ag -ag -ag -ag -ag -ag -ag -ag -ah -ag -ag -ag -ag -ag -ag -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -am -ag -al -al -al -al -al -al -al -al -al -ag -ag -ag -ag -ag -ag -ag -ag -al -al -al -ag -ag -ag -ag -ag -ag -ag -ag -ak -ak -ak -ak -ak -ag -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(138,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ac -ac -ac -ac -ac -ag -ag -ai -ai -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ai -ai -ag -ag -ag -ag -ag -ag -ag -ag -ag -ah -ah -ag -ag -ag -ag -ag -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -an -ag -al -al -al -al -al -al -al -ag -ag -ag -ag -ag -ag -ag -ag -ag -ag -ag -al -al -ag -ag -ag -ag -ag -ag -ag -ak -ak -ak -ak -ak -ak -ag -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(139,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ac -ac -ac -ac -ag -ag -ag -ag -ag -ak -ak -ak -ag -ak -ak -ak -ak -ak -ak -ak -ag -ag -ag -ag -ag -ag -ag -ag -ag -ag -ag -ag -al -ag -ag -ag -ag -ag -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ag -ag -ag -ag -ag -ag -ag -ag -ag -ag -ag -ag -ag -ag -ag -ag -ag -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ag -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(140,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ac -af -ac -ac -ag -ag -ag -ag -ag -ag -ak -ag -ag -ag -ak -ag -ag -ak -ak -ak -ag -ag -al -ah -ag -ag -ag -ag -ag -ag -ah -al -al -ah -ag -ag -ag -ah -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ag -ag -ag -ag -ag -ag -ag -ag -ag -ag -ag -ag -ag -ag -ag -ag -ag -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ag -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(141,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ac -ac -ac -ag -ag -ag -ag -ag -ag -ak -ak -ak -ak -ak -ak -ag -ag -ak -ak -ak -ag -ag -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ag -ag -ag -ag -ag -ag -ag -ag -ag -ak -ak -ag -ag -ag -ag -ag -ag -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(142,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ac -ac -ag -ag -ag -ah -ah -ag -ag -ak -ak -ak -ak -ak -ak -ak -ag -ak -ak -ak -ag -ag -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ag -ag -ag -ag -ag -ag -ag -ag -ag -ag -ag -ak -ak -ak -ak -ak -ag -ag -ag -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(143,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ag -ag -ag -ah -ah -ah -ag -ag -ak -ak -ak -ak -ag -ag -ak -ak -ak -ak -ag -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ag -ag -ag -ag -al -al -ag -ag -ag -ak -ak -ak -ak -ak -ak -ag -ag -ag -ag -ak -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(144,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ag -ah -ah -ah -ah -ag -ag -ak -ak -ak -ak -ag -ag -ag -ak -ak -ak -ag -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ag -ag -ag -al -ag -al -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(145,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ah -ah -ah -ag -ag -ag -ag -ak -ak -ag -ag -ag -ag -ak -ak -ak -ag -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ag -ag -ag -ag -ag -ag -al -al -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(146,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ag -ag -ag -ag -ag -ag -ak -ak -ag -ag -ag -ag -ag -ag -ag -ak -ag -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ag -ag -ag -ag -ag -al -al -al -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(147,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ag -ag -ag -ag -ag -ak -ak -ak -ak -ag -ag -ag -ak -ak -ak -ag -ag -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ag -ag -ag -ag -al -al -al -al -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ak -ak -ag -ag -ak -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(148,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ag -ag -ag -ag -ak -ak -ak -ak -ag -ag -ag -ak -ak -ak -ag -ag -ah -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ag -ag -ag -ag -al -al -al -al -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ag -ag -al -ah -ah -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(149,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ag -ag -ag -ag -ak -ak -ak -ak -ag -ag -ag -ak -ak -ak -ag -ag -ag -ag -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ag -ag -al -al -al -al -al -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ah -ah -ah -ah -ah -al -al -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(150,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ag -ag -ag -ag -ak -ak -ak -ak -ag -ag -ak -ak -ak -ak -ag -ag -ag -ag -ag -ag -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ag -ag -ak -ak -ag -ag -ak -ak -ak -ak -ak -ak -ag -ak -ag -ag -ah -ah -ah -ah -ah -ah -ah -ah -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(151,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ag -ag -ag -ag -ag -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ag -ak -ag -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ag -ah -ah -ah -ah -ah -ah -ah -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(152,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ag -ag -ag -ag -ag -ah -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ag -ag -ak -ak -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ah -ah -ah -ah -ah -ah -ah -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(153,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ag -ag -ag -ag -ak -ak -ak -ak -ak -ak -ag -ak -ak -ak -ak -ag -ag -ag -ag -ag -ag -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ag -ag -ak -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ag -ah -ah -al -ah -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(154,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ag -ag -ag -ag -ag -ag -ag -ak -ag -ag -ag -ak -ak -ag -ag -ag -ag -ag -ag -ag -ag -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ag -ak -ak -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ag -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(155,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ag -ag -ag -ag -ag -ak -ak -ak -ak -ak -ag -ag -ak -ak -ak -ag -ag -ag -ag -ag -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(156,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ag -ag -ag -ag -ag -ak -ak -ak -ak -ak -ak -ag -ak -ak -ak -ak -ak -ag -ak -ag -ag -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(157,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ah -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ah -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(158,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ah -ah -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ag -ak -ak -ag -ag -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ah -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(159,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ah -ah -ah -ag -ak -ak -ak -ak -ag -ak -ak -ak -ak -ak -ak -ag -ag -ak -ak -ag -ag -ag -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ah -ag -ak -ak -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(160,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ag -ag -ag -ak -ak -ak -ak -ak -ag -ak -ak -ak -ak -ag -ag -ak -ak -ag -ag -ag -ag -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ag -ak -ak -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(161,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ag -ag -ag -ak -ak -ak -ak -ag -ag -ag -ak -ak -ak -ag -ag -ak -ak -ak -ag -ag -ag -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ag -ak -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(162,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ag -ag -ag -ag -ak -ag -ag -ag -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ag -ag -ag -ah -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ag -ak -ak -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(163,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ag -ag -ag -ak -ak -ak -ak -ag -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ag -ag -ag -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ag -ak -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(164,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ag -ag -ag -ak -ak -ak -ak -ag -ag -ag -ag -ag -ak -ak -ak -ak -ak -ag -ak -ak -ag -ag -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ag -ak -ak -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(165,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ag -ag -ag -ak -ak -ak -ak -ak -ag -ag -ag -ag -ak -ak -ak -ak -ag -ak -ak -ag -ag -ag -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ag -ak -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(166,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ag -ah -ah -ak -ak -ak -ak -ak -ag -ag -ag -ag -ak -ak -ak -ak -ag -ak -ak -ag -ag -ag -ag -ag -ah -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ag -ak -ak -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(167,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ah -ah -ah -ak -ak -ak -ak -ak -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ag -ag -ag -ag -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ag -ag -ak -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(168,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ag -ag -ag -ag -ak -ak -ak -ak -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ag -ag -ag -ag -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ag -ak -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(169,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ag -ag -ag -ak -ak -ak -ak -ak -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ag -ag -ag -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ag -ak -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(170,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ak -ak -ak -ag -ag -ag -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ah -al -al -al -al -al -al -al -al -al -al -al -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(171,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ag -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ak -ak -ag -ag -ag -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(172,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ag -ag -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ag -ag -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(173,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ah -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(174,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ag -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ag -ag -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(175,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ag -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ah -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(176,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ag -ah -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ah -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(177,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ah -ah -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ak -ak -ak -ag -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(178,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ah -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ak -ak -ak -ag -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(179,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ag -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ak -ak -ak -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ag -al -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(180,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ag -ag -al -ah -ag -ag -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(181,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ah -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ag -ag -ak -ak -ak -ak -ak -ag -ag -ag -ag -ag -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(182,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ag -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(183,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ah -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ag -ak -ak -ak -ak -al -ag -ak -ak -ak -ak -ak -ak -ak -ak -ag -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ag -ag -ak -al -ak -ak -ak -ak -ak -ak -ak -ak -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(184,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ah -ah -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ag -ag -ag -ak -ak -ak -ag -ag -al -al -al -al -ag -ag -ak -ak -ak -ak -ak -ag -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(185,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ag -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ak -ak -ak -al -al -al -al -al -al -al -al -al -al -ah -al -ag -ag -ag -ak -ak -ak -ak -ag -ag -al -al -al -al -al -al -al -ag -ag -ag -ak -ak -ak -ag -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(186,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ak -ak -ak -al -al -al -al -al -al -al -al -al -al -ag -ag -ak -ak -ak -ak -ak -ag -ag -al -al -al -al -al -al -al -al -al -al -ag -ag -ak -ak -ak -ag -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ah -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(187,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -al -al -al -al -al -al -al -al -al -ak -ak -ak -ak -ak -ak -ak -ag -ag -al -al -al -ah -al -al -al -al -al -al -al -al -al -ag -ak -ak -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(188,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ag -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -al -al -al -al -al -al -ag -ag -ak -ak -ag -ag -ag -al -al -al -al -al -al -ag -al -al -al -al -al -ah -ah -al -al -al -ag -ak -ak -ag -ag -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(189,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -al -al -al -al -ag -ag -ak -ak -ag -al -al -al -al -al -ag -ag -ak -ak -ak -ak -ag -ag -al -al -al -al -al -al -al -al -ak -ak -ag -ag -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(190,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ah -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -al -al -al -al -ak -ag -ak -ak -ag -ag -ak -ak -ag -ag -al -ak -ak -ak -ak -al -ag -ag -ag -ak -ak -ag -ag -ag -ak -ag -ak -ak -ak -ak -ak -ak -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(191,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ah -ag -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(192,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ag -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ag -al -ak -ak -ak -ak -ak -ak -ak -ak -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(193,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ag -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ah -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(194,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -al -ah -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ak -ak -ak -ak -ak -ak -ak -ak -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(195,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ag -ah -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ah -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(196,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ag -ah -ah -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ag -ag -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -al -al -al -al -ag -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(197,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ag -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ag -ag -ag -ag -ag -ak -ak -ag -ag -ak -ak -ak -ak -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -al -ak -ag -ag -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(198,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ag -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ak -ak -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ag -ak -ag -ak -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(199,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ag -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ag -ag -ag -ag -ag -ag -ak -ak -ak -ak -ak -ag -ag -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ag -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(200,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ah -ag -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ag -ak -ag -ag -ag -ag -ak -ak -ak -ak -ak -ag -ag -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(201,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ah -ag -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ag -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ag -ag -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ag -ag -al -al -al -al -ah -al -al -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(202,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ag -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ag -ag -ak -ak -ag -ak -ak -ak -ak -ak -ag -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ag -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(203,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ah -ah -ah -ah -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ak -ag -ak -ak -ak -ak -ak -ak -ak -ak -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -al -ah -ag -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(204,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ah -ah -ah -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -al -ak -ag -ag -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ah -al -al -al -al -ah -al -ak -ak -ak -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(205,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ak -ag -ag -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ag -al -al -al -al -al -ak -ak -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ak -ak -ak -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ak -ag -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(206,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ag -ak -ak -ak -ak -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -al -ak -ak -al -al -al -al -al -al -al -al -al -al -al -ak -al -ag -al -ak -ak -ag -ag -ag -ag -ak -ak -ak -ak -ag -ag -ag -ak -ak -ak -ak -ak -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(207,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ag -ag -ak -ak -ak -ak -ak -ak -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -al -al -al -ag -al -al -al -al -al -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(208,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(209,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(210,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ag -ag -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(211,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ag -ag -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ag -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ag -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(212,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ag -ak -ak -ak -ak -ag -ag -ag -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(213,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ag -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ag -ag -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(214,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(215,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(216,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(217,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(218,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(219,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(220,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(221,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(222,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(223,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(224,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(225,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(226,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(227,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(228,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(229,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(230,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(231,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(232,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(233,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(234,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(235,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(236,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(237,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(238,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(239,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(240,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(241,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(242,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(243,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(244,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(245,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(246,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(247,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(248,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(249,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(250,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(251,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(252,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(253,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(254,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(255,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} diff --git a/_maps/map_files/MiniStation/z5.dmm b/_maps/map_files/MiniStation/z5.dmm index 78d40228f5..3797247c75 100644 --- a/_maps/map_files/MiniStation/z5.dmm +++ b/_maps/map_files/MiniStation/z5.dmm @@ -1,9 +1,9 @@ "a" = (/turf/open/space,/area/space) -"b" = (/turf/closed/mineral/random/low_chance,/area/mine/unexplored) -"c" = (/turf/closed/mineral/random,/area/mine/unexplored) -"d" = (/turf/closed/mineral/random/high_chance,/area/mine/unexplored) -"e" = (/turf/closed/mineral,/area/mine/unexplored) -"f" = (/obj/effect/spawner/lootdrop/crate_spawner,/turf/open/floor/plating/asteroid/airless/cave,/area/mine/unexplored) +"b" = (/turf/closed/mineral/random/low_chance,/area/space) +"c" = (/turf/closed/mineral/random/high_chance,/area/space) +"d" = (/turf/closed/mineral,/area/space) +"e" = (/turf/closed/mineral/random,/area/space) +"f" = (/turf/open/floor/plating/asteroid/airless/cave,/area/space) (1,1,1) = {" aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa @@ -56,7 +56,7 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabccbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa @@ -64,7 +64,7 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabccbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa @@ -73,157 +73,157 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabcbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbaaaaaaaaaaaaaabbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabccccccbaaaaaaaaaaaaaabcbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaccaaaaaaaaaaaaaaaaaaaaaabbcccccccbaaaaaaaaaaaaaabcbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabcaaaaaaaaaaaaaaaaaaaaaabbcccccccbabbbaaaaaaaaabccbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabcaaaaaaaaaaaaaaaaaaaaaaaabccdccccbcccbaaaaaaaabcbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbaaaaaaaaaaaaaaaaaaaaaaaabcccccccbbccbaaaaaaaabbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabccccccbbabbbaaaaaaaabbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabcccbbbbabaaaaaaaaaaaabbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaabccbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbaaaaaaaaaaaaaabbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbaaaaaaaaaaaaaabbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbabbbaaaaaaaaabbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbaaaaaaaaaaaaaaaaaaaaaaaabbbcbbbbbbbbbaaaaaaaabbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbaaaaaaaabbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbabbbaaaaaaaabbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbabaaaaaaaaaaaabbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaabbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaabbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbaaaaaaaaabbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbcaaaaaaaaaabccbaaaaaaaaabccccbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabccaaaaaaaaaabbbbaaaaaaaaabccccbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabcccccbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabcccccccbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaaaaaaaaaaaabcccddccbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaabcccddcbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabccccccccbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbcccbaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabccccccccbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabccdcbaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbccccccbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabccccbaaaaaaaaaaacccccccccccaaaaaaaaaaaaaaaaabbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbaaaaaaaaaaacccccccccdcaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaccccdcccccccaaaaaaaabbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacccccccdccccaaaaaaaabccbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbaaaabbbaaaaaaaaaaaaaaaaaaaaacccdcdccccdcaaaaaaaabccbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabccccccccccbbbbccbaaaaaaaaaaaaaaaaaaaaccdccccccccccaaaaaaaabccbaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaabcbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbaaaaaaaaaaaaaaaaaaaaabcccccccccccccdcccbaaaaaaaaaaaaaaaaaaaacccccccdcaaaaaaaaaaaabbbbaaaaabbaaabcaaaaaaaaaaaaaaaaaaaabbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabcdbaaaaaaaaaaaaaaaaaaaabccccccccccccccbcccbaaaaaaaaaaaaaaaaaaaacccccccccaaaaaaaaaaabbaaaaaaaaccbaabbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbaaaaaaaaaaaaaaaaaaaabcccccccccdcccbabbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbccccccbcccbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabccccbabccbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbaaaaaaaaaabbbbaaaaaaaaabbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbaaaaaaaaaabbbbaaaaaaaaabbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaaaaaaaaaaaabbbbccbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaaaaaaaaaaaabbbbccbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbcbbaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbaaaaaaaaaaabbbbbbbbbbbaaaaaaaaaaaaaaaaabbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbaaaaaaaaaaabbbbbbbbbcbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbcbbbbbbbaaaaaaaabbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbcbbbbaaaaaaaabbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbaaaabbbaaaaaaaaaaaaaaaaaaaaabbbcbcbbbbcbaaaaaaaabbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaabbcbbbbbbbbbbaaaaaaaabbbbaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaabbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbcbbbbaaaaaaaaaaaaaaaaaaaabbbbbbbcbaaaaaaaaaaaabbbbaaaaabbaaabbaaaaaaaaaaaaaaaaaaaabbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbcbaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaabbbbbbbbbaaaaaaaaaaabbaaaaaaaabbbaabbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbaaaaaaaaaaaaaaaaaaaabbbbbbbbbbcbbbbabbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbabbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbabbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabccbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabcbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabcccbbbbbbaaaaaaaaaaaaaaaaaaaaaaaabccccbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabcaaaaaaaaaaaaaaaaaaaaaaaabbbbcccbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabccccccccbaaaaaaaaaaaaaaaaaaaaaaaabccccccccccccbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbaaaaaaaaaaaaaaaaaaaaaaaabcccccccbbbbbbbbbbaaaaaaaaddaaaaaaaaaaaaaaaaaaabcccccccccbbaaaaaaaaaaaaaaaaaaaaabccccccccccccccbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabcccccccccccccccccbbbaaaaaaaaaaaaaaaaaaaaabbaaabccccccccccbaaaaaaaaaaaaaaaaaaaaabccccccccccccccbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabcccccccccccccccccccbaaaaaaaaaaaaaaaaaaaaabbaaabcccccccccbbaaaaaaaaaaaaaaaaaaaaabcccccccccccccccbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabccccdccccccccdcccccbaaaaaaaaaaabbbbaaaaaabbaaabccccccccbaaaaaaaaaaaaaaaaaaaaaaabbbcccccccccccccbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabccccccccccccccccccbaaaaaaaaaaabccbaaaaaaaaaaabbbcccccccbbaaaaaaaaaaaaaaaaaaaaaaaabcccccdccccccbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbcccccccccccccbccbbaaaaaaaaaaabccbaaaaaaaaaaaaaabbbbbbbcbaaaaaabbaaaaaaaaaaaaaaaabcccccdccccccbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabcccccccccccbabbaaaaaaaaaaaabcccbaaaaaaaaaaaaaaaaaaaabbbaaaaaacbaaaaaaaaaaaaaaaabcccccdccccccbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbccccccccbabbaaaaaaaaaaaabcbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaacbaaaaaaaaaaaaaaaabcccccccccccccbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaabcccccccbabbaaaaaaaaaaaabbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabccbcccccccccccbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaabbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbabccccccccccbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbaaaaaaaaaaaaaaabcccccccccbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabcccbaaaaaaaaaaaaaaabbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabcccbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbaaaaaaaaccaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaabbaaabbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaabbaaabbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbcbbbbbbbbcbbbbbbaaaaaaaaaaabbbbaaaaaabbaaabbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbaaaaaaaaaaabbbbaaaaaaaaaaabbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaabbbbbbcbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaabbbbaaaaaaaaaaaaaabbbbbbbbbaaaaaabbaaaaaaaaaaaaaaaabbbbbbcbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbabbaaaaaaaaaaaabbbbbaaaaaaaaaaaaaaaaaaaabbbaaaaaabbaaaaaaaaaaaaaaaabbbbbbcbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbabbaaaaaaaaaaaabbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaabbbbbbbbbabbaaaaaaaaaaaabbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaabbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbabbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbaaaaaaaaaaaaaaabbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbaaaaaaaaaaaaaaabbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbaaaaaaaaaaaabbaaaaaaaaaaaabbbbbabbbbbaaaaaaaabbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabcbaaaaaaaaaaaaaaaaaaaaaaaaabcccccbccccbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbaaaaaaaaaaaaaaaaaaaaaaabbccccccccccccbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabccccccccccccccccccbaabbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabccccccccccccccccccccbbbcbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabccccccccdccccccccccccccbbaaaaaaaaaaaabbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbaaaaaaaaaaaaaaaabbbaaaaaaaaaaaaaaaaaabcccccccccccccccccccbbbbaaaaaaaaaaaabbccccccccccbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabcbaaaaaaaaaaaabbbabcbabbbbbaaaaaaaaaaaabccccccccccccccccbbbaaaaaaaaaaaaaaaabccccccccccccccbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbaaaaaaaaaaaabccbcccbccccbaaaaaaaaaaaabcccccccccccccccbaaaaaaaaaaaaaaaaaaabccccccccccdccccbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabcccccccccccbaaaaaaaaaaaaabcccccccdccccccbaaaaaaaaaaaaaaaaaaabcccccdcccccccccccbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabcccdcccccdcbaaaaaaaaaaaaabbcccccccccccbbbaaaaaaaaaaaaaaaaaabccccccccccccccccccbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabccccccccccccbbaaaaaaaaaaaaabbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaabccccccccccccccccccbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbaaaaaaaaaaaabbccccccccccccbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbcccccccccccccccbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabccbaaaaaaaaaaaaaabccccccccbcbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabcccccccccccccbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabccbaaaaaaaaaaaaaabcccccccbabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbaaaaaaaaaaaaaabbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbaaaaaaaaaaaaaaabbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabcccbaaaaaabbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbaabbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbcbbbbbbbbbbbbbbbbaaaaaaaaaaaabbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbaaaaaaaaaaaaaaaabbbaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaabbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbaaaaaaaaaaaabbbabbbabbbbbaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbaaaaaaaaaaaabbbbbbbbbbbbbaaaaaaaaaaaabbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaabbbbbbbbbbbcbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbaaaaaaaaaaaaabbbbbbbbcbbbbbbbaaaaaaaaaaaaaaaaaaabbbbbbcbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbcbbbbbcbbaaaaaaaaaaaaabbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbaaaaaaaaaaaaabbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbaaaaaaaaaaaabbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbaaaaaaaaaaaaaabbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbaaaaaaaaaaaaaabbbbbbbbbabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbaaaaaaaaaaaaaabbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbaaaaaaaaaaaaaaabbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbaaaaaabbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbaaaaaaaaaaaaaaaaabbbbbaaaaaabbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabccccbbbaaaaaaaaaaaaaaaaaaaaaaabbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabcccccccbaaaaaaaaaaaaaaaaaaaaaaabcbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabcccccccbaabbbbbaaaaaaaaaaaaaaaabbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbaaaaaaaabcccccccbaabccccbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabcbaaaaaaaabccccccccbbccccccbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbaaaaaaabccccccccdcccccccccbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabccdcccccccccccccccbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabccccccccccccccccccbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbcccccccccccdcccccbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabccccccccccbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbcccbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeeaeeeeeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaeaaaeeeeeeeeaaeeeeeeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbccccbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeeeeeeeeeeeeeeeeeeeeeeeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabcccccbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeeeeeeeeeeeeeeeeeeeeeeeeeeeeeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabcccdcbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeeeeeecceeeeeeeeeeeeeeeeeeeeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabcccccbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeeeeccccdccccccccccdccccceeeeeeeeeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbccccbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeeeeccccccccccccccccccccceeeeeeeeeeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaababbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeecdccccccccccccccccccceeeeeeeeeeeeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeecccccccccccccccccccccccccccceeeeeeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeeeccccccccccccccccccccccccdccceeeeeeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeeeecccccccccccccccccccccccccccccccceeeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeeeeecccccccccccccccccccccccccccccccceeeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeeeeecccccdcccccccccccccccccccccccccceeeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeeeeeecccccccccccccccccccccccccccccccceeeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeeeeeeeeeecccccccccccccccccccccccccccceeeeeeeeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeeeeeeeeeeeecccccccccccccccccccccccccccceeeeeeeeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeeeeeeeeeeeeeeeeeeeeeeeeeccccccccccccccccccfcccccccceeeeeeeeeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeeeeeeeeeeeeeeeeeeeeeeecccccccccccccccdccccccccccccceeeeeeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeeeeeeeeeeeeeeeeccccccccccccccccccccccccccccccccccccceeeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeeeeeeeeecccccccccccccccccccccccccccccccccccccccccccceeeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeeeeeeeeeecccccccccccccccccccdcccccccccccccccccccccccceeeaaaeeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeeeeeeeecccccccdcccccccccccccccccccccccccccccccccccccceeeeeeeeeeeeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeeeeeecccccccccccccccccccccccccccccccccccccccccccccccceeeeeeeeeeeeeaaeeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeeeeeecccccccccccccccccccccccccccccccccccccccccccccccceeeeeeeeeeeeeaeeeeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeeeeeeecccccccccccccccccccccccccccccccccccccccccccccccccceeeeeeeeeeeaeeeeeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeeeeeeccccccccccccccccccccccccccccccccccccccccccccccccccceeeeeeeeeeeaeeeeeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeeeeeeccccccccccccccccccccccccccccccccccccccccccccccccccccceeeeeeeeeaeeeeeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeeeeeecccccccccccccccccccccccccccccccccccccccccccccccccccccccccceeeeaeeeeeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeeeeeccccccccccccccccfcccccccccccccccccccccccccccccccccccccccccceeeaeeeeeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeeeeeccccccccccccccccccccccccccccccccccccccccccccccccccccccccccceeeaeeeeeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeeeeccccccccccccccccccccccccccccccccccccccccccccccccccccccccccceeeeaeeeeeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeeeecccccccccccccccccccccccccccccccccccccccccccccccccdccccccccceeeeaeeeeeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeeeecccccccdccccccccccccccccccccccccccccccccccccccccccccccccccceeeeaeeeeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeeeeccccccccccccccccccccccccccccccccccccccccccfcccccccccccccccceeeaaaeeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeeeeccccccccccccccccccccccccccccccccccccccccccccccccccccccccccceeeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeeeeccccccccccccccccccccccccccccccccccccccccccccccccccccccccccceeeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeeeeccccccccccccccccccccccccccccccccccccccccccccccccccccccccccceeeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeeeeccccccccccccccccccccccccccccccccccccccccccccccccccccccccccceeeeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeeeecccccccccccccccccccccccdccccccccccccccccccccccccccccccccccceeeeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeeeeeecccccccccccccccccccccccccccccccccccccccccccccccccccdccccceeeeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeeeeeeecccccccccccccccccccccccccccccccccccccccccccccccccccccccceeeeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeeeeeeecccccccccccccccccccccccccccccccccccccccccccccccccccccccceeeeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeeeeeeeeeeeecccccccccccccccccccccccccccccccccccccccccccccccccceeeeeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeeeeeeeeeeecccccccccccccccccccccccccccccccccccccccccccccccccceeeeeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeeeeeeeeeeecccccccccccccccccccccccccccccccccccccccccccccccccceeeeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeeeeeeeecccccccccccccccccccccccccccccccccccccccccccccccccceeeeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeeeeeeeecccccccccccccccccccfcccccccccccccccccccccdcccccccceeeeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeeeeeeeecccccccccccccccccccccccccccccccccccccccccccccccccceeeeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeeeeeeecccccccccccccccccccccccccccccccccccccccccccccccceeeeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeeeeeeeeeeecccccccccccccccccccccccccccccccccccccccccccceeeeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeeeeeeeeeecccccccccccccccccccccccccccccccccccccccccccceeeeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeeeeecccccccccccccccccccccccccccccccccccccccccccceeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeeeeecccccccccccccccccccccccccccccccccccccccccccceeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeeeccccccccccccccccccccccccccccccccccccccccccccceeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeeeeeeecccccccccccccccccccccccccccccccccccccccceeeeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeeeeeecccccccccccccccccccccccccccccccccccccccceeeeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeeeeeeccccccccccccccccccccccccccccccccccccccceeeeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeeeeeeeeeeecccccccccccccccccccccccccccccccccceeeeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeeeeeeeeeeeecccccccccccccccccccccccccccccccceeeeeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeeeeeeeeeeeecccccccccccccccccccccccccccccccceeeeeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeeeeeeeeeeeecccccccccccccccccccccccccccccccceeeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeeeeeeeeeeeecccccccccccccccccccccccceeeeeeeeeeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeeeeeeeeeeeeeeeeecccccccccccccceeeeeeeeeeeeeeeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeeeeeeeeeeeeeeeeeeeeeeeeeeeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeeeeeeeeeeeeeeeeeeeeeeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeeeeeeeeeeeeeeeeeeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbaaaaaaaaaaaaaaaaaaaaaaabbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaabbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbaabbbbbaaaaaaaaaaaaaaaabbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbaaaaaaaabbbbbbbbbaabbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbaaaaaaaabbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbaaaaaaabbbbbbbbbcbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbcbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbcbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaddadddddaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadadaaaddddddddaaddddddaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadddddddddddddddddddddddaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadddddddddddddddddddddddddddddaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbcbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaddddddeeddddddddddddddddddddaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaddddeeeeceeeeeeeeeeceeeeedddddddddaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaddddeeeeeeeeeeeeeeeeeeeeeddddddddddaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaababbbbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaddeceeeeeeeeeeeeeeeeeeeddddddddddddaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaddeeeeeeeeeeeeeeeeeeeeeeeeeeeeddddddaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadddeeeeeeeeeeeeeeeeeeeeeeeeceeeddddddaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaddddeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeedddaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadddddeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeedddaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadddddeeeeeceeeeeeeeeeeeeeeeeeeeeeeeeedddaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaddddddeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeedddaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaddddddddddeeeeeeeeeeeeeeeeeeeeeeeeeeeeddddddddaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaddddddddddddeeeeeeeeeeeeeeeeeeeeeeeeeeeeddddddddaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadddddddddddddddddddddddddeeeeeeeeeeeeeeeeeefeeeeeeeedddddddddaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadddddddddddddddddddddddeeeeeeeeeeeeeeeceeeeeeeeeeeeeddddddaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaddddddddddddddddeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeedddaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadddddddddeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeedddaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaddddddddddeeeeeeeeeeeeeeeeeeeceeeeeeeeeeeeeeeeeeeeeeeedddaaaddaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaddddddddeeeeeeeceeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeddddddddddddaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaddddddeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeedddddddddddddaaddaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaddddddeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeedddddddddddddaddddaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadddddddeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeedddddddddddadddddaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaddddddeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeedddddddddddadddddaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaddddddeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeedddddddddadddddaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaddddddeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeddddadddddaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadddddeeeeeeeeeeeeeeeefeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeedddadddddaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadddddeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeedddadddddaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaddddeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeddddadddddaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaddddeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeceeeeeeeeeddddadddddaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaddddeeeeeeeceeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeddddaddddaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaddddeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeedddaaaddaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaddddeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeedddaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaddddeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeedddaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaddddeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeedddaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaddddeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeddddaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaddddeeeeeeeeeeeeeeeeeeeeeeeceeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeddddaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaddddddeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeceeeeeddddaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadddddddeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeddddaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadddddddeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeddddaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaddddddddddddeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeedddddaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadddddddddddeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeedddddaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadddddddddddeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeddddaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaddddddddeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeddddaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaddddddddeeeeeeeeeeeeeeeeeeefeeeeeeeeeeeeeeeeeeeeeceeeeeeeeddddaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaddddddddeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeddddaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadddddddeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeddddaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadddddddddddeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeddddaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaddddddddddeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeddddaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadddddeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeddaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadddddeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeddaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadddeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeddaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadddddddeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeddddaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaddddddeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeddddaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaddddddeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeddddaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadddddddddddeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeddddaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaddddddddddddeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeedddddaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaddddddddddddeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeedddddaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaddddddddddddeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeedddaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaddddddddddddeeeeeeeeeeeeeeeeeeeeeeeeddddddddddaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadddddddddddddddddeeeeeeeeeeeeeedddddddddddddddaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadddddddddddddddddddddddddddddddddddaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadddddddddddddddddddddddddddaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaddddddddddddddddddddddaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaddddddddddddddddddaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa diff --git a/_maps/map_files/PubbyStation/EDITING_README.txt b/_maps/map_files/PubbyStation/EDITING_README.txt deleted file mode 100644 index a97e77f994..0000000000 --- a/_maps/map_files/PubbyStation/EDITING_README.txt +++ /dev/null @@ -1,4 +0,0 @@ -Before opening PubbyStation.dme in DreamMaker, you have to tick all the -.dm files in this folder first. Otherwise you will get path errors. - -Do not commit these changes to tgstation.dme. diff --git a/_maps/map_files/PubbyStation/PubbyStation.dmm b/_maps/map_files/PubbyStation/PubbyStation.dmm deleted file mode 100644 index e8351ddc52..0000000000 --- a/_maps/map_files/PubbyStation/PubbyStation.dmm +++ /dev/null @@ -1,120186 +0,0 @@ -//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE -"aaa" = ( -/turf/open/space, -/area/space) -"aab" = ( -/obj/effect/landmark{ - name = "carpspawn" - }, -/turf/open/space, -/area/space) -"aac" = ( -/obj/structure/lattice, -/obj/structure/grille, -/turf/open/space, -/area/space) -"aad" = ( -/obj/structure/lattice, -/turf/open/space, -/area/space) -"aae" = ( -/obj/structure/lattice, -/obj/machinery/camera/motion{ - c_tag = "MiniSat External Fore"; - dir = 1; - network = list("MiniSat") - }, -/turf/open/space, -/area/space) -"aaf" = ( -/turf/closed/wall/r_wall, -/area/wreck/ai) -"aag" = ( -/turf/open/floor/plasteel/warnwhite/corner, -/area/wreck/ai) -"aah" = ( -/turf/open/floor/plasteel/warnwhite, -/area/wreck/ai) -"aai" = ( -/turf/open/floor/plasteel/warnwhite/corner{ - dir = 1 - }, -/area/wreck/ai) -"aaj" = ( -/turf/open/floor/plasteel/white, -/area/wreck/ai) -"aak" = ( -/turf/open/floor/plasteel/warnwhite{ - dir = 4 - }, -/area/wreck/ai) -"aal" = ( -/obj/machinery/porta_turret/ai{ - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/wreck/ai) -"aam" = ( -/turf/open/floor/bluegrid, -/area/wreck/ai) -"aan" = ( -/obj/machinery/camera/motion{ - c_tag = "MiniSat AI Chamber North"; - dir = 1; - network = list("MiniSat") - }, -/obj/machinery/light, -/obj/machinery/flasher{ - id = "AI"; - pixel_x = 0; - pixel_y = -24 - }, -/turf/open/floor/bluegrid, -/area/wreck/ai) -"aao" = ( -/turf/open/floor/plasteel/warnwhite{ - dir = 8 - }, -/area/wreck/ai) -"aap" = ( -/turf/open/floor/plasteel/warnwhite/corner{ - dir = 8 - }, -/area/wreck/ai) -"aaq" = ( -/turf/open/floor/plasteel/warnwhite/corner{ - dir = 4; - heat_capacity = 1e+006 - }, -/area/wreck/ai) -"aar" = ( -/turf/open/space, -/obj/machinery/porta_turret/syndicate{ - dir = 9 - }, -/turf/closed/wall/mineral/plastitanium{ - dir = 8; - icon_state = "diagonalWall3" - }, -/area/shuttle/syndicate) -"aas" = ( -/turf/closed/wall/mineral/plastitanium, -/area/shuttle/syndicate) -"aat" = ( -/obj/structure/grille, -/obj/machinery/door/poddoor/shutters{ - id = "syndieshutters"; - name = "blast shutters" - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/shuttle/syndicate) -"aau" = ( -/turf/open/space, -/obj/machinery/porta_turret/syndicate{ - dir = 5 - }, -/turf/closed/wall/mineral/plastitanium{ - dir = 1; - icon_state = "diagonalWall3" - }, -/area/shuttle/syndicate) -"aav" = ( -/obj/docking_port/stationary{ - dheight = 9; - dir = 2; - dwidth = 5; - height = 24; - id = "syndicate_n"; - name = "north of station"; - turf_type = /turf/open/space; - width = 18 - }, -/turf/open/space, -/area/space) -"aaw" = ( -/obj/structure/table, -/obj/machinery/microwave, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/syndicate) -"aax" = ( -/turf/open/floor/mineral/plastitanium, -/area/shuttle/syndicate) -"aay" = ( -/obj/structure/table, -/obj/item/device/flashlight/lamp{ - pixel_x = 4; - pixel_y = 1 - }, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/syndicate) -"aaz" = ( -/obj/machinery/computer/shuttle/syndicate, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/syndicate) -"aaA" = ( -/obj/structure/table, -/obj/machinery/button/door{ - id = "syndieshutters"; - name = "remote shutter control"; - req_access_txt = "150" - }, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/syndicate) -"aaB" = ( -/obj/structure/frame/computer, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/syndicate) -"aaC" = ( -/obj/structure/table/wood, -/obj/machinery/light/small{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/item/weapon/storage/crayons, -/turf/open/floor/plasteel/grimy, -/area/chapel/main{ - name = "Monastery" - }) -"aaD" = ( -/obj/structure/cable/yellow{ - d1 = 2; - d2 = 4; - icon_state = "2-4"; - tag = "" - }, -/obj/effect/landmark{ - name = "tripai" - }, -/obj/item/device/radio/intercom{ - anyai = 1; - broadcasting = 0; - freerange = 1; - frequency = 1447; - name = "Private Channel"; - pixel_x = -27; - pixel_y = 0 - }, -/obj/machinery/firealarm{ - dir = 1; - pixel_y = 26 - }, -/turf/open/floor/bluegrid, -/area/wreck/ai) -"aaE" = ( -/obj/machinery/power/smes{ - charge = 5e+006 - }, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/machinery/camera/motion{ - c_tag = "MiniSat AI Chamber Center"; - dir = 2; - network = list("MiniSat") - }, -/obj/machinery/light/small{ - dir = 1 - }, -/obj/structure/cable/yellow{ - d2 = 8; - icon_state = "0-8" - }, -/obj/machinery/ai_status_display{ - pixel_y = 32 - }, -/turf/open/floor/bluegrid, -/area/wreck/ai) -"aaF" = ( -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/machinery/power/apc{ - aidisabled = 0; - dir = 1; - name = "AI Chamber APC"; - pixel_y = 24 - }, -/obj/effect/landmark{ - name = "tripai" - }, -/obj/item/device/radio/intercom{ - anyai = 1; - broadcasting = 0; - freerange = 1; - frequency = 1447; - name = "Private Channel"; - pixel_x = 27; - pixel_y = 0 - }, -/turf/open/floor/bluegrid, -/area/wreck/ai) -"aaG" = ( -/obj/structure/bed, -/obj/item/weapon/bedsheet/yellow, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 9 - }, -/turf/open/floor/plasteel/grimy, -/area/chapel/main{ - name = "Monastery" - }) -"aaH" = ( -/obj/structure/table, -/obj/item/weapon/storage/box/donkpockets{ - pixel_x = 3; - pixel_y = 3 - }, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/syndicate) -"aaI" = ( -/obj/structure/chair/comfy/beige{ - dir = 1; - icon_state = "comfychair" - }, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/syndicate) -"aaJ" = ( -/obj/machinery/porta_turret/ai{ - dir = 4 - }, -/obj/machinery/camera/motion{ - c_tag = "MiniSat AI Chamber West"; - dir = 4; - network = list("MiniSat") - }, -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/turf/open/floor/plasteel/black, -/area/wreck/ai) -"aaK" = ( -/obj/structure/cable/yellow{ - d1 = 2; - d2 = 4; - icon_state = "2-4"; - tag = "" - }, -/turf/open/floor/bluegrid, -/area/wreck/ai) -"aaL" = ( -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/door/firedoor/heavy, -/obj/machinery/door/airlock/glass_command{ - name = "AI Core"; - req_access_txt = "65" - }, -/turf/open/floor/plasteel/white, -/area/wreck/ai) -"aaM" = ( -/obj/machinery/shower{ - dir = 8; - pixel_y = -4 - }, -/obj/machinery/light/small{ - brightness = 3; - dir = 8 - }, -/obj/item/weapon/bikehorn/rubberducky, -/turf/open/floor/plasteel/showroomfloor, -/area/chapel/main{ - name = "Monastery" - }) -"aaN" = ( -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/machinery/turretid{ - name = "AI Chamber turret control"; - pixel_x = 5; - pixel_y = -24 - }, -/turf/open/floor/plasteel/white, -/area/wreck/ai) -"aaO" = ( -/obj/machinery/ai_slipper{ - icon_state = "motion0"; - uses = 8 - }, -/obj/machinery/power/terminal{ - icon_state = "term"; - dir = 1 - }, -/obj/machinery/holopad, -/turf/open/floor/plasteel/white, -/area/wreck/ai) -"aaP" = ( -/obj/machinery/turretid{ - name = "AI Chamber turret control"; - pixel_x = -5; - pixel_y = -24 - }, -/turf/open/floor/plasteel/white, -/area/wreck/ai) -"aaQ" = ( -/obj/structure/shuttle/engine/propulsion/burst{ - dir = 4 - }, -/turf/closed/wall/mineral/titanium, -/area/shuttle/abandoned) -"aaR" = ( -/obj/machinery/porta_turret/ai{ - dir = 4 - }, -/obj/machinery/camera/motion{ - c_tag = "MiniSat AI Chamber East"; - dir = 8; - network = list("MiniSat") - }, -/obj/machinery/light{ - icon_state = "tube1"; - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/wreck/ai) -"aaS" = ( -/obj/structure/table, -/obj/item/stack/sheet/glass{ - amount = 10 - }, -/obj/item/device/multitool, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/syndicate) -"aaT" = ( -/obj/item/device/radio/intercom{ - desc = "Talk through this. Evilly"; - freerange = 1; - frequency = 1213; - name = "Syndicate Intercom"; - pixel_y = -32; - subspace_transmission = 1; - syndie = 1 - }, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/syndicate) -"aaU" = ( -/obj/structure/closet/syndicate/personal, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/syndicate) -"aaV" = ( -/turf/open/floor/plasteel/warnwhite{ - dir = 1 - }, -/area/wreck/ai) -"aaW" = ( -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/bluegrid, -/area/wreck/ai) -"aaX" = ( -/obj/effect/landmark/start{ - name = "AI" - }, -/obj/item/device/radio/intercom{ - broadcasting = 0; - freerange = 1; - listening = 1; - name = "Common Channel"; - pixel_x = -27; - pixel_y = -9 - }, -/obj/item/device/radio/intercom{ - anyai = 1; - freerange = 1; - listening = 0; - name = "Custom Channel"; - pixel_x = 0; - pixel_y = -31 - }, -/obj/item/device/radio/intercom{ - anyai = 1; - broadcasting = 0; - freerange = 1; - frequency = 1447; - name = "Private Channel"; - pixel_x = 27; - pixel_y = -9 - }, -/obj/machinery/newscaster/security_unit{ - pixel_x = -28; - pixel_y = -28 - }, -/obj/machinery/requests_console{ - department = "AI"; - departmentType = 5; - pixel_x = 28; - pixel_y = -28 - }, -/turf/open/floor/bluegrid, -/area/wreck/ai) -"aaY" = ( -/turf/open/space, -/turf/closed/wall/mineral/plastitanium{ - icon_state = "diagonalWall3" - }, -/area/shuttle/syndicate) -"aaZ" = ( -/obj/machinery/door/window{ - name = "Cockpit"; - req_access_txt = "150" - }, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/syndicate) -"aba" = ( -/turf/open/space, -/turf/closed/wall/mineral/plastitanium{ - dir = 4; - icon_state = "diagonalWall3" - }, -/area/shuttle/syndicate) -"abb" = ( -/turf/open/space, -/area/shuttle/syndicate) -"abc" = ( -/obj/structure/table, -/obj/item/stack/cable_coil, -/obj/item/weapon/crowbar/red, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/syndicate) -"abd" = ( -/obj/structure/table, -/obj/item/weapon/storage/box/zipties{ - pixel_x = 1; - pixel_y = 2 - }, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/syndicate) -"abe" = ( -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/turf/open/floor/bluegrid, -/area/wreck/ai) -"abf" = ( -/obj/structure/cable/yellow{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/turf/open/floor/bluegrid, -/area/wreck/ai) -"abg" = ( -/obj/structure/chair{ - dir = 8 - }, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/syndicate) -"abh" = ( -/obj/machinery/door/firedoor/heavy, -/turf/open/floor/bluegrid, -/area/wreck/ai) -"abi" = ( -/obj/machinery/airalarm{ - pixel_y = 22 - }, -/turf/open/floor/bluegrid, -/area/wreck/ai) -"abj" = ( -/obj/machinery/camera/motion{ - c_tag = "MiniSat AI Chamber South"; - dir = 2; - network = list("MiniSat") - }, -/obj/machinery/light{ - dir = 1 - }, -/obj/machinery/flasher{ - id = "AI"; - pixel_x = 0; - pixel_y = 20 - }, -/obj/machinery/ai_status_display{ - pixel_y = 37 - }, -/turf/open/floor/bluegrid, -/area/wreck/ai) -"abk" = ( -/obj/machinery/atmospherics/components/unary/outlet_injector/on, -/turf/open/floor/plating/airless, -/area/space) -"abl" = ( -/obj/machinery/porta_turret/syndicate{ - dir = 4 - }, -/turf/closed/wall/mineral/plastitanium, -/area/shuttle/syndicate) -"abm" = ( -/obj/structure/cable/yellow{ - d1 = 2; - d2 = 4; - icon_state = "2-4"; - tag = "" - }, -/turf/open/floor/plasteel/warnwhite/corner{ - dir = 8 - }, -/area/wreck/ai) -"abn" = ( -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/turf/open/floor/plasteel/warnwhite{ - dir = 1 - }, -/area/wreck/ai) -"abo" = ( -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/turf/open/floor/plasteel/warnwhite/corner{ - dir = 4; - heat_capacity = 1e+006 - }, -/area/wreck/ai) -"abp" = ( -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/door/firedoor/heavy, -/turf/open/floor/plasteel/white, -/area/wreck/ai) -"abq" = ( -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/turf/open/floor/plasteel/white, -/area/wreck/ai) -"abr" = ( -/obj/structure/cable/yellow{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/machinery/ai_slipper{ - icon_state = "motion0"; - uses = 8 - }, -/turf/open/floor/plasteel/white, -/area/wreck/ai) -"abs" = ( -/obj/machinery/door/firedoor/heavy, -/turf/open/floor/plasteel/white, -/area/wreck/ai) -"abt" = ( -/obj/structure/lattice, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/space, -/area/space) -"abu" = ( -/obj/structure/grille/broken, -/turf/open/space, -/area/space) -"abv" = ( -/obj/machinery/suit_storage_unit/syndicate, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/syndicate) -"abw" = ( -/obj/structure/closet/syndicate/nuclear, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/syndicate) -"abx" = ( -/turf/closed/wall/r_wall, -/area/ai_monitored/turret_protected/AIsatextAP) -"aby" = ( -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/closed/wall/r_wall, -/area/ai_monitored/turret_protected/AIsatextAP) -"abz" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 6 - }, -/turf/open/floor/plating, -/area/wreck/ai) -"abA" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 2; - on = 1 - }, -/turf/open/floor/plasteel/black, -/area/wreck/ai) -"abB" = ( -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/black, -/area/wreck/ai) -"abC" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 10 - }, -/turf/open/floor/plating, -/area/wreck/ai) -"abD" = ( -/turf/closed/wall/r_wall, -/area/ai_monitored/turret_protected/AIsatextAS) -"abE" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall/r_wall, -/area/ai_monitored/turret_protected/AIsatextAS) -"abF" = ( -/obj/structure/chair/stool{ - pixel_y = 8 - }, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/syndicate) -"abG" = ( -/obj/structure/table, -/obj/item/device/aicard, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/syndicate) -"abH" = ( -/obj/machinery/door/poddoor{ - id = "smindicate"; - name = "outer blast door" - }, -/obj/machinery/button/door{ - id = "smindicate"; - name = "external door control"; - pixel_x = -26; - pixel_y = 0; - req_access_txt = "150" - }, -/obj/docking_port/mobile{ - dheight = 9; - dir = 2; - dwidth = 5; - height = 24; - id = "syndicate"; - name = "syndicate infiltrator"; - port_angle = 0; - roundstart_move = "syndicate_away"; - width = 18 - }, -/obj/docking_port/stationary{ - dheight = 9; - dir = 2; - dwidth = 5; - height = 24; - id = "syndicate_nw"; - name = "northwest of station"; - turf_type = /turf/open/space; - width = 18 - }, -/turf/open/floor/plating, -/area/shuttle/syndicate) -"abI" = ( -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; - icon_state = "space"; - layer = 4; - name = "EXTERNAL AIRLOCK"; - pixel_x = 0 - }, -/turf/closed/wall/mineral/plastitanium, -/area/shuttle/syndicate) -"abJ" = ( -/obj/machinery/computer/station_alert, -/turf/open/floor/plating, -/area/ai_monitored/turret_protected/AIsatextAP) -"abK" = ( -/obj/machinery/computer/monitor, -/obj/structure/cable/yellow, -/turf/open/floor/plating, -/area/ai_monitored/turret_protected/AIsatextAP) -"abL" = ( -/obj/machinery/computer/atmos_alert, -/turf/open/floor/plating, -/area/ai_monitored/turret_protected/AIsatextAP) -"abM" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 9; - pixel_y = 0 - }, -/turf/open/floor/plating, -/area/wreck/ai) -"abN" = ( -/obj/machinery/door/firedoor, -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/door/airlock/glass_command{ - name = "AI Core"; - req_access_txt = "65" - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/wreck/ai) -"abO" = ( -/obj/structure/table/glass, -/obj/item/stack/sheet/metal, -/obj/item/stack/sheet/glass{ - amount = 20; - pixel_x = 3; - pixel_y = -4 - }, -/obj/item/device/assembly/flash/handheld, -/obj/item/device/assembly/flash/handheld, -/obj/item/device/mmi, -/obj/item/device/assembly/prox_sensor{ - pixel_x = -8; - pixel_y = 4 - }, -/turf/open/floor/plating, -/area/ai_monitored/turret_protected/AIsatextAS) -"abP" = ( -/obj/machinery/light/small{ - dir = 1 - }, -/obj/machinery/computer/rdconsole/robotics, -/turf/open/floor/plating, -/area/ai_monitored/turret_protected/AIsatextAS) -"abQ" = ( -/obj/machinery/mecha_part_fabricator, -/turf/open/floor/plating, -/area/ai_monitored/turret_protected/AIsatextAS) -"abR" = ( -/obj/structure/table, -/obj/item/weapon/c4{ - pixel_x = 2; - pixel_y = -5 - }, -/obj/item/weapon/c4{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/weapon/c4{ - pixel_x = 2; - pixel_y = -3 - }, -/obj/item/weapon/c4{ - pixel_x = -2; - pixel_y = -1 - }, -/obj/item/weapon/c4{ - pixel_x = 3; - pixel_y = 3 - }, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/syndicate) -"abS" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/shuttle/syndicate) -"abT" = ( -/obj/machinery/door/window{ - name = "Ready Room"; - req_access_txt = "150" - }, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/syndicate) -"abU" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plating, -/area/ai_monitored/turret_protected/AIsatextAP) -"abV" = ( -/obj/structure/chair/office/dark{ - dir = 1 - }, -/turf/open/floor/plating, -/area/ai_monitored/turret_protected/AIsatextAP) -"abW" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - on = 1 - }, -/turf/open/floor/plating, -/area/ai_monitored/turret_protected/AIsatextAP) -"abX" = ( -/obj/structure/table, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable/yellow{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/machinery/power/apc{ - dir = 8; - name = "MiniSat Antechamber APC"; - pixel_x = -24; - pixel_y = 0 - }, -/obj/machinery/recharger, -/turf/open/floor/plasteel/grimy, -/area/ai_monitored/turret_protected/aisat_interior) -"abY" = ( -/obj/structure/chair/office/dark{ - dir = 1 - }, -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/turf/open/floor/plasteel/grimy, -/area/ai_monitored/turret_protected/aisat_interior) -"abZ" = ( -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/turf/open/floor/plasteel/grimy, -/area/ai_monitored/turret_protected/aisat_interior) -"aca" = ( -/obj/structure/chair/office/dark{ - dir = 4 - }, -/turf/open/floor/plasteel/grimy, -/area/ai_monitored/turret_protected/aisat_interior) -"acb" = ( -/obj/structure/table, -/obj/item/weapon/pen, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/firealarm{ - dir = 4; - pixel_x = 28 - }, -/obj/item/weapon/paper_bin{ - layer = 2.9; - pixel_x = 0; - pixel_y = 0; - tag = "every single paper bin is edited to this" - }, -/turf/open/floor/plasteel/grimy, -/area/ai_monitored/turret_protected/aisat_interior) -"acc" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plating, -/area/ai_monitored/turret_protected/AIsatextAS) -"acd" = ( -/obj/structure/chair/office/dark{ - dir = 1 - }, -/turf/open/floor/plating, -/area/ai_monitored/turret_protected/AIsatextAS) -"ace" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - on = 1 - }, -/turf/open/floor/plating, -/area/ai_monitored/turret_protected/AIsatextAS) -"acf" = ( -/obj/machinery/door/window{ - dir = 4; - name = "EVA Storage"; - req_access_txt = "150" - }, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/syndicate) -"acg" = ( -/obj/machinery/door/airlock/external{ - req_access_txt = "150" - }, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/syndicate) -"ach" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/ai_monitored/turret_protected/AIsatextAP) -"aci" = ( -/obj/machinery/camera{ - c_tag = "MiniSat Maintenance Port Fore"; - dir = 1; - network = list("MiniSat") - }, -/turf/open/floor/plating, -/area/ai_monitored/turret_protected/AIsatextAP) -"acj" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 8 - }, -/turf/open/floor/plating, -/area/ai_monitored/turret_protected/AIsatextAP) -"ack" = ( -/obj/machinery/door/airlock/maintenance_hatch{ - name = "MiniSat Maintenance"; - req_access_txt = "65" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/ai_monitored/turret_protected/AIsatextAP) -"acl" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/obj/machinery/airalarm{ - dir = 1; - pixel_y = -22 - }, -/turf/open/floor/plasteel/grimy, -/area/ai_monitored/turret_protected/aisat_interior) -"acm" = ( -/obj/machinery/light/small, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/plasteel/grimy, -/area/ai_monitored/turret_protected/aisat_interior) -"acn" = ( -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/grimy, -/area/ai_monitored/turret_protected/aisat_interior) -"aco" = ( -/obj/machinery/light/small, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/obj/item/device/radio/intercom{ - broadcasting = 1; - frequency = 1447; - listening = 0; - name = "Station Intercom (AI Private)"; - pixel_x = 0; - pixel_y = -29 - }, -/obj/machinery/camera/motion{ - c_tag = "MiniSat AI Chamber Observation"; - dir = 1; - network = list("MiniSat") - }, -/turf/open/floor/plasteel/grimy, -/area/ai_monitored/turret_protected/aisat_interior) -"acp" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/open/floor/plasteel/grimy, -/area/ai_monitored/turret_protected/aisat_interior) -"acq" = ( -/obj/machinery/door/airlock/maintenance_hatch{ - name = "MiniSat Maintenance"; - req_access_txt = "65" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 1; - initialize_directions = 11 - }, -/turf/open/floor/plating, -/area/ai_monitored/turret_protected/AIsatextAS) -"acr" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/open/floor/plating, -/area/ai_monitored/turret_protected/AIsatextAS) -"acs" = ( -/obj/machinery/atmospherics/components/binary/pump{ - dir = 4; - name = "Waste Out"; - on = 1 - }, -/obj/machinery/camera{ - c_tag = "MiniSat Maintenance Starboard Fore"; - dir = 1; - network = list("MiniSat") - }, -/turf/open/floor/plating, -/area/ai_monitored/turret_protected/AIsatextAS) -"act" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/ai_monitored/turret_protected/AIsatextAS) -"acu" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 9 - }, -/turf/closed/wall/r_wall, -/area/ai_monitored/turret_protected/AIsatextAS) -"acv" = ( -/obj/machinery/door/window{ - base_state = "right"; - dir = 4; - icon_state = "right"; - name = "EVA Storage"; - req_access_txt = "150" - }, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/syndicate) -"acw" = ( -/turf/open/space, -/turf/closed/wall/mineral/plastitanium{ - dir = 1; - icon_state = "diagonalWall3" - }, -/area/shuttle/syndicate) -"acx" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 6 - }, -/turf/closed/wall/r_wall, -/area/ai_monitored/turret_protected/AIsatextAP) -"acy" = ( -/obj/machinery/door/airlock/maintenance_hatch{ - name = "MiniSat Maintenance"; - req_access_txt = "65" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 9 - }, -/turf/open/floor/plating, -/area/ai_monitored/turret_protected/AIsatextAP) -"acz" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 6 - }, -/turf/closed/wall/r_wall, -/area/ai_monitored/turret_protected/AIsatextAP) -"acA" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/closed/wall/r_wall, -/area/ai_monitored/turret_protected/AIsatextAP) -"acB" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 1 - }, -/turf/closed/wall/r_wall, -/area/ai_monitored/turret_protected/AIsatextAP) -"acC" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/closed/wall/r_wall, -/area/ai_monitored/turret_protected/aisat_interior) -"acD" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/hatch{ - name = "MiniSat Chamber Observation"; - req_one_access_txt = "65" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 1 - }, -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/aisat_interior) -"acE" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/closed/wall/r_wall, -/area/ai_monitored/turret_protected/AIsatextAS) -"acF" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/closed/wall/r_wall, -/area/ai_monitored/turret_protected/AIsatextAS) -"acG" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 1 - }, -/turf/closed/wall/r_wall, -/area/ai_monitored/turret_protected/AIsatextAS) -"acH" = ( -/obj/machinery/door/airlock/maintenance_hatch{ - name = "MiniSat Maintenance"; - req_access_txt = "65" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 9; - pixel_y = 0 - }, -/turf/open/floor/plating, -/area/ai_monitored/turret_protected/AIsatextAS) -"acI" = ( -/obj/item/device/radio/intercom{ - desc = "Talk through this. Evilly"; - freerange = 1; - frequency = 1213; - name = "Syndicate Intercom"; - pixel_x = -32; - subspace_transmission = 1; - syndie = 1 - }, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/syndicate) -"acJ" = ( -/obj/structure/grille, -/obj/structure/lattice, -/turf/open/space, -/area/space) -"acK" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall/r_wall, -/area/ai_monitored/turret_protected/AIsatextAP) -"acL" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - external_pressure_bound = 101.325; - on = 1; - pressure_checks = 1 - }, -/turf/open/floor/plating, -/area/ai_monitored/turret_protected/AIsatextAP) -"acM" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 9; - pixel_y = 0 - }, -/turf/closed/wall/r_wall, -/area/ai_monitored/turret_protected/AIsatextAP) -"acN" = ( -/turf/open/space, -/area/ai_monitored/turret_protected/AIsatextAP) -"acO" = ( -/obj/structure/lattice, -/obj/machinery/light/small{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/camera/motion{ - c_tag = "MiniSat Bridge Port Fore"; - dir = 2; - network = list("MiniSat") - }, -/turf/open/space, -/area/ai_monitored/turret_protected/AIsatextAP) -"acP" = ( -/turf/closed/wall/r_wall, -/area/ai_monitored/turret_protected/aisat_interior) -"acQ" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/aisat_interior) -"acR" = ( -/turf/open/space, -/area/ai_monitored/turret_protected/AIsatextAS) -"acS" = ( -/obj/structure/lattice, -/obj/machinery/light/small{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/camera/motion{ - c_tag = "MiniSat Bridge Starboard Fore"; - dir = 2; - network = list("MiniSat") - }, -/turf/open/space, -/area/ai_monitored/turret_protected/AIsatextAS) -"acT" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 5 - }, -/turf/closed/wall/r_wall, -/area/ai_monitored/turret_protected/AIsatextAS) -"acU" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/plating, -/area/ai_monitored/turret_protected/AIsatextAS) -"acV" = ( -/obj/machinery/sleeper/syndie{ - dir = 4 - }, -/turf/open/floor/mineral/titanium, -/area/shuttle/syndicate) -"acW" = ( -/turf/open/floor/mineral/titanium, -/area/shuttle/syndicate) -"acX" = ( -/obj/machinery/portable_atmospherics/canister/oxygen, -/turf/open/floor/mineral/titanium, -/area/shuttle/syndicate) -"acY" = ( -/obj/structure/tank_dispenser/oxygen, -/turf/open/floor/mineral/titanium, -/area/shuttle/syndicate) -"acZ" = ( -/obj/structure/table, -/obj/item/stack/medical/ointment, -/obj/item/stack/medical/bruise_pack, -/obj/structure/extinguisher_cabinet{ - pixel_x = -5; - pixel_y = 30 - }, -/turf/open/floor/mineral/titanium, -/area/shuttle/syndicate) -"ada" = ( -/obj/structure/table, -/obj/item/weapon/stock_parts/cell/high{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/weapon/stock_parts/cell/high, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/syndicate) -"adb" = ( -/obj/structure/table, -/obj/item/weapon/screwdriver{ - pixel_y = 9 - }, -/obj/item/device/assembly/voice{ - pixel_y = 3 - }, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/syndicate) -"adc" = ( -/obj/structure/table, -/obj/item/weapon/wrench, -/obj/item/device/assembly/infra, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/syndicate) -"add" = ( -/obj/structure/table, -/obj/item/device/assembly/signaler, -/obj/item/device/assembly/signaler, -/obj/item/device/assembly/prox_sensor{ - pixel_x = -8; - pixel_y = 4 - }, -/obj/item/device/assembly/prox_sensor{ - pixel_x = -8; - pixel_y = 4 - }, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/syndicate) -"ade" = ( -/obj/structure/table, -/obj/item/weapon/weldingtool/largetank{ - pixel_y = 3 - }, -/obj/item/device/multitool, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/syndicate) -"adf" = ( -/obj/structure/lattice, -/obj/structure/grille/broken, -/turf/open/space, -/area/space) -"adg" = ( -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/ai_monitored/turret_protected/AIsatextAP) -"adh" = ( -/obj/structure/lattice, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/space, -/area/ai_monitored/turret_protected/AIsatextAP) -"adi" = ( -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/ai_monitored/turret_protected/aisat_interior) -"adj" = ( -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/aisat_interior) -"adk" = ( -/obj/structure/lattice, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/space, -/area/ai_monitored/turret_protected/AIsatextAS) -"adl" = ( -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/ai_monitored/turret_protected/AIsatextAS) -"adm" = ( -/turf/open/floor/plating, -/area/ai_monitored/turret_protected/AIsatextAS) -"adn" = ( -/obj/structure/bed/roller, -/turf/open/floor/mineral/titanium, -/area/shuttle/syndicate) -"ado" = ( -/obj/structure/sign/bluecross_2, -/turf/closed/wall/mineral/plastitanium, -/area/shuttle/syndicate) -"adp" = ( -/obj/structure/table, -/obj/item/weapon/storage/toolbox/syndicate, -/obj/item/weapon/crowbar/red, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/syndicate) -"adq" = ( -/turf/closed/wall/r_wall, -/area/security/prison) -"adr" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/structure/cable{ - icon_state = "0-2"; - pixel_y = 1; - d2 = 2 - }, -/turf/open/floor/plating, -/area/security/prison) -"ads" = ( -/obj/machinery/door/window{ - dir = 4; - name = "Infirmary"; - req_access_txt = "150" - }, -/turf/open/floor/mineral/titanium, -/area/shuttle/syndicate) -"adt" = ( -/obj/machinery/door/window/westright{ - name = "Tool Storage"; - req_access_txt = "150" - }, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/syndicate) -"adu" = ( -/obj/machinery/hydroponics/constructable, -/obj/item/seeds/potato, -/obj/item/seeds/carrot, -/obj/item/seeds/corn, -/turf/open/floor/plasteel/black, -/area/security/prison) -"adv" = ( -/obj/item/weapon/cultivator, -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4"; - tag = "" - }, -/obj/structure/sign/poster{ - pixel_y = 32 - }, -/turf/open/floor/plasteel/black, -/area/security/prison) -"adw" = ( -/obj/machinery/hydroponics/constructable, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/item/seeds/glowshroom, -/obj/machinery/computer/security/telescreen/entertainment{ - pixel_y = 32 - }, -/obj/machinery/camera{ - c_tag = "Permabrig Central"; - network = list("SS13","Prison") - }, -/turf/open/floor/plasteel/black, -/area/security/prison) -"adx" = ( -/obj/item/weapon/reagent_containers/glass/bucket, -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4"; - tag = "" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/structure/sign/poster{ - pixel_y = 32 - }, -/turf/open/floor/plasteel/black, -/area/security/prison) -"ady" = ( -/obj/structure/easel, -/obj/item/weapon/canvas/nineteenXnineteen, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/turf/open/floor/plasteel/black, -/area/security/prison) -"adz" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8"; - tag = "" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/sign/poster{ - pixel_y = 32 - }, -/turf/open/floor/plasteel/black, -/area/security/prison) -"adA" = ( -/obj/machinery/biogenerator, -/turf/open/floor/plasteel/darkgreen/side{ - dir = 8 - }, -/area/security/prison) -"adB" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plating, -/area/ai_monitored/turret_protected/AIsatextAP) -"adC" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 10 - }, -/turf/closed/wall/r_wall, -/area/ai_monitored/turret_protected/AIsatextAP) -"adD" = ( -/obj/structure/lattice, -/obj/machinery/light/small, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/camera/motion{ - c_tag = "MiniSat Bridge Port Aft"; - dir = 1; - network = list("MiniSat") - }, -/turf/open/space, -/area/ai_monitored/turret_protected/AIsatextAP) -"adE" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/aisat_interior) -"adF" = ( -/obj/structure/lattice, -/obj/machinery/light/small, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/camera/motion{ - c_tag = "MiniSat Bridge Starboard Aft"; - dir = 1; - network = list("MiniSat") - }, -/turf/open/space, -/area/ai_monitored/turret_protected/AIsatextAS) -"adG" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 6 - }, -/turf/closed/wall/r_wall, -/area/ai_monitored/turret_protected/AIsatextAS) -"adH" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plating, -/area/ai_monitored/turret_protected/AIsatextAS) -"adI" = ( -/obj/machinery/door/window{ - base_state = "right"; - dir = 4; - icon_state = "right"; - name = "Infirmary"; - req_access_txt = "150" - }, -/turf/open/floor/mineral/titanium, -/area/shuttle/syndicate) -"adJ" = ( -/obj/machinery/door/window{ - dir = 8; - name = "Tool Storage"; - req_access_txt = "150" - }, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/syndicate) -"adK" = ( -/obj/machinery/recharge_station, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/syndicate) -"adL" = ( -/obj/machinery/hydroponics/constructable, -/obj/item/seeds/grass, -/turf/open/floor/plasteel/black, -/area/security/prison) -"adM" = ( -/obj/item/device/plant_analyzer, -/turf/open/floor/plasteel/black, -/area/security/prison) -"adN" = ( -/obj/machinery/hydroponics/constructable, -/obj/item/seeds/sunflower, -/obj/item/seeds/poppy, -/turf/open/floor/plasteel/black, -/area/security/prison) -"adO" = ( -/obj/machinery/holopad, -/turf/open/floor/plasteel/black, -/area/security/prison) -"adP" = ( -/obj/item/weapon/storage/crayons, -/turf/open/floor/plasteel/black, -/area/security/prison) -"adQ" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/black, -/area/security/prison) -"adR" = ( -/obj/machinery/seed_extractor, -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/turf/open/floor/plasteel/darkgreen/side{ - dir = 8 - }, -/area/security/prison) -"adS" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 8; - initialize_directions = 11 - }, -/turf/closed/wall/r_wall, -/area/ai_monitored/turret_protected/AIsatextAP) -"adT" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/closed/wall/r_wall, -/area/ai_monitored/turret_protected/AIsatextAP) -"adU" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall/r_wall, -/area/ai_monitored/turret_protected/AIsatextAP) -"adV" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall/r_wall, -/area/ai_monitored/turret_protected/AIsatextAP) -"adW" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall/r_wall, -/area/ai_monitored/turret_protected/aisat_interior) -"adX" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/hatch{ - name = "MiniSat Chamber Hallway"; - req_one_access_txt = "65" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/aisat_interior) -"adY" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 1 - }, -/turf/closed/wall/r_wall, -/area/ai_monitored/turret_protected/aisat_interior) -"adZ" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/closed/wall/r_wall, -/area/ai_monitored/turret_protected/AIsatextAS) -"aea" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall/r_wall, -/area/ai_monitored/turret_protected/AIsatextAS) -"aeb" = ( -/obj/machinery/door/airlock/maintenance_hatch{ - name = "MiniSat Maintenance"; - req_access_txt = "65" - }, -/turf/open/floor/plating, -/area/ai_monitored/turret_protected/AIsatextAS) -"aec" = ( -/obj/machinery/porta_turret/syndicate{ - dir = 5 - }, -/turf/closed/wall/mineral/plastitanium, -/area/shuttle/syndicate) -"aed" = ( -/obj/structure/window/reinforced{ - dir = 1 - }, -/obj/structure/table, -/obj/item/bodypart/r_arm/robot, -/obj/item/bodypart/l_arm/robot, -/turf/open/floor/mineral/titanium, -/area/shuttle/syndicate) -"aee" = ( -/obj/machinery/door/window{ - dir = 1; - name = "Surgery"; - req_access_txt = "150" - }, -/turf/open/floor/mineral/titanium, -/area/shuttle/syndicate) -"aef" = ( -/obj/structure/window/reinforced{ - dir = 1 - }, -/turf/open/floor/mineral/titanium, -/area/shuttle/syndicate) -"aeg" = ( -/obj/structure/table, -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/item/weapon/storage/firstaid/regular{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/storage/firstaid/brute, -/obj/item/weapon/storage/firstaid/regular{ - pixel_x = -3; - pixel_y = -3 - }, -/turf/open/floor/mineral/titanium, -/area/shuttle/syndicate) -"aeh" = ( -/obj/structure/table, -/obj/item/weapon/storage/firstaid/regular{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/storage/firstaid/fire, -/obj/item/weapon/storage/firstaid/regular{ - pixel_x = -3; - pixel_y = -3 - }, -/turf/open/floor/mineral/titanium, -/area/shuttle/syndicate) -"aei" = ( -/obj/structure/table, -/obj/item/device/sbeacondrop/bomb{ - pixel_y = 5 - }, -/obj/item/device/sbeacondrop/bomb, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/syndicate) -"aej" = ( -/obj/structure/table, -/obj/item/weapon/grenade/syndieminibomb{ - pixel_x = 4; - pixel_y = 2 - }, -/obj/item/weapon/grenade/syndieminibomb{ - pixel_x = -1 - }, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/syndicate) -"aek" = ( -/obj/structure/bookcase, -/turf/open/floor/plasteel/black, -/area/security/prison) -"ael" = ( -/turf/open/floor/plasteel/black, -/area/security/prison) -"aem" = ( -/obj/effect/landmark{ - name = "xeno_spawn"; - pixel_x = -1 - }, -/turf/open/floor/plasteel/black, -/area/security/prison) -"aen" = ( -/obj/structure/sink{ - pixel_y = 30 - }, -/turf/open/floor/plasteel/barber, -/area/security/prison) -"aeo" = ( -/obj/machinery/washing_machine, -/turf/open/floor/plasteel/barber, -/area/security/prison) -"aep" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/obj/structure/cable/yellow{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/machinery/power/apc{ - dir = 8; - name = "MiniSat Port Maintenance APC"; - pixel_x = -24; - pixel_y = 0 - }, -/turf/open/floor/plating, -/area/ai_monitored/turret_protected/AIsatextAP) -"aeq" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - external_pressure_bound = 101.325; - on = 1; - pressure_checks = 1 - }, -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/turf/open/floor/plating, -/area/ai_monitored/turret_protected/AIsatextAP) -"aer" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 1 - }, -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/airalarm{ - pixel_y = 22 - }, -/obj/machinery/camera{ - c_tag = "MiniSat Maintenance Port Aft"; - dir = 2; - network = list("MiniSat") - }, -/turf/open/floor/plating, -/area/ai_monitored/turret_protected/AIsatextAP) -"aes" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/turf/open/floor/plating, -/area/ai_monitored/turret_protected/AIsatextAP) -"aet" = ( -/obj/machinery/door/airlock/maintenance_hatch{ - name = "MiniSat Maintenance"; - req_access_txt = "65" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/turf/open/floor/plating, -/area/ai_monitored/turret_protected/AIsatextAP) -"aeu" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 10 - }, -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/aisat_interior) -"aev" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-09"; - name = "Photosynthetic Potted plant"; - pixel_y = 10 - }, -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/turf/open/floor/plasteel/darkblue/side{ - dir = 8 - }, -/area/ai_monitored/turret_protected/aisat_interior) -"aew" = ( -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/turf/open/floor/plasteel/darkblue/side{ - dir = 1 - }, -/area/ai_monitored/turret_protected/aisat_interior) -"aex" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-09"; - name = "Photosynthetic Potted plant"; - pixel_y = 10 - }, -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/camera/motion{ - c_tag = "MiniSat Foyer"; - dir = 2; - network = list("MiniSat") - }, -/turf/open/floor/plasteel/darkblue/side{ - tag = "icon-darkblue (EAST)"; - dir = 4 - }, -/area/ai_monitored/turret_protected/aisat_interior) -"aey" = ( -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 8; - initialize_directions = 11 - }, -/turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/aisat_interior) -"aez" = ( -/obj/machinery/door/airlock/maintenance_hatch{ - name = "MiniSat Maintenance"; - req_access_txt = "65" - }, -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/ai_monitored/turret_protected/AIsatextAS) -"aeA" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/ai_monitored/turret_protected/AIsatextAS) -"aeB" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/airalarm{ - pixel_y = 22 - }, -/obj/machinery/camera{ - c_tag = "MiniSat Maintenance Starboard Aft"; - dir = 2; - network = list("MiniSat") - }, -/turf/open/floor/plating, -/area/ai_monitored/turret_protected/AIsatextAS) -"aeC" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/turf/open/floor/plating, -/area/ai_monitored/turret_protected/AIsatextAS) -"aeD" = ( -/obj/structure/reagent_dispensers/fueltank, -/obj/structure/cable/yellow{ - d2 = 8; - icon_state = "0-8" - }, -/obj/machinery/power/apc{ - dir = 4; - name = "MiniSat Starboard Maintenance APC"; - pixel_x = 24; - pixel_y = 0 - }, -/turf/open/floor/plating, -/area/ai_monitored/turret_protected/AIsatextAS) -"aeE" = ( -/obj/structure/table, -/obj/item/weapon/surgicaldrill, -/obj/item/weapon/circular_saw, -/turf/open/floor/mineral/titanium, -/area/shuttle/syndicate) -"aeF" = ( -/obj/structure/sink{ - dir = 4; - icon_state = "sink"; - pixel_x = 11; - pixel_y = 0 - }, -/obj/structure/mirror{ - pixel_x = 30 - }, -/turf/open/floor/mineral/titanium, -/area/shuttle/syndicate) -"aeG" = ( -/obj/machinery/nuclearbomb/syndicate, -/obj/machinery/door/window{ - dir = 1; - name = "Secure Storage"; - req_access_txt = "150" - }, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/syndicate) -"aeH" = ( -/obj/machinery/telecomms/allinone{ - intercept = 1 - }, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/syndicate) -"aeI" = ( -/obj/machinery/computer/libraryconsole/bookmanagement{ - pixel_y = 0 - }, -/obj/structure/table, -/obj/machinery/newscaster{ - pixel_x = -32; - pixel_y = 0 - }, -/turf/open/floor/plasteel/black, -/area/security/prison) -"aeJ" = ( -/obj/structure/chair/stool, -/turf/open/floor/plasteel/black, -/area/security/prison) -"aeK" = ( -/obj/item/weapon/storage/pill_bottle/dice, -/obj/structure/table, -/turf/open/floor/plasteel/black, -/area/security/prison) -"aeL" = ( -/obj/item/device/camera, -/obj/structure/table, -/turf/open/floor/plasteel/black, -/area/security/prison) -"aeM" = ( -/obj/machinery/light/small, -/turf/open/floor/plasteel/barber, -/area/security/prison) -"aeN" = ( -/obj/structure/table, -/obj/structure/bedsheetbin, -/turf/open/floor/plasteel/barber, -/area/security/prison) -"aeO" = ( -/obj/machinery/light/small{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 6 - }, -/turf/open/floor/plating, -/area/ai_monitored/turret_protected/AIsatextAP) -"aeP" = ( -/obj/machinery/atmospherics/components/binary/pump{ - dir = 4; - name = "Air Out"; - on = 1 - }, -/turf/open/floor/plating, -/area/ai_monitored/turret_protected/AIsatextAP) -"aeQ" = ( -/obj/structure/chair/stool, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 9 - }, -/turf/open/floor/plating, -/area/ai_monitored/turret_protected/AIsatextAP) -"aeR" = ( -/obj/machinery/light/small{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/aisat_interior) -"aeS" = ( -/turf/open/floor/plasteel/darkblue/side{ - dir = 8 - }, -/area/ai_monitored/turret_protected/aisat_interior) -"aeT" = ( -/obj/effect/landmark/start{ - name = "Cyborg" - }, -/obj/item/device/radio/beacon, -/turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/aisat_interior) -"aeU" = ( -/turf/open/floor/plasteel/darkblue/side{ - tag = "icon-darkblue (EAST)"; - dir = 4 - }, -/area/ai_monitored/turret_protected/aisat_interior) -"aeV" = ( -/obj/machinery/light/small{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/aisat_interior) -"aeW" = ( -/obj/structure/table, -/obj/machinery/cell_charger, -/obj/item/weapon/stock_parts/cell/high, -/obj/machinery/light/small{ - dir = 4 - }, -/obj/item/stack/cable_coil, -/turf/open/floor/plating, -/area/ai_monitored/turret_protected/AIsatextAS) -"aeX" = ( -/obj/structure/table, -/obj/item/weapon/cautery, -/obj/item/weapon/scalpel, -/turf/open/floor/mineral/titanium, -/area/shuttle/syndicate) -"aeY" = ( -/obj/structure/table/optable, -/obj/item/weapon/surgical_drapes, -/turf/open/floor/mineral/titanium, -/area/shuttle/syndicate) -"aeZ" = ( -/obj/structure/table, -/obj/item/weapon/retractor, -/obj/item/weapon/hemostat, -/turf/open/floor/mineral/titanium, -/area/shuttle/syndicate) -"afa" = ( -/obj/structure/shuttle/engine/heater, -/obj/structure/window/reinforced{ - dir = 1 - }, -/turf/open/floor/plating, -/area/shuttle/syndicate) -"afb" = ( -/obj/structure/reagent_dispensers/fueltank, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/syndicate) -"afc" = ( -/obj/structure/table, -/obj/item/stack/sheet/metal{ - amount = 50 - }, -/obj/item/stack/sheet/glass{ - amount = 50 - }, -/obj/item/stack/rods{ - amount = 50 - }, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/syndicate) -"afd" = ( -/obj/structure/rack, -/obj/item/clothing/suit/space/syndicate/black/red, -/obj/item/clothing/head/helmet/space/syndicate/black/red, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/syndicate) -"afe" = ( -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/black, -/area/security/prison) -"aff" = ( -/obj/structure/chair/stool, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 10 - }, -/turf/open/floor/plasteel/black, -/area/security/prison) -"afg" = ( -/obj/item/toy/cards/deck, -/obj/structure/table, -/turf/open/floor/plasteel/black, -/area/security/prison) -"afh" = ( -/obj/item/weapon/paper_bin{ - pixel_x = -3; - pixel_y = 7 - }, -/obj/item/weapon/pen, -/obj/structure/table, -/obj/machinery/atmospherics/pipe/simple/cyan/hidden{ - tag = "icon-intact (SOUTHEAST)"; - icon_state = "intact"; - dir = 6 - }, -/turf/open/floor/plasteel/black, -/area/security/prison) -"afi" = ( -/obj/structure/chair/stool, -/obj/machinery/atmospherics/pipe/simple/cyan/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/black, -/area/security/prison) -"afj" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - layer = 2.4; - on = 1 - }, -/turf/open/floor/plasteel/black, -/area/security/prison) -"afk" = ( -/obj/machinery/computer/arcade, -/turf/open/floor/plasteel/black, -/area/security/prison) -"afl" = ( -/obj/machinery/atmospherics/components/unary/tank/air{ - dir = 1 - }, -/turf/open/floor/plating, -/area/ai_monitored/turret_protected/AIsatextAP) -"afm" = ( -/obj/structure/table, -/obj/item/weapon/wrench, -/obj/item/weapon/tank/internals/emergency_oxygen, -/turf/open/floor/plating, -/area/ai_monitored/turret_protected/AIsatextAP) -"afn" = ( -/obj/structure/table, -/obj/item/weapon/crowbar, -/obj/item/clothing/mask/gas, -/turf/open/floor/plating, -/area/ai_monitored/turret_protected/AIsatextAP) -"afo" = ( -/obj/machinery/teleport/hub, -/turf/open/floor/plating/warnplate{ - dir = 5 - }, -/area/ai_monitored/turret_protected/aisat_interior) -"afp" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/aisat_interior) -"afq" = ( -/obj/machinery/holopad, -/mob/living/simple_animal/bot/secbot/pingsky, -/turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/aisat_interior) -"afr" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/aisat_interior) -"afs" = ( -/turf/open/floor/plating/warnplate{ - dir = 9 - }, -/area/ai_monitored/turret_protected/aisat_interior) -"aft" = ( -/obj/machinery/recharge_station, -/turf/open/floor/plating, -/area/ai_monitored/turret_protected/AIsatextAS) -"afu" = ( -/obj/structure/rack, -/obj/item/weapon/storage/toolbox/electrical{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/weapon/storage/toolbox/mechanical, -/obj/item/device/multitool{ - layer = 5 - }, -/obj/item/weapon/extinguisher{ - layer = 4 - }, -/turf/open/floor/plating, -/area/ai_monitored/turret_protected/AIsatextAS) -"afv" = ( -/obj/structure/shuttle/engine/propulsion{ - icon_state = "propulsion_l" - }, -/turf/open/floor/plating, -/area/shuttle/syndicate) -"afw" = ( -/obj/structure/shuttle/engine/propulsion, -/turf/open/floor/plating, -/area/shuttle/syndicate) -"afx" = ( -/obj/structure/shuttle/engine/propulsion{ - icon_state = "propulsion_r" - }, -/turf/open/floor/plating, -/area/shuttle/syndicate) -"afy" = ( -/turf/closed/wall, -/area/security/transfer) -"afz" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 6 - }, -/turf/closed/wall, -/area/security/transfer) -"afA" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/security/transfer) -"afB" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 1 - }, -/turf/closed/wall, -/area/security/transfer) -"afC" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 10 - }, -/turf/closed/wall/r_wall, -/area/security/transfer) -"afD" = ( -/obj/machinery/vending/sustenance, -/turf/open/floor/plasteel/black, -/area/security/prison) -"afE" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/black, -/area/security/prison) -"afF" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/hidden, -/turf/open/floor/plasteel/black, -/area/security/prison) -"afG" = ( -/obj/machinery/light/small{ - dir = 1 - }, -/obj/structure/window/reinforced{ - dir = 8 - }, -/turf/open/floor/plasteel/freezer, -/area/security/prison) -"afH" = ( -/obj/machinery/shower{ - dir = 8 - }, -/obj/item/weapon/soap/nanotrasen, -/turf/open/floor/plasteel/freezer, -/area/security/prison) -"afI" = ( -/obj/machinery/teleport/station, -/turf/open/floor/plating/warnplate{ - dir = 4 - }, -/area/ai_monitored/turret_protected/aisat_interior) -"afJ" = ( -/turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/aisat_interior) -"afK" = ( -/obj/item/device/radio/intercom{ - name = "Station Intercom (General)"; - pixel_y = -28 - }, -/turf/open/floor/plasteel/darkblue/side{ - tag = "icon-darkblue (EAST)"; - dir = 4 - }, -/area/ai_monitored/turret_protected/aisat_interior) -"afL" = ( -/obj/structure/transit_tube/station/reverse/flipped{ - dir = 4 - }, -/turf/open/floor/plating/warnplate{ - dir = 8 - }, -/area/ai_monitored/turret_protected/aisat_interior) -"afM" = ( -/turf/open/space, -/obj/machinery/porta_turret/syndicate{ - dir = 6 - }, -/turf/closed/wall/mineral/plastitanium{ - dir = 4; - icon_state = "diagonalWall3" - }, -/area/shuttle/syndicate) -"afN" = ( -/turf/open/space, -/obj/machinery/porta_turret/syndicate{ - dir = 10 - }, -/turf/closed/wall/mineral/plastitanium{ - icon_state = "diagonalWall3" - }, -/area/shuttle/syndicate) -"afO" = ( -/obj/machinery/door/poddoor{ - id = "executionspaceblast"; - name = "blast door" - }, -/turf/open/floor/plating, -/area/security/transfer) -"afP" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/darkwarning{ - dir = 9 - }, -/area/security/transfer) -"afQ" = ( -/obj/machinery/light/small{ - dir = 1 - }, -/obj/machinery/flasher{ - id = "executionflash"; - pixel_x = 0; - pixel_y = 25 - }, -/turf/open/floor/plasteel/darkwarning{ - dir = 1 - }, -/area/security/transfer) -"afR" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/darkwarning{ - dir = 5 - }, -/area/security/transfer) -"afS" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall/r_wall, -/area/security/transfer) -"afT" = ( -/obj/machinery/vending/cola, -/turf/open/floor/plasteel/black, -/area/security/prison) -"afU" = ( -/obj/machinery/door/window/westleft{ - base_state = "right"; - dir = 8; - icon_state = "right"; - name = "Unisex Showers"; - req_access_txt = "0" - }, -/turf/open/floor/plasteel/freezer, -/area/security/prison) -"afV" = ( -/turf/open/floor/plasteel/freezer, -/area/security/prison) -"afW" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/ai_monitored/turret_protected/aisat_interior) -"afX" = ( -/obj/machinery/computer/teleporter, -/turf/open/floor/plating/warnplate{ - dir = 4 - }, -/area/ai_monitored/turret_protected/aisat_interior) -"afY" = ( -/obj/machinery/light, -/turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/aisat_interior) -"afZ" = ( -/obj/machinery/door/airlock/external{ - cyclelinkeddir = 2; - name = "MiniSat External Access"; - req_access = null; - req_access_txt = "65" - }, -/turf/open/floor/plating, -/area/ai_monitored/turret_protected/aisat_interior) -"aga" = ( -/obj/structure/transit_tube, -/turf/open/floor/plating/warnplate{ - dir = 8 - }, -/area/ai_monitored/turret_protected/aisat_interior) -"agb" = ( -/turf/open/floor/plasteel/darkwarning{ - dir = 8 - }, -/area/security/transfer) -"agc" = ( -/obj/structure/bed, -/obj/effect/landmark{ - name = "revenantspawn" - }, -/turf/open/floor/plasteel/black, -/area/security/transfer) -"agd" = ( -/obj/machinery/sparker{ - dir = 2; - id = "executionburn"; - pixel_x = 25 - }, -/turf/open/floor/plasteel/darkwarning{ - dir = 4 - }, -/area/security/transfer) -"age" = ( -/turf/closed/wall, -/area/security/prison) -"agf" = ( -/obj/machinery/door/poddoor/preopen{ - id = "permacell2"; - name = "cell blast door" - }, -/obj/machinery/door/airlock/glass{ - id_tag = "permabolt2"; - name = "Cell 2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/vault, -/area/security/prison) -"agg" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/hidden, -/turf/closed/wall, -/area/security/prison) -"agh" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/door/poddoor/preopen{ - id = "permacell1"; - name = "cell blast door" - }, -/obj/machinery/door/airlock/glass{ - id_tag = "permabolt1"; - name = "Cell 1" - }, -/turf/open/floor/plasteel/vault, -/area/security/prison) -"agi" = ( -/obj/machinery/door/airlock{ - name = "Unisex Restroom"; - req_access_txt = "0" - }, -/turf/open/floor/plasteel/freezer, -/area/security/prison) -"agj" = ( -/obj/machinery/light/small{ - dir = 8 - }, -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; - icon_state = "space"; - layer = 4; - name = "EXTERNAL AIRLOCK"; - pixel_x = 32; - pixel_y = 0 - }, -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; - icon_state = "space"; - layer = 4; - name = "EXTERNAL AIRLOCK"; - pixel_x = -32; - pixel_y = 0 - }, -/turf/open/floor/plating, -/area/ai_monitored/turret_protected/aisat_interior) -"agk" = ( -/obj/structure/window/reinforced/fulltile, -/obj/structure/transit_tube, -/turf/open/floor/plating, -/area/ai_monitored/turret_protected/aisat_interior) -"agl" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - on = 1 - }, -/turf/open/floor/plasteel/darkwarning{ - dir = 10 - }, -/area/security/transfer) -"agm" = ( -/turf/open/floor/plasteel/darkwarning{ - dir = 2 - }, -/area/security/transfer) -"agn" = ( -/obj/machinery/atmospherics/components/unary/outlet_injector/on{ - dir = 2 - }, -/turf/open/floor/plasteel/darkwarning{ - dir = 6 - }, -/area/security/transfer) -"ago" = ( -/obj/structure/bed, -/obj/machinery/camera{ - c_tag = "Permabrig Cell 2"; - network = list("SS13","Prison") - }, -/obj/item/device/radio/intercom{ - desc = "Talk through this. It looks like it has been modified to not broadcast."; - dir = 2; - name = "Prison Intercom (General)"; - pixel_x = 0; - pixel_y = 24; - prison_radio = 1 - }, -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/plasteel/floorgrime, -/area/security/prison) -"agp" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 8; - initialize_directions = 11 - }, -/turf/open/floor/plasteel/floorgrime, -/area/security/prison) -"agq" = ( -/obj/machinery/light/small{ - dir = 1 - }, -/obj/machinery/button/door{ - id = "permabolt2"; - name = "Cell Bolt Control"; - normaldoorcontrol = 1; - pixel_x = 0; - pixel_y = 25; - req_access_txt = "0"; - specialfunctions = 4 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/obj/structure/chair, -/turf/open/floor/plasteel/floorgrime, -/area/security/prison) -"agr" = ( -/obj/structure/bed, -/obj/machinery/camera{ - c_tag = "Permabrig Cell 1"; - network = list("SS13","Prison") - }, -/obj/item/device/radio/intercom{ - desc = "Talk through this. It looks like it has been modified to not broadcast."; - dir = 2; - name = "Prison Intercom (General)"; - pixel_x = 0; - pixel_y = 24; - prison_radio = 1 - }, -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/plasteel/floorgrime, -/area/security/prison) -"ags" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 6 - }, -/turf/open/floor/plasteel/floorgrime, -/area/security/prison) -"agt" = ( -/obj/machinery/light/small{ - dir = 1 - }, -/obj/machinery/button/door{ - id = "permabolt1"; - name = "Cell Bolt Control"; - normaldoorcontrol = 1; - pixel_x = 0; - pixel_y = 25; - req_access_txt = "0"; - specialfunctions = 4 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/obj/structure/chair, -/turf/open/floor/plasteel/floorgrime, -/area/security/prison) -"agu" = ( -/obj/structure/sink{ - icon_state = "sink"; - dir = 8; - pixel_x = -12; - pixel_y = 2 - }, -/obj/machinery/light/small{ - dir = 4 - }, -/turf/open/floor/plasteel/freezer, -/area/security/prison) -"agv" = ( -/obj/structure/grille, -/turf/open/space, -/area/space) -"agw" = ( -/turf/closed/wall, -/area/security/main) -"agx" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/main) -"agy" = ( -/obj/machinery/door/airlock/external{ - cyclelinkeddir = 1; - name = "MiniSat External Access"; - req_access = null; - req_access_txt = "65" - }, -/turf/open/floor/plating, -/area/ai_monitored/turret_protected/aisat_interior) -"agz" = ( -/obj/structure/transit_tube, -/turf/open/floor/plating/airless, -/area/space) -"agA" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor/preopen{ - id = "executionfireblast"; - layer = 2.9; - name = "blast door" - }, -/obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/simple/cyan/hidden, -/turf/open/floor/plating, -/area/security/transfer) -"agB" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor/preopen{ - id = "executionfireblast"; - layer = 2.9; - name = "blast door" - }, -/obj/machinery/door/firedoor, -/turf/open/floor/plating, -/area/security/transfer) -"agC" = ( -/obj/machinery/door/poddoor/preopen{ - id = "executionfireblast"; - layer = 2.9; - name = "blast door" - }, -/obj/machinery/atmospherics/pipe/simple/general/hidden, -/obj/machinery/door/firedoor, -/obj/machinery/door/window/westright{ - dir = 1; - name = "Transfer Room"; - req_access_txt = "2" - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/security/transfer) -"agD" = ( -/obj/machinery/flasher{ - id = "PCell 2"; - pixel_x = -28 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - on = 1 - }, -/turf/open/floor/plasteel/floorgrime, -/area/security/prison) -"agE" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/floorgrime, -/area/security/prison) -"agF" = ( -/obj/structure/table, -/obj/item/weapon/paper{ - layer = 2.9 - }, -/obj/item/weapon/pen, -/turf/open/floor/plasteel/floorgrime, -/area/security/prison) -"agG" = ( -/obj/machinery/flasher{ - id = "PCell 1"; - pixel_x = -28 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - on = 1 - }, -/turf/open/floor/plasteel/floorgrime, -/area/security/prison) -"agH" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/floorgrime, -/area/security/prison) -"agI" = ( -/obj/structure/toilet{ - dir = 1 - }, -/turf/open/floor/plasteel/freezer, -/area/security/prison) -"agJ" = ( -/obj/structure/closet/wardrobe/red, -/turf/open/floor/plasteel/showroomfloor, -/area/security/main) -"agK" = ( -/obj/structure/closet/secure_closet/security/sec, -/turf/open/floor/plasteel/showroomfloor, -/area/security/main) -"agL" = ( -/obj/structure/closet/secure_closet/security/sec, -/obj/machinery/camera{ - c_tag = "Brig Equipment Room"; - dir = 2 - }, -/obj/item/device/radio/intercom{ - name = "Station Intercom (General)"; - pixel_y = 29 - }, -/turf/open/floor/plasteel/showroomfloor, -/area/security/main) -"agM" = ( -/obj/machinery/vending/security, -/turf/open/floor/plasteel/showroomfloor, -/area/security/main) -"agN" = ( -/obj/machinery/suit_storage_unit/security, -/turf/open/floor/plasteel/showroomfloor, -/area/security/main) -"agO" = ( -/obj/structure/lattice/catwalk, -/obj/structure/showcase{ - density = 0; - desc = "An old, deactivated cyborg. Whilst once actively used to guard against intruders, it now simply intimidates them with its cold, steely gaze."; - dir = 2; - icon = 'icons/mob/robots.dmi'; - icon_state = "robot_old"; - name = "Cyborg Statue"; - pixel_x = 0; - pixel_y = 20 - }, -/turf/open/space, -/area/space) -"agP" = ( -/obj/structure/lattice/catwalk, -/turf/open/space, -/area/space) -"agQ" = ( -/obj/item/device/radio/intercom{ - freerange = 0; - frequency = 1459; - name = "Station Intercom (General)"; - pixel_x = -28; - pixel_y = 0 - }, -/obj/structure/table, -/obj/item/weapon/storage/backpack/dufflebag/sec{ - contents = newlist(/obj/item/weapon/scalpel,/obj/item/weapon/hemostat,/obj/item/weapon/retractor,/obj/item/weapon/cautery,/obj/item/weapon/circular_saw,/obj/item/weapon/surgical_drapes,/obj/item/clothing/mask/surgical); - desc = "A large dufflebag for holding extra supplies - this one has a material inlay with space for various sharp-looking tools."; - name = "dufflebag"; - pixel_y = 5 - }, -/obj/item/clothing/mask/balaclava, -/obj/item/device/mmi, -/obj/machinery/atmospherics/pipe/simple/cyan/hidden, -/turf/open/floor/plasteel/black, -/area/security/transfer) -"agR" = ( -/obj/structure/table, -/obj/item/weapon/folder/red{ - pixel_x = 3 - }, -/obj/item/device/taperecorder{ - pixel_x = -3; - pixel_y = 0 - }, -/turf/open/floor/plasteel/black, -/area/security/transfer) -"agS" = ( -/obj/machinery/button/flasher{ - id = "executionflash"; - pixel_x = 24; - pixel_y = 5 - }, -/obj/machinery/button/door{ - id = "executionspaceblast"; - name = "Vent to Space"; - pixel_x = 25; - pixel_y = -5; - req_access_txt = "7" - }, -/obj/machinery/atmospherics/pipe/simple/general/hidden, -/turf/open/floor/plasteel/black, -/area/security/transfer) -"agT" = ( -/obj/machinery/door/airlock/glass_security{ - name = "Long-Term Cell 2"; - req_access_txt = "2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/floorgrime, -/area/security/prison) -"agU" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/hidden{ - tag = "icon-intact (NORTHEAST)"; - icon_state = "intact"; - dir = 5 - }, -/turf/closed/wall, -/area/security/prison) -"agV" = ( -/obj/machinery/atmospherics/pipe/manifold/cyan/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/closed/wall, -/area/security/prison) -"agW" = ( -/obj/machinery/door/airlock/glass_security{ - name = "Long-Term Cell 1"; - req_access_txt = "2" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/floorgrime, -/area/security/prison) -"agX" = ( -/turf/open/floor/plasteel/showroomfloor, -/area/security/main) -"agY" = ( -/obj/structure/transit_tube/crossing, -/turf/open/floor/plating/airless, -/area/space) -"agZ" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/structure/cable{ - icon_state = "0-2"; - pixel_y = 1; - d2 = 2 - }, -/turf/open/floor/plating, -/area/security/transfer) -"aha" = ( -/obj/machinery/portable_atmospherics/canister/nitrous_oxide, -/obj/machinery/atmospherics/components/unary/portables_connector/visible, -/turf/open/floor/plating/warnplate{ - dir = 9 - }, -/area/security/transfer) -"ahb" = ( -/obj/structure/window/reinforced{ - dir = 4 - }, -/obj/machinery/portable_atmospherics/canister/carbon_dioxide, -/obj/machinery/atmospherics/components/unary/portables_connector/visible, -/turf/open/floor/plating/warnplate{ - dir = 1 - }, -/area/security/transfer) -"ahc" = ( -/obj/structure/table, -/obj/item/device/flashlight/lamp, -/obj/machinery/atmospherics/pipe/simple/cyan/hidden, -/turf/open/floor/plasteel/black, -/area/security/transfer) -"ahd" = ( -/obj/structure/chair{ - dir = 1 - }, -/turf/open/floor/plasteel/black, -/area/security/transfer) -"ahe" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/obj/machinery/button/ignition{ - id = "executionburn"; - pixel_x = 24; - pixel_y = 5 - }, -/obj/machinery/button/door{ - id = "executionfireblast"; - name = "Transfer Area Lockdown"; - pixel_x = 25; - pixel_y = -5; - req_access_txt = "2" - }, -/obj/machinery/atmospherics/pipe/simple/general/hidden, -/turf/open/floor/plasteel/black, -/area/security/transfer) -"ahf" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/closed/wall/r_wall, -/area/security/transfer) -"ahg" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/red, -/area/security/prison) -"ahh" = ( -/obj/machinery/light{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/simple/cyan/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/button/flasher{ - id = "PCell 2"; - pixel_x = 5; - pixel_y = 24 - }, -/obj/machinery/button/door{ - id = "permacell2"; - name = "Cell 2 Lockdown"; - pixel_x = 4; - pixel_y = 34; - req_access_txt = "2" - }, -/turf/open/floor/plasteel/red/side{ - dir = 5 - }, -/area/security/prison) -"ahi" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/open/floor/plasteel/red/side{ - dir = 5 - }, -/area/security/prison) -"ahj" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/red/side{ - dir = 5 - }, -/area/security/prison) -"ahk" = ( -/obj/machinery/camera{ - c_tag = "Brig Prison Hallway"; - network = list("SS13","Prison") - }, -/obj/machinery/computer/security/telescreen{ - desc = "Used for watching Prison Wing holding areas."; - name = "Prison Monitor"; - network = list("Prison"); - pixel_x = 0; - pixel_y = 30 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/red/side{ - dir = 5 - }, -/area/security/prison) -"ahl" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4"; - tag = "" - }, -/obj/machinery/atmospherics/pipe/simple/cyan/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/button/flasher{ - id = "PCell 1"; - pixel_x = 5; - pixel_y = 24 - }, -/obj/machinery/button/door{ - id = "permacell1"; - name = "Cell 1 Lockdown"; - pixel_x = 4; - pixel_y = 34; - req_access_txt = "2" - }, -/turf/open/floor/plasteel/red/side{ - dir = 5 - }, -/area/security/prison) -"ahm" = ( -/obj/structure/cable{ - icon_state = "1-8" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/red/side{ - dir = 5 - }, -/area/security/prison) -"ahn" = ( -/obj/machinery/light{ - dir = 1 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/turf/open/floor/plasteel/red/side{ - dir = 5 - }, -/area/security/prison) -"aho" = ( -/obj/machinery/power/apc{ - cell_type = 5000; - dir = 1; - name = "Prison Wing APC"; - pixel_x = 1; - pixel_y = 24 - }, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/turf/open/floor/plasteel/red/side{ - dir = 5 - }, -/area/security/prison) -"ahp" = ( -/obj/structure/table, -/obj/item/weapon/melee/chainofcommand, -/turf/open/floor/plasteel/red, -/area/security/prison) -"ahq" = ( -/turf/closed/wall/r_wall, -/area/security/armory) -"ahr" = ( -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/cyan/hidden{ - tag = "icon-intact (SOUTHEAST)"; - icon_state = "intact"; - dir = 6 - }, -/turf/open/floor/plasteel/showroomfloor, -/area/security/main) -"ahs" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - layer = 2.4; - on = 1 - }, -/turf/open/floor/plasteel/showroomfloor, -/area/security/main) -"aht" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 6 - }, -/turf/open/floor/plasteel/showroomfloor, -/area/security/main) -"ahu" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/showroomfloor, -/area/security/main) -"ahv" = ( -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/obj/structure/extinguisher_cabinet{ - pixel_x = 27; - pixel_y = 0 - }, -/turf/open/floor/plasteel/showroomfloor, -/area/security/main) -"ahw" = ( -/obj/machinery/atmospherics/pipe/manifold/general/visible{ - dir = 8 - }, -/obj/machinery/light/small{ - dir = 8 - }, -/obj/machinery/portable_atmospherics/canister/nitrous_oxide, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/turf/open/floor/plating/warnplate{ - dir = 8 - }, -/area/security/transfer) -"ahx" = ( -/obj/structure/window/reinforced{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/general/visible{ - dir = 9 - }, -/obj/item/weapon/wrench, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/turf/open/floor/plating, -/area/security/transfer) -"ahy" = ( -/obj/structure/rack, -/obj/item/weapon/tank/internals/anesthetic{ - pixel_x = -3; - pixel_y = 1 - }, -/obj/item/weapon/tank/internals/oxygen/red{ - pixel_x = 3 - }, -/obj/machinery/atmospherics/pipe/simple/cyan/hidden{ - tag = "icon-intact (NORTHEAST)"; - icon_state = "intact"; - dir = 5 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/security/transfer) -"ahz" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4"; - tag = "" - }, -/obj/machinery/atmospherics/pipe/manifold/cyan/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/turf/open/floor/plasteel/black, -/area/security/transfer) -"ahA" = ( -/obj/machinery/atmospherics/pipe/simple/general/hidden, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/machinery/atmospherics/pipe/simple/cyan/hidden{ - tag = "icon-intact (EAST)"; - icon_state = "intact"; - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/security/transfer) -"ahB" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/security{ - aiControlDisabled = 0; - icon_state = "door_closed"; - id_tag = null; - locked = 0; - name = "Prisoner Transfer Centre"; - req_access = null; - req_access_txt = "2" - }, -/obj/machinery/atmospherics/pipe/simple/cyan/hidden{ - tag = "icon-intact (EAST)"; - icon_state = "intact"; - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/security/transfer) -"ahC" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/machinery/atmospherics/pipe/simple/cyan/hidden{ - tag = "icon-intact (EAST)"; - icon_state = "intact"; - dir = 4 - }, -/turf/open/floor/plasteel/red/side{ - dir = 8 - }, -/area/security/prison) -"ahD" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/machinery/atmospherics/pipe/manifold/cyan/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plasteel, -/area/security/prison) -"ahE" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - on = 1 - }, -/turf/open/floor/plasteel, -/area/security/prison) -"ahF" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/turf/open/floor/plasteel, -/area/security/prison) -"ahG" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8"; - tag = "" - }, -/obj/machinery/atmospherics/pipe/simple/cyan/hidden, -/turf/open/floor/plasteel, -/area/security/prison) -"ahH" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 8; - initialize_directions = 11 - }, -/turf/open/floor/plasteel, -/area/security/prison) -"ahI" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel, -/area/security/prison) -"ahJ" = ( -/turf/open/floor/plasteel, -/area/security/prison) -"ahK" = ( -/obj/structure/table, -/obj/item/weapon/razor{ - pixel_x = -6 - }, -/obj/item/device/assembly/signaler{ - pixel_x = 4 - }, -/obj/structure/extinguisher_cabinet{ - pixel_x = 27; - pixel_y = 0 - }, -/turf/open/floor/plasteel/red, -/area/security/prison) -"ahL" = ( -/obj/structure/table, -/obj/item/weapon/storage/box/chemimp{ - pixel_x = 6 - }, -/obj/item/weapon/storage/box/trackimp{ - pixel_x = -3 - }, -/turf/open/floor/plasteel/black, -/area/security/armory) -"ahM" = ( -/obj/structure/closet/secure_closet{ - anchored = 1; - name = "Contraband Locker"; - req_access_txt = "3" - }, -/obj/item/weapon/book/codex_gigas, -/obj/item/weapon/poster/contraband, -/obj/item/weapon/grenade/smokebomb, -/turf/open/floor/plasteel/black, -/area/security/armory) -"ahN" = ( -/obj/structure/closet/secure_closet/lethalshots, -/obj/machinery/camera/motion{ - c_tag = "Armory Motion Sensor"; - dir = 2; - name = "motion-sensitive security camera" - }, -/turf/open/floor/plasteel/black, -/area/security/armory) -"ahO" = ( -/obj/vehicle/secway, -/turf/open/floor/plasteel/black, -/area/security/armory) -"ahP" = ( -/obj/item/weapon/grenade/barrier{ - pixel_x = 4 - }, -/obj/item/weapon/grenade/barrier, -/obj/item/weapon/grenade/barrier{ - pixel_x = -4 - }, -/obj/structure/table, -/turf/open/floor/plasteel/black, -/area/security/armory) -"ahQ" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/hidden, -/turf/open/floor/plasteel/showroomfloor, -/area/security/main) -"ahR" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/showroomfloor, -/area/security/main) -"ahS" = ( -/obj/vehicle/secway, -/obj/item/key/security, -/turf/open/floor/plasteel/showroomfloor, -/area/security/main) -"ahT" = ( -/obj/structure/tank_dispenser/oxygen, -/turf/open/floor/plasteel/showroomfloor, -/area/security/main) -"ahU" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Brig Maintenance" - }) -"ahV" = ( -/turf/closed/wall, -/area/maintenance/fpmaint2{ - name = "Brig Maintenance" - }) -"ahW" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible{ - dir = 5 - }, -/turf/open/floor/plating/warnplate{ - dir = 10 - }, -/area/security/transfer) -"ahX" = ( -/obj/machinery/atmospherics/components/binary/pump{ - dir = 4; - layer = 2.4 - }, -/obj/machinery/door/window/southleft{ - base_state = "right"; - dir = 4; - icon_state = "right"; - name = "Armory"; - req_access_txt = "2" - }, -/turf/open/floor/plating/warnplate, -/area/security/transfer) -"ahY" = ( -/obj/machinery/atmospherics/pipe/simple/general/hidden{ - icon_state = "intact"; - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/security/transfer) -"ahZ" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - external_pressure_bound = 101.325; - on = 1; - pressure_checks = 1 - }, -/obj/machinery/atmospherics/pipe/simple/general/hidden{ - icon_state = "intact"; - dir = 4 - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/black, -/area/security/transfer) -"aia" = ( -/obj/machinery/light_switch{ - pixel_x = 25; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/general/hidden{ - dir = 9 - }, -/turf/open/floor/plasteel/black, -/area/security/transfer) -"aib" = ( -/turf/closed/wall/r_wall, -/area/security/transfer) -"aic" = ( -/turf/open/floor/plasteel/red, -/area/security/prison) -"aid" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/hidden{ - tag = "icon-intact (NORTHEAST)"; - icon_state = "intact"; - dir = 5 - }, -/turf/open/floor/plasteel/red/side{ - dir = 6 - }, -/area/security/prison) -"aie" = ( -/obj/machinery/atmospherics/pipe/manifold/cyan/hidden, -/turf/open/floor/plasteel/red/side{ - dir = 6 - }, -/area/security/prison) -"aif" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/hidden{ - tag = "icon-intact (EAST)"; - icon_state = "intact"; - dir = 4 - }, -/turf/open/floor/plasteel/red/side{ - dir = 6 - }, -/area/security/prison) -"aig" = ( -/obj/machinery/atmospherics/pipe/manifold/cyan/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plasteel/red/side{ - dir = 6 - }, -/area/security/prison) -"aih" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/cyan/hidden{ - tag = "icon-intact (NORTHWEST)"; - icon_state = "intact"; - dir = 9 - }, -/turf/open/floor/plasteel/red/side{ - dir = 6 - }, -/area/security/prison) -"aii" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/red/side{ - dir = 6 - }, -/area/security/prison) -"aij" = ( -/turf/open/floor/plasteel/red/side{ - dir = 6 - }, -/area/security/prison) -"aik" = ( -/obj/machinery/airalarm{ - dir = 1; - pixel_y = -22 - }, -/turf/open/floor/plasteel/red/side{ - dir = 6 - }, -/area/security/prison) -"ail" = ( -/obj/structure/table, -/obj/item/device/electropack, -/turf/open/floor/plasteel/red, -/area/security/prison) -"aim" = ( -/obj/structure/table, -/obj/item/weapon/storage/box/flashbangs{ - pixel_x = 6; - pixel_y = 3 - }, -/obj/item/weapon/storage/box/flashbangs{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/weapon/storage/lockbox/loyalty{ - layer = 4 - }, -/turf/open/floor/plasteel/black, -/area/security/armory) -"ain" = ( -/turf/open/floor/plasteel/black, -/area/security/armory) -"aio" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4"; - tag = "" - }, -/turf/open/floor/plasteel/black, -/area/security/armory) -"aip" = ( -/obj/structure/table, -/obj/item/weapon/storage/box/firingpins, -/obj/item/weapon/storage/box/firingpins, -/obj/item/key/security, -/obj/machinery/power/apc{ - cell_type = 5000; - dir = 4; - name = "Armory APC"; - pixel_x = 24; - pixel_y = 0 - }, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/turf/open/floor/plasteel/black, -/area/security/armory) -"aiq" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/security{ - name = "Equipment Room"; - req_access = null; - req_access_txt = "1" - }, -/obj/machinery/atmospherics/pipe/simple/cyan/hidden, -/turf/open/floor/plasteel/delivery, -/area/security/main) -"air" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/security{ - name = "Equipment Room"; - req_access = null; - req_access_txt = "1" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/delivery, -/area/security/main) -"ais" = ( -/turf/closed/wall, -/area/security/hos) -"ait" = ( -/turf/closed/wall, -/area/maintenance/fsmaint) -"aiu" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/maintenance/fsmaint) -"aiv" = ( -/obj/structure/table, -/obj/machinery/microwave, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Brig Maintenance" - }) -"aiw" = ( -/obj/structure/table, -/obj/structure/bedsheetbin, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Brig Maintenance" - }) -"aix" = ( -/obj/structure/sink/kitchen{ - pixel_y = 28 - }, -/obj/item/weapon/reagent_containers/glass/beaker, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Brig Maintenance" - }) -"aiy" = ( -/obj/structure/table, -/obj/item/device/flashlight/lamp, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Brig Maintenance" - }) -"aiz" = ( -/obj/structure/table, -/obj/item/weapon/storage/box/bodybags, -/obj/item/weapon/pen, -/obj/machinery/firealarm{ - dir = 1; - pixel_y = -24 - }, -/obj/machinery/airalarm{ - dir = 4; - pixel_x = -23; - pixel_y = 0 - }, -/turf/open/floor/plasteel/black, -/area/security/transfer) -"aiA" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0; - tag = "" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4"; - tag = "" - }, -/turf/open/floor/plasteel/black, -/area/security/transfer) -"aiB" = ( -/obj/structure/closet/secure_closet/injection, -/obj/machinery/power/apc{ - dir = 4; - name = "Prisoner Transfer Centre"; - pixel_x = 24; - pixel_y = 0 - }, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/turf/open/floor/plasteel/black, -/area/security/transfer) -"aiC" = ( -/obj/structure/closet/secure_closet/brig{ - anchored = 1 - }, -/turf/open/floor/plasteel/black, -/area/security/prison) -"aiD" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass_security{ - name = "Prison Wing"; - req_access_txt = "1" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/cyan/hidden, -/turf/open/floor/plasteel/red, -/area/security/prison) -"aiE" = ( -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/obj/structure/cable, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/prison) -"aiF" = ( -/obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/door/airlock/glass_security{ - name = "Prison Wing"; - req_access_txt = "1" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/red, -/area/security/prison) -"aiG" = ( -/obj/structure/rack, -/obj/item/weapon/gun/energy/ionrifle, -/obj/item/weapon/gun/energy/temperature/security, -/obj/item/clothing/suit/armor/laserproof, -/obj/machinery/light{ - dir = 8; - icon_state = "tube1"; - pixel_x = 0 - }, -/obj/machinery/airalarm{ - dir = 4; - pixel_x = -23; - pixel_y = 0 - }, -/turf/open/floor/plasteel/black, -/area/security/armory) -"aiH" = ( -/obj/structure/rack, -/obj/item/clothing/suit/armor/riot{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/clothing/suit/armor/riot, -/obj/item/clothing/suit/armor/riot{ - pixel_x = 3; - pixel_y = -3 - }, -/obj/item/clothing/head/helmet/riot{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/clothing/head/helmet/riot, -/obj/item/clothing/head/helmet/riot{ - pixel_x = 3; - pixel_y = -3 - }, -/obj/item/weapon/shield/riot{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/weapon/shield/riot, -/obj/item/weapon/shield/riot{ - pixel_x = 3; - pixel_y = -3 - }, -/turf/open/floor/plasteel/black, -/area/security/armory) -"aiI" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/black, -/area/security/armory) -"aiJ" = ( -/obj/structure/rack, -/obj/item/weapon/storage/box/rubbershot{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/weapon/storage/box/rubbershot{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/weapon/storage/box/rubbershot, -/obj/item/weapon/storage/box/rubbershot, -/obj/item/weapon/storage/box/rubbershot{ - pixel_x = 3; - pixel_y = -3 - }, -/obj/item/weapon/storage/box/rubbershot{ - pixel_x = 3; - pixel_y = -3 - }, -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/obj/structure/sign/nosmoking_2{ - pixel_x = 32 - }, -/turf/open/floor/plasteel/black, -/area/security/armory) -"aiK" = ( -/obj/effect/landmark/start{ - name = "Security Officer" - }, -/obj/machinery/atmospherics/pipe/simple/cyan/hidden, -/turf/open/floor/plasteel/red, -/area/security/main) -"aiL" = ( -/obj/structure/filingcabinet, -/obj/machinery/requests_console{ - department = "Security"; - departmentType = 5; - pixel_x = 0; - pixel_y = 30 - }, -/turf/open/floor/plasteel/red/side{ - dir = 1 - }, -/area/security/main) -"aiM" = ( -/obj/structure/table, -/obj/item/weapon/storage/fancy/donut_box{ - pixel_y = 2 - }, -/obj/structure/noticeboard{ - pixel_y = 32 - }, -/turf/open/floor/plasteel/red/side{ - dir = 1 - }, -/area/security/main) -"aiN" = ( -/obj/structure/table, -/obj/structure/sign/goldenplaque{ - pixel_y = 32 - }, -/obj/machinery/light{ - dir = 1 - }, -/obj/item/weapon/storage/box/handcuffs{ - pixel_x = 1; - pixel_y = 3 - }, -/turf/open/floor/plasteel/red/side{ - dir = 1 - }, -/area/security/main) -"aiO" = ( -/obj/machinery/vending/coffee, -/obj/machinery/status_display{ - density = 0; - layer = 4; - pixel_x = 0; - pixel_y = 32 - }, -/turf/open/floor/plasteel/red/side{ - dir = 1 - }, -/area/security/main) -"aiP" = ( -/obj/machinery/photocopier, -/obj/machinery/computer/security/telescreen/entertainment{ - pixel_y = 32 - }, -/turf/open/floor/plasteel/red/side{ - dir = 1 - }, -/area/security/main) -"aiQ" = ( -/obj/effect/landmark/start{ - name = "Security Officer" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/reagent_dispensers/peppertank{ - pixel_x = 32; - pixel_y = 0 - }, -/turf/open/floor/plasteel/red, -/area/security/main) -"aiR" = ( -/obj/item/weapon/reagent_containers/food/snacks/donut, -/turf/open/floor/plating, -/area/security/hos) -"aiS" = ( -/obj/structure/table, -/obj/machinery/chem_dispenser/drinks/beer, -/turf/open/floor/plating, -/area/maintenance/fsmaint) -"aiT" = ( -/turf/open/floor/plating{ - broken = 1; - icon_state = "platingdmg3" - }, -/area/maintenance/fsmaint) -"aiU" = ( -/turf/open/floor/plating, -/area/maintenance/fsmaint) -"aiV" = ( -/obj/machinery/vending/boozeomat{ - products = list(/obj/item/weapon/reagent_containers/food/drinks/bottle/whiskey = 1, /obj/item/weapon/reagent_containers/food/drinks/bottle/absinthe = 1, /obj/item/weapon/reagent_containers/food/drinks/bottle/limejuice = 1, /obj/item/weapon/reagent_containers/food/drinks/bottle/cream = 1, /obj/item/weapon/reagent_containers/food/drinks/soda_cans/tonic = 1, /obj/item/weapon/reagent_containers/food/drinks/drinkingglass = 10, /obj/item/weapon/reagent_containers/food/drinks/ice = 3, /obj/item/weapon/reagent_containers/food/drinks/drinkingglass/shotglass = 6, /obj/item/weapon/reagent_containers/food/drinks/flask = 1); - req_access_txt = "0" - }, -/turf/open/floor/plasteel/bar, -/area/maintenance/fsmaint) -"aiW" = ( -/obj/item/weapon/storage/box/mousetraps, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Brig Maintenance" - }) -"aiX" = ( -/obj/structure/chair/stool, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Brig Maintenance" - }) -"aiY" = ( -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Brig Maintenance" - }) -"aiZ" = ( -/obj/structure/bed, -/obj/item/weapon/bedsheet, -/obj/structure/sign/poster{ - pixel_x = 32; - pixel_y = 0 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Brig Maintenance" - }) -"aja" = ( -/obj/machinery/atmospherics/components/unary/tank/oxygen, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Brig Maintenance" - }) -"ajb" = ( -/obj/machinery/atmospherics/components/unary/tank/nitrogen, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Brig Maintenance" - }) -"ajc" = ( -/turf/closed/wall, -/area/security/processing{ - name = "Crematorium" - }) -"ajd" = ( -/obj/machinery/door/airlock/security{ - aiControlDisabled = 0; - icon_state = "closed"; - id_tag = null; - locked = 0; - name = "Crematorium"; - req_access = null; - req_access_txt = "2;27"; - req_one_access_txt = "0" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0; - tag = "" - }, -/turf/open/floor/plasteel/black, -/area/security/processing{ - name = "Crematorium" - }) -"aje" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/poddoor/preopen{ - id = "Prison Gate"; - name = "prison blast door" - }, -/obj/machinery/atmospherics/pipe/simple/cyan/hidden, -/turf/open/floor/plasteel/delivery{ - name = "floor" - }, -/area/security/brig) -"ajf" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/poddoor/preopen{ - id = "Prison Gate"; - name = "prison blast door" - }, -/obj/structure/cable{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/delivery{ - name = "floor" - }, -/area/security/brig) -"ajg" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/poddoor/preopen{ - id = "Prison Gate"; - name = "prison blast door" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/delivery{ - name = "floor" - }, -/area/security/brig) -"ajh" = ( -/turf/closed/wall, -/area/security/brig) -"aji" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - on = 1 - }, -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/plasteel/red/side{ - dir = 9 - }, -/area/security/brig) -"ajj" = ( -/obj/structure/closet{ - name = "Evidence Closet" - }, -/turf/open/floor/plasteel/red/side{ - tag = "icon-red (NORTHEAST)"; - dir = 5 - }, -/area/security/brig) -"ajk" = ( -/obj/structure/rack, -/obj/item/weapon/gun/energy/e_gun{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/weapon/gun/energy/e_gun, -/obj/item/weapon/gun/energy/e_gun{ - pixel_x = 3; - pixel_y = -3 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - on = 1 - }, -/turf/open/floor/plasteel/black, -/area/security/armory) -"ajl" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/black, -/area/security/armory) -"ajm" = ( -/obj/structure/rack, -/obj/item/clothing/suit/armor/bulletproof{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/clothing/suit/armor/bulletproof{ - pixel_y = 0 - }, -/obj/item/clothing/suit/armor/bulletproof{ - pixel_x = 3; - pixel_y = -3 - }, -/obj/item/clothing/head/helmet/alt{ - layer = 3.00001; - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/clothing/head/helmet/alt{ - layer = 3.00001 - }, -/obj/item/clothing/head/helmet/alt{ - layer = 3.00001; - pixel_x = 3; - pixel_y = -3 - }, -/turf/open/floor/plasteel/black, -/area/security/armory) -"ajn" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - on = 1 - }, -/turf/open/floor/plasteel/black, -/area/security/armory) -"ajo" = ( -/obj/structure/rack, -/obj/item/weapon/gun/energy/laser{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/weapon/gun/energy/laser, -/obj/item/weapon/gun/energy/laser{ - pixel_x = 3; - pixel_y = -3 - }, -/turf/open/floor/plasteel/black, -/area/security/armory) -"ajp" = ( -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/obj/machinery/power/apc{ - dir = 8; - name = "Security Office APC"; - pixel_x = -24; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/cyan/hidden, -/turf/open/floor/plasteel/red/side{ - dir = 8 - }, -/area/security/main) -"ajq" = ( -/obj/effect/landmark/start{ - name = "Security Officer" - }, -/turf/open/floor/plasteel, -/area/security/main) -"ajr" = ( -/obj/structure/chair/stool, -/obj/effect/landmark/start{ - name = "Security Officer" - }, -/turf/open/floor/plasteel, -/area/security/main) -"ajs" = ( -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/red/side{ - dir = 4 - }, -/area/security/main) -"ajt" = ( -/obj/machinery/suit_storage_unit/hos, -/obj/machinery/airalarm{ - pixel_y = 22 - }, -/turf/open/floor/plasteel/black, -/area/security/hos) -"aju" = ( -/obj/machinery/disposal/bin, -/obj/structure/disposalpipe/trunk, -/obj/structure/sign/atmosplaque{ - desc = "An embossed piece of paper from the University of Nanotrasen at Portpoint."; - icon_state = "kiddieplaque"; - name = "\improper 'Diploma' frame"; - pixel_x = 0; - pixel_y = 32 - }, -/turf/open/floor/plasteel/black, -/area/security/hos) -"ajv" = ( -/obj/structure/table/wood, -/obj/machinery/recharger, -/obj/machinery/light{ - dir = 1 - }, -/obj/machinery/status_display{ - density = 0; - layer = 4; - pixel_x = 0; - pixel_y = 32 - }, -/turf/open/floor/plasteel/black, -/area/security/hos) -"ajw" = ( -/obj/structure/table/wood, -/obj/item/weapon/storage/box/seccarts{ - pixel_x = 3; - pixel_y = 2 - }, -/obj/item/weapon/storage/box/deputy, -/obj/machinery/newscaster/security_unit{ - pixel_y = 32 - }, -/turf/open/floor/plasteel/black, -/area/security/hos) -"ajx" = ( -/obj/structure/closet/secure_closet/hos, -/obj/machinery/requests_console{ - announcementConsole = 1; - department = "Head of Security's Desk"; - departmentType = 5; - name = "Head of Security RC"; - pixel_x = 0; - pixel_y = 30 - }, -/turf/open/floor/plasteel/black, -/area/security/hos) -"ajy" = ( -/obj/structure/mineral_door/wood, -/turf/open/floor/plating, -/area/maintenance/fsmaint) -"ajz" = ( -/obj/effect/decal/cleanable/oil{ - icon_state = "floor5" - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint) -"ajA" = ( -/obj/item/weapon/cigbutt/cigarbutt, -/obj/structure/sign/poster{ - pixel_x = 32; - pixel_y = 0 - }, -/turf/open/floor/plating{ - burnt = 1; - icon_state = "panelscorched" - }, -/area/maintenance/fsmaint) -"ajB" = ( -/obj/machinery/door/poddoor/shutters{ - id = "supplybridge" - }, -/turf/open/floor/plating/warnplate{ - dir = 9 - }, -/area/maintenance/fsmaint) -"ajC" = ( -/obj/structure/window/reinforced{ - dir = 1; - layer = 2.9 - }, -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/structure/table/glass, -/obj/item/weapon/gun/medbeam, -/turf/open/floor/plating/abductor, -/area/shuttle/abandoned) -"ajD" = ( -/obj/machinery/door/poddoor/shutters{ - id = "supplybridge" - }, -/turf/open/floor/plating/warnplate{ - dir = 5 - }, -/area/maintenance/fsmaint) -"ajE" = ( -/obj/machinery/washing_machine, -/obj/item/device/radio/intercom{ - dir = 4; - name = "Station Intercom (General)"; - pixel_x = -31 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Brig Maintenance" - }) -"ajF" = ( -/obj/machinery/light/small, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Brig Maintenance" - }) -"ajG" = ( -/obj/structure/bed, -/obj/item/weapon/bedsheet, -/obj/machinery/button/door{ - id = "mainthideout"; - name = "Door Bolt Control"; - normaldoorcontrol = 1; - pixel_x = 25; - pixel_y = 0; - req_access_txt = "0"; - specialfunctions = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Brig Maintenance" - }) -"ajH" = ( -/obj/machinery/atmospherics/components/trinary/mixer/flipped{ - dir = 1; - node1_concentration = 0.2; - node2_concentration = 0.8; - on = 1 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Brig Maintenance" - }) -"ajI" = ( -/obj/machinery/atmospherics/pipe/manifold/general/hidden, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Brig Maintenance" - }) -"ajJ" = ( -/obj/machinery/atmospherics/pipe/simple/general/hidden{ - dir = 9 - }, -/obj/machinery/meter, -/obj/machinery/light/small{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Brig Maintenance" - }) -"ajK" = ( -/obj/structure/bodycontainer/crematorium, -/obj/effect/landmark{ - name = "revenantspawn" - }, -/obj/item/device/radio/intercom{ - dir = 0; - name = "Station Intercom (General)"; - pixel_x = -27 - }, -/turf/open/floor/plasteel/black, -/area/security/processing{ - name = "Crematorium" - }) -"ajL" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0; - tag = "" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4"; - tag = "" - }, -/turf/open/floor/plasteel/black, -/area/security/processing{ - name = "Crematorium" - }) -"ajM" = ( -/obj/machinery/button/crematorium{ - pixel_x = 25 - }, -/obj/machinery/power/apc{ - dir = 1; - name = "Crematorium APC"; - pixel_x = 0; - pixel_y = 24 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - on = 1 - }, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/turf/open/floor/plasteel/black, -/area/security/processing{ - name = "Crematorium" - }) -"ajN" = ( -/turf/closed/wall/r_wall, -/area/security/brig) -"ajO" = ( -/obj/item/clothing/gloves/color/latex, -/obj/item/clothing/mask/surgical, -/obj/item/weapon/reagent_containers/spray/cleaner, -/obj/structure/table/glass, -/turf/open/floor/plasteel/whitered/side{ - dir = 9 - }, -/area/security/brig) -"ajP" = ( -/obj/item/weapon/storage/firstaid/regular{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/storage/firstaid/regular, -/obj/structure/table/glass, -/obj/machinery/airalarm{ - pixel_y = 22 - }, -/turf/open/floor/plasteel/whitered/side{ - dir = 1 - }, -/area/security/brig) -"ajQ" = ( -/obj/item/device/radio/intercom{ - freerange = 0; - frequency = 1459; - name = "Station Intercom (General)"; - pixel_x = 0; - pixel_y = 24 - }, -/obj/structure/table/glass, -/obj/machinery/computer/med_data/laptop, -/turf/open/floor/plasteel/whitered/side{ - dir = 1 - }, -/area/security/brig) -"ajR" = ( -/obj/structure/window/reinforced{ - dir = 4 - }, -/obj/machinery/iv_drip{ - density = 0 - }, -/turf/open/floor/plasteel/whitered/side{ - dir = 5 - }, -/area/security/brig) -"ajS" = ( -/obj/machinery/atmospherics/pipe/manifold/cyan/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/plasteel/red/side{ - dir = 8 - }, -/area/security/brig) -"ajT" = ( -/obj/structure/cable{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/cyan/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel, -/area/security/brig) -"ajU" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/hidden{ - tag = "icon-intact (EAST)"; - icon_state = "intact"; - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/security/brig) -"ajV" = ( -/obj/machinery/door/airlock/security{ - name = "Evidence Room"; - req_access_txt = "63" - }, -/obj/machinery/atmospherics/pipe/simple/cyan/hidden{ - tag = "icon-intact (EAST)"; - icon_state = "intact"; - dir = 4 - }, -/turf/open/floor/plasteel/red, -/area/security/brig) -"ajW" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/hidden{ - tag = "icon-intact (NORTHWEST)"; - icon_state = "intact"; - dir = 9 - }, -/turf/open/floor/plasteel, -/area/security/brig) -"ajX" = ( -/obj/structure/closet{ - name = "Evidence Closet" - }, -/obj/machinery/camera{ - c_tag = "Brig Evidence Room"; - dir = 8 - }, -/obj/effect/landmark{ - name = "revenantspawn" - }, -/turf/open/floor/plasteel/red/side{ - tag = "icon-red (EAST)"; - dir = 4 - }, -/area/security/brig) -"ajY" = ( -/obj/structure/rack, -/obj/item/weapon/gun/energy/e_gun/advtaser{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/weapon/gun/energy/e_gun/advtaser, -/obj/item/weapon/gun/energy/e_gun/advtaser{ - pixel_x = 3; - pixel_y = -3 - }, -/turf/open/floor/plasteel/black, -/area/security/armory) -"ajZ" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/black, -/area/security/armory) -"aka" = ( -/obj/effect/landmark/event_spawn, -/mob/living/simple_animal/bot/secbot{ - arrest_type = 1; - health = 45; - icon_state = "secbot1"; - idcheck = 1; - name = "Sergeant-at-Armsky"; - on = 1; - weaponscheck = 1 - }, -/turf/open/floor/plasteel/black, -/area/security/armory) -"akb" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/cyan/hidden, -/turf/open/floor/plasteel/black, -/area/security/armory) -"akc" = ( -/obj/structure/rack, -/obj/item/weapon/gun/ballistic/shotgun/riot{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/weapon/gun/ballistic/shotgun/riot, -/obj/item/weapon/gun/ballistic/shotgun/riot{ - pixel_x = 3; - pixel_y = -3 - }, -/turf/open/floor/plasteel/black, -/area/security/armory) -"akd" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0; - tag = "" - }, -/obj/machinery/newscaster{ - pixel_x = -32 - }, -/obj/machinery/atmospherics/pipe/simple/cyan/hidden, -/turf/open/floor/plasteel/red/side{ - dir = 9 - }, -/area/security/main) -"ake" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/red/side{ - dir = 5 - }, -/area/security/main) -"akf" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/turf/open/floor/plasteel/black, -/area/security/main) -"akg" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/turf/open/floor/plating, -/area/security/hos) -"akh" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8"; - tag = "" - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - on = 1 - }, -/turf/open/floor/plasteel/darkred/corner, -/area/security/hos) -"aki" = ( -/turf/open/floor/plasteel/darkred/side, -/area/security/hos) -"akj" = ( -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/darkred/side, -/area/security/hos) -"akk" = ( -/obj/machinery/keycard_auth{ - pixel_x = 28; - pixel_y = 28 - }, -/turf/open/floor/plasteel/darkred/side, -/area/security/hos) -"akl" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/structure/cable{ - icon_state = "0-2"; - pixel_y = 1; - d2 = 2 - }, -/turf/open/floor/plating, -/area/security/hos) -"akm" = ( -/obj/structure/table, -/obj/item/weapon/lighter, -/obj/machinery/light/small{ - dir = 8 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint) -"akn" = ( -/obj/structure/table, -/obj/item/weapon/storage/fancy/cigarettes/cigars, -/obj/item/stack/spacecash/c20, -/turf/open/floor/plating, -/area/maintenance/fsmaint) -"ako" = ( -/obj/structure/table, -/obj/item/weapon/reagent_containers/food/drinks/bottle/gin{ - pixel_y = 8 - }, -/obj/machinery/light/small{ - dir = 4 - }, -/obj/item/weapon/reagent_containers/food/drinks/drinkingglass/shotglass, -/obj/item/weapon/reagent_containers/food/drinks/drinkingglass/shotglass, -/turf/open/floor/plating, -/area/maintenance/fsmaint) -"akp" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/machinery/light/small{ - brightness = 3; - dir = 8 - }, -/obj/item/weapon/cigbutt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 6 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint) -"akq" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating/warnplate{ - dir = 4 - }, -/area/maintenance/fsmaint) -"akr" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/door/airlock/glass{ - name = "space-bridge access" - }, -/obj/machinery/button/door{ - id = "supplybridge"; - name = "Space Bridge Control"; - pixel_x = 0; - pixel_y = 27; - req_access_txt = "0" - }, -/turf/open/floor/plating/warnplate{ - dir = 4 - }, -/area/maintenance/fsmaint) -"aks" = ( -/obj/structure/chair, -/turf/open/floor/plating/abductor, -/area/shuttle/abandoned) -"akt" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint) -"aku" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/effect/landmark{ - name = "xeno_spawn"; - pixel_x = -1 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint) -"akv" = ( -/obj/structure/window/reinforced{ - dir = 1; - layer = 2.9 - }, -/obj/structure/window/reinforced{ - dir = 4 - }, -/obj/structure/table/glass, -/obj/machinery/recharger, -/obj/item/weapon/gun/energy/laser/retro, -/turf/open/floor/plating/abductor, -/area/shuttle/abandoned) -"akw" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/machinery/light/small{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 10 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint) -"akx" = ( -/obj/machinery/door/airlock{ - id_tag = "mainthideout"; - name = "Hideout" - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Brig Maintenance" - }) -"aky" = ( -/obj/machinery/atmospherics/pipe/manifold/cyan/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/obj/item/weapon/wrench, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Brig Maintenance" - }) -"akz" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible{ - dir = 8 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Brig Maintenance" - }) -"akA" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible, -/obj/machinery/portable_atmospherics/canister/carbon_dioxide, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Brig Maintenance" - }) -"akB" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 2; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/obj/machinery/airalarm{ - dir = 4; - icon_state = "alarm0"; - pixel_x = -22 - }, -/turf/open/floor/plasteel/black, -/area/security/processing{ - name = "Crematorium" - }) -"akC" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0; - tag = "" - }, -/turf/open/floor/plasteel/black, -/area/security/processing{ - name = "Crematorium" - }) -"akD" = ( -/obj/machinery/light/small{ - dir = 4 - }, -/obj/machinery/camera{ - c_tag = "Brig Crematorium"; - dir = 8; - network = list("SS13") - }, -/obj/machinery/atmospherics/pipe/manifold/cyan/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/plasteel/black, -/area/security/processing{ - name = "Crematorium" - }) -"akE" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/hidden{ - tag = "icon-intact (EAST)"; - icon_state = "intact"; - dir = 4 - }, -/turf/closed/wall/r_wall, -/area/security/brig) -"akF" = ( -/obj/item/weapon/storage/box/bodybags, -/obj/structure/extinguisher_cabinet{ - pixel_x = -27; - pixel_y = 0 - }, -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/obj/structure/table/glass, -/obj/machinery/atmospherics/pipe/simple/cyan/hidden{ - tag = "icon-intact (EAST)"; - icon_state = "intact"; - dir = 4 - }, -/obj/item/weapon/reagent_containers/syringe{ - name = "steel point" - }, -/obj/item/weapon/reagent_containers/glass/bottle/charcoal, -/obj/item/weapon/reagent_containers/glass/bottle/epinephrine, -/turf/open/floor/plasteel/whitered/side{ - dir = 10 - }, -/area/security/brig) -"akG" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/hidden{ - tag = "icon-intact (EAST)"; - icon_state = "intact"; - dir = 4 - }, -/turf/open/floor/plasteel/whitered/corner{ - tag = "icon-whiteredcorner (WEST)"; - dir = 8 - }, -/area/security/brig) -"akH" = ( -/obj/machinery/atmospherics/pipe/manifold/cyan/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plasteel/white, -/area/security/brig) -"akI" = ( -/obj/machinery/door/window/westleft{ - base_state = "left"; - dir = 4; - icon_state = "left"; - name = "Brig Infirmary"; - req_access_txt = "0" - }, -/obj/machinery/atmospherics/pipe/simple/cyan/hidden{ - tag = "icon-intact (EAST)"; - icon_state = "intact"; - dir = 4 - }, -/turf/open/floor/plasteel/whitered/side{ - dir = 4 - }, -/area/security/brig) -"akJ" = ( -/obj/machinery/atmospherics/pipe/manifold/cyan/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plasteel, -/area/security/brig) -"akK" = ( -/obj/structure/cable{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel, -/area/security/brig) -"akL" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 8; - initialize_directions = 11 - }, -/turf/open/floor/plasteel/red/side{ - dir = 4 - }, -/area/security/brig) -"akM" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/security/brig) -"akN" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/obj/machinery/light/small, -/turf/open/floor/plasteel/red/side{ - dir = 10 - }, -/area/security/brig) -"akO" = ( -/obj/structure/closet{ - name = "Evidence Closet" - }, -/turf/open/floor/plasteel/red/side{ - dir = 6 - }, -/area/security/brig) -"akP" = ( -/obj/machinery/flasher/portable, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/security/armory) -"akQ" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0; - tag = "" - }, -/obj/machinery/atmospherics/pipe/simple/cyan/hidden, -/turf/open/floor/plasteel/red/side{ - dir = 8 - }, -/area/security/main) -"akR" = ( -/obj/structure/table/wood, -/obj/item/device/flashlight/lamp/green{ - pixel_x = -4; - pixel_y = 12 - }, -/obj/item/weapon/pen, -/obj/item/weapon/folder/red{ - layer = 2.9; - pixel_x = 8 - }, -/turf/open/floor/plasteel, -/area/security/main) -"akS" = ( -/obj/machinery/computer/secure_data, -/turf/open/floor/plasteel, -/area/security/main) -"akT" = ( -/turf/open/floor/plasteel, -/area/security/main) -"akU" = ( -/obj/machinery/computer/security, -/turf/open/floor/plasteel, -/area/security/main) -"akV" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/red/side{ - dir = 4 - }, -/area/security/main) -"akW" = ( -/turf/open/floor/plasteel/black, -/area/security/main) -"akX" = ( -/obj/structure/cable{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/cyan/hidden, -/turf/open/floor/plasteel/black, -/area/security/hos) -"akY" = ( -/turf/open/floor/carpet, -/area/security/hos) -"akZ" = ( -/obj/structure/chair{ - dir = 4 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/carpet, -/area/security/hos) -"ala" = ( -/obj/structure/table/wood, -/obj/item/weapon/folder/red, -/obj/item/weapon/stamp/hos, -/turf/open/floor/carpet, -/area/security/hos) -"alb" = ( -/obj/machinery/computer/secure_data, -/turf/open/floor/carpet, -/area/security/hos) -"alc" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/structure/cable{ - icon_state = "0-2"; - pixel_y = 1; - d2 = 2 - }, -/obj/structure/cable, -/turf/open/floor/plating, -/area/security/hos) -"ald" = ( -/turf/open/floor/plating{ - burnt = 1; - icon_state = "panelscorched" - }, -/area/maintenance/fsmaint) -"ale" = ( -/obj/structure/chair/stool/bar, -/turf/open/floor/wood{ - icon_state = "wood-broken7" - }, -/area/maintenance/fsmaint) -"alf" = ( -/obj/effect/landmark{ - name = "blobstart" - }, -/obj/structure/chair/stool/bar, -/turf/open/floor/wood, -/area/maintenance/fsmaint) -"alg" = ( -/obj/structure/chair/stool/bar, -/turf/open/floor/wood, -/area/maintenance/fsmaint) -"alh" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/fsmaint) -"ali" = ( -/obj/machinery/door/poddoor/shutters{ - id = "supplybridge" - }, -/turf/open/floor/plating/warnplate{ - dir = 10 - }, -/area/maintenance/fsmaint) -"alj" = ( -/obj/machinery/door/poddoor/shutters{ - id = "supplybridge" - }, -/turf/open/floor/plating/warnplate, -/area/maintenance/fsmaint) -"alk" = ( -/obj/machinery/door/poddoor/shutters{ - id = "supplybridge" - }, -/turf/open/floor/plating/warnplate{ - dir = 6 - }, -/area/maintenance/fsmaint) -"all" = ( -/obj/docking_port/stationary{ - dheight = 9; - dir = 2; - dwidth = 5; - height = 24; - id = "syndicate_ne"; - name = "northeast of station"; - turf_type = /turf/open/space; - width = 18 - }, -/turf/open/space, -/area/space) -"alm" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/hidden{ - tag = "icon-intact (NORTHEAST)"; - icon_state = "intact"; - dir = 5 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Brig Maintenance" - }) -"aln" = ( -/obj/machinery/atmospherics/pipe/manifold/cyan/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/obj/machinery/meter, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Brig Maintenance" - }) -"alo" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/hidden{ - tag = "icon-intact (NORTHWEST)"; - icon_state = "intact"; - dir = 9 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Brig Maintenance" - }) -"alp" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4"; - tag = "" - }, -/turf/open/floor/plasteel/black, -/area/security/processing{ - name = "Crematorium" - }) -"alq" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/hidden, -/turf/open/floor/plasteel/black, -/area/security/processing{ - name = "Crematorium" - }) -"alr" = ( -/obj/structure/bodycontainer/morgue, -/obj/machinery/camera{ - c_tag = "Brig Infirmary"; - dir = 4 - }, -/obj/structure/window/reinforced{ - dir = 1; - layer = 2.9 - }, -/obj/effect/landmark{ - name = "revenantspawn" - }, -/turf/open/floor/plasteel/black, -/area/security/brig) -"als" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - on = 1 - }, -/turf/open/floor/plasteel/whitered/side{ - dir = 8 - }, -/area/security/brig) -"alt" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/turf/open/floor/plasteel/white, -/area/security/brig) -"alu" = ( -/obj/machinery/door/window/westleft{ - base_state = "right"; - dir = 4; - icon_state = "right"; - name = "Brig Infirmary"; - req_access_txt = "0" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/turf/open/floor/plasteel/whitered/side{ - dir = 4 - }, -/area/security/brig) -"alv" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/machinery/atmospherics/pipe/simple/cyan/hidden, -/turf/open/floor/plasteel, -/area/security/brig) -"alw" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel, -/area/security/brig) -"alx" = ( -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/machinery/power/apc{ - cell_type = 10000; - dir = 4; - name = "Brig APC"; - pixel_x = 24; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/red/side{ - dir = 4 - }, -/area/security/brig) -"aly" = ( -/turf/closed/wall/r_wall, -/area/security/warden) -"alz" = ( -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/warden) -"alA" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/window/southleft{ - base_state = "right"; - icon_state = "right"; - name = "Armory"; - req_access_txt = "3" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/vault, -/area/security/warden) -"alB" = ( -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/warden) -"alC" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/window/southleft{ - base_state = "right"; - icon_state = "right"; - name = "Armory"; - req_access_txt = "3" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4"; - tag = "" - }, -/obj/machinery/atmospherics/pipe/simple/cyan/hidden, -/turf/open/floor/plasteel/vault, -/area/security/warden) -"alD" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/turf/closed/wall/r_wall, -/area/security/warden) -"alE" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0; - tag = "" - }, -/obj/machinery/light{ - dir = 8 - }, -/obj/machinery/camera{ - c_tag = "Security Office"; - dir = 4; - network = list("SS13") - }, -/obj/machinery/atmospherics/pipe/manifold/cyan/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/obj/item/device/radio/intercom{ - dir = 4; - name = "Station Intercom (General)"; - pixel_x = -31 - }, -/turf/open/floor/plasteel/red/side{ - dir = 8 - }, -/area/security/main) -"alF" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/hidden{ - tag = "icon-intact (EAST)"; - icon_state = "intact"; - dir = 4 - }, -/turf/open/floor/plasteel, -/area/security/main) -"alG" = ( -/obj/structure/chair/office/dark{ - dir = 1 - }, -/obj/effect/landmark/start{ - name = "Security Officer" - }, -/obj/machinery/atmospherics/pipe/simple/cyan/hidden{ - tag = "icon-intact (EAST)"; - icon_state = "intact"; - dir = 4 - }, -/turf/open/floor/plasteel, -/area/security/main) -"alH" = ( -/obj/machinery/holopad, -/obj/machinery/atmospherics/pipe/manifold/cyan/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plasteel, -/area/security/main) -"alI" = ( -/obj/structure/chair/office/dark{ - dir = 1 - }, -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/obj/effect/landmark/start{ - name = "Security Officer" - }, -/obj/machinery/atmospherics/pipe/simple/cyan/hidden{ - tag = "icon-intact (EAST)"; - icon_state = "intact"; - dir = 4 - }, -/turf/open/floor/plasteel, -/area/security/main) -"alJ" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/cyan/hidden{ - tag = "icon-intact (EAST)"; - icon_state = "intact"; - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/red/side{ - dir = 4 - }, -/area/security/main) -"alK" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/cyan/hidden{ - tag = "icon-intact (EAST)"; - icon_state = "intact"; - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/security/main) -"alL" = ( -/obj/machinery/door/airlock/glass_command{ - name = "Head of Security"; - req_access_txt = "58" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/cyan/hidden{ - tag = "icon-intact (EAST)"; - icon_state = "intact"; - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/security/hos) -"alM" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8"; - tag = "" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/simple/cyan/hidden{ - tag = "icon-intact (NORTHWEST)"; - icon_state = "intact"; - dir = 9 - }, -/turf/open/floor/plasteel/black, -/area/security/hos) -"alN" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/effect/landmark/start{ - name = "Head of Security" - }, -/turf/open/floor/carpet, -/area/security/hos) -"alO" = ( -/obj/structure/chair{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/turf/open/floor/carpet, -/area/security/hos) -"alP" = ( -/obj/structure/table/wood, -/obj/item/weapon/book/manual/wiki/security_space_law, -/turf/open/floor/carpet, -/area/security/hos) -"alQ" = ( -/obj/structure/chair/comfy/black{ - dir = 8 - }, -/turf/open/floor/carpet, -/area/security/hos) -"alR" = ( -/obj/machinery/computer/security, -/turf/open/floor/carpet, -/area/security/hos) -"alS" = ( -/obj/item/weapon/cigbutt/roach, -/turf/open/floor/wood, -/area/maintenance/fsmaint) -"alT" = ( -/turf/open/floor/wood{ - broken = 1; - icon_state = "wood-broken"; - tag = "icon-wood-broken" - }, -/area/maintenance/fsmaint) -"alU" = ( -/obj/effect/decal/cleanable/oil{ - icon_state = "floor6" - }, -/turf/open/floor/wood{ - icon_state = "wood-broken4" - }, -/area/maintenance/fsmaint) -"alV" = ( -/obj/machinery/door/airlock/atmos{ - name = "Atmospherics Maintenance"; - req_access_txt = "12;24" - }, -/obj/machinery/atmospherics/pipe/simple/cyan/hidden, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Brig Maintenance" - }) -"alW" = ( -/obj/machinery/door/airlock/maintenance{ - name = "Crematorium Maintenance"; - req_access_txt = "0"; - req_one_access_txt = "2;27" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0; - tag = "" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/security/processing{ - name = "Crematorium" - }) -"alX" = ( -/obj/machinery/door/window/eastright{ - base_state = "left"; - dir = 1; - icon_state = "left"; - name = "Security Delivery"; - req_access_txt = "1" - }, -/obj/machinery/navbeacon{ - codes_txt = "delivery;dir=4"; - dir = 1; - freq = 1400; - location = "Security" - }, -/obj/machinery/atmospherics/pipe/simple/cyan/hidden{ - icon_state = "intact"; - dir = 9 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/security/processing{ - name = "Crematorium" - }) -"alY" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 6 - }, -/turf/open/floor/plasteel/black, -/area/security/brig) -"alZ" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/open/floor/plasteel/whitered/side{ - dir = 10 - }, -/area/security/brig) -"ama" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/whitered/side, -/area/security/brig) -"amb" = ( -/obj/structure/closet/crate/freezer, -/obj/structure/window/reinforced{ - dir = 4; - layer = 2.9 - }, -/obj/item/weapon/reagent_containers/blood/OMinus, -/obj/item/weapon/reagent_containers/blood/OMinus, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/whitered/side{ - dir = 6 - }, -/area/security/brig) -"amc" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/cyan/hidden, -/turf/open/floor/plasteel/red/side{ - dir = 8 - }, -/area/security/brig) -"amd" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0; - tag = "" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/security/brig) -"ame" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/red/side{ - dir = 4 - }, -/area/security/brig) -"amf" = ( -/obj/structure/closet/secure_closet/warden, -/obj/item/clothing/mask/gas/sechailer, -/obj/machinery/power/apc{ - dir = 8; - name = "Brig Control APC"; - pixel_x = -24; - pixel_y = 0 - }, -/obj/structure/cable{ - icon_state = "0-2"; - pixel_y = 1; - d2 = 2 - }, -/obj/structure/reagent_dispensers/peppertank{ - pixel_y = 30 - }, -/turf/open/floor/plasteel/showroomfloor, -/area/security/warden) -"amg" = ( -/obj/machinery/computer/prisoner, -/obj/machinery/airalarm{ - pixel_y = 22 - }, -/turf/open/floor/plasteel/showroomfloor, -/area/security/warden) -"amh" = ( -/obj/machinery/computer/security, -/obj/machinery/light{ - dir = 1 - }, -/obj/machinery/camera{ - c_tag = "Brig Control Room"; - dir = 2 - }, -/turf/open/floor/plasteel/showroomfloor, -/area/security/warden) -"ami" = ( -/obj/machinery/computer/secure_data, -/turf/open/floor/plasteel/showroomfloor, -/area/security/warden) -"amj" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/showroomfloor, -/area/security/warden) -"amk" = ( -/turf/open/floor/plasteel/showroomfloor, -/area/security/warden) -"aml" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/hidden, -/turf/open/floor/plasteel/showroomfloor, -/area/security/warden) -"amm" = ( -/obj/structure/table, -/obj/machinery/recharger, -/obj/machinery/light/small{ - dir = 4 - }, -/turf/open/floor/plasteel/showroomfloor, -/area/security/warden) -"amn" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0; - tag = "" - }, -/turf/closed/wall/r_wall, -/area/security/warden) -"amo" = ( -/obj/structure/shuttle/engine/propulsion/burst{ - tag = "icon-propulsion (WEST)"; - icon_state = "propulsion"; - dir = 8 - }, -/turf/closed/wall/mineral/titanium, -/area/shuttle/abandoned) -"amp" = ( -/obj/structure/table/wood, -/obj/machinery/recharger, -/turf/open/floor/plasteel, -/area/security/main) -"amq" = ( -/obj/structure/table/wood, -/obj/machinery/recharger, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel, -/area/security/main) -"amr" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0; - tag = "" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/red/side{ - dir = 4 - }, -/area/security/main) -"ams" = ( -/obj/structure/cable{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/black, -/area/security/hos) -"amt" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0; - tag = "" - }, -/turf/open/floor/carpet, -/area/security/hos) -"amu" = ( -/obj/structure/chair{ - dir = 4 - }, -/turf/open/floor/carpet, -/area/security/hos) -"amv" = ( -/obj/structure/table/wood, -/obj/item/weapon/phone, -/turf/open/floor/carpet, -/area/security/hos) -"amw" = ( -/obj/machinery/computer/card/minor/hos, -/turf/open/floor/carpet, -/area/security/hos) -"amx" = ( -/obj/machinery/door/airlock/maintenance{ - name = "Pete's Speakeasy"; - req_access_txt = "12" - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint) -"amy" = ( -/turf/closed/wall/mineral/titanium, -/area/shuttle/pod_1) -"amz" = ( -/obj/structure/grille, -/obj/structure/window/shuttle, -/turf/open/floor/plating, -/area/shuttle/pod_1) -"amA" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/effect/decal/cleanable/robot_debris{ - icon_state = "gib6" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/fsmaint) -"amB" = ( -/obj/structure/grille/broken, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Brig Maintenance" - }) -"amC" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4"; - tag = "" - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Brig Maintenance" - }) -"amD" = ( -/obj/item/weapon/wirecutters, -/obj/effect/spawner/lootdrop/maintenance, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/machinery/atmospherics/pipe/simple/cyan/hidden{ - tag = "icon-intact (NORTHEAST)"; - icon_state = "intact"; - dir = 5 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Brig Maintenance" - }) -"amE" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/machinery/atmospherics/pipe/simple/cyan/hidden{ - tag = "icon-intact (EAST)"; - icon_state = "intact"; - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Brig Maintenance" - }) -"amF" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/hidden{ - tag = "icon-intact (EAST)"; - icon_state = "intact"; - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/structure/cable{ - icon_state = "1-8" - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Brig Maintenance" - }) -"amG" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/hidden{ - tag = "icon-intact (NORTHWEST)"; - icon_state = "intact"; - dir = 9 - }, -/turf/closed/wall, -/area/security/processing{ - name = "Crematorium" - }) -"amH" = ( -/obj/structure/plasticflaps{ - opacity = 1 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/security/processing{ - name = "Crematorium" - }) -"amI" = ( -/obj/machinery/door/airlock/maintenance{ - name = "Brig Infirmary Maintenance"; - req_access_txt = "63"; - req_one_access_txt = "0" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0; - tag = "" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/security/brig) -"amJ" = ( -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/cyan/hidden, -/obj/structure/sign/map{ - icon_state = "map-pubby"; - pixel_x = -32; - pixel_y = 0 - }, -/turf/open/floor/plasteel/red/side{ - dir = 8 - }, -/area/security/brig) -"amK" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4"; - tag = "" - }, -/turf/open/floor/plasteel, -/area/security/brig) -"amL" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/red/side{ - dir = 4 - }, -/area/security/brig) -"amM" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/obj/structure/grille, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/warden) -"amN" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/turf/open/floor/plasteel/showroomfloor, -/area/security/warden) -"amO" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/showroomfloor, -/area/security/warden) -"amP" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/showroomfloor, -/area/security/warden) -"amQ" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 1; - initialize_directions = 11 - }, -/turf/open/floor/plasteel/showroomfloor, -/area/security/warden) -"amR" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 9 - }, -/turf/open/floor/plasteel/showroomfloor, -/area/security/warden) -"amS" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/hidden{ - tag = "icon-intact (SOUTHEAST)"; - icon_state = "intact"; - dir = 6 - }, -/turf/open/floor/plasteel/showroomfloor, -/area/security/warden) -"amT" = ( -/obj/machinery/atmospherics/pipe/manifold/cyan/hidden, -/turf/open/floor/plasteel/showroomfloor, -/area/security/warden) -"amU" = ( -/obj/structure/table, -/obj/machinery/recharger, -/obj/machinery/atmospherics/pipe/simple/cyan/hidden{ - tag = "icon-intact (EAST)"; - icon_state = "intact"; - dir = 4 - }, -/turf/open/floor/plasteel/showroomfloor, -/area/security/warden) -"amV" = ( -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/obj/structure/cable, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/cyan/hidden{ - tag = "icon-intact (EAST)"; - icon_state = "intact"; - dir = 4 - }, -/turf/open/floor/plating, -/area/security/warden) -"amW" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0; - tag = "" - }, -/obj/machinery/atmospherics/pipe/simple/cyan/hidden{ - tag = "icon-intact (NORTHWEST)"; - icon_state = "intact"; - dir = 9 - }, -/turf/open/floor/plasteel/red/side{ - dir = 10 - }, -/area/security/main) -"amX" = ( -/obj/structure/chair/office/dark{ - dir = 1 - }, -/obj/effect/landmark/start{ - name = "Security Officer" - }, -/turf/open/floor/plasteel, -/area/security/main) -"amY" = ( -/obj/structure/chair/office/dark{ - dir = 1 - }, -/obj/structure/disposalpipe/segment, -/obj/effect/landmark/start{ - name = "Security Officer" - }, -/turf/open/floor/plasteel, -/area/security/main) -"amZ" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0; - tag = "" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 8; - initialize_directions = 11 - }, -/turf/open/floor/plasteel/red/side{ - dir = 6 - }, -/area/security/main) -"ana" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/security/main) -"anb" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/security/hos) -"anc" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/obj/machinery/light_switch{ - pixel_y = -24 - }, -/turf/open/floor/plasteel/darkred/corner{ - tag = "icon-darkredcorners (EAST)"; - dir = 4 - }, -/area/security/hos) -"and" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4"; - tag = "" - }, -/turf/open/floor/plasteel/darkred/side{ - tag = "icon-darkred (NORTH)"; - dir = 1 - }, -/area/security/hos) -"ane" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/turf/open/floor/plasteel/darkred/side{ - tag = "icon-darkred (NORTH)"; - dir = 1 - }, -/area/security/hos) -"anf" = ( -/obj/machinery/light, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/machinery/camera{ - c_tag = "Head of Security's Office"; - dir = 1; - network = list("SS13") - }, -/obj/item/device/radio/intercom{ - dir = 4; - name = "Station Intercom (General)"; - pixel_x = 0; - pixel_y = -27 - }, -/turf/open/floor/plasteel/darkred/side{ - tag = "icon-darkred (NORTH)"; - dir = 1 - }, -/area/security/hos) -"ang" = ( -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/machinery/power/apc{ - dir = 2; - name = "Head of Security's Office APC"; - pixel_x = 0; - pixel_y = -24 - }, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/turf/open/floor/plasteel/darkred/side{ - tag = "icon-darkred (NORTH)"; - dir = 1 - }, -/area/security/hos) -"anh" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/structure/cable, -/turf/open/floor/plating, -/area/security/hos) -"ani" = ( -/obj/structure/grille/broken, -/turf/open/floor/plating, -/area/maintenance/fsmaint) -"anj" = ( -/obj/structure/closet/emcloset, -/obj/item/device/camera, -/turf/open/floor/plating, -/area/maintenance/fsmaint) -"ank" = ( -/obj/machinery/computer/shuttle/monastery_shuttle, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/pod_1) -"anl" = ( -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Brig Maintenance" - }) -"anm" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Brig Maintenance" - }) -"ann" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/machinery/light/small{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Brig Maintenance" - }) -"ano" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 5 - }, -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4"; - tag = "" - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Brig Maintenance" - }) -"anp" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Brig Maintenance" - }) -"anq" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Brig Maintenance" - }) -"anr" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 9 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Brig Maintenance" - }) -"ans" = ( -/obj/machinery/computer/security{ - name = "Labor Camp Monitoring"; - network = list("Labor") - }, -/turf/open/floor/plasteel/black, -/area/security/brig) -"ant" = ( -/obj/machinery/computer/shuttle/labor, -/turf/open/floor/plasteel/black, -/area/security/brig) -"anu" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/hidden, -/turf/open/floor/plasteel/red/side{ - dir = 8 - }, -/area/security/brig) -"anv" = ( -/turf/open/floor/plasteel, -/area/security/brig) -"anw" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/red/side{ - dir = 4 - }, -/area/security/brig) -"anx" = ( -/obj/structure/bed/dogbed, -/obj/machinery/requests_console{ - department = "Security"; - departmentType = 5; - pixel_x = -32; - pixel_y = 0 - }, -/mob/living/simple_animal/pet/dog/pug{ - name = "McGriff" - }, -/turf/open/floor/plasteel/showroomfloor, -/area/security/warden) -"any" = ( -/obj/machinery/atmospherics/pipe/manifold/cyan/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/plasteel/showroomfloor, -/area/security/warden) -"anz" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - layer = 2.4; - on = 1 - }, -/turf/open/floor/plasteel/showroomfloor, -/area/security/warden) -"anA" = ( -/obj/machinery/door/airlock/security{ - name = "Brig Control"; - req_access_txt = "3" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0; - tag = "" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4"; - tag = "" - }, -/turf/open/floor/plasteel/showroomfloor, -/area/security/warden) -"anB" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4"; - tag = "" - }, -/turf/open/floor/plasteel/red/side{ - dir = 8 - }, -/area/security/main) -"anC" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/turf/open/floor/plasteel, -/area/security/main) -"anD" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - layer = 2.4; - on = 1 - }, -/turf/open/floor/plasteel, -/area/security/main) -"anE" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/security/main) -"anF" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/structure/disposalpipe/sortjunction{ - dir = 4; - icon_state = "pipe-j2s"; - sortType = 8 - }, -/turf/open/floor/plasteel, -/area/security/main) -"anG" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0; - tag = "" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/red/side{ - dir = 4 - }, -/area/security/main) -"anH" = ( -/turf/closed/wall, -/area/maintenance/fore) -"anI" = ( -/obj/machinery/light/small{ - dir = 8 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/black, -/area/chapel/main{ - name = "Monastery" - }) -"anJ" = ( -/obj/effect/spawner/lootdrop/grille_or_trash, -/turf/open/floor/plating, -/area/maintenance/fsmaint) -"anK" = ( -/obj/structure/chair{ - dir = 4 - }, -/obj/machinery/status_display{ - density = 0; - layer = 3; - pixel_x = -32; - pixel_y = 0 - }, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/pod_1) -"anL" = ( -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/pod_1) -"anM" = ( -/obj/structure/chair{ - dir = 8 - }, -/obj/machinery/status_display{ - density = 0; - layer = 3; - pixel_x = 32; - pixel_y = 0 - }, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/pod_1) -"anN" = ( -/turf/open/floor/plating{ - icon_state = "platingdmg3" - }, -/area/maintenance/fpmaint2{ - name = "Brig Maintenance" - }) -"anO" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Brig Maintenance" - }) -"anP" = ( -/obj/structure/chair/stool, -/obj/item/trash/raisins, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Brig Maintenance" - }) -"anQ" = ( -/obj/structure/table, -/obj/item/weapon/paper, -/obj/item/weapon/pen, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Brig Maintenance" - }) -"anR" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - external_pressure_bound = 101.325; - on = 1; - pressure_checks = 1 - }, -/obj/machinery/camera{ - c_tag = "Brig Gulag Teleporter"; - dir = 4 - }, -/obj/machinery/light{ - dir = 8 - }, -/obj/structure/table, -/obj/item/weapon/storage/box/prisoner, -/obj/item/weapon/razor{ - pixel_x = -6 - }, -/obj/item/weapon/paper{ - desc = ""; - info = "Labor Camp Facility Operation Guide

Hello there, proud operator of an NT-Sec Prisoner Rehabilitation Center. A solution to rising crime rates and falling productivity, these facilities are specifically designed for the safe, productive imprisonment of your most dangerous criminals.

To press a long-term prisoner into the service of the station, replace his equipment with prisoners' garb at one of the prison lockers, as per normal operating procedure. Before assigning a prisoner his ID, insert the ID into a prisoner management console and assign the prisoner a quota, based on the severity of his crime.
A single sheet of most materials produces five points for the prisoner, and points can be expected to be produced at a rate of about 100 per minute, though punishments as severe as forced labor should be reserved for serious crimes of sentences not less than five minutes long.
Once you have prepared the prisoner, place him in the secure northern half of the labor shuttle, and send him to the station. Once he meets his quota by feeding sheets to the stacker, he will be allowed to return to the station, and will be able to open the secure door to the prisoner release area.

In the case of dangerous prisoners, surveilance may be needed. To that end, there is a prisoner monitoring room on the mining station, equipped with a remote flasher and a lockdown button. The mine itself is patrolled by a securibot, so the nearby security records console can also be used to secure hostile prisoners on the mine."; - name = "Labor Camp Operating Guide" - }, -/obj/item/weapon/pen, -/turf/open/floor/plasteel/black, -/area/security/brig) -"anS" = ( -/obj/structure/chair/office/dark{ - dir = 8 - }, -/turf/open/floor/plasteel/black, -/area/security/brig) -"anT" = ( -/obj/structure/cable, -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/warden) -"anU" = ( -/obj/item/weapon/book/manual/wiki/security_space_law, -/obj/item/clothing/ears/earmuffs, -/obj/item/clothing/glasses/sunglasses, -/obj/structure/table/reinforced, -/turf/open/floor/plasteel/showroomfloor, -/area/security/warden) -"anV" = ( -/obj/structure/table/reinforced, -/obj/machinery/button/door{ - id = "Secure Gate"; - name = "Entrance Lockdown"; - pixel_x = 5; - pixel_y = -2; - req_access_txt = "0" - }, -/obj/machinery/button/door{ - id = "Prison Gate"; - name = "Permabrig Lockdown"; - pixel_x = 5; - pixel_y = 8; - req_access_txt = "2" - }, -/turf/open/floor/plasteel/showroomfloor, -/area/security/warden) -"anW" = ( -/obj/structure/chair/office/dark, -/obj/effect/landmark/start{ - name = "Warden" - }, -/turf/open/floor/plasteel/showroomfloor, -/area/security/warden) -"anX" = ( -/obj/item/device/radio/intercom{ - dir = 4; - name = "Station Intercom (General)"; - pixel_x = 0 - }, -/obj/structure/table/reinforced, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/showroomfloor, -/area/security/warden) -"anY" = ( -/obj/machinery/disposal/bin, -/obj/structure/disposalpipe/trunk{ - dir = 4 - }, -/turf/open/floor/plasteel/showroomfloor, -/area/security/warden) -"anZ" = ( -/obj/structure/rack, -/obj/item/weapon/crowbar, -/obj/item/weapon/wrench, -/obj/item/device/laser_pointer/red, -/turf/open/floor/plasteel/showroomfloor, -/area/security/warden) -"aoa" = ( -/obj/structure/filingcabinet/chestdrawer, -/turf/open/floor/plasteel/showroomfloor, -/area/security/warden) -"aob" = ( -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/obj/structure/cable, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/warden) -"aoc" = ( -/obj/machinery/disposal/bin, -/obj/structure/disposalpipe/trunk{ - dir = 4 - }, -/turf/open/floor/plasteel/red, -/area/security/main) -"aod" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/chapel/main{ - name = "Monastery" - }) -"aoe" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/red/side, -/area/security/main) -"aof" = ( -/obj/structure/disposalpipe/sortjunction{ - dir = 1; - icon_state = "pipe-j2s"; - sortType = 7 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 6 - }, -/turf/open/floor/plasteel, -/area/security/main) -"aog" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/red/side, -/area/security/main) -"aoh" = ( -/obj/machinery/airalarm{ - dir = 1; - pixel_y = -22 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/red/side, -/area/security/main) -"aoi" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4"; - tag = "" - }, -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; - icon_state = "space"; - layer = 4; - name = "EXTERNAL AIRLOCK"; - pixel_x = 32; - pixel_y = -32 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 9 - }, -/turf/open/floor/plasteel/red, -/area/security/main) -"aoj" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/door/airlock/security{ - name = "Security Access"; - req_access = null; - req_access_txt = "1" - }, -/turf/open/floor/plating, -/area/maintenance/fore) -"aok" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fore) -"aol" = ( -/obj/machinery/power/apc{ - dir = 1; - name = "Fore Maintenance APC"; - pixel_y = 24 - }, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fore) -"aom" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/light{ - dir = 1 - }, -/turf/open/floor/plating, -/area/maintenance/fore) -"aon" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8"; - tag = "" - }, -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/turf/open/floor/plating, -/area/maintenance/fore) -"aoo" = ( -/obj/machinery/door/airlock/external{ - cyclelinkeddir = 0; - name = "Security External Airlock"; - req_access_txt = "63" - }, -/turf/open/floor/plating, -/area/maintenance/fore) -"aop" = ( -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/plating, -/area/maintenance/fore) -"aoq" = ( -/obj/machinery/door/airlock/external{ - cyclelinkeddir = 8; - name = "Security External Airlock"; - req_access_txt = "63" - }, -/turf/open/floor/plating, -/area/maintenance/fore) -"aor" = ( -/obj/structure/chair{ - dir = 8 - }, -/obj/item/clothing/mask/cigarette, -/turf/open/floor/plating, -/area/maintenance/fsmaint) -"aos" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 6 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint) -"aot" = ( -/obj/structure/cable{ - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 9; - pixel_y = 0 - }, -/obj/item/device/camera_film, -/turf/open/floor/plating{ - icon_state = "platingdmg1" - }, -/area/maintenance/fsmaint) -"aou" = ( -/obj/structure/chair{ - dir = 4 - }, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/pod_1) -"aov" = ( -/obj/structure/chair{ - dir = 8 - }, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/pod_1) -"aow" = ( -/obj/structure/chair{ - dir = 8 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Brig Maintenance" - }) -"aox" = ( -/mob/living/simple_animal/mouse/gray, -/turf/open/floor/plating{ - icon_state = "panelscorched" - }, -/area/maintenance/fpmaint2{ - name = "Brig Maintenance" - }) -"aoy" = ( -/obj/structure/closet/firecloset, -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Brig Maintenance" - }) -"aoz" = ( -/turf/closed/wall/mineral/titanium, -/area/shuttle/labor) -"aoA" = ( -/obj/structure/grille, -/obj/structure/window/shuttle, -/turf/open/floor/plating, -/area/shuttle/labor) -"aoB" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/brig) -"aoC" = ( -/obj/machinery/computer/gulag_teleporter_computer, -/turf/open/floor/plasteel/black, -/area/security/brig) -"aoD" = ( -/obj/machinery/gulag_teleporter, -/turf/open/floor/plasteel/black, -/area/security/brig) -"aoE" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/hidden{ - tag = "icon-intact (SOUTHWEST)"; - icon_state = "intact"; - dir = 10 - }, -/turf/open/floor/plasteel, -/area/security/brig) -"aoF" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4"; - tag = "" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0; - tag = "" - }, -/turf/closed/wall/r_wall, -/area/security/warden) -"aoG" = ( -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/warden) -"aoH" = ( -/obj/structure/table/reinforced, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/machinery/door/window/brigdoor{ - dir = 1; - name = "Armory Desk"; - req_access_txt = "3" - }, -/obj/machinery/door/window/southleft{ - name = "Reception Desk"; - req_access_txt = "63" - }, -/obj/item/weapon/paper_bin{ - layer = 2.9; - pixel_x = 0; - pixel_y = 0 - }, -/obj/item/weapon/pen{ - pixel_x = 4; - pixel_y = 4 - }, -/turf/open/floor/plasteel/showroomfloor, -/area/security/warden) -"aoI" = ( -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/security/warden) -"aoJ" = ( -/obj/machinery/door/airlock/glass_security{ - name = "Brig Control"; - req_access_txt = "3" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/machinery/atmospherics/pipe/simple/cyan/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/showroomfloor, -/area/security/warden) -"aoK" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/turf/closed/wall/r_wall, -/area/security/warden) -"aoL" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/turf/closed/wall/r_wall, -/area/security/warden) -"aoM" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/security{ - name = "Security Office"; - req_access = null; - req_access_txt = "1" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/security/main) -"aoN" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0; - tag = "" - }, -/obj/structure/disposalpipe/segment, -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; - icon_state = "space"; - layer = 4; - name = "EXTERNAL AIRLOCK"; - pixel_x = 32; - pixel_y = 0 - }, -/turf/open/floor/plating, -/area/maintenance/fore) -"aoO" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/maintenance/fore) -"aoP" = ( -/turf/closed/wall, -/area/crew_quarters/sleep) -"aoQ" = ( -/obj/structure/chair{ - dir = 4 - }, -/obj/item/weapon/storage/pod{ - pixel_x = -24; - pixel_y = 0 - }, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/pod_1) -"aoR" = ( -/obj/structure/chair{ - dir = 8 - }, -/obj/item/device/radio/intercom{ - pixel_x = 30; - pixel_y = 0 - }, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/pod_1) -"aoS" = ( -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/machinery/power/solar{ - id = "portsolar"; - name = "Port Solar Array" - }, -/turf/open/floor/plasteel/airless/solarpanel, -/area/solar/port{ - name = "Port Solar Array" - }) -"aoT" = ( -/obj/structure/lattice/catwalk, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/turf/open/space, -/area/solar/starboard{ - name = "Starboard Solar Array" - }) -"aoU" = ( -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/machinery/power/solar{ - id = "portsolar"; - name = "Port Solar Array" - }, -/turf/open/floor/plasteel/airless/solarpanel, -/area/solar/port{ - name = "Port Solar Array" - }) -"aoV" = ( -/obj/structure/lattice/catwalk, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/turf/open/space, -/area/solar/port{ - name = "Port Solar Array" - }) -"aoW" = ( -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/machinery/power/solar{ - id = "starboardsolar"; - name = "Starboard Solar Array" - }, -/turf/open/floor/plasteel/airless/solarpanel, -/area/solar/port{ - name = "Port Solar Array" - }) -"aoX" = ( -/obj/structure/rack, -/obj/item/clothing/suit/hazardvest, -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Brig Maintenance" - }) -"aoY" = ( -/obj/effect/decal/remains/human, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Brig Maintenance" - }) -"aoZ" = ( -/obj/structure/reagent_dispensers/fueltank, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Brig Maintenance" - }) -"apa" = ( -/obj/structure/reagent_dispensers/watertank, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Brig Maintenance" - }) -"apb" = ( -/obj/structure/closet, -/obj/item/clothing/under/color/black, -/obj/item/clothing/under/color/red, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Brig Maintenance" - }) -"apc" = ( -/obj/machinery/computer/shuttle/labor, -/obj/structure/reagent_dispensers/peppertank{ - pixel_x = -31; - pixel_y = 0 - }, -/turf/open/floor/mineral/plastitanium/brig, -/area/shuttle/labor) -"apd" = ( -/obj/structure/chair/office/dark{ - dir = 1 - }, -/turf/open/floor/mineral/plastitanium/brig, -/area/shuttle/labor) -"ape" = ( -/obj/structure/table, -/obj/item/weapon/folder/red, -/obj/item/weapon/restraints/handcuffs, -/turf/open/floor/mineral/plastitanium/brig, -/area/shuttle/labor) -"apf" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/turf/open/floor/plasteel, -/area/security/brig) -"apg" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 8; - initialize_directions = 11 - }, -/turf/open/floor/plasteel/red/corner{ - dir = 4 - }, -/area/security/brig) -"aph" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0; - tag = "" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/extinguisher_cabinet{ - pixel_x = 0; - pixel_y = 30 - }, -/turf/open/floor/plasteel/red/side{ - dir = 1 - }, -/area/security/brig) -"api" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/red/side{ - dir = 1 - }, -/area/security/brig) -"apj" = ( -/obj/machinery/camera{ - c_tag = "Brig Cells"; - dir = 2 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/red/side{ - dir = 1 - }, -/area/security/brig) -"apk" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 1; - initialize_directions = 11 - }, -/turf/open/floor/plasteel, -/area/security/brig) -"apl" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/open/floor/plasteel/red/side{ - dir = 1 - }, -/area/security/brig) -"apm" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 1; - initialize_directions = 11 - }, -/turf/open/floor/plasteel/red/side{ - dir = 1 - }, -/area/security/brig) -"apn" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/cyan/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel, -/area/security/brig) -"apo" = ( -/obj/machinery/camera{ - c_tag = "Brig Entrance" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 1; - initialize_directions = 11 - }, -/obj/item/device/radio/intercom{ - name = "Station Intercom (General)"; - pixel_y = 29 - }, -/turf/open/floor/plasteel/red/side{ - dir = 1 - }, -/area/security/brig) -"app" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/reagent_dispensers/peppertank{ - pixel_y = 30 - }, -/turf/open/floor/plasteel/red/side{ - dir = 1 - }, -/area/security/brig) -"apq" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/security/brig) -"apr" = ( -/turf/open/floor/plasteel/red/side{ - dir = 1 - }, -/area/security/brig) -"aps" = ( -/turf/open/floor/plasteel/red/side{ - dir = 5 - }, -/area/security/brig) -"apt" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - on = 1 - }, -/turf/open/floor/plasteel/black, -/area/security/brig) -"apu" = ( -/turf/open/floor/plasteel/black, -/area/security/brig) -"apv" = ( -/obj/machinery/ai_status_display{ - pixel_y = 32 - }, -/turf/open/floor/plasteel/black, -/area/security/brig) -"apw" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0; - tag = "" - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plating, -/area/maintenance/fore) -"apx" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/turf/closed/wall/r_wall, -/area/bridge) -"apy" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/machinery/door/poddoor{ - density = 0; - icon_state = "open"; - id = "bridgespace"; - name = "bridge external shutters"; - opacity = 0 - }, -/turf/open/floor/plating, -/area/bridge) -"apz" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/closed/wall/r_wall, -/area/bridge) -"apA" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/turf/closed/wall/r_wall, -/area/bridge) -"apB" = ( -/obj/machinery/computer/arcade, -/turf/open/floor/plasteel/barber, -/area/crew_quarters/sleep) -"apC" = ( -/obj/machinery/washing_machine, -/obj/machinery/requests_console{ - department = "Crew Quarters"; - pixel_y = 30 - }, -/turf/open/floor/plasteel/barber, -/area/crew_quarters/sleep) -"apD" = ( -/obj/machinery/washing_machine, -/obj/machinery/airalarm{ - pixel_y = 22 - }, -/turf/open/floor/plasteel/barber, -/area/crew_quarters/sleep) -"apE" = ( -/obj/structure/table, -/obj/structure/sign/poster{ - pixel_x = 32 - }, -/obj/item/clothing/under/color/grey, -/obj/machinery/power/apc{ - dir = 1; - name = "Dormitory APC"; - pixel_y = 25 - }, -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/turf/open/floor/plasteel/barber, -/area/crew_quarters/sleep) -"apF" = ( -/obj/structure/shuttle/engine/propulsion/burst, -/turf/closed/wall/mineral/titanium, -/area/shuttle/pod_1) -"apG" = ( -/obj/machinery/door/airlock/titanium{ - name = "Shuttle Airlock" - }, -/obj/docking_port/stationary{ - dwidth = 2; - height = 6; - id = "monastery_shuttle_station"; - name = "station"; - width = 5 - }, -/obj/docking_port/mobile{ - dwidth = 2; - height = 6; - id = "pod1"; - launch_status = 0; - name = "monastery shuttle"; - port_angle = 180; - width = 5 - }, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/pod_1) -"apH" = ( -/obj/machinery/space_heater, -/turf/open/floor/plating, -/area/maintenance/fsmaint) -"apI" = ( -/obj/structure/lattice/catwalk, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0; - tag = "" - }, -/turf/open/space, -/area/solar/starboard{ - name = "Starboard Solar Array" - }) -"apJ" = ( -/obj/structure/lattice/catwalk, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0; - tag = "" - }, -/turf/open/space, -/area/solar/port{ - name = "Port Solar Array" - }) -"apK" = ( -/obj/structure/closet/crate, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 2; - name = "2maintenance loot spawner" - }, -/obj/item/stack/rods{ - amount = 25 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Brig Maintenance" - }) -"apL" = ( -/obj/item/weapon/weldingtool, -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Brig Maintenance" - }) -"apM" = ( -/obj/machinery/door/airlock/external{ - name = "Dock Access" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/chapel/main{ - name = "Monastery" - }) -"apN" = ( -/obj/item/clothing/head/cone, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Brig Maintenance" - }) -"apO" = ( -/turf/open/floor/mineral/plastitanium/brig, -/area/shuttle/labor) -"apP" = ( -/obj/machinery/button/flasher{ - id = "gulagshuttleflasher"; - name = "Flash Control"; - pixel_x = 0; - pixel_y = -26; - req_access_txt = "1" - }, -/turf/open/floor/mineral/plastitanium/brig, -/area/shuttle/labor) -"apQ" = ( -/obj/machinery/mineral/labor_claim_console{ - machinedir = 2; - pixel_x = 30; - pixel_y = 30 - }, -/turf/open/floor/mineral/plastitanium/brig, -/area/shuttle/labor) -"apR" = ( -/obj/machinery/door/airlock/titanium{ - name = "Labor Shuttle Airlock"; - req_access_txt = "2" - }, -/turf/open/floor/mineral/plastitanium/brig, -/area/shuttle/labor) -"apS" = ( -/obj/machinery/door/airlock/external{ - name = "Labor Camp Shuttle Airlock"; - req_access_txt = "2" - }, -/turf/open/floor/plasteel/black, -/area/security/brig) -"apT" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass_security{ - name = "Labor Camp Shuttle Airlock"; - req_access_txt = "2" - }, -/obj/machinery/button/door{ - id = "prison release"; - name = "Labor Camp Shuttle Lockdown"; - pixel_x = 0; - pixel_y = -25; - req_access_txt = "2" - }, -/turf/open/floor/plasteel/black, -/area/security/brig) -"apU" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/hidden, -/turf/open/floor/plasteel, -/area/security/brig) -"apV" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/security/brig) -"apW" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0; - tag = "" - }, -/turf/open/floor/plasteel, -/area/security/brig) -"apX" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel, -/area/security/brig) -"apY" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - on = 1 - }, -/obj/structure/disposalpipe/junction{ - icon_state = "pipe-j1"; - dir = 4 - }, -/turf/open/floor/plasteel, -/area/security/brig) -"apZ" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/security/brig) -"aqa" = ( -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 5 - }, -/turf/open/floor/plasteel, -/area/security/brig) -"aqb" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/security/brig) -"aqc" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/red/side{ - dir = 4 - }, -/area/security/brig) -"aqd" = ( -/obj/machinery/door/airlock/security{ - name = "Interrogation"; - req_access = null; - req_access_txt = "63" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/security/brig) -"aqe" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/security/brig) -"aqf" = ( -/obj/structure/chair{ - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/security/brig) -"aqg" = ( -/obj/structure/table, -/obj/item/device/flashlight/lamp, -/turf/open/floor/plasteel/black, -/area/security/brig) -"aqh" = ( -/obj/structure/chair{ - dir = 8 - }, -/turf/open/floor/plasteel/black, -/area/security/brig) -"aqi" = ( -/obj/machinery/camera{ - c_tag = "Brig Interrogation"; - dir = 8 - }, -/turf/open/floor/plasteel/black, -/area/security/brig) -"aqj" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/closed/wall/r_wall, -/area/bridge) -"aqk" = ( -/obj/machinery/modular_computer/console/preset/command, -/turf/open/floor/plasteel/darkgreen/side{ - dir = 9 - }, -/area/bridge) -"aql" = ( -/obj/machinery/computer/med_data, -/turf/open/floor/plasteel/darkgreen/side{ - dir = 1 - }, -/area/bridge) -"aqm" = ( -/obj/machinery/computer/crew, -/turf/open/floor/plasteel/darkgreen/side{ - dir = 1 - }, -/area/bridge) -"aqn" = ( -/obj/machinery/status_display{ - density = 0; - layer = 4; - pixel_x = 0; - pixel_y = 32 - }, -/obj/item/weapon/folder/yellow{ - pixel_y = 4 - }, -/obj/structure/table/glass, -/obj/machinery/light{ - dir = 1 - }, -/obj/item/weapon/pen, -/turf/open/floor/plasteel/darkblue/side{ - tag = "icon-darkblue (NORTH)"; - dir = 1 - }, -/area/bridge) -"aqo" = ( -/obj/machinery/computer/card, -/obj/machinery/camera{ - c_tag = "Bridge - Central"; - dir = 2; - network = list("SS13") - }, -/turf/open/floor/plasteel/darkblue/side{ - tag = "icon-darkblue (NORTH)"; - dir = 1 - }, -/area/bridge) -"aqp" = ( -/obj/machinery/computer/communications, -/turf/open/floor/plasteel/darkblue/side{ - tag = "icon-darkblue (NORTH)"; - dir = 1 - }, -/area/bridge) -"aqq" = ( -/obj/machinery/computer/teleporter, -/turf/open/floor/plasteel/darkblue/side{ - tag = "icon-darkblue (NORTH)"; - dir = 1 - }, -/area/bridge) -"aqr" = ( -/obj/machinery/ai_status_display{ - pixel_y = 32 - }, -/obj/structure/table/glass, -/obj/machinery/light{ - dir = 1 - }, -/obj/machinery/recharger, -/turf/open/floor/plasteel/darkblue/side{ - tag = "icon-darkblue (NORTH)"; - dir = 1 - }, -/area/bridge) -"aqs" = ( -/obj/machinery/computer/security, -/turf/open/floor/plasteel/darkred/side{ - dir = 1 - }, -/area/bridge) -"aqt" = ( -/obj/machinery/computer/secure_data, -/turf/open/floor/plasteel/darkred/side{ - dir = 1 - }, -/area/bridge) -"aqu" = ( -/obj/machinery/computer/prisoner, -/turf/open/floor/plasteel/darkred/side{ - dir = 5 - }, -/area/bridge) -"aqv" = ( -/obj/structure/lattice, -/obj/machinery/camera{ - c_tag = "Bridge Starboard Exterior"; - dir = 1 - }, -/turf/open/space, -/area/space) -"aqw" = ( -/turf/closed/wall/r_wall, -/area/ai_monitored/nuke_storage) -"aqx" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating{ - burnt = 1; - icon_state = "panelscorched" - }, -/area/maintenance/fsmaint) -"aqy" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/door/airlock/maintenance{ - req_access_txt = "12" - }, -/turf/open/floor/plating, -/area/crew_quarters/sleep) -"aqz" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - on = 1 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/barber, -/area/crew_quarters/sleep) -"aqA" = ( -/obj/effect/landmark/event_spawn, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/barber, -/area/crew_quarters/sleep) -"aqB" = ( -/obj/effect/landmark/start{ - name = "Assistant" - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - on = 1 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/barber, -/area/crew_quarters/sleep) -"aqC" = ( -/obj/structure/bedsheetbin, -/obj/machinery/newscaster{ - pixel_x = 32 - }, -/obj/structure/cable{ - icon_state = "1-8" - }, -/turf/open/floor/plasteel/barber, -/area/crew_quarters/sleep) -"aqD" = ( -/obj/machinery/door/airlock/external{ - name = "Escape Pod" - }, -/turf/open/floor/plating, -/area/crew_quarters/sleep) -"aqE" = ( -/obj/item/clothing/under/kilt, -/obj/item/clothing/head/collectable/wizard, -/obj/structure/closet/cardboard, -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plating, -/area/maintenance/fsmaint) -"aqF" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/light{ - dir = 1 - }, -/obj/item/weapon/cigbutt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint) -"aqG" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 10 - }, -/obj/effect/decal/cleanable/cobweb{ - icon_state = "cobweb2" - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint) -"aqH" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/effect/decal/cleanable/vomit/old, -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4"; - tag = "" - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Brig Maintenance" - }) -"aqI" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Brig Maintenance" - }) -"aqJ" = ( -/obj/item/clothing/head/cone, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Brig Maintenance" - }) -"aqK" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Brig Maintenance" - }) -"aqL" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Brig Maintenance" - }) -"aqM" = ( -/obj/machinery/door/airlock/titanium{ - name = "Labor Shuttle Airlock"; - req_access_txt = "2" - }, -/turf/open/floor/plasteel/black, -/area/shuttle/labor) -"aqN" = ( -/obj/machinery/mineral/stacking_machine/laborstacker{ - input_dir = 2; - output_dir = 1 - }, -/turf/open/floor/plasteel/black, -/area/shuttle/labor) -"aqO" = ( -/obj/machinery/atmospherics/pipe/manifold/cyan/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/plasteel/red/side{ - dir = 10 - }, -/area/security/brig) -"aqP" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel, -/area/security/brig) -"aqQ" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/red/side, -/area/security/brig) -"aqR" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0; - tag = "" - }, -/obj/machinery/light, -/obj/machinery/atmospherics/pipe/simple/cyan/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/obj/machinery/door_timer{ - id = "Cell 1"; - name = "Cell 1"; - pixel_y = -32 - }, -/turf/open/floor/plasteel/red/side, -/area/security/brig) -"aqS" = ( -/obj/machinery/atmospherics/pipe/manifold/cyan/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plasteel/red/side, -/area/security/brig) -"aqT" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/obj/machinery/door_timer{ - id = "Cell 2"; - name = "Cell 2"; - pixel_y = -32 - }, -/turf/open/floor/plasteel/red/side, -/area/security/brig) -"aqU" = ( -/obj/machinery/atmospherics/pipe/manifold/cyan/hidden, -/turf/open/floor/plasteel, -/area/security/brig) -"aqV" = ( -/obj/machinery/light, -/obj/machinery/atmospherics/pipe/simple/cyan/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/obj/machinery/door_timer{ - id = "Cell 3"; - name = "Cell 3"; - pixel_y = -32 - }, -/turf/open/floor/plasteel/red/side, -/area/security/brig) -"aqW" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/red/side, -/area/security/brig) -"aqX" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/manifold/cyan/hidden, -/turf/open/floor/plasteel/red/side, -/area/security/brig) -"aqY" = ( -/obj/machinery/light, -/obj/machinery/atmospherics/pipe/simple/cyan/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/red/side, -/area/security/brig) -"aqZ" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/red/side{ - dir = 6 - }, -/area/security/brig) -"ara" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/closed/wall, -/area/security/brig) -"arb" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/atmospherics/pipe/simple/cyan/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/black, -/area/security/brig) -"arc" = ( -/obj/structure/chair{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/cyan/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/black, -/area/security/brig) -"ard" = ( -/obj/structure/table, -/obj/item/weapon/folder/red, -/obj/item/device/taperecorder{ - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/cyan/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/black, -/area/security/brig) -"are" = ( -/obj/structure/chair{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/cyan/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/black, -/area/security/brig) -"arf" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/hidden{ - tag = "icon-intact (SOUTHWEST)"; - icon_state = "intact"; - dir = 10 - }, -/turf/open/floor/plasteel/black, -/area/security/brig) -"arg" = ( -/turf/closed/wall/r_wall, -/area/bridge) -"arh" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4"; - tag = "" - }, -/turf/closed/wall/r_wall, -/area/bridge) -"ari" = ( -/obj/structure/chair/office/dark{ - dir = 1 - }, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/machinery/keycard_auth{ - pixel_x = -28; - pixel_y = 9 - }, -/obj/machinery/button/door{ - id = "bridge blast"; - name = "Bridge Entrance Lockdown"; - pixel_x = -28; - pixel_y = -2; - req_access_txt = "19" - }, -/turf/open/floor/plasteel/darkgreen/side{ - dir = 8 - }, -/area/bridge) -"arj" = ( -/obj/structure/chair/office/dark{ - dir = 1 - }, -/turf/open/floor/plasteel/black, -/area/bridge) -"ark" = ( -/turf/open/floor/plasteel/black, -/area/bridge) -"arl" = ( -/obj/structure/chair/office/dark{ - dir = 1 - }, -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/machinery/button/door{ - id = "bridgespace"; - name = "Bridge Space Lockdown"; - pixel_x = 28; - pixel_y = 8; - req_access_txt = "19" - }, -/obj/machinery/button/door{ - id = "bridge blast"; - name = "Bridge Entrance Lockdown"; - pixel_x = 28; - pixel_y = -2; - req_access_txt = "19" - }, -/turf/open/floor/plasteel/darkred/side{ - dir = 4 - }, -/area/bridge) -"arm" = ( -/obj/structure/cable{ - icon_state = "1-8" - }, -/turf/closed/wall/r_wall, -/area/bridge) -"arn" = ( -/turf/closed/wall, -/area/bridge) -"aro" = ( -/obj/machinery/computer/bank_machine, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/ai_monitored/nuke_storage) -"arp" = ( -/obj/machinery/light_switch{ - pixel_y = 28 - }, -/turf/open/floor/plasteel/circuit/gcircuit{ - luminosity = 2 - }, -/area/ai_monitored/nuke_storage) -"arq" = ( -/obj/machinery/airalarm{ - pixel_y = 23 - }, -/obj/machinery/light{ - dir = 1 - }, -/turf/open/floor/plasteel/circuit/gcircuit{ - luminosity = 2 - }, -/area/ai_monitored/nuke_storage) -"arr" = ( -/obj/machinery/power/apc{ - dir = 1; - name = "Vault APC"; - pixel_x = 0; - pixel_y = 25 - }, -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/turf/open/floor/plasteel/circuit/gcircuit{ - luminosity = 2 - }, -/area/ai_monitored/nuke_storage) -"ars" = ( -/obj/structure/filingcabinet, -/obj/item/weapon/folder/documents, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/ai_monitored/nuke_storage) -"art" = ( -/obj/machinery/power/apc{ - dir = 8; - name = "Dormitory Maintenance APC"; - pixel_x = -24; - pixel_y = 0 - }, -/obj/structure/cable, -/obj/machinery/light/small, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 5 - }, -/turf/open/floor/plating{ - burnt = 1; - icon_state = "panelscorched" - }, -/area/maintenance/fsmaint) -"aru" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/crew_quarters/sleep) -"arv" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 4; - initialize_directions = 11 - }, -/turf/open/floor/plasteel/barber, -/area/crew_quarters/sleep) -"arw" = ( -/obj/machinery/light, -/obj/machinery/camera{ - c_tag = "Laundry Room"; - dir = 1 - }, -/turf/open/floor/plasteel/barber, -/area/crew_quarters/sleep) -"arx" = ( -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/barber, -/area/crew_quarters/sleep) -"ary" = ( -/obj/machinery/disposal/bin, -/obj/structure/disposalpipe/trunk{ - dir = 8 - }, -/turf/open/floor/plasteel/barber, -/area/crew_quarters/sleep) -"arz" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 9 - }, -/turf/open/floor/plasteel/black, -/area/chapel/main{ - name = "Monastery" - }) -"arA" = ( -/turf/open/floor/plating, -/area/crew_quarters/sleep) -"arB" = ( -/obj/machinery/light/small{ - dir = 4 - }, -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; - icon_state = "space"; - layer = 4; - name = "EXTERNAL AIRLOCK"; - pixel_x = 32; - pixel_y = 0 - }, -/obj/structure/closet/emcloset{ - anchored = 1; - desc = "It's a storage unit for emergency breath masks and O2 tanks, and is securely bolted in place."; - name = "anchored emergency closet" - }, -/turf/open/floor/plating, -/area/crew_quarters/sleep) -"arC" = ( -/obj/structure/closet, -/obj/item/weapon/weldingtool, -/obj/item/weapon/crowbar, -/turf/open/floor/plating, -/area/maintenance/fsmaint) -"arD" = ( -/turf/closed/wall, -/area/crew_quarters/fitness{ - name = "Recreation Room" - }) -"arE" = ( -/obj/structure/closet/crate{ - icon_state = "crateopen"; - opened = 1 - }, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 2; - name = "2maintenance loot spawner" - }, -/obj/item/clothing/mask/balaclava, -/turf/open/floor/plating, -/area/maintenance/fsmaint) -"arF" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0; - tag = "" - }, -/turf/open/floor/plasteel/circuit/gcircuit, -/area/maintenance/fpmaint2{ - name = "Brig Maintenance" - }) -"arG" = ( -/turf/open/floor/plasteel/circuit/gcircuit, -/area/maintenance/fpmaint2{ - name = "Brig Maintenance" - }) -"arH" = ( -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/labor) -"arI" = ( -/obj/machinery/mineral/labor_claim_console{ - machinedir = 1; - pixel_x = 30; - pixel_y = 0 - }, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/labor) -"arJ" = ( -/turf/open/space, -/area/security/brig) -"arK" = ( -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/cyan/hidden, -/turf/open/floor/plating, -/area/security/brig) -"arL" = ( -/obj/machinery/door/window/brigdoor{ - id = "Cell 1"; - name = "Cell 1"; - req_access_txt = "1" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/red/side, -/area/security/brig) -"arM" = ( -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/security/brig) -"arN" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4"; - tag = "" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/turf/closed/wall, -/area/security/brig) -"arO" = ( -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/cyan/hidden, -/turf/open/floor/plating, -/area/security/brig) -"arP" = ( -/obj/machinery/door/window/brigdoor{ - id = "Cell 2"; - name = "Cell 2"; - req_access_txt = "1" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/red/side, -/area/security/brig) -"arQ" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/closed/wall, -/area/security/brig) -"arR" = ( -/obj/machinery/door/window/brigdoor{ - id = "Cell 3"; - name = "Cell 3"; - req_access_txt = "1" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/red/side, -/area/security/brig) -"arS" = ( -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/security/brig) -"arT" = ( -/obj/machinery/door/airlock/glass_security{ - cyclelinkeddir = 2; - id_tag = "innerbrig"; - name = "Brig"; - req_access_txt = "63" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/red/side{ - dir = 8 - }, -/area/security/brig) -"arU" = ( -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/brig) -"arV" = ( -/obj/machinery/door/airlock/glass_security{ - cyclelinkeddir = 2; - id_tag = "innerbrig"; - name = "Brig"; - req_access_txt = "63" - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/red/side{ - tag = "icon-red (EAST)"; - dir = 4 - }, -/area/security/brig) -"arW" = ( -/obj/machinery/door/airlock/glass_security{ - name = "Brig Desk"; - req_access_txt = "1" - }, -/obj/machinery/atmospherics/pipe/simple/cyan/hidden, -/turf/open/floor/plasteel/black, -/area/security/brig) -"arX" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/black, -/area/security/brig) -"arY" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/turf/open/floor/plasteel/black, -/area/security/brig) -"arZ" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0; - tag = "" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/door/airlock/command{ - name = "Emergency Escape"; - req_access = null; - req_access_txt = "20" - }, -/turf/open/floor/plating, -/area/maintenance/fore) -"asa" = ( -/obj/structure/window/reinforced, -/turf/open/space, -/area/space) -"asb" = ( -/obj/machinery/computer/atmos_alert, -/turf/open/floor/plasteel/darkpurple, -/area/bridge) -"asc" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/darkpurple/side{ - dir = 8 - }, -/area/bridge) -"asd" = ( -/turf/open/floor/plasteel/darkblue/corner{ - tag = "icon-darkbluecorners (EAST)"; - dir = 4 - }, -/area/bridge) -"ase" = ( -/turf/open/floor/plasteel/darkblue/side{ - dir = 1 - }, -/area/bridge) -"asf" = ( -/obj/item/device/radio/beacon, -/turf/open/floor/plasteel/darkblue/side{ - dir = 1 - }, -/area/bridge) -"asg" = ( -/turf/open/floor/plasteel/darkblue/corner{ - dir = 1 - }, -/area/bridge) -"ash" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/darkyellow/side{ - dir = 4 - }, -/area/bridge) -"asi" = ( -/obj/machinery/computer/shuttle/labor, -/turf/open/floor/plasteel/darkyellow, -/area/bridge) -"asj" = ( -/obj/machinery/door/airlock/external{ - cyclelinkeddir = 2; - name = "Bridge External Access"; - req_access = null; - req_access_txt = "10;13" - }, -/turf/open/floor/plating, -/area/bridge) -"ask" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/vault{ - dir = 1 - }, -/area/ai_monitored/nuke_storage) -"asl" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 10 - }, -/turf/open/floor/plasteel/circuit/gcircuit{ - luminosity = 2 - }, -/area/ai_monitored/nuke_storage) -"asm" = ( -/obj/machinery/nuclearbomb/selfdestruct, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/ai_monitored/nuke_storage) -"asn" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 6 - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/circuit/gcircuit{ - luminosity = 2 - }, -/area/ai_monitored/nuke_storage) -"aso" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/plasteel/vault{ - dir = 4 - }, -/area/ai_monitored/nuke_storage) -"asp" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/closed/wall, -/area/crew_quarters/sleep) -"asq" = ( -/obj/machinery/door/airlock{ - name = "Laundry Room" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/barber, -/area/crew_quarters/sleep) -"asr" = ( -/obj/structure/table, -/obj/effect/spawner/lootdrop/maintenance, -/obj/item/weapon/storage/box/lights/mixed, -/turf/open/floor/plating, -/area/maintenance/fsmaint) -"ass" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 5 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint) -"ast" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/structure/grille/broken, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint) -"asu" = ( -/obj/effect/spawner/lootdrop/maintenance, -/obj/structure/cable{ - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 9; - pixel_y = 0 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint) -"asv" = ( -/turf/open/floor/engine{ - name = "Holodeck Projector Floor" - }, -/area/holodeck/rec_center) -"asw" = ( -/obj/machinery/mech_bay_recharge_port, -/obj/structure/cable, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Brig Maintenance" - }) -"asx" = ( -/obj/item/clothing/head/collectable/police, -/turf/open/floor/mech_bay_recharge_floor, -/area/maintenance/fpmaint2{ - name = "Brig Maintenance" - }) -"asy" = ( -/obj/machinery/computer/mech_bay_power_console, -/obj/structure/cable, -/turf/open/floor/plasteel, -/area/maintenance/fpmaint2{ - name = "Brig Maintenance" - }) -"asz" = ( -/obj/structure/chair{ - dir = 4 - }, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/labor) -"asA" = ( -/obj/structure/chair{ - dir = 8 - }, -/obj/machinery/flasher{ - id = "gulagshuttleflasher"; - pixel_x = 25 - }, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/labor) -"asB" = ( -/obj/item/device/radio/intercom{ - desc = "Talk through this. It looks like it has been modified to not broadcast."; - dir = 2; - name = "Prison Intercom (General)"; - pixel_x = -25; - pixel_y = -2; - prison_radio = 1 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/turf/open/floor/plasteel/floorgrime, -/area/security/brig) -"asC" = ( -/turf/open/floor/plasteel/floorgrime, -/area/security/brig) -"asD" = ( -/obj/machinery/light/small{ - dir = 4 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/floorgrime, -/area/security/brig) -"asE" = ( -/obj/effect/landmark/event_spawn, -/turf/open/floor/plasteel/floorgrime, -/area/security/brig) -"asF" = ( -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/flasher{ - id = "brigentry"; - pixel_x = -28 - }, -/turf/open/floor/plasteel/red/side{ - dir = 8 - }, -/area/security/brig) -"asG" = ( -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/red/side{ - tag = "icon-red (EAST)"; - dir = 4 - }, -/area/security/brig) -"asH" = ( -/obj/structure/table/reinforced, -/obj/machinery/door/window/eastleft{ - dir = 8; - name = "Brig Desk"; - req_access_txt = "1" - }, -/obj/item/weapon/paper_bin{ - pixel_x = 0; - pixel_y = 0; - tag = "every single paper bin is edited to this" - }, -/obj/item/weapon/pen{ - layer = 3.1 - }, -/turf/open/floor/plasteel/black, -/area/security/brig) -"asI" = ( -/obj/machinery/computer/secure_data, -/obj/machinery/button/door{ - desc = "A remote control switch for the medbay foyer."; - id = "innerbrig"; - name = "Brig Interior Doors Control"; - normaldoorcontrol = 1; - pixel_x = -6; - pixel_y = 36; - req_access_txt = "63" - }, -/obj/machinery/button/door{ - desc = "A remote control switch for the medbay foyer."; - id = "outerbrig"; - name = "Brig Exterior Doors Control"; - normaldoorcontrol = 1; - pixel_x = -6; - pixel_y = 24; - req_access_txt = "63" - }, -/obj/machinery/button/flasher{ - id = "brigentry"; - pixel_x = 6; - pixel_y = 24 - }, -/turf/open/floor/plasteel/black, -/area/security/brig) -"asJ" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/hidden, -/turf/open/floor/plasteel/black, -/area/security/brig) -"asK" = ( -/obj/machinery/computer/security, -/turf/open/floor/plasteel/black, -/area/security/brig) -"asL" = ( -/turf/closed/wall, -/area/crew_quarters/captain) -"asM" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall, -/area/crew_quarters/captain) -"asN" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0; - tag = "" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/light/small{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fore) -"asO" = ( -/obj/structure/window/reinforced{ - dir = 1; - layer = 2.9 - }, -/turf/open/floor/plasteel/black, -/area/crew_quarters/captain) -"asP" = ( -/obj/machinery/computer/monitor{ - name = "Bridge Power Monitoring Console" - }, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/turf/open/floor/plasteel/darkpurple, -/area/bridge) -"asQ" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/turf/open/floor/plasteel/darkpurple/side{ - dir = 8 - }, -/area/bridge) -"asR" = ( -/turf/open/floor/plasteel/darkblue/side{ - tag = "icon-darkblue (EAST)"; - dir = 4 - }, -/area/bridge) -"asS" = ( -/obj/structure/chair/comfy/black, -/turf/open/floor/plasteel/black, -/area/bridge) -"asT" = ( -/turf/open/floor/plasteel/darkblue/side{ - dir = 8 - }, -/area/bridge) -"asU" = ( -/obj/machinery/computer/cargo/request, -/turf/open/floor/plasteel/darkyellow, -/area/bridge) -"asV" = ( -/obj/structure/closet/emcloset{ - anchored = 1; - desc = "It's a storage unit for emergency breath masks and O2 tanks, and is securely bolted in place."; - name = "anchored emergency closet" - }, -/turf/open/floor/plating, -/area/bridge) -"asW" = ( -/turf/open/floor/plating, -/area/bridge) -"asX" = ( -/obj/machinery/light/small{ - dir = 4 - }, -/obj/machinery/suit_storage_unit/standard_unit, -/turf/open/floor/plating, -/area/bridge) -"asY" = ( -/obj/structure/closet/crate{ - name = "Gold Crate" - }, -/obj/item/stack/sheet/mineral/gold{ - pixel_x = -1; - pixel_y = 5 - }, -/obj/item/stack/sheet/mineral/gold{ - pixel_y = 2 - }, -/obj/item/stack/sheet/mineral/gold{ - pixel_x = 1; - pixel_y = -2 - }, -/obj/item/weapon/storage/belt/champion, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 6 - }, -/turf/open/floor/plasteel/vault{ - dir = 1 - }, -/area/ai_monitored/nuke_storage) -"asZ" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/circuit/gcircuit{ - luminosity = 2 - }, -/area/ai_monitored/nuke_storage) -"ata" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/effect/landmark{ - name = "revenantspawn" - }, -/turf/open/floor/plasteel/circuit/gcircuit{ - luminosity = 2 - }, -/area/ai_monitored/nuke_storage) -"atb" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 9; - pixel_y = 0 - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/circuit/gcircuit{ - luminosity = 2 - }, -/area/ai_monitored/nuke_storage) -"atc" = ( -/obj/item/weapon/coin/silver{ - pixel_x = 7; - pixel_y = 12 - }, -/obj/item/weapon/coin/silver{ - pixel_x = 12; - pixel_y = 7 - }, -/obj/item/weapon/coin/silver{ - pixel_x = 4; - pixel_y = 8 - }, -/obj/item/weapon/coin/silver{ - pixel_x = -6; - pixel_y = 5 - }, -/obj/item/weapon/coin/silver{ - pixel_x = 5; - pixel_y = -8 - }, -/obj/structure/closet/crate{ - name = "Silver Crate" - }, -/turf/open/floor/plasteel/vault{ - dir = 4 - }, -/area/ai_monitored/nuke_storage) -"atd" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "Dorm3Shutters"; - name = "Dorm Shutters" - }, -/turf/open/floor/plating, -/area/crew_quarters/sleep) -"ate" = ( -/obj/structure/bed, -/obj/item/weapon/bedsheet/nanotrasen, -/obj/machinery/button/door{ - id = "Dorm3Shutters"; - name = "Privacy Shutters Control"; - pixel_x = 0; - pixel_y = 26; - req_access_txt = "0" - }, -/turf/open/floor/wood, -/area/crew_quarters/sleep) -"atf" = ( -/obj/machinery/light/small{ - dir = 1 - }, -/obj/structure/sign/securearea{ - desc = "Under the painting a plaque reads: 'While the meat grinder may not have spared you, fear not. Not one part of you has gone to waste... You were delicious.'"; - icon_state = "monkey_painting"; - name = "Mr. Deempisi portrait"; - pixel_x = 0; - pixel_y = 28 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/wood, -/area/crew_quarters/sleep) -"atg" = ( -/obj/machinery/button/door{ - id = "Dorm3"; - name = "Dorm Bolt Control"; - normaldoorcontrol = 1; - pixel_x = 25; - pixel_y = 0; - req_access_txt = "0"; - specialfunctions = 4 - }, -/obj/structure/closet/secure_closet/personal/cabinet, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/open/floor/wood, -/area/crew_quarters/sleep) -"ath" = ( -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/blue/side{ - dir = 1 - }, -/area/crew_quarters/sleep) -"ati" = ( -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/sign/map{ - icon_state = "map-pubby"; - pixel_y = 32 - }, -/turf/open/floor/plasteel/blue/side{ - dir = 1 - }, -/area/crew_quarters/sleep) -"atj" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 10 - }, -/obj/machinery/camera{ - c_tag = "Dormitories Fore"; - dir = 2 - }, -/obj/machinery/light{ - dir = 1 - }, -/obj/machinery/computer/security/telescreen{ - desc = "Used for watching the monastery."; - name = "Monastery Monitor"; - network = list("Monastery"); - pixel_x = 0; - pixel_y = 32 - }, -/turf/open/floor/plasteel/blue/corner{ - dir = 1 - }, -/area/crew_quarters/sleep) -"atk" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/black, -/area/chapel/main{ - name = "Monastery" - }) -"atl" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/plasteel/black, -/area/chapel/main{ - name = "Monastery" - }) -"atm" = ( -/turf/open/floor/plasteel, -/area/crew_quarters/sleep) -"atn" = ( -/obj/machinery/firealarm{ - dir = 4; - pixel_x = 28 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/sleep) -"ato" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/crew_quarters/fitness{ - name = "Recreation Room" - }) -"atp" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/door/airlock/maintenance{ - req_access_txt = "12" - }, -/turf/open/floor/plating, -/area/crew_quarters/fitness{ - name = "Recreation Room" - }) -"atq" = ( -/obj/structure/closet/crate, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/labor) -"atr" = ( -/obj/machinery/door/airlock/titanium{ - id_tag = "prisonshuttle"; - name = "Labor Shuttle Airlock" - }, -/obj/docking_port/mobile{ - dir = 8; - dwidth = 2; - height = 5; - id = "laborcamp"; - name = "labor camp shuttle"; - port_angle = 90; - width = 9 - }, -/obj/docking_port/stationary{ - dir = 8; - dwidth = 2; - height = 5; - id = "laborcamp_home"; - name = "fore bay 1"; - width = 9 - }, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/labor) -"ats" = ( -/obj/machinery/door/airlock/external{ - name = "Labor Camp Shuttle Airlock" - }, -/turf/open/floor/plasteel/black, -/area/security/brig) -"att" = ( -/obj/machinery/light/small{ - dir = 4 - }, -/obj/machinery/camera{ - c_tag = "Labor Shuttle Dock"; - dir = 8; - network = list("SS13") - }, -/obj/machinery/gulag_item_reclaimer{ - pixel_y = 24 - }, -/turf/open/floor/plasteel/black, -/area/security/brig) -"atu" = ( -/obj/structure/bed, -/obj/item/weapon/bedsheet, -/obj/machinery/flasher{ - id = "Cell 1"; - pixel_x = -28 - }, -/turf/open/floor/plasteel/blue/side, -/area/security/brig) -"atv" = ( -/turf/open/floor/plasteel/blue/side, -/area/security/brig) -"atw" = ( -/obj/structure/closet/secure_closet/brig{ - id = "Cell 2"; - name = "Cell 2 Locker" - }, -/turf/open/floor/plasteel/blue/side, -/area/security/brig) -"atx" = ( -/obj/structure/bed, -/obj/item/weapon/bedsheet, -/obj/machinery/flasher{ - id = "Cell 2"; - pixel_x = -28 - }, -/turf/open/floor/plasteel/green/side, -/area/security/brig) -"aty" = ( -/turf/open/floor/plasteel/green/side, -/area/security/brig) -"atz" = ( -/obj/structure/closet/secure_closet/brig{ - id = "Cell 3"; - name = "Cell 3 Locker" - }, -/turf/open/floor/plasteel/green/side, -/area/security/brig) -"atA" = ( -/obj/structure/bed, -/obj/item/weapon/bedsheet, -/obj/machinery/flasher{ - id = "Cell 3"; - pixel_x = -28 - }, -/turf/open/floor/plasteel/yellow/side, -/area/security/brig) -"atB" = ( -/turf/open/floor/plasteel/yellow/side, -/area/security/brig) -"atC" = ( -/obj/structure/closet/secure_closet/brig{ - id = "Cell 3"; - name = "Cell 3 Locker" - }, -/turf/open/floor/plasteel/yellow/side, -/area/security/brig) -"atD" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/red/side{ - dir = 8 - }, -/area/security/brig) -"atE" = ( -/obj/structure/table/reinforced, -/obj/machinery/door/window/eastleft{ - dir = 8; - name = "Brig Desk"; - req_access_txt = "1" - }, -/obj/item/weapon/folder/red, -/obj/item/weapon/restraints/handcuffs, -/turf/open/floor/plasteel/black, -/area/security/brig) -"atF" = ( -/obj/structure/chair/office/dark{ - dir = 8 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - layer = 2.4; - on = 1 - }, -/turf/open/floor/plasteel/black, -/area/security/brig) -"atG" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/hidden{ - tag = "icon-intact (NORTHWEST)"; - icon_state = "intact"; - dir = 9 - }, -/turf/open/floor/plasteel/black, -/area/security/brig) -"atH" = ( -/obj/structure/chair/office/dark, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/black, -/area/security/brig) -"atI" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/crew_quarters/captain) -"atJ" = ( -/obj/structure/toilet{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/open/floor/plasteel/freezer, -/area/crew_quarters/captain) -"atK" = ( -/obj/structure/sink{ - pixel_y = 28 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/freezer, -/area/crew_quarters/captain) -"atL" = ( -/obj/machinery/light{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 10 - }, -/turf/open/floor/plasteel/freezer, -/area/crew_quarters/captain) -"atM" = ( -/obj/machinery/shower{ - dir = 1 - }, -/obj/item/weapon/soap/deluxe, -/obj/item/weapon/bikehorn/rubberducky, -/obj/effect/landmark{ - name = "revenantspawn" - }, -/obj/structure/curtain, -/turf/open/floor/plasteel/freezer, -/area/crew_quarters/captain) -"atN" = ( -/obj/machinery/vending/cigarette, -/turf/open/floor/plating, -/area/maintenance/fore) -"atO" = ( -/obj/machinery/door/airlock/command{ - name = "Balcony"; - req_access = null; - req_access_txt = "20" - }, -/turf/open/floor/plating, -/area/crew_quarters/captain) -"atP" = ( -/turf/open/floor/plasteel/vault, -/area/crew_quarters/captain) -"atQ" = ( -/obj/structure/chair{ - dir = 1 - }, -/obj/effect/landmark/event_spawn, -/turf/open/floor/plasteel/vault, -/area/crew_quarters/captain) -"atR" = ( -/obj/structure/chair{ - dir = 1 - }, -/obj/machinery/light, -/obj/machinery/camera{ - c_tag = "Captain's Balcony"; - dir = 1 - }, -/turf/open/floor/plasteel/vault, -/area/crew_quarters/captain) -"atS" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-20"; - layer = 4.1; - pixel_y = 3 - }, -/turf/open/floor/plasteel/vault, -/area/crew_quarters/captain) -"atT" = ( -/obj/machinery/computer/station_alert, -/turf/open/floor/plasteel/darkpurple, -/area/bridge) -"atU" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/darkblue/side{ - tag = "icon-darkblue (EAST)"; - dir = 4 - }, -/area/bridge) -"atV" = ( -/obj/structure/table/glass, -/obj/item/weapon/storage/box/ids{ - pixel_x = 4; - pixel_y = 4 - }, -/obj/item/weapon/storage/box/PDAs, -/turf/open/floor/plasteel/black, -/area/bridge) -"atW" = ( -/obj/structure/table/glass, -/obj/item/weapon/storage/firstaid/regular, -/turf/open/floor/plasteel/black, -/area/bridge) -"atX" = ( -/obj/structure/table/glass, -/obj/item/weapon/storage/toolbox/emergency, -/turf/open/floor/plasteel/black, -/area/bridge) -"atY" = ( -/obj/structure/table/glass, -/obj/item/device/aicard, -/turf/open/floor/plasteel/black, -/area/bridge) -"atZ" = ( -/obj/structure/table/glass, -/obj/item/weapon/restraints/handcuffs, -/obj/item/device/assembly/flash/handheld, -/obj/item/device/laser_pointer/blue, -/turf/open/floor/plasteel/black, -/area/bridge) -"aua" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - on = 1 - }, -/turf/open/floor/plasteel/darkblue/side{ - dir = 8 - }, -/area/bridge) -"aub" = ( -/obj/machinery/computer/security/mining, -/turf/open/floor/plasteel/darkyellow, -/area/bridge) -"auc" = ( -/obj/machinery/door/airlock/external{ - cyclelinkeddir = 1; - name = "Bridge External Access"; - req_access = null; - req_access_txt = "10;13" - }, -/turf/open/floor/plating, -/area/bridge) -"aud" = ( -/obj/structure/window/reinforced/fulltile, -/obj/structure/transit_tube, -/turf/open/floor/plating, -/area/bridge) -"aue" = ( -/obj/structure/closet/secure_closet/freezer/money, -/obj/item/weapon/reagent_containers/food/drinks/bottle/vodka/badminka, -/obj/item/weapon/reagent_containers/food/drinks/drinkingglass/shotglass, -/obj/item/weapon/reagent_containers/food/drinks/drinkingglass/shotglass, -/obj/item/clothing/head/bearpelt, -/obj/item/weapon/skub, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/vault{ - dir = 1 - }, -/area/ai_monitored/nuke_storage) -"auf" = ( -/obj/machinery/light, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 5 - }, -/turf/open/floor/plasteel/black, -/area/ai_monitored/nuke_storage) -"aug" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 10 - }, -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/turf/open/floor/plasteel/black, -/area/ai_monitored/nuke_storage) -"auh" = ( -/obj/machinery/camera/motion{ - c_tag = "Vault"; - dir = 1; - network = list("SS13") - }, -/obj/machinery/light, -/obj/structure/cable{ - icon_state = "1-8" - }, -/turf/open/floor/plasteel/black, -/area/ai_monitored/nuke_storage) -"aui" = ( -/obj/structure/safe, -/obj/item/weapon/bikehorn/golden, -/obj/item/ammo_box/a357, -/obj/item/weapon/tank/internals/plasma/full, -/obj/item/weapon/disk/fakenucleardisk, -/obj/item/weapon/gun/energy/disabler, -/turf/open/floor/plasteel/vault{ - dir = 4 - }, -/area/ai_monitored/nuke_storage) -"auj" = ( -/obj/structure/table/wood, -/obj/item/weapon/storage/book/bible, -/turf/open/floor/wood, -/area/crew_quarters/sleep) -"auk" = ( -/obj/structure/chair/wood/normal{ - icon_state = "wooden_chair"; - dir = 8 - }, -/turf/open/floor/wood, -/area/crew_quarters/sleep) -"aul" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/wood{ - icon_state = "wood-broken7" - }, -/area/crew_quarters/sleep) -"aum" = ( -/obj/machinery/door/airlock{ - id_tag = "Dorm3"; - name = "Dorm 3" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/sleep) -"aun" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/sleep) -"auo" = ( -/obj/structure/disposalpipe/junction{ - icon_state = "pipe-j2"; - dir = 2 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - on = 1 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/sleep) -"aup" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/crew_quarters/sleep) -"auq" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/sleep) -"aur" = ( -/obj/structure/grille, -/obj/structure/window/fulltile, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plating, -/area/crew_quarters/fitness{ - name = "Recreation Room" - }) -"aus" = ( -/obj/structure/closet/athletic_mixed, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/arrival{ - dir = 1 - }, -/area/crew_quarters/fitness{ - name = "Recreation Room" - }) -"aut" = ( -/obj/structure/closet/lasertag/blue, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/airalarm{ - pixel_y = 22 - }, -/turf/open/floor/plasteel/arrival{ - dir = 1 - }, -/area/crew_quarters/fitness{ - name = "Recreation Room" - }) -"auu" = ( -/obj/structure/closet/lasertag/red, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/status_display{ - density = 0; - layer = 4; - pixel_x = 0; - pixel_y = 32 - }, -/turf/open/floor/plasteel/arrival{ - dir = 1 - }, -/area/crew_quarters/fitness{ - name = "Recreation Room" - }) -"auv" = ( -/obj/machinery/disposal/bin, -/obj/machinery/light{ - dir = 1 - }, -/obj/structure/disposalpipe/trunk{ - dir = 8 - }, -/obj/machinery/camera{ - c_tag = "Fitness Room"; - dir = 2 - }, -/obj/machinery/computer/security/telescreen/entertainment{ - pixel_y = 32 - }, -/turf/open/floor/plasteel/arrival{ - dir = 1 - }, -/area/crew_quarters/fitness{ - name = "Recreation Room" - }) -"auw" = ( -/obj/machinery/vending/clothing, -/turf/open/floor/plasteel/arrival{ - dir = 1 - }, -/area/crew_quarters/fitness{ - name = "Recreation Room" - }) -"aux" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-05"; - layer = 4.1 - }, -/obj/machinery/power/apc{ - dir = 1; - name = "Fitness Room APC"; - pixel_x = 0; - pixel_y = 24 - }, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness{ - name = "Recreation Room" - }) -"auy" = ( -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/extinguisher_cabinet{ - pixel_x = 26 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness{ - name = "Recreation Room" - }) -"auz" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4"; - tag = "" - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Brig Maintenance" - }) -"auA" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8"; - tag = "" - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Brig Maintenance" - }) -"auB" = ( -/obj/effect/spawner/lootdrop/maintenance, -/obj/effect/decal/cleanable/cobweb{ - icon_state = "cobweb2" - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Brig Maintenance" - }) -"auC" = ( -/obj/structure/shuttle/engine/heater, -/obj/structure/window/reinforced{ - dir = 1; - layer = 2.9 - }, -/turf/open/floor/plating, -/area/shuttle/labor) -"auD" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass_security{ - name = "Labor Camp Shuttle Airlock"; - req_access_txt = "0" - }, -/turf/open/floor/plasteel/black, -/area/security/brig) -"auE" = ( -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/structure/grille, -/obj/machinery/door/poddoor/preopen{ - id = "Secure Gate"; - name = "brig shutters" - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/brig) -"auF" = ( -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/structure/grille, -/obj/machinery/door/poddoor/preopen{ - id = "Secure Gate"; - name = "brig shutters" - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/brig) -"auG" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/turf/closed/wall, -/area/security/brig) -"auH" = ( -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/structure/grille, -/obj/machinery/door/poddoor/preopen{ - id = "Secure Gate"; - name = "brig shutters" - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/brig) -"auI" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass_security{ - cyclelinkeddir = 1; - id_tag = "outerbrig"; - name = "Brig"; - req_access_txt = "63" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/red/side{ - dir = 8 - }, -/area/security/brig) -"auJ" = ( -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/structure/cable, -/obj/structure/grille, -/obj/machinery/door/poddoor/preopen{ - id = "Secure Gate"; - name = "brig shutters" - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/brig) -"auK" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass_security{ - cyclelinkeddir = 1; - id_tag = "outerbrig"; - name = "Brig"; - req_access_txt = "63" - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/red/side{ - tag = "icon-red (EAST)"; - dir = 4 - }, -/area/security/brig) -"auL" = ( -/obj/structure/table/reinforced, -/obj/machinery/door/window/southleft{ - base_state = "right"; - dir = 1; - icon_state = "right"; - name = "Brig Desk"; - req_access_txt = "1" - }, -/obj/machinery/door/poddoor/preopen{ - id = "Secure Gate"; - name = "brig shutters" - }, -/obj/item/device/radio, -/turf/open/floor/plasteel/black, -/area/security/brig) -"auM" = ( -/obj/machinery/door/window/southleft{ - base_state = "right"; - dir = 1; - icon_state = "right"; - name = "Brig Desk"; - req_access_txt = "1" - }, -/obj/item/weapon/reagent_containers/food/snacks/donut{ - layer = 3 - }, -/obj/machinery/door/poddoor/preopen{ - id = "Secure Gate"; - name = "brig shutters" - }, -/obj/structure/table/reinforced, -/obj/item/weapon/folder/red{ - layer = 2.9 - }, -/turf/open/floor/plasteel/black, -/area/security/brig) -"auN" = ( -/obj/structure/table/reinforced, -/obj/machinery/door/window/southleft{ - base_state = "right"; - dir = 1; - icon_state = "right"; - layer = 2.7; - name = "Brig Desk"; - req_access_txt = "1" - }, -/obj/item/weapon/pen{ - layer = 3 - }, -/obj/machinery/door/poddoor/preopen{ - id = "Secure Gate"; - name = "brig shutters" - }, -/turf/open/floor/plasteel/black, -/area/security/brig) -"auO" = ( -/turf/closed/wall/r_wall, -/area/crew_quarters/captain) -"auP" = ( -/obj/machinery/door/airlock{ - name = "Private Restroom"; - req_access_txt = "0" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/freezer, -/area/crew_quarters/captain) -"auQ" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0; - tag = "" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/door/airlock/command{ - name = "Captain's Office Access"; - req_access = null; - req_access_txt = "20" - }, -/turf/open/floor/plating, -/area/crew_quarters/captain) -"auR" = ( -/obj/machinery/light{ - dir = 8 - }, -/obj/machinery/firealarm{ - dir = 4; - pixel_x = -28 - }, -/turf/open/floor/plasteel/darkblue/side{ - dir = 8 - }, -/area/bridge) -"auS" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/black, -/area/bridge) -"auT" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/darkblue/side{ - tag = "icon-darkblue (EAST)"; - dir = 4 - }, -/area/bridge) -"auU" = ( -/obj/structure/chair/comfy/black{ - dir = 1 - }, -/turf/open/floor/plasteel/black, -/area/bridge) -"auV" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/darkblue/side{ - dir = 8 - }, -/area/bridge) -"auW" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/poddoor{ - density = 0; - icon_state = "open"; - id = "bridgespace"; - name = "bridge external shutters"; - opacity = 0 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/bridge) -"auX" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - on = 1 - }, -/turf/open/floor/plasteel/black, -/area/bridge) -"auY" = ( -/obj/machinery/camera{ - c_tag = "Bridge MiniSat Access"; - dir = 4; - network = list("SS13") - }, -/obj/machinery/light{ - dir = 1 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - on = 1 - }, -/turf/open/floor/plasteel, -/area/bridge) -"auZ" = ( -/obj/structure/transit_tube, -/turf/open/floor/plating/warnplate{ - dir = 8 - }, -/area/bridge) -"ava" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/bridge) -"avb" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 5 - }, -/turf/closed/wall/r_wall, -/area/ai_monitored/nuke_storage) -"avc" = ( -/obj/structure/sign/securearea, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 10 - }, -/turf/closed/wall/r_wall, -/area/ai_monitored/nuke_storage) -"avd" = ( -/obj/machinery/door/airlock/vault{ - icon_state = "door_locked"; - locked = 1; - req_access_txt = "53" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/vault, -/area/ai_monitored/nuke_storage) -"ave" = ( -/obj/structure/sign/securearea, -/turf/closed/wall/r_wall, -/area/ai_monitored/nuke_storage) -"avf" = ( -/obj/structure/sign/poster{ - pixel_x = -32 - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 8; - initialize_directions = 11 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/sleep) -"avg" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/open/floor/carpet, -/area/crew_quarters/sleep) -"avh" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/chair/comfy/brown, -/turf/open/floor/carpet, -/area/crew_quarters/sleep) -"avi" = ( -/obj/effect/landmark/start{ - name = "Assistant" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/chair/comfy/brown, -/turf/open/floor/carpet, -/area/crew_quarters/sleep) -"avj" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/chair/comfy/brown, -/turf/open/floor/carpet, -/area/crew_quarters/sleep) -"avk" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/carpet, -/area/crew_quarters/sleep) -"avl" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 10 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/sleep) -"avm" = ( -/obj/structure/grille, -/obj/structure/window/fulltile, -/turf/open/floor/plating, -/area/crew_quarters/fitness{ - name = "Recreation Room" - }) -"avn" = ( -/turf/open/floor/plasteel, -/area/crew_quarters/fitness{ - name = "Recreation Room" - }) -"avo" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - on = 1 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness{ - name = "Recreation Room" - }) -"avp" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass{ - name = "Holodeck Door" - }, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness{ - name = "Recreation Room" - }) -"avq" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness{ - name = "Recreation Room" - }) -"avr" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 9; - pixel_y = 0 - }, -/obj/effect/landmark{ - name = "xeno_spawn"; - pixel_x = -1 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness{ - name = "Recreation Room" - }) -"avs" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/maintenance/auxsolarport{ - name = "Port Solar Maintenance" - }) -"avt" = ( -/turf/closed/wall, -/area/maintenance/auxsolarport{ - name = "Port Solar Maintenance" - }) -"avu" = ( -/obj/structure/shuttle/engine/propulsion, -/turf/open/floor/plating, -/area/shuttle/labor) -"avv" = ( -/obj/machinery/door/poddoor/preopen{ - id = "prison release"; - name = "prisoner processing blast door" - }, -/turf/open/floor/plasteel/delivery{ - name = "floor" - }, -/area/security/brig) -"avw" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-10"; - layer = 4.1 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/fore) -"avx" = ( -/turf/open/floor/plasteel, -/area/hallway/primary/fore) -"avy" = ( -/obj/machinery/light{ - dir = 1 - }, -/obj/machinery/airalarm{ - pixel_y = 22 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/fore) -"avz" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/hallway/primary/fore) -"avA" = ( -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel, -/area/hallway/primary/fore) -"avB" = ( -/turf/open/floor/plasteel/red/side{ - dir = 4 - }, -/area/hallway/primary/fore) -"avC" = ( -/obj/structure/dresser, -/obj/structure/sign/securearea{ - desc = "Under the painting a plaque reads: 'While the meat grinder may not have spared you, fear not. Not one part of you has gone to waste... You were delicious.'"; - icon_state = "monkey_painting"; - name = "Mr. Deempisi portrait"; - pixel_x = 0; - pixel_y = 28 - }, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/captain) -"avD" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/captain) -"avE" = ( -/obj/structure/closet/secure_closet/captains, -/obj/machinery/light{ - dir = 1 - }, -/obj/machinery/camera{ - c_tag = "Captain's Quarters"; - dir = 2 - }, -/obj/item/clothing/suit/armor/riot/knight/blue, -/obj/item/clothing/head/helmet/knight/blue, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/captain) -"avF" = ( -/obj/machinery/suit_storage_unit/captain, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/captain) -"avG" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0; - tag = "" - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/darkblue/side{ - tag = "icon-darkblue (NORTH)"; - dir = 1 - }, -/area/crew_quarters/captain) -"avH" = ( -/obj/machinery/power/apc{ - cell_type = 2500; - dir = 1; - name = "Captain's Office APC"; - pixel_y = 24 - }, -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/turf/open/floor/carpet, -/area/crew_quarters/captain) -"avI" = ( -/obj/structure/table/wood, -/obj/machinery/recharger, -/obj/machinery/requests_console{ - announcementConsole = 1; - department = "Captain's Desk"; - departmentType = 5; - name = "Captain RC"; - pixel_x = 0; - pixel_y = 30 - }, -/turf/open/floor/carpet, -/area/crew_quarters/captain) -"avJ" = ( -/obj/machinery/computer/card, -/obj/item/weapon/card/id/captains_spare, -/obj/item/device/radio/intercom{ - dir = 0; - name = "Station Intercom (General)"; - pixel_x = 0; - pixel_y = 26 - }, -/turf/open/floor/carpet, -/area/crew_quarters/captain) -"avK" = ( -/obj/machinery/computer/communications, -/obj/machinery/airalarm{ - pixel_y = 22 - }, -/turf/open/floor/carpet, -/area/crew_quarters/captain) -"avL" = ( -/obj/structure/filingcabinet/employment, -/turf/open/floor/carpet, -/area/crew_quarters/captain) -"avM" = ( -/obj/structure/extinguisher_cabinet{ - pixel_x = -24 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 6 - }, -/turf/open/floor/plasteel/darkblue/side{ - dir = 8 - }, -/area/bridge) -"avN" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/bridge) -"avO" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/darkblue/corner, -/area/bridge) -"avP" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/bridge) -"avQ" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/darkblue/side, -/area/bridge) -"avR" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/open/floor/plasteel/darkblue/corner{ - dir = 8 - }, -/area/bridge) -"avS" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 1 - }, -/turf/open/floor/plasteel/darkblue/side{ - tag = "icon-darkblue (EAST)"; - dir = 4 - }, -/area/bridge) -"avT" = ( -/obj/machinery/door/airlock/command{ - name = "External Access"; - req_access_txt = "0"; - req_one_access_txt = "19; 65" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/bridge) -"avU" = ( -/obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/door/poddoor{ - density = 0; - icon_state = "open"; - id = "bridgespace"; - name = "bridge external shutters"; - opacity = 0 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/bridge) -"avV" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/open/floor/plasteel/black, -/area/bridge) -"avW" = ( -/obj/machinery/door/airlock/command{ - name = "MiniSat Access"; - req_access_txt = "65" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/bridge) -"avX" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 9; - pixel_y = 0 - }, -/turf/open/floor/plasteel, -/area/bridge) -"avY" = ( -/obj/structure/transit_tube_pod, -/obj/structure/transit_tube/station/reverse{ - dir = 8 - }, -/turf/open/floor/plating/warnplate{ - dir = 8 - }, -/area/bridge) -"avZ" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/hallway/primary/central) -"awa" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/stairs, -/area/hallway/primary/central) -"awb" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/hallway/primary/central) -"awc" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "Dorm2Shutters"; - name = "Dorm Shutters" - }, -/turf/open/floor/plating, -/area/crew_quarters/sleep) -"awd" = ( -/obj/structure/bed, -/obj/item/weapon/bedsheet/nanotrasen, -/obj/machinery/button/door{ - id = "Dorm2Shutters"; - name = "Privacy Shutters Control"; - pixel_x = 0; - pixel_y = 26; - req_access_txt = "0" - }, -/turf/open/floor/carpet, -/area/crew_quarters/sleep) -"awe" = ( -/obj/machinery/light/small{ - dir = 1 - }, -/obj/structure/sign/securearea{ - desc = "Under the painting a plaque reads: 'While the meat grinder may not have spared you, fear not. Not one part of you has gone to waste... You were delicious.'"; - icon_state = "monkey_painting"; - name = "Mr. Deempisi portrait"; - pixel_x = 0; - pixel_y = 28 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/carpet, -/area/crew_quarters/sleep) -"awf" = ( -/obj/machinery/button/door{ - id = "Dorm2"; - name = "Dorm Bolt Control"; - normaldoorcontrol = 1; - pixel_x = 25; - pixel_y = 0; - req_access_txt = "0"; - specialfunctions = 4 - }, -/obj/structure/closet/secure_closet/personal/cabinet, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/carpet, -/area/crew_quarters/sleep) -"awg" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/crew_quarters/sleep) -"awh" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/carpet, -/area/crew_quarters/sleep) -"awi" = ( -/obj/structure/table/wood, -/obj/item/weapon/storage/pill_bottle/dice, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold-b-f (EAST)"; - dir = 4 - }, -/turf/open/floor/carpet, -/area/crew_quarters/sleep) -"awj" = ( -/obj/structure/table/wood, -/obj/item/weapon/pen{ - layer = 4 - }, -/obj/item/weapon/paper_bin{ - layer = 2.9; - pixel_x = 0; - pixel_y = 0; - tag = "every single paper bin is edited to this" - }, -/turf/open/floor/carpet, -/area/crew_quarters/sleep) -"awk" = ( -/obj/structure/table/wood, -/obj/item/weapon/storage/backpack, -/turf/open/floor/carpet, -/area/crew_quarters/sleep) -"awl" = ( -/turf/open/floor/carpet, -/area/crew_quarters/sleep) -"awm" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 5 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/sleep) -"awn" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass{ - name = "Recreation Room" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness{ - name = "Recreation Room" - }) -"awo" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness{ - name = "Recreation Room" - }) -"awp" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 9 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness{ - name = "Recreation Room" - }) -"awq" = ( -/obj/machinery/computer/holodeck, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness{ - name = "Recreation Room" - }) -"awr" = ( -/obj/structure/chair{ - dir = 8 - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness{ - name = "Recreation Room" - }) -"aws" = ( -/obj/structure/lattice/catwalk, -/obj/structure/cable, -/turf/open/space, -/area/solar/starboard{ - name = "Starboard Solar Array" - }) -"awt" = ( -/obj/structure/lattice/catwalk, -/obj/structure/cable, -/turf/open/space, -/area/solar/port{ - name = "Port Solar Array" - }) -"awu" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; - icon_state = "space"; - layer = 4; - name = "EXTERNAL AIRLOCK"; - pixel_x = -32; - pixel_y = 0 - }, -/turf/open/floor/plating, -/area/maintenance/auxsolarport{ - name = "Port Solar Maintenance" - }) -"awv" = ( -/obj/machinery/power/solar_control{ - id = "portsolar"; - name = "Port Solar Control"; - track = 0 - }, -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/turf/open/floor/plating, -/area/maintenance/auxsolarport{ - name = "Port Solar Maintenance" - }) -"aww" = ( -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/plating, -/area/maintenance/auxsolarport{ - name = "Port Solar Maintenance" - }) -"awx" = ( -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/obj/machinery/power/apc{ - dir = 1; - name = "Port Solar APC"; - pixel_x = 0; - pixel_y = 24 - }, -/turf/open/floor/plating, -/area/maintenance/auxsolarport{ - name = "Port Solar Maintenance" - }) -"awy" = ( -/obj/structure/closet/firecloset, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Brig Maintenance" - }) -"awz" = ( -/obj/machinery/button/door{ - id = "prison release"; - name = "Labor Camp Shuttle Lockdown"; - pixel_x = -25; - pixel_y = 0; - req_access_txt = "2" - }, -/turf/open/floor/plasteel/red/side{ - dir = 8 - }, -/area/hallway/primary/fore) -"awA" = ( -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; - icon_state = "space"; - layer = 4; - name = "EXTERNAL AIRLOCK"; - pixel_x = 0; - pixel_y = 32 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/fore) -"awB" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/fore) -"awC" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 10 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/fore) -"awD" = ( -/obj/machinery/navbeacon{ - codes_txt = "patrol;next_patrol=BrigS2"; - location = "BrigP" - }, -/turf/open/floor/plasteel, -/area/hallway/primary/fore) -"awE" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - on = 1 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/fore) -"awF" = ( -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel, -/area/hallway/primary/fore) -"awG" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/fore) -"awH" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/hallway/primary/fore) -"awI" = ( -/obj/machinery/holopad, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/navbeacon{ - codes_txt = "patrol;next_patrol=BrigP"; - location = "BrigS1" - }, -/turf/open/floor/plasteel, -/area/hallway/primary/fore) -"awJ" = ( -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel, -/area/hallway/primary/fore) -"awK" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - on = 1 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/fore) -"awL" = ( -/obj/item/device/radio/beacon, -/turf/open/floor/plasteel, -/area/hallway/primary/fore) -"awM" = ( -/obj/structure/sign/poster{ - pixel_x = 32 - }, -/turf/open/floor/plasteel/red/side{ - dir = 4 - }, -/area/hallway/primary/fore) -"awN" = ( -/obj/structure/bed, -/obj/item/weapon/bedsheet/captain, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/captain) -"awO" = ( -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/captain) -"awP" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/captain) -"awQ" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/captain) -"awR" = ( -/obj/machinery/door/airlock/command{ - name = "Captain's Quarters"; - req_access = null; - req_access_txt = "20" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/crew_quarters/captain) -"awS" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4"; - tag = "" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/crew_quarters/captain) -"awT" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 10 - }, -/turf/open/floor/carpet, -/area/crew_quarters/captain) -"awU" = ( -/obj/machinery/door/window{ - dir = 8; - name = "Captain's Desk"; - req_access_txt = "20" - }, -/turf/open/floor/carpet, -/area/crew_quarters/captain) -"awV" = ( -/turf/open/floor/carpet, -/area/crew_quarters/captain) -"awW" = ( -/obj/structure/chair/comfy/black, -/obj/effect/landmark/start{ - name = "Captain" - }, -/turf/open/floor/carpet, -/area/crew_quarters/captain) -"awX" = ( -/obj/item/weapon/storage/secure/safe{ - pixel_x = 35; - pixel_y = 5 - }, -/turf/open/floor/carpet, -/area/crew_quarters/captain) -"awY" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/darkblue/side{ - dir = 8 - }, -/area/bridge) -"awZ" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 6 - }, -/turf/open/floor/plasteel/black, -/area/bridge) -"axa" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/obj/item/device/radio/intercom{ - dir = 0; - name = "Station Intercom (General)"; - pixel_x = 0; - pixel_y = -28 - }, -/turf/open/floor/plasteel/black, -/area/bridge) -"axb" = ( -/obj/structure/fireaxecabinet{ - pixel_y = -32 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/bridge) -"axc" = ( -/obj/machinery/light, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/airalarm{ - dir = 1; - pixel_y = -22 - }, -/turf/open/floor/plasteel/black, -/area/bridge) -"axd" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/requests_console{ - announcementConsole = 1; - department = "Bridge"; - departmentType = 5; - name = "Bridge RC"; - pixel_y = -30 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/bridge) -"axe" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/machinery/holopad, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 1; - initialize_directions = 11 - }, -/turf/open/floor/plasteel/black, -/area/bridge) -"axf" = ( -/obj/machinery/turretid{ - control_area = "AI Upload Chamber"; - name = "AI Upload turret control"; - pixel_y = -25 - }, -/obj/machinery/camera{ - c_tag = "Bridge Central"; - dir = 1 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/bridge) -"axg" = ( -/obj/machinery/light, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/newscaster{ - pixel_y = -28 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/bridge) -"axh" = ( -/obj/machinery/power/apc{ - cell_type = 10000; - dir = 2; - name = "Bridge APC"; - pixel_y = -24 - }, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/bridge) -"axi" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/item/device/radio/intercom{ - dir = 0; - name = "Station Intercom (General)"; - pixel_x = 0; - pixel_y = -28 - }, -/turf/open/floor/plasteel/black, -/area/bridge) -"axj" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4"; - tag = "90Curve" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 10 - }, -/turf/open/floor/plasteel/black, -/area/bridge) -"axk" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/darkblue/side{ - tag = "icon-darkblue (EAST)"; - dir = 4 - }, -/area/bridge) -"axl" = ( -/obj/machinery/light, -/obj/machinery/camera{ - c_tag = "Bridge External Access"; - dir = 1; - network = list("SS13") - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/black, -/area/bridge) -"axm" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel, -/area/bridge) -"axn" = ( -/turf/open/floor/plating/warnplate{ - dir = 8 - }, -/area/bridge) -"axo" = ( -/turf/closed/wall/r_wall, -/area/hallway/primary/central) -"axp" = ( -/obj/machinery/door/firedoor, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"axq" = ( -/obj/structure/table/wood, -/obj/item/weapon/storage/book/bible, -/turf/open/floor/carpet, -/area/crew_quarters/sleep) -"axr" = ( -/obj/structure/chair/wood/normal{ - icon_state = "wooden_chair"; - dir = 8 - }, -/turf/open/floor/carpet, -/area/crew_quarters/sleep) -"axs" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/carpet, -/area/crew_quarters/sleep) -"axt" = ( -/obj/machinery/door/airlock{ - id_tag = "Dorm2"; - name = "Dorm 2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/sleep) -"axu" = ( -/obj/structure/disposalpipe/segment, -/turf/open/floor/carpet, -/area/crew_quarters/sleep) -"axv" = ( -/obj/structure/table/wood, -/obj/item/weapon/storage/crayons, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 8 - }, -/turf/open/floor/carpet, -/area/crew_quarters/sleep) -"axw" = ( -/obj/structure/table/wood, -/obj/item/device/paicard, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/carpet, -/area/crew_quarters/sleep) -"axx" = ( -/obj/structure/table/wood, -/obj/item/toy/cards/deck{ - pixel_x = 2 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/carpet, -/area/crew_quarters/sleep) -"axy" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/carpet, -/area/crew_quarters/sleep) -"axz" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/sleep) -"axA" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass{ - name = "Recreation Room" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness{ - name = "Recreation Room" - }) -"axB" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness{ - name = "Recreation Room" - }) -"axC" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 10 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness{ - name = "Recreation Room" - }) -"axD" = ( -/obj/structure/table, -/obj/item/weapon/paper{ - desc = ""; - info = "Brusies sustained in the holodeck can be healed simply by sleeping."; - name = "Holodeck Disclaimer" - }, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness{ - name = "Recreation Room" - }) -"axE" = ( -/obj/structure/chair{ - dir = 8 - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/camera{ - c_tag = "Holodeck"; - dir = 8 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness{ - name = "Recreation Room" - }) -"axF" = ( -/obj/machinery/power/tracker, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/turf/open/floor/plasteel/airless/solarpanel, -/area/solar/port{ - name = "Port Solar Array" - }) -"axG" = ( -/obj/structure/lattice/catwalk, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/turf/open/space, -/area/solar/port{ - name = "Port Solar Array" - }) -"axH" = ( -/obj/structure/lattice/catwalk, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/turf/open/space, -/area/solar/port{ - name = "Port Solar Array" - }) -"axI" = ( -/obj/structure/lattice/catwalk, -/obj/item/stack/cable_coil, -/turf/open/space, -/area/solar/starboard{ - name = "Starboard Solar Array" - }) -"axJ" = ( -/obj/structure/lattice/catwalk, -/turf/open/space, -/area/solar/port{ - name = "Port Solar Array" - }) -"axK" = ( -/obj/structure/lattice/catwalk, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/turf/open/space, -/area/solar/port{ - name = "Port Solar Array" - }) -"axL" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/machinery/door/airlock/external{ - cyclelinkeddir = 4; - name = "Solar Maintenance"; - req_access = null; - req_access_txt = "10; 13" - }, -/turf/open/floor/plating, -/area/maintenance/auxsolarport{ - name = "Port Solar Maintenance" - }) -"axM" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/turf/open/floor/plating, -/area/maintenance/auxsolarport{ - name = "Port Solar Maintenance" - }) -"axN" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/machinery/door/airlock/external{ - cyclelinkeddir = 8; - name = "Solar Maintenance"; - req_access = null; - req_access_txt = "10; 13" - }, -/turf/open/floor/plating, -/area/maintenance/auxsolarport{ - name = "Port Solar Maintenance" - }) -"axO" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/turf/open/floor/plating, -/area/maintenance/auxsolarport{ - name = "Port Solar Maintenance" - }) -"axP" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/turf/open/floor/plating, -/area/maintenance/auxsolarport{ - name = "Port Solar Maintenance" - }) -"axQ" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0; - tag = "" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/turf/open/floor/plating, -/area/maintenance/auxsolarport{ - name = "Port Solar Maintenance" - }) -"axR" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0; - tag = "" - }, -/obj/machinery/door/airlock/engineering{ - name = "Port Solar Access"; - req_access_txt = "10" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/turf/open/floor/plating, -/area/maintenance/auxsolarport{ - name = "Port Solar Maintenance" - }) -"axS" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Brig Maintenance" - }) -"axT" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Brig Maintenance" - }) -"axU" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/item/weapon/vending_refill/cigarette, -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plating{ - icon_state = "panelscorched" - }, -/area/maintenance/fpmaint2{ - name = "Brig Maintenance" - }) -"axV" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Brig Maintenance" - }) -"axW" = ( -/obj/structure/plasticflaps, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Brig Maintenance" - }) -"axX" = ( -/mob/living/simple_animal/bot/secbot/beepsky{ - name = "Officer Beepsky" - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Brig Maintenance" - }) -"axY" = ( -/obj/structure/table, -/obj/machinery/cell_charger, -/obj/item/weapon/stock_parts/cell/potato{ - name = "\improper Beepsky's emergency battery" - }, -/obj/item/weapon/paper{ - info = "01001001 00100000 01101000 01101111 01110000 01100101 00100000 01111001 01101111 01110101 00100000 01110011 01110100 01100001 01111001 00100000 01110011 01100001 01100110 01100101 00101110 00100000 01001100 01101111 01110110 01100101 00101100 00100000 01101101 01101111 01101101 00101110"; - name = "Note from Beepsky's Mom" - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Brig Maintenance" - }) -"axZ" = ( -/obj/machinery/power/apc{ - dir = 8; - name = "Fore Primary Hallway APC"; - pixel_x = -24 - }, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/turf/open/floor/plasteel/red/side{ - dir = 8 - }, -/area/hallway/primary/fore) -"aya" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/fore) -"ayb" = ( -/obj/machinery/light, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/fore) -"ayc" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/hallway/primary/fore) -"ayd" = ( -/obj/machinery/camera{ - c_tag = "Fore Primary Hallway Port"; - dir = 1 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/fore) -"aye" = ( -/obj/machinery/door/airlock/centcom{ - name = "Monastery Cemetary"; - opacity = 1 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/chapel/main{ - name = "Monastery" - }) -"ayf" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 5 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/fore) -"ayg" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 1; - initialize_directions = 11 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/fore) -"ayh" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/fore) -"ayi" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/fore) -"ayj" = ( -/obj/machinery/navbeacon{ - codes_txt = "patrol;next_patrol=Tool"; - location = "BrigS2" - }, -/turf/open/floor/plasteel, -/area/hallway/primary/fore) -"ayk" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 6 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/fore) -"ayl" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/fore) -"aym" = ( -/obj/machinery/light, -/obj/machinery/camera{ - c_tag = "Fore Primary Hallway Starboard"; - dir = 1 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 9; - pixel_y = 0 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/fore) -"ayn" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-14"; - layer = 4.1 - }, -/turf/open/floor/plasteel/red/side{ - dir = 4 - }, -/area/hallway/primary/fore) -"ayo" = ( -/obj/structure/table/wood, -/obj/item/device/flashlight/lamp/green, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/captain) -"ayp" = ( -/obj/structure/table/wood, -/obj/item/weapon/storage/box/matches, -/obj/item/weapon/razor{ - pixel_x = -4; - pixel_y = 2 - }, -/obj/item/clothing/mask/cigarette/cigar, -/obj/item/weapon/reagent_containers/food/drinks/flask/gold, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/captain) -"ayq" = ( -/obj/structure/chair/comfy/brown{ - dir = 4 - }, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/captain) -"ayr" = ( -/obj/structure/table/wood, -/obj/item/weapon/kitchen/fork, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/captain) -"ays" = ( -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/black, -/area/crew_quarters/captain) -"ayt" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/carpet, -/area/crew_quarters/captain) -"ayu" = ( -/obj/structure/table/wood, -/obj/item/device/flashlight/lamp/green, -/turf/open/floor/carpet, -/area/crew_quarters/captain) -"ayv" = ( -/obj/structure/table/wood, -/obj/item/weapon/pen, -/obj/item/weapon/paper_bin{ - layer = 2.9; - pixel_x = 0; - pixel_y = 0; - tag = "every single paper bin is edited to this" - }, -/turf/open/floor/carpet, -/area/crew_quarters/captain) -"ayw" = ( -/obj/structure/table/wood, -/turf/open/floor/carpet, -/area/crew_quarters/captain) -"ayx" = ( -/obj/structure/table/wood, -/obj/item/weapon/folder/blue, -/obj/item/weapon/stamp/captain, -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/turf/open/floor/carpet, -/area/crew_quarters/captain) -"ayy" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/darkblue/side{ - dir = 8 - }, -/area/bridge) -"ayz" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/black, -/area/bridge) -"ayA" = ( -/turf/closed/wall/r_wall, -/area/ai_monitored/turret_protected/ai_upload) -"ayB" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/highsecurity{ - icon_state = "door_closed"; - locked = 0; - name = "AI Upload Access"; - req_access_txt = "16" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/darkblue, -/area/ai_monitored/turret_protected/ai_upload) -"ayC" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 8; - initialize_directions = 11 - }, -/turf/open/floor/plasteel/black, -/area/bridge) -"ayD" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/darkblue/side{ - tag = "icon-darkblue (EAST)"; - dir = 4 - }, -/area/bridge) -"ayE" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall/r_wall, -/area/crew_quarters/heads) -"ayF" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/closed/wall/r_wall, -/area/crew_quarters/heads) -"ayG" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 9 - }, -/turf/closed/wall/r_wall, -/area/crew_quarters/heads) -"ayH" = ( -/turf/closed/wall/r_wall, -/area/crew_quarters/heads) -"ayI" = ( -/obj/machinery/disposal/bin, -/obj/structure/disposalpipe/trunk, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"ayJ" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"ayK" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 5 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"ayL" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 10 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"ayM" = ( -/obj/structure/chair, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"ayN" = ( -/turf/closed/wall, -/area/hallway/primary/central) -"ayO" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/crew_quarters/sleep) -"ayP" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/chair/comfy/brown{ - dir = 1 - }, -/turf/open/floor/carpet, -/area/crew_quarters/sleep) -"ayQ" = ( -/obj/effect/landmark/start{ - name = "Assistant" - }, -/obj/structure/chair/comfy/brown{ - dir = 1 - }, -/turf/open/floor/carpet, -/area/crew_quarters/sleep) -"ayR" = ( -/obj/structure/chair/comfy/brown{ - dir = 1 - }, -/turf/open/floor/carpet, -/area/crew_quarters/sleep) -"ayS" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness{ - name = "Recreation Room" - }) -"ayT" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness{ - name = "Recreation Room" - }) -"ayU" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 10 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness{ - name = "Recreation Room" - }) -"ayV" = ( -/obj/structure/lattice/catwalk, -/obj/structure/cable{ - icon_state = "0-2"; - pixel_y = 1; - d2 = 2 - }, -/turf/open/space, -/area/solar/starboard{ - name = "Starboard Solar Array" - }) -"ayW" = ( -/obj/structure/lattice/catwalk, -/obj/structure/cable{ - icon_state = "0-2"; - pixel_y = 1; - d2 = 2 - }, -/turf/open/space, -/area/solar/port{ - name = "Port Solar Array" - }) -"ayX" = ( -/obj/structure/rack, -/obj/item/clothing/mask/gas, -/obj/item/device/multitool, -/turf/open/floor/plating, -/area/maintenance/auxsolarport{ - name = "Port Solar Maintenance" - }) -"ayY" = ( -/obj/structure/chair/stool, -/obj/machinery/power/terminal{ - dir = 4 - }, -/obj/structure/cable, -/turf/open/floor/plating, -/area/maintenance/auxsolarport{ - name = "Port Solar Maintenance" - }) -"ayZ" = ( -/obj/machinery/power/smes, -/obj/structure/cable, -/turf/open/floor/plating, -/area/maintenance/auxsolarport{ - name = "Port Solar Maintenance" - }) -"aza" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0; - tag = "" - }, -/turf/open/floor/plating{ - broken = 1; - icon_state = "platingdmg1" - }, -/area/maintenance/fpmaint2{ - name = "Brig Maintenance" - }) -"azb" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/door/airlock/maintenance{ - req_access_txt = "12" - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Brig Maintenance" - }) -"azc" = ( -/turf/closed/wall, -/area/security/detectives_office) -"azd" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "datboidetective"; - name = "privacy shutters" - }, -/turf/open/floor/plating, -/area/security/detectives_office) -"aze" = ( -/obj/machinery/door/firedoor, -/obj/structure/disposalpipe/segment, -/obj/machinery/door/airlock/security{ - name = "Detective's Office"; - req_access = null; - req_access_txt = "4" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/grimy, -/area/security/detectives_office) -"azf" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/red/corner{ - tag = "icon-redcorner (WEST)"; - dir = 8 - }, -/area/hallway/primary/fore) -"azg" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/red/corner, -/area/hallway/primary/fore) -"azh" = ( -/turf/closed/wall, -/area/storage/primary) -"azi" = ( -/turf/closed/wall/r_wall, -/area/storage/primary) -"azj" = ( -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/obj/structure/extinguisher_cabinet{ - pixel_x = -24 - }, -/turf/open/floor/plasteel/black, -/area/crew_quarters/captain) -"azk" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/black, -/area/crew_quarters/captain) -"azl" = ( -/turf/open/floor/plasteel/black, -/area/crew_quarters/captain) -"azm" = ( -/obj/machinery/holopad, -/turf/open/floor/plasteel/black, -/area/crew_quarters/captain) -"azn" = ( -/obj/structure/chair{ - dir = 1 - }, -/turf/open/floor/plasteel/black, -/area/crew_quarters/captain) -"azo" = ( -/obj/machinery/firealarm{ - dir = 8; - pixel_x = 26; - pixel_y = 0 - }, -/turf/open/floor/plasteel/black, -/area/crew_quarters/captain) -"azp" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass_command{ - cyclelinkeddir = 2; - name = "Bridge Access"; - req_access_txt = "19" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/black, -/area/bridge) -"azq" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass_command{ - cyclelinkeddir = 2; - name = "Bridge Access"; - req_access_txt = "19" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/black, -/area/bridge) -"azr" = ( -/turf/open/floor/plasteel/darkblue/side{ - dir = 9 - }, -/area/ai_monitored/turret_protected/ai_upload) -"azs" = ( -/turf/open/floor/plasteel/darkblue/side{ - dir = 1 - }, -/area/ai_monitored/turret_protected/ai_upload) -"azt" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/darkblue/side{ - dir = 1 - }, -/area/ai_monitored/turret_protected/ai_upload) -"azu" = ( -/turf/open/floor/plasteel/darkblue/side{ - dir = 5 - }, -/area/ai_monitored/turret_protected/ai_upload) -"azv" = ( -/obj/structure/table/wood, -/obj/item/device/flashlight/lamp/green, -/obj/item/weapon/storage/secure/safe{ - pixel_x = -22; - pixel_y = 4 - }, -/turf/open/floor/wood, -/area/crew_quarters/heads) -"azw" = ( -/obj/machinery/computer/security/mining, -/turf/open/floor/wood, -/area/crew_quarters/heads) -"azx" = ( -/obj/machinery/computer/cargo/request, -/turf/open/floor/wood, -/area/crew_quarters/heads) -"azy" = ( -/obj/structure/closet/secure_closet/hop, -/obj/machinery/computer/security/telescreen{ - desc = "Used for watching the monastery."; - name = "Monastery Monitor"; - network = list("Monastery"); - pixel_x = 0; - pixel_y = 32 - }, -/turf/open/floor/wood, -/area/crew_quarters/heads) -"azz" = ( -/obj/structure/filingcabinet/chestdrawer{ - pixel_y = 2 - }, -/obj/machinery/light{ - dir = 1 - }, -/obj/machinery/camera{ - c_tag = "Head of Personnel's Office"; - dir = 2; - network = list("SS13") - }, -/obj/machinery/newscaster{ - pixel_y = 32 - }, -/turf/open/floor/wood, -/area/crew_quarters/heads) -"azA" = ( -/obj/machinery/requests_console{ - announcementConsole = 1; - department = "Head of Personnel's Desk"; - departmentType = 5; - name = "Head of Personnel RC"; - pixel_y = 30 - }, -/obj/machinery/pdapainter{ - pixel_y = 2 - }, -/turf/open/floor/wood, -/area/crew_quarters/heads) -"azB" = ( -/obj/machinery/status_display{ - density = 0; - layer = 4; - pixel_x = 0; - pixel_y = 32 - }, -/obj/structure/bed/dogbed{ - anchored = 1; - desc = "Ian's bed! Looks comfy."; - name = "Ian's bed"; - pixel_y = 2 - }, -/mob/living/simple_animal/pet/dog/corgi/Ian, -/turf/open/floor/wood, -/area/crew_quarters/heads) -"azC" = ( -/obj/machinery/vending/cart{ - req_access_txt = "57" - }, -/obj/machinery/airalarm{ - pixel_y = 22 - }, -/turf/open/floor/wood, -/area/crew_quarters/heads) -"azD" = ( -/obj/machinery/power/apc{ - cell_type = 5000; - dir = 8; - name = "Central Hall APC"; - pixel_x = -25 - }, -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"azE" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"azF" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"azG" = ( -/obj/structure/table, -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/obj/item/weapon/crowbar, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"azH" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "Dorm1Shutters"; - name = "Dorm Shutters" - }, -/turf/open/floor/plating, -/area/crew_quarters/sleep) -"azI" = ( -/obj/structure/bed, -/obj/item/weapon/bedsheet/nanotrasen, -/obj/machinery/button/door{ - id = "Dorm1Shutters"; - name = "Privacy Shutters Control"; - pixel_x = 0; - pixel_y = 26; - req_access_txt = "0" - }, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/sleep) -"azJ" = ( -/obj/machinery/light/small{ - dir = 1 - }, -/obj/structure/sign/securearea{ - desc = "Under the painting a plaque reads: 'While the meat grinder may not have spared you, fear not. Not one part of you has gone to waste... You were delicious.'"; - icon_state = "monkey_painting"; - name = "Mr. Deempisi portrait"; - pixel_x = 0; - pixel_y = 28 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/sleep) -"azK" = ( -/obj/machinery/button/door{ - id = "Dorm1"; - name = "Dorm Bolt Control"; - normaldoorcontrol = 1; - pixel_x = 25; - pixel_y = 0; - req_access_txt = "0"; - specialfunctions = 4 - }, -/obj/structure/closet/secure_closet/personal/cabinet, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/sleep) -"azL" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/sleep) -"azM" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold-b-f (EAST)"; - dir = 4 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/sleep) -"azN" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - on = 1 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/sleep) -"azO" = ( -/obj/structure/closet/wardrobe/white, -/turf/open/floor/plasteel/arrival, -/area/crew_quarters/fitness{ - name = "Recreation Room" - }) -"azP" = ( -/obj/structure/closet/wardrobe/mixed, -/turf/open/floor/plasteel/arrival, -/area/crew_quarters/fitness{ - name = "Recreation Room" - }) -"azQ" = ( -/obj/structure/closet/wardrobe/green, -/turf/open/floor/plasteel/arrival, -/area/crew_quarters/fitness{ - name = "Recreation Room" - }) -"azR" = ( -/obj/structure/closet/wardrobe/grey, -/obj/machinery/light, -/turf/open/floor/plasteel/arrival, -/area/crew_quarters/fitness{ - name = "Recreation Room" - }) -"azS" = ( -/obj/structure/closet/wardrobe/black, -/obj/item/clothing/shoes/jackboots, -/obj/item/weapon/storage/backpack, -/turf/open/floor/plasteel/arrival, -/area/crew_quarters/fitness{ - name = "Recreation Room" - }) -"azT" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-05"; - layer = 4.1 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness{ - name = "Recreation Room" - }) -"azU" = ( -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/item/device/radio/intercom{ - dir = 0; - name = "Station Intercom (General)"; - pixel_x = 28 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness{ - name = "Recreation Room" - }) -"azV" = ( -/obj/structure/lattice/catwalk, -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4"; - tag = "90Curve" - }, -/obj/structure/cable{ - icon_state = "1-8" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0; - tag = "" - }, -/turf/open/space, -/area/solar/starboard{ - name = "Starboard Solar Array" - }) -"azW" = ( -/obj/structure/lattice/catwalk, -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4"; - tag = "90Curve" - }, -/obj/structure/cable{ - icon_state = "1-8" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0; - tag = "" - }, -/turf/open/space, -/area/solar/port{ - name = "Port Solar Array" - }) -"azX" = ( -/obj/structure/rack, -/obj/item/weapon/crowbar, -/obj/item/weapon/wrench, -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Brig Maintenance" - }) -"azY" = ( -/obj/structure/closet/emcloset, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Brig Maintenance" - }) -"azZ" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 6 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Brig Maintenance" - }) -"aAa" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Brig Maintenance" - }) -"aAb" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 9; - pixel_y = 0 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Brig Maintenance" - }) -"aAc" = ( -/obj/structure/table/wood, -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-18"; - layer = 4.1; - pixel_y = 12 - }, -/turf/open/floor/plasteel/grimy, -/area/security/detectives_office) -"aAd" = ( -/obj/machinery/light/small{ - dir = 1 - }, -/obj/machinery/requests_console{ - department = "Detective's office"; - pixel_x = 0; - pixel_y = 30 - }, -/turf/open/floor/plasteel/grimy, -/area/security/detectives_office) -"aAe" = ( -/turf/open/floor/plasteel/grimy, -/area/security/detectives_office) -"aAf" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/grimy, -/area/security/detectives_office) -"aAg" = ( -/obj/item/weapon/storage/briefcase, -/turf/open/floor/plasteel/grimy, -/area/security/detectives_office) -"aAh" = ( -/obj/machinery/light/small{ - dir = 1 - }, -/obj/structure/filingcabinet, -/obj/machinery/button/door{ - id = "datboidetective"; - name = "Privacy Shutters"; - pixel_x = 2; - pixel_y = 26 - }, -/obj/machinery/light_switch{ - pixel_x = -8; - pixel_y = 27 - }, -/turf/open/floor/plasteel/grimy, -/area/security/detectives_office) -"aAi" = ( -/obj/structure/closet/secure_closet/detective, -/obj/item/weapon/hand_labeler, -/obj/machinery/airalarm{ - pixel_y = 22 - }, -/turf/open/floor/plasteel/grimy, -/area/security/detectives_office) -"aAj" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 8; - initialize_directions = 11 - }, -/turf/open/floor/plasteel/red/corner{ - tag = "icon-redcorner (WEST)"; - dir = 8 - }, -/area/hallway/primary/fore) -"aAk" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/fore) -"aAl" = ( -/obj/machinery/vending/assist, -/turf/open/floor/plasteel/neutral/side{ - dir = 9 - }, -/area/storage/primary) -"aAm" = ( -/obj/structure/extinguisher_cabinet{ - pixel_x = 0; - pixel_y = 30 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 1 - }, -/area/storage/primary) -"aAn" = ( -/obj/structure/table, -/obj/item/weapon/wrench, -/obj/item/device/analyzer, -/obj/machinery/requests_console{ - department = "Tool Storage"; - departmentType = 0; - pixel_y = 30 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 1 - }, -/area/storage/primary) -"aAo" = ( -/obj/structure/table, -/obj/machinery/cell_charger, -/obj/item/weapon/stock_parts/cell/high/plus, -/obj/item/device/radio/intercom{ - dir = 0; - name = "Station Intercom (General)"; - pixel_x = 0; - pixel_y = 26 - }, -/obj/item/weapon/screwdriver{ - pixel_y = 16 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 1 - }, -/area/storage/primary) -"aAp" = ( -/obj/structure/table, -/obj/item/device/assembly/igniter{ - pixel_x = -8; - pixel_y = -4 - }, -/obj/item/device/assembly/igniter, -/obj/machinery/camera{ - c_tag = "Primary Tool Storage" - }, -/obj/item/device/assembly/voice, -/obj/structure/noticeboard{ - pixel_y = 32 - }, -/turf/open/floor/plasteel, -/area/storage/primary) -"aAq" = ( -/obj/structure/table, -/obj/item/device/assembly/signaler, -/obj/item/device/assembly/signaler, -/obj/item/device/multitool, -/obj/item/device/multitool, -/obj/machinery/airalarm{ - pixel_y = 22 - }, -/obj/item/device/flashlight, -/obj/item/weapon/electronics/airlock, -/turf/open/floor/plasteel/neutral/side{ - dir = 1 - }, -/area/storage/primary) -"aAr" = ( -/obj/machinery/vending/tool, -/turf/open/floor/plasteel/neutral/side{ - dir = 5 - }, -/area/storage/primary) -"aAs" = ( -/obj/structure/displaycase/captain, -/turf/open/floor/plasteel/black, -/area/crew_quarters/captain) -"aAt" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/black, -/area/crew_quarters/captain) -"aAu" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/black, -/area/crew_quarters/captain) -"aAv" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/crew_quarters/captain) -"aAw" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/machinery/camera{ - c_tag = "Captain's Office"; - dir = 8; - network = list("SS13") - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/light_switch{ - pixel_x = 25 - }, -/turf/open/floor/plasteel/black, -/area/crew_quarters/captain) -"aAx" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall/r_wall, -/area/crew_quarters/captain) -"aAy" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/black, -/area/bridge) -"aAz" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/darkblue/corner{ - tag = "icon-darkbluecorners (WEST)"; - dir = 8 - }, -/area/bridge) -"aAA" = ( -/obj/structure/table, -/obj/item/weapon/aiModule/supplied/quarantine, -/obj/machinery/camera/motion{ - c_tag = "AI Upload Port"; - dir = 4 - }, -/obj/item/weapon/aiModule/reset, -/obj/machinery/flasher{ - id = "brigentry"; - pixel_x = -28 - }, -/turf/open/floor/plasteel/darkblue/side{ - dir = 9 - }, -/area/ai_monitored/turret_protected/ai_upload) -"aAB" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/darkblue/corner{ - dir = 1 - }, -/area/ai_monitored/turret_protected/ai_upload) -"aAC" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai_upload) -"aAD" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 9 - }, -/turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai_upload) -"aAE" = ( -/turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai_upload) -"aAF" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/plasteel/darkblue/corner{ - tag = "icon-darkbluecorners (EAST)"; - dir = 4 - }, -/area/ai_monitored/turret_protected/ai_upload) -"aAG" = ( -/obj/structure/table, -/obj/item/weapon/aiModule/supplied/freeform, -/obj/machinery/camera/motion{ - c_tag = "AI Upload Starboard"; - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/flasher{ - id = "brigentry"; - pixel_x = 28 - }, -/turf/open/floor/plasteel/darkblue/side{ - tag = "icon-darkblue (NORTHEAST)"; - dir = 5 - }, -/area/ai_monitored/turret_protected/ai_upload) -"aAH" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/closed/wall/r_wall, -/area/ai_monitored/turret_protected/ai_upload) -"aAI" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold-b-f (EAST)"; - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/bridge) -"aAJ" = ( -/obj/structure/table/wood, -/obj/item/weapon/pen{ - layer = 4 - }, -/obj/machinery/keycard_auth{ - pixel_x = -26; - pixel_y = 6 - }, -/obj/item/weapon/paper_bin{ - layer = 2.9; - pixel_x = 0; - pixel_y = 0; - tag = "every single paper bin is edited to this" - }, -/turf/open/floor/wood, -/area/crew_quarters/heads) -"aAK" = ( -/obj/structure/chair/office/dark{ - dir = 1 - }, -/obj/effect/landmark/start{ - name = "Head of Personnel" - }, -/turf/open/floor/wood, -/area/crew_quarters/heads) -"aAL" = ( -/obj/machinery/holopad, -/turf/open/floor/wood, -/area/crew_quarters/heads) -"aAM" = ( -/turf/open/floor/wood, -/area/crew_quarters/heads) -"aAN" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/turf/open/floor/wood, -/area/crew_quarters/heads) -"aAO" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1 - }, -/turf/open/floor/wood, -/area/crew_quarters/heads) -"aAP" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/command{ - name = "Head of Personnel"; - req_access = null; - req_access_txt = "57" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/wood, -/area/crew_quarters/heads) -"aAQ" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/junction{ - icon_state = "pipe-j2"; - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"aAR" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"aAS" = ( -/obj/machinery/holopad, -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/obj/effect/landmark/start{ - name = "Assistant" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"aAT" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"aAU" = ( -/obj/structure/chair{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"aAV" = ( -/obj/structure/table/wood, -/obj/item/weapon/storage/book/bible, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/sleep) -"aAW" = ( -/obj/structure/chair/wood/normal{ - icon_state = "wooden_chair"; - dir = 8 - }, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/sleep) -"aAX" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/sleep) -"aAY" = ( -/obj/machinery/door/airlock{ - id_tag = "Dorm1"; - name = "Dorm 1" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/sleep) -"aAZ" = ( -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel, -/area/crew_quarters/sleep) -"aBa" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/sleep) -"aBb" = ( -/obj/machinery/light, -/obj/machinery/camera{ - c_tag = "Dormitories Aft"; - dir = 1 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/item/device/radio/intercom{ - dir = 0; - name = "Station Intercom (General)"; - pixel_x = 0; - pixel_y = -26 - }, -/turf/open/floor/plasteel/white/corner, -/area/crew_quarters/sleep) -"aBc" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white/side, -/area/crew_quarters/sleep) -"aBd" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 4; - initialize_directions = 11 - }, -/turf/open/floor/plasteel/white/side, -/area/crew_quarters/sleep) -"aBe" = ( -/turf/open/floor/plasteel/white/side, -/area/crew_quarters/sleep) -"aBf" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/door/airlock/maintenance{ - req_access_txt = "12" - }, -/turf/open/floor/plating, -/area/crew_quarters/fitness{ - name = "Recreation Room" - }) -"aBg" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0; - tag = "" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Brig Maintenance" - }) -"aBh" = ( -/obj/structure/grille/broken, -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Brig Maintenance" - }) -"aBi" = ( -/obj/machinery/disposal/bin, -/obj/structure/disposalpipe/trunk{ - dir = 4 - }, -/turf/open/floor/plasteel/grimy, -/area/security/detectives_office) -"aBj" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/grimy, -/area/security/detectives_office) -"aBk" = ( -/obj/structure/chair, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/grimy, -/area/security/detectives_office) -"aBl" = ( -/obj/structure/chair, -/obj/structure/disposalpipe/junction{ - icon_state = "pipe-y"; - dir = 1 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 9 - }, -/turf/open/floor/plasteel/grimy, -/area/security/detectives_office) -"aBm" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/grimy, -/area/security/detectives_office) -"aBn" = ( -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - on = 1 - }, -/turf/open/floor/plasteel/grimy, -/area/security/detectives_office) -"aBo" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/firealarm{ - dir = 4; - pixel_x = -28 - }, -/turf/open/floor/plasteel/red/corner{ - tag = "icon-redcorner (WEST)"; - dir = 8 - }, -/area/hallway/primary/fore) -"aBp" = ( -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/machinery/power/apc{ - dir = 8; - name = "Tool Storage APC"; - pixel_x = -24; - pixel_y = 0 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 8 - }, -/area/storage/primary) -"aBq" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/turf/open/floor/plasteel, -/area/storage/primary) -"aBr" = ( -/obj/effect/landmark/start{ - name = "Assistant" - }, -/turf/open/floor/plasteel, -/area/storage/primary) -"aBs" = ( -/turf/open/floor/plasteel, -/area/storage/primary) -"aBt" = ( -/obj/machinery/firealarm{ - dir = 4; - pixel_x = 28 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/storage/primary) -"aBu" = ( -/obj/structure/table/wood, -/obj/item/weapon/storage/lockbox/medal{ - pixel_y = 0 - }, -/turf/open/floor/carpet, -/area/crew_quarters/captain) -"aBv" = ( -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 5 - }, -/turf/open/floor/carpet, -/area/crew_quarters/captain) -"aBw" = ( -/obj/structure/chair/comfy/brown, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/carpet, -/area/crew_quarters/captain) -"aBx" = ( -/obj/structure/disposalpipe/junction{ - icon_state = "pipe-j1"; - dir = 4 - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold-b-f (NORTH)"; - dir = 1 - }, -/turf/open/floor/plasteel/black, -/area/crew_quarters/captain) -"aBy" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/crew_quarters/captain) -"aBz" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/command{ - name = "Captain's Office"; - req_access = null; - req_access_txt = "20" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/crew_quarters/captain) -"aBA" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 4; - initialize_directions = 11 - }, -/turf/open/floor/plasteel/darkblue/corner{ - dir = 4 - }, -/area/bridge) -"aBB" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/darkblue/corner{ - tag = "icon-darkbluecorners (WEST)"; - dir = 8 - }, -/area/bridge) -"aBC" = ( -/obj/machinery/porta_turret/ai{ - dir = 8 - }, -/turf/open/floor/plasteel/darkblue/side{ - dir = 8 - }, -/area/ai_monitored/turret_protected/ai_upload) -"aBD" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai_upload) -"aBE" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0; - tag = "" - }, -/turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/ai_upload) -"aBF" = ( -/obj/machinery/holopad, -/obj/machinery/camera/motion{ - c_tag = "AI Upload Center"; - dir = 1 - }, -/obj/item/device/radio/intercom{ - broadcasting = 1; - frequency = 1447; - listening = 0; - name = "Station Intercom (AI Private)"; - pixel_y = -28 - }, -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/ai_upload) -"aBG" = ( -/turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/ai_upload) -"aBH" = ( -/obj/machinery/porta_turret/ai{ - dir = 8 - }, -/obj/structure/sign/kiddieplaque{ - pixel_x = 32 - }, -/turf/open/floor/plasteel/darkblue/side{ - tag = "icon-darkblue (EAST)"; - dir = 4 - }, -/area/ai_monitored/turret_protected/ai_upload) -"aBI" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/darkblue/corner, -/area/bridge) -"aBJ" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 8 - }, -/turf/open/floor/plasteel/darkblue/corner{ - dir = 1 - }, -/area/bridge) -"aBK" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/command{ - name = "Head of Personnel"; - req_access = null; - req_access_txt = "57" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/crew_quarters/heads) -"aBL" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/sortjunction{ - dir = 4; - icon_state = "pipe-j1s"; - sortType = 15 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/wood, -/area/crew_quarters/heads) -"aBM" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/wood, -/area/crew_quarters/heads) -"aBN" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/wood, -/area/crew_quarters/heads) -"aBO" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/wood, -/area/crew_quarters/heads) -"aBP" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/carpet, -/area/crew_quarters/heads) -"aBQ" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4"; - tag = "" - }, -/turf/open/floor/carpet, -/area/crew_quarters/heads) -"aBR" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/turf/open/floor/carpet, -/area/crew_quarters/heads) -"aBS" = ( -/obj/machinery/power/apc{ - dir = 4; - name = "Head of Personnel APC"; - pixel_x = 24; - pixel_y = 0 - }, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/turf/open/floor/carpet, -/area/crew_quarters/heads) -"aBT" = ( -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"aBU" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"aBV" = ( -/obj/machinery/newscaster{ - pixel_x = 32; - pixel_y = 1 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"aBW" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/crew_quarters/sleep) -"aBX" = ( -/turf/closed/wall, -/area/crew_quarters/locker/locker_toilet{ - name = "\improper Restrooms" - }) -"aBY" = ( -/obj/machinery/door/airlock{ - name = "Unisex Restrooms"; - req_access_txt = "0" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/freezer, -/area/crew_quarters/locker/locker_toilet{ - name = "\improper Restrooms" - }) -"aBZ" = ( -/obj/structure/urinal{ - pixel_y = 32 - }, -/obj/effect/landmark{ - name = "xeno_spawn"; - pixel_x = -1 - }, -/turf/open/floor/plasteel/freezer, -/area/crew_quarters/locker/locker_toilet{ - name = "\improper Restrooms" - }) -"aCa" = ( -/obj/structure/urinal{ - pixel_y = 32 - }, -/turf/open/floor/plasteel/freezer, -/area/crew_quarters/locker/locker_toilet{ - name = "\improper Restrooms" - }) -"aCb" = ( -/obj/structure/urinal{ - pixel_y = 32 - }, -/obj/machinery/airalarm{ - dir = 8; - pixel_x = 23; - pixel_y = 0 - }, -/obj/effect/decal/cleanable/deadcockroach, -/turf/open/floor/plasteel/freezer, -/area/crew_quarters/locker/locker_toilet{ - name = "\improper Restrooms" - }) -"aCc" = ( -/obj/effect/landmark{ - name = "blobstart" - }, -/obj/item/toy/beach_ball/holoball, -/turf/open/floor/plating, -/area/crew_quarters/locker/locker_toilet{ - name = "\improper Restrooms" - }) -"aCd" = ( -/turf/closed/wall, -/area/maintenance/apmaint) -"aCe" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"aCf" = ( -/obj/structure/table/wood, -/obj/item/device/flashlight/lamp{ - pixel_x = 3; - pixel_y = 6 - }, -/obj/item/device/radio/intercom{ - dir = 0; - name = "Station Intercom (General)"; - pixel_x = -27 - }, -/turf/open/floor/carpet, -/area/security/detectives_office) -"aCg" = ( -/obj/structure/table/wood, -/obj/item/weapon/pen, -/obj/item/weapon/paper_bin{ - layer = 2.9; - pixel_x = 0; - pixel_y = 0; - tag = "every single paper bin is edited to this" - }, -/turf/open/floor/carpet, -/area/security/detectives_office) -"aCh" = ( -/obj/structure/table/wood, -/obj/item/weapon/storage/fancy/cigarettes, -/obj/item/weapon/lighter, -/obj/item/clothing/glasses/hud/security/sunglasses, -/turf/open/floor/carpet, -/area/security/detectives_office) -"aCi" = ( -/obj/structure/table/wood, -/obj/machinery/computer/security/wooden_tv, -/turf/open/floor/carpet, -/area/security/detectives_office) -"aCj" = ( -/obj/structure/table/wood, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/item/weapon/reagent_containers/food/drinks/bottle/whiskey{ - pixel_y = 20 - }, -/obj/item/weapon/reagent_containers/food/drinks/drinkingglass/shotglass{ - pixel_y = 10 - }, -/obj/item/weapon/reagent_containers/food/drinks/drinkingglass/shotglass{ - pixel_x = 7; - pixel_y = 10 - }, -/turf/open/floor/carpet, -/area/security/detectives_office) -"aCk" = ( -/obj/machinery/power/apc{ - dir = 4; - name = "Detective's Office APC"; - pixel_x = 24; - pixel_y = 0 - }, -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/turf/open/floor/plasteel/grimy, -/area/security/detectives_office) -"aCl" = ( -/turf/closed/wall, -/area/maintenance/port{ - name = "Monastery Maintenance" - }) -"aCm" = ( -/obj/structure/table, -/obj/item/weapon/storage/toolbox/electrical{ - pixel_x = 2; - pixel_y = 4 - }, -/obj/item/weapon/storage/toolbox/electrical{ - pixel_x = -2 - }, -/obj/machinery/light{ - dir = 8 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 8 - }, -/area/storage/primary) -"aCn" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - on = 1 - }, -/turf/open/floor/plasteel, -/area/storage/primary) -"aCo" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - on = 1 - }, -/turf/open/floor/plasteel, -/area/storage/primary) -"aCp" = ( -/obj/structure/table, -/obj/item/weapon/storage/toolbox/mechanical{ - pixel_x = 2; - pixel_y = 4 - }, -/obj/item/weapon/storage/toolbox/mechanical{ - pixel_x = -2 - }, -/obj/machinery/light{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/storage/primary) -"aCq" = ( -/obj/structure/table/wood, -/obj/item/weapon/pinpointer, -/obj/item/weapon/disk/nuclear, -/obj/machinery/light{ - dir = 8 - }, -/turf/open/floor/carpet, -/area/crew_quarters/captain) -"aCr" = ( -/obj/structure/table/wood, -/obj/item/weapon/hand_tele, -/turf/open/floor/carpet, -/area/crew_quarters/captain) -"aCs" = ( -/obj/structure/table/wood, -/obj/item/weapon/storage/photo_album, -/turf/open/floor/carpet, -/area/crew_quarters/captain) -"aCt" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/turf/open/floor/plasteel/black, -/area/crew_quarters/captain) -"aCu" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/darkblue/corner{ - dir = 4 - }, -/area/bridge) -"aCv" = ( -/obj/machinery/light{ - dir = 4 - }, -/obj/machinery/camera{ - c_tag = "Bridge Port Entrance"; - dir = 8; - network = list("SS13") - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/darkblue/corner{ - tag = "icon-darkbluecorners (WEST)"; - dir = 8 - }, -/area/bridge) -"aCw" = ( -/obj/structure/table, -/obj/item/weapon/aiModule/core/full/asimov, -/obj/item/weapon/aiModule/core/freeformcore, -/obj/machinery/door/window{ - base_state = "right"; - dir = 4; - icon_state = "right"; - name = "Core Modules"; - req_access_txt = "20" - }, -/obj/item/weapon/aiModule/core/full/corp, -/obj/item/weapon/aiModule/core/full/custom, -/obj/structure/window/reinforced{ - dir = 1; - pixel_y = 1 - }, -/obj/machinery/flasher{ - id = "brigentry"; - pixel_x = -28 - }, -/turf/open/floor/plasteel/darkblue/side{ - dir = 10 - }, -/area/ai_monitored/turret_protected/ai_upload) -"aCx" = ( -/obj/machinery/light, -/obj/machinery/power/apc{ - cell_type = 5000; - dir = 2; - name = "Upload APC"; - pixel_y = -24 - }, -/obj/structure/cable, -/turf/open/floor/plasteel/darkblue/side, -/area/ai_monitored/turret_protected/ai_upload) -"aCy" = ( -/obj/machinery/computer/upload/ai, -/obj/machinery/flasher{ - id = "AI"; - pixel_x = 0; - pixel_y = -24 - }, -/turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/ai_upload) -"aCz" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/machinery/door/airlock/maintenance{ - name = "Monastery Maintenance"; - req_access_txt = "0"; - req_one_access_txt = "22;24;10;11" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/port{ - name = "Monastery Maintenance" - }) -"aCA" = ( -/obj/machinery/computer/upload/borg, -/obj/machinery/flasher{ - id = "AI"; - pixel_x = 0; - pixel_y = -24 - }, -/turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/ai_upload) -"aCB" = ( -/obj/machinery/light, -/obj/machinery/airalarm{ - dir = 1; - pixel_y = -22 - }, -/turf/open/floor/plasteel/darkblue/side, -/area/ai_monitored/turret_protected/ai_upload) -"aCC" = ( -/obj/structure/table, -/obj/item/weapon/aiModule/supplied/oxygen, -/obj/item/weapon/aiModule/zeroth/oneHuman, -/obj/machinery/door/window{ - base_state = "left"; - dir = 8; - icon_state = "left"; - name = "High-Risk Modules"; - req_access_txt = "20" - }, -/obj/item/weapon/aiModule/reset/purge, -/obj/item/weapon/aiModule/core/full/antimov, -/obj/item/weapon/aiModule/supplied/protectStation, -/obj/structure/window/reinforced{ - dir = 1; - pixel_y = 1 - }, -/obj/machinery/flasher{ - id = "brigentry"; - pixel_x = 28 - }, -/turf/open/floor/plasteel/darkblue/side{ - dir = 6 - }, -/area/ai_monitored/turret_protected/ai_upload) -"aCD" = ( -/obj/machinery/light{ - dir = 8 - }, -/obj/machinery/camera{ - c_tag = "Bridge Starboard Entrance"; - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/darkblue/corner, -/area/bridge) -"aCE" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/darkblue/corner{ - dir = 1 - }, -/area/bridge) -"aCF" = ( -/obj/machinery/disposal/bin, -/obj/structure/disposalpipe/trunk{ - dir = 1 - }, -/turf/open/floor/wood, -/area/crew_quarters/heads) -"aCG" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-24"; - layer = 4.1 - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/wood, -/area/crew_quarters/heads) -"aCH" = ( -/obj/structure/table/wood, -/obj/item/weapon/storage/box/PDAs{ - pixel_x = 4; - pixel_y = 4 - }, -/obj/item/weapon/storage/box/silver_ids, -/obj/item/weapon/storage/box/ids, -/turf/open/floor/wood, -/area/crew_quarters/heads) -"aCI" = ( -/obj/machinery/computer/secure_data, -/turf/open/floor/carpet, -/area/crew_quarters/heads) -"aCJ" = ( -/obj/machinery/computer/card, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/carpet, -/area/crew_quarters/heads) -"aCK" = ( -/obj/structure/chair/office/dark, -/obj/machinery/button/flasher{ - id = "hopflash"; - pixel_x = 38; - pixel_y = -25 - }, -/obj/machinery/button/door{ - id = "hop"; - name = "Privacy Shutters Control"; - pixel_x = 25; - pixel_y = -26; - req_access_txt = "28" - }, -/obj/machinery/button/door{ - id = "hopqueue"; - name = "Queue Shutters Control"; - pixel_x = 25; - pixel_y = -36; - req_access_txt = "28" - }, -/obj/machinery/light_switch{ - pixel_x = 38; - pixel_y = -35 - }, -/turf/open/floor/carpet, -/area/crew_quarters/heads) -"aCL" = ( -/obj/structure/table/wood, -/obj/item/weapon/stamp/hop{ - pixel_x = -4; - pixel_y = 4 - }, -/obj/item/device/radio/intercom{ - dir = 0; - name = "Station Intercom (General)"; - pixel_x = 27; - pixel_y = 0 - }, -/obj/item/weapon/paper_bin{ - layer = 2.9; - pixel_x = 0; - pixel_y = 0; - tag = "every single paper bin is edited to this" - }, -/turf/open/floor/carpet, -/area/crew_quarters/heads) -"aCM" = ( -/obj/machinery/camera{ - c_tag = "Central Primary Hallway Vault"; - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/item/device/radio/intercom{ - dir = 0; - name = "Station Intercom (General)"; - pixel_x = -27 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"aCN" = ( -/turf/closed/wall, -/area/storage/emergency) -"aCO" = ( -/obj/machinery/portable_atmospherics/canister/oxygen, -/turf/open/floor/plating, -/area/storage/emergency) -"aCP" = ( -/obj/structure/reagent_dispensers/watertank, -/turf/open/floor/plating, -/area/storage/emergency) -"aCQ" = ( -/obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/crew_quarters/sleep) -"aCR" = ( -/obj/machinery/door/firedoor, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel, -/area/crew_quarters/sleep) -"aCS" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/crew_quarters/sleep) -"aCT" = ( -/obj/structure/sink{ - icon_state = "sink"; - dir = 8; - pixel_x = -12; - pixel_y = 2 - }, -/obj/structure/mirror{ - pixel_x = -28 - }, -/turf/open/floor/plasteel/freezer, -/area/crew_quarters/locker/locker_toilet{ - name = "\improper Restrooms" - }) -"aCU" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/freezer, -/area/crew_quarters/locker/locker_toilet{ - name = "\improper Restrooms" - }) -"aCV" = ( -/obj/machinery/light_switch{ - pixel_y = 25 - }, -/turf/open/floor/plasteel/freezer, -/area/crew_quarters/locker/locker_toilet{ - name = "\improper Restrooms" - }) -"aCW" = ( -/turf/open/floor/plasteel/freezer, -/area/crew_quarters/locker/locker_toilet{ - name = "\improper Restrooms" - }) -"aCX" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - on = 1 - }, -/obj/machinery/portable_atmospherics/scrubber, -/turf/open/floor/plasteel/freezer, -/area/crew_quarters/locker/locker_toilet{ - name = "\improper Restrooms" - }) -"aCY" = ( -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/turf/open/floor/plasteel/freezer, -/area/crew_quarters/locker/locker_toilet{ - name = "\improper Restrooms" - }) -"aCZ" = ( -/obj/structure/rack, -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"aDa" = ( -/obj/structure/bodycontainer/morgue, -/obj/effect/landmark{ - name = "revenantspawn" - }, -/turf/open/floor/plasteel/black, -/area/security/detectives_office) -"aDb" = ( -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/plasteel/black, -/area/security/detectives_office) -"aDc" = ( -/obj/item/weapon/storage/secure/safe{ - pixel_x = -22 - }, -/turf/open/floor/carpet, -/area/security/detectives_office) -"aDd" = ( -/turf/open/floor/carpet, -/area/security/detectives_office) -"aDe" = ( -/obj/structure/chair/comfy/brown{ - buildstackamount = 0; - dir = 1 - }, -/obj/effect/landmark/start{ - name = "Detective" - }, -/turf/open/floor/carpet, -/area/security/detectives_office) -"aDf" = ( -/obj/structure/table/wood, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/item/device/taperecorder, -/turf/open/floor/carpet, -/area/security/detectives_office) -"aDg" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0; - tag = "" - }, -/turf/open/floor/plasteel/grimy, -/area/security/detectives_office) -"aDh" = ( -/obj/machinery/camera{ - c_tag = "Fore Primary Hallway Entrance"; - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/red/corner{ - tag = "icon-redcorner (WEST)"; - dir = 8 - }, -/area/hallway/primary/fore) -"aDi" = ( -/obj/structure/table, -/obj/item/stack/cable_coil{ - pixel_x = 3; - pixel_y = -7 - }, -/obj/item/weapon/electronics/apc, -/obj/item/device/t_scanner, -/turf/open/floor/plasteel/neutral/side{ - dir = 8 - }, -/area/storage/primary) -"aDj" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/storage/primary) -"aDk" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/storage/primary) -"aDl" = ( -/obj/structure/table, -/obj/item/weapon/weldingtool, -/obj/item/weapon/crowbar, -/obj/item/stack/packageWrap, -/obj/item/stack/packageWrap, -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/storage/primary) -"aDm" = ( -/obj/structure/table/wood, -/obj/item/device/camera, -/turf/open/floor/carpet, -/area/crew_quarters/captain) -"aDn" = ( -/obj/structure/chair/comfy/brown{ - dir = 1 - }, -/turf/open/floor/carpet, -/area/crew_quarters/captain) -"aDo" = ( -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/darkblue/side, -/area/crew_quarters/captain) -"aDp" = ( -/turf/open/floor/plasteel/darkblue/side, -/area/crew_quarters/captain) -"aDq" = ( -/obj/structure/grille, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "hop"; - layer = 2.9; - name = "Privacy Shutters" - }, -/obj/structure/window/reinforced/fulltile, -/obj/structure/cable, -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/turf/open/floor/plating, -/area/crew_quarters/heads) -"aDr" = ( -/obj/structure/table/reinforced, -/obj/machinery/door/window/brigdoor{ - base_state = "rightsecure"; - dir = 1; - icon_state = "rightsecure"; - name = "Head of Personnel's Desk"; - req_access_txt = "57" - }, -/obj/machinery/door/firedoor, -/obj/machinery/door/window/northleft{ - dir = 2; - icon_state = "left"; - name = "Reception Window"; - req_access_txt = "0" - }, -/obj/machinery/door/poddoor{ - density = 0; - icon_state = "open"; - id = "hop"; - layer = 3.1; - name = "privacy shutters"; - opacity = 0 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/heads) -"aDs" = ( -/obj/machinery/vending/snack, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"aDt" = ( -/obj/item/weapon/extinguisher, -/obj/machinery/power/apc{ - dir = 8; - name = "Starboard Emergency Storage APC"; - pixel_x = -24; - pixel_y = 0 - }, -/obj/structure/cable{ - icon_state = "0-2"; - pixel_y = 1; - d2 = 2 - }, -/turf/open/floor/plating, -/area/storage/emergency) -"aDu" = ( -/obj/item/weapon/storage/box/lights/mixed, -/obj/machinery/light/small{ - dir = 4 - }, -/turf/open/floor/plating, -/area/storage/emergency) -"aDv" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/turf/open/floor/plasteel/freezer, -/area/crew_quarters/locker/locker_toilet{ - name = "\improper Restrooms" - }) -"aDw" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 6 - }, -/turf/open/floor/plasteel/freezer, -/area/crew_quarters/locker/locker_toilet{ - name = "\improper Restrooms" - }) -"aDx" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall, -/area/maintenance/port{ - name = "Monastery Maintenance" - }) -"aDy" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/freezer, -/area/crew_quarters/locker/locker_toilet{ - name = "\improper Restrooms" - }) -"aDz" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/open/floor/plasteel/freezer, -/area/crew_quarters/locker/locker_toilet{ - name = "\improper Restrooms" - }) -"aDA" = ( -/obj/machinery/door/airlock{ - name = "Unisex Showers"; - req_access_txt = "0" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/freezer, -/area/crew_quarters/locker/locker_toilet{ - name = "\improper Restrooms" - }) -"aDB" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/light{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/freezer, -/area/crew_quarters/locker/locker_toilet{ - name = "\improper Restrooms" - }) -"aDC" = ( -/obj/machinery/shower{ - dir = 8 - }, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 10 - }, -/turf/open/floor/plasteel/freezer, -/area/crew_quarters/locker/locker_toilet{ - name = "\improper Restrooms" - }) -"aDD" = ( -/obj/structure/table, -/obj/machinery/microwave, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"aDE" = ( -/obj/structure/sign/poster{ - pixel_x = 0; - pixel_y = 32 - }, -/obj/effect/decal/cleanable/vomit/old, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"aDF" = ( -/obj/structure/sink/kitchen{ - pixel_y = 28 - }, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"aDG" = ( -/obj/structure/table, -/obj/item/weapon/reagent_containers/glass/bowl, -/obj/item/weapon/reagent_containers/glass/bowl, -/obj/item/weapon/reagent_containers/food/condiment/rice, -/obj/machinery/light/small{ - dir = 1 - }, -/obj/effect/decal/cleanable/cobweb{ - icon_state = "cobweb2" - }, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"aDH" = ( -/turf/open/floor/plating, -/area/maintenance/apmaint) -"aDI" = ( -/turf/closed/wall/mineral/titanium, -/area/shuttle/escape) -"aDJ" = ( -/obj/structure/grille, -/obj/structure/window/shuttle, -/turf/open/floor/plating, -/area/shuttle/escape) -"aDK" = ( -/obj/structure/table, -/obj/item/weapon/storage/box/bodybags, -/obj/item/weapon/pen, -/turf/open/floor/plasteel/black, -/area/security/detectives_office) -"aDL" = ( -/turf/open/floor/plasteel/black, -/area/security/detectives_office) -"aDM" = ( -/obj/machinery/door/morgue{ - name = "Morgue" - }, -/turf/open/floor/plasteel/black, -/area/security/detectives_office) -"aDN" = ( -/obj/machinery/computer/med_data, -/turf/open/floor/carpet, -/area/security/detectives_office) -"aDO" = ( -/obj/machinery/computer/secure_data, -/obj/machinery/light, -/obj/machinery/camera{ - c_tag = "Detective's Office"; - dir = 1 - }, -/turf/open/floor/carpet, -/area/security/detectives_office) -"aDP" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/carpet, -/area/security/detectives_office) -"aDQ" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/turf/open/floor/plasteel/grimy, -/area/security/detectives_office) -"aDR" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass{ - name = "Central Access" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/hallway/primary/fore) -"aDS" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass{ - name = "Central Access" - }, -/turf/open/floor/plasteel, -/area/hallway/primary/fore) -"aDT" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass{ - name = "Central Access" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/hallway/primary/fore) -"aDU" = ( -/obj/structure/rack, -/obj/item/weapon/wirecutters, -/obj/item/device/flashlight, -/obj/item/device/gps, -/turf/open/floor/plasteel/neutral/side{ - dir = 10 - }, -/area/storage/primary) -"aDV" = ( -/obj/structure/reagent_dispensers/watertank, -/turf/open/floor/plasteel/neutral/side, -/area/storage/primary) -"aDW" = ( -/obj/structure/table, -/obj/item/weapon/crowbar, -/obj/item/device/assembly/prox_sensor{ - pixel_x = -8; - pixel_y = 4 - }, -/obj/item/clothing/gloves/color/fyellow, -/obj/item/clothing/gloves/color/fyellow, -/obj/item/device/assembly/timer, -/obj/item/device/radio, -/turf/open/floor/plasteel/neutral/side, -/area/storage/primary) -"aDX" = ( -/obj/structure/table, -/obj/item/weapon/storage/firstaid/regular, -/obj/item/weapon/reagent_containers/glass/beaker, -/turf/open/floor/plasteel/neutral/side, -/area/storage/primary) -"aDY" = ( -/obj/structure/reagent_dispensers/fueltank, -/turf/open/floor/plasteel/neutral/side, -/area/storage/primary) -"aDZ" = ( -/obj/machinery/disposal/bin, -/turf/open/floor/plasteel/neutral/side{ - dir = 6 - }, -/area/storage/primary) -"aEa" = ( -/obj/machinery/vending/boozeomat{ - products = list(/obj/item/weapon/reagent_containers/food/drinks/bottle/rum = 1, /obj/item/weapon/reagent_containers/food/drinks/bottle/wine = 1, /obj/item/weapon/reagent_containers/food/drinks/ale = 1, /obj/item/weapon/reagent_containers/food/drinks/drinkingglass = 6, /obj/item/weapon/reagent_containers/food/drinks/ice = 1, /obj/item/weapon/reagent_containers/food/drinks/drinkingglass/shotglass = 4); - req_access_txt = "20" - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/captain) -"aEb" = ( -/obj/machinery/disposal/bin, -/obj/structure/disposalpipe/trunk{ - dir = 1 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/crew_quarters/captain) -"aEc" = ( -/obj/machinery/computer/arcade, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/crew_quarters/captain) -"aEd" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-09"; - name = "Photosynthetic Potted plant"; - pixel_y = 10 - }, -/turf/open/floor/plating/airless, -/area/space) -"aEe" = ( -/obj/machinery/vending/cola, -/turf/open/floor/plasteel/delivery, -/area/hallway/primary/central) -"aEf" = ( -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/plasteel/bot, -/area/hallway/primary/central) -"aEg" = ( -/turf/open/floor/plasteel/bot, -/area/hallway/primary/central) -"aEh" = ( -/obj/machinery/flasher{ - id = "hopflash"; - pixel_x = 28; - pixel_y = -28 - }, -/turf/open/floor/plasteel/delivery, -/area/hallway/primary/central) -"aEi" = ( -/obj/structure/table, -/obj/item/weapon/pen, -/obj/item/weapon/paper_bin{ - layer = 2.9; - pixel_x = 0; - pixel_y = 0; - tag = "every single paper bin is edited to this" - }, -/turf/open/floor/plasteel/delivery, -/area/hallway/primary/central) -"aEj" = ( -/obj/machinery/vending/cigarette, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"aEk" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/item/weapon/storage/toolbox/emergency, -/turf/open/floor/plating, -/area/storage/emergency) -"aEl" = ( -/obj/machinery/space_heater, -/obj/structure/sign/poster{ - pixel_x = 32; - pixel_y = 0 - }, -/turf/open/floor/plating, -/area/storage/emergency) -"aEm" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 8; - initialize_directions = 11 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/sleep) -"aEn" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/sleep) -"aEo" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/freezer, -/area/crew_quarters/locker/locker_toilet{ - name = "\improper Restrooms" - }) -"aEp" = ( -/obj/machinery/shower{ - dir = 4 - }, -/turf/open/floor/plasteel/freezer, -/area/crew_quarters/locker/locker_toilet{ - name = "\improper Restrooms" - }) -"aEq" = ( -/obj/machinery/shower{ - dir = 8 - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/freezer, -/area/crew_quarters/locker/locker_toilet{ - name = "\improper Restrooms" - }) -"aEr" = ( -/obj/structure/table, -/obj/item/weapon/reagent_containers/food/snacks/cookie{ - desc = "It has a distinctly eldritch taste to it."; - name = "grandma's cookie" - }, -/obj/item/weapon/cigbutt, -/obj/machinery/light/small{ - dir = 8 - }, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"aEs" = ( -/obj/structure/chair/stool, -/obj/item/clothing/suit/apron/chef, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"aEt" = ( -/obj/effect/landmark{ - name = "blobstart" - }, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"aEu" = ( -/obj/machinery/hydroponics/constructable, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"aEv" = ( -/obj/structure/closet/coffin, -/obj/item/toy/figure/lawyer, -/obj/effect/decal/cleanable/cobweb{ - icon_state = "cobweb2" - }, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"aEw" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"aEx" = ( -/obj/structure/table, -/obj/item/weapon/storage/firstaid/regular{ - pixel_x = 2; - pixel_y = 3 - }, -/turf/open/floor/mineral/titanium, -/area/shuttle/escape) -"aEy" = ( -/obj/machinery/computer/emergency_shuttle, -/turf/open/floor/mineral/titanium, -/area/shuttle/escape) -"aEz" = ( -/obj/structure/table, -/obj/machinery/recharger, -/obj/structure/extinguisher_cabinet{ - pixel_x = 27; - pixel_y = 0 - }, -/turf/open/floor/mineral/titanium, -/area/shuttle/escape) -"aEA" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0; - tag = "" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Brig Maintenance" - }) -"aEB" = ( -/obj/machinery/door/airlock/maintenance{ - name = "Detective Maintenance"; - req_access_txt = "4" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0; - tag = "" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/security/detectives_office) -"aEC" = ( -/obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"aED" = ( -/obj/machinery/door/firedoor, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"aEE" = ( -/obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"aEF" = ( -/obj/structure/grille, -/obj/structure/window/fulltile, -/turf/open/floor/plating, -/area/storage/primary) -"aEG" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass{ - name = "Primary Tool Storage" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/storage/primary) -"aEH" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass{ - name = "Primary Tool Storage" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/storage/primary) -"aEI" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = 0; - pixel_y = 3 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"aEJ" = ( -/obj/machinery/computer/arcade, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"aEK" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/door/poddoor/preopen{ - id = "bridge blast"; - name = "bridge blast door" - }, -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass_command{ - cyclelinkeddir = 1; - name = "Bridge Access"; - req_access_txt = "19" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/vault, -/area/bridge) -"aEL" = ( -/obj/machinery/door/poddoor/preopen{ - id = "bridge blast"; - name = "bridge blast door" - }, -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass_command{ - cyclelinkeddir = 1; - name = "Bridge Access"; - req_access_txt = "19" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/vault, -/area/bridge) -"aEM" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/structure/cable{ - icon_state = "0-2"; - pixel_y = 1; - d2 = 2 - }, -/turf/open/floor/plating, -/area/hallway/primary/central) -"aEN" = ( -/obj/machinery/door/poddoor/preopen{ - id = "bridge blast"; - name = "bridge blast door" - }, -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass_command{ - cyclelinkeddir = 1; - name = "Bridge Access"; - req_access_txt = "19" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/vault, -/area/bridge) -"aEO" = ( -/obj/machinery/door/poddoor/shutters/preopen{ - id = "hopqueue"; - name = "HoP Queue Shutters" - }, -/turf/open/floor/plasteel/loadingarea{ - dir = 1 - }, -/area/hallway/primary/central) -"aEP" = ( -/obj/machinery/door/poddoor/shutters/preopen{ - id = "hopqueue"; - name = "HoP Queue Shutters" - }, -/turf/open/floor/plasteel/loadingarea, -/area/hallway/primary/central) -"aEQ" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/door/firedoor, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"aER" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/crew_quarters/sleep) -"aES" = ( -/obj/machinery/door/airlock{ - name = "Starboard Emergency Storage"; - req_access_txt = "0" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plating, -/area/storage/emergency) -"aET" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/freezer, -/area/crew_quarters/locker/locker_toilet{ - name = "\improper Restrooms" - }) -"aEU" = ( -/obj/machinery/door/airlock{ - name = "Unit 1" - }, -/turf/open/floor/plasteel/freezer, -/area/crew_quarters/locker/locker_toilet{ - name = "\improper Restrooms" - }) -"aEV" = ( -/obj/machinery/door/airlock{ - name = "Unit 2" - }, -/turf/open/floor/plasteel/freezer, -/area/crew_quarters/locker/locker_toilet{ - name = "\improper Restrooms" - }) -"aEW" = ( -/obj/machinery/shower{ - dir = 4 - }, -/obj/item/weapon/soap/nanotrasen, -/turf/open/floor/plasteel/freezer, -/area/crew_quarters/locker/locker_toilet{ - name = "\improper Restrooms" - }) -"aEX" = ( -/obj/structure/closet/crate, -/obj/item/weapon/cultivator, -/obj/item/weapon/shovel/spade, -/obj/item/weapon/storage/bag/plants/portaseeder, -/obj/item/seeds/wheat/rice, -/obj/item/seeds/replicapod, -/obj/item/seeds/carrot, -/obj/item/seeds/tomato, -/obj/item/weapon/reagent_containers/glass/bottle/nutrient/ez, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"aEY" = ( -/obj/effect/decal/cleanable/egg_smudge, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"aEZ" = ( -/turf/closed/wall, -/area/library) -"aFa" = ( -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/escape) -"aFb" = ( -/obj/structure/chair/comfy/black{ - tag = "icon-comfychair (NORTH)"; - icon_state = "comfychair"; - dir = 1 - }, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/escape) -"aFc" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4"; - tag = "" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 5 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Brig Maintenance" - }) -"aFd" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/machinery/light/small{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Brig Maintenance" - }) -"aFe" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Brig Maintenance" - }) -"aFf" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/light/small{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Brig Maintenance" - }) -"aFg" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0; - tag = "" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 4; - initialize_directions = 11 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Brig Maintenance" - }) -"aFh" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 8; - initialize_directions = 11 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"aFi" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/navbeacon{ - codes_txt = "patrol;next_patrol=Dorms"; - location = "Tool" - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"aFj" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"aFk" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"aFl" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral/corner{ - dir = 4 - }, -/area/hallway/primary/central) -"aFm" = ( -/obj/machinery/light{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/sign/map{ - icon_state = "map-pubby"; - pixel_y = 32 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 4 - }, -/area/hallway/primary/central) -"aFn" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 1; - initialize_directions = 11 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"aFo" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"aFp" = ( -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 1; - initialize_directions = 11 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"aFq" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"aFr" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/blue/corner{ - dir = 1 - }, -/area/hallway/primary/central) -"aFs" = ( -/obj/machinery/door/firedoor, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/blue/corner{ - dir = 1 - }, -/area/hallway/primary/central) -"aFt" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 1; - initialize_directions = 11 - }, -/turf/open/floor/plasteel/blue/corner{ - dir = 1 - }, -/area/hallway/primary/central) -"aFu" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/junction, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/blue/corner{ - dir = 1 - }, -/area/hallway/primary/central) -"aFv" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/open/floor/plasteel/blue/corner{ - dir = 1 - }, -/area/hallway/primary/central) -"aFw" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/blue/corner{ - dir = 1 - }, -/area/hallway/primary/central) -"aFx" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/blue/corner{ - dir = 1 - }, -/area/hallway/primary/central) -"aFy" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/blue/corner{ - dir = 1 - }, -/area/hallway/primary/central) -"aFz" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 1; - initialize_directions = 11 - }, -/turf/open/floor/plasteel/blue/corner{ - dir = 1 - }, -/area/hallway/primary/central) -"aFA" = ( -/obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/sign/map{ - icon_state = "map-pubby"; - pixel_y = 32 - }, -/turf/open/floor/plasteel/blue/corner{ - dir = 1 - }, -/area/hallway/primary/central) -"aFB" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"aFC" = ( -/obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 6 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"aFD" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass{ - name = "Dormitory" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/sleep) -"aFE" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/sleep) -"aFF" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/sleep) -"aFG" = ( -/obj/machinery/vending/cigarette, -/obj/machinery/airalarm{ - pixel_y = 22 - }, -/turf/open/floor/plasteel/white/side{ - dir = 4 - }, -/area/crew_quarters/sleep) -"aFH" = ( -/obj/machinery/power/apc{ - dir = 4; - name = "Dormitory Bathrooms APC"; - pixel_x = 26; - pixel_y = 0 - }, -/obj/structure/cable, -/obj/structure/cable{ - icon_state = "0-2"; - pixel_y = 1; - d2 = 2 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/freezer, -/area/crew_quarters/locker/locker_toilet{ - name = "\improper Restrooms" - }) -"aFI" = ( -/obj/structure/toilet{ - dir = 8 - }, -/obj/machinery/light/small{ - dir = 8 - }, -/obj/effect/decal/cleanable/blood/old, -/turf/open/floor/plasteel/freezer, -/area/crew_quarters/locker/locker_toilet{ - name = "\improper Restrooms" - }) -"aFJ" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/door/airlock/maintenance{ - req_access_txt = "12" - }, -/turf/open/floor/plating, -/area/crew_quarters/locker/locker_toilet{ - name = "\improper Restrooms" - }) -"aFK" = ( -/obj/structure/mineral_door/iron, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"aFL" = ( -/obj/structure/grille, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"aFM" = ( -/obj/structure/closet/coffin, -/obj/item/toy/figure/librarian, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"aFN" = ( -/obj/structure/lattice/catwalk, -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4"; - tag = "90Curve" - }, -/obj/structure/cable{ - icon_state = "1-8" - }, -/turf/open/space, -/area/solar/starboard{ - name = "Starboard Solar Array" - }) -"aFO" = ( -/obj/structure/lattice/catwalk, -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4"; - tag = "90Curve" - }, -/obj/structure/cable{ - icon_state = "1-8" - }, -/turf/open/space, -/area/solar/port{ - name = "Port Solar Array" - }) -"aFP" = ( -/obj/machinery/door/airlock/centcom{ - name = "Library" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/carpet, -/area/library) -"aFQ" = ( -/obj/structure/closet, -/turf/open/floor/mineral/titanium/yellow, -/area/shuttle/escape) -"aFR" = ( -/obj/machinery/vending/cola, -/turf/open/floor/mineral/titanium/yellow, -/area/shuttle/escape) -"aFS" = ( -/obj/machinery/computer/atmos_alert, -/turf/open/floor/mineral/titanium, -/area/shuttle/escape) -"aFT" = ( -/obj/structure/chair{ - dir = 8 - }, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/escape) -"aFU" = ( -/obj/structure/chair{ - dir = 4 - }, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/escape) -"aFV" = ( -/obj/machinery/computer/security, -/turf/open/floor/mineral/titanium, -/area/shuttle/escape) -"aFW" = ( -/obj/structure/chair, -/turf/open/floor/mineral/plastitanium/brig, -/area/shuttle/escape) -"aFX" = ( -/obj/structure/table, -/obj/item/weapon/reagent_containers/food/drinks/soda_cans/cola, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Brig Maintenance" - }) -"aFY" = ( -/obj/structure/chair/stool, -/turf/open/floor/plating{ - icon_state = "platingdmg3" - }, -/area/maintenance/fpmaint2{ - name = "Brig Maintenance" - }) -"aFZ" = ( -/obj/machinery/vending/cigarette, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Brig Maintenance" - }) -"aGa" = ( -/turf/closed/wall, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"aGb" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Brig Maintenance" - }) -"aGc" = ( -/obj/structure/reagent_dispensers/watertank, -/turf/open/floor/plating{ - icon_state = "platingdmg3" - }, -/area/maintenance/fpmaint2{ - name = "Brig Maintenance" - }) -"aGd" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - layer = 2.4; - on = 1 - }, -/obj/machinery/navbeacon{ - codes_txt = "patrol;next_patrol=Dorms"; - location = "Tool" - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"aGe" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold-b-f (EAST)"; - dir = 4 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"aGf" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4"; - tag = "" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"aGg" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"aGh" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"aGi" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"aGj" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/door/firedoor, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"aGk" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"aGl" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"aGm" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"aGn" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"aGo" = ( -/obj/structure/cable{ - icon_state = "1-8" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"aGp" = ( -/obj/structure/cable{ - icon_state = "1-8" - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"aGq" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - layer = 2.4; - on = 1 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"aGr" = ( -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 4; - initialize_directions = 11 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"aGs" = ( -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"aGt" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/structure/disposalpipe/junction{ - icon_state = "pipe-j2"; - dir = 2 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"aGu" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 8; - initialize_directions = 11 - }, -/obj/machinery/navbeacon{ - codes_txt = "patrol;next_patrol=Robo"; - location = "HoP" - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"aGv" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 9 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"aGw" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass{ - name = "Dormitory" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/sleep) -"aGx" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/sleep) -"aGy" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 2; - layer = 2.4; - on = 1 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/sleep) -"aGz" = ( -/obj/structure/cable{ - icon_state = "1-8" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/sleep) -"aGA" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 5 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/sleep) -"aGB" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/navbeacon{ - codes_txt = "patrol;next_patrol=HoP"; - location = "Dorms" - }, -/turf/open/floor/plasteel, -/area/crew_quarters/sleep) -"aGC" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/sleep) -"aGD" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white/side{ - dir = 4 - }, -/area/crew_quarters/sleep) -"aGE" = ( -/obj/machinery/door/airlock{ - name = "Unisex Restrooms"; - req_access_txt = "0" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/freezer, -/area/crew_quarters/locker/locker_toilet{ - name = "\improper Restrooms" - }) -"aGF" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/freezer, -/area/crew_quarters/locker/locker_toilet{ - name = "\improper Restrooms" - }) -"aGG" = ( -/obj/structure/cable{ - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 9 - }, -/turf/open/floor/plasteel/freezer, -/area/crew_quarters/locker/locker_toilet{ - name = "\improper Restrooms" - }) -"aGH" = ( -/obj/item/chair, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"aGI" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 6 - }, -/obj/effect/decal/cleanable/cobweb, -/obj/effect/decal/cleanable/oil{ - icon_state = "floor6" - }, -/turf/open/floor/plating{ - icon_state = "panelscorched" - }, -/area/maintenance/apmaint) -"aGJ" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"aGK" = ( -/obj/structure/grille, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"aGL" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/cable{ - icon_state = "1-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 4; - initialize_directions = 11 - }, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"aGM" = ( -/turf/open/floor/mineral/titanium/yellow, -/area/shuttle/escape) -"aGN" = ( -/obj/machinery/computer/crew, -/turf/open/floor/mineral/titanium, -/area/shuttle/escape) -"aGO" = ( -/obj/machinery/computer/communications, -/turf/open/floor/mineral/titanium, -/area/shuttle/escape) -"aGP" = ( -/obj/machinery/flasher{ - id = "shuttle_flasher"; - pixel_x = -24; - pixel_y = 6 - }, -/obj/machinery/button/flasher{ - id = "shuttle_flasher"; - pixel_x = -24; - pixel_y = -6 - }, -/turf/open/floor/mineral/plastitanium/brig, -/area/shuttle/escape) -"aGQ" = ( -/turf/open/floor/mineral/plastitanium/brig, -/area/shuttle/escape) -"aGR" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-17" - }, -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; - icon_state = "space"; - layer = 4; - name = "EXTERNAL AIRLOCK"; - pixel_x = -32; - pixel_y = 0 - }, -/turf/open/floor/plasteel/red/side{ - dir = 9 - }, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"aGS" = ( -/obj/structure/chair, -/obj/machinery/computer/security/telescreen/entertainment{ - pixel_y = 32 - }, -/turf/open/floor/plasteel/red/side{ - dir = 1 - }, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"aGT" = ( -/obj/structure/chair, -/obj/machinery/status_display{ - density = 0; - layer = 4; - pixel_x = 0; - pixel_y = 30 - }, -/turf/open/floor/plasteel/red/side{ - dir = 1 - }, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"aGU" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-17" - }, -/turf/open/floor/plasteel/red/side{ - tag = "icon-red (NORTHEAST)"; - dir = 5 - }, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"aGV" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 8 - }, -/obj/structure/sign/directions/security{ - dir = 1; - icon_state = "direction_sec"; - pixel_x = 32; - pixel_y = -26 - }, -/obj/structure/sign/directions/medical{ - pixel_x = 32; - pixel_y = -38 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"aGW" = ( -/obj/machinery/light, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"aGX" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"aGY" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"aGZ" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"aHa" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold-b-f (NORTH)"; - dir = 1 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"aHb" = ( -/obj/machinery/camera{ - c_tag = "Central Primary Hallway Bathroom"; - dir = 1 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"aHc" = ( -/obj/machinery/door/airlock/centcom{ - name = "Library" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/carpet, -/area/library) -"aHd" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/blue/corner{ - dir = 8 - }, -/area/hallway/primary/central) -"aHe" = ( -/obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/blue/corner{ - dir = 8 - }, -/area/hallway/primary/central) -"aHf" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/open/floor/plasteel/blue/corner{ - dir = 8 - }, -/area/hallway/primary/central) -"aHg" = ( -/obj/machinery/light, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/blue/corner{ - dir = 8 - }, -/area/hallway/primary/central) -"aHh" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 1 - }, -/turf/open/floor/plasteel/blue/corner{ - dir = 8 - }, -/area/hallway/primary/central) -"aHi" = ( -/obj/structure/chair{ - dir = 4 - }, -/turf/open/floor/plating/abductor, -/area/shuttle/abandoned) -"aHj" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/blue/corner{ - dir = 8 - }, -/area/hallway/primary/central) -"aHk" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 1 - }, -/turf/open/floor/plasteel/blue/corner{ - dir = 8 - }, -/area/hallway/primary/central) -"aHl" = ( -/obj/machinery/camera{ - c_tag = "Central Primary Hallway EVA"; - dir = 1 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/blue/corner{ - dir = 8 - }, -/area/hallway/primary/central) -"aHm" = ( -/obj/structure/sign/directions/security{ - dir = 8; - icon_state = "direction_sec"; - pixel_x = -32; - pixel_y = -24; - tag = "icon-direction_sec (WEST)" - }, -/obj/structure/sign/directions/evac{ - dir = 1; - icon_state = "direction_evac"; - pixel_x = -32; - pixel_y = -32; - tag = "icon-direction_evac (NORTH)" - }, -/obj/structure/sign/directions/science{ - pixel_x = -32; - pixel_y = -40 - }, -/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"aHn" = ( -/obj/machinery/computer/shuttle/white_ship, -/turf/open/floor/plating/abductor, -/area/shuttle/abandoned) -"aHo" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"aHp" = ( -/obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"aHq" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass{ - name = "Dormitory" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/sleep) -"aHr" = ( -/obj/machinery/light, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/sleep) -"aHs" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/open/floor/plasteel, -/area/crew_quarters/sleep) -"aHt" = ( -/obj/machinery/camera{ - c_tag = "Dormitories Hallway"; - dir = 1 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/sleep) -"aHu" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 9; - pixel_y = 0 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/sleep) -"aHv" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-04"; - layer = 4.1 - }, -/turf/open/floor/plasteel/white/side{ - dir = 4 - }, -/area/crew_quarters/sleep) -"aHw" = ( -/obj/machinery/light_switch{ - pixel_x = -25 - }, -/turf/open/floor/plasteel/freezer, -/area/crew_quarters/locker/locker_toilet{ - name = "\improper Restrooms" - }) -"aHx" = ( -/obj/machinery/door/airlock{ - name = "Unit B" - }, -/turf/open/floor/plasteel/freezer, -/area/crew_quarters/locker/locker_toilet{ - name = "\improper Restrooms" - }) -"aHy" = ( -/obj/machinery/recharge_station, -/obj/machinery/light/small{ - dir = 1 - }, -/obj/machinery/camera{ - c_tag = "Dormitory Cyborg Recharging Station"; - dir = 2 - }, -/obj/effect/decal/cleanable/oil, -/turf/open/floor/plasteel/freezer, -/area/crew_quarters/locker/locker_toilet{ - name = "\improper Restrooms" - }) -"aHz" = ( -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/obj/effect/decal/cleanable/oil, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"aHA" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"aHB" = ( -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"aHC" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"aHD" = ( -/mob/living/simple_animal/mouse/gray, -/turf/open/floor/plating{ - burnt = 1; - icon_state = "panelscorched" - }, -/area/maintenance/apmaint) -"aHE" = ( -/obj/effect/spawner/lootdrop/grille_or_trash, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"aHF" = ( -/obj/structure/chair{ - dir = 8 - }, -/turf/open/floor/plating/abductor, -/area/shuttle/abandoned) -"aHG" = ( -/obj/machinery/door/airlock/glass{ - name = "Shuttle Airlock" - }, -/obj/docking_port/mobile{ - dheight = 0; - dir = 8; - dwidth = 4; - height = 9; - id = "whiteship"; - launch_status = 0; - name = "White Ship"; - port_angle = 90; - preferred_direction = 1; - roundstart_move = "whiteship_away"; - timid = null; - width = 9 - }, -/obj/docking_port/stationary{ - dir = 8; - dwidth = 11; - height = 22; - id = "whiteship_home"; - name = "monastery"; - turf_type = /turf/open/space; - width = 35 - }, -/turf/open/floor/plasteel/black, -/area/shuttle/abandoned) -"aHH" = ( -/obj/structure/reagent_dispensers/fueltank, -/turf/open/floor/mineral/titanium/yellow, -/area/shuttle/escape) -"aHI" = ( -/obj/structure/sign/nanotrasen, -/turf/closed/wall/mineral/titanium, -/area/shuttle/escape) -"aHJ" = ( -/obj/machinery/door/airlock/glass{ - name = "Emergency Shuttle Cockpit"; - req_access_txt = "19" - }, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/escape) -"aHK" = ( -/obj/structure/chair{ - dir = 1 - }, -/turf/open/floor/mineral/plastitanium/brig, -/area/shuttle/escape) -"aHL" = ( -/obj/machinery/door/airlock/titanium{ - name = "Emergency Shuttle Airlock"; - req_access_txt = "2" - }, -/turf/open/floor/mineral/plastitanium/brig, -/area/shuttle/escape) -"aHM" = ( -/obj/machinery/door/airlock/external{ - cyclelinkeddir = 4; - name = "Escape Airlock" - }, -/turf/open/floor/plating, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"aHN" = ( -/turf/open/floor/plating, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"aHO" = ( -/obj/machinery/door/airlock/external{ - cyclelinkeddir = 8; - name = "Escape Airlock" - }, -/turf/open/floor/plating, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"aHP" = ( -/turf/open/floor/plasteel/red/side{ - dir = 8 - }, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"aHQ" = ( -/turf/open/floor/plasteel, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"aHR" = ( -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/obj/machinery/camera{ - c_tag = "Departure Lounge Holding Area"; - dir = 8 - }, -/obj/structure/extinguisher_cabinet{ - pixel_x = 27; - pixel_y = 0 - }, -/turf/open/floor/plasteel/red/side{ - tag = "icon-red (EAST)"; - dir = 4 - }, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"aHS" = ( -/obj/structure/closet/emcloset, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"aHT" = ( -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; - icon_state = "space"; - layer = 4; - name = "EXTERNAL AIRLOCK"; - pixel_x = 0; - pixel_y = 32 - }, -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/plating, -/area/chapel/main{ - name = "Monastery" - }) -"aHU" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral/corner, -/area/hallway/primary/central) -"aHV" = ( -/turf/closed/wall, -/area/storage/art) -"aHW" = ( -/obj/structure/grille, -/obj/structure/window/fulltile, -/turf/open/floor/plating, -/area/storage/art) -"aHX" = ( -/obj/machinery/door/airlock/glass{ - name = "Art Storage" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plasteel, -/area/storage/art) -"aHY" = ( -/obj/structure/grille, -/obj/structure/window/fulltile, -/turf/open/floor/plating, -/area/crew_quarters/cafeteria{ - name = "Lunchroom" - }) -"aHZ" = ( -/obj/structure/grille, -/obj/structure/window/fulltile, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/crew_quarters/cafeteria{ - name = "Lunchroom" - }) -"aIa" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass{ - name = "Lunchroom" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/crew_quarters/cafeteria{ - name = "Lunchroom" - }) -"aIb" = ( -/turf/closed/wall, -/area/crew_quarters/cafeteria{ - name = "Lunchroom" - }) -"aIc" = ( -/turf/closed/wall, -/area/crew_quarters/toilet{ - name = "\improper Auxiliary Restroom" - }) -"aId" = ( -/obj/machinery/door/airlock{ - id_tag = "Potty1"; - name = "Unisex Restrooms"; - req_access_txt = "0" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/freezer, -/area/crew_quarters/toilet{ - name = "\improper Auxiliary Restroom" - }) -"aIe" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall, -/area/crew_quarters/toilet{ - name = "\improper Auxiliary Restroom" - }) -"aIf" = ( -/turf/closed/wall, -/area/maintenance/fsmaint2) -"aIg" = ( -/obj/machinery/door/airlock/maintenance{ - req_access_txt = "12" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aIh" = ( -/obj/structure/closet/emcloset, -/turf/open/floor/plasteel, -/area/maintenance/fsmaint2) -"aIi" = ( -/obj/machinery/camera{ - c_tag = "Central Primary Hallway Bridge"; - dir = 1 - }, -/obj/structure/closet/emcloset, -/turf/open/floor/plasteel, -/area/maintenance/fsmaint2) -"aIj" = ( -/obj/structure/closet/firecloset, -/turf/open/floor/plasteel, -/area/maintenance/fsmaint2) -"aIk" = ( -/turf/closed/wall/r_wall, -/area/storage/eva) -"aIl" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/storage/eva) -"aIm" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/poddoor/shutters{ - id = "evashutter"; - name = "EVA Storage Shutters" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/delivery, -/area/storage/eva) -"aIn" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass_command{ - name = "EVA Storage"; - req_access_txt = "18" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/storage/eva) -"aIo" = ( -/turf/closed/wall/r_wall, -/area/teleporter) -"aIp" = ( -/obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/door/airlock/glass_command{ - name = "Teleporter"; - req_access_txt = "17" - }, -/turf/open/floor/plasteel, -/area/teleporter) -"aIq" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/obj/machinery/camera{ - c_tag = "Monastery Secondary Dock"; - dir = 8; - network = list("SS13","Monastery") - }, -/turf/open/floor/plasteel/black, -/area/chapel/main{ - name = "Monastery" - }) -"aIr" = ( -/obj/structure/chair{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/chapel/main{ - name = "Monastery" - }) -"aIs" = ( -/turf/closed/wall, -/area/security/checkpoint/supply) -"aIt" = ( -/turf/closed/wall, -/area/quartermaster/office) -"aIu" = ( -/turf/closed/wall, -/area/quartermaster/storage) -"aIv" = ( -/obj/machinery/door/airlock/maintenance{ - name = "Cargo Bay Warehouse Maintenance"; - req_access_txt = "31" - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plating, -/area/quartermaster/storage) -"aIw" = ( -/obj/structure/disposalpipe/segment, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"aIx" = ( -/obj/effect/spawner/lootdrop/grille_or_trash, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"aIy" = ( -/obj/structure/girder, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"aIz" = ( -/obj/structure/grille, -/obj/structure/window/fulltile, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"aIA" = ( -/obj/item/weapon/storage/box/mousetraps, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"aIB" = ( -/turf/closed/wall, -/area/maintenance/disposal) -"aIC" = ( -/obj/machinery/door/poddoor{ - id = "trash"; - name = "disposal bay door" - }, -/turf/open/floor/plating, -/area/maintenance/disposal) -"aID" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/maintenance/disposal) -"aIE" = ( -/obj/machinery/door/airlock/glass{ - name = "Emergency Shuttle Brig"; - req_access_txt = "2" - }, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/escape) -"aIF" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/escape) -"aIG" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"aIH" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/red/side{ - dir = 10 - }, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"aII" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/red/side, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"aIJ" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 10 - }, -/turf/open/floor/plasteel/red/side, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"aIK" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - on = 1 - }, -/turf/open/floor/plasteel/red/side{ - dir = 6 - }, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"aIL" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 8 - }, -/turf/open/floor/plasteel/neutral/corner, -/area/hallway/primary/central) -"aIM" = ( -/obj/structure/grille, -/obj/structure/window/fulltile, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/storage/art) -"aIN" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/easel, -/obj/item/weapon/canvas/twentythreeXnineteen, -/turf/open/floor/plasteel/neutral/side{ - dir = 9 - }, -/area/storage/art) -"aIO" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - layer = 2.4; - on = 1 - }, -/turf/open/floor/plasteel, -/area/storage/art) -"aIP" = ( -/obj/machinery/photocopier, -/obj/machinery/airalarm{ - dir = 8; - pixel_x = 23; - pixel_y = 0 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 5 - }, -/area/storage/art) -"aIQ" = ( -/obj/structure/table, -/obj/item/weapon/reagent_containers/food/snacks/friedegg, -/obj/item/weapon/kitchen/fork, -/turf/open/floor/plasteel/neutral/side{ - dir = 9 - }, -/area/crew_quarters/cafeteria{ - name = "Lunchroom" - }) -"aIR" = ( -/obj/structure/chair{ - dir = 8; - name = "Defense" - }, -/obj/effect/landmark/start{ - name = "Assistant" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral/side{ - dir = 1 - }, -/area/crew_quarters/cafeteria{ - name = "Lunchroom" - }) -"aIS" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/cafeteria{ - name = "Lunchroom" - }) -"aIT" = ( -/obj/machinery/airalarm{ - pixel_y = 22 - }, -/obj/machinery/vending/cola, -/turf/open/floor/plasteel/neutral/side{ - dir = 5 - }, -/area/crew_quarters/cafeteria{ - name = "Lunchroom" - }) -"aIU" = ( -/obj/structure/sink{ - icon_state = "sink"; - dir = 8; - pixel_x = -12; - pixel_y = 2 - }, -/obj/machinery/airalarm{ - pixel_y = 22 - }, -/obj/effect/landmark{ - name = "xeno_spawn"; - pixel_x = -1 - }, -/turf/open/floor/plasteel/freezer, -/area/crew_quarters/toilet{ - name = "\improper Auxiliary Restroom" - }) -"aIV" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4"; - tag = "" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/freezer, -/area/crew_quarters/toilet{ - name = "\improper Auxiliary Restroom" - }) -"aIW" = ( -/obj/structure/urinal{ - pixel_y = 32 - }, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/machinery/button/door{ - id = "Potty1"; - name = "Bathroom Bolt Control"; - normaldoorcontrol = 1; - pixel_x = 25; - pixel_y = 4; - req_access_txt = "0"; - specialfunctions = 4 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/obj/machinery/light_switch{ - pixel_x = 36; - pixel_y = 6 - }, -/turf/open/floor/plasteel/freezer, -/area/crew_quarters/toilet{ - name = "\improper Auxiliary Restroom" - }) -"aIX" = ( -/obj/machinery/portable_atmospherics/canister/air, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aIY" = ( -/obj/structure/closet/coffin, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aIZ" = ( -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/plating{ - broken = 1; - icon_state = "platingdmg3" - }, -/area/maintenance/fsmaint2) -"aJa" = ( -/obj/structure/reagent_dispensers/fueltank, -/turf/open/floor/plating{ - icon_state = "panelscorched" - }, -/area/maintenance/fsmaint2) -"aJb" = ( -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aJc" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating{ - broken = 1; - icon_state = "platingdmg3" - }, -/area/maintenance/fsmaint2) -"aJd" = ( -/obj/structure/closet/crate, -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aJe" = ( -/obj/machinery/space_heater, -/turf/open/floor/plating{ - burnt = 1; - icon_state = "panelscorched" - }, -/area/maintenance/fsmaint2) -"aJf" = ( -/obj/structure/girder, -/turf/open/floor/plating{ - broken = 1; - icon_state = "platingdmg3" - }, -/area/maintenance/fsmaint2) -"aJg" = ( -/obj/structure/reagent_dispensers/fueltank, -/obj/machinery/button/door{ - id = "evashutter"; - name = "EVA Shutters Control"; - pixel_x = -24; - pixel_y = 0; - req_access_txt = "18" - }, -/turf/open/floor/plasteel/darkwarning{ - tag = "icon-warndark (EAST)"; - dir = 4 - }, -/area/storage/eva) -"aJh" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/storage/eva) -"aJi" = ( -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/storage/eva) -"aJj" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/storage/eva) -"aJk" = ( -/obj/structure/closet/crate/rcd, -/turf/open/floor/plasteel/darkwarning{ - dir = 8 - }, -/area/storage/eva) -"aJl" = ( -/turf/closed/wall, -/area/storage/eva) -"aJm" = ( -/obj/machinery/power/apc{ - dir = 8; - name = "Teleporter APC"; - pixel_x = -24 - }, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/machinery/airalarm{ - pixel_y = 22 - }, -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-14"; - layer = 4.1 - }, -/turf/open/floor/plasteel/blue/corner{ - dir = 1 - }, -/area/teleporter) -"aJn" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/structure/cable{ - icon_state = "1-8" - }, -/turf/open/floor/plasteel/blue/corner{ - dir = 1 - }, -/area/teleporter) -"aJo" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/turf/open/floor/plasteel, -/area/teleporter) -"aJp" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/turf/open/floor/plasteel/blue/corner{ - dir = 4 - }, -/area/teleporter) -"aJq" = ( -/obj/structure/closet/crate, -/obj/machinery/button/door{ - id = "teleshutter"; - name = "Teleporter Shutters Control"; - pixel_x = 25; - pixel_y = -5; - req_access_txt = "17" - }, -/turf/open/floor/plasteel/blue/corner{ - dir = 4 - }, -/area/teleporter) -"aJr" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/brown/corner{ - dir = 1 - }, -/area/hallway/primary/central) -"aJs" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/brown/corner{ - dir = 4 - }, -/area/hallway/primary/central) -"aJt" = ( -/obj/item/weapon/pen, -/obj/structure/table, -/obj/machinery/requests_console{ - department = "Security"; - departmentType = 5; - pixel_x = -32; - pixel_y = 0 - }, -/obj/structure/reagent_dispensers/peppertank{ - pixel_y = 30 - }, -/obj/item/weapon/paper_bin{ - layer = 2.9; - pixel_x = 0; - pixel_y = 0; - tag = "every single paper bin is edited to this" - }, -/turf/open/floor/plasteel/red/side{ - dir = 9 - }, -/area/security/checkpoint/supply) -"aJu" = ( -/obj/machinery/computer/security/mining, -/obj/machinery/light{ - dir = 1 - }, -/obj/machinery/camera{ - c_tag = "Cargo Security Post"; - dir = 2; - network = list("SS13") - }, -/obj/machinery/airalarm{ - pixel_y = 22 - }, -/turf/open/floor/plasteel/red/side{ - dir = 1 - }, -/area/security/checkpoint/supply) -"aJv" = ( -/obj/machinery/computer/secure_data, -/obj/item/device/radio/intercom{ - dir = 0; - name = "Station Intercom (General)"; - pixel_x = 0; - pixel_y = 26 - }, -/turf/open/floor/plasteel/red/side{ - dir = 5 - }, -/area/security/checkpoint/supply) -"aJw" = ( -/obj/machinery/conveyor{ - dir = 4; - id = "packageSort2" - }, -/obj/structure/disposaloutlet{ - dir = 4 - }, -/obj/structure/disposalpipe/trunk, -/turf/open/floor/plating, -/area/quartermaster/office) -"aJx" = ( -/obj/machinery/conveyor{ - dir = 4; - id = "packageSort2" - }, -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plating, -/area/quartermaster/office) -"aJy" = ( -/obj/machinery/conveyor{ - dir = 4; - id = "packageSort2" - }, -/obj/effect/spawner/lootdrop/maintenance, -/obj/machinery/status_display{ - density = 0; - layer = 4; - pixel_x = 0; - pixel_y = 30; - supply_display = 1 - }, -/turf/open/floor/plating, -/area/quartermaster/office) -"aJz" = ( -/obj/machinery/conveyor{ - dir = 4; - id = "packageSort2" - }, -/obj/effect/spawner/lootdrop/maintenance, -/obj/machinery/light{ - dir = 1 - }, -/obj/structure/sign/poster{ - pixel_x = 0; - pixel_y = 32 - }, -/turf/open/floor/plating, -/area/quartermaster/office) -"aJA" = ( -/obj/machinery/conveyor{ - dir = 4; - id = "packageSort2" - }, -/obj/effect/spawner/lootdrop/maintenance, -/obj/machinery/computer/security/telescreen/entertainment{ - pixel_y = 32 - }, -/turf/open/floor/plating, -/area/quartermaster/office) -"aJB" = ( -/obj/machinery/conveyor{ - dir = 4; - id = "packageSort2" - }, -/turf/open/floor/plating, -/area/quartermaster/office) -"aJC" = ( -/obj/machinery/conveyor{ - dir = 4; - id = "packageSort2" - }, -/obj/structure/plasticflaps{ - opacity = 0 - }, -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/plating, -/area/quartermaster/office) -"aJD" = ( -/obj/machinery/disposal/deliveryChute{ - dir = 8 - }, -/obj/structure/disposalpipe/trunk{ - dir = 4 - }, -/turf/open/floor/plating/warnplate{ - dir = 4 - }, -/area/quartermaster/office) -"aJE" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/closed/wall, -/area/quartermaster/storage) -"aJF" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/floorgrime, -/area/quartermaster/storage) -"aJG" = ( -/obj/effect/spawner/lootdrop/maintenance, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/floorgrime, -/area/quartermaster/storage) -"aJH" = ( -/obj/structure/closet/crate, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/floorgrime, -/area/quartermaster/storage) -"aJI" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/sign/poster{ - pixel_x = 0; - pixel_y = 32 - }, -/turf/open/floor/plasteel/floorgrime, -/area/quartermaster/storage) -"aJJ" = ( -/obj/structure/closet/cardboard, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/light/small{ - dir = 1 - }, -/obj/machinery/camera{ - c_tag = "Cargo Warehouse"; - dir = 2 - }, -/turf/open/floor/plasteel/floorgrime, -/area/quartermaster/storage) -"aJK" = ( -/obj/item/weapon/cigbutt/cigarbutt, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/floorgrime, -/area/quartermaster/storage) -"aJL" = ( -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/floorgrime, -/area/quartermaster/storage) -"aJM" = ( -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"aJN" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 5 - }, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"aJO" = ( -/obj/structure/cable{ - icon_state = "1-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 9 - }, -/obj/effect/decal/cleanable/ash, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"aJP" = ( -/obj/structure/grille/broken, -/obj/structure/rack, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 2; - name = "2maintenance loot spawner" - }, -/obj/item/weapon/crowbar, -/obj/machinery/light/small, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"aJQ" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold-b-f (NORTH)"; - dir = 1 - }, -/turf/open/floor/carpet, -/area/chapel/main{ - name = "Monastery" - }) -"aJR" = ( -/obj/machinery/space_heater, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"aJS" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 5 - }, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"aJT" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"aJU" = ( -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 10 - }, -/obj/effect/decal/cleanable/cobweb{ - icon_state = "cobweb2" - }, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"aJV" = ( -/obj/machinery/button/massdriver{ - id = "trash"; - pixel_x = 0; - pixel_y = 32 - }, -/turf/open/floor/plating/warnplate{ - icon_plating = "warnplate" - }, -/area/maintenance/disposal) -"aJW" = ( -/obj/machinery/conveyor_switch/oneway{ - convdir = 1; - id = "garbagestacked"; - name = "disposal coveyor" - }, -/turf/open/floor/plating/warnplate{ - icon_plating = "warnplate" - }, -/area/maintenance/disposal) -"aJX" = ( -/turf/open/floor/plating/warnplate{ - icon_plating = "warnplate" - }, -/area/maintenance/disposal) -"aJY" = ( -/turf/open/floor/plating/warnplate/corner{ - dir = 1 - }, -/area/maintenance/disposal) -"aJZ" = ( -/turf/open/floor/mineral/titanium, -/area/shuttle/escape) -"aKa" = ( -/obj/machinery/door/airlock/glass_security{ - name = "Holding Area"; - req_access_txt = "2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/red, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"aKb" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"aKc" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/door/airlock/maintenance{ - req_access_txt = "12" - }, -/turf/open/floor/plating, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"aKd" = ( -/obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 8; - initialize_directions = 11 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"aKe" = ( -/obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"aKf" = ( -/obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner, -/area/hallway/primary/central) -"aKg" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/storage/art) -"aKh" = ( -/obj/structure/table, -/obj/item/stack/cable_coil/random{ - layer = 3.4 - }, -/obj/item/stack/cable_coil/random{ - layer = 3.3 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/item/stack/cable_coil/random{ - layer = 3.2 - }, -/obj/item/stack/cable_coil/random{ - layer = 3.1 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 8 - }, -/area/storage/art) -"aKi" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4"; - tag = "" - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel, -/area/storage/art) -"aKj" = ( -/obj/structure/table, -/obj/item/weapon/airlock_painter, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/machinery/power/apc{ - dir = 4; - name = "Art Storage APC"; - pixel_x = 24; - pixel_y = 0 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/storage/art) -"aKk" = ( -/obj/structure/chair{ - dir = 1 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 10 - }, -/area/crew_quarters/cafeteria{ - name = "Lunchroom" - }) -"aKl" = ( -/obj/machinery/light, -/obj/machinery/camera{ - c_tag = "Lunchroom"; - dir = 1 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/obj/item/device/radio/intercom{ - name = "Station Intercom (General)"; - pixel_y = -28 - }, -/turf/open/floor/plasteel/neutral/side, -/area/crew_quarters/cafeteria{ - name = "Lunchroom" - }) -"aKm" = ( -/obj/structure/cable, -/obj/machinery/power/apc{ - dir = 2; - name = "Cafeteria APC"; - pixel_x = 0; - pixel_y = -24 - }, -/turf/open/floor/plasteel/neutral/side, -/area/crew_quarters/cafeteria{ - name = "Lunchroom" - }) -"aKn" = ( -/obj/machinery/vending/sustenance{ - contraband = list(/obj/item/weapon/kitchen/knife = 6, /obj/item/weapon/reagent_containers/food/drinks/coffee = 12); - desc = "A vending machine which vends food."; - product_ads = "Sufficiently healthy." - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 6 - }, -/area/crew_quarters/cafeteria{ - name = "Lunchroom" - }) -"aKo" = ( -/obj/structure/toilet{ - dir = 4 - }, -/obj/effect/landmark/start{ - name = "Assistant" - }, -/turf/open/floor/plasteel/freezer, -/area/crew_quarters/toilet{ - name = "\improper Auxiliary Restroom" - }) -"aKp" = ( -/obj/machinery/light/small, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/turf/open/floor/plasteel/freezer, -/area/crew_quarters/toilet{ - name = "\improper Auxiliary Restroom" - }) -"aKq" = ( -/obj/structure/cable, -/obj/machinery/power/apc{ - cell_type = 5000; - dir = 2; - name = "Auxiliary Restrooms APC"; - pixel_y = -24 - }, -/obj/item/weapon/soap/nanotrasen, -/obj/machinery/shower{ - dir = 8 - }, -/turf/open/floor/plasteel/freezer, -/area/crew_quarters/toilet{ - name = "\improper Auxiliary Restroom" - }) -"aKr" = ( -/obj/structure/reagent_dispensers/watertank, -/turf/open/floor/plating{ - burnt = 1; - icon_state = "panelscorched" - }, -/area/maintenance/fsmaint2) -"aKs" = ( -/obj/item/weapon/storage/box/lights/mixed, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aKt" = ( -/obj/item/weapon/extinguisher, -/turf/open/floor/plating{ - icon_state = "panelscorched" - }, -/area/maintenance/fsmaint2) -"aKu" = ( -/obj/structure/grille/broken, -/obj/item/weapon/crowbar, -/turf/open/floor/plating{ - broken = 1; - icon_state = "platingdmg3" - }, -/area/maintenance/fsmaint2) -"aKv" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aKw" = ( -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aKx" = ( -/obj/item/trash/pistachios, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aKy" = ( -/obj/structure/grille, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aKz" = ( -/obj/item/weapon/shard{ - icon_state = "small" - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aKA" = ( -/obj/structure/rack, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 2; - name = "2maintenance loot spawner" - }, -/turf/open/floor/plating{ - broken = 1; - icon_state = "platingdmg3" - }, -/area/maintenance/fsmaint2) -"aKB" = ( -/obj/structure/rack{ - dir = 8; - layer = 2.9 - }, -/obj/item/clothing/shoes/magboots{ - pixel_x = -4; - pixel_y = 3 - }, -/obj/item/clothing/shoes/magboots{ - pixel_x = 0; - pixel_y = 0 - }, -/obj/item/device/radio/intercom{ - dir = 0; - name = "Station Intercom (General)"; - pixel_x = -27 - }, -/turf/open/floor/plasteel/darkwarning{ - tag = "icon-warndark (EAST)"; - dir = 4 - }, -/area/storage/eva) -"aKC" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/storage/eva) -"aKD" = ( -/obj/structure/table, -/obj/machinery/cell_charger, -/obj/item/weapon/stock_parts/cell/high{ - charge = 100; - maxcharge = 15000 - }, -/obj/item/weapon/stock_parts/cell/high{ - charge = 100; - maxcharge = 15000 - }, -/turf/open/floor/plasteel/warning/end{ - dir = 1 - }, -/area/storage/eva) -"aKE" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/storage/eva) -"aKF" = ( -/obj/structure/rack{ - dir = 8; - layer = 2.9 - }, -/obj/item/weapon/tank/jetpack/carbondioxide{ - pixel_x = 0; - pixel_y = 0 - }, -/obj/item/weapon/tank/jetpack/carbondioxide{ - pixel_x = -4; - pixel_y = 1 - }, -/turf/open/floor/plasteel/darkwarning{ - dir = 8 - }, -/area/storage/eva) -"aKG" = ( -/obj/structure/closet/crate, -/obj/item/weapon/melee/flyswatter, -/obj/item/device/radio/intercom{ - dir = 0; - name = "Station Intercom (General)"; - pixel_x = -27 - }, -/turf/open/floor/plasteel/blue/corner{ - dir = 1 - }, -/area/teleporter) -"aKH" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plasteel, -/area/teleporter) -"aKI" = ( -/obj/machinery/holopad, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/effect/landmark/event_spawn, -/turf/open/floor/plasteel, -/area/teleporter) -"aKJ" = ( -/turf/open/floor/plasteel, -/area/teleporter) -"aKK" = ( -/turf/open/floor/plasteel/blue/corner{ - dir = 4 - }, -/area/teleporter) -"aKL" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/poddoor/shutters{ - id = "teleshutter"; - name = "Teleporter Shutters" - }, -/turf/open/floor/plasteel/delivery, -/area/teleporter) -"aKM" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 8 - }, -/turf/open/floor/plasteel/brown/corner{ - dir = 1 - }, -/area/hallway/primary/central) -"aKN" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"aKO" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/brown/corner{ - dir = 4 - }, -/area/hallway/primary/central) -"aKP" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/security/checkpoint/supply) -"aKQ" = ( -/obj/machinery/recharger{ - pixel_y = 4 - }, -/obj/structure/table, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/red/side{ - dir = 8 - }, -/area/security/checkpoint/supply) -"aKR" = ( -/obj/structure/chair/office/dark{ - dir = 1 - }, -/obj/effect/landmark/start/depsec/supply, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/security/checkpoint/supply) -"aKS" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - layer = 2.4; - on = 1 - }, -/turf/open/floor/plasteel/red/side{ - dir = 4 - }, -/area/security/checkpoint/supply) -"aKT" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/structure/disposalpipe/wrapsortjunction{ - dir = 1 - }, -/turf/open/floor/plating, -/area/quartermaster/office) -"aKU" = ( -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/quartermaster/office) -"aKV" = ( -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/quartermaster/office) -"aKW" = ( -/obj/machinery/conveyor_switch/oneway{ - id = "packageSort2" - }, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/quartermaster/office) -"aKX" = ( -/obj/structure/table, -/obj/item/device/destTagger, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/quartermaster/office) -"aKY" = ( -/obj/item/stack/wrapping_paper{ - pixel_x = 3; - pixel_y = 4 - }, -/obj/item/stack/packageWrap{ - pixel_x = -1; - pixel_y = -1 - }, -/obj/structure/table, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/quartermaster/office) -"aKZ" = ( -/obj/item/weapon/storage/box, -/obj/item/weapon/storage/box, -/obj/item/weapon/storage/box, -/obj/item/weapon/hand_labeler, -/obj/item/weapon/hand_labeler, -/obj/structure/table, -/obj/machinery/requests_console{ - department = "Cargo Bay"; - departmentType = 2; - pixel_x = 32; - pixel_y = 0 - }, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/quartermaster/office) -"aLa" = ( -/obj/structure/closet/crate/freezer, -/obj/structure/sign/poster{ - pixel_x = -32; - pixel_y = 0 - }, -/turf/open/floor/plasteel/floorgrime, -/area/quartermaster/storage) -"aLb" = ( -/turf/open/floor/plasteel/floorgrime, -/area/quartermaster/storage) -"aLc" = ( -/obj/structure/closet/crate, -/turf/open/floor/plasteel/floorgrime, -/area/quartermaster/storage) -"aLd" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"aLe" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"aLf" = ( -/obj/machinery/mass_driver{ - dir = 1; - id = "trash" - }, -/obj/machinery/button/massdriver{ - id = "trash"; - pixel_x = -28; - pixel_y = 0 - }, -/turf/open/floor/plating, -/area/maintenance/disposal) -"aLg" = ( -/obj/machinery/mineral/stacking_machine{ - input_dir = 8; - output_dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/disposal) -"aLh" = ( -/obj/machinery/conveyor{ - dir = 4; - id = "garbagestacked" - }, -/obj/machinery/mineral/stacking_unit_console{ - dir = 2; - machinedir = 8; - pixel_x = -32; - pixel_y = 32 - }, -/turf/open/floor/plating, -/area/maintenance/disposal) -"aLi" = ( -/obj/machinery/conveyor{ - dir = 4; - id = "garbagestacked" - }, -/turf/open/floor/plating, -/area/maintenance/disposal) -"aLj" = ( -/obj/machinery/disposal/deliveryChute{ - dir = 8 - }, -/obj/structure/disposalpipe/trunk{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/disposal) -"aLk" = ( -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/turf/open/floor/plating/warnplate{ - dir = 8 - }, -/area/maintenance/disposal) -"aLl" = ( -/obj/structure/chair{ - dir = 4 - }, -/turf/open/floor/mineral/titanium, -/area/shuttle/escape) -"aLm" = ( -/obj/structure/chair{ - dir = 8 - }, -/obj/structure/window/reinforced{ - dir = 4 - }, -/turf/open/floor/mineral/titanium, -/area/shuttle/escape) -"aLn" = ( -/obj/structure/chair{ - dir = 4 - }, -/obj/structure/window/reinforced{ - dir = 8 - }, -/turf/open/floor/mineral/titanium, -/area/shuttle/escape) -"aLo" = ( -/turf/open/floor/carpet, -/area/shuttle/escape) -"aLp" = ( -/obj/structure/chair/comfy/beige, -/turf/open/floor/carpet, -/area/shuttle/escape) -"aLq" = ( -/obj/structure/chair{ - dir = 8 - }, -/turf/open/floor/mineral/titanium, -/area/shuttle/escape) -"aLr" = ( -/obj/structure/table, -/obj/item/weapon/storage/firstaid/regular, -/turf/open/floor/plasteel/escape{ - tag = "icon-escape (NORTHWEST)"; - dir = 9 - }, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"aLs" = ( -/obj/structure/chair, -/turf/open/floor/plasteel/escape{ - dir = 1 - }, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"aLt" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/escape{ - dir = 1 - }, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"aLu" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 8 - }, -/turf/open/floor/plasteel/escape{ - dir = 1 - }, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"aLv" = ( -/obj/machinery/light{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/item/device/radio/intercom{ - dir = 0; - name = "Station Intercom (General)"; - pixel_x = 0; - pixel_y = 26 - }, -/turf/open/floor/plasteel/escape{ - dir = 1 - }, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"aLw" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 9; - pixel_y = 0 - }, -/turf/open/floor/plasteel/escape{ - dir = 1 - }, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"aLx" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-16"; - layer = 4.1 - }, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/machinery/power/apc{ - cell_type = 5000; - dir = 4; - name = "Departure Lounge APC"; - pixel_x = 24; - pixel_y = 0 - }, -/obj/machinery/firealarm{ - dir = 1; - pixel_y = 29 - }, -/turf/open/floor/plasteel/escape{ - dir = 5 - }, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"aLy" = ( -/obj/structure/table, -/obj/item/weapon/hand_labeler, -/turf/open/floor/plasteel/neutral/side{ - dir = 10 - }, -/area/storage/art) -"aLz" = ( -/obj/structure/table, -/obj/item/weapon/storage/crayons, -/obj/item/weapon/storage/crayons, -/obj/machinery/light, -/obj/machinery/camera{ - c_tag = "Art Storage"; - dir = 1 - }, -/turf/open/floor/plasteel/neutral/side, -/area/storage/art) -"aLA" = ( -/obj/structure/table, -/obj/item/stack/sheet/metal{ - amount = 20; - layer = 3.1 - }, -/obj/item/stack/sheet/glass{ - amount = 20; - layer = 3.2 - }, -/obj/item/stack/rods{ - amount = 20; - layer = 3.3 - }, -/obj/item/weapon/canvas/twentythreeXtwentythree, -/obj/item/weapon/canvas/nineteenXnineteen, -/turf/open/floor/plasteel/neutral/side{ - dir = 6 - }, -/area/storage/art) -"aLB" = ( -/obj/structure/grille/broken, -/turf/open/floor/plating{ - burnt = 1; - icon_state = "panelscorched" - }, -/area/maintenance/fsmaint2) -"aLC" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 8 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aLD" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aLE" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 10 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aLF" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aLG" = ( -/obj/machinery/suit_storage_unit/standard_unit, -/obj/machinery/light{ - dir = 8 - }, -/obj/machinery/requests_console{ - department = "EVA"; - pixel_x = -32; - pixel_y = 0 - }, -/obj/machinery/camera{ - c_tag = "EVA Storage"; - dir = 4; - network = list("SS13") - }, -/turf/open/floor/plasteel/darkwarning{ - tag = "icon-warndark (EAST)"; - dir = 4 - }, -/area/storage/eva) -"aLH" = ( -/obj/structure/tank_dispenser/oxygen, -/turf/open/floor/plasteel/warning/end, -/area/storage/eva) -"aLI" = ( -/obj/machinery/suit_storage_unit/standard_unit, -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/turf/open/floor/plasteel/darkwarning{ - dir = 8 - }, -/area/storage/eva) -"aLJ" = ( -/obj/structure/table, -/obj/item/weapon/hand_tele, -/obj/machinery/light{ - dir = 8 - }, -/obj/machinery/camera{ - c_tag = "Teleporter"; - dir = 4; - network = list("SS13") - }, -/obj/structure/extinguisher_cabinet{ - pixel_x = -26; - pixel_y = 0 - }, -/turf/open/floor/plasteel/blue/corner{ - dir = 1 - }, -/area/teleporter) -"aLK" = ( -/obj/structure/chair/stool, -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4"; - tag = "" - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/plasteel, -/area/teleporter) -"aLL" = ( -/obj/structure/chair/stool, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 9; - pixel_y = 0 - }, -/turf/open/floor/plasteel, -/area/teleporter) -"aLM" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel, -/area/teleporter) -"aLN" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/blue/corner{ - dir = 4 - }, -/area/teleporter) -"aLO" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/poddoor/shutters{ - id = "teleshutter"; - name = "Teleporter Shutters" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/delivery, -/area/teleporter) -"aLP" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/brown/corner{ - dir = 1 - }, -/area/hallway/primary/central) -"aLQ" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4"; - tag = "90Curve" - }, -/obj/structure/cable{ - icon_state = "1-8" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"aLR" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/brown/corner{ - dir = 4 - }, -/area/hallway/primary/central) -"aLS" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/floor/plating, -/area/security/checkpoint/supply) -"aLT" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/turf/open/floor/plasteel/red/side{ - dir = 8 - }, -/area/security/checkpoint/supply) -"aLU" = ( -/turf/open/floor/plasteel, -/area/security/checkpoint/supply) -"aLV" = ( -/turf/open/floor/plasteel/red/side{ - dir = 4 - }, -/area/security/checkpoint/supply) -"aLW" = ( -/obj/machinery/door/airlock/glass_security{ - name = "Cargo Security Post"; - req_access_txt = "63" - }, -/turf/open/floor/plasteel/red/side{ - dir = 8 - }, -/area/quartermaster/office) -"aLX" = ( -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - on = 1 - }, -/turf/open/floor/plasteel, -/area/quartermaster/office) -"aLY" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/quartermaster/office) -"aLZ" = ( -/obj/structure/chair/stool, -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/obj/effect/landmark/start{ - name = "Cargo Technician" - }, -/turf/open/floor/plasteel, -/area/quartermaster/office) -"aMa" = ( -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel, -/area/quartermaster/office) -"aMb" = ( -/obj/machinery/door/window/eastleft{ - dir = 8; - icon_state = "right"; - name = "Mail"; - req_access_txt = "50" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/light/small, -/turf/open/floor/plating, -/area/quartermaster/office) -"aMc" = ( -/obj/structure/disposalpipe/trunk{ - dir = 8 - }, -/obj/structure/disposaloutlet{ - dir = 8 - }, -/turf/open/floor/plating/warnplate{ - dir = 4 - }, -/area/quartermaster/office) -"aMd" = ( -/obj/effect/spawner/lootdrop/maintenance, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - on = 1 - }, -/turf/open/floor/plasteel/floorgrime, -/area/quartermaster/storage) -"aMe" = ( -/obj/item/stack/sheet/cardboard, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 6 - }, -/turf/open/floor/plasteel/floorgrime, -/area/quartermaster/storage) -"aMf" = ( -/obj/structure/closet/crate, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/floorgrime, -/area/quartermaster/storage) -"aMg" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/floorgrime, -/area/quartermaster/storage) -"aMh" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - layer = 2.4; - on = 1 - }, -/turf/open/floor/plasteel/floorgrime, -/area/quartermaster/storage) -"aMi" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/quartermaster/storage) -"aMj" = ( -/obj/structure/shuttle/engine/propulsion{ - icon_state = "propulsion_r" - }, -/turf/open/floor/plating/airless, -/area/shuttle/supply) -"aMk" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/item/weapon/shard, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"aMl" = ( -/obj/machinery/light/small{ - dir = 8 - }, -/obj/machinery/conveyor{ - dir = 2; - id = "garbage" - }, -/turf/open/floor/plating, -/area/maintenance/disposal) -"aMm" = ( -/obj/machinery/conveyor{ - dir = 4; - id = "garbage" - }, -/turf/open/floor/plating, -/area/maintenance/disposal) -"aMn" = ( -/obj/machinery/light/small{ - dir = 4 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plating/warnplate{ - dir = 8 - }, -/area/maintenance/disposal) -"aMo" = ( -/obj/structure/chair/comfy/beige{ - dir = 4 - }, -/turf/open/floor/carpet, -/area/shuttle/escape) -"aMp" = ( -/obj/structure/table/wood/poker, -/obj/item/toy/cards/deck, -/turf/open/floor/carpet, -/area/shuttle/escape) -"aMq" = ( -/obj/structure/chair/comfy/beige{ - dir = 8 - }, -/turf/open/floor/carpet, -/area/shuttle/escape) -"aMr" = ( -/obj/structure/chair{ - dir = 4 - }, -/turf/open/floor/plasteel/escape{ - dir = 8 - }, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"aMs" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 8; - initialize_directions = 11 - }, -/turf/open/floor/plasteel, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"aMt" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"aMu" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"aMv" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"aMw" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass{ - name = "Departure Lounge" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"aMx" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 1 - }, -/turf/open/floor/carpet, -/area/chapel/main{ - name = "Monastery" - }) -"aMy" = ( -/obj/machinery/light/small{ - dir = 1 - }, -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aMz" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/turf/open/floor/plating{ - broken = 1; - icon_state = "platingdmg3" - }, -/area/maintenance/fsmaint2) -"aMA" = ( -/turf/open/floor/plating{ - broken = 1; - icon_state = "platingdmg3" - }, -/area/maintenance/fsmaint2) -"aMB" = ( -/obj/item/trash/cheesie, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aMC" = ( -/obj/structure/girder, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aMD" = ( -/obj/structure/rack, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 2; - name = "2maintenance loot spawner" - }, -/obj/item/clothing/gloves/color/random, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aME" = ( -/obj/machinery/power/apc{ - dir = 1; - name = "Bar Maintenance APC"; - pixel_y = 24 - }, -/obj/structure/cable{ - icon_state = "0-2"; - pixel_y = 1; - d2 = 2 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aMF" = ( -/turf/closed/wall, -/area/crew_quarters/bar) -"aMG" = ( -/obj/structure/grille/broken, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aMH" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aMI" = ( -/obj/machinery/suit_storage_unit/standard_unit, -/obj/structure/extinguisher_cabinet{ - pixel_x = -26; - pixel_y = 0 - }, -/turf/open/floor/plasteel/darkwarning{ - tag = "icon-warndark (EAST)"; - dir = 4 - }, -/area/storage/eva) -"aMJ" = ( -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel, -/area/storage/eva) -"aMK" = ( -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel, -/area/storage/eva) -"aML" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/turf/open/floor/plasteel, -/area/storage/eva) -"aMM" = ( -/obj/machinery/suit_storage_unit/standard_unit, -/turf/open/floor/plasteel/darkwarning{ - dir = 8 - }, -/area/storage/eva) -"aMN" = ( -/obj/structure/table, -/obj/item/device/radio/beacon, -/turf/open/floor/plasteel/blue/side{ - dir = 10 - }, -/area/teleporter) -"aMO" = ( -/obj/machinery/computer/teleporter, -/turf/open/floor/plasteel/blue/side, -/area/teleporter) -"aMP" = ( -/obj/machinery/teleport/station, -/turf/open/floor/plasteel/blue/side, -/area/teleporter) -"aMQ" = ( -/obj/machinery/teleport/hub, -/turf/open/floor/plating, -/area/teleporter) -"aMR" = ( -/obj/structure/closet/crate, -/obj/item/weapon/crowbar, -/turf/open/floor/plasteel/blue/side{ - dir = 6 - }, -/area/teleporter) -"aMS" = ( -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"aMT" = ( -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/brown/corner{ - dir = 4 - }, -/area/hallway/primary/central) -"aMU" = ( -/obj/structure/cable, -/obj/machinery/power/apc{ - dir = 8; - name = "Security Post - Cargo APC"; - pixel_x = -24; - pixel_y = 0 - }, -/obj/structure/closet/wardrobe/red, -/turf/open/floor/plasteel/red/side{ - dir = 10 - }, -/area/security/checkpoint/supply) -"aMV" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 2; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/red/side, -/area/security/checkpoint/supply) -"aMW" = ( -/obj/structure/filingcabinet, -/turf/open/floor/plasteel/red/side{ - dir = 6 - }, -/area/security/checkpoint/supply) -"aMX" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/quartermaster/office) -"aMY" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/quartermaster/office) -"aMZ" = ( -/turf/open/floor/plasteel, -/area/quartermaster/office) -"aNa" = ( -/obj/machinery/holopad, -/turf/open/floor/plasteel, -/area/quartermaster/office) -"aNb" = ( -/obj/structure/disposalpipe/wrapsortjunction{ - dir = 1 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/plasteel, -/area/quartermaster/office) -"aNc" = ( -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/obj/machinery/camera{ - c_tag = "Cargo Mailroom"; - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 10 - }, -/turf/open/floor/plasteel, -/area/quartermaster/office) -"aNd" = ( -/obj/machinery/button/door{ - id = "qm_warehouse"; - name = "Warehouse Door Control"; - pixel_x = -24; - pixel_y = 0; - req_access_txt = "31" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/floorgrime, -/area/quartermaster/storage) -"aNe" = ( -/obj/item/device/flashlight, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/floorgrime, -/area/quartermaster/storage) -"aNf" = ( -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plasteel/floorgrime, -/area/quartermaster/storage) -"aNg" = ( -/obj/structure/closet/crate{ - icon_state = "crateopen"; - opened = 1 - }, -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plasteel/floorgrime, -/area/quartermaster/storage) -"aNh" = ( -/obj/structure/closet/crate/medical, -/turf/open/floor/plasteel/floorgrime, -/area/quartermaster/storage) -"aNi" = ( -/turf/closed/wall/mineral/titanium, -/area/shuttle/supply) -"aNj" = ( -/obj/structure/shuttle/engine/heater{ - icon_state = "heater"; - dir = 1 - }, -/obj/structure/window/reinforced, -/turf/open/floor/plating/airless, -/area/shuttle/supply) -"aNk" = ( -/obj/structure/disposalpipe/sortjunction{ - dir = 2; - icon_state = "pipe-j2s"; - sortType = 1 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"aNl" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/closed/wall, -/area/maintenance/disposal) -"aNm" = ( -/obj/machinery/conveyor{ - dir = 8; - id = "garbage" - }, -/obj/structure/disposaloutlet{ - dir = 4 - }, -/obj/structure/disposalpipe/trunk{ - dir = 8 - }, -/turf/open/floor/plating/warnplate{ - dir = 4 - }, -/area/maintenance/disposal) -"aNn" = ( -/obj/machinery/conveyor{ - dir = 8; - id = "garbage" - }, -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/turf/open/floor/plating, -/area/maintenance/disposal) -"aNo" = ( -/obj/machinery/conveyor{ - dir = 8; - id = "garbage" - }, -/obj/machinery/recycler, -/turf/open/floor/plating, -/area/maintenance/disposal) -"aNp" = ( -/obj/machinery/conveyor{ - dir = 2; - id = "garbage" - }, -/turf/open/floor/plating, -/area/maintenance/disposal) -"aNq" = ( -/obj/structure/disposalpipe/segment, -/obj/effect/landmark{ - name = "revenantspawn" - }, -/turf/open/floor/plating/warnplate{ - dir = 8 - }, -/area/maintenance/disposal) -"aNr" = ( -/obj/structure/chair/comfy/beige{ - tag = "icon-comfychair (NORTH)"; - icon_state = "comfychair"; - dir = 1 - }, -/turf/open/floor/carpet, -/area/shuttle/escape) -"aNs" = ( -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; - icon_state = "space"; - layer = 4; - name = "EXTERNAL AIRLOCK"; - pixel_x = -32; - pixel_y = 0 - }, -/turf/open/floor/plasteel, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"aNt" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"aNu" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"aNv" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"aNw" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"aNx" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass{ - name = "Departure Lounge" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"aNy" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 8; - initialize_directions = 11 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"aNz" = ( -/obj/structure/disposalpipe/junction{ - dir = 8; - icon_state = "pipe-j2" - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"aNA" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral/corner, -/area/hallway/primary/central) -"aNB" = ( -/obj/machinery/disposal/bin, -/obj/structure/disposalpipe/trunk{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"aNC" = ( -/obj/structure/grille/broken, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 6 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aND" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aNE" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aNF" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 10 - }, -/turf/open/floor/plating{ - broken = 1; - icon_state = "platingdmg3" - }, -/area/maintenance/fsmaint2) -"aNG" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/effect/landmark{ - name = "blobstart" - }, -/turf/open/floor/plating{ - burnt = 1; - icon_state = "panelscorched" - }, -/area/maintenance/fsmaint2) -"aNH" = ( -/obj/structure/closet, -/obj/effect/spawner/lootdrop/maintenance, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plating{ - burnt = 1; - icon_state = "panelscorched" - }, -/area/maintenance/fsmaint2) -"aNI" = ( -/obj/structure/grille, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aNJ" = ( -/obj/structure/grille/broken, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aNK" = ( -/obj/item/weapon/reagent_containers/glass/bucket, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aNL" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aNM" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4"; - tag = "" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 6 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aNN" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aNO" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4"; - tag = "" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating{ - broken = 1; - icon_state = "platingdmg3" - }, -/area/maintenance/fsmaint2) -"aNP" = ( -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 9; - pixel_y = 0 - }, -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aNQ" = ( -/obj/machinery/reagentgrinder, -/obj/structure/table/wood, -/turf/open/floor/wood, -/area/crew_quarters/bar) -"aNR" = ( -/obj/machinery/vending/cigarette, -/obj/machinery/light{ - dir = 1 - }, -/turf/open/floor/wood{ - icon_state = "wood-broken6" - }, -/area/crew_quarters/bar) -"aNS" = ( -/obj/machinery/vending/coffee, -/obj/machinery/camera{ - c_tag = "Bar Backroom"; - dir = 2; - network = list("SS13") - }, -/turf/open/floor/wood, -/area/crew_quarters/bar) -"aNT" = ( -/obj/structure/closet/secure_closet/bar{ - req_access_txt = "25" - }, -/turf/open/floor/wood, -/area/crew_quarters/bar) -"aNU" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aNV" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/item/weapon/broken_bottle, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aNW" = ( -/obj/structure/table, -/obj/item/stack/sheet/plasteel{ - amount = 10 - }, -/turf/open/floor/plasteel/darkwarning{ - tag = "icon-warndark (EAST)"; - dir = 4 - }, -/area/storage/eva) -"aNX" = ( -/obj/structure/table, -/obj/item/stack/sheet/metal{ - amount = 50 - }, -/obj/item/stack/sheet/metal{ - amount = 50 - }, -/obj/item/weapon/crowbar, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/machinery/power/apc{ - dir = 2; - name = "EVA Storage APC"; - pixel_y = -24 - }, -/turf/open/floor/plasteel, -/area/storage/eva) -"aNY" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel, -/area/storage/eva) -"aNZ" = ( -/obj/structure/table, -/obj/item/stack/sheet/rglass{ - amount = 50 - }, -/obj/item/stack/sheet/rglass{ - amount = 50 - }, -/obj/item/stack/rods{ - amount = 50 - }, -/obj/item/stack/rods{ - amount = 50 - }, -/obj/machinery/airalarm{ - dir = 1; - pixel_y = -22 - }, -/turf/open/floor/plasteel, -/area/storage/eva) -"aOa" = ( -/obj/structure/table, -/obj/item/stack/sheet/metal{ - amount = 50 - }, -/obj/item/stack/sheet/rglass{ - amount = 50 - }, -/turf/open/floor/plasteel/darkwarning{ - dir = 8 - }, -/area/storage/eva) -"aOb" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/airalarm{ - dir = 4; - pixel_x = -23; - pixel_y = 0 - }, -/turf/open/floor/plasteel/brown/corner{ - dir = 1; - tag = "icon-browncorner (NORTH)" - }, -/area/hallway/primary/central) -"aOc" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/checkpoint/supply) -"aOd" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass_security{ - name = "Cargo Security Post"; - req_access_txt = "63" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/red/side{ - dir = 1 - }, -/area/security/checkpoint/supply) -"aOe" = ( -/obj/structure/chair/stool, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/quartermaster/office) -"aOf" = ( -/obj/structure/chair/stool, -/turf/open/floor/plasteel, -/area/quartermaster/office) -"aOg" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/folder/yellow, -/obj/item/weapon/pen, -/obj/item/weapon/paper_bin{ - layer = 2.9; - pixel_x = 0; - pixel_y = 0; - tag = "every single paper bin is edited to this" - }, -/turf/open/floor/plasteel, -/area/quartermaster/office) -"aOh" = ( -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel, -/area/quartermaster/office) -"aOi" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/quartermaster/office) -"aOj" = ( -/obj/structure/closet/crate, -/obj/item/weapon/reagent_containers/food/snacks/donut, -/obj/item/weapon/reagent_containers/food/snacks/donut, -/obj/item/weapon/reagent_containers/food/snacks/donut, -/obj/item/weapon/reagent_containers/food/snacks/donut, -/turf/open/floor/plating, -/area/quartermaster/office) -"aOk" = ( -/obj/machinery/door/poddoor/shutters{ - id = "qm_warehouse"; - name = "warehouse shutters" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/delivery{ - name = "floor" - }, -/area/quartermaster/storage) -"aOl" = ( -/obj/machinery/door/poddoor/shutters{ - id = "qm_warehouse"; - name = "warehouse shutters" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/delivery{ - name = "floor" - }, -/area/quartermaster/storage) -"aOm" = ( -/obj/machinery/door/poddoor/shutters{ - id = "qm_warehouse"; - name = "warehouse shutters" - }, -/turf/open/floor/plasteel/delivery{ - name = "floor" - }, -/area/quartermaster/storage) -"aOn" = ( -/obj/structure/closet/crate/internals, -/turf/open/floor/plasteel/floorgrime, -/area/quartermaster/storage) -"aOo" = ( -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/supply) -"aOp" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 5 - }, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"aOq" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/maintenance/disposal) -"aOr" = ( -/obj/structure/chair{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating/warnplate{ - dir = 1 - }, -/area/maintenance/disposal) -"aOs" = ( -/obj/item/trash/can, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating/warnplate{ - dir = 1 - }, -/area/maintenance/disposal) -"aOt" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plating/warnplate{ - dir = 1 - }, -/area/maintenance/disposal) -"aOu" = ( -/obj/machinery/conveyor_switch/oneway{ - convdir = -1; - id = "garbage"; - name = "disposal coveyor" - }, -/turf/open/floor/plating/warnplate{ - dir = 1 - }, -/area/maintenance/disposal) -"aOv" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 2; - on = 1 - }, -/turf/open/floor/plating/warnplate{ - dir = 1 - }, -/area/maintenance/disposal) -"aOw" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/airalarm{ - dir = 8; - icon_state = "alarm0"; - pixel_x = 24 - }, -/turf/open/floor/plating/warnplate/corner{ - tag = "icon-warnplatecorner (EAST)"; - dir = 4 - }, -/area/maintenance/disposal) -"aOx" = ( -/obj/machinery/door/airlock/titanium{ - name = "Emergency Shuttle Airlock" - }, -/turf/open/floor/plating, -/area/shuttle/escape) -"aOy" = ( -/obj/machinery/light{ - dir = 1 - }, -/turf/open/floor/plating, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"aOz" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plasteel, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"aOA" = ( -/obj/structure/chair, -/turf/open/floor/plasteel, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"aOB" = ( -/obj/structure/grille, -/obj/structure/window/fulltile, -/turf/open/floor/plating, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"aOC" = ( -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/obj/machinery/vending/coffee, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"aOD" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aOE" = ( -/obj/structure/cable{ - icon_state = "1-8" - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aOF" = ( -/turf/closed/wall, -/area/hydroponics) -"aOG" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/door/airlock/maintenance{ - name = "Hydroponics Maintenance"; - req_access_txt = "35" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/hydroponics) -"aOH" = ( -/turf/closed/wall, -/area/crew_quarters/kitchen) -"aOI" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0; - tag = "" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/light/small{ - brightness = 3; - dir = 8 - }, -/turf/open/floor/plating, -/area/crew_quarters/kitchen) -"aOJ" = ( -/obj/structure/plasticflaps{ - opacity = 1 - }, -/turf/open/floor/plating{ - broken = 1; - icon_state = "platingdmg3" - }, -/area/maintenance/fsmaint2) -"aOK" = ( -/obj/item/weapon/reagent_containers/food/drinks/shaker, -/obj/item/weapon/gun/ballistic/revolver/doublebarrel, -/obj/structure/table/wood, -/obj/item/weapon/coin/silver, -/obj/item/stack/spacecash/c10, -/obj/item/stack/spacecash/c100, -/turf/open/floor/wood, -/area/crew_quarters/bar) -"aOL" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/structure/chair/wood/normal{ - icon_state = "wooden_chair"; - dir = 8 - }, -/turf/open/floor/wood{ - icon_state = "wood-broken" - }, -/area/crew_quarters/bar) -"aOM" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - external_pressure_bound = 101.325; - on = 1; - pressure_checks = 1 - }, -/turf/open/floor/wood, -/area/crew_quarters/bar) -"aON" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/wood, -/area/crew_quarters/bar) -"aOO" = ( -/obj/machinery/door/airlock/maintenance{ - name = "Bar Storage Maintenance"; - req_access_txt = "25" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/crew_quarters/bar) -"aOP" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 4; - initialize_directions = 11 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aOQ" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/item/chair, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aOR" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/maintenance{ - name = "EVA Maintenance"; - req_access_txt = "18" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plating, -/area/storage/eva) -"aOS" = ( -/obj/structure/closet/crate{ - icon_state = "crateopen"; - opened = 1 - }, -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aOT" = ( -/obj/item/trash/tray, -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aOU" = ( -/obj/structure/closet/secure_closet/freezer/cream_pie, -/obj/item/weapon/grown/bananapeel, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aOV" = ( -/obj/structure/closet/secure_closet/freezer/cream_pie, -/obj/item/seeds/banana, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aOW" = ( -/turf/open/floor/plasteel/brown/corner{ - dir = 4 - }, -/area/quartermaster/office) -"aOX" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/brown/corner{ - dir = 4 - }, -/area/quartermaster/office) -"aOY" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/door/firedoor, -/obj/structure/table/reinforced, -/obj/machinery/door/window/westleft{ - dir = 1; - name = "Delivery Desk"; - req_access_txt = "50" - }, -/turf/open/floor/plasteel/bot, -/area/quartermaster/office) -"aOZ" = ( -/obj/machinery/door/firedoor, -/obj/structure/table/reinforced, -/obj/machinery/door/window/westleft{ - dir = 1; - name = "Delivery Desk"; - req_access_txt = "50" - }, -/turf/open/floor/plasteel/bot, -/area/quartermaster/office) -"aPa" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/door/airlock/glass_mining{ - name = "Mailroom"; - req_access_txt = "0"; - req_one_access_txt = "48;50" - }, -/turf/open/floor/plasteel, -/area/quartermaster/office) -"aPb" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/quartermaster/office) -"aPc" = ( -/obj/machinery/button/door{ - id = "qm_warehouse"; - name = "Warehouse Door Control"; - pixel_x = -24; - pixel_y = 0; - req_access_txt = "31" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/quartermaster/storage) -"aPd" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/quartermaster/storage) -"aPe" = ( -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/quartermaster/storage) -"aPf" = ( -/obj/machinery/power/apc{ - cell_type = 2500; - dir = 4; - name = "Cargo Maintenance APC"; - pixel_x = 24; - pixel_y = 0 - }, -/obj/structure/cable{ - icon_state = "0-2"; - pixel_y = 1; - d2 = 2 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"aPg" = ( -/obj/effect/landmark{ - name = "xeno_spawn"; - pixel_x = -1 - }, -/turf/open/floor/plating, -/area/maintenance/disposal) -"aPh" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/disposal) -"aPi" = ( -/obj/machinery/power/apc{ - dir = 4; - name = "Disposal APC"; - pixel_x = 24; - pixel_y = 0 - }, -/obj/structure/cable{ - icon_state = "0-2"; - pixel_y = 1; - d2 = 2 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plating, -/area/maintenance/disposal) -"aPj" = ( -/obj/machinery/door/airlock/glass{ - name = "Emergency Shuttle Infirmary" - }, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/escape) -"aPk" = ( -/obj/machinery/status_display{ - dir = 4; - layer = 4; - pixel_x = -32; - pixel_y = 0 - }, -/obj/machinery/camera{ - c_tag = "Departure Lounge"; - dir = 4 - }, -/turf/open/floor/plasteel, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"aPl" = ( -/obj/effect/landmark/event_spawn, -/obj/item/device/radio/beacon, -/turf/open/floor/plasteel, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"aPm" = ( -/obj/machinery/holopad, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"aPn" = ( -/obj/structure/table, -/obj/item/weapon/storage/box/matches{ - pixel_x = -3; - pixel_y = 8 - }, -/turf/open/floor/plasteel, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"aPo" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aPp" = ( -/obj/structure/sink{ - pixel_y = 28 - }, -/obj/machinery/firealarm{ - dir = 8; - pixel_x = -28 - }, -/turf/open/floor/plasteel/hydrofloor, -/area/hydroponics) -"aPq" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/hydrofloor, -/area/hydroponics) -"aPr" = ( -/obj/structure/closet/secure_closet/hydroponics, -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/plasteel/hydrofloor, -/area/hydroponics) -"aPs" = ( -/obj/structure/closet/secure_closet/hydroponics, -/turf/open/floor/plasteel/hydrofloor, -/area/hydroponics) -"aPt" = ( -/obj/machinery/airalarm{ - pixel_y = 24 - }, -/obj/machinery/camera{ - c_tag = "Hydroponics Storage" - }, -/obj/machinery/plantgenes, -/turf/open/floor/plasteel/hydrofloor, -/area/hydroponics) -"aPu" = ( -/obj/machinery/chem_master/condimaster, -/turf/open/floor/plasteel/hydrofloor, -/area/hydroponics) -"aPv" = ( -/obj/structure/table, -/obj/item/weapon/book/manual/hydroponics_pod_people, -/obj/item/weapon/paper/hydroponics, -/obj/item/weapon/reagent_containers/dropper, -/obj/item/weapon/reagent_containers/glass/bottle/mutagen, -/obj/item/weapon/reagent_containers/dropper, -/turf/open/floor/plasteel/hydrofloor, -/area/hydroponics) -"aPw" = ( -/obj/machinery/door/airlock/maintenance{ - name = "Kitchen Maintenance"; - req_access_txt = "28" - }, -/obj/structure/disposalpipe/segment, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0; - tag = "" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/crew_quarters/kitchen) -"aPx" = ( -/obj/machinery/chem_master/condimaster{ - name = "CondiMaster Neo"; - pixel_x = -4 - }, -/turf/open/floor/plasteel/showroomfloor, -/area/crew_quarters/kitchen) -"aPy" = ( -/obj/machinery/gibber, -/turf/open/floor/plasteel/showroomfloor, -/area/crew_quarters/kitchen) -"aPz" = ( -/turf/open/floor/plasteel/showroomfloor, -/area/crew_quarters/kitchen) -"aPA" = ( -/obj/machinery/navbeacon{ - codes_txt = "delivery;dir=8"; - freq = 1400; - location = "Kitchen" - }, -/obj/machinery/door/window/southleft{ - base_state = "left"; - dir = 8; - icon_state = "left"; - name = "Kitchen Delivery"; - req_access_txt = "28" - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/crew_quarters/kitchen) -"aPB" = ( -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/maintenance/fsmaint2) -"aPC" = ( -/obj/item/device/assembly/mousetrap, -/turf/open/floor/wood{ - icon_state = "wood-broken6" - }, -/area/crew_quarters/bar) -"aPD" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - on = 1 - }, -/turf/open/floor/wood, -/area/crew_quarters/bar) -"aPE" = ( -/turf/open/floor/wood, -/area/crew_quarters/bar) -"aPF" = ( -/obj/effect/landmark{ - name = "xeno_spawn"; - pixel_x = -1 - }, -/obj/item/weapon/storage/box/beanbag, -/turf/open/floor/wood, -/area/crew_quarters/bar) -"aPG" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 5 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aPH" = ( -/obj/item/weapon/weldingtool, -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aPI" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aPJ" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 10 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aPK" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 6 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aPL" = ( -/obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/quartermaster/office) -"aPM" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/quartermaster/office) -"aPN" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/quartermaster/office) -"aPO" = ( -/obj/machinery/light{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/firealarm{ - dir = 1; - pixel_y = 29 - }, -/turf/open/floor/plasteel/brown/corner{ - dir = 4 - }, -/area/quartermaster/office) -"aPP" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/open/floor/plasteel/brown/corner{ - dir = 4 - }, -/area/quartermaster/office) -"aPQ" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/brown/corner{ - dir = 4 - }, -/area/quartermaster/office) -"aPR" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/quartermaster/office) -"aPS" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 1; - initialize_directions = 11 - }, -/turf/open/floor/plasteel, -/area/quartermaster/office) -"aPT" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/quartermaster/office) -"aPU" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/quartermaster/office) -"aPV" = ( -/obj/machinery/light{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/requests_console{ - department = "Cargo Bay"; - departmentType = 2; - pixel_x = 0; - pixel_y = 32 - }, -/turf/open/floor/plasteel, -/area/quartermaster/storage) -"aPW" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 1; - initialize_directions = 11 - }, -/turf/open/floor/plasteel, -/area/quartermaster/storage) -"aPX" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 9 - }, -/turf/open/floor/plasteel, -/area/quartermaster/storage) -"aPY" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/quartermaster/storage) -"aPZ" = ( -/turf/open/floor/plasteel, -/area/quartermaster/storage) -"aQa" = ( -/obj/machinery/light{ - dir = 1 - }, -/obj/machinery/conveyor{ - dir = 8; - id = "QMLoad" - }, -/obj/machinery/airalarm{ - pixel_y = 22 - }, -/turf/open/floor/plating, -/area/quartermaster/storage) -"aQb" = ( -/obj/machinery/conveyor{ - dir = 8; - id = "QMLoad" - }, -/obj/machinery/status_display{ - density = 0; - layer = 4; - pixel_x = 0; - pixel_y = 30; - supply_display = 1 - }, -/turf/open/floor/plating, -/area/quartermaster/storage) -"aQc" = ( -/obj/machinery/conveyor{ - dir = 8; - id = "QMLoad" - }, -/obj/structure/sign/poster{ - pixel_x = 0; - pixel_y = 32 - }, -/turf/open/floor/plating, -/area/quartermaster/storage) -"aQd" = ( -/obj/machinery/conveyor{ - dir = 8; - id = "QMLoad" - }, -/turf/open/floor/plating, -/area/quartermaster/storage) -"aQe" = ( -/obj/machinery/door/poddoor{ - id = "QMLoaddoor"; - name = "supply dock loading door" - }, -/obj/machinery/conveyor{ - dir = 8; - id = "QMLoad" - }, -/turf/open/floor/plating, -/area/quartermaster/storage) -"aQf" = ( -/obj/structure/plasticflaps, -/obj/machinery/conveyor{ - dir = 8; - id = "QMLoad" - }, -/turf/open/floor/plating, -/area/quartermaster/storage) -"aQg" = ( -/obj/machinery/door/poddoor{ - id = "QMLoaddoor"; - name = "supply dock loading door" - }, -/obj/machinery/conveyor{ - dir = 8; - id = "QMLoad" - }, -/turf/open/floor/plating, -/area/shuttle/supply) -"aQh" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"aQi" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/structure/cable{ - icon_state = "1-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"aQj" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"aQk" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/structure/disposalpipe/junction{ - dir = 2; - icon_state = "pipe-y" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 6 - }, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"aQl" = ( -/obj/machinery/door/airlock/maintenance{ - name = "Disposal Access"; - req_access_txt = "12" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/disposal) -"aQm" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/disposal) -"aQn" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 9 - }, -/turf/open/floor/plating, -/area/maintenance/disposal) -"aQo" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/turf/open/floor/plating, -/area/maintenance/disposal) -"aQp" = ( -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/machinery/power/solar{ - id = "portsolar"; - name = "Port Solar Array" - }, -/turf/open/floor/plasteel/airless/solarpanel, -/area/solar/starboard{ - name = "Starboard Solar Array" - }) -"aQq" = ( -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/machinery/power/solar{ - id = "starboardsolar"; - name = "Starboard Solar Array" - }, -/turf/open/floor/plasteel/airless/solarpanel, -/area/solar/starboard{ - name = "Starboard Solar Array" - }) -"aQr" = ( -/obj/machinery/sleeper{ - dir = 4; - icon_state = "sleeper-open" - }, -/turf/open/floor/mineral/titanium, -/area/shuttle/escape) -"aQs" = ( -/obj/machinery/vending/medical, -/turf/open/floor/mineral/titanium, -/area/shuttle/escape) -"aQt" = ( -/obj/machinery/door/airlock/titanium{ - name = "Emergency Shuttle Airlock" - }, -/obj/docking_port/stationary{ - dheight = 0; - dir = 8; - dwidth = 4; - height = 15; - id = "emergency_home"; - name = "PubbyStation emergency evac bay"; - width = 20 - }, -/obj/docking_port/mobile/emergency{ - dheight = 0; - dir = 8; - dwidth = 4; - height = 15; - name = "Pubby emergency shuttle"; - port_angle = 90; - width = 18 - }, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/escape) -"aQu" = ( -/obj/machinery/light, -/turf/open/floor/plating, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"aQv" = ( -/obj/structure/chair{ - dir = 1; - name = "Command Station" - }, -/turf/open/floor/plasteel, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"aQw" = ( -/obj/machinery/camera{ - c_tag = "Central Primary Hallway Escape"; - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/firealarm{ - dir = 4; - pixel_x = 28 - }, -/turf/open/floor/plasteel/neutral/corner, -/area/hallway/primary/central) -"aQx" = ( -/turf/open/floor/plasteel/hydrofloor, -/area/hydroponics) -"aQy" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/hydrofloor, -/area/hydroponics) -"aQz" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/hydrofloor, -/area/hydroponics) -"aQA" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/plasteel/hydrofloor, -/area/hydroponics) -"aQB" = ( -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 10 - }, -/turf/open/floor/plasteel/hydrofloor, -/area/hydroponics) -"aQC" = ( -/obj/structure/table, -/obj/item/weapon/reagent_containers/spray/plantbgone{ - pixel_x = 0; - pixel_y = 3 - }, -/obj/item/weapon/reagent_containers/spray/plantbgone{ - pixel_x = 8; - pixel_y = 8 - }, -/obj/item/weapon/reagent_containers/spray/plantbgone{ - pixel_x = 13; - pixel_y = 5 - }, -/obj/item/weapon/watertank, -/turf/open/floor/plasteel/hydrofloor, -/area/hydroponics) -"aQD" = ( -/obj/structure/kitchenspike, -/obj/item/device/assembly/mousetrap, -/obj/item/trash/deadmouse, -/turf/open/floor/plasteel/showroomfloor, -/area/crew_quarters/kitchen) -"aQE" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0; - tag = "" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 5 - }, -/turf/open/floor/plasteel/showroomfloor, -/area/crew_quarters/kitchen) -"aQF" = ( -/obj/machinery/camera{ - c_tag = "Kitchen Cold Room"; - dir = 2; - network = list("SS13") - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - layer = 2.4; - on = 1 - }, -/obj/machinery/requests_console{ - department = "Kitchen"; - departmentType = 2; - pixel_x = 0; - pixel_y = 30 - }, -/turf/open/floor/plasteel/showroomfloor, -/area/crew_quarters/kitchen) -"aQG" = ( -/obj/structure/plasticflaps{ - opacity = 1 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/maintenance/fsmaint2) -"aQH" = ( -/obj/structure/reagent_dispensers/beerkeg, -/turf/open/floor/wood, -/area/crew_quarters/bar) -"aQI" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/wood, -/area/crew_quarters/bar) -"aQJ" = ( -/obj/structure/closet/gmcloset, -/obj/item/stack/sheet/metal{ - amount = 50 - }, -/obj/item/stack/sheet/glass{ - amount = 50 - }, -/obj/item/stack/cable_coil, -/obj/item/weapon/storage/box/mousetraps, -/turf/open/floor/wood{ - icon_state = "wood-broken5" - }, -/area/crew_quarters/bar) -"aQK" = ( -/turf/closed/wall, -/area/crew_quarters/theatre) -"aQL" = ( -/obj/machinery/door/airlock/maintenance{ - name = "Theatre Maintenance"; - req_access_txt = "0"; - req_one_access_txt = "12;46" - }, -/turf/open/floor/plating, -/area/crew_quarters/theatre) -"aQM" = ( -/obj/machinery/door/airlock/maintenance{ - name = "Theatre Maintenance"; - req_access_txt = "0"; - req_one_access_txt = "12;46" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/crew_quarters/theatre) -"aQN" = ( -/obj/machinery/camera{ - c_tag = "Central Primary Hallway Cargo"; - dir = 4 - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 8 - }, -/turf/open/floor/plasteel/brown/corner{ - dir = 1; - tag = "icon-browncorner (NORTH)" - }, -/area/hallway/primary/central) -"aQO" = ( -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"aQP" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"aQQ" = ( -/obj/machinery/door/firedoor, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/quartermaster/office) -"aQR" = ( -/obj/machinery/holopad, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/quartermaster/office) -"aQS" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 6 - }, -/turf/open/floor/plasteel, -/area/quartermaster/office) -"aQT" = ( -/obj/machinery/door/airlock/glass_mining{ - name = "Cargo Bay"; - req_access_txt = "0"; - req_one_access_txt = "31;48" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/quartermaster/office) -"aQU" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/quartermaster/office) -"aQV" = ( -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/quartermaster/office) -"aQW" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/open/floor/plasteel, -/area/quartermaster/office) -"aQX" = ( -/obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/quartermaster/office) -"aQY" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/quartermaster/storage) -"aQZ" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/quartermaster/storage) -"aRa" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/quartermaster/storage) -"aRb" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/open/floor/plasteel, -/area/quartermaster/storage) -"aRc" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 10 - }, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/quartermaster/storage) -"aRd" = ( -/obj/machinery/door/airlock/external{ - name = "Supply Dock Airlock"; - req_access_txt = "31" - }, -/turf/open/floor/plating, -/area/quartermaster/storage) -"aRe" = ( -/obj/machinery/light/small, -/turf/open/floor/plating, -/area/quartermaster/storage) -"aRf" = ( -/obj/machinery/door/airlock/titanium{ - name = "Supply Shuttle Airlock"; - req_access_txt = "31" - }, -/obj/docking_port/mobile/supply{ - dir = 4 - }, -/obj/docking_port/stationary{ - dir = 4; - dwidth = 5; - height = 7; - id = "supply_home"; - name = "Cargo Bay"; - width = 12 - }, -/turf/open/floor/plating, -/area/shuttle/supply) -"aRg" = ( -/obj/structure/rack, -/obj/effect/spawner/lootdrop/maintenance, -/obj/item/weapon/storage/toolbox/mechanical, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"aRh" = ( -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"aRi" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"aRj" = ( -/obj/structure/table, -/obj/item/weapon/storage/firstaid/fire, -/obj/item/weapon/storage/firstaid/regular{ - pixel_x = 2; - pixel_y = 3 - }, -/obj/item/weapon/crowbar, -/obj/structure/sign/nosmoking_2{ - pixel_x = 32 - }, -/turf/open/floor/mineral/titanium, -/area/shuttle/escape) -"aRk" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - external_pressure_bound = 101.325; - on = 1; - pressure_checks = 1 - }, -/turf/open/floor/plasteel, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"aRl" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 4; - initialize_directions = 11 - }, -/turf/open/floor/plasteel, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"aRm" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/turf/open/floor/plasteel, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"aRn" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/floor/plasteel, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"aRo" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass{ - name = "Departure Lounge" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/floor/plasteel, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"aRp" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 8; - initialize_directions = 11 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"aRq" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"aRr" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner, -/area/hallway/primary/central) -"aRs" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/door/airlock/maintenance{ - req_access_txt = "12" - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aRt" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/light/small, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aRu" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aRv" = ( -/obj/structure/plasticflaps{ - opacity = 1 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/hydroponics) -"aRw" = ( -/obj/machinery/door/window/eastright{ - name = "Hydroponics Delivery"; - req_access_txt = "35" - }, -/obj/machinery/navbeacon{ - codes_txt = "delivery;dir=4"; - dir = 1; - freq = 1400; - location = "Hydroponics" - }, -/turf/open/floor/plasteel/delivery, -/area/hydroponics) -"aRx" = ( -/obj/structure/closet/crate/hydroponics, -/obj/item/weapon/shovel/spade, -/obj/item/weapon/wrench, -/obj/item/weapon/reagent_containers/glass/bucket, -/obj/item/weapon/reagent_containers/glass/bucket, -/obj/item/weapon/wirecutters, -/turf/open/floor/plasteel/hydrofloor, -/area/hydroponics) -"aRy" = ( -/obj/structure/closet/wardrobe/botanist, -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/turf/open/floor/plasteel/hydrofloor, -/area/hydroponics) -"aRz" = ( -/obj/machinery/power/apc{ - name = "Hydroponics APC"; - pixel_y = -24 - }, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/turf/open/floor/plasteel/hydrofloor, -/area/hydroponics) -"aRA" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/hydrofloor, -/area/hydroponics) -"aRB" = ( -/obj/machinery/light/small, -/turf/open/floor/plasteel/hydrofloor, -/area/hydroponics) -"aRC" = ( -/obj/structure/table, -/obj/machinery/reagentgrinder, -/turf/open/floor/plasteel/hydrofloor, -/area/hydroponics) -"aRD" = ( -/obj/machinery/icecream_vat, -/turf/open/floor/plasteel/showroomfloor, -/area/crew_quarters/kitchen) -"aRE" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/showroomfloor, -/area/crew_quarters/kitchen) -"aRF" = ( -/mob/living/simple_animal/hostile/retaliate/goat{ - name = "Pete" - }, -/turf/open/floor/plasteel/showroomfloor, -/area/crew_quarters/kitchen) -"aRG" = ( -/obj/machinery/holopad, -/turf/open/floor/plasteel/showroomfloor, -/area/crew_quarters/kitchen) -"aRH" = ( -/obj/machinery/light{ - dir = 4 - }, -/obj/machinery/airalarm{ - dir = 8; - pixel_x = 23; - pixel_y = 0 - }, -/turf/open/floor/plasteel/showroomfloor, -/area/crew_quarters/kitchen) -"aRI" = ( -/obj/machinery/door/window/southleft{ - base_state = "left"; - dir = 2; - icon_state = "left"; - name = "Bar Delivery"; - req_access_txt = "25" - }, -/obj/machinery/navbeacon{ - codes_txt = "delivery;dir=2"; - freq = 1400; - location = "Bar" - }, -/turf/open/floor/plasteel/delivery, -/area/crew_quarters/bar) -"aRJ" = ( -/obj/machinery/door/airlock{ - name = "Bar Storage"; - req_access_txt = "25" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/black, -/area/crew_quarters/bar) -"aRK" = ( -/obj/machinery/disposal/bin, -/obj/structure/disposalpipe/trunk, -/turf/open/floor/plasteel/black, -/area/crew_quarters/bar) -"aRL" = ( -/obj/structure/sign/poster{ - pixel_x = -32 - }, -/turf/open/floor/wood, -/area/crew_quarters/theatre) -"aRM" = ( -/turf/open/floor/carpet{ - icon_state = "carpetsymbol" - }, -/area/crew_quarters/theatre) -"aRN" = ( -/obj/structure/sign/poster{ - pixel_y = 32 - }, -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-04"; - layer = 4.1 - }, -/turf/open/floor/carpet{ - icon_state = "carpetsymbol" - }, -/area/crew_quarters/theatre) -"aRO" = ( -/obj/machinery/camera{ - c_tag = "Theatre Stage"; - dir = 2 - }, -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/carpet{ - icon_state = "carpetsymbol" - }, -/area/crew_quarters/theatre) -"aRP" = ( -/obj/structure/sign/poster{ - pixel_x = 32 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/wood, -/area/crew_quarters/theatre) -"aRQ" = ( -/obj/structure/table/wood, -/obj/item/weapon/lipstick/random{ - pixel_x = 2; - pixel_y = 2 - }, -/obj/item/clothing/gloves/color/rainbow/clown, -/obj/machinery/airalarm{ - pixel_y = 22 - }, -/obj/item/weapon/book/random, -/obj/item/weapon/lipstick/random, -/turf/open/floor/plasteel/black, -/area/crew_quarters/theatre) -"aRR" = ( -/obj/structure/dresser, -/obj/machinery/light{ - dir = 1 - }, -/obj/structure/sign/poster{ - pixel_y = 32 - }, -/turf/open/floor/plasteel/black, -/area/crew_quarters/theatre) -"aRS" = ( -/obj/machinery/vending/autodrobe, -/obj/machinery/computer/security/telescreen/entertainment{ - pixel_y = 32 - }, -/turf/open/floor/plasteel/black, -/area/crew_quarters/theatre) -"aRT" = ( -/obj/machinery/door/airlock/maintenance{ - name = "Theatre Maintenance"; - req_access_txt = "46" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/crew_quarters/theatre) -"aRU" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 8 - }, -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/turf/open/floor/plasteel/brown/corner{ - dir = 1; - tag = "icon-browncorner (NORTH)" - }, -/area/hallway/primary/central) -"aRV" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/quartermaster/office) -"aRW" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/quartermaster/office) -"aRX" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 9; - pixel_y = 0 - }, -/turf/open/floor/plasteel/loadingarea{ - dir = 8 - }, -/area/quartermaster/office) -"aRY" = ( -/obj/structure/plasticflaps{ - opacity = 1 - }, -/obj/machinery/conveyor{ - dir = 4; - id = "cargodeliver" - }, -/turf/open/floor/plasteel/delivery{ - name = "floor" - }, -/area/quartermaster/office) -"aRZ" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/brown{ - dir = 8 - }, -/area/quartermaster/office) -"aSa" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/turf/open/floor/plasteel, -/area/quartermaster/office) -"aSb" = ( -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/obj/structure/extinguisher_cabinet{ - pixel_x = 27; - pixel_y = 0 - }, -/obj/machinery/conveyor_switch{ - id = "cargodeliver" - }, -/turf/open/floor/plasteel/brown{ - dir = 4 - }, -/area/quartermaster/office) -"aSc" = ( -/obj/machinery/navbeacon{ - codes_txt = "delivery;dir=4"; - freq = 1400; - location = "QM #1" - }, -/mob/living/simple_animal/bot/mulebot{ - beacon_freq = 1400; - home_destination = "QM #1"; - suffix = "#1" - }, -/turf/open/floor/plasteel/bot, -/area/quartermaster/storage) -"aSd" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/quartermaster/storage) -"aSe" = ( -/obj/effect/landmark/start{ - name = "Cargo Technician" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/bot, -/area/quartermaster/storage) -"aSf" = ( -/turf/open/floor/plasteel/bot, -/area/quartermaster/storage) -"aSg" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/turf/open/floor/plasteel, -/area/quartermaster/storage) -"aSh" = ( -/obj/machinery/conveyor_switch/oneway{ - convdir = -1; - id = "QMLoad" - }, -/obj/machinery/button/door{ - id = "QMLoaddoor2"; - layer = 4; - name = "Loading Doors"; - pixel_x = 24; - pixel_y = -8 - }, -/obj/machinery/button/door{ - dir = 2; - id = "QMLoaddoor"; - layer = 4; - name = "Loading Doors"; - pixel_x = 24; - pixel_y = 8 - }, -/obj/machinery/camera{ - c_tag = "Cargo Supply Dock"; - dir = 8 - }, -/turf/open/floor/plasteel, -/area/quartermaster/storage) -"aSi" = ( -/obj/machinery/button/door{ - id = "QMLoaddoor2"; - layer = 4; - name = "Loading Doors"; - pixel_x = -24; - pixel_y = -8 - }, -/obj/machinery/button/door{ - dir = 2; - id = "QMLoaddoor"; - layer = 4; - name = "Loading Doors"; - pixel_x = -24; - pixel_y = 8 - }, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/supply) -"aSj" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/light/small{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"aSk" = ( -/obj/structure/easel, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"aSl" = ( -/obj/structure/closet/l3closet/scientist, -/obj/item/weapon/book/manual/wiki/chemistry, -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"aSm" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/button/massdriver{ - id = "chapelgun"; - pixel_x = 28; - pixel_y = 0 - }, -/turf/open/floor/plasteel/black, -/area/chapel/main{ - name = "Monastery" - }) -"aSn" = ( -/obj/structure/window/reinforced{ - dir = 1 - }, -/obj/structure/shuttle/engine/heater, -/turf/open/floor/plating/airless, -/area/shuttle/escape) -"aSo" = ( -/obj/structure/table, -/obj/item/weapon/defibrillator/loaded, -/turf/open/floor/mineral/titanium, -/area/shuttle/escape) -"aSp" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 5 - }, -/turf/open/floor/plasteel, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"aSq" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"aSr" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass{ - name = "Departure Lounge" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"aSs" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 9 - }, -/turf/closed/wall, -/area/chapel/main{ - name = "Monastery" - }) -"aSt" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 4; - initialize_directions = 11 - }, -/obj/structure/sign/directions/evac{ - dir = 1; - icon_state = "direction_evac"; - pixel_x = 32; - pixel_y = 0; - tag = "icon-direction_evac (NORTH)" - }, -/turf/open/floor/plasteel/neutral/corner, -/area/hallway/primary/central) -"aSu" = ( -/turf/closed/wall, -/area/janitor) -"aSv" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall, -/area/janitor) -"aSw" = ( -/obj/machinery/door/window/eastright{ - dir = 2; - name = "Janitor Delivery"; - req_access_txt = "26" - }, -/obj/machinery/navbeacon{ - codes_txt = "delivery;dir=1"; - dir = 1; - freq = 1400; - location = "Janitor" - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/janitor) -"aSx" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass{ - name = "Hydroponics"; - req_access_txt = "35" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/hydroponics) -"aSy" = ( -/obj/structure/closet/chefcloset, -/obj/item/weapon/wrench, -/obj/item/weapon/crowbar, -/obj/item/stack/packageWrap, -/obj/item/weapon/hand_labeler, -/turf/open/floor/plasteel/showroomfloor, -/area/crew_quarters/kitchen) -"aSz" = ( -/obj/machinery/power/apc{ - dir = 2; - name = "Kitchen APC"; - pixel_y = -24 - }, -/obj/structure/cable, -/turf/open/floor/plasteel/showroomfloor, -/area/crew_quarters/kitchen) -"aSA" = ( -/turf/open/floor/plasteel/showroomfloor, -/area/crew_quarters/kitchen{ - name = "Kitchen Coldroom" - }) -"aSB" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 6 - }, -/turf/open/floor/plasteel/showroomfloor, -/area/crew_quarters/kitchen) -"aSC" = ( -/obj/structure/closet/secure_closet/freezer/kitchen, -/obj/item/weapon/reagent_containers/food/snacks/grown/potato, -/obj/item/weapon/reagent_containers/food/snacks/grown/potato, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/showroomfloor, -/area/crew_quarters/kitchen) -"aSD" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/crew_quarters/kitchen) -"aSE" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/crew_quarters/bar) -"aSF" = ( -/obj/machinery/light/small{ - dir = 1 - }, -/obj/structure/sign/securearea{ - desc = "Under the painting a plaque reads: 'While the meat grinder may not have spared you, fear not. Not one part of you has gone to waste... You were delicious.'"; - icon_state = "monkey_painting"; - name = "Mr. Deempisi portrait"; - pixel_x = 0; - pixel_y = 28 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/crew_quarters/bar) -"aSG" = ( -/obj/structure/sink/kitchen{ - pixel_y = 28 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/crew_quarters/bar) -"aSH" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/open/floor/plasteel/black, -/area/crew_quarters/bar) -"aSI" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/requests_console{ - department = "Bar"; - departmentType = 2; - pixel_x = 0; - pixel_y = 30 - }, -/obj/machinery/camera{ - c_tag = "Bar Access"; - dir = 2; - network = list("SS13") - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/crew_quarters/bar) -"aSJ" = ( -/obj/machinery/light/small{ - dir = 1 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/item/device/radio/intercom{ - dir = 0; - name = "Station Intercom (General)"; - pixel_x = 0; - pixel_y = 26 - }, -/turf/open/floor/plasteel/black, -/area/crew_quarters/bar) -"aSK" = ( -/obj/machinery/power/apc{ - dir = 4; - name = "Bar APC"; - pixel_x = 27 - }, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 10 - }, -/turf/open/floor/plasteel/black, -/area/crew_quarters/bar) -"aSL" = ( -/obj/structure/piano{ - tag = "icon-piano"; - icon_state = "piano" - }, -/turf/open/floor/wood, -/area/crew_quarters/theatre) -"aSM" = ( -/obj/structure/chair/wood/normal{ - icon_state = "wooden_chair"; - dir = 8 - }, -/turf/open/floor/carpet{ - icon_state = "carpetsymbol" - }, -/area/crew_quarters/theatre) -"aSN" = ( -/obj/structure/chair/wood/normal, -/mob/living/carbon/monkey/punpun, -/turf/open/floor/carpet{ - icon_state = "carpetsymbol" - }, -/area/crew_quarters/theatre) -"aSO" = ( -/obj/structure/table/wood, -/obj/item/device/instrument/violin, -/turf/open/floor/carpet{ - icon_state = "carpetsymbol" - }, -/area/crew_quarters/theatre) -"aSP" = ( -/obj/structure/table/wood, -/obj/item/device/instrument/guitar, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/wood, -/area/crew_quarters/theatre) -"aSQ" = ( -/obj/machinery/power/apc{ - dir = 8; - name = "Theatre APC"; - pixel_x = -25 - }, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/turf/open/floor/plasteel/redblue, -/area/crew_quarters/theatre) -"aSR" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/effect/landmark/start{ - name = "Mime" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 6 - }, -/turf/open/floor/plasteel/redblue, -/area/crew_quarters/theatre) -"aSS" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/redblue, -/area/crew_quarters/theatre) -"aST" = ( -/obj/machinery/light/small{ - dir = 1 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/item/device/radio/intercom{ - dir = 0; - name = "Station Intercom (General)"; - pixel_x = 0; - pixel_y = 26 - }, -/turf/open/floor/plasteel/redblue, -/area/crew_quarters/theatre) -"aSU" = ( -/obj/structure/cable{ - icon_state = "1-8" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 9; - pixel_y = 0 - }, -/obj/machinery/light_switch{ - pixel_x = 24; - pixel_y = 24 - }, -/obj/structure/mirror{ - pixel_x = 28; - pixel_y = -2 - }, -/turf/open/floor/plasteel/redblue, -/area/crew_quarters/theatre) -"aSV" = ( -/obj/machinery/computer/cargo/request, -/turf/open/floor/plasteel/brown/corner, -/area/quartermaster/office) -"aSW" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/brown/corner, -/area/quartermaster/office) -"aSX" = ( -/turf/open/floor/plasteel/brown/corner, -/area/quartermaster/office) -"aSY" = ( -/obj/machinery/door/firedoor, -/obj/machinery/mineral/ore_redemption{ - input_dir = 4; - output_dir = 8 - }, -/turf/open/floor/plasteel/black, -/area/quartermaster/office) -"aSZ" = ( -/obj/machinery/status_display{ - dir = 8; - layer = 4; - pixel_x = 32; - pixel_y = 0; - supply_display = 1 - }, -/turf/open/floor/plasteel/brown{ - dir = 4 - }, -/area/quartermaster/office) -"aTa" = ( -/obj/machinery/navbeacon{ - codes_txt = "delivery;dir=4"; - freq = 1400; - location = "QM #2" - }, -/obj/machinery/camera{ - c_tag = "Cargo Bay"; - dir = 4 - }, -/turf/open/floor/plasteel/bot, -/area/quartermaster/storage) -"aTb" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/bot, -/area/quartermaster/storage) -"aTc" = ( -/obj/structure/closet/crate{ - icon_state = "crateopen"; - opened = 1 - }, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 2; - name = "2maintenance loot spawner" - }, -/turf/open/floor/plasteel/bot, -/area/quartermaster/storage) -"aTd" = ( -/turf/open/floor/plasteel/warning, -/area/quartermaster/storage) -"aTe" = ( -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/plating, -/area/quartermaster/storage) -"aTf" = ( -/obj/machinery/door/airlock/titanium{ - name = "Supply Shuttle Airlock"; - req_access_txt = "31" - }, -/turf/open/floor/plating, -/area/shuttle/supply) -"aTg" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible, -/obj/machinery/portable_atmospherics/canister/oxygen, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"aTh" = ( -/obj/machinery/portable_atmospherics/canister/air, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"aTi" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4"; - tag = "" - }, -/turf/closed/wall, -/area/maintenance/port{ - name = "Monastery Maintenance" - }) -"aTj" = ( -/obj/structure/shuttle/engine/propulsion, -/turf/open/floor/plating/airless, -/area/shuttle/escape) -"aTk" = ( -/obj/structure/table, -/obj/item/toy/cards/deck, -/turf/open/floor/plasteel/escape{ - dir = 10 - }, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"aTl" = ( -/obj/structure/chair{ - dir = 1 - }, -/obj/machinery/airalarm{ - dir = 1; - pixel_y = -22 - }, -/turf/open/floor/plasteel/escape, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"aTm" = ( -/obj/structure/chair{ - dir = 1 - }, -/turf/open/floor/plasteel/escape, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"aTn" = ( -/obj/structure/chair{ - dir = 1 - }, -/obj/machinery/light, -/turf/open/floor/plasteel/escape, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"aTo" = ( -/turf/open/floor/plasteel/escape, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"aTp" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-14"; - layer = 4.1 - }, -/obj/structure/extinguisher_cabinet{ - pixel_x = 27; - pixel_y = 0 - }, -/turf/open/floor/plasteel/escape{ - dir = 6 - }, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"aTq" = ( -/obj/machinery/washing_machine, -/obj/structure/sign/securearea{ - desc = "Under the painting a plaque reads: 'While the meat grinder may not have spared you, fear not. Not one part of you has gone to waste... You were delicious.'"; - icon_state = "monkey_painting"; - name = "Mr. Deempisi portrait"; - pixel_x = 0; - pixel_y = 28 - }, -/turf/open/floor/plasteel/black, -/area/janitor) -"aTr" = ( -/obj/machinery/camera{ - c_tag = "Custodial Quarters" - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/obj/machinery/light/small{ - dir = 1 - }, -/obj/item/device/radio/intercom{ - dir = 0; - name = "Station Intercom (General)"; - pixel_x = 0; - pixel_y = 26 - }, -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/plasteel/black, -/area/janitor) -"aTs" = ( -/obj/structure/bed, -/obj/item/weapon/bedsheet, -/obj/effect/landmark/start{ - name = "Janitor" - }, -/turf/open/floor/plasteel/black, -/area/janitor) -"aTt" = ( -/obj/machinery/hydroponics/constructable, -/turf/open/floor/plasteel/green/side{ - dir = 9 - }, -/area/hydroponics) -"aTu" = ( -/obj/machinery/hydroponics/constructable, -/turf/open/floor/plasteel/green/corner{ - dir = 4 - }, -/area/hydroponics) -"aTv" = ( -/obj/machinery/hydroponics/constructable, -/turf/open/floor/plasteel/green/side{ - dir = 1 - }, -/area/hydroponics) -"aTw" = ( -/obj/structure/sink{ - pixel_y = 28 - }, -/turf/open/floor/plasteel, -/area/hydroponics) -"aTx" = ( -/obj/structure/disposalpipe/sortjunction{ - dir = 2; - icon_state = "pipe-j2s"; - sortType = 21 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/hydroponics) -"aTy" = ( -/obj/machinery/disposal/bin, -/obj/structure/disposalpipe/trunk{ - dir = 8 - }, -/obj/machinery/light_switch{ - pixel_x = -4; - pixel_y = 30 - }, -/turf/open/floor/plasteel/green/corner{ - dir = 4 - }, -/area/hydroponics) -"aTz" = ( -/obj/structure/closet/secure_closet/freezer/meat, -/turf/open/floor/plasteel/showroomfloor, -/area/crew_quarters/kitchen) -"aTA" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/showroomfloor, -/area/crew_quarters/kitchen) -"aTB" = ( -/obj/structure/closet/secure_closet/freezer/fridge, -/turf/open/floor/plasteel/showroomfloor, -/area/crew_quarters/kitchen) -"aTC" = ( -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/black, -/area/crew_quarters/bar) -"aTD" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/plasteel/black, -/area/crew_quarters/bar) -"aTE" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/crew_quarters/bar) -"aTF" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 10 - }, -/obj/structure/disposalpipe/sortjunction{ - dir = 4; - icon_state = "pipe-j1s"; - sortType = 19 - }, -/turf/open/floor/plasteel/black, -/area/crew_quarters/bar) -"aTG" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/crew_quarters/bar) -"aTH" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/obj/structure/disposalpipe/junction{ - icon_state = "pipe-j2"; - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/crew_quarters/bar) -"aTI" = ( -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/crew_quarters/bar) -"aTJ" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/obj/structure/sign/poster{ - pixel_x = -32 - }, -/obj/machinery/light/small{ - brightness = 3; - dir = 8 - }, -/turf/open/floor/wood, -/area/crew_quarters/theatre) -"aTK" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/carpet{ - icon_state = "carpetsymbol" - }, -/area/crew_quarters/theatre) -"aTL" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 10 - }, -/obj/effect/landmark/event_spawn, -/turf/open/floor/carpet{ - icon_state = "carpetsymbol" - }, -/area/crew_quarters/theatre) -"aTM" = ( -/obj/structure/sign/poster{ - pixel_x = 32 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/obj/machinery/light/small{ - dir = 4 - }, -/turf/open/floor/wood, -/area/crew_quarters/theatre) -"aTN" = ( -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/redblue, -/area/crew_quarters/theatre) -"aTO" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/camera{ - c_tag = "Theatre Storage"; - dir = 1 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/turf/open/floor/plasteel/redblue, -/area/crew_quarters/theatre) -"aTP" = ( -/obj/structure/disposalpipe/sortjunction{ - dir = 4; - icon_state = "pipe-j1s"; - sortType = 18 - }, -/obj/machinery/requests_console{ - department = "Theatre"; - departmentType = 0; - name = "theatre RC"; - pixel_x = -32; - pixel_y = -32 - }, -/turf/open/floor/plasteel/redblue, -/area/crew_quarters/theatre) -"aTQ" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/effect/landmark/start{ - name = "Clown" - }, -/turf/open/floor/plasteel/redblue, -/area/crew_quarters/theatre) -"aTR" = ( -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/obj/item/cardboard_cutout, -/obj/structure/mirror{ - pixel_x = 28; - pixel_y = -2 - }, -/turf/open/floor/plasteel/redblue, -/area/crew_quarters/theatre) -"aTS" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/crew_quarters/theatre) -"aTT" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/brown/corner{ - dir = 1; - tag = "icon-browncorner (NORTH)" - }, -/area/hallway/primary/central) -"aTU" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/brown/corner{ - dir = 4 - }, -/area/hallway/primary/central) -"aTV" = ( -/obj/structure/table/reinforced, -/obj/machinery/door/firedoor, -/obj/machinery/door/window/westleft{ - dir = 2; - name = "Cargo Desk"; - req_access_txt = "50" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/quartermaster/office) -"aTW" = ( -/obj/structure/table/reinforced, -/obj/machinery/door/firedoor, -/obj/machinery/door/window/westleft{ - dir = 2; - name = "Cargo Desk"; - req_access_txt = "50" - }, -/turf/open/floor/plasteel, -/area/quartermaster/office) -"aTX" = ( -/obj/machinery/door/firedoor, -/obj/machinery/autolathe, -/turf/open/floor/plasteel/black, -/area/quartermaster/office) -"aTY" = ( -/obj/machinery/newscaster{ - pixel_x = 32 - }, -/obj/machinery/camera{ - c_tag = "Cargo Foyer"; - dir = 8 - }, -/turf/open/floor/plasteel/brown{ - dir = 4 - }, -/area/quartermaster/office) -"aTZ" = ( -/obj/machinery/navbeacon{ - codes_txt = "delivery;dir=4"; - freq = 1400; - location = "QM #3" - }, -/mob/living/simple_animal/bot/mulebot{ - home_destination = "QM #2"; - suffix = "#2" - }, -/turf/open/floor/plasteel/bot, -/area/quartermaster/storage) -"aUa" = ( -/obj/effect/spawner/lootdrop/maintenance, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/bot, -/area/quartermaster/storage) -"aUb" = ( -/obj/machinery/conveyor{ - dir = 8; - id = "QMLoad2" - }, -/turf/open/floor/plating, -/area/quartermaster/storage) -"aUc" = ( -/obj/machinery/door/poddoor{ - id = "QMLoaddoor2"; - name = "supply dock loading door" - }, -/obj/machinery/conveyor{ - dir = 8; - id = "QMLoad2" - }, -/turf/open/floor/plating, -/area/quartermaster/storage) -"aUd" = ( -/obj/structure/plasticflaps, -/obj/machinery/conveyor{ - dir = 8; - id = "QMLoad2" - }, -/turf/open/floor/plating, -/area/quartermaster/storage) -"aUe" = ( -/obj/machinery/door/poddoor{ - id = "QMLoaddoor2"; - name = "supply dock loading door" - }, -/obj/machinery/conveyor{ - dir = 8; - id = "QMLoad2" - }, -/turf/open/floor/plating, -/area/shuttle/supply) -"aUf" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible{ - dir = 1 - }, -/obj/item/device/assembly/timer{ - pixel_x = 0; - pixel_y = 0 - }, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"aUg" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/portable_atmospherics/canister/oxygen, -/turf/open/floor/plating, -/area/maintenance/port{ - name = "Monastery Maintenance" - }) -"aUh" = ( -/obj/structure/grille/broken, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"aUi" = ( -/obj/structure/chair/stool, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"aUj" = ( -/turf/closed/wall, -/area/security/checkpoint2{ - name = "Customs" - }) -"aUk" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "papersplease"; - name = "security shutters" - }, -/turf/open/floor/plating, -/area/security/checkpoint2{ - name = "Customs" - }) -"aUl" = ( -/obj/machinery/door/firedoor, -/obj/structure/table/reinforced, -/obj/machinery/door/window/westright{ - dir = 2; - name = "Security Checkpoint"; - req_access_txt = "1" - }, -/obj/machinery/door/window/northleft{ - dir = 1; - icon_state = "left"; - name = "Reception Window"; - req_access_txt = "0" - }, -/obj/machinery/door/poddoor{ - density = 0; - icon_state = "open"; - id = "papersplease"; - layer = 3.1; - name = "privacy shutters"; - opacity = 0 - }, -/obj/item/weapon/folder/red, -/obj/item/weapon/pen, -/turf/open/floor/plasteel/delivery, -/area/security/checkpoint2{ - name = "Customs" - }) -"aUm" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/item/weapon/storage/toolbox/mechanical, -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/plating, -/area/maintenance/port{ - name = "Monastery Maintenance" - }) -"aUn" = ( -/obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 8 - }, -/obj/structure/sign/poster{ - pixel_x = 32 - }, -/turf/open/floor/plasteel/neutral/corner, -/area/hallway/primary/central) -"aUo" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/janitor) -"aUp" = ( -/obj/structure/bedsheetbin, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/vault, -/area/janitor) -"aUq" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/obj/effect/landmark/event_spawn, -/turf/open/floor/plasteel/vault, -/area/janitor) -"aUr" = ( -/obj/structure/table, -/obj/item/clothing/under/maid, -/obj/item/key/janitor, -/obj/item/weapon/grenade/clusterbuster/cleaner, -/obj/item/weapon/grenade/chem_grenade/cleaner, -/obj/item/weapon/grenade/chem_grenade/cleaner, -/turf/open/floor/plasteel/vault, -/area/janitor) -"aUs" = ( -/obj/machinery/hydroponics/constructable, -/turf/open/floor/plasteel/green/side{ - dir = 8 - }, -/area/hydroponics) -"aUt" = ( -/turf/open/floor/plasteel, -/area/hydroponics) -"aUu" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/hydroponics) -"aUv" = ( -/obj/machinery/biogenerator, -/obj/machinery/requests_console{ - department = "Hydroponics"; - departmentType = 2; - pixel_x = 0; - pixel_y = 30 - }, -/turf/open/floor/plasteel/green/corner{ - dir = 4 - }, -/area/hydroponics) -"aUw" = ( -/obj/machinery/hydroponics/constructable, -/obj/item/device/radio/intercom{ - dir = 0; - name = "Station Intercom (General)"; - pixel_x = 0; - pixel_y = 26 - }, -/turf/open/floor/plasteel/green/side{ - dir = 1 - }, -/area/hydroponics) -"aUx" = ( -/obj/machinery/hydroponics/constructable, -/obj/structure/sign/botany{ - pixel_y = 32 - }, -/turf/open/floor/plasteel/green/side{ - dir = 1 - }, -/area/hydroponics) -"aUy" = ( -/obj/machinery/door/airlock{ - name = "Kitchen Cold Room"; - req_access_txt = "28" - }, -/turf/open/floor/plasteel/showroomfloor, -/area/crew_quarters/kitchen) -"aUz" = ( -/obj/machinery/door/airlock{ - name = "Bar Access"; - req_access_txt = "28" - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/black, -/area/crew_quarters/kitchen) -"aUA" = ( -/obj/machinery/door/airlock{ - cyclelinkeddir = 4; - name = "Bar Access"; - req_access_txt = "25" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/black, -/area/crew_quarters/bar) -"aUB" = ( -/obj/machinery/door/airlock{ - cyclelinkeddir = 8; - name = "Bar Access"; - req_access_txt = "0"; - req_one_access_txt = "25; 28" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/black, -/area/crew_quarters/bar) -"aUC" = ( -/obj/structure/window/reinforced, -/turf/open/floor/wood, -/area/crew_quarters/theatre) -"aUD" = ( -/obj/structure/window/reinforced, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/wood, -/area/crew_quarters/theatre) -"aUE" = ( -/obj/machinery/door/window{ - base_state = "right"; - icon_state = "right" - }, -/turf/open/floor/wood, -/area/crew_quarters/theatre) -"aUF" = ( -/obj/machinery/door/airlock{ - name = "Theatre Storage"; - req_access_txt = "46" - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/theatre) -"aUG" = ( -/obj/structure/disposalpipe/trunk{ - dir = 1 - }, -/obj/machinery/disposal/bin, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/crew_quarters/theatre) -"aUH" = ( -/obj/structure/table/wood, -/obj/item/weapon/soap, -/obj/structure/table/wood, -/obj/item/weapon/bikehorn, -/turf/open/floor/plasteel/black, -/area/crew_quarters/theatre) -"aUI" = ( -/obj/structure/table/wood, -/obj/item/weapon/storage/crayons{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/reagent_containers/food/snacks/pie/cream{ - pixel_x = -3; - pixel_y = -3 - }, -/obj/item/toy/cattoy, -/turf/open/floor/plasteel/black, -/area/crew_quarters/theatre) -"aUJ" = ( -/obj/machinery/computer/cargo, -/obj/machinery/requests_console{ - department = "Cargo Bay"; - departmentType = 2; - pixel_x = -32; - pixel_y = 0 - }, -/turf/open/floor/plasteel/brown{ - dir = 1 - }, -/area/quartermaster/office) -"aUK" = ( -/obj/structure/chair/office/dark{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/brown{ - dir = 1 - }, -/area/quartermaster/office) -"aUL" = ( -/obj/structure/chair/office/dark{ - dir = 1 - }, -/obj/effect/landmark/start{ - name = "Cargo Technician" - }, -/turf/open/floor/plasteel/brown{ - dir = 1 - }, -/area/quartermaster/office) -"aUM" = ( -/obj/item/weapon/stamp{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/weapon/stamp/denied{ - pixel_x = 4; - pixel_y = -2 - }, -/obj/structure/table, -/turf/open/floor/plasteel/brown{ - dir = 1 - }, -/area/quartermaster/office) -"aUN" = ( -/turf/open/floor/plasteel/brown{ - dir = 1 - }, -/area/quartermaster/office) -"aUO" = ( -/obj/machinery/disposal/bin, -/obj/structure/disposalpipe/trunk, -/turf/open/floor/plasteel/brown{ - dir = 1 - }, -/area/quartermaster/office) -"aUP" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/closed/wall, -/area/quartermaster/office) -"aUQ" = ( -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/obj/machinery/firealarm{ - dir = 4; - pixel_x = 28 - }, -/turf/open/floor/plasteel/brown{ - dir = 4 - }, -/area/quartermaster/office) -"aUR" = ( -/obj/machinery/navbeacon{ - codes_txt = "delivery;dir=4"; - freq = 1400; - location = "QM #4" - }, -/turf/open/floor/plasteel/bot, -/area/quartermaster/storage) -"aUS" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 8; - initialize_directions = 11 - }, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/quartermaster/storage) -"aUT" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/bot, -/area/quartermaster/storage) -"aUU" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/quartermaster/storage) -"aUV" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/bot, -/area/quartermaster/storage) -"aUW" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 10 - }, -/turf/open/floor/plasteel, -/area/quartermaster/storage) -"aUX" = ( -/obj/machinery/conveyor_switch/oneway{ - convdir = 1; - id = "QMLoad2" - }, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/quartermaster/storage) -"aUY" = ( -/obj/structure/table, -/obj/item/stack/cable_coil, -/obj/item/stack/cable_coil, -/obj/effect/spawner/lootdrop/maintenance, -/obj/item/weapon/storage/box/matches, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"aUZ" = ( -/obj/structure/table, -/obj/item/device/assembly/igniter, -/obj/item/device/assembly/igniter, -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"aVa" = ( -/obj/structure/table, -/obj/item/stack/sheet/metal{ - amount = 10 - }, -/obj/item/stack/rods{ - amount = 25 - }, -/obj/item/weapon/shard{ - icon_state = "small" - }, -/obj/effect/decal/cleanable/deadcockroach, -/obj/item/weapon/light/bulb, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"aVb" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/hallway/secondary/entry) -"aVc" = ( -/turf/closed/wall/r_wall, -/area/hallway/secondary/entry) -"aVd" = ( -/obj/machinery/power/apc{ - dir = 1; - name = "Monastery Maintenance APC"; - pixel_y = 24 - }, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/turf/open/floor/plating, -/area/maintenance/port{ - name = "Monastery Maintenance" - }) -"aVe" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable{ - icon_state = "1-8" - }, -/turf/open/floor/plating, -/area/maintenance/port{ - name = "Monastery Maintenance" - }) -"aVf" = ( -/obj/machinery/computer/security, -/obj/machinery/requests_console{ - department = "Security"; - departmentType = 5; - pixel_y = 30 - }, -/obj/structure/reagent_dispensers/peppertank{ - pixel_x = -32; - pixel_y = 0 - }, -/turf/open/floor/plasteel/red/side{ - dir = 9 - }, -/area/security/checkpoint2{ - name = "Customs" - }) -"aVg" = ( -/turf/open/floor/plasteel/red/side{ - dir = 1 - }, -/area/security/checkpoint2{ - name = "Customs" - }) -"aVh" = ( -/obj/structure/closet/wardrobe/red, -/turf/open/floor/plasteel/red/side{ - dir = 1 - }, -/area/security/checkpoint2{ - name = "Customs" - }) -"aVi" = ( -/obj/structure/closet/secure_closet/security, -/obj/item/device/radio/intercom{ - dir = 0; - name = "Station Intercom (General)"; - pixel_x = 0; - pixel_y = 26 - }, -/turf/open/floor/plasteel/red/side{ - tag = "icon-red (NORTHEAST)"; - dir = 5 - }, -/area/security/checkpoint2{ - name = "Customs" - }) -"aVj" = ( -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral/corner, -/area/hallway/primary/central) -"aVk" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock{ - name = "Custodial Quarters"; - req_access_txt = "26" - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/janitor) -"aVl" = ( -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/turf/open/floor/plasteel, -/area/hydroponics) -"aVm" = ( -/obj/machinery/vending/dinnerware, -/turf/open/floor/plasteel/cafeteria, -/area/crew_quarters/kitchen) -"aVn" = ( -/turf/open/floor/plasteel/cafeteria, -/area/crew_quarters/kitchen) -"aVo" = ( -/obj/structure/sink/kitchen{ - pixel_y = 28 - }, -/turf/open/floor/plasteel/cafeteria, -/area/crew_quarters/kitchen) -"aVp" = ( -/obj/machinery/processor, -/obj/item/device/radio/intercom{ - dir = 0; - name = "Station Intercom (General)"; - pixel_x = 0; - pixel_y = 26 - }, -/turf/open/floor/plasteel/cafeteria, -/area/crew_quarters/kitchen) -"aVq" = ( -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/firealarm{ - dir = 4; - pixel_x = 28 - }, -/turf/open/floor/plasteel/cafeteria, -/area/crew_quarters/kitchen) -"aVr" = ( -/obj/structure/table, -/obj/machinery/chem_dispenser/drinks/beer, -/turf/open/floor/plasteel/black, -/area/crew_quarters/bar) -"aVs" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/black, -/area/crew_quarters/bar) -"aVt" = ( -/obj/structure/table/reinforced, -/obj/machinery/chem_dispenser/drinks, -/turf/open/floor/plasteel/darkred/side{ - dir = 8 - }, -/area/crew_quarters/bar) -"aVu" = ( -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 5 - }, -/turf/open/floor/plasteel/black, -/area/crew_quarters/bar) -"aVv" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/extinguisher_cabinet{ - pixel_x = 0; - pixel_y = 30 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/bar) -"aVw" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/bar) -"aVx" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/bar) -"aVy" = ( -/obj/structure/disposalpipe/junction{ - icon_state = "pipe-j2"; - dir = 1 - }, -/obj/machinery/firealarm{ - dir = 4; - pixel_x = 28 - }, -/turf/open/floor/plasteel/black, -/area/crew_quarters/bar) -"aVz" = ( -/obj/machinery/light/small{ - dir = 1 - }, -/obj/item/weapon/storage/box/lights/bulbs, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/maintenance/port{ - name = "Monastery Maintenance" - }) -"aVA" = ( -/obj/effect/decal/cleanable/cobweb{ - icon_state = "cobweb2" - }, -/obj/item/stack/sheet/glass{ - amount = 50; - layer = 4 - }, -/obj/item/stack/sheet/metal{ - amount = 20; - layer = 3.1 - }, -/turf/open/floor/plating, -/area/maintenance/port{ - name = "Monastery Maintenance" - }) -"aVB" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/obj/item/device/radio/intercom{ - dir = 0; - name = "Station Intercom (General)"; - pixel_x = 0; - pixel_y = 26 - }, -/turf/open/floor/plasteel/black, -/area/library) -"aVC" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/firealarm{ - dir = 4; - pixel_x = -28 - }, -/turf/open/floor/plasteel/brown/corner{ - dir = 1; - tag = "icon-browncorner (NORTH)" - }, -/area/hallway/primary/central) -"aVD" = ( -/obj/structure/table, -/obj/machinery/computer/stockexchange, -/obj/machinery/status_display{ - dir = 4; - layer = 4; - pixel_x = -32; - pixel_y = 0; - supply_display = 1 - }, -/turf/open/floor/plasteel, -/area/quartermaster/office) -"aVE" = ( -/obj/structure/disposalpipe/junction{ - dir = 8; - icon_state = "pipe-j1" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 6 - }, -/turf/open/floor/plasteel, -/area/quartermaster/office) -"aVF" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass_mining{ - name = "Cargo Office"; - req_access_txt = "50" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/quartermaster/office) -"aVG" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/quartermaster/office) -"aVH" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel, -/area/quartermaster/office) -"aVI" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/quartermaster/storage) -"aVJ" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/quartermaster/storage) -"aVK" = ( -/obj/structure/disposalpipe/sortjunction{ - dir = 8; - icon_state = "pipe-j2s"; - sortType = 3 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/quartermaster/storage) -"aVL" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel, -/area/quartermaster/storage) -"aVM" = ( -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel, -/area/quartermaster/storage) -"aVN" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/quartermaster/storage) -"aVO" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 6 - }, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"aVP" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"aVQ" = ( -/obj/structure/cable{ - icon_state = "1-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 9 - }, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"aVR" = ( -/turf/open/floor/plasteel/arrival{ - dir = 1 - }, -/area/hallway/secondary/entry) -"aVS" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - external_pressure_bound = 101.325; - on = 1; - pressure_checks = 1 - }, -/turf/open/floor/plasteel/arrival{ - dir = 1 - }, -/area/hallway/secondary/entry) -"aVT" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/hidden{ - tag = "icon-intact (EAST)"; - icon_state = "intact"; - dir = 4 - }, -/turf/open/floor/plasteel/arrival{ - dir = 1 - }, -/area/hallway/secondary/entry) -"aVU" = ( -/obj/machinery/camera{ - c_tag = "Arrivals Fore"; - dir = 2 - }, -/obj/machinery/atmospherics/pipe/simple/cyan/hidden{ - tag = "icon-intact (EAST)"; - icon_state = "intact"; - dir = 4 - }, -/turf/open/floor/plasteel/arrival{ - dir = 1 - }, -/area/hallway/secondary/entry) -"aVV" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/hidden{ - tag = "icon-intact (EAST)"; - icon_state = "intact"; - dir = 4 - }, -/obj/item/device/radio/intercom{ - dir = 0; - name = "Station Intercom (General)"; - pixel_x = 0; - pixel_y = 26 - }, -/turf/open/floor/plasteel/arrival{ - dir = 1 - }, -/area/hallway/secondary/entry) -"aVW" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/hidden{ - tag = "icon-intact (SOUTHWEST)"; - icon_state = "intact"; - dir = 10 - }, -/turf/open/floor/plasteel/arrival{ - dir = 1 - }, -/area/hallway/secondary/entry) -"aVX" = ( -/obj/machinery/computer/card, -/obj/machinery/light{ - dir = 8 - }, -/obj/machinery/camera{ - c_tag = "Security Checkpoint"; - dir = 4; - network = list("SS13") - }, -/obj/machinery/airalarm{ - dir = 4; - pixel_x = -23; - pixel_y = 0 - }, -/turf/open/floor/plasteel/red/side{ - dir = 8 - }, -/area/security/checkpoint2{ - name = "Customs" - }) -"aVY" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel, -/area/security/checkpoint2{ - name = "Customs" - }) -"aVZ" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 10 - }, -/turf/open/floor/plasteel, -/area/security/checkpoint2{ - name = "Customs" - }) -"aWa" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - external_pressure_bound = 101.325; - on = 1; - pressure_checks = 1 - }, -/turf/open/floor/plasteel, -/area/security/checkpoint2{ - name = "Customs" - }) -"aWb" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/red/side{ - tag = "icon-red (EAST)"; - dir = 4 - }, -/area/security/checkpoint2{ - name = "Customs" - }) -"aWc" = ( -/obj/machinery/door/airlock/security{ - name = "Security Checkpoint"; - req_access = null; - req_access_txt = "1" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/red, -/area/security/checkpoint2{ - name = "Customs" - }) -"aWd" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"aWe" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/cable{ - icon_state = "1-8" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"aWf" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 4; - initialize_directions = 11 - }, -/obj/machinery/airalarm{ - dir = 8; - pixel_x = 23; - pixel_y = 0 - }, -/turf/open/floor/plasteel/neutral/corner, -/area/hallway/primary/central) -"aWg" = ( -/obj/machinery/disposal/bin, -/obj/structure/disposalpipe/trunk, -/obj/machinery/airalarm{ - pixel_y = 24 - }, -/turf/open/floor/plasteel/floorgrime, -/area/janitor) -"aWh" = ( -/turf/open/floor/plasteel/floorgrime, -/area/janitor) -"aWi" = ( -/obj/structure/reagent_dispensers/watertank, -/obj/machinery/power/apc{ - dir = 1; - name = "Custodial Closet APC"; - pixel_x = 0; - pixel_y = 24 - }, -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/turf/open/floor/plasteel/floorgrime, -/area/janitor) -"aWj" = ( -/obj/machinery/hydroponics/constructable, -/obj/machinery/light{ - dir = 8 - }, -/turf/open/floor/plasteel/green/side{ - dir = 8 - }, -/area/hydroponics) -"aWk" = ( -/obj/machinery/vending/hydronutrients, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/hydroponics) -"aWl" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 8 - }, -/turf/open/floor/plasteel/green/side{ - dir = 8 - }, -/area/hydroponics) -"aWm" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/hydroponics) -"aWn" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/plasteel, -/area/hydroponics) -"aWo" = ( -/obj/effect/landmark/start{ - name = "Botanist" - }, -/turf/open/floor/plasteel, -/area/hydroponics) -"aWp" = ( -/obj/machinery/smartfridge, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/crew_quarters/kitchen) -"aWq" = ( -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/cafeteria, -/area/crew_quarters/kitchen) -"aWr" = ( -/obj/machinery/vending/boozeomat, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/crew_quarters/kitchen) -"aWs" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 6 - }, -/turf/open/floor/plasteel/black, -/area/crew_quarters/bar) -"aWt" = ( -/obj/structure/chair/stool/bar, -/obj/machinery/computer/security/telescreen/entertainment{ - pixel_y = 32 - }, -/turf/open/floor/plasteel/black, -/area/crew_quarters/bar) -"aWu" = ( -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/bar) -"aWv" = ( -/turf/open/floor/plasteel/black, -/area/crew_quarters/bar) -"aWw" = ( -/obj/structure/chair/wood/normal, -/turf/open/floor/carpet{ - icon_state = "carpetsymbol" - }, -/area/crew_quarters/bar) -"aWx" = ( -/obj/effect/landmark/start{ - name = "Assistant" - }, -/obj/structure/chair/wood/normal, -/turf/open/floor/carpet{ - icon_state = "carpetsymbol" - }, -/area/crew_quarters/bar) -"aWy" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 8; - initialize_directions = 11 - }, -/obj/effect/landmark/xmastree, -/turf/open/floor/carpet{ - icon_state = "carpetsymbol" - }, -/area/crew_quarters/bar) -"aWz" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/chair/wood/normal, -/turf/open/floor/carpet{ - icon_state = "carpetsymbol" - }, -/area/crew_quarters/bar) -"aWA" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/bar) -"aWB" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/newscaster{ - pixel_x = 32; - pixel_y = 1 - }, -/obj/structure/chair/wood/normal, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/bar) -"aWC" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/extinguisher_cabinet{ - pixel_x = -24 - }, -/turf/open/floor/plasteel/brown/corner{ - dir = 1; - tag = "icon-browncorner (NORTH)" - }, -/area/hallway/primary/central) -"aWD" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/carpet, -/area/library) -"aWE" = ( -/obj/structure/table, -/obj/item/weapon/pen, -/obj/item/device/radio/intercom{ - dir = 0; - name = "Station Intercom (General)"; - pixel_x = 0; - pixel_y = -26 - }, -/obj/item/weapon/paper_bin{ - layer = 2.9; - pixel_x = 0; - pixel_y = 0; - tag = "every single paper bin is edited to this" - }, -/obj/structure/extinguisher_cabinet{ - pixel_x = -26 - }, -/turf/open/floor/plasteel, -/area/quartermaster/office) -"aWF" = ( -/obj/structure/table, -/obj/item/weapon/clipboard, -/obj/item/weapon/folder/yellow, -/obj/machinery/airalarm{ - dir = 1; - pixel_y = -22 - }, -/turf/open/floor/plasteel, -/area/quartermaster/office) -"aWG" = ( -/obj/machinery/photocopier, -/obj/machinery/light, -/obj/machinery/camera{ - c_tag = "Cargo Office"; - dir = 1 - }, -/turf/open/floor/plasteel, -/area/quartermaster/office) -"aWH" = ( -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/machinery/power/apc{ - dir = 2; - name = "Cargo Office APC"; - pixel_x = 1; - pixel_y = -24 - }, -/turf/open/floor/plasteel, -/area/quartermaster/office) -"aWI" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel, -/area/quartermaster/office) -"aWJ" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel, -/area/quartermaster/office) -"aWK" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/closed/wall, -/area/quartermaster/office) -"aWL" = ( -/obj/machinery/door/firedoor, -/turf/open/floor/plasteel, -/area/quartermaster/office) -"aWM" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/quartermaster/storage) -"aWN" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/quartermaster/storage) -"aWO" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/power/apc{ - dir = 2; - name = "Cargo Bay APC"; - pixel_x = 0; - pixel_y = -24 - }, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/turf/open/floor/plasteel, -/area/quartermaster/storage) -"aWP" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/light, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/item/device/radio/intercom{ - dir = 0; - name = "Station Intercom (General)"; - pixel_x = 0; - pixel_y = -26 - }, -/turf/open/floor/plasteel, -/area/quartermaster/storage) -"aWQ" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/structure/disposalpipe/sortjunction{ - dir = 1; - icon_state = "pipe-j1s"; - sortType = 2 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 10 - }, -/turf/open/floor/plasteel, -/area/quartermaster/storage) -"aWR" = ( -/obj/structure/disposalpipe/trunk{ - dir = 8 - }, -/obj/machinery/disposal/bin, -/turf/open/floor/plasteel, -/area/quartermaster/storage) -"aWS" = ( -/turf/closed/wall, -/area/maintenance/auxsolarstarboard{ - name = "Starboard Solar Maintenance" - }) -"aWT" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/maintenance/auxsolarstarboard{ - name = "Starboard Solar Maintenance" - }) -"aWU" = ( -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/machinery/power/solar{ - id = "portsolar"; - name = "Port Solar Array" - }, -/turf/open/floor/plasteel/airless/solarpanel, -/area/solar/starboard{ - name = "Starboard Solar Array" - }) -"aWV" = ( -/obj/machinery/light{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/hallway/secondary/entry) -"aWW" = ( -/turf/open/floor/plasteel, -/area/hallway/secondary/entry) -"aWX" = ( -/obj/machinery/holopad, -/turf/open/floor/plasteel, -/area/hallway/secondary/entry) -"aWY" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel, -/area/hallway/secondary/entry) -"aWZ" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/hallway/secondary/entry) -"aXa" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 10 - }, -/turf/open/floor/plasteel, -/area/hallway/secondary/entry) -"aXb" = ( -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/obj/machinery/atmospherics/pipe/simple/cyan/hidden, -/turf/open/floor/plasteel/neutral/corner{ - dir = 4 - }, -/area/hallway/secondary/entry) -"aXc" = ( -/obj/machinery/computer/secure_data, -/obj/machinery/button/door{ - dir = 2; - id = "papersplease"; - name = "Shutters Control Button"; - pixel_x = -26; - pixel_y = 6; - req_access_txt = "1" - }, -/obj/machinery/button/flasher{ - id = "brigentry"; - pixel_x = -26; - pixel_y = -4 - }, -/turf/open/floor/plasteel/red/side{ - dir = 10 - }, -/area/security/checkpoint2{ - name = "Customs" - }) -"aXd" = ( -/obj/item/weapon/pen, -/obj/structure/table, -/obj/item/weapon/paper_bin{ - layer = 2.9; - pixel_x = 0; - pixel_y = 0; - tag = "every single paper bin is edited to this" - }, -/turf/open/floor/plasteel/red/side, -/area/security/checkpoint2{ - name = "Customs" - }) -"aXe" = ( -/obj/structure/chair/office/dark, -/obj/effect/landmark/event_spawn, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/red/side, -/area/security/checkpoint2{ - name = "Customs" - }) -"aXf" = ( -/obj/machinery/recharger{ - pixel_y = 4 - }, -/obj/structure/table, -/turf/open/floor/plasteel/red/side, -/area/security/checkpoint2{ - name = "Customs" - }) -"aXg" = ( -/obj/machinery/power/apc{ - dir = 2; - name = "Security Checkpoint APC"; - pixel_x = 1; - pixel_y = -24 - }, -/obj/structure/cable, -/turf/open/floor/plasteel/red/side{ - dir = 6 - }, -/area/security/checkpoint2{ - name = "Customs" - }) -"aXh" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"aXi" = ( -/obj/vehicle/janicart, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/obj/machinery/button/door{ - dir = 2; - id = "jangarage"; - name = "Custodial Closet Shutters Control"; - pixel_x = -25; - pixel_y = 0 - }, -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4"; - tag = "" - }, -/turf/open/floor/plasteel/floorgrime, -/area/janitor) -"aXj" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/turf/open/floor/plasteel/floorgrime, -/area/janitor) -"aXk" = ( -/obj/structure/closet/l3closet/janitor, -/obj/machinery/requests_console{ - department = "Janitorial"; - departmentType = 1; - pixel_x = 32; - pixel_y = 0 - }, -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/turf/open/floor/plasteel/floorgrime, -/area/janitor) -"aXl" = ( -/obj/machinery/vending/hydroseeds{ - slogan_delay = 700 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/hydroponics) -"aXm" = ( -/turf/open/floor/plasteel/green/corner, -/area/hydroponics) -"aXn" = ( -/obj/structure/chair/stool, -/turf/open/floor/plasteel/green/side, -/area/hydroponics) -"aXo" = ( -/obj/structure/table/reinforced, -/obj/machinery/door/window/eastleft{ - dir = 8; - name = "Hydroponics Desk"; - req_access_txt = "35" - }, -/obj/machinery/door/firedoor, -/obj/machinery/door/window/eastleft{ - dir = 4; - name = "Kitchen Desk"; - req_access_txt = "28" - }, -/turf/open/floor/plasteel/cafeteria, -/area/crew_quarters/kitchen) -"aXp" = ( -/obj/effect/landmark/start{ - name = "Cook" - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - on = 1 - }, -/turf/open/floor/plasteel/cafeteria, -/area/crew_quarters/kitchen) -"aXq" = ( -/obj/structure/table, -/obj/item/weapon/reagent_containers/food/condiment/saltshaker{ - pixel_x = 4; - pixel_y = 4 - }, -/obj/item/weapon/reagent_containers/food/condiment/peppermill, -/turf/open/floor/plasteel/cafeteria, -/area/crew_quarters/kitchen) -"aXr" = ( -/obj/structure/table, -/obj/machinery/reagentgrinder, -/turf/open/floor/plasteel/cafeteria, -/area/crew_quarters/kitchen) -"aXs" = ( -/obj/structure/table/reinforced, -/obj/machinery/door/firedoor, -/obj/item/weapon/reagent_containers/food/snacks/pie/cream, -/obj/machinery/camera{ - c_tag = "Kitchen"; - dir = 1; - network = list("SS13") - }, -/turf/open/floor/plasteel/hydrofloor, -/area/crew_quarters/kitchen) -"aXt" = ( -/obj/effect/landmark/start{ - name = "Bartender" - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/black, -/area/crew_quarters/bar) -"aXu" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/gun/ballistic/revolver/russian, -/turf/open/floor/plasteel/darkred/side{ - dir = 8 - }, -/area/crew_quarters/bar) -"aXv" = ( -/obj/structure/chair/stool/bar, -/obj/effect/landmark/start{ - name = "Assistant" - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/bar) -"aXw" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4"; - tag = "" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/carpet, -/area/library) -"aXx" = ( -/obj/structure/table/wood/fancy, -/obj/item/weapon/reagent_containers/food/drinks/soda_cans/cola, -/turf/open/floor/carpet{ - icon_state = "carpetsymbol" - }, -/area/crew_quarters/bar) -"aXy" = ( -/obj/item/weapon/coin/silver, -/obj/structure/table/wood/fancy, -/obj/item/weapon/cane, -/turf/open/floor/carpet{ - icon_state = "carpetsymbol" - }, -/area/crew_quarters/bar) -"aXz" = ( -/obj/machinery/holopad, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/carpet{ - icon_state = "carpetsymbol" - }, -/area/crew_quarters/bar) -"aXA" = ( -/obj/structure/table/wood/fancy, -/obj/item/weapon/storage/fancy/candle_box, -/turf/open/floor/carpet{ - icon_state = "carpetsymbol" - }, -/area/crew_quarters/bar) -"aXB" = ( -/obj/structure/disposalpipe/segment, -/obj/structure/table/wood, -/obj/item/clothing/under/sundress, -/obj/item/clothing/under/waiter, -/obj/item/clothing/under/blacktango, -/turf/open/floor/plasteel/black, -/area/crew_quarters/bar) -"aXC" = ( -/obj/structure/chair/stool, -/obj/item/trash/can, -/turf/open/floor/carpet{ - icon_state = "carpetsymbol" - }, -/area/crew_quarters/bar) -"aXD" = ( -/obj/effect/landmark/start{ - name = "Assistant" - }, -/obj/structure/chair/stool, -/turf/open/floor/carpet{ - icon_state = "carpetsymbol" - }, -/area/crew_quarters/bar) -"aXE" = ( -/obj/structure/chair/stool, -/turf/open/floor/carpet{ - icon_state = "carpetsymbol" - }, -/area/crew_quarters/bar) -"aXF" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"aXG" = ( -/obj/machinery/door/airlock/maintenance{ - name = "Cargo Office Maintenance"; - req_access_txt = "50" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plating, -/area/quartermaster/office) -"aXH" = ( -/obj/structure/table, -/obj/item/weapon/storage/firstaid/regular{ - pixel_x = 6; - pixel_y = -5 - }, -/turf/open/floor/plasteel, -/area/quartermaster/office) -"aXI" = ( -/obj/structure/table, -/obj/machinery/cell_charger, -/obj/item/weapon/hand_labeler, -/obj/machinery/light/small, -/turf/open/floor/plasteel, -/area/quartermaster/office) -"aXJ" = ( -/obj/structure/closet/wardrobe/cargotech, -/obj/item/clothing/head/mailman, -/obj/item/clothing/under/rank/mailman, -/turf/open/floor/plasteel, -/area/quartermaster/office) -"aXK" = ( -/turf/closed/wall, -/area/quartermaster/qm) -"aXL" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/quartermaster/qm) -"aXM" = ( -/obj/machinery/door/airlock/glass_mining{ - name = "Quartermaster"; - req_access_txt = "41" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/brown, -/area/quartermaster/qm) -"aXN" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/quartermaster/qm) -"aXO" = ( -/turf/closed/wall, -/area/quartermaster/miningdock) -"aXP" = ( -/obj/machinery/door/firedoor, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/brown, -/area/quartermaster/miningdock) -"aXQ" = ( -/obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/brown, -/area/quartermaster/miningdock) -"aXR" = ( -/obj/machinery/power/smes, -/obj/structure/cable{ - icon_state = "0-2"; - pixel_y = 1; - d2 = 2 - }, -/turf/open/floor/plating, -/area/maintenance/auxsolarstarboard{ - name = "Starboard Solar Maintenance" - }) -"aXS" = ( -/obj/machinery/power/terminal{ - dir = 8 - }, -/obj/structure/cable{ - icon_state = "0-2"; - pixel_y = 1; - d2 = 2 - }, -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/plating, -/area/maintenance/auxsolarstarboard{ - name = "Starboard Solar Maintenance" - }) -"aXT" = ( -/obj/structure/rack, -/obj/item/clothing/mask/gas, -/obj/item/device/multitool, -/turf/open/floor/plating, -/area/maintenance/auxsolarstarboard{ - name = "Starboard Solar Maintenance" - }) -"aXU" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; - icon_state = "space"; - layer = 4; - name = "EXTERNAL AIRLOCK"; - pixel_x = 32; - pixel_y = 0 - }, -/turf/open/floor/plating, -/area/maintenance/auxsolarstarboard{ - name = "Starboard Solar Maintenance" - }) -"aXV" = ( -/obj/machinery/door/airlock/external{ - name = "Port Docking Bay 1" - }, -/turf/open/floor/plating, -/area/hallway/secondary/entry) -"aXW" = ( -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/hallway/secondary/entry) -"aXX" = ( -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/hallway/secondary/entry) -"aXY" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/hallway/secondary/entry) -"aXZ" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/hidden, -/turf/open/floor/plasteel/neutral/corner{ - dir = 4 - }, -/area/hallway/secondary/entry) -"aYa" = ( -/obj/machinery/door/firedoor, -/obj/structure/table/reinforced, -/obj/machinery/door/window/westright{ - dir = 1; - name = "Security Checkpoint"; - req_access_txt = "1" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/door/window/northleft{ - dir = 2; - icon_state = "left"; - name = "Reception Window"; - req_access_txt = "0" - }, -/obj/machinery/door/poddoor{ - density = 0; - icon_state = "open"; - id = "papersplease"; - layer = 3.1; - name = "privacy shutters"; - opacity = 0 - }, -/obj/item/weapon/crowbar, -/turf/open/floor/plasteel/delivery, -/area/security/checkpoint2{ - name = "Customs" - }) -"aYb" = ( -/obj/structure/janitorialcart, -/obj/structure/disposalpipe/segment, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/floorgrime, -/area/janitor) -"aYc" = ( -/obj/structure/closet/jcloset, -/obj/item/clothing/head/crown, -/obj/machinery/camera{ - c_tag = "Custodial Closet"; - dir = 8 - }, -/obj/structure/extinguisher_cabinet{ - pixel_x = 24 - }, -/turf/open/floor/plasteel/floorgrime, -/area/janitor) -"aYd" = ( -/obj/machinery/seed_extractor, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/hydroponics) -"aYe" = ( -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/obj/machinery/camera{ - c_tag = "Hydroponics South"; - dir = 8; - network = list("SS13") - }, -/turf/open/floor/plasteel, -/area/hydroponics) -"aYf" = ( -/obj/structure/table/reinforced, -/obj/machinery/door/firedoor, -/obj/machinery/door/window/westright{ - dir = 1; - name = "Hydroponics Desk"; - req_access_txt = "35" - }, -/obj/item/weapon/reagent_containers/glass/bucket, -/turf/open/floor/plasteel, -/area/hydroponics) -"aYg" = ( -/obj/structure/table/reinforced, -/obj/machinery/door/firedoor, -/obj/machinery/door/window/westright{ - dir = 1; - name = "Hydroponics Desk"; - req_access_txt = "35" - }, -/turf/open/floor/plasteel, -/area/hydroponics) -"aYh" = ( -/obj/structure/table, -/obj/machinery/microwave{ - pixel_x = -3; - pixel_y = 6 - }, -/turf/open/floor/plasteel/cafeteria, -/area/crew_quarters/kitchen) -"aYi" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/cafeteria, -/area/crew_quarters/kitchen) -"aYj" = ( -/obj/structure/table, -/obj/item/weapon/kitchen/rollingpin, -/obj/item/weapon/reagent_containers/food/condiment/enzyme, -/turf/open/floor/plasteel/cafeteria, -/area/crew_quarters/kitchen) -"aYk" = ( -/obj/structure/table, -/obj/item/weapon/storage/box/ingredients/wildcard, -/turf/open/floor/plasteel/cafeteria, -/area/crew_quarters/kitchen) -"aYl" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/machinery/power/apc{ - dir = 4; - name = "Library APC"; - pixel_x = 24 - }, -/obj/machinery/airalarm{ - pixel_y = 22 - }, -/turf/open/floor/plasteel/black, -/area/library) -"aYm" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/black, -/area/crew_quarters/bar) -"aYn" = ( -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/black, -/area/crew_quarters/bar) -"aYo" = ( -/obj/structure/table/reinforced, -/obj/item/clothing/head/that{ - throwforce = 1; - throwing = 1 - }, -/turf/open/floor/plasteel/darkred/side{ - dir = 8 - }, -/area/crew_quarters/bar) -"aYp" = ( -/obj/structure/chair/stool/bar, -/turf/open/floor/plasteel/black, -/area/crew_quarters/bar) -"aYq" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/carpet{ - icon_state = "carpetsymbol" - }, -/area/crew_quarters/bar) -"aYr" = ( -/obj/structure/disposalpipe/segment, -/obj/structure/chair/wood/normal{ - icon_state = "wooden_chair"; - dir = 1 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/bar) -"aYs" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - layer = 2.4; - on = 1 - }, -/obj/item/clothing/shoes/sandal, -/turf/open/floor/plasteel/black, -/area/crew_quarters/bar) -"aYt" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/bar) -"aYu" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/crew_quarters/bar) -"aYv" = ( -/obj/structure/grille, -/obj/structure/window/fulltile, -/turf/open/floor/plating, -/area/crew_quarters/bar) -"aYw" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"aYx" = ( -/obj/structure/closet/secure_closet/quartermaster, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/airalarm{ - dir = 4; - pixel_x = -23; - pixel_y = 0 - }, -/obj/item/weapon/storage/belt/fannypack/yellow, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (NORTHWEST)"; - dir = 9 - }, -/area/quartermaster/qm) -"aYy" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/turf/open/floor/plasteel/brown{ - dir = 1; - tag = "icon-brown (NORTH)" - }, -/area/quartermaster/qm) -"aYz" = ( -/obj/machinery/disposal/bin, -/obj/structure/disposalpipe/trunk{ - dir = 8 - }, -/turf/open/floor/plasteel/brown{ - dir = 5 - }, -/area/quartermaster/qm) -"aYA" = ( -/obj/structure/closet/wardrobe/miner, -/obj/machinery/firealarm{ - dir = 4; - pixel_x = -28 - }, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (NORTHWEST)"; - dir = 9 - }, -/area/quartermaster/miningdock) -"aYB" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/brown{ - dir = 1 - }, -/area/quartermaster/miningdock) -"aYC" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/brown{ - dir = 1 - }, -/area/quartermaster/miningdock) -"aYD" = ( -/obj/structure/closet/emcloset, -/obj/machinery/airalarm{ - dir = 8; - pixel_x = 23; - pixel_y = 0 - }, -/turf/open/floor/plasteel/brown{ - dir = 5 - }, -/area/quartermaster/miningdock) -"aYE" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"aYF" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"aYG" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/machinery/door/airlock/engineering{ - name = "Starboard Solar Access"; - req_access_txt = "10" - }, -/turf/open/floor/plating, -/area/maintenance/auxsolarstarboard{ - name = "Starboard Solar Maintenance" - }) -"aYH" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0; - tag = "" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/turf/open/floor/plating, -/area/maintenance/auxsolarstarboard{ - name = "Starboard Solar Maintenance" - }) -"aYI" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4"; - tag = "90Curve" - }, -/turf/open/floor/plating, -/area/maintenance/auxsolarstarboard{ - name = "Starboard Solar Maintenance" - }) -"aYJ" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/turf/open/floor/plating, -/area/maintenance/auxsolarstarboard{ - name = "Starboard Solar Maintenance" - }) -"aYK" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/machinery/door/airlock/external{ - cyclelinkeddir = 4; - name = "Solar Maintenance"; - req_access = null; - req_access_txt = "10; 13" - }, -/turf/open/floor/plating, -/area/maintenance/auxsolarstarboard{ - name = "Starboard Solar Maintenance" - }) -"aYL" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/turf/open/floor/plating, -/area/maintenance/auxsolarstarboard{ - name = "Starboard Solar Maintenance" - }) -"aYM" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/machinery/door/airlock/external{ - cyclelinkeddir = 8; - name = "Solar Maintenance"; - req_access = null; - req_access_txt = "10; 13" - }, -/turf/open/floor/plating, -/area/maintenance/auxsolarstarboard{ - name = "Starboard Solar Maintenance" - }) -"aYN" = ( -/obj/structure/lattice/catwalk, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/turf/open/space, -/area/solar/starboard{ - name = "Starboard Solar Array" - }) -"aYO" = ( -/obj/structure/lattice/catwalk, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/turf/open/space, -/area/solar/starboard{ - name = "Starboard Solar Array" - }) -"aYP" = ( -/obj/structure/lattice/catwalk, -/turf/open/space, -/area/solar/starboard{ - name = "Starboard Solar Array" - }) -"aYQ" = ( -/obj/structure/lattice/catwalk, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/turf/open/space, -/area/solar/starboard{ - name = "Starboard Solar Array" - }) -"aYR" = ( -/obj/machinery/power/tracker, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/turf/open/floor/plasteel/airless/solarpanel, -/area/solar/starboard{ - name = "Starboard Solar Array" - }) -"aYS" = ( -/obj/structure/grille, -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; - icon_state = "space"; - layer = 4; - name = "EXTERNAL AIRLOCK"; - pixel_x = 0; - pixel_y = 32 - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/hallway/secondary/entry) -"aYT" = ( -/turf/open/floor/plating, -/area/hallway/secondary/entry) -"aYU" = ( -/obj/structure/closet/emcloset, -/turf/open/floor/plasteel/warning{ - dir = 10 - }, -/area/hallway/secondary/entry) -"aYV" = ( -/obj/machinery/light, -/turf/open/floor/plasteel/warning, -/area/hallway/secondary/entry) -"aYW" = ( -/obj/structure/closet/emcloset, -/turf/open/floor/plasteel/warning{ - dir = 6 - }, -/area/hallway/secondary/entry) -"aYX" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/hidden, -/turf/open/floor/plasteel, -/area/hallway/secondary/entry) -"aYY" = ( -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/structure/window/reinforced, -/obj/structure/table/glass, -/obj/item/weapon/tank/internals/oxygen, -/obj/item/clothing/mask/breath, -/obj/item/clothing/suit/space/hardsuit/engine/elite, -/turf/open/floor/plating/abductor, -/area/shuttle/abandoned) -"aYZ" = ( -/obj/machinery/light{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/hallway/secondary/entry) -"aZa" = ( -/obj/machinery/flasher{ - id = "brigentry"; - pixel_x = -28; - pixel_y = 24 - }, -/turf/open/floor/plasteel, -/area/hallway/secondary/entry) -"aZb" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/hidden{ - tag = "icon-intact (EAST)"; - icon_state = "intact"; - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/hallway/secondary/entry) -"aZc" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/hidden{ - tag = "icon-intact (EAST)"; - icon_state = "intact"; - dir = 4 - }, -/turf/open/floor/plasteel, -/area/hallway/secondary/entry) -"aZd" = ( -/obj/structure/chair{ - dir = 1 - }, -/turf/open/floor/plating/abductor, -/area/shuttle/abandoned) -"aZe" = ( -/obj/structure/window/reinforced{ - dir = 4 - }, -/obj/structure/window/reinforced, -/obj/structure/table/glass, -/obj/item/clothing/shoes/magboots, -/turf/open/floor/plating/abductor, -/area/shuttle/abandoned) -"aZf" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 6 - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/floorgrime, -/area/janitor) -"aZg" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/floorgrime, -/area/janitor) -"aZh" = ( -/obj/item/weapon/reagent_containers/glass/bucket, -/obj/item/weapon/mop, -/obj/structure/sink{ - dir = 4; - icon_state = "sink"; - pixel_x = 11; - pixel_y = 0 - }, -/turf/open/floor/plasteel/floorgrime, -/area/janitor) -"aZi" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/hydroponics) -"aZj" = ( -/turf/open/floor/plasteel/green/corner{ - dir = 1 - }, -/area/hallway/primary/central) -"aZk" = ( -/obj/structure/table, -/obj/item/weapon/storage/crayons, -/obj/item/weapon/wrench, -/turf/open/floor/plasteel/black, -/area/chapel/main{ - name = "Monastery" - }) -"aZl" = ( -/obj/structure/table, -/obj/item/weapon/reagent_containers/glass/beaker/large, -/turf/open/floor/plasteel/cafeteria, -/area/crew_quarters/kitchen) -"aZm" = ( -/obj/structure/table, -/obj/item/weapon/reagent_containers/food/snacks/grown/tomato, -/turf/open/floor/plasteel/cafeteria, -/area/crew_quarters/kitchen) -"aZn" = ( -/obj/structure/chair{ - dir = 8 - }, -/turf/open/floor/plasteel/black, -/area/chapel/main{ - name = "Monastery" - }) -"aZo" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/black, -/area/crew_quarters/bar) -"aZp" = ( -/obj/structure/table/reinforced, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/item/clothing/head/hardhat/cakehat, -/turf/open/floor/plasteel/darkred/side{ - dir = 8 - }, -/area/crew_quarters/bar) -"aZq" = ( -/obj/machinery/light/small{ - dir = 8 - }, -/obj/structure/chair{ - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/chapel/main{ - name = "Monastery" - }) -"aZr" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/bar) -"aZs" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 4 - }, -/obj/item/device/radio/beacon, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/bar) -"aZt" = ( -/obj/structure/window/reinforced, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/carpet, -/area/chapel/main{ - name = "Monastery" - }) -"aZu" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/lighter, -/turf/open/floor/plasteel/darkred/side{ - dir = 8 - }, -/area/crew_quarters/bar) -"aZv" = ( -/obj/item/weapon/cigbutt, -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"aZw" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"aZx" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"aZy" = ( -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/machinery/power/apc{ - dir = 8; - name = "Quartermaster APC"; - pixel_x = -24; - pixel_y = 0 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/brown{ - dir = 8 - }, -/area/quartermaster/qm) -"aZz" = ( -/obj/structure/cable{ - icon_state = "1-8" - }, -/turf/open/floor/plasteel, -/area/quartermaster/qm) -"aZA" = ( -/obj/structure/filingcabinet, -/turf/open/floor/plasteel/brown{ - dir = 4 - }, -/area/quartermaster/qm) -"aZB" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/quartermaster/miningdock) -"aZC" = ( -/obj/structure/table, -/obj/item/weapon/folder/yellow, -/obj/item/weapon/pen, -/turf/open/floor/plasteel/brown/corner{ - dir = 1; - tag = "icon-browncorner (NORTH)" - }, -/area/quartermaster/miningdock) -"aZD" = ( -/obj/structure/chair/office/dark{ - dir = 8 - }, -/obj/effect/landmark/start{ - name = "Shaft Miner" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/quartermaster/miningdock) -"aZE" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel, -/area/quartermaster/miningdock) -"aZF" = ( -/obj/machinery/computer/security/mining, -/obj/machinery/requests_console{ - department = "Mining"; - departmentType = 0; - pixel_x = 32; - pixel_y = 0 - }, -/turf/open/floor/plasteel/brown/corner, -/area/quartermaster/miningdock) -"aZG" = ( -/obj/structure/table, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/labor) -"aZH" = ( -/obj/machinery/computer/shuttle/mining, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/labor) -"aZI" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 6 - }, -/turf/open/floor/plating{ - icon_state = "platingdmg3" - }, -/area/maintenance/apmaint) -"aZJ" = ( -/obj/structure/cable, -/obj/machinery/power/apc{ - dir = 8; - name = "Starboard Solar APC"; - pixel_x = -24; - pixel_y = 0 - }, -/turf/open/floor/plating, -/area/maintenance/auxsolarstarboard{ - name = "Starboard Solar Maintenance" - }) -"aZK" = ( -/obj/structure/chair/stool, -/obj/item/weapon/cigbutt/cigarbutt, -/turf/open/floor/plating, -/area/maintenance/auxsolarstarboard{ - name = "Starboard Solar Maintenance" - }) -"aZL" = ( -/obj/machinery/power/solar_control{ - id = "starboardsolar"; - name = "Starboard Solar Control"; - track = 0 - }, -/obj/structure/cable, -/turf/open/floor/plating, -/area/maintenance/auxsolarstarboard{ - name = "Starboard Solar Maintenance" - }) -"aZM" = ( -/obj/machinery/atmospherics/pipe/manifold/cyan/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/plasteel, -/area/hallway/secondary/entry) -"aZN" = ( -/obj/machinery/door/firedoor, -/turf/open/floor/plasteel, -/area/hallway/secondary/entry) -"aZO" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - layer = 2.4; - on = 1 - }, -/turf/open/floor/plasteel, -/area/hallway/secondary/entry) -"aZP" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 8; - initialize_directions = 11 - }, -/turf/open/floor/plasteel, -/area/hallway/secondary/entry) -"aZQ" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel, -/area/hallway/secondary/entry) -"aZR" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass{ - name = "Central Access" - }, -/turf/open/floor/plasteel, -/area/hallway/secondary/entry) -"aZS" = ( -/obj/machinery/light/small{ - dir = 4 - }, -/obj/effect/decal/cleanable/cobweb{ - icon_state = "cobweb2" - }, -/obj/item/weapon/storage/box/matches{ - pixel_x = -3; - pixel_y = 8 - }, -/obj/item/weapon/storage/fancy/candle_box, -/obj/structure/table/wood/fancy, -/turf/open/floor/plasteel/black, -/area/chapel/main{ - name = "Monastery" - }) -"aZT" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/floorgrime, -/area/janitor) -"aZU" = ( -/obj/structure/table, -/obj/item/weapon/restraints/legcuffs/beartrap, -/obj/item/weapon/restraints/legcuffs/beartrap, -/obj/item/weapon/reagent_containers/spray/cleaner, -/turf/open/floor/plasteel/floorgrime, -/area/janitor) -"aZV" = ( -/obj/structure/table, -/obj/item/weapon/storage/box/lights/mixed{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/storage/box/mousetraps, -/turf/open/floor/plasteel/floorgrime, -/area/janitor) -"aZW" = ( -/obj/structure/sink{ - icon_state = "sink"; - dir = 8; - pixel_x = -12; - pixel_y = 2 - }, -/turf/open/floor/plasteel/green/side{ - dir = 8 - }, -/area/hydroponics) -"aZX" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel, -/area/hydroponics) -"aZY" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/hydroponics) -"aZZ" = ( -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/hydroponics) -"baa" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/hydroponics) -"bab" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass{ - cyclelinkeddir = 4; - name = "Hydroponics"; - req_access_txt = "35" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/hydroponics) -"bac" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/green/corner{ - dir = 1 - }, -/area/hallway/primary/central) -"bad" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 1; - initialize_directions = 11 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 4 - }, -/area/hallway/primary/central) -"bae" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass{ - cyclelinkeddir = 8; - name = "Kitchen"; - req_access_txt = "28" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/kitchen) -"baf" = ( -/obj/structure/disposalpipe/sortjunction{ - dir = 4; - icon_state = "pipe-j1s"; - sortType = 20 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/cafeteria, -/area/crew_quarters/kitchen) -"bag" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/cafeteria, -/area/crew_quarters/kitchen) -"bah" = ( -/obj/effect/landmark/start{ - name = "Cook" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/cafeteria, -/area/crew_quarters/kitchen) -"bai" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/cafeteria, -/area/crew_quarters/kitchen) -"baj" = ( -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/cafeteria, -/area/crew_quarters/kitchen) -"bak" = ( -/obj/structure/chair/stool/bar, -/obj/machinery/camera{ - c_tag = "Bar Port"; - dir = 1 - }, -/obj/machinery/light, -/turf/open/floor/plasteel/black, -/area/crew_quarters/bar) -"bal" = ( -/obj/item/weapon/reagent_containers/food/condiment/peppermill{ - pixel_x = 5; - pixel_y = -2 - }, -/obj/item/weapon/reagent_containers/food/condiment/saltshaker{ - layer = 3.1; - pixel_x = -2; - pixel_y = 2 - }, -/obj/structure/table/wood, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/bar) -"bam" = ( -/obj/structure/chair/wood/normal{ - icon_state = "wooden_chair"; - dir = 8 - }, -/obj/machinery/light, -/turf/open/floor/plasteel/black, -/area/crew_quarters/bar) -"ban" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/black, -/area/crew_quarters/bar) -"bao" = ( -/obj/structure/chair/wood/normal{ - icon_state = "wooden_chair"; - dir = 4 - }, -/obj/machinery/light, -/turf/open/floor/plasteel/black, -/area/crew_quarters/bar) -"bap" = ( -/obj/structure/table/wood, -/obj/item/weapon/kitchen/fork, -/obj/item/clothing/glasses/regular/hipster, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/bar) -"baq" = ( -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/bar) -"bar" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/camera{ - c_tag = "Bar Starboard"; - dir = 1 - }, -/obj/machinery/light, -/turf/open/floor/plasteel/black, -/area/crew_quarters/bar) -"bas" = ( -/obj/machinery/power/smes{ - charge = 5e+006 - }, -/obj/structure/cable, -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/turf/open/floor/plating, -/area/maintenance/port{ - name = "Monastery Maintenance" - }) -"bat" = ( -/obj/machinery/disposal/bin, -/obj/structure/disposalpipe/trunk{ - dir = 8 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/bar) -"bau" = ( -/turf/closed/wall, -/area/assembly/chargebay) -"bav" = ( -/obj/structure/table, -/obj/item/weapon/cartridge/quartermaster{ - pixel_x = 6; - pixel_y = 5 - }, -/obj/item/weapon/cartridge/quartermaster, -/obj/item/weapon/cartridge/quartermaster{ - pixel_x = -4; - pixel_y = 7 - }, -/obj/item/weapon/coin/silver, -/obj/machinery/status_display{ - dir = 4; - layer = 4; - pixel_x = -32; - pixel_y = 0; - supply_display = 1 - }, -/turf/open/floor/plasteel/brown{ - dir = 8 - }, -/area/quartermaster/qm) -"baw" = ( -/obj/structure/chair/office/dark{ - dir = 4 - }, -/obj/effect/landmark/start{ - name = "Quartermaster" - }, -/turf/open/floor/plasteel, -/area/quartermaster/qm) -"bax" = ( -/obj/machinery/computer/cargo, -/turf/open/floor/plasteel/brown{ - dir = 4 - }, -/area/quartermaster/qm) -"bay" = ( -/obj/machinery/mineral/equipment_vendor, -/turf/open/floor/plasteel/brown/corner{ - dir = 1; - tag = "icon-browncorner (NORTH)" - }, -/area/quartermaster/miningdock) -"baz" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/effect/landmark/start{ - name = "Shaft Miner" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/quartermaster/miningdock) -"baA" = ( -/turf/open/floor/plasteel, -/area/quartermaster/miningdock) -"baB" = ( -/obj/machinery/computer/shuttle/mining, -/turf/open/floor/plasteel/brown/corner, -/area/quartermaster/miningdock) -"baC" = ( -/obj/structure/chair{ - dir = 1 - }, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/labor) -"baD" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/effect/spawner/lootdrop/maintenance, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"baE" = ( -/obj/item/weapon/caution, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"baF" = ( -/obj/structure/table, -/obj/item/weapon/paper_bin{ - layer = 2.9; - pixel_x = 0; - pixel_y = 0; - tag = "every single paper bin is edited to this" - }, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"baG" = ( -/turf/closed/wall/mineral/titanium, -/area/shuttle/arrival) -"baH" = ( -/obj/machinery/door/airlock/titanium{ - name = "Arrivals Shuttle Airlock" - }, -/turf/open/floor/plating, -/area/shuttle/arrival) -"baI" = ( -/obj/structure/grille, -/obj/structure/window/shuttle, -/turf/open/floor/plating, -/area/shuttle/arrival) -"baJ" = ( -/obj/structure/shuttle/engine/propulsion{ - icon_state = "burst_r"; - dir = 8 - }, -/turf/open/floor/plasteel/black, -/area/shuttle/arrival) -"baK" = ( -/obj/machinery/camera{ - c_tag = "Arrivals Central"; - dir = 4; - network = list("SS13") - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 8; - initialize_directions = 11 - }, -/turf/open/floor/plasteel, -/area/hallway/secondary/entry) -"baL" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/hallway/secondary/entry) -"baM" = ( -/obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/hallway/secondary/entry) -"baN" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/firealarm{ - dir = 1; - pixel_y = -29 - }, -/turf/open/floor/plasteel, -/area/hallway/secondary/entry) -"baO" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/hallway/secondary/entry) -"baP" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/hallway/secondary/entry) -"baQ" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass{ - name = "Central Access" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/hallway/secondary/entry) -"baR" = ( -/obj/machinery/door/firedoor, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/sign/directions/evac{ - dir = 8; - icon_state = "direction_evac"; - pixel_x = 0; - pixel_y = -32; - tag = "icon-direction_evac (WEST)" - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"baS" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"baT" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/cable{ - icon_state = "1-8" - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"baU" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock{ - name = "Custodial Closet"; - req_access_txt = "26" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/floorgrime, -/area/janitor) -"baV" = ( -/obj/machinery/hydroponics/constructable, -/turf/open/floor/plasteel/green/side{ - dir = 10 - }, -/area/hydroponics) -"baW" = ( -/obj/machinery/hydroponics/constructable, -/turf/open/floor/plasteel/green/corner, -/area/hydroponics) -"baX" = ( -/obj/item/weapon/reagent_containers/glass/bucket, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/hydroponics) -"baY" = ( -/obj/structure/reagent_dispensers/watertank/high, -/turf/open/floor/plasteel/green/corner, -/area/hydroponics) -"baZ" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral/corner{ - dir = 4 - }, -/area/hallway/primary/central) -"bba" = ( -/obj/machinery/disposal/bin, -/obj/structure/disposalpipe/trunk{ - dir = 1 - }, -/obj/machinery/button/door{ - id = "kitchen"; - name = "Kitchen Shutters Control"; - pixel_x = -24; - pixel_y = 0; - req_access_txt = "28" - }, -/obj/machinery/light_switch{ - pixel_x = -34; - pixel_y = 1 - }, -/turf/open/floor/plasteel/cafeteria, -/area/crew_quarters/kitchen) -"bbb" = ( -/obj/machinery/power/terminal{ - dir = 8 - }, -/turf/open/floor/plating, -/area/maintenance/port{ - name = "Monastery Maintenance" - }) -"bbc" = ( -/obj/structure/sign/barsign, -/turf/closed/wall, -/area/crew_quarters/bar) -"bbd" = ( -/obj/item/weapon/wrench, -/turf/open/floor/plating, -/area/maintenance/port{ - name = "Monastery Maintenance" - }) -"bbe" = ( -/obj/item/stack/cable_coil, -/obj/item/stack/cable_coil, -/turf/open/floor/plating, -/area/maintenance/port{ - name = "Monastery Maintenance" - }) -"bbf" = ( -/obj/machinery/door/airlock/maintenance{ - req_access_txt = "12" - }, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"bbg" = ( -/obj/structure/table, -/obj/item/weapon/crowbar/large, -/obj/machinery/airalarm{ - pixel_y = 22 - }, -/obj/item/clothing/head/welding, -/turf/open/floor/plasteel, -/area/assembly/chargebay) -"bbh" = ( -/obj/structure/table, -/obj/item/weapon/storage/toolbox/mechanical, -/obj/machinery/power/apc{ - cell_type = 2500; - dir = 1; - name = "Captain's Office APC"; - pixel_y = 24 - }, -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/turf/open/floor/plasteel, -/area/assembly/chargebay) -"bbi" = ( -/obj/structure/reagent_dispensers/fueltank, -/obj/machinery/firealarm{ - dir = 1; - pixel_y = 24 - }, -/turf/open/floor/plasteel/delivery, -/area/assembly/chargebay) -"bbj" = ( -/obj/machinery/mech_bay_recharge_port, -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/obj/machinery/status_display{ - density = 0; - layer = 4; - pixel_x = 0; - pixel_y = 30 - }, -/turf/open/floor/plating, -/area/assembly/chargebay) -"bbk" = ( -/turf/open/floor/mech_bay_recharge_floor, -/area/assembly/chargebay) -"bbl" = ( -/obj/machinery/computer/mech_bay_power_console, -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/turf/open/floor/plasteel, -/area/assembly/chargebay) -"bbm" = ( -/obj/structure/table, -/obj/machinery/computer/stockexchange, -/obj/machinery/requests_console{ - department = "Cargo Bay"; - departmentType = 2; - pixel_x = -30; - pixel_y = 0 - }, -/turf/open/floor/plasteel/brown{ - dir = 10 - }, -/area/quartermaster/qm) -"bbn" = ( -/obj/structure/table, -/obj/item/weapon/clipboard, -/obj/item/weapon/stamp/qm{ - pixel_x = 0; - pixel_y = 0 - }, -/obj/machinery/light, -/obj/machinery/camera{ - c_tag = "Cargo Quartermaster's Office"; - dir = 1; - network = list("SS13") - }, -/turf/open/floor/plasteel/brown{ - dir = 2 - }, -/area/quartermaster/qm) -"bbo" = ( -/obj/machinery/computer/security/mining, -/obj/item/device/radio/intercom{ - name = "Station Intercom (General)"; - pixel_y = -35 - }, -/turf/open/floor/plasteel/brown{ - dir = 6 - }, -/area/quartermaster/qm) -"bbp" = ( -/obj/structure/rack{ - dir = 1 - }, -/obj/item/weapon/storage/toolbox/mechanical{ - pixel_x = -2; - pixel_y = -1 - }, -/obj/item/weapon/pickaxe{ - pixel_x = 5 - }, -/obj/item/weapon/shovel{ - pixel_x = -5 - }, -/obj/machinery/camera{ - c_tag = "Cargo Mining Dock"; - dir = 4 - }, -/turf/open/floor/plasteel/brown/corner{ - dir = 1; - tag = "icon-browncorner (NORTH)" - }, -/area/quartermaster/miningdock) -"bbq" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/effect/landmark/start{ - name = "Shaft Miner" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/quartermaster/miningdock) -"bbr" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - layer = 2.4; - on = 1 - }, -/turf/open/floor/plasteel, -/area/quartermaster/miningdock) -"bbs" = ( -/turf/open/floor/plasteel/brown/corner, -/area/quartermaster/miningdock) -"bbt" = ( -/obj/machinery/door/airlock/external{ - name = "Mining Dock Airlock"; - req_access = null; - req_access_txt = "48" - }, -/turf/open/floor/plating, -/area/quartermaster/miningdock) -"bbu" = ( -/turf/open/floor/plating, -/area/quartermaster/miningdock) -"bbv" = ( -/obj/machinery/door/airlock/titanium{ - name = "Mining Shuttle Airlock"; - req_access_txt = "48" - }, -/turf/open/floor/plating, -/area/shuttle/labor) -"bbw" = ( -/obj/machinery/door/airlock/titanium{ - name = "Mining Shuttle Airlock"; - req_access_txt = "48" - }, -/obj/docking_port/mobile{ - dir = 8; - dwidth = 3; - height = 5; - id = "mining"; - name = "mining shuttle"; - port_angle = 90; - width = 7 - }, -/obj/docking_port/stationary{ - dir = 8; - dwidth = 3; - height = 5; - id = "mining_home"; - name = "mining shuttle bay"; - width = 7 - }, -/turf/open/floor/plating, -/area/shuttle/labor) -"bbx" = ( -/obj/structure/chair{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"bby" = ( -/obj/machinery/light/small{ - dir = 4 - }, -/obj/structure/table, -/obj/item/weapon/paperplane, -/obj/item/trash/chips, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"bbz" = ( -/obj/structure/closet/emcloset, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"bbA" = ( -/obj/structure/closet/cabinet, -/obj/effect/spawner/lootdrop/maintenance, -/obj/item/weapon/circuitboard/machine/hydroponics, -/obj/item/weapon/electronics/apc, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"bbB" = ( -/obj/structure/table, -/obj/item/weapon/storage/firstaid/regular{ - pixel_y = 4 - }, -/obj/item/weapon/storage/toolbox/emergency, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/arrival) -"bbC" = ( -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/arrival) -"bbD" = ( -/obj/machinery/atmospherics/components/binary/pump{ - dir = 1; - name = "Air Out"; - on = 1 - }, -/turf/open/floor/plating, -/area/maintenance/port{ - name = "Monastery Maintenance" - }) -"bbE" = ( -/obj/structure/closet/wardrobe/black, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/arrival) -"bbF" = ( -/obj/structure/closet/wardrobe/mixed, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/arrival) -"bbG" = ( -/obj/machinery/requests_console{ - department = "Arrival shuttle"; - pixel_y = 30 - }, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/arrival) -"bbH" = ( -/obj/structure/shuttle/engine/heater{ - icon_state = "heater"; - dir = 4 - }, -/obj/structure/window/reinforced{ - dir = 8 - }, -/turf/open/floor/plasteel/black, -/area/shuttle/arrival) -"bbI" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/hidden, -/turf/open/floor/plasteel/neutral/corner, -/area/hallway/secondary/entry) -"bbJ" = ( -/turf/closed/wall/r_wall, -/area/construction/quarters{ - name = "Lounge" - }) -"bbK" = ( -/obj/structure/grille, -/obj/structure/window/fulltile, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "loungeshutters"; - name = "privacy shutters" - }, -/turf/open/floor/plating, -/area/construction/quarters{ - name = "Lounge" - }) -"bbL" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass{ - name = "Lounge" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plasteel, -/area/construction/quarters{ - name = "Lounge" - }) -"bbM" = ( -/obj/structure/grille, -/obj/structure/window/fulltile, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "loungeshutters"; - name = "privacy shutters" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/construction/quarters{ - name = "Lounge" - }) -"bbN" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/sign/directions/security{ - dir = 1; - icon_state = "direction_sec"; - pixel_x = 32; - pixel_y = 40 - }, -/obj/structure/sign/directions/medical{ - dir = 4; - icon_state = "direction_med"; - pixel_x = 32; - pixel_y = 32 - }, -/obj/structure/sign/directions/science{ - dir = 4; - icon_state = "direction_sci"; - pixel_x = 32; - pixel_y = 24 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"bbO" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/purple/corner{ - dir = 4 - }, -/area/hallway/primary/central) -"bbP" = ( -/obj/structure/chair{ - name = "Throne of Custodia" - }, -/obj/item/device/radio/intercom{ - dir = 0; - name = "Station Intercom (General)"; - pixel_x = 0; - pixel_y = 26 - }, -/turf/open/floor/plasteel/purple/corner{ - dir = 4 - }, -/area/hallway/primary/central) -"bbQ" = ( -/obj/machinery/vending/cola, -/obj/structure/sign/map{ - icon_state = "map-pubby"; - pixel_y = 32 - }, -/turf/open/floor/plasteel/purple/corner{ - dir = 4 - }, -/area/hallway/primary/central) -"bbR" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/hydroponics) -"bbS" = ( -/obj/structure/table/reinforced, -/obj/machinery/door/firedoor, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "kitchen"; - name = "kitchen shutters" - }, -/turf/open/floor/plasteel/cafeteria, -/area/crew_quarters/kitchen) -"bbT" = ( -/obj/structure/table/reinforced, -/obj/machinery/door/firedoor, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "kitchen"; - name = "kitchen shutters" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/cafeteria, -/area/crew_quarters/kitchen) -"bbU" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/sign/poster{ - pixel_y = 32 - }, -/obj/structure/chair{ - dir = 4 - }, -/obj/structure/extinguisher_cabinet{ - pixel_x = -27; - pixel_y = 0 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 1 - }, -/area/hallway/primary/central) -"bbV" = ( -/obj/structure/chair{ - dir = 8 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 1 - }, -/area/hallway/primary/central) -"bbW" = ( -/obj/machinery/light{ - dir = 1 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 1 - }, -/area/hallway/primary/central) -"bbX" = ( -/obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/door/airlock/glass{ - name = "Bar" - }, -/turf/open/floor/plasteel, -/area/crew_quarters/bar) -"bbY" = ( -/turf/open/floor/plasteel/neutral/corner{ - dir = 4 - }, -/area/hallway/primary/central) -"bbZ" = ( -/obj/machinery/light{ - dir = 1 - }, -/obj/machinery/airalarm{ - pixel_y = 24 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 4 - }, -/area/hallway/primary/central) -"bca" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/maintenance/port{ - name = "Monastery Maintenance" - }) -"bcb" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/sign/directions/evac{ - dir = 1; - icon_state = "direction_evac"; - pixel_x = -32; - pixel_y = 38; - tag = "icon-direction_evac (NORTH)" - }, -/obj/structure/sign/directions/medical{ - dir = 8; - icon_state = "direction_med"; - pixel_x = -32; - pixel_y = 28; - tag = "icon-direction_med (WEST)" - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"bcc" = ( -/turf/open/floor/plasteel/purple/corner, -/area/hallway/primary/central) -"bcd" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/poddoor/shutters{ - id = "Skynet_launch"; - name = "mech bay" - }, -/turf/open/floor/plasteel/delivery, -/area/assembly/chargebay) -"bce" = ( -/obj/effect/decal/cleanable/oil, -/obj/effect/decal/cleanable/robot_debris{ - icon_state = "gib3" - }, -/turf/open/floor/plasteel/floorgrime, -/area/assembly/chargebay) -"bcf" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0; - tag = "" - }, -/turf/open/floor/plasteel/warning/corner{ - tag = "icon-plasteel_warn_corner (WEST)"; - icon_state = "plasteel_warn_corner"; - dir = 8 - }, -/area/assembly/chargebay) -"bcg" = ( -/turf/open/floor/plasteel, -/area/assembly/chargebay) -"bch" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0; - tag = "" - }, -/turf/open/floor/plasteel/circuit/gcircuit, -/area/assembly/chargebay) -"bci" = ( -/turf/open/floor/plasteel/circuit/gcircuit, -/area/assembly/chargebay) -"bcj" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0; - tag = "" - }, -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/obj/structure/extinguisher_cabinet{ - pixel_x = 27; - pixel_y = 0 - }, -/turf/open/floor/plasteel/circuit/gcircuit, -/area/assembly/chargebay) -"bck" = ( -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/obj/machinery/power/apc{ - dir = 8; - name = "Mining Dock APC"; - pixel_x = -24; - pixel_y = 0; - pixel_z = 0 - }, -/turf/open/floor/plasteel/brown/corner{ - dir = 1; - tag = "icon-browncorner (NORTH)" - }, -/area/quartermaster/miningdock) -"bcl" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/quartermaster/miningdock) -"bcm" = ( -/obj/structure/table, -/obj/item/weapon/paperplane, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"bcn" = ( -/turf/open/floor/plating{ - icon_state = "platingdmg3" - }, -/area/maintenance/apmaint) -"bco" = ( -/obj/structure/chair{ - dir = 8 - }, -/obj/effect/landmark{ - name = "JoinLate" - }, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/arrival) -"bcp" = ( -/obj/effect/landmark/start{ - name = "Assistant" - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - external_pressure_bound = 101.325; - on = 1; - pressure_checks = 1 - }, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/arrival) -"bcq" = ( -/obj/structure/shuttle/engine/propulsion{ - icon_state = "propulsion"; - dir = 8 - }, -/turf/open/floor/plasteel/black, -/area/shuttle/arrival) -"bcr" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plasteel, -/area/hallway/secondary/entry) -"bcs" = ( -/obj/structure/table/wood, -/obj/item/device/flashlight/lamp/green{ - pixel_x = 1; - pixel_y = 5 - }, -/turf/open/floor/plasteel/grimy, -/area/construction/quarters{ - name = "Lounge" - }) -"bct" = ( -/turf/open/floor/plasteel/grimy, -/area/construction/quarters{ - name = "Lounge" - }) -"bcu" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/grimy, -/area/construction/quarters{ - name = "Lounge" - }) -"bcv" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 9 - }, -/turf/open/floor/plasteel/grimy, -/area/construction/quarters{ - name = "Lounge" - }) -"bcw" = ( -/obj/structure/table/wood, -/obj/item/device/flashlight/lamp/green{ - pixel_x = 1; - pixel_y = 5 - }, -/obj/machinery/button/door{ - id = "loungeshutters"; - name = "Privacy Shutters"; - pixel_y = 25 - }, -/turf/open/floor/plasteel/grimy, -/area/construction/quarters{ - name = "Lounge" - }) -"bcx" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/structure/disposalpipe/sortjunction{ - dir = 1; - icon_state = "pipe-j1s"; - sortType = 22 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"bcy" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 5 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"bcz" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/junction{ - dir = 8; - icon_state = "pipe-j1" - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"bcA" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"bcB" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"bcC" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"bcD" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"bcE" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold-b-f (NORTH)"; - dir = 1 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"bcF" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/sign/directions/engineering{ - pixel_x = 32; - pixel_y = 28 - }, -/obj/structure/sign/directions/evac{ - dir = 1; - icon_state = "direction_evac"; - pixel_x = 32; - pixel_y = 38; - tag = "icon-direction_evac (NORTH)" - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"bcG" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - tag = "icon-intact (SOUTHEAST)"; - icon_state = "intact"; - dir = 6 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bcH" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"bcI" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 1 - }, -/obj/machinery/navbeacon{ - codes_txt = "patrol;next_patrol=Bar1"; - location = "Robo" - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"bcJ" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/purple/corner, -/area/hallway/primary/central) -"bcK" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/poddoor/shutters{ - id = "Skynet_launch"; - name = "mech bay" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/delivery, -/area/assembly/chargebay) -"bcL" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/assembly/chargebay) -"bcM" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4"; - tag = "" - }, -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold-b-f (NORTH)"; - dir = 1 - }, -/turf/open/floor/plasteel, -/area/assembly/chargebay) -"bcN" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 10 - }, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/assembly/chargebay) -"bcO" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4"; - tag = "" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/bluegrid, -/area/assembly/chargebay) -"bcP" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/bluegrid, -/area/assembly/chargebay) -"bcQ" = ( -/obj/machinery/door/airlock/maintenance{ - name = "Mech Bay Maintenance"; - req_access_txt = "29" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plating, -/area/assembly/chargebay) -"bcR" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"bcS" = ( -/obj/machinery/door/airlock/maintenance{ - name = "Mining Maintenance"; - req_access_txt = "48" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/quartermaster/miningdock) -"bcT" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/structure/cable{ - icon_state = "1-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/brown{ - dir = 10 - }, -/area/quartermaster/miningdock) -"bcU" = ( -/obj/structure/closet/secure_closet/miner, -/obj/structure/cable{ - icon_state = "1-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 9; - pixel_y = 0 - }, -/turf/open/floor/plasteel/brown, -/area/quartermaster/miningdock) -"bcV" = ( -/obj/structure/closet/secure_closet/miner, -/obj/machinery/light, -/turf/open/floor/plasteel/brown, -/area/quartermaster/miningdock) -"bcW" = ( -/obj/structure/closet/secure_closet/miner, -/obj/structure/extinguisher_cabinet{ - pixel_x = 27; - pixel_y = 0 - }, -/turf/open/floor/plasteel/brown{ - dir = 6 - }, -/area/quartermaster/miningdock) -"bcX" = ( -/obj/structure/shuttle/engine/heater, -/turf/open/floor/plating, -/area/shuttle/labor) -"bcY" = ( -/obj/structure/ore_box, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/labor) -"bcZ" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"bda" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"bdb" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/structure/grille/broken, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"bdc" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"bdd" = ( -/obj/effect/landmark{ - name = "Observer-Start" - }, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/arrival) -"bde" = ( -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/obj/machinery/atmospherics/pipe/simple/cyan/hidden, -/turf/open/floor/plasteel/neutral/corner, -/area/hallway/secondary/entry) -"bdf" = ( -/obj/structure/chair/comfy/beige{ - dir = 4 - }, -/obj/machinery/newscaster{ - pixel_x = -32 - }, -/turf/open/floor/plasteel/grimy, -/area/construction/quarters{ - name = "Lounge" - }) -"bdg" = ( -/turf/open/floor/carpet, -/area/construction/quarters{ - name = "Lounge" - }) -"bdh" = ( -/obj/structure/cable{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/carpet, -/area/construction/quarters{ - name = "Lounge" - }) -"bdi" = ( -/obj/structure/extinguisher_cabinet{ - pixel_x = 24 - }, -/obj/item/stack/rods{ - amount = 50 - }, -/turf/open/floor/plating, -/area/maintenance/port{ - name = "Monastery Maintenance" - }) -"bdj" = ( -/obj/structure/chair/comfy/beige{ - dir = 8 - }, -/obj/machinery/camera{ - c_tag = "Lounge"; - dir = 8 - }, -/turf/open/floor/plasteel/grimy, -/area/construction/quarters{ - name = "Lounge" - }) -"bdk" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 8 - }, -/obj/structure/extinguisher_cabinet{ - pixel_x = -27; - pixel_y = -1 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"bdl" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"bdm" = ( -/obj/machinery/navbeacon{ - codes_txt = "patrol;next_patrol=BrigS1"; - location = "Lounge" - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"bdn" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"bdo" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 2; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"bdp" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/navbeacon{ - codes_txt = "patrol;next_patrol=Eng"; - location = "Bar1" - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"bdq" = ( -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/obj/machinery/button/door{ - dir = 2; - id = "Skynet_launch"; - name = "Mech Bay Door Control"; - pixel_x = 25; - pixel_y = 0 - }, -/turf/open/floor/plasteel/purple/corner, -/area/hallway/primary/central) -"bdr" = ( -/obj/machinery/light{ - dir = 8 - }, -/obj/machinery/button/door{ - dir = 2; - id = "Skynet_launch"; - name = "Mech Bay Door Control"; - pixel_x = -25; - pixel_y = 0 - }, -/obj/machinery/camera{ - c_tag = "Mech Bay"; - dir = 4 - }, -/turf/open/floor/plasteel, -/area/assembly/chargebay) -"bds" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0; - tag = "" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/assembly/chargebay) -"bdt" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/obj/effect/landmark/event_spawn, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/assembly/chargebay) -"bdu" = ( -/obj/machinery/mech_bay_recharge_port, -/obj/structure/cable, -/turf/open/floor/plating, -/area/assembly/chargebay) -"bdv" = ( -/obj/machinery/computer/mech_bay_power_console, -/obj/structure/cable, -/turf/open/floor/plasteel, -/area/assembly/chargebay) -"bdw" = ( -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"bdx" = ( -/turf/closed/wall, -/area/space) -"bdy" = ( -/obj/structure/shuttle/engine/propulsion/burst, -/obj/structure/window/reinforced{ - dir = 1; - layer = 2.9 - }, -/turf/open/floor/plating/airless, -/area/shuttle/labor) -"bdz" = ( -/obj/structure/closet/emcloset, -/obj/item/weapon/storage/firstaid/o2, -/obj/item/weapon/tank/internals/emergency_oxygen, -/obj/item/clothing/mask/breath, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/arrival) -"bdA" = ( -/obj/item/device/radio/intercom{ - name = "Station Intercom (General)"; - pixel_y = -29 - }, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/arrival) -"bdB" = ( -/obj/structure/shuttle/engine/propulsion{ - icon_state = "burst_l"; - dir = 8 - }, -/turf/open/floor/plasteel/black, -/area/shuttle/arrival) -"bdC" = ( -/obj/structure/chair/comfy/beige{ - dir = 4 - }, -/turf/open/floor/plasteel/grimy, -/area/construction/quarters{ - name = "Lounge" - }) -"bdD" = ( -/obj/effect/landmark/start{ - name = "Assistant" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/turf/open/floor/carpet, -/area/construction/quarters{ - name = "Lounge" - }) -"bdE" = ( -/obj/structure/chair/comfy/beige{ - dir = 8 - }, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8"; - tag = "" - }, -/turf/open/floor/plasteel/grimy, -/area/construction/quarters{ - name = "Lounge" - }) -"bdF" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 5 - }, -/obj/structure/chair{ - dir = 4 - }, -/obj/structure/sign/poster{ - pixel_x = -32 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"bdG" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 1; - initialize_directions = 11 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"bdH" = ( -/obj/machinery/light, -/obj/machinery/camera{ - c_tag = "Central Primary Hallway Genetics"; - dir = 1 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"bdI" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/blue/corner, -/area/hallway/primary/central) -"bdJ" = ( -/obj/machinery/light, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/firealarm{ - dir = 1; - pixel_y = -26 - }, -/turf/open/floor/plasteel/blue/corner, -/area/hallway/primary/central) -"bdK" = ( -/obj/machinery/light, -/obj/machinery/camera{ - c_tag = "Central Primary Hallway Hydroponics"; - dir = 1 - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/open/floor/plasteel/blue/corner, -/area/hallway/primary/central) -"bdL" = ( -/obj/machinery/light, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/blue/corner, -/area/hallway/primary/central) -"bdM" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - initialize_directions = 11 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"bdN" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/obj/machinery/navbeacon{ - codes_txt = "patrol;next_patrol=Lounge"; - location = "Bar2" - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"bdO" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"bdP" = ( -/obj/machinery/camera{ - c_tag = "Central Primary Hallway Robotics"; - dir = 1 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/purple/corner, -/area/hallway/primary/central) -"bdQ" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/purple/corner, -/area/hallway/primary/central) -"bdR" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/research{ - name = "Mech Bay"; - req_access_txt = "29"; - req_one_access_txt = "0" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/assembly/chargebay) -"bdS" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel, -/area/assembly/chargebay) -"bdT" = ( -/obj/machinery/recharge_station, -/turf/open/floor/plasteel/bot, -/area/assembly/chargebay) -"bdU" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/effect/decal/cleanable/robot_debris{ - icon_state = "gib3" - }, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"bdV" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"bdW" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 5 - }, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"bdX" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/mob/living/simple_animal/mouse/gray, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"bdY" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/structure/disposalpipe/junction{ - dir = 8; - icon_state = "pipe-j2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"bdZ" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 10 - }, -/obj/item/weapon/shard{ - icon_state = "small" - }, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"bea" = ( -/obj/structure/reagent_dispensers/watertank, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"beb" = ( -/obj/structure/rack, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 2; - name = "2maintenance loot spawner" - }, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"bec" = ( -/obj/item/weapon/cigbutt/cigarbutt, -/obj/effect/decal/cleanable/cobweb{ - icon_state = "cobweb2" - }, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"bed" = ( -/obj/machinery/door/airlock/titanium{ - name = "Arrivals Shuttle Airlock" - }, -/obj/docking_port/mobile{ - dwidth = 4; - height = 6; - id = "arrival"; - name = "arrival shuttle"; - port_angle = -90; - preferred_direction = 8; - width = 13 - }, -/obj/docking_port/stationary{ - dwidth = 4; - height = 6; - id = "arrival_home"; - name = "port bay 1"; - width = 13 - }, -/turf/open/floor/plating, -/area/shuttle/arrival) -"bee" = ( -/obj/machinery/atmospherics/pipe/manifold/cyan/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/plasteel/neutral/corner, -/area/hallway/secondary/entry) -"bef" = ( -/obj/structure/grille, -/obj/structure/window/fulltile, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "loungeshutters"; - name = "privacy shutters" - }, -/obj/machinery/atmospherics/pipe/simple/cyan/hidden{ - tag = "icon-intact (EAST)"; - icon_state = "intact"; - dir = 4 - }, -/turf/open/floor/plating, -/area/construction/quarters{ - name = "Lounge" - }) -"beg" = ( -/obj/structure/table/wood, -/obj/item/device/flashlight/lamp/green{ - pixel_x = 1; - pixel_y = 5 - }, -/obj/machinery/airalarm{ - dir = 1; - pixel_y = -22 - }, -/obj/machinery/atmospherics/pipe/simple/cyan/hidden{ - tag = "icon-intact (EAST)"; - icon_state = "intact"; - dir = 4 - }, -/turf/open/floor/plasteel/grimy, -/area/construction/quarters{ - name = "Lounge" - }) -"beh" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/hidden{ - tag = "icon-intact (EAST)"; - icon_state = "intact"; - dir = 4 - }, -/turf/open/floor/plasteel/grimy, -/area/construction/quarters{ - name = "Lounge" - }) -"bei" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - layer = 2.4; - on = 1 - }, -/turf/open/floor/plasteel/grimy, -/area/construction/quarters{ - name = "Lounge" - }) -"bej" = ( -/obj/structure/table/glass, -/obj/item/device/healthanalyzer{ - layer = 3.1 - }, -/obj/item/weapon/pen{ - layer = 3.2 - }, -/turf/open/floor/plasteel/blue/side, -/area/hallway/primary/central) -"bek" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/purple/side, -/area/hallway/primary/central) -"bel" = ( -/obj/structure/closet/firecloset, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"bem" = ( -/turf/closed/wall, -/area/storage/emergency2) -"ben" = ( -/obj/machinery/door/airlock{ - name = "Port Emergency Storage"; - req_access_txt = "0" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plating, -/area/storage/emergency2) -"beo" = ( -/turf/closed/wall, -/area/medical/morgue) -"bep" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/centcom{ - name = "Morgue"; - opacity = 1; - req_access_txt = "6" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/black, -/area/medical/morgue) -"beq" = ( -/turf/closed/wall, -/area/security/checkpoint/medical) -"ber" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall, -/area/security/checkpoint/medical) -"bes" = ( -/turf/closed/wall, -/area/medical/medbay) -"bet" = ( -/obj/structure/grille, -/obj/structure/window/fulltile, -/turf/open/floor/plating, -/area/medical/medbay) -"beu" = ( -/obj/structure/sign/bluecross_2, -/turf/closed/wall, -/area/medical/medbay) -"bev" = ( -/obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/white/side, -/area/medical/medbay) -"bew" = ( -/obj/machinery/door/firedoor, -/turf/open/floor/plasteel/white/side, -/area/medical/medbay) -"bex" = ( -/obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/white/side, -/area/medical/medbay) -"bey" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-10"; - layer = 4.1 - }, -/turf/open/floor/plasteel/blue/side, -/area/hallway/primary/central) -"bez" = ( -/obj/machinery/camera{ - c_tag = "Central Primary Hallway Bar"; - dir = 1 - }, -/obj/machinery/light, -/turf/open/floor/plasteel/blue/side, -/area/hallway/primary/central) -"beA" = ( -/obj/machinery/light, -/turf/open/floor/plasteel/purple/side, -/area/hallway/primary/central) -"beB" = ( -/obj/structure/grille, -/obj/structure/window/fulltile, -/turf/open/floor/plating, -/area/medical/research{ - name = "Research Division" - }) -"beC" = ( -/obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/white/side, -/area/medical/research{ - name = "Research Division" - }) -"beD" = ( -/obj/machinery/door/firedoor, -/turf/open/floor/plasteel/white/side, -/area/medical/research{ - name = "Research Division" - }) -"beE" = ( -/obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/white/side, -/area/medical/research{ - name = "Research Division" - }) -"beF" = ( -/obj/structure/sign/science, -/turf/closed/wall, -/area/medical/research{ - name = "Research Division" - }) -"beG" = ( -/turf/closed/wall, -/area/medical/research{ - name = "Research Division" - }) -"beH" = ( -/turf/open/floor/plasteel/purple/side, -/area/hallway/primary/central) -"beI" = ( -/turf/closed/wall/r_wall, -/area/assembly/chargebay) -"beJ" = ( -/turf/closed/wall/r_wall, -/area/toxins/explab) -"beK" = ( -/turf/closed/wall/r_wall, -/area/maintenance/apmaint) -"beL" = ( -/obj/structure/plasticflaps{ - opacity = 1 - }, -/turf/open/floor/plasteel/delivery, -/area/toxins/explab) -"beM" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating{ - icon_state = "platingdmg3" - }, -/area/maintenance/apmaint) -"beN" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/effect/spawner/lootdrop/maintenance, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"beO" = ( -/obj/structure/cable{ - icon_state = "1-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"beP" = ( -/obj/structure/grille, -/obj/structure/window/fulltile, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"beQ" = ( -/obj/effect/spawner/lootdrop/maintenance, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"beR" = ( -/obj/item/trash/sosjerky, -/obj/effect/decal/cleanable/vomit/old, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"beS" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"beT" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 10 - }, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"beU" = ( -/obj/structure/bookcase/random/nonfiction, -/turf/open/floor/wood, -/area/construction/quarters{ - name = "Lounge" - }) -"beV" = ( -/obj/structure/bookcase/random/fiction, -/turf/open/floor/wood, -/area/construction/quarters{ - name = "Lounge" - }) -"beW" = ( -/obj/structure/bookcase/random/religion, -/turf/open/floor/wood, -/area/construction/quarters{ - name = "Lounge" - }) -"beX" = ( -/turf/closed/wall, -/area/medical/genetics) -"beY" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/research{ - name = "Genetics Access"; - req_access_txt = "0"; - req_one_access_txt = "5;9" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/freezer, -/area/medical/genetics) -"beZ" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plating{ - icon_state = "platingdmg3" - }, -/area/storage/emergency2) -"bfa" = ( -/obj/structure/plasticflaps{ - opacity = 1 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/storage/emergency2) -"bfb" = ( -/obj/machinery/door/window/eastleft{ - dir = 4; - name = "Medical Delivery"; - req_access_txt = "5" - }, -/obj/machinery/navbeacon{ - codes_txt = "delivery;dir=2"; - dir = 4; - freq = 1400; - location = "Medbay" - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/medical/morgue) -"bfc" = ( -/turf/open/floor/plasteel/black, -/area/medical/morgue) -"bfd" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 6 - }, -/obj/machinery/airalarm{ - frequency = 1439; - locked = 0; - pixel_y = 23 - }, -/turf/open/floor/plasteel/black, -/area/medical/morgue) -"bfe" = ( -/obj/machinery/power/apc{ - dir = 1; - name = "Morgue APC"; - pixel_y = 24 - }, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/medical/morgue) -"bff" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 9 - }, -/turf/open/floor/plasteel/black, -/area/medical/morgue) -"bfg" = ( -/obj/structure/filingcabinet, -/obj/machinery/requests_console{ - department = "Security"; - departmentType = 5; - pixel_y = 30 - }, -/obj/machinery/airalarm{ - dir = 4; - pixel_x = -23; - pixel_y = 0 - }, -/turf/open/floor/plasteel/red/side{ - dir = 9 - }, -/area/security/checkpoint/medical) -"bfh" = ( -/obj/structure/table, -/obj/machinery/recharger{ - pixel_y = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/item/device/radio/intercom{ - dir = 0; - name = "Station Intercom (General)"; - pixel_x = 0; - pixel_y = 26 - }, -/turf/open/floor/plasteel/red/side{ - dir = 1 - }, -/area/security/checkpoint/medical) -"bfi" = ( -/obj/machinery/computer/secure_data, -/obj/structure/reagent_dispensers/peppertank{ - pixel_x = 0; - pixel_y = 30 - }, -/turf/open/floor/plasteel/red/side{ - dir = 1 - }, -/area/security/checkpoint/medical) -"bfj" = ( -/obj/machinery/computer/security, -/turf/open/floor/plasteel/red/side{ - dir = 5 - }, -/area/security/checkpoint/medical) -"bfk" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/medical/medbay) -"bfl" = ( -/obj/structure/table, -/obj/item/weapon/storage/firstaid/regular, -/obj/machinery/airalarm{ - pixel_y = 22 - }, -/turf/open/floor/plasteel/whiteblue/side{ - dir = 1 - }, -/area/medical/medbay) -"bfm" = ( -/obj/structure/chair, -/turf/open/floor/plasteel/whiteblue/side{ - dir = 1; - tag = "icon-whiteblue (NORTH)" - }, -/area/medical/medbay) -"bfn" = ( -/obj/structure/chair, -/obj/machinery/light{ - dir = 1 - }, -/turf/open/floor/plasteel/whiteblue/side{ - dir = 1; - tag = "icon-whiteblue (NORTH)" - }, -/area/medical/medbay) -"bfo" = ( -/obj/machinery/disposal/bin, -/obj/structure/disposalpipe/trunk, -/turf/open/floor/plasteel/whiteblue/side{ - dir = 1 - }, -/area/medical/medbay) -"bfp" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"bfq" = ( -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"bfr" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"bfs" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass{ - name = "Diner" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"bft" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass{ - name = "Diner" - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"bfu" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass{ - name = "Diner" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"bfv" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/white, -/area/medical/research{ - name = "Research Division" - }) -"bfw" = ( -/turf/open/floor/plasteel/white, -/area/medical/research{ - name = "Research Division" - }) -"bfx" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/white, -/area/medical/research{ - name = "Research Division" - }) -"bfy" = ( -/obj/machinery/disposal/bin, -/obj/structure/disposalpipe/trunk, -/turf/open/floor/plasteel/whitepurple/side{ - dir = 1 - }, -/area/medical/research{ - name = "Research Division" - }) -"bfz" = ( -/obj/structure/table, -/obj/item/device/assembly/igniter{ - pixel_x = -4; - pixel_y = -4 - }, -/obj/item/weapon/screwdriver{ - pixel_y = 16 - }, -/obj/item/device/gps{ - gpstag = "RD0" - }, -/obj/item/clothing/head/welding, -/turf/open/floor/plasteel/whitepurple/side{ - dir = 1 - }, -/area/medical/research{ - name = "Research Division" - }) -"bfA" = ( -/obj/machinery/modular_computer/console/preset/civilian, -/turf/open/floor/plasteel/whitepurple/side{ - dir = 1 - }, -/area/medical/research{ - name = "Research Division" - }) -"bfB" = ( -/obj/structure/table, -/obj/item/weapon/electronics/apc, -/obj/item/weapon/wrench, -/obj/item/stack/cable_coil, -/obj/item/weapon/electronics/airlock, -/turf/open/floor/plasteel/whitepurple/side{ - dir = 1 - }, -/area/medical/research{ - name = "Research Division" - }) -"bfC" = ( -/turf/closed/wall/r_wall, -/area/assembly/robotics) -"bfD" = ( -/obj/structure/grille, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "robotics"; - name = "robotics lab shutters" - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/assembly/robotics) -"bfE" = ( -/obj/structure/table/reinforced, -/obj/machinery/door/window/eastright{ - base_state = "left"; - dir = 2; - icon_state = "left"; - name = "Robotics Desk"; - req_access_txt = "29" - }, -/obj/item/weapon/paper_bin{ - pixel_x = 0; - pixel_y = 0 - }, -/obj/item/weapon/pen, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "robotics"; - name = "robotics lab shutters" - }, -/turf/open/floor/plating, -/area/assembly/robotics) -"bfF" = ( -/obj/machinery/door/firedoor, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0; - tag = "" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/research{ - name = "Mech Bay"; - req_access_txt = "29"; - req_one_access_txt = "0" - }, -/turf/open/floor/plasteel, -/area/assembly/robotics) -"bfG" = ( -/turf/open/floor/engine, -/area/toxins/explab) -"bfH" = ( -/obj/machinery/camera{ - c_tag = "Experimentor Lab Chamber"; - dir = 2; - network = list("SS13","RD") - }, -/turf/open/floor/engine, -/area/toxins/explab) -"bfI" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/engine, -/area/toxins/explab) -"bfJ" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 10 - }, -/turf/open/floor/engine, -/area/toxins/explab) -"bfK" = ( -/obj/machinery/door/airlock/maintenance{ - name = "Testing Lab Maintenance"; - req_access_txt = "47" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plating, -/area/toxins/explab) -"bfL" = ( -/obj/machinery/door/window/eastright{ - base_state = "left"; - dir = 2; - icon_state = "left"; - name = "Research Division Delivery"; - req_access_txt = "47" - }, -/obj/machinery/navbeacon{ - codes_txt = "delivery;dir=2"; - dir = 8; - freq = 1400; - location = "Research Division" - }, -/turf/open/floor/plasteel/delivery, -/area/toxins/explab) -"bfM" = ( -/obj/item/weapon/shard, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"bfN" = ( -/turf/closed/wall/r_wall, -/area/toxins/xenobiology) -"bfO" = ( -/obj/machinery/atmospherics/pipe/simple/general/hidden{ - tag = "icon-intact (SOUTHEAST)"; - icon_state = "intact"; - dir = 6 - }, -/turf/closed/wall/r_wall, -/area/toxins/xenobiology) -"bfP" = ( -/obj/machinery/atmospherics/pipe/simple/general/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/closed/wall/r_wall, -/area/toxins/xenobiology) -"bfQ" = ( -/obj/machinery/atmospherics/pipe/simple/general/hidden{ - tag = "icon-intact (SOUTHWEST)"; - icon_state = "intact"; - dir = 10 - }, -/turf/closed/wall/r_wall, -/area/toxins/xenobiology) -"bfR" = ( -/obj/item/weapon/extinguisher, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"bfS" = ( -/obj/structure/reagent_dispensers/fueltank, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"bfT" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 5 - }, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"bfU" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/light/small{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"bfV" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"bfW" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/item/trash/deadmouse, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 10 - }, -/obj/effect/landmark{ - name = "revenantspawn" - }, -/turf/open/floor/plating{ - broken = 1; - icon_state = "platingdmg1" - }, -/area/maintenance/apmaint) -"bfX" = ( -/obj/machinery/portable_atmospherics/canister, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"bfY" = ( -/obj/machinery/portable_atmospherics/canister/oxygen, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"bfZ" = ( -/obj/item/weapon/tank/internals/air, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"bga" = ( -/obj/machinery/vending/snack, -/turf/open/floor/plasteel/warning{ - dir = 9 - }, -/area/hallway/secondary/entry) -"bgb" = ( -/obj/machinery/light{ - dir = 1 - }, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/hallway/secondary/entry) -"bgc" = ( -/obj/structure/closet/emcloset, -/turf/open/floor/plasteel/warning{ - dir = 5 - }, -/area/hallway/secondary/entry) -"bgd" = ( -/obj/machinery/light/small{ - dir = 8 - }, -/obj/machinery/photocopier, -/turf/open/floor/plasteel/black, -/area/library) -"bge" = ( -/turf/closed/wall, -/area/mining_construction{ - name = "Auxillary Closet Construction" - }) -"bgf" = ( -/obj/item/weapon/hemostat, -/obj/item/weapon/retractor, -/obj/item/weapon/cautery, -/obj/effect/spawner/lootdrop/maintenance, -/obj/effect/decal/cleanable/cobweb{ - icon_state = "cobweb2" - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"bgg" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/extinguisher_cabinet{ - pixel_x = -26 - }, -/turf/open/floor/plasteel/freezer, -/area/medical/genetics) -"bgh" = ( -/turf/open/floor/plasteel/freezer, -/area/medical/genetics) -"bgi" = ( -/obj/machinery/light{ - dir = 1 - }, -/obj/machinery/camera{ - c_tag = "Genetics Cloning Foyer"; - dir = 2; - network = list("SS13") - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - on = 1 - }, -/obj/machinery/airalarm{ - pixel_y = 22 - }, -/turf/open/floor/plasteel/freezer, -/area/medical/genetics) -"bgj" = ( -/obj/structure/table, -/obj/item/weapon/paper_bin{ - layer = 2.9; - pixel_x = 0; - pixel_y = 0; - tag = "every single paper bin is edited to this" - }, -/obj/item/weapon/pen, -/obj/structure/sign/poster{ - pixel_x = 32 - }, -/turf/open/floor/plasteel/freezer, -/area/medical/genetics) -"bgk" = ( -/obj/machinery/portable_atmospherics/canister/oxygen, -/turf/open/floor/plating{ - icon_state = "panelscorched" - }, -/area/storage/emergency2) -"bgl" = ( -/obj/item/weapon/storage/box/lights/mixed, -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/plating, -/area/storage/emergency2) -"bgm" = ( -/obj/item/weapon/extinguisher, -/obj/structure/cable{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plating, -/area/storage/emergency2) -"bgn" = ( -/obj/structure/bodycontainer/morgue, -/obj/effect/landmark{ - name = "revenantspawn" - }, -/turf/open/floor/plasteel/black, -/area/medical/morgue) -"bgo" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/black, -/area/medical/morgue) -"bgp" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/black, -/area/medical/morgue) -"bgq" = ( -/obj/structure/chair{ - dir = 8 - }, -/turf/open/floor/plasteel/black, -/area/medical/morgue) -"bgr" = ( -/obj/machinery/light{ - dir = 8 - }, -/obj/machinery/newscaster{ - pixel_x = -32 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/red/side{ - dir = 8 - }, -/area/security/checkpoint/medical) -"bgs" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 9 - }, -/turf/open/floor/plasteel, -/area/security/checkpoint/medical) -"bgt" = ( -/obj/structure/chair/office/light{ - dir = 4 - }, -/obj/effect/landmark/start/depsec/medical, -/turf/open/floor/plasteel, -/area/security/checkpoint/medical) -"bgu" = ( -/obj/structure/table, -/obj/item/weapon/pen, -/obj/item/weapon/paper_bin{ - layer = 2.9; - pixel_x = 0; - pixel_y = 0; - tag = "every single paper bin is edited to this" - }, -/turf/open/floor/plasteel/red/side{ - dir = 4 - }, -/area/security/checkpoint/medical) -"bgv" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 6 - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"bgw" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold-b-f (NORTH)"; - dir = 1 - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"bgx" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 9; - pixel_y = 0 - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"bgy" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/firealarm{ - dir = 8; - pixel_x = 26; - pixel_y = 28 - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"bgz" = ( -/obj/structure/chair, -/obj/machinery/light{ - dir = 1 - }, -/turf/open/floor/plasteel/whiteblue/side{ - dir = 1 - }, -/area/medical/medbay) -"bgA" = ( -/obj/structure/table, -/obj/item/weapon/storage/box/bodybags{ - pixel_x = 3; - pixel_y = 2 - }, -/turf/open/floor/plasteel/whiteblue/side{ - dir = 1 - }, -/area/medical/medbay) -"bgB" = ( -/obj/structure/table, -/obj/item/weapon/folder/white, -/obj/item/device/healthanalyzer, -/turf/open/floor/plasteel/whiteblue/side{ - dir = 1 - }, -/area/medical/medbay) -"bgC" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/hallway/primary/aft) -"bgD" = ( -/turf/open/floor/plasteel, -/area/hallway/primary/aft) -"bgE" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/hallway/primary/aft) -"bgF" = ( -/obj/structure/table, -/obj/item/device/paicard, -/obj/item/clothing/glasses/science, -/turf/open/floor/plasteel/whitepurple/side{ - dir = 1 - }, -/area/medical/research{ - name = "Research Division" - }) -"bgG" = ( -/obj/structure/table, -/obj/machinery/cell_charger, -/obj/item/weapon/stock_parts/cell/high/plus, -/turf/open/floor/plasteel/whitepurple/side{ - dir = 1 - }, -/area/medical/research{ - name = "Research Division" - }) -"bgH" = ( -/obj/machinery/light{ - dir = 1 - }, -/obj/machinery/portable_atmospherics/scrubber, -/turf/open/floor/plasteel/whitepurple/side{ - dir = 1 - }, -/area/medical/research{ - name = "Research Division" - }) -"bgI" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/firealarm{ - dir = 8; - pixel_x = -26; - pixel_y = 28 - }, -/turf/open/floor/plasteel/white, -/area/medical/research{ - name = "Research Division" - }) -"bgJ" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 8 - }, -/turf/open/floor/plasteel/white, -/area/medical/research{ - name = "Research Division" - }) -"bgK" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/medical/research{ - name = "Research Division" - }) -"bgL" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/medical/research{ - name = "Research Division" - }) -"bgM" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 10 - }, -/turf/open/floor/plasteel/white, -/area/medical/research{ - name = "Research Division" - }) -"bgN" = ( -/obj/structure/filingcabinet/chestdrawer, -/turf/open/floor/plasteel/purple/side{ - dir = 8 - }, -/area/assembly/robotics) -"bgO" = ( -/obj/structure/chair/office/light{ - dir = 1 - }, -/obj/effect/landmark/start{ - name = "Roboticist" - }, -/turf/open/floor/plasteel, -/area/assembly/robotics) -"bgP" = ( -/turf/open/floor/plasteel, -/area/assembly/robotics) -"bgQ" = ( -/obj/machinery/camera{ - c_tag = "Robotics Lab"; - dir = 2; - network = list("SS13","RD") - }, -/obj/machinery/button/door{ - dir = 2; - id = "robotics"; - name = "Shutters Control Button"; - pixel_x = -6; - pixel_y = 24; - req_access_txt = "29" - }, -/turf/open/floor/plasteel, -/area/assembly/robotics) -"bgR" = ( -/obj/machinery/requests_console{ - department = "Robotics"; - departmentType = 2; - name = "Robotics RC"; - pixel_y = 30 - }, -/turf/open/floor/plasteel, -/area/assembly/robotics) -"bgS" = ( -/obj/structure/disposalpipe/sortjunction{ - dir = 2; - icon_state = "pipe-j2s"; - sortType = 14 - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0; - tag = "" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4"; - tag = "" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/assembly/robotics) -"bgT" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/power/apc{ - dir = 1; - name = "Robotics Lab APC"; - pixel_x = 0; - pixel_y = 25 - }, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/turf/open/floor/plasteel, -/area/assembly/robotics) -"bgU" = ( -/obj/machinery/disposal/bin, -/obj/structure/disposalpipe/trunk{ - dir = 8 - }, -/turf/open/floor/plasteel/purple/side{ - dir = 4 - }, -/area/assembly/robotics) -"bgV" = ( -/obj/machinery/light{ - dir = 8 - }, -/turf/open/floor/engine, -/area/toxins/explab) -"bgW" = ( -/obj/effect/landmark/event_spawn, -/obj/item/device/radio/beacon, -/turf/open/floor/engine, -/area/toxins/explab) -"bgX" = ( -/obj/machinery/r_n_d/experimentor, -/turf/open/floor/engine, -/area/toxins/explab) -"bgY" = ( -/obj/effect/landmark{ - name = "blobstart" - }, -/obj/effect/landmark{ - name = "xeno_spawn"; - pixel_x = -1 - }, -/turf/open/floor/engine, -/area/toxins/explab) -"bgZ" = ( -/obj/effect/landmark/event_spawn, -/turf/open/floor/engine, -/area/toxins/explab) -"bha" = ( -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/engine, -/area/toxins/explab) -"bhb" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible{ - dir = 4 - }, -/obj/machinery/power/apc{ - dir = 1; - name = "Testing Lab APC"; - pixel_y = 25 - }, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/turf/open/floor/engine, -/area/toxins/explab) -"bhc" = ( -/obj/structure/cable{ - icon_state = "1-8" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/general/visible{ - dir = 10; - pixel_x = 0; - initialize_directions = 10 - }, -/turf/open/floor/engine, -/area/toxins/explab) -"bhd" = ( -/obj/structure/sign/atmosplaque{ - desc = "A guide to the drone shell dispenser, detailing the constructive and destructive applications of modern repair drones, as well as the development of the uncorruptable cyborg servants of tomorrow, available today."; - icon_state = "kiddieplaque"; - name = "\improper 'Perfect Drone' sign"; - pixel_x = 0; - pixel_y = 32 - }, -/turf/open/floor/engine, -/area/toxins/explab) -"bhe" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 5 - }, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"bhf" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/structure/grille/broken, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"bhg" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/structure/grille/broken, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/light/small{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"bhh" = ( -/obj/structure/cable{ - icon_state = "1-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 9; - pixel_y = 0 - }, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"bhi" = ( -/turf/open/floor/engine, -/area/toxins/xenobiology) -"bhj" = ( -/obj/machinery/camera{ - c_tag = "Xenobiology Test Chamber"; - dir = 2; - network = list("Xeno","RD"); - pixel_x = 0 - }, -/obj/machinery/light{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/simple/general/hidden, -/turf/open/floor/engine, -/area/toxins/xenobiology) -"bhk" = ( -/obj/machinery/atmospherics/pipe/simple/general/hidden, -/turf/closed/wall/r_wall, -/area/toxins/xenobiology) -"bhl" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"bhm" = ( -/obj/item/trash/candle, -/obj/item/weapon/cautery, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"bhn" = ( -/turf/open/floor/plating, -/area/shuttle/auxillary_base) -"bho" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/carpet, -/area/library) -"bhp" = ( -/obj/item/weapon/storage/bag/books, -/turf/open/floor/plasteel/black, -/area/library) -"bhq" = ( -/obj/structure/bookcase/random/religion, -/turf/open/floor/plasteel/black, -/area/library) -"bhr" = ( -/obj/structure/bookcase/random/religion, -/obj/effect/decal/cleanable/cobweb{ - icon_state = "cobweb2" - }, -/turf/open/floor/plasteel/black, -/area/library) -"bhs" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"bht" = ( -/obj/machinery/door/airlock/maintenance{ - name = "Genetics Maintenance"; - req_access_txt = "9"; - req_one_access_txt = "0" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/floor/plating, -/area/medical/genetics) -"bhu" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/freezer, -/area/medical/genetics) -"bhv" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/freezer, -/area/medical/genetics) -"bhw" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/freezer, -/area/medical/genetics) -"bhx" = ( -/obj/structure/table, -/obj/machinery/newscaster{ - pixel_x = 32 - }, -/obj/item/weapon/crowbar, -/obj/item/weapon/folder/white, -/turf/open/floor/plasteel/freezer, -/area/medical/genetics) -"bhy" = ( -/obj/structure/reagent_dispensers/watertank, -/turf/open/floor/plating, -/area/storage/emergency2) -"bhz" = ( -/obj/machinery/power/apc{ - dir = 2; - name = "Port Emergency Storage APC"; - pixel_x = 0; - pixel_y = -24 - }, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/turf/open/floor/plating{ - icon_state = "panelscorched" - }, -/area/storage/emergency2) -"bhA" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/item/weapon/storage/toolbox/emergency, -/turf/open/floor/plating, -/area/storage/emergency2) -"bhB" = ( -/obj/machinery/space_heater, -/turf/open/floor/plating, -/area/storage/emergency2) -"bhC" = ( -/obj/structure/bodycontainer/morgue, -/obj/effect/landmark{ - name = "revenantspawn" - }, -/obj/machinery/light/small{ - brightness = 3; - dir = 8 - }, -/turf/open/floor/plasteel/black, -/area/medical/morgue) -"bhD" = ( -/obj/item/weapon/ectoplasm, -/turf/open/floor/plasteel/black, -/area/medical/morgue) -"bhE" = ( -/obj/structure/table, -/obj/item/weapon/storage/box/bodybags, -/obj/item/weapon/pen, -/obj/machinery/light/small{ - dir = 4 - }, -/obj/machinery/camera{ - c_tag = "Morgue"; - dir = 8 - }, -/turf/open/floor/plasteel/black, -/area/medical/morgue) -"bhF" = ( -/obj/machinery/power/apc{ - dir = 8; - name = "Medbay Security APC"; - pixel_x = -25 - }, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/machinery/camera{ - c_tag = "Medbay Security Post"; - dir = 4; - network = list("SS13") - }, -/obj/structure/closet/wardrobe/red, -/turf/open/floor/plasteel/red/side{ - dir = 10 - }, -/area/security/checkpoint/medical) -"bhG" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 6 - }, -/turf/open/floor/plasteel/red/side, -/area/security/checkpoint/medical) -"bhH" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - layer = 2.4; - on = 1 - }, -/turf/open/floor/plasteel/red/side, -/area/security/checkpoint/medical) -"bhI" = ( -/obj/structure/table, -/obj/item/weapon/book/manual/wiki/security_space_law, -/turf/open/floor/plasteel/red/side{ - dir = 6 - }, -/area/security/checkpoint/medical) -"bhJ" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"bhK" = ( -/obj/machinery/holopad, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"bhL" = ( -/obj/machinery/door/firedoor, -/turf/open/floor/plasteel/white/side{ - dir = 8 - }, -/area/medical/medbay) -"bhM" = ( -/obj/machinery/door/firedoor, -/turf/open/floor/plasteel/white/side{ - dir = 4 - }, -/area/medical/research{ - name = "Research Division" - }) -"bhN" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/white, -/area/medical/research{ - name = "Research Division" - }) -"bhO" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/medical/research{ - name = "Research Division" - }) -"bhP" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 5 - }, -/turf/open/floor/plasteel/white, -/area/medical/research{ - name = "Research Division" - }) -"bhQ" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/plasteel/white, -/area/medical/research{ - name = "Research Division" - }) -"bhR" = ( -/obj/item/weapon/reagent_containers/food/snacks/grown/poppy, -/obj/item/weapon/reagent_containers/food/snacks/grown/poppy, -/obj/item/weapon/reagent_containers/food/snacks/grown/poppy, -/obj/structure/table/wood/fancy, -/turf/open/floor/plasteel/black, -/area/chapel/main{ - name = "Monastery" - }) -"bhS" = ( -/obj/structure/rack{ - dir = 8; - layer = 2.9 - }, -/obj/item/weapon/storage/toolbox/electrical{ - pixel_x = 1; - pixel_y = 6 - }, -/obj/item/weapon/storage/toolbox/mechanical{ - pixel_x = -2; - pixel_y = -1 - }, -/obj/item/clothing/head/welding{ - pixel_x = -3; - pixel_y = 5 - }, -/obj/item/clothing/glasses/welding, -/turf/open/floor/plasteel/purple/side{ - dir = 8 - }, -/area/assembly/robotics) -"bhT" = ( -/obj/machinery/mecha_part_fabricator, -/turf/open/floor/plasteel, -/area/assembly/robotics) -"bhU" = ( -/obj/structure/disposalpipe/segment, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0; - tag = "" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 5 - }, -/turf/open/floor/plasteel/warning/corner{ - dir = 1 - }, -/area/assembly/robotics) -"bhV" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/plasteel, -/area/assembly/robotics) -"bhW" = ( -/obj/structure/table, -/obj/item/stack/sheet/glass{ - amount = 20; - pixel_x = 3; - pixel_y = -4 - }, -/obj/item/stack/sheet/metal{ - amount = 50 - }, -/obj/item/stack/sheet/metal{ - amount = 50 - }, -/obj/item/stack/sheet/metal{ - amount = 50 - }, -/obj/item/stack/sheet/metal{ - amount = 50 - }, -/obj/item/stack/sheet/metal{ - amount = 50 - }, -/obj/item/stack/sheet/metal{ - amount = 50 - }, -/obj/structure/extinguisher_cabinet{ - pixel_x = 27; - pixel_y = 0 - }, -/turf/open/floor/plasteel/purple/side{ - dir = 4 - }, -/area/assembly/robotics) -"bhX" = ( -/obj/machinery/atmospherics/components/unary/outlet_injector{ - on = 1 - }, -/turf/open/floor/engine, -/area/toxins/explab) -"bhY" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - on = 1 - }, -/turf/open/floor/engine, -/area/toxins/explab) -"bhZ" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/engine, -/area/toxins/explab) -"bia" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible{ - dir = 4 - }, -/obj/machinery/light{ - dir = 8 - }, -/turf/open/floor/engine, -/area/toxins/explab) -"bib" = ( -/obj/structure/disposalpipe/segment, -/obj/effect/landmark/start{ - name = "Scientist" - }, -/obj/machinery/atmospherics/components/trinary/filter, -/turf/open/floor/engine{ - name = "Holodeck Projector Floor" - }, -/area/toxins/explab) -"bic" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible{ - dir = 6 - }, -/turf/open/floor/engine, -/area/toxins/explab) -"bid" = ( -/obj/machinery/atmospherics/components/unary/thermomachine/heater{ - dir = 8 - }, -/turf/open/floor/engine, -/area/toxins/explab) -"bie" = ( -/obj/machinery/light/small{ - brightness = 3; - dir = 8 - }, -/turf/open/floor/engine, -/area/toxins/xenobiology) -"bif" = ( -/obj/machinery/atmospherics/components/unary/outlet_injector/on{ - dir = 1; - frequency = 1441; - id = "air_in" - }, -/turf/open/floor/engine, -/area/toxins/xenobiology) -"big" = ( -/obj/machinery/light/small{ - dir = 4 - }, -/turf/open/floor/engine, -/area/toxins/xenobiology) -"bih" = ( -/obj/machinery/light{ - dir = 1 - }, -/turf/open/floor/engine, -/area/toxins/xenobiology) -"bii" = ( -/obj/effect/landmark/event_spawn, -/turf/open/floor/engine, -/area/toxins/xenobiology) -"bij" = ( -/turf/closed/wall, -/area/toxins/xenobiology) -"bik" = ( -/obj/effect/decal/cleanable/ash, -/obj/effect/landmark{ - name = "revenantspawn" - }, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"bil" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"bim" = ( -/obj/effect/spawner/lootdrop/maintenance, -/obj/machinery/atmospherics/pipe/manifold/general/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plating{ - broken = 1; - icon_state = "platingdmg1" - }, -/area/maintenance/apmaint) -"bin" = ( -/obj/machinery/atmospherics/components/unary/thermomachine/freezer{ - dir = 8 - }, -/turf/open/floor/plating{ - broken = 1; - icon_state = "platingdmg1" - }, -/area/maintenance/apmaint) -"bio" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - external_pressure_bound = 101.325; - on = 1; - pressure_checks = 1 - }, -/turf/open/floor/plasteel, -/area/hallway/secondary/entry) -"bip" = ( -/obj/item/device/radio/beacon, -/obj/machinery/atmospherics/pipe/simple/cyan/hidden{ - tag = "icon-intact (EAST)"; - icon_state = "intact"; - dir = 4 - }, -/turf/open/floor/plasteel, -/area/hallway/secondary/entry) -"biq" = ( -/obj/machinery/atmospherics/pipe/manifold/cyan/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner, -/area/hallway/secondary/entry) -"bir" = ( -/obj/machinery/mass_driver{ - id = "chapelgun" - }, -/obj/machinery/door/window/eastleft{ - dir = 8; - name = "Mass Driver"; - req_one_access_txt = "0" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/black, -/area/chapel/main{ - name = "Monastery" - }) -"bis" = ( -/obj/structure/rack, -/obj/item/stack/cable_coil, -/obj/item/weapon/electronics/airlock, -/obj/item/wallframe/camera, -/obj/item/device/assault_pod/mining, -/turf/open/floor/plating, -/area/shuttle/auxillary_base) -"bit" = ( -/obj/structure/rack, -/obj/item/stack/sheet/metal{ - amount = 50; - pixel_x = 2; - pixel_y = 2 - }, -/obj/item/stack/sheet/metal{ - amount = 50; - pixel_x = 2; - pixel_y = 2 - }, -/obj/item/stack/sheet/glass{ - amount = 50 - }, -/obj/item/weapon/storage/box/lights/mixed, -/turf/open/floor/plating, -/area/shuttle/auxillary_base) -"biu" = ( -/obj/machinery/mass_driver{ - id = "chapelgun" - }, -/obj/structure/window/reinforced{ - dir = 4; - layer = 2.9 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/black, -/area/chapel/main{ - name = "Monastery" - }) -"biv" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"biw" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/medical/genetics) -"bix" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass_medical{ - id_tag = null; - name = "Cloning"; - req_access_txt = "0"; - req_one_access_txt = "5;9" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/freezer, -/area/medical/genetics) -"biy" = ( -/turf/closed/wall, -/area/medical/medbay3) -"biz" = ( -/obj/structure/table, -/obj/item/weapon/folder/white, -/obj/item/clothing/gloves/color/latex, -/obj/item/weapon/storage/fancy/candle_box, -/turf/open/floor/plasteel/black, -/area/medical/morgue) -"biA" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/checkpoint/medical) -"biB" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass_security{ - name = "Medbay Security Post"; - req_access_txt = "63" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/red, -/area/security/checkpoint/medical) -"biC" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/reagent_containers/food/drinks/britcup{ - desc = "Kingston's personal cup." - }, -/turf/open/floor/plasteel/whiteblue/side, -/area/medical/medbay) -"biD" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/paper_bin{ - pixel_x = 1; - pixel_y = 0 - }, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 8 - }, -/area/medical/medbay) -"biE" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 6 - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"biF" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"biG" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"biH" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"biI" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - initialize_directions = 11 - }, -/turf/open/floor/plasteel/white, -/area/medical/research{ - name = "Research Division" - }) -"biJ" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/medical/research{ - name = "Research Division" - }) -"biK" = ( -/obj/machinery/light, -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/obj/machinery/camera{ - c_tag = "Research Division Entrance"; - dir = 1 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/firealarm{ - dir = 1; - pixel_x = -2; - pixel_y = -27 - }, -/turf/open/floor/plasteel/whitepurple/side, -/area/medical/research{ - name = "Research Division" - }) -"biL" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 10 - }, -/turf/open/floor/plasteel/whitepurple/side, -/area/medical/research{ - name = "Research Division" - }) -"biM" = ( -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/whitepurple/side, -/area/medical/research{ - name = "Research Division" - }) -"biN" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-18"; - layer = 3; - pixel_y = 0 - }, -/turf/open/floor/plasteel/whitepurple/side, -/area/medical/research{ - name = "Research Division" - }) -"biO" = ( -/obj/machinery/r_n_d/circuit_imprinter, -/obj/machinery/light{ - dir = 8 - }, -/turf/open/floor/plasteel/purple/side{ - dir = 8 - }, -/area/assembly/robotics) -"biP" = ( -/turf/open/floor/plasteel/bot, -/area/assembly/robotics) -"biQ" = ( -/obj/structure/disposalpipe/segment, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0; - tag = "" - }, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/assembly/robotics) -"biR" = ( -/obj/structure/table, -/obj/item/stack/sheet/plasteel{ - amount = 10 - }, -/obj/item/device/assembly/flash/handheld, -/obj/item/device/assembly/flash/handheld, -/obj/item/device/assembly/flash/handheld, -/obj/item/device/assembly/flash/handheld, -/obj/item/device/assembly/flash/handheld, -/obj/item/device/assembly/flash/handheld, -/obj/item/device/assembly/flash/handheld, -/obj/machinery/airalarm{ - dir = 8; - pixel_x = 23; - pixel_y = 0 - }, -/turf/open/floor/plasteel/purple/side{ - dir = 4 - }, -/area/assembly/robotics) -"biS" = ( -/obj/machinery/atmospherics/pipe/simple/general/hidden, -/turf/closed/wall/r_wall, -/area/toxins/explab) -"biT" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/door/poddoor/preopen{ - id = "testlab"; - name = "test chamber blast door" - }, -/turf/open/floor/engine, -/area/toxins/explab) -"biU" = ( -/obj/structure/grille, -/obj/machinery/door/poddoor/preopen{ - id = "testlab"; - name = "test chamber blast door" - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/engine, -/area/toxins/explab) -"biV" = ( -/obj/machinery/door/poddoor/preopen{ - id = "telelab"; - name = "test chamber blast door" - }, -/obj/machinery/door/firedoor/heavy, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/engine, -/area/toxins/explab) -"biW" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible{ - dir = 4 - }, -/turf/open/floor/engine, -/area/toxins/explab) -"biX" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/manifold/general/visible, -/turf/open/floor/engine, -/area/toxins/explab) -"biY" = ( -/obj/machinery/atmospherics/pipe/manifold/general/visible, -/obj/item/weapon/wrench, -/turf/open/floor/engine, -/area/toxins/explab) -"biZ" = ( -/obj/machinery/atmospherics/components/unary/thermomachine/freezer{ - dir = 8 - }, -/turf/open/floor/engine, -/area/toxins/explab) -"bja" = ( -/obj/structure/table, -/obj/machinery/reagentgrinder, -/turf/open/floor/plasteel/whitepurple/side{ - dir = 9 - }, -/area/toxins/xenobiology) -"bjb" = ( -/obj/structure/table, -/obj/item/weapon/storage/box/beakers{ - pixel_x = 2; - pixel_y = 2 - }, -/obj/item/weapon/storage/box/syringes, -/obj/item/device/radio/intercom{ - dir = 0; - name = "Station Intercom (General)"; - pixel_x = 0; - pixel_y = 26 - }, -/turf/open/floor/plasteel/whitepurple/side{ - dir = 1 - }, -/area/toxins/xenobiology) -"bjc" = ( -/obj/structure/table, -/obj/item/stack/sheet/mineral/plasma{ - layer = 2.9 - }, -/obj/item/stack/sheet/mineral/plasma{ - layer = 2.9 - }, -/obj/item/stack/sheet/mineral/plasma{ - layer = 2.9 - }, -/obj/machinery/airalarm{ - pixel_y = 22 - }, -/turf/open/floor/plasteel/whitepurple/side{ - dir = 1 - }, -/area/toxins/xenobiology) -"bjd" = ( -/obj/structure/table, -/obj/item/weapon/pen, -/obj/item/clothing/glasses/science, -/obj/item/clothing/glasses/science, -/obj/item/weapon/paper_bin{ - layer = 2.9; - pixel_x = 0; - pixel_y = 0; - tag = "every single paper bin is edited to this" - }, -/turf/open/floor/plasteel/whitepurple/side{ - dir = 5 - }, -/area/toxins/xenobiology) -"bje" = ( -/obj/effect/landmark{ - name = "revenantspawn" - }, -/turf/open/floor/engine, -/area/toxins/xenobiology) -"bjf" = ( -/obj/item/weapon/weldingtool, -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"bjg" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible{ - dir = 4 - }, -/turf/open/floor/plating{ - icon_state = "platingdmg3" - }, -/area/maintenance/apmaint) -"bjh" = ( -/obj/machinery/atmospherics/pipe/manifold/general/hidden, -/turf/open/floor/plating{ - icon_state = "panelscorched" - }, -/area/maintenance/apmaint) -"bji" = ( -/obj/machinery/atmospherics/components/unary/thermomachine/heater{ - dir = 8 - }, -/turf/open/floor/plating{ - icon_state = "panelscorched" - }, -/area/maintenance/apmaint) -"bjj" = ( -/turf/open/floor/plasteel/arrival, -/area/hallway/secondary/entry) -"bjk" = ( -/obj/machinery/camera{ - c_tag = "Arrivals Port Aft"; - dir = 1 - }, -/turf/open/floor/plasteel/arrival, -/area/hallway/secondary/entry) -"bjl" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 9 - }, -/turf/open/floor/plasteel, -/area/hallway/secondary/entry) -"bjm" = ( -/obj/structure/table/wood/fancy, -/obj/item/clothing/under/burial, -/obj/item/clothing/under/burial, -/obj/item/clothing/under/burial, -/obj/item/clothing/under/burial, -/turf/open/floor/plasteel/black, -/area/chapel/main{ - name = "Monastery" - }) -"bjn" = ( -/obj/machinery/door/airlock/engineering{ - cyclelinkeddir = 1; - name = "Auxillary Mining Closet Construction"; - req_access_txt = "0"; - req_one_access_txt = "31;32;47;48" - }, -/turf/open/floor/plating, -/area/mining_construction{ - name = "Auxillary Closet Construction" - }) -"bjo" = ( -/obj/machinery/power/smes{ - charge = 5e+006 - }, -/obj/structure/cable, -/turf/open/floor/plating, -/area/maintenance/port{ - name = "Monastery Maintenance" - }) -"bjp" = ( -/obj/item/weapon/pickaxe/mini, -/turf/open/floor/plating, -/area/shuttle/auxillary_base) -"bjq" = ( -/obj/machinery/camera{ - c_tag = "Auxillary Mining Base"; - dir = 8 - }, -/obj/machinery/light{ - icon_state = "tube1"; - dir = 4 - }, -/obj/machinery/computer/shuttle/auxillary_base{ - density = 0; - pixel_x = 32; - pixel_y = 0 - }, -/turf/open/floor/plating, -/area/shuttle/auxillary_base) -"bjr" = ( -/obj/docking_port/mobile/auxillary_base{ - dheight = 0; - dir = 8; - dwidth = 2; - height = 4; - width = 5 - }, -/obj/machinery/bluespace_beacon, -/turf/closed/wall, -/area/shuttle/auxillary_base) -"bjs" = ( -/obj/item/device/radio/intercom{ - broadcasting = 0; - freerange = 0; - frequency = 1485; - listening = 1; - name = "Station Intercom (Medbay)"; - pixel_x = 0; - pixel_y = 26 - }, -/obj/structure/closet/secure_closet/personal/patient, -/turf/open/floor/plasteel/whiteblue/side{ - tag = "icon-whiteblue (NORTH)"; - dir = 1 - }, -/area/medical/genetics) -"bjt" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/plasteel/whiteblue/side{ - tag = "icon-whiteblue (NORTH)"; - dir = 1 - }, -/area/medical/genetics) -"bju" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 4; - initialize_directions = 11 - }, -/turf/open/floor/plasteel/whiteblue/side{ - tag = "icon-whiteblue (NORTH)"; - dir = 1 - }, -/area/medical/genetics) -"bjv" = ( -/obj/structure/closet/wardrobe/mixed, -/turf/open/floor/plasteel/whiteblue/side{ - tag = "icon-whiteblue (NORTH)"; - dir = 1 - }, -/area/medical/genetics) -"bjw" = ( -/obj/machinery/vending/clothing, -/obj/machinery/firealarm{ - dir = 1; - pixel_x = 0; - pixel_y = 27 - }, -/turf/open/floor/plasteel/whiteblue/side{ - tag = "icon-whiteblue (NORTH)"; - dir = 1 - }, -/area/medical/genetics) -"bjx" = ( -/obj/machinery/disposal/bin, -/obj/structure/disposalpipe/trunk, -/obj/structure/sign/poster{ - pixel_x = -32 - }, -/turf/open/floor/plasteel/whiteblue/side{ - dir = 9; - initial_gas_mix = "n2=100;TEMP=80"; - tag = "icon-whiteblue (NORTHWEST)" - }, -/area/medical/medbay3) -"bjy" = ( -/obj/machinery/light{ - dir = 1 - }, -/obj/structure/table, -/obj/machinery/airalarm{ - pixel_y = 22 - }, -/obj/item/weapon/storage/box/gloves{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/storage/box/masks, -/turf/open/floor/plasteel/whiteblue/side{ - dir = 1; - tag = "icon-whiteblue (NORTH)" - }, -/area/medical/medbay3) -"bjz" = ( -/obj/machinery/vending/medical, -/turf/open/floor/plasteel/whiteblue/side{ - tag = "icon-whiteblue (NORTHEAST)"; - dir = 5 - }, -/area/medical/medbay3) -"bjA" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - on = 1 - }, -/turf/open/floor/plasteel/black, -/area/medical/morgue) -"bjB" = ( -/obj/structure/sign/poster{ - pixel_x = -32 - }, -/turf/open/floor/plasteel/whiteblue/side{ - dir = 9; - initial_gas_mix = "n2=100;TEMP=80"; - tag = "icon-whiteblue (NORTHWEST)" - }, -/area/medical/medbay) -"bjC" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 5 - }, -/turf/open/floor/plasteel/whiteblue/side{ - dir = 1; - tag = "icon-whiteblue (NORTH)" - }, -/area/medical/medbay) -"bjD" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 10 - }, -/turf/open/floor/plasteel/whiteblue/side{ - tag = "icon-whiteblue (NORTHEAST)"; - dir = 5 - }, -/area/medical/medbay) -"bjE" = ( -/obj/machinery/requests_console{ - announcementConsole = 0; - department = "Medbay"; - departmentType = 1; - name = "Medbay RC"; - pixel_x = -32; - pixel_y = 0; - pixel_z = 0 - }, -/obj/item/device/radio/intercom{ - broadcasting = 0; - freerange = 0; - frequency = 1485; - listening = 1; - name = "Station Intercom (Medbay)"; - pixel_x = 0; - pixel_y = 26 - }, -/turf/open/floor/plasteel/whiteblue/side{ - dir = 1 - }, -/area/medical/medbay) -"bjF" = ( -/obj/structure/chair/office/light{ - dir = 4 - }, -/obj/effect/landmark/start{ - name = "Medical Doctor" - }, -/turf/open/floor/plasteel/whiteblue/side{ - tag = "icon-whiteblue (NORTHEAST)"; - dir = 5 - }, -/area/medical/medbay) -"bjG" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/folder/white, -/obj/item/weapon/pen, -/turf/open/floor/plasteel/whiteblue/side{ - dir = 8 - }, -/area/medical/medbay) -"bjH" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"bjI" = ( -/obj/structure/bed/roller, -/turf/open/floor/plasteel/whiteblue/side, -/area/medical/medbay) -"bjJ" = ( -/obj/structure/bed/roller, -/obj/machinery/camera{ - c_tag = "Medbay Entrance"; - dir = 1 - }, -/turf/open/floor/plasteel/whiteblue/side, -/area/medical/medbay) -"bjK" = ( -/turf/open/floor/plasteel/whiteblue/side, -/area/medical/medbay) -"bjL" = ( -/obj/structure/table/glass, -/obj/item/stack/medical/gauze, -/obj/item/weapon/reagent_containers/glass/bottle/epinephrine, -/turf/open/floor/plasteel/whiteblue/side, -/area/medical/medbay) -"bjM" = ( -/obj/structure/closet/emcloset, -/turf/open/floor/plasteel/whitepurple/side, -/area/medical/research{ - name = "Research Division" - }) -"bjN" = ( -/obj/structure/closet/firecloset/full, -/turf/open/floor/plasteel/whitepurple/side, -/area/medical/research{ - name = "Research Division" - }) -"bjO" = ( -/obj/structure/table, -/obj/item/weapon/paper_bin{ - layer = 2.9; - pixel_x = -2; - pixel_y = 4 - }, -/obj/item/weapon/pen, -/turf/open/floor/plasteel/whitepurple/side, -/area/medical/research{ - name = "Research Division" - }) -"bjP" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall, -/area/medical/research{ - name = "Research Division" - }) -"bjQ" = ( -/obj/machinery/door/airlock/research{ - cyclelinkeddir = 2; - name = "Research Division Access"; - req_access_txt = "47" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/white, -/area/medical/research{ - name = "Research Division" - }) -"bjR" = ( -/obj/machinery/computer/rdconsole/robotics, -/turf/open/floor/plasteel/purple/side{ - dir = 8 - }, -/area/assembly/robotics) -"bjS" = ( -/obj/effect/landmark/start{ - name = "Roboticist" - }, -/turf/open/floor/plasteel/bot, -/area/assembly/robotics) -"bjT" = ( -/obj/structure/table, -/obj/machinery/cell_charger, -/obj/item/weapon/stock_parts/cell/high/plus, -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/obj/machinery/firealarm{ - dir = 4; - pixel_x = 28 - }, -/turf/open/floor/plasteel/purple/side{ - dir = 4 - }, -/area/assembly/robotics) -"bjU" = ( -/turf/closed/wall, -/area/toxins/explab) -"bjV" = ( -/obj/structure/rack, -/obj/item/clothing/mask/gas{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/clothing/mask/gas, -/obj/item/clothing/mask/gas{ - pixel_x = -3; - pixel_y = -3 - }, -/obj/machinery/atmospherics/pipe/simple/general/visible, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/toxins/explab) -"bjW" = ( -/obj/machinery/button/door{ - id = "testlab"; - name = "Window Blast Doors"; - pixel_x = -6; - pixel_y = 0 - }, -/obj/structure/table/reinforced, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/button/door{ - id = "telelab"; - name = "Test Chamber Blast Door"; - pixel_x = 6; - pixel_y = 0 - }, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/toxins/explab) -"bjX" = ( -/obj/machinery/computer/rdconsole/experiment, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/toxins/explab) -"bjY" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/folder, -/obj/item/weapon/book/manual/experimentor, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/toxins/explab) -"bjZ" = ( -/obj/item/weapon/paper_bin{ - pixel_x = 0; - pixel_y = 6 - }, -/obj/item/weapon/pen, -/obj/item/device/radio/off, -/obj/structure/table/reinforced, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/toxins/explab) -"bka" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/toxins/explab) -"bkb" = ( -/obj/machinery/disposal/bin, -/obj/structure/disposalpipe/trunk{ - dir = 4 - }, -/obj/machinery/requests_console{ - department = "Science"; - departmentType = 2; - dir = 2; - name = "Science Requests Console"; - pixel_x = 0; - pixel_y = 30 - }, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/toxins/explab) -"bkc" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/toxins/explab) -"bkd" = ( -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/toxins/explab) -"bke" = ( -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/toxins/explab) -"bkf" = ( -/obj/structure/rack, -/obj/item/stack/packageWrap, -/obj/item/stack/cable_coil, -/obj/item/weapon/wirecutters, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/toxins/explab) -"bkg" = ( -/obj/machinery/monkey_recycler, -/turf/open/floor/plasteel/whitepurple/side{ - dir = 8 - }, -/area/toxins/xenobiology) -"bkh" = ( -/turf/open/floor/plasteel/white, -/area/toxins/xenobiology) -"bki" = ( -/obj/structure/chair/comfy/beige{ - dir = 4 - }, -/obj/effect/landmark/start{ - name = "Scientist" - }, -/turf/open/floor/plasteel/white, -/area/toxins/xenobiology) -"bkj" = ( -/obj/machinery/computer/camera_advanced/xenobio, -/turf/open/floor/plasteel/whitepurple/side{ - dir = 4 - }, -/area/toxins/xenobiology) -"bkk" = ( -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'HIGH VOLTAGE'"; - icon_state = "shock"; - name = "HIGH VOLTAGE" - }, -/turf/closed/wall/r_wall, -/area/toxins/xenobiology) -"bkl" = ( -/obj/structure/disposaloutlet{ - dir = 1 - }, -/obj/structure/disposalpipe/trunk, -/turf/open/floor/engine, -/area/toxins/xenobiology) -"bkm" = ( -/obj/machinery/space_heater, -/turf/open/floor/plating{ - icon_state = "platingdmg3" - }, -/area/maintenance/apmaint) -"bkn" = ( -/obj/machinery/atmospherics/pipe/simple/general/hidden{ - tag = "icon-intact (SOUTHEAST)"; - icon_state = "intact"; - dir = 6 - }, -/turf/open/floor/plating, -/area/maintenance/port{ - name = "Monastery Maintenance" - }) -"bko" = ( -/obj/machinery/atmospherics/pipe/manifold/general/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/obj/machinery/meter, -/turf/open/floor/plating, -/area/maintenance/port{ - name = "Monastery Maintenance" - }) -"bkp" = ( -/obj/machinery/atmospherics/pipe/manifold/general/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/port{ - name = "Monastery Maintenance" - }) -"bkq" = ( -/obj/item/weapon/extinguisher, -/turf/open/floor/plating, -/area/maintenance/port{ - name = "Monastery Maintenance" - }) -"bkr" = ( -/obj/item/weapon/storage/bag/ore, -/turf/open/floor/plating, -/area/shuttle/auxillary_base) -"bks" = ( -/obj/structure/mining_shuttle_beacon, -/turf/open/floor/plating, -/area/shuttle/auxillary_base) -"bkt" = ( -/obj/structure/chair/wood/normal, -/turf/open/floor/plasteel/black, -/area/library) -"bku" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/light/small{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"bkv" = ( -/obj/machinery/clonepod, -/turf/open/floor/plasteel/blue, -/area/medical/genetics) -"bkw" = ( -/turf/open/floor/plasteel/white, -/area/medical/genetics) -"bkx" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 8 - }, -/turf/open/floor/plasteel/white, -/area/medical/genetics) -"bky" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/medical/genetics) -"bkz" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/medical/genetics) -"bkA" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/whiteblue/side{ - tag = "icon-whiteblue (WEST)"; - dir = 8 - }, -/area/medical/medbay3) -"bkB" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 1 - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay3) -"bkC" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/whiteblue/side{ - tag = "icon-whiteblue (EAST)"; - dir = 4 - }, -/area/medical/medbay3) -"bkD" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/centcom{ - name = "Morgue"; - opacity = 1; - req_access_txt = "6;5" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/medical/morgue) -"bkE" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/medical/morgue) -"bkF" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/open/floor/plasteel/black, -/area/medical/morgue) -"bkG" = ( -/obj/machinery/light/small, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/medical/morgue) -"bkH" = ( -/obj/structure/cable{ - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/black, -/area/medical/morgue) -"bkI" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/black, -/area/medical/morgue) -"bkJ" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/centcom{ - name = "Morgue"; - opacity = 1; - req_access_txt = "6;5" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/black, -/area/medical/morgue) -"bkK" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold-b-f (NORTH)"; - dir = 1 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/turf/open/floor/plasteel/whiteblue/side{ - dir = 8 - }, -/area/medical/medbay) -"bkL" = ( -/obj/structure/cable{ - icon_state = "1-8" - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - layer = 2.4; - on = 1 - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"bkM" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/whiteblue/side{ - tag = "icon-whiteblue (EAST)"; - dir = 4 - }, -/area/medical/medbay) -"bkN" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/medical{ - name = "Medbay Reception"; - req_access_txt = "5" - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"bkO" = ( -/obj/structure/chair/office/light{ - dir = 4 - }, -/turf/open/floor/plasteel/whiteblue/side{ - tag = "icon-whiteblue (EAST)"; - dir = 4 - }, -/area/medical/medbay) -"bkP" = ( -/obj/structure/table/reinforced, -/obj/machinery/button/door{ - desc = "A remote control switch for the medbay foyer."; - id = "MedbayFoyer"; - name = "Medbay Door Control"; - normaldoorcontrol = 1; - pixel_x = 0; - pixel_y = 0; - req_access_txt = "5" - }, -/turf/open/floor/plasteel/whiteblue/side{ - dir = 8 - }, -/area/medical/medbay) -"bkQ" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 8 - }, -/area/medical/medbay) -"bkR" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/whiteblue/corner, -/area/medical/medbay) -"bkS" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "chemistry_shutters"; - name = "chemistry shutters" - }, -/turf/open/floor/plating, -/area/medical/chemistry) -"bkT" = ( -/obj/structure/table/reinforced, -/obj/machinery/door/window/northleft{ - dir = 2; - name = "Chemistry Desk"; - req_access_txt = "5; 33" - }, -/obj/machinery/door/firedoor, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "chemistry_shutters"; - name = "chemistry shutters" - }, -/obj/item/weapon/folder/white, -/obj/item/weapon/pen, -/turf/open/floor/plasteel/whiteyellow{ - dir = 4 - }, -/area/medical/chemistry) -"bkU" = ( -/obj/machinery/smartfridge/chemistry, -/turf/closed/wall, -/area/medical/chemistry) -"bkV" = ( -/turf/closed/wall, -/area/medical/chemistry) -"bkW" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "research_shutters_2"; - name = "research shutters" - }, -/turf/open/floor/plating, -/area/toxins/explab) -"bkX" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/pen{ - layer = 3.1 - }, -/obj/machinery/door/firedoor, -/obj/machinery/door/window/eastright{ - dir = 2; - name = "Research and Development Desk"; - req_access_txt = "7" - }, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "research_shutters_2"; - name = "research shutters" - }, -/obj/item/weapon/folder/white, -/turf/open/floor/plating, -/area/toxins/explab) -"bkY" = ( -/obj/structure/sink{ - dir = 8; - icon_state = "sink"; - pixel_x = -12 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/light{ - dir = 1 - }, -/turf/open/floor/plasteel/warnwhite{ - dir = 8 - }, -/area/medical/research{ - name = "Research Division" - }) -"bkZ" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 8 - }, -/turf/open/floor/plasteel/white, -/area/medical/research{ - name = "Research Division" - }) -"bla" = ( -/obj/structure/closet/emcloset, -/obj/machinery/camera{ - c_tag = "Research Division Access"; - dir = 2; - network = list("SS13") - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/obj/machinery/light{ - dir = 1 - }, -/turf/open/floor/plasteel/warnwhite{ - dir = 4 - }, -/area/medical/research{ - name = "Research Division" - }) -"blb" = ( -/obj/structure/table, -/obj/item/weapon/book/manual/robotics_cyborgs{ - pixel_x = 2; - pixel_y = 5 - }, -/obj/item/weapon/storage/belt/utility, -/obj/item/weapon/reagent_containers/glass/beaker/large, -/obj/item/device/radio/intercom{ - dir = 0; - name = "Station Intercom (General)"; - pixel_x = -27 - }, -/turf/open/floor/plasteel/purple/side{ - dir = 8 - }, -/area/assembly/robotics) -"blc" = ( -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/turf/open/floor/plasteel, -/area/assembly/robotics) -"bld" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/turf/open/floor/plasteel, -/area/assembly/robotics) -"ble" = ( -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/obj/structure/cable{ - icon_state = "1-8" - }, -/turf/open/floor/plasteel, -/area/assembly/robotics) -"blf" = ( -/obj/structure/sink{ - dir = 4; - pixel_x = 11 - }, -/obj/effect/decal/cleanable/oil{ - icon_state = "floor6" - }, -/turf/open/floor/plasteel/purple/side{ - dir = 4 - }, -/area/assembly/robotics) -"blg" = ( -/obj/machinery/atmospherics/components/binary/pump{ - dir = 1 - }, -/obj/structure/extinguisher_cabinet{ - pixel_x = -24 - }, -/turf/open/floor/plasteel, -/area/toxins/explab) -"blh" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/toxins/explab) -"bli" = ( -/obj/structure/chair/stool, -/obj/effect/landmark/start{ - name = "Scientist" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/toxins/explab) -"blj" = ( -/obj/structure/chair/stool, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/toxins/explab) -"blk" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/plasteel, -/area/toxins/explab) -"bll" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 8; - initialize_directions = 11 - }, -/turf/open/floor/plasteel, -/area/toxins/explab) -"blm" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/toxins/explab) -"bln" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel, -/area/toxins/explab) -"blo" = ( -/obj/structure/table, -/obj/item/stack/sheet/glass{ - amount = 50; - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/stack/sheet/metal{ - amount = 50 - }, -/obj/item/device/assembly/timer, -/obj/item/device/assembly/timer, -/turf/open/floor/plasteel, -/area/toxins/explab) -"blp" = ( -/obj/machinery/processor{ - desc = "A machine used to process slimes and retrieve their extract."; - name = "Slime Processor" - }, -/obj/structure/sign/poster{ - pixel_x = -32; - pixel_y = 0 - }, -/obj/machinery/light{ - dir = 8 - }, -/turf/open/floor/plasteel/whitepurple/side{ - dir = 8 - }, -/area/toxins/xenobiology) -"blq" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - on = 1 - }, -/turf/open/floor/plasteel/white, -/area/toxins/xenobiology) -"blr" = ( -/obj/machinery/smartfridge/extract, -/turf/open/floor/plasteel/whitepurple/side{ - dir = 4 - }, -/area/toxins/xenobiology) -"bls" = ( -/obj/machinery/shieldwallgen{ - req_access = list(55) - }, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/turf/open/floor/plating, -/area/toxins/xenobiology) -"blt" = ( -/obj/structure/grille, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/structure/window/reinforced/fulltile, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/machinery/door/poddoor/preopen{ - id = "misclab"; - name = "test chamber blast door" - }, -/turf/open/floor/engine, -/area/toxins/xenobiology) -"blu" = ( -/obj/structure/grille, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/machinery/door/poddoor/preopen{ - id = "misclab"; - name = "test chamber blast door" - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/engine, -/area/toxins/xenobiology) -"blv" = ( -/obj/machinery/door/window/southleft{ - dir = 1; - name = "Test Chamber"; - req_access_txt = "55" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/door/poddoor/preopen{ - id = "misclab"; - name = "test chamber blast door" - }, -/turf/open/floor/engine, -/area/toxins/xenobiology) -"blw" = ( -/obj/structure/grille, -/obj/structure/disposalpipe/segment, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/machinery/door/poddoor/preopen{ - id = "misclab"; - name = "test chamber blast door" - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/engine, -/area/toxins/xenobiology) -"blx" = ( -/obj/structure/grille, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/machinery/door/poddoor/preopen{ - id = "misclab"; - name = "test chamber blast door" - }, -/obj/structure/window/reinforced/fulltile, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/turf/open/floor/engine, -/area/toxins/xenobiology) -"bly" = ( -/obj/machinery/shieldwallgen{ - req_access = list(55) - }, -/obj/structure/cable{ - icon_state = "0-2"; - pixel_y = 1; - d2 = 2 - }, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/turf/open/floor/plating, -/area/toxins/xenobiology) -"blz" = ( -/obj/machinery/atmospherics/pipe/simple/general/hidden, -/turf/closed/wall, -/area/toxins/xenobiology) -"blA" = ( -/obj/machinery/door/poddoor/preopen{ - id = "xenobio5"; - name = "containment blast door" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/engine, -/area/toxins/xenobiology) -"blB" = ( -/obj/machinery/door/window/northleft{ - base_state = "right"; - dir = 1; - icon_state = "right"; - name = "Containment Pen #5"; - req_access_txt = "55" - }, -/obj/machinery/door/poddoor/preopen{ - id = "xenobio5"; - name = "containment blast door" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/turf/open/floor/engine, -/area/toxins/xenobiology) -"blC" = ( -/obj/machinery/door/poddoor/preopen{ - id = "xenobio5"; - name = "containment blast door" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/structure/cable{ - icon_state = "0-2"; - pixel_y = 1; - d2 = 2 - }, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/turf/open/floor/engine, -/area/toxins/xenobiology) -"blD" = ( -/obj/machinery/door/poddoor/preopen{ - id = "xenobio6"; - name = "containment blast door" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/engine, -/area/toxins/xenobiology) -"blE" = ( -/obj/machinery/door/window/northleft{ - base_state = "right"; - dir = 1; - icon_state = "right"; - name = "Containment Pen #6"; - req_access_txt = "55" - }, -/obj/machinery/door/poddoor/preopen{ - id = "xenobio6"; - name = "containment blast door" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/turf/open/floor/engine, -/area/toxins/xenobiology) -"blF" = ( -/obj/machinery/door/poddoor/preopen{ - id = "xenobio6"; - name = "containment blast door" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/structure/cable{ - icon_state = "0-2"; - pixel_y = 1; - d2 = 2 - }, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/turf/open/floor/engine, -/area/toxins/xenobiology) -"blG" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"blH" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"blI" = ( -/obj/structure/shuttle/engine/propulsion{ - icon_state = "propulsion"; - dir = 4 - }, -/turf/closed/wall/mineral/titanium, -/area/shuttle/transport) -"blJ" = ( -/turf/closed/wall/mineral/titanium, -/area/shuttle/transport) -"blK" = ( -/obj/structure/window/shuttle, -/obj/structure/grille, -/turf/open/floor/plating, -/area/shuttle/transport) -"blL" = ( -/obj/structure/grille, -/obj/structure/window/shuttle, -/turf/open/floor/plating, -/area/shuttle/transport) -"blM" = ( -/obj/machinery/power/apc{ - dir = 4; - name = "Arrivals APC"; - pixel_x = 24; - pixel_y = 0 - }, -/obj/structure/cable{ - icon_state = "0-2"; - pixel_y = 1; - d2 = 2 - }, -/obj/machinery/atmospherics/pipe/simple/cyan/hidden, -/turf/open/floor/plasteel/neutral/corner, -/area/hallway/secondary/entry) -"blN" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 5 - }, -/turf/open/floor/carpet, -/area/library) -"blO" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/carpet, -/area/library) -"blP" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/plasteel/black, -/area/library) -"blQ" = ( -/obj/machinery/computer/cloning, -/obj/machinery/light{ - dir = 8 - }, -/obj/machinery/camera{ - c_tag = "Genetics Cloning"; - dir = 4; - network = list("SS13") - }, -/turf/open/floor/plasteel/blue, -/area/medical/genetics) -"blR" = ( -/obj/machinery/holopad, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/white, -/area/medical/genetics) -"blS" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/sortjunction{ - dir = 8; - icon_state = "pipe-j2s"; - sortType = 23 - }, -/turf/open/floor/plasteel/white, -/area/medical/genetics) -"blT" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/medical/genetics) -"blU" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass_medical{ - id_tag = "GeneticsDoor"; - name = "Cloning"; - req_access_txt = "5" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/medical/genetics) -"blV" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/sortjunction{ - dir = 8; - icon_state = "pipe-j1s"; - sortType = 9 - }, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 1 - }, -/area/medical/medbay3) -"blW" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/structure/cable{ - icon_state = "1-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - external_pressure_bound = 101.325; - on = 1; - pressure_checks = 1 - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay3) -"blX" = ( -/obj/machinery/power/apc{ - dir = 4; - name = "Medbay APC"; - pixel_x = 24; - pixel_y = 0 - }, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 4 - }, -/area/medical/medbay3) -"blY" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 5 - }, -/obj/structure/cable, -/obj/machinery/power/apc{ - dir = 8; - name = "Medbay APC"; - pixel_x = -24; - pixel_y = 0 - }, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 1 - }, -/area/medical/medbay) -"blZ" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold-b-f (NORTH)"; - dir = 1 - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"bma" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 9; - pixel_y = 0 - }, -/obj/structure/sign/poster{ - pixel_x = 32 - }, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 4 - }, -/area/medical/medbay) -"bmb" = ( -/obj/machinery/computer/med_data, -/turf/open/floor/plasteel/whiteblue/side, -/area/medical/medbay) -"bmc" = ( -/obj/machinery/computer/crew, -/turf/open/floor/plasteel/whiteblue/side{ - dir = 6 - }, -/area/medical/medbay) -"bmd" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass_medical{ - id_tag = "MedbayFoyer"; - name = "Medbay"; - req_access_txt = "5" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 8 - }, -/area/medical/medbay) -"bme" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass_medical{ - id_tag = "MedbayFoyer"; - name = "Medbay"; - req_access_txt = "5" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/whiteblue/corner, -/area/medical/medbay) -"bmf" = ( -/obj/machinery/chem_master{ - layer = 2.7; - pixel_x = -2 - }, -/turf/open/floor/plasteel/whiteyellow/side{ - dir = 9 - }, -/area/medical/chemistry) -"bmg" = ( -/obj/structure/chair/office/light{ - dir = 1 - }, -/obj/effect/landmark/start{ - name = "Chemist" - }, -/turf/open/floor/plasteel/whiteyellow/side{ - dir = 1 - }, -/area/medical/chemistry) -"bmh" = ( -/obj/item/weapon/reagent_containers/glass/beaker/large, -/obj/item/weapon/reagent_containers/glass/beaker/large, -/obj/structure/table/glass, -/obj/item/weapon/reagent_containers/glass/beaker/large, -/obj/item/weapon/reagent_containers/glass/beaker/large, -/obj/item/clothing/glasses/science, -/turf/open/floor/plasteel/whiteyellow/side{ - dir = 1 - }, -/area/medical/chemistry) -"bmi" = ( -/obj/machinery/chem_master{ - layer = 2.7; - pixel_x = -2 - }, -/obj/machinery/button/door{ - id = "chemistry_shutters"; - name = "Shutters Control"; - pixel_x = 26; - pixel_y = 4; - req_access_txt = "5; 33" - }, -/turf/open/floor/plasteel/whiteyellow/side{ - dir = 5 - }, -/area/medical/chemistry) -"bmj" = ( -/obj/structure/table, -/obj/item/weapon/crowbar, -/obj/item/weapon/wrench, -/obj/machinery/requests_console{ - department = "Science"; - departmentType = 2; - name = "Science Requests Console"; - pixel_x = -32; - pixel_y = 0 - }, -/obj/item/weapon/book/manual/research_and_development, -/turf/open/floor/plasteel/purple/side{ - dir = 1 - }, -/area/toxins/explab) -"bmk" = ( -/obj/structure/sink/kitchen{ - desc = "A sink used for washing one's hands and face. It looks rusty and home-made"; - name = "old sink"; - pixel_y = 28 - }, -/turf/open/floor/plasteel/purple/side{ - dir = 1 - }, -/area/toxins/explab) -"bml" = ( -/obj/machinery/disposal/bin, -/obj/machinery/light{ - dir = 1 - }, -/obj/structure/disposalpipe/trunk{ - dir = 4 - }, -/turf/open/floor/plasteel/purple/side{ - dir = 1 - }, -/area/toxins/explab) -"bmm" = ( -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - on = 1 - }, -/turf/open/floor/plasteel/purple/side{ - dir = 1 - }, -/area/toxins/explab) -"bmn" = ( -/obj/structure/chair/office/light{ - dir = 1 - }, -/turf/open/floor/plasteel/purple/side{ - dir = 1 - }, -/area/toxins/explab) -"bmo" = ( -/obj/item/weapon/storage/toolbox/mechanical, -/obj/machinery/holopad, -/turf/open/floor/plasteel/purple/side{ - dir = 1 - }, -/area/toxins/explab) -"bmp" = ( -/obj/machinery/shower{ - dir = 4; - icon_state = "shower"; - name = "emergency shower" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 8; - initialize_directions = 11 - }, -/turf/open/floor/plasteel/warnwhite{ - dir = 10; - heat_capacity = 1e+006 - }, -/area/medical/research{ - name = "Research Division" - }) -"bmq" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warnwhite, -/area/medical/research{ - name = "Research Division" - }) -"bmr" = ( -/obj/structure/closet/firecloset/full, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/warnwhite{ - dir = 6 - }, -/area/medical/research{ - name = "Research Division" - }) -"bms" = ( -/obj/structure/closet/wardrobe/robotics_black, -/obj/item/device/radio/headset/headset_sci{ - pixel_x = -3 - }, -/turf/open/floor/plasteel/purple/side{ - dir = 8 - }, -/area/assembly/robotics) -"bmt" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - on = 1 - }, -/turf/open/floor/plasteel, -/area/assembly/robotics) -"bmu" = ( -/obj/item/device/assembly/prox_sensor{ - pixel_x = -8; - pixel_y = 4 - }, -/obj/item/device/assembly/prox_sensor{ - pixel_x = -8; - pixel_y = 4 - }, -/obj/item/device/assembly/prox_sensor{ - pixel_x = -8; - pixel_y = 4 - }, -/obj/item/device/assembly/prox_sensor{ - pixel_x = -8; - pixel_y = 4 - }, -/obj/item/weapon/stock_parts/cell/high/plus, -/obj/item/weapon/stock_parts/cell/high/plus{ - pixel_x = 5; - pixel_y = -5 - }, -/obj/item/weapon/crowbar, -/obj/structure/table, -/turf/open/floor/plasteel, -/area/assembly/robotics) -"bmv" = ( -/obj/item/weapon/circular_saw, -/obj/item/weapon/scalpel{ - pixel_y = 12 - }, -/obj/structure/window/reinforced{ - dir = 1; - pixel_y = 1 - }, -/obj/item/weapon/razor{ - pixel_y = 5 - }, -/obj/structure/window/reinforced{ - dir = 8; - layer = 2.9 - }, -/obj/structure/table, -/turf/open/floor/plasteel/warnwhite{ - dir = 9 - }, -/area/assembly/robotics) -"bmw" = ( -/turf/open/floor/plasteel/warnwhite{ - dir = 1 - }, -/area/assembly/robotics) -"bmx" = ( -/obj/machinery/holopad, -/turf/open/floor/plasteel/warnwhite{ - dir = 1 - }, -/area/assembly/robotics) -"bmy" = ( -/obj/item/clothing/gloves/color/latex, -/obj/item/weapon/surgical_drapes, -/obj/structure/window/reinforced{ - dir = 1; - pixel_y = 1 - }, -/obj/structure/table, -/turf/open/floor/plasteel/warnwhite{ - dir = 1 - }, -/area/assembly/robotics) -"bmz" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible{ - dir = 1; - name = "Connector Port (Air Supply)" - }, -/obj/machinery/light_switch{ - pixel_x = -25 - }, -/turf/open/floor/plasteel, -/area/toxins/explab) -"bmA" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/toxins/explab) -"bmB" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 6 - }, -/turf/open/floor/plasteel, -/area/toxins/explab) -"bmC" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 9 - }, -/obj/machinery/holopad, -/turf/open/floor/plasteel, -/area/toxins/explab) -"bmD" = ( -/turf/open/floor/plasteel, -/area/toxins/explab) -"bmE" = ( -/obj/machinery/droneDispenser, -/turf/open/floor/plasteel, -/area/toxins/explab) -"bmF" = ( -/obj/structure/chair/stool, -/obj/effect/decal/cleanable/oil{ - icon_state = "floor5" - }, -/turf/open/floor/plasteel, -/area/toxins/explab) -"bmG" = ( -/obj/structure/chair/stool, -/turf/open/floor/plasteel, -/area/toxins/explab) -"bmH" = ( -/obj/structure/table, -/obj/item/weapon/storage/box/beakers{ - pixel_x = 2; - pixel_y = 2 - }, -/obj/item/weapon/grenade/chem_grenade, -/obj/item/weapon/grenade/chem_grenade, -/obj/machinery/firealarm{ - dir = 4; - pixel_x = 28 - }, -/turf/open/floor/plasteel, -/area/toxins/explab) -"bmI" = ( -/obj/structure/table/glass, -/obj/item/weapon/folder, -/obj/item/weapon/pen, -/turf/open/floor/plasteel/whitepurple/side{ - dir = 8 - }, -/area/toxins/xenobiology) -"bmJ" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/white, -/area/toxins/xenobiology) -"bmK" = ( -/obj/structure/chair/comfy/beige{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/toxins/xenobiology) -"bmL" = ( -/obj/machinery/computer/camera_advanced/xenobio, -/obj/machinery/camera{ - c_tag = "Xenobiology Port"; - dir = 8; - network = list("SS13","RD") - }, -/turf/open/floor/plasteel/whitepurple/side{ - dir = 4 - }, -/area/toxins/xenobiology) -"bmM" = ( -/obj/structure/sign/biohazard, -/turf/closed/wall, -/area/toxins/xenobiology) -"bmN" = ( -/obj/item/weapon/wrench, -/turf/open/floor/plasteel/warning{ - dir = 2 - }, -/area/toxins/xenobiology) -"bmO" = ( -/obj/machinery/computer/security/telescreen{ - name = "Test Chamber Moniter"; - network = list("Xeno"); - pixel_x = 0; - pixel_y = 2 - }, -/obj/structure/table/reinforced, -/turf/open/floor/plasteel/warning{ - dir = 2 - }, -/area/toxins/xenobiology) -"bmP" = ( -/obj/machinery/button/door{ - id = "misclab"; - name = "Test Chamber Blast Doors"; - pixel_x = 0; - pixel_y = -2; - req_access_txt = "55" - }, -/obj/structure/table/reinforced, -/obj/structure/window/reinforced{ - dir = 4 - }, -/turf/open/floor/plasteel/warning{ - dir = 6 - }, -/area/toxins/xenobiology) -"bmQ" = ( -/obj/machinery/door/window/southleft{ - name = "Test Chamber"; - req_access_txt = "55" - }, -/turf/open/floor/plasteel/warning{ - dir = 2 - }, -/area/toxins/xenobiology) -"bmR" = ( -/obj/machinery/disposal/bin, -/obj/structure/disposalpipe/trunk{ - dir = 1 - }, -/obj/structure/window/reinforced{ - dir = 8 - }, -/turf/open/floor/plasteel/warning{ - dir = 10 - }, -/area/toxins/xenobiology) -"bmS" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible{ - dir = 4 - }, -/turf/open/floor/plasteel/warning, -/area/toxins/xenobiology) -"bmT" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/components/binary/pump{ - dir = 4 - }, -/turf/open/floor/plasteel/warning{ - dir = 2 - }, -/area/toxins/xenobiology) -"bmU" = ( -/obj/structure/sign/xenobio, -/obj/machinery/atmospherics/pipe/simple/general/hidden{ - dir = 9 - }, -/turf/closed/wall, -/area/toxins/xenobiology) -"bmV" = ( -/obj/machinery/disposal/bin, -/obj/structure/window/reinforced{ - dir = 4; - pixel_x = 0 - }, -/obj/structure/disposalpipe/trunk{ - dir = 1 - }, -/turf/open/floor/plasteel/warning{ - tag = "icon-warning (NORTHEAST)"; - dir = 5 - }, -/area/toxins/xenobiology) -"bmW" = ( -/obj/machinery/door/window/northleft{ - base_state = "right"; - dir = 2; - icon_state = "right"; - name = "Containment Pen #5"; - req_access_txt = "55" - }, -/turf/open/floor/plasteel/warning{ - tag = "icon-warning (NORTH)"; - dir = 1 - }, -/area/toxins/xenobiology) -"bmX" = ( -/obj/structure/table/reinforced, -/obj/machinery/button/door{ - id = "xenobio5"; - name = "Containment Blast Doors"; - pixel_x = 0; - pixel_y = 4; - req_access_txt = "55" - }, -/obj/structure/window/reinforced{ - dir = 8; - layer = 2.9 - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/warning{ - dir = 9 - }, -/area/toxins/xenobiology) -"bmY" = ( -/obj/machinery/door/window/northleft{ - base_state = "right"; - dir = 2; - icon_state = "right"; - name = "Containment Pen #6"; - req_access_txt = "55" - }, -/turf/open/floor/plasteel/warning{ - tag = "icon-warning (NORTH)"; - dir = 1 - }, -/area/toxins/xenobiology) -"bmZ" = ( -/obj/structure/table/reinforced, -/obj/machinery/button/door{ - id = "xenobio6"; - name = "Containment Blast Doors"; - pixel_x = 0; - pixel_y = 4; - req_access_txt = "55" - }, -/obj/structure/window/reinforced{ - dir = 8; - layer = 2.9 - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/warning{ - dir = 9 - }, -/area/toxins/xenobiology) -"bna" = ( -/obj/machinery/door/airlock/maintenance{ - req_access_txt = "0"; - req_one_access_txt = "12; 55" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/toxins/xenobiology) -"bnb" = ( -/obj/structure/chair{ - dir = 4 - }, -/obj/item/weapon/cigbutt, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"bnc" = ( -/turf/open/floor/mineral/titanium/blue, -/turf/closed/wall/mineral/titanium/interior, -/area/shuttle/transport) -"bnd" = ( -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/transport) -"bne" = ( -/obj/machinery/computer/shuttle/ferry/request, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/transport) -"bnf" = ( -/obj/structure/chair, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/transport) -"bng" = ( -/obj/structure/grille, -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; - icon_state = "space"; - layer = 4; - name = "EXTERNAL AIRLOCK"; - pixel_x = 0 - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/hallway/secondary/entry) -"bnh" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/camera{ - c_tag = "Arrivals Starboard Aft"; - dir = 8 - }, -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/obj/machinery/atmospherics/pipe/simple/cyan/hidden, -/obj/structure/extinguisher_cabinet{ - pixel_x = 27; - pixel_y = 0 - }, -/turf/open/floor/plasteel/neutral/corner, -/area/hallway/secondary/entry) -"bni" = ( -/obj/machinery/dna_scannernew, -/turf/open/floor/plasteel/blue, -/area/medical/genetics) -"bnj" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 6 - }, -/turf/open/floor/plasteel/warnwhite{ - dir = 8 - }, -/area/medical/genetics) -"bnk" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/medical/genetics) -"bnl" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 1; - initialize_directions = 11 - }, -/turf/open/floor/plasteel/white, -/area/medical/genetics) -"bnm" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/medical/genetics) -"bnn" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/medical/genetics) -"bno" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 10 - }, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 1 - }, -/area/medical/medbay3) -"bnp" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/white, -/area/medical/medbay3) -"bnq" = ( -/obj/machinery/shower{ - dir = 8 - }, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 4 - }, -/area/medical/medbay3) -"bnr" = ( -/turf/closed/wall, -/area/medical/sleeper) -"bns" = ( -/obj/machinery/atmospherics/components/unary/thermomachine/freezer, -/obj/machinery/firealarm{ - dir = 8; - pixel_x = -26 - }, -/obj/structure/sign/poster{ - pixel_y = 32 - }, -/turf/open/floor/plasteel/blue, -/area/medical/sleeper) -"bnt" = ( -/obj/machinery/atmospherics/components/unary/cryo_cell, -/turf/open/floor/plasteel/blue, -/area/medical/sleeper) -"bnu" = ( -/turf/open/floor/plasteel/black, -/area/library) -"bnv" = ( -/obj/machinery/portable_atmospherics/canister/oxygen, -/obj/machinery/atmospherics/components/unary/portables_connector/visible, -/obj/structure/noticeboard{ - pixel_y = 32 - }, -/obj/machinery/light{ - dir = 1 - }, -/turf/open/floor/plasteel/blue, -/area/medical/sleeper) -"bnw" = ( -/obj/machinery/portable_atmospherics/canister/oxygen, -/obj/machinery/atmospherics/components/unary/portables_connector/visible, -/obj/item/device/radio/intercom{ - broadcasting = 0; - freerange = 0; - frequency = 1485; - listening = 1; - name = "Station Intercom (Medbay)"; - pixel_x = 28; - pixel_y = 0 - }, -/obj/machinery/airalarm{ - pixel_y = 22 - }, -/turf/open/floor/plasteel/blue, -/area/medical/sleeper) -"bnx" = ( -/obj/machinery/shower{ - dir = 4 - }, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 1 - }, -/area/medical/medbay) -"bny" = ( -/obj/structure/extinguisher_cabinet{ - pixel_x = 24 - }, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 4 - }, -/area/medical/medbay) -"bnz" = ( -/obj/machinery/button/door{ - desc = "A remote control switch for the medbay foyer."; - id = "MedbayFoyer"; - name = "Medbay Exit Button"; - normaldoorcontrol = 1; - pixel_x = -26; - pixel_y = -2 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 8 - }, -/area/medical/medbay) -"bnA" = ( -/obj/machinery/chem_dispenser{ - layer = 2.7 - }, -/obj/machinery/button/door{ - desc = "A remote control switch for the medbay foyer."; - id = "MedbayFoyer"; - name = "Medbay Door Control"; - normaldoorcontrol = 1; - pixel_x = -26; - pixel_y = -2; - req_access_txt = "5" - }, -/turf/open/floor/plasteel/whiteyellow/side{ - dir = 8 - }, -/area/medical/chemistry) -"bnB" = ( -/turf/open/floor/plasteel/white, -/area/medical/chemistry) -"bnC" = ( -/obj/item/weapon/book/manual/wiki/chemistry, -/obj/item/weapon/storage/box/beakers, -/obj/structure/table/glass, -/turf/open/floor/plasteel/white, -/area/medical/chemistry) -"bnD" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - on = 1 - }, -/turf/open/floor/plasteel/white, -/area/medical/chemistry) -"bnE" = ( -/obj/machinery/chem_dispenser{ - layer = 2.7 - }, -/obj/item/device/radio/intercom{ - dir = 0; - name = "Station Intercom (General)"; - pixel_x = 29 - }, -/turf/open/floor/plasteel/white, -/area/medical/chemistry) -"bnF" = ( -/obj/machinery/light{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 8 - }, -/turf/open/floor/plasteel/yellow/corner{ - dir = 1 - }, -/area/hallway/primary/aft) -"bnG" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/aft) -"bnH" = ( -/obj/structure/table, -/obj/structure/extinguisher_cabinet{ - pixel_x = -26 - }, -/obj/item/weapon/disk/tech_disk{ - pixel_x = 0; - pixel_y = 0 - }, -/obj/item/weapon/disk/design_disk, -/turf/open/floor/plasteel, -/area/toxins/explab) -"bnI" = ( -/turf/open/floor/plasteel/warning, -/area/toxins/explab) -"bnJ" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/warning, -/area/toxins/explab) -"bnK" = ( -/obj/machinery/power/apc{ - dir = 4; - name = "Research Lab APC"; - pixel_x = 26; - pixel_y = 0 - }, -/obj/structure/cable{ - icon_state = "0-2"; - pixel_y = 1; - d2 = 2 - }, -/turf/open/floor/plasteel, -/area/toxins/explab) -"bnL" = ( -/obj/machinery/door/firedoor/heavy, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/door/poddoor/preopen{ - id = "rndshutters"; - name = "research shutters" - }, -/turf/open/floor/plasteel/bot, -/area/medical/research{ - name = "Research Division" - }) -"bnM" = ( -/obj/machinery/door/firedoor/heavy, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/door/poddoor/preopen{ - id = "rndshutters"; - name = "research shutters" - }, -/turf/open/floor/plasteel/bot, -/area/medical/research{ - name = "Research Division" - }) -"bnN" = ( -/obj/machinery/door/firedoor/heavy, -/obj/machinery/door/poddoor/preopen{ - id = "rndshutters"; - name = "research shutters" - }, -/turf/open/floor/plasteel/bot, -/area/medical/research{ - name = "Research Division" - }) -"bnO" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/assembly/robotics) -"bnP" = ( -/obj/item/weapon/storage/firstaid/regular{ - empty = 1; - name = "First-Aid (empty)" - }, -/obj/item/weapon/storage/firstaid/regular{ - empty = 1; - name = "First-Aid (empty)" - }, -/obj/item/weapon/storage/firstaid/regular{ - empty = 1; - name = "First-Aid (empty)" - }, -/obj/item/device/healthanalyzer, -/obj/item/device/healthanalyzer, -/obj/item/device/healthanalyzer, -/obj/item/stack/cable_coil, -/obj/item/stack/cable_coil, -/obj/structure/table, -/turf/open/floor/plasteel, -/area/assembly/robotics) -"bnQ" = ( -/obj/item/weapon/retractor, -/obj/item/weapon/hemostat, -/obj/structure/window/reinforced{ - dir = 8; - layer = 2.9 - }, -/obj/structure/table, -/turf/open/floor/plasteel/warnwhite{ - dir = 8 - }, -/area/assembly/robotics) -"bnR" = ( -/obj/structure/table/optable{ - name = "Robotics Operating Table" - }, -/obj/machinery/camera{ - c_tag = "Robotics - Aft"; - dir = 1; - network = list("SS13","RD") - }, -/turf/open/floor/plasteel/white, -/area/assembly/robotics) -"bnS" = ( -/obj/machinery/computer/operating{ - name = "Robotics Operating Computer" - }, -/turf/open/floor/plasteel/white, -/area/assembly/robotics) -"bnT" = ( -/obj/item/device/mmi, -/obj/item/device/mmi, -/obj/item/device/mmi, -/obj/structure/table, -/turf/open/floor/plasteel/white, -/area/assembly/robotics) -"bnU" = ( -/obj/structure/rack, -/obj/item/weapon/crowbar, -/obj/item/weapon/wrench, -/turf/open/floor/plasteel, -/area/toxins/explab) -"bnV" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/toxins/explab) -"bnW" = ( -/obj/structure/closet/emcloset, -/obj/machinery/light, -/turf/open/floor/plasteel, -/area/toxins/explab) -"bnX" = ( -/obj/structure/closet/radiation, -/obj/item/device/radio/intercom{ - dir = 0; - name = "Station Intercom (General)"; - pixel_x = 0; - pixel_y = -28 - }, -/turf/open/floor/plasteel, -/area/toxins/explab) -"bnY" = ( -/obj/structure/reagent_dispensers/fueltank, -/turf/open/floor/plasteel, -/area/toxins/explab) -"bnZ" = ( -/obj/structure/reagent_dispensers/watertank, -/obj/machinery/camera{ - c_tag = "Experimentation Lab"; - dir = 1; - network = list("SS13","RD"); - pixel_y = 0 - }, -/obj/machinery/airalarm{ - dir = 1; - pixel_y = -22 - }, -/turf/open/floor/plasteel, -/area/toxins/explab) -"boa" = ( -/obj/structure/table, -/obj/item/weapon/storage/toolbox/mechanical, -/obj/item/clothing/ears/earmuffs, -/turf/open/floor/plasteel, -/area/toxins/explab) -"bob" = ( -/obj/structure/table, -/obj/item/device/electropack, -/obj/item/device/healthanalyzer, -/obj/item/device/assembly/signaler, -/obj/machinery/light, -/obj/item/device/assembly/voice, -/turf/open/floor/plasteel, -/area/toxins/explab) -"boc" = ( -/obj/structure/table, -/obj/machinery/cell_charger{ - pixel_y = 5 - }, -/obj/item/stack/cable_coil, -/obj/item/device/multitool, -/obj/item/weapon/screwdriver, -/turf/open/floor/plasteel, -/area/toxins/explab) -"bod" = ( -/obj/structure/table, -/obj/item/weapon/hand_labeler, -/obj/item/clothing/glasses/science, -/obj/item/clothing/glasses/science, -/turf/open/floor/plasteel, -/area/toxins/explab) -"boe" = ( -/obj/machinery/disposal/bin, -/obj/structure/disposalpipe/trunk, -/obj/machinery/firealarm{ - dir = 8; - pixel_x = -27 - }, -/turf/open/floor/plasteel/whitepurple/side{ - dir = 8 - }, -/area/toxins/xenobiology) -"bof" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 8 - }, -/turf/open/floor/plasteel/white, -/area/toxins/xenobiology) -"bog" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/toxins/xenobiology) -"boh" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/whitepurple/corner{ - dir = 4 - }, -/area/toxins/xenobiology) -"boi" = ( -/obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/whitegreen/side{ - dir = 1 - }, -/area/toxins/xenobiology) -"boj" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/whitegreen/side{ - dir = 1 - }, -/area/toxins/xenobiology) -"bok" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/whitegreen/side{ - dir = 1 - }, -/area/toxins/xenobiology) -"bol" = ( -/obj/machinery/light{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/whitegreen/side{ - dir = 1 - }, -/area/toxins/xenobiology) -"bom" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/whitepurple/side{ - dir = 1 - }, -/area/toxins/xenobiology) -"bon" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/whitepurple/side{ - dir = 1 - }, -/area/toxins/xenobiology) -"boo" = ( -/obj/machinery/camera{ - c_tag = "Xenobiology Starboard Fore"; - dir = 2; - network = list("SS13","RD") - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 1 - }, -/obj/machinery/firealarm{ - dir = 1; - pixel_y = 28 - }, -/turf/open/floor/plasteel/whitepurple/side{ - dir = 1 - }, -/area/toxins/xenobiology) -"bop" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 10 - }, -/turf/open/floor/plasteel/whitepurple/side{ - dir = 1 - }, -/area/toxins/xenobiology) -"boq" = ( -/obj/structure/chair{ - dir = 4 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - layer = 2.4; - on = 1 - }, -/obj/machinery/light/small{ - dir = 8 - }, -/obj/effect/landmark{ - name = "xeno_spawn"; - pixel_x = -1 - }, -/turf/open/floor/plasteel/floorgrime, -/area/toxins/xenobiology) -"bor" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 4; - initialize_directions = 11 - }, -/turf/open/floor/plasteel/floorgrime, -/area/toxins/xenobiology) -"bos" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/structure/sign/biohazard, -/turf/open/floor/plating, -/area/toxins/xenobiology) -"bot" = ( -/turf/open/floor/plasteel/airless/circuit, -/area/toxins/xenobiology) -"bou" = ( -/obj/effect/decal/remains/xeno, -/turf/open/floor/plasteel/airless/circuit, -/area/toxins/xenobiology) -"bov" = ( -/obj/structure/chair{ - dir = 4 - }, -/obj/item/weapon/reagent_containers/food/drinks/soda_cans/dr_gibb, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"bow" = ( -/obj/machinery/door/airlock/titanium, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/transport) -"box" = ( -/obj/machinery/door/airlock/titanium, -/obj/docking_port/mobile{ - dir = 8; - dwidth = 2; - height = 12; - id = "ferry"; - name = "ferry shuttle"; - port_angle = 0; - preferred_direction = 4; - roundstart_move = "ferry_away"; - width = 5 - }, -/obj/docking_port/stationary{ - dir = 8; - dwidth = 2; - height = 12; - id = "ferry_home"; - name = "port bay 2"; - turf_type = /turf/open/space; - width = 5 - }, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/transport) -"boy" = ( -/obj/machinery/door/airlock/external{ - cyclelinkeddir = 4; - id_tag = null; - name = "Port Docking Bay 2"; - req_access_txt = "0" - }, -/turf/open/floor/plating, -/area/hallway/secondary/entry) -"boz" = ( -/obj/machinery/door/airlock/external{ - cyclelinkeddir = 8; - id_tag = null; - name = "Port Docking Bay 2"; - req_access_txt = "0" - }, -/turf/open/floor/plating, -/area/hallway/secondary/entry) -"boA" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4"; - tag = "" - }, -/obj/machinery/atmospherics/pipe/simple/cyan/hidden{ - tag = "icon-intact (NORTHEAST)"; - icon_state = "intact"; - dir = 5 - }, -/turf/open/floor/plasteel/neutral/corner, -/area/hallway/secondary/entry) -"boB" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/door/airlock/maintenance{ - req_access_txt = "12" - }, -/obj/machinery/atmospherics/pipe/simple/cyan/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"boC" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"boD" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/cyan/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plating, -/area/maintenance/aft) -"boE" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/cyan/hidden{ - tag = "icon-intact (SOUTHWEST)"; - icon_state = "intact"; - dir = 10 - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"boF" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"boG" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21" - }, -/turf/open/floor/plasteel/whiteblue/side, -/area/medical/genetics) -"boH" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/whiteblue/side, -/area/medical/genetics) -"boI" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/whiteblue/side, -/area/medical/genetics) -"boJ" = ( -/obj/structure/table, -/obj/item/weapon/book/manual/medical_cloning{ - pixel_y = 6 - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/whiteblue/side, -/area/medical/genetics) -"boK" = ( -/obj/structure/table, -/obj/item/weapon/storage/box/rxglasses{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/storage/box/bodybags, -/obj/item/weapon/pen, -/obj/machinery/button/door{ - desc = "A remote control switch for the genetics doors."; - id = "GeneticsDoor"; - name = "Genetics Exit Button"; - normaldoorcontrol = 1; - pixel_x = 24; - pixel_y = 8 - }, -/turf/open/floor/plasteel/whiteblue/side, -/area/medical/genetics) -"boL" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/white, -/area/medical/medbay3) -"boM" = ( -/turf/open/floor/plasteel/white, -/area/medical/medbay3) -"boN" = ( -/obj/machinery/door/firedoor, -/turf/open/floor/plasteel/white, -/area/medical/sleeper) -"boO" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible{ - icon_state = "intact"; - dir = 5 - }, -/turf/open/floor/plasteel/warnwhite/corner{ - dir = 8 - }, -/area/medical/sleeper) -"boP" = ( -/obj/machinery/atmospherics/pipe/manifold/general/visible, -/turf/open/floor/plasteel/warnwhite{ - dir = 1 - }, -/area/medical/sleeper) -"boQ" = ( -/obj/item/weapon/wrench/medical, -/obj/machinery/atmospherics/pipe/manifold/general/visible, -/turf/open/floor/plasteel/warnwhite{ - dir = 1 - }, -/area/medical/sleeper) -"boR" = ( -/obj/machinery/light/small{ - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/library) -"boS" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible{ - dir = 9 - }, -/turf/open/floor/plasteel/warnwhite/corner{ - dir = 4; - heat_capacity = 1e+006 - }, -/area/medical/sleeper) -"boT" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 5 - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"boU" = ( -/obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"boV" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"boW" = ( -/obj/machinery/light{ - dir = 4 - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/whiteblue/corner, -/area/medical/medbay) -"boX" = ( -/obj/machinery/chem_heater, -/obj/machinery/light{ - dir = 8 - }, -/obj/structure/extinguisher_cabinet{ - pixel_x = -28 - }, -/obj/machinery/camera{ - c_tag = "Chemistry"; - dir = 4; - network = list("SS13") - }, -/turf/open/floor/plasteel/whiteyellow/side{ - dir = 8 - }, -/area/medical/chemistry) -"boY" = ( -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/white, -/area/medical/chemistry) -"boZ" = ( -/obj/machinery/disposal/bin{ - pixel_x = 0 - }, -/obj/structure/disposalpipe/trunk{ - dir = 8 - }, -/turf/open/floor/plasteel/white, -/area/medical/chemistry) -"bpa" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/white, -/area/medical/chemistry) -"bpb" = ( -/obj/machinery/chem_heater, -/obj/machinery/firealarm{ - dir = 4; - pixel_x = 28 - }, -/turf/open/floor/plasteel/whiteyellow/side{ - dir = 6 - }, -/area/medical/chemistry) -"bpc" = ( -/obj/structure/rack, -/obj/effect/decal/cleanable/oil{ - icon_state = "floor6" - }, -/obj/item/stack/sheet/metal{ - amount = 50 - }, -/obj/item/stack/sheet/glass{ - amount = 50; - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/reagent_containers/glass/beaker/large, -/obj/machinery/airalarm{ - dir = 4; - icon_state = "alarm0"; - pixel_x = -22 - }, -/obj/item/weapon/storage/box/beakers, -/obj/item/clothing/glasses/welding, -/turf/open/floor/plasteel, -/area/toxins/explab) -"bpd" = ( -/obj/machinery/r_n_d/destructive_analyzer, -/turf/open/floor/plasteel/delivery, -/area/toxins/explab) -"bpe" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/bot, -/area/toxins/explab) -"bpf" = ( -/obj/machinery/r_n_d/protolathe, -/turf/open/floor/plasteel/delivery, -/area/toxins/explab) -"bpg" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/camera{ - c_tag = "Research and Development Lab"; - dir = 8; - network = list("SS13","RD") - }, -/obj/machinery/firealarm{ - dir = 4; - pixel_x = 28 - }, -/turf/open/floor/plasteel, -/area/toxins/explab) -"bph" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall/r_wall, -/area/medical/research{ - name = "Research Division" - }) -"bpi" = ( -/obj/machinery/door/airlock/research{ - cyclelinkeddir = 1; - name = "Research Division Access"; - req_access_txt = "47" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/warnwhite{ - dir = 1 - }, -/area/medical/research{ - name = "Research Division" - }) -"bpj" = ( -/turf/closed/wall/r_wall, -/area/medical/research{ - name = "Research Division" - }) -"bpk" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/assembly/robotics) -"bpl" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass_research{ - name = "Robotics Lab"; - req_access_txt = "29" - }, -/turf/open/floor/plasteel, -/area/assembly/robotics) -"bpm" = ( -/turf/closed/wall, -/area/assembly/robotics) -"bpn" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/toxins/explab) -"bpo" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass_research{ - name = "Experimentation Lab"; - req_access_txt = "47" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/toxins/explab) -"bpp" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/toxins/explab) -"bpq" = ( -/obj/item/device/radio/intercom{ - dir = 0; - name = "Station Intercom (General)"; - pixel_x = 0; - pixel_y = -28 - }, -/turf/closed/wall, -/area/toxins/explab) -"bpr" = ( -/obj/machinery/light{ - dir = 8 - }, -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/whitepurple/side{ - dir = 8 - }, -/area/toxins/xenobiology) -"bps" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/white, -/area/toxins/xenobiology) -"bpt" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 2; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/white, -/area/toxins/xenobiology) -"bpu" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/toxins/xenobiology) -"bpv" = ( -/obj/machinery/door/firedoor, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/toxins/xenobiology) -"bpw" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4"; - tag = "" - }, -/turf/open/floor/plasteel/white, -/area/toxins/xenobiology) -"bpx" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/white, -/area/toxins/xenobiology) -"bpy" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 10 - }, -/turf/open/floor/plasteel/white, -/area/toxins/xenobiology) -"bpz" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/white, -/area/toxins/xenobiology) -"bpA" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4"; - tag = "" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/white, -/area/toxins/xenobiology) -"bpB" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4"; - tag = "" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4"; - tag = "90Curve" - }, -/turf/open/floor/plasteel/white, -/area/toxins/xenobiology) -"bpC" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/turf/open/floor/plasteel/white, -/area/toxins/xenobiology) -"bpD" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4"; - tag = "" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4"; - tag = "90Curve" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 5 - }, -/turf/open/floor/plasteel/white, -/area/toxins/xenobiology) -"bpE" = ( -/obj/machinery/door/airlock/research{ - name = "Kill Room Access"; - req_access_txt = "55" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/research{ - name = "Kill Room Access"; - req_access_txt = "55" - }, -/turf/open/floor/plasteel, -/area/toxins/xenobiology) -"bpF" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/effect/landmark/event_spawn, -/turf/open/floor/plasteel/floorgrime, -/area/toxins/xenobiology) -"bpG" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/obj/structure/cable{ - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 4; - initialize_directions = 11 - }, -/obj/effect/landmark{ - name = "blobstart" - }, -/turf/open/floor/plasteel/floorgrime, -/area/toxins/xenobiology) -"bpH" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass_research{ - name = "Kill Room"; - req_access_txt = "55" - }, -/turf/open/floor/plating, -/area/toxins/xenobiology) -"bpI" = ( -/obj/machinery/light/small{ - dir = 4 - }, -/obj/machinery/camera{ - c_tag = "Xenobiology Kill Room"; - dir = 8; - network = list("SS13","RD") - }, -/turf/open/floor/plasteel/airless/circuit, -/area/toxins/xenobiology) -"bpJ" = ( -/obj/structure/closet/crate, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/transport) -"bpK" = ( -/obj/structure/chair{ - dir = 1 - }, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/transport) -"bpL" = ( -/turf/open/floor/plasteel/neutral/corner, -/area/hallway/secondary/entry) -"bpM" = ( -/turf/closed/wall, -/area/maintenance/aft) -"bpN" = ( -/turf/open/floor/plating{ - icon_state = "platingdmg3" - }, -/area/maintenance/aft) -"bpO" = ( -/obj/effect/spawner/lootdrop/grille_or_trash, -/turf/open/floor/plating, -/area/maintenance/aft) -"bpP" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/cyan/hidden, -/turf/open/floor/plating{ - icon_state = "platingdmg3" - }, -/area/maintenance/aft) -"bpQ" = ( -/obj/machinery/portable_atmospherics/canister/air, -/turf/open/floor/plating, -/area/maintenance/aft) -"bpR" = ( -/obj/structure/girder, -/turf/open/floor/plating, -/area/maintenance/aft) -"bpS" = ( -/turf/closed/wall/r_wall, -/area/medical/genetics) -"bpT" = ( -/obj/machinery/door/airlock/glass_research{ - name = "Genetics"; - req_access_txt = "9" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/whiteblue, -/area/medical/genetics) -"bpU" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/medical/genetics) -"bpV" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/camera{ - c_tag = "Medbay Port Hallway"; - dir = 4; - network = list("SS13") - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay3) -"bpW" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay3) -"bpX" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay3) -"bpY" = ( -/obj/machinery/door/firedoor, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/medical/sleeper) -"bpZ" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/medical/sleeper) -"bqa" = ( -/obj/machinery/holopad, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/medical/sleeper) -"bqb" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"bqc" = ( -/obj/structure/disposalpipe/junction{ - dir = 8; - icon_state = "pipe-j2" - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"bqd" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"bqe" = ( -/obj/machinery/door/firedoor, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"bqf" = ( -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 8; - initialize_directions = 11 - }, -/turf/open/floor/plasteel/whiteblue/corner, -/area/medical/medbay) -"bqg" = ( -/obj/machinery/door/airlock/glass_medical{ - id_tag = null; - name = "Chemistry Lab"; - req_access_txt = "5; 33" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/medical/chemistry) -"bqh" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 10 - }, -/turf/open/floor/plasteel/white, -/area/medical/chemistry) -"bqi" = ( -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/white, -/area/medical/chemistry) -"bqj" = ( -/obj/machinery/shower{ - dir = 8; - name = "emergency shower" - }, -/obj/machinery/requests_console{ - department = "Chemistry"; - departmentType = 2; - pixel_x = 32; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/white, -/area/medical/chemistry) -"bqk" = ( -/obj/machinery/camera{ - c_tag = "Aft Primary Hallway Chemistry"; - dir = 4; - network = list("SS13"); - pixel_x = 0; - pixel_y = 0; - start_active = 1 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/yellow/corner{ - dir = 1 - }, -/area/hallway/primary/aft) -"bql" = ( -/obj/item/device/radio/intercom{ - dir = 0; - name = "Station Intercom (General)"; - pixel_x = -28; - pixel_y = 3 - }, -/obj/machinery/button/door{ - dir = 2; - id = "research_shutters_2"; - name = "Shutters Control Button"; - pixel_x = -28; - pixel_y = -7; - req_access_txt = "7; 29" - }, -/turf/open/floor/plasteel, -/area/toxins/explab) -"bqm" = ( -/obj/machinery/computer/rdconsole/core, -/turf/open/floor/plasteel/delivery, -/area/toxins/explab) -"bqn" = ( -/obj/structure/disposalpipe/segment, -/obj/effect/landmark/start{ - name = "Scientist" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/bot, -/area/toxins/explab) -"bqo" = ( -/obj/machinery/r_n_d/circuit_imprinter{ - pixel_y = 4 - }, -/obj/item/weapon/reagent_containers/glass/beaker/sulphuric, -/turf/open/floor/plasteel/delivery, -/area/toxins/explab) -"bqp" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plasteel, -/area/toxins/explab) -"bqq" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/white/side{ - dir = 4 - }, -/area/medical/research{ - name = "Research Division" - }) -"bqr" = ( -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 8 - }, -/turf/open/floor/plasteel/white, -/area/medical/research{ - name = "Research Division" - }) -"bqs" = ( -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/medical/research{ - name = "Research Division" - }) -"bqt" = ( -/obj/machinery/power/apc{ - cell_type = 10000; - dir = 1; - name = "Research Division APC"; - pixel_x = 0; - pixel_y = 25 - }, -/obj/structure/cable{ - icon_state = "0-2"; - pixel_y = 1; - d2 = 2 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/medical/research{ - name = "Research Division" - }) -"bqu" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white/side, -/area/medical/research{ - name = "Research Division" - }) -"bqv" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/whitepurple/side{ - dir = 1 - }, -/area/medical/research{ - name = "Research Division" - }) -"bqw" = ( -/obj/machinery/light{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/medical/research{ - name = "Research Division" - }) -"bqx" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/airalarm{ - pixel_y = 22 - }, -/turf/open/floor/plasteel/white, -/area/medical/research{ - name = "Research Division" - }) -"bqy" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/firealarm{ - dir = 1; - pixel_y = 24 - }, -/turf/open/floor/plasteel/white, -/area/medical/research{ - name = "Research Division" - }) -"bqz" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold-b-f (NORTH)"; - dir = 1 - }, -/turf/open/floor/plasteel/white/side, -/area/medical/research{ - name = "Research Division" - }) -"bqA" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/open/floor/plasteel/whitepurple/side{ - dir = 1 - }, -/area/medical/research{ - name = "Research Division" - }) -"bqB" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white/side, -/area/medical/research{ - name = "Research Division" - }) -"bqC" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-18"; - layer = 4.1; - pixel_y = 0 - }, -/turf/open/floor/plasteel/white/side{ - dir = 8 - }, -/area/medical/research{ - name = "Research Division" - }) -"bqD" = ( -/obj/structure/closet/firecloset, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - layer = 2.4; - on = 1 - }, -/turf/open/floor/plasteel/warnwhite{ - dir = 9 - }, -/area/toxins/xenobiology) -"bqE" = ( -/obj/structure/closet/l3closet, -/obj/machinery/camera{ - c_tag = "Xenobiology Access"; - dir = 2; - network = list("SS13") - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/toxins/xenobiology) -"bqF" = ( -/obj/structure/closet/l3closet, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 1 - }, -/turf/open/floor/plasteel/warnwhite{ - dir = 5 - }, -/area/toxins/xenobiology) -"bqG" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/toxins/xenobiology) -"bqH" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/whitepurple/side{ - dir = 8 - }, -/area/toxins/xenobiology) -"bqI" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 9; - pixel_y = 0 - }, -/turf/open/floor/plasteel/white, -/area/toxins/xenobiology) -"bqJ" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 8 - }, -/turf/open/floor/plasteel/white, -/area/toxins/xenobiology) -"bqK" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/whitepurple/corner, -/area/toxins/xenobiology) -"bqL" = ( -/obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/whitepurple/side, -/area/toxins/xenobiology) -"bqM" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/whitepurple/side, -/area/toxins/xenobiology) -"bqN" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/whitepurple/side, -/area/toxins/xenobiology) -"bqO" = ( -/obj/machinery/light, -/obj/machinery/camera{ - c_tag = "Xenobiology Central"; - dir = 1; - network = list("SS13","RD") - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 1; - initialize_directions = 11 - }, -/turf/open/floor/plasteel/whitepurple/side, -/area/toxins/xenobiology) -"bqP" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/open/floor/plasteel/whitepurple/side, -/area/toxins/xenobiology) -"bqQ" = ( -/obj/machinery/light, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/camera{ - c_tag = "Xenobiology Starboard Aft"; - dir = 1; - network = list("SS13","RD") - }, -/turf/open/floor/plasteel/whitepurple/side, -/area/toxins/xenobiology) -"bqR" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall/r_wall, -/area/toxins/xenobiology) -"bqS" = ( -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/machinery/power/apc{ - cell_type = 5000; - dir = 8; - name = "Xenobiology APC"; - pixel_x = -25 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/obj/machinery/light/small{ - brightness = 3; - dir = 8 - }, -/turf/open/floor/plasteel/floorgrime, -/area/toxins/xenobiology) -"bqT" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/floorgrime, -/area/toxins/xenobiology) -"bqU" = ( -/obj/effect/spawner/lootdrop/maintenance, -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"bqV" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/closed/wall, -/area/maintenance/apmaint) -"bqW" = ( -/obj/structure/disposaloutlet{ - dir = 4 - }, -/obj/structure/disposalpipe/trunk{ - dir = 8 - }, -/turf/open/floor/plating/airless, -/area/space) -"bqX" = ( -/turf/open/floor/plating{ - burnt = 1; - icon_state = "panelscorched" - }, -/area/maintenance/aft) -"bqY" = ( -/turf/open/floor/plating{ - broken = 1; - icon_state = "platingdmg1" - }, -/area/maintenance/aft) -"bqZ" = ( -/obj/structure/table, -/obj/item/weapon/folder/white, -/obj/item/weapon/pen, -/obj/machinery/airalarm{ - pixel_y = 22 - }, -/obj/structure/extinguisher_cabinet{ - pixel_x = -26 - }, -/turf/open/floor/plasteel/whitepurple/side{ - dir = 9 - }, -/area/medical/genetics) -"bra" = ( -/obj/machinery/computer/scan_consolenew, -/turf/open/floor/plasteel/whitepurple/side{ - dir = 1 - }, -/area/medical/genetics) -"brb" = ( -/obj/machinery/dna_scannernew, -/turf/open/floor/plasteel/whitepurple/side{ - dir = 1 - }, -/area/medical/genetics) -"brc" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/whitepurple/side{ - dir = 1 - }, -/area/medical/genetics) -"brd" = ( -/obj/machinery/disposal/bin, -/obj/structure/disposalpipe/trunk{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/whitepurple/side{ - dir = 1 - }, -/area/medical/genetics) -"bre" = ( -/obj/structure/table, -/obj/item/weapon/storage/box/rxglasses{ - pixel_x = 4; - pixel_y = 4 - }, -/obj/item/weapon/storage/box/bodybags, -/turf/open/floor/plasteel/whitepurple/side{ - dir = 5 - }, -/area/medical/genetics) -"brf" = ( -/obj/machinery/requests_console{ - announcementConsole = 0; - department = "Medbay"; - departmentType = 1; - name = "Medbay RC"; - pixel_x = -32; - pixel_y = 0; - pixel_z = 0 - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 8; - initialize_directions = 11 - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay3) -"brg" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay3) -"brh" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay3) -"bri" = ( -/obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/medical/sleeper) -"brj" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8"; - tag = "" - }, -/turf/open/floor/plasteel/warnwhite/corner, -/area/medical/sleeper) -"brk" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warnwhite, -/area/medical/sleeper) -"brl" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warnwhite/corner{ - dir = 1 - }, -/area/medical/sleeper) -"brm" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 1; - initialize_directions = 11 - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"brn" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"bro" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"brp" = ( -/obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"brq" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 9 - }, -/turf/open/floor/plasteel/whiteblue/corner, -/area/medical/medbay) -"brr" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 8; - initialize_directions = 11 - }, -/turf/open/floor/plasteel/white, -/area/medical/chemistry) -"brs" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/white, -/area/medical/chemistry) -"brt" = ( -/obj/structure/rack, -/obj/item/stack/packageWrap, -/obj/item/weapon/hand_labeler, -/obj/item/device/radio/headset/headset_med, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/white, -/area/medical/chemistry) -"bru" = ( -/obj/machinery/disposal/bin, -/obj/structure/disposalpipe/trunk{ - dir = 4 - }, -/turf/open/floor/plasteel/yellow/side{ - dir = 8 - }, -/area/hallway/primary/aft) -"brv" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4"; - tag = "" - }, -/obj/structure/disposalpipe/junction{ - dir = 2; - icon_state = "pipe-y" - }, -/turf/open/floor/plasteel, -/area/hallway/primary/aft) -"brw" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/hallway/primary/aft) -"brx" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/chair{ - dir = 4 - }, -/turf/open/floor/plasteel/purple/side{ - dir = 4 - }, -/area/hallway/primary/aft) -"bry" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "research_shutters_2"; - name = "research shutters" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/floor/plating, -/area/toxins/explab) -"brz" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4"; - tag = "" - }, -/turf/open/floor/plasteel, -/area/toxins/explab) -"brA" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/warning{ - tag = "icon-warning (NORTH)"; - dir = 1 - }, -/area/toxins/explab) -"brB" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/sortjunction{ - dir = 8; - icon_state = "pipe-j1s"; - sortType = 12 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 5 - }, -/turf/open/floor/plasteel/warning{ - tag = "icon-warning (NORTH)"; - dir = 1 - }, -/area/toxins/explab) -"brC" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning{ - tag = "icon-warning (NORTH)"; - dir = 1 - }, -/area/toxins/explab) -"brD" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4"; - tag = "" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/toxins/explab) -"brE" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass_research{ - name = "Research and Development Lab"; - req_access_txt = "0"; - req_one_access_txt = "7;29" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/toxins/explab) -"brF" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/whitepurple/side{ - dir = 8 - }, -/area/medical/research{ - name = "Research Division" - }) -"brG" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/structure/disposalpipe/sortjunction{ - dir = 8; - icon_state = "pipe-j2s"; - sortType = 13 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/turf/open/floor/plasteel/white, -/area/medical/research{ - name = "Research Division" - }) -"brH" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/junction{ - dir = 8; - icon_state = "pipe-j1" - }, -/turf/open/floor/plasteel/white, -/area/medical/research{ - name = "Research Division" - }) -"brI" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4"; - tag = "90Curve" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/medical/research{ - name = "Research Division" - }) -"brJ" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/medical/research{ - name = "Research Division" - }) -"brK" = ( -/obj/structure/cable{ - icon_state = "1-8" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/obj/machinery/holopad, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/white, -/area/medical/research{ - name = "Research Division" - }) -"brL" = ( -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/turf/open/floor/plasteel/black, -/area/chapel/main{ - name = "Monastery" - }) -"brM" = ( -/obj/structure/window/reinforced{ - dir = 4; - layer = 2.9 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/turf/open/floor/plasteel/black, -/area/chapel/main{ - name = "Monastery" - }) -"brN" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 6 - }, -/turf/open/floor/plasteel/white, -/area/medical/research{ - name = "Research Division" - }) -"brO" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/whitepurple/side{ - dir = 4 - }, -/area/medical/research{ - name = "Research Division" - }) -"brP" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/research{ - autoclose = 0; - frequency = 1449; - icon_state = "door_locked"; - id_tag = "xeno_airlock_exterior"; - locked = 1; - name = "Xenobiology Lab External Airlock"; - req_access_txt = "55" - }, -/obj/machinery/doorButtons/access_button{ - idDoor = "xeno_airlock_exterior"; - idSelf = "xeno_airlock_control"; - name = "Access Button"; - pixel_x = 0; - pixel_y = -24; - req_access_txt = "0" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/whitepurple{ - dir = 4 - }, -/area/toxins/xenobiology) -"brQ" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 1; - initialize_directions = 11 - }, -/turf/open/floor/plasteel/warnwhite{ - dir = 8 - }, -/area/toxins/xenobiology) -"brR" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/toxins/xenobiology) -"brS" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warnwhite{ - dir = 4 - }, -/area/toxins/xenobiology) -"brT" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/research{ - autoclose = 0; - frequency = 1449; - icon_state = "door_locked"; - id_tag = "xeno_airlock_interior"; - locked = 1; - name = "Xenobiology Lab Internal Airlock"; - req_access_txt = "55" - }, -/obj/machinery/doorButtons/access_button{ - idDoor = "xeno_airlock_interior"; - idSelf = "xeno_airlock_control"; - name = "Access Button"; - pixel_x = 0; - pixel_y = -24; - req_access_txt = "0" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/whitepurple, -/area/toxins/xenobiology) -"brU" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/doorButtons/airlock_controller{ - idExterior = "xeno_airlock_exterior"; - idInterior = "xeno_airlock_interior"; - idSelf = "xeno_airlock_control"; - name = "Access Console"; - pixel_x = -25; - pixel_y = 25 - }, -/turf/open/floor/plasteel/whitepurple/side{ - dir = 8 - }, -/area/toxins/xenobiology) -"brV" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 9 - }, -/turf/open/floor/plasteel/white, -/area/toxins/xenobiology) -"brW" = ( -/obj/structure/sink{ - dir = 4; - icon_state = "sink"; - pixel_x = 11; - pixel_y = 0 - }, -/turf/open/floor/plasteel/whitepurple/side{ - dir = 4 - }, -/area/toxins/xenobiology) -"brX" = ( -/obj/machinery/disposal/bin, -/obj/structure/window/reinforced{ - dir = 4; - pixel_x = 0 - }, -/obj/structure/disposalpipe/trunk, -/turf/open/floor/plasteel/warning{ - tag = "icon-warning (NORTHEAST)"; - dir = 5 - }, -/area/toxins/xenobiology) -"brY" = ( -/obj/machinery/door/window/northleft{ - base_state = "right"; - dir = 1; - icon_state = "right"; - name = "Containment Pen #1"; - req_access_txt = "55" - }, -/turf/open/floor/plasteel/warning{ - tag = "icon-warning (NORTH)"; - dir = 1 - }, -/area/toxins/xenobiology) -"brZ" = ( -/obj/structure/table/reinforced, -/obj/machinery/button/door{ - id = "xenobio1"; - name = "Containment Blast Doors"; - pixel_x = 0; - pixel_y = 4; - req_access_txt = "55" - }, -/obj/structure/window/reinforced{ - dir = 8; - layer = 2.9 - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/warning{ - dir = 9 - }, -/area/toxins/xenobiology) -"bsa" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall, -/area/toxins/xenobiology) -"bsb" = ( -/obj/machinery/door/window/northleft{ - base_state = "right"; - dir = 1; - icon_state = "right"; - name = "Containment Pen #2"; - req_access_txt = "55" - }, -/turf/open/floor/plasteel/warning{ - tag = "icon-warning (NORTH)"; - dir = 1 - }, -/area/toxins/xenobiology) -"bsc" = ( -/obj/structure/table/reinforced, -/obj/machinery/button/door{ - id = "xenobio2"; - name = "Containment Blast Doors"; - pixel_x = 0; - pixel_y = 4; - req_access_txt = "55" - }, -/obj/structure/window/reinforced{ - dir = 8; - layer = 2.9 - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/warning{ - dir = 9 - }, -/area/toxins/xenobiology) -"bsd" = ( -/obj/machinery/door/window/northleft{ - base_state = "right"; - dir = 1; - icon_state = "right"; - name = "Containment Pen #3"; - req_access_txt = "55" - }, -/turf/open/floor/plasteel/warning{ - tag = "icon-warning (NORTH)"; - dir = 1 - }, -/area/toxins/xenobiology) -"bse" = ( -/obj/structure/table/reinforced, -/obj/machinery/button/door{ - id = "xenobio3"; - name = "Containment Blast Doors"; - pixel_x = 0; - pixel_y = 4; - req_access_txt = "55" - }, -/obj/structure/window/reinforced{ - dir = 8; - layer = 2.9 - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/warning{ - dir = 9 - }, -/area/toxins/xenobiology) -"bsf" = ( -/obj/machinery/door/window/northleft{ - base_state = "right"; - dir = 1; - icon_state = "right"; - name = "Containment Pen #4"; - req_access_txt = "55" - }, -/turf/open/floor/plasteel/warning{ - tag = "icon-warning (NORTH)"; - dir = 1 - }, -/area/toxins/xenobiology) -"bsg" = ( -/obj/structure/table/reinforced, -/obj/machinery/button/door{ - id = "xenobio4"; - name = "Containment Blast Doors"; - pixel_x = 0; - pixel_y = 4; - req_access_txt = "55" - }, -/obj/structure/window/reinforced{ - dir = 8; - layer = 2.9 - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/warning{ - dir = 9 - }, -/area/toxins/xenobiology) -"bsh" = ( -/obj/machinery/door/airlock/maintenance{ - req_access_txt = "0"; - req_one_access_txt = "12; 55" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/toxins/xenobiology) -"bsi" = ( -/obj/structure/girder, -/turf/open/floor/plating/airless, -/area/toxins/xenobiology) -"bsj" = ( -/obj/structure/table, -/obj/effect/spawner/lootdrop/maintenance, -/obj/item/clothing/shoes/winterboots, -/turf/open/floor/plating, -/area/maintenance/aft) -"bsk" = ( -/obj/structure/flora/ausbushes/palebush, -/turf/open/floor/grass, -/area/medical/genetics) -"bsl" = ( -/obj/structure/window/reinforced{ - dir = 4; - layer = 2.9 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/mob/living/carbon/monkey, -/turf/open/floor/grass, -/area/medical/genetics) -"bsm" = ( -/obj/structure/table, -/obj/item/weapon/storage/box/disks, -/obj/item/device/flashlight/pen, -/obj/item/device/flashlight/pen, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/whitepurple/side{ - dir = 8 - }, -/area/medical/genetics) -"bsn" = ( -/obj/structure/chair/stool, -/obj/effect/landmark/start{ - name = "Geneticist" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/medical/genetics) -"bso" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 1 - }, -/turf/open/floor/plasteel/white, -/area/medical/genetics) -"bsp" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 9; - pixel_y = 0 - }, -/turf/open/floor/plasteel/white, -/area/medical/genetics) -"bsq" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/white, -/area/medical/genetics) -"bsr" = ( -/obj/structure/table, -/obj/item/clothing/gloves/color/latex, -/obj/item/clothing/gloves/color/latex, -/obj/item/weapon/storage/box/monkeycubes, -/obj/machinery/light{ - dir = 4 - }, -/turf/open/floor/plasteel/whitepurple/side{ - dir = 4 - }, -/area/medical/genetics) -"bss" = ( -/obj/structure/extinguisher_cabinet{ - pixel_x = -24 - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 8; - initialize_directions = 11 - }, -/obj/machinery/light{ - dir = 8 - }, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 8 - }, -/area/medical/medbay3) -"bst" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay3) -"bsu" = ( -/obj/structure/chair{ - dir = 8 - }, -/turf/open/floor/plasteel/whiteblue/corner, -/area/medical/medbay3) -"bsv" = ( -/obj/structure/table/glass, -/obj/item/stack/medical/gauze, -/obj/machinery/power/apc{ - dir = 8; - name = "Treatment Center APC"; - pixel_x = -24; - pixel_y = 0 - }, -/obj/item/weapon/reagent_containers/glass/beaker/cryoxadone, -/obj/item/weapon/reagent_containers/glass/beaker/cryoxadone, -/obj/item/weapon/reagent_containers/glass/beaker/cryoxadone, -/obj/structure/cable, -/turf/open/floor/plasteel/blue, -/area/medical/sleeper) -"bsw" = ( -/obj/structure/closet/emcloset, -/turf/open/floor/plating, -/area/maintenance/port{ - name = "Monastery Maintenance" - }) -"bsx" = ( -/obj/machinery/camera{ - c_tag = "Medbay Sleepers"; - dir = 1; - network = list("SS13") - }, -/obj/machinery/light, -/turf/open/floor/plasteel/blue, -/area/medical/sleeper) -"bsy" = ( -/obj/machinery/sleeper{ - icon_state = "sleeper-open"; - dir = 1 - }, -/turf/open/floor/plasteel/blue, -/area/medical/sleeper) -"bsz" = ( -/obj/structure/table/glass, -/obj/item/clothing/neck/stethoscope, -/obj/item/device/healthanalyzer, -/turf/open/floor/plasteel/blue, -/area/medical/sleeper) -"bsA" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 8 - }, -/area/medical/medbay) -"bsB" = ( -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"bsC" = ( -/obj/machinery/light{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/whiteblue/corner, -/area/medical/medbay) -"bsD" = ( -/turf/closed/wall, -/area/medical/cmo{ - name = "Chief Medical Office" - }) -"bsE" = ( -/obj/structure/grille, -/obj/structure/window/fulltile, -/turf/open/floor/plating, -/area/medical/cmo{ - name = "Chief Medical Office" - }) -"bsF" = ( -/obj/structure/closet/secure_closet/chemical, -/obj/machinery/power/apc{ - dir = 8; - name = "Chemistry APC"; - pixel_x = -24; - pixel_y = 0 - }, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/whiteyellow/side{ - dir = 8 - }, -/area/medical/chemistry) -"bsG" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/white, -/area/medical/chemistry) -"bsH" = ( -/obj/structure/chair/office/light{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 5 - }, -/turf/open/floor/plasteel/whiteyellow/side{ - dir = 4 - }, -/area/medical/chemistry) -"bsI" = ( -/obj/structure/table/reinforced, -/obj/machinery/door/firedoor, -/obj/machinery/door/window/eastright{ - dir = 8; - name = "Chemistry Desk"; - req_access_txt = "5; 33" - }, -/obj/item/weapon/pen, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/item/weapon/paper_bin{ - layer = 2.9; - pixel_x = -2; - pixel_y = 0; - tag = "every single paper bin is edited to this" - }, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "chemistry_shutters"; - name = "chemistry shutters" - }, -/turf/open/floor/plasteel/whiteyellow{ - dir = 4 - }, -/area/medical/chemistry) -"bsJ" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/chair{ - dir = 8 - }, -/turf/open/floor/plasteel/yellow/side{ - dir = 8 - }, -/area/hallway/primary/aft) -"bsK" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 4; - initialize_directions = 11 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/aft) -"bsL" = ( -/obj/structure/disposalpipe/segment, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plasteel, -/area/hallway/primary/aft) -"bsM" = ( -/obj/structure/chair{ - dir = 4 - }, -/turf/open/floor/plasteel/purple/side{ - dir = 4 - }, -/area/hallway/primary/aft) -"bsN" = ( -/obj/structure/table/reinforced, -/obj/machinery/door/window/eastright{ - dir = 4; - name = "Research and Development Desk"; - req_access_txt = "7" - }, -/obj/item/weapon/folder/white, -/obj/machinery/door/firedoor, -/obj/item/weapon/pen, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "research_shutters_2"; - name = "research shutters" - }, -/turf/open/floor/plating, -/area/toxins/explab) -"bsO" = ( -/obj/structure/chair/office/light{ - dir = 8 - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plasteel, -/area/toxins/explab) -"bsP" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 2; - on = 1 - }, -/turf/open/floor/plasteel, -/area/toxins/explab) -"bsQ" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 5 - }, -/turf/open/floor/plasteel/white/side{ - dir = 4 - }, -/area/medical/research{ - name = "Research Division" - }) -"bsR" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 1; - initialize_directions = 11 - }, -/turf/open/floor/plasteel/white, -/area/medical/research{ - name = "Research Division" - }) -"bsS" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white/side{ - tag = "icon-whitehall (NORTH)"; - icon_state = "whitehall"; - dir = 1 - }, -/area/medical/research{ - name = "Research Division" - }) -"bsT" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/manifold4w/scrubbers/hidden, -/turf/open/floor/plasteel/whitered/side, -/area/medical/research{ - name = "Research Division" - }) -"bsU" = ( -/obj/machinery/camera{ - c_tag = "Research Division Port"; - dir = 1 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white/side{ - tag = "icon-whitehall (NORTH)"; - icon_state = "whitehall"; - dir = 1 - }, -/area/medical/research{ - name = "Research Division" - }) -"bsV" = ( -/obj/item/clothing/gloves/color/latex, -/obj/item/clothing/glasses/science, -/obj/structure/table, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/medical/research{ - name = "Research Division" - }) -"bsW" = ( -/obj/item/device/analyzer, -/obj/structure/table, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/open/floor/plasteel/white, -/area/medical/research{ - name = "Research Division" - }) -"bsX" = ( -/obj/machinery/vending/assist, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/medical/research{ - name = "Research Division" - }) -"bsY" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/item/device/radio/intercom{ - dir = 0; - name = "Station Intercom (General)"; - pixel_x = 0; - pixel_y = -32 - }, -/turf/open/floor/plasteel/white, -/area/medical/research{ - name = "Research Division" - }) -"bsZ" = ( -/obj/machinery/light, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/table, -/obj/item/weapon/folder, -/obj/item/weapon/pen, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/medical/research{ - name = "Research Division" - }) -"bta" = ( -/obj/machinery/camera{ - c_tag = "Research Division Starboard"; - dir = 1 - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/open/floor/plasteel/white, -/area/medical/research{ - name = "Research Division" - }) -"btb" = ( -/obj/structure/sink{ - dir = 8; - icon_state = "sink"; - pixel_x = -12 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/warnwhite{ - dir = 10; - heat_capacity = 1e+006 - }, -/area/toxins/xenobiology) -"btc" = ( -/obj/machinery/light, -/turf/open/floor/plasteel/white, -/area/toxins/xenobiology) -"btd" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/shower{ - dir = 8; - name = "emergency shower"; - pixel_y = -4 - }, -/turf/open/floor/plasteel/warnwhite{ - dir = 6 - }, -/area/toxins/xenobiology) -"bte" = ( -/turf/open/floor/plasteel/whitepurple/side{ - dir = 10 - }, -/area/toxins/xenobiology) -"btf" = ( -/obj/structure/table, -/obj/item/weapon/storage/box/monkeycubes, -/obj/item/weapon/storage/box/monkeycubes, -/turf/open/floor/plasteel/whitepurple/side, -/area/toxins/xenobiology) -"btg" = ( -/obj/structure/table, -/obj/item/weapon/extinguisher{ - pixel_x = 4; - pixel_y = 3 - }, -/obj/item/weapon/extinguisher, -/turf/open/floor/plasteel/whitepurple/side, -/area/toxins/xenobiology) -"bth" = ( -/obj/structure/reagent_dispensers/watertank, -/obj/machinery/requests_console{ - department = "Science"; - departmentType = 2; - name = "Science Requests Console"; - pixel_x = 32; - pixel_y = 0 - }, -/turf/open/floor/plasteel/whitepurple/side{ - dir = 6 - }, -/area/toxins/xenobiology) -"bti" = ( -/obj/machinery/door/poddoor/preopen{ - id = "xenobio1"; - name = "containment blast door" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/engine, -/area/toxins/xenobiology) -"btj" = ( -/obj/machinery/door/poddoor/preopen{ - id = "xenobio1"; - name = "containment blast door" - }, -/obj/machinery/door/window/northleft{ - base_state = "right"; - dir = 2; - icon_state = "right"; - name = "Containment Pen #1"; - req_access_txt = "55" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/turf/open/floor/engine, -/area/toxins/xenobiology) -"btk" = ( -/obj/machinery/door/poddoor/preopen{ - id = "xenobio1"; - name = "containment blast door" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/structure/cable, -/turf/open/floor/engine, -/area/toxins/xenobiology) -"btl" = ( -/obj/machinery/door/poddoor/preopen{ - id = "xenobio2"; - name = "containment blast door" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/engine, -/area/toxins/xenobiology) -"btm" = ( -/obj/machinery/door/poddoor/preopen{ - id = "xenobio3"; - name = "containment blast door" - }, -/obj/machinery/door/window/northleft{ - base_state = "right"; - dir = 2; - icon_state = "right"; - name = "Containment Pen #2"; - req_access_txt = "55" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/turf/open/floor/engine, -/area/toxins/xenobiology) -"btn" = ( -/obj/machinery/door/poddoor/preopen{ - id = "xenobio2"; - name = "containment blast door" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/structure/cable, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/turf/open/floor/engine, -/area/toxins/xenobiology) -"bto" = ( -/obj/machinery/door/poddoor/preopen{ - id = "xenobio3"; - name = "containment blast door" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/engine, -/area/toxins/xenobiology) -"btp" = ( -/obj/machinery/door/poddoor/preopen{ - id = "xenobio3"; - name = "containment blast door" - }, -/obj/machinery/door/window/northleft{ - base_state = "right"; - dir = 2; - icon_state = "right"; - name = "Containment Pen #3"; - req_access_txt = "55" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/turf/open/floor/engine, -/area/toxins/xenobiology) -"btq" = ( -/obj/machinery/door/poddoor/preopen{ - id = "xenobio3"; - name = "containment blast door" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/structure/cable, -/turf/open/floor/engine, -/area/toxins/xenobiology) -"btr" = ( -/obj/machinery/door/poddoor/preopen{ - id = "xenobio4"; - name = "containment blast door" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/engine, -/area/toxins/xenobiology) -"bts" = ( -/obj/machinery/door/poddoor/preopen{ - id = "xenobio4"; - name = "containment blast door" - }, -/obj/machinery/door/window/northleft{ - base_state = "right"; - dir = 2; - icon_state = "right"; - name = "Containment Pen #4"; - req_access_txt = "55" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/turf/open/floor/engine, -/area/toxins/xenobiology) -"btt" = ( -/obj/machinery/door/poddoor/preopen{ - id = "xenobio4"; - name = "containment blast door" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/structure/cable, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/turf/open/floor/engine, -/area/toxins/xenobiology) -"btu" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4"; - tag = "" - }, -/obj/machinery/light/small{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 6 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"btv" = ( -/obj/structure/cable{ - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 9; - pixel_y = 0 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"btw" = ( -/turf/closed/wall, -/area/maintenance/asmaint2) -"btx" = ( -/obj/structure/table, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 2; - name = "2maintenance loot spawner" - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"bty" = ( -/obj/structure/chair/stool, -/turf/open/floor/plating{ - burnt = 1; - icon_state = "panelscorched" - }, -/area/maintenance/aft) -"btz" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/light/small{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/cyan/hidden, -/turf/open/floor/plating{ - icon_state = "platingdmg3" - }, -/area/maintenance/aft) -"btA" = ( -/obj/machinery/light{ - dir = 8 - }, -/obj/machinery/camera{ - c_tag = "Genetics Monkey Pen"; - dir = 4; - network = list("SS13","RD"); - pixel_x = 0; - pixel_y = 0 - }, -/mob/living/carbon/monkey, -/turf/open/floor/grass, -/area/medical/genetics) -"btB" = ( -/obj/machinery/door/window/eastleft{ - name = "Monkey Pen"; - req_one_access_txt = "9" - }, -/obj/item/weapon/reagent_containers/food/snacks/grown/banana, -/turf/open/floor/grass, -/area/medical/genetics) -"btC" = ( -/turf/open/floor/plasteel/whitepurple/side{ - dir = 8 - }, -/area/medical/genetics) -"btD" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/turf/open/floor/plasteel/white, -/area/medical/genetics) -"btE" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 6 - }, -/turf/open/floor/plasteel/white, -/area/medical/genetics) -"btF" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/medical/genetics) -"btG" = ( -/obj/structure/sink{ - dir = 4; - icon_state = "sink"; - pixel_x = 11; - pixel_y = 0 - }, -/obj/structure/mirror{ - pixel_x = 28 - }, -/turf/open/floor/plasteel/whitepurple/side{ - dir = 4 - }, -/area/medical/genetics) -"btH" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 5 - }, -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-10"; - layer = 4.1 - }, -/turf/open/floor/plasteel/whitegreen/side, -/area/medical/medbay3) -"btI" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 10 - }, -/turf/open/floor/plasteel/whitegreen/side, -/area/medical/medbay3) -"btJ" = ( -/obj/structure/chair{ - dir = 8 - }, -/turf/open/floor/plasteel/whitegreen/side, -/area/medical/medbay3) -"btK" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/airalarm{ - dir = 4; - icon_state = "alarm0"; - pixel_x = -22 - }, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 8 - }, -/area/medical/medbay) -"btL" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/whiteblue/corner, -/area/medical/medbay) -"btM" = ( -/obj/structure/sign/bluecross_2, -/turf/closed/wall, -/area/medical/cmo{ - name = "Chief Medical Office" - }) -"btN" = ( -/obj/machinery/suit_storage_unit/cmo, -/turf/open/floor/plasteel/cmo, -/area/medical/cmo{ - name = "Chief Medical Office" - }) -"btO" = ( -/obj/machinery/computer/crew, -/obj/machinery/light{ - dir = 1 - }, -/obj/machinery/requests_console{ - announcementConsole = 1; - department = "Chief Medical Officer's Desk"; - departmentType = 5; - name = "Chief Medical Officer RC"; - pixel_x = 0; - pixel_y = 30 - }, -/turf/open/floor/plasteel/cmo, -/area/medical/cmo{ - name = "Chief Medical Office" - }) -"btP" = ( -/obj/machinery/computer/med_data, -/turf/open/floor/plasteel/cmo, -/area/medical/cmo{ - name = "Chief Medical Office" - }) -"btQ" = ( -/obj/machinery/computer/card/minor/cmo, -/obj/machinery/airalarm{ - pixel_y = 22 - }, -/turf/open/floor/plasteel/cmo, -/area/medical/cmo{ - name = "Chief Medical Office" - }) -"btR" = ( -/obj/machinery/disposal/bin, -/obj/structure/disposalpipe/trunk, -/obj/machinery/button/door{ - desc = "A remote control switch for the medbay foyer."; - id = "MedbayFoyer"; - name = "Medbay Door Control"; - normaldoorcontrol = 1; - pixel_x = 26; - pixel_y = -6; - req_access_txt = "5" - }, -/obj/machinery/keycard_auth{ - pixel_x = 26; - pixel_y = 6 - }, -/turf/open/floor/plasteel/cmo, -/area/medical/cmo{ - name = "Chief Medical Office" - }) -"btS" = ( -/obj/structure/closet/wardrobe/chemistry_white, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 5 - }, -/turf/open/floor/plasteel/whiteyellow/side{ - dir = 10 - }, -/area/medical/chemistry) -"btT" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 10 - }, -/turf/open/floor/plasteel/whiteyellow/side, -/area/medical/chemistry) -"btU" = ( -/obj/structure/table/glass, -/obj/machinery/reagentgrinder, -/obj/machinery/light, -/obj/machinery/airalarm{ - dir = 1; - pixel_y = -22 - }, -/turf/open/floor/plasteel/whiteyellow/side, -/area/medical/chemistry) -"btV" = ( -/obj/structure/table/glass, -/obj/item/stack/sheet/mineral/plasma{ - amount = 2; - layer = 2.9 - }, -/obj/item/weapon/grenade/chem_grenade, -/obj/item/weapon/grenade/chem_grenade, -/obj/item/weapon/grenade/chem_grenade, -/obj/item/stack/cable_coil/random, -/obj/item/weapon/screwdriver, -/turf/open/floor/plasteel/whiteyellow/side{ - dir = 6 - }, -/area/medical/chemistry) -"btW" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/aft) -"btX" = ( -/obj/structure/disposalpipe/segment, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/aft) -"btY" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/aft) -"btZ" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/table/glass, -/obj/item/weapon/paper_bin{ - layer = 2.9; - pixel_x = -2; - pixel_y = 4 - }, -/turf/open/floor/plasteel/purple/side{ - dir = 4 - }, -/area/hallway/primary/aft) -"bua" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "research_shutters_2"; - name = "research shutters" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/toxins/explab) -"bub" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/purple/side, -/area/toxins/explab) -"buc" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 9; - pixel_y = 0 - }, -/turf/open/floor/plasteel/purple/side, -/area/toxins/explab) -"bud" = ( -/obj/structure/table, -/obj/machinery/light, -/obj/item/weapon/stock_parts/console_screen, -/obj/item/weapon/stock_parts/console_screen, -/obj/item/weapon/stock_parts/capacitor, -/obj/item/weapon/stock_parts/capacitor, -/obj/item/weapon/stock_parts/manipulator, -/obj/item/weapon/stock_parts/manipulator, -/obj/item/weapon/stock_parts/scanning_module, -/obj/item/weapon/stock_parts/scanning_module, -/obj/item/device/multitool, -/turf/open/floor/plasteel/purple/side, -/area/toxins/explab) -"bue" = ( -/obj/structure/table, -/obj/machinery/cell_charger, -/obj/item/weapon/stock_parts/cell/high/plus, -/obj/item/weapon/stock_parts/cell/high/plus, -/turf/open/floor/plasteel/purple/side, -/area/toxins/explab) -"buf" = ( -/obj/structure/table, -/obj/item/weapon/stock_parts/matter_bin, -/obj/item/weapon/stock_parts/matter_bin, -/obj/item/weapon/stock_parts/micro_laser, -/obj/item/weapon/stock_parts/micro_laser, -/obj/item/stack/cable_coil, -/obj/item/stack/cable_coil, -/obj/machinery/light_switch{ - pixel_x = 25 - }, -/turf/open/floor/plasteel/purple/side, -/area/toxins/explab) -"bug" = ( -/turf/open/floor/plasteel/white/side{ - tag = "icon-whitehall (NORTH)"; - icon_state = "whitehall"; - dir = 1 - }, -/area/medical/research{ - name = "Research Division" - }) -"buh" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/whiteblue/side, -/area/medical/research{ - name = "Research Division" - }) -"bui" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/checkpoint/science) -"buj" = ( -/obj/machinery/door/airlock/glass_security{ - name = "Research Security Post"; - req_access_txt = "63" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/whitered, -/area/security/checkpoint/science) -"buk" = ( -/turf/closed/wall/r_wall, -/area/toxins/storage) -"bul" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/closed/wall/r_wall, -/area/toxins/storage) -"bum" = ( -/obj/machinery/light{ - dir = 8 - }, -/turf/open/floor/plasteel/white, -/area/medical/research{ - name = "Research Division" - }) -"bun" = ( -/turf/closed/wall, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"buo" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/closed/wall, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"bup" = ( -/obj/structure/disposaloutlet, -/obj/structure/disposalpipe/trunk{ - dir = 1 - }, -/turf/open/floor/engine, -/area/toxins/xenobiology) -"buq" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"bur" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/grass, -/area/medical/genetics) -"bus" = ( -/obj/structure/window/reinforced{ - dir = 4; - layer = 2.9 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/mob/living/carbon/monkey, -/turf/open/floor/grass, -/area/medical/genetics) -"but" = ( -/obj/structure/table, -/obj/item/weapon/reagent_containers/glass/beaker, -/obj/item/weapon/reagent_containers/dropper, -/obj/item/weapon/storage/pill_bottle/mutadone, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/whitepurple/side{ - dir = 8 - }, -/area/medical/genetics) -"buu" = ( -/obj/structure/chair/stool, -/obj/effect/landmark/start{ - name = "Geneticist" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/medical/genetics) -"buv" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 9 - }, -/turf/open/floor/plasteel/white, -/area/medical/genetics) -"buw" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/white, -/area/medical/genetics) -"bux" = ( -/obj/machinery/shower{ - dir = 8 - }, -/obj/machinery/requests_console{ - department = "Genetics"; - departmentType = 0; - name = "Genetics Requests Console"; - pixel_x = 32; - pixel_y = 0 - }, -/turf/open/floor/plasteel/whitepurple/side{ - dir = 4 - }, -/area/medical/genetics) -"buy" = ( -/turf/closed/wall, -/area/medical/virology) -"buz" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/virology{ - autoclose = 0; - frequency = 1449; - icon_state = "door_locked"; - id_tag = "virology_airlock_exterior"; - locked = 1; - name = "Virology Exterior Airlock"; - req_access_txt = "39" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/doorButtons/access_button{ - idDoor = "virology_airlock_exterior"; - idSelf = "virology_airlock_control"; - name = "Virology Access Button"; - pixel_x = -24; - pixel_y = 0; - req_access_txt = "39" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/white, -/area/medical/virology) -"buA" = ( -/obj/structure/sign/biohazard, -/turf/closed/wall, -/area/medical/virology) -"buB" = ( -/obj/structure/table, -/obj/item/weapon/storage/box/beakers{ - pixel_x = 2; - pixel_y = 2 - }, -/obj/item/weapon/storage/box/syringes, -/obj/structure/extinguisher_cabinet{ - pixel_x = -26 - }, -/turf/open/floor/plasteel/whiteblue/side{ - dir = 1 - }, -/area/medical/medbay) -"buC" = ( -/obj/structure/table, -/obj/item/weapon/storage/firstaid/brute{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/storage/firstaid/brute, -/obj/item/weapon/storage/firstaid/regular{ - pixel_x = -3; - pixel_y = -3 - }, -/turf/open/floor/plasteel/whiteblue/side{ - dir = 1 - }, -/area/medical/medbay) -"buD" = ( -/obj/structure/table, -/obj/item/weapon/storage/firstaid/fire{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/storage/firstaid/fire, -/obj/item/weapon/storage/firstaid/regular{ - pixel_x = -3; - pixel_y = -3 - }, -/turf/open/floor/plasteel/whiteblue/side{ - dir = 1 - }, -/area/medical/medbay) -"buE" = ( -/obj/structure/table, -/obj/item/weapon/storage/firstaid/toxin{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/storage/firstaid/toxin, -/obj/item/weapon/storage/firstaid/regular{ - pixel_x = -3; - pixel_y = -3 - }, -/turf/open/floor/plasteel/whiteblue/side{ - dir = 1 - }, -/area/medical/medbay) -"buF" = ( -/obj/structure/table, -/obj/item/weapon/storage/firstaid/o2{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/storage/firstaid/o2, -/obj/item/weapon/storage/firstaid/regular{ - pixel_x = -3; - pixel_y = -3 - }, -/turf/open/floor/plasteel/whiteblue/side{ - dir = 1 - }, -/area/medical/medbay) -"buG" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 8; - initialize_directions = 11 - }, -/turf/open/floor/plasteel/whiteblue/side{ - dir = 8 - }, -/area/medical/medbay) -"buH" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"buI" = ( -/turf/open/floor/plasteel/cmo, -/area/medical/cmo{ - name = "Chief Medical Office" - }) -"buJ" = ( -/mob/living/simple_animal/pet/cat/Runtime, -/turf/open/floor/plasteel/cmo, -/area/medical/cmo{ - name = "Chief Medical Office" - }) -"buK" = ( -/obj/effect/landmark/start{ - name = "Chief Medical Officer" - }, -/obj/structure/chair/office/light{ - dir = 1 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/cmo, -/area/medical/cmo{ - name = "Chief Medical Office" - }) -"buL" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/cmo, -/area/medical/cmo{ - name = "Chief Medical Office" - }) -"buM" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/camera{ - c_tag = "Chief Medical Office"; - dir = 8; - network = list("SS13") - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 10 - }, -/obj/machinery/computer/security/telescreen{ - desc = "Used for watching surgery."; - dir = 8; - layer = 4; - name = "Surgery Telescreen"; - network = list("Surgery"); - pixel_x = 30; - pixel_y = 0 - }, -/turf/open/floor/plasteel/cmo, -/area/medical/cmo{ - name = "Chief Medical Office" - }) -"buN" = ( -/obj/machinery/door/airlock/maintenance{ - name = "Chemistry Lab Maintenance"; - req_access_txt = "5; 33" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/medical/chemistry) -"buO" = ( -/turf/closed/wall/r_wall, -/area/toxins/server) -"buP" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/command{ - name = "Server Room"; - req_access = null; - req_access_txt = "30" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/black, -/area/toxins/server) -"buQ" = ( -/obj/machinery/atmospherics/components/unary/tank/air{ - dir = 1 - }, -/turf/open/floor/plating, -/area/maintenance/port{ - name = "Monastery Maintenance" - }) -"buR" = ( -/turf/closed/wall, -/area/crew_quarters/hor) -"buS" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/crew_quarters/hor) -"buT" = ( -/obj/machinery/door/airlock/glass_command{ - name = "Research Director"; - req_access_txt = "30" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/crew_quarters/hor) -"buU" = ( -/obj/structure/filingcabinet, -/turf/open/floor/plasteel/red/side{ - dir = 9 - }, -/area/security/checkpoint/science) -"buV" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/red/side{ - dir = 1 - }, -/area/security/checkpoint/science) -"buW" = ( -/obj/structure/closet/wardrobe/red, -/obj/machinery/airalarm{ - dir = 8; - pixel_x = 23; - pixel_y = 0 - }, -/turf/open/floor/plasteel/red/side{ - dir = 5 - }, -/area/security/checkpoint/science) -"buX" = ( -/obj/machinery/portable_atmospherics/canister/toxins, -/turf/open/floor/plasteel/delivery{ - name = "floor" - }, -/area/toxins/storage) -"buY" = ( -/obj/machinery/portable_atmospherics/canister/toxins, -/obj/machinery/light{ - dir = 1 - }, -/obj/machinery/camera{ - c_tag = "Toxins Storage"; - dir = 2; - network = list("SS13","RD") - }, -/turf/open/floor/plasteel/delivery{ - name = "floor" - }, -/area/toxins/storage) -"buZ" = ( -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/toxins/storage) -"bva" = ( -/obj/machinery/portable_atmospherics/scrubber/huge, -/obj/machinery/power/apc{ - cell_type = 5000; - dir = 1; - name = "Toxins Storage APC"; - pixel_x = 0; - pixel_y = 25 - }, -/obj/structure/cable{ - icon_state = "0-2"; - pixel_y = 1; - d2 = 2 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/toxins/storage) -"bvb" = ( -/obj/machinery/portable_atmospherics/scrubber/huge, -/obj/machinery/airalarm{ - pixel_y = 22 - }, -/turf/open/floor/plasteel, -/area/toxins/storage) -"bvc" = ( -/obj/machinery/door/firedoor, -/turf/open/floor/plasteel/white, -/area/medical/research{ - name = "Research Division" - }) -"bvd" = ( -/obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/white, -/area/medical/research{ - name = "Research Division" - }) -"bve" = ( -/obj/structure/closet/bombcloset, -/obj/machinery/firealarm{ - dir = 8; - pixel_x = -24 - }, -/turf/open/floor/plasteel/white, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"bvf" = ( -/obj/structure/closet/bombcloset, -/turf/open/floor/plasteel/white, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"bvg" = ( -/obj/machinery/portable_atmospherics/scrubber, -/obj/machinery/light{ - dir = 1 - }, -/obj/machinery/airalarm{ - pixel_y = 22 - }, -/turf/open/floor/plasteel/white, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"bvh" = ( -/obj/machinery/portable_atmospherics/pump, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/item/device/radio/intercom{ - dir = 0; - name = "Station Intercom (General)"; - pixel_x = 0; - pixel_y = 26 - }, -/turf/open/floor/plasteel/white, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"bvi" = ( -/obj/machinery/portable_atmospherics/canister, -/turf/open/floor/plasteel/white, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"bvj" = ( -/obj/machinery/portable_atmospherics/canister, -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/obj/machinery/power/apc{ - dir = 1; - name = "Toxins Lab APC"; - pixel_y = 25 - }, -/turf/open/floor/plasteel/warnwhite{ - dir = 4 - }, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"bvk" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible, -/obj/machinery/camera{ - c_tag = "Toxins Lab"; - dir = 2; - network = list("SS13","RD"); - pixel_y = 0 - }, -/obj/structure/sign/poster{ - pixel_y = 32 - }, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"bvl" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible, -/turf/open/floor/plasteel, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"bvm" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible, -/obj/structure/sign/poster{ - pixel_y = 32 - }, -/obj/structure/extinguisher_cabinet{ - pixel_x = 24 - }, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"bvn" = ( -/obj/effect/landmark{ - name = "revenantspawn" - }, -/mob/living/simple_animal/slime, -/turf/open/floor/engine, -/area/toxins/xenobiology) -"bvo" = ( -/obj/structure/reagent_dispensers/fueltank, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/maintenance/port{ - name = "Monastery Maintenance" - }) -"bvp" = ( -/turf/open/floor/plating, -/area/maintenance/aft) -"bvq" = ( -/obj/structure/table, -/obj/item/weapon/pen, -/obj/item/device/radio/intercom{ - dir = 0; - name = "Station Intercom (General)"; - pixel_x = -27 - }, -/obj/item/weapon/paper_bin{ - layer = 2.9; - pixel_x = 0; - pixel_y = 0; - tag = "every single paper bin is edited to this" - }, -/turf/open/floor/plasteel/whitepurple/side{ - dir = 10 - }, -/area/medical/genetics) -"bvr" = ( -/obj/machinery/computer/scan_consolenew, -/turf/open/floor/plasteel/whitepurple/side, -/area/medical/genetics) -"bvs" = ( -/obj/machinery/dna_scannernew, -/obj/machinery/camera{ - c_tag = "Genetics"; - dir = 1; - network = list("SS13","RD"); - pixel_x = 0; - pixel_y = 0 - }, -/turf/open/floor/plasteel/whitepurple/side, -/area/medical/genetics) -"bvt" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/turf/open/floor/plasteel/whitepurple/corner{ - tag = "icon-whitepurplecorner (WEST)"; - dir = 8 - }, -/area/medical/genetics) -"bvu" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/white, -/area/medical/genetics) -"bvv" = ( -/obj/machinery/power/apc{ - dir = 4; - name = "Genetics APC"; - pixel_x = 27 - }, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/turf/open/floor/plasteel/whitepurple/side{ - dir = 4 - }, -/area/medical/genetics) -"bvw" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/obj/machinery/shower{ - dir = 4 - }, -/turf/open/floor/plasteel/warnwhite{ - dir = 9 - }, -/area/medical/virology) -"bvx" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/medical/virology) -"bvy" = ( -/obj/structure/closet/emcloset, -/obj/machinery/camera{ - c_tag = "Virology Airlock"; - dir = 2; - network = list("SS13") - }, -/turf/open/floor/plasteel/warnwhite{ - dir = 5 - }, -/area/medical/virology) -"bvz" = ( -/obj/structure/sink{ - icon_state = "sink"; - dir = 8; - pixel_x = -12; - pixel_y = 2 - }, -/obj/machinery/requests_console{ - announcementConsole = 0; - department = "Medbay"; - departmentType = 1; - name = "Medbay RC"; - pixel_x = -32; - pixel_y = 0; - pixel_z = 0 - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"bvA" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"bvB" = ( -/obj/machinery/door/airlock/glass_medical{ - id_tag = null; - name = "Medbay Storage"; - req_access_txt = "45" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"bvC" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/whiteblue/side{ - dir = 8 - }, -/area/medical/medbay) -"bvD" = ( -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"bvE" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 8 - }, -/turf/open/floor/plasteel/whiteblue/side{ - tag = "icon-whiteblue (EAST)"; - dir = 4 - }, -/area/medical/medbay) -"bvF" = ( -/obj/machinery/door/airlock/glass_command{ - name = "Chief Medical Office"; - req_access_txt = "40" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/barber, -/area/medical/cmo{ - name = "Chief Medical Office" - }) -"bvG" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 10 - }, -/turf/open/floor/plasteel/cmo, -/area/medical/cmo{ - name = "Chief Medical Office" - }) -"bvH" = ( -/obj/structure/table/glass, -/obj/item/weapon/paper_bin{ - pixel_x = -2; - pixel_y = 5 - }, -/obj/item/weapon/pen{ - layer = 3.1 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/cmo, -/area/medical/cmo{ - name = "Chief Medical Office" - }) -"bvI" = ( -/obj/structure/table/glass, -/obj/item/weapon/folder/white, -/obj/item/clothing/glasses/hud/health, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/cmo, -/area/medical/cmo{ - name = "Chief Medical Office" - }) -"bvJ" = ( -/obj/structure/table/glass, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/item/stack/medical/gauze, -/obj/item/clothing/neck/stethoscope, -/turf/open/floor/plasteel/cmo, -/area/medical/cmo{ - name = "Chief Medical Office" - }) -"bvK" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/structure/disposalpipe/sortjunction{ - dir = 8; - icon_state = "pipe-j1s"; - sortType = 10 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 5 - }, -/turf/open/floor/plasteel/cmo, -/area/medical/cmo{ - name = "Chief Medical Office" - }) -"bvL" = ( -/obj/machinery/door/airlock/maintenance{ - name = "CMO Maintenance"; - req_access_txt = "40" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"bvM" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"bvN" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/structure/disposalpipe/sortjunction{ - dir = 8; - icon_state = "pipe-j1s"; - sortType = 11 - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/open/floor/plating, -/area/maintenance/aft) -"bvO" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/light/small{ - dir = 1 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"bvP" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 10 - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"bvQ" = ( -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/yellow/corner, -/area/hallway/primary/aft) -"bvR" = ( -/obj/machinery/atmospherics/components/unary/thermomachine/freezer{ - target_temperature = 80; - dir = 2; - on = 1 - }, -/turf/open/floor/plasteel/black, -/area/toxins/server) -"bvS" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/black, -/area/toxins/server) -"bvT" = ( -/obj/machinery/r_n_d/server/core, -/turf/open/floor/bluegrid{ - name = "Server Base"; - initial_gas_mix = "n2=500;TEMP=80" - }, -/area/toxins/server) -"bvU" = ( -/obj/structure/closet/secure_closet/RD, -/obj/machinery/airalarm{ - pixel_y = 22 - }, -/turf/open/floor/plasteel/whitepurple/side{ - dir = 9 - }, -/area/crew_quarters/hor) -"bvV" = ( -/obj/machinery/power/apc{ - dir = 1; - name = "RD Office APC"; - pixel_x = 0; - pixel_y = 24 - }, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/turf/open/floor/plasteel/whitepurple/side{ - dir = 1 - }, -/area/crew_quarters/hor) -"bvW" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/whitepurple/side{ - dir = 1 - }, -/area/crew_quarters/hor) -"bvX" = ( -/obj/structure/cable{ - icon_state = "1-8" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/whitepurple/side{ - dir = 1 - }, -/area/crew_quarters/hor) -"bvY" = ( -/obj/item/weapon/twohanded/required/kirbyplants/dead, -/obj/machinery/button/door{ - id = "rndshutters"; - name = "Research Lockdown"; - pixel_x = 28; - pixel_y = 0; - req_access_txt = "47" - }, -/turf/open/floor/plasteel/whitepurple/side{ - dir = 5 - }, -/area/crew_quarters/hor) -"bvZ" = ( -/obj/machinery/light{ - dir = 8 - }, -/obj/machinery/camera{ - c_tag = "Science Security Post"; - dir = 4; - network = list("SS13","RD") - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/red/side{ - dir = 8 - }, -/area/security/checkpoint/science) -"bwa" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4"; - tag = "" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 9 - }, -/turf/open/floor/plasteel, -/area/security/checkpoint/science) -"bwb" = ( -/obj/machinery/power/apc{ - dir = 4; - name = "Science Security APC"; - pixel_x = 24; - pixel_y = 0 - }, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/turf/open/floor/plasteel/red/side{ - dir = 4 - }, -/area/security/checkpoint/science) -"bwc" = ( -/obj/machinery/portable_atmospherics/canister/nitrogen, -/turf/open/floor/plasteel/bot, -/area/toxins/storage) -"bwd" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/toxins/storage) -"bwe" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 9; - pixel_y = 0 - }, -/turf/open/floor/plasteel, -/area/toxins/storage) -"bwf" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel, -/area/toxins/storage) -"bwg" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall/r_wall, -/area/toxins/storage) -"bwh" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white/side{ - dir = 4 - }, -/area/medical/research{ - name = "Research Division" - }) -"bwi" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/open/floor/plasteel/white/side{ - dir = 8 - }, -/area/medical/research{ - name = "Research Division" - }) -"bwj" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"bwk" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"bwl" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 10 - }, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"bwm" = ( -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"bwn" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"bwo" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0; - tag = "" - }, -/turf/open/floor/plasteel/warning{ - dir = 5 - }, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"bwp" = ( -/obj/machinery/atmospherics/components/trinary/mixer/flipped{ - dir = 1 - }, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"bwq" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible{ - dir = 9 - }, -/turf/open/floor/plasteel, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"bwr" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible, -/obj/machinery/requests_console{ - department = "Science"; - departmentType = 2; - name = "Science Requests Console"; - pixel_x = 32; - pixel_y = 0 - }, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"bws" = ( -/obj/machinery/light, -/turf/open/floor/engine, -/area/toxins/xenobiology) -"bwt" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"bwu" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/maintenance/aft) -"bwv" = ( -/obj/structure/closet/crate/medical, -/obj/item/stack/medical/ointment, -/obj/item/stack/medical/bruise_pack, -/turf/open/floor/plating, -/area/maintenance/aft) -"bww" = ( -/obj/item/trash/candy, -/obj/effect/decal/cleanable/deadcockroach, -/turf/open/floor/plating, -/area/maintenance/aft) -"bwx" = ( -/obj/item/weapon/extinguisher, -/turf/open/floor/plating, -/area/maintenance/aft) -"bwy" = ( -/obj/item/chair, -/obj/item/weapon/cigbutt/roach, -/turf/open/floor/plating, -/area/maintenance/aft) -"bwz" = ( -/obj/structure/closet/secure_closet/medical1, -/turf/open/floor/plasteel/whitepurple/side{ - dir = 10 - }, -/area/medical/genetics) -"bwA" = ( -/obj/structure/closet/secure_closet/personal/patient, -/obj/machinery/light, -/obj/machinery/airalarm{ - dir = 1; - pixel_y = -22 - }, -/turf/open/floor/plasteel/whitepurple/side, -/area/medical/genetics) -"bwB" = ( -/obj/structure/closet/wardrobe/genetics_white, -/turf/open/floor/plasteel/whitepurple/side{ - dir = 6 - }, -/area/medical/genetics) -"bwC" = ( -/obj/machinery/shower{ - dir = 4 - }, -/turf/open/floor/plasteel/warnwhite{ - dir = 8 - }, -/area/medical/virology) -"bwD" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/white, -/area/medical/virology) -"bwE" = ( -/obj/structure/closet/l3closet, -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/turf/open/floor/plasteel/warnwhite{ - dir = 4 - }, -/area/medical/virology) -"bwF" = ( -/obj/machinery/shower{ - tag = "icon-shower (EAST)"; - icon_state = "shower"; - dir = 4 - }, -/obj/item/device/radio/intercom{ - broadcasting = 0; - freerange = 0; - frequency = 1485; - listening = 1; - name = "Station Intercom (Medbay)"; - pixel_x = -28; - pixel_y = 0 - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"bwG" = ( -/obj/effect/landmark/start{ - name = "Medical Doctor" - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - layer = 2.4; - on = 1 - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"bwH" = ( -/obj/machinery/door/airlock/glass_medical{ - id_tag = null; - name = "Medbay Storage"; - req_access_txt = "45" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"bwI" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/whiteblue/side{ - dir = 8 - }, -/area/medical/medbay) -"bwJ" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 4; - initialize_directions = 11 - }, -/turf/open/floor/plasteel/whiteblue/side{ - tag = "icon-whiteblue (EAST)"; - dir = 4 - }, -/area/medical/medbay) -"bwK" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 5 - }, -/turf/open/floor/plasteel/cmo, -/area/medical/cmo{ - name = "Chief Medical Office" - }) -"bwL" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/cmo, -/area/medical/cmo{ - name = "Chief Medical Office" - }) -"bwM" = ( -/obj/structure/chair/office/light{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/cmo, -/area/medical/cmo{ - name = "Chief Medical Office" - }) -"bwN" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - layer = 2.4; - on = 1 - }, -/turf/open/floor/plasteel/cmo, -/area/medical/cmo{ - name = "Chief Medical Office" - }) -"bwO" = ( -/obj/machinery/power/apc{ - dir = 4; - name = "CMO's Office APC"; - pixel_x = 26; - pixel_y = 0 - }, -/obj/structure/cable, -/turf/open/floor/plasteel/cmo, -/area/medical/cmo{ - name = "Chief Medical Office" - }) -"bwP" = ( -/turf/closed/wall, -/area/medical/exam_room) -"bwQ" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/maintenance/aft) -"bwR" = ( -/obj/machinery/power/apc{ - dir = 8; - name = "Server Room APC"; - pixel_x = -24; - pixel_y = 0 - }, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/machinery/atmospherics/pipe/manifold/general/visible{ - dir = 8 - }, -/turf/open/floor/plasteel/black, -/area/toxins/server) -"bwS" = ( -/obj/structure/cable{ - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/simple/general/visible{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/turf/open/floor/plasteel/black, -/area/toxins/server) -"bwT" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/general/visible{ - dir = 4 - }, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/turf/open/floor/plating, -/area/toxins/server) -"bwU" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - external_pressure_bound = 140; - on = 1; - pressure_checks = 0 - }, -/turf/open/floor/bluegrid{ - name = "Server Base"; - initial_gas_mix = "n2=500;TEMP=80" - }, -/area/toxins/server) -"bwV" = ( -/obj/machinery/computer/robotics, -/turf/open/floor/plasteel/whitepurple/side{ - dir = 8 - }, -/area/crew_quarters/hor) -"bwW" = ( -/turf/open/floor/plasteel/white, -/area/crew_quarters/hor) -"bwX" = ( -/obj/structure/displaycase/labcage, -/turf/open/floor/plasteel/white, -/area/crew_quarters/hor) -"bwY" = ( -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/white, -/area/crew_quarters/hor) -"bwZ" = ( -/obj/machinery/disposal/bin, -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/obj/structure/disposalpipe/trunk{ - dir = 8 - }, -/turf/open/floor/plasteel/whitepurple/side{ - dir = 4 - }, -/area/crew_quarters/hor) -"bxa" = ( -/obj/item/weapon/pen, -/obj/structure/table, -/obj/structure/reagent_dispensers/peppertank{ - pixel_x = -32; - pixel_y = 0 - }, -/obj/item/weapon/paper_bin{ - layer = 2.9; - pixel_x = 0; - pixel_y = 0; - tag = "every single paper bin is edited to this" - }, -/turf/open/floor/plasteel/red/side{ - dir = 8 - }, -/area/security/checkpoint/science) -"bxb" = ( -/obj/structure/chair/office/dark, -/obj/effect/landmark/start/depsec/science, -/turf/open/floor/plasteel, -/area/security/checkpoint/science) -"bxc" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 2; - on = 1 - }, -/turf/open/floor/plasteel/red/side{ - dir = 4 - }, -/area/security/checkpoint/science) -"bxd" = ( -/obj/machinery/portable_atmospherics/canister/oxygen, -/turf/open/floor/plasteel/bot, -/area/toxins/storage) -"bxe" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4"; - tag = "" - }, -/turf/open/floor/plasteel, -/area/toxins/storage) -"bxf" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/floor/plasteel, -/area/toxins/storage) -"bxg" = ( -/obj/machinery/door/firedoor/heavy, -/obj/machinery/door/airlock/research{ - name = "Toxins Storage"; - req_access_txt = "8" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/floor/plasteel, -/area/toxins/storage) -"bxh" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/whitepurple/side{ - dir = 8 - }, -/area/medical/research{ - name = "Research Division" - }) -"bxi" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/white, -/area/medical/research{ - name = "Research Division" - }) -"bxj" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/whitepurple/side{ - dir = 4 - }, -/area/medical/research{ - name = "Research Division" - }) -"bxk" = ( -/obj/machinery/door/firedoor/heavy, -/obj/machinery/door/airlock/glass_research{ - name = "Toxins Lab"; - req_access_txt = "8" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/floor/plasteel, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"bxl" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/floor/plasteel, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"bxm" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"bxn" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"bxo" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0; - tag = "" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"bxp" = ( -/obj/machinery/atmospherics/pipe/manifold/general/visible{ - dir = 8 - }, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"bxq" = ( -/obj/machinery/atmospherics/components/binary/valve{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"bxr" = ( -/obj/machinery/atmospherics/pipe/manifold/general/visible{ - dir = 4 - }, -/obj/machinery/firealarm{ - dir = 4; - pixel_x = 28 - }, -/obj/machinery/light{ - dir = 4 - }, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"bxs" = ( -/turf/closed/wall, -/area/toxins/mineral_storeroom) -"bxt" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall, -/area/toxins/mineral_storeroom) -"bxu" = ( -/turf/closed/wall/r_wall, -/area/toxins/mineral_storeroom) -"bxv" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/item/trash/sosjerky, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"bxw" = ( -/obj/structure/closet, -/obj/item/stack/cable_coil/random, -/obj/item/weapon/electronics/airalarm, -/turf/open/floor/plating, -/area/maintenance/aft) -"bxx" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"bxy" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"bxz" = ( -/turf/closed/wall/r_wall, -/area/medical/virology) -"bxA" = ( -/obj/structure/sink{ - icon_state = "sink"; - dir = 8; - pixel_x = -12; - pixel_y = 2 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/plasteel/warnwhite{ - dir = 10 - }, -/area/medical/virology) -"bxB" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/atmospherics/pipe/simple/cyan/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plasteel/white, -/area/medical/virology) -"bxC" = ( -/obj/structure/closet/l3closet, -/obj/machinery/atmospherics/pipe/simple/cyan/hidden{ - tag = "icon-intact (SOUTHWEST)"; - icon_state = "intact"; - dir = 10 - }, -/turf/open/floor/plasteel/warnwhite{ - dir = 6 - }, -/area/medical/virology) -"bxD" = ( -/obj/machinery/vending/medical, -/turf/open/floor/plasteel/whiteblue/side, -/area/medical/medbay) -"bxE" = ( -/obj/structure/closet/secure_closet/medical3, -/turf/open/floor/plasteel/whiteblue/side, -/area/medical/medbay) -"bxF" = ( -/obj/structure/closet/secure_closet/medical3, -/obj/machinery/light, -/obj/machinery/camera{ - c_tag = "Medbay Equipment Room"; - dir = 1; - network = list("SS13") - }, -/turf/open/floor/plasteel/whiteblue/side, -/area/medical/medbay) -"bxG" = ( -/obj/structure/closet/wardrobe/white/medical, -/turf/open/floor/plasteel/whiteblue/side, -/area/medical/medbay) -"bxH" = ( -/obj/structure/table, -/obj/item/weapon/storage/belt/medical{ - pixel_x = 0; - pixel_y = 2 - }, -/obj/item/weapon/storage/belt/medical{ - pixel_x = 0; - pixel_y = 2 - }, -/obj/item/weapon/storage/belt/medical{ - pixel_x = 0; - pixel_y = 2 - }, -/obj/item/clothing/glasses/hud/health, -/obj/item/clothing/glasses/hud/health, -/obj/item/clothing/glasses/hud/health, -/obj/item/weapon/reagent_containers/spray/cleaner, -/turf/open/floor/plasteel/whiteblue/side, -/area/medical/medbay) -"bxI" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 1 - }, -/area/medical/medbay) -"bxJ" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 4 - }, -/area/medical/medbay) -"bxK" = ( -/obj/structure/closet/secure_closet/CMO, -/obj/item/weapon/valentine, -/turf/open/floor/plasteel/cmo, -/area/medical/cmo{ - name = "Chief Medical Office" - }) -"bxL" = ( -/obj/machinery/modular_computer/console/preset/civilian, -/turf/open/floor/plasteel/cmo, -/area/medical/cmo{ - name = "Chief Medical Office" - }) -"bxM" = ( -/obj/item/weapon/cartridge/medical{ - pixel_x = -2; - pixel_y = 6 - }, -/obj/item/weapon/cartridge/medical{ - pixel_x = 6; - pixel_y = 3 - }, -/obj/item/weapon/cartridge/medical, -/obj/item/weapon/cartridge/chemistry{ - pixel_y = 2 - }, -/obj/structure/table, -/obj/machinery/light, -/obj/item/weapon/wrench/medical, -/turf/open/floor/plasteel/cmo, -/area/medical/cmo{ - name = "Chief Medical Office" - }) -"bxN" = ( -/obj/item/weapon/folder/blue, -/obj/item/weapon/stamp/cmo, -/obj/structure/table, -/turf/open/floor/plasteel/cmo, -/area/medical/cmo{ - name = "Chief Medical Office" - }) -"bxO" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-16"; - layer = 4.1 - }, -/turf/open/floor/plasteel/cmo, -/area/medical/cmo{ - name = "Chief Medical Office" - }) -"bxP" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/structure/closet, -/obj/item/clothing/under/rank/nursesuit, -/obj/item/clothing/head/nursehat, -/obj/effect/decal/cleanable/cobweb, -/obj/machinery/airalarm{ - pixel_y = 22 - }, -/turf/open/floor/plasteel/black, -/area/medical/exam_room) -"bxQ" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/light/small{ - dir = 1 - }, -/obj/machinery/vending/wallmed{ - pixel_y = 28; - products = list(/obj/item/weapon/reagent_containers/syringe = 3, /obj/item/weapon/reagent_containers/pill/patch/styptic = 1, /obj/item/weapon/reagent_containers/pill/patch/silver_sulf = 1, /obj/item/weapon/reagent_containers/spray/medical/sterilizer = 1) - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - on = 1 - }, -/obj/effect/landmark{ - name = "blobstart" - }, -/obj/item/weapon/melee/baton/cattleprod{ - bcell = new /obj/item/weapon/stock_parts/cell/high() - }, -/turf/open/floor/plasteel/black, -/area/medical/exam_room) -"bxR" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/button/door{ - id = "CMOCell"; - name = "Door Bolt Control"; - normaldoorcontrol = 1; - pixel_x = 0; - pixel_y = 26; - req_access_txt = "0"; - specialfunctions = 4 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/obj/effect/landmark{ - name = "xeno_spawn"; - pixel_x = -1 - }, -/turf/open/floor/plasteel/black, -/area/medical/exam_room) -"bxS" = ( -/obj/machinery/door/airlock/command{ - id_tag = "CMOCell"; - name = "Personal Examination Room"; - req_access_txt = "40" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/medical/exam_room) -"bxT" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8"; - tag = "" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"bxU" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/aft) -"bxV" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 4; - initialize_directions = 11 - }, -/turf/open/floor/plasteel/yellow/corner, -/area/hallway/primary/aft) -"bxW" = ( -/obj/structure/chair/office/dark, -/obj/machinery/light{ - dir = 8 - }, -/obj/machinery/camera{ - c_tag = "Server Room"; - dir = 4; - network = list("SS13","RD") - }, -/obj/machinery/atmospherics/pipe/simple/general/visible{ - dir = 5 - }, -/turf/open/floor/plasteel/black, -/area/toxins/server) -"bxX" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible{ - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/toxins/server) -"bxY" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass_command{ - name = "Server Room"; - req_access_txt = "30" - }, -/obj/machinery/atmospherics/pipe/simple/general/visible{ - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/toxins/server) -"bxZ" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - external_pressure_bound = 120; - initialize_directions = 1; - internal_pressure_bound = 4000; - on = 1; - pressure_checks = 2; - pump_direction = 0 - }, -/turf/open/floor/bluegrid{ - name = "Server Base"; - initial_gas_mix = "n2=500;TEMP=80" - }, -/area/toxins/server) -"bya" = ( -/obj/machinery/computer/aifixer, -/turf/open/floor/plasteel/whitepurple/side{ - dir = 8 - }, -/area/crew_quarters/hor) -"byb" = ( -/obj/structure/chair/office/light{ - dir = 8 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - layer = 2.4; - on = 1 - }, -/turf/open/floor/plasteel/white, -/area/crew_quarters/hor) -"byc" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 10 - }, -/turf/open/floor/plasteel/white, -/area/crew_quarters/hor) -"byd" = ( -/obj/structure/chair/office/light, -/obj/effect/landmark/start{ - name = "Research Director" - }, -/turf/open/floor/plasteel/white, -/area/crew_quarters/hor) -"bye" = ( -/obj/machinery/computer/card/minor/rd, -/obj/machinery/keycard_auth{ - pixel_x = 28; - pixel_y = 4 - }, -/turf/open/floor/plasteel/whitepurple/side{ - dir = 4 - }, -/area/crew_quarters/hor) -"byf" = ( -/obj/machinery/recharger{ - pixel_y = 4 - }, -/obj/structure/table, -/turf/open/floor/plasteel/red/side{ - dir = 10 - }, -/area/security/checkpoint/science) -"byg" = ( -/obj/machinery/computer/security/mining, -/obj/item/device/radio/intercom{ - dir = 8; - freerange = 1; - name = "Station Intercom (Telecoms)"; - pixel_x = 0; - pixel_y = -26 - }, -/turf/open/floor/plasteel/red/side, -/area/security/checkpoint/science) -"byh" = ( -/obj/machinery/computer/secure_data, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/red/side{ - dir = 6 - }, -/area/security/checkpoint/science) -"byi" = ( -/obj/machinery/portable_atmospherics/canister/air, -/turf/open/floor/plasteel/bot, -/area/toxins/storage) -"byj" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plasteel, -/area/toxins/storage) -"byk" = ( -/turf/open/floor/plasteel, -/area/toxins/storage) -"byl" = ( -/turf/open/floor/plasteel/white/side{ - dir = 4 - }, -/area/medical/research{ - name = "Research Division" - }) -"bym" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"byn" = ( -/turf/open/floor/plasteel, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"byo" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"byp" = ( -/obj/item/device/assembly/prox_sensor{ - pixel_x = -4; - pixel_y = 1 - }, -/obj/item/device/assembly/prox_sensor{ - pixel_x = 8; - pixel_y = 9 - }, -/obj/item/device/assembly/prox_sensor{ - pixel_x = 9; - pixel_y = -2 - }, -/obj/item/device/assembly/prox_sensor{ - pixel_x = 0; - pixel_y = 2 - }, -/obj/structure/table/reinforced, -/turf/open/floor/plasteel, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"byq" = ( -/obj/structure/chair/stool, -/obj/effect/landmark/start{ - name = "Scientist" - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/turf/open/floor/plasteel, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"byr" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/wrench, -/obj/item/weapon/screwdriver{ - pixel_y = 10 - }, -/obj/item/device/analyzer, -/turf/open/floor/plasteel, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"bys" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"byt" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"byu" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/turf/open/floor/plasteel, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"byv" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/computer/security/telescreen{ - desc = "Used for watching the turbine vent."; - dir = 8; - name = "turbine vent monitor"; - network = list("Turbine"); - pixel_x = 30; - pixel_y = 0 - }, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"byw" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/turf/closed/wall, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"byx" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/structure/closet/emcloset, -/turf/open/floor/plasteel, -/area/toxins/mineral_storeroom) -"byy" = ( -/obj/machinery/power/smes, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/turf/open/floor/plasteel, -/area/toxins/mineral_storeroom) -"byz" = ( -/obj/machinery/suit_storage_unit/rd, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/light{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/toxins/mineral_storeroom) -"byA" = ( -/obj/structure/ore_box, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/toxins/mineral_storeroom) -"byB" = ( -/obj/structure/ore_box, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/structure/sign/poster{ - pixel_x = 0; - pixel_y = 32 - }, -/obj/machinery/camera{ - c_tag = "Toxins Launch Area"; - dir = 2; - network = list("SS13","RD") - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 6 - }, -/turf/open/floor/plasteel, -/area/toxins/mineral_storeroom) -"byC" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/toxins/mineral_storeroom) -"byD" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/light{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/toxins/mineral_storeroom) -"byE" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/toxins/mineral_storeroom) -"byF" = ( -/obj/machinery/power/apc{ - dir = 1; - name = "Toxins Launch Room APC"; - pixel_y = 25 - }, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/toxins/mineral_storeroom) -"byG" = ( -/obj/machinery/door/airlock/maintenance{ - name = "Toxins Launch Room Maintenance"; - req_access_txt = "8" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/toxins/mineral_storeroom) -"byH" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"byI" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/item/weapon/cigbutt/cigarbutt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"byJ" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/light/small{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"byK" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/effect/landmark{ - name = "xeno_spawn"; - pixel_x = -1 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"byL" = ( -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plating, -/area/maintenance/aft) -"byM" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/cyan/hidden{ - tag = "icon-intact (SOUTHEAST)"; - icon_state = "intact"; - dir = 6 - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"byN" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"byO" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/closed/wall/r_wall, -/area/medical/virology) -"byP" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/mob/living/carbon/monkey, -/turf/open/floor/plasteel/freezer, -/area/medical/virology) -"byQ" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/obj/effect/landmark{ - name = "xeno_spawn"; - pixel_x = -1 - }, -/turf/open/floor/plasteel/freezer, -/area/medical/virology) -"byR" = ( -/obj/machinery/light{ - dir = 1 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - layer = 2.4; - on = 1 - }, -/mob/living/carbon/monkey, -/turf/open/floor/plasteel/freezer, -/area/medical/virology) -"byS" = ( -/obj/effect/decal/cleanable/deadcockroach, -/turf/open/floor/plasteel/freezer, -/area/medical/virology) -"byT" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/virology{ - autoclose = 0; - frequency = 1449; - icon_state = "door_locked"; - id_tag = "virology_airlock_interior"; - locked = 1; - name = "Virology Interior Airlock"; - req_access_txt = "39" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/doorButtons/access_button{ - idDoor = "virology_airlock_interior"; - idSelf = "virology_airlock_control"; - name = "Virology Access Button"; - pixel_x = -24; - pixel_y = 0; - req_access_txt = "39" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/white, -/area/medical/virology) -"byU" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/hidden, -/turf/closed/wall/r_wall, -/area/medical/virology) -"byV" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/door/firedoor, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 1 - }, -/area/medical/medbay) -"byW" = ( -/obj/machinery/door/firedoor, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"byX" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/door/firedoor, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 4 - }, -/area/medical/medbay) -"byY" = ( -/turf/closed/wall, -/area/medical/surgery) -"byZ" = ( -/obj/structure/table/glass, -/obj/item/device/flashlight/pen, -/obj/item/clothing/neck/stethoscope, -/obj/item/weapon/lipstick/black, -/obj/machinery/power/apc{ - dir = 8; - name = "Personal Examination Room APC"; - pixel_x = -25 - }, -/obj/structure/cable, -/obj/item/weapon/reagent_containers/pill/morphine, -/turf/open/floor/plasteel/black, -/area/medical/exam_room) -"bza" = ( -/obj/effect/decal/remains/human, -/obj/structure/chair/office/dark{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/effect/landmark{ - name = "revenantspawn" - }, -/turf/open/floor/plasteel/black, -/area/medical/exam_room) -"bzb" = ( -/obj/structure/bed, -/obj/item/weapon/bedsheet/cmo, -/obj/effect/decal/cleanable/blood/drip, -/obj/item/weapon/restraints/handcuffs, -/obj/item/clothing/mask/muzzle, -/obj/effect/landmark{ - name = "revenantspawn" - }, -/turf/open/floor/plasteel/black, -/area/medical/exam_room) -"bzc" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/structure/sign/examroom{ - pixel_x = -32 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/maintenance/aft) -"bzd" = ( -/obj/machinery/camera{ - c_tag = "Aft Primary Hallway Central"; - dir = 8; - network = list("SS13") - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/yellow/corner, -/area/hallway/primary/aft) -"bze" = ( -/obj/structure/table, -/obj/item/weapon/folder/white, -/obj/item/weapon/pen, -/turf/open/floor/plasteel/black, -/area/toxins/server) -"bzf" = ( -/obj/machinery/computer/rdservercontrol, -/turf/open/floor/plasteel/black, -/area/toxins/server) -"bzg" = ( -/obj/machinery/r_n_d/server/robotics, -/turf/open/floor/bluegrid{ - name = "Server Base"; - initial_gas_mix = "n2=500;TEMP=80" - }, -/area/toxins/server) -"bzh" = ( -/obj/machinery/computer/mecha, -/obj/item/device/radio/intercom{ - dir = 0; - name = "Station Intercom (General)"; - pixel_x = 0; - pixel_y = -26 - }, -/turf/open/floor/plasteel/whitepurple/side{ - dir = 10 - }, -/area/crew_quarters/hor) -"bzi" = ( -/obj/structure/table, -/obj/item/device/aicard, -/obj/item/weapon/circuitboard/aicore, -/obj/machinery/requests_console{ - announcementConsole = 1; - department = "Research Director's Desk"; - departmentType = 5; - name = "Research Director RC"; - pixel_x = 0; - pixel_y = -30 - }, -/turf/open/floor/plasteel/whitepurple/side, -/area/crew_quarters/hor) -"bzj" = ( -/obj/structure/table, -/obj/item/weapon/paper_bin{ - layer = 2.9; - pixel_x = -2; - pixel_y = 5; - tag = "every single paper bin is edited to this" - }, -/obj/item/weapon/folder/white, -/obj/item/weapon/pen, -/obj/item/weapon/stamp/rd, -/obj/machinery/status_display{ - density = 0; - pixel_y = -30; - supply_display = 0 - }, -/obj/machinery/camera{ - c_tag = "Research Director's Office"; - dir = 1; - network = list("SS13","RD") - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/whitepurple/side, -/area/crew_quarters/hor) -"bzk" = ( -/obj/structure/table, -/obj/item/weapon/cartridge/signal/toxins, -/obj/item/weapon/cartridge/signal/toxins{ - pixel_x = -4; - pixel_y = 2 - }, -/obj/item/weapon/cartridge/signal/toxins{ - pixel_x = 4; - pixel_y = 6 - }, -/obj/machinery/computer/security/telescreen{ - desc = "Used for watching the RD's goons and the AI's satellite from the safety of his office."; - name = "Research Monitor"; - network = list("RD","MiniSat"); - pixel_x = 0; - pixel_y = -32 - }, -/turf/open/floor/plasteel/whitepurple/side, -/area/crew_quarters/hor) -"bzl" = ( -/obj/machinery/newscaster{ - pixel_y = -30 - }, -/obj/machinery/modular_computer/console/preset/research, -/turf/open/floor/plasteel/whitepurple/side{ - dir = 6 - }, -/area/crew_quarters/hor) -"bzm" = ( -/turf/closed/wall/r_wall, -/area/crew_quarters/hor) -"bzn" = ( -/turf/closed/wall/r_wall, -/area/security/checkpoint/science) -"bzo" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/closed/wall/r_wall, -/area/security/checkpoint/science) -"bzp" = ( -/obj/machinery/portable_atmospherics/canister/carbon_dioxide, -/turf/open/floor/plasteel/bot, -/area/toxins/storage) -"bzq" = ( -/obj/structure/sign/nosmoking_2{ - pixel_x = 32 - }, -/turf/open/floor/plasteel, -/area/toxins/storage) -"bzr" = ( -/obj/structure/closet/firecloset, -/turf/open/floor/plasteel/white/side{ - tag = "icon-whitehall (NORTH)"; - icon_state = "whitehall"; - dir = 1 - }, -/area/medical/research{ - name = "Research Division" - }) -"bzs" = ( -/obj/structure/reagent_dispensers/watertank, -/obj/machinery/light, -/turf/open/floor/plasteel/white/side{ - tag = "icon-whitehall (NORTH)"; - icon_state = "whitehall"; - dir = 1 - }, -/area/medical/research{ - name = "Research Division" - }) -"bzt" = ( -/obj/structure/reagent_dispensers/fueltank, -/turf/open/floor/plasteel/white/side{ - tag = "icon-whitehall (NORTH)"; - icon_state = "whitehall"; - dir = 1 - }, -/area/medical/research{ - name = "Research Division" - }) -"bzu" = ( -/obj/structure/tank_dispenser, -/turf/open/floor/plasteel, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"bzv" = ( -/obj/structure/closet/wardrobe/science_white, -/turf/open/floor/plasteel, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"bzw" = ( -/obj/item/device/assembly/signaler{ - pixel_x = 0; - pixel_y = 8 - }, -/obj/item/device/assembly/signaler{ - pixel_x = -8; - pixel_y = 5 - }, -/obj/item/device/assembly/signaler{ - pixel_x = 6; - pixel_y = 5 - }, -/obj/item/device/assembly/signaler{ - pixel_x = -2; - pixel_y = -2 - }, -/obj/structure/table/reinforced, -/turf/open/floor/plasteel/white, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"bzx" = ( -/obj/item/device/transfer_valve{ - pixel_x = -5 - }, -/obj/item/device/transfer_valve{ - pixel_x = -5 - }, -/obj/item/device/transfer_valve{ - pixel_x = 0 - }, -/obj/item/device/transfer_valve{ - pixel_x = 0 - }, -/obj/item/device/transfer_valve{ - pixel_x = 5 - }, -/obj/item/device/transfer_valve{ - pixel_x = 5 - }, -/obj/structure/table/reinforced, -/turf/open/floor/plasteel, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"bzy" = ( -/obj/item/device/assembly/timer{ - pixel_x = 5; - pixel_y = 4 - }, -/obj/item/device/assembly/timer{ - pixel_x = -4; - pixel_y = 2 - }, -/obj/item/device/assembly/timer{ - pixel_x = 6; - pixel_y = -4 - }, -/obj/item/device/assembly/timer{ - pixel_x = 0; - pixel_y = 0 - }, -/obj/structure/table/reinforced, -/turf/open/floor/plasteel, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"bzz" = ( -/obj/machinery/computer/turbine_computer{ - id = "incineratorturbine" - }, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"bzA" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible, -/obj/machinery/meter, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"bzB" = ( -/obj/structure/cable/yellow{ - d1 = 2; - d2 = 4; - icon_state = "2-4"; - tag = "" - }, -/turf/open/floor/plasteel, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"bzC" = ( -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/meter, -/obj/machinery/atmospherics/pipe/manifold/general/visible{ - dir = 8 - }, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"bzD" = ( -/obj/machinery/door/firedoor/heavy, -/obj/machinery/door/airlock/research{ - name = "Toxins Launch Room"; - req_access_txt = "8" - }, -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/general/visible{ - color = "#330000"; - dir = 4 - }, -/turf/open/floor/plasteel, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"bzE" = ( -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/general/visible{ - dir = 10; - pixel_x = 0; - initialize_directions = 10 - }, -/turf/open/floor/plasteel, -/area/toxins/mineral_storeroom) -"bzF" = ( -/obj/structure/cable/yellow{ - d2 = 8; - icon_state = "0-8" - }, -/obj/machinery/power/terminal{ - icon_state = "term"; - dir = 1 - }, -/turf/open/floor/plasteel, -/area/toxins/mineral_storeroom) -"bzG" = ( -/turf/open/floor/plasteel, -/area/toxins/mineral_storeroom) -"bzH" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/toxins/mineral_storeroom) -"bzI" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/toxins/mineral_storeroom) -"bzJ" = ( -/obj/structure/reagent_dispensers/watertank, -/turf/open/floor/plating, -/area/maintenance/port{ - name = "Monastery Maintenance" - }) -"bzK" = ( -/turf/open/floor/plasteel/loadingarea{ - tag = "icon-loadingarea (EAST)"; - dir = 4 - }, -/area/toxins/mineral_storeroom) -"bzL" = ( -/turf/open/floor/plasteel/delivery, -/area/toxins/mineral_storeroom) -"bzM" = ( -/obj/structure/closet/boxinggloves, -/turf/open/floor/plating{ - icon_state = "platingdmg3" - }, -/area/maintenance/aft) -"bzN" = ( -/obj/structure/closet/masks, -/obj/item/trash/deadmouse, -/obj/effect/landmark{ - name = "revenantspawn" - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"bzO" = ( -/obj/machinery/vending/cigarette, -/turf/open/floor/plating, -/area/maintenance/aft) -"bzP" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/cyan/hidden, -/turf/open/floor/plating, -/area/maintenance/aft) -"bzQ" = ( -/obj/structure/window/reinforced, -/turf/open/floor/plasteel/freezer, -/area/medical/virology) -"bzR" = ( -/obj/structure/window/reinforced, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - on = 1 - }, -/mob/living/carbon/monkey, -/turf/open/floor/plasteel/freezer, -/area/medical/virology) -"bzS" = ( -/obj/structure/window/reinforced, -/obj/effect/landmark{ - name = "blobstart" - }, -/turf/open/floor/plasteel/freezer, -/area/medical/virology) -"bzT" = ( -/obj/machinery/door/window/eastleft{ - dir = 2; - name = "Monkey Pen"; - req_one_access_txt = "39" - }, -/mob/living/carbon/monkey, -/turf/open/floor/plasteel/freezer, -/area/medical/virology) -"bzU" = ( -/obj/machinery/doorButtons/airlock_controller{ - idExterior = "virology_airlock_exterior"; - idInterior = "virology_airlock_interior"; - idSelf = "virology_airlock_control"; - name = "Virology Access Console"; - pixel_x = 8; - pixel_y = 22; - req_access_txt = "39" - }, -/obj/machinery/light_switch{ - pixel_x = -4; - pixel_y = 24 - }, -/turf/open/floor/plasteel/whitegreen/side{ - tag = "icon-whitegreen (NORTHWEST)"; - icon_state = "whitegreen"; - dir = 9 - }, -/area/medical/virology) -"bzV" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/white, -/area/medical/virology) -"bzW" = ( -/obj/machinery/power/apc{ - cell_type = 5000; - dir = 1; - name = "Virology APC"; - pixel_x = 0; - pixel_y = 24 - }, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/machinery/atmospherics/pipe/simple/cyan/hidden, -/turf/open/floor/plasteel/whitegreen/side{ - tag = "icon-whitegreen (NORTHEAST)"; - icon_state = "whitegreen"; - dir = 5 - }, -/area/medical/virology) -"bzX" = ( -/obj/item/weapon/bedsheet/medical, -/obj/structure/bed, -/obj/effect/landmark{ - name = "revenantspawn" - }, -/obj/structure/mirror{ - pixel_x = -28 - }, -/obj/structure/curtain{ - layer = 4.5 - }, -/turf/open/floor/plasteel/freezer, -/area/medical/medbay) -"bzY" = ( -/obj/machinery/vending/wallmed{ - pixel_y = 28; - products = list(/obj/item/weapon/reagent_containers/syringe = 3, /obj/item/weapon/reagent_containers/pill/patch/styptic = 1, /obj/item/weapon/reagent_containers/pill/patch/silver_sulf = 1, /obj/item/weapon/reagent_containers/spray/medical/sterilizer = 1) - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - layer = 2.4; - on = 1 - }, -/obj/machinery/light{ - dir = 1 - }, -/turf/open/floor/plasteel/freezer, -/area/medical/medbay) -"bzZ" = ( -/obj/machinery/button/door{ - id = "patientA"; - name = "Privacy Shutters"; - pixel_y = 25 - }, -/obj/machinery/camera{ - c_tag = "Patient Room A"; - dir = 2 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/freezer, -/area/medical/medbay) -"bAa" = ( -/obj/machinery/door/airlock/medical{ - name = "Patient Room A"; - req_access_txt = "5" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/freezer, -/area/medical/medbay) -"bAb" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - layer = 2.4; - on = 1 - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"bAc" = ( -/obj/machinery/light{ - dir = 4 - }, -/obj/machinery/firealarm{ - dir = 4; - pixel_x = 28 - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 4; - initialize_directions = 11 - }, -/turf/open/floor/plasteel/whiteblue/side{ - tag = "icon-whiteblue (EAST)"; - dir = 4 - }, -/area/medical/medbay) -"bAd" = ( -/obj/machinery/limbgrower, -/obj/item/weapon/reagent_containers/glass/beaker/synthflesh, -/obj/machinery/newscaster/security_unit{ - pixel_y = 32 - }, -/turf/open/floor/plasteel/freezer, -/area/medical/surgery) -"bAe" = ( -/obj/machinery/computer/med_data, -/obj/machinery/status_display{ - density = 0; - layer = 4; - pixel_x = 0; - pixel_y = 32 - }, -/turf/open/floor/plasteel/freezer, -/area/medical/surgery) -"bAf" = ( -/obj/structure/table, -/obj/structure/bedsheetbin, -/obj/structure/extinguisher_cabinet{ - pixel_x = 24 - }, -/obj/machinery/computer/security/telescreen/entertainment{ - pixel_y = 32 - }, -/turf/open/floor/plasteel/freezer, -/area/medical/surgery) -"bAg" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/closed/wall, -/area/medical/surgery) -"bAh" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/closed/wall/r_wall, -/area/crew_quarters/hor) -"bAi" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 6 - }, -/obj/structure/table, -/obj/item/toy/cards/deck, -/turf/open/floor/plating, -/area/maintenance/maintcentral{ - name = "Atmospherics Maintenance" - }) -"bAj" = ( -/obj/machinery/space_heater, -/obj/machinery/light/small{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/maintcentral{ - name = "Atmospherics Maintenance" - }) -"bAk" = ( -/obj/machinery/space_heater, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/maintcentral{ - name = "Atmospherics Maintenance" - }) -"bAl" = ( -/obj/machinery/portable_atmospherics/canister/nitrous_oxide, -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - dir = 4 - }, -/turf/open/floor/plasteel/bot, -/area/toxins/storage) -"bAm" = ( -/obj/machinery/portable_atmospherics/canister/nitrous_oxide, -/obj/machinery/light, -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - dir = 4 - }, -/turf/open/floor/plasteel/bot, -/area/toxins/storage) -"bAn" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - dir = 4 - }, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/toxins/storage) -"bAo" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/components/binary/pump{ - dir = 8; - name = "External to Filter"; - on = 1 - }, -/turf/open/floor/plasteel, -/area/toxins/storage) -"bAp" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/toxins/storage) -"bAq" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/medical/research{ - name = "Research Division" - }) -"bAr" = ( -/turf/closed/wall/r_wall, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"bAs" = ( -/obj/machinery/atmospherics/components/binary/valve, -/obj/machinery/button/door{ - id = "turbinevent"; - name = "Aft Vent Control"; - pixel_x = 6; - pixel_y = -24; - req_access_txt = "0"; - req_one_access_txt = "8;24" - }, -/obj/machinery/button/door{ - id = "mixvent"; - name = "Starboard Vent Control"; - pixel_x = -6; - pixel_y = -24; - req_access_txt = "0"; - req_one_access_txt = "8;24" - }, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"bAt" = ( -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plasteel, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"bAu" = ( -/obj/machinery/atmospherics/components/binary/valve, -/obj/machinery/button/ignition{ - id = "Incinerator"; - pixel_x = -6; - pixel_y = -24 - }, -/obj/machinery/doorButtons/airlock_controller{ - idExterior = "incinerator_airlock_exterior"; - idInterior = "incinerator_airlock_interior"; - idSelf = "incinerator_access_control"; - name = "Incinerator Access Console"; - pixel_x = 6; - pixel_y = -26; - req_access_txt = "0" - }, -/obj/structure/extinguisher_cabinet{ - pixel_x = 24 - }, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"bAv" = ( -/obj/machinery/atmospherics/components/binary/pump{ - dir = 2; - name = "Incinerator Output Pump"; - on = 0 - }, -/turf/open/floor/plasteel, -/area/toxins/mineral_storeroom) -"bAw" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel, -/area/toxins/mineral_storeroom) -"bAx" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/toxins/mineral_storeroom) -"bAy" = ( -/obj/machinery/holopad, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 9 - }, -/turf/open/floor/plasteel, -/area/toxins/mineral_storeroom) -"bAz" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/turf/open/floor/plasteel, -/area/toxins/mineral_storeroom) -"bAA" = ( -/obj/item/device/radio/intercom{ - dir = 8; - name = "Station Intercom (General)"; - pixel_x = 28 - }, -/turf/open/floor/plasteel/brown{ - dir = 4 - }, -/area/toxins/mineral_storeroom) -"bAB" = ( -/obj/structure/table/wood, -/obj/item/weapon/folder/yellow, -/obj/item/weapon/pen, -/obj/machinery/camera{ - c_tag = "Monastery Library"; - dir = 4; - network = list("SS13","Monastery") - }, -/turf/open/floor/plasteel/black, -/area/library) -"bAC" = ( -/obj/machinery/mineral/unloading_machine{ - dir = 1; - icon_state = "unloader-corner"; - input_dir = 1; - output_dir = 2 - }, -/turf/open/floor/plating/warnplate{ - dir = 9 - }, -/area/toxins/mineral_storeroom) -"bAD" = ( -/obj/structure/table, -/obj/item/device/flashlight/lamp, -/obj/effect/decal/cleanable/cobweb{ - icon_state = "cobweb2" - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"bAE" = ( -/obj/machinery/vending/medical, -/turf/open/floor/plasteel/whitegreen/side{ - tag = "icon-whitegreen (NORTHWEST)"; - icon_state = "whitegreen"; - dir = 9 - }, -/area/medical/virology) -"bAF" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 8 - }, -/turf/open/floor/plasteel/whitegreen/side{ - dir = 1 - }, -/area/medical/virology) -"bAG" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/whitegreen/side{ - dir = 1 - }, -/area/medical/virology) -"bAH" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 1; - initialize_directions = 11 - }, -/turf/open/floor/plasteel/whitegreen/side{ - dir = 1 - }, -/area/medical/virology) -"bAI" = ( -/obj/machinery/camera{ - c_tag = "Virology"; - dir = 2; - network = list("SS13") - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/item/device/radio/intercom{ - dir = 8; - freerange = 1; - name = "Station Intercom (Telecoms)"; - pixel_x = 0; - pixel_y = 26 - }, -/turf/open/floor/plasteel/whitegreen/side{ - dir = 1 - }, -/area/medical/virology) -"bAJ" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 1; - initialize_directions = 11 - }, -/turf/open/floor/plasteel/whitegreen/corner{ - dir = 1 - }, -/area/medical/virology) -"bAK" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 9 - }, -/obj/machinery/holopad, -/turf/open/floor/plasteel/white, -/area/medical/virology) -"bAL" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/hidden, -/turf/open/floor/plasteel/whitegreen/corner{ - dir = 4 - }, -/area/medical/virology) -"bAM" = ( -/obj/machinery/light{ - dir = 1 - }, -/obj/machinery/airalarm{ - pixel_y = 22 - }, -/turf/open/floor/plasteel/whitegreen/side{ - dir = 1 - }, -/area/medical/virology) -"bAN" = ( -/obj/structure/closet/l3closet/virology, -/turf/open/floor/plasteel/whitegreen/side{ - tag = "icon-whitegreen (NORTHEAST)"; - icon_state = "whitegreen"; - dir = 5 - }, -/area/medical/virology) -"bAO" = ( -/obj/structure/table, -/obj/item/weapon/clipboard{ - toppaper = null - }, -/obj/item/weapon/pen{ - layer = 3.1 - }, -/obj/item/clothing/neck/stethoscope{ - layer = 3.2 - }, -/turf/open/floor/plasteel/freezer, -/area/medical/medbay) -"bAP" = ( -/turf/open/floor/carpet, -/area/library) -"bAQ" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/closet/secure_closet/personal/patient, -/turf/open/floor/plasteel/freezer, -/area/medical/medbay) -"bAR" = ( -/obj/structure/grille, -/obj/structure/window/fulltile, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "patientA"; - name = "privacy shutters" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/medical/medbay) -"bAS" = ( -/obj/structure/grille, -/obj/structure/window/fulltile, -/turf/open/floor/plating, -/area/medical/surgery) -"bAT" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/freezer, -/area/medical/surgery) -"bAU" = ( -/obj/machinery/camera{ - c_tag = "Medbay Recovery Room"; - dir = 8; - network = list("SS13") - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/item/device/radio/intercom{ - broadcasting = 0; - freerange = 0; - frequency = 1485; - listening = 1; - name = "Station Intercom (Medbay)"; - pixel_x = 28; - pixel_y = 0 - }, -/obj/machinery/holopad, -/turf/open/floor/plasteel/freezer, -/area/medical/surgery) -"bAV" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/medical/surgery) -"bAW" = ( -/obj/structure/closet/crate/freezer/blood, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/whiteblue, -/area/medical/surgery) -"bAX" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/sink{ - pixel_y = 28 - }, -/turf/open/floor/plasteel/whiteblue/side{ - dir = 1 - }, -/area/medical/surgery) -"bAY" = ( -/obj/machinery/light{ - dir = 1 - }, -/obj/machinery/camera{ - c_tag = "Surgery"; - dir = 2; - network = list("SS13","Surgery") - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/airalarm{ - pixel_y = 22 - }, -/turf/open/floor/plasteel/whiteblue/side{ - dir = 1 - }, -/area/medical/surgery) -"bAZ" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/vending/wallmed{ - pixel_y = 28; - products = list(/obj/item/weapon/reagent_containers/syringe = 3, /obj/item/weapon/reagent_containers/pill/patch/styptic = 1, /obj/item/weapon/reagent_containers/pill/patch/silver_sulf = 1, /obj/item/weapon/reagent_containers/spray/medical/sterilizer = 1) - }, -/turf/open/floor/plasteel/whiteblue/side{ - dir = 1 - }, -/area/medical/surgery) -"bBa" = ( -/obj/structure/closet/secure_closet/medical2, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 10 - }, -/turf/open/floor/plasteel/whiteblue, -/area/medical/surgery) -"bBb" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 8 - }, -/turf/open/floor/plasteel/yellow/corner{ - dir = 8 - }, -/area/hallway/primary/aft) -"bBc" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/aft) -"bBd" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/yellow/corner, -/area/hallway/primary/aft) -"bBe" = ( -/obj/machinery/door/airlock/maintenance{ - name = "Atmospherics Maintenance"; - req_access_txt = "24" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/maintcentral{ - name = "Atmospherics Maintenance" - }) -"bBf" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/maintcentral{ - name = "Atmospherics Maintenance" - }) -"bBg" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/maintcentral{ - name = "Atmospherics Maintenance" - }) -"bBh" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/sign/poster{ - pixel_x = 0; - pixel_y = 32 - }, -/turf/open/floor/plating, -/area/maintenance/maintcentral{ - name = "Atmospherics Maintenance" - }) -"bBi" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 1 - }, -/turf/open/floor/plating, -/area/maintenance/maintcentral{ - name = "Atmospherics Maintenance" - }) -"bBj" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/maintcentral{ - name = "Atmospherics Maintenance" - }) -"bBk" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/maintcentral{ - name = "Atmospherics Maintenance" - }) -"bBl" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/chair/stool, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/maintcentral{ - name = "Atmospherics Maintenance" - }) -"bBm" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 1 - }, -/obj/effect/landmark{ - name = "blobstart" - }, -/obj/item/chair/stool, -/turf/open/floor/plating, -/area/maintenance/maintcentral{ - name = "Atmospherics Maintenance" - }) -"bBn" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 9; - pixel_y = 0 - }, -/obj/structure/sign/poster{ - pixel_x = 32; - pixel_y = 0 - }, -/turf/open/floor/plating, -/area/maintenance/maintcentral{ - name = "Atmospherics Maintenance" - }) -"bBo" = ( -/obj/machinery/door/firedoor/heavy, -/obj/machinery/door/airlock/atmos{ - name = "Toxins Storage"; - req_access_txt = "24" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plasteel, -/area/toxins/storage) -"bBp" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible{ - dir = 2 - }, -/turf/closed/wall/r_wall, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"bBq" = ( -/obj/machinery/door/airlock/glass{ - autoclose = 0; - frequency = 1449; - heat_proof = 1; - icon_state = "door_locked"; - id_tag = "incinerator_airlock_interior"; - locked = 1; - name = "Turbine Interior Airlock"; - req_access_txt = "0"; - req_one_access_txt = "8;24" - }, -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/engine, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"bBr" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible, -/turf/closed/wall/r_wall, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"bBs" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible, -/turf/open/floor/plasteel, -/area/toxins/mineral_storeroom) -"bBt" = ( -/obj/structure/window/reinforced, -/obj/machinery/doppler_array{ - dir = 2 - }, -/turf/open/floor/plasteel/bot{ - dir = 2 - }, -/area/toxins/mineral_storeroom) -"bBu" = ( -/obj/machinery/conveyor_switch/oneway{ - id = "toxmineral"; - name = "smelting conveyor" - }, -/turf/open/floor/plasteel/brown{ - dir = 4 - }, -/area/toxins/mineral_storeroom) -"bBv" = ( -/obj/effect/spawner/structure/window, -/turf/open/floor/plating, -/area/toxins/mineral_storeroom) -"bBw" = ( -/obj/machinery/conveyor{ - dir = 2; - id = "toxmineral" - }, -/turf/open/floor/plating/warnplate{ - tag = "icon-warnplate (WEST)"; - dir = 8 - }, -/area/toxins/mineral_storeroom) -"bBx" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/toxins/mineral_storeroom) -"bBy" = ( -/obj/structure/chair/comfy/black, -/obj/item/trash/pistachios, -/turf/open/floor/plasteel/darkwarning{ - dir = 1 - }, -/area/maintenance/aft) -"bBz" = ( -/obj/structure/chair/comfy/black, -/obj/item/stack/spacecash/c100, -/turf/open/floor/plasteel/darkwarning{ - dir = 1 - }, -/area/maintenance/aft) -"bBA" = ( -/obj/structure/chair/comfy/black, -/turf/open/floor/plasteel/darkwarning{ - dir = 1 - }, -/area/maintenance/aft) -"bBB" = ( -/obj/structure/chair/comfy/black, -/obj/item/weapon/cigbutt, -/turf/open/floor/plasteel/darkwarning{ - dir = 1 - }, -/area/maintenance/aft) -"bBC" = ( -/obj/item/trash/popcorn, -/turf/open/floor/plasteel/darkwarning{ - dir = 5 - }, -/area/maintenance/aft) -"bBD" = ( -/obj/structure/sign/poster{ - pixel_x = 32; - pixel_y = 0 - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"bBE" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21" - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"bBF" = ( -/obj/structure/rack, -/obj/item/weapon/cartridge/medical, -/turf/open/floor/plating, -/area/maintenance/aft) -"bBG" = ( -/obj/structure/table/glass, -/obj/item/weapon/book/manual/wiki/infections, -/obj/item/weapon/hand_labeler, -/obj/item/device/radio/headset/headset_med, -/obj/machinery/light{ - dir = 8 - }, -/obj/structure/extinguisher_cabinet{ - pixel_x = -26; - pixel_y = 0 - }, -/turf/open/floor/plasteel/whitegreen/side{ - dir = 8 - }, -/area/medical/virology) -"bBH" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/white, -/area/medical/virology) -"bBI" = ( -/turf/open/floor/plasteel/white, -/area/medical/virology) -"bBJ" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/white, -/area/medical/virology) -"bBK" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/hidden, -/turf/open/floor/plasteel/white, -/area/medical/virology) -"bBL" = ( -/obj/machinery/firealarm{ - dir = 4; - pixel_x = 28 - }, -/obj/structure/sink{ - dir = 4; - icon_state = "sink"; - pixel_x = 11; - pixel_y = 0 - }, -/turf/open/floor/plasteel/whitegreen/side{ - tag = "icon-whitegreen (EAST)"; - icon_state = "whitegreen"; - dir = 4 - }, -/area/medical/virology) -"bBM" = ( -/obj/machinery/requests_console{ - announcementConsole = 0; - department = "Medbay"; - departmentType = 1; - name = "Medbay RC"; - pixel_x = -30; - pixel_y = 0; - pixel_z = 0 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/whiteblue/side{ - dir = 8 - }, -/area/medical/medbay) -"bBN" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 8 - }, -/turf/open/floor/plasteel/whiteblue/side{ - tag = "icon-whiteblue (EAST)"; - dir = 4 - }, -/area/medical/medbay) -"bBO" = ( -/obj/machinery/door/airlock/glass_medical{ - id_tag = null; - name = "Recovery Room"; - req_access_txt = "0" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/freezer, -/area/medical/surgery) -"bBP" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/freezer, -/area/medical/surgery) -"bBQ" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold-b-f (NORTH)"; - dir = 1 - }, -/turf/open/floor/plasteel/freezer, -/area/medical/surgery) -"bBR" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/medical{ - name = "Surgery"; - req_access_txt = "45" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/freezer, -/area/medical/surgery) -"bBS" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold-b-f (NORTH)"; - dir = 1 - }, -/turf/open/floor/plasteel/whiteblue/side{ - dir = 8 - }, -/area/medical/surgery) -"bBT" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 10 - }, -/turf/open/floor/plasteel/white, -/area/medical/surgery) -"bBU" = ( -/obj/machinery/computer/operating, -/turf/open/floor/plasteel/white, -/area/medical/surgery) -"bBV" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/white, -/area/medical/surgery) -"bBW" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 8; - initialize_directions = 11 - }, -/turf/open/floor/plasteel/whiteblue/side{ - tag = "icon-whiteblue (EAST)"; - dir = 4 - }, -/area/medical/surgery) -"bBX" = ( -/obj/machinery/door/airlock/maintenance{ - name = "Surgery Maintenance"; - req_access_txt = "45" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/medical/surgery) -"bBY" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 9 - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"bBZ" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/yellow/corner{ - dir = 8 - }, -/area/hallway/primary/aft) -"bCa" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plasteel, -/area/hallway/primary/aft) -"bCb" = ( -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 8 - }, -/turf/open/floor/plasteel/yellow/corner, -/area/hallway/primary/aft) -"bCc" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/maintenance/maintcentral{ - name = "Atmospherics Maintenance" - }) -"bCd" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/maintcentral{ - name = "Atmospherics Maintenance" - }) -"bCe" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plating, -/area/maintenance/maintcentral{ - name = "Atmospherics Maintenance" - }) -"bCf" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/maintcentral{ - name = "Atmospherics Maintenance" - }) -"bCg" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 1; - initialize_directions = 11 - }, -/obj/effect/decal/cleanable/vomit/old, -/turf/open/floor/plating, -/area/maintenance/maintcentral{ - name = "Atmospherics Maintenance" - }) -"bCh" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 9 - }, -/turf/open/floor/plating, -/area/maintenance/maintcentral{ - name = "Atmospherics Maintenance" - }) -"bCi" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/maintcentral{ - name = "Atmospherics Maintenance" - }) -"bCj" = ( -/obj/machinery/portable_atmospherics/canister, -/turf/open/floor/plating, -/area/maintenance/maintcentral{ - name = "Atmospherics Maintenance" - }) -"bCk" = ( -/turf/closed/wall/r_wall, -/area/atmos) -"bCl" = ( -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/machinery/power/apc{ - dir = 8; - name = "Atmospherics APC"; - pixel_x = -24 - }, -/obj/machinery/portable_atmospherics/scrubber, -/turf/open/floor/plasteel/yellow/side{ - dir = 1 - }, -/area/atmos) -"bCm" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/airalarm{ - dir = 2; - pixel_y = 22 - }, -/turf/open/floor/plasteel/yellow/side{ - dir = 1 - }, -/area/atmos) -"bCn" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/requests_console{ - announcementConsole = 1; - department = "Head of Security's Desk"; - departmentType = 5; - name = "Head of Security RC"; - pixel_x = 0; - pixel_y = 30 - }, -/turf/open/floor/plasteel/yellow/side{ - dir = 1 - }, -/area/atmos) -"bCo" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/machinery/light{ - dir = 1 - }, -/obj/machinery/camera{ - c_tag = "Atmospherics Toxins"; - dir = 2; - network = list("SS13"); - pixel_x = 0; - pixel_y = 0; - start_active = 1 - }, -/obj/item/device/radio/intercom{ - dir = 0; - name = "Station Intercom (General)"; - pixel_x = 0; - pixel_y = 26 - }, -/turf/open/floor/plasteel/yellow/side{ - dir = 1 - }, -/area/atmos) -"bCp" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/yellow/side{ - dir = 1 - }, -/area/atmos) -"bCq" = ( -/obj/structure/cable{ - icon_state = "1-8" - }, -/turf/open/floor/plasteel/yellow/side{ - dir = 1 - }, -/area/atmos) -"bCr" = ( -/turf/open/floor/plasteel/yellow/side{ - dir = 5 - }, -/area/atmos) -"bCs" = ( -/obj/machinery/bookbinder, -/turf/open/floor/plasteel/black, -/area/library) -"bCt" = ( -/obj/structure/grille, -/turf/closed/wall/r_wall, -/area/atmos) -"bCu" = ( -/obj/machinery/atmospherics/components/binary/pump{ - dir = 2; - on = 1; - target_pressure = 101.325 - }, -/obj/machinery/doorButtons/access_button{ - idDoor = "incinerator_airlock_exterior"; - idSelf = "incinerator_access_control"; - layer = 3.1; - name = "Incinerator airlock control"; - pixel_x = 8; - pixel_y = -24 - }, -/turf/open/floor/engine, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"bCv" = ( -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/engine, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"bCw" = ( -/obj/machinery/atmospherics/components/binary/pump{ - dir = 1; - on = 1; - target_pressure = 101.325 - }, -/obj/machinery/doorButtons/access_button{ - idSelf = "incinerator_access_control"; - idDoor = "incinerator_airlock_interior"; - name = "Incinerator airlock control"; - pixel_x = -8; - pixel_y = 24 - }, -/turf/open/floor/engine, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"bCx" = ( -/obj/machinery/computer/security/telescreen{ - desc = "Used for watching the test chamber."; - dir = 2; - layer = 4; - name = "Test Chamber Telescreen"; - network = list("Toxins"); - pixel_x = 0; - pixel_y = -32 - }, -/turf/open/floor/plasteel, -/area/toxins/mineral_storeroom) -"bCy" = ( -/obj/machinery/button/massdriver{ - dir = 2; - id = "toxinsdriver"; - pixel_y = -24 - }, -/turf/open/floor/plasteel/loadingarea{ - tag = "icon-loadingarea (EAST)"; - dir = 4 - }, -/area/toxins/mineral_storeroom) -"bCz" = ( -/obj/machinery/mass_driver{ - id = "toxinsdriver" - }, -/obj/structure/window/reinforced{ - dir = 4; - pixel_x = 0 - }, -/obj/machinery/door/window/southleft{ - dir = 8; - name = "Mass Driver Door"; - req_access_txt = "7" - }, -/turf/open/floor/plating/warnplate/end{ - tag = "icon-plating_warn_end (NORTH)"; - icon_state = "plating_warn_end"; - dir = 1 - }, -/area/toxins/mineral_storeroom) -"bCA" = ( -/obj/machinery/light{ - dir = 4 - }, -/turf/open/floor/plasteel/brown{ - dir = 4 - }, -/area/toxins/mineral_storeroom) -"bCB" = ( -/obj/machinery/mineral/processing_unit_console, -/turf/closed/wall, -/area/toxins/mineral_storeroom) -"bCC" = ( -/obj/machinery/mineral/processing_unit{ - dir = 1; - output_dir = 2 - }, -/turf/open/floor/plating/warnplate{ - dir = 9 - }, -/area/toxins/mineral_storeroom) -"bCD" = ( -/obj/machinery/door/window/eastright{ - base_state = "left"; - dir = 8; - icon_state = "left"; - name = "Arena" - }, -/obj/structure/window/reinforced{ - dir = 1 - }, -/obj/structure/chair/stool, -/turf/open/floor/engine, -/area/maintenance/aft) -"bCE" = ( -/obj/structure/window/reinforced{ - dir = 1 - }, -/mob/living/simple_animal/chicken{ - name = "Bloodthirsty Peckins" - }, -/turf/open/floor/engine, -/area/maintenance/aft) -"bCF" = ( -/obj/structure/window/reinforced{ - dir = 1 - }, -/turf/open/floor/engine, -/area/maintenance/aft) -"bCG" = ( -/obj/structure/window/reinforced{ - dir = 4 - }, -/obj/structure/window/reinforced{ - dir = 1 - }, -/turf/open/floor/engine, -/area/maintenance/aft) -"bCH" = ( -/obj/item/stack/medical/gauze, -/turf/open/floor/plasteel/darkwarning{ - dir = 4 - }, -/area/maintenance/aft) -"bCI" = ( -/obj/structure/light_construct{ - tag = "icon-tube-construct-stage1 (EAST)"; - icon_state = "tube-construct-stage1"; - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"bCJ" = ( -/obj/structure/grille, -/obj/structure/window/fulltile, -/turf/open/floor/plating, -/area/medical/virology) -"bCK" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass_virology{ - name = "Isolation B"; - req_access_txt = "39" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/freezer, -/area/medical/virology) -"bCL" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass_virology{ - name = "Isolation A"; - req_access_txt = "39" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/freezer, -/area/medical/virology) -"bCM" = ( -/obj/machinery/disposal/bin, -/obj/structure/disposalpipe/trunk, -/turf/open/floor/plasteel/white, -/area/medical/virology) -"bCN" = ( -/obj/machinery/atmospherics/pipe/manifold/cyan/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/obj/machinery/computer/pandemic, -/turf/open/floor/plasteel/white, -/area/medical/virology) -"bCO" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - layer = 2.4; - on = 1 - }, -/turf/open/floor/plasteel/white, -/area/medical/virology) -"bCP" = ( -/obj/machinery/smartfridge/chemistry/virology, -/turf/open/floor/plasteel/whitegreen/side{ - tag = "icon-whitegreen (EAST)"; - icon_state = "whitegreen"; - dir = 4 - }, -/area/medical/virology) -"bCQ" = ( -/obj/structure/bookcase/random/reference, -/turf/open/floor/plasteel/black, -/area/library) -"bCR" = ( -/obj/machinery/button/door{ - id = "patientB"; - name = "Privacy Shutters"; - pixel_y = 25 - }, -/obj/machinery/camera{ - c_tag = "Patient Room B"; - dir = 2 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/freezer, -/area/medical/medbay) -"bCS" = ( -/obj/machinery/door/airlock/medical{ - name = "Patient Room B"; - req_access_txt = "5" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/freezer, -/area/medical/medbay) -"bCT" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/effect/landmark/event_spawn, -/obj/item/device/radio/beacon, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"bCU" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 9; - pixel_y = 0 - }, -/turf/open/floor/plasteel/whiteblue/side{ - tag = "icon-whiteblue (EAST)"; - dir = 4 - }, -/area/medical/medbay) -"bCV" = ( -/obj/structure/bed/roller, -/obj/machinery/iv_drip{ - density = 0 - }, -/turf/open/floor/plasteel/freezer, -/area/medical/surgery) -"bCW" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/freezer, -/area/medical/surgery) -"bCX" = ( -/obj/structure/bed, -/turf/open/floor/plasteel/freezer, -/area/medical/surgery) -"bCY" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/turf/open/floor/plasteel/whiteblue/side{ - dir = 8 - }, -/area/medical/surgery) -"bCZ" = ( -/obj/structure/table/optable, -/obj/effect/landmark{ - name = "revenantspawn" - }, -/turf/open/floor/plasteel/white, -/area/medical/surgery) -"bDa" = ( -/obj/machinery/power/apc{ - dir = 4; - name = "Surgery APC"; - pixel_x = 26; - pixel_y = 0 - }, -/obj/structure/cable, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/whiteblue/side{ - tag = "icon-whiteblue (EAST)"; - dir = 4 - }, -/area/medical/surgery) -"bDb" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plating, -/area/maintenance/aft) -"bDc" = ( -/obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/yellow/corner{ - dir = 8 - }, -/area/hallway/primary/aft) -"bDd" = ( -/obj/machinery/door/firedoor, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plasteel, -/area/hallway/primary/aft) -"bDe" = ( -/obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/yellow/corner, -/area/hallway/primary/aft) -"bDf" = ( -/turf/closed/wall, -/area/maintenance/maintcentral{ - name = "Atmospherics Maintenance" - }) -"bDg" = ( -/obj/machinery/door/firedoor/heavy, -/obj/machinery/door/airlock/atmos{ - name = "Atmospherics Maintenance"; - req_access_txt = "12;24" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/atmos) -"bDh" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible, -/turf/closed/wall/r_wall, -/area/atmos) -"bDi" = ( -/obj/machinery/atmospherics/pipe/simple/supply/visible, -/turf/closed/wall/r_wall, -/area/atmos) -"bDj" = ( -/obj/machinery/atmospherics/pipe/simple/yellow/visible{ - dir = 6 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bDk" = ( -/obj/structure/bookcase/random/nonfiction, -/turf/open/floor/plasteel/black, -/area/library) -"bDl" = ( -/obj/machinery/atmospherics/pipe/simple/yellow/visible{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bDm" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/yellow/visible{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bDn" = ( -/obj/structure/bookcase/random/fiction, -/turf/open/floor/plasteel/black, -/area/library) -"bDo" = ( -/obj/machinery/atmospherics/components/binary/pump{ - dir = 8; - name = "Mix Outlet Pump"; - on = 0 - }, -/turf/open/floor/plasteel/yellow/side{ - tag = "icon-yellow (EAST)"; - dir = 4 - }, -/area/atmos) -"bDp" = ( -/obj/structure/grille, -/obj/machinery/atmospherics/pipe/simple/cyan/visible, -/obj/machinery/atmospherics/pipe/simple/yellow/visible{ - dir = 4 - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/atmos) -"bDq" = ( -/obj/structure/lattice, -/obj/machinery/atmospherics/pipe/simple/yellow/visible{ - dir = 4 - }, -/turf/open/space, -/area/space) -"bDr" = ( -/obj/machinery/atmospherics/pipe/simple{ - dir = 4 - }, -/obj/structure/grille, -/obj/machinery/meter, -/turf/closed/wall/r_wall, -/area/atmos) -"bDs" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - external_pressure_bound = 0; - frequency = 1441; - id_tag = "mix_in"; - initialize_directions = 1; - internal_pressure_bound = 4000; - on = 1; - pressure_checks = 2; - pump_direction = 0 - }, -/turf/open/floor/engine/vacuum, -/area/atmos) -"bDt" = ( -/obj/machinery/camera{ - c_tag = "Atmospherics Waste Tank" - }, -/turf/open/floor/engine/vacuum, -/area/atmos) -"bDu" = ( -/turf/open/floor/engine/vacuum, -/area/atmos) -"bDv" = ( -/obj/machinery/door/airlock/glass{ - autoclose = 0; - frequency = 1449; - heat_proof = 1; - icon_state = "door_locked"; - id_tag = "incinerator_airlock_exterior"; - locked = 1; - name = "Turbine Exterior Airlock"; - req_access_txt = "0"; - req_one_access_txt = "8;24" - }, -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/engine, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"bDw" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible, -/obj/machinery/door/airlock/external{ - cyclelinkeddir = 2; - req_access_txt = "8"; - req_one_access_txt = "0" - }, -/turf/open/floor/plating, -/area/toxins/mineral_storeroom) -"bDx" = ( -/obj/structure/window/reinforced{ - dir = 8; - layer = 2.9 - }, -/obj/structure/window/reinforced{ - dir = 4; - pixel_x = 0 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/plating/warnplate/side, -/area/toxins/mineral_storeroom) -"bDy" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 9; - pixel_y = 0 - }, -/turf/closed/wall, -/area/toxins/mineral_storeroom) -"bDz" = ( -/obj/structure/closet/crate{ - icon_state = "crateopen"; - opened = 1 - }, -/obj/item/weapon/storage/bag/ore, -/obj/item/weapon/storage/bag/ore, -/turf/open/floor/plasteel, -/area/toxins/mineral_storeroom) -"bDA" = ( -/turf/open/floor/plasteel/loadingarea{ - dir = 8 - }, -/area/toxins/mineral_storeroom) -"bDB" = ( -/obj/machinery/conveyor{ - dir = 8; - id = "toxmineral" - }, -/obj/structure/plasticflaps, -/turf/open/floor/plating/warnplate{ - dir = 9 - }, -/area/toxins/mineral_storeroom) -"bDC" = ( -/obj/machinery/conveyor{ - dir = 10; - icon_state = "conveyor0"; - id = "toxmineral" - }, -/obj/machinery/light/small, -/turf/open/floor/plating/warnplate/corner{ - tag = "icon-warnplatecorner (EAST)"; - dir = 4 - }, -/area/toxins/mineral_storeroom) -"bDD" = ( -/obj/structure/window/reinforced{ - dir = 8 - }, -/turf/open/floor/engine, -/area/maintenance/aft) -"bDE" = ( -/obj/effect/landmark{ - name = "revenantspawn" - }, -/turf/open/floor/engine, -/area/maintenance/aft) -"bDF" = ( -/turf/open/floor/engine, -/area/maintenance/aft) -"bDG" = ( -/obj/structure/window/reinforced{ - dir = 4 - }, -/turf/open/floor/engine, -/area/maintenance/aft) -"bDH" = ( -/obj/structure/mineral_door/wood{ - name = "The Roosterdome" - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"bDI" = ( -/obj/structure/barricade/wooden, -/obj/structure/girder, -/turf/open/floor/plating, -/area/maintenance/aft) -"bDJ" = ( -/obj/item/weapon/bedsheet/medical, -/obj/structure/bed, -/obj/effect/decal/cleanable/cobweb, -/obj/effect/landmark{ - name = "revenantspawn" - }, -/turf/open/floor/plasteel/freezer, -/area/medical/virology) -"bDK" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/freezer, -/area/medical/virology) -"bDL" = ( -/obj/structure/bed, -/obj/item/weapon/bedsheet/medical, -/obj/effect/landmark{ - name = "revenantspawn" - }, -/turf/open/floor/plasteel/freezer, -/area/medical/virology) -"bDM" = ( -/obj/structure/table, -/obj/item/weapon/reagent_containers/dropper, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/white, -/area/medical/virology) -"bDN" = ( -/obj/effect/landmark/start{ - name = "Virologist" - }, -/obj/structure/chair/office/light{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/cyan/hidden, -/turf/open/floor/plasteel/white, -/area/medical/virology) -"bDO" = ( -/obj/structure/table/glass, -/obj/item/clothing/gloves/color/latex, -/obj/machinery/requests_console{ - department = "Virology"; - name = "Virology Requests Console"; - pixel_x = 32 - }, -/obj/item/weapon/storage/box/monkeycubes{ - layer = 3.1 - }, -/obj/item/stack/sheet/mineral/plasma{ - amount = 1; - layer = 3 - }, -/turf/open/floor/plasteel/whitegreen/side{ - tag = "icon-whitegreen (EAST)"; - icon_state = "whitegreen"; - dir = 4 - }, -/area/medical/virology) -"bDP" = ( -/obj/structure/chair/office/light{ - dir = 8 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/freezer, -/area/medical/medbay) -"bDQ" = ( -/obj/structure/shuttle/engine/propulsion/burst, -/turf/closed/wall/mineral/titanium, -/area/shuttle/abandoned) -"bDR" = ( -/obj/structure/grille, -/obj/structure/window/fulltile, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "patientB"; - name = "privacy shutters" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/medical/medbay) -"bDS" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/open/floor/plasteel/whiteblue/side{ - dir = 8 - }, -/area/medical/medbay) -"bDT" = ( -/obj/structure/window/reinforced{ - dir = 1; - layer = 2.9 - }, -/turf/open/space, -/area/space) -"bDU" = ( -/obj/machinery/light{ - dir = 4 - }, -/turf/open/floor/plasteel/whiteblue/side{ - tag = "icon-whiteblue (EAST)"; - dir = 4 - }, -/area/medical/medbay) -"bDV" = ( -/obj/machinery/light, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/turf/open/floor/plasteel/freezer, -/area/medical/surgery) -"bDW" = ( -/obj/structure/table, -/obj/item/clothing/gloves/color/latex, -/obj/item/clothing/mask/surgical, -/obj/item/clothing/suit/apron/surgical, -/turf/open/floor/plasteel/whiteblue/side{ - dir = 8 - }, -/area/medical/surgery) -"bDX" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 5 - }, -/turf/open/floor/plasteel/white, -/area/medical/surgery) -"bDY" = ( -/obj/effect/landmark/start{ - name = "Medical Doctor" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/medical/surgery) -"bDZ" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 9; - pixel_y = 0 - }, -/turf/open/floor/plasteel/white, -/area/medical/surgery) -"bEa" = ( -/obj/structure/table, -/obj/item/weapon/surgical_drapes, -/turf/open/floor/plasteel/whiteblue/side{ - tag = "icon-whiteblue (EAST)"; - dir = 4 - }, -/area/medical/surgery) -"bEb" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/yellow/corner, -/area/hallway/primary/aft) -"bEc" = ( -/turf/closed/wall, -/area/hallway/primary/aft) -"bEd" = ( -/obj/machinery/vending/cigarette, -/turf/open/floor/plasteel/yellow/corner{ - dir = 1 - }, -/area/hallway/primary/aft) -"bEe" = ( -/obj/machinery/vending/cola, -/turf/open/floor/plasteel/yellow/corner{ - dir = 1 - }, -/area/hallway/primary/aft) -"bEf" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "applebush"; - layer = 4.1 - }, -/obj/machinery/airalarm{ - pixel_y = 22 - }, -/turf/open/floor/plasteel/yellow/corner{ - dir = 1 - }, -/area/hallway/primary/aft) -"bEg" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible{ - dir = 4 - }, -/obj/machinery/portable_atmospherics/scrubber, -/turf/open/floor/plasteel/escape{ - dir = 9 - }, -/area/hallway/primary/aft) -"bEh" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - icon_state = "intact"; - dir = 10 - }, -/turf/closed/wall/r_wall, -/area/atmos) -"bEi" = ( -/turf/open/floor/plasteel/yellow/side{ - dir = 1 - }, -/area/atmos) -"bEj" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 8 - }, -/turf/open/floor/plasteel/yellow/side{ - dir = 1 - }, -/area/atmos) -"bEk" = ( -/obj/machinery/light{ - dir = 1 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - layer = 2.4; - on = 1 - }, -/turf/open/floor/plasteel/yellow/side{ - dir = 1 - }, -/area/atmos) -"bEl" = ( -/obj/machinery/computer/atmos_control, -/turf/open/floor/plasteel/yellow/side{ - dir = 1 - }, -/area/atmos) -"bEm" = ( -/obj/machinery/computer/atmos_alert, -/turf/open/floor/plasteel/yellow/side{ - dir = 1 - }, -/area/atmos) -"bEn" = ( -/obj/machinery/meter{ - frequency = 1441; - id_tag = "waste_meter"; - name = "Waste Loop" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/visible{ - dir = 8 - }, -/turf/open/floor/plasteel/yellow/side{ - dir = 1 - }, -/area/atmos) -"bEo" = ( -/obj/machinery/atmospherics/components/binary/pump{ - dir = 8; - name = "Distro to Waste"; - on = 0 - }, -/obj/machinery/light{ - dir = 1 - }, -/turf/open/floor/plasteel/yellow/side{ - dir = 1 - }, -/area/atmos) -"bEp" = ( -/obj/machinery/meter{ - frequency = 1441; - id_tag = "distro_meter"; - name = "Distribution Loop" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/visible, -/turf/open/floor/plasteel/yellow/side{ - dir = 1 - }, -/area/atmos) -"bEq" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/visible{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plasteel/yellow/side{ - dir = 1 - }, -/area/atmos) -"bEr" = ( -/obj/machinery/atmospherics/components/binary/pump{ - dir = 8; - name = "Mix to Distro"; - on = 0 - }, -/turf/open/floor/plasteel/yellow/side{ - dir = 1 - }, -/area/atmos) -"bEs" = ( -/obj/machinery/atmospherics/pipe/manifold/yellow/visible{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bEt" = ( -/obj/structure/window/reinforced{ - dir = 1; - layer = 2.9 - }, -/obj/structure/window/reinforced{ - dir = 4 - }, -/turf/open/space, -/area/space) -"bEu" = ( -/obj/machinery/door/poddoor{ - id = "chapelgun"; - name = "mass driver door" - }, -/turf/open/floor/plating, -/area/chapel/main{ - name = "Monastery" - }) -"bEv" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plasteel, -/area/atmos) -"bEw" = ( -/obj/machinery/atmospherics/pipe/simple/green/visible{ - dir = 6 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bEx" = ( -/obj/structure/window/reinforced{ - dir = 1; - layer = 2.9 - }, -/obj/structure/window/reinforced{ - dir = 8 - }, -/turf/open/space, -/area/space) -"bEy" = ( -/obj/machinery/computer/atmos_control/tank{ - frequency = 1441; - input_tag = "mix_in"; - name = "Gas Mix Tank Control"; - output_tag = "mix_in"; - sensors = list("mix_sensor" = "Tank") - }, -/turf/open/floor/plasteel/yellow/side{ - tag = "icon-yellow (EAST)"; - dir = 4 - }, -/area/atmos) -"bEz" = ( -/obj/structure/grille, -/obj/machinery/atmospherics/pipe/simple/cyan/visible, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/atmos) -"bEA" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating/airless, -/area/atmos) -"bEB" = ( -/obj/machinery/air_sensor{ - frequency = 1441; - id_tag = "mix_sensor" - }, -/turf/open/floor/engine/vacuum, -/area/atmos) -"bEC" = ( -/obj/machinery/light/small{ - dir = 4 - }, -/turf/open/floor/engine/vacuum, -/area/atmos) -"bED" = ( -/obj/machinery/door/poddoor{ - id = "mixvent"; - name = "Starboard Vent" - }, -/turf/open/floor/engine/vacuum, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"bEE" = ( -/obj/machinery/atmospherics/components/unary/outlet_injector/on{ - dir = 1; - frequency = 1441; - id = "inc_in" - }, -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; - icon_state = "space"; - layer = 4; - name = "EXTERNAL AIRLOCK"; - pixel_x = 0; - pixel_y = -32 - }, -/turf/open/floor/engine/vacuum, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"bEF" = ( -/obj/machinery/igniter{ - icon_state = "igniter0"; - id = "Incinerator"; - luminosity = 2; - on = 0 - }, -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/engine/vacuum, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"bEG" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - external_pressure_bound = 0; - initialize_directions = 1; - internal_pressure_bound = 4000; - on = 1; - pressure_checks = 2; - pump_direction = 0 - }, -/turf/open/floor/engine/vacuum, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"bEH" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible, -/obj/machinery/light/small{ - dir = 8 - }, -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; - icon_state = "space"; - layer = 4; - name = "EXTERNAL AIRLOCK"; - pixel_x = -32; - pixel_y = 0 - }, -/turf/open/floor/plating, -/area/toxins/mineral_storeroom) -"bEI" = ( -/obj/structure/closet/emcloset{ - anchored = 1; - desc = "It's a storage unit for emergency breath masks and O2 tanks, and is securely bolted in place."; - name = "anchored emergency closet" - }, -/turf/open/floor/plating/warnplate{ - dir = 8 - }, -/area/toxins/mineral_storeroom) -"bEJ" = ( -/obj/machinery/door/poddoor{ - id = "toxinsdriver"; - name = "toxins launcher bay door" - }, -/turf/open/floor/plating/warnplate/side, -/area/toxins/mineral_storeroom) -"bEK" = ( -/obj/effect/landmark/event_spawn, -/turf/open/floor/engine, -/area/maintenance/aft) -"bEL" = ( -/obj/item/stack/spacecash/c10, -/turf/open/floor/plasteel/darkwarning{ - dir = 4 - }, -/area/maintenance/aft) -"bEM" = ( -/obj/machinery/atmospherics/components/unary/vent_pump, -/turf/open/floor/plasteel/freezer, -/area/medical/virology) -"bEN" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/freezer, -/area/medical/virology) -"bEO" = ( -/obj/structure/table, -/obj/structure/disposalpipe/segment, -/obj/structure/table, -/obj/item/clothing/gloves/color/latex, -/obj/item/clothing/glasses/hud/health, -/turf/open/floor/plasteel/white, -/area/medical/virology) -"bEP" = ( -/turf/open/floor/plasteel/whitegreen/corner, -/area/medical/virology) -"bEQ" = ( -/obj/structure/table/glass, -/obj/item/weapon/storage/box/beakers{ - pixel_x = 4; - pixel_y = 4 - }, -/obj/item/weapon/storage/box/syringes, -/obj/structure/reagent_dispensers/virusfood{ - density = 0; - pixel_x = 32; - pixel_y = 0 - }, -/obj/item/weapon/reagent_containers/spray/cleaner, -/turf/open/floor/plasteel/whitegreen/side{ - tag = "icon-whitegreen (SOUTHEAST)"; - icon_state = "whitegreen"; - dir = 6 - }, -/area/medical/virology) -"bER" = ( -/obj/machinery/vending/cigarette, -/turf/open/floor/plasteel/whiteblue/side{ - dir = 10 - }, -/area/medical/medbay) -"bES" = ( -/obj/machinery/light, -/obj/item/weapon/soap/nanotrasen, -/obj/item/clothing/neck/stethoscope, -/obj/item/weapon/gun/syringe, -/obj/structure/table/glass, -/turf/open/floor/plasteel/whiteblue/side, -/area/medical/medbay) -"bET" = ( -/obj/structure/closet/l3closet, -/turf/open/floor/plasteel/whiteblue/side{ - dir = 6 - }, -/area/medical/medbay) -"bEU" = ( -/obj/structure/table, -/obj/item/weapon/hemostat, -/obj/item/stack/medical/gauze, -/turf/open/floor/plasteel/whiteblue, -/area/medical/surgery) -"bEV" = ( -/obj/structure/table, -/obj/item/weapon/surgicaldrill, -/turf/open/floor/plasteel/whiteblue, -/area/medical/surgery) -"bEW" = ( -/obj/structure/table, -/obj/item/weapon/scalpel{ - pixel_y = 12 - }, -/obj/item/weapon/circular_saw, -/obj/machinery/light, -/turf/open/floor/plasteel/whiteblue, -/area/medical/surgery) -"bEX" = ( -/obj/structure/table, -/obj/item/weapon/cautery{ - pixel_x = 4 - }, -/obj/item/weapon/razor{ - pixel_y = 5 - }, -/turf/open/floor/plasteel/whiteblue, -/area/medical/surgery) -"bEY" = ( -/obj/structure/table, -/obj/item/weapon/retractor, -/turf/open/floor/plasteel/whiteblue, -/area/medical/surgery) -"bEZ" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/aft) -"bFa" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/hallway/primary/aft) -"bFb" = ( -/obj/machinery/camera{ - c_tag = "Aft Primary Hallway Atmospherics"; - dir = 2; - network = list("SS13"); - pixel_x = 0; - pixel_y = 0; - start_active = 1 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/item/device/radio/intercom{ - dir = 8; - freerange = 1; - name = "Station Intercom (Telecoms)"; - pixel_x = 0; - pixel_y = 26 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/aft) -"bFc" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 10 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/aft) -"bFd" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible{ - dir = 4 - }, -/obj/machinery/portable_atmospherics/scrubber, -/turf/open/floor/plasteel/escape{ - dir = 10 - }, -/area/hallway/primary/aft) -"bFe" = ( -/obj/machinery/meter, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/visible, -/turf/closed/wall/r_wall, -/area/atmos) -"bFf" = ( -/obj/machinery/atmospherics/components/binary/pump{ - dir = 4; - name = "External to Filter"; - on = 1 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bFg" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4"; - tag = "90Curve" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bFh" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bFi" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/visible{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/floor/plasteel, -/area/atmos) -"bFj" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/floor/plasteel, -/area/atmos) -"bFk" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/components/binary/pump{ - dir = 1; - name = "Air to Distro"; - on = 1 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bFl" = ( -/obj/machinery/atmospherics/pipe/simple/yellow/visible, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/floor/plasteel, -/area/atmos) -"bFm" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 6 - }, -/turf/closed/wall, -/area/maintenance/port{ - name = "Monastery Maintenance" - }) -"bFn" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/maintenance/port{ - name = "Monastery Maintenance" - }) -"bFo" = ( -/obj/structure/cable{ - icon_state = "1-8" - }, -/turf/open/floor/plasteel, -/area/atmos) -"bFp" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 9 - }, -/turf/closed/wall, -/area/maintenance/port{ - name = "Monastery Maintenance" - }) -"bFq" = ( -/obj/machinery/atmospherics/pipe/manifold/green/visible{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bFr" = ( -/obj/machinery/atmospherics/pipe/simple/green/visible{ - dir = 4 - }, -/turf/open/floor/plasteel/yellow/side{ - tag = "icon-yellow (EAST)"; - dir = 4 - }, -/area/atmos) -"bFs" = ( -/obj/structure/grille, -/obj/machinery/atmospherics/pipe/simple/cyan/visible, -/obj/machinery/atmospherics/pipe/simple/green/visible{ - dir = 4 - }, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/green/visible{ - dir = 4 - }, -/turf/open/floor/plating, -/area/atmos) -"bFt" = ( -/obj/structure/lattice, -/obj/machinery/atmospherics/pipe/simple/green/visible{ - dir = 4 - }, -/turf/open/space, -/area/space) -"bFu" = ( -/obj/machinery/atmospherics/components/unary/outlet_injector/on{ - dir = 8; - frequency = 1441; - id = "mix_in"; - pixel_y = 1 - }, -/turf/open/floor/engine/vacuum, -/area/atmos) -"bFv" = ( -/obj/structure/cable/yellow, -/obj/structure/cable/yellow{ - d2 = 2; - icon_state = "0-2" - }, -/obj/machinery/camera{ - c_tag = "Turbine Chamber"; - dir = 4; - network = list("Turbine") - }, -/obj/machinery/power/compressor{ - comp_id = "incineratorturbine"; - dir = 1; - luminosity = 2 - }, -/turf/open/floor/engine/vacuum, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"bFw" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible, -/turf/open/floor/plating, -/area/toxins/mineral_storeroom) -"bFx" = ( -/obj/item/stack/medical/bruise_pack, -/turf/open/floor/plating, -/area/maintenance/aft) -"bFy" = ( -/obj/structure/window/reinforced, -/obj/structure/window/reinforced{ - dir = 8 - }, -/turf/open/floor/engine, -/area/maintenance/aft) -"bFz" = ( -/obj/structure/window/reinforced, -/turf/open/floor/engine, -/area/maintenance/aft) -"bFA" = ( -/obj/structure/window/reinforced, -/mob/living/simple_animal/chicken{ - name = "Killer Cluck" - }, -/turf/open/floor/engine, -/area/maintenance/aft) -"bFB" = ( -/obj/machinery/door/window/eastright{ - base_state = "left"; - icon_state = "left"; - name = "Arena" - }, -/obj/structure/window/reinforced, -/obj/structure/chair/stool, -/turf/open/floor/engine, -/area/maintenance/aft) -"bFC" = ( -/obj/structure/grille/broken, -/turf/open/floor/plating, -/area/maintenance/aft) -"bFD" = ( -/obj/structure/table/glass, -/obj/item/weapon/reagent_containers/dropper, -/obj/item/weapon/reagent_containers/syringe, -/obj/item/weapon/reagent_containers/glass/beaker, -/obj/machinery/light/small, -/obj/machinery/atmospherics/pipe/simple/cyan/hidden, -/turf/open/floor/plasteel/freezer, -/area/medical/virology) -"bFE" = ( -/obj/structure/table/glass, -/obj/item/weapon/folder/white{ - pixel_y = 4 - }, -/obj/item/weapon/pen/red, -/turf/open/floor/plasteel/freezer, -/area/medical/virology) -"bFF" = ( -/obj/structure/table/glass, -/obj/item/weapon/folder/white{ - pixel_y = 4 - }, -/obj/item/weapon/pen/red, -/obj/machinery/light/small, -/turf/open/floor/plasteel/freezer, -/area/medical/virology) -"bFG" = ( -/obj/structure/table/glass, -/obj/item/weapon/reagent_containers/dropper, -/obj/item/weapon/reagent_containers/syringe, -/obj/item/weapon/reagent_containers/glass/beaker, -/obj/machinery/atmospherics/pipe/simple/cyan/hidden, -/turf/open/floor/plasteel/freezer, -/area/medical/virology) -"bFH" = ( -/obj/structure/table, -/obj/structure/disposalpipe/segment, -/obj/machinery/reagentgrinder, -/turf/open/floor/plasteel/whitegreen/side, -/area/medical/virology) -"bFI" = ( -/obj/machinery/light, -/obj/machinery/atmospherics/pipe/simple/cyan/hidden, -/obj/structure/table, -/obj/item/weapon/paper_bin{ - layer = 2.9; - pixel_x = 0; - pixel_y = 0; - tag = "every single paper bin is edited to this" - }, -/obj/item/weapon/pen/red, -/turf/open/floor/plasteel/whitegreen/side, -/area/medical/virology) -"bFJ" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21" - }, -/turf/open/floor/plasteel/whitegreen/side{ - tag = "icon-whitegreen (SOUTHEAST)"; - icon_state = "whitegreen"; - dir = 6 - }, -/area/medical/virology) -"bFK" = ( -/obj/structure/closet/emcloset, -/turf/open/floor/plating, -/area/maintenance/aft) -"bFL" = ( -/obj/structure/closet/firecloset, -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"bFM" = ( -/obj/structure/chair, -/turf/open/floor/plating, -/area/maintenance/aft) -"bFN" = ( -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/plating{ - icon_state = "platingdmg3" - }, -/area/maintenance/aft) -"bFO" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4"; - tag = "" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 6 - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"bFP" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/door/airlock/maintenance{ - req_access_txt = "12" - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"bFQ" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/yellow/corner{ - dir = 8 - }, -/area/hallway/primary/aft) -"bFR" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8"; - tag = "" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/aft) -"bFS" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/aft) -"bFT" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/aft) -"bFU" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible{ - dir = 4 - }, -/obj/machinery/portable_atmospherics/pump, -/turf/open/floor/plasteel/arrival{ - tag = "icon-arrival (NORTHWEST)"; - icon_state = "arrival"; - dir = 9 - }, -/area/hallway/primary/aft) -"bFV" = ( -/obj/machinery/atmospherics/pipe/manifold/cyan/visible{ - dir = 1 - }, -/obj/machinery/meter, -/turf/closed/wall/r_wall, -/area/atmos) -"bFW" = ( -/obj/machinery/atmospherics/components/binary/pump{ - dir = 8; - name = "Air to External"; - on = 1 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bFX" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/visible{ - dir = 4 - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/atmos) -"bFY" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/visible{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bFZ" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/visible{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible, -/turf/open/floor/plasteel, -/area/atmos) -"bGa" = ( -/obj/machinery/atmospherics/pipe/manifold/cyan/visible{ - initialize_directions = 11 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bGb" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/visible{ - dir = 4 - }, -/obj/machinery/atmospherics/components/binary/pump{ - dir = 0; - name = "Mix to Port"; - on = 0 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bGc" = ( -/obj/structure/chair/wood/normal{ - icon_state = "wooden_chair"; - dir = 1 - }, -/turf/open/floor/plasteel/black, -/area/library) -"bGd" = ( -/obj/machinery/atmospherics/pipe/manifold/general/visible{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bGe" = ( -/obj/machinery/atmospherics/components/binary/pump{ - dir = 8; - name = "Pure to Port" - }, -/turf/open/floor/plasteel, -/area/atmos) -"bGf" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/visible{ - dir = 4 - }, -/obj/machinery/atmospherics/components/binary/pump{ - dir = 1; - name = "Unfiltered to Mix"; - on = 1 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bGg" = ( -/turf/open/floor/plasteel/yellow/side{ - tag = "icon-yellow (EAST)"; - dir = 4 - }, -/area/atmos) -"bGh" = ( -/obj/structure/cable/yellow, -/obj/machinery/power/turbine{ - luminosity = 2 - }, -/turf/open/floor/engine/vacuum, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"bGi" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible, -/obj/machinery/door/airlock/external{ - cyclelinkeddir = 1; - req_access_txt = "8"; - req_one_access_txt = "0" - }, -/turf/open/floor/plating, -/area/toxins/mineral_storeroom) -"bGj" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 5 - }, -/turf/open/floor/carpet, -/area/library) -"bGk" = ( -/obj/structure/chair/comfy/black{ - dir = 1 - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"bGl" = ( -/obj/structure/chair/stool, -/turf/open/floor/plating, -/area/maintenance/aft) -"bGm" = ( -/obj/structure/grille, -/turf/open/floor/plating, -/area/maintenance/aft) -"bGn" = ( -/obj/structure/disposalpipe/segment, -/turf/closed/wall/r_wall, -/area/medical/virology) -"bGo" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"bGp" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"bGq" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/effect/landmark{ - name = "blobstart" - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"bGr" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 6 - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"bGs" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 9 - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"bGt" = ( -/obj/structure/chair/stool, -/turf/open/floor/plasteel, -/area/hallway/primary/aft) -"bGu" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible{ - dir = 4 - }, -/turf/open/floor/plasteel/arrival{ - dir = 10 - }, -/area/hallway/primary/aft) -"bGv" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/visible{ - dir = 9 - }, -/turf/closed/wall/r_wall, -/area/atmos) -"bGw" = ( -/turf/open/floor/plasteel/yellow/side, -/area/atmos) -"bGx" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 8 - }, -/turf/open/floor/plasteel/yellow/side, -/area/atmos) -"bGy" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/yellow/side, -/area/atmos) -"bGz" = ( -/obj/machinery/space_heater, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/camera{ - c_tag = "Atmospherics Monitoring"; - dir = 1; - network = list("SS13") - }, -/turf/open/floor/plasteel/yellow/side, -/area/atmos) -"bGA" = ( -/obj/machinery/space_heater, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/yellow/side, -/area/atmos) -"bGB" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bGC" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 10 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bGD" = ( -/obj/structure/table, -/obj/item/clothing/head/welding{ - pixel_x = -3; - pixel_y = 7 - }, -/obj/item/clothing/head/welding{ - pixel_x = -5; - pixel_y = 3 - }, -/obj/machinery/light{ - dir = 8 - }, -/obj/item/device/multitool{ - layer = 4 - }, -/turf/open/floor/plasteel/yellow/side, -/area/atmos) -"bGE" = ( -/obj/structure/table, -/obj/item/stack/sheet/glass{ - amount = 50 - }, -/obj/item/weapon/storage/belt/utility, -/obj/item/device/t_scanner, -/obj/item/device/t_scanner, -/obj/item/device/t_scanner, -/turf/open/floor/plasteel/yellow/side, -/area/atmos) -"bGF" = ( -/obj/structure/table, -/obj/item/stack/sheet/metal{ - amount = 50 - }, -/obj/item/stack/sheet/metal{ - amount = 50; - pixel_x = 2; - pixel_y = 2 - }, -/obj/item/stack/sheet/glass{ - layer = 3.1 - }, -/obj/item/stack/rods{ - amount = 50; - layer = 3.2 - }, -/turf/open/floor/plasteel/yellow/side, -/area/atmos) -"bGG" = ( -/obj/machinery/meter, -/obj/machinery/atmospherics/pipe/simple/general/visible{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bGH" = ( -/obj/machinery/atmospherics/pipe/manifold/general/visible{ - dir = 4; - initialize_directions = 11 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bGI" = ( -/turf/open/floor/plasteel, -/area/atmos) -"bGJ" = ( -/obj/machinery/atmospherics/pipe/manifold/yellow/visible{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bGK" = ( -/obj/machinery/atmospherics/pipe/simple/green/visible, -/obj/machinery/atmospherics/pipe/simple/yellow/visible{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bGL" = ( -/obj/machinery/atmospherics/components/binary/pump{ - dir = 8; - name = "N2O Outlet Pump"; - on = 0 - }, -/turf/open/floor/plasteel/yellow/side{ - tag = "icon-yellow (EAST)"; - dir = 4 - }, -/area/atmos) -"bGM" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - external_pressure_bound = 0; - frequency = 1441; - id_tag = "n2o_out"; - initialize_directions = 1; - internal_pressure_bound = 4000; - on = 1; - pressure_checks = 2; - pump_direction = 0 - }, -/turf/open/floor/engine/n2o, -/area/atmos) -"bGN" = ( -/turf/open/floor/engine/n2o, -/area/atmos) -"bGO" = ( -/obj/structure/sign/fire{ - pixel_x = 0; - pixel_y = 0 - }, -/turf/closed/wall/r_wall, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"bGP" = ( -/obj/machinery/door/poddoor{ - id = "turbinevent"; - name = "Aft Vent" - }, -/turf/open/floor/engine/vacuum, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"bGQ" = ( -/obj/structure/lattice/catwalk, -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible, -/turf/open/space, -/area/space) -"bGR" = ( -/obj/structure/sign/poster{ - pixel_x = 0; - pixel_y = -32 - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"bGS" = ( -/obj/item/trash/chips, -/obj/effect/decal/cleanable/deadcockroach, -/turf/open/floor/plating, -/area/maintenance/aft) -"bGT" = ( -/obj/structure/table, -/obj/item/weapon/paper, -/obj/item/weapon/pen, -/turf/open/floor/plating, -/area/maintenance/aft) -"bGU" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/simple/cyan/hidden{ - tag = "icon-intact (NORTHEAST)"; - icon_state = "intact"; - dir = 5 - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"bGV" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/cyan/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"bGW" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/manifold/cyan/hidden, -/turf/open/floor/plating, -/area/maintenance/aft) -"bGX" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/manifold/cyan/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"bGY" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/cyan/hidden{ - tag = "icon-intact (EAST)"; - icon_state = "intact"; - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"bGZ" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/manifold/cyan/hidden, -/mob/living/simple_animal/mouse/gray, -/turf/open/floor/plating, -/area/maintenance/aft) -"bHa" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/simple/cyan/hidden{ - tag = "icon-intact (EAST)"; - icon_state = "intact"; - dir = 4 - }, -/turf/open/floor/plating{ - icon_state = "platingdmg3" - }, -/area/maintenance/aft) -"bHb" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/cyan/hidden{ - tag = "icon-intact (NORTHWEST)"; - icon_state = "intact"; - dir = 9 - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"bHc" = ( -/turf/closed/wall/r_wall, -/area/engine/gravity_generator) -"bHd" = ( -/obj/structure/table, -/obj/item/trash/chips, -/turf/open/floor/plating, -/area/maintenance/aft) -"bHe" = ( -/turf/closed/wall, -/area/storage/tech) -"bHf" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall, -/area/storage/tech) -"bHg" = ( -/obj/machinery/light{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/firealarm{ - dir = 8; - pixel_x = -24 - }, -/turf/open/floor/plasteel/yellow/corner{ - dir = 8 - }, -/area/hallway/primary/aft) -"bHh" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/effect/landmark/event_spawn, -/turf/open/floor/plasteel, -/area/hallway/primary/aft) -"bHi" = ( -/obj/structure/table, -/obj/item/weapon/reagent_containers/food/drinks/soda_cans/lemon_lime, -/turf/open/floor/plasteel, -/area/hallway/primary/aft) -"bHj" = ( -/obj/structure/table, -/obj/item/clothing/gloves/color/fyellow, -/obj/item/weapon/wrench, -/turf/open/floor/plasteel, -/area/hallway/primary/aft) -"bHk" = ( -/obj/structure/table, -/obj/item/weapon/storage/toolbox/mechanical, -/turf/open/floor/plasteel, -/area/hallway/primary/aft) -"bHl" = ( -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/turf/open/floor/plasteel/yellow/corner, -/area/hallway/primary/aft) -"bHm" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/atmos) -"bHn" = ( -/obj/machinery/door/firedoor/heavy, -/obj/machinery/door/airlock/glass_atmos{ - name = "Atmospherics Monitoring"; - req_access_txt = "24" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/atmos) -"bHo" = ( -/obj/machinery/atmospherics/components/binary/pump{ - dir = 0; - name = "Waste In"; - on = 1 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bHp" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/atmos) -"bHq" = ( -/obj/machinery/atmospherics/components/binary/pump{ - dir = 0; - name = "Air to Port"; - on = 0 - }, -/obj/machinery/light{ - dir = 8 - }, -/obj/structure/extinguisher_cabinet{ - pixel_x = -27; - pixel_y = 0 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bHr" = ( -/obj/machinery/atmospherics/components/binary/pump{ - dir = 0; - name = "Mix to Port"; - on = 0 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bHs" = ( -/obj/machinery/atmospherics/pipe/simple/yellow/visible, -/turf/open/floor/plasteel, -/area/atmos) -"bHt" = ( -/obj/machinery/atmospherics/pipe/simple/green/visible, -/turf/open/floor/plasteel, -/area/atmos) -"bHu" = ( -/obj/machinery/computer/atmos_control/tank{ - frequency = 1441; - input_tag = "n2o_in"; - name = "Nitrous Oxide Supply Control"; - output_tag = "n2o_out"; - sensors = list("n2o_sensor" = "Tank") - }, -/turf/open/floor/plasteel/yellow/side{ - tag = "icon-yellow (EAST)"; - dir = 4 - }, -/area/atmos) -"bHv" = ( -/obj/machinery/air_sensor{ - frequency = 1441; - id_tag = "n2o_sensor" - }, -/turf/open/floor/engine/n2o, -/area/atmos) -"bHw" = ( -/obj/machinery/portable_atmospherics/canister/nitrous_oxide, -/turf/open/floor/engine/n2o, -/area/atmos) -"bHx" = ( -/obj/machinery/light/small{ - dir = 4 - }, -/turf/open/floor/engine/n2o, -/area/atmos) -"bHy" = ( -/obj/structure/disposalpipe/segment, -/turf/open/floor/plating, -/area/maintenance/aft) -"bHz" = ( -/obj/structure/closet/emcloset, -/obj/effect/decal/cleanable/deadcockroach, -/turf/open/floor/plating, -/area/maintenance/aft) -"bHA" = ( -/obj/structure/closet/firecloset, -/turf/open/floor/plating, -/area/maintenance/aft) -"bHB" = ( -/obj/structure/rack, -/obj/item/weapon/book/manual/detective, -/obj/item/clothing/head/that, -/obj/machinery/atmospherics/pipe/simple/cyan/hidden, -/turf/open/floor/plating, -/area/maintenance/aft) -"bHC" = ( -/obj/structure/girder, -/turf/closed/wall, -/area/maintenance/aft) -"bHD" = ( -/obj/item/trash/raisins, -/turf/open/floor/plating, -/area/maintenance/aft) -"bHE" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"bHF" = ( -/obj/structure/cable{ - icon_state = "1-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"bHG" = ( -/turf/open/floor/plasteel/black, -/area/engine/gravity_generator) -"bHH" = ( -/obj/machinery/camera{ - c_tag = "Gravity Generator"; - dir = 2; - network = list("SS13") - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/darkwarning, -/area/engine/gravity_generator) -"bHI" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/darkwarning, -/area/engine/gravity_generator) -"bHJ" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 10 - }, -/turf/open/floor/plasteel/darkwarning/corner{ - tag = "icon-black_warn_corner (NORTH)"; - icon_state = "black_warn_corner"; - dir = 1 - }, -/area/engine/gravity_generator) -"bHK" = ( -/turf/closed/wall/r_wall, -/area/storage/tech) -"bHL" = ( -/obj/structure/table, -/obj/item/device/flashlight{ - pixel_x = 1; - pixel_y = 5 - }, -/obj/item/device/flashlight{ - pixel_x = 1; - pixel_y = 5 - }, -/obj/item/device/assembly/flash/handheld, -/obj/item/device/assembly/flash/handheld, -/obj/effect/decal/cleanable/cobweb, -/obj/structure/extinguisher_cabinet{ - pixel_x = -26 - }, -/turf/open/floor/plasteel/black, -/area/storage/tech) -"bHM" = ( -/obj/structure/table, -/obj/item/device/aicard, -/obj/item/weapon/aiModule/reset, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/airalarm{ - dir = 2; - pixel_y = 22 - }, -/turf/open/floor/plasteel/black, -/area/storage/tech) -"bHN" = ( -/obj/structure/table, -/obj/machinery/cell_charger{ - pixel_y = 5 - }, -/obj/item/weapon/stock_parts/cell/high/plus, -/turf/open/floor/plasteel/black, -/area/storage/tech) -"bHO" = ( -/obj/structure/rack{ - dir = 8; - layer = 2.9 - }, -/obj/item/weapon/circuitboard/computer/pandemic{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/weapon/circuitboard/computer/rdconsole, -/obj/item/weapon/circuitboard/machine/rdserver{ - pixel_x = 3; - pixel_y = -3 - }, -/obj/item/weapon/circuitboard/machine/destructive_analyzer, -/obj/item/weapon/circuitboard/machine/protolathe, -/obj/item/weapon/circuitboard/computer/aifixer, -/obj/item/weapon/circuitboard/computer/teleporter, -/obj/item/weapon/circuitboard/machine/circuit_imprinter, -/obj/item/weapon/circuitboard/machine/mechfab, -/obj/structure/sign/poster{ - pixel_y = 32 - }, -/turf/open/floor/plasteel/black, -/area/storage/tech) -"bHP" = ( -/obj/structure/rack{ - dir = 8; - layer = 2.9 - }, -/obj/item/weapon/circuitboard/computer/mining, -/obj/item/weapon/circuitboard/machine/autolathe{ - pixel_x = 3; - pixel_y = -3 - }, -/obj/item/weapon/circuitboard/computer/arcade/battle, -/obj/machinery/light{ - dir = 1 - }, -/obj/machinery/camera{ - c_tag = "Tech Storage"; - dir = 2; - network = list("SS13") - }, -/obj/item/weapon/circuitboard/computer/shuttle/monastery_shuttle, -/turf/open/floor/plasteel/black, -/area/storage/tech) -"bHQ" = ( -/obj/structure/rack, -/obj/item/weapon/circuitboard/machine/telecomms/processor, -/obj/item/weapon/circuitboard/machine/telecomms/receiver, -/obj/item/weapon/circuitboard/machine/telecomms/server, -/obj/item/weapon/circuitboard/machine/telecomms/bus, -/obj/item/weapon/circuitboard/machine/telecomms/broadcaster, -/obj/item/weapon/circuitboard/computer/message_monitor{ - pixel_y = -5 - }, -/turf/open/floor/plasteel/black, -/area/storage/tech) -"bHR" = ( -/obj/structure/rack, -/obj/item/weapon/electronics/airalarm, -/obj/item/weapon/electronics/airlock, -/obj/item/weapon/electronics/apc, -/obj/item/weapon/electronics/firealarm, -/obj/item/weapon/electronics/firelock, -/obj/item/weapon/electronics/tracker, -/obj/structure/sign/poster{ - pixel_y = 32 - }, -/turf/open/floor/plasteel/black, -/area/storage/tech) -"bHS" = ( -/obj/machinery/computer/arcade, -/turf/open/floor/plasteel/black, -/area/storage/tech) -"bHT" = ( -/obj/machinery/vending/assist, -/turf/open/floor/plasteel/black, -/area/storage/tech) -"bHU" = ( -/obj/machinery/power/apc{ - name = "Aft Hall APC"; - dir = 8; - pixel_x = -25; - pixel_y = 1 - }, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/yellow/corner{ - dir = 8 - }, -/area/hallway/primary/aft) -"bHV" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/machinery/navbeacon{ - codes_txt = "patrol;next_patrol=Bar2"; - location = "Eng" - }, -/turf/open/floor/plasteel, -/area/hallway/primary/aft) -"bHW" = ( -/turf/open/floor/plasteel/yellow/corner, -/area/hallway/primary/aft) -"bHX" = ( -/obj/structure/table/reinforced, -/obj/machinery/door/firedoor/heavy, -/obj/machinery/door/window/northleft{ - dir = 4; - icon_state = "left"; - name = "Atmospherics Desk"; - req_access_txt = "24" - }, -/obj/machinery/door/poddoor/preopen{ - id = "atmos"; - layer = 2.9; - name = "atmos blast door" - }, -/turf/open/floor/plasteel/delivery{ - name = "floor" - }, -/area/atmos) -"bHY" = ( -/obj/structure/chair/office/dark{ - dir = 8 - }, -/obj/effect/landmark/start{ - name = "Atmospheric Technician" - }, -/turf/open/floor/plasteel, -/area/atmos) -"bHZ" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bIa" = ( -/obj/structure/tank_dispenser, -/turf/open/floor/plasteel, -/area/atmos) -"bIb" = ( -/obj/machinery/pipedispenser, -/turf/open/floor/plasteel, -/area/atmos) -"bIc" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible, -/turf/open/floor/plasteel, -/area/atmos) -"bId" = ( -/obj/structure/closet/secure_closet/atmospherics, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/atmos) -"bIe" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible{ - dir = 4 - }, -/obj/machinery/portable_atmospherics/canister, -/turf/open/floor/plasteel/bot{ - dir = 2 - }, -/area/atmos) -"bIf" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible{ - dir = 8 - }, -/turf/open/floor/plasteel/bot{ - dir = 2 - }, -/area/atmos) -"bIg" = ( -/obj/machinery/atmospherics/components/trinary/filter{ - dir = 1; - filter_type = "n2o"; - on = 1 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bIh" = ( -/obj/machinery/atmospherics/components/unary/outlet_injector/on{ - dir = 8; - frequency = 1441; - id = "n2o_in"; - pixel_y = 1 - }, -/turf/open/floor/engine/n2o, -/area/atmos) -"bIi" = ( -/obj/machinery/atmospherics/components/unary/outlet_injector/on{ - dir = 4 - }, -/turf/open/floor/plating/airless, -/area/space/nearstation) -"bIj" = ( -/obj/structure/lattice, -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - dir = 9 - }, -/turf/open/space, -/area/space) -"bIk" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/black, -/area/library) -"bIl" = ( -/obj/structure/grille, -/obj/structure/window/fulltile, -/turf/open/floor/plating, -/area/maintenance/aft) -"bIm" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/hidden, -/turf/closed/wall, -/area/maintenance/aft) -"bIn" = ( -/turf/open/floor/plasteel/vault{ - dir = 1 - }, -/area/engine/gravity_generator) -"bIo" = ( -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/engine/gravity_generator) -"bIp" = ( -/turf/open/floor/plasteel/vault{ - dir = 4 - }, -/area/engine/gravity_generator) -"bIq" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 5 - }, -/turf/open/floor/plasteel/darkwarning{ - dir = 8 - }, -/area/engine/gravity_generator) -"bIr" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall/r_wall, -/area/engine/gravity_generator) -"bIs" = ( -/obj/structure/closet/radiation, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 1; - initialize_directions = 11 - }, -/obj/machinery/airalarm{ - dir = 2; - pixel_y = 22 - }, -/turf/open/floor/plasteel/warning{ - dir = 9 - }, -/area/engine/gravity_generator) -"bIt" = ( -/obj/structure/closet/radiation, -/obj/machinery/camera{ - c_tag = "Gravity Generator Foyer"; - dir = 2; - network = list("SS13") - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/item/device/radio/intercom{ - dir = 0; - name = "Station Intercom (General)"; - pixel_x = 0; - pixel_y = 26 - }, -/turf/open/floor/plasteel/warning{ - tag = "icon-warning (NORTHEAST)"; - dir = 5 - }, -/area/engine/gravity_generator) -"bIu" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall/r_wall, -/area/storage/tech) -"bIv" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'RADIOACTIVE AREA'"; - icon_state = "radiation"; - name = "RADIOACTIVE AREA"; - pixel_x = -32; - pixel_y = 0 - }, -/turf/open/floor/plasteel/darkwarning/corner{ - tag = "icon-black_warn_corner (NORTH)"; - icon_state = "black_warn_corner"; - dir = 1 - }, -/area/storage/tech) -"bIw" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/chair/office/dark{ - dir = 1 - }, -/turf/open/floor/plasteel/black, -/area/storage/tech) -"bIx" = ( -/turf/open/floor/plasteel/black, -/area/storage/tech) -"bIy" = ( -/obj/machinery/light_switch{ - pixel_x = 25 - }, -/turf/open/floor/plasteel/black, -/area/storage/tech) -"bIz" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 5 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/aft) -"bIA" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/aft) -"bIB" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 1; - initialize_directions = 11 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/aft) -"bIC" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 1; - initialize_directions = 11 - }, -/turf/open/floor/plasteel/yellow/corner, -/area/hallway/primary/aft) -"bID" = ( -/obj/structure/table/reinforced, -/obj/machinery/door/firedoor/heavy, -/obj/machinery/door/window/northleft{ - dir = 4; - icon_state = "left"; - name = "Atmospherics Desk"; - req_access_txt = "24" - }, -/obj/machinery/door/poddoor/preopen{ - id = "atmos"; - layer = 2.9; - name = "atmos blast door" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/delivery{ - name = "floor" - }, -/area/atmos) -"bIE" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/chair/office/dark{ - dir = 8 - }, -/obj/effect/landmark/start{ - name = "Atmospheric Technician" - }, -/turf/open/floor/plasteel, -/area/atmos) -"bIF" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 10 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bIG" = ( -/obj/structure/rack{ - dir = 8; - layer = 2.9 - }, -/obj/item/clothing/mask/gas{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/clothing/mask/gas, -/obj/item/clothing/mask/gas{ - pixel_x = -3; - pixel_y = -3 - }, -/obj/machinery/requests_console{ - department = "Atmospherics"; - departmentType = 4; - name = "Atmos RC"; - pixel_x = 30; - pixel_y = 0 - }, -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/turf/open/floor/plasteel, -/area/atmos) -"bIH" = ( -/obj/machinery/pipedispenser/disposal, -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/obj/machinery/camera{ - c_tag = "Atmospherics Central"; - dir = 4; - network = list("SS13") - }, -/turf/open/floor/plasteel, -/area/atmos) -"bII" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bIJ" = ( -/obj/machinery/suit_storage_unit/atmos, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/atmos) -"bIK" = ( -/obj/machinery/atmospherics/pipe/manifold/general/visible{ - dir = 4; - initialize_directions = 11 - }, -/obj/machinery/meter, -/turf/open/floor/plasteel, -/area/atmos) -"bIL" = ( -/obj/machinery/holopad, -/turf/open/floor/plasteel, -/area/atmos) -"bIM" = ( -/obj/machinery/atmospherics/pipe/manifold/general/visible{ - dir = 8 - }, -/obj/machinery/meter, -/turf/open/floor/plasteel, -/area/atmos) -"bIN" = ( -/obj/machinery/light{ - dir = 4 - }, -/turf/open/floor/plasteel/yellow/side{ - tag = "icon-yellow (EAST)"; - dir = 4 - }, -/area/atmos) -"bIO" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/hidden{ - tag = "icon-intact (SOUTHEAST)"; - icon_state = "intact"; - dir = 6 - }, -/obj/item/weapon/wrench, -/turf/open/floor/plating, -/area/maintenance/aft) -"bIP" = ( -/obj/machinery/atmospherics/pipe/manifold/cyan/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/obj/machinery/meter, -/turf/open/floor/plating, -/area/maintenance/aft) -"bIQ" = ( -/obj/item/weapon/broken_bottle, -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plating, -/area/maintenance/aft) -"bIR" = ( -/obj/effect/decal/cleanable/ash, -/turf/open/floor/plating, -/area/maintenance/aft) -"bIS" = ( -/obj/structure/closet, -/obj/item/weapon/restraints/handcuffs/cable, -/turf/open/floor/plating, -/area/maintenance/aft) -"bIT" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/engineering{ - name = "Gravity Generator"; - req_access_txt = "11" - }, -/turf/open/floor/plasteel/delivery{ - name = "floor" - }, -/area/engine/gravity_generator) -"bIU" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/engine/gravity_generator) -"bIV" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - on = 1 - }, -/turf/open/floor/plasteel/warning{ - tag = "icon-warning (EAST)"; - dir = 4 - }, -/area/engine/gravity_generator) -"bIW" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/engineering{ - name = "Gravity Generator"; - req_access_txt = "11" - }, -/turf/open/floor/plasteel/delivery{ - name = "floor" - }, -/area/storage/tech) -"bIX" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 8; - initialize_directions = 11 - }, -/turf/open/floor/plasteel/black, -/area/storage/tech) -"bIY" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/black, -/area/storage/tech) -"bIZ" = ( -/obj/structure/rack{ - dir = 8; - layer = 2.9 - }, -/obj/item/weapon/circuitboard/computer/cloning{ - pixel_x = 0 - }, -/obj/item/weapon/circuitboard/computer/med_data{ - pixel_x = 3; - pixel_y = -3 - }, -/obj/item/weapon/circuitboard/machine/clonescanner, -/obj/item/weapon/circuitboard/machine/clonepod, -/obj/item/weapon/circuitboard/computer/scan_consolenew, -/turf/open/floor/plasteel/black, -/area/storage/tech) -"bJa" = ( -/obj/structure/rack{ - dir = 8; - layer = 2.9 - }, -/obj/item/weapon/circuitboard/computer/secure_data{ - pixel_x = -2; - pixel_y = 2 - }, -/obj/item/weapon/circuitboard/computer/security{ - pixel_x = 1; - pixel_y = -1 - }, -/turf/open/floor/plasteel/black, -/area/storage/tech) -"bJb" = ( -/obj/structure/rack{ - dir = 8; - layer = 2.9 - }, -/obj/item/weapon/circuitboard/computer/powermonitor{ - pixel_x = -2; - pixel_y = 2 - }, -/obj/item/weapon/circuitboard/computer/stationalert{ - pixel_x = 1; - pixel_y = -1 - }, -/obj/item/weapon/circuitboard/computer/atmos_alert{ - pixel_x = 3; - pixel_y = -3 - }, -/turf/open/floor/plasteel/black, -/area/storage/tech) -"bJc" = ( -/obj/machinery/holopad, -/turf/open/floor/plasteel/black, -/area/storage/tech) -"bJd" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - on = 1 - }, -/turf/open/floor/plasteel/black, -/area/storage/tech) -"bJe" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4"; - tag = "" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 6 - }, -/turf/open/floor/plasteel/black, -/area/storage/tech) -"bJf" = ( -/obj/machinery/door/airlock/engineering{ - name = "Tech Storage"; - req_access_txt = "23" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/storage/tech) -"bJg" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 4; - initialize_directions = 11 - }, -/turf/open/floor/plasteel/yellow/corner{ - dir = 8 - }, -/area/hallway/primary/aft) -"bJh" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4"; - tag = "" - }, -/turf/open/floor/plasteel, -/area/hallway/primary/aft) -"bJi" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/floor/plasteel, -/area/hallway/primary/aft) -"bJj" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/aft) -"bJk" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8"; - tag = "" - }, -/turf/open/floor/plasteel, -/area/hallway/primary/aft) -"bJl" = ( -/obj/structure/plasticflaps{ - opacity = 1 - }, -/turf/open/floor/plasteel/delivery{ - name = "floor" - }, -/area/atmos) -"bJm" = ( -/obj/machinery/navbeacon{ - codes_txt = "delivery;dir=4"; - freq = 1400; - location = "Atmospherics" - }, -/turf/open/floor/plasteel/loadingarea{ - dir = 4 - }, -/area/atmos) -"bJn" = ( -/obj/structure/disposalpipe/sortjunction{ - dir = 2; - icon_state = "pipe-j2s"; - sortType = 6 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bJo" = ( -/obj/machinery/disposal/bin, -/obj/structure/disposalpipe/trunk{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bJp" = ( -/obj/machinery/pipedispenser/disposal/transit_tube, -/turf/open/floor/plasteel, -/area/atmos) -"bJq" = ( -/obj/machinery/atmospherics/pipe/manifold/general/visible{ - dir = 4; - initialize_directions = 11 - }, -/obj/item/weapon/wrench, -/turf/open/floor/plasteel, -/area/atmos) -"bJr" = ( -/obj/machinery/camera{ - c_tag = "Atmospherics Starboard"; - dir = 8; - network = list("SS13") - }, -/obj/machinery/atmospherics/components/binary/pump{ - dir = 8; - name = "Plasma Outlet Pump"; - on = 0 - }, -/turf/open/floor/plasteel/yellow/side{ - tag = "icon-yellow (EAST)"; - dir = 4 - }, -/area/atmos) -"bJs" = ( -/obj/structure/grille, -/obj/machinery/atmospherics/pipe/simple/cyan/visible, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/yellow/visible{ - dir = 4 - }, -/turf/open/floor/plating, -/area/atmos) -"bJt" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - external_pressure_bound = 0; - frequency = 1441; - id_tag = "tox_out"; - initialize_directions = 1; - internal_pressure_bound = 4000; - on = 1; - pressure_checks = 2; - pump_direction = 0 - }, -/turf/open/floor/engine/plasma, -/area/atmos) -"bJu" = ( -/turf/open/floor/engine/plasma, -/area/atmos) -"bJv" = ( -/obj/effect/landmark{ - name = "xeno_spawn"; - pixel_x = -1 - }, -/turf/open/floor/engine/plasma, -/area/atmos) -"bJw" = ( -/obj/structure/disposalpipe/junction{ - dir = 2; - icon_state = "pipe-y" - }, -/turf/open/floor/plating{ - icon_state = "platingdmg3" - }, -/area/maintenance/aft) -"bJx" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating/airless, -/area/maintenance/aft) -"bJy" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/chair/stool, -/turf/open/floor/plating, -/area/maintenance/aft) -"bJz" = ( -/obj/item/stack/sheet/cardboard{ - amount = 14 - }, -/obj/item/weapon/vending_refill/cola, -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"bJA" = ( -/obj/machinery/door/airlock/atmos{ - name = "Atmospherics Maintenance"; - req_access_txt = "12;24" - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"bJB" = ( -/obj/machinery/atmospherics/components/binary/valve, -/obj/effect/landmark{ - name = "blobstart" - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"bJC" = ( -/obj/machinery/light/small{ - dir = 4 - }, -/obj/machinery/atmospherics/components/binary/pump{ - dir = 1; - name = "Air Out"; - on = 1 - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"bJD" = ( -/obj/item/weapon/picket_sign, -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plating, -/area/maintenance/aft) -"bJE" = ( -/obj/structure/bonfire, -/turf/open/floor/plating, -/area/maintenance/aft) -"bJF" = ( -/obj/structure/closet, -/obj/item/weapon/cigbutt/cigarbutt, -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plating, -/area/maintenance/aft) -"bJG" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plating{ - icon_state = "platingdmg3" - }, -/area/maintenance/aft) -"bJH" = ( -/obj/structure/rack, -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plating, -/area/maintenance/aft) -"bJI" = ( -/obj/machinery/gravity_generator/main/station, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/engine/gravity_generator) -"bJJ" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 6 - }, -/turf/open/floor/plasteel/darkwarning{ - dir = 8 - }, -/area/engine/gravity_generator) -"bJK" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/closed/wall/r_wall, -/area/engine/gravity_generator) -"bJL" = ( -/obj/structure/chair/office/light, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning{ - dir = 10 - }, -/area/engine/gravity_generator) -"bJM" = ( -/obj/machinery/power/terminal, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/open/floor/plasteel/warning{ - dir = 6 - }, -/area/engine/gravity_generator) -"bJN" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/closed/wall/r_wall, -/area/storage/tech) -"bJO" = ( -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'RADIOACTIVE AREA'"; - icon_state = "radiation"; - name = "RADIOACTIVE AREA"; - pixel_x = -32; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/darkwarning/corner{ - tag = "icon-black_warn_corner (EAST)"; - icon_state = "black_warn_corner"; - dir = 4 - }, -/area/storage/tech) -"bJP" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/item/device/radio/beacon, -/turf/open/floor/plasteel/black, -/area/storage/tech) -"bJQ" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold-b-f (NORTH)"; - dir = 1 - }, -/turf/open/floor/plasteel/black, -/area/storage/tech) -"bJR" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/storage/tech) -"bJS" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/open/floor/plasteel/black, -/area/storage/tech) -"bJT" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 9; - pixel_y = 0 - }, -/turf/open/floor/plasteel/black, -/area/storage/tech) -"bJU" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 5 - }, -/turf/open/floor/plasteel/yellow/corner, -/area/hallway/primary/aft) -"bJV" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/yellow/corner, -/area/hallway/primary/aft) -"bJW" = ( -/obj/machinery/camera{ - c_tag = "Aft Primary Hallway Engineering"; - dir = 1; - network = list("SS13"); - pixel_x = 0; - pixel_y = 0; - start_active = 1 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/yellow/corner, -/area/hallway/primary/aft) -"bJX" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 10 - }, -/turf/open/floor/plasteel/yellow/corner, -/area/hallway/primary/aft) -"bJY" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-02" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/yellow/corner, -/area/hallway/primary/aft) -"bJZ" = ( -/obj/machinery/door/firedoor/heavy, -/obj/machinery/door/airlock/glass_atmos{ - name = "Atmospherics Monitoring"; - req_access_txt = "24" - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel, -/area/atmos) -"bKa" = ( -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/obj/machinery/atmospherics/components/binary/pump{ - dir = 0; - name = "Port to Filter"; - on = 0 - }, -/obj/structure/extinguisher_cabinet{ - pixel_x = -27; - pixel_y = 0 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bKb" = ( -/obj/machinery/atmospherics/pipe/manifold/general/visible{ - dir = 8 - }, -/obj/structure/chair/stool, -/turf/open/floor/plasteel, -/area/atmos) -"bKc" = ( -/obj/machinery/atmospherics/components/unary/thermomachine/heater{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bKd" = ( -/obj/machinery/computer/atmos_control/tank{ - frequency = 1441; - input_tag = "tox_in"; - name = "Plasma Supply Control"; - output_tag = "tox_out"; - sensors = list("tox_sensor" = "Tank") - }, -/turf/open/floor/plasteel/yellow/side{ - tag = "icon-yellow (EAST)"; - dir = 4 - }, -/area/atmos) -"bKe" = ( -/obj/machinery/air_sensor{ - frequency = 1441; - id_tag = "tox_sensor" - }, -/turf/open/floor/engine/plasma, -/area/atmos) -"bKf" = ( -/obj/machinery/portable_atmospherics/canister/toxins, -/turf/open/floor/engine/plasma, -/area/atmos) -"bKg" = ( -/obj/machinery/light/small{ - dir = 4 - }, -/turf/open/floor/engine/plasma, -/area/atmos) -"bKh" = ( -/obj/structure/table, -/obj/item/weapon/storage/box/mousetraps, -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plating, -/area/maintenance/aft) -"bKi" = ( -/obj/structure/table, -/obj/item/stack/cable_coil, -/obj/item/weapon/extinguisher, -/turf/open/floor/plating, -/area/maintenance/aft) -"bKj" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible{ - dir = 1; - name = "Connector Port (Air Supply)" - }, -/obj/machinery/portable_atmospherics/canister/nitrous_oxide, -/turf/open/floor/plating, -/area/maintenance/aft) -"bKk" = ( -/obj/machinery/atmospherics/components/unary/tank/air{ - dir = 1 - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"bKl" = ( -/obj/structure/grille/broken, -/obj/structure/piano, -/turf/open/floor/plating, -/area/maintenance/aft) -"bKm" = ( -/obj/item/weapon/reagent_containers/food/snacks/beans, -/turf/open/floor/plating, -/area/maintenance/aft) -"bKn" = ( -/obj/structure/closet, -/obj/item/weapon/shard, -/obj/item/stack/spacecash/c10, -/turf/open/floor/plating, -/area/maintenance/aft) -"bKo" = ( -/obj/machinery/space_heater, -/turf/open/floor/plating, -/area/maintenance/aft) -"bKp" = ( -/obj/machinery/light, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - external_pressure_bound = 101.325; - on = 1; - pressure_checks = 1 - }, -/turf/open/floor/plasteel/darkwarning{ - dir = 1 - }, -/area/engine/gravity_generator) -"bKq" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/darkwarning{ - dir = 1 - }, -/area/engine/gravity_generator) -"bKr" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 9; - pixel_y = 0 - }, -/turf/open/floor/plasteel/darkwarning/corner{ - tag = "icon-black_warn_corner (EAST)"; - icon_state = "black_warn_corner"; - dir = 4 - }, -/area/engine/gravity_generator) -"bKs" = ( -/obj/machinery/power/apc{ - dir = 8; - name = "Gravity Generator APC"; - pixel_x = -25; - pixel_y = 1 - }, -/obj/structure/table, -/obj/item/weapon/paper/gravity_gen{ - layer = 3 - }, -/obj/item/weapon/pen/blue, -/obj/machinery/power/terminal{ - dir = 8 - }, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/machinery/light, -/turf/open/floor/plating/warnplate{ - dir = 1 - }, -/area/engine/gravity_generator) -"bKt" = ( -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/machinery/power/smes{ - charge = 5e+006 - }, -/turf/open/floor/plating/warnplate{ - dir = 1 - }, -/area/engine/gravity_generator) -"bKu" = ( -/obj/machinery/suit_storage_unit/standard_unit, -/turf/open/floor/plasteel/black, -/area/storage/tech) -"bKv" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/black, -/area/storage/tech) -"bKw" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/closet/crate/engineering/electrical, -/obj/item/stack/cable_coil, -/obj/item/stack/cable_coil, -/obj/item/weapon/electronics/apc, -/obj/item/weapon/electronics/airalarm, -/obj/item/weapon/electronics/airlock, -/turf/open/floor/plasteel/black, -/area/storage/tech) -"bKx" = ( -/obj/structure/rack, -/obj/item/weapon/stock_parts/subspace/filter, -/obj/item/weapon/stock_parts/subspace/filter, -/obj/item/weapon/stock_parts/subspace/treatment, -/obj/item/weapon/stock_parts/subspace/treatment, -/obj/item/weapon/stock_parts/subspace/transmitter, -/obj/item/weapon/stock_parts/subspace/transmitter, -/turf/open/floor/plasteel/black, -/area/storage/tech) -"bKy" = ( -/obj/structure/rack, -/obj/item/weapon/stock_parts/subspace/ansible, -/obj/item/weapon/stock_parts/subspace/ansible, -/obj/item/weapon/stock_parts/subspace/crystal, -/obj/item/weapon/stock_parts/subspace/crystal, -/obj/machinery/light, -/turf/open/floor/plasteel/black, -/area/storage/tech) -"bKz" = ( -/obj/structure/rack, -/obj/item/weapon/stock_parts/subspace/amplifier, -/obj/item/weapon/stock_parts/subspace/amplifier, -/obj/item/weapon/stock_parts/subspace/analyzer, -/obj/item/weapon/stock_parts/subspace/analyzer, -/turf/open/floor/plasteel/black, -/area/storage/tech) -"bKA" = ( -/obj/structure/rack{ - dir = 8; - layer = 2.9 - }, -/obj/item/weapon/storage/toolbox/electrical{ - pixel_x = 2; - pixel_y = 4 - }, -/obj/item/clothing/gloves/color/yellow, -/obj/item/device/t_scanner, -/turf/open/floor/plasteel/black, -/area/storage/tech) -"bKB" = ( -/obj/structure/rack{ - dir = 8; - layer = 2.9 - }, -/obj/item/weapon/storage/toolbox/electrical{ - pixel_x = 2; - pixel_y = 4 - }, -/obj/item/device/multitool, -/obj/item/clothing/glasses/meson, -/obj/machinery/requests_console{ - department = "Tech storage"; - pixel_x = 0; - pixel_y = -32 - }, -/turf/open/floor/plasteel/black, -/area/storage/tech) -"bKC" = ( -/obj/structure/closet/crate{ - name = "solar pack crate" - }, -/obj/item/solar_assembly, -/obj/item/solar_assembly, -/obj/item/solar_assembly, -/obj/item/solar_assembly, -/obj/item/solar_assembly, -/obj/item/solar_assembly, -/obj/item/solar_assembly, -/obj/item/solar_assembly, -/obj/item/solar_assembly, -/obj/item/solar_assembly, -/obj/item/solar_assembly, -/obj/item/solar_assembly, -/obj/item/solar_assembly, -/obj/item/weapon/circuitboard/computer/solar_control, -/obj/item/weapon/electronics/tracker, -/obj/item/weapon/paper/solar, -/obj/machinery/power/apc{ - dir = 2; - name = "Tech Storage APC"; - pixel_x = 0; - pixel_y = -24 - }, -/obj/structure/cable, -/turf/open/floor/plasteel/black, -/area/storage/tech) -"bKD" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/checkpoint/engineering) -"bKE" = ( -/turf/closed/wall, -/area/security/checkpoint/engineering) -"bKF" = ( -/turf/closed/wall, -/area/engine/engineering) -"bKG" = ( -/obj/machinery/door/airlock/engineering{ - cyclelinkeddir = 2; - name = "Engineering"; - req_one_access_txt = "10;24" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/engine/engineering) -"bKH" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall, -/area/engine/engineering) -"bKI" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - tag = "icon-intact (SOUTHEAST)"; - icon_state = "intact"; - dir = 6 - }, -/turf/open/floor/plasteel/yellow/side{ - dir = 1 - }, -/area/atmos) -"bKJ" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - dir = 4 - }, -/turf/open/floor/plasteel/yellow/side{ - dir = 1 - }, -/area/atmos) -"bKK" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - dir = 4 - }, -/obj/structure/sign/atmosplaque{ - pixel_y = 32 - }, -/obj/machinery/light{ - dir = 1 - }, -/obj/machinery/camera{ - c_tag = "Atmospherics Entrance"; - dir = 2; - network = list("SS13") - }, -/turf/open/floor/plasteel/yellow/side{ - dir = 1 - }, -/area/atmos) -"bKL" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - dir = 4 - }, -/obj/machinery/firealarm{ - dir = 1; - pixel_y = 29 - }, -/turf/open/floor/plasteel/yellow/side{ - dir = 1 - }, -/area/atmos) -"bKM" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/visible, -/turf/open/floor/plasteel, -/area/atmos) -"bKN" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - dir = 4 - }, -/obj/item/device/radio/intercom{ - dir = 0; - name = "Station Intercom (General)"; - pixel_x = 30; - pixel_y = 26 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bKO" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - dir = 4 - }, -/obj/structure/closet/wardrobe/atmospherics_yellow, -/turf/open/floor/plasteel/yellow/side{ - dir = 1 - }, -/area/atmos) -"bKP" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - dir = 4 - }, -/obj/structure/reagent_dispensers/watertank/high, -/obj/structure/fireaxecabinet{ - pixel_y = 32 - }, -/turf/open/floor/plasteel/yellow/side{ - dir = 1 - }, -/area/atmos) -"bKQ" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - dir = 4 - }, -/obj/structure/reagent_dispensers/fueltank, -/obj/machinery/camera{ - c_tag = "Atmospherics Mixing"; - dir = 2; - network = list("SS13") - }, -/turf/open/floor/plasteel/yellow/side{ - dir = 1 - }, -/area/atmos) -"bKR" = ( -/obj/machinery/atmospherics/components/binary/pump{ - dir = 8; - name = "Port to Filter"; - on = 0 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bKS" = ( -/obj/machinery/atmospherics/pipe/manifold/general/visible, -/obj/item/weapon/cigbutt, -/turf/open/floor/plasteel, -/area/atmos) -"bKT" = ( -/obj/machinery/atmospherics/components/unary/thermomachine/freezer{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bKU" = ( -/obj/machinery/atmospherics/components/trinary/filter{ - dir = 1; - filter_type = "plasma"; - on = 1 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bKV" = ( -/obj/structure/grille, -/obj/machinery/atmospherics/pipe/simple/cyan/visible, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/green/visible{ - dir = 4 - }, -/turf/open/floor/plating, -/area/atmos) -"bKW" = ( -/obj/machinery/atmospherics/components/unary/outlet_injector/on{ - dir = 8; - frequency = 1441; - id = "tox_in"; - pixel_y = 1 - }, -/turf/open/floor/engine/plasma, -/area/atmos) -"bKX" = ( -/obj/item/weapon/cigbutt/cigarbutt, -/turf/open/floor/plating, -/area/maintenance/aft) -"bKY" = ( -/obj/structure/sign/securearea, -/turf/closed/wall/r_wall, -/area/storage/tech) -"bKZ" = ( -/obj/machinery/door/airlock/highsecurity{ - name = "Secure Tech Storage"; - req_access_txt = "19;23" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/black, -/area/storage/tech) -"bLa" = ( -/obj/structure/sign/securearea, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/closed/wall/r_wall, -/area/storage/tech) -"bLb" = ( -/obj/structure/table, -/obj/item/weapon/book/manual/wiki/security_space_law, -/obj/machinery/camera{ - c_tag = "Engineering Security Post"; - dir = 4; - network = list("SS13") - }, -/obj/machinery/airalarm{ - dir = 4; - pixel_x = -23; - pixel_y = 0 - }, -/turf/open/floor/plasteel/red/side{ - dir = 9 - }, -/area/security/checkpoint/engineering) -"bLc" = ( -/obj/machinery/computer/secure_data, -/turf/open/floor/plasteel/red/side{ - dir = 1 - }, -/area/security/checkpoint/engineering) -"bLd" = ( -/obj/machinery/computer/secure_data, -/turf/open/floor/plasteel/red/side{ - dir = 5 - }, -/area/security/checkpoint/engineering) -"bLe" = ( -/obj/machinery/light{ - dir = 1 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - on = 1 - }, -/obj/machinery/firealarm{ - dir = 1; - pixel_x = 0; - pixel_y = 28 - }, -/turf/open/floor/plasteel/warning{ - dir = 9 - }, -/area/engine/engineering) -"bLf" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/engine/engineering) -"bLg" = ( -/obj/machinery/light{ - dir = 1 - }, -/obj/machinery/camera{ - c_tag = "Engineering Access" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 6 - }, -/obj/item/device/radio/intercom{ - dir = 0; - name = "Station Intercom (General)"; - pixel_x = 0; - pixel_y = 24 - }, -/turf/open/floor/plasteel/warning{ - dir = 5 - }, -/area/engine/engineering) -"bLh" = ( -/obj/machinery/door/poddoor/preopen{ - id = "atmos"; - name = "atmos blast door" - }, -/obj/machinery/door/firedoor/heavy, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/delivery{ - name = "floor" - }, -/area/engine/engineering) -"bLi" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/visible{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bLj" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 6 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bLk" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/visible{ - dir = 6 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bLl" = ( -/obj/machinery/atmospherics/components/binary/pump{ - dir = 4; - name = "N2 to Pure"; - on = 0 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bLm" = ( -/obj/machinery/atmospherics/pipe/manifold/yellow/visible{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bLn" = ( -/obj/machinery/atmospherics/components/unary/outlet_injector/on{ - dir = 1 - }, -/turf/open/floor/plating/airless, -/area/space) -"bLo" = ( -/obj/machinery/light/small{ - dir = 8 - }, -/obj/machinery/libraryscanner, -/turf/open/floor/plasteel/black, -/area/library) -"bLp" = ( -/obj/machinery/newscaster{ - pixel_x = -32; - pixel_y = -32 - }, -/turf/open/floor/carpet, -/area/library) -"bLq" = ( -/obj/structure/closet/crate/bin, -/turf/open/floor/plasteel/black, -/area/library) -"bLr" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/visible{ - dir = 4 - }, -/turf/open/floor/plasteel/yellow/side{ - tag = "icon-yellow (EAST)"; - dir = 4 - }, -/area/atmos) -"bLs" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/cyan/visible, -/turf/open/floor/plating, -/area/atmos) -"bLt" = ( -/obj/docking_port/stationary{ - dheight = 9; - dir = 2; - dwidth = 5; - height = 24; - id = "syndicate_southmaint"; - name = "south maintenance airlock"; - turf_type = /turf/open/space; - width = 18 - }, -/turf/open/space, -/area/space) -"bLu" = ( -/obj/structure/mopbucket, -/obj/item/weapon/mop, -/turf/open/floor/plating, -/area/maintenance/aft) -"bLv" = ( -/obj/structure/grille/broken, -/obj/structure/window/fulltile, -/turf/open/floor/plating, -/area/maintenance/aft) -"bLw" = ( -/obj/structure/bookcase/random/adult, -/turf/open/floor/plasteel/black, -/area/library) -"bLx" = ( -/obj/structure/reagent_dispensers/fueltank, -/turf/open/floor/plating{ - icon_state = "panelscorched" - }, -/area/maintenance/aft) -"bLy" = ( -/obj/structure/table/wood, -/obj/item/weapon/clipboard, -/obj/item/weapon/paper, -/obj/item/weapon/pen, -/obj/item/clothing/head/fedora, -/turf/open/floor/plating, -/area/maintenance/aft) -"bLz" = ( -/obj/structure/table/wood, -/obj/item/device/flashlight/lamp, -/turf/open/floor/plating, -/area/maintenance/aft) -"bLA" = ( -/obj/structure/closet{ - name = "Clue Closet" - }, -/obj/item/weapon/kitchen/knife, -/obj/item/candle, -/obj/item/pipe, -/obj/item/weapon/gun/ballistic/revolver/russian, -/obj/item/stack/cable_coil/white, -/obj/item/weapon/wrench, -/obj/effect/decal/cleanable/cobweb{ - icon_state = "cobweb2" - }, -/turf/open/floor/plating{ - icon_state = "panelscorched" - }, -/area/maintenance/aft) -"bLB" = ( -/obj/structure/reagent_dispensers/fueltank, -/turf/open/floor/plating, -/area/maintenance/aft) -"bLC" = ( -/obj/item/weapon/circuitboard/computer/libraryconsole, -/turf/open/floor/plating, -/area/maintenance/aft) -"bLD" = ( -/turf/closed/wall/r_wall, -/area/engine/chiefs_office) -"bLE" = ( -/obj/item/weapon/cartridge/engineering{ - pixel_x = 4; - pixel_y = 5 - }, -/obj/item/weapon/cartridge/engineering{ - pixel_x = -3; - pixel_y = 2 - }, -/obj/item/weapon/cartridge/engineering{ - pixel_x = 3 - }, -/obj/structure/table/reinforced, -/obj/item/weapon/cartridge/atmos, -/obj/machinery/requests_console{ - announcementConsole = 1; - department = "Chief Engineer's Desk"; - departmentType = 3; - name = "Chief Engineer RC"; - pixel_x = -32; - pixel_y = 0 - }, -/turf/open/floor/plasteel/yellow/side{ - dir = 9 - }, -/area/engine/chiefs_office) -"bLF" = ( -/obj/structure/filingcabinet/chestdrawer, -/obj/machinery/light{ - dir = 1 - }, -/obj/machinery/camera{ - c_tag = "Chief Engineer's Office"; - dir = 2; - network = list("SS13") - }, -/turf/open/floor/plasteel/yellow/side{ - dir = 1 - }, -/area/engine/chiefs_office) -"bLG" = ( -/obj/machinery/computer/atmos_alert, -/obj/machinery/airalarm{ - dir = 2; - pixel_y = 22 - }, -/turf/open/floor/plasteel/yellow/side{ - dir = 1 - }, -/area/engine/chiefs_office) -"bLH" = ( -/obj/machinery/computer/station_alert, -/obj/machinery/computer/security/telescreen/entertainment{ - pixel_y = 32 - }, -/turf/open/floor/plasteel/yellow/side{ - dir = 1 - }, -/area/engine/chiefs_office) -"bLI" = ( -/obj/machinery/computer/card/minor/ce, -/turf/open/floor/plasteel/yellow/side{ - dir = 5 - }, -/area/engine/chiefs_office) -"bLJ" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-07"; - name = "Photosynthetic Potted plant"; - pixel_y = 10 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/storage/tech) -"bLK" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-07"; - name = "Photosynthetic Potted plant"; - pixel_y = 10 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/storage/tech) -"bLL" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/turf/closed/wall, -/area/engine/engine_smes) -"bLM" = ( -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/machinery/power/smes/engineering, -/turf/open/floor/plasteel/yellow/side{ - dir = 1 - }, -/area/engine/engine_smes) -"bLN" = ( -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/machinery/power/smes/engineering, -/obj/machinery/camera{ - c_tag = "Engineering Power Storage"; - dir = 2; - network = list("SS13") - }, -/turf/open/floor/plasteel/yellow/side{ - dir = 1 - }, -/area/engine/engine_smes) -"bLO" = ( -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/machinery/power/smes/engineering, -/turf/open/floor/plasteel/yellow/side{ - dir = 1 - }, -/area/engine/engine_smes) -"bLP" = ( -/turf/closed/wall, -/area/engine/engine_smes) -"bLQ" = ( -/turf/closed/wall/r_wall, -/area/engine/engine_smes) -"bLR" = ( -/obj/structure/table, -/obj/item/weapon/pen, -/obj/machinery/light{ - dir = 8 - }, -/obj/machinery/requests_console{ - department = "Security"; - departmentType = 5; - pixel_x = -32; - pixel_y = 0 - }, -/obj/item/weapon/paper_bin{ - layer = 2.9; - pixel_x = 0; - pixel_y = 0; - tag = "every single paper bin is edited to this" - }, -/turf/open/floor/plasteel/red/side{ - dir = 8 - }, -/area/security/checkpoint/engineering) -"bLS" = ( -/obj/structure/chair/office/dark{ - dir = 1 - }, -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4"; - tag = "" - }, -/obj/effect/landmark/start/depsec/engineering, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel, -/area/security/checkpoint/engineering) -"bLT" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/red/side{ - dir = 4 - }, -/area/security/checkpoint/engineering) -"bLU" = ( -/obj/machinery/door/airlock/glass_security{ - name = "Engineering Security Post"; - req_access_txt = "63" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/red, -/area/security/checkpoint/engineering) -"bLV" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/engine/engineering) -"bLW" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/goonplaque, -/area/engine/engineering) -"bLX" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 9 - }, -/turf/open/floor/plasteel/warning{ - tag = "icon-warning (EAST)"; - dir = 4 - }, -/area/engine/engineering) -"bLY" = ( -/obj/machinery/door/poddoor/preopen{ - id = "atmos"; - name = "atmos blast door" - }, -/obj/machinery/door/firedoor/heavy, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 8; - initialize_directions = 11 - }, -/turf/open/floor/plasteel/delivery{ - name = "floor" - }, -/area/engine/engineering) -"bLZ" = ( -/obj/machinery/door/firedoor/heavy, -/obj/machinery/door/airlock/atmos{ - name = "Atmospherics"; - req_access_txt = "24" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bMa" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible, -/turf/open/floor/plasteel, -/area/atmos) -"bMb" = ( -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible, -/turf/open/floor/plasteel, -/area/atmos) -"bMc" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bMd" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bMe" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/visible{ - dir = 4 - }, -/obj/machinery/atmospherics/components/binary/pump{ - dir = 1; - name = "O2 to Pure"; - on = 0 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bMf" = ( -/obj/effect/decal/remains/human, -/turf/closed/mineral, -/area/chapel/asteroid{ - name = "Monastery Asteroid" - }) -"bMg" = ( -/obj/structure/table/wood, -/obj/machinery/computer/libraryconsole/bookmanagement{ - pixel_y = 0 - }, -/turf/open/floor/plasteel/black, -/area/library) -"bMh" = ( -/obj/structure/table/wood, -/obj/item/weapon/paper_bin{ - layer = 2.9; - pixel_x = -2; - pixel_y = 4 - }, -/obj/item/weapon/pen, -/obj/item/weapon/barcodescanner, -/turf/open/floor/plasteel/black, -/area/library) -"bMi" = ( -/obj/machinery/atmospherics/pipe/manifold/yellow/visible, -/turf/open/floor/plasteel, -/area/atmos) -"bMj" = ( -/obj/machinery/atmospherics/components/binary/pump{ - dir = 8; - name = "CO2 Outlet Pump"; - on = 0 - }, -/turf/open/floor/plasteel/yellow/side{ - tag = "icon-yellow (EAST)"; - dir = 4 - }, -/area/atmos) -"bMk" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/yellow/visible{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/cyan/visible, -/turf/open/floor/plating, -/area/atmos) -"bMl" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - external_pressure_bound = 0; - frequency = 1441; - id_tag = "co2_out"; - initialize_directions = 1; - internal_pressure_bound = 4000; - on = 1; - pressure_checks = 2; - pump_direction = 0 - }, -/turf/open/floor/engine/co2, -/area/atmos) -"bMm" = ( -/turf/open/floor/engine/co2, -/area/atmos) -"bMn" = ( -/obj/structure/reagent_dispensers/watertank, -/turf/open/floor/plating, -/area/maintenance/aft) -"bMo" = ( -/obj/structure/reagent_dispensers/fueltank, -/obj/machinery/light/small{ - dir = 4 - }, -/turf/open/floor/plating{ - broken = 1; - icon_state = "platingdmg1" - }, -/area/maintenance/aft) -"bMp" = ( -/obj/structure/chair{ - dir = 1 - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"bMq" = ( -/obj/structure/closet/lawcloset, -/obj/item/weapon/gavelhammer, -/obj/item/weapon/gavelblock, -/obj/item/weapon/cartridge/lawyer, -/obj/item/clothing/head/powdered_wig, -/turf/open/floor/plating, -/area/maintenance/aft) -"bMr" = ( -/obj/structure/chair{ - dir = 8 - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"bMs" = ( -/obj/item/weapon/book/manual/barman_recipes, -/obj/structure/closet/crate{ - icon_state = "crateopen"; - opened = 1 - }, -/obj/item/weapon/cigbutt, -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plating, -/area/maintenance/aft) -"bMt" = ( -/obj/machinery/button/door{ - desc = "A remote control-switch for the engineering security doors."; - id = "Engineering"; - name = "Engineering Lockdown"; - pixel_x = -24; - pixel_y = -10; - req_access_txt = "10" - }, -/obj/machinery/button/door{ - desc = "A remote control-switch for secure storage."; - id = "Secure Storage"; - name = "Engineering Secure Storage"; - pixel_x = -24; - pixel_y = 0; - req_access_txt = "11" - }, -/obj/machinery/button/door{ - id = "atmos"; - name = "Atmospherics Lockdown"; - pixel_x = -24; - pixel_y = 10; - req_access_txt = "24" - }, -/obj/structure/table/reinforced, -/obj/item/weapon/folder/yellow, -/obj/item/weapon/paper/monitorkey, -/obj/item/weapon/pen, -/turf/open/floor/plasteel/yellow/side{ - dir = 8; - tag = "" - }, -/area/engine/chiefs_office) -"bMu" = ( -/turf/open/floor/plasteel, -/area/engine/chiefs_office) -"bMv" = ( -/obj/effect/landmark/start{ - name = "Chief Engineer" - }, -/turf/open/floor/plasteel, -/area/engine/chiefs_office) -"bMw" = ( -/obj/structure/chair/office/light{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/engine/chiefs_office) -"bMx" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/clipboard, -/obj/item/weapon/lighter, -/obj/item/clothing/glasses/meson{ - pixel_y = 4 - }, -/obj/item/weapon/stamp/ce, -/obj/item/weapon/stock_parts/cell/high/plus, -/obj/machinery/keycard_auth{ - pixel_x = 26; - pixel_y = 26 - }, -/turf/open/floor/plasteel/yellow/side{ - tag = "icon-yellow (EAST)"; - dir = 4 - }, -/area/engine/chiefs_office) -"bMy" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/obj/machinery/light/small{ - dir = 8 - }, -/turf/open/floor/plasteel/black, -/area/storage/tech) -"bMz" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 9 - }, -/turf/open/floor/plasteel/black, -/area/storage/tech) -"bMA" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - external_pressure_bound = 101.325; - on = 1; - pressure_checks = 1 - }, -/obj/machinery/light/small{ - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/storage/tech) -"bMB" = ( -/obj/structure/table, -/obj/item/weapon/storage/box/metalfoam{ - pixel_x = 4; - pixel_y = 7 - }, -/obj/item/weapon/storage/box/lights/mixed, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/airalarm{ - dir = 4; - pixel_x = -23; - pixel_y = 0 - }, -/turf/open/floor/plasteel/yellow/side{ - dir = 8; - tag = "" - }, -/area/engine/engine_smes) -"bMC" = ( -/obj/machinery/power/terminal{ - icon_state = "term"; - dir = 1 - }, -/obj/structure/cable/yellow{ - d2 = 2; - icon_state = "0-2" - }, -/turf/open/floor/plasteel/warning{ - tag = "icon-warning (NORTH)"; - dir = 1 - }, -/area/engine/engine_smes) -"bMD" = ( -/obj/machinery/suit_storage_unit/engine, -/turf/open/floor/plasteel/yellow/side{ - tag = "icon-yellow (EAST)"; - dir = 4 - }, -/area/engine/engine_smes) -"bME" = ( -/obj/structure/table, -/obj/machinery/recharger{ - pixel_y = 4 - }, -/obj/machinery/power/apc{ - dir = 8; - name = "Engineering Security APC"; - pixel_x = -24 - }, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/turf/open/floor/plasteel/red/side{ - dir = 8 - }, -/area/security/checkpoint/engineering) -"bMF" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 6 - }, -/turf/open/floor/plasteel, -/area/security/checkpoint/engineering) -"bMG" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/red/side{ - dir = 4 - }, -/area/security/checkpoint/engineering) -"bMH" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/security/checkpoint/engineering) -"bMI" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/open/floor/plasteel/warning{ - dir = 10 - }, -/area/engine/engineering) -"bMJ" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 4; - initialize_directions = 11 - }, -/turf/open/floor/plasteel/warning, -/area/engine/engineering) -"bMK" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/warning{ - dir = 6 - }, -/area/engine/engineering) -"bML" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bMM" = ( -/obj/item/weapon/pickaxe/mini, -/turf/closed/mineral, -/area/chapel/asteroid{ - name = "Monastery Asteroid" - }) -"bMN" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bMO" = ( -/obj/machinery/atmospherics/pipe/manifold/cyan/visible{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bMP" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/visible, -/turf/open/floor/plasteel, -/area/atmos) -"bMQ" = ( -/obj/machinery/computer/atmos_control/tank{ - frequency = 1441; - input_tag = "co2_in"; - name = "Carbon Dioxide Supply Control"; - output_tag = "co2_out"; - sensors = list("co2_sensor" = "Tank") - }, -/turf/open/floor/plasteel/yellow/side{ - tag = "icon-yellow (EAST)"; - dir = 4 - }, -/area/atmos) -"bMR" = ( -/obj/machinery/air_sensor{ - frequency = 1441; - id_tag = "co2_sensor" - }, -/turf/open/floor/engine/co2, -/area/atmos) -"bMS" = ( -/obj/machinery/portable_atmospherics/canister/carbon_dioxide, -/turf/open/floor/engine/co2, -/area/atmos) -"bMT" = ( -/obj/machinery/light/small{ - dir = 4 - }, -/turf/open/floor/engine/co2, -/area/atmos) -"bMU" = ( -/obj/effect/spawner/lootdrop/maintenance, -/turf/closed/mineral/random/low_chance, -/area/mine/explored{ - name = "Bomb Testing Asteroid" - }) -"bMV" = ( -/obj/structure/grille/broken, -/turf/open/floor/plating{ - icon_state = "platingdmg3" - }, -/area/maintenance/aft) -"bMW" = ( -/obj/structure/reagent_dispensers/watertank, -/turf/open/floor/plating{ - icon_state = "panelscorched" - }, -/area/maintenance/aft) -"bMX" = ( -/obj/structure/closet/secure_closet/engineering_chief{ - req_access_txt = "0" - }, -/obj/structure/extinguisher_cabinet{ - pixel_x = -27; - pixel_y = 0 - }, -/obj/item/clothing/glasses/meson/gar, -/turf/open/floor/plasteel/yellow/side{ - dir = 8; - tag = "" - }, -/area/engine/chiefs_office) -"bMY" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel, -/area/engine/chiefs_office) -"bMZ" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 10 - }, -/turf/open/floor/plasteel, -/area/engine/chiefs_office) -"bNa" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - on = 1 - }, -/turf/open/floor/plasteel, -/area/engine/chiefs_office) -"bNb" = ( -/obj/machinery/power/apc{ - dir = 4; - name = "CE Office APC"; - pixel_x = 28; - pixel_y = 0 - }, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/turf/open/floor/plasteel/yellow/side{ - tag = "icon-yellow (EAST)"; - dir = 4 - }, -/area/engine/chiefs_office) -"bNc" = ( -/obj/structure/rack{ - dir = 8; - layer = 2.9 - }, -/obj/item/weapon/circuitboard/computer/robotics{ - pixel_x = -2; - pixel_y = 2 - }, -/obj/item/weapon/circuitboard/computer/mecha_control{ - pixel_x = 1; - pixel_y = -1 - }, -/turf/open/floor/plating, -/area/storage/tech) -"bNd" = ( -/obj/structure/rack{ - dir = 8; - layer = 2.9 - }, -/obj/item/weapon/circuitboard/computer/crew{ - pixel_x = -1; - pixel_y = 1 - }, -/obj/item/weapon/circuitboard/computer/card{ - pixel_x = 2; - pixel_y = -2 - }, -/obj/item/weapon/circuitboard/computer/communications{ - pixel_x = 5; - pixel_y = -5 - }, -/obj/machinery/camera{ - c_tag = "Secure Tech Storage"; - dir = 1 - }, -/turf/open/floor/plating, -/area/storage/tech) -"bNe" = ( -/obj/structure/rack{ - dir = 8; - layer = 2.9 - }, -/obj/item/weapon/circuitboard/computer/borgupload{ - pixel_x = -1; - pixel_y = 1 - }, -/obj/item/weapon/circuitboard/computer/aiupload{ - pixel_x = 2; - pixel_y = -2 - }, -/turf/open/floor/plating, -/area/storage/tech) -"bNf" = ( -/obj/structure/table, -/obj/item/stack/sheet/plasteel{ - amount = 20; - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/stack/sheet/glass{ - amount = 50; - layer = 4 - }, -/obj/item/stack/sheet/glass{ - amount = 50; - layer = 4 - }, -/obj/item/stack/sheet/glass{ - amount = 50; - layer = 4 - }, -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4"; - tag = "" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/light{ - dir = 8 - }, -/obj/machinery/computer/security/telescreen{ - desc = "Used for watching the engine containment area."; - dir = 4; - name = "Engine Monitor"; - network = list("Singularity"); - pixel_x = -32; - pixel_y = 0 - }, -/turf/open/floor/plasteel/yellow/side{ - dir = 8; - tag = "" - }, -/area/engine/engine_smes) -"bNg" = ( -/obj/structure/cable/yellow{ - icon_state = "1-4"; - d1 = 1; - d2 = 4 - }, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8"; - tag = "" - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel, -/area/engine/engine_smes) -"bNh" = ( -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/cable/yellow{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/structure/cable/yellow{ - d1 = 2; - d2 = 4; - icon_state = "2-4"; - tag = "" - }, -/obj/effect/landmark/start{ - name = "Station Engineer" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 10 - }, -/turf/open/floor/plasteel, -/area/engine/engine_smes) -"bNi" = ( -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 8; - icon_state = "1-8"; - tag = "" - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - on = 1 - }, -/turf/open/floor/plasteel, -/area/engine/engine_smes) -"bNj" = ( -/obj/structure/tank_dispenser, -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/turf/open/floor/plasteel/yellow/side{ - tag = "icon-yellow (EAST)"; - dir = 4 - }, -/area/engine/engine_smes) -"bNk" = ( -/obj/structure/filingcabinet, -/turf/open/floor/plasteel/red/side{ - dir = 10 - }, -/area/security/checkpoint/engineering) -"bNl" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/turf/open/floor/plasteel/red/side, -/area/security/checkpoint/engineering) -"bNm" = ( -/obj/structure/reagent_dispensers/peppertank{ - pixel_x = 32; - pixel_y = 0 - }, -/obj/structure/closet/wardrobe/red, -/turf/open/floor/plasteel/red/side{ - dir = 6 - }, -/area/security/checkpoint/engineering) -"bNn" = ( -/turf/closed/wall/r_wall, -/area/security/checkpoint/engineering) -"bNo" = ( -/obj/machinery/door/poddoor/preopen{ - id = "Engineering"; - name = "engineering security door" - }, -/obj/machinery/door/firedoor, -/turf/open/floor/plasteel/delivery{ - name = "floor" - }, -/area/engine/engineering) -"bNp" = ( -/obj/machinery/door/poddoor/preopen{ - id = "Engineering"; - name = "engineering security door" - }, -/obj/machinery/door/firedoor, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/delivery{ - name = "floor" - }, -/area/engine/engineering) -"bNq" = ( -/obj/machinery/door/poddoor/preopen{ - id = "Engineering"; - name = "engineering security door" - }, -/obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 6 - }, -/turf/open/floor/plasteel/delivery{ - name = "floor" - }, -/area/engine/engineering) -"bNr" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 9 - }, -/turf/closed/wall, -/area/engine/engineering) -"bNs" = ( -/obj/machinery/portable_atmospherics/scrubber, -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible, -/turf/open/floor/plasteel, -/area/atmos) -"bNt" = ( -/obj/machinery/portable_atmospherics/pump, -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - tag = "icon-intact (NORTHEAST)"; - icon_state = "intact"; - dir = 5 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bNu" = ( -/obj/machinery/atmospherics/components/trinary/filter{ - dir = 4; - filter_type = "o2"; - on = 1 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bNv" = ( -/obj/machinery/atmospherics/pipe/simple/green/visible{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bNw" = ( -/obj/machinery/atmospherics/pipe/simple/green/visible{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/cyan/visible, -/turf/open/floor/plasteel, -/area/atmos) -"bNx" = ( -/obj/machinery/camera{ - c_tag = "Telecoms External Fore"; - dir = 1; - network = list("SS13, Telecoms"); - pixel_x = 0; - pixel_y = 0; - start_active = 1 - }, -/turf/open/space, -/area/space) -"bNy" = ( -/obj/machinery/atmospherics/pipe/simple/green/visible{ - dir = 4; - initialize_directions = 12 - }, -/obj/machinery/atmospherics/pipe/simple/cyan/visible, -/turf/open/floor/plasteel, -/area/atmos) -"bNz" = ( -/obj/machinery/atmospherics/pipe/simple/green/visible{ - dir = 10 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bNA" = ( -/obj/machinery/atmospherics/components/trinary/filter{ - dir = 1; - filter_type = "co2"; - on = 1 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bNB" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/green/visible{ - dir = 4 - }, -/turf/open/floor/plating, -/area/atmos) -"bNC" = ( -/obj/machinery/atmospherics/components/unary/outlet_injector/on{ - dir = 8; - frequency = 1441; - id = "co2_in"; - pixel_y = 1 - }, -/turf/open/floor/engine/co2, -/area/atmos) -"bND" = ( -/obj/item/device/flashlight, -/turf/open/floor/plating, -/area/maintenance/aft) -"bNE" = ( -/obj/effect/decal/cleanable/vomit/old, -/obj/structure/grille/broken, -/turf/open/floor/plating, -/area/maintenance/aft) -"bNF" = ( -/obj/structure/rack, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 2; - name = "2maintenance loot spawner" - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"bNG" = ( -/obj/machinery/suit_storage_unit/ce, -/turf/open/floor/plasteel/yellow/side{ - dir = 10 - }, -/area/engine/chiefs_office) -"bNH" = ( -/turf/open/floor/plasteel/yellow/side, -/area/engine/chiefs_office) -"bNI" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/yellow/side, -/area/engine/chiefs_office) -"bNJ" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/yellow/side, -/area/engine/chiefs_office) -"bNK" = ( -/obj/machinery/disposal/bin, -/obj/structure/disposalpipe/trunk{ - dir = 8 - }, -/obj/machinery/light_switch{ - pixel_x = 25 - }, -/turf/open/floor/plasteel/yellow/side{ - dir = 6 - }, -/area/engine/chiefs_office) -"bNL" = ( -/turf/closed/wall/r_wall, -/area/engine/engineering) -"bNM" = ( -/obj/structure/table, -/obj/item/stack/sheet/metal{ - amount = 50 - }, -/obj/item/stack/sheet/metal{ - amount = 50 - }, -/obj/item/stack/rods{ - amount = 50 - }, -/obj/item/stack/cable_coil, -/obj/machinery/power/apc{ - cell_type = 10000; - dir = 8; - name = "Engine Room APC"; - pixel_x = -26; - pixel_y = 0 - }, -/obj/structure/cable, -/obj/item/stack/sheet/metal{ - amount = 50; - layer = 2.9 - }, -/obj/item/stack/cable_coil, -/turf/open/floor/plasteel/yellow/side{ - dir = 8; - tag = "" - }, -/area/engine/engine_smes) -"bNN" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plasteel, -/area/engine/engine_smes) -"bNO" = ( -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/engine/engine_smes) -"bNP" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/engine/engine_smes) -"bNQ" = ( -/obj/machinery/door/airlock/engineering{ - cyclelinkeddir = 1; - name = "Engine Room"; - req_access_txt = "10" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/engine/engineering) -"bNR" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall/r_wall, -/area/engine/engineering) -"bNS" = ( -/obj/machinery/portable_atmospherics/scrubber, -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible, -/turf/open/floor/plasteel/yellow/side, -/area/atmos) -"bNT" = ( -/obj/machinery/portable_atmospherics/pump, -/turf/open/floor/plasteel/yellow/side, -/area/atmos) -"bNU" = ( -/obj/machinery/atmospherics/pipe/simple/green/visible, -/turf/open/floor/plasteel/yellow/side, -/area/atmos) -"bNV" = ( -/obj/machinery/computer/atmos_control/tank{ - frequency = 1441; - input_tag = "n2_in"; - name = "Nitrogen Supply Control"; - output_tag = "n2_out"; - sensors = list("n2_sensor" = "Tank") - }, -/turf/open/floor/plasteel/yellow/side, -/area/atmos) -"bNW" = ( -/obj/machinery/camera/motion{ - c_tag = "Telecoms External Access"; - dir = 1; - network = list("SS13","Telecoms") - }, -/turf/open/floor/plasteel, -/area/tcommsat/computer) -"bNX" = ( -/obj/machinery/light, -/turf/open/floor/plasteel/yellow/side, -/area/atmos) -"bNY" = ( -/obj/machinery/computer/atmos_control/tank{ - frequency = 1441; - input_tag = "o2_in"; - name = "Oxygen Supply Control"; - output_tag = "o2_out"; - sensors = list("o2_sensor" = "Tank") - }, -/turf/open/floor/plasteel/yellow/side, -/area/atmos) -"bNZ" = ( -/obj/machinery/atmospherics/pipe/manifold/cyan/visible{ - dir = 8 - }, -/turf/open/floor/plasteel/yellow/side, -/area/atmos) -"bOa" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/visible, -/turf/open/floor/plasteel/yellow/side, -/area/atmos) -"bOb" = ( -/obj/machinery/computer/atmos_control/tank{ - frequency = 1441; - input_tag = "air_in"; - name = "Mixed Air Supply Control"; - output_tag = "air_out"; - sensors = list("air_sensor" = "Tank") - }, -/turf/open/floor/plasteel/yellow/side, -/area/atmos) -"bOc" = ( -/obj/structure/lattice, -/obj/machinery/camera/motion{ - c_tag = "Telecoms External Port"; - dir = 8; - network = list("Telecoms") - }, -/turf/open/space, -/area/space) -"bOd" = ( -/obj/machinery/light, -/obj/machinery/atmospherics/components/binary/pump{ - dir = 4; - name = "Air Outlet Pump"; - on = 1 - }, -/turf/open/floor/plasteel/yellow/side, -/area/atmos) -"bOe" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/visible{ - dir = 4 - }, -/turf/open/floor/plasteel/yellow/side, -/area/atmos) -"bOf" = ( -/obj/structure/lattice, -/obj/machinery/camera/motion{ - c_tag = "Telecoms External Starboard"; - dir = 4; - network = list("Telecoms") - }, -/turf/open/space, -/area/space) -"bOg" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/visible{ - dir = 4 - }, -/turf/open/floor/plasteel/yellow/side{ - dir = 6 - }, -/area/atmos) -"bOh" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4"; - tag = "" - }, -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"bOi" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8"; - tag = "" - }, -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"bOj" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/engine/chiefs_office) -"bOk" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/engine/chiefs_office) -"bOl" = ( -/obj/machinery/door/airlock/glass_command{ - name = "Chief Engineer"; - req_access_txt = "56" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/engine/chiefs_office) -"bOm" = ( -/turf/closed/wall, -/area/engine/chiefs_office) -"bOn" = ( -/obj/machinery/computer/atmos_alert, -/turf/open/floor/plasteel/yellow/side{ - dir = 1 - }, -/area/engine/engineering) -"bOo" = ( -/obj/machinery/computer/monitor{ - name = "Engineering Power Monitoring Console" - }, -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/turf/open/floor/plasteel/yellow/side{ - dir = 1 - }, -/area/engine/engineering) -"bOp" = ( -/obj/machinery/computer/station_alert, -/turf/open/floor/plasteel/yellow/side{ - dir = 1 - }, -/area/engine/engineering) -"bOq" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'HIGH VOLTAGE'"; - icon_state = "shock"; - name = "HIGH VOLTAGE" - }, -/turf/open/floor/plating, -/area/engine/engine_smes) -"bOr" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plating, -/area/engine/engine_smes) -"bOs" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass_engineering{ - name = "Power Storage"; - req_access_txt = "11"; - req_one_access_txt = "0" - }, -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/engine/engine_smes) -"bOt" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/engine/engine_smes) -"bOu" = ( -/obj/machinery/vending/engivend, -/turf/open/floor/plasteel/yellow/side{ - dir = 1 - }, -/area/engine/engineering) -"bOv" = ( -/obj/machinery/vending/tool, -/turf/open/floor/plasteel/yellow/side{ - dir = 1 - }, -/area/engine/engineering) -"bOw" = ( -/obj/structure/closet/firecloset, -/turf/open/floor/plasteel/yellow/side{ - dir = 1 - }, -/area/engine/engineering) -"bOx" = ( -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/engine/engineering) -"bOy" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/engine/engineering) -"bOz" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/engine/engineering) -"bOA" = ( -/obj/structure/grille, -/obj/machinery/atmospherics/pipe/simple/green/visible, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/atmos) -"bOB" = ( -/obj/machinery/atmospherics/components/binary/pump{ - dir = 0; - name = "Waste to Space"; - on = 0 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bOC" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/visible, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/green/visible{ - dir = 4; - initialize_directions = 12 - }, -/turf/open/floor/plating, -/area/atmos) -"bOD" = ( -/obj/machinery/door/airlock/external{ - cyclelinkeddir = 2; - name = "Atmospherics External Access"; - req_access = null; - req_access_txt = "24" - }, -/turf/open/floor/plating, -/area/atmos) -"bOE" = ( -/obj/structure/table_frame/wood, -/turf/open/floor/plating, -/area/maintenance/aft) -"bOF" = ( -/obj/item/trash/candy, -/turf/open/floor/plating, -/area/maintenance/aft) -"bOG" = ( -/turf/open/space, -/area/space/nearstation) -"bOH" = ( -/obj/structure/lattice, -/turf/open/space, -/area/space/nearstation) -"bOI" = ( -/obj/machinery/power/apc{ - cell_type = 5000; - dir = 8; - name = "Engineering Maintenance APC"; - pixel_x = -25; - pixel_y = 1 - }, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"bOJ" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4"; - tag = "" - }, -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"bOK" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/door/airlock/maintenance{ - name = "Engineering Maintenance"; - req_access_txt = "10" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plating, -/area/engine/engineering) -"bOL" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 6 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"bOM" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/engine/engineering) -"bON" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4"; - tag = "" - }, -/obj/structure/disposalpipe/sortjunction{ - dir = 8; - icon_state = "pipe-j1s"; - sortType = 5 - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/open/floor/plasteel, -/area/engine/engineering) -"bOO" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"bOP" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/camera{ - c_tag = "Engineering Port Fore"; - dir = 2; - network = list("SS13") - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/sign/map{ - icon_state = "map-pubby"; - pixel_y = 32 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"bOQ" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"bOR" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4"; - tag = "90Curve" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"bOS" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"bOT" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/airalarm{ - dir = 2; - pixel_y = 22 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"bOU" = ( -/obj/structure/cable{ - icon_state = "1-8" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4"; - tag = "90Curve" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"bOV" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"bOW" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/open/floor/plasteel, -/area/engine/engineering) -"bOX" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"bOY" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/firealarm{ - dir = 1; - pixel_y = 29 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"bOZ" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/camera{ - c_tag = "Engineering Starboard Fore"; - dir = 2; - network = list("SS13") - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/item/device/radio/intercom{ - dir = 0; - name = "Station Intercom (General)"; - pixel_x = 0; - pixel_y = 26 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"bPa" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/structure/disposalpipe/sortjunction{ - dir = 8; - icon_state = "pipe-j2s"; - sortType = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"bPb" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 9; - pixel_y = 0 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"bPc" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/engine/engineering) -"bPd" = ( -/turf/open/floor/plasteel, -/area/engine/engineering) -"bPe" = ( -/obj/structure/lattice, -/obj/machinery/atmospherics/pipe/simple/green/visible, -/turf/open/space, -/area/space) -"bPf" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall/r_wall, -/area/atmos) -"bPg" = ( -/obj/structure/lattice, -/obj/machinery/atmospherics/pipe/simple/cyan/visible, -/turf/open/space, -/area/space) -"bPh" = ( -/obj/machinery/light/small{ - dir = 8 - }, -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; - icon_state = "space"; - layer = 4; - name = "EXTERNAL AIRLOCK"; - pixel_x = -32; - pixel_y = 0 - }, -/turf/open/floor/plating, -/area/atmos) -"bPi" = ( -/obj/structure/table_frame/wood, -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plating, -/area/maintenance/aft) -"bPj" = ( -/obj/item/weapon/bikehorn/rubberducky, -/turf/open/floor/plating, -/area/maintenance/aft) -"bPk" = ( -/turf/closed/wall/r_wall, -/area/maintenance/aft) -"bPl" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/engine/engineering) -"bPm" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 8; - initialize_directions = 11 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"bPn" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"bPo" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 1; - initialize_directions = 11 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"bPp" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"bPq" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 1; - initialize_directions = 11 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"bPr" = ( -/obj/machinery/holopad, -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/engine/engineering) -"bPs" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/engine/engineering) -"bPt" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"bPu" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"bPv" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"bPw" = ( -/obj/machinery/disposal/bin, -/obj/structure/disposalpipe/trunk{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"bPx" = ( -/obj/machinery/atmospherics/pipe/simple, -/obj/structure/grille, -/obj/machinery/meter, -/turf/closed/wall/r_wall, -/area/atmos) -"bPy" = ( -/obj/machinery/atmospherics/pipe/simple, -/obj/structure/grille, -/obj/machinery/meter{ - name = "Mixed Air Tank In" - }, -/turf/closed/wall/r_wall, -/area/atmos) -"bPz" = ( -/obj/machinery/atmospherics/pipe/simple, -/obj/structure/grille, -/obj/machinery/meter{ - name = "Mixed Air Tank Out" - }, -/turf/closed/wall/r_wall, -/area/atmos) -"bPA" = ( -/obj/machinery/door/airlock/external{ - cyclelinkeddir = 1; - name = "Atmospherics External Access"; - req_access = null; - req_access_txt = "24" - }, -/turf/open/floor/plating, -/area/atmos) -"bPB" = ( -/obj/structure/plasticflaps{ - opacity = 1 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/engine/engineering) -"bPC" = ( -/obj/machinery/door/window/southleft{ - base_state = "left"; - dir = 4; - icon_state = "left"; - name = "Engineering Delivery"; - req_access_txt = "10" - }, -/obj/machinery/navbeacon{ - codes_txt = "delivery;dir=4"; - freq = 1400; - location = "Engineering" - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/engine/engineering) -"bPD" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/loadingarea{ - dir = 4 - }, -/area/engine/engineering) -"bPE" = ( -/obj/structure/chair/stool, -/turf/open/floor/plasteel, -/area/engine/engineering) -"bPF" = ( -/obj/structure/chair/stool, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/engine/engineering) -"bPG" = ( -/obj/structure/chair/stool, -/obj/effect/landmark/start{ - name = "Station Engineer" - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"bPH" = ( -/obj/structure/rack{ - dir = 8; - layer = 2.9 - }, -/obj/item/weapon/storage/belt/utility, -/obj/item/clothing/head/welding{ - pixel_x = -3; - pixel_y = 5 - }, -/obj/item/clothing/glasses/meson{ - pixel_x = 3; - pixel_y = -4 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"bPI" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"bPJ" = ( -/obj/structure/cable/yellow{ - d1 = 2; - d2 = 4; - icon_state = "2-4"; - tag = "" - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"bPK" = ( -/obj/structure/cable/yellow{ - icon_state = "1-4"; - d1 = 1; - d2 = 4 - }, -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 8; - icon_state = "1-8"; - tag = "" - }, -/obj/machinery/camera{ - c_tag = "Engineering Central"; - dir = 1; - network = list("SS13") - }, -/obj/machinery/light, -/turf/open/floor/plasteel, -/area/engine/engineering) -"bPL" = ( -/obj/structure/cable/yellow{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"bPM" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"bPN" = ( -/obj/structure/rack{ - dir = 8; - layer = 2.9 - }, -/obj/item/clothing/mask/gas{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/clothing/mask/gas, -/obj/item/clothing/mask/gas{ - pixel_x = -3; - pixel_y = -3 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"bPO" = ( -/obj/structure/table, -/obj/item/weapon/airlock_painter{ - pixel_y = 3 - }, -/obj/item/device/flashlight, -/turf/open/floor/plasteel, -/area/engine/engineering) -"bPP" = ( -/obj/structure/table, -/obj/item/weapon/electronics/airlock, -/obj/item/weapon/electronics/airlock, -/obj/item/weapon/electronics/apc, -/obj/item/weapon/stock_parts/cell/high/plus, -/obj/item/weapon/stock_parts/cell/high/plus, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/item/stack/cable_coil, -/turf/open/floor/plasteel, -/area/engine/engineering) -"bPQ" = ( -/obj/structure/closet/wardrobe/engineering_yellow, -/turf/open/floor/plasteel, -/area/engine/engineering) -"bPR" = ( -/obj/machinery/atmospherics/components/unary/outlet_injector/on{ - dir = 1; - frequency = 1441; - id = "n2_in" - }, -/turf/open/floor/engine/n2, -/area/atmos) -"bPS" = ( -/obj/machinery/air_sensor{ - frequency = 1441; - id_tag = "n2_sensor" - }, -/turf/open/floor/engine/n2, -/area/atmos) -"bPT" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - external_pressure_bound = 0; - frequency = 1441; - id_tag = "n2_out"; - initialize_directions = 1; - internal_pressure_bound = 4000; - on = 1; - pressure_checks = 2; - pump_direction = 0 - }, -/turf/open/floor/engine/n2, -/area/atmos) -"bPU" = ( -/obj/machinery/atmospherics/components/unary/outlet_injector/on{ - dir = 1; - frequency = 1441; - id = "o2_in" - }, -/turf/open/floor/engine/o2, -/area/atmos) -"bPV" = ( -/obj/machinery/air_sensor{ - frequency = 1441; - id_tag = "o2_sensor" - }, -/turf/open/floor/engine/o2, -/area/atmos) -"bPW" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - external_pressure_bound = 0; - frequency = 1441; - id_tag = "o2_out"; - initialize_directions = 1; - internal_pressure_bound = 4000; - on = 1; - pressure_checks = 2; - pump_direction = 0 - }, -/turf/open/floor/engine/o2, -/area/atmos) -"bPX" = ( -/obj/machinery/atmospherics/components/unary/outlet_injector/on{ - dir = 1; - frequency = 1441; - id = "air_in" - }, -/turf/open/floor/engine/air, -/area/atmos) -"bPY" = ( -/obj/machinery/air_sensor{ - frequency = 1441; - id_tag = "air_sensor" - }, -/turf/open/floor/engine/air, -/area/atmos) -"bPZ" = ( -/obj/machinery/atmospherics/components/unary/vent_pump/high_volume{ - dir = 1; - external_pressure_bound = 0; - frequency = 1441; - icon_state = "vent_map"; - id_tag = "air_out"; - internal_pressure_bound = 2000; - on = 1; - pressure_checks = 2; - pump_direction = 0 - }, -/turf/open/floor/engine/air, -/area/atmos) -"bQa" = ( -/obj/structure/rack, -/obj/item/weapon/paper, -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plating, -/area/maintenance/aft) -"bQb" = ( -/obj/item/toy/beach_ball{ - desc = "The simple beach ball is one of Nanotrasen's most popular products. 'Why do we make beach balls? Because we can! (TM)' - Nanotrasen"; - item_state = "beachball"; - name = "NanoTrasen-brand beach ball"; - pixel_y = 7 - }, -/turf/open/floor/plating/airless, -/area/space/nearstation) -"bQc" = ( -/obj/item/weapon/phone, -/turf/open/floor/plating/airless, -/area/space/nearstation) -"bQd" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/light{ - dir = 8 - }, -/obj/item/device/radio/intercom{ - dir = 0; - name = "Station Intercom (General)"; - pixel_x = -27 - }, -/turf/open/floor/plasteel/warning/corner{ - dir = 1 - }, -/area/engine/engineering) -"bQe" = ( -/obj/structure/table, -/obj/item/weapon/pen, -/obj/item/weapon/storage/belt/utility, -/obj/item/clothing/glasses/meson, -/obj/item/weapon/paper_bin{ - layer = 2.9; - pixel_x = 0; - pixel_y = 0; - tag = "every single paper bin is edited to this" - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"bQf" = ( -/obj/structure/table, -/obj/item/weapon/book/manual/wiki/engineering_hacking{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/book/manual/wiki/engineering_construction, -/obj/item/clothing/gloves/color/yellow, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/engine/engineering) -"bQg" = ( -/obj/structure/table, -/obj/item/weapon/book/manual/engineering_singularity_safety{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/book/manual/wiki/engineering_guide, -/obj/item/weapon/book/manual/engineering_particle_accelerator{ - pixel_x = -3; - pixel_y = -3 - }, -/obj/item/clothing/gloves/color/yellow, -/turf/open/floor/plasteel, -/area/engine/engineering) -"bQh" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - external_pressure_bound = 101.325; - on = 1; - pressure_checks = 1 - }, -/obj/effect/landmark/event_spawn, -/turf/open/floor/plasteel, -/area/engine/engineering) -"bQi" = ( -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/obj/structure/closet/radiation, -/turf/open/floor/plasteel, -/area/engine/engineering) -"bQj" = ( -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'RADIOACTIVE AREA'"; - icon_state = "radiation"; - name = "RADIOACTIVE AREA"; - pixel_x = 0; - pixel_y = 0 - }, -/turf/closed/wall/r_wall, -/area/engine/engineering) -"bQk" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "Singularity"; - name = "radiation shutters" - }, -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/bot{ - dir = 2 - }, -/area/engine/engineering) -"bQl" = ( -/obj/machinery/light{ - dir = 8 - }, -/obj/structure/closet/secure_closet/engineering_welding, -/turf/open/floor/plasteel, -/area/engine/engineering) -"bQm" = ( -/obj/structure/table, -/obj/item/clothing/gloves/color/yellow, -/obj/item/weapon/storage/belt/utility, -/obj/item/clothing/glasses/meson, -/turf/open/floor/plasteel, -/area/engine/engineering) -"bQn" = ( -/obj/structure/table, -/obj/machinery/cell_charger, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"bQo" = ( -/obj/effect/landmark/start{ - name = "Station Engineer" - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"bQp" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 9 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"bQq" = ( -/obj/structure/closet/secure_closet/engineering_personal, -/obj/machinery/light{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"bQr" = ( -/turf/open/floor/engine/n2, -/area/atmos) -"bQs" = ( -/obj/machinery/portable_atmospherics/canister/nitrogen, -/turf/open/floor/engine/n2, -/area/atmos) -"bQt" = ( -/turf/open/floor/engine/o2, -/area/atmos) -"bQu" = ( -/obj/machinery/portable_atmospherics/canister/oxygen, -/turf/open/floor/engine/o2, -/area/atmos) -"bQv" = ( -/obj/effect/landmark{ - name = "xeno_spawn"; - pixel_x = -1 - }, -/turf/open/floor/engine/air, -/area/atmos) -"bQw" = ( -/obj/machinery/portable_atmospherics/canister/air, -/obj/effect/landmark/event_spawn, -/turf/open/floor/engine/air, -/area/atmos) -"bQx" = ( -/turf/open/floor/engine/air, -/area/atmos) -"bQy" = ( -/obj/item/trash/tray, -/turf/open/floor/plating{ - icon_state = "platingdmg3" - }, -/area/maintenance/aft) -"bQz" = ( -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plating{ - icon_state = "platingdmg3" - }, -/area/maintenance/aft) -"bQA" = ( -/obj/machinery/shieldgen, -/turf/open/floor/plating, -/area/engine/engineering) -"bQB" = ( -/obj/machinery/shieldgen, -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/plating, -/area/engine/engineering) -"bQC" = ( -/turf/open/floor/plating, -/area/engine/engineering) -"bQD" = ( -/obj/machinery/door/poddoor{ - id = "Secure Storage"; - name = "secure storage" - }, -/turf/open/floor/plating/warnplate{ - dir = 4 - }, -/area/engine/engineering) -"bQE" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/engine/engineering) -"bQF" = ( -/obj/structure/closet/radiation, -/obj/structure/extinguisher_cabinet{ - pixel_x = 27; - pixel_y = 0 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"bQG" = ( -/turf/open/floor/plating/warnplate{ - dir = 9 - }, -/area/engine/engineering) -"bQH" = ( -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plating/warnplate{ - dir = 1 - }, -/area/engine/engineering) -"bQI" = ( -/obj/machinery/camera{ - c_tag = "Engineering Center"; - dir = 2; - pixel_x = 23 - }, -/obj/machinery/light{ - dir = 1 - }, -/turf/open/floor/plating/warnplate{ - dir = 1 - }, -/area/engine/engineering) -"bQJ" = ( -/turf/open/floor/plating/warnplate{ - dir = 5 - }, -/area/engine/engineering) -"bQK" = ( -/obj/structure/closet/secure_closet/engineering_electrical, -/obj/structure/extinguisher_cabinet{ - pixel_x = -27; - pixel_y = 0 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"bQL" = ( -/obj/structure/table, -/obj/item/weapon/storage/toolbox/mechanical{ - pixel_x = 2; - pixel_y = 4 - }, -/obj/item/weapon/storage/toolbox/mechanical{ - pixel_x = -2 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"bQM" = ( -/obj/structure/table, -/obj/item/weapon/storage/toolbox/electrical{ - pixel_x = 2; - pixel_y = 4 - }, -/obj/item/weapon/storage/toolbox/electrical{ - pixel_x = -2 - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"bQN" = ( -/obj/structure/closet/secure_closet/engineering_personal, -/turf/open/floor/plasteel, -/area/engine/engineering) -"bQO" = ( -/obj/machinery/light/small, -/turf/open/floor/engine/n2, -/area/atmos) -"bQP" = ( -/obj/machinery/light/small, -/turf/open/floor/engine/o2, -/area/atmos) -"bQQ" = ( -/obj/machinery/light/small, -/turf/open/floor/engine/air, -/area/atmos) -"bQR" = ( -/obj/structure/table, -/obj/item/weapon/wirecutters, -/obj/effect/spawner/lootdrop/maintenance, -/obj/machinery/light/small{ - brightness = 3; - dir = 8 - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"bQS" = ( -/obj/structure/table, -/obj/item/weapon/storage/fancy/cigarettes/cigpack_robustgold, -/obj/effect/decal/cleanable/deadcockroach, -/turf/open/floor/plating, -/area/maintenance/aft) -"bQT" = ( -/obj/structure/closet/emcloset, -/turf/open/floor/plating{ - icon_state = "platingdmg3" - }, -/area/maintenance/aft) -"bQU" = ( -/turf/open/floor/plating{ - icon_state = "panelscorched" - }, -/area/maintenance/aft) -"bQV" = ( -/obj/machinery/field/generator, -/turf/open/floor/plating, -/area/engine/engineering) -"bQW" = ( -/obj/structure/closet/crate, -/obj/item/stack/sheet/metal{ - amount = 50 - }, -/obj/item/stack/rods{ - amount = 50 - }, -/obj/item/stack/sheet/glass{ - amount = 50 - }, -/obj/item/weapon/electronics/airlock, -/obj/item/weapon/electronics/airlock, -/obj/item/weapon/stock_parts/cell/high/plus, -/obj/item/stack/sheet/mineral/plasma{ - amount = 30 - }, -/turf/open/floor/plating, -/area/engine/engineering) -"bQX" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/engine/engineering) -"bQY" = ( -/obj/structure/cable/yellow{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"bQZ" = ( -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/cable/yellow{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"bRa" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "Singularity"; - name = "radiation shutters" - }, -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/bot{ - dir = 2 - }, -/area/engine/engineering) -"bRb" = ( -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/cable/yellow{ - d1 = 2; - d2 = 4; - icon_state = "2-4"; - tag = "" - }, -/turf/open/floor/plating/warnplate{ - dir = 8 - }, -/area/engine/engineering) -"bRc" = ( -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/turf/open/floor/plating, -/area/engine/engineering) -"bRd" = ( -/obj/structure/particle_accelerator/end_cap, -/turf/open/floor/plating, -/area/engine/engineering) -"bRe" = ( -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/effect/landmark/event_spawn, -/turf/open/floor/plating, -/area/engine/engineering) -"bRf" = ( -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/floor/plating/warnplate{ - dir = 4 - }, -/area/engine/engineering) -"bRg" = ( -/obj/structure/cable/yellow{ - d1 = 2; - d2 = 8; - icon_state = "2-8"; - tag = "" - }, -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"bRh" = ( -/obj/structure/cable/yellow{ - d1 = 2; - d2 = 8; - icon_state = "2-8"; - tag = "" - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"bRi" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"bRj" = ( -/obj/item/weapon/shovel, -/turf/open/floor/plating, -/area/maintenance/aft) -"bRk" = ( -/obj/machinery/portable_atmospherics/canister/toxins, -/turf/open/floor/plating, -/area/engine/engineering) -"bRl" = ( -/obj/machinery/power/port_gen/pacman, -/turf/open/floor/plating, -/area/engine/engineering) -"bRm" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/warning/corner{ - dir = 4 - }, -/area/engine/engineering) -"bRn" = ( -/turf/open/floor/plasteel/warning/corner, -/area/engine/engineering) -"bRo" = ( -/turf/open/floor/plasteel/warning, -/area/engine/engineering) -"bRp" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/warning, -/area/engine/engineering) -"bRq" = ( -/obj/machinery/camera{ - c_tag = "Engineering Port Aft"; - dir = 1; - network = list("SS13") - }, -/obj/machinery/light, -/turf/open/floor/plasteel/warning, -/area/engine/engineering) -"bRr" = ( -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/yellow/side, -/area/engine/engineering) -"bRs" = ( -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/button/door{ - id = "Singularity"; - name = "Shutters Control"; - pixel_x = 25; - pixel_y = 0; - req_access_txt = "11" - }, -/turf/open/floor/plasteel/yellow/side, -/area/engine/engineering) -"bRt" = ( -/obj/machinery/button/door{ - id = "Singularity"; - name = "Shutters Control"; - pixel_x = -25; - pixel_y = 0; - req_access_txt = "11" - }, -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plating/warnplate{ - dir = 8 - }, -/area/engine/engineering) -"bRu" = ( -/obj/machinery/particle_accelerator/control_box, -/obj/structure/cable/yellow, -/turf/open/floor/plating, -/area/engine/engineering) -"bRv" = ( -/obj/structure/particle_accelerator/fuel_chamber, -/turf/open/floor/plating, -/area/engine/engineering) -"bRw" = ( -/obj/effect/landmark/start{ - name = "Station Engineer" - }, -/turf/open/floor/plating, -/area/engine/engineering) -"bRx" = ( -/obj/machinery/button/door{ - id = "Singularity"; - name = "Shutters Control"; - pixel_x = 25; - pixel_y = 0; - req_access_txt = "11" - }, -/turf/open/floor/plating/warnplate{ - dir = 4 - }, -/area/engine/engineering) -"bRy" = ( -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/button/door{ - id = "Singularity"; - name = "Shutters Control"; - pixel_x = -25; - pixel_y = 0; - req_access_txt = "11" - }, -/turf/open/floor/plasteel/yellow/side, -/area/engine/engineering) -"bRz" = ( -/obj/machinery/camera{ - c_tag = "Engineering Starboard Aft"; - dir = 1; - network = list("SS13") - }, -/obj/machinery/light, -/turf/open/floor/plasteel/warning, -/area/engine/engineering) -"bRA" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/warning, -/area/engine/engineering) -"bRB" = ( -/obj/structure/reagent_dispensers/fueltank, -/turf/open/floor/plasteel/warning/corner{ - dir = 1 - }, -/area/engine/engineering) -"bRC" = ( -/obj/structure/reagent_dispensers/watertank, -/turf/open/floor/plasteel, -/area/engine/engineering) -"bRD" = ( -/obj/structure/closet/crate/medical, -/obj/item/stack/medical/gauze, -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plating, -/area/maintenance/aft) -"bRE" = ( -/obj/structure/bed, -/obj/item/weapon/bedsheet/random, -/obj/structure/table/optable, -/turf/open/floor/plating, -/area/maintenance/aft) -"bRF" = ( -/obj/machinery/power/emitter, -/turf/open/floor/plating, -/area/engine/engineering) -"bRG" = ( -/obj/machinery/door/airlock/engineering{ - name = "Telecommunications Transit Tube"; - req_access_txt = "10; 61" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/engine/engineering) -"bRH" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/door/airlock/external{ - cyclelinkeddir = 2; - name = "Engineering External Access"; - req_access = null; - req_access_txt = "10;13" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/engine/engineering) -"bRI" = ( -/obj/machinery/door/poddoor/shutters/preopen{ - id = "Singularity"; - name = "radiation shutters" - }, -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plating/warnplate{ - dir = 1 - }, -/area/engine/engineering) -"bRJ" = ( -/obj/item/stack/cable_coil{ - pixel_x = 3; - pixel_y = -7 - }, -/obj/item/stack/cable_coil{ - pixel_x = 3; - pixel_y = -7 - }, -/obj/item/weapon/crowbar, -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plating/warnplate{ - dir = 8 - }, -/area/engine/engineering) -"bRK" = ( -/obj/structure/chair/stool, -/turf/open/floor/plating, -/area/engine/engineering) -"bRL" = ( -/obj/structure/particle_accelerator/power_box, -/turf/open/floor/plating, -/area/engine/engineering) -"bRM" = ( -/obj/item/weapon/screwdriver, -/turf/open/floor/plating, -/area/engine/engineering) -"bRN" = ( -/turf/open/floor/plating/warnplate{ - dir = 4 - }, -/area/engine/engineering) -"bRO" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/door/airlock/external{ - cyclelinkeddir = 2; - name = "Engineering External Access"; - req_access = null; - req_access_txt = "10;13" - }, -/turf/open/floor/plating, -/area/engine/engineering) -"bRP" = ( -/obj/effect/landmark{ - name = "xeno_spawn"; - pixel_x = -1 - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"bRQ" = ( -/obj/effect/decal/cleanable/robot_debris{ - icon_state = "gib7" - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"bRR" = ( -/obj/item/device/radio, -/turf/open/floor/plating, -/area/maintenance/aft) -"bRS" = ( -/obj/effect/spawner/lootdrop/maintenance, -/obj/structure/grille/broken, -/turf/open/floor/plating, -/area/maintenance/aft) -"bRT" = ( -/obj/machinery/field/generator, -/turf/open/floor/plating, -/area/maintenance/aft) -"bRU" = ( -/obj/machinery/power/emitter, -/turf/open/floor/plating, -/area/maintenance/aft) -"bRV" = ( -/obj/effect/decal/cleanable/cobweb, -/turf/open/floor/plating/warnplate{ - dir = 4 - }, -/area/engine/engineering) -"bRW" = ( -/obj/structure/sign/poster{ - pixel_x = 0; - pixel_y = 32 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - external_pressure_bound = 101.325; - on = 1; - pressure_checks = 1 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"bRX" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 9; - pixel_y = 0 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"bRY" = ( -/obj/machinery/light/small{ - dir = 8 - }, -/obj/structure/closet/emcloset{ - anchored = 1; - desc = "It's a storage unit for emergency breath masks and O2 tanks, and is securely bolted in place."; - name = "anchored emergency closet" - }, -/turf/open/floor/plating, -/area/engine/engineering) -"bRZ" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; - icon_state = "space"; - layer = 4; - name = "EXTERNAL AIRLOCK"; - pixel_x = 32 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/engine/engineering) -"bSa" = ( -/obj/machinery/power/rad_collector{ - anchored = 1 - }, -/obj/item/weapon/tank/internals/plasma, -/obj/structure/cable/yellow, -/turf/open/floor/plating/warnplate{ - dir = 1 - }, -/area/engine/engineering) -"bSb" = ( -/obj/machinery/power/rad_collector{ - anchored = 1 - }, -/obj/structure/cable/yellow, -/turf/open/floor/plating/warnplate{ - dir = 1 - }, -/area/engine/engineering) -"bSc" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/engine/engineering) -"bSd" = ( -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plating/warnplate{ - dir = 8 - }, -/area/engine/engineering) -"bSe" = ( -/obj/structure/particle_accelerator/particle_emitter/left, -/turf/open/floor/plating, -/area/engine/engineering) -"bSf" = ( -/obj/structure/particle_accelerator/particle_emitter/center, -/turf/open/floor/plating, -/area/engine/engineering) -"bSg" = ( -/obj/structure/particle_accelerator/particle_emitter/right, -/turf/open/floor/plating, -/area/engine/engineering) -"bSh" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; - icon_state = "space"; - layer = 4; - name = "EXTERNAL AIRLOCK"; - pixel_x = -32 - }, -/turf/open/floor/plating, -/area/engine/engineering) -"bSi" = ( -/obj/machinery/light/small{ - dir = 4 - }, -/obj/structure/closet/emcloset{ - anchored = 1; - desc = "It's a storage unit for emergency breath masks and O2 tanks, and is securely bolted in place."; - name = "anchored emergency closet" - }, -/turf/open/floor/plating, -/area/engine/engineering) -"bSj" = ( -/obj/docking_port/stationary{ - dheight = 9; - dir = 2; - dwidth = 5; - height = 24; - id = "syndicate_se"; - name = "southeast of station"; - turf_type = /turf/open/space; - width = 18 - }, -/turf/open/space, -/area/space) -"bSk" = ( -/obj/structure/chair, -/obj/item/weapon/cigbutt, -/turf/open/floor/plating, -/area/maintenance/aft) -"bSl" = ( -/obj/item/weapon/reagent_containers/food/drinks/soda_cans/cola, -/turf/open/floor/plating, -/area/maintenance/aft) -"bSm" = ( -/obj/structure/transit_tube_pod, -/obj/structure/transit_tube/station/reverse{ - dir = 4 - }, -/turf/open/floor/plating/warnplate{ - dir = 4 - }, -/area/engine/engineering) -"bSn" = ( -/obj/machinery/camera{ - c_tag = "Engineering Telecoms Access"; - dir = 8; - network = list("Labor") - }, -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/obj/machinery/computer/security/telescreen{ - desc = "Used for watching telecoms."; - dir = 8; - layer = 4; - name = "Telecoms Telescreen"; - network = list("Telecoms"); - pixel_x = 30; - pixel_y = 0 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"bSo" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/door/airlock/external{ - cyclelinkeddir = 1; - name = "Engineering External Access"; - req_access = null; - req_access_txt = "10;13" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/engine/engineering) -"bSp" = ( -/obj/structure/cable/yellow{ - icon_state = "1-4"; - d1 = 1; - d2 = 4 - }, -/turf/open/floor/plating/warnplate{ - dir = 10 - }, -/area/engine/engineering) -"bSq" = ( -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/turf/open/floor/plating/warnplate, -/area/engine/engineering) -"bSr" = ( -/obj/item/weapon/wirecutters, -/obj/structure/cable/yellow{ - d1 = 2; - d2 = 8; - icon_state = "2-8"; - tag = "" - }, -/turf/open/floor/plating/warnplate, -/area/engine/engineering) -"bSs" = ( -/turf/open/floor/plating/warnplate, -/area/engine/engineering) -"bSt" = ( -/turf/open/floor/plating/warnplate{ - dir = 6 - }, -/area/engine/engineering) -"bSu" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/door/airlock/external{ - cyclelinkeddir = 1; - name = "Engineering External Access"; - req_access = null; - req_access_txt = "10;13" - }, -/turf/open/floor/plating, -/area/engine/engineering) -"bSv" = ( -/obj/structure/lattice, -/obj/machinery/camera/motion{ - c_tag = "Telecoms External Port Aft"; - dir = 2; - network = list("Telecoms") - }, -/turf/open/space, -/area/space) -"bSw" = ( -/obj/structure/lattice, -/obj/machinery/camera/motion{ - c_tag = "Telecoms External Starboard Aft"; - dir = 2; - network = list("Telecoms") - }, -/turf/open/space, -/area/space) -"bSx" = ( -/obj/structure/transit_tube, -/turf/open/floor/plating/warnplate{ - dir = 4 - }, -/area/engine/engineering) -"bSy" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"bSz" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall/r_wall, -/area/engine/engineering) -"bSA" = ( -/obj/structure/grille, -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating/airless, -/area/engine/engineering) -"bSB" = ( -/obj/structure/cable{ - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 9 - }, -/turf/open/floor/plating/airless, -/area/engine/engineering) -"bSC" = ( -/obj/machinery/camera/emp_proof{ - c_tag = "Engine Containment Port Fore"; - dir = 2; - network = list("Singularity") - }, -/turf/open/floor/plating/airless, -/area/engine/engineering) -"bSD" = ( -/obj/machinery/power/grounding_rod, -/turf/open/floor/plating/airless, -/area/engine/engineering) -"bSE" = ( -/turf/open/floor/plating/airless, -/area/engine/engineering) -"bSF" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plating, -/area/engine/engineering) -"bSG" = ( -/obj/machinery/camera/emp_proof{ - c_tag = "Engine Containment Starboard Fore"; - dir = 2; - network = list("Singularity") - }, -/turf/open/floor/plating/airless, -/area/engine/engineering) -"bSH" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/turf/open/floor/plating/airless, -/area/engine/engineering) -"bSI" = ( -/obj/structure/grille, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/turf/open/floor/plating/airless, -/area/engine/engineering) -"bSJ" = ( -/obj/structure/window/reinforced/fulltile, -/obj/structure/transit_tube, -/turf/open/floor/plating, -/area/engine/engineering) -"bSK" = ( -/obj/machinery/door/airlock/external{ - cyclelinkeddir = 2; - name = "Engineering External Access"; - req_access = null; - req_access_txt = "61" - }, -/turf/open/floor/plating, -/area/engine/engineering) -"bSL" = ( -/obj/structure/grille, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plating/airless, -/area/engine/engineering) -"bSM" = ( -/obj/structure/cable/yellow{ - d1 = 2; - d2 = 4; - icon_state = "2-4"; - tag = "" - }, -/turf/open/floor/plating/airless, -/area/engine/engineering) -"bSN" = ( -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/turf/open/floor/plating/airless, -/area/engine/engineering) -"bSO" = ( -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 8; - icon_state = "1-8"; - tag = "" - }, -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 4; - icon_state = "1-4"; - tag = "90Curve" - }, -/turf/open/floor/plating/airless, -/area/engine/engineering) -"bSP" = ( -/obj/structure/cable/yellow{ - d1 = 2; - d2 = 8; - icon_state = "2-8"; - tag = "" - }, -/turf/open/floor/plating/airless, -/area/engine/engineering) -"bSQ" = ( -/obj/structure/transit_tube, -/turf/open/floor/plating, -/area/space) -"bSR" = ( -/obj/machinery/light/small{ - dir = 8 - }, -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; - icon_state = "space"; - layer = 4; - name = "EXTERNAL AIRLOCK"; - pixel_x = -32; - pixel_y = 0 - }, -/turf/open/floor/plating, -/area/engine/engineering) -"bSS" = ( -/obj/structure/grille, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/turf/open/floor/plating/airless, -/area/engine/engineering) -"bST" = ( -/obj/machinery/power/emitter{ - anchored = 1; - dir = 4; - state = 2 - }, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/turf/open/floor/plating/airless, -/area/engine/engineering) -"bSU" = ( -/turf/open/floor/plating/airless/warnplate{ - dir = 8 - }, -/area/engine/engineering) -"bSV" = ( -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plating/airless, -/area/engine/engineering) -"bSW" = ( -/obj/machinery/field/generator{ - anchored = 1; - state = 2 - }, -/turf/open/floor/plating/airless, -/area/space/nearstation) -"bSX" = ( -/turf/open/floor/plating/airless/warnplate{ - dir = 4 - }, -/area/engine/engineering) -"bSY" = ( -/obj/machinery/power/emitter{ - anchored = 1; - dir = 8; - state = 2 - }, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/turf/open/floor/plating/airless, -/area/engine/engineering) -"bSZ" = ( -/obj/structure/grille, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/turf/open/floor/plating/airless, -/area/engine/engineering) -"bTa" = ( -/obj/machinery/door/airlock/external{ - cyclelinkeddir = 1; - name = "Engineering External Access"; - req_access = null; - req_access_txt = "61" - }, -/turf/open/floor/plating, -/area/engine/engineering) -"bTb" = ( -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/cable/yellow{ - icon_state = "1-4"; - d1 = 1; - d2 = 4 - }, -/turf/open/floor/plating/airless, -/area/engine/engineering) -"bTc" = ( -/obj/structure/cable/yellow{ - d2 = 8; - icon_state = "0-8" - }, -/obj/machinery/power/tesla_coil, -/turf/open/floor/plating/airless, -/area/engine/engineering) -"bTd" = ( -/obj/structure/cable/yellow{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/machinery/power/tesla_coil, -/turf/open/floor/plating/airless, -/area/engine/engineering) -"bTe" = ( -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/cable/yellow{ - d1 = 2; - d2 = 8; - icon_state = "2-8"; - tag = "" - }, -/turf/open/floor/plating/airless, -/area/engine/engineering) -"bTf" = ( -/obj/structure/lattice/catwalk, -/turf/open/space, -/area/space/nearstation) -"bTg" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/structure/grille, -/turf/open/floor/plating/airless, -/area/engine/engineering) -"bTh" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/structure/grille, -/turf/open/floor/plating/airless, -/area/engine/engineering) -"bTi" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/structure/grille, -/turf/open/floor/plating/airless, -/area/engine/engineering) -"bTj" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/structure/grille, -/turf/open/floor/plating/airless, -/area/engine/engineering) -"bTk" = ( -/turf/closed/mineral, -/area/mine/explored{ - name = "Bomb Testing Asteroid" - }) -"bTl" = ( -/turf/closed/wall, -/area/mine/explored{ - name = "Bomb Testing Asteroid" - }) -"bTm" = ( -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'BOMB RANGE"; - name = "BOMB RANGE" - }, -/turf/closed/indestructible{ - desc = "A wall impregnated with Fixium, able to withstand massive explosions with ease"; - icon_state = "riveted"; - name = "hyper-reinforced wall" - }, -/area/mine/explored{ - name = "Bomb Testing Asteroid" - }) -"bTn" = ( -/turf/open/floor/plating/asteroid/airless, -/area/mine/explored{ - name = "Bomb Testing Asteroid" - }) -"bTo" = ( -/obj/structure/transit_tube/crossing, -/turf/open/floor/plating, -/area/space) -"bTp" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/grille, -/turf/open/floor/plating/airless, -/area/engine/engineering) -"bTq" = ( -/turf/open/floor/plating/airless/warnplate{ - dir = 9 - }, -/area/space/nearstation) -"bTr" = ( -/turf/open/floor/plating/airless/warnplate{ - dir = 1 - }, -/area/space/nearstation) -"bTs" = ( -/turf/open/floor/plating/airless/warnplate{ - dir = 5 - }, -/area/space/nearstation) -"bTt" = ( -/obj/machinery/camera{ - active_power_usage = 0; - c_tag = "Bomb Testing Asteroid Fore"; - desc = "A specially-reinforced camera with a long lasting battery, used to monitor the bomb testing site. An external light is attached to the top."; - invuln = 1; - luminosity = 3; - name = "Hardened Bomb-Test Camera"; - network = list("Toxins"); - use_power = 0 - }, -/turf/open/floor/plating/asteroid/airless, -/area/mine/explored{ - name = "Bomb Testing Asteroid" - }) -"bTu" = ( -/obj/machinery/light{ - dir = 8 - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/grille, -/turf/open/floor/plating/airless, -/area/engine/engineering) -"bTv" = ( -/obj/machinery/the_singularitygen, -/turf/open/floor/plating/airless/warnplate{ - dir = 8 - }, -/area/space/nearstation) -"bTw" = ( -/obj/machinery/the_singularitygen/tesla, -/turf/open/floor/plating/airless, -/area/space/nearstation) -"bTx" = ( -/turf/open/floor/plating/airless/warnplate{ - dir = 4 - }, -/area/space/nearstation) -"bTy" = ( -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/grille, -/turf/open/floor/plating/airless, -/area/engine/engineering) -"bTz" = ( -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plating/asteroid/airless, -/area/mine/explored{ - name = "Bomb Testing Asteroid" - }) -"bTA" = ( -/turf/open/floor/plating/airless/warnplate{ - dir = 10 - }, -/area/space/nearstation) -"bTB" = ( -/turf/open/floor/plating/airless/warnplate{ - dir = 2 - }, -/area/space/nearstation) -"bTC" = ( -/turf/open/floor/plating/airless/warnplate{ - dir = 6 - }, -/area/space/nearstation) -"bTD" = ( -/turf/closed/mineral/random/low_chance, -/area/mine/explored{ - name = "Bomb Testing Asteroid" - }) -"bTE" = ( -/obj/item/device/radio/beacon, -/obj/effect/landmark{ - name = "revenantspawn" - }, -/turf/open/floor/plating/airless, -/area/mine/explored{ - name = "Bomb Testing Asteroid" - }) -"bTF" = ( -/obj/item/device/flashlight/lantern{ - on = 1 - }, -/turf/open/floor/plating/asteroid/airless, -/area/mine/explored{ - name = "Bomb Testing Asteroid" - }) -"bTG" = ( -/obj/structure/grille, -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/turf/open/floor/plating/airless, -/area/engine/engineering) -"bTH" = ( -/obj/structure/grille, -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/turf/open/floor/plating/airless, -/area/engine/engineering) -"bTI" = ( -/obj/structure/grille, -/turf/open/floor/plating/airless, -/area/engine/engineering) -"bTJ" = ( -/obj/structure/cable/yellow{ - icon_state = "0-2"; - d2 = 2 - }, -/obj/machinery/power/tesla_coil, -/turf/open/floor/plating/airless, -/area/engine/engineering) -"bTK" = ( -/obj/machinery/camera/emp_proof{ - c_tag = "Engine Containment Port Aft"; - dir = 1; - network = list("Singularity") - }, -/turf/open/floor/plating/airless, -/area/engine/engineering) -"bTL" = ( -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 4; - icon_state = "1-4"; - tag = "90Curve" - }, -/turf/open/floor/plating/airless, -/area/engine/engineering) -"bTM" = ( -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 8; - icon_state = "1-8"; - tag = "" - }, -/turf/open/floor/plating/airless, -/area/engine/engineering) -"bTN" = ( -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 8; - icon_state = "1-8"; - tag = "" - }, -/obj/machinery/light, -/turf/open/floor/plating/airless, -/area/engine/engineering) -"bTO" = ( -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 8; - icon_state = "1-8"; - tag = "" - }, -/turf/open/floor/plating/airless, -/area/engine/engineering) -"bTP" = ( -/obj/machinery/camera/emp_proof{ - c_tag = "Engine Containment Starboard Aft"; - dir = 1; - network = list("Singularity") - }, -/turf/open/floor/plating/airless, -/area/engine/engineering) -"bTQ" = ( -/turf/closed/mineral/iron, -/area/mine/explored{ - name = "Bomb Testing Asteroid" - }) -"bTR" = ( -/obj/structure/sign/securearea, -/turf/closed/wall/r_wall, -/area/engine/engineering) -"bTS" = ( -/obj/effect/spawner/lootdrop/maintenance, -/turf/closed/mineral, -/area/mine/explored{ - name = "Bomb Testing Asteroid" - }) -"bTT" = ( -/turf/closed/wall/r_wall, -/area/tcommsat/computer) -"bTU" = ( -/obj/machinery/atmospherics/components/unary/outlet_injector/on{ - dir = 4 - }, -/turf/open/floor/plating/airless, -/area/space) -"bTV" = ( -/obj/structure/lattice, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 10 - }, -/turf/open/space, -/area/space) -"bTW" = ( -/obj/machinery/door/airlock/external{ - cyclelinkeddir = 2; - name = "Telecommunications External Access"; - req_access = null; - req_access_txt = "61" - }, -/turf/open/floor/plating, -/area/tcommsat/computer) -"bTX" = ( -/obj/machinery/light/small{ - brightness = 3; - dir = 8 - }, -/turf/open/floor/plating, -/area/tcommsat/computer) -"bTY" = ( -/obj/structure/closet/emcloset{ - anchored = 1; - desc = "It's a storage unit for emergency breath masks and O2 tanks, and is securely bolted in place."; - name = "anchored emergency closet" - }, -/turf/open/floor/plating, -/area/tcommsat/computer) -"bTZ" = ( -/obj/structure/window/reinforced/fulltile, -/obj/structure/transit_tube, -/turf/open/floor/plating, -/area/tcommsat/computer) -"bUa" = ( -/obj/machinery/door/airlock/external{ - cyclelinkeddir = 1; - name = "Telecommunications External Access"; - req_access = null; - req_access_txt = "61" - }, -/turf/open/floor/plating, -/area/tcommsat/computer) -"bUb" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall/r_wall, -/area/tcommsat/computer) -"bUc" = ( -/obj/docking_port/stationary{ - dheight = 9; - dir = 2; - dwidth = 5; - height = 24; - id = "syndicate_s"; - name = "south of station"; - turf_type = /turf/open/space; - width = 18 - }, -/turf/open/space, -/area/space) -"bUd" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/tcommsat/computer) -"bUe" = ( -/obj/structure/transit_tube, -/turf/open/floor/plating/warnplate{ - dir = 4 - }, -/area/tcommsat/computer) -"bUf" = ( -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/tcommsat/computer) -"bUg" = ( -/turf/open/floor/plasteel, -/area/tcommsat/computer) -"bUh" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - on = 1 - }, -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/tcommsat/computer) -"bUi" = ( -/turf/closed/wall, -/area/tcommsat/computer) -"bUj" = ( -/obj/machinery/atmospherics/components/binary/pump{ - dir = 1; - name = "Waste Out"; - on = 1 - }, -/turf/open/floor/plating, -/area/tcommsat/computer) -"bUk" = ( -/obj/machinery/atmospherics/components/unary/tank/air, -/turf/open/floor/plating, -/area/tcommsat/computer) -"bUl" = ( -/obj/structure/grille, -/obj/structure/lattice, -/obj/structure/lattice, -/turf/open/space, -/area/space) -"bUm" = ( -/obj/structure/transit_tube/station/reverse/flipped{ - dir = 8 - }, -/turf/open/floor/plating/warnplate{ - dir = 4 - }, -/area/tcommsat/computer) -"bUn" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel, -/area/tcommsat/computer) -"bUo" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 1; - initialize_directions = 11 - }, -/obj/item/device/radio/beacon, -/turf/open/floor/plasteel, -/area/tcommsat/computer) -"bUp" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/tcommsat/computer) -"bUq" = ( -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Telecommunications Maintenance"; - req_access_txt = "61" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/tcommsat/computer) -"bUr" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 9 - }, -/turf/open/floor/plating, -/area/tcommsat/computer) -"bUs" = ( -/obj/machinery/atmospherics/components/binary/pump{ - dir = 0; - name = "Air Out"; - on = 1 - }, -/obj/machinery/light/small{ - dir = 4 - }, -/turf/open/floor/plating, -/area/tcommsat/computer) -"bUt" = ( -/turf/open/floor/plating/warnplate{ - dir = 4 - }, -/area/tcommsat/computer) -"bUu" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/tcommsat/computer) -"bUv" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/tcommsat/computer) -"bUw" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/tcommsat/computer) -"bUx" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/item/weapon/wrench, -/obj/item/stack/cable_coil, -/turf/open/floor/plating, -/area/tcommsat/computer) -"bUy" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 9; - pixel_y = 0 - }, -/obj/machinery/power/port_gen/pacman, -/turf/open/floor/plating, -/area/tcommsat/computer) -"bUz" = ( -/obj/machinery/door/airlock/engineering{ - name = "Telecommunications Chamber"; - req_access_txt = "61" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/tcommsat/computer) -"bUA" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/closed/wall/r_wall, -/area/tcommsat/computer) -"bUB" = ( -/obj/structure/rack, -/obj/item/weapon/storage/toolbox/mechanical, -/obj/item/device/radio, -/obj/machinery/airalarm{ - dir = 4; - icon_state = "alarm0"; - pixel_x = -22 - }, -/turf/open/floor/plasteel/yellow/side{ - dir = 9 - }, -/area/tcommsat/computer) -"bUC" = ( -/obj/machinery/requests_console{ - announcementConsole = 1; - department = "Telecoms Admin"; - departmentType = 5; - name = "Telecoms RC"; - pixel_x = 0; - pixel_y = 30 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/yellow/side{ - dir = 1 - }, -/area/tcommsat/computer) -"bUD" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/open/floor/plasteel/yellow/side{ - dir = 1 - }, -/area/tcommsat/computer) -"bUE" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4"; - tag = "" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/item/device/radio/intercom{ - name = "Station Intercom (General)"; - pixel_y = 26 - }, -/obj/machinery/camera/motion{ - c_tag = "Telecoms Monitoring"; - dir = 2; - network = list("SS13","Telecoms") - }, -/turf/open/floor/plasteel/yellow/side{ - dir = 1 - }, -/area/tcommsat/computer) -"bUF" = ( -/obj/machinery/door/airlock/glass_command{ - name = "Control Room"; - req_access_txt = "19; 61" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/yellow/side{ - dir = 1 - }, -/area/tcommsat/computer) -"bUG" = ( -/obj/machinery/power/apc{ - dir = 1; - name = "Telecoms Monitoring APC"; - pixel_y = 25 - }, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/yellow/side{ - dir = 1 - }, -/area/tcommsat/computer) -"bUH" = ( -/obj/machinery/announcement_system, -/turf/open/floor/plasteel/yellow/side{ - dir = 5 - }, -/area/tcommsat/computer) -"bUI" = ( -/obj/machinery/light/small{ - brightness = 3; - dir = 8 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - external_pressure_bound = 101.325; - on = 1; - pressure_checks = 1 - }, -/turf/open/floor/plasteel/yellow/side{ - dir = 8; - tag = "" - }, -/area/tcommsat/computer) -"bUJ" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/chair/office/dark, -/turf/open/floor/plasteel/yellow/corner, -/area/tcommsat/computer) -"bUK" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/yellow/side, -/area/tcommsat/computer) -"bUL" = ( -/obj/structure/cable{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/manifold/supply, -/turf/open/floor/plasteel/yellow/side, -/area/tcommsat/computer) -"bUM" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/tcommsat/computer) -"bUN" = ( -/obj/structure/chair/office/dark, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/yellow/corner{ - dir = 8 - }, -/area/tcommsat/computer) -"bUO" = ( -/obj/machinery/light/small{ - dir = 4 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/plasteel/yellow/side{ - dir = 4 - }, -/area/tcommsat/computer) -"bUP" = ( -/obj/machinery/status_display{ - pixel_x = -32 - }, -/obj/structure/table, -/obj/item/weapon/paper_bin{ - pixel_x = -2; - pixel_y = 5; - tag = "every single paper bin is edited to this" - }, -/obj/item/weapon/pen, -/turf/open/floor/plasteel/yellow/side{ - dir = 10 - }, -/area/tcommsat/computer) -"bUQ" = ( -/obj/machinery/computer/telecomms/monitor{ - network = "tcommsat" - }, -/turf/open/floor/plasteel/yellow/side{ - dir = 6 - }, -/area/tcommsat/computer) -"bUR" = ( -/obj/machinery/door/airlock/glass_engineering{ - cyclelinkeddir = 2; - name = "Server Room"; - req_access_txt = "61" - }, -/obj/structure/cable{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/tcommsat/computer) -"bUS" = ( -/obj/machinery/computer/telecomms/server{ - network = "tcommsat" - }, -/turf/open/floor/plasteel/yellow/side{ - dir = 10 - }, -/area/tcommsat/computer) -"bUT" = ( -/obj/machinery/computer/message_monitor, -/turf/open/floor/plasteel/yellow/side{ - dir = 6 - }, -/area/tcommsat/computer) -"bUU" = ( -/obj/structure/cable{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/tcommsat/computer) -"bUV" = ( -/turf/closed/wall/r_wall, -/area/tcommsat/server) -"bUW" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/turf/closed/wall/r_wall, -/area/tcommsat/server) -"bUX" = ( -/obj/machinery/power/smes{ - charge = 5e+006 - }, -/obj/structure/cable{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/turf/open/floor/bluegrid{ - name = "Mainframe Base"; - initial_gas_mix = "n2=100;TEMP=80" - }, -/area/tcommsat/server) -"bUY" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/turf/open/floor/plating, -/area/tcommsat/computer) -"bUZ" = ( -/obj/machinery/door/airlock/glass_engineering{ - cyclelinkeddir = 1; - name = "Server Room"; - req_access_txt = "61" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/tcommsat/computer) -"bVa" = ( -/obj/machinery/blackbox_recorder, -/turf/open/floor/bluegrid{ - name = "Mainframe Base"; - initial_gas_mix = "n2=100;TEMP=80" - }, -/area/tcommsat/server) -"bVb" = ( -/obj/machinery/message_server, -/turf/open/floor/bluegrid{ - name = "Mainframe Base"; - initial_gas_mix = "n2=100;TEMP=80" - }, -/area/tcommsat/server) -"bVc" = ( -/obj/machinery/power/apc{ - cell_type = 5000; - dir = 1; - layer = 4; - name = "Telecoms Server APC"; - pixel_x = 0; - pixel_y = 24 - }, -/obj/structure/cable, -/turf/open/floor/plasteel/black, -/area/tcommsat/server) -"bVd" = ( -/obj/machinery/power/terminal{ - icon_state = "term"; - dir = 1 - }, -/turf/open/floor/plasteel/black, -/area/tcommsat/server) -"bVe" = ( -/turf/open/floor/plasteel/black, -/area/tcommsat/server) -"bVf" = ( -/obj/machinery/telecomms/bus/preset_three, -/turf/open/floor/bluegrid{ - name = "Mainframe Base"; - initial_gas_mix = "n2=100;TEMP=80" - }, -/area/tcommsat/server) -"bVg" = ( -/obj/machinery/telecomms/receiver/preset_left, -/turf/open/floor/bluegrid{ - name = "Mainframe Base"; - initial_gas_mix = "n2=100;TEMP=80" - }, -/area/tcommsat/server) -"bVh" = ( -/obj/machinery/telecomms/processor/preset_three, -/turf/open/floor/bluegrid{ - name = "Mainframe Base"; - initial_gas_mix = "n2=100;TEMP=80" - }, -/area/tcommsat/server) -"bVi" = ( -/obj/machinery/telecomms/processor/preset_one, -/turf/open/floor/bluegrid{ - name = "Mainframe Base"; - initial_gas_mix = "n2=100;TEMP=80" - }, -/area/tcommsat/server) -"bVj" = ( -/obj/machinery/telecomms/receiver/preset_right, -/turf/open/floor/bluegrid{ - name = "Mainframe Base"; - initial_gas_mix = "n2=100;TEMP=80" - }, -/area/tcommsat/server) -"bVk" = ( -/obj/machinery/telecomms/bus/preset_one, -/turf/open/floor/bluegrid{ - name = "Mainframe Base"; - initial_gas_mix = "n2=100;TEMP=80" - }, -/area/tcommsat/server) -"bVl" = ( -/obj/machinery/camera{ - active_power_usage = 0; - c_tag = "Bomb Testing Asteroid Aft"; - desc = "A specially-reinforced camera with a long lasting battery, used to monitor the bomb testing site. An external light is attached to the top."; - dir = 1; - invuln = 1; - luminosity = 3; - name = "Hardened Bomb-Test Camera"; - network = list("Toxins"); - use_power = 0 - }, -/turf/open/floor/plating/asteroid/airless, -/area/mine/explored{ - name = "Bomb Testing Asteroid" - }) -"bVm" = ( -/obj/machinery/light{ - dir = 8 - }, -/turf/open/floor/plasteel/darkred/side, -/area/tcommsat/server) -"bVn" = ( -/turf/open/floor/plasteel/darkpurple/side, -/area/tcommsat/server) -"bVo" = ( -/turf/open/floor/plasteel/darkgreen/side, -/area/tcommsat/server) -"bVp" = ( -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/turf/open/floor/plasteel/darkgreen/side, -/area/tcommsat/server) -"bVq" = ( -/turf/closed/indestructible{ - desc = "A wall impregnated with Fixium, able to withstand massive explosions with ease"; - icon_state = "riveted"; - name = "hyper-reinforced wall" - }, -/area/mine/explored{ - name = "Bomb Testing Asteroid" - }) -"bVr" = ( -/obj/machinery/telecomms/server/presets/security, -/turf/open/floor/bluegrid{ - name = "Mainframe Base"; - initial_gas_mix = "n2=100;TEMP=80" - }, -/area/tcommsat/server) -"bVs" = ( -/obj/machinery/telecomms/server/presets/science, -/turf/open/floor/bluegrid{ - name = "Mainframe Base"; - initial_gas_mix = "n2=100;TEMP=80" - }, -/area/tcommsat/server) -"bVt" = ( -/obj/machinery/telecomms/hub/preset, -/turf/open/floor/bluegrid{ - name = "Mainframe Base"; - initial_gas_mix = "n2=100;TEMP=80" - }, -/area/tcommsat/server) -"bVu" = ( -/obj/machinery/telecomms/server/presets/common, -/turf/open/floor/bluegrid{ - name = "Mainframe Base"; - initial_gas_mix = "n2=100;TEMP=80" - }, -/area/tcommsat/server) -"bVv" = ( -/obj/machinery/telecomms/server/presets/service, -/turf/open/floor/bluegrid{ - name = "Mainframe Base"; - initial_gas_mix = "n2=100;TEMP=80" - }, -/area/tcommsat/server) -"bVw" = ( -/obj/machinery/telecomms/server/presets/medical, -/turf/open/floor/bluegrid{ - name = "Mainframe Base"; - initial_gas_mix = "n2=100;TEMP=80" - }, -/area/tcommsat/server) -"bVx" = ( -/obj/machinery/telecomms/server/presets/command, -/turf/open/floor/bluegrid{ - name = "Mainframe Base"; - initial_gas_mix = "n2=100;TEMP=80" - }, -/area/tcommsat/server) -"bVy" = ( -/obj/machinery/power/terminal, -/obj/machinery/ntnet_relay, -/turf/open/floor/bluegrid{ - name = "Mainframe Base"; - initial_gas_mix = "n2=100;TEMP=80" - }, -/area/tcommsat/server) -"bVz" = ( -/obj/machinery/telecomms/server/presets/supply, -/turf/open/floor/bluegrid{ - name = "Mainframe Base"; - initial_gas_mix = "n2=100;TEMP=80" - }, -/area/tcommsat/server) -"bVA" = ( -/obj/machinery/telecomms/server/presets/engineering, -/turf/open/floor/bluegrid{ - name = "Mainframe Base"; - initial_gas_mix = "n2=100;TEMP=80" - }, -/area/tcommsat/server) -"bVB" = ( -/obj/machinery/light{ - dir = 8 - }, -/turf/open/floor/plasteel/darkblue/side{ - dir = 1 - }, -/area/tcommsat/server) -"bVC" = ( -/turf/open/floor/plasteel/darkblue/side{ - dir = 1 - }, -/area/tcommsat/server) -"bVD" = ( -/turf/open/floor/plasteel/darkyellow/side{ - dir = 1 - }, -/area/tcommsat/server) -"bVE" = ( -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/turf/open/floor/plasteel/darkyellow/side{ - dir = 1 - }, -/area/tcommsat/server) -"bVF" = ( -/obj/machinery/telecomms/processor/preset_four, -/turf/open/floor/bluegrid{ - name = "Mainframe Base"; - initial_gas_mix = "n2=100;TEMP=80" - }, -/area/tcommsat/server) -"bVG" = ( -/obj/machinery/telecomms/broadcaster/preset_left, -/turf/open/floor/bluegrid{ - name = "Mainframe Base"; - initial_gas_mix = "n2=100;TEMP=80" - }, -/area/tcommsat/server) -"bVH" = ( -/obj/machinery/telecomms/bus/preset_four, -/turf/open/floor/bluegrid{ - name = "Mainframe Base"; - initial_gas_mix = "n2=100;TEMP=80" - }, -/area/tcommsat/server) -"bVI" = ( -/obj/machinery/telecomms/bus/preset_two, -/turf/open/floor/bluegrid{ - name = "Mainframe Base"; - initial_gas_mix = "n2=100;TEMP=80" - }, -/area/tcommsat/server) -"bVJ" = ( -/obj/machinery/telecomms/broadcaster/preset_right, -/turf/open/floor/bluegrid{ - name = "Mainframe Base"; - initial_gas_mix = "n2=100;TEMP=80" - }, -/area/tcommsat/server) -"bVK" = ( -/obj/machinery/telecomms/processor/preset_two, -/turf/open/floor/bluegrid{ - name = "Mainframe Base"; - initial_gas_mix = "n2=100;TEMP=80" - }, -/area/tcommsat/server) -"bVL" = ( -/obj/structure/table, -/obj/item/weapon/stock_parts/subspace/amplifier, -/obj/item/weapon/stock_parts/subspace/amplifier, -/obj/item/weapon/stock_parts/subspace/analyzer, -/obj/item/weapon/stock_parts/subspace/analyzer, -/turf/open/floor/plasteel/black, -/area/tcommsat/server) -"bVM" = ( -/obj/structure/table, -/obj/item/weapon/stock_parts/subspace/ansible, -/obj/item/weapon/stock_parts/subspace/ansible, -/obj/item/weapon/stock_parts/subspace/crystal, -/obj/item/weapon/stock_parts/subspace/crystal, -/turf/open/floor/plasteel/black, -/area/tcommsat/server) -"bVN" = ( -/obj/structure/table, -/obj/item/weapon/stock_parts/subspace/filter, -/obj/item/weapon/stock_parts/subspace/filter, -/obj/item/weapon/stock_parts/subspace/transmitter, -/obj/item/weapon/stock_parts/subspace/transmitter, -/turf/open/floor/plasteel/black, -/area/tcommsat/server) -"bVO" = ( -/obj/machinery/camera/motion{ - c_tag = "Telecoms Server Room"; - dir = 1; - network = list("SS13","Telecoms") - }, -/turf/open/floor/plasteel/black{ - name = "Mainframe Floor"; - initial_gas_mix = "n2=100;TEMP=80" - }, -/area/tcommsat/server) -"bVP" = ( -/obj/structure/table, -/obj/item/weapon/stock_parts/subspace/treatment, -/obj/item/weapon/stock_parts/subspace/treatment, -/obj/item/weapon/stock_parts/manipulator, -/obj/item/weapon/stock_parts/manipulator, -/turf/open/floor/plasteel/black, -/area/tcommsat/server) -"bVQ" = ( -/obj/structure/table, -/obj/item/weapon/stock_parts/console_screen, -/obj/item/weapon/stock_parts/console_screen, -/obj/item/weapon/stock_parts/micro_laser, -/obj/item/weapon/stock_parts/micro_laser, -/turf/open/floor/plasteel/black, -/area/tcommsat/server) -"bVR" = ( -/obj/structure/table, -/obj/item/weapon/stock_parts/scanning_module, -/obj/item/weapon/stock_parts/scanning_module, -/turf/open/floor/plasteel/black, -/area/tcommsat/server) -"bVS" = ( -/obj/machinery/camera/motion{ - c_tag = "MiniSat External Port"; - dir = 8; - network = list("MiniSat") - }, -/turf/open/space, -/area/space) -"bVT" = ( -/obj/machinery/door/firedoor/heavy, -/obj/machinery/door/airlock/glass_command{ - name = "AI Core"; - req_access_txt = "65" - }, -/turf/open/floor/plasteel/white, -/area/wreck/ai) -"bVU" = ( -/obj/machinery/camera/motion{ - c_tag = "MiniSat External Starboard"; - dir = 4; - network = list("MiniSat") - }, -/turf/open/space, -/area/space) -"bVV" = ( -/obj/item/device/radio/intercom{ - broadcasting = 1; - frequency = 1447; - listening = 0; - name = "Station Intercom (AI Private)"; - pixel_x = 0; - pixel_y = 24 - }, -/turf/open/floor/bluegrid, -/area/wreck/ai) -"bVW" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 2; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/black, -/area/wreck/ai) -"bVX" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 5 - }, -/turf/open/floor/plating, -/area/wreck/ai) -"bVY" = ( -/turf/open/floor/plating, -/area/ai_monitored/turret_protected/AIsatextAP) -"bVZ" = ( -/obj/structure/lattice, -/obj/machinery/camera/motion{ - c_tag = "MiniSat Entrance"; - dir = 2; - network = list("MiniSat") - }, -/turf/open/space, -/area/space) -"bWa" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/structure/cable, -/turf/open/floor/plating, -/area/security/transfer) -"bWb" = ( -/obj/structure/closet/l3closet, -/turf/open/floor/plasteel/showroomfloor, -/area/security/main) -"bWc" = ( -/obj/structure/closet/bombcloset, -/turf/open/floor/plasteel/showroomfloor, -/area/security/main) -"bWd" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/structure/sign/barsign, -/turf/open/floor/plating, -/area/maintenance/fsmaint) -"bWe" = ( -/turf/closed/wall/r_wall, -/area/security/hos) -"bWf" = ( -/obj/machinery/door/poddoor/shutters{ - id = "supplybridge" - }, -/turf/open/floor/plating/warnplate{ - tag = "icon-warnplate (NORTH)"; - dir = 1 - }, -/area/maintenance/fsmaint) -"bWg" = ( -/obj/effect/landmark/start{ - name = "Security Officer" - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel, -/area/security/main) -"bWh" = ( -/obj/effect/landmark/start{ - name = "Security Officer" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/security/main) -"bWi" = ( -/obj/structure/extinguisher_cabinet{ - pixel_x = -24 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint) -"bWj" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating/warnplate{ - tag = "icon-warnplate (WEST)"; - dir = 8 - }, -/area/maintenance/fsmaint) -"bWk" = ( -/obj/machinery/door/airlock/glass{ - name = "space-bridge access" - }, -/obj/machinery/button/door{ - id = "supplybridge"; - name = "Space Bridge Control"; - pixel_x = 0; - pixel_y = 27; - req_access_txt = "0" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating/warnplate{ - tag = "icon-warnplate (WEST)"; - dir = 8 - }, -/area/maintenance/fsmaint) -"bWl" = ( -/obj/item/weapon/storage/secure/safe{ - pixel_x = -22; - pixel_y = 32 - }, -/turf/open/floor/plasteel/darkred/side, -/area/security/hos) -"bWm" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0; - tag = "" - }, -/obj/machinery/atmospherics/pipe/simple/cyan/hidden, -/obj/machinery/firealarm{ - dir = 8; - pixel_x = -27 - }, -/turf/open/floor/plasteel/red/side{ - dir = 8 - }, -/area/security/main) -"bWn" = ( -/obj/structure/cable{ - icon_state = "1-8" - }, -/turf/open/floor/plasteel/black, -/area/security/processing{ - name = "Crematorium" - }) -"bWo" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/hidden{ - tag = "icon-intact (SOUTHEAST)"; - icon_state = "intact"; - dir = 6 - }, -/turf/closed/wall, -/area/security/processing{ - name = "Crematorium" - }) -"bWp" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/hidden, -/turf/open/floor/plasteel, -/area/security/main) -"bWq" = ( -/turf/open/floor/plating{ - icon_state = "platingdmg1" - }, -/area/maintenance/fsmaint) -"bWr" = ( -/turf/closed/wall/r_wall, -/area/maintenance/fore) -"bWs" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating{ - icon_state = "platingdmg3" - }, -/area/maintenance/fsmaint) -"bWt" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/airalarm{ - frequency = 1439; - locked = 0; - pixel_y = 23 - }, -/turf/open/floor/plasteel/red/side{ - dir = 1 - }, -/area/security/brig) -"bWu" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating/warnplate, -/area/crew_quarters/sleep) -"bWv" = ( -/obj/machinery/computer/shuttle/monastery_shuttle, -/obj/structure/sign/pods{ - pixel_y = 32 - }, -/turf/open/floor/plasteel/black, -/area/crew_quarters/sleep) -"bWw" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating/warnplate{ - dir = 1 - }, -/area/crew_quarters/sleep) -"bWx" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/holopad, -/turf/open/floor/plasteel, -/area/crew_quarters/sleep) -"bWy" = ( -/obj/machinery/light{ - icon_state = "tube1"; - dir = 4 - }, -/obj/machinery/firealarm{ - dir = 4; - pixel_x = 28 - }, -/turf/open/floor/plasteel/darkblue/side{ - tag = "icon-darkblue (EAST)"; - dir = 4 - }, -/area/bridge) -"bWz" = ( -/obj/structure/extinguisher_cabinet{ - pixel_x = 0; - pixel_y = 30 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/fore) -"bWA" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/extinguisher_cabinet{ - pixel_x = -24 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/sleep) -"bWB" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/turf/open/floor/plating{ - broken = 1; - icon_state = "platingdmg1" - }, -/area/maintenance/fpmaint2{ - name = "Brig Maintenance" - }) -"bWC" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/plating{ - icon_state = "panelscorched" - }, -/area/maintenance/fpmaint2{ - name = "Brig Maintenance" - }) -"bWD" = ( -/obj/machinery/disposal/bin, -/obj/structure/disposalpipe/trunk, -/obj/structure/extinguisher_cabinet{ - pixel_x = -24 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"bWE" = ( -/turf/open/floor/plating{ - broken = 1; - icon_state = "platingdmg3" - }, -/area/maintenance/fpmaint2{ - name = "Brig Maintenance" - }) -"bWF" = ( -/turf/open/floor/plating{ - icon_state = "panelscorched" - }, -/area/maintenance/fpmaint2{ - name = "Brig Maintenance" - }) -"bWG" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/extinguisher_cabinet{ - pixel_x = -26; - pixel_y = 0 - }, -/turf/open/floor/plasteel/red/corner{ - tag = "icon-redcorner (WEST)"; - dir = 8 - }, -/area/hallway/primary/fore) -"bWH" = ( -/obj/machinery/porta_turret/ai{ - dir = 8 - }, -/turf/open/floor/plasteel/darkblue, -/area/ai_monitored/turret_protected/ai_upload) -"bWI" = ( -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plating{ - broken = 1; - icon_state = "platingdmg3" - }, -/area/maintenance/fpmaint2{ - name = "Brig Maintenance" - }) -"bWJ" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/turf/open/floor/plasteel/red/corner, -/area/hallway/primary/fore) -"bWK" = ( -/obj/structure/chair/stool, -/turf/open/floor/plasteel, -/area/storage/primary) -"bWL" = ( -/obj/structure/extinguisher_cabinet{ - pixel_x = -24 - }, -/turf/open/floor/plasteel/freezer, -/area/crew_quarters/locker/locker_toilet{ - name = "\improper Restrooms" - }) -"bWM" = ( -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; - icon_state = "space"; - layer = 4; - name = "EXTERNAL AIRLOCK"; - pixel_x = 0; - pixel_y = 32 - }, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"bWN" = ( -/obj/machinery/door/airlock/external{ - cyclelinkeddir = 4; - req_access_txt = "13" - }, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"bWO" = ( -/obj/machinery/door/airlock/external{ - cyclelinkeddir = 8; - req_access_txt = "13" - }, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"bWP" = ( -/obj/structure/table, -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/obj/item/device/taperecorder, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"bWQ" = ( -/obj/machinery/light/small{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"bWR" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/turf/open/floor/plasteel/bot, -/area/hallway/primary/central) -"bWS" = ( -/obj/structure/sink{ - icon_state = "sink"; - dir = 8; - pixel_x = -12; - pixel_y = 2 - }, -/obj/structure/mirror{ - pixel_x = -28 - }, -/obj/effect/decal/cleanable/vomit/old, -/turf/open/floor/plasteel/freezer, -/area/crew_quarters/locker/locker_toilet{ - name = "\improper Restrooms" - }) -"bWT" = ( -/obj/machinery/camera{ - c_tag = "Dormitory Toilets"; - dir = 1 - }, -/turf/open/floor/plasteel/freezer, -/area/crew_quarters/locker/locker_toilet{ - name = "\improper Restrooms" - }) -"bWU" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/structure/cable, -/obj/structure/cable{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/turf/open/floor/plating, -/area/hallway/primary/central) -"bWV" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/structure/cable{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/turf/open/floor/plating, -/area/hallway/primary/central) -"bWW" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/structure/cable, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/turf/open/floor/plating, -/area/hallway/primary/central) -"bWX" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 4 - }, -/area/hallway/primary/central) -"bWY" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/airalarm{ - frequency = 1439; - locked = 0; - pixel_y = 23 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 4 - }, -/area/hallway/primary/central) -"bWZ" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 1; - initialize_directions = 11 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 4 - }, -/area/hallway/primary/central) -"bXa" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/open/floor/plasteel/neutral/corner{ - dir = 4 - }, -/area/hallway/primary/central) -"bXb" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/firealarm{ - dir = 1; - pixel_y = 29 - }, -/turf/open/floor/plasteel/blue/corner{ - dir = 1 - }, -/area/hallway/primary/central) -"bXc" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/airalarm{ - frequency = 1439; - locked = 0; - pixel_y = 23 - }, -/turf/open/floor/plasteel/blue/corner{ - dir = 1 - }, -/area/hallway/primary/central) -"bXd" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/extinguisher_cabinet{ - pixel_x = 0; - pixel_y = 30 - }, -/turf/open/floor/plasteel/blue/corner{ - dir = 1 - }, -/area/hallway/primary/central) -"bXe" = ( -/obj/structure/toilet{ - dir = 8 - }, -/obj/machinery/light/small{ - dir = 8 - }, -/obj/effect/decal/cleanable/deadcockroach, -/turf/open/floor/plasteel/freezer, -/area/crew_quarters/locker/locker_toilet{ - name = "\improper Restrooms" - }) -"bXf" = ( -/obj/machinery/recharge_station, -/turf/open/floor/mineral/titanium/yellow, -/area/shuttle/escape) -"bXg" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating{ - broken = 1; - icon_state = "platingdmg1" - }, -/area/maintenance/apmaint) -"bXh" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/effect/decal/cleanable/blood/old, -/turf/open/floor/plating{ - burnt = 1; - icon_state = "panelscorched" - }, -/area/maintenance/apmaint) -"bXi" = ( -/obj/structure/closet/coffin, -/obj/item/toy/figure/ian, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"bXj" = ( -/obj/structure/extinguisher_cabinet{ - pixel_x = 27; - pixel_y = 0 - }, -/turf/open/floor/mineral/titanium/yellow, -/area/shuttle/escape) -"bXk" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/light, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"bXl" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/light, -/turf/open/floor/plasteel/blue/corner{ - dir = 8 - }, -/area/hallway/primary/central) -"bXm" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/structure/cable{ - icon_state = "0-2"; - pixel_y = 1; - d2 = 2 - }, -/turf/open/floor/plating, -/area/teleporter) -"bXn" = ( -/obj/machinery/door/airlock/glass{ - name = "Emergency Shuttle Cargo Hold"; - req_access_txt = "0" - }, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/escape) -"bXo" = ( -/obj/structure/extinguisher_cabinet{ - pixel_x = 27; - pixel_y = 0 - }, -/turf/open/floor/plasteel/floorgrime, -/area/quartermaster/storage) -"bXp" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/sign/directions/evac{ - dir = 1; - icon_state = "direction_evac"; - pixel_x = 32; - pixel_y = 0; - tag = "icon-direction_evac (NORTH)" - }, -/turf/open/floor/plasteel/neutral/corner, -/area/hallway/primary/central) -"bXq" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/brown/corner{ - dir = 1; - tag = "icon-browncorner (NORTH)" - }, -/area/hallway/primary/central) -"bXr" = ( -/obj/machinery/door/airlock/maintenance{ - req_access_txt = "12" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"bXs" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 4; - initialize_directions = 11 - }, -/turf/open/floor/plasteel/brown/corner{ - dir = 1; - tag = "icon-browncorner (NORTH)" - }, -/area/hallway/primary/central) -"bXt" = ( -/obj/structure/extinguisher_cabinet{ - pixel_x = -24 - }, -/turf/open/floor/plasteel/hydrofloor, -/area/hydroponics) -"bXu" = ( -/obj/structure/extinguisher_cabinet{ - pixel_x = 26 - }, -/turf/open/floor/plasteel/showroomfloor, -/area/crew_quarters/kitchen) -"bXv" = ( -/obj/structure/closet, -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"bXw" = ( -/obj/structure/closet, -/obj/item/weapon/canvas/twentythreeXnineteen, -/obj/item/weapon/canvas/nineteenXnineteen, -/obj/item/weapon/canvas/twentythreeXtwentythree, -/obj/item/weapon/storage/crayons, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"bXx" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/extinguisher_cabinet{ - pixel_x = -26 - }, -/turf/open/floor/plasteel/black, -/area/crew_quarters/bar) -"bXy" = ( -/obj/effect/decal/remains/human, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"bXz" = ( -/turf/closed/wall/r_wall, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"bXA" = ( -/turf/closed/wall/r_wall, -/area/security/checkpoint2{ - name = "Customs" - }) -"bXB" = ( -/obj/item/weapon/reagent_containers/glass/bucket, -/turf/open/floor/plasteel, -/area/hydroponics) -"bXC" = ( -/obj/structure/window/reinforced, -/obj/item/device/flashlight/lantern, -/turf/open/floor/wood, -/area/crew_quarters/theatre) -"bXD" = ( -/obj/item/device/flashlight/lantern, -/obj/structure/window/reinforced, -/turf/open/floor/wood, -/area/crew_quarters/theatre) -"bXE" = ( -/obj/structure/grille/broken, -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"bXF" = ( -/turf/open/floor/plasteel/green/corner{ - dir = 4 - }, -/area/hydroponics) -"bXG" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/green/corner{ - dir = 1 - }, -/area/hydroponics) -"bXH" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/crew_quarters/bar) -"bXI" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/bar) -"bXJ" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/extinguisher_cabinet{ - pixel_x = 0; - pixel_y = 30 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/bar) -"bXK" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/turf/open/floor/plasteel/brown/corner{ - dir = 4 - }, -/area/hallway/primary/central) -"bXL" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/hidden{ - tag = "icon-intact (EAST)"; - icon_state = "intact"; - dir = 4 - }, -/obj/machinery/airalarm{ - pixel_y = 22 - }, -/turf/open/floor/plasteel/arrival{ - dir = 1 - }, -/area/hallway/secondary/entry) -"bXM" = ( -/turf/open/floor/plasteel/green/side{ - dir = 4 - }, -/area/hydroponics) -"bXN" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 9; - pixel_y = 0 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/black, -/area/crew_quarters/bar) -"bXO" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/book/manual/barman_recipes, -/obj/item/weapon/reagent_containers/glass/rag, -/turf/open/floor/plasteel/darkred/side{ - dir = 8 - }, -/area/crew_quarters/bar) -"bXP" = ( -/obj/machinery/computer/slot_machine, -/obj/item/device/radio/intercom{ - dir = 0; - name = "Station Intercom (General)"; - pixel_x = 0; - pixel_y = 26 - }, -/turf/open/floor/carpet{ - icon_state = "carpetsymbol" - }, -/area/crew_quarters/bar) -"bXQ" = ( -/obj/machinery/computer/slot_machine, -/obj/machinery/airalarm{ - pixel_y = 24 - }, -/turf/open/floor/carpet{ - icon_state = "carpetsymbol" - }, -/area/crew_quarters/bar) -"bXR" = ( -/obj/machinery/computer/arcade, -/obj/structure/noticeboard{ - pixel_y = 32 - }, -/turf/open/floor/carpet{ - icon_state = "carpetsymbol" - }, -/area/crew_quarters/bar) -"bXS" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 8 - }, -/obj/machinery/button/door{ - dir = 2; - id = "jangarage"; - name = "Custodial Closet Shutters Control"; - pixel_x = 25; - pixel_y = 0 - }, -/turf/open/floor/plasteel/neutral/corner, -/area/hallway/primary/central) -"bXT" = ( -/obj/effect/landmark/start{ - name = "Botanist" - }, -/obj/machinery/holopad, -/turf/open/floor/plasteel, -/area/hydroponics) -"bXU" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/green/side{ - dir = 8 - }, -/area/hydroponics) -"bXV" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 8 - }, -/turf/open/floor/plasteel/black, -/area/crew_quarters/bar) -"bXW" = ( -/obj/structure/table/wood/fancy, -/obj/item/toy/cards/deck, -/turf/open/floor/carpet{ - icon_state = "carpetsymbol" - }, -/area/crew_quarters/bar) -"bXX" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/poddoor/shutters{ - id = "jangarage"; - name = "Custodial Closet Shutters" - }, -/turf/open/floor/plasteel/delivery, -/area/janitor) -"bXY" = ( -/obj/structure/table/reinforced, -/obj/machinery/door/firedoor, -/obj/machinery/door/window/westright{ - dir = 1; - name = "Hydroponics Desk"; - req_access_txt = "35" - }, -/obj/item/weapon/reagent_containers/food/snacks/monkeycube, -/turf/open/floor/plasteel, -/area/hydroponics) -"bXZ" = ( -/obj/machinery/newscaster{ - pixel_y = 1 - }, -/turf/closed/wall, -/area/crew_quarters/kitchen) -"bYa" = ( -/obj/structure/chair/wood/normal{ - icon_state = "wooden_chair"; - dir = 1 - }, -/turf/open/floor/carpet{ - icon_state = "carpetsymbol" - }, -/area/crew_quarters/bar) -"bYb" = ( -/obj/effect/landmark/start{ - name = "Assistant" - }, -/obj/structure/chair/wood/normal{ - icon_state = "wooden_chair"; - dir = 1 - }, -/turf/open/floor/carpet{ - icon_state = "carpetsymbol" - }, -/area/crew_quarters/bar) -"bYc" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass{ - name = "Bar" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/sign/poster{ - pixel_y = 32 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/bar) -"bYd" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold-b-f (EAST)"; - dir = 4 - }, -/turf/open/floor/plasteel/brown/corner{ - dir = 1; - tag = "icon-browncorner (NORTH)" - }, -/area/hallway/primary/central) -"bYe" = ( -/obj/effect/decal/cleanable/cobweb, -/turf/open/floor/plating{ - burnt = 1; - icon_state = "panelscorched" - }, -/area/maintenance/apmaint) -"bYf" = ( -/obj/item/chair, -/turf/open/floor/plating{ - broken = 1; - icon_state = "platingdmg3" - }, -/area/maintenance/apmaint) -"bYg" = ( -/turf/open/floor/plasteel/green/corner{ - dir = 8 - }, -/area/hydroponics) -"bYh" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/green/corner{ - dir = 8 - }, -/area/hydroponics) -"bYi" = ( -/obj/machinery/door/airlock/glass{ - name = "Kitchen"; - req_access_txt = "25;28" - }, -/turf/open/floor/plasteel/black, -/area/crew_quarters/kitchen) -"bYj" = ( -/obj/structure/chair/stool/bar, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/bar) -"bYk" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass{ - name = "Bar" - }, -/turf/open/floor/plasteel, -/area/crew_quarters/bar) -"bYl" = ( -/turf/open/floor/plating{ - broken = 1; - icon_state = "platingdmg3" - }, -/area/maintenance/apmaint) -"bYm" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/sign/poster{ - pixel_y = 32 - }, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"bYn" = ( -/obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/simple/cyan/hidden{ - tag = "icon-intact (EAST)"; - icon_state = "intact"; - dir = 4 - }, -/turf/open/floor/plasteel, -/area/hallway/secondary/entry) -"bYo" = ( -/obj/structure/sink{ - icon_state = "sink"; - dir = 8; - pixel_x = -12; - pixel_y = 2 - }, -/obj/effect/decal/cleanable/deadcockroach, -/turf/open/floor/plasteel/green/side{ - dir = 8 - }, -/area/hydroponics) -"bYp" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/holopad, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"bYq" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/disposal/bin, -/obj/structure/disposalpipe/trunk{ - dir = 4 - }, -/obj/machinery/firealarm{ - dir = 4; - pixel_x = -28 - }, -/turf/open/floor/plasteel/black, -/area/crew_quarters/bar) -"bYr" = ( -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/black, -/area/crew_quarters/bar) -"bYs" = ( -/obj/structure/chair/wood/normal{ - icon_state = "wooden_chair"; - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/crew_quarters/bar) -"bYt" = ( -/obj/structure/chair/wood/normal{ - icon_state = "wooden_chair"; - dir = 8 - }, -/turf/open/floor/plasteel/black, -/area/crew_quarters/bar) -"bYu" = ( -/obj/machinery/hydroponics/constructable, -/turf/open/floor/plasteel/green/side, -/area/hydroponics) -"bYv" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/closed/wall, -/area/crew_quarters/bar) -"bYw" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/bar) -"bYx" = ( -/obj/structure/frame/machine, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"bYy" = ( -/obj/machinery/airalarm{ - pixel_y = 22 - }, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/arrival) -"bYz" = ( -/obj/machinery/atmospherics/components/unary/tank/air, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/arrival) -"bYA" = ( -/turf/closed/wall, -/area/construction/quarters{ - name = "Lounge" - }) -"bYB" = ( -/obj/machinery/disposal/bin, -/obj/structure/disposalpipe/trunk, -/turf/open/floor/plasteel/purple/corner{ - dir = 4 - }, -/area/hallway/primary/central) -"bYC" = ( -/obj/structure/table, -/obj/item/trash/plate, -/obj/item/weapon/storage/fancy/rollingpapers, -/turf/open/floor/plasteel/neutral/corner{ - dir = 1 - }, -/area/hallway/primary/central) -"bYD" = ( -/obj/structure/chair{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 1 - }, -/area/hallway/primary/central) -"bYE" = ( -/obj/structure/table, -/obj/item/weapon/storage/fancy, -/turf/open/floor/plasteel/neutral/corner{ - dir = 1 - }, -/area/hallway/primary/central) -"bYF" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-14"; - layer = 4.1 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 4 - }, -/area/hallway/primary/central) -"bYG" = ( -/obj/structure/chair, -/obj/item/clothing/head/bowler, -/turf/open/floor/plasteel/neutral/corner{ - dir = 4 - }, -/area/hallway/primary/central) -"bYH" = ( -/obj/machinery/firealarm{ - dir = 1; - pixel_x = 0; - pixel_y = 27 - }, -/obj/structure/chair, -/obj/item/clothing/mask/cigarette, -/turf/open/floor/plasteel/neutral/corner{ - dir = 4 - }, -/area/hallway/primary/central) -"bYI" = ( -/obj/structure/sign/poster{ - pixel_y = 32 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 4 - }, -/area/hallway/primary/central) -"bYJ" = ( -/obj/machinery/computer/security/telescreen/entertainment{ - pixel_y = 32 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"bYK" = ( -/turf/open/floor/plasteel/warning{ - dir = 5 - }, -/area/assembly/chargebay) -"bYL" = ( -/obj/structure/grille, -/obj/structure/window/shuttle, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "arrivy"; - name = "ship shutters" - }, -/turf/open/floor/plating, -/area/shuttle/arrival) -"bYM" = ( -/obj/machinery/door/airlock/titanium{ - name = "Arrivals Shuttle Airlock" - }, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/arrival) -"bYN" = ( -/obj/structure/chair{ - dir = 8 - }, -/obj/effect/landmark{ - name = "JoinLate" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 9; - pixel_y = 0 - }, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/arrival) -"bYO" = ( -/obj/item/trash/tray, -/obj/item/weapon/reagent_containers/food/snacks/badrecipe, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"bYP" = ( -/obj/structure/closet/radiation, -/obj/structure/sign/poster{ - pixel_x = 32 - }, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"bYQ" = ( -/obj/machinery/holopad, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"bYR" = ( -/obj/item/chair, -/obj/item/trash/popcorn, -/turf/open/floor/plating{ - broken = 1; - icon_state = "platingdmg3" - }, -/area/maintenance/apmaint) -"bYS" = ( -/obj/structure/chair, -/obj/structure/sign/poster{ - pixel_x = 32 - }, -/turf/open/floor/plating{ - icon_state = "platingdmg1" - }, -/area/maintenance/apmaint) -"bYT" = ( -/obj/structure/extinguisher_cabinet{ - pixel_y = -29 - }, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/arrival) -"bYU" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/hidden, -/obj/structure/extinguisher_cabinet{ - pixel_x = 27; - pixel_y = 0 - }, -/turf/open/floor/plasteel/neutral/corner, -/area/hallway/secondary/entry) -"bYV" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/turf/open/floor/carpet, -/area/construction/quarters{ - name = "Lounge" - }) -"bYW" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/blue/corner, -/area/hallway/primary/central) -"bYX" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 1; - initialize_directions = 11 - }, -/turf/open/floor/plasteel/blue/corner, -/area/hallway/primary/central) -"bYY" = ( -/obj/machinery/light, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/purple/corner, -/area/hallway/primary/central) -"bYZ" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/open/floor/plasteel/purple/corner, -/area/hallway/primary/central) -"bZa" = ( -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/assembly/chargebay) -"bZb" = ( -/obj/item/weapon/wrench, -/turf/open/floor/plating, -/area/maintenance/apmaint) -"bZc" = ( -/obj/structure/table, -/obj/item/trash/plate, -/turf/open/floor/plating{ - icon_state = "platingdmg1" - }, -/area/maintenance/apmaint) -"bZd" = ( -/obj/structure/table, -/obj/item/weapon/kitchen/fork, -/turf/open/floor/plating{ - burnt = 1; - icon_state = "panelscorched" - }, -/area/maintenance/apmaint) -"bZe" = ( -/obj/structure/table/wood, -/obj/item/device/flashlight/lamp/green{ - pixel_x = 1; - pixel_y = 5 - }, -/obj/machinery/power/apc{ - dir = 2; - name = "Lounge APC"; - pixel_x = 0; - pixel_y = -24 - }, -/obj/structure/cable, -/turf/open/floor/plasteel/grimy, -/area/construction/quarters{ - name = "Lounge" - }) -"bZf" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-05"; - layer = 4.1 - }, -/turf/open/floor/plasteel/blue/side, -/area/hallway/primary/central) -"bZg" = ( -/obj/structure/closet/emcloset, -/turf/open/floor/plasteel/blue/corner{ - dir = 8 - }, -/area/hallway/primary/central) -"bZh" = ( -/obj/structure/closet/firecloset, -/turf/open/floor/plasteel/blue/corner{ - dir = 8 - }, -/area/hallway/primary/central) -"bZi" = ( -/turf/open/floor/plasteel/blue/side, -/area/hallway/primary/central) -"bZj" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-10"; - layer = 4.1 - }, -/turf/open/floor/plasteel/purple/side, -/area/hallway/primary/central) -"bZk" = ( -/obj/effect/decal/cleanable/cobweb/cobweb2, -/turf/open/floor/plasteel/black, -/area/medical/morgue) -"bZl" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/shower{ - dir = 8 - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"bZm" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/sink{ - dir = 8; - icon_state = "sink"; - pixel_x = -12 - }, -/turf/open/floor/plasteel/white, -/area/medical/research{ - name = "Research Division" - }) -"bZn" = ( -/obj/structure/chair{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"bZo" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/door/firedoor, -/turf/open/floor/plasteel, -/area/hallway/primary/aft) -"bZp" = ( -/obj/machinery/door/firedoor, -/turf/open/floor/plasteel, -/area/hallway/primary/aft) -"bZq" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/door/firedoor, -/turf/open/floor/plasteel, -/area/hallway/primary/aft) -"bZr" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/chair/stool, -/turf/open/floor/plasteel/white, -/area/medical/research{ - name = "Research Division" - }) -"bZs" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 10 - }, -/obj/structure/chair/stool, -/turf/open/floor/plasteel/white, -/area/medical/research{ - name = "Research Division" - }) -"bZt" = ( -/obj/structure/chair/stool, -/turf/open/floor/plasteel/white, -/area/medical/research{ - name = "Research Division" - }) -"bZu" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-05"; - layer = 4.1 - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"bZv" = ( -/obj/machinery/holopad, -/turf/open/floor/plasteel/white, -/area/medical/research{ - name = "Research Division" - }) -"bZw" = ( -/turf/open/floor/plasteel/warning/corner, -/area/assembly/robotics) -"bZx" = ( -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/assembly/robotics) -"bZy" = ( -/obj/structure/chair, -/turf/open/floor/plasteel/whitepurple/side, -/area/medical/research{ - name = "Research Division" - }) -"bZz" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-17" - }, -/turf/open/floor/plasteel/whitepurple/side, -/area/medical/research{ - name = "Research Division" - }) -"bZA" = ( -/turf/open/floor/plasteel/warnwhite{ - dir = 8 - }, -/area/medical/genetics) -"bZB" = ( -/obj/machinery/smartfridge/chemistry, -/turf/open/floor/plasteel/black, -/area/medical/chemistry) -"bZC" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/extinguisher_cabinet{ - pixel_x = -24 - }, -/turf/open/floor/plasteel/yellow/corner{ - dir = 1 - }, -/area/hallway/primary/aft) -"bZD" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/yellow/corner{ - tag = "icon-yellowcorner (EAST)"; - icon_state = "yellowcorner"; - dir = 4 - }, -/area/hallway/primary/aft) -"bZE" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/yellow/corner{ - dir = 1 - }, -/area/hallway/primary/aft) -"bZF" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/chair/stool, -/turf/open/floor/plasteel/white, -/area/medical/genetics) -"bZG" = ( -/turf/open/floor/plasteel/purple/side{ - dir = 8 - }, -/area/assembly/robotics) -"bZH" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/cyan/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"bZI" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/holopad, -/turf/open/floor/plasteel/white, -/area/toxins/xenobiology) -"bZJ" = ( -/obj/effect/spawner/lootdrop/grille_or_trash, -/turf/open/floor/plating{ - icon_state = "platingdmg3" - }, -/area/maintenance/aft) -"bZK" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/sign/poster{ - pixel_y = 32 - }, -/turf/open/floor/plasteel/white, -/area/medical/research{ - name = "Research Division" - }) -"bZL" = ( -/obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/turf/open/floor/plasteel/white, -/area/medical/sleeper) -"bZM" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/bed/roller, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"bZN" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/bed/roller, -/obj/machinery/iv_drip{ - density = 0 - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"bZO" = ( -/obj/machinery/holopad, -/turf/open/floor/plasteel/white, -/area/medical/chemistry) -"bZP" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/aft) -"bZQ" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - on = 1 - }, -/turf/open/floor/plasteel/white, -/area/medical/research{ - name = "Research Division" - }) -"bZR" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/turf/open/floor/plasteel/white, -/area/medical/research{ - name = "Research Division" - }) -"bZS" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-20"; - layer = 4.1; - pixel_y = 3 - }, -/turf/open/floor/plasteel/white, -/area/medical/research{ - name = "Research Division" - }) -"bZT" = ( -/obj/structure/chair/comfy{ - tag = "icon-comfychair (EAST)"; - icon_state = "comfychair"; - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/medical/research{ - name = "Research Division" - }) -"bZU" = ( -/obj/structure/chair/comfy{ - tag = "icon-comfychair (WEST)"; - icon_state = "comfychair"; - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/medical/research{ - name = "Research Division" - }) -"bZV" = ( -/turf/open/floor/plasteel/white/side{ - dir = 8 - }, -/area/medical/research{ - name = "Research Division" - }) -"bZW" = ( -/obj/item/weapon/folder/white, -/obj/item/clothing/gloves/color/latex, -/obj/structure/table/glass, -/turf/open/floor/plasteel/yellow/side{ - dir = 8 - }, -/area/hallway/primary/aft) -"bZX" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 1 - }, -/turf/open/floor/plasteel/white, -/area/medical/research{ - name = "Research Division" - }) -"bZY" = ( -/obj/machinery/atmospherics/components/unary/tank/air{ - dir = 2 - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"bZZ" = ( -/obj/machinery/portable_atmospherics/canister/oxygen, -/turf/open/floor/plating, -/area/maintenance/aft) -"caa" = ( -/obj/structure/grille/broken, -/obj/structure/lattice, -/turf/open/space, -/area/space) -"cab" = ( -/obj/machinery/atmospherics/pipe/manifold/general/hidden{ - tag = "icon-manifold (WEST)"; - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"cac" = ( -/obj/machinery/atmospherics/pipe/manifold/general/hidden, -/obj/machinery/meter, -/obj/machinery/light/small, -/turf/open/floor/plating, -/area/maintenance/aft) -"cad" = ( -/obj/machinery/atmospherics/components/binary/pump{ - dir = 4; - name = "Air Out"; - on = 1 - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"cae" = ( -/obj/machinery/door/airlock/atmos{ - name = "Atmospherics Maintenance"; - req_access_txt = "12;24" - }, -/obj/machinery/atmospherics/pipe/simple/cyan/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"caf" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/simple/cyan/hidden{ - icon_state = "intact"; - dir = 9 - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"cag" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/sign/poster{ - pixel_x = -32 - }, -/turf/open/floor/plasteel/yellow/corner{ - dir = 8 - }, -/area/hallway/primary/aft) -"cah" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1 - }, -/turf/open/floor/plasteel/white, -/area/medical/research{ - name = "Research Division" - }) -"cai" = ( -/obj/structure/chair/stool, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"caj" = ( -/obj/docking_port/stationary{ - dwidth = 2; - height = 6; - id = "monastery_shuttle_asteroid"; - name = "monastery"; - width = 5 - }, -/turf/open/space, -/area/space) -"cak" = ( -/obj/effect/decal/cleanable/cobweb, -/turf/open/floor/plating, -/area/maintenance/aft) -"cal" = ( -/obj/effect/decal/cleanable/vomit/old, -/turf/open/floor/plating, -/area/maintenance/aft) -"cam" = ( -/obj/structure/chair/office/light{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/freezer, -/area/medical/surgery) -"can" = ( -/turf/closed/wall/r_wall, -/area/space) -"cao" = ( -/obj/structure/window/reinforced{ - dir = 4 - }, -/turf/open/space, -/area/space) -"cap" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/chapel/dock) -"caq" = ( -/obj/machinery/door/airlock/external{ - name = "Pod Docking Bay" - }, -/turf/open/floor/plating, -/area/chapel/dock) -"car" = ( -/obj/machinery/atmospherics/components/unary/outlet_injector/on{ - dir = 2 - }, -/obj/structure/window/reinforced, -/obj/structure/window/reinforced{ - dir = 8; - layer = 2.9 - }, -/turf/open/floor/plating/airless, -/area/space/nearstation) -"cas" = ( -/turf/open/floor/plasteel/darkwarning{ - dir = 9 - }, -/area/maintenance/aft) -"cat" = ( -/turf/open/floor/plating, -/area/chapel/dock) -"cau" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 6 - }, -/turf/open/floor/plating, -/area/chapel/dock) -"cav" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 9 - }, -/turf/open/floor/plating, -/area/chapel/dock) -"caw" = ( -/obj/structure/window/reinforced{ - dir = 8 - }, -/turf/open/space, -/area/space) -"cax" = ( -/turf/open/floor/plasteel/darkwarning{ - dir = 8 - }, -/area/maintenance/aft) -"cay" = ( -/obj/structure/grille, -/obj/structure/window/fulltile, -/obj/structure/sign/deathsposal, -/turf/open/floor/plating, -/area/medical/virology) -"caz" = ( -/obj/machinery/portable_atmospherics/scrubber, -/obj/machinery/atmospherics/pipe/simple/yellow/visible{ - dir = 6 - }, -/turf/open/floor/plasteel, -/area/atmos) -"caA" = ( -/obj/structure/grille, -/obj/machinery/atmospherics/pipe/simple/yellow/visible{ - dir = 4 - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/atmos) -"caB" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/closed/wall, -/area/chapel/dock) -"caC" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; - icon_state = "space"; - layer = 4; - name = "EXTERNAL AIRLOCK"; - pixel_x = 0; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/chapel/dock) -"caD" = ( -/obj/machinery/computer/shuttle/monastery_shuttle, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/chapel/dock) -"caE" = ( -/obj/machinery/atmospherics/components/unary/tank/air{ - dir = 2 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/chapel/dock) -"caF" = ( -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/structure/lattice, -/turf/open/space, -/area/space) -"caG" = ( -/obj/effect/decal/cleanable/oil{ - icon_state = "floor6" - }, -/obj/effect/decal/cleanable/robot_debris/old, -/turf/open/floor/plating, -/area/maintenance/aft) -"caH" = ( -/turf/open/floor/plasteel/darkwarning{ - dir = 4 - }, -/area/maintenance/aft) -"caI" = ( -/obj/structure/window/reinforced{ - dir = 4 - }, -/obj/structure/window/reinforced, -/turf/open/space, -/area/space) -"caJ" = ( -/turf/closed/wall/r_wall, -/area/chapel/dock) -"caK" = ( -/obj/machinery/airalarm{ - dir = 4; - icon_state = "alarm0"; - pixel_x = -22 - }, -/turf/open/floor/plasteel/black, -/area/chapel/dock) -"caL" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4"; - tag = "" - }, -/turf/open/floor/plasteel/black, -/area/chapel/dock) -"caM" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/black, -/area/chapel/dock) -"caN" = ( -/obj/machinery/power/apc{ - dir = 4; - name = "Monastery Docking Bay APC"; - pixel_x = 24 - }, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/black, -/area/chapel/dock) -"caO" = ( -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/structure/window/reinforced, -/turf/open/space, -/area/space) -"caP" = ( -/obj/effect/decal/cleanable/blood/old, -/turf/open/floor/engine, -/area/maintenance/aft) -"caQ" = ( -/obj/effect/decal/cleanable/oil, -/turf/open/floor/plating{ - icon_state = "panelscorched" - }, -/area/maintenance/aft) -"caR" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/hidden, -/obj/structure/chair/office/light{ - dir = 8 - }, -/turf/open/floor/plasteel/white, -/area/medical/virology) -"caS" = ( -/obj/structure/window/reinforced{ - dir = 4 - }, -/obj/structure/window/reinforced, -/obj/structure/lattice, -/turf/open/space, -/area/space) -"caT" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/chapel/asteroid{ - name = "Monastery Asteroid" - }) -"caU" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/obj/structure/extinguisher_cabinet{ - pixel_x = -24 - }, -/obj/machinery/light/small, -/obj/machinery/camera{ - c_tag = "Monastery Dock"; - dir = 1; - network = list("SS13","Monastery") - }, -/turf/open/floor/plasteel/vault{ - dir = 4 - }, -/area/chapel/dock) -"caV" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 9 - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/turf/open/floor/plasteel/black, -/area/chapel/dock) -"caW" = ( -/turf/open/floor/plasteel/black, -/area/chapel/dock) -"caX" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/obj/item/device/radio/intercom{ - dir = 0; - name = "Station Intercom (General)"; - pixel_x = 27 - }, -/obj/machinery/light/small, -/turf/open/floor/plasteel/vault{ - dir = 1 - }, -/area/chapel/dock) -"caY" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/visible{ - dir = 4 - }, -/obj/machinery/atmospherics/components/binary/pump{ - dir = 1; - name = "Pure to Mix"; - on = 0 - }, -/turf/open/floor/plasteel, -/area/atmos) -"caZ" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/cyan/visible{ - dir = 10; - initialize_directions = 10 - }, -/turf/open/floor/plating, -/area/atmos) -"cba" = ( -/obj/structure/window/reinforced{ - dir = 4 - }, -/obj/structure/lattice, -/turf/open/space, -/area/space) -"cbb" = ( -/turf/open/floor/plating/asteroid, -/area/chapel/asteroid{ - name = "Monastery Asteroid" - }) -"cbc" = ( -/turf/closed/wall, -/area/chapel/dock) -"cbd" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/vault, -/area/chapel/dock) -"cbe" = ( -/turf/open/floor/plasteel/vault, -/area/chapel/dock) -"cbf" = ( -/turf/open/floor/plasteel/darkwarning{ - dir = 10 - }, -/area/maintenance/aft) -"cbg" = ( -/obj/structure/chair/comfy/black{ - dir = 1 - }, -/turf/open/floor/plasteel/darkwarning, -/area/maintenance/aft) -"cbh" = ( -/turf/open/floor/plasteel/darkwarning{ - dir = 6 - }, -/area/maintenance/aft) -"cbi" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/extinguisher_cabinet{ - pixel_x = -24 - }, -/turf/open/floor/plasteel/yellow/corner{ - dir = 8 - }, -/area/hallway/primary/aft) -"cbj" = ( -/obj/machinery/atmospherics/pipe/manifold/general/visible{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/atmos) -"cbk" = ( -/obj/machinery/atmospherics/pipe/manifold4w/yellow/visible, -/turf/open/floor/plasteel, -/area/atmos) -"cbl" = ( -/obj/machinery/door/airlock/centcom{ - name = "Chapel"; - opacity = 1 - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/chapel/dock) -"cbm" = ( -/obj/machinery/door/airlock/centcom{ - name = "Chapel"; - opacity = 1 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/chapel/dock) -"cbn" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/cyan/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"cbo" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/holopad, -/turf/open/floor/plasteel, -/area/hallway/primary/aft) -"cbp" = ( -/turf/closed/wall, -/area/atmos) -"cbq" = ( -/obj/machinery/camera{ - c_tag = "Monastery Asteroid Dock Port"; - dir = 4; - network = list("SS13","Monastery") - }, -/turf/open/floor/plating/asteroid, -/area/chapel/asteroid{ - name = "Monastery Asteroid" - }) -"cbr" = ( -/obj/structure/flora/ausbushes/leafybush, -/obj/structure/flora/ausbushes/reedbush, -/turf/open/floor/plating/asteroid, -/area/chapel/asteroid{ - name = "Monastery Asteroid" - }) -"cbs" = ( -/obj/item/device/flashlight/lantern{ - on = 1 - }, -/turf/open/floor/plating/asteroid, -/area/chapel/asteroid{ - name = "Monastery Asteroid" - }) -"cbt" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/turf/open/floor/plasteel/asteroid{ - icon_plating = "asteroid" - }, -/area/chapel/asteroid{ - name = "Monastery Asteroid" - }) -"cbu" = ( -/turf/open/floor/plasteel/asteroid{ - icon_plating = "asteroid" - }, -/area/chapel/asteroid{ - name = "Monastery Asteroid" - }) -"cbv" = ( -/obj/machinery/camera{ - c_tag = "Monastery Asteroid Dock Staboard"; - dir = 8; - network = list("SS13","Monastery") - }, -/turf/open/floor/plating/asteroid, -/area/chapel/asteroid{ - name = "Monastery Asteroid" - }) -"cbw" = ( -/turf/open/floor/plasteel/darkwarning/corner, -/area/engine/gravity_generator) -"cbx" = ( -/turf/open/floor/plasteel/darkwarning, -/area/engine/gravity_generator) -"cby" = ( -/obj/structure/table, -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plating{ - icon_state = "platingdmg3" - }, -/area/maintenance/aft) -"cbz" = ( -/turf/open/floor/plasteel/darkwarning{ - dir = 4 - }, -/area/engine/gravity_generator) -"cbA" = ( -/obj/structure/lattice, -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/structure/window/reinforced, -/obj/structure/lattice, -/turf/open/space, -/area/space) -"cbB" = ( -/turf/open/floor/plasteel/darkwarning{ - dir = 8 - }, -/area/engine/gravity_generator) -"cbC" = ( -/turf/open/floor/plasteel/darkwarning{ - dir = 8 - }, -/area/storage/tech) -"cbD" = ( -/obj/structure/flora/ausbushes, -/turf/open/floor/plating/asteroid, -/area/chapel/asteroid{ - name = "Monastery Asteroid" - }) -"cbE" = ( -/obj/machinery/disposal/bin, -/obj/structure/disposalpipe/trunk{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"cbF" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"cbG" = ( -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"cbH" = ( -/obj/item/device/radio/beacon, -/turf/open/floor/plasteel, -/area/atmos) -"cbI" = ( -/obj/structure/lattice, -/obj/structure/window/reinforced{ - dir = 8 - }, -/turf/open/space, -/area/space) -"cbJ" = ( -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/obj/structure/lattice, -/turf/open/space, -/area/space/nearstation) -"cbK" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plating/airless, -/area/space/nearstation) -"cbL" = ( -/turf/open/floor/plasteel/darkwarning/corner{ - tag = "icon-black_warn_corner (WEST)"; - icon_state = "black_warn_corner"; - dir = 8 - }, -/area/engine/gravity_generator) -"cbM" = ( -/turf/open/floor/plasteel/darkwarning{ - dir = 1 - }, -/area/engine/gravity_generator) -"cbN" = ( -/obj/structure/disposalpipe/segment, -/obj/structure/lattice, -/turf/open/space, -/area/space/nearstation) -"cbO" = ( -/obj/structure/sign/directions/engineering{ - tag = "icon-direction_eng (EAST)"; - icon_state = "direction_eng"; - dir = 4 - }, -/turf/closed/wall, -/area/maintenance/aft) -"cbP" = ( -/turf/open/floor/plating{ - broken = 1; - icon_state = "platingdmg3" - }, -/area/maintenance/aft) -"cbQ" = ( -/obj/item/clothing/head/welding, -/turf/open/floor/plating{ - icon_state = "platingdmg3" - }, -/area/maintenance/aft) -"cbR" = ( -/obj/structure/flora/ausbushes/fernybush, -/turf/open/floor/plating/asteroid, -/area/chapel/asteroid{ - name = "Monastery Asteroid" - }) -"cbS" = ( -/obj/structure/lattice, -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/turf/open/space, -/area/space) -"cbT" = ( -/obj/structure/lattice, -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/turf/open/space, -/area/space/nearstation) -"cbU" = ( -/obj/machinery/light/small{ - brightness = 3; - dir = 8 - }, -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plating{ - broken = 1; - icon_state = "platingdmg3" - }, -/area/maintenance/aft) -"cbV" = ( -/turf/open/floor/plating{ - icon_state = "platingdmg1" - }, -/area/maintenance/aft) -"cbW" = ( -/obj/structure/window/reinforced, -/obj/structure/lattice, -/turf/open/space, -/area/space) -"cbX" = ( -/obj/structure/disposaloutlet, -/obj/structure/disposalpipe/trunk{ - dir = 1 - }, -/turf/open/floor/plating/airless, -/area/space/nearstation) -"cbY" = ( -/obj/structure/grille/broken, -/turf/open/floor/plating{ - icon_state = "panelscorched" - }, -/area/maintenance/aft) -"cbZ" = ( -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plating{ - burnt = 1; - icon_state = "panelscorched" - }, -/area/maintenance/aft) -"cca" = ( -/obj/item/weapon/cigbutt/cigarbutt, -/turf/open/floor/plating{ - icon_state = "platingdmg3" - }, -/area/maintenance/aft) -"ccb" = ( -/obj/effect/decal/cleanable/blood/old, -/turf/open/floor/plating, -/area/maintenance/aft) -"ccc" = ( -/obj/structure/window/reinforced{ - dir = 4 - }, -/obj/structure/window/reinforced, -/obj/structure/window/reinforced{ - dir = 8 - }, -/turf/open/space, -/area/space) -"ccd" = ( -/obj/structure/flora/ausbushes/leafybush, -/obj/structure/flora/ausbushes/reedbush, -/obj/machinery/camera{ - c_tag = "Monastery Asteroid Primary Entrance"; - dir = 1; - network = list("SS13","Monastery") - }, -/turf/open/floor/plating/asteroid, -/area/chapel/asteroid{ - name = "Monastery Asteroid" - }) -"cce" = ( -/obj/machinery/atmospherics/components/binary/pump{ - dir = 1; - name = "Air to Pure"; - on = 0 - }, -/turf/open/floor/plasteel, -/area/atmos) -"ccf" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/green/visible{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/cyan/visible, -/turf/open/floor/plating, -/area/atmos) -"ccg" = ( -/obj/structure/flora/ausbushes, -/obj/machinery/camera{ - c_tag = "Monastery Asteroid Port Fore"; - dir = 1; - network = list("SS13","Monastery") - }, -/turf/open/floor/plating/asteroid, -/area/chapel/asteroid{ - name = "Monastery Asteroid" - }) -"cch" = ( -/turf/closed/wall, -/area/chapel/main{ - name = "Monastery" - }) -"cci" = ( -/obj/machinery/door/airlock/centcom{ - name = "Chapel"; - opacity = 1 - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/black, -/area/chapel/main{ - name = "Monastery" - }) -"ccj" = ( -/obj/machinery/door/airlock/centcom{ - name = "Chapel"; - opacity = 1 - }, -/turf/open/floor/plasteel/black, -/area/chapel/main{ - name = "Monastery" - }) -"cck" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; - icon_state = "space"; - layer = 4; - name = "EXTERNAL AIRLOCK"; - pixel_x = 0; - pixel_y = 0 - }, -/turf/open/floor/plating, -/area/chapel/asteroid{ - name = "Monastery Asteroid" - }) -"ccl" = ( -/obj/structure/lattice, -/obj/structure/window/reinforced{ - dir = 8 - }, -/turf/open/space, -/area/space/nearstation) -"ccm" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/requests_console{ - announcementConsole = 0; - department = "Engineering"; - departmentType = 4; - name = "Engineering RC"; - pixel_x = -32; - pixel_y = 0 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"ccn" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/light/small{ - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/chapel/main{ - name = "Monastery" - }) -"cco" = ( -/obj/machinery/atmospherics/pipe/simple/green/visible, -/obj/machinery/atmospherics/pipe/simple/cyan/visible{ - dir = 4 - }, -/turf/open/floor/plasteel/yellow/side, -/area/atmos) -"ccp" = ( -/obj/machinery/atmospherics/components/trinary/mixer{ - node1_concentration = 0.8; - node2_concentration = 0.2; - on = 1 - }, -/turf/open/floor/plasteel/yellow/side, -/area/atmos) -"ccq" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/hidden{ - tag = "icon-intact (NORTHWEST)"; - icon_state = "intact"; - dir = 9 - }, -/turf/closed/wall/r_wall, -/area/atmos) -"ccr" = ( -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/plasteel/black, -/area/chapel/main{ - name = "Monastery" - }) -"ccs" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/black, -/area/chapel/main{ - name = "Monastery" - }) -"cct" = ( -/turf/open/floor/plasteel/black, -/area/chapel/main{ - name = "Monastery" - }) -"ccu" = ( -/obj/item/device/radio/beacon, -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/plasteel/black, -/area/chapel/main{ - name = "Monastery" - }) -"ccv" = ( -/obj/machinery/door/airlock/external{ - cyclelinkeddir = 4 - }, -/turf/open/floor/plating, -/area/chapel/asteroid{ - name = "Monastery Asteroid" - }) -"ccw" = ( -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/plating, -/area/chapel/asteroid{ - name = "Monastery Asteroid" - }) -"ccx" = ( -/obj/machinery/door/airlock/external{ - cyclelinkeddir = 8 - }, -/turf/open/floor/plating, -/area/chapel/asteroid{ - name = "Monastery Asteroid" - }) -"ccy" = ( -/obj/machinery/door/airlock/external{ - cyclelinkeddir = 4; - req_access_txt = "13" - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"ccz" = ( -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; - icon_state = "space"; - layer = 4; - name = "EXTERNAL AIRLOCK"; - pixel_x = 0; - pixel_y = 32 - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"ccA" = ( -/obj/machinery/door/airlock/external{ - cyclelinkeddir = 8; - req_access_txt = "13" - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"ccB" = ( -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plating{ - broken = 1; - icon_state = "platingdmg1" - }, -/area/maintenance/aft) -"ccC" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/green/visible{ - dir = 5; - initialize_directions = 12 - }, -/turf/open/floor/plating, -/area/atmos) -"ccD" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/green/visible{ - dir = 4; - initialize_directions = 12 - }, -/turf/open/floor/plating, -/area/atmos) -"ccE" = ( -/obj/machinery/atmospherics/pipe/simple/green/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/closed/wall/r_wall, -/area/atmos) -"ccF" = ( -/obj/machinery/atmospherics/pipe/simple/green/hidden{ - tag = "icon-intact (NORTHWEST)"; - icon_state = "intact"; - dir = 9 - }, -/turf/closed/wall/r_wall, -/area/atmos) -"ccG" = ( -/obj/machinery/light/small{ - dir = 1 - }, -/obj/effect/decal/cleanable/cobweb, -/turf/open/floor/plasteel/black, -/area/chapel/main{ - name = "Monastery" - }) -"ccH" = ( -/obj/machinery/door/morgue{ - name = "Confession Booth" - }, -/turf/open/floor/plasteel/black, -/area/chapel/main{ - name = "Monastery" - }) -"ccI" = ( -/obj/structure/chair, -/turf/open/floor/plasteel/chapel{ - dir = 1 - }, -/area/chapel/main{ - name = "Monastery" - }) -"ccJ" = ( -/obj/structure/chair, -/turf/open/floor/plasteel/chapel{ - dir = 4 - }, -/area/chapel/main{ - name = "Monastery" - }) -"ccK" = ( -/obj/structure/chair, -/obj/item/device/radio/intercom{ - dir = 0; - name = "Station Intercom (General)"; - pixel_x = 30; - pixel_y = 0 - }, -/turf/open/floor/plasteel/chapel{ - dir = 4 - }, -/area/chapel/main{ - name = "Monastery" - }) -"ccL" = ( -/obj/structure/lattice, -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/structure/window/reinforced, -/turf/open/space, -/area/space/nearstation) -"ccM" = ( -/obj/structure/closet/emcloset{ - anchored = 1; - desc = "It's a storage unit for emergency breath masks and O2 tanks, and is securely bolted in place."; - name = "anchored emergency closet" - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"ccN" = ( -/obj/structure/chair, -/turf/open/floor/plasteel/black, -/area/chapel/main{ - name = "Monastery" - }) -"ccO" = ( -/obj/structure/chair, -/obj/machinery/light/small{ - dir = 8 - }, -/turf/open/floor/plasteel/chapel{ - dir = 8 - }, -/area/chapel/main{ - name = "Monastery" - }) -"ccP" = ( -/obj/structure/chair, -/turf/open/floor/plasteel/chapel, -/area/chapel/main{ - name = "Monastery" - }) -"ccQ" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/carpet, -/area/chapel/main{ - name = "Monastery" - }) -"ccR" = ( -/turf/open/floor/carpet, -/area/chapel/main{ - name = "Monastery" - }) -"ccS" = ( -/obj/structure/chair, -/turf/open/floor/plasteel/chapel{ - dir = 8 - }, -/area/chapel/main{ - name = "Monastery" - }) -"ccT" = ( -/obj/structure/chair, -/obj/machinery/light/small{ - dir = 4 - }, -/turf/open/floor/plasteel/chapel, -/area/chapel/main{ - name = "Monastery" - }) -"ccU" = ( -/mob/living/simple_animal/butterfly, -/turf/open/floor/grass, -/area/hallway/secondary/construction{ - name = "\improper Monastery Garden" - }) -"ccV" = ( -/obj/machinery/camera{ - c_tag = "Monastery Asteroid Port"; - dir = 1; - network = list("SS13","Monastery") - }, -/turf/open/floor/plating/asteroid, -/area/chapel/asteroid{ - name = "Monastery Asteroid" - }) -"ccW" = ( -/obj/structure/flora/ausbushes/palebush, -/turf/open/floor/plating/asteroid, -/area/chapel/asteroid{ - name = "Monastery Asteroid" - }) -"ccX" = ( -/turf/closed/wall, -/area/chapel/office) -"ccY" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/tinted/fulltile, -/turf/open/floor/plasteel/black, -/area/chapel/office) -"ccZ" = ( -/turf/closed/wall, -/area/chapel/asteroid{ - name = "Monastery Asteroid" - }) -"cda" = ( -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/plasteel/black, -/area/chapel/office) -"cdb" = ( -/obj/structure/chair{ - dir = 1 - }, -/turf/open/floor/plasteel/black, -/area/chapel/office) -"cdc" = ( -/obj/machinery/holopad, -/obj/item/device/flashlight/lantern, -/turf/open/floor/plasteel/chapel, -/area/chapel/main{ - name = "Monastery" - }) -"cdd" = ( -/obj/item/device/flashlight/lantern, -/turf/open/floor/plasteel/chapel{ - dir = 8 - }, -/area/chapel/main{ - name = "Monastery" - }) -"cde" = ( -/obj/structure/chair, -/obj/machinery/camera{ - c_tag = "Chapel"; - dir = 8; - network = list("SS13","Monastery") - }, -/turf/open/floor/plasteel/chapel, -/area/chapel/main{ - name = "Monastery" - }) -"cdf" = ( -/obj/structure/flora/ausbushes/pointybush, -/obj/machinery/camera{ - c_tag = "Monastery Asteroid Starboard"; - dir = 1; - network = list("SS13","Monastery") - }, -/turf/open/floor/plating/asteroid, -/area/chapel/asteroid{ - name = "Monastery Asteroid" - }) -"cdg" = ( -/obj/structure/flora/ausbushes/genericbush, -/turf/open/floor/plating/asteroid, -/area/chapel/asteroid{ - name = "Monastery Asteroid" - }) -"cdh" = ( -/obj/structure/closet{ - name = "chaplain closet" - }, -/obj/item/clothing/under/rank/chaplain, -/obj/item/clothing/shoes/sneakers/black, -/obj/item/weapon/storage/backpack/cultpack, -/obj/item/weapon/storage/fancy/candle_box, -/obj/item/weapon/storage/fancy/candle_box, -/obj/item/clothing/suit/nun, -/obj/item/clothing/head/nun_hood, -/obj/item/clothing/suit/holidaypriest, -/obj/item/device/radio/intercom{ - dir = 0; - name = "Station Intercom (General)"; - pixel_x = 0; - pixel_y = 26 - }, -/obj/machinery/requests_console{ - department = "Chapel"; - departmentType = 2; - pixel_x = -32; - pixel_y = 0 - }, -/turf/open/floor/carpet, -/area/chapel/office) -"cdi" = ( -/obj/machinery/airalarm{ - frequency = 1439; - locked = 0; - pixel_y = 23 - }, -/turf/open/floor/carpet, -/area/chapel/office) -"cdj" = ( -/obj/structure/table/wood, -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-18"; - layer = 4.1; - pixel_y = 8 - }, -/obj/machinery/camera{ - c_tag = "Chapel Office"; - dir = 2; - network = list("SS13","Monastery") - }, -/turf/open/floor/carpet, -/area/chapel/office) -"cdk" = ( -/obj/machinery/door/morgue{ - name = "Confession Booth" - }, -/turf/open/floor/plasteel/black, -/area/chapel/office) -"cdl" = ( -/obj/machinery/light/small{ - dir = 8 - }, -/turf/open/floor/plasteel/chapel{ - dir = 1 - }, -/area/chapel/main{ - name = "Monastery" - }) -"cdm" = ( -/turf/open/floor/plasteel/chapel{ - dir = 4 - }, -/area/chapel/main{ - name = "Monastery" - }) -"cdn" = ( -/obj/structure/table/wood, -/obj/item/weapon/storage/book/bible, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/carpet, -/area/chapel/main{ - name = "Monastery" - }) -"cdo" = ( -/obj/structure/table/wood, -/obj/item/weapon/reagent_containers/food/drinks/trophy{ - pixel_y = 8 - }, -/turf/open/floor/carpet, -/area/chapel/main{ - name = "Monastery" - }) -"cdp" = ( -/turf/open/floor/plasteel/chapel{ - dir = 1 - }, -/area/chapel/main{ - name = "Monastery" - }) -"cdq" = ( -/obj/machinery/light/small{ - dir = 4 - }, -/turf/open/floor/plasteel/chapel{ - dir = 4 - }, -/area/chapel/main{ - name = "Monastery" - }) -"cdr" = ( -/obj/machinery/door/airlock/centcom{ - name = "Chapel Access"; - opacity = 1 - }, -/turf/open/floor/plasteel/black, -/area/chapel/main{ - name = "Monastery" - }) -"cds" = ( -/obj/structure/flora/ausbushes/pointybush, -/turf/open/floor/plating/asteroid, -/area/chapel/asteroid{ - name = "Monastery Asteroid" - }) -"cdt" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/chapel/office) -"cdu" = ( -/obj/machinery/light/small{ - dir = 8 - }, -/turf/open/floor/carpet, -/area/chapel/office) -"cdv" = ( -/obj/structure/chair/comfy/black{ - dir = 4 - }, -/turf/open/floor/carpet, -/area/chapel/office) -"cdw" = ( -/obj/structure/table/wood, -/obj/item/weapon/reagent_containers/food/drinks/bottle/holywater{ - name = "flask of holy water"; - pixel_x = -2; - pixel_y = 2 - }, -/obj/item/weapon/nullrod, -/turf/open/floor/carpet, -/area/chapel/office) -"cdx" = ( -/obj/structure/chair{ - dir = 8 - }, -/obj/machinery/light_switch{ - pixel_x = 26; - pixel_y = -2 - }, -/turf/open/floor/plasteel/black, -/area/chapel/office) -"cdy" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 2; - on = 1 - }, -/turf/open/floor/plasteel/black, -/area/chapel/office) -"cdz" = ( -/obj/machinery/light/small{ - dir = 1 - }, -/obj/item/device/radio/intercom{ - dir = 0; - name = "Station Intercom (General)"; - pixel_x = 0; - pixel_y = 26 - }, -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4"; - tag = "" - }, -/obj/machinery/camera{ - c_tag = "Chapel Port Access"; - dir = 2; - network = list("SS13","Monastery") - }, -/turf/open/floor/plasteel/black, -/area/chapel/office) -"cdA" = ( -/obj/machinery/door/airlock/centcom{ - name = "Chapel Access"; - opacity = 1 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0; - tag = "" - }, -/turf/open/floor/plasteel/black, -/area/chapel/main{ - name = "Monastery" - }) -"cdB" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0; - tag = "" - }, -/turf/open/floor/plasteel/chapel{ - dir = 8 - }, -/area/chapel/main{ - name = "Monastery" - }) -"cdC" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0; - tag = "" - }, -/turf/open/floor/plasteel/chapel, -/area/chapel/main{ - name = "Monastery" - }) -"cdD" = ( -/obj/structure/cable{ - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 10 - }, -/turf/open/floor/carpet, -/area/chapel/main{ - name = "Monastery" - }) -"cdE" = ( -/obj/effect/landmark/start{ - name = "Chaplain" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 6 - }, -/turf/open/floor/carpet, -/area/chapel/main{ - name = "Monastery" - }) -"cdF" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/plasteel/chapel{ - dir = 8 - }, -/area/chapel/main{ - name = "Monastery" - }) -"cdG" = ( -/turf/open/floor/plasteel/chapel, -/area/chapel/main{ - name = "Monastery" - }) -"cdH" = ( -/obj/machinery/door/airlock/centcom{ - name = "Chape Access"; - opacity = 1 - }, -/turf/open/floor/plasteel/black, -/area/chapel/main{ - name = "Monastery" - }) -"cdI" = ( -/obj/machinery/light/small{ - dir = 1 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 2; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/obj/machinery/airalarm{ - pixel_y = 22 - }, -/turf/open/floor/plasteel/black, -/area/chapel/main{ - name = "Monastery" - }) -"cdJ" = ( -/obj/machinery/light/small{ - dir = 1 - }, -/obj/machinery/camera{ - c_tag = "Chapel Starboard Access"; - dir = 2; - network = list("SS13","Monastery") - }, -/turf/open/floor/plasteel/black, -/area/chapel/main{ - name = "Monastery" - }) -"cdK" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/chapel/main{ - name = "Monastery" - }) -"cdL" = ( -/obj/structure/chair, -/turf/open/floor/plating/asteroid, -/area/chapel/asteroid{ - name = "Monastery Asteroid" - }) -"cdM" = ( -/obj/structure/closet/crate/bin, -/obj/machinery/newscaster{ - pixel_x = -32 - }, -/turf/open/floor/carpet, -/area/chapel/office) -"cdN" = ( -/turf/open/floor/carpet, -/area/chapel/office) -"cdO" = ( -/obj/structure/table/wood, -/obj/item/weapon/paper_bin{ - layer = 2.9; - pixel_x = -2; - pixel_y = 4 - }, -/obj/item/weapon/pen, -/turf/open/floor/carpet, -/area/chapel/office) -"cdP" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4"; - tag = "" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 6 - }, -/turf/open/floor/plasteel/black, -/area/chapel/office) -"cdQ" = ( -/obj/machinery/door/airlock/centcom{ - name = "Chapel Office"; - opacity = 1; - req_access_txt = "22" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/chapel/office) -"cdR" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 4; - initialize_directions = 11 - }, -/turf/open/floor/plasteel/black, -/area/chapel/office) -"cdS" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8"; - tag = "" - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 2; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/black, -/area/chapel/office) -"cdT" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-08"; - layer = 4.1 - }, -/turf/open/floor/plasteel/chapel{ - dir = 1 - }, -/area/chapel/main{ - name = "Monastery" - }) -"cdU" = ( -/obj/structure/table/wood/fancy, -/obj/item/weapon/storage/box/matches{ - pixel_x = -3; - pixel_y = 8 - }, -/obj/machinery/light/small, -/turf/open/floor/plasteel/chapel{ - dir = 4 - }, -/area/chapel/main{ - name = "Monastery" - }) -"cdV" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/black, -/area/chapel/main{ - name = "Monastery" - }) -"cdW" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/black, -/area/chapel/main{ - name = "Monastery" - }) -"cdX" = ( -/obj/structure/table/wood/fancy, -/obj/item/weapon/storage/fancy/candle_box, -/obj/machinery/light/small, -/turf/open/floor/plasteel/chapel{ - dir = 1 - }, -/area/chapel/main{ - name = "Monastery" - }) -"cdY" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-08"; - layer = 4.1 - }, -/turf/open/floor/plasteel/chapel{ - dir = 4 - }, -/area/chapel/main{ - name = "Monastery" - }) -"cdZ" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 6 - }, -/turf/open/floor/plasteel/black, -/area/chapel/main{ - name = "Monastery" - }) -"cea" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/plasteel/black, -/area/chapel/main{ - name = "Monastery" - }) -"ceb" = ( -/obj/structure/chair/wood/normal, -/turf/open/floor/plasteel/black, -/area/chapel/main{ - name = "Monastery" - }) -"cec" = ( -/obj/structure/table, -/obj/item/trash/plate, -/obj/item/weapon/kitchen/fork, -/turf/open/floor/plating/asteroid, -/area/chapel/asteroid{ - name = "Monastery Asteroid" - }) -"ced" = ( -/obj/machinery/field/generator, -/obj/machinery/camera{ - c_tag = "Engineering Secure Storage"; - dir = 4; - network = list("SS13") - }, -/turf/open/floor/plating, -/area/engine/engineering) -"cee" = ( -/obj/machinery/power/apc{ - dir = 8; - name = "Chapel Office APC"; - pixel_x = -24; - pixel_y = 0 - }, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 2; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/black, -/area/chapel/office) -"cef" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/turf/open/floor/plasteel/black, -/area/chapel/office) -"ceg" = ( -/obj/machinery/light/small{ - dir = 4 - }, -/obj/structure/cable{ - icon_state = "1-8" - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/turf/open/floor/plasteel/black, -/area/chapel/office) -"ceh" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/closed/wall, -/area/chapel/office) -"cei" = ( -/obj/machinery/door/airlock/centcom{ - name = "Chapel Access"; - opacity = 1 - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/black, -/area/chapel/office) -"cej" = ( -/obj/machinery/door/airlock/centcom{ - name = "Chapel"; - opacity = 1 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/black, -/area/chapel/main{ - name = "Monastery" - }) -"cek" = ( -/obj/machinery/door/airlock/centcom{ - name = "Chapel"; - opacity = 1 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/black, -/area/chapel/main{ - name = "Monastery" - }) -"cel" = ( -/obj/machinery/door/airlock/centcom{ - name = "Chapel Access"; - opacity = 1 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/black, -/area/chapel/main{ - name = "Monastery" - }) -"cem" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/closed/wall, -/area/chapel/main{ - name = "Monastery" - }) -"cen" = ( -/obj/structure/table/wood, -/obj/item/weapon/storage/photo_album, -/turf/open/floor/plasteel/black, -/area/chapel/main{ - name = "Monastery" - }) -"ceo" = ( -/obj/structure/chair{ - dir = 1 - }, -/turf/open/floor/plating/asteroid, -/area/chapel/asteroid{ - name = "Monastery Asteroid" - }) -"cep" = ( -/obj/structure/bodycontainer/crematorium{ - id = "foo" - }, -/obj/effect/decal/cleanable/cobweb, -/turf/open/floor/plasteel/black, -/area/chapel/office) -"ceq" = ( -/obj/machinery/light/small{ - dir = 1 - }, -/obj/machinery/camera{ - c_tag = "Chapel Crematorium"; - dir = 2; - network = list("SS13","Monastery") - }, -/turf/open/floor/plasteel/black, -/area/chapel/office) -"cer" = ( -/obj/machinery/door/airlock/centcom{ - name = "Crematorium"; - opacity = 1; - req_access = "27" - }, -/turf/open/floor/plasteel/black, -/area/chapel/office) -"ces" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/black, -/area/chapel/office) -"cet" = ( -/obj/structure/filingcabinet, -/turf/open/floor/plasteel/black, -/area/chapel/office) -"ceu" = ( -/obj/machinery/suit_storage_unit/standard_unit, -/turf/open/floor/plasteel/black, -/area/chapel/office) -"cev" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4"; - tag = "" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 8 - }, -/turf/open/floor/plasteel/black, -/area/chapel/main{ - name = "Monastery" - }) -"cew" = ( -/obj/structure/cable{ - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/black, -/area/chapel/main{ - name = "Monastery" - }) -"cex" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/black, -/area/chapel/main{ - name = "Monastery" - }) -"cey" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/power/apc{ - dir = 1; - name = "Monastery APC"; - pixel_y = 24 - }, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/turf/open/floor/plasteel/black, -/area/chapel/main{ - name = "Monastery" - }) -"cez" = ( -/obj/machinery/light/small{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/chapel/main{ - name = "Monastery" - }) -"ceA" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/black, -/area/chapel/main{ - name = "Monastery" - }) -"ceB" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/open/floor/plasteel/black, -/area/chapel/main{ - name = "Monastery" - }) -"ceC" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/airalarm{ - pixel_y = 22 - }, -/turf/open/floor/plasteel/black, -/area/chapel/main{ - name = "Monastery" - }) -"ceD" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/chapel/main{ - name = "Monastery" - }) -"ceE" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 4; - initialize_directions = 11 - }, -/turf/open/floor/plasteel/black, -/area/chapel/main{ - name = "Monastery" - }) -"ceF" = ( -/obj/effect/decal/cleanable/blood/old, -/turf/open/floor/plasteel/black, -/area/chapel/office) -"ceG" = ( -/obj/machinery/button/crematorium{ - id = "foo"; - pixel_x = 25 - }, -/turf/open/floor/plasteel/black, -/area/chapel/office) -"ceH" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 5 - }, -/turf/closed/wall, -/area/chapel/office) -"ceI" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/chapel/office) -"ceJ" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/chapel/main{ - name = "Monastery" - }) -"ceK" = ( -/obj/machinery/atmospherics/pipe/manifold4w/scrubbers/hidden, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/chapel/main{ - name = "Monastery" - }) -"ceL" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/chapel/main{ - name = "Monastery" - }) -"ceM" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/chapel/main{ - name = "Monastery" - }) -"ceN" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/chapel/main{ - name = "Monastery" - }) -"ceO" = ( -/obj/machinery/light/small{ - dir = 1 - }, -/obj/structure/closet/emcloset{ - anchored = 1; - desc = "It's a storage unit for emergency breath masks and O2 tanks, and is securely bolted in place."; - name = "anchored emergency closet" - }, -/turf/open/floor/plating, -/area/chapel/main{ - name = "Monastery" - }) -"ceP" = ( -/obj/machinery/chem_master/condimaster, -/turf/open/floor/plasteel/hydrofloor, -/area/chapel/main{ - name = "Monastery" - }) -"ceQ" = ( -/obj/machinery/seed_extractor, -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/plasteel/hydrofloor, -/area/chapel/main{ - name = "Monastery" - }) -"ceR" = ( -/obj/machinery/biogenerator, -/turf/open/floor/plasteel/hydrofloor, -/area/chapel/main{ - name = "Monastery" - }) -"ceS" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/black, -/area/chapel/main{ - name = "Monastery" - }) -"ceT" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/chapel/main{ - name = "Monastery" - }) -"ceU" = ( -/turf/closed/wall, -/area/hallway/secondary/construction{ - name = "\improper Monastery Garden" - }) -"ceV" = ( -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/hallway/secondary/construction{ - name = "\improper Monastery Garden" - }) -"ceW" = ( -/obj/machinery/door/airlock/external{ - cyclelinkeddir = 4 - }, -/turf/open/floor/plating, -/area/chapel/main{ - name = "Monastery" - }) -"ceX" = ( -/turf/open/floor/plating, -/area/chapel/main{ - name = "Monastery" - }) -"ceY" = ( -/obj/machinery/door/airlock/external{ - cyclelinkeddir = 8 - }, -/turf/open/floor/plating, -/area/chapel/main{ - name = "Monastery" - }) -"ceZ" = ( -/turf/open/floor/plasteel/asteroid, -/area/chapel/asteroid{ - name = "Monastery Asteroid" - }) -"cfa" = ( -/obj/structure/flora/ausbushes/fernybush, -/obj/machinery/camera{ - c_tag = "Monastery Asteroid Starboard Aft"; - dir = 1; - network = list("SS13","Monastery") - }, -/turf/open/floor/plasteel/asteroid, -/area/chapel/asteroid{ - name = "Monastery Asteroid" - }) -"cfb" = ( -/obj/structure/flora/ausbushes, -/turf/open/floor/plasteel/asteroid, -/area/chapel/asteroid{ - name = "Monastery Asteroid" - }) -"cfc" = ( -/turf/closed/mineral, -/area/chapel/asteroid{ - name = "Monastery Asteroid" - }) -"cfd" = ( -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/obj/machinery/power/apc{ - dir = 4; - name = "Monastery External APC"; - pixel_x = 24 - }, -/turf/open/floor/plasteel/asteroid{ - icon_plating = "asteroid" - }, -/area/chapel/asteroid{ - name = "Monastery Asteroid" - }) -"cfe" = ( -/obj/machinery/airalarm{ - pixel_y = 22 - }, -/obj/item/weapon/storage/firstaid/regular, -/turf/open/floor/plasteel/hydrofloor, -/area/chapel/main{ - name = "Monastery" - }) -"cff" = ( -/obj/item/seeds/wheat, -/turf/open/floor/plasteel/hydrofloor, -/area/chapel/main{ - name = "Monastery" - }) -"cfg" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/hydrofloor, -/area/chapel/main{ - name = "Monastery" - }) -"cfh" = ( -/obj/item/weapon/storage/bag/plants, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/extinguisher_cabinet{ - pixel_x = 24 - }, -/turf/open/floor/plasteel/hydrofloor, -/area/chapel/main{ - name = "Monastery" - }) -"cfi" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/chapel/main{ - name = "Monastery" - }) -"cfj" = ( -/obj/machinery/light/small{ - dir = 8 - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/chapel/main{ - name = "Monastery" - }) -"cfk" = ( -/obj/structure/flora/ausbushes/pointybush, -/turf/open/floor/grass, -/area/hallway/secondary/construction{ - name = "\improper Monastery Garden" - }) -"cfl" = ( -/obj/structure/flora/ausbushes/ywflowers, -/obj/structure/flora/ausbushes/sparsegrass, -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/grass, -/area/hallway/secondary/construction{ - name = "\improper Monastery Garden" - }) -"cfm" = ( -/obj/structure/flora/ausbushes/ywflowers, -/obj/structure/flora/ausbushes/ppflowers, -/obj/structure/flora/ausbushes/sparsegrass, -/turf/open/floor/grass, -/area/hallway/secondary/construction{ - name = "\improper Monastery Garden" - }) -"cfn" = ( -/obj/structure/flora/ausbushes/ywflowers, -/obj/structure/flora/ausbushes/sparsegrass, -/obj/machinery/camera{ - c_tag = "Monastery Garden"; - dir = 2; - network = list("SS13","Monastery") - }, -/turf/open/floor/grass, -/area/hallway/secondary/construction{ - name = "\improper Monastery Garden" - }) -"cfo" = ( -/obj/machinery/hydroponics/soil, -/obj/item/seeds/carrot, -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/grass, -/area/hallway/secondary/construction{ - name = "\improper Monastery Garden" - }) -"cfp" = ( -/obj/machinery/hydroponics/soil, -/obj/item/seeds/watermelon/holy, -/turf/open/floor/grass, -/area/hallway/secondary/construction{ - name = "\improper Monastery Garden" - }) -"cfq" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/turf/open/floor/plasteel/asteroid{ - icon_plating = "asteroid" - }, -/area/chapel/asteroid{ - name = "Monastery Asteroid" - }) -"cfr" = ( -/obj/machinery/door/airlock/external{ - cyclelinkeddir = 4 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/floor/plating, -/area/chapel/main{ - name = "Monastery" - }) -"cfs" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/floor/plating, -/area/chapel/main{ - name = "Monastery" - }) -"cft" = ( -/obj/machinery/door/airlock/external{ - cyclelinkeddir = 8 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/floor/plating, -/area/chapel/main{ - name = "Monastery" - }) -"cfu" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/hydrofloor, -/area/chapel/main{ - name = "Monastery" - }) -"cfv" = ( -/obj/machinery/vending/hydronutrients, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/hydrofloor, -/area/chapel/main{ - name = "Monastery" - }) -"cfw" = ( -/obj/item/weapon/shovel/spade, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/hydrofloor, -/area/chapel/main{ - name = "Monastery" - }) -"cfx" = ( -/obj/structure/sink{ - dir = 4; - pixel_x = 11 - }, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8"; - tag = "" - }, -/turf/open/floor/plasteel/hydrofloor, -/area/chapel/main{ - name = "Monastery" - }) -"cfy" = ( -/obj/structure/flora/ausbushes/genericbush, -/obj/machinery/power/apc{ - dir = 8; - name = "Garden APC"; - pixel_x = -24; - pixel_y = 0 - }, -/obj/structure/cable{ - icon_state = "0-2"; - pixel_y = 1; - d2 = 2 - }, -/turf/open/floor/grass, -/area/hallway/secondary/construction{ - name = "\improper Monastery Garden" - }) -"cfz" = ( -/turf/open/floor/grass, -/area/hallway/secondary/construction{ - name = "\improper Monastery Garden" - }) -"cfA" = ( -/obj/item/weapon/cultivator, -/turf/open/floor/grass, -/area/hallway/secondary/construction{ - name = "\improper Monastery Garden" - }) -"cfB" = ( -/obj/machinery/hydroponics/soil, -/obj/item/seeds/sugarcane, -/turf/open/floor/grass, -/area/hallway/secondary/construction{ - name = "\improper Monastery Garden" - }) -"cfC" = ( -/obj/structure/closet/cabinet, -/obj/item/clothing/suit/holidaypriest, -/obj/item/clothing/suit/nun, -/obj/item/clothing/head/nun_hood, -/obj/machinery/button/door{ - id = "Cell1"; - name = "Cell Bolt Control"; - normaldoorcontrol = 1; - pixel_x = -25; - pixel_y = 0; - req_access_txt = "0"; - specialfunctions = 4 - }, -/turf/open/floor/plasteel/grimy, -/area/chapel/main{ - name = "Monastery" - }) -"cfD" = ( -/obj/structure/dresser, -/obj/structure/sign/securearea{ - desc = "Under the painting a plaque reads: 'While the meat grinder may not have spared you, fear not. Not one part of you has gone to waste... You were delicious.'"; - icon_state = "monkey_painting"; - name = "Mr. Deempisi portrait"; - pixel_x = 0; - pixel_y = 28 - }, -/turf/open/floor/plasteel/grimy, -/area/chapel/main{ - name = "Monastery" - }) -"cfE" = ( -/obj/structure/table/wood, -/obj/effect/decal/cleanable/cobweb{ - icon_state = "cobweb2" - }, -/obj/machinery/light/small{ - dir = 4 - }, -/obj/item/device/flashlight/lantern, -/turf/open/floor/plasteel/grimy, -/area/chapel/main{ - name = "Monastery" - }) -"cfF" = ( -/obj/structure/toilet{ - pixel_y = 8 - }, -/obj/machinery/light/small{ - brightness = 3; - dir = 8 - }, -/turf/open/floor/plasteel/showroomfloor, -/area/chapel/main{ - name = "Monastery" - }) -"cfG" = ( -/obj/machinery/camera{ - c_tag = "Monastery Kitchen"; - dir = 4; - network = list("SS13","Monastery") - }, -/turf/open/floor/plasteel/hydrofloor, -/area/chapel/main{ - name = "Monastery" - }) -"cfH" = ( -/obj/machinery/vending/dinnerware, -/turf/open/floor/plasteel/hydrofloor, -/area/chapel/main{ - name = "Monastery" - }) -"cfI" = ( -/obj/item/clothing/suit/apron/chef, -/turf/open/floor/plasteel/hydrofloor, -/area/chapel/main{ - name = "Monastery" - }) -"cfJ" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 6 - }, -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/turf/open/floor/plasteel/hydrofloor, -/area/chapel/main{ - name = "Monastery" - }) -"cfK" = ( -/obj/machinery/door/airlock{ - name = "Kitchen" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/black, -/area/chapel/main{ - name = "Monastery" - }) -"cfL" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4"; - tag = "" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 4; - initialize_directions = 11 - }, -/obj/structure/cable{ - icon_state = "1-8" - }, -/turf/open/floor/plasteel/black, -/area/chapel/main{ - name = "Monastery" - }) -"cfM" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/chapel/main{ - name = "Monastery" - }) -"cfN" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/door/airlock{ - name = "Garden" - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/hallway/secondary/construction{ - name = "\improper Monastery Garden" - }) -"cfO" = ( -/obj/structure/cable{ - icon_state = "1-8" - }, -/turf/open/floor/grass, -/area/hallway/secondary/construction{ - name = "\improper Monastery Garden" - }) -"cfP" = ( -/obj/structure/sink/puddle, -/obj/item/weapon/reagent_containers/glass/bucket, -/obj/effect/landmark/event_spawn, -/turf/open/floor/grass, -/area/hallway/secondary/construction{ - name = "\improper Monastery Garden" - }) -"cfQ" = ( -/obj/structure/flora/ausbushes/sunnybush, -/turf/open/floor/grass, -/area/hallway/secondary/construction{ - name = "\improper Monastery Garden" - }) -"cfR" = ( -/obj/machinery/door/airlock{ - name = "Garden" - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/hallway/secondary/construction{ - name = "\improper Monastery Garden" - }) -"cfS" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 8 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/chapel/main{ - name = "Monastery" - }) -"cfT" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/chapel/main{ - name = "Monastery" - }) -"cfU" = ( -/obj/machinery/door/airlock{ - id_tag = "Cell1"; - name = "Cell 1" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/grimy, -/area/chapel/main{ - name = "Monastery" - }) -"cfV" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/grimy, -/area/chapel/main{ - name = "Monastery" - }) -"cfW" = ( -/turf/open/floor/plasteel/grimy, -/area/chapel/main{ - name = "Monastery" - }) -"cfX" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 2; - on = 1 - }, -/turf/open/floor/plasteel/grimy, -/area/chapel/main{ - name = "Monastery" - }) -"cfY" = ( -/obj/machinery/door/airlock{ - name = "Bathroom" - }, -/turf/open/floor/plasteel/grimy, -/area/chapel/main{ - name = "Monastery" - }) -"cfZ" = ( -/obj/structure/sink{ - dir = 4; - pixel_x = 11 - }, -/turf/open/floor/plasteel/showroomfloor, -/area/chapel/main{ - name = "Monastery" - }) -"cga" = ( -/obj/item/chair/stool, -/turf/open/floor/plating{ - broken = 1; - icon_state = "platingdmg1" - }, -/area/maintenance/aft) -"cgb" = ( -/obj/structure/reagent_dispensers/fueltank, -/turf/open/floor/plating{ - broken = 1; - icon_state = "platingdmg3" - }, -/area/maintenance/aft) -"cgc" = ( -/obj/structure/flora/ausbushes/leafybush, -/obj/machinery/camera{ - c_tag = "Monastery Asteroid Port Aft"; - dir = 8; - network = list("SS13","Monastery") - }, -/turf/open/floor/plating/asteroid, -/area/chapel/asteroid{ - name = "Monastery Asteroid" - }) -"cgd" = ( -/obj/structure/table, -/obj/machinery/microwave, -/obj/machinery/light/small{ - dir = 1 - }, -/obj/effect/decal/cleanable/cobweb, -/obj/item/device/radio/intercom{ - dir = 0; - name = "Station Intercom (General)"; - pixel_x = 0; - pixel_y = 26 - }, -/turf/open/floor/plasteel/hydrofloor, -/area/chapel/main{ - name = "Monastery" - }) -"cge" = ( -/turf/open/floor/plasteel/hydrofloor, -/area/chapel/main{ - name = "Monastery" - }) -"cgf" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/plasteel/hydrofloor, -/area/chapel/main{ - name = "Monastery" - }) -"cgg" = ( -/obj/item/weapon/reagent_containers/glass/bucket, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 9 - }, -/turf/open/floor/plasteel/hydrofloor, -/area/chapel/main{ - name = "Monastery" - }) -"cgh" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/black, -/area/chapel/main{ - name = "Monastery" - }) -"cgi" = ( -/obj/machinery/hydroponics/soil, -/obj/item/seeds/wheat, -/turf/open/floor/grass, -/area/hallway/secondary/construction{ - name = "\improper Monastery Garden" - }) -"cgj" = ( -/obj/structure/flora/ausbushes/genericbush, -/turf/open/floor/grass, -/area/hallway/secondary/construction{ - name = "\improper Monastery Garden" - }) -"cgk" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 8 - }, -/turf/open/floor/plasteel/black, -/area/chapel/main{ - name = "Monastery" - }) -"cgl" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/chapel/main{ - name = "Monastery" - }) -"cgm" = ( -/obj/structure/table/wood, -/obj/machinery/light/small{ - dir = 8 - }, -/obj/item/device/instrument/violin, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/grimy, -/area/chapel/main{ - name = "Monastery" - }) -"cgn" = ( -/obj/structure/chair/wood/normal{ - icon_state = "wooden_chair"; - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/grimy, -/area/chapel/main{ - name = "Monastery" - }) -"cgo" = ( -/obj/structure/bed, -/obj/item/weapon/bedsheet/green, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 9 - }, -/turf/open/floor/plasteel/grimy, -/area/chapel/main{ - name = "Monastery" - }) -"cgp" = ( -/obj/machinery/shower{ - dir = 8; - pixel_y = -4 - }, -/obj/item/weapon/soap/homemade, -/turf/open/floor/plasteel/showroomfloor, -/area/chapel/main{ - name = "Monastery" - }) -"cgq" = ( -/turf/closed/mineral{ - baseturf = /turf/open/floor/plating/asteroid - }, -/area/chapel/asteroid{ - name = "Monastery Asteroid" - }) -"cgr" = ( -/obj/structure/flora/ausbushes/leafybush, -/obj/structure/flora/ausbushes/fernybush, -/turf/open/floor/plating/asteroid, -/area/chapel/asteroid{ - name = "Monastery Asteroid" - }) -"cgs" = ( -/obj/item/weapon/phone, -/turf/open/floor/plating, -/area/chapel/main{ - name = "Monastery" - }) -"cgt" = ( -/obj/structure/table, -/obj/machinery/reagentgrinder, -/turf/open/floor/plasteel/hydrofloor, -/area/chapel/main{ - name = "Monastery" - }) -"cgu" = ( -/obj/structure/table, -/obj/item/weapon/reagent_containers/food/condiment/saltshaker{ - pixel_x = 3; - pixel_y = 4 - }, -/obj/item/weapon/reagent_containers/food/condiment/peppermill, -/obj/item/weapon/storage/box/ingredients/wildcard{ - layer = 3.1 - }, -/turf/open/floor/plasteel/hydrofloor, -/area/chapel/main{ - name = "Monastery" - }) -"cgv" = ( -/obj/structure/table, -/obj/item/weapon/reagent_containers/food/condiment/flour, -/obj/item/weapon/kitchen/rollingpin, -/obj/item/weapon/kitchen/knife, -/obj/machinery/light/small, -/turf/open/floor/plasteel/hydrofloor, -/area/chapel/main{ - name = "Monastery" - }) -"cgw" = ( -/obj/structure/closet/crate/bin, -/turf/open/floor/plasteel/hydrofloor, -/area/chapel/main{ - name = "Monastery" - }) -"cgx" = ( -/obj/structure/reagent_dispensers/watertank/high, -/turf/open/floor/plasteel/hydrofloor, -/area/chapel/main{ - name = "Monastery" - }) -"cgy" = ( -/obj/machinery/light/small{ - dir = 8 - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/camera{ - c_tag = "Monastery Kitchen Entrance"; - dir = 4; - network = list("SS13","Monastery") - }, -/turf/open/floor/plasteel/black, -/area/chapel/main{ - name = "Monastery" - }) -"cgz" = ( -/obj/machinery/hydroponics/soil, -/obj/item/seeds/grass, -/turf/open/floor/grass, -/area/hallway/secondary/construction{ - name = "\improper Monastery Garden" - }) -"cgA" = ( -/obj/machinery/hydroponics/soil, -/obj/item/seeds/apple, -/obj/machinery/light/small, -/turf/open/floor/grass, -/area/hallway/secondary/construction{ - name = "\improper Monastery Garden" - }) -"cgB" = ( -/obj/structure/flora/ausbushes/ywflowers, -/obj/structure/flora/ausbushes/sparsegrass, -/turf/open/floor/grass, -/area/hallway/secondary/construction{ - name = "\improper Monastery Garden" - }) -"cgC" = ( -/obj/structure/flora/ausbushes/ywflowers, -/obj/structure/flora/ausbushes/sparsegrass, -/obj/machinery/light/small, -/turf/open/floor/grass, -/area/hallway/secondary/construction{ - name = "\improper Monastery Garden" - }) -"cgD" = ( -/obj/machinery/light/small{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/camera{ - c_tag = "Monastery Cells"; - dir = 8; - network = list("SS13","Monastery") - }, -/turf/open/floor/plasteel/black, -/area/chapel/main{ - name = "Monastery" - }) -"cgE" = ( -/turf/closed/wall/mineral/titanium, -/area/shuttle/abandoned) -"cgF" = ( -/obj/structure/shuttle/engine/propulsion/burst{ - tag = "icon-propulsion (NORTH)"; - icon_state = "propulsion"; - dir = 1 - }, -/turf/closed/wall/mineral/titanium, -/area/shuttle/abandoned) -"cgG" = ( -/obj/machinery/door/airlock/glass{ - name = "Shuttle Airlock" - }, -/turf/open/floor/plasteel/black, -/area/shuttle/abandoned) -"cgH" = ( -/obj/structure/closet/cabinet, -/obj/item/clothing/suit/holidaypriest, -/obj/item/clothing/suit/nun, -/obj/item/clothing/head/nun_hood, -/obj/machinery/button/door{ - id = "Cell2"; - name = "Cell Bolt Control"; - normaldoorcontrol = 1; - pixel_x = -25; - pixel_y = 0; - req_access_txt = "0"; - specialfunctions = 4 - }, -/turf/open/floor/plasteel/grimy, -/area/chapel/main{ - name = "Monastery" - }) -"cgI" = ( -/obj/machinery/light/small{ - dir = 4 - }, -/obj/structure/easel, -/obj/item/weapon/canvas/twentythreeXnineteen, -/turf/open/floor/plasteel/grimy, -/area/chapel/main{ - name = "Monastery" - }) -"cgJ" = ( -/obj/structure/toilet{ - pixel_y = 8 - }, -/turf/open/floor/plasteel/showroomfloor, -/area/chapel/main{ - name = "Monastery" - }) -"cgK" = ( -/turf/open/floor/plasteel/black, -/area/shuttle/abandoned) -"cgL" = ( -/turf/open/floor/plasteel, -/area/shuttle/abandoned) -"cgM" = ( -/obj/machinery/light/small{ - dir = 8 - }, -/obj/machinery/airalarm{ - pixel_y = 22 - }, -/turf/open/floor/plasteel/black, -/area/chapel/main{ - name = "Monastery" - }) -"cgN" = ( -/obj/structure/closet/coffin, -/turf/open/floor/plasteel/black, -/area/chapel/main{ - name = "Monastery" - }) -"cgO" = ( -/obj/structure/closet/coffin, -/obj/machinery/camera{ - c_tag = "Monastery Funeral Parlor"; - dir = 2; - network = list("SS13","Monastery") - }, -/turf/open/floor/plasteel/black, -/area/chapel/main{ - name = "Monastery" - }) -"cgP" = ( -/obj/structure/closet/coffin, -/obj/machinery/light/small{ - dir = 4 - }, -/obj/effect/decal/cleanable/cobweb{ - icon_state = "cobweb2" - }, -/turf/open/floor/plasteel/black, -/area/chapel/main{ - name = "Monastery" - }) -"cgQ" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 6 - }, -/turf/open/floor/plasteel/black, -/area/chapel/main{ - name = "Monastery" - }) -"cgR" = ( -/obj/machinery/door/airlock/centcom{ - name = "Chapel Garden"; - opacity = 1 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/chapel/main{ - name = "Monastery" - }) -"cgS" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 1; - initialize_directions = 11 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/chapel/main{ - name = "Monastery" - }) -"cgT" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 1 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/chapel/main{ - name = "Monastery" - }) -"cgU" = ( -/obj/machinery/door/airlock{ - id_tag = "Cell2"; - name = "Cell 2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/grimy, -/area/chapel/main{ - name = "Monastery" - }) -"cgV" = ( -/obj/structure/closet/emcloset, -/obj/effect/decal/cleanable/cobweb, -/obj/effect/decal/cleanable/blood/old, -/turf/open/floor/plasteel/black, -/area/chapel/main{ - name = "Monastery" - }) -"cgW" = ( -/obj/structure/table, -/obj/item/weapon/crowbar, -/obj/item/clothing/mask/gas, -/turf/open/floor/plasteel/black, -/area/chapel/main{ - name = "Monastery" - }) -"cgX" = ( -/obj/machinery/door/window/eastleft{ - dir = 1; - name = "Coffin Storage"; - req_one_access_txt = "22" - }, -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; - icon_state = "space"; - layer = 4; - name = "EXTERNAL AIRLOCK"; - pixel_x = -32; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 6 - }, -/turf/open/floor/plasteel/black, -/area/chapel/main{ - name = "Monastery" - }) -"cgY" = ( -/obj/structure/window/reinforced{ - dir = 1; - layer = 2.9 - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 1 - }, -/turf/open/floor/plasteel/black, -/area/chapel/main{ - name = "Monastery" - }) -"cgZ" = ( -/obj/structure/window/reinforced{ - dir = 1; - layer = 2.9 - }, -/obj/structure/chair, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/carpet, -/area/chapel/main{ - name = "Monastery" - }) -"cha" = ( -/obj/structure/window/reinforced{ - dir = 1; - layer = 2.9 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/chapel/main{ - name = "Monastery" - }) -"chb" = ( -/obj/machinery/light/small{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 6 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 9 - }, -/turf/open/floor/plasteel/black, -/area/chapel/main{ - name = "Monastery" - }) -"chc" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4"; - tag = "90Curve" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/open/floor/plasteel/black, -/area/chapel/main{ - name = "Monastery" - }) -"chd" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/chapel/main{ - name = "Monastery" - }) -"che" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8"; - tag = "" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 1 - }, -/turf/open/floor/plasteel/black, -/area/chapel/main{ - name = "Monastery" - }) -"chf" = ( -/obj/machinery/light/small, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/black, -/area/chapel/main{ - name = "Monastery" - }) -"chg" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/chapel/main{ - name = "Monastery" - }) -"chh" = ( -/obj/machinery/light/small, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/chapel/main{ - name = "Monastery" - }) -"chi" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 1 - }, -/turf/open/floor/plasteel/black, -/area/chapel/main{ - name = "Monastery" - }) -"chj" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8"; - tag = "" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/black, -/area/chapel/main{ - name = "Monastery" - }) -"chk" = ( -/obj/structure/closet/firecloset, -/obj/effect/decal/cleanable/cobweb, -/turf/open/floor/plating{ - icon_state = "platingdmg3" - }, -/area/maintenance/fsmaint) -"chl" = ( -/obj/structure/grille/broken, -/turf/open/floor/plating{ - icon_state = "platingdmg3" - }, -/area/maintenance/fsmaint) -"chm" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/hidden, -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/showroomfloor, -/area/security/warden) -"chn" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/hidden, -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel, -/area/security/brig) -"cho" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/security/brig) -"chp" = ( -/obj/machinery/holopad, -/turf/open/floor/plasteel, -/area/quartermaster/miningdock) -"chq" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/sign/map{ - icon_state = "map-pubby"; - pixel_y = 32 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"chr" = ( -/obj/item/weapon/storage/toolbox/mechanical, -/turf/open/floor/plating, -/area/maintenance/aft) - -(1,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(2,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(3,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(4,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(5,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(6,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(7,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(8,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(9,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(10,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(11,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(12,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(13,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(14,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(15,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(16,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(17,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(18,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(19,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(20,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(21,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(22,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(23,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(24,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(25,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(26,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(27,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(28,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(29,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(30,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(31,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(32,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aar -aas -aas -aas -aas -aec -aas -aas -aas -aaY -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(33,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aar -aas -aas -aas -aas -aas -aas -acV -adn -acV -acW -aed -aeE -aeX -afa -afv -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(34,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aas -abv -abv -abv -abv -abv -aas -acW -acW -acW -acW -aee -acW -aeY -afa -afw -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aac -aac -aac -aac -aac -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(35,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aas -aax -aax -aax -aax -aax -aas -acX -acW -acW -acW -aef -aeF -aeZ -afa -afx -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aac -aaa -aad -aaa -aac -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(36,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aar -aas -aas -aas -aaY -aaa -aaa -aas -aax -abF -aax -aax -aax -aas -acY -acW -acW -acW -aeg -aas -aas -aas -afM -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aad -aad -axF -aad -aad -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(37,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aas -aaw -aaH -aaS -aas -abb -aaa -aas -abw -abG -abR -aax -aax -aas -acZ -acW -acW -acW -aeh -aas -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aac -aac -aac -aac -aac -aac -aac -aac -aac -aac -aaa -axG -aaa -aac -aac -aac -aac -aac -aac -aac -aac -aac -aac -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -cgE -aaQ -cgG -aaQ -cgE -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(38,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aat -aax -aax -aax -aas -aas -aas -aas -aas -aas -aas -acf -acv -aas -aas -ado -ads -adI -aas -aas -aas -aaY -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aad -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -axG -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aad -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -cgE -cgE -cgK -cgL -cgK -cgE -cgE -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(39,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aat -aay -aax -aax -aas -abc -aax -aax -aax -aax -abS -aax -aax -acI -aax -aax -aax -aax -aax -abS -afa -afv -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aac -aaa -aoS -aoS -aoS -aoS -aoS -aoS -aoS -aoS -aaa -axH -aaa -aoS -aoS -aoS -aoS -aoS -aoS -aoS -aoS -aaa -aac -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -cgE -cgE -cgK -cgK -cgL -cgK -cgK -cgE -cgE -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(40,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aat -aaz -aaI -aax -aaZ -aax -aax -aax -aax -aax -abT -aax -aax -aax -aax -aax -aax -aax -aax -aeG -afa -afw -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aac -aad -aoT -apI -apI -apI -apI -apI -apI -apI -aws -axI -ayV -azV -azV -azV -azV -azV -azV -azV -aFN -aad -aac -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -cgF -cgK -cgK -ajC -aHi -aYY -cgK -cgK -bDQ -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(41,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aat -aaA -aax -aaT -aas -abd -abg -abg -abg -abg -abS -aax -aax -aax -aax -aax -aax -aax -aax -abS -afa -afx -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aac -aaa -aoU -aoU -aoU -aoU -aoU -aoU -aoU -aoU -aaa -axJ -aaa -aoW -aoW -aoW -aoW -aoW -aoW -aoW -aoU -aaa -aac -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -cgG -cgL -cgL -aks -aHn -aZd -cgL -cgL -cgG -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(42,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aat -aaB -aax -aax -aas -aas -aas -abl -aas -aas -aas -acg -abS -aas -aas -aas -adt -adJ -aas -aas -aas -aba -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -adf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -axJ -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aac -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aab -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -cgF -cgK -cgK -akv -aHF -aZe -cgK -cgK -bDQ -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(43,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aas -aaB -aax -aaU -aas -aba -aaa -aaa -aaa -aas -aax -aax -aax -aas -ada -aax -aax -aax -aei -aeH -aas -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aac -aaa -aoS -aoS -aoS -aoS -aoS -aoS -aoS -aoS -aaa -axJ -aaa -aoS -aoS -aoS -aoS -aoS -aoS -aoS -aoS -aaa -aac -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -cgE -cgE -cgK -cgK -cgL -cgK -cgK -cgE -cgE -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(44,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aau -aas -aas -aas -aba -aaa -aaa -aaa -aaa -abH -aax -aax -aax -aas -adb -aax -aax -aax -aej -aas -aas -aas -afN -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aac -aad -aoV -apJ -apJ -apJ -apJ -apJ -apJ -apJ -awt -axJ -ayW -azW -azW -azW -azW -azW -azW -azW -aFO -aad -aac -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -cgE -cgE -cgK -cgL -cgK -cgE -cgE -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(45,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -abI -aax -aax -aax -aas -adc -aax -aax -aax -aax -aax -afb -afa -afv -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aac -aaa -aoU -aoU -aoU -aoU -aoU -aoU -aoU -aoU -aaa -axJ -aaa -aoW -aoW -aoW -aoW -aoW -aoW -aoW -aoU -aaa -aac -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -cgE -amo -aHG -amo -cgE -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(46,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aau -aas -aas -aas -aas -add -abF -aax -aax -aax -aax -afc -afa -afw -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aac -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -axJ -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aac -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aac -aac -aac -adf -aac -aac -aac -aac -aac -aaa -aaa -aaa -aaa -cfc -cdK -ceW -cdK -cfc -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(47,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -acw -aas -ade -adp -aax -adK -adK -aax -afd -afa -afx -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aac -aaa -aoS -aoS -aoS -aoS -aoS -aoS -aoS -aoS -aaa -axJ -aaa -aoS -aoS -aoS -aoS -aoS -aoS -aoS -aoS -aaa -aac -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aac -aad -aac -aac -aac -aac -aac -aaa -cao -cba -cao -cao -cao -cba -cao -cba -cao -cao -cao -cfc -cfc -cfc -cdK -ceX -cdK -cfc -cfc -cfc -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(48,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aau -aas -aas -aas -aas -abl -aas -aas -aas -aba -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aac -aad -aoV -apJ -apJ -apJ -apJ -apJ -apJ -apJ -awt -axJ -ayW -azW -azW -azW -azW -azW -azW -azW -aFO -aad -aac -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aac -aaa -aaa -aad -aaa -cba -cao -caI -caT -caT -caT -caT -caT -caT -caT -caT -caT -caT -caT -cfc -cfc -cfc -cdK -aHT -cdK -cfc -cfc -cfc -cfc -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(49,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aac -aaa -aoW -aoW -aoW -aoW -aoW -aoW -aoW -aoU -aaa -axJ -aaa -aoW -aoW -aoW -aoW -aoW -aoW -aoW -aoU -aaa -aac -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aac -aaa -cao -cba -caI -caT -caT -caT -caT -cbb -cbb -cbb -cbR -cbb -cbb -cdg -cbb -cbb -cgq -cgq -cch -cch -cdK -ceY -cdK -cch -cfc -cfc -cfc -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(50,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aac -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -axJ -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -adf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aac -aad -aac -cbW -caT -caT -caT -caT -cbb -cbb -cbb -cbb -cbb -cbb -cbb -cbb -cbb -cbs -cbb -cbb -cbR -cgq -cch -cgV -anI -cct -aZk -cch -cfc -cfc -cfc -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(51,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aac -aaa -aoS -aoS -aoS -aoS -aoS -aoS -aoS -aoS -aaa -axJ -aaa -aoS -aoS -aoS -aoS -aoS -aoS -aoS -aoS -aaa -aac -aaa -aaa -aaa -aab -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aac -aaa -cao -caI -caT -cbb -cbb -cbb -cbb -cbs -cbb -cbb -cbb -cbb -cbb -cbb -cbb -cbb -cbb -cgc -cgr -cgq -cch -cgW -aod -aIq -aZn -cch -cch -cch -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(52,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aac -aad -aoV -apJ -apJ -apJ -apJ -apJ -apJ -apJ -awt -axJ -ayW -azW -azW -azW -azW -azW -azW -azW -aFO -aad -aac -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -adf -cbW -caT -caT -caT -cbb -cbb -cbb -cbb -cbb -cbb -cbb -cbr -cbb -cbb -cbb -cfd -cfq -cbu -cch -cch -cch -cch -cch -apM -cgl -cch -cch -cch -bDT -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(53,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aac -aaa -aoW -aoW -aoW -aoW -aoW -aoW -aoW -aoU -aaa -axJ -aaa -aoW -aoW -aoW -aoW -aoW -aoW -aoW -aoU -aaa -aac -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aac -asa -caT -cbb -cbb -cbb -cbD -ccV -ccZ -caT -ccZ -caT -ccX -ccX -ccX -ccX -cch -cfr -cch -cch -cgs -cch -cgM -cgX -arz -aIr -aZq -bhR -cdK -bEt -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(54,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aac -aaa -aaa -aaa -aad -aaa -aaa -aaa -aaa -aaa -aaa -axJ -aaa -aaa -aaa -aaa -aaa -aaa -aad -aaa -aaa -aaa -aac -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aac -cbW -caT -cbb -cbb -cbb -cbb -ccW -ccZ -cdg -cds -cdg -ccX -cep -ceF -ccX -ceO -cfs -cch -cch -cch -cch -cgN -cgY -atk -ceD -cct -cct -cdK -cdK -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(55,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aac -aad -aac -aac -aac -aaa -aaa -aaa -aaa -aaa -aaa -axK -aaa -aaa -aaa -aaa -aaa -aaa -aac -aac -aac -aad -aac -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -asa -caT -cbR -cbb -cbb -cbb -cbb -ccX -ccX -cdt -ccX -ccX -ceq -ceG -ccX -cch -cft -cch -cgd -cgt -cch -cgN -cgZ -ccR -aJQ -aZt -bir -brL -bEu -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(56,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -axG -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aac -aac -aac -aac -aac -cbW -caT -caT -cbb -cbb -cbb -cbb -ccX -cdh -cdu -cdM -ccX -cer -ccX -ccX -cfe -cfu -cfG -cge -cgu -cch -cgO -cgZ -ccR -aMx -aZt -biu -brM -bEu -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(57,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -axG -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aac -aaa -aaa -cba -cao -cao -ccc -caT -cbb -cbb -cbs -cbb -ccX -cdi -cdv -cdN -cee -ces -ceH -ceP -cff -cfv -cfH -cge -cgv -cch -cgP -cha -atl -aSm -cct -cct -cdK -cdK -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(58,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -axG -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aad -cao -caI -caT -caT -caT -caT -caT -cbb -cbb -cbb -cbb -ccX -cdj -cdw -cdO -cef -cet -ceI -ceQ -cfg -cfw -cfI -cgf -cgw -cch -cch -cfi -aye -cgl -aZS -bjm -cdK -bEx -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(59,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -axG -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aac -aad -aac -aac -aac -aac -aaa -caS -caT -caT -caT -cbR -cbb -cbb -cbb -cbb -cbb -cbb -cbD -ccX -ccX -cdx -cdP -ceg -ceu -ceI -ceR -cfh -cfx -cfJ -cgg -cgx -cch -cgQ -chb -ceE -aSs -cch -cch -cch -bDT -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(60,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -axG -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aac -aaa -aaa -cba -cao -cba -caI -caT -caT -cbb -cbb -cbb -cbb -cbb -cbb -cbb -cbb -cbb -ccX -ccX -ccX -ccX -cdQ -ccX -ccX -ceI -cch -cfi -cch -cfK -cch -cch -cch -cgR -cgl -aCl -aTi -bas -bjo -aCl -bFm -bLn -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(61,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aab -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aad -aad -ahV -ahU -ahU -ahU -aad -aad -aad -aaa -aaa -aaa -aaa -axG -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -adf -aad -caS -caT -caT -caT -caT -caT -cbD -cbb -cbb -cbb -cbb -cbb -ccg -cch -cch -cch -ccX -cda -cdk -cdy -cdR -ceh -cev -ceJ -ceS -cfj -ceS -cfL -cgh -cgy -ceS -ceJ -chc -aCl -aUg -bbb -bbb -bsw -bFn -cfc -cfc -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(62,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -ahV -ahV -ahV -aow -aoX -ahU -ahV -aad -aad -aad -aaa -aaa -avs -axL -avs -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aac -asa -caT -caT -cbb -cbq -cbb -cbb -cbb -cbb -cbb -cbb -cbb -cbb -cbb -cch -ccG -ccN -ccY -cdb -ccX -cdz -cdS -cei -cew -ceK -ceT -ceN -ceT -cfM -ceT -ceT -ceT -ceM -chd -aCl -aUm -bbd -bkn -buQ -bFn -cfc -cfc -cfc -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(63,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -ahU -ahU -ahU -ahV -ahV -aaa -aaa -ahV -anl -anN -aox -aoY -apK -ahV -ahU -ahU -ahV -aaa -aaa -awu -axM -avs -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -cao -cao -cao -caI -caT -cbb -cbb -cbb -cbb -cbb -cbb -cbb -cbb -cbb -cbb -cbb -cbb -cch -ccH -cch -cch -cch -cch -cdA -cch -cch -cex -ceL -ceU -ceV -ceU -cfN -ceU -ceV -ceU -ceL -chd -aCl -aVd -bbe -bko -buQ -bFn -cfc -bMf -bMM -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(64,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -ahU -aiv -aiW -ajE -ahV -ahU -ahU -ahV -aiY -ahV -aoy -aiY -aiY -anN -aiY -aiY -ahV -aaa -avs -avs -axN -avs -avs -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -cap -cap -caB -caJ -caJ -cbc -cbb -cbr -cbb -cbr -cbb -cbr -cbb -cbr -cbb -cbr -cch -cch -ccI -ccO -ccI -ccS -cdl -cdB -cdT -cch -cey -ceL -ceV -cfk -cfy -cfO -cgi -cgz -ceV -ceL -che -aCz -aVe -bbD -bkp -buQ -bFn -cfc -cfc -cfc -cfc -cfc -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(65,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -ahU -aiw -aiX -aiY -akx -aiY -aiY -amB -aiY -ahV -ahV -ahV -ahV -ahV -ahV -aiY -ahV -ahV -avt -awv -axO -ayX -avt -aaa -aaa -aaa -aaa -aaa -aDI -aDJ -aDJ -aOx -aDI -aDI -aDJ -aDJ -aDI -aOx -aDI -aOx -aDI -aDI -aDI -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -caj -caq -cat -caq -caK -caU -cbc -cbc -cbs -cbb -cbb -cbb -cbs -cbb -cbb -cbb -cbs -cch -ccr -ccJ -ccP -ccJ -cdc -cdm -cdC -cdU -cch -cez -ceL -ceU -cfl -cfz -cfz -cfz -cgA -ceU -cgS -chf -aDx -aVz -bca -bca -bvo -bFp -cfc -cfc -cfc -cfc -cfc -cfc -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(66,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -ahV -aix -aiY -ajF -ahV -ahU -ahU -ahV -amC -anO -anO -anO -anO -aqH -anO -anO -anO -auz -avt -aww -axP -ayY -avt -aaa -aaa -aaa -aaa -aaa -aDI -aFQ -aGM -aGM -aDJ -aJZ -aLl -aLl -aLl -aJZ -aLl -aJZ -aLl -aSn -aTj -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -cap -cau -caC -caL -caV -cbd -cbl -cbt -cbt -cbt -cbt -cbt -cbt -cbt -cbt -cbt -cci -ccs -ccs -ccQ -ccQ -ccQ -cdn -cdD -cdV -cej -ceA -ceM -ceV -cfm -cfz -cfP -cfz -cgB -ceV -ceL -chg -aCl -aVA -bdi -bkq -bzJ -aCl -cfc -cfc -cfc -cfc -cfc -cfc -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(67,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -ahU -aiy -aiZ -ajG -ahV -aaa -aaa -ahV -anm -aiY -ahV -ahV -ahU -aqI -ahV -ahU -ahV -anm -avt -awx -axQ -ayZ -avt -aaa -aaa -aaa -aaa -aaa -aDI -bXf -aGM -aGM -bXn -aFa -aFa -aFa -aFa -aFa -aFa -aFa -aFa -aSn -aTj -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -car -cav -caD -caM -caW -cbe -cbm -cbu -cbu -cbu -cbu -cbu -cbu -cbu -cbu -cbu -ccj -cct -cct -ccR -ccR -ccR -cdo -cdE -cdW -cek -ceB -ceL -ceV -cfn -ccU -cfQ -cfz -cfm -ceV -ceL -chg -aEZ -aEZ -aEZ -aEZ -aEZ -aEZ -aEZ -aEZ -cfc -cfc -cfc -cfc -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(68,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -ahV -ahV -ahV -ahV -ahV -ahV -ahV -ahV -anm -aiY -ahV -aoZ -apL -aqJ -arF -asw -ahV -anm -avt -avt -axR -avt -avt -ahV -aaa -aaa -aaa -aaa -aDI -aFR -bXj -aHH -aDJ -aFa -aLm -aLm -aLm -aFa -aFa -aLq -aLq -aSn -aTj -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -asa -cap -caE -caN -caX -cbc -cbc -cbs -cbb -cbb -cbb -cbs -cbb -cbb -cbb -cbs -cch -ccu -ccI -ccS -ccI -cdd -cdp -cdF -cdX -cch -cez -ceL -ceU -cfo -cfA -cfz -cfz -cgC -ceU -ceL -chh -aEZ -aVB -bgd -bkt -bAB -bGc -bLo -aEZ -aEZ -cfc -cfc -cfc -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(69,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -ahV -aja -ajH -aky -alm -ahV -amC -ann -anN -ahU -apa -aiY -aqK -arG -asx -ahV -auA -anO -anO -axS -anN -azX -ahV -aaa -aaa -aaa -aaa -aDI -aDI -aDI -aDI -aDI -aFa -aLn -aLn -aLn -aFa -aDI -aDI -aDI -aDI -aDI -aDI -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -blI -bow -blI -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -asa -cap -cap -caJ -caJ -cbc -cbb -cbr -cbb -cbr -cbb -cbr -cbb -cbr -cbb -ccd -cch -cch -ccK -ccT -ccJ -cde -cdq -cdG -cdY -cch -ceC -ceL -ceV -cfp -cfB -cfz -cgj -cfk -ceV -ceL -chi -aFP -aWD -aWD -blN -bAP -bAP -bLp -bMg -aEZ -cfc -cfc -cfc -cfc -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(70,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -afy -agZ -bWa -afy -afy -ajb -ajI -akz -aln -alV -amD -ahV -anP -ahV -apb -apN -aqL -arF -asy -ahV -auB -aiY -aiY -anm -aiY -azY -ahV -aaa -aaa -aDI -aDI -aDI -aFS -aGN -aHI -aIF -aFa -aFa -aFa -aFa -aFa -aDI -aQr -aJZ -aQr -aSn -aTj -aaa -aaa -aaa -aaa -aaa -aaa -aaa -baG -bYL -bYL -baG -aaa -aaa -aaa -aaa -aaa -aaa -aaa -blI -bnc -bnd -bnc -blI -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -caw -caF -caO -caT -cbb -cbb -cbb -cbb -cbb -cbb -cbb -cbb -cbb -cbb -cbb -cbb -cch -cch -cch -cch -cch -cch -cdH -cch -cch -ceD -ceL -ceU -ceV -ceU -cfR -ceU -ceV -ceU -cgT -chj -aHc -aXw -bho -blO -bho -bGj -bAP -bMh -aEZ -cfc -cfc -cfc -cfc -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(71,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -afy -aha -ahw -ahW -afy -ajb -ajJ -akA -alo -ahV -amE -ahV -anQ -ahV -ahV -ahU -ahU -ahV -ahU -ahV -ahV -ahV -awy -bWB -bWE -aiY -ahU -aaa -aaa -aDJ -aEx -aFa -aFT -aFT -aDJ -aFa -aFa -aLo -aMo -aLo -aFa -aDJ -aJZ -aJZ -aJZ -aSn -aTj -aaa -aaa -aaa -aaa -aaa -aaa -aaa -baG -bbC -bbC -baG -aaa -aaa -aaa -aaa -aaa -aaa -aaa -blJ -bnd -bnd -bpJ -blJ -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aac -asa -caT -caT -cbb -cbv -cbb -cbb -cbb -cbD -cbb -cbb -cbb -cbb -cbb -cbb -cbb -cbR -cbb -cbs -cch -cdI -cdV -cel -ceA -ceN -ceT -ceT -ceT -cfS -ceT -ceT -ceT -ceM -ceD -aEZ -aYl -bhp -blP -bCs -bIk -bLq -aEZ -aEZ -cfc -cfc -cfc -cfc -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(72,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -afy -afO -afO -afO -afy -afy -ahb -ahx -ahX -afy -ajc -ajc -ajc -ajc -ajc -amE -ahV -ahV -ahV -aaa -aaa -aaa -aaa -aaa -aaa -aaa -ahV -ahV -bWC -bWF -bWI -ahU -aaa -aaa -aDJ -aEy -aFb -aFa -aFa -aHJ -aFa -aFa -aLp -aMp -aNr -aFa -aPj -aJZ -aJZ -aJZ -aSn -aTj -aVb -aVb -aVb -aVb -aaa -aaa -baG -baG -bYM -bYM -baG -baG -aaa -aaa -aVb -aVb -aVb -aVb -blJ -bne -bnd -bpJ -blJ -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aac -aaa -caF -caT -caT -caT -caT -caT -cbb -cbb -cbb -cbb -cbb -cbb -cbb -cbb -cbb -cbb -cbb -cbu -cdr -cct -cdZ -cem -ceE -cdW -cdW -ccn -cdW -cfT -cgk -cgD -cdW -cfT -ceB -aEZ -aEZ -bhq -bnu -bCQ -bnu -bLw -aEZ -cfc -cfc -cfc -cfc -cfc -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(73,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -afz -afP -agb -agl -agA -agQ -ahc -ahy -ahY -aiz -ajc -ajK -akB -alp -alW -amF -ano -ahV -aoz -aoz -aoA -aoz -aoz -aoA -aoz -aoz -aoz -ahV -axU -bWF -aiY -ahU -aaa -aaa -aDJ -aEz -aFa -aFU -aFU -aDJ -aFa -aFa -aLo -aMq -aLo -aFa -aDJ -aJZ -aLl -aLl -aSn -aTj -aVb -aVR -aWV -aVb -aYS -aVb -baG -bbB -bbC -bbC -bdz -baG -aVb -aVb -aVb -aWV -bjj -aVb -blK -bnf -bnd -bpK -blK -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aac -aaa -aad -caw -caw -caF -caO -caT -caT -cbb -cbb -cbb -cbb -cbb -cbu -cbu -cbu -cbb -cbb -cbu -cdr -cct -cea -cch -cch -cch -ceW -cch -cch -cfU -cgl -cch -cch -cgU -cgl -cch -aEZ -bhq -bnu -bDk -bnu -bLw -aEZ -cfc -cfc -cfc -cfc -cfc -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(74,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -afA -afQ -agc -agm -agB -agR -ahd -ahz -ahZ -aiA -ajd -ajL -akC -bWn -bWo -amG -anp -ahV -aoA -apc -apO -aqM -arH -asz -atq -auC -avu -ahV -axV -aza -auz -ahV -aaa -aaa -aDI -aDI -aDI -aFV -aGO -aHI -aIF -aFa -aFa -aFa -aFa -aFa -aDI -aQs -aRj -aSo -aSn -aTj -aVb -aVR -aWW -aXV -aYT -aXV -baH -bbC -bco -bco -bbC -bed -aXV -aYT -aXV -aWW -bjj -aVb -blJ -bnf -bnd -bpK -blJ -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aac -aac -adf -aac -aad -aac -aad -cbA -caT -caT -caT -caT -cbR -cbb -cck -ccv -caT -cbb -cbb -cbb -cch -cdJ -ceb -cen -cch -ceO -ceX -cch -cfC -cfV -cgm -cch -cgH -cfV -aaC -cch -aEZ -bhr -boR -bDn -boR -bLw -aEZ -cfc -cfc -cfc -cfc -cfc -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(75,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -adf -acJ -aad -aad -aad -aad -aad -afB -afR -agd -agn -agC -agS -ahe -ahA -aia -aiB -ajc -ajM -akD -alq -alX -amH -anp -ahV -aoA -apd -apP -aoz -arH -arH -arH -auC -avu -ahV -axW -ahV -anm -ahV -aaa -aaa -aaa -aaa -aDI -aDI -aDI -aDI -aDI -aFa -aLm -aLm -aLm -aFa -aDI -aDI -aDI -aDI -aDI -aDI -aVb -aVS -aWW -aVb -aVb -aVb -baG -bYy -bbC -bbC -bYT -baG -aVb -aVb -aVb -aWW -bjj -aVb -blJ -bnf -bnd -bpK -blJ -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aac -aac -aad -caw -cbI -caO -caT -caT -caT -caT -ccw -caT -cbb -cbb -cdf -cch -cdK -cch -cch -cch -cch -ceY -cch -cfD -cfW -cgn -cch -cfD -cfW -cgn -cch -aEZ -aEZ -aEZ -aEZ -aEZ -aEZ -aEZ -aEZ -cfc -cfc -cfc -cfc -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(76,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -acJ -aaa -aad -aaa -adq -adq -adq -adq -afC -afS -afS -afS -afS -afS -ahf -ahB -aib -aib -aib -ajN -akE -ajN -ajN -ajN -anq -ahV -aoA -ape -apQ -aqN -arI -asA -arH -auC -avu -ahV -axX -ahV -anm -ahV -aaa -aaa -aaa -aaa -aDI -aFW -aGP -aHK -aDJ -aFa -aLn -aLn -aLn -aFa -aFa -aLl -aLl -aSn -aTj -aaa -aVb -aVT -aWW -aXW -aYU -aVb -baI -bbE -bco -bco -bbC -baI -aVb -bga -aXW -aWW -bjj -aVb -blJ -bnf -bnd -bpK -blJ -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aad -aad -aad -aad -cbI -cbI -caO -caT -ccx -caT -cbb -cbb -cbb -cbb -cdL -cec -ceo -cbb -cbb -ceZ -cch -cfE -cfX -cgo -cch -cgI -cfX -aaG -cch -cfc -cfc -cfc -cfc -cfc -cfc -cfc -cfc -cfc -cfc -cfc -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(77,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -acJ -aaa -adq -adq -adq -aek -aeI -adq -afD -afT -age -age -age -age -ahg -ahC -aic -aiC -age -ajO -akF -alr -alY -amI -anr -ahV -aoz -aoz -apR -aoz -aoz -aoz -atr -aoz -aoz -ahV -axY -ahV -axT -ahV -aaa -aaa -aaa -aaa -aDI -aFW -aGQ -aGQ -aIE -aFa -aFa -aFa -aFa -aFa -aFa -aFa -aFa -aSn -aTj -aaa -aVb -aVT -aWX -aWW -aYV -aVb -baI -bbF -bcp -bdd -bbC -baI -aVb -bgb -aWW -aWX -bjj -aVb -blL -bnf -bnd -bpK -blL -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aad -aaa -aaa -aad -asa -caT -bTf -caT -cbD -cbb -cbb -cbb -cbb -cbs -cbb -cbb -cbb -cfa -cch -cch -cfY -cch -cch -cch -cfY -cch -cch -cfc -cfc -cfc -cfc -cfc -cfc -cfc -cfc -cfc -cfc -cfc -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(78,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -acJ -aad -adq -adu -adL -ael -ael -afe -ael -ael -age -ago -agD -agg -ahh -ahD -aid -aiC -age -ajP -akG -als -alZ -ajN -ajN -ajN -aoB -aoB -apS -aoB -arJ -aoB -ats -aoB -ajh -ahV -ahV -ahV -anm -ahV -aaa -aaa -aaa -aaa -aDI -aFW -aGQ -aGQ -aDJ -aJZ -aLq -aLq -aLq -aJZ -aLq -aJZ -aLq -aSn -aTj -aaa -aVb -aVT -aWW -aXX -aYW -aVb -baI -bYz -bYN -bco -bbC -baI -aVb -bgc -aXX -aWW -bjj -aVb -blJ -bnf -bnd -bpK -blJ -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aad -aad -aad -aad -aad -ccl -bTf -caT -caT -cbb -cbb -cbR -cbb -cbb -cbb -cbb -cbR -cfb -cch -cfF -cfZ -cgp -cch -cgJ -cfZ -aaM -cch -cfc -cfc -cfc -cfc -cfc -cfc -cfc -cfc -cfc -cfc -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(79,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -acJ -aaa -adr -adv -adM -ael -aeJ -aff -afE -afE -agf -agp -agE -agT -ahi -ahE -aie -aiC -age -ajQ -akH -alt -ama -ajh -ans -anR -aoC -aoB -apu -aoB -arJ -ajh -att -auD -avv -awz -axZ -ahV -anm -ahV -aaa -aaa -aaa -aaa -aDI -aDJ -aDJ -aHL -aDI -aDI -aDJ -aDJ -aDI -aOx -aDI -aQt -aDI -aDI -aDI -aaa -aVb -aVU -aWY -aVb -aVb -aVb -baG -bbG -bco -bco -bdA -baG -aVb -aVb -aVb -bio -bjk -aVb -blJ -bnf -bnd -bpK -blJ -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aad -aaa -aad -bTf -ccL -caT -caT -caT -caT -caT -caT -caT -caT -caT -caT -cch -cch -cch -cch -cch -cch -cch -cch -cch -cfc -cfc -cfc -cfc -cfc -cfc -cfc -cfc -cfc -cfc -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(80,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -acJ -aad -adq -adw -adN -ael -aeK -afg -ael -ael -age -agq -agF -age -ahj -ahF -aif -age -age -ajR -akI -alu -amb -ajh -ant -anS -aoD -ajh -apT -ajh -ajh -ajN -ajN -ajN -ajh -awA -aya -ahV -anm -ahV -ahV -ahV -ahV -ahV -ahV -ahV -aGa -aHM -aIG -aaa -aaa -aaa -aIG -aHM -aIG -aHM -aIG -aaa -aaa -aaa -aVb -aVT -aWZ -aXV -aYT -aXV -baH -bbC -bbC -bbC -bbC -baH -aXV -aYT -aXV -aZc -bjj -aVb -blJ -blK -box -blK -blJ -aaa -aaa -abu -acJ -acJ -caa -acJ -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aad -aaa -aad -bTf -bOH -cbI -cbI -cbI -cbI -cbI -caw -caw -cbI -cbI -cfc -cfc -cfc -cfc -cfc -cfc -cfc -cfc -cfc -cfc -cfc -cfc -cfc -cfc -cfc -cfc -cfc -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(81,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -acJ -aaa -adr -adx -adO -aem -aeL -afh -afF -afF -agg -agg -agg -agU -ahk -ahF -aig -aiD -aje -ajS -akJ -alv -amc -amJ -anu -anu -ajS -anu -apU -aqO -arK -asB -atu -auE -avw -avx -ayb -ahV -azZ -aBg -aBg -aBg -aBg -aEA -aFc -aFX -aGa -aHN -aIG -aaa -aaa -aaa -aIG -aHN -aIG -aHN -aIG -aaa -aaa -aaa -aVb -aVT -aWZ -aVb -aYS -aVb -baG -bbH -bbH -bbH -bbH -baG -aVb -aVb -aVb -aZc -bjj -aVb -aVb -bng -boy -aVb -aaa -aaa -aaa -aaa -aad -aad -aad -aad -aaa -bpM -bwu -bwu -bpM -bpM -bwu -bwu -bpM -aad -aaa -aaa -aaa -aaa -aaa -aaa -aad -aad -bOH -bTf -aad -aaa -aaa -aaa -aad -aad -aad -aad -aad -aaa -aaa -cfc -cfc -cfc -cfc -cfc -cfc -cfc -cfc -cfc -cfc -cfc -cfc -cfc -cfc -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(82,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -acJ -aad -adq -ady -adP -ael -aeJ -afi -ael -ael -age -agr -agG -agV -ahl -ahG -aih -aiE -ajf -ajT -akK -alw -amd -amK -anv -anv -aoE -apf -anv -aqP -arL -asC -atv -auF -avx -awB -aya -ahV -aAa -aBh -azc -azc -azc -azc -aFd -aFY -aGa -aOy -aIG -aad -aad -aad -aIG -aOy -aIG -aQu -aIG -aad -aad -aad -aVc -aVT -aWZ -aXW -aXW -aVc -baJ -baJ -bcq -bcq -bdB -baJ -aVc -aXW -aXW -aZc -aWW -aXW -aXW -aVb -aYT -aVb -aaa -aaa -aaa -aaa -bPk -bPk -bPk -bPk -bpM -bpM -byL -bvp -caG -bvp -bFx -bvp -bpM -bpM -aaa -aaa -aaa -aaa -aaa -bOG -aad -aaa -bOH -bTf -aad -aaa -aaa -aaa -aad -aaa -aaa -aad -aaa -aaa -aaa -aad -cfc -cfc -cfc -cfc -cfc -cfc -cfc -cfc -cfc -cfc -cfc -cfc -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(83,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -acJ -aaa -adr -adz -adQ -adQ -adQ -afj -adQ -adQ -agh -ags -agH -agW -ahm -ahH -aii -aiF -ajg -ajU -akL -alx -ame -amL -anw -anw -anw -apg -apV -aqQ -arM -asD -atw -auF -avx -awC -ayc -azb -aAb -anN -azc -aDa -aDK -azc -aAa -aFZ -aGa -aHN -aIG -aIG -aIG -aIG -aIG -aHN -aIG -aHN -aIG -aIG -aIG -aIG -aVc -aVV -aWZ -aWW -aWW -aVc -aVc -aVb -bcr -bcr -aVb -aVc -aVc -aWW -aWW -bip -aWY -aWW -aWW -bng -boz -aVb -aVb -aaa -aaa -aaa -bPk -bZY -cab -bKk -bpM -cak -cas -cax -cax -cax -cax -cbf -bGR -bpM -aaa -aaa -aaa -aaa -aaa -aaa -bdx -aad -bOH -bTf -bOH -aad -aad -aad -aad -aaa -aaa -aad -aaa -aaa -aad -aad -aaa -aaa -aaa -cfc -cfc -cfc -cfc -cfc -cfc -cfc -cfc -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(84,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -acJ -aad -adq -adA -adR -ael -ael -afk -ael -ael -age -agt -agF -age -ahn -ahI -aij -age -ajh -ajV -akM -aly -aly -amM -amn -anT -aoF -aph -apW -aqR -arN -ajh -ajh -auG -bWz -awD -ayd -azc -azc -azc -azc -aDb -aDL -azc -aAa -aGa -aGa -aHO -aGa -aGa -aLr -aMr -aIG -aHO -aIG -aHO -aIG -aMr -aTk -bXz -aVc -bXL -aXa -aXY -aXY -aXY -baK -aXY -aXY -aXY -aXY -aXY -aXY -aXY -aXY -aZb -bjl -aWW -aWW -aWW -aWW -aWW -aVb -aaa -aaa -aaa -bPk -bZY -cac -bpM -bpM -bvp -bBy -bCD -bDD -bDD -bFy -cbg -bvp -bwu -aaa -aaa -aaa -aaa -aaa -cbS -cbX -aaa -bOH -bTf -bOH -aaa -aaa -aaa -aad -aad -aad -aad -aad -aad -aad -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(85,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -acJ -aaa -adq -adq -adq -aen -aeM -adq -afG -afU -age -age -age -age -aho -ahJ -aik -age -aji -ajW -akN -aly -amf -amN -anx -anU -aoG -api -anv -aqS -arO -asB -atx -auH -avx -avx -avx -azc -aAc -aBi -azc -azc -aDM -azc -aAa -aGa -aGR -aHP -aIH -aIG -aLs -aHQ -aNs -aHQ -aPk -aHQ -aNs -aHQ -aTl -bXz -aVc -aVW -aXb -aXZ -aYX -aZM -baL -bbI -bbI -bde -bYU -bee -bbI -bbI -bbI -biq -bbI -bbI -blM -bnh -boA -bpL -aVb -aad -aad -aaa -bPk -bZZ -cad -bpM -bzM -bvp -bBz -bCE -bDE -bEK -bFz -cbg -bvp -bwu -bOG -bOG -bOG -cbJ -cbN -cbT -bdx -aad -bpM -ccy -bpM -aaa -aaa -aaa -aaa -aad -aaa -aaa -aad -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(86,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -acJ -aaa -aad -aaa -adq -aeo -aeN -adq -afH -afV -agi -agu -agI -age -ahp -ahK -ail -age -ajj -ajX -akO -aly -amg -amO -amk -anV -aoG -apj -anv -aqP -arP -asE -aty -auF -avx -avx -avx -azc -aAd -aBj -aCf -aDc -aDd -azc -aFe -aGa -aGS -aHQ -aII -aIG -aLs -aHQ -aHQ -aHQ -aHQ -aHQ -aHQ -aHQ -aTm -bXA -bXA -bXA -bXA -bXA -aZN -bYn -baM -bbJ -bbK -bbJ -bbJ -bef -bbJ -bge -bge -bge -bjn -bge -bge -bge -boB -bpM -bpM -bpM -bwu -bwu -bpM -bpM -cae -bpM -bzN -bvp -bBA -bCF -bDF -caP -bFA -cbg -bvp -bwu -bOH -bOH -bOG -cbK -bOH -bpM -bpM -bpM -bpM -ccz -bwu -aad -aad -aad -aad -aad -aaa -aaa -aad -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(87,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -adf -acJ -aad -adq -adq -adq -adq -adq -adq -adq -adq -adq -adq -ahq -ahq -ahq -ahq -ahq -ahq -ahq -aly -amh -amP -amk -anW -aoH -apk -apV -aqQ -arM -asD -atz -auF -avx -awE -ayf -azd -aAe -aBk -aCg -aDd -aDN -azc -aFe -aGa -aGT -aHQ -aIJ -aKa -aLt -aMs -aNt -aHQ -aPl -aHQ -aRk -aHQ -aTn -bXA -aVf -aVX -aXc -bXA -aYZ -aZO -baN -bbJ -bcs -bdf -bdC -beg -bbJ -bge -bhn -bhn -bhn -bhn -bhn -bge -bZH -bZJ -bxw -bsj -btx -btx -bwv -bvp -byN -bpM -bzO -cal -bBB -bCG -bDG -bDG -bFB -cbg -bvp -bwu -bOH -bwu -bwu -bJx -bwu -bpM -bLu -bMn -bpM -ccA -bpM -bpM -aad -aaa -bpM -bpM -bwu -bwu -bwu -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(88,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aac -aad -aad -ahq -ahL -aim -aiG -ajk -ajY -akP -alz -ami -amQ -amj -anX -aoI -apl -anv -aqT -arQ -ajh -ajh -auG -avy -awF -ayg -aze -aAf -aBl -aCh -aDe -aDO -azc -aFe -aGa -aGU -aHR -aIK -aKb -aLu -aMt -aNu -aNu -aPm -aNu -aRl -aSp -aTo -aUk -aVg -aVY -aXd -aUk -aZa -aWW -aWZ -bbK -bct -bdg -bdg -beh -beU -bge -bhn -bis -bjp -bkr -bhn -bge -boD -bvp -bqY -bqX -bty -bqX -bvp -bww -byN -bpM -bpM -bpN -bBC -bCH -caH -bEL -caH -cbh -bGS -bpM -bpM -bwu -cbE -bJy -bKh -bpM -bLv -bpM -bpM -bvp -ccM -bpM -aaa -aaa -bwu -bQR -bGk -bRD -bwu -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(89,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aac -aad -aad -ahq -ahM -ain -ain -ajl -ajZ -ajZ -alA -amj -amR -amk -anY -aoG -apm -apX -aqS -arO -asB -atA -auH -avx -awG -ayh -azd -aAg -aBm -aCi -aDd -aDd -azc -aFf -aGa -aGa -aGa -aGa -aGa -aLv -aMu -aHQ -aHQ -aHQ -aHQ -aHQ -aSq -aTo -aUl -aVg -aVZ -aXe -aYa -aXY -aZP -baO -bbL -bcu -bdh -bdD -bei -beV -bge -bhn -bit -bjq -bks -bhn -bge -boE -bpP -bzP -bzP -btz -bzP -bpP -bzP -caf -byL -bpM -bAD -bBD -bCI -bvp -caQ -bCI -bGl -bGT -bpM -cby -bvp -bJw -bJz -bKi -bpM -bQU -bpN -bQU -ccB -bwx -bwu -aaa -aaa -bwu -bQS -bRj -bvp -bwu -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(90,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aac -aad -aad -ahq -ahN -ain -aiH -ajm -aka -ain -alB -amk -amS -any -chm -aoJ -apn -chn -aqU -arR -asE -atB -auF -avx -awG -ayh -azc -aAh -aBn -aCj -aDf -aDP -aEB -aFg -aGb -aGb -aGb -aGb -aKc -aLw -aMv -aNv -aOz -aOz -aOz -aRm -aSq -aTo -aUk -aVh -aWa -aXf -aUk -aWW -aZQ -baP -bbM -bcv -bdg -bYV -bct -beW -bge -bhn -bhn -bjr -bhn -bhn -bge -boC -bpQ -bpS -bpS -bpS -bpS -bpS -bwx -boC -bvp -bpM -bpM -bpM -bpM -bDH -bDH -bpM -bpM -bpM -bpM -bJH -bvp -cbF -bvp -cbP -cbU -cbY -bpM -cbP -bvp -bMn -bwu -aaa -aaa -bwu -bQT -bvp -bRE -bwu -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(91,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aac -aad -aad -ahq -ahO -aio -aiI -ajn -akb -akb -alC -aml -amT -anz -anZ -aoG -apm -cho -aqQ -arS -asD -atC -auF -avx -awG -ayh -azc -aAi -aAe -aCk -aDg -aDQ -azc -azY -aGc -ahV -ahV -ahV -aGa -aLx -aMu -aNw -aOA -aPn -aQv -aRn -aSq -aTp -aUj -aVi -aWb -aXg -aUj -aZR -aZR -baQ -bYA -bcw -bdj -bdE -bZe -bYA -bge -bge -bge -bge -bge -bge -bge -boC -bpR -bpS -bsk -btA -bur -bpS -bwy -boC -bvp -bpM -bpO -bBE -bpM -bDI -bDI -bpM -bBE -bpO -bIl -bpQ -bvp -cbF -bpM -bpM -bpM -bpM -bpM -bvp -bvp -bpM -bpM -bpM -aad -bpM -bpM -bFC -bpM -bpM -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(92,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aac -aad -aad -ahq -ahP -aip -aiJ -ajo -akc -akP -alB -amm -amU -amk -aoa -aoK -api -apZ -aqV -arQ -ajh -ajh -auG -avx -awG -ayh -azc -azc -azc -azc -azc -azc -azc -ahV -ahV -ahV -bel -aHS -aGa -aGa -aMw -aNx -aOB -aOB -aOB -aRo -aSr -aGa -aUj -aUk -aWc -aUk -aUj -aED -aED -baR -bYA -bbK -bYA -bYA -bbK -bYA -bgf -bhs -biv -biv -bku -biv -biv -boF -bpS -bpS -bsl -btB -bus -bpS -bpS -bxy -byM -bzP -bzP -bzP -bzP -bzP -bzP -bzP -bzP -bGU -bpM -bpM -bvp -cbF -bpM -cbQ -cbV -cbZ -bpM -bpM -bvp -bOE -bPi -bpM -aad -aad -bwu -bvp -bwu -aad -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(93,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aac -aad -agw -agx -agx -ahq -ahq -ahq -ahq -ahq -ahq -ahq -alD -amn -amV -anA -aob -aoL -apo -cho -aqQ -arT -asF -atD -auI -avz -awH -ayi -bWG -aAj -aBo -azf -aDh -aDR -aEC -aFh -azF -azF -azF -azF -aKd -azF -aAT -aNy -azF -azF -azF -aRp -aHo -azF -aEC -azF -aWd -azF -azF -azF -azF -baS -azF -azF -bdk -bdF -bej -beX -beX -bht -beX -beX -beX -beX -beX -beX -bpS -bqZ -bsm -btC -but -bvq -bpS -bvp -byN -bvp -bvp -bBF -bvp -bvp -bvp -bFC -bGm -cbn -bHy -bHy -bHy -cbG -bvp -bvp -bvp -cca -bMV -bvp -bvp -bvp -bGR -bpM -aad -aad -bwu -byL -bwu -aad -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(94,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aac -aaa -agw -agJ -agX -ahr -ahQ -aiq -aiK -ajp -akd -bWm -alE -akQ -amW -anB -aoc -agw -app -apZ -aqW -arU -apW -apW -auJ -avx -awI -ayj -avx -aAk -avx -avx -avx -aDS -aED -aFi -aGd -aBT -aBT -aBT -aKe -aBT -aBT -aNz -aMS -aMS -aMS -aRq -aKN -aBU -aEQ -aBU -aWe -aXh -aBU -aBU -aBU -baT -aBU -bcx -bdl -bdG -bek -beY -bgg -bhu -beX -bjs -bkv -blQ -bni -boG -biw -bra -bsn -bkw -buu -bvr -bpS -bxz -byO -bxz -bxz -bxz -bxz -bxz -bxz -bxz -bxz -bGV -bHz -bpM -bpM -bJA -bpM -bpM -bLx -bMo -bMW -bpM -byL -bvp -bvp -bpM -bpM -bpM -bpM -bvp -bpM -bpM -bwu -bwu -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(95,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aac -aaa -agx -agK -agX -ahs -bWb -agw -aiL -ajq -ajq -akR -alF -akR -akT -anC -aoe -agw -bWt -apY -aqX -arV -asG -asG -auK -avA -awJ -ayk -azg -azg -bWJ -azg -azg -aDT -aEE -aFj -aGe -aGV -aHU -aIL -aKf -aHU -bXp -aNA -aHU -aHU -aQw -aRr -aSt -aHU -aUn -aVj -aWf -bXS -aHU -aHU -aVj -aHU -bbN -bcy -bdm -aFk -bZf -beX -bgh -bhv -biw -bjt -bZA -bZA -bnj -boH -biw -brb -bso -btD -bnm -bvs -bpS -bpS -byP -bzQ -bAE -bBG -bCJ -bDJ -bEM -bFD -byU -bGW -bHA -bpM -bIO -bJB -bKj -bpM -bpM -bpM -bpM -bpM -bIl -bpM -bvp -bpO -bQa -bQy -bqY -bpN -bvp -bKo -bSk -bwu -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(96,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aac -aaa -agx -agK -agX -agX -agK -agw -aiM -ajr -ajq -akS -alG -amp -amX -anC -aoe -agx -api -apZ -aqY -ajh -asH -atE -ajh -avx -avx -ayl -azh -azh -azh -azh -azh -azh -azh -bWX -aBT -aGW -aHV -aIM -aKg -aHW -aHV -aNB -aOC -aEj -aIf -aRs -aSu -aSu -aUo -aSu -aSu -aUo -bXX -bXX -aSu -aSu -bYB -bcz -aBT -bdH -ayN -beX -bgi -bhw -bix -bju -bkx -blR -bnk -boI -bpT -brc -bsp -btE -buv -bvt -bwz -bpS -byQ -bzR -bAF -bBH -bCK -bDK -bEN -bFE -bxz -bGX -bHB -bIm -bIP -bJC -bKk -bpM -bLy -bMp -bpM -bvp -bvp -bOF -bvp -bvp -bvp -bvp -bpN -bQU -bpN -bRP -bSl -bwu -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(97,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aac -aaa -agx -agK -agX -agX -agK -agw -aiN -ajr -ajq -akT -alH -bWp -bWp -anD -aof -aoM -apq -aqa -aqW -ajh -asI -atF -auL -avx -avx -ayl -azh -aAl -aBp -aCm -aDi -aDU -aEF -bWX -aBT -aGX -aHW -aIN -aKh -aLy -aHV -aIf -aIf -aIf -aIf -aRt -aSu -aTq -aUp -aSu -aWg -aXi -aYb -aZf -aZT -baU -bbO -bcA -azF -aFo -bZg -beX -bgj -bhx -biw -bjv -bky -blS -bnl -boJ -bpU -brd -bsq -btF -buw -bvu -bwA -bpS -byR -bzS -bAG -bBI -bCJ -bCJ -bCJ -bCJ -bxz -bGY -bpM -bpM -bpM -bpM -bpM -bpM -bLz -ccb -bpM -bvp -bpM -bpM -bwu -bpM -bwu -bpM -bwu -bpM -bpM -bRQ -bpM -bpM -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(98,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aac -aad -agw -agL -agX -agX -agK -agw -aiO -bWg -ajq -akR -alF -akR -akT -anE -aog -agx -apr -aqb -aqS -arW -asJ -atG -auM -avx -awK -aym -azh -aAm -aBq -aCn -aDj -aDj -aEG -aFl -aGf -aGY -aHX -aIO -aKi -aLz -aHV -aNC -aOD -aPo -aPo -aRu -aSv -aTr -aUq -aVk -aWh -aXj -aWh -aZg -aZU -aSu -bbP -bcB -aBT -aFk -bZg -beX -beX -beX -beX -bjw -bky -blT -bZF -boK -bpS -bre -bsr -btG -bux -bvv -bwB -bpS -byS -bzT -bAH -bBH -bCL -bDK -bEN -bFF -bxz -bGY -bHC -bpM -bIQ -bJD -bKl -bpM -bpN -bvp -bpM -bND -bpM -bOG -bOG -bOG -bOH -bOG -bOG -bOG -bwu -bvp -bwu -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -bLt -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(99,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aac -aaa -agx -agK -agX -agX -bWc -agw -aiP -bWh -ajq -akU -alI -amq -amY -anF -aoh -agw -aps -aqc -aqZ -ajh -asK -atH -auN -avx -awL -avx -azh -aAn -aBr -aBs -aBs -aDV -aEF -bWX -aGg -aGX -aHW -aIP -aKj -aLA -aHV -aND -aOE -aOF -aOF -aRv -aSw -aTs -aUr -aSu -aWi -aXk -aYc -aZh -aZV -aSu -bbQ -bcB -aBT -aFk -bZh -bem -bgk -bhy -beX -beX -bkz -blU -bnn -beX -bpS -bpS -bpS -bpS -bpS -bpS -bpS -bpS -buy -buy -bAI -bBI -bCJ -bDL -bEM -bFG -byU -bGZ -bHC -bHC -bvp -bGl -bvp -bpR -bvp -bvp -bpM -bFC -bpM -bOH -bOH -bOH -bQb -bOG -bOG -bOG -bwu -bRR -bwu -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(100,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aac -aaa -agx -agM -agX -aht -ahR -air -aiQ -ajs -ake -akV -alJ -amr -amZ -anG -aoi -ajh -ajh -aqd -ara -ajh -asL -atI -asL -avB -awM -ayn -azh -aAo -bWK -aBs -aBs -aDW -azh -bWY -aGg -aGX -aHV -aHV -aHV -aHV -aHV -aNE -aOF -aOF -aOF -aRw -aSu -aSu -aSu -aSu -aSu -aSu -aSu -aSu -aSu -aSu -aOF -bcB -aBT -bYW -bem -bem -bgl -bhz -biy -bjx -bkA -blV -bno -boL -bpV -brf -bss -btH -buy -bvw -bwC -bxA -bxz -bzU -bAJ -bBJ -cay -bCJ -bCJ -bCJ -bxz -bGY -bvp -bFC -bIR -bJE -bvp -bpM -bvp -bvp -bpM -bFC -bpM -bOG -bOG -bOG -bQc -bOH -bOH -bOH -bwu -bvp -bwu -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(101,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aac -aaa -agx -agN -agX -ahu -ahS -agw -agw -agw -akf -akW -alK -akW -ana -agw -aoj -ajh -apt -aqe -arb -arX -asM -atJ -auO -auO -auO -auO -azi -aAp -bWK -aBs -aBs -aDX -azh -aFm -aGg -aGX -aHY -aIQ -aKk -aIb -aKy -aNE -aOF -aPp -bXt -aRx -aOF -aTt -aZW -aUs -aWj -aUs -aUs -aUs -bYo -baV -aZi -bcC -azE -bdI -ben -beZ -bgm -bhA -biy -bjy -bkB -blW -bnp -bnp -bpW -brg -bst -btI -buz -bvx -bwD -bxB -byT -bzV -bAK -bBI -bCM -bDM -bEO -bFH -bGn -bHa -bpR -bpM -bFN -bGl -bKm -bpM -bLA -bMq -bpM -bNE -bpM -bOG -bOG -bOG -bOH -bOG -bOG -bOG -bwu -bvp -bwu -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(102,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aac -aaa -agw -agN -agX -ahv -ahT -agw -aiR -ais -akg -ais -alL -ais -anb -ais -aok -ajh -apu -aqf -arc -apu -asL -atK -asL -avC -awN -ayo -azi -aAq -aBs -aBr -aBs -aDY -aEF -bWZ -aGh -aGZ -aHZ -aIR -aKl -aIb -aMy -aNF -aOG -aPq -aQy -aRy -aOF -aTu -bXB -aUt -aUt -bXT -aUt -aUt -aUt -bYu -aZi -aGX -aBT -bYW -bem -bfa -bem -bhB -biy -bjz -bkC -blX -bnq -boM -bpX -brh -bsu -btJ -buA -bvy -bwE -bxC -byU -bzW -bAL -bBK -bCN -bDN -caR -bFI -byU -bHb -bHD -bpM -bIS -bJF -bKn -bpM -bpM -bpM -bpM -bvp -bpM -bpM -bwu -bpM -bwu -bpM -bwu -bpM -bpM -bRS -bpM -bpM -bpM -bpM -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(103,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aab -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aac -aad -agw -agx -agx -agw -agw -agw -bWe -ais -akh -akX -alM -ams -anc -ais -aok -ajh -apv -aqg -ard -apu -asL -atL -auP -avD -awO -ayp -azi -aAm -aBs -aCo -aDk -aDk -aEH -bXa -aGi -aHa -aIa -aIS -aKm -aIb -aMz -aNG -aOF -aPr -aQz -aRz -aOF -aTu -aUt -bXF -bXM -bXM -bXM -aXm -aZX -baW -aZi -aGX -aBT -bdJ -beo -bfb -beo -beo -beo -beo -bkD -beo -bnr -boN -bpY -bZL -bnr -bes -bes -bes -bes -bes -bes -bxz -bAM -bBI -bCO -bBI -bEP -bFJ -bxz -bxy -bxx -bpM -bpM -bpM -bpM -bpM -bLB -bpR -bpM -bvp -bpM -bOI -bvp -bvp -bvp -bQz -bQU -bpN -bvp -bvp -bvp -byL -bvp -bwu -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(104,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aav -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aad -aad -aad -aad -aad -aad -bWe -ajt -bWl -akY -alN -amt -and -ais -aol -ajh -apu -aqh -are -apu -asL -atM -asL -avE -awP -ayq -azi -aAr -aBt -aCp -aDl -aDZ -aEF -bWX -aGg -aGX -aIb -aIT -aKn -aIb -aMA -aNH -aOF -aPs -aQA -aQx -aOF -aTw -aUt -bXF -aWk -aXl -aYd -bYg -aZY -baW -aZi -aGX -aBT -bYW -beo -bfc -bgn -bhC -bgn -bgn -bkE -beo -bns -boO -bpZ -brj -bsv -bet -buB -bvz -bwF -bxD -bes -bxz -bAN -bBL -bCP -bDO -bEQ -bxz -bxz -bpR -bHE -bDb -bDb -bJG -bDb -bDb -bDb -bDb -bDb -bDb -bOh -boC -bPj -bFC -bPk -bPk -bPk -bPk -bPk -bPk -bPk -bvp -bpM -bpM -bpM -bpM -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(105,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aad -bWe -aju -akj -akZ -alO -amu -ane -ais -aok -ajh -apu -aqi -arf -arY -asL -asL -asL -avF -awQ -ayr -azi -azi -azi -azi -azi -azi -azh -aFk -aGg -aGX -aIc -aIc -aIc -aIc -aJb -aNI -aOF -aPt -aQB -aRA -aSx -aTx -aUu -bXG -aWl -bXU -bXU -bYh -aZZ -baX -bbR -bcD -aBT -bYW -beo -bfd -bgo -bfc -bfc -bjA -bkF -beo -bnt -boP -bpZ -brk -bsy -bes -buC -bfq -bfq -bxE -bes -buy -bxz -bxz -bxz -bxz -bxz -bxz -bGo -bDb -bHF -bvp -chr -bJH -bKo -bKX -byL -bMr -bpM -bpO -bOi -bOJ -cbO -bFC -bNL -bQA -bQV -ced -bQV -bRT -bPk -bvp -cbP -bvp -cga -bpM -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aad -aaa -aaa -aaa -aaa -aad -aaa -aaa -aaa -aaa -aad -aaa -aaa -aaa -aaa -aad -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(106,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aad -bWe -ajv -aki -ala -alP -amv -anf -ais -aom -ajh -ajh -ajh -ajh -ajh -ajh -atN -asL -asL -awR -asL -auO -auO -auO -auO -auO -auO -aEI -aFk -aGg -aHb -aIc -aIU -aKo -aIc -aJb -aNJ -aOF -aPu -aQx -aRB -aOF -aTy -aUt -aUt -aWm -aUt -aYe -aUt -baa -baY -aZi -aGX -aBT -bYW -beo -bfe -bgn -bgn -bgn -bgn -bkG -beo -bnt -boQ -bqa -brk -bsx -bet -buD -bfq -bwG -bxF -bes -bzX -bAO -bes -bzX -bAO -bes -bFK -bGp -bHc -bHc -bHc -bHc -bHc -bHc -bHc -bGm -bpM -bpM -bNF -bvp -bGp -bIl -bvp -bNL -bQB -bQW -bRk -bRF -bRU -bPk -bvp -bpM -bQU -cgb -bpM -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -acJ -acJ -bUl -acJ -acJ -acJ -acJ -bUl -acJ -acJ -acJ -acJ -bUl -acJ -acJ -acJ -acJ -bUl -acJ -acJ -aaa -acJ -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(107,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aad -bWe -ajw -aki -akY -alQ -akY -ang -ais -aon -aoN -apw -apw -apw -arZ -asN -apw -auQ -avG -awS -ays -azj -aAs -aBu -aCq -aDm -auO -aEJ -aFk -aGi -aHa -aId -aIV -aKp -aIc -aJb -aNK -aOF -aPv -aQC -aRC -aOF -aOF -aUv -aUt -aWn -aXm -aOF -aZi -bab -aZi -aOF -bcE -bdn -bYX -bep -bff -bgp -bgp -bgp -bgp -bkH -beo -bnv -boP -bpZ -brk -bsy -bes -buE -bvA -boV -bxG -bes -bzY -bDP -bes -bzY -bDP -bes -bFL -bGp -bHc -cbw -cbz -cbz -cbz -cbL -bHc -bLC -bMs -bIl -bHA -bpN -bGp -bFC -bvp -bNL -bQC -bQC -bQC -bRF -bRU -bPk -byL -bpM -bwu -bpM -bpM -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aad -aaa -aaa -aaa -aaa -bOc -aaa -aaa -aaa -aaa -aad -aaa -aaa -aaa -aaa -aad -aaa -aaa -aaa -acJ -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(108,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aad -bWe -ajx -akk -alb -alR -amw -ane -bWe -aoo -anH -anH -anH -anH -anH -asL -atO -auO -avH -awT -ayt -azk -aAt -aBv -awV -awV -auO -ayI -aFp -aGh -aGZ -aIe -aIW -aKq -aIc -aMB -aNL -aOH -aOH -aOH -aOH -aOH -aOH -aUw -aUt -aUt -aXn -aYf -aZj -bac -aZj -aZj -aGX -aBT -bYW -beo -bZk -bgq -bhE -biz -bhD -bkI -beo -bnw -boS -bpZ -brl -bsz -bet -buF -biF -boV -bxH -bes -bzZ -bAQ -bes -bCR -bAQ -bes -bFM -bGp -bHc -cbx -bIn -bIo -bIp -cbM -bHc -bvp -bMn -bIl -bpQ -bvp -bGp -bpM -bvp -bNL -bQC -bQC -bRl -bNL -bNL -bNL -bNL -bNL -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -bTT -bUd -bUd -bUd -bTT -bTT -bTT -bTT -bTT -bUV -bUV -bUV -bUV -bUV -bUV -bUV -bUV -bUV -bUV -bUV -bSv -bUl -aad -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(109,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -bdx -bWe -bWe -akl -alc -alc -alc -anh -bWe -aop -aoO -aaa -aaa -aaa -asa -asO -atP -auO -avI -awU -ayu -azl -aAu -aBw -aCr -aDn -auO -auO -aFq -aGg -bXk -aIc -aIc -aIc -aIc -aJb -aNL -aOH -aOH -aQD -aRD -aSy -aOH -aUx -aUt -aWo -aXn -aYg -aBT -bYp -aBT -aBT -aGX -aBT -bYW -beo -beo -beo -beo -beo -beo -bkJ -beo -bnr -boN -bpY -bri -bnr -bes -bet -bvB -bwH -bet -bes -bAa -bAR -bes -bCS -bDR -bes -bes -bGp -bHc -bHH -bIo -bHG -bJI -bKp -bHc -bLD -bLD -bLD -bLD -bLD -bGp -bKF -bPB -bNL -bQC -bQC -bRl -bNL -bRV -bSm -bSx -bSJ -bSQ -bSQ -bSQ -bTo -bSQ -bSQ -bSQ -bSQ -bTo -bSQ -bSQ -bSQ -bSQ -bTo -bSQ -bSQ -bSQ -bSQ -bTo -bSQ -bSQ -bSQ -bSQ -bTo -bSQ -bSQ -bSQ -bTZ -bUe -bUm -bUt -bTT -bUB -bUI -bUP -bUd -bUW -bVc -bVf -bVm -bVr -bVw -bVB -bVF -bVe -bVL -bUV -aaa -acJ -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(110,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -bdx -aad -aad -aad -aad -aad -bWr -aoq -anH -aaa -aaa -aaa -asa -asO -atQ -auO -avJ -awV -ayv -azm -aAv -aBw -aCs -aDn -aEa -auO -aFr -aGg -aHd -aIf -aIX -aKr -aIf -aJb -aNM -aOI -aPw -aQE -aRE -aSz -aOH -aTv -aVl -aUt -aXn -bXY -bbY -bad -baZ -baZ -aHo -azF -bdK -beq -bfg -bgr -bhF -biA -bjB -bkK -blY -bnx -bfq -bqb -brm -bsA -btK -buG -bvC -bwI -bxI -byV -bwI -bvC -bBM -bwI -bDS -bER -bes -bGp -bHc -bHI -bIp -bIo -bIn -bKq -bHc -bLE -bMt -bMX -bNG -bLD -bOK -bNL -bPC -bNL -bQD -bQD -bNL -bNL -bRW -bPd -bSy -bNL -bNL -bNL -bNL -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -bTT -bTT -bTT -bTT -bUf -bUn -bNW -bTT -bUC -bUJ -bUQ -bUd -bUX -bVd -bVg -bVn -bVs -bVx -bVC -bVG -bVe -bVM -bUV -aaa -acJ -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(111,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -agP -agP -agP -aaa -aaa -aaa -asa -asO -atR -auO -avK -awW -ayw -azn -aAv -aBx -aCt -aDo -aEb -auO -aFs -aGj -aHe -aIf -aIY -aKs -aIf -aMC -aNN -aOH -aOH -aQF -aRF -aSA -aOH -aOH -aOH -aWp -aXo -aOH -aOH -bae -aOH -aOH -aGX -aBT -bYX -ber -bfh -bgs -bhG -biB -bjC -bkL -blZ -bfp -boT -bqc -brn -bsB -bsB -buH -bvD -boV -bfq -byW -boV -bAb -bfq -bCT -biH -bES -bes -bGp -bHc -bHJ -bIq -cbB -bJJ -bKr -bHc -bLF -bMu -bMY -bNH -bOj -bOL -ccm -bPD -bQd -bQE -bQE -bRm -bRG -bRX -bSn -bPn -bSK -bSR -bTa -bTf -aad -aad -aad -aaa -aaa -aaa -aaa -aaa -aad -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -agP -bTW -bTX -bUa -bUg -bUo -bUu -bUz -bUD -bUK -bUd -bUd -bUY -bVe -bVh -bVe -bVe -bVe -bVe -bVH -bVe -bVN -bUV -aaa -acJ -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(112,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -asa -asO -atS -auO -avL -awX -ayx -azo -aAw -aBy -azl -aDp -aEc -auO -aFr -aGg -aHd -aIf -aIZ -aJb -aLB -aJb -aNN -aOH -aPx -aPz -aPz -aPz -aTz -aOH -aVm -aVn -aVn -aYh -aYh -baf -bba -bbS -aGX -aBT -bYW -beq -bfi -bgt -bhH -biA -bjD -bkM -bma -bny -blZ -bqd -bro -bsC -btL -bkM -bvE -bwJ -bxJ -byX -bAc -bkM -bBN -bCU -bDU -bET -bes -bGp -bHc -bHc -bIr -bIT -bJK -bHc -bHc -bLG -bMv -bMZ -bNI -bOk -bOM -bPm -bPc -bPI -bPd -bPd -bRn -bNL -bNL -bNL -bSz -bNL -bNL -bNL -bNL -bNL -bNL -bQj -bNL -bNL -bNL -bNL -bNL -bNL -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -bNx -bTT -bTT -bTY -bTT -bUh -bUp -bUv -bUA -bUE -bUL -bUR -bUU -bUZ -bVe -bVe -bVe -bVt -bVy -bVe -bVe -bVe -bVO -bUV -aad -bUl -aad -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(113,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aab -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -arg -arg -arg -arg -auO -auO -auO -auO -auO -aAx -aBz -auO -auO -auO -auO -aFt -aGk -aHd -aIf -aJa -aKt -aIf -aMD -aNN -aOH -aPy -aPz -aRG -aSB -aTA -aUy -aVn -aVn -aXp -aYi -aYi -bag -aYi -bbT -bcD -aBT -bYW -beq -bfj -bgu -bhI -beq -bes -bkN -bes -bes -boU -bqe -brp -bsD -btM -bsE -bvF -bsE -btM -byY -byY -bAS -bBO -bAS -byY -byY -bes -bGp -bGl -bHc -bIs -bIU -bJL -bKs -bHc -bLH -bMw -bNa -bNJ -bOl -bON -bPn -bPE -bQe -bPG -bPd -bRo -bNL -bRY -bNL -bSA -bSL -bSS -bSL -bTg -bNL -bNL -bNL -bTi -bSL -bTG -bTI -bTI -bNL -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -bTU -bTT -bTT -bTT -bUi -bUq -bUw -bTT -bUF -bUM -bUd -bUd -bUd -bVe -bVi -bVe -bVe -bVe -bVe -bVI -bVe -bVP -bUV -aaa -acJ -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(114,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aad -apx -aqj -arh -asb -asP -atT -auR -avM -awY -ayy -azp -aAy -aBA -aCu -aCu -aCu -aEK -aFu -aGl -aHf -aIf -aIf -aIf -aIf -aME -aNO -aOH -aPz -bXu -aRH -aSC -aTB -aOH -aVo -aVn -aXq -aYj -aZl -bah -aVn -bbS -aGX -aBT -bYW -bes -bfk -bfk -bfk -bes -bjE -bfq -bmb -bfk -boV -bqb -bZM -bsE -btN -buI -bvG -bwK -bxK -byY -bAd -bAT -bBP -bCV -bCV -byY -bvp -bGp -bHd -bHc -bIt -bIV -bJM -bKt -bHc -bLI -bMx -bNb -bNK -bOj -bOO -bPo -bPF -bQf -bPF -bQX -bRp -bRH -bRZ -bSo -bSB -bSE -bST -bSE -bTh -bTp -bTu -bTp -bTj -bSE -bST -bSE -bSE -bNL -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -bTV -abt -abt -bUb -bUj -bUr -bUx -bTT -bUG -bUN -bUS -bUd -bVa -bVe -bVj -bVo -bVu -bVz -bVD -bVJ -bVe -bVQ -bUV -aaa -acJ -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(115,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -apy -aqk -ari -asc -asQ -asc -auS -avN -awZ -ayz -azq -aAz -aBB -aCv -aBB -ayz -aEL -aFv -aGm -bXl -aIf -aJb -aKu -aKy -aJb -aNN -aOH -aPA -aOH -aOH -aSD -aOH -aOH -aVp -aVn -aXr -aYk -aZm -bai -aVn -bbS -aGX -aBT -bYW -bes -bfl -bZn -bZu -biC -bjF -bkO -bmc -bfk -boV -bqb -bZN -bsD -btO -buJ -bvH -bwL -bxL -byY -bAe -cam -bBQ -bCW -bDV -byY -bFN -bGq -bHe -bHK -bIu -bIW -bJN -bHK -bHK -bLD -bLD -bLD -bLD -bOm -bOP -bPn -bPG -bQg -bPG -bPd -bRq -bNL -bKF -bNL -bSC -bSE -bSU -bSE -bSE -bSE -bSE -bSE -bSE -bSE -bSU -bSE -bTK -bKF -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aad -aad -aad -bTT -bUk -bUs -bUy -bTT -bUH -bUO -bUT -bUd -bVb -bVe -bVk -bVp -bVv -bVA -bVE -bVK -bVe -bVR -bUV -aaa -acJ -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(116,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -apy -aql -arj -asd -asR -atU -auT -avO -axa -ayA -ayA -ayA -ayA -ayA -ayA -arg -arg -aFw -aGn -aHh -aIg -aJc -aKv -aLC -aKv -aNP -aOJ -aPB -aQG -aRI -bXx -aTC -aUz -aVq -aWq -aWq -aWq -aWq -baj -aVn -bbS -aGX -aBT -bYW -bet -bfm -bfq -bfq -biD -bjG -bkP -bfk -bes -boV -bqb -bZN -bsE -btP -buK -bvI -bwM -bxM -byY -bAf -bAU -bBP -bCX -bCX -byY -byL -bGp -bHe -bHL -bIv -cbC -bJO -bKu -bKY -bLJ -bMy -bNc -bNL -bOn -bOQ -bPp -bPl -bQh -bPd -bQY -bRr -bRI -bSa -bSc -bSD -bSM -bSV -bTb -bSV -bSV -bTb -bSV -bSV -bTb -bSV -bSV -bTL -bKF -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aad -aad -aad -bTT -bTT -bTT -bTT -bTT -bTT -bTT -bTT -bTT -bUV -bUV -bUV -bUV -bUV -bUV -bUV -bUV -bUV -bUV -bUV -bSw -bUl -aad -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(117,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -apy -aqm -arj -ark -ark -ark -ark -avP -axb -ayA -bWH -aAA -aBC -aCw -ayA -aEd -axo -bXb -aGg -aHd -aIf -aJd -aJb -aLD -aMF -aMF -aMF -aMF -aMF -aMF -aSF -aTD -aOH -aOH -aWr -aXs -bXZ -bYi -aOH -aOH -aOH -aGX -aBT -bdL -beu -bfn -bgv -bfp -bfp -bfp -bkQ -bmd -bnz -bgx -bqb -biF -bsD -btQ -buL -bvJ -bwN -bxN -byY -byY -bAV -bBR -byY -byY -byY -byY -bGr -bHf -bHM -bIw -bIX -bJP -bKv -bKZ -bKv -bMz -bNd -bNL -bOo -bOR -bPn -bPd -bPd -bPd -bQZ -bRr -bRI -bSb -bSc -bSE -bSN -bSE -bTc -bSE -bSE -bTc -bSE -bSE -bTc -bSE -bSE -bSN -bKF -aad -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aad -aaa -aaa -aaa -aaa -bOf -aaa -aaa -aaa -aaa -aad -aaa -aaa -aaa -aaa -aad -aaa -aaa -aaa -acJ -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(118,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aad -apz -aqn -ark -ase -asS -atV -auU -avQ -axc -ayA -azr -aAB -aBD -aCx -ayA -aad -aEM -aFx -aGo -aHd -aIf -aIf -aKw -aLD -aMF -aNQ -aOK -aPC -aQH -aMF -aSG -aTE -aMF -aVr -aWs -bXV -aYm -aYm -bYq -bYv -bbU -bcD -aBT -aFk -bet -bfo -bgw -bhJ -biE -bjH -bkR -bme -bkR -boW -bqf -brq -bsE -btR -buM -bvK -bwO -bxO -byY -byY -bAW -bBS -bCY -bDW -bEU -byY -bvM -bHe -bHN -bIx -bIY -bJQ -bKw -bLa -bLK -bMA -bNe -bNL -bOp -bOS -bPn -bPd -bQi -bQF -bQZ -bRs -bRI -bSb -bSc -bSD -bSN -bSW -bOG -bOG -bOH -bOG -bSW -bOG -bOG -bSW -bSE -bSN -bKF -aad -aad -aaa -aaa -aaa -aaa -aaa -aab -aaa -aaa -aaa -aaa -aaa -aaa -aaa -acJ -acJ -bUl -acJ -acJ -acJ -acJ -bUl -acJ -acJ -acJ -acJ -bUl -acJ -acJ -acJ -acJ -bUl -acJ -acJ -aaa -acJ -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(119,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -abu -aac -aac -aac -aac -aac -aaa -aac -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -apy -aqo -arj -ase -asS -atW -auU -avQ -axd -ayA -azs -aAC -aBE -aCy -ayA -aad -aEM -aFx -aGo -aHd -aIh -aIf -aKx -aLD -aMF -aNR -aOL -aPD -aQI -aRJ -aSH -aTF -aUA -aVs -bXN -aXt -aYn -aZo -bYr -aMF -bYC -bcE -ayJ -aFj -bev -bfp -bgx -bfq -biF -bjI -bkS -bkS -bkV -bkV -bqg -bkU -bkV -bkV -bkV -bvL -bwP -bwP -bwP -byY -bAX -bBT -bBV -bDX -bEV -byY -bvM -bHe -bHO -bIx -bIZ -bJR -bKx -bHK -bHK -bHK -bHK -bNL -bKF -bOT -bPn -bPH -bQj -bNL -bRa -bNL -bNL -bSc -bSc -bSc -bSN -bOG -bOG -bOG -bOH -bOG -bOH -bOG -bOG -bOG -bTJ -bTM -bKF -aad -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aad -aaa -aaa -aaa -aaa -aad -aaa -aaa -aaa -aaa -aad -aaa -aaa -aaa -aaa -aad -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(120,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aac -aac -aac -aac -aac -aac -aac -aac -aaa -aad -aaa -aaa -aaa -aad -aaa -aac -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -apy -aqp -arj -asf -asS -atX -auU -avQ -axe -ayB -azt -aAD -aBF -ayA -ayA -aad -aEM -aFx -aGo -aHd -aIi -aIf -aKy -aLD -aMF -aNS -aOM -aPE -aQJ -aMF -aSI -aTG -aMF -aVt -bXO -aXu -aYo -aZp -aZu -aYv -bbV -aGX -aBT -aFk -bew -bfq -bfq -bhK -biF -bjJ -bkS -bmf -bnA -boX -bqh -brr -bsF -btS -bkV -bvM -bwP -bxP -byZ -byY -bAY -bBU -bCZ -bDY -bEW -byY -bvM -bHe -bHP -bIx -bJa -bJR -bKy -bHK -bLL -bMB -bNf -bNM -bOq -bOS -bPq -bPI -bNL -bQG -bRb -bRt -bRJ -bSd -bSp -bSc -bSN -bOG -bOG -bOH -bOH -bOH -bOH -bOH -bOG -bOG -bSE -bSN -bKF -aad -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(121,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aac -aac -aac -aac -aac -aac -aac -aac -aac -aac -aac -aac -aac -aaa -aaa -aad -aaa -aaa -aaa -aaa -aad -aaa -aaa -abx -abx -abx -abx -abx -aad -aac -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -apy -aqq -arj -ase -asS -atY -auU -avQ -axf -ayA -azs -aAE -aBG -aCA -ayA -aad -aEM -aFx -aGo -aHd -aIj -aIf -aJb -aLD -aMF -aNT -aON -aPF -aMF -aMF -aSJ -aTH -aMF -aMF -aWt -aXv -aYp -bYj -bak -bbc -bbW -aGX -aBT -aFn -bex -bZl -bgy -bfr -biG -bjK -bkT -bmg -bnB -boY -bqi -brs -bsG -btT -buN -bvN -bwP -bxQ -bza -bAg -bAZ -bBV -bBV -bDZ -bEX -byY -bvM -bHe -bHQ -bIx -bJb -bJR -bKz -bHK -bLM -bMC -bNg -bNN -bOr -bOU -bPn -bPJ -bQk -bQH -bRc -bRu -bRK -bSe -bSq -bSc -bSN -bSW -bOH -bOH -bTq -bTv -bTA -bOH -bOH -bOH -bSE -bSN -bKF -aad -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(122,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aad -aaa -aaa -aaa -aaa -aad -bVS -aaa -aaa -aaa -aad -aaa -abx -abx -abx -abx -acx -acK -acK -acK -acK -adS -aep -aeO -afl -abx -aaa -aac -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aad -apz -aqr -ark -ase -asS -atZ -auU -avQ -axg -ayA -azu -aAF -aAE -aCB -ayA -aad -aEM -aFx -aGp -aHd -aIf -aIf -aKz -aLD -aMF -aMF -aOO -aMF -aMF -aRK -aSK -aTI -aUB -aVu -aWu -aWv -aWu -aSE -aWu -aMF -bYD -aGX -aBT -aFk -bet -bes -bgz -bfq -biH -bjK -bZB -bmh -bnC -boZ -bnB -bZO -bnB -btU -bkV -bvM -bwP -bxR -bzb -byY -bBa -bBW -bDa -bEa -bEY -byY -bvM -bHe -bHR -bIx -bJc -bJR -bKA -bHK -bLN -bMC -bNh -bNO -bOs -bOV -bPr -bPK -bNL -bQI -bRd -bRv -bRL -bSf -bSr -bSF -bSO -bOG -bOG -bOH -bTr -bTw -bTB -bOH -bOG -bOG -bTJ -bTN -bKF -aad -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(123,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aac -aaa -aaf -aaf -aaf -aaf -aaf -aaf -aaf -aaf -aaf -aaf -aaf -aaf -abx -abJ -abU -ach -acy -acL -bVY -bVY -adB -ack -aeq -aeP -afm -abx -aad -aac -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -apy -aqs -arj -ark -ark -ark -ark -avP -axh -ayA -bWH -aAG -aBH -aCC -ayA -aEd -axo -bXc -aBT -aHd -aIf -aJe -aJb -aLE -aMG -aNU -aOP -aPG -aQK -aQK -aQK -aQK -aQK -aVv -aWv -aWu -aWv -aZr -bYs -aYv -bYE -aGX -aBT -aFk -bey -bet -bgA -bfq -bfq -bjK -bkT -bmg -bnD -bpa -bqj -brt -bsH -btV -bkV -bvO -bwP -bxS -bwP -byY -byY -bBX -byY -byY -byY -byY -bvM -bHe -bHS -bIx -bJd -bJS -bKB -bHK -bLO -bMC -bNi -bNP -bOt -bOW -bPn -bPL -bQk -bQH -bRe -bRw -bRM -bSg -bSs -bSc -bSN -bOH -bOH -bOH -bTs -bTx -bTC -bOH -bOH -bSW -bSE -bSN -bKF -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(124,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aac -aad -aaf -aag -aak -aap -aaj -aah -aaJ -aaV -aaj -aag -aak -abm -aby -abK -abV -aci -acz -acM -adg -adg -adC -adT -aer -aeQ -afn -abx -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -apy -aqt -arj -asg -asT -aua -auV -avR -axi -ayA -ayA -aAH -ayA -ayA -ayA -arg -arg -aFw -aBT -aHd -aIf -aJf -aKA -aLF -aMH -aNV -aOQ -aPH -aQL -aRL -aSL -aTJ -bXC -bXH -aWu -aWv -aWu -aSE -bal -aYv -bbV -bcF -bdo -bdM -bZi -bet -bgB -bfq -bfq -bjL -bkS -bmi -bnE -bpb -bkV -bkS -bsI -bkS -bkV -bvP -bwQ -bxT -bzc -bwQ -bwQ -bBY -bDb -bDb -bDb -bFO -bGs -bHe -bHT -bIy -bJe -bJT -bKC -bHK -bLP -bMD -bNj -bMD -bOq -bOX -bPs -bPM -bNL -bQJ -bRf -bRx -bRN -bRN -bSt -bSc -bSN -bOG -bOG -bOH -bOH -bOH -bOH -bOH -bOG -bOG -bSE -bSN -bKF -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(125,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aac -aaa -aaf -aah -aal -aam -aam -aam -aaK -aaW -aaW -abe -aal -abn -abx -abL -abW -acj -acA -acN -acN -acN -acN -adU -aes -abx -abx -abx -afW -acP -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -apy -aqu -arl -ash -ash -ash -auS -avN -axj -ayC -azq -avO -aBI -aCD -aBI -ayz -aEL -aFv -aGq -aHg -aIk -aIk -aIk -aIk -aIk -aIk -aIk -aLD -aQK -aRM -aSM -aTK -aUC -bXI -aWw -aXx -bYa -aZr -bam -aMF -aMF -aGX -aBT -aFk -bez -beu -bet -bhL -bhL -bet -bkV -bkV -bkV -bkV -bkV -bru -bsJ -bZW -bpM -bpM -bpM -bpM -bpM -bpM -bpM -bpM -bpM -bpM -bpM -bFP -bpM -bHe -bHe -bHe -bJf -bHe -bHe -bHK -bLQ -bLQ -bLQ -bLQ -bLP -bOY -bPn -bPN -bQj -bNL -bRa -bNL -bNL -bSc -bSc -bSc -bSN -bOG -bOG -bOG -bOH -bOG -bOH -bOG -bOG -bOG -bTJ -bTM -bKF -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(126,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aac -aaa -aaf -aai -aam -aam -aaf -aaf -aaL -aaf -aaf -abf -aaW -abo -abx -abx -abx -ack -acB -acO -adh -adh -adD -adV -aet -abx -afo -afI -afX -acP -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aad -apA -aqj -arm -asi -asU -aub -bWy -avS -axk -ayD -azp -aAI -aBJ -aCE -aCE -aCE -aEN -aFy -aGr -aHf -aIl -aJg -aKB -aLG -aMI -aNW -aIk -aLD -aQK -aRN -aRM -aTK -aUC -bXH -aWx -aXy -bYa -aSE -aWu -aWv -bYk -bcE -ayJ -aFj -ayJ -bfs -bZo -bgC -bgC -bgC -bZC -bZE -bnF -bZE -bqk -bZP -bsK -btW -bBZ -bBZ -bBZ -cag -bBZ -bBZ -bBb -cag -bDc -bBZ -bBb -bFQ -cbi -bHg -bHU -bBZ -bJg -bJU -bKD -bLb -bLR -bME -bNk -bKD -bOu -bOS -bPn -bPd -bQl -bQK -bRg -bRy -bRI -bSb -bSc -bSD -bSN -bSW -bOG -bOG -bSW -bOG -bOH -bOG -bOG -bSW -bSE -bSN -bKF -aad -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(127,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aac -aaa -aaf -aaj -aam -aaf -aaf -aaf -aaL -aaf -aaf -aaf -abh -abp -aaf -abz -abX -acl -acC -acN -acN -acN -acN -adW -aeu -aeR -afp -afJ -afY -acP -acP -acP -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -arg -arg -arg -arg -arg -avT -arg -ayE -ayH -ayH -aBK -ayH -ayH -axo -axo -aFz -aGs -aHj -aIm -aJh -aKC -aKC -aMJ -aNX -aIk -aLD -aQK -aRO -aSN -aTL -aUD -aVw -aWy -aXz -aYq -aZs -ban -bYw -bbX -aHo -bdp -bdN -aBT -bft -bZp -bgD -bgD -bgD -bgD -bgD -bnG -bgD -bgD -brv -bsL -btX -bsL -bsL -bsL -bxU -bsL -bsL -bBc -bCa -bDd -bCa -bEZ -bFR -bCa -cbo -bHV -bCa -bJh -bJV -bKD -bLc -bLS -bMF -bNl -bKD -bOv -bOS -bPn -bPd -bPd -bPd -bRg -bRr -bRI -bSb -bSc -bSE -bSN -bSE -bTd -bSE -bSE -bTd -bSE -bSE -bTd -bSE -bSE -bSN -bKF -aad -aad -aad -aad -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(128,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aac -aaa -aaf -aaj -aam -aaf -aaf -aaD -aaN -aaf -aaf -aaf -abi -abq -abA -abM -abY -acm -acC -acP -adi -adi -acP -adW -aev -aeS -aeS -aeS -acP -acP -acP -agO -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -agP -arn -asV -arn -auW -avU -auW -ayE -azv -aAJ -aBL -aCF -ayH -aEe -ayN -aFw -aBT -aHd -aIl -aJi -aKD -aLH -aMK -aNY -aOR -aPI -aQK -aRN -aRM -aRM -aUC -aTG -aWz -aXA -bYa -aWv -aWu -aWv -bYk -aGX -aBT -aFn -azF -bfu -bZq -bgE -bgE -bgE -bZD -bZD -bZD -bZD -bZD -brw -bgE -btY -bEb -bvQ -bEb -bxV -bzd -bEb -bBd -bCb -bDe -bEb -bFa -bFS -bgE -bHh -bgE -bIz -bJi -bJV -bKD -bLd -bLT -bMG -bNm -bKD -bOw -bOQ -bPp -bPl -bPM -bPd -bRh -bRr -bRI -bSb -bSc -bSD -bSP -bSV -bTe -bSV -bSV -bTe -bSV -bSV -bTe -bSV -bSV -bTO -bKF -aad -aaa -aad -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aab -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(129,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aac -aae -aaf -aaj -aan -aaf -aaf -aaE -aaO -aaX -aaf -aaf -abj -abr -abB -abN -abZ -acn -acD -acQ -adj -adj -adE -adX -aew -aeT -afq -afJ -afZ -agj -agy -agP -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -agP -asj -asW -auc -auX -avV -axl -ayF -azw -aAK -aBM -aAM -ayH -aEf -aEO -aFw -aBT -aHk -aIn -aJj -aKE -aKE -aML -aNZ -aIk -aNN -aQK -aRM -aSO -aRM -aUE -aVx -aWz -bXW -bYb -aWu -bao -aMF -aMF -chq -aBT -aFk -beA -beF -beB -bhM -bhM -beB -beJ -beJ -beJ -beJ -beJ -brx -bsM -btZ -buO -buO -buO -buO -buO -buO -bBe -bCc -bDf -bEc -bFb -bgD -bGt -bHi -bGt -bIA -bJi -bJW -bKE -bKD -bLU -bMH -bNn -bNn -bKF -bOZ -bPn -bPO -bQm -bQL -bPd -bRz -bNL -bNL -bNL -bSG -bSE -bSX -bSE -bSE -bSE -bSE -bSE -bSE -bSE -bSX -bSE -bTP -bNL -aad -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(130,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aac -aaa -aaf -aaj -aam -aaf -aaf -aaF -aaP -aaf -aaf -aaf -bVV -aaj -bVW -bVX -aca -aco -acC -acP -adi -adi -acP -adW -aex -aeU -aeU -afK -acP -acP -acP -agO -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -agP -arn -asX -arn -arn -avW -arn -ayE -azx -aAL -aBN -aCG -aDq -bWR -bWU -aFw -aBT -aHd -aIl -aJk -aKF -aLI -aMM -aOa -aIk -aPJ -aQM -aRP -aSP -aTM -bXD -aTG -aWA -aWv -aWu -aWv -bap -aYv -bYF -aGX -aBT -aFk -beH -beB -bgF -bfw -bfw -bjM -beJ -bmj -bnH -bpc -beJ -bry -bsN -bua -buO -bvR -bwR -bxW -bze -buO -bBf -bCd -bDf -bEd -bFc -bFT -bGt -bHj -bGt -bIB -bJj -bJV -bKF -bLe -bLV -bMI -bNo -bNL -bOx -bPa -bPt -bPP -bQn -bQM -bRi -bRA -bRO -bSh -bSu -bSH -bSE -bSY -bSE -bTi -bTp -bTy -bTp -bTg -bSE -bSY -bSE -bSE -bNL -aad -aad -aad -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(131,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aac -aaa -aaf -aaj -aam -aaf -aaf -aaf -bVT -aaf -aaf -aaf -abh -abs -aaf -abC -acb -acp -acC -acR -acR -acR -acR -adY -aey -aeV -afr -afJ -afY -acP -acP -acP -bVZ -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aqv -arn -arn -arn -arn -auY -avX -axm -ayG -azy -aAM -aBO -aCH -ayH -aEg -bWV -aFw -aBT -aHl -aIk -aJl -aJl -aJl -aJl -aIk -aIk -aNL -aQK -aQK -aQK -aQK -aQK -bXJ -aWv -aWu -aWv -aWu -bYt -aYv -bYG -aGX -aBT -aFk -bZj -beB -bgG -bfw -bfw -bjN -beJ -bmk -bmD -bmD -bql -brz -bsO -bub -buP -bvS -bwS -bxX -bzf -buO -bBg -bCe -bDf -bEe -bgD -bgD -bGt -bHk -bGt -bIA -bJk -bJX -bKG -bLf -bLW -bMJ -bNp -bNQ -bOy -bPb -bPu -bPd -bQo -bPd -bPd -bRo -bNL -bSi -bNL -bSI -bSL -bSZ -bSL -bTj -bNL -bNL -bNL -bTh -bSL -bTH -bTI -bTI -bNL -aad -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(132,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aac -aaa -aaf -aag -aam -aam -aaf -aaf -bVT -aaf -aaf -aam -aam -aap -abD -abD -abD -acq -acE -acS -adk -adk -adF -adZ -aez -abD -afs -afL -aga -agk -agz -agz -agY -agz -agz -agz -agz -agY -agz -agz -agz -agz -agY -agz -agz -agz -agz -agY -agz -agz -agz -aud -auZ -avY -axn -ayH -azz -aAM -aBP -aCI -ayH -aEg -bWV -aFw -aBT -bXl -aIo -aJm -aKG -aLJ -aMN -aIo -aMC -aNL -aQK -aRQ -aSQ -aTN -aUF -aVy -aWB -aXB -aYr -aYn -baq -aMF -bYH -aGX -aBT -aFk -beB -beG -bgH -bfw -bhN -bjO -beJ -bml -bnI -bpd -bqm -brA -bsP -buc -buO -buO -bwT -bxY -buO -buO -bBg -bCd -bDf -bEf -bgD -bgD -bgD -bgD -bgD -bIA -bgD -bHW -bKF -bLg -bLX -bMK -bNq -bNR -bOz -bPc -bPv -bPc -bQp -bPd -bPd -bRB -bNL -bNL -bNL -bNL -bNL -bNL -bNL -bNL -bNL -bQj -bNL -bNL -bNL -bNL -bNL -bNL -bTR -aad -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(133,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aac -aaa -aaf -aah -aal -aam -aam -aam -aam -aam -aam -aam -aal -aaV -abD -abO -acc -acr -acF -acR -acR -acR -acR -aea -aeA -abD -abD -abD -afW -acP -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -arn -ava -arn -arn -ayH -azA -aAM -aBQ -aCJ -aDq -bWR -bWW -aFw -aBT -aHd -bXm -aJn -aKH -aLK -aMO -aIo -aOS -aNL -aQK -aRR -aSR -aTO -aQK -aQK -aMF -aYv -aYs -aWu -bar -aMF -bbZ -aGX -aBT -bdO -beC -bZm -bgI -bfv -biI -bZy -bkW -bmm -bnJ -bpe -bqn -brB -bmG -bud -buO -bvT -bwU -bxZ -bzg -buO -bBg -bCd -bDf -bEg -bFd -bFU -bGu -bHl -bHW -bIC -bEb -bJY -bKH -bLh -bLY -bLh -bNr -bNL -bKF -bPd -bPw -bPQ -bQq -bQN -bPd -bRC -bNL -aaa -aaa -aaa -aaa -aaa -aaa -aad -aaa -aaa -aaa -aad -aaa -aad -aad -aad -aad -aad -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(134,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aac -aad -aaf -aai -aao -aaq -aaj -aah -aaR -aaV -aaj -aai -aao -aaq -abD -abP -acd -acs -acG -acT -adl -adl -adG -acu -aeB -adm -aft -abD -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -ayH -azB -aAN -aBR -aCK -aDr -aEh -aEP -aFw -aBT -aHk -aIp -aJo -aKI -aLL -aMP -aIo -aOT -aNL -aQK -aRS -aSS -aTP -aUG -aQK -bXP -aXC -aYt -aWv -aVx -bYk -bbY -aGX -aBT -aFk -beD -bfw -bfw -bZv -biJ -bZy -bkX -bmn -bnI -bpf -bqo -brC -bmG -bue -bzm -bzm -bzm -bzm -bzm -bzm -bBh -bCd -bCk -bEh -bFe -bFV -bGv -bCk -bHX -bID -bJl -bCk -bCk -bCk -bLZ -bCk -bCk -bCk -bCk -bNL -bNL -bNL -bNL -bNL -bNL -bNL -bNL -aad -acJ -aaa -aaa -aaa -aaa -aad -aaa -aaa -aaa -aad -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(135,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aac -aaa -aaf -aaf -aaf -aaf -aaf -aaf -aaf -aaf -aaf -aaf -aaf -aaf -abD -abQ -ace -act -acH -acU -adm -adm -adH -aeb -aeC -adm -aft -abD -aad -aac -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aad -ayH -azC -aAO -aBS -aCL -ayH -aEi -ayN -aFw -aBT -aHd -bXm -aJp -aKJ -aLM -aMQ -aIo -aOU -aNL -aQK -aQK -aST -aTQ -aUH -aQK -bXQ -aXD -aYu -aWu -aTG -bYk -bbY -bcH -ayJ -aFj -beE -bfx -bgJ -bhP -biJ -bZz -bkW -bmo -bnK -bpg -bqp -brD -bmG -buf -buR -bvU -bwV -bya -bzh -bzm -bBg -bCd -bCk -bEi -bFf -bFW -bGw -bHm -bHY -bIE -bJm -bHm -bEi -bcG -bMa -bOB -bNs -bNS -bPf -abt -bLn -aad -aad -aad -aad -aaa -aaa -aaa -acJ -aaa -aaa -abu -acJ -acJ -acJ -acJ -acJ -acJ -acJ -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(136,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aad -aaa -aaa -aaa -aaa -aad -bVU -aaa -aaa -aaa -abk -abt -abE -abE -abE -acu -abD -abD -abD -abD -abD -abD -aeD -aeW -afu -abD -aaa -aac -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aad -aqw -aqw -aqw -aqw -aqw -aqw -aad -axo -ayH -ayH -aAP -ayH -ayH -ayH -ayN -ayN -aFA -aED -aHe -aIo -aJq -aKK -aLN -aMR -aIo -aOV -aPK -aKv -aRT -aSU -aTR -aUI -aQK -bXR -aXE -aYt -aWv -bat -aMF -bYI -aGX -aBT -bdQ -beB -bfy -bgK -bhQ -biK -beG -beJ -beJ -beJ -beJ -bpn -brE -bpn -bjU -buR -bvV -bwW -byb -bzi -bzm -bBi -bCf -bDg -bEj -bFg -bFX -bGx -bHn -bHZ -bIF -bJn -bJZ -bKI -bLi -bMb -bIc -bNt -bNT -bCk -aad -bCt -bCt -bCt -bCt -bCt -aad -aac -aad -acJ -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(137,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aac -aac -aac -aac -aac -aac -aac -aac -aac -aac -aac -aac -aac -aaa -aaa -aad -aaa -aaa -aaa -aaa -aad -aaa -aaa -abD -abD -abD -abD -abD -aad -aac -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aqw -aro -ask -asY -aue -avb -aad -awb -bWD -azD -aAQ -aBT -ayN -aDs -aEj -ayN -bXd -aBT -aHd -aIo -aIo -aKL -aLO -aIo -aIo -aIf -bXr -aIf -aQK -aQK -aTS -aQK -aQK -aMF -aMF -bYc -bYk -aMF -aMF -aBT -aGX -aBT -bYY -beF -bfz -bZr -bfw -biL -bjP -bkY -bmp -bnL -bph -bqq -brF -bsQ -bug -buS -bvW -bwX -byc -bzj -bAh -bBj -bCd -bCk -bEk -bFh -bFY -bGy -bHm -bIa -bIG -bJo -bHm -bKJ -bGI -bMc -bGI -bNu -bNU -bOA -bPe -bPx -bPR -bQr -bQr -bCt -aaa -aac -aaa -acJ -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(138,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -abu -aac -aac -aac -aac -aac -aac -aac -aac -aaa -aad -aaa -aaa -aaa -aad -aaa -aac -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aad -aqw -arp -asl -asZ -auf -avc -avZ -avZ -ayJ -ayJ -aAR -ayJ -aCM -ayJ -ayJ -aEE -aFj -ayJ -aHm -ayJ -aJr -aKM -aLP -aJr -aOb -bXq -bXs -aQN -aRU -bXq -aTT -bXq -aVC -aWC -bXq -bYd -bXq -ayJ -aEE -bcb -bcD -aBT -bdQ -beB -bfA -bZs -bfx -biM -bjQ -bkZ -bmq -bnM -bpi -bqr -brG -bsR -buh -buT -bvX -bwY -byd -bzk -bzm -bBk -bCd -bCk -bEl -bFh -bFY -bGz -bCk -bCk -bCk -bCk -bCk -bKK -bLj -bMd -bML -bNv -bNV -bHm -aad -bEA -bPS -bQs -bQO -bCt -aaa -aac -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(139,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aac -aac -aac -aac -aac -aaa -aac -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aad -aad -aqw -arq -asm -ata -aug -avd -awa -axp -ayK -azE -aAS -aBU -aBU -aBU -aBU -aEQ -aFB -aGt -aKN -aBU -aBU -aKN -aLQ -aMS -aMS -aMS -aMS -aQO -aGX -aBT -aFk -aBT -aBT -aBT -aXF -aBT -aBT -aBT -aED -aBT -bcI -bdn -bdP -beG -bfB -bZt -bfw -biN -beG -bla -bmr -bnN -bpj -bqs -brH -biJ -bug -buS -bvY -bwZ -bye -bzl -bzm -bBk -bCd -bCk -bEm -bFh -bFY -bGA -cbp -bIb -bIH -bJp -cbp -bKL -bMc -bGI -bLk -bNw -bOa -bLs -bPg -bPx -bPT -bQr -bQr -bCt -aaa -aac -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(140,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aad -aqw -arr -asn -atb -auh -ave -awb -awb -ayL -azF -aAT -azF -azF -azF -azF -aEC -aAT -aGu -aHo -azF -aJs -aKO -aLR -aMT -aJs -aJs -aFh -aQP -aHo -aJs -aTU -aJs -bXK -aJs -aTU -aJs -aMT -azF -aEC -azF -aHo -azF -bYZ -beG -bfC -bfD -bfD -bfC -bfC -bfC -bfC -bfC -bfC -bqt -brI -biJ -bui -buR -buR -buR -buR -bzm -bzm -bBk -bCg -bDh -bEn -bFi -bFZ -bGB -bHo -bIc -bIc -bIc -bIc -bKM -bMc -bGI -bFY -bNv -bNX -bHm -aad -bCt -bCt -bCt -bCt -bCt -aaa -aac -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -bUc -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(141,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aad -aqw -ars -aso -atc -aui -aqw -aad -awb -ayM -azG -aAU -aBV -ayM -bWP -aAU -ayN -aFC -aGv -aHp -aIs -aIs -aKP -aLS -aIs -aIs -aMX -aPL -aQQ -aQX -aMX -aIt -aIt -aIt -aIt -aIt -aCd -aCd -aCd -aCd -bYJ -aGX -aBT -aFk -beH -bfD -bgN -bhS -biO -bjR -blb -bms -bZG -bpk -bqu -brJ -bsS -bui -buU -bvZ -bxa -byf -bzn -bAi -bBl -bCh -bCk -bEo -bFj -bFY -bGC -bHp -bHp -bII -bGI -bGI -bKN -bMN -bGI -bFY -bNu -bNU -bOA -bPe -bPx -bPU -bQt -bQt -bCt -aaa -aac -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(142,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aad -aqw -aqw -aqw -aqw -aqw -aqw -aad -axo -ayN -awb -awb -ayN -ayN -awb -awb -aoP -aFD -aGw -aHq -aIs -aJt -aKQ -aLT -aMU -aOc -aOW -aPM -aLY -aRV -aSV -aMX -aUJ -aVD -aWE -aIt -bYe -bYl -aDH -bbf -aBT -aGX -bYQ -aFk -beH -bfE -bgO -bgP -bgP -bgP -blc -bmt -bnO -bpl -bqv -brK -bsT -buj -buV -bwa -bxb -byg -bzn -bAj -bBm -bCi -bDi -bEp -bFj -bFY -bGD -cbp -bId -bIJ -bId -cbp -bKO -bGI -bGI -bFY -bNv -bNY -bHm -aad -bEA -bPV -bQu -bQP -bCt -aad -aac -aaa -aaa -aaa -aac -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(143,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aoP -aFE -aGx -axz -aIs -aJu -aKR -aLU -aMV -aOd -aOX -aPN -aLY -aRW -aSW -aTV -aUK -aSa -aWF -aIt -bYf -aIy -aCd -aCd -bcc -bcJ -bdq -bdQ -beH -bfD -bgP -bZw -bZx -bZx -bld -bgP -bgP -bpk -bqu -bfw -bsU -bui -buW -bwb -bxc -byh -bzo -bAk -bBn -bCj -bCk -bEq -bFk -bGa -bGE -cbp -cbp -cbp -cbp -cbp -bKP -bGI -bDj -bMe -bNy -bNZ -bLs -bPg -bPx -bPW -bQt -bQt -bCt -aaa -aac -aaa -aaa -aaa -aac -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(144,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aad -ait -ait -aiu -aiu -ait -ait -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aER -aFE -aGx -aHr -aIs -aJv -aKS -aLV -aMW -aOc -aOW -aPM -aQR -aRV -aSX -aTW -aUL -aMZ -aWG -aIt -aDH -aZv -bau -bau -bcd -bcK -bau -bdR -bau -bfC -bgQ -bhT -biP -biP -bld -bmu -bnP -bpm -bqw -bfw -bZS -buk -buk -buk -buk -buk -buk -bwg -buk -bCk -bCk -bEr -bFj -bFY -bGF -cbp -bIe -bIe -bIe -cbp -bKQ -bGI -bDl -bFY -bNz -cco -ccC -aad -bCt -bCt -bCt -bCt -bCt -aaa -aac -aad -aad -aad -aac -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(145,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aad -ait -bWi -aiT -ald -ald -ait -ait -ait -aiu -ait -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aER -aFE -aGx -axz -aIt -aIt -aKT -aLW -aMX -aIt -aIt -aPO -aLY -aRV -aSX -aTX -aUM -aMZ -aWH -aIt -aDH -aDH -bau -bbg -bce -bcL -bdr -bdS -bcg -bfC -bgR -bhT -biP -bjS -bld -bmv -bnQ -bpm -bqx -bfw -bsV -buk -buX -buX -bxd -byi -bzp -bAl -buk -bCl -caz -bEs -bFl -bGb -bGd -bHq -bGH -bIK -bJq -bKa -bKM -bGI -bDl -bMO -bMP -ccp -bOC -bPg -bPy -bPX -bQv -bQx -bCt -aaa -aac -aaa -aaa -aaa -aac -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aab -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(146,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -ait -ait -ajy -ait -ait -ajy -ait -chk -ait -aor -ait -ait -ait -ait -aoP -atd -atd -aoP -awc -awc -aoP -azH -azH -aoP -aaa -aaa -aaa -aER -aFE -aGx -axz -aIt -aJw -aKU -aLX -aMY -aOe -aOY -aPP -aLY -aRV -aSX -aMX -aUN -aMa -aWI -aXG -aYw -aZw -bau -bbh -bcf -bcM -bds -bds -bds -bfF -bgS -bhU -biQ -biQ -ble -bmw -bnR -bpm -bZK -bZQ -bsW -buk -buX -buX -bxd -byi -bzp -bAl -buk -bCm -bDl -bGI -bFj -bFY -bGG -bGI -bGI -bIL -bGI -cbH -bKR -bGI -bDl -bLl -bGI -bOb -ccD -aad -bEA -bPY -bQw -bQQ -bCt -aaa -aac -aaa -aaa -aaa -aac -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(147,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aiu -aiS -aiT -akm -ale -alS -ait -bWq -aiU -aos -alh -alh -aqx -art -aoP -ate -auj -aoP -awd -axq -aoP -azI -aAV -aoP -aCN -aCN -aCN -aCN -aFE -aGy -aHs -aIt -aJx -aKV -aLY -aMZ -aOf -aOZ -aPQ -aQS -aRX -aSX -aIt -aUO -aVE -aWJ -aIt -aDH -aQj -bau -bbi -bYK -bcN -bdt -bZa -bZa -bfC -bgT -bhV -bgP -bgP -bgP -bmx -bnS -bpm -bqy -bfw -bsX -buk -buX -bwc -bxd -byi -bzp -bAl -buk -bCn -bDl -bGI -bFj -bFY -cbj -bHr -bGd -bIM -bGd -bKb -bKS -bGI -bLm -bEs -cce -bNZ -bOC -bPg -bPz -bPZ -bQx -bQx -bCt -aaa -aac -aaa -aaa -aaa -aac -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(148,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -bWd -aiT -ajz -akn -alf -alT -amx -chl -ait -akt -aoP -aoP -aqy -aru -aoP -atf -auk -aoP -awe -axr -aoP -azJ -aAW -aoP -aCO -aDt -aEk -aES -aFF -aGz -aHt -aIt -aJy -aKW -aLY -aNa -aOg -aIt -aPR -aQT -aRY -aSY -aIt -aUP -aVF -aWK -aIt -aIt -aQj -bau -bbj -bch -bcO -bdu -bdT -bdT -bfC -bgU -bhW -biR -bjT -blf -bmy -bnT -bpm -bZK -bfw -bsY -buk -buY -bwc -bxd -byi -bzp -bAm -buk -bCo -bDm -bEv -bFo -bFY -bGe -bGI -bIf -bIf -bIf -bKc -bKT -bGI -bDl -bGI -bGI -bOd -ccE -aad -bCt -bCt -bCt -bCt -bCt -aad -aac -aad -aad -aad -aac -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(149,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aiu -aiU -ajA -ako -alg -alU -ait -ait -ait -akt -aoP -apB -aqz -arv -asp -atg -aul -aoP -awf -axs -aoP -azK -aAX -aoP -aCP -aDu -aEl -aCN -aFE -aGx -axz -aIt -aJz -aKX -aLY -aMZ -aMZ -aMX -aPS -aQU -aRZ -aRZ -aRZ -aRZ -aVG -aMZ -aXH -aIt -bYm -bau -bbk -bci -bcP -bbk -bau -beI -bfC -bfC -bfC -beJ -bjU -bjU -bjU -bjU -bjU -bgL -bfw -bZT -buk -buZ -bwd -buZ -buZ -buZ -bAn -buk -bCp -bDl -bGI -bEw -caY -cbk -bHs -bHs -bHs -bGJ -bHs -bHs -bHs -bMi -bGI -bGI -bOe -ccE -aad -aaa -aaa -aaa -aaa -aaa -aaa -aac -aaa -aaa -aaa -aac -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(150,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -ait -aiV -ait -ait -ait -ait -ait -anj -anJ -bWs -aoP -apC -aqA -arw -aoP -aru -aum -aoP -aru -axt -aoP -aru -aAY -aoP -aCN -aCN -aCN -aCN -aFE -aGx -axz -aIt -aJA -aKY -aLZ -aNb -aOh -aPa -aPT -aQV -aSa -aMZ -aMZ -aMZ -aVH -aMZ -aXI -aIt -aQj -bau -bbl -bcj -bcO -bdv -bau -beJ -bfG -bgV -bhX -biS -bjV -blg -bmz -bnU -bpn -bqz -bfx -bsZ -bul -bva -bwe -bxe -byj -byj -bAo -bBo -bCq -bDl -bGI -bFq -bGf -bGK -bHt -bIg -bHt -bGK -bHt -bKU -bHt -bGK -bHt -bNA -cco -ccF -bCk -bCk -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aac -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(151,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -ait -ait -akp -alh -alh -alh -alh -alh -alh -aot -aoP -apD -aqB -arx -asq -ath -aun -avf -bWA -aun -ayO -awg -aun -ayO -aCQ -ayO -aEm -ayO -aun -aGA -axz -aIt -aJB -aKZ -aMa -aNc -aOi -aPb -aPU -aQW -aSb -aSZ -aTY -aUQ -aLY -aMZ -aXJ -aIt -bYm -bau -bau -bau -bcQ -bau -bau -beJ -bfG -bgW -bhY -biT -bjW -blh -bmA -bmA -bpo -bqA -bfw -bZU -buk -bvb -bwf -bxf -byk -bzq -bAp -buk -bCr -bDo -bEy -bFr -bLr -bGL -bHu -bFr -bIN -bJr -bKd -bFr -bGg -bMj -bMQ -bFr -bOg -bOD -bPh -bPA -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(152,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aiu -akq -ait -ait -ait -aiu -aiu -aiu -ait -aoP -apE -aqC -ary -aoP -ati -auo -avg -awh -axu -axu -azL -aAZ -aAZ -aCR -aAZ -aEn -aAZ -aAZ -aGB -aHr -aIt -aJC -aIt -aMb -aIt -aIt -aIt -aPL -aQX -aIt -aIt -aIt -aIt -aQQ -aWL -aIt -aIt -aZx -aYw -aYw -aYw -bcR -aLd -bdU -beJ -bfG -bgX -bfG -biU -bjX -bli -bmB -bnV -bpp -bqB -bfv -bta -buk -buk -bwg -bxg -buk -buk -buk -buk -bCk -caA -bHm -bNB -caZ -bDp -bEz -bFs -bEz -bJs -bEz -bKV -bLs -bMk -bLs -ccf -ccq -bCk -bCk -bCk -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(153,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -ait -akr -ait -aaa -aaa -aaa -aaa -aaa -aaa -aoP -aoP -aoP -aoP -aoP -atj -aup -avh -awi -axv -ayP -azM -aBa -aBW -aCS -aBW -aBW -aBW -aBW -aGC -aHu -aIt -aJD -aIt -aMc -aIt -aOj -aIu -aPV -aQY -aSc -aTa -aTZ -aUR -aVI -aPZ -aXK -aXK -aXK -aXK -aXK -aXK -aCd -bdw -bdV -beJ -bfH -bgY -bfG -biU -bjY -blj -blm -bnW -bjU -bgL -bfw -biJ -bum -bvc -bwh -bxh -byl -bzr -bAq -aad -aad -bDq -aad -bFt -aad -bDq -aad -bFt -aad -bDq -aad -bFt -aad -bDq -aad -bFt -aad -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(154,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -ajB -bWj -ali -aaa -aaa -aaa -amy -amy -amz -amy -apF -aoP -aoP -bWv -atm -bWx -avi -awj -axw -ayQ -atm -aBb -aBX -aBX -aBX -aBX -aBX -aFG -aGD -aHv -aIu -aJE -aIu -aIu -aIu -aIu -aIu -aPW -aQZ -aSd -aSd -aSd -aUS -aVJ -aVN -aXL -aYx -aZy -bav -bbm -aXK -aVO -aRi -bdW -beJ -bfI -bgZ -bfI -biU -bjZ -blk -blm -bnX -bjU -bgM -bZR -biJ -bfw -bvc -bZX -bxi -cah -bzs -bAq -aad -bCt -bDr -bEA -bDr -bCt -bDr -bEA -bDr -bCt -bDr -bEA -bDr -bCt -bDr -bEA -bDr -bCt -aad -aac -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(155,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -bWf -akt -alj -aaa -aaa -amy -amy -anK -aou -aoQ -apF -aER -aER -aER -atm -auq -avj -awk -axx -ayR -atm -aBc -aBX -aCT -aCT -bWS -aBX -aBX -aGE -aBX -aBX -aJF -aLa -aMd -aNd -aOk -aPc -aPX -aRa -aSe -aTb -aUa -aUT -aVK -aWM -aXM -aYy -aZz -baw -bbn -aXK -aVP -aCd -aVP -beJ -bfJ -bha -bhZ -biV -bka -bll -bmC -bnY -bjU -bfw -brN -bhO -bfv -bvd -bwi -bxj -bZV -bzt -bAq -aad -bCt -bDs -bEB -bFu -bCt -bGM -bHv -bIh -bCt -bJt -bKe -bKW -bCt -bMl -bMR -bNC -bCt -aaa -aac -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -bTk -bTk -bTk -bTk -bTk -bTk -bTk -aaa -aaa -aaa -aaa -aaa -bTk -bTk -bTk -bTk -bTk -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(156,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aab -aaa -aaa -aaa -aaa -aaa -aaa -aaa -bWf -aku -alj -aaa -aaa -amz -ank -anL -anL -anL -apG -aqD -arA -aqD -atm -auq -avk -awl -axy -awl -azN -aBd -aBY -aCU -aDv -aCW -aCW -aCW -aGF -aHw -aBX -aJG -aLb -aMe -aNe -aOl -aPd -aPY -aRb -aPZ -aPZ -aPZ -aUU -aVI -aWN -aXN -aYz -aZA -bax -bbo -aXK -aVP -aCd -bdX -beJ -beJ -beJ -beJ -beJ -bkb -blm -bmD -bnZ -bjU -bqC -brO -bZV -bun -bun -bwj -bxk -bym -bun -bAr -aad -bCt -bDt -bDu -bDu -bCt -bGN -bHw -bGN -bCt -bJu -bKf -bJu -bCt -bMm -bMS -bMm -bCt -aaa -aac -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -bTk -bTk -bTk -bTk -bTk -bTk -bTk -bTk -bTk -bTk -bTk -bTk -bTk -bTk -bTk -bTk -bTk -bTk -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(157,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -bWf -akt -alj -aaa -aaa -amy -amy -anM -aov -aoR -apF -bWu -arB -bWw -atn -auq -avl -awm -axz -atm -atm -aBe -aBX -aCV -aDw -aEo -aET -aFH -aGG -aCW -aBX -aJH -aLb -aMf -aLb -aOm -aPe -aPZ -aQY -aSf -aTc -aSf -aUV -aVI -aWO -aXO -aXO -aZB -aZB -aZB -aXO -bcS -aXO -aVP -beK -beJ -bhb -bia -biW -bkc -blm -bmE -boa -bpq -bmM -brP -bij -bun -bve -bwk -bxl -byn -bzu -bAr -aad -bCt -bDu -bEC -bDu -bCt -bGN -bHx -bGN -bCt -bJv -bKg -bJu -bCt -bMm -bMT -bMm -bCt -aaa -aac -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -bTk -bTk -bTk -bTk -bTk -bTk -bTk -bTk -bTD -bTk -bTk -bTk -bTk -bTk -bTk -bTD -bTk -bTk -bTk -bTk -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(158,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -ajD -akq -alk -aaa -aaa -aaa -amy -amy -amz -amy -apF -aoP -aoP -aoP -arD -aur -avm -awn -axA -avm -avm -arD -aBX -aBX -aDy -bWT -aBX -aBX -aBX -aHx -aBX -aJI -aLb -aMg -aNf -aIu -aIu -aQa -aRc -aSg -aPZ -aPZ -aPW -aVL -aWP -aXO -aYA -aZC -bay -bbp -bck -bcT -aXO -bdY -aYw -bfK -bhc -bib -biX -bkd -blm -bmF -bob -bjU -bqD -brQ -btb -bun -bvf -bwl -bxm -byo -bzv -bAr -aad -bCt -bCt -bCt -bCt -bCt -bCt -bCt -bCt -bCt -bCt -bCt -bCt -bCt -bCt -bCt -bCt -bCt -aad -aac -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -bTk -bTk -bTk -bTD -bTk -bTD -bTD -bTk -bTk -bTk -bTk -bTk -bTk -bTk -bTD -bTD -bTD -bTk -bTD -bTk -bTk -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(159,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -ait -bWk -ait -aaa -aaa -aaa -aaa -aaa -aaa -ait -ait -ait -arC -asr -arD -aus -avn -awo -axB -avn -azO -arD -aBZ -bWL -aDy -aCW -aEU -aFI -aBX -aHy -aBX -aJJ -aLc -aMg -aLb -aLc -aIu -aQb -aPe -aPZ -aPZ -aPZ -aUU -aVM -aWQ -aXP -aYB -aZD -baz -bbq -bcl -bcU -aXO -aVP -beJ -beJ -bhd -bic -biY -bke -bln -bmG -boc -bjU -bqE -brR -btc -bun -bvg -bwm -bxl -byp -bzw -bAr -aad -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aad -aaa -aaa -aaa -aad -aaa -aaa -aaa -aaa -aaa -aac -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -bTk -bTk -bTD -bTk -bTD -bTk -bTD -bTD -bTk -bTk -bTk -bTD -bTk -bTD -bTk -bTk -bTk -bTD -bTk -bTk -bTk -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(160,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aiu -bWj -ait -ait -ait -aiu -aiu -aiu -ait -ait -apH -aqE -aiU -aiU -arD -aut -avn -awo -axB -avn -azP -arD -aCa -aCX -aDz -aCW -aBX -aBX -aBX -aBX -aBX -aJK -aLb -aMh -aNg -aOn -aIu -aQc -aPe -aPZ -aPZ -aPZ -aUW -aVN -aVJ -aXQ -aYC -aZE -chp -bbr -baA -bcV -aXO -aVP -beL -bfL -bfG -bid -biZ -bkf -blo -bmH -bod -bjU -bqF -brS -btd -buo -bvh -bwn -bxn -byq -bzx -bAr -aad -aaa -aaa -aaa -aaa -aaa -aaa -aaa -agv -aac -aac -aac -aac -aac -aac -aac -aac -aac -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -bTk -bTk -bTk -bTD -bTD -bTD -bTk -bTD -bTD -bTk -bTk -bTk -bTD -bTD -bTD -bTD -bTk -bTk -bTk -bTD -bTk -bTk -bTk -bTk -bTk -bTk -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(161,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aiu -akw -alh -alh -alh -amA -alh -alh -alh -alh -alh -alh -alh -ass -arD -auu -avo -awp -axC -ayS -azQ -arD -aCb -aCY -aDy -aCW -aEV -bXe -aBX -aHz -aIv -aJL -bXo -aLb -aNh -aLc -aIu -aQd -aPe -aSh -aTd -aUb -aUX -aPZ -aWR -aXO -aYD -aZF -baB -bbs -bbs -bcW -aXO -aVP -beJ -beJ -beJ -bfN -bij -bij -bij -bij -bij -bij -bqG -brT -bij -bun -bvi -bwm -bxl -byr -bzy -bAr -can -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aad -aaa -aaa -aaa -aad -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -bTk -bTk -bTk -bTD -bTD -bTD -bTD -bTD -bTk -bTD -bTk -bTD -bTD -bTk -bTD -bTD -bTk -bTD -bTD -bTD -bTD -bTk -bTk -bTk -bTk -bTk -bTk -bTk -bTk -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(162,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -ait -ait -ait -ait -ait -aiu -aiu -aiu -ait -ait -ait -ani -ait -ast -arD -auv -avn -avn -avn -avn -azR -arD -aBX -aBX -aDA -aBX -aBX -aBX -aBX -aHA -aIu -aIu -aIu -aMi -aMi -aMi -aIu -aQe -aRd -aMi -aRd -aUc -aIu -aIu -aIu -aXO -aXO -aXO -aZB -bbt -aZB -aXO -aXO -bdZ -aRi -aRi -bhe -bfN -bja -bkg -blp -bmI -boe -bpr -bqH -brU -bte -bun -bvj -bwo -bxo -bys -cai -bzz -bAr -bAr -bAr -bED -bAr -aad -aad -aad -aaa -abu -aac -aac -aac -aaa -abu -aac -agv -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -bTk -bTk -bTk -bTD -bTk -bTD -bTD -bTk -bTD -bTk -bTD -bTD -bTk -bTk -bTk -bTD -bTk -bTD -bTD -bTD -bTk -bTk -bTD -bTk -bTD -bTk -bTk -bTk -bTk -bTk -bTk -bTk -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(163,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -ait -aos -alh -asu -arD -auw -avn -avn -avn -avn -azS -arD -aCc -aBX -aDB -aEp -aEW -aBX -aGH -aHB -aIw -aJM -aCd -aaa -aaa -aaa -aIu -aQf -aRe -aMi -aTe -aUd -aIu -aaa -aaa -aaa -aaa -aaa -aZB -bbu -aZB -aaa -bdx -aDH -aDH -bfM -bhf -bfN -bjb -bkh -blq -bmJ -bof -bps -bqI -brR -btf -bun -bvk -bwp -bxp -byt -bzA -bAs -bBp -bCu -bBp -bEE -bAr -bAr -bGO -aad -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -bTk -bTk -bTk -bTk -bTk -bTD -bTk -bTD -bTD -bTD -bTD -bTk -bTD -bTk -bTD -bTD -bTD -bTD -bMU -bTk -bTk -bTD -bTD -bTk -bTk -bTk -bTk -bTD -bTk -bTk -bTk -bTk -bTk -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(164,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -ait -akt -arD -arD -ato -ato -avp -ato -ato -avp -ato -ato -arD -arD -aDC -aEq -aEq -aFJ -aCe -aCe -aIx -aJN -aCd -aaa -aaa -aaa -aIu -aQe -aRd -aMi -aRd -aUc -aIu -aaa -aaa -aaa -aaa -aaa -aZB -bbt -aZB -aaa -bdx -aCd -aCd -aCd -bhg -bfN -bjc -bki -bkh -bmK -bog -bpt -bqJ -brV -btg -bun -bvl -bwq -bxq -byu -bzB -bAt -bBq -bCv -bDv -bEF -bFv -bGh -bGP -aad -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -bTk -bTk -bTD -bTk -bTk -bTk -bTk -bTD -bTD -bTk -bTk -bTk -bTD -bTD -bTD -bTD -bTk -bTD -bTD -bTk -bTk -bTk -bTD -bTk -bTk -bTk -bTD -bTk -bTk -bTk -bTD -bTQ -bTk -bTk -bTk -bTk -bTk -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(165,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aiu -akt -arD -asv -asv -asv -asv -asv -asv -asv -asv -asv -asv -arD -aBX -aBX -aBX -aBX -aCd -aCd -aIy -aGJ -aCd -aaa -aNi -aNi -aNi -aQg -aRf -aNi -aTf -aUe -aNi -aNi -aNi -aaa -aoz -aoz -aoA -bbv -aoA -aoz -aoz -aCd -aVO -aRi -bhh -bfN -bjd -bkj -blr -bmL -boh -bpu -bqK -brW -bth -bun -bvm -bwr -bxr -byv -bzC -bAu -bBr -bCw -bBr -bEG -bAr -bAr -bGO -aad -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -bTk -bTk -bTk -bTk -bTk -bTk -bTk -bTk -bTD -bTk -bTk -bTD -bTD -bTk -bTD -bTD -bTD -bTD -bTD -bTD -bTk -bTk -bTD -bTk -bTD -bTD -bTD -bTk -bTD -bTk -bTD -bTD -bTD -bTD -bTk -bTk -bTk -bTk -bTk -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(166,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aiu -akt -arD -asv -asv -asv -asv -asv -asv -asv -asv -asv -asv -arD -aDD -aEr -aEX -aCd -aGI -aHC -aHC -aJO -aCd -aMj -aNi -aNi -aOo -aOo -aOo -aSi -aOo -aOo -aOo -aOo -aNi -aaa -aoz -aZG -arH -arH -baC -atq -aoz -aCd -aVP -bfN -bfN -bfN -bfN -bfN -bij -bmM -boi -bpv -bqL -bmM -bij -bun -bun -bun -bun -byw -bzD -bun -bAr -bAr -bAr -bAr -bAr -bAr -agP -agP -bIi -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -bTl -bTk -bTk -bTk -bTk -bTD -bTk -bTk -bTk -bTk -bTD -bTD -bTk -bTk -bTD -bTD -bTD -bTk -bTk -bTk -bTk -bTD -bTD -bTD -bTD -bTD -bTk -bTD -bTD -bTD -bTk -bTD -bTD -bTQ -bTk -bTk -bTk -bTk -bTk -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(167,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -ait -aqF -arD -asv -asv -asv -asv -asv -asv -asv -asv -asv -asv -arD -aDE -aEs -aEY -aCd -bXg -aCd -aIz -aIz -aCd -aMj -aNj -aOo -aOo -aOo -aOo -aOo -aOo -aOo -aOo -aOo -aNi -aaa -aoA -aZH -baC -arH -baC -bcX -bdy -aCd -aVP -bfN -bhi -bie -bhi -bfN -bls -bmN -boj -bpu -bqM -brX -bti -bup -bhi -bhi -bxs -byx -bzE -bAv -bBs -bBs -bDw -bEH -bFw -bGi -bGQ -bGQ -bIj -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aad -aad -bTl -bTl -bTn -bTn -bTn -bTk -bTk -bTD -bTk -bTk -bTD -bTD -bTk -bTk -bTD -bTD -bTD -bTk -bTk -bTD -bTD -bTD -bTD -bTD -bTD -bTD -bTD -bTD -bTD -bTk -bTD -bTD -bTk -bTk -bTk -bTk -bTk -bTD -bTk -bTk -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(168,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aiu -akt -arD -asv -asv -asv -asv -asv -asv -asv -asv -asv -asv -arD -aDF -aEt -aDH -aFK -aGJ -aHD -aIA -aJP -aCd -aMj -aNj -aOo -aOo -aOo -aOo -aOo -aOo -aOo -aOo -aOo -aNi -aaa -aoz -aZG -arH -arH -baC -bcY -aoz -aCd -aVP -bfN -bhi -bhi -bhi -bkk -blt -bmO -boj -bZI -bqM -brY -btj -bhi -bvn -bws -bxs -byy -bzF -bAw -bzG -bCx -bxs -bEI -bxu -bxu -agP -agP -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aad -agP -bTm -bTt -bTz -bTn -bTn -bTn -bTk -bTk -bTD -bTD -bTD -bTD -bTk -bTk -bTD -bTD -bTD -bTk -bTD -bTD -bTD -bTk -bTk -bTD -bTD -bTk -bTD -bTD -bTD -bTD -bTD -bTk -bTD -bTk -bTk -bTk -bTk -bTk -bTk -bTk -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(169,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aiu -akt -arD -asv -asv -asv -asv -asv -asv -asv -asv -asv -asv -arD -aDG -aEu -aEu -aCd -bXh -aDH -aDH -aCd -aCd -aMj -aNj -aOo -aOo -aOo -aOo -aOo -aOo -aOo -aOo -aOo -aNi -aaa -aoz -aoz -aoA -bbw -aoA -aoz -aoz -aCd -beM -bfN -bhi -bhi -bii -bhi -blu -bmP -boj -bpw -bqN -brZ -btk -bhi -bhi -bhi -bxs -byz -bzG -bAx -bzG -bCy -bxs -bxu -bxu -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -agP -bTn -bTn -bTn -bTn -bTn -bTn -bTn -bTD -bTD -bTD -bTD -bTk -bTk -bTD -bTD -bTD -bTk -bTD -bTk -bTD -bTD -bTD -bTk -bTD -bTD -bTD -bTD -bTD -bTD -bTD -bTk -bTD -bTD -bTk -bTk -bTk -bTn -bTk -bTk -bTk -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(170,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -ait -akt -arD -arD -ato -ato -avp -ato -ato -avp -ato -ato -arD -arD -aCd -aCd -aCd -aCd -aGK -aHE -aDH -aJR -aCd -aMj -aNi -aNi -aOo -aOo -aOo -aOo -aOo -aOo -aOo -aOo -aNi -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aCd -aVP -bfO -bhj -bif -bhi -bhi -blv -bmQ -boj -bpx -bqO -bsa -bsa -bsa -bsa -bsa -bxt -byA -bzH -bAy -bBt -bCz -bDx -bEJ -aaa -aaa -aaa -aad -aaa -aaa -aaa -aad -aaa -aaa -aaa -aad -aaa -aaa -aaa -aad -aaa -aaa -aaa -aad -aaa -aaa -aaa -aad -aaa -aaa -aaa -aad -agP -bTn -bTn -bTn -bTE -bTn -bTF -bTn -bTD -bTD -bTD -bTD -bTk -bTD -bTD -bTD -bTk -bTD -bTD -bTk -bTk -bTD -bTD -bTQ -bTQ -bTQ -bTD -bTD -bTD -bTD -bTk -bTD -bTk -bTD -bTD -bTk -bTn -bVl -bVq -bTk -bTk -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(171,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -ait -akt -arE -ait -arD -aux -avq -awq -axD -ayT -azT -arD -aCd -aCZ -aDH -aDH -aDH -aDH -aGJ -aDH -aDH -aDH -aCd -aaa -aNi -aNi -aNi -aNi -aNi -aNi -aNi -aNi -aNi -aNi -aNi -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aCd -beN -bfP -bhi -bhi -bhi -bkl -blw -bmR -boj -bpy -bqP -brX -btl -bup -bhi -bhi -bxs -byB -bzI -bzI -bzI -bzI -bDy -bxu -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -agP -bTn -bTn -bTn -bTn -bTn -bTn -bTn -bTk -bTD -bTD -bTk -bTD -bTD -bTD -bTD -bTk -bTD -bTD -bTk -bTk -bTD -bTD -bTk -bTk -bTD -bTD -bTD -bTD -bTD -bTD -bTk -bTk -bTD -bTk -bTk -bTk -bTn -bTk -bTk -bTk -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(172,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -ait -aqG -alh -alh -atp -auy -avr -awr -axE -ayU -azU -aBf -aCe -aCe -aCe -aCe -aCe -aCe -aGL -aHC -aHC -aJS -aCd -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aCd -aCd -aCd -aEw -aEw -aCd -aEw -aCd -aVP -bfP -bhi -bhi -bhi -bkk -blx -bmS -boj -bpz -bqM -bsb -btm -bhi -bvn -bws -bxs -byC -bzI -bAz -bzG -bzG -bDz -bBx -aad -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aad -agP -bTm -bTn -bTn -bTz -bTn -bTn -bTk -bTk -bTD -bTk -bTD -bTD -bTD -bTD -bTk -bTD -bTD -bTD -bTk -bTD -bTD -bTk -bTD -bTD -bTD -bTk -bTk -bTD -bTD -bTk -bTk -bTD -bTk -bTD -bTk -bTk -bTk -bTk -bTk -bTk -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(173,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -ait -aiu -ait -ait -arD -arD -ato -ato -ato -ato -arD -arD -aCd -aCd -aCd -aCd -aUh -aCd -aCd -aFL -aCd -aGJ -aCd -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aEw -aZI -baD -aRi -aRi -bcZ -aRi -aRi -beO -bfP -bhi -big -bhi -bfN -bly -bmT -bok -bpA -bqN -bsc -btn -bhi -bhi -bhi -bxs -byD -bzG -bAA -bBu -bCA -bDA -bBx -aad -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aad -aad -bTl -bTl -bTn -bTn -bTn -bTk -bTD -bTD -bTk -bTD -bTD -bTD -bTD -bTk -bTD -bTD -bTD -bTk -bTk -bTD -bTD -bTD -bTD -bTD -bTD -bTD -bTD -bTD -bTD -bTD -bTk -bTD -bTk -bTk -bTk -bTk -bTk -bTk -bTk -bTk -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(174,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -bdx -aad -aad -aaa -aaa -aaa -aaa -aad -aad -aCd -bWM -bWQ -aRh -aDH -aRh -aDH -aDH -aCd -aGJ -aCd -aCd -aEw -aEw -aEw -aEw -aCd -aCd -aEw -aEw -aCd -aEw -aEw -aCd -aCd -aVP -baE -aDH -aRh -bda -aCd -aIz -beP -bfQ -bhk -bhk -bhk -bhk -blz -bmU -bol -bpz -bqM -bij -bij -bij -bij -bij -bxs -byE -bzK -bxs -bBv -bCB -bDB -bxu -aad -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -bTl -bTk -bTk -bTk -bTk -bTk -bTk -bTD -bTk -bTD -bTk -bTk -bTD -bTD -bTD -bTD -bTD -bTk -bTk -bTD -bTD -bTD -bTk -bTk -bTk -bTD -bTD -bTD -bTD -bTk -bTD -bTk -bTk -bTk -bTk -bTk -bTk -bTD -bTk -bTk -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aab -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(175,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aad -aaa -aaa -aaa -aad -aad -aad -aCd -bWN -aCd -bbz -aCd -aFL -aCd -aCd -aCd -aJT -aLd -aLd -aLd -aLd -aLd -aQh -aRg -aCd -aTg -aUf -aCd -aVO -aRi -aRi -aYE -aVQ -aDH -bbx -aDH -bda -aCd -bea -beQ -bfR -bfN -bhi -bhi -bkl -blA -bmV -bom -bpz -bqM -brX -bto -bup -bhi -bhi -bxs -byF -bzL -bAC -bBw -bCC -bDC -bxu -aad -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -bTk -bTk -bTk -bTk -bTk -bTD -bTD -bTk -bTD -bTk -bTk -bTD -bTD -bTk -bTD -bTk -bTk -bTk -bTD -bTk -bTD -bTk -bTk -bTk -bTD -bTk -bTD -bTD -bTk -bTk -bTk -bTk -bTk -bTD -bTk -bTk -bTk -bTk -bTk -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(176,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aad -aaa -aEw -aDH -aCd -aCd -aCd -aEv -bXi -aFM -aCd -aJU -aLe -aMk -aNk -aOp -aPf -aQi -aRh -aCd -aTh -aDH -aCd -aVP -aRh -aDH -aYF -aDH -baF -bby -bcm -bda -aCd -beb -beR -bfS -bfN -bih -bje -bhi -blB -bmW -bom -bpz -bqM -bsd -btp -bhi -bje -bws -bxu -byG -bxu -bxu -bBx -bxu -bBx -bxu -aad -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -bTk -bTk -bTk -bTk -bTk -bTk -bTD -bTD -bTk -bTk -bTD -bTk -bTD -bTD -bTD -bTQ -bTD -bTD -bTk -bTk -bTk -bTD -bTD -bTk -bTk -bTD -bTk -bTk -bTk -bTk -bTk -bTk -bTk -bTk -bTk -bTk -bTk -bTk -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(177,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aad -aad -aCd -bWO -aCd -aaa -aCd -aEw -aCd -aCd -aIB -aIB -aIB -aIB -aNl -aOq -aIB -aQj -aDH -aDH -aDH -bXy -aCd -aVP -aWS -aWS -aYG -aWS -aWS -aCd -aCd -bdb -aCd -bec -beS -aDH -bfN -bii -bhi -bhi -blC -bmX -bon -bpB -bqN -bse -btq -bhi -bhi -bhi -bfN -byH -btw -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -bTk -bTk -bTk -bTD -bTD -bTD -bTD -bTD -bTD -bTk -bTk -bTD -bTD -bTk -bTD -bTD -bTk -bTk -bTk -bTD -bTD -bTk -bTk -bTD -bTD -bTk -bTk -bTD -bTk -bTk -bTk -bTk -bTk -bTk -bTk -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(178,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aad -agP -agP -agP -aaa -aaa -aaa -aaa -aaa -aIC -aIC -aLf -aMl -aNm -aOr -aIB -aQj -aDH -aCd -aCd -aCd -aCd -aVP -aWS -aXR -aYH -aZJ -aWS -bYx -aDH -bda -aCd -aCd -beS -aHE -bfN -bij -bij -bij -bij -bij -boo -bpC -bqQ -bij -bij -bij -bij -bij -bfN -byI -btw -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -bTk -bTk -bTk -bTk -bTk -bTk -bTD -bTD -bTS -bTD -bTD -bTk -bTk -bTD -bTk -bTk -bTD -bTk -bTk -bTk -bTk -bTD -bTk -bTk -bTk -bTk -bTk -bTk -bTk -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(179,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aIB -aIB -aLg -aMm -aNn -aOs -aIB -aQk -aRi -aSj -aRi -aRi -aRi -aVQ -aWS -aXS -aYI -aZK -aWS -bbA -bcn -bdc -aLd -aLd -beT -bfT -bfN -bhi -bhi -bkl -blD -bmV -bom -bpz -bqM -brX -btr -bup -bhi -bhi -bfN -byH -btw -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -bTk -bTk -bTk -bTD -bTk -bTD -bTk -bTD -bTD -bTk -bTk -bTk -bTk -bTk -bTk -bTk -bTk -bTk -bTk -bTk -bTk -bTk -bTk -bTk -bTk -bTk -bTk -bTk -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(180,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aIB -aJV -aLh -aMm -aNn -aOt -aIB -aQl -aCd -aCd -aCd -aCd -bXE -aCd -aWS -aXT -aYJ -aZL -aWS -aCd -aEw -aEw -aCd -aCd -aCd -bfU -bfN -bih -bje -bhi -blE -bmY -bom -bpz -bqM -bsf -bts -bhi -bje -bws -bfN -byJ -btw -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -bTk -bTk -bTk -bTk -bTk -bTk -bTk -bTk -bTk -bTk -bTk -bTk -bTk -bTk -bTk -bTk -bTk -bTk -bTk -bTk -bTk -bTk -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(181,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aID -aJW -aLi -aMm -aNo -aOu -aPg -aQm -aCd -bXv -aDH -aDH -aDH -aCd -aWT -aWT -aYK -aWT -aWT -aad -aad -aad -aCd -bZb -aCd -bfV -bfN -bhi -bhi -bhi -blF -bmZ -bop -bpD -bqN -bsg -btt -bhi -bhi -bhi -bfN -byH -btw -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -bTk -bTk -bTk -bTk -bTk -bTk -bTk -bTk -bTk -bTk -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(182,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aID -aJX -aLj -aMm -aNp -aOv -aPh -aQn -aCd -aCd -aUh -aCd -aCd -aCd -aad -aXU -aYL -aWT -aaa -aaa -aaa -aaa -aCd -aDH -aIy -bfV -bfN -bfN -bfN -bfN -bfN -bfN -bfN -bpE -bqR -bfN -bfN -bfN -bfN -bfN -bfN -byK -btw -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(183,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aab -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aIB -aJY -aLk -aMn -aNq -aOw -aPi -aQo -aCd -aSk -aDH -aDH -aUY -aCd -aad -aWT -aYM -aWT -aaa -aaa -aaa -aCd -aCd -aDH -aCd -bfV -aDH -bik -bjf -bkm -aJR -bij -boq -bpF -bqS -bij -btu -buq -buq -buq -bxv -btv -btw -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(184,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aIB -aIB -aID -aIB -aID -aIB -aIB -aIB -aCd -aSl -aDH -aUi -aUZ -aCd -aaa -aaa -aYN -aaa -aaa -aaa -aaa -aCd -aDH -bYl -aDH -bfW -bhl -bhl -bhl -bhl -blG -bna -bor -bpG -bqT -bsh -btv -btw -btw -bwt -bwt -btw -btw -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(185,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aad -aad -aad -aaa -aaa -aad -aad -aad -aEw -bXw -aDH -aUi -aVa -aCd -aaa -aaa -aYN -aaa -aaa -aaa -aCd -aCd -bYl -aCd -aCd -aCd -aUh -aCd -aCd -aCd -aHA -bij -bos -bpH -bos -bij -btw -btw -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(186,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aad -aCd -aCd -aEw -aEw -aEw -aCd -aaa -aaa -aYN -aaa -aaa -aaa -aEw -bYO -bYR -bZc -aCd -bfX -aDH -bil -bjg -aCd -aHA -bij -bot -bot -bot -bsi -agv -aad -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(187,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aYN -aaa -aaa -aaa -aEw -bYP -bYS -bZd -aCd -bfY -bhm -bim -bjh -aCd -blH -bij -bou -bpI -bot -bsi -agv -aad -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(188,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aYN -aaa -aaa -aaa -aCd -aCd -aCd -aEw -aCd -bfZ -bcn -bin -bji -aCd -aHA -bij -bij -bij -bij -bij -bdx -bdx -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(189,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aYN -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aCd -aEw -aEw -aEw -aEw -aCd -aHB -aIw -aIw -aIw -bqU -aCd -aad -aad -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aab -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(190,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aYN -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aad -aCd -aEw -bnb -bov -aEw -bqV -aCd -aad -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -bSj -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(191,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aYN -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aad -aad -aEw -aEw -aEw -aEw -bqW -aad -aad -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(192,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aYN -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(193,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aac -adf -aac -aac -aac -aaa -aab -aaa -aaa -aaa -aaa -aYO -aaa -aaa -aaa -aaa -aaa -aaa -aac -aac -aac -aad -aac -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(194,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aac -aaa -aaa -aaa -aad -aaa -aaa -aaa -aaa -aaa -aaa -aYP -aaa -aaa -aaa -aaa -aaa -aaa -aad -aaa -aaa -aaa -aac -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(195,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aac -aaa -aQp -aQp -aQp -aQp -aQp -aQp -aQp -aQp -aaa -aYP -aaa -aQp -aQp -aQp -aQp -aQp -aQp -aQp -aQp -aaa -aac -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aab -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(196,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aac -aad -aoT -apI -apI -apI -apI -apI -apI -apI -aws -aYP -ayV -azV -azV -azV -azV -azV -azV -azV -aFN -aad -aac -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(197,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aac -aaa -aQq -aQq -aQq -aQq -aQq -aQq -aQq -aWU -aaa -aYP -aaa -aQq -aQq -aQq -aQq -aQq -aQq -aQq -aWU -aaa -aac -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(198,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -adf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aYP -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -adf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(199,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aac -aaa -aQp -aQp -aQp -aQp -aQp -aQp -aQp -aQp -aaa -aYP -aaa -aQp -aQp -aQp -aQp -aQp -aQp -aQp -aQp -aaa -aac -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(200,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -all -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aac -aad -aoT -apI -apI -apI -apI -apI -apI -apI -aws -aYP -ayV -azV -azV -azV -azV -azV -azV -azV -aFN -aad -aac -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(201,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aac -aaa -aQq -aQq -aQq -aQq -aQq -aQq -aQq -aWU -aaa -aYP -aaa -aQq -aQq -aQq -aQq -aQq -aQq -aQq -aWU -aaa -aac -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(202,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aac -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aYP -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aac -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(203,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aac -aaa -aQp -aQp -aQp -aQp -aQp -aQp -aQp -aQp -aaa -aYP -aaa -aQp -aQp -aQp -aQp -aQp -aQp -aQp -aQp -aaa -aac -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(204,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aac -aad -aoT -apI -apI -apI -apI -apI -apI -apI -aws -aYP -ayV -azV -azV -azV -azV -azV -azV -azV -aFN -aad -aac -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(205,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aac -aaa -aQq -aQq -aQq -aQq -aQq -aQq -aQq -aWU -aaa -aYP -aaa -aQq -aQq -aQq -aQq -aQq -aQq -aQq -aWU -aaa -adf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(206,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -adf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aYP -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aac -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(207,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aac -aaa -aQp -aQp -aQp -aQp -aQp -aQp -aQp -aQp -aaa -aYP -aaa -aQp -aQp -aQp -aQp -aQp -aQp -aQp -aQp -aaa -aac -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(208,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aac -aad -aoT -apI -apI -apI -apI -apI -apI -apI -aws -axI -ayV -azV -azV -azV -azV -azV -azV -azV -aFN -aad -aac -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(209,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aac -aaa -aQq -aQq -aQq -aQq -aQq -aQq -aQq -aWU -aaa -aYQ -aaa -aQq -aQq -aQq -aQq -aQq -aQq -aQq -aWU -aaa -aac -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(210,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aad -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aYN -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aad -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(211,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -adf -aac -aac -aac -aac -aac -aac -aac -aac -aac -aaa -aYN -aaa -aac -aac -aac -aac -aac -aac -aac -aac -aac -aac -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(212,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aad -aad -aYR -aad -aad -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(213,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aac -aaa -aad -aaa -aac -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(214,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aac -aac -aac -aac -aac -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(215,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(216,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(217,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(218,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(219,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(220,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(221,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(222,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(223,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(224,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(225,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(226,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(227,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(228,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(229,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(230,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(231,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(232,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(233,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(234,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(235,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(236,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(237,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(238,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(239,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(240,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(241,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(242,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(243,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(244,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(245,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(246,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(247,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(248,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(249,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(250,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(251,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(252,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(253,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(254,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(255,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} diff --git a/_maps/map_files/PubbyStation/areas.dm b/_maps/map_files/PubbyStation/areas.dm deleted file mode 100644 index e15bc87193..0000000000 --- a/_maps/map_files/PubbyStation/areas.dm +++ /dev/null @@ -1,7 +0,0 @@ -/area/chapel/asteroid - name = "Chapel Asteroid" - icon_state = "explored" - -/area/chapel/dock - name = "Chapel Dock" - icon_state = "construction" diff --git a/_maps/map_files/PubbyStation/job/job_changes.dm b/_maps/map_files/PubbyStation/job/job_changes.dm deleted file mode 100644 index 232f127f2d..0000000000 --- a/_maps/map_files/PubbyStation/job/job_changes.dm +++ /dev/null @@ -1,20 +0,0 @@ -/datum/job/assistant -/datum/job/captain -/datum/job/hop - -/datum/job/hos/New() - ..() - access += access_crematorium - minimal_access += access_crematorium - -/datum/job/warden/New() - ..() - access += access_crematorium - minimal_access += access_crematorium - -/datum/job/officer/New() - ..() - access += access_crematorium - minimal_access += access_crematorium - -/datum/job/detective diff --git a/_maps/map_files/PubbyStation/job/removed_jobs.dm b/_maps/map_files/PubbyStation/job/removed_jobs.dm deleted file mode 100644 index aea9363737..0000000000 --- a/_maps/map_files/PubbyStation/job/removed_jobs.dm +++ /dev/null @@ -1,5 +0,0 @@ -/datum/job/librarian/config_check() - return 0 - -/datum/job/lawyer/config_check() - return 0 diff --git a/_maps/map_files/PubbyStation/monastery_shuttle.dm b/_maps/map_files/PubbyStation/monastery_shuttle.dm deleted file mode 100644 index 503a26abb6..0000000000 --- a/_maps/map_files/PubbyStation/monastery_shuttle.dm +++ /dev/null @@ -1,11 +0,0 @@ -/obj/machinery/computer/shuttle/monastery_shuttle - name = "monastery shuttle console" - desc = "Used to control the monastery shuttle." - circuit = /obj/item/weapon/circuitboard/computer/shuttle/monastery_shuttle - shuttleId = "pod1" - possible_destinations = "monastery_shuttle_asteroid;monastery_shuttle_station" - no_destination_swap = TRUE - -/obj/item/weapon/circuitboard/computer/shuttle/monastery_shuttle - name = "circuit board (Monastery Shuttle)" - build_path = /obj/machinery/computer/shuttle/monastery_shuttle diff --git a/_maps/map_files/TgStation/tgstation.2.1.3.dmm b/_maps/map_files/TgStation/tgstation.2.1.3.dmm index 906e266805..4459044c16 100644 --- a/_maps/map_files/TgStation/tgstation.2.1.3.dmm +++ b/_maps/map_files/TgStation/tgstation.2.1.3.dmm @@ -1,126237 +1,7142 @@ -//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE -"aaa" = ( -/turf/open/space, -/area/space) -"aab" = ( -/obj/docking_port/stationary{ - dheight = 9; - dir = 2; - dwidth = 5; - height = 24; - id = "syndicate_n"; - name = "north of station"; - turf_type = /turf/open/space; - width = 18 - }, -/turf/open/space, -/area/space) -"aac" = ( -/turf/closed/wall/mineral/plastitanium, -/area/shuttle/syndicate) -"aad" = ( -/turf/closed/wall/shuttle{ - icon_state = "wall3" - }, -/area/shuttle/syndicate) -"aae" = ( -/obj/effect/landmark{ - name = "carpspawn" - }, -/turf/open/space, -/area/space) -"aaf" = ( -/obj/structure/lattice, -/turf/open/space, -/area/space) -"aag" = ( -/obj/structure/lattice/catwalk, -/turf/open/space, -/area/space) -"aah" = ( -/obj/structure/sign/securearea{ - pixel_y = -32 - }, -/turf/open/space, -/area/space) -"aai" = ( -/turf/closed/wall/r_wall, -/area/security/prison) -"aaj" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/closed/wall/r_wall, -/area/security/prison) -"aak" = ( -/obj/structure/grille, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/prison) -"aal" = ( -/obj/structure/grille, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/prison) -"aam" = ( -/obj/structure/grille, -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/prison) -"aan" = ( -/obj/machinery/hydroponics/soil, -/obj/item/seeds/ambrosia, -/turf/open/floor/plasteel/green/side{ - dir = 9 - }, -/area/security/prison) -"aao" = ( -/obj/machinery/airalarm{ - pixel_y = 23 - }, -/turf/open/floor/plating, -/area/security/prison) -"aap" = ( -/obj/machinery/hydroponics/soil, -/obj/item/seeds/carrot, -/turf/open/floor/plasteel/green/side{ - dir = 1 - }, -/area/security/prison) -"aaq" = ( -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'HIGH VOLTAGE'"; - icon_state = "shock"; - name = "HIGH VOLTAGE"; - pixel_y = 32 - }, -/obj/machinery/hydroponics/soil, -/obj/item/device/plant_analyzer, -/obj/machinery/camera{ - c_tag = "Prison Common Room"; - network = list("SS13","Prison") - }, -/turf/open/floor/plasteel/green/side{ - dir = 5 - }, -/area/security/prison) -"aar" = ( -/obj/machinery/hydroponics/soil, -/obj/item/seeds/glowshroom, -/turf/open/floor/plasteel/green/side{ - dir = 1 - }, -/area/security/prison) -"aas" = ( -/obj/structure/sink{ - pixel_y = 20 - }, -/turf/open/floor/plating, -/area/security/prison) -"aat" = ( -/turf/open/floor/plasteel/floorgrime, -/area/security/prison) -"aau" = ( -/obj/machinery/biogenerator, -/turf/open/floor/plasteel/floorgrime, -/area/security/prison) -"aav" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/floorgrime, -/area/security/prison) -"aaw" = ( -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/turf/open/floor/plating, -/area/security/prison) -"aax" = ( -/mob/living/simple_animal/mouse/brown/Tom, -/turf/open/floor/plating, -/area/security/prison) -"aay" = ( -/turf/open/floor/plating, -/area/security/prison) -"aaz" = ( -/obj/item/weapon/reagent_containers/glass/bucket, -/turf/open/floor/plating, -/area/security/prison) -"aaA" = ( -/obj/machinery/seed_extractor, -/turf/open/floor/plasteel/floorgrime, -/area/security/prison) -"aaB" = ( -/obj/structure/window/reinforced, -/obj/machinery/hydroponics/soil, -/obj/item/seeds/potato, -/turf/open/floor/plasteel/green/side{ - dir = 10 - }, -/area/security/prison) -"aaC" = ( -/obj/structure/window/reinforced, -/turf/open/floor/plating, -/area/security/prison) -"aaD" = ( -/obj/structure/window/reinforced, -/obj/machinery/hydroponics/soil, -/obj/item/seeds/grass, -/turf/open/floor/plasteel/green/side{ - dir = 2 - }, -/area/security/prison) -"aaE" = ( -/obj/structure/window/reinforced, -/obj/machinery/hydroponics/soil, -/obj/item/weapon/cultivator, -/turf/open/floor/plasteel/green/side{ - dir = 6 - }, -/area/security/prison) -"aaF" = ( -/obj/structure/window/reinforced, -/obj/machinery/hydroponics/soil, -/obj/item/weapon/cultivator, -/turf/open/floor/plasteel/green/side{ - dir = 2 - }, -/area/security/prison) -"aaG" = ( -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/turf/open/floor/plasteel/floorgrime, -/area/security/prison) -"aaH" = ( -/turf/open/floor/plating/airless, -/area/space/nearstation) -"aaI" = ( -/obj/structure/bookcase, -/turf/open/floor/plasteel/floorgrime, -/area/security/prison) -"aaJ" = ( -/obj/structure/chair/stool, -/turf/open/floor/plasteel/floorgrime, -/area/security/prison) -"aaK" = ( -/obj/machinery/washing_machine, -/obj/structure/window/reinforced{ - dir = 1 - }, -/turf/open/floor/plasteel/barber, -/area/security/prison) -"aaL" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/window/reinforced{ - dir = 1 - }, -/turf/open/floor/plasteel/barber, -/area/security/prison) -"aaM" = ( -/obj/machinery/computer/libraryconsole/bookmanagement{ - pixel_y = 0 - }, -/obj/structure/table, -/obj/machinery/newscaster{ - pixel_x = -32; - pixel_y = 0 - }, -/turf/open/floor/plasteel/floorgrime, -/area/security/prison) -"aaN" = ( -/obj/structure/table, -/obj/item/weapon/pen, -/turf/open/floor/plasteel, -/area/security/prison) -"aaO" = ( -/obj/structure/table, -/obj/item/weapon/storage/pill_bottle/dice, -/turf/open/floor/plasteel, -/area/security/prison) -"aaP" = ( -/obj/structure/table, -/obj/structure/bedsheetbin, -/turf/open/floor/plasteel/barber, -/area/security/prison) -"aaQ" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/barber, -/area/security/prison) -"aaR" = ( -/obj/structure/lattice, -/obj/structure/sign/securearea{ - pixel_y = -32 - }, -/turf/open/space, -/area/space) -"aaS" = ( -/obj/structure/grille, -/obj/structure/lattice, -/turf/open/space, -/area/space) -"aaT" = ( -/obj/structure/lattice, -/obj/structure/grille, -/turf/open/space, -/area/space) -"aaU" = ( -/obj/machinery/computer/arcade, -/turf/open/floor/plasteel/floorgrime, -/area/security/prison) -"aaV" = ( -/obj/structure/table, -/obj/item/weapon/paper_bin{ - pixel_x = -3; - pixel_y = 7 - }, -/obj/item/weapon/pen, -/turf/open/floor/plasteel, -/area/security/prison) -"aaW" = ( -/obj/structure/table, -/obj/item/toy/cards/deck, -/turf/open/floor/plasteel, -/area/security/prison) -"aaX" = ( -/obj/machinery/washing_machine, -/obj/structure/window/reinforced, -/turf/open/floor/plasteel/barber, -/area/security/prison) -"aaY" = ( -/obj/structure/window/reinforced, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/barber, -/area/security/prison) -"aaZ" = ( -/turf/closed/wall/r_wall, -/area/ai_monitored/security/armory) -"aba" = ( -/obj/structure/lattice, -/obj/structure/grille/broken, -/turf/open/space, -/area/space) -"abb" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 6 - }, -/turf/closed/wall, -/area/security/transfer) -"abc" = ( -/turf/closed/wall, -/area/security/transfer) -"abd" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 1 - }, -/turf/closed/wall, -/area/security/transfer) -"abe" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/security/transfer) -"abf" = ( -/obj/machinery/vending/sustenance, -/turf/open/floor/plasteel/floorgrime, -/area/security/prison) -"abg" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 10 - }, -/turf/closed/wall/r_wall, -/area/security/transfer) -"abh" = ( -/obj/machinery/holopad, -/turf/open/floor/plasteel/floorgrime, -/area/security/prison) -"abi" = ( -/obj/machinery/shower{ - dir = 8 - }, -/obj/item/weapon/soap/nanotrasen, -/turf/open/floor/plasteel/freezer, -/area/security/prison) -"abj" = ( -/obj/machinery/light/small{ - dir = 1 - }, -/obj/structure/window/reinforced{ - dir = 8 - }, -/turf/open/floor/plasteel/freezer, -/area/security/prison) -"abk" = ( -/obj/machinery/keycard_auth{ - pixel_x = 24; - pixel_y = 10 - }, -/obj/structure/table/wood, -/obj/item/device/radio/off, -/obj/item/device/taperecorder{ - pixel_y = 0 - }, -/turf/open/floor/carpet, -/area/security/hos) -"abl" = ( -/obj/machinery/vending/security, -/turf/open/floor/plasteel/showroomfloor, -/area/security/main) -"abm" = ( -/obj/structure/table, -/obj/item/weapon/storage/box/firingpins, -/obj/item/weapon/storage/box/firingpins, -/obj/item/key/security, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/ai_monitored/security/armory) -"abn" = ( -/obj/structure/rack, -/obj/machinery/firealarm{ - pixel_y = 24 - }, -/obj/item/weapon/gun/energy/e_gun/dragnet, -/obj/item/weapon/gun/energy/e_gun/dragnet, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/ai_monitored/security/armory) -"abo" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/main) -"abp" = ( -/turf/closed/wall, -/area/security/main) -"abq" = ( -/turf/closed/wall, -/area/security/hos) -"abr" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/hos) -"abs" = ( -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/obj/machinery/power/tracker, -/turf/open/floor/plasteel/airless/solarpanel, -/area/solar/auxport) -"abt" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/darkwarning{ - dir = 9 - }, -/area/security/transfer) -"abu" = ( -/obj/machinery/door/poddoor{ - id = "executionspaceblast"; - name = "blast door" - }, -/turf/open/floor/plating, -/area/security/transfer) -"abv" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/darkwarning{ - dir = 5 - }, -/area/security/transfer) -"abw" = ( -/obj/machinery/light/small{ - dir = 1 - }, -/obj/machinery/flasher{ - id = "executionflash"; - pixel_x = 0; - pixel_y = 25 - }, -/turf/open/floor/plasteel/darkwarning{ - dir = 1 - }, -/area/security/transfer) -"abx" = ( -/obj/machinery/vending/cola, -/turf/open/floor/plasteel/floorgrime, -/area/security/prison) -"aby" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall/r_wall, -/area/security/transfer) -"abz" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/floorgrime, -/area/security/prison) -"abA" = ( -/obj/machinery/light, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/floorgrime, -/area/security/prison) -"abB" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 10 - }, -/turf/open/floor/plasteel/floorgrime, -/area/security/prison) -"abC" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/floorgrime, -/area/security/prison) -"abD" = ( -/obj/machinery/light, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/plasteel/floorgrime, -/area/security/prison) -"abE" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 10 - }, -/turf/open/floor/plasteel/floorgrime, -/area/security/prison) -"abF" = ( -/turf/open/floor/plasteel/freezer, -/area/security/prison) -"abG" = ( -/obj/machinery/door/window/westleft{ - base_state = "right"; - dir = 8; - icon_state = "right"; - name = "Unisex Showers"; - req_access_txt = "0" - }, -/turf/open/floor/plasteel/freezer, -/area/security/prison) -"abH" = ( -/obj/structure/table, -/obj/item/weapon/storage/box/chemimp{ - pixel_x = 6 - }, -/obj/item/weapon/storage/box/trackimp{ - pixel_x = -3 - }, -/obj/item/weapon/storage/lockbox/loyalty, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/ai_monitored/security/armory) -"abI" = ( -/obj/structure/rack, -/obj/item/clothing/suit/armor/riot{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/clothing/suit/armor/riot, -/obj/item/clothing/suit/armor/riot{ - pixel_x = 3; - pixel_y = -3 - }, -/obj/machinery/light{ - dir = 1 - }, -/obj/item/clothing/head/helmet/riot{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/clothing/head/helmet/riot, -/obj/item/clothing/head/helmet/riot{ - pixel_x = 3; - pixel_y = -3 - }, -/obj/item/weapon/shield/riot{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/weapon/shield/riot, -/obj/item/weapon/shield/riot{ - pixel_x = 3; - pixel_y = -3 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/ai_monitored/security/armory) -"abJ" = ( -/obj/structure/rack, -/obj/item/clothing/suit/armor/bulletproof{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/clothing/suit/armor/bulletproof{ - pixel_y = 0 - }, -/obj/item/clothing/suit/armor/bulletproof{ - pixel_x = 3; - pixel_y = -3 - }, -/obj/item/clothing/head/helmet/alt{ - layer = 3.00001; - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/clothing/head/helmet/alt{ - layer = 3.00001 - }, -/obj/item/clothing/head/helmet/alt{ - layer = 3.00001; - pixel_x = 3; - pixel_y = -3 - }, -/obj/machinery/camera/motion{ - c_tag = "Armory Motion Sensor"; - dir = 2; - name = "motion-sensitive security camera" - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/ai_monitored/security/armory) -"abK" = ( -/obj/structure/chair/stool, -/obj/machinery/light/small{ - dir = 1 - }, -/obj/machinery/button/door{ - id = "permabolt3"; - name = "Cell Bolt Control"; - normaldoorcontrol = 1; - pixel_x = 0; - pixel_y = 25; - req_access_txt = "0"; - specialfunctions = 4 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/floorgrime, -/area/security/prison) -"abL" = ( -/obj/structure/chair/stool, -/obj/machinery/light/small{ - dir = 1 - }, -/obj/machinery/button/door{ - id = "permabolt2"; - name = "Cell Bolt Control"; - normaldoorcontrol = 1; - pixel_x = 0; - pixel_y = 25; - req_access_txt = "0"; - specialfunctions = 4 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/floorgrime, -/area/security/prison) -"abM" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 8 - }, -/turf/open/floor/plasteel/floorgrime, -/area/security/prison) -"abN" = ( -/obj/structure/closet/secure_closet/lethalshots, -/turf/open/floor/plasteel/black, -/area/ai_monitored/security/armory) -"abO" = ( -/turf/open/floor/plasteel/showroomfloor, -/area/security/main) -"abP" = ( -/obj/structure/closet/secure_closet/security/sec, -/turf/open/floor/plasteel/showroomfloor, -/area/security/main) -"abQ" = ( -/obj/structure/rack, -/obj/machinery/airalarm{ - pixel_y = 23 - }, -/obj/item/weapon/gun/energy/ionrifle, -/obj/item/weapon/gun/energy/temperature/security, -/obj/item/clothing/suit/armor/laserproof, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/ai_monitored/security/armory) -"abR" = ( -/obj/structure/closet/secure_closet/security/sec, -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/turf/open/floor/plasteel/showroomfloor, -/area/security/main) -"abS" = ( -/obj/machinery/computer/secure_data, -/turf/open/floor/carpet, -/area/security/hos) -"abT" = ( -/obj/machinery/requests_console{ - announcementConsole = 1; - department = "Head of Security's Desk"; - departmentType = 5; - name = "Head of Security RC"; - pixel_x = 0; - pixel_y = 30 - }, -/obj/item/device/radio/intercom{ - dir = 4; - name = "Station Intercom (General)"; - pixel_x = -31 - }, -/obj/structure/table/wood, -/obj/item/weapon/storage/box/seccarts{ - pixel_x = 3; - pixel_y = 2 - }, -/obj/item/weapon/storage/box/deputy, -/turf/open/floor/carpet, -/area/security/hos) -"abU" = ( -/obj/machinery/computer/card/minor/hos, -/turf/open/floor/carpet, -/area/security/hos) -"abV" = ( -/obj/machinery/computer/security, -/turf/open/floor/carpet, -/area/security/hos) -"abW" = ( -/obj/machinery/airalarm{ - pixel_y = 23 - }, -/obj/structure/reagent_dispensers/peppertank{ - pixel_x = 30; - pixel_y = 0 - }, -/obj/structure/table/wood, -/obj/item/weapon/reagent_containers/food/drinks/bottle/vodka/badminka, -/obj/item/weapon/reagent_containers/food/drinks/drinkingglass/shotglass, -/obj/item/weapon/reagent_containers/food/drinks/drinkingglass/shotglass, -/turf/open/floor/carpet, -/area/security/hos) -"abX" = ( -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/obj/machinery/power/tracker, -/turf/open/floor/plasteel/airless/solarpanel, -/area/solar/auxstarboard) -"abY" = ( -/obj/structure/grille, -/turf/open/space, -/area/space) -"abZ" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/structure/lattice/catwalk, -/turf/open/space, -/area/solar/auxport) -"aca" = ( -/turf/open/floor/plasteel/darkwarning{ - dir = 8 - }, -/area/security/transfer) -"acb" = ( -/obj/machinery/sparker{ - dir = 2; - id = "executionburn"; - pixel_x = 25 - }, -/turf/open/floor/plasteel/darkwarning{ - dir = 4 - }, -/area/security/transfer) -"acc" = ( -/obj/structure/bed, -/obj/effect/landmark{ - name = "revenantspawn" - }, -/turf/open/floor/plasteel/black, -/area/security/transfer) -"acd" = ( -/turf/closed/wall, -/area/security/prison) -"ace" = ( -/obj/machinery/door/poddoor/preopen{ - id = "permacell3"; - name = "cell blast door" - }, -/obj/machinery/door/airlock/glass{ - id_tag = "permabolt3"; - name = "Cell 3" - }, -/turf/open/floor/plasteel/floorgrime, -/area/security/prison) -"acf" = ( -/obj/machinery/door/poddoor/preopen{ - id = "permacell2"; - name = "cell blast door" - }, -/obj/machinery/door/airlock/glass{ - id_tag = "permabolt2"; - name = "Cell 2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/floorgrime, -/area/security/prison) -"acg" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/door/poddoor/preopen{ - id = "permacell1"; - name = "cell blast door" - }, -/obj/machinery/door/airlock/glass{ - id_tag = "permabolt1"; - name = "Cell 1" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/floorgrime, -/area/security/prison) -"ach" = ( -/obj/machinery/door/airlock{ - name = "Unisex Restroom"; - req_access_txt = "0" - }, -/turf/open/floor/plasteel/freezer, -/area/security/prison) -"aci" = ( -/obj/vehicle/secway, -/turf/open/floor/plasteel/black, -/area/ai_monitored/security/armory) -"acj" = ( -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/obj/machinery/suit_storage_unit/hos, -/turf/open/floor/carpet, -/area/security/hos) -"ack" = ( -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/ai_monitored/security/armory) -"acl" = ( -/turf/open/floor/plasteel/warning{ - dir = 9 - }, -/area/ai_monitored/security/armory) -"acm" = ( -/obj/machinery/power/apc{ - cell_type = 5000; - dir = 4; - name = "Armory APC"; - pixel_x = 24; - pixel_y = 0 - }, -/obj/structure/cable{ - icon_state = "0-2"; - pixel_y = 1; - d2 = 2 - }, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/ai_monitored/security/armory) -"acn" = ( -/obj/item/weapon/storage/secure/safe/HoS{ - pixel_x = 35 - }, -/obj/structure/closet/secure_closet/hos, -/turf/open/floor/carpet, -/area/security/hos) -"aco" = ( -/obj/structure/closet/bombcloset, -/turf/open/floor/plasteel/showroomfloor, -/area/security/main) -"acp" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - on = 1 - }, -/turf/open/floor/plasteel/showroomfloor, -/area/security/main) -"acq" = ( -/obj/effect/landmark{ - name = "secequipment" - }, -/turf/open/floor/plasteel/showroomfloor, -/area/security/main) -"acr" = ( -/obj/structure/chair/comfy/black, -/turf/open/floor/carpet, -/area/security/hos) -"acs" = ( -/obj/machinery/newscaster/security_unit{ - pixel_x = -30; - pixel_y = 0 - }, -/obj/machinery/camera{ - c_tag = "Head of Security's Office"; - dir = 4; - network = list("SS13") - }, -/obj/machinery/recharger{ - pixel_y = 4 - }, -/obj/structure/table/wood, -/turf/open/floor/carpet, -/area/security/hos) -"act" = ( -/obj/machinery/holopad, -/turf/open/floor/carpet, -/area/security/hos) -"acu" = ( -/turf/open/floor/carpet, -/area/security/hos) -"acv" = ( -/obj/structure/closet/secure_closet{ - anchored = 1; - name = "Contraband Locker"; - req_access_txt = "3" - }, -/turf/open/floor/plasteel/black, -/area/ai_monitored/security/armory) -"acw" = ( -/obj/structure/sign/securearea{ - pixel_y = -32 - }, -/obj/structure/lattice/catwalk, -/turf/open/space, -/area/space) -"acx" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/structure/lattice/catwalk, -/turf/open/space, -/area/solar/auxstarboard) -"acy" = ( -/obj/structure/lattice, -/obj/item/stack/cable_coil/random, -/turf/open/space, -/area/space) -"acz" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - on = 1 - }, -/turf/open/floor/plasteel/darkwarning{ - dir = 10 - }, -/area/security/transfer) -"acA" = ( -/obj/machinery/atmospherics/components/unary/outlet_injector/on{ - dir = 2 - }, -/turf/open/floor/plasteel/darkwarning{ - dir = 6 - }, -/area/security/transfer) -"acB" = ( -/turf/open/floor/plasteel/darkwarning{ - dir = 2 - }, -/area/security/transfer) -"acC" = ( -/obj/structure/bed, -/obj/machinery/camera{ - c_tag = "Prison Cell 3"; - network = list("SS13","Prison") - }, -/obj/item/device/radio/intercom{ - desc = "Talk through this. It looks like it has been modified to not broadcast."; - dir = 2; - name = "Prison Intercom (General)"; - pixel_x = 0; - pixel_y = 24; - prison_radio = 1 - }, -/turf/open/floor/plasteel/floorgrime, -/area/security/prison) -"acD" = ( -/obj/structure/chair/stool, -/obj/machinery/light/small{ - dir = 1 - }, -/obj/machinery/button/door{ - id = "permabolt1"; - name = "Cell Bolt Control"; - normaldoorcontrol = 1; - pixel_x = 0; - pixel_y = 25; - req_access_txt = "0"; - specialfunctions = 4 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/floorgrime, -/area/security/prison) -"acE" = ( -/obj/structure/bed, -/obj/machinery/camera{ - c_tag = "Prison Cell 2"; - network = list("SS13","Prison") - }, -/obj/item/device/radio/intercom{ - desc = "Talk through this. It looks like it has been modified to not broadcast."; - dir = 2; - name = "Prison Intercom (General)"; - pixel_x = 0; - pixel_y = 24; - prison_radio = 1 - }, -/turf/open/floor/plasteel/floorgrime, -/area/security/prison) -"acF" = ( -/turf/open/floor/plasteel, -/area/ai_monitored/security/armory) -"acG" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/floorgrime, -/area/security/prison) -"acH" = ( -/obj/structure/bed, -/obj/machinery/camera{ - c_tag = "Prison Cell 1"; - network = list("SS13","Prison") - }, -/obj/item/device/radio/intercom{ - desc = "Talk through this. It looks like it has been modified to not broadcast."; - dir = 2; - name = "Prison Intercom (General)"; - pixel_x = 0; - pixel_y = 24; - prison_radio = 1 - }, -/turf/open/floor/plasteel/floorgrime, -/area/security/prison) -"acI" = ( -/obj/machinery/door/poddoor/preopen{ - id = "executionfireblast"; - layer = 2.9; - name = "blast door" - }, -/obj/machinery/atmospherics/pipe/simple/general/hidden, -/obj/machinery/door/firedoor, -/obj/machinery/door/window/westright{ - dir = 1; - name = "Transfer Room"; - req_access_txt = "2" - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/security/transfer) -"acJ" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/floorgrime, -/area/security/prison) -"acK" = ( -/obj/structure/sink{ - icon_state = "sink"; - dir = 8; - pixel_x = -12; - pixel_y = 2 - }, -/obj/machinery/light/small{ - dir = 4 - }, -/turf/open/floor/plasteel/freezer, -/area/security/prison) -"acL" = ( -/turf/open/floor/plasteel/warning{ - dir = 10 - }, -/area/ai_monitored/security/armory) -"acM" = ( -/obj/structure/rack, -/obj/item/weapon/gun/energy/e_gun{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/weapon/gun/energy/e_gun, -/obj/item/weapon/gun/energy/e_gun{ - pixel_x = 3; - pixel_y = -3 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - on = 1 - }, -/turf/open/floor/plasteel/bot{ - dir = 2 - }, -/area/ai_monitored/security/armory) -"acN" = ( -/obj/structure/chair/stool/bar, -/turf/open/floor/plasteel/bar, -/area/crew_quarters/bar) -"acO" = ( -/obj/structure/closet/l3closet/security, -/obj/machinery/camera{ - c_tag = "Brig Equipment Room"; - dir = 4 - }, -/turf/open/floor/plasteel/showroomfloor, -/area/security/main) -"acP" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/showroomfloor, -/area/security/main) -"acQ" = ( -/obj/structure/table/wood, -/obj/item/weapon/folder/red, -/obj/item/weapon/stamp/hos, -/turf/open/floor/carpet, -/area/security/hos) -"acR" = ( -/obj/structure/table/wood, -/obj/item/device/flashlight/lamp/green{ - on = 0; - pixel_x = -3; - pixel_y = 8 - }, -/obj/item/weapon/paper_bin{ - pixel_x = -3; - pixel_y = 7 - }, -/turf/open/floor/carpet, -/area/security/hos) -"acS" = ( -/obj/item/weapon/book/manual/wiki/security_space_law, -/obj/structure/table/wood, -/turf/open/floor/carpet, -/area/security/hos) -"acT" = ( -/obj/machinery/door/window/eastleft{ - name = "armoury desk"; - req_access_txt = "1" - }, -/obj/machinery/door/window/westleft{ - name = "armoury desk"; - req_access_txt = "3" - }, -/obj/structure/table/reinforced, -/turf/open/floor/plasteel, -/area/ai_monitored/security/armory) -"acU" = ( -/obj/machinery/door/airlock/external{ - name = "Security External Airlock"; - req_access_txt = "63" - }, -/turf/open/floor/plating, -/area/security/main) -"acV" = ( -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/obj/machinery/power/solar{ - id = "auxsolareast"; - name = "Port Auxiliary Solar Array" - }, -/turf/open/floor/plasteel/airless/solarpanel, -/area/solar/auxport) -"acW" = ( -/obj/structure/cable, -/obj/structure/lattice/catwalk, -/turf/open/space, -/area/solar/auxport) -"acX" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/door/poddoor/preopen{ - id = "executionfireblast"; - layer = 2.9; - name = "blast door" - }, -/obj/machinery/door/firedoor, -/turf/open/floor/plating, -/area/security/transfer) -"acY" = ( -/obj/structure/table, -/obj/item/weapon/paper, -/obj/item/weapon/pen, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/floorgrime, -/area/security/prison) -"acZ" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor/preopen{ - id = "executionfireblast"; - layer = 2.9; - name = "blast door" - }, -/obj/machinery/door/firedoor, -/turf/open/floor/plating, -/area/security/transfer) -"ada" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - on = 1 - }, -/obj/machinery/flasher{ - id = "PCell 3"; - pixel_x = -28 - }, -/turf/open/floor/plasteel/floorgrime, -/area/security/prison) -"adb" = ( -/obj/structure/table, -/obj/item/weapon/paper, -/obj/item/weapon/pen, -/turf/open/floor/plasteel/floorgrime, -/area/security/prison) -"adc" = ( -/obj/machinery/flasher{ - id = "PCell 1"; - pixel_x = -28 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/plasteel/floorgrime, -/area/security/prison) -"add" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - on = 1 - }, -/obj/machinery/flasher{ - id = "PCell 2"; - pixel_x = -28 - }, -/turf/open/floor/plasteel/floorgrime, -/area/security/prison) -"ade" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/floorgrime, -/area/security/prison) -"adf" = ( -/obj/structure/toilet{ - dir = 1 - }, -/turf/open/floor/plasteel/freezer, -/area/security/prison) -"adg" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plasteel, -/area/ai_monitored/security/armory) -"adh" = ( -/obj/machinery/disposal/bin, -/obj/structure/disposalpipe/trunk, -/turf/open/floor/carpet, -/area/security/hos) -"adi" = ( -/obj/machinery/flasher/portable, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/ai_monitored/security/armory) -"adj" = ( -/obj/structure/rack, -/obj/item/weapon/gun/energy/e_gun/advtaser{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/weapon/gun/energy/e_gun/advtaser, -/obj/item/weapon/gun/energy/e_gun/advtaser{ - pixel_x = 3; - pixel_y = -3 - }, -/turf/open/floor/plasteel/bot{ - dir = 2 - }, -/area/ai_monitored/security/armory) -"adk" = ( -/obj/structure/rack, -/obj/item/weapon/gun/ballistic/shotgun/riot{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/weapon/gun/ballistic/shotgun/riot, -/obj/item/weapon/gun/ballistic/shotgun/riot{ - pixel_x = 3; - pixel_y = -3 - }, -/turf/open/floor/plasteel/bot{ - dir = 2 - }, -/area/ai_monitored/security/armory) -"adl" = ( -/obj/machinery/door/poddoor/shutters{ - id = "armory"; - name = "Armoury Shutter" - }, -/obj/machinery/button/door{ - id = "armory"; - name = "Armory Shutters"; - pixel_x = 0; - pixel_y = -26; - req_access_txt = "3" - }, -/turf/open/floor/plasteel/delivery{ - name = "floor" - }, -/area/ai_monitored/security/armory) -"adm" = ( -/obj/structure/grille, -/obj/structure/disposalpipe/segment, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/hos) -"adn" = ( -/obj/structure/chair{ - dir = 1 - }, -/turf/open/floor/carpet, -/area/security/hos) -"ado" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - on = 1 - }, -/turf/open/floor/carpet, -/area/security/hos) -"adp" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/carpet, -/area/security/hos) -"adq" = ( -/obj/structure/table/wood, -/obj/item/device/instrument/guitar{ - pixel_x = -7 - }, -/obj/item/device/instrument/eguitar{ - pixel_x = 5 - }, -/turf/open/floor/wood, -/area/crew_quarters/theatre) -"adr" = ( -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; - icon_state = "space"; - layer = 4; - name = "EXTERNAL AIRLOCK"; - pixel_x = -32; - pixel_y = 0 - }, -/turf/open/floor/plating, -/area/security/main) -"ads" = ( -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/obj/machinery/power/solar{ - id = "auxsolareast"; - name = "Port Auxiliary Solar Array" - }, -/turf/open/floor/plasteel/airless/solarpanel, -/area/solar/auxstarboard) -"adt" = ( -/obj/structure/cable, -/obj/structure/lattice/catwalk, -/turf/open/space, -/area/solar/auxstarboard) -"adu" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/structure/lattice/catwalk, -/turf/open/space, -/area/solar/auxport) -"adv" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/structure/lattice/catwalk, -/turf/open/space, -/area/solar/auxport) -"adw" = ( -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/structure/lattice/catwalk, -/turf/open/space, -/area/solar/auxport) -"adx" = ( -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/structure/lattice/catwalk, -/turf/open/space, -/area/solar/auxport) -"ady" = ( -/obj/structure/lattice/catwalk, -/turf/open/space, -/area/solar/auxport) -"adz" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/structure/lattice/catwalk, -/turf/open/space, -/area/solar/auxport) -"adA" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/structure/lattice/catwalk, -/turf/open/space, -/area/solar/auxport) -"adB" = ( -/obj/structure/sign/securearea{ - pixel_x = 32; - pixel_y = 0 - }, -/turf/open/space, -/area/space) -"adC" = ( -/obj/structure/table, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/item/weapon/scalpel{ - pixel_y = 12 - }, -/obj/item/weapon/circular_saw, -/obj/item/weapon/hemostat, -/obj/item/weapon/retractor, -/obj/item/weapon/surgical_drapes, -/obj/item/weapon/razor, -/turf/open/floor/plasteel/black, -/area/security/transfer) -"adD" = ( -/obj/machinery/button/flasher{ - id = "executionflash"; - pixel_x = 24; - pixel_y = 5 - }, -/obj/machinery/button/door{ - id = "executionspaceblast"; - name = "Vent to Space"; - pixel_x = 25; - pixel_y = -5; - req_access_txt = "7" - }, -/obj/machinery/atmospherics/pipe/simple/general/hidden, -/turf/open/floor/plasteel/black, -/area/security/transfer) -"adE" = ( -/obj/structure/table, -/obj/item/weapon/folder/red{ - pixel_x = 3 - }, -/obj/item/device/taperecorder{ - pixel_x = -3; - pixel_y = 0 - }, -/obj/item/device/assembly/flash/handheld, -/obj/item/weapon/reagent_containers/spray/pepper, -/turf/open/floor/plasteel/black, -/area/security/transfer) -"adF" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/closed/wall, -/area/security/prison) -"adG" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall, -/area/security/prison) -"adH" = ( -/obj/machinery/door/airlock/glass_security{ - name = "Long-Term Cell 3"; - req_access_txt = "2" - }, -/turf/open/floor/plasteel/floorgrime, -/area/security/prison) -"adI" = ( -/obj/machinery/door/airlock/glass_security{ - name = "Long-Term Cell 2"; - req_access_txt = "2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/floorgrime, -/area/security/prison) -"adJ" = ( -/obj/machinery/door/airlock/glass_security{ - name = "Long-Term Cell 1"; - req_access_txt = "2" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/floorgrime, -/area/security/prison) -"adK" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - on = 1 - }, -/turf/open/floor/plasteel/warning{ - dir = 2 - }, -/area/ai_monitored/security/armory) -"adL" = ( -/obj/structure/closet{ - name = "Evidence Closet" - }, -/turf/open/floor/plasteel/red/side{ - dir = 5 - }, -/area/security/brig) -"adM" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/floor/carpet, -/area/security/hos) -"adN" = ( -/obj/machinery/power/apc{ - dir = 8; - name = "Head of Security's Office APC"; - pixel_x = -24; - pixel_y = 0 - }, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/carpet, -/area/security/hos) -"adO" = ( -/obj/structure/chair/stool, -/obj/effect/landmark/event_spawn, -/turf/open/floor/plasteel/floorgrime, -/area/security/prison) -"adP" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/carpet, -/area/security/hos) -"adQ" = ( -/turf/open/floor/plasteel/warning{ - dir = 2 - }, -/area/ai_monitored/security/armory) -"adR" = ( -/turf/closed/wall/r_wall, -/area/security/main) -"adS" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/structure/lattice/catwalk, -/turf/open/space, -/area/solar/auxstarboard) -"adT" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/structure/lattice/catwalk, -/turf/open/space, -/area/solar/auxstarboard) -"adU" = ( -/obj/structure/lattice/catwalk, -/turf/open/space, -/area/solar/auxstarboard) -"adV" = ( -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/structure/lattice/catwalk, -/turf/open/space, -/area/solar/auxstarboard) -"adW" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/structure/lattice/catwalk, -/turf/open/space, -/area/solar/auxstarboard) -"adX" = ( -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/structure/lattice/catwalk, -/turf/open/space, -/area/solar/auxstarboard) -"adY" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/structure/lattice/catwalk, -/turf/open/space, -/area/solar/auxstarboard) -"adZ" = ( -/obj/structure/cable, -/obj/machinery/power/solar{ - id = "auxsolareast"; - name = "Port Auxiliary Solar Array" - }, -/turf/open/floor/plasteel/airless/solarpanel, -/area/solar/auxport) -"aea" = ( -/obj/machinery/portable_atmospherics/canister/nitrous_oxide, -/obj/machinery/atmospherics/components/unary/portables_connector/visible, -/turf/open/floor/plating/warnplate{ - dir = 9 - }, -/area/security/transfer) -"aeb" = ( -/obj/structure/table, -/obj/item/device/flashlight/lamp, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/black, -/area/security/transfer) -"aec" = ( -/obj/structure/window/reinforced{ - dir = 4 - }, -/obj/machinery/portable_atmospherics/canister/carbon_dioxide, -/obj/machinery/atmospherics/components/unary/portables_connector/visible, -/turf/open/floor/plating/warnplate{ - dir = 1 - }, -/area/security/transfer) -"aed" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/obj/machinery/button/ignition{ - id = "executionburn"; - pixel_x = 24; - pixel_y = 5 - }, -/obj/machinery/button/door{ - id = "executionfireblast"; - name = "Transfer Area Lockdown"; - pixel_x = 25; - pixel_y = -5; - req_access_txt = "2" - }, -/obj/machinery/atmospherics/pipe/simple/general/hidden, -/turf/open/floor/plasteel/black, -/area/security/transfer) -"aee" = ( -/obj/structure/chair{ - dir = 1 - }, -/turf/open/floor/plasteel/black, -/area/security/transfer) -"aef" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/red/side{ - dir = 8 - }, -/area/security/prison) -"aeg" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/closed/wall/r_wall, -/area/security/transfer) -"aeh" = ( -/obj/machinery/button/door{ - id = "permacell3"; - name = "Cell 3 Lockdown"; - pixel_x = -4; - pixel_y = 25; - req_access_txt = "2" - }, -/obj/machinery/button/flasher{ - id = "PCell 3"; - pixel_x = 6; - pixel_y = 24 - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/open/floor/plasteel/red/corner{ - dir = 4 - }, -/area/security/prison) -"aei" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/security/prison) -"aej" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/red/corner{ - dir = 1 - }, -/area/security/prison) -"aek" = ( -/obj/machinery/light{ - dir = 1 - }, -/obj/machinery/computer/security/telescreen{ - desc = "Used for watching Prison Wing holding areas."; - name = "Prison Monitor"; - network = list("Prison"); - pixel_x = 0; - pixel_y = 30 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - on = 1 - }, -/turf/open/floor/plasteel/red/side{ - dir = 1 - }, -/area/security/prison) -"ael" = ( -/obj/machinery/button/door{ - id = "permacell2"; - name = "Cell 2 Lockdown"; - pixel_x = -4; - pixel_y = 25; - req_access_txt = "2" - }, -/obj/machinery/button/flasher{ - id = "PCell 2"; - pixel_x = 6; - pixel_y = 24 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/red/corner{ - dir = 4 - }, -/area/security/prison) -"aem" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/security/prison) -"aen" = ( -/obj/machinery/computer/security/telescreen{ - desc = "Used for watching Prison Wing holding areas."; - name = "Prison Monitor"; - network = list("Prison"); - pixel_x = 0; - pixel_y = 30 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/camera{ - c_tag = "Prison Hallway"; - network = list("SS13","Prison") - }, -/turf/open/floor/plasteel/red/side{ - dir = 1 - }, -/area/security/prison) -"aeo" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/red/corner{ - dir = 1 - }, -/area/security/prison) -"aep" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/security/prison) -"aeq" = ( -/obj/machinery/button/door{ - id = "permacell1"; - name = "Cell 1 Lockdown"; - pixel_x = -4; - pixel_y = 25; - req_access_txt = "2" - }, -/obj/machinery/button/flasher{ - id = "PCell 1"; - pixel_x = 6; - pixel_y = 24 - }, -/obj/machinery/atmospherics/pipe/manifold4w/scrubbers/hidden, -/turf/open/floor/plasteel/red/corner{ - dir = 4 - }, -/area/security/prison) -"aer" = ( -/obj/machinery/firealarm{ - dir = 2; - pixel_y = 24 - }, -/obj/machinery/power/apc{ - dir = 4; - name = "Prison Wing APC"; - pixel_x = 24; - pixel_y = 0 - }, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/turf/open/floor/plasteel/red/side{ - dir = 5 - }, -/area/security/prison) -"aes" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/suit_storage_unit/security, -/turf/open/floor/plasteel/red/side, -/area/ai_monitored/security/armory) -"aet" = ( -/turf/open/floor/plasteel/warning/corner{ - dir = 1 - }, -/area/ai_monitored/security/armory) -"aeu" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/machinery/suit_storage_unit/security, -/turf/open/floor/plasteel/red/side, -/area/ai_monitored/security/armory) -"aev" = ( -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/obj/structure/reagent_dispensers/peppertank{ - pixel_x = 30; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/showroomfloor, -/area/security/main) -"aew" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/showroomfloor, -/area/security/main) -"aex" = ( -/obj/structure/grille, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/hos) -"aey" = ( -/obj/machinery/door/airlock/glass_command{ - name = "Head of Security"; - req_access_txt = "58" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/carpet, -/area/security/hos) -"aez" = ( -/obj/structure/closet{ - name = "Evidence Closet" - }, -/turf/open/floor/plasteel/red/side{ - dir = 8 - }, -/area/security/brig) -"aeA" = ( -/obj/machinery/disposal/bin, -/obj/structure/disposalpipe/trunk, -/turf/open/floor/plasteel/warning{ - dir = 5 - }, -/area/security/main) -"aeB" = ( -/obj/structure/table, -/obj/item/stack/packageWrap, -/obj/item/weapon/pen, -/turf/open/floor/plasteel, -/area/security/main) -"aeC" = ( -/obj/machinery/camera{ - c_tag = "Security Escape Pod"; - dir = 4; - network = list("SS13") - }, -/turf/open/floor/plating, -/area/security/main) -"aeD" = ( -/obj/structure/shuttle/engine/propulsion/burst{ - dir = 4 - }, -/turf/closed/wall/mineral/titanium, -/area/shuttle/pod_3) -"aeE" = ( -/turf/closed/wall/mineral/titanium, -/area/shuttle/pod_3) -"aeF" = ( -/turf/closed/wall/mineral/titanium/overspace, -/area/shuttle/pod_3) -"aeG" = ( -/obj/structure/cable, -/obj/machinery/power/solar{ - id = "auxsolareast"; - name = "Port Auxiliary Solar Array" - }, -/turf/open/floor/plasteel/airless/solarpanel, -/area/solar/auxstarboard) -"aeH" = ( -/obj/machinery/atmospherics/pipe/manifold/general/visible{ - dir = 8 - }, -/obj/machinery/light/small{ - dir = 8 - }, -/obj/machinery/portable_atmospherics/canister/nitrous_oxide, -/turf/open/floor/plating/warnplate{ - dir = 8 - }, -/area/security/transfer) -"aeI" = ( -/obj/structure/rack, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 5 - }, -/obj/item/device/flashlight{ - pixel_x = 1; - pixel_y = 5 - }, -/obj/item/weapon/tank/internals/anesthetic{ - pixel_x = -3; - pixel_y = 1 - }, -/obj/item/weapon/tank/internals/oxygen/red{ - pixel_x = 3 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/security/transfer) -"aeJ" = ( -/obj/structure/window/reinforced{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/general/visible{ - dir = 9 - }, -/turf/open/floor/plating, -/area/security/transfer) -"aeK" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/general/hidden, -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/turf/open/floor/plasteel/black, -/area/security/transfer) -"aeL" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 1 - }, -/turf/open/floor/plasteel/black, -/area/security/transfer) -"aeM" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/red/side{ - dir = 8 - }, -/area/security/prison) -"aeN" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/security{ - aiControlDisabled = 0; - icon_state = "door_closed"; - id_tag = null; - locked = 0; - name = "Prisoner Transfer Centre"; - req_access = null; - req_access_txt = "2" - }, -/turf/open/floor/plasteel/black, -/area/security/transfer) -"aeO" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/floor/plasteel, -/area/security/prison) -"aeP" = ( -/obj/machinery/airalarm{ - pixel_y = 23 - }, -/obj/machinery/light{ - dir = 1 - }, -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 10 - }, -/turf/open/floor/plasteel/red/side{ - dir = 1 - }, -/area/security/prison) -"aeQ" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/floor/plasteel, -/area/security/prison) -"aeR" = ( -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/plating, -/area/hallway/secondary/exit) -"aeS" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/security/prison) -"aeT" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/floor/plasteel, -/area/security/prison) -"aeU" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/open/floor/plasteel, -/area/security/prison) -"aeV" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel, -/area/security/prison) -"aeW" = ( -/obj/machinery/requests_console{ - department = "Security"; - departmentType = 5; - pixel_x = -30; - pixel_y = 0 - }, -/obj/machinery/camera{ - c_tag = "Brig Control Room"; - dir = 4 - }, -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/obj/structure/rack, -/obj/item/clothing/mask/gas/sechailer{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/clothing/mask/gas/sechailer, -/obj/item/clothing/mask/gas/sechailer{ - pixel_x = 3; - pixel_y = -3 - }, -/turf/open/floor/plasteel/showroomfloor, -/area/security/warden) -"aeX" = ( -/obj/structure/grille, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 5 - }, -/turf/open/floor/plating, -/area/ai_monitored/security/armory) -"aeY" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/door/window/southleft{ - name = "Armory"; - req_access_txt = "3" - }, -/obj/machinery/door/firedoor, -/turf/open/floor/plasteel/warning{ - dir = 10 - }, -/area/ai_monitored/security/armory) -"aeZ" = ( -/obj/structure/grille, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 10 - }, -/turf/open/floor/plating, -/area/ai_monitored/security/armory) -"afa" = ( -/obj/machinery/door/airlock/titanium{ - name = "Emergency Shuttle Airlock" - }, -/obj/docking_port/mobile/emergency{ - name = "Box emergency shuttle"; - timid = 0 - }, -/obj/docking_port/stationary{ - dir = 4; - dwidth = 12; - height = 18; - id = "emergency_home"; - name = "BoxStation emergency evac bay"; - turf_type = /turf/open/space; - width = 32 - }, -/turf/open/floor/plating, -/area/shuttle/escape) -"afb" = ( -/obj/machinery/recharger, -/obj/structure/table, -/turf/open/floor/plasteel/showroomfloor, -/area/security/main) -"afc" = ( -/obj/structure/table, -/obj/machinery/recharger, -/turf/open/floor/plasteel/showroomfloor, -/area/security/main) -"afd" = ( -/obj/item/device/radio/intercom{ - freerange = 0; - frequency = 1459; - name = "Station Intercom (General)"; - pixel_x = 29 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/closet/wardrobe/red, -/turf/open/floor/plasteel/showroomfloor, -/area/security/main) -"afe" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/showroomfloor, -/area/security/main) -"aff" = ( -/obj/effect/landmark/start{ - name = "Security Officer" - }, -/turf/open/floor/plasteel/red/side{ - dir = 9 - }, -/area/security/main) -"afg" = ( -/obj/effect/landmark/start{ - name = "Security Officer" - }, -/turf/open/floor/plasteel/red/side{ - dir = 1 - }, -/area/security/main) -"afh" = ( -/obj/effect/landmark/start{ - name = "Security Officer" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/red/side{ - dir = 1 - }, -/area/security/main) -"afi" = ( -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/obj/effect/landmark/start{ - name = "Security Officer" - }, -/turf/open/floor/plasteel/red/side{ - dir = 1 - }, -/area/security/main) -"afj" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/red/side{ - dir = 1 - }, -/area/security/main) -"afk" = ( -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/obj/effect/landmark/start{ - name = "Security Officer" - }, -/turf/open/floor/plasteel/red/side{ - dir = 1 - }, -/area/security/main) -"afl" = ( -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/security/main) -"afm" = ( -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/red/side{ - dir = 5 - }, -/area/security/main) -"afn" = ( -/turf/open/floor/plating, -/area/security/main) -"afo" = ( -/obj/machinery/door/airlock/external{ - name = "Escape Pod Three"; - req_access_txt = "0" - }, -/turf/open/floor/plating, -/area/security/main) -"afp" = ( -/obj/machinery/door/airlock/titanium{ - name = "Escape Pod Airlock" - }, -/obj/docking_port/mobile/pod{ - dir = 4; - id = "pod3"; - name = "escape pod 3"; - port_angle = 180; - preferred_direction = 4 - }, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/pod_3) -"afq" = ( -/obj/machinery/computer/shuttle/pod{ - pixel_y = -32; - possible_destinations = "pod_asteroid3"; - shuttleId = "pod3" - }, -/obj/structure/chair{ - dir = 4 - }, -/obj/machinery/status_display{ - density = 0; - layer = 3; - pixel_x = 0; - pixel_y = 32 - }, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/pod_3) -"afr" = ( -/obj/item/device/radio/intercom{ - pixel_y = 25 - }, -/obj/item/weapon/storage/pod{ - pixel_x = 6; - pixel_y = -32 - }, -/obj/structure/chair{ - dir = 4 - }, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/pod_3) -"afs" = ( -/obj/structure/grille, -/obj/structure/window/shuttle, -/turf/open/floor/plating, -/area/shuttle/pod_3) -"aft" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible{ - dir = 5 - }, -/turf/open/floor/plating/warnplate{ - dir = 10 - }, -/area/security/transfer) -"afu" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/transfer) -"afv" = ( -/obj/machinery/atmospherics/pipe/simple/general/hidden{ - icon_state = "intact"; - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/security/transfer) -"afw" = ( -/obj/machinery/atmospherics/components/binary/pump{ - dir = 4; - layer = 2.4 - }, -/obj/machinery/door/window/southleft{ - base_state = "right"; - dir = 4; - icon_state = "right"; - name = "Armory"; - req_access_txt = "2" - }, -/turf/open/floor/plating/warnplate, -/area/security/transfer) -"afx" = ( -/obj/machinery/light_switch{ - pixel_x = 25; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/general/hidden{ - dir = 9 - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/black, -/area/security/transfer) -"afy" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - external_pressure_bound = 101.325; - on = 1; - pressure_checks = 1 - }, -/obj/machinery/atmospherics/pipe/simple/general/hidden{ - icon_state = "intact"; - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/security/transfer) -"afz" = ( -/obj/structure/table, -/obj/item/weapon/restraints/handcuffs, -/turf/open/floor/plasteel/red/side{ - dir = 10 - }, -/area/security/prison) -"afA" = ( -/turf/closed/wall/r_wall, -/area/security/transfer) -"afB" = ( -/obj/item/device/radio/intercom{ - dir = 4; - name = "Station Intercom (General)"; - pixel_x = 27 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 10 - }, -/turf/open/floor/plasteel/red/side{ - dir = 4 - }, -/area/security/prison) -"afC" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/security/prison) -"afD" = ( -/obj/structure/table, -/obj/item/device/electropack, -/turf/open/floor/plasteel/red/side, -/area/security/prison) -"afE" = ( -/obj/machinery/light/small, -/turf/open/floor/plating, -/area/hallway/secondary/exit) -"afF" = ( -/obj/structure/table, -/obj/item/device/assembly/signaler, -/obj/item/clothing/suit/straight_jacket, -/turf/open/floor/plasteel/red/side, -/area/security/prison) -"afG" = ( -/obj/structure/table, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/obj/item/weapon/storage/box/hug, -/obj/item/weapon/razor{ - pixel_x = -6 - }, -/turf/open/floor/plasteel/red/side, -/area/security/prison) -"afH" = ( -/obj/structure/closet/secure_closet/brig{ - anchored = 1 - }, -/turf/open/floor/plasteel/red/side, -/area/security/prison) -"afI" = ( -/turf/open/floor/plasteel/red/side, -/area/security/prison) -"afJ" = ( -/obj/structure/extinguisher_cabinet{ - pixel_x = 1; - pixel_y = -27 - }, -/turf/open/floor/plasteel/red/side, -/area/security/prison) -"afK" = ( -/obj/machinery/door/airlock/glass_security{ - id_tag = null; - name = "Evidence Storage"; - req_access_txt = "63" - }, -/turf/open/floor/plasteel/red/side, -/area/security/brig) -"afL" = ( -/obj/structure/closet{ - name = "Evidence Closet" - }, -/turf/open/floor/plasteel/red/side{ - dir = 9 - }, -/area/security/brig) -"afM" = ( -/turf/open/floor/plasteel, -/area/security/brig) -"afN" = ( -/obj/machinery/light, -/turf/open/floor/plasteel/red/side, -/area/security/brig) -"afO" = ( -/obj/machinery/door/airlock/command{ - name = "Command Tool Storage"; - req_access = null; - req_access_txt = "19" - }, -/turf/open/floor/plasteel, -/area/ai_monitored/storage/eva) -"afP" = ( -/obj/machinery/door/airlock/command{ - cyclelinkeddir = 2; - name = "Command Tool Storage"; - req_access = null; - req_access_txt = "19" - }, -/turf/open/floor/plasteel/black, -/area/ai_monitored/storage/eva) -"afQ" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/structure/sign/securearea{ - pixel_x = -32 - }, -/turf/open/floor/plating, -/area/security/main) -"afR" = ( -/obj/structure/grille, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/main) -"afS" = ( -/obj/machinery/door/airlock/glass_security{ - name = "Equipment Room"; - req_access_txt = "1" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/showroomfloor, -/area/security/main) -"afT" = ( -/obj/effect/landmark/start{ - name = "Security Officer" - }, -/turf/open/floor/plasteel/red/side{ - dir = 8 - }, -/area/security/main) -"afU" = ( -/turf/open/floor/plasteel, -/area/security/main) -"afV" = ( -/obj/structure/table, -/obj/item/weapon/restraints/handcuffs, -/obj/item/device/assembly/timer, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/security/main) -"afW" = ( -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel, -/area/security/main) -"afX" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/effect/landmark/start{ - name = "Head of Security" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/security/main) -"afY" = ( -/obj/effect/landmark/start{ - name = "Security Officer" - }, -/obj/structure/chair{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/security/main) -"afZ" = ( -/obj/structure/table, -/obj/item/device/radio/off, -/obj/item/weapon/screwdriver{ - pixel_y = 10 - }, -/turf/open/floor/plasteel, -/area/security/main) -"aga" = ( -/obj/structure/sign/pods{ - pixel_x = 32; - pixel_y = 0 - }, -/turf/open/floor/plasteel/warning{ - dir = 6 - }, -/area/security/main) -"agb" = ( -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/red/side{ - dir = 4 - }, -/area/security/main) -"agc" = ( -/obj/structure/closet/emcloset, -/obj/machinery/light/small{ - dir = 8 - }, -/turf/open/floor/plating, -/area/security/main) -"agd" = ( -/obj/machinery/atmospherics/pipe/manifold4w/general/visible, -/turf/open/floor/plasteel, -/area/atmos) -"age" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible{ - dir = 9 - }, -/turf/open/floor/plasteel, -/area/atmos) -"agf" = ( -/obj/structure/table, -/obj/item/stack/sheet/metal{ - amount = 1 - }, -/obj/item/weapon/storage/box/bodybags, -/obj/item/weapon/pen, -/obj/machinery/firealarm{ - dir = 1; - pixel_y = -24 - }, -/turf/open/floor/plasteel/black, -/area/security/transfer) -"agg" = ( -/obj/structure/closet/secure_closet/injection, -/obj/structure/cable, -/obj/machinery/power/apc{ - dir = 2; - name = "Prisoner Transfer Centre"; - pixel_x = 0; - pixel_y = -27 - }, -/turf/open/floor/plasteel/black, -/area/security/transfer) -"agh" = ( -/obj/structure/table, -/obj/item/device/electropack, -/obj/item/weapon/screwdriver, -/obj/item/weapon/wrench, -/obj/item/clothing/head/helmet, -/obj/item/device/assembly/signaler, -/obj/machinery/light/small, -/obj/machinery/airalarm{ - dir = 1; - icon_state = "alarm0"; - pixel_y = -22 - }, -/turf/open/floor/plasteel/black, -/area/security/transfer) -"agi" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass_security{ - name = "Prison Wing"; - req_access_txt = "2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/red/side{ - dir = 5 - }, -/area/security/prison) -"agj" = ( -/turf/closed/wall, -/area/security/brig) -"agk" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass_security{ - name = "Prison Wing"; - req_access_txt = "2" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/red/side{ - dir = 9 - }, -/area/security/prison) -"agl" = ( -/obj/machinery/door/airlock/security{ - name = "Interrogation"; - req_access = null; - req_access_txt = "63" - }, -/turf/open/floor/plasteel/black, -/area/security/prison) -"agm" = ( -/obj/machinery/light{ - dir = 8 - }, -/obj/structure/table, -/obj/item/stack/sheet/plasteel{ - amount = 10 - }, -/turf/open/floor/plasteel, -/area/ai_monitored/storage/eva) -"agn" = ( -/turf/closed/wall/r_wall, -/area/security/warden) -"ago" = ( -/obj/machinery/computer/security, -/turf/open/floor/plasteel/showroomfloor, -/area/security/warden) -"agp" = ( -/obj/machinery/computer/prisoner, -/turf/open/floor/plasteel/showroomfloor, -/area/security/warden) -"agq" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/window/southleft{ - base_state = "right"; - icon_state = "right"; - name = "Armory"; - req_access_txt = "3" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8"; - tag = "" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/warning{ - dir = 2 - }, -/area/ai_monitored/security/armory) -"agr" = ( -/obj/machinery/computer/secure_data, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/showroomfloor, -/area/security/warden) -"ags" = ( -/obj/structure/chair{ - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/security/prison) -"agt" = ( -/turf/open/floor/plasteel/showroomfloor, -/area/security/warden) -"agu" = ( -/obj/structure/table, -/obj/machinery/recharger, -/obj/machinery/airalarm{ - dir = 8; - icon_state = "alarm0"; - pixel_x = 24 - }, -/turf/open/floor/plasteel/showroomfloor, -/area/security/warden) -"agv" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible{ - dir = 6 - }, -/turf/open/floor/plasteel, -/area/atmos) -"agw" = ( -/obj/structure/table, -/obj/machinery/syndicatebomb/training, -/obj/item/weapon/gun/energy/laser/practice, -/turf/open/floor/plasteel/red/side{ - dir = 9 - }, -/area/security/main) -"agx" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 8 - }, -/turf/open/floor/plasteel/red/side{ - dir = 1 - }, -/area/security/main) -"agy" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/red/side{ - dir = 1 - }, -/area/security/main) -"agz" = ( -/obj/effect/landmark/start{ - name = "Security Officer" - }, -/turf/open/floor/plasteel/red/corner{ - dir = 1 - }, -/area/security/main) -"agA" = ( -/obj/machinery/requests_console{ - department = "Security"; - departmentType = 5; - pixel_y = 30 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/plasteel/red/side{ - dir = 1 - }, -/area/security/main) -"agB" = ( -/obj/structure/table, -/obj/item/device/assembly/flash/handheld, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/security/main) -"agC" = ( -/obj/machinery/holopad, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/security/main) -"agD" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/poddoor/preopen{ - id = "Prison Gate"; - name = "prison blast door" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/delivery{ - name = "floor" - }, -/area/security/brig) -"agE" = ( -/obj/structure/table, -/obj/item/weapon/folder/red, -/obj/item/weapon/pen, -/turf/open/floor/plasteel, -/area/security/main) -"agF" = ( -/obj/machinery/door/firedoor, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/sign/securearea{ - pixel_x = -32; - pixel_y = 0 - }, -/obj/machinery/door/poddoor/preopen{ - id = "Prison Gate"; - name = "prison blast door" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/delivery{ - name = "floor" - }, -/area/security/brig) -"agG" = ( -/obj/machinery/airalarm{ - dir = 8; - icon_state = "alarm0"; - pixel_x = 24 - }, -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/red/side{ - dir = 4 - }, -/area/security/main) -"agH" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/security/prison) -"agI" = ( -/obj/machinery/airalarm{ - pixel_y = 23 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/security/prison) -"agJ" = ( -/obj/item/weapon/cigbutt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 10 - }, -/turf/open/floor/plasteel/black, -/area/security/prison) -"agK" = ( -/turf/open/floor/plasteel/black, -/area/security/prison) -"agL" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/plasteel/black, -/area/security/prison) -"agM" = ( -/obj/item/clothing/gloves/color/latex, -/obj/item/clothing/mask/surgical, -/obj/item/weapon/reagent_containers/spray/cleaner, -/obj/structure/table/glass, -/turf/open/floor/plasteel/whitered/side{ - dir = 9 - }, -/area/security/brig) -"agN" = ( -/obj/item/weapon/storage/firstaid/regular{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/storage/firstaid/regular, -/obj/structure/table/glass, -/turf/open/floor/plasteel/whitered/side{ - dir = 1 - }, -/area/security/brig) -"agO" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/red/side{ - dir = 5 - }, -/area/security/brig) -"agP" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/red/side{ - dir = 9 - }, -/area/security/brig) -"agQ" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/showroomfloor, -/area/security/warden) -"agR" = ( -/obj/structure/grille, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/warden) -"agS" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/plasteel/showroomfloor, -/area/security/warden) -"agT" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/turf/open/floor/plasteel/showroomfloor, -/area/security/warden) -"agU" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/showroomfloor, -/area/security/warden) -"agV" = ( -/obj/machinery/holopad, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/showroomfloor, -/area/security/warden) -"agW" = ( -/obj/structure/grille, -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/warden) -"agX" = ( -/obj/structure/table, -/obj/machinery/recharger, -/turf/open/floor/plasteel/showroomfloor, -/area/security/warden) -"agY" = ( -/obj/structure/table, -/obj/item/weapon/storage/fancy/donut_box, -/turf/open/floor/plasteel/red/side{ - dir = 8 - }, -/area/security/main) -"agZ" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/security/main) -"aha" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/security/main) -"ahb" = ( -/obj/effect/landmark/start{ - name = "Security Officer" - }, -/turf/open/floor/plasteel, -/area/security/main) -"ahc" = ( -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel, -/area/security/main) -"ahd" = ( -/obj/structure/table, -/obj/item/weapon/book/manual/wiki/security_space_law, -/obj/item/weapon/book/manual/wiki/security_space_law, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/security/main) -"ahe" = ( -/obj/structure/disposalpipe/sortjunction{ - dir = 4; - icon_state = "pipe-j2s"; - sortType = 8 - }, -/turf/open/floor/plasteel, -/area/security/main) -"ahf" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/security/main) -"ahg" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/effect/landmark/start{ - name = "Security Officer" - }, -/obj/structure/chair{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/security/main) -"ahh" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/table, -/obj/item/weapon/paper_bin{ - pixel_x = -3; - pixel_y = 7 - }, -/turf/open/floor/plasteel, -/area/security/main) -"ahi" = ( -/obj/structure/disposalpipe/sortjunction{ - dir = 4; - icon_state = "pipe-j2s"; - sortType = 7 - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 8 - }, -/turf/open/floor/plasteel/red/side{ - dir = 4 - }, -/area/security/main) -"ahj" = ( -/obj/machinery/door/window/eastright{ - base_state = "left"; - dir = 8; - icon_state = "left"; - name = "Security Delivery"; - req_access_txt = "1" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/delivery, -/area/security/main) -"ahk" = ( -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint) -"ahl" = ( -/obj/machinery/navbeacon{ - codes_txt = "delivery;dir=8"; - dir = 8; - freq = 1400; - location = "Security" - }, -/obj/structure/plasticflaps{ - opacity = 1 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 10 - }, -/turf/open/floor/plasteel/bot, -/area/security/main) -"ahm" = ( -/obj/structure/window/reinforced{ - dir = 4 - }, -/obj/machinery/iv_drip{ - density = 0 - }, -/obj/item/weapon/reagent_containers/blood/empty, -/turf/open/floor/plasteel/whitered/side{ - dir = 5 - }, -/area/security/brig) -"ahn" = ( -/turf/closed/wall, -/area/maintenance/fsmaint) -"aho" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/security/prison) -"ahp" = ( -/obj/structure/chair{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/black, -/area/security/prison) -"ahq" = ( -/obj/structure/table, -/obj/item/device/flashlight/lamp, -/turf/open/floor/plasteel/black, -/area/security/prison) -"ahr" = ( -/obj/structure/closet{ - name = "Evidence Closet" - }, -/turf/open/floor/plasteel/red/side{ - dir = 4 - }, -/area/security/brig) -"ahs" = ( -/obj/item/device/radio/intercom{ - freerange = 0; - frequency = 1459; - name = "Station Intercom (General)"; - pixel_x = 0; - pixel_y = 24 - }, -/obj/structure/table/glass, -/obj/machinery/computer/med_data/laptop, -/turf/open/floor/plasteel/whitered/side{ - dir = 1 - }, -/area/security/brig) -"aht" = ( -/turf/open/floor/plasteel/whitered/corner{ - tag = "icon-whiteredcorner (WEST)"; - dir = 8 - }, -/area/security/brig) -"ahu" = ( -/obj/item/weapon/storage/box/bodybags, -/obj/structure/extinguisher_cabinet{ - pixel_x = -27; - pixel_y = 0 - }, -/obj/item/weapon/reagent_containers/syringe{ - name = "steel point" - }, -/obj/item/weapon/reagent_containers/glass/bottle/charcoal, -/obj/item/weapon/reagent_containers/glass/bottle/epinephrine, -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/obj/structure/table/glass, -/turf/open/floor/plasteel/whitered/side{ - dir = 10 - }, -/area/security/brig) -"ahv" = ( -/obj/machinery/power/apc{ - dir = 8; - name = "Brig Control APC"; - pixel_x = -24; - pixel_y = 0 - }, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/turf/open/floor/plasteel/showroomfloor, -/area/security/warden) -"ahw" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/turf/open/floor/plasteel/showroomfloor, -/area/security/warden) -"ahx" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/turf/open/floor/plasteel/showroomfloor, -/area/security/warden) -"ahy" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/showroomfloor, -/area/security/warden) -"ahz" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/showroomfloor, -/area/security/warden) -"ahA" = ( -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/red/side{ - dir = 8 - }, -/area/security/main) -"ahB" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/showroomfloor, -/area/security/warden) -"ahC" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/manifold4w/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/security/main) -"ahD" = ( -/obj/machinery/door/window/westleft{ - base_state = "left"; - dir = 4; - icon_state = "left"; - name = "Brig Infirmary"; - req_access_txt = "0" - }, -/turf/open/floor/plasteel/whitered/side{ - dir = 4 - }, -/area/security/brig) -"ahE" = ( -/obj/machinery/door/airlock/glass_security{ - name = "Brig Control"; - req_access_txt = "3" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/showroomfloor, -/area/security/warden) -"ahF" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/security/main) -"ahG" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/security/main) -"ahH" = ( -/obj/structure/disposalpipe/junction{ - icon_state = "pipe-y"; - dir = 1 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/security/main) -"ahI" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/security/main) -"ahJ" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/security/main) -"ahK" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/structure/chair, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/obj/effect/landmark/start{ - name = "Security Officer" - }, -/turf/open/floor/plasteel, -/area/security/main) -"ahL" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/security/main) -"ahM" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/security/main) -"ahN" = ( -/obj/machinery/power/apc{ - dir = 4; - name = "Security Office APC"; - pixel_x = 24; - pixel_y = 0 - }, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 9 - }, -/turf/open/floor/plasteel/red/side{ - dir = 4 - }, -/area/security/main) -"ahO" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall, -/area/security/main) -"ahP" = ( -/turf/open/floor/plasteel/white, -/area/security/brig) -"ahQ" = ( -/obj/structure/closet/secure_closet/warden, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/showroomfloor, -/area/security/warden) -"ahR" = ( -/obj/structure/chair/office/dark, -/obj/effect/landmark/start{ - name = "Warden" - }, -/obj/machinery/button/door{ - id = "Prison Gate"; - name = "Prison Wing Lockdown"; - pixel_x = -27; - pixel_y = 8; - req_access_txt = "2" - }, -/obj/machinery/button/door{ - id = "Secure Gate"; - name = "Cell Shutters"; - pixel_x = -27; - pixel_y = -2; - req_access_txt = "0" - }, -/turf/open/floor/plasteel/showroomfloor, -/area/security/warden) -"ahS" = ( -/obj/structure/table, -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/showroomfloor, -/area/security/warden) -"ahT" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/maintenance/fsmaint) -"ahU" = ( -/obj/structure/closet{ - name = "Evidence Closet" - }, -/turf/open/floor/plasteel/red/side{ - dir = 10 - }, -/area/security/brig) -"ahV" = ( -/obj/structure/table, -/obj/item/weapon/folder/red, -/obj/item/device/taperecorder{ - pixel_y = 0 - }, -/turf/open/floor/plasteel/black, -/area/security/prison) -"ahW" = ( -/obj/structure/bodycontainer/morgue, -/obj/machinery/camera{ - c_tag = "Brig Infirmary"; - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/security/brig) -"ahX" = ( -/obj/structure/table, -/obj/item/device/radio/intercom{ - dir = 4; - name = "Station Intercom (General)"; - pixel_x = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 5 - }, -/turf/open/floor/plasteel/showroomfloor, -/area/security/warden) -"ahY" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/red/side{ - dir = 5 - }, -/area/security/brig) -"ahZ" = ( -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/obj/machinery/firealarm{ - dir = 1; - pixel_y = -24 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/red/side{ - dir = 10 - }, -/area/security/main) -"aia" = ( -/obj/structure/noticeboard{ - dir = 1; - pixel_y = -27 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/red/side, -/area/security/main) -"aib" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 10 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint) -"aic" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint) -"aid" = ( -/turf/open/floor/plasteel/whitered/side{ - dir = 10 - }, -/area/security/brig) -"aie" = ( -/obj/structure/table, -/obj/item/weapon/folder/red, -/obj/item/weapon/pen, -/obj/item/weapon/hand_labeler, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/item/weapon/book/manual/wiki/security_space_law, -/turf/open/floor/plasteel/showroomfloor, -/area/security/warden) -"aif" = ( -/obj/structure/disposalpipe/segment, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/fsmaint) -"aig" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/showroomfloor, -/area/security/warden) -"aih" = ( -/obj/structure/closet{ - name = "Evidence Closet" - }, -/turf/open/floor/plasteel/red/side{ - dir = 6 - }, -/area/security/brig) -"aii" = ( -/obj/structure/grille, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/warden) -"aij" = ( -/obj/machinery/light_switch{ - pixel_y = -23 - }, -/obj/machinery/disposal/bin, -/obj/structure/disposalpipe/trunk{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/showroomfloor, -/area/security/warden) -"aik" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 1 - }, -/turf/open/floor/plasteel/red/side, -/area/security/main) -"ail" = ( -/obj/machinery/camera{ - c_tag = "Brig Interrogation"; - dir = 8 - }, -/turf/open/floor/plasteel/black, -/area/security/prison) -"aim" = ( -/obj/machinery/light_switch{ - pixel_y = -23 - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/open/floor/plasteel/red/side, -/area/security/main) -"ain" = ( -/turf/open/floor/plasteel/whitered/side{ - dir = 8 - }, -/area/security/brig) -"aio" = ( -/obj/structure/table, -/obj/item/stack/sheet/metal{ - amount = 50 - }, -/obj/item/stack/sheet/rglass{ - amount = 50 - }, -/turf/open/floor/plasteel, -/area/ai_monitored/storage/eva) -"aip" = ( -/obj/machinery/light, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/red/side, -/area/security/main) -"aiq" = ( -/obj/machinery/camera{ - c_tag = "Security Office"; - dir = 1; - network = list("SS13") - }, -/obj/machinery/computer/secure_data, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/red/side, -/area/security/main) -"air" = ( -/obj/structure/chair, -/turf/open/floor/plating, -/area/security/vacantoffice2) -"ais" = ( -/obj/structure/filingcabinet, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/extinguisher_cabinet{ - pixel_x = 5; - pixel_y = -32 - }, -/turf/open/floor/plasteel/red/side, -/area/security/main) -"ait" = ( -/obj/item/device/radio/intercom{ - name = "Station Intercom (General)"; - pixel_y = -29 - }, -/obj/machinery/computer/security, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/red/side, -/area/security/main) -"aiu" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/turf/open/floor/plasteel/red/side, -/area/security/main) -"aiv" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/red/side, -/area/security/main) -"aiw" = ( -/obj/machinery/door/window/westleft{ - base_state = "right"; - dir = 4; - icon_state = "right"; - name = "Brig Infirmary"; - req_access_txt = "0" - }, -/turf/open/floor/plasteel/whitered/side{ - dir = 4 - }, -/area/security/brig) -"aix" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/red/side{ - dir = 6 - }, -/area/security/main) -"aiy" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/red/corner{ - dir = 4 - }, -/area/security/brig) -"aiz" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/red/corner{ - dir = 1 - }, -/area/security/brig) -"aiA" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/maintenance/fsmaint) -"aiB" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/black, -/area/security/prison) -"aiC" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/black, -/area/security/prison) -"aiD" = ( -/obj/structure/bodycontainer/morgue, -/turf/open/floor/plasteel/black, -/area/security/brig) -"aiE" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 10 - }, -/turf/open/floor/plasteel/black, -/area/security/prison) -"aiF" = ( -/obj/structure/bed, -/obj/item/clothing/suit/straight_jacket, -/turf/open/floor/plasteel/whitered/side, -/area/security/brig) -"aiG" = ( -/turf/open/floor/plasteel/red/side{ - dir = 5 - }, -/area/security/brig) -"aiH" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/red/side{ - dir = 1 - }, -/area/security/brig) -"aiI" = ( -/obj/structure/grille, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'HIGH VOLTAGE'"; - icon_state = "shock"; - name = "HIGH VOLTAGE"; - pixel_x = -32 - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/warden) -"aiJ" = ( -/obj/structure/table/reinforced, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/machinery/door/window/brigdoor{ - dir = 1; - name = "Armory Desk"; - req_access_txt = "3" - }, -/obj/machinery/door/window/southleft{ - name = "Reception Desk"; - req_access_txt = "63" - }, -/obj/item/weapon/paper_bin{ - pixel_x = -3; - pixel_y = 7 - }, -/obj/item/weapon/pen{ - pixel_x = 4; - pixel_y = 4 - }, -/turf/open/floor/plasteel/showroomfloor, -/area/security/warden) -"aiK" = ( -/obj/structure/grille, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/structure/cable, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/warden) -"aiL" = ( -/obj/structure/grille, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/warden) -"aiM" = ( -/obj/machinery/door/airlock/glass_security{ - name = "Brig Control"; - req_access_txt = "3" - }, -/turf/open/floor/plasteel/showroomfloor, -/area/security/warden) -"aiN" = ( -/obj/structure/grille, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/warden) -"aiO" = ( -/obj/structure/window/reinforced{ - dir = 4 - }, -/obj/structure/bed, -/obj/item/clothing/suit/straight_jacket, -/turf/open/floor/plasteel/whitered/side{ - dir = 6 - }, -/area/security/brig) -"aiP" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall/r_wall, -/area/security/main) -"aiQ" = ( -/obj/machinery/camera{ - c_tag = "Brig East" - }, -/turf/open/floor/plasteel/red/side{ - dir = 1 - }, -/area/security/brig) -"aiR" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/red/side{ - dir = 1 - }, -/area/security/brig) -"aiS" = ( -/obj/item/stack/rods, -/turf/open/space, -/area/space) -"aiT" = ( -/turf/closed/wall, -/area/security/processing) -"aiU" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/processing) -"aiV" = ( -/turf/closed/wall/r_wall, -/area/security/processing) -"aiW" = ( -/obj/machinery/door/airlock/security{ - name = "Interrogation"; - req_access = null; - req_access_txt = "63" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/black, -/area/security/prison) -"aiX" = ( -/turf/closed/wall/r_wall, -/area/security/brig) -"aiY" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 2; - on = 1 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/courtroom) -"aiZ" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/red/corner{ - dir = 1 - }, -/area/security/brig) -"aja" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/security/brig) -"ajb" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/security/brig) -"ajc" = ( -/turf/open/floor/plasteel/red/side{ - dir = 1 - }, -/area/security/brig) -"ajd" = ( -/obj/structure/sign/goldenplaque{ - pixel_y = 32 - }, -/turf/open/floor/plasteel/red/side{ - dir = 1 - }, -/area/security/brig) -"aje" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - on = 1 - }, -/obj/machinery/firealarm{ - dir = 2; - pixel_y = 24 - }, -/turf/open/floor/plasteel/red/side{ - dir = 1 - }, -/area/security/brig) -"ajf" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/red/side{ - dir = 1 - }, -/area/security/brig) -"ajg" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/security/brig) -"ajh" = ( -/obj/machinery/light_switch{ - pixel_y = 28 - }, -/obj/structure/closet/secure_closet/courtroom, -/obj/effect/decal/cleanable/cobweb, -/obj/structure/sign/securearea{ - pixel_x = -32 - }, -/obj/item/weapon/gavelhammer, -/turf/open/floor/plasteel, -/area/crew_quarters/courtroom) -"aji" = ( -/obj/structure/chair{ - name = "Judge" - }, -/turf/open/floor/plasteel/blue/side{ - dir = 9 - }, -/area/crew_quarters/courtroom) -"ajj" = ( -/obj/item/device/radio/intercom{ - broadcasting = 0; - listening = 1; - name = "Station Intercom (General)"; - pixel_y = 20 - }, -/obj/machinery/camera{ - c_tag = "Courtroom North" - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/courtroom) -"ajk" = ( -/obj/structure/chair{ - name = "Judge" - }, -/turf/open/floor/plasteel/blue/side{ - dir = 5 - }, -/area/crew_quarters/courtroom) -"ajl" = ( -/obj/structure/chair{ - name = "Judge" - }, -/obj/machinery/light{ - dir = 1 - }, -/turf/open/floor/plasteel/blue/side{ - dir = 1 - }, -/area/crew_quarters/courtroom) -"ajm" = ( -/obj/structure/window/reinforced{ - dir = 8 - }, -/turf/open/floor/plasteel/black, -/area/crew_quarters/courtroom) -"ajn" = ( -/turf/open/floor/plasteel, -/area/crew_quarters/courtroom) -"ajo" = ( -/turf/closed/wall, -/area/crew_quarters/courtroom) -"ajp" = ( -/turf/open/floor/plasteel/black, -/area/crew_quarters/courtroom) -"ajq" = ( -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/obj/structure/lattice/catwalk, -/turf/open/space, -/area/solar/auxport) -"ajr" = ( -/obj/machinery/computer/gulag_teleporter_computer, -/turf/open/floor/plasteel, -/area/security/processing) -"ajs" = ( -/obj/machinery/gulag_teleporter, -/turf/open/floor/plasteel, -/area/security/processing) -"ajt" = ( -/obj/structure/sign/securearea{ - pixel_x = 32; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/table, -/obj/item/weapon/storage/box/prisoner, -/obj/machinery/camera{ - c_tag = "Labor Shuttle Dock North" - }, -/turf/open/floor/plasteel, -/area/security/processing) -"aju" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 6 - }, -/obj/machinery/computer/security{ - name = "Labor Camp Monitoring"; - network = list("Labor") - }, -/turf/open/floor/plasteel, -/area/security/processing) -"ajv" = ( -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/red/side{ - dir = 9 - }, -/area/security/brig) -"ajw" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall/r_wall, -/area/security/brig) -"ajx" = ( -/obj/machinery/firealarm{ - dir = 2; - pixel_y = 24 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/red/side{ - dir = 1 - }, -/area/security/brig) -"ajy" = ( -/obj/machinery/power/apc{ - dir = 1; - name = "Labor Shuttle Dock APC"; - pixel_y = 24 - }, -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/red/side{ - dir = 1 - }, -/area/security/brig) -"ajz" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 1 - }, -/turf/open/floor/plasteel/red/side{ - dir = 1 - }, -/area/security/brig) -"ajA" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/open/floor/plasteel/red/side{ - dir = 1 - }, -/area/security/brig) -"ajB" = ( -/obj/machinery/atmospherics/pipe/manifold4w/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/security/brig) -"ajC" = ( -/obj/item/weapon/storage/toolbox/drone, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/ai_monitored/security/armory) -"ajD" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/security/brig) -"ajE" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral/side{ - dir = 5 - }, -/area/crew_quarters/courtroom) -"ajF" = ( -/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, -/turf/open/floor/plasteel/red/corner{ - dir = 2 - }, -/area/security/brig) -"ajG" = ( -/obj/machinery/light, -/obj/machinery/door_timer{ - id = "Cell 1"; - name = "Cell 1"; - pixel_y = -32 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/red/side, -/area/security/brig) -"ajH" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/crew_quarters/courtroom) -"ajI" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/security/brig) -"ajJ" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/security/brig) -"ajK" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/security/brig) -"ajL" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/red/side{ - dir = 4 - }, -/area/security/brig) -"ajM" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/courtroom) -"ajN" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/security{ - name = "Brig"; - req_access = null; - req_access_txt = "63; 42" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/security/brig) -"ajO" = ( -/obj/structure/table/wood, -/obj/item/device/radio/intercom{ - broadcasting = 0; - dir = 8; - listening = 1; - name = "Station Intercom (Court)"; - pixel_x = 0 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 1 - }, -/area/crew_quarters/courtroom) -"ajP" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 9 - }, -/area/crew_quarters/courtroom) -"ajQ" = ( -/obj/structure/table/wood, -/obj/item/weapon/book/manual/wiki/security_space_law, -/turf/open/floor/plasteel/neutral/side{ - dir = 1 - }, -/area/crew_quarters/courtroom) -"ajR" = ( -/obj/structure/table/wood, -/obj/item/weapon/gavelblock, -/turf/open/floor/plasteel/neutral/side{ - dir = 1 - }, -/area/crew_quarters/courtroom) -"ajS" = ( -/obj/structure/window/reinforced, -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/structure/chair{ - dir = 8 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/crew_quarters/courtroom) -"ajT" = ( -/obj/structure/chair{ - dir = 8; - name = "Defense" - }, -/turf/open/floor/plasteel/green/side{ - dir = 5 - }, -/area/crew_quarters/courtroom) -"ajU" = ( -/obj/machinery/door/window/southleft{ - name = "Court Cell"; - req_access_txt = "2" - }, -/turf/open/floor/plasteel/black, -/area/crew_quarters/courtroom) -"ajV" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/maintenance/auxsolarport) -"ajW" = ( -/obj/machinery/door/airlock/external{ - name = "Solar Maintenance"; - req_access = null; - req_access_txt = "10; 13" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plating, -/area/maintenance/auxsolarport) -"ajX" = ( -/obj/structure/grille, -/obj/structure/window/shuttle, -/turf/open/floor/plating, -/area/shuttle/labor) -"ajY" = ( -/obj/machinery/atmospherics/pipe/simple/yellow/visible, -/obj/machinery/atmospherics/components/binary/pump{ - dir = 8; - name = "Unfiltered to Port"; - on = 0 - }, -/turf/open/floor/plasteel, -/area/atmos) -"ajZ" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; - icon_state = "space"; - layer = 4; - name = "EXTERNAL AIRLOCK"; - pixel_x = 0; - pixel_y = 32 - }, -/turf/open/floor/plating, -/area/mining_construction) -"aka" = ( -/obj/structure/chair{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/security/processing) -"akb" = ( -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/turf/open/floor/plasteel/warning/corner{ - dir = 1 - }, -/area/security/processing) -"akc" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 6 - }, -/turf/open/floor/plasteel, -/area/security/processing) -"akd" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/security/processing) -"ake" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/red/side{ - dir = 8 - }, -/area/security/brig) -"akf" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/security{ - name = "Labor Shuttle"; - req_access = null; - req_access_txt = "2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/security/brig) -"akg" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/camera{ - c_tag = "Brig West"; - dir = 1 - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/open/floor/plasteel/red/corner{ - dir = 2 - }, -/area/security/brig) -"akh" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/security/brig) -"aki" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/red/corner{ - dir = 8 - }, -/area/security/brig) -"akj" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/red/side, -/area/security/brig) -"akk" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 1 - }, -/turf/open/floor/plasteel/red/corner{ - dir = 2 - }, -/area/security/brig) -"akl" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/security/brig) -"akm" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/red/corner{ - dir = 8 - }, -/area/security/brig) -"akn" = ( -/obj/structure/table/wood, -/obj/item/weapon/folder/blue, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/crew_quarters/courtroom) -"ako" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/door_timer{ - id = "Cell 2"; - name = "Cell 2"; - pixel_y = -32 - }, -/turf/open/floor/plasteel/red/side, -/area/security/brig) -"akp" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/red/side, -/area/security/brig) -"akq" = ( -/obj/machinery/camera{ - c_tag = "Brig Central"; - dir = 1 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/door_timer{ - id = "Cell 3"; - name = "Cell 3"; - pixel_y = -32 - }, -/turf/open/floor/plasteel/red/side, -/area/security/brig) -"akr" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/open/floor/plasteel/red/side{ - dir = 9 - }, -/area/security/brig) -"aks" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/open/floor/plasteel/red/corner{ - dir = 8 - }, -/area/security/brig) -"akt" = ( -/obj/machinery/light, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/door_timer{ - id = "Cell 4"; - name = "Cell 4"; - pixel_y = -32 - }, -/turf/open/floor/plasteel/red/side, -/area/security/brig) -"aku" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 1 - }, -/turf/open/floor/plasteel/red/side{ - dir = 4 - }, -/area/security/brig) -"akv" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/security/brig) -"akw" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/courtroom) -"akx" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/closed/wall/r_wall, -/area/security/brig) -"aky" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral/side{ - dir = 8 - }, -/area/crew_quarters/courtroom) -"akz" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/floorgrime, -/area/security/brig) -"akA" = ( -/obj/structure/chair{ - dir = 8; - name = "Defense" - }, -/turf/open/floor/plasteel/green/side{ - dir = 6 - }, -/area/crew_quarters/courtroom) -"akB" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plating, -/area/maintenance/auxsolarport) -"akC" = ( -/obj/machinery/computer/shuttle/labor, -/obj/structure/reagent_dispensers/peppertank{ - pixel_x = -31; - pixel_y = 0 - }, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/labor) -"akD" = ( -/turf/closed/wall/mineral/titanium, -/area/shuttle/labor) -"akE" = ( -/obj/structure/table, -/obj/item/weapon/folder/red, -/obj/item/weapon/restraints/handcuffs, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/labor) -"akF" = ( -/obj/structure/chair/office/dark{ - dir = 1 - }, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/labor) -"akG" = ( -/obj/structure/grille, -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; - icon_state = "space"; - layer = 4; - name = "EXTERNAL AIRLOCK"; - pixel_x = 0; - pixel_y = 32 - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/processing) -"akH" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/plasteel, -/area/security/processing) -"akI" = ( -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/security/processing) -"akJ" = ( -/obj/machinery/light_switch{ - pixel_x = 27 - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/security/processing) -"akK" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/security/processing) -"akL" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/meter, -/turf/open/floor/plating, -/area/maintenance/fpmaint) -"akM" = ( -/obj/structure/grille, -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/brig) -"akN" = ( -/obj/structure/grille, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/brig) -"akO" = ( -/obj/machinery/door/window/brigdoor{ - id = "Cell 1"; - name = "Cell 1"; - req_access_txt = "1" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/red/side, -/area/security/brig) -"akP" = ( -/obj/structure/grille, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/brig) -"akQ" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/closed/wall, -/area/security/brig) -"akR" = ( -/obj/machinery/door/window/brigdoor{ - id = "Cell 2"; - name = "Cell 2"; - req_access_txt = "1" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/red/side, -/area/security/brig) -"akS" = ( -/obj/structure/grille, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/brig) -"akT" = ( -/obj/machinery/door/window/brigdoor{ - id = "Cell 3"; - name = "Cell 3"; - req_access_txt = "1" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/red/side, -/area/security/brig) -"akU" = ( -/obj/machinery/door/airlock/glass_security{ - name = "Brig Desk"; - req_access_txt = "1" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/turf/open/floor/plasteel/black, -/area/security/brig) -"akV" = ( -/obj/structure/grille, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/brig) -"akW" = ( -/obj/machinery/door/airlock/glass_security{ - cyclelinkeddir = 2; - id_tag = "innerbrig"; - name = "Brig"; - req_access_txt = "63" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/red/side{ - dir = 5 - }, -/area/security/brig) -"akX" = ( -/obj/machinery/door/airlock/glass_security{ - cyclelinkeddir = 2; - id_tag = "innerbrig"; - name = "Brig"; - req_access_txt = "63" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/red/side{ - dir = 9 - }, -/area/security/brig) -"akY" = ( -/obj/structure/grille, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/brig) -"akZ" = ( -/obj/structure/grille, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/brig) -"ala" = ( -/obj/machinery/door/window/brigdoor{ - id = "Cell 4"; - name = "Cell 4"; - req_access_txt = "1" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/red/side, -/area/security/brig) -"alb" = ( -/obj/structure/chair{ - dir = 4; - name = "Prosecution" - }, -/turf/open/floor/plasteel/red/side{ - dir = 9 - }, -/area/crew_quarters/courtroom) -"alc" = ( -/obj/structure/table/wood, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral/side{ - dir = 8 - }, -/area/crew_quarters/courtroom) -"ald" = ( -/obj/machinery/holopad, -/turf/open/floor/plasteel/bot, -/area/crew_quarters/courtroom) -"ale" = ( -/obj/structure/table/wood, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral/side{ - dir = 6 - }, -/area/crew_quarters/courtroom) -"alf" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/floorgrime, -/area/security/brig) -"alg" = ( -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/obj/structure/lattice/catwalk, -/turf/open/space, -/area/solar/auxstarboard) -"alh" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/door/airlock/external{ - name = "Solar Maintenance"; - req_access = null; - req_access_txt = "10; 13" - }, -/turf/open/floor/plating, -/area/maintenance/auxsolarport) -"ali" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/maintenance/fpmaint2) -"alj" = ( -/turf/open/floor/mineral/plastitanium, -/area/shuttle/labor) -"alk" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/visible{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/atmos) -"all" = ( -/obj/machinery/mineral/labor_claim_console{ - machinedir = 2; - pixel_x = 30; - pixel_y = 30 - }, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/labor) -"alm" = ( -/obj/machinery/button/flasher{ - id = "gulagshuttleflasher"; - name = "Flash Control"; - pixel_x = 0; - pixel_y = -26; - req_access_txt = "1" - }, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/labor) -"aln" = ( -/obj/machinery/door/airlock/external{ - cyclelinkeddir = 4; - name = "Labor Camp Shuttle Airlock"; - req_access_txt = "2"; - shuttledocked = 1 - }, -/turf/open/floor/plating, -/area/security/processing) -"alo" = ( -/obj/machinery/door/airlock/titanium{ - name = "Labor Shuttle Airlock"; - req_access_txt = "2" - }, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/labor) -"alp" = ( -/turf/open/floor/plating, -/area/security/processing) -"alq" = ( -/turf/open/floor/plasteel, -/area/security/processing) -"alr" = ( -/obj/machinery/airalarm{ - dir = 8; - icon_state = "alarm0"; - pixel_x = 24 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/security/processing) -"als" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/security/processing) -"alt" = ( -/obj/structure/reagent_dispensers/peppertank, -/turf/closed/wall/r_wall, -/area/ai_monitored/security/armory) -"alu" = ( -/obj/machinery/nuclearbomb/selfdestruct, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/ai_monitored/nuke_storage) -"alv" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/obj/item/device/radio/intercom{ - desc = "Talk through this. It looks like it has been modified to not broadcast."; - dir = 2; - name = "Prison Intercom (General)"; - pixel_x = -25; - pixel_y = -2; - prison_radio = 1 - }, -/turf/open/floor/plasteel/floorgrime, -/area/security/brig) -"alw" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - external_pressure_bound = 101.325; - on = 1; - pressure_checks = 1 - }, -/obj/machinery/light/small{ - dir = 4 - }, -/turf/open/floor/plasteel/floorgrime, -/area/security/brig) -"alx" = ( -/turf/open/floor/plasteel/floorgrime, -/area/security/brig) -"aly" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/obj/item/device/radio/intercom{ - desc = "Talk through this. It looks like it has been modified to not broadcast."; - dir = 2; - name = "Prison Intercom (General)"; - pixel_x = -25; - pixel_y = -2; - prison_radio = 1 - }, -/turf/open/floor/plasteel/floorgrime, -/area/security/brig) -"alz" = ( -/obj/machinery/button/door{ - id = "briggate"; - name = "Desk Shutters"; - pixel_x = -26; - pixel_y = 6; - req_access_txt = "0" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/button/flasher{ - id = "brigentry"; - pixel_x = -28; - pixel_y = -8 - }, -/turf/open/floor/plasteel/black, -/area/security/brig) -"alA" = ( -/obj/structure/table/reinforced, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "briggate"; - name = "security shutters" - }, -/obj/machinery/door/window/eastleft{ - name = "Brig Desk"; - req_access_txt = "1" - }, -/obj/item/weapon/paper_bin{ - pixel_x = -3; - pixel_y = 7 - }, -/obj/item/weapon/pen, -/turf/open/floor/plasteel/black, -/area/security/brig) -"alB" = ( -/obj/machinery/computer/secure_data, -/turf/open/floor/plasteel/black, -/area/security/brig) -"alC" = ( -/turf/open/floor/plasteel/red/side{ - dir = 9 - }, -/area/security/brig) -"alD" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/crew_quarters/courtroom) -"alE" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - external_pressure_bound = 101.325; - on = 1; - pressure_checks = 1 - }, -/obj/machinery/flasher{ - id = "Cell 4"; - pixel_x = 28 - }, -/obj/machinery/light/small{ - dir = 4 - }, -/turf/open/floor/plasteel/floorgrime, -/area/security/brig) -"alF" = ( -/obj/machinery/atmospherics/components/unary/tank/air{ - dir = 2 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2) -"alG" = ( -/obj/structure/chair{ - dir = 4; - name = "Prosecution" - }, -/turf/open/floor/plasteel/red/side{ - dir = 10 - }, -/area/crew_quarters/courtroom) -"alH" = ( -/turf/open/floor/plasteel/neutral/side, -/area/crew_quarters/courtroom) -"alI" = ( -/obj/structure/table/wood, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral/side{ - dir = 10 - }, -/area/crew_quarters/courtroom) -"alJ" = ( -/obj/item/device/radio/beacon, -/turf/open/floor/plasteel/neutral/side, -/area/crew_quarters/courtroom) -"alK" = ( -/obj/structure/disposalpipe/segment, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/fsmaint) -"alL" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/power/apc{ - dir = 8; - name = "Courtroom APC"; - pixel_x = -24; - pixel_y = 0 - }, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/crew_quarters/courtroom) -"alM" = ( -/obj/structure/disposalpipe/segment, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/fsmaint) -"alN" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/lattice/catwalk, -/turf/open/space, -/area/solar/auxstarboard) -"alO" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"alP" = ( -/turf/closed/wall, -/area/maintenance/fsmaint2) -"alQ" = ( -/obj/machinery/power/solar_control{ - id = "auxsolareast"; - name = "Fore Port Solar Control"; - track = 0 - }, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/turf/open/floor/plating, -/area/maintenance/auxsolarport) -"alR" = ( -/turf/closed/wall/r_wall, -/area/maintenance/auxsolarport) -"alS" = ( -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; - icon_state = "space"; - layer = 4; - name = "EXTERNAL AIRLOCK"; - pixel_x = 32; - pixel_y = 0 - }, -/turf/open/floor/plating, -/area/maintenance/auxsolarport) -"alT" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/turf/open/floor/plating, -/area/maintenance/auxsolarport) -"alU" = ( -/turf/closed/wall, -/area/maintenance/fpmaint2) -"alV" = ( -/obj/effect/decal/cleanable/vomit, -/turf/open/floor/plating, -/area/maintenance/fpmaint2) -"alW" = ( -/obj/item/weapon/cigbutt/cigarbutt, -/obj/effect/decal/cleanable/blood/old, -/turf/open/floor/plating, -/area/maintenance/fpmaint2) -"alX" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/visible{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible, -/turf/open/floor/plasteel, -/area/atmos) -"alY" = ( -/obj/machinery/door/airlock/titanium{ - name = "Labor Shuttle Airlock"; - req_access_txt = "2" - }, -/turf/open/floor/plasteel/black, -/area/shuttle/labor) -"alZ" = ( -/obj/machinery/mineral/stacking_machine/laborstacker{ - input_dir = 2; - output_dir = 1 - }, -/turf/open/floor/plasteel/black, -/area/shuttle/labor) -"ama" = ( -/mob/living/simple_animal/sloth/paperwork, -/turf/open/floor/plasteel, -/area/quartermaster/storage) -"amb" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel, -/area/security/processing) -"amc" = ( -/obj/machinery/computer/shuttle/labor, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/security/processing) -"amd" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/security/processing) -"ame" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/security/processing) -"amf" = ( -/obj/structure/bed, -/obj/item/weapon/bedsheet, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/flasher{ - id = "Cell 1"; - pixel_x = -28 - }, -/turf/open/floor/plasteel/floorgrime, -/area/security/brig) -"amg" = ( -/obj/structure/closet/secure_closet/brig{ - id = "Cell 1"; - name = "Cell 1 Locker" - }, -/turf/open/floor/plasteel/floorgrime, -/area/security/brig) -"amh" = ( -/obj/structure/bed, -/obj/item/weapon/bedsheet, -/obj/machinery/flasher{ - id = "Cell 2"; - pixel_x = -28 - }, -/turf/open/floor/plasteel/floorgrime, -/area/security/brig) -"ami" = ( -/obj/structure/closet/secure_closet/brig{ - id = "Cell 2"; - name = "Cell 2 Locker" - }, -/turf/open/floor/plasteel/floorgrime, -/area/security/brig) -"amj" = ( -/obj/structure/bed, -/obj/item/weapon/bedsheet, -/obj/machinery/flasher{ - id = "Cell 3"; - pixel_x = -28 - }, -/turf/open/floor/plasteel/floorgrime, -/area/security/brig) -"amk" = ( -/obj/structure/closet/secure_closet/brig{ - id = "Cell 3"; - name = "Cell 3 Locker" - }, -/turf/open/floor/plasteel/floorgrime, -/area/security/brig) -"aml" = ( -/obj/machinery/light/small{ - dir = 8 - }, -/obj/machinery/button/door{ - desc = "A remote control switch for the medbay foyer."; - id = "outerbrig"; - name = "Brig Exterior Doors Control"; - normaldoorcontrol = 1; - pixel_x = -26; - pixel_y = -5; - req_access_txt = "63" - }, -/obj/machinery/button/door{ - desc = "A remote control switch for the medbay foyer."; - id = "innerbrig"; - name = "Brig Interior Doors Control"; - normaldoorcontrol = 1; - pixel_x = -26; - pixel_y = 5; - req_access_txt = "63" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/black, -/area/security/brig) -"amm" = ( -/obj/structure/table/reinforced, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "briggate"; - name = "security shutters" - }, -/obj/machinery/door/window/eastright{ - name = "Brig Desk"; - req_access_txt = "2" - }, -/obj/item/weapon/restraints/handcuffs, -/obj/item/device/radio/off, -/turf/open/floor/plasteel/black, -/area/security/brig) -"amn" = ( -/obj/structure/chair/office/dark{ - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/security/brig) -"amo" = ( -/obj/machinery/flasher{ - id = "brigentry"; - pixel_x = 28 - }, -/turf/open/floor/plasteel/red/side{ - dir = 5 - }, -/area/security/brig) -"amp" = ( -/obj/structure/closet/secure_closet/brig{ - id = "Cell 4"; - name = "Cell 4 Locker" - }, -/turf/open/floor/plasteel/floorgrime, -/area/security/brig) -"amq" = ( -/obj/structure/bed, -/obj/item/weapon/bedsheet, -/obj/item/device/radio/intercom{ - desc = "Talk through this. It looks like it has been modified to not broadcast."; - dir = 2; - name = "Prison Intercom (General)"; - pixel_x = 25; - pixel_y = -2; - prison_radio = 1 - }, -/turf/open/floor/plasteel/floorgrime, -/area/security/brig) -"amr" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/crew_quarters/courtroom) -"ams" = ( -/obj/structure/grille, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/crew_quarters/courtroom) -"amt" = ( -/obj/machinery/door/airlock/glass{ - name = "Courtroom"; - req_access_txt = "42" - }, -/turf/open/floor/plasteel/black, -/area/crew_quarters/courtroom) -"amu" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - external_pressure_bound = 101.325; - on = 1; - pressure_checks = 1 - }, -/turf/open/floor/plasteel/black, -/area/crew_quarters/courtroom) -"amv" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/door/airlock/external{ - cyclelinkeddir = 2; - name = "Solar Maintenance"; - req_access = null; - req_access_txt = "10; 13" - }, -/turf/open/floor/plating, -/area/maintenance/auxsolarstarboard) -"amw" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/maintenance/auxsolarstarboard) -"amx" = ( -/obj/structure/chair{ - dir = 1 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"amy" = ( -/obj/structure/chair/stool{ - pixel_y = 8 - }, -/turf/open/floor/plating, -/area/maintenance/auxsolarport) -"amz" = ( -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/machinery/power/terminal, -/obj/machinery/light/small{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/auxsolarport) -"amA" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/turf/open/floor/plating, -/area/maintenance/auxsolarport) -"amB" = ( -/obj/structure/chair{ - dir = 4 - }, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/escape) -"amC" = ( -/turf/open/floor/plating, -/area/maintenance/fpmaint2) -"amD" = ( -/obj/structure/sink{ - icon_state = "sink"; - dir = 8; - pixel_x = -12; - pixel_y = 2 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2) -"amE" = ( -/obj/structure/bed, -/obj/effect/landmark{ - name = "xeno_spawn"; - pixel_x = -1 - }, -/obj/item/weapon/bedsheet, -/turf/open/floor/plating, -/area/maintenance/fpmaint2) -"amF" = ( -/obj/machinery/computer/slot_machine{ - balance = 15; - money = 500 - }, -/obj/item/weapon/coin/iron, -/obj/item/weapon/coin/diamond, -/obj/item/weapon/coin/diamond, -/obj/item/weapon/coin/diamond, -/turf/open/floor/plating, -/area/maintenance/fpmaint2) -"amG" = ( -/obj/structure/chair{ - dir = 1 - }, -/obj/item/toy/sword, -/turf/open/floor/plating, -/area/maintenance/fpmaint2) -"amH" = ( -/obj/structure/chair{ - dir = 1 - }, -/obj/structure/noticeboard{ - dir = 8; - pixel_x = 27; - pixel_y = 0 - }, -/obj/item/trash/plate, -/turf/open/floor/plating, -/area/maintenance/fpmaint2) -"amI" = ( -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/labor) -"amJ" = ( -/obj/machinery/mineral/labor_claim_console{ - machinedir = 1; - pixel_x = 30; - pixel_y = 0 - }, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/labor) -"amK" = ( -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'KEEP CLEAR OF DOCKING AREA'."; - name = "KEEP CLEAR: DOCKING AREA"; - pixel_y = 0 - }, -/turf/closed/wall, -/area/security/processing) -"amL" = ( -/obj/structure/grille, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/processing) -"amM" = ( -/obj/machinery/door/airlock/glass_security{ - name = "Prisoner Processing"; - req_access_txt = "2" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/security/processing) -"amN" = ( -/obj/structure/table, -/obj/item/clothing/glasses/sunglasses{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/clothing/glasses/sunglasses{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/clothing/ears/earmuffs{ - pixel_x = -3; - pixel_y = -2 - }, -/obj/item/clothing/ears/earmuffs{ - pixel_x = -3; - pixel_y = -2 - }, -/turf/open/floor/plasteel/showroomfloor, -/area/security/warden) -"amO" = ( -/turf/open/space, -/obj/machinery/porta_turret/syndicate{ - dir = 9 - }, -/turf/closed/wall/mineral/plastitanium{ - dir = 8; - icon_state = "diagonalWall3" - }, -/area/shuttle/syndicate) -"amP" = ( -/obj/structure/grille, -/obj/machinery/door/poddoor/shutters{ - id = "syndieshutters"; - name = "blast shutters" - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/shuttle/syndicate) -"amQ" = ( -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/structure/grille, -/obj/structure/cable, -/obj/machinery/door/poddoor/preopen{ - id = "Secure Gate"; - name = "brig shutters" - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/brig) -"amR" = ( -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/structure/grille, -/obj/machinery/door/poddoor/preopen{ - id = "Secure Gate"; - name = "brig shutters" - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/brig) -"amS" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/closed/wall/r_wall, -/area/security/brig) -"amT" = ( -/obj/structure/table/reinforced, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "briggate"; - name = "security shutters" - }, -/obj/machinery/door/window/southleft{ - name = "Brig Desk"; - req_access_txt = "1" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/turf/open/floor/plasteel/black, -/area/security/brig) -"amU" = ( -/obj/structure/grille, -/obj/machinery/door/poddoor/preopen{ - id = "briggate"; - name = "security blast door" - }, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/brig) -"amV" = ( -/obj/structure/table/reinforced, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "briggate"; - name = "security shutters" - }, -/obj/machinery/door/window/southleft{ - base_state = "right"; - icon_state = "right"; - name = "Brig Desk"; - req_access_txt = "1" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/black, -/area/security/brig) -"amW" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass_security{ - cyclelinkeddir = 1; - id_tag = "outerbrig"; - name = "Brig"; - req_access_txt = "63" - }, -/turf/open/floor/plasteel/red/side{ - dir = 5 - }, -/area/security/brig) -"amX" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass_security{ - cyclelinkeddir = 1; - id_tag = "outerbrig"; - name = "Brig"; - req_access_txt = "63" - }, -/turf/open/floor/plasteel/red/side{ - dir = 9 - }, -/area/security/brig) -"amY" = ( -/obj/structure/chair{ - dir = 1 - }, -/turf/open/floor/plasteel/black, -/area/crew_quarters/courtroom) -"amZ" = ( -/obj/structure/chair{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/black, -/area/crew_quarters/courtroom) -"ana" = ( -/obj/structure/chair{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/black, -/area/crew_quarters/courtroom) -"anb" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/meter, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/maintenance/fsmaint) -"anc" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plating, -/area/maintenance/fsmaint) -"and" = ( -/obj/machinery/light/small{ - dir = 4 - }, -/obj/structure/rack, -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plating, -/area/maintenance/fsmaint) -"ane" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plating, -/area/maintenance/auxsolarstarboard) -"anf" = ( -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"ang" = ( -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/machinery/power/apc{ - dir = 8; - name = "Fore Port Solar APC"; - pixel_x = -25; - pixel_y = 3 - }, -/obj/machinery/camera{ - c_tag = "Fore Port Solar Control"; - dir = 1 - }, -/turf/open/floor/plating, -/area/maintenance/auxsolarport) -"anh" = ( -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/machinery/power/smes, -/turf/open/floor/plating, -/area/maintenance/auxsolarport) -"ani" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/turf/open/floor/plating, -/area/maintenance/auxsolarport) -"anj" = ( -/obj/machinery/atmospherics/pipe/manifold/supplymain/hidden{ - icon_state = "manifold"; - dir = 8 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2) -"ank" = ( -/obj/machinery/door/airlock/maintenance{ - req_access_txt = "12" - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2) -"anl" = ( -/obj/machinery/atmospherics/pipe/simple/supplymain/hidden{ - icon_state = "intact"; - dir = 9 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2) -"anm" = ( -/obj/item/trash/sosjerky, -/turf/open/floor/plating, -/area/maintenance/fpmaint2) -"ann" = ( -/obj/item/weapon/electronics/airalarm, -/obj/item/weapon/circuitboard/machine/seed_extractor, -/obj/structure/table, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 4; - name = "4maintenance loot spawner" - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2) -"ano" = ( -/turf/open/floor/plating/warnplate{ - dir = 1 - }, -/area/maintenance/fpmaint2) -"anp" = ( -/obj/item/weapon/cigbutt, -/turf/open/floor/plating/warnplate{ - dir = 1 - }, -/area/maintenance/fpmaint2) -"anq" = ( -/obj/structure/chair{ - dir = 4 - }, -/turf/open/floor/mineral/titanium, -/area/shuttle/escape) -"anr" = ( -/obj/structure/chair{ - dir = 8 - }, -/obj/machinery/flasher{ - id = "gulagshuttleflasher"; - pixel_x = 25 - }, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/labor) -"ans" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/plasteel/red/side{ - dir = 5 - }, -/area/security/processing) -"ant" = ( -/obj/machinery/gulag_item_reclaimer{ - pixel_y = 24 - }, -/turf/open/floor/plasteel/warning{ - dir = 9 - }, -/area/security/processing) -"anu" = ( -/obj/machinery/button/door{ - desc = "A remote control switch for the exit."; - id = "laborexit"; - name = "exit button"; - normaldoorcontrol = 1; - pixel_x = 26; - pixel_y = -6; - req_access_txt = "0" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 9 - }, -/turf/open/floor/plasteel/red/side{ - dir = 5 - }, -/area/security/processing) -"anv" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/red/side{ - dir = 5 - }, -/area/security/processing) -"anw" = ( -/turf/open/floor/plasteel/red/corner{ - dir = 1 - }, -/area/hallway/primary/fore) -"anx" = ( -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'HIGH VOLTAGE'"; - icon_state = "shock"; - name = "HIGH VOLTAGE"; - pixel_y = 32 - }, -/turf/open/floor/plasteel/red/corner{ - dir = 1 - }, -/area/hallway/primary/fore) -"any" = ( -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'HIGH VOLTAGE'"; - icon_state = "shock"; - name = "HIGH VOLTAGE"; - pixel_y = 32 - }, -/obj/machinery/light{ - dir = 1 - }, -/turf/open/floor/plasteel/red/corner{ - dir = 1 - }, -/area/hallway/primary/fore) -"anz" = ( -/turf/open/floor/plasteel, -/area/hallway/primary/fore) -"anA" = ( -/turf/open/floor/plasteel/red/corner{ - dir = 4 - }, -/area/hallway/primary/fore) -"anB" = ( -/obj/machinery/light{ - dir = 1 - }, -/obj/structure/sign/securearea{ - pixel_y = 32 - }, -/turf/open/floor/plasteel/red/corner{ - dir = 4 - }, -/area/hallway/primary/fore) -"anC" = ( -/obj/structure/grille, -/obj/structure/window/fulltile, -/turf/open/floor/plating, -/area/crew_quarters/courtroom) -"anD" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 1 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint) -"anE" = ( -/obj/machinery/door/airlock/external{ - cyclelinkeddir = 4; - req_access_txt = "13" - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint) -"anF" = ( -/turf/open/floor/plating, -/area/maintenance/fsmaint) -"anG" = ( -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; - icon_state = "space"; - layer = 4; - name = "EXTERNAL AIRLOCK"; - pixel_x = 0; - pixel_y = 32 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint) -"anH" = ( -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'HIGH VOLTAGE'"; - icon_state = "shock"; - name = "HIGH VOLTAGE"; - pixel_y = 0 - }, -/turf/closed/wall/r_wall, -/area/maintenance/auxsolarport) -"anI" = ( -/obj/machinery/door/airlock/engineering{ - icon_state = "door_closed"; - locked = 0; - name = "Fore Port Solar Access"; - req_access_txt = "10" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plating, -/area/maintenance/auxsolarport) -"anJ" = ( -/obj/machinery/atmospherics/pipe/simple/supplymain/hidden{ - icon_state = "intact"; - dir = 1 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2) -"anK" = ( -/obj/effect/decal/cleanable/egg_smudge, -/turf/open/floor/plating, -/area/maintenance/fpmaint2) -"anL" = ( -/obj/structure/table, -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plating, -/area/maintenance/fpmaint2) -"anM" = ( -/obj/structure/closet/crate, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/labor) -"anN" = ( -/obj/machinery/door/airlock/external{ - cyclelinkeddir = 4; - name = "Labor Camp Shuttle Airlock"; - shuttledocked = 1 - }, -/turf/open/floor/plating, -/area/security/processing) -"anO" = ( -/obj/machinery/door/airlock/titanium{ - id_tag = "prisonshuttle"; - name = "Labor Shuttle Airlock" - }, -/obj/docking_port/mobile{ - dir = 8; - dwidth = 2; - height = 5; - id = "laborcamp"; - name = "labor camp shuttle"; - port_angle = 90; - width = 9 - }, -/obj/docking_port/stationary{ - dir = 8; - dwidth = 2; - height = 5; - id = "laborcamp_home"; - name = "fore bay 1"; - width = 9 - }, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/labor) -"anP" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/security{ - id_tag = "laborexit"; - name = "Labor Shuttle"; - req_access = null; - req_access_txt = "63" - }, -/turf/open/floor/plasteel, -/area/security/processing) -"anQ" = ( -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'HIGH VOLTAGE'"; - icon_state = "shock"; - name = "HIGH VOLTAGE"; - pixel_y = 32 - }, -/obj/machinery/light{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/fore) -"anR" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/fore) -"anS" = ( -/obj/machinery/holopad, -/turf/open/floor/plasteel, -/area/hallway/primary/fore) -"anT" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 2; - on = 1 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/fore) -"anU" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass{ - name = "Courtroom" - }, -/turf/open/floor/plasteel/black, -/area/crew_quarters/courtroom) -"anV" = ( -/obj/machinery/light/small, -/turf/open/floor/plasteel/black, -/area/crew_quarters/courtroom) -"anW" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/black, -/area/crew_quarters/courtroom) -"anX" = ( -/obj/structure/extinguisher_cabinet{ - pixel_x = 5; - pixel_y = -32 - }, -/obj/machinery/camera{ - c_tag = "Courtroom South"; - dir = 1 - }, -/turf/open/floor/plasteel/black, -/area/crew_quarters/courtroom) -"anY" = ( -/obj/machinery/airalarm{ - dir = 1; - icon_state = "alarm0"; - pixel_y = -22 - }, -/turf/open/floor/plasteel/black, -/area/crew_quarters/courtroom) -"anZ" = ( -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/obj/machinery/meter, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/maintenance/fsmaint) -"aoa" = ( -/obj/machinery/door/airlock/maintenance{ - req_access_txt = "12" - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint) -"aob" = ( -/obj/machinery/light_switch{ - pixel_x = -20; - pixel_y = 0 - }, -/obj/item/device/radio/intercom{ - pixel_y = 25 - }, -/turf/open/floor/wood, -/area/lawoffice) -"aoc" = ( -/obj/machinery/airalarm{ - pixel_y = 23 - }, -/turf/open/floor/wood, -/area/lawoffice) -"aod" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/maintenance/fsmaint) -"aoe" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 10 - }, -/turf/closed/wall, -/area/maintenance/fsmaint) -"aof" = ( -/turf/closed/wall/r_wall, -/area/maintenance/auxsolarstarboard) -"aog" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/turf/open/floor/plating, -/area/maintenance/auxsolarstarboard) -"aoh" = ( -/obj/machinery/power/solar_control{ - id = "auxsolareast"; - name = "Fore Starboard Solar Control"; - track = 0 - }, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/turf/open/floor/plating, -/area/maintenance/auxsolarstarboard) -"aoi" = ( -/obj/structure/rack, -/obj/item/clothing/mask/gas, -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; - icon_state = "space"; - layer = 4; - name = "EXTERNAL AIRLOCK"; - pixel_x = 0; - pixel_y = 32 - }, -/obj/item/device/multitool, -/turf/open/floor/plating, -/area/maintenance/auxsolarstarboard) -"aoj" = ( -/obj/machinery/camera{ - c_tag = "Fore Port Solar Access" - }, -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2) -"aok" = ( -/obj/machinery/atmospherics/pipe/simple/supplymain/hidden{ - icon_state = "intact"; - dir = 6 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2) -"aol" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2) -"aom" = ( -/obj/machinery/atmospherics/components/binary/valve{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2) -"aon" = ( -/obj/structure/chair, -/turf/open/floor/plating, -/area/maintenance/fpmaint2) -"aoo" = ( -/obj/structure/rack, -/obj/item/weapon/circuitboard/machine/monkey_recycler, -/turf/open/floor/plating, -/area/maintenance/fpmaint2) -"aop" = ( -/obj/structure/shuttle/engine/heater, -/obj/structure/window/reinforced{ - dir = 1; - layer = 2.9 - }, -/turf/open/floor/plating/airless, -/area/shuttle/labor) -"aoq" = ( -/obj/structure/grille, -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; - icon_state = "space"; - layer = 4; - name = "EXTERNAL AIRLOCK"; - pixel_x = 0; - pixel_y = -32 - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/processing) -"aor" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/red/side{ - dir = 6 - }, -/area/security/processing) -"aos" = ( -/obj/structure/closet/emcloset, -/turf/open/floor/plasteel/warning{ - dir = 10 - }, -/area/security/processing) -"aot" = ( -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/turf/open/floor/plasteel/red/side{ - dir = 6 - }, -/area/security/processing) -"aou" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/machinery/camera{ - c_tag = "Labor Shuttle Dock South"; - dir = 1 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 9 - }, -/turf/open/floor/plasteel/red/side{ - dir = 6 - }, -/area/security/processing) -"aov" = ( -/turf/open/floor/plasteel/red/corner{ - dir = 8 - }, -/area/hallway/primary/fore) -"aow" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/red/corner{ - dir = 8 - }, -/area/hallway/primary/fore) -"aox" = ( -/obj/machinery/camera{ - c_tag = "Fore Primary Hallway West"; - dir = 1 - }, -/turf/open/floor/plasteel/red/corner{ - dir = 8 - }, -/area/hallway/primary/fore) -"aoy" = ( -/obj/machinery/navbeacon{ - codes_txt = "patrol;next_patrol=EVA"; - location = "Security" - }, -/turf/open/floor/plasteel, -/area/hallway/primary/fore) -"aoz" = ( -/turf/open/floor/plasteel/red/corner{ - dir = 2 - }, -/area/hallway/primary/fore) -"aoA" = ( -/obj/item/device/radio/intercom{ - name = "Station Intercom (General)"; - pixel_y = -29 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/red/corner{ - dir = 2 - }, -/area/hallway/primary/fore) -"aoB" = ( -/obj/machinery/firealarm{ - dir = 1; - pixel_y = -24 - }, -/turf/open/floor/plasteel/red/corner{ - dir = 2 - }, -/area/hallway/primary/fore) -"aoC" = ( -/obj/machinery/vending/coffee, -/turf/open/floor/plasteel/red/corner{ - dir = 2 - }, -/area/hallway/primary/fore) -"aoD" = ( -/obj/machinery/camera{ - c_tag = "Fore Primary Hallway East"; - dir = 1 - }, -/obj/structure/extinguisher_cabinet{ - pixel_x = 5; - pixel_y = -32 - }, -/turf/open/floor/plasteel/red/corner{ - dir = 2 - }, -/area/hallway/primary/fore) -"aoE" = ( -/obj/machinery/vending/cigarette, -/turf/open/floor/plasteel/red/corner{ - dir = 2 - }, -/area/hallway/primary/fore) -"aoF" = ( -/obj/machinery/vending/snack, -/turf/open/floor/plasteel/red/corner{ - dir = 2 - }, -/area/hallway/primary/fore) -"aoG" = ( -/obj/structure/table, -/obj/machinery/firealarm{ - dir = 1; - pixel_y = -24 - }, -/turf/open/floor/plasteel/black, -/area/crew_quarters/courtroom) -"aoH" = ( -/obj/structure/table, -/obj/item/weapon/book/manual/wiki/security_space_law{ - pixel_x = -3; - pixel_y = 5 - }, -/turf/open/floor/plasteel/black, -/area/crew_quarters/courtroom) -"aoI" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/obj/machinery/light/small{ - dir = 4 - }, -/obj/machinery/power/apc{ - dir = 2; - name = "Fitness Room APC"; - pixel_x = 0; - pixel_y = -24 - }, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/crew_quarters/fitness) -"aoJ" = ( -/obj/structure/disposalpipe/segment, -/turf/open/floor/plating, -/area/maintenance/fsmaint) -"aoK" = ( -/obj/machinery/light/small{ - dir = 8 - }, -/obj/structure/chair/stool{ - pixel_y = 8 - }, -/turf/open/floor/plating/warnplate{ - dir = 9 - }, -/area/maintenance/fsmaint) -"aoL" = ( -/obj/machinery/atmospherics/components/binary/pump{ - dir = 1; - name = "Air Out"; - on = 1 - }, -/turf/open/floor/plating/warnplate{ - dir = 5 - }, -/area/maintenance/fsmaint) -"aoM" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/turf/open/floor/plating, -/area/maintenance/auxsolarstarboard) -"aoN" = ( -/obj/structure/chair/stool{ - pixel_y = 8 - }, -/turf/open/floor/plating, -/area/maintenance/auxsolarstarboard) -"aoO" = ( -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/machinery/power/terminal, -/obj/machinery/light/small{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/auxsolarstarboard) -"aoP" = ( -/obj/structure/rack, -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aoQ" = ( -/obj/structure/reagent_dispensers/watertank, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aoR" = ( -/obj/machinery/atmospherics/components/trinary/filter{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2) -"aoS" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible{ - dir = 4 - }, -/obj/machinery/portable_atmospherics/canister/air, -/turf/open/floor/plating, -/area/maintenance/fpmaint2) -"aoT" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible{ - dir = 8 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2) -"aoU" = ( -/obj/structure/bed, -/obj/effect/landmark{ - name = "xeno_spawn"; - pixel_x = -1 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2) -"aoV" = ( -/turf/open/space, -/area/space/nearstation) -"aoW" = ( -/obj/structure/table, -/obj/item/weapon/stamp, -/obj/item/weapon/poster/legit, -/turf/open/floor/plating, -/area/maintenance/fpmaint2) -"aoX" = ( -/obj/structure/closet/emcloset, -/turf/open/floor/plating, -/area/maintenance/fpmaint2) -"aoY" = ( -/obj/structure/shuttle/engine/propulsion, -/turf/open/floor/plating/airless, -/area/shuttle/labor) -"aoZ" = ( -/obj/machinery/atmospherics/components/binary/valve/digital{ - name = "Waste Release" - }, -/turf/open/floor/plasteel, -/area/atmos) -"apa" = ( -/obj/machinery/atmospherics/pipe/simple/green/visible{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible, -/turf/open/floor/plasteel, -/area/atmos) -"apb" = ( -/obj/structure/plasticflaps, -/turf/open/floor/plating, -/area/security/processing) -"apc" = ( -/obj/machinery/door/airlock/maintenance{ - name = "Security Maintenance"; - req_access_txt = "2" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/turf/open/floor/plating, -/area/security/processing) -"apd" = ( -/turf/closed/wall, -/area/security/detectives_office) -"ape" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/engineering{ - name = "Vacant Office B"; - req_access_txt = "32" - }, -/turf/open/floor/plating, -/area/security/vacantoffice2) -"apf" = ( -/obj/structure/disposalpipe/segment, -/turf/closed/wall, -/area/security/detectives_office) -"apg" = ( -/obj/machinery/door/airlock/maintenance{ - req_access_txt = "12" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/maintenance/fpmaint) -"aph" = ( -/turf/closed/wall, -/area/lawoffice) -"api" = ( -/obj/machinery/door/airlock{ - name = "Law Office"; - req_access_txt = "38" - }, -/turf/open/floor/plasteel, -/area/lawoffice) -"apj" = ( -/obj/machinery/door/firedoor, -/turf/open/floor/plasteel, -/area/hallway/primary/fore) -"apk" = ( -/obj/machinery/door/firedoor, -/turf/open/floor/plasteel/red/corner{ - dir = 1 - }, -/area/hallway/primary/fore) -"apl" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 6 - }, -/turf/closed/wall, -/area/maintenance/fsmaint) -"apm" = ( -/obj/machinery/door/firedoor, -/turf/open/floor/plasteel/red/corner{ - dir = 4 - }, -/area/hallway/primary/fore) -"apn" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/closed/wall, -/area/maintenance/fsmaint) -"apo" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 1 - }, -/turf/closed/wall, -/area/maintenance/fsmaint) -"app" = ( -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/obj/structure/reagent_dispensers/fueltank, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint) -"apq" = ( -/obj/machinery/space_heater, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint) -"apr" = ( -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/obj/machinery/power/apc{ - dir = 1; - name = "Dormitory Maintenance APC"; - pixel_y = 24 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint) -"aps" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/reagent_dispensers/watertank, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint) -"apt" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint) -"apu" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 9 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint) -"apv" = ( -/obj/machinery/door/airlock/maintenance{ - req_access_txt = "12" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/maintenance/fsmaint) -"apw" = ( -/obj/machinery/atmospherics/components/binary/pump{ - dir = 4; - name = "Air In"; - on = 1 - }, -/obj/effect/landmark{ - name = "blobstart" - }, -/turf/open/floor/plating/warnplate{ - dir = 8 - }, -/area/maintenance/fsmaint) -"apx" = ( -/obj/machinery/door/airlock/atmos{ - name = "Atmospherics Maintenance"; - req_access_txt = "12;24" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint) -"apy" = ( -/obj/item/weapon/wrench, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating/warnplate{ - dir = 4 - }, -/area/maintenance/fsmaint) -"apz" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/floor/plating, -/area/maintenance/auxsolarstarboard) -"apA" = ( -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/machinery/power/apc{ - dir = 8; - name = "Fore Starboard Solar APC"; - pixel_x = -25; - pixel_y = 3 - }, -/turf/open/floor/plating, -/area/maintenance/auxsolarstarboard) -"apB" = ( -/obj/machinery/camera{ - c_tag = "Fore Starboard Solars"; - dir = 1 - }, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/machinery/power/smes, -/turf/open/floor/plating, -/area/maintenance/auxsolarstarboard) -"apC" = ( -/turf/closed/wall/r_wall, -/area/maintenance/fsmaint2) -"apD" = ( -/obj/structure/closet/wardrobe/mixed, -/obj/item/clothing/shoes/jackboots, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"apE" = ( -/obj/structure/grille, -/obj/structure/window/fulltile, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"apF" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible, -/turf/open/floor/plating, -/area/atmos) -"apG" = ( -/obj/machinery/portable_atmospherics/canister/water_vapor, -/turf/open/floor/plasteel, -/area/janitor) -"apH" = ( -/obj/structure/grille, -/obj/structure/window/shuttle, -/turf/open/floor/plating, -/area/shuttle/pod_1) -"apI" = ( -/obj/machinery/atmospherics/components/unary/outlet_injector/on{ - dir = 1; - frequency = 1441; - id = "waste_out" - }, -/turf/open/floor/plating/airless, -/area/atmos) -"apJ" = ( -/turf/closed/wall, -/area/mining_construction) -"apK" = ( -/obj/structure/grille, -/obj/structure/window/shuttle, -/turf/open/floor/plating, -/area/shuttle/pod_2) -"apL" = ( -/obj/structure/table, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 2; - name = "2maintenance loot spawner" - }, -/turf/open/floor/plasteel/floorgrime, -/area/maintenance/fpmaint2) -"apM" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible, -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/plasteel/floorgrime, -/area/maintenance/fpmaint2) -"apN" = ( -/turf/open/floor/plating/warnplate{ - dir = 9 - }, -/area/shuttle/auxillary_base) -"apO" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible{ - dir = 1 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2) -"apP" = ( -/obj/structure/grille, -/obj/structure/window/fulltile{ - obj_integrity = 35 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2) -"apQ" = ( -/obj/structure/lattice, -/turf/open/space, -/area/space/nearstation) -"apR" = ( -/obj/item/weapon/paper{ - info = "01001001 00100000 01101000 01101111 01110000 01100101 00100000 01111001 01101111 01110101 00100000 01110011 01110100 01100001 01111001 00100000 01110011 01100001 01100110 01100101 00101110 00100000 01001100 01101111 01110110 01100101 00101100 00100000 01101101 01101111 01101101 00101110"; - name = "Note from Beepsky's Mom" - }, -/turf/open/floor/plating, -/area/security/processing) -"apS" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/turf/open/floor/plating, -/area/security/processing) -"apT" = ( -/obj/structure/chair/comfy/beige{ - dir = 1; - icon_state = "comfychair" - }, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/syndicate) -"apU" = ( -/turf/open/floor/plating, -/area/security/vacantoffice2) -"apV" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/construction) -"apW" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 8 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint) -"apX" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/closed/wall, -/area/crew_quarters/fitness) -"apY" = ( -/obj/structure/closet/secure_closet/personal, -/turf/open/floor/carpet, -/area/crew_quarters/sleep) -"apZ" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/wood, -/area/lawoffice) -"aqa" = ( -/obj/structure/table, -/obj/machinery/light/small{ - dir = 8 - }, -/turf/open/floor/carpet, -/area/crew_quarters/sleep) -"aqb" = ( -/obj/structure/rack{ - dir = 8; - layer = 2.9 - }, -/obj/item/weapon/storage/briefcase, -/obj/effect/decal/cleanable/cobweb/cobweb2, -/turf/open/floor/wood, -/area/lawoffice) -"aqc" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/closed/wall, -/area/maintenance/fsmaint) -"aqd" = ( -/obj/machinery/airalarm{ - dir = 8; - icon_state = "alarm0"; - pixel_x = 24 - }, -/turf/open/floor/plasteel/red/corner{ - dir = 4 - }, -/area/hallway/primary/fore) -"aqe" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint) -"aqf" = ( -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 6 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint) -"aqg" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 1 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint) -"aqh" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/fsmaint) -"aqi" = ( -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint) -"aqj" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint) -"aqk" = ( -/obj/machinery/power/apc{ - dir = 2; - name = "Dormitory APC"; - pixel_y = -24 - }, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/crew_quarters/sleep) -"aql" = ( -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 1 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint) -"aqm" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint) -"aqn" = ( -/obj/structure/bed, -/obj/item/weapon/bedsheet, -/obj/machinery/airalarm{ - pixel_y = 23 - }, -/obj/machinery/button/door{ - id = "Dorm4"; - name = "Dorm Bolt Control"; - normaldoorcontrol = 1; - pixel_x = 25; - pixel_y = 0; - req_access_txt = "0"; - specialfunctions = 4 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/carpet, -/area/crew_quarters/sleep) -"aqo" = ( -/obj/structure/chair/stool{ - pixel_y = 8 - }, -/turf/open/floor/wood, -/area/crew_quarters/sleep) -"aqp" = ( -/obj/structure/rack{ - dir = 1 - }, -/obj/item/clothing/suit/fire/firefighter, -/obj/item/weapon/tank/internals/oxygen, -/obj/item/clothing/mask/gas, -/obj/item/weapon/extinguisher, -/obj/item/clothing/head/hardhat/red, -/obj/item/clothing/glasses/meson, -/turf/open/floor/plating/warnplate{ - dir = 10 - }, -/area/maintenance/fsmaint) -"aqq" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible{ - dir = 1 - }, -/obj/machinery/portable_atmospherics/canister/air, -/turf/open/floor/plating/warnplate{ - dir = 6 - }, -/area/maintenance/fsmaint) -"aqr" = ( -/obj/structure/grille, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 6 - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/crew_quarters/fitness) -"aqs" = ( -/obj/structure/grille, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/crew_quarters/fitness) -"aqt" = ( -/obj/structure/grille, -/obj/effect/landmark{ - name = "Syndicate Breach Area" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/crew_quarters/fitness) -"aqu" = ( -/obj/structure/grille, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 10 - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/crew_quarters/fitness) -"aqv" = ( -/obj/machinery/door/airlock/external{ - name = "External Access"; - req_access = null; - req_access_txt = "13" - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aqw" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/door/airlock/engineering{ - icon_state = "door_closed"; - locked = 0; - name = "Fore Starboard Solar Access"; - req_access_txt = "10" - }, -/turf/open/floor/plating, -/area/maintenance/auxsolarstarboard) -"aqx" = ( -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'HIGH VOLTAGE'"; - icon_state = "shock"; - name = "HIGH VOLTAGE"; - pixel_y = 0 - }, -/turf/closed/wall/r_wall, -/area/maintenance/auxsolarstarboard) -"aqy" = ( -/obj/structure/closet/emcloset, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aqz" = ( -/obj/structure/table, -/obj/machinery/light/small{ - dir = 1 - }, -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aqA" = ( -/obj/structure/closet/firecloset, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aqB" = ( -/obj/effect/decal/cleanable/cobweb/cobweb2, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aqC" = ( -/obj/machinery/computer/slot_machine{ - balance = 15; - money = 500 - }, -/obj/item/weapon/coin/iron, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aqD" = ( -/obj/effect/decal/cleanable/cobweb, -/obj/item/weapon/coin/gold, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aqE" = ( -/obj/effect/landmark{ - name = "xeno_spawn"; - pixel_x = -1 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aqF" = ( -/turf/closed/wall/mineral/titanium, -/area/shuttle/pod_1) -"aqG" = ( -/obj/docking_port/stationary/random{ - dir = 4; - id = "pod_asteroid3"; - name = "asteroid" - }, -/turf/open/space, -/area/space) -"aqH" = ( -/turf/closed/wall/mineral/titanium, -/area/shuttle/pod_2) -"aqI" = ( -/turf/open/floor/plating/warnplate{ - dir = 1 - }, -/area/shuttle/auxillary_base) -"aqJ" = ( -/obj/machinery/door/airlock/external{ - cyclelinkeddir = 2; - name = "External Access"; - req_access = null; - req_access_txt = "13" - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2) -"aqK" = ( -/obj/structure/chair/stool, -/turf/open/floor/plasteel/floorgrime, -/area/maintenance/fpmaint2) -"aqL" = ( -/obj/machinery/atmospherics/pipe/simple/supplymain/hidden{ - icon_state = "intact"; - dir = 5 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2) -"aqM" = ( -/obj/machinery/atmospherics/pipe/simple/supplymain/hidden{ - icon_state = "intact"; - dir = 10 - }, -/obj/machinery/meter, -/turf/open/floor/plating, -/area/maintenance/fpmaint2) -"aqN" = ( -/obj/structure/closet/secure_closet/miner{ - locked = 0 - }, -/turf/open/floor/plating/warnplate{ - dir = 5 - }, -/area/shuttle/auxillary_base) -"aqO" = ( -/obj/structure/closet, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 2; - name = "2maintenance loot spawner" - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2) -"aqP" = ( -/obj/machinery/power/apc{ - dir = 1; - name = "Arrivals North Maintenance APC"; - pixel_x = -1; - pixel_y = 26 - }, -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2) -"aqQ" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/maintenance/fpmaint) -"aqR" = ( -/turf/open/floor/plating, -/area/maintenance/fpmaint) -"aqS" = ( -/obj/machinery/light/small{ - dir = 4 - }, -/obj/structure/table, -/obj/machinery/cell_charger, -/obj/item/weapon/stock_parts/cell/potato{ - name = "\improper Beepsky's emergency battery" - }, -/turf/open/floor/plating, -/area/security/processing) -"aqT" = ( -/obj/machinery/power/apc{ - dir = 8; - name = "Labor Shuttle Dock APC"; - pixel_x = -24 - }, -/obj/structure/cable, -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/turf/open/floor/plating, -/area/security/processing) -"aqU" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/chair{ - dir = 4 - }, -/obj/effect/landmark/start{ - name = "Cargo Technician" - }, -/turf/open/floor/plasteel, -/area/quartermaster/office) -"aqV" = ( -/obj/structure/table/wood, -/obj/item/weapon/paper_bin{ - pixel_x = -3; - pixel_y = 7 - }, -/turf/open/floor/plating, -/area/security/vacantoffice2) -"aqW" = ( -/turf/open/floor/carpet, -/area/security/detectives_office) -"aqX" = ( -/obj/machinery/airalarm{ - frequency = 1439; - locked = 0; - pixel_y = 23 - }, -/obj/structure/chair, -/turf/open/floor/plating, -/area/security/vacantoffice2) -"aqY" = ( -/obj/structure/table/wood, -/obj/item/weapon/pen, -/turf/open/floor/plating, -/area/security/vacantoffice2) -"aqZ" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/maintenance/fpmaint) -"ara" = ( -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/obj/machinery/requests_console{ - department = "Law office"; - pixel_x = -32; - pixel_y = 0 - }, -/obj/structure/closet/lawcloset, -/turf/open/floor/wood, -/area/lawoffice) -"arb" = ( -/obj/structure/table/wood, -/obj/item/weapon/book/manual/wiki/security_space_law, -/obj/item/weapon/book/manual/wiki/security_space_law, -/obj/item/weapon/pen/red, -/turf/open/floor/wood, -/area/lawoffice) -"arc" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - on = 1 - }, -/turf/open/floor/plasteel, -/area/ai_monitored/security/armory) -"ard" = ( -/obj/structure/grille, -/obj/machinery/door/poddoor/preopen{ - id = "lawyer_blast"; - name = "privacy door" - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/lawoffice) -"are" = ( -/obj/structure/table/wood, -/obj/item/device/flashlight/lamp/green{ - pixel_x = 1; - pixel_y = 5 - }, -/turf/open/floor/wood, -/area/lawoffice) -"arf" = ( -/turf/closed/wall, -/area/crew_quarters/sleep) -"arg" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall, -/area/maintenance/fsmaint) -"arh" = ( -/obj/machinery/door/airlock/maintenance{ - req_access_txt = "12" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/fsmaint) -"ari" = ( -/obj/machinery/airalarm{ - pixel_y = 23 - }, -/obj/structure/closet/secure_closet/personal/cabinet, -/obj/effect/decal/cleanable/cobweb/cobweb2, -/turf/open/floor/wood, -/area/crew_quarters/sleep) -"arj" = ( -/turf/closed/wall, -/area/crew_quarters/fitness) -"ark" = ( -/obj/machinery/airalarm{ - pixel_y = 23 - }, -/obj/structure/closet/secure_closet/personal/cabinet, -/turf/open/floor/wood, -/area/crew_quarters/sleep) -"arl" = ( -/obj/structure/disposalpipe/junction{ - icon_state = "pipe-j2"; - dir = 2 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 9 - }, -/area/crew_quarters/fitness) -"arm" = ( -/obj/structure/grille, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/crew_quarters/fitness) -"arn" = ( -/obj/structure/closet/athletic_mixed, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 5 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 1 - }, -/area/crew_quarters/fitness) -"aro" = ( -/turf/open/floor/engine{ - name = "Holodeck Projector Floor" - }, -/area/holodeck/rec_center) -"arp" = ( -/obj/structure/grille, -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; - icon_state = "space"; - layer = 4; - name = "EXTERNAL AIRLOCK"; - pixel_x = 0; - pixel_y = 32 - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"arq" = ( -/obj/structure/table, -/obj/effect/decal/cleanable/cobweb, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 8; - name = "8maintenance loot spawner" - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"arr" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"ars" = ( -/obj/machinery/power/apc{ - dir = 1; - name = "Bar Maintenance APC"; - pixel_y = 24 - }, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"art" = ( -/obj/machinery/light/small{ - dir = 1 - }, -/obj/machinery/camera{ - c_tag = "Fore Starboard Solar Access" - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aru" = ( -/obj/structure/chair/stool, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"arv" = ( -/obj/structure/table, -/obj/item/weapon/pen, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"arw" = ( -/obj/structure/table, -/obj/item/weapon/paper_bin{ - pixel_x = -3; - pixel_y = 7 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"arx" = ( -/obj/structure/chair/stool{ - pixel_y = 8 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"ary" = ( -/obj/structure/closet, -/obj/item/weapon/coin/iron, -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"arz" = ( -/obj/item/weapon/coin/gold, -/obj/item/weapon/coin/iron, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"arA" = ( -/obj/structure/closet, -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"arB" = ( -/turf/closed/wall/r_wall, -/area/hallway/secondary/entry) -"arC" = ( -/turf/open/floor/plating/warnplate{ - dir = 8 - }, -/area/shuttle/auxillary_base) -"arD" = ( -/turf/open/floor/plating, -/area/shuttle/auxillary_base) -"arE" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - on = 1 - }, -/turf/open/floor/plasteel/yellow/side{ - dir = 8 - }, -/area/mining_construction) -"arF" = ( -/obj/machinery/atmospherics/pipe/simple/supplymain/hidden{ - icon_state = "intact"; - dir = 5 - }, -/turf/closed/wall, -/area/maintenance/fpmaint2) -"arG" = ( -/obj/machinery/atmospherics/pipe/simple/supplymain/hidden{ - icon_state = "intact"; - dir = 4 - }, -/turf/closed/wall, -/area/maintenance/fpmaint2) -"arH" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supplymain/hidden{ - icon_state = "intact"; - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2) -"arI" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/simple/supplymain/hidden{ - icon_state = "intact"; - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2) -"arJ" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supplymain/hidden{ - icon_state = "intact"; - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2) -"arK" = ( -/obj/machinery/atmospherics/pipe/simple/supplymain/hidden{ - icon_state = "intact"; - dir = 9 - }, -/turf/open/floor/plating{ - icon_state = "platingdmg3" - }, -/area/maintenance/fpmaint2) -"arL" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/simple/supplymain/hidden{ - icon_state = "intact"; - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2) -"arM" = ( -/obj/structure/closet/crate{ - icon_state = "crateopen"; - opened = 1 - }, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 2; - name = "2maintenance loot spawner" - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2) -"arN" = ( -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 2; - name = "2maintenance loot spawner" - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2) -"arO" = ( -/obj/machinery/monkey_recycler, -/obj/item/weapon/reagent_containers/food/snacks/monkeycube, -/obj/item/weapon/reagent_containers/food/snacks/monkeycube, -/turf/open/floor/plating, -/area/maintenance/fpmaint2) -"arP" = ( -/turf/closed/wall, -/area/maintenance/fpmaint) -"arQ" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint) -"arR" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 2; - on = 1 - }, -/obj/structure/table/wood, -/obj/item/device/flashlight/lamp, -/turf/open/floor/plating, -/area/security/vacantoffice2) -"arS" = ( -/obj/structure/table/wood, -/turf/open/floor/plating, -/area/security/vacantoffice2) -"arT" = ( -/turf/open/floor/plasteel, -/area/security/vacantoffice2) -"arU" = ( -/obj/structure/rack, -/turf/open/floor/plasteel, -/area/security/vacantoffice2) -"arV" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/filingcabinet/employment, -/turf/open/floor/wood, -/area/lawoffice) -"arW" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 6 - }, -/turf/closed/wall, -/area/lawoffice) -"arX" = ( -/obj/structure/table/wood, -/obj/item/weapon/folder/blue, -/obj/item/weapon/folder/blue, -/obj/item/weapon/folder/blue, -/obj/item/weapon/folder/blue, -/obj/item/weapon/stamp/law, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/wood, -/area/lawoffice) -"arY" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/wood, -/area/lawoffice) -"arZ" = ( -/obj/structure/chair/office/dark{ - dir = 8 - }, -/obj/effect/landmark/start{ - name = "Lawyer" - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/wood, -/area/lawoffice) -"asa" = ( -/obj/machinery/status_display{ - density = 0; - layer = 3; - pixel_x = 32; - pixel_y = 0 - }, -/turf/open/floor/plasteel/red/corner{ - dir = 4 - }, -/area/hallway/primary/fore) -"asb" = ( -/obj/structure/disposalpipe/trunk{ - dir = 8 - }, -/obj/machinery/disposal/bin, -/turf/open/floor/plasteel/neutral/side{ - dir = 1 - }, -/area/crew_quarters/fitness) -"asc" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2) -"asd" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/crew_quarters/sleep) -"ase" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 6 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2) -"asf" = ( -/obj/machinery/airalarm{ - pixel_y = 23 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral/side{ - dir = 5 - }, -/area/crew_quarters/sleep) -"asg" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 9 - }, -/area/crew_quarters/sleep) -"ash" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/door/airlock/maintenance{ - req_access_txt = "12" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2) -"asi" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2) -"asj" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/chair{ - dir = 1 - }, -/turf/open/floor/plating, -/area/security/vacantoffice2) -"ask" = ( -/obj/structure/dresser, -/turf/open/floor/wood, -/area/crew_quarters/sleep) -"asl" = ( -/obj/machinery/firealarm{ - dir = 4; - pixel_x = 24 - }, -/turf/open/floor/plating, -/area/security/vacantoffice2) -"asm" = ( -/obj/machinery/light/small{ - dir = 1 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - on = 1 - }, -/turf/open/floor/wood, -/area/crew_quarters/sleep) -"asn" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plating, -/area/security/vacantoffice2) -"aso" = ( -/obj/machinery/door/airlock/maintenance{ - name = "Law Office Maintenance"; - req_access_txt = "38" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/lawoffice) -"asp" = ( -/obj/structure/table/wood, -/turf/open/floor/wood, -/area/crew_quarters/sleep) -"asq" = ( -/obj/machinery/camera{ - c_tag = "Fitness Room" - }, -/obj/structure/closet/masks, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 1 - }, -/area/crew_quarters/fitness) -"asr" = ( -/obj/structure/closet/boxinggloves, -/obj/machinery/light{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/item/clothing/shoes/jackboots, -/turf/open/floor/plasteel/neutral/side{ - dir = 1 - }, -/area/crew_quarters/fitness) -"ass" = ( -/obj/structure/closet/lasertag/red, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 10 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 5 - }, -/area/crew_quarters/fitness) -"ast" = ( -/obj/structure/closet/lasertag/blue, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 1 - }, -/area/crew_quarters/fitness) -"asu" = ( -/obj/structure/bed, -/obj/item/weapon/bedsheet/red, -/obj/machinery/button/door{ - id = "Dorm5"; - name = "Cabin Bolt Control"; - normaldoorcontrol = 1; - pixel_x = 0; - pixel_y = -25; - req_access_txt = "0"; - specialfunctions = 4 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/wood, -/area/crew_quarters/sleep) -"asv" = ( -/obj/structure/table, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 3; - name = "3maintenance loot spawner" - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"asw" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"asx" = ( -/obj/structure/door_assembly/door_assembly_mai, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"asy" = ( -/obj/machinery/door/airlock/maintenance{ - name = "Firefighting equipment"; - req_access_txt = "12" - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"asz" = ( -/obj/structure/table, -/obj/item/weapon/reagent_containers/food/snacks/donut, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"asA" = ( -/obj/structure/table, -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"asB" = ( -/turf/closed/wall, -/area/maintenance/electrical) -"asC" = ( -/turf/open/floor/plasteel/airless, -/area/space/nearstation) -"asD" = ( -/turf/open/floor/plating/warnplate{ - dir = 4 - }, -/area/shuttle/auxillary_base) -"asE" = ( -/turf/closed/wall, -/area/hallway/secondary/entry) -"asF" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/mining_construction) -"asG" = ( -/obj/machinery/light, -/turf/open/floor/plating, -/area/shuttle/auxillary_base) -"asH" = ( -/obj/structure/closet/toolcloset, -/turf/open/floor/plasteel/yellow/side{ - dir = 9 - }, -/area/mining_construction) -"asI" = ( -/obj/structure/closet/toolcloset, -/turf/open/floor/plasteel/yellow/side{ - dir = 1 - }, -/area/mining_construction) -"asJ" = ( -/obj/structure/reagent_dispensers/fueltank, -/turf/open/floor/plasteel/yellow/side{ - dir = 5 - }, -/area/mining_construction) -"asK" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2) -"asL" = ( -/obj/structure/bed, -/obj/item/weapon/bedsheet/red, -/obj/machinery/button/door{ - id = "Dorm6"; - name = "Cabin Bolt Control"; - normaldoorcontrol = 1; - pixel_x = 0; - pixel_y = -25; - req_access_txt = "0"; - specialfunctions = 4 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/wood, -/area/crew_quarters/sleep) -"asM" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 8 - }, -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 8 - }, -/area/crew_quarters/fitness) -"asN" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness) -"asO" = ( -/obj/structure/reagent_dispensers/fueltank, -/turf/open/floor/plating, -/area/maintenance/fpmaint2) -"asP" = ( -/obj/structure/chair/stool, -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plating, -/area/maintenance/fpmaint) -"asQ" = ( -/obj/structure/closet/emcloset, -/turf/open/floor/plating, -/area/maintenance/fpmaint) -"asR" = ( -/obj/effect/decal/cleanable/cobweb, -/obj/structure/closet/secure_closet/chemical, -/turf/open/floor/plating, -/area/maintenance/fpmaint) -"asS" = ( -/obj/structure/closet/secure_closet/medical1, -/turf/open/floor/plating, -/area/maintenance/fpmaint) -"asT" = ( -/obj/structure/closet/secure_closet/chemical, -/turf/open/floor/plating, -/area/maintenance/fpmaint) -"asU" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/security/vacantoffice2) -"asV" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 1 - }, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness) -"asW" = ( -/obj/machinery/light/small{ - dir = 8 - }, -/obj/structure/rack, -/obj/item/weapon/storage/briefcase, -/turf/open/floor/plasteel/grimy, -/area/security/detectives_office) -"asX" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness) -"asY" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 9 - }, -/turf/open/floor/plating, -/area/crew_quarters/fitness) -"asZ" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/red/side{ - dir = 4 - }, -/area/crew_quarters/fitness) -"ata" = ( -/turf/open/floor/wood, -/area/lawoffice) -"atb" = ( -/obj/structure/table, -/obj/item/stack/sheet/plasteel{ - amount = 10 - }, -/obj/item/stack/rods{ - amount = 50 - }, -/turf/open/floor/plasteel/yellow/side{ - dir = 4 - }, -/area/mining_construction) -"atc" = ( -/obj/structure/chair/office/dark, -/obj/effect/landmark/start{ - name = "Lawyer" - }, -/turf/open/floor/wood, -/area/lawoffice) -"atd" = ( -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/turf/open/floor/plasteel/red/corner{ - dir = 4 - }, -/area/hallway/primary/fore) -"ate" = ( -/obj/effect/landmark{ - name = "xeno_spawn"; - pixel_x = -1 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/carpet, -/area/crew_quarters/sleep) -"atf" = ( -/obj/structure/chair/stool{ - pixel_y = 8 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/carpet, -/area/crew_quarters/sleep) -"atg" = ( -/obj/machinery/door/airlock{ - id_tag = "Dorm4"; - name = "Dorm 4" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/sleep) -"ath" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/carpet, -/area/crew_quarters/sleep) -"ati" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/crew_quarters/sleep) -"atj" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 8 - }, -/area/crew_quarters/sleep) -"atk" = ( -/obj/machinery/camera{ - c_tag = "Auxillary Mining Base"; - dir = 8; - network = list("SS13","AuxBase") - }, -/turf/open/floor/plating, -/area/shuttle/auxillary_base) -"atl" = ( -/obj/docking_port/mobile/auxillary_base{ - dheight = 4; - dir = 4; - dwidth = 4; - height = 9; - width = 9 - }, -/obj/machinery/bluespace_beacon, -/obj/machinery/computer/shuttle/auxillary_base{ - pixel_y = 0 - }, -/turf/closed/wall, -/area/shuttle/auxillary_base) -"atm" = ( -/turf/open/floor/wood, -/area/crew_quarters/sleep) -"atn" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 6 - }, -/turf/closed/wall, -/area/maintenance/fpmaint2) -"ato" = ( -/obj/machinery/light_switch{ - pixel_y = -23 - }, -/obj/effect/landmark/event_spawn, -/turf/open/floor/carpet, -/area/security/hos) -"atp" = ( -/obj/machinery/door/airlock/external{ - cyclelinkeddir = 1; - name = "Construction Zone"; - req_access = null; - req_access_txt = "0"; - req_one_access_txt = "0" - }, -/turf/open/floor/plating, -/area/mining_construction) -"atq" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/maintenance/fpmaint2) -"atr" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 10 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2) -"ats" = ( -/obj/structure/table/wood, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/light, -/turf/open/floor/plating, -/area/security/vacantoffice2) -"att" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness) -"atu" = ( -/obj/machinery/camera{ - c_tag = "Vacant Office B"; - dir = 1 - }, -/obj/structure/table/wood, -/turf/open/floor/plasteel, -/area/security/vacantoffice2) -"atv" = ( -/obj/structure/table, -/obj/item/weapon/shard, -/obj/item/weapon/shard{ - icon_state = "medium" - }, -/obj/item/weapon/shard{ - icon_state = "small" - }, -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"atw" = ( -/obj/structure/rack, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 2; - name = "2maintenance loot spawner" - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"atx" = ( -/obj/machinery/button/door{ - id = "maint3"; - name = "Blast Door Control C"; - pixel_x = 0; - pixel_y = 24; - req_access_txt = "0" - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aty" = ( -/turf/open/floor/plating{ - icon_state = "panelscorched" - }, -/area/maintenance/fsmaint2) -"atz" = ( -/mob/living/simple_animal/mouse, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"atA" = ( -/obj/structure/table, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"atB" = ( -/obj/machinery/door/airlock/maintenance{ - req_access_txt = "12" - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"atC" = ( -/obj/item/stack/rods{ - amount = 50 - }, -/obj/structure/rack, -/obj/item/stack/cable_coil{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/stack/cable_coil{ - amount = 5 - }, -/obj/item/stack/sheet/mineral/plasma{ - amount = 10; - layer = 2.9 - }, -/turf/open/floor/plasteel/floorgrime, -/area/maintenance/electrical) -"atD" = ( -/obj/machinery/recharge_station, -/turf/open/floor/plasteel/floorgrime, -/area/maintenance/electrical) -"atE" = ( -/obj/machinery/power/port_gen/pacman, -/turf/open/floor/plating, -/area/maintenance/electrical) -"atF" = ( -/turf/open/floor/mech_bay_recharge_floor, -/area/maintenance/electrical) -"atG" = ( -/obj/machinery/mech_bay_recharge_port, -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/turf/open/floor/plating, -/area/maintenance/electrical) -"atH" = ( -/obj/machinery/computer/mech_bay_power_console, -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/turf/open/floor/bluegrid, -/area/maintenance/electrical) -"atI" = ( -/turf/open/floor/plasteel/yellow/side{ - dir = 8 - }, -/area/mining_construction) -"atJ" = ( -/obj/machinery/space_heater, -/turf/open/floor/plating, -/area/maintenance/fpmaint2) -"atK" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/security/vacantoffice2) -"atL" = ( -/obj/structure/reagent_dispensers/watertank, -/turf/open/floor/plating, -/area/maintenance/fpmaint2) -"atM" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 6 - }, -/turf/closed/wall, -/area/maintenance/fpmaint2) -"atN" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/maintenance/fpmaint2) -"atO" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/maintenance/fpmaint2) -"atP" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 10 - }, -/turf/closed/wall, -/area/maintenance/fpmaint2) -"atQ" = ( -/obj/machinery/door/airlock{ - id_tag = "Dorm5"; - name = "Cabin 1" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/wood, -/area/crew_quarters/sleep) -"atR" = ( -/obj/effect/landmark{ - name = "carpspawn" - }, -/obj/structure/lattice, -/turf/open/space, -/area/space/nearstation) -"atS" = ( -/turf/closed/wall, -/area/space/nearstation) -"atT" = ( -/obj/structure/closet, -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plating, -/area/maintenance/fpmaint2) -"atU" = ( -/obj/structure/rack{ - dir = 1 - }, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 2; - name = "2maintenance loot spawner" - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2) -"atV" = ( -/obj/machinery/airalarm{ - dir = 4; - pixel_x = -23; - pixel_y = 0 - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 8 - }, -/area/crew_quarters/fitness) -"atW" = ( -/obj/structure/chair/stool, -/turf/open/floor/plating, -/area/maintenance/fpmaint2) -"atX" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint) -"atY" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/closed/wall, -/area/security/vacantoffice2) -"atZ" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass{ - name = "Holodeck Door" - }, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness) -"aua" = ( -/turf/open/floor/plasteel/red/side{ - dir = 4 - }, -/area/crew_quarters/fitness) -"aub" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/yellow/side, -/area/mining_construction) -"auc" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/yellow/side{ - dir = 10 - }, -/area/mining_construction) -"aud" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2) -"aue" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall, -/area/maintenance/fpmaint2) -"auf" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/closed/wall, -/area/lawoffice) -"aug" = ( -/obj/structure/table/wood, -/obj/machinery/camera{ - c_tag = "Law Office"; - dir = 1; - network = list("SS13") - }, -/obj/item/weapon/paper_bin{ - pixel_x = -3; - pixel_y = 7 - }, -/obj/item/weapon/pen, -/obj/machinery/computer/security/telescreen{ - desc = "Used for watching Prison Wing holding areas."; - dir = 1; - name = "Prison Monitor"; - network = list("Prison"); - pixel_x = 0; - pixel_y = -27 - }, -/turf/open/floor/wood, -/area/lawoffice) -"auh" = ( -/obj/structure/table/wood, -/obj/item/device/taperecorder{ - pixel_y = 0 - }, -/obj/item/weapon/cartridge/lawyer, -/turf/open/floor/wood, -/area/lawoffice) -"aui" = ( -/obj/machinery/photocopier, -/obj/machinery/button/door{ - id = "lawyer_blast"; - name = "Privacy Shutters"; - pixel_x = 25; - pixel_y = 8 - }, -/turf/open/floor/wood, -/area/lawoffice) -"auj" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/effect/landmark/event_spawn, -/turf/open/floor/plasteel/red/side{ - dir = 1 - }, -/area/security/brig) -"auk" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/crew_quarters/sleep) -"aul" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral/side{ - dir = 8 - }, -/area/crew_quarters/sleep) -"aum" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2) -"aun" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall, -/area/crew_quarters/sleep) -"auo" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/fpmaint) -"aup" = ( -/obj/machinery/door/airlock{ - id_tag = "Dorm6"; - name = "Cabin 2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/wood, -/area/crew_quarters/sleep) -"auq" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall, -/area/security/vacantoffice2) -"aur" = ( -/obj/machinery/door/window/eastright{ - base_state = "left"; - dir = 8; - icon_state = "left"; - name = "Fitness Ring" - }, -/obj/structure/window/reinforced{ - dir = 1 - }, -/turf/open/floor/plasteel/black, -/area/crew_quarters/fitness) -"aus" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness) -"aut" = ( -/obj/structure/window/reinforced{ - dir = 1 - }, -/turf/open/floor/plasteel/black, -/area/crew_quarters/fitness) -"auu" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness) -"auv" = ( -/obj/structure/window/reinforced{ - dir = 4 - }, -/obj/structure/window/reinforced{ - dir = 1 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/plasteel/black, -/area/crew_quarters/fitness) -"auw" = ( -/obj/structure/bed, -/obj/item/weapon/bedsheet, -/obj/machinery/airalarm{ - pixel_y = 23 - }, -/obj/machinery/button/door{ - id = "Dorm3"; - name = "Dorm Bolt Control"; - normaldoorcontrol = 1; - pixel_x = 25; - pixel_y = 0; - req_access_txt = "0"; - specialfunctions = 4 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/carpet, -/area/crew_quarters/sleep) -"aux" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 4 - }, -/area/crew_quarters/sleep) -"auy" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass{ - name = "Holodeck Door" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 5 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness) -"auz" = ( -/obj/machinery/camera{ - c_tag = "Holodeck" - }, -/obj/machinery/airalarm{ - pixel_y = 24 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness) -"auA" = ( -/obj/machinery/light/small{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness) -"auB" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/crew_quarters/fitness) -"auC" = ( -/obj/machinery/light/small, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"auD" = ( -/obj/structure/reagent_dispensers/fueltank, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"auE" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"auF" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"auG" = ( -/obj/machinery/door/airlock/maintenance{ - req_access_txt = "12" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"auH" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"auI" = ( -/turf/open/floor/plating, -/area/maintenance/electrical) -"auJ" = ( -/turf/open/floor/plasteel/floorgrime, -/area/maintenance/electrical) -"auK" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/floorgrime, -/area/maintenance/electrical) -"auL" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/turf/open/floor/plasteel/floorgrime, -/area/maintenance/electrical) -"auM" = ( -/obj/structure/extinguisher_cabinet{ - pixel_x = 27; - pixel_y = 0 - }, -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/turf/open/floor/plasteel/floorgrime, -/area/maintenance/electrical) -"auN" = ( -/turf/open/floor/plating/warnplate, -/area/shuttle/auxillary_base) -"auO" = ( -/obj/structure/closet/emcloset, -/turf/open/floor/plating, -/area/hallway/secondary/entry) -"auP" = ( -/turf/open/floor/plating, -/area/hallway/secondary/entry) -"auQ" = ( -/turf/open/floor/plasteel, -/area/mining_construction) -"auR" = ( -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, -/turf/open/floor/plasteel/neutral/side{ - dir = 8 - }, -/area/crew_quarters/sleep) -"auS" = ( -/obj/machinery/requests_console{ - department = "Crew Quarters"; - pixel_y = 30 - }, -/obj/machinery/camera{ - c_tag = "Dormitory North" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 1 - }, -/area/crew_quarters/sleep) -"auT" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2) -"auU" = ( -/obj/machinery/firealarm{ - dir = 2; - pixel_y = 24 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 1 - }, -/area/crew_quarters/sleep) -"auV" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/closed/wall, -/area/maintenance/fpmaint2) -"auW" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 1 - }, -/area/crew_quarters/sleep) -"auX" = ( -/obj/structure/mirror{ - icon_state = "mirror_broke"; - pixel_y = 28; - broken = 1 - }, -/obj/machinery/iv_drip, -/turf/open/floor/plating, -/area/maintenance/fpmaint2) -"auY" = ( -/obj/structure/mirror{ - icon_state = "mirror_broke"; - pixel_y = 28; - broken = 1 - }, -/obj/item/weapon/shard{ - icon_state = "medium" - }, -/obj/item/weapon/circuitboard/computer/operating, -/turf/open/floor/plating, -/area/maintenance/fpmaint2) -"auZ" = ( -/obj/structure/frame/computer, -/turf/open/floor/plating, -/area/maintenance/fpmaint2) -"ava" = ( -/obj/effect/decal/cleanable/cobweb/cobweb2, -/obj/structure/chair, -/obj/item/weapon/reagent_containers/blood/random, -/turf/open/floor/plating, -/area/maintenance/fpmaint2) -"avb" = ( -/turf/open/floor/plasteel/airless{ - icon_state = "damaged3" - }, -/area/space/nearstation) -"avc" = ( -/obj/structure/closet, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 4; - name = "4maintenance loot spawner" - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2) -"avd" = ( -/obj/machinery/door/airlock/external{ - cyclelinkeddir = 4; - req_access_txt = "13" - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint) -"ave" = ( -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; - icon_state = "space"; - layer = 4; - name = "EXTERNAL AIRLOCK"; - pixel_x = 0; - pixel_y = 32 - }, -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plating, -/area/maintenance/fpmaint) -"avf" = ( -/obj/machinery/door/airlock/maintenance{ - name = "Chemical Storage"; - req_access_txt = "12" - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint) -"avg" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/open/floor/plasteel/neutral/side{ - dir = 1 - }, -/area/crew_quarters/sleep) -"avh" = ( -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/power/apc{ - dir = 8; - name = "Vacant Office B APC"; - pixel_x = -24; - pixel_y = 0 - }, -/turf/open/floor/plating, -/area/security/vacantoffice2) -"avi" = ( -/obj/machinery/power/apc{ - dir = 1; - name = "Law Office APC"; - pixel_y = 24 - }, -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/lawoffice) -"avj" = ( -/obj/machinery/firealarm{ - dir = 8; - pixel_x = -24 - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/red/corner{ - dir = 1 - }, -/area/hallway/primary/fore) -"avk" = ( -/obj/structure/extinguisher_cabinet{ - pixel_x = 27; - pixel_y = 0 - }, -/turf/open/floor/plasteel/red/corner{ - dir = 4 - }, -/area/hallway/primary/fore) -"avl" = ( -/obj/structure/extinguisher_cabinet{ - pixel_x = -5; - pixel_y = 30 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 1 - }, -/area/crew_quarters/sleep) -"avm" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 1 - }, -/area/crew_quarters/sleep) -"avn" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 1 - }, -/area/crew_quarters/sleep) -"avo" = ( -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'HIGH VOLTAGE'"; - icon_state = "shock"; - name = "HIGH VOLTAGE"; - pixel_y = 0 - }, -/turf/closed/wall, -/area/maintenance/electrical) -"avp" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/door/poddoor/shutters{ - id = "aux_base_shutters"; - name = "Auxillary Base Shutters" - }, -/turf/open/floor/plasteel/delivery, -/area/mining_construction) -"avq" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/fpmaint2) -"avr" = ( -/obj/machinery/firealarm{ - pixel_y = 24 - }, -/obj/machinery/camera{ - c_tag = "Detective's Office"; - dir = 2 - }, -/turf/open/floor/plasteel/grimy, -/area/security/detectives_office) -"avs" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/maintenance/fpmaint) -"avt" = ( -/obj/machinery/atmospherics/pipe/manifold4w/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/crew_quarters/sleep) -"avu" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral/side{ - dir = 5 - }, -/area/crew_quarters/sleep) -"avv" = ( -/obj/structure/chair/stool{ - pixel_y = 8 - }, -/obj/effect/landmark/start{ - name = "Assistant" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/sleep) -"avw" = ( -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral/side{ - dir = 8 - }, -/area/crew_quarters/fitness) -"avx" = ( -/obj/structure/grille, -/obj/structure/window/fulltile, -/turf/open/floor/plating, -/area/crew_quarters/fitness) -"avy" = ( -/obj/structure/window/reinforced{ - dir = 8 - }, -/turf/open/floor/plasteel/black, -/area/crew_quarters/fitness) -"avz" = ( -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/fitness) -"avA" = ( -/obj/structure/window/reinforced{ - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/crew_quarters/fitness) -"avB" = ( -/obj/structure/grille, -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/obj/structure/window/reinforced/fulltile, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/turf/open/floor/plating, -/area/ai_monitored/security/armory) -"avC" = ( -/obj/structure/chair{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness) -"avD" = ( -/obj/machinery/computer/holodeck, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness) -"avE" = ( -/obj/machinery/door/poddoor/preopen{ - id = "maint3" - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"avF" = ( -/obj/machinery/door/poddoor/preopen{ - id = "maint3" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"avG" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/sleep) -"avH" = ( -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'HIGH VOLTAGE'"; - icon_state = "shock"; - name = "HIGH VOLTAGE"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/maintenance/electrical) -"avI" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"avJ" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/electrical) -"avK" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/maintenance/electrical) -"avL" = ( -/obj/machinery/power/apc{ - dir = 1; - name = "Electrical Maintenance APC"; - pixel_y = 24 - }, -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/turf/open/floor/plating, -/area/maintenance/electrical) -"avM" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plating, -/area/maintenance/electrical) -"avN" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plating, -/area/maintenance/electrical) -"avO" = ( -/obj/structure/table, -/obj/item/clothing/gloves/color/fyellow, -/obj/item/weapon/storage/toolbox/electrical{ - pixel_x = 1; - pixel_y = -1 - }, -/obj/item/device/multitool, -/obj/item/device/radio/intercom{ - freerange = 0; - frequency = 1459; - name = "Station Intercom (General)"; - pixel_x = 29 - }, -/turf/open/floor/plasteel/floorgrime, -/area/maintenance/electrical) -"avP" = ( -/obj/structure/sign/pods, -/turf/closed/wall, -/area/hallway/secondary/entry) -"avQ" = ( -/obj/machinery/airalarm{ - dir = 8; - icon_state = "alarm0"; - pixel_x = 24 - }, -/obj/machinery/light{ - icon_state = "tube1"; - dir = 4 - }, -/obj/machinery/camera{ - c_tag = "Auxillary Base Construction"; - dir = 8 - }, -/obj/structure/mining_shuttle_beacon{ - dir = 2 - }, -/turf/open/floor/plasteel/yellow/side{ - dir = 4 - }, -/area/mining_construction) -"avR" = ( -/obj/structure/table/wood, -/obj/item/weapon/storage/firstaid/regular, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/crew_quarters/sleep) -"avS" = ( -/obj/item/weapon/wrench, -/turf/open/floor/plating, -/area/maintenance/fpmaint2) -"avT" = ( -/obj/docking_port/stationary{ - dheight = 9; - dir = 2; - dwidth = 5; - height = 24; - id = "syndicate_ne"; - name = "northeast of station"; - turf_type = /turf/open/space; - width = 18 - }, -/turf/open/space, -/area/space) -"avU" = ( -/obj/item/weapon/paper/crumpled, -/turf/open/floor/plasteel/airless{ - icon_state = "damaged2" - }, -/area/space/nearstation) -"avV" = ( -/obj/structure/table, -/obj/machinery/cell_charger, -/turf/open/floor/plating, -/area/maintenance/fpmaint2) -"avW" = ( -/obj/structure/table, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 2; - name = "2maintenance loot spawner" - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2) -"avX" = ( -/obj/machinery/light/small{ - dir = 4 - }, -/obj/structure/chair/stool, -/turf/open/floor/plating, -/area/maintenance/fpmaint2) -"avY" = ( -/obj/structure/grille, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/maintenance/fpmaint) -"avZ" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/maintenance/fpmaint) -"awa" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 1 - }, -/turf/closed/wall, -/area/maintenance/fpmaint) -"awb" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint) -"awc" = ( -/obj/structure/rack, -/obj/effect/spawner/lootdrop/maintenance, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint) -"awd" = ( -/obj/machinery/power/apc{ - dir = 1; - name = "EVA Maintenance APC"; - pixel_y = 24 - }, -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint) -"awe" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint) -"awf" = ( -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 1 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint) -"awg" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint) -"awh" = ( -/obj/effect/landmark{ - name = "blobstart" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/maintenance/fpmaint) -"awi" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/fpmaint) -"awj" = ( -/obj/machinery/door/airlock/maintenance{ - req_access_txt = "12" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint) -"awk" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/fore) -"awl" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/fore) -"awm" = ( -/obj/machinery/door/airlock/maintenance{ - req_access_txt = "12" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 9 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint) -"awn" = ( -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/maintenance/fsmaint) -"awo" = ( -/obj/machinery/door/airlock{ - id_tag = "Dorm3"; - name = "Dorm 3" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/sleep) -"awp" = ( -/obj/structure/table/wood, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/item/weapon/storage/pill_bottle/dice, -/turf/open/floor/plasteel, -/area/crew_quarters/sleep) -"awq" = ( -/obj/structure/chair/stool{ - pixel_y = 8 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/sleep) -"awr" = ( -/turf/open/floor/plasteel, -/area/crew_quarters/sleep) -"aws" = ( -/obj/structure/table/wood, -/obj/item/weapon/coin/silver, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/sleep) -"awt" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 9 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/sleep) -"awu" = ( -/obj/structure/chair/stool{ - pixel_y = 8 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/sleep) -"awv" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/crew_quarters/sleep) -"aww" = ( -/obj/effect/landmark/event_spawn, -/turf/open/floor/plasteel/floorgrime, -/area/security/brig) -"awx" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"awy" = ( -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness) -"awz" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass{ - name = "Fitness" - }, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness) -"awA" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/machinery/holopad, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness) -"awB" = ( -/obj/effect/landmark/start{ - name = "Assistant" - }, -/turf/open/floor/plasteel/green/side{ - dir = 4 - }, -/area/crew_quarters/fitness) -"awC" = ( -/obj/structure/table, -/obj/item/weapon/paper{ - desc = ""; - info = "Brusies sustained in the holodeck can be healed simply by sleeping."; - name = "Holodeck Disclaimer" - }, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness) -"awD" = ( -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"awE" = ( -/obj/effect/decal/cleanable/cobweb/cobweb2, -/obj/structure/closet/crate, -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"awF" = ( -/obj/structure/closet/crate, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 2; - name = "2maintenance loot spawner" - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"awG" = ( -/obj/structure/girder, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"awH" = ( -/obj/machinery/portable_atmospherics/canister/air, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"awI" = ( -/obj/machinery/button/door{ - id = "maint2"; - name = "Blast Door Control B"; - pixel_x = -28; - pixel_y = 4; - req_access_txt = "0" - }, -/obj/machinery/button/door{ - id = "maint1"; - name = "Blast Door Control A"; - pixel_x = -28; - pixel_y = -6; - req_access_txt = "0" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"awJ" = ( -/obj/structure/janitorialcart, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"awK" = ( -/obj/structure/table/glass, -/obj/item/weapon/pen, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"awL" = ( -/obj/structure/table/glass, -/obj/item/weapon/paper_bin{ - pixel_x = -3; - pixel_y = 7 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"awM" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 6 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"awN" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/turf/open/floor/plasteel/showroomfloor, -/area/security/warden) -"awO" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/floor/plating, -/area/maintenance/electrical) -"awP" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/electrical) -"awQ" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/door/airlock/engineering{ - name = "Electrical Maintenance"; - req_access_txt = "11" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/electrical) -"awR" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/electrical) -"awS" = ( -/obj/structure/chair/stool{ - pixel_y = 8 - }, -/turf/open/floor/plating, -/area/maintenance/electrical) -"awT" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/holopad, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/electrical) -"awU" = ( -/obj/structure/table, -/obj/machinery/light{ - icon_state = "tube1"; - dir = 4 - }, -/obj/item/wallframe/camera, -/obj/item/wallframe/camera, -/obj/machinery/airalarm{ - dir = 8; - icon_state = "alarm0"; - pixel_x = 24 - }, -/obj/item/device/assembly/prox_sensor{ - pixel_x = -8; - pixel_y = 4 - }, -/turf/open/floor/plasteel/floorgrime, -/area/maintenance/electrical) -"awV" = ( -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/hallway/secondary/entry) -"awW" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/hallway/secondary/entry) -"awX" = ( -/obj/machinery/light{ - dir = 1 - }, -/turf/open/floor/plating, -/area/shuttle/auxillary_base) -"awY" = ( -/obj/machinery/light{ - dir = 1 - }, -/turf/open/floor/plasteel/arrival{ - dir = 1 - }, -/area/hallway/secondary/entry) -"awZ" = ( -/turf/open/floor/plasteel/arrival{ - dir = 1 - }, -/area/hallway/secondary/entry) -"axa" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/plating, -/area/maintenance/electrical) -"axb" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 9 - }, -/turf/open/floor/plasteel/arrival{ - dir = 5 - }, -/area/hallway/secondary/entry) -"axc" = ( -/obj/structure/rack{ - dir = 4 - }, -/obj/item/weapon/electronics/airlock, -/obj/item/weapon/electronics/airlock, -/obj/item/weapon/electronics/airlock, -/obj/item/weapon/electronics/airlock, -/obj/item/stack/cable_coil, -/obj/item/stack/cable_coil, -/obj/item/wallframe/camera, -/obj/item/wallframe/camera, -/obj/item/wallframe/camera, -/obj/item/wallframe/camera, -/obj/item/device/assault_pod/mining, -/obj/machinery/computer/security/telescreen{ - desc = "Used for the Auxillary Mining Base."; - dir = 8; - name = "Auxillary Base Monitor"; - network = list("AuxBase"); - pixel_x = 28 - }, -/turf/open/floor/plasteel/yellow/side{ - dir = 4 - }, -/area/mining_construction) -"axd" = ( -/mob/living/simple_animal/mouse, -/turf/open/floor/plating, -/area/maintenance/fpmaint2) -"axe" = ( -/obj/machinery/sleeper{ - dir = 4; - icon_state = "sleeper-open" - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2) -"axf" = ( -/obj/effect/landmark{ - name = "blobstart" - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2) -"axg" = ( -/obj/structure/table/glass, -/obj/item/weapon/storage/bag/trash, -/turf/open/floor/plating, -/area/maintenance/fpmaint2) -"axh" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/obj/machinery/light{ - dir = 1 - }, -/turf/open/floor/plasteel/arrival{ - dir = 1 - }, -/area/hallway/secondary/entry) -"axi" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2) -"axj" = ( -/obj/machinery/door/airlock/maintenance{ - name = "Firefighting equipment"; - req_access_txt = "12" - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2) -"axk" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 6 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2) -"axl" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/fpmaint2) -"axm" = ( -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'HIGH VOLTAGE'"; - icon_state = "shock"; - name = "HIGH VOLTAGE"; - pixel_y = -32 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint) -"axn" = ( -/obj/machinery/door/airlock/maintenance{ - req_access_txt = "12" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2) -"axo" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint) -"axp" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 1 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint) -"axq" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/fpmaint) -"axr" = ( -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'HIGH VOLTAGE'"; - icon_state = "shock"; - name = "HIGH VOLTAGE"; - pixel_y = -32 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint) -"axs" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint) -"axt" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint) -"axu" = ( -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/fpmaint) -"axv" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint) -"axw" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 1 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint) -"axx" = ( -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/fpmaint) -"axy" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall/r_wall, -/area/ai_monitored/storage/eva) -"axz" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/closed/wall/r_wall, -/area/ai_monitored/storage/eva) -"axA" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/ai_monitored/storage/eva) -"axB" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/fore) -"axC" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/blue/corner{ - dir = 8 - }, -/area/hallway/primary/fore) -"axD" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/maintenance/fsmaint) -"axE" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 1 - }, -/turf/open/floor/plasteel/blue/corner, -/area/hallway/primary/fore) -"axF" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 9 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint) -"axG" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/arrival{ - dir = 1 - }, -/area/hallway/secondary/entry) -"axH" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/open/floor/plasteel/yellow/side{ - dir = 1 - }, -/area/hallway/secondary/entry) -"axI" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/yellow/corner{ - dir = 4 - }, -/area/hallway/secondary/entry) -"axJ" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/fpmaint2) -"axK" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 8 - }, -/turf/closed/wall, -/area/maintenance/fpmaint2) -"axL" = ( -/obj/machinery/holopad, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/crew_quarters/sleep) -"axM" = ( -/obj/structure/table/wood, -/obj/item/device/paicard, -/turf/open/floor/plasteel, -/area/crew_quarters/sleep) -"axN" = ( -/obj/structure/table/wood, -/obj/item/weapon/storage/crayons, -/turf/open/floor/plasteel, -/area/crew_quarters/sleep) -"axO" = ( -/obj/structure/chair/stool{ - pixel_y = 8 - }, -/obj/effect/landmark/start{ - name = "Assistant" - }, -/turf/open/floor/plasteel, -/area/crew_quarters/sleep) -"axP" = ( -/obj/structure/table/wood, -/obj/item/toy/cards/deck{ - pixel_x = 2 - }, -/obj/item/clothing/mask/balaclava{ - pixel_x = -8; - pixel_y = 8 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/sleep) -"axQ" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness) -"axR" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass{ - name = "Fitness" - }, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness) -"axS" = ( -/obj/structure/window/reinforced, -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/black, -/area/crew_quarters/fitness) -"axT" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness) -"axU" = ( -/obj/structure/window/reinforced, -/turf/open/floor/plasteel/black, -/area/crew_quarters/fitness) -"axV" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/turf/open/floor/plasteel, -/area/crew_quarters/sleep) -"axW" = ( -/obj/machinery/door/window/eastright{ - base_state = "left"; - icon_state = "left"; - name = "Fitness Ring" - }, -/obj/structure/window/reinforced, -/turf/open/floor/plasteel/black, -/area/crew_quarters/fitness) -"axX" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - external_pressure_bound = 101.325; - on = 1; - pressure_checks = 1 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/sleep) -"axY" = ( -/turf/open/floor/plasteel/green/side{ - dir = 4 - }, -/area/crew_quarters/fitness) -"axZ" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass{ - name = "Holodeck Door" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 6 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness) -"aya" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness) -"ayb" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness) -"ayc" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"ayd" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aye" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 6 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"ayf" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 6 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"ayg" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"ayh" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/fpmaint2) -"ayi" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 8 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2) -"ayj" = ( -/obj/structure/table, -/obj/machinery/cell_charger, -/obj/item/weapon/stock_parts/cell/high/plus, -/obj/item/weapon/stock_parts/cell/high/plus, -/turf/open/floor/plating, -/area/maintenance/electrical) -"ayk" = ( -/turf/open/floor/plasteel/warning, -/area/hallway/secondary/entry) -"ayl" = ( -/turf/open/floor/plasteel, -/area/hallway/secondary/entry) -"aym" = ( -/turf/open/floor/plasteel/warning/corner{ - dir = 1 - }, -/area/hallway/secondary/entry) -"ayn" = ( -/turf/open/floor/plasteel/warning/corner{ - dir = 2 - }, -/area/hallway/secondary/entry) -"ayo" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/corner{ - dir = 1 - }, -/area/hallway/secondary/entry) -"ayp" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/open/floor/plasteel/warning, -/area/hallway/secondary/entry) -"ayq" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/yellow/side{ - dir = 8 - }, -/area/mining_construction) -"ayr" = ( -/obj/structure/extinguisher_cabinet{ - pixel_x = 27; - pixel_y = 0 - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/arrival{ - dir = 4 - }, -/area/hallway/secondary/entry) -"ays" = ( -/obj/structure/closet/wardrobe/white, -/obj/item/clothing/shoes/jackboots, -/obj/item/weapon/reagent_containers/blood/random, -/obj/item/weapon/reagent_containers/food/drinks/bottle/vodka/badminka, -/turf/open/floor/plating, -/area/maintenance/fpmaint2) -"ayt" = ( -/obj/structure/table/glass, -/obj/item/weapon/hemostat, -/turf/open/floor/plating, -/area/maintenance/fpmaint2) -"ayu" = ( -/obj/structure/table/glass, -/obj/item/weapon/restraints/handcuffs/cable/zipties, -/obj/item/weapon/reagent_containers/blood/random, -/turf/open/floor/plating, -/area/maintenance/fpmaint2) -"ayv" = ( -/obj/machinery/airalarm{ - pixel_y = 23 - }, -/obj/item/device/radio/off, -/obj/item/device/assembly/timer, -/turf/open/floor/plasteel, -/area/ai_monitored/storage/eva) -"ayw" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 10 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2) -"ayx" = ( -/obj/structure/closet/firecloset, -/turf/open/floor/plating, -/area/maintenance/fpmaint2) -"ayy" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/maintenance/fpmaint2) -"ayz" = ( -/turf/closed/wall/r_wall, -/area/maintenance/fpmaint2) -"ayA" = ( -/obj/structure/grille, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/maintenance/fpmaint) -"ayB" = ( -/obj/structure/grille, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/maintenance/fpmaint) -"ayC" = ( -/obj/structure/grille, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/maintenance/fpmaint) -"ayD" = ( -/obj/structure/grille, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/maintenance/fpmaint) -"ayE" = ( -/turf/closed/wall/r_wall, -/area/maintenance/fpmaint) -"ayF" = ( -/obj/structure/grille, -/obj/structure/cable, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/maintenance/fpmaint) -"ayG" = ( -/turf/closed/wall/r_wall, -/area/gateway) -"ayH" = ( -/obj/structure/disposalpipe/segment, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/fpmaint) -"ayI" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/sign/securearea{ - pixel_x = 32; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/maintenance/fpmaint) -"ayJ" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/fpmaint) -"ayK" = ( -/obj/structure/closet/crate/rcd, -/obj/machinery/camera/motion{ - c_tag = "EVA Motion Sensor"; - name = "motion-sensitive security camera" - }, -/turf/open/floor/plasteel/black, -/area/ai_monitored/storage/eva) -"ayL" = ( -/turf/closed/wall/r_wall, -/area/ai_monitored/storage/eva) -"ayM" = ( -/obj/machinery/firealarm{ - dir = 2; - pixel_y = 24 - }, -/obj/item/clothing/head/welding, -/turf/open/floor/plasteel, -/area/ai_monitored/storage/eva) -"ayN" = ( -/obj/structure/rack{ - dir = 8; - layer = 2.9 - }, -/obj/machinery/light{ - dir = 1 - }, -/obj/item/weapon/hand_labeler, -/obj/item/device/flashlight, -/obj/item/device/flashlight, -/obj/item/device/flashlight, -/obj/item/device/flashlight, -/turf/open/floor/plasteel/black, -/area/ai_monitored/storage/eva) -"ayO" = ( -/obj/structure/table, -/obj/item/weapon/storage/toolbox/electrical{ - pixel_x = 1; - pixel_y = -1 - }, -/obj/item/weapon/screwdriver{ - pixel_y = 16 - }, -/turf/open/floor/plasteel/black, -/area/ai_monitored/storage/eva) -"ayP" = ( -/obj/machinery/power/apc{ - dir = 1; - name = "EVA Storage APC"; - pixel_x = 0; - pixel_y = 24 - }, -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/turf/open/floor/plasteel, -/area/ai_monitored/storage/eva) -"ayQ" = ( -/obj/structure/table, -/obj/item/stack/cable_coil{ - pixel_x = 3; - pixel_y = -7 - }, -/obj/machinery/cell_charger, -/obj/item/weapon/stock_parts/cell/high/plus, -/turf/open/floor/plasteel/black, -/area/ai_monitored/storage/eva) -"ayR" = ( -/obj/structure/table, -/obj/item/weapon/storage/toolbox/mechanical{ - pixel_x = -2; - pixel_y = -1 - }, -/obj/item/device/multitool, -/turf/open/floor/plasteel, -/area/ai_monitored/storage/eva) -"ayS" = ( -/obj/structure/grille, -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/obj/structure/sign/securearea{ - pixel_y = 32 - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/ai_monitored/storage/eva) -"ayT" = ( -/obj/machinery/light{ - dir = 1 - }, -/obj/structure/table, -/obj/item/device/assembly/signaler, -/obj/item/device/assembly/signaler, -/obj/item/weapon/stock_parts/cell/high/plus, -/turf/open/floor/plasteel, -/area/ai_monitored/storage/eva) -"ayU" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel, -/area/ai_monitored/storage/eva) -"ayV" = ( -/obj/structure/bed, -/obj/item/weapon/bedsheet, -/obj/machinery/airalarm{ - pixel_y = 23 - }, -/obj/machinery/button/door{ - id = "Dorm2"; - name = "Dorm Bolt Control"; - normaldoorcontrol = 1; - pixel_x = 25; - pixel_y = 0; - req_access_txt = "0"; - specialfunctions = 4 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/carpet, -/area/crew_quarters/sleep) -"ayW" = ( -/turf/closed/wall, -/area/ai_monitored/storage/eva) -"ayX" = ( -/obj/structure/table, -/obj/item/weapon/storage/belt/utility, -/obj/item/weapon/storage/belt/utility, -/obj/item/weapon/storage/belt/utility, -/obj/item/clothing/head/welding, -/turf/open/floor/plasteel, -/area/ai_monitored/storage/eva) -"ayY" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - external_pressure_bound = 101.325; - on = 1; - pressure_checks = 1 - }, -/turf/open/floor/plasteel/blue/corner{ - dir = 8 - }, -/area/hallway/primary/fore) -"ayZ" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/blue/corner, -/area/hallway/primary/fore) -"aza" = ( -/obj/machinery/light, -/turf/open/floor/plasteel/neutral/side, -/area/crew_quarters/sleep) -"azb" = ( -/obj/structure/chair/stool{ - pixel_y = 8 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 2 - }, -/area/crew_quarters/sleep) -"azc" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 8 - }, -/area/crew_quarters/sleep) -"azd" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 6 - }, -/area/crew_quarters/sleep) -"aze" = ( -/turf/open/floor/plasteel/neutral/side, -/area/crew_quarters/sleep) -"azf" = ( -/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness) -"azg" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 10 - }, -/turf/open/floor/plating, -/area/crew_quarters/fitness) -"azh" = ( -/obj/machinery/camera{ - c_tag = "Fitness Room South"; - dir = 1 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/green/side{ - dir = 4 - }, -/area/crew_quarters/fitness) -"azi" = ( -/obj/machinery/door/airlock/maintenance{ - req_access_txt = "12" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/fpmaint2) -"azj" = ( -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/obj/item/device/radio/intercom{ - name = "Station Intercom (General)"; - pixel_y = -29 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 10 - }, -/area/crew_quarters/fitness) -"azk" = ( -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness) -"azl" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral/corner{ - dir = 8 - }, -/area/crew_quarters/fitness) -"azm" = ( -/obj/structure/chair/stool{ - pixel_y = 8 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness) -"azn" = ( -/obj/structure/table, -/obj/item/weapon/storage/firstaid/regular, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness) -"azo" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness) -"azp" = ( -/obj/structure/grille, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/crew_quarters/fitness) -"azq" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall, -/area/hallway/secondary/construction{ - name = "\improper Garden" - }) -"azr" = ( -/obj/structure/grille/broken, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"azs" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/ai_monitored/storage/eva) -"azt" = ( -/obj/machinery/power/terminal, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/turf/open/floor/plating, -/area/maintenance/electrical) -"azu" = ( -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/turf/open/floor/plating, -/area/maintenance/electrical) -"azv" = ( -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/turf/open/floor/plating, -/area/maintenance/electrical) -"azw" = ( -/obj/machinery/light_switch{ - pixel_y = -25 - }, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/turf/open/floor/plating, -/area/maintenance/electrical) -"azx" = ( -/obj/machinery/power/terminal, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/turf/open/floor/plating, -/area/maintenance/electrical) -"azy" = ( -/obj/machinery/door/airlock/external{ - name = "Port Docking Bay 1" - }, -/turf/open/floor/plating, -/area/hallway/secondary/entry) -"azz" = ( -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/hallway/secondary/entry) -"azA" = ( -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/hallway/secondary/entry) -"azB" = ( -/turf/open/floor/plasteel/warning{ - dir = 10 - }, -/area/hallway/secondary/entry) -"azC" = ( -/obj/item/device/radio/intercom{ - name = "Station Intercom (General)"; - pixel_y = -29 - }, -/turf/open/floor/plasteel/warning, -/area/hallway/secondary/entry) -"azD" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/arrival{ - dir = 4 - }, -/area/hallway/secondary/entry) -"azE" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/ai_monitored/storage/eva) -"azF" = ( -/turf/closed/wall, -/area/hallway/secondary/construction{ - name = "\improper Garden" - }) -"azG" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 9 - }, -/turf/closed/wall, -/area/maintenance/fpmaint2) -"azH" = ( -/obj/structure/lattice, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/space, -/area/space) -"azI" = ( -/obj/structure/lattice, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/space, -/area/space) -"azJ" = ( -/obj/machinery/gateway{ - dir = 9 - }, -/turf/open/floor/plasteel/vault{ - dir = 1 - }, -/area/gateway) -"azK" = ( -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/turf/open/floor/plasteel/black, -/area/gateway) -"azL" = ( -/obj/machinery/gateway{ - dir = 5 - }, -/turf/open/floor/plasteel/vault{ - dir = 4 - }, -/area/gateway) -"azM" = ( -/obj/machinery/gateway{ - dir = 1 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/gateway) -"azN" = ( -/obj/machinery/light{ - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/gateway) -"azO" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 8 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint) -"azP" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/ai_monitored/storage/eva) -"azQ" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/maintenance{ - name = "EVA Maintenance"; - req_access_txt = "18" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/ai_monitored/storage/eva) -"azR" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/ai_monitored/storage/eva) -"azS" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass_command{ - name = "EVA Storage"; - req_access_txt = "18" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/ai_monitored/storage/eva) -"azT" = ( -/obj/machinery/atmospherics/pipe/manifold4w/scrubbers/hidden, -/turf/open/floor/plasteel/neutral/corner{ - dir = 2 - }, -/area/crew_quarters/sleep) -"azU" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/ai_monitored/storage/eva) -"azV" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/neutral/side, -/area/crew_quarters/sleep) -"azW" = ( -/turf/open/floor/plasteel, -/area/ai_monitored/storage/eva) -"azX" = ( -/obj/machinery/door/airlock{ - name = "Unisex Showers"; - req_access_txt = "0" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/turf/open/floor/plasteel/freezer, -/area/crew_quarters/toilet) -"azY" = ( -/obj/structure/table, -/obj/item/device/radio/off, -/obj/item/device/radio/off, -/obj/item/device/assembly/prox_sensor, -/obj/item/device/assembly/prox_sensor, -/turf/open/floor/plasteel, -/area/ai_monitored/storage/eva) -"azZ" = ( -/turf/open/floor/plasteel/blue/corner{ - dir = 8 - }, -/area/hallway/primary/fore) -"aAa" = ( -/turf/open/floor/plasteel/blue/corner, -/area/hallway/primary/fore) -"aAb" = ( -/obj/machinery/door/airlock{ - id_tag = "Dorm2"; - name = "Dorm 2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/sleep) -"aAc" = ( -/obj/structure/grille, -/obj/structure/window/fulltile, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aAd" = ( -/obj/machinery/light_switch{ - pixel_y = -25 - }, -/turf/open/floor/plasteel/neutral/side, -/area/crew_quarters/sleep) -"aAe" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/maintenance/fpmaint2) -"aAf" = ( -/obj/structure/closet/wardrobe/pjs, -/turf/open/floor/plasteel/neutral/side, -/area/crew_quarters/sleep) -"aAg" = ( -/obj/item/device/radio/intercom{ - name = "Station Intercom (General)"; - pixel_y = -29 - }, -/turf/open/floor/plasteel/neutral/side, -/area/crew_quarters/sleep) -"aAh" = ( -/turf/closed/wall, -/area/crew_quarters/toilet) -"aAi" = ( -/obj/structure/closet/wardrobe/pjs, -/turf/open/floor/plasteel/neutral/side{ - dir = 6 - }, -/area/crew_quarters/sleep) -"aAj" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/machinery/power/apc{ - dir = 2; - name = "Security Checkpoint APC"; - pixel_x = 1; - pixel_y = -24 - }, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/security/checkpoint2) -"aAk" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side, -/area/crew_quarters/fitness) -"aAl" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 5 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 10 - }, -/area/crew_quarters/fitness) -"aAm" = ( -/obj/machinery/firealarm{ - dir = 1; - pixel_y = -24 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/light, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side, -/area/crew_quarters/fitness) -"aAn" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/light_switch{ - pixel_y = -25 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side, -/area/crew_quarters/fitness) -"aAo" = ( -/obj/structure/reagent_dispensers/water_cooler, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral/side{ - dir = 6 - }, -/area/crew_quarters/fitness) -"aAp" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 10 - }, -/turf/open/floor/plasteel/neutral/side, -/area/crew_quarters/fitness) -"aAq" = ( -/obj/machinery/atmospherics/components/unary/tank/air{ - dir = 8 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aAr" = ( -/obj/structure/closet, -/obj/effect/decal/cleanable/cobweb, -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aAs" = ( -/obj/structure/closet, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 2; - name = "2maintenance loot spawner" - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aAt" = ( -/obj/machinery/door/poddoor/preopen{ - id = "maint2" - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aAu" = ( -/obj/machinery/door/poddoor/preopen{ - id = "maint2" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aAv" = ( -/obj/structure/closet, -/obj/effect/landmark{ - name = "blobstart" - }, -/obj/effect/spawner/lootdrop/maintenance, -/obj/item/weapon/reagent_containers/food/drinks/bottle/vodka/badminka, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aAw" = ( -/obj/machinery/power/apc{ - dir = 4; - name = "Garden APC"; - pixel_x = 27; - pixel_y = 2 - }, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/turf/open/floor/plating, -/area/hallway/secondary/construction{ - name = "\improper Garden" - }) -"aAx" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/hallway/secondary/construction{ - name = "\improper Garden" - }) -"aAy" = ( -/obj/machinery/power/smes{ - charge = 0 - }, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/turf/open/floor/plating, -/area/maintenance/electrical) -"aAz" = ( -/obj/machinery/computer/monitor{ - name = "backup power monitoring console" - }, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/structure/cable, -/turf/open/floor/plating, -/area/maintenance/electrical) -"aAA" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/turf/closed/wall, -/area/maintenance/electrical) -"aAB" = ( -/obj/machinery/power/smes{ - charge = 0 - }, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/turf/open/floor/plating, -/area/maintenance/electrical) -"aAC" = ( -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'KEEP CLEAR OF DOCKING AREA'."; - name = "KEEP CLEAR: DOCKING AREA"; - pixel_y = 0 - }, -/turf/closed/wall/r_wall, -/area/hallway/secondary/entry) -"aAD" = ( -/obj/structure/grille, -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; - icon_state = "space"; - layer = 4; - name = "EXTERNAL AIRLOCK"; - pixel_x = 0; - pixel_y = 32 - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/hallway/secondary/entry) -"aAE" = ( -/obj/structure/closet/emcloset, -/turf/open/floor/plasteel/warning, -/area/hallway/secondary/entry) -"aAF" = ( -/obj/structure/closet/emcloset, -/turf/open/floor/plasteel/warning{ - dir = 10 - }, -/area/hallway/secondary/entry) -"aAG" = ( -/obj/machinery/vending/coffee, -/turf/open/floor/plasteel/warning{ - dir = 6 - }, -/area/hallway/secondary/entry) -"aAH" = ( -/obj/machinery/camera{ - c_tag = "Arrivals Bay 1 North"; - dir = 1 - }, -/turf/open/floor/plasteel/warning, -/area/hallway/secondary/entry) -"aAI" = ( -/obj/machinery/door/firedoor, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/hallway/secondary/entry) -"aAJ" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/door/firedoor, -/turf/open/floor/plasteel/arrival{ - dir = 4 - }, -/area/hallway/secondary/entry) -"aAK" = ( -/obj/machinery/light{ - dir = 1 - }, -/obj/structure/sink{ - pixel_y = 30 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/hallway/secondary/construction{ - name = "\improper Garden" - }) -"aAL" = ( -/obj/machinery/power/apc{ - dir = 2; - name = "Primary Tool Storage APC"; - pixel_x = 1; - pixel_y = -24 - }, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/storage/primary) -"aAM" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2) -"aAN" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2) -"aAO" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2) -"aAP" = ( -/obj/machinery/hydroponics/soil, -/turf/open/floor/grass, -/area/hallway/secondary/construction{ - name = "\improper Garden" - }) -"aAQ" = ( -/turf/open/floor/plasteel, -/area/hallway/secondary/construction{ - name = "\improper Garden" - }) -"aAR" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/ai_monitored/storage/eva) -"aAS" = ( -/obj/structure/extinguisher_cabinet{ - pixel_x = -5; - pixel_y = 30 - }, -/turf/open/floor/plasteel, -/area/hallway/secondary/construction{ - name = "\improper Garden" - }) -"aAT" = ( -/obj/machinery/seed_extractor, -/turf/open/floor/plasteel, -/area/hallway/secondary/construction{ - name = "\improper Garden" - }) -"aAU" = ( -/obj/structure/sink{ - pixel_y = 30 - }, -/turf/open/floor/plasteel, -/area/hallway/secondary/construction{ - name = "\improper Garden" - }) -"aAV" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/effect/spawner/lootdrop/maintenance, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 5 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2) -"aAW" = ( -/obj/structure/rack{ - dir = 8; - layer = 2.9 - }, -/obj/item/weapon/tank/jetpack/carbondioxide, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/ai_monitored/storage/eva) -"aAX" = ( -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral/side{ - dir = 8 - }, -/area/crew_quarters/sleep) -"aAY" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2) -"aAZ" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/turf/open/floor/plasteel/freezer, -/area/crew_quarters/toilet) -"aBa" = ( -/turf/closed/wall/r_wall, -/area/ai_monitored/nuke_storage) -"aBb" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall/r_wall, -/area/ai_monitored/nuke_storage) -"aBc" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/closed/wall/r_wall, -/area/ai_monitored/nuke_storage) -"aBd" = ( -/obj/machinery/gateway{ - dir = 8 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/gateway) -"aBe" = ( -/turf/open/floor/plasteel/black, -/area/gateway) -"aBf" = ( -/obj/machinery/gateway{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/gateway) -"aBg" = ( -/obj/machinery/gateway/centerstation, -/turf/open/floor/plasteel/black, -/area/gateway) -"aBh" = ( -/obj/machinery/camera{ - c_tag = "EVA Maintenance"; - dir = 8; - network = list("SS13") - }, -/obj/machinery/light/small{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/maintenance/fpmaint) -"aBi" = ( -/obj/machinery/power/apc{ - dir = 8; - name = "Gateway APC"; - pixel_x = -24; - pixel_y = -1 - }, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 5 - }, -/turf/open/floor/plating, -/area/gateway) -"aBj" = ( -/obj/structure/rack{ - dir = 8; - layer = 2.9 - }, -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/obj/item/weapon/tank/jetpack/carbondioxide, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning{ - dir = 9 - }, -/area/ai_monitored/storage/eva) -"aBk" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/closed/wall/r_wall, -/area/ai_monitored/storage/eva) -"aBl" = ( -/obj/machinery/door/airlock/maintenance{ - name = "Security Maintenance"; - req_access_txt = "1" - }, -/turf/open/floor/plating, -/area/security/checkpoint2) -"aBm" = ( -/obj/effect/landmark/start{ - name = "Assistant" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 5 - }, -/turf/open/floor/plasteel, -/area/hallway/secondary/construction{ - name = "\improper Garden" - }) -"aBn" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/ai_monitored/storage/eva) -"aBo" = ( -/obj/machinery/holopad, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/ai_monitored/storage/eva) -"aBp" = ( -/obj/structure/rack{ - dir = 8; - layer = 2.9 - }, -/obj/item/clothing/shoes/magboots, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning{ - dir = 5 - }, -/area/ai_monitored/storage/eva) -"aBq" = ( -/obj/structure/rack{ - dir = 8; - layer = 2.9 - }, -/obj/item/clothing/shoes/magboots, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/ai_monitored/storage/eva) -"aBr" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/plasteel, -/area/ai_monitored/storage/eva) -"aBs" = ( -/obj/structure/grille, -/obj/structure/cable, -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/ai_monitored/storage/eva) -"aBt" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/ai_monitored/storage/eva) -"aBu" = ( -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/turf/open/floor/plasteel/blue/corner, -/area/hallway/primary/fore) -"aBv" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/hallway/secondary/construction{ - name = "\improper Garden" - }) -"aBw" = ( -/obj/item/seeds/apple, -/obj/item/seeds/banana, -/obj/item/seeds/cocoapod, -/obj/item/seeds/grape, -/obj/item/seeds/orange, -/obj/item/seeds/sugarcane, -/obj/item/seeds/wheat, -/obj/item/seeds/watermelon, -/obj/structure/table/glass, -/obj/item/seeds/tower, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/hallway/secondary/construction{ - name = "\improper Garden" - }) -"aBx" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 9 - }, -/turf/closed/wall, -/area/crew_quarters/toilet) -"aBy" = ( -/turf/open/floor/plasteel/freezer, -/area/crew_quarters/toilet) -"aBz" = ( -/obj/machinery/shower{ - dir = 4 - }, -/turf/open/floor/plasteel/freezer, -/area/crew_quarters/toilet) -"aBA" = ( -/obj/machinery/shower{ - dir = 8 - }, -/turf/open/floor/plasteel/freezer, -/area/crew_quarters/toilet) -"aBB" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/closed/wall, -/area/maintenance/fsmaint2) -"aBC" = ( -/obj/machinery/door/airlock/maintenance{ - req_access_txt = "12" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aBD" = ( -/obj/machinery/meter, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 8 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aBE" = ( -/obj/item/clothing/under/rank/mailman, -/obj/item/clothing/head/mailman, -/obj/structure/closet, -/obj/effect/landmark{ - name = "blobstart" - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aBF" = ( -/obj/machinery/space_heater, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aBG" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/plasteel, -/area/hallway/secondary/construction{ - name = "\improper Garden" - }) -"aBH" = ( -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/hallway/secondary/entry) -"aBI" = ( -/turf/closed/wall, -/area/security/checkpoint2) -"aBJ" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall, -/area/security/checkpoint2) -"aBK" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/closed/wall, -/area/security/checkpoint2) -"aBL" = ( -/obj/machinery/door/airlock/maintenance{ - name = "Garden Maintenance"; - req_access_txt = "12" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/fpmaint2) -"aBM" = ( -/obj/effect/landmark/start{ - name = "Assistant" - }, -/turf/open/floor/plasteel, -/area/hallway/secondary/construction{ - name = "\improper Garden" - }) -"aBN" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall, -/area/storage/primary) -"aBO" = ( -/obj/machinery/requests_console{ - department = "EVA"; - pixel_x = -32; - pixel_y = 0 - }, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/ai_monitored/storage/eva) -"aBP" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/ai_monitored/storage/eva) -"aBQ" = ( -/turf/closed/wall, -/area/storage/primary) -"aBR" = ( -/turf/closed/wall/r_wall, -/area/storage/primary) -"aBS" = ( -/obj/machinery/light_switch{ - pixel_y = 28 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/bluegrid, -/area/ai_monitored/nuke_storage) -"aBT" = ( -/obj/machinery/computer/bank_machine, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/ai_monitored/nuke_storage) -"aBU" = ( -/obj/machinery/power/apc{ - dir = 1; - name = "Vault APC"; - pixel_x = 0; - pixel_y = 25 - }, -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/bluegrid, -/area/ai_monitored/nuke_storage) -"aBV" = ( -/obj/machinery/airalarm{ - pixel_y = 23 - }, -/obj/machinery/light{ - dir = 1 - }, -/turf/open/floor/bluegrid, -/area/ai_monitored/nuke_storage) -"aBW" = ( -/obj/structure/filingcabinet, -/obj/item/weapon/folder/documents, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/ai_monitored/nuke_storage) -"aBX" = ( -/obj/machinery/gateway{ - dir = 10 - }, -/turf/open/floor/plasteel/vault{ - dir = 4 - }, -/area/gateway) -"aBY" = ( -/obj/machinery/gateway{ - dir = 6 - }, -/turf/open/floor/plasteel/vault{ - dir = 1 - }, -/area/gateway) -"aBZ" = ( -/obj/machinery/gateway, -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/gateway) -"aCa" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel, -/area/ai_monitored/storage/eva) -"aCb" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/item/weapon/pen{ - desc = "Writes upside down!"; - name = "astronaut pen" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/ai_monitored/storage/eva) -"aCc" = ( -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/ai_monitored/storage/eva) -"aCd" = ( -/obj/structure/bed, -/obj/item/weapon/bedsheet, -/obj/machinery/airalarm{ - pixel_y = 23 - }, -/obj/machinery/button/door{ - id = "Dorm1"; - name = "Dorm Bolt Control"; - normaldoorcontrol = 1; - pixel_x = 25; - pixel_y = 0; - req_access_txt = "0"; - specialfunctions = 4 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/carpet, -/area/crew_quarters/sleep) -"aCe" = ( -/obj/effect/landmark{ - name = "xeno_spawn"; - pixel_x = -1 - }, -/obj/item/weapon/bikehorn/rubberducky, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/turf/open/floor/plasteel/freezer, -/area/crew_quarters/toilet) -"aCf" = ( -/obj/machinery/camera{ - c_tag = "Theatre Storage" - }, -/turf/open/floor/plasteel/white/side{ - dir = 4 - }, -/area/crew_quarters/theatre) -"aCg" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/turf/open/floor/plasteel, -/area/ai_monitored/storage/eva) -"aCh" = ( -/obj/machinery/vending/autodrobe, -/turf/open/floor/plasteel/white/side{ - dir = 4 - }, -/area/crew_quarters/theatre) -"aCi" = ( -/obj/structure/grille, -/obj/structure/cable, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/ai_monitored/storage/eva) -"aCj" = ( -/obj/machinery/camera{ - c_tag = "EVA East"; - dir = 1 - }, -/turf/open/floor/plasteel, -/area/ai_monitored/storage/eva) -"aCk" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 1 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aCl" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aCm" = ( -/obj/structure/sink{ - icon_state = "sink"; - dir = 8; - pixel_x = -12; - pixel_y = 2 - }, -/obj/structure/mirror{ - pixel_x = -28 - }, -/obj/machinery/light{ - dir = 1 - }, -/turf/open/floor/plasteel/freezer, -/area/crew_quarters/toilet) -"aCn" = ( -/obj/structure/urinal{ - pixel_y = 32 - }, -/turf/open/floor/plasteel/freezer, -/area/crew_quarters/toilet) -"aCo" = ( -/obj/structure/chair/stool{ - pixel_y = 8 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aCp" = ( -/obj/machinery/camera{ - c_tag = "Arrivals North"; - dir = 8; - network = list("SS13") - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/turf/open/floor/plasteel/arrival{ - dir = 4 - }, -/area/hallway/secondary/entry) -"aCq" = ( -/obj/structure/table/wood, -/obj/machinery/requests_console{ - department = "Theatre"; - departmentType = 0; - name = "theatre RC"; - pixel_x = -32; - pixel_y = 0 - }, -/obj/item/weapon/reagent_containers/food/snacks/baguette, -/obj/item/toy/dummy, -/turf/open/floor/plasteel/white/side{ - dir = 4 - }, -/area/crew_quarters/theatre) -"aCr" = ( -/turf/closed/wall, -/area/crew_quarters/theatre) -"aCs" = ( -/obj/structure/closet/wardrobe/red, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/red/side{ - dir = 1 - }, -/area/security/checkpoint2) -"aCt" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aCu" = ( -/obj/structure/grille, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 5 - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/crew_quarters/fitness) -"aCv" = ( -/obj/structure/grille, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/crew_quarters/fitness) -"aCw" = ( -/obj/structure/grille, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 9 - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/crew_quarters/fitness) -"aCx" = ( -/obj/machinery/atmospherics/components/binary/valve, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aCy" = ( -/obj/effect/decal/cleanable/oil, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aCz" = ( -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aCA" = ( -/obj/structure/grille/broken, -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/structure/window{ - icon_state = "window"; - dir = 4 - }, -/obj/structure/window, -/turf/open/floor/plating{ - icon_state = "panelscorched" - }, -/area/maintenance/fsmaint2) -"aCB" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 6 - }, -/turf/closed/wall, -/area/maintenance/fsmaint2) -"aCC" = ( -/obj/machinery/door/poddoor/preopen{ - id = "maint1" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aCD" = ( -/obj/machinery/door/poddoor/preopen{ - id = "maint1" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aCE" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/maintenance/fsmaint2) -"aCF" = ( -/obj/structure/girder, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aCG" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aCH" = ( -/obj/machinery/space_heater, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aCI" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aCJ" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aCK" = ( -/obj/structure/reagent_dispensers/watertank, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aCL" = ( -/obj/structure/closet/secure_closet/security, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/red/side{ - dir = 9 - }, -/area/security/checkpoint2) -"aCM" = ( -/obj/structure/reagent_dispensers/fueltank, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aCN" = ( -/obj/structure/rack, -/obj/effect/spawner/lootdrop/maintenance, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aCO" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/chapel/main) -"aCP" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 10 - }, -/turf/open/floor/plasteel/black, -/area/chapel/main) -"aCQ" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/plasteel/black, -/area/chapel/main) -"aCR" = ( -/turf/closed/wall, -/area/chapel/main) -"aCS" = ( -/turf/closed/wall/mineral/titanium, -/area/shuttle/arrival) -"aCT" = ( -/obj/structure/table, -/obj/item/stack/sheet/metal{ - amount = 50 - }, -/obj/item/stack/sheet/metal{ - amount = 50 - }, -/obj/item/stack/sheet/glass{ - amount = 50 - }, -/turf/open/floor/plasteel/yellow/side{ - dir = 4 - }, -/area/mining_construction) -"aCU" = ( -/obj/machinery/door/airlock/titanium{ - name = "Arrivals Shuttle Airlock" - }, -/turf/open/floor/plating, -/area/shuttle/arrival) -"aCV" = ( -/obj/structure/grille, -/obj/structure/window/shuttle, -/turf/open/floor/plating, -/area/shuttle/arrival) -"aCW" = ( -/obj/structure/reagent_dispensers/watertank, -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plating, -/area/maintenance/fpmaint2) -"aCX" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel, -/area/mining_construction) -"aCY" = ( -/obj/machinery/computer/security, -/obj/structure/reagent_dispensers/peppertank{ - pixel_x = 0; - pixel_y = 30 - }, -/turf/open/floor/plasteel/red/side{ - dir = 1 - }, -/area/security/checkpoint2) -"aCZ" = ( -/turf/open/floor/plasteel/red/side{ - dir = 5 - }, -/area/security/checkpoint2) -"aDa" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel, -/area/hallway/secondary/construction{ - name = "\improper Garden" - }) -"aDb" = ( -/obj/structure/table, -/obj/item/weapon/wirecutters, -/obj/item/device/flashlight{ - pixel_x = 1; - pixel_y = 5 - }, -/obj/machinery/firealarm{ - dir = 2; - pixel_y = 24 - }, -/turf/open/floor/plasteel, -/area/storage/primary) -"aDc" = ( -/obj/machinery/computer/card, -/obj/machinery/light{ - dir = 1 - }, -/obj/item/device/radio/intercom{ - broadcasting = 0; - name = "Station Intercom (General)"; - pixel_y = 20 - }, -/turf/open/floor/plasteel/red/side{ - dir = 1 - }, -/area/security/checkpoint2) -"aDd" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/storage/primary) -"aDe" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/storage/primary) -"aDf" = ( -/obj/machinery/computer/secure_data, -/obj/machinery/requests_console{ - department = "Security"; - departmentType = 5; - pixel_y = 30 - }, -/turf/open/floor/plasteel/red/side{ - dir = 1 - }, -/area/security/checkpoint2) -"aDg" = ( -/obj/machinery/biogenerator, -/turf/open/floor/plasteel, -/area/hallway/secondary/construction{ - name = "\improper Garden" - }) -"aDh" = ( -/obj/machinery/vending/assist, -/turf/open/floor/plasteel, -/area/storage/primary) -"aDi" = ( -/obj/structure/window/reinforced, -/turf/open/floor/plasteel/black, -/area/gateway) -"aDj" = ( -/obj/structure/window/reinforced, -/obj/machinery/atmospherics/components/unary/vent_pump{ - on = 1 - }, -/turf/open/floor/plasteel/black, -/area/gateway) -"aDk" = ( -/obj/structure/table, -/obj/item/device/assembly/igniter{ - pixel_x = -8; - pixel_y = -4 - }, -/obj/item/device/assembly/igniter, -/obj/item/weapon/screwdriver{ - pixel_y = 16 - }, -/obj/machinery/camera{ - c_tag = "Primary Tool Storage" - }, -/obj/machinery/requests_console{ - department = "Tool Storage"; - departmentType = 0; - pixel_y = 30 - }, -/turf/open/floor/plasteel, -/area/storage/primary) -"aDl" = ( -/obj/structure/table, -/obj/item/device/t_scanner, -/obj/machinery/airalarm{ - pixel_y = 23 - }, -/turf/open/floor/plasteel, -/area/storage/primary) -"aDm" = ( -/obj/structure/table, -/obj/machinery/cell_charger, -/obj/machinery/light_switch{ - pixel_y = 28 - }, -/obj/item/weapon/stock_parts/cell/high/plus, -/turf/open/floor/plasteel, -/area/storage/primary) -"aDn" = ( -/obj/structure/table, -/obj/item/device/assembly/signaler, -/obj/item/device/assembly/signaler, -/obj/item/device/radio/intercom{ - broadcasting = 0; - name = "Station Intercom (General)"; - pixel_y = 20 - }, -/obj/item/device/multitool, -/obj/item/device/multitool{ - pixel_x = 4 - }, -/turf/open/floor/plasteel, -/area/storage/primary) -"aDo" = ( -/turf/open/floor/plasteel, -/area/storage/primary) -"aDp" = ( -/obj/structure/table, -/obj/item/weapon/storage/toolbox/mechanical{ - pixel_x = -2; - pixel_y = -1 - }, -/turf/open/floor/plasteel, -/area/storage/primary) -"aDq" = ( -/obj/machinery/vending/tool, -/turf/open/floor/plasteel, -/area/storage/primary) -"aDr" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 9 - }, -/turf/open/floor/bluegrid, -/area/ai_monitored/nuke_storage) -"aDs" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/vault{ - dir = 1 - }, -/area/ai_monitored/nuke_storage) -"aDt" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 5 - }, -/turf/open/floor/bluegrid, -/area/ai_monitored/nuke_storage) -"aDu" = ( -/obj/structure/table, -/obj/machinery/microwave, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/syndicate) -"aDv" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/plasteel/vault{ - dir = 4 - }, -/area/ai_monitored/nuke_storage) -"aDw" = ( -/obj/structure/window/reinforced, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/gateway) -"aDx" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/door/window{ - name = "Gateway Chamber"; - req_access_txt = "62" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 6 - }, -/turf/open/floor/plasteel/black, -/area/gateway) -"aDy" = ( -/obj/structure/window/reinforced, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/black, -/area/gateway) -"aDz" = ( -/obj/structure/rack{ - dir = 1 - }, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 2; - name = "2maintenance loot spawner" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/maintenance/fpmaint) -"aDA" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/ai_monitored/storage/eva) -"aDB" = ( -/obj/machinery/suit_storage_unit/standard_unit, -/turf/open/floor/plasteel/warning{ - dir = 2 - }, -/area/ai_monitored/storage/eva) -"aDC" = ( -/obj/machinery/suit_storage_unit/standard_unit, -/turf/open/floor/plasteel/warning{ - dir = 10 - }, -/area/ai_monitored/storage/eva) -"aDD" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/ai_monitored/storage/eva) -"aDE" = ( -/obj/machinery/suit_storage_unit/standard_unit, -/obj/machinery/light, -/obj/machinery/camera{ - c_tag = "EVA Storage"; - dir = 1 - }, -/turf/open/floor/plasteel/warning{ - dir = 2 - }, -/area/ai_monitored/storage/eva) -"aDF" = ( -/obj/machinery/suit_storage_unit/standard_unit, -/turf/open/floor/plasteel/warning{ - dir = 6 - }, -/area/ai_monitored/storage/eva) -"aDG" = ( -/obj/machinery/atmospherics/pipe/manifold4w/scrubbers/hidden, -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/crew_quarters/sleep) -"aDH" = ( -/obj/structure/table, -/obj/item/weapon/paper_bin{ - pixel_x = 1; - pixel_y = 9 - }, -/obj/item/weapon/pen, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/item/weapon/folder/white, -/obj/item/weapon/stamp/rd{ - pixel_x = 3; - pixel_y = -2 - }, -/turf/open/floor/plasteel/cafeteria, -/area/crew_quarters/hor) -"aDI" = ( -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'HIGH VOLTAGE'"; - icon_state = "shock"; - name = "HIGH VOLTAGE" - }, -/turf/closed/wall/r_wall, -/area/ai_monitored/storage/eva) -"aDJ" = ( -/obj/structure/table, -/obj/item/device/flashlight/lamp{ - pixel_x = 4; - pixel_y = 1 - }, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/syndicate) -"aDK" = ( -/obj/machinery/door/airlock{ - id_tag = "Dorm1"; - name = "Dorm 1" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/sleep) -"aDL" = ( -/obj/structure/sink{ - icon_state = "sink"; - dir = 8; - pixel_x = -12; - pixel_y = 2 - }, -/obj/structure/sink{ - icon_state = "sink"; - dir = 8; - pixel_x = -12; - pixel_y = 2 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/freezer, -/area/crew_quarters/toilet) -"aDM" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/freezer, -/area/crew_quarters/toilet) -"aDN" = ( -/obj/machinery/light/small, -/turf/open/floor/plasteel/freezer, -/area/crew_quarters/toilet) -"aDO" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/freezer, -/area/crew_quarters/toilet) -"aDP" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - on = 1 - }, -/turf/open/floor/plasteel/freezer, -/area/crew_quarters/toilet) -"aDQ" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/turf/open/floor/plasteel/freezer, -/area/crew_quarters/toilet) -"aDR" = ( -/obj/structure/table/wood, -/obj/structure/mirror{ - pixel_x = -28 - }, -/obj/item/weapon/lipstick/random{ - pixel_x = 2; - pixel_y = 2 - }, -/obj/item/weapon/lipstick/random{ - pixel_x = -2; - pixel_y = -2 - }, -/turf/open/floor/plasteel/white/side{ - dir = 4 - }, -/area/crew_quarters/theatre) -"aDS" = ( -/obj/machinery/door/airlock{ - name = "Unisex Showers"; - req_access_txt = "0" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/freezer, -/area/crew_quarters/toilet) -"aDT" = ( -/obj/machinery/light/small, -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/turf/open/floor/plasteel/freezer, -/area/crew_quarters/toilet) -"aDU" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_Toxins = 0 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/freezer, -/area/crew_quarters/toilet) -"aDV" = ( -/obj/machinery/meter, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 5 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aDW" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 10 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aDX" = ( -/obj/effect/decal/cleanable/cobweb/cobweb2, -/obj/structure/reagent_dispensers/fueltank, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aDY" = ( -/obj/structure/chair/stool, -/obj/effect/landmark/start{ - name = "Mime" - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/white/side{ - dir = 4 - }, -/area/crew_quarters/theatre) -"aDZ" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aEa" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 6 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aEb" = ( -/obj/machinery/door/airlock/maintenance{ - name = "Theatre Maintenance"; - req_access_txt = "46" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/crew_quarters/theatre) -"aEc" = ( -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white/side{ - dir = 4 - }, -/area/crew_quarters/theatre) -"aEd" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aEe" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aEf" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aEg" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/power/apc{ - dir = 2; - name = "Chapel APC"; - pixel_x = 0; - pixel_y = -24 - }, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/turf/open/floor/plating, -/area/chapel/main) -"aEh" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/chapel/main) -"aEi" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/door/airlock/maintenance{ - name = "Chapel Maintenance"; - req_access_txt = "12" - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aEj" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/black, -/area/chapel/main) -"aEk" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 10 - }, -/turf/open/floor/plasteel/black, -/area/chapel/main) -"aEl" = ( -/obj/effect/landmark/event_spawn, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aEm" = ( -/obj/machinery/door/window{ - dir = 8; - name = "Mass Driver"; - req_access_txt = "22" - }, -/obj/machinery/mass_driver{ - dir = 4; - id = "chapelgun"; - name = "Holy Driver" - }, -/turf/open/floor/plating/warnplate{ - dir = 8 - }, -/area/chapel/main) -"aEn" = ( -/obj/machinery/door/poddoor{ - id = "chapelgun"; - name = "Chapel Launcher Door" - }, -/turf/open/floor/plating, -/area/chapel/main) -"aEo" = ( -/obj/structure/table, -/obj/item/weapon/storage/firstaid/regular, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/arrival) -"aEp" = ( -/turf/open/floor/plating/warnplate{ - dir = 10 - }, -/area/shuttle/auxillary_base) -"aEq" = ( -/obj/machinery/computer/arcade, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/arrival) -"aEr" = ( -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/arrival) -"aEs" = ( -/obj/structure/closet/wardrobe/black, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/arrival) -"aEt" = ( -/obj/structure/closet/wardrobe/green, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/arrival) -"aEu" = ( -/obj/structure/closet/wardrobe/grey, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/arrival) -"aEv" = ( -/obj/structure/closet/wardrobe/mixed, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/arrival) -"aEw" = ( -/obj/machinery/requests_console{ - department = "Arrival shuttle"; - pixel_y = 30 - }, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/arrival) -"aEx" = ( -/obj/structure/shuttle/engine/propulsion{ - icon_state = "burst_r"; - dir = 8 - }, -/turf/open/floor/plasteel/black, -/area/shuttle/arrival) -"aEy" = ( -/obj/structure/shuttle/engine/heater{ - icon_state = "heater"; - dir = 4 - }, -/obj/structure/window/reinforced{ - dir = 8 - }, -/turf/open/floor/plasteel/black, -/area/shuttle/arrival) -"aEz" = ( -/obj/machinery/power/apc{ - dir = 4; - name = "Entry Hall APC"; - pixel_x = 24; - pixel_y = 0 - }, -/obj/structure/cable, -/turf/open/floor/plasteel/arrival{ - dir = 4 - }, -/area/hallway/secondary/entry) -"aEA" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/sortjunction{ - dir = 2; - icon_state = "pipe-j1s"; - sortType = 18 - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aEB" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aEC" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aED" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 1 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aEE" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 5 - }, -/turf/open/floor/plasteel, -/area/security/checkpoint2) -"aEF" = ( -/obj/structure/table/glass, -/obj/item/weapon/reagent_containers/food/snacks/grown/wheat, -/obj/item/weapon/reagent_containers/food/snacks/grown/watermelon, -/obj/item/weapon/reagent_containers/food/snacks/grown/watermelon, -/obj/item/weapon/reagent_containers/food/snacks/grown/watermelon, -/obj/item/weapon/reagent_containers/food/snacks/grown/citrus/orange, -/obj/item/weapon/reagent_containers/food/snacks/grown/grapes, -/obj/item/weapon/reagent_containers/food/snacks/grown/cocoapod, -/turf/open/floor/plasteel/green/side{ - dir = 4 - }, -/area/hallway/secondary/construction{ - name = "\improper Garden" - }) -"aEG" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/red/side{ - dir = 8 - }, -/area/security/checkpoint2) -"aEH" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/security/checkpoint2) -"aEI" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - on = 1 - }, -/turf/open/floor/plasteel, -/area/security/checkpoint2) -"aEJ" = ( -/turf/open/floor/plasteel/red/side{ - dir = 4 - }, -/area/security/checkpoint2) -"aEK" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel, -/area/security/checkpoint2) -"aEL" = ( -/obj/machinery/door/airlock{ - name = "Garden"; - req_access_txt = "0" - }, -/turf/open/floor/plasteel, -/area/hallway/secondary/construction{ - name = "\improper Garden" - }) -"aEM" = ( -/turf/open/floor/bluegrid, -/area/ai_monitored/nuke_storage) -"aEN" = ( -/obj/structure/closet/crate{ - name = "Gold Crate" - }, -/obj/item/stack/sheet/mineral/gold{ - pixel_x = -1; - pixel_y = 5 - }, -/obj/item/stack/sheet/mineral/gold{ - pixel_y = 2 - }, -/obj/item/stack/sheet/mineral/gold{ - pixel_x = 1; - pixel_y = -2 - }, -/obj/item/weapon/storage/belt/champion, -/turf/open/floor/plasteel/vault{ - dir = 1 - }, -/area/ai_monitored/nuke_storage) -"aEO" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/bluegrid, -/area/ai_monitored/nuke_storage) -"aEP" = ( -/obj/item/weapon/coin/silver{ - pixel_x = 7; - pixel_y = 12 - }, -/obj/item/weapon/coin/silver{ - pixel_x = 12; - pixel_y = 7 - }, -/obj/item/weapon/coin/silver{ - pixel_x = 4; - pixel_y = 8 - }, -/obj/item/weapon/coin/silver{ - pixel_x = -6; - pixel_y = 5 - }, -/obj/item/weapon/coin/silver{ - pixel_x = 5; - pixel_y = -8 - }, -/obj/structure/closet/crate{ - name = "Silver Crate" - }, -/turf/open/floor/plasteel/vault{ - dir = 4 - }, -/area/ai_monitored/nuke_storage) -"aEQ" = ( -/obj/structure/table, -/obj/item/weapon/paper/pamphlet, -/turf/open/floor/plasteel, -/area/gateway) -"aER" = ( -/obj/machinery/camera{ - c_tag = "Gateway"; - dir = 4; - network = list("SS13") - }, -/obj/structure/table, -/obj/structure/sign/biohazard{ - pixel_x = -32 - }, -/obj/item/weapon/storage/firstaid/regular, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/gateway) -"aES" = ( -/obj/structure/table, -/obj/item/device/radio/off{ - pixel_y = 6 - }, -/obj/item/device/radio/off{ - pixel_x = 6; - pixel_y = 4 - }, -/obj/item/device/radio/off{ - pixel_x = -6; - pixel_y = 4 - }, -/obj/item/device/radio/off, -/turf/open/floor/plasteel, -/area/gateway) -"aET" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/gateway) -"aEU" = ( -/obj/structure/table, -/obj/machinery/recharger, -/obj/structure/sign/biohazard{ - pixel_x = 32 - }, -/turf/open/floor/plasteel, -/area/gateway) -"aEV" = ( -/obj/structure/reagent_dispensers/watertank, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/maintenance/fpmaint) -"aEW" = ( -/obj/structure/grille, -/obj/structure/cable, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/ai_monitored/storage/eva) -"aEX" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass_command{ - name = "EVA Storage"; - req_access_txt = "18" - }, -/turf/open/floor/plasteel, -/area/ai_monitored/storage/eva) -"aEY" = ( -/obj/structure/grille, -/obj/structure/cable, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/ai_monitored/storage/eva) -"aEZ" = ( -/turf/open/floor/plasteel/black, -/area/ai_monitored/storage/eva) -"aFa" = ( -/obj/machinery/suit_storage_unit/cmo, -/turf/open/floor/plasteel/barber, -/area/medical/cmo) -"aFb" = ( -/obj/machinery/light/small{ - dir = 8 - }, -/turf/open/floor/plasteel/black, -/area/ai_monitored/storage/eva) -"aFc" = ( -/obj/structure/sign/securearea, -/turf/closed/wall/r_wall, -/area/ai_monitored/storage/eva) -"aFd" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/crew_quarters/sleep) -"aFe" = ( -/obj/machinery/camera{ - c_tag = "Dormitory South"; - c_tag_order = 999; - dir = 4 - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 8 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 8 - }, -/area/crew_quarters/sleep) -"aFf" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 1 - }, -/turf/open/floor/plasteel/freezer, -/area/crew_quarters/toilet) -"aFg" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/crew_quarters/toilet) -"aFh" = ( -/obj/machinery/door/airlock{ - name = "Unisex Restrooms"; - req_access_txt = "0" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/freezer, -/area/crew_quarters/toilet) -"aFi" = ( -/obj/machinery/power/apc{ - dir = 4; - name = "Dormitory Bathrooms APC"; - pixel_x = 26; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/cable, -/turf/open/floor/plasteel/freezer, -/area/crew_quarters/toilet) -"aFj" = ( -/turf/open/floor/plasteel/redblue/redside, -/area/crew_quarters/theatre) -"aFk" = ( -/obj/machinery/disposal/bin, -/obj/structure/disposalpipe/trunk{ - dir = 1 - }, -/turf/open/floor/plasteel/redblue/redside, -/area/crew_quarters/theatre) -"aFl" = ( -/obj/machinery/light/small{ - dir = 8 - }, -/obj/structure/dresser, -/turf/open/floor/plasteel/redblue/redside, -/area/crew_quarters/theatre) -"aFm" = ( -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aFn" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aFo" = ( -/obj/structure/grille, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aFp" = ( -/obj/effect/spawner/lootdrop/maintenance, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aFq" = ( -/obj/structure/lattice, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/space, -/area/space) -"aFr" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 6 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aFs" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aFt" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aFu" = ( -/turf/closed/wall, -/area/library) -"aFv" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aFw" = ( -/turf/closed/wall, -/area/chapel/office) -"aFx" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aFy" = ( -/obj/machinery/power/apc{ - dir = 2; - name = "Chapel Office APC"; - pixel_x = 0; - pixel_y = -24 - }, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/chapel/office) -"aFz" = ( -/turf/open/floor/plasteel/black, -/area/chapel/main) -"aFA" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/computer/pod/old{ - density = 0; - icon = 'icons/obj/airlock_machines.dmi'; - icon_state = "airlock_control_standby"; - id = "chapelgun"; - name = "Mass Driver Controller"; - pixel_x = 24; - pixel_y = 0 - }, -/turf/open/floor/plasteel/black, -/area/chapel/main) -"aFB" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/black, -/area/chapel/main) -"aFC" = ( -/obj/structure/chair, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/arrival) -"aFD" = ( -/obj/machinery/portable_atmospherics/canister/air, -/turf/open/floor/plating/warnplate{ - dir = 6 - }, -/area/shuttle/auxillary_base) -"aFE" = ( -/obj/structure/chair{ - dir = 8 - }, -/obj/effect/landmark{ - name = "JoinLate" - }, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/arrival) -"aFF" = ( -/obj/structure/shuttle/engine/propulsion{ - icon_state = "propulsion"; - dir = 8 - }, -/turf/open/floor/plasteel/black, -/area/shuttle/arrival) -"aFG" = ( -/turf/open/floor/plasteel/arrival{ - dir = 4 - }, -/area/hallway/secondary/entry) -"aFH" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 1 - }, -/turf/open/floor/plasteel/red/side, -/area/security/checkpoint2) -"aFI" = ( -/obj/machinery/camera{ - c_tag = "Security Checkpoint"; - dir = 1 - }, -/obj/machinery/airalarm{ - dir = 4; - icon_state = "alarm0"; - pixel_x = -22 - }, -/obj/machinery/light_switch{ - pixel_x = 6; - pixel_y = -25 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 5 - }, -/turf/open/floor/plasteel/red/side{ - dir = 10 - }, -/area/security/checkpoint2) -"aFJ" = ( -/obj/machinery/atmospherics/pipe/simple/supplymain/hidden{ - icon_state = "intact"; - dir = 1 - }, -/obj/effect/landmark/event_spawn, -/turf/open/floor/plating, -/area/maintenance/fpmaint2) -"aFK" = ( -/obj/item/weapon/paper_bin{ - pixel_x = 1; - pixel_y = 9 - }, -/obj/item/weapon/pen, -/obj/structure/table, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 9 - }, -/turf/open/floor/plasteel/red/side, -/area/security/checkpoint2) -"aFL" = ( -/obj/item/device/radio/off, -/obj/item/weapon/crowbar, -/obj/item/device/assembly/flash/handheld, -/obj/structure/table, -/turf/open/floor/plasteel/red/side{ - dir = 6 - }, -/area/security/checkpoint2) -"aFM" = ( -/obj/machinery/recharger{ - pixel_y = 4 - }, -/obj/structure/table, -/turf/open/floor/plasteel/red/side, -/area/security/checkpoint2) -"aFN" = ( -/obj/structure/table/glass, -/obj/item/weapon/cultivator, -/obj/item/weapon/hatchet, -/obj/item/weapon/crowbar, -/obj/item/device/plant_analyzer, -/obj/item/weapon/reagent_containers/glass/bucket, -/turf/open/floor/plasteel/green/side{ - dir = 4 - }, -/area/hallway/secondary/construction{ - name = "\improper Garden" - }) -"aFO" = ( -/obj/machinery/camera{ - c_tag = "Garden"; - dir = 8; - network = list("SS13") - }, -/obj/machinery/airalarm{ - dir = 8; - icon_state = "alarm0"; - pixel_x = 24 - }, -/turf/open/floor/plasteel, -/area/hallway/secondary/construction{ - name = "\improper Garden" - }) -"aFP" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/hallway/secondary/construction{ - name = "\improper Garden" - }) -"aFQ" = ( -/obj/structure/table, -/obj/item/stack/cable_coil{ - pixel_x = 2; - pixel_y = -2 - }, -/obj/item/stack/cable_coil{ - pixel_x = 3; - pixel_y = -7 - }, -/obj/item/weapon/screwdriver{ - pixel_y = 16 - }, -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/turf/open/floor/plasteel, -/area/storage/primary) -"aFR" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/storage/primary) -"aFS" = ( -/obj/effect/landmark/start{ - name = "Assistant" - }, -/turf/open/floor/plasteel, -/area/storage/primary) -"aFT" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/storage/primary) -"aFU" = ( -/obj/effect/landmark/start{ - name = "Assistant" - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel, -/area/storage/primary) -"aFV" = ( -/obj/structure/disposalpipe/segment, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/meter, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/fpmaint) -"aFW" = ( -/obj/structure/chair/stool, -/turf/open/floor/plasteel, -/area/gateway) -"aFX" = ( -/obj/item/device/radio/intercom{ - freerange = 0; - frequency = 1459; - name = "Station Intercom (General)"; - pixel_x = -30 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/gateway) -"aFY" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/plasteel, -/area/storage/primary) -"aFZ" = ( -/obj/structure/table, -/obj/item/weapon/storage/toolbox/mechanical{ - pixel_x = -2; - pixel_y = -1 - }, -/obj/machinery/light{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/storage/primary) -"aGa" = ( -/obj/machinery/light, -/turf/open/floor/plasteel/vault{ - dir = 6 - }, -/area/ai_monitored/nuke_storage) -"aGb" = ( -/turf/open/floor/plasteel/vault{ - dir = 1 - }, -/area/ai_monitored/nuke_storage) -"aGc" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/machinery/camera/motion{ - c_tag = "Vault"; - dir = 1; - network = list("MiniSat") - }, -/obj/machinery/light, -/turf/open/floor/plasteel/vault{ - dir = 10 - }, -/area/ai_monitored/nuke_storage) -"aGd" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/turf/open/floor/plasteel/vault, -/area/ai_monitored/nuke_storage) -"aGe" = ( -/obj/structure/safe, -/obj/item/clothing/head/bearpelt, -/obj/item/weapon/reagent_containers/food/drinks/drinkingglass/shotglass, -/obj/item/weapon/reagent_containers/food/drinks/drinkingglass/shotglass, -/obj/item/weapon/gun/ballistic/revolver/russian, -/obj/item/ammo_box/a357, -/obj/item/weapon/reagent_containers/food/drinks/bottle/vodka/badminka, -/turf/open/floor/plasteel/vault{ - dir = 4 - }, -/area/ai_monitored/nuke_storage) -"aGf" = ( -/obj/machinery/firealarm{ - dir = 4; - pixel_x = 24 - }, -/turf/open/floor/plasteel, -/area/gateway) -"aGg" = ( -/obj/structure/reagent_dispensers/fueltank, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/maintenance/fpmaint) -"aGh" = ( -/obj/effect/landmark/event_spawn, -/turf/open/floor/plating, -/area/maintenance/fpmaint) -"aGi" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/black, -/area/ai_monitored/storage/eva) -"aGj" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/black, -/area/ai_monitored/storage/eva) -"aGk" = ( -/obj/structure/sink{ - icon_state = "sink"; - dir = 8; - pixel_x = -12; - pixel_y = 2 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/freezer, -/area/crew_quarters/toilet) -"aGl" = ( -/obj/machinery/light_switch{ - pixel_x = 27 - }, -/turf/open/floor/plasteel/freezer, -/area/crew_quarters/toilet) -"aGm" = ( -/obj/structure/toilet{ - pixel_y = 8 - }, -/obj/machinery/light/small{ - dir = 8 - }, -/turf/open/floor/plasteel/freezer, -/area/crew_quarters/toilet) -"aGn" = ( -/obj/structure/toilet{ - pixel_y = 8 - }, -/obj/machinery/light/small{ - dir = 8 - }, -/obj/effect/landmark{ - name = "blobstart" - }, -/turf/open/floor/plasteel/freezer, -/area/crew_quarters/toilet) -"aGo" = ( -/obj/structure/table, -/obj/item/stack/sheet/rglass{ - amount = 50 - }, -/obj/item/stack/sheet/rglass{ - amount = 50 - }, -/obj/item/stack/rods{ - amount = 50 - }, -/obj/item/stack/rods{ - amount = 50 - }, -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/ai_monitored/storage/eva) -"aGp" = ( -/obj/machinery/light/small{ - dir = 8 - }, -/obj/machinery/recharge_station, -/turf/open/floor/plasteel/freezer, -/area/crew_quarters/toilet) -"aGq" = ( -/obj/item/stack/sheet/plasteel{ - amount = 10 - }, -/obj/structure/table, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/ai_monitored/storage/eva) -"aGr" = ( -/obj/structure/chair/stool, -/obj/effect/landmark/start{ - name = "Clown" - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/plasteel/redblue, -/area/crew_quarters/theatre) -"aGs" = ( -/obj/machinery/suit_storage_unit/rd, -/turf/open/floor/plasteel/cafeteria, -/area/crew_quarters/hor) -"aGt" = ( -/obj/machinery/door/firedoor, -/turf/open/floor/plasteel/blue/corner{ - dir = 8 - }, -/area/hallway/primary/fore) -"aGu" = ( -/obj/machinery/door/firedoor, -/turf/open/floor/plasteel/blue/corner, -/area/hallway/primary/fore) -"aGv" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/crew_quarters/theatre) -"aGw" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/closet/secure_closet/freezer/cream_pie, -/turf/open/floor/plasteel/redblue, -/area/crew_quarters/theatre) -"aGx" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/crew_quarters/toilet) -"aGy" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aGz" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aGA" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/structure/disposalpipe/sortjunction{ - dir = 4; - icon_state = "pipe-j1s"; - sortType = 19 - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 1 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aGB" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/sortjunction{ - dir = 4; - icon_state = "pipe-j1s"; - sortType = 20 - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 1 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aGC" = ( -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aGD" = ( -/obj/structure/table/wood, -/obj/structure/mirror{ - pixel_x = -28 - }, -/obj/item/device/flashlight/lamp/bananalamp{ - pixel_y = 3 - }, -/turf/open/floor/plasteel/redblue, -/area/crew_quarters/theatre) -"aGE" = ( -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aGF" = ( -/obj/structure/disposalpipe/sortjunction{ - dir = 4; - icon_state = "pipe-j2s"; - sortType = 17 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aGG" = ( -/obj/machinery/door/airlock/maintenance{ - name = "Library Maintenance"; - req_access_txt = "12" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/library) -"aGH" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aGI" = ( -/obj/structure/disposalpipe/junction{ - icon_state = "pipe-j1"; - dir = 4 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aGJ" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aGK" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aGL" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aGM" = ( -/obj/machinery/door/airlock/maintenance{ - name = "Crematorium Maintenance"; - req_access_txt = "27" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/chapel/office) -"aGN" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aGO" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall, -/area/chapel/office) -"aGP" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aGQ" = ( -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aGR" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aGS" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aGT" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 6 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aGU" = ( -/obj/machinery/light/small{ - dir = 1 - }, -/obj/machinery/requests_console{ - department = "Chapel"; - departmentType = 2; - pixel_y = 30 - }, -/turf/open/floor/plasteel/grimy, -/area/chapel/office) -"aGV" = ( -/obj/structure/grille, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aGW" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aGX" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/lattice, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/space, -/area/space) -"aGY" = ( -/obj/machinery/airalarm{ - pixel_y = 25 - }, -/turf/open/floor/plasteel/grimy, -/area/chapel/office) -"aGZ" = ( -/obj/machinery/door/airlock/security{ - name = "Security Checkpoint"; - req_access = null; - req_access_txt = "1" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/security/checkpoint2) -"aHa" = ( -/obj/machinery/door/firedoor, -/obj/structure/table/reinforced, -/obj/item/weapon/paper, -/obj/machinery/door/window/westright{ - dir = 1; - name = "Security Checkpoint"; - req_access_txt = "1" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/delivery, -/area/hallway/secondary/entry) -"aHb" = ( -/obj/structure/table/wood, -/obj/item/weapon/paper_bin{ - pixel_x = 1; - pixel_y = 9 - }, -/obj/item/stack/packageWrap, -/turf/open/floor/wood, -/area/library) -"aHc" = ( -/obj/structure/table/wood, -/obj/item/weapon/storage/pill_bottle/dice, -/turf/open/floor/wood, -/area/library) -"aHd" = ( -/obj/machinery/disposal/bin, -/obj/structure/disposalpipe/trunk, -/turf/open/floor/wood, -/area/library) -"aHe" = ( -/obj/structure/table, -/obj/item/weapon/storage/toolbox/electrical{ - pixel_x = 1; - pixel_y = -1 - }, -/turf/open/floor/plasteel, -/area/storage/primary) -"aHf" = ( -/obj/structure/closet/wardrobe/chaplain_black, -/obj/item/device/radio/intercom{ - pixel_y = 25 - }, -/turf/open/floor/plasteel/grimy, -/area/chapel/office) -"aHg" = ( -/obj/machinery/light_switch{ - pixel_y = 28 - }, -/obj/machinery/camera{ - c_tag = "Chapel Office"; - dir = 2; - network = list("SS13") - }, -/turf/open/floor/plasteel/grimy, -/area/chapel/office) -"aHh" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/plasteel, -/area/gateway) -"aHi" = ( -/obj/structure/closet/coffin, -/obj/structure/window/reinforced{ - dir = 8 - }, -/turf/open/floor/plasteel/black, -/area/chapel/office) -"aHj" = ( -/obj/machinery/light_switch{ - pixel_x = -20; - pixel_y = 0 - }, -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/gateway) -"aHk" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/plasteel/black, -/area/chapel/main) -"aHl" = ( -/obj/structure/closet/coffin, -/obj/machinery/door/window/eastleft{ - name = "Coffin Storage"; - req_access_txt = "22" - }, -/turf/open/floor/plasteel/black, -/area/chapel/office) -"aHm" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/chapel/main) -"aHn" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/chapel/main) -"aHo" = ( -/obj/structure/table/glass, -/obj/item/weapon/reagent_containers/food/snacks/grown/poppy, -/obj/item/weapon/reagent_containers/food/snacks/grown/harebell, -/turf/open/floor/plasteel/chapel{ - dir = 4 - }, -/area/chapel/main) -"aHp" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/structure/filingcabinet/chestdrawer, -/turf/open/floor/plasteel/showroomfloor, -/area/security/warden) -"aHq" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/chapel/main) -"aHr" = ( -/obj/effect/landmark{ - name = "Marauder Entry" - }, -/turf/open/space, -/area/space) -"aHs" = ( -/obj/machinery/door/airlock/titanium{ - name = "Arrivals Shuttle Airlock" - }, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/arrival) -"aHt" = ( -/obj/effect/landmark{ - name = "Observer-Start" - }, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/arrival) -"aHu" = ( -/obj/machinery/status_display{ - density = 0; - layer = 3; - pixel_x = 32; - pixel_y = 0 - }, -/turf/open/floor/plasteel/white/corner{ - dir = 4 - }, -/area/hallway/secondary/entry) -"aHv" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel, -/area/gateway) -"aHw" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/effect/landmark/event_spawn, -/turf/open/floor/wood, -/area/crew_quarters/sleep) -"aHx" = ( -/obj/structure/grille, -/obj/structure/window/fulltile{ - obj_integrity = 25 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/maintenance/fpmaint) -"aHy" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/checkpoint2) -"aHz" = ( -/obj/structure/reagent_dispensers/watertank, -/turf/open/floor/plasteel/green/side{ - dir = 5 - }, -/area/hallway/secondary/construction{ - name = "\improper Garden" - }) -"aHA" = ( -/obj/item/weapon/reagent_containers/spray/plantbgone, -/obj/item/weapon/reagent_containers/spray/pestspray{ - pixel_x = 3; - pixel_y = 4 - }, -/obj/item/weapon/reagent_containers/glass/bottle/nutrient/ez, -/obj/item/weapon/reagent_containers/glass/bottle/nutrient/rh{ - pixel_x = 2; - pixel_y = 1 - }, -/obj/structure/table/glass, -/obj/machinery/light{ - dir = 4 - }, -/turf/open/floor/plasteel/green/side{ - dir = 9 - }, -/area/hallway/secondary/construction{ - name = "\improper Garden" - }) -"aHB" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/black, -/area/ai_monitored/storage/eva) -"aHC" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/turf/open/floor/plasteel/black, -/area/ai_monitored/storage/eva) -"aHD" = ( -/obj/structure/chair/stool{ - pixel_y = 8 - }, -/obj/effect/landmark/start{ - name = "Assistant" - }, -/turf/open/floor/plasteel, -/area/storage/primary) -"aHE" = ( -/obj/structure/table, -/obj/item/weapon/weldingtool, -/obj/item/weapon/crowbar, -/obj/item/stack/packageWrap, -/obj/item/stack/packageWrap, -/obj/item/stack/packageWrap, -/obj/item/stack/packageWrap, -/turf/open/floor/plasteel, -/area/storage/primary) -"aHF" = ( -/obj/structure/sign/securearea, -/turf/closed/wall/r_wall, -/area/ai_monitored/nuke_storage) -"aHG" = ( -/obj/machinery/door/airlock/vault{ - icon_state = "door_locked"; - locked = 1; - req_access_txt = "53" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/ai_monitored/nuke_storage) -"aHH" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass{ - name = "Dormitory" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/crew_quarters/sleep) -"aHI" = ( -/turf/open/floor/plasteel/redblue, -/area/crew_quarters/theatre) -"aHJ" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/gateway) -"aHK" = ( -/obj/structure/closet/secure_closet/freezer/cream_pie, -/turf/open/floor/plasteel/redblue, -/area/crew_quarters/theatre) -"aHL" = ( -/obj/machinery/airalarm{ - dir = 8; - icon_state = "alarm0"; - pixel_x = 24 - }, -/obj/structure/closet/l3closet/scientist, -/turf/open/floor/plasteel/warning{ - dir = 9 - }, -/area/gateway) -"aHM" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 1 - }, -/turf/closed/wall, -/area/crew_quarters/bar) -"aHN" = ( -/obj/structure/table, -/obj/item/stack/sheet/metal{ - amount = 50 - }, -/obj/item/stack/sheet/metal{ - amount = 50 - }, -/obj/item/weapon/crowbar, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/ai_monitored/storage/eva) -"aHO" = ( -/obj/structure/reagent_dispensers/fueltank, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/ai_monitored/storage/eva) -"aHP" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass{ - name = "Central Access" - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"aHQ" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass{ - name = "Central Access" - }, -/turf/open/floor/plasteel/blue/corner{ - dir = 8 - }, -/area/hallway/primary/central) -"aHR" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass{ - name = "Central Access" - }, -/turf/open/floor/plasteel/blue/side{ - dir = 4 - }, -/area/hallway/primary/central) -"aHS" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/door/airlock/maintenance{ - name = "Bar Storage Maintenance"; - req_access_txt = "25" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/crew_quarters/bar) -"aHT" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass{ - name = "Dormitory" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral/side{ - dir = 8 - }, -/area/crew_quarters/sleep) -"aHU" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/obj/structure/sink{ - icon_state = "sink"; - dir = 8; - pixel_x = -12; - pixel_y = 2 - }, -/obj/structure/mirror{ - pixel_x = -28 - }, -/obj/effect/landmark/start{ - name = "Assistant" - }, -/turf/open/floor/plasteel/freezer, -/area/crew_quarters/toilet) -"aHV" = ( -/obj/machinery/door/airlock{ - name = "Unit 1" - }, -/turf/open/floor/plasteel/freezer, -/area/crew_quarters/toilet) -"aHW" = ( -/obj/machinery/door/airlock{ - name = "Unit 2" - }, -/turf/open/floor/plasteel/freezer, -/area/crew_quarters/toilet) -"aHX" = ( -/obj/machinery/door/airlock{ - name = "Unit B" - }, -/turf/open/floor/plasteel/freezer, -/area/crew_quarters/toilet) -"aHY" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 1 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aHZ" = ( -/obj/structure/table/wood, -/obj/machinery/airalarm{ - dir = 4; - icon_state = "alarm0"; - pixel_x = -22 - }, -/obj/item/weapon/storage/crayons{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/reagent_containers/food/snacks/pie/cream{ - pixel_x = -3; - pixel_y = -3 - }, -/turf/open/floor/plasteel/redblue, -/area/crew_quarters/theatre) -"aIa" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aIb" = ( -/obj/machinery/power/apc{ - dir = 8; - name = "Theatre APC"; - pixel_x = -25 - }, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 5 - }, -/turf/open/floor/plating, -/area/crew_quarters/theatre) -"aIc" = ( -/obj/machinery/power/apc{ - dir = 2; - name = "Bar APC"; - pixel_y = -24 - }, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/crew_quarters/bar) -"aId" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 1 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aIe" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/crew_quarters/bar) -"aIf" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aIg" = ( -/obj/machinery/navbeacon{ - codes_txt = "delivery;dir=2"; - freq = 1400; - location = "Bar" - }, -/obj/structure/plasticflaps{ - opacity = 1 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/bot{ - dir = 2 - }, -/area/crew_quarters/bar) -"aIh" = ( -/obj/machinery/power/apc{ - dir = 2; - name = "Kitchen APC"; - pixel_y = -24 - }, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/crew_quarters/kitchen) -"aIi" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/crew_quarters/kitchen) -"aIj" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/sortjunction{ - dir = 4; - icon_state = "pipe-j1s"; - sortType = 21 - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 1 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aIk" = ( -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aIl" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aIm" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aIn" = ( -/obj/machinery/power/apc{ - dir = 2; - name = "Hydroponics APC"; - pixel_y = -24 - }, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 9 - }, -/turf/open/floor/plating, -/area/hydroponics) -"aIo" = ( -/obj/structure/disposalpipe/segment, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aIp" = ( -/turf/closed/wall, -/area/hydroponics) -"aIq" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/closed/wall, -/area/hydroponics) -"aIr" = ( -/obj/structure/filingcabinet, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/wood, -/area/library) -"aIs" = ( -/obj/structure/chair/office/dark, -/obj/machinery/camera{ - c_tag = "Library North"; - dir = 2; - network = list("SS13") - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/wood, -/area/library) -"aIt" = ( -/turf/open/floor/wood, -/area/library) -"aIu" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 5 - }, -/turf/open/floor/wood, -/area/library) -"aIv" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/wood, -/area/library) -"aIw" = ( -/obj/structure/chair/office/dark, -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/obj/effect/landmark/start{ - name = "Assistant" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/wood, -/area/library) -"aIx" = ( -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 10 - }, -/turf/open/floor/wood, -/area/library) -"aIy" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/black, -/area/chapel/office) -"aIz" = ( -/obj/machinery/disposal/bin, -/obj/structure/disposalpipe/trunk, -/turf/open/floor/plasteel/grimy, -/area/chapel/office) -"aIA" = ( -/obj/structure/table/wood, -/obj/item/weapon/paper_bin{ - pixel_x = -2; - pixel_y = 5 - }, -/obj/item/weapon/storage/crayons, -/turf/open/floor/plasteel/grimy, -/area/chapel/office) -"aIB" = ( -/obj/structure/bodycontainer/crematorium, -/obj/effect/landmark{ - name = "revenantspawn" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/black, -/area/chapel/office) -"aIC" = ( -/obj/effect/landmark/start{ - name = "Chaplain" - }, -/obj/structure/chair, -/turf/open/floor/plasteel/grimy, -/area/chapel/office) -"aID" = ( -/obj/structure/closet/coffin, -/obj/structure/window/reinforced{ - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/chapel/office) -"aIE" = ( -/obj/structure/table/glass, -/turf/open/floor/plasteel/chapel, -/area/chapel/main) -"aIF" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/structure/cable, -/turf/open/floor/plating, -/area/security/warden) -"aIG" = ( -/obj/structure/chair{ - dir = 1 - }, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/arrival) -"aIH" = ( -/obj/structure/table, -/obj/item/weapon/storage/box/lights/mixed, -/obj/item/weapon/pipe_dispenser, -/obj/machinery/button/door{ - id = "aux_base_shutters"; - name = "Public Shutters Control"; - pixel_x = 24; - pixel_y = 0; - req_access_txt = "0"; - req_one_access_txt = "32;47;48" - }, -/turf/open/floor/plasteel/yellow/side{ - dir = 6 - }, -/area/mining_construction) -"aII" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/grimy, -/area/chapel/office) -"aIJ" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/bot, -/area/hallway/secondary/entry) -"aIK" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/hallway/secondary/entry) -"aIL" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/bot, -/area/hallway/secondary/entry) -"aIM" = ( -/turf/open/floor/plasteel/bot, -/area/hallway/secondary/entry) -"aIN" = ( -/obj/structure/table, -/obj/item/weapon/wrench, -/obj/item/device/analyzer, -/turf/open/floor/plasteel, -/area/storage/primary) -"aIO" = ( -/obj/machinery/camera{ - c_tag = "Arrivals Lounge"; - dir = 2 - }, -/obj/machinery/light{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/hallway/secondary/entry) -"aIP" = ( -/obj/structure/sign/map/left{ - pixel_y = 32 - }, -/turf/open/floor/plasteel, -/area/hallway/secondary/entry) -"aIQ" = ( -/obj/structure/extinguisher_cabinet{ - pixel_x = -5; - pixel_y = 30 - }, -/turf/open/floor/plasteel, -/area/hallway/secondary/entry) -"aIR" = ( -/obj/structure/sign/map/right{ - pixel_y = 32 - }, -/turf/open/floor/plasteel, -/area/hallway/secondary/entry) -"aIS" = ( -/obj/structure/table/glass, -/obj/item/weapon/hatchet, -/obj/item/weapon/cultivator, -/obj/item/weapon/crowbar, -/obj/item/weapon/reagent_containers/glass/bucket, -/obj/item/device/plant_analyzer, -/obj/machinery/firealarm{ - dir = 8; - pixel_x = -24 - }, -/turf/open/floor/plasteel/green/side{ - dir = 4 - }, -/area/hallway/secondary/construction{ - name = "\improper Garden" - }) -"aIT" = ( -/obj/item/weapon/storage/bag/plants/portaseeder, -/obj/structure/table/glass, -/obj/item/device/plant_analyzer, -/obj/item/device/radio/intercom{ - freerange = 0; - frequency = 1459; - name = "Station Intercom (General)"; - pixel_x = 29 - }, -/obj/machinery/light_switch{ - pixel_x = -6; - pixel_y = -25 - }, -/turf/open/floor/plasteel/green/side{ - dir = 8 - }, -/area/hallway/secondary/construction{ - name = "\improper Garden" - }) -"aIU" = ( -/obj/machinery/navbeacon{ - codes_txt = "delivery;dir=8"; - freq = 1400; - location = "Tool Storage" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/bot, -/area/storage/primary) -"aIV" = ( -/obj/machinery/button/door{ - id = "stationawaygate"; - name = "Gateway Access Shutter Control"; - pixel_x = -1; - pixel_y = -24; - req_access_txt = "31" - }, -/turf/open/floor/plasteel, -/area/gateway) -"aIW" = ( -/obj/structure/table, -/obj/item/weapon/crowbar, -/obj/item/device/assembly/prox_sensor{ - pixel_x = -8; - pixel_y = 4 - }, -/obj/item/clothing/gloves/color/fyellow, -/turf/open/floor/plasteel, -/area/storage/primary) -"aIX" = ( -/obj/structure/reagent_dispensers/watertank, -/turf/open/floor/plasteel, -/area/storage/primary) -"aIY" = ( -/obj/structure/reagent_dispensers/fueltank, -/turf/open/floor/plasteel, -/area/storage/primary) -"aIZ" = ( -/obj/structure/table, -/obj/item/weapon/storage/belt/utility, -/obj/item/weapon/storage/firstaid/regular, -/turf/open/floor/plasteel, -/area/storage/primary) -"aJa" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/gateway) -"aJb" = ( -/turf/open/floor/plasteel/delivery, -/area/storage/primary) -"aJc" = ( -/obj/structure/disposalpipe/trunk, -/obj/machinery/disposal/bin, -/turf/open/floor/plasteel, -/area/storage/primary) -"aJd" = ( -/obj/structure/grille, -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/hallway/primary/port) -"aJe" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/hallway/primary/port) -"aJf" = ( -/obj/machinery/camera{ - c_tag = "EVA South"; - dir = 1 - }, -/turf/open/floor/plasteel, -/area/ai_monitored/storage/eva) -"aJg" = ( -/obj/structure/extinguisher_cabinet{ - pixel_x = 27; - pixel_y = 0 - }, -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/hallway/primary/central) -"aJh" = ( -/turf/open/floor/plasteel, -/area/gateway) -"aJi" = ( -/obj/machinery/light{ - dir = 4 - }, -/obj/structure/closet/secure_closet/exile, -/turf/open/floor/plasteel/warning{ - dir = 10 - }, -/area/gateway) -"aJj" = ( -/obj/structure/table, -/obj/item/stack/sheet/glass{ - amount = 50 - }, -/obj/item/stack/sheet/glass{ - amount = 50 - }, -/obj/item/weapon/storage/toolbox/mechanical{ - pixel_x = -2; - pixel_y = -1 - }, -/obj/item/weapon/storage/toolbox/mechanical{ - pixel_x = -2; - pixel_y = -1 - }, -/obj/item/weapon/storage/toolbox/mechanical{ - pixel_x = -2; - pixel_y = -1 - }, -/obj/item/weapon/extinguisher, -/obj/item/weapon/extinguisher, -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/ai_monitored/storage/eva) -"aJk" = ( -/obj/machinery/door/airlock{ - name = "Theatre Backstage"; - req_access_txt = "46" - }, -/turf/open/floor/plasteel, -/area/crew_quarters/theatre) -"aJl" = ( -/obj/structure/tank_dispenser/oxygen, -/obj/machinery/light{ - icon_state = "tube1"; - dir = 4 - }, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/ai_monitored/storage/eva) -"aJm" = ( -/obj/structure/sink/kitchen{ - pixel_y = 28 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/wood, -/area/crew_quarters/bar) -"aJn" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/hallway/primary/central) -"aJo" = ( -/obj/machinery/light{ - dir = 1 - }, -/obj/machinery/camera{ - c_tag = "Central Hallway North"; - dir = 2 - }, -/turf/open/floor/plasteel/blue/side{ - dir = 1 - }, -/area/hallway/primary/central) -"aJp" = ( -/turf/open/floor/plasteel/blue/side{ - dir = 9 - }, -/area/hallway/primary/central) -"aJq" = ( -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"aJr" = ( -/turf/open/floor/plasteel/blue/corner{ - dir = 1 - }, -/area/hallway/primary/central) -"aJs" = ( -/turf/open/floor/plasteel/blue/side{ - dir = 1 - }, -/area/hallway/primary/central) -"aJt" = ( -/obj/structure/sign/directions/security{ - dir = 1; - icon_state = "direction_sec"; - pixel_x = 32; - pixel_y = 40 - }, -/obj/structure/sign/directions/medical{ - dir = 4; - icon_state = "direction_med"; - pixel_x = 32; - pixel_y = 32 - }, -/obj/structure/sign/directions/evac{ - dir = 4; - icon_state = "direction_evac"; - pixel_x = 32; - pixel_y = 24 - }, -/turf/open/floor/plasteel/blue/corner{ - dir = 4 - }, -/area/hallway/primary/central) -"aJu" = ( -/turf/open/floor/plasteel/blue/side{ - dir = 5 - }, -/area/hallway/primary/central) -"aJv" = ( -/obj/machinery/vending/cola, -/turf/open/floor/plasteel/black, -/area/hallway/primary/central) -"aJw" = ( -/turf/closed/wall, -/area/hallway/primary/central) -"aJx" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/wood, -/area/crew_quarters/bar) -"aJy" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral/side{ - dir = 8 - }, -/area/hallway/primary/central) -"aJz" = ( -/obj/machinery/camera{ - c_tag = "Dormitory Toilets"; - dir = 1 - }, -/turf/open/floor/plasteel/freezer, -/area/crew_quarters/toilet) -"aJA" = ( -/obj/machinery/door/airlock/maintenance{ - name = "Kitchen Maintenance"; - req_access_txt = "28" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/crew_quarters/kitchen) -"aJB" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/door/airlock/maintenance{ - name = "Hydroponics Maintenance"; - req_access_txt = "35" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/hydroponics) -"aJC" = ( -/turf/closed/wall, -/area/crew_quarters/bar) -"aJD" = ( -/obj/machinery/door/airlock/maintenance{ - name = "Bar Maintenance"; - req_access_txt = "12" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aJE" = ( -/obj/item/weapon/reagent_containers/food/drinks/shaker, -/obj/item/weapon/gun/ballistic/revolver/doublebarrel, -/obj/structure/table/wood, -/obj/item/stack/spacecash/c10, -/obj/item/stack/spacecash/c100, -/turf/open/floor/wood, -/area/crew_quarters/bar) -"aJF" = ( -/obj/machinery/newscaster{ - pixel_x = 30 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/wood, -/area/library) -"aJG" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/button/crematorium{ - pixel_x = 25 - }, -/obj/machinery/light/small{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/chapel/office) -"aJH" = ( -/obj/machinery/door/window/southleft{ - base_state = "left"; - dir = 2; - icon_state = "left"; - name = "Bar Delivery"; - req_access_txt = "25" - }, -/turf/open/floor/plasteel/delivery, -/area/crew_quarters/bar) -"aJI" = ( -/turf/closed/wall, -/area/crew_quarters/kitchen) -"aJJ" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 8 - }, -/turf/open/floor/plasteel/black, -/area/chapel/office) -"aJK" = ( -/obj/machinery/navbeacon{ - codes_txt = "delivery;dir=2"; - freq = 1400; - location = "Kitchen" - }, -/obj/structure/plasticflaps{ - opacity = 1 - }, -/turf/open/floor/plasteel/bot{ - dir = 2 - }, -/area/crew_quarters/kitchen) -"aJL" = ( -/obj/machinery/navbeacon{ - codes_txt = "delivery;dir=2"; - freq = 1400; - location = "Hydroponics" - }, -/obj/structure/plasticflaps{ - opacity = 1 - }, -/turf/open/floor/plasteel/bot{ - dir = 2 - }, -/area/hydroponics) -"aJM" = ( -/obj/structure/table/wood, -/obj/item/device/flashlight/lamp{ - pixel_y = 10 - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/grimy, -/area/chapel/office) -"aJN" = ( -/obj/structure/table, -/obj/item/weapon/book/manual/hydroponics_pod_people, -/obj/item/weapon/paper/hydroponics, -/turf/open/floor/plasteel/hydrofloor, -/area/hydroponics) -"aJO" = ( -/obj/structure/table, -/obj/machinery/reagentgrinder, -/turf/open/floor/plasteel/hydrofloor, -/area/hydroponics) -"aJP" = ( -/obj/structure/table/wood, -/obj/item/weapon/folder/yellow, -/obj/item/weapon/pen, -/turf/open/floor/wood, -/area/library) -"aJQ" = ( -/obj/structure/chair/office/dark{ - dir = 4 - }, -/turf/open/floor/wood, -/area/library) -"aJR" = ( -/obj/structure/chair/office/dark{ - dir = 8 - }, -/turf/open/floor/wood, -/area/library) -"aJS" = ( -/obj/structure/table/wood, -/obj/structure/disposalpipe/segment, -/turf/open/floor/wood, -/area/library) -"aJT" = ( -/obj/structure/table/wood, -/obj/item/weapon/nullrod, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/grimy, -/area/chapel/office) -"aJU" = ( -/obj/structure/table/wood, -/obj/item/weapon/pen, -/obj/item/weapon/reagent_containers/food/drinks/bottle/holywater, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/grimy, -/area/chapel/office) -"aJV" = ( -/obj/structure/closet/coffin, -/obj/machinery/door/window/eastleft{ - dir = 8; - name = "Coffin Storage"; - req_access_txt = "22" - }, -/turf/open/floor/plasteel/black, -/area/chapel/office) -"aJW" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 9 - }, -/turf/open/floor/plasteel/grimy, -/area/chapel/office) -"aJX" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral/side, -/area/hallway/secondary/entry) -"aJY" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral/side, -/area/hallway/secondary/entry) -"aJZ" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass{ - name = "Primary Tool Storage" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/storage/primary) -"aKa" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass{ - name = "Primary Tool Storage" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/storage/primary) -"aKb" = ( -/obj/structure/grille, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/structure/window/reinforced/fulltile, -/obj/structure/cable, -/turf/open/floor/plating, -/area/hallway/primary/port) -"aKc" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/command{ - icon_state = "door_closed"; - lockdownbyai = 0; - locked = 0; - name = "Gateway Access"; - req_access_txt = "62" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/gateway) -"aKd" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/poddoor/shutters{ - id = "stationawaygate"; - name = "Gateway Access Shutters" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/gateway) -"aKe" = ( -/obj/structure/table/glass, -/turf/open/floor/plasteel/chapel{ - dir = 4 - }, -/area/chapel/main) -"aKf" = ( -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/machinery/power/apc{ - dir = 8; - name = "Auxillary Base Construction APC"; - pixel_x = -24; - pixel_y = 0 - }, -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 6 - }, -/turf/open/floor/plating, -/area/mining_construction) -"aKg" = ( -/obj/structure/closet/emcloset, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/arrival) -"aKh" = ( -/obj/item/device/radio/intercom{ - name = "Station Intercom (General)"; - pixel_y = -29 - }, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/arrival) -"aKi" = ( -/obj/structure/shuttle/engine/propulsion{ - icon_state = "burst_l"; - dir = 8 - }, -/turf/open/floor/plasteel/black, -/area/shuttle/arrival) -"aKj" = ( -/obj/machinery/door/firedoor, -/turf/open/floor/plasteel/neutral/corner{ - dir = 2 - }, -/area/hallway/secondary/entry) -"aKk" = ( -/turf/open/floor/plasteel/neutral/side, -/area/hallway/secondary/entry) -"aKl" = ( -/turf/open/floor/plasteel/neutral/corner{ - dir = 8 - }, -/area/hallway/secondary/entry) -"aKm" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass{ - name = "Garden" - }, -/turf/open/floor/plasteel, -/area/hallway/secondary/construction{ - name = "\improper Garden" - }) -"aKn" = ( -/obj/structure/grille, -/obj/structure/window/fulltile, -/turf/open/floor/plating, -/area/hallway/secondary/construction{ - name = "\improper Garden" - }) -"aKo" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/neutral/side{ - dir = 4 - }, -/area/hallway/primary/central) -"aKp" = ( -/obj/structure/grille, -/obj/structure/window/fulltile, -/turf/open/floor/plating, -/area/storage/primary) -"aKq" = ( -/obj/item/device/radio/intercom{ - pixel_y = 25 - }, -/obj/machinery/camera{ - c_tag = "Theatre Stage"; - dir = 2 - }, -/turf/open/floor/wood, -/area/crew_quarters/theatre) -"aKr" = ( -/obj/machinery/airalarm{ - dir = 2; - pixel_y = 24 - }, -/turf/open/floor/wood, -/area/crew_quarters/theatre) -"aKs" = ( -/obj/structure/grille, -/obj/structure/disposalpipe/segment, -/obj/structure/window/fulltile, -/turf/open/floor/plating, -/area/storage/primary) -"aKt" = ( -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/hallway/primary/port) -"aKu" = ( -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/hallway/primary/port) -"aKv" = ( -/obj/structure/grille, -/obj/structure/cable, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/hallway/primary/port) -"aKw" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/machinery/door/firedoor, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/hallway/primary/port) -"aKx" = ( -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/hallway/primary/port) -"aKy" = ( -/obj/structure/disposalpipe/segment, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/door/airlock/maintenance{ - req_access_txt = "12" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/fpmaint) -"aKz" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/wood, -/area/crew_quarters/bar) -"aKA" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/poddoor/shutters{ - id = "stationawaygate"; - name = "Gateway Access Shutters" - }, -/turf/open/floor/plasteel, -/area/gateway) -"aKB" = ( -/obj/structure/sign/securearea, -/turf/closed/wall/r_wall, -/area/gateway) -"aKC" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/showroomfloor, -/area/crew_quarters/kitchen) -"aKD" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/hydrofloor, -/area/hydroponics) -"aKE" = ( -/turf/open/floor/plasteel/blue/side{ - dir = 8 - }, -/area/hallway/primary/central) -"aKF" = ( -/turf/open/floor/plasteel/blue/side{ - dir = 4 - }, -/area/hallway/primary/central) -"aKG" = ( -/obj/machinery/vending/snack, -/turf/open/floor/plasteel/black, -/area/hallway/primary/central) -"aKH" = ( -/obj/structure/sink{ - pixel_y = 30 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/hydrofloor, -/area/hydroponics) -"aKI" = ( -/obj/structure/closet/secure_closet/hydroponics, -/turf/open/floor/plasteel/hydrofloor, -/area/hydroponics) -"aKJ" = ( -/obj/machinery/light_switch{ - pixel_y = 28 - }, -/obj/machinery/light{ - dir = 1 - }, -/turf/open/floor/wood, -/area/crew_quarters/theatre) -"aKK" = ( -/obj/structure/closet/wardrobe/botanist, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/hydrofloor, -/area/hydroponics) -"aKL" = ( -/obj/machinery/airalarm{ - pixel_y = 24 - }, -/obj/machinery/camera{ - c_tag = "Hydroponics Storage" - }, -/obj/machinery/light/small{ - dir = 1 - }, -/obj/machinery/plantgenes, -/turf/open/floor/plasteel/hydrofloor, -/area/hydroponics) -"aKM" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/bar, -/area/crew_quarters/bar) -"aKN" = ( -/obj/structure/window/reinforced{ - dir = 4 - }, -/turf/open/floor/wood, -/area/crew_quarters/theatre) -"aKO" = ( -/obj/machinery/disposal/bin, -/obj/structure/disposalpipe/trunk{ - dir = 8 - }, -/obj/machinery/firealarm{ - dir = 2; - pixel_y = 24 - }, -/turf/open/floor/plasteel/bar, -/area/crew_quarters/bar) -"aKP" = ( -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/bar, -/area/crew_quarters/bar) -"aKQ" = ( -/obj/machinery/reagentgrinder, -/obj/structure/table/wood, -/turf/open/floor/wood, -/area/crew_quarters/bar) -"aKR" = ( -/turf/open/floor/wood, -/area/crew_quarters/bar) -"aKS" = ( -/obj/machinery/camera{ - c_tag = "Bar Storage" - }, -/turf/open/floor/wood, -/area/crew_quarters/bar) -"aKT" = ( -/obj/structure/closet/secure_closet/freezer/meat, -/turf/open/floor/plasteel/showroomfloor, -/area/crew_quarters/kitchen) -"aKU" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - on = 1 - }, -/turf/open/floor/plasteel/hydrofloor, -/area/hydroponics) -"aKV" = ( -/obj/machinery/door/window/southleft{ - base_state = "left"; - dir = 2; - icon_state = "left"; - name = "Kitchen Delivery"; - req_access_txt = "28" - }, -/turf/open/floor/plasteel/delivery, -/area/crew_quarters/kitchen) -"aKW" = ( -/obj/machinery/light_switch{ - pixel_y = 28 - }, -/turf/open/floor/plasteel/hydrofloor, -/area/hydroponics) -"aKX" = ( -/obj/machinery/door/window/eastright{ - name = "Hydroponics Delivery"; - req_access_txt = "35" - }, -/turf/open/floor/plasteel/delivery, -/area/hydroponics) -"aKY" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/maintenance/fpmaint2) -"aKZ" = ( -/obj/machinery/airalarm{ - dir = 4; - icon_state = "alarm0"; - pixel_x = -22 - }, -/obj/machinery/camera{ - c_tag = "Chapel Crematorium"; - dir = 4 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/black, -/area/chapel/office) -"aLa" = ( -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/grimy, -/area/chapel/office) -"aLb" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/door/airlock{ - name = "Crematorium"; - req_access_txt = "27" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/chapel/office) -"aLc" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/plasteel/grimy, -/area/chapel/office) -"aLd" = ( -/obj/structure/table, -/obj/item/weapon/reagent_containers/spray/plantbgone{ - pixel_x = 0; - pixel_y = 3 - }, -/obj/item/weapon/reagent_containers/spray/plantbgone{ - pixel_x = 8; - pixel_y = 8 - }, -/obj/item/weapon/reagent_containers/spray/plantbgone{ - pixel_x = 13; - pixel_y = 5 - }, -/obj/item/weapon/watertank, -/turf/open/floor/plasteel/hydrofloor, -/area/hydroponics) -"aLe" = ( -/obj/structure/chair{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/grimy, -/area/chapel/office) -"aLf" = ( -/obj/machinery/airalarm{ - dir = 4; - icon_state = "alarm0"; - pixel_x = -22 - }, -/turf/open/floor/wood, -/area/library) -"aLg" = ( -/obj/structure/table/wood, -/turf/open/floor/wood, -/area/library) -"aLh" = ( -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/turf/open/floor/wood, -/area/library) -"aLi" = ( -/obj/structure/chair/comfy/beige, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/grimy, -/area/hallway/secondary/entry) -"aLj" = ( -/obj/structure/chair/comfy/beige, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/grimy, -/area/hallway/secondary/entry) -"aLk" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - external_pressure_bound = 101.325; - on = 1; - pressure_checks = 1 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/port) -"aLl" = ( -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'HIGH VOLTAGE'"; - icon_state = "shock"; - name = "HIGH VOLTAGE"; - pixel_y = 32 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/warning/corner{ - dir = 4 - }, -/area/hallway/primary/port) -"aLm" = ( -/obj/machinery/light{ - dir = 1 - }, -/turf/open/floor/plasteel/warning/corner{ - dir = 8 - }, -/area/hallway/primary/port) -"aLn" = ( -/obj/structure/disposalpipe/segment, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/hallway/primary/port) -"aLo" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/chapel/office) -"aLp" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/hallway/primary/port) -"aLq" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/hallway/primary/port) -"aLr" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/chapel/main) -"aLs" = ( -/obj/machinery/door/airlock/titanium{ - name = "Arrivals Shuttle Airlock" - }, -/obj/docking_port/mobile{ - dwidth = 5; - height = 7; - id = "arrival"; - name = "arrival shuttle"; - port_angle = -90; - preferred_direction = 8; - width = 15 - }, -/obj/docking_port/stationary{ - dwidth = 5; - height = 7; - id = "arrival_home"; - name = "port bay 1"; - width = 15 - }, -/turf/open/floor/plating, -/area/shuttle/arrival) -"aLt" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/maintenance/fpmaint2) -"aLu" = ( -/obj/machinery/door/airlock/engineering{ - cyclelinkeddir = 1; - name = "Auxillary Base Construction"; - req_access_txt = "0"; - req_one_access_txt = "32;47;48" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/mining_construction) -"aLv" = ( -/obj/machinery/firealarm{ - dir = 8; - pixel_x = -24 - }, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/hallway/secondary/entry) -"aLw" = ( -/obj/structure/grille, -/obj/structure/window/fulltile, -/turf/open/floor/plating, -/area/hallway/secondary/entry) -"aLx" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"aLy" = ( -/obj/structure/chair/comfy/beige, -/obj/effect/landmark/start{ - name = "Assistant" - }, -/turf/open/floor/plasteel/grimy, -/area/hallway/secondary/entry) -"aLz" = ( -/turf/open/floor/plasteel/grimy, -/area/hallway/secondary/entry) -"aLA" = ( -/obj/structure/table/wood, -/obj/item/device/flashlight/lamp/green{ - pixel_x = 1; - pixel_y = 5 - }, -/turf/open/floor/plasteel/grimy, -/area/hallway/secondary/entry) -"aLB" = ( -/turf/open/floor/plasteel/neutral/side{ - dir = 8 - }, -/area/hallway/secondary/entry) -"aLC" = ( -/obj/machinery/vending/cigarette, -/turf/open/floor/plasteel/black, -/area/hallway/secondary/entry) -"aLD" = ( -/obj/machinery/door/firedoor, -/obj/machinery/newscaster{ - pixel_y = 32 - }, -/obj/machinery/light{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/hallway/secondary/entry) -"aLE" = ( -/turf/open/floor/plasteel, -/area/hallway/primary/port) -"aLF" = ( -/obj/machinery/door/firedoor, -/turf/open/floor/plasteel, -/area/hallway/primary/port) -"aLG" = ( -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/obj/machinery/power/apc{ - name = "Port Hall APC"; - dir = 1; - pixel_y = 26 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/port) -"aLH" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/port) -"aLI" = ( -/obj/structure/extinguisher_cabinet{ - pixel_x = 5; - pixel_y = 30 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"aLJ" = ( -/obj/machinery/light{ - dir = 1 - }, -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'HIGH VOLTAGE'"; - icon_state = "shock"; - name = "HIGH VOLTAGE"; - pixel_y = 32 - }, -/turf/open/floor/plasteel/warning/corner{ - dir = 8 - }, -/area/hallway/primary/port) -"aLK" = ( -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel, -/area/hallway/primary/port) -"aLL" = ( -/obj/machinery/camera{ - c_tag = "Port Hallway 2"; - dir = 2 - }, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/hallway/primary/port) -"aLM" = ( -/obj/machinery/door/firedoor, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/hallway/primary/port) -"aLN" = ( -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/hallway/primary/port) -"aLO" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 5 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 4 - }, -/area/hallway/primary/central) -"aLP" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/hallway/primary/port) -"aLQ" = ( -/obj/machinery/camera{ - c_tag = "Central Hallway North-East"; - dir = 2 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"aLR" = ( -/obj/machinery/newscaster{ - pixel_y = 32 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 1 - }, -/area/hallway/primary/central) -"aLS" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/wood, -/area/crew_quarters/theatre) -"aLT" = ( -/obj/machinery/door/firedoor, -/turf/open/floor/plasteel/warning/corner{ - dir = 4 - }, -/area/hallway/primary/port) -"aLU" = ( -/obj/machinery/airalarm{ - dir = 4; - icon_state = "alarm0"; - pixel_x = -22 - }, -/obj/machinery/light/small{ - dir = 8 - }, -/obj/structure/reagent_dispensers/beerkeg, -/turf/open/floor/wood, -/area/crew_quarters/bar) -"aLV" = ( -/obj/machinery/light{ - dir = 1 - }, -/obj/machinery/firealarm{ - dir = 2; - pixel_y = 24 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"aLW" = ( -/obj/machinery/camera{ - c_tag = "Central Hallway North-West"; - dir = 2 - }, -/obj/machinery/airalarm{ - pixel_y = 23 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"aLX" = ( -/turf/open/floor/plasteel/blue/corner{ - dir = 4 - }, -/area/hallway/primary/central) -"aLY" = ( -/obj/machinery/door/firedoor, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"aLZ" = ( -/turf/open/floor/plasteel{ - icon_state = "L3" - }, -/area/hallway/primary/central) -"aMa" = ( -/turf/open/floor/plasteel{ - icon_state = "L1" - }, -/area/hallway/primary/central) -"aMb" = ( -/turf/open/floor/plasteel{ - icon_state = "L7" - }, -/area/hallway/primary/central) -"aMc" = ( -/turf/open/floor/plasteel{ - icon_state = "L5" - }, -/area/hallway/primary/central) -"aMd" = ( -/turf/open/floor/plasteel{ - icon_state = "L11" - }, -/area/hallway/primary/central) -"aMe" = ( -/turf/open/floor/plasteel{ - icon_state = "L9" - }, -/area/hallway/primary/central) -"aMf" = ( -/turf/open/floor/plasteel{ - desc = ""; - icon_state = "L13"; - name = "floor" - }, -/area/hallway/primary/central) -"aMg" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 4 - }, -/area/hallway/primary/central) -"aMh" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"aMi" = ( -/obj/structure/disposalpipe/segment, -/obj/effect/landmark{ - name = "xeno_spawn"; - pixel_x = -1 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/wood, -/area/crew_quarters/bar) -"aMj" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 9 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 1 - }, -/area/hallway/primary/central) -"aMk" = ( -/obj/machinery/chem_master/condimaster{ - name = "CondiMaster Neo" - }, -/obj/machinery/camera{ - c_tag = "Kitchen Cold Room" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 8 - }, -/turf/open/floor/plasteel/showroomfloor, -/area/crew_quarters/kitchen) -"aMl" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/showroomfloor, -/area/crew_quarters/kitchen) -"aMm" = ( -/obj/machinery/firealarm{ - dir = 2; - pixel_y = 24 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"aMn" = ( -/obj/machinery/light{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"aMo" = ( -/obj/machinery/airalarm{ - pixel_y = 23 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"aMp" = ( -/obj/structure/chair/stool{ - pixel_y = 8 - }, -/turf/open/floor/wood, -/area/crew_quarters/theatre) -"aMq" = ( -/obj/structure/piano{ - tag = "icon-piano"; - icon_state = "piano" - }, -/turf/open/floor/wood, -/area/crew_quarters/theatre) -"aMr" = ( -/turf/open/floor/wood, -/area/crew_quarters/theatre) -"aMs" = ( -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/hydrofloor, -/area/hydroponics) -"aMt" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/extinguisher_cabinet{ - pixel_x = -5; - pixel_y = -31 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/hydrofloor, -/area/hydroponics) -"aMu" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/bar, -/area/crew_quarters/bar) -"aMv" = ( -/obj/structure/window/reinforced{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/wood, -/area/crew_quarters/theatre) -"aMw" = ( -/obj/machinery/computer/slot_machine, -/turf/open/floor/plasteel/bar, -/area/crew_quarters/bar) -"aMx" = ( -/obj/structure/chair/stool, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/bar, -/area/crew_quarters/bar) -"aMy" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 5 - }, -/turf/open/floor/plasteel/hydrofloor, -/area/hydroponics) -"aMz" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/hydrofloor, -/area/hydroponics) -"aMA" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/firealarm{ - dir = 1; - pixel_y = -24 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/hydrofloor, -/area/hydroponics) -"aMB" = ( -/obj/machinery/vending/coffee, -/turf/open/floor/wood, -/area/crew_quarters/bar) -"aMC" = ( -/obj/machinery/vending/cola, -/turf/open/floor/wood, -/area/crew_quarters/bar) -"aMD" = ( -/obj/machinery/icecream_vat, -/turf/open/floor/plasteel/showroomfloor, -/area/crew_quarters/kitchen) -"aME" = ( -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/hydrofloor, -/area/hydroponics) -"aMF" = ( -/turf/open/floor/plasteel/showroomfloor, -/area/crew_quarters/kitchen) -"aMG" = ( -/obj/structure/closet/crate/hydroponics, -/obj/item/weapon/shovel/spade, -/obj/item/weapon/wrench, -/obj/item/weapon/reagent_containers/glass/bucket, -/obj/item/weapon/wirecutters, -/turf/open/floor/plasteel/hydrofloor, -/area/hydroponics) -"aMH" = ( -/obj/structure/chair/office/dark{ - dir = 1 - }, -/turf/open/floor/wood, -/area/library) -"aMI" = ( -/obj/machinery/light/small, -/turf/open/floor/plasteel/hydrofloor, -/area/hydroponics) -"aMJ" = ( -/obj/structure/chair/office/dark{ - dir = 1 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/wood, -/area/library) -"aMK" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - external_pressure_bound = 101.325; - on = 1; - pressure_checks = 1 - }, -/turf/open/floor/plasteel/black, -/area/chapel/office) -"aML" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/black, -/area/chapel/main) -"aMM" = ( -/obj/machinery/camera{ - c_tag = "Chapel North"; - dir = 2; - network = list("SS13") - }, -/turf/open/floor/plasteel/black, -/area/chapel/main) -"aMN" = ( -/obj/machinery/chem_master/condimaster, -/turf/open/floor/plasteel/hydrofloor, -/area/hydroponics) -"aMO" = ( -/obj/structure/table/wood, -/obj/item/weapon/reagent_containers/food/snacks/chips, -/obj/item/weapon/reagent_containers/food/drinks/soda_cans/cola, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/carpet, -/area/hallway/secondary/entry) -"aMP" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/carpet, -/area/hallway/secondary/entry) -"aMQ" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 6 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/port) -"aMR" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - on = 1 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/port) -"aMS" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/port) -"aMT" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/hallway/primary/port) -"aMU" = ( -/obj/structure/disposalpipe/segment, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/hallway/primary/port) -"aMV" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/hallway/primary/port) -"aMW" = ( -/obj/structure/bodycontainer/morgue, -/obj/effect/landmark{ - name = "revenantspawn" - }, -/turf/open/floor/plasteel/black, -/area/chapel/office) -"aMX" = ( -/turf/open/floor/plasteel/grimy, -/area/chapel/office) -"aMY" = ( -/obj/machinery/atmospherics/pipe/manifold4w/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/hallway/primary/port) -"aMZ" = ( -/turf/closed/wall, -/area/hallway/secondary/exit) -"aNa" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/hallway/secondary/exit) -"aNb" = ( -/obj/machinery/holopad, -/turf/open/floor/plasteel, -/area/hallway/secondary/entry) -"aNc" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass{ - name = "Central Access" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"aNd" = ( -/obj/structure/table/wood, -/turf/open/floor/plasteel/grimy, -/area/hallway/secondary/entry) -"aNe" = ( -/turf/open/floor/carpet, -/area/hallway/secondary/entry) -"aNf" = ( -/obj/structure/chair/comfy/beige{ - dir = 8 - }, -/turf/open/floor/plasteel/grimy, -/area/hallway/secondary/entry) -"aNg" = ( -/obj/machinery/vending/coffee, -/turf/open/floor/plasteel/black, -/area/hallway/secondary/entry) -"aNh" = ( -/obj/machinery/door/firedoor, -/turf/open/floor/plasteel, -/area/hallway/secondary/entry) -"aNi" = ( -/turf/open/floor/goonplaque, -/area/hallway/secondary/entry) -"aNj" = ( -/obj/machinery/navbeacon{ - codes_txt = "patrol;next_patrol=CHW"; - location = "Lockers" - }, -/turf/open/floor/plasteel, -/area/hallway/primary/port) -"aNk" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/port) -"aNl" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/turf/open/floor/plasteel, -/area/hallway/primary/port) -"aNm" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/port) -"aNn" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/floor/plasteel, -/area/hallway/primary/port) -"aNo" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/turf/open/floor/plasteel, -/area/hallway/primary/port) -"aNp" = ( -/obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/port) -"aNq" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"aNr" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"aNs" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"aNt" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/wood, -/area/crew_quarters/theatre) -"aNu" = ( -/obj/structure/closet/secure_closet/bar{ - req_access_txt = "25" - }, -/turf/open/floor/wood, -/area/crew_quarters/bar) -"aNv" = ( -/turf/open/floor/plasteel{ - icon_state = "L4" - }, -/area/hallway/primary/central) -"aNw" = ( -/turf/open/floor/plasteel{ - icon_state = "L2" - }, -/area/hallway/primary/central) -"aNx" = ( -/turf/open/floor/plasteel{ - icon_state = "L8" - }, -/area/hallway/primary/central) -"aNy" = ( -/obj/machinery/navbeacon{ - codes_txt = "patrol;next_patrol=Lockers"; - location = "EVA" - }, -/turf/open/floor/plasteel{ - icon_state = "L6" - }, -/area/hallway/primary/central) -"aNz" = ( -/turf/open/floor/plasteel{ - icon_state = "L12" - }, -/area/hallway/primary/central) -"aNA" = ( -/obj/machinery/navbeacon{ - codes_txt = "patrol;next_patrol=Security"; - location = "EVA2" - }, -/turf/open/floor/plasteel{ - icon_state = "L10" - }, -/area/hallway/primary/central) -"aNB" = ( -/turf/open/floor/plasteel{ - desc = ""; - icon_state = "L14" - }, -/area/hallway/primary/central) -"aNC" = ( -/obj/machinery/navbeacon{ - codes_txt = "patrol;next_patrol=EVA2"; - location = "Dorm" - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"aND" = ( -/obj/structure/closet/gmcloset, -/obj/item/stack/sheet/metal{ - amount = 50 - }, -/obj/item/stack/sheet/glass{ - amount = 50 - }, -/obj/item/stack/cable_coil, -/obj/item/device/flashlight/lamp, -/obj/item/device/flashlight/lamp/green, -/turf/open/floor/wood, -/area/crew_quarters/bar) -"aNE" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - external_pressure_bound = 101.325; - on = 1; - pressure_checks = 1 - }, -/turf/open/floor/wood, -/area/crew_quarters/bar) -"aNF" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/wood, -/area/crew_quarters/theatre) -"aNG" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/bar, -/area/crew_quarters/bar) -"aNH" = ( -/obj/machinery/door/window{ - dir = 4; - name = "Theatre Stage"; - req_access_txt = "0" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/wood, -/area/crew_quarters/theatre) -"aNI" = ( -/obj/machinery/computer/slot_machine, -/obj/machinery/light/small{ - dir = 4 - }, -/obj/machinery/status_display{ - density = 0; - layer = 3; - pixel_x = 32; - pixel_y = 0 - }, -/turf/open/floor/plasteel/bar, -/area/crew_quarters/bar) -"aNJ" = ( -/obj/structure/chair/stool, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/bar, -/area/crew_quarters/bar) -"aNK" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/mob/living/simple_animal/hostile/retaliate/goat{ - name = "Pete" - }, -/turf/open/floor/plasteel/showroomfloor, -/area/crew_quarters/kitchen) -"aNL" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall, -/area/hydroponics) -"aNM" = ( -/obj/structure/kitchenspike, -/obj/machinery/light/small{ - dir = 8 - }, -/turf/open/floor/plasteel/showroomfloor, -/area/crew_quarters/kitchen) -"aNN" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass{ - name = "Hydroponics"; - req_access_txt = "35" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/hydrofloor, -/area/hydroponics) -"aNO" = ( -/obj/machinery/light/small{ - dir = 4 - }, -/obj/machinery/airalarm{ - dir = 8; - icon_state = "alarm0"; - pixel_x = 24 - }, -/obj/structure/closet/chefcloset, -/turf/open/floor/plasteel/showroomfloor, -/area/crew_quarters/kitchen) -"aNP" = ( -/obj/structure/disposalpipe/segment, -/turf/open/floor/wood, -/area/library) -"aNQ" = ( -/obj/structure/grille, -/obj/structure/window/fulltile, -/turf/open/floor/plating, -/area/hydroponics) -"aNR" = ( -/obj/structure/table/wood, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/carpet, -/area/hallway/secondary/entry) -"aNS" = ( -/obj/machinery/bookbinder{ - pixel_y = 0 - }, -/turf/open/floor/wood, -/area/library) -"aNT" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/port) -"aNU" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/camera{ - c_tag = "Port Hallway"; - dir = 1 - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/port) -"aNV" = ( -/obj/machinery/photocopier, -/turf/open/floor/wood, -/area/library) -"aNW" = ( -/obj/machinery/door/airlock/glass{ - name = "Chapel Office"; - req_access_txt = "22" - }, -/turf/open/floor/plasteel/black, -/area/chapel/office) -"aNX" = ( -/obj/item/device/radio/intercom{ - broadcasting = 1; - frequency = 1480; - name = "Confessional Intercom"; - pixel_x = 25 - }, -/obj/structure/chair, -/turf/open/floor/plasteel/black, -/area/chapel/main) -"aNY" = ( -/obj/machinery/door/morgue{ - name = "Confession Booth (Chaplain)"; - req_access_txt = "22" - }, -/turf/open/floor/plasteel/black, -/area/chapel/main) -"aNZ" = ( -/obj/structure/chair, -/turf/open/floor/plasteel/red/side{ - dir = 9 - }, -/area/hallway/secondary/exit) -"aOa" = ( -/obj/machinery/light{ - dir = 1 - }, -/obj/structure/chair, -/turf/open/floor/plasteel/red/side{ - dir = 1 - }, -/area/hallway/secondary/exit) -"aOb" = ( -/obj/structure/chair, -/turf/open/floor/plasteel/red/side{ - dir = 1 - }, -/area/hallway/secondary/exit) -"aOc" = ( -/obj/structure/chair, -/turf/open/floor/plasteel/warning{ - dir = 5 - }, -/area/hallway/secondary/exit) -"aOd" = ( -/obj/structure/chair, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/hallway/secondary/exit) -"aOe" = ( -/obj/item/device/radio/beacon, -/obj/machinery/camera{ - c_tag = "Arrivals Bay 1 South" - }, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/hallway/secondary/entry) -"aOf" = ( -/obj/machinery/vending/snack, -/turf/open/floor/plasteel/warning{ - dir = 9 - }, -/area/hallway/secondary/entry) -"aOg" = ( -/obj/structure/closet/emcloset, -/turf/open/floor/plasteel/warning{ - dir = 5 - }, -/area/hallway/secondary/entry) -"aOh" = ( -/obj/structure/closet/emcloset, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/hallway/secondary/entry) -"aOi" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/port) -"aOj" = ( -/obj/structure/table/wood, -/obj/item/weapon/storage/fancy/cigarettes{ - pixel_y = 2 - }, -/obj/item/weapon/lighter/greyscale{ - pixel_x = 4; - pixel_y = 2 - }, -/turf/open/floor/plasteel/grimy, -/area/hallway/secondary/entry) -"aOk" = ( -/obj/machinery/vending/cola, -/turf/open/floor/plasteel/black, -/area/hallway/secondary/entry) -"aOl" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/port) -"aOm" = ( -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plasteel, -/area/hallway/primary/port) -"aOn" = ( -/obj/machinery/light, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/port) -"aOo" = ( -/obj/machinery/firealarm{ - dir = 1; - pixel_y = -24 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/port) -"aOp" = ( -/obj/machinery/camera{ - c_tag = "Port Hallway 3"; - dir = 1 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/port) -"aOq" = ( -/obj/structure/disposalpipe/junction{ - icon_state = "pipe-j1"; - dir = 4 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/port) -"aOr" = ( -/obj/structure/disposalpipe/junction{ - icon_state = "pipe-j2"; - dir = 4 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/port) -"aOs" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/door/firedoor, -/turf/open/floor/plasteel, -/area/hallway/primary/port) -"aOt" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/light, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/port) -"aOu" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/port) -"aOv" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/port) -"aOw" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/open/floor/plasteel, -/area/hallway/primary/port) -"aOx" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/port) -"aOy" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/open/floor/plasteel, -/area/hallway/primary/port) -"aOz" = ( -/obj/structure/sign/directions/security{ - dir = 4; - icon_state = "direction_sec"; - pixel_x = 32; - pixel_y = -24 - }, -/obj/structure/sign/directions/evac{ - dir = 4; - icon_state = "direction_evac"; - pixel_x = 32; - pixel_y = -32 - }, -/obj/structure/sign/directions/engineering{ - pixel_x = 32; - pixel_y = -40 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/port) -"aOA" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/port) -"aOB" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass{ - name = "Central Access" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"aOC" = ( -/obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/port) -"aOD" = ( -/obj/machinery/navbeacon{ - codes_txt = "patrol;next_patrol=QM"; - location = "CHW" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 10 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"aOE" = ( -/turf/open/floor/plasteel/blue/corner{ - dir = 8 - }, -/area/hallway/primary/central) -"aOF" = ( -/obj/machinery/light, -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'HIGH VOLTAGE'"; - icon_state = "shock"; - name = "HIGH VOLTAGE"; - pixel_y = -32 - }, -/obj/machinery/door/firedoor, -/turf/open/floor/plasteel/blue/corner{ - dir = 8 - }, -/area/hallway/primary/central) -"aOG" = ( -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'HIGH VOLTAGE'"; - icon_state = "shock"; - name = "HIGH VOLTAGE"; - pixel_y = -32 - }, -/obj/machinery/door/firedoor, -/obj/machinery/light, -/turf/open/floor/plasteel/blue/corner{ - dir = 8 - }, -/area/hallway/primary/central) -"aOH" = ( -/obj/structure/window/reinforced, -/turf/open/floor/wood, -/area/crew_quarters/theatre) -"aOI" = ( -/obj/structure/kitchenspike, -/turf/open/floor/plasteel/showroomfloor, -/area/crew_quarters/kitchen) -"aOJ" = ( -/obj/structure/window/reinforced, -/obj/structure/window/reinforced{ - dir = 4 - }, -/turf/open/floor/wood, -/area/crew_quarters/theatre) -"aOK" = ( -/obj/structure/grille, -/obj/structure/window/fulltile, -/turf/open/floor/plating, -/area/crew_quarters/bar) -"aOL" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/bar, -/area/crew_quarters/bar) -"aOM" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/plasteel/showroomfloor, -/area/crew_quarters/kitchen) -"aON" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 8 - }, -/turf/open/floor/plasteel/showroomfloor, -/area/crew_quarters/kitchen) -"aOO" = ( -/obj/machinery/door/airlock{ - name = "Bar Storage"; - req_access_txt = "25" - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel{ - icon_state = "wood" - }, -/area/crew_quarters/bar) -"aOP" = ( -/obj/effect/landmark{ - name = "blobstart" - }, -/obj/item/toy/beach_ball/holoball, -/turf/open/floor/plating, -/area/crew_quarters/bar) -"aOQ" = ( -/obj/machinery/requests_console{ - department = "Hydroponics"; - departmentType = 2; - pixel_x = 0; - pixel_y = 30 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/black, -/area/hydroponics) -"aOR" = ( -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/black, -/area/hydroponics) -"aOS" = ( -/obj/structure/disposalpipe/segment, -/turf/open/floor/carpet, -/area/library) -"aOT" = ( -/obj/machinery/gibber, -/turf/open/floor/plasteel/showroomfloor, -/area/crew_quarters/kitchen) -"aOU" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel, -/area/hallway/secondary/exit) -"aOV" = ( -/obj/structure/sink{ - icon_state = "sink"; - dir = 8; - pixel_x = -12; - pixel_y = 2 - }, -/turf/open/floor/plasteel/black, -/area/hydroponics) -"aOW" = ( -/obj/machinery/hydroponics/constructable, -/obj/machinery/camera{ - c_tag = "Hydroponics North"; - dir = 2 - }, -/turf/open/floor/plasteel/black, -/area/hydroponics) -"aOX" = ( -/obj/machinery/hydroponics/constructable, -/turf/open/floor/plasteel/black, -/area/hydroponics) -"aOY" = ( -/obj/structure/chair/comfy/beige{ - dir = 1; - icon_state = "comfychair" - }, -/obj/effect/landmark/start{ - name = "Assistant" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/grimy, -/area/hallway/secondary/entry) -"aOZ" = ( -/obj/machinery/disposal/bin, -/obj/structure/disposalpipe/trunk{ - dir = 8 - }, -/turf/open/floor/plasteel/black, -/area/hydroponics) -"aPa" = ( -/obj/structure/chair/comfy/beige{ - dir = 1; - icon_state = "comfychair" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/grimy, -/area/hallway/secondary/entry) -"aPb" = ( -/obj/structure/bookcase/random/religion, -/turf/open/floor/wood, -/area/library) -"aPc" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/hallway/primary/port) -"aPd" = ( -/obj/structure/bookcase/random/reference, -/turf/open/floor/wood, -/area/library) -"aPe" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"aPf" = ( -/obj/machinery/computer/libraryconsole, -/obj/structure/table/wood, -/turf/open/floor/wood, -/area/library) -"aPg" = ( -/obj/structure/bookcase{ - name = "Forbidden Knowledge" - }, -/turf/open/floor/engine/cult, -/area/library) -"aPh" = ( -/obj/structure/table/wood, -/obj/item/weapon/paper_bin{ - pixel_x = -3; - pixel_y = 7 - }, -/obj/item/weapon/pen/invisible, -/turf/open/floor/engine/cult, -/area/library) -"aPi" = ( -/obj/structure/table/wood, -/obj/item/device/taperecorder{ - pixel_y = 0 - }, -/obj/item/device/camera, -/obj/item/device/radio/intercom{ - pixel_y = 25 - }, -/turf/open/floor/engine/cult, -/area/library) -"aPj" = ( -/obj/machinery/light_switch{ - pixel_y = 28 - }, -/turf/open/floor/plasteel/black, -/area/chapel/main) -"aPk" = ( -/turf/open/floor/plasteel/chapel{ - dir = 4 - }, -/area/chapel/main) -"aPl" = ( -/turf/open/floor/plasteel/chapel{ - dir = 1 - }, -/area/chapel/main) -"aPm" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/chapel{ - dir = 4 - }, -/area/chapel/main) -"aPn" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/chapel{ - dir = 1 - }, -/area/chapel/main) -"aPo" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/tinted/fulltile, -/turf/open/floor/plasteel/black, -/area/chapel/main) -"aPp" = ( -/obj/machinery/camera{ - c_tag = "Escape Arm Holding Area"; - dir = 4 - }, -/obj/item/device/radio/intercom{ - dir = 8; - name = "Station Intercom (General)"; - pixel_x = -28 - }, -/turf/open/floor/plasteel/red/side{ - dir = 8 - }, -/area/hallway/secondary/exit) -"aPq" = ( -/turf/open/floor/plasteel, -/area/hallway/secondary/exit) -"aPr" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - on = 1 - }, -/turf/open/floor/plasteel, -/area/hallway/secondary/exit) -"aPs" = ( -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/hallway/secondary/exit) -"aPt" = ( -/turf/open/floor/plasteel/warning{ - dir = 9 - }, -/area/hallway/secondary/entry) -"aPu" = ( -/turf/open/floor/plasteel/warning/corner{ - dir = 4 - }, -/area/hallway/secondary/entry) -"aPv" = ( -/obj/item/device/radio/intercom{ - broadcasting = 0; - name = "Station Intercom (General)"; - pixel_y = 20 - }, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/hallway/secondary/entry) -"aPw" = ( -/obj/machinery/disposal/bin, -/obj/structure/sign/securearea{ - desc = "Under the painting a plaque reads: 'While the meat grinder may not have spared you, fear not. Not one part of you has gone to waste... You were delicious.'"; - icon_state = "monkey_painting"; - name = "Mr. Deempisi portrait"; - pixel_x = -28; - pixel_y = -4 - }, -/obj/structure/disposalpipe/trunk{ - dir = 4 - }, -/obj/machinery/button/door{ - id = "barShutters"; - name = "bar shutters"; - pixel_x = 4; - pixel_y = 28 - }, -/turf/open/floor/plasteel/bar, -/area/crew_quarters/bar) -"aPx" = ( -/obj/structure/chair/comfy/beige{ - dir = 1; - icon_state = "comfychair" - }, -/turf/open/floor/plasteel/grimy, -/area/hallway/secondary/entry) -"aPy" = ( -/obj/machinery/vending/snack, -/turf/open/floor/plasteel/black, -/area/hallway/secondary/entry) -"aPz" = ( -/turf/closed/wall, -/area/maintenance/port) -"aPA" = ( -/turf/closed/wall, -/area/crew_quarters/locker) -"aPB" = ( -/obj/machinery/door/airlock/maintenance{ - req_access_txt = "12" - }, -/obj/structure/disposalpipe/segment, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/turf/open/floor/plating, -/area/maintenance/port) -"aPC" = ( -/obj/machinery/door/firedoor, -/turf/open/floor/plasteel, -/area/crew_quarters/locker) -"aPD" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/door/firedoor, -/turf/open/floor/plasteel, -/area/crew_quarters/locker) -"aPE" = ( -/obj/machinery/status_display{ - density = 0; - layer = 4 - }, -/turf/closed/wall, -/area/crew_quarters/locker) -"aPF" = ( -/obj/structure/grille, -/obj/structure/window/fulltile, -/turf/open/floor/plating, -/area/storage/art) -"aPG" = ( -/turf/closed/wall, -/area/storage/art) -"aPH" = ( -/obj/machinery/door/airlock/glass{ - name = "Art Storage" - }, -/turf/open/floor/plasteel, -/area/storage/art) -"aPI" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/door/airlock/maintenance{ - req_access_txt = "12" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/maintenance/port) -"aPJ" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/closed/wall, -/area/storage/art) -"aPK" = ( -/turf/closed/wall, -/area/storage/emergency2) -"aPL" = ( -/obj/structure/table, -/turf/open/floor/plasteel, -/area/hallway/primary/port) -"aPM" = ( -/obj/structure/closet/emcloset, -/turf/open/floor/plasteel, -/area/hallway/primary/port) -"aPN" = ( -/obj/structure/table, -/obj/machinery/airalarm{ - dir = 1; - icon_state = "alarm0"; - pixel_y = -22 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/port) -"aPO" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/hallway/primary/port) -"aPP" = ( -/obj/machinery/firealarm{ - dir = 4; - pixel_x = 24 - }, -/obj/structure/table, -/obj/machinery/chem_dispenser/drinks/beer, -/obj/item/device/radio/intercom{ - pixel_y = 25 - }, -/turf/open/floor/plasteel/bar, -/area/crew_quarters/bar) -"aPQ" = ( -/turf/closed/wall, -/area/storage/tools) -"aPR" = ( -/turf/closed/wall/r_wall, -/area/bridge) -"aPS" = ( -/obj/structure/grille, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor/preopen{ - id = "bridge blast"; - layer = 2.9; - name = "bridge blast door" - }, -/turf/open/floor/plating, -/area/bridge) -"aPT" = ( -/obj/structure/grille, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/machinery/door/poddoor/preopen{ - id = "bridge blast"; - layer = 2.9; - name = "bridge blast door" - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/bridge) -"aPU" = ( -/obj/structure/grille, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/machinery/status_display{ - density = 0; - layer = 4 - }, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor/preopen{ - id = "bridge blast"; - layer = 2.9; - name = "bridge blast door" - }, -/turf/open/floor/plating, -/area/bridge) -"aPV" = ( -/obj/structure/grille, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor/preopen{ - id = "bridge blast"; - layer = 2.9; - name = "bridge blast door" - }, -/turf/open/floor/plating, -/area/bridge) -"aPW" = ( -/obj/structure/grille, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/machinery/status_display{ - density = 0; - layer = 4 - }, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor/preopen{ - id = "bridge blast"; - layer = 2.9; - name = "bridge blast door" - }, -/turf/open/floor/plating, -/area/bridge) -"aPX" = ( -/obj/structure/grille, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor/preopen{ - id = "bridge blast"; - layer = 2.9; - name = "bridge blast door" - }, -/turf/open/floor/plating, -/area/bridge) -"aPY" = ( -/obj/structure/chair/stool, -/turf/open/floor/plasteel/bar, -/area/crew_quarters/bar) -"aPZ" = ( -/obj/structure/table, -/obj/machinery/computer/security/telescreen/entertainment{ - pixel_x = -31 - }, -/obj/item/clothing/head/hardhat/cakehat, -/turf/open/floor/plasteel/bar, -/area/crew_quarters/bar) -"aQa" = ( -/obj/structure/table, -/obj/item/weapon/kitchen/fork, -/turf/open/floor/plasteel/bar, -/area/crew_quarters/bar) -"aQb" = ( -/obj/structure/window/reinforced, -/obj/structure/table/wood, -/obj/item/device/instrument/violin, -/turf/open/floor/wood, -/area/crew_quarters/theatre) -"aQc" = ( -/turf/open/floor/plasteel/bar, -/area/crew_quarters/bar) -"aQd" = ( -/obj/structure/chair, -/obj/effect/landmark/start{ - name = "Assistant" - }, -/turf/open/floor/plasteel/bar, -/area/crew_quarters/bar) -"aQe" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/chair/stool, -/turf/open/floor/plasteel/bar, -/area/crew_quarters/bar) -"aQf" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/green/side{ - dir = 9 - }, -/area/hydroponics) -"aQg" = ( -/obj/structure/grille, -/obj/structure/window/fulltile, -/obj/machinery/door/poddoor/preopen{ - id = "barShutters"; - name = "privacy shutters" - }, -/turf/open/floor/plating, -/area/crew_quarters/bar) -"aQh" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/green/side{ - dir = 5 - }, -/area/hydroponics) -"aQi" = ( -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/bar, -/area/crew_quarters/bar) -"aQj" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall, -/area/crew_quarters/kitchen) -"aQk" = ( -/obj/machinery/door/airlock{ - name = "Kitchen cold room"; - req_access_txt = "28" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/showroomfloor, -/area/crew_quarters/kitchen) -"aQl" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 8 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 1 - }, -/area/hallway/secondary/entry) -"aQm" = ( -/turf/open/floor/plasteel/green/side{ - dir = 1 - }, -/area/hydroponics) -"aQn" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 5 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 1 - }, -/area/hallway/secondary/entry) -"aQo" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 1 - }, -/area/hallway/secondary/entry) -"aQp" = ( -/obj/machinery/light/small{ - dir = 8 - }, -/turf/open/floor/wood, -/area/library) -"aQq" = ( -/obj/machinery/light/small{ - dir = 4 - }, -/turf/open/floor/wood, -/area/library) -"aQr" = ( -/obj/machinery/light/small, -/turf/open/floor/engine/cult, -/area/library) -"aQs" = ( -/obj/structure/destructible/cult/tome, -/obj/item/clothing/under/suit_jacket/red, -/obj/item/weapon/book/codex_gigas, -/turf/open/floor/engine/cult, -/area/library) -"aQt" = ( -/obj/effect/landmark{ - name = "blobstart" - }, -/obj/structure/chair/comfy/brown{ - dir = 1 - }, -/turf/open/floor/engine/cult, -/area/library) -"aQu" = ( -/turf/open/floor/plasteel/chapel, -/area/chapel/main) -"aQv" = ( -/turf/open/floor/plasteel/chapel{ - dir = 8 - }, -/area/chapel/main) -"aQw" = ( -/obj/structure/table/wood, -/turf/open/floor/plasteel/black, -/area/chapel/main) -"aQx" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/chapel, -/area/chapel/main) -"aQy" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/chapel{ - dir = 8 - }, -/area/chapel/main) -"aQz" = ( -/obj/item/device/radio/intercom{ - broadcasting = 1; - frequency = 1480; - name = "Confessional Intercom"; - pixel_x = 25 - }, -/obj/structure/chair{ - dir = 1 - }, -/turf/open/floor/plasteel/black, -/area/chapel/main) -"aQA" = ( -/obj/machinery/door/morgue{ - name = "Confession Booth" - }, -/turf/open/floor/plasteel/black, -/area/chapel/main) -"aQB" = ( -/turf/open/floor/plasteel/red/side{ - dir = 8 - }, -/area/hallway/secondary/exit) -"aQC" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/hallway/secondary/exit) -"aQD" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 1 - }, -/area/hallway/secondary/entry) -"aQE" = ( -/turf/open/floor/plating, -/area/hallway/secondary/exit) -"aQF" = ( -/obj/machinery/door/airlock/external{ - cyclelinkeddir = 4; - name = "Security Escape Airlock"; - req_access_txt = "2" - }, -/turf/open/floor/plating, -/area/hallway/secondary/exit) -"aQG" = ( -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; - icon_state = "space"; - layer = 4; - name = "EXTERNAL AIRLOCK"; - pixel_x = 0; - pixel_y = 32 - }, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/hallway/secondary/entry) -"aQH" = ( -/turf/open/floor/plasteel/warning/corner{ - dir = 8 - }, -/area/hallway/secondary/entry) -"aQI" = ( -/obj/machinery/door/firedoor, -/turf/open/floor/plasteel/neutral/corner{ - dir = 4 - }, -/area/hallway/secondary/entry) -"aQJ" = ( -/turf/open/floor/plasteel/neutral/side{ - dir = 1 - }, -/area/hallway/secondary/entry) -"aQK" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 1 - }, -/area/hallway/secondary/entry) -"aQL" = ( -/obj/structure/closet, -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plating, -/area/maintenance/port) -"aQM" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plating, -/area/maintenance/port) -"aQN" = ( -/turf/open/floor/plasteel, -/area/crew_quarters/locker) -"aQO" = ( -/obj/structure/closet/wardrobe/white, -/turf/open/floor/plasteel, -/area/crew_quarters/locker) -"aQP" = ( -/obj/structure/reagent_dispensers/fueltank, -/obj/machinery/light_switch{ - pixel_y = 28 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/locker) -"aQQ" = ( -/obj/structure/reagent_dispensers/watertank, -/turf/open/floor/plasteel, -/area/crew_quarters/locker) -"aQR" = ( -/obj/machinery/vending/cola, -/turf/open/floor/plasteel, -/area/crew_quarters/locker) -"aQS" = ( -/obj/machinery/vending/coffee, -/turf/open/floor/plasteel, -/area/crew_quarters/locker) -"aQT" = ( -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel, -/area/crew_quarters/locker) -"aQU" = ( -/obj/machinery/vending/cigarette, -/turf/open/floor/plasteel, -/area/crew_quarters/locker) -"aQV" = ( -/obj/machinery/vending/clothing, -/turf/open/floor/plasteel, -/area/crew_quarters/locker) -"aQW" = ( -/obj/structure/closet/secure_closet/personal, -/turf/open/floor/plasteel, -/area/crew_quarters/locker) -"aQX" = ( -/obj/machinery/firealarm{ - dir = 2; - pixel_y = 24 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/locker) -"aQY" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/obj/structure/table, -/obj/item/stack/cable_coil/random, -/obj/item/stack/cable_coil/random, -/turf/open/floor/plasteel, -/area/storage/art) -"aQZ" = ( -/obj/machinery/light/small{ - dir = 4 - }, -/obj/machinery/light_switch{ - pixel_x = 27 - }, -/turf/open/floor/plasteel, -/area/storage/art) -"aRa" = ( -/turf/open/floor/plasteel, -/area/storage/art) -"aRb" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/maintenance/port) -"aRc" = ( -/obj/machinery/door/airlock{ - name = "Port Emergency Storage"; - req_access_txt = "0" - }, -/turf/open/floor/plating, -/area/storage/emergency2) -"aRd" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 1 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 1 - }, -/area/hallway/secondary/entry) -"aRe" = ( -/obj/structure/grille, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/storage/tools) -"aRf" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass{ - name = "Auxiliary Tool Storage"; - req_access_txt = "12" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/storage/tools) -"aRg" = ( -/obj/machinery/vending/boozeomat, -/turf/open/floor/plasteel/bar, -/area/crew_quarters/bar) -"aRh" = ( -/obj/machinery/light{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"aRi" = ( -/obj/machinery/computer/atmos_alert, -/turf/open/floor/plasteel/yellow/side{ - dir = 10 - }, -/area/bridge) -"aRj" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/storage/secure/briefcase, -/obj/item/weapon/storage/box/PDAs{ - pixel_x = 4; - pixel_y = 4 - }, -/obj/item/weapon/storage/box/ids, -/turf/open/floor/plasteel, -/area/bridge) -"aRk" = ( -/obj/machinery/computer/monitor{ - name = "bridge power monitoring console" - }, -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/turf/open/floor/plasteel/yellow/side{ - dir = 6 - }, -/area/bridge) -"aRl" = ( -/obj/machinery/computer/station_alert, -/turf/open/floor/plasteel/yellow/side, -/area/bridge) -"aRm" = ( -/obj/machinery/computer/communications, -/turf/open/floor/plasteel/blue/side{ - dir = 0 - }, -/area/bridge) -"aRn" = ( -/obj/machinery/computer/shuttle/labor, -/turf/open/floor/plasteel/blue/side{ - dir = 10 - }, -/area/bridge) -"aRo" = ( -/obj/machinery/modular_computer/console/preset/command, -/turf/open/floor/plasteel/green/side{ - dir = 10 - }, -/area/bridge) -"aRp" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/machinery/computer/shuttle/mining, -/turf/open/floor/plasteel/blue/side{ - dir = 6 - }, -/area/bridge) -"aRq" = ( -/obj/machinery/computer/med_data, -/turf/open/floor/plasteel/green/side{ - dir = 6 - }, -/area/bridge) -"aRr" = ( -/obj/machinery/computer/crew, -/turf/open/floor/plasteel/green/side{ - dir = 2 - }, -/area/bridge) -"aRs" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/storage/toolbox/emergency, -/obj/item/weapon/wrench, -/obj/item/device/assembly/timer, -/obj/item/device/assembly/signaler, -/obj/item/device/assembly/signaler, -/turf/open/floor/plasteel, -/area/bridge) -"aRt" = ( -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"aRu" = ( -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/obj/structure/chair/stool, -/turf/open/floor/plasteel/bar, -/area/crew_quarters/bar) -"aRv" = ( -/obj/structure/chair{ - dir = 1 - }, -/turf/open/floor/plasteel/bar, -/area/crew_quarters/bar) -"aRw" = ( -/obj/structure/chair{ - dir = 1 - }, -/obj/effect/landmark/start{ - name = "Assistant" - }, -/turf/open/floor/plasteel/bar, -/area/crew_quarters/bar) -"aRx" = ( -/obj/structure/chair{ - dir = 4 - }, -/turf/open/floor/plasteel/bar, -/area/crew_quarters/bar) -"aRy" = ( -/obj/structure/extinguisher_cabinet{ - pixel_x = -5; - pixel_y = 30 - }, -/turf/open/floor/plasteel/cafeteria, -/area/crew_quarters/kitchen) -"aRz" = ( -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/turf/open/floor/plasteel/bar, -/area/crew_quarters/bar) -"aRA" = ( -/obj/machinery/vending/dinnerware, -/turf/open/floor/plasteel/cafeteria, -/area/crew_quarters/kitchen) -"aRB" = ( -/obj/item/device/radio/intercom{ - pixel_y = 25 - }, -/obj/machinery/camera{ - c_tag = "Kitchen"; - dir = 2 - }, -/obj/structure/closet/secure_closet/freezer/fridge, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/cafeteria, -/area/crew_quarters/kitchen) -"aRC" = ( -/obj/structure/sink/kitchen{ - pixel_y = 28 - }, -/obj/machinery/food_cart, -/turf/open/floor/plasteel/cafeteria, -/area/crew_quarters/kitchen) -"aRD" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/cafeteria, -/area/crew_quarters/kitchen) -"aRE" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/green/side{ - dir = 8 - }, -/area/hydroponics) -"aRF" = ( -/obj/structure/table, -/obj/machinery/microwave{ - pixel_x = -3; - pixel_y = 6 - }, -/turf/open/floor/plasteel/cafeteria, -/area/crew_quarters/kitchen) -"aRG" = ( -/obj/structure/table, -/obj/machinery/microwave{ - pixel_x = -3; - pixel_y = 6 - }, -/obj/machinery/airalarm{ - pixel_y = 24 - }, -/obj/machinery/light{ - dir = 1 - }, -/turf/open/floor/plasteel/cafeteria, -/area/crew_quarters/kitchen) -"aRH" = ( -/obj/structure/closet/secure_closet/freezer/kitchen, -/turf/open/floor/plasteel/cafeteria, -/area/crew_quarters/kitchen) -"aRI" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/green/side{ - dir = 4 - }, -/area/hydroponics) -"aRJ" = ( -/turf/open/floor/plasteel, -/area/hydroponics) -"aRK" = ( -/obj/structure/disposalpipe/segment, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/power/apc{ - dir = 4; - name = "Library APC"; - pixel_x = 24 - }, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/library) -"aRL" = ( -/obj/machinery/door/airlock/glass_security{ - name = "Holding Area"; - req_access_txt = "2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/hallway/secondary/exit) -"aRM" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/hallway/secondary/entry) -"aRN" = ( -/obj/structure/bookcase/random/fiction, -/turf/open/floor/wood, -/area/library) -"aRO" = ( -/obj/structure/bookcase/random/nonfiction, -/turf/open/floor/wood, -/area/library) -"aRP" = ( -/obj/machinery/camera{ - c_tag = "Library South"; - dir = 8; - network = list("SS13") - }, -/turf/open/floor/wood, -/area/library) -"aRQ" = ( -/obj/machinery/door/morgue{ - name = "Private Study"; - req_access_txt = "37" - }, -/turf/open/floor/engine/cult, -/area/library) -"aRR" = ( -/obj/machinery/firealarm{ - dir = 8; - pixel_x = -24 - }, -/turf/open/floor/plasteel/black, -/area/chapel/main) -"aRS" = ( -/turf/open/floor/carpet, -/area/chapel/main) -"aRT" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/structure/rack, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/item/weapon/electronics/apc, -/obj/item/weapon/electronics/airlock, -/turf/open/floor/plasteel, -/area/storage/tools) -"aRU" = ( -/obj/structure/grille, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/hallway/secondary/exit) -"aRV" = ( -/obj/machinery/power/apc{ - dir = 1; - name = "Auxiliary Tool Storage APC"; - pixel_y = 24 - }, -/obj/machinery/firealarm{ - dir = 8; - pixel_x = -24 - }, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/structure/table, -/obj/item/stack/sheet/glass{ - amount = 50 - }, -/obj/item/stack/rods{ - amount = 50 - }, -/turf/open/floor/plasteel, -/area/storage/tools) -"aRW" = ( -/obj/structure/grille, -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'KEEP CLEAR OF DOCKING AREA'."; - name = "KEEP CLEAR: DOCKING AREA"; - pixel_y = 0 - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/hallway/secondary/exit) -"aRX" = ( -/obj/machinery/light, -/turf/open/floor/plasteel/arrival{ - dir = 2 - }, -/area/hallway/secondary/entry) -"aRY" = ( -/turf/open/floor/plasteel/arrival{ - dir = 2 - }, -/area/hallway/secondary/entry) -"aRZ" = ( -/turf/open/floor/plasteel/white/corner{ - dir = 8 - }, -/area/hallway/secondary/entry) -"aSa" = ( -/obj/machinery/light_switch{ - pixel_y = 28 - }, -/obj/machinery/camera{ - c_tag = "Auxiliary Tool Storage"; - dir = 2 - }, -/obj/structure/table, -/obj/item/stack/sheet/metal{ - amount = 50 - }, -/obj/item/stack/sheet/metal{ - amount = 50 - }, -/obj/item/weapon/storage/box/lights/mixed, -/turf/open/floor/plasteel, -/area/storage/tools) -"aSb" = ( -/obj/machinery/airalarm{ - dir = 1; - icon_state = "alarm0"; - pixel_y = -22 - }, -/turf/open/floor/plasteel, -/area/hallway/secondary/entry) -"aSc" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/storage/tools) -"aSd" = ( -/obj/machinery/firealarm{ - dir = 2; - pixel_y = -24 - }, -/turf/open/floor/plasteel, -/area/hallway/secondary/entry) -"aSe" = ( -/obj/machinery/light, -/turf/open/floor/plasteel, -/area/hallway/secondary/entry) -"aSf" = ( -/obj/machinery/camera{ - c_tag = "Arrivals Hallway"; - dir = 8; - network = list("SS13") - }, -/turf/open/floor/plasteel, -/area/hallway/secondary/entry) -"aSg" = ( -/turf/open/floor/plating, -/area/maintenance/port) -"aSh" = ( -/obj/structure/closet/wardrobe/mixed, -/obj/item/device/radio/intercom{ - dir = 0; - name = "Station Intercom (General)"; - pixel_x = -27 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/locker) -"aSi" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/locker) -"aSj" = ( -/obj/effect/landmark{ - name = "lightsout" - }, -/turf/open/floor/plasteel, -/area/crew_quarters/locker) -"aSk" = ( -/obj/structure/table, -/obj/item/stack/cable_coil/random, -/obj/item/stack/cable_coil/random, -/turf/open/floor/plasteel, -/area/storage/art) -"aSl" = ( -/obj/machinery/light_switch{ - pixel_y = 28 - }, -/obj/item/weapon/storage/box/lights/mixed, -/turf/open/floor/plating, -/area/storage/emergency2) -"aSm" = ( -/turf/open/floor/plating, -/area/storage/emergency2) -"aSn" = ( -/obj/item/weapon/extinguisher, -/turf/open/floor/plating, -/area/storage/emergency2) -"aSo" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/plasteel/bar, -/area/crew_quarters/bar) -"aSp" = ( -/obj/structure/chair/stool, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 9 - }, -/turf/open/floor/plasteel/bar, -/area/crew_quarters/bar) -"aSq" = ( -/obj/structure/chair{ - dir = 8 - }, -/turf/open/floor/plasteel/bar, -/area/crew_quarters/bar) -"aSr" = ( -/turf/open/floor/plasteel, -/area/storage/tools) -"aSs" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/storage/tools) -"aSt" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/turf/open/floor/plasteel, -/area/storage/tools) -"aSu" = ( -/turf/open/floor/plasteel/yellow/corner{ - dir = 1 - }, -/area/bridge) -"aSv" = ( -/obj/structure/table/reinforced, -/obj/item/device/assembly/flash/handheld, -/obj/item/device/assembly/flash/handheld, -/turf/open/floor/plasteel, -/area/bridge) -"aSw" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/turf/open/floor/plasteel/yellow/corner{ - dir = 4 - }, -/area/bridge) -"aSx" = ( -/obj/structure/chair{ - dir = 1; - name = "Engineering Station" - }, -/turf/open/floor/plasteel, -/area/bridge) -"aSy" = ( -/obj/structure/chair{ - dir = 1; - name = "Command Station" - }, -/obj/machinery/button/door{ - id = "bridge blast"; - name = "Bridge Blast Door Control"; - pixel_x = 28; - pixel_y = -2; - req_access_txt = "19" - }, -/obj/machinery/keycard_auth{ - pixel_x = 29; - pixel_y = 8 - }, -/turf/open/floor/plasteel, -/area/bridge) -"aSz" = ( -/obj/structure/table/reinforced, -/obj/item/device/aicard, -/obj/item/device/multitool, -/turf/open/floor/plasteel/blue/side{ - dir = 8 - }, -/area/bridge) -"aSA" = ( -/turf/open/floor/plasteel/green/corner{ - dir = 1 - }, -/area/bridge) -"aSB" = ( -/obj/structure/table/reinforced, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/turf/open/floor/plasteel/blue/side{ - dir = 4 - }, -/area/bridge) -"aSC" = ( -/turf/open/floor/plasteel/green/corner{ - dir = 4 - }, -/area/bridge) -"aSD" = ( -/obj/structure/chair{ - dir = 1; - name = "Crew Station" - }, -/turf/open/floor/plasteel, -/area/bridge) -"aSE" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/storage/fancy/donut_box, -/turf/open/floor/plasteel, -/area/bridge) -"aSF" = ( -/mob/living/carbon/monkey/punpun, -/turf/open/floor/plasteel/bar, -/area/crew_quarters/bar) -"aSG" = ( -/obj/structure/table/wood/poker, -/obj/item/toy/cards/deck, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/bar, -/area/crew_quarters/bar) -"aSH" = ( -/obj/structure/chair/stool, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/bar, -/area/crew_quarters/bar) -"aSI" = ( -/obj/machinery/door/airlock/glass{ - name = "Kitchen"; - req_access_txt = "28" - }, -/turf/open/floor/plasteel/bar, -/area/crew_quarters/kitchen) -"aSJ" = ( -/obj/effect/landmark/start{ - name = "Cook" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/cafeteria, -/area/crew_quarters/kitchen) -"aSK" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/plasteel/cafeteria, -/area/crew_quarters/kitchen) -"aSL" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 5 - }, -/turf/open/floor/plasteel/cafeteria, -/area/crew_quarters/kitchen) -"aSM" = ( -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 9 - }, -/turf/open/floor/plasteel/cafeteria, -/area/crew_quarters/kitchen) -"aSN" = ( -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/cafeteria, -/area/crew_quarters/kitchen) -"aSO" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/cafeteria, -/area/crew_quarters/kitchen) -"aSP" = ( -/obj/machinery/smartfridge, -/turf/closed/wall, -/area/crew_quarters/kitchen) -"aSQ" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/green/side{ - dir = 8 - }, -/area/hydroponics) -"aSR" = ( -/turf/open/floor/plasteel/black, -/area/hydroponics) -"aSS" = ( -/obj/machinery/seed_extractor, -/turf/open/floor/plasteel, -/area/hydroponics) -"aST" = ( -/obj/machinery/biogenerator, -/turf/open/floor/plasteel, -/area/hydroponics) -"aSU" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - external_pressure_bound = 101.325; - on = 1; - pressure_checks = 1 - }, -/turf/open/floor/plasteel/green/side{ - dir = 4 - }, -/area/hydroponics) -"aSV" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - on = 1 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/locker) -"aSW" = ( -/obj/structure/extinguisher_cabinet{ - pixel_x = -27; - pixel_y = 0 - }, -/turf/open/floor/plasteel, -/area/storage/tools) -"aSX" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0; - tag = "" - }, -/turf/open/floor/plating, -/area/maintenance/port) -"aSY" = ( -/obj/structure/table/reinforced, -/obj/item/clothing/head/that{ - throwforce = 1; - throwing = 1 - }, -/turf/open/floor/plasteel/bar, -/area/crew_quarters/bar) -"aSZ" = ( -/obj/effect/landmark/start{ - name = "Bartender" - }, -/turf/open/floor/plasteel/bar, -/area/crew_quarters/bar) -"aTa" = ( -/obj/machinery/requests_console{ - department = "Bar"; - departmentType = 2; - pixel_x = 30; - pixel_y = 0 - }, -/obj/machinery/camera{ - c_tag = "Bar"; - dir = 8; - network = list("SS13") - }, -/obj/structure/table, -/obj/machinery/chem_dispenser/drinks, -/turf/open/floor/plasteel/bar, -/area/crew_quarters/bar) -"aTb" = ( -/obj/machinery/newscaster{ - pixel_y = 32 - }, -/turf/open/floor/wood, -/area/library) -"aTc" = ( -/obj/machinery/door/window/northright{ - base_state = "right"; - dir = 8; - icon_state = "right"; - name = "Library Desk Door"; - req_access_txt = "37" - }, -/turf/open/floor/wood, -/area/library) -"aTd" = ( -/obj/structure/table/wood, -/obj/machinery/computer/libraryconsole/bookmanagement{ - pixel_y = 0 - }, -/obj/machinery/light_switch{ - pixel_y = 28 - }, -/turf/open/floor/wood, -/area/library) -"aTe" = ( -/obj/machinery/light{ - dir = 8 - }, -/turf/open/floor/plasteel/black, -/area/chapel/main) -"aTf" = ( -/obj/structure/chair/stool, -/turf/open/floor/plasteel/chapel, -/area/chapel/main) -"aTg" = ( -/obj/structure/chair/stool, -/turf/open/floor/plasteel/chapel{ - dir = 8 - }, -/area/chapel/main) -"aTh" = ( -/obj/structure/chair/stool, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/chapel, -/area/chapel/main) -"aTi" = ( -/obj/structure/chair/stool, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/effect/landmark/start{ - name = "Assistant" - }, -/turf/open/floor/plasteel/chapel{ - dir = 8 - }, -/area/chapel/main) -"aTj" = ( -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/turf/open/floor/plasteel/black, -/area/chapel/main) -"aTk" = ( -/turf/open/floor/plasteel/red/corner{ - dir = 1 - }, -/area/hallway/secondary/exit) -"aTl" = ( -/obj/machinery/vending/cola, -/obj/machinery/status_display{ - layer = 4; - pixel_x = 0; - pixel_y = 32 - }, -/turf/open/floor/plasteel/escape{ - dir = 9 - }, -/area/hallway/secondary/exit) -"aTm" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/hallway/secondary/exit) -"aTn" = ( -/obj/machinery/door/airlock/external{ - cyclelinkeddir = 4; - name = "Escape Airlock" - }, -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; - icon_state = "space"; - layer = 4; - name = "EXTERNAL AIRLOCK"; - pixel_x = 0; - pixel_y = 32 - }, -/turf/open/floor/plating, -/area/hallway/secondary/exit) -"aTo" = ( -/obj/machinery/door/airlock/external{ - cyclelinkeddir = 8; - name = "Escape Airlock" - }, -/turf/open/floor/plating, -/area/hallway/secondary/exit) -"aTp" = ( -/turf/open/floor/mineral/plastitanium, -/area/shuttle/syndicate) -"aTq" = ( -/turf/closed/wall, -/area/security/vacantoffice{ - name = "Vacant Office A" - }) -"aTr" = ( -/obj/machinery/door/firedoor, -/obj/machinery/status_display{ - density = 0; - layer = 3; - pixel_x = 32; - pixel_y = 0 - }, -/turf/open/floor/plasteel, -/area/hallway/secondary/entry) -"aTs" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/closed/wall, -/area/security/vacantoffice) -"aTt" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall, -/area/security/vacantoffice) -"aTu" = ( -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/turf/open/floor/plating, -/area/maintenance/port) -"aTv" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/turf/open/floor/plating, -/area/maintenance/port) -"aTw" = ( -/obj/structure/closet/wardrobe/green, -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/locker) -"aTx" = ( -/obj/structure/chair/stool{ - pixel_y = 8 - }, -/obj/effect/landmark/start{ - name = "Assistant" - }, -/turf/open/floor/plasteel, -/area/crew_quarters/locker) -"aTy" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/crew_quarters/locker) -"aTz" = ( -/obj/structure/table, -/turf/open/floor/plasteel, -/area/crew_quarters/locker) -"aTA" = ( -/obj/structure/table, -/obj/item/weapon/storage/toolbox/mechanical{ - pixel_x = -2; - pixel_y = -1 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/locker) -"aTB" = ( -/obj/structure/chair/stool{ - pixel_y = 8 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/locker) -"aTC" = ( -/obj/structure/table, -/obj/item/weapon/storage/toolbox/mechanical{ - pixel_x = -2; - pixel_y = -1 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel, -/area/crew_quarters/locker) -"aTD" = ( -/obj/structure/closet/secure_closet/personal, -/obj/machinery/airalarm{ - dir = 8; - icon_state = "alarm0"; - pixel_x = 24 - }, -/obj/machinery/camera{ - c_tag = "Locker Room East"; - dir = 8; - network = list("SS13") - }, -/obj/machinery/light{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/locker) -"aTE" = ( -/obj/structure/table, -/obj/item/weapon/hand_labeler, -/turf/open/floor/plasteel, -/area/storage/art) -"aTF" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/obj/structure/table, -/obj/item/device/camera_film, -/obj/item/device/camera, -/turf/open/floor/plasteel, -/area/storage/art) -"aTG" = ( -/obj/structure/table, -/obj/item/weapon/storage/crayons, -/obj/item/weapon/storage/crayons, -/turf/open/floor/plasteel, -/area/storage/art) -"aTH" = ( -/obj/machinery/portable_atmospherics/canister/air, -/turf/open/floor/plating, -/area/storage/emergency2) -"aTI" = ( -/obj/machinery/space_heater, -/turf/open/floor/plating, -/area/storage/emergency2) -"aTJ" = ( -/obj/machinery/light/small, -/obj/structure/reagent_dispensers/watertank, -/turf/open/floor/plating, -/area/storage/emergency2) -"aTK" = ( -/obj/structure/rack{ - dir = 8; - layer = 2.9 - }, -/obj/item/weapon/tank/internals/emergency_oxygen, -/obj/item/weapon/tank/internals/emergency_oxygen, -/obj/item/clothing/mask/breath, -/obj/item/clothing/mask/breath, -/turf/open/floor/plating, -/area/storage/emergency2) -"aTL" = ( -/obj/structure/table, -/obj/item/weapon/storage/toolbox/emergency, -/turf/open/floor/plasteel, -/area/storage/tools) -"aTM" = ( -/obj/structure/table, -/obj/item/weapon/reagent_containers/food/snacks/mint, -/turf/open/floor/plasteel/cafeteria, -/area/crew_quarters/kitchen) -"aTN" = ( -/obj/structure/table, -/obj/item/weapon/kitchen/rollingpin, -/turf/open/floor/plasteel/cafeteria, -/area/crew_quarters/kitchen) -"aTO" = ( -/obj/structure/table, -/obj/item/weapon/book/manual/chef_recipes, -/turf/open/floor/plasteel/cafeteria, -/area/crew_quarters/kitchen) -"aTP" = ( -/obj/structure/rack, -/obj/item/clothing/gloves/color/fyellow, -/obj/item/clothing/suit/hazardvest, -/obj/item/device/multitool, -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plasteel, -/area/storage/tools) -"aTQ" = ( -/turf/closed/wall, -/area/bridge) -"aTR" = ( -/obj/machinery/computer/prisoner, -/turf/open/floor/plasteel/red/side{ - dir = 10 - }, -/area/bridge) -"aTS" = ( -/obj/machinery/computer/secure_data, -/turf/open/floor/plasteel/red/side{ - dir = 6 - }, -/area/bridge) -"aTT" = ( -/obj/machinery/computer/security, -/turf/open/floor/plasteel/red/side, -/area/bridge) -"aTU" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel, -/area/bridge) -"aTV" = ( -/obj/structure/table/reinforced, -/obj/machinery/recharger, -/turf/open/floor/plasteel, -/area/bridge) -"aTW" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/turf/open/floor/plasteel, -/area/bridge) -"aTX" = ( -/turf/open/floor/plasteel, -/area/bridge) -"aTY" = ( -/turf/open/floor/plasteel/blue/corner{ - dir = 1 - }, -/area/bridge) -"aTZ" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/turf/open/floor/plasteel/blue/corner{ - dir = 4 - }, -/area/bridge) -"aUa" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - on = 1 - }, -/turf/open/floor/plasteel, -/area/bridge) -"aUb" = ( -/obj/machinery/computer/teleporter, -/turf/open/floor/plasteel/brown{ - dir = 10 - }, -/area/bridge) -"aUc" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/storage/firstaid/regular, -/turf/open/floor/plasteel, -/area/bridge) -"aUd" = ( -/obj/machinery/computer/security/mining{ - network = list("MINE","AuxBase") - }, -/turf/open/floor/plasteel/brown{ - dir = 6 - }, -/area/bridge) -"aUe" = ( -/obj/machinery/computer/cargo/request, -/turf/open/floor/plasteel/brown{ - dir = 2 - }, -/area/bridge) -"aUf" = ( -/obj/machinery/airalarm{ - dir = 4; - icon_state = "alarm0"; - pixel_x = -22 - }, -/obj/machinery/camera{ - c_tag = "Bar West"; - dir = 4; - network = list("SS13") - }, -/turf/open/floor/plasteel/bar, -/area/crew_quarters/bar) -"aUg" = ( -/obj/structure/chair, -/turf/open/floor/plasteel/bar, -/area/crew_quarters/bar) -"aUh" = ( -/obj/structure/table/reinforced, -/obj/machinery/door/window/eastleft{ - name = "Hydroponics Desk"; - req_access_txt = "35" - }, -/obj/machinery/door/firedoor, -/turf/open/floor/plasteel/delivery{ - name = "floor" - }, -/area/crew_quarters/kitchen) -"aUi" = ( -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/hydroponics) -"aUj" = ( -/obj/machinery/vending/hydronutrients, -/turf/open/floor/plasteel, -/area/hydroponics) -"aUk" = ( -/obj/machinery/vending/hydroseeds{ - slogan_delay = 700 - }, -/turf/open/floor/plasteel, -/area/hydroponics) -"aUl" = ( -/obj/structure/chair/office/dark{ - dir = 8 - }, -/turf/open/floor/wood, -/area/security/vacantoffice) -"aUm" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/wood, -/area/security/vacantoffice) -"aUn" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 6 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/locker) -"aUo" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/locker) -"aUp" = ( -/obj/structure/table, -/obj/item/clothing/head/soft/grey{ - pixel_x = -2; - pixel_y = 3 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/locker) -"aUq" = ( -/obj/structure/table, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/locker) -"aUr" = ( -/obj/structure/chair/stool{ - pixel_y = 8 - }, -/obj/effect/landmark/start{ - name = "Assistant" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/locker) -"aUs" = ( -/obj/structure/table, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/locker) -"aUt" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/locker) -"aUu" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/crew_quarters/locker) -"aUv" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 10 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/locker) -"aUw" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/obj/machinery/light/small, -/turf/open/floor/plasteel, -/area/storage/tools) -"aUx" = ( -/obj/machinery/door/airlock/maintenance{ - req_access_txt = "12" - }, -/obj/structure/disposalpipe/segment, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"aUy" = ( -/obj/machinery/camera{ - c_tag = "Vacant Office"; - dir = 4; - network = list("SS13") - }, -/turf/open/floor/wood, -/area/security/vacantoffice) -"aUz" = ( -/obj/machinery/hydroponics/constructable, -/obj/machinery/airalarm{ - dir = 8; - icon_state = "alarm0"; - pixel_x = 24 - }, -/turf/open/floor/plasteel/black, -/area/hydroponics) -"aUA" = ( -/obj/structure/table/wood, -/obj/item/device/flashlight/lamp, -/turf/open/floor/wood, -/area/security/vacantoffice) -"aUB" = ( -/obj/structure/bookcase/random/adult, -/turf/open/floor/wood, -/area/library) -"aUC" = ( -/obj/structure/chair/comfy/black, -/obj/effect/landmark/start{ - name = "Assistant" - }, -/turf/open/floor/wood, -/area/library) -"aUD" = ( -/obj/structure/table/wood, -/obj/item/device/flashlight/lamp/green{ - pixel_x = 1; - pixel_y = 5 - }, -/turf/open/floor/wood, -/area/library) -"aUE" = ( -/obj/machinery/libraryscanner, -/turf/open/floor/wood, -/area/library) -"aUF" = ( -/obj/effect/landmark/start{ - name = "Librarian" - }, -/obj/structure/chair/office/dark, -/turf/open/floor/wood, -/area/library) -"aUG" = ( -/obj/machinery/airalarm{ - dir = 4; - icon_state = "alarm0"; - pixel_x = -22 - }, -/turf/open/floor/plasteel/black, -/area/chapel/main) -"aUH" = ( -/obj/structure/chair/stool, -/obj/effect/landmark/start{ - name = "Assistant" - }, -/turf/open/floor/plasteel/chapel{ - dir = 4 - }, -/area/chapel/main) -"aUI" = ( -/obj/structure/chair/stool, -/turf/open/floor/plasteel/chapel{ - dir = 1 - }, -/area/chapel/main) -"aUJ" = ( -/obj/structure/chair/stool, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/chapel{ - dir = 4 - }, -/area/chapel/main) -"aUK" = ( -/obj/structure/chair/stool, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/chapel{ - dir = 1 - }, -/area/chapel/main) -"aUL" = ( -/obj/machinery/computer/arcade, -/turf/open/floor/plasteel/escape{ - dir = 8 - }, -/area/hallway/secondary/exit) -"aUM" = ( -/obj/machinery/camera{ - c_tag = "Arrivals Bay 2"; - dir = 8; - network = list("SS13") - }, -/turf/open/floor/plasteel, -/area/hallway/secondary/entry) -"aUN" = ( -/obj/structure/chair/office/dark{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/wood, -/area/security/vacantoffice) -"aUO" = ( -/turf/open/floor/wood, -/area/security/vacantoffice) -"aUP" = ( -/obj/machinery/airalarm{ - frequency = 1439; - pixel_y = 23 - }, -/turf/open/floor/wood, -/area/security/vacantoffice) -"aUQ" = ( -/obj/structure/table/wood, -/turf/open/floor/wood, -/area/security/vacantoffice) -"aUR" = ( -/obj/structure/table/wood, -/obj/item/weapon/pen/red, -/turf/open/floor/wood, -/area/security/vacantoffice) -"aUS" = ( -/obj/structure/disposalpipe/segment, -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/turf/open/floor/plating, -/area/maintenance/port) -"aUT" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/turf/open/floor/plating, -/area/maintenance/port) -"aUU" = ( -/obj/structure/closet/wardrobe/grey, -/obj/machinery/requests_console{ - department = "Locker Room"; - pixel_x = -32; - pixel_y = 0 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/locker) -"aUV" = ( -/obj/structure/chair/stool{ - pixel_y = 8 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/locker) -"aUW" = ( -/obj/structure/table/wood, -/obj/item/device/flashlight/lamp/green, -/turf/open/floor/wood, -/area/security/vacantoffice) -"aUX" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/locker) -"aUY" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/locker) -"aUZ" = ( -/obj/structure/closet/secure_closet/personal, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 10 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/locker) -"aVa" = ( -/obj/machinery/airalarm{ - dir = 4; - icon_state = "alarm0"; - pixel_x = -22 - }, -/obj/structure/closet/toolcloset, -/turf/open/floor/plasteel, -/area/storage/tools) -"aVb" = ( -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'HIGH VOLTAGE'"; - icon_state = "shock"; - name = "HIGH VOLTAGE"; - pixel_y = 32 - }, -/obj/machinery/door/firedoor, -/turf/open/floor/plasteel/blue/side{ - dir = 5 - }, -/area/hallway/primary/central) -"aVc" = ( -/obj/structure/sign/securearea{ - pixel_x = 32; - pixel_y = 0 - }, -/obj/machinery/door/firedoor, -/obj/machinery/door/poddoor/preopen{ - id = "bridge blast"; - name = "bridge blast door" - }, -/turf/open/floor/plasteel/delivery{ - name = "floor" - }, -/area/bridge) -"aVd" = ( -/obj/structure/grille, -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/bridge) -"aVe" = ( -/obj/machinery/camera{ - c_tag = "Bridge West"; - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 6 - }, -/turf/open/floor/plasteel/red/corner{ - dir = 1 - }, -/area/bridge) -"aVf" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/red/corner{ - dir = 4 - }, -/area/bridge) -"aVg" = ( -/obj/structure/chair{ - dir = 1; - name = "Security Station" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/bridge) -"aVh" = ( -/obj/machinery/power/apc{ - dir = 8; - name = "Fore Primary Hallway APC"; - pixel_x = -24 - }, -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/obj/machinery/camera{ - c_tag = "Fore Primary Hallway"; - dir = 4; - network = list("SS13") - }, -/obj/effect/landmark/event_spawn, -/turf/open/floor/plasteel/red/corner{ - dir = 1 - }, -/area/hallway/primary/fore) -"aVi" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/bridge) -"aVj" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/bridge) -"aVk" = ( -/obj/machinery/holopad, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/bridge) -"aVl" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/bridge) -"aVm" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/bridge) -"aVn" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/bridge) -"aVo" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/bridge) -"aVp" = ( -/obj/item/device/radio/beacon, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/bridge) -"aVq" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/brown/corner{ - dir = 1 - }, -/area/bridge) -"aVr" = ( -/obj/machinery/camera{ - c_tag = "Bridge East"; - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 10 - }, -/turf/open/floor/plasteel/brown/corner{ - dir = 4 - }, -/area/bridge) -"aVs" = ( -/obj/structure/chair{ - dir = 1; - name = "Logistics Station" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/bridge) -"aVt" = ( -/obj/structure/sign/securearea{ - pixel_x = -32; - pixel_y = 0 - }, -/obj/machinery/door/firedoor, -/obj/machinery/door/poddoor/preopen{ - id = "bridge blast"; - name = "bridge blast door" - }, -/turf/open/floor/plasteel/delivery{ - name = "floor" - }, -/area/bridge) -"aVu" = ( -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'HIGH VOLTAGE'"; - icon_state = "shock"; - name = "HIGH VOLTAGE"; - pixel_y = 32 - }, -/obj/machinery/door/firedoor, -/turf/open/floor/plasteel/blue/side{ - dir = 9 - }, -/area/hallway/primary/central) -"aVv" = ( -/obj/machinery/camera{ - c_tag = "Bridge East Entrance"; - dir = 2 - }, -/turf/open/floor/plasteel/blue/side{ - dir = 1 - }, -/area/hallway/primary/central) -"aVw" = ( -/obj/structure/table/wood/poker, -/obj/item/clothing/mask/cigarette/cigar, -/obj/item/toy/cards/deck, -/turf/open/floor/plasteel/bar, -/area/crew_quarters/bar) -"aVx" = ( -/obj/machinery/holopad, -/turf/open/floor/plasteel/bar, -/area/crew_quarters/bar) -"aVy" = ( -/obj/structure/table/reinforced, -/turf/open/floor/plasteel/bar, -/area/crew_quarters/bar) -"aVz" = ( -/turf/open/floor/plasteel/cafeteria, -/area/crew_quarters/kitchen) -"aVA" = ( -/obj/structure/table/reinforced, -/obj/machinery/door/firedoor, -/obj/item/weapon/reagent_containers/food/snacks/pie/cream, -/turf/open/floor/plasteel/cafeteria, -/area/crew_quarters/kitchen) -"aVB" = ( -/obj/structure/table, -/obj/item/weapon/reagent_containers/food/condiment/enzyme{ - layer = 5 - }, -/obj/item/stack/packageWrap, -/turf/open/floor/plasteel/cafeteria, -/area/crew_quarters/kitchen) -"aVC" = ( -/obj/machinery/meter, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0; - tag = "" - }, -/turf/open/floor/plating, -/area/maintenance/port) -"aVD" = ( -/obj/structure/table, -/obj/item/weapon/reagent_containers/food/condiment/saltshaker{ - pixel_x = -3; - pixel_y = 0 - }, -/obj/item/weapon/reagent_containers/food/condiment/peppermill{ - pixel_x = 3 - }, -/turf/open/floor/plasteel/cafeteria, -/area/crew_quarters/kitchen) -"aVE" = ( -/obj/structure/table, -/obj/item/weapon/storage/box/donkpockets{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/reagent_containers/glass/beaker{ - pixel_x = 5 - }, -/turf/open/floor/plasteel/cafeteria, -/area/crew_quarters/kitchen) -"aVF" = ( -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/cafeteria, -/area/crew_quarters/kitchen) -"aVG" = ( -/obj/structure/table, -/turf/open/floor/plasteel/cafeteria, -/area/crew_quarters/kitchen) -"aVH" = ( -/obj/machinery/processor, -/obj/machinery/firealarm{ - dir = 4; - pixel_x = 24 - }, -/turf/open/floor/plasteel/cafeteria, -/area/crew_quarters/kitchen) -"aVI" = ( -/turf/open/floor/plasteel/green/side{ - dir = 8 - }, -/area/hydroponics) -"aVJ" = ( -/obj/machinery/light{ - dir = 8 - }, -/obj/machinery/hydroponics/constructable, -/turf/open/floor/plasteel/black, -/area/hydroponics) -"aVK" = ( -/obj/effect/landmark/start{ - name = "Botanist" - }, -/turf/open/floor/plasteel, -/area/hydroponics) -"aVL" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/sortjunction{ - dir = 2; - icon_state = "pipe-j2s"; - sortType = 16 - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/starboard) -"aVM" = ( -/obj/machinery/hydroponics/constructable, -/obj/machinery/light{ - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/hydroponics) -"aVN" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/starboard) -"aVO" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/airalarm{ - pixel_y = 25 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/starboard) -"aVP" = ( -/obj/structure/table/wood, -/obj/item/weapon/paper, -/turf/open/floor/wood, -/area/library) -"aVQ" = ( -/obj/structure/chair/comfy/black{ - dir = 8 - }, -/turf/open/floor/wood, -/area/library) -"aVR" = ( -/obj/structure/table/wood, -/obj/item/weapon/pen/red, -/obj/item/weapon/pen/blue{ - pixel_x = 5; - pixel_y = 5 - }, -/turf/open/floor/wood, -/area/library) -"aVS" = ( -/obj/structure/table/wood, -/obj/item/device/camera_film, -/obj/item/device/camera_film, -/turf/open/floor/wood, -/area/library) -"aVT" = ( -/obj/structure/table/wood, -/obj/item/weapon/paper_bin{ - pixel_x = 1; - pixel_y = 9 - }, -/turf/open/floor/wood, -/area/library) -"aVU" = ( -/obj/structure/chair/stool, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/chapel{ - dir = 8 - }, -/area/chapel/main) -"aVV" = ( -/obj/machinery/camera{ - c_tag = "Chapel South"; - dir = 8; - network = list("SS13") - }, -/turf/open/floor/plasteel/black, -/area/chapel/main) -"aVW" = ( -/obj/item/device/radio/intercom{ - pixel_x = -25 - }, -/turf/open/floor/plasteel/escape{ - dir = 8 - }, -/area/hallway/secondary/exit) -"aVX" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 6 - }, -/turf/open/floor/plasteel, -/area/hallway/secondary/exit) -"aVY" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/carpet, -/area/library) -"aVZ" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass{ - name = "Library" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/carpet, -/area/library) -"aWa" = ( -/obj/structure/grille, -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; - icon_state = "space"; - layer = 4; - name = "EXTERNAL AIRLOCK"; - pixel_x = 0 - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/hallway/secondary/entry) -"aWb" = ( -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/carpet, -/area/library) -"aWc" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel, -/area/hallway/secondary/entry) -"aWd" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/carpet, -/area/library) -"aWe" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass{ - name = "Chapel" - }, -/turf/open/floor/carpet, -/area/chapel/main) -"aWf" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/wood, -/area/security/vacantoffice) -"aWg" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 5 - }, -/turf/open/floor/carpet, -/area/chapel/main) -"aWh" = ( -/obj/machinery/atmospherics/pipe/manifold4w/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/hallway/secondary/exit) -"aWi" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 8 - }, -/turf/open/floor/wood, -/area/security/vacantoffice) -"aWj" = ( -/obj/structure/grille, -/obj/structure/window{ - icon_state = "window"; - dir = 8 - }, -/obj/structure/window, -/turf/open/floor/plating, -/area/maintenance/port) -"aWk" = ( -/obj/structure/disposalpipe/segment, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/turf/open/floor/plating, -/area/maintenance/port) -"aWl" = ( -/obj/structure/grille, -/obj/structure/window{ - icon_state = "window"; - dir = 1 - }, -/turf/open/floor/plating, -/area/maintenance/port) -"aWm" = ( -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/obj/machinery/light_switch{ - pixel_x = -28; - pixel_y = 0 - }, -/turf/open/floor/wood, -/area/security/vacantoffice) -"aWn" = ( -/obj/structure/closet/wardrobe/black, -/obj/item/clothing/shoes/jackboots, -/turf/open/floor/plasteel, -/area/crew_quarters/locker) -"aWo" = ( -/obj/machinery/camera{ - c_tag = "Locker Room West"; - dir = 1 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/locker) -"aWp" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/crew_quarters/locker) -"aWq" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/locker) -"aWr" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/carpet, -/area/security/vacantoffice) -"aWs" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/carpet, -/area/security/vacantoffice) -"aWt" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/wood, -/area/security/vacantoffice) -"aWu" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 6 - }, -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/turf/open/floor/plating, -/area/maintenance/port) -"aWv" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/port) -"aWw" = ( -/obj/machinery/power/apc{ - dir = 1; - name = "Art Storage"; - pixel_x = 0; - pixel_y = 24 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0; - tag = "" - }, -/turf/open/floor/plating, -/area/storage/art) -"aWx" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0; - tag = "" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/turf/open/floor/plating, -/area/maintenance/port) -"aWy" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall, -/area/crew_quarters/locker/locker_toilet) -"aWz" = ( -/obj/machinery/power/apc{ - dir = 1; - name = "Port Emergency Storage APC"; - pixel_y = 24 - }, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0; - tag = "" - }, -/turf/open/floor/plating, -/area/storage/emergency2) -"aWA" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/floor/plating, -/area/maintenance/port) -"aWB" = ( -/obj/structure/reagent_dispensers/fueltank, -/turf/open/floor/plating, -/area/maintenance/port) -"aWC" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/maintenance/port) -"aWD" = ( -/obj/structure/reagent_dispensers/fueltank, -/turf/open/floor/plasteel, -/area/storage/tools) -"aWE" = ( -/obj/machinery/computer/med_data, -/obj/machinery/newscaster{ - pixel_x = 0; - pixel_y = 32 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/grimy, -/area/security/detectives_office) -"aWF" = ( -/obj/structure/closet/toolcloset, -/turf/open/floor/plasteel, -/area/storage/tools) -"aWG" = ( -/obj/machinery/computer/secure_data, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 10 - }, -/turf/open/floor/plasteel/grimy, -/area/security/detectives_office) -"aWH" = ( -/obj/machinery/door/firedoor, -/turf/open/floor/plasteel/blue/side{ - dir = 4 - }, -/area/hallway/primary/central) -"aWI" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/door/firedoor, -/obj/machinery/door/poddoor/preopen{ - id = "bridge blast"; - name = "bridge blast door" - }, -/turf/open/floor/plasteel/delivery{ - name = "floor" - }, -/area/bridge) -"aWJ" = ( -/obj/structure/cable, -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/machinery/door/airlock/glass_command{ - cyclelinkeddir = 4; - name = "Bridge"; - req_access_txt = "19" - }, -/turf/open/floor/plasteel, -/area/bridge) -"aWK" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/bridge) -"aWL" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/door/airlock/glass_command{ - cyclelinkeddir = 8; - name = "Bridge"; - req_access_txt = "19" - }, -/turf/open/floor/plasteel, -/area/bridge) -"aWM" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/bridge) -"aWN" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 6 - }, -/turf/open/floor/plasteel, -/area/bridge) -"aWO" = ( -/obj/structure/extinguisher_cabinet{ - pixel_x = 5; - pixel_y = -32 - }, -/obj/machinery/light, -/obj/machinery/light_switch{ - pixel_x = -6; - pixel_y = -22 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/blue/side{ - dir = 0 - }, -/area/bridge) -"aWP" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/blue/corner, -/area/bridge) -"aWQ" = ( -/obj/machinery/airalarm{ - dir = 1; - icon_state = "alarm0"; - pixel_y = -22 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/blue/side{ - dir = 0 - }, -/area/bridge) -"aWR" = ( -/obj/structure/fireaxecabinet{ - pixel_y = -32 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/blue/side{ - dir = 0 - }, -/area/bridge) -"aWS" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/blue/side{ - dir = 0 - }, -/area/bridge) -"aWT" = ( -/obj/machinery/requests_console{ - announcementConsole = 1; - department = "Bridge"; - departmentType = 5; - name = "Bridge RC"; - pixel_y = -30 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/blue/side{ - dir = 0 - }, -/area/bridge) -"aWU" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/blue/side{ - dir = 0 - }, -/area/bridge) -"aWV" = ( -/obj/machinery/turretid{ - control_area = "AI Upload Chamber"; - name = "AI Upload turret control"; - pixel_y = -25 - }, -/obj/machinery/camera{ - c_tag = "Bridge Center"; - dir = 1 - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 1 - }, -/turf/open/floor/plasteel/blue/side{ - dir = 0 - }, -/area/bridge) -"aWW" = ( -/obj/machinery/power/apc{ - cell_type = 5000; - dir = 2; - name = "Bridge APC"; - pixel_y = -24 - }, -/obj/structure/cable, -/obj/machinery/light, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/open/floor/plasteel/blue/side{ - dir = 0 - }, -/area/bridge) -"aWX" = ( -/obj/machinery/newscaster{ - pixel_y = -32 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/blue/side{ - dir = 0 - }, -/area/bridge) -"aWY" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/blue/corner{ - dir = 8 - }, -/area/bridge) -"aWZ" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/bridge) -"aXa" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 10 - }, -/turf/open/floor/plasteel, -/area/bridge) -"aXb" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/door/firedoor, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/door/poddoor/preopen{ - id = "bridge blast"; - name = "bridge blast door" - }, -/turf/open/floor/plasteel/delivery{ - name = "floor" - }, -/area/bridge) -"aXc" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/door/airlock/glass_command{ - cyclelinkeddir = 4; - name = "Bridge"; - req_access_txt = "19" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/bridge) -"aXd" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/door/firedoor, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/blue/side{ - dir = 8 - }, -/area/hallway/primary/central) -"aXe" = ( -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/obj/structure/cable, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/machinery/door/airlock/glass_command{ - cyclelinkeddir = 8; - name = "Bridge"; - req_access_txt = "19" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/bridge) -"aXf" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"aXg" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"aXh" = ( -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"aXi" = ( -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/obj/machinery/computer/security/telescreen/entertainment{ - pixel_x = -31 - }, -/turf/open/floor/plasteel/bar, -/area/crew_quarters/bar) -"aXj" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/lighter, -/turf/open/floor/plasteel/bar, -/area/crew_quarters/bar) -"aXk" = ( -/obj/structure/table/reinforced, -/obj/machinery/computer/security/telescreen/entertainment{ - pixel_x = 32 - }, -/obj/item/weapon/book/manual/barman_recipes, -/obj/item/weapon/reagent_containers/glass/rag, -/turf/open/floor/plasteel/bar, -/area/crew_quarters/bar) -"aXl" = ( -/obj/machinery/door/window/southright{ - name = "Bar Door"; - req_access_txt = "0"; - req_one_access_txt = "25;28" - }, -/turf/open/floor/plasteel/bar, -/area/crew_quarters/bar) -"aXm" = ( -/obj/effect/landmark/start{ - name = "Cook" - }, -/turf/open/floor/plasteel/cafeteria, -/area/crew_quarters/kitchen) -"aXn" = ( -/obj/structure/table, -/obj/machinery/reagentgrinder, -/obj/machinery/requests_console{ - department = "Kitchen"; - departmentType = 2; - pixel_x = 30; - pixel_y = 0 - }, -/turf/open/floor/plasteel/cafeteria, -/area/crew_quarters/kitchen) -"aXo" = ( -/turf/open/floor/plasteel/green/side{ - dir = 4 - }, -/area/hydroponics) -"aXp" = ( -/obj/machinery/door/airlock{ - name = "Unisex Restrooms"; - req_access_txt = "0" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/freezer, -/area/crew_quarters/locker/locker_toilet) -"aXq" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/starboard) -"aXr" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/locker) -"aXs" = ( -/obj/machinery/disposal/bin, -/obj/structure/disposalpipe/trunk{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/locker) -"aXt" = ( -/turf/open/floor/plasteel/warning/corner{ - dir = 2 - }, -/area/crew_quarters/locker) -"aXu" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/carpet, -/area/library) -"aXv" = ( -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel, -/area/crew_quarters/locker) -"aXw" = ( -/turf/open/floor/plasteel/warning{ - dir = 2 - }, -/area/crew_quarters/locker) -"aXx" = ( -/obj/structure/closet/secure_closet/personal, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/crew_quarters/locker) -"aXy" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass{ - name = "Chapel" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/carpet, -/area/chapel/main) -"aXz" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/carpet, -/area/chapel/main) -"aXA" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/warning/corner{ - dir = 1 - }, -/area/crew_quarters/locker) -"aXB" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 1 - }, -/turf/open/floor/carpet, -/area/chapel/main) -"aXC" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/hallway/secondary/exit) -"aXD" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/escape{ - dir = 8 - }, -/area/hallway/secondary/exit) -"aXE" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/closed/wall, -/area/maintenance/port) -"aXF" = ( -/obj/effect/landmark/event_spawn, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/fitness) -"aXG" = ( -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/hallway/secondary/exit) -"aXH" = ( -/obj/structure/table, -/obj/machinery/button/door{ - id = "syndieshutters"; - name = "remote shutter control"; - req_access_txt = "150" - }, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/syndicate) -"aXI" = ( -/obj/machinery/door/airlock/external{ - cyclelinkeddir = 4; - id_tag = null; - name = "Port Docking Bay 2"; - req_access_txt = "0" - }, -/turf/open/floor/plating, -/area/hallway/secondary/entry) -"aXJ" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/closed/wall, -/area/maintenance/port) -"aXK" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/closed/wall, -/area/security/detectives_office) -"aXL" = ( -/turf/open/floor/carpet, -/area/security/vacantoffice) -"aXM" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 1 - }, -/obj/machinery/door/airlock/maintenance{ - name = "Cargo Bay Warehouse Maintenance"; - req_access_txt = "31" - }, -/turf/open/floor/plating, -/area/maintenance/port) -"aXN" = ( -/obj/machinery/light{ - dir = 4 - }, -/obj/structure/filingcabinet/chestdrawer, -/turf/open/floor/wood, -/area/security/vacantoffice) -"aXO" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/bar, -/area/crew_quarters/bar) -"aXP" = ( -/obj/machinery/portable_atmospherics/canister/air, -/turf/open/floor/plating, -/area/maintenance/port) -"aXQ" = ( -/turf/closed/wall, -/area/crew_quarters/locker/locker_toilet) -"aXR" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/light{ - dir = 8 - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/hallway/primary/starboard) -"aXS" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 8 - }, -/turf/closed/wall, -/area/hydroponics) -"aXT" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass{ - name = "Library" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/carpet, -/area/library) -"aXU" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/carpet, -/area/library) -"aXV" = ( -/obj/machinery/holopad, -/turf/open/floor/carpet, -/area/library) -"aXW" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 6 - }, -/turf/open/floor/carpet, -/area/chapel/main) -"aXX" = ( -/obj/machinery/door/airlock/engineering{ - name = "Vacant Office A"; - req_access_txt = "32" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/wood, -/area/security/vacantoffice) -"aXY" = ( -/obj/structure/chair/office/dark, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/wood, -/area/security/vacantoffice) -"aXZ" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/carpet, -/area/security/vacantoffice) -"aYa" = ( -/obj/machinery/power/apc{ - dir = 8; - name = "Locker Room Maintenance APC"; - pixel_x = -27; - pixel_y = 2 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/structure/cable{ - icon_state = "0-2"; - pixel_y = 1; - d2 = 2 - }, -/turf/open/floor/plating, -/area/maintenance/port) -"aYb" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/port) -"aYc" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 6 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/closed/wall, -/area/maintenance/port) -"aYd" = ( -/obj/structure/chair/office/dark, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/wood, -/area/security/vacantoffice) -"aYe" = ( -/obj/machinery/light_switch{ - pixel_y = 28 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/freezer, -/area/crew_quarters/locker/locker_toilet) -"aYf" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/port) -"aYg" = ( -/obj/effect/landmark{ - name = "xeno_spawn"; - pixel_x = -1 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/construction) -"aYh" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/light/small{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/turf/open/floor/plating, -/area/maintenance/port) -"aYi" = ( -/obj/structure/closet/secure_closet/detective, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/grimy, -/area/security/detectives_office) -"aYj" = ( -/obj/structure/table/wood, -/obj/item/device/taperecorder, -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/obj/machinery/button/door{ - id = "kanyewest"; - name = "Privacy Shutters"; - pixel_x = 0; - pixel_y = 24 - }, -/turf/open/floor/plasteel/grimy, -/area/security/detectives_office) -"aYk" = ( -/obj/machinery/light, -/turf/open/floor/plasteel/blue/side{ - dir = 0 - }, -/area/hallway/primary/central) -"aYl" = ( -/turf/open/floor/plasteel/blue/corner, -/area/hallway/primary/central) -"aYm" = ( -/obj/machinery/door/firedoor, -/turf/open/floor/plasteel/blue/side{ - dir = 6 - }, -/area/hallway/primary/central) -"aYn" = ( -/obj/machinery/camera{ - c_tag = "Bridge West Entrance"; - dir = 1 - }, -/turf/open/floor/plasteel/blue/side{ - dir = 0 - }, -/area/hallway/primary/central) -"aYo" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/poddoor/preopen{ - id = "bridge blast"; - name = "bridge blast door" - }, -/turf/open/floor/plasteel/delivery{ - name = "floor" - }, -/area/bridge) -"aYp" = ( -/obj/structure/grille, -/obj/structure/cable, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/bridge) -"aYq" = ( -/obj/structure/closet/emcloset, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/blue/side{ - dir = 0 - }, -/area/bridge) -"aYr" = ( -/obj/item/device/radio/intercom{ - name = "Station Intercom (General)"; - pixel_y = -29 - }, -/turf/open/floor/plasteel/blue/side{ - dir = 0 - }, -/area/bridge) -"aYs" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/blue/side{ - dir = 0 - }, -/area/bridge) -"aYt" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 6 - }, -/turf/closed/wall/r_wall, -/area/ai_monitored/turret_protected/ai_upload) -"aYu" = ( -/obj/machinery/firealarm{ - dir = 1; - pixel_y = -24 - }, -/obj/structure/table, -/obj/item/weapon/paper_bin{ - pixel_x = -3; - pixel_y = 7 - }, -/obj/item/weapon/pen, -/turf/open/floor/plasteel/blue/side{ - dir = 6 - }, -/area/bridge) -"aYv" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall/r_wall, -/area/ai_monitored/turret_protected/ai_upload) -"aYw" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/highsecurity{ - icon_state = "door_closed"; - locked = 0; - name = "AI Upload Access"; - req_access_txt = "16" - }, -/turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai_upload) -"aYx" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 9 - }, -/turf/closed/wall/r_wall, -/area/ai_monitored/turret_protected/ai_upload) -"aYy" = ( -/obj/machinery/ai_status_display, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/closed/wall/r_wall, -/area/ai_monitored/turret_protected/ai_upload) -"aYz" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 5 - }, -/turf/closed/wall/r_wall, -/area/ai_monitored/turret_protected/ai_upload) -"aYA" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 10 - }, -/turf/closed/wall/r_wall, -/area/ai_monitored/turret_protected/ai_upload) -"aYB" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/closed/wall/r_wall, -/area/ai_monitored/turret_protected/ai_upload) -"aYC" = ( -/obj/machinery/firealarm{ - dir = 1; - pixel_y = -24 - }, -/obj/structure/filingcabinet/filingcabinet, -/turf/open/floor/plasteel/blue/side{ - dir = 10 - }, -/area/bridge) -"aYD" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/blue/side{ - dir = 0 - }, -/area/bridge) -"aYE" = ( -/obj/machinery/door/firedoor, -/turf/open/floor/plasteel/blue/side{ - dir = 10 - }, -/area/hallway/primary/central) -"aYF" = ( -/obj/machinery/power/apc{ - dir = 2; - name = "Central Hall APC"; - pixel_y = -24 - }, -/obj/structure/cable, -/turf/open/floor/plasteel/blue/side{ - dir = 0 - }, -/area/hallway/primary/central) -"aYG" = ( -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/blue/corner{ - dir = 8 - }, -/area/hallway/primary/central) -"aYH" = ( -/obj/structure/table, -/obj/item/weapon/razor, -/obj/structure/window{ - icon_state = "window"; - dir = 1 - }, -/turf/open/floor/plasteel/barber, -/area/crew_quarters/locker) -"aYI" = ( -/obj/structure/chair/stool/bar, -/obj/effect/landmark/start{ - name = "Assistant" - }, -/turf/open/floor/plasteel/bar, -/area/crew_quarters/bar) -"aYJ" = ( -/obj/machinery/light_switch{ - pixel_y = -25 - }, -/turf/open/floor/plasteel/cafeteria, -/area/crew_quarters/kitchen) -"aYK" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock{ - name = "Kitchen"; - req_access_txt = "28" - }, -/turf/open/floor/plasteel/bar, -/area/crew_quarters/kitchen) -"aYL" = ( -/obj/machinery/light, -/turf/open/floor/plasteel/cafeteria, -/area/crew_quarters/kitchen) -"aYM" = ( -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/obj/machinery/button/door{ - id = "kitchen"; - name = "Kitchen Shutters Control"; - pixel_x = -1; - pixel_y = -24; - req_access_txt = "28" - }, -/turf/open/floor/plasteel/cafeteria, -/area/crew_quarters/kitchen) -"aYN" = ( -/obj/machinery/disposal/bin, -/obj/structure/disposalpipe/trunk{ - dir = 8 - }, -/turf/open/floor/plasteel/cafeteria, -/area/crew_quarters/kitchen) -"aYO" = ( -/obj/item/weapon/reagent_containers/glass/bucket, -/turf/open/floor/plasteel, -/area/hydroponics) -"aYP" = ( -/obj/structure/reagent_dispensers/watertank/high, -/turf/open/floor/plasteel, -/area/hydroponics) -"aYQ" = ( -/obj/machinery/hydroponics/constructable, -/turf/open/floor/plasteel/green/side{ - dir = 1 - }, -/area/hydroponics) -"aYR" = ( -/obj/structure/chair/stool, -/obj/effect/landmark/start{ - name = "Botanist" - }, -/turf/open/floor/plasteel, -/area/hydroponics) -"aYS" = ( -/obj/structure/closet, -/obj/item/clothing/under/suit_jacket/female{ - pixel_x = 3; - pixel_y = 1 - }, -/obj/item/clothing/under/suit_jacket/really_black{ - pixel_x = -2; - pixel_y = 0 - }, -/obj/structure/window{ - icon_state = "window"; - dir = 1 - }, -/turf/open/floor/plasteel/barber, -/area/crew_quarters/locker) -"aYT" = ( -/obj/machinery/camera{ - c_tag = "Hydroponics South"; - dir = 8; - network = list("SS13") - }, -/obj/structure/reagent_dispensers/watertank/high, -/turf/open/floor/plasteel, -/area/hydroponics) -"aYU" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/crew_quarters/locker) -"aYV" = ( -/turf/open/floor/plasteel, -/area/hallway/primary/starboard) -"aYW" = ( -/turf/open/floor/carpet, -/area/library) -"aYX" = ( -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/crew_quarters/locker) -"aYY" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/carpet, -/area/library) -"aYZ" = ( -/obj/structure/table/wood, -/obj/item/weapon/storage/box/evidence, -/obj/item/weapon/hand_labeler{ - pixel_x = 5 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/grimy, -/area/security/detectives_office) -"aZa" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/grimy, -/area/security/detectives_office) -"aZb" = ( -/obj/machinery/camera{ - c_tag = "Bar South"; - dir = 1 - }, -/turf/open/floor/plasteel/bar, -/area/crew_quarters/bar) -"aZc" = ( -/obj/structure/disposalpipe/segment, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/hallway/primary/starboard) -"aZd" = ( -/obj/machinery/firealarm{ - dir = 1; - pixel_y = -24 - }, -/turf/open/floor/wood, -/area/library) -"aZe" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass{ - name = "Chapel" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/carpet, -/area/chapel/main) -"aZf" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/carpet, -/area/chapel/main) -"aZg" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/open/floor/carpet, -/area/chapel/main) -"aZh" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/carpet, -/area/chapel/main) -"aZi" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/hallway/secondary/exit) -"aZj" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/escape{ - dir = 8 - }, -/area/hallway/secondary/exit) -"aZk" = ( -/obj/machinery/holopad, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/hallway/secondary/exit) -"aZl" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/hallway/secondary/exit) -"aZm" = ( -/obj/machinery/camera{ - c_tag = "Escape Arm Airlocks"; - dir = 8; - network = list("SS13") - }, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/hallway/secondary/exit) -"aZn" = ( -/obj/structure/table/wood, -/obj/item/weapon/folder/blue, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/wood, -/area/security/vacantoffice) -"aZo" = ( -/obj/structure/sink{ - dir = 4; - icon_state = "sink"; - pixel_x = 11; - pixel_y = 0 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - external_pressure_bound = 101.325; - on = 1; - pressure_checks = 1 - }, -/turf/open/floor/plasteel/freezer, -/area/crew_quarters/locker/locker_toilet) -"aZp" = ( -/obj/structure/rack{ - dir = 8; - layer = 2.9 - }, -/obj/item/weapon/electronics/apc, -/obj/item/weapon/stock_parts/cell{ - maxcharge = 2000 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/floorgrime, -/area/quartermaster/storage) -"aZq" = ( -/obj/machinery/button/door{ - id = "heads_meeting"; - name = "Security Shutters"; - pixel_x = 0; - pixel_y = 24 - }, -/turf/open/floor/wood, -/area/bridge/meeting_room) -"aZr" = ( -/obj/machinery/light/small{ - dir = 8 - }, -/obj/machinery/atmospherics/components/unary/tank/air{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/port) -"aZs" = ( -/obj/machinery/meter, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 10 - }, -/turf/open/floor/plating, -/area/maintenance/port) -"aZt" = ( -/obj/structure/toilet{ - pixel_y = 8 - }, -/obj/machinery/light/small{ - dir = 8 - }, -/turf/open/floor/plasteel/freezer, -/area/crew_quarters/locker/locker_toilet) -"aZu" = ( -/obj/machinery/photocopier, -/turf/open/floor/wood, -/area/bridge/meeting_room) -"aZv" = ( -/obj/machinery/door/airlock{ - name = "Unit 1" - }, -/turf/open/floor/plasteel/freezer, -/area/crew_quarters/locker/locker_toilet) -"aZw" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/freezer, -/area/crew_quarters/locker/locker_toilet) -"aZx" = ( -/turf/open/floor/plasteel/barber, -/area/crew_quarters/locker) -"aZy" = ( -/obj/machinery/camera{ - c_tag = "Conference Room"; - dir = 2 - }, -/turf/open/floor/wood, -/area/bridge/meeting_room) -"aZz" = ( -/obj/machinery/newscaster{ - pixel_y = 32 - }, -/turf/open/floor/wood, -/area/bridge/meeting_room) -"aZA" = ( -/obj/machinery/portable_atmospherics/scrubber, -/turf/open/floor/plasteel/delivery, -/area/crew_quarters/locker) -"aZB" = ( -/obj/machinery/portable_atmospherics/pump, -/turf/open/floor/plasteel/delivery, -/area/crew_quarters/locker) -"aZC" = ( -/obj/machinery/light_switch{ - pixel_y = 28 - }, -/obj/machinery/light{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/wood, -/area/bridge/meeting_room) -"aZD" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/turf/open/floor/plating, -/area/maintenance/port) -"aZE" = ( -/turf/closed/wall, -/area/quartermaster/storage) -"aZF" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall, -/area/maintenance/port) -"aZG" = ( -/obj/machinery/light_switch{ - pixel_y = 28 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/wood, -/area/crew_quarters/captain) -"aZH" = ( -/obj/machinery/conveyor{ - dir = 4; - id = "packageSort2" - }, -/turf/open/floor/plating, -/area/quartermaster/office) -"aZI" = ( -/obj/structure/rack{ - dir = 8; - layer = 2.9 - }, -/obj/item/stack/sheet/cardboard, -/obj/item/stack/rods{ - amount = 50 - }, -/turf/open/floor/plasteel/floorgrime, -/area/quartermaster/storage) -"aZJ" = ( -/obj/structure/table/wood, -/obj/item/device/camera/detective, -/turf/open/floor/carpet, -/area/security/detectives_office) -"aZK" = ( -/turf/closed/wall, -/area/quartermaster/office) -"aZL" = ( -/obj/machinery/light_switch{ - pixel_x = 27 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/grimy, -/area/security/detectives_office) -"aZM" = ( -/turf/closed/wall/r_wall, -/area/bridge/meeting_room) -"aZN" = ( -/obj/machinery/door/firedoor, -/turf/open/floor/plasteel/blue/corner, -/area/hallway/primary/central) -"aZO" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall, -/area/bridge/meeting_room) -"aZP" = ( -/turf/closed/wall, -/area/bridge/meeting_room) -"aZQ" = ( -/obj/machinery/door/airlock/command{ - name = "Conference Room"; - req_access = null; - req_access_txt = "19" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/wood, -/area/bridge/meeting_room) -"aZR" = ( -/turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/ai_upload) -"aZS" = ( -/obj/machinery/porta_turret/ai{ - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai_upload) -"aZT" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai_upload) -"aZU" = ( -/obj/machinery/porta_turret/ai{ - dir = 8 - }, -/turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai_upload) -"aZV" = ( -/turf/closed/wall/r_wall, -/area/crew_quarters/captain) -"aZW" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall/r_wall, -/area/crew_quarters/captain) -"aZX" = ( -/obj/machinery/door/airlock/command{ - name = "Captain's Office"; - req_access = null; - req_access_txt = "20" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/wood, -/area/crew_quarters/captain) -"aZY" = ( -/obj/machinery/door/firedoor, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/blue/corner{ - dir = 8 - }, -/area/hallway/primary/central) -"aZZ" = ( -/obj/machinery/vending/cigarette{ - pixel_x = 0; - pixel_y = 0 - }, -/turf/open/floor/plasteel/bar, -/area/crew_quarters/bar) -"baa" = ( -/obj/machinery/computer/arcade, -/turf/open/floor/plasteel/bar, -/area/crew_quarters/bar) -"bab" = ( -/obj/machinery/light, -/obj/machinery/firealarm{ - dir = 1; - pixel_y = -24 - }, -/turf/open/floor/plasteel/bar, -/area/crew_quarters/bar) -"bac" = ( -/obj/machinery/newscaster{ - pixel_y = -28 - }, -/turf/open/floor/plasteel/bar, -/area/crew_quarters/bar) -"bad" = ( -/obj/machinery/light, -/turf/open/floor/plasteel/bar, -/area/crew_quarters/bar) -"bae" = ( -/obj/structure/noticeboard{ - pixel_y = -27 - }, -/turf/open/floor/plasteel/bar, -/area/crew_quarters/bar) -"baf" = ( -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 8 - }, -/turf/open/floor/wood, -/area/crew_quarters/captain) -"bag" = ( -/obj/machinery/airalarm{ - dir = 1; - icon_state = "alarm0"; - pixel_y = -22 - }, -/turf/open/floor/plasteel/bar, -/area/crew_quarters/bar) -"bah" = ( -/obj/structure/extinguisher_cabinet{ - pixel_x = 0; - pixel_y = -30 - }, -/turf/open/floor/plasteel/bar, -/area/crew_quarters/bar) -"bai" = ( -/obj/machinery/light/small, -/turf/open/floor/plasteel/bar, -/area/crew_quarters/bar) -"baj" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/storage/fancy/donut_box, -/obj/machinery/door/firedoor, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "kitchen"; - name = "kitchen shutters" - }, -/turf/open/floor/plasteel/cafeteria, -/area/crew_quarters/kitchen) -"bak" = ( -/obj/structure/table/reinforced, -/obj/machinery/door/firedoor, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "kitchen"; - name = "kitchen shutters" - }, -/turf/open/floor/plasteel/cafeteria, -/area/crew_quarters/kitchen) -"bal" = ( -/obj/structure/sink{ - icon_state = "sink"; - dir = 8; - pixel_x = -12; - pixel_y = 2 - }, -/obj/machinery/firealarm{ - dir = 8; - pixel_x = -24 - }, -/turf/open/floor/plasteel, -/area/hydroponics) -"bam" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/hydroponics) -"ban" = ( -/obj/structure/table/reinforced, -/obj/machinery/door/firedoor, -/obj/machinery/door/window/northleft{ - name = "Hydroponics Desk"; - req_access_txt = "35" - }, -/turf/open/floor/plasteel, -/area/hydroponics) -"bao" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/machinery/computer/security/telescreen/entertainment{ - pixel_x = 0; - pixel_y = 32 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/carpet, -/area/crew_quarters/captain) -"bap" = ( -/obj/structure/table/reinforced, -/obj/machinery/door/firedoor, -/obj/machinery/door/window/westright{ - dir = 1; - name = "Hydroponics Desk"; - req_access_txt = "35" - }, -/turf/open/floor/plasteel, -/area/hydroponics) -"baq" = ( -/obj/machinery/ai_status_display{ - pixel_y = 32 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/carpet, -/area/crew_quarters/captain) -"bar" = ( -/obj/structure/chair{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/starboard) -"bas" = ( -/obj/machinery/vending/coffee, -/turf/open/floor/wood, -/area/library) -"bat" = ( -/obj/structure/table/wood, -/obj/item/weapon/pen, -/turf/open/floor/wood, -/area/library) -"bau" = ( -/obj/structure/chair/comfy/black{ - dir = 4 - }, -/obj/machinery/airalarm{ - dir = 1; - icon_state = "alarm0"; - pixel_y = -22 - }, -/turf/open/floor/wood, -/area/library) -"bav" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - external_pressure_bound = 101.325; - on = 1; - pressure_checks = 1 - }, -/turf/open/floor/wood, -/area/library) -"baw" = ( -/obj/structure/sink{ - dir = 4; - icon_state = "sink"; - pixel_x = 11; - pixel_y = 0 - }, -/obj/structure/mirror{ - pixel_x = 28 - }, -/turf/open/floor/plasteel/freezer, -/area/crew_quarters/locker/locker_toilet) -"bax" = ( -/obj/structure/chair/comfy/black{ - dir = 4 - }, -/turf/open/floor/wood, -/area/library) -"bay" = ( -/obj/structure/chair/comfy/black, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/carpet, -/area/bridge/meeting_room) -"baz" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - external_pressure_bound = 101.325; - on = 1; - pressure_checks = 1 - }, -/turf/open/floor/plasteel/black, -/area/chapel/main) -"baA" = ( -/turf/open/floor/carpet{ - icon_state = "carpetsymbol" - }, -/area/chapel/main) -"baB" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/black, -/area/chapel/main) -"baC" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/turf/open/floor/plasteel, -/area/hallway/secondary/exit) -"baD" = ( -/obj/machinery/power/apc{ - dir = 8; - name = "Escape Hallway APC"; - pixel_x = -25 - }, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/turf/open/floor/plasteel/escape{ - dir = 8 - }, -/area/hallway/secondary/exit) -"baE" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/hallway/secondary/exit) -"baF" = ( -/obj/structure/closet/emcloset, -/turf/open/floor/plasteel/warning{ - dir = 9 - }, -/area/hallway/secondary/entry) -"baG" = ( -/obj/structure/extinguisher_cabinet{ - pixel_x = 27; - pixel_y = 0 - }, -/obj/machinery/light{ - icon_state = "tube1"; - dir = 4 - }, -/turf/open/floor/plasteel, -/area/hallway/secondary/entry) -"baH" = ( -/obj/structure/table/wood, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/wood, -/area/security/vacantoffice) -"baI" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/carpet, -/area/bridge/meeting_room) -"baJ" = ( -/obj/item/device/radio/intercom{ - name = "Station Intercom (General)"; - pixel_y = -29 - }, -/turf/open/floor/wood, -/area/security/vacantoffice) -"baK" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/carpet, -/area/bridge/meeting_room) -"baL" = ( -/obj/machinery/atmospherics/components/unary/tank/air{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/port) -"baM" = ( -/obj/structure/disposalpipe/segment, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/machinery/power/apc{ - dir = 4; - name = "Locker Restrooms APC"; - pixel_x = 27; - pixel_y = 2 - }, -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/turf/open/floor/plating, -/area/crew_quarters/locker/locker_toilet) -"baN" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/port) -"baO" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/freezer, -/area/crew_quarters/locker/locker_toilet) -"baP" = ( -/obj/structure/table/wood, -/obj/item/weapon/storage/fancy/donut_box, -/turf/open/floor/carpet, -/area/crew_quarters/captain) -"baQ" = ( -/obj/structure/chair/comfy/brown{ - dir = 4 - }, -/turf/open/floor/carpet, -/area/crew_quarters/captain) -"baR" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 6 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/starboard) -"baS" = ( -/turf/open/floor/plasteel/floorgrime, -/area/quartermaster/storage) -"baT" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/starboard) -"baU" = ( -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/grimy, -/area/security/detectives_office) -"baV" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/security{ - name = "Detective's Office"; - req_access_txt = "4" - }, -/turf/open/floor/plasteel/grimy, -/area/security/detectives_office) -"baW" = ( -/obj/item/weapon/storage/secure/safe{ - pixel_x = -23 - }, -/turf/open/floor/plasteel/grimy, -/area/security/detectives_office) -"baX" = ( -/obj/structure/chair/comfy/brown, -/obj/effect/landmark/start{ - name = "Detective" - }, -/turf/open/floor/carpet, -/area/security/detectives_office) -"baY" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/closet/crate, -/turf/open/floor/plasteel/floorgrime, -/area/quartermaster/storage) -"baZ" = ( -/obj/machinery/status_display{ - layer = 4; - pixel_x = 0; - pixel_y = 32 - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/open/floor/plasteel, -/area/hallway/primary/starboard) -"bba" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/starboard) -"bbb" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/plasteel/blue/corner{ - dir = 1 - }, -/area/hallway/secondary/entry) -"bbc" = ( -/obj/machinery/door/airlock/maintenance{ - req_access_txt = "12" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/port) -"bbd" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/port) -"bbe" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/port) -"bbf" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 10 - }, -/turf/open/floor/plating, -/area/maintenance/port) -"bbg" = ( -/obj/effect/landmark{ - name = "blobstart" - }, -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/maintenance/port) -"bbh" = ( -/obj/machinery/disposal/bin, -/obj/structure/disposalpipe/trunk{ - dir = 8 - }, -/turf/open/floor/wood, -/area/bridge/meeting_room) -"bbi" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/wood, -/area/bridge/meeting_room) -"bbj" = ( -/obj/structure/table, -/obj/item/weapon/aiModule/reset, -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai_upload) -"bbk" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall/r_wall, -/area/ai_monitored/turret_protected/ai_upload) -"bbl" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/effect/landmark/event_spawn, -/turf/open/floor/plasteel, -/area/crew_quarters/sleep) -"bbm" = ( -/turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai_upload) -"bbn" = ( -/obj/structure/table, -/obj/machinery/light{ - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai_upload) -"bbo" = ( -/obj/machinery/disposal/bin, -/obj/structure/disposalpipe/trunk{ - dir = 4 - }, -/turf/open/floor/wood, -/area/crew_quarters/captain) -"bbp" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/closed/wall/r_wall, -/area/ai_monitored/turret_protected/ai_upload) -"bbq" = ( -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/freezer, -/area/crew_quarters/locker/locker_toilet) -"bbr" = ( -/obj/machinery/camera{ - c_tag = "Locker Room South"; - dir = 8; - network = list("SS13") - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/crew_quarters/locker) -"bbs" = ( -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/machinery/light, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/crew_quarters/locker) -"bbt" = ( -/obj/structure/closet/crate, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/floorgrime, -/area/quartermaster/storage) -"bbu" = ( -/obj/machinery/power/apc{ - cell_type = 2500; - dir = 1; - name = "Captain's Office APC"; - pixel_y = 24 - }, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/turf/open/floor/wood, -/area/crew_quarters/captain) -"bbv" = ( -/obj/machinery/status_display{ - pixel_x = 0; - pixel_y = 32 - }, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/turf/open/floor/carpet, -/area/crew_quarters/captain) -"bbw" = ( -/turf/open/floor/wood, -/area/crew_quarters/captain) -"bbx" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass{ - name = "Diner" - }, -/turf/open/floor/plasteel, -/area/crew_quarters/bar) -"bby" = ( -/obj/structure/sign/barsign, -/turf/closed/wall, -/area/crew_quarters/bar) -"bbz" = ( -/turf/open/floor/plasteel/white/corner{ - dir = 1 - }, -/area/hallway/primary/starboard) -"bbA" = ( -/obj/machinery/camera{ - c_tag = "Starboard Primary Hallway 2"; - dir = 2; - network = list("SS13") - }, -/turf/open/floor/plasteel/white/corner{ - dir = 1 - }, -/area/hallway/primary/starboard) -"bbB" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass{ - name = "Hydroponics"; - req_access_txt = "35" - }, -/turf/open/floor/plasteel, -/area/hydroponics) -"bbC" = ( -/obj/structure/chair/comfy/black{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/carpet, -/area/bridge/meeting_room) -"bbD" = ( -/obj/structure/grille, -/obj/structure/window/fulltile, -/turf/open/floor/plating, -/area/library) -"bbE" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/closed/wall, -/area/library) -"bbF" = ( -/obj/structure/grille, -/obj/structure/window/fulltile, -/turf/open/floor/plating, -/area/chapel/main) -"bbG" = ( -/obj/machinery/firealarm{ - dir = 8; - pixel_x = -24 - }, -/turf/open/floor/plasteel/escape{ - dir = 8 - }, -/area/hallway/secondary/exit) -"bbH" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/hallway/secondary/exit) -"bbI" = ( -/obj/machinery/power/apc{ - dir = 8; - name = "Vacant Office A APC"; - pixel_x = -24; - pixel_y = 0 - }, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/turf/open/floor/plating, -/area/security/vacantoffice{ - name = "Vacant Office A" - }) -"bbJ" = ( -/obj/structure/disposalpipe/segment, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/turf/open/floor/plating, -/area/maintenance/port) -"bbK" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/port) -"bbL" = ( -/obj/machinery/door/airlock{ - name = "Unit 2" - }, -/turf/open/floor/plasteel/freezer, -/area/crew_quarters/locker/locker_toilet) -"bbM" = ( -/obj/item/weapon/book/manual/wiki/security_space_law, -/obj/structure/table/wood, -/turf/open/floor/carpet, -/area/bridge/meeting_room) -"bbN" = ( -/obj/machinery/washing_machine, -/obj/machinery/light, -/turf/open/floor/plasteel/barber, -/area/crew_quarters/locker) -"bbO" = ( -/obj/machinery/washing_machine, -/turf/open/floor/plasteel/barber, -/area/crew_quarters/locker) -"bbP" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/floorgrime, -/area/quartermaster/storage) -"bbQ" = ( -/obj/structure/table/wood, -/obj/item/weapon/reagent_containers/food/drinks/bottle/whiskey{ - pixel_x = 3 - }, -/obj/item/weapon/lighter, -/turf/open/floor/carpet, -/area/security/detectives_office) -"bbR" = ( -/turf/open/floor/plasteel, -/area/quartermaster/office) -"bbS" = ( -/obj/structure/closet/crate, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/floorgrime, -/area/quartermaster/storage) -"bbT" = ( -/obj/structure/table/wood, -/obj/item/device/flashlight/lamp/green, -/turf/open/floor/carpet, -/area/security/detectives_office) -"bbU" = ( -/obj/machinery/door/airlock/maintenance{ - name = "Detective Maintenance"; - req_access_txt = "4" - }, -/turf/open/floor/plating, -/area/security/detectives_office) -"bbV" = ( -/obj/machinery/firealarm{ - dir = 8; - pixel_x = -24 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"bbW" = ( -/obj/structure/grille, -/obj/machinery/door/poddoor/preopen{ - id = "heads_meeting"; - layer = 2.9; - name = "privacy shutters" - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/bridge/meeting_room) -"bbX" = ( -/turf/open/floor/wood, -/area/bridge/meeting_room) -"bbY" = ( -/obj/machinery/recharger{ - pixel_y = 4 - }, -/obj/structure/table, -/turf/open/floor/wood, -/area/bridge/meeting_room) -"bbZ" = ( -/obj/structure/table/wood, -/turf/open/floor/carpet, -/area/crew_quarters/captain) -"bca" = ( -/turf/open/floor/carpet, -/area/bridge/meeting_room) -"bcb" = ( -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/starboard) -"bcc" = ( -/obj/machinery/vending/snack, -/turf/open/floor/wood, -/area/bridge/meeting_room) -"bcd" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/wood, -/area/bridge/meeting_room) -"bce" = ( -/obj/structure/table, -/obj/item/weapon/aiModule/supplied/quarantine, -/obj/machinery/camera/motion{ - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai_upload) -"bcf" = ( -/obj/machinery/holopad, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai_upload) -"bcg" = ( -/obj/structure/table, -/obj/item/weapon/aiModule/supplied/freeform, -/obj/structure/sign/kiddieplaque{ - pixel_x = 32 - }, -/obj/machinery/camera/motion{ - dir = 8 - }, -/turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai_upload) -"bch" = ( -/obj/machinery/vending/cigarette, -/turf/open/floor/wood, -/area/crew_quarters/captain) -"bci" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/starboard) -"bcj" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/junction{ - dir = 8; - icon_state = "pipe-j1" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 9 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/starboard) -"bck" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/starboard) -"bcl" = ( -/obj/structure/disposalpipe/segment, -/turf/closed/wall, -/area/maintenance/disposal) -"bcm" = ( -/obj/structure/chair/comfy/brown{ - dir = 8 - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/carpet, -/area/crew_quarters/captain) -"bcn" = ( -/obj/structure/displaycase/captain, -/turf/open/floor/wood, -/area/crew_quarters/captain) -"bco" = ( -/obj/machinery/navbeacon{ - codes_txt = "patrol;next_patrol=Dorm"; - location = "HOP2" - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"bcp" = ( -/obj/structure/sign/directions/evac{ - dir = 4; - icon_state = "direction_evac"; - pixel_x = 32; - pixel_y = 28 - }, -/obj/structure/sign/directions/security{ - dir = 1; - icon_state = "direction_sec"; - pixel_x = 32; - pixel_y = 36 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"bcq" = ( -/obj/machinery/door/firedoor, -/turf/open/floor/plasteel, -/area/hallway/primary/starboard) -"bcr" = ( -/obj/machinery/camera{ - c_tag = "Starboard Primary Hallway"; - dir = 2; - network = list("SS13") - }, -/turf/open/floor/plasteel, -/area/hallway/primary/starboard) -"bcs" = ( -/obj/machinery/firealarm{ - dir = 2; - pixel_y = 24 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/starboard) -"bct" = ( -/obj/effect/landmark{ - name = "xeno_spawn"; - pixel_x = -1 - }, -/turf/open/floor/plasteel/freezer, -/area/crew_quarters/locker/locker_toilet) -"bcu" = ( -/obj/machinery/door/airlock/maintenance{ - req_access_txt = "12" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/port) -"bcv" = ( -/obj/structure/extinguisher_cabinet{ - pixel_x = -5; - pixel_y = 30 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/starboard) -"bcw" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall, -/area/crew_quarters/locker) -"bcx" = ( -/obj/machinery/camera{ - c_tag = "Starboard Primary Hallway 5"; - dir = 2; - network = list("SS13") - }, -/turf/open/floor/plasteel, -/area/hallway/primary/starboard) -"bcy" = ( -/obj/machinery/door/firedoor, -/turf/open/floor/plasteel/white/corner{ - dir = 4 - }, -/area/hallway/secondary/exit) -"bcz" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/hallway/secondary/exit) -"bcA" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/hallway/secondary/exit) -"bcB" = ( -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; - icon_state = "space"; - layer = 4; - name = "EXTERNAL AIRLOCK"; - pixel_x = 32; - pixel_y = 0 - }, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/hallway/secondary/exit) -"bcC" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/plasteel, -/area/hallway/secondary/exit) -"bcD" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/hallway/secondary/entry) -"bcE" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/plasteel/floorgrime, -/area/quartermaster/storage) -"bcF" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 8 - }, -/turf/open/floor/plasteel/floorgrime, -/area/quartermaster/storage) -"bcG" = ( -/obj/structure/table/wood, -/obj/machinery/computer/security/wooden_tv, -/turf/open/floor/carpet, -/area/security/detectives_office) -"bcH" = ( -/obj/structure/table/wood, -/obj/item/weapon/storage/fancy/cigarettes, -/obj/item/clothing/glasses/sunglasses, -/turf/open/floor/carpet, -/area/security/detectives_office) -"bcI" = ( -/obj/structure/closet/emcloset, -/turf/open/floor/plating, -/area/maintenance/port) -"bcJ" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 8 - }, -/obj/structure/closet/crate/freezer, -/turf/open/floor/plasteel/floorgrime, -/area/quartermaster/storage) -"bcK" = ( -/obj/structure/rack{ - dir = 4 - }, -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plating, -/area/maintenance/port) -"bcL" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/structure/disposalpipe/junction{ - icon_state = "pipe-j2"; - dir = 1 - }, -/turf/open/floor/plating, -/area/maintenance/port) -"bcM" = ( -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/port) -"bcN" = ( -/obj/item/weapon/folder/blue, -/obj/structure/table/wood, -/turf/open/floor/carpet, -/area/bridge/meeting_room) -"bcO" = ( -/obj/structure/sink{ - dir = 4; - icon_state = "sink"; - pixel_x = 11; - pixel_y = 0 - }, -/turf/open/floor/plasteel/freezer, -/area/crew_quarters/locker/locker_toilet) -"bcP" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/carpet, -/area/crew_quarters/captain) -"bcQ" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/carpet, -/area/crew_quarters/captain) -"bcR" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/floorgrime, -/area/quartermaster/storage) -"bcS" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/light/small{ - dir = 4 - }, -/turf/open/floor/plasteel/floorgrime, -/area/quartermaster/storage) -"bcT" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/quartermaster/storage) -"bcU" = ( -/obj/item/stack/tile/plasteel, -/turf/open/space, -/area/space/nearstation) -"bcV" = ( -/obj/machinery/airalarm{ - dir = 8; - icon_state = "alarm0"; - pixel_x = 24 - }, -/obj/structure/filingcabinet, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/grimy, -/area/security/detectives_office) -"bcW" = ( -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"bcX" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor/preopen{ - id = "heads_meeting"; - layer = 2.9; - name = "privacy shutters" - }, -/turf/open/floor/plating, -/area/bridge/meeting_room) -"bcY" = ( -/obj/item/weapon/hand_labeler, -/obj/item/device/assembly/timer, -/obj/structure/table, -/turf/open/floor/wood, -/area/bridge/meeting_room) -"bcZ" = ( -/obj/structure/table/wood, -/obj/item/device/radio/intercom{ - dir = 8; - freerange = 1; - name = "Station Intercom (Command)"; - pixel_x = 0 - }, -/turf/open/floor/carpet, -/area/bridge/meeting_room) -"bda" = ( -/obj/structure/chair/comfy/black{ - dir = 4 - }, -/turf/open/floor/carpet, -/area/bridge/meeting_room) -"bdb" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/white/side{ - dir = 2 - }, -/area/hallway/primary/starboard) -"bdc" = ( -/obj/structure/extinguisher_cabinet{ - pixel_x = 0; - pixel_y = -30 - }, -/obj/machinery/light, -/turf/open/floor/plasteel/white/corner{ - dir = 2 - }, -/area/hallway/primary/starboard) -"bdd" = ( -/obj/machinery/vending/cola, -/turf/open/floor/wood, -/area/bridge/meeting_room) -"bde" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 4 - }, -/turf/open/floor/wood, -/area/bridge/meeting_room) -"bdf" = ( -/obj/machinery/airalarm{ - dir = 4; - pixel_x = -23; - pixel_y = 0 - }, -/obj/machinery/porta_turret/ai{ - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai_upload) -"bdg" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/ai_upload) -"bdh" = ( -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/ai_monitored/turret_protected/ai_upload) -"bdi" = ( -/obj/machinery/computer/arcade, -/turf/open/floor/wood, -/area/crew_quarters/captain) -"bdj" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 8 - }, -/turf/open/floor/wood, -/area/crew_quarters/captain) -"bdk" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/wood, -/area/crew_quarters/captain) -"bdl" = ( -/obj/structure/disposalpipe/segment, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/hallway/primary/starboard) -"bdm" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/hallway/primary/starboard) -"bdn" = ( -/obj/machinery/camera{ - c_tag = "Central Hallway East"; - dir = 4; - network = list("SS13") - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/status_display{ - density = 0; - layer = 3; - pixel_x = -32; - pixel_y = 0 - }, -/turf/open/floor/plasteel/blue/corner{ - dir = 8 - }, -/area/hallway/primary/central) -"bdo" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/starboard) -"bdp" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/starboard) -"bdq" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/starboard) -"bdr" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 10 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/starboard) -"bds" = ( -/obj/machinery/camera{ - c_tag = "Starboard Primary Hallway 4"; - dir = 1 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/starboard) -"bdt" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/port) -"bdu" = ( -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 5 - }, -/turf/open/floor/plating, -/area/maintenance/port) -"bdv" = ( -/obj/machinery/navbeacon{ - codes_txt = "patrol;next_patrol=HOP2"; - location = "Stbd" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/starboard) -"bdw" = ( -/obj/machinery/door/firedoor, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/hallway/secondary/exit) -"bdx" = ( -/obj/machinery/door/firedoor, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/starboard) -"bdy" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/hallway/secondary/exit) -"bdz" = ( -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/hallway/secondary/exit) -"bdA" = ( -/obj/machinery/door/airlock/external{ - cyclelinkeddir = 4; - name = "Cargo Escape Airlock" - }, -/turf/open/floor/plating, -/area/hallway/secondary/exit) -"bdB" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/port) -"bdC" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/structure/disposalpipe/sortjunction{ - dir = 1; - icon_state = "pipe-j2s"; - sortType = 1 - }, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 10 - }, -/turf/open/floor/plating, -/area/maintenance/port) -"bdD" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/port) -"bdE" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/plasteel/grimy, -/area/security/detectives_office) -"bdF" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/carpet, -/area/bridge/meeting_room) -"bdG" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/maintenance/port) -"bdH" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/port) -"bdI" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/carpet, -/area/bridge/meeting_room) -"bdJ" = ( -/obj/machinery/door/airlock{ - name = "Unit 3" - }, -/turf/open/floor/plasteel/freezer, -/area/crew_quarters/locker/locker_toilet) -"bdK" = ( -/obj/machinery/holopad, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/carpet, -/area/bridge/meeting_room) -"bdL" = ( -/obj/effect/landmark{ - name = "blobstart" - }, -/obj/item/clothing/suit/ianshirt, -/obj/structure/closet, -/turf/open/floor/plating, -/area/maintenance/port) -"bdM" = ( -/obj/item/latexballon, -/turf/open/floor/plating, -/area/maintenance/port) -"bdN" = ( -/obj/machinery/door/airlock/medical{ - name = "Morgue"; - req_access_txt = "6" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/black, -/area/medical/morgue) -"bdO" = ( -/obj/machinery/door/airlock/maintenance{ - req_access_txt = "12" - }, -/obj/structure/disposalpipe/segment, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"bdP" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall, -/area/assembly/chargebay) -"bdQ" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 5 - }, -/turf/closed/wall, -/area/maintenance/disposal) -"bdR" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/port) -"bdS" = ( -/obj/structure/closet/crate/internals, -/turf/open/floor/plasteel/floorgrime, -/area/quartermaster/storage) -"bdT" = ( -/obj/machinery/power/apc{ - dir = 8; - name = "Disposal APC"; - pixel_x = -24; - pixel_y = 0 - }, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/disposal) -"bdU" = ( -/obj/structure/closet/crate/medical, -/turf/open/floor/plasteel/floorgrime, -/area/quartermaster/storage) -"bdV" = ( -/obj/item/stack/sheet/metal, -/turf/open/floor/plating/airless, -/area/space/nearstation) -"bdW" = ( -/obj/item/clothing/gloves/color/rainbow, -/obj/item/clothing/head/soft/rainbow, -/obj/item/clothing/shoes/sneakers/rainbow, -/obj/item/clothing/under/color/rainbow, -/turf/open/floor/plating, -/area/maintenance/port) -"bdX" = ( -/obj/item/weapon/storage/fancy/donut_box, -/obj/structure/table, -/turf/open/floor/wood, -/area/bridge/meeting_room) -"bdY" = ( -/obj/item/weapon/paper_bin{ - pixel_x = -3; - pixel_y = 7 - }, -/obj/item/weapon/pen, -/obj/structure/table/wood, -/turf/open/floor/carpet, -/area/bridge/meeting_room) -"bdZ" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/maintenance/port) -"bea" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/port) -"beb" = ( -/obj/structure/table, -/obj/item/weapon/aiModule/core/full/asimov, -/obj/item/weapon/aiModule/core/freeformcore, -/obj/machinery/door/window{ - base_state = "right"; - dir = 4; - icon_state = "right"; - name = "Core Modules"; - req_access_txt = "20" - }, -/obj/structure/window/reinforced, -/obj/item/weapon/aiModule/core/full/corp, -/obj/structure/window/reinforced{ - dir = 1 - }, -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/item/weapon/aiModule/core/full/custom, -/turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai_upload) -"bec" = ( -/obj/machinery/light, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai_upload) -"bed" = ( -/obj/machinery/power/apc{ - cell_type = 5000; - dir = 2; - name = "Upload APC"; - pixel_y = -24 - }, -/obj/structure/cable, -/turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/ai_upload) -"bee" = ( -/obj/machinery/computer/upload/ai, -/obj/machinery/flasher{ - id = "AI"; - pixel_x = 0; - pixel_y = -21 - }, -/turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/ai_upload) -"bef" = ( -/obj/machinery/computer/upload/borg, -/obj/item/device/radio/intercom{ - broadcasting = 1; - frequency = 1447; - listening = 0; - name = "Station Intercom (AI Private)"; - pixel_y = -29 - }, -/turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/ai_upload) -"beg" = ( -/obj/structure/table, -/obj/item/weapon/aiModule/supplied/oxygen, -/obj/item/weapon/aiModule/zeroth/oneHuman, -/obj/machinery/door/window{ - base_state = "left"; - dir = 8; - icon_state = "left"; - name = "High-Risk Modules"; - req_access_txt = "20" - }, -/obj/item/weapon/aiModule/reset/purge, -/obj/structure/window/reinforced, -/obj/item/weapon/aiModule/core/full/antimov, -/obj/structure/window/reinforced{ - dir = 1 - }, -/obj/structure/window/reinforced{ - dir = 4 - }, -/obj/item/weapon/aiModule/supplied/protectStation, -/turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai_upload) -"beh" = ( -/obj/machinery/light, -/obj/machinery/atmospherics/components/unary/vent_pump{ - on = 1 - }, -/turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai_upload) -"bei" = ( -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/turf/open/floor/wood, -/area/crew_quarters/captain) -"bej" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/wood, -/area/crew_quarters/captain) -"bek" = ( -/obj/structure/chair, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/wood, -/area/crew_quarters/captain) -"bel" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 6 - }, -/turf/open/floor/plating, -/area/maintenance/port) -"bem" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/carpet, -/area/crew_quarters/captain) -"ben" = ( -/obj/structure/table/wood, -/obj/machinery/camera{ - c_tag = "Captain's Office"; - dir = 8 - }, -/obj/item/weapon/storage/lockbox/medal{ - pixel_y = 0 - }, -/turf/open/floor/wood, -/area/crew_quarters/captain) -"beo" = ( -/obj/machinery/navbeacon{ - codes_txt = "patrol;next_patrol=Stbd"; - location = "HOP" - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"bep" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/light{ - dir = 8 - }, -/turf/open/floor/plasteel/blue/corner{ - dir = 8 - }, -/area/hallway/primary/central) -"beq" = ( -/obj/structure/sign/directions/medical{ - dir = 4; - icon_state = "direction_med"; - pixel_x = 32; - pixel_y = -24 - }, -/obj/structure/sign/directions/science{ - dir = 4; - icon_state = "direction_sci"; - pixel_x = 32; - pixel_y = -32 - }, -/obj/structure/sign/directions/engineering{ - pixel_x = 32; - pixel_y = -40 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"ber" = ( -/obj/structure/extinguisher_cabinet{ - pixel_x = 0; - pixel_y = -30 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/starboard) -"bes" = ( -/obj/machinery/light, -/turf/open/floor/plasteel/blue/corner, -/area/hallway/primary/starboard) -"bet" = ( -/turf/open/floor/plasteel/blue/side{ - dir = 0 - }, -/area/hallway/primary/starboard) -"beu" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/blue/side{ - dir = 0 - }, -/area/hallway/primary/starboard) -"bev" = ( -/obj/machinery/light, -/turf/open/floor/plasteel/blue/corner{ - dir = 8 - }, -/area/hallway/primary/starboard) -"bew" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/port) -"bex" = ( -/obj/machinery/button/door{ - id = "qm_warehouse"; - name = "Warehouse Door Control"; - pixel_x = -1; - pixel_y = -24; - req_access_txt = "31" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 6 - }, -/obj/structure/closet/crate, -/turf/open/floor/plasteel/floorgrime, -/area/quartermaster/storage) -"bey" = ( -/turf/open/floor/plasteel/white/corner{ - dir = 8 - }, -/area/hallway/primary/starboard) -"bez" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/turf/open/floor/plasteel, -/area/hallway/primary/starboard) -"beA" = ( -/obj/machinery/conveyor{ - dir = 4; - id = "packageSort2" - }, -/obj/structure/plasticflaps, -/turf/open/floor/plating, -/area/quartermaster/office) -"beB" = ( -/obj/machinery/camera{ - c_tag = "Starboard Primary Hallway 3"; - dir = 1 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/starboard) -"beC" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/turf/open/floor/plasteel, -/area/hallway/primary/starboard) -"beD" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 9 - }, -/obj/structure/closet/crate, -/turf/open/floor/plasteel/floorgrime, -/area/quartermaster/storage) -"beE" = ( -/obj/machinery/light, -/turf/open/floor/plasteel, -/area/hallway/primary/starboard) -"beF" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 1 - }, -/turf/open/floor/plasteel/brown{ - dir = 1 - }, -/area/quartermaster/office) -"beG" = ( -/obj/machinery/door/firedoor, -/turf/open/floor/plasteel/red/corner{ - dir = 2 - }, -/area/hallway/secondary/exit) -"beH" = ( -/obj/machinery/newscaster{ - pixel_y = -32 - }, -/obj/machinery/light, -/turf/open/floor/plasteel/escape{ - dir = 2 - }, -/area/hallway/secondary/exit) -"beI" = ( -/obj/structure/extinguisher_cabinet{ - pixel_x = 5; - pixel_y = -32 - }, -/turf/open/floor/plasteel/escape{ - dir = 2 - }, -/area/hallway/secondary/exit) -"beJ" = ( -/obj/structure/disposalpipe/segment, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/white/corner{ - dir = 8 - }, -/area/hallway/secondary/exit) -"beK" = ( -/obj/machinery/door/airlock/external{ - cyclelinkeddir = 2; - name = "Port Docking Bay 4"; - req_access_txt = "0" - }, -/turf/open/floor/plating, -/area/hallway/secondary/entry) -"beL" = ( -/obj/machinery/door/airlock/external{ - cyclelinkeddir = 2; - name = "Port Docking Bay 3"; - req_access_txt = "0" - }, -/turf/open/floor/plating, -/area/hallway/secondary/entry) -"beM" = ( -/obj/structure/chair{ - dir = 1 - }, -/turf/open/floor/plasteel/warning, -/area/hallway/secondary/entry) -"beN" = ( -/obj/item/device/radio/intercom{ - name = "Station Intercom (General)"; - pixel_y = -29 - }, -/obj/structure/chair{ - dir = 1 - }, -/turf/open/floor/plasteel/warning, -/area/hallway/secondary/entry) -"beO" = ( -/turf/closed/wall, -/area/maintenance/disposal) -"beP" = ( -/obj/machinery/conveyor{ - dir = 8; - id = "garbage" - }, -/turf/open/floor/plating, -/area/maintenance/disposal) -"beQ" = ( -/obj/structure/disposaloutlet{ - dir = 4 - }, -/obj/structure/disposalpipe/trunk{ - dir = 1 - }, -/turf/open/floor/plating/warnplate{ - dir = 4 - }, -/area/maintenance/disposal) -"beR" = ( -/obj/machinery/conveyor{ - dir = 8; - id = "garbage" - }, -/obj/machinery/recycler, -/obj/structure/sign/securearea{ - name = "\improper STAY CLEAR HEAVY MACHINERY"; - pixel_y = 32 - }, -/turf/open/floor/plating, -/area/maintenance/disposal) -"beS" = ( -/obj/machinery/conveyor{ - dir = 8; - id = "garbage" - }, -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/plating, -/area/maintenance/disposal) -"beT" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/closed/wall, -/area/maintenance/disposal) -"beU" = ( -/obj/machinery/conveyor{ - dir = 6; - id = "garbage"; - verted = -1 - }, -/turf/open/floor/plating, -/area/maintenance/disposal) -"beV" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/quartermaster/office) -"beW" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/window/reinforced{ - dir = 1; - layer = 2.9 - }, -/obj/structure/filingcabinet/filingcabinet, -/obj/machinery/firealarm{ - dir = 4; - pixel_x = 24 - }, -/turf/open/floor/plasteel/brown{ - dir = 1 - }, -/area/quartermaster/office) -"beX" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"beY" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/plasteel/black, -/area/medical/morgue) -"beZ" = ( -/obj/machinery/mineral/stacking_unit_console{ - dir = 2; - machinedir = 8 - }, -/turf/closed/wall, -/area/maintenance/disposal) -"bfa" = ( -/turf/open/floor/plasteel/freezer, -/area/crew_quarters/locker/locker_toilet) -"bfb" = ( -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; - icon_state = "space"; - layer = 4; - name = "EXTERNAL AIRLOCK"; - pixel_x = 0; - pixel_y = 32 - }, -/obj/effect/landmark/event_spawn, -/turf/open/floor/plating/warnplate{ - dir = 4 - }, -/area/chapel/main) -"bfc" = ( -/obj/machinery/power/apc{ - dir = 1; - name = "Locker Room APC"; - pixel_x = 0; - pixel_y = 24 - }, -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 6 - }, -/turf/open/floor/plating, -/area/crew_quarters/locker) -"bfd" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/maintenance/port) -"bfe" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/port) -"bff" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 9 - }, -/obj/structure/disposalpipe/segment, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/turf/open/floor/plating, -/area/maintenance/port) -"bfg" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/item/stack/sheet/cardboard, -/turf/open/floor/plasteel/floorgrime, -/area/quartermaster/storage) -"bfh" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/light/small, -/turf/open/floor/plating, -/area/maintenance/port) -"bfi" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/floorgrime, -/area/quartermaster/storage) -"bfj" = ( -/obj/structure/disposalpipe/trunk, -/obj/structure/disposaloutlet{ - dir = 4 - }, -/turf/open/floor/plating, -/area/quartermaster/office) -"bfk" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/obj/machinery/power/apc{ - dir = 2; - name = "Cargo Bay APC"; - pixel_x = 1; - pixel_y = -24 - }, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/turf/open/floor/plating, -/area/maintenance/port) -"bfl" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/quartermaster/office) -"bfm" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/quartermaster/office) -"bfn" = ( -/obj/machinery/disposal/deliveryChute{ - dir = 8 - }, -/obj/structure/disposalpipe/trunk{ - dir = 1 - }, -/turf/open/floor/plating, -/area/quartermaster/office) -"bfo" = ( -/turf/open/floor/plasteel/brown/corner{ - dir = 8 - }, -/area/hallway/primary/central) -"bfp" = ( -/obj/machinery/requests_console{ - announcementConsole = 1; - department = "Bridge"; - departmentType = 5; - name = "Bridge RC"; - pixel_y = -30 - }, -/obj/machinery/light, -/turf/open/floor/wood, -/area/bridge/meeting_room) -"bfq" = ( -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/port) -"bfr" = ( -/obj/structure/noticeboard{ - dir = 8; - pixel_x = 27; - pixel_y = 0 - }, -/turf/open/floor/wood, -/area/bridge/meeting_room) -"bfs" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 5 - }, -/turf/closed/wall/r_wall, -/area/ai_monitored/turret_protected/ai_upload) -"bft" = ( -/obj/machinery/ai_status_display, -/turf/closed/wall/r_wall, -/area/ai_monitored/turret_protected/ai_upload) -"bfu" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall/r_wall, -/area/ai_monitored/turret_protected/ai_upload) -"bfv" = ( -/turf/closed/wall/r_wall, -/area/ai_monitored/turret_protected/ai_upload) -"bfw" = ( -/obj/machinery/status_display{ - density = 0; - layer = 4 - }, -/turf/closed/wall/r_wall, -/area/ai_monitored/turret_protected/ai_upload) -"bfx" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 8 - }, -/turf/closed/wall/r_wall, -/area/ai_monitored/turret_protected/ai_upload) -"bfy" = ( -/obj/structure/table/wood, -/obj/item/weapon/paper_bin{ - pixel_x = -3; - pixel_y = 7 - }, -/obj/item/weapon/pen, -/turf/open/floor/wood, -/area/crew_quarters/captain) -"bfz" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 9 - }, -/turf/closed/wall/r_wall, -/area/ai_monitored/turret_protected/ai_upload) -"bfA" = ( -/obj/structure/table/wood, -/obj/item/weapon/hand_tele, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/wood, -/area/crew_quarters/captain) -"bfB" = ( -/obj/structure/table/wood, -/obj/item/weapon/folder/blue, -/obj/item/weapon/stamp/captain, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/wood, -/area/crew_quarters/captain) -"bfC" = ( -/obj/structure/table/wood, -/obj/item/device/flashlight/lamp/green, -/turf/open/floor/wood, -/area/crew_quarters/captain) -"bfD" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/wood, -/area/crew_quarters/captain) -"bfE" = ( -/obj/structure/table/wood, -/obj/item/weapon/pinpointer, -/obj/item/weapon/disk/nuclear, -/obj/item/weapon/storage/secure/safe{ - pixel_x = 35; - pixel_y = 5 - }, -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/turf/open/floor/wood, -/area/crew_quarters/captain) -"bfF" = ( -/turf/closed/wall, -/area/medical/chemistry) -"bfG" = ( -/obj/structure/grille, -/obj/structure/window/fulltile, -/turf/open/floor/plating, -/area/medical/medbay) -"bfH" = ( -/obj/structure/sign/bluecross_2, -/turf/closed/wall, -/area/medical/medbay) -"bfI" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/port) -"bfJ" = ( -/obj/machinery/door/firedoor, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"bfK" = ( -/turf/closed/wall, -/area/security/checkpoint/medical) -"bfL" = ( -/turf/closed/wall, -/area/medical/morgue) -"bfM" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/port) -"bfN" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel, -/area/quartermaster/office) -"bfO" = ( -/obj/structure/closet/emcloset, -/turf/open/floor/plasteel, -/area/hallway/primary/starboard) -"bfP" = ( -/obj/machinery/power/apc{ - dir = 2; - name = "Starboard Primary Hallway APC"; - pixel_y = -24 - }, -/obj/structure/cable, -/turf/open/floor/plasteel, -/area/hallway/primary/starboard) -"bfQ" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/quartermaster/office) -"bfR" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/folder/yellow, -/obj/item/weapon/paper_bin{ - pixel_x = 1; - pixel_y = 9 - }, -/obj/item/weapon/pen, -/turf/open/floor/plasteel, -/area/quartermaster/office) -"bfS" = ( -/turf/closed/wall, -/area/storage/emergency) -"bfT" = ( -/turf/closed/wall, -/area/assembly/chargebay) -"bfU" = ( -/turf/open/floor/plasteel/loadingarea{ - dir = 1 - }, -/area/hallway/primary/starboard) -"bfV" = ( -/turf/closed/wall/r_wall, -/area/assembly/robotics) -"bfW" = ( -/turf/open/floor/plasteel/purple/side{ - dir = 10 - }, -/area/hallway/primary/starboard) -"bfX" = ( -/turf/open/floor/plasteel/purple/side{ - dir = 2 - }, -/area/hallway/primary/starboard) -"bfY" = ( -/obj/item/device/radio/intercom{ - name = "Station Intercom (General)"; - pixel_y = -29 - }, -/turf/open/floor/plasteel/purple/side{ - dir = 2 - }, -/area/hallway/primary/starboard) -"bfZ" = ( -/obj/structure/sign/securearea{ - pixel_x = 0; - pixel_y = -32 - }, -/turf/open/floor/plasteel/purple/side{ - dir = 2 - }, -/area/hallway/primary/starboard) -"bga" = ( -/obj/machinery/light, -/turf/open/floor/plasteel/purple/side{ - dir = 2 - }, -/area/hallway/primary/starboard) -"bgb" = ( -/turf/open/floor/plasteel/purple/side{ - dir = 6 - }, -/area/hallway/primary/starboard) -"bgc" = ( -/turf/closed/wall/r_wall, -/area/toxins/lab) -"bgd" = ( -/obj/machinery/airalarm{ - dir = 1; - icon_state = "alarm0"; - pixel_y = -22 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/escape{ - dir = 2 - }, -/area/hallway/secondary/exit) -"bge" = ( -/obj/structure/disposalpipe/segment, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/escape{ - dir = 10 - }, -/area/hallway/secondary/exit) -"bgf" = ( -/obj/structure/closet/emcloset, -/turf/open/floor/plasteel/warning{ - dir = 6 - }, -/area/hallway/secondary/exit) -"bgg" = ( -/obj/structure/closet/emcloset, -/turf/open/floor/plasteel/warning, -/area/hallway/secondary/exit) -"bgh" = ( -/obj/machinery/vending/cigarette, -/turf/open/floor/plasteel/warning{ - dir = 6 - }, -/area/hallway/secondary/entry) -"bgi" = ( -/obj/machinery/camera{ - c_tag = "Arrivals Bay 3 & 4"; - dir = 1 - }, -/turf/open/floor/plasteel/warning, -/area/hallway/secondary/entry) -"bgj" = ( -/obj/machinery/conveyor{ - dir = 4; - id = "garbage" - }, -/turf/open/floor/plating, -/area/maintenance/disposal) -"bgk" = ( -/obj/machinery/conveyor{ - dir = 5; - id = "garbage" - }, -/turf/open/floor/plating, -/area/maintenance/disposal) -"bgl" = ( -/obj/machinery/conveyor{ - dir = 10; - id = "garbage"; - verted = -1 - }, -/turf/open/floor/plating, -/area/maintenance/disposal) -"bgm" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 10 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"bgn" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/brown/corner{ - dir = 8 - }, -/area/hallway/primary/central) -"bgo" = ( -/obj/structure/disposalpipe/segment, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/power/apc{ - dir = 4; - name = "Mech Bay APC"; - pixel_x = 26; - pixel_y = 0 - }, -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/assembly/chargebay) -"bgp" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - on = 1 - }, -/turf/open/floor/plasteel/white, -/area/medical/research{ - name = "Research Division" - }) -"bgq" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/maintenance/port) -"bgr" = ( -/obj/machinery/door/airlock{ - name = "Unit 4" - }, -/turf/open/floor/plasteel/freezer, -/area/crew_quarters/locker/locker_toilet) -"bgs" = ( -/obj/machinery/airalarm{ - dir = 1; - icon_state = "alarm0"; - pixel_y = -22 - }, -/turf/open/floor/plasteel/freezer, -/area/crew_quarters/locker/locker_toilet) -"bgt" = ( -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plating, -/area/maintenance/port) -"bgu" = ( -/obj/machinery/button/door{ - id = "qm_warehouse"; - name = "Warehouse Door Control"; - pixel_x = -1; - pixel_y = 24; - req_access_txt = "31" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/quartermaster/storage) -"bgv" = ( -/obj/structure/disposalpipe/segment, -/turf/closed/wall, -/area/quartermaster/office) -"bgw" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/open/floor/plating, -/area/maintenance/port) -"bgx" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/port) -"bgy" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 9 - }, -/turf/closed/wall, -/area/maintenance/port) -"bgz" = ( -/obj/machinery/disposal/bin, -/obj/structure/disposalpipe/trunk, -/turf/open/floor/plasteel, -/area/quartermaster/office) -"bgA" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/floorgrime, -/area/quartermaster/storage) -"bgB" = ( -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/turf/closed/wall, -/area/quartermaster/storage) -"bgC" = ( -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/turf/closed/wall, -/area/quartermaster/office) -"bgD" = ( -/obj/machinery/conveyor_switch/oneway{ - id = "packageSort2" - }, -/obj/machinery/camera{ - c_tag = "Cargo Delivery Office"; - dir = 4; - network = list("SS13") - }, -/obj/machinery/requests_console{ - department = "Cargo Bay"; - departmentType = 2; - pixel_x = -30; - pixel_y = 0 - }, -/obj/machinery/light{ - dir = 8 - }, -/turf/open/floor/plasteel/brown{ - dir = 1 - }, -/area/quartermaster/office) -"bgE" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 8 - }, -/obj/machinery/airalarm{ - dir = 4; - locked = 0; - pixel_x = -23; - pixel_y = 0 - }, -/turf/open/floor/plasteel, -/area/quartermaster/office) -"bgF" = ( -/obj/structure/table/glass, -/obj/machinery/reagentgrinder, -/obj/structure/extinguisher_cabinet{ - pixel_x = -27; - pixel_y = 0 - }, -/turf/open/floor/plasteel/white, -/area/medical/chemistry) -"bgG" = ( -/obj/machinery/camera{ - c_tag = "Central Hallway West"; - dir = 8 - }, -/turf/open/floor/plasteel/blue/corner, -/area/hallway/primary/central) -"bgH" = ( -/obj/machinery/door/window/eastright{ - dir = 1; - name = "Bridge Delivery"; - req_access_txt = "19" - }, -/turf/open/floor/plasteel/delivery, -/area/bridge/meeting_room) -"bgI" = ( -/obj/machinery/computer/slot_machine, -/turf/open/floor/wood, -/area/bridge/meeting_room) -"bgJ" = ( -/obj/structure/reagent_dispensers/water_cooler, -/turf/open/floor/wood, -/area/bridge/meeting_room) -"bgK" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/wood, -/area/bridge/meeting_room) -"bgL" = ( -/obj/machinery/computer/security/telescreen/entertainment{ - pixel_x = 0; - pixel_y = -32 - }, -/turf/open/floor/wood, -/area/bridge/meeting_room) -"bgM" = ( -/obj/machinery/vending/coffee, -/obj/machinery/light{ - dir = 4 - }, -/turf/open/floor/wood, -/area/bridge/meeting_room) -"bgN" = ( -/turf/open/floor/plasteel/black, -/area/engine/gravity_generator) -"bgO" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall/r_wall, -/area/engine/gravity_generator) -"bgP" = ( -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/white, -/area/medical/chemistry) -"bgQ" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/whiteblue/side{ - dir = 2 - }, -/area/medical/medbay) -"bgR" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 4 - }, -/turf/closed/wall/r_wall, -/area/engine/gravity_generator) -"bgS" = ( -/obj/machinery/requests_console{ - announcementConsole = 1; - department = "Captain's Desk"; - departmentType = 5; - name = "Captain RC"; - pixel_x = -30; - pixel_y = 0 - }, -/obj/structure/filingcabinet, -/turf/open/floor/wood, -/area/crew_quarters/captain) -"bgT" = ( -/obj/machinery/computer/communications, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/wood, -/area/crew_quarters/captain) -"bgU" = ( -/obj/structure/chair/comfy/brown{ - dir = 4 - }, -/obj/effect/landmark/start{ - name = "Captain" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/wood, -/area/crew_quarters/captain) -"bgV" = ( -/obj/structure/table/wood, -/obj/item/weapon/book/manual/wiki/security_space_law, -/obj/item/weapon/coin/plasma, -/turf/open/floor/wood, -/area/crew_quarters/captain) -"bgW" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/holopad, -/turf/open/floor/wood, -/area/crew_quarters/captain) -"bgX" = ( -/obj/structure/table/wood, -/obj/machinery/airalarm{ - dir = 8; - icon_state = "alarm0"; - pixel_x = 24 - }, -/obj/item/device/camera, -/obj/item/weapon/storage/photo_album{ - pixel_y = -10 - }, -/turf/open/floor/wood, -/area/crew_quarters/captain) -"bgY" = ( -/obj/machinery/firealarm{ - dir = 4; - pixel_x = 24 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"bgZ" = ( -/obj/machinery/power/apc{ - dir = 1; - name = "Chemistry APC"; - pixel_y = 24 - }, -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/mob/living/simple_animal/bot/cleanbot{ - name = "C.L.E.A.N." - }, -/turf/open/floor/plasteel/white, -/area/medical/chemistry) -"bha" = ( -/obj/structure/closet/secure_closet/chemical, -/turf/open/floor/plasteel/white, -/area/medical/chemistry) -"bhb" = ( -/obj/machinery/chem_dispenser, -/turf/open/floor/plasteel/whiteyellow/side{ - dir = 1 - }, -/area/medical/chemistry) -"bhc" = ( -/obj/machinery/camera{ - c_tag = "Chemistry"; - dir = 2; - network = list("SS13") - }, -/obj/machinery/firealarm{ - dir = 2; - pixel_y = 24 - }, -/obj/machinery/chem_heater, -/turf/open/floor/plasteel/white, -/area/medical/chemistry) -"bhd" = ( -/obj/machinery/chem_master, -/turf/open/floor/plasteel/whiteyellow/side{ - dir = 5 - }, -/area/medical/chemistry) -"bhe" = ( -/obj/structure/chair, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"bhf" = ( -/obj/structure/table, -/obj/item/weapon/storage/firstaid/regular{ - pixel_x = 0; - pixel_y = 0 - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"bhg" = ( -/turf/open/floor/plasteel/whiteblue/side{ - dir = 2 - }, -/area/medical/medbay) -"bhh" = ( -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"bhi" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/checkpoint/medical) -"bhj" = ( -/obj/machinery/camera{ - c_tag = "Security Post - Medbay"; - dir = 2; - network = list("SS13") - }, -/obj/machinery/requests_console{ - department = "Security"; - departmentType = 5; - pixel_y = 30 - }, -/turf/open/floor/plasteel/red/side{ - dir = 1 - }, -/area/security/checkpoint/medical) -"bhk" = ( -/obj/structure/table, -/obj/item/weapon/paper_bin{ - pixel_x = 1; - pixel_y = 9 - }, -/obj/item/weapon/pen, -/obj/machinery/button/door{ - desc = "A remote control switch for the medbay foyer."; - id = "MedbayFoyer"; - name = "Medbay Doors Control"; - normaldoorcontrol = 1; - pixel_x = 0; - pixel_y = 26; - req_access_txt = "5" - }, -/obj/item/weapon/book/manual/wiki/security_space_law, -/turf/open/floor/plasteel/red/side{ - dir = 9 - }, -/area/security/checkpoint/medical) -"bhl" = ( -/obj/structure/filingcabinet, -/obj/machinery/newscaster{ - pixel_x = 32; - pixel_y = 0 - }, -/turf/open/floor/plasteel/red/side{ - dir = 5 - }, -/area/security/checkpoint/medical) -"bhm" = ( -/turf/open/floor/plasteel/black, -/area/medical/morgue) -"bhn" = ( -/obj/structure/table, -/obj/item/weapon/storage/box/bodybags, -/obj/item/weapon/pen, -/obj/machinery/light/small{ - dir = 8 - }, -/turf/open/floor/plasteel/black, -/area/medical/morgue) -"bho" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/black, -/area/medical/morgue) -"bhp" = ( -/obj/machinery/power/apc{ - dir = 1; - name = "Morgue APC"; - pixel_y = 24 - }, -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/turf/open/floor/plasteel/black, -/area/medical/morgue) -"bhq" = ( -/obj/machinery/light/small{ - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/medical/morgue) -"bhr" = ( -/obj/machinery/door/airlock{ - name = "Starboard Emergency Storage"; - req_access_txt = "0" - }, -/turf/open/floor/plating, -/area/storage/emergency) -"bhs" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel, -/area/security/checkpoint/medical) -"bht" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/research{ - name = "Mech Bay"; - req_access_txt = "29"; - req_one_access_txt = "0" - }, -/turf/open/floor/plasteel, -/area/assembly/chargebay) -"bhu" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/poddoor/shutters{ - id = "Skynet_launch"; - name = "mech bay" - }, -/turf/open/floor/plasteel/delivery, -/area/assembly/chargebay) -"bhv" = ( -/obj/machinery/computer/rdconsole/robotics, -/obj/machinery/airalarm{ - pixel_y = 25 - }, -/turf/open/floor/plasteel/white, -/area/assembly/robotics) -"bhw" = ( -/obj/machinery/r_n_d/circuit_imprinter, -/turf/open/floor/plasteel/white, -/area/assembly/robotics) -"bhx" = ( -/obj/structure/table, -/obj/item/weapon/book/manual/robotics_cyborgs{ - pixel_x = 2; - pixel_y = 5 - }, -/obj/item/weapon/storage/belt/utility, -/obj/item/weapon/reagent_containers/glass/beaker/large, -/obj/machinery/requests_console{ - department = "Robotics"; - departmentType = 2; - name = "Robotics RC"; - pixel_y = 30 - }, -/obj/machinery/light{ - dir = 1 - }, -/turf/open/floor/plasteel/white, -/area/assembly/robotics) -"bhy" = ( -/obj/structure/grille, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "robotics"; - name = "robotics lab shutters" - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/assembly/robotics) -"bhz" = ( -/obj/structure/table/reinforced, -/obj/machinery/door/window/eastright{ - base_state = "left"; - dir = 2; - icon_state = "left"; - name = "Robotics Desk"; - req_access_txt = "29" - }, -/obj/item/weapon/paper_bin{ - pixel_x = -3; - pixel_y = 7 - }, -/obj/item/weapon/pen, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "robotics"; - name = "robotics lab shutters" - }, -/turf/open/floor/plating, -/area/assembly/robotics) -"bhA" = ( -/turf/closed/wall, -/area/medical/research{ - name = "Research Division" - }) -"bhB" = ( -/obj/machinery/door/airlock/research{ - cyclelinkeddir = 2; - name = "Research Division Access"; - req_access_txt = "47" - }, -/turf/open/floor/plasteel/white, -/area/medical/research{ - name = "Research Division" - }) -"bhC" = ( -/obj/structure/grille, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "rnd"; - name = "research lab shutters" - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/toxins/lab) -"bhD" = ( -/obj/structure/table/reinforced, -/obj/machinery/door/window/southright{ - name = "Research and Development Desk"; - req_access_txt = "7" - }, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "rnd"; - name = "research lab shutters" - }, -/turf/open/floor/plating, -/area/toxins/lab) -"bhE" = ( -/obj/structure/table, -/obj/item/stack/sheet/glass{ - amount = 50; - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/stack/sheet/metal{ - amount = 50 - }, -/obj/item/clothing/glasses/welding, -/turf/open/floor/plasteel/white, -/area/toxins/lab) -"bhF" = ( -/obj/structure/table, -/obj/item/weapon/storage/toolbox/mechanical{ - pixel_x = 2; - pixel_y = 3 - }, -/obj/item/weapon/storage/toolbox/mechanical{ - pixel_x = -2; - pixel_y = -1 - }, -/obj/machinery/light{ - dir = 1 - }, -/turf/open/floor/plasteel/white, -/area/toxins/lab) -"bhG" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall, -/area/maintenance/asmaint2) -"bhH" = ( -/obj/machinery/door/airlock/maintenance{ - req_access_txt = "12" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"bhI" = ( -/obj/machinery/conveyor{ - dir = 1; - id = "garbage" - }, -/turf/open/floor/plating, -/area/maintenance/disposal) -"bhJ" = ( -/obj/structure/disposalpipe/trunk{ - dir = 2 - }, -/obj/machinery/disposal/deliveryChute{ - dir = 4 - }, -/obj/structure/window/reinforced, -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/structure/window/reinforced{ - dir = 1 - }, -/obj/machinery/door/window{ - base_state = "right"; - dir = 4; - icon_state = "right"; - layer = 3 - }, -/turf/open/floor/plating/warnplate{ - dir = 4 - }, -/area/maintenance/disposal) -"bhK" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/assembly/chargebay) -"bhL" = ( -/obj/machinery/mineral/stacking_machine{ - input_dir = 1; - stack_amt = 10 - }, -/turf/open/floor/plating, -/area/maintenance/disposal) -"bhM" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 6 - }, -/turf/open/floor/plasteel, -/area/assembly/chargebay) -"bhN" = ( -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/port) -"bhO" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 5 - }, -/turf/open/floor/plating, -/area/maintenance/port) -"bhP" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/white, -/area/assembly/robotics) -"bhQ" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/crew_quarters/locker/locker_toilet) -"bhR" = ( -/obj/structure/grille, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/window{ - icon_state = "window"; - dir = 1 - }, -/obj/structure/window, -/turf/open/floor/plating, -/area/maintenance/port) -"bhS" = ( -/obj/structure/grille, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/window{ - icon_state = "window"; - dir = 8 - }, -/turf/open/floor/plating, -/area/maintenance/port) -"bhT" = ( -/obj/structure/grille, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/window, -/turf/open/floor/plating, -/area/maintenance/port) -"bhU" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/white, -/area/medical/research{ - name = "Research Division" - }) -"bhV" = ( -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/white, -/area/toxins/lab) -"bhW" = ( -/obj/machinery/door/poddoor/shutters{ - id = "qm_warehouse"; - name = "warehouse shutters" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/delivery{ - name = "floor" - }, -/area/quartermaster/storage) -"bhX" = ( -/obj/structure/disposalpipe/wrapsortjunction{ - dir = 1 - }, -/turf/closed/wall, -/area/quartermaster/storage) -"bhY" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall, -/area/quartermaster/storage) -"bhZ" = ( -/obj/machinery/door/window/eastleft{ - dir = 4; - icon_state = "right"; - name = "Mail"; - req_access_txt = "50" - }, -/turf/open/floor/plating, -/area/quartermaster/office) -"bia" = ( -/obj/structure/disposalpipe/trunk{ - dir = 8 - }, -/obj/structure/disposaloutlet{ - dir = 4 - }, -/turf/open/floor/plating, -/area/quartermaster/office) -"bib" = ( -/obj/machinery/disposal/bin, -/obj/structure/disposalpipe/trunk{ - dir = 8 - }, -/obj/item/device/radio/intercom{ - freerange = 0; - frequency = 1459; - name = "Station Intercom (General)"; - pixel_x = 29 - }, -/turf/open/floor/plasteel/white, -/area/toxins/lab) -"bic" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/quartermaster/storage) -"bid" = ( -/obj/structure/extinguisher_cabinet{ - pixel_x = 27; - pixel_y = 0 - }, -/turf/open/floor/plasteel/blue/corner, -/area/hallway/primary/central) -"bie" = ( -/obj/machinery/navbeacon{ - codes_txt = "delivery;dir=1"; - dir = 1; - freq = 1400; - location = "Bridge" - }, -/obj/structure/plasticflaps{ - opacity = 1 - }, -/turf/open/floor/plasteel/bot, -/area/bridge/meeting_room) -"bif" = ( -/obj/machinery/vending/cigarette, -/turf/open/floor/wood, -/area/bridge/meeting_room) -"big" = ( -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/engine/gravity_generator) -"bih" = ( -/turf/open/floor/plasteel/vault{ - dir = 1 - }, -/area/engine/gravity_generator) -"bii" = ( -/turf/open/floor/plasteel/vault{ - dir = 4 - }, -/area/engine/gravity_generator) -"bij" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/closed/wall/r_wall, -/area/engine/gravity_generator) -"bik" = ( -/obj/item/device/radio/intercom{ - dir = 8; - freerange = 1; - name = "Station Intercom (Command)"; - pixel_x = -28 - }, -/obj/machinery/suit_storage_unit/captain, -/turf/open/floor/wood, -/area/crew_quarters/captain) -"bil" = ( -/obj/machinery/computer/card, -/obj/item/weapon/card/id/captains_spare, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/wood, -/area/crew_quarters/captain) -"bim" = ( -/obj/structure/table/wood, -/obj/machinery/recharger, -/obj/item/weapon/melee/chainofcommand, -/turf/open/floor/wood, -/area/crew_quarters/captain) -"bin" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/white, -/area/medical/chemistry) -"bio" = ( -/obj/structure/table/glass, -/obj/item/weapon/reagent_containers/glass/bottle/epinephrine, -/obj/item/stack/sheet/mineral/plasma{ - layer = 2.9 - }, -/obj/item/stack/sheet/mineral/plasma{ - layer = 2.9 - }, -/obj/machinery/requests_console{ - department = "Chemistry"; - departmentType = 2; - pixel_x = -30; - pixel_y = 0 - }, -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/turf/open/floor/plasteel/white, -/area/medical/chemistry) -"bip" = ( -/turf/open/floor/plasteel/white, -/area/medical/chemistry) -"biq" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 5 - }, -/turf/open/floor/plasteel, -/area/quartermaster/storage) -"bir" = ( -/obj/structure/table/reinforced, -/obj/machinery/door/window/eastright{ - dir = 8; - name = "Chemistry Desk"; - req_access_txt = "33" - }, -/obj/machinery/door/firedoor, -/turf/open/floor/plating, -/area/medical/chemistry) -"bis" = ( -/obj/structure/chair/office/light{ - dir = 4 - }, -/obj/effect/landmark/start{ - name = "Chemist" - }, -/turf/open/floor/plasteel/whiteyellow/side{ - dir = 4 - }, -/area/medical/chemistry) -"bit" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - on = 1 - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"biu" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"biv" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/brown/corner{ - dir = 8 - }, -/area/quartermaster/office) -"biw" = ( -/turf/open/floor/plasteel, -/area/security/checkpoint/medical) -"bix" = ( -/obj/structure/chair/office/dark{ - dir = 8 - }, -/obj/effect/landmark/start/depsec/medical, -/turf/open/floor/plasteel/red/side{ - dir = 8 - }, -/area/security/checkpoint/medical) -"biy" = ( -/obj/machinery/computer/secure_data, -/obj/item/device/radio/intercom{ - pixel_x = 25 - }, -/turf/open/floor/plasteel/red/side{ - dir = 4 - }, -/area/security/checkpoint/medical) -"biz" = ( -/obj/structure/bodycontainer/morgue, -/obj/effect/landmark{ - name = "revenantspawn" - }, -/turf/open/floor/plasteel/black, -/area/medical/morgue) -"biA" = ( -/obj/structure/grille, -/obj/structure/window/fulltile, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/quartermaster/storage) -"biB" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/black, -/area/medical/morgue) -"biC" = ( -/turf/open/floor/plating, -/area/storage/emergency) -"biD" = ( -/obj/item/weapon/storage/box/lights/mixed, -/turf/open/floor/plating, -/area/storage/emergency) -"biE" = ( -/obj/machinery/light/small{ - dir = 1 - }, -/obj/item/weapon/extinguisher, -/turf/open/floor/plating, -/area/storage/emergency) -"biF" = ( -/obj/structure/disposalpipe/sortjunction{ - dir = 1; - icon_state = "pipe-j2s"; - sortType = 2 - }, -/obj/structure/noticeboard{ - pixel_y = 32 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/quartermaster/office) -"biG" = ( -/obj/machinery/light_switch{ - pixel_y = 28 - }, -/obj/machinery/firealarm{ - dir = 8; - pixel_x = -24 - }, -/turf/open/floor/plasteel, -/area/assembly/chargebay) -"biH" = ( -/obj/machinery/button/door{ - dir = 2; - id = "Skynet_launch"; - name = "Mech Bay Door Control"; - pixel_x = 6; - pixel_y = 24 - }, -/turf/open/floor/plasteel/warning/corner{ - dir = 8 - }, -/area/assembly/chargebay) -"biI" = ( -/turf/open/floor/plasteel, -/area/assembly/chargebay) -"biJ" = ( -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/assembly/chargebay) -"biK" = ( -/obj/machinery/power/apc{ - dir = 8; - name = "Robotics Lab APC"; - pixel_x = -25 - }, -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/turf/open/floor/plasteel/white, -/area/assembly/robotics) -"biL" = ( -/turf/open/floor/plasteel/white, -/area/assembly/robotics) -"biM" = ( -/obj/structure/chair/office/light{ - dir = 1 - }, -/obj/effect/landmark/start{ - name = "Roboticist" - }, -/turf/open/floor/plasteel/white, -/area/assembly/robotics) -"biN" = ( -/turf/open/floor/plasteel/whitered/side{ - dir = 1 - }, -/area/assembly/robotics) -"biO" = ( -/obj/machinery/camera{ - c_tag = "Robotics Lab"; - dir = 2; - network = list("SS13","RD") - }, -/obj/machinery/button/door{ - dir = 2; - id = "robotics"; - name = "Shutters Control Button"; - pixel_x = 6; - pixel_y = 24; - req_access_txt = "29" - }, -/turf/open/floor/plasteel/whitered/corner{ - dir = 4 - }, -/area/assembly/robotics) -"biP" = ( -/obj/structure/filingcabinet/chestdrawer, -/turf/open/floor/plasteel/whitered/side{ - dir = 1 - }, -/area/assembly/robotics) -"biQ" = ( -/obj/structure/chair/stool, -/turf/open/floor/plasteel/whitered/side{ - dir = 1 - }, -/area/assembly/robotics) -"biR" = ( -/obj/structure/closet/emcloset, -/turf/open/floor/plasteel/warnwhite{ - dir = 9 - }, -/area/medical/research{ - name = "Research Division" - }) -"biS" = ( -/obj/machinery/camera{ - c_tag = "Research Division Access"; - dir = 2; - network = list("SS13") - }, -/obj/structure/sink{ - dir = 4; - icon_state = "sink"; - pixel_x = 11; - pixel_y = 0 - }, -/turf/open/floor/plasteel/warnwhite{ - dir = 5 - }, -/area/medical/research{ - name = "Research Division" - }) -"biT" = ( -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/quartermaster/office) -"biU" = ( -/turf/open/floor/plasteel/whitepurple/side{ - dir = 1 - }, -/area/toxins/lab) -"biV" = ( -/obj/structure/chair/stool, -/obj/effect/landmark/start{ - name = "Scientist" - }, -/turf/open/floor/plasteel/whitepurple/side{ - dir = 1 - }, -/area/toxins/lab) -"biW" = ( -/turf/open/floor/plasteel/white, -/area/toxins/lab) -"biX" = ( -/obj/machinery/camera{ - c_tag = "Research and Development"; - dir = 2; - network = list("SS13","RD"); - pixel_x = 22 - }, -/obj/machinery/button/door{ - dir = 2; - id = "rnd"; - name = "Shutters Control Button"; - pixel_x = -6; - pixel_y = 24; - req_access_txt = "47" - }, -/turf/open/floor/plasteel/whitepurple/corner{ - dir = 1 - }, -/area/toxins/lab) -"biY" = ( -/obj/structure/disposalpipe/segment, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"biZ" = ( -/obj/machinery/computer/shuttle/syndicate, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/syndicate) -"bja" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/maintenance/disposal) -"bjb" = ( -/obj/machinery/conveyor{ - dir = 1; - id = "garbage" - }, -/obj/structure/sign/vacuum{ - pixel_x = -32 - }, -/turf/open/floor/plating, -/area/maintenance/disposal) -"bjc" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plating/warnplate{ - dir = 1 - }, -/area/maintenance/disposal) -"bjd" = ( -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/turf/open/floor/plating/warnplate{ - dir = 1 - }, -/area/maintenance/disposal) -"bje" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/disposal) -"bjf" = ( -/obj/machinery/door/airlock/maintenance{ - name = "Disposal Access"; - req_access_txt = "12" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/disposal) -"bjg" = ( -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/turf/open/floor/plating, -/area/maintenance/port) -"bjh" = ( -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/port) -"bji" = ( -/obj/structure/closet/crate, -/obj/effect/spawner/lootdrop/maintenance, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 5 - }, -/turf/open/floor/plating, -/area/maintenance/port) -"bjj" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/port) -"bjk" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/port) -"bjl" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/port) -"bjm" = ( -/obj/structure/table, -/obj/item/weapon/hand_labeler, -/obj/item/weapon/hand_labeler, -/obj/machinery/requests_console{ - department = "Cargo Bay"; - departmentType = 2; - pixel_x = 0; - pixel_y = 30 - }, -/turf/open/floor/plasteel, -/area/quartermaster/storage) -"bjn" = ( -/obj/structure/table, -/obj/item/clothing/head/soft, -/obj/item/clothing/head/soft, -/turf/open/floor/plasteel, -/area/quartermaster/storage) -"bjo" = ( -/obj/machinery/camera{ - c_tag = "Cargo Bay North" - }, -/obj/structure/closet/wardrobe/cargotech, -/turf/open/floor/plasteel, -/area/quartermaster/storage) -"bjp" = ( -/obj/structure/table, -/obj/machinery/cell_charger, -/obj/item/device/radio/intercom{ - broadcasting = 0; - listening = 1; - name = "Station Intercom (General)"; - pixel_y = 20 - }, -/turf/open/floor/plasteel, -/area/quartermaster/storage) -"bjq" = ( -/obj/structure/extinguisher_cabinet{ - pixel_x = 5; - pixel_y = 30 - }, -/obj/machinery/light{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/quartermaster/storage) -"bjr" = ( -/turf/open/floor/plasteel, -/area/quartermaster/storage) -"bjs" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass_mining{ - name = "Cargo Office"; - req_access_txt = "50" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/quartermaster/office) -"bjt" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/quartermaster/storage) -"bju" = ( -/obj/machinery/photocopier, -/obj/item/device/radio/intercom{ - broadcasting = 0; - listening = 1; - name = "Station Intercom (General)"; - pixel_y = 20 - }, -/turf/open/floor/plasteel, -/area/quartermaster/office) -"bjv" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/quartermaster/office) -"bjw" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 9 - }, -/turf/open/floor/plasteel, -/area/quartermaster/office) -"bjx" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"bjy" = ( -/obj/machinery/camera{ - c_tag = "Gravity Generator Room"; - dir = 8; - network = list("SS13"); - pixel_x = 0; - pixel_y = 0 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/plasteel/black, -/area/engine/gravity_generator) -"bjz" = ( -/turf/closed/wall/r_wall, -/area/maintenance/maintcentral) -"bjA" = ( -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plating, -/area/maintenance/maintcentral) -"bjB" = ( -/turf/open/floor/plating, -/area/maintenance/maintcentral) -"bjC" = ( -/obj/structure/closet/wardrobe/black, -/turf/open/floor/plating, -/area/maintenance/maintcentral) -"bjD" = ( -/obj/machinery/power/apc{ - dir = 1; - name = "Bridge Maintenance APC"; - pixel_y = 24 - }, -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/turf/open/floor/plating, -/area/maintenance/maintcentral) -"bjE" = ( -/obj/machinery/airalarm{ - dir = 4; - icon_state = "alarm0"; - pixel_x = -22 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/wood, -/area/bridge/meeting_room) -"bjF" = ( -/obj/machinery/newscaster/security_unit{ - pixel_x = -32; - pixel_y = 0 - }, -/obj/machinery/keycard_auth{ - pixel_x = 0; - pixel_y = -24 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/wood, -/area/crew_quarters/captain) -"bjG" = ( -/obj/machinery/door/window{ - base_state = "right"; - dir = 4; - icon_state = "right"; - name = "Captain's Desk Door"; - req_access_txt = "20" - }, -/turf/open/floor/wood, -/area/crew_quarters/captain) -"bjH" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/machinery/firealarm{ - dir = 1; - pixel_y = -24 - }, -/turf/open/floor/wood, -/area/crew_quarters/captain) -"bjI" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/turf/open/floor/wood, -/area/crew_quarters/captain) -"bjJ" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/turf/open/floor/wood, -/area/crew_quarters/captain) -"bjK" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/white, -/area/medical/chemistry) -"bjL" = ( -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/white, -/area/medical/chemistry) -"bjM" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/security/checkpoint/medical) -"bjN" = ( -/obj/structure/reagent_dispensers/peppertank{ - pixel_x = 30; - pixel_y = 0 - }, -/turf/open/floor/plasteel/red/side{ - dir = 4 - }, -/area/security/checkpoint/medical) -"bjO" = ( -/obj/machinery/disposal/bin, -/obj/structure/disposalpipe/trunk{ - dir = 8 - }, -/turf/open/floor/plasteel/white, -/area/medical/chemistry) -"bjP" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - on = 1 - }, -/turf/open/floor/plasteel, -/area/assembly/chargebay) -"bjQ" = ( -/obj/machinery/smartfridge/chemistry, -/turf/open/floor/plating, -/area/medical/chemistry) -"bjR" = ( -/obj/structure/table/glass, -/obj/item/weapon/storage/box/beakers{ - pixel_x = 2; - pixel_y = 2 - }, -/obj/item/weapon/storage/box/beakers{ - pixel_x = 2; - pixel_y = 2 - }, -/obj/item/weapon/reagent_containers/glass/beaker/large, -/obj/item/weapon/reagent_containers/glass/beaker/large, -/obj/item/weapon/reagent_containers/dropper, -/obj/item/weapon/reagent_containers/dropper, -/turf/open/floor/plasteel/whiteyellow/side{ - dir = 4 - }, -/area/medical/chemistry) -"bjS" = ( -/obj/machinery/holopad, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"bjT" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/open/floor/plasteel/whiteblue/side{ - dir = 2 - }, -/area/medical/medbay) -"bjU" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 6 - }, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 2 - }, -/area/medical/medbay) -"bjV" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/whiteblue/side{ - dir = 2 - }, -/area/medical/medbay) -"bjW" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/assembly/chargebay) -"bjX" = ( -/obj/structure/table, -/obj/machinery/recharger{ - pixel_y = 4 - }, -/turf/open/floor/plasteel/red/side{ - dir = 8 - }, -/area/security/checkpoint/medical) -"bjY" = ( -/obj/machinery/airalarm{ - dir = 8; - icon_state = "alarm0"; - pixel_x = 24 - }, -/obj/machinery/light{ - dir = 4 - }, -/turf/open/floor/plasteel/red/side{ - dir = 4 - }, -/area/security/checkpoint/medical) -"bjZ" = ( -/obj/structure/closet/firecloset, -/turf/open/floor/plasteel/warnwhite{ - dir = 10 - }, -/area/medical/research{ - name = "Research Division" - }) -"bka" = ( -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/warnwhite{ - dir = 8 - }, -/area/toxins/lab) -"bkb" = ( -/obj/machinery/camera{ - c_tag = "Medbay Morgue"; - dir = 8; - network = list("SS13"); - pixel_x = 0; - pixel_y = 0 - }, -/obj/machinery/airalarm{ - dir = 8; - icon_state = "alarm0"; - pixel_x = 24 - }, -/turf/open/floor/plasteel/black, -/area/medical/morgue) -"bkc" = ( -/obj/machinery/space_heater, -/turf/open/floor/plating, -/area/storage/emergency) -"bkd" = ( -/obj/machinery/portable_atmospherics/canister/air, -/turf/open/floor/plating, -/area/storage/emergency) -"bke" = ( -/obj/structure/rack{ - dir = 8; - layer = 2.9 - }, -/obj/item/weapon/tank/internals/emergency_oxygen, -/obj/item/weapon/tank/internals/emergency_oxygen, -/obj/item/clothing/mask/breath, -/obj/item/clothing/mask/breath, -/turf/open/floor/plating, -/area/storage/emergency) -"bkf" = ( -/obj/structure/reagent_dispensers/watertank, -/turf/open/floor/plating, -/area/storage/emergency) -"bkg" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/turf/open/floor/bluegrid, -/area/assembly/chargebay) -"bkh" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/floor/bluegrid, -/area/assembly/chargebay) -"bki" = ( -/obj/structure/table/glass, -/obj/item/weapon/reagent_containers/glass/beaker/large{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/weapon/reagent_containers/glass/beaker{ - pixel_x = 8; - pixel_y = 2 - }, -/obj/item/weapon/reagent_containers/dropper, -/obj/machinery/airalarm{ - dir = 8; - icon_state = "alarm0"; - pixel_x = 24 - }, -/turf/open/floor/plasteel/white, -/area/toxins/lab) -"bkj" = ( -/obj/structure/closet/emcloset, -/obj/machinery/airalarm{ - dir = 2; - pixel_y = 24 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/quartermaster/storage) -"bkk" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/assembly/robotics) -"bkl" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass_research{ - name = "Robotics Lab"; - req_access_txt = "29" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/assembly/robotics) -"bkm" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/assembly/robotics) -"bkn" = ( -/obj/machinery/light{ - dir = 1 - }, -/obj/machinery/firealarm{ - pixel_y = 27 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/quartermaster/storage) -"bko" = ( -/obj/machinery/firealarm{ - dir = 4; - pixel_x = 24 - }, -/obj/structure/rack{ - dir = 8; - layer = 2.9 - }, -/obj/item/weapon/storage/toolbox/electrical{ - pixel_x = 1; - pixel_y = 6 - }, -/obj/item/weapon/storage/toolbox/mechanical{ - pixel_x = -2; - pixel_y = -1 - }, -/obj/item/clothing/head/welding{ - pixel_x = -3; - pixel_y = 5 - }, -/obj/item/clothing/glasses/welding, -/turf/open/floor/plasteel/white, -/area/assembly/robotics) -"bkp" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/quartermaster/storage) -"bkq" = ( -/obj/structure/closet/firecloset, -/obj/machinery/light{ - dir = 8 - }, -/turf/open/floor/plasteel/warnwhite{ - dir = 8 - }, -/area/medical/research{ - name = "Research Division" - }) -"bkr" = ( -/obj/machinery/shower{ - dir = 8 - }, -/obj/structure/sign/securearea{ - pixel_x = 32; - pixel_y = 0 - }, -/turf/open/floor/plasteel/warnwhite{ - dir = 4 - }, -/area/medical/research{ - name = "Research Division" - }) -"bks" = ( -/obj/machinery/requests_console{ - department = "Science"; - departmentType = 2; - name = "Science Requests Console"; - pixel_x = -30; - pixel_y = 0 - }, -/turf/open/floor/plasteel/white, -/area/toxins/lab) -"bkt" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/plasteel, -/area/quartermaster/storage) -"bku" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 5 - }, -/turf/open/floor/plasteel, -/area/quartermaster/storage) -"bkv" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/toxins/lab) -"bkw" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/quartermaster/office) -"bkx" = ( -/obj/machinery/status_display{ - density = 0; - pixel_y = 2; - supply_display = 1 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/closed/wall, -/area/quartermaster/office) -"bky" = ( -/turf/closed/wall, -/area/maintenance/asmaint2) -"bkz" = ( -/obj/machinery/conveyor{ - dir = 1; - id = "garbage"; - layer = 2.5 - }, -/obj/machinery/door/poddoor/preopen{ - id = "Disposal Exit"; - layer = 3; - name = "disposal exit vent" - }, -/turf/open/floor/plating, -/area/maintenance/disposal) -"bkA" = ( -/obj/effect/landmark/event_spawn, -/turf/open/floor/plasteel, -/area/ai_monitored/security/armory) -"bkB" = ( -/obj/machinery/button/door{ - id = "Disposal Exit"; - name = "Disposal Vent Control"; - pixel_x = -25; - pixel_y = 4; - req_access_txt = "12" - }, -/obj/machinery/button/massdriver{ - id = "trash"; - pixel_x = -26; - pixel_y = -6 - }, -/obj/structure/chair/stool, -/turf/open/floor/plating, -/area/maintenance/disposal) -"bkC" = ( -/obj/effect/decal/cleanable/oil, -/obj/machinery/light_switch{ - pixel_x = 25; - pixel_y = 0 - }, -/turf/open/floor/plating, -/area/maintenance/disposal) -"bkD" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/maintenance/port) -"bkE" = ( -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'KEEP CLEAR OF DOCKING AREA'."; - name = "KEEP CLEAR: DOCKING AREA"; - pixel_y = 0 - }, -/turf/closed/wall/r_wall, -/area/maintenance/port) -"bkF" = ( -/turf/closed/wall/r_wall, -/area/maintenance/port) -"bkG" = ( -/obj/machinery/door/airlock/maintenance{ - name = "Cargo Bay Maintenance"; - req_access_txt = "31" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/quartermaster/storage) -"bkH" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 9 - }, -/turf/open/floor/plating, -/area/quartermaster/office) -"bkI" = ( -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/turf/open/floor/plasteel/black, -/area/engine/gravity_generator) -"bkJ" = ( -/obj/structure/grille, -/obj/structure/window/fulltile, -/turf/open/floor/plating, -/area/quartermaster/storage) -"bkK" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/white, -/area/medical/chemistry) -"bkL" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/chem_heater, -/turf/open/floor/plasteel/white, -/area/medical/chemistry) -"bkM" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/quartermaster/office) -"bkN" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/quartermaster/office) -"bkO" = ( -/obj/machinery/light_switch{ - pixel_x = 28; - pixel_y = 0 - }, -/obj/item/weapon/screwdriver{ - pixel_y = 10 - }, -/obj/item/device/radio/off, -/obj/machinery/atmospherics/components/unary/vent_pump{ - on = 1 - }, -/turf/open/floor/plasteel/red/side{ - dir = 6 - }, -/area/security/checkpoint/medical) -"bkP" = ( -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 6 - }, -/turf/open/floor/plasteel/black, -/area/medical/morgue) -"bkQ" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/machinery/light/small, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/open/floor/plasteel/black, -/area/medical/morgue) -"bkR" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/machinery/light_switch{ - pixel_y = -25 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/medical/morgue) -"bkS" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/brown/corner{ - dir = 8 - }, -/area/hallway/primary/central) -"bkT" = ( -/obj/machinery/door/airlock/maintenance{ - req_access_txt = "12" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/turf/open/floor/plating, -/area/maintenance/maintcentral) -"bkU" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/black, -/area/medical/morgue) -"bkV" = ( -/obj/structure/disposalpipe/segment, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 5 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint) -"bkW" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/turf/open/floor/plating, -/area/maintenance/maintcentral) -"bkX" = ( -/obj/machinery/power/apc{ - dir = 4; - name = "Conference Room APC"; - pixel_x = 24; - pixel_y = 0 - }, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/turf/open/floor/plating, -/area/bridge/meeting_room) -"bkY" = ( -/obj/effect/landmark{ - name = "blobstart" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/floor/plating, -/area/maintenance/maintcentral) -"bkZ" = ( -/obj/machinery/gravity_generator/main/station, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/engine/gravity_generator) -"bla" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/medical/morgue) -"blb" = ( -/obj/machinery/door/airlock/command{ - name = "Captain's Quarters"; - req_access = null; - req_access_txt = "20" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/carpet, -/area/crew_quarters/captain) -"blc" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/closed/wall/r_wall, -/area/crew_quarters/captain) -"bld" = ( -/obj/machinery/door/airlock/maintenance{ - name = "Captain's Office Maintenance"; - req_access_txt = "20" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plating, -/area/crew_quarters/captain) -"ble" = ( -/obj/structure/disposalpipe/segment, -/obj/structure/extinguisher_cabinet{ - pixel_x = -27; - pixel_y = 1 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"blf" = ( -/obj/structure/table/glass, -/obj/item/weapon/storage/box/syringes, -/obj/item/clothing/glasses/science{ - pixel_x = 2; - pixel_y = 4 - }, -/obj/item/clothing/glasses/science, -/obj/item/device/radio/intercom{ - dir = 8; - name = "Station Intercom (General)"; - pixel_x = -28 - }, -/turf/open/floor/plasteel/white, -/area/medical/chemistry) -"blg" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/door/airlock/maintenance{ - name = "Morgue Maintenance"; - req_access_txt = "6" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/medical/morgue) -"blh" = ( -/obj/structure/table/reinforced, -/obj/machinery/door/window/eastright{ - base_state = "left"; - dir = 8; - icon_state = "left"; - name = "Chemistry Desk"; - req_access_txt = "33" - }, -/obj/machinery/door/firedoor, -/turf/open/floor/plating, -/area/medical/chemistry) -"bli" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"blj" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/paper_bin{ - pixel_x = 1; - pixel_y = 9 - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"blk" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/whiteblue/side{ - dir = 4 - }, -/area/medical/medbay) -"bll" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/folder/white, -/obj/item/weapon/pen, -/obj/item/weapon/reagent_containers/glass/bottle/epinephrine, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"blm" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/reagent_containers/food/drinks/britcup{ - desc = "Kingston's personal cup." - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"bln" = ( -/obj/structure/table/reinforced, -/obj/machinery/camera{ - c_tag = "Medbay Foyer"; - dir = 8; - network = list("SS13"); - pixel_x = 0; - pixel_y = 0 - }, -/obj/machinery/cell_charger, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"blo" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/machinery/power/apc{ - dir = 1; - name = "Starboard Emergency Storage APC"; - pixel_y = 24 - }, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/storage/emergency) -"blp" = ( -/obj/machinery/power/apc{ - dir = 8; - name = "Medbay Security APC"; - pixel_x = -25 - }, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/turf/open/floor/plasteel/red/side{ - dir = 8 - }, -/area/security/checkpoint/medical) -"blq" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/structure/disposalpipe/sortjunction{ - sortType = 9 - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"blr" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/medical/morgue) -"bls" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel, -/area/assembly/chargebay) -"blt" = ( -/obj/machinery/holopad, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/assembly/chargebay) -"blu" = ( -/obj/machinery/mech_bay_recharge_port, -/obj/structure/cable, -/turf/open/floor/plating, -/area/assembly/chargebay) -"blv" = ( -/obj/machinery/computer/mech_bay_power_console, -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/turf/open/floor/bluegrid, -/area/assembly/chargebay) -"blw" = ( -/turf/open/floor/mech_bay_recharge_floor, -/area/assembly/chargebay) -"blx" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/assembly/chargebay) -"bly" = ( -/obj/structure/table, -/obj/item/stack/sheet/plasteel{ - amount = 10 - }, -/obj/item/stack/cable_coil, -/obj/item/device/assembly/flash/handheld, -/obj/item/device/assembly/flash/handheld, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/assembly/robotics) -"blz" = ( -/obj/structure/table, -/obj/item/stack/sheet/glass{ - amount = 20; - pixel_x = -3; - pixel_y = 6 - }, -/obj/item/stack/sheet/metal{ - amount = 50 - }, -/obj/item/stack/sheet/metal{ - amount = 50 - }, -/obj/item/stack/sheet/metal{ - amount = 50 - }, -/obj/item/stack/sheet/metal{ - amount = 50 - }, -/obj/item/stack/sheet/metal{ - amount = 50 - }, -/obj/item/stack/sheet/metal{ - amount = 50 - }, -/obj/item/device/multitool{ - pixel_x = 3 - }, -/obj/item/device/multitool{ - pixel_x = 3 - }, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/assembly/robotics) -"blA" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/assembly/robotics) -"blB" = ( -/obj/machinery/mecha_part_fabricator, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/assembly/robotics) -"blC" = ( -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/assembly/robotics) -"blD" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/assembly/robotics) -"blE" = ( -/obj/machinery/ai_status_display{ - pixel_x = 32; - pixel_y = 0 - }, -/obj/structure/table, -/obj/item/device/assembly/flash/handheld, -/obj/item/device/assembly/flash/handheld, -/obj/item/device/assembly/flash/handheld, -/obj/item/device/assembly/flash/handheld, -/obj/item/device/assembly/flash/handheld, -/turf/open/floor/plasteel/white, -/area/assembly/robotics) -"blF" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/bot, -/area/assembly/robotics) -"blG" = ( -/obj/structure/chair/stool, -/obj/effect/landmark/start{ - name = "Roboticist" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/assembly/robotics) -"blH" = ( -/obj/structure/sink{ - dir = 4; - icon_state = "sink"; - pixel_x = 11; - pixel_y = 0 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/warnwhite{ - dir = 6 - }, -/area/medical/research{ - name = "Research Division" - }) -"blI" = ( -/obj/machinery/r_n_d/destructive_analyzer, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/toxins/lab) -"blJ" = ( -/obj/machinery/r_n_d/protolathe, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/toxins/lab) -"blK" = ( -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/toxins/lab) -"blL" = ( -/obj/machinery/holopad, -/turf/open/floor/plasteel/white, -/area/toxins/lab) -"blM" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/plasteel/warnwhite{ - dir = 8 - }, -/area/assembly/robotics) -"blN" = ( -/obj/machinery/holopad, -/turf/open/floor/plasteel/white, -/area/assembly/robotics) -"blO" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"blP" = ( -/obj/machinery/door/airlock/external{ - cyclelinkeddir = 4; - req_access_txt = "13" - }, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"blQ" = ( -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"blR" = ( -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; - icon_state = "space"; - layer = 4; - name = "EXTERNAL AIRLOCK"; - pixel_x = 0; - pixel_y = 32 - }, -/obj/item/weapon/cigbutt, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"blS" = ( -/obj/machinery/light/small{ - dir = 8 - }, -/obj/machinery/mass_driver{ - id = "trash" - }, -/turf/open/floor/plating/warnplate{ - dir = 1 - }, -/area/maintenance/disposal) -"blT" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/ai_monitored/security/armory) -"blU" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/wood, -/area/crew_quarters/sleep) -"blV" = ( -/obj/machinery/light/small, -/turf/open/floor/plating, -/area/maintenance/disposal) -"blW" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/quartermaster/storage) -"blX" = ( -/obj/machinery/door/airlock/research{ - cyclelinkeddir = 1; - name = "Research Division Access"; - req_access_txt = "47" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/white, -/area/medical/research{ - name = "Research Division" - }) -"blY" = ( -/obj/structure/closet/emcloset, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/quartermaster/storage) -"blZ" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/components/unary/vent_pump{ - on = 1 - }, -/turf/open/floor/plasteel/warnwhite{ - dir = 8 - }, -/area/toxins/lab) -"bma" = ( -/obj/structure/table/glass, -/obj/item/weapon/stock_parts/manipulator, -/obj/item/weapon/stock_parts/capacitor, -/obj/item/weapon/stock_parts/capacitor, -/obj/item/weapon/stock_parts/manipulator, -/obj/item/weapon/stock_parts/micro_laser, -/obj/item/weapon/stock_parts/micro_laser, -/obj/item/stack/cable_coil{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/stack/cable_coil, -/obj/machinery/firealarm{ - dir = 4; - pixel_x = 24 - }, -/turf/open/floor/plasteel/white, -/area/toxins/lab) -"bmb" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/quartermaster/storage) -"bmc" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 5 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"bmd" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"bme" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"bmf" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/brown{ - dir = 8 - }, -/area/quartermaster/office) -"bmg" = ( -/obj/machinery/door/airlock/glass_mining{ - name = "Cargo Bay"; - req_access_txt = "31" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/quartermaster/storage) -"bmh" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/turf/open/floor/plasteel, -/area/quartermaster/storage) -"bmi" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/quartermaster/office) -"bmj" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/quartermaster/storage) -"bmk" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass_mining{ - name = "Delivery Office"; - req_access_txt = "50" - }, -/turf/open/floor/plasteel, -/area/quartermaster/office) -"bml" = ( -/obj/machinery/mineral/ore_redemption{ - input_dir = 8; - output_dir = 4 - }, -/obj/machinery/door/firedoor, -/turf/open/floor/plasteel/floorgrime, -/area/quartermaster/office) -"bmm" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/machinery/door/firedoor, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"bmn" = ( -/obj/machinery/light{ - dir = 8 - }, -/obj/machinery/door/firedoor, -/obj/machinery/status_display{ - density = 0; - layer = 3; - pixel_x = -32; - pixel_y = 0 - }, -/turf/open/floor/plasteel/brown/corner{ - dir = 8 - }, -/area/hallway/primary/central) -"bmo" = ( -/turf/closed/wall, -/area/crew_quarters/heads) -"bmp" = ( -/obj/structure/rack{ - dir = 8; - layer = 2.9 - }, -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plating, -/area/maintenance/maintcentral) -"bmq" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall, -/area/crew_quarters/heads) -"bmr" = ( -/turf/closed/wall/r_wall, -/area/crew_quarters/heads) -"bms" = ( -/obj/machinery/door/airlock/command{ - name = "Head of Personnel"; - req_access = null; - req_access_txt = "57" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/wood, -/area/crew_quarters/heads) -"bmt" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/turf/open/floor/plasteel/brown{ - dir = 8 - }, -/area/quartermaster/office) -"bmu" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 8 - }, -/turf/closed/wall/r_wall, -/area/engine/gravity_generator) -"bmv" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/black, -/area/engine/gravity_generator) -"bmw" = ( -/obj/machinery/light{ - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/engine/gravity_generator) -"bmx" = ( -/turf/closed/wall, -/area/crew_quarters/captain) -"bmy" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/carpet, -/area/crew_quarters/captain) -"bmz" = ( -/obj/machinery/light/small{ - dir = 1 - }, -/obj/structure/dresser, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 8 - }, -/turf/open/floor/carpet, -/area/crew_quarters/captain) -"bmA" = ( -/obj/machinery/door/airlock{ - name = "Private Restroom"; - req_access_txt = "0" - }, -/turf/open/floor/plasteel/freezer, -/area/crew_quarters/captain) -"bmB" = ( -/obj/machinery/light_switch{ - pixel_y = 28 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/carpet, -/area/crew_quarters/captain) -"bmC" = ( -/obj/structure/sink{ - dir = 4; - icon_state = "sink"; - pixel_x = 11; - pixel_y = 0 - }, -/obj/structure/mirror{ - pixel_x = 28 - }, -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/plasteel/freezer, -/area/crew_quarters/captain) -"bmD" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plating, -/area/crew_quarters/captain) -"bmE" = ( -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"bmF" = ( -/obj/structure/table/glass, -/obj/machinery/airalarm{ - dir = 4; - icon_state = "alarm0"; - pixel_x = -22 - }, -/obj/item/stack/cable_coil/random, -/obj/item/stack/cable_coil/random, -/turf/open/floor/plasteel/white, -/area/medical/chemistry) -"bmG" = ( -/obj/machinery/chem_dispenser, -/turf/open/floor/plasteel/whiteyellow/side{ - dir = 2 - }, -/area/medical/chemistry) -"bmH" = ( -/obj/machinery/door/airlock/glass_mining{ - name = "Cargo Bay"; - req_access_txt = "31" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/turf/open/floor/plasteel, -/area/quartermaster/storage) -"bmI" = ( -/obj/machinery/chem_master, -/turf/open/floor/plasteel/whiteyellow/side{ - dir = 6 - }, -/area/medical/chemistry) -"bmJ" = ( -/obj/item/device/radio/intercom{ - broadcasting = 1; - freerange = 0; - frequency = 1485; - listening = 0; - name = "Station Intercom (Medbay)"; - pixel_x = 0; - pixel_y = -30 - }, -/obj/machinery/light, -/obj/machinery/firealarm{ - dir = 8; - pixel_x = -24 - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"bmK" = ( -/obj/structure/table/reinforced, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"bmL" = ( -/obj/structure/chair/office/light{ - dir = 8 - }, -/obj/machinery/button/door{ - desc = "A remote control switch for the medbay foyer."; - id = "MedbayFoyer"; - name = "Medbay Doors Control"; - normaldoorcontrol = 1; - pixel_x = -26; - req_access_txt = "5" - }, -/obj/effect/landmark/start{ - name = "Medical Doctor" - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"bmM" = ( -/obj/structure/chair/office/light{ - dir = 1 - }, -/obj/structure/sign/nosmoking_2{ - pixel_x = 28 - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"bmN" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/red/side, -/area/security/checkpoint/medical) -"bmO" = ( -/obj/structure/closet, -/turf/open/floor/plasteel/red/side{ - dir = 10 - }, -/area/security/checkpoint/medical) -"bmP" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/turf/open/floor/plasteel, -/area/quartermaster/office) -"bmQ" = ( -/obj/item/weapon/stamp{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/weapon/stamp/denied{ - pixel_x = 4; - pixel_y = -2 - }, -/obj/structure/table, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/quartermaster/office) -"bmR" = ( -/obj/structure/table, -/obj/item/weapon/paper/morguereminder{ - pixel_x = 5; - pixel_y = 4 - }, -/turf/open/floor/plasteel/black, -/area/medical/morgue) -"bmS" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"bmT" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/components/unary/vent_pump{ - on = 1 - }, -/turf/open/floor/plasteel/white, -/area/medical/chemistry) -"bmU" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/security/checkpoint/medical) -"bmV" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/door/airlock/medical{ - name = "Morgue"; - req_access_txt = "6;5" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/black, -/area/medical/morgue) -"bmW" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 6 - }, -/turf/closed/wall, -/area/medical/morgue) -"bmX" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/closed/wall/r_wall, -/area/medical/genetics) -"bmY" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/medical/morgue) -"bmZ" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall/r_wall, -/area/medical/genetics) -"bna" = ( -/obj/structure/disposalpipe/segment, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"bnb" = ( -/obj/machinery/light{ - dir = 8 - }, -/obj/machinery/camera{ - c_tag = "Mech Bay"; - dir = 4 - }, -/turf/open/floor/plasteel, -/area/assembly/chargebay) -"bnc" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/assembly/chargebay) -"bnd" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/assembly/chargebay) -"bne" = ( -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/assembly/chargebay) -"bnf" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 10 - }, -/turf/open/floor/plasteel/warnwhite{ - dir = 1 - }, -/area/toxins/lab) -"bng" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/warnwhite{ - dir = 1 - }, -/area/toxins/lab) -"bnh" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/white, -/area/toxins/lab) -"bni" = ( -/turf/open/floor/plasteel/warnwhite{ - dir = 8 - }, -/area/assembly/robotics) -"bnj" = ( -/obj/structure/table, -/obj/machinery/cell_charger, -/obj/item/weapon/stock_parts/cell/high/plus, -/obj/item/device/radio/intercom{ - freerange = 0; - frequency = 1459; - name = "Station Intercom (General)"; - pixel_x = 29 - }, -/turf/open/floor/plasteel/white, -/area/assembly/robotics) -"bnk" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/turf/open/floor/plasteel/warnwhite/corner{ - dir = 4 - }, -/area/toxins/lab) -"bnl" = ( -/obj/item/weapon/stock_parts/console_screen, -/obj/structure/table/glass, -/obj/item/weapon/stock_parts/console_screen, -/obj/item/weapon/stock_parts/console_screen, -/obj/item/weapon/stock_parts/matter_bin, -/obj/item/weapon/stock_parts/matter_bin, -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/obj/item/weapon/stock_parts/scanning_module{ - pixel_x = 2; - pixel_y = 3 - }, -/obj/item/weapon/stock_parts/scanning_module, -/obj/machinery/power/apc{ - dir = 4; - name = "Research Lab APC"; - pixel_x = 26; - pixel_y = 0 - }, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/turf/open/floor/plasteel/white, -/area/toxins/lab) -"bnm" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall/r_wall, -/area/medical/research{ - name = "Research Division" - }) -"bnn" = ( -/obj/machinery/computer/rdconsole/core, -/turf/open/floor/plasteel, -/area/toxins/lab) -"bno" = ( -/obj/machinery/r_n_d/circuit_imprinter, -/obj/item/weapon/reagent_containers/glass/beaker/sulphuric, -/turf/open/floor/plasteel, -/area/toxins/lab) -"bnp" = ( -/turf/open/floor/plasteel, -/area/toxins/lab) -"bnq" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/toxins/lab) -"bnr" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 5 - }, -/obj/structure/plasticflaps{ - opacity = 1 - }, -/turf/open/floor/plasteel/loadingarea, -/area/toxins/lab) -"bns" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/maintenance/asmaint2) -"bnt" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"bnu" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 10 - }, -/turf/closed/wall, -/area/maintenance/asmaint2) -"bnv" = ( -/obj/machinery/door/poddoor{ - id = "trash"; - name = "disposal bay door" - }, -/turf/open/floor/plating, -/area/maintenance/disposal) -"bnw" = ( -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/quartermaster/storage) -"bnx" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"bny" = ( -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/manifold4w/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/quartermaster/office) -"bnz" = ( -/obj/effect/landmark/start{ - name = "Cargo Technician" - }, -/obj/structure/chair/office/dark{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/quartermaster/office) -"bnA" = ( -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/quartermaster/office) -"bnB" = ( -/obj/structure/closet/wardrobe/chemistry_white, -/obj/machinery/light_switch{ - pixel_x = -23; - pixel_y = 0 - }, -/turf/open/floor/plasteel/white, -/area/medical/chemistry) -"bnC" = ( -/obj/structure/chair, -/turf/open/floor/plasteel/white, -/area/medical/chemistry) -"bnD" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/table, -/obj/item/weapon/book/manual/wiki/chemistry, -/obj/item/weapon/book/manual/wiki/chemistry{ - pixel_x = 3; - pixel_y = 3 - }, -/turf/open/floor/plasteel/white, -/area/medical/chemistry) -"bnE" = ( -/obj/structure/disposalpipe/segment, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/quartermaster/office) -"bnF" = ( -/obj/structure/sign/nosmoking_2{ - pixel_x = 0; - pixel_y = 30 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"bnG" = ( -/obj/item/weapon/paper_bin{ - pixel_x = -3; - pixel_y = 7 - }, -/obj/item/weapon/clipboard, -/obj/item/weapon/pen/red, -/obj/structure/table, -/obj/machinery/computer/stockexchange, -/turf/open/floor/plasteel, -/area/quartermaster/office) -"bnH" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 5 - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"bnI" = ( -/obj/machinery/computer/cargo/request, -/turf/open/floor/plasteel, -/area/quartermaster/office) -"bnJ" = ( -/obj/machinery/firealarm{ - pixel_y = 27 - }, -/turf/open/floor/plasteel, -/area/quartermaster/office) -"bnK" = ( -/obj/structure/grille, -/obj/structure/window/fulltile, -/turf/open/floor/plating, -/area/quartermaster/office) -"bnL" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/plasteel/brown{ - dir = 1 - }, -/area/quartermaster/office) -"bnM" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"bnN" = ( -/turf/open/floor/plasteel/red/corner{ - dir = 2 - }, -/area/hallway/primary/central) -"bnO" = ( -/obj/structure/table, -/obj/machinery/newscaster/security_unit{ - pixel_x = 0; - pixel_y = 32 - }, -/obj/item/weapon/hand_labeler, -/obj/item/stack/packageWrap, -/turf/open/floor/plasteel, -/area/crew_quarters/heads) -"bnP" = ( -/obj/machinery/button/flasher{ - id = "hopflash"; - pixel_x = 6; - pixel_y = 36 - }, -/obj/machinery/button/door{ - id = "hop"; - name = "Privacy Shutters Control"; - pixel_x = 6; - pixel_y = 25; - req_access_txt = "28" - }, -/obj/machinery/button/door{ - id = "hopqueue"; - name = "Queue Shutters Control"; - pixel_x = -4; - pixel_y = 25; - req_access_txt = "28" - }, -/obj/machinery/light_switch{ - pixel_x = -4; - pixel_y = 36 - }, -/obj/machinery/pdapainter, -/turf/open/floor/plasteel/blue/side{ - dir = 9 - }, -/area/crew_quarters/heads) -"bnQ" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/bed/dogbed{ - anchored = 1; - desc = "Ian's bed! Looks comfy."; - name = "Ian's bed" - }, -/mob/living/simple_animal/pet/dog/corgi/Ian{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/heads) -"bnR" = ( -/obj/machinery/computer/security/telescreen{ - desc = "Used for watching Prison Wing holding areas."; - name = "Prison Monitor"; - network = list("Prison"); - pixel_x = 0; - pixel_y = 30 - }, -/obj/machinery/disposal/bin, -/obj/structure/disposalpipe/trunk, -/turf/open/floor/plasteel, -/area/crew_quarters/heads) -"bnS" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/crew_quarters/heads) -"bnT" = ( -/obj/structure/grille, -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'HIGH VOLTAGE'"; - icon_state = "shock"; - name = "HIGH VOLTAGE"; - pixel_x = -32; - pixel_y = 0 - }, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/engine/gravity_generator) -"bnU" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/door/airlock/glass_engineering{ - name = "Gravity Generator"; - req_access_txt = "11"; - req_one_access_txt = "0" - }, -/turf/open/floor/plasteel/black, -/area/engine/gravity_generator) -"bnV" = ( -/obj/structure/grille, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/engine/gravity_generator) -"bnW" = ( -/obj/structure/grille, -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'RADIOACTIVE AREA'"; - icon_state = "radiation"; - name = "RADIOACTIVE AREA"; - pixel_x = 32; - pixel_y = 0 - }, -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/engine/gravity_generator) -"bnX" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/carpet, -/area/crew_quarters/captain) -"bnY" = ( -/obj/structure/bed, -/obj/item/weapon/bedsheet/captain, -/obj/machinery/airalarm{ - dir = 4; - icon_state = "alarm0"; - pixel_x = -22 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/carpet, -/area/crew_quarters/captain) -"bnZ" = ( -/obj/structure/table/wood, -/obj/item/device/flashlight/lamp/green, -/turf/open/floor/carpet, -/area/crew_quarters/captain) -"boa" = ( -/obj/structure/toilet{ - dir = 4 - }, -/turf/open/floor/plasteel/freezer, -/area/crew_quarters/captain) -"bob" = ( -/obj/structure/table/glass, -/obj/item/weapon/grenade/chem_grenade, -/obj/item/weapon/grenade/chem_grenade, -/obj/item/weapon/grenade/chem_grenade, -/obj/item/weapon/grenade/chem_grenade, -/obj/item/weapon/screwdriver{ - pixel_x = -2; - pixel_y = 6 - }, -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/turf/open/floor/plasteel/white, -/area/medical/chemistry) -"boc" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"bod" = ( -/obj/structure/table, -/obj/item/weapon/folder/white, -/obj/item/device/radio/headset/headset_med, -/turf/open/floor/plasteel/white, -/area/medical/chemistry) -"boe" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass_medical{ - id_tag = "MedbayFoyer"; - name = "Medbay"; - req_access_txt = "5" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/whiteblue/side{ - dir = 1 - }, -/area/medical/medbay) -"bof" = ( -/turf/closed/wall, -/area/medical/medbay) -"bog" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/medical/medbay) -"boh" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass_medical{ - id_tag = "MedbayFoyer"; - name = "Medbay"; - req_access_txt = "5" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/whiteblue/side{ - dir = 1 - }, -/area/medical/medbay) -"boi" = ( -/obj/machinery/computer/med_data, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"boj" = ( -/obj/machinery/airalarm{ - dir = 1; - icon_state = "alarm0"; - pixel_y = -22 - }, -/obj/machinery/requests_console{ - announcementConsole = 0; - department = "Medbay"; - departmentType = 1; - name = "Medbay RC"; - pixel_x = 30; - pixel_y = 0; - pixel_z = 0 - }, -/obj/machinery/light, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"bok" = ( -/obj/machinery/door/airlock/glass_security{ - name = "Security Office"; - req_access_txt = "63" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/white, -/area/security/checkpoint/medical) -"bol" = ( -/obj/machinery/airalarm{ - frequency = 1439; - pixel_y = 23 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"bom" = ( -/obj/machinery/light{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"bon" = ( -/turf/closed/wall/r_wall, -/area/medical/genetics) -"boo" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"bop" = ( -/obj/machinery/mech_bay_recharge_port, -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/turf/open/floor/plating, -/area/assembly/chargebay) -"boq" = ( -/obj/structure/bed/roller, -/turf/open/floor/plasteel/whiteblue/side{ - dir = 4 - }, -/area/medical/medbay) -"bor" = ( -/obj/structure/extinguisher_cabinet{ - pixel_x = -27 - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/bluegrid, -/area/assembly/chargebay) -"bos" = ( -/obj/machinery/disposal/bin, -/obj/structure/disposalpipe/trunk{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/assembly/robotics) -"bot" = ( -/obj/structure/grille, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/assembly/robotics) -"bou" = ( -/turf/open/floor/plasteel, -/area/assembly/robotics) -"bov" = ( -/obj/structure/table, -/obj/item/device/assembly/prox_sensor{ - pixel_x = -8; - pixel_y = 4 - }, -/obj/item/device/assembly/prox_sensor{ - pixel_x = -8; - pixel_y = 4 - }, -/obj/item/device/assembly/prox_sensor{ - pixel_x = -8; - pixel_y = 4 - }, -/obj/item/device/assembly/prox_sensor{ - pixel_x = -8; - pixel_y = 4 - }, -/obj/item/weapon/stock_parts/cell/high/plus, -/obj/item/weapon/stock_parts/cell/high/plus{ - pixel_x = 5; - pixel_y = -5 - }, -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/obj/item/weapon/crowbar, -/turf/open/floor/plasteel/white, -/area/assembly/robotics) -"bow" = ( -/obj/machinery/door/firedoor/heavy, -/obj/machinery/door/poddoor/preopen{ - id = "Biohazard"; - name = "biohazard containment door" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/bot, -/area/medical/research{ - name = "Research Division" - }) -"box" = ( -/turf/closed/wall, -/area/assembly/robotics) -"boy" = ( -/obj/machinery/door/firedoor/heavy, -/obj/machinery/door/poddoor/preopen{ - id = "Biohazard"; - name = "biohazard containment door" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/bot, -/area/medical/research{ - name = "Research Division" - }) -"boz" = ( -/obj/machinery/door/firedoor/heavy, -/obj/machinery/door/poddoor/preopen{ - id = "Biohazard"; - name = "biohazard containment door" - }, -/turf/open/floor/plasteel/bot, -/area/medical/research{ - name = "Research Division" - }) -"boA" = ( -/turf/open/floor/plasteel/warnwhite{ - dir = 1 - }, -/area/toxins/lab) -"boB" = ( -/turf/closed/wall, -/area/toxins/lab) -"boC" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 8 - }, -/turf/closed/wall, -/area/assembly/chargebay) -"boD" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/bluegrid, -/area/assembly/chargebay) -"boE" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/bluegrid, -/area/assembly/chargebay) -"boF" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"boG" = ( -/obj/machinery/airalarm{ - dir = 8; - icon_state = "alarm0"; - pixel_x = 24 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/assembly/chargebay) -"boH" = ( -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 10 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"boI" = ( -/obj/structure/grille, -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; - icon_state = "space"; - layer = 4; - name = "EXTERNAL AIRLOCK"; - pixel_x = 0 - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/quartermaster/storage) -"boJ" = ( -/obj/machinery/conveyor_switch/oneway{ - id = "QMLoad2" - }, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/quartermaster/storage) -"boK" = ( -/turf/open/floor/plasteel/bot, -/area/quartermaster/storage) -"boL" = ( -/obj/structure/disposalpipe/segment, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 9 - }, -/turf/open/floor/plasteel, -/area/assembly/chargebay) -"boM" = ( -/turf/open/floor/plasteel/white/corner{ - dir = 2 - }, -/area/medical/research{ - name = "Research Division" - }) -"boN" = ( -/turf/open/floor/plasteel/brown/corner{ - dir = 1 - }, -/area/quartermaster/office) -"boO" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/white/side{ - dir = 2 - }, -/area/medical/research{ - name = "Research Division" - }) -"boP" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/white, -/area/toxins/lab) -"boQ" = ( -/obj/structure/table, -/obj/machinery/cell_charger, -/obj/item/weapon/stock_parts/cell/high/plus, -/obj/item/weapon/stock_parts/cell/high/plus, -/turf/open/floor/plasteel/white, -/area/toxins/lab) -"boR" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/delivery, -/area/quartermaster/office) -"boS" = ( -/obj/structure/table/reinforced, -/obj/machinery/door/firedoor, -/obj/machinery/door/window/westleft{ - name = "Cargo Desk"; - req_access_txt = "50" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/quartermaster/office) -"boT" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel, -/area/quartermaster/office) -"boU" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/quartermaster/office) -"boV" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"boW" = ( -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/brown/corner{ - dir = 8 - }, -/area/hallway/primary/central) -"boX" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "hopqueue"; - name = "HoP Queue Shutters" - }, -/turf/open/floor/plasteel/loadingarea{ - dir = 8 - }, -/area/hallway/primary/central) -"boY" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/red/side{ - dir = 4 - }, -/area/hallway/primary/central) -"boZ" = ( -/obj/structure/table/reinforced, -/obj/machinery/door/window/northleft{ - dir = 8; - icon_state = "left"; - name = "Reception Window"; - req_access_txt = "0" - }, -/obj/machinery/door/window/brigdoor{ - base_state = "rightsecure"; - dir = 4; - icon_state = "rightsecure"; - name = "Head of Personnel's Desk"; - req_access = null; - req_access_txt = "57" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/flasher{ - id = "hopflash"; - pixel_x = 0; - pixel_y = 28 - }, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "hop"; - layer = 2.9; - name = "Privacy Shutters" - }, -/turf/open/floor/plasteel, -/area/crew_quarters/heads) -"bpa" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/delivery, -/area/hallway/primary/central) -"bpb" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/carpet, -/area/crew_quarters/heads) -"bpc" = ( -/obj/structure/chair/office/dark{ - dir = 8 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/blue/side{ - dir = 8 - }, -/area/crew_quarters/heads) -"bpd" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/carpet, -/area/crew_quarters/heads) -"bpe" = ( -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/turf/open/floor/carpet, -/area/crew_quarters/heads) -"bpf" = ( -/obj/structure/disposalpipe/segment, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/crew_quarters/heads) -"bpg" = ( -/obj/structure/chair/office/light, -/obj/machinery/firealarm{ - dir = 8; - pixel_x = -24 - }, -/turf/open/floor/plasteel/warning{ - dir = 9 - }, -/area/engine/gravity_generator) -"bph" = ( -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/engine/gravity_generator) -"bpi" = ( -/obj/machinery/airalarm{ - dir = 8; - icon_state = "alarm0"; - pixel_x = 24 - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/warning{ - dir = 5 - }, -/area/engine/gravity_generator) -"bpj" = ( -/obj/structure/chair/comfy/brown{ - dir = 4 - }, -/obj/machinery/camera{ - c_tag = "Captain's Quarters"; - dir = 1 - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/carpet, -/area/crew_quarters/captain) -"bpk" = ( -/obj/structure/closet/secure_closet/captains, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/carpet, -/area/crew_quarters/captain) -"bpl" = ( -/obj/structure/table/wood, -/obj/item/weapon/storage/box/matches, -/obj/item/weapon/razor{ - pixel_x = -4; - pixel_y = 2 - }, -/obj/item/clothing/mask/cigarette/cigar, -/obj/item/weapon/reagent_containers/food/drinks/flask/gold, -/turf/open/floor/carpet, -/area/crew_quarters/captain) -"bpm" = ( -/obj/machinery/shower{ - dir = 1 - }, -/obj/item/weapon/soap/deluxe, -/obj/item/weapon/bikehorn/rubberducky, -/obj/effect/landmark{ - name = "revenantspawn" - }, -/obj/structure/curtain, -/turf/open/floor/plasteel/freezer, -/area/crew_quarters/captain) -"bpn" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/light{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"bpo" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/turf/open/floor/plasteel/white, -/area/toxins/lab) -"bpp" = ( -/obj/machinery/door/window/eastright{ - base_state = "left"; - dir = 8; - icon_state = "left"; - name = "Research Division Delivery"; - req_access_txt = "47" - }, -/turf/open/floor/plasteel/delivery, -/area/toxins/lab) -"bpq" = ( -/obj/machinery/light_switch{ - pixel_x = 0; - pixel_y = -23 - }, -/turf/open/floor/plasteel/white, -/area/toxins/lab) -"bpr" = ( -/obj/machinery/navbeacon{ - codes_txt = "delivery;dir=8"; - dir = 8; - freq = 1400; - location = "Research Division" - }, -/turf/open/floor/plasteel/bot, -/area/toxins/lab) -"bps" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 5 - }, -/turf/open/floor/plasteel/loadingarea{ - dir = 4 - }, -/area/quartermaster/storage) -"bpt" = ( -/obj/structure/table, -/obj/item/weapon/hand_labeler, -/obj/item/stack/packageWrap, -/turf/open/floor/plasteel/white, -/area/medical/chemistry) -"bpu" = ( -/obj/structure/bed/roller, -/obj/machinery/button/door{ - desc = "A remote control switch for the medbay foyer."; - id = "MedbayFoyer"; - name = "Medbay Exit Button"; - normaldoorcontrol = 1; - pixel_x = 0; - pixel_y = 26 - }, -/obj/structure/extinguisher_cabinet{ - pixel_x = -27; - pixel_y = 0 - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"bpv" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/medical{ - name = "Medbay Reception"; - req_access_txt = "5" - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"bpw" = ( -/obj/machinery/status_display, -/turf/closed/wall, -/area/medical/medbay) -"bpx" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"bpy" = ( -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"bpz" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel, -/area/quartermaster/storage) -"bpA" = ( -/obj/machinery/computer/cargo, -/turf/open/floor/plasteel, -/area/quartermaster/office) -"bpB" = ( -/obj/structure/disposalpipe/segment, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/quartermaster/office) -"bpC" = ( -/obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"bpD" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass_medical{ - id_tag = null; - name = "Chemistry Lab"; - req_access_txt = "5; 33" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/white, -/area/medical/chemistry) -"bpE" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/medical/genetics) -"bpF" = ( -/obj/structure/table/reinforced, -/obj/machinery/door/window/southleft{ - dir = 1; - name = "Chemistry Desk"; - req_access_txt = "33" - }, -/obj/machinery/door/firedoor, -/turf/open/floor/plating, -/area/medical/chemistry) -"bpG" = ( -/obj/machinery/power/apc{ - dir = 1; - name = "Genetics APC"; - pixel_y = 24 - }, -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/turf/open/floor/plasteel/white, -/area/medical/genetics) -"bpH" = ( -/obj/structure/table/glass, -/obj/item/weapon/folder/white, -/obj/item/device/radio/headset/headset_medsci, -/obj/machinery/requests_console{ - department = "Genetics"; - departmentType = 0; - name = "Genetics Requests Console"; - pixel_x = 0; - pixel_y = 30 - }, -/obj/item/weapon/storage/pill_bottle/mutadone, -/obj/item/weapon/storage/pill_bottle/mannitol, -/turf/open/floor/plasteel/white, -/area/medical/genetics) -"bpI" = ( -/obj/machinery/dna_scannernew, -/turf/open/floor/plasteel/whiteblue/side{ - dir = 5 - }, -/area/medical/genetics) -"bpJ" = ( -/obj/machinery/light{ - dir = 1 - }, -/obj/machinery/airalarm{ - frequency = 1439; - pixel_y = 23 - }, -/turf/open/floor/plasteel/white, -/area/medical/genetics) -"bpK" = ( -/mob/living/carbon/monkey, -/turf/open/floor/plasteel, -/area/medical/genetics) -"bpL" = ( -/obj/structure/window/reinforced{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/medical/genetics) -"bpM" = ( -/obj/structure/grille, -/obj/structure/disposalpipe/segment, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/medical/chemistry) -"bpN" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 8 - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"bpO" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"bpP" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 5 - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"bpQ" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/sortjunction{ - dir = 2; - icon_state = "pipe-j2s"; - sortType = 14 - }, -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 8 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"bpR" = ( -/obj/structure/table, -/obj/item/weapon/retractor, -/obj/item/weapon/hemostat, -/turf/open/floor/plasteel, -/area/assembly/robotics) -"bpS" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/assembly/chargebay) -"bpT" = ( -/obj/structure/table, -/obj/item/device/mmi, -/obj/item/device/mmi, -/obj/item/device/mmi, -/obj/structure/window/reinforced{ - dir = 4; - pixel_x = 0 - }, -/turf/open/floor/plasteel, -/area/assembly/robotics) -"bpU" = ( -/obj/structure/table, -/obj/item/weapon/storage/firstaid/regular{ - empty = 1; - name = "First-Aid (empty)" - }, -/obj/item/weapon/storage/firstaid/regular{ - empty = 1; - name = "First-Aid (empty)" - }, -/obj/item/weapon/storage/firstaid/regular{ - empty = 1; - name = "First-Aid (empty)" - }, -/obj/item/device/healthanalyzer, -/obj/item/device/healthanalyzer, -/obj/item/device/healthanalyzer, -/turf/open/floor/plasteel/white, -/area/assembly/robotics) -"bpV" = ( -/obj/machinery/door/airlock/maintenance{ - name = "Mech Bay Maintenance"; - req_access_txt = "29" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/assembly/chargebay) -"bpW" = ( -/obj/structure/grille, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "robotics2"; - name = "robotics lab shutters" - }, -/obj/structure/window/fulltile, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "robotics2"; - name = "robotics lab shutters" - }, -/turf/open/floor/plating, -/area/assembly/robotics) -"bpX" = ( -/obj/machinery/firealarm{ - dir = 4; - pixel_x = 24 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/white/corner{ - dir = 8 - }, -/area/medical/research{ - name = "Research Division" - }) -"bpY" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/assembly/chargebay) -"bpZ" = ( -/obj/item/weapon/folder/white, -/obj/structure/table, -/obj/item/weapon/disk/tech_disk{ - pixel_x = 0; - pixel_y = 0 - }, -/obj/item/weapon/disk/tech_disk{ - pixel_x = 0; - pixel_y = 0 - }, -/obj/item/weapon/disk/design_disk, -/obj/item/weapon/disk/design_disk, -/turf/open/floor/plasteel/white, -/area/toxins/lab) -"bqa" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 9 - }, -/turf/open/floor/plasteel, -/area/assembly/chargebay) -"bqb" = ( -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/assembly/chargebay) -"bqc" = ( -/obj/structure/table, -/obj/item/weapon/circular_saw, -/obj/item/weapon/scalpel{ - pixel_y = 12 - }, -/turf/open/floor/plasteel/white/corner{ - dir = 2 - }, -/area/assembly/robotics) -"bqd" = ( -/obj/structure/table, -/obj/item/clothing/gloves/color/latex, -/obj/item/weapon/surgical_drapes, -/obj/item/weapon/razor, -/obj/structure/window/reinforced{ - dir = 4; - pixel_x = 0 - }, -/turf/open/floor/plasteel/white/corner{ - dir = 8 - }, -/area/assembly/robotics) -"bqe" = ( -/turf/closed/wall/r_wall, -/area/toxins/explab) -"bqf" = ( -/obj/machinery/door/firedoor/heavy, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "rnd2"; - name = "research lab shutters" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/white, -/area/toxins/lab) -"bqg" = ( -/obj/structure/rack, -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"bqh" = ( -/obj/machinery/light/small{ - dir = 1 - }, -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"bqi" = ( -/obj/machinery/conveyor{ - dir = 4; - id = "QMLoad2" - }, -/obj/machinery/door/poddoor{ - id = "QMLoaddoor2"; - name = "supply dock loading door" - }, -/turf/open/floor/plating, -/area/quartermaster/storage) -"bqj" = ( -/obj/structure/plasticflaps, -/obj/machinery/conveyor{ - dir = 4; - id = "QMLoad2" - }, -/turf/open/floor/plating, -/area/quartermaster/storage) -"bqk" = ( -/obj/structure/disposalpipe/segment, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/door/firedoor/heavy, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "rnd2"; - name = "research lab shutters" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/white, -/area/toxins/lab) -"bql" = ( -/obj/machinery/conveyor{ - dir = 4; - id = "QMLoad2" - }, -/turf/open/floor/plating/warnplate{ - dir = 1 - }, -/area/quartermaster/storage) -"bqm" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/quartermaster/storage) -"bqn" = ( -/obj/machinery/light_switch{ - pixel_x = 27 - }, -/turf/open/floor/plasteel, -/area/quartermaster/storage) -"bqo" = ( -/obj/machinery/autolathe, -/obj/machinery/light_switch{ - pixel_x = -27 - }, -/turf/open/floor/plasteel, -/area/quartermaster/office) -"bqp" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/window/reinforced{ - dir = 1; - layer = 2.9 - }, -/turf/open/floor/plasteel/brown{ - dir = 1 - }, -/area/quartermaster/office) -"bqq" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/turf/open/floor/carpet, -/area/crew_quarters/heads) -"bqr" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/carpet, -/area/crew_quarters/heads) -"bqs" = ( -/turf/open/floor/plasteel/bot, -/area/quartermaster/office) -"bqt" = ( -/obj/machinery/holopad, -/turf/open/floor/plasteel, -/area/quartermaster/office) -"bqu" = ( -/obj/machinery/door/firedoor, -/turf/open/floor/plasteel, -/area/quartermaster/office) -"bqv" = ( -/obj/structure/grille, -/obj/structure/window/fulltile, -/turf/open/floor/plating, -/area/hallway/primary/central) -"bqw" = ( -/turf/open/floor/plasteel/red/corner{ - dir = 4 - }, -/area/hallway/primary/central) -"bqx" = ( -/obj/structure/grille, -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "hop"; - layer = 2.9; - name = "Privacy Shutters" - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/crew_quarters/heads) -"bqy" = ( -/turf/open/floor/plasteel/bot, -/area/hallway/primary/central) -"bqz" = ( -/turf/open/floor/carpet, -/area/crew_quarters/heads) -"bqA" = ( -/obj/machinery/computer/card, -/turf/open/floor/plasteel/blue/side{ - dir = 10 - }, -/area/crew_quarters/heads) -"bqB" = ( -/obj/machinery/holopad, -/turf/open/floor/carpet, -/area/crew_quarters/heads) -"bqC" = ( -/obj/machinery/airalarm{ - dir = 8; - icon_state = "alarm0"; - pixel_x = 24 - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/crew_quarters/heads) -"bqD" = ( -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/machinery/power/apc{ - dir = 8; - name = "Gravity Generator APC"; - pixel_x = -25; - pixel_y = 1 - }, -/obj/structure/table, -/obj/item/weapon/paper/gravity_gen{ - layer = 3 - }, -/obj/item/weapon/pen/blue, -/obj/item/device/radio/intercom{ - name = "Station Intercom (General)"; - pixel_y = -35 - }, -/turf/open/floor/plasteel, -/area/engine/gravity_generator) -"bqE" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/holopad, -/turf/open/floor/plasteel, -/area/engine/gravity_generator) -"bqF" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/floor/plasteel, -/area/engine/gravity_generator) -"bqG" = ( -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/structure/cable, -/obj/machinery/power/smes{ - charge = 5e+006 - }, -/turf/open/floor/plasteel, -/area/engine/gravity_generator) -"bqH" = ( -/turf/closed/wall/r_wall, -/area/teleporter) -"bqI" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall/r_wall, -/area/teleporter) -"bqJ" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/closed/wall/r_wall, -/area/teleporter) -"bqK" = ( -/obj/machinery/door/airlock/maintenance{ - name = "Teleporter Maintenance"; - req_access_txt = "17" - }, -/obj/structure/sign/securearea{ - pixel_x = -32; - pixel_y = 0 - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plating, -/area/teleporter) -"bqL" = ( -/obj/machinery/door/firedoor, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"bqM" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/medical/medbay) -"bqN" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 5 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"bqO" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/whiteyellow/side{ - dir = 1 - }, -/area/medical/medbay) -"bqP" = ( -/obj/structure/bed/roller, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"bqQ" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"bqR" = ( -/obj/structure/table, -/obj/item/weapon/crowbar, -/obj/item/clothing/neck/stethoscope, -/obj/item/weapon/reagent_containers/spray/cleaner, -/obj/structure/sign/nosmoking_2{ - pixel_x = 0; - pixel_y = 30 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/whiteyellow/corner{ - dir = 4 - }, -/area/medical/medbay) -"bqS" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/whiteyellow/side{ - dir = 1 - }, -/area/medical/medbay) -"bqT" = ( -/obj/structure/disposalpipe/segment, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, -/turf/open/floor/plasteel/whiteyellow/side{ - dir = 1 - }, -/area/medical/medbay) -"bqU" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/structure/noticeboard{ - pixel_y = 32 - }, -/obj/machinery/camera{ - c_tag = "Medbay West"; - dir = 2; - network = list("SS13") - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"bqV" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/whiteyellow/corner{ - dir = 1 - }, -/area/medical/medbay) -"bqW" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"bqX" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 9 - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"bqY" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"bqZ" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/white, -/area/medical/genetics) -"bra" = ( -/obj/structure/table/glass, -/obj/item/weapon/storage/box/rxglasses, -/turf/open/floor/plasteel/white, -/area/medical/genetics) -"brb" = ( -/obj/machinery/computer/scan_consolenew, -/turf/open/floor/plasteel/whiteblue/side{ - dir = 6 - }, -/area/medical/genetics) -"brc" = ( -/obj/structure/chair/office/light{ - dir = 4 - }, -/obj/effect/landmark/start{ - name = "Geneticist" - }, -/turf/open/floor/plasteel/white, -/area/medical/genetics) -"brd" = ( -/turf/open/floor/plasteel, -/area/medical/genetics) -"bre" = ( -/obj/structure/window/reinforced{ - dir = 8 - }, -/mob/living/carbon/monkey, -/turf/open/floor/plasteel, -/area/medical/genetics) -"brf" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"brg" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"brh" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 2 - }, -/area/medical/medbay) -"bri" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/whiteblue/side{ - dir = 2 - }, -/area/medical/medbay) -"brj" = ( -/obj/structure/bed/roller, -/turf/open/floor/plasteel/whiteblue/side{ - dir = 6 - }, -/area/medical/medbay) -"brk" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - on = 1 - }, -/turf/open/floor/plasteel/white, -/area/medical/genetics) -"brl" = ( -/obj/machinery/light_switch{ - pixel_x = -23; - pixel_y = 0 - }, -/turf/open/floor/plasteel/warnwhite{ - dir = 8 - }, -/area/assembly/robotics) -"brm" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white/side{ - dir = 9 - }, -/area/medical/research{ - name = "Research Division" - }) -"brn" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/medical/research{ - name = "Research Division" - }) -"bro" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white/side{ - dir = 10 - }, -/area/medical/research{ - name = "Research Division" - }) -"brp" = ( -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/open/floor/plasteel/white, -/area/medical/research{ - name = "Research Division" - }) -"brq" = ( -/obj/machinery/button/door{ - dir = 2; - id = "robotics2"; - name = "Shutters Control Button"; - pixel_x = 24; - pixel_y = -24; - req_access_txt = "29" - }, -/turf/open/floor/plasteel/white, -/area/assembly/robotics) -"brr" = ( -/obj/structure/grille, -/obj/structure/window/fulltile, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/toxins/explab) -"brs" = ( -/obj/structure/table/reinforced, -/obj/machinery/door/window/eastright{ - base_state = "left"; - dir = 8; - icon_state = "left"; - name = "Robotics Desk"; - req_access_txt = "29" - }, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "robotics2"; - name = "robotics lab shutters" - }, -/obj/item/weapon/folder/white, -/obj/item/weapon/pen, -/turf/open/floor/plating, -/area/assembly/robotics) -"brt" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/white/side{ - dir = 9 - }, -/area/medical/research{ - name = "Research Division" - }) -"bru" = ( -/obj/machinery/firealarm{ - dir = 2; - pixel_y = 24 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/light{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 1 - }, -/turf/open/floor/plasteel/white, -/area/toxins/explab) -"brv" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/toxins/explab) -"brw" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/toxins/explab) -"brx" = ( -/obj/structure/grille, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "rnd2"; - name = "research lab shutters" - }, -/obj/structure/window/fulltile, -/turf/open/floor/plating, -/area/toxins/lab) -"bry" = ( -/obj/machinery/door/airlock/maintenance{ - name = "Experimentation Lab Maintenance"; - req_access_txt = "7" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/toxins/explab) -"brz" = ( -/obj/structure/table, -/obj/item/weapon/pen, -/obj/machinery/camera{ - c_tag = "Experimentor Lab"; - dir = 2; - network = list("SS13","RD") - }, -/obj/item/weapon/hand_labeler, -/obj/item/stack/packageWrap, -/turf/open/floor/plasteel/white/side{ - dir = 2 - }, -/area/toxins/explab) -"brA" = ( -/obj/structure/table, -/obj/item/weapon/paper_bin{ - pixel_x = 0; - pixel_y = 6 - }, -/turf/open/floor/plasteel/white/corner{ - dir = 2 - }, -/area/toxins/explab) -"brB" = ( -/obj/structure/closet/l3closet/scientist, -/turf/open/floor/plasteel/white/side{ - dir = 2 - }, -/area/toxins/explab) -"brC" = ( -/obj/structure/table, -/obj/item/weapon/folder/white, -/obj/item/weapon/folder/white, -/obj/machinery/airalarm{ - frequency = 1439; - pixel_y = 23 - }, -/obj/item/device/radio/off, -/turf/open/floor/plasteel/white/side{ - dir = 2 - }, -/area/toxins/explab) -"brD" = ( -/obj/structure/closet/emcloset{ - pixel_x = -2 - }, -/turf/open/floor/plasteel/white/corner{ - dir = 8 - }, -/area/toxins/explab) -"brE" = ( -/obj/machinery/door/airlock/maintenance{ - req_access_txt = "12" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"brF" = ( -/obj/structure/disposalpipe/segment, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/sign/securearea{ - pixel_x = -32 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"brG" = ( -/obj/machinery/atmospherics/components/binary/valve{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"brH" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible{ - dir = 6 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"brI" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible{ - dir = 8 - }, -/obj/machinery/light/small{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"brJ" = ( -/obj/machinery/door/airlock/external{ - cyclelinkeddir = 4; - name = "Supply Dock Airlock"; - req_access_txt = "31" - }, -/turf/open/floor/plating, -/area/quartermaster/storage) -"brK" = ( -/turf/open/floor/plating, -/area/quartermaster/storage) -"brL" = ( -/turf/open/floor/plasteel/warning{ - dir = 9 - }, -/area/quartermaster/storage) -"brM" = ( -/obj/machinery/navbeacon{ - codes_txt = "delivery;dir=8"; - dir = 8; - freq = 1400; - location = "QM #1" - }, -/mob/living/simple_animal/bot/mulebot{ - beacon_freq = 1400; - home_destination = "QM #1"; - suffix = "#1" - }, -/turf/open/floor/plasteel/bot, -/area/quartermaster/storage) -"brN" = ( -/turf/open/floor/plasteel/delivery, -/area/quartermaster/storage) -"brO" = ( -/obj/structure/table, -/obj/machinery/requests_console{ - department = "Cargo Bay"; - departmentType = 2; - pixel_x = -30; - pixel_y = 0 - }, -/obj/item/device/multitool, -/obj/machinery/camera{ - c_tag = "Cargo Office"; - dir = 4; - network = list("SS13") - }, -/turf/open/floor/plasteel, -/area/quartermaster/office) -"brP" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/toxins/explab) -"brQ" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/structure/disposalpipe/junction{ - icon_state = "pipe-j2"; - dir = 1 - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"brR" = ( -/obj/structure/disposalpipe/segment, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, -/turf/open/floor/plasteel, -/area/quartermaster/office) -"brS" = ( -/turf/open/floor/plasteel, -/area/crew_quarters/heads) -"brT" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"brU" = ( -/obj/structure/grille, -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'HIGH VOLTAGE'"; - icon_state = "shock"; - name = "HIGH VOLTAGE"; - pixel_y = -32 - }, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/structure/cable, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "hop"; - layer = 2.9; - name = "Privacy Shutters" - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/crew_quarters/heads) -"brV" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/medical/medbay) -"brW" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/structure/filingcabinet/chestdrawer, -/turf/open/floor/plasteel, -/area/crew_quarters/heads) -"brX" = ( -/obj/structure/table, -/obj/item/weapon/storage/box/masks{ - pixel_x = 0; - pixel_y = 0 - }, -/obj/item/weapon/storage/box/gloves{ - pixel_x = 3; - pixel_y = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"brY" = ( -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"brZ" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/crew_quarters/heads) -"bsa" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 1 - }, -/turf/closed/wall/r_wall, -/area/engine/gravity_generator) -"bsb" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 5 - }, -/turf/closed/wall/r_wall, -/area/engine/gravity_generator) -"bsc" = ( -/turf/open/floor/plasteel, -/area/engine/gravity_generator) -"bsd" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel, -/area/engine/gravity_generator) -"bse" = ( -/obj/machinery/power/terminal{ - icon_state = "term"; - dir = 1 - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 1 - }, -/turf/closed/wall/r_wall, -/area/engine/gravity_generator) -"bsf" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/plasteel, -/area/engine/gravity_generator) -"bsg" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 9 - }, -/turf/closed/wall/r_wall, -/area/engine/gravity_generator) -"bsh" = ( -/turf/closed/wall, -/area/teleporter) -"bsi" = ( -/obj/structure/table, -/obj/item/weapon/hand_tele, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/teleporter) -"bsj" = ( -/obj/structure/extinguisher_cabinet{ - pixel_x = -27; - pixel_y = 1 - }, -/obj/structure/table, -/obj/item/device/radio/beacon, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 5 - }, -/turf/open/floor/plasteel, -/area/teleporter) -"bsk" = ( -/obj/machinery/firealarm{ - dir = 2; - pixel_y = 24 - }, -/obj/machinery/light{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/teleporter) -"bsl" = ( -/obj/item/device/radio/intercom{ - broadcasting = 0; - listening = 1; - name = "Station Intercom (General)"; - pixel_y = 20 - }, -/obj/structure/closet/crate, -/obj/item/weapon/crowbar, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/teleporter) -"bsm" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/plasteel, -/area/teleporter) -"bsn" = ( -/obj/machinery/camera{ - c_tag = "Teleporter" - }, -/obj/machinery/airalarm{ - frequency = 1439; - pixel_y = 23 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/teleporter) -"bso" = ( -/obj/machinery/light_switch{ - pixel_x = 27 - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plasteel, -/area/teleporter) -"bsp" = ( -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/blue/side{ - dir = 8 - }, -/area/hallway/primary/central) -"bsq" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/item/device/radio/intercom{ - broadcasting = 0; - freerange = 0; - frequency = 1485; - listening = 1; - name = "Station Intercom (Medbay)"; - pixel_x = 0; - pixel_y = -30 - }, -/obj/machinery/light, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"bsr" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"bss" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"bst" = ( -/obj/item/device/radio/intercom{ - broadcasting = 0; - freerange = 0; - frequency = 1485; - listening = 1; - name = "Station Intercom (Medbay)"; - pixel_x = 30; - pixel_y = 0 - }, -/obj/machinery/camera{ - c_tag = "Medbay East"; - dir = 8; - network = list("SS13"); - pixel_x = 0; - pixel_y = -22 - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"bsu" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass_medical{ - id_tag = "GeneticsDoor"; - name = "Genetics"; - req_access_txt = "5; 9" - }, -/turf/open/floor/plasteel/white, -/area/medical/genetics) -"bsv" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/white, -/area/medical/genetics) -"bsw" = ( -/obj/machinery/door/airlock/research{ - name = "Robotics Lab"; - req_access_txt = "29"; - req_one_access_txt = "0" - }, -/turf/open/floor/plasteel/white, -/area/assembly/robotics) -"bsx" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"bsy" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"bsz" = ( -/obj/machinery/status_display{ - density = 0; - layer = 3; - pixel_x = -32; - pixel_y = 0 - }, -/turf/open/floor/plasteel/white/side{ - dir = 5 - }, -/area/medical/research{ - name = "Research Division" - }) -"bsA" = ( -/obj/machinery/atmospherics/pipe/manifold4w/scrubbers, -/turf/open/floor/plasteel/white/side{ - dir = 9 - }, -/area/medical/research{ - name = "Research Division" - }) -"bsB" = ( -/obj/structure/reagent_dispensers/fueltank, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/syndicate) -"bsC" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/open/floor/plasteel/white, -/area/medical/research{ - name = "Research Division" - }) -"bsD" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/medical/research{ - name = "Research Division" - }) -"bsE" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/door/firedoor/heavy, -/obj/machinery/door/airlock/research{ - name = "Experimentation Lab"; - req_access_txt = "7" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/toxins/explab) -"bsF" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/toxins/explab) -"bsG" = ( -/obj/machinery/holopad, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 1 - }, -/turf/open/floor/plasteel/white, -/area/toxins/explab) -"bsH" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall/r_wall, -/area/toxins/explab) -"bsI" = ( -/obj/machinery/power/apc{ - dir = 4; - name = "Experimentation Lab APC"; - pixel_x = 26; - pixel_y = 0 - }, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/toxins/explab) -"bsJ" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/maintenance/asmaint2) -"bsK" = ( -/obj/structure/table/glass, -/obj/item/weapon/storage/box/disks{ - pixel_x = 2; - pixel_y = 2 - }, -/turf/open/floor/plasteel/white, -/area/medical/genetics) -"bsL" = ( -/turf/open/floor/plasteel/white, -/area/medical/genetics) -"bsM" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"bsN" = ( -/obj/machinery/door/window/westleft{ - name = "Monkey Pen"; - req_access_txt = "9" - }, -/turf/open/floor/plasteel, -/area/medical/genetics) -"bsO" = ( -/obj/structure/table, -/obj/item/weapon/crowbar/large, -/turf/open/floor/plasteel, -/area/assembly/chargebay) -"bsP" = ( -/obj/structure/reagent_dispensers/fueltank, -/turf/open/floor/plasteel, -/area/assembly/chargebay) -"bsQ" = ( -/obj/structure/table, -/obj/item/weapon/storage/toolbox/mechanical, -/turf/open/floor/plasteel, -/area/assembly/chargebay) -"bsR" = ( -/obj/machinery/recharge_station, -/turf/open/floor/plasteel/bot, -/area/assembly/chargebay) -"bsS" = ( -/obj/structure/table, -/obj/item/weapon/storage/box/bodybags, -/obj/item/weapon/pen, -/turf/open/floor/plasteel/white/side{ - dir = 4 - }, -/area/assembly/robotics) -"bsT" = ( -/obj/machinery/computer/operating{ - name = "Robotics Operating Computer" - }, -/obj/machinery/light, -/turf/open/floor/plasteel/white, -/area/assembly/robotics) -"bsU" = ( -/obj/structure/table/optable{ - name = "Robotics Operating Table" - }, -/obj/item/weapon/surgical_drapes, -/turf/open/floor/plating, -/area/maintenance/fpmaint2) -"bsV" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/quartermaster/office) -"bsW" = ( -/obj/structure/closet/wardrobe/robotics_black, -/obj/item/device/radio/headset/headset_sci{ - pixel_x = -3 - }, -/turf/open/floor/plasteel/white, -/area/assembly/robotics) -"bsX" = ( -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/turf/open/floor/plasteel/white/side{ - dir = 5 - }, -/area/medical/research{ - name = "Research Division" - }) -"bsY" = ( -/obj/structure/chair/office/dark{ - dir = 4 - }, -/obj/effect/landmark/start{ - name = "Head of Personnel" - }, -/turf/open/floor/plasteel, -/area/crew_quarters/heads) -"bsZ" = ( -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 8 - }, -/turf/open/floor/plasteel/white, -/area/medical/research{ - name = "Research Division" - }) -"bta" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/camera{ - c_tag = "Research Division North"; - dir = 2 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/medical/research{ - name = "Research Division" - }) -"btb" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/noticeboard{ - pixel_y = 32 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/medical/research{ - name = "Research Division" - }) -"btc" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/warning, -/area/teleporter) -"btd" = ( -/turf/open/floor/plasteel/warning{ - dir = 10 - }, -/area/teleporter) -"bte" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white/side{ - dir = 6 - }, -/area/medical/research{ - name = "Research Division" - }) -"btf" = ( -/obj/machinery/requests_console{ - announcementConsole = 0; - department = "Medbay"; - departmentType = 1; - name = "Medbay RC"; - pixel_x = -30; - pixel_y = 0; - pixel_z = 0 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"btg" = ( -/obj/machinery/door/firedoor, -/turf/open/floor/plasteel/white, -/area/medical/sleeper) -"bth" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/medical/research{ - name = "Research Division" - }) -"bti" = ( -/obj/structure/closet/secure_closet/personal/patient, -/turf/open/floor/plasteel/white, -/area/medical/genetics) -"btj" = ( -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/toxins/explab) -"btk" = ( -/obj/structure/closet/wardrobe/white, -/turf/open/floor/plasteel/white, -/area/medical/genetics) -"btl" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/white, -/area/medical/genetics) -"btm" = ( -/obj/structure/disposalpipe/sortjunction{ - dir = 2; - icon_state = "pipe-j2s"; - sortType = 12 - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/white, -/area/medical/genetics) -"btn" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall/r_wall, -/area/medical/research{ - name = "Research Division" - }) -"bto" = ( -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/obj/structure/sign/securearea{ - pixel_x = 32 - }, -/obj/machinery/light/small{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 8 - }, -/turf/open/floor/plasteel/white, -/area/medical/genetics) -"btp" = ( -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"btq" = ( -/obj/structure/closet, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 2; - name = "2maintenance loot spawner" - }, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"btr" = ( -/obj/machinery/camera{ - c_tag = "Cargo Recieving Dock"; - dir = 4 - }, -/obj/machinery/button/door{ - id = "QMLoaddoor"; - layer = 4; - name = "Loading Doors"; - pixel_x = -24; - pixel_y = -8 - }, -/obj/machinery/button/door{ - dir = 2; - id = "QMLoaddoor2"; - layer = 4; - name = "Loading Doors"; - pixel_x = -24; - pixel_y = 8 - }, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/quartermaster/storage) -"bts" = ( -/obj/machinery/navbeacon{ - codes_txt = "delivery;dir=8"; - dir = 8; - freq = 1400; - location = "QM #2" - }, -/mob/living/simple_animal/bot/mulebot{ - home_destination = "QM #2"; - suffix = "#2" - }, -/turf/open/floor/plasteel/bot, -/area/quartermaster/storage) -"btt" = ( -/obj/structure/table, -/obj/machinery/firealarm{ - dir = 8; - pixel_x = -24 - }, -/obj/item/weapon/folder/yellow, -/turf/open/floor/plasteel, -/area/quartermaster/office) -"btu" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/plasteel, -/area/quartermaster/office) -"btv" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/quartermaster/office) -"btw" = ( -/obj/machinery/light{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/whiteblue/side{ - dir = 8 - }, -/area/medical/research{ - name = "Research Division" - }) -"btx" = ( -/obj/machinery/door/firedoor/heavy, -/obj/machinery/door/poddoor/preopen{ - id = "Biohazard"; - name = "biohazard containment door" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/bot, -/area/medical/research{ - name = "Research Division" - }) -"bty" = ( -/obj/structure/chair{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/quartermaster/office) -"btz" = ( -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/brown/corner{ - dir = 8 - }, -/area/hallway/primary/central) -"btA" = ( -/obj/machinery/camera{ - c_tag = "Research Division West"; - dir = 2; - network = list("SS13") - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/medical/research{ - name = "Research Division" - }) -"btB" = ( -/obj/structure/table, -/obj/machinery/recharger, -/turf/open/floor/plasteel/blue/side{ - dir = 9 - }, -/area/crew_quarters/heads) -"btC" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/heads) -"btD" = ( -/obj/structure/table, -/obj/item/weapon/paper_bin{ - pixel_x = -3; - pixel_y = 7 - }, -/obj/item/weapon/pen, -/turf/open/floor/plasteel, -/area/crew_quarters/heads) -"btE" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/light{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/crew_quarters/heads) -"btF" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/engineering{ - name = "Gravity Generator"; - req_access_txt = "11" - }, -/turf/open/floor/plasteel/delivery{ - name = "floor" - }, -/area/engine/gravity_generator) -"btG" = ( -/turf/closed/wall/r_wall, -/area/engine/gravity_generator) -"btH" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/structure/chair/stool, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/teleporter) -"btI" = ( -/obj/machinery/power/apc{ - dir = 8; - name = "Teleporter APC"; - pixel_x = -24 - }, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/turf/open/floor/plasteel, -/area/teleporter) -"btJ" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/machinery/bluespace_beacon, -/turf/open/floor/plasteel, -/area/teleporter) -"btK" = ( -/obj/machinery/holopad, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/turf/open/floor/plasteel, -/area/teleporter) -"btL" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/turf/open/floor/plasteel, -/area/teleporter) -"btM" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/command{ - name = "Teleport Access"; - req_access_txt = "17" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/turf/open/floor/plasteel, -/area/teleporter) -"btN" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/turf/open/floor/plasteel, -/area/teleporter) -"btO" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/blue/side{ - dir = 8 - }, -/area/hallway/primary/central) -"btP" = ( -/obj/structure/extinguisher_cabinet{ - pixel_x = -5; - pixel_y = 30 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/medical/research{ - name = "Research Division" - }) -"btQ" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white/side{ - dir = 10 - }, -/area/medical/research{ - name = "Research Division" - }) -"btR" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"btS" = ( -/obj/machinery/firealarm{ - dir = 2; - pixel_y = 24 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/medical/research{ - name = "Research Division" - }) -"btT" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"btU" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 1 - }, -/turf/open/floor/plasteel/white, -/area/medical/research{ - name = "Research Division" - }) -"btV" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"btW" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white/side{ - dir = 5 - }, -/area/medical/research{ - name = "Research Division" - }) -"btX" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/firealarm{ - dir = 1; - pixel_y = -24 - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"btY" = ( -/obj/machinery/requests_console{ - department = "Science"; - departmentType = 2; - name = "Science Requests Console"; - pixel_x = 0; - pixel_y = -30 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - external_pressure_bound = 101.325; - on = 1; - pressure_checks = 1 - }, -/turf/open/floor/plasteel/white, -/area/toxins/explab) -"btZ" = ( -/obj/machinery/light, -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"bua" = ( -/turf/closed/wall, -/area/medical/genetics) -"bub" = ( -/obj/machinery/light, -/obj/item/device/radio/intercom{ - name = "Station Intercom (General)"; - pixel_y = -35 - }, -/turf/open/floor/plasteel/loadingarea{ - dir = 8 - }, -/area/quartermaster/storage) -"buc" = ( -/obj/machinery/light, -/obj/machinery/power/apc{ - dir = 2; - name = "Cargo Office APC"; - pixel_x = 1; - pixel_y = -24 - }, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/brown/corner{ - dir = 2 - }, -/area/quartermaster/office) -"bud" = ( -/turf/open/floor/plasteel/brown/corner{ - dir = 8 - }, -/area/quartermaster/office) -"bue" = ( -/obj/machinery/requests_console{ - announcementConsole = 1; - department = "Head of Personnel's Desk"; - departmentType = 5; - name = "Head of Personnel RC"; - pixel_y = -30 - }, -/obj/machinery/camera{ - c_tag = "Head of Personnel's Office"; - dir = 1 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/heads) -"buf" = ( -/obj/machinery/computer/scan_consolenew, -/turf/open/floor/plasteel/whiteblue/side{ - dir = 5 - }, -/area/medical/genetics) -"bug" = ( -/obj/structure/chair/office/light{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/medical/genetics) -"buh" = ( -/turf/closed/wall/r_wall, -/area/assembly/chargebay) -"bui" = ( -/obj/machinery/airalarm{ - dir = 1; - icon_state = "alarm0"; - pixel_y = -22 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"buj" = ( -/obj/structure/grille, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "robotics2"; - name = "robotics lab shutters" - }, -/obj/structure/window/fulltile, -/turf/open/floor/plating, -/area/assembly/robotics) -"buk" = ( -/turf/open/floor/plasteel/white/side{ - dir = 8 - }, -/area/medical/sleeper) -"bul" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/plasteel/white, -/area/medical/genetics) -"bum" = ( -/obj/machinery/holopad, -/turf/open/floor/plasteel/white, -/area/medical/genetics) -"bun" = ( -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/open/floor/plasteel/white, -/area/medical/genetics) -"buo" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/medical/research{ - name = "Research Division" - }) -"bup" = ( -/obj/machinery/light, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/medical/research{ - name = "Research Division" - }) -"buq" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/medical/genetics) -"bur" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/medical/genetics) -"bus" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/medical/research{ - name = "Research Division" - }) -"but" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/white, -/area/medical/genetics) -"buu" = ( -/obj/structure/disposalpipe/segment, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/toxins/explab) -"buv" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/toxins/explab) -"buw" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/toxins/explab) -"bux" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/whitepurple/side{ - dir = 4 - }, -/area/medical/genetics) -"buy" = ( -/obj/structure/disposalpipe/sortjunction{ - sortType = 23 - }, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, -/turf/open/floor/plasteel/white, -/area/medical/genetics) -"buz" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"buA" = ( -/obj/structure/frame/computer, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/syndicate) -"buB" = ( -/obj/machinery/conveyor_switch/oneway{ - convdir = -1; - id = "QMLoad" - }, -/turf/open/floor/plasteel, -/area/quartermaster/storage) -"buC" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/quartermaster/storage) -"buD" = ( -/obj/machinery/navbeacon{ - codes_txt = "delivery;dir=8"; - dir = 8; - freq = 1400; - location = "QM #3" - }, -/turf/open/floor/plasteel/bot, -/area/quartermaster/storage) -"buE" = ( -/obj/structure/table, -/obj/machinery/airalarm{ - dir = 4; - icon_state = "alarm0"; - pixel_x = -22 - }, -/obj/machinery/computer/stockexchange, -/turf/open/floor/plasteel, -/area/quartermaster/office) -"buF" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel, -/area/quartermaster/office) -"buG" = ( -/obj/machinery/door/airlock/research{ - name = "Genetics Research"; - req_access_txt = "9" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/medical/genetics) -"buH" = ( -/obj/machinery/door/airlock/research{ - name = "Genetics Research Access"; - req_access_txt = "47" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/medical/research{ - name = "Research Division" - }) -"buI" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/plasteel, -/area/quartermaster/office) -"buJ" = ( -/obj/structure/chair{ - dir = 8 - }, -/obj/machinery/light, -/turf/open/floor/plasteel, -/area/quartermaster/office) -"buK" = ( -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/turf/open/floor/plasteel/bot, -/area/hallway/primary/central) -"buL" = ( -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/medical/genetics) -"buM" = ( -/obj/machinery/keycard_auth{ - pixel_x = -24; - pixel_y = 0 - }, -/obj/machinery/computer/cargo, -/turf/open/floor/plasteel/blue/side{ - dir = 8 - }, -/area/crew_quarters/heads) -"buN" = ( -/obj/structure/chair{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/heads) -"buO" = ( -/obj/structure/table, -/obj/item/weapon/folder/blue, -/obj/item/weapon/stamp/hop, -/turf/open/floor/plasteel, -/area/crew_quarters/heads) -"buP" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 8 - }, -/turf/closed/wall, -/area/engine/gravity_generator) -"buQ" = ( -/obj/machinery/airalarm{ - dir = 4; - icon_state = "alarm0"; - pixel_x = -22 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/warning{ - dir = 9 - }, -/area/engine/gravity_generator) -"buR" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/engine/gravity_generator) -"buS" = ( -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/obj/machinery/camera{ - c_tag = "Gravity Generator Foyer" - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/plasteel/warning{ - dir = 5 - }, -/area/engine/gravity_generator) -"buT" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/whiteblue/side{ - dir = 8 - }, -/area/medical/research{ - name = "Research Division" - }) -"buU" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/machinery/door/firedoor/heavy, -/obj/machinery/door/poddoor/preopen{ - id = "Biohazard"; - name = "biohazard containment door" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/bot, -/area/medical/research{ - name = "Research Division" - }) -"buV" = ( -/turf/open/floor/plasteel/warning{ - dir = 6 - }, -/area/teleporter) -"buW" = ( -/turf/open/floor/plasteel/warning, -/area/teleporter) -"buX" = ( -/obj/machinery/shieldwallgen, -/turf/open/floor/plasteel/bot, -/area/teleporter) -"buY" = ( -/obj/machinery/shieldwallgen, -/obj/structure/window/reinforced{ - dir = 8 - }, -/turf/open/floor/plasteel/bot, -/area/teleporter) -"buZ" = ( -/obj/structure/closet/crate, -/turf/open/floor/plasteel, -/area/teleporter) -"bva" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/sign/securearea{ - pixel_x = -32; - pixel_y = 0 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/blue/side{ - dir = 8 - }, -/area/hallway/primary/central) -"bvb" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/medical/research{ - name = "Research Division" - }) -"bvc" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/machinery/light, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/medical/research{ - name = "Research Division" - }) -"bvd" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/medical/sleeper) -"bve" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 1 - }, -/turf/open/floor/plasteel/white, -/area/medical/research{ - name = "Research Division" - }) -"bvf" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/plasteel/white/side{ - dir = 9 - }, -/area/medical/research{ - name = "Research Division" - }) -"bvg" = ( -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, -/turf/open/floor/plasteel/white, -/area/medical/research{ - name = "Research Division" - }) -"bvh" = ( -/obj/structure/grille, -/obj/structure/window/fulltile, -/turf/open/floor/plating, -/area/medical/sleeper) -"bvi" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall, -/area/medical/sleeper) -"bvj" = ( -/turf/closed/wall, -/area/medical/sleeper) -"bvk" = ( -/obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"bvl" = ( -/obj/machinery/door/airlock/glass_medical{ - id_tag = ""; - name = "Surgery Observation"; - req_access_txt = "0" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/black, -/area/medical/sleeper) -"bvm" = ( -/obj/machinery/holopad, -/turf/open/floor/plasteel/white, -/area/medical/sleeper) -"bvn" = ( -/obj/machinery/button/door{ - desc = "A remote control switch for the genetics doors."; - id = "GeneticsDoor"; - name = "Genetics Exit Button"; - normaldoorcontrol = 1; - pixel_x = 8; - pixel_y = 24 - }, -/obj/structure/table, -/obj/item/weapon/book/manual/medical_cloning{ - pixel_y = 6 - }, -/turf/open/floor/plasteel/white, -/area/medical/genetics) -"bvo" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/white, -/area/medical/genetics) -"bvp" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/medical/genetics) -"bvq" = ( -/obj/structure/chair, -/obj/effect/landmark/start{ - name = "Geneticist" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/medical/genetics) -"bvr" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/medical/genetics) -"bvs" = ( -/obj/machinery/dna_scannernew, -/turf/open/floor/plasteel/whiteblue/side{ - dir = 6 - }, -/area/medical/genetics) -"bvt" = ( -/obj/machinery/door/airlock/glass_research{ - name = "Genetics Research"; - req_access_txt = "5; 9" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/medical/genetics) -"bvu" = ( -/obj/structure/window/reinforced, -/mob/living/carbon/monkey, -/turf/open/floor/plasteel, -/area/medical/genetics) -"bvv" = ( -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/structure/window/reinforced, -/turf/open/floor/plasteel, -/area/medical/genetics) -"bvw" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/open/floor/plasteel/white, -/area/medical/genetics) -"bvx" = ( -/turf/closed/wall/r_wall, -/area/medical/research{ - name = "Research Division" - }) -"bvy" = ( -/obj/machinery/camera{ - c_tag = "Genetics Research"; - dir = 1; - network = list("SS13","RD"); - pixel_x = 0 - }, -/obj/machinery/firealarm{ - dir = 1; - pixel_y = -24 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/whitepurple/side{ - dir = 4 - }, -/area/medical/genetics) -"bvz" = ( -/obj/structure/disposalpipe/segment, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/medical/genetics) -"bvA" = ( -/obj/structure/sign/securearea, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall/r_wall, -/area/medical/genetics) -"bvB" = ( -/obj/machinery/camera{ - c_tag = "Genetics Access"; - dir = 8; - network = list("SS13"); - pixel_x = 0; - pixel_y = -22 - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/medical/genetics) -"bvC" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/security/checkpoint/science) -"bvD" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/white, -/area/medical/research{ - name = "Research Division" - }) -"bvE" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white/side{ - dir = 6 - }, -/area/medical/research{ - name = "Research Division" - }) -"bvF" = ( -/obj/structure/table, -/obj/item/weapon/cartridge/quartermaster{ - pixel_x = 6; - pixel_y = 5 - }, -/obj/item/weapon/cartridge/quartermaster, -/obj/item/weapon/cartridge/quartermaster{ - pixel_x = -4; - pixel_y = 7 - }, -/obj/machinery/requests_console{ - department = "Cargo Bay"; - departmentType = 2; - pixel_x = -30; - pixel_y = 0 - }, -/obj/item/weapon/coin/silver, -/turf/open/floor/plasteel/brown{ - dir = 9 - }, -/area/quartermaster/qm) -"bvG" = ( -/obj/machinery/light{ - dir = 1 - }, -/obj/machinery/light_switch{ - pixel_y = 28 - }, -/turf/open/floor/plasteel, -/area/quartermaster/miningdock) -"bvH" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white/side{ - dir = 9 - }, -/area/medical/research{ - name = "Research Division" - }) -"bvI" = ( -/obj/structure/disposalpipe/segment, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/quartermaster/miningdock) -"bvJ" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/crew_quarters/hor) -"bvK" = ( -/turf/closed/wall, -/area/crew_quarters/hor) -"bvL" = ( -/turf/open/floor/plasteel/red/side{ - dir = 8 - }, -/area/security/checkpoint/supply) -"bvM" = ( -/obj/machinery/light_switch{ - pixel_x = -20; - pixel_y = 0 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/white, -/area/toxins/explab) -"bvN" = ( -/obj/structure/chair/office/light, -/obj/effect/landmark/start{ - name = "Scientist" - }, -/turf/open/floor/plasteel/white, -/area/toxins/explab) -"bvO" = ( -/turf/open/floor/plasteel/white, -/area/toxins/explab) -"bvP" = ( -/obj/structure/extinguisher_cabinet{ - pixel_x = 5; - pixel_y = -32 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/white, -/area/toxins/explab) -"bvQ" = ( -/obj/machinery/atmospherics/pipe/manifold/general/visible{ - dir = 8 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"bvR" = ( -/obj/machinery/atmospherics/components/unary/thermomachine/freezer{ - dir = 8 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"bvS" = ( -/obj/machinery/conveyor{ - dir = 4; - id = "QMLoad" - }, -/obj/machinery/door/poddoor{ - id = "QMLoaddoor"; - name = "supply dock loading door" - }, -/turf/open/floor/plating, -/area/quartermaster/storage) -"bvT" = ( -/obj/structure/plasticflaps, -/obj/machinery/conveyor{ - dir = 4; - id = "QMLoad" - }, -/turf/open/floor/plating, -/area/quartermaster/storage) -"bvU" = ( -/obj/machinery/conveyor{ - dir = 4; - id = "QMLoad" - }, -/obj/machinery/light, -/obj/machinery/status_display{ - density = 0; - pixel_y = -30; - supply_display = 1 - }, -/turf/open/floor/plating/warnplate{ - dir = 1 - }, -/area/quartermaster/storage) -"bvV" = ( -/obj/machinery/conveyor{ - dir = 4; - id = "QMLoad" - }, -/turf/open/floor/plating/warnplate{ - dir = 1 - }, -/area/quartermaster/storage) -"bvW" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/hallway/primary/central) -"bvX" = ( -/obj/machinery/camera{ - c_tag = "Cargo Bay South"; - dir = 1 - }, -/turf/open/floor/plasteel, -/area/quartermaster/storage) -"bvY" = ( -/obj/machinery/navbeacon{ - codes_txt = "delivery;dir=8"; - dir = 8; - freq = 1400; - location = "QM #4" - }, -/turf/open/floor/plasteel/bot, -/area/quartermaster/storage) -"bvZ" = ( -/obj/structure/table, -/obj/item/weapon/storage/firstaid/regular{ - pixel_x = 6; - pixel_y = -5 - }, -/turf/open/floor/plasteel, -/area/quartermaster/office) -"bwa" = ( -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 8 - }, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/hallway/primary/central) -"bwb" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/warning/corner{ - dir = 4 - }, -/area/hallway/primary/central) -"bwc" = ( -/obj/structure/disposalpipe/segment, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/quartermaster/office) -"bwd" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/checkpoint/supply) -"bwe" = ( -/turf/closed/wall, -/area/security/checkpoint/supply) -"bwf" = ( -/obj/machinery/camera{ - c_tag = "Cargo Bay Entrance"; - dir = 4; - network = list("SS13") - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/brown/corner{ - dir = 8 - }, -/area/hallway/primary/central) -"bwg" = ( -/obj/machinery/door/poddoor/shutters/preopen{ - id = "hopqueue"; - name = "HoP Queue Shutters" - }, -/turf/open/floor/plasteel/loadingarea{ - dir = 4 - }, -/area/hallway/primary/central) -"bwh" = ( -/obj/structure/sign/securearea{ - pixel_y = 32 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/hallway/primary/central) -"bwi" = ( -/obj/item/device/radio/intercom{ - dir = 8; - name = "Station Intercom (General)"; - pixel_x = -28 - }, -/obj/structure/closet/secure_closet/hop, -/turf/open/floor/plasteel/blue/side{ - dir = 10 - }, -/area/crew_quarters/heads) -"bwj" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/heads) -"bwk" = ( -/obj/structure/table, -/obj/item/weapon/book/manual/wiki/security_space_law, -/turf/open/floor/plasteel, -/area/crew_quarters/heads) -"bwl" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 9 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/heads) -"bwm" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall, -/area/engine/gravity_generator) -"bwn" = ( -/obj/structure/closet/radiation, -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'RADIOACTIVE AREA'"; - icon_state = "radiation"; - name = "RADIOACTIVE AREA"; - pixel_x = -32; - pixel_y = 0 - }, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/engine/gravity_generator) -"bwo" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/closed/wall, -/area/engine/gravity_generator) -"bwp" = ( -/obj/structure/closet/radiation, -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'RADIOACTIVE AREA'"; - icon_state = "radiation"; - name = "RADIOACTIVE AREA"; - pixel_x = 32; - pixel_y = 0 - }, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/engine/gravity_generator) -"bwq" = ( -/obj/machinery/teleport/station, -/turf/open/floor/plating, -/area/teleporter) -"bwr" = ( -/obj/machinery/computer/teleporter, -/turf/open/floor/plating, -/area/teleporter) -"bws" = ( -/obj/structure/rack, -/obj/item/weapon/tank/internals/oxygen, -/obj/item/clothing/mask/gas, -/turf/open/floor/plating, -/area/teleporter) -"bwt" = ( -/obj/machinery/teleport/hub, -/turf/open/floor/plating, -/area/teleporter) -"bwu" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"bwv" = ( -/obj/machinery/navbeacon{ - codes_txt = "delivery;dir=4"; - dir = 4; - freq = 1400; - location = "Medbay" - }, -/obj/structure/plasticflaps{ - opacity = 1 - }, -/turf/open/floor/plasteel/bot, -/area/medical/medbay) -"bww" = ( -/obj/structure/chair, -/obj/machinery/camera{ - c_tag = "Surgery Observation" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/medical/sleeper) -"bwx" = ( -/obj/machinery/door/window/eastleft{ - name = "Medical Delivery"; - req_access_txt = "5" - }, -/turf/open/floor/plasteel/delivery, -/area/medical/medbay) -"bwy" = ( -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"bwz" = ( -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"bwA" = ( -/obj/machinery/disposal/bin, -/obj/structure/disposalpipe/trunk{ - dir = 8 - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"bwB" = ( -/obj/structure/chair, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/black, -/area/medical/sleeper) -"bwC" = ( -/obj/machinery/computer/med_data, -/turf/open/floor/plasteel/white, -/area/medical/sleeper) -"bwD" = ( -/obj/machinery/sleeper{ - icon_state = "sleeper-open"; - dir = 8 - }, -/turf/open/floor/plasteel, -/area/medical/sleeper) -"bwE" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/black, -/area/medical/sleeper) -"bwF" = ( -/obj/structure/table/glass, -/obj/item/weapon/reagent_containers/glass/beaker/cryoxadone{ - pixel_x = 7; - pixel_y = 1 - }, -/obj/item/weapon/reagent_containers/glass/beaker/cryoxadone{ - pixel_x = 7; - pixel_y = 1 - }, -/turf/open/floor/plasteel, -/area/medical/sleeper) -"bwG" = ( -/obj/structure/sign/nosmoking_2, -/turf/closed/wall, -/area/medical/sleeper) -"bwH" = ( -/obj/structure/table, -/obj/machinery/cell_charger, -/turf/open/floor/plasteel, -/area/medical/sleeper) -"bwI" = ( -/obj/machinery/atmospherics/components/unary/cryo_cell, -/turf/open/floor/plasteel, -/area/medical/sleeper) -"bwJ" = ( -/obj/structure/table/glass, -/obj/machinery/camera{ - c_tag = "Medbay Cryogenics"; - dir = 2; - network = list("SS13"); - pixel_x = 0; - pixel_y = 0 - }, -/obj/item/weapon/reagent_containers/glass/beaker/cryoxadone{ - pixel_x = 0; - pixel_y = 0 - }, -/obj/item/weapon/reagent_containers/glass/beaker/cryoxadone{ - pixel_x = 0; - pixel_y = 0 - }, -/turf/open/floor/plasteel, -/area/medical/sleeper) -"bwK" = ( -/obj/structure/extinguisher_cabinet{ - pixel_x = 27; - pixel_y = 0 - }, -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"bwL" = ( -/obj/machinery/camera{ - c_tag = "Genetics Cloning"; - dir = 4; - network = list("SS13") - }, -/obj/structure/table, -/obj/machinery/firealarm{ - dir = 8; - pixel_x = -24 - }, -/obj/item/weapon/storage/box/rxglasses{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/storage/box/bodybags, -/obj/item/weapon/pen, -/turf/open/floor/plasteel/white, -/area/medical/genetics) -"bwM" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 9 - }, -/turf/open/floor/plasteel/red/side{ - dir = 1 - }, -/area/security/checkpoint/science) -"bwN" = ( -/obj/machinery/light_switch{ - pixel_x = 8; - pixel_y = 28 - }, -/obj/machinery/button/door{ - id = "Biohazard"; - name = "Biohazard Shutter Control"; - pixel_x = -5; - pixel_y = 28; - req_access_txt = "47" - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/plasteel/red/side{ - dir = 1 - }, -/area/security/checkpoint/science) -"bwO" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 5 - }, -/turf/open/floor/plasteel/white/side{ - dir = 9 - }, -/area/medical/research{ - name = "Research Division" - }) -"bwP" = ( -/obj/structure/table, -/obj/item/weapon/storage/box/donkpockets{ - pixel_x = 3; - pixel_y = 3 - }, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/syndicate) -"bwQ" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/crew_quarters/hor) -"bwR" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/cafeteria, -/area/crew_quarters/hor) -"bwS" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/plasteel, -/area/quartermaster/qm) -"bwT" = ( -/obj/machinery/door/airlock/glass_mining{ - name = "Quartermaster"; - req_access_txt = "41" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/quartermaster/qm) -"bwU" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/brown{ - dir = 4 - }, -/area/quartermaster/qm) -"bwV" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/effect/landmark/start{ - name = "Shaft Miner" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/quartermaster/miningdock) -"bwW" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/quartermaster/miningdock) -"bwX" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/structure/disposalpipe/sortjunction{ - dir = 1; - icon_state = "pipe-j2s"; - sortType = 3 - }, -/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, -/turf/open/floor/plasteel, -/area/quartermaster/miningdock) -"bwY" = ( -/obj/machinery/door/airlock/glass_security{ - name = "Security Office"; - req_access_txt = "63" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/security/checkpoint/supply) -"bwZ" = ( -/obj/structure/chair, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/black, -/area/medical/sleeper) -"bxa" = ( -/obj/structure/chair, -/obj/structure/sign/nosmoking_2{ - pixel_x = -28 - }, -/turf/open/floor/plasteel/black, -/area/medical/sleeper) -"bxb" = ( -/obj/structure/chair, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/plasteel/black, -/area/medical/sleeper) -"bxc" = ( -/obj/machinery/holopad, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 8 - }, -/turf/open/floor/plasteel/black, -/area/medical/sleeper) -"bxd" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/medical/research{ - name = "Research Division" - }) -"bxe" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/white, -/area/medical/research{ - name = "Research Division" - }) -"bxf" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white/side{ - dir = 5 - }, -/area/medical/research{ - name = "Research Division" - }) -"bxg" = ( -/obj/structure/reagent_dispensers/watertank, -/obj/effect/decal/cleanable/cobweb/cobweb2, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"bxh" = ( -/obj/machinery/door/poddoor{ - id = "smindicate"; - name = "outer blast door" - }, -/obj/machinery/button/door{ - id = "smindicate"; - name = "external door control"; - pixel_x = -26; - pixel_y = 0; - req_access_txt = "150" - }, -/obj/docking_port/mobile{ - dheight = 9; - dir = 2; - dwidth = 5; - height = 24; - id = "syndicate"; - name = "syndicate infiltrator"; - port_angle = 0; - roundstart_move = "syndicate_away"; - width = 18 - }, -/obj/docking_port/stationary{ - dheight = 9; - dir = 2; - dwidth = 5; - height = 24; - id = "syndicate_nw"; - name = "northwest of station"; - turf_type = /turf/open/space; - width = 18 - }, -/turf/open/floor/plating, -/area/shuttle/syndicate) -"bxi" = ( -/obj/machinery/computer/aifixer, -/obj/machinery/requests_console{ - announcementConsole = 1; - department = "Research Director's Desk"; - departmentType = 5; - name = "Research Director RC"; - pixel_x = -2; - pixel_y = 30 - }, -/obj/structure/window/reinforced{ - dir = 4 - }, -/turf/open/floor/plasteel/cafeteria, -/area/crew_quarters/hor) -"bxj" = ( -/obj/machinery/computer/security/telescreen{ - desc = "Used for watching the RD's goons and the AI's satellite from the safety of his office."; - name = "Research Monitor"; - network = list("RD","MiniSat"); - pixel_x = 0; - pixel_y = 2 - }, -/obj/structure/table, -/turf/open/floor/plasteel/cafeteria, -/area/crew_quarters/hor) -"bxk" = ( -/obj/effect/landmark/event_spawn, -/turf/open/floor/plasteel, -/area/storage/primary) -"bxl" = ( -/obj/structure/rack, -/obj/item/weapon/circuitboard/aicore{ - pixel_x = -2; - pixel_y = 4 - }, -/turf/open/floor/plasteel/warnwhite{ - dir = 9 - }, -/area/crew_quarters/hor) -"bxm" = ( -/obj/effect/landmark/xmastree/rdrod, -/turf/open/floor/plasteel/warnwhite{ - dir = 5 - }, -/area/crew_quarters/hor) -"bxn" = ( -/turf/closed/wall, -/area/toxins/explab) -"bxo" = ( -/obj/machinery/disposal/bin, -/obj/structure/disposalpipe/trunk{ - dir = 1 - }, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/toxins/explab) -"bxp" = ( -/obj/machinery/computer/rdconsole/experiment, -/turf/open/floor/plasteel/white/side{ - dir = 1 - }, -/area/toxins/explab) -"bxq" = ( -/obj/structure/table, -/obj/item/weapon/clipboard, -/obj/item/weapon/book/manual/experimentor, -/turf/open/floor/plasteel/white/corner{ - dir = 4 - }, -/area/toxins/explab) -"bxr" = ( -/obj/structure/closet/radiation, -/turf/open/floor/plasteel/white/corner{ - dir = 1 - }, -/area/toxins/explab) -"bxs" = ( -/obj/machinery/button/door{ - id = "telelab"; - name = "Test Chamber Blast Doors"; - pixel_x = 25; - pixel_y = 0 - }, -/turf/open/floor/plasteel/warnwhite{ - dir = 2 - }, -/area/toxins/explab) -"bxt" = ( -/obj/machinery/meter, -/obj/machinery/atmospherics/pipe/simple/general/visible, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"bxu" = ( -/turf/closed/wall, -/area/quartermaster/qm) -"bxv" = ( -/obj/structure/chair/office/dark{ - dir = 4 - }, -/obj/effect/landmark/start/depsec/science, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel, -/area/security/checkpoint/science) -"bxw" = ( -/obj/machinery/door/airlock/glass_mining{ - name = "Quartermaster"; - req_access_txt = "41" - }, -/turf/open/floor/plasteel, -/area/quartermaster/qm) -"bxx" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/quartermaster/qm) -"bxy" = ( -/turf/closed/wall, -/area/quartermaster/miningdock) -"bxz" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall, -/area/quartermaster/miningdock) -"bxA" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/mining{ - req_access_txt = "48" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/quartermaster/miningdock) -"bxB" = ( -/obj/item/weapon/paper_bin{ - pixel_x = 1; - pixel_y = 9 - }, -/obj/item/weapon/pen, -/obj/structure/table, -/turf/open/floor/plasteel/red/side{ - dir = 9 - }, -/area/security/checkpoint/supply) -"bxC" = ( -/obj/machinery/recharger{ - pixel_y = 4 - }, -/obj/structure/table, -/turf/open/floor/plasteel/red/side{ - dir = 1 - }, -/area/security/checkpoint/supply) -"bxD" = ( -/obj/item/weapon/book/manual/wiki/security_space_law, -/obj/structure/table, -/turf/open/floor/plasteel/red/side{ - dir = 1 - }, -/area/security/checkpoint/supply) -"bxE" = ( -/obj/machinery/computer/secure_data, -/obj/machinery/airalarm{ - dir = 8; - icon_state = "alarm0"; - pixel_x = 24 - }, -/turf/open/floor/plasteel/red/side{ - dir = 5 - }, -/area/security/checkpoint/supply) -"bxF" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white/side{ - dir = 9 - }, -/area/medical/research{ - name = "Research Division" - }) -"bxG" = ( -/obj/machinery/door/airlock/command{ - name = "Head of Personnel"; - req_access = null; - req_access_txt = "57" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel, -/area/crew_quarters/heads) -"bxH" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 5 - }, -/turf/closed/wall, -/area/engine/gravity_generator) -"bxI" = ( -/obj/machinery/ai_status_display, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 10 - }, -/turf/closed/wall, -/area/engine/gravity_generator) -"bxJ" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 9 - }, -/turf/closed/wall, -/area/engine/gravity_generator) -"bxK" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 6 - }, -/turf/closed/wall, -/area/engine/gravity_generator) -"bxL" = ( -/obj/machinery/camera{ - c_tag = "Central Hallway South-East"; - dir = 8 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"bxM" = ( -/obj/structure/chair/office/dark, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/effect/landmark/event_spawn, -/turf/open/floor/plasteel/red/side, -/area/security/checkpoint2) -"bxN" = ( -/obj/structure/sink{ - icon_state = "sink"; - dir = 8; - pixel_x = -12; - pixel_y = 2 - }, -/obj/structure/mirror{ - pixel_x = -28 - }, -/turf/open/floor/plasteel/white, -/area/medical/sleeper) -"bxO" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/white, -/area/medical/sleeper) -"bxP" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/cafeteria, -/area/crew_quarters/hor) -"bxQ" = ( -/turf/open/floor/plasteel, -/area/medical/sleeper) -"bxR" = ( -/obj/machinery/door/firedoor, -/turf/open/floor/plasteel/delivery, -/area/medical/sleeper) -"bxS" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/medical/sleeper) -"bxT" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible{ - dir = 5 - }, -/turf/open/floor/plasteel, -/area/medical/sleeper) -"bxU" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible{ - dir = 10; - pixel_x = 0; - initialize_directions = 10 - }, -/turf/open/floor/plasteel, -/area/medical/sleeper) -"bxV" = ( -/obj/machinery/atmospherics/pipe/manifold/general/visible, -/turf/open/floor/plasteel, -/area/medical/sleeper) -"bxW" = ( -/obj/machinery/door/airlock/glass_command{ - name = "Research Director"; - req_access_txt = "30" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/cafeteria, -/area/crew_quarters/hor) -"bxX" = ( -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/turf/open/floor/plasteel/white, -/area/medical/genetics) -"bxY" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/cafeteria, -/area/crew_quarters/hor) -"bxZ" = ( -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/cafeteria, -/area/crew_quarters/hor) -"bya" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/plasteel/cafeteria, -/area/crew_quarters/hor) -"byb" = ( -/obj/machinery/airalarm{ - dir = 8; - icon_state = "alarm0"; - pixel_x = 24 - }, -/turf/open/floor/plasteel/cafeteria, -/area/crew_quarters/hor) -"byc" = ( -/obj/structure/table, -/obj/item/weapon/paper_bin{ - pixel_x = -3; - pixel_y = 7 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/computer/stockexchange, -/turf/open/floor/plasteel/brown{ - dir = 2 - }, -/area/quartermaster/qm) -"byd" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/brown{ - dir = 2 - }, -/area/quartermaster/qm) -"bye" = ( -/obj/structure/sign/securearea, -/turf/closed/wall/r_wall, -/area/medical/genetics) -"byf" = ( -/turf/closed/wall/r_wall, -/area/toxins/server) -"byg" = ( -/obj/structure/table, -/obj/item/weapon/clipboard, -/obj/item/weapon/stamp/qm{ - pixel_x = 0; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/brown{ - dir = 2 - }, -/area/quartermaster/qm) -"byh" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/command{ - name = "Server Room"; - req_access = null; - req_access_txt = "30" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/black, -/area/toxins/server) -"byi" = ( -/turf/closed/wall, -/area/security/checkpoint/science) -"byj" = ( -/obj/machinery/door/airlock/glass_security{ - name = "Security Office"; - req_access_txt = "63" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/white, -/area/security/checkpoint/science) -"byk" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/checkpoint/science) -"byl" = ( -/obj/structure/table, -/obj/item/weapon/folder/yellow, -/obj/item/weapon/pen{ - pixel_x = 4; - pixel_y = 4 - }, -/obj/item/weapon/pen/red, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/brown{ - dir = 2 - }, -/area/quartermaster/qm) -"bym" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/quartermaster/qm) -"byn" = ( -/obj/structure/filingcabinet, -/obj/machinery/light_switch{ - pixel_y = -25 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/brown{ - dir = 6 - }, -/area/quartermaster/qm) -"byo" = ( -/obj/structure/table, -/obj/machinery/button/door{ - id = "Biohazard"; - name = "Biohazard Shutter Control"; - pixel_x = -5; - pixel_y = 5; - req_access_txt = "47" - }, -/obj/machinery/button/door{ - id = "rnd2"; - name = "Research Lab Shutter Control"; - pixel_x = 5; - pixel_y = 5; - req_access_txt = "47" - }, -/turf/open/floor/plasteel/cafeteria, -/area/crew_quarters/hor) -"byp" = ( -/obj/machinery/computer/robotics, -/obj/structure/window/reinforced{ - dir = 4 - }, -/turf/open/floor/plasteel/cafeteria, -/area/crew_quarters/hor) -"byq" = ( -/obj/structure/chair/office/light{ - dir = 8 - }, -/obj/effect/landmark/start{ - name = "Research Director" - }, -/turf/open/floor/plasteel/cafeteria, -/area/crew_quarters/hor) -"byr" = ( -/obj/machinery/holopad, -/turf/open/floor/plasteel/white, -/area/crew_quarters/hor) -"bys" = ( -/obj/structure/rack, -/obj/item/device/aicard, -/turf/open/floor/plasteel/warnwhite{ - dir = 8 - }, -/area/crew_quarters/hor) -"byt" = ( -/turf/closed/wall/r_wall, -/area/crew_quarters/hor) -"byu" = ( -/obj/structure/displaycase/labcage, -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/turf/open/floor/plasteel/warnwhite{ - dir = 4 - }, -/area/crew_quarters/hor) -"byv" = ( -/obj/structure/grille, -/obj/machinery/door/poddoor/preopen{ - id = "telelab"; - name = "test chamber blast door" - }, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/firedoor/heavy, -/turf/open/floor/engine, -/area/toxins/explab) -"byw" = ( -/obj/machinery/door/poddoor/preopen{ - id = "telelab"; - name = "test chamber blast door" - }, -/obj/machinery/door/firedoor/heavy, -/turf/open/floor/engine, -/area/toxins/explab) -"byx" = ( -/obj/machinery/atmospherics/components/unary/thermomachine/heater{ - dir = 8 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"byy" = ( -/obj/machinery/atmospherics/pipe/manifold4w/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/quartermaster/miningdock) -"byz" = ( -/turf/open/floor/plasteel/brown{ - dir = 1 - }, -/area/quartermaster/qm) -"byA" = ( -/obj/machinery/power/apc{ - dir = 1; - name = "Quartermaster APC"; - pixel_y = 24 - }, -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/turf/open/floor/plasteel/brown{ - dir = 1 - }, -/area/quartermaster/qm) -"byB" = ( -/obj/machinery/disposal/bin, -/obj/structure/disposalpipe/trunk, -/turf/open/floor/plasteel/brown{ - dir = 1 - }, -/area/quartermaster/qm) -"byC" = ( -/obj/machinery/holopad, -/turf/open/floor/plasteel/brown{ - dir = 1 - }, -/area/quartermaster/qm) -"byD" = ( -/obj/structure/closet/secure_closet/quartermaster, -/obj/machinery/airalarm{ - pixel_y = 23 - }, -/turf/open/floor/plasteel/brown{ - dir = 5 - }, -/area/quartermaster/qm) -"byE" = ( -/turf/open/floor/plasteel, -/area/quartermaster/miningdock) -"byF" = ( -/obj/machinery/power/apc{ - dir = 1; - name = "Mining Dock APC"; - pixel_y = 24 - }, -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/turf/open/floor/plasteel, -/area/quartermaster/miningdock) -"byG" = ( -/obj/structure/disposalpipe/segment, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/quartermaster/miningdock) -"byH" = ( -/obj/machinery/light_switch{ - pixel_y = -25 - }, -/obj/structure/closet, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/red/side{ - dir = 10 - }, -/area/security/checkpoint/supply) -"byI" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/plasteel/red/side{ - dir = 8 - }, -/area/security/checkpoint/supply) -"byJ" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/security/checkpoint/supply) -"byK" = ( -/turf/open/floor/plasteel, -/area/security/checkpoint/supply) -"byL" = ( -/obj/structure/chair/office/dark{ - dir = 1 - }, -/obj/effect/landmark/start/depsec/supply, -/turf/open/floor/plasteel, -/area/security/checkpoint/supply) -"byM" = ( -/obj/item/device/radio/intercom{ - dir = 4; - name = "Station Intercom (General)"; - pixel_x = 27 - }, -/obj/machinery/computer/security/mining{ - network = list("MINE","AuxBase") - }, -/turf/open/floor/plasteel/red/side{ - dir = 4 - }, -/area/security/checkpoint/supply) -"byN" = ( -/obj/machinery/newscaster{ - pixel_y = 32 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"byO" = ( -/obj/machinery/requests_console{ - department = "Security"; - departmentType = 5; - pixel_y = -30 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/red/side, -/area/security/checkpoint/supply) -"byP" = ( -/obj/structure/sign/securearea{ - pixel_y = 32 - }, -/turf/open/floor/plasteel/blue/side{ - dir = 1 - }, -/area/hallway/primary/central) -"byQ" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/blue/side{ - dir = 1 - }, -/area/hallway/primary/central) -"byR" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/blue/side{ - dir = 1 - }, -/area/hallway/primary/central) -"byS" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/corner{ - dir = 8 - }, -/area/hallway/primary/central) -"byT" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/red/side, -/area/security/checkpoint/supply) -"byU" = ( -/obj/machinery/light, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"byV" = ( -/obj/structure/extinguisher_cabinet{ - pixel_x = 5; - pixel_y = -32 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"byW" = ( -/obj/structure/extinguisher_cabinet{ - pixel_x = 5; - pixel_y = -32 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"byX" = ( -/obj/machinery/airalarm{ - dir = 8; - icon_state = "alarm0"; - pixel_x = 24 - }, -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"byY" = ( -/obj/structure/grille, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/window/fulltile, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/medical/sleeper) -"byZ" = ( -/obj/structure/grille, -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/obj/structure/window/fulltile, -/turf/open/floor/plating, -/area/medical/sleeper) -"bza" = ( -/obj/structure/chair, -/obj/machinery/airalarm{ - frequency = 1439; - pixel_y = 23 - }, -/turf/open/floor/plasteel/black, -/area/medical/sleeper) -"bzb" = ( -/obj/structure/grille, -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/obj/structure/window/fulltile, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/medical/sleeper) -"bzc" = ( -/obj/machinery/door/airlock/glass_medical{ - id_tag = null; - name = "Recovery Room"; - req_access_txt = "0" - }, -/turf/open/floor/plasteel/white, -/area/medical/sleeper) -"bzd" = ( -/obj/structure/table, -/obj/item/stack/packageWrap, -/obj/item/stack/packageWrap, -/obj/item/weapon/pen, -/obj/machinery/requests_console{ - announcementConsole = 0; - department = "Medbay"; - departmentType = 1; - name = "Medbay RC"; - pixel_x = 0; - pixel_y = 30; - pixel_z = 0 - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"bze" = ( -/obj/machinery/airalarm{ - dir = 4; - icon_state = "alarm0"; - pixel_x = -22 - }, -/obj/machinery/shower{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/medical/sleeper) -"bzf" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/plasteel/white, -/area/medical/sleeper) -"bzg" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 6 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"bzh" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible{ - dir = 6 - }, -/turf/open/floor/plasteel, -/area/medical/sleeper) -"bzi" = ( -/obj/machinery/atmospherics/pipe/manifold/general/visible{ - dir = 4; - initialize_directions = 11 - }, -/turf/open/floor/plasteel, -/area/medical/sleeper) -"bzj" = ( -/obj/machinery/atmospherics/pipe/manifold/general/visible{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/medical/sleeper) -"bzk" = ( -/obj/structure/reagent_dispensers/fueltank, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 9 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"bzl" = ( -/obj/machinery/dna_scannernew, -/turf/open/floor/plasteel/whiteblue/side{ - dir = 10 - }, -/area/medical/genetics) -"bzm" = ( -/obj/machinery/clonepod, -/turf/open/floor/plasteel/whiteblue/side{ - dir = 6 - }, -/area/medical/genetics) -"bzn" = ( -/obj/machinery/computer/cloning, -/obj/machinery/airalarm{ - dir = 1; - icon_state = "alarm0"; - pixel_y = -22 - }, -/turf/open/floor/plasteel/whiteblue/side{ - dir = 2 - }, -/area/medical/genetics) -"bzo" = ( -/obj/machinery/disposal/bin, -/obj/structure/disposalpipe/trunk{ - dir = 1 - }, -/obj/machinery/light_switch{ - pixel_y = -28 - }, -/turf/open/floor/plasteel/white, -/area/medical/genetics) -"bzp" = ( -/obj/structure/closet/secure_closet/personal/patient, -/obj/machinery/light, -/turf/open/floor/plasteel/white, -/area/medical/genetics) -"bzq" = ( -/obj/structure/closet/secure_closet/medical1, -/turf/open/floor/plasteel/white, -/area/medical/genetics) -"bzr" = ( -/obj/structure/closet/wardrobe/genetics_white, -/obj/item/device/radio/intercom{ - name = "Station Intercom (General)"; - pixel_y = -29 - }, -/turf/open/floor/plasteel/white, -/area/medical/genetics) -"bzs" = ( -/turf/closed/wall, -/area/maintenance/asmaint) -"bzt" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - external_pressure_bound = 140; - on = 1; - pressure_checks = 0 - }, -/turf/open/floor/bluegrid{ - name = "Server Base"; - initial_gas_mix = "n2=500;TEMP=80" - }, -/area/toxins/server) -"bzu" = ( -/obj/machinery/r_n_d/server/robotics, -/turf/open/floor/bluegrid{ - name = "Server Base"; - initial_gas_mix = "n2=500;TEMP=80" - }, -/area/toxins/server) -"bzv" = ( -/obj/machinery/atmospherics/pipe/simple{ - dir = 10 - }, -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/turf/open/floor/plasteel/black, -/area/toxins/server) -"bzw" = ( -/obj/structure/grille, -/obj/machinery/atmospherics/pipe/simple{ - dir = 4 - }, -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'SERVER ROOM'."; - name = "SERVER ROOM"; - pixel_y = 32 - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/toxins/server) -"bzx" = ( -/obj/machinery/atmospherics/components/unary/thermomachine/freezer{ - target_temperature = 80; - dir = 2; - on = 1 - }, -/obj/effect/decal/cleanable/cobweb/cobweb2, -/turf/open/floor/plasteel/black, -/area/toxins/server) -"bzy" = ( -/obj/machinery/camera{ - c_tag = "Server Room"; - dir = 2; - network = list("SS13","RD"); - pixel_x = 22 - }, -/obj/machinery/power/apc{ - dir = 1; - name = "Server Room APC"; - pixel_x = 0; - pixel_y = 25 - }, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/turf/open/floor/plasteel/black, -/area/toxins/server) -"bzz" = ( -/obj/structure/reagent_dispensers/peppertank{ - pixel_x = -30; - pixel_y = 0 - }, -/obj/machinery/airalarm{ - pixel_y = 25 - }, -/obj/structure/closet, -/turf/open/floor/plasteel/red/side{ - dir = 9 - }, -/area/security/checkpoint/science) -"bzA" = ( -/obj/machinery/light{ - dir = 4 - }, -/turf/open/floor/plasteel/white/side{ - dir = 9 - }, -/area/medical/research{ - name = "Research Division" - }) -"bzB" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/white, -/area/medical/research{ - name = "Research Division" - }) -"bzC" = ( -/obj/structure/table, -/obj/machinery/recharger{ - pixel_y = 4 - }, -/turf/open/floor/plasteel/red/side{ - dir = 5 - }, -/area/security/checkpoint/science) -"bzD" = ( -/obj/structure/table, -/obj/machinery/computer/security/telescreen{ - desc = "Used for watching the RD's goons from the safety of your own office."; - name = "Research Monitor"; - network = list("RD"); - pixel_x = 0; - pixel_y = 2 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/red/side{ - dir = 1 - }, -/area/security/checkpoint/science) -"bzE" = ( -/turf/open/floor/plasteel/white/side{ - dir = 5 - }, -/area/medical/research{ - name = "Research Division" - }) -"bzF" = ( -/obj/machinery/firealarm{ - dir = 4; - pixel_x = 24 - }, -/turf/open/floor/plasteel, -/area/quartermaster/miningdock) -"bzG" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass{ - name = "Central Access" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/yellow/corner{ - dir = 2 - }, -/area/hallway/primary/central) -"bzH" = ( -/obj/structure/table, -/obj/item/weapon/hemostat, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/white/side{ - dir = 2 - }, -/area/medical/sleeper) -"bzI" = ( -/obj/structure/disposalpipe/segment, -/obj/structure/table, -/obj/item/weapon/surgicaldrill, -/turf/open/floor/plasteel, -/area/medical/sleeper) -"bzJ" = ( -/obj/machinery/computer/mecha, -/obj/structure/window/reinforced{ - dir = 4 - }, -/turf/open/floor/plasteel/cafeteria, -/area/crew_quarters/hor) -"bzK" = ( -/obj/structure/table, -/obj/item/weapon/scalpel{ - pixel_y = 12 - }, -/obj/item/weapon/circular_saw, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/white, -/area/medical/sleeper) -"bzL" = ( -/turf/open/floor/plasteel/warnwhite{ - dir = 2 - }, -/area/crew_quarters/hor) -"bzM" = ( -/obj/structure/rack, -/obj/item/device/taperecorder{ - pixel_x = -3 - }, -/obj/item/device/paicard{ - pixel_x = 4 - }, -/turf/open/floor/plasteel/warnwhite{ - dir = 10 - }, -/area/crew_quarters/hor) -"bzN" = ( -/obj/machinery/modular_computer/console/preset/research, -/turf/open/floor/plasteel/warnwhite{ - dir = 6 - }, -/area/crew_quarters/hor) -"bzO" = ( -/turf/open/floor/engine, -/area/toxins/explab) -"bzP" = ( -/obj/machinery/computer/cargo, -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/turf/open/floor/plasteel/brown{ - dir = 8 - }, -/area/quartermaster/qm) -"bzQ" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/turf/open/floor/plasteel, -/area/quartermaster/qm) -"bzR" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/turf/open/floor/plasteel, -/area/quartermaster/qm) -"bzS" = ( -/obj/structure/table, -/obj/item/weapon/cautery{ - pixel_x = 4 - }, -/turf/open/floor/plasteel, -/area/medical/sleeper) -"bzT" = ( -/obj/structure/chair/office/dark, -/obj/effect/landmark/start{ - name = "Quartermaster" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/turf/open/floor/plasteel, -/area/quartermaster/qm) -"bzU" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 2 - }, -/area/medical/sleeper) -"bzV" = ( -/obj/structure/closet/wardrobe/white/medical, -/turf/open/floor/plasteel/white, -/area/medical/sleeper) -"bzW" = ( -/obj/structure/closet/l3closet, -/turf/open/floor/plasteel/white, -/area/medical/sleeper) -"bzX" = ( -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 8 - }, -/area/medical/medbay) -"bzY" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/quartermaster/miningdock) -"bzZ" = ( -/obj/machinery/door/firedoor/heavy, -/turf/open/floor/plasteel/white/side{ - dir = 9 - }, -/area/medical/research{ - name = "Research Division" - }) -"bAa" = ( -/obj/machinery/door/firedoor/heavy, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/white, -/area/medical/research{ - name = "Research Division" - }) -"bAb" = ( -/obj/structure/chair/office/dark{ - dir = 8 - }, -/obj/effect/landmark/start{ - name = "Shaft Miner" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/quartermaster/miningdock) -"bAc" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/quartermaster/miningdock) -"bAd" = ( -/obj/item/weapon/screwdriver{ - pixel_y = 10 - }, -/obj/machinery/light{ - dir = 4 - }, -/obj/item/device/radio/off, -/turf/open/floor/plasteel/red/side{ - dir = 4 - }, -/area/security/checkpoint/supply) -"bAe" = ( -/obj/machinery/navbeacon{ - codes_txt = "patrol;next_patrol=AIW"; - location = "QM" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"bAf" = ( -/obj/machinery/holopad, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"bAg" = ( -/obj/machinery/navbeacon{ - codes_txt = "patrol;next_patrol=AftH"; - location = "AIW" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"bAh" = ( -/obj/machinery/navbeacon{ - codes_txt = "patrol;next_patrol=CHE"; - location = "AIE" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"bAi" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - on = 1 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"bAj" = ( -/obj/machinery/navbeacon{ - codes_txt = "patrol;next_patrol=HOP"; - location = "CHE" - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"bAk" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"bAl" = ( -/obj/structure/chair, -/turf/open/floor/plasteel/black, -/area/medical/sleeper) -"bAm" = ( -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/quartermaster/miningdock) -"bAn" = ( -/obj/machinery/door/airlock/maintenance{ - name = "Mining Maintenance"; - req_access_txt = "48" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/quartermaster/miningdock) -"bAo" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/machinery/power/apc{ - dir = 1; - name = "Cargo Security APC"; - pixel_x = 1; - pixel_y = 24 - }, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/security/checkpoint/supply) -"bAp" = ( -/obj/structure/closet/secure_closet/medical1, -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/obj/machinery/firealarm{ - dir = 8; - pixel_x = -24 - }, -/turf/open/floor/plasteel/white, -/area/medical/sleeper) -"bAq" = ( -/obj/machinery/sleeper{ - icon_state = "sleeper-open"; - dir = 8 - }, -/obj/machinery/camera{ - c_tag = "Medbay Treatment Center"; - dir = 8; - network = list("SS13") - }, -/turf/open/floor/plasteel, -/area/medical/sleeper) -"bAr" = ( -/obj/machinery/portable_atmospherics/canister/oxygen, -/turf/open/floor/plasteel, -/area/medical/sleeper) -"bAs" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible{ - dir = 1; - name = "Connector Port (Air Supply)" - }, -/obj/machinery/portable_atmospherics/canister/oxygen, -/obj/machinery/firealarm{ - dir = 1; - pixel_y = -24 - }, -/obj/machinery/light, -/turf/open/floor/plasteel, -/area/medical/sleeper) -"bAt" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/wrench/medical, -/turf/open/floor/plasteel, -/area/medical/sleeper) -"bAu" = ( -/obj/machinery/atmospherics/components/unary/thermomachine/freezer{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/medical/sleeper) -"bAv" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible{ - dir = 1; - name = "Connector Port (Air Supply)" - }, -/obj/machinery/portable_atmospherics/canister/oxygen, -/turf/open/floor/plasteel, -/area/medical/sleeper) -"bAw" = ( -/turf/open/floor/plating, -/area/maintenance/asmaint) -"bAx" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"bAy" = ( -/obj/effect/landmark{ - name = "blobstart" - }, -/turf/open/floor/plasteel/black{ - name = "Server Walkway"; - initial_gas_mix = "n2=500;TEMP=80" - }, -/area/toxins/server) -"bAz" = ( -/obj/machinery/airalarm/server{ - dir = 4; - pixel_x = -22; - pixel_y = 0 - }, -/obj/machinery/light/small{ - dir = 8 - }, -/turf/open/floor/plasteel/black{ - name = "Server Walkway"; - initial_gas_mix = "n2=500;TEMP=80" - }, -/area/toxins/server) -"bAA" = ( -/obj/machinery/atmospherics/pipe/manifold{ - dir = 8 - }, -/turf/open/floor/plasteel/black, -/area/toxins/server) -"bAB" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass_command{ - name = "Server Room"; - req_access_txt = "30" - }, -/turf/open/floor/plasteel/black, -/area/toxins/server) -"bAC" = ( -/obj/machinery/atmospherics/pipe/simple{ - dir = 9 - }, -/obj/machinery/light/small{ - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/toxins/server) -"bAD" = ( -/obj/structure/chair/office/light, -/obj/machinery/atmospherics/pipe/simple{ - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/toxins/server) -"bAE" = ( -/obj/machinery/camera{ - c_tag = "Security Post - Science"; - dir = 4; - network = list("SS13","RD") - }, -/obj/machinery/newscaster{ - pixel_x = -30 - }, -/obj/machinery/light{ - dir = 8 - }, -/turf/open/floor/plasteel/red/side{ - dir = 8 - }, -/area/security/checkpoint/science) -"bAF" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/turf/open/floor/plasteel, -/area/security/checkpoint/science) -"bAG" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/turf/open/floor/plasteel, -/area/security/checkpoint/science) -"bAH" = ( -/obj/structure/table, -/obj/item/weapon/book/manual/wiki/security_space_law, -/turf/open/floor/plasteel/red/side{ - dir = 4 - }, -/area/security/checkpoint/science) -"bAI" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"bAJ" = ( -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"bAK" = ( -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 10 - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"bAL" = ( -/obj/structure/table, -/obj/item/device/plant_analyzer, -/obj/item/weapon/stock_parts/cell/high/plus, -/turf/open/floor/plating, -/area/storage/tech) -"bAM" = ( -/obj/structure/table, -/obj/item/device/analyzer, -/obj/item/device/healthanalyzer, -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/plating, -/area/storage/tech) -"bAN" = ( -/obj/machinery/door/firedoor, -/turf/open/floor/plasteel, -/area/hallway/primary/aft) -"bAO" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/caution/corner{ - dir = 8 - }, -/area/hallway/primary/aft) -"bAP" = ( -/obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/yellow/corner{ - dir = 2 - }, -/area/hallway/primary/aft) -"bAQ" = ( -/obj/effect/landmark{ - name = "blobstart" - }, -/obj/effect/landmark{ - name = "xeno_spawn"; - pixel_x = -1 - }, -/turf/open/floor/engine, -/area/toxins/explab) -"bAR" = ( -/obj/machinery/r_n_d/experimentor, -/turf/open/floor/engine, -/area/toxins/explab) -"bAS" = ( -/obj/machinery/computer/security/mining{ - network = list("MINE","AuxBase") - }, -/obj/machinery/camera{ - c_tag = "Quartermaster's Office"; - dir = 4 - }, -/obj/item/device/radio/intercom{ - name = "Station Intercom (General)"; - pixel_y = -35 - }, -/obj/machinery/status_display{ - density = 0; - pixel_x = -32; - pixel_y = 0; - supply_display = 1 - }, -/turf/open/floor/plasteel/brown{ - dir = 10 - }, -/area/quartermaster/qm) -"bAT" = ( -/obj/structure/closet/jcloset, -/turf/open/floor/plasteel, -/area/janitor) -"bAU" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel, -/area/janitor) -"bAV" = ( -/obj/machinery/door/window/westleft{ - name = "Janitoral Delivery"; - req_access_txt = "26" - }, -/turf/open/floor/plasteel/delivery, -/area/janitor) -"bAW" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/open/floor/plasteel/white, -/area/medical/sleeper) -"bAX" = ( -/obj/structure/disposalpipe/segment, -/obj/structure/table, -/obj/item/clothing/gloves/color/latex, -/obj/item/clothing/mask/surgical, -/obj/item/clothing/suit/apron/surgical, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 6 - }, -/turf/open/floor/plasteel/white/side{ - dir = 4 - }, -/area/medical/sleeper) -"bAY" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 1 - }, -/turf/open/floor/plasteel/white, -/area/medical/sleeper) -"bAZ" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/quartermaster/miningdock) -"bBa" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/quartermaster/miningdock) -"bBb" = ( -/obj/effect/landmark/start{ - name = "Medical Doctor" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/medical/sleeper) -"bBc" = ( -/obj/structure/table, -/obj/item/weapon/surgical_drapes, -/obj/item/weapon/razor, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white/side{ - dir = 8 - }, -/area/medical/sleeper) -"bBd" = ( -/obj/structure/table, -/obj/structure/bedsheetbin{ - pixel_x = 2 - }, -/obj/item/clothing/suit/straight_jacket, -/obj/item/clothing/mask/muzzle, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 8 - }, -/area/medical/sleeper) -"bBe" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/open/floor/plasteel/whiteblue/side{ - dir = 4 - }, -/area/medical/sleeper) -"bBf" = ( -/obj/structure/filingcabinet, -/obj/structure/reagent_dispensers/peppertank{ - pixel_x = 30; - pixel_y = 0 - }, -/obj/machinery/newscaster{ - pixel_x = 0; - pixel_y = -32 - }, -/obj/machinery/camera{ - c_tag = "Security Post - Cargo"; - dir = 1 - }, -/turf/open/floor/plasteel/red/side{ - dir = 6 - }, -/area/security/checkpoint/supply) -"bBg" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"bBh" = ( -/obj/structure/disposalpipe/segment, -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/turf/open/floor/plasteel/brown/corner{ - dir = 8 - }, -/area/hallway/primary/central) -"bBi" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"bBj" = ( -/obj/machinery/airalarm{ - dir = 1; - icon_state = "alarm0"; - pixel_y = -22 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"bBk" = ( -/obj/machinery/door/firedoor, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/machinery/camera{ - c_tag = "Central Primary Hallway South-West"; - dir = 1 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"bBl" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"bBm" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/whiteblue/side{ - dir = 8 - }, -/area/medical/medbay) -"bBn" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"bBo" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"bBp" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"bBq" = ( -/obj/structure/disposalpipe/junction{ - icon_state = "pipe-j2"; - dir = 2 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/sign/directions/engineering{ - pixel_x = -32; - pixel_y = -40 - }, -/obj/structure/sign/directions/medical{ - dir = 4; - icon_state = "direction_med"; - pixel_x = -32; - pixel_y = -24 - }, -/obj/structure/sign/directions/evac{ - dir = 4; - icon_state = "direction_evac"; - pixel_x = -32; - pixel_y = -32 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"bBr" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/status_display{ - pixel_y = -32 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"bBs" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"bBt" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/camera{ - c_tag = "Central Primary Hallway South"; - dir = 1 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"bBu" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/light, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"bBv" = ( -/obj/structure/disposalpipe/sortjunction{ - dir = 8; - icon_state = "pipe-j2s"; - sortType = 22 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"bBw" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 10 - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"bBx" = ( -/obj/machinery/door/firedoor, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"bBy" = ( -/obj/machinery/light, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"bBz" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"bBA" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/structure/disposalpipe/junction{ - dir = 8; - icon_state = "pipe-j2" - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"bBB" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"bBC" = ( -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"bBD" = ( -/turf/open/floor/plasteel/white/side{ - dir = 9 - }, -/area/medical/research{ - name = "Research Division" - }) -"bBE" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/structure/disposalpipe/segment, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/turf/open/floor/plasteel/white, -/area/medical/research{ - name = "Research Division" - }) -"bBF" = ( -/obj/machinery/portable_atmospherics/scrubber, -/obj/machinery/airalarm{ - frequency = 1439; - locked = 0; - pixel_y = 23 - }, -/obj/item/weapon/storage/firstaid/toxin, -/turf/open/floor/plasteel/warnwhite{ - dir = 2 - }, -/area/toxins/mixing) -"bBG" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/quartermaster/miningdock) -"bBH" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/quartermaster/miningdock) -"bBI" = ( -/obj/machinery/airalarm{ - dir = 8; - icon_state = "alarm0"; - pixel_x = 24 - }, -/obj/structure/closet/wardrobe/miner, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/quartermaster/miningdock) -"bBJ" = ( -/obj/machinery/firealarm{ - dir = 2; - pixel_y = 24 - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"bBK" = ( -/obj/machinery/disposal/bin, -/obj/structure/disposalpipe/trunk, -/obj/machinery/light{ - dir = 1 - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"bBL" = ( -/obj/machinery/vending/medical{ - pixel_x = -2 - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"bBM" = ( -/obj/structure/table, -/obj/item/stack/sheet/glass{ - amount = 10 - }, -/obj/item/device/multitool, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/syndicate) -"bBN" = ( -/turf/closed/wall, -/area/medical/cmo) -"bBO" = ( -/obj/machinery/computer/med_data, -/obj/machinery/airalarm{ - frequency = 1439; - pixel_y = 23 - }, -/turf/open/floor/plasteel/barber, -/area/medical/cmo) -"bBP" = ( -/obj/machinery/computer/crew, -/obj/machinery/requests_console{ - announcementConsole = 1; - department = "Chief Medical Officer's Desk"; - departmentType = 5; - name = "Chief Medical Officer RC"; - pixel_x = 0; - pixel_y = 32 - }, -/turf/open/floor/plasteel/barber, -/area/medical/cmo) -"bBQ" = ( -/obj/machinery/disposal/bin, -/obj/structure/disposalpipe/trunk, -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/turf/open/floor/plasteel/barber, -/area/medical/cmo) -"bBR" = ( -/obj/structure/reagent_dispensers/fueltank, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"bBS" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - external_pressure_bound = 120; - initialize_directions = 1; - internal_pressure_bound = 4000; - on = 1; - pressure_checks = 2; - pump_direction = 0 - }, -/turf/open/floor/bluegrid{ - name = "Server Base"; - initial_gas_mix = "n2=500;TEMP=80" - }, -/area/toxins/server) -"bBT" = ( -/obj/machinery/r_n_d/server/core, -/turf/open/floor/bluegrid{ - name = "Server Base"; - initial_gas_mix = "n2=500;TEMP=80" - }, -/area/toxins/server) -"bBU" = ( -/obj/machinery/atmospherics/pipe/simple{ - dir = 9 - }, -/obj/machinery/firealarm{ - dir = 1; - pixel_y = -24 - }, -/turf/open/floor/plasteel/black, -/area/toxins/server) -"bBV" = ( -/obj/structure/grille, -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'SERVER ROOM'."; - name = "SERVER ROOM"; - pixel_y = -32 - }, -/obj/machinery/atmospherics/pipe/simple{ - dir = 4 - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/toxins/server) -"bBW" = ( -/obj/structure/table, -/obj/item/weapon/folder/white, -/obj/item/weapon/pen, -/turf/open/floor/plasteel/black, -/area/toxins/server) -"bBX" = ( -/obj/machinery/computer/rdservercontrol, -/turf/open/floor/plasteel/black, -/area/toxins/server) -"bBY" = ( -/obj/item/device/radio/intercom{ - pixel_x = -25 - }, -/obj/structure/filingcabinet, -/turf/open/floor/plasteel/red/side{ - dir = 10 - }, -/area/security/checkpoint/science) -"bBZ" = ( -/obj/item/weapon/screwdriver{ - pixel_y = 10 - }, -/obj/item/device/radio/off, -/turf/open/floor/plasteel/red/side, -/area/security/checkpoint/science) -"bCa" = ( -/obj/machinery/power/apc{ - dir = 2; - name = "Science Security APC"; - pixel_y = -24 - }, -/obj/structure/cable, -/turf/open/floor/plasteel/red/side, -/area/security/checkpoint/science) -"bCb" = ( -/obj/structure/table, -/obj/item/weapon/paper_bin{ - pixel_x = 1; - pixel_y = 9 - }, -/obj/item/weapon/pen, -/turf/open/floor/plasteel/red/side{ - dir = 6 - }, -/area/security/checkpoint/science) -"bCc" = ( -/obj/machinery/computer/secure_data, -/obj/machinery/requests_console{ - department = "Security"; - departmentType = 5; - pixel_y = -30 - }, -/turf/open/floor/plasteel/red/side, -/area/security/checkpoint/science) -"bCd" = ( -/obj/structure/disposalpipe/sortjunction{ - dir = 8; - icon_state = "pipe-j1s"; - sortType = 15 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"bCe" = ( -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"bCf" = ( -/obj/machinery/power/apc{ - dir = 8; - name = "RD Office APC"; - pixel_x = -25 - }, -/obj/structure/cable, -/obj/machinery/light_switch{ - pixel_y = -23 - }, -/obj/item/weapon/twohanded/required/kirbyplants/dead, -/turf/open/floor/plasteel/cafeteria, -/area/crew_quarters/hor) -"bCg" = ( -/obj/structure/table, -/obj/item/weapon/cartridge/signal/toxins, -/obj/item/weapon/cartridge/signal/toxins{ - pixel_x = -4; - pixel_y = 2 - }, -/obj/item/weapon/cartridge/signal/toxins{ - pixel_x = 4; - pixel_y = 6 - }, -/obj/machinery/camera{ - c_tag = "Research Director's Office"; - dir = 1; - network = list("SS13","RD") - }, -/obj/item/device/radio/intercom{ - name = "Station Intercom (General)"; - pixel_y = -29 - }, -/turf/open/floor/plasteel/cafeteria, -/area/crew_quarters/hor) -"bCh" = ( -/obj/machinery/keycard_auth{ - pixel_x = 0; - pixel_y = -24 - }, -/obj/machinery/light, -/obj/machinery/computer/card/minor/rd, -/turf/open/floor/plasteel/cafeteria, -/area/crew_quarters/hor) -"bCi" = ( -/obj/machinery/disposal/bin, -/obj/structure/disposalpipe/trunk{ - dir = 1 - }, -/turf/open/floor/plasteel/cafeteria, -/area/crew_quarters/hor) -"bCj" = ( -/obj/structure/closet/secure_closet/RD, -/turf/open/floor/plasteel/cafeteria, -/area/crew_quarters/hor) -"bCk" = ( -/obj/structure/filingcabinet/chestdrawer, -/turf/open/floor/plasteel/cafeteria, -/area/crew_quarters/hor) -"bCl" = ( -/obj/machinery/camera{ - c_tag = "Experimentor Lab Chamber"; - dir = 1; - network = list("SS13","RD") - }, -/obj/machinery/light, -/obj/structure/sign/nosmoking_2{ - pixel_y = -32 - }, -/turf/open/floor/engine, -/area/toxins/explab) -"bCm" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible{ - dir = 5 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"bCn" = ( -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/aft) -"bCo" = ( -/obj/structure/table, -/obj/item/weapon/paper_bin{ - pixel_x = 1; - pixel_y = 9 - }, -/turf/open/floor/plasteel, -/area/quartermaster/miningdock) -"bCp" = ( -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/yellow/corner{ - dir = 2 - }, -/area/hallway/primary/aft) -"bCq" = ( -/turf/closed/wall, -/area/maintenance/aft) -"bCr" = ( -/obj/machinery/door/airlock/maintenance{ - req_access_txt = "12" - }, -/obj/structure/disposalpipe/segment, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"bCs" = ( -/turf/closed/wall, -/area/storage/tech) -"bCt" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/plasteel, -/area/janitor) -"bCu" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass{ - name = "Central Access" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/caution/corner{ - dir = 8 - }, -/area/hallway/primary/central) -"bCv" = ( -/turf/closed/wall, -/area/janitor) -"bCw" = ( -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 10 - }, -/turf/open/floor/plasteel, -/area/janitor) -"bCx" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 8 - }, -/obj/effect/landmark/event_spawn, -/turf/open/floor/plasteel, -/area/gateway) -"bCy" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/closed/wall, -/area/janitor) -"bCz" = ( -/obj/machinery/door/airlock/maintenance{ - req_access_txt = "12" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"bCA" = ( -/obj/machinery/vending/cigarette, -/turf/open/floor/plasteel/black, -/area/hallway/primary/central) -"bCB" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/door/airlock/maintenance{ - name = "Surgery Maintenance"; - req_access_txt = "45" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/medical/sleeper) -"bCC" = ( -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 6 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"bCD" = ( -/obj/structure/table, -/obj/item/weapon/retractor, -/turf/open/floor/plasteel/white/side{ - dir = 2 - }, -/area/medical/sleeper) -"bCE" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 6 - }, -/turf/open/floor/plasteel/white, -/area/medical/sleeper) -"bCF" = ( -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 9 - }, -/turf/open/floor/plasteel/white, -/area/medical/sleeper) -"bCG" = ( -/obj/structure/table, -/obj/item/weapon/folder/white, -/obj/item/weapon/gun/syringe, -/obj/item/weapon/reagent_containers/dropper, -/obj/item/weapon/soap/nanotrasen, -/turf/open/floor/plasteel/white, -/area/medical/sleeper) -"bCH" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/white, -/area/medical/sleeper) -"bCI" = ( -/obj/structure/chair/office/dark{ - dir = 4 - }, -/obj/effect/landmark/event_spawn, -/turf/open/floor/wood, -/area/library) -"bCJ" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/medical/sleeper) -"bCK" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 1 - }, -/turf/open/floor/plasteel/white, -/area/medical/sleeper) -"bCL" = ( -/obj/structure/closet/secure_closet/medical3, -/obj/machinery/camera{ - c_tag = "Medbay Storage"; - dir = 2; - network = list("SS13") - }, -/turf/open/floor/plasteel/white, -/area/medical/sleeper) -"bCM" = ( -/obj/structure/closet/secure_closet/medical3, -/obj/machinery/airalarm{ - pixel_y = 24 - }, -/turf/open/floor/plasteel/white, -/area/medical/sleeper) -"bCN" = ( -/obj/structure/disposalpipe/trunk, -/obj/machinery/disposal/bin, -/turf/open/floor/plasteel/white, -/area/medical/sleeper) -"bCO" = ( -/obj/structure/table, -/obj/item/weapon/storage/box/bodybags{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/storage/box/rxglasses, -/turf/open/floor/plasteel/white, -/area/medical/sleeper) -"bCP" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/medical/sleeper) -"bCQ" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/medical/sleeper) -"bCR" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"bCS" = ( -/obj/machinery/airalarm{ - dir = 8; - icon_state = "alarm0"; - pixel_x = 24 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/iv_drip, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 4 - }, -/area/medical/sleeper) -"bCT" = ( -/obj/structure/table, -/obj/item/weapon/storage/belt/medical{ - pixel_x = 0; - pixel_y = 2 - }, -/obj/item/weapon/storage/belt/medical{ - pixel_x = 0; - pixel_y = 2 - }, -/obj/item/weapon/storage/belt/medical{ - pixel_x = 0; - pixel_y = 2 - }, -/obj/item/clothing/neck/stethoscope, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/medical/sleeper) -"bCU" = ( -/obj/item/device/radio/intercom{ - broadcasting = 0; - freerange = 0; - frequency = 1485; - listening = 1; - name = "Station Intercom (Medbay)"; - pixel_x = -30; - pixel_y = 0 - }, -/obj/machinery/camera{ - c_tag = "Medbay South"; - dir = 4; - network = list("SS13") - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"bCV" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"bCW" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - on = 1 - }, -/turf/open/floor/plasteel/barber, -/area/medical/cmo) -"bCX" = ( -/obj/effect/decal/cleanable/oil, -/obj/item/weapon/cigbutt, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/floorgrime, -/area/toxins/storage) -"bCY" = ( -/turf/open/floor/plasteel/barber, -/area/medical/cmo) -"bCZ" = ( -/obj/structure/chair/office/light, -/obj/effect/landmark/start{ - name = "Chief Medical Officer" - }, -/turf/open/floor/plasteel/barber, -/area/medical/cmo) -"bDa" = ( -/obj/machinery/keycard_auth{ - pixel_x = 24; - pixel_y = 0 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/barber, -/area/medical/cmo) -"bDb" = ( -/turf/closed/wall/r_wall, -/area/toxins/xenobiology) -"bDc" = ( -/turf/closed/wall, -/area/toxins/storage) -"bDd" = ( -/obj/machinery/door/firedoor/heavy, -/obj/machinery/airalarm{ - dir = 4; - icon_state = "alarm0"; - pixel_x = -22 - }, -/turf/open/floor/plasteel/white/side{ - dir = 5 - }, -/area/medical/research{ - name = "Research Division" - }) -"bDe" = ( -/obj/effect/landmark/event_spawn, -/turf/open/floor/plasteel, -/area/hallway/primary/port) -"bDf" = ( -/obj/machinery/light_switch{ - pixel_x = 27 - }, -/obj/machinery/light/small{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/floorgrime, -/area/toxins/storage) -"bDg" = ( -/obj/structure/rack, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 3; - name = "3maintenance loot spawner" - }, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"bDh" = ( -/obj/structure/closet, -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"bDi" = ( -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'KEEP CLEAR OF DOCKING AREA'."; - name = "KEEP CLEAR: DOCKING AREA"; - pixel_y = 32 - }, -/turf/open/space, -/area/space) -"bDj" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/floorgrime, -/area/toxins/storage) -"bDk" = ( -/obj/structure/table, -/obj/item/weapon/folder/yellow, -/obj/item/weapon/pen, -/obj/machinery/requests_console{ - department = "Mining"; - departmentType = 0; - pixel_x = -30; - pixel_y = 0 - }, -/obj/machinery/light{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/quartermaster/miningdock) -"bDl" = ( -/obj/machinery/firealarm{ - dir = 8; - pixel_x = -24 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white/side{ - dir = 5 - }, -/area/medical/research{ - name = "Research Division" - }) -"bDm" = ( -/obj/structure/disposalpipe/segment, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 10 - }, -/turf/open/floor/plasteel/white, -/area/medical/research{ - name = "Research Division" - }) -"bDn" = ( -/turf/open/floor/plasteel/warnwhite{ - dir = 9 - }, -/area/medical/research{ - name = "Research Division" - }) -"bDo" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - external_pressure_bound = 101.325; - on = 1; - pressure_checks = 1 - }, -/turf/open/floor/plasteel, -/area/quartermaster/miningdock) -"bDp" = ( -/obj/machinery/firealarm{ - dir = 4; - pixel_x = 24 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/yellow/corner{ - dir = 2 - }, -/area/hallway/primary/aft) -"bDq" = ( -/obj/structure/table, -/obj/item/weapon/paper_bin{ - pixel_x = -3; - pixel_y = 7 - }, -/obj/item/weapon/pen, -/obj/item/key/janitor, -/turf/open/floor/plasteel, -/area/janitor) -"bDr" = ( -/obj/item/weapon/restraints/legcuffs/beartrap, -/obj/item/weapon/restraints/legcuffs/beartrap, -/obj/item/weapon/storage/box/mousetraps, -/obj/item/weapon/storage/box/mousetraps, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/janitor) -"bDs" = ( -/obj/structure/reagent_dispensers/watertank, -/turf/open/floor/plasteel, -/area/janitor) -"bDt" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 10 - }, -/turf/closed/wall, -/area/maintenance/aft) -"bDu" = ( -/obj/structure/disposalpipe/segment, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 6 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"bDv" = ( -/obj/structure/table, -/obj/item/device/flashlight{ - pixel_x = 1; - pixel_y = 5 - }, -/obj/item/device/flashlight{ - pixel_x = 1; - pixel_y = 5 - }, -/obj/item/device/assembly/flash/handheld, -/obj/item/device/assembly/flash/handheld, -/obj/machinery/ai_status_display{ - pixel_x = -32; - pixel_y = 0 - }, -/turf/open/floor/plating, -/area/storage/tech) -"bDw" = ( -/obj/structure/table, -/obj/item/weapon/screwdriver{ - pixel_y = 16 - }, -/obj/item/weapon/wirecutters, -/turf/open/floor/plating, -/area/storage/tech) -"bDx" = ( -/obj/structure/table, -/obj/item/weapon/electronics/apc, -/obj/item/weapon/electronics/airlock, -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/plating, -/area/storage/tech) -"bDy" = ( -/obj/machinery/camera{ - c_tag = "Tech Storage"; - dir = 2 - }, -/obj/machinery/power/apc{ - dir = 1; - name = "Tech Storage APC"; - pixel_y = 24 - }, -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/turf/open/floor/plating, -/area/storage/tech) -"bDz" = ( -/obj/machinery/airalarm{ - frequency = 1439; - pixel_y = 23 - }, -/turf/open/floor/plating, -/area/storage/tech) -"bDA" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/power/apc{ - dir = 4; - name = "Treatment Center APC"; - pixel_x = 26; - pixel_y = 0 - }, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/medical/sleeper) -"bDB" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white/side{ - dir = 4 - }, -/area/medical/sleeper) -"bDC" = ( -/obj/machinery/computer/operating, -/turf/open/floor/plasteel/white, -/area/medical/sleeper) -"bDD" = ( -/obj/structure/sign/nosmoking_2{ - pixel_x = -28 - }, -/obj/structure/bed, -/obj/item/weapon/bedsheet/medical, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 1 - }, -/area/medical/sleeper) -"bDE" = ( -/obj/machinery/vending/wallmed{ - pixel_x = 28; - pixel_y = 0 - }, -/obj/machinery/camera{ - c_tag = "Medbay Recovery Room"; - dir = 8; - network = list("SS13") - }, -/obj/machinery/iv_drip, -/turf/open/floor/plasteel/white, -/area/medical/sleeper) -"bDF" = ( -/obj/structure/grille, -/obj/machinery/door/poddoor/preopen{ - id = "medpriv4"; - name = "privacy door" - }, -/obj/structure/window/fulltile, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/medical/medbay) -"bDG" = ( -/obj/machinery/door/firedoor, -/turf/open/floor/plasteel/yellow/corner{ - dir = 2 - }, -/area/hallway/primary/aft) -"bDH" = ( -/obj/structure/closet/l3closet/janitor, -/obj/machinery/airalarm{ - frequency = 1439; - pixel_y = 23 - }, -/turf/open/floor/plasteel, -/area/janitor) -"bDI" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"bDJ" = ( -/obj/item/weapon/storage/box/lights/mixed, -/obj/item/weapon/storage/box/lights/mixed, -/turf/open/floor/plasteel, -/area/janitor) -"bDK" = ( -/obj/machinery/light_switch{ - pixel_y = 28 - }, -/obj/machinery/camera{ - c_tag = "Custodial Closet" - }, -/obj/vehicle/janicart, -/turf/open/floor/plasteel, -/area/janitor) -"bDL" = ( -/turf/open/floor/plasteel, -/area/janitor) -"bDM" = ( -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel, -/area/janitor) -"bDN" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"bDO" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"bDP" = ( -/obj/machinery/navbeacon{ - codes_txt = "delivery;dir=8"; - dir = 1; - freq = 1400; - location = "Janitor" - }, -/obj/structure/plasticflaps{ - opacity = 1 - }, -/turf/open/floor/plasteel/bot, -/area/janitor) -"bDQ" = ( -/obj/structure/disposalpipe/segment, -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"bDR" = ( -/turf/open/floor/plasteel/white, -/area/medical/sleeper) -"bDS" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 9 - }, -/turf/open/floor/plasteel/barber, -/area/medical/cmo) -"bDT" = ( -/obj/effect/landmark/start{ - name = "Medical Doctor" - }, -/turf/open/floor/plasteel/white, -/area/medical/sleeper) -"bDU" = ( -/obj/machinery/door/airlock/glass_command{ - name = "Chief Medical Officer"; - req_access_txt = "40" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/barber, -/area/medical/cmo) -"bDV" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/sortjunction{ - sortType = 10 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"bDW" = ( -/obj/machinery/door/airlock/glass_medical{ - id_tag = null; - name = "Medbay Storage"; - req_access_txt = "45" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/medical/sleeper) -"bDX" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/mob/living/simple_animal/mouse, -/turf/open/floor/plasteel/floorgrime, -/area/toxins/storage) -"bDY" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/effect/landmark{ - name = "xeno_spawn"; - pixel_x = -1 - }, -/turf/open/floor/plasteel/floorgrime, -/area/toxins/storage) -"bDZ" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/medical/sleeper) -"bEa" = ( -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/white, -/area/medical/sleeper) -"bEb" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/plasteel/floorgrime, -/area/toxins/storage) -"bEc" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/turf/open/floor/plasteel/floorgrime, -/area/toxins/storage) -"bEd" = ( -/obj/machinery/door/airlock/glass_medical{ - id_tag = null; - name = "Medbay Storage"; - req_access_txt = "45" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/medical/sleeper) -"bEe" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"bEf" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 10 - }, -/turf/open/floor/plasteel/white/side{ - dir = 5 - }, -/area/medical/research{ - name = "Research Division" - }) -"bEg" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/door/airlock/research{ - name = "Toxins Storage"; - req_access_txt = "8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/floorgrime, -/area/toxins/storage) -"bEh" = ( -/obj/structure/table/glass, -/obj/item/weapon/paper_bin{ - pixel_x = -2; - pixel_y = 5 - }, -/turf/open/floor/plasteel/barber, -/area/medical/cmo) -"bEi" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/medical/cmo) -"bEj" = ( -/obj/structure/table/glass, -/obj/item/weapon/pen, -/obj/item/clothing/neck/stethoscope, -/mob/living/simple_animal/pet/cat/Runtime, -/turf/open/floor/plasteel/barber, -/area/medical/cmo) -"bEk" = ( -/obj/structure/table/glass, -/obj/item/weapon/folder/white, -/obj/item/weapon/stamp/cmo, -/obj/item/clothing/glasses/hud/health, -/turf/open/floor/plasteel/barber, -/area/medical/cmo) -"bEl" = ( -/obj/structure/disposalpipe/segment, -/obj/item/device/radio/intercom{ - pixel_x = 25 - }, -/obj/machinery/camera{ - c_tag = "Chief Medical Office"; - dir = 8; - network = list("SS13"); - pixel_x = 0; - pixel_y = -22 - }, -/turf/open/floor/plasteel/barber, -/area/medical/cmo) -"bEm" = ( -/turf/open/floor/engine, -/area/toxins/xenobiology) -"bEn" = ( -/obj/machinery/camera{ - c_tag = "Xenobiology Test Chamber"; - dir = 2; - network = list("Xeno","RD"); - pixel_x = 0 - }, -/obj/machinery/light{ - dir = 1 - }, -/turf/open/floor/engine, -/area/toxins/xenobiology) -"bEo" = ( -/obj/machinery/portable_atmospherics/canister/toxins, -/turf/open/floor/plasteel/delivery{ - name = "floor" - }, -/area/toxins/storage) -"bEp" = ( -/obj/machinery/portable_atmospherics/canister/toxins, -/obj/structure/sign/nosmoking_2{ - pixel_x = 0; - pixel_y = 32 - }, -/turf/open/floor/plasteel/delivery{ - name = "floor" - }, -/area/toxins/storage) -"bEq" = ( -/obj/machinery/power/apc{ - dir = 8; - name = "Misc Research APC"; - pixel_x = -25 - }, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/turf/open/floor/plasteel/white/side{ - dir = 5 - }, -/area/medical/research{ - name = "Research Division" - }) -"bEr" = ( -/obj/structure/disposalpipe/segment, -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/white, -/area/medical/research{ - name = "Research Division" - }) -"bEs" = ( -/turf/closed/wall, -/area/toxins/mixing) -"bEt" = ( -/obj/machinery/vending/coffee, -/turf/open/floor/plasteel/white, -/area/medical/research{ - name = "Research Division" - }) -"bEu" = ( -/obj/structure/closet/bombcloset, -/obj/machinery/light{ - dir = 1 - }, -/turf/open/floor/plasteel/warnwhite{ - dir = 2 - }, -/area/toxins/mixing) -"bEv" = ( -/obj/structure/closet/bombcloset, -/obj/machinery/light_switch{ - pixel_x = 0; - pixel_y = 28 - }, -/turf/open/floor/plasteel/warnwhite{ - dir = 2 - }, -/area/toxins/mixing) -"bEw" = ( -/obj/machinery/portable_atmospherics/canister, -/obj/item/device/radio/intercom{ - pixel_y = 25 - }, -/turf/open/floor/plasteel/warnwhite{ - dir = 2 - }, -/area/toxins/mixing) -"bEx" = ( -/obj/machinery/portable_atmospherics/canister, -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/machinery/firealarm{ - dir = 2; - pixel_y = 24 - }, -/obj/machinery/camera{ - c_tag = "Toxins Lab West"; - dir = 2; - network = list("SS13","RD"); - pixel_y = 0 - }, -/turf/open/floor/plasteel/warnwhite{ - dir = 2 - }, -/area/toxins/mixing) -"bEy" = ( -/obj/machinery/portable_atmospherics/pump, -/obj/structure/window/reinforced{ - dir = 4 - }, -/turf/open/floor/plasteel/warnwhite{ - dir = 2 - }, -/area/toxins/mixing) -"bEz" = ( -/turf/open/floor/plasteel/warnwhite{ - dir = 8 - }, -/area/medical/research{ - name = "Research Division" - }) -"bEA" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible, -/obj/machinery/light{ - dir = 1 - }, -/turf/open/floor/plasteel/warnwhite{ - dir = 1 - }, -/area/toxins/mixing) -"bEB" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible, -/turf/open/floor/plasteel/warnwhite{ - dir = 9 - }, -/area/toxins/mixing) -"bEC" = ( -/turf/closed/wall/r_wall, -/area/toxins/mixing) -"bED" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible, -/turf/open/floor/plasteel/warnwhite{ - dir = 5 - }, -/area/toxins/mixing) -"bEE" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 6 - }, -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"bEF" = ( -/obj/structure/closet/crate, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 4; - name = "4maintenance loot spawner" - }, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"bEG" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"bEH" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall, -/area/toxins/mixing) -"bEI" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 9 - }, -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"bEJ" = ( -/obj/machinery/door/airlock/maintenance{ - req_access_txt = "12" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/maintenance/fpmaint2) -"bEK" = ( -/obj/machinery/computer/security/mining{ - network = list("MINE","AuxBase") - }, -/obj/machinery/camera{ - c_tag = "Mining Dock"; - dir = 4; - network = list("SS13") - }, -/turf/open/floor/plasteel, -/area/quartermaster/miningdock) -"bEL" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/plasteel/white, -/area/toxins/mixing) -"bEM" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/closed/wall/r_wall, -/area/toxins/mixing) -"bEN" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, -/turf/open/floor/plasteel, -/area/toxins/mixing) -"bEO" = ( -/obj/structure/sign/securearea{ - pixel_x = -32 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/corner{ - dir = 1 - }, -/area/toxins/mixing) -"bEP" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"bEQ" = ( -/obj/effect/landmark/start{ - name = "Shaft Miner" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/quartermaster/miningdock) -"bER" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plating, -/area/storage/tech) -"bES" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall, -/area/maintenance/aft) -"bET" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/storage/tech) -"bEU" = ( -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/storage/tech) -"bEV" = ( -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/structure/grille, -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/storage/tech) -"bEW" = ( -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/storage/tech) -"bEX" = ( -/obj/structure/table, -/obj/item/device/aicard, -/obj/item/weapon/aiModule/reset, -/turf/open/floor/plating, -/area/storage/tech) -"bEY" = ( -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/storage/tech) -"bEZ" = ( -/obj/structure/table, -/obj/item/stack/cable_coil{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/stack/cable_coil, -/obj/item/weapon/stock_parts/cell/high/plus, -/turf/open/floor/plating, -/area/storage/tech) -"bFa" = ( -/turf/open/floor/plating, -/area/storage/tech) -"bFb" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plating, -/area/storage/tech) -"bFc" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/effect/landmark{ - name = "blobstart" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/storage/tech) -"bFd" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/caution/corner{ - dir = 8 - }, -/area/hallway/primary/aft) -"bFe" = ( -/obj/machinery/door/airlock/engineering{ - name = "Tech Storage"; - req_access_txt = "23" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/storage/tech) -"bFf" = ( -/obj/structure/chair/stool, -/obj/effect/landmark/start{ - name = "Janitor" - }, -/turf/open/floor/plasteel, -/area/janitor) -"bFg" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/janitor) -"bFh" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/aft) -"bFi" = ( -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel, -/area/janitor) -"bFj" = ( -/obj/structure/disposalpipe/segment, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/machinery/atmospherics/pipe/manifold4w/scrubbers, -/turf/open/floor/plasteel/caution/corner{ - dir = 8 - }, -/area/hallway/primary/aft) -"bFk" = ( -/obj/item/weapon/mop, -/obj/item/weapon/reagent_containers/glass/bucket, -/turf/open/floor/plasteel, -/area/janitor) -"bFl" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/power/apc{ - dir = 8; - name = "Custodial Closet APC"; - pixel_x = -24 - }, -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/turf/open/floor/plating, -/area/janitor) -"bFm" = ( -/obj/structure/disposalpipe/sortjunction{ - dir = 8; - icon_state = "pipe-j2s"; - sortType = 6 - }, -/obj/structure/grille, -/obj/structure/window/fulltile{ - obj_integrity = 25 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"bFn" = ( -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/obj/structure/grille/broken, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"bFo" = ( -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"bFp" = ( -/obj/structure/grille, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/window/fulltile, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"bFq" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/yellow/corner{ - dir = 2 - }, -/area/hallway/primary/aft) -"bFr" = ( -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"bFs" = ( -/obj/machinery/door/airlock/maintenance{ - name = "Custodial Maintenance"; - req_access_txt = "26" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/janitor) -"bFt" = ( -/obj/structure/disposalpipe/segment, -/obj/structure/grille, -/obj/structure/window/fulltile, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"bFu" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/medical{ - name = "Operating Theatre"; - req_access_txt = "45" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/medical/sleeper) -"bFv" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/medical/sleeper) -"bFw" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/whiteblue/side{ - dir = 8 - }, -/area/medical/sleeper) -"bFx" = ( -/obj/structure/disposalpipe/segment, -/obj/structure/grille, -/obj/structure/window/fulltile, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"bFy" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - external_pressure_bound = 101.325; - on = 1; - pressure_checks = 1 - }, -/turf/open/floor/plasteel/white, -/area/medical/sleeper) -"bFz" = ( -/obj/machinery/airalarm{ - dir = 1; - icon_state = "alarm0"; - pixel_y = -22 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - external_pressure_bound = 101.325; - on = 1; - pressure_checks = 1 - }, -/turf/open/floor/plasteel/white/side{ - dir = 1 - }, -/area/medical/sleeper) -"bFA" = ( -/obj/structure/sink{ - dir = 4; - icon_state = "sink"; - pixel_x = 11; - pixel_y = 0 - }, -/turf/open/floor/plasteel/white, -/area/medical/sleeper) -"bFB" = ( -/obj/structure/closet/secure_closet/medical2, -/turf/open/floor/plasteel, -/area/medical/sleeper) -"bFC" = ( -/obj/structure/table, -/obj/item/weapon/reagent_containers/food/condiment/peppermill{ - pixel_x = 5; - pixel_y = -2 - }, -/obj/item/weapon/reagent_containers/food/condiment/saltshaker{ - pixel_x = -2; - pixel_y = 2 - }, -/turf/open/floor/plasteel/bar, -/area/crew_quarters/bar) -"bFD" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"bFE" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/barber, -/area/medical/cmo) -"bFF" = ( -/obj/machinery/light, -/turf/open/floor/plasteel/white, -/area/medical/sleeper) -"bFG" = ( -/obj/structure/chair{ - dir = 1 - }, -/turf/open/floor/plasteel/barber, -/area/medical/cmo) -"bFH" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/light_switch{ - pixel_x = 28; - pixel_y = 0 - }, -/turf/open/floor/plasteel/barber, -/area/medical/cmo) -"bFI" = ( -/obj/machinery/airalarm{ - dir = 4; - icon_state = "alarm0"; - pixel_x = -22 - }, -/obj/machinery/light/small{ - dir = 8 - }, -/turf/open/floor/plasteel/floorgrime, -/area/toxins/storage) -"bFJ" = ( -/obj/structure/bed, -/obj/item/weapon/bedsheet/medical, -/turf/open/floor/plasteel/white, -/area/medical/sleeper) -"bFK" = ( -/obj/structure/closet/wardrobe/pjs, -/turf/open/floor/plasteel/white, -/area/medical/sleeper) -"bFL" = ( -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"bFM" = ( -/obj/structure/disposalpipe/junction{ - icon_state = "pipe-j2"; - dir = 2 - }, -/obj/machinery/atmospherics/pipe/manifold4w/scrubbers, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"bFN" = ( -/obj/structure/table, -/obj/item/weapon/cartridge/medical{ - pixel_x = -2; - pixel_y = 6 - }, -/obj/item/weapon/cartridge/medical{ - pixel_x = 6; - pixel_y = 3 - }, -/obj/item/weapon/cartridge/medical, -/obj/item/weapon/cartridge/chemistry{ - pixel_y = 2 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/barber, -/area/medical/cmo) -"bFO" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/medical/cmo) -"bFP" = ( -/obj/machinery/computer/card/minor/cmo, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/barber, -/area/medical/cmo) -"bFQ" = ( -/obj/structure/sign/nosmoking_2{ - pixel_x = -32 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/white/side{ - dir = 5 - }, -/area/medical/research{ - name = "Research Division" - }) -"bFR" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/white, -/area/medical/research{ - name = "Research Division" - }) -"bFS" = ( -/turf/open/floor/plasteel/warnwhite{ - dir = 10 - }, -/area/medical/research{ - name = "Research Division" - }) -"bFT" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/toxins/mixing) -"bFU" = ( -/turf/open/floor/plasteel/white, -/area/toxins/mixing) -"bFV" = ( -/obj/machinery/atmospherics/pipe/manifold/general/visible, -/obj/machinery/meter, -/turf/open/floor/plasteel/white, -/area/toxins/mixing) -"bFW" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible{ - dir = 5 - }, -/turf/open/floor/plasteel/white, -/area/toxins/mixing) -"bFX" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible{ - dir = 9 - }, -/turf/open/floor/plasteel/white, -/area/toxins/mixing) -"bFY" = ( -/obj/machinery/door/airlock/maintenance{ - req_access_txt = "12" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"bFZ" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/toxins/mixing) -"bGa" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 6 - }, -/turf/closed/wall, -/area/maintenance/asmaint2) -"bGb" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 9 - }, -/turf/closed/wall, -/area/toxins/mixing) -"bGc" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/toxins/mixing) -"bGd" = ( -/obj/machinery/doppler_array{ - dir = 4 - }, -/turf/open/floor/plasteel/bot{ - dir = 2 - }, -/area/toxins/mixing) -"bGe" = ( -/turf/closed/wall, -/area/toxins/test_area) -"bGf" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating/airless, -/area/toxins/test_area) -"bGg" = ( -/obj/structure/table, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/labor) -"bGh" = ( -/obj/machinery/computer/shuttle/mining, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/labor) -"bGi" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/quartermaster/miningdock) -"bGj" = ( -/obj/machinery/computer/shuttle/mining, -/turf/open/floor/plasteel/brown{ - dir = 9 - }, -/area/quartermaster/miningdock) -"bGk" = ( -/obj/structure/chair/stool, -/obj/effect/landmark/start{ - name = "Scientist" - }, -/turf/open/floor/plasteel/white, -/area/toxins/mixing) -"bGl" = ( -/obj/item/device/assembly/prox_sensor{ - pixel_x = -4; - pixel_y = 1 - }, -/obj/item/device/assembly/prox_sensor{ - pixel_x = 8; - pixel_y = 9 - }, -/obj/item/device/assembly/prox_sensor{ - pixel_x = 9; - pixel_y = -2 - }, -/obj/item/device/assembly/prox_sensor{ - pixel_x = 0; - pixel_y = 2 - }, -/obj/structure/table/reinforced, -/turf/open/floor/plasteel/white, -/area/toxins/mixing) -"bGm" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/quartermaster/miningdock) -"bGn" = ( -/obj/structure/closet/secure_closet/miner, -/turf/open/floor/plasteel, -/area/quartermaster/miningdock) -"bGo" = ( -/obj/machinery/door/airlock/maintenance{ - name = "Firefighting equipment"; - req_access_txt = "12" - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"bGp" = ( -/obj/structure/grille, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/maintenance/aft) -"bGq" = ( -/obj/structure/disposalpipe/segment, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/aft) -"bGr" = ( -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/obj/structure/cable, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/storage/tech) -"bGs" = ( -/obj/machinery/camera{ - c_tag = "Secure Tech Storage"; - dir = 2 - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plasteel, -/area/storage/tech) -"bGt" = ( -/obj/structure/rack{ - dir = 8; - layer = 2.9 - }, -/obj/item/weapon/circuitboard/computer/borgupload{ - pixel_x = -1; - pixel_y = 1 - }, -/obj/item/weapon/circuitboard/computer/aiupload{ - pixel_x = 2; - pixel_y = -2 - }, -/turf/open/floor/plasteel, -/area/storage/tech) -"bGu" = ( -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'HIGH VOLTAGE'"; - icon_state = "shock"; - name = "HIGH VOLTAGE" - }, -/turf/closed/wall/r_wall, -/area/storage/tech) -"bGv" = ( -/obj/structure/table, -/obj/machinery/cell_charger{ - pixel_y = 5 - }, -/obj/item/device/multitool, -/turf/open/floor/plating, -/area/storage/tech) -"bGw" = ( -/obj/structure/rack{ - dir = 8; - layer = 2.9 - }, -/obj/item/weapon/circuitboard/computer/pandemic{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/weapon/circuitboard/computer/rdconsole, -/obj/item/weapon/circuitboard/machine/rdserver{ - pixel_x = 3; - pixel_y = -3 - }, -/obj/item/weapon/circuitboard/machine/destructive_analyzer, -/obj/item/weapon/circuitboard/machine/protolathe, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/item/weapon/circuitboard/computer/aifixer, -/obj/item/weapon/circuitboard/computer/teleporter, -/obj/item/weapon/circuitboard/machine/circuit_imprinter, -/obj/item/weapon/circuitboard/machine/mechfab, -/turf/open/floor/plating, -/area/storage/tech) -"bGx" = ( -/obj/structure/rack, -/obj/item/weapon/circuitboard/machine/telecomms/processor, -/obj/item/weapon/circuitboard/machine/telecomms/receiver, -/obj/item/weapon/circuitboard/machine/telecomms/server, -/obj/item/weapon/circuitboard/machine/telecomms/bus, -/obj/item/weapon/circuitboard/machine/telecomms/broadcaster, -/obj/item/weapon/circuitboard/computer/message_monitor{ - pixel_y = -5 - }, -/turf/open/floor/plating, -/area/storage/tech) -"bGy" = ( -/obj/structure/rack{ - dir = 8; - layer = 2.9 - }, -/obj/item/weapon/circuitboard/computer/mining, -/obj/item/weapon/circuitboard/machine/autolathe{ - pixel_x = 3; - pixel_y = -3 - }, -/obj/item/weapon/circuitboard/computer/arcade/battle, -/turf/open/floor/plating, -/area/storage/tech) -"bGz" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/wrench, -/obj/item/weapon/screwdriver{ - pixel_y = 10 - }, -/turf/open/floor/plasteel/white, -/area/toxins/mixing) -"bGA" = ( -/obj/machinery/holopad, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 6 - }, -/turf/open/floor/plasteel/white, -/area/toxins/mixing) -"bGB" = ( -/obj/structure/table, -/obj/item/weapon/grenade/chem_grenade/cleaner, -/obj/item/weapon/grenade/chem_grenade/cleaner, -/obj/item/weapon/grenade/chem_grenade/cleaner, -/obj/machinery/requests_console{ - department = "Janitorial"; - departmentType = 1; - pixel_y = -29 - }, -/obj/item/weapon/reagent_containers/spray/cleaner, -/turf/open/floor/plasteel, -/area/janitor) -"bGC" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/machinery/door/firedoor/heavy, -/obj/machinery/door/airlock/research{ - name = "Toxins Launch Room Access"; - req_access_txt = "8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/toxins/mixing) -"bGD" = ( -/obj/structure/janitorialcart, -/turf/open/floor/plasteel, -/area/janitor) -"bGE" = ( -/obj/machinery/disposal/bin, -/obj/structure/disposalpipe/trunk{ - dir = 1 - }, -/obj/machinery/light, -/turf/open/floor/plasteel, -/area/janitor) -"bGF" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/toxins/mixing) -"bGG" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/toxins/mixing) -"bGH" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"bGI" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"bGJ" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"bGK" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/toxins/mixing) -"bGL" = ( -/obj/machinery/atmospherics/pipe/manifold4w/scrubbers, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/toxins/mixing) -"bGM" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel, -/area/quartermaster/miningdock) -"bGN" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/aft) -"bGO" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/yellow/corner{ - dir = 2 - }, -/area/hallway/primary/aft) -"bGP" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"bGQ" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"bGR" = ( -/obj/structure/table, -/obj/item/weapon/hand_labeler, -/obj/item/weapon/gun/syringe, -/turf/open/floor/plasteel/white, -/area/medical/sleeper) -"bGS" = ( -/obj/machinery/limbgrower, -/obj/item/weapon/reagent_containers/glass/beaker/synthflesh, -/turf/open/floor/plasteel/white, -/area/medical/sleeper) -"bGT" = ( -/obj/structure/table, -/obj/item/weapon/folder/white, -/obj/item/clothing/neck/stethoscope, -/obj/machinery/vending/wallmed{ - pixel_y = 28 - }, -/obj/machinery/light/small{ - dir = 8 - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"bGU" = ( -/obj/structure/closet/secure_closet/personal/patient, -/obj/machinery/button/door{ - id = "medpriv4"; - name = "Privacy Shutters"; - pixel_y = 25 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"bGV" = ( -/obj/structure/chair/office/light{ - dir = 8 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"bGW" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/manifold4w/scrubbers, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"bGX" = ( -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"bGY" = ( -/obj/machinery/portable_atmospherics/scrubber/huge, -/turf/open/floor/plasteel/floorgrime, -/area/toxins/storage) -"bGZ" = ( -/obj/machinery/holopad, -/turf/open/floor/plasteel/barber, -/area/medical/cmo) -"bHa" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/closed/wall, -/area/medical/cmo) -"bHb" = ( -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/barber, -/area/medical/cmo) -"bHc" = ( -/obj/structure/extinguisher_cabinet{ - pixel_x = -27; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/white/side{ - dir = 5 - }, -/area/medical/research{ - name = "Research Division" - }) -"bHd" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"bHe" = ( -/obj/machinery/power/apc{ - dir = 8; - name = "Toxins Storage APC"; - pixel_x = -25 - }, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/machinery/camera{ - c_tag = "Toxins Storage"; - dir = 4; - network = list("SS13","RD") - }, -/turf/open/floor/plasteel/floorgrime, -/area/toxins/storage) -"bHf" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/medical/research{ - name = "Research Division" - }) -"bHg" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/white, -/area/toxins/mixing) -"bHh" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/plating, -/area/storage/tech) -"bHi" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/storage/tech) -"bHj" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/aft) -"bHk" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/caution/corner{ - dir = 8 - }, -/area/hallway/primary/aft) -"bHl" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, -/turf/open/floor/plasteel/yellow/corner{ - dir = 2 - }, -/area/hallway/primary/aft) -"bHm" = ( -/obj/machinery/door/firedoor/heavy, -/obj/machinery/door/airlock/research{ - name = "Toxins Lab"; - req_access_txt = "8" - }, -/turf/open/floor/plasteel/white, -/area/toxins/mixing) -"bHn" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/closed/wall/r_wall, -/area/maintenance/asmaint) -"bHo" = ( -/obj/structure/closet, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"bHp" = ( -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"bHq" = ( -/obj/structure/disposalpipe/segment, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"bHr" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/toxins/mixing) -"bHs" = ( -/obj/machinery/light/small{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/warning/corner{ - dir = 2 - }, -/area/toxins/mixing) -"bHt" = ( -/obj/effect/landmark/event_spawn, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"bHu" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/obj/item/device/radio/intercom{ - pixel_y = 25 - }, -/obj/machinery/light/small{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/toxins/mixing) -"bHv" = ( -/obj/machinery/computer/security/telescreen{ - desc = "Used for watching the test chamber."; - dir = 8; - layer = 4; - name = "Test Chamber Telescreen"; - network = list("Toxins"); - pixel_x = 30; - pixel_y = 0 - }, -/turf/open/floor/plasteel/warning{ - dir = 5 - }, -/area/toxins/mixing) -"bHw" = ( -/obj/item/target, -/obj/structure/window/reinforced, -/turf/open/floor/plating/warnplate{ - dir = 1 - }, -/area/toxins/test_area) -"bHx" = ( -/obj/structure/chair{ - dir = 1 - }, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/labor) -"bHy" = ( -/obj/structure/closet/crate, -/obj/machinery/light/small{ - dir = 4 - }, -/obj/item/device/radio/intercom{ - dir = 4; - name = "Station Intercom (General)"; - pixel_x = 27 - }, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/quartermaster/miningdock) -"bHz" = ( -/obj/item/weapon/ore/iron, -/turf/open/floor/plasteel/warning{ - dir = 9 - }, -/area/quartermaster/miningdock) -"bHA" = ( -/turf/open/floor/plasteel/brown{ - dir = 8 - }, -/area/quartermaster/miningdock) -"bHB" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/mob/living/simple_animal/mouse, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"bHC" = ( -/obj/effect/landmark{ - name = "blobstart" - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"bHD" = ( -/obj/machinery/light/small{ - dir = 1 - }, -/obj/structure/chair/stool, -/turf/open/floor/plating, -/area/maintenance/aft) -"bHE" = ( -/turf/open/floor/plating, -/area/maintenance/aft) -"bHF" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/effect/landmark/event_spawn, -/turf/open/floor/wood, -/area/crew_quarters/theatre) -"bHG" = ( -/obj/structure/rack{ - dir = 8; - layer = 2.9 - }, -/obj/item/weapon/circuitboard/computer/crew{ - pixel_x = -1; - pixel_y = 1 - }, -/obj/item/weapon/circuitboard/computer/card{ - pixel_x = 2; - pixel_y = -2 - }, -/obj/item/weapon/circuitboard/computer/communications{ - pixel_x = 5; - pixel_y = -5 - }, -/obj/machinery/light/small{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/storage/tech) -"bHH" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/turf/open/floor/plating, -/area/storage/tech) -"bHI" = ( -/obj/machinery/door/airlock/highsecurity{ - name = "Secure Tech Storage"; - req_access_txt = "19;23" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/turf/open/floor/plating, -/area/storage/tech) -"bHJ" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/effect/landmark{ - name = "xeno_spawn"; - pixel_x = -1 - }, -/turf/open/floor/plating, -/area/storage/tech) -"bHK" = ( -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/obj/machinery/door/firedoor/heavy, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/white/side{ - dir = 5 - }, -/area/medical/research{ - name = "Research Division" - }) -"bHL" = ( -/obj/machinery/camera{ - c_tag = "Research Division South"; - dir = 8; - network = list("SS13") - }, -/obj/machinery/door/firedoor/heavy, -/turf/open/floor/plasteel/white/side{ - dir = 9 - }, -/area/medical/research{ - name = "Research Division" - }) -"bHM" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/door/firedoor/heavy, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/white, -/area/medical/research{ - name = "Research Division" - }) -"bHN" = ( -/obj/machinery/requests_console{ - department = "Tech storage"; - pixel_x = 0; - pixel_y = -32 - }, -/turf/open/floor/plating, -/area/storage/tech) -"bHO" = ( -/obj/structure/rack{ - dir = 8; - layer = 2.9 - }, -/obj/item/weapon/storage/toolbox/electrical{ - pixel_x = 1; - pixel_y = -1 - }, -/obj/item/device/multitool, -/obj/item/clothing/glasses/meson, -/obj/machinery/light/small, -/turf/open/floor/plating, -/area/storage/tech) -"bHP" = ( -/turf/open/floor/plasteel/yellow/corner{ - dir = 2 - }, -/area/hallway/primary/aft) -"bHQ" = ( -/obj/machinery/vending/assist, -/turf/open/floor/plating, -/area/storage/tech) -"bHR" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/camera{ - c_tag = "Aft Primary Hallway 2"; - dir = 4; - network = list("SS13") - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/caution/corner{ - dir = 8 - }, -/area/hallway/primary/aft) -"bHS" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - external_pressure_bound = 101.325; - on = 1; - pressure_checks = 1 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/aft) -"bHT" = ( -/obj/structure/grille, -/obj/machinery/door/poddoor/preopen{ - id = "medpriv1"; - name = "privacy door" - }, -/obj/structure/window/fulltile, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/medical/medbay) -"bHU" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/grille/broken, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"bHV" = ( -/obj/machinery/power/apc{ - dir = 8; - name = "Medbay Maintenance APC"; - pixel_x = -24 - }, -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"bHW" = ( -/obj/structure/disposalpipe/segment, -/obj/structure/grille, -/obj/structure/window/fulltile{ - obj_integrity = 35 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"bHX" = ( -/obj/structure/grille, -/obj/structure/window/fulltile{ - obj_integrity = 25 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"bHY" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"bHZ" = ( -/obj/structure/grille, -/obj/structure/window/fulltile, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"bIa" = ( -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/manifold4w/scrubbers, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"bIb" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/white/side{ - dir = 5 - }, -/area/medical/research{ - name = "Research Division" - }) -"bIc" = ( -/obj/machinery/firealarm{ - dir = 1; - pixel_y = -24 - }, -/turf/open/floor/plasteel/white/side{ - dir = 1 - }, -/area/medical/sleeper) -"bId" = ( -/obj/machinery/vending/wallmed{ - pixel_y = -28 - }, -/obj/machinery/camera{ - c_tag = "Surgery Operating"; - dir = 1; - network = list("SS13"); - pixel_x = 22 - }, -/obj/machinery/light, -/turf/open/floor/plasteel/white, -/area/medical/sleeper) -"bIe" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/status_display{ - density = 0; - layer = 3; - pixel_x = -32; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/caution/corner{ - dir = 8 - }, -/area/hallway/primary/aft) -"bIf" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/doorButtons/access_button{ - idDoor = "virology_airlock_exterior"; - idSelf = "virology_airlock_control"; - name = "Virology Access Button"; - pixel_x = -24; - pixel_y = 0; - req_access_txt = "39" - }, -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/virology{ - autoclose = 0; - frequency = 1449; - icon_state = "door_locked"; - id_tag = "virology_airlock_exterior"; - locked = 1; - name = "Virology Exterior Airlock"; - req_access_txt = "39" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/white, -/area/medical/virology) -"bIg" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/structure/disposalpipe/sortjunction{ - dir = 2; - icon_state = "pipe-j2s"; - sortType = 13 - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 8 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"bIh" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/toxins/xenobiology) -"bIi" = ( -/obj/structure/table, -/obj/item/weapon/storage/firstaid/o2{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/storage/firstaid/o2, -/obj/item/weapon/storage/firstaid/regular{ - pixel_x = -3; - pixel_y = -3 - }, -/turf/open/floor/plasteel/white, -/area/medical/sleeper) -"bIj" = ( -/obj/structure/table, -/obj/machinery/light, -/obj/item/weapon/reagent_containers/spray/cleaner, -/obj/item/clothing/glasses/hud/health, -/obj/item/clothing/glasses/hud/health, -/obj/item/clothing/glasses/hud/health, -/turf/open/floor/plasteel/white, -/area/medical/sleeper) -"bIk" = ( -/obj/structure/table, -/obj/machinery/requests_console{ - announcementConsole = 0; - department = "Medbay"; - departmentType = 1; - name = "Medbay RC"; - pixel_x = 0; - pixel_y = -30; - pixel_z = 0 - }, -/obj/item/weapon/storage/firstaid/fire{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/storage/firstaid/fire, -/obj/item/weapon/storage/firstaid/regular{ - pixel_x = -3; - pixel_y = -3 - }, -/turf/open/floor/plasteel/white, -/area/medical/sleeper) -"bIl" = ( -/obj/structure/table, -/obj/item/device/radio/intercom{ - broadcasting = 0; - freerange = 0; - frequency = 1485; - listening = 1; - name = "Station Intercom (Medbay)"; - pixel_x = 0; - pixel_y = -30 - }, -/obj/item/weapon/storage/firstaid/toxin{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/storage/firstaid/toxin, -/obj/item/weapon/storage/firstaid/regular{ - pixel_x = -3; - pixel_y = -3 - }, -/turf/open/floor/plasteel/white, -/area/medical/sleeper) -"bIm" = ( -/obj/machinery/light, -/obj/structure/table, -/obj/item/weapon/storage/box/beakers{ - pixel_x = 2; - pixel_y = 2 - }, -/obj/item/weapon/storage/box/syringes, -/obj/item/weapon/reagent_containers/glass/bottle/epinephrine{ - pixel_x = 7; - pixel_y = -3 - }, -/obj/item/weapon/reagent_containers/glass/bottle/morphine{ - pixel_x = 8; - pixel_y = -3 - }, -/obj/item/weapon/reagent_containers/syringe{ - pixel_x = 6; - pixel_y = -3 - }, -/turf/open/floor/plasteel/white, -/area/medical/sleeper) -"bIn" = ( -/obj/structure/table, -/obj/item/weapon/storage/firstaid/brute{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/storage/firstaid/brute, -/obj/item/weapon/storage/firstaid/regular{ - pixel_x = -3; - pixel_y = -3 - }, -/turf/open/floor/plasteel/white, -/area/medical/sleeper) -"bIo" = ( -/obj/structure/bed, -/obj/item/weapon/bedsheet/medical, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"bIp" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"bIq" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"bIr" = ( -/obj/machinery/door/airlock/medical{ - name = "Patient Room"; - req_access_txt = "5" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"bIs" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/door/airlock/maintenance{ - name = "Xenobiology Maintenance"; - req_access_txt = "55" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/toxins/xenobiology) -"bIt" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/toxins/xenobiology) -"bIu" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/white, -/area/toxins/xenobiology) -"bIv" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 1 - }, -/turf/open/floor/plasteel/white, -/area/toxins/xenobiology) -"bIw" = ( -/obj/structure/closet/secure_closet/CMO, -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/turf/open/floor/plasteel/barber, -/area/medical/cmo) -"bIx" = ( -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'HIGH VOLTAGE'"; - icon_state = "shock"; - name = "HIGH VOLTAGE" - }, -/turf/closed/wall/r_wall, -/area/toxins/xenobiology) -"bIy" = ( -/obj/structure/disposaloutlet{ - dir = 1 - }, -/obj/structure/disposalpipe/trunk, -/turf/open/floor/engine, -/area/toxins/xenobiology) -"bIz" = ( -/obj/machinery/portable_atmospherics/canister/carbon_dioxide, -/turf/open/floor/plasteel/bot, -/area/toxins/storage) -"bIA" = ( -/obj/machinery/portable_atmospherics/canister/oxygen, -/turf/open/floor/plasteel/bot, -/area/toxins/storage) -"bIB" = ( -/obj/machinery/portable_atmospherics/canister/nitrous_oxide, -/turf/open/floor/plasteel/bot, -/area/toxins/storage) -"bIC" = ( -/turf/open/floor/plasteel/floorgrime, -/area/toxins/storage) -"bID" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/open/floor/plasteel/white/side{ - dir = 5 - }, -/area/medical/research{ - name = "Research Division" - }) -"bIE" = ( -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/plasteel/white, -/area/medical/research{ - name = "Research Division" - }) -"bIF" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, -/turf/open/floor/plasteel, -/area/atmos) -"bIG" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bIH" = ( -/obj/machinery/pipedispenser/disposal, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bII" = ( -/obj/item/weapon/storage/secure/safe{ - pixel_x = 5; - pixel_y = 29 - }, -/obj/machinery/camera{ - c_tag = "Virology Break Room" - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/white, -/area/medical/virology) -"bIJ" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/medical/virology) -"bIK" = ( -/obj/structure/sink{ - icon_state = "sink"; - dir = 8; - pixel_x = -12; - pixel_y = 2 - }, -/turf/open/floor/plasteel/warnwhite{ - dir = 9 - }, -/area/medical/virology) -"bIL" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/white, -/area/medical/virology) -"bIM" = ( -/obj/structure/disposalpipe/segment, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/sign/securearea{ - pixel_x = 32 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"bIN" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall/r_wall, -/area/toxins/xenobiology) -"bIO" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/open/floor/plasteel/white, -/area/toxins/xenobiology) -"bIP" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/chair/comfy/black, -/turf/open/floor/plasteel/white, -/area/toxins/xenobiology) -"bIQ" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/machinery/holopad, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/toxins/xenobiology) -"bIR" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - external_pressure_bound = 101.325; - on = 1; - pressure_checks = 1 - }, -/turf/open/floor/plasteel/white, -/area/toxins/xenobiology) -"bIS" = ( -/obj/machinery/door/airlock/research{ - name = "Toxins Launch Room"; - req_access_txt = "8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/toxins/mixing) -"bIT" = ( -/obj/structure/grille, -/obj/structure/window/fulltile, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/toxins/xenobiology) -"bIU" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/warning/corner{ - dir = 2 - }, -/area/toxins/mixing) -"bIV" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/toxins/mixing) -"bIW" = ( -/turf/open/floor/plasteel/warning{ - dir = 6 - }, -/area/toxins/mixing) -"bIX" = ( -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'BOMB RANGE"; - name = "BOMB RANGE" - }, -/turf/closed/wall, -/area/toxins/test_area) -"bIY" = ( -/obj/structure/chair, -/turf/open/floor/plating/airless/warnplate{ - dir = 9 - }, -/area/toxins/test_area) -"bIZ" = ( -/obj/structure/chair, -/turf/open/floor/plating/airless/warnplate{ - dir = 5 - }, -/area/toxins/test_area) -"bJa" = ( -/obj/item/device/flashlight/lamp, -/turf/open/floor/plating/airless/warnplate{ - dir = 1 - }, -/area/toxins/test_area) -"bJb" = ( -/obj/machinery/door/airlock/external{ - cyclelinkeddir = 4; - name = "Mining Dock Airlock"; - req_access = null; - req_access_txt = "48"; - shuttledocked = 1 - }, -/turf/open/floor/plating, -/area/quartermaster/miningdock) -"bJc" = ( -/obj/machinery/door/airlock/titanium{ - name = "Mining Shuttle Airlock"; - req_access_txt = "48" - }, -/obj/docking_port/mobile{ - dir = 8; - dwidth = 3; - height = 5; - id = "mining"; - name = "mining shuttle"; - port_angle = 90; - width = 7 - }, -/obj/docking_port/stationary{ - dir = 8; - dwidth = 3; - height = 5; - id = "mining_home"; - name = "mining shuttle bay"; - width = 7 - }, -/turf/open/floor/plating, -/area/shuttle/labor) -"bJd" = ( -/obj/machinery/door/airlock/glass_mining{ - cyclelinkeddir = 8; - name = "Mining Dock"; - req_access_txt = "48" - }, -/turf/open/floor/plasteel, -/area/quartermaster/miningdock) -"bJe" = ( -/obj/structure/table, -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plating, -/area/maintenance/aft) -"bJf" = ( -/obj/structure/closet/firecloset, -/turf/open/floor/plating, -/area/maintenance/aft) -"bJg" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plasteel, -/area/storage/tech) -"bJh" = ( -/obj/structure/rack{ - dir = 8; - layer = 2.9 - }, -/obj/item/weapon/circuitboard/computer/robotics{ - pixel_x = -2; - pixel_y = 2 - }, -/obj/item/weapon/circuitboard/computer/mecha_control{ - pixel_x = 1; - pixel_y = -1 - }, -/turf/open/floor/plasteel, -/area/storage/tech) -"bJi" = ( -/obj/structure/sign/securearea, -/turf/closed/wall/r_wall, -/area/storage/tech) -"bJj" = ( -/obj/structure/table, -/obj/item/weapon/stock_parts/subspace/analyzer, -/obj/item/weapon/stock_parts/subspace/analyzer, -/obj/item/weapon/stock_parts/subspace/analyzer, -/turf/open/floor/plating, -/area/storage/tech) -"bJk" = ( -/obj/structure/rack{ - dir = 8; - layer = 2.9 - }, -/obj/item/weapon/circuitboard/computer/cloning{ - pixel_x = 0 - }, -/obj/item/weapon/circuitboard/computer/med_data{ - pixel_x = 3; - pixel_y = -3 - }, -/obj/item/weapon/circuitboard/machine/clonescanner, -/obj/item/weapon/circuitboard/machine/clonepod, -/obj/item/weapon/circuitboard/computer/scan_consolenew, -/turf/open/floor/plating, -/area/storage/tech) -"bJl" = ( -/obj/structure/rack{ - dir = 8; - layer = 2.9 - }, -/obj/item/weapon/circuitboard/computer/powermonitor{ - pixel_x = -2; - pixel_y = 2 - }, -/obj/item/weapon/circuitboard/computer/stationalert{ - pixel_x = 1; - pixel_y = -1 - }, -/obj/item/weapon/circuitboard/computer/atmos_alert{ - pixel_x = 3; - pixel_y = -3 - }, -/turf/open/floor/plating, -/area/storage/tech) -"bJm" = ( -/obj/structure/rack{ - dir = 8; - layer = 2.9 - }, -/obj/item/weapon/circuitboard/computer/secure_data{ - pixel_x = -2; - pixel_y = 2 - }, -/obj/item/weapon/circuitboard/computer/security{ - pixel_x = 1; - pixel_y = -1 - }, -/turf/open/floor/plating, -/area/storage/tech) -"bJn" = ( -/obj/machinery/light_switch{ - pixel_x = 27 - }, -/turf/open/floor/plating, -/area/storage/tech) -"bJo" = ( -/turf/open/floor/plasteel/white/side{ - dir = 1 - }, -/area/medical/research{ - name = "Research Division" - }) -"bJp" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 8 - }, -/turf/open/floor/plasteel/caution/corner{ - dir = 8 - }, -/area/hallway/primary/aft) -"bJq" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/machinery/door/airlock/maintenance{ - req_access_txt = "12" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"bJr" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 9 - }, -/turf/open/floor/plasteel/white/side{ - dir = 1 - }, -/area/medical/research{ - name = "Research Division" - }) -"bJs" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"bJt" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"bJu" = ( -/obj/structure/light_construct{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/construction) -"bJv" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"bJw" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"bJx" = ( -/obj/effect/landmark/event_spawn, -/turf/open/floor/plasteel/blue/corner{ - dir = 8 - }, -/area/hallway/primary/central) -"bJy" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 1 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"bJz" = ( -/obj/structure/disposalpipe/segment, -/obj/structure/extinguisher_cabinet{ - pixel_x = -27; - pixel_y = 1 - }, -/obj/machinery/light{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/caution/corner{ - dir = 8 - }, -/area/hallway/primary/aft) -"bJA" = ( -/obj/effect/landmark{ - name = "blobstart" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"bJB" = ( -/obj/machinery/atmospherics/pipe/manifold4w/scrubbers, -/turf/open/floor/plasteel, -/area/atmos) -"bJC" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall/r_wall, -/area/medical/sleeper) -"bJD" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 10 - }, -/turf/closed/wall/r_wall, -/area/medical/sleeper) -"bJE" = ( -/turf/closed/wall/r_wall, -/area/medical/medbay) -"bJF" = ( -/obj/machinery/pipedispenser/disposal/transit_tube, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bJG" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"bJH" = ( -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/obj/machinery/shieldwallgen{ - req_access = list(55) - }, -/turf/open/floor/plating, -/area/toxins/xenobiology) -"bJI" = ( -/obj/structure/grille, -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/machinery/door/poddoor/preopen{ - id = "misclab"; - name = "test chamber blast door" - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/engine, -/area/toxins/xenobiology) -"bJJ" = ( -/obj/structure/grille, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/machinery/door/poddoor/preopen{ - id = "misclab"; - name = "test chamber blast door" - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/engine, -/area/toxins/xenobiology) -"bJK" = ( -/obj/structure/grille, -/obj/structure/disposalpipe/segment, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/machinery/door/poddoor/preopen{ - id = "misclab"; - name = "test chamber blast door" - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/engine, -/area/toxins/xenobiology) -"bJL" = ( -/obj/machinery/door/window/southleft{ - dir = 1; - name = "Test Chamber"; - req_access_txt = "55" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/door/poddoor/preopen{ - id = "misclab"; - name = "test chamber blast door" - }, -/turf/open/floor/engine, -/area/toxins/xenobiology) -"bJM" = ( -/obj/structure/grille, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/machinery/door/poddoor/preopen{ - id = "misclab"; - name = "test chamber blast door" - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/engine, -/area/toxins/xenobiology) -"bJN" = ( -/turf/closed/wall, -/area/toxins/xenobiology) -"bJO" = ( -/obj/machinery/door/airlock/research{ - name = "Testing Lab"; - req_access_txt = "47" - }, -/turf/open/floor/plasteel, -/area/toxins/misc_lab) -"bJP" = ( -/obj/machinery/vending/boozeomat, -/turf/open/floor/plasteel/bar, -/area/maintenance/aft) -"bJQ" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"bJR" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/toxins/storage) -"bJS" = ( -/turf/open/space, -/obj/machinery/porta_turret/syndicate{ - dir = 5 - }, -/turf/closed/wall/mineral/plastitanium{ - dir = 1; - icon_state = "diagonalWall3" - }, -/area/shuttle/syndicate) -"bJT" = ( -/obj/machinery/vending/cigarette, -/turf/open/floor/plasteel/white, -/area/medical/research{ - name = "Research Division" - }) -"bJU" = ( -/obj/structure/closet/wardrobe/science_white, -/turf/open/floor/plasteel/white, -/area/toxins/mixing) -"bJV" = ( -/obj/structure/closet/l3closet/scientist{ - pixel_x = -2 - }, -/turf/open/floor/plasteel/white, -/area/toxins/mixing) -"bJW" = ( -/obj/item/device/transfer_valve{ - pixel_x = -5 - }, -/obj/item/device/transfer_valve{ - pixel_x = -5 - }, -/obj/item/device/transfer_valve{ - pixel_x = 0 - }, -/obj/item/device/transfer_valve{ - pixel_x = 0 - }, -/obj/item/device/transfer_valve{ - pixel_x = 5 - }, -/obj/item/device/transfer_valve{ - pixel_x = 5 - }, -/obj/machinery/requests_console{ - department = "Science"; - departmentType = 2; - name = "Science Requests Console"; - pixel_x = 0; - pixel_y = -30 - }, -/obj/structure/table/reinforced, -/turf/open/floor/plasteel/white, -/area/toxins/mixing) -"bJX" = ( -/obj/item/device/assembly/signaler{ - pixel_x = 0; - pixel_y = 8 - }, -/obj/item/device/assembly/signaler{ - pixel_x = -8; - pixel_y = 5 - }, -/obj/item/device/assembly/signaler{ - pixel_x = 6; - pixel_y = 5 - }, -/obj/item/device/assembly/signaler{ - pixel_x = -2; - pixel_y = -2 - }, -/obj/structure/table/reinforced, -/turf/open/floor/plasteel/white, -/area/toxins/mixing) -"bJY" = ( -/obj/structure/tank_dispenser, -/turf/open/floor/plasteel/white, -/area/toxins/mixing) -"bJZ" = ( -/obj/item/device/assembly/timer{ - pixel_x = 5; - pixel_y = 4 - }, -/obj/item/device/assembly/timer{ - pixel_x = -4; - pixel_y = 2 - }, -/obj/item/device/assembly/timer{ - pixel_x = 6; - pixel_y = -4 - }, -/obj/item/device/assembly/timer{ - pixel_x = 0; - pixel_y = 0 - }, -/obj/structure/table/reinforced, -/turf/open/floor/plasteel/white, -/area/toxins/mixing) -"bKa" = ( -/obj/machinery/power/apc{ - dir = 4; - name = "Toxins Lab APC"; - pixel_x = 26; - pixel_y = 0 - }, -/obj/structure/cable, -/turf/open/floor/plasteel/white, -/area/toxins/mixing) -"bKb" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel, -/area/toxins/mixing) -"bKc" = ( -/turf/open/floor/plasteel/warning/corner{ - dir = 4 - }, -/area/toxins/mixing) -"bKd" = ( -/obj/machinery/camera{ - c_tag = "Toxins Launch Room Access"; - dir = 1 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/warning/corner{ - dir = 8 - }, -/area/toxins/mixing) -"bKe" = ( -/obj/structure/grille, -/obj/structure/window/fulltile, -/turf/open/floor/plating, -/area/toxins/mixing) -"bKf" = ( -/obj/machinery/door/window/southleft{ - name = "Mass Driver Door"; - req_access_txt = "7" - }, -/turf/open/floor/plasteel/loadingarea, -/area/toxins/mixing) -"bKg" = ( -/turf/open/floor/plating/airless, -/area/toxins/test_area) -"bKh" = ( -/turf/open/floor/plating/airless/warnplate{ - dir = 9 - }, -/area/toxins/test_area) -"bKi" = ( -/obj/structure/chair{ - dir = 8 - }, -/turf/open/floor/plating/airless/warnplate{ - dir = 5 - }, -/area/toxins/test_area) -"bKj" = ( -/obj/machinery/camera{ - c_tag = "Mining Dock External"; - dir = 8 - }, -/obj/structure/reagent_dispensers/fueltank, -/turf/open/floor/plasteel/warning, -/area/quartermaster/miningdock) -"bKk" = ( -/obj/item/weapon/ore/silver, -/obj/item/weapon/ore/silver, -/turf/open/floor/plasteel/warning{ - dir = 10 - }, -/area/quartermaster/miningdock) -"bKl" = ( -/obj/structure/closet/emcloset, -/turf/open/floor/plasteel/brown{ - dir = 10 - }, -/area/quartermaster/miningdock) -"bKm" = ( -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; - icon_state = "space"; - layer = 4; - name = "EXTERNAL AIRLOCK"; - pixel_x = 0 - }, -/turf/closed/wall, -/area/quartermaster/miningdock) -"bKn" = ( -/obj/structure/rack{ - dir = 1 - }, -/obj/item/weapon/storage/toolbox/mechanical{ - pixel_x = -2; - pixel_y = -1 - }, -/obj/item/weapon/pickaxe{ - pixel_x = 5 - }, -/obj/item/weapon/shovel{ - pixel_x = -5 - }, -/turf/open/floor/plasteel, -/area/quartermaster/miningdock) -"bKo" = ( -/obj/machinery/light, -/turf/open/floor/plasteel, -/area/quartermaster/miningdock) -"bKp" = ( -/obj/structure/closet/crate, -/turf/open/floor/plasteel, -/area/quartermaster/miningdock) -"bKq" = ( -/obj/machinery/mineral/equipment_vendor, -/turf/open/floor/plasteel, -/area/quartermaster/miningdock) -"bKr" = ( -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/structure/cable, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/storage/tech) -"bKs" = ( -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/structure/grille, -/obj/structure/cable, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/storage/tech) -"bKt" = ( -/obj/structure/table, -/obj/item/weapon/stock_parts/micro_laser, -/obj/item/weapon/stock_parts/manipulator, -/obj/item/weapon/stock_parts/manipulator, -/obj/item/weapon/stock_parts/manipulator, -/obj/item/weapon/stock_parts/manipulator, -/obj/item/weapon/stock_parts/capacitor, -/obj/item/weapon/stock_parts/micro_laser/high, -/obj/item/weapon/stock_parts/micro_laser/high, -/obj/item/weapon/stock_parts/micro_laser/high, -/obj/item/weapon/stock_parts/micro_laser/high, -/turf/open/floor/plating, -/area/storage/tech) -"bKu" = ( -/obj/structure/table, -/obj/item/weapon/stock_parts/subspace/amplifier, -/obj/item/weapon/stock_parts/subspace/amplifier, -/obj/item/weapon/stock_parts/subspace/amplifier, -/turf/open/floor/plating, -/area/storage/tech) -"bKv" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 6 - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"bKw" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/maintenance/asmaint) -"bKx" = ( -/obj/structure/closet/crate, -/obj/effect/landmark{ - name = "blobstart" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/construction) -"bKy" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/closed/wall/r_wall, -/area/maintenance/asmaint) -"bKz" = ( -/obj/structure/reagent_dispensers/watertank, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"bKA" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/open/floor/plating, -/area/construction) -"bKB" = ( -/obj/machinery/meter, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"bKC" = ( -/obj/structure/reagent_dispensers/fueltank, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"bKD" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 1 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"bKE" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"bKF" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/storage/box, -/obj/item/weapon/storage/box, -/obj/item/weapon/storage/box, -/obj/item/weapon/hand_labeler, -/obj/item/weapon/hand_labeler, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/quartermaster/office) -"bKG" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/structure/sign/securearea{ - pixel_x = 0; - pixel_y = -32 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"bKH" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"bKI" = ( -/obj/structure/disposalpipe/sortjunction{ - dir = 8; - icon_state = "pipe-j1s"; - sortType = 11 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"bKJ" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 1 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"bKK" = ( -/obj/effect/decal/cleanable/cobweb/cobweb2, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/machinery/power/apc{ - dir = 4; - name = "Medbay APC"; - pixel_x = 24; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/medical/medbay) -"bKL" = ( -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 10 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"bKM" = ( -/obj/machinery/vending/wallmed{ - pixel_y = 28 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"bKN" = ( -/obj/machinery/door/airlock/medical{ - name = "Patient Room 2"; - req_access_txt = "5" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"bKO" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"bKP" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/window/westleft{ - name = "Delivery Desk"; - req_access_txt = "50" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/bot, -/area/quartermaster/office) -"bKQ" = ( -/obj/structure/rack{ - dir = 1 - }, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 2; - name = "2maintenance loot spawner" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"bKR" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/medical/medbay) -"bKS" = ( -/obj/machinery/power/apc{ - dir = 1; - name = "CM Office APC"; - pixel_y = 24 - }, -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/medical/cmo) -"bKT" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"bKU" = ( -/obj/machinery/door/airlock/engineering{ - name = "Construction Area"; - req_access_txt = "32" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/construction) -"bKV" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bKW" = ( -/obj/item/weapon/wrench, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/warning{ - dir = 2 - }, -/area/toxins/xenobiology) -"bKX" = ( -/obj/machinery/button/door{ - id = "misclab"; - name = "Test Chamber Blast Doors"; - pixel_x = 0; - pixel_y = -2; - req_access_txt = "55" - }, -/obj/structure/table/reinforced, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/structure/window/reinforced{ - dir = 4 - }, -/turf/open/floor/plasteel/warning{ - dir = 6 - }, -/area/toxins/xenobiology) -"bKY" = ( -/obj/machinery/computer/security/telescreen{ - name = "Test Chamber Moniter"; - network = list("Xeno"); - pixel_x = 0; - pixel_y = 2 - }, -/obj/structure/table/reinforced, -/turf/open/floor/plasteel/warning{ - dir = 2 - }, -/area/toxins/xenobiology) -"bKZ" = ( -/obj/machinery/disposal/bin, -/obj/structure/disposalpipe/trunk{ - dir = 1 - }, -/obj/structure/window/reinforced{ - dir = 8 - }, -/turf/open/floor/plasteel/warning{ - dir = 10 - }, -/area/toxins/xenobiology) -"bLa" = ( -/obj/machinery/door/window/southleft{ - name = "Test Chamber"; - req_access_txt = "55" - }, -/turf/open/floor/plasteel/warning{ - dir = 2 - }, -/area/toxins/xenobiology) -"bLb" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/warning{ - dir = 2 - }, -/area/toxins/xenobiology) -"bLc" = ( -/obj/item/clothing/mask/gas, -/obj/item/clothing/mask/gas, -/obj/item/clothing/mask/gas, -/obj/item/clothing/glasses/science, -/obj/item/clothing/glasses/science, -/obj/structure/table, -/turf/open/floor/plasteel/warning{ - dir = 2 - }, -/area/toxins/xenobiology) -"bLd" = ( -/obj/structure/sink{ - icon_state = "sink"; - dir = 8; - pixel_x = -12; - pixel_y = 2 - }, -/obj/machinery/doorButtons/access_button{ - idDoor = "virology_airlock_interior"; - idSelf = "virology_airlock_control"; - name = "Virology Access Button"; - pixel_x = 8; - pixel_y = -28; - req_access_txt = "39" - }, -/turf/open/floor/plasteel/warnwhite{ - dir = 10 - }, -/area/medical/virology) -"bLe" = ( -/obj/structure/sign/biohazard, -/turf/closed/wall, -/area/toxins/xenobiology) -"bLf" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - on = 1 - }, -/turf/open/floor/plasteel/white, -/area/medical/virology) -"bLg" = ( -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 6 - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"bLh" = ( -/obj/structure/sign/fire, -/turf/closed/wall, -/area/medical/research{ - name = "Research Division" - }) -"bLi" = ( -/obj/structure/sign/nosmoking_2{ - pixel_x = -32 - }, -/turf/open/floor/plasteel/white, -/area/toxins/mixing) -"bLj" = ( -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; - icon_state = "space"; - layer = 4; - name = "EXTERNAL AIRLOCK"; - pixel_x = 0; - pixel_y = -32 - }, -/turf/open/floor/plating, -/area/toxins/mixing) -"bLk" = ( -/obj/machinery/mass_driver{ - dir = 4; - id = "toxinsdriver" - }, -/turf/open/floor/plating, -/area/toxins/mixing) -"bLl" = ( -/obj/machinery/door/poddoor{ - id = "toxinsdriver"; - name = "toxins launcher bay door" - }, -/turf/open/floor/plating, -/area/toxins/mixing) -"bLm" = ( -/turf/open/floor/plating/warnplate{ - dir = 4 - }, -/area/toxins/mixing) -"bLn" = ( -/turf/open/floor/plating/airless/warnplate{ - dir = 4 - }, -/area/toxins/test_area) -"bLo" = ( -/turf/open/floor/plating/airless/warnplate{ - dir = 8 - }, -/area/toxins/test_area) -"bLp" = ( -/obj/item/device/radio/beacon, -/turf/open/floor/plating/airless, -/area/toxins/test_area) -"bLq" = ( -/turf/closed/indestructible{ - desc = "A wall impregnated with Fixium, able to withstand massive explosions with ease"; - icon_state = "riveted"; - name = "hyper-reinforced wall" - }, -/area/toxins/test_area) -"bLr" = ( -/obj/machinery/camera{ - active_power_usage = 0; - c_tag = "Bomb Test Site"; - desc = "A specially-reinforced camera with a long lasting battery, used to monitor the bomb testing site."; - dir = 8; - invuln = 1; - light = null; - name = "Hardened Bomb-Test Camera"; - network = list("Toxins"); - use_power = 0 - }, -/obj/item/target/alien{ - anchored = 1 - }, -/turf/open/floor/plating/warnplate{ - dir = 4; - luminosity = 2; - initial_gas_mix = "o2=0.01;n2=0.01" - }, -/area/toxins/test_area) -"bLs" = ( -/obj/structure/ore_box, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/labor) -"bLt" = ( -/obj/structure/shuttle/engine/heater, -/turf/open/floor/plating, -/area/shuttle/labor) -"bLu" = ( -/obj/structure/rack{ - dir = 8; - layer = 2.9 - }, -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plating, -/area/maintenance/aft) -"bLv" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/maintenance/aft) -"bLw" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/aft) -"bLx" = ( -/obj/structure/table, -/obj/item/weapon/stock_parts/subspace/transmitter, -/obj/item/weapon/stock_parts/subspace/transmitter, -/obj/item/weapon/stock_parts/subspace/treatment, -/obj/item/weapon/stock_parts/subspace/treatment, -/obj/item/weapon/stock_parts/subspace/treatment, -/turf/open/floor/plating, -/area/storage/tech) -"bLy" = ( -/obj/structure/table, -/obj/item/weapon/stock_parts/subspace/ansible, -/obj/item/weapon/stock_parts/subspace/ansible, -/obj/item/weapon/stock_parts/subspace/ansible, -/obj/item/weapon/stock_parts/subspace/crystal, -/obj/item/weapon/stock_parts/subspace/crystal, -/obj/item/weapon/stock_parts/subspace/crystal, -/turf/open/floor/plating, -/area/storage/tech) -"bLz" = ( -/obj/structure/table, -/obj/item/weapon/stock_parts/subspace/filter, -/obj/item/weapon/stock_parts/subspace/filter, -/obj/item/weapon/stock_parts/subspace/filter, -/obj/item/weapon/stock_parts/subspace/filter, -/obj/item/weapon/stock_parts/subspace/filter, -/obj/machinery/light/small, -/turf/open/floor/plating, -/area/storage/tech) -"bLA" = ( -/obj/structure/rack{ - dir = 8; - layer = 2.9 - }, -/obj/item/weapon/storage/toolbox/electrical{ - pixel_x = 1; - pixel_y = -1 - }, -/obj/item/clothing/gloves/color/yellow, -/obj/item/device/t_scanner, -/obj/item/device/multitool, -/turf/open/floor/plating, -/area/storage/tech) -"bLB" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/maintenance/aft) -"bLC" = ( -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/construction) -"bLD" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/storage/tech) -"bLE" = ( -/turf/open/floor/plasteel/grimy, -/area/security/detectives_office) -"bLF" = ( -/obj/structure/table/reinforced, -/obj/item/device/destTagger, -/obj/item/device/destTagger, -/obj/machinery/computer/stockexchange, -/turf/open/floor/plasteel, -/area/quartermaster/office) -"bLG" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/grimy, -/area/security/detectives_office) -"bLH" = ( -/obj/structure/closet/emcloset, -/turf/open/floor/plasteel/caution{ - dir = 5 - }, -/area/hallway/primary/aft) -"bLI" = ( -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel, -/area/hallway/primary/aft) -"bLJ" = ( -/obj/machinery/portable_atmospherics/canister/air, -/turf/open/floor/plasteel/bot, -/area/atmos) -"bLK" = ( -/turf/closed/wall/r_wall, -/area/atmos) -"bLL" = ( -/obj/machinery/portable_atmospherics/canister/nitrogen, -/turf/open/floor/plasteel/bot, -/area/atmos) -"bLM" = ( -/obj/machinery/portable_atmospherics/canister/oxygen, -/turf/open/floor/plasteel/bot, -/area/atmos) -"bLN" = ( -/obj/machinery/portable_atmospherics/canister/nitrous_oxide, -/turf/open/floor/plasteel/bot, -/area/atmos) -"bLO" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/door/firedoor/heavy, -/obj/machinery/door/airlock/maintenance{ - name = "Atmospherics Maintenance"; - req_access_txt = "24" - }, -/turf/open/floor/plating, -/area/atmos) -"bLP" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall/r_wall, -/area/atmos) -"bLQ" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible, -/turf/closed/wall/r_wall, -/area/atmos) -"bLR" = ( -/obj/machinery/atmospherics/pipe/simple/supply/visible, -/turf/closed/wall/r_wall, -/area/atmos) -"bLS" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"bLT" = ( -/obj/structure/disposalpipe/segment, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"bLU" = ( -/obj/structure/table, -/obj/item/weapon/folder/white, -/obj/item/clothing/neck/stethoscope, -/obj/machinery/light/small{ - dir = 8 - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"bLV" = ( -/obj/structure/closet/secure_closet/personal/patient, -/obj/machinery/button/door{ - id = "medpriv1"; - name = "Privacy Shutters"; - pixel_y = -25 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"bLW" = ( -/obj/structure/chair/office/light{ - dir = 8 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"bLX" = ( -/obj/machinery/atmospherics/pipe/manifold4w/scrubbers, -/turf/open/floor/plasteel/white, -/area/medical/medbay) -"bLY" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - on = 1 - }, -/turf/open/floor/plasteel/white, -/area/medical/virology) -"bLZ" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plasteel, -/area/hallway/primary/aft) -"bMa" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 5 - }, -/turf/open/floor/plasteel/white, -/area/medical/virology) -"bMb" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"bMc" = ( -/obj/machinery/door/airlock/maintenance{ - name = "Medbay Maintenance"; - req_access_txt = "5" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/medical/medbay) -"bMd" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"bMe" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/junction, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"bMf" = ( -/obj/structure/table, -/obj/machinery/cell_charger{ - pixel_y = 5 - }, -/obj/item/stack/cable_coil, -/obj/item/device/multitool, -/obj/item/weapon/stock_parts/cell/high/plus, -/obj/structure/window/reinforced{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/toxins/misc_lab) -"bMg" = ( -/obj/machinery/power/apc{ - dir = 8; - name = "Xenobiology APC"; - pixel_x = -25 - }, -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/obj/structure/cable, -/turf/open/floor/plasteel/white, -/area/toxins/xenobiology) -"bMh" = ( -/obj/structure/chair/stool, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/turf/open/floor/plasteel/white, -/area/toxins/xenobiology) -"bMi" = ( -/turf/open/floor/plasteel/white, -/area/toxins/xenobiology) -"bMj" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 9 - }, -/turf/closed/wall, -/area/maintenance/aft) -"bMk" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/turf/open/floor/plasteel/white, -/area/toxins/xenobiology) -"bMl" = ( -/obj/machinery/processor{ - desc = "A machine used to process slimes and retrieve their extract."; - name = "Slime Processor" - }, -/turf/open/floor/plasteel/white, -/area/toxins/xenobiology) -"bMm" = ( -/obj/machinery/monkey_recycler, -/obj/machinery/firealarm{ - dir = 2; - pixel_y = 24 - }, -/turf/open/floor/plasteel/white, -/area/toxins/xenobiology) -"bMn" = ( -/obj/structure/table, -/obj/machinery/reagentgrinder, -/obj/machinery/airalarm{ - frequency = 1439; - pixel_y = 23 - }, -/turf/open/floor/plasteel/white, -/area/toxins/xenobiology) -"bMo" = ( -/obj/machinery/smartfridge/extract, -/turf/open/floor/plasteel/white, -/area/toxins/xenobiology) -"bMp" = ( -/obj/structure/closet/l3closet/scientist, -/obj/machinery/light_switch{ - pixel_x = 0; - pixel_y = 28 - }, -/turf/open/floor/plasteel/white, -/area/toxins/xenobiology) -"bMq" = ( -/obj/structure/closet/l3closet/scientist, -/turf/open/floor/plasteel/white, -/area/toxins/xenobiology) -"bMr" = ( -/obj/structure/grille, -/obj/structure/window/fulltile, -/turf/open/floor/plating, -/area/toxins/xenobiology) -"bMs" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/medical/research{ - name = "Research Division" - }) -"bMt" = ( -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; - icon_state = "space"; - layer = 4; - name = "EXTERNAL AIRLOCK"; - pixel_x = 0; - pixel_y = 32 - }, -/turf/open/floor/engine/vacuum, -/area/toxins/mixing) -"bMu" = ( -/obj/machinery/door/poddoor{ - id = "mixvent"; - name = "Mixer Room Vent" - }, -/turf/open/floor/engine/vacuum, -/area/toxins/mixing) -"bMv" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible{ - dir = 4 - }, -/turf/closed/wall/r_wall, -/area/toxins/mixing) -"bMw" = ( -/obj/machinery/sparker{ - dir = 2; - id = "mixingsparker"; - pixel_x = 25 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - external_pressure_bound = 0; - initialize_directions = 1; - internal_pressure_bound = 4000; - on = 1; - pressure_checks = 2; - pump_direction = 0 - }, -/turf/open/floor/engine/vacuum, -/area/toxins/mixing) -"bMx" = ( -/obj/machinery/airlock_sensor{ - id_tag = "tox_airlock_sensor"; - master_tag = "tox_airlock_control"; - pixel_y = 24 - }, -/obj/machinery/atmospherics/components/binary/pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/engine, -/area/toxins/mixing) -"bMy" = ( -/obj/machinery/atmospherics/components/binary/valve{ - dir = 4; - name = "mix to port" - }, -/turf/open/floor/plasteel/warnwhite{ - dir = 4 - }, -/area/toxins/mixing) -"bMz" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible{ - dir = 4 - }, -/obj/machinery/meter, -/obj/machinery/embedded_controller/radio/airlock_controller{ - airpump_tag = "tox_airlock_pump"; - exterior_door_tag = "tox_airlock_exterior"; - id_tag = "tox_airlock_control"; - interior_door_tag = "tox_airlock_interior"; - pixel_x = -24; - pixel_y = 0; - sanitize_external = 1; - sensor_tag = "tox_airlock_sensor" - }, -/turf/open/floor/plasteel/warnwhite/corner{ - dir = 1 - }, -/area/toxins/mixing) -"bMA" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible{ - dir = 8 - }, -/turf/open/floor/plasteel/warning{ - dir = 5 - }, -/area/toxins/mixing) -"bMB" = ( -/obj/structure/reagent_dispensers/fueltank, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"bMC" = ( -/obj/effect/decal/cleanable/cobweb/cobweb2, -/obj/effect/spawner/lootdrop/maintenance, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"bMD" = ( -/turf/open/floor/plating/airless/warnplate{ - dir = 10 - }, -/area/toxins/test_area) -"bME" = ( -/obj/structure/chair{ - dir = 8 - }, -/turf/open/floor/plating/airless/warnplate{ - dir = 6 - }, -/area/toxins/test_area) -"bMF" = ( -/obj/structure/shuttle/engine/propulsion/burst, -/obj/structure/window/reinforced{ - dir = 1; - layer = 2.9 - }, -/turf/open/floor/plating/airless, -/area/shuttle/labor) -"bMG" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/turf/open/floor/plasteel, -/area/hallway/primary/aft) -"bMH" = ( -/obj/machinery/holopad, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 8 - }, -/turf/open/floor/plasteel/white, -/area/medical/virology) -"bMI" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 1 - }, -/turf/open/floor/plasteel/white, -/area/medical/virology) -"bMJ" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 10 - }, -/turf/open/floor/plasteel/white, -/area/medical/virology) -"bMK" = ( -/turf/closed/wall, -/area/atmos) -"bML" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible{ - dir = 4 - }, -/obj/machinery/portable_atmospherics/canister/air, -/turf/open/floor/plasteel, -/area/atmos) -"bMM" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible{ - dir = 8 - }, -/obj/machinery/airalarm{ - pixel_y = 23 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bMN" = ( -/obj/machinery/atmospherics/components/trinary/filter{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bMO" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/atmos) -"bMP" = ( -/obj/machinery/firealarm{ - dir = 2; - pixel_y = 24 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/atmos) -"bMQ" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/atmos) -"bMR" = ( -/obj/machinery/pipedispenser, -/turf/open/floor/plasteel, -/area/atmos) -"bMS" = ( -/obj/machinery/camera{ - c_tag = "Atmospherics North East" - }, -/obj/machinery/atmospherics/components/binary/pump{ - dir = 8; - name = "Distro to Waste"; - on = 0 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bMT" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/visible{ - dir = 8 - }, -/obj/machinery/light{ - dir = 1 - }, -/obj/machinery/meter{ - frequency = 1441; - id_tag = "waste_meter"; - name = "Waste Loop" - }, -/turf/open/floor/plasteel, -/area/atmos) -"bMU" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/visible{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bMV" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/visible{ - dir = 2 - }, -/obj/machinery/meter{ - frequency = 1441; - id_tag = "distro_meter"; - name = "Distribution Loop" - }, -/turf/open/floor/plasteel, -/area/atmos) -"bMW" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/visible{ - dir = 10; - initialize_directions = 10 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bMX" = ( -/obj/machinery/atmospherics/components/binary/pump{ - dir = 8; - name = "Air to Distro"; - on = 1 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bMY" = ( -/obj/machinery/atmospherics/pipe/simple/yellow/visible{ - dir = 4 - }, -/turf/closed/wall/r_wall, -/area/atmos) -"bMZ" = ( -/obj/machinery/atmospherics/pipe/simple/yellow/visible{ - dir = 6 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bNa" = ( -/obj/structure/lattice, -/obj/machinery/atmospherics/pipe/simple/yellow/visible{ - dir = 4 - }, -/turf/open/space, -/area/space) -"bNb" = ( -/obj/item/weapon/airlock_painter, -/obj/structure/lattice, -/obj/structure/closet, -/turf/open/space, -/area/space/nearstation) -"bNc" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall/r_wall, -/area/medical/virology) -"bNd" = ( -/turf/closed/wall/r_wall, -/area/medical/virology) -"bNe" = ( -/obj/structure/window/reinforced{ - dir = 4 - }, -/obj/structure/table, -/obj/item/weapon/hand_labeler, -/obj/item/clothing/glasses/science, -/obj/item/clothing/glasses/science, -/turf/open/floor/plasteel, -/area/toxins/misc_lab) -"bNf" = ( -/obj/structure/sign/biohazard, -/turf/closed/wall, -/area/medical/virology) -"bNg" = ( -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/aft) -"bNh" = ( -/obj/machinery/computer/pandemic, -/turf/open/floor/plasteel/whitegreen/side{ - dir = 4 - }, -/area/medical/virology) -"bNi" = ( -/obj/structure/chair/stool, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - external_pressure_bound = 101.325; - on = 1; - pressure_checks = 1 - }, -/turf/open/floor/plasteel/white, -/area/medical/virology) -"bNj" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass_virology{ - name = "Isolation A"; - req_access_txt = "39" - }, -/turf/open/floor/plasteel/white, -/area/medical/virology) -"bNk" = ( -/obj/structure/grille, -/obj/structure/window/fulltile, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/medical/virology) -"bNl" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass_virology{ - name = "Isolation B"; - req_access_txt = "39" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/white, -/area/medical/virology) -"bNm" = ( -/turf/open/floor/plasteel/warning/corner{ - dir = 8 - }, -/area/toxins/misc_lab) -"bNn" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/toxins/xenobiology) -"bNo" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/toxins/xenobiology) -"bNp" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/toxins/xenobiology) -"bNq" = ( -/obj/structure/table, -/obj/item/stack/sheet/glass{ - amount = 50; - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/stack/sheet/metal{ - amount = 50 - }, -/obj/item/stack/sheet/mineral/plasma{ - layer = 2.9 - }, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/toxins/misc_lab) -"bNr" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/research{ - name = "Xenobiology Lab"; - req_access_txt = "55" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/toxins/xenobiology) -"bNs" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/plasteel/white, -/area/medical/virology) -"bNt" = ( -/turf/open/floor/engine/vacuum, -/area/toxins/mixing) -"bNu" = ( -/obj/machinery/door/airlock/glass_research{ - autoclose = 0; - frequency = 1449; - glass = 1; - heat_proof = 1; - icon_state = "door_locked"; - id_tag = "tox_airlock_exterior"; - locked = 1; - name = "Mixing Room Exterior Airlock"; - req_access_txt = "8" - }, -/turf/open/floor/engine, -/area/toxins/mixing) -"bNv" = ( -/obj/machinery/door/airlock/glass_research{ - autoclose = 0; - frequency = 1449; - glass = 1; - heat_proof = 1; - icon_state = "door_locked"; - id_tag = "tox_airlock_interior"; - locked = 1; - name = "Mixing Room Interior Airlock"; - req_access_txt = "8" - }, -/turf/open/floor/engine, -/area/toxins/mixing) -"bNw" = ( -/obj/machinery/atmospherics/components/binary/dp_vent_pump/high_volume{ - dir = 2; - frequency = 1449; - id = "tox_airlock_pump" - }, -/turf/open/floor/engine, -/area/toxins/mixing) -"bNx" = ( -/turf/open/floor/plasteel/warnwhite{ - dir = 4 - }, -/area/toxins/mixing) -"bNy" = ( -/turf/open/floor/plasteel/warnwhite{ - dir = 8 - }, -/area/toxins/mixing) -"bNz" = ( -/obj/structure/extinguisher_cabinet{ - pixel_x = 27; - pixel_y = 0 - }, -/obj/machinery/camera{ - c_tag = "Toxins Lab East"; - dir = 8; - network = list("SS13","RD"); - pixel_y = -22 - }, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/toxins/mixing) -"bNA" = ( -/obj/structure/reagent_dispensers/watertank, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"bNB" = ( -/obj/structure/rack, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 2; - name = "2maintenance loot spawner" - }, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"bNC" = ( -/obj/structure/closet/wardrobe/grey, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"bND" = ( -/obj/structure/chair{ - dir = 1 - }, -/turf/open/floor/plating/airless/warnplate{ - dir = 10 - }, -/area/toxins/test_area) -"bNE" = ( -/obj/structure/chair{ - dir = 1 - }, -/turf/open/floor/plating/airless/warnplate{ - dir = 6 - }, -/area/toxins/test_area) -"bNF" = ( -/obj/item/device/flashlight/lamp, -/turf/open/floor/plating/airless/warnplate{ - dir = 2 - }, -/area/toxins/test_area) -"bNG" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/toxins/test_area) -"bNH" = ( -/obj/structure/table/reinforced, -/obj/item/stack/wrapping_paper{ - pixel_x = 3; - pixel_y = 4 - }, -/obj/item/stack/packageWrap{ - pixel_x = -1; - pixel_y = -1 - }, -/obj/item/device/radio/intercom{ - name = "Station Intercom (General)"; - pixel_y = -26 - }, -/turf/open/floor/plasteel, -/area/quartermaster/office) -"bNI" = ( -/turf/closed/wall, -/area/construction) -"bNJ" = ( -/turf/open/floor/plating, -/area/construction) -"bNK" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass_mining{ - name = "Cargo Office"; - req_access_txt = "50" - }, -/turf/open/floor/plasteel, -/area/quartermaster/office) -"bNL" = ( -/obj/machinery/airalarm{ - frequency = 1439; - pixel_y = 23 - }, -/turf/open/floor/plating, -/area/construction) -"bNM" = ( -/turf/open/floor/plasteel/loadingarea{ - dir = 4 - }, -/area/quartermaster/office) -"bNN" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/hallway/primary/aft) -"bNO" = ( -/turf/open/floor/plasteel/caution{ - dir = 6 - }, -/area/hallway/primary/aft) -"bNP" = ( -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/obj/item/device/radio/intercom{ - freerange = 0; - frequency = 1459; - name = "Station Intercom (General)"; - pixel_x = -30 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bNQ" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bNR" = ( -/obj/machinery/disposal/bin, -/obj/structure/disposalpipe/trunk{ - dir = 8 - }, -/obj/machinery/airalarm{ - pixel_y = 23 - }, -/obj/machinery/camera{ - c_tag = "Atmospherics Monitoring"; - dir = 2; - network = list("SS13") - }, -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/turf/open/floor/plasteel/caution{ - dir = 5 - }, -/area/atmos) -"bNS" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bNT" = ( -/obj/machinery/camera{ - c_tag = "Atmospherics North West"; - dir = 4; - network = list("SS13") - }, -/obj/machinery/light{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bNU" = ( -/obj/structure/grille, -/obj/structure/window/fulltile, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 8 - }, -/turf/open/floor/plating, -/area/medical/virology) -"bNV" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bNW" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - external_pressure_bound = 101.325; - on = 1; - pressure_checks = 1 - }, -/turf/open/floor/plasteel/white, -/area/medical/virology) -"bNX" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/floorgrime, -/area/toxins/misc_lab) -"bNY" = ( -/obj/structure/grille, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/atmos) -"bNZ" = ( -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - on = 1 - }, -/turf/open/floor/plasteel, -/area/toxins/misc_lab) -"bOa" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bOb" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bOc" = ( -/obj/machinery/atmospherics/components/binary/pump{ - dir = 1; - name = "Mix to Distro"; - on = 0 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bOd" = ( -/turf/open/floor/plasteel, -/area/atmos) -"bOe" = ( -/obj/machinery/atmospherics/pipe/manifold/cyan/visible{ - dir = 8; - initialize_directions = 11 - }, -/obj/machinery/meter, -/turf/open/floor/plasteel, -/area/atmos) -"bOf" = ( -/obj/structure/grille, -/obj/machinery/atmospherics/pipe/simple/cyan/visible{ - dir = 10; - initialize_directions = 10 - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/atmos) -"bOg" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/visible{ - dir = 4 - }, -/obj/machinery/atmospherics/components/binary/pump{ - dir = 1; - name = "Mix to Incinerator"; - on = 0 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bOh" = ( -/obj/structure/grille, -/turf/closed/wall/r_wall, -/area/atmos) -"bOi" = ( -/turf/open/floor/plasteel/airless{ - icon_state = "damaged5" - }, -/area/space/nearstation) -"bOj" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 8 - }, -/turf/closed/wall/r_wall, -/area/medical/virology) -"bOk" = ( -/obj/machinery/disposal/bin, -/obj/structure/disposalpipe/trunk{ - dir = 8 - }, -/turf/open/floor/plasteel/warning/corner{ - dir = 2 - }, -/area/toxins/misc_lab) -"bOl" = ( -/obj/machinery/light{ - dir = 1 - }, -/obj/machinery/announcement_system, -/turf/open/floor/plasteel, -/area/tcommsat/computer) -"bOm" = ( -/obj/item/weapon/bedsheet, -/obj/structure/bed, -/turf/open/floor/plasteel/white, -/area/medical/virology) -"bOn" = ( -/obj/machinery/light{ - dir = 1 - }, -/obj/machinery/airalarm{ - frequency = 1439; - pixel_y = 23 - }, -/turf/open/floor/plasteel/white, -/area/medical/virology) -"bOo" = ( -/obj/item/device/radio/intercom{ - dir = 8; - freerange = 1; - name = "Station Intercom (Telecoms)"; - pixel_x = 0; - pixel_y = 26 - }, -/turf/open/floor/plasteel, -/area/tcommsat/computer) -"bOp" = ( -/obj/structure/closet/emcloset, -/obj/machinery/camera{ - c_tag = "Virology Airlock"; - dir = 2; - network = list("SS13") - }, -/turf/open/floor/plasteel/warnwhite{ - dir = 5 - }, -/area/medical/virology) -"bOq" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/white, -/area/medical/virology) -"bOr" = ( -/turf/open/floor/plasteel/white, -/area/medical/virology) -"bOs" = ( -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/plasteel/white, -/area/medical/virology) -"bOt" = ( -/mob/living/carbon/monkey, -/turf/open/floor/plasteel/white, -/area/medical/virology) -"bOu" = ( -/obj/structure/rack, -/obj/item/clothing/mask/gas{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/clothing/mask/gas, -/obj/item/clothing/mask/gas{ - pixel_x = -3; - pixel_y = -3 - }, -/obj/machinery/airalarm{ - dir = 4; - locked = 0; - pixel_x = -23; - pixel_y = 0 - }, -/turf/open/floor/plasteel, -/area/toxins/misc_lab) -"bOv" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/toxins/misc_lab) -"bOw" = ( -/obj/machinery/firealarm{ - dir = 1; - pixel_y = -24 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/droneDispenser, -/turf/open/floor/plasteel, -/area/toxins/misc_lab) -"bOx" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/toxins/xenobiology) -"bOy" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/floorgrime, -/area/toxins/misc_lab) -"bOz" = ( -/obj/structure/chair/stool, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/toxins/xenobiology) -"bOA" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white/side{ - dir = 1 - }, -/area/medical/research{ - name = "Research Division" - }) -"bOB" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 10 - }, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/toxins/misc_lab) -"bOC" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/plasteel, -/area/tcommsat/computer) -"bOD" = ( -/obj/structure/chair/office/dark{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/tcommsat/computer) -"bOE" = ( -/obj/machinery/sparker{ - dir = 2; - id = "mixingsparker"; - pixel_x = 25 - }, -/obj/machinery/atmospherics/components/unary/outlet_injector/on{ - dir = 4; - frequency = 1441; - id = "air_in" - }, -/turf/open/floor/engine/vacuum, -/area/toxins/mixing) -"bOF" = ( -/obj/structure/sign/fire{ - pixel_y = -32 - }, -/obj/machinery/atmospherics/components/binary/pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/engine, -/area/toxins/mixing) -"bOG" = ( -/obj/machinery/light, -/obj/machinery/atmospherics/components/binary/valve{ - dir = 4; - name = "port to mix" - }, -/turf/open/floor/plasteel/warnwhite{ - dir = 4 - }, -/area/toxins/mixing) -"bOH" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible{ - dir = 4 - }, -/obj/machinery/meter, -/obj/machinery/button/door{ - id = "mixvent"; - name = "Mixing Room Vent Control"; - pixel_x = -25; - pixel_y = 5; - req_access_txt = "7" - }, -/obj/machinery/button/ignition{ - id = "mixingsparker"; - pixel_x = -25; - pixel_y = -5 - }, -/turf/open/floor/plasteel/warnwhite/corner{ - dir = 4 - }, -/area/toxins/mixing) -"bOI" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible{ - dir = 8 - }, -/turf/open/floor/plasteel/warning{ - dir = 6 - }, -/area/toxins/mixing) -"bOJ" = ( -/obj/item/target, -/obj/structure/window/reinforced{ - dir = 1 - }, -/turf/open/floor/plating/warnplate, -/area/toxins/test_area) -"bOK" = ( -/obj/structure/barricade/wooden, -/obj/structure/girder, -/turf/open/floor/plating, -/area/maintenance/aft) -"bOL" = ( -/obj/structure/closet/crate, -/turf/open/floor/plasteel, -/area/quartermaster/office) -"bOM" = ( -/obj/structure/table, -/obj/item/weapon/paper_bin, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 10 - }, -/turf/open/floor/plasteel, -/area/tcommsat/computer) -"bON" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "kanyewest"; - layer = 2.9; - name = "privacy shutters" - }, -/turf/open/floor/plating, -/area/security/detectives_office) -"bOO" = ( -/obj/machinery/power/apc{ - dir = 8; - name = "Engineering Security APC"; - pixel_x = -24 - }, -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/obj/machinery/newscaster{ - pixel_y = 32 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - on = 1 - }, -/turf/open/floor/plasteel/red/side{ - dir = 9 - }, -/area/security/checkpoint/engineering) -"bOP" = ( -/obj/structure/table/glass, -/obj/structure/reagent_dispensers/virusfood{ - density = 0; - pixel_x = -30 - }, -/obj/item/weapon/book/manual/wiki/infections{ - pixel_y = 7 - }, -/obj/item/weapon/reagent_containers/syringe/antiviral, -/obj/item/weapon/reagent_containers/dropper, -/obj/item/weapon/reagent_containers/spray/cleaner, -/turf/open/floor/plasteel/whitegreen/side{ - dir = 8 - }, -/area/medical/virology) -"bOQ" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/loadingarea{ - dir = 8 - }, -/area/hallway/primary/aft) -"bOR" = ( -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel, -/area/hallway/primary/aft) -"bOS" = ( -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 6 - }, -/turf/open/floor/plasteel/loadingarea{ - dir = 4 - }, -/area/atmos) -"bOT" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/plasticflaps{ - opacity = 1 - }, -/obj/machinery/navbeacon{ - codes_txt = "delivery;dir=4"; - dir = 4; - freq = 1400; - location = "Atmospherics" - }, -/turf/open/floor/plasteel/delivery{ - name = "floor" - }, -/area/atmos) -"bOU" = ( -/obj/machinery/holopad, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bOV" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bOW" = ( -/obj/machinery/computer/atmos_control, -/obj/machinery/requests_console{ - department = "Atmospherics"; - departmentType = 4; - name = "Atmos RC"; - pixel_x = 30; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/caution{ - dir = 4 - }, -/area/atmos) -"bOX" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/atmos) -"bOY" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/atmos) -"bOZ" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/atmos) -"bPa" = ( -/obj/structure/grille, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/atmos) -"bPb" = ( -/obj/machinery/door/airlock/glass_research{ - name = "Firing Range"; - req_access_txt = "47" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/toxins/misc_lab) -"bPc" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bPd" = ( -/obj/machinery/atmospherics/components/binary/pump{ - dir = 0; - name = "Waste In"; - on = 1 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bPe" = ( -/obj/machinery/atmospherics/pipe/manifold/yellow/visible, -/turf/open/floor/plasteel, -/area/atmos) -"bPf" = ( -/obj/machinery/atmospherics/components/binary/pump{ - dir = 0; - name = "Air to Mix"; - on = 0 - }, -/obj/machinery/atmospherics/pipe/simple/yellow/visible{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bPg" = ( -/obj/machinery/atmospherics/components/binary/pump{ - dir = 8; - name = "Mix Outlet Pump"; - on = 0 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bPh" = ( -/obj/structure/grille, -/obj/machinery/atmospherics/pipe/simple/cyan/visible, -/obj/machinery/atmospherics/pipe/simple/yellow/visible{ - dir = 4 - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/atmos) -"bPi" = ( -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/obj/machinery/atmospherics/pipe/manifold/yellow/visible, -/turf/open/floor/plasteel/green/side{ - dir = 5 - }, -/area/atmos) -"bPj" = ( -/obj/machinery/atmospherics/pipe/simple{ - dir = 4 - }, -/obj/structure/grille, -/obj/machinery/meter, -/turf/closed/wall/r_wall, -/area/atmos) -"bPk" = ( -/obj/machinery/camera{ - c_tag = "Atmospherics Waste Tank" - }, -/turf/open/floor/engine/vacuum, -/area/atmos) -"bPl" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - external_pressure_bound = 0; - frequency = 1441; - id_tag = "mix_out"; - initialize_directions = 1; - internal_pressure_bound = 4000; - on = 1; - pressure_checks = 2; - pump_direction = 0 - }, -/turf/open/floor/engine/vacuum, -/area/atmos) -"bPm" = ( -/turf/open/floor/engine/vacuum, -/area/atmos) -"bPn" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"bPo" = ( -/obj/structure/table, -/obj/machinery/microwave{ - pixel_x = -3; - pixel_y = 6 - }, -/turf/open/floor/plasteel/white, -/area/medical/virology) -"bPp" = ( -/obj/machinery/iv_drip, -/turf/open/floor/plasteel/white, -/area/medical/virology) -"bPq" = ( -/obj/machinery/shower{ - dir = 4 - }, -/obj/structure/sign/securearea{ - pixel_x = -32; - pixel_y = 0 - }, -/turf/open/floor/plasteel/warnwhite{ - dir = 8 - }, -/area/medical/virology) -"bPr" = ( -/obj/machinery/airalarm{ - dir = 8; - icon_state = "alarm0"; - pixel_x = 24 - }, -/obj/structure/closet/l3closet, -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/turf/open/floor/plasteel/warnwhite{ - dir = 4 - }, -/area/medical/virology) -"bPs" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/toxins/misc_lab) -"bPt" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/mob/living/carbon/monkey, -/turf/open/floor/plasteel/white, -/area/medical/virology) -"bPu" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/white, -/area/medical/virology) -"bPv" = ( -/obj/structure/disposalpipe/segment, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"bPw" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall/r_wall, -/area/medical/virology) -"bPx" = ( -/obj/machinery/disposal/bin, -/obj/structure/sign/deathsposal{ - pixel_x = 0; - pixel_y = -32 - }, -/obj/structure/disposalpipe/trunk{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/toxins/xenobiology) -"bPy" = ( -/obj/effect/landmark/start{ - name = "Scientist" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/chair/comfy/black, -/turf/open/floor/plasteel/white, -/area/toxins/xenobiology) -"bPz" = ( -/obj/machinery/light, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/table/glass, -/obj/item/weapon/storage/box/monkeycubes, -/obj/item/weapon/storage/box/monkeycubes, -/turf/open/floor/plasteel/white, -/area/toxins/xenobiology) -"bPA" = ( -/obj/machinery/computer/camera_advanced/xenobio, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/toxins/xenobiology) -"bPB" = ( -/obj/structure/table/glass, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/item/weapon/folder/white, -/obj/item/weapon/pen, -/turf/open/floor/plasteel/white, -/area/toxins/xenobiology) -"bPC" = ( -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/turf/open/floor/plasteel/white, -/area/toxins/xenobiology) -"bPD" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/toxins/xenobiology) -"bPE" = ( -/obj/structure/table, -/obj/item/weapon/extinguisher{ - pixel_x = 4; - pixel_y = 3 - }, -/obj/item/weapon/extinguisher, -/turf/open/floor/plasteel/white, -/area/toxins/xenobiology) -"bPF" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/toxins/misc_lab) -"bPG" = ( -/obj/structure/table, -/obj/item/stack/sheet/mineral/plasma{ - layer = 2.9 - }, -/obj/item/stack/sheet/mineral/plasma{ - layer = 2.9 - }, -/obj/item/stack/sheet/mineral/plasma{ - layer = 2.9 - }, -/obj/machinery/light, -/obj/item/device/radio/intercom{ - name = "Station Intercom (General)"; - pixel_y = -29 - }, -/turf/open/floor/plasteel/white, -/area/toxins/xenobiology) -"bPH" = ( -/obj/structure/table, -/obj/machinery/requests_console{ - department = "Science"; - departmentType = 2; - name = "Science Requests Console"; - pixel_x = 0; - pixel_y = -30 - }, -/obj/item/weapon/paper_bin{ - pixel_x = 1; - pixel_y = 9 - }, -/obj/item/weapon/pen, -/turf/open/floor/plasteel/white, -/area/toxins/xenobiology) -"bPI" = ( -/obj/structure/reagent_dispensers/watertank, -/turf/open/floor/plasteel/white, -/area/toxins/xenobiology) -"bPJ" = ( -/obj/structure/table, -/obj/item/weapon/storage/box/beakers{ - pixel_x = 2; - pixel_y = 2 - }, -/obj/item/weapon/storage/box/syringes, -/turf/open/floor/plasteel/white, -/area/toxins/xenobiology) -"bPK" = ( -/obj/structure/grille, -/obj/structure/window/fulltile, -/turf/open/floor/plating, -/area/toxins/misc_lab) -"bPL" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/corner{ - dir = 8 - }, -/area/toxins/misc_lab) -"bPM" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/plasteel/warning/corner{ - dir = 4 - }, -/area/toxins/misc_lab) -"bPN" = ( -/turf/closed/wall, -/area/toxins/misc_lab) -"bPO" = ( -/obj/effect/spawner/lootdrop/maintenance, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"bPP" = ( -/obj/effect/decal/cleanable/oil, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"bPQ" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 10 - }, -/turf/open/floor/plasteel, -/area/tcommsat/computer) -"bPR" = ( -/obj/effect/decal/cleanable/robot_debris/old, -/turf/open/floor/wood, -/area/maintenance/aft) -"bPS" = ( -/turf/open/floor/wood, -/area/maintenance/aft) -"bPT" = ( -/turf/open/floor/wood{ - icon_state = "wood-broken" - }, -/area/maintenance/aft) -"bPU" = ( -/obj/item/weapon/shard, -/turf/open/floor/plating, -/area/maintenance/aft) -"bPV" = ( -/obj/machinery/door/airlock/maintenance{ - name = "Maint Bar Access"; - req_access_txt = "12" - }, -/obj/structure/barricade/wooden{ - name = "wooden barricade (CLOSED)" - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"bPW" = ( -/obj/effect/decal/cleanable/oil, -/turf/open/floor/plating, -/area/maintenance/aft) -"bPX" = ( -/obj/structure/closet/emcloset, -/obj/effect/decal/cleanable/cobweb, -/turf/open/floor/plating, -/area/maintenance/aft) -"bPY" = ( -/obj/structure/girder, -/obj/structure/grille/broken, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"bPZ" = ( -/obj/structure/chair{ - dir = 1 - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"bQa" = ( -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plating, -/area/maintenance/aft) -"bQb" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel, -/area/tcommsat/computer) -"bQc" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plating, -/area/construction) -"bQd" = ( -/obj/structure/table, -/obj/item/weapon/folder/blue, -/obj/item/weapon/pen/blue, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/tcommsat/computer) -"bQe" = ( -/obj/item/weapon/screwdriver{ - pixel_y = 10 - }, -/obj/machinery/button/door{ - desc = "A remote control-switch for the engineering security doors."; - id = "Engineering"; - name = "Engineering Lockdown"; - pixel_x = -24; - pixel_y = -6; - req_access_txt = "10" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/item/device/radio/off, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/red/side{ - dir = 8 - }, -/area/security/checkpoint/engineering) -"bQf" = ( -/turf/open/floor/plasteel/caution{ - dir = 5 - }, -/area/hallway/primary/aft) -"bQg" = ( -/turf/open/floor/plasteel, -/area/hallway/primary/aft) -"bQh" = ( -/obj/structure/tank_dispenser{ - pixel_x = -1 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/atmos) -"bQi" = ( -/obj/structure/grille, -/obj/machinery/door/poddoor/preopen{ - id = "atmos"; - layer = 2.9; - name = "atmos blast door" - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/atmos) -"bQj" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bQk" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 6 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bQl" = ( -/obj/machinery/computer/atmos_control, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/caution{ - dir = 4 - }, -/area/atmos) -"bQm" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bQn" = ( -/obj/structure/grille, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/window/fulltile, -/turf/open/floor/plating, -/area/atmos) -"bQo" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bQp" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 9 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bQq" = ( -/obj/machinery/camera{ - c_tag = "Security Post - Engineering"; - dir = 8; - network = list("SS13") - }, -/obj/item/device/radio/intercom{ - dir = 4; - name = "Station Intercom (General)"; - pixel_x = 27 - }, -/obj/machinery/light{ - dir = 4 - }, -/turf/open/floor/plasteel/red/side{ - dir = 4 - }, -/area/security/checkpoint/engineering) -"bQr" = ( -/obj/structure/closet/crate, -/turf/open/floor/plasteel, -/area/atmos) -"bQs" = ( -/obj/machinery/atmospherics/components/binary/pump{ - dir = 8; - name = "Mix to Filter"; - on = 1 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bQt" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/visible{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bQu" = ( -/obj/machinery/atmospherics/pipe/simple/green/visible{ - dir = 6 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bQv" = ( -/obj/machinery/atmospherics/pipe/manifold/yellow/visible{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bQw" = ( -/obj/machinery/atmospherics/pipe/manifold/green/visible{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bQx" = ( -/obj/machinery/atmospherics/pipe/manifold/green/visible{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bQy" = ( -/obj/structure/grille, -/obj/machinery/atmospherics/pipe/simple/cyan/visible, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/atmos) -"bQz" = ( -/obj/machinery/computer/atmos_control/tank{ - frequency = 1441; - input_tag = "mix_in"; - name = "Gas Mix Tank Control"; - output_tag = "mix_out"; - sensors = list("mix_sensor" = "Tank") - }, -/turf/open/floor/plasteel/green/side{ - dir = 4 - }, -/area/atmos) -"bQA" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating/airless, -/area/atmos) -"bQB" = ( -/obj/machinery/air_sensor{ - frequency = 1441; - id_tag = "mix_sensor" - }, -/turf/open/floor/engine/vacuum, -/area/atmos) -"bQC" = ( -/obj/machinery/light/small{ - dir = 4 - }, -/turf/open/floor/engine/vacuum, -/area/atmos) -"bQD" = ( -/obj/structure/chair/stool, -/turf/open/floor/plasteel/white, -/area/medical/virology) -"bQE" = ( -/obj/structure/table, -/obj/item/weapon/storage/box/donkpockets{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/machinery/newscaster{ - pixel_x = -30 - }, -/turf/open/floor/plasteel/white, -/area/medical/virology) -"bQF" = ( -/obj/structure/closet/wardrobe/virology_white, -/turf/open/floor/plasteel/white, -/area/medical/virology) -"bQG" = ( -/obj/structure/grille, -/obj/structure/window/fulltile, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/toxins/misc_lab) -"bQH" = ( -/obj/structure/closet/l3closet, -/turf/open/floor/plasteel/warnwhite{ - dir = 6 - }, -/area/medical/virology) -"bQI" = ( -/obj/machinery/firealarm{ - dir = 1; - pixel_y = -24 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel, -/area/toxins/misc_lab) -"bQJ" = ( -/obj/effect/landmark{ - name = "blobstart" - }, -/turf/open/floor/plasteel/white, -/area/medical/virology) -"bQK" = ( -/obj/machinery/door/airlock/glass_command{ - name = "Control Room"; - req_access_txt = "19; 61" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/tcommsat/computer) -"bQL" = ( -/obj/machinery/door/firedoor, -/obj/structure/disposalpipe/segment, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/turf/open/floor/plasteel/warnwhite{ - dir = 1 - }, -/area/toxins/xenobiology) -"bQM" = ( -/obj/machinery/door/firedoor, -/turf/open/floor/plasteel/warnwhite{ - dir = 1 - }, -/area/toxins/xenobiology) -"bQN" = ( -/obj/machinery/door/firedoor, -/obj/machinery/light{ - icon_state = "tube1"; - dir = 4 - }, -/obj/machinery/camera{ - c_tag = "Xenobiology North"; - dir = 8; - network = list("SS13","RD") - }, -/turf/open/floor/plasteel/warnwhite{ - dir = 1 - }, -/area/toxins/xenobiology) -"bQO" = ( -/obj/structure/closet/bombcloset, -/obj/machinery/light_switch{ - pixel_x = -20; - pixel_y = 0 - }, -/turf/open/floor/plasteel, -/area/toxins/misc_lab) -"bQP" = ( -/obj/structure/window/reinforced/fulltile, -/obj/structure/grille, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/tcommsat/computer) -"bQQ" = ( -/obj/machinery/door/firedoor, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plasteel, -/area/hallway/primary/aft) -"bQR" = ( -/obj/structure/table, -/obj/structure/window/reinforced{ - dir = 4 - }, -/obj/item/weapon/storage/toolbox/mechanical, -/obj/item/clothing/ears/earmuffs, -/obj/machinery/camera{ - c_tag = "Testing Lab North"; - dir = 2; - network = list("SS13","RD") - }, -/turf/open/floor/plasteel, -/area/toxins/misc_lab) -"bQS" = ( -/obj/machinery/requests_console{ - department = "Science"; - departmentType = 2; - dir = 2; - name = "Science Requests Console"; - pixel_x = 0; - pixel_y = 30 - }, -/turf/open/floor/plasteel, -/area/toxins/misc_lab) -"bQT" = ( -/obj/machinery/atmospherics/pipe/manifold/general/visible{ - dir = 1 - }, -/turf/open/floor/engine, -/area/toxins/misc_lab) -"bQU" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible{ - dir = 4 - }, -/turf/open/floor/engine, -/area/toxins/misc_lab) -"bQV" = ( -/obj/machinery/atmospherics/components/trinary/filter{ - dir = 4; - req_access = null - }, -/turf/open/floor/engine, -/area/toxins/misc_lab) -"bQW" = ( -/obj/machinery/atmospherics/components/unary/thermomachine/heater{ - dir = 8 - }, -/turf/open/floor/engine, -/area/toxins/misc_lab) -"bQX" = ( -/turf/open/floor/plasteel/floorgrime, -/area/toxins/misc_lab) -"bQY" = ( -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/plasteel/warning{ - dir = 9 - }, -/area/toxins/misc_lab) -"bQZ" = ( -/turf/closed/wall/r_wall, -/area/toxins/misc_lab) -"bRa" = ( -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/plasteel/warning{ - dir = 5 - }, -/area/toxins/misc_lab) -"bRb" = ( -/obj/structure/rack, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"bRc" = ( -/obj/structure/table/wood, -/obj/item/weapon/soap/nanotrasen, -/turf/open/floor/wood{ - icon_state = "wood-broken7" - }, -/area/maintenance/aft) -"bRd" = ( -/obj/structure/table, -/obj/machinery/chem_dispenser/drinks/beer, -/turf/open/floor/wood, -/area/maintenance/aft) -"bRe" = ( -/obj/structure/table/wood, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 4; - name = "4maintenance loot spawner" - }, -/turf/open/floor/wood, -/area/maintenance/aft) -"bRf" = ( -/obj/structure/table/wood, -/turf/open/floor/wood{ - icon_state = "wood-broken5" - }, -/area/maintenance/aft) -"bRg" = ( -/obj/structure/rack, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 2; - name = "2maintenance loot spawner" - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"bRh" = ( -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 3; - name = "3maintenance loot spawner" - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"bRi" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/plasteel, -/area/engine/break_room) -"bRj" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/engine/break_room) -"bRk" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 9 - }, -/turf/open/floor/plasteel/red/side{ - dir = 8 - }, -/area/security/checkpoint/engineering) -"bRl" = ( -/obj/structure/light_construct{ - dir = 8 - }, -/turf/open/floor/plating, -/area/construction) -"bRm" = ( -/obj/machinery/door/airlock/glass_security{ - name = "Security Office"; - req_access_txt = "63" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/security/checkpoint/engineering) -"bRn" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/construction) -"bRo" = ( -/obj/machinery/computer/secure_data, -/obj/machinery/light_switch{ - pixel_x = 27 - }, -/turf/open/floor/plasteel/red/side{ - dir = 4 - }, -/area/security/checkpoint/engineering) -"bRp" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 9 - }, -/turf/open/floor/plasteel/caution/corner{ - dir = 8 - }, -/area/hallway/primary/aft) -"bRq" = ( -/turf/open/floor/plasteel/caution{ - dir = 4 - }, -/area/hallway/primary/aft) -"bRr" = ( -/obj/structure/chair{ - dir = 8 - }, -/obj/effect/landmark/start{ - name = "Atmospheric Technician" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/atmos) -"bRs" = ( -/obj/structure/table/reinforced, -/obj/machinery/door/firedoor/heavy, -/obj/machinery/door/window/northleft{ - dir = 4; - icon_state = "left"; - name = "Atmospherics Desk"; - req_access_txt = "24" - }, -/obj/machinery/door/poddoor/preopen{ - id = "atmos"; - layer = 2.9; - name = "atmos blast door" - }, -/turf/open/floor/plasteel/delivery{ - name = "floor" - }, -/area/atmos) -"bRt" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/atmos) -"bRu" = ( -/obj/machinery/computer/atmos_alert, -/turf/open/floor/plasteel/caution{ - dir = 4 - }, -/area/atmos) -"bRv" = ( -/obj/structure/chair/office/dark{ - dir = 4 - }, -/obj/effect/landmark/start{ - name = "Atmospheric Technician" - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - external_pressure_bound = 101.325; - on = 1; - pressure_checks = 1 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bRw" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible{ - dir = 4 - }, -/obj/machinery/portable_atmospherics/canister/oxygen, -/turf/open/floor/plasteel, -/area/atmos) -"bRx" = ( -/obj/structure/grille, -/obj/structure/window/fulltile, -/turf/open/floor/plating, -/area/atmos) -"bRy" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bRz" = ( -/obj/machinery/atmospherics/components/trinary/mixer{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bRA" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bRB" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - dir = 6 - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plasteel, -/area/atmos) -"bRC" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - dir = 4 - }, -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass_atmos{ - name = "Distribution Loop"; - req_access_txt = "24" - }, -/turf/open/floor/plasteel, -/area/atmos) -"bRD" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - dir = 9 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bRE" = ( -/obj/machinery/atmospherics/components/binary/pump{ - dir = 1; - name = "Pure to Mix"; - on = 0 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bRF" = ( -/obj/machinery/atmospherics/pipe/simple/yellow/visible{ - dir = 9 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bRG" = ( -/obj/machinery/atmospherics/components/binary/pump{ - dir = 1; - name = "Unfiltered to Mix"; - on = 1 - }, -/obj/machinery/atmospherics/pipe/simple/green/visible{ - dir = 4; - initialize_directions = 12 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bRH" = ( -/obj/machinery/atmospherics/pipe/simple/green/visible{ - dir = 5; - initialize_directions = 12 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bRI" = ( -/obj/structure/grille, -/obj/machinery/atmospherics/pipe/simple/cyan/visible, -/obj/machinery/atmospherics/pipe/simple/green/visible{ - dir = 4 - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/atmos) -"bRJ" = ( -/obj/machinery/atmospherics/pipe/simple/green/visible{ - dir = 4 - }, -/turf/open/floor/plasteel/green/side{ - dir = 6 - }, -/area/atmos) -"bRK" = ( -/obj/structure/lattice, -/obj/machinery/atmospherics/pipe/simple/yellow/visible{ - dir = 4 - }, -/turf/open/space, -/area/space/nearstation) -"bRL" = ( -/obj/machinery/atmospherics/components/unary/outlet_injector/on{ - dir = 8; - frequency = 1441; - id = "mix_in"; - pixel_y = 1 - }, -/turf/open/floor/engine/vacuum, -/area/atmos) -"bRM" = ( -/obj/structure/table, -/obj/machinery/light_switch{ - pixel_x = -23; - pixel_y = 0 - }, -/obj/machinery/reagentgrinder, -/turf/open/floor/plasteel/white, -/area/medical/virology) -"bRN" = ( -/turf/closed/wall, -/area/medical/virology) -"bRO" = ( -/obj/machinery/firealarm{ - dir = 4; - pixel_x = 24 - }, -/turf/open/floor/plasteel/white, -/area/medical/virology) -"bRP" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/virology{ - autoclose = 0; - frequency = 1449; - icon_state = "door_locked"; - id_tag = "virology_airlock_interior"; - locked = 1; - name = "Virology Interior Airlock"; - req_access_txt = "39" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/white, -/area/medical/virology) -"bRQ" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/medical/virology) -"bRR" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass_virology{ - name = "Monkey Pen"; - req_access_txt = "39" - }, -/turf/open/floor/plasteel/white, -/area/medical/virology) -"bRS" = ( -/obj/structure/chair/office/dark, -/obj/effect/landmark/start/depsec/engineering, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel, -/area/security/checkpoint/engineering) -"bRT" = ( -/obj/structure/disposalpipe/trunk{ - dir = 4 - }, -/obj/structure/disposaloutlet, -/turf/open/floor/engine, -/area/toxins/xenobiology) -"bRU" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/engine, -/area/toxins/xenobiology) -"bRV" = ( -/obj/machinery/disposal/bin, -/obj/structure/disposalpipe/trunk{ - dir = 8 - }, -/obj/structure/window/reinforced, -/turf/open/floor/plasteel/warning{ - dir = 6 - }, -/area/toxins/xenobiology) -"bRW" = ( -/obj/structure/grille, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/obj/machinery/door/poddoor/preopen{ - id = "xenobio3"; - name = "containment blast door" - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/engine, -/area/toxins/xenobiology) -"bRX" = ( -/obj/structure/disposalpipe/segment, -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/turf/open/floor/plasteel/white, -/area/toxins/xenobiology) -"bRY" = ( -/obj/structure/window/reinforced, -/obj/structure/table/reinforced, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/button/door{ - id = "xenobio8"; - name = "Containment Blast Doors"; - pixel_x = 0; - pixel_y = 4; - req_access_txt = "55" - }, -/turf/open/floor/plasteel/warning{ - dir = 10 - }, -/area/toxins/xenobiology) -"bRZ" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/turf/open/floor/plasteel/white, -/area/toxins/xenobiology) -"bSa" = ( -/obj/structure/grille, -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/machinery/door/poddoor/preopen{ - id = "xenobio8"; - name = "containment blast door" - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/engine, -/area/toxins/xenobiology) -"bSb" = ( -/obj/structure/closet/l3closet/scientist{ - pixel_x = -2 - }, -/turf/open/floor/plasteel, -/area/toxins/misc_lab) -"bSc" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/toxins/misc_lab) -"bSd" = ( -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/tcommsat/computer) -"bSe" = ( -/obj/structure/table, -/obj/structure/window/reinforced{ - dir = 4 - }, -/obj/item/device/electropack, -/obj/item/device/healthanalyzer, -/obj/item/device/assembly/signaler, -/turf/open/floor/plasteel, -/area/toxins/misc_lab) -"bSf" = ( -/obj/structure/chair/stool, -/turf/open/floor/plasteel/floorgrime, -/area/toxins/misc_lab) -"bSg" = ( -/obj/machinery/atmospherics/pipe/manifold/general/visible{ - dir = 4; - initialize_directions = 11 - }, -/turf/open/floor/engine, -/area/toxins/misc_lab) -"bSh" = ( -/obj/machinery/atmospherics/pipe/manifold/general/visible, -/turf/open/floor/engine, -/area/toxins/misc_lab) -"bSi" = ( -/obj/machinery/atmospherics/pipe/manifold/general/visible{ - dir = 8 - }, -/turf/open/floor/engine, -/area/toxins/misc_lab) -"bSj" = ( -/obj/machinery/atmospherics/components/unary/thermomachine/freezer{ - dir = 8 - }, -/turf/open/floor/engine, -/area/toxins/misc_lab) -"bSk" = ( -/obj/machinery/magnetic_module, -/obj/effect/landmark{ - name = "blobstart" - }, -/obj/structure/target_stake, -/turf/open/floor/plasteel/bot{ - dir = 2 - }, -/area/toxins/misc_lab) -"bSl" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"bSm" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/turf/open/floor/plating{ - icon_state = "platingdmg3" - }, -/area/maintenance/asmaint2) -"bSn" = ( -/obj/machinery/space_heater, -/turf/open/floor/wood, -/area/maintenance/aft) -"bSo" = ( -/obj/structure/chair/stool, -/turf/open/floor/wood, -/area/maintenance/aft) -"bSp" = ( -/obj/structure/grille/broken, -/turf/open/floor/plating, -/area/maintenance/aft) -"bSq" = ( -/obj/structure/rack{ - dir = 8; - layer = 2.9 - }, -/obj/item/weapon/tank/internals/emergency_oxygen, -/obj/item/weapon/tank/internals/emergency_oxygen, -/obj/item/clothing/mask/breath, -/obj/item/clothing/mask/breath, -/obj/effect/decal/cleanable/cobweb, -/turf/open/floor/plating, -/area/maintenance/aft) -"bSr" = ( -/obj/structure/rack, -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plating, -/area/maintenance/aft) -"bSs" = ( -/obj/structure/reagent_dispensers/watertank, -/turf/open/floor/plating, -/area/maintenance/aft) -"bSt" = ( -/obj/structure/closet/emcloset, -/obj/machinery/camera{ - c_tag = "Telecoms Monitoring"; - dir = 8; - network = list("SS13") - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/tcommsat/computer) -"bSu" = ( -/obj/item/stack/cable_coil{ - amount = 5 - }, -/turf/open/floor/plating/airless, -/area/space/nearstation) -"bSv" = ( -/obj/machinery/camera{ - c_tag = "Construction Area"; - dir = 1 - }, -/turf/open/floor/plating, -/area/construction) -"bSw" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/aft) -"bSx" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/construction) -"bSy" = ( -/obj/machinery/light/small, -/turf/open/floor/plasteel/grimy, -/area/security/detectives_office) -"bSz" = ( -/obj/structure/table, -/turf/open/floor/plating, -/area/construction) -"bSA" = ( -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/caution/corner{ - dir = 8 - }, -/area/hallway/primary/aft) -"bSB" = ( -/obj/machinery/firealarm{ - dir = 1; - pixel_y = -24 - }, -/obj/structure/table, -/obj/item/weapon/tank/internals/emergency_oxygen{ - pixel_x = -8; - pixel_y = 0 - }, -/obj/item/weapon/tank/internals/emergency_oxygen{ - pixel_x = -8; - pixel_y = 0 - }, -/obj/item/clothing/mask/breath{ - pixel_x = 4; - pixel_y = 0 - }, -/obj/item/clothing/mask/breath{ - pixel_x = 4; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/atmos) -"bSC" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor/preopen{ - id = "atmos"; - layer = 2.9; - name = "atmos blast door" - }, -/turf/open/floor/plating, -/area/atmos) -"bSD" = ( -/obj/structure/sign/atmosplaque{ - pixel_x = 0; - pixel_y = -32 - }, -/obj/structure/table, -/obj/item/weapon/storage/box, -/obj/item/weapon/storage/box, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/atmos) -"bSE" = ( -/obj/machinery/computer/station_alert, -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/obj/machinery/button/door{ - id = "atmos"; - name = "Atmospherics Lockdown"; - pixel_x = 24; - pixel_y = 4; - req_access_txt = "24" - }, -/turf/open/floor/plasteel/caution{ - dir = 6 - }, -/area/atmos) -"bSF" = ( -/obj/structure/table, -/obj/item/clothing/head/welding{ - pixel_x = -3; - pixel_y = 7 - }, -/obj/item/clothing/head/welding{ - pixel_x = -5; - pixel_y = 3 - }, -/obj/machinery/light{ - dir = 8 - }, -/obj/item/device/multitool, -/turf/open/floor/plasteel, -/area/atmos) -"bSG" = ( -/obj/structure/table, -/obj/item/stack/sheet/metal{ - amount = 50 - }, -/obj/item/stack/sheet/metal{ - amount = 50; - pixel_x = 2; - pixel_y = 2 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bSH" = ( -/obj/structure/table, -/obj/item/stack/sheet/glass{ - amount = 50 - }, -/obj/item/weapon/storage/belt/utility, -/obj/item/device/t_scanner, -/obj/item/device/t_scanner, -/obj/item/device/t_scanner, -/turf/open/floor/plasteel, -/area/atmos) -"bSI" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plasteel, -/area/atmos) -"bSJ" = ( -/obj/structure/grille, -/obj/machinery/atmospherics/pipe/simple/cyan/visible{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/yellow/visible, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/atmos) -"bSK" = ( -/obj/structure/grille, -/obj/machinery/atmospherics/pipe/simple/cyan/visible{ - dir = 6; - initialize_directions = 6 - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/atmos) -"bSL" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/visible{ - dir = 4 - }, -/obj/structure/grille, -/obj/machinery/atmospherics/pipe/simple/yellow/visible, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/atmos) -"bSM" = ( -/obj/structure/grille, -/obj/machinery/atmospherics/pipe/simple/cyan/visible{ - dir = 4 - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/atmos) -"bSN" = ( -/obj/machinery/atmospherics/pipe/simple/green/visible, -/obj/machinery/atmospherics/pipe/simple/cyan/visible{ - dir = 4 - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/atmos) -"bSO" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/visible{ - dir = 4 - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/atmos) -"bSP" = ( -/obj/structure/grille, -/obj/machinery/atmospherics/pipe/manifold/cyan/visible{ - dir = 4; - initialize_directions = 11 - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/atmos) -"bSQ" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/medical/virology) -"bSR" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 1 - }, -/turf/open/floor/plasteel/caution/corner{ - dir = 8 - }, -/area/hallway/primary/aft) -"bSS" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/virology{ - name = "Break Room"; - req_access_txt = "39" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/medical/virology) -"bST" = ( -/obj/machinery/doorButtons/airlock_controller{ - idExterior = "virology_airlock_exterior"; - idInterior = "virology_airlock_interior"; - idSelf = "virology_airlock_control"; - name = "Virology Access Console"; - pixel_x = 8; - pixel_y = 22; - req_access_txt = "39" - }, -/obj/machinery/light_switch{ - pixel_x = -4; - pixel_y = 24 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/medical/virology) -"bSU" = ( -/obj/structure/extinguisher_cabinet{ - pixel_x = -5; - pixel_y = 30 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/medical/virology) -"bSV" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/machinery/firealarm{ - pixel_y = 25 - }, -/turf/open/floor/plasteel/white, -/area/medical/virology) -"bSW" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/medical/virology) -"bSX" = ( -/obj/machinery/power/apc{ - cell_type = 5000; - dir = 1; - name = "Virology APC"; - pixel_x = 0; - pixel_y = 24 - }, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/machinery/camera{ - c_tag = "Virology Module" - }, -/turf/open/floor/plasteel/white, -/area/medical/virology) -"bSY" = ( -/obj/machinery/vending/medical, -/turf/open/floor/plasteel/white, -/area/medical/virology) -"bSZ" = ( -/obj/effect/landmark{ - name = "revenantspawn" - }, -/turf/open/floor/engine, -/area/toxins/xenobiology) -"bTa" = ( -/obj/machinery/door/window/northleft{ - dir = 4; - name = "Containment Pen"; - req_access_txt = "55" - }, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/toxins/xenobiology) -"bTb" = ( -/obj/machinery/door/window/northleft{ - base_state = "right"; - dir = 8; - icon_state = "right"; - name = "Containment Pen"; - req_access_txt = "55" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/machinery/door/poddoor/preopen{ - id = "xenobio3"; - name = "containment blast door" - }, -/turf/open/floor/engine, -/area/toxins/xenobiology) -"bTc" = ( -/obj/structure/disposalpipe/segment, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/turf/open/floor/plasteel/white, -/area/toxins/xenobiology) -"bTd" = ( -/obj/machinery/door/window/northleft{ - base_state = "right"; - dir = 8; - icon_state = "right"; - name = "Containment Pen"; - req_access_txt = "55" - }, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/toxins/xenobiology) -"bTe" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/machinery/door/window/northleft{ - dir = 4; - name = "Containment Pen"; - req_access_txt = "55" - }, -/obj/machinery/door/poddoor/preopen{ - id = "xenobio8"; - name = "containment blast door" - }, -/turf/open/floor/engine, -/area/toxins/xenobiology) -"bTf" = ( -/obj/structure/rack, -/obj/item/weapon/wrench, -/obj/item/weapon/crowbar, -/obj/machinery/computer/security/telescreen{ - name = "Test Chamber Moniter"; - network = list("Test"); - pixel_x = 0; - pixel_y = -30 - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/open/floor/plasteel/floorgrime, -/area/toxins/misc_lab) -"bTg" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 6 - }, -/turf/open/floor/plasteel, -/area/engine/break_room) -"bTh" = ( -/obj/machinery/holopad, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/engine/break_room) -"bTi" = ( -/obj/structure/table, -/obj/machinery/recharger{ - pixel_y = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/red/side{ - dir = 10 - }, -/area/security/checkpoint/engineering) -"bTj" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/security/checkpoint/engineering) -"bTk" = ( -/obj/machinery/atmospherics/components/binary/valve, -/turf/open/floor/engine, -/area/toxins/misc_lab) -"bTl" = ( -/turf/open/floor/engine, -/area/toxins/misc_lab) -"bTm" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible, -/turf/open/floor/engine, -/area/toxins/misc_lab) -"bTn" = ( -/obj/structure/table, -/obj/item/device/assembly/igniter{ - pixel_x = -5; - pixel_y = 3 - }, -/obj/item/device/assembly/igniter{ - pixel_x = 5; - pixel_y = -4 - }, -/obj/item/device/assembly/igniter{ - pixel_x = 2; - pixel_y = 6 - }, -/obj/item/device/assembly/igniter{ - pixel_x = 2; - pixel_y = -1 - }, -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/obj/item/device/assembly/timer{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/device/assembly/timer{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/device/assembly/timer{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/device/assembly/timer{ - pixel_x = -3; - pixel_y = 3 - }, -/turf/open/floor/engine, -/area/toxins/misc_lab) -"bTo" = ( -/turf/open/floor/plasteel/warning{ - dir = 10 - }, -/area/toxins/misc_lab) -"bTp" = ( -/turf/open/floor/plasteel/warning{ - dir = 6 - }, -/area/toxins/misc_lab) -"bTq" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/closed/wall, -/area/toxins/misc_lab) -"bTr" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"bTs" = ( -/turf/open/floor/wood{ - icon_state = "wood-broken5" - }, -/area/maintenance/aft) -"bTt" = ( -/obj/machinery/atmospherics/pipe/simple/general/hidden{ - icon_state = "intact"; - dir = 4 - }, -/turf/open/floor/wood{ - icon_state = "wood-broken6" - }, -/area/maintenance/aft) -"bTu" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/wood, -/area/maintenance/aft) -"bTv" = ( -/obj/machinery/atmospherics/pipe/simple/general/hidden{ - icon_state = "intact"; - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"bTw" = ( -/obj/machinery/door/airlock/maintenance{ - req_access_txt = "12" - }, -/obj/machinery/atmospherics/pipe/simple/general/hidden{ - icon_state = "intact"; - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"bTx" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible{ - icon_state = "connector_map"; - dir = 8 - }, -/obj/machinery/portable_atmospherics/canister/air, -/turf/open/floor/plating, -/area/maintenance/aft) -"bTy" = ( -/obj/structure/grille, -/obj/structure/window/fulltile, -/obj/machinery/atmospherics/pipe/simple/general/hidden{ - icon_state = "intact"; - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"bTz" = ( -/obj/machinery/door/airlock/maintenance{ - req_access_txt = "12" - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"bTA" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/maintenance/aft) -"bTB" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 6 - }, -/turf/closed/wall, -/area/maintenance/aft) -"bTC" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/closed/wall, -/area/maintenance/aft) -"bTD" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/aft) -"bTE" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"bTF" = ( -/obj/structure/closet/emcloset, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"bTG" = ( -/obj/structure/table, -/obj/item/weapon/paper_bin{ - pixel_x = 1; - pixel_y = 9 - }, -/obj/item/weapon/pen, -/obj/structure/reagent_dispensers/peppertank{ - pixel_x = 30; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/red/side{ - dir = 6 - }, -/area/security/checkpoint/engineering) -"bTH" = ( -/obj/structure/table, -/obj/item/weapon/book/manual/wiki/security_space_law, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/open/floor/plasteel/red/side, -/area/security/checkpoint/engineering) -"bTI" = ( -/obj/machinery/holopad, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/tcommsat/computer) -"bTJ" = ( -/obj/machinery/power/apc{ - name = "Aft Hall APC"; - dir = 8; - pixel_x = -25; - pixel_y = 1 - }, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/caution/corner{ - dir = 8 - }, -/area/hallway/primary/aft) -"bTK" = ( -/obj/item/weapon/crowbar, -/obj/item/weapon/wrench, -/obj/structure/window/reinforced, -/turf/open/floor/plasteel/caution{ - dir = 6 - }, -/area/hallway/primary/aft) -"bTL" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall, -/area/atmos) -"bTM" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/closed/wall, -/area/atmos) -"bTN" = ( -/obj/machinery/door/firedoor/heavy, -/obj/machinery/door/airlock/glass_atmos{ - name = "Atmospherics Monitoring"; - req_access_txt = "24" - }, -/turf/open/floor/plasteel, -/area/atmos) -"bTO" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/visible{ - dir = 6; - initialize_directions = 6 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bTP" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/visible{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bTQ" = ( -/obj/machinery/atmospherics/pipe/simple/yellow/visible, -/obj/machinery/meter, -/turf/open/floor/plasteel, -/area/atmos) -"bTR" = ( -/obj/machinery/atmospherics/pipe/manifold/cyan/visible{ - dir = 4; - initialize_directions = 11 - }, -/obj/machinery/meter, -/turf/open/floor/plasteel, -/area/atmos) -"bTS" = ( -/obj/machinery/atmospherics/pipe/simple/yellow/visible{ - dir = 6 - }, -/obj/machinery/meter, -/turf/open/floor/plasteel, -/area/atmos) -"bTT" = ( -/obj/machinery/atmospherics/pipe/simple/green/visible, -/obj/machinery/atmospherics/pipe/simple/yellow/visible{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bTU" = ( -/obj/machinery/atmospherics/pipe/manifold/yellow/visible{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bTV" = ( -/obj/machinery/atmospherics/components/binary/pump{ - dir = 8; - name = "N2O Outlet Pump"; - on = 0 - }, -/turf/open/floor/plasteel/escape{ - dir = 5 - }, -/area/atmos) -"bTW" = ( -/turf/open/floor/engine/n2o, -/area/atmos) -"bTX" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - external_pressure_bound = 0; - frequency = 1441; - id_tag = "n2o_out"; - initialize_directions = 1; - internal_pressure_bound = 4000; - on = 1; - pressure_checks = 2; - pump_direction = 0 - }, -/turf/open/floor/engine/n2o, -/area/atmos) -"bTY" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 5 - }, -/turf/closed/wall/r_wall, -/area/medical/virology) -"bTZ" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall/r_wall, -/area/medical/virology) -"bUa" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 10 - }, -/turf/closed/wall, -/area/medical/virology) -"bUb" = ( -/obj/machinery/airalarm{ - dir = 4; - icon_state = "alarm0"; - pixel_x = -22 - }, -/obj/structure/sink{ - icon_state = "sink"; - dir = 8; - pixel_x = -12; - pixel_y = 2 - }, -/turf/open/floor/plasteel/white, -/area/medical/virology) -"bUc" = ( -/obj/machinery/requests_console{ - announcementConsole = 1; - department = "Telecoms Admin"; - departmentType = 5; - name = "Telecoms RC"; - pixel_x = 30; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/tcommsat/computer) -"bUd" = ( -/obj/structure/table/reinforced, -/obj/machinery/button/door{ - id = "xenobio3"; - name = "Containment Blast Doors"; - pixel_x = 0; - pixel_y = 4; - req_access_txt = "55" - }, -/obj/structure/window/reinforced{ - dir = 1 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/turf/open/floor/plasteel/warning{ - dir = 5 - }, -/area/toxins/xenobiology) -"bUe" = ( -/obj/structure/grille, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/structure/cable, -/obj/machinery/door/poddoor/preopen{ - id = "xenobio3"; - name = "containment blast door" - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/engine, -/area/toxins/xenobiology) -"bUf" = ( -/obj/structure/disposalpipe/segment, -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/turf/open/floor/plasteel/white, -/area/toxins/xenobiology) -"bUg" = ( -/obj/structure/window/reinforced{ - dir = 1 - }, -/obj/machinery/disposal/bin, -/obj/structure/disposalpipe/trunk{ - dir = 4 - }, -/turf/open/floor/plasteel/warning{ - dir = 9 - }, -/area/toxins/xenobiology) -"bUh" = ( -/obj/structure/grille, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/cable, -/obj/machinery/door/poddoor/preopen{ - id = "xenobio8"; - name = "containment blast door" - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/engine, -/area/toxins/xenobiology) -"bUi" = ( -/obj/structure/disposalpipe/trunk{ - dir = 8 - }, -/obj/structure/disposaloutlet{ - dir = 1 - }, -/turf/open/floor/engine, -/area/toxins/xenobiology) -"bUj" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible{ - dir = 4 - }, -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/turf/open/floor/plasteel/floorgrime, -/area/toxins/misc_lab) -"bUk" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible{ - dir = 10; - pixel_x = 0; - initialize_directions = 10 - }, -/turf/open/floor/plasteel, -/area/toxins/misc_lab) -"bUl" = ( -/obj/structure/disposalpipe/sortjunction{ - dir = 2; - icon_state = "pipe-j2s"; - sortType = 5 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/caution/corner{ - dir = 8 - }, -/area/hallway/primary/aft) -"bUm" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/engine/break_room) -"bUn" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible{ - dir = 9 - }, -/turf/open/floor/engine, -/area/toxins/misc_lab) -"bUo" = ( -/obj/structure/table, -/obj/item/weapon/storage/box/beakers{ - pixel_x = 2; - pixel_y = 2 - }, -/obj/item/weapon/grenade/chem_grenade, -/obj/item/weapon/grenade/chem_grenade, -/turf/open/floor/engine, -/area/toxins/misc_lab) -"bUp" = ( -/turf/open/floor/plating, -/area/toxins/misc_lab) -"bUq" = ( -/obj/structure/target_stake, -/obj/effect/decal/cleanable/cobweb, -/turf/open/floor/plating, -/area/toxins/misc_lab) -"bUr" = ( -/obj/structure/lattice, -/obj/machinery/atmospherics/pipe/simple/yellow/visible{ - icon_state = "intact"; - dir = 10 - }, -/turf/open/space, -/area/space/nearstation) -"bUs" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"bUt" = ( -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"bUu" = ( -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 6 - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"bUv" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/maintenance/aft) -"bUw" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"bUx" = ( -/obj/structure/disposalpipe/junction{ - icon_state = "pipe-y"; - dir = 1 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/aft) -"bUy" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/tcommsat/computer) -"bUz" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"bUA" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/power/apc{ - dir = 1; - name = "Construction Area APC"; - pixel_y = 24 - }, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/construction) -"bUB" = ( -/obj/machinery/power/apc{ - dir = 2; - name = "Telecoms Monitoring APC"; - pixel_y = -24 - }, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/tcommsat/computer) -"bUC" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/closed/wall/r_wall, -/area/tcommsat/computer) -"bUD" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 10 - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"bUE" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible{ - dir = 4 - }, -/obj/machinery/portable_atmospherics/pump, -/turf/open/floor/plasteel/arrival{ - dir = 8 - }, -/area/atmos) -"bUF" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/visible{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/caution{ - dir = 8 - }, -/area/atmos) -"bUG" = ( -/obj/machinery/atmospherics/pipe/manifold/cyan/visible{ - dir = 1 - }, -/obj/machinery/meter, -/turf/closed/wall/r_wall, -/area/atmos) -"bUH" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/visible{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/atmos) -"bUI" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/visible{ - dir = 4 - }, -/turf/open/floor/plasteel/caution{ - dir = 4 - }, -/area/atmos) -"bUJ" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/visible{ - dir = 4 - }, -/obj/machinery/door/firedoor/heavy, -/obj/machinery/door/airlock/atmos{ - name = "Atmospherics"; - req_access_txt = "24" - }, -/turf/open/floor/plasteel, -/area/atmos) -"bUK" = ( -/obj/machinery/atmospherics/components/binary/pump{ - dir = 8; - name = "Air to External"; - on = 1 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bUL" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/visible{ - dir = 9 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bUM" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible, -/obj/machinery/atmospherics/pipe/simple/cyan/visible{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bUN" = ( -/obj/item/device/radio/beacon, -/turf/open/floor/plasteel, -/area/atmos) -"bUO" = ( -/obj/machinery/atmospherics/components/binary/pump{ - dir = 0; - name = "Mix to Port"; - on = 0 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bUP" = ( -/obj/machinery/atmospherics/components/binary/pump{ - dir = 0; - name = "Air to Port"; - on = 0 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bUQ" = ( -/obj/machinery/atmospherics/components/binary/pump{ - dir = 0; - name = "Pure to Port"; - on = 0 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bUR" = ( -/obj/machinery/atmospherics/pipe/simple/green/visible, -/turf/open/floor/plasteel, -/area/atmos) -"bUS" = ( -/obj/machinery/atmospherics/pipe/simple/yellow/visible, -/turf/open/floor/plasteel, -/area/atmos) -"bUT" = ( -/obj/machinery/computer/atmos_control/tank{ - frequency = 1441; - input_tag = "n2o_in"; - name = "Nitrous Oxide Supply Control"; - output_tag = "n2o_out"; - sensors = list("n2o_sensor" = "Tank") - }, -/turf/open/floor/plasteel/escape{ - dir = 4 - }, -/area/atmos) -"bUU" = ( -/obj/machinery/portable_atmospherics/canister/nitrous_oxide, -/turf/open/floor/engine/n2o, -/area/atmos) -"bUV" = ( -/obj/machinery/air_sensor{ - frequency = 1441; - id_tag = "n2o_sensor" - }, -/turf/open/floor/engine/n2o, -/area/atmos) -"bUW" = ( -/obj/machinery/light/small{ - dir = 4 - }, -/turf/open/floor/engine/n2o, -/area/atmos) -"bUX" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"bUY" = ( -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 5 - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"bUZ" = ( -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 10 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"bVa" = ( -/obj/machinery/smartfridge/chemistry/virology, -/turf/open/floor/plasteel/whitegreen/side{ - dir = 8 - }, -/area/medical/virology) -"bVb" = ( -/obj/machinery/light_switch{ - pixel_x = 27 - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/open/floor/plasteel, -/area/tcommsat/computer) -"bVc" = ( -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/yellow/side{ - dir = 1 - }, -/area/hallway/primary/aft) -"bVd" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/yellow/side{ - dir = 9 - }, -/area/hallway/primary/aft) -"bVe" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/aft) -"bVf" = ( -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/open/floor/plasteel/yellow/corner{ - dir = 1 - }, -/area/hallway/primary/aft) -"bVg" = ( -/obj/item/device/radio/intercom{ - broadcasting = 0; - name = "Station Intercom (General)"; - pixel_y = 20 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/yellow/side{ - dir = 5 - }, -/area/hallway/primary/aft) -"bVh" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/yellow/corner{ - dir = 4 - }, -/area/hallway/primary/aft) -"bVi" = ( -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'HIGH VOLTAGE'"; - icon_state = "shock"; - name = "HIGH VOLTAGE" - }, -/turf/closed/wall, -/area/toxins/xenobiology) -"bVj" = ( -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/turf/open/floor/plasteel/white, -/area/toxins/xenobiology) -"bVk" = ( -/obj/structure/sink{ - dir = 4; - icon_state = "sink"; - pixel_x = 11; - pixel_y = 0 - }, -/turf/open/floor/plasteel/white, -/area/toxins/xenobiology) -"bVl" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible{ - dir = 4 - }, -/turf/open/floor/plasteel/floorgrime, -/area/toxins/misc_lab) -"bVm" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/engine/break_room) -"bVn" = ( -/obj/machinery/atmospherics/pipe/manifold/general/visible{ - dir = 4; - initialize_directions = 11 - }, -/obj/machinery/meter, -/turf/open/floor/plasteel/floorgrime, -/area/toxins/misc_lab) -"bVo" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/engine/break_room) -"bVp" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/engine/break_room) -"bVq" = ( -/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, -/turf/open/floor/plasteel, -/area/engine/break_room) -"bVr" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel, -/area/engine/break_room) -"bVs" = ( -/obj/machinery/camera{ - c_tag = "Testing Firing Range"; - dir = 8; - network = list("SS13","RD"); - pixel_y = -22 - }, -/turf/open/floor/plating, -/area/toxins/misc_lab) -"bVt" = ( -/obj/structure/target_stake, -/turf/open/floor/plating, -/area/toxins/misc_lab) -"bVu" = ( -/obj/structure/lattice, -/obj/machinery/atmospherics/pipe/simple/yellow/visible, -/turf/open/space, -/area/space/nearstation) -"bVv" = ( -/obj/structure/lattice, -/obj/machinery/atmospherics/pipe/simple/green/visible{ - dir = 4 - }, -/turf/open/space, -/area/space/nearstation) -"bVw" = ( -/obj/structure/lattice/catwalk, -/turf/open/space, -/area/space/nearstation) -"bVx" = ( -/obj/machinery/atmospherics/components/unary/outlet_injector/on{ - dir = 2 - }, -/turf/open/floor/plating/airless, -/area/maintenance/aft) -"bVy" = ( -/obj/structure/grille, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - dir = 4 - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/maintenance/aft) -"bVz" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plating/airless, -/area/space/nearstation) -"bVA" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/reagent_dispensers/fueltank, -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - icon_state = "intact"; - dir = 10 - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"bVB" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/closet/emcloset, -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"bVC" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible, -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"bVD" = ( -/obj/machinery/disposal/bin, -/obj/structure/disposalpipe/trunk{ - dir = 8 - }, -/obj/structure/sign/deathsposal{ - pixel_y = 32 - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"bVE" = ( -/obj/effect/decal/cleanable/cobweb/cobweb2, -/obj/machinery/atmospherics/components/unary/portables_connector/visible, -/obj/machinery/portable_atmospherics/canister/oxygen, -/turf/open/floor/plating, -/area/maintenance/aft) -"bVF" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible, -/turf/open/floor/plating, -/area/maintenance/aft) -"bVG" = ( -/obj/structure/sign/nosmoking_2{ - pixel_x = -28 - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"bVH" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/aft) -"bVI" = ( -/turf/closed/wall/r_wall, -/area/tcommsat/server) -"bVJ" = ( -/turf/closed/wall/r_wall, -/area/tcommsat/computer) -"bVK" = ( -/obj/machinery/vending/snack, -/turf/open/floor/plasteel, -/area/engine/break_room) -"bVL" = ( -/obj/structure/rack{ - dir = 1 - }, -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plating, -/area/maintenance/aft) -"bVM" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/aft) -"bVN" = ( -/obj/machinery/camera{ - c_tag = "Atmospherics Access"; - dir = 4; - network = list("SS13") - }, -/obj/machinery/light{ - dir = 8 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/caution{ - dir = 8 - }, -/area/atmos) -"bVO" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/visible{ - dir = 9 - }, -/turf/closed/wall/r_wall, -/area/atmos) -"bVP" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - dir = 6 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bVQ" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - external_pressure_bound = 101.325; - on = 1; - pressure_checks = 1 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bVR" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - dir = 4 - }, -/turf/open/floor/plasteel/caution{ - dir = 4 - }, -/area/atmos) -"bVS" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - dir = 4 - }, -/obj/structure/sign/securearea, -/turf/closed/wall, -/area/atmos) -"bVT" = ( -/obj/machinery/atmospherics/components/binary/pump{ - dir = 4; - name = "External to Filter"; - on = 1 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bVU" = ( -/obj/structure/reagent_dispensers/watertank/high, -/turf/open/floor/plasteel, -/area/atmos) -"bVV" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/visible{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bVW" = ( -/obj/structure/rack{ - dir = 8; - layer = 2.9 - }, -/obj/item/clothing/suit/hazardvest, -/obj/item/clothing/suit/hazardvest, -/obj/item/clothing/suit/hazardvest, -/obj/item/clothing/suit/hazardvest, -/obj/item/clothing/gloves/color/black, -/obj/item/clothing/gloves/color/black, -/obj/item/clothing/gloves/color/black, -/obj/item/clothing/mask/gas, -/obj/item/clothing/mask/gas, -/turf/open/floor/plasteel, -/area/atmos) -"bVX" = ( -/obj/structure/reagent_dispensers/fueltank, -/turf/open/floor/plasteel, -/area/atmos) -"bVY" = ( -/obj/machinery/atmospherics/pipe/manifold/general/visible, -/obj/machinery/meter, -/turf/open/floor/plasteel, -/area/atmos) -"bVZ" = ( -/obj/machinery/atmospherics/pipe/manifold/general/visible{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bWa" = ( -/obj/machinery/atmospherics/pipe/manifold/general/visible{ - dir = 4; - initialize_directions = 11 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bWb" = ( -/obj/machinery/atmospherics/components/trinary/filter{ - dir = 1; - filter_type = "n2o"; - on = 1 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bWc" = ( -/obj/machinery/atmospherics/pipe/simple/green/visible{ - dir = 4 - }, -/turf/open/floor/plasteel/escape{ - dir = 6 - }, -/area/atmos) -"bWd" = ( -/obj/machinery/atmospherics/components/unary/outlet_injector/on{ - dir = 8; - frequency = 1441; - id = "n2o_in"; - pixel_y = 1 - }, -/turf/open/floor/engine/n2o, -/area/atmos) -"bWe" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"bWf" = ( -/obj/structure/table/glass, -/obj/item/clothing/gloves/color/latex, -/obj/machinery/requests_console{ - department = "Virology"; - name = "Virology Requests Console"; - pixel_x = -32 - }, -/obj/item/device/healthanalyzer, -/obj/item/clothing/glasses/hud/health, -/turf/open/floor/plasteel/whitegreen/side{ - dir = 8 - }, -/area/medical/virology) -"bWg" = ( -/obj/structure/table, -/obj/item/weapon/hand_labeler, -/obj/item/device/radio/headset/headset_med, -/turf/open/floor/plasteel/whitegreen/side{ - dir = 4 - }, -/area/medical/virology) -"bWh" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 10 - }, -/turf/open/floor/plasteel, -/area/engine/break_room) -"bWi" = ( -/obj/structure/grille, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/window/fulltile, -/turf/open/floor/plating, -/area/medical/virology) -"bWj" = ( -/obj/structure/grille, -/obj/structure/window/fulltile, -/turf/open/floor/plating, -/area/medical/virology) -"bWk" = ( -/obj/structure/bed, -/obj/item/weapon/bedsheet, -/obj/effect/landmark{ - name = "revenantspawn" - }, -/turf/open/floor/plasteel/white, -/area/medical/virology) -"bWl" = ( -/obj/structure/grille, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/obj/machinery/door/poddoor/preopen{ - id = "xenobio2"; - name = "containment blast door" - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/engine, -/area/toxins/xenobiology) -"bWm" = ( -/obj/structure/window/reinforced, -/obj/structure/table/reinforced, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/button/door{ - id = "xenobio7"; - name = "Containment Blast Doors"; - pixel_x = 0; - pixel_y = 4; - req_access_txt = "55" - }, -/turf/open/floor/plasteel/warning{ - dir = 10 - }, -/area/toxins/xenobiology) -"bWn" = ( -/obj/structure/grille, -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/machinery/door/poddoor/preopen{ - id = "xenobio7"; - name = "containment blast door" - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/engine, -/area/toxins/xenobiology) -"bWo" = ( -/obj/item/device/radio/intercom{ - pixel_x = -25 - }, -/turf/open/floor/plasteel/floorgrime, -/area/toxins/misc_lab) -"bWp" = ( -/obj/structure/chair/office/light, -/obj/effect/landmark/start{ - name = "Scientist" - }, -/turf/open/floor/plasteel/floorgrime, -/area/toxins/misc_lab) -"bWq" = ( -/obj/machinery/atmospherics/components/binary/pump{ - dir = 2 - }, -/turf/open/floor/plasteel/floorgrime, -/area/toxins/misc_lab) -"bWr" = ( -/turf/open/floor/plasteel, -/area/toxins/misc_lab) -"bWs" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/tcommsat/computer) -"bWt" = ( -/obj/structure/chair/office/dark{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 6 - }, -/turf/open/floor/plasteel, -/area/tcommsat/computer) -"bWu" = ( -/obj/machinery/door/airlock/engineering{ - name = "Telecommunications"; - req_access_txt = "61" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/tcommsat/computer) -"bWv" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/tcommsat/computer) -"bWw" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible, -/turf/open/floor/plating, -/area/maintenance/aft) -"bWx" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible{ - dir = 5 - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"bWy" = ( -/turf/open/floor/plasteel/floorgrime, -/area/maintenance/aft) -"bWz" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible{ - dir = 9 - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"bWA" = ( -/obj/machinery/atmospherics/pipe/manifold4w/general, -/obj/machinery/meter, -/turf/open/floor/plating, -/area/maintenance/aft) -"bWB" = ( -/turf/open/floor/bluegrid{ - name = "Mainframe Base"; - initial_gas_mix = "n2=100;TEMP=80" - }, -/area/tcommsat/server) -"bWC" = ( -/obj/machinery/telecomms/bus/preset_four, -/turf/open/floor/plasteel/black{ - name = "Mainframe Floor"; - initial_gas_mix = "n2=100;TEMP=80" - }, -/area/tcommsat/server) -"bWD" = ( -/obj/machinery/telecomms/server/presets/engineering, -/turf/open/floor/plasteel/black{ - name = "Mainframe Floor"; - initial_gas_mix = "n2=100;TEMP=80" - }, -/area/tcommsat/server) -"bWE" = ( -/obj/machinery/telecomms/processor/preset_three, -/turf/open/floor/plasteel/black{ - name = "Mainframe Floor"; - initial_gas_mix = "n2=100;TEMP=80" - }, -/area/tcommsat/server) -"bWF" = ( -/obj/machinery/light{ - dir = 1 - }, -/obj/machinery/power/apc{ - cell_type = 5000; - dir = 1; - name = "Telecoms Server APC"; - pixel_x = 0; - pixel_y = 25 - }, -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/turf/open/floor/bluegrid{ - name = "Mainframe Base"; - initial_gas_mix = "n2=100;TEMP=80" - }, -/area/tcommsat/server) -"bWG" = ( -/obj/machinery/telecomms/server/presets/security, -/turf/open/floor/plasteel/black{ - name = "Mainframe Floor"; - initial_gas_mix = "n2=100;TEMP=80" - }, -/area/tcommsat/server) -"bWH" = ( -/obj/structure/table, -/turf/open/floor/plasteel/yellow/side{ - dir = 9 - }, -/area/tcommsat/computer) -"bWI" = ( -/obj/structure/window/reinforced/fulltile, -/obj/structure/grille, -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/turf/open/floor/plating, -/area/tcommsat/computer) -"bWJ" = ( -/obj/structure/disposalpipe/segment, -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/aft) -"bWK" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/yellow/side{ - dir = 8 - }, -/area/hallway/primary/aft) -"bWL" = ( -/obj/machinery/airalarm{ - dir = 4; - icon_state = "alarm0"; - pixel_x = -22 - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/light{ - dir = 8 - }, -/turf/open/floor/plasteel/caution/corner{ - dir = 8 - }, -/area/hallway/primary/aft) -"bWM" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible{ - dir = 4 - }, -/obj/machinery/portable_atmospherics/scrubber, -/turf/open/floor/plasteel/escape{ - dir = 8 - }, -/area/atmos) -"bWN" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - dir = 4 - }, -/obj/machinery/door/poddoor/preopen{ - id = "atmos"; - name = "atmos blast door" - }, -/turf/open/floor/plasteel/delivery{ - name = "floor" - }, -/area/atmos) -"bWO" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/visible{ - dir = 1 - }, -/obj/machinery/meter, -/turf/closed/wall/r_wall, -/area/atmos) -"bWP" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - dir = 9 - }, -/obj/machinery/door/poddoor/preopen{ - id = "atmos"; - name = "atmos blast door" - }, -/turf/open/floor/plasteel/delivery{ - name = "floor" - }, -/area/atmos) -"bWQ" = ( -/turf/closed/wall/r_wall, -/area/security/checkpoint/engineering) -"bWR" = ( -/obj/item/device/radio/intercom{ - freerange = 0; - frequency = 1459; - name = "Station Intercom (General)"; - pixel_x = -30 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bWS" = ( -/obj/structure/extinguisher_cabinet{ - pixel_x = 27; - pixel_y = 0 - }, -/obj/machinery/camera{ - c_tag = "Atmospherics West"; - dir = 8; - network = list("SS13") - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible, -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/turf/open/floor/plasteel, -/area/atmos) -"bWT" = ( -/obj/structure/extinguisher_cabinet{ - pixel_x = -27; - pixel_y = 0 - }, -/obj/machinery/atmospherics/components/binary/pump{ - dir = 0; - name = "Air to Port"; - on = 0 - }, -/obj/machinery/light{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bWU" = ( -/obj/machinery/light{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bWV" = ( -/obj/structure/door_assembly/door_assembly_mai, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"bWW" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 1 - }, -/turf/open/floor/plasteel/white, -/area/medical/virology) -"bWX" = ( -/obj/structure/table/glass, -/obj/item/device/radio/intercom{ - pixel_x = -25 - }, -/obj/machinery/light{ - dir = 8 - }, -/obj/item/weapon/storage/box/beakers{ - pixel_x = 2; - pixel_y = 2 - }, -/obj/item/weapon/storage/box/syringes, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/whitegreen/side{ - dir = 8 - }, -/area/medical/virology) -"bWY" = ( -/obj/structure/table, -/obj/item/weapon/paper_bin{ - pixel_x = -2; - pixel_y = 5 - }, -/obj/item/weapon/pen/red, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/whitegreen/side{ - dir = 4 - }, -/area/medical/virology) -"bWZ" = ( -/obj/structure/chair/office/light{ - dir = 4 - }, -/obj/effect/landmark/start{ - name = "Virologist" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/medical/virology) -"bXa" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 10 - }, -/turf/open/floor/plasteel/white, -/area/medical/virology) -"bXb" = ( -/obj/structure/grille, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/window/fulltile, -/turf/open/floor/plating, -/area/medical/virology) -"bXc" = ( -/obj/structure/table, -/turf/open/floor/plasteel/white, -/area/medical/virology) -"bXd" = ( -/obj/machinery/light{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/medical/virology) -"bXe" = ( -/obj/effect/landmark{ - name = "revenantspawn" - }, -/mob/living/simple_animal/slime, -/turf/open/floor/engine, -/area/toxins/xenobiology) -"bXf" = ( -/obj/machinery/door/window/northleft{ - base_state = "right"; - dir = 8; - icon_state = "right"; - name = "Containment Pen"; - req_access_txt = "55" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/machinery/door/poddoor/preopen{ - id = "xenobio2"; - name = "containment blast door" - }, -/turf/open/floor/engine, -/area/toxins/xenobiology) -"bXg" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/machinery/door/window/northleft{ - dir = 4; - name = "Containment Pen"; - req_access_txt = "55" - }, -/obj/machinery/door/poddoor/preopen{ - id = "xenobio7"; - name = "containment blast door" - }, -/turf/open/floor/engine, -/area/toxins/xenobiology) -"bXh" = ( -/obj/structure/filingcabinet/chestdrawer, -/turf/open/floor/plasteel/floorgrime, -/area/toxins/misc_lab) -"bXi" = ( -/obj/structure/table, -/obj/item/weapon/folder/white, -/obj/item/weapon/folder/white, -/obj/item/weapon/pen, -/obj/item/device/taperecorder{ - pixel_y = 0 - }, -/turf/open/floor/plasteel/floorgrime, -/area/toxins/misc_lab) -"bXj" = ( -/obj/structure/table, -/obj/machinery/atmospherics/pipe/simple/general/visible, -/obj/machinery/button/ignition{ - id = "testigniter"; - pixel_x = -6; - pixel_y = 2 - }, -/obj/machinery/button/door{ - id = "testlab"; - name = "Test Chamber Blast Doors"; - pixel_x = 4; - pixel_y = 2; - req_access_txt = "55" - }, -/turf/open/floor/plasteel/floorgrime, -/area/toxins/misc_lab) -"bXk" = ( -/obj/machinery/navbeacon{ - codes_txt = "patrol;next_patrol=AIE"; - location = "AftH" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/aft) -"bXl" = ( -/obj/structure/table, -/obj/item/weapon/paper_bin{ - pixel_x = 0; - pixel_y = 6 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 6 - }, -/turf/open/floor/plasteel/floorgrime, -/area/toxins/misc_lab) -"bXm" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/aft) -"bXn" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/yellow/side{ - dir = 4 - }, -/area/hallway/primary/aft) -"bXo" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/aft) -"bXp" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/engine/break_room) -"bXq" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass_engineering{ - name = "Engineering"; - req_access_txt = "32" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/engine/break_room) -"bXr" = ( -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/toxins/misc_lab) -"bXs" = ( -/obj/structure/table/reinforced, -/obj/structure/window/reinforced{ - dir = 1 - }, -/obj/machinery/recharger{ - pixel_y = 4 - }, -/obj/item/weapon/paper/range, -/turf/open/floor/plating/warnplate{ - dir = 6 - }, -/area/toxins/misc_lab) -"bXt" = ( -/obj/structure/table/reinforced, -/obj/machinery/magnetic_controller{ - autolink = 1 - }, -/obj/structure/window/reinforced{ - dir = 1 - }, -/obj/item/device/radio/intercom{ - freerange = 0; - frequency = 1459; - name = "Station Intercom (General)"; - pixel_x = 29 - }, -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/turf/open/floor/plating/warnplate{ - dir = 10 - }, -/area/toxins/misc_lab) -"bXu" = ( -/obj/structure/grille, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/window/reinforced/tinted/fulltile, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"bXv" = ( -/obj/machinery/door/airlock/external{ - cyclelinkeddir = 4; - name = "External Access"; - req_access = null; - req_access_txt = "13" - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"bXw" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible, -/turf/open/floor/plasteel/floorgrime, -/area/maintenance/aft) -"bXx" = ( -/obj/effect/landmark{ - name = "blobstart" - }, -/turf/open/floor/plasteel/floorgrime, -/area/maintenance/aft) -"bXy" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible, -/turf/open/floor/plasteel/floorgrime, -/area/maintenance/aft) -"bXz" = ( -/obj/machinery/telecomms/processor/preset_four, -/turf/open/floor/plasteel/black{ - name = "Mainframe Floor"; - initial_gas_mix = "n2=100;TEMP=80" - }, -/area/tcommsat/server) -"bXA" = ( -/obj/machinery/telecomms/server/presets/common, -/turf/open/floor/plasteel/black{ - name = "Mainframe Floor"; - initial_gas_mix = "n2=100;TEMP=80" - }, -/area/tcommsat/server) -"bXB" = ( -/obj/machinery/telecomms/bus/preset_three, -/turf/open/floor/plasteel/black{ - name = "Mainframe Floor"; - initial_gas_mix = "n2=100;TEMP=80" - }, -/area/tcommsat/server) -"bXC" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/bluegrid{ - name = "Mainframe Base"; - initial_gas_mix = "n2=100;TEMP=80" - }, -/area/tcommsat/server) -"bXD" = ( -/obj/machinery/telecomms/server/presets/command, -/turf/open/floor/plasteel/black{ - name = "Mainframe Floor"; - initial_gas_mix = "n2=100;TEMP=80" - }, -/area/tcommsat/server) -"bXE" = ( -/obj/machinery/computer/message_monitor, -/turf/open/floor/plasteel/yellow/side{ - dir = 8 - }, -/area/tcommsat/computer) -"bXF" = ( -/obj/structure/window/reinforced/fulltile, -/obj/structure/grille, -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/obj/structure/cable, -/turf/open/floor/plating, -/area/tcommsat/computer) -"bXG" = ( -/turf/open/floor/plasteel, -/area/tcommsat/computer) -"bXH" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/manifold4w/scrubbers, -/turf/open/floor/plasteel, -/area/engine/break_room) -"bXI" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/engine/break_room) -"bXJ" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible{ - dir = 4 - }, -/obj/machinery/portable_atmospherics/scrubber, -/obj/machinery/light/small, -/turf/open/floor/plasteel/escape{ - dir = 8 - }, -/area/atmos) -"bXK" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - dir = 9 - }, -/turf/closed/wall/r_wall, -/area/atmos) -"bXL" = ( -/obj/structure/sign/securearea, -/turf/closed/wall/r_wall, -/area/atmos) -"bXM" = ( -/obj/machinery/door/firedoor/heavy, -/obj/machinery/door/airlock/atmos{ - name = "Atmospherics"; - req_access_txt = "24" - }, -/turf/open/floor/plasteel, -/area/atmos) -"bXN" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/engine/break_room) -"bXO" = ( -/obj/structure/filingcabinet, -/obj/machinery/airalarm{ - pixel_y = 23 - }, -/turf/open/floor/plasteel/red/side{ - dir = 5 - }, -/area/security/checkpoint/engineering) -"bXP" = ( -/obj/machinery/requests_console{ - department = "Security"; - departmentType = 5; - pixel_y = 30 - }, -/obj/structure/closet, -/turf/open/floor/plasteel/red/side{ - dir = 1 - }, -/area/security/checkpoint/engineering) -"bXQ" = ( -/obj/structure/fireaxecabinet{ - pixel_x = -32; - pixel_y = 0 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bXR" = ( -/obj/structure/closet/secure_closet/atmospherics, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/atmos) -"bXS" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible{ - dir = 4 - }, -/obj/machinery/portable_atmospherics/canister, -/turf/open/floor/plasteel/bot{ - dir = 2 - }, -/area/atmos) -"bXT" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible{ - dir = 8 - }, -/turf/open/floor/plasteel/bot{ - dir = 2 - }, -/area/atmos) -"bXU" = ( -/obj/machinery/atmospherics/pipe/manifold/yellow/visible{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bXV" = ( -/obj/machinery/camera{ - c_tag = "Atmospherics East"; - dir = 8; - network = list("SS13") - }, -/obj/machinery/atmospherics/components/binary/pump{ - dir = 8; - name = "Plasma Outlet Pump"; - on = 0 - }, -/turf/open/floor/plasteel/warning{ - dir = 5 - }, -/area/atmos) -"bXW" = ( -/turf/open/floor/engine/plasma, -/area/atmos) -"bXX" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - external_pressure_bound = 0; - frequency = 1441; - id_tag = "tox_out"; - initialize_directions = 1; - internal_pressure_bound = 4000; - on = 1; - pressure_checks = 2; - pump_direction = 0 - }, -/turf/open/floor/engine/plasma, -/area/atmos) -"bXY" = ( -/obj/effect/landmark{ - name = "xeno_spawn"; - pixel_x = -1 - }, -/turf/open/floor/engine/plasma, -/area/atmos) -"bXZ" = ( -/obj/structure/closet/crate, -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"bYa" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/white, -/area/medical/virology) -"bYb" = ( -/obj/machinery/vending/cigarette{ - pixel_x = 0; - pixel_y = 0 - }, -/turf/open/floor/plasteel, -/area/engine/break_room) -"bYc" = ( -/obj/machinery/disposal/bin, -/obj/structure/sign/deathsposal{ - pixel_x = 0; - pixel_y = -32 - }, -/obj/structure/disposalpipe/trunk{ - dir = 8 - }, -/turf/open/floor/plasteel/whitegreen/side{ - dir = 4 - }, -/area/medical/virology) -"bYd" = ( -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/white, -/area/medical/virology) -"bYe" = ( -/obj/structure/closet/secure_closet/personal/patient, -/turf/open/floor/plasteel/white, -/area/medical/virology) -"bYf" = ( -/obj/structure/table/reinforced, -/obj/machinery/button/door{ - id = "xenobio2"; - name = "Containment Blast Doors"; - pixel_x = 0; - pixel_y = 4; - req_access_txt = "55" - }, -/obj/structure/window/reinforced{ - dir = 1 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/turf/open/floor/plasteel/warning{ - dir = 5 - }, -/area/toxins/xenobiology) -"bYg" = ( -/obj/structure/grille, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/cable, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/machinery/door/poddoor/preopen{ - id = "xenobio2"; - name = "containment blast door" - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/engine, -/area/toxins/xenobiology) -"bYh" = ( -/obj/structure/grille, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/cable, -/obj/machinery/door/poddoor/preopen{ - id = "xenobio7"; - name = "containment blast door" - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/engine, -/area/toxins/xenobiology) -"bYi" = ( -/obj/structure/grille, -/obj/machinery/door/poddoor/preopen{ - id = "testlab"; - name = "test chamber blast door" - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/engine, -/area/toxins/misc_lab) -"bYj" = ( -/obj/structure/grille, -/obj/machinery/door/poddoor/preopen{ - id = "testlab"; - name = "test chamber blast door" - }, -/obj/machinery/atmospherics/pipe/simple/general/visible, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/engine, -/area/toxins/misc_lab) -"bYk" = ( -/obj/structure/reagent_dispensers/fueltank, -/turf/open/floor/plasteel/bot{ - dir = 2 - }, -/area/toxins/misc_lab) -"bYl" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/toxins/misc_lab) -"bYm" = ( -/obj/structure/reagent_dispensers/watertank, -/obj/structure/window/reinforced{ - dir = 4 - }, -/turf/open/floor/plasteel/bot{ - dir = 2 - }, -/area/toxins/misc_lab) -"bYn" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/yellow/side, -/area/hallway/primary/aft) -"bYo" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 8 - }, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/toxins/misc_lab) -"bYp" = ( -/obj/structure/sign/securearea{ - pixel_x = -32; - pixel_y = 0 - }, -/turf/open/floor/plasteel/yellow/side{ - dir = 10 - }, -/area/hallway/primary/aft) -"bYq" = ( -/obj/machinery/light, -/turf/open/floor/plasteel/yellow/side, -/area/hallway/primary/aft) -"bYr" = ( -/obj/machinery/door/airlock/maintenance{ - req_access_txt = "12" - }, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"bYs" = ( -/obj/structure/closet/crate, -/obj/item/clothing/under/color/lightpurple, -/obj/item/stack/spacecash/c200, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"bYt" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - dir = 5 - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"bYu" = ( -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; - icon_state = "space"; - layer = 4; - name = "EXTERNAL AIRLOCK"; - pixel_x = -32; - pixel_y = 0 - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"bYv" = ( -/obj/machinery/atmospherics/components/binary/pump{ - dir = 8; - name = "Mix to Space"; - on = 0 - }, -/turf/open/floor/plasteel/floorgrime, -/area/maintenance/aft) -"bYw" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - dir = 4 - }, -/turf/open/floor/plasteel/floorgrime, -/area/maintenance/aft) -"bYx" = ( -/obj/machinery/atmospherics/pipe/manifold/general/visible{ - dir = 4; - initialize_directions = 11 - }, -/turf/open/floor/plasteel/floorgrime, -/area/maintenance/aft) -"bYy" = ( -/obj/machinery/door/airlock/maintenance{ - name = "Incinerator Access"; - req_access_txt = "12" - }, -/obj/structure/barricade/wooden{ - name = "wooden barricade (CLOSED)" - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"bYz" = ( -/turf/open/floor/plasteel/black{ - name = "Mainframe Floor"; - initial_gas_mix = "n2=100;TEMP=80" - }, -/area/tcommsat/server) -"bYA" = ( -/obj/machinery/telecomms/broadcaster/preset_right, -/turf/open/floor/plasteel/black{ - name = "Mainframe Floor"; - initial_gas_mix = "n2=100;TEMP=80" - }, -/area/tcommsat/server) -"bYB" = ( -/obj/machinery/blackbox_recorder, -/turf/open/floor/plasteel/black{ - name = "Mainframe Floor"; - initial_gas_mix = "n2=100;TEMP=80" - }, -/area/tcommsat/server) -"bYC" = ( -/obj/machinery/telecomms/receiver/preset_right, -/turf/open/floor/plasteel/black{ - name = "Mainframe Floor"; - initial_gas_mix = "n2=100;TEMP=80" - }, -/area/tcommsat/server) -"bYD" = ( -/obj/machinery/computer/telecomms/server{ - network = "tcommsat" - }, -/turf/open/floor/plasteel/yellow/side{ - dir = 10 - }, -/area/tcommsat/computer) -"bYE" = ( -/turf/open/floor/plasteel/yellow/side, -/area/hallway/primary/aft) -"bYF" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/tcommsat/computer) -"bYG" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/yellow/side{ - dir = 6 - }, -/area/hallway/primary/aft) -"bYH" = ( -/turf/closed/wall, -/area/engine/break_room) -"bYI" = ( -/obj/machinery/firealarm{ - dir = 4; - pixel_x = 24 - }, -/turf/open/floor/plasteel/yellow/corner{ - dir = 2 - }, -/area/hallway/primary/aft) -"bYJ" = ( -/turf/open/floor/plasteel/caution{ - dir = 9 - }, -/area/engine/break_room) -"bYK" = ( -/turf/open/floor/plasteel/caution{ - dir = 5 - }, -/area/engine/break_room) -"bYL" = ( -/turf/open/floor/plasteel/caution{ - dir = 1 - }, -/area/engine/break_room) -"bYM" = ( -/obj/machinery/airalarm{ - dir = 1; - icon_state = "alarm0"; - pixel_y = -22 - }, -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/yellow/side, -/area/hallway/primary/aft) -"bYN" = ( -/turf/closed/wall, -/area/security/checkpoint/engineering) -"bYO" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/engine/break_room) -"bYP" = ( -/obj/effect/landmark/event_spawn, -/turf/closed/wall, -/area/crew_quarters/bar) -"bYQ" = ( -/obj/machinery/suit_storage_unit/atmos, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/atmos) -"bYR" = ( -/obj/structure/sign/nosmoking_2, -/turf/closed/wall, -/area/atmos) -"bYS" = ( -/obj/machinery/atmospherics/pipe/manifold/general/visible{ - dir = 4; - initialize_directions = 11 - }, -/obj/machinery/meter, -/turf/open/floor/plasteel, -/area/atmos) -"bYT" = ( -/obj/machinery/computer/atmos_control/tank{ - frequency = 1441; - input_tag = "tox_in"; - name = "Plasma Supply Control"; - output_tag = "tox_out"; - sensors = list("tox_sensor" = "Tank") - }, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/atmos) -"bYU" = ( -/obj/machinery/portable_atmospherics/canister/toxins, -/turf/open/floor/engine/plasma, -/area/atmos) -"bYV" = ( -/obj/machinery/air_sensor{ - frequency = 1441; - id_tag = "tox_sensor" - }, -/turf/open/floor/engine/plasma, -/area/atmos) -"bYW" = ( -/obj/machinery/light/small{ - dir = 4 - }, -/turf/open/floor/engine/plasma, -/area/atmos) -"bYX" = ( -/obj/structure/closet/l3closet/virology, -/turf/open/floor/plasteel/whitegreen/side{ - dir = 2 - }, -/area/medical/virology) -"bYY" = ( -/obj/structure/closet/secure_closet/medical1, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/whitegreen/side{ - dir = 2 - }, -/area/medical/virology) -"bYZ" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/closed/wall/r_wall, -/area/medical/virology) -"bZa" = ( -/obj/structure/sink{ - icon_state = "sink"; - dir = 8; - pixel_x = -12; - pixel_y = 2 - }, -/obj/machinery/camera{ - c_tag = "Xenobiology South"; - dir = 4; - network = list("SS13","RD") - }, -/turf/open/floor/plasteel/white, -/area/toxins/xenobiology) -"bZb" = ( -/obj/machinery/light{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/toxins/xenobiology) -"bZc" = ( -/obj/machinery/atmospherics/components/unary/outlet_injector/on{ - dir = 1 - }, -/turf/open/floor/engine, -/area/toxins/misc_lab) -"bZd" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/toxins/misc_lab) -"bZe" = ( -/obj/structure/grille, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/engine/break_room) -"bZf" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/engine/break_room) -"bZg" = ( -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/engine/break_room) -"bZh" = ( -/obj/structure/rack, -/obj/item/weapon/gun/energy/laser/practice, -/obj/item/clothing/ears/earmuffs, -/turf/open/floor/plasteel, -/area/toxins/misc_lab) -"bZi" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"bZj" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"bZk" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible{ - dir = 4 - }, -/obj/machinery/portable_atmospherics/canister, -/turf/open/floor/plating, -/area/maintenance/aft) -"bZl" = ( -/obj/machinery/atmospherics/components/binary/pump{ - dir = 8; - name = "Mix to Port"; - on = 0 - }, -/obj/machinery/light/small, -/turf/open/floor/plating, -/area/maintenance/aft) -"bZm" = ( -/obj/structure/disposaloutlet{ - dir = 8 - }, -/obj/structure/disposalpipe/trunk{ - dir = 4 - }, -/turf/open/floor/plating/airless, -/area/space/nearstation) -"bZn" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/turf/open/floor/bluegrid{ - name = "Mainframe Base"; - initial_gas_mix = "n2=100;TEMP=80" - }, -/area/tcommsat/server) -"bZo" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/turf/open/floor/bluegrid{ - name = "Mainframe Base"; - initial_gas_mix = "n2=100;TEMP=80" - }, -/area/tcommsat/server) -"bZp" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/turf/open/floor/bluegrid{ - name = "Mainframe Base"; - initial_gas_mix = "n2=100;TEMP=80" - }, -/area/tcommsat/server) -"bZq" = ( -/obj/structure/window/reinforced/fulltile, -/obj/structure/grille, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/turf/open/floor/plating, -/area/tcommsat/computer) -"bZr" = ( -/obj/machinery/status_display, -/turf/closed/wall, -/area/tcommsat/computer) -"bZs" = ( -/obj/structure/window/reinforced/fulltile, -/obj/structure/grille, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/structure/cable, -/turf/open/floor/plating, -/area/tcommsat/computer) -"bZt" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/engine/break_room) -"bZu" = ( -/obj/machinery/camera{ - c_tag = "Engineering Foyer"; - dir = 1 - }, -/obj/structure/noticeboard{ - dir = 1; - pixel_y = -27 - }, -/turf/open/floor/plasteel, -/area/engine/break_room) -"bZv" = ( -/obj/structure/window/reinforced/fulltile, -/obj/structure/grille, -/turf/open/floor/plating, -/area/tcommsat/computer) -"bZw" = ( -/obj/structure/extinguisher_cabinet{ - pixel_x = 27; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/engine/break_room) -"bZx" = ( -/obj/machinery/door/firedoor, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/caution/corner{ - dir = 8 - }, -/area/hallway/primary/aft) -"bZy" = ( -/turf/open/floor/plasteel, -/area/engine/break_room) -"bZz" = ( -/obj/structure/table, -/obj/machinery/cell_charger, -/obj/machinery/light_switch{ - pixel_x = -23; - pixel_y = 0 - }, -/obj/machinery/light{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/engine/break_room) -"bZA" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/engine/break_room) -"bZB" = ( -/obj/machinery/door/airlock/maintenance{ - req_access_txt = "12" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/maintenance/aft) -"bZC" = ( -/obj/machinery/door/poddoor/preopen{ - id = "Engineering"; - name = "engineering security door" - }, -/obj/machinery/door/airlock/glass_command{ - name = "Chief Engineer"; - req_access_txt = "56" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/delivery{ - name = "floor" - }, -/area/engine/chiefs_office) -"bZD" = ( -/obj/structure/grille, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/door/poddoor/preopen{ - id = "Engineering"; - name = "engineering security door" - }, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/engine/chiefs_office) -"bZE" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/yellow/side{ - dir = 10 - }, -/area/engine/break_room) -"bZF" = ( -/obj/machinery/power/apc{ - dir = 8; - name = "Atmospherics APC"; - pixel_x = -24 - }, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bZG" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible, -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/turf/open/floor/plasteel, -/area/atmos) -"bZH" = ( -/obj/machinery/atmospherics/pipe/manifold/general/visible{ - dir = 4; - initialize_directions = 11 - }, -/obj/item/weapon/wrench, -/turf/open/floor/plasteel, -/area/atmos) -"bZI" = ( -/obj/machinery/atmospherics/pipe/manifold/general/visible{ - dir = 8 - }, -/obj/machinery/meter, -/turf/open/floor/plasteel, -/area/atmos) -"bZJ" = ( -/obj/machinery/atmospherics/components/trinary/filter{ - dir = 1; - filter_type = "plasma"; - on = 1 - }, -/turf/open/floor/plasteel, -/area/atmos) -"bZK" = ( -/obj/machinery/atmospherics/pipe/simple/green/visible{ - dir = 4 - }, -/turf/open/floor/plasteel/warning{ - dir = 6 - }, -/area/atmos) -"bZL" = ( -/obj/machinery/atmospherics/components/unary/outlet_injector/on{ - dir = 8; - frequency = 1441; - id = "tox_in"; - pixel_y = 1 - }, -/turf/open/floor/engine/plasma, -/area/atmos) -"bZM" = ( -/turf/open/floor/plating{ - icon_state = "platingdmg3" - }, -/area/maintenance/asmaint) -"bZN" = ( -/obj/structure/reagent_dispensers/watertank, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"bZO" = ( -/obj/effect/decal/cleanable/cobweb/cobweb2, -/obj/effect/spawner/lootdrop/maintenance, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 8 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"bZP" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 10 - }, -/turf/closed/wall/r_wall, -/area/medical/virology) -"bZQ" = ( -/obj/machinery/atmospherics/components/binary/valve/open{ - icon_state = "mvalve_map"; - dir = 4 - }, -/turf/open/floor/plating/warnplate{ - dir = 1 - }, -/area/maintenance/asmaint) -"bZR" = ( -/obj/machinery/airalarm{ - frequency = 1439; - pixel_y = 23 - }, -/obj/item/weapon/wrench, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 8 - }, -/turf/open/floor/plating/warnplate{ - dir = 9 - }, -/area/maintenance/asmaint) -"bZS" = ( -/obj/machinery/atmospherics/components/unary/tank/air{ - dir = 8 - }, -/turf/open/floor/plating/warnplate{ - dir = 5 - }, -/area/maintenance/asmaint) -"bZT" = ( -/obj/structure/rack{ - dir = 1 - }, -/obj/machinery/light/small{ - dir = 1 - }, -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"bZU" = ( -/obj/structure/closet/emcloset, -/obj/effect/decal/cleanable/cobweb, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"bZV" = ( -/obj/structure/grille, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/obj/machinery/door/poddoor/preopen{ - id = "xenobio1"; - name = "containment blast door" - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/engine, -/area/toxins/xenobiology) -"bZW" = ( -/obj/structure/window/reinforced, -/obj/structure/table/reinforced, -/obj/machinery/button/door{ - id = "xenobio6"; - name = "Containment Blast Doors"; - pixel_x = 0; - pixel_y = 4; - req_access_txt = "55" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/turf/open/floor/plasteel/warning{ - dir = 10 - }, -/area/toxins/xenobiology) -"bZX" = ( -/obj/structure/grille, -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/machinery/door/poddoor/preopen{ - id = "xenobio6"; - name = "containment blast door" - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/engine, -/area/toxins/xenobiology) -"bZY" = ( -/obj/item/device/radio/intercom{ - pixel_x = -25 - }, -/turf/open/floor/engine, -/area/toxins/misc_lab) -"bZZ" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/toxins/misc_lab) -"caa" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/warning/corner{ - dir = 1 - }, -/area/toxins/misc_lab) -"cab" = ( -/obj/structure/extinguisher_cabinet{ - pixel_x = 27; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/warning/corner{ - dir = 8 - }, -/area/toxins/misc_lab) -"cac" = ( -/obj/structure/chair/stool, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"cad" = ( -/obj/structure/table, -/obj/item/device/flashlight/lamp, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"cae" = ( -/turf/open/floor/plating{ - icon_state = "platingdmg3" - }, -/area/maintenance/asmaint2) -"caf" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - dir = 5 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plating/airless, -/area/maintenance/aft) -"cag" = ( -/obj/machinery/power/terminal{ - dir = 4 - }, -/obj/machinery/ntnet_relay, -/turf/open/floor/bluegrid{ - name = "Mainframe Base"; - initial_gas_mix = "n2=100;TEMP=80" - }, -/area/tcommsat/server) -"cah" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/turf/open/floor/bluegrid{ - name = "Mainframe Base"; - initial_gas_mix = "n2=100;TEMP=80" - }, -/area/tcommsat/server) -"cai" = ( -/obj/machinery/power/smes{ - charge = 5e+006 - }, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/turf/open/floor/bluegrid{ - name = "Mainframe Base"; - initial_gas_mix = "n2=100;TEMP=80" - }, -/area/tcommsat/server) -"caj" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/turf/open/floor/bluegrid{ - name = "Mainframe Base"; - initial_gas_mix = "n2=100;TEMP=80" - }, -/area/tcommsat/server) -"cak" = ( -/obj/machinery/telecomms/hub/preset, -/turf/open/floor/plasteel/vault{ - dir = 8; - name = "Mainframe Floor"; - initial_gas_mix = "n2=100;TEMP=80" - }, -/area/tcommsat/server) -"cal" = ( -/obj/machinery/door/airlock/glass_engineering{ - cyclelinkeddir = 4; - name = "Server Room"; - req_access_txt = "61" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/tcommsat/computer) -"cam" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/floor/bluegrid{ - name = "Mainframe Base"; - initial_gas_mix = "n2=100;TEMP=80" - }, -/area/tcommsat/server) -"can" = ( -/obj/machinery/door/airlock/glass_engineering{ - cyclelinkeddir = 8; - name = "Server Room"; - req_access_txt = "61" - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/tcommsat/computer) -"cao" = ( -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/tcommsat/computer) -"cap" = ( -/obj/machinery/light, -/turf/open/floor/plasteel/yellow/side{ - dir = 6 - }, -/area/engine/break_room) -"caq" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"car" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 5 - }, -/turf/closed/wall, -/area/maintenance/aft) -"cas" = ( -/obj/machinery/door/airlock/maintenance{ - req_access_txt = "12" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"cat" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 5 - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"cau" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 9 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/aft) -"cav" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/caution/corner{ - dir = 8 - }, -/area/hallway/primary/aft) -"caw" = ( -/obj/structure/table, -/obj/item/clothing/glasses/meson, -/obj/machinery/airalarm{ - dir = 4; - icon_state = "alarm0"; - pixel_x = -22 - }, -/turf/open/floor/plasteel, -/area/engine/break_room) -"cax" = ( -/obj/structure/closet/wardrobe/black, -/obj/effect/decal/cleanable/cobweb, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 1 - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"cay" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"caz" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"caA" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/security/checkpoint/engineering) -"caB" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"caC" = ( -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 9 - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"caD" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall/r_wall, -/area/security/checkpoint/engineering) -"caE" = ( -/obj/machinery/requests_console{ - department = "Atmospherics"; - departmentType = 4; - name = "Atmos RC"; - pixel_x = 30; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible, -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/turf/open/floor/plasteel, -/area/atmos) -"caF" = ( -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/obj/machinery/camera{ - c_tag = "Atmospherics Central"; - dir = 4; - network = list("SS13") - }, -/obj/machinery/atmospherics/components/binary/pump{ - dir = 0; - name = "Port to Filter"; - on = 0 - }, -/turf/open/floor/plasteel, -/area/atmos) -"caG" = ( -/obj/machinery/atmospherics/components/unary/thermomachine/heater{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/atmos) -"caH" = ( -/obj/machinery/atmospherics/pipe/manifold/general/visible{ - dir = 8 - }, -/obj/structure/chair/stool, -/turf/open/floor/plasteel, -/area/atmos) -"caI" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/yellow/visible{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"caJ" = ( -/obj/structure/lattice, -/obj/machinery/atmospherics/pipe/simple/yellow/visible{ - icon_state = "intact"; - dir = 5 - }, -/turf/open/space, -/area/space/nearstation) -"caK" = ( -/obj/structure/rack, -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"caL" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"caM" = ( -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 8 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"caN" = ( -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 10 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"caO" = ( -/obj/structure/disposalpipe/segment, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"caP" = ( -/obj/machinery/atmospherics/components/binary/valve{ - dir = 4 - }, -/turf/open/floor/plating/warnplate{ - dir = 2 - }, -/area/maintenance/asmaint) -"caQ" = ( -/obj/structure/chair/stool{ - pixel_y = 8 - }, -/obj/machinery/light/small{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 5 - }, -/turf/open/floor/plating/warnplate{ - dir = 10 - }, -/area/maintenance/asmaint) -"caR" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible{ - dir = 8 - }, -/obj/machinery/portable_atmospherics/canister/air, -/turf/open/floor/plating/warnplate{ - dir = 6 - }, -/area/maintenance/asmaint) -"caS" = ( -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 6 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"caT" = ( -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"caU" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"caV" = ( -/obj/machinery/door/window/northleft{ - base_state = "right"; - dir = 8; - icon_state = "right"; - name = "Containment Pen"; - req_access_txt = "55" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/machinery/door/poddoor/preopen{ - id = "xenobio1"; - name = "containment blast door" - }, -/turf/open/floor/engine, -/area/toxins/xenobiology) -"caW" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/machinery/door/window/northleft{ - dir = 4; - name = "Containment Pen"; - req_access_txt = "55" - }, -/obj/machinery/door/poddoor/preopen{ - id = "xenobio6"; - name = "containment blast door" - }, -/turf/open/floor/engine, -/area/toxins/xenobiology) -"caX" = ( -/obj/machinery/sparker{ - id = "testigniter"; - pixel_x = -25 - }, -/turf/open/floor/engine, -/area/toxins/misc_lab) -"caY" = ( -/obj/item/device/radio/beacon, -/turf/open/floor/engine, -/area/toxins/misc_lab) -"caZ" = ( -/obj/structure/grille, -/obj/machinery/door/poddoor/preopen{ - id = "testlab"; - name = "test chamber blast door" - }, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/engine, -/area/toxins/misc_lab) -"cba" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/engine, -/area/toxins/misc_lab) -"cbb" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/engine, -/area/toxins/misc_lab) -"cbc" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/engine, -/area/toxins/misc_lab) -"cbd" = ( -/obj/machinery/power/apc{ - dir = 4; - name = "Testing Lab APC"; - pixel_x = 26; - pixel_y = 0 - }, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/floorgrime, -/area/toxins/misc_lab) -"cbe" = ( -/obj/machinery/light/small{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/toxins/misc_lab) -"cbf" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"cbg" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plating{ - icon_state = "platingdmg3" - }, -/area/maintenance/asmaint2) -"cbh" = ( -/obj/structure/table, -/obj/item/weapon/folder/white, -/obj/item/weapon/folder/white, -/obj/item/weapon/pen, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"cbi" = ( -/obj/structure/table, -/obj/item/weapon/paper_bin{ - pixel_x = -2; - pixel_y = 5 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"cbj" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plating/airless, -/area/maintenance/aft) -"cbk" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/components/binary/pump{ - dir = 8; - name = "Mix to Space"; - on = 1 - }, -/turf/open/floor/plating/airless, -/area/maintenance/aft) -"cbl" = ( -/obj/machinery/camera{ - c_tag = "Telecoms Server Room"; - dir = 4; - network = list("SS13") - }, -/turf/open/floor/plasteel/black{ - name = "Mainframe Floor"; - initial_gas_mix = "n2=100;TEMP=80" - }, -/area/tcommsat/server) -"cbm" = ( -/obj/structure/window/reinforced/fulltile, -/obj/structure/grille, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/structure/cable, -/turf/open/floor/plating, -/area/tcommsat/computer) -"cbn" = ( -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'SERVER ROOM'."; - name = "SERVER ROOM"; - pixel_y = 0 - }, -/turf/closed/wall, -/area/tcommsat/computer) -"cbo" = ( -/obj/structure/window/reinforced/fulltile, -/obj/structure/grille, -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/turf/open/floor/plating, -/area/tcommsat/computer) -"cbp" = ( -/obj/machinery/power/apc{ - cell_type = 5000; - dir = 4; - name = "CE Office APC"; - pixel_x = 24; - pixel_y = 0 - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/neutral{ - dir = 2 - }, -/area/engine/chiefs_office) -"cbq" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral{ - dir = 2 - }, -/area/engine/chiefs_office) -"cbr" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plasteel, -/area/hallway/primary/aft) -"cbs" = ( -/obj/structure/sign/securearea, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall, -/area/engine/engineering) -"cbt" = ( -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/obj/machinery/camera{ - c_tag = "Aft Primary Hallway 1"; - dir = 8; - network = list("SS13"); - pixel_x = 0; - pixel_y = -22 - }, -/turf/open/floor/plasteel/yellow/corner{ - dir = 2 - }, -/area/hallway/primary/aft) -"cbu" = ( -/obj/machinery/power/apc{ - dir = 8; - name = "Engineering Foyer APC"; - pixel_x = -24 - }, -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/turf/open/floor/plasteel, -/area/engine/break_room) -"cbv" = ( -/obj/machinery/door/airlock/maintenance{ - name = "Research Delivery access"; - req_access_txt = "12" - }, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"cbw" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 5 - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"cbx" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/maintenance/aft) -"cby" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 10 - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"cbz" = ( -/obj/structure/closet/wardrobe/atmospherics_yellow, -/turf/open/floor/plasteel, -/area/atmos) -"cbA" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible, -/turf/open/floor/plasteel, -/area/atmos) -"cbB" = ( -/obj/machinery/space_heater, -/turf/open/floor/plasteel/warning{ - dir = 6 - }, -/area/atmos) -"cbC" = ( -/obj/machinery/space_heater, -/turf/open/floor/plasteel/warning{ - dir = 10 - }, -/area/atmos) -"cbD" = ( -/obj/machinery/atmospherics/components/binary/pump{ - dir = 8; - name = "Port to Filter"; - on = 0 - }, -/turf/open/floor/plasteel, -/area/atmos) -"cbE" = ( -/obj/machinery/atmospherics/components/unary/thermomachine/freezer{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/atmos) -"cbF" = ( -/obj/machinery/atmospherics/pipe/manifold/general/visible, -/obj/item/weapon/cigbutt, -/turf/open/floor/plasteel, -/area/atmos) -"cbG" = ( -/obj/machinery/atmospherics/components/binary/pump{ - dir = 8; - name = "CO2 Outlet Pump"; - on = 0 - }, -/turf/open/floor/plasteel/yellow/side{ - dir = 5 - }, -/area/atmos) -"cbH" = ( -/turf/open/floor/engine/co2, -/area/atmos) -"cbI" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - external_pressure_bound = 0; - frequency = 1441; - id_tag = "co2_out"; - initialize_directions = 1; - internal_pressure_bound = 4000; - on = 1; - pressure_checks = 2; - pump_direction = 0 - }, -/turf/open/floor/engine/co2, -/area/atmos) -"cbJ" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/simple/yellow/visible{ - icon_state = "intact"; - dir = 10 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"cbK" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall, -/area/maintenance/asmaint) -"cbL" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"cbM" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"cbN" = ( -/obj/structure/disposalpipe/segment, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"cbO" = ( -/obj/machinery/door/airlock/atmos{ - name = "Atmospherics Maintenance"; - req_access_txt = "12;24" - }, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"cbP" = ( -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"cbQ" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"cbR" = ( -/obj/structure/table/reinforced, -/obj/machinery/button/door{ - id = "xenobio1"; - name = "Containment Blast Doors"; - pixel_x = 0; - pixel_y = 4; - req_access_txt = "55" - }, -/obj/structure/window/reinforced{ - dir = 1 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/machinery/light, -/turf/open/floor/plasteel/warning{ - dir = 5 - }, -/area/toxins/xenobiology) -"cbS" = ( -/obj/structure/grille, -/obj/structure/cable, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/machinery/door/poddoor/preopen{ - id = "xenobio1"; - name = "containment blast door" - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/engine, -/area/toxins/xenobiology) -"cbT" = ( -/obj/structure/disposalpipe/segment, -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/turf/open/floor/plasteel/white, -/area/toxins/xenobiology) -"cbU" = ( -/obj/structure/grille, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/cable, -/obj/machinery/door/poddoor/preopen{ - id = "xenobio6"; - name = "containment blast door" - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/engine, -/area/toxins/xenobiology) -"cbV" = ( -/obj/machinery/camera{ - c_tag = "Testing Chamber"; - dir = 1; - network = list("Test","RD"); - pixel_x = 0 - }, -/obj/machinery/light, -/turf/open/floor/engine, -/area/toxins/misc_lab) -"cbW" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/warning/corner{ - dir = 4 - }, -/area/toxins/misc_lab) -"cbX" = ( -/obj/machinery/camera{ - c_tag = "Testing Lab South"; - dir = 8; - network = list("SS13","RD"); - pixel_y = -22 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/toxins/misc_lab) -"cbY" = ( -/obj/structure/closet/crate, -/obj/item/target/syndicate, -/obj/item/target/alien, -/obj/item/target/clown, -/turf/open/floor/plasteel, -/area/toxins/misc_lab) -"cbZ" = ( -/obj/structure/closet/crate, -/obj/item/target, -/obj/item/target, -/obj/item/target, -/turf/open/floor/plasteel, -/area/toxins/misc_lab) -"cca" = ( -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/machinery/power/solar{ - id = "portsolar"; - name = "Port Solar Array" - }, -/turf/open/floor/plasteel/airless/solarpanel, -/area/solar/port) -"ccb" = ( -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/machinery/power/solar{ - id = "portsolar"; - name = "Port Solar Array" - }, -/turf/open/floor/plasteel/airless/solarpanel, -/area/solar/port) -"ccc" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/structure/lattice/catwalk, -/turf/open/space, -/area/solar/port) -"ccd" = ( -/obj/structure/closet, -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plating, -/area/maintenance/aft) -"cce" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/door/airlock/maintenance{ - name = "Construction Area Maintenance"; - req_access_txt = "32" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/construction) -"ccf" = ( -/obj/machinery/telecomms/broadcaster/preset_left, -/turf/open/floor/plasteel/black{ - name = "Mainframe Floor"; - initial_gas_mix = "n2=100;TEMP=80" - }, -/area/tcommsat/server) -"ccg" = ( -/obj/machinery/message_server, -/turf/open/floor/plasteel/black{ - name = "Mainframe Floor"; - initial_gas_mix = "n2=100;TEMP=80" - }, -/area/tcommsat/server) -"cch" = ( -/obj/machinery/telecomms/receiver/preset_left, -/turf/open/floor/plasteel/black{ - name = "Mainframe Floor"; - initial_gas_mix = "n2=100;TEMP=80" - }, -/area/tcommsat/server) -"cci" = ( -/obj/structure/table, -/obj/item/device/multitool, -/turf/open/floor/plasteel/yellow/side{ - dir = 9 - }, -/area/tcommsat/computer) -"ccj" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/clipboard, -/obj/item/weapon/lighter, -/obj/item/clothing/glasses/meson{ - pixel_y = 4 - }, -/obj/item/weapon/stamp/ce, -/obj/item/weapon/stock_parts/cell/high/plus, -/turf/open/floor/plasteel/neutral{ - dir = 2 - }, -/area/engine/chiefs_office) -"cck" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/turf/open/floor/plasteel/neutral{ - dir = 2 - }, -/area/engine/chiefs_office) -"ccl" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/neutral{ - dir = 2 - }, -/area/engine/chiefs_office) -"ccm" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/engine/engineering) -"ccn" = ( -/obj/machinery/camera{ - c_tag = "Engineering Access" - }, -/obj/structure/closet/radiation, -/turf/open/floor/plasteel, -/area/engine/engineering) -"cco" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"ccp" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 6 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"ccq" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"ccr" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 9 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"ccs" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/engine/break_room) -"cct" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"ccu" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"ccv" = ( -/obj/machinery/firealarm{ - dir = 8; - pixel_x = -24 - }, -/turf/open/floor/plasteel, -/area/atmos) -"ccw" = ( -/turf/closed/wall/r_wall, -/area/engine/engineering) -"ccx" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/visible{ - dir = 1 - }, -/obj/machinery/meter, -/turf/open/floor/plasteel, -/area/atmos) -"ccy" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - dir = 5 - }, -/turf/open/floor/plasteel, -/area/atmos) -"ccz" = ( -/obj/machinery/atmospherics/components/binary/pump{ - dir = 4; - name = "N2 to Pure"; - on = 0 - }, -/turf/open/floor/plasteel, -/area/atmos) -"ccA" = ( -/obj/machinery/computer/atmos_control/tank{ - frequency = 1441; - input_tag = "co2_in"; - name = "Carbon Dioxide Supply Control"; - output_tag = "co2_out"; - sensors = list("co2_sensor" = "Tank") - }, -/turf/open/floor/plasteel/yellow/side{ - dir = 4 - }, -/area/atmos) -"ccB" = ( -/obj/machinery/portable_atmospherics/canister/carbon_dioxide, -/turf/open/floor/engine/co2, -/area/atmos) -"ccC" = ( -/obj/machinery/air_sensor{ - frequency = 1441; - id_tag = "co2_sensor" - }, -/turf/open/floor/engine/co2, -/area/atmos) -"ccD" = ( -/obj/machinery/light/small{ - dir = 4 - }, -/turf/open/floor/engine/co2, -/area/atmos) -"ccE" = ( -/obj/structure/sign/nosmoking_2{ - pixel_x = 0; - pixel_y = 28 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"ccF" = ( -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"ccG" = ( -/obj/structure/chair/stool, -/obj/effect/decal/cleanable/cobweb{ - icon_state = "cobweb2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"ccH" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"ccI" = ( -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 5 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"ccJ" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 1 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"ccK" = ( -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"ccL" = ( -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"ccM" = ( -/obj/structure/disposalpipe/segment, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"ccN" = ( -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 9 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"ccO" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/door/airlock/maintenance{ - req_access_txt = "12" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"ccP" = ( -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/white, -/area/toxins/xenobiology) -"ccQ" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/toxins/xenobiology) -"ccR" = ( -/obj/machinery/portable_atmospherics/pump, -/turf/open/floor/plasteel/bot{ - dir = 2 - }, -/area/toxins/misc_lab) -"ccS" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/floorgrime, -/area/toxins/misc_lab) -"ccT" = ( -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/floorgrime, -/area/toxins/misc_lab) -"ccU" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/closed/wall, -/area/maintenance/asmaint2) -"ccV" = ( -/obj/structure/table, -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"ccW" = ( -/obj/structure/table, -/obj/effect/decal/cleanable/cobweb, -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"ccX" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/lattice/catwalk, -/turf/open/space, -/area/solar/port) -"ccY" = ( -/obj/structure/table, -/obj/item/weapon/kitchen/rollingpin, -/obj/item/weapon/reagent_containers/food/condiment/enzyme, -/obj/item/weapon/reagent_containers/food/condiment/sugar, -/turf/open/floor/plating, -/area/maintenance/aft) -"ccZ" = ( -/obj/structure/chair/stool, -/turf/open/floor/plating, -/area/maintenance/aft) -"cda" = ( -/obj/machinery/light/small{ - dir = 1 - }, -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plating, -/area/maintenance/aft) -"cdb" = ( -/obj/machinery/portable_atmospherics/canister/air, -/turf/open/floor/plating, -/area/maintenance/aft) -"cdc" = ( -/obj/machinery/telecomms/bus/preset_two, -/turf/open/floor/plasteel/black{ - name = "Mainframe Floor"; - initial_gas_mix = "n2=100;TEMP=80" - }, -/area/tcommsat/server) -"cdd" = ( -/obj/machinery/telecomms/server/presets/supply, -/turf/open/floor/plasteel/black{ - name = "Mainframe Floor"; - initial_gas_mix = "n2=100;TEMP=80" - }, -/area/tcommsat/server) -"cde" = ( -/obj/machinery/telecomms/processor/preset_one, -/turf/open/floor/plasteel/black{ - name = "Mainframe Floor"; - initial_gas_mix = "n2=100;TEMP=80" - }, -/area/tcommsat/server) -"cdf" = ( -/obj/machinery/telecomms/server/presets/medical, -/turf/open/floor/plasteel/black{ - name = "Mainframe Floor"; - initial_gas_mix = "n2=100;TEMP=80" - }, -/area/tcommsat/server) -"cdg" = ( -/obj/machinery/computer/telecomms/monitor{ - network = "tcommsat" - }, -/turf/open/floor/plasteel/yellow/side{ - dir = 8 - }, -/area/tcommsat/computer) -"cdh" = ( -/obj/structure/disposalpipe/sortjunction{ - dir = 8; - icon_state = "pipe-j2s"; - sortType = 4 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/maintenance/aft) -"cdi" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"cdj" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"cdk" = ( -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/obj/machinery/modular_computer/console/preset/engineering, -/turf/open/floor/plasteel, -/area/engine/engineering) -"cdl" = ( -/obj/effect/landmark/event_spawn, -/turf/open/floor/carpet, -/area/chapel/main) -"cdm" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - external_pressure_bound = 101.325; - on = 1; - pressure_checks = 1 - }, -/turf/open/floor/plasteel/neutral{ - dir = 2 - }, -/area/engine/chiefs_office) -"cdn" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"cdo" = ( -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/obj/structure/closet/radiation, -/turf/open/floor/plasteel, -/area/engine/engineering) -"cdp" = ( -/obj/effect/landmark{ - name = "lightsout" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"cdq" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/tinted/fulltile, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 6 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"cdr" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"cds" = ( -/obj/machinery/power/apc{ - dir = 8; - name = "Science Maintenance APC"; - pixel_x = -25 - }, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/machinery/camera{ - c_tag = "Aft Starboard Solar Access"; - dir = 1 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"cdt" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/engine/break_room) -"cdu" = ( -/obj/structure/closet/emcloset, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 9 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"cdv" = ( -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"cdw" = ( -/obj/machinery/airalarm{ - dir = 4; - icon_state = "alarm0"; - pixel_x = -22 - }, -/turf/open/floor/plasteel, -/area/atmos) -"cdx" = ( -/obj/machinery/atmospherics/pipe/manifold/cyan/visible, -/turf/open/floor/plasteel, -/area/atmos) -"cdy" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/visible{ - dir = 4 - }, -/obj/machinery/meter, -/turf/open/floor/plasteel, -/area/atmos) -"cdz" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/visible{ - dir = 4 - }, -/obj/machinery/atmospherics/components/binary/pump{ - dir = 1; - name = "O2 to Pure"; - on = 0 - }, -/turf/open/floor/plasteel, -/area/atmos) -"cdA" = ( -/obj/machinery/atmospherics/components/trinary/mixer{ - dir = 4; - node1_concentration = 0.8; - node2_concentration = 0.2; - on = 1; - pixel_x = 0; - pixel_y = 0; - target_pressure = 4500 - }, -/turf/open/floor/plasteel, -/area/atmos) -"cdB" = ( -/obj/machinery/atmospherics/components/trinary/filter{ - dir = 1; - filter_type = "co2"; - on = 1 - }, -/turf/open/floor/plasteel, -/area/atmos) -"cdC" = ( -/obj/machinery/atmospherics/pipe/simple/green/visible{ - dir = 4 - }, -/turf/open/floor/plasteel/yellow/side{ - dir = 6 - }, -/area/atmos) -"cdD" = ( -/obj/machinery/atmospherics/components/unary/outlet_injector/on{ - dir = 8; - frequency = 1441; - id = "co2_in"; - pixel_y = 1 - }, -/turf/open/floor/engine/co2, -/area/atmos) -"cdE" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/simple/yellow/visible{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"cdF" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"cdG" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 6 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"cdH" = ( -/obj/structure/table, -/obj/effect/spawner/lootdrop/maintenance, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"cdI" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 9 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"cdJ" = ( -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 5 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"cdK" = ( -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 10 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"cdL" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"cdM" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/mob/living/simple_animal/mouse, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"cdN" = ( -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"cdO" = ( -/obj/structure/disposalpipe/segment, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"cdP" = ( -/obj/machinery/door/window{ - name = "Ready Room"; - req_access_txt = "150" - }, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/syndicate) -"cdQ" = ( -/obj/structure/closet/emcloset, -/obj/effect/decal/cleanable/cobweb, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"cdR" = ( -/obj/machinery/atmospherics/components/unary/tank/air, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"cdS" = ( -/obj/machinery/portable_atmospherics/scrubber, -/turf/open/floor/plasteel/bot{ - dir = 2 - }, -/area/toxins/misc_lab) -"cdT" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - on = 1 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"cdU" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/paper_bin{ - pixel_x = -3; - pixel_y = 7 - }, -/obj/item/weapon/pen, -/obj/item/weapon/storage/fancy/cigarettes, -/turf/open/floor/plasteel/neutral{ - dir = 2 - }, -/area/engine/chiefs_office) -"cdV" = ( -/obj/structure/table, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"cdW" = ( -/obj/machinery/power/apc{ - dir = 8; - name = "Engineering Maintenance APC"; - pixel_x = -25; - pixel_y = 1 - }, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"cdX" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/white, -/area/medical/research{ - name = "Research Division" - }) -"cdY" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"cdZ" = ( -/obj/machinery/telecomms/processor/preset_two, -/turf/open/floor/plasteel/black{ - name = "Mainframe Floor"; - initial_gas_mix = "n2=100;TEMP=80" - }, -/area/tcommsat/server) -"cea" = ( -/obj/machinery/telecomms/server/presets/service, -/turf/open/floor/plasteel/black{ - name = "Mainframe Floor"; - initial_gas_mix = "n2=100;TEMP=80" - }, -/area/tcommsat/server) -"ceb" = ( -/obj/machinery/telecomms/bus/preset_one, -/turf/open/floor/plasteel/black{ - name = "Mainframe Floor"; - initial_gas_mix = "n2=100;TEMP=80" - }, -/area/tcommsat/server) -"cec" = ( -/obj/structure/sign/nosmoking_2{ - pixel_y = -32 - }, -/obj/machinery/light, -/turf/open/floor/bluegrid{ - name = "Mainframe Base"; - initial_gas_mix = "n2=100;TEMP=80" - }, -/area/tcommsat/server) -"ced" = ( -/obj/machinery/telecomms/server/presets/science, -/turf/open/floor/plasteel/black{ - name = "Mainframe Floor"; - initial_gas_mix = "n2=100;TEMP=80" - }, -/area/tcommsat/server) -"cee" = ( -/obj/structure/table, -/obj/item/device/radio/off, -/turf/open/floor/plasteel/yellow/side{ - dir = 10 - }, -/area/tcommsat/computer) -"cef" = ( -/obj/structure/window/reinforced/fulltile, -/obj/structure/grille, -/obj/structure/cable, -/turf/open/floor/plating, -/area/tcommsat/computer) -"ceg" = ( -/obj/machinery/airalarm{ - dir = 1; - icon_state = "alarm0"; - pixel_y = -22 - }, -/obj/machinery/light, -/obj/structure/filingcabinet/chestdrawer, -/turf/open/floor/plasteel, -/area/tcommsat/computer) -"ceh" = ( -/obj/effect/landmark/event_spawn, -/turf/open/floor/plasteel, -/area/bridge) -"cei" = ( -/obj/structure/rack{ - dir = 8; - layer = 2.9 - }, -/obj/item/weapon/storage/toolbox/mechanical{ - pixel_x = -2; - pixel_y = -1 - }, -/turf/open/floor/plasteel, -/area/tcommsat/computer) -"cej" = ( -/obj/machinery/door/poddoor/preopen{ - id = "Engineering"; - name = "engineering security door" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/delivery{ - name = "floor" - }, -/area/engine/engineering) -"cek" = ( -/obj/machinery/door/poddoor/preopen{ - id = "Engineering"; - name = "engineering security door" - }, -/turf/open/floor/plasteel/delivery{ - name = "floor" - }, -/area/engine/engineering) -"cel" = ( -/obj/machinery/door/poddoor/preopen{ - id = "Engineering"; - name = "engineering security door" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/delivery{ - name = "floor" - }, -/area/engine/engineering) -"cem" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"cen" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"ceo" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral{ - dir = 2 - }, -/area/engine/chiefs_office) -"cep" = ( -/obj/structure/sign/securearea, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall/r_wall, -/area/engine/engineering) -"ceq" = ( -/obj/structure/grille, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/engine/chiefs_office) -"cer" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/engine/break_room) -"ces" = ( -/obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/yellow/side{ - dir = 9 - }, -/area/engine/engineering) -"cet" = ( -/obj/machinery/door/firedoor, -/turf/open/floor/plasteel/yellow/side{ - dir = 5 - }, -/area/engine/engineering) -"ceu" = ( -/obj/structure/grille, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/structure/window/fulltile, -/turf/open/floor/plating, -/area/engine/engineering) -"cev" = ( -/obj/structure/grille, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/window/fulltile, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/engine/engineering) -"cew" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/engine/break_room) -"cex" = ( -/obj/machinery/camera{ - c_tag = "Atmospherics South West"; - dir = 4; - network = list("SS13") - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/plasteel, -/area/atmos) -"cey" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/closed/wall/r_wall, -/area/engine/engineering) -"cez" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/visible, -/turf/open/floor/plasteel, -/area/atmos) -"ceA" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/cyan/visible{ - dir = 9 - }, -/turf/open/floor/plating, -/area/atmos) -"ceB" = ( -/obj/machinery/light{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/cyan/visible{ - dir = 6 - }, -/turf/open/floor/plasteel, -/area/atmos) -"ceC" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/yellow/visible, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"ceD" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 6 - }, -/turf/open/floor/plating/warnplate, -/area/maintenance/asmaint) -"ceE" = ( -/obj/structure/sign/fire{ - pixel_x = 0; - pixel_y = -32 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"ceF" = ( -/obj/structure/closet/emcloset, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 9 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"ceG" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"ceH" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/closed/wall, -/area/maintenance/asmaint) -"ceI" = ( -/obj/structure/sign/biohazard, -/turf/closed/wall, -/area/maintenance/asmaint) -"ceJ" = ( -/obj/structure/disposalpipe/segment, -/turf/closed/wall, -/area/maintenance/asmaint) -"ceK" = ( -/obj/structure/disposalpipe/segment, -/obj/structure/closet/l3closet, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"ceL" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/light/small, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"ceM" = ( -/obj/machinery/meter, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 6 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"ceN" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/hidden{ - icon_state = "intact"; - dir = 9 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"ceO" = ( -/obj/machinery/meter, -/obj/machinery/atmospherics/pipe/manifold/cyan/hidden, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"ceP" = ( -/obj/machinery/portable_atmospherics/canister, -/turf/open/floor/plasteel/bot{ - dir = 2 - }, -/area/toxins/misc_lab) -"ceQ" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/toxins/misc_lab) -"ceR" = ( -/obj/effect/landmark{ - name = "blobstart" - }, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"ceS" = ( -/obj/item/stack/sheet/cardboard, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"ceT" = ( -/obj/machinery/light/small, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"ceU" = ( -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; - icon_state = "space"; - layer = 4; - name = "EXTERNAL AIRLOCK"; - pixel_x = 0; - pixel_y = -32 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"ceV" = ( -/obj/structure/closet, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 2; - name = "2maintenance loot spawner" - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"ceW" = ( -/obj/machinery/space_heater, -/turf/open/floor/plating, -/area/maintenance/aft) -"ceX" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/holopad, -/turf/open/floor/plasteel/white, -/area/medical/research{ - name = "Research Division" - }) -"ceY" = ( -/obj/structure/reagent_dispensers/fueltank, -/turf/open/floor/plating, -/area/maintenance/aft) -"ceZ" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass_engineering{ - name = "Power Storage"; - req_access_txt = "11"; - req_one_access_txt = "0" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/engine/engineering) -"cfa" = ( -/obj/structure/rack{ - dir = 8; - layer = 2.9 - }, -/obj/item/weapon/storage/belt/utility, -/obj/item/weapon/wrench, -/obj/item/weapon/weldingtool, -/obj/item/clothing/head/welding{ - pixel_x = -3; - pixel_y = 5 - }, -/turf/open/floor/plasteel/yellow/side{ - dir = 1 - }, -/area/engine/engineering) -"cfb" = ( -/turf/closed/wall/r_wall, -/area/engine/chiefs_office) -"cfc" = ( -/obj/structure/grille, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/machinery/door/poddoor/preopen{ - id = "Engineering"; - name = "engineering security door" - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/engine/chiefs_office) -"cfd" = ( -/obj/machinery/firealarm{ - dir = 4; - pixel_x = 24 - }, -/turf/open/floor/plasteel/yellow/side{ - dir = 4 - }, -/area/engine/engineering) -"cfe" = ( -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'RADIOACTIVE AREA'"; - icon_state = "radiation"; - name = "RADIOACTIVE AREA"; - pixel_x = -32; - pixel_y = 0 - }, -/obj/structure/disposalpipe/segment, -/obj/structure/sign/securearea{ - pixel_x = 32; - pixel_y = 0 - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/aft) -"cff" = ( -/obj/machinery/vending/tool, -/turf/open/floor/plasteel/yellow/corner{ - dir = 1 - }, -/area/engine/engineering) -"cfg" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/yellow/corner{ - dir = 4 - }, -/area/engine/engineering) -"cfh" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/yellow/side, -/area/engine/break_room) -"cfi" = ( -/obj/machinery/atmospherics/components/trinary/filter{ - dir = 2; - filter_type = "n2"; - on = 1 - }, -/turf/open/floor/plasteel, -/area/atmos) -"cfj" = ( -/turf/closed/wall, -/area/maintenance/incinerator) -"cfk" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/door/airlock/atmos{ - name = "Turbine Access"; - req_access_txt = "32" - }, -/turf/open/floor/plating, -/area/maintenance/incinerator) -"cfl" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/closed/wall, -/area/maintenance/incinerator) -"cfm" = ( -/obj/structure/rack, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 2; - name = "2maintenance loot spawner" - }, -/obj/item/toy/minimeteor, -/obj/item/weapon/poster/contraband, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"cfn" = ( -/obj/structure/disposalpipe/segment, -/obj/structure/rack{ - dir = 1 - }, -/obj/effect/spawner/lootdrop/maintenance, -/obj/item/weapon/reagent_containers/food/snacks/donkpocket, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"cfo" = ( -/obj/structure/closet, -/obj/effect/spawner/lootdrop/maintenance, -/obj/item/roller, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"cfp" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/item/weapon/c_tube, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"cfq" = ( -/obj/structure/mopbucket, -/obj/item/weapon/caution, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"cfr" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 2; - external_pressure_bound = 140; - on = 1; - pressure_checks = 0 - }, -/obj/machinery/camera{ - c_tag = "Xenobiology Kill Room"; - dir = 4; - network = list("SS13","RD") - }, -/turf/open/floor/bluegrid{ - name = "Killroom Floor"; - initial_gas_mix = "n2=500;TEMP=80" - }, -/area/toxins/xenobiology) -"cfs" = ( -/obj/machinery/door/airlock/maintenance{ - name = "Air Supply Maintenance"; - req_access_txt = "12" - }, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"cft" = ( -/obj/machinery/door/airlock/maintenance{ - name = "Testing Lab Maintenance"; - req_access_txt = "47" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/toxins/misc_lab) -"cfu" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall/r_wall, -/area/toxins/misc_lab) -"cfv" = ( -/obj/machinery/door/airlock/maintenance{ - name = "Firefighting equipment"; - req_access_txt = "12" - }, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"cfw" = ( -/turf/closed/wall/r_wall, -/area/maintenance/portsolar) -"cfx" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating/airless, -/area/maintenance/portsolar) -"cfy" = ( -/obj/structure/rack, -/obj/item/clothing/shoes/winterboots, -/obj/item/clothing/suit/hooded/wintercoat, -/turf/open/floor/plasteel/white, -/area/toxins/xenobiology) -"cfz" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/turf/open/floor/plasteel/yellow/corner{ - dir = 1 - }, -/area/engine/engineering) -"cfA" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/engine/engineering) -"cfB" = ( -/obj/structure/closet/secure_closet/engineering_personal, -/turf/open/floor/plasteel/yellow/side{ - dir = 4 - }, -/area/engine/engineering) -"cfC" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"cfD" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/door/airlock/maintenance{ - name = "Engineering Maintenance"; - req_access_txt = "10" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/engine/engineering) -"cfE" = ( -/obj/machinery/holopad, -/turf/open/floor/plasteel/neutral{ - dir = 2 - }, -/area/engine/chiefs_office) -"cfF" = ( -/obj/machinery/suit_storage_unit/ce, -/turf/open/floor/plasteel/warnwhite{ - dir = 4 - }, -/area/engine/chiefs_office) -"cfG" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"cfH" = ( -/obj/machinery/light{ - dir = 1 - }, -/obj/machinery/keycard_auth{ - pixel_x = 0; - pixel_y = 24 - }, -/turf/open/floor/plasteel/neutral{ - dir = 2 - }, -/area/engine/chiefs_office) -"cfI" = ( -/obj/structure/closet/secure_closet/engineering_personal, -/obj/machinery/airalarm{ - dir = 8; - icon_state = "alarm0"; - pixel_x = 24 - }, -/turf/open/floor/plasteel/yellow/side{ - dir = 4 - }, -/area/engine/engineering) -"cfJ" = ( -/obj/machinery/light/small{ - dir = 1 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/manifold4w/scrubbers, -/turf/open/floor/plasteel, -/area/engine/engineering) -"cfK" = ( -/obj/structure/sign/securearea, -/turf/closed/wall, -/area/engine/engineering) -"cfL" = ( -/obj/machinery/firealarm{ - pixel_y = 24 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"cfM" = ( -/obj/machinery/door/airlock/engineering{ - cyclelinkeddir = 2; - name = "Engine Room"; - req_access_txt = "10" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/engine/engineering) -"cfN" = ( -/obj/machinery/portable_atmospherics/scrubber, -/turf/open/floor/plasteel, -/area/atmos) -"cfO" = ( -/obj/machinery/atmospherics/pipe/simple/green/visible, -/obj/machinery/portable_atmospherics/pump, -/turf/open/floor/plasteel, -/area/atmos) -"cfP" = ( -/obj/machinery/atmospherics/pipe/simple/green/visible{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/atmos) -"cfQ" = ( -/obj/machinery/atmospherics/pipe/simple/green/visible{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/cyan/visible, -/turf/open/floor/plasteel, -/area/atmos) -"cfR" = ( -/obj/machinery/atmospherics/components/trinary/filter{ - dir = 4; - filter_type = "o2"; - on = 1 - }, -/turf/open/floor/plasteel, -/area/atmos) -"cfS" = ( -/obj/machinery/atmospherics/pipe/simple/green/visible{ - dir = 4; - initialize_directions = 12 - }, -/turf/open/floor/plasteel, -/area/atmos) -"cfT" = ( -/obj/machinery/atmospherics/pipe/simple/green/visible{ - dir = 9 - }, -/turf/open/floor/plasteel, -/area/atmos) -"cfU" = ( -/obj/machinery/atmospherics/pipe/simple/yellow/visible{ - dir = 4 - }, -/turf/closed/wall, -/area/maintenance/incinerator) -"cfV" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/yellow/visible, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"cfW" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/simple/yellow/visible, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"cfX" = ( -/obj/machinery/power/apc{ - dir = 2; - name = "Incinerator APC"; - pixel_x = 0; - pixel_y = -24 - }, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/simple/yellow/visible, -/turf/open/floor/plating, -/area/maintenance/incinerator) -"cfY" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plating/warnplate{ - dir = 1 - }, -/area/maintenance/incinerator) -"cfZ" = ( -/obj/machinery/light_switch{ - pixel_x = 0; - pixel_y = 26 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/floorgrime, -/area/maintenance/incinerator) -"cga" = ( -/obj/machinery/power/smes{ - capacity = 9e+006; - charge = 10000 - }, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/effect/decal/cleanable/cobweb{ - icon_state = "cobweb2" - }, -/turf/open/floor/plating, -/area/maintenance/incinerator) -"cgb" = ( -/obj/machinery/disposal/bin, -/obj/structure/sign/deathsposal{ - pixel_x = 0; - pixel_y = 32 - }, -/obj/structure/disposalpipe/trunk, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/floor/plating, -/area/maintenance/incinerator) -"cgc" = ( -/obj/effect/landmark{ - name = "xeno_spawn"; - pixel_x = -1 - }, -/turf/open/floor/plating{ - icon_state = "platingdmg3" - }, -/area/maintenance/asmaint) -"cgd" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 5 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"cge" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"cgf" = ( -/obj/structure/disposalpipe/segment, -/obj/structure/grille/broken, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"cgg" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"cgh" = ( -/obj/structure/disposalpipe/segment, -/obj/structure/grille, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"cgi" = ( -/turf/open/floor/bluegrid{ - name = "Killroom Floor"; - initial_gas_mix = "n2=500;TEMP=80" - }, -/area/toxins/xenobiology) -"cgj" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/barricade/wooden, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"cgk" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/structure/sign/biohazard, -/turf/open/floor/plating, -/area/toxins/xenobiology) -"cgl" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 2; - external_pressure_bound = 120; - initialize_directions = 1; - internal_pressure_bound = 4000; - on = 1; - pressure_checks = 2; - pump_direction = 0 - }, -/turf/open/floor/bluegrid{ - name = "Killroom Floor"; - initial_gas_mix = "n2=500;TEMP=80" - }, -/area/toxins/xenobiology) -"cgm" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"cgn" = ( -/obj/machinery/atmospherics/components/unary/thermomachine/freezer{ - target_temperature = 80; - dir = 2; - on = 1 - }, -/turf/open/floor/plasteel/white, -/area/toxins/xenobiology) -"cgo" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"cgp" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 1 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"cgq" = ( -/obj/machinery/space_heater, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"cgr" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/maintenance/asmaint2) -"cgs" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 9 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"cgt" = ( -/obj/structure/sign/securearea{ - pixel_y = 32 - }, -/obj/effect/spawner/lootdrop/maintenance, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"cgu" = ( -/obj/structure/rack{ - dir = 1 - }, -/obj/effect/decal/cleanable/cobweb/cobweb2, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"cgv" = ( -/obj/structure/disposalpipe/segment, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"cgw" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/engine/engineering) -"cgx" = ( -/obj/effect/landmark/start{ - name = "Station Engineer" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"cgy" = ( -/obj/machinery/light/small{ - dir = 1 - }, -/obj/structure/chair/stool, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"cgz" = ( -/obj/structure/cable, -/obj/structure/lattice/catwalk, -/turf/open/space, -/area/solar/port) -"cgA" = ( -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; - icon_state = "space"; - layer = 4; - name = "EXTERNAL AIRLOCK"; - pixel_x = -32; - pixel_y = 0 - }, -/turf/open/floor/plating, -/area/maintenance/portsolar) -"cgB" = ( -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/obj/machinery/power/smes, -/turf/open/floor/plating, -/area/maintenance/portsolar) -"cgC" = ( -/obj/machinery/power/terminal{ - dir = 4 - }, -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/plating, -/area/maintenance/portsolar) -"cgD" = ( -/obj/machinery/camera{ - c_tag = "Aft Port Solar Access"; - dir = 4 - }, -/obj/machinery/light/small{ - dir = 8 - }, -/obj/structure/closet/emcloset, -/turf/open/floor/plating, -/area/maintenance/aft) -"cgE" = ( -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'HIGH VOLTAGE'"; - icon_state = "shock"; - name = "HIGH VOLTAGE"; - pixel_y = 0 - }, -/turf/closed/wall/r_wall, -/area/maintenance/portsolar) -"cgF" = ( -/obj/effect/spawner/lootdrop/maintenance, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"cgG" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/door/airlock/maintenance{ - req_access_txt = "12" - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"cgH" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"cgI" = ( -/obj/structure/table, -/obj/item/weapon/paper_bin{ - pixel_x = -3; - pixel_y = 7 - }, -/obj/item/weapon/pen, -/obj/item/weapon/storage/firstaid/fire, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"cgJ" = ( -/obj/structure/closet/radiation, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/engine/engineering) -"cgK" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 9 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"cgL" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "Singularity"; - name = "radiation shutters" - }, -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/bot{ - dir = 2 - }, -/area/engine/engineering) -"cgM" = ( -/obj/machinery/computer/atmos_alert, -/obj/machinery/requests_console{ - announcementConsole = 1; - department = "Chief Engineer's Desk"; - departmentType = 3; - name = "Chief Engineer RC"; - pixel_x = -32; - pixel_y = 0 - }, -/turf/open/floor/plasteel/neutral{ - dir = 2 - }, -/area/engine/chiefs_office) -"cgN" = ( -/obj/structure/closet/radiation, -/turf/open/floor/plasteel, -/area/engine/engineering) -"cgO" = ( -/turf/open/floor/plasteel/neutral{ - dir = 2 - }, -/area/engine/chiefs_office) -"cgP" = ( -/obj/structure/table, -/obj/item/device/flashlight{ - pixel_y = 5 - }, -/obj/item/clothing/ears/earmuffs{ - pixel_x = -5; - pixel_y = 6 - }, -/obj/item/weapon/airlock_painter, -/turf/open/floor/plasteel, -/area/engine/engineering) -"cgQ" = ( -/obj/machinery/camera{ - c_tag = "Engineering East"; - dir = 8; - network = list("SS13"); - pixel_x = 0; - pixel_y = 0 - }, -/obj/structure/closet/wardrobe/engineering_yellow, -/turf/open/floor/plasteel/yellow/corner{ - dir = 4 - }, -/area/engine/engineering) -"cgR" = ( -/turf/open/floor/plasteel, -/area/engine/engineering) -"cgS" = ( -/obj/structure/grille, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/engine/chiefs_office) -"cgT" = ( -/obj/machinery/door/airlock/engineering{ - cyclelinkeddir = 8; - name = "SMES Room"; - req_access_txt = "32" - }, -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/delivery{ - name = "floor" - }, -/area/engine/engine_smes) -"cgU" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/engine/engineering) -"cgV" = ( -/obj/machinery/computer/atmos_control/tank{ - frequency = 1441; - input_tag = "n2_in"; - name = "Nitrogen Supply Control"; - output_tag = "n2_out"; - sensors = list("n2_sensor" = "Tank") - }, -/turf/open/floor/plasteel/red/side, -/area/atmos) -"cgW" = ( -/obj/machinery/atmospherics/pipe/simple/green/visible, -/obj/machinery/portable_atmospherics/pump, -/turf/open/floor/plasteel/red/side{ - dir = 10 - }, -/area/atmos) -"cgX" = ( -/obj/machinery/light, -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible, -/turf/open/floor/plasteel, -/area/atmos) -"cgY" = ( -/obj/machinery/atmospherics/components/binary/pump{ - dir = 1; - name = "N2 Outlet Pump"; - on = 1 - }, -/turf/open/floor/plasteel/red/side{ - dir = 6 - }, -/area/atmos) -"cgZ" = ( -/obj/machinery/computer/atmos_control/tank{ - frequency = 1441; - input_tag = "o2_in"; - name = "Oxygen Supply Control"; - output_tag = "o2_out"; - sensors = list("o2_sensor" = "Tank") - }, -/turf/open/floor/plasteel/blue/side{ - dir = 0 - }, -/area/atmos) -"cha" = ( -/obj/machinery/atmospherics/pipe/simple/green/visible, -/turf/open/floor/plasteel/blue/side{ - dir = 10 - }, -/area/atmos) -"chb" = ( -/obj/machinery/atmospherics/components/binary/pump{ - dir = 1; - name = "O2 Outlet Pump"; - on = 1 - }, -/turf/open/floor/plasteel/blue/side{ - dir = 6 - }, -/area/atmos) -"chc" = ( -/obj/machinery/computer/atmos_control/tank{ - frequency = 1441; - input_tag = "air_in"; - name = "Mixed Air Supply Control"; - output_tag = "air_out"; - sensors = list("air_sensor" = "Tank") - }, -/turf/open/floor/plasteel/arrival, -/area/atmos) -"chd" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/visible, -/turf/open/floor/plasteel/arrival{ - dir = 10 - }, -/area/atmos) -"che" = ( -/obj/machinery/door/airlock/external{ - cyclelinkeddir = 4; - name = "Atmospherics External Airlock"; - req_access_txt = "24" - }, -/turf/open/floor/plating, -/area/atmos) -"chf" = ( -/obj/machinery/camera{ - c_tag = "Atmospherics South East"; - dir = 1 - }, -/obj/machinery/atmospherics/components/binary/pump{ - dir = 1; - name = "Air Outlet Pump"; - on = 1 - }, -/turf/open/floor/plasteel/arrival{ - dir = 6 - }, -/area/atmos) -"chg" = ( -/turf/open/floor/plating, -/area/atmos) -"chh" = ( -/obj/machinery/atmospherics/components/unary/tank/toxins{ - dir = 4 - }, -/turf/open/floor/plasteel/floorgrime, -/area/maintenance/incinerator) -"chi" = ( -/obj/machinery/atmospherics/pipe/manifold4w/general{ - level = 2 - }, -/obj/machinery/meter, -/turf/open/floor/plasteel/floorgrime, -/area/maintenance/incinerator) -"chj" = ( -/obj/machinery/atmospherics/components/binary/pump{ - dir = 4; - name = "plasma tank pump" - }, -/turf/open/floor/plasteel/floorgrime, -/area/maintenance/incinerator) -"chk" = ( -/obj/machinery/atmospherics/pipe/simple/yellow/visible, -/turf/closed/wall, -/area/maintenance/incinerator) -"chl" = ( -/obj/machinery/light{ - dir = 1 - }, -/obj/machinery/atmospherics/components/binary/pump{ - dir = 2; - name = "atmospherics mix pump" - }, -/turf/open/floor/plasteel/floorgrime, -/area/maintenance/incinerator) -"chm" = ( -/obj/machinery/power/terminal{ - icon_state = "term"; - dir = 1 - }, -/obj/machinery/airalarm{ - desc = "This particular atmos control unit appears to have no access restrictions."; - dir = 8; - icon_state = "alarm0"; - locked = 0; - name = "all-access air alarm"; - pixel_x = 24; - req_access = "0"; - req_one_access = "0" - }, -/obj/structure/cable/yellow{ - d2 = 8; - icon_state = "0-8" - }, -/turf/open/floor/plasteel/floorgrime, -/area/maintenance/incinerator) -"chn" = ( -/obj/structure/disposalpipe/segment, -/obj/structure/cable/yellow{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/turf/open/floor/plasteel/floorgrime, -/area/maintenance/incinerator) -"cho" = ( -/obj/machinery/light, -/obj/machinery/atmospherics/pipe/simple/general/visible{ - dir = 5 - }, -/turf/open/floor/bluegrid{ - name = "Killroom Floor"; - initial_gas_mix = "n2=500;TEMP=80" - }, -/area/toxins/xenobiology) -"chp" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 5 - }, -/turf/closed/wall, -/area/maintenance/asmaint) -"chq" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible{ - dir = 4 - }, -/turf/open/floor/bluegrid{ - name = "Killroom Floor"; - initial_gas_mix = "n2=500;TEMP=80" - }, -/area/toxins/xenobiology) -"chr" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/research{ - name = "Kill Chamber"; - req_access_txt = "55" - }, -/obj/machinery/atmospherics/pipe/simple/general/visible{ - dir = 4 - }, -/turf/open/floor/plating, -/area/toxins/xenobiology) -"chs" = ( -/obj/machinery/light, -/obj/machinery/atmospherics/pipe/manifold/general/visible, -/turf/open/floor/bluegrid{ - name = "Killroom Floor"; - initial_gas_mix = "n2=500;TEMP=80" - }, -/area/toxins/xenobiology) -"cht" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/general/visible{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/toxins/xenobiology) -"chu" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/toxins/xenobiology) -"chv" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"chw" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 1 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"chx" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"chy" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"chz" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"chA" = ( -/obj/structure/reagent_dispensers/watertank, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 9 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"chB" = ( -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/engine/engineering) -"chC" = ( -/obj/structure/rack{ - dir = 1 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/effect/spawner/lootdrop/maintenance, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"chD" = ( -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/engine/engineering) -"chE" = ( -/obj/structure/disposalpipe/segment, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, -/turf/open/floor/plasteel, -/area/engine/engineering) -"chF" = ( -/obj/structure/table, -/obj/item/weapon/book/manual/wiki/engineering_hacking{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/book/manual/wiki/engineering_construction, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"chG" = ( -/obj/structure/rack{ - dir = 8; - layer = 2.9 - }, -/obj/item/clothing/gloves/color/black, -/obj/item/weapon/extinguisher{ - pixel_x = 8 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 9 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"chH" = ( -/obj/structure/closet/firecloset, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"chI" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/lattice/catwalk, -/turf/open/space, -/area/solar/port) -"chJ" = ( -/obj/machinery/power/tracker, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/turf/open/floor/plasteel/airless/solarpanel, -/area/solar/port) -"chK" = ( -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/structure/lattice/catwalk, -/turf/open/space, -/area/solar/port) -"chL" = ( -/obj/structure/lattice/catwalk, -/turf/open/space, -/area/solar/port) -"chM" = ( -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/structure/lattice/catwalk, -/turf/open/space, -/area/solar/port) -"chN" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/floor/plating, -/area/maintenance/portsolar) -"chO" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/door/airlock/external{ - cyclelinkeddir = 4; - name = "Solar Maintenance"; - req_access = null; - req_access_txt = "10; 13" - }, -/turf/open/floor/plating, -/area/maintenance/portsolar) -"chP" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/turf/open/floor/plating, -/area/maintenance/portsolar) -"chQ" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/turf/open/floor/plating, -/area/maintenance/portsolar) -"chR" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/turf/open/floor/plating, -/area/maintenance/portsolar) -"chS" = ( -/obj/machinery/door/airlock/engineering{ - name = "Aft Port Solar Access"; - req_access_txt = "10" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/floor/plating, -/area/maintenance/portsolar) -"chT" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"chU" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/mob/living/simple_animal/mouse, -/turf/open/floor/plating, -/area/maintenance/aft) -"chV" = ( -/turf/open/floor/plating/warnplate{ - dir = 9 - }, -/area/engine/engineering) -"chW" = ( -/obj/machinery/camera{ - c_tag = "Engineering Center"; - dir = 2; - pixel_x = 23 - }, -/obj/machinery/light{ - dir = 1 - }, -/turf/open/floor/plating/warnplate{ - dir = 1 - }, -/area/engine/engineering) -"chX" = ( -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plating/warnplate{ - dir = 1 - }, -/area/engine/engineering) -"chY" = ( -/obj/machinery/shieldgen, -/turf/open/floor/plating, -/area/engine/engineering) -"chZ" = ( -/obj/machinery/the_singularitygen{ - anchored = 0 - }, -/turf/open/floor/plating, -/area/engine/engineering) -"cia" = ( -/obj/machinery/light{ - dir = 1 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/turf/open/floor/plasteel/yellow/side, -/area/engine/engineering) -"cib" = ( -/obj/machinery/power/apc{ - cell_type = 15000; - dir = 1; - name = "Engineering APC"; - pixel_x = 0; - pixel_y = 25 - }, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/turf/open/floor/plasteel/yellow/side, -/area/engine/engineering) -"cic" = ( -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/structure/table, -/turf/open/floor/plasteel/yellow/side, -/area/engine/engineering) -"cid" = ( -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/machinery/portable_atmospherics/pump, -/turf/open/floor/plasteel/yellow/side, -/area/engine/engineering) -"cie" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/structure/extinguisher_cabinet{ - pixel_x = -5; - pixel_y = 30 - }, -/turf/open/floor/plasteel/yellow/side, -/area/engine/engineering) -"cif" = ( -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/structure/table, -/obj/item/weapon/tank/internals/emergency_oxygen/engi, -/obj/item/clothing/mask/breath, -/turf/open/floor/plasteel/yellow/side, -/area/engine/engineering) -"cig" = ( -/turf/closed/wall, -/area/engine/engineering) -"cih" = ( -/obj/machinery/airalarm{ - pixel_y = 23 - }, -/obj/machinery/portable_atmospherics/canister/oxygen, -/turf/open/floor/plasteel/yellow/side, -/area/engine/engineering) -"cii" = ( -/turf/open/floor/plating/warnplate{ - dir = 5 - }, -/area/engine/engineering) -"cij" = ( -/obj/machinery/computer/station_alert, -/obj/item/device/radio/intercom{ - broadcasting = 0; - name = "Station Intercom (General)"; - pixel_y = 20 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"cik" = ( -/obj/machinery/computer/station_alert, -/obj/machinery/button/door{ - desc = "A remote control-switch for the engineering security doors."; - id = "Engineering"; - name = "Engineering Lockdown"; - pixel_x = -24; - pixel_y = -10; - req_access_txt = "10" - }, -/obj/machinery/button/door{ - desc = "A remote control-switch for secure storage."; - id = "Secure Storage"; - name = "Engineering Secure Storage"; - pixel_x = -24; - pixel_y = 0; - req_access_txt = "11" - }, -/obj/machinery/button/door{ - id = "atmos"; - name = "Atmospherics Lockdown"; - pixel_x = -24; - pixel_y = 10; - req_access_txt = "24" - }, -/turf/open/floor/plasteel/neutral{ - dir = 2 - }, -/area/engine/chiefs_office) -"cil" = ( -/obj/structure/rack{ - dir = 8; - layer = 2.9 - }, -/obj/item/clothing/gloves/color/yellow, -/obj/item/weapon/storage/belt/utility, -/turf/open/floor/plasteel, -/area/engine/engineering) -"cim" = ( -/obj/structure/chair/office/light{ - dir = 4 - }, -/obj/effect/landmark/start{ - name = "Chief Engineer" - }, -/turf/open/floor/plasteel/neutral{ - dir = 2 - }, -/area/engine/chiefs_office) -"cin" = ( -/obj/structure/closet/secure_closet/engineering_chief{ - req_access_txt = "0" - }, -/turf/open/floor/plasteel/neutral{ - dir = 2 - }, -/area/engine/chiefs_office) -"cio" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/neutral{ - dir = 2 - }, -/area/engine/chiefs_office) -"cip" = ( -/obj/machinery/holopad, -/turf/open/floor/plasteel, -/area/engine/engineering) -"ciq" = ( -/obj/structure/grille, -/obj/structure/cable, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/engine/chiefs_office) -"cir" = ( -/obj/structure/table, -/obj/item/weapon/book/manual/wiki/engineering_guide, -/obj/item/weapon/book/manual/engineering_particle_accelerator{ - pixel_y = 6 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"cis" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 5 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"cit" = ( -/obj/machinery/atmospherics/pipe/simple/green/visible, -/turf/closed/wall/r_wall, -/area/atmos) -"ciu" = ( -/obj/structure/grille, -/obj/machinery/atmospherics/pipe/simple/yellow/visible, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/atmos) -"civ" = ( -/obj/structure/grille, -/obj/machinery/atmospherics/pipe/simple/green/visible, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/atmos) -"ciw" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/visible, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/atmos) -"cix" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/visible, -/turf/closed/wall/r_wall, -/area/atmos) -"ciy" = ( -/obj/structure/sign/nosmoking_2{ - pixel_x = -28 - }, -/obj/machinery/atmospherics/components/unary/portables_connector/visible{ - dir = 4; - name = "input gas connector port" - }, -/obj/machinery/portable_atmospherics/canister/oxygen, -/turf/open/floor/plasteel/floorgrime, -/area/maintenance/incinerator) -"ciz" = ( -/obj/machinery/atmospherics/pipe/manifold/general/visible{ - dir = 4; - initialize_directions = 11 - }, -/turf/open/floor/plasteel/floorgrime, -/area/maintenance/incinerator) -"ciA" = ( -/obj/machinery/atmospherics/components/binary/pump{ - dir = 4; - name = "input port pump" - }, -/turf/open/floor/plasteel/floorgrime, -/area/maintenance/incinerator) -"ciB" = ( -/obj/effect/decal/cleanable/cobweb, -/obj/structure/reagent_dispensers/watertank, -/obj/item/weapon/extinguisher, -/turf/open/floor/plasteel/floorgrime, -/area/maintenance/incinerator) -"ciC" = ( -/obj/structure/lattice, -/obj/machinery/atmospherics/pipe/simple/yellow/visible{ - dir = 6 - }, -/turf/open/space, -/area/space/nearstation) -"ciD" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible{ - name = "output gas connector port" - }, -/obj/machinery/portable_atmospherics/canister, -/obj/structure/sign/nosmoking_2{ - pixel_x = 28 - }, -/turf/open/floor/plasteel/floorgrime, -/area/maintenance/incinerator) -"ciE" = ( -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/floorgrime, -/area/maintenance/incinerator) -"ciF" = ( -/obj/structure/table, -/obj/item/weapon/cartridge/medical, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"ciG" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/closet/firecloset/full, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"ciH" = ( -/obj/structure/rack, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 2; - name = "2maintenance loot spawner" - }, -/obj/item/latexballon, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"ciI" = ( -/obj/structure/disposalpipe/segment, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"ciJ" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating{ - icon_state = "platingdmg3" - }, -/area/maintenance/asmaint2) -"ciK" = ( -/obj/structure/rack, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"ciL" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/tinted/fulltile, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"ciM" = ( -/obj/machinery/power/compressor{ - comp_id = "incineratorturbine"; - dir = 1; - luminosity = 2 - }, -/obj/structure/cable/yellow, -/obj/structure/cable/yellow{ - d2 = 2; - icon_state = "0-2" - }, -/obj/machinery/camera{ - c_tag = "Turbine Chamber"; - dir = 4; - network = list("Turbine") - }, -/turf/open/floor/engine/vacuum, -/area/maintenance/incinerator) -"ciN" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/engine/engineering) -"ciO" = ( -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"ciP" = ( -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/obj/structure/lattice/catwalk, -/turf/open/space, -/area/solar/port) -"ciQ" = ( -/obj/machinery/power/solar_control{ - id = "portsolar"; - name = "Aft Port Solar Control"; - track = 0 - }, -/obj/structure/cable, -/turf/open/floor/plating, -/area/maintenance/portsolar) -"ciR" = ( -/obj/machinery/power/apc{ - dir = 4; - name = "Aft Port Solar APC"; - pixel_x = 23; - pixel_y = 2 - }, -/obj/machinery/camera{ - c_tag = "Aft Port Solar Control"; - dir = 1 - }, -/obj/structure/cable, -/turf/open/floor/plating, -/area/maintenance/portsolar) -"ciS" = ( -/turf/open/floor/plating, -/area/maintenance/portsolar) -"ciT" = ( -/obj/structure/closet/emcloset, -/turf/open/floor/plating, -/area/maintenance/aft) -"ciU" = ( -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/maintenance/aft) -"ciV" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"ciW" = ( -/obj/effect/landmark{ - name = "blobstart" - }, -/turf/open/floor/plating, -/area/engine/engineering) -"ciX" = ( -/obj/structure/closet/crate, -/obj/item/stack/sheet/metal{ - amount = 50 - }, -/obj/item/stack/rods{ - amount = 50 - }, -/obj/item/stack/sheet/glass{ - amount = 50 - }, -/obj/item/weapon/electronics/airlock, -/obj/item/weapon/electronics/airlock, -/obj/item/weapon/stock_parts/cell/high/plus, -/obj/item/stack/sheet/mineral/plasma{ - amount = 30 - }, -/turf/open/floor/plating, -/area/engine/engineering) -"ciY" = ( -/obj/machinery/door/poddoor{ - id = "Secure Storage"; - name = "secure storage" - }, -/turf/open/floor/plating, -/area/engine/engineering) -"ciZ" = ( -/turf/open/floor/plating, -/area/engine/engineering) -"cja" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"cjb" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"cjc" = ( -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/engine/engineering) -"cjd" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/sign/nosmoking_2{ - pixel_y = 32 - }, -/obj/machinery/camera{ - c_tag = "Engineering Power Storage" - }, -/obj/machinery/light{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"cje" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"cjf" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/chair/office/dark{ - dir = 1 - }, -/obj/effect/landmark/start{ - name = "Station Engineer" - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"cjg" = ( -/obj/machinery/camera{ - c_tag = "Chief Engineer's Office"; - dir = 4; - network = list("SS13") - }, -/obj/machinery/airalarm{ - dir = 4; - icon_state = "alarm0"; - pixel_x = -22 - }, -/obj/machinery/computer/card/minor/ce, -/turf/open/floor/plasteel/neutral{ - dir = 2 - }, -/area/engine/chiefs_office) -"cjh" = ( -/obj/structure/closet/firecloset, -/turf/open/floor/plasteel, -/area/engine/engineering) -"cji" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - external_pressure_bound = 101.325; - on = 1; - pressure_checks = 1 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"cjj" = ( -/obj/item/device/radio/intercom{ - dir = 4; - name = "Station Intercom (General)"; - pixel_x = 27 - }, -/obj/structure/filingcabinet/chestdrawer, -/mob/living/simple_animal/parrot/Poly, -/turf/open/floor/plasteel/neutral{ - dir = 2 - }, -/area/engine/chiefs_office) -"cjk" = ( -/obj/structure/sign/securearea, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/closed/wall/r_wall, -/area/engine/engineering) -"cjl" = ( -/obj/machinery/camera{ - c_tag = "Engineering MiniSat Access"; - dir = 4; - network = list("SS13") - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"cjm" = ( -/obj/machinery/door/airlock/command{ - name = "MiniSat Access"; - req_access_txt = "65" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"cjn" = ( -/obj/item/weapon/weldingtool, -/turf/open/floor/plating/airless, -/area/space/nearstation) -"cjo" = ( -/obj/structure/closet/toolcloset, -/turf/open/floor/plasteel, -/area/construction) -"cjp" = ( -/obj/machinery/atmospherics/pipe/simple/yellow/visible{ - dir = 4 - }, -/obj/structure/reagent_dispensers/fueltank, -/obj/item/weapon/storage/toolbox/emergency, -/turf/open/floor/plasteel/floorgrime, -/area/maintenance/incinerator) -"cjq" = ( -/obj/machinery/atmospherics/components/binary/valve{ - name = "Mix to Space" - }, -/turf/open/floor/plasteel/floorgrime, -/area/maintenance/incinerator) -"cjr" = ( -/turf/open/floor/plasteel/floorgrime, -/area/maintenance/incinerator) -"cjs" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible, -/turf/open/floor/plasteel/floorgrime, -/area/maintenance/incinerator) -"cjt" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - external_pressure_bound = 101.325; - on = 1; - pressure_checks = 1 - }, -/turf/open/floor/plasteel/floorgrime, -/area/maintenance/incinerator) -"cju" = ( -/obj/machinery/atmospherics/components/binary/pump{ - dir = 1; - name = "Incinerator to Output"; - on = 0 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/floorgrime, -/area/maintenance/incinerator) -"cjv" = ( -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/floorgrime, -/area/maintenance/incinerator) -"cjw" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/closed/wall, -/area/maintenance/asmaint) -"cjx" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/closed/wall, -/area/maintenance/incinerator) -"cjy" = ( -/obj/structure/disposalpipe/segment, -/obj/item/weapon/shard, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"cjz" = ( -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/turf/closed/wall, -/area/maintenance/asmaint) -"cjA" = ( -/obj/structure/disposalpipe/segment, -/obj/item/weapon/cigbutt/roach, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"cjB" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible{ - dir = 9 - }, -/obj/structure/table, -/obj/item/weapon/folder/white, -/obj/item/weapon/pen, -/turf/open/floor/plasteel/white, -/area/toxins/xenobiology) -"cjC" = ( -/obj/structure/grille, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"cjD" = ( -/turf/closed/wall/r_wall, -/area/maintenance/starboardsolar) -"cjE" = ( -/obj/structure/rack, -/obj/effect/decal/cleanable/cobweb/cobweb2, -/obj/effect/spawner/lootdrop/maintenance, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"cjF" = ( -/obj/machinery/door/airlock/engineering{ - name = "Aft Starboard Solar Access"; - req_access_txt = "10" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/turf/open/floor/plating, -/area/maintenance/starboardsolar) -"cjG" = ( -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'HIGH VOLTAGE'"; - icon_state = "shock"; - name = "HIGH VOLTAGE"; - pixel_y = 0 - }, -/turf/closed/wall/r_wall, -/area/maintenance/starboardsolar) -"cjH" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/lattice/catwalk, -/turf/open/space, -/area/solar/port) -"cjI" = ( -/obj/structure/closet/crate, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 2; - name = "2maintenance loot spawner" - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"cjJ" = ( -/turf/closed/wall/r_wall, -/area/engine/engine_smes) -"cjK" = ( -/obj/effect/spawner/lootdrop/maintenance, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/maintenance/aft) -"cjL" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/construction) -"cjM" = ( -/obj/machinery/portable_atmospherics/canister/toxins, -/obj/machinery/light/small{ - dir = 8 - }, -/obj/machinery/camera{ - c_tag = "Engineering Secure Storage"; - dir = 4; - network = list("SS13") - }, -/turf/open/floor/plating, -/area/engine/engineering) -"cjN" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"cjO" = ( -/obj/machinery/light, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"cjP" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 10 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"cjQ" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"cjR" = ( -/obj/machinery/door/airlock/external{ - cyclelinkeddir = 2; - name = "Engineering External Access"; - req_access = null; - req_access_txt = "10;13" - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"cjS" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"cjT" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"cjU" = ( -/obj/machinery/disposal/bin, -/obj/structure/disposalpipe/trunk{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral{ - dir = 2 - }, -/area/engine/chiefs_office) -"cjV" = ( -/obj/structure/closet/emcloset, -/turf/open/floor/plasteel, -/area/engine/engineering) -"cjW" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/delivery{ - name = "floor" - }, -/area/toxins/misc_lab) -"cjX" = ( -/obj/item/weapon/cartridge/engineering{ - pixel_x = 4; - pixel_y = 5 - }, -/obj/item/weapon/cartridge/engineering{ - pixel_x = -3; - pixel_y = 2 - }, -/obj/item/weapon/cartridge/engineering{ - pixel_x = 3 - }, -/obj/structure/table/reinforced, -/obj/machinery/light_switch{ - pixel_x = 27 - }, -/obj/item/weapon/cartridge/atmos, -/turf/open/floor/plasteel/neutral{ - dir = 2 - }, -/area/engine/chiefs_office) -"cjY" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/neutral{ - dir = 2 - }, -/area/engine/chiefs_office) -"cjZ" = ( -/obj/structure/sign/securearea, -/turf/closed/wall/r_wall, -/area/engine/engineering) -"cka" = ( -/obj/machinery/door/poddoor/preopen{ - id = "testlab"; - name = "test chamber blast door" - }, -/obj/machinery/door/airlock/glass_research{ - cyclelinkeddir = 4; - name = "Test Chamber"; - req_access_txt = "47" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/engine, -/area/toxins/misc_lab) -"ckb" = ( -/obj/machinery/atmospherics/pipe/simple, -/obj/structure/grille, -/obj/machinery/meter, -/turf/closed/wall/r_wall, -/area/atmos) -"ckc" = ( -/obj/machinery/atmospherics/pipe/simple, -/obj/structure/grille, -/obj/machinery/meter{ - name = "Mixed Air Tank In" - }, -/turf/closed/wall/r_wall, -/area/atmos) -"ckd" = ( -/obj/machinery/atmospherics/pipe/simple, -/obj/structure/grille, -/obj/machinery/meter{ - name = "Mixed Air Tank Out" - }, -/turf/closed/wall/r_wall, -/area/atmos) -"cke" = ( -/obj/structure/chair/stool, -/turf/open/floor/plasteel/floorgrime, -/area/maintenance/incinerator) -"ckf" = ( -/obj/structure/grille, -/obj/structure/disposalpipe/segment, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/maintenance/incinerator) -"ckg" = ( -/obj/machinery/atmospherics/pipe/manifold/general/visible{ - dir = 8 - }, -/obj/machinery/meter, -/turf/open/floor/plasteel/floorgrime, -/area/maintenance/incinerator) -"ckh" = ( -/obj/machinery/atmospherics/components/binary/pump{ - dir = 8; - name = "Mix to MiniSat" - }, -/turf/open/floor/plasteel/floorgrime, -/area/maintenance/incinerator) -"cki" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/floorgrime, -/area/maintenance/incinerator) -"ckj" = ( -/obj/item/weapon/cigbutt, -/obj/machinery/atmospherics/pipe/simple/general/visible{ - dir = 10 - }, -/turf/open/floor/plasteel/floorgrime, -/area/maintenance/incinerator) -"ckk" = ( -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/components/binary/valve{ - dir = 4; - name = "Incinerator to Space" - }, -/turf/open/floor/plasteel/floorgrime, -/area/maintenance/incinerator) -"ckl" = ( -/obj/machinery/portable_atmospherics/canister, -/obj/effect/decal/cleanable/cobweb, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"ckm" = ( -/obj/machinery/door/airlock/maintenance{ - name = "Biohazard Disposals"; - req_access_txt = "12" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"ckn" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plating, -/area/toxins/xenobiology) -"cko" = ( -/obj/structure/disposalpipe/segment, -/turf/closed/wall, -/area/maintenance/asmaint2) -"ckp" = ( -/obj/structure/rack, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 2; - name = "2maintenance loot spawner" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"ckq" = ( -/obj/structure/shuttle/engine/propulsion/burst{ - tag = "icon-propulsion (WEST)"; - icon_state = "propulsion"; - dir = 8 - }, -/turf/closed/wall/mineral/titanium, -/area/shuttle/pod_2) -"ckr" = ( -/obj/structure/reagent_dispensers/fueltank, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"cks" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/turf/open/floor/plating, -/area/maintenance/starboardsolar) -"ckt" = ( -/obj/machinery/power/apc{ - dir = 8; - name = "Aft Starboard Solar APC"; - pixel_x = -26; - pixel_y = 3 - }, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/turf/open/floor/plating, -/area/maintenance/starboardsolar) -"cku" = ( -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/machinery/power/smes, -/turf/open/floor/plating, -/area/maintenance/starboardsolar) -"ckv" = ( -/obj/machinery/light/small{ - dir = 8 - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"ckw" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/turf/open/floor/plasteel/black, -/area/engine/engine_smes) -"ckx" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/light{ - dir = 1 - }, -/turf/open/floor/plasteel/black, -/area/engine/engine_smes) -"cky" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/black, -/area/engine/engine_smes) -"ckz" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/turf/open/floor/plasteel/black, -/area/engine/engine_smes) -"ckA" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/maintenance/aft) -"ckB" = ( -/obj/machinery/field/generator, -/turf/open/floor/plating, -/area/engine/engineering) -"ckC" = ( -/obj/machinery/power/emitter, -/turf/open/floor/plating, -/area/engine/engineering) -"ckD" = ( -/obj/structure/table, -/obj/item/weapon/electronics/airlock, -/obj/item/weapon/electronics/airlock, -/obj/item/weapon/electronics/apc, -/obj/item/weapon/stock_parts/cell/high/plus, -/obj/item/weapon/stock_parts/cell/high/plus, -/turf/open/floor/plasteel, -/area/engine/engineering) -"ckE" = ( -/obj/structure/table, -/obj/machinery/cell_charger, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"ckF" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/engine/engineering) -"ckG" = ( -/obj/structure/table, -/obj/item/weapon/book/manual/engineering_singularity_safety, -/obj/item/clothing/gloves/color/yellow, -/turf/open/floor/plasteel, -/area/engine/engineering) -"ckH" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"ckI" = ( -/obj/structure/tank_dispenser, -/turf/open/floor/plasteel, -/area/engine/engineering) -"ckJ" = ( -/obj/structure/closet/crate{ - name = "solar pack crate" - }, -/obj/item/solar_assembly, -/obj/item/solar_assembly, -/obj/item/solar_assembly, -/obj/item/solar_assembly, -/obj/item/solar_assembly, -/obj/item/solar_assembly, -/obj/item/solar_assembly, -/obj/item/solar_assembly, -/obj/item/solar_assembly, -/obj/item/solar_assembly, -/obj/item/solar_assembly, -/obj/item/solar_assembly, -/obj/item/solar_assembly, -/obj/item/weapon/circuitboard/computer/solar_control, -/obj/item/weapon/electronics/tracker, -/obj/item/weapon/paper/solar, -/turf/open/floor/plasteel, -/area/engine/engineering) -"ckK" = ( -/obj/machinery/suit_storage_unit/engine, -/turf/open/floor/plasteel, -/area/engine/engineering) -"ckL" = ( -/obj/structure/grille, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/engine/chiefs_office) -"ckM" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/toxins/misc_lab) -"ckN" = ( -/obj/machinery/door/airlock/glass_research{ - cyclelinkeddir = 8; - name = "Test Chamber"; - req_access_txt = "47" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/delivery{ - name = "floor" - }, -/area/toxins/misc_lab) -"ckO" = ( -/obj/structure/grille, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/engine/chiefs_office) -"ckP" = ( -/obj/machinery/door/airlock/glass_command{ - name = "Chief Engineer"; - req_access_txt = "56" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/turf/open/floor/plasteel/neutral{ - dir = 2 - }, -/area/engine/chiefs_office) -"ckQ" = ( -/obj/structure/closet/cardboard, -/turf/open/floor/plasteel/floorgrime, -/area/quartermaster/storage) -"ckR" = ( -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'HIGH VOLTAGE'"; - icon_state = "shock"; - name = "HIGH VOLTAGE" - }, -/turf/closed/wall/r_wall, -/area/engine/chiefs_office) -"ckS" = ( -/obj/structure/closet/cardboard, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"ckT" = ( -/obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/yellow/side{ - dir = 1 - }, -/area/engine/engineering) -"ckU" = ( -/obj/machinery/air_sensor{ - frequency = 1441; - id_tag = "n2_sensor" - }, -/turf/open/floor/engine/n2, -/area/atmos) -"ckV" = ( -/obj/machinery/atmospherics/components/unary/outlet_injector/on{ - dir = 1; - frequency = 1441; - id = "n2_in" - }, -/turf/open/floor/engine/n2, -/area/atmos) -"ckW" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - external_pressure_bound = 0; - frequency = 1441; - id_tag = "n2_out"; - initialize_directions = 1; - internal_pressure_bound = 4000; - on = 1; - pressure_checks = 2; - pump_direction = 0 - }, -/turf/open/floor/engine/n2, -/area/atmos) -"ckX" = ( -/obj/machinery/air_sensor{ - frequency = 1441; - id_tag = "o2_sensor" - }, -/turf/open/floor/engine/o2, -/area/atmos) -"ckY" = ( -/obj/machinery/atmospherics/components/unary/outlet_injector/on{ - dir = 1; - frequency = 1441; - id = "o2_in" - }, -/turf/open/floor/engine/o2, -/area/atmos) -"ckZ" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - external_pressure_bound = 0; - frequency = 1441; - id_tag = "o2_out"; - initialize_directions = 1; - internal_pressure_bound = 4000; - on = 1; - pressure_checks = 2; - pump_direction = 0 - }, -/turf/open/floor/engine/o2, -/area/atmos) -"cla" = ( -/obj/machinery/air_sensor{ - frequency = 1441; - id_tag = "air_sensor" - }, -/turf/open/floor/engine/air, -/area/atmos) -"clb" = ( -/obj/machinery/atmospherics/components/unary/outlet_injector/on{ - dir = 1; - frequency = 1441; - id = "air_in" - }, -/turf/open/floor/engine/air, -/area/atmos) -"clc" = ( -/obj/machinery/atmospherics/components/unary/vent_pump/high_volume{ - dir = 1; - external_pressure_bound = 0; - frequency = 1441; - icon_state = "vent_map"; - id_tag = "air_out"; - internal_pressure_bound = 2000; - on = 1; - pressure_checks = 2; - pump_direction = 0 - }, -/turf/open/floor/engine/air, -/area/atmos) -"cld" = ( -/obj/effect/landmark{ - name = "blobstart" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/components/binary/pump{ - dir = 4; - name = "Mix to Incinerator"; - on = 0 - }, -/turf/open/floor/plasteel/floorgrime, -/area/maintenance/incinerator) -"cle" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible{ - dir = 2 - }, -/turf/open/floor/plasteel/floorgrime, -/area/maintenance/incinerator) -"clf" = ( -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/obj/machinery/atmospherics/pipe/simple/general/visible, -/turf/open/floor/plasteel/floorgrime, -/area/maintenance/incinerator) -"clg" = ( -/obj/item/device/radio/intercom{ - name = "Station Intercom (General)"; - pixel_y = -29 - }, -/obj/structure/table, -/obj/item/weapon/paper_bin{ - pixel_x = -3; - pixel_y = 7 - }, -/obj/item/weapon/pen, -/turf/open/floor/plating, -/area/maintenance/incinerator) -"clh" = ( -/obj/machinery/light/small, -/obj/structure/extinguisher_cabinet{ - pixel_x = 0; - pixel_y = -31 - }, -/obj/machinery/computer/turbine_computer{ - id = "incineratorturbine" - }, -/turf/open/floor/plasteel/floorgrime, -/area/maintenance/incinerator) -"cli" = ( -/obj/machinery/button/door{ - id = "auxincineratorvent"; - name = "Auxiliary Vent Control"; - pixel_x = 6; - pixel_y = -24; - req_access_txt = "32" - }, -/obj/machinery/button/door{ - id = "turbinevent"; - name = "Turbine Vent Control"; - pixel_x = -6; - pixel_y = -24; - req_access_txt = "32" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/general/visible, -/turf/open/floor/plasteel/floorgrime, -/area/maintenance/incinerator) -"clj" = ( -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/floorgrime, -/area/maintenance/incinerator) -"clk" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"cll" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/components/binary/pump{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"clm" = ( -/obj/machinery/meter, -/obj/machinery/atmospherics/pipe/manifold/general/hidden{ - icon_state = "manifold"; - dir = 1 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"cln" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 9 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"clo" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 1 - }, -/obj/machinery/meter, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"clp" = ( -/obj/machinery/door/airlock/external{ - name = "Solar Maintenance"; - req_access = null; - req_access_txt = "10; 13" - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"clq" = ( -/obj/structure/rack, -/obj/structure/disposalpipe/segment, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 2; - name = "2maintenance loot spawner" - }, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"clr" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 5 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"cls" = ( -/obj/structure/rack, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 3; - name = "3maintenance loot spawner" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"clt" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"clu" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 9 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"clv" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating{ - icon_state = "platingdmg3" - }, -/area/maintenance/asmaint2) -"clw" = ( -/obj/structure/table, -/obj/machinery/cell_charger, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"clx" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/turf/open/floor/plating, -/area/maintenance/starboardsolar) -"cly" = ( -/obj/structure/chair/stool, -/obj/machinery/camera{ - c_tag = "Aft Starboard Solar Control"; - dir = 4; - network = list("SS13") - }, -/turf/open/floor/plating, -/area/maintenance/starboardsolar) -"clz" = ( -/obj/machinery/power/terminal{ - icon_state = "term"; - dir = 1 - }, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/machinery/light/small{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/starboardsolar) -"clA" = ( -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; - icon_state = "space"; - layer = 4; - name = "EXTERNAL AIRLOCK"; - pixel_x = 0; - pixel_y = 32 - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"clB" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/yellow/corner{ - dir = 1 - }, -/area/hallway/secondary/entry) -"clC" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/black, -/area/engine/engine_smes) -"clD" = ( -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/engine/engine_smes) -"clE" = ( -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/machinery/power/smes/engineering, -/turf/open/floor/plasteel/vault{ - dir = 1 - }, -/area/engine/engine_smes) -"clF" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/black, -/area/engine/engine_smes) -"clG" = ( -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/machinery/power/smes/engineering, -/turf/open/floor/plasteel/vault{ - dir = 4 - }, -/area/engine/engine_smes) -"clH" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/closed/wall, -/area/engine/engineering) -"clI" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/red/side, -/area/security/main) -"clJ" = ( -/obj/structure/grille, -/obj/structure/window/fulltile, -/turf/open/floor/plating, -/area/engine/engineering) -"clK" = ( -/obj/item/device/radio/intercom{ - desc = "Talk through this. Evilly"; - freerange = 1; - frequency = 1213; - name = "Syndicate Intercom"; - pixel_y = -32; - subspace_transmission = 1; - syndie = 1 - }, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/syndicate) -"clL" = ( -/obj/structure/closet/syndicate/personal, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/syndicate) -"clM" = ( -/obj/structure/table, -/obj/item/weapon/crowbar/large, -/obj/item/weapon/storage/box/lights/mixed, -/turf/open/floor/plasteel/yellow/side{ - dir = 9 - }, -/area/engine/engineering) -"clN" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/yellow/corner{ - dir = 1 - }, -/area/engine/engineering) -"clO" = ( -/turf/open/space, -/turf/closed/wall/mineral/plastitanium{ - icon_state = "diagonalWall3" - }, -/area/shuttle/syndicate) -"clP" = ( -/turf/open/floor/plasteel/yellow/corner{ - dir = 4 - }, -/area/engine/engineering) -"clQ" = ( -/turf/open/floor/plasteel/yellow/corner{ - dir = 1 - }, -/area/engine/engineering) -"clR" = ( -/obj/machinery/light{ - dir = 1 - }, -/turf/open/floor/plasteel/yellow/side{ - dir = 1 - }, -/area/engine/engineering) -"clS" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/open/floor/plasteel/red/side, -/area/security/main) -"clT" = ( -/obj/machinery/portable_atmospherics/canister/nitrogen, -/turf/open/floor/engine/n2, -/area/atmos) -"clU" = ( -/turf/open/floor/engine/n2, -/area/atmos) -"clV" = ( -/obj/machinery/portable_atmospherics/canister/oxygen, -/turf/open/floor/engine/o2, -/area/atmos) -"clW" = ( -/turf/open/floor/engine/o2, -/area/atmos) -"clX" = ( -/obj/effect/landmark/event_spawn, -/obj/effect/landmark/xmastree, -/turf/open/floor/plasteel/bar, -/area/crew_quarters/bar) -"clY" = ( -/obj/effect/landmark{ - name = "xeno_spawn"; - pixel_x = -1 - }, -/turf/open/floor/engine/air, -/area/atmos) -"clZ" = ( -/turf/open/floor/engine/air, -/area/atmos) -"cma" = ( -/obj/machinery/door/window{ - name = "Cockpit"; - req_access_txt = "150" - }, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/syndicate) -"cmb" = ( -/obj/structure/grille, -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/maintenance/incinerator) -"cmc" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible{ - dir = 2 - }, -/turf/closed/wall/r_wall, -/area/maintenance/incinerator) -"cmd" = ( -/turf/closed/wall/r_wall, -/area/maintenance/incinerator) -"cme" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible, -/turf/closed/wall/r_wall, -/area/maintenance/incinerator) -"cmf" = ( -/obj/machinery/door/airlock/glass{ - autoclose = 0; - frequency = 1449; - heat_proof = 1; - icon_state = "door_locked"; - id_tag = "incinerator_airlock_interior"; - locked = 1; - name = "Turbine Interior Airlock"; - req_access_txt = "32" - }, -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/engine, -/area/maintenance/incinerator) -"cmg" = ( -/obj/machinery/atmospherics/pipe/simple/general/hidden{ - dir = 9 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"cmh" = ( -/obj/structure/disposalpipe/junction{ - dir = 2; - icon_state = "pipe-y" - }, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"cmi" = ( -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"cmj" = ( -/obj/structure/disposalpipe/segment, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"cmk" = ( -/obj/structure/chair/stool{ - pixel_y = 8 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"cml" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/showroomfloor, -/area/security/warden) -"cmm" = ( -/obj/structure/chair{ - dir = 8 - }, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/syndicate) -"cmn" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"cmo" = ( -/obj/structure/rack{ - dir = 1 - }, -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"cmp" = ( -/obj/machinery/porta_turret/syndicate{ - dir = 4 - }, -/turf/closed/wall/mineral/plastitanium, -/area/shuttle/syndicate) -"cmq" = ( -/obj/effect/landmark{ - name = "xeno_spawn"; - pixel_x = -1 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plating{ - icon_state = "platingdmg3" - }, -/area/maintenance/asmaint2) -"cmr" = ( -/obj/structure/closet/toolcloset, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 5 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"cms" = ( -/obj/machinery/door/airlock/maintenance{ - req_access_txt = "12" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"cmt" = ( -/obj/structure/grille, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"cmu" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 9 - }, -/turf/closed/wall, -/area/maintenance/asmaint2) -"cmv" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/turf/open/floor/plating, -/area/maintenance/starboardsolar) -"cmw" = ( -/obj/machinery/power/solar_control{ - id = "starboardsolar"; - name = "Aft Starboard Solar Control"; - track = 0 - }, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/turf/open/floor/plating, -/area/maintenance/starboardsolar) -"cmx" = ( -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; - icon_state = "space"; - layer = 4; - name = "EXTERNAL AIRLOCK"; - pixel_x = 0; - pixel_y = -32 - }, -/turf/open/floor/plating, -/area/maintenance/starboardsolar) -"cmy" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/black, -/area/engine/engine_smes) -"cmz" = ( -/obj/structure/cable/yellow{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/structure/cable/yellow{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/turf/open/floor/plasteel/black, -/area/engine/engine_smes) -"cmA" = ( -/obj/machinery/power/terminal{ - icon_state = "term"; - dir = 1 - }, -/obj/structure/cable/yellow{ - d2 = 4; - icon_state = "0-4" - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/engine/engine_smes) -"cmB" = ( -/obj/machinery/power/terminal{ - icon_state = "term"; - dir = 1 - }, -/obj/structure/cable/yellow{ - d2 = 8; - icon_state = "0-8" - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/engine/engine_smes) -"cmC" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall/r_wall, -/area/engine/engineering) -"cmD" = ( -/obj/machinery/navbeacon{ - codes_txt = "delivery;dir=2"; - freq = 1400; - location = "Engineering" - }, -/obj/structure/plasticflaps{ - opacity = 1 - }, -/turf/open/floor/plasteel/bot, -/area/engine/engineering) -"cmE" = ( -/turf/open/space, -/turf/closed/wall/mineral/plastitanium{ - dir = 4; - icon_state = "diagonalWall3" - }, -/area/shuttle/syndicate) -"cmF" = ( -/obj/structure/closet/secure_closet/engineering_electrical, -/turf/open/floor/plasteel/yellow/side{ - dir = 1 - }, -/area/engine/engineering) -"cmG" = ( -/obj/structure/closet/secure_closet/engineering_welding, -/obj/machinery/firealarm{ - dir = 8; - pixel_x = -24 - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/yellow/side{ - dir = 9 - }, -/area/engine/engineering) -"cmH" = ( -/obj/structure/table, -/obj/item/stack/cable_coil, -/obj/item/weapon/crowbar/red, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/syndicate) -"cmI" = ( -/obj/machinery/vending/engivend, -/turf/open/floor/plasteel/yellow/side{ - dir = 1 - }, -/area/engine/engineering) -"cmJ" = ( -/obj/structure/table, -/obj/item/weapon/storage/box/zipties{ - pixel_x = 1; - pixel_y = 2 - }, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/syndicate) -"cmK" = ( -/obj/machinery/requests_console{ - announcementConsole = 0; - department = "Engineering"; - departmentType = 4; - name = "Engineering RC"; - pixel_y = 30 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/yellow/side{ - dir = 1 - }, -/area/engine/engineering) -"cmL" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/yellow/side{ - dir = 1 - }, -/area/engine/engineering) -"cmM" = ( -/obj/machinery/sleeper/syndie{ - dir = 4 - }, -/turf/open/floor/mineral/titanium, -/area/shuttle/syndicate) -"cmN" = ( -/obj/structure/sign/nosmoking_2{ - pixel_y = 32 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/turf/open/floor/plasteel/yellow/side{ - dir = 1 - }, -/area/engine/engineering) -"cmO" = ( -/obj/machinery/portable_atmospherics/canister/oxygen, -/turf/open/floor/mineral/titanium, -/area/shuttle/syndicate) -"cmP" = ( -/turf/open/floor/mineral/titanium, -/area/shuttle/syndicate) -"cmQ" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"cmR" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"cmS" = ( -/obj/structure/table, -/obj/item/stack/medical/ointment, -/obj/item/stack/medical/bruise_pack, -/obj/structure/extinguisher_cabinet{ - pixel_x = -5; - pixel_y = 30 - }, -/turf/open/floor/mineral/titanium, -/area/shuttle/syndicate) -"cmT" = ( -/obj/machinery/suit_storage_unit/syndicate, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/syndicate) -"cmU" = ( -/obj/machinery/light/small, -/turf/open/floor/engine/n2, -/area/atmos) -"cmV" = ( -/obj/machinery/light/small, -/turf/open/floor/engine/o2, -/area/atmos) -"cmW" = ( -/obj/machinery/light/small, -/turf/open/floor/engine/air, -/area/atmos) -"cmX" = ( -/obj/machinery/light_switch{ - pixel_x = 27 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/construction) -"cmY" = ( -/obj/machinery/atmospherics/components/binary/pump{ - dir = 2; - on = 1 - }, -/obj/machinery/doorButtons/access_button{ - idDoor = "incinerator_airlock_exterior"; - idSelf = "incinerator_access_control"; - layer = 3.1; - name = "Incinerator airlock control"; - pixel_x = 8; - pixel_y = -24 - }, -/obj/machinery/light/small{ - dir = 8 - }, -/obj/structure/sign/fire{ - pixel_x = -32; - pixel_y = 0 - }, -/turf/open/floor/engine, -/area/maintenance/incinerator) -"cmZ" = ( -/obj/machinery/atmospherics/components/binary/pump{ - dir = 1; - on = 1 - }, -/obj/structure/sign/fire{ - pixel_x = 32; - pixel_y = 0 - }, -/obj/machinery/doorButtons/access_button{ - idSelf = "incinerator_access_control"; - idDoor = "incinerator_airlock_interior"; - name = "Incinerator airlock control"; - pixel_x = -8; - pixel_y = 24 - }, -/obj/machinery/light/small{ - dir = 4 - }, -/turf/open/floor/engine, -/area/maintenance/incinerator) -"cna" = ( -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/engine, -/area/maintenance/incinerator) -"cnb" = ( -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"cnc" = ( -/obj/machinery/light/small, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"cnd" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"cne" = ( -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"cnf" = ( -/obj/structure/table, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 2; - name = "2maintenance loot spawner" - }, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"cng" = ( -/obj/machinery/light/small, -/obj/structure/table, -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/obj/effect/spawner/lootdrop/maintenance, -/obj/item/weapon/clipboard, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"cnh" = ( -/obj/structure/chair/stool{ - pixel_y = 8 - }, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/syndicate) -"cni" = ( -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; - icon_state = "space"; - layer = 4; - name = "EXTERNAL AIRLOCK"; - pixel_x = 0 - }, -/turf/closed/wall/mineral/plastitanium, -/area/shuttle/syndicate) -"cnj" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/maintenance/starboardsolar) -"cnk" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/machinery/door/airlock/external{ - cyclelinkeddir = 2; - name = "Solar Maintenance"; - req_access = null; - req_access_txt = "10; 13" - }, -/turf/open/floor/plating, -/area/maintenance/starboardsolar) -"cnl" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/structure/lattice/catwalk, -/turf/open/space, -/area/solar/port) -"cnm" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 2; - on = 1 - }, -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/black, -/area/engine/engine_smes) -"cnn" = ( -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/engine/engine_smes) -"cno" = ( -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/machinery/power/smes/engineering, -/turf/open/floor/plasteel/vault{ - dir = 4 - }, -/area/engine/engine_smes) -"cnp" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/camera{ - c_tag = "SMES Room"; - dir = 8; - network = list("SS13"); - pixel_x = 0; - pixel_y = 0 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/black, -/area/engine/engine_smes) -"cnq" = ( -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/machinery/power/smes/engineering, -/turf/open/floor/plasteel/vault{ - dir = 1 - }, -/area/engine/engine_smes) -"cnr" = ( -/obj/machinery/door/window/southleft{ - base_state = "left"; - dir = 2; - icon_state = "left"; - name = "Engineering Delivery"; - req_access_txt = "10" - }, -/turf/open/floor/plasteel/delivery, -/area/engine/engineering) -"cns" = ( -/obj/structure/closet/syndicate/nuclear, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/syndicate) -"cnt" = ( -/obj/machinery/camera{ - c_tag = "Engineering West"; - dir = 4; - network = list("SS13") - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/yellow/corner{ - dir = 1 - }, -/area/engine/engineering) -"cnu" = ( -/obj/structure/table, -/obj/item/device/aicard, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/syndicate) -"cnv" = ( -/obj/machinery/computer/security/telescreen{ - desc = "Used for watching the singularity chamber."; - dir = 1; - layer = 4; - name = "Singularity Engine Telescreen"; - network = list("Singularity"); - pixel_x = 0; - pixel_y = -30 - }, -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"cnw" = ( -/obj/structure/cable/yellow{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"cnx" = ( -/obj/structure/cable/yellow{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"cny" = ( -/obj/effect/landmark/start{ - name = "Station Engineer" - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"cnz" = ( -/obj/structure/tank_dispenser/oxygen, -/turf/open/floor/mineral/titanium, -/area/shuttle/syndicate) -"cnA" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/engine/engineering) -"cnB" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/construction) -"cnC" = ( -/obj/machinery/door/airlock/glass{ - autoclose = 0; - frequency = 1449; - heat_proof = 1; - icon_state = "door_locked"; - id_tag = "incinerator_airlock_exterior"; - locked = 1; - name = "Turbine Exterior Airlock"; - req_access_txt = "32" - }, -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/engine, -/area/maintenance/incinerator) -"cnD" = ( -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/turf/closed/wall, -/area/maintenance/asmaint) -"cnE" = ( -/obj/structure/disposalpipe/junction{ - dir = 4; - icon_state = "pipe-j2" - }, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"cnF" = ( -/obj/machinery/atmospherics/components/binary/pump{ - dir = 2; - name = "Waste Out"; - on = 1 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"cnG" = ( -/obj/structure/closet/emcloset, -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"cnH" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"cnI" = ( -/obj/structure/table, -/obj/item/weapon/c4{ - pixel_x = 2; - pixel_y = -5 - }, -/obj/item/weapon/c4{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/weapon/c4{ - pixel_x = 2; - pixel_y = -3 - }, -/obj/item/weapon/c4{ - pixel_x = -2; - pixel_y = -1 - }, -/obj/item/weapon/c4{ - pixel_x = 3; - pixel_y = 3 - }, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/syndicate) -"cnJ" = ( -/obj/structure/disposalpipe/segment, -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"cnK" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/turf/open/floor/plating, -/area/maintenance/starboardsolar) -"cnL" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/window/reinforced, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/black, -/area/engine/engine_smes) -"cnM" = ( -/obj/machinery/door/window{ - name = "SMES Chamber"; - req_access_txt = "32" - }, -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/turf/open/floor/plasteel/black, -/area/engine/engine_smes) -"cnN" = ( -/obj/structure/window/reinforced, -/obj/structure/cable/yellow{ - d2 = 4; - icon_state = "0-4" - }, -/obj/machinery/power/terminal{ - icon_state = "term"; - dir = 1 - }, -/turf/open/floor/plasteel/black, -/area/engine/engine_smes) -"cnO" = ( -/obj/structure/window/reinforced, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 8 - }, -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/turf/open/floor/plasteel/black, -/area/engine/engine_smes) -"cnP" = ( -/obj/machinery/power/terminal{ - icon_state = "term"; - dir = 1 - }, -/obj/structure/window/reinforced, -/obj/structure/cable/yellow{ - d2 = 8; - icon_state = "0-8" - }, -/turf/open/floor/plasteel/black, -/area/engine/engine_smes) -"cnQ" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/light{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/engine/engine_smes) -"cnR" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall/r_wall, -/area/engine/engine_smes) -"cnS" = ( -/obj/machinery/door/firedoor, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/camera{ - c_tag = "SMES Access"; - dir = 8; - network = list("SS13"); - pixel_x = 0; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 1 - }, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/engine/engine_smes) -"cnT" = ( -/obj/structure/sign/bluecross_2, -/turf/closed/wall/mineral/plastitanium, -/area/shuttle/syndicate) -"cnU" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'HIGH VOLTAGE'"; - icon_state = "shock"; - name = "HIGH VOLTAGE"; - pixel_x = -32; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/loadingarea, -/area/engine/engineering) -"cnV" = ( -/obj/structure/bed/roller, -/turf/open/floor/mineral/titanium, -/area/shuttle/syndicate) -"cnW" = ( -/turf/open/space, -/turf/closed/wall/mineral/plastitanium{ - dir = 1; - icon_state = "diagonalWall3" - }, -/area/shuttle/syndicate) -"cnX" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/extinguisher_cabinet{ - pixel_x = -5; - pixel_y = 30 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"cnY" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/sign/nosmoking_2{ - pixel_y = 32 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"cnZ" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/airalarm{ - pixel_y = 23 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"coa" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"cob" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"coc" = ( -/obj/effect/landmark/start{ - name = "Station Engineer" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/engine/engineering) -"cod" = ( -/obj/structure/table, -/obj/item/weapon/storage/firstaid/regular{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/storage/firstaid/fire, -/obj/item/weapon/storage/firstaid/regular{ - pixel_x = -3; - pixel_y = -3 - }, -/turf/open/floor/mineral/titanium, -/area/shuttle/syndicate) -"coe" = ( -/obj/machinery/door/window{ - dir = 4; - name = "EVA Storage"; - req_access_txt = "150" - }, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/syndicate) -"cof" = ( -/obj/machinery/door/airlock/external{ - req_access_txt = "150" - }, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/syndicate) -"cog" = ( -/obj/machinery/door/window{ - base_state = "right"; - dir = 4; - icon_state = "right"; - name = "EVA Storage"; - req_access_txt = "150" - }, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/syndicate) -"coh" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/shuttle/syndicate) -"coi" = ( -/obj/structure/rack, -/obj/item/clothing/suit/space/syndicate/black/red, -/obj/item/clothing/head/helmet/space/syndicate/black/red, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/syndicate) -"coj" = ( -/obj/item/device/radio/intercom{ - desc = "Talk through this. Evilly"; - freerange = 1; - frequency = 1213; - name = "Syndicate Intercom"; - pixel_x = -32; - subspace_transmission = 1; - syndie = 1 - }, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/syndicate) -"cok" = ( -/obj/machinery/recharge_station, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/syndicate) -"col" = ( -/obj/machinery/door/window{ - dir = 4; - name = "Infirmary"; - req_access_txt = "150" - }, -/turf/open/floor/mineral/titanium, -/area/shuttle/syndicate) -"com" = ( -/obj/machinery/door/window{ - base_state = "right"; - dir = 4; - icon_state = "right"; - name = "Infirmary"; - req_access_txt = "150" - }, -/turf/open/floor/mineral/titanium, -/area/shuttle/syndicate) -"con" = ( -/obj/structure/window/reinforced{ - dir = 1 - }, -/obj/structure/table, -/obj/item/bodypart/r_arm/robot, -/obj/item/bodypart/l_arm/robot, -/turf/open/floor/mineral/titanium, -/area/shuttle/syndicate) -"coo" = ( -/obj/structure/table, -/obj/item/weapon/stock_parts/cell/high{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/weapon/stock_parts/cell/high, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/syndicate) -"cop" = ( -/obj/machinery/atmospherics/components/unary/outlet_injector/on{ - dir = 1; - frequency = 1441; - id = "inc_in" - }, -/turf/open/floor/engine/vacuum, -/area/maintenance/incinerator) -"coq" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - external_pressure_bound = 0; - initialize_directions = 1; - internal_pressure_bound = 4000; - on = 0; - pressure_checks = 2; - pump_direction = 0 - }, -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; - icon_state = "space"; - layer = 4; - name = "EXTERNAL AIRLOCK"; - pixel_x = 0; - pixel_y = -32 - }, -/turf/open/floor/engine/vacuum, -/area/maintenance/incinerator) -"cor" = ( -/obj/machinery/igniter{ - icon_state = "igniter0"; - id = "Incinerator"; - luminosity = 2; - on = 0 - }, -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/engine/vacuum, -/area/maintenance/incinerator) -"cos" = ( -/obj/machinery/door/poddoor{ - id = "auxincineratorvent"; - name = "Auxiliary Incinerator Vent" - }, -/turf/open/floor/engine/vacuum, -/area/maintenance/incinerator) -"cot" = ( -/obj/structure/grille, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"cou" = ( -/obj/machinery/space_heater, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"cov" = ( -/obj/machinery/power/port_gen/pacman, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 8 - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/warning{ - dir = 9 - }, -/area/engine/engine_smes) -"cow" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/engine/engine_smes) -"cox" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/engine/engine_smes) -"coy" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/warning{ - dir = 5 - }, -/area/engine/engine_smes) -"coz" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/warning{ - dir = 1 - }, -/area/engine/engine_smes) -"coA" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 1 - }, -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/engine/engine_smes) -"coB" = ( -/obj/machinery/door/airlock/engineering{ - cyclelinkeddir = 4; - name = "SMES Room"; - req_access_txt = "32" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/delivery{ - name = "floor" - }, -/area/engine/engine_smes) -"coC" = ( -/obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/engine/engine_smes) -"coD" = ( -/obj/structure/table, -/obj/item/weapon/wrench, -/obj/item/device/assembly/infra, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/syndicate) -"coE" = ( -/obj/structure/table, -/obj/item/weapon/screwdriver{ - pixel_y = 9 - }, -/obj/item/device/assembly/voice{ - pixel_y = 3 - }, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/syndicate) -"coF" = ( -/obj/structure/table, -/obj/item/weapon/weldingtool/largetank{ - pixel_y = 3 - }, -/obj/item/device/multitool, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/syndicate) -"coG" = ( -/obj/structure/table, -/obj/item/device/assembly/signaler, -/obj/item/device/assembly/signaler, -/obj/item/device/assembly/prox_sensor{ - pixel_x = -8; - pixel_y = 4 - }, -/obj/item/device/assembly/prox_sensor{ - pixel_x = -8; - pixel_y = 4 - }, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/syndicate) -"coH" = ( -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"coI" = ( -/obj/structure/window/reinforced{ - dir = 1 - }, -/turf/open/floor/mineral/titanium, -/area/shuttle/syndicate) -"coJ" = ( -/obj/machinery/door/firedoor, -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"coK" = ( -/obj/structure/cable/yellow{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"coL" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"coM" = ( -/obj/machinery/holopad, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"coN" = ( -/obj/machinery/door/window/westright{ - name = "Tool Storage"; - req_access_txt = "150" - }, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/syndicate) -"coO" = ( -/obj/structure/table, -/obj/item/weapon/storage/toolbox/syndicate, -/obj/item/weapon/crowbar/red, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/syndicate) -"coP" = ( -/obj/machinery/door/window{ - dir = 1; - name = "Surgery"; - req_access_txt = "150" - }, -/turf/open/floor/mineral/titanium, -/area/shuttle/syndicate) -"coQ" = ( -/obj/structure/table, -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/item/weapon/storage/firstaid/regular{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/storage/firstaid/brute, -/obj/item/weapon/storage/firstaid/regular{ - pixel_x = -3; - pixel_y = -3 - }, -/turf/open/floor/mineral/titanium, -/area/shuttle/syndicate) -"coR" = ( -/obj/machinery/door/window{ - dir = 8; - name = "Tool Storage"; - req_access_txt = "150" - }, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/syndicate) -"coS" = ( -/obj/structure/rack, -/obj/item/weapon/gun/energy/laser{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/weapon/gun/energy/laser, -/obj/item/weapon/gun/energy/laser{ - pixel_x = 3; - pixel_y = -3 - }, -/turf/open/floor/plasteel/bot{ - dir = 2 - }, -/area/ai_monitored/security/armory) -"coT" = ( -/obj/item/pipe{ - dir = 4; - icon_state = "mixer"; - name = "gas mixer fitting"; - pipe_type = 14 - }, -/turf/open/floor/engine, -/area/toxins/misc_lab) -"coU" = ( -/obj/structure/table, -/obj/item/weapon/surgicaldrill, -/obj/item/weapon/circular_saw, -/turf/open/floor/mineral/titanium, -/area/shuttle/syndicate) -"coV" = ( -/obj/structure/sink{ - dir = 4; - icon_state = "sink"; - pixel_x = 11; - pixel_y = 0 - }, -/obj/structure/mirror{ - pixel_x = 30 - }, -/turf/open/floor/mineral/titanium, -/area/shuttle/syndicate) -"coW" = ( -/obj/structure/table, -/obj/item/device/sbeacondrop/bomb{ - pixel_y = 5 - }, -/obj/item/device/sbeacondrop/bomb, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/syndicate) -"coX" = ( -/obj/structure/table, -/obj/item/weapon/grenade/syndieminibomb{ - pixel_x = 4; - pixel_y = 2 - }, -/obj/item/weapon/grenade/syndieminibomb{ - pixel_x = -1 - }, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/syndicate) -"coY" = ( -/obj/machinery/nuclearbomb/syndicate, -/obj/machinery/door/window{ - dir = 1; - name = "Secure Storage"; - req_access_txt = "150" - }, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/syndicate) -"coZ" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 10 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"cpa" = ( -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/turf/open/floor/plasteel/warning{ - dir = 5 - }, -/area/engine/engineering) -"cpb" = ( -/obj/structure/closet/emcloset, -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/plating, -/area/engine/engineering) -"cpc" = ( -/obj/structure/shuttle/engine/propulsion/burst{ - dir = 4 - }, -/turf/closed/wall/mineral/titanium, -/area/shuttle/pod_4) -"cpd" = ( -/turf/closed/wall/mineral/titanium, -/area/shuttle/pod_4) -"cpe" = ( -/obj/docking_port/stationary/random{ - dir = 8; - id = "pod_asteroid2"; - name = "asteroid" - }, -/turf/open/space, -/area/space) -"cpf" = ( -/obj/machinery/telecomms/allinone{ - intercept = 1 - }, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/syndicate) -"cpg" = ( -/obj/item/weapon/grenade/barrier{ - pixel_x = 4 - }, -/obj/item/weapon/grenade/barrier, -/obj/item/weapon/grenade/barrier{ - pixel_x = -4 - }, -/obj/structure/table, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/ai_monitored/security/armory) -"cph" = ( -/obj/structure/lattice, -/obj/machinery/atmospherics/pipe/simple/green/visible, -/turf/open/space, -/area/space/nearstation) -"cpi" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/structure/lattice/catwalk, -/turf/open/space, -/area/solar/starboard) -"cpj" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/engine/engine_smes) -"cpk" = ( -/turf/open/floor/plasteel/warning/corner{ - dir = 2 - }, -/area/engine/engine_smes) -"cpl" = ( -/turf/open/floor/plasteel, -/area/engine/engine_smes) -"cpm" = ( -/obj/machinery/airalarm{ - dir = 1; - icon_state = "alarm0"; - pixel_y = -22 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/warning{ - dir = 6 - }, -/area/engine/engine_smes) -"cpn" = ( -/obj/machinery/light, -/turf/open/floor/plasteel/warning, -/area/engine/engine_smes) -"cpo" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/engine/engine_smes) -"cpp" = ( -/obj/machinery/door/firedoor, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/obj/machinery/airalarm{ - dir = 1; - icon_state = "alarm0"; - pixel_y = -22 - }, -/turf/open/floor/plasteel/warning{ - dir = 4 - }, -/area/engine/engine_smes) -"cpq" = ( -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'HIGH VOLTAGE'"; - icon_state = "shock"; - name = "HIGH VOLTAGE"; - pixel_x = -32; - pixel_y = 0 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"cpr" = ( -/obj/structure/table, -/obj/item/weapon/cautery, -/obj/item/weapon/scalpel, -/turf/open/floor/mineral/titanium, -/area/shuttle/syndicate) -"cps" = ( -/obj/structure/table, -/obj/item/stack/sheet/glass{ - amount = 50 - }, -/obj/item/stack/sheet/glass{ - amount = 50 - }, -/obj/item/stack/sheet/glass{ - amount = 50 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"cpt" = ( -/obj/structure/table, -/obj/item/clothing/gloves/color/yellow, -/obj/item/weapon/storage/toolbox/electrical{ - pixel_y = 5 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"cpu" = ( -/obj/effect/landmark/start{ - name = "Station Engineer" - }, -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"cpv" = ( -/obj/structure/cable/yellow{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"cpw" = ( -/obj/structure/table, -/obj/item/weapon/retractor, -/obj/item/weapon/hemostat, -/turf/open/floor/mineral/titanium, -/area/shuttle/syndicate) -"cpx" = ( -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/cable/yellow{ - d1 = 2; - d2 = 4; - icon_state = "2-4"; - tag = "" - }, -/turf/open/floor/plating/warnplate{ - dir = 8 - }, -/area/engine/engineering) -"cpy" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/door/firedoor, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "Singularity"; - name = "radiation shutters" - }, -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/floor/plasteel/bot{ - dir = 2 - }, -/area/engine/engineering) -"cpz" = ( -/obj/structure/particle_accelerator/end_cap, -/turf/open/floor/plating, -/area/engine/engineering) -"cpA" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/chair/office/dark{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/ai_monitored/security/armory) -"cpB" = ( -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/open/floor/plating/warnplate{ - dir = 4 - }, -/area/engine/engineering) -"cpC" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/obj/effect/landmark/event_spawn, -/turf/open/floor/plasteel, -/area/bridge) -"cpD" = ( -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/cable/yellow{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"cpE" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 5 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"cpF" = ( -/obj/structure/table/optable, -/obj/item/weapon/surgical_drapes, -/turf/open/floor/mineral/titanium, -/area/shuttle/syndicate) -"cpG" = ( -/obj/structure/table/optable, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/open/floor/plasteel/white, -/area/medical/sleeper) -"cpH" = ( -/obj/structure/shuttle/engine/heater, -/obj/structure/window/reinforced{ - dir = 1 - }, -/turf/open/floor/plating, -/area/shuttle/syndicate) -"cpI" = ( -/obj/machinery/door/airlock/external{ - cyclelinkeddir = 4; - name = "Escape Pod Four"; - req_access = null; - req_access_txt = "0" - }, -/turf/open/floor/plating, -/area/engine/engineering) -"cpJ" = ( -/obj/machinery/door/airlock/titanium{ - name = "Escape Pod Airlock" - }, -/obj/docking_port/mobile/pod{ - dir = 4; - id = "pod4"; - name = "escape pod 4"; - port_angle = 180; - preferred_direction = 4 - }, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/pod_4) -"cpK" = ( -/obj/machinery/computer/shuttle/pod{ - pixel_x = 0; - pixel_y = -32; - possible_destinations = "pod_asteroid2"; - shuttleId = "pod2" - }, -/obj/structure/chair{ - dir = 8 - }, -/obj/machinery/status_display{ - density = 0; - layer = 3; - pixel_x = 0; - pixel_y = 32 - }, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/pod_2) -"cpL" = ( -/obj/item/weapon/storage/pod{ - pixel_x = 6; - pixel_y = -28 - }, -/obj/item/device/radio/intercom{ - pixel_x = 0; - pixel_y = 25 - }, -/obj/structure/chair{ - dir = 8 - }, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/pod_2) -"cpM" = ( -/obj/structure/grille, -/obj/structure/window/shuttle, -/turf/open/floor/plating, -/area/shuttle/pod_4) -"cpN" = ( -/obj/machinery/power/turbine{ - luminosity = 2 - }, -/obj/structure/cable/yellow, -/turf/open/floor/engine/vacuum, -/area/maintenance/incinerator) -"cpO" = ( -/obj/structure/lattice, -/obj/machinery/atmospherics/components/binary/pump{ - dir = 2; - name = "Incinerator Output Pump"; - on = 1 - }, -/turf/open/space, -/area/maintenance/incinerator) -"cpP" = ( -/obj/structure/lattice, -/obj/machinery/atmospherics/pipe/simple/cyan/visible, -/turf/open/space, -/area/space/nearstation) -"cpQ" = ( -/obj/structure/lattice, -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible, -/turf/open/space, -/area/maintenance/incinerator) -"cpR" = ( -/obj/machinery/door/airlock{ - name = "Observatory Access" - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"cpS" = ( -/obj/structure/cable, -/obj/machinery/power/apc{ - dir = 2; - name = "SMES room APC"; - pixel_y = -24 - }, -/turf/open/floor/plasteel/warning{ - dir = 10 - }, -/area/engine/engine_smes) -"cpT" = ( -/obj/structure/table, -/obj/item/device/radio/intercom{ - name = "Station Intercom (General)"; - pixel_y = -35 - }, -/obj/item/weapon/stock_parts/cell/high/plus, -/turf/open/floor/plasteel/warning{ - dir = 6 - }, -/area/engine/engine_smes) -"cpU" = ( -/obj/structure/chair/office/light{ - dir = 4 - }, -/obj/machinery/firealarm{ - dir = 1; - pixel_y = -24 - }, -/turf/open/floor/plasteel/warning, -/area/engine/engine_smes) -"cpV" = ( -/obj/structure/table, -/obj/machinery/camera{ - c_tag = "Engineering Storage"; - dir = 4; - network = list("SS13") - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"cpW" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"cpX" = ( -/obj/structure/table, -/obj/item/stack/rods{ - amount = 50 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"cpY" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"cpZ" = ( -/obj/structure/table, -/obj/item/weapon/storage/toolbox/mechanical{ - pixel_y = 5 - }, -/obj/item/device/flashlight{ - pixel_x = 1; - pixel_y = 5 - }, -/obj/item/device/flashlight{ - pixel_x = 1; - pixel_y = 5 - }, -/turf/open/floor/plasteel/warning{ - dir = 2 - }, -/area/engine/engineering) -"cqa" = ( -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'RADIOACTIVE AREA'"; - icon_state = "radiation"; - name = "RADIOACTIVE AREA"; - pixel_x = 0; - pixel_y = -32 - }, -/obj/machinery/light, -/turf/open/floor/plasteel/warning{ - dir = 2 - }, -/area/engine/engineering) -"cqb" = ( -/obj/item/clothing/glasses/meson, -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/warning{ - dir = 2 - }, -/area/engine/engineering) -"cqc" = ( -/turf/open/floor/plasteel/warning{ - dir = 2 - }, -/area/engine/engineering) -"cqd" = ( -/obj/machinery/button/door{ - id = "Singularity"; - name = "Shutters Control"; - pixel_x = 25; - pixel_y = 0; - req_access_txt = "11" - }, -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/warning{ - dir = 2 - }, -/area/engine/engineering) -"cqe" = ( -/obj/structure/chair/stool, -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/warning{ - dir = 2 - }, -/area/engine/engineering) -"cqf" = ( -/obj/machinery/button/door{ - id = "Singularity"; - name = "Shutters Control"; - pixel_x = -25; - pixel_y = 0; - req_access_txt = "11" - }, -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plating/warnplate{ - dir = 8 - }, -/area/engine/engineering) -"cqg" = ( -/obj/structure/particle_accelerator/fuel_chamber, -/turf/open/floor/plating, -/area/engine/engineering) -"cqh" = ( -/obj/machinery/particle_accelerator/control_box, -/obj/structure/cable/yellow, -/turf/open/floor/plating, -/area/engine/engineering) -"cqi" = ( -/obj/machinery/button/door{ - id = "Singularity"; - name = "Shutters Control"; - pixel_x = 25; - pixel_y = 0; - req_access_txt = "11" - }, -/turf/open/floor/plating/warnplate{ - dir = 4 - }, -/area/engine/engineering) -"cqj" = ( -/obj/effect/landmark/start{ - name = "Station Engineer" - }, -/turf/open/floor/plating, -/area/engine/engineering) -"cqk" = ( -/obj/machinery/button/door{ - id = "Singularity"; - name = "Shutters Control"; - pixel_x = -25; - pixel_y = 0; - req_access_txt = "11" - }, -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/warning{ - dir = 2 - }, -/area/engine/engineering) -"cql" = ( -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/warning{ - dir = 2 - }, -/area/engine/engineering) -"cqm" = ( -/obj/structure/rack{ - dir = 8; - layer = 2.9 - }, -/obj/item/clothing/mask/gas{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/clothing/mask/gas, -/obj/item/clothing/mask/gas{ - pixel_x = -3; - pixel_y = -3 - }, -/turf/open/floor/plasteel/warning{ - dir = 2 - }, -/area/engine/engineering) -"cqn" = ( -/obj/structure/grille, -/turf/open/floor/plating, -/area/maintenance/aft) -"cqo" = ( -/obj/structure/sign/pods{ - pixel_x = 32; - pixel_y = 0 - }, -/turf/open/floor/plasteel/warning{ - dir = 6 - }, -/area/engine/engineering) -"cqp" = ( -/obj/machinery/camera{ - c_tag = "Engineering Escape Pod"; - dir = 4; - network = list("SS13") - }, -/turf/open/floor/plating, -/area/engine/engineering) -"cqq" = ( -/obj/machinery/door/airlock/titanium{ - name = "Escape Pod Airlock" - }, -/obj/docking_port/mobile/pod{ - dir = 8; - id = "pod2"; - name = "escape pod 2"; - port_angle = 180 - }, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/pod_2) -"cqr" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/plasteel/warning/corner{ - dir = 1 - }, -/area/hallway/secondary/entry) -"cqs" = ( -/obj/structure/sign/fire{ - pixel_x = 0; - pixel_y = 0 - }, -/turf/closed/wall/r_wall, -/area/maintenance/incinerator) -"cqt" = ( -/obj/machinery/door/poddoor{ - id = "turbinevent"; - name = "Turbine Vent" - }, -/turf/open/floor/engine/vacuum, -/area/maintenance/incinerator) -"cqu" = ( -/obj/machinery/door/airlock/external{ - name = "External Access"; - req_access = null; - req_access_txt = "13" - }, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"cqv" = ( -/obj/effect/decal/cleanable/cobweb/cobweb2, -/turf/open/floor/plating, -/area/maintenance/aft) -"cqw" = ( -/obj/structure/table, -/obj/item/stack/sheet/plasteel{ - amount = 10 - }, -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"cqx" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"cqy" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"cqz" = ( -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/obj/machinery/disposal/bin, -/obj/structure/disposalpipe/trunk{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"cqA" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/door/airlock/external{ - cyclelinkeddir = 2; - name = "Engineering External Access"; - req_access = null; - req_access_txt = "10;13" - }, -/turf/open/floor/plating, -/area/engine/engineering) -"cqB" = ( -/obj/machinery/door/poddoor/shutters/preopen{ - id = "Singularity"; - name = "radiation shutters" - }, -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plating, -/area/engine/engineering) -"cqC" = ( -/obj/machinery/door/poddoor/shutters/preopen{ - id = "Singularity"; - name = "radiation shutters" - }, -/turf/open/floor/plating, -/area/engine/engineering) -"cqD" = ( -/obj/item/stack/cable_coil{ - pixel_x = 3; - pixel_y = -7 - }, -/obj/item/stack/cable_coil{ - pixel_x = 3; - pixel_y = -7 - }, -/obj/item/weapon/crowbar, -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plating/warnplate{ - dir = 8 - }, -/area/engine/engineering) -"cqE" = ( -/obj/structure/particle_accelerator/power_box, -/turf/open/floor/plating, -/area/engine/engineering) -"cqF" = ( -/obj/structure/chair/stool, -/turf/open/floor/plating, -/area/engine/engineering) -"cqG" = ( -/obj/structure/rack, -/obj/item/weapon/storage/box/rubbershot{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/item/weapon/storage/box/rubbershot{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/weapon/storage/box/rubbershot, -/obj/item/weapon/storage/box/rubbershot, -/obj/item/weapon/storage/box/rubbershot{ - pixel_x = 3; - pixel_y = -3 - }, -/obj/item/weapon/storage/box/rubbershot{ - pixel_x = 3; - pixel_y = -3 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/ai_monitored/security/armory) -"cqH" = ( -/obj/item/weapon/screwdriver, -/turf/open/floor/plating, -/area/engine/engineering) -"cqI" = ( -/obj/structure/shuttle/engine/propulsion{ - icon_state = "propulsion_l" - }, -/turf/open/floor/plating, -/area/shuttle/syndicate) -"cqJ" = ( -/obj/structure/cable, -/obj/structure/lattice/catwalk, -/turf/open/space, -/area/solar/starboard) -"cqK" = ( -/obj/structure/table, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 2; - name = "2maintenance loot spawner" - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"cqL" = ( -/obj/machinery/light/small{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"cqM" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"cqN" = ( -/obj/structure/table, -/obj/item/stack/sheet/metal{ - amount = 50 - }, -/obj/item/stack/sheet/metal{ - amount = 50 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"cqO" = ( -/obj/structure/table, -/obj/item/stack/cable_coil{ - pixel_x = 3; - pixel_y = -7 - }, -/obj/item/stack/cable_coil, -/obj/item/weapon/electronics/airlock, -/obj/item/weapon/electronics/airlock, -/turf/open/floor/plasteel, -/area/engine/engineering) -"cqP" = ( -/obj/structure/table, -/obj/item/weapon/folder/yellow, -/obj/item/clothing/ears/earmuffs{ - pixel_x = -3; - pixel_y = -2 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"cqQ" = ( -/obj/structure/reagent_dispensers/watertank, -/turf/open/floor/plasteel, -/area/engine/engineering) -"cqR" = ( -/obj/structure/reagent_dispensers/fueltank, -/turf/open/floor/plasteel, -/area/engine/engineering) -"cqS" = ( -/obj/machinery/light/small{ - dir = 8 - }, -/obj/structure/closet/emcloset, -/turf/open/floor/plating, -/area/engine/engineering) -"cqT" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; - icon_state = "space"; - layer = 4; - name = "EXTERNAL AIRLOCK"; - pixel_x = 32 - }, -/turf/open/floor/plating, -/area/engine/engineering) -"cqU" = ( -/obj/machinery/power/rad_collector{ - anchored = 1 - }, -/obj/structure/cable/yellow, -/turf/open/floor/plating/warnplate{ - dir = 1 - }, -/area/engine/engineering) -"cqV" = ( -/obj/structure/reagent_dispensers/fueltank, -/turf/open/floor/plating/warnplate{ - dir = 1 - }, -/area/engine/engineering) -"cqW" = ( -/obj/machinery/power/rad_collector{ - anchored = 1 - }, -/obj/item/weapon/tank/internals/plasma, -/obj/structure/cable/yellow, -/turf/open/floor/plating/warnplate{ - dir = 1 - }, -/area/engine/engineering) -"cqX" = ( -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plating/warnplate{ - dir = 8 - }, -/area/engine/engineering) -"cqY" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/engine/engineering) -"cqZ" = ( -/obj/structure/particle_accelerator/particle_emitter/center, -/turf/open/floor/plating, -/area/engine/engineering) -"cra" = ( -/obj/structure/particle_accelerator/particle_emitter/left, -/turf/open/floor/plating, -/area/engine/engineering) -"crb" = ( -/obj/structure/particle_accelerator/particle_emitter/right, -/turf/open/floor/plating, -/area/engine/engineering) -"crc" = ( -/obj/structure/reagent_dispensers/watertank, -/turf/open/floor/plating/warnplate{ - dir = 1 - }, -/area/engine/engineering) -"crd" = ( -/obj/machinery/light/small{ - dir = 4 - }, -/obj/structure/closet/emcloset, -/turf/open/floor/plating, -/area/engine/engineering) -"cre" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; - icon_state = "space"; - layer = 4; - name = "EXTERNAL AIRLOCK"; - pixel_x = -32 - }, -/turf/open/floor/plating, -/area/engine/engineering) -"crf" = ( -/obj/structure/shuttle/engine/propulsion{ - icon_state = "propulsion_r" - }, -/turf/open/floor/plating, -/area/shuttle/syndicate) -"crg" = ( -/obj/structure/shuttle/engine/propulsion, -/turf/open/floor/plating, -/area/shuttle/syndicate) -"crh" = ( -/turf/open/floor/plating/warnplate{ - dir = 8 - }, -/area/engine/engineering) -"cri" = ( -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"crj" = ( -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/obj/machinery/power/solar{ - id = "starboardsolar"; - name = "Starboard Solar Array" - }, -/turf/open/floor/plasteel/airless/solarpanel, -/area/solar/starboard) -"crk" = ( -/obj/structure/lattice/catwalk, -/turf/open/space, -/area/solar/starboard) -"crl" = ( -/obj/structure/table, -/obj/item/device/taperecorder{ - pixel_y = 0 - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"crm" = ( -/obj/structure/table, -/obj/item/weapon/storage/box/matches, -/obj/item/weapon/storage/fancy/cigarettes, -/turf/open/floor/plating, -/area/maintenance/aft) -"crn" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating/airless, -/area/engine/engineering) -"cro" = ( -/obj/structure/grille, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/engine/engineering) -"crp" = ( -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'HIGH VOLTAGE'"; - icon_state = "shock"; - name = "HIGH VOLTAGE" - }, -/turf/closed/wall/r_wall, -/area/engine/engineering) -"crq" = ( -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/structure/grille, -/obj/machinery/door/poddoor/preopen{ - id = "Secure Gate"; - name = "brig shutters" - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/engine/engineering) -"crr" = ( -/obj/structure/grille, -/obj/structure/cable, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/engine/engineering) -"crs" = ( -/obj/structure/cable/yellow{ - icon_state = "1-4"; - d1 = 1; - d2 = 4 - }, -/turf/open/floor/plating/warnplate{ - dir = 10 - }, -/area/engine/engineering) -"crt" = ( -/obj/item/weapon/wirecutters, -/obj/structure/cable/yellow{ - d1 = 2; - d2 = 8; - icon_state = "2-8"; - tag = "" - }, -/turf/open/floor/plating/warnplate, -/area/engine/engineering) -"cru" = ( -/turf/open/floor/plating/warnplate, -/area/engine/engineering) -"crv" = ( -/turf/open/floor/plating/warnplate{ - dir = 6 - }, -/area/engine/engineering) -"crw" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 5 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"crx" = ( -/obj/structure/grille, -/obj/structure/window/shuttle, -/turf/open/floor/plating, -/area/shuttle/escape) -"cry" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning/corner{ - dir = 2 - }, -/area/hallway/secondary/entry) -"crz" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/warning, -/area/hallway/secondary/entry) -"crA" = ( -/obj/structure/transit_tube_pod, -/obj/structure/transit_tube/station/reverse/flipped{ - dir = 4 - }, -/turf/open/floor/plating/warnplate{ - dir = 8 - }, -/area/engine/engineering) -"crB" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/structure/lattice/catwalk, -/turf/open/space, -/area/solar/starboard) -"crC" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/structure/lattice/catwalk, -/turf/open/space, -/area/solar/starboard) -"crD" = ( -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/structure/lattice/catwalk, -/turf/open/space, -/area/solar/starboard) -"crE" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/structure/lattice/catwalk, -/turf/open/space, -/area/solar/starboard) -"crF" = ( -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/structure/lattice/catwalk, -/turf/open/space, -/area/solar/starboard) -"crG" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/structure/lattice/catwalk, -/turf/open/space, -/area/solar/starboard) -"crH" = ( -/obj/structure/grille, -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/turf/open/floor/plating/airless, -/area/engine/engineering) -"crI" = ( -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/turf/open/floor/plating/warnplate, -/area/engine/engineering) -"crJ" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/turf/open/floor/plating/airless, -/area/engine/engineering) -"crK" = ( -/obj/machinery/camera/emp_proof{ - c_tag = "Singularity North-West"; - dir = 2; - network = list("Singularity") - }, -/obj/machinery/power/grounding_rod, -/turf/open/floor/plating/airless, -/area/engine/engineering) -"crL" = ( -/obj/structure/grille, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/turf/open/floor/plating/airless, -/area/engine/engineering) -"crM" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/turf/open/floor/plating/airless, -/area/engine/engineering) -"crN" = ( -/obj/structure/table, -/obj/item/weapon/storage/firstaid/fire, -/turf/open/floor/mineral/titanium, -/area/shuttle/escape) -"crO" = ( -/turf/open/floor/mineral/titanium, -/turf/closed/wall/mineral/titanium/interior, -/area/shuttle/escape) -"crP" = ( -/obj/machinery/light, -/turf/open/floor/plasteel, -/area/engine/engineering) -"crQ" = ( -/obj/machinery/computer/emergency_shuttle, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/escape) -"crR" = ( -/obj/structure/transit_tube, -/turf/open/floor/plating/warnplate{ - dir = 8 - }, -/area/engine/engineering) -"crS" = ( -/obj/structure/cable, -/obj/machinery/power/solar{ - id = "starboardsolar"; - name = "Starboard Solar Array" - }, -/turf/open/floor/plasteel/airless/solarpanel, -/area/solar/starboard) -"crT" = ( -/obj/structure/grille, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plating/airless, -/area/engine/engineering) -"crU" = ( -/turf/open/floor/plating/airless, -/area/engine/engineering) -"crV" = ( -/obj/item/weapon/wrench, -/turf/open/floor/plating/airless, -/area/engine/engineering) -"crW" = ( -/obj/machinery/light/small{ - dir = 8 - }, -/turf/open/floor/plating, -/area/engine/engineering) -"crX" = ( -/obj/structure/closet/emcloset, -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; - icon_state = "space"; - layer = 4; - name = "EXTERNAL AIRLOCK"; - pixel_x = 32 - }, -/turf/open/floor/plating, -/area/engine/engineering) -"crY" = ( -/obj/structure/window/reinforced/fulltile, -/obj/structure/transit_tube, -/turf/open/floor/plating, -/area/engine/engineering) -"crZ" = ( -/obj/structure/grille, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/turf/open/floor/plating/airless, -/area/engine/engineering) -"csa" = ( -/turf/open/floor/plating/airless/warnplate{ - dir = 8 - }, -/area/engine/engineering) -"csb" = ( -/obj/machinery/power/emitter{ - anchored = 1; - dir = 4; - state = 2 - }, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/turf/open/floor/plating/airless, -/area/engine/engineering) -"csc" = ( -/obj/structure/lattice, -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible, -/turf/open/space, -/area/maintenance/asmaint) -"csd" = ( -/turf/open/floor/plating/airless/warnplate{ - dir = 4 - }, -/area/engine/engineering) -"cse" = ( -/obj/structure/grille, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/turf/open/floor/plating/airless, -/area/engine/engineering) -"csf" = ( -/obj/machinery/power/emitter{ - anchored = 1; - dir = 8; - state = 2 - }, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/turf/open/floor/plating/airless, -/area/engine/engineering) -"csg" = ( -/obj/machinery/door/airlock/external{ - cyclelinkeddir = 1; - name = "Engineering External Access"; - req_access = null; - req_access_txt = "10;13" - }, -/turf/open/floor/plating, -/area/engine/engineering) -"csh" = ( -/obj/structure/transit_tube{ - icon_state = "D-SW" - }, -/turf/open/space, -/area/space) -"csi" = ( -/obj/structure/transit_tube/curved/flipped{ - dir = 1 - }, -/turf/open/space, -/area/space) -"csj" = ( -/obj/item/device/multitool, -/turf/open/floor/plating/airless, -/area/engine/engineering) -"csk" = ( -/obj/structure/disposalpipe/segment, -/turf/open/floor/plating/airless, -/area/space/nearstation) -"csl" = ( -/obj/structure/transit_tube/curved{ - dir = 4 - }, -/turf/open/space, -/area/space) -"csm" = ( -/obj/machinery/atmospherics/components/unary/outlet_injector/on{ - dir = 1 - }, -/turf/open/floor/plating/airless, -/area/maintenance/asmaint) -"csn" = ( -/obj/structure/transit_tube/horizontal, -/turf/open/space, -/area/space) -"cso" = ( -/obj/structure/lattice, -/obj/structure/transit_tube/crossing/horizontal, -/turf/open/space, -/area/space) -"csp" = ( -/obj/structure/transit_tube{ - icon_state = "E-W-Pass" - }, -/turf/open/space, -/area/space) -"csq" = ( -/obj/machinery/computer/security/telescreen{ - desc = "Used for watching the turbine vent."; - dir = 1; - name = "turbine vent monitor"; - network = list("Turbine"); - pixel_x = 0; - pixel_y = -29 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - dir = 4 - }, -/turf/open/floor/plasteel/floorgrime, -/area/maintenance/incinerator) -"csr" = ( -/obj/machinery/doorButtons/airlock_controller{ - idExterior = "incinerator_airlock_exterior"; - idSelf = "incinerator_access_control"; - idInterior = "incinerator_airlock_interior"; - name = "Incinerator Access Console"; - pixel_x = 6; - pixel_y = -26; - req_access_txt = "12" - }, -/obj/machinery/button/ignition{ - id = "Incinerator"; - pixel_x = -6; - pixel_y = -24 - }, -/obj/machinery/atmospherics/pipe/manifold/general/visible{ - dir = 4; - initialize_directions = 11 - }, -/obj/machinery/meter, -/turf/open/floor/plasteel/floorgrime, -/area/maintenance/incinerator) -"css" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/structure/grille, -/turf/open/floor/plating/airless, -/area/engine/engineering) -"cst" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/structure/grille, -/turf/open/floor/plating/airless, -/area/engine/engineering) -"csu" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/structure/grille, -/turf/open/floor/plating/airless, -/area/engine/engineering) -"csv" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/structure/grille, -/turf/open/floor/plating/airless, -/area/engine/engineering) -"csw" = ( -/obj/structure/lattice, -/obj/machinery/atmospherics/pipe/simple/yellow/visible, -/turf/open/space, -/area/space) -"csx" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/grille, -/turf/open/floor/plating/airless, -/area/engine/engineering) -"csy" = ( -/obj/structure/table, -/obj/item/weapon/weldingtool, -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"csz" = ( -/obj/effect/landmark{ - name = "carpspawn" - }, -/turf/open/space, -/area/space/nearstation) -"csA" = ( -/obj/machinery/field/generator{ - anchored = 1; - state = 2 - }, -/turf/open/floor/plating/airless, -/area/space/nearstation) -"csB" = ( -/obj/item/weapon/wirecutters, -/obj/structure/lattice, -/turf/open/space, -/area/space/nearstation) -"csC" = ( -/turf/open/floor/plating/airless/warnplate{ - dir = 1 - }, -/area/space/nearstation) -"csD" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/ai_monitored/turret_protected/aisat_interior) -"csE" = ( -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/obj/structure/lattice/catwalk, -/turf/open/space, -/area/solar/starboard) -"csF" = ( -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'RADIOACTIVE AREA'"; - icon_state = "radiation"; - name = "RADIOACTIVE AREA"; - pixel_x = 0; - pixel_y = 0 - }, -/turf/closed/wall/r_wall, -/area/engine/engineering) -"csG" = ( -/obj/machinery/light{ - dir = 8 - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/grille, -/turf/open/floor/plating/airless, -/area/engine/engineering) -"csH" = ( -/turf/open/floor/plating/airless/warnplate{ - dir = 9 - }, -/area/space/nearstation) -"csI" = ( -/turf/open/floor/plating/airless/warnplate{ - dir = 5 - }, -/area/space/nearstation) -"csJ" = ( -/obj/item/weapon/crowbar, -/turf/open/space, -/area/space/nearstation) -"csK" = ( -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/grille, -/turf/open/floor/plating/airless, -/area/engine/engineering) -"csL" = ( -/obj/structure/transit_tube{ - icon_state = "D-NE" - }, -/turf/open/space, -/area/space) -"csM" = ( -/obj/structure/lattice, -/obj/machinery/atmospherics/pipe/simple/yellow/visible, -/obj/structure/transit_tube/crossing/horizontal, -/turf/open/space, -/area/space) -"csN" = ( -/obj/structure/transit_tube/horizontal, -/turf/open/floor/plating, -/area/ai_monitored/turret_protected/aisat_interior) -"csO" = ( -/obj/structure/window/reinforced/fulltile, -/obj/structure/transit_tube/horizontal, -/turf/open/floor/plating, -/area/ai_monitored/turret_protected/aisat_interior) -"csP" = ( -/obj/machinery/power/grounding_rod, -/turf/open/floor/plating/airless, -/area/space/nearstation) -"csQ" = ( -/obj/item/weapon/wrench, -/turf/open/floor/plating/airless, -/area/space/nearstation) -"csR" = ( -/obj/machinery/the_singularitygen, -/turf/open/floor/plating/airless/warnplate{ - dir = 8 - }, -/area/space/nearstation) -"csS" = ( -/obj/item/weapon/weldingtool, -/turf/open/space, -/area/space/nearstation) -"csT" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/effect/landmark/xmastree, -/turf/open/floor/plasteel/black, -/area/chapel/main) -"csU" = ( -/obj/structure/transit_tube/station/reverse, -/turf/open/floor/plating, -/area/ai_monitored/turret_protected/aisat_interior) -"csV" = ( -/turf/open/floor/plating/warnplate{ - dir = 1 - }, -/area/ai_monitored/turret_protected/aisat_interior) -"csW" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - on = 1 - }, -/turf/open/floor/plating/warnplate{ - dir = 1 - }, -/area/ai_monitored/turret_protected/aisat_interior) -"csX" = ( -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; - icon_state = "space"; - layer = 4; - name = "EXTERNAL AIRLOCK"; - pixel_x = 0; - pixel_y = 32 - }, -/turf/open/floor/plating, -/area/ai_monitored/turret_protected/aisat_interior) -"csY" = ( -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/structure/cable, -/obj/structure/lattice/catwalk, -/turf/open/space, -/area/solar/starboard) -"csZ" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/structure/lattice/catwalk, -/turf/open/space, -/area/solar/starboard) -"cta" = ( -/obj/machinery/door/airlock/external{ - cyclelinkeddir = 4; - name = "MiniSat External Access"; - req_access = null; - req_access_txt = "65;13" - }, -/turf/open/floor/plating, -/area/ai_monitored/turret_protected/aisat_interior) -"ctb" = ( -/turf/open/floor/plating, -/area/ai_monitored/turret_protected/aisat_interior) -"ctc" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/ai_monitored/turret_protected/aisat_interior) -"ctd" = ( -/obj/structure/lattice/catwalk, -/obj/machinery/atmospherics/pipe/simple/yellow/visible, -/turf/open/space, -/area/space) -"cte" = ( -/obj/item/device/radio/off, -/turf/open/floor/plating/airless, -/area/engine/engineering) -"ctf" = ( -/turf/open/floor/plating/airless/warnplate{ - dir = 2 - }, -/area/space/nearstation) -"ctg" = ( -/obj/structure/closet/emcloset, -/turf/open/floor/plating, -/area/ai_monitored/turret_protected/aisat_interior) -"cth" = ( -/obj/item/device/radio/intercom{ - name = "Station Intercom (General)"; - pixel_x = 0; - pixel_y = -29 - }, -/obj/machinery/light/small, -/turf/open/floor/plating, -/area/ai_monitored/turret_protected/aisat_interior) -"cti" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/structure/sign/securearea{ - pixel_y = -32 - }, -/turf/open/floor/plating, -/area/ai_monitored/turret_protected/aisat_interior) -"ctj" = ( -/obj/machinery/camera{ - c_tag = "MiniSat Pod Access"; - dir = 1; - network = list("MiniSat"); - pixel_x = 0; - pixel_y = 0; - start_active = 1 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 2; - on = 1 - }, -/obj/machinery/light/small, -/turf/open/floor/plating, -/area/ai_monitored/turret_protected/aisat_interior) -"ctk" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 8 - }, -/turf/closed/wall, -/area/ai_monitored/turret_protected/aisat_interior) -"ctl" = ( -/obj/structure/grille, -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/turf/open/floor/plating/airless, -/area/engine/engineering) -"ctm" = ( -/turf/open/floor/plating/airless/warnplate{ - dir = 10 - }, -/area/space/nearstation) -"ctn" = ( -/obj/structure/grille, -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/turf/open/floor/plating/airless, -/area/engine/engineering) -"cto" = ( -/obj/machinery/door/airlock/hatch{ - name = "MiniSat Foyer"; - req_one_access_txt = "65" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/aisat_interior) -"ctp" = ( -/obj/machinery/atmospherics/components/unary/outlet_injector/on{ - dir = 8 - }, -/turf/open/floor/plating/airless, -/area/ai_monitored/turret_protected/aisat_interior) -"ctq" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/ai_monitored/turret_protected/aisat_interior) -"ctr" = ( -/obj/structure/table, -/obj/machinery/light/small{ - dir = 1 - }, -/obj/item/weapon/folder{ - pixel_x = 3 - }, -/obj/item/weapon/phone{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/weapon/pen, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/ai_monitored/turret_protected/aisat_interior) -"cts" = ( -/obj/structure/rack{ - dir = 1 - }, -/obj/machinery/light/small{ - dir = 1 - }, -/obj/machinery/light_switch{ - pixel_y = 28 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/item/device/radio/off{ - pixel_y = 4 - }, -/obj/item/weapon/screwdriver{ - pixel_y = 10 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/ai_monitored/turret_protected/aisat_interior) -"ctt" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/aisat_interior) -"ctu" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/grimy, -/area/ai_monitored/turret_protected/aisat_interior) -"ctv" = ( -/obj/structure/grille, -/turf/open/floor/plating/airless, -/area/engine/engineering) -"ctw" = ( -/obj/machinery/airalarm{ - dir = 4; - pixel_x = -23; - pixel_y = 0 - }, -/obj/machinery/computer/station_alert, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/ai_monitored/turret_protected/aisat_interior) -"ctx" = ( -/obj/machinery/atmospherics/pipe/manifold4w/scrubbers, -/turf/open/floor/plasteel/grimy, -/area/ai_monitored/turret_protected/aisat_interior) -"cty" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/grimy, -/area/ai_monitored/turret_protected/aisat_interior) -"ctz" = ( -/obj/machinery/door/poddoor/shutters{ - id = "teledoor"; - name = "MiniSat Teleport Access" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/aisat_interior) -"ctA" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/extinguisher_cabinet{ - pixel_x = -5; - pixel_y = 30 - }, -/turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/aisat_interior) -"ctB" = ( -/obj/structure/cable, -/obj/machinery/power/tracker, -/turf/open/floor/plasteel/airless/solarpanel, -/area/solar/starboard) -"ctC" = ( -/obj/machinery/camera/emp_proof{ - c_tag = "Singularity West"; - dir = 1; - network = list("Singularity") - }, -/turf/open/floor/plating/airless, -/area/engine/engineering) -"ctD" = ( -/obj/machinery/camera/emp_proof{ - c_tag = "Singularity East"; - dir = 1; - network = list("Singularity") - }, -/turf/open/floor/plating/airless, -/area/engine/engineering) -"ctE" = ( -/obj/machinery/teleport/hub, -/turf/open/floor/plating, -/area/ai_monitored/turret_protected/aisat_interior) -"ctF" = ( -/obj/machinery/button/door{ - id = "teledoor"; - name = "MiniSat Teleport Shutters Control"; - pixel_x = 0; - pixel_y = 25; - req_access_txt = "17;65" - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/darkwarning{ - dir = 4 - }, -/area/ai_monitored/turret_protected/aisat_interior) -"ctG" = ( -/obj/structure/chair/office/dark{ - dir = 8 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/turf/open/floor/plasteel/grimy, -/area/ai_monitored/turret_protected/aisat_interior) -"ctH" = ( -/obj/machinery/computer/security/telescreen/entertainment{ - pixel_x = -31 - }, -/obj/machinery/computer/monitor, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/ai_monitored/turret_protected/aisat_interior) -"ctI" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/grimy, -/area/ai_monitored/turret_protected/aisat_interior) -"ctJ" = ( -/obj/machinery/holopad, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8"; - tag = "" - }, -/obj/effect/landmark/start{ - name = "Cyborg" - }, -/turf/open/floor/plasteel/grimy, -/area/ai_monitored/turret_protected/aisat_interior) -"ctK" = ( -/obj/machinery/door/airlock/hatch{ - name = "MiniSat Teleporter"; - req_access_txt = "17;65" - }, -/turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/aisat_interior) -"ctL" = ( -/obj/machinery/teleport/station, -/obj/machinery/light/small{ - dir = 4 - }, -/turf/open/floor/plating, -/area/ai_monitored/turret_protected/aisat_interior) -"ctM" = ( -/obj/machinery/bluespace_beacon, -/turf/open/floor/plasteel/darkwarning{ - dir = 4 - }, -/area/ai_monitored/turret_protected/aisat_interior) -"ctN" = ( -/obj/machinery/atmospherics/pipe/simple/yellow/visible{ - icon_state = "intact"; - dir = 10 - }, -/obj/structure/lattice, -/turf/open/space, -/area/space) -"ctO" = ( -/obj/structure/lattice, -/obj/machinery/atmospherics/pipe/simple/yellow/visible{ - icon_state = "intact"; - dir = 5 - }, -/turf/open/space, -/area/space) -"ctP" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/plasteel/grimy, -/area/ai_monitored/turret_protected/aisat_interior) -"ctQ" = ( -/obj/structure/table, -/obj/machinery/microwave{ - pixel_x = 0; - pixel_y = 4 - }, -/obj/machinery/firealarm{ - dir = 8; - pixel_x = -24 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/ai_monitored/turret_protected/aisat_interior) -"ctR" = ( -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'RADIOACTIVE AREA'"; - icon_state = "radiation"; - name = "RADIOACTIVE AREA"; - pixel_x = 0; - pixel_y = 0 - }, -/turf/closed/wall, -/area/engine/engineering) -"ctS" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/turf/open/floor/plasteel/grimy, -/area/ai_monitored/turret_protected/aisat_interior) -"ctT" = ( -/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/grimy, -/area/ai_monitored/turret_protected/aisat_interior) -"ctU" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/ai_monitored/turret_protected/aisat_interior) -"ctV" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/machinery/power/apc{ - dir = 4; - name = "MiniSat Foyer APC"; - pixel_x = 27; - pixel_y = 0 - }, -/obj/structure/chair, -/turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/aisat_interior) -"ctW" = ( -/obj/machinery/computer/teleporter, -/turf/open/floor/plating, -/area/ai_monitored/turret_protected/aisat_interior) -"ctX" = ( -/obj/machinery/camera{ - c_tag = "MiniSat Teleporter"; - dir = 1; - network = list("MiniSat"); - pixel_x = 0; - pixel_y = 0; - start_active = 1 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/plasteel/darkwarning{ - dir = 4 - }, -/area/ai_monitored/turret_protected/aisat_interior) -"ctY" = ( -/obj/machinery/atmospherics/pipe/simple/yellow/visible, -/obj/machinery/meter, -/turf/closed/wall/r_wall, -/area/ai_monitored/turret_protected/AIsatextAS{ - name = "AI Satellite Atmospherics" - }) -"ctZ" = ( -/turf/closed/wall/r_wall, -/area/ai_monitored/turret_protected/AIsatextAS{ - name = "AI Satellite Atmospherics" - }) -"cua" = ( -/turf/closed/wall, -/area/ai_monitored/turret_protected/aisat_interior) -"cub" = ( -/obj/item/device/radio/intercom{ - name = "Station Intercom (General)"; - pixel_x = 0; - pixel_y = -29 - }, -/obj/machinery/light/small, -/turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/aisat_interior) -"cuc" = ( -/obj/structure/rack{ - dir = 1 - }, -/obj/machinery/status_display{ - pixel_y = -32 - }, -/obj/item/weapon/storage/box/donkpockets, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/ai_monitored/turret_protected/aisat_interior) -"cud" = ( -/obj/machinery/turretid{ - control_area = null; - enabled = 1; - icon_state = "control_standby"; - name = "Antechamber Turret Control"; - pixel_x = 0; - pixel_y = -24; - req_access = list(65) - }, -/obj/machinery/light/small, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/camera/motion{ - c_tag = "MiniSat Foyer"; - dir = 1; - network = list("MiniSat") - }, -/turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/aisat_interior) -"cue" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/aisat_interior) -"cuf" = ( -/turf/closed/wall/r_wall, -/area/ai_monitored/turret_protected/AIsatextFP{ - name = "AI Satellite Service" - }) -"cug" = ( -/obj/machinery/ai_status_display{ - pixel_y = -32 - }, -/obj/structure/table, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/ai_monitored/turret_protected/aisat_interior) -"cuh" = ( -/obj/machinery/atmospherics/pipe/simple/yellow/visible, -/obj/structure/rack, -/obj/item/weapon/wrench, -/obj/item/weapon/crowbar/red, -/obj/item/clothing/head/welding, -/turf/open/floor/plating, -/area/ai_monitored/turret_protected/AIsatextAS{ - name = "AI Satellite Atmospherics" - }) -"cui" = ( -/obj/machinery/atmospherics/components/unary/tank/air, -/turf/open/floor/plating, -/area/ai_monitored/turret_protected/AIsatextAS{ - name = "AI Satellite Atmospherics" - }) -"cuj" = ( -/turf/closed/wall/r_wall, -/area/ai_monitored/turret_protected/aisat_interior) -"cuk" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall/r_wall, -/area/ai_monitored/turret_protected/aisat_interior) -"cul" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/hatch{ - name = "MiniSat Antechamber"; - req_one_access_txt = "65" - }, -/turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/aisat_interior) -"cum" = ( -/obj/machinery/recharge_station, -/turf/open/floor/plating, -/area/ai_monitored/turret_protected/AIsatextFP{ - name = "AI Satellite Service" - }) -"cun" = ( -/obj/machinery/atmospherics/components/binary/pump{ - dir = 2; - name = "Mix to MiniSat" - }, -/turf/open/floor/plating/warnplate{ - icon_plating = "warnplate" - }, -/area/ai_monitored/turret_protected/AIsatextAS{ - name = "AI Satellite Atmospherics" - }) -"cuo" = ( -/obj/machinery/portable_atmospherics/canister/air, -/obj/machinery/firealarm{ - dir = 8; - pixel_x = -24 - }, -/turf/open/floor/plating/warnplate/corner{ - tag = "icon-warnplatecorner"; - dir = 2 - }, -/area/ai_monitored/turret_protected/AIsatextAS{ - name = "AI Satellite Atmospherics" - }) -"cup" = ( -/obj/structure/showcase{ - density = 0; - desc = "An old, deactivated cyborg. Whilst once actively used to guard against intruders, it now simply intimidates them with its cold, steely gaze."; - dir = 8; - icon = 'icons/mob/robots.dmi'; - icon_state = "robot_old"; - name = "Cyborg Statue"; - pixel_x = 9; - pixel_y = 2 - }, -/obj/structure/extinguisher_cabinet{ - pixel_x = -5; - pixel_y = 30 - }, -/turf/open/floor/plating/warnplate{ - icon_plating = "warnplate" - }, -/area/ai_monitored/turret_protected/AIsatextAS{ - name = "AI Satellite Atmospherics" - }) -"cuq" = ( -/obj/machinery/atmospherics/components/binary/pump{ - dir = 0; - name = "Air Out"; - on = 0 - }, -/turf/open/floor/plating/warnplate{ - icon_plating = "warnplate" - }, -/area/ai_monitored/turret_protected/AIsatextAS{ - name = "AI Satellite Atmospherics" - }) -"cur" = ( -/obj/structure/showcase{ - density = 0; - desc = "An old, deactivated cyborg. Whilst once actively used to guard against intruders, it now simply intimidates them with its cold, steely gaze."; - dir = 4; - icon = 'icons/mob/robots.dmi'; - icon_state = "robot_old"; - name = "Cyborg Statue"; - pixel_x = -9; - pixel_y = 2 - }, -/turf/open/floor/plasteel/darkblue/corner{ - dir = 1 - }, -/area/ai_monitored/turret_protected/aisat_interior) -"cus" = ( -/obj/structure/showcase{ - density = 0; - desc = "An old, deactivated cyborg. Whilst once actively used to guard against intruders, it now simply intimidates them with its cold, steely gaze."; - dir = 8; - icon = 'icons/mob/robots.dmi'; - icon_state = "robot_old"; - name = "Cyborg Statue"; - pixel_x = 9; - pixel_y = 2 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/plasteel/darkblue/corner{ - dir = 4 - }, -/area/ai_monitored/turret_protected/aisat_interior) -"cut" = ( -/obj/structure/table, -/obj/item/stack/sheet/metal{ - amount = 50 - }, -/obj/item/stack/sheet/glass{ - amount = 50 - }, -/obj/item/stack/rods{ - amount = 50 - }, -/turf/open/floor/mineral/plastitanium, -/area/shuttle/syndicate) -"cuu" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 8 - }, -/turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/aisat_interior) -"cuv" = ( -/obj/structure/showcase{ - density = 0; - desc = "An old, deactivated cyborg. Whilst once actively used to guard against intruders, it now simply intimidates them with its cold, steely gaze."; - dir = 4; - icon = 'icons/mob/robots.dmi'; - icon_state = "robot_old"; - name = "Cyborg Statue"; - pixel_x = -9; - pixel_y = 2 - }, -/obj/structure/extinguisher_cabinet{ - pixel_x = 5; - pixel_y = 30 - }, -/turf/open/floor/plating/warnplate{ - icon_plating = "warnplate" - }, -/area/ai_monitored/turret_protected/AIsatextFP{ - name = "AI Satellite Service" - }) -"cuw" = ( -/turf/open/floor/plating/warnplate{ - icon_plating = "warnplate" - }, -/area/ai_monitored/turret_protected/AIsatextFP{ - name = "AI Satellite Service" - }) -"cux" = ( -/obj/structure/table, -/obj/item/stack/sheet/metal{ - amount = 50 - }, -/obj/item/stack/sheet/glass{ - amount = 50 - }, -/obj/item/clothing/head/welding, -/obj/item/stack/sheet/mineral/plasma{ - amount = 35; - layer = 3.1 - }, -/obj/machinery/firealarm{ - dir = 4; - pixel_x = 24 - }, -/turf/open/floor/plating/warnplate/corner{ - dir = 1 - }, -/area/ai_monitored/turret_protected/AIsatextFP{ - name = "AI Satellite Service" - }) -"cuy" = ( -/turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/aisat_interior) -"cuz" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/AIsatextAS{ - name = "AI Satellite Atmospherics" - }) -"cuA" = ( -/obj/machinery/light/small{ - dir = 8 - }, -/obj/machinery/camera{ - c_tag = "MiniSat Atmospherics"; - dir = 4; - network = list("MiniSat"); - pixel_x = 0; - pixel_y = 0; - start_active = 1 - }, -/obj/machinery/airalarm{ - dir = 4; - pixel_x = -23; - pixel_y = 0 - }, -/obj/machinery/space_heater, -/turf/open/floor/plating/warnplate{ - dir = 4 - }, -/area/ai_monitored/turret_protected/AIsatextAS{ - name = "AI Satellite Atmospherics" - }) -"cuB" = ( -/obj/machinery/light/small{ - dir = 4 - }, -/obj/item/device/radio/intercom{ - name = "Station Intercom (General)"; - pixel_x = 28; - pixel_y = 0 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/darkblue/corner{ - dir = 4 - }, -/area/ai_monitored/turret_protected/AIsatextAS{ - name = "AI Satellite Atmospherics" - }) -"cuC" = ( -/obj/machinery/holopad, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/AIsatextAS{ - name = "AI Satellite Atmospherics" - }) -"cuD" = ( -/obj/machinery/light/small{ - dir = 8 - }, -/obj/machinery/camera{ - c_tag = "MiniSat Antechamber"; - dir = 4; - network = list("MiniSat"); - pixel_x = 0; - pixel_y = 0; - start_active = 1 - }, -/obj/machinery/turretid{ - control_area = "AI Satellite Atmospherics"; - enabled = 1; - icon_state = "control_standby"; - name = "Atmospherics Turret Control"; - pixel_x = -27; - pixel_y = 0; - req_access = list(65) - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/darkblue/corner{ - dir = 1 - }, -/area/ai_monitored/turret_protected/aisat_interior) -"cuE" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall/r_wall, -/area/ai_monitored/turret_protected/aisat_interior) -"cuF" = ( -/obj/machinery/light/small{ - dir = 4 - }, -/obj/machinery/turretid{ - control_area = "AI Satellite Service"; - enabled = 1; - icon_state = "control_standby"; - name = "Service Bay Turret Control"; - pixel_x = 27; - pixel_y = 0; - req_access = list(65) - }, -/obj/machinery/atmospherics/pipe/manifold4w/scrubbers, -/turf/open/floor/plasteel/darkblue/corner{ - dir = 4 - }, -/area/ai_monitored/turret_protected/aisat_interior) -"cuG" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/holopad, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/aisat_interior) -"cuH" = ( -/obj/machinery/light/small{ - dir = 8 - }, -/obj/item/device/radio/intercom{ - name = "Station Intercom (General)"; - pixel_x = -28; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/darkblue/corner{ - dir = 1 - }, -/area/ai_monitored/turret_protected/AIsatextFP{ - name = "AI Satellite Service" - }) -"cuI" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/AIsatextFP{ - name = "AI Satellite Service" - }) -"cuJ" = ( -/obj/machinery/holopad, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/AIsatextFP{ - name = "AI Satellite Service" - }) -"cuK" = ( -/obj/machinery/light/small{ - dir = 4 - }, -/obj/machinery/camera{ - c_tag = "MiniSat Service Bay"; - dir = 8; - network = list("MiniSat"); - pixel_x = 0; - pixel_y = 0; - start_active = 1 - }, -/obj/machinery/airalarm{ - dir = 8; - icon_state = "alarm0"; - pixel_x = 24 - }, -/obj/structure/rack, -/obj/item/weapon/storage/toolbox/electrical{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/weapon/storage/toolbox/mechanical, -/obj/item/device/multitool, -/turf/open/floor/plating/warnplate{ - dir = 8 - }, -/area/ai_monitored/turret_protected/AIsatextFP{ - name = "AI Satellite Service" - }) -"cuL" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 5 - }, -/turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/AIsatextAS{ - name = "AI Satellite Atmospherics" - }) -"cuM" = ( -/obj/machinery/power/apc{ - dir = 8; - name = "MiniSat Atmospherics APC"; - pixel_x = -27; - pixel_y = 0 - }, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/machinery/portable_atmospherics/scrubber, -/turf/open/floor/plating/warnplate{ - dir = 4 - }, -/area/ai_monitored/turret_protected/AIsatextAS{ - name = "AI Satellite Atmospherics" - }) -"cuN" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 1 - }, -/turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/AIsatextAS{ - name = "AI Satellite Atmospherics" - }) -"cuO" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/ai_slipper{ - icon_state = "motion0"; - uses = 10 - }, -/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, -/turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/AIsatextAS{ - name = "AI Satellite Atmospherics" - }) -"cuP" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/aisat_interior) -"cuQ" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/hatch{ - name = "MiniSat Atmospherics"; - req_one_access_txt = "65" - }, -/turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/aisat_interior) -"cuR" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/aisat_interior) -"cuS" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8"; - tag = "" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/machinery/ai_slipper{ - icon_state = "motion0"; - uses = 10 - }, -/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, -/mob/living/simple_animal/bot/secbot/pingsky, -/turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/aisat_interior) -"cuT" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 10 - }, -/turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/AIsatextFP{ - name = "AI Satellite Service" - }) -"cuU" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/hatch{ - name = "MiniSat Service Bay"; - req_one_access_txt = "65" - }, -/turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/aisat_interior) -"cuV" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/AIsatextFP{ - name = "AI Satellite Service" - }) -"cuW" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/ai_slipper{ - icon_state = "motion0"; - uses = 10 - }, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8"; - tag = "" - }, -/turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/AIsatextFP{ - name = "AI Satellite Service" - }) -"cuX" = ( -/obj/machinery/power/apc{ - dir = 4; - name = "MiniSat Service Bay APC"; - pixel_x = 27; - pixel_y = 0 - }, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/machinery/power/port_gen/pacman, -/turf/open/floor/plating/warnplate{ - dir = 8 - }, -/area/ai_monitored/turret_protected/AIsatextFP{ - name = "AI Satellite Service" - }) -"cuY" = ( -/obj/machinery/porta_turret/ai{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/ai_monitored/turret_protected/AIsatextAS{ - name = "AI Satellite Atmospherics" - }) -"cuZ" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/mob/living/simple_animal/bot/floorbot, -/turf/open/floor/plasteel/darkblue/corner, -/area/ai_monitored/turret_protected/AIsatextAS{ - name = "AI Satellite Atmospherics" - }) -"cva" = ( -/turf/closed/wall/r_wall, -/area/ai_monitored/turret_protected/ai) -"cvb" = ( -/obj/machinery/ai_status_display, -/turf/closed/wall/r_wall, -/area/ai_monitored/turret_protected/ai) -"cvc" = ( -/obj/structure/sign/securearea{ - pixel_x = -32; - pixel_y = 0 - }, -/obj/machinery/porta_turret/ai{ - dir = 4 - }, -/obj/item/device/radio/intercom{ - broadcasting = 1; - frequency = 1447; - listening = 0; - name = "Station Intercom (AI Private)"; - pixel_y = -29 - }, -/turf/open/floor/plasteel/darkblue/corner{ - dir = 8 - }, -/area/ai_monitored/turret_protected/aisat_interior) -"cvd" = ( -/obj/machinery/porta_turret/ai{ - dir = 4 - }, -/obj/structure/sign/securearea{ - pixel_x = 32; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/darkblue/corner, -/area/ai_monitored/turret_protected/aisat_interior) -"cve" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/obj/machinery/turretid{ - control_area = "AI Satellite Hallway"; - enabled = 1; - icon_state = "control_standby"; - name = "Chamber Hallway Turret Control"; - pixel_x = 32; - pixel_y = -24; - req_access = list(65) - }, -/turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/aisat_interior) -"cvf" = ( -/obj/machinery/status_display, -/turf/closed/wall/r_wall, -/area/ai_monitored/turret_protected/ai) -"cvg" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/mob/living/simple_animal/bot/cleanbot, -/turf/open/floor/plasteel/darkblue/corner{ - dir = 8 - }, -/area/ai_monitored/turret_protected/AIsatextFP{ - name = "AI Satellite Service" - }) -"cvh" = ( -/obj/machinery/porta_turret/ai{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/ai_monitored/turret_protected/AIsatextFP{ - name = "AI Satellite Service" - }) -"cvi" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/AIsatextFP{ - name = "AI Satellite Service" - }) -"cvj" = ( -/turf/closed/wall, -/area/ai_monitored/turret_protected/AIsatextFS{ - name = "AI Satellite Hallway" - }) -"cvk" = ( -/turf/closed/wall/r_wall, -/area/ai_monitored/turret_protected/AIsatextFS{ - name = "AI Satellite Hallway" - }) -"cvl" = ( -/turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai) -"cvm" = ( -/obj/machinery/door/airlock/maintenance_hatch{ - name = "MiniSat Maintenance"; - req_access_txt = "65" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/ai_monitored/turret_protected/AIsatextFS{ - name = "AI Satellite Hallway" - }) -"cvn" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall/r_wall, -/area/ai_monitored/turret_protected/AIsatextFS{ - name = "AI Satellite Hallway" - }) -"cvo" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/hatch{ - name = "MiniSat Chamber Hallway"; - req_one_access_txt = "65" - }, -/turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/AIsatextFS{ - name = "AI Satellite Hallway" - }) -"cvp" = ( -/turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/ai) -"cvq" = ( -/obj/machinery/door/airlock/maintenance_hatch{ - name = "MiniSat Maintenance"; - req_access_txt = "65" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plating, -/area/ai_monitored/turret_protected/AIsatextFS{ - name = "AI Satellite Hallway" - }) -"cvr" = ( -/obj/machinery/porta_turret/ai{ - dir = 4 - }, -/turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/ai) -"cvs" = ( -/obj/machinery/portable_atmospherics/scrubber, -/turf/open/floor/plating, -/area/ai_monitored/turret_protected/AIsatextFS{ - name = "AI Satellite Hallway" - }) -"cvt" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/ai_monitored/turret_protected/AIsatextFS{ - name = "AI Satellite Hallway" - }) -"cvu" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/ai_monitored/turret_protected/AIsatextFS{ - name = "AI Satellite Hallway" - }) -"cvv" = ( -/turf/closed/wall, -/area/ai_monitored/turret_protected/ai) -"cvw" = ( -/turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/AIsatextFS{ - name = "AI Satellite Hallway" - }) -"cvx" = ( -/obj/effect/landmark{ - name = "tripai" - }, -/obj/item/device/radio/intercom{ - anyai = 1; - freerange = 1; - listening = 0; - name = "Custom Channel"; - pixel_x = 0; - pixel_y = 28 - }, -/obj/item/device/radio/intercom{ - broadcasting = 0; - freerange = 1; - listening = 1; - name = "Common Channel"; - pixel_x = -27; - pixel_y = 5 - }, -/obj/item/device/radio/intercom{ - anyai = 1; - broadcasting = 0; - freerange = 1; - frequency = 1447; - name = "Private Channel"; - pixel_x = 0; - pixel_y = -25 - }, -/turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/ai) -"cvy" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/ai_monitored/turret_protected/AIsatextFS{ - name = "AI Satellite Hallway" - }) -"cvz" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/AIsatextFS{ - name = "AI Satellite Hallway" - }) -"cvA" = ( -/obj/effect/landmark{ - name = "tripai" - }, -/obj/item/device/radio/intercom{ - anyai = 1; - freerange = 1; - listening = 0; - name = "Custom Channel"; - pixel_x = 0; - pixel_y = 28 - }, -/obj/item/device/radio/intercom{ - broadcasting = 0; - freerange = 1; - listening = 1; - name = "Common Channel"; - pixel_x = 27; - pixel_y = 5 - }, -/obj/item/device/radio/intercom{ - anyai = 1; - broadcasting = 0; - freerange = 1; - frequency = 1447; - name = "Private Channel"; - pixel_x = 0; - pixel_y = -25 - }, -/turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/ai) -"cvB" = ( -/obj/structure/rack, -/obj/item/weapon/crowbar/red, -/obj/item/weapon/wrench, -/turf/open/floor/plating, -/area/ai_monitored/turret_protected/AIsatextFS{ - name = "AI Satellite Hallway" - }) -"cvC" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plating, -/area/ai_monitored/turret_protected/AIsatextFS{ - name = "AI Satellite Hallway" - }) -"cvD" = ( -/obj/structure/reagent_dispensers/watertank, -/turf/open/floor/plating, -/area/ai_monitored/turret_protected/AIsatextFS{ - name = "AI Satellite Hallway" - }) -"cvE" = ( -/obj/structure/reagent_dispensers/fueltank, -/turf/open/floor/plating, -/area/ai_monitored/turret_protected/AIsatextFS{ - name = "AI Satellite Hallway" - }) -"cvF" = ( -/obj/structure/lattice, -/obj/machinery/camera{ - c_tag = "MiniSat External NorthWest"; - dir = 8; - network = list("MiniSat"); - pixel_x = 0; - pixel_y = 0; - start_active = 1 - }, -/turf/open/space, -/area/space) -"cvG" = ( -/obj/machinery/porta_turret/ai{ - dir = 4; - installation = /obj/item/weapon/gun/energy/e_gun - }, -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/AIsatextFS{ - name = "AI Satellite Hallway" - }) -"cvH" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/ai_monitored/turret_protected/AIsatextFS{ - name = "AI Satellite Hallway" - }) -"cvI" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 4; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/AIsatextFS{ - name = "AI Satellite Hallway" - }) -"cvJ" = ( -/obj/machinery/porta_turret/ai{ - dir = 4; - installation = /obj/item/weapon/gun/energy/e_gun - }, -/obj/machinery/light{ - icon_state = "tube1"; - dir = 4 - }, -/turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/AIsatextFS{ - name = "AI Satellite Hallway" - }) -"cvK" = ( -/obj/structure/lattice, -/obj/machinery/camera{ - c_tag = "MiniSat External NorthEast"; - dir = 4; - network = list("MiniSat"); - pixel_x = 0; - pixel_y = 0; - start_active = 1 - }, -/turf/open/space, -/area/space) -"cvL" = ( -/obj/structure/sign/securearea{ - pixel_x = 32; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/ai_monitored/turret_protected/AIsatextFS{ - name = "AI Satellite Hallway" - }) -"cvM" = ( -/obj/machinery/camera/motion{ - c_tag = "MiniSat Core Hallway"; - dir = 4; - network = list("MiniSat") - }, -/obj/machinery/firealarm{ - dir = 8; - pixel_x = -24 - }, -/turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/AIsatextFS{ - name = "AI Satellite Hallway" - }) -"cvN" = ( -/obj/structure/sign/securearea{ - pixel_x = -32; - pixel_y = 0 - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plating, -/area/ai_monitored/turret_protected/AIsatextFS{ - name = "AI Satellite Hallway" - }) -"cvO" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"cvP" = ( -/obj/machinery/door/airlock/maintenance_hatch{ - name = "MiniSat Maintenance"; - req_access_txt = "65" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/ai_monitored/turret_protected/AIsatextFS{ - name = "AI Satellite Hallway" - }) -"cvQ" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 5 - }, -/turf/open/floor/plating, -/area/ai_monitored/turret_protected/AIsatextFS{ - name = "AI Satellite Hallway" - }) -"cvR" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 10 - }, -/turf/open/floor/plating, -/area/ai_monitored/turret_protected/AIsatextFS{ - name = "AI Satellite Hallway" - }) -"cvS" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/AIsatextFS{ - name = "AI Satellite Hallway" - }) -"cvT" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/holopad, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/AIsatextFS{ - name = "AI Satellite Hallway" - }) -"cvU" = ( -/obj/machinery/door/airlock/maintenance_hatch{ - name = "MiniSat Maintenance"; - req_access_txt = "65" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/turf/open/floor/plating, -/area/ai_monitored/turret_protected/AIsatextFS{ - name = "AI Satellite Hallway" - }) -"cvV" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/AIsatextFS{ - name = "AI Satellite Hallway" - }) -"cvW" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/turf/open/floor/plating, -/area/ai_monitored/turret_protected/AIsatextFS{ - name = "AI Satellite Hallway" - }) -"cvX" = ( -/turf/open/floor/plating, -/area/ai_monitored/turret_protected/AIsatextFS{ - name = "AI Satellite Hallway" - }) -"cvY" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/ai_monitored/turret_protected/AIsatextFS{ - name = "AI Satellite Hallway" - }) -"cvZ" = ( -/obj/machinery/airalarm{ - dir = 4; - pixel_x = -23; - pixel_y = 0 - }, -/turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/AIsatextFS{ - name = "AI Satellite Hallway" - }) -"cwa" = ( -/obj/structure/cable, -/obj/machinery/power/apc{ - dir = 4; - name = "MiniSat Chamber Hallway APC"; - pixel_x = 27; - pixel_y = 0 - }, -/turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/AIsatextFS{ - name = "AI Satellite Hallway" - }) -"cwb" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 5 - }, -/turf/open/floor/plating, -/area/ai_monitored/turret_protected/AIsatextFS{ - name = "AI Satellite Hallway" - }) -"cwc" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - on = 1 - }, -/turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/AIsatextFS{ - name = "AI Satellite Hallway" - }) -"cwd" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/item/device/radio/intercom{ - broadcasting = 1; - frequency = 1447; - listening = 0; - name = "Station Intercom (AI Private)"; - pixel_x = -28; - pixel_y = -29 - }, -/turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/AIsatextFS{ - name = "AI Satellite Hallway" - }) -"cwe" = ( -/obj/structure/sign/securearea, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall/r_wall, -/area/ai_monitored/turret_protected/ai) -"cwf" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/hatch{ - name = "MiniSat Chamber Observation"; - req_one_access_txt = "65" - }, -/turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai) -"cwg" = ( -/obj/machinery/airalarm{ - frequency = 1439; - pixel_y = 23 - }, -/obj/structure/chair{ - dir = 8 - }, -/turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai) -"cwh" = ( -/obj/machinery/light/small{ - dir = 1 - }, -/obj/structure/table/reinforced, -/obj/item/weapon/paper_bin{ - pixel_x = -3; - pixel_y = 7 - }, -/obj/item/weapon/pen{ - pixel_x = 4; - pixel_y = 4 - }, -/turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai) -"cwi" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 8 - }, -/turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai) -"cwj" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai) -"cwk" = ( -/obj/machinery/light/small{ - dir = 1 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 8; - on = 1; - scrub_Toxins = 0 - }, -/obj/machinery/firealarm{ - dir = 4; - pixel_x = 24 - }, -/turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai) -"cwl" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai) -"cwm" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/folder/white, -/turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai) -"cwn" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai) -"cwo" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai) -"cwp" = ( -/obj/structure/chair/office/dark, -/obj/structure/extinguisher_cabinet{ - pixel_x = 27; - pixel_y = 0 - }, -/turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai) -"cwq" = ( -/obj/structure/grille, -/turf/open/floor/plating, -/area/ai_monitored/turret_protected/AIsatextFS{ - name = "AI Satellite Hallway" - }) -"cwr" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/ai_monitored/turret_protected/ai) -"cws" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/ai_monitored/turret_protected/ai) -"cwt" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass_command{ - name = "AI Core"; - req_access_txt = "65" - }, -/turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai) -"cwu" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/ai_slipper{ - icon_state = "motion0"; - uses = 10 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai) -"cwv" = ( -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/obj/machinery/status_display{ - pixel_x = -32 - }, -/turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/ai) -"cww" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai) -"cwx" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 6 - }, -/turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai) -"cwy" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/table_frame, -/obj/item/weapon/wirerod, -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"cwz" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 5 - }, -/turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai) -"cwA" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/machinery/holopad, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 9; - pixel_y = 0 - }, -/turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai) -"cwB" = ( -/obj/machinery/light{ - icon_state = "tube1"; - dir = 4 - }, -/obj/machinery/ai_status_display{ - pixel_x = 32 - }, -/turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/ai) -"cwC" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 10 - }, -/turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai) -"cwD" = ( -/obj/structure/window/reinforced{ - dir = 1 - }, -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/machinery/turretid{ - name = "AI Chamber turret control"; - pixel_x = 5; - pixel_y = -24 - }, -/turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/ai) -"cwE" = ( -/obj/structure/window/reinforced{ - dir = 1 - }, -/obj/structure/window/reinforced{ - dir = 4 - }, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/machinery/power/apc{ - cell_type = 5000; - dir = 2; - name = "AI Chamber APC"; - pixel_y = -24 - }, -/obj/machinery/flasher{ - id = "AI"; - pixel_x = -11; - pixel_y = -24 - }, -/obj/machinery/camera/motion{ - c_tag = "MiniSat AI Chamber North"; - dir = 1; - network = list("MiniSat") - }, -/turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/ai) -"cwF" = ( -/obj/structure/chair{ - dir = 1 - }, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/escape) -"cwG" = ( -/obj/structure/table, -/obj/item/weapon/storage/firstaid/regular{ - pixel_x = 2; - pixel_y = 3 - }, -/obj/item/weapon/crowbar, -/turf/open/floor/mineral/titanium, -/area/shuttle/escape) -"cwH" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2) -"cwI" = ( -/turf/closed/wall/mineral/titanium, -/area/shuttle/escape) -"cwJ" = ( -/obj/structure/chair{ - dir = 8 - }, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/escape) -"cwK" = ( -/obj/machinery/computer/atmos_alert, -/turf/open/floor/mineral/titanium, -/area/shuttle/escape) -"cwL" = ( -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/escape) -"cwM" = ( -/obj/structure/rack, -/obj/item/weapon/storage/box/teargas{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/weapon/storage/box/handcuffs, -/obj/item/weapon/storage/box/flashbangs{ - pixel_x = 3; - pixel_y = -3 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/ai_monitored/security/armory) -"cwN" = ( -/obj/machinery/computer/security, -/turf/open/floor/mineral/titanium, -/area/shuttle/escape) -"cwO" = ( -/obj/structure/chair{ - dir = 8 - }, -/obj/structure/extinguisher_cabinet{ - pixel_x = 0; - pixel_y = -30 - }, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/escape) -"cwP" = ( -/obj/machinery/computer/crew, -/turf/open/floor/mineral/titanium, -/area/shuttle/escape) -"cwQ" = ( -/obj/machinery/button/flasher{ - id = "cockpit_flasher"; - pixel_x = 6; - pixel_y = -24 - }, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/escape) -"cwR" = ( -/obj/item/device/radio/intercom{ - name = "Station Intercom (General)"; - pixel_x = 0; - pixel_y = -29 - }, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/escape) -"cwS" = ( -/obj/machinery/computer/communications, -/turf/open/floor/mineral/titanium, -/area/shuttle/escape) -"cwT" = ( -/obj/machinery/camera{ - c_tag = "Arrivals Escape Pod 2"; - dir = 8 - }, -/obj/machinery/light/small, -/turf/open/floor/plating, -/area/hallway/secondary/entry) -"cwU" = ( -/obj/structure/shuttle/engine/propulsion/burst{ - tag = "icon-propulsion (WEST)"; - icon_state = "propulsion"; - dir = 8 - }, -/turf/closed/wall/mineral/titanium, -/area/shuttle/pod_1) -"cwV" = ( -/obj/docking_port/stationary/random{ - dir = 8; - id = "pod_asteroid1"; - name = "asteroid" - }, -/turf/open/space, -/area/space) -"cwW" = ( -/obj/machinery/status_display, -/turf/closed/wall/mineral/titanium, -/area/shuttle/escape) -"cwX" = ( -/obj/machinery/door/airlock/glass{ - name = "Emergency Shuttle Cockpit"; - req_access_txt = "19" - }, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/escape) -"cwY" = ( -/obj/structure/chair, -/turf/open/floor/mineral/plastitanium/brig, -/area/shuttle/escape) -"cwZ" = ( -/obj/machinery/flasher{ - id = "cockpit_flasher"; - pixel_x = 6; - pixel_y = 24 - }, -/turf/open/floor/mineral/titanium, -/area/shuttle/escape) -"cxa" = ( -/turf/open/floor/mineral/titanium, -/area/shuttle/escape) -"cxb" = ( -/obj/structure/table, -/obj/item/weapon/storage/firstaid/fire, -/obj/item/weapon/storage/firstaid/regular{ - pixel_x = 2; - pixel_y = 3 - }, -/obj/item/weapon/crowbar, -/turf/open/floor/mineral/titanium, -/area/shuttle/escape) -"cxc" = ( -/obj/structure/closet/emcloset, -/turf/open/floor/mineral/titanium, -/area/shuttle/escape) -"cxd" = ( -/obj/machinery/flasher{ - id = "shuttle_flasher"; - pixel_x = -24; - pixel_y = 6 - }, -/obj/machinery/button/flasher{ - id = "shuttle_flasher"; - pixel_x = -24; - pixel_y = -6 - }, -/turf/open/floor/mineral/plastitanium/brig, -/area/shuttle/escape) -"cxe" = ( -/turf/open/floor/mineral/plastitanium/brig, -/area/shuttle/escape) -"cxf" = ( -/obj/machinery/door/airlock/glass{ - name = "Emergency Shuttle Brig"; - req_access_txt = "2" - }, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/escape) -"cxg" = ( -/obj/machinery/door/airlock/titanium{ - name = "Emergency Shuttle Airlock"; - req_access_txt = "2" - }, -/turf/open/floor/mineral/plastitanium/brig, -/area/shuttle/escape) -"cxh" = ( -/obj/structure/chair{ - dir = 1 - }, -/turf/open/floor/mineral/plastitanium/brig, -/area/shuttle/escape) -"cxi" = ( -/obj/structure/chair, -/turf/open/floor/mineral/titanium, -/area/shuttle/escape) -"cxj" = ( -/obj/structure/table, -/turf/open/floor/mineral/titanium, -/area/shuttle/escape) -"cxk" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/turf/open/floor/plasteel/showroomfloor, -/area/security/warden) -"cxl" = ( -/obj/machinery/computer/shuttle/pod{ - pixel_x = 0; - pixel_y = -32; - possible_destinations = "pod_asteroid1"; - shuttleId = "pod1" - }, -/obj/structure/chair{ - dir = 8 - }, -/obj/machinery/status_display{ - density = 0; - layer = 3; - pixel_x = 0; - pixel_y = 32 - }, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/pod_1) -"cxm" = ( -/turf/closed/wall/mineral/titanium/nodiagonal, -/area/shuttle/escape) -"cxn" = ( -/obj/structure/lattice, -/obj/effect/landmark{ - name = "carpspawn" - }, -/turf/open/space, -/area/space) -"cxo" = ( -/obj/structure/extinguisher_cabinet{ - pixel_x = -5; - pixel_y = 30 - }, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/escape) -"cxp" = ( -/obj/structure/extinguisher_cabinet{ - pixel_x = 27; - pixel_y = 0 - }, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/escape) -"cxq" = ( -/obj/structure/chair{ - dir = 8 - }, -/obj/structure/window/reinforced{ - dir = 4 - }, -/turf/open/floor/mineral/titanium, -/area/shuttle/escape) -"cxr" = ( -/obj/structure/chair{ - dir = 4 - }, -/obj/structure/window/reinforced{ - dir = 8 - }, -/turf/open/floor/mineral/titanium, -/area/shuttle/escape) -"cxs" = ( -/obj/structure/chair{ - dir = 8 - }, -/turf/open/floor/mineral/titanium, -/area/shuttle/escape) -"cxt" = ( -/obj/structure/shuttle/engine/propulsion{ - icon_state = "propulsion"; - dir = 4 - }, -/turf/closed/wall/mineral/titanium, -/area/shuttle/transport) -"cxu" = ( -/turf/closed/wall/mineral/titanium, -/area/shuttle/transport) -"cxv" = ( -/obj/structure/window/shuttle, -/obj/structure/grille, -/turf/open/floor/plating, -/area/shuttle/transport) -"cxw" = ( -/obj/structure/grille, -/obj/structure/window/shuttle, -/turf/open/floor/plating, -/area/shuttle/transport) -"cxx" = ( -/obj/item/weapon/storage/pod{ - pixel_x = 6; - pixel_y = -28 - }, -/obj/item/device/radio/intercom{ - pixel_x = 0; - pixel_y = 25 - }, -/obj/structure/chair{ - dir = 8 - }, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/pod_1) -"cxy" = ( -/turf/open/floor/mineral/titanium/blue, -/turf/closed/wall/mineral/titanium/interior, -/area/shuttle/transport) -"cxz" = ( -/obj/machinery/computer/shuttle/ferry/request, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/transport) -"cxA" = ( -/turf/open/floor/plasteel/warning{ - dir = 8 - }, -/area/ai_monitored/security/armory) -"cxB" = ( -/obj/structure/chair, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/transport) -"cxC" = ( -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/transport) -"cxD" = ( -/obj/machinery/door/airlock/titanium, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/transport) -"cxE" = ( -/obj/machinery/door/airlock/titanium, -/obj/docking_port/mobile{ - dir = 8; - dwidth = 2; - height = 12; - id = "ferry"; - name = "ferry shuttle"; - port_angle = 0; - preferred_direction = 4; - roundstart_move = "ferry_away"; - width = 5 - }, -/obj/docking_port/stationary{ - dir = 8; - dwidth = 2; - height = 12; - id = "ferry_home"; - name = "port bay 2"; - turf_type = /turf/open/space; - width = 5 - }, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/transport) -"cxF" = ( -/obj/machinery/door/airlock/titanium{ - name = "Escape Pod Airlock" - }, -/obj/docking_port/mobile/pod{ - dir = 8; - id = "pod1"; - name = "escape pod 1"; - port_angle = 180 - }, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/pod_1) -"cxG" = ( -/obj/machinery/door/airlock/external{ - cyclelinkeddir = 4; - name = "Escape Pod Three"; - req_access_txt = "0" - }, -/turf/open/floor/plating, -/area/security/main) -"cxH" = ( -/obj/structure/closet/crate, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/transport) -"cxI" = ( -/obj/structure/chair{ - dir = 1 - }, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/transport) -"cxJ" = ( -/obj/machinery/door/airlock/external{ - cyclelinkeddir = 8; - name = "Labor Camp Shuttle Airlock"; - req_access_txt = "2" - }, -/turf/open/floor/plating, -/area/security/processing) -"cxK" = ( -/obj/machinery/door/airlock/titanium{ - name = "Emergency Shuttle Airlock" - }, -/turf/open/floor/plating, -/area/shuttle/escape) -"cxL" = ( -/obj/structure/extinguisher_cabinet{ - pixel_x = 0; - pixel_y = -30 - }, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/escape) -"cxM" = ( -/obj/machinery/door/airlock/titanium{ - name = "Emergency Shuttle Cargo" - }, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/escape) -"cxN" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/door/airlock/external{ - cyclelinkeddir = 1; - name = "Solar Maintenance"; - req_access = null; - req_access_txt = "10; 13" - }, -/turf/open/floor/plating, -/area/maintenance/auxsolarstarboard) -"cxO" = ( -/obj/machinery/door/airlock/glass{ - name = "Emergency Shuttle Infirmary" - }, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/escape) -"cxP" = ( -/obj/machinery/door/airlock/external{ - cyclelinkeddir = 8; - name = "Labor Camp Shuttle Airlock" - }, -/turf/open/floor/plating, -/area/security/processing) -"cxQ" = ( -/turf/open/floor/mineral/titanium/yellow, -/area/shuttle/escape) -"cxR" = ( -/obj/structure/extinguisher_cabinet{ - pixel_x = 27; - pixel_y = 0 - }, -/turf/open/floor/mineral/titanium/yellow, -/area/shuttle/escape) -"cxS" = ( -/obj/machinery/sleeper{ - icon_state = "sleeper-open"; - dir = 8 - }, -/turf/open/floor/mineral/titanium, -/area/shuttle/escape) -"cxT" = ( -/obj/structure/table, -/obj/item/weapon/storage/firstaid/fire, -/obj/item/weapon/storage/firstaid/regular{ - pixel_x = 2; - pixel_y = 3 - }, -/obj/item/weapon/crowbar, -/obj/structure/extinguisher_cabinet{ - pixel_x = 27; - pixel_y = 0 - }, -/turf/open/floor/mineral/titanium, -/area/shuttle/escape) -"cxU" = ( -/obj/structure/closet, -/turf/open/floor/mineral/titanium/yellow, -/area/shuttle/escape) -"cxV" = ( -/obj/structure/closet/crate, -/turf/open/floor/mineral/titanium/yellow, -/area/shuttle/escape) -"cxW" = ( -/obj/machinery/door/airlock/external{ - cyclelinkeddir = 2; - name = "External Access"; - req_access = null; - req_access_txt = "13" - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) -"cxX" = ( -/obj/structure/window/reinforced{ - dir = 1 - }, -/obj/structure/shuttle/engine/heater, -/turf/open/floor/plating/airless, -/area/shuttle/escape) -"cxY" = ( -/obj/machinery/camera{ - c_tag = "Arrivals Escape Pod 1"; - dir = 8 - }, -/obj/machinery/light/small, -/turf/open/floor/plating, -/area/hallway/secondary/entry) -"cxZ" = ( -/obj/structure/shuttle/engine/propulsion, -/turf/open/floor/plating/airless, -/area/shuttle/escape) -"cya" = ( -/obj/machinery/door/airlock/external{ - cyclelinkeddir = 8; - req_access_txt = "13" - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint) -"cyb" = ( -/obj/machinery/door/airlock/external{ - cyclelinkeddir = 1; - name = "Escape Pod One" - }, -/turf/open/floor/plating, -/area/hallway/secondary/entry) -"cyc" = ( -/turf/closed/wall/mineral/titanium, -/area/shuttle/abandoned) -"cyd" = ( -/obj/machinery/door/airlock/titanium, -/obj/docking_port/mobile{ - dheight = 0; - dir = 2; - dwidth = 11; - height = 22; - id = "whiteship"; - launch_status = 0; - name = "NT Medical Ship"; - port_angle = -90; - preferred_direction = 4; - roundstart_move = "whiteship_away"; - timid = null; - width = 35 - }, -/obj/docking_port/stationary{ - dir = 2; - dwidth = 11; - height = 22; - id = "whiteship_home"; - name = "SS13 Arrival Docking"; - turf_type = /turf/open/space; - width = 35 - }, -/turf/open/floor/mineral/titanium, -/area/shuttle/abandoned) -"cye" = ( -/obj/machinery/door/airlock/titanium, -/turf/open/floor/mineral/titanium, -/area/shuttle/abandoned) -"cyf" = ( -/obj/structure/shuttle/engine/propulsion{ - icon_state = "propulsion_l"; - dir = 4 - }, -/turf/open/floor/plating/airless, -/area/shuttle/abandoned) -"cyg" = ( -/obj/machinery/door/airlock/command{ - cyclelinkeddir = 1; - name = "Command Tool Storage"; - req_access = null; - req_access_txt = "19" - }, -/turf/open/floor/plasteel/black, -/area/ai_monitored/storage/eva) -"cyh" = ( -/obj/machinery/door/airlock/external{ - cyclelinkeddir = 8; - name = "Security Escape Airlock"; - req_access_txt = "2" - }, -/turf/open/floor/plating, -/area/hallway/secondary/exit) -"cyi" = ( -/turf/open/floor/mineral/titanium, -/area/shuttle/abandoned) -"cyj" = ( -/obj/structure/table, -/obj/item/weapon/screwdriver, -/turf/open/floor/mineral/titanium, -/area/shuttle/abandoned) -"cyk" = ( -/obj/structure/table, -/obj/item/device/radio/off, -/turf/open/floor/mineral/titanium, -/area/shuttle/abandoned) -"cyl" = ( -/obj/machinery/door/airlock/external{ - cyclelinkeddir = 8; - id_tag = null; - name = "Port Docking Bay 2"; - req_access_txt = "0" - }, -/turf/open/floor/plating, -/area/hallway/secondary/entry) -"cym" = ( -/obj/structure/shuttle/engine/propulsion{ - icon_state = "propulsion"; - dir = 4 - }, -/turf/open/floor/plating/airless, -/area/shuttle/abandoned) -"cyn" = ( -/turf/open/floor/plating, -/turf/closed/wall/mineral/titanium/interior, -/area/shuttle/abandoned) -"cyo" = ( -/obj/structure/shuttle/engine/heater{ - icon_state = "heater"; - dir = 8 - }, -/obj/structure/window/reinforced{ - dir = 4 - }, -/turf/open/floor/plating/airless, -/area/shuttle/abandoned) -"cyp" = ( -/obj/machinery/door/airlock/external{ - cyclelinkeddir = 4; - name = "Escape Airlock" - }, -/turf/open/floor/plating, -/area/hallway/secondary/exit) -"cyq" = ( -/obj/machinery/computer/pod{ - id = "oldship_gun" - }, -/turf/open/floor/mineral/titanium, -/area/shuttle/abandoned) -"cyr" = ( -/obj/machinery/door/airlock/external{ - cyclelinkeddir = 8; - name = "Cargo Escape Airlock" - }, -/turf/open/floor/plating, -/area/hallway/secondary/exit) -"cys" = ( -/turf/closed/wall/mineral/titanium, -/area/shuttle/supply) -"cyt" = ( -/obj/machinery/door/airlock/external{ - cyclelinkeddir = 1; - name = "Port Docking Bay 4"; - req_access_txt = "0" - }, -/turf/open/floor/plating, -/area/hallway/secondary/entry) -"cyu" = ( -/obj/machinery/door/airlock/external{ - cyclelinkeddir = 1; - name = "Port Docking Bay 3"; - req_access_txt = "0" - }, -/turf/open/floor/plating, -/area/hallway/secondary/entry) -"cyv" = ( -/turf/open/floor/plating, -/area/shuttle/abandoned) -"cyw" = ( -/turf/open/floor/mineral/titanium, -/turf/closed/wall/mineral/titanium/interior, -/area/shuttle/abandoned) -"cyx" = ( -/obj/structure/rack, -/obj/item/clothing/suit/space/hardsuit/medical, -/obj/item/clothing/mask/breath, -/turf/open/floor/mineral/titanium, -/area/shuttle/abandoned) -"cyy" = ( -/obj/machinery/mass_driver{ - dir = 4; - icon_state = "mass_driver"; - id = "oldship_gun" - }, -/turf/open/floor/plating, -/area/shuttle/abandoned) -"cyz" = ( -/obj/machinery/door/airlock/glass, -/turf/open/floor/plating, -/area/shuttle/abandoned) -"cyA" = ( -/obj/machinery/door/poddoor{ - id = "oldship_gun"; - name = "pod bay door" - }, -/turf/open/floor/plating, -/area/shuttle/abandoned) -"cyB" = ( -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/supply) -"cyC" = ( -/obj/machinery/door/airlock/external{ - cyclelinkeddir = 8; - req_access_txt = "13" - }, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"cyD" = ( -/obj/machinery/door/airlock/external{ - cyclelinkeddir = 8; - name = "Supply Dock Airlock"; - req_access_txt = "31" - }, -/turf/open/floor/plating, -/area/quartermaster/storage) -"cyE" = ( -/obj/machinery/door/airlock/external{ - cyclelinkeddir = 8; - name = "External Access"; - req_access = null; - req_access_txt = "13" - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"cyF" = ( -/obj/structure/shuttle/engine/propulsion{ - icon_state = "propulsion_r"; - dir = 4 - }, -/turf/open/floor/plating/airless, -/area/shuttle/abandoned) -"cyG" = ( -/obj/machinery/door/airlock/external{ - cyclelinkeddir = 8; - name = "Atmospherics External Airlock"; - req_access_txt = "24" - }, -/turf/open/floor/plating, -/area/atmos) -"cyH" = ( -/obj/machinery/door/airlock/titanium, -/turf/open/floor/plating, -/area/shuttle/abandoned) -"cyI" = ( -/obj/item/weapon/stock_parts/cell{ - charge = 100; - maxcharge = 15000 - }, -/turf/open/floor/mineral/titanium, -/area/shuttle/abandoned) -"cyJ" = ( -/obj/structure/rack, -/obj/item/weapon/tank/internals/emergency_oxygen, -/obj/item/weapon/tank/internals/emergency_oxygen, -/obj/item/weapon/tank/internals/emergency_oxygen, -/obj/item/weapon/tank/internals/emergency_oxygen, -/obj/item/weapon/storage/toolbox/mechanical, -/turf/open/floor/mineral/titanium, -/area/shuttle/abandoned) -"cyK" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/door/airlock/external{ - cyclelinkeddir = 8; - name = "Solar Maintenance"; - req_access = null; - req_access_txt = "10; 13" - }, -/turf/open/floor/plating, -/area/maintenance/portsolar) -"cyL" = ( -/obj/machinery/door/airlock/maintenance{ - req_access_txt = "12" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"cyM" = ( -/obj/machinery/door/airlock/engineering{ - cyclelinkeddir = 1; - name = "Engine Room"; - req_access_txt = "10" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/engine/engineering) -"cyN" = ( -/obj/machinery/conveyor{ - dir = 4; - id = "QMLoad2" - }, -/obj/machinery/door/poddoor{ - id = "QMLoaddoor2"; - name = "supply dock loading door" - }, -/turf/open/floor/plating, -/area/shuttle/supply) -"cyO" = ( -/obj/structure/chair{ - dir = 1 - }, -/turf/open/floor/mineral/titanium, -/area/shuttle/abandoned) -"cyP" = ( -/obj/item/weapon/shard{ - icon_state = "medium" - }, -/turf/open/floor/mineral/titanium, -/area/shuttle/abandoned) -"cyQ" = ( -/obj/machinery/door/airlock/titanium{ - name = "Supply Shuttle Airlock"; - req_access_txt = "31" - }, -/turf/open/floor/plating, -/area/shuttle/supply) -"cyR" = ( -/obj/structure/grille, -/obj/structure/window/shuttle, -/turf/open/floor/plating, -/area/shuttle/abandoned) -"cyS" = ( -/obj/machinery/button/door{ - dir = 2; - id = "QMLoaddoor2"; - name = "Loading Doors"; - pixel_x = 24; - pixel_y = 8 - }, -/obj/machinery/button/door{ - id = "QMLoaddoor"; - name = "Loading Doors"; - pixel_x = 24; - pixel_y = -8 - }, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/supply) -"cyT" = ( -/obj/machinery/door/airlock/titanium{ - name = "Supply Shuttle Airlock"; - req_access_txt = "31" - }, -/obj/docking_port/mobile/supply{ - dwidth = 5; - width = 12 - }, -/obj/docking_port/stationary{ - dir = 8; - dwidth = 5; - height = 7; - id = "supply_home"; - name = "Cargo Bay"; - width = 12 - }, -/turf/open/floor/plating, -/area/shuttle/supply) -"cyU" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/machinery/door/airlock/external{ - cyclelinkeddir = 1; - name = "Solar Maintenance"; - req_access = null; - req_access_txt = "10; 13" - }, -/turf/open/floor/plating, -/area/maintenance/starboardsolar) -"cyV" = ( -/obj/machinery/door/window, -/turf/open/floor/mineral/titanium/purple, -/area/shuttle/abandoned) -"cyW" = ( -/obj/structure/bed, -/obj/item/weapon/bedsheet, -/obj/structure/window/reinforced, -/obj/structure/window/reinforced{ - dir = 4 - }, -/turf/open/floor/mineral/titanium/purple, -/area/shuttle/abandoned) -"cyX" = ( -/obj/structure/table, -/turf/open/floor/mineral/titanium, -/area/shuttle/abandoned) -"cyY" = ( -/obj/structure/table, -/obj/item/weapon/gun/energy/laser/retro, -/turf/open/floor/mineral/titanium, -/area/shuttle/abandoned) -"cyZ" = ( -/obj/machinery/conveyor{ - dir = 4; - id = "QMLoad" - }, -/obj/machinery/door/poddoor{ - id = "QMLoaddoor"; - name = "supply dock loading door" - }, -/turf/open/floor/plating, -/area/shuttle/supply) -"cza" = ( -/obj/machinery/door/airlock/glass, -/turf/open/floor/mineral/titanium, -/area/shuttle/abandoned) -"czb" = ( -/obj/structure/chair{ - dir = 4 - }, -/obj/effect/decal/remains/human, -/turf/open/floor/mineral/titanium, -/area/shuttle/abandoned) -"czc" = ( -/obj/machinery/computer/shuttle/white_ship, -/turf/open/floor/mineral/titanium, -/area/shuttle/abandoned) -"czd" = ( -/obj/machinery/portable_atmospherics/canister/oxygen, -/turf/open/floor/mineral/titanium, -/area/shuttle/abandoned) -"cze" = ( -/obj/structure/table, -/obj/item/weapon/tank/internals/oxygen, -/turf/open/floor/mineral/titanium, -/area/shuttle/abandoned) -"czf" = ( -/turf/open/floor/mineral/titanium/blue, -/turf/closed/wall/mineral/titanium/interior, -/area/shuttle/supply) -"czg" = ( -/obj/machinery/door/airlock/external{ - cyclelinkeddir = 8; - name = "Escape Pod Four"; - req_access = null; - req_access_txt = "0"; - shuttledocked = 1 - }, -/turf/open/floor/plating, -/area/engine/engineering) -"czh" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/door/airlock/external{ - cyclelinkeddir = 1; - name = "Engineering External Access"; - req_access = null; - req_access_txt = "10;13" - }, -/obj/structure/fans/tiny, -/turf/open/floor/plating, -/area/engine/engineering) -"czi" = ( -/obj/machinery/door/airlock/titanium, -/turf/open/floor/plasteel/shuttle/white, -/area/shuttle/abandoned) -"czj" = ( -/obj/machinery/door/airlock/glass, -/turf/open/floor/plasteel/shuttle/white, -/area/shuttle/abandoned) -"czk" = ( -/obj/machinery/door/airlock/external{ - cyclelinkeddir = 8; - name = "MiniSat External Access"; - req_access = null; - req_access_txt = "65;13" - }, -/turf/open/floor/plating, -/area/ai_monitored/turret_protected/aisat_interior) -"czl" = ( -/obj/machinery/door/window/northright, -/obj/effect/decal/remains/human, -/turf/open/floor/mineral/titanium/purple, -/area/shuttle/abandoned) -"czm" = ( -/obj/structure/bed, -/obj/item/weapon/bedsheet, -/obj/structure/window/reinforced{ - dir = 1 - }, -/obj/structure/window/reinforced{ - dir = 8 - }, -/turf/open/floor/mineral/titanium/purple, -/area/shuttle/abandoned) -"czn" = ( -/obj/structure/frame/computer{ - anchored = 1 - }, -/turf/open/floor/plasteel/shuttle/white, -/area/shuttle/abandoned) -"czo" = ( -/turf/open/space, -/area/shuttle/syndicate) -"czp" = ( -/obj/structure/window/reinforced{ - dir = 1 - }, -/obj/structure/shuttle/engine/heater, -/turf/open/floor/plating/airless, -/area/shuttle/supply) -"czq" = ( -/obj/machinery/porta_turret/syndicate{ - dir = 5 - }, -/turf/closed/wall/mineral/plastitanium, -/area/shuttle/syndicate) -"czr" = ( -/obj/machinery/portable_atmospherics/scrubber, -/turf/open/floor/mineral/titanium, -/area/shuttle/abandoned) -"czs" = ( -/obj/structure/shuttle/engine/propulsion{ - icon_state = "burst_l" - }, -/turf/open/floor/plating/airless, -/area/shuttle/supply) -"czt" = ( -/obj/structure/shuttle/engine/propulsion, -/turf/open/floor/plating/airless, -/area/shuttle/supply) -"czu" = ( -/obj/structure/shuttle/engine/propulsion{ - icon_state = "burst_r" - }, -/turf/open/floor/plating/airless, -/area/shuttle/supply) -"czv" = ( -/turf/open/space, -/obj/machinery/porta_turret/syndicate{ - dir = 6 - }, -/turf/closed/wall/mineral/plastitanium{ - dir = 4; - icon_state = "diagonalWall3" - }, -/area/shuttle/syndicate) -"czw" = ( -/obj/item/device/multitool, -/turf/open/floor/mineral/titanium, -/area/shuttle/abandoned) -"czx" = ( -/obj/structure/chair, -/turf/open/floor/mineral/titanium, -/area/shuttle/abandoned) -"czy" = ( -/obj/structure/frame/computer{ - anchored = 1 - }, -/turf/open/floor/mineral/titanium, -/area/shuttle/abandoned) -"czz" = ( -/turf/open/space, -/obj/machinery/porta_turret/syndicate{ - dir = 10 - }, -/turf/closed/wall/mineral/plastitanium{ - icon_state = "diagonalWall3" - }, -/area/shuttle/syndicate) -"czA" = ( -/obj/item/weapon/scalpel, -/turf/open/floor/mineral/titanium, -/area/shuttle/abandoned) -"czB" = ( -/obj/structure/table, -/obj/item/weapon/storage/firstaid/regular{ - pixel_x = 6; - pixel_y = -5 - }, -/turf/open/floor/mineral/titanium, -/area/shuttle/abandoned) -"czC" = ( -/obj/machinery/sleeper{ - icon_state = "sleeper-open"; - dir = 8 - }, -/obj/effect/decal/remains/human, -/turf/open/floor/mineral/titanium, -/area/shuttle/abandoned) -"czD" = ( -/turf/open/floor/plating/airless/warnplate{ - dir = 6 - }, -/area/space/nearstation) -"czE" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plating, -/area/engine/engineering) -"czF" = ( -/obj/machinery/camera/emp_proof{ - c_tag = "Singularity North East"; - dir = 2; - network = list("Singularity") - }, -/obj/machinery/power/grounding_rod, -/turf/open/floor/plating/airless, -/area/engine/engineering) -"czG" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 6 - }, -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"czH" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"czI" = ( -/obj/item/weapon/wrench, -/obj/structure/lattice/catwalk, -/turf/open/space, -/area/space/nearstation) -"czJ" = ( -/obj/machinery/atmospherics/components/unary/outlet_injector/on{ - dir = 1 - }, -/turf/open/floor/plating/airless, -/area/maintenance/incinerator) -"czK" = ( -/turf/closed/wall, -/area/security/vacantoffice) -"czL" = ( -/obj/machinery/computer/shuttle/pod{ - pixel_y = -32; - possible_destinations = "pod_asteroid4"; - shuttleId = "pod4" - }, -/obj/structure/chair{ - dir = 4 - }, -/obj/machinery/status_display{ - density = 0; - layer = 3; - pixel_x = 0; - pixel_y = 32 - }, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/pod_4) -"czM" = ( -/obj/item/device/radio/intercom{ - pixel_y = 25 - }, -/obj/item/weapon/storage/pod{ - pixel_x = 6; - pixel_y = -32 - }, -/obj/structure/chair{ - dir = 4 - }, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/pod_4) -"czN" = ( -/obj/docking_port/stationary/random{ - dir = 4; - id = "pod_asteroid4"; - name = "asteroid" - }, -/turf/open/space, -/area/space) -"czO" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/effect/landmark/event_spawn, -/turf/open/floor/plasteel, -/area/hallway/secondary/exit) -"czP" = ( -/obj/structure/chair/stool/bar, -/obj/effect/landmark/event_spawn, -/turf/open/floor/plasteel/bar, -/area/crew_quarters/bar) -"czQ" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"czR" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"czS" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 6 - }, -/turf/open/floor/plating{ - icon_state = "platingdmg3" - }, -/area/maintenance/asmaint2) -"czT" = ( -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 5 - }, -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"czU" = ( -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"czV" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"czW" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 9 - }, -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"czX" = ( -/obj/machinery/door/airlock/maintenance{ - req_access_txt = "12" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"czY" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"czZ" = ( -/obj/structure/chair, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"cAa" = ( -/obj/structure/chair, -/obj/item/weapon/storage/fancy/cigarettes, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"cAb" = ( -/obj/structure/closet, -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"cAc" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/maintenance/aft) -"cAd" = ( -/obj/structure/reagent_dispensers/fueltank, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 9 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"cAe" = ( -/obj/structure/disposalpipe/segment, -/obj/structure/reagent_dispensers/fueltank, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"cAf" = ( -/obj/structure/disposaloutlet, -/obj/structure/disposalpipe/trunk{ - dir = 1 - }, -/turf/open/floor/plating/airless, -/area/space) -"cAg" = ( -/obj/effect/landmark/event_spawn, -/turf/open/floor/plasteel/cafeteria, -/area/crew_quarters/kitchen) -"cAh" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"cAi" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"cAj" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/turf/closed/wall/r_wall, -/area/engine/engine_smes) -"cAk" = ( -/obj/structure/cable/yellow{ - d1 = 2; - d2 = 4; - icon_state = "2-4"; - tag = "" - }, -/turf/open/floor/plating/airless, -/area/space/nearstation) -"cAl" = ( -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/turf/open/floor/plating/airless, -/area/space/nearstation) -"cAm" = ( -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 8; - icon_state = "1-8"; - tag = "" - }, -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 4; - icon_state = "1-4"; - tag = "90Curve" - }, -/turf/open/floor/plating/airless, -/area/space/nearstation) -"cAn" = ( -/obj/structure/cable/yellow{ - d1 = 2; - d2 = 8; - icon_state = "2-8"; - tag = "" - }, -/turf/open/floor/plating/airless, -/area/space/nearstation) -"cAo" = ( -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plating/airless, -/area/space/nearstation) -"cAp" = ( -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/cable/yellow{ - icon_state = "1-4"; - d1 = 1; - d2 = 4 - }, -/turf/open/floor/plating/airless, -/area/space/nearstation) -"cAq" = ( -/obj/structure/cable/yellow{ - d2 = 8; - icon_state = "0-8" - }, -/obj/machinery/power/tesla_coil, -/turf/open/floor/plating/airless, -/area/space/nearstation) -"cAr" = ( -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/cable/yellow{ - d1 = 2; - d2 = 8; - icon_state = "2-8"; - tag = "" - }, -/turf/open/floor/plating/airless, -/area/space/nearstation) -"cAs" = ( -/obj/structure/cable/yellow{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/machinery/power/tesla_coil, -/turf/open/floor/plating/airless, -/area/space/nearstation) -"cAt" = ( -/obj/machinery/the_singularitygen/tesla, -/turf/open/floor/plating/airless/warnplate{ - dir = 4 - }, -/area/space/nearstation) -"cAu" = ( -/obj/structure/cable/yellow{ - icon_state = "0-2"; - d2 = 2 - }, -/obj/machinery/power/tesla_coil, -/turf/open/floor/plating/airless, -/area/space/nearstation) -"cAv" = ( -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 4; - icon_state = "1-4"; - tag = "90Curve" - }, -/turf/open/floor/plating/airless, -/area/space/nearstation) -"cAw" = ( -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 8; - icon_state = "1-8"; - tag = "" - }, -/turf/open/floor/plating/airless, -/area/space/nearstation) -"cAx" = ( -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 8; - icon_state = "1-8"; - tag = "" - }, -/turf/open/floor/plating/airless, -/area/space/nearstation) -"cAy" = ( -/obj/structure/closet/secure_closet/freezer/kitchen/maintenance, -/turf/open/floor/plating, -/area/maintenance/aft) -"cAz" = ( -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 8 - }, -/turf/open/floor/plasteel/black, -/area/chapel/office) -"cAA" = ( -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"cAB" = ( -/obj/structure/table, -/obj/machinery/microwave, -/turf/open/floor/plating, -/area/maintenance/aft) -"cAC" = ( -/obj/structure/sink/kitchen{ - dir = 8; - pixel_x = 11 - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"cAD" = ( -/obj/structure/table, -/obj/item/weapon/kitchen/knife, -/obj/item/weapon/storage/box/donkpockets, -/turf/open/floor/plating, -/area/maintenance/aft) -"cAE" = ( -/obj/structure/table/glass, -/obj/item/weapon/reagent_containers/food/condiment/saltshaker{ - pixel_y = 2 - }, -/obj/item/weapon/reagent_containers/food/condiment/peppermill{ - pixel_x = 2 - }, -/obj/item/weapon/reagent_containers/food/snacks/mint{ - pixel_y = 9 - }, -/turf/open/floor/plating, -/area/maintenance/aft) -"cAF" = ( -/turf/open/floor/plating, -/area/maintenance/disposal) -"cAG" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/obj/machinery/power/apc{ - dir = 2; - name = "Head of Personnel APC"; - pixel_y = -24 - }, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/turf/open/floor/plating, -/area/crew_quarters/heads) -"cAH" = ( -/obj/machinery/processor, -/turf/open/floor/plating, -/area/maintenance/aft) -"cAI" = ( -/obj/machinery/conveyor_switch/oneway{ - convdir = -1; - id = "garbage"; - name = "disposal coveyor" - }, -/turf/open/floor/plating, -/area/maintenance/disposal) -"cAJ" = ( -/obj/structure/closet, -/turf/open/floor/plating, -/area/maintenance/disposal) -"cAK" = ( -/obj/machinery/light/small, -/turf/open/floor/plating, -/area/maintenance/aft) -"cAL" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/mob/living/simple_animal/hostile/lizard{ - name = "Wags-His-Tail"; - real_name = "Wags-His-Tail" - }, -/turf/open/floor/plasteel, -/area/janitor) -"cAM" = ( -/obj/structure/table/wood, -/obj/structure/disposalpipe/segment, -/obj/item/toy/cards/deck/cas, -/obj/item/toy/cards/deck/cas/black{ - pixel_x = -2; - pixel_y = 6 - }, -/turf/open/floor/wood, -/area/library) -"cAN" = ( -/obj/machinery/door/airlock/maintenance{ - name = "Security Maintenance"; - req_access_txt = "1" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/security/main) -"cAO" = ( -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/turf/open/floor/plating, -/area/engine/engineering) -"cAP" = ( -/turf/open/floor/plating/warnplate{ - dir = 4 - }, -/area/engine/engineering) -"cAQ" = ( -/obj/structure/chair, -/turf/open/floor/plating, -/area/maintenance/aft) -"cAR" = ( -/obj/machinery/door/window{ - dir = 1; - name = "AI Core Door"; - req_access_txt = "16" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/ai) -"cAS" = ( -/obj/effect/landmark/start{ - name = "AI" - }, -/obj/item/device/radio/intercom{ - broadcasting = 0; - freerange = 1; - listening = 1; - name = "Common Channel"; - pixel_x = -27; - pixel_y = -9 - }, -/obj/item/device/radio/intercom{ - anyai = 1; - freerange = 1; - listening = 0; - name = "Custom Channel"; - pixel_x = 0; - pixel_y = -31 - }, -/obj/item/device/radio/intercom{ - anyai = 1; - broadcasting = 0; - freerange = 1; - frequency = 1447; - name = "Private Channel"; - pixel_x = 27; - pixel_y = -9 - }, -/obj/machinery/newscaster/security_unit{ - pixel_x = -28; - pixel_y = -28 - }, -/obj/machinery/requests_console{ - department = "AI"; - departmentType = 5; - pixel_x = 28; - pixel_y = -28 - }, -/turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/ai) -"cAT" = ( -/obj/machinery/ai_slipper{ - icon_state = "motion0"; - uses = 10 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai) -"cAU" = ( -/obj/structure/lattice, -/obj/machinery/camera{ - c_tag = "MiniSat External SouthWest"; - dir = 8; - network = list("MiniSat"); - pixel_x = 0; - pixel_y = 0; - start_active = 1 - }, -/turf/open/space, -/area/space) -"cAV" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/showcase{ - density = 0; - desc = "An old, deactivated cyborg. Whilst once actively used to guard against intruders, it now simply intimidates them with its cold, steely gaze."; - dir = 8; - icon = 'icons/mob/robots.dmi'; - icon_state = "robot_old"; - name = "Cyborg Statue"; - pixel_x = 9; - pixel_y = 2 - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai) -"cAW" = ( -/obj/structure/showcase{ - density = 0; - desc = "An old, deactivated cyborg. Whilst once actively used to guard against intruders, it now simply intimidates them with its cold, steely gaze."; - dir = 4; - icon = 'icons/mob/robots.dmi'; - icon_state = "robot_old"; - name = "Cyborg Statue"; - pixel_x = -9; - pixel_y = 2 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1 - }, -/turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai) -"cAX" = ( -/obj/structure/lattice, -/obj/machinery/camera{ - c_tag = "MiniSat External SouthEast"; - dir = 4; - network = list("MiniSat"); - pixel_x = 0; - pixel_y = 0; - start_active = 1 - }, -/turf/open/space, -/area/space) -"cAY" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/turf/closed/wall, -/area/ai_monitored/turret_protected/ai) -"cAZ" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai) -"cBa" = ( -/obj/machinery/power/smes{ - charge = 5e+006 - }, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/ai) -"cBb" = ( -/obj/machinery/camera/motion{ - c_tag = "MiniSat AI Chamber South"; - dir = 2; - network = list("MiniSat") - }, -/turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/ai) -"cBc" = ( -/obj/machinery/power/terminal{ - icon_state = "term"; - dir = 1 - }, -/obj/machinery/ai_slipper{ - icon_state = "motion0"; - uses = 10 - }, -/turf/open/floor/bluegrid, -/area/ai_monitored/turret_protected/ai) -"cBd" = ( -/obj/machinery/firealarm{ - dir = 1; - pixel_y = -24 - }, -/turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai) -"cBe" = ( -/obj/machinery/airalarm{ - dir = 1; - icon_state = "alarm0"; - pixel_y = -22 - }, -/obj/machinery/holopad, -/turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai) -"cBf" = ( -/obj/machinery/camera{ - c_tag = "MiniSat External South"; - dir = 2; - network = list("MiniSat"); - pixel_x = 0; - pixel_y = 0; - start_active = 1 - }, -/turf/open/space, -/area/space) -"cBg" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/effect/landmark/event_spawn, -/turf/open/floor/plating, -/area/hydroponics) -"cBh" = ( -/obj/effect/landmark/event_spawn, -/turf/open/floor/plasteel/barber, -/area/crew_quarters/locker) -"cBi" = ( -/obj/effect/landmark/event_spawn, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/floorgrime, -/area/quartermaster/storage) -"cBj" = ( -/obj/structure/table, -/obj/item/weapon/folder/blue, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/effect/landmark/event_spawn, -/turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/ai_upload) -"cBk" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/effect/landmark/event_spawn, -/turf/open/floor/plasteel, -/area/hallway/primary/starboard) -"cBl" = ( -/obj/effect/landmark/event_spawn, -/turf/open/floor/plasteel, -/area/hallway/secondary/exit) -"cBm" = ( -/obj/effect/landmark/event_spawn, -/turf/open/floor/plasteel, -/area/hallway/primary/starboard) -"cBn" = ( -/obj/machinery/camera{ - c_tag = "Locker Room Toilets"; - dir = 8; - network = list("SS13") - }, -/obj/effect/landmark/event_spawn, -/turf/open/floor/plasteel/freezer, -/area/crew_quarters/locker/locker_toilet) -"cBo" = ( -/obj/effect/landmark/event_spawn, -/turf/open/floor/wood, -/area/crew_quarters/captain) -"cBp" = ( -/obj/effect/landmark/event_spawn, -/turf/open/floor/plasteel/bot, -/area/quartermaster/storage) -"cBq" = ( -/obj/effect/landmark/event_spawn, -/turf/open/floor/plasteel, -/area/quartermaster/office) -"cBr" = ( -/obj/effect/landmark/event_spawn, -/turf/open/floor/plasteel/bot, -/area/hallway/primary/central) -"cBs" = ( -/obj/structure/table/optable{ - name = "Robotics Operating Table" - }, -/obj/effect/landmark/event_spawn, -/turf/open/floor/plasteel/white, -/area/assembly/robotics) -"cBt" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/effect/landmark/event_spawn, -/turf/open/floor/plasteel/white, -/area/toxins/explab) -"cBu" = ( -/obj/machinery/ai_status_display{ - pixel_y = 32 - }, -/obj/effect/landmark/event_spawn, -/turf/open/floor/plasteel/warnwhite{ - dir = 1 - }, -/area/crew_quarters/hor) -"cBv" = ( -/obj/effect/landmark/event_spawn, -/turf/open/floor/plasteel, -/area/security/checkpoint/supply) -"cBw" = ( -/obj/machinery/door/firedoor, -/obj/effect/landmark/event_spawn, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"cBx" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 5 - }, -/obj/effect/landmark/event_spawn, -/turf/open/floor/plasteel/white, -/area/medical/research{ - name = "Research Division" - }) -"cBy" = ( -/obj/machinery/door/airlock{ - name = "Custodial Closet"; - req_access_txt = "26" - }, -/obj/structure/disposalpipe/segment, -/obj/effect/landmark/event_spawn, -/turf/open/floor/plasteel, -/area/janitor) -"cBz" = ( -/obj/effect/landmark/event_spawn, -/turf/open/floor/engine, -/area/toxins/xenobiology) -"cBA" = ( -/obj/machinery/button/massdriver{ - dir = 2; - id = "toxinsdriver"; - pixel_y = 24 - }, -/obj/effect/landmark/event_spawn, -/turf/open/floor/plasteel/warning/corner{ - dir = 8 - }, -/area/toxins/mixing) -"cBB" = ( -/obj/effect/landmark/event_spawn, -/turf/open/floor/plasteel, -/area/quartermaster/miningdock) -"cBC" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/effect/landmark/event_spawn, -/turf/open/floor/plasteel, -/area/storage/tech) -"cBD" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/effect/landmark/event_spawn, -/turf/open/floor/plating, -/area/maintenance/asmaint) -"cBE" = ( -/obj/effect/landmark/event_spawn, -/turf/open/floor/engine/vacuum, -/area/toxins/mixing) -"cBF" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/visible{ - dir = 8 - }, -/obj/effect/landmark/event_spawn, -/turf/open/floor/plasteel, -/area/atmos) -"cBG" = ( -/obj/structure/disposalpipe/segment, -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/effect/landmark/event_spawn, -/turf/open/floor/plasteel/white, -/area/toxins/xenobiology) -"cBH" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/effect/landmark/event_spawn, -/turf/open/floor/plasteel, -/area/hallway/primary/aft) -"cBI" = ( -/obj/effect/landmark/event_spawn, -/turf/open/floor/plasteel, -/area/security/checkpoint/engineering) -"cBJ" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - dir = 9 - }, -/obj/effect/landmark/event_spawn, -/turf/open/floor/plasteel, -/area/atmos) -"cBK" = ( -/obj/item/device/radio/intercom{ - name = "Station Intercom (General)"; - pixel_y = -35 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 1; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/obj/effect/landmark/event_spawn, -/turf/open/floor/plasteel, -/area/tcommsat/computer) -"cBL" = ( -/obj/effect/landmark/event_spawn, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"cBM" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/folder/yellow, -/obj/item/weapon/paper/monitorkey, -/obj/effect/landmark/event_spawn, -/turf/open/floor/plasteel/neutral{ - dir = 2 - }, -/area/engine/chiefs_office) -"cBN" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/effect/landmark/event_spawn, -/turf/open/floor/plating, -/area/maintenance/aft) -"cBO" = ( -/obj/effect/landmark/event_spawn, -/turf/open/floor/plasteel, -/area/engine/engineering) -"cBP" = ( -/obj/machinery/portable_atmospherics/canister/air, -/obj/effect/landmark/event_spawn, -/turf/open/floor/engine/air, -/area/atmos) -"cBQ" = ( -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/effect/landmark/event_spawn, -/turf/open/floor/plating, -/area/engine/engineering) -"cBR" = ( -/obj/effect/landmark/event_spawn, -/turf/open/space, -/area/space/nearstation) -"cBS" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/effect/landmark/event_spawn, -/turf/open/floor/plasteel/black, -/area/ai_monitored/turret_protected/AIsatextFS{ - name = "AI Satellite Hallway" - }) -"cBT" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/light/small{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"cBU" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/closet/emcloset, -/turf/open/floor/plating, -/area/maintenance/asmaint2) -"cBV" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/security{ - name = "Security Office"; - req_access = null; - req_access_txt = "1" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/security/main) -"cBW" = ( -/obj/docking_port/stationary{ - dheight = 9; - dir = 2; - dwidth = 5; - height = 24; - id = "syndicate_southmaint"; - name = "south maintenance airlock"; - turf_type = /turf/open/space; - width = 18 - }, -/turf/open/space, -/area/space) -"cBX" = ( -/obj/docking_port/stationary{ - dheight = 9; - dir = 2; - dwidth = 5; - height = 24; - id = "syndicate_se"; - name = "southeast of station"; - turf_type = /turf/open/space; - width = 18 - }, -/turf/open/space, -/area/space) -"cBY" = ( -/obj/docking_port/stationary{ - dheight = 9; - dir = 2; - dwidth = 5; - height = 24; - id = "syndicate_s"; - name = "south of station"; - turf_type = /turf/open/space; - width = 18 - }, -/turf/open/space, -/area/space) -"cBZ" = ( -/obj/structure/table/wood, -/obj/item/clothing/under/burial, -/obj/item/clothing/under/burial, -/obj/item/clothing/under/burial, -/obj/item/clothing/under/burial, -/obj/item/clothing/under/burial, -/obj/item/clothing/under/burial, -/turf/open/floor/plasteel/grimy, -/area/chapel/office) -"cCa" = ( -/obj/item/clothing/head/hardhat, -/turf/open/floor/plating/airless, -/area/space/nearstation) -"cCb" = ( -/obj/structure/table, -/obj/item/stack/cable_coil{ - amount = 5 - }, -/obj/item/device/flashlight, -/turf/open/floor/plating, -/area/construction) -"cCc" = ( -/obj/structure/rack{ - dir = 1 - }, -/obj/item/clothing/suit/hazardvest, -/turf/open/floor/plating, -/area/construction) -"cCd" = ( -/turf/open/floor/plasteel, -/area/construction) -"cCe" = ( -/obj/structure/closet/crate, -/turf/open/floor/plating, -/area/construction) -"cCf" = ( -/obj/machinery/disposal/bin, -/obj/structure/disposalpipe/trunk{ - dir = 1 - }, -/turf/open/floor/plating, -/area/construction) -"cCg" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/aft) -"cCh" = ( -/obj/item/weapon/bedsheet/red, -/mob/living/simple_animal/bot/secbot/beepsky{ - name = "Officer Beepsky" - }, -/turf/open/floor/plating, -/area/security/processing) -"cCi" = ( -/turf/closed/wall, -/area/security/vacantoffice2) -"cCj" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/security/detectives_office) -"cCk" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/security/detectives_office) -"cCl" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/turf/open/floor/plating, -/area/maintenance/port) -"cCm" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/turf/open/floor/plating, -/area/maintenance/port) -"cCn" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/power/apc{ - dir = 4; - name = "Detective's Office APC"; - pixel_x = 24; - pixel_y = 0 - }, -/obj/structure/cable, -/turf/open/floor/plating, -/area/maintenance/port) -"cCo" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/quartermaster/storage) -"cCp" = ( -/obj/structure/closet/crate/freezer, -/obj/item/weapon/reagent_containers/blood/empty, -/obj/item/weapon/reagent_containers/blood/empty, -/obj/item/weapon/reagent_containers/blood/AMinus, -/obj/item/weapon/reagent_containers/blood/BMinus{ - pixel_x = -4; - pixel_y = 4 - }, -/obj/item/weapon/reagent_containers/blood/BPlus{ - pixel_x = 1; - pixel_y = 2 - }, -/obj/item/weapon/reagent_containers/blood/OMinus, -/obj/item/weapon/reagent_containers/blood/OPlus{ - pixel_x = -2; - pixel_y = -1 - }, -/obj/item/weapon/reagent_containers/blood/random, -/obj/item/weapon/reagent_containers/blood/random, -/obj/item/weapon/reagent_containers/blood/APlus, -/obj/item/weapon/reagent_containers/blood/random, -/turf/open/floor/plasteel, -/area/medical/sleeper) +"aaa" = (/turf/open/space,/area/space) +"aab" = (/obj/docking_port/stationary{dheight = 9; dir = 2; dwidth = 5; height = 24; id = "syndicate_n"; name = "north of station"; turf_type = /turf/open/space; width = 18},/turf/open/space,/area/space) +"aac" = (/turf/open/space,/obj/machinery/porta_turret/syndicate{dir = 9},/turf/closed/wall/shuttle{dir = 8; icon_state = "diagonalWall3"},/area/shuttle/syndicate) +"aad" = (/turf/closed/indestructible/opshuttle,/area/shuttle/syndicate) +"aae" = (/obj/structure/grille,/obj/machinery/door/poddoor/shutters{id = "syndieshutters"; name = "blast shutters"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/shuttle/syndicate) +"aaf" = (/turf/open/space,/obj/machinery/porta_turret/syndicate{dir = 5},/turf/closed/wall/shuttle{dir = 1; icon_state = "diagonalWall3"},/area/shuttle/syndicate) +"aag" = (/obj/structure/table,/obj/machinery/microwave,/turf/open/floor/plasteel/shuttle/red,/area/shuttle/syndicate) +"aah" = (/turf/open/floor/plasteel/shuttle/red,/area/shuttle/syndicate) +"aai" = (/obj/structure/table,/obj/item/device/flashlight/lamp{pixel_x = 4; pixel_y = 1},/turf/open/floor/plasteel/shuttle/red,/area/shuttle/syndicate) +"aaj" = (/obj/machinery/computer/shuttle/syndicate,/turf/open/floor/plasteel/shuttle/red,/area/shuttle/syndicate) +"aak" = (/obj/structure/table,/obj/machinery/button/door{id = "syndieshutters"; name = "remote shutter control"; req_access_txt = "150"},/turf/open/floor/plasteel/shuttle/red,/area/shuttle/syndicate) +"aal" = (/obj/structure/frame/computer,/turf/open/floor/plasteel/shuttle/red,/area/shuttle/syndicate) +"aam" = (/obj/structure/table,/obj/item/weapon/storage/box/donkpockets{pixel_x = 3; pixel_y = 3},/turf/open/floor/plasteel/shuttle/red,/area/shuttle/syndicate) +"aan" = (/obj/structure/chair/comfy/beige{dir = 1; icon_state = "comfychair"},/turf/open/floor/plasteel/shuttle/red,/area/shuttle/syndicate) +"aao" = (/obj/structure/table,/obj/item/stack/sheet/glass{amount = 10},/obj/item/device/multitool,/turf/open/floor/plasteel/shuttle/red,/area/shuttle/syndicate) +"aap" = (/obj/item/device/radio/intercom{desc = "Talk through this. Evilly"; freerange = 1; frequency = 1213; name = "Syndicate Intercom"; pixel_y = -32; subspace_transmission = 1; syndie = 1},/turf/open/floor/plasteel/shuttle/red,/area/shuttle/syndicate) +"aaq" = (/obj/structure/closet/syndicate/personal,/turf/open/floor/plasteel/shuttle/red,/area/shuttle/syndicate) +"aar" = (/turf/open/space,/turf/closed/wall/shuttle{dir = 2; icon_state = "diagonalWall3"},/area/shuttle/syndicate) +"aas" = (/obj/machinery/door/window{name = "Cockpit"; req_access_txt = "150"},/turf/open/floor/plasteel/shuttle/red,/area/shuttle/syndicate) +"aat" = (/turf/closed/wall/shuttle{icon_state = "wall3"},/area/shuttle/syndicate) +"aau" = (/turf/open/space,/turf/closed/wall/shuttle{dir = 4; icon_state = "diagonalWall3"},/area/shuttle/syndicate) +"aav" = (/obj/structure/table,/obj/item/stack/cable_coil,/obj/item/weapon/crowbar/red,/turf/open/floor/plasteel/shuttle/red,/area/shuttle/syndicate) +"aaw" = (/obj/structure/table,/obj/item/weapon/storage/box/zipties{pixel_x = 1; pixel_y = 2},/turf/open/floor/plasteel/shuttle/red,/area/shuttle/syndicate) +"aax" = (/obj/structure/chair{dir = 8},/turf/open/floor/plasteel/shuttle/red,/area/shuttle/syndicate) +"aay" = (/turf/open/space,/turf/closed/wall/shuttle{dir = 8; icon_state = "diagonalWall3"},/area/shuttle/syndicate) +"aaz" = (/obj/machinery/porta_turret/syndicate{dir = 4},/turf/closed/indestructible/opshuttle,/area/shuttle/syndicate) +"aaA" = (/obj/machinery/suit_storage_unit/syndicate,/turf/open/floor/plasteel/shuttle/red,/area/shuttle/syndicate) +"aaB" = (/obj/structure/closet/syndicate/nuclear,/turf/open/floor/plasteel/shuttle/red,/area/shuttle/syndicate) +"aaC" = (/obj/docking_port/stationary{dheight = 9; dir = 2; dwidth = 5; height = 24; id = "syndicate_ne"; name = "northeast of station"; turf_type = /turf/open/space; width = 18},/turf/open/space,/area/space) +"aaD" = (/obj/structure/chair/stool{pixel_y = 8},/turf/open/floor/plasteel/shuttle/red,/area/shuttle/syndicate) +"aaE" = (/obj/structure/table,/obj/item/device/aicard,/turf/open/floor/plasteel/shuttle/red,/area/shuttle/syndicate) +"aaF" = (/obj/machinery/door/poddoor{auto_close = 300; id = "smindicate"; name = "outer blast door"},/obj/machinery/button/door{id = "smindicate"; name = "external door control"; pixel_x = -26; pixel_y = 0; req_access_txt = "150"},/obj/docking_port/mobile{dheight = 9; dir = 2; dwidth = 5; height = 24; id = "syndicate"; name = "syndicate infiltrator"; roundstart_move = "syndicate_away"; travelDir = 180; width = 18},/obj/docking_port/stationary{dheight = 9; dir = 2; dwidth = 5; height = 24; id = "syndicate_nw"; name = "northwest of station"; turf_type = /turf/open/space; width = 18},/turf/open/floor/plating,/area/shuttle/syndicate) +"aaG" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 0},/turf/closed/indestructible/opshuttle,/area/shuttle/syndicate) +"aaH" = (/obj/structure/table,/obj/item/weapon/c4{pixel_x = 2; pixel_y = -5},/obj/item/weapon/c4{pixel_x = -3; pixel_y = 3},/obj/item/weapon/c4{pixel_x = 2; pixel_y = -3},/obj/item/weapon/c4{pixel_x = -2; pixel_y = -1},/obj/item/weapon/c4{pixel_x = 3; pixel_y = 3},/turf/open/floor/plasteel/shuttle/red,/area/shuttle/syndicate) +"aaI" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/shuttle/syndicate) +"aaJ" = (/obj/machinery/door/window{name = "Ready Room"; req_access_txt = "150"},/turf/open/floor/plasteel/shuttle/red,/area/shuttle/syndicate) +"aaK" = (/obj/effect/landmark{name = "carpspawn"},/turf/open/space,/area/space) +"aaL" = (/obj/machinery/door/window{dir = 4; name = "EVA Storage"; req_access_txt = "150"},/turf/open/floor/plasteel/shuttle/red,/area/shuttle/syndicate) +"aaM" = (/obj/machinery/door/airlock/external{req_access_txt = "150"},/turf/open/floor/plasteel/shuttle/red,/area/shuttle/syndicate) +"aaN" = (/obj/machinery/door/window{base_state = "right"; dir = 4; icon_state = "right"; name = "EVA Storage"; req_access_txt = "150"},/turf/open/floor/plasteel/shuttle/red,/area/shuttle/syndicate) +"aaO" = (/turf/open/space,/turf/closed/wall/shuttle{dir = 1; icon_state = "diagonalWall3"},/area/shuttle/syndicate) +"aaP" = (/obj/item/device/radio/intercom{desc = "Talk through this. Evilly"; freerange = 1; frequency = 1213; name = "Syndicate Intercom"; pixel_x = -32; subspace_transmission = 1; syndie = 1},/turf/open/floor/plasteel/shuttle/red,/area/shuttle/syndicate) +"aaQ" = (/obj/machinery/sleeper/syndie{dir = 4},/turf/open/floor/plasteel/shuttle/white,/area/shuttle/syndicate) +"aaR" = (/turf/open/floor/plasteel/shuttle/white,/area/shuttle/syndicate) +"aaS" = (/obj/machinery/portable_atmospherics/canister/oxygen,/turf/open/floor/plasteel/shuttle/white,/area/shuttle/syndicate) +"aaT" = (/obj/structure/tank_dispenser/oxygen,/turf/open/floor/plasteel/shuttle/white,/area/shuttle/syndicate) +"aaU" = (/obj/structure/table,/obj/item/stack/medical/ointment,/obj/item/stack/medical/bruise_pack,/obj/structure/extinguisher_cabinet{pixel_x = -5; pixel_y = 30},/turf/open/floor/plasteel/shuttle/white,/area/shuttle/syndicate) +"aaV" = (/obj/structure/table,/obj/item/weapon/stock_parts/cell/high{pixel_x = -3; pixel_y = 3},/obj/item/weapon/stock_parts/cell/high,/turf/open/floor/plasteel/shuttle/red,/area/shuttle/syndicate) +"aaW" = (/obj/structure/table,/obj/item/weapon/screwdriver{pixel_y = 9},/obj/item/device/assembly/voice{pixel_y = 3},/turf/open/floor/plasteel/shuttle/red,/area/shuttle/syndicate) +"aaX" = (/obj/structure/table,/obj/item/weapon/wrench,/obj/item/device/assembly/infra,/turf/open/floor/plasteel/shuttle/red,/area/shuttle/syndicate) +"aaY" = (/obj/structure/table,/obj/item/device/assembly/signaler,/obj/item/device/assembly/signaler,/obj/item/device/assembly/prox_sensor{pixel_x = -8; pixel_y = 4},/obj/item/device/assembly/prox_sensor{pixel_x = -8; pixel_y = 4},/turf/open/floor/plasteel/shuttle/red,/area/shuttle/syndicate) +"aaZ" = (/obj/structure/table,/obj/item/weapon/weldingtool/largetank{pixel_y = 3},/obj/item/device/multitool,/turf/open/floor/plasteel/shuttle/red,/area/shuttle/syndicate) +"aba" = (/obj/structure/bed/roller,/turf/open/floor/plasteel/shuttle/white,/area/shuttle/syndicate) +"abb" = (/obj/structure/sign/bluecross_2,/turf/closed/indestructible/opshuttle,/area/shuttle/syndicate) +"abc" = (/obj/structure/table,/obj/item/weapon/storage/toolbox/syndicate,/obj/item/weapon/crowbar/red,/turf/open/floor/plasteel/shuttle/red,/area/shuttle/syndicate) +"abd" = (/obj/machinery/door/window{dir = 4; name = "Infirmary"; req_access_txt = "150"},/turf/open/floor/plasteel/shuttle/white,/area/shuttle/syndicate) +"abe" = (/obj/machinery/door/window/westright{name = "Tool Storage"; req_access_txt = "150"},/turf/open/floor/plasteel/shuttle/red,/area/shuttle/syndicate) +"abf" = (/obj/machinery/door/window{base_state = "right"; dir = 4; icon_state = "right"; name = "Infirmary"; req_access_txt = "150"},/turf/open/floor/plasteel/shuttle/white,/area/shuttle/syndicate) +"abg" = (/obj/machinery/door/window{dir = 8; name = "Tool Storage"; req_access_txt = "150"},/turf/open/floor/plasteel/shuttle/red,/area/shuttle/syndicate) +"abh" = (/obj/machinery/recharge_station,/turf/open/floor/plasteel/shuttle/red,/area/shuttle/syndicate) +"abi" = (/obj/structure/lattice,/turf/open/space,/area/space) +"abj" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/table,/obj/item/robot_parts/r_arm,/obj/item/robot_parts/l_arm,/turf/open/floor/plasteel/shuttle/white,/area/shuttle/syndicate) +"abk" = (/obj/machinery/door/window{dir = 1; name = "Surgery"; req_access_txt = "150"},/turf/open/floor/plasteel/shuttle/white,/area/shuttle/syndicate) +"abl" = (/obj/structure/window/reinforced{dir = 1},/turf/open/floor/plasteel/shuttle/white,/area/shuttle/syndicate) +"abm" = (/obj/structure/table,/obj/structure/window/reinforced{dir = 8},/obj/item/weapon/storage/firstaid/regular{pixel_x = 3; pixel_y = 3},/obj/item/weapon/storage/firstaid/brute,/obj/item/weapon/storage/firstaid/regular{pixel_x = -3; pixel_y = -3},/turf/open/floor/plasteel/shuttle/white,/area/shuttle/syndicate) +"abn" = (/obj/structure/table,/obj/item/weapon/storage/firstaid/regular{pixel_x = 3; pixel_y = 3},/obj/item/weapon/storage/firstaid/fire,/obj/item/weapon/storage/firstaid/regular{pixel_x = -3; pixel_y = -3},/turf/open/floor/plasteel/shuttle/white,/area/shuttle/syndicate) +"abo" = (/obj/structure/table,/obj/item/device/sbeacondrop/bomb{pixel_y = 5},/obj/item/device/sbeacondrop/bomb,/turf/open/floor/plasteel/shuttle/red,/area/shuttle/syndicate) +"abp" = (/obj/structure/table,/obj/item/weapon/grenade/syndieminibomb{pixel_x = 4; pixel_y = 2},/obj/item/weapon/grenade/syndieminibomb{pixel_x = -1},/turf/open/floor/plasteel/shuttle/red,/area/shuttle/syndicate) +"abq" = (/obj/structure/lattice/catwalk,/turf/open/space,/area/space) +"abr" = (/obj/structure/table,/obj/item/weapon/surgicaldrill,/obj/item/weapon/circular_saw,/turf/open/floor/plasteel/shuttle/white,/area/shuttle/syndicate) +"abs" = (/obj/structure/sink{dir = 4; icon_state = "sink"; pixel_x = 11; pixel_y = 0},/obj/structure/mirror{pixel_x = 30},/turf/open/floor/plasteel/shuttle/white,/area/shuttle/syndicate) +"abt" = (/obj/machinery/nuclearbomb/syndicate,/obj/machinery/door/window{dir = 1; name = "Secure Storage"; req_access_txt = "150"},/turf/open/floor/plasteel/shuttle/red,/area/shuttle/syndicate) +"abu" = (/obj/machinery/telecomms/allinone{intercept = 1},/turf/open/floor/plasteel/shuttle/red,/area/shuttle/syndicate) +"abv" = (/obj/structure/sign/securearea{pixel_y = -32},/turf/open/space,/area/space) +"abw" = (/obj/structure/table,/obj/item/weapon/cautery,/obj/item/weapon/scalpel,/turf/open/floor/plasteel/shuttle/white,/area/shuttle/syndicate) +"abx" = (/obj/structure/table/optable,/obj/item/weapon/surgical_drapes,/turf/open/floor/plasteel/shuttle/white,/area/shuttle/syndicate) +"aby" = (/obj/structure/table,/obj/item/weapon/retractor,/obj/item/weapon/hemostat,/turf/open/floor/plasteel/shuttle/white,/area/shuttle/syndicate) +"abz" = (/obj/structure/shuttle/engine/heater,/obj/structure/window/reinforced{dir = 1},/turf/open/floor/plating,/area/shuttle/syndicate) +"abA" = (/obj/structure/reagent_dispensers/fueltank,/turf/open/floor/plasteel/shuttle/red,/area/shuttle/syndicate) +"abB" = (/obj/structure/table,/obj/item/stack/sheet/metal{amount = 50},/obj/item/stack/sheet/glass{amount = 50},/obj/item/stack/rods{amount = 50},/turf/open/floor/plasteel/shuttle/red,/area/shuttle/syndicate) +"abC" = (/obj/structure/rack,/obj/item/clothing/suit/space/syndicate/black/red,/obj/item/clothing/head/helmet/space/syndicate/black/red,/turf/open/floor/plasteel/shuttle/red,/area/shuttle/syndicate) +"abD" = (/turf/closed/wall/r_wall,/area/security/prison) +"abE" = (/obj/structure/grille,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/security/prison) +"abF" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/closed/wall/r_wall,/area/security/prison) +"abG" = (/obj/structure/grille,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/security/prison) +"abH" = (/obj/structure/grille,/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/security/prison) +"abI" = (/obj/structure/shuttle/engine/propulsion{icon_state = "propulsion_l"},/turf/open/floor/plating,/area/shuttle/syndicate) +"abJ" = (/obj/structure/shuttle/engine/propulsion,/turf/open/floor/plating,/area/shuttle/syndicate) +"abK" = (/obj/structure/shuttle/engine/propulsion{icon_state = "propulsion_r"},/turf/open/floor/plating,/area/shuttle/syndicate) +"abL" = (/obj/machinery/hydroponics/soil,/obj/item/seeds/ambrosia,/turf/open/floor/plasteel/green/side{dir = 9},/area/security/prison) +"abM" = (/obj/machinery/hydroponics/soil,/obj/item/seeds/carrot,/turf/open/floor/plasteel/green/side{dir = 1},/area/security/prison) +"abN" = (/obj/machinery/airalarm{pixel_y = 23},/turf/open/floor/plating,/area/security/prison) +"abO" = (/obj/machinery/hydroponics/soil,/obj/item/seeds/glowshroom,/turf/open/floor/plasteel/green/side{dir = 1},/area/security/prison) +"abP" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"; pixel_y = 32},/obj/machinery/hydroponics/soil,/obj/item/device/plant_analyzer,/obj/machinery/camera{c_tag = "Prison Common Room"; network = list("SS13","Prison")},/turf/open/floor/plasteel/green/side{dir = 5},/area/security/prison) +"abQ" = (/turf/open/floor/plasteel/floorgrime,/area/security/prison) +"abR" = (/obj/structure/sink{pixel_y = 20},/turf/open/floor/plating,/area/security/prison) +"abS" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/floorgrime,/area/security/prison) +"abT" = (/obj/machinery/biogenerator,/turf/open/floor/plasteel/floorgrime,/area/security/prison) +"abU" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/open/floor/plating,/area/security/prison) +"abV" = (/turf/open/floor/plating,/area/security/prison) +"abW" = (/mob/living/simple_animal/mouse/brown/Tom,/turf/open/floor/plating,/area/security/prison) +"abX" = (/obj/item/weapon/reagent_containers/glass/bucket,/turf/open/floor/plating,/area/security/prison) +"abY" = (/obj/machinery/seed_extractor,/turf/open/floor/plasteel/floorgrime,/area/security/prison) +"abZ" = (/obj/structure/window/reinforced,/obj/machinery/hydroponics/soil,/obj/item/seeds/potato,/turf/open/floor/plasteel/green/side{dir = 10},/area/security/prison) +"aca" = (/obj/structure/window/reinforced,/obj/machinery/hydroponics/soil,/obj/item/seeds/grass,/turf/open/floor/plasteel/green/side{dir = 2},/area/security/prison) +"acb" = (/obj/structure/window/reinforced,/turf/open/floor/plating,/area/security/prison) +"acc" = (/obj/structure/window/reinforced,/obj/machinery/hydroponics/soil,/obj/item/weapon/cultivator,/turf/open/floor/plasteel/green/side{dir = 2},/area/security/prison) +"acd" = (/obj/structure/window/reinforced,/obj/machinery/hydroponics/soil,/obj/item/weapon/cultivator,/turf/open/floor/plasteel/green/side{dir = 6},/area/security/prison) +"ace" = (/obj/machinery/light{dir = 4; icon_state = "tube1"},/turf/open/floor/plasteel/floorgrime,/area/security/prison) +"acf" = (/turf/open/floor/plating/airless,/area/space/nearstation) +"acg" = (/obj/structure/bookcase,/turf/open/floor/plasteel/floorgrime,/area/security/prison) +"ach" = (/obj/structure/chair/stool,/turf/open/floor/plasteel/floorgrime,/area/security/prison) +"aci" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/window/reinforced{dir = 1},/turf/open/floor/plasteel/barber,/area/security/prison) +"acj" = (/obj/machinery/washing_machine,/obj/structure/window/reinforced{dir = 1},/turf/open/floor/plasteel/barber,/area/security/prison) +"ack" = (/obj/machinery/computer/libraryconsole/bookmanagement{pixel_y = 0},/obj/structure/table,/obj/machinery/newscaster{pixel_x = -32; pixel_y = 0},/turf/open/floor/plasteel/floorgrime,/area/security/prison) +"acl" = (/obj/structure/table,/obj/item/weapon/storage/pill_bottle/dice,/turf/open/floor/plasteel,/area/security/prison) +"acm" = (/obj/structure/table,/obj/item/weapon/pen,/turf/open/floor/plasteel,/area/security/prison) +"acn" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/barber,/area/security/prison) +"aco" = (/obj/structure/table,/obj/structure/bedsheetbin,/turf/open/floor/plasteel/barber,/area/security/prison) +"acp" = (/obj/structure/lattice,/obj/structure/sign/securearea{pixel_y = -32},/turf/open/space,/area/space) +"acq" = (/obj/structure/grille,/obj/structure/lattice,/turf/open/space,/area/space) +"acr" = (/obj/machinery/computer/arcade,/turf/open/floor/plasteel/floorgrime,/area/security/prison) +"acs" = (/obj/structure/chair/stool,/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel/floorgrime,/area/security/prison) +"act" = (/obj/structure/table,/obj/item/toy/cards/deck,/turf/open/floor/plasteel,/area/security/prison) +"acu" = (/obj/structure/table,/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/pen,/turf/open/floor/plasteel,/area/security/prison) +"acv" = (/obj/structure/window/reinforced,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/barber,/area/security/prison) +"acw" = (/obj/machinery/washing_machine,/obj/structure/window/reinforced,/turf/open/floor/plasteel/barber,/area/security/prison) +"acx" = (/turf/closed/wall/r_wall,/area/ai_monitored/security/armory) +"acy" = (/obj/structure/lattice,/obj/structure/grille/broken,/turf/open/space,/area/space) +"acz" = (/turf/closed/wall,/area/security/transfer) +"acA" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/closed/wall,/area/security/transfer) +"acB" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall,/area/security/transfer) +"acC" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/turf/closed/wall,/area/security/transfer) +"acD" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/turf/closed/wall/r_wall,/area/security/transfer) +"acE" = (/obj/machinery/vending/sustenance,/turf/open/floor/plasteel/floorgrime,/area/security/prison) +"acF" = (/obj/machinery/hologram/holopad,/turf/open/floor/plasteel/floorgrime,/area/security/prison) +"acG" = (/obj/machinery/light/small{dir = 1},/obj/structure/window/reinforced{dir = 8},/turf/open/floor/plasteel/freezer,/area/security/prison) +"acH" = (/obj/machinery/shower{dir = 8},/obj/item/weapon/soap/nanotrasen,/turf/open/floor/plasteel/freezer,/area/security/prison) +"acI" = (/obj/structure/lattice,/obj/structure/grille,/turf/open/space,/area/space) +"acJ" = (/obj/structure/grille,/turf/open/space,/area/space) +"acK" = (/turf/closed/wall/r_wall,/area/security/main) +"acL" = (/turf/closed/wall,/area/security/main) +"acM" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/security/main) +"acN" = (/turf/closed/wall,/area/security/hos) +"acO" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/security/hos) +"acP" = (/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/power/tracker,/turf/open/floor/plasteel/airless/solarpanel,/area/solar/auxport) +"acQ" = (/obj/machinery/door/poddoor{id = "executionspaceblast"; name = "blast door"},/turf/open/floor/plating,/area/security/transfer) +"acR" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/darkwarning{dir = 9},/area/security/transfer) +"acS" = (/obj/machinery/light/small{dir = 1},/obj/machinery/flasher{id = "executionflash"; pixel_x = 0; pixel_y = 25},/turf/open/floor/plasteel/darkwarning{dir = 1},/area/security/transfer) +"acT" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/darkwarning{dir = 5},/area/security/transfer) +"acU" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall/r_wall,/area/security/transfer) +"acV" = (/obj/machinery/vending/cola,/turf/open/floor/plasteel/floorgrime,/area/security/prison) +"acW" = (/obj/machinery/light,/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/floorgrime,/area/security/prison) +"acX" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/floorgrime,/area/security/prison) +"acY" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/turf/open/floor/plasteel/floorgrime,/area/security/prison) +"acZ" = (/obj/machinery/light,/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/plasteel/floorgrime,/area/security/prison) +"ada" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/floorgrime,/area/security/prison) +"adb" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/open/floor/plasteel/floorgrime,/area/security/prison) +"adc" = (/obj/machinery/door/window/westleft{base_state = "right"; dir = 8; icon_state = "right"; name = "Unisex Showers"; req_access_txt = "0"},/turf/open/floor/plasteel/freezer,/area/security/prison) +"add" = (/turf/open/floor/plasteel/freezer,/area/security/prison) +"ade" = (/obj/structure/closet/secure_closet/security/sec,/turf/open/floor/plasteel/showroomfloor,/area/security/main) +"adf" = (/turf/open/floor/plasteel/showroomfloor,/area/security/main) +"adg" = (/obj/structure/closet/secure_closet/security/sec,/obj/machinery/light{dir = 4; icon_state = "tube1"},/turf/open/floor/plasteel/showroomfloor,/area/security/main) +"adh" = (/obj/machinery/requests_console{announcementConsole = 1; department = "Head of Security's Desk"; departmentType = 5; name = "Head of Security RC"; pixel_x = 0; pixel_y = 30},/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = -31},/obj/structure/table/wood,/obj/item/weapon/storage/box/seccarts{pixel_x = 3; pixel_y = 2},/obj/item/weapon/storage/box/deputy,/turf/open/floor/carpet,/area/security/hos) +"adi" = (/obj/machinery/computer/secure_data,/turf/open/floor/carpet,/area/security/hos) +"adj" = (/obj/machinery/computer/security,/turf/open/floor/carpet,/area/security/hos) +"adk" = (/obj/machinery/computer/card/minor/hos,/turf/open/floor/carpet,/area/security/hos) +"adl" = (/obj/machinery/airalarm{pixel_y = 23},/obj/structure/reagent_dispensers/peppertank{pixel_x = 30; pixel_y = 0},/obj/structure/table/wood,/obj/item/weapon/reagent_containers/food/drinks/bottle/vodka/badminka,/obj/item/weapon/reagent_containers/food/drinks/drinkingglass/shotglass,/obj/item/weapon/reagent_containers/food/drinks/drinkingglass/shotglass,/turf/open/floor/carpet,/area/security/hos) +"adm" = (/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/power/tracker,/turf/open/floor/plasteel/airless/solarpanel,/area/solar/auxstarboard) +"adn" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/auxport) +"ado" = (/turf/open/floor/plasteel/darkwarning{dir = 8},/area/security/transfer) +"adp" = (/obj/structure/bed,/obj/effect/landmark{name = "revenantspawn"},/turf/open/floor/plasteel/black,/area/security/transfer) +"adq" = (/obj/machinery/sparker{dir = 2; id = "executionburn"; pixel_x = 25},/turf/open/floor/plasteel/darkwarning{dir = 4},/area/security/transfer) +"adr" = (/turf/closed/wall,/area/security/prison) +"ads" = (/obj/machinery/door/poddoor/preopen{id = "permacell3"; name = "cell blast door"},/obj/machinery/door/airlock/glass{id_tag = "permabolt3"; name = "Cell 3"},/turf/open/floor/plasteel/floorgrime,/area/security/prison) +"adt" = (/obj/machinery/door/poddoor/preopen{id = "permacell2"; name = "cell blast door"},/obj/machinery/door/airlock/glass{id_tag = "permabolt2"; name = "Cell 2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/floorgrime,/area/security/prison) +"adu" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/poddoor/preopen{id = "permacell1"; name = "cell blast door"},/obj/machinery/door/airlock/glass{id_tag = "permabolt1"; name = "Cell 1"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/floorgrime,/area/security/prison) +"adv" = (/obj/machinery/door/airlock{name = "Unisex Restroom"; req_access_txt = "0"},/turf/open/floor/plasteel/freezer,/area/security/prison) +"adw" = (/obj/structure/closet/bombcloset,/turf/open/floor/plasteel/showroomfloor,/area/security/main) +"adx" = (/obj/effect/landmark{name = "secequipment"},/turf/open/floor/plasteel/showroomfloor,/area/security/main) +"ady" = (/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/turf/open/floor/plasteel/showroomfloor,/area/security/main) +"adz" = (/obj/machinery/newscaster/security_unit{pixel_x = -30; pixel_y = 0},/obj/machinery/camera{c_tag = "Head of Security's Office"; dir = 4; network = list("SS13")},/obj/machinery/recharger{pixel_y = 4},/obj/structure/table/wood,/turf/open/floor/carpet,/area/security/hos) +"adA" = (/obj/structure/chair/comfy/black,/turf/open/floor/carpet,/area/security/hos) +"adB" = (/turf/open/floor/carpet,/area/security/hos) +"adC" = (/obj/machinery/hologram/holopad,/turf/open/floor/carpet,/area/security/hos) +"adD" = (/obj/machinery/keycard_auth{pixel_x = 24; pixel_y = 10},/obj/structure/table/wood,/obj/item/device/radio/off,/obj/item/device/taperecorder{pixel_y = 0},/turf/open/floor/carpet,/area/security/hos) +"adE" = (/obj/structure/sign/securearea{pixel_y = -32},/obj/structure/lattice/catwalk,/turf/open/space,/area/space) +"adF" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/auxstarboard) +"adG" = (/obj/structure/lattice,/obj/item/stack/cable_coil,/turf/open/space,/area/space) +"adH" = (/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/turf/open/floor/plasteel/darkwarning{dir = 10},/area/security/transfer) +"adI" = (/turf/open/floor/plasteel/darkwarning{dir = 2},/area/security/transfer) +"adJ" = (/obj/machinery/atmospherics/components/unary/outlet_injector/on{dir = 2},/turf/open/floor/plasteel/darkwarning{dir = 6},/area/security/transfer) +"adK" = (/obj/structure/bed,/obj/machinery/camera{c_tag = "Prison Cell 3"; network = list("SS13","Prison")},/obj/item/device/radio/intercom{desc = "Talk through this. It looks like it has been modified to not broadcast."; dir = 2; name = "Prison Intercom (General)"; pixel_x = 0; pixel_y = 24; prison_radio = 1},/turf/open/floor/plasteel/floorgrime,/area/security/prison) +"adL" = (/obj/structure/chair/stool,/obj/machinery/light/small{dir = 1},/obj/machinery/button/door{id = "permabolt3"; name = "Cell Bolt Control"; normaldoorcontrol = 1; pixel_x = 0; pixel_y = 25; req_access_txt = "0"; specialfunctions = 4},/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/floorgrime,/area/security/prison) +"adM" = (/obj/structure/bed,/obj/machinery/camera{c_tag = "Prison Cell 2"; network = list("SS13","Prison")},/obj/item/device/radio/intercom{desc = "Talk through this. It looks like it has been modified to not broadcast."; dir = 2; name = "Prison Intercom (General)"; pixel_x = 0; pixel_y = 24; prison_radio = 1},/turf/open/floor/plasteel/floorgrime,/area/security/prison) +"adN" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 8},/turf/open/floor/plasteel/floorgrime,/area/security/prison) +"adO" = (/obj/structure/chair/stool,/obj/machinery/light/small{dir = 1},/obj/machinery/button/door{id = "permabolt2"; name = "Cell Bolt Control"; normaldoorcontrol = 1; pixel_x = 0; pixel_y = 25; req_access_txt = "0"; specialfunctions = 4},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_Toxins = 0},/turf/open/floor/plasteel/floorgrime,/area/security/prison) +"adP" = (/obj/structure/bed,/obj/machinery/camera{c_tag = "Prison Cell 1"; network = list("SS13","Prison")},/obj/item/device/radio/intercom{desc = "Talk through this. It looks like it has been modified to not broadcast."; dir = 2; name = "Prison Intercom (General)"; pixel_x = 0; pixel_y = 24; prison_radio = 1},/turf/open/floor/plasteel/floorgrime,/area/security/prison) +"adQ" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/floorgrime,/area/security/prison) +"adR" = (/obj/structure/chair/stool,/obj/machinery/light/small{dir = 1},/obj/machinery/button/door{id = "permabolt1"; name = "Cell Bolt Control"; normaldoorcontrol = 1; pixel_x = 0; pixel_y = 25; req_access_txt = "0"; specialfunctions = 4},/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/floorgrime,/area/security/prison) +"adS" = (/obj/structure/sink{icon_state = "sink"; dir = 8; pixel_x = -12; pixel_y = 2},/obj/machinery/light/small{dir = 4},/turf/open/floor/plasteel/freezer,/area/security/prison) +"adT" = (/obj/structure/table,/obj/item/weapon/storage/box/firingpins,/obj/item/weapon/storage/box/firingpins,/obj/item/key/security,/turf/open/floor/plasteel/vault{dir = 8},/area/ai_monitored/security/armory) +"adU" = (/obj/structure/table,/obj/item/weapon/storage/box/chemimp{pixel_x = 6},/obj/item/weapon/storage/box/trackimp{pixel_x = -3},/obj/item/weapon/storage/lockbox/loyalty,/turf/open/floor/plasteel/vault{dir = 8},/area/ai_monitored/security/armory) +"adV" = (/obj/structure/rack,/obj/item/clothing/suit/armor/vest{pixel_x = -3; pixel_y = 3},/obj/item/clothing/suit/armor/vest{pixel_y = 0},/obj/item/clothing/suit/armor/vest{pixel_x = 3; pixel_y = -3},/obj/item/clothing/head/helmet{layer = 3.00001; pixel_x = -3; pixel_y = 3},/obj/item/clothing/head/helmet{layer = 3.00001},/obj/item/clothing/head/helmet{layer = 3.00001; pixel_x = 3; pixel_y = -3},/obj/machinery/firealarm{pixel_y = 24},/turf/open/floor/plasteel/vault{dir = 8},/area/ai_monitored/security/armory) +"adW" = (/obj/structure/rack,/obj/item/clothing/suit/armor/bulletproof{pixel_x = -3; pixel_y = 3},/obj/item/clothing/suit/armor/bulletproof{pixel_y = 0},/obj/item/clothing/suit/armor/bulletproof{pixel_x = 3; pixel_y = -3},/obj/item/clothing/head/helmet/alt{layer = 3.00001; pixel_x = -3; pixel_y = 3},/obj/item/clothing/head/helmet/alt{layer = 3.00001},/obj/item/clothing/head/helmet/alt{layer = 3.00001; pixel_x = 3; pixel_y = -3},/obj/machinery/camera/motion{c_tag = "Armory Motion Sensor"; dir = 2; name = "motion-sensitive security camera"},/turf/open/floor/plasteel/vault{dir = 8},/area/ai_monitored/security/armory) +"adX" = (/obj/structure/rack,/obj/item/clothing/suit/armor/riot{pixel_x = -3; pixel_y = 3},/obj/item/clothing/suit/armor/riot,/obj/item/clothing/suit/armor/riot{pixel_x = 3; pixel_y = -3},/obj/machinery/light{dir = 1},/obj/item/clothing/head/helmet/riot{pixel_x = -3; pixel_y = 3},/obj/item/clothing/head/helmet/riot,/obj/item/clothing/head/helmet/riot{pixel_x = 3; pixel_y = -3},/obj/item/weapon/shield/riot{pixel_x = -3; pixel_y = 3},/obj/item/weapon/shield/riot,/obj/item/weapon/shield/riot{pixel_x = 3; pixel_y = -3},/turf/open/floor/plasteel/vault{dir = 8},/area/ai_monitored/security/armory) +"adY" = (/obj/structure/rack,/obj/machinery/airalarm{pixel_y = 23},/obj/item/weapon/gun/energy/ionrifle,/obj/item/clothing/suit/armor/laserproof,/turf/open/floor/plasteel/vault{dir = 8},/area/ai_monitored/security/armory) +"adZ" = (/obj/structure/closet/secure_closet/lethalshots,/turf/open/floor/plasteel/black,/area/ai_monitored/security/armory) +"aea" = (/obj/vehicle/secway,/turf/open/floor/plasteel/black,/area/ai_monitored/security/armory) +"aeb" = (/obj/structure/closet/l3closet/security,/obj/machinery/camera{c_tag = "Brig Equipment Room"; dir = 4},/turf/open/floor/plasteel/showroomfloor,/area/security/main) +"aec" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/showroomfloor,/area/security/main) +"aed" = (/obj/structure/table/wood,/obj/item/device/flashlight/lamp/green{on = 0; pixel_x = -3; pixel_y = 8},/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/turf/open/floor/carpet,/area/security/hos) +"aee" = (/obj/structure/table/wood,/obj/item/weapon/folder/red,/obj/item/weapon/stamp/hos,/turf/open/floor/carpet,/area/security/hos) +"aef" = (/obj/item/weapon/book/manual/wiki/security_space_law,/obj/structure/table/wood,/turf/open/floor/carpet,/area/security/hos) +"aeg" = (/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/machinery/suit_storage_unit/hos,/turf/open/floor/carpet,/area/security/hos) +"aeh" = (/obj/machinery/door/airlock/external{name = "Security External Airlock"; req_access_txt = "63"},/turf/open/floor/plating,/area/security/main) +"aei" = (/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/power/solar{id = "auxsolareast"; name = "Port Auxiliary Solar Array"},/turf/open/floor/plasteel/airless/solarpanel,/area/solar/auxport) +"aej" = (/obj/structure/cable,/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/auxport) +"aek" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/door/poddoor/preopen{id = "executionfireblast"; layer = 2.9; name = "blast door"},/obj/machinery/door/firedoor,/turf/open/floor/plating,/area/security/transfer) +"ael" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/machinery/door/poddoor/preopen{id = "executionfireblast"; layer = 2.9; name = "blast door"},/obj/machinery/door/firedoor,/turf/open/floor/plating,/area/security/transfer) +"aem" = (/obj/machinery/door/poddoor/preopen{id = "executionfireblast"; layer = 2.9; name = "blast door"},/obj/machinery/atmospherics/pipe/simple/general/hidden,/obj/machinery/door/firedoor,/obj/machinery/door/window/westright{dir = 1; name = "Transfer Room"; req_access_txt = "2"},/turf/open/floor/plasteel/vault{dir = 8},/area/security/transfer) +"aen" = (/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/obj/machinery/flasher{id = "PCell 3"; pixel_x = -28},/turf/open/floor/plasteel/floorgrime,/area/security/prison) +"aeo" = (/obj/structure/table,/obj/item/weapon/paper,/obj/item/weapon/pen,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/floorgrime,/area/security/prison) +"aep" = (/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/obj/machinery/flasher{id = "PCell 2"; pixel_x = -28},/turf/open/floor/plasteel/floorgrime,/area/security/prison) +"aeq" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/floorgrime,/area/security/prison) +"aer" = (/obj/structure/table,/obj/item/weapon/paper,/obj/item/weapon/pen,/turf/open/floor/plasteel/floorgrime,/area/security/prison) +"aes" = (/obj/machinery/flasher{id = "PCell 1"; pixel_x = -28},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/plasteel/floorgrime,/area/security/prison) +"aet" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/turf/open/floor/plasteel/floorgrime,/area/security/prison) +"aeu" = (/obj/structure/toilet{dir = 1},/turf/open/floor/plasteel/freezer,/area/security/prison) +"aev" = (/obj/item/weapon/grenade/barrier{pixel_x = 4},/obj/item/weapon/grenade/barrier,/obj/item/weapon/grenade/barrier{pixel_x = -4},/obj/structure/table,/turf/open/floor/plasteel/vault{dir = 8},/area/ai_monitored/security/armory) +"aew" = (/turf/open/floor/plasteel/warning{dir = 9},/area/ai_monitored/security/armory) +"aex" = (/turf/open/floor/plasteel/warning{dir = 1},/area/ai_monitored/security/armory) +"aey" = (/obj/machinery/power/apc{cell_type = 5000; dir = 4; name = "Armory APC"; pixel_x = 24; pixel_y = 0},/obj/structure/cable{icon_state = "0-2"; pixel_y = 1; d2 = 2},/turf/open/floor/plasteel/warning{dir = 1},/area/ai_monitored/security/armory) +"aez" = (/obj/machinery/vending/security,/turf/open/floor/plasteel/showroomfloor,/area/security/main) +"aeA" = (/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/turf/open/floor/carpet,/area/security/hos) +"aeB" = (/obj/structure/chair{dir = 1},/turf/open/floor/carpet,/area/security/hos) +"aeC" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/carpet,/area/security/hos) +"aeD" = (/obj/item/weapon/storage/secure/safe/HoS{pixel_x = 35},/obj/structure/closet/secure_closet/hos,/turf/open/floor/carpet,/area/security/hos) +"aeE" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = -32; pixel_y = 0},/turf/open/floor/plating,/area/security/main) +"aeF" = (/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/power/solar{id = "auxsolareast"; name = "Port Auxiliary Solar Array"},/turf/open/floor/plasteel/airless/solarpanel,/area/solar/auxstarboard) +"aeG" = (/obj/structure/cable,/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/auxstarboard) +"aeH" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/auxport) +"aeI" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/auxport) +"aeJ" = (/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/auxport) +"aeK" = (/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/auxport) +"aeL" = (/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/auxport) +"aeM" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/auxport) +"aeN" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/auxport) +"aeO" = (/obj/structure/sign/securearea{pixel_x = 32; pixel_y = 0},/turf/open/space,/area/space) +"aeP" = (/obj/structure/table,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/item/weapon/scalpel{pixel_y = 12},/obj/item/weapon/circular_saw,/obj/item/weapon/hemostat,/obj/item/weapon/retractor,/obj/item/weapon/surgical_drapes,/obj/item/weapon/razor,/turf/open/floor/plasteel/black,/area/security/transfer) +"aeQ" = (/obj/structure/table,/obj/item/weapon/folder/red{pixel_x = 3},/obj/item/device/taperecorder{pixel_x = -3; pixel_y = 0},/obj/item/device/assembly/flash/handheld,/obj/item/weapon/reagent_containers/spray/pepper,/turf/open/floor/plasteel/black,/area/security/transfer) +"aeR" = (/obj/machinery/button/flasher{id = "executionflash"; pixel_x = 24; pixel_y = 5},/obj/machinery/button/door{id = "executionspaceblast"; name = "Vent to Space"; pixel_x = 25; pixel_y = -5; req_access_txt = "7"},/obj/machinery/atmospherics/pipe/simple/general/hidden,/turf/open/floor/plasteel/black,/area/security/transfer) +"aeS" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/closed/wall,/area/security/prison) +"aeT" = (/obj/machinery/door/airlock/glass_security{name = "Long-Term Cell 3"; req_access_txt = "2"},/turf/open/floor/plasteel/floorgrime,/area/security/prison) +"aeU" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall,/area/security/prison) +"aeV" = (/obj/machinery/door/airlock/glass_security{name = "Long-Term Cell 2"; req_access_txt = "2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/floorgrime,/area/security/prison) +"aeW" = (/obj/machinery/door/airlock/glass_security{name = "Long-Term Cell 1"; req_access_txt = "2"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/floorgrime,/area/security/prison) +"aeX" = (/obj/structure/closet/secure_closet{anchored = 1; name = "Contraband Locker"; req_access_txt = "3"},/turf/open/floor/plasteel/black,/area/ai_monitored/security/armory) +"aeY" = (/obj/item/weapon/storage/toolbox/drone,/turf/open/floor/plasteel/warning{dir = 8},/area/ai_monitored/security/armory) +"aeZ" = (/obj/structure/rack,/obj/item/weapon/gun/projectile/shotgun/riot{pixel_x = -3; pixel_y = 3},/obj/item/weapon/gun/projectile/shotgun/riot,/obj/item/weapon/gun/projectile/shotgun/riot{pixel_x = 3; pixel_y = -3},/turf/open/floor/plasteel/bot{dir = 2},/area/ai_monitored/security/armory) +"afa" = (/obj/structure/rack,/obj/item/weapon/gun/energy/gun{pixel_x = -3; pixel_y = 3},/obj/item/weapon/gun/energy/gun,/obj/item/weapon/gun/energy/gun{pixel_x = 3; pixel_y = -3},/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/turf/open/floor/plasteel/bot{dir = 2},/area/ai_monitored/security/armory) +"afb" = (/obj/structure/rack,/obj/item/weapon/gun/energy/laser{pixel_x = -3; pixel_y = 3},/obj/item/weapon/gun/energy/laser,/obj/item/weapon/gun/energy/laser{pixel_x = 3; pixel_y = -3},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/open/floor/plasteel/bot{dir = 2},/area/ai_monitored/security/armory) +"afc" = (/obj/structure/rack,/obj/item/weapon/gun/energy/gun/advtaser{pixel_x = -3; pixel_y = 3},/obj/item/weapon/gun/energy/gun/advtaser,/obj/item/weapon/gun/energy/gun/advtaser{pixel_x = 3; pixel_y = -3},/turf/open/floor/plasteel/bot{dir = 2},/area/ai_monitored/security/armory) +"afd" = (/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel,/area/ai_monitored/security/armory) +"afe" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/chair/office/dark{dir = 4},/turf/open/floor/plasteel,/area/ai_monitored/security/armory) +"aff" = (/obj/machinery/door/window/eastleft{name = "armoury desk"; req_access_txt = "1"},/obj/machinery/door/window/westleft{name = "armoury desk"; req_access_txt = "3"},/obj/structure/table/reinforced,/turf/open/floor/plasteel,/area/ai_monitored/security/armory) +"afg" = (/obj/machinery/power/apc{dir = 8; name = "Head of Security's Office APC"; pixel_x = -24; pixel_y = 0},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/carpet,/area/security/hos) +"afh" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/carpet,/area/security/hos) +"afi" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/carpet,/area/security/hos) +"afj" = (/obj/machinery/light_switch{pixel_y = -23},/obj/effect/landmark/event_spawn,/turf/open/floor/carpet,/area/security/hos) +"afk" = (/obj/machinery/disposal/bin,/obj/structure/disposalpipe/trunk,/turf/open/floor/carpet,/area/security/hos) +"afl" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/auxstarboard) +"afm" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/auxstarboard) +"afn" = (/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/auxstarboard) +"afo" = (/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/auxstarboard) +"afp" = (/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/auxstarboard) +"afq" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/auxstarboard) +"afr" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/auxstarboard) +"afs" = (/obj/structure/cable,/obj/machinery/power/solar{id = "auxsolareast"; name = "Port Auxiliary Solar Array"},/turf/open/floor/plasteel/airless/solarpanel,/area/solar/auxport) +"aft" = (/obj/machinery/portable_atmospherics/canister/nitrous_oxide,/obj/machinery/atmospherics/components/unary/portables_connector/visible,/turf/open/floor/plating/warnplate{dir = 9},/area/security/transfer) +"afu" = (/obj/structure/window/reinforced{dir = 4},/obj/machinery/portable_atmospherics/canister/carbon_dioxide,/obj/machinery/atmospherics/components/unary/portables_connector/visible,/turf/open/floor/plating/warnplate{dir = 1},/area/security/transfer) +"afv" = (/obj/structure/table,/obj/item/device/flashlight/lamp,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/black,/area/security/transfer) +"afw" = (/obj/structure/chair{dir = 1},/turf/open/floor/plasteel/black,/area/security/transfer) +"afx" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/obj/machinery/button/ignition{id = "executionburn"; pixel_x = 24; pixel_y = 5},/obj/machinery/button/door{id = "executionfireblast"; name = "Transfer Area Lockdown"; pixel_x = 25; pixel_y = -5; req_access_txt = "2"},/obj/machinery/atmospherics/pipe/simple/general/hidden,/turf/open/floor/plasteel/black,/area/security/transfer) +"afy" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,/turf/closed/wall/r_wall,/area/security/transfer) +"afz" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/red/side{dir = 8},/area/security/prison) +"afA" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/security/prison) +"afB" = (/obj/machinery/button/door{id = "permacell3"; name = "Cell 3 Lockdown"; pixel_x = -4; pixel_y = 25; req_access_txt = "2"},/obj/machinery/button/flasher{id = "PCell 3"; pixel_x = 6; pixel_y = 24},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,/turf/open/floor/plasteel/red/corner{dir = 4},/area/security/prison) +"afC" = (/obj/machinery/light{dir = 1},/obj/machinery/computer/security/telescreen{desc = "Used for watching Prison Wing holding areas."; name = "Prison Monitor"; network = list("Prison"); pixel_x = 0; pixel_y = 30},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/turf/open/floor/plasteel/red/side{dir = 1},/area/security/prison) +"afD" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/red/corner{dir = 1},/area/security/prison) +"afE" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,/turf/open/floor/plasteel,/area/security/prison) +"afF" = (/obj/machinery/button/door{id = "permacell2"; name = "Cell 2 Lockdown"; pixel_x = -4; pixel_y = 25; req_access_txt = "2"},/obj/machinery/button/flasher{id = "PCell 2"; pixel_x = 6; pixel_y = 24},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/red/corner{dir = 4},/area/security/prison) +"afG" = (/obj/machinery/computer/security/telescreen{desc = "Used for watching Prison Wing holding areas."; name = "Prison Monitor"; network = list("Prison"); pixel_x = 0; pixel_y = 30},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/camera{c_tag = "Prison Hallway"; network = list("SS13","Prison")},/turf/open/floor/plasteel/red/side{dir = 1},/area/security/prison) +"afH" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/red/corner{dir = 1},/area/security/prison) +"afI" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/security/prison) +"afJ" = (/obj/machinery/button/door{id = "permacell1"; name = "Cell 1 Lockdown"; pixel_x = -4; pixel_y = 25; req_access_txt = "2"},/obj/machinery/button/flasher{id = "PCell 1"; pixel_x = 6; pixel_y = 24},/obj/machinery/atmospherics/pipe/manifold4w/scrubbers/hidden,/turf/open/floor/plasteel/red/corner{dir = 4},/area/security/prison) +"afK" = (/obj/machinery/airalarm{pixel_y = 23},/obj/machinery/light{dir = 1},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/turf/open/floor/plasteel/red/side{dir = 1},/area/security/prison) +"afL" = (/obj/machinery/firealarm{dir = 2; pixel_y = 24},/obj/machinery/power/apc{dir = 4; name = "Prison Wing APC"; pixel_x = 24; pixel_y = 0},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/open/floor/plasteel/red/side{dir = 5},/area/security/prison) +"afM" = (/obj/machinery/flasher/portable,/turf/open/floor/plasteel/vault{dir = 8},/area/ai_monitored/security/armory) +"afN" = (/turf/open/floor/plasteel/warning{dir = 10},/area/ai_monitored/security/armory) +"afO" = (/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/turf/open/floor/plasteel/warning{dir = 2},/area/ai_monitored/security/armory) +"afP" = (/turf/open/floor/plasteel/warning{dir = 2},/area/ai_monitored/security/armory) +"afQ" = (/turf/open/floor/plasteel/warning/corner{dir = 1},/area/ai_monitored/security/armory) +"afR" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1},/turf/open/floor/plasteel,/area/ai_monitored/security/armory) +"afS" = (/turf/open/floor/plasteel,/area/ai_monitored/security/armory) +"afT" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel,/area/ai_monitored/security/armory) +"afU" = (/obj/machinery/door/poddoor/shutters{id = "armory"; name = "Armoury Shutter"},/obj/machinery/button/door{id = "armory"; name = "Armory Shutters"; pixel_x = 0; pixel_y = -26; req_access_txt = "3"},/turf/open/floor/plasteel/delivery{name = "floor"},/area/ai_monitored/security/armory) +"afV" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/showroomfloor,/area/security/main) +"afW" = (/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/structure/reagent_dispensers/peppertank{pixel_x = 30; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/showroomfloor,/area/security/main) +"afX" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/security/hos) +"afY" = (/obj/machinery/door/airlock/glass_command{name = "Head of Security"; req_access_txt = "58"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/carpet,/area/security/hos) +"afZ" = (/obj/structure/grille,/obj/structure/disposalpipe/segment,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/security/hos) +"aga" = (/obj/structure/table,/obj/item/stack/packageWrap,/obj/item/weapon/pen,/turf/open/floor/plasteel,/area/security/main) +"agb" = (/obj/machinery/disposal/bin,/obj/structure/disposalpipe/trunk,/turf/open/floor/plasteel/warning{dir = 5},/area/security/main) +"agc" = (/obj/machinery/camera{c_tag = "Security Escape Pod"; dir = 4; network = list("SS13")},/turf/open/floor/plating,/area/security/main) +"agd" = (/obj/structure/shuttle/engine/propulsion/burst{dir = 4},/turf/closed/wall/shuttle{icon_state = "swall_f6"; dir = 2},/area/shuttle/pod_3) +"age" = (/turf/closed/wall/shuttle{icon_state = "swall12"; dir = 2},/area/shuttle/pod_3) +"agf" = (/turf/open/space,/turf/closed/wall/shuttle{dir = 2; icon_state = "swall_f10"; layer = 2},/area/shuttle/pod_3) +"agg" = (/obj/structure/cable,/obj/machinery/power/solar{id = "auxsolareast"; name = "Port Auxiliary Solar Array"},/turf/open/floor/plasteel/airless/solarpanel,/area/solar/auxstarboard) +"agh" = (/obj/machinery/atmospherics/pipe/manifold/general/visible{dir = 8},/obj/machinery/light/small{dir = 8},/obj/machinery/portable_atmospherics/canister/nitrous_oxide,/turf/open/floor/plating/warnplate{dir = 8},/area/security/transfer) +"agi" = (/obj/structure/window/reinforced{dir = 4},/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 9},/turf/open/floor/plating,/area/security/transfer) +"agj" = (/obj/structure/rack,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/obj/item/device/flashlight{pixel_x = 1; pixel_y = 5},/obj/item/weapon/tank/internals/anesthetic{pixel_x = -3; pixel_y = 1},/obj/item/weapon/tank/internals/oxygen/red{pixel_x = 3},/turf/open/floor/plasteel/vault{dir = 8},/area/security/transfer) +"agk" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/open/floor/plasteel/black,/area/security/transfer) +"agl" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/general/hidden,/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/floor/plasteel/black,/area/security/transfer) +"agm" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/firedoor,/obj/machinery/door/airlock/security{aiControlDisabled = 0; icon_state = "door_closed"; id_tag = null; locked = 0; name = "Prisoner Transfer Centre"; req_access = null; req_access_txt = "2"},/turf/open/floor/plasteel/black,/area/security/transfer) +"agn" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel/red/side{dir = 8},/area/security/prison) +"ago" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel,/area/security/prison) +"agp" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/open/floor/plasteel,/area/security/prison) +"agq" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel,/area/security/prison) +"agr" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/security/prison) +"ags" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel,/area/security/prison) +"agt" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/security/prison) +"agu" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/security/prison) +"agv" = (/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 27},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/open/floor/plasteel/red/side{dir = 4},/area/security/prison) +"agw" = (/obj/structure/rack,/obj/item/weapon/storage/box/rubbershot{pixel_x = -3; pixel_y = 3},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/item/weapon/storage/box/rubbershot{pixel_x = -3; pixel_y = 3},/obj/item/weapon/storage/box/rubbershot,/obj/item/weapon/storage/box/rubbershot,/obj/item/weapon/storage/box/rubbershot{pixel_x = 3; pixel_y = -3},/obj/item/weapon/storage/box/rubbershot{pixel_x = 3; pixel_y = -3},/turf/open/floor/plasteel/vault{dir = 8},/area/ai_monitored/security/armory) +"agx" = (/obj/structure/rack,/obj/item/weapon/storage/box/teargas{pixel_x = -3; pixel_y = 3},/obj/item/weapon/storage/box/handcuffs,/obj/item/weapon/storage/box/flashbangs{pixel_x = 3; pixel_y = -3},/turf/open/floor/plasteel/vault{dir = 8},/area/ai_monitored/security/armory) +"agy" = (/turf/open/floor/plasteel/warning{dir = 8},/area/ai_monitored/security/armory) +"agz" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/ai_monitored/security/armory) +"agA" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/suit_storage_unit/security,/turf/open/floor/plasteel/red/side,/area/ai_monitored/security/armory) +"agB" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/suit_storage_unit/security,/turf/open/floor/plasteel/red/side,/area/ai_monitored/security/armory) +"agC" = (/obj/structure/table,/obj/machinery/recharger,/turf/open/floor/plasteel/showroomfloor,/area/security/main) +"agD" = (/obj/machinery/recharger,/obj/structure/table,/turf/open/floor/plasteel/showroomfloor,/area/security/main) +"agE" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/showroomfloor,/area/security/main) +"agF" = (/obj/item/device/radio/intercom{freerange = 0; frequency = 1459; name = "Station Intercom (General)"; pixel_x = 29},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/closet/wardrobe/red,/turf/open/floor/plasteel/showroomfloor,/area/security/main) +"agG" = (/obj/effect/landmark/start{name = "Security Officer"},/turf/open/floor/plasteel/red/side{dir = 9},/area/security/main) +"agH" = (/obj/effect/landmark/start{name = "Security Officer"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/red/side{dir = 1},/area/security/main) +"agI" = (/obj/effect/landmark/start{name = "Security Officer"},/turf/open/floor/plasteel/red/side{dir = 1},/area/security/main) +"agJ" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/red/side{dir = 1},/area/security/main) +"agK" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/effect/landmark/start{name = "Security Officer"},/turf/open/floor/plasteel/red/side{dir = 1},/area/security/main) +"agL" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/effect/landmark/start{name = "Security Officer"},/turf/open/floor/plasteel/red/side{dir = 1},/area/security/main) +"agM" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/turf/open/floor/plasteel/red/side{dir = 5},/area/security/main) +"agN" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/turf/open/floor/plasteel/warning{dir = 4},/area/security/main) +"agO" = (/obj/machinery/door/airlock/external{name = "Escape Pod Three"; req_access_txt = "0"},/turf/open/floor/plating,/area/security/main) +"agP" = (/turf/open/floor/plating,/area/security/main) +"agQ" = (/obj/machinery/door/airlock/shuttle{name = "Escape Pod Airlock"},/obj/docking_port/mobile/pod{dir = 4; id = "pod3"; name = "escape pod 3"},/turf/open/floor/plasteel/shuttle,/area/shuttle/pod_3) +"agR" = (/obj/item/device/radio/intercom{pixel_y = 25},/obj/item/weapon/storage/pod{pixel_x = 6; pixel_y = -32},/obj/structure/chair{dir = 4},/turf/open/floor/plasteel/shuttle,/area/shuttle/pod_3) +"agS" = (/obj/machinery/computer/shuttle/pod{pixel_y = -32; possible_destinations = "pod_asteroid3"; shuttleId = "pod3"},/obj/structure/chair{dir = 4},/obj/machinery/status_display{density = 0; layer = 3; pixel_x = 0; pixel_y = 32},/turf/open/floor/plasteel/shuttle,/area/shuttle/pod_3) +"agT" = (/obj/structure/grille,/obj/structure/window/shuttle,/turf/open/floor/plating,/area/shuttle/pod_3) +"agU" = (/obj/docking_port/stationary/random{dir = 4; id = "pod_asteroid3"; name = "asteroid"},/turf/open/space,/area/space) +"agV" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/security/transfer) +"agW" = (/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 5},/turf/open/floor/plating/warnplate{dir = 10},/area/security/transfer) +"agX" = (/obj/machinery/atmospherics/components/binary/pump{dir = 4; layer = 2.4},/obj/machinery/door/window/southleft{base_state = "right"; dir = 4; icon_state = "right"; name = "Armory"; req_access_txt = "2"},/turf/open/floor/plating/warnplate,/area/security/transfer) +"agY" = (/obj/machinery/atmospherics/pipe/simple/general/hidden{icon_state = "intact"; dir = 4},/turf/open/floor/plasteel/black,/area/security/transfer) +"agZ" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; external_pressure_bound = 101.325; on = 1; pressure_checks = 1},/obj/machinery/atmospherics/pipe/simple/general/hidden{icon_state = "intact"; dir = 4},/turf/open/floor/plasteel/black,/area/security/transfer) +"aha" = (/obj/machinery/light_switch{pixel_x = 25; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/general/hidden{dir = 9},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/black,/area/security/transfer) +"ahb" = (/turf/closed/wall/r_wall,/area/security/transfer) +"ahc" = (/obj/structure/table,/obj/item/weapon/restraints/handcuffs,/turf/open/floor/plasteel/red/side{dir = 10},/area/security/prison) +"ahd" = (/obj/structure/extinguisher_cabinet{pixel_x = 1; pixel_y = -27},/turf/open/floor/plasteel/red/side,/area/security/prison) +"ahe" = (/turf/open/floor/plasteel/red/side,/area/security/prison) +"ahf" = (/obj/structure/table,/obj/item/device/electropack,/turf/open/floor/plasteel/red/side,/area/security/prison) +"ahg" = (/obj/structure/table,/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/obj/item/weapon/storage/box/hug,/obj/item/weapon/razor{pixel_x = -6},/turf/open/floor/plasteel/red/side,/area/security/prison) +"ahh" = (/obj/structure/table,/obj/item/device/assembly/signaler,/obj/item/clothing/suit/straight_jacket,/turf/open/floor/plasteel/red/side,/area/security/prison) +"ahi" = (/obj/structure/closet/secure_closet/brig{anchored = 1},/turf/open/floor/plasteel/red/side,/area/security/prison) +"ahj" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_security{name = "Prison Wing"; req_access_txt = "2"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/red/side{dir = 9},/area/security/prison) +"ahk" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_security{name = "Prison Wing"; req_access_txt = "2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/red/side{dir = 5},/area/security/prison) +"ahl" = (/obj/structure/grille,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/turf/open/floor/plating,/area/ai_monitored/security/armory) +"ahm" = (/obj/structure/grille,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/open/floor/plating,/area/ai_monitored/security/armory) +"ahn" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/door/window/southleft{name = "Armory"; req_access_txt = "3"},/obj/machinery/door/firedoor,/turf/open/floor/plasteel/warning{dir = 10},/area/ai_monitored/security/armory) +"aho" = (/obj/machinery/door/firedoor,/obj/machinery/door/window/southleft{base_state = "right"; icon_state = "right"; name = "Armory"; req_access_txt = "3"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/warning{dir = 2},/area/ai_monitored/security/armory) +"ahp" = (/obj/structure/grille,/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/structure/window/reinforced/fulltile,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/open/floor/plating,/area/ai_monitored/security/armory) +"ahq" = (/obj/structure/reagent_dispensers/peppertank,/turf/closed/wall/r_wall,/area/ai_monitored/security/armory) +"ahr" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/structure/sign/securearea{pixel_x = -32},/turf/open/floor/plating,/area/security/main) +"ahs" = (/obj/machinery/door/airlock/glass_security{name = "Equipment Room"; req_access_txt = "1"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/showroomfloor,/area/security/main) +"aht" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/security/main) +"ahu" = (/obj/effect/landmark/start{name = "Security Officer"},/turf/open/floor/plasteel/red/side{dir = 8},/area/security/main) +"ahv" = (/obj/structure/table,/obj/item/weapon/restraints/handcuffs,/obj/item/device/assembly/timer,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/security/main) +"ahw" = (/turf/open/floor/plasteel,/area/security/main) +"ahx" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/landmark/start{name = "Head of Security"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/security/main) +"ahy" = (/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel,/area/security/main) +"ahz" = (/obj/structure/table,/obj/item/device/radio/off,/obj/item/weapon/screwdriver{pixel_y = 10},/turf/open/floor/plasteel,/area/security/main) +"ahA" = (/obj/effect/landmark/start{name = "Security Officer"},/obj/structure/chair{dir = 8},/turf/open/floor/plasteel,/area/security/main) +"ahB" = (/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel/red/side{dir = 4},/area/security/main) +"ahC" = (/obj/structure/sign/pods{pixel_x = 32; pixel_y = 0},/turf/open/floor/plasteel/warning{dir = 6},/area/security/main) +"ahD" = (/obj/structure/closet/emcloset,/obj/machinery/light/small{dir = 8},/turf/open/floor/plating,/area/security/main) +"ahE" = (/obj/structure/shuttle/engine/propulsion/burst{dir = 4},/turf/closed/wall/shuttle{icon_state = "swall_f5"; dir = 2},/area/shuttle/pod_3) +"ahF" = (/turf/open/space,/turf/closed/wall/shuttle{icon_state = "swall_f9"; dir = 2},/area/shuttle/pod_3) +"ahG" = (/obj/structure/table,/obj/item/stack/sheet/metal{amount = 1},/obj/item/weapon/storage/box/bodybags,/obj/item/weapon/pen,/obj/machinery/firealarm{dir = 1; pixel_y = -24},/turf/open/floor/plasteel/black,/area/security/transfer) +"ahH" = (/obj/structure/table,/obj/item/device/electropack,/obj/item/weapon/screwdriver,/obj/item/weapon/wrench,/obj/item/clothing/head/helmet,/obj/item/device/assembly/signaler,/obj/machinery/light/small,/obj/machinery/airalarm{dir = 1; icon_state = "alarm0"; pixel_y = -22},/turf/open/floor/plasteel/black,/area/security/transfer) +"ahI" = (/obj/structure/closet/secure_closet/injection,/obj/structure/cable,/obj/machinery/power/apc{dir = 2; name = "Prisoner Transfer Centre"; pixel_x = 0; pixel_y = -27},/turf/open/floor/plasteel/black,/area/security/transfer) +"ahJ" = (/obj/machinery/door/airlock/security{name = "Interrogation"; req_access = null; req_access_txt = "63"},/turf/open/floor/plasteel/black,/area/security/prison) +"ahK" = (/turf/closed/wall,/area/security/brig) +"ahL" = (/obj/machinery/door/firedoor,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/sign/securearea{pixel_x = -32; pixel_y = 0},/obj/machinery/door/poddoor/preopen{id = "Prison Gate"; name = "prison blast door"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/delivery{name = "floor"},/area/security/brig) +"ahM" = (/obj/machinery/door/firedoor,/obj/machinery/door/poddoor/preopen{id = "Prison Gate"; name = "prison blast door"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/delivery{name = "floor"},/area/security/brig) +"ahN" = (/turf/closed/wall/r_wall,/area/security/warden) +"ahO" = (/obj/machinery/requests_console{department = "Security"; departmentType = 5; pixel_x = -30; pixel_y = 0},/obj/machinery/camera{c_tag = "Brig Control Room"; dir = 4},/obj/machinery/light{icon_state = "tube1"; dir = 8},/obj/structure/rack,/obj/item/clothing/mask/gas/sechailer{pixel_x = -3; pixel_y = 3},/obj/item/clothing/mask/gas/sechailer,/obj/item/clothing/mask/gas/sechailer{pixel_x = 3; pixel_y = -3},/turf/open/floor/plasteel/showroomfloor,/area/security/warden) +"ahP" = (/obj/machinery/computer/prisoner,/turf/open/floor/plasteel/showroomfloor,/area/security/warden) +"ahQ" = (/obj/machinery/computer/security,/turf/open/floor/plasteel/showroomfloor,/area/security/warden) +"ahR" = (/obj/machinery/computer/secure_data,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/showroomfloor,/area/security/warden) +"ahS" = (/turf/open/floor/plasteel/showroomfloor,/area/security/warden) +"ahT" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/showroomfloor,/area/security/warden) +"ahU" = (/obj/structure/table,/obj/item/clothing/glasses/sunglasses{pixel_x = 3; pixel_y = 3},/obj/item/clothing/glasses/sunglasses{pixel_x = 3; pixel_y = 3},/obj/item/clothing/ears/earmuffs{pixel_x = -3; pixel_y = -2},/obj/item/clothing/ears/earmuffs{pixel_x = -3; pixel_y = -2},/turf/open/floor/plasteel/showroomfloor,/area/security/warden) +"ahV" = (/obj/structure/table,/obj/machinery/recharger,/obj/machinery/airalarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/turf/open/floor/plasteel/showroomfloor,/area/security/warden) +"ahW" = (/obj/structure/table,/obj/machinery/syndicatebomb/training,/obj/item/weapon/gun/energy/laser/practice,/turf/open/floor/plasteel/red/side{dir = 9},/area/security/main) +"ahX" = (/turf/open/floor/plasteel/red/side{dir = 1},/area/security/main) +"ahY" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/red/side{dir = 1},/area/security/main) +"ahZ" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/open/floor/plasteel/red/side{dir = 1},/area/security/main) +"aia" = (/obj/machinery/requests_console{department = "Security"; departmentType = 5; pixel_y = 30},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/plasteel/red/side{dir = 1},/area/security/main) +"aib" = (/obj/effect/landmark/start{name = "Security Officer"},/turf/open/floor/plasteel/red/corner{dir = 1},/area/security/main) +"aic" = (/obj/structure/table,/obj/item/device/assembly/flash/handheld,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/security/main) +"aid" = (/obj/machinery/hologram/holopad,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/security/main) +"aie" = (/obj/structure/table,/obj/item/weapon/folder/red,/obj/item/weapon/pen,/turf/open/floor/plasteel,/area/security/main) +"aif" = (/obj/machinery/airalarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/red/side{dir = 4},/area/security/main) +"aig" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/plasteel/black,/area/security/prison) +"aih" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/black,/area/security/prison) +"aii" = (/obj/machinery/airalarm{pixel_y = 23},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/black,/area/security/prison) +"aij" = (/obj/item/weapon/cigbutt,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/open/floor/plasteel/black,/area/security/prison) +"aik" = (/turf/open/floor/plasteel/black,/area/security/prison) +"ail" = (/obj/item/clothing/gloves/color/latex,/obj/item/clothing/mask/surgical,/obj/item/weapon/reagent_containers/spray/cleaner,/obj/structure/table/glass,/turf/open/floor/plasteel/whitered/side{dir = 9},/area/security/brig) +"aim" = (/obj/item/weapon/storage/firstaid/regular{pixel_x = 3; pixel_y = 3},/obj/item/weapon/storage/firstaid/regular,/obj/structure/table/glass,/turf/open/floor/plasteel/whitered/side{dir = 1},/area/security/brig) +"ain" = (/obj/item/device/radio/intercom{freerange = 0; frequency = 1459; name = "Station Intercom (General)"; pixel_x = 0; pixel_y = 24},/obj/structure/table/glass,/obj/machinery/computer/med_data/laptop,/turf/open/floor/plasteel/whitered/side{dir = 1},/area/security/brig) +"aio" = (/obj/structure/window/reinforced{dir = 4},/obj/machinery/iv_drip{density = 0},/obj/item/weapon/reagent_containers/blood/empty,/turf/open/floor/plasteel/whitered/side{dir = 5},/area/security/brig) +"aip" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/red/side{dir = 9},/area/security/brig) +"aiq" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/red/side{dir = 5},/area/security/brig) +"air" = (/obj/structure/grille,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/security/warden) +"ais" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel/showroomfloor,/area/security/warden) +"ait" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/open/floor/plasteel/showroomfloor,/area/security/warden) +"aiu" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/plasteel/showroomfloor,/area/security/warden) +"aiv" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/turf/open/floor/plasteel/showroomfloor,/area/security/warden) +"aiw" = (/obj/machinery/hologram/holopad,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/showroomfloor,/area/security/warden) +"aix" = (/obj/structure/table,/obj/machinery/recharger,/turf/open/floor/plasteel/showroomfloor,/area/security/warden) +"aiy" = (/obj/structure/grille,/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/security/warden) +"aiz" = (/obj/structure/table,/obj/item/weapon/storage/fancy/donut_box,/turf/open/floor/plasteel/red/side{dir = 8},/area/security/main) +"aiA" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/security/main) +"aiB" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/security/main) +"aiC" = (/obj/effect/landmark/start{name = "Security Officer"},/turf/open/floor/plasteel,/area/security/main) +"aiD" = (/obj/structure/table,/obj/item/weapon/book/manual/wiki/security_space_law,/obj/item/weapon/book/manual/wiki/security_space_law,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/security/main) +"aiE" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/turf/open/floor/plasteel,/area/security/main) +"aiF" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/security/main) +"aiG" = (/obj/structure/disposalpipe/sortjunction{dir = 4; icon_state = "pipe-j2s"; sortType = 8},/turf/open/floor/plasteel,/area/security/main) +"aiH" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/table,/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/turf/open/floor/plasteel,/area/security/main) +"aiI" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/landmark/start{name = "Security Officer"},/obj/structure/chair{dir = 8},/turf/open/floor/plasteel,/area/security/main) +"aiJ" = (/obj/structure/disposalpipe/sortjunction{dir = 4; icon_state = "pipe-j2s"; sortType = 7},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 8},/turf/open/floor/plasteel/red/side{dir = 4},/area/security/main) +"aiK" = (/obj/machinery/door/window/eastright{base_state = "left"; dir = 8; icon_state = "left"; name = "Security Delivery"; req_access_txt = "1"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/delivery,/area/security/main) +"aiL" = (/obj/machinery/navbeacon{codes_txt = "delivery;dir=8"; dir = 8; freq = 1400; location = "Security"},/obj/structure/plasticflaps{opacity = 1},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/turf/open/floor/plasteel/bot,/area/security/main) +"aiM" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/turf/open/floor/plating,/area/maintenance/fsmaint) +"aiN" = (/turf/closed/wall,/area/maintenance/fsmaint) +"aiO" = (/obj/structure/chair{dir = 4},/turf/open/floor/plasteel/black,/area/security/prison) +"aiP" = (/obj/structure/table,/obj/item/device/flashlight/lamp,/turf/open/floor/plasteel/black,/area/security/prison) +"aiQ" = (/obj/structure/chair{dir = 8},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/black,/area/security/prison) +"aiR" = (/obj/item/weapon/storage/box/bodybags,/obj/structure/extinguisher_cabinet{pixel_x = -27; pixel_y = 0},/obj/item/weapon/reagent_containers/syringe{name = "steel point"},/obj/item/weapon/reagent_containers/glass/bottle/charcoal,/obj/item/weapon/reagent_containers/glass/bottle/epinephrine,/obj/machinery/light{icon_state = "tube1"; dir = 8},/obj/structure/table/glass,/turf/open/floor/plasteel/whitered/side{dir = 10},/area/security/brig) +"aiS" = (/turf/open/floor/plasteel/whitered/corner{tag = "icon-whiteredcorner (WEST)"; dir = 8},/area/security/brig) +"aiT" = (/turf/open/floor/plasteel/white,/area/security/brig) +"aiU" = (/obj/machinery/door/window/westleft{base_state = "left"; dir = 4; icon_state = "left"; name = "Brig Infirmary"; req_access_txt = "0"},/turf/open/floor/plasteel/whitered/side{dir = 4},/area/security/brig) +"aiV" = (/obj/machinery/power/apc{dir = 8; name = "Brig Control APC"; pixel_x = -24; pixel_y = 0},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/open/floor/plasteel/showroomfloor,/area/security/warden) +"aiW" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/open/floor/plasteel/showroomfloor,/area/security/warden) +"aiX" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/open/floor/plasteel/showroomfloor,/area/security/warden) +"aiY" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/showroomfloor,/area/security/warden) +"aiZ" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/showroomfloor,/area/security/warden) +"aja" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/open/floor/plasteel/showroomfloor,/area/security/warden) +"ajb" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/floor/plasteel/showroomfloor,/area/security/warden) +"ajc" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/showroomfloor,/area/security/warden) +"ajd" = (/obj/machinery/door/airlock/glass_security{name = "Brig Control"; req_access_txt = "3"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/showroomfloor,/area/security/warden) +"aje" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/red/side{dir = 8},/area/security/main) +"ajf" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/security/main) +"ajg" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/atmospherics/pipe/manifold4w/scrubbers/hidden,/turf/open/floor/plasteel,/area/security/main) +"ajh" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/security/main) +"aji" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/security/main) +"ajj" = (/obj/structure/disposalpipe/junction{icon_state = "pipe-y"; dir = 1},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/security/main) +"ajk" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/chair,/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,/turf/open/floor/plasteel,/area/security/main) +"ajl" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/security/main) +"ajm" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/security/main) +"ajn" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/security/main) +"ajo" = (/obj/machinery/power/apc{dir = 4; name = "Security Office APC"; pixel_x = 24; pixel_y = 0},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/turf/open/floor/plasteel/red/side{dir = 4},/area/security/main) +"ajp" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall,/area/security/main) +"ajq" = (/obj/structure/disposalpipe/segment,/turf/open/floor/plating,/area/maintenance/fsmaint) +"ajr" = (/obj/structure/table,/obj/item/weapon/folder/red,/obj/item/device/taperecorder{pixel_y = 0},/turf/open/floor/plasteel/black,/area/security/prison) +"ajs" = (/obj/machinery/camera{c_tag = "Brig Interrogation"; dir = 8},/turf/open/floor/plasteel/black,/area/security/prison) +"ajt" = (/obj/structure/bodycontainer/morgue,/obj/machinery/camera{c_tag = "Brig Infirmary"; dir = 4},/turf/open/floor/plasteel/black,/area/security/brig) +"aju" = (/turf/open/floor/plasteel/whitered/side{dir = 8},/area/security/brig) +"ajv" = (/obj/machinery/door/window/westleft{base_state = "right"; dir = 4; icon_state = "right"; name = "Brig Infirmary"; req_access_txt = "0"},/turf/open/floor/plasteel/whitered/side{dir = 4},/area/security/brig) +"ajw" = (/obj/structure/closet/secure_closet/warden,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel/showroomfloor,/area/security/warden) +"ajx" = (/obj/structure/table,/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/showroomfloor,/area/security/warden) +"ajy" = (/obj/structure/chair/office/dark,/obj/effect/landmark/start{name = "Warden"},/obj/machinery/button/door{id = "Prison Gate"; name = "Prison Wing Lockdown"; pixel_x = -27; pixel_y = 8; req_access_txt = "2"},/obj/machinery/button/door{id = "Secure Gate"; name = "Cell Shutters"; pixel_x = -27; pixel_y = -2; req_access_txt = "0"},/turf/open/floor/plasteel/showroomfloor,/area/security/warden) +"ajz" = (/obj/structure/table,/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/turf/open/floor/plasteel/showroomfloor,/area/security/warden) +"ajA" = (/obj/structure/table,/obj/item/weapon/folder/red,/obj/item/weapon/pen,/obj/item/weapon/hand_labeler,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/item/weapon/book/manual/wiki/security_space_law,/turf/open/floor/plasteel/showroomfloor,/area/security/warden) +"ajB" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/showroomfloor,/area/security/warden) +"ajC" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/filingcabinet/chestdrawer,/turf/open/floor/plasteel/showroomfloor,/area/security/warden) +"ajD" = (/obj/machinery/light_switch{pixel_y = -23},/obj/machinery/disposal/bin,/obj/structure/disposalpipe/trunk{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/showroomfloor,/area/security/warden) +"ajE" = (/obj/structure/grille,/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/security/warden) +"ajF" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/machinery/firealarm{dir = 1; pixel_y = -24},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/red/side{dir = 10},/area/security/main) +"ajG" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/open/floor/plasteel/red/side,/area/security/main) +"ajH" = (/obj/structure/noticeboard{dir = 1; pixel_y = -27},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/red/side,/area/security/main) +"ajI" = (/obj/machinery/light_switch{pixel_y = -23},/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/open/floor/plasteel/red/side,/area/security/main) +"ajJ" = (/obj/machinery/light,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/red/side,/area/security/main) +"ajK" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/red/side,/area/security/main) +"ajL" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/open/floor/plasteel/red/side,/area/security/main) +"ajM" = (/obj/machinery/camera{c_tag = "Security Office"; dir = 1; network = list("SS13")},/obj/machinery/computer/secure_data,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/red/side,/area/security/main) +"ajN" = (/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -29},/obj/machinery/computer/security,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/red/side,/area/security/main) +"ajO" = (/obj/structure/filingcabinet,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/extinguisher_cabinet{pixel_x = 5; pixel_y = -32},/turf/open/floor/plasteel/red/side,/area/security/main) +"ajP" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/red/side,/area/security/main) +"ajQ" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/open/floor/plasteel/red/side,/area/security/main) +"ajR" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/red/side{dir = 6},/area/security/main) +"ajS" = (/obj/machinery/door/airlock/maintenance{name = "Security Maintenance"; req_access_txt = "1"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/security/main) +"ajT" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint) +"ajU" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/open/floor/plating,/area/maintenance/fsmaint) +"ajV" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/maintenance/fsmaint) +"ajW" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/black,/area/security/prison) +"ajX" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/black,/area/security/prison) +"ajY" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/black,/area/security/prison) +"ajZ" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/turf/open/floor/plasteel/black,/area/security/prison) +"aka" = (/obj/structure/bodycontainer/morgue,/turf/open/floor/plasteel/black,/area/security/brig) +"akb" = (/turf/open/floor/plasteel/whitered/side{dir = 10},/area/security/brig) +"akc" = (/obj/structure/bed,/obj/item/clothing/suit/straight_jacket,/turf/open/floor/plasteel/whitered/side,/area/security/brig) +"akd" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/bed,/obj/item/clothing/suit/straight_jacket,/turf/open/floor/plasteel/whitered/side{dir = 6},/area/security/brig) +"ake" = (/obj/structure/grille,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"; pixel_x = -32},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/security/warden) +"akf" = (/obj/structure/grille,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/cable,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/security/warden) +"akg" = (/obj/structure/table/reinforced,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/door/window/brigdoor{dir = 1; name = "Armory Desk"; req_access_txt = "3"},/obj/machinery/door/window/southleft{name = "Reception Desk"; req_access_txt = "63"},/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/pen{pixel_x = 4; pixel_y = 4},/turf/open/floor/plasteel/showroomfloor,/area/security/warden) +"akh" = (/obj/structure/grille,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/security/warden) +"aki" = (/obj/structure/grille,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/security/warden) +"akj" = (/obj/machinery/door/airlock/glass_security{name = "Brig Control"; req_access_txt = "3"},/turf/open/floor/plasteel/showroomfloor,/area/security/warden) +"akk" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/structure/cable,/turf/open/floor/plating,/area/security/warden) +"akl" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/security{name = "Security Office"; req_access = null; req_access_txt = "1"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/security/main) +"akm" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall/r_wall,/area/security/main) +"akn" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/fsmaint) +"ako" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/fsmaint) +"akp" = (/obj/item/stack/rods,/turf/open/space,/area/space) +"akq" = (/turf/closed/wall,/area/security/processing) +"akr" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/security/processing) +"aks" = (/obj/machinery/door/airlock/security{name = "Interrogation"; req_access = null; req_access_txt = "63"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/black,/area/security/prison) +"akt" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/red/corner{dir = 1},/area/security/brig) +"aku" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/red/corner{dir = 4},/area/security/brig) +"akv" = (/turf/open/floor/plasteel/red/side{dir = 1},/area/security/brig) +"akw" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/red/side{dir = 1},/area/security/brig) +"akx" = (/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/obj/machinery/firealarm{dir = 2; pixel_y = 24},/turf/open/floor/plasteel/red/side{dir = 1},/area/security/brig) +"aky" = (/obj/structure/sign/goldenplaque{pixel_y = 32},/turf/open/floor/plasteel/red/side{dir = 1},/area/security/brig) +"akz" = (/obj/machinery/camera{c_tag = "Brig East"},/turf/open/floor/plasteel/red/side{dir = 1},/area/security/brig) +"akA" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/red/side{dir = 1},/area/security/brig) +"akB" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/red/side{dir = 1},/area/security/brig) +"akC" = (/turf/open/floor/plasteel/red/side{dir = 5},/area/security/brig) +"akD" = (/turf/closed/wall/r_wall,/area/security/brig) +"akE" = (/obj/machinery/light_switch{pixel_y = 28},/obj/structure/closet/secure_closet/courtroom,/obj/effect/decal/cleanable/cobweb,/obj/structure/sign/securearea{pixel_x = -32},/obj/item/weapon/gavelhammer,/turf/open/floor/plasteel,/area/crew_quarters/courtroom) +"akF" = (/obj/item/device/radio/intercom{broadcasting = 0; listening = 1; name = "Station Intercom (General)"; pixel_y = 20},/obj/machinery/camera{c_tag = "Courtroom North"},/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/crew_quarters/courtroom) +"akG" = (/obj/structure/chair{name = "Judge"},/turf/open/floor/plasteel/blue/side{dir = 9},/area/crew_quarters/courtroom) +"akH" = (/obj/structure/chair{name = "Judge"},/obj/machinery/light{dir = 1},/turf/open/floor/plasteel/blue/side{dir = 1},/area/crew_quarters/courtroom) +"akI" = (/obj/structure/chair{name = "Judge"},/turf/open/floor/plasteel/blue/side{dir = 5},/area/crew_quarters/courtroom) +"akJ" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 2; on = 1},/turf/open/floor/plasteel,/area/crew_quarters/courtroom) +"akK" = (/obj/structure/window/reinforced{dir = 8},/turf/open/floor/plasteel/black,/area/crew_quarters/courtroom) +"akL" = (/turf/open/floor/plasteel/black,/area/crew_quarters/courtroom) +"akM" = (/turf/closed/wall,/area/crew_quarters/courtroom) +"akN" = (/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/auxport) +"akO" = (/obj/machinery/gulag_teleporter,/turf/open/floor/plasteel,/area/security/processing) +"akP" = (/obj/machinery/computer/gulag_teleporter_computer,/turf/open/floor/plasteel,/area/security/processing) +"akQ" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/obj/machinery/computer/security{name = "Labor Camp Monitoring"; network = list("Labor")},/turf/open/floor/plasteel,/area/security/processing) +"akR" = (/obj/structure/sign/securearea{pixel_x = 32; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/table,/obj/item/weapon/storage/box/prisoner,/obj/machinery/camera{c_tag = "Labor Shuttle Dock North"},/turf/open/floor/plasteel,/area/security/processing) +"akS" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall/r_wall,/area/security/brig) +"akT" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/red/side{dir = 9},/area/security/brig) +"akU" = (/obj/machinery/power/apc{dir = 1; name = "Labor Shuttle Dock APC"; pixel_y = 24},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/red/side{dir = 1},/area/security/brig) +"akV" = (/obj/machinery/firealarm{dir = 2; pixel_y = 24},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/red/side{dir = 1},/area/security/brig) +"akW" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,/turf/open/floor/plasteel/red/side{dir = 1},/area/security/brig) +"akX" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/turf/open/floor/plasteel/red/side{dir = 1},/area/security/brig) +"akY" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel/red/side{dir = 1},/area/security/brig) +"akZ" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/red/corner{dir = 1},/area/security/brig) +"ala" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/security/brig) +"alb" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/turf/open/floor/plasteel,/area/security/brig) +"alc" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,/turf/open/floor/plasteel,/area/security/brig) +"ald" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/security/brig) +"ale" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/security/brig) +"alf" = (/obj/machinery/atmospherics/pipe/manifold4w/scrubbers/hidden,/turf/open/floor/plasteel,/area/security/brig) +"alg" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/security/brig) +"alh" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/security/brig) +"ali" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/red/side{dir = 4},/area/security/brig) +"alj" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/security{name = "Brig"; req_access = null; req_access_txt = "63; 42"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/security/brig) +"alk" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/crew_quarters/courtroom) +"all" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/neutral/side{dir = 9},/area/crew_quarters/courtroom) +"alm" = (/obj/structure/table/wood,/obj/item/device/radio/intercom{broadcasting = 0; dir = 8; listening = 1; name = "Station Intercom (Court)"; pixel_x = 0},/turf/open/floor/plasteel/neutral/side{dir = 1},/area/crew_quarters/courtroom) +"aln" = (/obj/structure/table/wood,/obj/item/weapon/gavelblock,/turf/open/floor/plasteel/neutral/side{dir = 1},/area/crew_quarters/courtroom) +"alo" = (/obj/structure/table/wood,/obj/item/weapon/book/manual/wiki/security_space_law,/turf/open/floor/plasteel/neutral/side{dir = 1},/area/crew_quarters/courtroom) +"alp" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/neutral/side{dir = 5},/area/crew_quarters/courtroom) +"alq" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/structure/chair{dir = 8},/turf/open/floor/plasteel/vault{dir = 8},/area/crew_quarters/courtroom) +"alr" = (/obj/machinery/door/window/southleft{name = "Court Cell"; req_access_txt = "2"},/turf/open/floor/plasteel/black,/area/crew_quarters/courtroom) +"als" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/maintenance/auxsolarport) +"alt" = (/obj/machinery/door/airlock/external{name = "Solar Maintenance"; req_access = null; req_access_txt = "10; 13"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plating,/area/maintenance/auxsolarport) +"alu" = (/turf/open/space,/turf/closed/wall/shuttle{icon_state = "swall_f6"; dir = 2},/area/shuttle/labor) +"alv" = (/obj/structure/grille,/obj/structure/window/shuttle,/turf/open/floor/plating,/area/shuttle/labor) +"alw" = (/turf/open/space,/turf/closed/wall/shuttle{dir = 2; icon_state = "swall_f10"; layer = 2},/area/shuttle/labor) +"alx" = (/turf/closed/wall/r_wall,/area/security/processing) +"aly" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/open/floor/plasteel/warning/corner{dir = 1},/area/security/processing) +"alz" = (/obj/structure/chair{dir = 1},/turf/open/floor/plasteel,/area/security/processing) +"alA" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/security/processing) +"alB" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/turf/open/floor/plasteel,/area/security/processing) +"alC" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/firedoor,/obj/machinery/door/airlock/security{name = "Labor Shuttle"; req_access = null; req_access_txt = "2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/security/brig) +"alD" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/red/side{dir = 8},/area/security/brig) +"alE" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/security/brig) +"alF" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/camera{c_tag = "Brig West"; dir = 1},/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/open/floor/plasteel/red/corner{dir = 2},/area/security/brig) +"alG" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/red/side,/area/security/brig) +"alH" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/red/corner{dir = 8},/area/security/brig) +"alI" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/security/brig) +"alJ" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/open/floor/plasteel/red/corner{dir = 2},/area/security/brig) +"alK" = (/obj/machinery/light,/obj/machinery/door_timer{id = "Cell 1"; name = "Cell 1"; pixel_y = -32},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/red/side,/area/security/brig) +"alL" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/red/corner{dir = 8},/area/security/brig) +"alM" = (/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden,/turf/open/floor/plasteel/red/corner{dir = 2},/area/security/brig) +"alN" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/door_timer{id = "Cell 2"; name = "Cell 2"; pixel_y = -32},/turf/open/floor/plasteel/red/side,/area/security/brig) +"alO" = (/obj/machinery/camera{c_tag = "Brig Central"; dir = 1},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/door_timer{id = "Cell 3"; name = "Cell 3"; pixel_y = -32},/turf/open/floor/plasteel/red/side,/area/security/brig) +"alP" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/red/side,/area/security/brig) +"alQ" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/open/floor/plasteel/red/side{dir = 9},/area/security/brig) +"alR" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/red/side{dir = 5},/area/security/brig) +"alS" = (/obj/machinery/light,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/door_timer{id = "Cell 4"; name = "Cell 4"; pixel_y = -32},/turf/open/floor/plasteel/red/side,/area/security/brig) +"alT" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/open/floor/plasteel/red/corner{dir = 8},/area/security/brig) +"alU" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/security/brig) +"alV" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/open/floor/plasteel/red/side{dir = 4},/area/security/brig) +"alW" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/closed/wall/r_wall,/area/security/brig) +"alX" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/crew_quarters/courtroom) +"alY" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/neutral/side{dir = 8},/area/crew_quarters/courtroom) +"alZ" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/turf/open/floor/plasteel/neutral/side{dir = 4},/area/crew_quarters/courtroom) +"ama" = (/turf/open/floor/plasteel,/area/crew_quarters/courtroom) +"amb" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plating,/area/maintenance/auxsolarport) +"amc" = (/turf/closed/wall/shuttle{icon_state = "swall3"; dir = 2},/area/shuttle/labor) +"amd" = (/obj/machinery/computer/shuttle/labor,/obj/structure/reagent_dispensers/peppertank{pixel_x = -31; pixel_y = 0},/turf/open/floor/plasteel/shuttle/red,/area/shuttle/labor) +"ame" = (/obj/structure/chair/office/dark{dir = 1},/turf/open/floor/plasteel/shuttle/red,/area/shuttle/labor) +"amf" = (/obj/structure/table,/obj/item/weapon/folder/red,/obj/item/weapon/restraints/handcuffs,/turf/open/floor/plasteel/shuttle/red,/area/shuttle/labor) +"amg" = (/obj/structure/grille,/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 0; pixel_y = 32},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/security/processing) +"amh" = (/turf/open/floor/plasteel/warning{dir = 8},/area/security/processing) +"ami" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/plasteel,/area/security/processing) +"amj" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/security/processing) +"amk" = (/obj/machinery/light_switch{pixel_x = 27},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/security/processing) +"aml" = (/obj/machinery/door/airlock/glass_security{id_tag = null; name = "Evidence Storage"; req_access_txt = "63"},/turf/open/floor/plasteel/red/side,/area/security/brig) +"amm" = (/obj/structure/grille,/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/cable,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/security/brig) +"amn" = (/obj/machinery/door/window/brigdoor{id = "Cell 1"; name = "Cell 1"; req_access_txt = "1"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel/red/side,/area/security/brig) +"amo" = (/obj/structure/grille,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/security/brig) +"amp" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/closed/wall,/area/security/brig) +"amq" = (/obj/structure/grille,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/security/brig) +"amr" = (/obj/machinery/door/window/brigdoor{id = "Cell 2"; name = "Cell 2"; req_access_txt = "1"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel/red/side,/area/security/brig) +"ams" = (/obj/machinery/door/window/brigdoor{id = "Cell 3"; name = "Cell 3"; req_access_txt = "1"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel/red/side,/area/security/brig) +"amt" = (/obj/structure/grille,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/security/brig) +"amu" = (/obj/machinery/door/airlock/glass_security{name = "Brig Desk"; req_access_txt = "1"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/open/floor/plasteel/black,/area/security/brig) +"amv" = (/obj/structure/grille,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/security/brig) +"amw" = (/obj/machinery/door/airlock/glass_security{id_tag = "innerbrig"; name = "Brig"; req_access_txt = "63"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel/red/side{dir = 9},/area/security/brig) +"amx" = (/obj/machinery/door/airlock/glass_security{id_tag = "innerbrig"; name = "Brig"; req_access_txt = "63"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel/red/side{dir = 5},/area/security/brig) +"amy" = (/obj/structure/grille,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/security/brig) +"amz" = (/obj/machinery/door/window/brigdoor{id = "Cell 4"; name = "Cell 4"; req_access_txt = "1"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/red/side,/area/security/brig) +"amA" = (/obj/structure/grille,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/security/brig) +"amB" = (/obj/structure/chair{dir = 4; name = "Prosecution"},/turf/open/floor/plasteel/red/side{dir = 9},/area/crew_quarters/courtroom) +"amC" = (/obj/structure/table/wood,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/neutral/side{dir = 8},/area/crew_quarters/courtroom) +"amD" = (/obj/machinery/hologram/holopad,/turf/open/floor/plasteel/bot,/area/crew_quarters/courtroom) +"amE" = (/obj/structure/table/wood,/obj/item/weapon/folder/blue,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/neutral/side{dir = 4},/area/crew_quarters/courtroom) +"amF" = (/obj/structure/chair{dir = 8; name = "Defense"},/turf/open/floor/plasteel/green/side{dir = 5},/area/crew_quarters/courtroom) +"amG" = (/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/auxstarboard) +"amH" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/airlock/external{name = "Solar Maintenance"; req_access = null; req_access_txt = "10; 13"},/turf/open/floor/plating,/area/maintenance/auxsolarport) +"amI" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/maintenance/fpmaint2) +"amJ" = (/obj/structure/grille,/obj/structure/cable/yellow{d2 = 8; icon_state = "0-8"},/obj/structure/window/shuttle,/turf/open/floor/plating,/area/shuttle/labor) +"amK" = (/turf/open/floor/plasteel/shuttle/red,/area/shuttle/labor) +"amL" = (/obj/machinery/button/flasher{id = "gulagshuttleflasher"; name = "Flash Control"; pixel_x = 0; pixel_y = -26; req_access_txt = "1"},/turf/open/floor/plasteel/shuttle/red,/area/shuttle/labor) +"amM" = (/obj/machinery/mineral/labor_claim_console{machinedir = 2; pixel_x = 30; pixel_y = 30},/turf/open/floor/plasteel/shuttle/red,/area/shuttle/labor) +"amN" = (/obj/machinery/door/airlock/shuttle{name = "Labor Shuttle Airlock"; req_access_txt = "2"},/turf/open/floor/plasteel/shuttle/red,/area/shuttle/labor) +"amO" = (/obj/machinery/door/airlock/external{name = "Labor Camp Shuttle Airlock"; req_access_txt = "2"},/turf/open/floor/plating,/area/security/processing) +"amP" = (/turf/open/floor/plating,/area/security/processing) +"amQ" = (/turf/open/floor/plasteel,/area/security/processing) +"amR" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/security/processing) +"amS" = (/obj/machinery/airalarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/security/processing) +"amT" = (/obj/structure/closet{name = "Evidence Closet"},/turf/open/floor/plasteel/red/side{dir = 9},/area/security/brig) +"amU" = (/obj/structure/closet{name = "Evidence Closet"},/turf/open/floor/plasteel/red/side{dir = 5},/area/security/brig) +"amV" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/obj/item/device/radio/intercom{desc = "Talk through this. It looks like it has been modified to not broadcast."; dir = 2; name = "Prison Intercom (General)"; pixel_x = -25; pixel_y = -2; prison_radio = 1},/turf/open/floor/plasteel/floorgrime,/area/security/brig) +"amW" = (/turf/open/floor/plasteel/floorgrime,/area/security/brig) +"amX" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; external_pressure_bound = 101.325; on = 1; pressure_checks = 1},/obj/machinery/light/small{dir = 4},/turf/open/floor/plasteel/floorgrime,/area/security/brig) +"amY" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/obj/item/device/radio/intercom{desc = "Talk through this. It looks like it has been modified to not broadcast."; dir = 2; name = "Prison Intercom (General)"; pixel_x = -25; pixel_y = -2; prison_radio = 1},/turf/open/floor/plasteel/floorgrime,/area/security/brig) +"amZ" = (/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel/floorgrime,/area/security/brig) +"ana" = (/obj/machinery/button/door{id = "briggate"; name = "Desk Shutters"; pixel_x = -26; pixel_y = 6; req_access_txt = "0"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/button/flasher{id = "brigentry"; pixel_x = -28; pixel_y = -8},/turf/open/floor/plasteel/black,/area/security/brig) +"anb" = (/obj/machinery/computer/secure_data,/turf/open/floor/plasteel/black,/area/security/brig) +"anc" = (/obj/structure/table/reinforced,/obj/machinery/door/poddoor/shutters/preopen{id = "briggate"; name = "security shutters"},/obj/machinery/door/window/eastleft{name = "Brig Desk"; req_access_txt = "1"},/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/pen,/turf/open/floor/plasteel/black,/area/security/brig) +"and" = (/turf/open/floor/plasteel/red/side{dir = 9},/area/security/brig) +"ane" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/floorgrime,/area/security/brig) +"anf" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; external_pressure_bound = 101.325; on = 1; pressure_checks = 1},/obj/machinery/flasher{id = "Cell 4"; pixel_x = 28},/obj/machinery/light/small{dir = 4},/turf/open/floor/plasteel/floorgrime,/area/security/brig) +"ang" = (/obj/structure/chair{dir = 4; name = "Prosecution"},/turf/open/floor/plasteel/red/side{dir = 10},/area/crew_quarters/courtroom) +"anh" = (/obj/structure/table/wood,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/neutral/side{dir = 10},/area/crew_quarters/courtroom) +"ani" = (/turf/open/floor/plasteel/neutral/side,/area/crew_quarters/courtroom) +"anj" = (/obj/item/device/radio/beacon,/turf/open/floor/plasteel/neutral/side,/area/crew_quarters/courtroom) +"ank" = (/obj/structure/table/wood,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/neutral/side{dir = 6},/area/crew_quarters/courtroom) +"anl" = (/obj/structure/chair{dir = 8; name = "Defense"},/turf/open/floor/plasteel/green/side{dir = 6},/area/crew_quarters/courtroom) +"anm" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/auxstarboard) +"ann" = (/turf/closed/wall,/area/maintenance/fsmaint2) +"ano" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"anp" = (/turf/closed/wall/r_wall,/area/maintenance/auxsolarport) +"anq" = (/obj/machinery/power/solar_control{id = "auxsolareast"; name = "Fore Port Solar Control"; track = 0},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/open/floor/plating,/area/maintenance/auxsolarport) +"anr" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/open/floor/plating,/area/maintenance/auxsolarport) +"ans" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 32; pixel_y = 0},/turf/open/floor/plating,/area/maintenance/auxsolarport) +"ant" = (/turf/closed/wall,/area/maintenance/fpmaint2) +"anu" = (/obj/effect/decal/cleanable/vomit,/turf/open/floor/plating,/area/maintenance/fpmaint2) +"anv" = (/obj/effect/decal/cleanable/dirt,/turf/open/floor/plating,/area/maintenance/fpmaint2) +"anw" = (/obj/item/weapon/cigbutt/cigarbutt,/obj/effect/decal/cleanable/blood/old,/turf/open/floor/plating,/area/maintenance/fpmaint2) +"anx" = (/obj/machinery/door/airlock/shuttle{name = "Labor Shuttle Airlock"; req_access_txt = "2"},/turf/open/floor/plasteel/black,/area/shuttle/labor) +"any" = (/turf/closed/wall/shuttle,/area/shuttle/labor) +"anz" = (/obj/machinery/mineral/stacking_machine/laborstacker{input_dir = 2; output_dir = 1},/turf/open/floor/plasteel/black,/area/shuttle/labor) +"anA" = (/obj/machinery/computer/shuttle/labor,/turf/open/floor/plasteel/warning{dir = 8},/area/security/processing) +"anB" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/security/processing) +"anC" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/security/processing) +"anD" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/security/processing) +"anE" = (/obj/structure/closet{name = "Evidence Closet"},/turf/open/floor/plasteel/red/side{dir = 8},/area/security/brig) +"anF" = (/turf/open/floor/plasteel,/area/security/brig) +"anG" = (/obj/structure/closet{name = "Evidence Closet"},/turf/open/floor/plasteel/red/side{dir = 4},/area/security/brig) +"anH" = (/obj/structure/bed,/obj/item/weapon/bedsheet,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/flasher{id = "Cell 1"; pixel_x = -28},/turf/open/floor/plasteel/floorgrime,/area/security/brig) +"anI" = (/obj/structure/closet/secure_closet/brig{id = "Cell 1"; name = "Cell 1 Locker"},/turf/open/floor/plasteel/floorgrime,/area/security/brig) +"anJ" = (/obj/structure/bed,/obj/item/weapon/bedsheet,/obj/machinery/flasher{id = "Cell 2"; pixel_x = -28},/turf/open/floor/plasteel/floorgrime,/area/security/brig) +"anK" = (/obj/structure/closet/secure_closet/brig{id = "Cell 2"; name = "Cell 2 Locker"},/turf/open/floor/plasteel/floorgrime,/area/security/brig) +"anL" = (/obj/structure/bed,/obj/item/weapon/bedsheet,/obj/machinery/flasher{id = "Cell 3"; pixel_x = -28},/turf/open/floor/plasteel/floorgrime,/area/security/brig) +"anM" = (/obj/structure/closet/secure_closet/brig{id = "Cell 3"; name = "Cell 3 Locker"},/turf/open/floor/plasteel/floorgrime,/area/security/brig) +"anN" = (/obj/machinery/light/small{dir = 8},/obj/machinery/button/door{desc = "A remote control switch for the medbay foyer."; id = "outerbrig"; name = "Brig Exterior Doors Control"; normaldoorcontrol = 1; pixel_x = -26; pixel_y = -5; req_access_txt = "63"},/obj/machinery/button/door{desc = "A remote control switch for the medbay foyer."; id = "innerbrig"; name = "Brig Interior Doors Control"; normaldoorcontrol = 1; pixel_x = -26; pixel_y = 5; req_access_txt = "63"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/black,/area/security/brig) +"anO" = (/obj/structure/chair/office/dark{dir = 4},/turf/open/floor/plasteel/black,/area/security/brig) +"anP" = (/obj/structure/table/reinforced,/obj/machinery/door/poddoor/shutters/preopen{id = "briggate"; name = "security shutters"},/obj/machinery/door/window/eastright{name = "Brig Desk"; req_access_txt = "2"},/obj/item/weapon/restraints/handcuffs,/obj/item/device/radio/off,/turf/open/floor/plasteel/black,/area/security/brig) +"anQ" = (/obj/machinery/flasher{id = "brigentry"; pixel_x = 28},/turf/open/floor/plasteel/red/side{dir = 5},/area/security/brig) +"anR" = (/obj/structure/closet/secure_closet/brig{id = "Cell 4"; name = "Cell 4 Locker"},/turf/open/floor/plasteel/floorgrime,/area/security/brig) +"anS" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/floorgrime,/area/security/brig) +"anT" = (/obj/structure/bed,/obj/item/weapon/bedsheet,/obj/item/device/radio/intercom{desc = "Talk through this. It looks like it has been modified to not broadcast."; dir = 2; name = "Prison Intercom (General)"; pixel_x = 25; pixel_y = -2; prison_radio = 1},/turf/open/floor/plasteel/floorgrime,/area/security/brig) +"anU" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/crew_quarters/courtroom) +"anV" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/crew_quarters/courtroom) +"anW" = (/obj/machinery/door/airlock/glass{name = "Courtroom"; req_access_txt = "42"},/turf/open/floor/plasteel/black,/area/crew_quarters/courtroom) +"anX" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/crew_quarters/courtroom) +"anY" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/maintenance/auxsolarstarboard) +"anZ" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/airlock/external{name = "Solar Maintenance"; req_access = null; req_access_txt = "10; 13"},/turf/open/floor/plating,/area/maintenance/auxsolarstarboard) +"aoa" = (/obj/structure/chair{dir = 1},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aob" = (/obj/structure/chair/stool{pixel_y = 8},/turf/open/floor/plating,/area/maintenance/auxsolarport) +"aoc" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/open/floor/plating,/area/maintenance/auxsolarport) +"aod" = (/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/power/terminal,/obj/machinery/light/small{dir = 4},/turf/open/floor/plating,/area/maintenance/auxsolarport) +"aoe" = (/obj/machinery/atmospherics/components/unary/tank/air{dir = 2},/turf/open/floor/plating,/area/maintenance/fpmaint2) +"aof" = (/obj/structure/sink{icon_state = "sink"; dir = 8; pixel_x = -12; pixel_y = 2},/turf/open/floor/plating,/area/maintenance/fpmaint2) +"aog" = (/turf/open/floor/plating,/area/maintenance/fpmaint2) +"aoh" = (/obj/structure/bed,/obj/effect/landmark{name = "xeno_spawn"; pixel_x = -1},/obj/item/weapon/bedsheet,/turf/open/floor/plating,/area/maintenance/fpmaint2) +"aoi" = (/obj/machinery/computer/slot_machine{balance = 15; money = 500},/obj/item/weapon/coin/iron,/obj/item/weapon/coin/diamond,/obj/item/weapon/coin/diamond,/obj/item/weapon/coin/diamond,/turf/open/floor/plating,/area/maintenance/fpmaint2) +"aoj" = (/obj/structure/chair{dir = 1},/obj/item/toy/sword,/turf/open/floor/plating,/area/maintenance/fpmaint2) +"aok" = (/obj/structure/chair{dir = 1},/obj/structure/noticeboard{dir = 8; pixel_x = 27; pixel_y = 0},/obj/item/trash/plate,/turf/open/floor/plating,/area/maintenance/fpmaint2) +"aol" = (/turf/open/floor/plasteel/shuttle,/area/shuttle/labor) +"aom" = (/obj/machinery/mineral/labor_claim_console{machinedir = 1; pixel_x = 30; pixel_y = 0},/turf/open/floor/plasteel/shuttle,/area/shuttle/labor) +"aon" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'KEEP CLEAR OF DOCKING AREA'."; name = "KEEP CLEAR: DOCKING AREA"; pixel_y = 0},/turf/closed/wall,/area/security/processing) +"aoo" = (/obj/machinery/door/airlock/glass_security{name = "Prisoner Processing"; req_access_txt = "2"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/security/processing) +"aop" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/security/processing) +"aoq" = (/obj/structure/closet{name = "Evidence Closet"},/turf/open/floor/plasteel/red/side{dir = 10},/area/security/brig) +"aor" = (/obj/machinery/light,/turf/open/floor/plasteel/red/side,/area/security/brig) +"aos" = (/obj/structure/closet{name = "Evidence Closet"},/turf/open/floor/plasteel/red/side{dir = 6},/area/security/brig) +"aot" = (/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/grille,/obj/structure/cable,/obj/machinery/door/poddoor/preopen{id = "Secure Gate"; name = "brig shutters"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/security/brig) +"aou" = (/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/grille,/obj/machinery/door/poddoor/preopen{id = "Secure Gate"; name = "brig shutters"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/security/brig) +"aov" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/closed/wall/r_wall,/area/security/brig) +"aow" = (/obj/structure/table/reinforced,/obj/machinery/door/poddoor/shutters/preopen{id = "briggate"; name = "security shutters"},/obj/machinery/door/window/southleft{name = "Brig Desk"; req_access_txt = "1"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/open/floor/plasteel/black,/area/security/brig) +"aox" = (/obj/structure/table/reinforced,/obj/machinery/door/poddoor/shutters/preopen{id = "briggate"; name = "security shutters"},/obj/machinery/door/window/southleft{base_state = "right"; icon_state = "right"; name = "Brig Desk"; req_access_txt = "1"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel/black,/area/security/brig) +"aoy" = (/obj/structure/grille,/obj/machinery/door/poddoor/preopen{id = "briggate"; name = "security blast door"},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/security/brig) +"aoz" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_security{id_tag = "outerbrig"; name = "Brig"; req_access_txt = "63"},/turf/open/floor/plasteel/red/side{dir = 9},/area/security/brig) +"aoA" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_security{id_tag = "outerbrig"; name = "Brig"; req_access_txt = "63"},/turf/open/floor/plasteel/red/side{dir = 5},/area/security/brig) +"aoB" = (/obj/structure/chair{dir = 1},/turf/open/floor/plasteel/black,/area/crew_quarters/courtroom) +"aoC" = (/obj/structure/chair{dir = 1},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/black,/area/crew_quarters/courtroom) +"aoD" = (/obj/structure/chair{dir = 1},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/black,/area/crew_quarters/courtroom) +"aoE" = (/obj/structure/disposalpipe/segment,/obj/machinery/power/apc{dir = 8; name = "Courtroom APC"; pixel_x = -24; pixel_y = 0},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/crew_quarters/courtroom) +"aoF" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/fsmaint) +"aoG" = (/obj/machinery/light/small{dir = 4},/obj/structure/rack,/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/fsmaint) +"aoH" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plating,/area/maintenance/auxsolarstarboard) +"aoI" = (/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aoJ" = (/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/power/apc{dir = 8; name = "Fore Port Solar APC"; pixel_x = -25; pixel_y = 3},/obj/machinery/camera{c_tag = "Fore Port Solar Control"; dir = 1},/turf/open/floor/plating,/area/maintenance/auxsolarport) +"aoK" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/floor/plating,/area/maintenance/auxsolarport) +"aoL" = (/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/power/smes,/turf/open/floor/plating,/area/maintenance/auxsolarport) +"aoM" = (/obj/machinery/atmospherics/pipe/manifold/supplymain/hidden{icon_state = "manifold"; dir = 8},/turf/open/floor/plating,/area/maintenance/fpmaint2) +"aoN" = (/obj/machinery/atmospherics/pipe/simple/supplymain/hidden{icon_state = "intact"; dir = 9},/turf/open/floor/plating,/area/maintenance/fpmaint2) +"aoO" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/turf/open/floor/plating,/area/maintenance/fpmaint2) +"aoP" = (/obj/item/trash/sosjerky,/turf/open/floor/plating,/area/maintenance/fpmaint2) +"aoQ" = (/obj/item/weapon/electronics/airalarm,/obj/item/weapon/circuitboard/machine/seed_extractor,/obj/structure/table,/obj/effect/spawner/lootdrop/maintenance{lootcount = 4; name = "4maintenance loot spawner"},/turf/open/floor/plating,/area/maintenance/fpmaint2) +"aoR" = (/turf/open/floor/plating/warnplate{dir = 1},/area/maintenance/fpmaint2) +"aoS" = (/obj/item/weapon/cigbutt,/turf/open/floor/plating/warnplate{dir = 1},/area/maintenance/fpmaint2) +"aoT" = (/obj/structure/chair{dir = 8},/obj/machinery/flasher{id = "gulagshuttleflasher"; pixel_x = 25},/turf/open/floor/plasteel/shuttle,/area/shuttle/labor) +"aoU" = (/obj/machinery/gulag_item_reclaimer{pixel_y = 24},/turf/open/floor/plasteel/warning{dir = 9},/area/security/processing) +"aoV" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/plasteel/red/side{dir = 5},/area/security/processing) +"aoW" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/red/side{dir = 5},/area/security/processing) +"aoX" = (/obj/machinery/button/door{desc = "A remote control switch for the exit."; id = "laborexit"; name = "exit button"; normaldoorcontrol = 1; pixel_x = 26; pixel_y = -6; req_access_txt = "0"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/turf/open/floor/plasteel/red/side{dir = 5},/area/security/processing) +"aoY" = (/turf/open/floor/plasteel/red/corner{dir = 1},/area/hallway/primary/fore) +"aoZ" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"; pixel_y = 32},/turf/open/floor/plasteel/red/corner{dir = 1},/area/hallway/primary/fore) +"apa" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"; pixel_y = 32},/obj/machinery/light{dir = 1},/turf/open/floor/plasteel/red/corner{dir = 1},/area/hallway/primary/fore) +"apb" = (/turf/open/floor/plasteel,/area/hallway/primary/fore) +"apc" = (/obj/machinery/light{dir = 1},/obj/structure/sign/securearea{pixel_y = 32},/turf/open/floor/plasteel/red/corner{dir = 4},/area/hallway/primary/fore) +"apd" = (/turf/open/floor/plasteel/red/corner{dir = 4},/area/hallway/primary/fore) +"ape" = (/obj/structure/grille,/obj/structure/window/fulltile,/turf/open/floor/plating,/area/crew_quarters/courtroom) +"apf" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/fsmaint) +"apg" = (/turf/open/floor/plating,/area/maintenance/fsmaint) +"aph" = (/obj/machinery/door/airlock/external{req_access_txt = "13"},/turf/open/floor/plating,/area/maintenance/fsmaint) +"api" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 0; pixel_y = 32},/turf/open/floor/plating,/area/maintenance/fsmaint) +"apj" = (/obj/machinery/door/airlock/engineering{icon_state = "door_closed"; locked = 0; name = "Fore Port Solar Access"; req_access_txt = "10"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plating,/area/maintenance/auxsolarport) +"apk" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"; pixel_y = 0},/turf/closed/wall/r_wall,/area/maintenance/auxsolarport) +"apl" = (/obj/machinery/atmospherics/pipe/simple/supplymain/hidden{icon_state = "intact"; dir = 1},/turf/open/floor/plating,/area/maintenance/fpmaint2) +"apm" = (/obj/effect/decal/cleanable/egg_smudge,/turf/open/floor/plating,/area/maintenance/fpmaint2) +"apn" = (/obj/structure/table,/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/fpmaint2) +"apo" = (/obj/structure/closet/crate,/turf/open/floor/plasteel/shuttle,/area/shuttle/labor) +"app" = (/obj/machinery/door/airlock/shuttle{id_tag = "prisonshuttle"; name = "Labor Shuttle Airlock"},/obj/docking_port/mobile{dir = 8; dwidth = 2; height = 5; id = "laborcamp"; name = "labor camp shuttle"; travelDir = 90; width = 9},/obj/docking_port/stationary{dir = 8; dwidth = 2; height = 5; id = "laborcamp_home"; name = "fore bay 1"; width = 9},/turf/open/floor/plasteel/shuttle,/area/shuttle/labor) +"apq" = (/obj/machinery/door/airlock/external{name = "Labor Camp Shuttle Airlock"},/turf/open/floor/plating,/area/security/processing) +"apr" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/security{id_tag = "laborexit"; name = "Labor Shuttle"; req_access = null; req_access_txt = "63"},/turf/open/floor/plasteel,/area/security/processing) +"aps" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"; pixel_y = 32},/obj/machinery/light{dir = 1},/turf/open/floor/plasteel,/area/hallway/primary/fore) +"apt" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/hallway/primary/fore) +"apu" = (/obj/machinery/hologram/holopad,/turf/open/floor/plasteel,/area/hallway/primary/fore) +"apv" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 2; on = 1},/turf/open/floor/plasteel,/area/hallway/primary/fore) +"apw" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass{name = "Courtroom"},/turf/open/floor/plasteel/black,/area/crew_quarters/courtroom) +"apx" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/black,/area/crew_quarters/courtroom) +"apy" = (/obj/machinery/light/small,/turf/open/floor/plasteel/black,/area/crew_quarters/courtroom) +"apz" = (/obj/machinery/airalarm{dir = 1; icon_state = "alarm0"; pixel_y = -22},/turf/open/floor/plasteel/black,/area/crew_quarters/courtroom) +"apA" = (/obj/structure/extinguisher_cabinet{pixel_x = 5; pixel_y = -32},/obj/machinery/camera{c_tag = "Courtroom South"; dir = 1},/turf/open/floor/plasteel/black,/area/crew_quarters/courtroom) +"apB" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; external_pressure_bound = 101.325; on = 1; pressure_checks = 1},/turf/open/floor/plasteel/black,/area/crew_quarters/courtroom) +"apC" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/turf/open/floor/plating,/area/maintenance/fsmaint) +"apD" = (/obj/structure/disposalpipe/segment,/obj/machinery/meter,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/fsmaint) +"apE" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/turf/open/floor/plating,/area/maintenance/fsmaint) +"apF" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/closed/wall,/area/maintenance/fsmaint) +"apG" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/closed/wall,/area/maintenance/fsmaint) +"apH" = (/turf/closed/wall/r_wall,/area/maintenance/auxsolarstarboard) +"apI" = (/obj/machinery/power/solar_control{id = "auxsolareast"; name = "Fore Starboard Solar Control"; track = 0},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/open/floor/plating,/area/maintenance/auxsolarstarboard) +"apJ" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/open/floor/plating,/area/maintenance/auxsolarstarboard) +"apK" = (/obj/structure/rack,/obj/item/clothing/mask/gas,/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 0; pixel_y = 32},/obj/item/device/multitool,/turf/open/floor/plating,/area/maintenance/auxsolarstarboard) +"apL" = (/obj/machinery/camera{c_tag = "Fore Port Solar Access"},/obj/machinery/light/small{dir = 1},/turf/open/floor/plating,/area/maintenance/fpmaint2) +"apM" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plating,/area/maintenance/fpmaint2) +"apN" = (/obj/machinery/atmospherics/pipe/simple/supplymain/hidden{icon_state = "intact"; dir = 6},/turf/open/floor/plating,/area/maintenance/fpmaint2) +"apO" = (/obj/machinery/atmospherics/components/binary/valve{dir = 4},/turf/open/floor/plating,/area/maintenance/fpmaint2) +"apP" = (/obj/structure/chair,/turf/open/floor/plating,/area/maintenance/fpmaint2) +"apQ" = (/obj/structure/rack,/obj/item/weapon/circuitboard/machine/monkey_recycler,/turf/open/floor/plating,/area/maintenance/fpmaint2) +"apR" = (/obj/structure/shuttle/engine/heater,/obj/structure/window/reinforced{dir = 1; layer = 2.9},/turf/open/floor/plating/airless,/area/shuttle/labor) +"apS" = (/obj/structure/grille,/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 0; pixel_y = -32},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/security/processing) +"apT" = (/obj/structure/closet/emcloset,/turf/open/floor/plasteel/warning{dir = 10},/area/security/processing) +"apU" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/red/side{dir = 6},/area/security/processing) +"apV" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/camera{c_tag = "Labor Shuttle Dock South"; dir = 1},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/turf/open/floor/plasteel/red/side{dir = 6},/area/security/processing) +"apW" = (/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/open/floor/plasteel/red/side{dir = 6},/area/security/processing) +"apX" = (/turf/open/floor/plasteel/red/corner{dir = 8},/area/hallway/primary/fore) +"apY" = (/obj/machinery/camera{c_tag = "Fore Primary Hallway West"; dir = 1},/turf/open/floor/plasteel/red/corner{dir = 8},/area/hallway/primary/fore) +"apZ" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/red/corner{dir = 8},/area/hallway/primary/fore) +"aqa" = (/obj/machinery/navbeacon{codes_txt = "patrol;next_patrol=EVA"; location = "Security"},/turf/open/floor/plasteel,/area/hallway/primary/fore) +"aqb" = (/turf/open/floor/plasteel/red/corner{dir = 2},/area/hallway/primary/fore) +"aqc" = (/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -29},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/red/corner{dir = 2},/area/hallway/primary/fore) +"aqd" = (/obj/machinery/firealarm{dir = 1; pixel_y = -24},/turf/open/floor/plasteel/red/corner{dir = 2},/area/hallway/primary/fore) +"aqe" = (/obj/machinery/camera{c_tag = "Fore Primary Hallway East"; dir = 1},/obj/structure/extinguisher_cabinet{pixel_x = 5; pixel_y = -32},/turf/open/floor/plasteel/red/corner{dir = 2},/area/hallway/primary/fore) +"aqf" = (/obj/machinery/vending/coffee,/turf/open/floor/plasteel/red/corner{dir = 2},/area/hallway/primary/fore) +"aqg" = (/obj/machinery/vending/snack,/turf/open/floor/plasteel/red/corner{dir = 2},/area/hallway/primary/fore) +"aqh" = (/obj/machinery/vending/cigarette,/turf/open/floor/plasteel/red/corner{dir = 2},/area/hallway/primary/fore) +"aqi" = (/obj/structure/table,/obj/machinery/firealarm{dir = 1; pixel_y = -24},/turf/open/floor/plasteel/black,/area/crew_quarters/courtroom) +"aqj" = (/obj/structure/table,/obj/item/weapon/book/manual/wiki/security_space_law{pixel_x = -3; pixel_y = 5},/turf/open/floor/plasteel/black,/area/crew_quarters/courtroom) +"aqk" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/turf/open/floor/plating,/area/maintenance/fsmaint) +"aql" = (/obj/machinery/light/small{dir = 8},/obj/structure/chair/stool{pixel_y = 8},/turf/open/floor/plating/warnplate{dir = 9},/area/maintenance/fsmaint) +"aqm" = (/obj/machinery/atmospherics/components/binary/pump{dir = 1; name = "Air Out"; on = 1},/turf/open/floor/plating/warnplate{dir = 5},/area/maintenance/fsmaint) +"aqn" = (/obj/structure/chair/stool{pixel_y = 8},/turf/open/floor/plating,/area/maintenance/auxsolarstarboard) +"aqo" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/open/floor/plating,/area/maintenance/auxsolarstarboard) +"aqp" = (/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/power/terminal,/obj/machinery/light/small{dir = 4},/turf/open/floor/plating,/area/maintenance/auxsolarstarboard) +"aqq" = (/obj/structure/rack,/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aqr" = (/obj/structure/reagent_dispensers/watertank,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aqs" = (/obj/docking_port/stationary/random{id = "pod_asteroid1"; name = "asteroid"},/turf/open/space,/area/space) +"aqt" = (/obj/docking_port/stationary/random{id = "pod_asteroid2"; name = "asteroid"},/turf/open/space,/area/space) +"aqu" = (/obj/machinery/atmospherics/components/unary/portables_connector/visible{dir = 4},/obj/machinery/portable_atmospherics/canister/air,/turf/open/floor/plating,/area/maintenance/fpmaint2) +"aqv" = (/obj/machinery/atmospherics/components/trinary/filter{dir = 4},/turf/open/floor/plating,/area/maintenance/fpmaint2) +"aqw" = (/obj/machinery/atmospherics/components/unary/portables_connector/visible{dir = 8},/turf/open/floor/plating,/area/maintenance/fpmaint2) +"aqx" = (/obj/structure/bed,/obj/effect/landmark{name = "xeno_spawn"; pixel_x = -1},/turf/open/floor/plating,/area/maintenance/fpmaint2) +"aqy" = (/turf/open/space,/area/space/nearstation) +"aqz" = (/obj/structure/lattice,/turf/open/space,/area/space/nearstation) +"aqA" = (/turf/open/floor/plasteel/airless,/area/space/nearstation) +"aqB" = (/obj/structure/table,/obj/item/weapon/stamp,/obj/item/weapon/poster/legit,/turf/open/floor/plating,/area/maintenance/fpmaint2) +"aqC" = (/obj/structure/closet/emcloset,/turf/open/floor/plating,/area/maintenance/fpmaint2) +"aqD" = (/turf/open/space,/turf/closed/wall/shuttle{icon_state = "swall_f5"; dir = 2},/area/shuttle/labor) +"aqE" = (/obj/structure/shuttle/engine/propulsion,/turf/open/floor/plating/airless,/area/shuttle/labor) +"aqF" = (/turf/open/space,/turf/closed/wall/shuttle{icon_state = "swall_f9"; dir = 2},/area/shuttle/labor) +"aqG" = (/obj/structure/plasticflaps,/turf/open/floor/plating,/area/security/processing) +"aqH" = (/obj/machinery/door/airlock/maintenance{name = "Security Maintenance"; req_access_txt = "2"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plating,/area/security/processing) +"aqI" = (/turf/closed/wall,/area/security/vacantoffice2) +"aqJ" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/engineering{name = "Vacant Office B"; req_access_txt = "32"},/turf/open/floor/plating,/area/security/vacantoffice2) +"aqK" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/fpmaint) +"aqL" = (/turf/closed/wall,/area/lawoffice) +"aqM" = (/obj/machinery/door/airlock{name = "Law Office"; req_access_txt = "38"},/turf/open/floor/plasteel,/area/lawoffice) +"aqN" = (/obj/machinery/door/firedoor,/turf/open/floor/plasteel/red/corner{dir = 1},/area/hallway/primary/fore) +"aqO" = (/obj/machinery/door/firedoor,/turf/open/floor/plasteel,/area/hallway/primary/fore) +"aqP" = (/obj/machinery/door/firedoor,/turf/open/floor/plasteel/red/corner{dir = 4},/area/hallway/primary/fore) +"aqQ" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/turf/closed/wall,/area/maintenance/fsmaint) +"aqR" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/closed/wall,/area/maintenance/fsmaint) +"aqS" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/closed/wall,/area/maintenance/fsmaint) +"aqT" = (/obj/machinery/space_heater,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint) +"aqU" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/structure/reagent_dispensers/fueltank,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint) +"aqV" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/reagent_dispensers/watertank,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint) +"aqW" = (/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/power/apc{dir = 1; name = "Dormitory Maintenance APC"; pixel_y = 24},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint) +"aqX" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint) +"aqY" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/machinery/meter,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/fsmaint) +"aqZ" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/open/floor/plating,/area/maintenance/fsmaint) +"ara" = (/obj/machinery/door/airlock/atmos{name = "Atmospherics Maintenance"; req_access_txt = "12;24"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint) +"arb" = (/obj/machinery/atmospherics/components/binary/pump{dir = 4; name = "Air In"; on = 1},/obj/effect/landmark{name = "blobstart"},/turf/open/floor/plating/warnplate{dir = 8},/area/maintenance/fsmaint) +"arc" = (/obj/item/weapon/wrench,/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/turf/open/floor/plating/warnplate{dir = 4},/area/maintenance/fsmaint) +"ard" = (/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/power/apc{dir = 8; name = "Fore Starboard Solar APC"; pixel_x = -25; pixel_y = 3},/turf/open/floor/plating,/area/maintenance/auxsolarstarboard) +"are" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plating,/area/maintenance/auxsolarstarboard) +"arf" = (/obj/machinery/camera{c_tag = "Fore Starboard Solars"; dir = 1},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/power/smes,/turf/open/floor/plating,/area/maintenance/auxsolarstarboard) +"arg" = (/turf/closed/wall/r_wall,/area/maintenance/fsmaint2) +"arh" = (/obj/structure/closet/wardrobe/mixed,/obj/item/clothing/shoes/jackboots,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"ari" = (/obj/structure/grille,/obj/structure/window/fulltile,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"arj" = (/turf/open/space,/turf/closed/wall/shuttle{icon_state = "swall_f6"; dir = 2},/area/shuttle/pod_1) +"ark" = (/obj/structure/grille,/obj/structure/window/shuttle,/turf/open/floor/plating,/area/shuttle/pod_1) +"arl" = (/turf/open/space,/turf/closed/wall/shuttle{dir = 2; icon_state = "swall_f10"; layer = 2},/area/shuttle/pod_1) +"arm" = (/turf/open/space,/turf/closed/wall/shuttle{icon_state = "swall_f6"; dir = 2},/area/shuttle/pod_2) +"arn" = (/obj/structure/grille,/obj/structure/window/shuttle,/turf/open/floor/plating,/area/shuttle/pod_2) +"aro" = (/turf/open/space,/turf/closed/wall/shuttle{dir = 2; icon_state = "swall_f10"; layer = 2},/area/shuttle/pod_2) +"arp" = (/obj/structure/table,/obj/effect/spawner/lootdrop/maintenance{lootcount = 2; name = "2maintenance loot spawner"},/turf/open/floor/plasteel/floorgrime,/area/maintenance/fpmaint2) +"arq" = (/obj/machinery/atmospherics/components/unary/portables_connector/visible,/turf/open/floor/plasteel/floorgrime,/area/maintenance/fpmaint2) +"arr" = (/obj/machinery/light/small{dir = 1},/turf/open/floor/plasteel/floorgrime,/area/maintenance/fpmaint2) +"ars" = (/obj/machinery/atmospherics/components/unary/portables_connector/visible{dir = 1},/turf/open/floor/plating,/area/maintenance/fpmaint2) +"art" = (/obj/structure/grille,/obj/structure/window/fulltile{health = 35},/turf/open/floor/plating,/area/maintenance/fpmaint2) +"aru" = (/obj/effect/landmark{name = "carpspawn"},/obj/structure/lattice,/turf/open/space,/area/space/nearstation) +"arv" = (/obj/item/weapon/paper{info = "01001001 00100000 01101000 01101111 01110000 01100101 00100000 01111001 01101111 01110101 00100000 01110011 01110100 01100001 01111001 00100000 01110011 01100001 01100110 01100101 00101110 00100000 01001100 01101111 01110110 01100101 00101100 00100000 01101101 01101111 01101101 00101110"; name = "Note from Beepsky's Mom"},/turf/open/floor/plating,/area/security/processing) +"arw" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plating,/area/security/processing) +"arx" = (/obj/structure/chair,/turf/open/floor/plating,/area/security/vacantoffice2) +"ary" = (/obj/machinery/airalarm{frequency = 1439; locked = 0; pixel_y = 23},/obj/structure/chair,/turf/open/floor/plating,/area/security/vacantoffice2) +"arz" = (/turf/open/floor/plasteel,/area/security/vacantoffice2) +"arA" = (/turf/open/floor/plating,/area/security/vacantoffice2) +"arB" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/fpmaint) +"arC" = (/obj/machinery/light_switch{pixel_x = -20; pixel_y = 0},/obj/item/device/radio/intercom{pixel_y = 25},/turf/open/floor/wood,/area/lawoffice) +"arD" = (/obj/machinery/airalarm{pixel_y = 23},/turf/open/floor/wood,/area/lawoffice) +"arE" = (/turf/open/floor/wood,/area/lawoffice) +"arF" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/weapon/storage/briefcase,/obj/effect/decal/cleanable/cobweb2,/turf/open/floor/wood,/area/lawoffice) +"arG" = (/obj/machinery/airalarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/turf/open/floor/plasteel/red/corner{dir = 4},/area/hallway/primary/fore) +"arH" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/closed/wall,/area/maintenance/fsmaint) +"arI" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/open/floor/plating,/area/maintenance/fsmaint) +"arJ" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint) +"arK" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/fsmaint) +"arL" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/turf/open/floor/plating,/area/maintenance/fsmaint) +"arM" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint) +"arN" = (/obj/machinery/power/apc{dir = 2; name = "Dormitory APC"; pixel_y = -24},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/crew_quarters/sleep) +"arO" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint) +"arP" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint) +"arQ" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/turf/open/floor/plating,/area/maintenance/fsmaint) +"arR" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/turf/open/floor/plating,/area/maintenance/fsmaint) +"arS" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/machinery/light/small{dir = 4},/obj/machinery/power/apc{dir = 2; name = "Fitness Room APC"; pixel_x = 0; pixel_y = -24},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/crew_quarters/fitness) +"arT" = (/obj/structure/rack{dir = 1},/obj/item/clothing/suit/fire/firefighter,/obj/item/weapon/tank/internals/oxygen,/obj/item/clothing/mask/gas,/obj/item/weapon/extinguisher,/obj/item/clothing/head/hardhat/red,/obj/item/clothing/glasses/meson,/turf/open/floor/plating/warnplate{dir = 10},/area/maintenance/fsmaint) +"arU" = (/obj/machinery/atmospherics/components/unary/portables_connector/visible{dir = 1},/obj/machinery/portable_atmospherics/canister/air,/turf/open/floor/plating/warnplate{dir = 6},/area/maintenance/fsmaint) +"arV" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/crew_quarters/fitness) +"arW" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/crew_quarters/fitness) +"arX" = (/obj/structure/grille,/obj/effect/landmark{name = "Syndicate Breach Area"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/crew_quarters/fitness) +"arY" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/crew_quarters/fitness) +"arZ" = (/obj/machinery/door/airlock/external{name = "External Access"; req_access = null; req_access_txt = "13"},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"asa" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/airlock/engineering{icon_state = "door_closed"; locked = 0; name = "Fore Starboard Solar Access"; req_access_txt = "10"},/turf/open/floor/plating,/area/maintenance/auxsolarstarboard) +"asb" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"; pixel_y = 0},/turf/closed/wall/r_wall,/area/maintenance/auxsolarstarboard) +"asc" = (/obj/structure/closet/emcloset,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"asd" = (/obj/structure/table,/obj/machinery/light/small{dir = 1},/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"ase" = (/obj/structure/closet/firecloset,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"asf" = (/obj/effect/landmark/event_spawn,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"asg" = (/obj/effect/decal/cleanable/cobweb2,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"ash" = (/obj/effect/decal/cleanable/cobweb,/obj/item/weapon/coin/gold,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"asi" = (/obj/machinery/computer/slot_machine{balance = 15; money = 500},/obj/item/weapon/coin/iron,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"asj" = (/obj/effect/landmark{name = "xeno_spawn"; pixel_x = -1},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"ask" = (/turf/closed/wall/shuttle{icon_state = "swall3"; dir = 2},/area/shuttle/pod_1) +"asl" = (/obj/structure/chair{dir = 1},/obj/machinery/status_display{density = 0; layer = 3; pixel_x = 32; pixel_y = 0},/obj/machinery/computer/shuttle/pod{pixel_x = -32; possible_destinations = "pod_asteroid1"; shuttleId = "pod1"},/turf/open/floor/plasteel/shuttle,/area/shuttle/pod_1) +"asm" = (/turf/closed/wall/shuttle{icon_state = "swall3"; dir = 2},/area/shuttle/pod_2) +"asn" = (/obj/structure/chair{dir = 1},/obj/machinery/status_display{density = 0; layer = 3; pixel_x = 32; pixel_y = 0},/obj/machinery/computer/shuttle/pod{pixel_x = -32; possible_destinations = "pod_asteroid2"; shuttleId = "pod2"},/turf/open/floor/plasteel/shuttle,/area/shuttle/pod_2) +"aso" = (/obj/machinery/door/airlock/external{name = "External Access"; req_access = null; req_access_txt = "13"},/turf/open/floor/plating,/area/maintenance/fpmaint2) +"asp" = (/obj/structure/chair/stool,/turf/open/floor/plasteel/floorgrime,/area/maintenance/fpmaint2) +"asq" = (/obj/machinery/atmospherics/pipe/simple/supplymain/hidden{icon_state = "intact"; dir = 5},/turf/open/floor/plating,/area/maintenance/fpmaint2) +"asr" = (/obj/machinery/meter,/obj/machinery/atmospherics/pipe/simple/supplymain/hidden{icon_state = "intact"; dir = 4},/turf/open/floor/plating,/area/maintenance/fpmaint2) +"ass" = (/obj/machinery/atmospherics/pipe/simple/supplymain/hidden{icon_state = "intact"; dir = 10},/turf/open/floor/plating,/area/maintenance/fpmaint2) +"ast" = (/obj/structure/closet,/obj/effect/spawner/lootdrop/maintenance{lootcount = 2; name = "2maintenance loot spawner"},/turf/open/floor/plating,/area/maintenance/fpmaint2) +"asu" = (/obj/machinery/power/apc{dir = 1; name = "Arrivals North Maintenance APC"; pixel_x = -1; pixel_y = 26},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/open/floor/plating,/area/maintenance/fpmaint2) +"asv" = (/obj/machinery/atmospherics/pipe/simple/supplymain/hidden{icon_state = "intact"; dir = 1},/obj/effect/landmark/event_spawn,/turf/open/floor/plating,/area/maintenance/fpmaint2) +"asw" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/maintenance/fpmaint) +"asx" = (/turf/open/floor/plating,/area/maintenance/fpmaint) +"asy" = (/obj/item/weapon/bedsheet/red,/mob/living/simple_animal/bot/secbot/beepsky{name = "Officer Beepsky"},/turf/open/floor/plating,/area/security/processing) +"asz" = (/obj/machinery/light/small{dir = 4},/obj/structure/table,/obj/machinery/cell_charger,/obj/item/weapon/stock_parts/cell/potato{name = "\improper Beepsky's emergency battery"},/turf/open/floor/plating,/area/security/processing) +"asA" = (/obj/machinery/power/apc{dir = 8; name = "Labor Shuttle Dock APC"; pixel_x = -24},/obj/structure/cable,/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/open/floor/plating,/area/security/processing) +"asB" = (/obj/structure/table/wood,/obj/item/weapon/pen,/turf/open/floor/plating,/area/security/vacantoffice2) +"asC" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 2; on = 1},/obj/structure/table/wood,/obj/item/device/flashlight/lamp,/turf/open/floor/plating,/area/security/vacantoffice2) +"asD" = (/obj/structure/table/wood,/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/turf/open/floor/plating,/area/security/vacantoffice2) +"asE" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/obj/machinery/requests_console{department = "Law office"; pixel_x = -32; pixel_y = 0},/obj/structure/closet/lawcloset,/turf/open/floor/wood,/area/lawoffice) +"asF" = (/obj/structure/table/wood,/obj/item/weapon/book/manual/wiki/security_space_law,/obj/item/weapon/book/manual/wiki/security_space_law,/obj/item/weapon/pen/red,/turf/open/floor/wood,/area/lawoffice) +"asG" = (/obj/structure/table/wood,/obj/item/device/flashlight/lamp/green{pixel_x = 1; pixel_y = 5},/turf/open/floor/wood,/area/lawoffice) +"asH" = (/obj/structure/grille,/obj/machinery/door/poddoor/preopen{id = "lawyer_blast"; name = "privacy door"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/lawoffice) +"asI" = (/turf/closed/wall,/area/crew_quarters/sleep) +"asJ" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/fsmaint) +"asK" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall,/area/maintenance/fsmaint) +"asL" = (/turf/closed/wall,/area/crew_quarters/fitness) +"asM" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/fsmaint) +"asN" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/closed/wall,/area/crew_quarters/fitness) +"asO" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/crew_quarters/fitness) +"asP" = (/turf/open/floor/engine{name = "Holodeck Projector Floor"},/area/holodeck/rec_center) +"asQ" = (/obj/structure/grille,/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 0; pixel_y = 32},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"asR" = (/obj/structure/table,/obj/effect/decal/cleanable/cobweb,/obj/effect/spawner/lootdrop/maintenance{lootcount = 8; name = "8maintenance loot spawner"},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"asS" = (/obj/machinery/power/apc{dir = 1; name = "Bar Maintenance APC"; pixel_y = 24},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"asT" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"asU" = (/obj/machinery/light/small{dir = 1},/obj/machinery/camera{c_tag = "Fore Starboard Solar Access"},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"asV" = (/obj/structure/chair/stool,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"asW" = (/obj/structure/table,/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"asX" = (/obj/structure/table,/obj/item/weapon/pen,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"asY" = (/obj/structure/chair/stool{pixel_y = 8},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"asZ" = (/obj/item/weapon/coin/gold,/obj/item/weapon/coin/iron,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"ata" = (/obj/structure/closet,/obj/item/weapon/coin/iron,/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"atb" = (/obj/structure/closet,/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"atc" = (/turf/closed/wall/r_wall,/area/hallway/secondary/entry) +"atd" = (/obj/structure/chair{dir = 1},/obj/item/device/radio/intercom{pixel_x = 25},/obj/item/weapon/storage/pod{pixel_x = -26},/turf/open/floor/plasteel/shuttle,/area/shuttle/pod_1) +"ate" = (/obj/structure/chair{dir = 1},/obj/item/device/radio/intercom{pixel_x = 25},/obj/item/weapon/storage/pod{pixel_x = -26},/turf/open/floor/plasteel/shuttle,/area/shuttle/pod_2) +"atf" = (/obj/structure/grille,/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 0; pixel_y = 32},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/maintenance/fpmaint2) +"atg" = (/obj/machinery/atmospherics/pipe/simple/supplymain/hidden{icon_state = "intact"; dir = 5},/turf/closed/wall,/area/maintenance/fpmaint2) +"ath" = (/obj/machinery/atmospherics/pipe/simple/supplymain/hidden{icon_state = "intact"; dir = 4},/turf/closed/wall,/area/maintenance/fpmaint2) +"ati" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/supplymain/hidden{icon_state = "intact"; dir = 4},/turf/open/floor/plating,/area/maintenance/fpmaint2) +"atj" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supplymain/hidden{icon_state = "intact"; dir = 4},/turf/open/floor/plating,/area/maintenance/fpmaint2) +"atk" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supplymain/hidden{icon_state = "intact"; dir = 4},/turf/open/floor/plating,/area/maintenance/fpmaint2) +"atl" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/supplymain/hidden{icon_state = "intact"; dir = 4},/turf/open/floor/plating,/area/maintenance/fpmaint2) +"atm" = (/obj/machinery/atmospherics/pipe/simple/supplymain/hidden{icon_state = "intact"; dir = 9},/turf/open/floor/plating{icon_state = "platingdmg3"},/area/maintenance/fpmaint2) +"atn" = (/obj/effect/spawner/lootdrop/maintenance{lootcount = 2; name = "2maintenance loot spawner"},/turf/open/floor/plating,/area/maintenance/fpmaint2) +"ato" = (/obj/structure/closet/crate{icon_state = "crateopen"; opened = 1},/obj/effect/spawner/lootdrop/maintenance{lootcount = 2; name = "2maintenance loot spawner"},/turf/open/floor/plating,/area/maintenance/fpmaint2) +"atp" = (/obj/machinery/monkey_recycler,/obj/item/weapon/reagent_containers/food/snacks/monkeycube,/obj/item/weapon/reagent_containers/food/snacks/monkeycube,/turf/open/floor/plating,/area/maintenance/fpmaint2) +"atq" = (/turf/closed/wall,/area/maintenance/fpmaint) +"atr" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plating,/area/maintenance/fpmaint) +"ats" = (/obj/structure/rack,/turf/open/floor/plasteel,/area/security/vacantoffice2) +"att" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/chair{dir = 1},/turf/open/floor/plating,/area/security/vacantoffice2) +"atu" = (/obj/structure/table/wood,/turf/open/floor/plating,/area/security/vacantoffice2) +"atv" = (/obj/machinery/firealarm{dir = 4; pixel_x = 24},/turf/open/floor/plating,/area/security/vacantoffice2) +"atw" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/turf/closed/wall,/area/lawoffice) +"atx" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/filingcabinet/employment,/turf/open/floor/wood,/area/lawoffice) +"aty" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/wood,/area/lawoffice) +"atz" = (/obj/structure/table/wood,/obj/item/weapon/folder/blue,/obj/item/weapon/folder/blue,/obj/item/weapon/folder/blue,/obj/item/weapon/folder/blue,/obj/item/weapon/stamp/law,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/wood,/area/lawoffice) +"atA" = (/obj/structure/chair/office/dark{dir = 8},/obj/effect/landmark/start{name = "Lawyer"},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/wood,/area/lawoffice) +"atB" = (/obj/machinery/status_display{density = 0; layer = 3; pixel_x = 32; pixel_y = 0},/turf/open/floor/plasteel/red/corner{dir = 4},/area/hallway/primary/fore) +"atC" = (/obj/structure/table,/obj/machinery/light/small{dir = 8},/turf/open/floor/carpet,/area/crew_quarters/sleep) +"atD" = (/obj/structure/closet/secure_closet/personal,/turf/open/floor/carpet,/area/crew_quarters/sleep) +"atE" = (/obj/structure/bed,/obj/item/weapon/bedsheet,/obj/machinery/airalarm{pixel_y = 23},/obj/machinery/button/door{id = "Dorm4"; name = "Dorm Bolt Control"; normaldoorcontrol = 1; pixel_x = 25; pixel_y = 0; req_access_txt = "0"; specialfunctions = 4},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/carpet,/area/crew_quarters/sleep) +"atF" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/closed/wall,/area/crew_quarters/sleep) +"atG" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/turf/open/floor/plasteel/neutral/side{dir = 9},/area/crew_quarters/sleep) +"atH" = (/obj/machinery/airalarm{pixel_y = 23},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/neutral/side{dir = 5},/area/crew_quarters/sleep) +"atI" = (/obj/structure/chair/stool{pixel_y = 8},/turf/open/floor/wood,/area/crew_quarters/sleep) +"atJ" = (/obj/machinery/light/small{dir = 1},/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/turf/open/floor/wood,/area/crew_quarters/sleep) +"atK" = (/obj/machinery/airalarm{pixel_y = 23},/obj/structure/closet/secure_closet/personal/cabinet,/obj/effect/decal/cleanable/cobweb2,/turf/open/floor/wood,/area/crew_quarters/sleep) +"atL" = (/obj/structure/dresser,/turf/open/floor/wood,/area/crew_quarters/sleep) +"atM" = (/obj/machinery/airalarm{pixel_y = 23},/obj/structure/closet/secure_closet/personal/cabinet,/turf/open/floor/wood,/area/crew_quarters/sleep) +"atN" = (/obj/structure/disposalpipe/junction{icon_state = "pipe-j2"; dir = 2},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plasteel/neutral/side{dir = 9},/area/crew_quarters/fitness) +"atO" = (/obj/structure/disposalpipe/trunk{dir = 8},/obj/machinery/disposal/bin,/turf/open/floor/plasteel/neutral/side{dir = 1},/area/crew_quarters/fitness) +"atP" = (/obj/structure/closet/athletic_mixed,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/turf/open/floor/plasteel/neutral/side{dir = 1},/area/crew_quarters/fitness) +"atQ" = (/obj/structure/closet/boxinggloves,/obj/machinery/light{dir = 1},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/item/clothing/shoes/jackboots,/turf/open/floor/plasteel/neutral/side{dir = 1},/area/crew_quarters/fitness) +"atR" = (/obj/machinery/camera{c_tag = "Fitness Room"},/obj/structure/closet/masks,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/neutral/side{dir = 1},/area/crew_quarters/fitness) +"atS" = (/obj/structure/closet/lasertag/blue,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/neutral/side{dir = 1},/area/crew_quarters/fitness) +"atT" = (/obj/structure/closet/lasertag/red,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/open/floor/plasteel/neutral/side{dir = 5},/area/crew_quarters/fitness) +"atU" = (/obj/structure/table,/obj/effect/spawner/lootdrop/maintenance{lootcount = 3; name = "3maintenance loot spawner"},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"atV" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"atW" = (/obj/structure/door_assembly/door_assembly_mai,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"atX" = (/obj/machinery/door/airlock/maintenance{name = "Firefighting equipment"; req_access_txt = "12"},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"atY" = (/obj/structure/table,/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"atZ" = (/obj/structure/table,/obj/item/weapon/reagent_containers/food/snacks/donut,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aua" = (/turf/closed/wall,/area/maintenance/electrical) +"aub" = (/turf/closed/wall,/area/space/nearstation) +"auc" = (/turf/closed/wall,/area/hallway/secondary/entry) +"aud" = (/turf/open/floor/plating,/obj/structure/shuttle/engine/propulsion/burst,/turf/closed/wall/shuttle{icon_state = "swall_f5"; dir = 2},/area/shuttle/pod_1) +"aue" = (/obj/machinery/door/airlock/shuttle{name = "Escape Pod Airlock"},/obj/docking_port/mobile/pod{id = "pod1"; name = "escape pod 1"},/turf/open/floor/plasteel/shuttle,/area/shuttle/pod_1) +"auf" = (/turf/open/floor/plating,/obj/structure/shuttle/engine/propulsion/burst,/turf/closed/wall/shuttle{icon_state = "swall_f9"; dir = 2},/area/shuttle/pod_1) +"aug" = (/turf/open/floor/plating,/obj/structure/shuttle/engine/propulsion/burst,/turf/closed/wall/shuttle{icon_state = "swall_f5"; dir = 2},/area/shuttle/pod_2) +"auh" = (/obj/machinery/door/airlock/shuttle{name = "Escape Pod Airlock"},/obj/docking_port/mobile/pod{id = "pod2"; name = "escape pod 2"},/turf/open/floor/plasteel/shuttle,/area/shuttle/pod_2) +"aui" = (/turf/open/floor/plating,/obj/structure/shuttle/engine/propulsion/burst,/turf/closed/wall/shuttle{icon_state = "swall_f9"; dir = 2},/area/shuttle/pod_2) +"auj" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/turf/open/floor/plating,/area/maintenance/fpmaint2) +"auk" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fpmaint2) +"aul" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fpmaint2) +"aum" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fpmaint2) +"aun" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/closed/wall,/area/maintenance/fpmaint2) +"auo" = (/obj/structure/reagent_dispensers/fueltank,/turf/open/floor/plating,/area/maintenance/fpmaint2) +"aup" = (/obj/effect/landmark/event_spawn,/turf/open/floor/plating,/area/maintenance/fpmaint) +"auq" = (/obj/structure/closet/emcloset,/turf/open/floor/plating,/area/maintenance/fpmaint) +"aur" = (/obj/structure/chair/stool,/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/fpmaint) +"aus" = (/obj/effect/decal/cleanable/cobweb,/obj/structure/closet/secure_closet/chemical,/turf/open/floor/plating,/area/maintenance/fpmaint) +"aut" = (/obj/structure/closet/secure_closet/chemical,/turf/open/floor/plating,/area/maintenance/fpmaint) +"auu" = (/obj/structure/closet/secure_closet/medical1,/turf/open/floor/plating,/area/maintenance/fpmaint) +"auv" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/security/vacantoffice2) +"auw" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plating,/area/security/vacantoffice2) +"aux" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 8},/turf/open/floor/plating,/area/maintenance/fpmaint) +"auy" = (/obj/machinery/door/airlock/maintenance{name = "Law Office Maintenance"; req_access_txt = "38"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/lawoffice) +"auz" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_Toxins = 0},/turf/open/floor/wood,/area/lawoffice) +"auA" = (/obj/structure/chair/office/dark,/obj/effect/landmark/start{name = "Lawyer"},/turf/open/floor/wood,/area/lawoffice) +"auB" = (/obj/machinery/light{dir = 4; icon_state = "tube1"},/turf/open/floor/plasteel/red/corner{dir = 4},/area/hallway/primary/fore) +"auC" = (/obj/structure/chair/stool{pixel_y = 8},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/carpet,/area/crew_quarters/sleep) +"auD" = (/obj/effect/landmark{name = "xeno_spawn"; pixel_x = -1},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/carpet,/area/crew_quarters/sleep) +"auE" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/carpet,/area/crew_quarters/sleep) +"auF" = (/obj/machinery/door/airlock{id_tag = "Dorm4"; name = "Dorm 4"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/crew_quarters/sleep) +"auG" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/neutral/side{dir = 8},/area/crew_quarters/sleep) +"auH" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/neutral/side{dir = 4},/area/crew_quarters/sleep) +"auI" = (/obj/structure/table/wood,/turf/open/floor/wood,/area/crew_quarters/sleep) +"auJ" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/wood,/area/crew_quarters/sleep) +"auK" = (/obj/structure/bed,/obj/item/weapon/bedsheet/red,/obj/machinery/button/door{id = "Dorm5"; name = "Cabin Bolt Control"; normaldoorcontrol = 1; pixel_x = 0; pixel_y = -25; req_access_txt = "0"; specialfunctions = 4},/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/wood,/area/crew_quarters/sleep) +"auL" = (/turf/open/floor/wood,/area/crew_quarters/sleep) +"auM" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/effect/landmark/event_spawn,/turf/open/floor/wood,/area/crew_quarters/sleep) +"auN" = (/obj/structure/bed,/obj/item/weapon/bedsheet/red,/obj/machinery/button/door{id = "Dorm6"; name = "Cabin Bolt Control"; normaldoorcontrol = 1; pixel_x = 0; pixel_y = -25; req_access_txt = "0"; specialfunctions = 4},/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/wood,/area/crew_quarters/sleep) +"auO" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 8},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/open/floor/plasteel/neutral/side{dir = 8},/area/crew_quarters/fitness) +"auP" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/open/floor/plasteel,/area/crew_quarters/fitness) +"auQ" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/crew_quarters/fitness) +"auR" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/crew_quarters/fitness) +"auS" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/red/side{dir = 4},/area/crew_quarters/fitness) +"auT" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/turf/open/floor/plating,/area/crew_quarters/fitness) +"auU" = (/obj/structure/table,/obj/item/weapon/shard,/obj/item/weapon/shard{icon_state = "medium"},/obj/item/weapon/shard{icon_state = "small"},/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"auV" = (/obj/structure/rack,/obj/effect/spawner/lootdrop/maintenance{lootcount = 2; name = "2maintenance loot spawner"},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"auW" = (/turf/open/floor/plating{icon_state = "panelscorched"},/area/maintenance/fsmaint2) +"auX" = (/obj/machinery/button/door{id = "maint3"; name = "Blast Door Control C"; pixel_x = 0; pixel_y = 24; req_access_txt = "0"},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"auY" = (/mob/living/simple_animal/mouse,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"auZ" = (/obj/structure/table,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"ava" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"avb" = (/obj/machinery/recharge_station,/turf/open/floor/plasteel/floorgrime,/area/maintenance/electrical) +"avc" = (/obj/item/stack/rods{amount = 50},/obj/structure/rack,/obj/item/stack/cable_coil{pixel_x = -3; pixel_y = 3},/obj/item/stack/cable_coil{amount = 5},/obj/item/stack/sheet/mineral/plasma{amount = 10; layer = 2.9},/turf/open/floor/plasteel/floorgrime,/area/maintenance/electrical) +"avd" = (/obj/machinery/power/port_gen/pacman,/turf/open/floor/plating,/area/maintenance/electrical) +"ave" = (/obj/machinery/mech_bay_recharge_port,/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/open/floor/plating,/area/maintenance/electrical) +"avf" = (/turf/open/floor/mech_bay_recharge_floor,/area/maintenance/electrical) +"avg" = (/obj/machinery/computer/mech_bay_power_console,/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/open/floor/bluegrid,/area/maintenance/electrical) +"avh" = (/obj/machinery/door/airlock/external{name = "Escape Pod One"},/turf/open/floor/plating,/area/hallway/secondary/entry) +"avi" = (/obj/machinery/space_heater,/turf/open/floor/plating,/area/maintenance/fpmaint2) +"avj" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/open/floor/plating,/area/maintenance/fpmaint2) +"avk" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fpmaint2) +"avl" = (/obj/structure/rack,/obj/effect/spawner/lootdrop/maintenance{lootcount = 2; name = "2maintenance loot spawner"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fpmaint2) +"avm" = (/obj/structure/reagent_dispensers/fueltank,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fpmaint2) +"avn" = (/obj/structure/reagent_dispensers/watertank,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fpmaint2) +"avo" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/fpmaint2) +"avp" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/turf/closed/wall,/area/maintenance/fpmaint2) +"avq" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall,/area/maintenance/fpmaint2) +"avr" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/turf/open/floor/plating,/area/maintenance/fpmaint2) +"avs" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/closed/wall,/area/maintenance/fpmaint2) +"avt" = (/turf/open/floor/plasteel/airless{icon_state = "damaged3"},/area/space/nearstation) +"avu" = (/obj/item/weapon/paper/crumpled,/turf/open/floor/plasteel/airless{icon_state = "damaged2"},/area/space/nearstation) +"avv" = (/obj/structure/closet,/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/fpmaint2) +"avw" = (/obj/structure/reagent_dispensers/watertank,/turf/open/floor/plating,/area/maintenance/fpmaint2) +"avx" = (/obj/structure/rack{dir = 1},/obj/effect/spawner/lootdrop/maintenance{lootcount = 2; name = "2maintenance loot spawner"},/turf/open/floor/plating,/area/maintenance/fpmaint2) +"avy" = (/obj/structure/chair/stool,/turf/open/floor/plating,/area/maintenance/fpmaint2) +"avz" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plating,/area/maintenance/fpmaint) +"avA" = (/obj/structure/table/wood,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/light,/turf/open/floor/plating,/area/security/vacantoffice2) +"avB" = (/obj/machinery/camera{c_tag = "Vacant Office B"; dir = 1},/obj/structure/table/wood,/turf/open/floor/plasteel,/area/security/vacantoffice2) +"avC" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/security/vacantoffice2) +"avD" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/closed/wall,/area/lawoffice) +"avE" = (/obj/structure/table/wood,/obj/item/device/taperecorder{pixel_y = 0},/obj/item/weapon/cartridge/lawyer,/turf/open/floor/wood,/area/lawoffice) +"avF" = (/obj/structure/table/wood,/obj/machinery/camera{c_tag = "Law Office"; dir = 1; network = list("SS13")},/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/pen,/obj/machinery/computer/security/telescreen{desc = "Used for watching Prison Wing holding areas."; dir = 1; name = "Prison Monitor"; network = list("Prison"); pixel_x = 0; pixel_y = -27},/turf/open/floor/wood,/area/lawoffice) +"avG" = (/obj/machinery/photocopier,/obj/machinery/button/door{id = "lawyer_blast"; name = "Privacy Shutters"; pixel_x = 25; pixel_y = 8},/turf/open/floor/wood,/area/lawoffice) +"avH" = (/obj/machinery/power/apc{dir = 8; name = "Fore Primary Hallway APC"; pixel_x = -24},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/camera{c_tag = "Fore Primary Hallway"; dir = 4; network = list("SS13")},/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel/red/corner{dir = 1},/area/hallway/primary/fore) +"avI" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/neutral/side{dir = 8},/area/crew_quarters/sleep) +"avJ" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/neutral/side{dir = 4},/area/crew_quarters/sleep) +"avK" = (/obj/machinery/door/airlock{id_tag = "Dorm5"; name = "Cabin 1"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/wood,/area/crew_quarters/sleep) +"avL" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall,/area/crew_quarters/sleep) +"avM" = (/obj/machinery/door/airlock{id_tag = "Dorm6"; name = "Cabin 2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/wood,/area/crew_quarters/sleep) +"avN" = (/obj/machinery/airalarm{dir = 4; pixel_x = -23; pixel_y = 0},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/neutral/side{dir = 8},/area/crew_quarters/fitness) +"avO" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/crew_quarters/fitness) +"avP" = (/obj/machinery/door/window/eastright{base_state = "left"; dir = 8; icon_state = "left"; name = "Fitness Ring"},/obj/structure/window/reinforced{dir = 1},/turf/open/floor/plasteel/black,/area/crew_quarters/fitness) +"avQ" = (/obj/structure/window/reinforced{dir = 1},/turf/open/floor/plasteel/black,/area/crew_quarters/fitness) +"avR" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/plasteel/black,/area/crew_quarters/fitness) +"avS" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/crew_quarters/fitness) +"avT" = (/turf/open/floor/plasteel/red/side{dir = 4},/area/crew_quarters/fitness) +"avU" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass{name = "Holodeck Door"},/turf/open/floor/plasteel,/area/crew_quarters/fitness) +"avV" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass{name = "Holodeck Door"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 5},/turf/open/floor/plasteel,/area/crew_quarters/fitness) +"avW" = (/obj/machinery/light/small{dir = 1},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/crew_quarters/fitness) +"avX" = (/obj/machinery/camera{c_tag = "Holodeck"},/obj/machinery/airalarm{pixel_y = 24},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/crew_quarters/fitness) +"avY" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/crew_quarters/fitness) +"avZ" = (/obj/machinery/light/small,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"awa" = (/obj/structure/reagent_dispensers/fueltank,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"awb" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"awc" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"awd" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"awe" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"awf" = (/turf/open/floor/plasteel/floorgrime,/area/maintenance/electrical) +"awg" = (/turf/open/floor/plating,/area/maintenance/electrical) +"awh" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/open/floor/plasteel/floorgrime,/area/maintenance/electrical) +"awi" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel/floorgrime,/area/maintenance/electrical) +"awj" = (/obj/structure/extinguisher_cabinet{pixel_x = 27; pixel_y = 0},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/open/floor/plasteel/floorgrime,/area/maintenance/electrical) +"awk" = (/obj/machinery/light/small{dir = 8},/obj/machinery/camera{c_tag = "Arrivals Escape Pod 1"; dir = 1},/turf/open/floor/plating,/area/hallway/secondary/entry) +"awl" = (/turf/open/floor/plating,/area/hallway/secondary/entry) +"awm" = (/obj/structure/closet/emcloset,/turf/open/floor/plating,/area/hallway/secondary/entry) +"awn" = (/obj/machinery/light/small{dir = 8},/obj/machinery/camera{c_tag = "Arrivals Escape Pod 2"; dir = 1},/turf/open/floor/plating,/area/hallway/secondary/entry) +"awo" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/fpmaint2) +"awp" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/light/small,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/turf/open/floor/plating,/area/maintenance/fpmaint2) +"awq" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fpmaint2) +"awr" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fpmaint2) +"aws" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall,/area/maintenance/fpmaint2) +"awt" = (/obj/structure/mirror{icon_state = "mirror_broke"; pixel_y = 28; shattered = 1},/obj/machinery/iv_drip,/turf/open/floor/plating,/area/maintenance/fpmaint2) +"awu" = (/obj/structure/frame/computer,/turf/open/floor/plating,/area/maintenance/fpmaint2) +"awv" = (/obj/structure/mirror{icon_state = "mirror_broke"; pixel_y = 28; shattered = 1},/obj/item/weapon/shard{icon_state = "medium"},/obj/item/weapon/circuitboard/computer/operating,/turf/open/floor/plating,/area/maintenance/fpmaint2) +"aww" = (/obj/effect/decal/cleanable/cobweb2,/obj/structure/chair,/obj/item/weapon/reagent_containers/blood/random,/turf/open/floor/plating,/area/maintenance/fpmaint2) +"awx" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/fpmaint2) +"awy" = (/obj/item/weapon/airlock_painter,/obj/structure/lattice,/obj/structure/closet,/turf/open/space,/area/space/nearstation) +"awz" = (/obj/structure/closet,/obj/effect/spawner/lootdrop/maintenance{lootcount = 4; name = "4maintenance loot spawner"},/turf/open/floor/plating,/area/maintenance/fpmaint2) +"awA" = (/obj/machinery/door/airlock/external{req_access_txt = "13"},/turf/open/floor/plating,/area/maintenance/fpmaint) +"awB" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 0; pixel_y = 32},/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/fpmaint) +"awC" = (/obj/machinery/door/airlock/maintenance{name = "Chemical Storage"; req_access_txt = "12"},/turf/open/floor/plating,/area/maintenance/fpmaint) +"awD" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/closed/wall,/area/security/vacantoffice2) +"awE" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall,/area/security/vacantoffice2) +"awF" = (/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/power/apc{dir = 8; name = "Vacant Office B APC"; pixel_x = -24; pixel_y = 0},/turf/open/floor/plating,/area/security/vacantoffice2) +"awG" = (/obj/machinery/power/apc{dir = 1; name = "Law Office APC"; pixel_y = 24},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/lawoffice) +"awH" = (/obj/machinery/firealarm{dir = 8; pixel_x = -24},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/red/corner{dir = 1},/area/hallway/primary/fore) +"awI" = (/obj/structure/extinguisher_cabinet{pixel_x = 27; pixel_y = 0},/turf/open/floor/plasteel/red/corner{dir = 4},/area/hallway/primary/fore) +"awJ" = (/obj/structure/bed,/obj/item/weapon/bedsheet,/obj/machinery/airalarm{pixel_y = 23},/obj/machinery/button/door{id = "Dorm3"; name = "Dorm Bolt Control"; normaldoorcontrol = 1; pixel_x = 25; pixel_y = 0; req_access_txt = "0"; specialfunctions = 4},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/carpet,/area/crew_quarters/sleep) +"awK" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden,/turf/open/floor/plasteel/neutral/side{dir = 8},/area/crew_quarters/sleep) +"awL" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/neutral/corner{dir = 4},/area/crew_quarters/sleep) +"awM" = (/obj/machinery/firealarm{dir = 2; pixel_y = 24},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/neutral/side{dir = 1},/area/crew_quarters/sleep) +"awN" = (/obj/machinery/requests_console{department = "Crew Quarters"; pixel_y = 30},/obj/machinery/camera{c_tag = "Dormitory North"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/neutral/side{dir = 1},/area/crew_quarters/sleep) +"awO" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/open/floor/plasteel/neutral/side{dir = 1},/area/crew_quarters/sleep) +"awP" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/neutral/side{dir = 1},/area/crew_quarters/sleep) +"awQ" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/neutral/side{dir = 1},/area/crew_quarters/sleep) +"awR" = (/obj/structure/extinguisher_cabinet{pixel_x = -5; pixel_y = 30},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/neutral/side{dir = 1},/area/crew_quarters/sleep) +"awS" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/turf/open/floor/plasteel/neutral/side{dir = 1},/area/crew_quarters/sleep) +"awT" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/neutral/side{dir = 5},/area/crew_quarters/sleep) +"awU" = (/obj/structure/grille,/obj/structure/window/fulltile,/turf/open/floor/plating,/area/crew_quarters/fitness) +"awV" = (/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel/neutral/side{dir = 8},/area/crew_quarters/fitness) +"awW" = (/obj/structure/window/reinforced{dir = 8},/turf/open/floor/plasteel/black,/area/crew_quarters/fitness) +"awX" = (/turf/open/floor/plasteel/vault{dir = 5},/area/crew_quarters/fitness) +"awY" = (/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plasteel/black,/area/crew_quarters/fitness) +"awZ" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/crew_quarters/fitness) +"axa" = (/obj/machinery/computer/holodeck,/turf/open/floor/plasteel,/area/crew_quarters/fitness) +"axb" = (/obj/structure/chair{dir = 8},/turf/open/floor/plasteel,/area/crew_quarters/fitness) +"axc" = (/obj/machinery/door/poddoor/preopen{id = "maint3"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"axd" = (/obj/machinery/door/poddoor/preopen{id = "maint3"},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"axe" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"; pixel_y = 0},/turf/closed/wall,/area/maintenance/electrical) +"axf" = (/obj/machinery/power/apc{dir = 1; name = "Electrical Maintenance APC"; pixel_y = 24},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/open/floor/plating,/area/maintenance/electrical) +"axg" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plating,/area/maintenance/electrical) +"axh" = (/obj/structure/table,/obj/item/clothing/gloves/color/fyellow,/obj/item/weapon/storage/toolbox/electrical{pixel_x = 1; pixel_y = -1},/obj/item/device/multitool,/obj/item/device/radio/intercom{freerange = 0; frequency = 1459; name = "Station Intercom (General)"; pixel_x = 29},/turf/open/floor/plasteel/floorgrime,/area/maintenance/electrical) +"axi" = (/obj/structure/sign/pods,/turf/closed/wall,/area/hallway/secondary/entry) +"axj" = (/obj/machinery/door/airlock/external{name = "Escape Pod Two"},/turf/open/floor/plating,/area/hallway/secondary/entry) +"axk" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/fpmaint2) +"axl" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/fpmaint2) +"axm" = (/obj/item/weapon/wrench,/turf/open/floor/plating,/area/maintenance/fpmaint2) +"axn" = (/obj/structure/table/optable{name = "Robotics Operating Table"},/obj/item/weapon/surgical_drapes,/turf/open/floor/plating,/area/maintenance/fpmaint2) +"axo" = (/turf/open/floor/plasteel/airless{icon_state = "damaged5"},/area/space/nearstation) +"axp" = (/obj/structure/table,/obj/machinery/cell_charger,/turf/open/floor/plating,/area/maintenance/fpmaint2) +"axq" = (/obj/structure/table,/obj/effect/spawner/lootdrop/maintenance{lootcount = 2; name = "2maintenance loot spawner"},/turf/open/floor/plating,/area/maintenance/fpmaint2) +"axr" = (/obj/machinery/light/small{dir = 4},/obj/structure/chair/stool,/turf/open/floor/plating,/area/maintenance/fpmaint2) +"axs" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/turf/closed/wall,/area/maintenance/fpmaint2) +"axt" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/closed/wall,/area/maintenance/fpmaint2) +"axu" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/maintenance/fpmaint) +"axv" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/closed/wall,/area/maintenance/fpmaint) +"axw" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fpmaint) +"axx" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/closed/wall,/area/maintenance/fpmaint) +"axy" = (/obj/structure/rack,/obj/effect/spawner/lootdrop/maintenance,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fpmaint) +"axz" = (/obj/machinery/power/apc{dir = 1; name = "EVA Maintenance APC"; pixel_y = 24},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fpmaint) +"axA" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/open/floor/plating,/area/maintenance/fpmaint) +"axB" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fpmaint) +"axC" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fpmaint) +"axD" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/open/floor/plating,/area/maintenance/fpmaint) +"axE" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/fpmaint) +"axF" = (/obj/effect/landmark{name = "blobstart"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/fpmaint) +"axG" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/open/floor/plating,/area/maintenance/fpmaint) +"axH" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fpmaint) +"axI" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/open/floor/plasteel,/area/hallway/primary/fore) +"axJ" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/fore) +"axK" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/turf/open/floor/plating,/area/maintenance/fsmaint) +"axL" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/fsmaint) +"axM" = (/obj/machinery/door/airlock{id_tag = "Dorm3"; name = "Dorm 3"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/crew_quarters/sleep) +"axN" = (/obj/machinery/atmospherics/pipe/manifold4w/scrubbers/hidden,/turf/open/floor/plasteel,/area/crew_quarters/sleep) +"axO" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/crew_quarters/sleep) +"axP" = (/obj/structure/chair/stool{pixel_y = 8},/obj/effect/landmark/start{name = "Assistant"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/crew_quarters/sleep) +"axQ" = (/obj/structure/table/wood,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/item/weapon/storage/pill_bottle/dice,/turf/open/floor/plasteel,/area/crew_quarters/sleep) +"axR" = (/obj/structure/table/wood,/obj/item/weapon/storage/firstaid/regular,/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,/turf/open/floor/plasteel,/area/crew_quarters/sleep) +"axS" = (/obj/structure/table/wood,/obj/item/weapon/coin/silver,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/crew_quarters/sleep) +"axT" = (/obj/structure/chair/stool{pixel_y = 8},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/crew_quarters/sleep) +"axU" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/crew_quarters/sleep) +"axV" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/turf/open/floor/plasteel,/area/crew_quarters/sleep) +"axW" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass{name = "Fitness"},/turf/open/floor/plasteel,/area/crew_quarters/fitness) +"axX" = (/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel,/area/crew_quarters/fitness) +"axY" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/hologram/holopad,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/crew_quarters/fitness) +"axZ" = (/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel/vault{dir = 5},/area/crew_quarters/fitness) +"aya" = (/obj/effect/landmark/start{name = "Assistant"},/turf/open/floor/plasteel/green/side{dir = 4},/area/crew_quarters/fitness) +"ayb" = (/obj/structure/table,/obj/item/weapon/paper{desc = ""; info = "Brusies sustained in the holodeck can be healed simply by sleeping."; name = "Holodeck Disclaimer"},/turf/open/floor/plasteel,/area/crew_quarters/fitness) +"ayc" = (/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"ayd" = (/obj/effect/decal/cleanable/cobweb2,/obj/structure/closet/crate,/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aye" = (/obj/structure/closet/crate,/obj/effect/spawner/lootdrop/maintenance{lootcount = 2; name = "2maintenance loot spawner"},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"ayf" = (/obj/structure/girder,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"ayg" = (/obj/machinery/portable_atmospherics/canister/air,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"ayh" = (/obj/machinery/button/door{id = "maint2"; name = "Blast Door Control B"; pixel_x = -28; pixel_y = 4; req_access_txt = "0"},/obj/machinery/button/door{id = "maint1"; name = "Blast Door Control A"; pixel_x = -28; pixel_y = -6; req_access_txt = "0"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"ayi" = (/obj/structure/janitorialcart,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"ayj" = (/obj/structure/table/glass,/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"ayk" = (/obj/structure/table/glass,/obj/item/weapon/pen,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"ayl" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aym" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"ayn" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/airlock/engineering{name = "Electrical Maintenance"; req_access_txt = "11"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/electrical) +"ayo" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/electrical) +"ayp" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/hologram/holopad,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/electrical) +"ayq" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/electrical) +"ayr" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/plating,/area/maintenance/electrical) +"ays" = (/obj/structure/chair/stool{pixel_y = 8},/turf/open/floor/plating,/area/maintenance/electrical) +"ayt" = (/obj/structure/table,/obj/machinery/light{icon_state = "tube1"; dir = 4},/obj/item/wallframe/camera,/obj/item/wallframe/camera,/obj/machinery/airalarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/item/device/assembly/prox_sensor{pixel_x = -8; pixel_y = 4},/turf/open/floor/plasteel/floorgrime,/area/maintenance/electrical) +"ayu" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/hallway/secondary/entry) +"ayv" = (/turf/open/floor/plasteel/warning{dir = 1},/area/hallway/secondary/entry) +"ayw" = (/obj/machinery/light{dir = 1},/turf/open/floor/plasteel,/area/hallway/secondary/entry) +"ayx" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/warning{dir = 1},/area/hallway/secondary/entry) +"ayy" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/arrival{dir = 1},/area/hallway/secondary/entry) +"ayz" = (/obj/machinery/light{dir = 1},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/arrival{dir = 1},/area/hallway/secondary/entry) +"ayA" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/turf/open/floor/plasteel/arrival{dir = 1},/area/hallway/secondary/entry) +"ayB" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; external_pressure_bound = 101.325; on = 1; pressure_checks = 1},/turf/open/floor/plasteel/arrival{dir = 1},/area/hallway/secondary/entry) +"ayC" = (/turf/open/floor/plasteel/arrival{dir = 1},/area/hallway/secondary/entry) +"ayD" = (/turf/open/floor/plasteel/arrival{dir = 5},/area/hallway/secondary/entry) +"ayE" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/fpmaint2) +"ayF" = (/obj/machinery/sleeper{dir = 4; icon_state = "sleeper-open"},/turf/open/floor/plating,/area/maintenance/fpmaint2) +"ayG" = (/mob/living/simple_animal/mouse,/turf/open/floor/plating,/area/maintenance/fpmaint2) +"ayH" = (/obj/effect/landmark{name = "blobstart"},/turf/open/floor/plating,/area/maintenance/fpmaint2) +"ayI" = (/obj/structure/table/glass,/obj/item/weapon/storage/bag/trash,/turf/open/floor/plating,/area/maintenance/fpmaint2) +"ayJ" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/closed/wall,/area/maintenance/fpmaint2) +"ayK" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fpmaint2) +"ayL" = (/obj/machinery/door/airlock/maintenance{name = "Firefighting equipment"; req_access_txt = "12"},/turf/open/floor/plating,/area/maintenance/fpmaint2) +"ayM" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/fpmaint2) +"ayN" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fpmaint2) +"ayO" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"; pixel_y = -32},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fpmaint) +"ayP" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fpmaint) +"ayQ" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/turf/open/floor/plating,/area/maintenance/fpmaint) +"ayR" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/fpmaint) +"ayS" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fpmaint) +"ayT" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"; pixel_y = -32},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fpmaint) +"ayU" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/fpmaint) +"ayV" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fpmaint) +"ayW" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fpmaint) +"ayX" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/fpmaint) +"ayY" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/turf/open/floor/plating,/area/maintenance/fpmaint) +"ayZ" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall/r_wall,/area/ai_monitored/storage/eva) +"aza" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,/turf/closed/wall/r_wall,/area/ai_monitored/storage/eva) +"azb" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall,/area/ai_monitored/storage/eva) +"azc" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/blue/corner{dir = 8},/area/hallway/primary/fore) +"azd" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/fore) +"aze" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/turf/open/floor/plasteel/blue/corner,/area/hallway/primary/fore) +"azf" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall,/area/maintenance/fsmaint) +"azg" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/turf/open/floor/plating,/area/maintenance/fsmaint) +"azh" = (/obj/machinery/hologram/holopad,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/crew_quarters/sleep) +"azi" = (/turf/open/floor/plasteel,/area/crew_quarters/sleep) +"azj" = (/obj/structure/chair/stool{pixel_y = 8},/turf/open/floor/plasteel,/area/crew_quarters/sleep) +"azk" = (/obj/structure/table/wood,/obj/item/weapon/storage/crayons,/turf/open/floor/plasteel,/area/crew_quarters/sleep) +"azl" = (/obj/structure/table/wood,/obj/item/device/paicard,/turf/open/floor/plasteel,/area/crew_quarters/sleep) +"azm" = (/obj/structure/table/wood,/obj/item/toy/cards/deck{pixel_x = 2},/obj/item/clothing/mask/balaclava{pixel_x = -8; pixel_y = 8},/turf/open/floor/plasteel,/area/crew_quarters/sleep) +"azn" = (/obj/structure/chair/stool{pixel_y = 8},/obj/effect/landmark/start{name = "Assistant"},/turf/open/floor/plasteel,/area/crew_quarters/sleep) +"azo" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; external_pressure_bound = 101.325; on = 1; pressure_checks = 1},/turf/open/floor/plasteel,/area/crew_quarters/sleep) +"azp" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/floor/plasteel,/area/crew_quarters/sleep) +"azq" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass{name = "Fitness"},/turf/open/floor/plasteel,/area/crew_quarters/fitness) +"azr" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel,/area/crew_quarters/fitness) +"azs" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 8},/turf/open/floor/plasteel,/area/crew_quarters/fitness) +"azt" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_Toxins = 0},/turf/open/floor/plasteel/black,/area/crew_quarters/fitness) +"azu" = (/obj/structure/window/reinforced,/turf/open/floor/plasteel/black,/area/crew_quarters/fitness) +"azv" = (/obj/machinery/door/window/eastright{base_state = "left"; icon_state = "left"; name = "Fitness Ring"},/obj/structure/window/reinforced,/turf/open/floor/plasteel/black,/area/crew_quarters/fitness) +"azw" = (/turf/open/floor/plasteel/green/side{dir = 4},/area/crew_quarters/fitness) +"azx" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass{name = "Holodeck Door"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/turf/open/floor/plasteel,/area/crew_quarters/fitness) +"azy" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/crew_quarters/fitness) +"azz" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/plasteel,/area/crew_quarters/fitness) +"azA" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"azB" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"azC" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"azD" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"azE" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"azF" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall,/area/maintenance/electrical) +"azG" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall,/area/maintenance/electrical) +"azH" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/electrical) +"azI" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_Toxins = 0},/turf/open/floor/plating,/area/maintenance/electrical) +"azJ" = (/obj/structure/table,/obj/machinery/cell_charger,/obj/item/weapon/stock_parts/cell/high/plus,/obj/item/weapon/stock_parts/cell/high/plus,/turf/open/floor/plating,/area/maintenance/electrical) +"azK" = (/turf/open/floor/plasteel/warning,/area/hallway/secondary/entry) +"azL" = (/turf/open/floor/plasteel,/area/hallway/secondary/entry) +"azM" = (/turf/open/floor/plasteel/warning/corner{dir = 1},/area/hallway/secondary/entry) +"azN" = (/turf/open/floor/plasteel/warning/corner{dir = 2},/area/hallway/secondary/entry) +"azO" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/open/floor/plasteel/warning,/area/hallway/secondary/entry) +"azP" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/open/floor/plasteel/warning/corner{dir = 1},/area/hallway/secondary/entry) +"azQ" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/open/floor/plasteel,/area/hallway/secondary/entry) +"azR" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/extinguisher_cabinet{pixel_x = 27; pixel_y = 0},/turf/open/floor/plasteel/arrival{dir = 4},/area/hallway/secondary/entry) +"azS" = (/obj/structure/closet/wardrobe/white,/obj/item/clothing/shoes/jackboots,/obj/item/weapon/reagent_containers/blood/random,/obj/item/weapon/reagent_containers/food/drinks/bottle/vodka/badminka,/turf/open/floor/plating,/area/maintenance/fpmaint2) +"azT" = (/obj/structure/table/glass,/obj/item/weapon/hemostat,/turf/open/floor/plating,/area/maintenance/fpmaint2) +"azU" = (/obj/structure/table/glass,/obj/item/weapon/restraints/handcuffs/cable/zipties,/obj/item/weapon/reagent_containers/blood/random,/turf/open/floor/plating,/area/maintenance/fpmaint2) +"azV" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 8},/turf/open/floor/plating,/area/maintenance/fpmaint2) +"azW" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/fpmaint2) +"azX" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fpmaint2) +"azY" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/turf/open/floor/plating,/area/maintenance/fpmaint2) +"azZ" = (/obj/structure/closet/firecloset,/turf/open/floor/plating,/area/maintenance/fpmaint2) +"aAa" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/fpmaint2) +"aAb" = (/turf/closed/wall/r_wall,/area/maintenance/fpmaint2) +"aAc" = (/obj/structure/grille,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/maintenance/fpmaint) +"aAd" = (/obj/structure/grille,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/maintenance/fpmaint) +"aAe" = (/obj/structure/grille,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/maintenance/fpmaint) +"aAf" = (/obj/structure/grille,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/maintenance/fpmaint) +"aAg" = (/obj/structure/grille,/obj/structure/cable,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/maintenance/fpmaint) +"aAh" = (/turf/closed/wall/r_wall,/area/maintenance/fpmaint) +"aAi" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/fpmaint) +"aAj" = (/turf/closed/wall/r_wall,/area/gateway) +"aAk" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/fpmaint) +"aAl" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/sign/securearea{pixel_x = 32; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/fpmaint) +"aAm" = (/turf/closed/wall/r_wall,/area/ai_monitored/storage/eva) +"aAn" = (/obj/structure/closet/crate/rcd,/obj/machinery/camera/motion{c_tag = "EVA Motion Sensor"; name = "motion-sensitive security camera"},/turf/open/floor/plasteel/black,/area/ai_monitored/storage/eva) +"aAo" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/machinery/light{dir = 1},/obj/item/weapon/hand_labeler,/obj/item/device/flashlight,/obj/item/device/flashlight,/obj/item/device/flashlight,/obj/item/device/flashlight,/turf/open/floor/plasteel/black,/area/ai_monitored/storage/eva) +"aAp" = (/obj/machinery/firealarm{dir = 2; pixel_y = 24},/obj/item/clothing/head/welding,/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) +"aAq" = (/obj/machinery/power/apc{dir = 1; name = "EVA Storage APC"; pixel_x = 0; pixel_y = 24},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) +"aAr" = (/obj/machinery/airalarm{pixel_y = 23},/obj/item/device/radio/off,/obj/item/device/assembly/timer,/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) +"aAs" = (/obj/structure/table,/obj/item/stack/cable_coil{pixel_x = 3; pixel_y = -7},/obj/machinery/cell_charger,/obj/item/weapon/stock_parts/cell/high/plus,/turf/open/floor/plasteel/black,/area/ai_monitored/storage/eva) +"aAt" = (/obj/structure/table,/obj/item/weapon/storage/toolbox/electrical{pixel_x = 1; pixel_y = -1},/obj/item/weapon/screwdriver{pixel_y = 16},/turf/open/floor/plasteel/black,/area/ai_monitored/storage/eva) +"aAu" = (/obj/structure/grille,/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/structure/sign/securearea{pixel_y = 32},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/ai_monitored/storage/eva) +"aAv" = (/obj/structure/table,/obj/item/weapon/storage/toolbox/mechanical{pixel_x = -2; pixel_y = -1},/obj/item/device/multitool,/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) +"aAw" = (/obj/machinery/light{dir = 1},/obj/structure/table,/obj/item/device/assembly/signaler,/obj/item/device/assembly/signaler,/obj/item/weapon/stock_parts/cell/high/plus,/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) +"aAx" = (/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) +"aAy" = (/obj/structure/table,/obj/item/weapon/storage/belt/utility,/obj/item/weapon/storage/belt/utility,/obj/item/weapon/storage/belt/utility,/obj/item/clothing/head/welding,/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) +"aAz" = (/turf/closed/wall,/area/ai_monitored/storage/eva) +"aAA" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; external_pressure_bound = 101.325; on = 1; pressure_checks = 1},/turf/open/floor/plasteel/blue/corner{dir = 8},/area/hallway/primary/fore) +"aAB" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/blue/corner,/area/hallway/primary/fore) +"aAC" = (/obj/structure/bed,/obj/item/weapon/bedsheet,/obj/machinery/airalarm{pixel_y = 23},/obj/machinery/button/door{id = "Dorm2"; name = "Dorm Bolt Control"; normaldoorcontrol = 1; pixel_x = 25; pixel_y = 0; req_access_txt = "0"; specialfunctions = 4},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/carpet,/area/crew_quarters/sleep) +"aAD" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/turf/open/floor/plasteel/neutral/side{dir = 8},/area/crew_quarters/sleep) +"aAE" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel,/area/crew_quarters/sleep) +"aAF" = (/obj/structure/chair/stool{pixel_y = 8},/turf/open/floor/plasteel/neutral/corner{dir = 2},/area/crew_quarters/sleep) +"aAG" = (/obj/machinery/light,/turf/open/floor/plasteel/neutral/side,/area/crew_quarters/sleep) +"aAH" = (/turf/open/floor/plasteel/neutral/side,/area/crew_quarters/sleep) +"aAI" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plasteel/neutral/side{dir = 6},/area/crew_quarters/sleep) +"aAJ" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -29},/turf/open/floor/plasteel/neutral/side{dir = 10},/area/crew_quarters/fitness) +"aAK" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/neutral/corner{dir = 8},/area/crew_quarters/fitness) +"aAL" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/turf/open/floor/plasteel,/area/crew_quarters/fitness) +"aAM" = (/obj/structure/table,/obj/item/weapon/storage/firstaid/regular,/turf/open/floor/plasteel,/area/crew_quarters/fitness) +"aAN" = (/obj/structure/chair/stool{pixel_y = 8},/turf/open/floor/plasteel,/area/crew_quarters/fitness) +"aAO" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/plasteel,/area/crew_quarters/fitness) +"aAP" = (/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden,/turf/open/floor/plasteel,/area/crew_quarters/fitness) +"aAQ" = (/obj/machinery/camera{c_tag = "Fitness Room South"; dir = 1},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/green/side{dir = 4},/area/crew_quarters/fitness) +"aAR" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/open/floor/plating,/area/crew_quarters/fitness) +"aAS" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/crew_quarters/fitness) +"aAT" = (/obj/structure/grille/broken,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aAU" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aAV" = (/obj/machinery/power/terminal,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/open/floor/plating,/area/maintenance/electrical) +"aAW" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plating,/area/maintenance/electrical) +"aAX" = (/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/open/floor/plating,/area/maintenance/electrical) +"aAY" = (/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/open/floor/plating,/area/maintenance/electrical) +"aAZ" = (/obj/machinery/light_switch{pixel_y = -25},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/open/floor/plating,/area/maintenance/electrical) +"aBa" = (/obj/machinery/power/terminal,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/open/floor/plating,/area/maintenance/electrical) +"aBb" = (/obj/machinery/door/airlock/external{name = "Port Docking Bay 1"},/turf/open/floor/plating,/area/hallway/secondary/entry) +"aBc" = (/turf/open/floor/plasteel/warning{dir = 8},/area/hallway/secondary/entry) +"aBd" = (/turf/open/floor/plasteel/warning{dir = 4},/area/hallway/secondary/entry) +"aBe" = (/turf/open/floor/plasteel/warning{dir = 10},/area/hallway/secondary/entry) +"aBf" = (/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -29},/turf/open/floor/plasteel/warning,/area/hallway/secondary/entry) +"aBg" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/arrival{dir = 4},/area/hallway/secondary/entry) +"aBh" = (/turf/closed/wall,/area/hallway/secondary/construction{name = "\improper Garden"}) +"aBi" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall,/area/hallway/secondary/construction{name = "\improper Garden"}) +"aBj" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/fpmaint2) +"aBk" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/turf/closed/wall,/area/maintenance/fpmaint2) +"aBl" = (/obj/structure/lattice,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/space,/area/space) +"aBm" = (/obj/structure/lattice,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/space,/area/space) +"aBn" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/open/floor/plasteel/black,/area/gateway) +"aBo" = (/obj/machinery/gateway{dir = 9},/turf/open/floor/plasteel/vault{dir = 1},/area/gateway) +"aBp" = (/obj/machinery/gateway{dir = 1},/turf/open/floor/plasteel/vault{dir = 8},/area/gateway) +"aBq" = (/obj/machinery/gateway{dir = 5},/turf/open/floor/plasteel/vault{dir = 4},/area/gateway) +"aBr" = (/obj/machinery/light{dir = 4},/turf/open/floor/plasteel/black,/area/gateway) +"aBs" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 8},/turf/open/floor/plating,/area/maintenance/fpmaint) +"aBt" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/firedoor,/obj/machinery/door/airlock/maintenance{name = "EVA Maintenance"; req_access_txt = "18"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) +"aBu" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) +"aBv" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) +"aBw" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) +"aBx" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) +"aBy" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_command{name = "EVA Storage"; req_access_txt = "18"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) +"aBz" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) +"aBA" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) +"aBB" = (/obj/structure/table,/obj/item/device/radio/off,/obj/item/device/radio/off,/obj/item/device/assembly/prox_sensor,/obj/item/device/assembly/prox_sensor,/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) +"aBC" = (/turf/open/floor/plasteel/blue/corner{dir = 8},/area/hallway/primary/fore) +"aBD" = (/turf/open/floor/plasteel/blue/corner,/area/hallway/primary/fore) +"aBE" = (/obj/machinery/door/airlock{id_tag = "Dorm2"; name = "Dorm 2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/crew_quarters/sleep) +"aBF" = (/obj/machinery/atmospherics/pipe/manifold4w/scrubbers/hidden,/turf/open/floor/plasteel/neutral/corner{dir = 2},/area/crew_quarters/sleep) +"aBG" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_Toxins = 0},/turf/open/floor/plasteel/neutral/side,/area/crew_quarters/sleep) +"aBH" = (/obj/machinery/light_switch{pixel_y = -25},/turf/open/floor/plasteel/neutral/side,/area/crew_quarters/sleep) +"aBI" = (/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -29},/turf/open/floor/plasteel/neutral/side,/area/crew_quarters/sleep) +"aBJ" = (/obj/structure/closet/wardrobe/pjs,/turf/open/floor/plasteel/neutral/side,/area/crew_quarters/sleep) +"aBK" = (/obj/structure/closet/wardrobe/pjs,/turf/open/floor/plasteel/neutral/side{dir = 6},/area/crew_quarters/sleep) +"aBL" = (/turf/closed/wall,/area/crew_quarters/toilet) +"aBM" = (/obj/machinery/door/airlock{name = "Unisex Showers"; req_access_txt = "0"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plasteel/freezer,/area/crew_quarters/toilet) +"aBN" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 5},/turf/open/floor/plasteel/neutral/side{dir = 10},/area/crew_quarters/fitness) +"aBO" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/neutral/side,/area/crew_quarters/fitness) +"aBP" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/light_switch{pixel_y = -25},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/neutral/side,/area/crew_quarters/fitness) +"aBQ" = (/obj/machinery/firealarm{dir = 1; pixel_y = -24},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/light,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/neutral/side,/area/crew_quarters/fitness) +"aBR" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/turf/open/floor/plasteel/neutral/side,/area/crew_quarters/fitness) +"aBS" = (/obj/structure/reagent_dispensers/water_cooler,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/neutral/side{dir = 6},/area/crew_quarters/fitness) +"aBT" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aBU" = (/obj/machinery/atmospherics/components/unary/tank/air{dir = 8},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aBV" = (/obj/structure/closet,/obj/effect/decal/cleanable/cobweb,/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aBW" = (/obj/structure/closet,/obj/effect/spawner/lootdrop/maintenance{lootcount = 2; name = "2maintenance loot spawner"},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aBX" = (/obj/machinery/door/poddoor/preopen{id = "maint2"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aBY" = (/obj/machinery/door/poddoor/preopen{id = "maint2"},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aBZ" = (/obj/structure/closet,/obj/effect/landmark{name = "blobstart"},/obj/effect/spawner/lootdrop/maintenance,/obj/item/weapon/reagent_containers/food/drinks/bottle/vodka/badminka,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aCa" = (/obj/structure/grille,/obj/structure/window/fulltile,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aCb" = (/obj/machinery/power/smes{charge = 0},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/open/floor/plating,/area/maintenance/electrical) +"aCc" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/closed/wall,/area/maintenance/electrical) +"aCd" = (/obj/machinery/computer/monitor{name = "backup power monitoring console"},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/cable,/turf/open/floor/plating,/area/maintenance/electrical) +"aCe" = (/obj/machinery/power/smes{charge = 0},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/open/floor/plating,/area/maintenance/electrical) +"aCf" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'KEEP CLEAR OF DOCKING AREA'."; name = "KEEP CLEAR: DOCKING AREA"; pixel_y = 0},/turf/closed/wall/r_wall,/area/hallway/secondary/entry) +"aCg" = (/obj/structure/grille,/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 0; pixel_y = 32},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/hallway/secondary/entry) +"aCh" = (/obj/structure/closet/emcloset,/turf/open/floor/plasteel/warning{dir = 10},/area/hallway/secondary/entry) +"aCi" = (/obj/structure/closet/emcloset,/turf/open/floor/plasteel/warning,/area/hallway/secondary/entry) +"aCj" = (/obj/machinery/camera{c_tag = "Arrivals Bay 1 North"; dir = 1},/turf/open/floor/plasteel/warning,/area/hallway/secondary/entry) +"aCk" = (/obj/machinery/vending/coffee,/turf/open/floor/plasteel/warning{dir = 6},/area/hallway/secondary/entry) +"aCl" = (/obj/machinery/door/firedoor,/turf/open/floor/plasteel/warning{dir = 8},/area/hallway/secondary/entry) +"aCm" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/firedoor,/turf/open/floor/plasteel/arrival{dir = 4},/area/hallway/secondary/entry) +"aCn" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/power/apc{dir = 2; name = "Security Checkpoint APC"; pixel_x = 1; pixel_y = -24},/obj/structure/cable,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/security/checkpoint2) +"aCo" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/fpmaint2) +"aCp" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/open/floor/plating,/area/maintenance/fpmaint2) +"aCq" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plating,/area/maintenance/fpmaint2) +"aCr" = (/obj/machinery/power/apc{dir = 4; name = "Garden APC"; pixel_x = 27; pixel_y = 2},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/open/floor/plating,/area/hallway/secondary/construction{name = "\improper Garden"}) +"aCs" = (/obj/machinery/hydroponics/soil,/turf/open/floor/grass,/area/hallway/secondary/construction{name = "\improper Garden"}) +"aCt" = (/obj/machinery/light{dir = 1},/obj/structure/sink{pixel_y = 30},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/hallway/secondary/construction{name = "\improper Garden"}) +"aCu" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/hallway/secondary/construction{name = "\improper Garden"}) +"aCv" = (/obj/machinery/seed_extractor,/turf/open/floor/plasteel,/area/hallway/secondary/construction{name = "\improper Garden"}) +"aCw" = (/obj/structure/extinguisher_cabinet{pixel_x = -5; pixel_y = 30},/turf/open/floor/plasteel,/area/hallway/secondary/construction{name = "\improper Garden"}) +"aCx" = (/obj/structure/sink{pixel_y = 30},/turf/open/floor/plasteel,/area/hallway/secondary/construction{name = "\improper Garden"}) +"aCy" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/effect/spawner/lootdrop/maintenance,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 5},/turf/open/floor/plating,/area/maintenance/fpmaint2) +"aCz" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fpmaint2) +"aCA" = (/obj/machinery/power/apc{dir = 2; name = "Primary Tool Storage APC"; pixel_x = 1; pixel_y = -24},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/storage/primary) +"aCB" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fpmaint2) +"aCC" = (/turf/closed/wall/r_wall,/area/ai_monitored/nuke_storage) +"aCD" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall/r_wall,/area/ai_monitored/nuke_storage) +"aCE" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/closed/wall/r_wall,/area/ai_monitored/nuke_storage) +"aCF" = (/turf/open/floor/plasteel/black,/area/gateway) +"aCG" = (/obj/machinery/gateway{dir = 8},/turf/open/floor/plasteel/vault{dir = 8},/area/gateway) +"aCH" = (/obj/machinery/gateway/centerstation,/turf/open/floor/plasteel/black,/area/gateway) +"aCI" = (/obj/machinery/gateway{dir = 4},/turf/open/floor/plasteel/vault{dir = 8},/area/gateway) +"aCJ" = (/obj/machinery/power/apc{dir = 8; name = "Gateway APC"; pixel_x = -24; pixel_y = -1},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/turf/open/floor/plating,/area/gateway) +"aCK" = (/obj/machinery/camera{c_tag = "EVA Maintenance"; dir = 8; network = list("SS13")},/obj/machinery/light/small{dir = 4},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/fpmaint) +"aCL" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/closed/wall/r_wall,/area/ai_monitored/storage/eva) +"aCM" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/machinery/light{icon_state = "tube1"; dir = 8},/obj/item/weapon/tank/jetpack/carbondioxide,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/warning{dir = 9},/area/ai_monitored/storage/eva) +"aCN" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/weapon/tank/jetpack/carbondioxide,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/warning{dir = 1},/area/ai_monitored/storage/eva) +"aCO" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) +"aCP" = (/obj/machinery/hologram/holopad,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) +"aCQ" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) +"aCR" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/clothing/shoes/magboots,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/warning{dir = 1},/area/ai_monitored/storage/eva) +"aCS" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/clothing/shoes/magboots,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/warning{dir = 5},/area/ai_monitored/storage/eva) +"aCT" = (/obj/structure/grille,/obj/structure/cable,/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/ai_monitored/storage/eva) +"aCU" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) +"aCV" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/ai_monitored/storage/eva) +"aCW" = (/obj/machinery/light{dir = 4; icon_state = "tube1"},/turf/open/floor/plasteel/blue/corner,/area/hallway/primary/fore) +"aCX" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/neutral/side{dir = 8},/area/crew_quarters/sleep) +"aCY" = (/obj/machinery/shower{dir = 4},/turf/open/floor/plasteel/freezer,/area/crew_quarters/toilet) +"aCZ" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plasteel/freezer,/area/crew_quarters/toilet) +"aDa" = (/obj/machinery/shower{dir = 8},/turf/open/floor/plasteel/freezer,/area/crew_quarters/toilet) +"aDb" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aDc" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/closed/wall,/area/maintenance/fsmaint2) +"aDd" = (/obj/machinery/meter,/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aDe" = (/obj/item/clothing/under/rank/mailman,/obj/item/clothing/head/mailman,/obj/structure/closet,/obj/effect/landmark{name = "blobstart"},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aDf" = (/obj/machinery/space_heater,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aDg" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/open/floor/plasteel/warning{dir = 8},/area/hallway/secondary/entry) +"aDh" = (/turf/closed/wall,/area/security/checkpoint2) +"aDi" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/closed/wall,/area/security/checkpoint2) +"aDj" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall,/area/security/checkpoint2) +"aDk" = (/obj/machinery/door/airlock/maintenance{name = "Security Maintenance"; req_access_txt = "1"},/turf/open/floor/plating,/area/security/checkpoint2) +"aDl" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/hallway/secondary/construction{name = "\improper Garden"}) +"aDm" = (/obj/effect/landmark/start{name = "Assistant"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/turf/open/floor/plasteel,/area/hallway/secondary/construction{name = "\improper Garden"}) +"aDn" = (/obj/item/seeds/apple,/obj/item/seeds/banana,/obj/item/seeds/cocoapod,/obj/item/seeds/grape,/obj/item/seeds/orange,/obj/item/seeds/sugarcane,/obj/item/seeds/wheat,/obj/item/seeds/watermelon,/obj/structure/table/glass,/obj/item/seeds/tower,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/hallway/secondary/construction{name = "\improper Garden"}) +"aDo" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/hallway/secondary/construction{name = "\improper Garden"}) +"aDp" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/plasteel,/area/hallway/secondary/construction{name = "\improper Garden"}) +"aDq" = (/obj/machinery/door/airlock/maintenance{name = "Garden Maintenance"; req_access_txt = "12"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/fpmaint2) +"aDr" = (/turf/closed/wall,/area/storage/primary) +"aDs" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall,/area/storage/primary) +"aDt" = (/turf/closed/wall/r_wall,/area/storage/primary) +"aDu" = (/obj/structure/closet/secure_closet/freezer/money,/turf/open/floor/plasteel/vault{dir = 8},/area/ai_monitored/nuke_storage) +"aDv" = (/obj/machinery/light_switch{pixel_y = 28},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/bluegrid,/area/ai_monitored/nuke_storage) +"aDw" = (/obj/machinery/airalarm{pixel_y = 23},/obj/machinery/light{dir = 1},/turf/open/floor/bluegrid,/area/ai_monitored/nuke_storage) +"aDx" = (/obj/machinery/power/apc{dir = 1; name = "Vault APC"; pixel_x = 0; pixel_y = 25},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/bluegrid,/area/ai_monitored/nuke_storage) +"aDy" = (/obj/structure/filingcabinet,/obj/item/weapon/folder/documents,/turf/open/floor/plasteel/vault{dir = 8},/area/ai_monitored/nuke_storage) +"aDz" = (/obj/machinery/gateway{dir = 10},/turf/open/floor/plasteel/vault{dir = 4},/area/gateway) +"aDA" = (/obj/machinery/gateway,/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/open/floor/plasteel/vault{dir = 8},/area/gateway) +"aDB" = (/obj/machinery/gateway{dir = 6},/turf/open/floor/plasteel/vault{dir = 1},/area/gateway) +"aDC" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/meter,/turf/open/floor/plating,/area/maintenance/fpmaint) +"aDD" = (/obj/machinery/requests_console{department = "EVA"; pixel_x = -32; pixel_y = 0},/turf/open/floor/plasteel/warning{dir = 8},/area/ai_monitored/storage/eva) +"aDE" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) +"aDF" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) +"aDG" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) +"aDH" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/item/weapon/pen{desc = "Writes upside down!"; name = "astronaut pen"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) +"aDI" = (/turf/open/floor/plasteel/warning{dir = 4},/area/ai_monitored/storage/eva) +"aDJ" = (/obj/structure/grille,/obj/structure/cable,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/ai_monitored/storage/eva) +"aDK" = (/obj/machinery/camera{c_tag = "EVA East"; dir = 1},/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) +"aDL" = (/obj/structure/bed,/obj/item/weapon/bedsheet,/obj/machinery/airalarm{pixel_y = 23},/obj/machinery/button/door{id = "Dorm1"; name = "Dorm Bolt Control"; normaldoorcontrol = 1; pixel_x = 25; pixel_y = 0; req_access_txt = "0"; specialfunctions = 4},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/carpet,/area/crew_quarters/sleep) +"aDM" = (/obj/structure/sink{icon_state = "sink"; dir = 8; pixel_x = -12; pixel_y = 2},/obj/structure/mirror{pixel_x = -28},/obj/machinery/light{dir = 1},/turf/open/floor/plasteel/freezer,/area/crew_quarters/toilet) +"aDN" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/freezer,/area/crew_quarters/toilet) +"aDO" = (/obj/structure/urinal{pixel_y = 32},/turf/open/floor/plasteel/freezer,/area/crew_quarters/toilet) +"aDP" = (/obj/effect/landmark{name = "xeno_spawn"; pixel_x = -1},/obj/item/weapon/bikehorn/rubberducky,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plasteel/freezer,/area/crew_quarters/toilet) +"aDQ" = (/obj/structure/table/wood,/obj/machinery/requests_console{department = "Theatre"; departmentType = 0; name = "theatre RC"; pixel_x = -32; pixel_y = 0},/obj/item/weapon/reagent_containers/food/snacks/baguette,/turf/open/floor/plasteel/white/side{dir = 4},/area/crew_quarters/theatre) +"aDR" = (/obj/machinery/camera{c_tag = "Theatre Storage"},/turf/open/floor/plasteel/white/side{dir = 4},/area/crew_quarters/theatre) +"aDS" = (/obj/machinery/vending/autodrobe,/turf/open/floor/plasteel/white/side{dir = 4},/area/crew_quarters/theatre) +"aDT" = (/turf/closed/wall,/area/crew_quarters/theatre) +"aDU" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aDV" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/crew_quarters/fitness) +"aDW" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/crew_quarters/fitness) +"aDX" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/crew_quarters/fitness) +"aDY" = (/obj/machinery/atmospherics/components/binary/valve,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aDZ" = (/obj/effect/decal/cleanable/oil,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aEa" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aEb" = (/obj/structure/grille/broken,/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/window{icon_state = "window"; dir = 4},/obj/structure/window,/turf/open/floor/plating{icon_state = "panelscorched"},/area/maintenance/fsmaint2) +"aEc" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/turf/closed/wall,/area/maintenance/fsmaint2) +"aEd" = (/obj/machinery/door/poddoor/preopen{id = "maint1"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aEe" = (/obj/machinery/door/poddoor/preopen{id = "maint1"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aEf" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/closed/wall,/area/maintenance/fsmaint2) +"aEg" = (/obj/structure/girder,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aEh" = (/obj/machinery/space_heater,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aEi" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aEj" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aEk" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aEl" = (/obj/structure/chair/stool{pixel_y = 8},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aEm" = (/obj/structure/reagent_dispensers/watertank,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aEn" = (/obj/structure/rack,/obj/effect/spawner/lootdrop/maintenance,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aEo" = (/obj/structure/reagent_dispensers/fueltank,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aEp" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/black,/area/chapel/main) +"aEq" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/light/small{dir = 1},/turf/open/floor/plasteel/black,/area/chapel/main) +"aEr" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/open/floor/plasteel/black,/area/chapel/main) +"aEs" = (/turf/closed/wall,/area/chapel/main) +"aEt" = (/turf/open/space,/turf/closed/wall/shuttle{icon_state = "swall_f6"; dir = 2},/area/shuttle/arrival) +"aEu" = (/turf/closed/wall/shuttle{icon_state = "swall12"; dir = 2},/area/shuttle/arrival) +"aEv" = (/obj/machinery/door/airlock/shuttle{name = "Arrivals Shuttle Airlock"},/turf/open/floor/plating,/area/shuttle/arrival) +"aEw" = (/obj/structure/grille,/obj/structure/window/shuttle,/turf/open/floor/plating,/area/shuttle/arrival) +"aEx" = (/turf/closed/wall/shuttle{icon_state = "swall14"; dir = 2},/area/shuttle/arrival) +"aEy" = (/turf/open/space,/turf/closed/wall/shuttle{dir = 2; icon_state = "swall_f10"; layer = 2},/area/shuttle/arrival) +"aEz" = (/obj/machinery/camera{c_tag = "Arrivals North"; dir = 8; network = list("SS13")},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plasteel/arrival{dir = 4},/area/hallway/secondary/entry) +"aEA" = (/obj/structure/closet/secure_closet/security,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/red/side{dir = 9},/area/security/checkpoint2) +"aEB" = (/obj/structure/closet/wardrobe/red,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/red/side{dir = 1},/area/security/checkpoint2) +"aEC" = (/obj/machinery/computer/security,/obj/structure/reagent_dispensers/peppertank{pixel_x = 0; pixel_y = 30},/turf/open/floor/plasteel/red/side{dir = 1},/area/security/checkpoint2) +"aED" = (/obj/machinery/computer/card,/obj/machinery/light{dir = 1},/obj/item/device/radio/intercom{broadcasting = 0; name = "Station Intercom (General)"; pixel_y = 20},/turf/open/floor/plasteel/red/side{dir = 1},/area/security/checkpoint2) +"aEE" = (/obj/machinery/computer/secure_data,/obj/machinery/requests_console{department = "Security"; departmentType = 5; pixel_y = 30},/turf/open/floor/plasteel/red/side{dir = 1},/area/security/checkpoint2) +"aEF" = (/turf/open/floor/plasteel/red/side{dir = 5},/area/security/checkpoint2) +"aEG" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/hallway/secondary/construction{name = "\improper Garden"}) +"aEH" = (/turf/open/floor/plasteel,/area/hallway/secondary/construction{name = "\improper Garden"}) +"aEI" = (/obj/machinery/biogenerator,/turf/open/floor/plasteel,/area/hallway/secondary/construction{name = "\improper Garden"}) +"aEJ" = (/obj/machinery/vending/assist,/turf/open/floor/plasteel,/area/storage/primary) +"aEK" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/storage/primary) +"aEL" = (/obj/structure/table,/obj/item/weapon/wirecutters,/obj/item/device/flashlight{pixel_x = 1; pixel_y = 5},/obj/machinery/firealarm{dir = 2; pixel_y = 24},/turf/open/floor/plasteel,/area/storage/primary) +"aEM" = (/obj/structure/table,/obj/item/device/t_scanner,/obj/machinery/airalarm{pixel_y = 23},/turf/open/floor/plasteel,/area/storage/primary) +"aEN" = (/obj/structure/table,/obj/item/device/assembly/igniter{pixel_x = -8; pixel_y = -4},/obj/item/device/assembly/igniter,/obj/item/weapon/screwdriver{pixel_y = 16},/obj/machinery/camera{c_tag = "Primary Tool Storage"},/obj/machinery/requests_console{department = "Tool Storage"; departmentType = 0; pixel_y = 30},/turf/open/floor/plasteel,/area/storage/primary) +"aEO" = (/obj/structure/table,/obj/item/device/assembly/signaler,/obj/item/device/assembly/signaler,/obj/item/device/radio/intercom{broadcasting = 0; name = "Station Intercom (General)"; pixel_y = 20},/obj/item/device/multitool,/obj/item/device/multitool{pixel_x = 4},/turf/open/floor/plasteel,/area/storage/primary) +"aEP" = (/obj/structure/table,/obj/machinery/cell_charger,/obj/machinery/light_switch{pixel_y = 28},/obj/item/weapon/stock_parts/cell/high/plus,/turf/open/floor/plasteel,/area/storage/primary) +"aEQ" = (/obj/structure/table,/obj/item/weapon/storage/toolbox/mechanical{pixel_x = -2; pixel_y = -1},/turf/open/floor/plasteel,/area/storage/primary) +"aER" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/storage/primary) +"aES" = (/obj/machinery/vending/tool,/turf/open/floor/plasteel,/area/storage/primary) +"aET" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/vault{dir = 1},/area/ai_monitored/nuke_storage) +"aEU" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/turf/open/floor/bluegrid,/area/ai_monitored/nuke_storage) +"aEV" = (/obj/machinery/nuclearbomb/selfdestruct{layer = 4},/turf/open/floor/plasteel/vault{dir = 8},/area/ai_monitored/nuke_storage) +"aEW" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/turf/open/floor/bluegrid,/area/ai_monitored/nuke_storage) +"aEX" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/plasteel/vault{dir = 4},/area/ai_monitored/nuke_storage) +"aEY" = (/obj/structure/window/reinforced,/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/turf/open/floor/plasteel/black,/area/gateway) +"aEZ" = (/obj/structure/window/reinforced,/turf/open/floor/plasteel/black,/area/gateway) +"aFa" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/window{name = "Gateway Chamber"; req_access_txt = "62"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/open/floor/plasteel/black,/area/gateway) +"aFb" = (/obj/structure/window/reinforced,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/black,/area/gateway) +"aFc" = (/obj/structure/window/reinforced,/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/black,/area/gateway) +"aFd" = (/obj/structure/rack{dir = 1},/obj/effect/spawner/lootdrop/maintenance{lootcount = 2; name = "2maintenance loot spawner"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/fpmaint) +"aFe" = (/obj/machinery/suit_storage_unit/standard_unit,/turf/open/floor/plasteel/warning{dir = 10},/area/ai_monitored/storage/eva) +"aFf" = (/obj/machinery/suit_storage_unit/standard_unit,/turf/open/floor/plasteel/warning{dir = 2},/area/ai_monitored/storage/eva) +"aFg" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) +"aFh" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) +"aFi" = (/obj/machinery/suit_storage_unit/standard_unit,/obj/machinery/light,/obj/machinery/camera{c_tag = "EVA Storage"; dir = 1},/turf/open/floor/plasteel/warning{dir = 2},/area/ai_monitored/storage/eva) +"aFj" = (/obj/machinery/suit_storage_unit/standard_unit,/turf/open/floor/plasteel/warning{dir = 6},/area/ai_monitored/storage/eva) +"aFk" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"},/turf/closed/wall/r_wall,/area/ai_monitored/storage/eva) +"aFl" = (/obj/machinery/door/airlock/command{name = "Command Tool Storage"; req_access = null; req_access_txt = "19"},/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) +"aFm" = (/obj/machinery/door/airlock/command{name = "Command Tool Storage"; req_access = null; req_access_txt = "19"},/turf/open/floor/plasteel/black,/area/ai_monitored/storage/eva) +"aFn" = (/obj/machinery/door/airlock{id_tag = "Dorm1"; name = "Dorm 1"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/crew_quarters/sleep) +"aFo" = (/obj/machinery/atmospherics/pipe/manifold4w/scrubbers/hidden,/turf/open/floor/plasteel/neutral/side{dir = 4},/area/crew_quarters/sleep) +"aFp" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall,/area/crew_quarters/toilet) +"aFq" = (/obj/structure/sink{icon_state = "sink"; dir = 8; pixel_x = -12; pixel_y = 2},/obj/structure/sink{icon_state = "sink"; dir = 8; pixel_x = -12; pixel_y = 2},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/freezer,/area/crew_quarters/toilet) +"aFr" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/floor/plasteel/freezer,/area/crew_quarters/toilet) +"aFs" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel/freezer,/area/crew_quarters/toilet) +"aFt" = (/obj/machinery/door/airlock{name = "Unisex Showers"; req_access_txt = "0"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel/freezer,/area/crew_quarters/toilet) +"aFu" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_Toxins = 0},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel/freezer,/area/crew_quarters/toilet) +"aFv" = (/obj/machinery/light/small,/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/open/floor/plasteel/freezer,/area/crew_quarters/toilet) +"aFw" = (/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/turf/open/floor/plasteel/freezer,/area/crew_quarters/toilet) +"aFx" = (/obj/structure/table/wood,/obj/structure/mirror{pixel_x = -28},/obj/item/weapon/lipstick/random{pixel_x = 2; pixel_y = 2},/obj/item/weapon/lipstick/random{pixel_x = -2; pixel_y = -2},/turf/open/floor/plasteel/white/side{dir = 4},/area/crew_quarters/theatre) +"aFy" = (/obj/structure/chair/stool,/obj/effect/landmark/start{name = "Mime"},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/white/side{dir = 4},/area/crew_quarters/theatre) +"aFz" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white/side{dir = 4},/area/crew_quarters/theatre) +"aFA" = (/obj/machinery/door/airlock/maintenance{name = "Theatre Maintenance"; req_access_txt = "46"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/crew_quarters/theatre) +"aFB" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/sortjunction{dir = 2; icon_state = "pipe-j1s"; sortType = 18},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aFC" = (/obj/machinery/meter,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aFD" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aFE" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aFF" = (/obj/effect/decal/cleanable/cobweb2,/obj/structure/reagent_dispensers/fueltank,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aFG" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aFH" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aFI" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aFJ" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aFK" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aFL" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aFM" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aFN" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aFO" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/power/apc{dir = 2; name = "Chapel APC"; pixel_x = 0; pixel_y = -24},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/open/floor/plating,/area/chapel/main) +"aFP" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/door/airlock/maintenance{name = "Chapel Maintenance"; req_access_txt = "12"},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aFQ" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/black,/area/chapel/main) +"aFR" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/turf/open/floor/plasteel/black,/area/chapel/main) +"aFS" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/black,/area/chapel/main) +"aFT" = (/obj/machinery/door/window{dir = 8; name = "Mass Driver"; req_access_txt = "22"},/obj/machinery/mass_driver{dir = 4; id = "chapelgun"; name = "Holy Driver"},/turf/open/floor/plating/warnplate{dir = 8},/area/chapel/main) +"aFU" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 0; pixel_y = 32},/obj/effect/landmark/event_spawn,/turf/open/floor/plating/warnplate{dir = 4},/area/chapel/main) +"aFV" = (/obj/machinery/door/poddoor{id = "chapelgun"; name = "Chapel Launcher Door"},/turf/open/floor/plating,/area/chapel/main) +"aFW" = (/turf/closed/wall/shuttle{icon_state = "swall11"; dir = 2},/area/shuttle/arrival) +"aFX" = (/obj/structure/table,/obj/item/weapon/storage/firstaid/regular,/turf/open/floor/plasteel/shuttle,/area/shuttle/arrival) +"aFY" = (/turf/open/floor/plasteel/shuttle,/area/shuttle/arrival) +"aFZ" = (/obj/machinery/computer/arcade,/turf/open/floor/plasteel/shuttle,/area/shuttle/arrival) +"aGa" = (/obj/structure/closet/wardrobe/green,/turf/open/floor/plasteel/shuttle,/area/shuttle/arrival) +"aGb" = (/obj/structure/closet/wardrobe/black,/turf/open/floor/plasteel/shuttle,/area/shuttle/arrival) +"aGc" = (/obj/structure/closet/wardrobe/mixed,/turf/open/floor/plasteel/shuttle,/area/shuttle/arrival) +"aGd" = (/obj/structure/closet/wardrobe/grey,/turf/open/floor/plasteel/shuttle,/area/shuttle/arrival) +"aGe" = (/obj/machinery/requests_console{department = "Arrival shuttle"; pixel_y = 30},/turf/open/floor/plasteel/shuttle,/area/shuttle/arrival) +"aGf" = (/obj/structure/shuttle/engine/heater{icon_state = "heater"; dir = 4},/obj/structure/window/reinforced{dir = 8},/turf/open/floor/plasteel/black,/area/shuttle/arrival) +"aGg" = (/obj/structure/shuttle/engine/propulsion{icon_state = "burst_r"; dir = 8},/turf/open/floor/plasteel/black,/area/shuttle/arrival) +"aGh" = (/obj/machinery/power/apc{dir = 4; name = "Entry Hall APC"; pixel_x = 24; pixel_y = 0},/obj/structure/cable,/turf/open/floor/plasteel/arrival{dir = 4},/area/hallway/secondary/entry) +"aGi" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/red/side{dir = 8},/area/security/checkpoint2) +"aGj" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 5},/turf/open/floor/plasteel,/area/security/checkpoint2) +"aGk" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/turf/open/floor/plasteel,/area/security/checkpoint2) +"aGl" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/turf/open/floor/plasteel,/area/security/checkpoint2) +"aGm" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/security/checkpoint2) +"aGn" = (/turf/open/floor/plasteel/red/side{dir = 4},/area/security/checkpoint2) +"aGo" = (/obj/structure/table/glass,/obj/item/weapon/reagent_containers/food/snacks/grown/wheat,/obj/item/weapon/reagent_containers/food/snacks/grown/watermelon,/obj/item/weapon/reagent_containers/food/snacks/grown/watermelon,/obj/item/weapon/reagent_containers/food/snacks/grown/watermelon,/obj/item/weapon/reagent_containers/food/snacks/grown/citrus/orange,/obj/item/weapon/reagent_containers/food/snacks/grown/grapes,/obj/item/weapon/reagent_containers/food/snacks/grown/cocoapod,/turf/open/floor/plasteel/green/side{dir = 4},/area/hallway/secondary/construction{name = "\improper Garden"}) +"aGp" = (/obj/machinery/door/airlock{name = "Garden"; req_access_txt = "0"},/turf/open/floor/plasteel,/area/hallway/secondary/construction{name = "\improper Garden"}) +"aGq" = (/turf/open/floor/plasteel,/area/storage/primary) +"aGr" = (/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel,/area/storage/primary) +"aGs" = (/obj/structure/closet/crate{name = "Gold Crate"},/obj/item/stack/sheet/mineral/gold{pixel_x = -1; pixel_y = 5},/obj/item/stack/sheet/mineral/gold{pixel_y = 2},/obj/item/stack/sheet/mineral/gold{pixel_x = 1; pixel_y = -2},/obj/item/weapon/storage/belt/champion,/turf/open/floor/plasteel/vault{dir = 1},/area/ai_monitored/nuke_storage) +"aGt" = (/turf/open/floor/bluegrid,/area/ai_monitored/nuke_storage) +"aGu" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/bluegrid,/area/ai_monitored/nuke_storage) +"aGv" = (/obj/item/weapon/coin/silver{pixel_x = 7; pixel_y = 12},/obj/item/weapon/coin/silver{pixel_x = 12; pixel_y = 7},/obj/item/weapon/coin/silver{pixel_x = 4; pixel_y = 8},/obj/item/weapon/coin/silver{pixel_x = -6; pixel_y = 5},/obj/item/weapon/coin/silver{pixel_x = 5; pixel_y = -8},/obj/structure/closet/crate{name = "Silver Crate"},/turf/open/floor/plasteel/vault{dir = 4},/area/ai_monitored/nuke_storage) +"aGw" = (/obj/machinery/camera{c_tag = "Gateway"; dir = 4; network = list("SS13")},/obj/structure/table,/obj/structure/sign/biohazard{pixel_x = -32},/obj/item/weapon/storage/firstaid/regular,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/gateway) +"aGx" = (/obj/structure/table,/obj/item/weapon/paper/pamphlet,/turf/open/floor/plasteel,/area/gateway) +"aGy" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/gateway) +"aGz" = (/obj/structure/table,/obj/item/device/radio/off{pixel_y = 6},/obj/item/device/radio/off{pixel_x = 6; pixel_y = 4},/obj/item/device/radio/off{pixel_x = -6; pixel_y = 4},/obj/item/device/radio/off,/turf/open/floor/plasteel,/area/gateway) +"aGA" = (/obj/structure/table,/obj/machinery/recharger,/obj/structure/sign/biohazard{pixel_x = 32},/turf/open/floor/plasteel,/area/gateway) +"aGB" = (/obj/structure/reagent_dispensers/watertank,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/fpmaint) +"aGC" = (/obj/structure/grille,/obj/structure/cable,/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/ai_monitored/storage/eva) +"aGD" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_command{name = "EVA Storage"; req_access_txt = "18"},/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) +"aGE" = (/obj/structure/grille,/obj/structure/cable,/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/ai_monitored/storage/eva) +"aGF" = (/obj/structure/sign/securearea,/turf/closed/wall/r_wall,/area/ai_monitored/storage/eva) +"aGG" = (/obj/machinery/light/small{dir = 8},/turf/open/floor/plasteel/black,/area/ai_monitored/storage/eva) +"aGH" = (/obj/machinery/camera{c_tag = "Dormitory South"; c_tag_order = 999; dir = 4},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/open/floor/plasteel/neutral/side{dir = 8},/area/crew_quarters/sleep) +"aGI" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/neutral/side{dir = 4},/area/crew_quarters/sleep) +"aGJ" = (/obj/machinery/door/airlock{name = "Unisex Restrooms"; req_access_txt = "0"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/freezer,/area/crew_quarters/toilet) +"aGK" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/open/floor/plasteel/freezer,/area/crew_quarters/toilet) +"aGL" = (/obj/machinery/power/apc{dir = 4; name = "Dormitory Bathrooms APC"; pixel_x = 26; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable,/turf/open/floor/plasteel/freezer,/area/crew_quarters/toilet) +"aGM" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/closed/wall,/area/crew_quarters/toilet) +"aGN" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/turf/closed/wall,/area/crew_quarters/toilet) +"aGO" = (/obj/machinery/light/small{dir = 8},/obj/structure/dresser,/turf/open/floor/plasteel/redblue/redside,/area/crew_quarters/theatre) +"aGP" = (/turf/open/floor/plasteel/redblue/redside,/area/crew_quarters/theatre) +"aGQ" = (/obj/machinery/disposal/bin,/obj/structure/disposalpipe/trunk{dir = 1},/turf/open/floor/plasteel/redblue/redside,/area/crew_quarters/theatre) +"aGR" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aGS" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aGT" = (/obj/effect/spawner/lootdrop/maintenance,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aGU" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aGV" = (/obj/structure/lattice,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/space,/area/space) +"aGW" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aGX" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aGY" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aGZ" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aHa" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aHb" = (/turf/closed/wall,/area/library) +"aHc" = (/turf/closed/wall,/area/chapel/office) +"aHd" = (/obj/machinery/power/apc{dir = 2; name = "Chapel Office APC"; pixel_x = 0; pixel_y = -24},/obj/structure/cable,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/chapel/office) +"aHe" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aHf" = (/turf/open/floor/plasteel/black,/area/chapel/main) +"aHg" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/black,/area/chapel/main) +"aHh" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/computer/pod/old{density = 0; icon = 'icons/obj/airlock_machines.dmi'; icon_state = "airlock_control_standby"; id = "chapelgun"; name = "Mass Driver Controller"; pixel_x = 24; pixel_y = 0},/turf/open/floor/plasteel/black,/area/chapel/main) +"aHi" = (/obj/structure/chair,/turf/open/floor/plasteel/shuttle,/area/shuttle/arrival) +"aHj" = (/turf/closed/wall/shuttle{icon_state = "swall1"; dir = 2},/area/shuttle/arrival) +"aHk" = (/obj/structure/chair{dir = 8},/obj/effect/landmark{name = "JoinLate"},/turf/open/floor/plasteel/shuttle,/area/shuttle/arrival) +"aHl" = (/obj/structure/shuttle/engine/propulsion{icon_state = "propulsion"; dir = 8},/turf/open/floor/plasteel/black,/area/shuttle/arrival) +"aHm" = (/turf/open/floor/plasteel/arrival{dir = 4},/area/hallway/secondary/entry) +"aHn" = (/obj/machinery/camera{c_tag = "Security Checkpoint"; dir = 1},/obj/machinery/airalarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/obj/machinery/light_switch{pixel_x = 6; pixel_y = -25},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/turf/open/floor/plasteel/red/side{dir = 10},/area/security/checkpoint2) +"aHo" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/open/floor/plasteel/red/side,/area/security/checkpoint2) +"aHp" = (/obj/item/weapon/paper_bin{pixel_x = 1; pixel_y = 9},/obj/item/weapon/pen,/obj/structure/table,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/turf/open/floor/plasteel/red/side,/area/security/checkpoint2) +"aHq" = (/obj/structure/chair/office/dark,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel/red/side,/area/security/checkpoint2) +"aHr" = (/obj/machinery/recharger{pixel_y = 4},/obj/structure/table,/turf/open/floor/plasteel/red/side,/area/security/checkpoint2) +"aHs" = (/obj/item/device/radio/off,/obj/item/weapon/crowbar,/obj/item/device/assembly/flash/handheld,/obj/structure/table,/turf/open/floor/plasteel/red/side{dir = 6},/area/security/checkpoint2) +"aHt" = (/obj/structure/table/glass,/obj/item/weapon/cultivator,/obj/item/weapon/hatchet,/obj/item/weapon/crowbar,/obj/item/device/plant_analyzer,/obj/item/weapon/reagent_containers/glass/bucket,/turf/open/floor/plasteel/green/side{dir = 4},/area/hallway/secondary/construction{name = "\improper Garden"}) +"aHu" = (/obj/machinery/camera{c_tag = "Garden"; dir = 8; network = list("SS13")},/obj/machinery/airalarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/turf/open/floor/plasteel,/area/hallway/secondary/construction{name = "\improper Garden"}) +"aHv" = (/obj/structure/table,/obj/item/stack/cable_coil{pixel_x = 2; pixel_y = -2},/obj/item/stack/cable_coil{pixel_x = 3; pixel_y = -7},/obj/item/weapon/screwdriver{pixel_y = 16},/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/open/floor/plasteel,/area/storage/primary) +"aHw" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/open/floor/plasteel,/area/storage/primary) +"aHx" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/plasteel,/area/storage/primary) +"aHy" = (/obj/effect/landmark/start{name = "Assistant"},/turf/open/floor/plasteel,/area/storage/primary) +"aHz" = (/obj/effect/landmark/start{name = "Assistant"},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/storage/primary) +"aHA" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/storage/primary) +"aHB" = (/obj/structure/table,/obj/item/weapon/storage/toolbox/mechanical{pixel_x = -2; pixel_y = -1},/obj/machinery/light{dir = 4},/turf/open/floor/plasteel,/area/storage/primary) +"aHC" = (/turf/open/floor/plasteel/vault{dir = 1},/area/ai_monitored/nuke_storage) +"aHD" = (/obj/machinery/light,/turf/open/floor/plasteel/vault{dir = 6},/area/ai_monitored/nuke_storage) +"aHE" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/floor/plasteel/vault,/area/ai_monitored/nuke_storage) +"aHF" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/camera/motion{c_tag = "Vault"; dir = 1; network = list("MiniSat")},/obj/machinery/light,/turf/open/floor/plasteel/vault{dir = 10},/area/ai_monitored/nuke_storage) +"aHG" = (/obj/structure/safe,/obj/item/clothing/head/bearpelt,/obj/item/weapon/reagent_containers/food/drinks/drinkingglass/shotglass,/obj/item/weapon/reagent_containers/food/drinks/drinkingglass/shotglass,/obj/item/weapon/gun/projectile/revolver/russian,/obj/item/ammo_box/a357,/obj/item/weapon/reagent_containers/food/drinks/bottle/vodka/badminka,/turf/open/floor/plasteel/vault{dir = 4},/area/ai_monitored/nuke_storage) +"aHH" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/meter,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/fpmaint) +"aHI" = (/obj/item/device/radio/intercom{freerange = 0; frequency = 1459; name = "Station Intercom (General)"; pixel_x = -30},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/gateway) +"aHJ" = (/obj/structure/chair/stool,/turf/open/floor/plasteel,/area/gateway) +"aHK" = (/turf/open/floor/plasteel,/area/gateway) +"aHL" = (/obj/machinery/firealarm{dir = 4; pixel_x = 24},/turf/open/floor/plasteel,/area/gateway) +"aHM" = (/obj/structure/reagent_dispensers/fueltank,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/fpmaint) +"aHN" = (/obj/structure/table,/obj/item/stack/sheet/rglass{amount = 50},/obj/item/stack/sheet/rglass{amount = 50},/obj/item/stack/rods{amount = 50},/obj/item/stack/rods{amount = 50},/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/open/floor/plasteel/warning{dir = 8},/area/ai_monitored/storage/eva) +"aHO" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/black,/area/ai_monitored/storage/eva) +"aHP" = (/turf/open/floor/plasteel/black,/area/ai_monitored/storage/eva) +"aHQ" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/black,/area/ai_monitored/storage/eva) +"aHR" = (/obj/item/stack/sheet/plasteel{amount = 10},/obj/structure/table,/turf/open/floor/plasteel/warning{dir = 4},/area/ai_monitored/storage/eva) +"aHS" = (/obj/machinery/light{dir = 8},/obj/structure/table,/obj/item/stack/sheet/plasteel{amount = 10},/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) +"aHT" = (/obj/structure/table,/obj/item/stack/sheet/metal{amount = 50},/obj/item/stack/sheet/rglass{amount = 50},/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) +"aHU" = (/obj/machinery/door/firedoor,/turf/open/floor/plasteel/blue/corner{dir = 8},/area/hallway/primary/fore) +"aHV" = (/obj/machinery/door/firedoor,/turf/open/floor/plasteel/blue/corner,/area/hallway/primary/fore) +"aHW" = (/obj/structure/sink{icon_state = "sink"; dir = 8; pixel_x = -12; pixel_y = 2},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/freezer,/area/crew_quarters/toilet) +"aHX" = (/obj/machinery/light_switch{pixel_x = 27},/turf/open/floor/plasteel/freezer,/area/crew_quarters/toilet) +"aHY" = (/obj/structure/toilet{pixel_y = 8},/obj/machinery/light/small{dir = 8},/turf/open/floor/plasteel/freezer,/area/crew_quarters/toilet) +"aHZ" = (/obj/structure/toilet{pixel_y = 8},/obj/machinery/light/small{dir = 8},/obj/effect/landmark{name = "blobstart"},/turf/open/floor/plasteel/freezer,/area/crew_quarters/toilet) +"aIa" = (/obj/machinery/light/small{dir = 8},/obj/machinery/recharge_station,/turf/open/floor/plasteel/freezer,/area/crew_quarters/toilet) +"aIb" = (/obj/structure/table/wood,/obj/structure/mirror{pixel_x = -28},/obj/item/device/flashlight/lamp/bananalamp{pixel_y = 3},/turf/open/floor/plasteel/redblue,/area/crew_quarters/theatre) +"aIc" = (/obj/structure/chair/stool,/obj/effect/landmark/start{name = "Clown"},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/plasteel/redblue,/area/crew_quarters/theatre) +"aId" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/closet/secure_closet/freezer/cream_pie,/turf/open/floor/plasteel/redblue,/area/crew_quarters/theatre) +"aIe" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/closed/wall,/area/crew_quarters/theatre) +"aIf" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aIg" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aIh" = (/obj/structure/disposalpipe/junction{icon_state = "pipe-j1"; dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aIi" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aIj" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aIk" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aIl" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/disposalpipe/sortjunction{dir = 4; icon_state = "pipe-j1s"; sortType = 19},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aIm" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aIn" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aIo" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/sortjunction{dir = 4; icon_state = "pipe-j1s"; sortType = 20},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aIp" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aIq" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aIr" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aIs" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aIt" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aIu" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aIv" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aIw" = (/obj/structure/grille,/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aIx" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/lattice,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/space,/area/space) +"aIy" = (/obj/structure/disposalpipe/sortjunction{dir = 4; icon_state = "pipe-j2s"; sortType = 17},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aIz" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aIA" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/closed/wall,/area/library) +"aIB" = (/obj/machinery/door/airlock/maintenance{name = "Library Maintenance"; req_access_txt = "12"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/library) +"aIC" = (/obj/structure/table/wood,/obj/item/weapon/storage/pill_bottle/dice,/turf/open/floor/wood,/area/library) +"aID" = (/obj/structure/table/wood,/obj/item/weapon/paper_bin{pixel_x = 1; pixel_y = 9},/obj/item/stack/packageWrap,/turf/open/floor/wood,/area/library) +"aIE" = (/obj/machinery/disposal/bin,/obj/structure/disposalpipe/trunk,/turf/open/floor/wood,/area/library) +"aIF" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall,/area/chapel/office) +"aIG" = (/obj/machinery/door/airlock/maintenance{name = "Crematorium Maintenance"; req_access_txt = "27"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/chapel/office) +"aIH" = (/obj/structure/closet/wardrobe/chaplain_black,/obj/item/device/radio/intercom{pixel_y = 25},/turf/open/floor/plasteel/grimy,/area/chapel/office) +"aII" = (/obj/machinery/light/small{dir = 1},/obj/machinery/requests_console{department = "Chapel"; departmentType = 2; pixel_y = 30},/turf/open/floor/plasteel/grimy,/area/chapel/office) +"aIJ" = (/obj/machinery/light_switch{pixel_y = 28},/obj/machinery/camera{c_tag = "Chapel Office"; dir = 2; network = list("SS13")},/turf/open/floor/plasteel/grimy,/area/chapel/office) +"aIK" = (/obj/machinery/airalarm{pixel_y = 25},/turf/open/floor/plasteel/grimy,/area/chapel/office) +"aIL" = (/obj/structure/closet/coffin,/obj/structure/window/reinforced{dir = 8},/turf/open/floor/plasteel/black,/area/chapel/office) +"aIM" = (/obj/structure/closet/coffin,/obj/machinery/door/window/eastleft{name = "Coffin Storage"; req_access_txt = "22"},/turf/open/floor/plasteel/black,/area/chapel/office) +"aIN" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/plasteel/black,/area/chapel/main) +"aIO" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/black,/area/chapel/main) +"aIP" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/turf/open/floor/plasteel/black,/area/chapel/main) +"aIQ" = (/turf/open/floor/plasteel/chapel{dir = 1},/area/chapel/main) +"aIR" = (/obj/structure/table/glass,/obj/item/weapon/reagent_containers/food/snacks/grown/poppy,/obj/item/weapon/reagent_containers/food/snacks/grown/harebell,/turf/open/floor/plasteel/chapel{dir = 4},/area/chapel/main) +"aIS" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/chapel/main) +"aIT" = (/turf/closed/wall/shuttle{icon_state = "swall_s6"; dir = 2},/area/shuttle/escape) +"aIU" = (/obj/structure/grille,/obj/structure/window/shuttle,/turf/open/floor/plating,/area/shuttle/escape) +"aIV" = (/turf/closed/wall/shuttle{icon_state = "swall_s10"; dir = 2},/area/shuttle/escape) +"aIW" = (/obj/effect/landmark{name = "Marauder Entry"},/turf/open/space,/area/space) +"aIX" = (/obj/machinery/door/airlock/shuttle{name = "Arrivals Shuttle Airlock"},/turf/open/floor/plasteel/shuttle,/area/shuttle/arrival) +"aIY" = (/obj/effect/landmark{name = "Observer-Start"},/turf/open/floor/plasteel/shuttle,/area/shuttle/arrival) +"aIZ" = (/obj/machinery/status_display{density = 0; layer = 3; pixel_x = 32; pixel_y = 0},/turf/open/floor/plasteel/white/corner{dir = 4},/area/hallway/secondary/entry) +"aJa" = (/obj/machinery/door/airlock/security{name = "Security Checkpoint"; req_access = null; req_access_txt = "1"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/security/checkpoint2) +"aJb" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/security/checkpoint2) +"aJc" = (/obj/machinery/door/firedoor,/obj/structure/table/reinforced,/obj/item/weapon/paper,/obj/machinery/door/window/westright{dir = 1; name = "Security Checkpoint"; req_access_txt = "1"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/delivery,/area/hallway/secondary/entry) +"aJd" = (/obj/structure/reagent_dispensers/watertank,/turf/open/floor/plasteel/green/side{dir = 5},/area/hallway/secondary/construction{name = "\improper Garden"}) +"aJe" = (/obj/effect/landmark/start{name = "Assistant"},/turf/open/floor/plasteel,/area/hallway/secondary/construction{name = "\improper Garden"}) +"aJf" = (/obj/item/weapon/reagent_containers/spray/plantbgone,/obj/item/weapon/reagent_containers/spray/pestspray{pixel_x = 3; pixel_y = 4},/obj/item/weapon/reagent_containers/glass/bottle/nutrient/ez,/obj/item/weapon/reagent_containers/glass/bottle/nutrient/rh{pixel_x = 2; pixel_y = 1},/obj/structure/table/glass,/obj/machinery/light{dir = 4},/turf/open/floor/plasteel/green/side{dir = 9},/area/hallway/secondary/construction{name = "\improper Garden"}) +"aJg" = (/obj/structure/table,/obj/item/weapon/storage/toolbox/electrical{pixel_x = 1; pixel_y = -1},/turf/open/floor/plasteel,/area/storage/primary) +"aJh" = (/obj/structure/chair/stool{pixel_y = 8},/obj/effect/landmark/start{name = "Assistant"},/turf/open/floor/plasteel,/area/storage/primary) +"aJi" = (/obj/structure/table,/obj/item/weapon/weldingtool,/obj/item/weapon/crowbar,/obj/item/stack/packageWrap,/obj/item/stack/packageWrap,/obj/item/stack/packageWrap,/obj/item/stack/packageWrap,/turf/open/floor/plasteel,/area/storage/primary) +"aJj" = (/obj/structure/sign/securearea,/turf/closed/wall/r_wall,/area/ai_monitored/nuke_storage) +"aJk" = (/obj/machinery/door/airlock/vault{icon_state = "door_locked"; locked = 1; req_access_txt = "53"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/vault{dir = 5},/area/ai_monitored/nuke_storage) +"aJl" = (/obj/machinery/light_switch{pixel_x = -20; pixel_y = 0},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/open/floor/plasteel,/area/gateway) +"aJm" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/plasteel,/area/gateway) +"aJn" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 8},/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel,/area/gateway) +"aJo" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/gateway) +"aJp" = (/obj/machinery/airalarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/structure/closet/l3closet/scientist,/turf/open/floor/plasteel/warning{dir = 9},/area/gateway) +"aJq" = (/obj/structure/grille,/obj/structure/window/fulltile{health = 25},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/fpmaint) +"aJr" = (/obj/structure/table,/obj/item/stack/sheet/metal{amount = 50},/obj/item/stack/sheet/metal{amount = 50},/obj/item/weapon/crowbar,/turf/open/floor/plasteel/warning{dir = 8},/area/ai_monitored/storage/eva) +"aJs" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/black,/area/ai_monitored/storage/eva) +"aJt" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; on = 1},/turf/open/floor/plasteel/black,/area/ai_monitored/storage/eva) +"aJu" = (/obj/structure/reagent_dispensers/fueltank,/turf/open/floor/plasteel/warning{dir = 4},/area/ai_monitored/storage/eva) +"aJv" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass{name = "Central Access"},/turf/open/floor/plasteel/blue/corner{dir = 8},/area/hallway/primary/central) +"aJw" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass{name = "Central Access"},/turf/open/floor/plasteel,/area/hallway/primary/central) +"aJx" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass{name = "Central Access"},/turf/open/floor/plasteel/blue/side{dir = 4},/area/hallway/primary/central) +"aJy" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass{name = "Dormitory"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/neutral/side{dir = 8},/area/crew_quarters/sleep) +"aJz" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass{name = "Dormitory"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/neutral/side{dir = 4},/area/crew_quarters/sleep) +"aJA" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; on = 1},/obj/structure/sink{icon_state = "sink"; dir = 8; pixel_x = -12; pixel_y = 2},/obj/structure/mirror{pixel_x = -28},/obj/effect/landmark/start{name = "Assistant"},/turf/open/floor/plasteel/freezer,/area/crew_quarters/toilet) +"aJB" = (/turf/open/floor/plasteel/freezer,/area/crew_quarters/toilet) +"aJC" = (/obj/machinery/door/airlock{name = "Unit 1"},/turf/open/floor/plasteel/freezer,/area/crew_quarters/toilet) +"aJD" = (/obj/machinery/door/airlock{name = "Unit 2"},/turf/open/floor/plasteel/freezer,/area/crew_quarters/toilet) +"aJE" = (/obj/machinery/door/airlock{name = "Unit B"},/turf/open/floor/plasteel/freezer,/area/crew_quarters/toilet) +"aJF" = (/obj/structure/table/wood,/obj/machinery/airalarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/obj/item/weapon/storage/crayons{pixel_x = 3; pixel_y = 3},/obj/item/weapon/reagent_containers/food/snacks/pie/cream{pixel_x = -3; pixel_y = -3},/turf/open/floor/plasteel/redblue,/area/crew_quarters/theatre) +"aJG" = (/turf/open/floor/plasteel/redblue,/area/crew_quarters/theatre) +"aJH" = (/obj/structure/closet/secure_closet/freezer/cream_pie,/turf/open/floor/plasteel/redblue,/area/crew_quarters/theatre) +"aJI" = (/obj/machinery/power/apc{dir = 8; name = "Theatre APC"; pixel_x = -25},/obj/structure/cable,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 5},/turf/open/floor/plating,/area/crew_quarters/theatre) +"aJJ" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aJK" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aJL" = (/obj/machinery/power/apc{dir = 2; name = "Bar APC"; pixel_y = -24},/obj/structure/cable,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/crew_quarters/bar) +"aJM" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall,/area/crew_quarters/bar) +"aJN" = (/obj/structure/disposalpipe/segment,/obj/machinery/door/airlock/maintenance{name = "Bar Storage Maintenance"; req_access_txt = "25"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/crew_quarters/bar) +"aJO" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/turf/closed/wall,/area/crew_quarters/bar) +"aJP" = (/obj/machinery/navbeacon{codes_txt = "delivery;dir=2"; freq = 1400; location = "Bar"},/obj/structure/plasticflaps{opacity = 1},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/bot{dir = 2},/area/crew_quarters/bar) +"aJQ" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall,/area/crew_quarters/kitchen) +"aJR" = (/obj/machinery/power/apc{dir = 2; name = "Kitchen APC"; pixel_y = -24},/obj/structure/cable,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/crew_quarters/kitchen) +"aJS" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aJT" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aJU" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aJV" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aJW" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/sortjunction{dir = 4; icon_state = "pipe-j1s"; sortType = 21},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aJX" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aJY" = (/obj/machinery/power/apc{dir = 2; name = "Hydroponics APC"; pixel_y = -24},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/turf/open/floor/plating,/area/hydroponics) +"aJZ" = (/turf/closed/wall,/area/hydroponics) +"aKa" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/closed/wall,/area/hydroponics) +"aKb" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aKc" = (/obj/structure/filingcabinet,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/wood,/area/library) +"aKd" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 5},/turf/open/floor/wood,/area/library) +"aKe" = (/obj/structure/chair/office/dark,/obj/machinery/camera{c_tag = "Library North"; dir = 2; network = list("SS13")},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/wood,/area/library) +"aKf" = (/obj/structure/chair/office/dark,/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/effect/landmark/start{name = "Assistant"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/wood,/area/library) +"aKg" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/wood,/area/library) +"aKh" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/turf/open/floor/wood,/area/library) +"aKi" = (/obj/structure/bodycontainer/crematorium,/obj/effect/landmark{name = "revenantspawn"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/black,/area/chapel/office) +"aKj" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/black,/area/chapel/office) +"aKk" = (/obj/machinery/disposal/bin,/obj/structure/disposalpipe/trunk,/turf/open/floor/plasteel/grimy,/area/chapel/office) +"aKl" = (/obj/effect/landmark/start{name = "Chaplain"},/obj/structure/chair,/turf/open/floor/plasteel/grimy,/area/chapel/office) +"aKm" = (/obj/structure/table/wood,/obj/item/weapon/paper_bin{pixel_x = -2; pixel_y = 5},/obj/item/weapon/storage/crayons,/turf/open/floor/plasteel/grimy,/area/chapel/office) +"aKn" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/grimy,/area/chapel/office) +"aKo" = (/obj/structure/closet/coffin,/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plasteel/black,/area/chapel/office) +"aKp" = (/turf/open/floor/plasteel/chapel{dir = 8},/area/chapel/main) +"aKq" = (/obj/structure/table/glass,/turf/open/floor/plasteel/chapel,/area/chapel/main) +"aKr" = (/turf/open/floor/plasteel/shuttle/white,/turf/closed/wall/shuttle/interior{icon_state = "swall_f9"},/area/shuttle/escape) +"aKs" = (/obj/structure/table,/obj/item/weapon/storage/firstaid/fire,/turf/open/floor/plasteel/shuttle/white,/area/shuttle/escape) +"aKt" = (/obj/structure/chair{dir = 1},/turf/open/floor/plasteel/shuttle,/area/shuttle/escape) +"aKu" = (/obj/machinery/computer/emergency_shuttle,/turf/open/floor/plasteel/shuttle,/area/shuttle/escape) +"aKv" = (/obj/structure/table,/obj/item/weapon/storage/firstaid/regular{pixel_x = 2; pixel_y = 3},/obj/item/weapon/crowbar,/turf/open/floor/plasteel/shuttle/white,/area/shuttle/escape) +"aKw" = (/turf/open/floor/plasteel/shuttle/white,/turf/closed/wall/shuttle/interior{icon_state = "swall_f5"},/area/shuttle/escape) +"aKx" = (/obj/structure/chair{dir = 1},/turf/open/floor/plasteel/shuttle,/area/shuttle/arrival) +"aKy" = (/turf/closed/wall/shuttle{icon_state = "swall2"; dir = 2},/area/shuttle/arrival) +"aKz" = (/obj/machinery/door/firedoor,/turf/open/floor/plasteel,/area/hallway/secondary/entry) +"aKA" = (/turf/open/floor/plasteel/bot,/area/hallway/secondary/entry) +"aKB" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/bot,/area/hallway/secondary/entry) +"aKC" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/bot,/area/hallway/secondary/entry) +"aKD" = (/obj/machinery/camera{c_tag = "Arrivals Lounge"; dir = 2},/obj/machinery/light{dir = 1},/turf/open/floor/plasteel,/area/hallway/secondary/entry) +"aKE" = (/obj/structure/extinguisher_cabinet{pixel_x = -5; pixel_y = 30},/turf/open/floor/plasteel,/area/hallway/secondary/entry) +"aKF" = (/obj/structure/sign/map/left{pixel_y = 32},/turf/open/floor/plasteel,/area/hallway/secondary/entry) +"aKG" = (/obj/structure/sign/map/right{pixel_y = 32},/turf/open/floor/plasteel,/area/hallway/secondary/entry) +"aKH" = (/obj/structure/table/glass,/obj/item/weapon/hatchet,/obj/item/weapon/cultivator,/obj/item/weapon/crowbar,/obj/item/weapon/reagent_containers/glass/bucket,/obj/item/device/plant_analyzer,/obj/machinery/firealarm{dir = 8; pixel_x = -24},/turf/open/floor/plasteel/green/side{dir = 4},/area/hallway/secondary/construction{name = "\improper Garden"}) +"aKI" = (/obj/item/weapon/storage/bag/plants/portaseeder,/obj/structure/table/glass,/obj/item/device/plant_analyzer,/obj/item/device/radio/intercom{freerange = 0; frequency = 1459; name = "Station Intercom (General)"; pixel_x = 29},/obj/machinery/light_switch{pixel_x = -6; pixel_y = -25},/turf/open/floor/plasteel/green/side{dir = 8},/area/hallway/secondary/construction{name = "\improper Garden"}) +"aKJ" = (/obj/structure/table,/obj/item/weapon/wrench,/obj/item/device/analyzer,/turf/open/floor/plasteel,/area/storage/primary) +"aKK" = (/obj/structure/reagent_dispensers/watertank,/turf/open/floor/plasteel,/area/storage/primary) +"aKL" = (/obj/structure/table,/obj/item/weapon/crowbar,/obj/item/device/assembly/prox_sensor{pixel_x = -8; pixel_y = 4},/obj/item/clothing/gloves/color/fyellow,/turf/open/floor/plasteel,/area/storage/primary) +"aKM" = (/obj/structure/table,/obj/item/weapon/storage/belt/utility,/obj/item/weapon/storage/firstaid/regular,/turf/open/floor/plasteel,/area/storage/primary) +"aKN" = (/obj/structure/reagent_dispensers/fueltank,/turf/open/floor/plasteel,/area/storage/primary) +"aKO" = (/turf/open/floor/plasteel/delivery,/area/storage/primary) +"aKP" = (/obj/machinery/navbeacon{codes_txt = "delivery;dir=8"; freq = 1400; location = "Tool Storage"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/bot,/area/storage/primary) +"aKQ" = (/obj/structure/disposalpipe/trunk,/obj/machinery/disposal/bin,/turf/open/floor/plasteel,/area/storage/primary) +"aKR" = (/obj/structure/grille,/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/hallway/primary/port) +"aKS" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/vault{dir = 5},/area/hallway/primary/port) +"aKT" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/gateway) +"aKU" = (/obj/machinery/button/door{id = "stationawaygate"; name = "Gateway Access Shutter Control"; pixel_x = -1; pixel_y = -24; req_access_txt = "31"},/turf/open/floor/plasteel,/area/gateway) +"aKV" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/gateway) +"aKW" = (/obj/machinery/light{dir = 4},/obj/structure/closet/secure_closet/exile,/turf/open/floor/plasteel/warning{dir = 10},/area/gateway) +"aKX" = (/obj/structure/table,/obj/item/stack/sheet/glass{amount = 50},/obj/item/stack/sheet/glass{amount = 50},/obj/item/weapon/storage/toolbox/mechanical{pixel_x = -2; pixel_y = -1},/obj/item/weapon/storage/toolbox/mechanical{pixel_x = -2; pixel_y = -1},/obj/item/weapon/storage/toolbox/mechanical{pixel_x = -2; pixel_y = -1},/obj/item/weapon/extinguisher,/obj/item/weapon/extinguisher,/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/open/floor/plasteel/warning{dir = 8},/area/ai_monitored/storage/eva) +"aKY" = (/obj/machinery/camera{c_tag = "EVA South"; dir = 1},/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) +"aKZ" = (/obj/structure/tank_dispenser/oxygen,/obj/machinery/light{icon_state = "tube1"; dir = 4},/turf/open/floor/plasteel/warning{dir = 4},/area/ai_monitored/storage/eva) +"aLa" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/hallway/primary/central) +"aLb" = (/turf/open/floor/plasteel/blue/side{dir = 9},/area/hallway/primary/central) +"aLc" = (/obj/machinery/light{dir = 1},/obj/machinery/camera{c_tag = "Central Hallway North"; dir = 2},/turf/open/floor/plasteel/blue/side{dir = 1},/area/hallway/primary/central) +"aLd" = (/turf/open/floor/plasteel/blue/corner{dir = 1},/area/hallway/primary/central) +"aLe" = (/turf/open/floor/plasteel,/area/hallway/primary/central) +"aLf" = (/obj/structure/sign/directions/security{dir = 1; icon_state = "direction_sec"; pixel_x = 32; pixel_y = 40},/obj/structure/sign/directions/medical{dir = 4; icon_state = "direction_med"; pixel_x = 32; pixel_y = 32},/obj/structure/sign/directions/evac{dir = 4; icon_state = "direction_evac"; pixel_x = 32; pixel_y = 24},/turf/open/floor/plasteel/blue/corner{dir = 4},/area/hallway/primary/central) +"aLg" = (/turf/open/floor/plasteel/blue/side{dir = 1},/area/hallway/primary/central) +"aLh" = (/turf/open/floor/plasteel/blue/side{dir = 5},/area/hallway/primary/central) +"aLi" = (/turf/closed/wall,/area/hallway/primary/central) +"aLj" = (/obj/machinery/vending/cola,/turf/open/floor/plasteel/black,/area/hallway/primary/central) +"aLk" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/neutral/side{dir = 8},/area/hallway/primary/central) +"aLl" = (/obj/structure/extinguisher_cabinet{pixel_x = 27; pixel_y = 0},/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/neutral/side{dir = 4},/area/hallway/primary/central) +"aLm" = (/obj/machinery/camera{c_tag = "Dormitory Toilets"; dir = 1},/turf/open/floor/plasteel/freezer,/area/crew_quarters/toilet) +"aLn" = (/obj/machinery/light/small,/turf/open/floor/plasteel/freezer,/area/crew_quarters/toilet) +"aLo" = (/obj/machinery/door/airlock{name = "Theatre Backstage"; req_access_txt = "46"},/turf/open/floor/plasteel,/area/crew_quarters/theatre) +"aLp" = (/obj/machinery/door/airlock/maintenance{name = "Bar Maintenance"; req_access_txt = "12"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aLq" = (/turf/closed/wall,/area/crew_quarters/bar) +"aLr" = (/obj/item/weapon/reagent_containers/food/drinks/shaker,/obj/item/weapon/gun/projectile/revolver/doublebarrel,/obj/structure/table/wood,/obj/item/stack/spacecash/c10,/obj/item/stack/spacecash/c100,/turf/open/floor/wood,/area/crew_quarters/bar) +"aLs" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/wood,/area/crew_quarters/bar) +"aLt" = (/obj/structure/sink/kitchen{pixel_y = 28},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/wood,/area/crew_quarters/bar) +"aLu" = (/obj/machinery/door/window/southleft{base_state = "left"; dir = 2; icon_state = "left"; name = "Bar Delivery"; req_access_txt = "25"},/turf/open/floor/plasteel/delivery,/area/crew_quarters/bar) +"aLv" = (/turf/closed/wall,/area/crew_quarters/kitchen) +"aLw" = (/obj/machinery/door/airlock/maintenance{name = "Kitchen Maintenance"; req_access_txt = "28"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/crew_quarters/kitchen) +"aLx" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall,/area/crew_quarters/kitchen) +"aLy" = (/obj/machinery/navbeacon{codes_txt = "delivery;dir=2"; freq = 1400; location = "Kitchen"},/obj/structure/plasticflaps{opacity = 1},/turf/open/floor/plasteel/bot{dir = 2},/area/crew_quarters/kitchen) +"aLz" = (/obj/machinery/navbeacon{codes_txt = "delivery;dir=2"; freq = 1400; location = "Hydroponics"},/obj/structure/plasticflaps{opacity = 1},/turf/open/floor/plasteel/bot{dir = 2},/area/hydroponics) +"aLA" = (/obj/structure/disposalpipe/segment,/obj/machinery/door/airlock/maintenance{name = "Hydroponics Maintenance"; req_access_txt = "35"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/hydroponics) +"aLB" = (/obj/structure/table,/obj/machinery/reagentgrinder,/turf/open/floor/plasteel/hydrofloor,/area/hydroponics) +"aLC" = (/obj/structure/table,/obj/item/weapon/book/manual/hydroponics_pod_people,/obj/item/weapon/paper/hydroponics,/turf/open/floor/plasteel/hydrofloor,/area/hydroponics) +"aLD" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; external_pressure_bound = 101.325; on = 1; pressure_checks = 1},/turf/open/floor/wood,/area/library) +"aLE" = (/obj/structure/chair/office/dark{dir = 4},/turf/open/floor/wood,/area/library) +"aLF" = (/obj/structure/table/wood,/obj/item/weapon/folder/yellow,/obj/item/weapon/pen,/turf/open/floor/wood,/area/library) +"aLG" = (/obj/structure/table/wood,/obj/structure/disposalpipe/segment,/turf/open/floor/wood,/area/library) +"aLH" = (/obj/structure/chair/office/dark{dir = 8},/turf/open/floor/wood,/area/library) +"aLI" = (/obj/machinery/newscaster{pixel_x = 30},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/wood,/area/library) +"aLJ" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 8},/turf/open/floor/plasteel/black,/area/chapel/office) +"aLK" = (/obj/structure/disposalpipe/segment,/obj/machinery/button/crematorium{pixel_x = 25},/obj/machinery/light/small{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/black,/area/chapel/office) +"aLL" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall,/area/chapel/office) +"aLM" = (/obj/structure/table/wood,/obj/item/device/flashlight/lamp{pixel_y = 10},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/grimy,/area/chapel/office) +"aLN" = (/obj/structure/table/wood,/obj/item/weapon/pen,/obj/item/weapon/reagent_containers/food/drinks/bottle/holywater,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/grimy,/area/chapel/office) +"aLO" = (/obj/structure/table/wood,/obj/item/weapon/nullrod,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/grimy,/area/chapel/office) +"aLP" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/turf/open/floor/plasteel/grimy,/area/chapel/office) +"aLQ" = (/obj/structure/closet/coffin,/obj/machinery/door/window/eastleft{dir = 8; name = "Coffin Storage"; req_access_txt = "22"},/turf/open/floor/plasteel/black,/area/chapel/office) +"aLR" = (/obj/structure/table/glass,/turf/open/floor/plasteel/chapel{dir = 4},/area/chapel/main) +"aLS" = (/turf/closed/wall/shuttle{icon_state = "swall3"; dir = 2},/area/shuttle/escape) +"aLT" = (/obj/machinery/computer/atmos_alert,/turf/open/floor/plasteel/shuttle/white,/area/shuttle/escape) +"aLU" = (/obj/structure/chair{dir = 8},/turf/open/floor/plasteel/shuttle,/area/shuttle/escape) +"aLV" = (/turf/open/floor/plasteel/shuttle,/area/shuttle/escape) +"aLW" = (/obj/structure/chair{dir = 4},/turf/open/floor/plasteel/shuttle,/area/shuttle/escape) +"aLX" = (/obj/machinery/computer/security,/turf/open/floor/plasteel/shuttle/white,/area/shuttle/escape) +"aLY" = (/turf/open/space,/turf/closed/wall/shuttle{icon_state = "swall_f5"; dir = 2},/area/shuttle/arrival) +"aLZ" = (/obj/structure/closet/emcloset,/turf/open/floor/plasteel/shuttle,/area/shuttle/arrival) +"aMa" = (/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -29},/turf/open/floor/plasteel/shuttle,/area/shuttle/arrival) +"aMb" = (/obj/structure/shuttle/engine/propulsion{icon_state = "burst_l"; dir = 8},/turf/open/floor/plasteel/black,/area/shuttle/arrival) +"aMc" = (/obj/machinery/door/firedoor,/turf/open/floor/plasteel/neutral/corner{dir = 2},/area/hallway/secondary/entry) +"aMd" = (/turf/open/floor/plasteel/neutral/side,/area/hallway/secondary/entry) +"aMe" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/neutral/side,/area/hallway/secondary/entry) +"aMf" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/neutral/side,/area/hallway/secondary/entry) +"aMg" = (/turf/open/floor/plasteel/neutral/corner{dir = 8},/area/hallway/secondary/entry) +"aMh" = (/obj/structure/grille,/obj/structure/window/fulltile,/turf/open/floor/plating,/area/hallway/secondary/construction{name = "\improper Garden"}) +"aMi" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass{name = "Garden"},/turf/open/floor/plasteel,/area/hallway/secondary/construction{name = "\improper Garden"}) +"aMj" = (/obj/structure/grille,/obj/structure/window/fulltile,/turf/open/floor/plating,/area/storage/primary) +"aMk" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass{name = "Primary Tool Storage"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/storage/primary) +"aMl" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass{name = "Primary Tool Storage"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/storage/primary) +"aMm" = (/obj/structure/grille,/obj/structure/disposalpipe/segment,/obj/structure/window/fulltile,/turf/open/floor/plating,/area/storage/primary) +"aMn" = (/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/hallway/primary/port) +"aMo" = (/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/hallway/primary/port) +"aMp" = (/obj/structure/grille,/obj/structure/cable,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/hallway/primary/port) +"aMq" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/door/firedoor,/turf/open/floor/plasteel/vault{dir = 5},/area/hallway/primary/port) +"aMr" = (/obj/structure/grille,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/window/reinforced/fulltile,/obj/structure/cable,/turf/open/floor/plating,/area/hallway/primary/port) +"aMs" = (/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/hallway/primary/port) +"aMt" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/fpmaint) +"aMu" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/command{icon_state = "door_closed"; lockdownbyai = 0; locked = 0; name = "Gateway Access"; req_access_txt = "62"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/gateway) +"aMv" = (/obj/machinery/door/firedoor,/obj/machinery/door/poddoor/shutters{id = "stationawaygate"; name = "Gateway Access Shutters"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/gateway) +"aMw" = (/obj/machinery/door/firedoor,/obj/machinery/door/poddoor/shutters{id = "stationawaygate"; name = "Gateway Access Shutters"},/turf/open/floor/plasteel,/area/gateway) +"aMx" = (/obj/structure/sign/securearea,/turf/closed/wall/r_wall,/area/gateway) +"aMy" = (/turf/open/floor/plasteel/blue/side{dir = 8},/area/hallway/primary/central) +"aMz" = (/turf/open/floor/plasteel/blue/side{dir = 4},/area/hallway/primary/central) +"aMA" = (/obj/machinery/vending/snack,/turf/open/floor/plasteel/black,/area/hallway/primary/central) +"aMB" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/neutral/side{dir = 4},/area/hallway/primary/central) +"aMC" = (/obj/machinery/light_switch{pixel_y = 28},/obj/machinery/light{dir = 1},/turf/open/floor/wood,/area/crew_quarters/theatre) +"aMD" = (/turf/open/floor/wood,/area/crew_quarters/theatre) +"aME" = (/obj/machinery/airalarm{dir = 2; pixel_y = 24},/turf/open/floor/wood,/area/crew_quarters/theatre) +"aMF" = (/obj/item/device/radio/intercom{pixel_y = 25},/obj/machinery/camera{c_tag = "Theatre Stage"; dir = 2},/turf/open/floor/wood,/area/crew_quarters/theatre) +"aMG" = (/obj/structure/window/reinforced{dir = 4},/turf/open/floor/wood,/area/crew_quarters/theatre) +"aMH" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"aMI" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"aMJ" = (/obj/machinery/disposal/bin,/obj/structure/disposalpipe/trunk{dir = 8},/obj/machinery/firealarm{dir = 2; pixel_y = 24},/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"aMK" = (/obj/machinery/reagentgrinder,/obj/structure/table/wood,/turf/open/floor/wood,/area/crew_quarters/bar) +"aML" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/wood,/area/crew_quarters/bar) +"aMM" = (/obj/machinery/camera{c_tag = "Bar Storage"},/turf/open/floor/wood,/area/crew_quarters/bar) +"aMN" = (/turf/open/floor/wood,/area/crew_quarters/bar) +"aMO" = (/obj/structure/closet/secure_closet/freezer/meat,/turf/open/floor/plasteel/showroomfloor,/area/crew_quarters/kitchen) +"aMP" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/showroomfloor,/area/crew_quarters/kitchen) +"aMQ" = (/obj/machinery/door/window/southleft{base_state = "left"; dir = 2; icon_state = "left"; name = "Kitchen Delivery"; req_access_txt = "28"},/turf/open/floor/plasteel/delivery,/area/crew_quarters/kitchen) +"aMR" = (/obj/machinery/door/window/eastright{name = "Hydroponics Delivery"; req_access_txt = "35"},/turf/open/floor/plasteel/delivery,/area/hydroponics) +"aMS" = (/obj/machinery/light_switch{pixel_y = 28},/turf/open/floor/plasteel/hydrofloor,/area/hydroponics) +"aMT" = (/obj/structure/sink{pixel_y = 30},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/hydrofloor,/area/hydroponics) +"aMU" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/hydrofloor,/area/hydroponics) +"aMV" = (/obj/structure/closet/wardrobe/botanist,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/hydrofloor,/area/hydroponics) +"aMW" = (/obj/structure/closet/secure_closet/hydroponics,/turf/open/floor/plasteel/hydrofloor,/area/hydroponics) +"aMX" = (/obj/machinery/airalarm{pixel_y = 24},/obj/machinery/camera{c_tag = "Hydroponics Storage"},/obj/machinery/light/small{dir = 1},/obj/machinery/plantgenes,/turf/open/floor/plasteel/hydrofloor,/area/hydroponics) +"aMY" = (/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/turf/open/floor/plasteel/hydrofloor,/area/hydroponics) +"aMZ" = (/obj/structure/table,/obj/item/weapon/reagent_containers/spray/plantbgone{pixel_x = 0; pixel_y = 3},/obj/item/weapon/reagent_containers/spray/plantbgone{pixel_x = 8; pixel_y = 8},/obj/item/weapon/reagent_containers/spray/plantbgone{pixel_x = 13; pixel_y = 5},/obj/item/weapon/watertank,/turf/open/floor/plasteel/hydrofloor,/area/hydroponics) +"aNa" = (/obj/machinery/airalarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/turf/open/floor/wood,/area/library) +"aNb" = (/obj/structure/chair/office/dark{dir = 4},/obj/effect/landmark/event_spawn,/turf/open/floor/wood,/area/library) +"aNc" = (/obj/structure/table/wood,/turf/open/floor/wood,/area/library) +"aNd" = (/obj/structure/table/wood,/obj/structure/disposalpipe/segment,/obj/item/toy/cards/deck/cas,/obj/item/toy/cards/deck/cas/black{pixel_x = -2; pixel_y = 6},/turf/open/floor/wood,/area/library) +"aNe" = (/obj/machinery/light{dir = 4; icon_state = "tube1"},/turf/open/floor/wood,/area/library) +"aNf" = (/obj/machinery/airalarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/obj/machinery/camera{c_tag = "Chapel Crematorium"; dir = 4},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/black,/area/chapel/office) +"aNg" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/open/floor/plasteel/black,/area/chapel/office) +"aNh" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/door/airlock{name = "Crematorium"; req_access_txt = "27"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/black,/area/chapel/office) +"aNi" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/grimy,/area/chapel/office) +"aNj" = (/obj/structure/chair{dir = 1},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/grimy,/area/chapel/office) +"aNk" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/plasteel/grimy,/area/chapel/office) +"aNl" = (/turf/open/floor/plasteel/grimy,/area/chapel/office) +"aNm" = (/obj/machinery/light{dir = 8},/turf/open/floor/plasteel/black,/area/chapel/main) +"aNn" = (/obj/machinery/computer/crew,/turf/open/floor/plasteel/shuttle/white,/area/shuttle/escape) +"aNo" = (/obj/structure/chair{dir = 8},/obj/structure/extinguisher_cabinet{pixel_x = 0; pixel_y = -30},/turf/open/floor/plasteel/shuttle,/area/shuttle/escape) +"aNp" = (/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_x = 0; pixel_y = -29},/turf/open/floor/plasteel/shuttle,/area/shuttle/escape) +"aNq" = (/obj/machinery/button/flasher{id = "cockpit_flasher"; pixel_x = 6; pixel_y = -24},/turf/open/floor/plasteel/shuttle,/area/shuttle/escape) +"aNr" = (/obj/machinery/computer/communications,/turf/open/floor/plasteel/shuttle/white,/area/shuttle/escape) +"aNs" = (/obj/machinery/door/airlock/shuttle{name = "Arrivals Shuttle Airlock"},/obj/docking_port/mobile{dwidth = 5; height = 7; id = "arrival"; name = "arrival shuttle"; travelDir = -90; width = 15},/obj/docking_port/stationary{dwidth = 5; height = 7; id = "arrival_home"; name = "port bay 1"; width = 15},/turf/open/floor/plating,/area/shuttle/arrival) +"aNt" = (/turf/closed/wall/shuttle{icon_state = "swall13"; dir = 2},/area/shuttle/arrival) +"aNu" = (/turf/open/space,/turf/closed/wall/shuttle{icon_state = "swall_f9"; dir = 2},/area/shuttle/arrival) +"aNv" = (/obj/machinery/firealarm{dir = 8; pixel_x = -24},/turf/open/floor/plasteel/warning{dir = 8},/area/hallway/secondary/entry) +"aNw" = (/obj/structure/grille,/obj/structure/window/fulltile,/turf/open/floor/plating,/area/hallway/secondary/entry) +"aNx" = (/obj/structure/chair/comfy/beige,/obj/effect/landmark/start{name = "Assistant"},/turf/open/floor/plasteel/grimy,/area/hallway/secondary/entry) +"aNy" = (/obj/structure/chair/comfy/beige,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/grimy,/area/hallway/secondary/entry) +"aNz" = (/turf/open/floor/plasteel/grimy,/area/hallway/secondary/entry) +"aNA" = (/obj/structure/chair/comfy/beige,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/grimy,/area/hallway/secondary/entry) +"aNB" = (/obj/structure/table/wood,/obj/item/device/flashlight/lamp/green{pixel_x = 1; pixel_y = 5},/turf/open/floor/plasteel/grimy,/area/hallway/secondary/entry) +"aNC" = (/obj/machinery/vending/cigarette,/turf/open/floor/plasteel/black,/area/hallway/secondary/entry) +"aND" = (/turf/open/floor/plasteel/neutral/side{dir = 8},/area/hallway/secondary/entry) +"aNE" = (/obj/machinery/door/firedoor,/obj/machinery/newscaster{pixel_y = 32},/obj/machinery/light{dir = 1},/turf/open/floor/plasteel,/area/hallway/secondary/entry) +"aNF" = (/obj/machinery/door/firedoor,/turf/open/floor/plasteel,/area/hallway/primary/port) +"aNG" = (/turf/open/floor/plasteel,/area/hallway/primary/port) +"aNH" = (/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/power/apc{name = "Port Hall APC"; dir = 1; pixel_y = 26},/turf/open/floor/plasteel,/area/hallway/primary/port) +"aNI" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; external_pressure_bound = 101.325; on = 1; pressure_checks = 1},/turf/open/floor/plasteel,/area/hallway/primary/port) +"aNJ" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/hallway/primary/port) +"aNK" = (/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel,/area/hallway/primary/port) +"aNL" = (/obj/machinery/light{dir = 1},/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"; pixel_y = 32},/turf/open/floor/plasteel/warning/corner{dir = 8},/area/hallway/primary/port) +"aNM" = (/obj/machinery/door/firedoor,/turf/open/floor/plasteel/warning{dir = 1},/area/hallway/primary/port) +"aNN" = (/obj/machinery/camera{c_tag = "Port Hallway 2"; dir = 2},/turf/open/floor/plasteel/warning{dir = 1},/area/hallway/primary/port) +"aNO" = (/turf/open/floor/plasteel/warning{dir = 1},/area/hallway/primary/port) +"aNP" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/warning{dir = 1},/area/hallway/primary/port) +"aNQ" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"; pixel_y = 32},/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/warning/corner{dir = 4},/area/hallway/primary/port) +"aNR" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/hallway/primary/port) +"aNS" = (/obj/machinery/light{dir = 1},/turf/open/floor/plasteel/warning/corner{dir = 8},/area/hallway/primary/port) +"aNT" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/warning{dir = 1},/area/hallway/primary/port) +"aNU" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/warning{dir = 1},/area/hallway/primary/port) +"aNV" = (/obj/machinery/door/firedoor,/turf/open/floor/plasteel/warning/corner{dir = 4},/area/hallway/primary/port) +"aNW" = (/obj/structure/extinguisher_cabinet{pixel_x = 5; pixel_y = 30},/turf/open/floor/plasteel,/area/hallway/primary/central) +"aNX" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/hallway/primary/central) +"aNY" = (/obj/machinery/camera{c_tag = "Central Hallway North-West"; dir = 2},/obj/machinery/airalarm{pixel_y = 23},/turf/open/floor/plasteel,/area/hallway/primary/central) +"aNZ" = (/obj/machinery/light{dir = 1},/obj/machinery/firealarm{dir = 2; pixel_y = 24},/turf/open/floor/plasteel,/area/hallway/primary/central) +"aOa" = (/turf/open/floor/plasteel/blue/corner{dir = 4},/area/hallway/primary/central) +"aOb" = (/obj/machinery/door/firedoor,/turf/open/floor/plasteel,/area/hallway/primary/central) +"aOc" = (/turf/open/floor/plasteel{icon_state = "L1"},/area/hallway/primary/central) +"aOd" = (/turf/open/floor/plasteel{icon_state = "L3"},/area/hallway/primary/central) +"aOe" = (/turf/open/floor/plasteel{icon_state = "L5"},/area/hallway/primary/central) +"aOf" = (/turf/open/floor/plasteel{icon_state = "L7"},/area/hallway/primary/central) +"aOg" = (/turf/open/floor/plasteel{icon_state = "L9"},/area/hallway/primary/central) +"aOh" = (/turf/open/floor/plasteel{icon_state = "L11"},/area/hallway/primary/central) +"aOi" = (/turf/open/floor/plasteel{desc = ""; icon_state = "L13"; name = "floor"},/area/hallway/primary/central) +"aOj" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/plasteel,/area/hallway/primary/central) +"aOk" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/neutral/corner{dir = 4},/area/hallway/primary/central) +"aOl" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/turf/open/floor/plasteel/neutral/corner{dir = 1},/area/hallway/primary/central) +"aOm" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 5},/turf/open/floor/plasteel/neutral/corner{dir = 4},/area/hallway/primary/central) +"aOn" = (/obj/machinery/newscaster{pixel_y = 32},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/neutral/corner{dir = 1},/area/hallway/primary/central) +"aOo" = (/obj/machinery/camera{c_tag = "Central Hallway North-East"; dir = 2},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/hallway/primary/central) +"aOp" = (/obj/machinery/light{dir = 1},/turf/open/floor/plasteel,/area/hallway/primary/central) +"aOq" = (/obj/machinery/firealarm{dir = 2; pixel_y = 24},/turf/open/floor/plasteel,/area/hallway/primary/central) +"aOr" = (/obj/machinery/airalarm{pixel_y = 23},/turf/open/floor/plasteel,/area/hallway/primary/central) +"aOs" = (/obj/structure/piano{tag = "icon-piano"; icon_state = "piano"},/turf/open/floor/wood,/area/crew_quarters/theatre) +"aOt" = (/obj/structure/chair/stool{pixel_y = 8},/turf/open/floor/wood,/area/crew_quarters/theatre) +"aOu" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/wood,/area/crew_quarters/theatre) +"aOv" = (/obj/structure/window/reinforced{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/wood,/area/crew_quarters/theatre) +"aOw" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"aOx" = (/obj/structure/chair/stool,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"aOy" = (/obj/machinery/computer/slot_machine,/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"aOz" = (/obj/machinery/airalarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/obj/machinery/light/small{dir = 8},/obj/structure/reagent_dispensers/beerkeg,/turf/open/floor/wood,/area/crew_quarters/bar) +"aOA" = (/obj/structure/disposalpipe/segment,/obj/effect/landmark{name = "xeno_spawn"; pixel_x = -1},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/wood,/area/crew_quarters/bar) +"aOB" = (/obj/machinery/vending/cola,/turf/open/floor/wood,/area/crew_quarters/bar) +"aOC" = (/obj/machinery/vending/coffee,/turf/open/floor/wood,/area/crew_quarters/bar) +"aOD" = (/obj/machinery/icecream_vat,/turf/open/floor/plasteel/showroomfloor,/area/crew_quarters/kitchen) +"aOE" = (/obj/machinery/chem_master/condimaster{name = "CondiMaster Neo"},/obj/machinery/camera{c_tag = "Kitchen Cold Room"},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 8},/turf/open/floor/plasteel/showroomfloor,/area/crew_quarters/kitchen) +"aOF" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_Toxins = 0},/turf/open/floor/plasteel/showroomfloor,/area/crew_quarters/kitchen) +"aOG" = (/obj/structure/closet/crate/hydroponics,/obj/item/weapon/shovel/spade,/obj/item/weapon/wrench,/obj/item/weapon/reagent_containers/glass/bucket,/obj/item/weapon/wirecutters,/turf/open/floor/plasteel/hydrofloor,/area/hydroponics) +"aOH" = (/obj/machinery/light/small,/turf/open/floor/plasteel/hydrofloor,/area/hydroponics) +"aOI" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/hydrofloor,/area/hydroponics) +"aOJ" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/turf/open/floor/plasteel/hydrofloor,/area/hydroponics) +"aOK" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/extinguisher_cabinet{pixel_x = -5; pixel_y = -31},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/hydrofloor,/area/hydroponics) +"aOL" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/firealarm{dir = 1; pixel_y = -24},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/hydrofloor,/area/hydroponics) +"aOM" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/hydrofloor,/area/hydroponics) +"aON" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/turf/open/floor/plasteel/hydrofloor,/area/hydroponics) +"aOO" = (/obj/machinery/chem_master/condimaster,/turf/open/floor/plasteel/hydrofloor,/area/hydroponics) +"aOP" = (/turf/open/floor/wood,/area/library) +"aOQ" = (/obj/structure/chair/office/dark{dir = 1},/turf/open/floor/wood,/area/library) +"aOR" = (/obj/structure/chair/office/dark{dir = 1},/obj/structure/disposalpipe/segment,/turf/open/floor/wood,/area/library) +"aOS" = (/obj/structure/bodycontainer/morgue,/obj/effect/landmark{name = "revenantspawn"},/turf/open/floor/plasteel/black,/area/chapel/office) +"aOT" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; external_pressure_bound = 101.325; on = 1; pressure_checks = 1},/turf/open/floor/plasteel/black,/area/chapel/office) +"aOU" = (/obj/structure/table/wood,/obj/item/clothing/under/burial,/obj/item/clothing/under/burial,/obj/item/clothing/under/burial,/obj/item/clothing/under/burial,/obj/item/clothing/under/burial,/obj/item/clothing/under/burial,/turf/open/floor/plasteel/grimy,/area/chapel/office) +"aOV" = (/obj/machinery/camera{c_tag = "Chapel North"; dir = 2; network = list("SS13")},/turf/open/floor/plasteel/black,/area/chapel/main) +"aOW" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/black,/area/chapel/main) +"aOX" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/black,/area/chapel/main) +"aOY" = (/turf/closed/wall,/area/hallway/secondary/exit) +"aOZ" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/hallway/secondary/exit) +"aPa" = (/turf/closed/wall/shuttle{icon_state = "swall13"; dir = 2},/area/shuttle/escape) +"aPb" = (/turf/closed/wall/shuttle{icon_state = "swall12"; dir = 2},/area/shuttle/escape) +"aPc" = (/turf/closed/wall/shuttle{icon_state = "swall14"; dir = 2},/area/shuttle/escape) +"aPd" = (/obj/machinery/door/airlock/glass{name = "Emergency Shuttle Cockpit"; req_access_txt = "19"},/turf/open/floor/plasteel/shuttle,/area/shuttle/escape) +"aPe" = (/obj/machinery/status_display,/turf/closed/wall/shuttle{icon_state = "swall12"; dir = 2},/area/shuttle/escape) +"aPf" = (/obj/machinery/hologram/holopad,/turf/open/floor/plasteel,/area/hallway/secondary/entry) +"aPg" = (/obj/structure/table/wood,/turf/open/floor/plasteel/grimy,/area/hallway/secondary/entry) +"aPh" = (/obj/structure/table/wood,/obj/item/weapon/reagent_containers/food/snacks/chips,/obj/item/weapon/reagent_containers/food/drinks/soda_cans/cola,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/carpet,/area/hallway/secondary/entry) +"aPi" = (/turf/open/floor/carpet,/area/hallway/secondary/entry) +"aPj" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/carpet,/area/hallway/secondary/entry) +"aPk" = (/obj/structure/chair/comfy/beige{dir = 8},/turf/open/floor/plasteel/grimy,/area/hallway/secondary/entry) +"aPl" = (/obj/machinery/vending/coffee,/turf/open/floor/plasteel/black,/area/hallway/secondary/entry) +"aPm" = (/turf/open/floor/goonplaque,/area/hallway/secondary/entry) +"aPn" = (/obj/machinery/navbeacon{codes_txt = "patrol;next_patrol=CHW"; location = "Lockers"},/turf/open/floor/plasteel,/area/hallway/primary/port) +"aPo" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/floor/plasteel,/area/hallway/primary/port) +"aPp" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/open/floor/plasteel,/area/hallway/primary/port) +"aPq" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel,/area/hallway/primary/port) +"aPr" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/open/floor/plasteel,/area/hallway/primary/port) +"aPs" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/open/floor/plasteel,/area/hallway/primary/port) +"aPt" = (/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel,/area/hallway/primary/port) +"aPu" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/turf/open/floor/plasteel,/area/hallway/primary/port) +"aPv" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/open/floor/plasteel,/area/hallway/primary/port) +"aPw" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/port) +"aPx" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,/turf/open/floor/plasteel,/area/hallway/primary/port) +"aPy" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/hallway/primary/port) +"aPz" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/hallway/primary/port) +"aPA" = (/obj/machinery/atmospherics/pipe/manifold4w/scrubbers/hidden,/turf/open/floor/plasteel,/area/hallway/primary/port) +"aPB" = (/obj/machinery/door/firedoor,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/port) +"aPC" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass{name = "Central Access"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/central) +"aPD" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/central) +"aPE" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,/turf/open/floor/plasteel,/area/hallway/primary/central) +"aPF" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/hallway/primary/central) +"aPG" = (/turf/open/floor/plasteel{icon_state = "L2"},/area/hallway/primary/central) +"aPH" = (/turf/open/floor/plasteel{icon_state = "L4"},/area/hallway/primary/central) +"aPI" = (/obj/machinery/navbeacon{codes_txt = "patrol;next_patrol=Lockers"; location = "EVA"},/turf/open/floor/plasteel{icon_state = "L6"},/area/hallway/primary/central) +"aPJ" = (/turf/open/floor/plasteel{icon_state = "L8"},/area/hallway/primary/central) +"aPK" = (/obj/machinery/navbeacon{codes_txt = "patrol;next_patrol=Security"; location = "EVA2"},/turf/open/floor/plasteel{icon_state = "L10"},/area/hallway/primary/central) +"aPL" = (/turf/open/floor/plasteel{icon_state = "L12"},/area/hallway/primary/central) +"aPM" = (/turf/open/floor/plasteel{desc = ""; icon_state = "L14"},/area/hallway/primary/central) +"aPN" = (/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel,/area/hallway/primary/central) +"aPO" = (/obj/machinery/navbeacon{codes_txt = "patrol;next_patrol=EVA2"; location = "Dorm"},/turf/open/floor/plasteel,/area/hallway/primary/central) +"aPP" = (/obj/structure/table/wood,/obj/item/device/instrument/guitar,/turf/open/floor/wood,/area/crew_quarters/theatre) +"aPQ" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/wood,/area/crew_quarters/theatre) +"aPR" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/effect/landmark/event_spawn,/turf/open/floor/wood,/area/crew_quarters/theatre) +"aPS" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/wood,/area/crew_quarters/theatre) +"aPT" = (/obj/machinery/door/window{dir = 4; name = "Theatre Stage"; req_access_txt = "0"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/wood,/area/crew_quarters/theatre) +"aPU" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"aPV" = (/obj/structure/chair/stool,/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"aPW" = (/obj/machinery/computer/slot_machine,/obj/machinery/light/small{dir = 4},/obj/machinery/status_display{density = 0; layer = 3; pixel_x = 32; pixel_y = 0},/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"aPX" = (/obj/structure/closet/secure_closet/bar{req_access_txt = "25"},/turf/open/floor/wood,/area/crew_quarters/bar) +"aPY" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; external_pressure_bound = 101.325; on = 1; pressure_checks = 1},/turf/open/floor/wood,/area/crew_quarters/bar) +"aPZ" = (/obj/structure/closet/gmcloset,/obj/item/stack/sheet/metal{amount = 50},/obj/item/stack/sheet/glass{amount = 50},/obj/item/stack/cable_coil,/obj/item/device/flashlight/lamp,/obj/item/device/flashlight/lamp/green,/turf/open/floor/wood,/area/crew_quarters/bar) +"aQa" = (/obj/structure/kitchenspike,/obj/machinery/light/small{dir = 8},/turf/open/floor/plasteel/showroomfloor,/area/crew_quarters/kitchen) +"aQb" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/mob/living/simple_animal/hostile/retaliate/goat{name = "Pete"},/turf/open/floor/plasteel/showroomfloor,/area/crew_quarters/kitchen) +"aQc" = (/turf/open/floor/plasteel/showroomfloor,/area/crew_quarters/kitchen) +"aQd" = (/obj/machinery/light/small{dir = 4},/obj/machinery/airalarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/structure/closet/chefcloset,/turf/open/floor/plasteel/showroomfloor,/area/crew_quarters/kitchen) +"aQe" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall,/area/hydroponics) +"aQf" = (/obj/structure/grille,/obj/structure/window/fulltile,/turf/open/floor/plating,/area/hydroponics) +"aQg" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass{name = "Hydroponics"; req_access_txt = "35"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/hydrofloor,/area/hydroponics) +"aQh" = (/obj/machinery/bookbinder{pixel_y = 0},/turf/open/floor/wood,/area/library) +"aQi" = (/obj/structure/disposalpipe/segment,/turf/open/floor/wood,/area/library) +"aQj" = (/obj/machinery/photocopier,/turf/open/floor/wood,/area/library) +"aQk" = (/obj/machinery/door/airlock/glass{name = "Chapel Office"; req_access_txt = "22"},/turf/open/floor/plasteel/black,/area/chapel/office) +"aQl" = (/obj/machinery/door/morgue{name = "Confession Booth (Chaplain)"; req_access_txt = "22"},/turf/open/floor/plasteel/black,/area/chapel/main) +"aQm" = (/obj/item/device/radio/intercom{broadcasting = 1; frequency = 1480; name = "Confessional Intercom"; pixel_x = 25},/obj/structure/chair,/turf/open/floor/plasteel/black,/area/chapel/main) +"aQn" = (/obj/structure/chair,/turf/open/floor/plasteel/red/side{dir = 9},/area/hallway/secondary/exit) +"aQo" = (/obj/structure/chair,/turf/open/floor/plasteel/red/side{dir = 1},/area/hallway/secondary/exit) +"aQp" = (/obj/machinery/light{dir = 1},/obj/structure/chair,/turf/open/floor/plasteel/red/side{dir = 1},/area/hallway/secondary/exit) +"aQq" = (/obj/structure/chair,/turf/open/floor/plasteel/warning{dir = 1},/area/hallway/secondary/exit) +"aQr" = (/obj/structure/chair,/turf/open/floor/plasteel/warning{dir = 5},/area/hallway/secondary/exit) +"aQs" = (/obj/structure/chair,/turf/open/floor/plasteel/shuttle/red,/area/shuttle/escape) +"aQt" = (/obj/machinery/flasher{id = "cockpit_flasher"; pixel_x = 6; pixel_y = 24},/turf/open/floor/plasteel/shuttle/white,/area/shuttle/escape) +"aQu" = (/turf/open/floor/plasteel/shuttle/white,/area/shuttle/escape) +"aQv" = (/obj/structure/closet/emcloset,/turf/open/floor/plasteel/shuttle/white,/area/shuttle/escape) +"aQw" = (/obj/structure/table,/obj/item/weapon/storage/firstaid/fire,/obj/item/weapon/storage/firstaid/regular{pixel_x = 2; pixel_y = 3},/obj/item/weapon/crowbar,/turf/open/floor/plasteel/shuttle/white,/area/shuttle/escape) +"aQx" = (/obj/machinery/vending/snack,/turf/open/floor/plasteel/warning{dir = 9},/area/hallway/secondary/entry) +"aQy" = (/obj/item/device/radio/beacon,/obj/machinery/camera{c_tag = "Arrivals Bay 1 South"},/turf/open/floor/plasteel/warning{dir = 1},/area/hallway/secondary/entry) +"aQz" = (/obj/structure/closet/emcloset,/turf/open/floor/plasteel/warning{dir = 1},/area/hallway/secondary/entry) +"aQA" = (/obj/structure/closet/emcloset,/turf/open/floor/plasteel/warning{dir = 5},/area/hallway/secondary/entry) +"aQB" = (/obj/structure/table/wood,/obj/item/weapon/storage/fancy/cigarettes{pixel_y = 2},/obj/item/weapon/lighter/greyscale{pixel_x = 4; pixel_y = 2},/turf/open/floor/plasteel/grimy,/area/hallway/secondary/entry) +"aQC" = (/obj/structure/table/wood,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/carpet,/area/hallway/secondary/entry) +"aQD" = (/obj/machinery/vending/cola,/turf/open/floor/plasteel/black,/area/hallway/secondary/entry) +"aQE" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel,/area/hallway/primary/port) +"aQF" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/port) +"aQG" = (/obj/machinery/firealarm{dir = 1; pixel_y = -24},/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/port) +"aQH" = (/obj/machinery/light,/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/port) +"aQI" = (/obj/machinery/camera{c_tag = "Port Hallway 3"; dir = 1},/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/port) +"aQJ" = (/obj/structure/disposalpipe/junction{icon_state = "pipe-j1"; dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/port) +"aQK" = (/obj/structure/disposalpipe/junction{icon_state = "pipe-j2"; dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/port) +"aQL" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/door/firedoor,/turf/open/floor/plasteel,/area/hallway/primary/port) +"aQM" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/camera{c_tag = "Port Hallway"; dir = 1},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/open/floor/plasteel,/area/hallway/primary/port) +"aQN" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/port) +"aQO" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/light,/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/port) +"aQP" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/port) +"aQQ" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/port) +"aQR" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/open/floor/plasteel,/area/hallway/primary/port) +"aQS" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/port) +"aQT" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/open/floor/plasteel,/area/hallway/primary/port) +"aQU" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/open/floor/plasteel,/area/hallway/primary/port) +"aQV" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/port) +"aQW" = (/obj/structure/sign/directions/security{dir = 4; icon_state = "direction_sec"; pixel_x = 32; pixel_y = -24},/obj/structure/sign/directions/evac{dir = 4; icon_state = "direction_evac"; pixel_x = 32; pixel_y = -32},/obj/structure/sign/directions/engineering{pixel_x = 32; pixel_y = -40},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/port) +"aQX" = (/obj/machinery/door/firedoor,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/port) +"aQY" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass{name = "Central Access"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/central) +"aQZ" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/central) +"aRa" = (/obj/machinery/navbeacon{codes_txt = "patrol;next_patrol=QM"; location = "CHW"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/open/floor/plasteel,/area/hallway/primary/central) +"aRb" = (/turf/open/floor/plasteel/blue/corner{dir = 8},/area/hallway/primary/central) +"aRc" = (/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel/blue/corner{dir = 8},/area/hallway/primary/central) +"aRd" = (/obj/machinery/light,/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"; pixel_y = -32},/obj/machinery/door/firedoor,/turf/open/floor/plasteel/blue/corner{dir = 8},/area/hallway/primary/central) +"aRe" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"; pixel_y = -32},/obj/machinery/door/firedoor,/obj/machinery/light,/turf/open/floor/plasteel/blue/corner{dir = 8},/area/hallway/primary/central) +"aRf" = (/obj/structure/window/reinforced,/obj/structure/table/wood,/obj/item/device/instrument/violin,/turf/open/floor/wood,/area/crew_quarters/theatre) +"aRg" = (/obj/structure/window/reinforced,/turf/open/floor/wood,/area/crew_quarters/theatre) +"aRh" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/turf/open/floor/wood,/area/crew_quarters/theatre) +"aRi" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/chair/stool,/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"aRj" = (/obj/machinery/door/airlock{name = "Bar Storage"; req_access_txt = "25"},/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel{icon_state = "wood"},/area/crew_quarters/bar) +"aRk" = (/obj/effect/landmark{name = "blobstart"},/obj/item/toy/beach_ball/holoball,/turf/open/floor/plating,/area/crew_quarters/bar) +"aRl" = (/obj/structure/kitchenspike,/turf/open/floor/plasteel/showroomfloor,/area/crew_quarters/kitchen) +"aRm" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/open/floor/plasteel/showroomfloor,/area/crew_quarters/kitchen) +"aRn" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/plasteel/showroomfloor,/area/crew_quarters/kitchen) +"aRo" = (/obj/machinery/gibber,/turf/open/floor/plasteel/showroomfloor,/area/crew_quarters/kitchen) +"aRp" = (/obj/structure/sink{icon_state = "sink"; dir = 8; pixel_x = -12; pixel_y = 2},/turf/open/floor/plasteel/black,/area/hydroponics) +"aRq" = (/obj/machinery/requests_console{department = "Hydroponics"; departmentType = 2; pixel_x = 0; pixel_y = 30},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/black,/area/hydroponics) +"aRr" = (/obj/machinery/hydroponics/constructable,/turf/open/floor/plasteel/black,/area/hydroponics) +"aRs" = (/obj/machinery/hydroponics/constructable,/obj/machinery/camera{c_tag = "Hydroponics North"; dir = 2},/turf/open/floor/plasteel/black,/area/hydroponics) +"aRt" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/black,/area/hydroponics) +"aRu" = (/obj/machinery/disposal/bin,/obj/structure/disposalpipe/trunk{dir = 8},/turf/open/floor/plasteel/black,/area/hydroponics) +"aRv" = (/obj/structure/bookcase/random/religion,/turf/open/floor/wood,/area/library) +"aRw" = (/turf/open/floor/carpet,/area/library) +"aRx" = (/obj/structure/disposalpipe/segment,/turf/open/floor/carpet,/area/library) +"aRy" = (/obj/structure/bookcase/random/reference,/turf/open/floor/wood,/area/library) +"aRz" = (/obj/machinery/computer/libraryconsole,/obj/structure/table/wood,/turf/open/floor/wood,/area/library) +"aRA" = (/obj/structure/bookcase{name = "Forbidden Knowledge"},/turf/open/floor/plasteel/cult{dir = 2},/area/library) +"aRB" = (/obj/structure/table/wood,/obj/item/device/taperecorder{pixel_y = 0},/obj/item/device/camera,/obj/item/device/radio/intercom{pixel_y = 25},/turf/open/floor/plasteel/cult{dir = 2},/area/library) +"aRC" = (/obj/structure/table/wood,/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/pen/invisible,/turf/open/floor/plasteel/cult{dir = 2},/area/library) +"aRD" = (/obj/machinery/light_switch{pixel_y = 28},/turf/open/floor/plasteel/black,/area/chapel/main) +"aRE" = (/turf/open/floor/plasteel/chapel{dir = 4},/area/chapel/main) +"aRF" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/chapel{dir = 1},/area/chapel/main) +"aRG" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/chapel{dir = 4},/area/chapel/main) +"aRH" = (/obj/structure/grille,/obj/structure/window/reinforced/tinted/fulltile,/turf/open/floor/plasteel/black,/area/chapel/main) +"aRI" = (/obj/machinery/camera{c_tag = "Escape Arm Holding Area"; dir = 4},/obj/item/device/radio/intercom{dir = 8; name = "Station Intercom (General)"; pixel_x = -28},/turf/open/floor/plasteel/red/side{dir = 8},/area/hallway/secondary/exit) +"aRJ" = (/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/turf/open/floor/plasteel,/area/hallway/secondary/exit) +"aRK" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/open/floor/plasteel,/area/hallway/secondary/exit) +"aRL" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/hallway/secondary/exit) +"aRM" = (/turf/open/floor/plasteel/warning{dir = 4},/area/hallway/secondary/exit) +"aRN" = (/obj/machinery/flasher{id = "shuttle_flasher"; pixel_x = -24; pixel_y = 6},/obj/machinery/button/flasher{id = "shuttle_flasher"; pixel_x = -24; pixel_y = -6},/turf/open/floor/plasteel/shuttle/red,/area/shuttle/escape) +"aRO" = (/turf/open/floor/plasteel/shuttle/red,/area/shuttle/escape) +"aRP" = (/obj/machinery/door/airlock/glass{name = "Emergency Shuttle Brig"; req_access_txt = "2"},/turf/open/floor/plasteel/shuttle,/area/shuttle/escape) +"aRQ" = (/turf/open/floor/plasteel/warning{dir = 9},/area/hallway/secondary/entry) +"aRR" = (/obj/item/device/radio/intercom{broadcasting = 0; name = "Station Intercom (General)"; pixel_y = 20},/turf/open/floor/plasteel/warning{dir = 1},/area/hallway/secondary/entry) +"aRS" = (/turf/open/floor/plasteel/warning/corner{dir = 4},/area/hallway/secondary/entry) +"aRT" = (/obj/structure/chair/comfy/beige{dir = 1; icon_state = "comfychair"},/turf/open/floor/plasteel/grimy,/area/hallway/secondary/entry) +"aRU" = (/obj/structure/chair/comfy/beige{dir = 1; icon_state = "comfychair"},/obj/effect/landmark/start{name = "Assistant"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/grimy,/area/hallway/secondary/entry) +"aRV" = (/obj/structure/chair/comfy/beige{dir = 1; icon_state = "comfychair"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/grimy,/area/hallway/secondary/entry) +"aRW" = (/obj/machinery/vending/snack,/turf/open/floor/plasteel/black,/area/hallway/secondary/entry) +"aRX" = (/turf/closed/wall,/area/maintenance/port) +"aRY" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plating,/area/maintenance/port) +"aRZ" = (/turf/closed/wall,/area/crew_quarters/locker) +"aSa" = (/obj/machinery/door/firedoor,/turf/open/floor/plasteel,/area/crew_quarters/locker) +"aSb" = (/obj/structure/disposalpipe/segment,/obj/machinery/door/firedoor,/turf/open/floor/plasteel,/area/crew_quarters/locker) +"aSc" = (/obj/machinery/status_display{density = 0; layer = 4},/turf/closed/wall,/area/crew_quarters/locker) +"aSd" = (/turf/closed/wall,/area/storage/art) +"aSe" = (/obj/structure/grille,/obj/structure/window/fulltile,/turf/open/floor/plating,/area/storage/art) +"aSf" = (/obj/machinery/door/airlock/glass{name = "Art Storage"},/turf/open/floor/plasteel,/area/storage/art) +"aSg" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/closed/wall,/area/storage/art) +"aSh" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/port) +"aSi" = (/turf/closed/wall,/area/storage/emergency2) +"aSj" = (/obj/structure/table,/turf/open/floor/plasteel,/area/hallway/primary/port) +"aSk" = (/obj/structure/table,/obj/machinery/airalarm{dir = 1; icon_state = "alarm0"; pixel_y = -22},/turf/open/floor/plasteel,/area/hallway/primary/port) +"aSl" = (/obj/structure/closet/emcloset,/turf/open/floor/plasteel,/area/hallway/primary/port) +"aSm" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/hallway/primary/port) +"aSn" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/hallway/primary/port) +"aSo" = (/turf/closed/wall,/area/storage/tools) +"aSp" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; on = 1},/turf/open/floor/plasteel,/area/hallway/primary/central) +"aSq" = (/turf/closed/wall/r_wall,/area/bridge) +"aSr" = (/obj/structure/grille,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/door/poddoor/preopen{id = "bridge blast"; layer = 2.9; name = "bridge blast door"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/bridge) +"aSs" = (/obj/structure/grille,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/window/reinforced/fulltile,/obj/machinery/door/poddoor/preopen{id = "bridge blast"; layer = 2.9; name = "bridge blast door"},/turf/open/floor/plating,/area/bridge) +"aSt" = (/obj/structure/grille,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/status_display{density = 0; layer = 4},/obj/structure/window/reinforced/fulltile,/obj/machinery/door/poddoor/preopen{id = "bridge blast"; layer = 2.9; name = "bridge blast door"},/turf/open/floor/plating,/area/bridge) +"aSu" = (/obj/structure/grille,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/structure/window/reinforced/fulltile,/obj/machinery/door/poddoor/preopen{id = "bridge blast"; layer = 2.9; name = "bridge blast door"},/turf/open/floor/plating,/area/bridge) +"aSv" = (/obj/structure/grille,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/status_display{density = 0; layer = 4},/obj/structure/window/reinforced/fulltile,/obj/machinery/door/poddoor/preopen{id = "bridge blast"; layer = 2.9; name = "bridge blast door"},/turf/open/floor/plating,/area/bridge) +"aSw" = (/obj/structure/grille,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/window/reinforced/fulltile,/obj/machinery/door/poddoor/preopen{id = "bridge blast"; layer = 2.9; name = "bridge blast door"},/turf/open/floor/plating,/area/bridge) +"aSx" = (/obj/structure/table,/obj/machinery/computer/security/telescreen/entertainment{pixel_x = -31},/obj/item/clothing/head/hardhat/cakehat,/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"aSy" = (/obj/structure/chair/stool,/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"aSz" = (/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"aSA" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"aSB" = (/obj/structure/grille,/obj/structure/window/fulltile,/turf/open/floor/plating,/area/crew_quarters/bar) +"aSC" = (/obj/machinery/disposal/bin,/obj/structure/sign/securearea{desc = "Under the painting a plaque reads: 'While the meat grinder may not have spared you, fear not. Not one part of you has gone to waste... You were delicious.'"; icon_state = "monkey_painting"; name = "Mr. Deempisi portrait"; pixel_x = -28; pixel_y = -4},/obj/structure/disposalpipe/trunk{dir = 4},/obj/machinery/button/door{id = "barShutters"; name = "bar shutters"; pixel_x = 4; pixel_y = 28},/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"aSD" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"aSE" = (/obj/machinery/firealarm{dir = 4; pixel_x = 24},/obj/structure/table,/obj/machinery/chem_dispenser/drinks/beer,/obj/item/device/radio/intercom{pixel_y = 25},/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"aSF" = (/obj/machinery/door/airlock{name = "Kitchen cold room"; req_access_txt = "28"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/showroomfloor,/area/crew_quarters/kitchen) +"aSG" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/green/side{dir = 9},/area/hydroponics) +"aSH" = (/turf/open/floor/plasteel/green/side{dir = 1},/area/hydroponics) +"aSI" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/green/side{dir = 5},/area/hydroponics) +"aSJ" = (/obj/machinery/light/small{dir = 8},/turf/open/floor/wood,/area/library) +"aSK" = (/obj/machinery/light/small{dir = 4},/turf/open/floor/wood,/area/library) +"aSL" = (/obj/machinery/light/small,/turf/open/floor/plasteel/cult{dir = 2},/area/library) +"aSM" = (/obj/effect/landmark{name = "blobstart"},/obj/structure/chair/comfy/brown{dir = 1},/turf/open/floor/plasteel/cult{dir = 2},/area/library) +"aSN" = (/obj/structure/cult/tome,/obj/item/clothing/under/suit_jacket/red,/obj/item/weapon/book/codex_gigas,/turf/open/floor/plasteel/cult{dir = 2},/area/library) +"aSO" = (/turf/open/floor/plasteel/chapel,/area/chapel/main) +"aSP" = (/obj/structure/table/wood,/turf/open/floor/plasteel/black,/area/chapel/main) +"aSQ" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/chapel{dir = 8},/area/chapel/main) +"aSR" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/chapel,/area/chapel/main) +"aSS" = (/obj/machinery/door/morgue{name = "Confession Booth"},/turf/open/floor/plasteel/black,/area/chapel/main) +"aST" = (/obj/item/device/radio/intercom{broadcasting = 1; frequency = 1480; name = "Confessional Intercom"; pixel_x = 25},/obj/structure/chair{dir = 1},/turf/open/floor/plasteel/black,/area/chapel/main) +"aSU" = (/turf/open/floor/plasteel/red/side{dir = 8},/area/hallway/secondary/exit) +"aSV" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/hallway/secondary/exit) +"aSW" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/hallway/secondary/exit) +"aSX" = (/turf/open/floor/plasteel,/area/hallway/secondary/exit) +"aSY" = (/obj/machinery/door/airlock/external{name = "Security Escape Airlock"; req_access_txt = "2"},/turf/open/floor/plating,/area/hallway/secondary/exit) +"aSZ" = (/turf/open/floor/plating,/area/hallway/secondary/exit) +"aTa" = (/obj/machinery/light/small{dir = 1},/turf/open/floor/plating,/area/hallway/secondary/exit) +"aTb" = (/obj/machinery/door/airlock/shuttle{name = "Emergency Shuttle Airlock"; req_access_txt = "2"},/turf/open/floor/plating,/area/shuttle/escape) +"aTc" = (/obj/structure/chair{dir = 1},/turf/open/floor/plasteel/shuttle/red,/area/shuttle/escape) +"aTd" = (/obj/structure/chair,/turf/open/floor/plasteel/shuttle/white,/area/shuttle/escape) +"aTe" = (/obj/structure/chair{dir = 4},/turf/open/floor/plasteel/shuttle/white,/area/shuttle/escape) +"aTf" = (/obj/structure/table,/turf/open/floor/plasteel/shuttle/white,/area/shuttle/escape) +"aTg" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 0; pixel_y = 32},/turf/open/floor/plasteel/warning{dir = 1},/area/hallway/secondary/entry) +"aTh" = (/turf/open/floor/plasteel/warning/corner{dir = 8},/area/hallway/secondary/entry) +"aTi" = (/obj/machinery/door/firedoor,/turf/open/floor/plasteel/neutral/corner{dir = 4},/area/hallway/secondary/entry) +"aTj" = (/turf/open/floor/plasteel/neutral/side{dir = 1},/area/hallway/secondary/entry) +"aTk" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/open/floor/plasteel/neutral/side{dir = 1},/area/hallway/secondary/entry) +"aTl" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/plasteel/neutral/side{dir = 1},/area/hallway/secondary/entry) +"aTm" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 5},/turf/open/floor/plasteel/neutral/side{dir = 1},/area/hallway/secondary/entry) +"aTn" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/neutral/side{dir = 1},/area/hallway/secondary/entry) +"aTo" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/turf/open/floor/plasteel/neutral/side{dir = 1},/area/hallway/secondary/entry) +"aTp" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/neutral/corner{dir = 1},/area/hallway/secondary/entry) +"aTq" = (/obj/structure/closet,/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/port) +"aTr" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/disposalpipe/segment,/turf/open/floor/plating,/area/maintenance/port) +"aTs" = (/obj/structure/closet/wardrobe/white,/turf/open/floor/plasteel,/area/crew_quarters/locker) +"aTt" = (/turf/open/floor/plasteel,/area/crew_quarters/locker) +"aTu" = (/obj/structure/reagent_dispensers/watertank,/turf/open/floor/plasteel,/area/crew_quarters/locker) +"aTv" = (/obj/structure/reagent_dispensers/fueltank,/obj/machinery/light_switch{pixel_y = 28},/turf/open/floor/plasteel,/area/crew_quarters/locker) +"aTw" = (/obj/machinery/vending/cola,/turf/open/floor/plasteel,/area/crew_quarters/locker) +"aTx" = (/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel,/area/crew_quarters/locker) +"aTy" = (/obj/machinery/vending/coffee,/turf/open/floor/plasteel,/area/crew_quarters/locker) +"aTz" = (/obj/machinery/vending/clothing,/turf/open/floor/plasteel,/area/crew_quarters/locker) +"aTA" = (/obj/machinery/vending/cigarette,/turf/open/floor/plasteel,/area/crew_quarters/locker) +"aTB" = (/obj/machinery/firealarm{dir = 2; pixel_y = 24},/turf/open/floor/plasteel,/area/crew_quarters/locker) +"aTC" = (/obj/structure/closet/secure_closet/personal,/turf/open/floor/plasteel,/area/crew_quarters/locker) +"aTD" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/obj/structure/table,/obj/item/stack/cable_coil/random,/obj/item/stack/cable_coil/random,/turf/open/floor/plasteel,/area/storage/art) +"aTE" = (/turf/open/floor/plasteel,/area/storage/art) +"aTF" = (/obj/machinery/light/small{dir = 4},/obj/machinery/light_switch{pixel_x = 27},/turf/open/floor/plasteel,/area/storage/art) +"aTG" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/port) +"aTH" = (/obj/machinery/door/airlock{name = "Port Emergency Storage"; req_access_txt = "0"},/turf/open/floor/plating,/area/storage/emergency2) +"aTI" = (/obj/structure/grille,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/storage/tools) +"aTJ" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass{name = "Auxiliary Tool Storage"; req_access_txt = "12"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/storage/tools) +"aTK" = (/obj/machinery/light{dir = 8},/turf/open/floor/plasteel,/area/hallway/primary/central) +"aTL" = (/obj/structure/table/reinforced,/obj/item/weapon/storage/secure/briefcase,/obj/item/weapon/storage/box/PDAs{pixel_x = 4; pixel_y = 4},/obj/item/weapon/storage/box/ids,/turf/open/floor/plasteel,/area/bridge) +"aTM" = (/obj/machinery/computer/atmos_alert,/turf/open/floor/plasteel/yellow/side{dir = 10},/area/bridge) +"aTN" = (/obj/machinery/computer/station_alert,/turf/open/floor/plasteel/yellow/side,/area/bridge) +"aTO" = (/obj/machinery/computer/monitor{name = "bridge power monitoring console"},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/open/floor/plasteel/yellow/side{dir = 6},/area/bridge) +"aTP" = (/obj/machinery/computer/shuttle/labor,/turf/open/floor/plasteel/blue/side{dir = 10},/area/bridge) +"aTQ" = (/obj/machinery/computer/communications,/turf/open/floor/plasteel/blue/side{dir = 0},/area/bridge) +"aTR" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/computer/shuttle/mining,/turf/open/floor/plasteel/blue/side{dir = 6},/area/bridge) +"aTS" = (/obj/machinery/computer/card,/turf/open/floor/plasteel/green/side{dir = 10},/area/bridge) +"aTT" = (/obj/machinery/computer/crew,/turf/open/floor/plasteel/green/side{dir = 2},/area/bridge) +"aTU" = (/obj/machinery/computer/med_data,/turf/open/floor/plasteel/green/side{dir = 6},/area/bridge) +"aTV" = (/obj/structure/table/reinforced,/obj/item/weapon/storage/toolbox/emergency,/obj/item/weapon/wrench,/obj/item/device/assembly/timer,/obj/item/device/assembly/signaler,/obj/item/device/assembly/signaler,/turf/open/floor/plasteel,/area/bridge) +"aTW" = (/obj/machinery/light{dir = 4; icon_state = "tube1"},/turf/open/floor/plasteel,/area/hallway/primary/central) +"aTX" = (/obj/effect/landmark/event_spawn,/turf/closed/wall,/area/crew_quarters/bar) +"aTY" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/obj/structure/chair/stool,/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"aTZ" = (/obj/structure/chair,/obj/effect/landmark/start{name = "Assistant"},/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"aUa" = (/obj/structure/chair/stool/bar,/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"aUb" = (/obj/structure/table/reinforced,/obj/item/weapon/lighter,/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"aUc" = (/obj/machinery/light{dir = 4; icon_state = "tube1"},/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"aUd" = (/obj/machinery/vending/boozeomat,/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"aUe" = (/obj/machinery/vending/dinnerware,/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/kitchen) +"aUf" = (/obj/structure/sink/kitchen{pixel_y = 28},/obj/machinery/food_cart,/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/kitchen) +"aUg" = (/obj/structure/extinguisher_cabinet{pixel_x = -5; pixel_y = 30},/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/kitchen) +"aUh" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/kitchen) +"aUi" = (/obj/item/device/radio/intercom{pixel_y = 25},/obj/machinery/camera{c_tag = "Kitchen"; dir = 2},/obj/structure/closet/secure_closet/freezer/fridge,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/kitchen) +"aUj" = (/obj/structure/table,/obj/machinery/microwave{pixel_x = -3; pixel_y = 6},/obj/machinery/airalarm{pixel_y = 24},/obj/machinery/light{dir = 1},/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/kitchen) +"aUk" = (/obj/structure/table,/obj/machinery/microwave{pixel_x = -3; pixel_y = 6},/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/kitchen) +"aUl" = (/obj/structure/closet/secure_closet/freezer/kitchen,/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/kitchen) +"aUm" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/green/side{dir = 8},/area/hydroponics) +"aUn" = (/turf/open/floor/plasteel,/area/hydroponics) +"aUo" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/green/side{dir = 4},/area/hydroponics) +"aUp" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/power/apc{dir = 4; name = "Library APC"; pixel_x = 24},/obj/structure/cable,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/library) +"aUq" = (/obj/structure/bookcase/random/fiction,/turf/open/floor/wood,/area/library) +"aUr" = (/obj/structure/bookcase/random/nonfiction,/turf/open/floor/wood,/area/library) +"aUs" = (/obj/machinery/camera{c_tag = "Library South"; dir = 8; network = list("SS13")},/turf/open/floor/wood,/area/library) +"aUt" = (/obj/machinery/door/morgue{name = "Private Study"; req_access_txt = "37"},/turf/open/floor/plasteel/cult{dir = 2},/area/library) +"aUu" = (/obj/machinery/firealarm{dir = 8; pixel_x = -24},/turf/open/floor/plasteel/black,/area/chapel/main) +"aUv" = (/turf/open/floor/carpet,/area/chapel/main) +"aUw" = (/obj/effect/landmark/event_spawn,/turf/open/floor/carpet,/area/chapel/main) +"aUx" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/hallway/secondary/exit) +"aUy" = (/obj/machinery/door/airlock/glass_security{name = "Holding Area"; req_access_txt = "2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/hallway/secondary/exit) +"aUz" = (/obj/structure/grille,/obj/structure/sign/securearea{desc = "A warning sign which reads 'KEEP CLEAR OF DOCKING AREA'."; name = "KEEP CLEAR: DOCKING AREA"; pixel_y = 0},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/hallway/secondary/exit) +"aUA" = (/turf/closed/wall/shuttle{icon_state = "swall7"; dir = 2},/area/shuttle/escape) +"aUB" = (/turf/closed/wall/shuttle{icon_state = "swallc4"; dir = 2},/area/shuttle/escape) +"aUC" = (/obj/machinery/light,/turf/open/floor/plasteel/arrival{dir = 2},/area/hallway/secondary/entry) +"aUD" = (/turf/open/floor/plasteel/arrival{dir = 2},/area/hallway/secondary/entry) +"aUE" = (/turf/open/floor/plasteel/white/corner{dir = 8},/area/hallway/secondary/entry) +"aUF" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/hallway/secondary/entry) +"aUG" = (/obj/machinery/airalarm{dir = 1; icon_state = "alarm0"; pixel_y = -22},/turf/open/floor/plasteel,/area/hallway/secondary/entry) +"aUH" = (/obj/machinery/firealarm{dir = 2; pixel_y = -24},/turf/open/floor/plasteel,/area/hallway/secondary/entry) +"aUI" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/hallway/secondary/entry) +"aUJ" = (/obj/machinery/light,/turf/open/floor/plasteel,/area/hallway/secondary/entry) +"aUK" = (/obj/machinery/camera{c_tag = "Arrivals Hallway"; dir = 8; network = list("SS13")},/turf/open/floor/plasteel,/area/hallway/secondary/entry) +"aUL" = (/turf/open/floor/plating,/area/maintenance/port) +"aUM" = (/obj/structure/closet/wardrobe/mixed,/obj/item/device/radio/intercom{dir = 0; name = "Station Intercom (General)"; pixel_x = -27},/turf/open/floor/plasteel,/area/crew_quarters/locker) +"aUN" = (/obj/effect/landmark{name = "lightsout"},/turf/open/floor/plasteel,/area/crew_quarters/locker) +"aUO" = (/obj/structure/table,/obj/item/stack/cable_coil/random,/obj/item/stack/cable_coil/random,/turf/open/floor/plasteel,/area/storage/art) +"aUP" = (/obj/machinery/light_switch{pixel_y = 28},/obj/item/weapon/storage/box/lights/mixed,/turf/open/floor/plating,/area/storage/emergency2) +"aUQ" = (/turf/open/floor/plating,/area/storage/emergency2) +"aUR" = (/obj/item/weapon/extinguisher,/turf/open/floor/plating,/area/storage/emergency2) +"aUS" = (/obj/machinery/power/apc{dir = 1; name = "Auxiliary Tool Storage APC"; pixel_y = 24},/obj/machinery/firealarm{dir = 8; pixel_x = -24},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/table,/obj/item/stack/sheet/glass{amount = 50},/obj/item/stack/rods{amount = 50},/turf/open/floor/plasteel,/area/storage/tools) +"aUT" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/rack,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/item/weapon/electronics/apc,/obj/item/weapon/electronics/airlock,/turf/open/floor/plasteel,/area/storage/tools) +"aUU" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/storage/tools) +"aUV" = (/obj/machinery/light_switch{pixel_y = 28},/obj/machinery/camera{c_tag = "Auxiliary Tool Storage"; dir = 2},/obj/structure/table,/obj/item/stack/sheet/metal{amount = 50},/obj/item/stack/sheet/metal{amount = 50},/obj/item/weapon/storage/box/lights/mixed,/turf/open/floor/plasteel,/area/storage/tools) +"aUW" = (/obj/structure/table,/obj/item/weapon/storage/toolbox/emergency,/turf/open/floor/plasteel,/area/storage/tools) +"aUX" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/storage/tools) +"aUY" = (/obj/structure/table/reinforced,/obj/item/device/assembly/flash/handheld,/obj/item/device/assembly/flash/handheld,/turf/open/floor/plasteel,/area/bridge) +"aUZ" = (/turf/open/floor/plasteel/yellow/corner{dir = 1},/area/bridge) +"aVa" = (/obj/structure/chair{dir = 1; name = "Engineering Station"},/turf/open/floor/plasteel,/area/bridge) +"aVb" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plasteel/yellow/corner{dir = 4},/area/bridge) +"aVc" = (/obj/structure/table/reinforced,/obj/item/device/aicard,/obj/item/device/multitool,/turf/open/floor/plasteel/blue/side{dir = 8},/area/bridge) +"aVd" = (/obj/structure/chair{dir = 1; name = "Command Station"},/obj/machinery/button/door{id = "bridge blast"; name = "Bridge Blast Door Control"; pixel_x = 28; pixel_y = -2; req_access_txt = "19"},/obj/machinery/keycard_auth{pixel_x = 29; pixel_y = 8},/turf/open/floor/plasteel,/area/bridge) +"aVe" = (/obj/structure/table/reinforced,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plasteel/blue/side{dir = 4},/area/bridge) +"aVf" = (/turf/open/floor/plasteel/green/corner{dir = 1},/area/bridge) +"aVg" = (/obj/structure/chair{dir = 1; name = "Crew Station"},/turf/open/floor/plasteel,/area/bridge) +"aVh" = (/turf/open/floor/plasteel/green/corner{dir = 4},/area/bridge) +"aVi" = (/obj/structure/table/reinforced,/obj/item/weapon/storage/fancy/donut_box,/turf/open/floor/plasteel,/area/bridge) +"aVj" = (/obj/structure/grille,/obj/structure/window/fulltile,/obj/machinery/door/poddoor/preopen{id = "barShutters"; name = "privacy shutters"},/turf/open/floor/plating,/area/crew_quarters/bar) +"aVk" = (/obj/structure/chair{dir = 4},/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"aVl" = (/obj/structure/table,/obj/item/weapon/kitchen/fork,/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"aVm" = (/obj/structure/chair{dir = 8},/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"aVn" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"aVo" = (/obj/structure/chair/stool,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"aVp" = (/obj/structure/table/wood/poker,/obj/item/toy/cards/deck,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"aVq" = (/obj/structure/chair/stool,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"aVr" = (/obj/structure/table/reinforced,/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"aVs" = (/mob/living/carbon/monkey/punpun,/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"aVt" = (/obj/machinery/door/airlock/glass{name = "Kitchen"; req_access_txt = "28"},/turf/open/floor/plasteel/bar,/area/crew_quarters/kitchen) +"aVu" = (/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/kitchen) +"aVv" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/kitchen) +"aVw" = (/obj/effect/landmark/start{name = "Cook"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/kitchen) +"aVx" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/kitchen) +"aVy" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 5},/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/kitchen) +"aVz" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/kitchen) +"aVA" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_Toxins = 0},/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/kitchen) +"aVB" = (/obj/machinery/smartfridge,/turf/closed/wall,/area/crew_quarters/kitchen) +"aVC" = (/turf/open/floor/plasteel/black,/area/hydroponics) +"aVD" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/green/side{dir = 8},/area/hydroponics) +"aVE" = (/obj/machinery/seed_extractor,/turf/open/floor/plasteel,/area/hydroponics) +"aVF" = (/obj/machinery/biogenerator,/turf/open/floor/plasteel,/area/hydroponics) +"aVG" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; external_pressure_bound = 101.325; on = 1; pressure_checks = 1},/turf/open/floor/plasteel/green/side{dir = 4},/area/hydroponics) +"aVH" = (/obj/machinery/door/window/northright{base_state = "right"; dir = 8; icon_state = "right"; name = "Library Desk Door"; req_access_txt = "37"},/turf/open/floor/wood,/area/library) +"aVI" = (/obj/machinery/newscaster{pixel_y = 32},/turf/open/floor/wood,/area/library) +"aVJ" = (/obj/structure/table/wood,/obj/machinery/computer/libraryconsole/bookmanagement{pixel_y = 0},/obj/machinery/light_switch{pixel_y = 28},/turf/open/floor/wood,/area/library) +"aVK" = (/obj/structure/chair/stool,/turf/open/floor/plasteel/chapel{dir = 8},/area/chapel/main) +"aVL" = (/obj/structure/chair/stool,/turf/open/floor/plasteel/chapel,/area/chapel/main) +"aVM" = (/obj/structure/chair/stool,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/effect/landmark/start{name = "Assistant"},/turf/open/floor/plasteel/chapel{dir = 8},/area/chapel/main) +"aVN" = (/obj/structure/chair/stool,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/chapel,/area/chapel/main) +"aVO" = (/obj/machinery/light{dir = 4; icon_state = "tube1"},/turf/open/floor/plasteel/black,/area/chapel/main) +"aVP" = (/obj/machinery/vending/cola,/obj/machinery/status_display{layer = 4; pixel_x = 0; pixel_y = 32},/turf/open/floor/plasteel/escape{dir = 9},/area/hallway/secondary/exit) +"aVQ" = (/turf/open/floor/plasteel/red/corner{dir = 1},/area/hallway/secondary/exit) +"aVR" = (/obj/machinery/door/airlock/external{name = "Escape Airlock"},/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 0; pixel_y = 32},/turf/open/floor/plating,/area/hallway/secondary/exit) +"aVS" = (/obj/machinery/door/airlock/external{name = "Escape Airlock"},/turf/open/floor/plating,/area/hallway/secondary/exit) +"aVT" = (/obj/machinery/door/airlock/shuttle{name = "Emergency Shuttle Airlock"},/obj/docking_port/mobile/emergency{name = "Box emergency shuttle"},/obj/docking_port/stationary{dir = 4; dwidth = 12; height = 18; id = "emergency_home"; name = "BoxStation emergency evac bay"; width = 32},/turf/open/floor/plating,/area/shuttle/escape) +"aVU" = (/obj/structure/extinguisher_cabinet{pixel_x = -5; pixel_y = 30},/turf/open/floor/plasteel/shuttle,/area/shuttle/escape) +"aVV" = (/obj/structure/extinguisher_cabinet{pixel_x = 27; pixel_y = 0},/turf/open/floor/plasteel/shuttle,/area/shuttle/escape) +"aVW" = (/obj/machinery/door/firedoor,/obj/machinery/status_display{density = 0; layer = 3; pixel_x = 32; pixel_y = 0},/turf/open/floor/plasteel,/area/hallway/secondary/entry) +"aVX" = (/turf/closed/wall,/area/security/vacantoffice{name = "Vacant Office A"}) +"aVY" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/closed/wall,/area/security/vacantoffice{name = "Vacant Office A"}) +"aVZ" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall,/area/security/vacantoffice{name = "Vacant Office A"}) +"aWa" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/turf/open/floor/plating,/area/maintenance/port) +"aWb" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/turf/open/floor/plating,/area/maintenance/port) +"aWc" = (/obj/structure/closet/wardrobe/green,/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/open/floor/plasteel,/area/crew_quarters/locker) +"aWd" = (/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/turf/open/floor/plasteel,/area/crew_quarters/locker) +"aWe" = (/obj/structure/chair/stool{pixel_y = 8},/obj/effect/landmark/start{name = "Assistant"},/turf/open/floor/plasteel,/area/crew_quarters/locker) +"aWf" = (/obj/structure/table,/obj/item/weapon/storage/toolbox/mechanical{pixel_x = -2; pixel_y = -1},/turf/open/floor/plasteel,/area/crew_quarters/locker) +"aWg" = (/obj/structure/table,/turf/open/floor/plasteel,/area/crew_quarters/locker) +"aWh" = (/obj/structure/table,/obj/item/weapon/storage/toolbox/mechanical{pixel_x = -2; pixel_y = -1},/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel,/area/crew_quarters/locker) +"aWi" = (/obj/structure/chair/stool{pixel_y = 8},/turf/open/floor/plasteel,/area/crew_quarters/locker) +"aWj" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/crew_quarters/locker) +"aWk" = (/obj/structure/closet/secure_closet/personal,/obj/machinery/airalarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/machinery/camera{c_tag = "Locker Room East"; dir = 8; network = list("SS13")},/obj/machinery/light{dir = 4},/turf/open/floor/plasteel,/area/crew_quarters/locker) +"aWl" = (/obj/structure/table,/obj/item/weapon/hand_labeler,/turf/open/floor/plasteel,/area/storage/art) +"aWm" = (/obj/structure/table,/obj/item/weapon/storage/crayons,/obj/item/weapon/storage/crayons,/turf/open/floor/plasteel,/area/storage/art) +"aWn" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/obj/structure/table,/obj/item/device/camera_film,/obj/item/device/camera,/turf/open/floor/plasteel,/area/storage/art) +"aWo" = (/obj/machinery/portable_atmospherics/canister/air,/turf/open/floor/plating,/area/storage/emergency2) +"aWp" = (/obj/machinery/light/small,/obj/structure/reagent_dispensers/watertank,/turf/open/floor/plating,/area/storage/emergency2) +"aWq" = (/obj/machinery/space_heater,/turf/open/floor/plating,/area/storage/emergency2) +"aWr" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/weapon/tank/internals/emergency_oxygen,/obj/item/weapon/tank/internals/emergency_oxygen,/obj/item/clothing/mask/breath,/obj/item/clothing/mask/breath,/turf/open/floor/plating,/area/storage/emergency2) +"aWs" = (/obj/structure/extinguisher_cabinet{pixel_x = -27; pixel_y = 0},/turf/open/floor/plasteel,/area/storage/tools) +"aWt" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; on = 1},/turf/open/floor/plasteel,/area/storage/tools) +"aWu" = (/turf/open/floor/plasteel,/area/storage/tools) +"aWv" = (/obj/structure/rack,/obj/item/clothing/gloves/color/fyellow,/obj/item/clothing/suit/hazardvest,/obj/item/device/multitool,/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plasteel,/area/storage/tools) +"aWw" = (/turf/closed/wall,/area/bridge) +"aWx" = (/obj/machinery/computer/prisoner,/turf/open/floor/plasteel/red/side{dir = 10},/area/bridge) +"aWy" = (/obj/machinery/computer/security,/turf/open/floor/plasteel/red/side,/area/bridge) +"aWz" = (/obj/machinery/computer/secure_data,/turf/open/floor/plasteel/red/side{dir = 6},/area/bridge) +"aWA" = (/obj/structure/table/reinforced,/obj/machinery/recharger,/turf/open/floor/plasteel,/area/bridge) +"aWB" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/bridge) +"aWC" = (/turf/open/floor/plasteel,/area/bridge) +"aWD" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plasteel,/area/bridge) +"aWE" = (/turf/open/floor/plasteel/blue/corner{dir = 1},/area/bridge) +"aWF" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plasteel/blue/corner{dir = 4},/area/bridge) +"aWG" = (/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel,/area/bridge) +"aWH" = (/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/turf/open/floor/plasteel,/area/bridge) +"aWI" = (/obj/structure/table/reinforced,/obj/item/weapon/storage/firstaid/regular,/turf/open/floor/plasteel,/area/bridge) +"aWJ" = (/obj/machinery/computer/teleporter,/turf/open/floor/plasteel/brown{dir = 10},/area/bridge) +"aWK" = (/obj/machinery/computer/cargo/request,/turf/open/floor/plasteel/brown{dir = 2},/area/bridge) +"aWL" = (/obj/machinery/computer/security/mining,/turf/open/floor/plasteel/brown{dir = 6},/area/bridge) +"aWM" = (/obj/machinery/airalarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/obj/machinery/camera{c_tag = "Bar West"; dir = 4; network = list("SS13")},/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"aWN" = (/obj/structure/chair{dir = 1},/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"aWO" = (/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"aWP" = (/obj/structure/table/reinforced,/obj/item/clothing/head/that{throwforce = 1; throwing = 1},/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"aWQ" = (/obj/effect/landmark/start{name = "Bartender"},/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"aWR" = (/obj/machinery/requests_console{department = "Bar"; departmentType = 2; pixel_x = 30; pixel_y = 0},/obj/machinery/camera{c_tag = "Bar"; dir = 8; network = list("SS13")},/obj/structure/table,/obj/machinery/chem_dispenser/drinks,/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"aWS" = (/obj/structure/table,/obj/item/weapon/reagent_containers/food/snacks/mint,/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/kitchen) +"aWT" = (/obj/structure/table,/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/kitchen) +"aWU" = (/obj/structure/table,/obj/item/weapon/kitchen/rollingpin,/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/kitchen) +"aWV" = (/obj/structure/table,/obj/item/weapon/book/manual/chef_recipes,/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/kitchen) +"aWW" = (/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/kitchen) +"aWX" = (/obj/structure/table/reinforced,/obj/machinery/door/window/eastleft{name = "Hydroponics Desk"; req_access_txt = "35"},/obj/machinery/door/firedoor,/turf/open/floor/plasteel/delivery{name = "floor"},/area/crew_quarters/kitchen) +"aWY" = (/turf/open/floor/plasteel/vault{dir = 8},/area/hydroponics) +"aWZ" = (/turf/open/floor/plasteel/green/side{dir = 8},/area/hydroponics) +"aXa" = (/obj/machinery/vending/hydronutrients,/turf/open/floor/plasteel,/area/hydroponics) +"aXb" = (/obj/machinery/vending/hydroseeds{slogan_delay = 700},/turf/open/floor/plasteel,/area/hydroponics) +"aXc" = (/turf/open/floor/plasteel/green/side{dir = 4},/area/hydroponics) +"aXd" = (/obj/machinery/hydroponics/constructable,/obj/machinery/airalarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/turf/open/floor/plasteel/black,/area/hydroponics) +"aXe" = (/obj/structure/bookcase/random/adult,/turf/open/floor/wood,/area/library) +"aXf" = (/obj/structure/chair/comfy/black,/obj/effect/landmark/start{name = "Assistant"},/turf/open/floor/wood,/area/library) +"aXg" = (/obj/structure/table/wood,/obj/item/device/flashlight/lamp/green{pixel_x = 1; pixel_y = 5},/turf/open/floor/wood,/area/library) +"aXh" = (/obj/effect/landmark/start{name = "Librarian"},/obj/structure/chair/office/dark,/turf/open/floor/wood,/area/library) +"aXi" = (/obj/machinery/libraryscanner,/turf/open/floor/wood,/area/library) +"aXj" = (/obj/machinery/airalarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/turf/open/floor/plasteel/black,/area/chapel/main) +"aXk" = (/obj/structure/chair/stool,/turf/open/floor/plasteel/chapel{dir = 1},/area/chapel/main) +"aXl" = (/obj/structure/chair/stool,/obj/effect/landmark/start{name = "Assistant"},/turf/open/floor/plasteel/chapel{dir = 4},/area/chapel/main) +"aXm" = (/obj/structure/chair/stool,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/chapel{dir = 1},/area/chapel/main) +"aXn" = (/obj/structure/chair/stool,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/chapel{dir = 4},/area/chapel/main) +"aXo" = (/obj/machinery/computer/arcade,/turf/open/floor/plasteel/escape{dir = 8},/area/hallway/secondary/exit) +"aXp" = (/obj/structure/chair{dir = 8},/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plasteel/shuttle/white,/area/shuttle/escape) +"aXq" = (/obj/structure/chair{dir = 4},/obj/structure/window/reinforced{dir = 8},/turf/open/floor/plasteel/shuttle/white,/area/shuttle/escape) +"aXr" = (/obj/structure/chair{dir = 8},/turf/open/floor/plasteel/shuttle/white,/area/shuttle/escape) +"aXs" = (/obj/structure/shuttle/engine/propulsion{icon_state = "propulsion"; dir = 4},/turf/closed/wall/shuttle{icon_state = "swall_s6"; dir = 2},/area/shuttle/transport) +"aXt" = (/turf/closed/wall/shuttle{icon_state = "swall12"; dir = 2},/area/shuttle/transport) +"aXu" = (/obj/structure/window/shuttle,/obj/structure/grille,/turf/open/floor/plating,/area/shuttle/transport) +"aXv" = (/obj/structure/grille,/obj/structure/window/shuttle,/turf/open/floor/plating,/area/shuttle/transport) +"aXw" = (/turf/closed/wall/shuttle{icon_state = "swall_s10"; dir = 2},/area/shuttle/transport) +"aXx" = (/obj/machinery/camera{c_tag = "Arrivals Bay 2"; dir = 8; network = list("SS13")},/turf/open/floor/plasteel,/area/hallway/secondary/entry) +"aXy" = (/turf/open/floor/wood,/area/security/vacantoffice{name = "Vacant Office A"}) +"aXz" = (/obj/structure/chair/office/dark{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/wood,/area/security/vacantoffice{name = "Vacant Office A"}) +"aXA" = (/obj/structure/table/wood,/turf/open/floor/wood,/area/security/vacantoffice{name = "Vacant Office A"}) +"aXB" = (/obj/machinery/airalarm{frequency = 1439; pixel_y = 23},/turf/open/floor/wood,/area/security/vacantoffice{name = "Vacant Office A"}) +"aXC" = (/obj/structure/chair/office/dark{dir = 8},/turf/open/floor/wood,/area/security/vacantoffice{name = "Vacant Office A"}) +"aXD" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/wood,/area/security/vacantoffice{name = "Vacant Office A"}) +"aXE" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/floor/plating,/area/maintenance/port) +"aXF" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/open/floor/plating,/area/maintenance/port) +"aXG" = (/obj/structure/closet/wardrobe/grey,/obj/machinery/requests_console{department = "Locker Room"; pixel_x = -32; pixel_y = 0},/turf/open/floor/plasteel,/area/crew_quarters/locker) +"aXH" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/open/floor/plasteel,/area/crew_quarters/locker) +"aXI" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/crew_quarters/locker) +"aXJ" = (/obj/structure/chair/stool{pixel_y = 8},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/crew_quarters/locker) +"aXK" = (/obj/structure/table,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/crew_quarters/locker) +"aXL" = (/obj/structure/table,/obj/item/clothing/head/soft/grey{pixel_x = -2; pixel_y = 3},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/crew_quarters/locker) +"aXM" = (/obj/structure/table,/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/crew_quarters/locker) +"aXN" = (/obj/structure/chair/stool{pixel_y = 8},/obj/effect/landmark/start{name = "Assistant"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/crew_quarters/locker) +"aXO" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,/turf/open/floor/plasteel,/area/crew_quarters/locker) +"aXP" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/crew_quarters/locker) +"aXQ" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/turf/open/floor/plasteel,/area/crew_quarters/locker) +"aXR" = (/obj/machinery/airalarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/obj/structure/closet/toolcloset,/turf/open/floor/plasteel,/area/storage/tools) +"aXS" = (/obj/structure/closet/toolcloset,/turf/open/floor/plasteel,/area/storage/tools) +"aXT" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/storage/tools) +"aXU" = (/obj/structure/reagent_dispensers/fueltank,/turf/open/floor/plasteel,/area/storage/tools) +"aXV" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"; pixel_y = 32},/obj/machinery/door/firedoor,/turf/open/floor/plasteel/blue/side{dir = 5},/area/hallway/primary/central) +"aXW" = (/obj/structure/grille,/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/bridge) +"aXX" = (/obj/structure/sign/securearea{pixel_x = 32; pixel_y = 0},/obj/machinery/door/firedoor,/obj/machinery/door/poddoor/preopen{id = "bridge blast"; name = "bridge blast door"},/turf/open/floor/plasteel/delivery{name = "floor"},/area/bridge) +"aXY" = (/obj/machinery/camera{c_tag = "Bridge West"; dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/open/floor/plasteel/red/corner{dir = 1},/area/bridge) +"aXZ" = (/obj/structure/chair{dir = 1; name = "Security Station"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/bridge) +"aYa" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/red/corner{dir = 4},/area/bridge) +"aYb" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/bridge) +"aYc" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel,/area/bridge) +"aYd" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/bridge) +"aYe" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/turf/open/floor/plasteel,/area/bridge) +"aYf" = (/obj/machinery/hologram/holopad,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/bridge) +"aYg" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/bridge) +"aYh" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/bridge) +"aYi" = (/obj/item/device/radio/beacon,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/bridge) +"aYj" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/bridge) +"aYk" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/brown/corner{dir = 1},/area/bridge) +"aYl" = (/obj/structure/chair{dir = 1; name = "Logistics Station"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/bridge) +"aYm" = (/obj/machinery/camera{c_tag = "Bridge East"; dir = 8},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/turf/open/floor/plasteel/brown/corner{dir = 4},/area/bridge) +"aYn" = (/obj/structure/sign/securearea{pixel_x = -32; pixel_y = 0},/obj/machinery/door/firedoor,/obj/machinery/door/poddoor/preopen{id = "bridge blast"; name = "bridge blast door"},/turf/open/floor/plasteel/delivery{name = "floor"},/area/bridge) +"aYo" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"; pixel_y = 32},/obj/machinery/door/firedoor,/turf/open/floor/plasteel/blue/side{dir = 9},/area/hallway/primary/central) +"aYp" = (/obj/machinery/camera{c_tag = "Bridge East Entrance"; dir = 2},/turf/open/floor/plasteel/blue/side{dir = 1},/area/hallway/primary/central) +"aYq" = (/obj/machinery/hologram/holopad,/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"aYr" = (/obj/structure/chair,/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"aYs" = (/obj/structure/table/reinforced,/obj/machinery/door/firedoor,/obj/item/weapon/reagent_containers/food/snacks/pie/cream,/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/kitchen) +"aYt" = (/obj/structure/table,/obj/item/weapon/reagent_containers/food/condiment/enzyme{layer = 5},/obj/item/stack/packageWrap,/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/kitchen) +"aYu" = (/obj/structure/table,/obj/item/weapon/storage/box/donkpockets{pixel_x = 3; pixel_y = 3},/obj/item/weapon/reagent_containers/glass/beaker{pixel_x = 5},/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/kitchen) +"aYv" = (/obj/structure/table,/obj/item/weapon/reagent_containers/food/condiment/saltshaker{pixel_x = -3; pixel_y = 0},/obj/item/weapon/reagent_containers/food/condiment/peppermill{pixel_x = 3},/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/kitchen) +"aYw" = (/obj/machinery/processor,/obj/machinery/firealarm{dir = 4; pixel_x = 24},/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/kitchen) +"aYx" = (/obj/machinery/light{dir = 8},/obj/machinery/hydroponics/constructable,/turf/open/floor/plasteel/black,/area/hydroponics) +"aYy" = (/obj/effect/landmark/start{name = "Botanist"},/turf/open/floor/plasteel,/area/hydroponics) +"aYz" = (/obj/machinery/hydroponics/constructable,/obj/machinery/light{dir = 4},/turf/open/floor/plasteel/black,/area/hydroponics) +"aYA" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aYB" = (/obj/structure/table/wood,/obj/item/weapon/paper,/turf/open/floor/wood,/area/library) +"aYC" = (/obj/structure/chair/comfy/black{dir = 8},/turf/open/floor/wood,/area/library) +"aYD" = (/obj/structure/table/wood,/obj/item/device/camera_film,/obj/item/device/camera_film,/turf/open/floor/wood,/area/library) +"aYE" = (/obj/structure/table/wood,/obj/item/weapon/pen/red,/obj/item/weapon/pen/blue{pixel_x = 5; pixel_y = 5},/turf/open/floor/wood,/area/library) +"aYF" = (/obj/structure/table/wood,/obj/item/weapon/paper_bin{pixel_x = 1; pixel_y = 9},/turf/open/floor/wood,/area/library) +"aYG" = (/obj/structure/chair/stool,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/chapel{dir = 8},/area/chapel/main) +"aYH" = (/obj/machinery/camera{c_tag = "Chapel South"; dir = 8; network = list("SS13")},/turf/open/floor/plasteel/black,/area/chapel/main) +"aYI" = (/obj/item/device/radio/intercom{pixel_x = -25},/turf/open/floor/plasteel/escape{dir = 8},/area/hallway/secondary/exit) +"aYJ" = (/turf/open/floor/plasteel/shuttle,/turf/closed/wall/shuttle/interior{icon_state = "swall_f9"},/area/shuttle/transport) +"aYK" = (/turf/open/floor/plasteel/shuttle,/area/shuttle/transport) +"aYL" = (/obj/machinery/computer/shuttle/ferry/request,/turf/open/floor/plasteel/shuttle,/area/shuttle/transport) +"aYM" = (/obj/structure/chair,/turf/open/floor/plasteel/shuttle,/area/shuttle/transport) +"aYN" = (/obj/structure/grille,/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 0},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/hallway/secondary/entry) +"aYO" = (/obj/machinery/camera{c_tag = "Vacant Office"; dir = 4; network = list("SS13")},/turf/open/floor/wood,/area/security/vacantoffice{name = "Vacant Office A"}) +"aYP" = (/obj/structure/table/wood,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/wood,/area/security/vacantoffice{name = "Vacant Office A"}) +"aYQ" = (/obj/structure/table/wood,/obj/item/device/flashlight/lamp,/turf/open/floor/wood,/area/security/vacantoffice{name = "Vacant Office A"}) +"aYR" = (/obj/structure/table/wood,/obj/item/device/flashlight/lamp/green,/turf/open/floor/wood,/area/security/vacantoffice{name = "Vacant Office A"}) +"aYS" = (/obj/structure/table/wood,/obj/item/weapon/pen/red,/turf/open/floor/wood,/area/security/vacantoffice{name = "Vacant Office A"}) +"aYT" = (/obj/structure/grille,/obj/structure/window{icon_state = "window"; dir = 8},/obj/structure/window,/turf/open/floor/plating,/area/maintenance/port) +"aYU" = (/obj/structure/grille,/obj/structure/window{icon_state = "window"; dir = 1},/turf/open/floor/plating,/area/maintenance/port) +"aYV" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plating,/area/maintenance/port) +"aYW" = (/obj/structure/closet/wardrobe/black,/obj/item/clothing/shoes/jackboots,/turf/open/floor/plasteel,/area/crew_quarters/locker) +"aYX" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/crew_quarters/locker) +"aYY" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/open/floor/plasteel,/area/crew_quarters/locker) +"aYZ" = (/obj/machinery/camera{c_tag = "Locker Room West"; dir = 1},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/crew_quarters/locker) +"aZa" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/crew_quarters/locker) +"aZb" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/crew_quarters/locker) +"aZc" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/crew_quarters/locker) +"aZd" = (/obj/structure/closet/secure_closet/personal,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/open/floor/plasteel,/area/crew_quarters/locker) +"aZe" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/floor/plating,/area/maintenance/port) +"aZf" = (/obj/machinery/power/apc{dir = 1; name = "Art Storage"; pixel_x = 0; pixel_y = 24},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/open/floor/plating,/area/storage/art) +"aZg" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/open/floor/plating,/area/maintenance/port) +"aZh" = (/obj/machinery/meter,/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/open/floor/plating,/area/maintenance/port) +"aZi" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/open/floor/plating,/area/maintenance/port) +"aZj" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plating,/area/maintenance/port) +"aZk" = (/obj/machinery/power/apc{dir = 1; name = "Port Emergency Storage APC"; pixel_y = 24},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/open/floor/plating,/area/storage/emergency2) +"aZl" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/open/floor/plating,/area/maintenance/port) +"aZm" = (/obj/structure/reagent_dispensers/fueltank,/turf/open/floor/plating,/area/maintenance/port) +"aZn" = (/turf/closed/wall,/area/security/detectives_office) +"aZo" = (/obj/machinery/door/firedoor,/turf/open/floor/plasteel/blue/side{dir = 4},/area/hallway/primary/central) +"aZp" = (/obj/structure/cable,/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/door/airlock/glass_command{name = "Bridge"; req_access_txt = "19"},/turf/open/floor/plasteel,/area/bridge) +"aZq" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/firedoor,/obj/machinery/door/poddoor/preopen{id = "bridge blast"; name = "bridge blast door"},/turf/open/floor/plasteel/delivery{name = "floor"},/area/bridge) +"aZr" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/airlock/glass_command{name = "Bridge"; req_access_txt = "19"},/turf/open/floor/plasteel,/area/bridge) +"aZs" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/bridge) +"aZt" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/turf/open/floor/plasteel,/area/bridge) +"aZu" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/bridge) +"aZv" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/blue/corner,/area/bridge) +"aZw" = (/obj/structure/extinguisher_cabinet{pixel_x = 5; pixel_y = -32},/obj/machinery/light,/obj/machinery/light_switch{pixel_x = -6; pixel_y = -22},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/blue/side{dir = 0},/area/bridge) +"aZx" = (/obj/structure/fireaxecabinet{pixel_y = -32},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/blue/side{dir = 0},/area/bridge) +"aZy" = (/obj/machinery/airalarm{dir = 1; icon_state = "alarm0"; pixel_y = -22},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/blue/side{dir = 0},/area/bridge) +"aZz" = (/obj/machinery/requests_console{announcementConsole = 1; department = "Bridge"; departmentType = 5; name = "Bridge RC"; pixel_y = -30},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/blue/side{dir = 0},/area/bridge) +"aZA" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/blue/side{dir = 0},/area/bridge) +"aZB" = (/obj/machinery/turretid{control_area = "AI Upload Chamber"; name = "AI Upload turret control"; pixel_y = -25},/obj/machinery/camera{c_tag = "Bridge Center"; dir = 1},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/open/floor/plasteel/blue/side{dir = 0},/area/bridge) +"aZC" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/blue/side{dir = 0},/area/bridge) +"aZD" = (/obj/machinery/newscaster{pixel_y = -32},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/blue/side{dir = 0},/area/bridge) +"aZE" = (/obj/machinery/power/apc{cell_type = 5000; dir = 2; name = "Bridge APC"; pixel_y = -24},/obj/structure/cable,/obj/machinery/light,/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/open/floor/plasteel/blue/side{dir = 0},/area/bridge) +"aZF" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/blue/corner{dir = 8},/area/bridge) +"aZG" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/open/floor/plasteel,/area/bridge) +"aZH" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/bridge) +"aZI" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/airlock/glass_command{name = "Bridge"; req_access_txt = "19"},/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel,/area/bridge) +"aZJ" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/firedoor,/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/door/poddoor/preopen{id = "bridge blast"; name = "bridge blast door"},/turf/open/floor/plasteel/delivery{name = "floor"},/area/bridge) +"aZK" = (/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/structure/cable,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/door/airlock/glass_command{name = "Bridge"; req_access_txt = "19"},/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel,/area/bridge) +"aZL" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/firedoor,/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel/blue/side{dir = 8},/area/hallway/primary/central) +"aZM" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/central) +"aZN" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/central) +"aZO" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/turf/open/floor/plasteel,/area/hallway/primary/central) +"aZP" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/obj/machinery/computer/security/telescreen/entertainment{pixel_x = -31},/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"aZQ" = (/obj/structure/table/wood/poker,/obj/item/clothing/mask/cigarette/cigar,/obj/item/toy/cards/deck,/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"aZR" = (/obj/structure/table,/obj/item/weapon/reagent_containers/food/condiment/peppermill{pixel_x = 5; pixel_y = -2},/obj/item/weapon/reagent_containers/food/condiment/saltshaker{pixel_x = -2; pixel_y = 2},/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"aZS" = (/obj/machinery/door/window/southright{name = "Bar Door"; req_access_txt = "0"; req_one_access_txt = "25;28"},/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"aZT" = (/obj/structure/table/reinforced,/obj/machinery/computer/security/telescreen/entertainment{pixel_x = 32},/obj/item/weapon/book/manual/barman_recipes,/obj/item/weapon/reagent_containers/glass/rag,/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"aZU" = (/obj/effect/landmark/start{name = "Cook"},/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/kitchen) +"aZV" = (/obj/structure/table,/obj/machinery/reagentgrinder,/obj/machinery/requests_console{department = "Kitchen"; departmentType = 2; pixel_x = 30; pixel_y = 0},/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/kitchen) +"aZW" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/sortjunction{dir = 2; icon_state = "pipe-j2s"; sortType = 16},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 8},/turf/open/floor/plasteel,/area/hallway/primary/starboard) +"aZX" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/airalarm{pixel_y = 25},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/starboard) +"aZY" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/starboard) +"aZZ" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass{name = "Library"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/carpet,/area/library) +"baa" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/carpet,/area/library) +"bab" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/carpet,/area/library) +"bac" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/carpet,/area/library) +"bad" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_Toxins = 0},/turf/open/floor/carpet,/area/library) +"bae" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass{name = "Chapel"},/turf/open/floor/carpet,/area/chapel/main) +"baf" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 5},/turf/open/floor/carpet,/area/chapel/main) +"bag" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/carpet,/area/chapel/main) +"bah" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/turf/open/floor/carpet,/area/chapel/main) +"bai" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass{name = "Chapel"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/carpet,/area/chapel/main) +"baj" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/escape{dir = 8},/area/hallway/secondary/exit) +"bak" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/hallway/secondary/exit) +"bal" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel,/area/hallway/secondary/exit) +"bam" = (/obj/machinery/atmospherics/pipe/manifold4w/scrubbers/hidden,/turf/open/floor/plasteel,/area/hallway/secondary/exit) +"ban" = (/obj/machinery/light{dir = 4; icon_state = "tube1"},/turf/open/floor/plasteel/warning{dir = 4},/area/hallway/secondary/exit) +"bao" = (/obj/machinery/door/airlock/shuttle,/turf/open/floor/plasteel/shuttle,/area/shuttle/transport) +"bap" = (/obj/machinery/door/airlock/shuttle,/obj/docking_port/mobile{dir = 8; dwidth = 2; height = 12; id = "ferry"; name = "ferry shuttle"; roundstart_move = "ferry_away"; travelDir = 180; width = 5},/obj/docking_port/stationary{dir = 8; dwidth = 2; height = 12; id = "ferry_home"; name = "port bay 2"; turf_type = /turf/open/space; width = 5},/turf/open/floor/plasteel/shuttle,/area/shuttle/transport) +"baq" = (/obj/machinery/door/airlock/external{id_tag = null; name = "Port Docking Bay 2"; req_access_txt = "0"},/turf/open/floor/plating,/area/hallway/secondary/entry) +"bar" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/obj/machinery/light_switch{pixel_x = -28; pixel_y = 0},/turf/open/floor/wood,/area/security/vacantoffice{name = "Vacant Office A"}) +"bas" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/open/floor/wood,/area/security/vacantoffice{name = "Vacant Office A"}) +"bat" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/carpet,/area/security/vacantoffice{name = "Vacant Office A"}) +"bau" = (/turf/open/floor/carpet,/area/security/vacantoffice{name = "Vacant Office A"}) +"bav" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/carpet,/area/security/vacantoffice{name = "Vacant Office A"}) +"baw" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/open/floor/wood,/area/security/vacantoffice{name = "Vacant Office A"}) +"bax" = (/obj/machinery/light{dir = 4},/obj/structure/filingcabinet/chestdrawer,/turf/open/floor/wood,/area/security/vacantoffice{name = "Vacant Office A"}) +"bay" = (/obj/machinery/portable_atmospherics/canister/air,/turf/open/floor/plating,/area/maintenance/port) +"baz" = (/turf/closed/wall,/area/crew_quarters/locker/locker_toilet) +"baA" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall,/area/crew_quarters/locker/locker_toilet) +"baB" = (/obj/machinery/door/airlock{name = "Unisex Restrooms"; req_access_txt = "0"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/freezer,/area/crew_quarters/locker/locker_toilet) +"baC" = (/obj/machinery/disposal/bin,/obj/structure/disposalpipe/trunk{dir = 4},/turf/open/floor/plasteel,/area/crew_quarters/locker) +"baD" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel,/area/crew_quarters/locker) +"baE" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/turf/open/floor/plasteel,/area/crew_quarters/locker) +"baF" = (/turf/open/floor/plasteel/warning/corner{dir = 2},/area/crew_quarters/locker) +"baG" = (/turf/open/floor/plasteel/warning{dir = 2},/area/crew_quarters/locker) +"baH" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/warning/corner{dir = 1},/area/crew_quarters/locker) +"baI" = (/obj/structure/closet/secure_closet/personal,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/crew_quarters/locker) +"baJ" = (/obj/machinery/power/apc{dir = 8; name = "Locker Room Maintenance APC"; pixel_x = -27; pixel_y = 2},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/cable{icon_state = "0-2"; pixel_y = 1; d2 = 2},/turf/open/floor/plating,/area/maintenance/port) +"baK" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/obj/structure/disposalpipe/segment{dir = 4},/turf/closed/wall,/area/maintenance/port) +"baL" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall,/area/maintenance/port) +"baM" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/closed/wall,/area/maintenance/port) +"baN" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,/turf/closed/wall,/area/maintenance/port) +"baO" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/obj/machinery/door/airlock/maintenance{name = "Cargo Bay Warehouse Maintenance"; req_access_txt = "31"},/turf/open/floor/plating,/area/maintenance/port) +"baP" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/light/small{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plating,/area/maintenance/port) +"baQ" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall,/area/security/detectives_office) +"baR" = (/obj/structure/closet/secure_closet/detective,/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/grimy,/area/security/detectives_office) +"baS" = (/obj/machinery/computer/med_data,/obj/machinery/newscaster{pixel_x = 0; pixel_y = 32},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/grimy,/area/security/detectives_office) +"baT" = (/obj/machinery/computer/secure_data,/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/turf/open/floor/plasteel/grimy,/area/security/detectives_office) +"baU" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/closed/wall,/area/security/detectives_office) +"baV" = (/obj/structure/table/wood,/obj/item/weapon/storage/box/evidence,/obj/item/weapon/hand_labeler{pixel_x = 5},/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel/grimy,/area/security/detectives_office) +"baW" = (/obj/structure/table/wood,/obj/item/device/taperecorder,/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/machinery/button/door{id = "datboidetective"; name = "Privacy Shutters"; pixel_x = 0; pixel_y = 24},/turf/open/floor/plasteel/grimy,/area/security/detectives_office) +"baX" = (/turf/open/floor/plasteel/blue/corner,/area/hallway/primary/central) +"baY" = (/obj/machinery/light,/turf/open/floor/plasteel/blue/side{dir = 0},/area/hallway/primary/central) +"baZ" = (/obj/machinery/camera{c_tag = "Bridge West Entrance"; dir = 1},/turf/open/floor/plasteel/blue/side{dir = 0},/area/hallway/primary/central) +"bba" = (/obj/machinery/door/firedoor,/turf/open/floor/plasteel/blue/side{dir = 6},/area/hallway/primary/central) +"bbb" = (/obj/structure/grille,/obj/structure/cable,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/bridge) +"bbc" = (/obj/machinery/door/firedoor,/obj/machinery/door/poddoor/preopen{id = "bridge blast"; name = "bridge blast door"},/turf/open/floor/plasteel/delivery{name = "floor"},/area/bridge) +"bbd" = (/obj/structure/closet/emcloset,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/blue/side{dir = 0},/area/bridge) +"bbe" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/blue/side{dir = 0},/area/bridge) +"bbf" = (/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -29},/turf/open/floor/plasteel/blue/side{dir = 0},/area/bridge) +"bbg" = (/obj/machinery/firealarm{dir = 1; pixel_y = -24},/obj/structure/table,/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/pen,/turf/open/floor/plasteel/blue/side{dir = 6},/area/bridge) +"bbh" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/closed/wall/r_wall,/area/turret_protected/ai_upload) +"bbi" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall/r_wall,/area/turret_protected/ai_upload) +"bbj" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/turf/closed/wall/r_wall,/area/turret_protected/ai_upload) +"bbk" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/firedoor,/obj/machinery/door/airlock/highsecurity{icon_state = "door_closed"; locked = 0; name = "AI Upload Access"; req_access_txt = "16"},/turf/open/floor/plasteel/black,/area/turret_protected/ai_upload) +"bbl" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/turf/closed/wall/r_wall,/area/turret_protected/ai_upload) +"bbm" = (/obj/machinery/ai_status_display,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/closed/wall/r_wall,/area/turret_protected/ai_upload) +"bbn" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/closed/wall/r_wall,/area/turret_protected/ai_upload) +"bbo" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/closed/wall/r_wall,/area/turret_protected/ai_upload) +"bbp" = (/obj/machinery/firealarm{dir = 1; pixel_y = -24},/obj/structure/filingcabinet/filingcabinet,/turf/open/floor/plasteel/blue/side{dir = 10},/area/bridge) +"bbq" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/blue/side{dir = 0},/area/bridge) +"bbr" = (/obj/machinery/door/firedoor,/turf/open/floor/plasteel/blue/side{dir = 10},/area/hallway/primary/central) +"bbs" = (/obj/machinery/power/apc{dir = 2; name = "Central Hall APC"; pixel_y = -24},/obj/structure/cable,/turf/open/floor/plasteel/blue/side{dir = 0},/area/hallway/primary/central) +"bbt" = (/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel/blue/corner{dir = 8},/area/hallway/primary/central) +"bbu" = (/obj/structure/chair{dir = 1},/obj/effect/landmark/start{name = "Assistant"},/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"bbv" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"bbw" = (/obj/structure/chair/stool/bar,/obj/effect/landmark/start{name = "Assistant"},/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"bbx" = (/obj/structure/chair/stool/bar,/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"bby" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock{name = "Kitchen"; req_access_txt = "28"},/turf/open/floor/plasteel/bar,/area/crew_quarters/kitchen) +"bbz" = (/obj/machinery/light_switch{pixel_y = -25},/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/kitchen) +"bbA" = (/obj/machinery/light,/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/kitchen) +"bbB" = (/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/kitchen) +"bbC" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/machinery/button/door{id = "kitchen"; name = "Kitchen Shutters Control"; pixel_x = -1; pixel_y = -24; req_access_txt = "28"},/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/kitchen) +"bbD" = (/obj/machinery/disposal/bin,/obj/structure/disposalpipe/trunk{dir = 8},/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/kitchen) +"bbE" = (/obj/structure/reagent_dispensers/watertank/high,/turf/open/floor/plasteel,/area/hydroponics) +"bbF" = (/obj/item/weapon/reagent_containers/glass/bucket,/turf/open/floor/plasteel,/area/hydroponics) +"bbG" = (/obj/machinery/hydroponics/constructable,/turf/open/floor/plasteel/green/side{dir = 1},/area/hydroponics) +"bbH" = (/obj/structure/chair/stool,/obj/effect/landmark/start{name = "Botanist"},/turf/open/floor/plasteel,/area/hydroponics) +"bbI" = (/obj/machinery/camera{c_tag = "Hydroponics South"; dir = 8; network = list("SS13")},/obj/structure/reagent_dispensers/watertank/high,/turf/open/floor/plasteel,/area/hydroponics) +"bbJ" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/closed/wall,/area/hydroponics) +"bbK" = (/obj/structure/disposalpipe/segment,/obj/machinery/light{dir = 8},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/hallway/primary/starboard) +"bbL" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/starboard) +"bbM" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass{name = "Library"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/carpet,/area/library) +"bbN" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/carpet,/area/library) +"bbO" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/carpet,/area/library) +"bbP" = (/obj/machinery/hologram/holopad,/turf/open/floor/carpet,/area/library) +"bbQ" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/turf/open/floor/carpet,/area/chapel/main) +"bbR" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/carpet,/area/chapel/main) +"bbS" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/open/floor/carpet,/area/chapel/main) +"bbT" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/carpet,/area/chapel/main) +"bbU" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass{name = "Chapel"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/carpet,/area/chapel/main) +"bbV" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/escape{dir = 8},/area/hallway/secondary/exit) +"bbW" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/hallway/secondary/exit) +"bbX" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/hallway/secondary/exit) +"bbY" = (/obj/machinery/hologram/holopad,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/hallway/secondary/exit) +"bbZ" = (/obj/machinery/camera{c_tag = "Escape Arm Airlocks"; dir = 8; network = list("SS13")},/turf/open/floor/plasteel/warning{dir = 4},/area/hallway/secondary/exit) +"bca" = (/obj/structure/shuttle/engine/propulsion{icon_state = "propulsion"; dir = 4},/turf/closed/wall/shuttle{icon_state = "swall_s5"; dir = 2},/area/shuttle/transport) +"bcb" = (/turf/open/floor/plasteel/shuttle,/turf/closed/wall/shuttle/interior{icon_state = "swall_f10"},/area/shuttle/transport) +"bcc" = (/obj/structure/closet/crate,/turf/open/floor/plasteel/shuttle,/area/shuttle/transport) +"bcd" = (/obj/structure/chair{dir = 1},/turf/open/floor/plasteel/shuttle,/area/shuttle/transport) +"bce" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/hallway/secondary/entry) +"bcf" = (/obj/machinery/door/airlock/engineering{name = "Vacant Office A"; req_access_txt = "32"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/wood,/area/security/vacantoffice{name = "Vacant Office A"}) +"bcg" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/wood,/area/security/vacantoffice{name = "Vacant Office A"}) +"bch" = (/obj/structure/chair/office/dark,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/wood,/area/security/vacantoffice{name = "Vacant Office A"}) +"bci" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/carpet,/area/security/vacantoffice{name = "Vacant Office A"}) +"bcj" = (/obj/structure/chair/office/dark,/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/open/floor/wood,/area/security/vacantoffice{name = "Vacant Office A"}) +"bck" = (/obj/machinery/light/small{dir = 8},/obj/machinery/atmospherics/components/unary/tank/air{dir = 4},/turf/open/floor/plating,/area/maintenance/port) +"bcl" = (/obj/machinery/meter,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/open/floor/plating,/area/maintenance/port) +"bcm" = (/obj/structure/toilet{pixel_y = 8},/obj/machinery/light/small{dir = 8},/turf/open/floor/plasteel/freezer,/area/crew_quarters/locker/locker_toilet) +"bcn" = (/obj/machinery/door/airlock{name = "Unit 1"},/turf/open/floor/plasteel/freezer,/area/crew_quarters/locker/locker_toilet) +"bco" = (/obj/machinery/light_switch{pixel_y = 28},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/freezer,/area/crew_quarters/locker/locker_toilet) +"bcp" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/freezer,/area/crew_quarters/locker/locker_toilet) +"bcq" = (/obj/structure/table,/obj/item/weapon/razor,/obj/structure/window{icon_state = "window"; dir = 1},/turf/open/floor/plasteel/barber,/area/crew_quarters/locker) +"bcr" = (/turf/open/floor/plasteel/barber,/area/crew_quarters/locker) +"bcs" = (/obj/structure/closet,/obj/item/clothing/under/suit_jacket/female{pixel_x = 3; pixel_y = 1},/obj/item/clothing/under/suit_jacket/really_black{pixel_x = -2; pixel_y = 0},/obj/structure/window{icon_state = "window"; dir = 1},/turf/open/floor/plasteel/barber,/area/crew_quarters/locker) +"bct" = (/obj/machinery/portable_atmospherics/pump,/turf/open/floor/plasteel/delivery,/area/crew_quarters/locker) +"bcu" = (/obj/machinery/portable_atmospherics/scrubber,/turf/open/floor/plasteel/delivery,/area/crew_quarters/locker) +"bcv" = (/obj/structure/window/reinforced{dir = 8},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/warning{dir = 8},/area/crew_quarters/locker) +"bcw" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/crew_quarters/locker) +"bcx" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plating,/area/maintenance/port) +"bcy" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall,/area/maintenance/port) +"bcz" = (/turf/open/floor/plasteel/floorgrime,/area/quartermaster/storage) +"bcA" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/floorgrime,/area/quartermaster/storage) +"bcB" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/floorgrime,/area/quartermaster/storage) +"bcC" = (/turf/closed/wall,/area/quartermaster/storage) +"bcD" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plating,/area/maintenance/port) +"bcE" = (/obj/machinery/light/small{dir = 8},/obj/structure/rack,/obj/item/weapon/storage/briefcase,/turf/open/floor/plasteel/grimy,/area/security/detectives_office) +"bcF" = (/turf/open/floor/carpet,/area/security/detectives_office) +"bcG" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/grimy,/area/security/detectives_office) +"bcH" = (/obj/machinery/firealarm{pixel_y = 24},/obj/machinery/camera{c_tag = "Detective's Office"; dir = 2},/turf/open/floor/plasteel/grimy,/area/security/detectives_office) +"bcI" = (/turf/open/floor/plasteel/grimy,/area/security/detectives_office) +"bcJ" = (/obj/machinery/light_switch{pixel_x = 27},/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel/grimy,/area/security/detectives_office) +"bcK" = (/obj/machinery/door/firedoor,/turf/open/floor/plasteel/blue/corner,/area/hallway/primary/central) +"bcL" = (/turf/closed/wall/r_wall,/area/bridge/meeting_room) +"bcM" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall,/area/bridge/meeting_room) +"bcN" = (/obj/machinery/door/airlock/command{name = "Conference Room"; req_access = null; req_access_txt = "19"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/wood,/area/bridge/meeting_room) +"bcO" = (/turf/closed/wall,/area/bridge/meeting_room) +"bcP" = (/obj/machinery/porta_turret/ai{dir = 4},/turf/open/floor/plasteel/black,/area/turret_protected/ai_upload) +"bcQ" = (/turf/open/floor/bluegrid,/area/turret_protected/ai_upload) +"bcR" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/black,/area/turret_protected/ai_upload) +"bcS" = (/obj/machinery/porta_turret/ai{dir = 8},/turf/open/floor/plasteel/black,/area/turret_protected/ai_upload) +"bcT" = (/turf/closed/wall/r_wall,/area/crew_quarters/captain) +"bcU" = (/obj/machinery/door/airlock/command{name = "Captain's Office"; req_access = null; req_access_txt = "20"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/wood,/area/crew_quarters/captain) +"bcV" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall/r_wall,/area/crew_quarters/captain) +"bcW" = (/obj/machinery/door/firedoor,/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel/blue/corner{dir = 8},/area/hallway/primary/central) +"bcX" = (/obj/machinery/computer/arcade,/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"bcY" = (/obj/machinery/vending/cigarette{pixel_x = 0; pixel_y = 0},/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"bcZ" = (/obj/machinery/newscaster{pixel_y = -28},/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"bda" = (/obj/machinery/light,/obj/machinery/firealarm{dir = 1; pixel_y = -24},/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"bdb" = (/obj/machinery/light,/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"bdc" = (/obj/machinery/camera{c_tag = "Bar South"; dir = 1},/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"bdd" = (/obj/structure/noticeboard{pixel_y = -27},/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"bde" = (/obj/structure/extinguisher_cabinet{pixel_x = 0; pixel_y = -30},/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"bdf" = (/obj/machinery/airalarm{dir = 1; icon_state = "alarm0"; pixel_y = -22},/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"bdg" = (/obj/machinery/light/small,/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"bdh" = (/obj/structure/table/reinforced,/obj/item/weapon/storage/fancy/donut_box,/obj/machinery/door/firedoor,/obj/machinery/door/poddoor/shutters/preopen{id = "kitchen"; name = "kitchen shutters"},/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/kitchen) +"bdi" = (/obj/structure/table/reinforced,/obj/machinery/door/firedoor,/obj/machinery/door/poddoor/shutters/preopen{id = "kitchen"; name = "kitchen shutters"},/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/kitchen) +"bdj" = (/obj/structure/sink{icon_state = "sink"; dir = 8; pixel_x = -12; pixel_y = 2},/obj/machinery/firealarm{dir = 8; pixel_x = -24},/turf/open/floor/plasteel,/area/hydroponics) +"bdk" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/effect/landmark/event_spawn,/turf/open/floor/plating,/area/hydroponics) +"bdl" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/hydroponics) +"bdm" = (/obj/structure/table/reinforced,/obj/machinery/door/firedoor,/obj/machinery/door/window/northleft{name = "Hydroponics Desk"; req_access_txt = "35"},/turf/open/floor/plasteel,/area/hydroponics) +"bdn" = (/obj/structure/table/reinforced,/obj/machinery/door/firedoor,/obj/machinery/door/window/westright{dir = 1; name = "Hydroponics Desk"; req_access_txt = "35"},/turf/open/floor/plasteel,/area/hydroponics) +"bdo" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/hallway/primary/starboard) +"bdp" = (/turf/open/floor/plasteel,/area/hallway/primary/starboard) +"bdq" = (/obj/structure/chair{dir = 8},/turf/open/floor/plasteel,/area/hallway/primary/starboard) +"bdr" = (/obj/machinery/vending/coffee,/turf/open/floor/wood,/area/library) +"bds" = (/obj/structure/chair/comfy/black{dir = 4},/obj/machinery/airalarm{dir = 1; icon_state = "alarm0"; pixel_y = -22},/turf/open/floor/wood,/area/library) +"bdt" = (/obj/structure/table/wood,/obj/item/weapon/pen,/turf/open/floor/wood,/area/library) +"bdu" = (/obj/structure/chair/comfy/black{dir = 4},/turf/open/floor/wood,/area/library) +"bdv" = (/obj/machinery/firealarm{dir = 1; pixel_y = -24},/turf/open/floor/wood,/area/library) +"bdw" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; external_pressure_bound = 101.325; on = 1; pressure_checks = 1},/turf/open/floor/plasteel/black,/area/chapel/main) +"bdx" = (/turf/open/floor/carpet{icon_state = "carpetsymbol"},/area/chapel/main) +"bdy" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/black,/area/chapel/main) +"bdz" = (/obj/machinery/power/apc{dir = 8; name = "Escape Hallway APC"; pixel_x = -25},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/open/floor/plasteel/escape{dir = 8},/area/hallway/secondary/exit) +"bdA" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/open/floor/plasteel,/area/hallway/secondary/exit) +"bdB" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/hallway/secondary/exit) +"bdC" = (/turf/closed/wall/shuttle{icon_state = "swall_s9"; dir = 2},/area/shuttle/transport) +"bdD" = (/obj/structure/closet/emcloset,/turf/open/floor/plasteel/warning{dir = 9},/area/hallway/secondary/entry) +"bdE" = (/obj/structure/extinguisher_cabinet{pixel_x = 27; pixel_y = 0},/obj/machinery/light{icon_state = "tube1"; dir = 4},/turf/open/floor/plasteel,/area/hallway/secondary/entry) +"bdF" = (/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -29},/turf/open/floor/wood,/area/security/vacantoffice{name = "Vacant Office A"}) +"bdG" = (/obj/structure/table/wood,/obj/item/weapon/folder/blue,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/wood,/area/security/vacantoffice{name = "Vacant Office A"}) +"bdH" = (/obj/machinery/atmospherics/components/unary/tank/air{dir = 4},/turf/open/floor/plating,/area/maintenance/port) +"bdI" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/port) +"bdJ" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/power/apc{dir = 4; name = "Locker Restrooms APC"; pixel_x = 27; pixel_y = 2},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/open/floor/plating,/area/crew_quarters/locker/locker_toilet) +"bdK" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/freezer,/area/crew_quarters/locker/locker_toilet) +"bdL" = (/obj/structure/sink{dir = 4; icon_state = "sink"; pixel_x = 11; pixel_y = 0},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; external_pressure_bound = 101.325; on = 1; pressure_checks = 1},/turf/open/floor/plasteel/freezer,/area/crew_quarters/locker/locker_toilet) +"bdM" = (/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel/barber,/area/crew_quarters/locker) +"bdN" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/stack/sheet/cardboard,/obj/item/stack/rods{amount = 50},/turf/open/floor/plasteel/floorgrime,/area/quartermaster/storage) +"bdO" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/weapon/electronics/apc,/obj/item/weapon/stock_parts/cell{maxcharge = 2000},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/floorgrime,/area/quartermaster/storage) +"bdP" = (/obj/effect/landmark/event_spawn,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/floorgrime,/area/quartermaster/storage) +"bdQ" = (/obj/item/weapon/storage/secure/safe{pixel_x = -23},/turf/open/floor/plasteel/grimy,/area/security/detectives_office) +"bdR" = (/obj/structure/chair/comfy/brown,/obj/effect/landmark/start{name = "Detective"},/turf/open/floor/carpet,/area/security/detectives_office) +"bdS" = (/obj/structure/table/wood,/obj/item/device/camera/detective,/turf/open/floor/carpet,/area/security/detectives_office) +"bdT" = (/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel/grimy,/area/security/detectives_office) +"bdU" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_security{name = "Detective's Office"; req_access_txt = "4"},/turf/open/floor/plasteel/grimy,/area/security/detectives_office) +"bdV" = (/obj/machinery/photocopier,/turf/open/floor/wood,/area/bridge/meeting_room) +"bdW" = (/obj/machinery/button/door{id = "heads_meeting"; name = "Security Shutters"; pixel_x = 0; pixel_y = 24},/turf/open/floor/wood,/area/bridge/meeting_room) +"bdX" = (/obj/machinery/newscaster{pixel_y = 32},/turf/open/floor/wood,/area/bridge/meeting_room) +"bdY" = (/obj/machinery/camera{c_tag = "Conference Room"; dir = 2},/turf/open/floor/wood,/area/bridge/meeting_room) +"bdZ" = (/turf/open/floor/wood,/area/bridge/meeting_room) +"bea" = (/obj/machinery/light_switch{pixel_y = 28},/obj/machinery/light{dir = 1},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/wood,/area/bridge/meeting_room) +"beb" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/wood,/area/bridge/meeting_room) +"bec" = (/obj/machinery/disposal/bin,/obj/structure/disposalpipe/trunk{dir = 8},/turf/open/floor/wood,/area/bridge/meeting_room) +"bed" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall/r_wall,/area/turret_protected/ai_upload) +"bee" = (/obj/structure/table,/obj/item/weapon/aiModule/reset,/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/open/floor/plasteel/black,/area/turret_protected/ai_upload) +"bef" = (/turf/open/floor/plasteel/black,/area/turret_protected/ai_upload) +"beg" = (/obj/structure/table,/obj/item/weapon/folder/blue,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel/black,/area/turret_protected/ai_upload) +"beh" = (/obj/structure/table,/obj/machinery/light{dir = 4},/turf/open/floor/plasteel/black,/area/turret_protected/ai_upload) +"bei" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/closed/wall/r_wall,/area/turret_protected/ai_upload) +"bej" = (/obj/machinery/disposal/bin,/obj/structure/disposalpipe/trunk{dir = 4},/turf/open/floor/wood,/area/crew_quarters/captain) +"bek" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/open/floor/wood,/area/crew_quarters/captain) +"bel" = (/obj/machinery/light_switch{pixel_y = 28},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/wood,/area/crew_quarters/captain) +"bem" = (/obj/machinery/ai_status_display{pixel_y = 32},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/carpet,/area/crew_quarters/captain) +"ben" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/computer/security/telescreen/entertainment{pixel_x = 0; pixel_y = 32},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/carpet,/area/crew_quarters/captain) +"beo" = (/obj/machinery/status_display{pixel_x = 0; pixel_y = 32},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/floor/carpet,/area/crew_quarters/captain) +"bep" = (/obj/machinery/power/apc{cell_type = 2500; dir = 1; name = "Captain's Office APC"; pixel_y = 24},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/open/floor/wood,/area/crew_quarters/captain) +"beq" = (/turf/open/floor/wood,/area/crew_quarters/captain) +"ber" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass{name = "Diner"},/turf/open/floor/plasteel,/area/crew_quarters/bar) +"bes" = (/obj/structure/sign/barsign,/turf/closed/wall,/area/crew_quarters/bar) +"bet" = (/turf/open/floor/plasteel/white/corner{dir = 1},/area/hallway/primary/starboard) +"beu" = (/obj/machinery/camera{c_tag = "Starboard Primary Hallway 2"; dir = 2; network = list("SS13")},/turf/open/floor/plasteel/white/corner{dir = 1},/area/hallway/primary/starboard) +"bev" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass{name = "Hydroponics"; req_access_txt = "35"},/turf/open/floor/plasteel,/area/hydroponics) +"bew" = (/obj/structure/grille,/obj/structure/window/fulltile,/turf/open/floor/plating,/area/library) +"bex" = (/obj/structure/grille,/obj/structure/window/fulltile,/turf/open/floor/plating,/area/chapel/main) +"bey" = (/obj/machinery/firealarm{dir = 8; pixel_x = -24},/turf/open/floor/plasteel/escape{dir = 8},/area/hallway/secondary/exit) +"bez" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/hallway/secondary/exit) +"beA" = (/obj/machinery/door/airlock/shuttle{name = "Emergency Shuttle Airlock"},/turf/open/floor/plating,/area/shuttle/escape) +"beB" = (/obj/structure/extinguisher_cabinet{pixel_x = 0; pixel_y = -30},/turf/open/floor/plasteel/shuttle,/area/shuttle/escape) +"beC" = (/obj/machinery/power/apc{dir = 8; name = "Vacant Office A APC"; pixel_x = -24; pixel_y = 0},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/open/floor/plating,/area/security/vacantoffice{name = "Vacant Office A"}) +"beD" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/port) +"beE" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/open/floor/plating,/area/maintenance/port) +"beF" = (/obj/machinery/door/airlock{name = "Unit 2"},/turf/open/floor/plasteel/freezer,/area/crew_quarters/locker/locker_toilet) +"beG" = (/obj/structure/sink{dir = 4; icon_state = "sink"; pixel_x = 11; pixel_y = 0},/obj/structure/mirror{pixel_x = 28},/turf/open/floor/plasteel/freezer,/area/crew_quarters/locker/locker_toilet) +"beH" = (/obj/machinery/washing_machine,/turf/open/floor/plasteel/barber,/area/crew_quarters/locker) +"beI" = (/obj/machinery/washing_machine,/obj/machinery/light,/turf/open/floor/plasteel/barber,/area/crew_quarters/locker) +"beJ" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/closet/crate,/turf/open/floor/plasteel/floorgrime,/area/quartermaster/storage) +"beK" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/floorgrime,/area/quartermaster/storage) +"beL" = (/obj/structure/closet/crate,/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/floorgrime,/area/quartermaster/storage) +"beM" = (/obj/machinery/door/airlock/maintenance{name = "Detective Maintenance"; req_access_txt = "4"},/turf/open/floor/plating,/area/security/detectives_office) +"beN" = (/obj/structure/table/wood,/obj/item/weapon/reagent_containers/food/drinks/bottle/whiskey{pixel_x = 3},/obj/item/weapon/lighter,/turf/open/floor/carpet,/area/security/detectives_office) +"beO" = (/obj/structure/table/wood,/obj/machinery/computer/security/wooden_tv,/turf/open/floor/carpet,/area/security/detectives_office) +"beP" = (/obj/structure/table/wood,/obj/item/weapon/storage/fancy/cigarettes,/obj/item/clothing/glasses/sunglasses,/turf/open/floor/carpet,/area/security/detectives_office) +"beQ" = (/obj/structure/table/wood,/obj/item/device/flashlight/lamp/green,/turf/open/floor/carpet,/area/security/detectives_office) +"beR" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/machinery/door/poddoor/preopen{id = "datboidetective"; layer = 2.9; name = "privacy shutters"},/turf/open/floor/plating,/area/security/detectives_office) +"beS" = (/obj/structure/grille,/obj/machinery/door/poddoor/preopen{id = "heads_meeting"; layer = 2.9; name = "privacy shutters"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/bridge/meeting_room) +"beT" = (/obj/machinery/recharger{pixel_y = 4},/obj/structure/table,/turf/open/floor/wood,/area/bridge/meeting_room) +"beU" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/carpet,/area/bridge/meeting_room) +"beV" = (/obj/structure/chair/comfy/black,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/carpet,/area/bridge/meeting_room) +"beW" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/carpet,/area/bridge/meeting_room) +"beX" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/turf/open/floor/wood,/area/bridge/meeting_room) +"beY" = (/obj/machinery/vending/snack,/turf/open/floor/wood,/area/bridge/meeting_room) +"beZ" = (/obj/structure/table,/obj/item/weapon/aiModule/supplied/quarantine,/obj/machinery/camera/motion{dir = 4},/turf/open/floor/plasteel/black,/area/turret_protected/ai_upload) +"bfa" = (/obj/machinery/hologram/holopad,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/black,/area/turret_protected/ai_upload) +"bfb" = (/obj/structure/table,/obj/item/weapon/aiModule/supplied/freeform,/obj/structure/sign/kiddieplaque{pixel_x = 32},/obj/machinery/camera/motion{dir = 8},/turf/open/floor/plasteel/black,/area/turret_protected/ai_upload) +"bfc" = (/obj/machinery/vending/cigarette,/turf/open/floor/wood,/area/crew_quarters/captain) +"bfd" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/wood,/area/crew_quarters/captain) +"bfe" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/wood,/area/crew_quarters/captain) +"bff" = (/obj/structure/chair/comfy/brown{dir = 4},/turf/open/floor/carpet,/area/crew_quarters/captain) +"bfg" = (/obj/structure/table/wood,/obj/item/weapon/storage/fancy/donut_box,/turf/open/floor/carpet,/area/crew_quarters/captain) +"bfh" = (/obj/structure/chair/comfy/brown{dir = 8},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/carpet,/area/crew_quarters/captain) +"bfi" = (/obj/structure/displaycase/captain,/turf/open/floor/wood,/area/crew_quarters/captain) +"bfj" = (/obj/machinery/navbeacon{codes_txt = "patrol;next_patrol=Dorm"; location = "HOP2"},/turf/open/floor/plasteel,/area/hallway/primary/central) +"bfk" = (/obj/structure/sign/directions/evac{dir = 4; icon_state = "direction_evac"; pixel_x = 32; pixel_y = 28},/obj/structure/sign/directions/security{dir = 1; icon_state = "direction_sec"; pixel_x = 32; pixel_y = 36},/turf/open/floor/plasteel,/area/hallway/primary/central) +"bfl" = (/obj/machinery/door/firedoor,/turf/open/floor/plasteel,/area/hallway/primary/starboard) +"bfm" = (/obj/machinery/camera{c_tag = "Starboard Primary Hallway"; dir = 2; network = list("SS13")},/turf/open/floor/plasteel,/area/hallway/primary/starboard) +"bfn" = (/obj/machinery/firealarm{dir = 2; pixel_y = 24},/turf/open/floor/plasteel,/area/hallway/primary/starboard) +"bfo" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/turf/open/floor/plasteel,/area/hallway/primary/starboard) +"bfp" = (/obj/machinery/status_display{layer = 4; pixel_x = 0; pixel_y = 32},/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/open/floor/plasteel,/area/hallway/primary/starboard) +"bfq" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/starboard) +"bfr" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/plasteel,/area/hallway/primary/starboard) +"bfs" = (/obj/structure/extinguisher_cabinet{pixel_x = -5; pixel_y = 30},/turf/open/floor/plasteel,/area/hallway/primary/starboard) +"bft" = (/obj/machinery/camera{c_tag = "Starboard Primary Hallway 5"; dir = 2; network = list("SS13")},/turf/open/floor/plasteel,/area/hallway/primary/starboard) +"bfu" = (/obj/machinery/door/firedoor,/turf/open/floor/plasteel/white/corner{dir = 4},/area/hallway/secondary/exit) +"bfv" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/open/floor/plasteel,/area/hallway/secondary/exit) +"bfw" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/hallway/secondary/exit) +"bfx" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/plasteel,/area/hallway/secondary/exit) +"bfy" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 32; pixel_y = 0},/turf/open/floor/plasteel/warning{dir = 4},/area/hallway/secondary/exit) +"bfz" = (/obj/machinery/door/airlock/shuttle{name = "Emergency Shuttle Cargo"},/turf/open/floor/plasteel/shuttle,/area/shuttle/escape) +"bfA" = (/obj/machinery/status_display,/turf/closed/wall/shuttle{icon_state = "swall14"; dir = 2},/area/shuttle/escape) +"bfB" = (/obj/machinery/door/airlock/glass{name = "Emergency Shuttle Infirmary"},/turf/open/floor/plasteel/shuttle,/area/shuttle/escape) +"bfC" = (/turf/closed/wall/shuttle{icon_state = "swall11"; dir = 2},/area/shuttle/escape) +"bfD" = (/obj/machinery/light{dir = 1},/turf/open/floor/plasteel/arrival{dir = 1},/area/hallway/secondary/entry) +"bfE" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/plasteel/blue/corner{dir = 1},/area/hallway/secondary/entry) +"bfF" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/hallway/secondary/entry) +"bfG" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/port) +"bfH" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/port) +"bfI" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/open/floor/plating,/area/maintenance/port) +"bfJ" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/port) +"bfK" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/open/floor/plating,/area/maintenance/port) +"bfL" = (/obj/effect/landmark{name = "blobstart"},/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/port) +"bfM" = (/obj/structure/closet/emcloset,/turf/open/floor/plating,/area/maintenance/port) +"bfN" = (/obj/structure/rack{dir = 4},/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/port) +"bfO" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/port) +"bfP" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/disposalpipe/junction{icon_state = "pipe-j2"; dir = 1},/turf/open/floor/plating,/area/maintenance/port) +"bfQ" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/freezer,/area/crew_quarters/locker/locker_toilet) +"bfR" = (/obj/structure/sink{dir = 4; icon_state = "sink"; pixel_x = 11; pixel_y = 0},/turf/open/floor/plasteel/freezer,/area/crew_quarters/locker/locker_toilet) +"bfS" = (/obj/structure/window/reinforced{dir = 8},/obj/machinery/light,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/warning{dir = 8},/area/crew_quarters/locker) +"bfT" = (/obj/machinery/camera{c_tag = "Locker Room South"; dir = 8; network = list("SS13")},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/crew_quarters/locker) +"bfU" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/obj/structure/closet/crate/freezer,/turf/open/floor/plasteel/floorgrime,/area/quartermaster/storage) +"bfV" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/floorgrime,/area/quartermaster/storage) +"bfW" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/light/small{dir = 4},/turf/open/floor/plasteel/floorgrime,/area/quartermaster/storage) +"bfX" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/closed/wall,/area/quartermaster/storage) +"bfY" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/power/apc{dir = 4; name = "Detective's Office APC"; pixel_x = 24; pixel_y = 0},/obj/structure/cable,/turf/open/floor/plating,/area/maintenance/port) +"bfZ" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/closed/wall,/area/security/detectives_office) +"bga" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/grimy,/area/security/detectives_office) +"bgb" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/plasteel/grimy,/area/security/detectives_office) +"bgc" = (/obj/machinery/light/small,/turf/open/floor/plasteel/grimy,/area/security/detectives_office) +"bgd" = (/obj/machinery/airalarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/structure/filingcabinet,/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel/grimy,/area/security/detectives_office) +"bge" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/open/floor/plasteel,/area/hallway/primary/central) +"bgf" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/machinery/door/poddoor/preopen{id = "heads_meeting"; layer = 2.9; name = "privacy shutters"},/turf/open/floor/plating,/area/bridge/meeting_room) +"bgg" = (/obj/item/weapon/hand_labeler,/obj/item/device/assembly/timer,/obj/structure/table,/turf/open/floor/wood,/area/bridge/meeting_room) +"bgh" = (/obj/structure/chair/comfy/black{dir = 4},/turf/open/floor/carpet,/area/bridge/meeting_room) +"bgi" = (/obj/structure/table/wood,/obj/item/device/radio/intercom{dir = 8; freerange = 1; name = "Station Intercom (Command)"; pixel_x = 0},/turf/open/floor/carpet,/area/bridge/meeting_room) +"bgj" = (/obj/item/weapon/book/manual/wiki/security_space_law,/obj/structure/table/wood,/turf/open/floor/carpet,/area/bridge/meeting_room) +"bgk" = (/obj/structure/chair/comfy/black{dir = 8},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/carpet,/area/bridge/meeting_room) +"bgl" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/wood,/area/bridge/meeting_room) +"bgm" = (/obj/machinery/vending/cola,/turf/open/floor/wood,/area/bridge/meeting_room) +"bgn" = (/obj/machinery/airalarm{dir = 4; pixel_x = -23; pixel_y = 0},/obj/machinery/porta_turret/ai{dir = 4},/turf/open/floor/plasteel/black,/area/turret_protected/ai_upload) +"bgo" = (/turf/open/floor/plasteel/vault{dir = 8},/area/turret_protected/ai_upload) +"bgp" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/bluegrid,/area/turret_protected/ai_upload) +"bgq" = (/obj/machinery/computer/arcade,/turf/open/floor/wood,/area/crew_quarters/captain) +"bgr" = (/obj/structure/table/wood,/turf/open/floor/carpet,/area/crew_quarters/captain) +"bgs" = (/obj/machinery/camera{c_tag = "Central Hallway East"; dir = 4; network = list("SS13")},/obj/structure/disposalpipe/segment,/obj/machinery/status_display{density = 0; layer = 3; pixel_x = -32; pixel_y = 0},/turf/open/floor/plasteel/blue/corner{dir = 8},/area/hallway/primary/central) +"bgt" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/hallway/primary/starboard) +"bgu" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/plasteel,/area/hallway/primary/starboard) +"bgv" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/open/floor/plasteel,/area/hallway/primary/starboard) +"bgw" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/hallway/primary/starboard) +"bgx" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/starboard) +"bgy" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/turf/open/floor/plasteel,/area/hallway/primary/starboard) +"bgz" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/junction{dir = 8; icon_state = "pipe-j1"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/turf/open/floor/plasteel,/area/hallway/primary/starboard) +"bgA" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/starboard) +"bgB" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel,/area/hallway/primary/starboard) +"bgC" = (/obj/machinery/navbeacon{codes_txt = "patrol;next_patrol=HOP2"; location = "Stbd"},/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/starboard) +"bgD" = (/obj/machinery/door/firedoor,/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/starboard) +"bgE" = (/obj/machinery/door/firedoor,/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel,/area/hallway/secondary/exit) +"bgF" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel,/area/hallway/secondary/exit) +"bgG" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/hallway/secondary/exit) +"bgH" = (/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel,/area/hallway/secondary/exit) +"bgI" = (/obj/machinery/door/airlock/external{name = "Cargo Escape Airlock"},/turf/open/floor/plating,/area/hallway/secondary/exit) +"bgJ" = (/obj/machinery/light/small,/turf/open/floor/plating,/area/hallway/secondary/exit) +"bgK" = (/turf/open/floor/plasteel/shuttle/yellow,/area/shuttle/escape) +"bgL" = (/obj/structure/extinguisher_cabinet{pixel_x = 27; pixel_y = 0},/turf/open/floor/plasteel/shuttle/yellow,/area/shuttle/escape) +"bgM" = (/obj/machinery/sleeper{icon_state = "sleeper-open"; dir = 8},/turf/open/floor/plasteel/shuttle/white,/area/shuttle/escape) +"bgN" = (/turf/closed/wall,/area/maintenance/disposal) +"bgO" = (/obj/structure/disposalpipe/segment,/turf/closed/wall,/area/maintenance/disposal) +"bgP" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/closed/wall,/area/maintenance/disposal) +"bgQ" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/port) +"bgR" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/port) +"bgS" = (/obj/machinery/door/airlock{name = "Unit 3"},/turf/open/floor/plasteel/freezer,/area/crew_quarters/locker/locker_toilet) +"bgT" = (/obj/effect/landmark{name = "xeno_spawn"; pixel_x = -1},/turf/open/floor/plasteel/freezer,/area/crew_quarters/locker/locker_toilet) +"bgU" = (/obj/item/latexballon,/turf/open/floor/plating,/area/maintenance/port) +"bgV" = (/obj/effect/landmark{name = "blobstart"},/obj/item/clothing/suit/ianshirt,/obj/structure/closet,/turf/open/floor/plating,/area/maintenance/port) +"bgW" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall,/area/crew_quarters/locker) +"bgX" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/port) +"bgY" = (/obj/structure/closet/crate/internals,/turf/open/floor/plasteel/floorgrime,/area/quartermaster/storage) +"bgZ" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/open/floor/plasteel/floorgrime,/area/quartermaster/storage) +"bha" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/plasteel/floorgrime,/area/quartermaster/storage) +"bhb" = (/obj/structure/closet/crate,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/floorgrime,/area/quartermaster/storage) +"bhc" = (/obj/structure/disposalpipe/segment,/turf/closed/wall,/area/security/detectives_office) +"bhd" = (/obj/machinery/firealarm{dir = 8; pixel_x = -24},/turf/open/floor/plasteel,/area/hallway/primary/central) +"bhe" = (/obj/item/weapon/storage/fancy/donut_box,/obj/structure/table,/turf/open/floor/wood,/area/bridge/meeting_room) +"bhf" = (/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/pen,/obj/structure/table/wood,/turf/open/floor/carpet,/area/bridge/meeting_room) +"bhg" = (/obj/item/weapon/folder/blue,/obj/structure/table/wood,/turf/open/floor/carpet,/area/bridge/meeting_room) +"bhh" = (/obj/structure/table,/obj/item/weapon/aiModule/core/full/asimov,/obj/item/weapon/aiModule/core/freeformcore,/obj/machinery/door/window{base_state = "right"; dir = 4; icon_state = "right"; name = "Core Modules"; req_access_txt = "20"},/obj/structure/window/reinforced,/obj/item/weapon/aiModule/core/full/corp,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/item/weapon/aiModule/core/full/custom,/turf/open/floor/plasteel/black,/area/turret_protected/ai_upload) +"bhi" = (/obj/machinery/light,/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/black,/area/turret_protected/ai_upload) +"bhj" = (/obj/machinery/computer/upload/ai,/obj/machinery/flasher{id = "AI"; pixel_x = 0; pixel_y = -21},/turf/open/floor/bluegrid,/area/turret_protected/ai_upload) +"bhk" = (/obj/machinery/power/apc{cell_type = 5000; dir = 2; name = "Upload APC"; pixel_y = -24},/obj/structure/cable,/turf/open/floor/bluegrid,/area/turret_protected/ai_upload) +"bhl" = (/obj/machinery/computer/upload/borg,/obj/item/device/radio/intercom{broadcasting = 1; frequency = 1447; listening = 0; name = "Station Intercom (AI Private)"; pixel_y = -29},/turf/open/floor/bluegrid,/area/turret_protected/ai_upload) +"bhm" = (/obj/machinery/light,/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/turf/open/floor/plasteel/black,/area/turret_protected/ai_upload) +"bhn" = (/obj/structure/table,/obj/item/weapon/aiModule/supplied/oxygen,/obj/item/weapon/aiModule/zeroth/oneHuman,/obj/machinery/door/window{base_state = "left"; dir = 8; icon_state = "left"; name = "High-Risk Modules"; req_access_txt = "20"},/obj/item/weapon/aiModule/reset/purge,/obj/structure/window/reinforced,/obj/item/weapon/aiModule/core/full/antimov,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/item/weapon/aiModule/supplied/protectStation,/turf/open/floor/plasteel/black,/area/turret_protected/ai_upload) +"bho" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/open/floor/wood,/area/crew_quarters/captain) +"bhp" = (/obj/structure/chair,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/wood,/area/crew_quarters/captain) +"bhq" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 8},/turf/open/floor/wood,/area/crew_quarters/captain) +"bhr" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/carpet,/area/crew_quarters/captain) +"bhs" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/carpet,/area/crew_quarters/captain) +"bht" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/carpet,/area/crew_quarters/captain) +"bhu" = (/obj/structure/table/wood,/obj/machinery/camera{c_tag = "Captain's Office"; dir = 8},/obj/item/weapon/storage/lockbox/medal{pixel_y = 0},/turf/open/floor/wood,/area/crew_quarters/captain) +"bhv" = (/obj/structure/disposalpipe/segment,/obj/machinery/light{dir = 8},/turf/open/floor/plasteel/blue/corner{dir = 8},/area/hallway/primary/central) +"bhw" = (/obj/machinery/navbeacon{codes_txt = "patrol;next_patrol=Stbd"; location = "HOP"},/turf/open/floor/plasteel,/area/hallway/primary/central) +"bhx" = (/obj/structure/sign/directions/medical{dir = 4; icon_state = "direction_med"; pixel_x = 32; pixel_y = -24},/obj/structure/sign/directions/science{dir = 4; icon_state = "direction_sci"; pixel_x = 32; pixel_y = -32},/obj/structure/sign/directions/engineering{pixel_x = 32; pixel_y = -40},/turf/open/floor/plasteel,/area/hallway/primary/central) +"bhy" = (/obj/structure/extinguisher_cabinet{pixel_x = 0; pixel_y = -30},/turf/open/floor/plasteel,/area/hallway/primary/starboard) +"bhz" = (/obj/machinery/light,/turf/open/floor/plasteel/blue/corner,/area/hallway/primary/starboard) +"bhA" = (/turf/open/floor/plasteel/blue/side{dir = 0},/area/hallway/primary/starboard) +"bhB" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/blue/side{dir = 0},/area/hallway/primary/starboard) +"bhC" = (/obj/machinery/light,/turf/open/floor/plasteel/blue/corner{dir = 8},/area/hallway/primary/starboard) +"bhD" = (/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel,/area/hallway/primary/starboard) +"bhE" = (/obj/structure/extinguisher_cabinet{pixel_x = 0; pixel_y = -30},/obj/machinery/light,/turf/open/floor/plasteel/white/corner{dir = 2},/area/hallway/primary/starboard) +"bhF" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/white/side{dir = 2},/area/hallway/primary/starboard) +"bhG" = (/turf/open/floor/plasteel/white/corner{dir = 8},/area/hallway/primary/starboard) +"bhH" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/floor/plasteel,/area/hallway/primary/starboard) +"bhI" = (/obj/machinery/camera{c_tag = "Starboard Primary Hallway 3"; dir = 1},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/open/floor/plasteel,/area/hallway/primary/starboard) +"bhJ" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/hallway/primary/starboard) +"bhK" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/hallway/primary/starboard) +"bhL" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/open/floor/plasteel,/area/hallway/primary/starboard) +"bhM" = (/obj/machinery/light,/turf/open/floor/plasteel,/area/hallway/primary/starboard) +"bhN" = (/obj/machinery/camera{c_tag = "Starboard Primary Hallway 4"; dir = 1},/turf/open/floor/plasteel,/area/hallway/primary/starboard) +"bhO" = (/obj/machinery/door/firedoor,/turf/open/floor/plasteel/red/corner{dir = 2},/area/hallway/secondary/exit) +"bhP" = (/obj/structure/extinguisher_cabinet{pixel_x = 5; pixel_y = -32},/turf/open/floor/plasteel/escape{dir = 2},/area/hallway/secondary/exit) +"bhQ" = (/obj/machinery/newscaster{pixel_y = -32},/obj/machinery/light,/turf/open/floor/plasteel/escape{dir = 2},/area/hallway/secondary/exit) +"bhR" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/white/corner{dir = 8},/area/hallway/secondary/exit) +"bhS" = (/obj/structure/table,/obj/item/weapon/storage/firstaid/fire,/obj/item/weapon/storage/firstaid/regular{pixel_x = 2; pixel_y = 3},/obj/item/weapon/crowbar,/obj/structure/extinguisher_cabinet{pixel_x = 27; pixel_y = 0},/turf/open/floor/plasteel/shuttle/white,/area/shuttle/escape) +"bhT" = (/obj/machinery/door/airlock/external{name = "Port Docking Bay 4"; req_access_txt = "0"},/turf/open/floor/plating,/area/hallway/secondary/entry) +"bhU" = (/obj/machinery/door/airlock/external{name = "Port Docking Bay 3"; req_access_txt = "0"},/turf/open/floor/plating,/area/hallway/secondary/entry) +"bhV" = (/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -29},/obj/structure/chair{dir = 1},/turf/open/floor/plasteel/warning,/area/hallway/secondary/entry) +"bhW" = (/obj/structure/chair{dir = 1},/turf/open/floor/plasteel/warning,/area/hallway/secondary/entry) +"bhX" = (/obj/structure/disposaloutlet{dir = 4},/obj/structure/disposalpipe/trunk{dir = 1},/turf/open/floor/plating/warnplate{dir = 4},/area/maintenance/disposal) +"bhY" = (/obj/machinery/conveyor{dir = 8; id = "garbage"},/turf/open/floor/plating,/area/maintenance/disposal) +"bhZ" = (/obj/machinery/conveyor{dir = 8; id = "garbage"},/obj/machinery/light/small{dir = 1},/turf/open/floor/plating,/area/maintenance/disposal) +"bia" = (/obj/machinery/conveyor{dir = 8; id = "garbage"},/obj/machinery/recycler,/obj/structure/sign/securearea{name = "\improper STAY CLEAR HEAVY MACHINERY"; pixel_y = 32},/turf/open/floor/plating,/area/maintenance/disposal) +"bib" = (/obj/machinery/conveyor{dir = 6; id = "garbage"; verted = 1},/turf/open/floor/plating,/area/maintenance/disposal) +"bic" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 5},/turf/open/floor/plating,/area/maintenance/port) +"bid" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/port) +"bie" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/port) +"bif" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/port) +"big" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/disposalpipe/sortjunction{dir = 1; icon_state = "pipe-j2s"; sortType = 1},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/turf/open/floor/plating,/area/maintenance/port) +"bih" = (/turf/open/floor/plasteel/freezer,/area/crew_quarters/locker/locker_toilet) +"bii" = (/obj/machinery/camera{c_tag = "Locker Room Toilets"; dir = 8; network = list("SS13")},/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel/freezer,/area/crew_quarters/locker/locker_toilet) +"bij" = (/obj/machinery/power/apc{dir = 1; name = "Locker Room APC"; pixel_x = 0; pixel_y = 24},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/mob/living/simple_animal/mouse,/turf/open/floor/plating,/area/crew_quarters/locker) +"bik" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/port) +"bil" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/port) +"bim" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/open/floor/plating,/area/maintenance/port) +"bin" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plating,/area/maintenance/port) +"bio" = (/obj/structure/closet/crate/medical,/turf/open/floor/plasteel/floorgrime,/area/quartermaster/storage) +"bip" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/item/stack/sheet/cardboard,/turf/open/floor/plasteel/floorgrime,/area/quartermaster/storage) +"biq" = (/obj/item/clothing/gloves/color/rainbow,/obj/item/clothing/head/soft/rainbow,/obj/item/clothing/shoes/sneakers/rainbow,/obj/item/clothing/under/color/rainbow,/turf/open/floor/plating,/area/maintenance/port) +"bir" = (/obj/structure/disposalpipe/trunk,/obj/structure/disposaloutlet{dir = 4},/turf/open/floor/plating,/area/quartermaster/office) +"bis" = (/obj/machinery/conveyor{dir = 4; id = "packageSort2"},/turf/open/floor/plating,/area/quartermaster/office) +"bit" = (/obj/machinery/conveyor{dir = 4; id = "packageSort2"},/obj/structure/plasticflaps,/turf/open/floor/plating,/area/quartermaster/office) +"biu" = (/obj/machinery/disposal/deliveryChute{dir = 8},/obj/structure/disposalpipe/trunk{dir = 1},/turf/open/floor/plating,/area/quartermaster/office) +"biv" = (/turf/closed/wall,/area/quartermaster/office) +"biw" = (/turf/open/floor/plasteel/brown/corner{dir = 8},/area/hallway/primary/central) +"bix" = (/obj/machinery/requests_console{announcementConsole = 1; department = "Bridge"; departmentType = 5; name = "Bridge RC"; pixel_y = -30},/obj/machinery/light,/turf/open/floor/wood,/area/bridge/meeting_room) +"biy" = (/turf/open/floor/carpet,/area/bridge/meeting_room) +"biz" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/carpet,/area/bridge/meeting_room) +"biA" = (/obj/machinery/hologram/holopad,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/carpet,/area/bridge/meeting_room) +"biB" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/open/floor/carpet,/area/bridge/meeting_room) +"biC" = (/obj/structure/noticeboard{dir = 8; pixel_x = 27; pixel_y = 0},/turf/open/floor/wood,/area/bridge/meeting_room) +"biD" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 5},/turf/closed/wall/r_wall,/area/turret_protected/ai_upload) +"biE" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/closed/wall/r_wall,/area/turret_protected/ai_upload) +"biF" = (/obj/machinery/ai_status_display,/turf/closed/wall/r_wall,/area/turret_protected/ai_upload) +"biG" = (/turf/closed/wall/r_wall,/area/turret_protected/ai_upload) +"biH" = (/obj/machinery/status_display{density = 0; layer = 4},/turf/closed/wall/r_wall,/area/turret_protected/ai_upload) +"biI" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/closed/wall/r_wall,/area/turret_protected/ai_upload) +"biJ" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/turf/closed/wall/r_wall,/area/turret_protected/ai_upload) +"biK" = (/obj/structure/table/wood,/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/pen,/turf/open/floor/wood,/area/crew_quarters/captain) +"biL" = (/obj/structure/table/wood,/obj/item/weapon/folder/blue,/obj/item/weapon/stamp/captain,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/wood,/area/crew_quarters/captain) +"biM" = (/obj/structure/table/wood,/obj/item/weapon/hand_tele,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/wood,/area/crew_quarters/captain) +"biN" = (/obj/structure/table/wood,/obj/item/device/flashlight/lamp/green,/turf/open/floor/wood,/area/crew_quarters/captain) +"biO" = (/obj/effect/landmark/event_spawn,/turf/open/floor/wood,/area/crew_quarters/captain) +"biP" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/wood,/area/crew_quarters/captain) +"biQ" = (/obj/structure/table/wood,/obj/item/weapon/pinpointer,/obj/item/weapon/disk/nuclear,/obj/item/weapon/storage/secure/safe{pixel_x = 35; pixel_y = 5},/obj/machinery/light{dir = 4; icon_state = "tube1"},/turf/open/floor/wood,/area/crew_quarters/captain) +"biR" = (/turf/closed/wall,/area/medical/chemistry) +"biS" = (/obj/structure/sign/bluecross_2,/turf/closed/wall,/area/medical/medbay) +"biT" = (/obj/structure/grille,/obj/structure/window/fulltile,/turf/open/floor/plating,/area/medical/medbay) +"biU" = (/obj/machinery/door/firedoor,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/white,/area/medical/medbay) +"biV" = (/obj/machinery/door/firedoor,/turf/open/floor/plasteel/white,/area/medical/medbay) +"biW" = (/turf/closed/wall,/area/security/checkpoint/medical) +"biX" = (/turf/closed/wall,/area/medical/morgue) +"biY" = (/obj/machinery/door/airlock/medical{name = "Morgue"; req_access_txt = "6"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/black,/area/medical/morgue) +"biZ" = (/obj/structure/closet/emcloset,/turf/open/floor/plasteel,/area/hallway/primary/starboard) +"bja" = (/obj/machinery/power/apc{dir = 2; name = "Starboard Primary Hallway APC"; pixel_y = -24},/obj/structure/cable,/turf/open/floor/plasteel,/area/hallway/primary/starboard) +"bjb" = (/turf/closed/wall,/area/storage/emergency) +"bjc" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/asmaint) +"bjd" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall,/area/assembly/chargebay) +"bje" = (/turf/open/floor/plasteel/loadingarea{dir = 1},/area/hallway/primary/starboard) +"bjf" = (/turf/closed/wall/r_wall,/area/assembly/robotics) +"bjg" = (/turf/open/floor/plasteel/purple/side{dir = 10},/area/hallway/primary/starboard) +"bjh" = (/turf/open/floor/plasteel/purple/side{dir = 2},/area/hallway/primary/starboard) +"bji" = (/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -29},/turf/open/floor/plasteel/purple/side{dir = 2},/area/hallway/primary/starboard) +"bjj" = (/obj/structure/sign/securearea{pixel_x = 0; pixel_y = -32},/turf/open/floor/plasteel/purple/side{dir = 2},/area/hallway/primary/starboard) +"bjk" = (/obj/machinery/light,/turf/open/floor/plasteel/purple/side{dir = 2},/area/hallway/primary/starboard) +"bjl" = (/turf/open/floor/plasteel/purple/side{dir = 6},/area/hallway/primary/starboard) +"bjm" = (/turf/closed/wall/r_wall,/area/toxins/lab) +"bjn" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/escape{dir = 10},/area/hallway/secondary/exit) +"bjo" = (/obj/machinery/airalarm{dir = 1; icon_state = "alarm0"; pixel_y = -22},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/escape{dir = 2},/area/hallway/secondary/exit) +"bjp" = (/obj/structure/closet/emcloset,/turf/open/floor/plasteel/warning,/area/hallway/secondary/exit) +"bjq" = (/obj/structure/closet/emcloset,/turf/open/floor/plasteel/warning{dir = 6},/area/hallway/secondary/exit) +"bjr" = (/obj/structure/closet,/turf/open/floor/plasteel/shuttle/yellow,/area/shuttle/escape) +"bjs" = (/obj/structure/closet/crate,/turf/open/floor/plasteel/shuttle/yellow,/area/shuttle/escape) +"bjt" = (/obj/machinery/camera{c_tag = "Arrivals Bay 3 & 4"; dir = 1},/turf/open/floor/plasteel/warning,/area/hallway/secondary/entry) +"bju" = (/obj/machinery/vending/cigarette,/turf/open/floor/plasteel/warning{dir = 6},/area/hallway/secondary/entry) +"bjv" = (/obj/machinery/conveyor{dir = 5; id = "garbage"},/turf/open/floor/plating,/area/maintenance/disposal) +"bjw" = (/obj/machinery/conveyor{dir = 4; id = "garbage"},/turf/open/floor/plating,/area/maintenance/disposal) +"bjx" = (/obj/machinery/conveyor{dir = 10; id = "garbage"; verted = -1},/turf/open/floor/plating,/area/maintenance/disposal) +"bjy" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/turf/closed/wall,/area/maintenance/disposal) +"bjz" = (/obj/machinery/power/apc{dir = 8; name = "Disposal APC"; pixel_x = -24; pixel_y = 0},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/disposal) +"bjA" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/port) +"bjB" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/port) +"bjC" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/port) +"bjD" = (/obj/machinery/door/airlock{name = "Unit 4"},/turf/open/floor/plasteel/freezer,/area/crew_quarters/locker/locker_toilet) +"bjE" = (/obj/machinery/airalarm{dir = 1; icon_state = "alarm0"; pixel_y = -22},/turf/open/floor/plasteel/freezer,/area/crew_quarters/locker/locker_toilet) +"bjF" = (/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/port) +"bjG" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/open/floor/plating,/area/maintenance/port) +"bjH" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/port) +"bjI" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/port) +"bjJ" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/port) +"bjK" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/port) +"bjL" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/machinery/power/apc{dir = 2; name = "Cargo Bay APC"; pixel_x = 1; pixel_y = -24},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/open/floor/plating,/area/quartermaster/storage) +"bjM" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/turf/closed/wall,/area/maintenance/port) +"bjN" = (/obj/structure/closet/cardboard,/turf/open/floor/plasteel/floorgrime,/area/quartermaster/storage) +"bjO" = (/obj/machinery/button/door{id = "qm_warehouse"; name = "Warehouse Door Control"; pixel_x = -1; pixel_y = -24; req_access_txt = "31"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/obj/structure/closet/crate,/turf/open/floor/plasteel/floorgrime,/area/quartermaster/storage) +"bjP" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/obj/structure/closet/crate,/turf/open/floor/plasteel/floorgrime,/area/quartermaster/storage) +"bjQ" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/turf/closed/wall,/area/quartermaster/storage) +"bjR" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/turf/closed/wall,/area/quartermaster/office) +"bjS" = (/obj/machinery/conveyor_switch/oneway{id = "packageSort2"},/obj/machinery/camera{c_tag = "Cargo Delivery Office"; dir = 4; network = list("SS13")},/obj/machinery/requests_console{department = "Cargo Bay"; departmentType = 2; pixel_x = -30; pixel_y = 0},/obj/machinery/light{dir = 8},/turf/open/floor/plasteel/brown{dir = 1},/area/quartermaster/office) +"bjT" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/plasteel/brown{dir = 1},/area/quartermaster/office) +"bjU" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/open/floor/plasteel/brown{dir = 1},/area/quartermaster/office) +"bjV" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/window/reinforced{dir = 1; layer = 2.9},/turf/open/floor/plasteel/brown{dir = 1},/area/quartermaster/office) +"bjW" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/window/reinforced{dir = 1; layer = 2.9},/obj/structure/filingcabinet/filingcabinet,/obj/machinery/firealarm{dir = 4; pixel_x = 24},/turf/open/floor/plasteel/brown{dir = 1},/area/quartermaster/office) +"bjX" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/closed/wall,/area/quartermaster/office) +"bjY" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/brown/corner{dir = 8},/area/hallway/primary/central) +"bjZ" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/plasteel,/area/hallway/primary/central) +"bka" = (/obj/machinery/camera{c_tag = "Central Hallway West"; dir = 8},/turf/open/floor/plasteel/blue/corner,/area/hallway/primary/central) +"bkb" = (/obj/machinery/door/window/eastright{dir = 1; name = "Bridge Delivery"; req_access_txt = "19"},/turf/open/floor/plasteel/delivery,/area/bridge/meeting_room) +"bkc" = (/obj/structure/reagent_dispensers/water_cooler,/turf/open/floor/wood,/area/bridge/meeting_room) +"bkd" = (/obj/machinery/computer/slot_machine,/turf/open/floor/wood,/area/bridge/meeting_room) +"bke" = (/obj/machinery/computer/security/telescreen/entertainment{pixel_x = 0; pixel_y = -32},/turf/open/floor/wood,/area/bridge/meeting_room) +"bkf" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/wood,/area/bridge/meeting_room) +"bkg" = (/obj/machinery/vending/coffee,/obj/machinery/light{dir = 4},/turf/open/floor/wood,/area/bridge/meeting_room) +"bkh" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall/r_wall,/area/engine/gravity_generator) +"bki" = (/turf/open/floor/plasteel/black,/area/engine/gravity_generator) +"bkj" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/closed/wall/r_wall,/area/engine/gravity_generator) +"bkk" = (/obj/machinery/requests_console{announcementConsole = 1; department = "Captain's Desk"; departmentType = 5; name = "Captain RC"; pixel_x = -30; pixel_y = 0},/obj/structure/filingcabinet,/turf/open/floor/wood,/area/crew_quarters/captain) +"bkl" = (/obj/structure/chair/comfy/brown{dir = 4},/obj/effect/landmark/start{name = "Captain"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/wood,/area/crew_quarters/captain) +"bkm" = (/obj/machinery/computer/communications,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/wood,/area/crew_quarters/captain) +"bkn" = (/obj/structure/table/wood,/obj/item/weapon/book/manual/wiki/security_space_law,/obj/item/weapon/coin/plasma,/turf/open/floor/wood,/area/crew_quarters/captain) +"bko" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/hologram/holopad,/turf/open/floor/wood,/area/crew_quarters/captain) +"bkp" = (/obj/structure/table/wood,/obj/machinery/airalarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/item/device/camera,/obj/item/weapon/storage/photo_album{pixel_y = -10},/turf/open/floor/wood,/area/crew_quarters/captain) +"bkq" = (/obj/machinery/firealarm{dir = 4; pixel_x = 24},/turf/open/floor/plasteel,/area/hallway/primary/central) +"bkr" = (/obj/structure/closet/secure_closet/chemical,/turf/open/floor/plasteel/white,/area/medical/chemistry) +"bks" = (/obj/machinery/power/apc{dir = 1; name = "Chemistry APC"; pixel_y = 24},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/mob/living/simple_animal/bot/cleanbot{name = "C.L.E.A.N."},/turf/open/floor/plasteel/white,/area/medical/chemistry) +"bkt" = (/obj/machinery/camera{c_tag = "Chemistry"; dir = 2; network = list("SS13")},/obj/machinery/firealarm{dir = 2; pixel_y = 24},/obj/machinery/chem_heater,/turf/open/floor/plasteel/white,/area/medical/chemistry) +"bku" = (/obj/machinery/chem_dispenser,/turf/open/floor/plasteel/whiteyellow/side{dir = 1},/area/medical/chemistry) +"bkv" = (/obj/machinery/chem_master,/turf/open/floor/plasteel/whiteyellow/side{dir = 5},/area/medical/chemistry) +"bkw" = (/obj/structure/table,/obj/item/weapon/storage/firstaid/regular{pixel_x = 0; pixel_y = 0},/turf/open/floor/plasteel/white,/area/medical/medbay) +"bkx" = (/obj/structure/chair,/turf/open/floor/plasteel/white,/area/medical/medbay) +"bky" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/white,/area/medical/medbay) +"bkz" = (/turf/open/floor/plasteel/white,/area/medical/medbay) +"bkA" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/security/checkpoint/medical) +"bkB" = (/obj/structure/table,/obj/item/weapon/paper_bin{pixel_x = 1; pixel_y = 9},/obj/item/weapon/pen,/obj/machinery/button/door{desc = "A remote control switch for the medbay foyer."; id = "MedbayFoyer"; name = "Medbay Doors Control"; normaldoorcontrol = 1; pixel_x = 0; pixel_y = 26; req_access_txt = "5"},/obj/item/weapon/book/manual/wiki/security_space_law,/turf/open/floor/plasteel/red/side{dir = 9},/area/security/checkpoint/medical) +"bkC" = (/obj/machinery/camera{c_tag = "Security Post - Medbay"; dir = 2; network = list("SS13")},/obj/machinery/requests_console{department = "Security"; departmentType = 5; pixel_y = 30},/turf/open/floor/plasteel/red/side{dir = 1},/area/security/checkpoint/medical) +"bkD" = (/obj/structure/filingcabinet,/obj/machinery/newscaster{pixel_x = 32; pixel_y = 0},/turf/open/floor/plasteel/red/side{dir = 5},/area/security/checkpoint/medical) +"bkE" = (/obj/structure/table,/obj/item/weapon/storage/box/bodybags,/obj/item/weapon/pen,/obj/machinery/light/small{dir = 8},/turf/open/floor/plasteel/black,/area/medical/morgue) +"bkF" = (/turf/open/floor/plasteel/black,/area/medical/morgue) +"bkG" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/plasteel/black,/area/medical/morgue) +"bkH" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/turf/open/floor/plasteel/black,/area/medical/morgue) +"bkI" = (/obj/machinery/power/apc{dir = 1; name = "Morgue APC"; pixel_y = 24},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/open/floor/plasteel/black,/area/medical/morgue) +"bkJ" = (/obj/machinery/light/small{dir = 4},/turf/open/floor/plasteel/black,/area/medical/morgue) +"bkK" = (/obj/machinery/door/airlock{name = "Starboard Emergency Storage"; req_access_txt = "0"},/turf/open/floor/plating,/area/storage/emergency) +"bkL" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/asmaint) +"bkM" = (/turf/closed/wall,/area/assembly/chargebay) +"bkN" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/research{name = "Mech Bay"; req_access_txt = "29"; req_one_access_txt = "0"},/turf/open/floor/plasteel,/area/assembly/chargebay) +"bkO" = (/obj/machinery/door/firedoor,/obj/machinery/door/poddoor/shutters{id = "Skynet_launch"; name = "mech bay"},/turf/open/floor/plasteel/delivery,/area/assembly/chargebay) +"bkP" = (/obj/machinery/computer/rdconsole/robotics,/obj/machinery/airalarm{pixel_y = 25},/turf/open/floor/plasteel/white,/area/assembly/robotics) +"bkQ" = (/obj/structure/table,/obj/item/weapon/book/manual/robotics_cyborgs{pixel_x = 2; pixel_y = 5},/obj/item/weapon/storage/belt/utility,/obj/item/weapon/reagent_containers/glass/beaker/large,/obj/machinery/requests_console{department = "Robotics"; departmentType = 2; name = "Robotics RC"; pixel_y = 30},/obj/machinery/light{dir = 1},/turf/open/floor/plasteel/white,/area/assembly/robotics) +"bkR" = (/obj/machinery/r_n_d/circuit_imprinter,/turf/open/floor/plasteel/white,/area/assembly/robotics) +"bkS" = (/obj/structure/grille,/obj/machinery/door/poddoor/shutters/preopen{id = "robotics"; name = "robotics lab shutters"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/assembly/robotics) +"bkT" = (/obj/structure/table/reinforced,/obj/machinery/door/window/eastright{base_state = "left"; dir = 2; icon_state = "left"; name = "Robotics Desk"; req_access_txt = "29"},/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/pen,/obj/machinery/door/poddoor/shutters/preopen{id = "robotics"; name = "robotics lab shutters"},/turf/open/floor/plating,/area/assembly/robotics) +"bkU" = (/turf/closed/wall,/area/medical/research{name = "Research Division"}) +"bkV" = (/obj/machinery/door/airlock/research{name = "Research Division Access"; req_access_txt = "47"},/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) +"bkW" = (/obj/structure/grille,/obj/machinery/door/poddoor/shutters/preopen{id = "rnd"; name = "research lab shutters"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/toxins/lab) +"bkX" = (/obj/structure/table/reinforced,/obj/machinery/door/window/southright{name = "Research and Development Desk"; req_access_txt = "7"},/obj/machinery/door/poddoor/shutters/preopen{id = "rnd"; name = "research lab shutters"},/turf/open/floor/plating,/area/toxins/lab) +"bkY" = (/obj/structure/table,/obj/item/stack/sheet/glass{amount = 50; pixel_x = 3; pixel_y = 3},/obj/item/stack/sheet/metal{amount = 50},/obj/item/clothing/glasses/welding,/turf/open/floor/plasteel/white,/area/toxins/lab) +"bkZ" = (/obj/structure/table,/obj/item/weapon/storage/toolbox/mechanical{pixel_x = 2; pixel_y = 3},/obj/item/weapon/storage/toolbox/mechanical{pixel_x = -2; pixel_y = -1},/obj/machinery/light{dir = 1},/turf/open/floor/plasteel/white,/area/toxins/lab) +"bla" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/asmaint2) +"blb" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall,/area/maintenance/asmaint2) +"blc" = (/turf/closed/wall/shuttle{icon_state = "swall_s5"; dir = 2},/area/shuttle/escape) +"bld" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/shuttle/engine/heater,/turf/open/floor/plating/airless,/area/shuttle/escape) +"ble" = (/turf/closed/wall/shuttle{icon_state = "swall_s9"; dir = 2},/area/shuttle/escape) +"blf" = (/obj/machinery/conveyor{dir = 1; id = "garbage"},/turf/open/floor/plating,/area/maintenance/disposal) +"blg" = (/obj/structure/disposalpipe/trunk{dir = 2},/obj/machinery/disposal/deliveryChute{dir = 4},/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/machinery/door/window{base_state = "right"; dir = 4; icon_state = "right"; layer = 3},/turf/open/floor/plating/warnplate{dir = 4},/area/maintenance/disposal) +"blh" = (/obj/machinery/mineral/stacking_machine{input_dir = 1; stack_amt = 10},/turf/open/floor/plating,/area/maintenance/disposal) +"bli" = (/obj/machinery/mineral/stacking_unit_console{dir = 2; machinedir = 8},/turf/closed/wall,/area/maintenance/disposal) +"blj" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/light/small,/turf/open/floor/plating,/area/maintenance/port) +"blk" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/port) +"bll" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 5},/turf/open/floor/plating,/area/maintenance/port) +"blm" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall,/area/crew_quarters/locker/locker_toilet) +"bln" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/window{icon_state = "window"; dir = 8},/turf/open/floor/plating,/area/maintenance/port) +"blo" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/window{icon_state = "window"; dir = 1},/obj/structure/window,/turf/open/floor/plating,/area/maintenance/port) +"blp" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/window,/turf/open/floor/plating,/area/maintenance/port) +"blq" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/port) +"blr" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/port) +"bls" = (/obj/machinery/door/poddoor/shutters{id = "qm_warehouse"; name = "warehouse shutters"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/delivery{name = "floor"},/area/quartermaster/storage) +"blt" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall,/area/quartermaster/storage) +"blu" = (/obj/structure/disposalpipe/wrapsortjunction{dir = 1},/turf/closed/wall,/area/quartermaster/storage) +"blv" = (/obj/structure/disposalpipe/trunk{dir = 8},/obj/structure/disposaloutlet{dir = 4},/turf/open/floor/plating,/area/quartermaster/office) +"blw" = (/obj/machinery/door/window/eastleft{dir = 4; icon_state = "right"; name = "Mail"; req_access_txt = "50"},/turf/open/floor/plating,/area/quartermaster/office) +"blx" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/quartermaster/office) +"bly" = (/turf/open/floor/plasteel,/area/quartermaster/office) +"blz" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/quartermaster/office) +"blA" = (/obj/structure/table/reinforced,/obj/item/weapon/folder/yellow,/obj/item/weapon/paper_bin{pixel_x = 1; pixel_y = 9},/obj/item/weapon/pen,/turf/open/floor/plasteel,/area/quartermaster/office) +"blB" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/quartermaster/office) +"blC" = (/obj/structure/extinguisher_cabinet{pixel_x = 27; pixel_y = 0},/turf/open/floor/plasteel/blue/corner,/area/hallway/primary/central) +"blD" = (/obj/machinery/navbeacon{codes_txt = "delivery;dir=1"; dir = 1; freq = 1400; location = "Bridge"},/obj/structure/plasticflaps{opacity = 1},/turf/open/floor/plasteel/bot,/area/bridge/meeting_room) +"blE" = (/obj/machinery/vending/cigarette,/turf/open/floor/wood,/area/bridge/meeting_room) +"blF" = (/turf/open/floor/plasteel/vault{dir = 1},/area/engine/gravity_generator) +"blG" = (/turf/open/floor/plasteel/vault{dir = 8},/area/engine/gravity_generator) +"blH" = (/turf/open/floor/plasteel/vault{dir = 4},/area/engine/gravity_generator) +"blI" = (/obj/item/device/radio/intercom{dir = 8; freerange = 1; name = "Station Intercom (Command)"; pixel_x = -28},/obj/machinery/suit_storage_unit/captain,/turf/open/floor/wood,/area/crew_quarters/captain) +"blJ" = (/obj/machinery/computer/card,/obj/item/weapon/card/id/captains_spare,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/wood,/area/crew_quarters/captain) +"blK" = (/obj/structure/table/wood,/obj/machinery/recharger,/obj/item/weapon/melee/chainofcommand,/turf/open/floor/wood,/area/crew_quarters/captain) +"blL" = (/obj/structure/table/glass,/obj/item/weapon/reagent_containers/glass/bottle/epinephrine,/obj/item/stack/sheet/mineral/plasma{layer = 2.9},/obj/item/stack/sheet/mineral/plasma{layer = 2.9},/obj/machinery/requests_console{department = "Chemistry"; departmentType = 2; pixel_x = -30; pixel_y = 0},/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/open/floor/plasteel/white,/area/medical/chemistry) +"blM" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/white,/area/medical/chemistry) +"blN" = (/turf/open/floor/plasteel/white,/area/medical/chemistry) +"blO" = (/obj/structure/chair/office/light{dir = 4},/obj/effect/landmark/start{name = "Chemist"},/turf/open/floor/plasteel/whiteyellow/side{dir = 4},/area/medical/chemistry) +"blP" = (/obj/structure/table/reinforced,/obj/machinery/door/window/eastright{dir = 8; name = "Chemistry Desk"; req_access_txt = "33"},/obj/machinery/door/firedoor,/turf/open/floor/plating,/area/medical/chemistry) +"blQ" = (/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/turf/open/floor/plasteel/white,/area/medical/medbay) +"blR" = (/obj/structure/chair/office/dark{dir = 8},/obj/effect/landmark/start/depsec/medical,/turf/open/floor/plasteel/red/side{dir = 8},/area/security/checkpoint/medical) +"blS" = (/turf/open/floor/plasteel,/area/security/checkpoint/medical) +"blT" = (/obj/machinery/computer/secure_data,/obj/item/device/radio/intercom{pixel_x = 25},/turf/open/floor/plasteel/red/side{dir = 4},/area/security/checkpoint/medical) +"blU" = (/obj/structure/bodycontainer/morgue,/obj/effect/landmark{name = "revenantspawn"},/turf/open/floor/plasteel/black,/area/medical/morgue) +"blV" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/black,/area/medical/morgue) +"blW" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/black,/area/medical/morgue) +"blX" = (/turf/open/floor/plating,/area/storage/emergency) +"blY" = (/obj/machinery/light/small{dir = 1},/obj/item/weapon/extinguisher,/turf/open/floor/plating,/area/storage/emergency) +"blZ" = (/obj/item/weapon/storage/box/lights/mixed,/turf/open/floor/plating,/area/storage/emergency) +"bma" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/power/apc{dir = 4; name = "Mech Bay APC"; pixel_x = 26; pixel_y = 0},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/assembly/chargebay) +"bmb" = (/obj/machinery/light_switch{pixel_y = 28},/obj/machinery/firealarm{dir = 8; pixel_x = -24},/turf/open/floor/plasteel,/area/assembly/chargebay) +"bmc" = (/turf/open/floor/plasteel,/area/assembly/chargebay) +"bmd" = (/obj/machinery/button/door{dir = 2; id = "Skynet_launch"; name = "Mech Bay Door Control"; pixel_x = 6; pixel_y = 24},/turf/open/floor/plasteel/warning/corner{dir = 8},/area/assembly/chargebay) +"bme" = (/turf/open/floor/plasteel/warning{dir = 1},/area/assembly/chargebay) +"bmf" = (/obj/machinery/power/apc{dir = 8; name = "Robotics Lab APC"; pixel_x = -25},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/open/floor/plasteel/white,/area/assembly/robotics) +"bmg" = (/obj/structure/chair/office/light{dir = 1},/obj/effect/landmark/start{name = "Roboticist"},/turf/open/floor/plasteel/white,/area/assembly/robotics) +"bmh" = (/turf/open/floor/plasteel/white,/area/assembly/robotics) +"bmi" = (/obj/machinery/camera{c_tag = "Robotics Lab"; dir = 2; network = list("SS13","RD")},/obj/machinery/button/door{dir = 2; id = "robotics"; name = "Shutters Control Button"; pixel_x = 6; pixel_y = 24; req_access_txt = "29"},/turf/open/floor/plasteel/whitered/corner{dir = 4},/area/assembly/robotics) +"bmj" = (/turf/open/floor/plasteel/whitered/side{dir = 1},/area/assembly/robotics) +"bmk" = (/obj/structure/chair/stool,/turf/open/floor/plasteel/whitered/side{dir = 1},/area/assembly/robotics) +"bml" = (/obj/structure/filingcabinet/chestdrawer,/turf/open/floor/plasteel/whitered/side{dir = 1},/area/assembly/robotics) +"bmm" = (/obj/structure/closet/emcloset,/turf/open/floor/plasteel/warnwhite{dir = 9},/area/medical/research{name = "Research Division"}) +"bmn" = (/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) +"bmo" = (/obj/machinery/camera{c_tag = "Research Division Access"; dir = 2; network = list("SS13")},/obj/structure/sink{dir = 4; icon_state = "sink"; pixel_x = 11; pixel_y = 0},/turf/open/floor/plasteel/warnwhite{dir = 5},/area/medical/research{name = "Research Division"}) +"bmp" = (/turf/open/floor/plasteel/whitepurple/side{dir = 1},/area/toxins/lab) +"bmq" = (/obj/structure/chair/stool,/obj/effect/landmark/start{name = "Scientist"},/turf/open/floor/plasteel/whitepurple/side{dir = 1},/area/toxins/lab) +"bmr" = (/obj/machinery/camera{c_tag = "Research and Development"; dir = 2; network = list("SS13","RD"); pixel_x = 22},/obj/machinery/button/door{dir = 2; id = "rnd"; name = "Shutters Control Button"; pixel_x = -6; pixel_y = 24; req_access_txt = "47"},/turf/open/floor/plasteel/whitepurple/corner{dir = 1},/area/toxins/lab) +"bms" = (/turf/open/floor/plasteel/white,/area/toxins/lab) +"bmt" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/asmaint2) +"bmu" = (/obj/structure/shuttle/engine/propulsion,/turf/open/floor/plating/airless,/area/shuttle/escape) +"bmv" = (/turf/closed/wall/shuttle{icon_state = "swall_s6"; dir = 2},/area/shuttle/abandoned) +"bmw" = (/turf/closed/wall/shuttle{icon_state = "swall_s10"; dir = 2},/area/shuttle/abandoned) +"bmx" = (/obj/machinery/door/airlock/shuttle,/obj/docking_port/mobile{dheight = 0; dir = 2; dwidth = 11; height = 22; id = "whiteship"; launch_status = 0; name = "NT Medical Ship"; roundstart_move = "whiteship_away"; travelDir = 180; width = 35},/obj/docking_port/stationary{dir = 2; dwidth = 11; height = 22; id = "whiteship_home"; name = "SS13 Arrival Docking"; width = 35},/turf/open/floor/plasteel/shuttle/white,/area/shuttle/abandoned) +"bmy" = (/turf/closed/wall/shuttle{icon_state = "swall12"; dir = 2},/area/shuttle/abandoned) +"bmz" = (/obj/machinery/door/airlock/shuttle,/turf/open/floor/plasteel/shuttle/white,/area/shuttle/abandoned) +"bmA" = (/obj/machinery/conveyor{dir = 1; id = "garbage"},/obj/structure/sign/vacuum{pixel_x = -32},/turf/open/floor/plating,/area/maintenance/disposal) +"bmB" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/maintenance/disposal) +"bmC" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/turf/open/floor/plating/warnplate{dir = 1},/area/maintenance/disposal) +"bmD" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plating/warnplate{dir = 1},/area/maintenance/disposal) +"bmE" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plating,/area/maintenance/disposal) +"bmF" = (/obj/machinery/door/airlock/maintenance{name = "Disposal Access"; req_access_txt = "12"},/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plating,/area/maintenance/disposal) +"bmG" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plating,/area/maintenance/port) +"bmH" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/turf/open/floor/plating,/area/maintenance/port) +"bmI" = (/obj/structure/closet/crate,/obj/effect/spawner/lootdrop/maintenance,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/turf/open/floor/plating,/area/maintenance/port) +"bmJ" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/port) +"bmK" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/port) +"bmL" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/port) +"bmM" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/port) +"bmN" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/port) +"bmO" = (/obj/structure/table,/obj/item/clothing/head/soft,/obj/item/clothing/head/soft,/turf/open/floor/plasteel,/area/quartermaster/storage) +"bmP" = (/obj/structure/table,/obj/item/weapon/hand_labeler,/obj/item/weapon/hand_labeler,/obj/machinery/requests_console{department = "Cargo Bay"; departmentType = 2; pixel_x = 0; pixel_y = 30},/turf/open/floor/plasteel,/area/quartermaster/storage) +"bmQ" = (/obj/structure/table,/obj/machinery/cell_charger,/obj/item/device/radio/intercom{broadcasting = 0; listening = 1; name = "Station Intercom (General)"; pixel_y = 20},/turf/open/floor/plasteel,/area/quartermaster/storage) +"bmR" = (/obj/machinery/camera{c_tag = "Cargo Bay North"},/obj/structure/closet/wardrobe/cargotech,/turf/open/floor/plasteel,/area/quartermaster/storage) +"bmS" = (/turf/open/floor/plasteel,/area/quartermaster/storage) +"bmT" = (/obj/structure/extinguisher_cabinet{pixel_x = 5; pixel_y = 30},/obj/machinery/light{dir = 1},/turf/open/floor/plasteel,/area/quartermaster/storage) +"bmU" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/quartermaster/storage) +"bmV" = (/obj/machinery/button/door{id = "qm_warehouse"; name = "Warehouse Door Control"; pixel_x = -1; pixel_y = 24; req_access_txt = "31"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/quartermaster/storage) +"bmW" = (/obj/machinery/photocopier,/obj/item/device/radio/intercom{broadcasting = 0; listening = 1; name = "Station Intercom (General)"; pixel_y = 20},/turf/open/floor/plasteel,/area/quartermaster/office) +"bmX" = (/obj/machinery/disposal/bin,/obj/structure/disposalpipe/trunk,/turf/open/floor/plasteel,/area/quartermaster/office) +"bmY" = (/obj/structure/disposalpipe/segment,/turf/closed/wall,/area/quartermaster/office) +"bmZ" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 8},/obj/machinery/airalarm{dir = 4; locked = 0; pixel_x = -23; pixel_y = 0},/turf/open/floor/plasteel,/area/quartermaster/office) +"bna" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/quartermaster/office) +"bnb" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/quartermaster/office) +"bnc" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/chair{dir = 4},/obj/effect/landmark/start{name = "Cargo Technician"},/turf/open/floor/plasteel,/area/quartermaster/office) +"bnd" = (/obj/structure/table/reinforced,/obj/item/weapon/storage/box,/obj/item/weapon/storage/box,/obj/item/weapon/storage/box,/obj/item/weapon/hand_labeler,/obj/item/weapon/hand_labeler,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/quartermaster/office) +"bne" = (/obj/machinery/door/firedoor,/obj/machinery/door/window/westleft{name = "Delivery Desk"; req_access_txt = "50"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/bot,/area/quartermaster/office) +"bnf" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/brown/corner{dir = 8},/area/hallway/primary/central) +"bng" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/turf/open/floor/plasteel,/area/hallway/primary/central) +"bnh" = (/turf/closed/wall/r_wall,/area/maintenance/maintcentral) +"bni" = (/turf/open/floor/plating,/area/maintenance/maintcentral) +"bnj" = (/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/maintcentral) +"bnk" = (/obj/machinery/power/apc{dir = 1; name = "Bridge Maintenance APC"; pixel_y = 24},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/open/floor/plating,/area/maintenance/maintcentral) +"bnl" = (/obj/structure/closet/wardrobe/black,/turf/open/floor/plating,/area/maintenance/maintcentral) +"bnm" = (/obj/machinery/airalarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/wood,/area/bridge/meeting_room) +"bnn" = (/obj/machinery/newscaster/security_unit{pixel_x = -32; pixel_y = 0},/obj/machinery/keycard_auth{pixel_x = 0; pixel_y = -24},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/wood,/area/crew_quarters/captain) +"bno" = (/obj/machinery/door/window{base_state = "right"; dir = 4; icon_state = "right"; name = "Captain's Desk Door"; req_access_txt = "20"},/turf/open/floor/wood,/area/crew_quarters/captain) +"bnp" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/open/floor/wood,/area/crew_quarters/captain) +"bnq" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/firealarm{dir = 1; pixel_y = -24},/turf/open/floor/wood,/area/crew_quarters/captain) +"bnr" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/open/floor/wood,/area/crew_quarters/captain) +"bns" = (/obj/structure/table/glass,/obj/machinery/reagentgrinder,/obj/structure/extinguisher_cabinet{pixel_x = -27; pixel_y = 0},/turf/open/floor/plasteel/white,/area/medical/chemistry) +"bnt" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/turf/open/floor/plasteel/white,/area/medical/chemistry) +"bnu" = (/obj/machinery/disposal/bin,/obj/structure/disposalpipe/trunk{dir = 8},/turf/open/floor/plasteel/white,/area/medical/chemistry) +"bnv" = (/obj/structure/table/glass,/obj/item/weapon/storage/box/beakers{pixel_x = 2; pixel_y = 2},/obj/item/weapon/storage/box/beakers{pixel_x = 2; pixel_y = 2},/obj/item/weapon/reagent_containers/glass/beaker/large,/obj/item/weapon/reagent_containers/glass/beaker/large,/obj/item/weapon/reagent_containers/dropper,/obj/item/weapon/reagent_containers/dropper,/turf/open/floor/plasteel/whiteyellow/side{dir = 4},/area/medical/chemistry) +"bnw" = (/obj/machinery/smartfridge/chemistry,/turf/open/floor/plating,/area/medical/chemistry) +"bnx" = (/obj/machinery/hologram/holopad,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/white,/area/medical/medbay) +"bny" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/open/floor/plasteel/whiteblue/corner{dir = 2},/area/medical/medbay) +"bnz" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/whiteblue/side{dir = 2},/area/medical/medbay) +"bnA" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,/turf/open/floor/plasteel/whiteblue/side{dir = 2},/area/medical/medbay) +"bnB" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_Toxins = 0},/turf/open/floor/plasteel/whiteblue/side{dir = 2},/area/medical/medbay) +"bnC" = (/turf/open/floor/plasteel/whiteblue/side{dir = 2},/area/medical/medbay) +"bnD" = (/obj/structure/table,/obj/machinery/recharger{pixel_y = 4},/turf/open/floor/plasteel/red/side{dir = 8},/area/security/checkpoint/medical) +"bnE" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/security/checkpoint/medical) +"bnF" = (/obj/machinery/airalarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/machinery/light{dir = 4},/turf/open/floor/plasteel/red/side{dir = 4},/area/security/checkpoint/medical) +"bnG" = (/obj/machinery/camera{c_tag = "Medbay Morgue"; dir = 8; network = list("SS13"); pixel_x = 0; pixel_y = 0},/obj/machinery/airalarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/turf/open/floor/plasteel/black,/area/medical/morgue) +"bnH" = (/obj/machinery/portable_atmospherics/canister/air,/turf/open/floor/plating,/area/storage/emergency) +"bnI" = (/obj/machinery/space_heater,/turf/open/floor/plating,/area/storage/emergency) +"bnJ" = (/obj/structure/reagent_dispensers/watertank,/turf/open/floor/plating,/area/storage/emergency) +"bnK" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/weapon/tank/internals/emergency_oxygen,/obj/item/weapon/tank/internals/emergency_oxygen,/obj/item/clothing/mask/breath,/obj/item/clothing/mask/breath,/turf/open/floor/plating,/area/storage/emergency) +"bnL" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/floor/bluegrid,/area/assembly/chargebay) +"bnM" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/bluegrid,/area/assembly/chargebay) +"bnN" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/open/floor/plasteel,/area/assembly/chargebay) +"bnO" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/assembly/chargebay) +"bnP" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_research{name = "Robotics Lab"; req_access_txt = "29"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/assembly/robotics) +"bnQ" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/assembly/robotics) +"bnR" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/assembly/robotics) +"bnS" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_Toxins = 0},/turf/open/floor/plasteel/white,/area/assembly/robotics) +"bnT" = (/obj/machinery/firealarm{dir = 4; pixel_x = 24},/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/weapon/storage/toolbox/electrical{pixel_x = 1; pixel_y = 6},/obj/item/weapon/storage/toolbox/mechanical{pixel_x = -2; pixel_y = -1},/obj/item/clothing/head/welding{pixel_x = -3; pixel_y = 5},/obj/item/clothing/glasses/welding,/turf/open/floor/plasteel/white,/area/assembly/robotics) +"bnU" = (/obj/structure/closet/firecloset,/obj/machinery/light{dir = 8},/turf/open/floor/plasteel/warnwhite{dir = 8},/area/medical/research{name = "Research Division"}) +"bnV" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) +"bnW" = (/obj/machinery/shower{dir = 8},/obj/structure/sign/securearea{pixel_x = 32; pixel_y = 0},/turf/open/floor/plasteel/warnwhite{dir = 4},/area/medical/research{name = "Research Division"}) +"bnX" = (/obj/machinery/requests_console{department = "Science"; departmentType = 2; name = "Science Requests Console"; pixel_x = -30; pixel_y = 0},/turf/open/floor/plasteel/white,/area/toxins/lab) +"bnY" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/turf/open/floor/plasteel/white,/area/toxins/lab) +"bnZ" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel/white,/area/toxins/lab) +"boa" = (/obj/machinery/disposal/bin,/obj/structure/disposalpipe/trunk{dir = 8},/obj/item/device/radio/intercom{freerange = 0; frequency = 1459; name = "Station Intercom (General)"; pixel_x = 29},/turf/open/floor/plasteel/white,/area/toxins/lab) +"bob" = (/turf/closed/wall,/area/maintenance/asmaint2) +"boc" = (/obj/structure/shuttle/engine/propulsion{icon_state = "propulsion_l"; dir = 4},/turf/open/floor/plating/airless,/area/shuttle/abandoned) +"bod" = (/turf/closed/wall/shuttle{icon_state = "swall13"; dir = 2},/area/shuttle/abandoned) +"boe" = (/turf/closed/wall/shuttle{icon_state = "swall11"; dir = 2},/area/shuttle/abandoned) +"bof" = (/turf/open/floor/plasteel/shuttle/white,/area/shuttle/abandoned) +"bog" = (/obj/structure/table,/obj/item/device/radio/off,/turf/open/floor/plasteel/shuttle/white,/area/shuttle/abandoned) +"boh" = (/obj/structure/table,/obj/item/weapon/screwdriver,/turf/open/floor/plasteel/shuttle/white,/area/shuttle/abandoned) +"boi" = (/turf/closed/wall/shuttle{icon_state = "swall3"; dir = 2},/area/shuttle/abandoned) +"boj" = (/obj/machinery/conveyor{dir = 1; id = "garbage"; layer = 2.5},/obj/machinery/door/poddoor/preopen{id = "Disposal Exit"; layer = 3; name = "disposal exit vent"},/turf/open/floor/plating,/area/maintenance/disposal) +"bok" = (/obj/machinery/button/door{id = "Disposal Exit"; name = "Disposal Vent Control"; pixel_x = -25; pixel_y = 4; req_access_txt = "12"},/obj/machinery/button/massdriver{id = "trash"; pixel_x = -26; pixel_y = -6},/obj/structure/chair/stool,/turf/open/floor/plating,/area/maintenance/disposal) +"bol" = (/turf/open/floor/plating,/area/maintenance/disposal) +"bom" = (/obj/effect/decal/cleanable/oil,/obj/machinery/light_switch{pixel_x = 25; pixel_y = 0},/turf/open/floor/plating,/area/maintenance/disposal) +"bon" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/maintenance/port) +"boo" = (/turf/closed/wall/r_wall,/area/maintenance/port) +"bop" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'KEEP CLEAR OF DOCKING AREA'."; name = "KEEP CLEAR: DOCKING AREA"; pixel_y = 0},/turf/closed/wall/r_wall,/area/maintenance/port) +"boq" = (/obj/machinery/door/airlock/maintenance{name = "Cargo Bay Maintenance"; req_access_txt = "31"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/quartermaster/storage) +"bor" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/turf/open/floor/plasteel,/area/quartermaster/storage) +"bos" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/quartermaster/storage) +"bot" = (/obj/structure/grille,/obj/structure/window/fulltile,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/quartermaster/storage) +"bou" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/brown/corner{dir = 8},/area/quartermaster/office) +"bov" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/quartermaster/office) +"bow" = (/obj/structure/disposalpipe/sortjunction{dir = 1; icon_state = "pipe-j2s"; sortType = 2},/obj/structure/noticeboard{pixel_y = 32},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/quartermaster/office) +"box" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_mining{name = "Cargo Office"; req_access_txt = "50"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/open/floor/plasteel,/area/quartermaster/office) +"boy" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/quartermaster/office) +"boz" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/quartermaster/office) +"boA" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/turf/open/floor/plasteel,/area/quartermaster/office) +"boB" = (/obj/structure/table/reinforced,/obj/item/device/destTagger,/obj/item/device/destTagger,/obj/machinery/computer/stockexchange,/turf/open/floor/plasteel,/area/quartermaster/office) +"boC" = (/obj/structure/table/reinforced,/obj/item/stack/wrapping_paper{pixel_x = 3; pixel_y = 4},/obj/item/stack/packageWrap{pixel_x = -1; pixel_y = -1},/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -26},/turf/open/floor/plasteel,/area/quartermaster/office) +"boD" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/hallway/primary/central) +"boE" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/open/floor/plasteel,/area/hallway/primary/central) +"boF" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/open/floor/plating,/area/maintenance/maintcentral) +"boG" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/open/floor/plating,/area/maintenance/maintcentral) +"boH" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/power/apc{dir = 2; name = "Head of Personnel APC"; pixel_y = -24},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/open/floor/plating,/area/crew_quarters/heads) +"boI" = (/obj/effect/landmark{name = "blobstart"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plating,/area/maintenance/maintcentral) +"boJ" = (/obj/machinery/power/apc{dir = 4; name = "Conference Room APC"; pixel_x = 24; pixel_y = 0},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/open/floor/plating,/area/bridge/meeting_room) +"boK" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 8},/turf/closed/wall/r_wall,/area/engine/gravity_generator) +"boL" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_Toxins = 0},/turf/open/floor/plasteel/black,/area/engine/gravity_generator) +"boM" = (/obj/machinery/gravity_generator/main/station,/turf/open/floor/plasteel/vault{dir = 8},/area/engine/gravity_generator) +"boN" = (/obj/machinery/camera{c_tag = "Gravity Generator Room"; dir = 8; network = list("SS13"); pixel_x = 0; pixel_y = 0},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/plasteel/black,/area/engine/gravity_generator) +"boO" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/turf/closed/wall/r_wall,/area/engine/gravity_generator) +"boP" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/closed/wall/r_wall,/area/crew_quarters/captain) +"boQ" = (/obj/machinery/door/airlock/command{name = "Captain's Quarters"; req_access = null; req_access_txt = "20"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/carpet,/area/crew_quarters/captain) +"boR" = (/obj/machinery/door/airlock/maintenance{name = "Captain's Office Maintenance"; req_access_txt = "20"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plating,/area/crew_quarters/captain) +"boS" = (/obj/structure/disposalpipe/segment,/obj/structure/extinguisher_cabinet{pixel_x = -27; pixel_y = 1},/turf/open/floor/plasteel,/area/hallway/primary/central) +"boT" = (/obj/structure/table/glass,/obj/item/weapon/storage/box/syringes,/obj/item/clothing/glasses/science{pixel_x = 2; pixel_y = 4},/obj/item/clothing/glasses/science,/obj/item/device/radio/intercom{dir = 8; name = "Station Intercom (General)"; pixel_x = -28},/turf/open/floor/plasteel/white,/area/medical/chemistry) +"boU" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/white,/area/medical/chemistry) +"boV" = (/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel/white,/area/medical/chemistry) +"boW" = (/obj/structure/table/reinforced,/obj/machinery/door/window/eastright{base_state = "left"; dir = 8; icon_state = "left"; name = "Chemistry Desk"; req_access_txt = "33"},/obj/machinery/door/firedoor,/turf/open/floor/plating,/area/medical/chemistry) +"boX" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/white,/area/medical/medbay) +"boY" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/whiteblue/side{dir = 4},/area/medical/medbay) +"boZ" = (/obj/structure/table/reinforced,/obj/item/weapon/paper_bin{pixel_x = 1; pixel_y = 9},/turf/open/floor/plasteel/white,/area/medical/medbay) +"bpa" = (/obj/structure/table/reinforced,/obj/item/weapon/reagent_containers/food/drinks/britcup{desc = "Kingston's personal cup."},/turf/open/floor/plasteel/white,/area/medical/medbay) +"bpb" = (/obj/structure/table/reinforced,/obj/item/weapon/folder/white,/obj/item/weapon/pen,/obj/item/weapon/reagent_containers/glass/bottle/epinephrine,/turf/open/floor/plasteel/white,/area/medical/medbay) +"bpc" = (/obj/structure/table/reinforced,/obj/machinery/camera{c_tag = "Medbay Foyer"; dir = 8; network = list("SS13"); pixel_x = 0; pixel_y = 0},/obj/machinery/cell_charger,/turf/open/floor/plasteel/white,/area/medical/medbay) +"bpd" = (/obj/machinery/power/apc{dir = 8; name = "Medbay Security APC"; pixel_x = -25},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/open/floor/plasteel/red/side{dir = 8},/area/security/checkpoint/medical) +"bpe" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/security/checkpoint/medical) +"bpf" = (/obj/structure/reagent_dispensers/peppertank{pixel_x = 30; pixel_y = 0},/turf/open/floor/plasteel/red/side{dir = 4},/area/security/checkpoint/medical) +"bpg" = (/obj/machinery/mech_bay_recharge_port,/obj/structure/cable,/turf/open/floor/plating,/area/assembly/chargebay) +"bph" = (/turf/open/floor/mech_bay_recharge_floor,/area/assembly/chargebay) +"bpi" = (/obj/machinery/computer/mech_bay_power_console,/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/open/floor/bluegrid,/area/assembly/chargebay) +"bpj" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/assembly/chargebay) +"bpk" = (/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/turf/open/floor/plasteel,/area/assembly/chargebay) +"bpl" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/assembly/robotics) +"bpm" = (/obj/structure/table,/obj/item/stack/sheet/glass{amount = 20; pixel_x = -3; pixel_y = 6},/obj/item/stack/sheet/metal{amount = 50},/obj/item/stack/sheet/metal{amount = 50},/obj/item/stack/sheet/metal{amount = 50},/obj/item/stack/sheet/metal{amount = 50},/obj/item/stack/sheet/metal{amount = 50},/obj/item/stack/sheet/metal{amount = 50},/obj/item/device/multitool{pixel_x = 3},/obj/item/device/multitool{pixel_x = 3},/turf/open/floor/plasteel/warning{dir = 1},/area/assembly/robotics) +"bpn" = (/turf/open/floor/plasteel/warning{dir = 1},/area/assembly/robotics) +"bpo" = (/obj/machinery/mecha_part_fabricator,/turf/open/floor/plasteel/warning{dir = 1},/area/assembly/robotics) +"bpp" = (/turf/open/floor/plasteel/warnwhite{dir = 8},/area/assembly/robotics) +"bpq" = (/obj/machinery/ai_status_display{pixel_x = 32; pixel_y = 0},/obj/structure/table,/obj/item/device/assembly/flash/handheld,/obj/item/device/assembly/flash/handheld,/obj/item/device/assembly/flash/handheld,/obj/item/device/assembly/flash/handheld,/obj/item/device/assembly/flash/handheld,/turf/open/floor/plasteel/white,/area/assembly/robotics) +"bpr" = (/obj/structure/closet/firecloset,/turf/open/floor/plasteel/warnwhite{dir = 10},/area/medical/research{name = "Research Division"}) +"bps" = (/obj/structure/sink{dir = 4; icon_state = "sink"; pixel_x = 11; pixel_y = 0},/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/warnwhite{dir = 6},/area/medical/research{name = "Research Division"}) +"bpt" = (/obj/machinery/r_n_d/destructive_analyzer,/turf/open/floor/plasteel/warning{dir = 1},/area/toxins/lab) +"bpu" = (/turf/open/floor/plasteel/warning{dir = 1},/area/toxins/lab) +"bpv" = (/obj/machinery/r_n_d/protolathe,/turf/open/floor/plasteel/warning{dir = 1},/area/toxins/lab) +"bpw" = (/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel/warnwhite{dir = 8},/area/toxins/lab) +"bpx" = (/obj/machinery/hologram/holopad,/turf/open/floor/plasteel/white,/area/toxins/lab) +"bpy" = (/obj/structure/table/glass,/obj/item/weapon/reagent_containers/glass/beaker/large{pixel_x = -3; pixel_y = 3},/obj/item/weapon/reagent_containers/glass/beaker{pixel_x = 8; pixel_y = 2},/obj/item/weapon/reagent_containers/dropper,/obj/machinery/airalarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/turf/open/floor/plasteel/white,/area/toxins/lab) +"bpz" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/asmaint2) +"bpA" = (/obj/machinery/light/small{dir = 1},/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/asmaint2) +"bpB" = (/obj/machinery/door/airlock/external{req_access_txt = "13"},/turf/open/floor/plating,/area/maintenance/asmaint2) +"bpC" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 0; pixel_y = 32},/obj/item/weapon/cigbutt,/turf/open/floor/plating,/area/maintenance/asmaint2) +"bpD" = (/obj/structure/shuttle/engine/propulsion{icon_state = "propulsion"; dir = 4},/turf/open/floor/plating/airless,/area/shuttle/abandoned) +"bpE" = (/obj/structure/shuttle/engine/heater{icon_state = "heater"; dir = 8},/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plating/airless,/area/shuttle/abandoned) +"bpF" = (/turf/closed/wall/shuttle{icon_state = "swall_f15"},/area/shuttle/abandoned) +"bpG" = (/turf/closed/wall/shuttle{icon_state = "swall15"; dir = 2},/area/shuttle/abandoned) +"bpH" = (/obj/machinery/computer/pod{id = "oldship_gun"},/turf/open/floor/plasteel/shuttle/white,/area/shuttle/abandoned) +"bpI" = (/turf/closed/wall/shuttle{icon_state = "swall7"; dir = 2},/area/shuttle/abandoned) +"bpJ" = (/obj/machinery/light/small{dir = 8},/obj/machinery/mass_driver{id = "trash"},/turf/open/floor/plating/warnplate{dir = 1},/area/maintenance/disposal) +"bpK" = (/obj/machinery/conveyor_switch/oneway{convdir = -1; id = "garbage"; name = "disposal coveyor"},/turf/open/floor/plating,/area/maintenance/disposal) +"bpL" = (/obj/machinery/light/small,/turf/open/floor/plating,/area/maintenance/disposal) +"bpM" = (/obj/structure/closet,/turf/open/floor/plating,/area/maintenance/disposal) +"bpN" = (/turf/closed/wall/shuttle{icon_state = "swall_s6"; dir = 2},/area/shuttle/supply) +"bpO" = (/turf/closed/wall/shuttle{icon_state = "swall12"; dir = 2},/area/shuttle/supply) +"bpP" = (/turf/closed/wall/shuttle{icon_state = "swall_s10"; dir = 2},/area/shuttle/supply) +"bpQ" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/quartermaster/storage) +"bpR" = (/obj/structure/closet/emcloset,/turf/open/floor/plasteel/warning{dir = 8},/area/quartermaster/storage) +"bpS" = (/obj/structure/closet/emcloset,/obj/machinery/airalarm{dir = 2; pixel_y = 24},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/quartermaster/storage) +"bpT" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/open/floor/plasteel,/area/quartermaster/storage) +"bpU" = (/obj/machinery/light{dir = 1},/obj/machinery/firealarm{pixel_y = 27},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/quartermaster/storage) +"bpV" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/plasteel,/area/quartermaster/storage) +"bpW" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 5},/turf/open/floor/plasteel,/area/quartermaster/storage) +"bpX" = (/obj/machinery/door/airlock/glass_mining{name = "Cargo Bay"; req_access_txt = "31"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/quartermaster/storage) +"bpY" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/brown{dir = 8},/area/quartermaster/office) +"bpZ" = (/obj/structure/disposalpipe/segment,/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/turf/open/floor/plasteel,/area/quartermaster/office) +"bqa" = (/obj/machinery/status_display{density = 0; pixel_y = 2; supply_display = 1},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/closed/wall,/area/quartermaster/office) +"bqb" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/quartermaster/office) +"bqc" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/turf/open/floor/plating,/area/quartermaster/office) +"bqd" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_mining{name = "Delivery Office"; req_access_txt = "50"},/turf/open/floor/plasteel,/area/quartermaster/office) +"bqe" = (/obj/machinery/light{dir = 8},/obj/machinery/door/firedoor,/obj/machinery/status_display{density = 0; layer = 3; pixel_x = -32; pixel_y = 0},/turf/open/floor/plasteel/brown/corner{dir = 8},/area/hallway/primary/central) +"bqf" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/door/firedoor,/turf/open/floor/plasteel,/area/hallway/primary/central) +"bqg" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/maintcentral) +"bqh" = (/turf/closed/wall,/area/crew_quarters/heads) +"bqi" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall,/area/crew_quarters/heads) +"bqj" = (/obj/machinery/door/airlock/command{name = "Head of Personnel"; req_access = null; req_access_txt = "57"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/wood,/area/crew_quarters/heads) +"bqk" = (/turf/closed/wall/r_wall,/area/crew_quarters/heads) +"bql" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/open/floor/plasteel/black,/area/engine/gravity_generator) +"bqm" = (/obj/machinery/light{dir = 4},/turf/open/floor/plasteel/black,/area/engine/gravity_generator) +"bqn" = (/turf/closed/wall,/area/crew_quarters/captain) +"bqo" = (/obj/machinery/light/small{dir = 1},/obj/structure/dresser,/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/open/floor/carpet,/area/crew_quarters/captain) +"bqp" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/carpet,/area/crew_quarters/captain) +"bqq" = (/obj/machinery/light_switch{pixel_y = 28},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/carpet,/area/crew_quarters/captain) +"bqr" = (/obj/machinery/door/airlock{name = "Private Restroom"; req_access_txt = "0"},/turf/open/floor/plasteel/freezer,/area/crew_quarters/captain) +"bqs" = (/obj/structure/sink{dir = 4; icon_state = "sink"; pixel_x = 11; pixel_y = 0},/obj/structure/mirror{pixel_x = 28},/obj/machinery/light/small{dir = 1},/turf/open/floor/plasteel/freezer,/area/crew_quarters/captain) +"bqt" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plating,/area/crew_quarters/captain) +"bqu" = (/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel,/area/hallway/primary/central) +"bqv" = (/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/turf/open/floor/plasteel,/area/hallway/primary/central) +"bqw" = (/obj/structure/table/glass,/obj/machinery/airalarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/obj/item/stack/cable_coil/random,/obj/item/stack/cable_coil/random,/turf/open/floor/plasteel/white,/area/medical/chemistry) +"bqx" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/white,/area/medical/chemistry) +"bqy" = (/obj/structure/disposalpipe/segment,/obj/machinery/chem_heater,/turf/open/floor/plasteel/white,/area/medical/chemistry) +"bqz" = (/obj/machinery/chem_dispenser,/turf/open/floor/plasteel/whiteyellow/side{dir = 2},/area/medical/chemistry) +"bqA" = (/obj/machinery/chem_master,/turf/open/floor/plasteel/whiteyellow/side{dir = 6},/area/medical/chemistry) +"bqB" = (/obj/item/device/radio/intercom{broadcasting = 1; freerange = 0; frequency = 1485; listening = 0; name = "Station Intercom (Medbay)"; pixel_x = 0; pixel_y = -30},/obj/machinery/light,/obj/machinery/firealarm{dir = 8; pixel_x = -24},/turf/open/floor/plasteel/white,/area/medical/medbay) +"bqC" = (/obj/structure/table/reinforced,/turf/open/floor/plasteel/white,/area/medical/medbay) +"bqD" = (/obj/structure/chair/office/light{dir = 8},/obj/machinery/button/door{desc = "A remote control switch for the medbay foyer."; id = "MedbayFoyer"; name = "Medbay Doors Control"; normaldoorcontrol = 1; pixel_x = -26; req_access_txt = "5"},/obj/effect/landmark/start{name = "Medical Doctor"},/turf/open/floor/plasteel/white,/area/medical/medbay) +"bqE" = (/obj/structure/chair/office/light{dir = 1},/obj/structure/sign/nosmoking_2{pixel_x = 28},/turf/open/floor/plasteel/white,/area/medical/medbay) +"bqF" = (/obj/structure/closet,/turf/open/floor/plasteel/red/side{dir = 10},/area/security/checkpoint/medical) +"bqG" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/red/side,/area/security/checkpoint/medical) +"bqH" = (/obj/machinery/light_switch{pixel_x = 28; pixel_y = 0},/obj/item/weapon/screwdriver{pixel_y = 10},/obj/item/device/radio/off,/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/turf/open/floor/plasteel/red/side{dir = 6},/area/security/checkpoint/medical) +"bqI" = (/obj/structure/table,/turf/open/floor/plasteel/black,/area/medical/morgue) +"bqJ" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/turf/open/floor/plasteel/black,/area/medical/morgue) +"bqK" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/light_switch{pixel_y = -25},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/black,/area/medical/morgue) +"bqL" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/light/small,/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/open/floor/plasteel/black,/area/medical/morgue) +"bqM" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/black,/area/medical/morgue) +"bqN" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/black,/area/medical/morgue) +"bqO" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/door/airlock/maintenance{name = "Morgue Maintenance"; req_access_txt = "6"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/medical/morgue) +"bqP" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) +"bqQ" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/power/apc{dir = 1; name = "Starboard Emergency Storage APC"; pixel_y = 24},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/storage/emergency) +"bqR" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/disposalpipe/sortjunction{sortType = 9},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) +"bqS" = (/obj/machinery/light{dir = 8},/obj/machinery/camera{c_tag = "Mech Bay"; dir = 4},/turf/open/floor/plasteel,/area/assembly/chargebay) +"bqT" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/assembly/chargebay) +"bqU" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/assembly/chargebay) +"bqV" = (/obj/machinery/hologram/holopad,/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/open/floor/plasteel,/area/assembly/chargebay) +"bqW" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/assembly/robotics) +"bqX" = (/obj/structure/table,/obj/item/stack/sheet/plasteel{amount = 10},/obj/item/stack/cable_coil,/obj/item/device/assembly/flash/handheld,/obj/item/device/assembly/flash/handheld,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/assembly/robotics) +"bqY" = (/obj/structure/chair/stool,/obj/effect/landmark/start{name = "Roboticist"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/assembly/robotics) +"bqZ" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/bot,/area/assembly/robotics) +"bra" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/plasteel/warnwhite{dir = 8},/area/assembly/robotics) +"brb" = (/obj/machinery/hologram/holopad,/turf/open/floor/plasteel/white,/area/assembly/robotics) +"brc" = (/obj/structure/table,/obj/machinery/cell_charger,/obj/item/weapon/stock_parts/cell/high/plus,/obj/item/device/radio/intercom{freerange = 0; frequency = 1459; name = "Station Intercom (General)"; pixel_x = 29},/turf/open/floor/plasteel/white,/area/assembly/robotics) +"brd" = (/turf/closed/wall/r_wall,/area/medical/research{name = "Research Division"}) +"bre" = (/obj/machinery/door/airlock/research{name = "Research Division Access"; req_access_txt = "47"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) +"brf" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall/r_wall,/area/medical/research{name = "Research Division"}) +"brg" = (/obj/machinery/computer/rdconsole/core,/turf/open/floor/plasteel,/area/toxins/lab) +"brh" = (/turf/open/floor/plasteel,/area/toxins/lab) +"bri" = (/obj/machinery/r_n_d/circuit_imprinter,/obj/item/weapon/reagent_containers/glass/beaker/sulphuric,/turf/open/floor/plasteel,/area/toxins/lab) +"brj" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/turf/open/floor/plasteel/warnwhite{dir = 8},/area/toxins/lab) +"brk" = (/obj/structure/table/glass,/obj/item/weapon/stock_parts/manipulator,/obj/item/weapon/stock_parts/capacitor,/obj/item/weapon/stock_parts/capacitor,/obj/item/weapon/stock_parts/manipulator,/obj/item/weapon/stock_parts/micro_laser,/obj/item/weapon/stock_parts/micro_laser,/obj/item/stack/cable_coil{pixel_x = 3; pixel_y = 3},/obj/item/stack/cable_coil,/obj/machinery/firealarm{dir = 4; pixel_x = 24},/turf/open/floor/plasteel/white,/area/toxins/lab) +"brl" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/open/floor/plating,/area/maintenance/asmaint2) +"brm" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 5},/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plating,/area/maintenance/asmaint2) +"brn" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/open/floor/plating,/area/maintenance/asmaint2) +"bro" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall,/area/maintenance/asmaint2) +"brp" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/turf/closed/wall,/area/maintenance/asmaint2) +"brq" = (/turf/open/floor/plating,/area/shuttle/abandoned) +"brr" = (/turf/closed/wall/shuttle{icon_state = "swall_f13"},/area/shuttle/abandoned) +"brs" = (/obj/structure/rack,/obj/item/clothing/suit/space/hardsuit/medical,/obj/item/clothing/mask/breath,/turf/open/floor/plasteel/shuttle/white,/area/shuttle/abandoned) +"brt" = (/obj/machinery/door/airlock/glass,/turf/open/floor/plating,/area/shuttle/abandoned) +"bru" = (/obj/machinery/mass_driver{dir = 4; icon_state = "mass_driver"; id = "oldship_gun"},/turf/open/floor/plating,/area/shuttle/abandoned) +"brv" = (/obj/machinery/door/poddoor{id = "oldship_gun"; name = "pod bay door"},/turf/open/floor/plating,/area/shuttle/abandoned) +"brw" = (/obj/machinery/door/poddoor{id = "trash"; name = "disposal bay door"},/turf/open/floor/plating,/area/maintenance/disposal) +"brx" = (/turf/closed/wall/shuttle{icon_state = "swall3"; dir = 2},/area/shuttle/supply) +"bry" = (/turf/open/floor/plasteel/shuttle,/area/shuttle/supply) +"brz" = (/turf/open/floor/plasteel/warning{dir = 8},/area/quartermaster/storage) +"brA" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/quartermaster/storage) +"brB" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/quartermaster/storage) +"brC" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/open/floor/plasteel,/area/quartermaster/storage) +"brD" = (/obj/machinery/door/airlock/glass_mining{name = "Cargo Bay"; req_access_txt = "31"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/open/floor/plasteel,/area/quartermaster/storage) +"brE" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/open/floor/plasteel/brown{dir = 8},/area/quartermaster/office) +"brF" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/open/floor/plasteel,/area/quartermaster/office) +"brG" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/quartermaster/office) +"brH" = (/obj/item/weapon/stamp{pixel_x = -3; pixel_y = 3},/obj/item/weapon/stamp/denied{pixel_x = 4; pixel_y = -2},/obj/structure/table,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/quartermaster/office) +"brI" = (/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/clipboard,/obj/item/weapon/pen/red,/obj/structure/table,/obj/machinery/computer/stockexchange,/turf/open/floor/plasteel,/area/quartermaster/office) +"brJ" = (/obj/machinery/computer/cargo/request,/turf/open/floor/plasteel,/area/quartermaster/office) +"brK" = (/obj/machinery/firealarm{pixel_y = 27},/turf/open/floor/plasteel,/area/quartermaster/office) +"brL" = (/obj/structure/grille,/obj/structure/window/fulltile,/turf/open/floor/plating,/area/quartermaster/office) +"brM" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plasteel,/area/hallway/primary/central) +"brN" = (/turf/open/floor/plasteel/red/corner{dir = 2},/area/hallway/primary/central) +"brO" = (/obj/machinery/button/flasher{id = "hopflash"; pixel_x = 6; pixel_y = 36},/obj/machinery/button/door{id = "hop"; name = "Privacy Shutters Control"; pixel_x = 6; pixel_y = 25; req_access_txt = "28"},/obj/machinery/button/door{id = "hopqueue"; name = "Queue Shutters Control"; pixel_x = -4; pixel_y = 25; req_access_txt = "28"},/obj/machinery/light_switch{pixel_x = -4; pixel_y = 36},/obj/machinery/pdapainter,/turf/open/floor/plasteel/blue/side{dir = 9},/area/crew_quarters/heads) +"brP" = (/obj/structure/table,/obj/machinery/newscaster/security_unit{pixel_x = 0; pixel_y = 32},/obj/item/weapon/hand_labeler,/obj/item/stack/packageWrap,/turf/open/floor/plasteel,/area/crew_quarters/heads) +"brQ" = (/obj/machinery/computer/security/telescreen{desc = "Used for watching Prison Wing holding areas."; name = "Prison Monitor"; network = list("Prison"); pixel_x = 0; pixel_y = 30},/obj/machinery/disposal/bin,/obj/structure/disposalpipe/trunk,/turf/open/floor/plasteel,/area/crew_quarters/heads) +"brR" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/bed/dogbed{anchored = 1; desc = "Ian's bed! Looks comfy."; name = "Ian's bed"},/mob/living/simple_animal/pet/dog/corgi/Ian{dir = 8},/turf/open/floor/plasteel,/area/crew_quarters/heads) +"brS" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/crew_quarters/heads) +"brT" = (/obj/structure/grille,/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"; pixel_x = -32; pixel_y = 0},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/engine/gravity_generator) +"brU" = (/obj/structure/grille,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/engine/gravity_generator) +"brV" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/airlock/glass_engineering{name = "Gravity Generator"; req_access_txt = "11"; req_one_access_txt = "0"},/turf/open/floor/plasteel/black,/area/engine/gravity_generator) +"brW" = (/obj/structure/grille,/obj/structure/sign/securearea{desc = "A warning sign which reads 'RADIOACTIVE AREA'"; icon_state = "radiation"; name = "RADIOACTIVE AREA"; pixel_x = 32; pixel_y = 0},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/engine/gravity_generator) +"brX" = (/obj/structure/bed,/obj/item/weapon/bedsheet/captain,/obj/machinery/airalarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/carpet,/area/crew_quarters/captain) +"brY" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/carpet,/area/crew_quarters/captain) +"brZ" = (/obj/structure/table/wood,/obj/item/device/flashlight/lamp/green,/turf/open/floor/carpet,/area/crew_quarters/captain) +"bsa" = (/obj/structure/toilet{dir = 4},/turf/open/floor/plasteel/freezer,/area/crew_quarters/captain) +"bsb" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/hallway/primary/central) +"bsc" = (/obj/structure/table/glass,/obj/item/weapon/grenade/chem_grenade,/obj/item/weapon/grenade/chem_grenade,/obj/item/weapon/grenade/chem_grenade,/obj/item/weapon/grenade/chem_grenade,/obj/item/weapon/screwdriver{pixel_x = -2; pixel_y = 6},/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/open/floor/plasteel/white,/area/medical/chemistry) +"bsd" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/turf/open/floor/plasteel/white,/area/medical/chemistry) +"bse" = (/obj/structure/table,/obj/item/weapon/folder/white,/obj/item/device/radio/headset/headset_med,/turf/open/floor/plasteel/white,/area/medical/chemistry) +"bsf" = (/turf/closed/wall,/area/medical/medbay) +"bsg" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_medical{id_tag = "MedbayFoyer"; name = "Medbay"; req_access_txt = "5"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/whiteblue/side{dir = 1},/area/medical/medbay) +"bsh" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_medical{id_tag = "MedbayFoyer"; name = "Medbay"; req_access_txt = "5"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/whiteblue/side{dir = 1},/area/medical/medbay) +"bsi" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/medical/medbay) +"bsj" = (/obj/machinery/computer/med_data,/turf/open/floor/plasteel/white,/area/medical/medbay) +"bsk" = (/obj/machinery/airalarm{dir = 1; icon_state = "alarm0"; pixel_y = -22},/obj/machinery/requests_console{announcementConsole = 0; department = "Medbay"; departmentType = 1; name = "Medbay RC"; pixel_x = 30; pixel_y = 0; pixel_z = 0},/obj/machinery/light,/turf/open/floor/plasteel/white,/area/medical/medbay) +"bsl" = (/obj/machinery/door/airlock/glass_security{name = "Security Office"; req_access_txt = "63"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/white,/area/security/checkpoint/medical) +"bsm" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/security/checkpoint/medical) +"bsn" = (/obj/structure/disposalpipe/segment,/obj/machinery/door/airlock/medical{name = "Morgue"; req_access_txt = "6;5"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/black,/area/medical/morgue) +"bso" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/closed/wall,/area/medical/morgue) +"bsp" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall,/area/medical/morgue) +"bsq" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,/turf/closed/wall/r_wall,/area/medical/genetics) +"bsr" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall/r_wall,/area/medical/genetics) +"bss" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) +"bst" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/closed/wall,/area/assembly/chargebay) +"bsu" = (/obj/machinery/mech_bay_recharge_port,/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/open/floor/plating,/area/assembly/chargebay) +"bsv" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/assembly/chargebay) +"bsw" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/assembly/chargebay) +"bsx" = (/obj/structure/grille,/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/assembly/robotics) +"bsy" = (/obj/machinery/disposal/bin,/obj/structure/disposalpipe/trunk{dir = 8},/turf/open/floor/plasteel,/area/assembly/robotics) +"bsz" = (/turf/open/floor/plasteel,/area/assembly/robotics) +"bsA" = (/obj/structure/table,/obj/item/device/assembly/prox_sensor{pixel_x = -8; pixel_y = 4},/obj/item/device/assembly/prox_sensor{pixel_x = -8; pixel_y = 4},/obj/item/device/assembly/prox_sensor{pixel_x = -8; pixel_y = 4},/obj/item/device/assembly/prox_sensor{pixel_x = -8; pixel_y = 4},/obj/item/weapon/stock_parts/cell/high/plus,/obj/item/weapon/stock_parts/cell/high/plus{pixel_x = 5; pixel_y = -5},/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/item/weapon/crowbar,/turf/open/floor/plasteel/white,/area/assembly/robotics) +"bsB" = (/turf/closed/wall,/area/assembly/robotics) +"bsC" = (/obj/machinery/door/firedoor/heavy,/obj/machinery/door/poddoor/preopen{id = "Biohazard"; name = "biohazard containment door"},/turf/open/floor/plasteel/bot,/area/medical/research{name = "Research Division"}) +"bsD" = (/obj/machinery/door/firedoor/heavy,/obj/machinery/door/poddoor/preopen{id = "Biohazard"; name = "biohazard containment door"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/bot,/area/medical/research{name = "Research Division"}) +"bsE" = (/obj/machinery/door/firedoor/heavy,/obj/machinery/door/poddoor/preopen{id = "Biohazard"; name = "biohazard containment door"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/bot,/area/medical/research{name = "Research Division"}) +"bsF" = (/turf/closed/wall,/area/toxins/lab) +"bsG" = (/turf/open/floor/plasteel/warnwhite{dir = 1},/area/toxins/lab) +"bsH" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/warnwhite{dir = 1},/area/toxins/lab) +"bsI" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/turf/open/floor/plasteel/warnwhite{dir = 1},/area/toxins/lab) +"bsJ" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/floor/plasteel/warnwhite/corner{dir = 4},/area/toxins/lab) +"bsK" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel/white,/area/toxins/lab) +"bsL" = (/obj/item/weapon/stock_parts/console_screen,/obj/structure/table/glass,/obj/item/weapon/stock_parts/console_screen,/obj/item/weapon/stock_parts/console_screen,/obj/item/weapon/stock_parts/matter_bin,/obj/item/weapon/stock_parts/matter_bin,/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/item/weapon/stock_parts/scanning_module{pixel_x = 2; pixel_y = 3},/obj/item/weapon/stock_parts/scanning_module,/obj/machinery/power/apc{dir = 4; name = "Research Lab APC"; pixel_x = 26; pixel_y = 0},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/open/floor/plasteel/white,/area/toxins/lab) +"bsM" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/obj/structure/plasticflaps{opacity = 1},/turf/open/floor/plasteel/loadingarea,/area/toxins/lab) +"bsN" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/closed/wall,/area/toxins/lab) +"bsO" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/open/floor/plating,/area/maintenance/asmaint2) +"bsP" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint2) +"bsQ" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/open/floor/plating,/area/maintenance/asmaint2) +"bsR" = (/turf/closed/wall/shuttle{icon_state = "swall_f12"},/area/shuttle/abandoned) +"bsS" = (/turf/closed/wall/shuttle{icon_state = "swall14"; dir = 2},/area/shuttle/abandoned) +"bsT" = (/obj/structure/grille,/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 0},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/quartermaster/storage) +"bsU" = (/obj/machinery/conveyor_switch/oneway{id = "QMLoad2"},/turf/open/floor/plasteel/warning{dir = 8},/area/quartermaster/storage) +"bsV" = (/turf/open/floor/plasteel/bot,/area/quartermaster/storage) +"bsW" = (/obj/structure/grille,/obj/structure/window/fulltile,/turf/open/floor/plating,/area/quartermaster/storage) +"bsX" = (/turf/open/floor/plasteel/brown/corner{dir = 1},/area/quartermaster/office) +"bsY" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/quartermaster/office) +"bsZ" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/manifold4w/scrubbers/hidden,/turf/open/floor/plasteel,/area/quartermaster/office) +"bta" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/quartermaster/office) +"btb" = (/obj/effect/landmark/start{name = "Cargo Technician"},/obj/structure/chair/office/dark{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/quartermaster/office) +"btc" = (/obj/structure/table/reinforced,/obj/machinery/door/firedoor,/obj/machinery/door/window/westleft{name = "Cargo Desk"; req_access_txt = "50"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/quartermaster/office) +"btd" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/delivery,/area/quartermaster/office) +"bte" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/quartermaster/office) +"btf" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/turf/open/floor/plasteel/brown/corner{dir = 8},/area/hallway/primary/central) +"btg" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/central) +"bth" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel/red/side{dir = 4},/area/hallway/primary/central) +"bti" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/door/poddoor/shutters/preopen{id = "hopqueue"; name = "HoP Queue Shutters"},/turf/open/floor/plasteel/loadingarea{dir = 8},/area/hallway/primary/central) +"btj" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel/delivery,/area/hallway/primary/central) +"btk" = (/obj/structure/table/reinforced,/obj/machinery/door/window/northleft{dir = 8; icon_state = "left"; name = "Reception Window"; req_access_txt = "0"},/obj/machinery/door/window/brigdoor{base_state = "rightsecure"; dir = 4; icon_state = "rightsecure"; name = "Head of Personnel's Desk"; req_access = null; req_access_txt = "57"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/flasher{id = "hopflash"; pixel_x = 0; pixel_y = 28},/obj/machinery/door/poddoor/shutters/preopen{id = "hop"; layer = 2.9; name = "Privacy Shutters"},/turf/open/floor/plasteel,/area/crew_quarters/heads) +"btl" = (/obj/structure/chair/office/dark{dir = 8},/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel/blue/side{dir = 8},/area/crew_quarters/heads) +"btm" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/carpet,/area/crew_quarters/heads) +"btn" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/turf/open/floor/carpet,/area/crew_quarters/heads) +"bto" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/carpet,/area/crew_quarters/heads) +"btp" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/crew_quarters/heads) +"btq" = (/obj/structure/chair/office/light,/obj/machinery/firealarm{dir = 8; pixel_x = -24},/turf/open/floor/plasteel/warning{dir = 9},/area/engine/gravity_generator) +"btr" = (/turf/open/floor/plasteel/warning{dir = 1},/area/engine/gravity_generator) +"bts" = (/obj/machinery/airalarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/warning{dir = 5},/area/engine/gravity_generator) +"btt" = (/obj/structure/closet/secure_closet/captains,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/carpet,/area/crew_quarters/captain) +"btu" = (/obj/structure/chair/comfy/brown{dir = 4},/obj/machinery/camera{c_tag = "Captain's Quarters"; dir = 1},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/open/floor/carpet,/area/crew_quarters/captain) +"btv" = (/obj/structure/table/wood,/obj/item/weapon/storage/box/matches,/obj/item/weapon/razor{pixel_x = -4; pixel_y = 2},/obj/item/clothing/mask/cigarette/cigar,/obj/item/weapon/reagent_containers/food/drinks/flask/gold,/turf/open/floor/carpet,/area/crew_quarters/captain) +"btw" = (/obj/machinery/shower{dir = 4},/obj/item/weapon/soap/deluxe,/obj/item/weapon/bikehorn/rubberducky,/obj/effect/landmark{name = "revenantspawn"},/turf/open/floor/plasteel/freezer,/area/crew_quarters/captain) +"btx" = (/obj/structure/disposalpipe/segment,/obj/machinery/light{dir = 8},/turf/open/floor/plasteel,/area/hallway/primary/central) +"bty" = (/obj/structure/closet/wardrobe/chemistry_white,/obj/machinery/light_switch{pixel_x = -23; pixel_y = 0},/turf/open/floor/plasteel/white,/area/medical/chemistry) +"btz" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/table,/obj/item/weapon/book/manual/wiki/chemistry,/obj/item/weapon/book/manual/wiki/chemistry{pixel_x = 3; pixel_y = 3},/turf/open/floor/plasteel/white,/area/medical/chemistry) +"btA" = (/obj/structure/chair,/turf/open/floor/plasteel/white,/area/medical/chemistry) +"btB" = (/obj/structure/table,/obj/item/weapon/hand_labeler,/obj/item/stack/packageWrap,/turf/open/floor/plasteel/white,/area/medical/chemistry) +"btC" = (/obj/structure/bed/roller,/obj/machinery/button/door{desc = "A remote control switch for the medbay foyer."; id = "MedbayFoyer"; name = "Medbay Exit Button"; normaldoorcontrol = 1; pixel_x = 0; pixel_y = 26},/obj/structure/extinguisher_cabinet{pixel_x = -27; pixel_y = 0},/turf/open/floor/plasteel/white,/area/medical/medbay) +"btD" = (/obj/machinery/status_display,/turf/closed/wall,/area/medical/medbay) +"btE" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/medical{name = "Medbay Reception"; req_access_txt = "5"},/turf/open/floor/plasteel/white,/area/medical/medbay) +"btF" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/turf/open/floor/plasteel/white,/area/medical/medbay) +"btG" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/white,/area/medical/medbay) +"btH" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/turf/open/floor/plasteel/white,/area/medical/medbay) +"btI" = (/obj/structure/sign/nosmoking_2{pixel_x = 0; pixel_y = 30},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/medbay) +"btJ" = (/obj/machinery/airalarm{frequency = 1439; pixel_y = 23},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/medbay) +"btK" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/open/floor/plasteel/white,/area/medical/medbay) +"btL" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/plasteel/white,/area/medical/medbay) +"btM" = (/obj/machinery/light{dir = 1},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/white,/area/medical/medbay) +"btN" = (/obj/structure/bed/roller,/turf/open/floor/plasteel/whiteblue/side{dir = 4},/area/medical/medbay) +"btO" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/medical/genetics) +"btP" = (/obj/structure/table/glass,/obj/item/weapon/folder/white,/obj/item/device/radio/headset/headset_medsci,/obj/machinery/requests_console{department = "Genetics"; departmentType = 0; name = "Genetics Requests Console"; pixel_x = 0; pixel_y = 30},/obj/item/weapon/storage/pill_bottle/mutadone,/obj/item/weapon/storage/pill_bottle/mannitol,/turf/open/floor/plasteel/white,/area/medical/genetics) +"btQ" = (/obj/machinery/power/apc{dir = 1; name = "Genetics APC"; pixel_y = 24},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/open/floor/plasteel/white,/area/medical/genetics) +"btR" = (/obj/machinery/light{dir = 1},/obj/machinery/airalarm{frequency = 1439; pixel_y = 23},/turf/open/floor/plasteel/white,/area/medical/genetics) +"btS" = (/obj/machinery/dna_scannernew,/turf/open/floor/plasteel/whiteblue/side{dir = 5},/area/medical/genetics) +"btT" = (/obj/structure/window/reinforced{dir = 8},/turf/open/floor/plasteel,/area/medical/genetics) +"btU" = (/mob/living/carbon/monkey,/turf/open/floor/plasteel,/area/medical/genetics) +"btV" = (/turf/closed/wall/r_wall,/area/medical/genetics) +"btW" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 8},/turf/closed/wall,/area/assembly/chargebay) +"btX" = (/obj/structure/extinguisher_cabinet{pixel_x = -27},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/bluegrid,/area/assembly/chargebay) +"btY" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/bluegrid,/area/assembly/chargebay) +"btZ" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/bluegrid,/area/assembly/chargebay) +"bua" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/turf/open/floor/plasteel,/area/assembly/chargebay) +"bub" = (/obj/machinery/airalarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/assembly/chargebay) +"buc" = (/obj/structure/table,/obj/item/weapon/retractor,/obj/item/weapon/hemostat,/turf/open/floor/plasteel,/area/assembly/robotics) +"bud" = (/obj/structure/table,/obj/item/device/mmi,/obj/item/device/mmi,/obj/item/device/mmi,/obj/structure/window/reinforced{dir = 4; pixel_x = 0},/turf/open/floor/plasteel,/area/assembly/robotics) +"bue" = (/obj/structure/table,/obj/item/weapon/storage/firstaid/regular{empty = 1; name = "First-Aid (empty)"},/obj/item/weapon/storage/firstaid/regular{empty = 1; name = "First-Aid (empty)"},/obj/item/weapon/storage/firstaid/regular{empty = 1; name = "First-Aid (empty)"},/obj/item/device/healthanalyzer,/obj/item/device/healthanalyzer,/obj/item/device/healthanalyzer,/turf/open/floor/plasteel/white,/area/assembly/robotics) +"buf" = (/obj/structure/grille,/obj/machinery/door/poddoor/shutters/preopen{id = "robotics2"; name = "robotics lab shutters"},/obj/structure/window/fulltile,/obj/machinery/door/poddoor/shutters/preopen{id = "robotics2"; name = "robotics lab shutters"},/turf/open/floor/plating,/area/assembly/robotics) +"bug" = (/turf/open/floor/plasteel/white/corner{dir = 2},/area/medical/research{name = "Research Division"}) +"buh" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/white/side{dir = 2},/area/medical/research{name = "Research Division"}) +"bui" = (/obj/machinery/firealarm{dir = 4; pixel_x = 24},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/white/corner{dir = 8},/area/medical/research{name = "Research Division"}) +"buj" = (/obj/item/weapon/folder/white,/obj/structure/table,/obj/item/weapon/disk/tech_disk{pixel_x = 0; pixel_y = 0},/obj/item/weapon/disk/tech_disk{pixel_x = 0; pixel_y = 0},/obj/item/weapon/disk/design_disk,/obj/item/weapon/disk/design_disk,/turf/open/floor/plasteel/white,/area/toxins/lab) +"buk" = (/obj/structure/table,/obj/machinery/cell_charger,/obj/item/weapon/stock_parts/cell/high/plus,/obj/item/weapon/stock_parts/cell/high/plus,/turf/open/floor/plasteel/white,/area/toxins/lab) +"bul" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/white,/area/toxins/lab) +"bum" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plasteel/white,/area/toxins/lab) +"bun" = (/obj/machinery/light_switch{pixel_x = 0; pixel_y = -23},/turf/open/floor/plasteel/white,/area/toxins/lab) +"buo" = (/obj/machinery/door/window/eastright{base_state = "left"; dir = 8; icon_state = "left"; name = "Research Division Delivery"; req_access_txt = "47"},/turf/open/floor/plasteel/delivery,/area/toxins/lab) +"bup" = (/obj/machinery/navbeacon{codes_txt = "delivery;dir=8"; dir = 8; freq = 1400; location = "Research Division"},/turf/open/floor/plasteel/bot,/area/toxins/lab) +"buq" = (/turf/closed/wall/r_wall,/area/toxins/explab) +"bur" = (/obj/structure/shuttle/engine/propulsion{icon_state = "propulsion_r"; dir = 4},/turf/open/floor/plating/airless,/area/shuttle/abandoned) +"bus" = (/turf/closed/wall/shuttle{icon_state = "swall_f17"},/area/shuttle/abandoned) +"but" = (/obj/machinery/door/airlock/shuttle,/turf/open/floor/plating,/area/shuttle/abandoned) +"buu" = (/obj/item/weapon/stock_parts/cell{charge = 100; maxcharge = 15000},/turf/open/floor/plasteel/shuttle/white,/area/shuttle/abandoned) +"buv" = (/turf/closed/wall/shuttle{icon_state = "swall_f14"},/area/shuttle/abandoned) +"buw" = (/obj/structure/rack,/obj/item/weapon/tank/internals/emergency_oxygen,/obj/item/weapon/tank/internals/emergency_oxygen,/obj/item/weapon/tank/internals/emergency_oxygen,/obj/item/weapon/tank/internals/emergency_oxygen,/obj/item/weapon/storage/toolbox/mechanical,/turf/open/floor/plasteel/shuttle/white,/area/shuttle/abandoned) +"bux" = (/obj/structure/frame/computer{anchored = 1},/turf/open/floor/plasteel/shuttle/white,/area/shuttle/abandoned) +"buy" = (/turf/closed/wall/shuttle{icon_state = "swall_f11"},/area/shuttle/abandoned) +"buz" = (/obj/machinery/conveyor{dir = 4; id = "QMLoad2"},/obj/machinery/door/poddoor{id = "QMLoaddoor2"; name = "supply dock loading door"},/turf/open/floor/plating,/area/shuttle/supply) +"buA" = (/obj/machinery/conveyor{dir = 4; id = "QMLoad2"},/obj/machinery/door/poddoor{id = "QMLoaddoor2"; name = "supply dock loading door"},/turf/open/floor/plating,/area/quartermaster/storage) +"buB" = (/obj/structure/plasticflaps,/obj/machinery/conveyor{dir = 4; id = "QMLoad2"},/turf/open/floor/plating,/area/quartermaster/storage) +"buC" = (/obj/machinery/conveyor{dir = 4; id = "QMLoad2"},/turf/open/floor/plating/warnplate{dir = 1},/area/quartermaster/storage) +"buD" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 5},/turf/open/floor/plasteel/loadingarea{dir = 4},/area/quartermaster/storage) +"buE" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/quartermaster/storage) +"buF" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/quartermaster/storage) +"buG" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/quartermaster/storage) +"buH" = (/obj/machinery/light_switch{pixel_x = 27},/turf/open/floor/plasteel,/area/quartermaster/storage) +"buI" = (/obj/machinery/autolathe,/obj/machinery/light_switch{pixel_x = -27},/turf/open/floor/plasteel,/area/quartermaster/office) +"buJ" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/quartermaster/office) +"buK" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/quartermaster/office) +"buL" = (/obj/machinery/computer/cargo,/turf/open/floor/plasteel,/area/quartermaster/office) +"buM" = (/turf/open/floor/plasteel/bot,/area/quartermaster/office) +"buN" = (/obj/machinery/hologram/holopad,/turf/open/floor/plasteel,/area/quartermaster/office) +"buO" = (/obj/machinery/door/firedoor,/turf/open/floor/plasteel,/area/quartermaster/office) +"buP" = (/turf/open/floor/plasteel/red/corner{dir = 4},/area/hallway/primary/central) +"buQ" = (/obj/structure/grille,/obj/structure/window/fulltile,/turf/open/floor/plating,/area/hallway/primary/central) +"buR" = (/turf/open/floor/plasteel/bot,/area/hallway/primary/central) +"buS" = (/obj/structure/grille,/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/door/poddoor/shutters/preopen{id = "hop"; layer = 2.9; name = "Privacy Shutters"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/crew_quarters/heads) +"buT" = (/obj/machinery/computer/card,/turf/open/floor/plasteel/blue/side{dir = 10},/area/crew_quarters/heads) +"buU" = (/turf/open/floor/carpet,/area/crew_quarters/heads) +"buV" = (/obj/machinery/hologram/holopad,/turf/open/floor/carpet,/area/crew_quarters/heads) +"buW" = (/obj/machinery/airalarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/crew_quarters/heads) +"buX" = (/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/power/apc{dir = 8; name = "Gravity Generator APC"; pixel_x = -25; pixel_y = 1},/obj/structure/table,/obj/item/weapon/paper/gravity_gen{layer = 3},/obj/item/weapon/pen/blue,/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -35},/turf/open/floor/plasteel,/area/engine/gravity_generator) +"buY" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel,/area/engine/gravity_generator) +"buZ" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/hologram/holopad,/turf/open/floor/plasteel,/area/engine/gravity_generator) +"bva" = (/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/cable,/obj/machinery/power/smes{charge = 5e+006},/turf/open/floor/plasteel,/area/engine/gravity_generator) +"bvb" = (/turf/closed/wall/r_wall,/area/teleporter) +"bvc" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/closed/wall/r_wall,/area/teleporter) +"bvd" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall/r_wall,/area/teleporter) +"bve" = (/obj/machinery/door/airlock/maintenance{name = "Teleporter Maintenance"; req_access_txt = "17"},/obj/structure/sign/securearea{pixel_x = -32; pixel_y = 0},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plating,/area/teleporter) +"bvf" = (/obj/machinery/door/firedoor,/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel,/area/hallway/primary/central) +"bvg" = (/obj/machinery/door/firedoor,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/hallway/primary/central) +"bvh" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_medical{id_tag = null; name = "Chemistry Lab"; req_access_txt = "5; 33"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/white,/area/medical/chemistry) +"bvi" = (/obj/structure/grille,/obj/structure/disposalpipe/segment,/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/medical/chemistry) +"bvj" = (/obj/structure/table/reinforced,/obj/machinery/door/window/southleft{dir = 1; name = "Chemistry Desk"; req_access_txt = "33"},/obj/machinery/door/firedoor,/turf/open/floor/plating,/area/medical/chemistry) +"bvk" = (/obj/structure/bed/roller,/turf/open/floor/plasteel/white,/area/medical/medbay) +"bvl" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/open/floor/plasteel/white,/area/medical/medbay) +"bvm" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/white,/area/medical/medbay) +"bvn" = (/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel/white,/area/medical/medbay) +"bvo" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 5},/turf/open/floor/plasteel/white,/area/medical/medbay) +"bvp" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/medbay) +"bvq" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/medbay) +"bvr" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/medbay) +"bvs" = (/obj/structure/table/glass,/obj/item/weapon/storage/box/rxglasses,/turf/open/floor/plasteel/white,/area/medical/genetics) +"bvt" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/white,/area/medical/genetics) +"bvu" = (/obj/structure/chair/office/light{dir = 4},/obj/effect/landmark/start{name = "Geneticist"},/turf/open/floor/plasteel/white,/area/medical/genetics) +"bvv" = (/obj/machinery/computer/scan_consolenew,/turf/open/floor/plasteel/whiteblue/side{dir = 6},/area/medical/genetics) +"bvw" = (/obj/structure/window/reinforced{dir = 8},/mob/living/carbon/monkey,/turf/open/floor/plasteel,/area/medical/genetics) +"bvx" = (/turf/open/floor/plasteel,/area/medical/genetics) +"bvy" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/sortjunction{dir = 2; icon_state = "pipe-j2s"; sortType = 14},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/open/floor/plating,/area/maintenance/asmaint) +"bvz" = (/obj/machinery/door/airlock/maintenance{name = "Mech Bay Maintenance"; req_access_txt = "29"},/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/assembly/chargebay) +"bvA" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/assembly/chargebay) +"bvB" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/assembly/chargebay) +"bvC" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/assembly/chargebay) +"bvD" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/turf/open/floor/plasteel,/area/assembly/chargebay) +"bvE" = (/obj/structure/table,/obj/item/weapon/circular_saw,/obj/item/weapon/scalpel{pixel_y = 12},/turf/open/floor/plasteel/white/corner{dir = 2},/area/assembly/robotics) +"bvF" = (/obj/structure/table,/obj/item/clothing/gloves/color/latex,/obj/item/weapon/surgical_drapes,/obj/item/weapon/razor,/obj/structure/window/reinforced{dir = 4; pixel_x = 0},/turf/open/floor/plasteel/white/corner{dir = 8},/area/assembly/robotics) +"bvG" = (/obj/machinery/button/door{dir = 2; id = "robotics2"; name = "Shutters Control Button"; pixel_x = 24; pixel_y = -24; req_access_txt = "29"},/turf/open/floor/plasteel/white,/area/assembly/robotics) +"bvH" = (/obj/structure/table/reinforced,/obj/machinery/door/window/eastright{base_state = "left"; dir = 8; icon_state = "left"; name = "Robotics Desk"; req_access_txt = "29"},/obj/machinery/door/poddoor/shutters/preopen{id = "robotics2"; name = "robotics lab shutters"},/obj/item/weapon/folder/white,/obj/item/weapon/pen,/turf/open/floor/plating,/area/assembly/robotics) +"bvI" = (/turf/open/floor/plasteel/white/side{dir = 5},/area/medical/research{name = "Research Division"}) +"bvJ" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/white/side{dir = 9},/area/medical/research{name = "Research Division"}) +"bvK" = (/obj/structure/grille,/obj/machinery/door/poddoor/shutters/preopen{id = "rnd2"; name = "research lab shutters"},/obj/structure/window/fulltile,/turf/open/floor/plating,/area/toxins/lab) +"bvL" = (/obj/machinery/door/firedoor/heavy,/obj/machinery/door/poddoor/shutters/preopen{id = "rnd2"; name = "research lab shutters"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/white,/area/toxins/lab) +"bvM" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/firedoor/heavy,/obj/machinery/door/poddoor/shutters/preopen{id = "rnd2"; name = "research lab shutters"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/white,/area/toxins/lab) +"bvN" = (/obj/structure/table,/obj/item/weapon/paper_bin{pixel_x = 0; pixel_y = 6},/turf/open/floor/plasteel/white/corner{dir = 2},/area/toxins/explab) +"bvO" = (/obj/structure/table,/obj/item/weapon/pen,/obj/machinery/camera{c_tag = "Experimentor Lab"; dir = 2; network = list("SS13","RD")},/obj/item/weapon/hand_labeler,/obj/item/stack/packageWrap,/turf/open/floor/plasteel/white/side{dir = 2},/area/toxins/explab) +"bvP" = (/obj/structure/table,/obj/item/weapon/folder/white,/obj/item/weapon/folder/white,/obj/machinery/airalarm{frequency = 1439; pixel_y = 23},/obj/item/device/radio/off,/turf/open/floor/plasteel/white/side{dir = 2},/area/toxins/explab) +"bvQ" = (/obj/structure/closet/l3closet/scientist,/turf/open/floor/plasteel/white/side{dir = 2},/area/toxins/explab) +"bvR" = (/obj/structure/closet/emcloset{pixel_x = -2},/turf/open/floor/plasteel/white/corner{dir = 8},/area/toxins/explab) +"bvS" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/sign/securearea{pixel_x = -32},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/asmaint2) +"bvT" = (/obj/structure/chair{dir = 1},/turf/open/floor/plasteel/shuttle/white,/area/shuttle/abandoned) +"bvU" = (/obj/item/weapon/shard{icon_state = "medium"},/turf/open/floor/plasteel/shuttle/white,/area/shuttle/abandoned) +"bvV" = (/obj/machinery/door/airlock/shuttle{name = "Supply Shuttle Airlock"; req_access_txt = "31"},/turf/open/floor/plating,/area/shuttle/supply) +"bvW" = (/obj/machinery/door/airlock/external{name = "Supply Dock Airlock"; req_access_txt = "31"},/turf/open/floor/plating,/area/quartermaster/storage) +"bvX" = (/turf/open/floor/plating,/area/quartermaster/storage) +"bvY" = (/turf/open/floor/plasteel/warning{dir = 9},/area/quartermaster/storage) +"bvZ" = (/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel/bot,/area/quartermaster/storage) +"bwa" = (/turf/open/floor/plasteel/delivery,/area/quartermaster/storage) +"bwb" = (/obj/machinery/navbeacon{codes_txt = "delivery;dir=8"; dir = 8; freq = 1400; location = "QM #1"},/mob/living/simple_animal/bot/mulebot{beacon_freq = 1400; home_destination = "QM #1"; suffix = "#1"},/turf/open/floor/plasteel/bot,/area/quartermaster/storage) +"bwc" = (/obj/structure/table,/obj/machinery/requests_console{department = "Cargo Bay"; departmentType = 2; pixel_x = -30; pixel_y = 0},/obj/item/device/multitool,/obj/machinery/camera{c_tag = "Cargo Office"; dir = 4; network = list("SS13")},/turf/open/floor/plasteel,/area/quartermaster/office) +"bwd" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_mining{name = "Cargo Office"; req_access_txt = "50"},/turf/open/floor/plasteel,/area/quartermaster/office) +"bwe" = (/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel,/area/quartermaster/office) +"bwf" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel,/area/hallway/primary/central) +"bwg" = (/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel/bot,/area/hallway/primary/central) +"bwh" = (/obj/structure/grille,/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"; pixel_y = -32},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/cable,/obj/machinery/door/poddoor/shutters/preopen{id = "hop"; layer = 2.9; name = "Privacy Shutters"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/crew_quarters/heads) +"bwi" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/filingcabinet/chestdrawer,/turf/open/floor/plasteel,/area/crew_quarters/heads) +"bwj" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/open/floor/carpet,/area/crew_quarters/heads) +"bwk" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/carpet,/area/crew_quarters/heads) +"bwl" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/crew_quarters/heads) +"bwm" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 5},/turf/closed/wall/r_wall,/area/engine/gravity_generator) +"bwn" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/turf/closed/wall/r_wall,/area/engine/gravity_generator) +"bwo" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/engine/gravity_generator) +"bwp" = (/turf/open/floor/plasteel,/area/engine/gravity_generator) +"bwq" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/plasteel,/area/engine/gravity_generator) +"bwr" = (/obj/machinery/power/terminal{icon_state = "term"; dir = 1},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/closed/wall/r_wall,/area/engine/gravity_generator) +"bws" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/turf/closed/wall/r_wall,/area/engine/gravity_generator) +"bwt" = (/turf/closed/wall,/area/teleporter) +"bwu" = (/obj/structure/extinguisher_cabinet{pixel_x = -27; pixel_y = 1},/obj/structure/table,/obj/item/device/radio/beacon,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/turf/open/floor/plasteel,/area/teleporter) +"bwv" = (/obj/structure/table,/obj/item/weapon/hand_tele,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/teleporter) +"bww" = (/obj/item/device/radio/intercom{broadcasting = 0; listening = 1; name = "Station Intercom (General)"; pixel_y = 20},/obj/structure/closet/crate,/obj/item/weapon/crowbar,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/teleporter) +"bwx" = (/obj/machinery/firealarm{dir = 2; pixel_y = 24},/obj/machinery/light{dir = 1},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/teleporter) +"bwy" = (/obj/machinery/camera{c_tag = "Teleporter"},/obj/machinery/airalarm{frequency = 1439; pixel_y = 23},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/teleporter) +"bwz" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/plasteel,/area/teleporter) +"bwA" = (/obj/machinery/light_switch{pixel_x = 27},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel,/area/teleporter) +"bwB" = (/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel/blue/side{dir = 8},/area/hallway/primary/central) +"bwC" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/turf/open/floor/plasteel,/area/hallway/primary/central) +"bwD" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/medical/medbay) +"bwE" = (/obj/structure/table,/obj/item/weapon/crowbar,/obj/item/clothing/tie/stethoscope,/obj/item/weapon/reagent_containers/spray/cleaner,/obj/structure/sign/nosmoking_2{pixel_x = 0; pixel_y = 30},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/whiteyellow/corner{dir = 4},/area/medical/medbay) +"bwF" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/whiteyellow/side{dir = 1},/area/medical/medbay) +"bwG" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden,/turf/open/floor/plasteel/whiteyellow/side{dir = 1},/area/medical/medbay) +"bwH" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/whiteyellow/side{dir = 1},/area/medical/medbay) +"bwI" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/whiteyellow/corner{dir = 1},/area/medical/medbay) +"bwJ" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/noticeboard{pixel_y = 32},/obj/machinery/camera{c_tag = "Medbay West"; dir = 2; network = list("SS13")},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/medbay) +"bwK" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/medbay) +"bwL" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/turf/open/floor/plasteel/white,/area/medical/medbay) +"bwM" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/white,/area/medical/medbay) +"bwN" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/open/floor/plasteel/white,/area/medical/medbay) +"bwO" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel/white,/area/medical/medbay) +"bwP" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/open/floor/plasteel/white,/area/medical/medbay) +"bwQ" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/open/floor/plasteel/whiteblue/corner{dir = 2},/area/medical/medbay) +"bwR" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/whiteblue/side{dir = 2},/area/medical/medbay) +"bwS" = (/obj/structure/bed/roller,/turf/open/floor/plasteel/whiteblue/side{dir = 6},/area/medical/medbay) +"bwT" = (/obj/structure/table/glass,/obj/item/weapon/storage/box/disks{pixel_x = 2; pixel_y = 2},/turf/open/floor/plasteel/white,/area/medical/genetics) +"bwU" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/turf/open/floor/plasteel/white,/area/medical/genetics) +"bwV" = (/turf/open/floor/plasteel/white,/area/medical/genetics) +"bwW" = (/obj/machinery/door/window/westleft{name = "Monkey Pen"; req_access_txt = "9"},/turf/open/floor/plasteel,/area/medical/genetics) +"bwX" = (/obj/structure/table,/obj/item/weapon/crowbar/large,/turf/open/floor/plasteel,/area/assembly/chargebay) +"bwY" = (/obj/structure/table,/obj/item/weapon/storage/toolbox/mechanical,/turf/open/floor/plasteel,/area/assembly/chargebay) +"bwZ" = (/obj/structure/reagent_dispensers/fueltank,/turf/open/floor/plasteel,/area/assembly/chargebay) +"bxa" = (/obj/machinery/recharge_station,/turf/open/floor/plasteel/bot,/area/assembly/chargebay) +"bxb" = (/obj/structure/table,/obj/item/weapon/storage/box/bodybags,/obj/item/weapon/pen,/turf/open/floor/plasteel/white/side{dir = 4},/area/assembly/robotics) +"bxc" = (/obj/structure/table/optable{name = "Robotics Operating Table"},/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel/white,/area/assembly/robotics) +"bxd" = (/obj/machinery/computer/operating{name = "Robotics Operating Computer"},/obj/machinery/light,/turf/open/floor/plasteel/white,/area/assembly/robotics) +"bxe" = (/obj/machinery/light_switch{pixel_x = -23; pixel_y = 0},/turf/open/floor/plasteel/warnwhite{dir = 8},/area/assembly/robotics) +"bxf" = (/obj/structure/closet/wardrobe/robotics_black,/obj/item/device/radio/headset/headset_sci{pixel_x = -3},/turf/open/floor/plasteel/white,/area/assembly/robotics) +"bxg" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/open/floor/plasteel/white/side{dir = 5},/area/medical/research{name = "Research Division"}) +"bxh" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) +"bxi" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white/side{dir = 9},/area/medical/research{name = "Research Division"}) +"bxj" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/noticeboard{pixel_y = 32},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) +"bxk" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/camera{c_tag = "Research Division North"; dir = 2},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) +"bxl" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white/side{dir = 10},/area/medical/research{name = "Research Division"}) +"bxm" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) +"bxn" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) +"bxo" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white/side{dir = 6},/area/medical/research{name = "Research Division"}) +"bxp" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) +"bxq" = (/obj/structure/grille,/obj/structure/window/fulltile,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/toxins/explab) +"bxr" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/toxins/explab) +"bxs" = (/obj/machinery/firealarm{dir = 2; pixel_y = 24},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/light{dir = 1},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/open/floor/plasteel/white,/area/toxins/explab) +"bxt" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/toxins/explab) +"bxu" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/toxins/explab) +"bxv" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/toxins/explab) +"bxw" = (/obj/machinery/door/airlock/maintenance{name = "Experimentation Lab Maintenance"; req_access_txt = "7"},/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/toxins/explab) +"bxx" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/disposalpipe/junction{icon_state = "pipe-j2"; dir = 1},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint2) +"bxy" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/shuttle/abandoned) +"bxz" = (/obj/machinery/button/door{dir = 2; id = "QMLoaddoor2"; name = "Loading Doors"; pixel_x = 24; pixel_y = 8},/obj/machinery/button/door{id = "QMLoaddoor"; name = "Loading Doors"; pixel_x = 24; pixel_y = -8},/turf/open/floor/plasteel/shuttle,/area/shuttle/supply) +"bxA" = (/obj/machinery/camera{c_tag = "Cargo Recieving Dock"; dir = 4},/obj/machinery/button/door{id = "QMLoaddoor"; layer = 4; name = "Loading Doors"; pixel_x = -24; pixel_y = -8},/obj/machinery/button/door{dir = 2; id = "QMLoaddoor2"; layer = 4; name = "Loading Doors"; pixel_x = -24; pixel_y = 8},/turf/open/floor/plasteel/warning{dir = 8},/area/quartermaster/storage) +"bxB" = (/obj/machinery/navbeacon{codes_txt = "delivery;dir=8"; dir = 8; freq = 1400; location = "QM #2"},/mob/living/simple_animal/bot/mulebot{home_destination = "QM #2"; suffix = "#2"},/turf/open/floor/plasteel/bot,/area/quartermaster/storage) +"bxC" = (/obj/structure/table,/obj/machinery/firealarm{dir = 8; pixel_x = -24},/obj/item/weapon/folder/yellow,/turf/open/floor/plasteel,/area/quartermaster/office) +"bxD" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/plasteel,/area/quartermaster/office) +"bxE" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden,/turf/open/floor/plasteel,/area/quartermaster/office) +"bxF" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/quartermaster/office) +"bxG" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/plasteel,/area/quartermaster/office) +"bxH" = (/obj/structure/chair{dir = 8},/turf/open/floor/plasteel,/area/quartermaster/office) +"bxI" = (/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel/brown/corner{dir = 8},/area/hallway/primary/central) +"bxJ" = (/obj/structure/table,/obj/machinery/recharger,/turf/open/floor/plasteel/blue/side{dir = 9},/area/crew_quarters/heads) +"bxK" = (/turf/open/floor/plasteel,/area/crew_quarters/heads) +"bxL" = (/obj/structure/table,/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/pen,/turf/open/floor/plasteel,/area/crew_quarters/heads) +"bxM" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/crew_quarters/heads) +"bxN" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/light{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/crew_quarters/heads) +"bxO" = (/turf/closed/wall/r_wall,/area/engine/gravity_generator) +"bxP" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/engineering{name = "Gravity Generator"; req_access_txt = "11"},/turf/open/floor/plasteel/delivery{name = "floor"},/area/engine/gravity_generator) +"bxQ" = (/obj/machinery/power/apc{dir = 8; name = "Teleporter APC"; pixel_x = -24},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/open/floor/plasteel,/area/teleporter) +"bxR" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/chair/stool,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/teleporter) +"bxS" = (/obj/machinery/hologram/holopad,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/open/floor/plasteel,/area/teleporter) +"bxT" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/bluespace_beacon,/turf/open/floor/plasteel,/area/teleporter) +"bxU" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/open/floor/plasteel,/area/teleporter) +"bxV" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/open/floor/plasteel,/area/teleporter) +"bxW" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/command{name = "Teleport Access"; req_access_txt = "17"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/open/floor/plasteel,/area/teleporter) +"bxX" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel/blue/side{dir = 8},/area/hallway/primary/central) +"bxY" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1},/turf/open/floor/plasteel,/area/hallway/primary/central) +"bxZ" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/medical/medbay) +"bya" = (/obj/structure/table,/obj/item/weapon/storage/box/masks{pixel_x = 0; pixel_y = 0},/obj/item/weapon/storage/box/gloves{pixel_x = 3; pixel_y = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/medbay) +"byb" = (/obj/machinery/atmospherics/pipe/manifold4w/scrubbers,/turf/open/floor/plasteel/white,/area/medical/medbay) +"byc" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/medbay) +"byd" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/medbay) +"bye" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/medbay) +"byf" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/item/device/radio/intercom{broadcasting = 0; freerange = 0; frequency = 1485; listening = 1; name = "Station Intercom (Medbay)"; pixel_x = 0; pixel_y = -30},/obj/machinery/light,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/medbay) +"byg" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,/turf/open/floor/plasteel/white,/area/medical/medbay) +"byh" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_Toxins = 0},/turf/open/floor/plasteel/white,/area/medical/medbay) +"byi" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/firealarm{dir = 1; pixel_y = -24},/turf/open/floor/plasteel/white,/area/medical/medbay) +"byj" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel/white,/area/medical/medbay) +"byk" = (/obj/machinery/light,/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/turf/open/floor/plasteel/white,/area/medical/medbay) +"byl" = (/obj/item/device/radio/intercom{broadcasting = 0; freerange = 0; frequency = 1485; listening = 1; name = "Station Intercom (Medbay)"; pixel_x = 30; pixel_y = 0},/obj/machinery/camera{c_tag = "Medbay East"; dir = 8; network = list("SS13"); pixel_x = 0; pixel_y = -22},/turf/open/floor/plasteel/white,/area/medical/medbay) +"bym" = (/turf/closed/wall,/area/medical/genetics) +"byn" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_medical{id_tag = "GeneticsDoor"; name = "Genetics"; req_access_txt = "5; 9"},/turf/open/floor/plasteel/white,/area/medical/genetics) +"byo" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/white,/area/medical/genetics) +"byp" = (/obj/structure/chair/office/light{dir = 4},/turf/open/floor/plasteel/white,/area/medical/genetics) +"byq" = (/obj/machinery/computer/scan_consolenew,/turf/open/floor/plasteel/whiteblue/side{dir = 5},/area/medical/genetics) +"byr" = (/turf/closed/wall/r_wall,/area/assembly/chargebay) +"bys" = (/obj/structure/grille,/obj/machinery/door/poddoor/shutters/preopen{id = "robotics2"; name = "robotics lab shutters"},/obj/structure/window/fulltile,/turf/open/floor/plating,/area/assembly/robotics) +"byt" = (/obj/machinery/door/airlock/research{name = "Robotics Lab"; req_access_txt = "29"; req_one_access_txt = "0"},/turf/open/floor/plasteel/white,/area/assembly/robotics) +"byu" = (/obj/machinery/status_display{density = 0; layer = 3; pixel_x = -32; pixel_y = 0},/turf/open/floor/plasteel/white/side{dir = 5},/area/medical/research{name = "Research Division"}) +"byv" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) +"byw" = (/obj/machinery/atmospherics/pipe/manifold4w/scrubbers,/turf/open/floor/plasteel/white/side{dir = 9},/area/medical/research{name = "Research Division"}) +"byx" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) +"byy" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) +"byz" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) +"byA" = (/obj/machinery/light,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) +"byB" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) +"byC" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/firedoor/heavy,/obj/machinery/door/airlock/research{name = "Experimentation Lab"; req_access_txt = "7"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/toxins/explab) +"byD" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/toxins/explab) +"byE" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/toxins/explab) +"byF" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/toxins/explab) +"byG" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel/white,/area/toxins/explab) +"byH" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/toxins/explab) +"byI" = (/obj/machinery/hologram/holopad,/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/turf/open/floor/plasteel/white,/area/toxins/explab) +"byJ" = (/obj/machinery/power/apc{dir = 4; name = "Experimentation Lab APC"; pixel_x = 26; pixel_y = 0},/obj/structure/cable,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/toxins/explab) +"byK" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall/r_wall,/area/toxins/explab) +"byL" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint2) +"byM" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/closed/wall,/area/maintenance/asmaint2) +"byN" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/maintenance/asmaint2) +"byO" = (/obj/machinery/door/airlock/shuttle{name = "Supply Shuttle Airlock"; req_access_txt = "31"},/obj/docking_port/mobile/supply{dwidth = 5; width = 12},/obj/docking_port/stationary{dir = 8; dwidth = 5; height = 7; id = "supply_home"; name = "Cargo Bay"; width = 12},/turf/open/floor/plating,/area/shuttle/supply) +"byP" = (/obj/machinery/conveyor_switch/oneway{convdir = -1; id = "QMLoad"},/turf/open/floor/plasteel,/area/quartermaster/storage) +"byQ" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/quartermaster/storage) +"byR" = (/obj/machinery/navbeacon{codes_txt = "delivery;dir=8"; dir = 8; freq = 1400; location = "QM #3"},/turf/open/floor/plasteel/bot,/area/quartermaster/storage) +"byS" = (/obj/structure/table,/obj/machinery/airalarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/obj/machinery/computer/stockexchange,/turf/open/floor/plasteel,/area/quartermaster/office) +"byT" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/quartermaster/office) +"byU" = (/obj/machinery/mineral/ore_redemption{input_dir = 8; output_dir = 4},/obj/machinery/door/firedoor,/turf/open/floor/plasteel/floorgrime,/area/quartermaster/office) +"byV" = (/turf/open/floor/plasteel/loadingarea{dir = 4},/area/quartermaster/office) +"byW" = (/obj/structure/chair{dir = 8},/obj/machinery/light,/turf/open/floor/plasteel,/area/quartermaster/office) +"byX" = (/obj/machinery/light{dir = 4; icon_state = "tube1"},/turf/open/floor/plasteel/bot,/area/hallway/primary/central) +"byY" = (/obj/machinery/keycard_auth{pixel_x = -24; pixel_y = 0},/obj/machinery/computer/cargo,/turf/open/floor/plasteel/blue/side{dir = 8},/area/crew_quarters/heads) +"byZ" = (/obj/structure/chair/office/dark{dir = 4},/obj/effect/landmark/start{name = "Head of Personnel"},/turf/open/floor/plasteel,/area/crew_quarters/heads) +"bza" = (/obj/structure/table,/obj/item/weapon/folder/blue,/obj/item/weapon/stamp/hop,/turf/open/floor/plasteel,/area/crew_quarters/heads) +"bzb" = (/obj/structure/chair{dir = 8},/turf/open/floor/plasteel,/area/crew_quarters/heads) +"bzc" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 8},/turf/closed/wall,/area/engine/gravity_generator) +"bzd" = (/obj/machinery/airalarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/warning{dir = 9},/area/engine/gravity_generator) +"bze" = (/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/machinery/camera{c_tag = "Gravity Generator Foyer"},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/plasteel/warning{dir = 5},/area/engine/gravity_generator) +"bzf" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/turf/closed/wall,/area/engine/gravity_generator) +"bzg" = (/turf/open/floor/plasteel/warning{dir = 10},/area/teleporter) +"bzh" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/warning,/area/teleporter) +"bzi" = (/turf/open/floor/plasteel/warning,/area/teleporter) +"bzj" = (/turf/open/floor/plasteel/warning{dir = 6},/area/teleporter) +"bzk" = (/obj/machinery/shieldwallgen,/obj/structure/window/reinforced{dir = 8},/turf/open/floor/plasteel/bot,/area/teleporter) +"bzl" = (/obj/machinery/shieldwallgen,/turf/open/floor/plasteel/bot,/area/teleporter) +"bzm" = (/obj/structure/closet/crate,/turf/open/floor/plasteel,/area/teleporter) +"bzn" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/sign/securearea{pixel_x = -32; pixel_y = 0},/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel/blue/side{dir = 8},/area/hallway/primary/central) +"bzo" = (/obj/machinery/requests_console{announcementConsole = 0; department = "Medbay"; departmentType = 1; name = "Medbay RC"; pixel_x = -30; pixel_y = 0; pixel_z = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/white,/area/medical/medbay) +"bzp" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/white,/area/medical/medbay) +"bzq" = (/obj/machinery/vending/medical{pixel_x = -2},/turf/open/floor/plasteel/white,/area/medical/medbay) +"bzr" = (/turf/closed/wall,/area/medical/sleeper) +"bzs" = (/obj/structure/grille,/obj/structure/window/fulltile,/turf/open/floor/plating,/area/medical/sleeper) +"bzt" = (/obj/machinery/door/firedoor,/turf/open/floor/plasteel/white,/area/medical/sleeper) +"bzu" = (/obj/machinery/button/door{desc = "A remote control switch for the genetics doors."; id = "GeneticsDoor"; name = "Genetics Exit Button"; normaldoorcontrol = 1; pixel_x = 8; pixel_y = 24},/obj/structure/table,/obj/item/weapon/book/manual/medical_cloning{pixel_y = 6},/turf/open/floor/plasteel/white,/area/medical/genetics) +"bzv" = (/obj/structure/closet/wardrobe/white,/turf/open/floor/plasteel/white,/area/medical/genetics) +"bzw" = (/obj/structure/closet/secure_closet/personal/patient,/turf/open/floor/plasteel/white,/area/medical/genetics) +"bzx" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/white,/area/medical/genetics) +"bzy" = (/obj/machinery/dna_scannernew,/turf/open/floor/plasteel/whiteblue/side{dir = 6},/area/medical/genetics) +"bzz" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/turf/open/floor/plasteel,/area/medical/genetics) +"bzA" = (/obj/structure/window/reinforced,/mob/living/carbon/monkey,/turf/open/floor/plasteel,/area/medical/genetics) +"bzB" = (/obj/structure/disposalpipe/sortjunction{dir = 2; icon_state = "pipe-j2s"; sortType = 12},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/white,/area/medical/genetics) +"bzC" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/structure/sign/securearea{pixel_x = 32},/obj/machinery/light/small{dir = 1},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 8},/turf/open/floor/plasteel/white,/area/medical/genetics) +"bzD" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall/r_wall,/area/medical/research{name = "Research Division"}) +"bzE" = (/obj/machinery/door/firedoor/heavy,/obj/machinery/door/poddoor/preopen{id = "Biohazard"; name = "biohazard containment door"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/bot,/area/medical/research{name = "Research Division"}) +"bzF" = (/obj/machinery/light{dir = 1},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/whiteblue/side{dir = 8},/area/medical/research{name = "Research Division"}) +"bzG" = (/obj/machinery/camera{c_tag = "Research Division West"; dir = 2; network = list("SS13")},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) +"bzH" = (/obj/structure/extinguisher_cabinet{pixel_x = -5; pixel_y = 30},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) +"bzI" = (/obj/machinery/firealarm{dir = 2; pixel_y = 24},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) +"bzJ" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white/side{dir = 10},/area/medical/research{name = "Research Division"}) +"bzK" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) +"bzL" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white/side{dir = 6},/area/medical/research{name = "Research Division"}) +"bzM" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white/side{dir = 5},/area/medical/research{name = "Research Division"}) +"bzN" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/hologram/holopad,/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) +"bzO" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white/side{dir = 9},/area/medical/research{name = "Research Division"}) +"bzP" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/crew_quarters/hor) +"bzQ" = (/turf/closed/wall,/area/crew_quarters/hor) +"bzR" = (/obj/machinery/light_switch{pixel_x = -20; pixel_y = 0},/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel/white,/area/toxins/explab) +"bzS" = (/obj/machinery/requests_console{department = "Science"; departmentType = 2; name = "Science Requests Console"; pixel_x = 0; pixel_y = -30},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; external_pressure_bound = 101.325; on = 1; pressure_checks = 1},/turf/open/floor/plasteel/white,/area/toxins/explab) +"bzT" = (/turf/open/floor/plasteel/white,/area/toxins/explab) +"bzU" = (/obj/structure/chair/office/light,/obj/effect/landmark/start{name = "Scientist"},/turf/open/floor/plasteel/white,/area/toxins/explab) +"bzV" = (/obj/structure/extinguisher_cabinet{pixel_x = 5; pixel_y = -32},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/white,/area/toxins/explab) +"bzW" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/disposalpipe/segment,/turf/open/floor/plating,/area/maintenance/asmaint2) +"bzX" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/asmaint2) +"bzY" = (/obj/structure/closet,/obj/effect/spawner/lootdrop/maintenance{lootcount = 2; name = "2maintenance loot spawner"},/turf/open/floor/plating,/area/maintenance/asmaint2) +"bzZ" = (/obj/structure/rack,/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/asmaint2) +"bAa" = (/turf/open/floor/plating,/area/maintenance/asmaint2) +"bAb" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plasteel/shuttle/white,/area/shuttle/abandoned) +"bAc" = (/obj/machinery/door/window,/turf/open/floor/plasteel/shuttle/purple,/area/shuttle/abandoned) +"bAd" = (/obj/structure/bed,/obj/item/weapon/bedsheet,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plasteel/shuttle/purple,/area/shuttle/abandoned) +"bAe" = (/obj/structure/table,/turf/open/floor/plasteel/shuttle/white,/area/shuttle/abandoned) +"bAf" = (/obj/structure/table,/obj/item/weapon/gun/energy/laser/retro,/turf/open/floor/plasteel/shuttle/white,/area/shuttle/abandoned) +"bAg" = (/obj/machinery/conveyor{dir = 4; id = "QMLoad"},/obj/machinery/door/poddoor{id = "QMLoaddoor"; name = "supply dock loading door"},/turf/open/floor/plating,/area/shuttle/supply) +"bAh" = (/obj/machinery/conveyor{dir = 4; id = "QMLoad"},/obj/machinery/door/poddoor{id = "QMLoaddoor"; name = "supply dock loading door"},/turf/open/floor/plating,/area/quartermaster/storage) +"bAi" = (/obj/structure/plasticflaps,/obj/machinery/conveyor{dir = 4; id = "QMLoad"},/turf/open/floor/plating,/area/quartermaster/storage) +"bAj" = (/obj/machinery/conveyor{dir = 4; id = "QMLoad"},/turf/open/floor/plating/warnplate{dir = 1},/area/quartermaster/storage) +"bAk" = (/obj/machinery/conveyor{dir = 4; id = "QMLoad"},/obj/machinery/light,/obj/machinery/status_display{density = 0; pixel_y = -30; supply_display = 1},/turf/open/floor/plating/warnplate{dir = 1},/area/quartermaster/storage) +"bAl" = (/obj/machinery/light,/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -35},/turf/open/floor/plasteel/loadingarea{dir = 8},/area/quartermaster/storage) +"bAm" = (/obj/machinery/camera{c_tag = "Cargo Bay South"; dir = 1},/turf/open/floor/plasteel,/area/quartermaster/storage) +"bAn" = (/obj/machinery/navbeacon{codes_txt = "delivery;dir=8"; dir = 8; freq = 1400; location = "QM #4"},/turf/open/floor/plasteel/bot,/area/quartermaster/storage) +"bAo" = (/obj/structure/table,/obj/item/weapon/storage/firstaid/regular{pixel_x = 6; pixel_y = -5},/turf/open/floor/plasteel,/area/quartermaster/office) +"bAp" = (/obj/structure/closet/crate,/turf/open/floor/plasteel,/area/quartermaster/office) +"bAq" = (/obj/machinery/light,/obj/machinery/power/apc{dir = 2; name = "Cargo Office APC"; pixel_x = 1; pixel_y = -24},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/brown/corner{dir = 2},/area/quartermaster/office) +"bAr" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/quartermaster/office) +"bAs" = (/turf/open/floor/plasteel/brown/corner{dir = 8},/area/quartermaster/office) +"bAt" = (/turf/closed/wall,/area/security/checkpoint/supply) +"bAu" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/security/checkpoint/supply) +"bAv" = (/obj/machinery/camera{c_tag = "Cargo Bay Entrance"; dir = 4; network = list("SS13")},/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel/brown/corner{dir = 8},/area/hallway/primary/central) +"bAw" = (/obj/machinery/door/poddoor/shutters/preopen{id = "hopqueue"; name = "HoP Queue Shutters"},/turf/open/floor/plasteel/loadingarea{dir = 4},/area/hallway/primary/central) +"bAx" = (/obj/item/device/radio/intercom{dir = 8; name = "Station Intercom (General)"; pixel_x = -28},/obj/structure/closet/secure_closet/hop,/turf/open/floor/plasteel/blue/side{dir = 10},/area/crew_quarters/heads) +"bAy" = (/obj/machinery/requests_console{announcementConsole = 1; department = "Head of Personnel's Desk"; departmentType = 5; name = "Head of Personnel RC"; pixel_y = -30},/obj/machinery/camera{c_tag = "Head of Personnel's Office"; dir = 1},/turf/open/floor/plasteel,/area/crew_quarters/heads) +"bAz" = (/obj/structure/table,/obj/item/weapon/book/manual/wiki/security_space_law,/turf/open/floor/plasteel,/area/crew_quarters/heads) +"bAA" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/plasteel,/area/crew_quarters/heads) +"bAB" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/turf/open/floor/plasteel,/area/crew_quarters/heads) +"bAC" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall,/area/engine/gravity_generator) +"bAD" = (/obj/structure/closet/radiation,/obj/structure/sign/securearea{desc = "A warning sign which reads 'RADIOACTIVE AREA'"; icon_state = "radiation"; name = "RADIOACTIVE AREA"; pixel_x = -32; pixel_y = 0},/turf/open/floor/plasteel/warning{dir = 8},/area/engine/gravity_generator) +"bAE" = (/obj/structure/closet/radiation,/obj/structure/sign/securearea{desc = "A warning sign which reads 'RADIOACTIVE AREA'"; icon_state = "radiation"; name = "RADIOACTIVE AREA"; pixel_x = 32; pixel_y = 0},/turf/open/floor/plasteel/warning{dir = 4},/area/engine/gravity_generator) +"bAF" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/closed/wall,/area/engine/gravity_generator) +"bAG" = (/obj/machinery/computer/teleporter,/turf/open/floor/plating,/area/teleporter) +"bAH" = (/obj/machinery/teleport/station,/turf/open/floor/plating,/area/teleporter) +"bAI" = (/obj/machinery/teleport/hub,/turf/open/floor/plating,/area/teleporter) +"bAJ" = (/obj/structure/rack,/obj/item/weapon/tank/internals/oxygen,/obj/item/clothing/mask/gas,/turf/open/floor/plating,/area/teleporter) +"bAK" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel,/area/hallway/primary/central) +"bAL" = (/obj/machinery/navbeacon{codes_txt = "delivery;dir=4"; dir = 4; freq = 1400; location = "Medbay"},/obj/structure/plasticflaps{opacity = 1},/turf/open/floor/plasteel/bot,/area/medical/medbay) +"bAM" = (/obj/machinery/door/window/eastleft{name = "Medical Delivery"; req_access_txt = "5"},/turf/open/floor/plasteel/delivery,/area/medical/medbay) +"bAN" = (/obj/machinery/airalarm{dir = 1; icon_state = "alarm0"; pixel_y = -22},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/white,/area/medical/medbay) +"bAO" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/turf/open/floor/plasteel/white,/area/medical/medbay) +"bAP" = (/obj/machinery/disposal/bin,/obj/structure/disposalpipe/trunk{dir = 8},/turf/open/floor/plasteel/white,/area/medical/medbay) +"bAQ" = (/obj/machinery/computer/med_data,/turf/open/floor/plasteel/white,/area/medical/sleeper) +"bAR" = (/turf/open/floor/plasteel/white,/area/medical/sleeper) +"bAS" = (/turf/open/floor/plasteel/white/side{dir = 8},/area/medical/sleeper) +"bAT" = (/obj/machinery/sleeper{icon_state = "sleeper-open"; dir = 8},/turf/open/floor/plasteel,/area/medical/sleeper) +"bAU" = (/obj/structure/sign/nosmoking_2,/turf/closed/wall,/area/medical/sleeper) +"bAV" = (/obj/structure/table/glass,/obj/item/weapon/reagent_containers/glass/beaker/cryoxadone{pixel_x = 7; pixel_y = 1},/obj/item/weapon/reagent_containers/glass/beaker/cryoxadone{pixel_x = 7; pixel_y = 1},/turf/open/floor/plasteel,/area/medical/sleeper) +"bAW" = (/obj/machinery/atmospherics/components/unary/cryo_cell,/turf/open/floor/plasteel,/area/medical/sleeper) +"bAX" = (/obj/structure/table,/obj/machinery/cell_charger,/turf/open/floor/plasteel,/area/medical/sleeper) +"bAY" = (/obj/structure/table/glass,/obj/machinery/camera{c_tag = "Medbay Cryogenics"; dir = 2; network = list("SS13"); pixel_x = 0; pixel_y = 0},/obj/item/weapon/reagent_containers/glass/beaker/cryoxadone{pixel_x = 0; pixel_y = 0},/obj/item/weapon/reagent_containers/glass/beaker/cryoxadone{pixel_x = 0; pixel_y = 0},/turf/open/floor/plasteel,/area/medical/sleeper) +"bAZ" = (/obj/machinery/camera{c_tag = "Genetics Cloning"; dir = 4; network = list("SS13")},/obj/structure/table,/obj/machinery/firealarm{dir = 8; pixel_x = -24},/obj/item/weapon/storage/box/rxglasses{pixel_x = 3; pixel_y = 3},/obj/item/weapon/storage/box/bodybags,/obj/item/weapon/pen,/turf/open/floor/plasteel/white,/area/medical/genetics) +"bBa" = (/obj/machinery/hologram/holopad,/turf/open/floor/plasteel/white,/area/medical/genetics) +"bBb" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/plasteel/white,/area/medical/genetics) +"bBc" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/medical/genetics) +"bBd" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/open/floor/plasteel/white,/area/medical/genetics) +"bBe" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/white,/area/medical/genetics) +"bBf" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/genetics) +"bBg" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/whitepurple/side{dir = 4},/area/medical/genetics) +"bBh" = (/obj/machinery/door/airlock/research{name = "Genetics Research"; req_access_txt = "9"},/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/genetics) +"bBi" = (/obj/structure/disposalpipe/sortjunction{sortType = 23},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden,/turf/open/floor/plasteel/white,/area/medical/genetics) +"bBj" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/genetics) +"bBk" = (/obj/machinery/door/airlock/research{name = "Genetics Research Access"; req_access_txt = "47"},/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) +"bBl" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/door/firedoor/heavy,/obj/machinery/door/poddoor/preopen{id = "Biohazard"; name = "biohazard containment door"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/bot,/area/medical/research{name = "Research Division"}) +"bBm" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/whiteblue/side{dir = 8},/area/medical/research{name = "Research Division"}) +"bBn" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) +"bBo" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) +"bBp" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/light,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) +"bBq" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) +"bBr" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) +"bBs" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white/side{dir = 5},/area/medical/research{name = "Research Division"}) +"bBt" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden,/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) +"bBu" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/plasteel/white/side{dir = 9},/area/medical/research{name = "Research Division"}) +"bBv" = (/obj/structure/filingcabinet/chestdrawer,/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/hor) +"bBw" = (/obj/machinery/computer/security/telescreen{desc = "Used for watching the RD's goons and the AI's satellite from the safety of his office."; name = "Research Monitor"; network = list("RD","MiniSat"); pixel_x = 0; pixel_y = 2},/obj/structure/table,/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/hor) +"bBx" = (/obj/machinery/computer/aifixer,/obj/machinery/requests_console{announcementConsole = 1; department = "Research Director's Desk"; departmentType = 5; name = "Research Director RC"; pixel_x = -2; pixel_y = 30},/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/hor) +"bBy" = (/obj/structure/rack,/obj/item/weapon/circuitboard/aicore{pixel_x = -2; pixel_y = 4},/turf/open/floor/plasteel/warnwhite{dir = 9},/area/crew_quarters/hor) +"bBz" = (/obj/machinery/ai_status_display{pixel_y = 32},/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel/warnwhite{dir = 1},/area/crew_quarters/hor) +"bBA" = (/turf/open/floor/plasteel/warnwhite{dir = 5},/area/crew_quarters/hor) +"bBB" = (/obj/machinery/disposal/bin,/obj/structure/disposalpipe/trunk{dir = 1},/turf/open/floor/plasteel/warning{dir = 1},/area/toxins/explab) +"bBC" = (/turf/closed/wall,/area/toxins/explab) +"bBD" = (/obj/structure/table,/obj/item/weapon/clipboard,/obj/item/weapon/book/manual/experimentor,/turf/open/floor/plasteel/white/corner{dir = 4},/area/toxins/explab) +"bBE" = (/obj/machinery/computer/rdconsole/experiment,/turf/open/floor/plasteel/white/side{dir = 1},/area/toxins/explab) +"bBF" = (/obj/structure/closet/radiation,/turf/open/floor/plasteel/white/corner{dir = 1},/area/toxins/explab) +"bBG" = (/obj/machinery/button/door{id = "telelab"; name = "Test Chamber Blast Doors"; pixel_x = 25; pixel_y = 0},/turf/open/floor/plasteel/warnwhite{dir = 2},/area/toxins/explab) +"bBH" = (/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 6},/turf/open/floor/plating,/area/maintenance/asmaint2) +"bBI" = (/obj/machinery/atmospherics/components/binary/valve{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint2) +"bBJ" = (/obj/machinery/atmospherics/components/unary/portables_connector/visible{dir = 8},/obj/machinery/light/small{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint2) +"bBK" = (/obj/structure/lattice,/obj/effect/landmark{name = "carpspawn"},/turf/open/space,/area/space) +"bBL" = (/obj/machinery/door/airlock/glass,/turf/open/floor/plasteel/shuttle/white,/area/shuttle/abandoned) +"bBM" = (/obj/effect/decal/remains/human,/turf/open/floor/plasteel/shuttle/white,/area/shuttle/abandoned) +"bBN" = (/obj/machinery/computer/shuttle/white_ship,/turf/open/floor/plasteel/shuttle/white,/area/shuttle/abandoned) +"bBO" = (/turf/closed/wall,/area/quartermaster/qm) +"bBP" = (/obj/machinery/door/airlock/glass_mining{name = "Quartermaster"; req_access_txt = "41"},/turf/open/floor/plasteel,/area/quartermaster/qm) +"bBQ" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/quartermaster/qm) +"bBR" = (/turf/closed/wall,/area/quartermaster/miningdock) +"bBS" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall,/area/quartermaster/miningdock) +"bBT" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/door/firedoor,/obj/machinery/door/airlock/mining{req_access_txt = "48"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/quartermaster/miningdock) +"bBU" = (/obj/item/weapon/paper_bin{pixel_x = 1; pixel_y = 9},/obj/item/weapon/pen,/obj/structure/table,/turf/open/floor/plasteel/red/side{dir = 9},/area/security/checkpoint/supply) +"bBV" = (/obj/item/weapon/book/manual/wiki/security_space_law,/obj/structure/table,/turf/open/floor/plasteel/red/side{dir = 1},/area/security/checkpoint/supply) +"bBW" = (/obj/machinery/recharger{pixel_y = 4},/obj/structure/table,/turf/open/floor/plasteel/red/side{dir = 1},/area/security/checkpoint/supply) +"bBX" = (/obj/machinery/computer/secure_data,/obj/machinery/airalarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/turf/open/floor/plasteel/red/side{dir = 5},/area/security/checkpoint/supply) +"bBY" = (/obj/machinery/door/airlock/command{name = "Head of Personnel"; req_access = null; req_access_txt = "57"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel,/area/crew_quarters/heads) +"bBZ" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 5},/turf/closed/wall,/area/engine/gravity_generator) +"bCa" = (/obj/machinery/ai_status_display,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/turf/closed/wall,/area/engine/gravity_generator) +"bCb" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/turf/closed/wall,/area/engine/gravity_generator) +"bCc" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/turf/closed/wall,/area/engine/gravity_generator) +"bCd" = (/obj/machinery/camera{c_tag = "Central Hallway South-East"; dir = 8},/turf/open/floor/plasteel,/area/hallway/primary/central) +"bCe" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall,/area/medical/sleeper) +"bCf" = (/obj/machinery/door/airlock/glass_medical{id_tag = ""; name = "Surgery Observation"; req_access_txt = "0"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/black,/area/medical/sleeper) +"bCg" = (/obj/structure/sink{icon_state = "sink"; dir = 8; pixel_x = -12; pixel_y = 2},/obj/structure/mirror{pixel_x = -28},/turf/open/floor/plasteel/white,/area/medical/sleeper) +"bCh" = (/obj/machinery/hologram/holopad,/turf/open/floor/plasteel/white,/area/medical/sleeper) +"bCi" = (/obj/machinery/door/firedoor,/turf/open/floor/plasteel/delivery,/area/medical/sleeper) +"bCj" = (/turf/open/floor/plasteel,/area/medical/sleeper) +"bCk" = (/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 5},/turf/open/floor/plasteel,/area/medical/sleeper) +"bCl" = (/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 4},/turf/open/floor/plasteel,/area/medical/sleeper) +"bCm" = (/obj/machinery/atmospherics/pipe/manifold/general/visible,/turf/open/floor/plasteel,/area/medical/sleeper) +"bCn" = (/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 10; pixel_x = 0; initialize_directions = 10},/turf/open/floor/plasteel,/area/medical/sleeper) +"bCo" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/open/floor/plasteel/white,/area/medical/genetics) +"bCp" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/white,/area/medical/genetics) +"bCq" = (/obj/structure/chair,/obj/effect/landmark/start{name = "Geneticist"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/genetics) +"bCr" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/genetics) +"bCs" = (/obj/machinery/door/airlock/glass_research{name = "Genetics Research"; req_access_txt = "5; 9"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/genetics) +"bCt" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/genetics) +"bCu" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,/turf/open/floor/plasteel/white,/area/medical/genetics) +"bCv" = (/obj/machinery/camera{c_tag = "Genetics Research"; dir = 1; network = list("SS13","RD"); pixel_x = 0},/obj/machinery/firealarm{dir = 1; pixel_y = -24},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/whitepurple/side{dir = 4},/area/medical/genetics) +"bCw" = (/obj/structure/sign/securearea,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall/r_wall,/area/medical/genetics) +"bCx" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/genetics) +"bCy" = (/obj/machinery/camera{c_tag = "Genetics Access"; dir = 8; network = list("SS13"); pixel_x = 0; pixel_y = -22},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/genetics) +"bCz" = (/turf/closed/wall/r_wall,/area/toxins/server) +"bCA" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/command{name = "Server Room"; req_access = null; req_access_txt = "30"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/black,/area/toxins/server) +"bCB" = (/turf/closed/wall,/area/security/checkpoint/science) +"bCC" = (/obj/machinery/door/airlock/glass_security{name = "Security Office"; req_access_txt = "63"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/white,/area/security/checkpoint/science) +"bCD" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/security/checkpoint/science) +"bCE" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/security/checkpoint/science) +"bCF" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) +"bCG" = (/obj/structure/table,/obj/machinery/button/door{id = "Biohazard"; name = "Biohazard Shutter Control"; pixel_x = -5; pixel_y = 5; req_access_txt = "47"},/obj/machinery/button/door{id = "rnd2"; name = "Research Lab Shutter Control"; pixel_x = 5; pixel_y = 5; req_access_txt = "47"},/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/hor) +"bCH" = (/obj/structure/chair/office/light{dir = 8},/obj/effect/landmark/start{name = "Research Director"},/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/hor) +"bCI" = (/obj/machinery/computer/robotics,/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/hor) +"bCJ" = (/obj/structure/rack,/obj/item/device/aicard,/turf/open/floor/plasteel/warnwhite{dir = 8},/area/crew_quarters/hor) +"bCK" = (/obj/machinery/hologram/holopad,/turf/open/floor/plasteel/white,/area/crew_quarters/hor) +"bCL" = (/obj/structure/displaycase/labcage,/obj/machinery/light{dir = 4; icon_state = "tube1"},/turf/open/floor/plasteel/warnwhite{dir = 4},/area/crew_quarters/hor) +"bCM" = (/turf/closed/wall/r_wall,/area/crew_quarters/hor) +"bCN" = (/obj/structure/grille,/obj/machinery/door/poddoor/preopen{id = "telelab"; name = "test chamber blast door"},/obj/structure/window/reinforced/fulltile,/obj/machinery/door/firedoor/heavy,/turf/open/floor/engine,/area/toxins/explab) +"bCO" = (/obj/machinery/door/poddoor/preopen{id = "telelab"; name = "test chamber blast door"},/obj/machinery/door/firedoor/heavy,/turf/open/floor/engine,/area/toxins/explab) +"bCP" = (/obj/machinery/atmospherics/pipe/manifold/general/visible{dir = 8},/turf/open/floor/plating,/area/maintenance/asmaint2) +"bCQ" = (/obj/machinery/atmospherics/components/unary/thermomachine/freezer{dir = 8},/turf/open/floor/plating,/area/maintenance/asmaint2) +"bCR" = (/obj/machinery/portable_atmospherics/canister/oxygen,/turf/open/floor/plasteel/shuttle/white,/area/shuttle/abandoned) +"bCS" = (/obj/structure/table,/obj/item/weapon/tank/internals/oxygen,/turf/open/floor/plasteel/shuttle/white,/area/shuttle/abandoned) +"bCT" = (/turf/closed/wall/shuttle{icon_state = "swall7"; dir = 2},/area/shuttle/supply) +"bCU" = (/turf/open/floor/plasteel/shuttle,/turf/closed/wall/shuttle/interior{icon_state = "swall_f10"},/area/shuttle/supply) +"bCV" = (/turf/open/floor/plasteel/shuttle,/turf/closed/wall/shuttle/interior{icon_state = "swall_f6"},/area/shuttle/supply) +"bCW" = (/turf/closed/wall/shuttle{icon_state = "swall11"; dir = 2},/area/shuttle/supply) +"bCX" = (/obj/structure/table,/obj/item/weapon/cartridge/quartermaster{pixel_x = 6; pixel_y = 5},/obj/item/weapon/cartridge/quartermaster,/obj/item/weapon/cartridge/quartermaster{pixel_x = -4; pixel_y = 7},/obj/machinery/requests_console{department = "Cargo Bay"; departmentType = 2; pixel_x = -30; pixel_y = 0},/obj/item/weapon/coin/silver,/turf/open/floor/plasteel/brown{dir = 9},/area/quartermaster/qm) +"bCY" = (/obj/machinery/power/apc{dir = 1; name = "Quartermaster APC"; pixel_y = 24},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/open/floor/plasteel/brown{dir = 1},/area/quartermaster/qm) +"bCZ" = (/turf/open/floor/plasteel/brown{dir = 1},/area/quartermaster/qm) +"bDa" = (/obj/machinery/hologram/holopad,/turf/open/floor/plasteel/brown{dir = 1},/area/quartermaster/qm) +"bDb" = (/obj/machinery/disposal/bin,/obj/structure/disposalpipe/trunk,/turf/open/floor/plasteel/brown{dir = 1},/area/quartermaster/qm) +"bDc" = (/obj/structure/closet/secure_closet/quartermaster,/obj/machinery/airalarm{pixel_y = 23},/turf/open/floor/plasteel/brown{dir = 5},/area/quartermaster/qm) +"bDd" = (/obj/machinery/power/apc{dir = 1; name = "Mining Dock APC"; pixel_y = 24},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/open/floor/plasteel,/area/quartermaster/miningdock) +"bDe" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/quartermaster/miningdock) +"bDf" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/quartermaster/miningdock) +"bDg" = (/obj/machinery/light{dir = 1},/obj/machinery/light_switch{pixel_y = 28},/turf/open/floor/plasteel,/area/quartermaster/miningdock) +"bDh" = (/turf/open/floor/plasteel/red/side{dir = 8},/area/security/checkpoint/supply) +"bDi" = (/obj/structure/chair/office/dark{dir = 1},/obj/effect/landmark/start/depsec/supply,/turf/open/floor/plasteel,/area/security/checkpoint/supply) +"bDj" = (/turf/open/floor/plasteel,/area/security/checkpoint/supply) +"bDk" = (/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 27},/obj/machinery/computer/security/mining,/turf/open/floor/plasteel/red/side{dir = 4},/area/security/checkpoint/supply) +"bDl" = (/obj/machinery/newscaster{pixel_y = 32},/turf/open/floor/plasteel,/area/hallway/primary/central) +"bDm" = (/obj/structure/sign/securearea{pixel_y = 32},/turf/open/floor/plasteel/blue/side{dir = 1},/area/hallway/primary/central) +"bDn" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/turf/open/floor/plasteel/blue/side{dir = 1},/area/hallway/primary/central) +"bDo" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel/blue/side{dir = 1},/area/hallway/primary/central) +"bDp" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel/warning/corner{dir = 8},/area/hallway/primary/central) +"bDq" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 8},/turf/open/floor/plasteel/warning{dir = 1},/area/hallway/primary/central) +"bDr" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/warning{dir = 1},/area/hallway/primary/central) +"bDs" = (/obj/structure/sign/securearea{pixel_y = 32},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/warning{dir = 1},/area/hallway/primary/central) +"bDt" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/warning/corner{dir = 4},/area/hallway/primary/central) +"bDu" = (/obj/machinery/airalarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/machinery/light{dir = 4; icon_state = "tube1"},/turf/open/floor/plasteel,/area/hallway/primary/central) +"bDv" = (/obj/structure/chair,/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/black,/area/medical/sleeper) +"bDw" = (/obj/structure/chair,/obj/machinery/camera{c_tag = "Surgery Observation"},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/black,/area/medical/sleeper) +"bDx" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/black,/area/medical/sleeper) +"bDy" = (/obj/structure/chair,/obj/machinery/airalarm{frequency = 1439; pixel_y = 23},/turf/open/floor/plasteel/black,/area/medical/sleeper) +"bDz" = (/obj/structure/chair,/turf/open/floor/plasteel/black,/area/medical/sleeper) +"bDA" = (/obj/machinery/airalarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/obj/machinery/shower{dir = 4},/turf/open/floor/plasteel/white,/area/medical/sleeper) +"bDB" = (/obj/effect/landmark/start{name = "Medical Doctor"},/turf/open/floor/plasteel/white,/area/medical/sleeper) +"bDC" = (/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 6},/turf/open/floor/plasteel,/area/medical/sleeper) +"bDD" = (/obj/machinery/atmospherics/pipe/manifold/general/visible{dir = 1},/turf/open/floor/plasteel,/area/medical/sleeper) +"bDE" = (/obj/machinery/atmospherics/pipe/manifold/general/visible{dir = 4; initialize_directions = 11},/turf/open/floor/plasteel,/area/medical/sleeper) +"bDF" = (/obj/structure/extinguisher_cabinet{pixel_x = 27; pixel_y = 0},/obj/machinery/light{dir = 4; icon_state = "tube1"},/turf/open/floor/plasteel/white,/area/medical/medbay) +"bDG" = (/obj/machinery/dna_scannernew,/turf/open/floor/plasteel/whiteblue/side{dir = 10},/area/medical/genetics) +"bDH" = (/obj/machinery/computer/cloning,/obj/machinery/airalarm{dir = 1; icon_state = "alarm0"; pixel_y = -22},/turf/open/floor/plasteel/whiteblue/side{dir = 2},/area/medical/genetics) +"bDI" = (/obj/machinery/clonepod,/turf/open/floor/plasteel/whiteblue/side{dir = 6},/area/medical/genetics) +"bDJ" = (/obj/structure/sign/securearea,/turf/closed/wall/r_wall,/area/medical/genetics) +"bDK" = (/obj/machinery/disposal/bin,/obj/structure/disposalpipe/trunk{dir = 1},/obj/machinery/light_switch{pixel_y = -28},/turf/open/floor/plasteel/white,/area/medical/genetics) +"bDL" = (/obj/structure/closet/secure_closet/medical1,/turf/open/floor/plasteel/white,/area/medical/genetics) +"bDM" = (/obj/structure/closet/secure_closet/personal/patient,/obj/machinery/light,/turf/open/floor/plasteel/white,/area/medical/genetics) +"bDN" = (/obj/structure/closet/wardrobe/genetics_white,/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -29},/turf/open/floor/plasteel/white,/area/medical/genetics) +"bDO" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall,/area/maintenance/asmaint) +"bDP" = (/obj/machinery/r_n_d/server/robotics,/turf/open/floor/bluegrid{name = "Server Base"; initial_gas_mix = "n2=500;TEMP=80"},/area/toxins/server) +"bDQ" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; external_pressure_bound = 140; on = 1; pressure_checks = 0},/turf/open/floor/bluegrid{name = "Server Base"; initial_gas_mix = "n2=500;TEMP=80"},/area/toxins/server) +"bDR" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple{dir = 4},/obj/structure/sign/securearea{desc = "A warning sign which reads 'SERVER ROOM'."; name = "SERVER ROOM"; pixel_y = 32},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/toxins/server) +"bDS" = (/obj/machinery/atmospherics/pipe/simple{dir = 10},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/open/floor/plasteel/black,/area/toxins/server) +"bDT" = (/obj/machinery/camera{c_tag = "Server Room"; dir = 2; network = list("SS13","RD"); pixel_x = 22},/obj/machinery/power/apc{dir = 1; name = "Server Room APC"; pixel_x = 0; pixel_y = 25},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/open/floor/plasteel/black,/area/toxins/server) +"bDU" = (/obj/machinery/atmospherics/components/unary/thermomachine/freezer{target_temperature = 80; dir = 2; on = 1},/obj/effect/decal/cleanable/cobweb2,/turf/open/floor/plasteel/black,/area/toxins/server) +"bDV" = (/obj/structure/reagent_dispensers/peppertank{pixel_x = -30; pixel_y = 0},/obj/machinery/airalarm{pixel_y = 25},/obj/structure/closet,/turf/open/floor/plasteel/red/side{dir = 9},/area/security/checkpoint/science) +"bDW" = (/obj/machinery/light_switch{pixel_x = 8; pixel_y = 28},/obj/machinery/button/door{id = "Biohazard"; name = "Biohazard Shutter Control"; pixel_x = -5; pixel_y = 28; req_access_txt = "47"},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/plasteel/red/side{dir = 1},/area/security/checkpoint/science) +"bDX" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/turf/open/floor/plasteel/red/side{dir = 1},/area/security/checkpoint/science) +"bDY" = (/obj/structure/table,/obj/machinery/computer/security/telescreen{desc = "Used for watching the RD's goons from the safety of your own office."; name = "Research Monitor"; network = list("RD"); pixel_x = 0; pixel_y = 2},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/red/side{dir = 1},/area/security/checkpoint/science) +"bDZ" = (/obj/structure/table,/obj/machinery/recharger{pixel_y = 4},/turf/open/floor/plasteel/red/side{dir = 5},/area/security/checkpoint/science) +"bEa" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 5},/turf/open/floor/plasteel/white/side{dir = 9},/area/medical/research{name = "Research Division"}) +"bEb" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/crew_quarters/hor) +"bEc" = (/obj/structure/table,/obj/item/weapon/paper_bin{pixel_x = 1; pixel_y = 9},/obj/item/weapon/pen,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/item/weapon/folder/white,/obj/item/weapon/stamp/rd{pixel_x = 3; pixel_y = -2},/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/hor) +"bEd" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_Toxins = 0},/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/hor) +"bEe" = (/obj/machinery/computer/mecha,/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/hor) +"bEf" = (/obj/structure/rack,/obj/item/device/taperecorder{pixel_x = -3},/obj/item/device/paicard{pixel_x = 4},/turf/open/floor/plasteel/warnwhite{dir = 10},/area/crew_quarters/hor) +"bEg" = (/turf/open/floor/plasteel/warnwhite{dir = 2},/area/crew_quarters/hor) +"bEh" = (/turf/open/floor/plasteel/warnwhite{dir = 6},/area/crew_quarters/hor) +"bEi" = (/turf/open/floor/engine,/area/toxins/explab) +"bEj" = (/obj/machinery/meter,/obj/machinery/atmospherics/pipe/simple/general/visible,/turf/open/floor/plating,/area/maintenance/asmaint2) +"bEk" = (/turf/closed/wall/shuttle{icon_state = "swall_s5"; dir = 2},/area/shuttle/abandoned) +"bEl" = (/turf/closed/wall/shuttle{icon_state = "swall_s9"; dir = 2},/area/shuttle/abandoned) +"bEm" = (/obj/structure/bed,/obj/item/weapon/bedsheet,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/turf/open/floor/plasteel/shuttle/purple,/area/shuttle/abandoned) +"bEn" = (/obj/machinery/door/window/northright,/obj/effect/decal/remains/human,/turf/open/floor/plasteel/shuttle/purple,/area/shuttle/abandoned) +"bEo" = (/turf/closed/wall/shuttle{icon_state = "swall_s5"; dir = 2},/area/shuttle/supply) +"bEp" = (/turf/closed/wall/shuttle{icon_state = "swall15"; dir = 2},/area/shuttle/supply) +"bEq" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/shuttle/engine/heater,/turf/open/floor/plating/airless,/area/shuttle/supply) +"bEr" = (/turf/closed/wall/shuttle{icon_state = "swall_s9"; dir = 2},/area/shuttle/supply) +"bEs" = (/obj/machinery/computer/cargo,/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/open/floor/plasteel/brown{dir = 8},/area/quartermaster/qm) +"bEt" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/open/floor/plasteel,/area/quartermaster/qm) +"bEu" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/open/floor/plasteel,/area/quartermaster/qm) +"bEv" = (/obj/structure/chair/office/dark,/obj/effect/landmark/start{name = "Quartermaster"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/open/floor/plasteel,/area/quartermaster/qm) +"bEw" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/plasteel,/area/quartermaster/qm) +"bEx" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/brown{dir = 4},/area/quartermaster/qm) +"bEy" = (/obj/machinery/door/airlock/glass_mining{name = "Quartermaster"; req_access_txt = "41"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/quartermaster/qm) +"bEz" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/quartermaster/miningdock) +"bEA" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/landmark/start{name = "Shaft Miner"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/quartermaster/miningdock) +"bEB" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/disposalpipe/sortjunction{dir = 1; icon_state = "pipe-j2s"; sortType = 3},/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden,/turf/open/floor/plasteel,/area/quartermaster/miningdock) +"bEC" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/quartermaster/miningdock) +"bED" = (/obj/machinery/door/airlock/glass_security{name = "Security Office"; req_access_txt = "63"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/security/checkpoint/supply) +"bEE" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/plasteel/red/side{dir = 8},/area/security/checkpoint/supply) +"bEF" = (/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel,/area/security/checkpoint/supply) +"bEG" = (/obj/item/weapon/screwdriver{pixel_y = 10},/obj/machinery/light{dir = 4},/obj/item/device/radio/off,/turf/open/floor/plasteel/red/side{dir = 4},/area/security/checkpoint/supply) +"bEH" = (/obj/machinery/navbeacon{codes_txt = "patrol;next_patrol=AIW"; location = "QM"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel,/area/hallway/primary/central) +"bEI" = (/obj/machinery/door/firedoor,/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel,/area/hallway/primary/central) +"bEJ" = (/obj/machinery/navbeacon{codes_txt = "patrol;next_patrol=AftH"; location = "AIW"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/hallway/primary/central) +"bEK" = (/obj/machinery/hologram/holopad,/turf/open/floor/plasteel,/area/hallway/primary/central) +"bEL" = (/obj/machinery/navbeacon{codes_txt = "patrol;next_patrol=CHE"; location = "AIE"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/hallway/primary/central) +"bEM" = (/obj/machinery/navbeacon{codes_txt = "patrol;next_patrol=HOP"; location = "CHE"},/turf/open/floor/plasteel,/area/hallway/primary/central) +"bEN" = (/obj/structure/chair,/obj/structure/sign/nosmoking_2{pixel_x = -28},/turf/open/floor/plasteel/black,/area/medical/sleeper) +"bEO" = (/obj/structure/chair,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/black,/area/medical/sleeper) +"bEP" = (/obj/machinery/hologram/holopad,/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/open/floor/plasteel/black,/area/medical/sleeper) +"bEQ" = (/obj/structure/chair,/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/plasteel/black,/area/medical/sleeper) +"bER" = (/obj/structure/closet/secure_closet/medical1,/obj/machinery/light{icon_state = "tube1"; dir = 8},/obj/machinery/firealarm{dir = 8; pixel_x = -24},/turf/open/floor/plasteel/white,/area/medical/sleeper) +"bES" = (/obj/machinery/sleeper{icon_state = "sleeper-open"; dir = 8},/obj/machinery/camera{c_tag = "Medbay Treatment Center"; dir = 8; network = list("SS13")},/turf/open/floor/plasteel,/area/medical/sleeper) +"bET" = (/obj/machinery/portable_atmospherics/canister/oxygen,/turf/open/floor/plasteel,/area/medical/sleeper) +"bEU" = (/obj/structure/table/reinforced,/obj/item/weapon/wrench/medical,/turf/open/floor/plasteel,/area/medical/sleeper) +"bEV" = (/obj/machinery/atmospherics/components/unary/portables_connector/visible{dir = 1; name = "Connector Port (Air Supply)"},/obj/machinery/portable_atmospherics/canister/oxygen,/obj/machinery/firealarm{dir = 1; pixel_y = -24},/obj/machinery/light,/turf/open/floor/plasteel,/area/medical/sleeper) +"bEW" = (/obj/machinery/atmospherics/components/unary/portables_connector/visible{dir = 1; name = "Connector Port (Air Supply)"},/obj/machinery/portable_atmospherics/canister/oxygen,/turf/open/floor/plasteel,/area/medical/sleeper) +"bEX" = (/obj/machinery/atmospherics/components/unary/thermomachine/freezer{dir = 1},/turf/open/floor/plasteel,/area/medical/sleeper) +"bEY" = (/turf/open/floor/plating,/area/maintenance/asmaint) +"bEZ" = (/obj/structure/reagent_dispensers/watertank,/obj/effect/decal/cleanable/cobweb2,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/asmaint) +"bFa" = (/obj/machinery/airalarm/server{dir = 4; pixel_x = -22; pixel_y = 0},/obj/machinery/light/small{dir = 8},/turf/open/floor/plasteel/black{name = "Server Walkway"; initial_gas_mix = "n2=500;TEMP=80"},/area/toxins/server) +"bFb" = (/obj/effect/landmark{name = "blobstart"},/turf/open/floor/plasteel/black{name = "Server Walkway"; initial_gas_mix = "n2=500;TEMP=80"},/area/toxins/server) +"bFc" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_command{name = "Server Room"; req_access_txt = "30"},/turf/open/floor/plasteel/black,/area/toxins/server) +"bFd" = (/obj/machinery/atmospherics/pipe/manifold{dir = 8},/turf/open/floor/plasteel/black,/area/toxins/server) +"bFe" = (/obj/structure/chair/office/light,/obj/machinery/atmospherics/pipe/simple{dir = 4},/turf/open/floor/plasteel/black,/area/toxins/server) +"bFf" = (/obj/machinery/atmospherics/pipe/simple{dir = 9},/obj/machinery/light/small{dir = 4},/turf/open/floor/plasteel/black,/area/toxins/server) +"bFg" = (/obj/machinery/camera{c_tag = "Security Post - Science"; dir = 4; network = list("SS13","RD")},/obj/machinery/newscaster{pixel_x = -30},/obj/machinery/light{dir = 8},/turf/open/floor/plasteel/red/side{dir = 8},/area/security/checkpoint/science) +"bFh" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/floor/plasteel,/area/security/checkpoint/science) +"bFi" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/open/floor/plasteel,/area/security/checkpoint/science) +"bFj" = (/obj/structure/chair/office/dark{dir = 4},/obj/effect/landmark/start/depsec/science,/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/security/checkpoint/science) +"bFk" = (/obj/structure/table,/obj/item/weapon/book/manual/wiki/security_space_law,/turf/open/floor/plasteel/red/side{dir = 4},/area/security/checkpoint/science) +"bFl" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) +"bFm" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white/side{dir = 9},/area/medical/research{name = "Research Division"}) +"bFn" = (/obj/machinery/door/airlock/glass_command{name = "Research Director"; req_access_txt = "30"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/hor) +"bFo" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/hor) +"bFp" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/hor) +"bFq" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/hor) +"bFr" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/hor) +"bFs" = (/obj/machinery/airalarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/hor) +"bFt" = (/obj/machinery/r_n_d/experimentor,/turf/open/floor/engine,/area/toxins/explab) +"bFu" = (/obj/effect/landmark{name = "blobstart"},/obj/effect/landmark{name = "xeno_spawn"; pixel_x = -1},/turf/open/floor/engine,/area/toxins/explab) +"bFv" = (/obj/machinery/atmospherics/components/unary/thermomachine/heater{dir = 8},/turf/open/floor/plating,/area/maintenance/asmaint2) +"bFw" = (/obj/machinery/portable_atmospherics/scrubber,/turf/open/floor/plasteel/shuttle/white,/area/shuttle/abandoned) +"bFx" = (/obj/structure/shuttle/engine/propulsion{icon_state = "burst_l"},/turf/open/floor/plating/airless,/area/shuttle/supply) +"bFy" = (/obj/structure/shuttle/engine/propulsion,/turf/open/floor/plating/airless,/area/shuttle/supply) +"bFz" = (/obj/structure/shuttle/engine/propulsion{icon_state = "burst_r"},/turf/open/floor/plating/airless,/area/shuttle/supply) +"bFA" = (/obj/machinery/computer/security/mining,/obj/machinery/camera{c_tag = "Quartermaster's Office"; dir = 4},/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -35},/obj/machinery/status_display{density = 0; pixel_x = -32; pixel_y = 0; supply_display = 1},/turf/open/floor/plasteel/brown{dir = 10},/area/quartermaster/qm) +"bFB" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/brown{dir = 2},/area/quartermaster/qm) +"bFC" = (/obj/structure/table,/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/computer/stockexchange,/turf/open/floor/plasteel/brown{dir = 2},/area/quartermaster/qm) +"bFD" = (/obj/structure/table,/obj/item/weapon/folder/yellow,/obj/item/weapon/pen{pixel_x = 4; pixel_y = 4},/obj/item/weapon/pen/red,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/brown{dir = 2},/area/quartermaster/qm) +"bFE" = (/obj/structure/table,/obj/item/weapon/clipboard,/obj/item/weapon/stamp/qm{pixel_x = 0; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/brown{dir = 2},/area/quartermaster/qm) +"bFF" = (/obj/structure/filingcabinet,/obj/machinery/light_switch{pixel_y = -25},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/brown{dir = 6},/area/quartermaster/qm) +"bFG" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/quartermaster/qm) +"bFH" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/quartermaster/miningdock) +"bFI" = (/obj/machinery/atmospherics/pipe/manifold4w/scrubbers/hidden,/turf/open/floor/plasteel,/area/quartermaster/miningdock) +"bFJ" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/quartermaster/miningdock) +"bFK" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/security/checkpoint/supply) +"bFL" = (/obj/machinery/light_switch{pixel_y = -25},/obj/structure/closet,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/red/side{dir = 10},/area/security/checkpoint/supply) +"bFM" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/red/side,/area/security/checkpoint/supply) +"bFN" = (/obj/machinery/requests_console{department = "Security"; departmentType = 5; pixel_y = -30},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/red/side,/area/security/checkpoint/supply) +"bFO" = (/obj/structure/filingcabinet,/obj/structure/reagent_dispensers/peppertank{pixel_x = 30; pixel_y = 0},/obj/machinery/newscaster{hitstaken = 1; pixel_x = 0; pixel_y = -32},/obj/machinery/camera{c_tag = "Security Post - Cargo"; dir = 1},/turf/open/floor/plasteel/red/side{dir = 6},/area/security/checkpoint/supply) +"bFP" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/floor/plasteel/brown/corner{dir = 8},/area/hallway/primary/central) +"bFQ" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/open/floor/plasteel,/area/hallway/primary/central) +"bFR" = (/obj/machinery/airalarm{dir = 1; icon_state = "alarm0"; pixel_y = -22},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/open/floor/plasteel,/area/hallway/primary/central) +"bFS" = (/obj/machinery/door/firedoor,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/camera{c_tag = "Central Primary Hallway South-West"; dir = 1},/turf/open/floor/plasteel,/area/hallway/primary/central) +"bFT" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/open/floor/plasteel,/area/hallway/primary/central) +"bFU" = (/obj/structure/extinguisher_cabinet{pixel_x = 5; pixel_y = -32},/turf/open/floor/plasteel,/area/hallway/primary/central) +"bFV" = (/obj/machinery/light,/turf/open/floor/plasteel,/area/hallway/primary/central) +"bFW" = (/obj/structure/disposalpipe/junction{icon_state = "pipe-j2"; dir = 2},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/sign/directions/engineering{pixel_x = -32; pixel_y = -40},/obj/structure/sign/directions/medical{dir = 4; icon_state = "direction_med"; pixel_x = -32; pixel_y = -24},/obj/structure/sign/directions/evac{dir = 4; icon_state = "direction_evac"; pixel_x = -32; pixel_y = -32},/turf/open/floor/plasteel,/area/hallway/primary/central) +"bFX" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/central) +"bFY" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/central) +"bFZ" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/status_display{pixel_y = -32},/turf/open/floor/plasteel,/area/hallway/primary/central) +"bGa" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/light,/turf/open/floor/plasteel,/area/hallway/primary/central) +"bGb" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/camera{c_tag = "Central Primary Hallway South"; dir = 1},/turf/open/floor/plasteel,/area/hallway/primary/central) +"bGc" = (/obj/structure/disposalpipe/sortjunction{dir = 8; icon_state = "pipe-j2s"; sortType = 22},/turf/open/floor/plasteel,/area/hallway/primary/central) +"bGd" = (/obj/machinery/door/firedoor,/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/central) +"bGe" = (/obj/structure/extinguisher_cabinet{pixel_x = 5; pixel_y = -32},/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/central) +"bGf" = (/obj/machinery/light,/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/central) +"bGg" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/disposalpipe/junction{dir = 8; icon_state = "pipe-j2"},/turf/open/floor/plasteel,/area/hallway/primary/central) +"bGh" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/central) +"bGi" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/turf/open/floor/plasteel,/area/hallway/primary/central) +"bGj" = (/obj/structure/grille,/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/structure/window/fulltile,/turf/open/floor/plating,/area/medical/sleeper) +"bGk" = (/obj/structure/grille,/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/window/fulltile,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/medical/sleeper) +"bGl" = (/obj/structure/grille,/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/structure/window/fulltile,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/medical/sleeper) +"bGm" = (/obj/machinery/door/airlock/glass_medical{id_tag = null; name = "Recovery Room"; req_access_txt = "0"},/turf/open/floor/plasteel/white,/area/medical/sleeper) +"bGn" = (/obj/machinery/firealarm{dir = 2; pixel_y = 24},/turf/open/floor/plasteel/white,/area/medical/medbay) +"bGo" = (/obj/structure/table,/obj/item/stack/packageWrap,/obj/item/stack/packageWrap,/obj/item/weapon/pen,/obj/machinery/requests_console{announcementConsole = 0; department = "Medbay"; departmentType = 1; name = "Medbay RC"; pixel_x = 0; pixel_y = 30; pixel_z = 0},/turf/open/floor/plasteel/white,/area/medical/medbay) +"bGp" = (/obj/machinery/disposal/bin,/obj/structure/disposalpipe/trunk,/obj/machinery/light{dir = 1},/turf/open/floor/plasteel/white,/area/medical/medbay) +"bGq" = (/turf/closed/wall,/area/medical/cmo) +"bGr" = (/obj/machinery/suit_storage_unit/cmo,/turf/open/floor/plasteel/barber,/area/medical/cmo) +"bGs" = (/obj/machinery/computer/crew,/obj/machinery/requests_console{announcementConsole = 1; department = "Chief Medical Officer's Desk"; departmentType = 5; name = "Chief Medical Officer RC"; pixel_x = 0; pixel_y = 32},/turf/open/floor/plasteel/barber,/area/medical/cmo) +"bGt" = (/obj/machinery/computer/med_data,/obj/machinery/airalarm{frequency = 1439; pixel_y = 23},/turf/open/floor/plasteel/barber,/area/medical/cmo) +"bGu" = (/obj/machinery/disposal/bin,/obj/structure/disposalpipe/trunk,/obj/machinery/light{dir = 4; icon_state = "tube1"},/turf/open/floor/plasteel/barber,/area/medical/cmo) +"bGv" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/open/floor/plating,/area/maintenance/asmaint) +"bGw" = (/obj/structure/reagent_dispensers/fueltank,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/turf/open/floor/plating,/area/maintenance/asmaint) +"bGx" = (/obj/machinery/r_n_d/server/core,/turf/open/floor/bluegrid{name = "Server Base"; initial_gas_mix = "n2=500;TEMP=80"},/area/toxins/server) +"bGy" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; external_pressure_bound = 120; initialize_directions = 1; internal_pressure_bound = 4000; on = 1; pressure_checks = 2; pump_direction = 0},/turf/open/floor/bluegrid{name = "Server Base"; initial_gas_mix = "n2=500;TEMP=80"},/area/toxins/server) +"bGz" = (/obj/structure/grille,/obj/structure/sign/securearea{desc = "A warning sign which reads 'SERVER ROOM'."; name = "SERVER ROOM"; pixel_y = -32},/obj/machinery/atmospherics/pipe/simple{dir = 4},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/toxins/server) +"bGA" = (/obj/machinery/atmospherics/pipe/simple{dir = 9},/obj/machinery/firealarm{dir = 1; pixel_y = -24},/turf/open/floor/plasteel/black,/area/toxins/server) +"bGB" = (/obj/machinery/computer/rdservercontrol,/turf/open/floor/plasteel/black,/area/toxins/server) +"bGC" = (/obj/structure/table,/obj/item/weapon/folder/white,/obj/item/weapon/pen,/turf/open/floor/plasteel/black,/area/toxins/server) +"bGD" = (/obj/item/device/radio/intercom{pixel_x = -25},/obj/structure/filingcabinet,/turf/open/floor/plasteel/red/side{dir = 10},/area/security/checkpoint/science) +"bGE" = (/obj/machinery/power/apc{dir = 2; name = "Science Security APC"; pixel_y = -24},/obj/structure/cable,/turf/open/floor/plasteel/red/side,/area/security/checkpoint/science) +"bGF" = (/obj/item/weapon/screwdriver{pixel_y = 10},/obj/item/device/radio/off,/turf/open/floor/plasteel/red/side,/area/security/checkpoint/science) +"bGG" = (/obj/machinery/computer/secure_data,/obj/machinery/requests_console{department = "Security"; departmentType = 5; pixel_y = -30},/turf/open/floor/plasteel/red/side,/area/security/checkpoint/science) +"bGH" = (/obj/structure/table,/obj/item/weapon/paper_bin{pixel_x = 1; pixel_y = 9},/obj/item/weapon/pen,/turf/open/floor/plasteel/red/side{dir = 6},/area/security/checkpoint/science) +"bGI" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) +"bGJ" = (/obj/machinery/light{dir = 4},/turf/open/floor/plasteel/white/side{dir = 9},/area/medical/research{name = "Research Division"}) +"bGK" = (/obj/machinery/power/apc{dir = 8; name = "RD Office APC"; pixel_x = -25},/obj/structure/cable,/obj/machinery/light_switch{pixel_y = -23},/obj/item/weapon/twohanded/required/kirbyplants/dead,/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/hor) +"bGL" = (/obj/machinery/keycard_auth{pixel_x = 0; pixel_y = -24},/obj/machinery/light,/obj/machinery/computer/card/minor/rd,/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/hor) +"bGM" = (/obj/structure/table,/obj/item/weapon/cartridge/signal/toxins,/obj/item/weapon/cartridge/signal/toxins{pixel_x = -4; pixel_y = 2},/obj/item/weapon/cartridge/signal/toxins{pixel_x = 4; pixel_y = 6},/obj/machinery/camera{c_tag = "Research Director's Office"; dir = 1; network = list("SS13","RD")},/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -29},/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/hor) +"bGN" = (/obj/structure/closet/secure_closet/RD,/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/hor) +"bGO" = (/obj/machinery/disposal/bin,/obj/structure/disposalpipe/trunk{dir = 1},/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/hor) +"bGP" = (/obj/machinery/suit_storage_unit/rd,/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/hor) +"bGQ" = (/obj/machinery/camera{c_tag = "Experimentor Lab Chamber"; dir = 1; network = list("SS13","RD")},/obj/machinery/light,/obj/structure/sign/nosmoking_2{pixel_y = -32},/turf/open/floor/engine,/area/toxins/explab) +"bGR" = (/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 5},/turf/open/floor/plating,/area/maintenance/asmaint2) +"bGS" = (/obj/structure/table,/obj/item/weapon/paper_bin{pixel_x = 1; pixel_y = 9},/turf/open/floor/plasteel,/area/quartermaster/miningdock) +"bGT" = (/obj/machinery/firealarm{dir = 4; pixel_x = 24},/turf/open/floor/plasteel,/area/quartermaster/miningdock) +"bGU" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plating,/area/maintenance/aft) +"bGV" = (/turf/closed/wall,/area/maintenance/aft) +"bGW" = (/turf/closed/wall,/area/storage/tech) +"bGX" = (/obj/structure/disposalpipe/segment,/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass{name = "Central Access"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/caution/corner{dir = 8},/area/hallway/primary/central) +"bGY" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass{name = "Central Access"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/yellow/corner{dir = 2},/area/hallway/primary/central) +"bGZ" = (/turf/closed/wall,/area/janitor) +"bHa" = (/obj/machinery/door/airlock{name = "Custodial Closet"; req_access_txt = "26"},/obj/structure/disposalpipe/segment,/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel,/area/janitor) +"bHb" = (/turf/closed/wall,/area/maintenance/asmaint) +"bHc" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/turf/open/floor/plating,/area/maintenance/asmaint) +"bHd" = (/obj/machinery/vending/cigarette,/turf/open/floor/plasteel/black,/area/hallway/primary/central) +"bHe" = (/obj/structure/disposalpipe/segment,/obj/structure/table,/obj/item/weapon/surgicaldrill,/turf/open/floor/plasteel,/area/medical/sleeper) +"bHf" = (/obj/structure/table,/obj/item/weapon/hemostat,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/white/side{dir = 2},/area/medical/sleeper) +"bHg" = (/obj/structure/table,/obj/item/weapon/scalpel{pixel_y = 12},/obj/item/weapon/circular_saw,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/white,/area/medical/sleeper) +"bHh" = (/obj/structure/table,/obj/item/weapon/retractor,/turf/open/floor/plasteel/white/side{dir = 2},/area/medical/sleeper) +"bHi" = (/obj/structure/table,/obj/item/weapon/cautery{pixel_x = 4},/turf/open/floor/plasteel,/area/medical/sleeper) +"bHj" = (/obj/structure/table,/obj/item/weapon/folder/white,/obj/item/weapon/reagent_containers/dropper,/obj/item/weapon/soap/nanotrasen,/turf/open/floor/plasteel/white,/area/medical/sleeper) +"bHk" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/whiteblue/corner{dir = 2},/area/medical/sleeper) +"bHl" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/medical/sleeper) +"bHm" = (/obj/structure/closet/l3closet,/turf/open/floor/plasteel/white,/area/medical/sleeper) +"bHn" = (/obj/structure/closet/wardrobe/white/medical,/turf/open/floor/plasteel/white,/area/medical/sleeper) +"bHo" = (/obj/structure/closet/secure_closet/medical3,/obj/machinery/airalarm{pixel_y = 24},/turf/open/floor/plasteel/white,/area/medical/sleeper) +"bHp" = (/obj/structure/closet/secure_closet/medical3,/obj/machinery/camera{c_tag = "Medbay Storage"; dir = 2; network = list("SS13")},/turf/open/floor/plasteel/white,/area/medical/sleeper) +"bHq" = (/obj/structure/table,/obj/item/weapon/storage/box/bodybags{pixel_x = 3; pixel_y = 3},/obj/item/weapon/storage/box/rxglasses,/turf/open/floor/plasteel/white,/area/medical/sleeper) +"bHr" = (/obj/structure/disposalpipe/trunk,/obj/machinery/disposal/bin,/turf/open/floor/plasteel/white,/area/medical/sleeper) +"bHs" = (/turf/open/floor/plasteel/whiteblue/corner{dir = 8},/area/medical/medbay) +"bHt" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/medical/cmo) +"bHu" = (/turf/open/floor/plasteel/barber,/area/medical/cmo) +"bHv" = (/obj/structure/chair/office/light,/obj/effect/landmark/start{name = "Chief Medical Officer"},/turf/open/floor/plasteel/barber,/area/medical/cmo) +"bHw" = (/obj/machinery/keycard_auth{pixel_x = 24; pixel_y = 0},/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel/barber,/area/medical/cmo) +"bHx" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/asmaint) +"bHy" = (/turf/closed/wall/r_wall,/area/toxins/xenobiology) +"bHz" = (/turf/closed/wall,/area/toxins/storage) +"bHA" = (/obj/machinery/door/firedoor/heavy,/obj/machinery/airalarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/turf/open/floor/plasteel/white/side{dir = 5},/area/medical/research{name = "Research Division"}) +"bHB" = (/obj/machinery/door/firedoor/heavy,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) +"bHC" = (/obj/machinery/door/firedoor/heavy,/turf/open/floor/plasteel/white/side{dir = 9},/area/medical/research{name = "Research Division"}) +"bHD" = (/obj/structure/closet,/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/asmaint2) +"bHE" = (/obj/structure/rack,/obj/effect/spawner/lootdrop/maintenance{lootcount = 3; name = "3maintenance loot spawner"},/turf/open/floor/plating,/area/maintenance/asmaint2) +"bHF" = (/turf/closed/wall/shuttle{icon_state = "swall_f18"},/area/shuttle/abandoned) +"bHG" = (/obj/item/device/multitool,/turf/open/floor/plasteel/shuttle/white,/area/shuttle/abandoned) +"bHH" = (/obj/structure/chair,/turf/open/floor/plasteel/shuttle/white,/area/shuttle/abandoned) +"bHI" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'KEEP CLEAR OF DOCKING AREA'."; name = "KEEP CLEAR: DOCKING AREA"; pixel_y = 32},/turf/open/space,/area/space) +"bHJ" = (/obj/structure/table,/obj/item/weapon/folder/yellow,/obj/item/weapon/pen,/obj/machinery/requests_console{department = "Mining"; departmentType = 0; pixel_x = -30; pixel_y = 0},/obj/machinery/light{dir = 8},/turf/open/floor/plasteel,/area/quartermaster/miningdock) +"bHK" = (/obj/structure/chair/office/dark{dir = 8},/obj/effect/landmark/start{name = "Shaft Miner"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/quartermaster/miningdock) +"bHL" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/open/floor/plasteel,/area/quartermaster/miningdock) +"bHM" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/quartermaster/miningdock) +"bHN" = (/obj/machinery/door/airlock/maintenance{name = "Mining Maintenance"; req_access_txt = "48"},/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/quartermaster/miningdock) +"bHO" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/aft) +"bHP" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/power/apc{dir = 1; name = "Cargo Security APC"; pixel_x = 1; pixel_y = 24},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/security/checkpoint/supply) +"bHQ" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/aft) +"bHR" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/aft) +"bHS" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/open/floor/plating,/area/maintenance/aft) +"bHT" = (/obj/structure/table,/obj/item/device/flashlight{pixel_x = 1; pixel_y = 5},/obj/item/device/flashlight{pixel_x = 1; pixel_y = 5},/obj/item/device/assembly/flash/handheld,/obj/item/device/assembly/flash/handheld,/obj/machinery/ai_status_display{pixel_x = -32; pixel_y = 0},/turf/open/floor/plating,/area/storage/tech) +"bHU" = (/obj/structure/table,/obj/item/weapon/electronics/apc,/obj/item/weapon/electronics/airlock,/obj/machinery/light/small{dir = 1},/turf/open/floor/plating,/area/storage/tech) +"bHV" = (/obj/structure/table,/obj/item/weapon/screwdriver{pixel_y = 16},/obj/item/weapon/wirecutters,/turf/open/floor/plating,/area/storage/tech) +"bHW" = (/obj/machinery/airalarm{frequency = 1439; pixel_y = 23},/turf/open/floor/plating,/area/storage/tech) +"bHX" = (/obj/machinery/camera{c_tag = "Tech Storage"; dir = 2},/obj/machinery/power/apc{dir = 1; name = "Tech Storage APC"; pixel_y = 24},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/open/floor/plating,/area/storage/tech) +"bHY" = (/obj/structure/table,/obj/item/device/analyzer,/obj/item/device/healthanalyzer,/obj/machinery/light/small{dir = 1},/turf/open/floor/plating,/area/storage/tech) +"bHZ" = (/obj/structure/table,/obj/item/device/plant_analyzer,/obj/item/weapon/stock_parts/cell/high/plus,/turf/open/floor/plating,/area/storage/tech) +"bIa" = (/turf/open/floor/plating,/area/storage/tech) +"bIb" = (/obj/structure/disposalpipe/segment,/obj/machinery/door/firedoor,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/caution/corner{dir = 8},/area/hallway/primary/aft) +"bIc" = (/obj/machinery/door/firedoor,/turf/open/floor/plasteel,/area/hallway/primary/aft) +"bId" = (/obj/machinery/door/firedoor,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/yellow/corner{dir = 2},/area/hallway/primary/aft) +"bIe" = (/obj/structure/closet/jcloset,/turf/open/floor/plasteel,/area/janitor) +"bIf" = (/obj/structure/closet/l3closet/janitor,/obj/machinery/airalarm{frequency = 1439; pixel_y = 23},/turf/open/floor/plasteel,/area/janitor) +"bIg" = (/obj/machinery/light_switch{pixel_y = 28},/obj/machinery/camera{c_tag = "Custodial Closet"},/obj/vehicle/janicart,/turf/open/floor/plasteel,/area/janitor) +"bIh" = (/obj/item/weapon/storage/box/lights/mixed,/obj/item/weapon/storage/box/lights/mixed,/turf/open/floor/plasteel,/area/janitor) +"bIi" = (/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel,/area/janitor) +"bIj" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/janitor) +"bIk" = (/turf/open/floor/plasteel,/area/janitor) +"bIl" = (/obj/machinery/door/window/westleft{name = "Janitoral Delivery"; req_access_txt = "26"},/turf/open/floor/plasteel/delivery,/area/janitor) +"bIm" = (/obj/machinery/navbeacon{codes_txt = "delivery;dir=8"; dir = 1; freq = 1400; location = "Janitor"},/obj/structure/plasticflaps{opacity = 1},/turf/open/floor/plasteel/bot,/area/janitor) +"bIn" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/floor/plating,/area/maintenance/asmaint) +"bIo" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/open/floor/plating,/area/maintenance/asmaint) +"bIp" = (/obj/structure/disposalpipe/segment,/obj/structure/table,/obj/item/clothing/gloves/color/latex,/obj/item/clothing/mask/surgical,/obj/item/clothing/suit/apron/surgical,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/open/floor/plasteel/white/side{dir = 4},/area/medical/sleeper) +"bIq" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,/turf/open/floor/plasteel/white,/area/medical/sleeper) +"bIr" = (/obj/effect/landmark/start{name = "Medical Doctor"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/sleeper) +"bIs" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/turf/open/floor/plasteel/white,/area/medical/sleeper) +"bIt" = (/obj/structure/table,/obj/item/weapon/surgical_drapes,/obj/item/weapon/razor,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white/side{dir = 8},/area/medical/sleeper) +"bIu" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall,/area/medical/sleeper) +"bIv" = (/obj/structure/table,/obj/structure/bedsheetbin{pixel_x = 2},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/whiteblue/corner{dir = 8},/area/medical/sleeper) +"bIw" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/sleeper) +"bIx" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,/turf/open/floor/plasteel/whiteblue/side{dir = 4},/area/medical/sleeper) +"bIy" = (/obj/machinery/door/airlock/glass_medical{id_tag = null; name = "Medbay Storage"; req_access_txt = "45"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/sleeper) +"bIz" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_Toxins = 0},/turf/open/floor/plasteel/white,/area/medical/sleeper) +"bIA" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/turf/open/floor/plasteel/white,/area/medical/sleeper) +"bIB" = (/obj/machinery/door/airlock/glass_medical{id_tag = null; name = "Medbay Storage"; req_access_txt = "45"},/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel/white,/area/medical/sleeper) +"bIC" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel/whiteblue/side{dir = 8},/area/medical/medbay) +"bID" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/plasteel/white,/area/medical/medbay) +"bIE" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/medbay) +"bIF" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/medbay) +"bIG" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/open/floor/plasteel/white,/area/medical/medbay) +"bIH" = (/obj/structure/table/glass,/obj/item/weapon/paper_bin{pixel_x = -2; pixel_y = 5},/turf/open/floor/plasteel/barber,/area/medical/cmo) +"bII" = (/obj/structure/table/glass,/obj/item/weapon/folder/white,/obj/item/weapon/stamp/cmo,/obj/item/clothing/glasses/hud/health,/turf/open/floor/plasteel/barber,/area/medical/cmo) +"bIJ" = (/obj/structure/table/glass,/obj/item/weapon/pen,/obj/item/clothing/tie/stethoscope,/mob/living/simple_animal/pet/cat/Runtime,/turf/open/floor/plasteel/barber,/area/medical/cmo) +"bIK" = (/obj/structure/disposalpipe/segment,/obj/item/device/radio/intercom{pixel_x = 25},/obj/machinery/camera{c_tag = "Chief Medical Office"; dir = 8; network = list("SS13"); pixel_x = 0; pixel_y = -22},/turf/open/floor/plasteel/barber,/area/medical/cmo) +"bIL" = (/turf/open/floor/engine,/area/toxins/xenobiology) +"bIM" = (/obj/machinery/camera{c_tag = "Xenobiology Test Chamber"; dir = 2; network = list("Xeno","RD"); pixel_x = 0},/obj/machinery/light{dir = 1},/turf/open/floor/engine,/area/toxins/xenobiology) +"bIN" = (/obj/machinery/portable_atmospherics/canister/toxins,/turf/open/floor/plasteel/delivery{name = "floor"},/area/toxins/storage) +"bIO" = (/obj/machinery/portable_atmospherics/canister/toxins,/obj/structure/sign/nosmoking_2{pixel_x = 0; pixel_y = 32},/turf/open/floor/plasteel/delivery{name = "floor"},/area/toxins/storage) +"bIP" = (/obj/machinery/power/apc{dir = 8; name = "Misc Research APC"; pixel_x = -25},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/open/floor/plasteel/white/side{dir = 5},/area/medical/research{name = "Research Division"}) +"bIQ" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) +"bIR" = (/turf/open/floor/plasteel/white/side{dir = 9},/area/medical/research{name = "Research Division"}) +"bIS" = (/obj/machinery/vending/coffee,/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) +"bIT" = (/turf/closed/wall,/area/toxins/mixing) +"bIU" = (/obj/structure/closet/bombcloset,/obj/machinery/light_switch{pixel_x = 0; pixel_y = 28},/turf/open/floor/plasteel/warnwhite{dir = 2},/area/toxins/mixing) +"bIV" = (/obj/structure/closet/bombcloset,/obj/machinery/light{dir = 1},/turf/open/floor/plasteel/warnwhite{dir = 2},/area/toxins/mixing) +"bIW" = (/obj/machinery/portable_atmospherics/canister,/obj/structure/window/reinforced{dir = 8},/obj/machinery/firealarm{dir = 2; pixel_y = 24},/obj/machinery/camera{c_tag = "Toxins Lab West"; dir = 2; network = list("SS13","RD"); pixel_y = 0},/turf/open/floor/plasteel/warnwhite{dir = 2},/area/toxins/mixing) +"bIX" = (/obj/machinery/portable_atmospherics/canister,/obj/item/device/radio/intercom{pixel_y = 25},/turf/open/floor/plasteel/warnwhite{dir = 2},/area/toxins/mixing) +"bIY" = (/obj/machinery/portable_atmospherics/scrubber,/obj/machinery/airalarm{frequency = 1439; locked = 0; pixel_y = 23},/obj/item/weapon/storage/firstaid/toxin,/turf/open/floor/plasteel/warnwhite{dir = 2},/area/toxins/mixing) +"bIZ" = (/obj/machinery/portable_atmospherics/pump,/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plasteel/warnwhite{dir = 2},/area/toxins/mixing) +"bJa" = (/obj/machinery/atmospherics/components/unary/portables_connector/visible,/turf/open/floor/plasteel/warnwhite{dir = 9},/area/toxins/mixing) +"bJb" = (/obj/machinery/atmospherics/components/unary/portables_connector/visible,/obj/machinery/light{dir = 1},/turf/open/floor/plasteel/warnwhite{dir = 1},/area/toxins/mixing) +"bJc" = (/obj/machinery/atmospherics/components/unary/portables_connector/visible,/turf/open/floor/plasteel/warnwhite{dir = 5},/area/toxins/mixing) +"bJd" = (/turf/closed/wall/r_wall,/area/toxins/mixing) +"bJe" = (/obj/structure/closet/crate,/obj/effect/spawner/lootdrop/maintenance{lootcount = 4; name = "4maintenance loot spawner"},/turf/open/floor/plating,/area/maintenance/asmaint2) +"bJf" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/turf/open/floor/plating,/area/maintenance/asmaint2) +"bJg" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint2) +"bJh" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/turf/open/floor/plating,/area/maintenance/asmaint2) +"bJi" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall,/area/toxins/mixing) +"bJj" = (/turf/closed/wall/shuttle{icon_state = "swall12"; dir = 2},/area/shuttle/labor) +"bJk" = (/obj/machinery/computer/security/mining,/obj/machinery/camera{c_tag = "Mining Dock"; dir = 4; network = list("SS13")},/turf/open/floor/plasteel,/area/quartermaster/miningdock) +"bJl" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 8},/turf/open/floor/plasteel,/area/quartermaster/miningdock) +"bJm" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/quartermaster/miningdock) +"bJn" = (/obj/machinery/airalarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/structure/closet/wardrobe/miner,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/quartermaster/miningdock) +"bJo" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall,/area/quartermaster/miningdock) +"bJp" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/aft) +"bJq" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/aft) +"bJr" = (/obj/structure/disposalpipe/sortjunction{dir = 8; icon_state = "pipe-j1s"; sortType = 15},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/aft) +"bJs" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/aft) +"bJt" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/turf/closed/wall,/area/maintenance/aft) +"bJu" = (/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/storage/tech) +"bJv" = (/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/storage/tech) +"bJw" = (/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/grille,/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/storage/tech) +"bJx" = (/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/storage/tech) +"bJy" = (/obj/structure/table,/obj/item/device/aicard,/obj/item/weapon/aiModule/reset,/turf/open/floor/plating,/area/storage/tech) +"bJz" = (/obj/structure/table,/obj/item/stack/cable_coil{pixel_x = -3; pixel_y = 3},/obj/item/stack/cable_coil,/obj/item/weapon/stock_parts/cell/high/plus,/turf/open/floor/plating,/area/storage/tech) +"bJA" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plating,/area/storage/tech) +"bJB" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/caution/corner{dir = 8},/area/hallway/primary/aft) +"bJC" = (/turf/open/floor/plasteel,/area/hallway/primary/aft) +"bJD" = (/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/yellow/corner{dir = 2},/area/hallway/primary/aft) +"bJE" = (/obj/structure/chair/stool,/obj/effect/landmark/start{name = "Janitor"},/turf/open/floor/plasteel,/area/janitor) +"bJF" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/turf/open/floor/plasteel,/area/janitor) +"bJG" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/plasteel,/area/janitor) +"bJH" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/open/floor/plasteel,/area/janitor) +"bJI" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/mob/living/simple_animal/hostile/lizard{name = "Wags-His-Tail"; real_name = "Wags-His-Tail"},/turf/open/floor/plasteel,/area/janitor) +"bJJ" = (/obj/item/weapon/mop,/obj/item/weapon/reagent_containers/glass/bucket,/turf/open/floor/plasteel,/area/janitor) +"bJK" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/power/apc{dir = 8; name = "Custodial Closet APC"; pixel_x = -24},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/open/floor/plating,/area/janitor) +"bJL" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/structure/grille/broken,/turf/open/floor/plating,/area/maintenance/asmaint) +"bJM" = (/obj/structure/disposalpipe/sortjunction{dir = 8; icon_state = "pipe-j2s"; sortType = 6},/obj/structure/grille,/obj/structure/window/fulltile{health = 25},/turf/open/floor/plating,/area/maintenance/asmaint) +"bJN" = (/obj/structure/grille,/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/window/fulltile,/turf/open/floor/plating,/area/maintenance/asmaint) +"bJO" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/turf/open/floor/plating,/area/maintenance/asmaint) +"bJP" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/open/floor/plating,/area/maintenance/asmaint) +"bJQ" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/door/airlock/maintenance{name = "Surgery Maintenance"; req_access_txt = "45"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/medical/sleeper) +"bJR" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/turf/open/floor/plasteel/white,/area/medical/sleeper) +"bJS" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/turf/open/floor/plasteel/white,/area/medical/sleeper) +"bJT" = (/obj/structure/table/optable,/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/open/floor/plasteel/white,/area/medical/sleeper) +"bJU" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/white,/area/medical/sleeper) +"bJV" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/sleeper) +"bJW" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/medical{name = "Operating Theatre"; req_access_txt = "45"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/medical/sleeper) +"bJX" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/whiteblue/side{dir = 8},/area/medical/sleeper) +"bJY" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/open/floor/plasteel/white,/area/medical/sleeper) +"bJZ" = (/obj/machinery/airalarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/iv_drip,/turf/open/floor/plasteel/whiteblue/corner{dir = 4},/area/medical/sleeper) +"bKa" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/closed/wall,/area/medical/sleeper) +"bKb" = (/obj/structure/table,/obj/item/weapon/storage/belt/medical{pixel_x = 0; pixel_y = 2},/obj/item/weapon/storage/belt/medical{pixel_x = 0; pixel_y = 2},/obj/item/weapon/storage/belt/medical{pixel_x = 0; pixel_y = 2},/obj/item/clothing/tie/stethoscope,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/sleeper) +"bKc" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/plasteel/white,/area/medical/sleeper) +"bKd" = (/obj/structure/sink{dir = 4; icon_state = "sink"; pixel_x = 11; pixel_y = 0},/turf/open/floor/plasteel/white,/area/medical/sleeper) +"bKe" = (/obj/item/device/radio/intercom{broadcasting = 0; freerange = 0; frequency = 1485; listening = 1; name = "Station Intercom (Medbay)"; pixel_x = -30; pixel_y = 0},/obj/machinery/camera{c_tag = "Medbay South"; dir = 4; network = list("SS13")},/turf/open/floor/plasteel/white,/area/medical/medbay) +"bKf" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/white,/area/medical/medbay) +"bKg" = (/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/turf/open/floor/plasteel/barber,/area/medical/cmo) +"bKh" = (/obj/structure/chair{dir = 1},/turf/open/floor/plasteel/barber,/area/medical/cmo) +"bKi" = (/obj/structure/disposalpipe/segment,/obj/machinery/light_switch{pixel_x = 28; pixel_y = 0},/turf/open/floor/plasteel/barber,/area/medical/cmo) +"bKj" = (/obj/machinery/airalarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/obj/machinery/light/small{dir = 8},/obj/machinery/portable_atmospherics/canister/bz,/turf/open/floor/plasteel/floorgrime,/area/toxins/storage) +"bKk" = (/turf/open/floor/plasteel/floorgrime,/area/toxins/storage) +"bKl" = (/obj/effect/decal/cleanable/oil,/obj/item/weapon/cigbutt,/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/floorgrime,/area/toxins/storage) +"bKm" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/floorgrime,/area/toxins/storage) +"bKn" = (/obj/machinery/light_switch{pixel_x = 27},/obj/machinery/light/small{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/floorgrime,/area/toxins/storage) +"bKo" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall,/area/toxins/storage) +"bKp" = (/obj/machinery/firealarm{dir = 8; pixel_x = -24},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white/side{dir = 5},/area/medical/research{name = "Research Division"}) +"bKq" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) +"bKr" = (/turf/open/floor/plasteel/warnwhite{dir = 9},/area/medical/research{name = "Research Division"}) +"bKs" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/toxins/mixing) +"bKt" = (/turf/open/floor/plasteel/white,/area/toxins/mixing) +"bKu" = (/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 5},/turf/open/floor/plasteel/white,/area/toxins/mixing) +"bKv" = (/obj/machinery/atmospherics/pipe/manifold/general/visible,/obj/machinery/meter,/turf/open/floor/plasteel/white,/area/toxins/mixing) +"bKw" = (/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 9},/turf/open/floor/plasteel/white,/area/toxins/mixing) +"bKx" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/disposalpipe/segment,/turf/open/floor/plating,/area/maintenance/asmaint2) +"bKy" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/closed/wall,/area/maintenance/asmaint2) +"bKz" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall,/area/toxins/mixing) +"bKA" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/turf/closed/wall,/area/toxins/mixing) +"bKB" = (/obj/machinery/doppler_array{dir = 4},/turf/open/floor/plasteel/bot{dir = 2},/area/toxins/mixing) +"bKC" = (/turf/closed/wall,/area/toxins/test_area) +"bKD" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating/airless,/area/toxins/test_area) +"bKE" = (/turf/closed/wall/shuttle{icon_state = "swall_f16"},/area/shuttle/abandoned) +"bKF" = (/obj/item/weapon/scalpel,/turf/open/floor/plasteel/shuttle/white,/area/shuttle/abandoned) +"bKG" = (/obj/structure/table,/turf/open/floor/plasteel/shuttle,/area/shuttle/labor) +"bKH" = (/obj/machinery/computer/shuttle/mining,/turf/open/floor/plasteel/shuttle,/area/shuttle/labor) +"bKI" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/quartermaster/miningdock) +"bKJ" = (/obj/machinery/computer/shuttle/mining,/turf/open/floor/plasteel/brown{dir = 9},/area/quartermaster/miningdock) +"bKK" = (/turf/open/floor/plasteel,/area/quartermaster/miningdock) +"bKL" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; external_pressure_bound = 101.325; on = 1; pressure_checks = 1},/turf/open/floor/plasteel,/area/quartermaster/miningdock) +"bKM" = (/obj/structure/closet/secure_closet/miner,/turf/open/floor/plasteel,/area/quartermaster/miningdock) +"bKN" = (/obj/machinery/door/airlock/maintenance{name = "Firefighting equipment"; req_access_txt = "12"},/turf/open/floor/plating,/area/maintenance/aft) +"bKO" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/aft) +"bKP" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/maintenance/aft) +"bKQ" = (/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/structure/cable,/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/storage/tech) +"bKR" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/weapon/circuitboard/computer/borgupload{pixel_x = -1; pixel_y = 1},/obj/item/weapon/circuitboard/computer/aiupload{pixel_x = 2; pixel_y = -2},/turf/open/floor/plasteel,/area/storage/tech) +"bKS" = (/obj/machinery/camera{c_tag = "Secure Tech Storage"; dir = 2},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel,/area/storage/tech) +"bKT" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"},/turf/closed/wall/r_wall,/area/storage/tech) +"bKU" = (/obj/structure/table,/obj/machinery/cell_charger{pixel_y = 5},/obj/item/device/multitool,/turf/open/floor/plating,/area/storage/tech) +"bKV" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/weapon/circuitboard/computer/pandemic{pixel_x = -3; pixel_y = 3},/obj/item/weapon/circuitboard/computer/rdconsole,/obj/item/weapon/circuitboard/machine/rdserver{pixel_x = 3; pixel_y = -3},/obj/item/weapon/circuitboard/machine/destructive_analyzer,/obj/item/weapon/circuitboard/machine/protolathe,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/item/weapon/circuitboard/computer/aifixer,/obj/item/weapon/circuitboard/computer/teleporter,/obj/item/weapon/circuitboard/machine/circuit_imprinter,/obj/item/weapon/circuitboard/machine/mechfab,/turf/open/floor/plating,/area/storage/tech) +"bKW" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/weapon/circuitboard/computer/mining,/obj/item/weapon/circuitboard/machine/autolathe{pixel_x = 3; pixel_y = -3},/obj/item/weapon/circuitboard/computer/arcade/battle,/turf/open/floor/plating,/area/storage/tech) +"bKX" = (/obj/structure/rack,/obj/item/weapon/circuitboard/machine/telecomms/processor,/obj/item/weapon/circuitboard/machine/telecomms/receiver,/obj/item/weapon/circuitboard/machine/telecomms/server,/obj/item/weapon/circuitboard/machine/telecomms/bus,/obj/item/weapon/circuitboard/machine/telecomms/broadcaster,/obj/item/weapon/circuitboard/computer/message_monitor{pixel_y = -5},/turf/open/floor/plating,/area/storage/tech) +"bKY" = (/obj/machinery/firealarm{dir = 4; pixel_x = 24},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/yellow/corner{dir = 2},/area/hallway/primary/aft) +"bKZ" = (/obj/structure/table,/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/pen,/obj/item/key/janitor,/turf/open/floor/plasteel,/area/janitor) +"bLa" = (/obj/structure/table,/obj/item/weapon/grenade/chem_grenade/cleaner,/obj/item/weapon/grenade/chem_grenade/cleaner,/obj/item/weapon/grenade/chem_grenade/cleaner,/obj/machinery/requests_console{department = "Janitorial"; departmentType = 1; pixel_y = -29},/obj/item/weapon/reagent_containers/spray/cleaner,/turf/open/floor/plasteel,/area/janitor) +"bLb" = (/obj/machinery/disposal/bin,/obj/structure/disposalpipe/trunk{dir = 1},/obj/machinery/light,/turf/open/floor/plasteel,/area/janitor) +"bLc" = (/obj/structure/janitorialcart,/turf/open/floor/plasteel,/area/janitor) +"bLd" = (/obj/item/weapon/restraints/legcuffs/beartrap,/obj/item/weapon/restraints/legcuffs/beartrap,/obj/item/weapon/storage/box/mousetraps,/obj/item/weapon/storage/box/mousetraps,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/janitor) +"bLe" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/janitor) +"bLf" = (/obj/structure/reagent_dispensers/watertank,/turf/open/floor/plasteel,/area/janitor) +"bLg" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/floor/plating,/area/maintenance/asmaint) +"bLh" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plating,/area/maintenance/asmaint) +"bLi" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment,/mob/living/simple_animal/mouse,/turf/open/floor/plating,/area/maintenance/asmaint) +"bLj" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/turf/open/floor/plating,/area/maintenance/asmaint) +"bLk" = (/obj/structure/disposalpipe/segment,/obj/machinery/power/apc{dir = 4; name = "Treatment Center APC"; pixel_x = 26; pixel_y = 0},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/medical/sleeper) +"bLl" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white/side{dir = 4},/area/medical/sleeper) +"bLm" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/sleeper) +"bLn" = (/obj/machinery/computer/operating,/turf/open/floor/plasteel/white,/area/medical/sleeper) +"bLo" = (/obj/structure/sign/nosmoking_2{pixel_x = -28},/obj/structure/bed,/obj/item/weapon/bedsheet/medical,/turf/open/floor/plasteel/whiteblue/corner{dir = 1},/area/medical/sleeper) +"bLp" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; external_pressure_bound = 101.325; on = 1; pressure_checks = 1},/turf/open/floor/plasteel/white,/area/medical/sleeper) +"bLq" = (/obj/machinery/vending/wallmed{pixel_x = 28; pixel_y = 0},/obj/machinery/camera{c_tag = "Medbay Recovery Room"; dir = 8; network = list("SS13")},/obj/machinery/iv_drip,/turf/open/floor/plasteel/white,/area/medical/sleeper) +"bLr" = (/obj/structure/table,/obj/item/weapon/hand_labeler,/turf/open/floor/plasteel/white,/area/medical/sleeper) +"bLs" = (/obj/structure/table,/obj/item/weapon/reagent_containers/glass/bottle/epinephrine{pixel_x = 7; pixel_y = -3},/obj/item/weapon/reagent_containers/glass/bottle/morphine,/obj/item/weapon/reagent_containers/syringe,/obj/item/clothing/suit/straight_jacket,/obj/item/clothing/mask/muzzle,/obj/item/weapon/gun/syringe,/turf/open/floor/plasteel/white,/area/medical/sleeper) +"bLt" = (/obj/structure/table,/obj/item/weapon/folder/white,/obj/item/clothing/tie/stethoscope,/obj/machinery/vending/wallmed{pixel_y = 28},/obj/machinery/light/small{dir = 8},/turf/open/floor/plasteel/white,/area/medical/medbay) +"bLu" = (/obj/structure/chair/office/light{dir = 8},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/plasteel/white,/area/medical/medbay) +"bLv" = (/obj/structure/closet/secure_closet/personal/patient,/obj/machinery/button/door{id = "medpriv4"; name = "Privacy Shutters"; pixel_y = 25},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/medbay) +"bLw" = (/obj/structure/grille,/obj/machinery/door/poddoor/preopen{id = "medpriv4"; name = "privacy door"},/obj/structure/window/fulltile,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/medical/medbay) +"bLx" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/medbay) +"bLy" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/medbay) +"bLz" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden,/turf/open/floor/plasteel/white,/area/medical/medbay) +"bLA" = (/obj/machinery/door/airlock/glass_command{name = "Chief Medical Officer"; req_access_txt = "40"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/barber,/area/medical/cmo) +"bLB" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/turf/open/floor/plasteel/barber,/area/medical/cmo) +"bLC" = (/obj/machinery/hologram/holopad,/turf/open/floor/plasteel/barber,/area/medical/cmo) +"bLD" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/turf/open/floor/plasteel/barber,/area/medical/cmo) +"bLE" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/closed/wall,/area/medical/cmo) +"bLF" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/asmaint) +"bLG" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/sortjunction{sortType = 10},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/asmaint) +"bLH" = (/obj/effect/landmark/event_spawn,/turf/open/floor/engine,/area/toxins/xenobiology) +"bLI" = (/obj/machinery/power/apc{dir = 8; name = "Toxins Storage APC"; pixel_x = -25},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/camera{c_tag = "Toxins Storage"; dir = 4; network = list("SS13","RD")},/obj/machinery/portable_atmospherics/canister/bz,/turf/open/floor/plasteel/floorgrime,/area/toxins/storage) +"bLJ" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/effect/landmark{name = "xeno_spawn"; pixel_x = -1},/turf/open/floor/plasteel/floorgrime,/area/toxins/storage) +"bLK" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/mob/living/simple_animal/mouse,/turf/open/floor/plasteel/floorgrime,/area/toxins/storage) +"bLL" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/open/floor/plasteel/floorgrime,/area/toxins/storage) +"bLM" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/plasteel/floorgrime,/area/toxins/storage) +"bLN" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/door/airlock/research{name = "Toxins Storage"; req_access_txt = "8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/floorgrime,/area/toxins/storage) +"bLO" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/open/floor/plasteel/white/side{dir = 5},/area/medical/research{name = "Research Division"}) +"bLP" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) +"bLQ" = (/turf/open/floor/plasteel/warnwhite{dir = 8},/area/medical/research{name = "Research Division"}) +"bLR" = (/obj/machinery/door/firedoor/heavy,/obj/machinery/door/airlock/research{name = "Toxins Lab"; req_access_txt = "8"},/turf/open/floor/plasteel/white,/area/toxins/mixing) +"bLS" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/plasteel/white,/area/toxins/mixing) +"bLT" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/toxins/mixing) +"bLU" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/closed/wall/r_wall,/area/toxins/mixing) +"bLV" = (/obj/structure/sign/securearea{pixel_x = -32},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/warning/corner{dir = 1},/area/toxins/mixing) +"bLW" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden,/turf/open/floor/plasteel,/area/toxins/mixing) +"bLX" = (/obj/machinery/light/small{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/warning/corner{dir = 2},/area/toxins/mixing) +"bLY" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/closed/wall,/area/toxins/mixing) +"bLZ" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/obj/item/device/radio/intercom{pixel_y = 25},/obj/machinery/light/small{dir = 8},/turf/open/floor/plasteel,/area/toxins/mixing) +"bMa" = (/obj/machinery/button/massdriver{dir = 2; id = "toxinsdriver"; pixel_y = 24},/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel/warning/corner{dir = 8},/area/toxins/mixing) +"bMb" = (/obj/machinery/computer/security/telescreen{desc = "Used for watching the test chamber."; dir = 8; layer = 4; name = "Test Chamber Telescreen"; network = list("Toxins"); pixel_x = 30; pixel_y = 0},/turf/open/floor/plasteel/warning{dir = 5},/area/toxins/mixing) +"bMc" = (/obj/item/target,/obj/structure/window/reinforced,/turf/open/floor/plating/warnplate{dir = 1},/area/toxins/test_area) +"bMd" = (/obj/structure/table,/obj/item/weapon/storage/firstaid/regular{pixel_x = 6; pixel_y = -5},/turf/open/floor/plasteel/shuttle/white,/area/shuttle/abandoned) +"bMe" = (/obj/structure/chair{dir = 1},/turf/open/floor/plasteel/shuttle,/area/shuttle/labor) +"bMf" = (/obj/item/weapon/ore/iron,/turf/open/floor/plasteel/warning{dir = 9},/area/quartermaster/miningdock) +"bMg" = (/obj/structure/closet/crate,/obj/machinery/light/small{dir = 4},/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 27},/turf/open/floor/plasteel/warning{dir = 1},/area/quartermaster/miningdock) +"bMh" = (/turf/open/floor/plasteel/brown{dir = 8},/area/quartermaster/miningdock) +"bMi" = (/obj/effect/landmark/start{name = "Shaft Miner"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/quartermaster/miningdock) +"bMj" = (/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel,/area/quartermaster/miningdock) +"bMk" = (/obj/machinery/light/small{dir = 1},/obj/structure/chair/stool,/turf/open/floor/plating,/area/maintenance/aft) +"bMl" = (/obj/effect/landmark{name = "blobstart"},/turf/open/floor/plating,/area/maintenance/aft) +"bMm" = (/turf/open/floor/plating,/area/maintenance/aft) +"bMn" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/weapon/circuitboard/computer/crew{pixel_x = -1; pixel_y = 1},/obj/item/weapon/circuitboard/computer/card{pixel_x = 2; pixel_y = -2},/obj/item/weapon/circuitboard/computer/communications{pixel_x = 5; pixel_y = -5},/obj/machinery/light/small{dir = 8},/turf/open/floor/plasteel,/area/storage/tech) +"bMo" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel,/area/storage/tech) +"bMp" = (/obj/machinery/door/airlock/highsecurity{name = "Secure Tech Storage"; req_access_txt = "19;23"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/open/floor/plating,/area/storage/tech) +"bMq" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/open/floor/plating,/area/storage/tech) +"bMr" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/effect/landmark{name = "xeno_spawn"; pixel_x = -1},/turf/open/floor/plating,/area/storage/tech) +"bMs" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plating,/area/storage/tech) +"bMt" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/effect/landmark{name = "blobstart"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/storage/tech) +"bMu" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/storage/tech) +"bMv" = (/obj/machinery/door/airlock/engineering{name = "Tech Storage"; req_access_txt = "23"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/storage/tech) +"bMw" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/manifold4w/scrubbers,/turf/open/floor/plasteel/caution/corner{dir = 8},/area/hallway/primary/aft) +"bMx" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/hallway/primary/aft) +"bMy" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/yellow/corner{dir = 2},/area/hallway/primary/aft) +"bMz" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/closed/wall,/area/janitor) +"bMA" = (/obj/machinery/door/airlock/maintenance{name = "Custodial Maintenance"; req_access_txt = "26"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/janitor) +"bMB" = (/obj/machinery/power/apc{dir = 8; name = "Medbay Maintenance APC"; pixel_x = -24},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/open/floor/plating,/area/maintenance/asmaint) +"bMC" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/grille/broken,/turf/open/floor/plating,/area/maintenance/asmaint) +"bMD" = (/obj/structure/grille,/obj/structure/window/fulltile{health = 25},/turf/open/floor/plating,/area/maintenance/asmaint) +"bME" = (/obj/structure/disposalpipe/segment,/obj/structure/grille,/obj/structure/window/fulltile{health = 35},/turf/open/floor/plating,/area/maintenance/asmaint) +"bMF" = (/obj/structure/grille,/obj/structure/window/fulltile,/turf/open/floor/plating,/area/maintenance/asmaint) +"bMG" = (/obj/structure/disposalpipe/segment,/obj/structure/grille,/obj/structure/window/fulltile,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/asmaint) +"bMH" = (/obj/structure/disposalpipe/segment,/obj/structure/grille,/obj/structure/window/fulltile,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/asmaint) +"bMI" = (/obj/structure/closet/secure_closet/medical2,/turf/open/floor/plasteel,/area/medical/sleeper) +"bMJ" = (/obj/machinery/airalarm{dir = 1; icon_state = "alarm0"; pixel_y = -22},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; external_pressure_bound = 101.325; on = 1; pressure_checks = 1},/turf/open/floor/plasteel/white/side{dir = 1},/area/medical/sleeper) +"bMK" = (/obj/machinery/vending/wallmed{pixel_y = -28},/obj/machinery/camera{c_tag = "Surgery Operating"; dir = 1; network = list("SS13"); pixel_x = 22},/obj/machinery/light,/turf/open/floor/plasteel/white,/area/medical/sleeper) +"bML" = (/obj/machinery/firealarm{dir = 1; pixel_y = -24},/turf/open/floor/plasteel/white/side{dir = 1},/area/medical/sleeper) +"bMM" = (/obj/structure/closet/crate/freezer{name = "blood bags"},/obj/item/weapon/reagent_containers/blood/empty,/obj/item/weapon/reagent_containers/blood/empty{pixel_x = -3; pixel_y = -3},/obj/item/weapon/reagent_containers/blood/AMinus,/obj/item/weapon/reagent_containers/blood/BMinus{pixel_x = -4; pixel_y = 4},/obj/item/weapon/reagent_containers/blood/BPlus{pixel_x = 1; pixel_y = 2},/obj/item/weapon/reagent_containers/blood/OMinus,/obj/item/weapon/reagent_containers/blood/OPlus{pixel_x = -2; pixel_y = -1},/obj/item/weapon/reagent_containers/blood/random,/obj/item/weapon/reagent_containers/blood/random,/obj/item/weapon/reagent_containers/blood/random,/turf/open/floor/plasteel,/area/medical/sleeper) +"bMN" = (/obj/structure/bed,/obj/item/weapon/bedsheet/medical,/turf/open/floor/plasteel/white,/area/medical/sleeper) +"bMO" = (/obj/machinery/light,/turf/open/floor/plasteel/white,/area/medical/sleeper) +"bMP" = (/obj/structure/closet/wardrobe/pjs,/turf/open/floor/plasteel/white,/area/medical/sleeper) +"bMQ" = (/obj/structure/table,/obj/machinery/light,/obj/item/weapon/reagent_containers/spray/cleaner,/obj/item/clothing/glasses/hud/health,/obj/item/clothing/glasses/hud/health,/obj/item/clothing/glasses/hud/health,/turf/open/floor/plasteel/white,/area/medical/sleeper) +"bMR" = (/obj/structure/table,/obj/item/weapon/storage/firstaid/o2{pixel_x = 3; pixel_y = 3},/obj/item/weapon/storage/firstaid/o2,/obj/item/weapon/storage/firstaid/regular{pixel_x = -3; pixel_y = -3},/turf/open/floor/plasteel/white,/area/medical/sleeper) +"bMS" = (/obj/structure/table,/obj/item/device/radio/intercom{broadcasting = 0; freerange = 0; frequency = 1485; listening = 1; name = "Station Intercom (Medbay)"; pixel_x = 0; pixel_y = -30},/obj/item/weapon/storage/firstaid/toxin{pixel_x = 3; pixel_y = 3},/obj/item/weapon/storage/firstaid/toxin,/obj/item/weapon/storage/firstaid/regular{pixel_x = -3; pixel_y = -3},/turf/open/floor/plasteel/white,/area/medical/sleeper) +"bMT" = (/obj/structure/table,/obj/machinery/requests_console{announcementConsole = 0; department = "Medbay"; departmentType = 1; name = "Medbay RC"; pixel_x = 0; pixel_y = -30; pixel_z = 0},/obj/item/weapon/storage/firstaid/fire{pixel_x = 3; pixel_y = 3},/obj/item/weapon/storage/firstaid/fire,/obj/item/weapon/storage/firstaid/regular{pixel_x = -3; pixel_y = -3},/turf/open/floor/plasteel/white,/area/medical/sleeper) +"bMU" = (/obj/structure/table,/obj/item/weapon/storage/firstaid/brute{pixel_x = 3; pixel_y = 3},/obj/item/weapon/storage/firstaid/brute,/obj/item/weapon/storage/firstaid/regular{pixel_x = -3; pixel_y = -3},/turf/open/floor/plasteel/white,/area/medical/sleeper) +"bMV" = (/obj/machinery/light,/obj/structure/table,/obj/item/weapon/storage/box/beakers{pixel_x = 2; pixel_y = 2},/obj/item/weapon/storage/box/syringes,/turf/open/floor/plasteel/white,/area/medical/sleeper) +"bMW" = (/obj/structure/bed,/obj/item/weapon/bedsheet/medical,/turf/open/floor/plasteel/white,/area/medical/medbay) +"bMX" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/white,/area/medical/medbay) +"bMY" = (/obj/machinery/door/airlock/medical{name = "Patient Room"; req_access_txt = "5"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/medbay) +"bMZ" = (/obj/structure/disposalpipe/junction{icon_state = "pipe-j2"; dir = 2},/obj/machinery/atmospherics/pipe/manifold4w/scrubbers,/turf/open/floor/plasteel/white,/area/medical/medbay) +"bNa" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/white,/area/medical/medbay) +"bNb" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/medical/cmo) +"bNc" = (/obj/structure/table,/obj/item/weapon/cartridge/medical{pixel_x = -2; pixel_y = 6},/obj/item/weapon/cartridge/medical{pixel_x = 6; pixel_y = 3},/obj/item/weapon/cartridge/medical,/obj/item/weapon/cartridge/chemistry{pixel_y = 2},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/barber,/area/medical/cmo) +"bNd" = (/obj/machinery/computer/card/minor/cmo,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/barber,/area/medical/cmo) +"bNe" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_Toxins = 0},/turf/open/floor/plasteel/barber,/area/medical/cmo) +"bNf" = (/obj/structure/closet/secure_closet/CMO,/obj/machinery/light{dir = 4; icon_state = "tube1"},/turf/open/floor/plasteel/barber,/area/medical/cmo) +"bNg" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"},/turf/closed/wall/r_wall,/area/toxins/xenobiology) +"bNh" = (/obj/structure/disposaloutlet{dir = 1},/obj/structure/disposalpipe/trunk,/turf/open/floor/engine,/area/toxins/xenobiology) +"bNi" = (/obj/machinery/portable_atmospherics/canister/carbon_dioxide,/turf/open/floor/plasteel/bot,/area/toxins/storage) +"bNj" = (/obj/machinery/portable_atmospherics/canister/nitrous_oxide,/turf/open/floor/plasteel/bot,/area/toxins/storage) +"bNk" = (/obj/machinery/portable_atmospherics/canister/oxygen,/turf/open/floor/plasteel/bot,/area/toxins/storage) +"bNl" = (/obj/structure/sign/nosmoking_2{pixel_x = -32},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/white/side{dir = 5},/area/medical/research{name = "Research Division"}) +"bNm" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) +"bNn" = (/turf/open/floor/plasteel/warnwhite{dir = 10},/area/medical/research{name = "Research Division"}) +"bNo" = (/obj/item/device/assembly/prox_sensor{pixel_x = -4; pixel_y = 1},/obj/item/device/assembly/prox_sensor{pixel_x = 8; pixel_y = 9},/obj/item/device/assembly/prox_sensor{pixel_x = 9; pixel_y = -2},/obj/item/device/assembly/prox_sensor{pixel_x = 0; pixel_y = 2},/obj/structure/table/reinforced,/turf/open/floor/plasteel/white,/area/toxins/mixing) +"bNp" = (/obj/structure/chair/stool,/obj/effect/landmark/start{name = "Scientist"},/turf/open/floor/plasteel/white,/area/toxins/mixing) +"bNq" = (/obj/structure/table/reinforced,/obj/item/weapon/wrench,/obj/item/weapon/screwdriver{pixel_y = 10},/turf/open/floor/plasteel/white,/area/toxins/mixing) +"bNr" = (/obj/machinery/hologram/holopad,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/open/floor/plasteel/white,/area/toxins/mixing) +"bNs" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/toxins/mixing) +"bNt" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/door/firedoor/heavy,/obj/machinery/door/airlock/research{name = "Toxins Launch Room Access"; req_access_txt = "8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/toxins/mixing) +"bNu" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/warning{dir = 8},/area/toxins/mixing) +"bNv" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/toxins/mixing) +"bNw" = (/obj/machinery/atmospherics/pipe/manifold4w/scrubbers,/turf/open/floor/plasteel/warning{dir = 4},/area/toxins/mixing) +"bNx" = (/obj/machinery/door/airlock/research{name = "Toxins Launch Room"; req_access_txt = "8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/toxins/mixing) +"bNy" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/toxins/mixing) +"bNz" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_Toxins = 0},/turf/open/floor/plasteel/warning/corner{dir = 2},/area/toxins/mixing) +"bNA" = (/turf/open/floor/plasteel/warning{dir = 6},/area/toxins/mixing) +"bNB" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'BOMB RANGE"; name = "BOMB RANGE"},/turf/closed/wall,/area/toxins/test_area) +"bNC" = (/obj/structure/chair,/turf/open/floor/plating/airless/warnplate{dir = 9},/area/toxins/test_area) +"bND" = (/obj/item/device/flashlight/lamp,/turf/open/floor/plating/airless/warnplate{dir = 1},/area/toxins/test_area) +"bNE" = (/obj/structure/chair,/turf/open/floor/plating/airless/warnplate{dir = 5},/area/toxins/test_area) +"bNF" = (/obj/machinery/sleeper{icon_state = "sleeper-open"; dir = 8},/obj/effect/decal/remains/human,/turf/open/floor/plasteel/shuttle/white,/area/shuttle/abandoned) +"bNG" = (/obj/machinery/door/airlock/shuttle{name = "Mining Shuttle Airlock"; req_access_txt = "48"},/obj/docking_port/mobile{dir = 8; dwidth = 3; height = 5; id = "mining"; name = "mining shuttle"; travelDir = 90; width = 7},/obj/docking_port/stationary{dir = 8; dwidth = 3; height = 5; id = "mining_home"; name = "mining shuttle bay"; width = 7},/turf/open/floor/plating,/area/shuttle/labor) +"bNH" = (/obj/machinery/door/airlock/external{name = "Mining Dock Airlock"; req_access = null; req_access_txt = "48"},/turf/open/floor/plating,/area/quartermaster/miningdock) +"bNI" = (/obj/machinery/door/airlock/glass_mining{name = "Mining Dock"; req_access_txt = "48"},/turf/open/floor/plasteel,/area/quartermaster/miningdock) +"bNJ" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/quartermaster/miningdock) +"bNK" = (/obj/structure/table,/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/aft) +"bNL" = (/obj/structure/closet/firecloset,/turf/open/floor/plating,/area/maintenance/aft) +"bNM" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/weapon/circuitboard/computer/robotics{pixel_x = -2; pixel_y = 2},/obj/item/weapon/circuitboard/computer/mecha_control{pixel_x = 1; pixel_y = -1},/turf/open/floor/plasteel,/area/storage/tech) +"bNN" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel,/area/storage/tech) +"bNO" = (/obj/structure/sign/securearea,/turf/closed/wall/r_wall,/area/storage/tech) +"bNP" = (/obj/structure/table,/obj/item/weapon/stock_parts/subspace/analyzer,/obj/item/weapon/stock_parts/subspace/analyzer,/obj/item/weapon/stock_parts/subspace/analyzer,/turf/open/floor/plating,/area/storage/tech) +"bNQ" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/weapon/circuitboard/computer/cloning{pixel_x = 0},/obj/item/weapon/circuitboard/computer/med_data{pixel_x = 3; pixel_y = -3},/obj/item/weapon/circuitboard/machine/clonescanner,/obj/item/weapon/circuitboard/machine/clonepod,/obj/item/weapon/circuitboard/computer/scan_consolenew,/turf/open/floor/plating,/area/storage/tech) +"bNR" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/weapon/circuitboard/computer/secure_data{pixel_x = -2; pixel_y = 2},/obj/item/weapon/circuitboard/computer/security{pixel_x = 1; pixel_y = -1},/turf/open/floor/plating,/area/storage/tech) +"bNS" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/weapon/circuitboard/computer/powermonitor{pixel_x = -2; pixel_y = 2},/obj/item/weapon/circuitboard/computer/stationalert{pixel_x = 1; pixel_y = -1},/obj/item/weapon/circuitboard/computer/atmos_alert{pixel_x = 3; pixel_y = -3},/turf/open/floor/plating,/area/storage/tech) +"bNT" = (/obj/machinery/light_switch{pixel_x = 27},/turf/open/floor/plating,/area/storage/tech) +"bNU" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 8},/turf/open/floor/plasteel/caution/corner{dir = 8},/area/hallway/primary/aft) +"bNV" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/aft) +"bNW" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/yellow/corner{dir = 2},/area/hallway/primary/aft) +"bNX" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) +"bNY" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) +"bNZ" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/asmaint) +"bOa" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/asmaint) +"bOb" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) +"bOc" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) +"bOd" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/turf/open/floor/plating,/area/maintenance/asmaint) +"bOe" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/effect/landmark/event_spawn,/turf/open/floor/plating,/area/maintenance/asmaint) +"bOf" = (/obj/effect/landmark{name = "blobstart"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) +"bOg" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/asmaint) +"bOh" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/manifold4w/scrubbers,/turf/open/floor/plating,/area/maintenance/asmaint) +"bOi" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall/r_wall,/area/medical/sleeper) +"bOj" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/turf/closed/wall/r_wall,/area/medical/sleeper) +"bOk" = (/turf/closed/wall/r_wall,/area/medical/medbay) +"bOl" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/open/floor/plasteel/white,/area/medical/medbay) +"bOm" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/white,/area/medical/medbay) +"bOn" = (/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/shieldwallgen{req_access = list(55)},/turf/open/floor/plating,/area/toxins/xenobiology) +"bOo" = (/obj/structure/grille,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/door/poddoor/preopen{id = "misclab"; name = "test chamber blast door"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/engine,/area/toxins/xenobiology) +"bOp" = (/obj/structure/grille,/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/door/poddoor/preopen{id = "misclab"; name = "test chamber blast door"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/engine,/area/toxins/xenobiology) +"bOq" = (/obj/machinery/door/window/southleft{dir = 1; name = "Test Chamber"; req_access_txt = "55"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/door/poddoor/preopen{id = "misclab"; name = "test chamber blast door"},/turf/open/floor/engine,/area/toxins/xenobiology) +"bOr" = (/obj/structure/grille,/obj/structure/disposalpipe/segment,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/door/poddoor/preopen{id = "misclab"; name = "test chamber blast door"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/engine,/area/toxins/xenobiology) +"bOs" = (/obj/structure/grille,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/door/poddoor/preopen{id = "misclab"; name = "test chamber blast door"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/engine,/area/toxins/xenobiology) +"bOt" = (/turf/closed/wall,/area/toxins/xenobiology) +"bOu" = (/obj/machinery/portable_atmospherics/scrubber/huge,/turf/open/floor/plasteel/floorgrime,/area/toxins/storage) +"bOv" = (/obj/structure/extinguisher_cabinet{pixel_x = -27; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/white/side{dir = 5},/area/medical/research{name = "Research Division"}) +"bOw" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) +"bOx" = (/obj/machinery/vending/cigarette,/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) +"bOy" = (/obj/structure/closet/l3closet/scientist{pixel_x = -2},/turf/open/floor/plasteel/white,/area/toxins/mixing) +"bOz" = (/obj/structure/closet/wardrobe/science_white,/turf/open/floor/plasteel/white,/area/toxins/mixing) +"bOA" = (/obj/item/device/assembly/signaler{pixel_x = 0; pixel_y = 8},/obj/item/device/assembly/signaler{pixel_x = -8; pixel_y = 5},/obj/item/device/assembly/signaler{pixel_x = 6; pixel_y = 5},/obj/item/device/assembly/signaler{pixel_x = -2; pixel_y = -2},/obj/structure/table/reinforced,/turf/open/floor/plasteel/white,/area/toxins/mixing) +"bOB" = (/obj/item/device/transfer_valve{pixel_x = -5},/obj/item/device/transfer_valve{pixel_x = -5},/obj/item/device/transfer_valve{pixel_x = 0},/obj/item/device/transfer_valve{pixel_x = 0},/obj/item/device/transfer_valve{pixel_x = 5},/obj/item/device/transfer_valve{pixel_x = 5},/obj/machinery/requests_console{department = "Science"; departmentType = 2; name = "Science Requests Console"; pixel_x = 0; pixel_y = -30},/obj/structure/table/reinforced,/turf/open/floor/plasteel/white,/area/toxins/mixing) +"bOC" = (/obj/item/device/assembly/timer{pixel_x = 5; pixel_y = 4},/obj/item/device/assembly/timer{pixel_x = -4; pixel_y = 2},/obj/item/device/assembly/timer{pixel_x = 6; pixel_y = -4},/obj/item/device/assembly/timer{pixel_x = 0; pixel_y = 0},/obj/structure/table/reinforced,/turf/open/floor/plasteel/white,/area/toxins/mixing) +"bOD" = (/obj/structure/tank_dispenser,/turf/open/floor/plasteel/white,/area/toxins/mixing) +"bOE" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/white,/area/toxins/mixing) +"bOF" = (/obj/machinery/power/apc{dir = 4; name = "Toxins Lab APC"; pixel_x = 26; pixel_y = 0},/obj/structure/cable,/turf/open/floor/plasteel/white,/area/toxins/mixing) +"bOG" = (/turf/open/floor/plasteel/warning/corner{dir = 4},/area/toxins/mixing) +"bOH" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel,/area/toxins/mixing) +"bOI" = (/obj/machinery/camera{c_tag = "Toxins Launch Room Access"; dir = 1},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/warning/corner{dir = 8},/area/toxins/mixing) +"bOJ" = (/obj/machinery/door/window/southleft{name = "Mass Driver Door"; req_access_txt = "7"},/turf/open/floor/plasteel/loadingarea,/area/toxins/mixing) +"bOK" = (/turf/open/floor/plating/airless/warnplate{dir = 9},/area/toxins/test_area) +"bOL" = (/turf/open/floor/plating/airless,/area/toxins/test_area) +"bOM" = (/obj/structure/chair{dir = 8},/turf/open/floor/plating/airless/warnplate{dir = 5},/area/toxins/test_area) +"bON" = (/obj/item/weapon/ore/silver,/obj/item/weapon/ore/silver,/turf/open/floor/plasteel/warning{dir = 10},/area/quartermaster/miningdock) +"bOO" = (/obj/machinery/camera{c_tag = "Mining Dock External"; dir = 8},/obj/structure/reagent_dispensers/fueltank,/turf/open/floor/plasteel/warning,/area/quartermaster/miningdock) +"bOP" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 0},/turf/closed/wall,/area/quartermaster/miningdock) +"bOQ" = (/obj/structure/closet/emcloset,/turf/open/floor/plasteel/brown{dir = 10},/area/quartermaster/miningdock) +"bOR" = (/obj/structure/rack{dir = 1},/obj/item/weapon/storage/toolbox/mechanical{pixel_x = -2; pixel_y = -1},/obj/item/weapon/pickaxe{pixel_x = 5},/obj/item/weapon/shovel{pixel_x = -5},/turf/open/floor/plasteel,/area/quartermaster/miningdock) +"bOS" = (/obj/structure/closet/crate,/turf/open/floor/plasteel,/area/quartermaster/miningdock) +"bOT" = (/obj/machinery/light,/turf/open/floor/plasteel,/area/quartermaster/miningdock) +"bOU" = (/obj/machinery/mineral/equipment_vendor,/turf/open/floor/plasteel,/area/quartermaster/miningdock) +"bOV" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall,/area/maintenance/aft) +"bOW" = (/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/cable,/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/storage/tech) +"bOX" = (/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/grille,/obj/structure/cable,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/storage/tech) +"bOY" = (/obj/structure/table,/obj/item/weapon/stock_parts/micro_laser,/obj/item/weapon/stock_parts/manipulator,/obj/item/weapon/stock_parts/manipulator,/obj/item/weapon/stock_parts/manipulator,/obj/item/weapon/stock_parts/manipulator,/obj/item/weapon/stock_parts/capacitor,/obj/item/weapon/stock_parts/micro_laser/high,/obj/item/weapon/stock_parts/micro_laser/high,/obj/item/weapon/stock_parts/micro_laser/high,/obj/item/weapon/stock_parts/micro_laser/high,/turf/open/floor/plating,/area/storage/tech) +"bOZ" = (/obj/structure/table,/obj/item/weapon/stock_parts/subspace/amplifier,/obj/item/weapon/stock_parts/subspace/amplifier,/obj/item/weapon/stock_parts/subspace/amplifier,/turf/open/floor/plating,/area/storage/tech) +"bPa" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/plating,/area/storage/tech) +"bPb" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/storage/tech) +"bPc" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/closed/wall,/area/storage/tech) +"bPd" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/caution/corner{dir = 8},/area/hallway/primary/aft) +"bPe" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/open/floor/plasteel,/area/hallway/primary/aft) +"bPf" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden,/turf/open/floor/plasteel/yellow/corner{dir = 2},/area/hallway/primary/aft) +"bPg" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/closed/wall,/area/maintenance/asmaint) +"bPh" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/closed/wall/r_wall,/area/maintenance/asmaint) +"bPi" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/closed/wall/r_wall,/area/maintenance/asmaint) +"bPj" = (/obj/structure/closet,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) +"bPk" = (/obj/structure/reagent_dispensers/watertank,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) +"bPl" = (/obj/structure/reagent_dispensers/fueltank,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) +"bPm" = (/obj/machinery/meter,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) +"bPn" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/asmaint) +"bPo" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/open/floor/plating,/area/maintenance/asmaint) +"bPp" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/sign/securearea{pixel_x = 0; pixel_y = -32},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) +"bPq" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/open/floor/plating,/area/maintenance/asmaint) +"bPr" = (/obj/structure/disposalpipe/sortjunction{dir = 8; icon_state = "pipe-j1s"; sortType = 11},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) +"bPs" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/open/floor/plating,/area/maintenance/asmaint) +"bPt" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/open/floor/plating,/area/maintenance/asmaint) +"bPu" = (/obj/effect/decal/cleanable/cobweb2,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/power/apc{dir = 4; name = "Medbay APC"; pixel_x = 24; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/medical/medbay) +"bPv" = (/obj/machinery/vending/wallmed{pixel_y = 28},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/plasteel/white,/area/medical/medbay) +"bPw" = (/obj/machinery/door/airlock/medical{name = "Patient Room 2"; req_access_txt = "5"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/medbay) +"bPx" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/open/floor/plasteel/white,/area/medical/medbay) +"bPy" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/closed/wall,/area/medical/medbay) +"bPz" = (/obj/structure/rack{dir = 1},/obj/effect/spawner/lootdrop/maintenance{lootcount = 2; name = "2maintenance loot spawner"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) +"bPA" = (/obj/machinery/power/apc{dir = 1; name = "CM Office APC"; pixel_y = 24},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/medical/cmo) +"bPB" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) +"bPC" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/mob/living/simple_animal/mouse,/turf/open/floor/plating,/area/maintenance/asmaint) +"bPD" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) +"bPE" = (/obj/item/weapon/wrench,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/warning{dir = 2},/area/toxins/xenobiology) +"bPF" = (/obj/machinery/computer/security/telescreen{name = "Test Chamber Moniter"; network = list("Xeno"); pixel_x = 0; pixel_y = 2},/obj/structure/table/reinforced,/turf/open/floor/plasteel/warning{dir = 2},/area/toxins/xenobiology) +"bPG" = (/obj/machinery/button/door{id = "misclab"; name = "Test Chamber Blast Doors"; pixel_x = 0; pixel_y = -2; req_access_txt = "55"},/obj/structure/table/reinforced,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plasteel/warning{dir = 6},/area/toxins/xenobiology) +"bPH" = (/obj/machinery/door/window/southleft{name = "Test Chamber"; req_access_txt = "55"},/turf/open/floor/plasteel/warning{dir = 2},/area/toxins/xenobiology) +"bPI" = (/obj/machinery/disposal/bin,/obj/structure/disposalpipe/trunk{dir = 1},/obj/structure/window/reinforced{dir = 8},/turf/open/floor/plasteel/warning{dir = 10},/area/toxins/xenobiology) +"bPJ" = (/obj/item/clothing/mask/gas,/obj/item/clothing/mask/gas,/obj/item/clothing/mask/gas,/obj/item/clothing/glasses/science,/obj/item/clothing/glasses/science,/obj/structure/table,/turf/open/floor/plasteel/warning{dir = 2},/area/toxins/xenobiology) +"bPK" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/warning{dir = 2},/area/toxins/xenobiology) +"bPL" = (/obj/structure/sign/biohazard,/turf/closed/wall,/area/toxins/xenobiology) +"bPM" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/obj/machinery/door/firedoor/heavy,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/white/side{dir = 5},/area/medical/research{name = "Research Division"}) +"bPN" = (/obj/structure/disposalpipe/segment,/obj/machinery/door/firedoor/heavy,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) +"bPO" = (/obj/machinery/camera{c_tag = "Research Division South"; dir = 8; network = list("SS13")},/obj/machinery/door/firedoor/heavy,/turf/open/floor/plasteel/white/side{dir = 9},/area/medical/research{name = "Research Division"}) +"bPP" = (/obj/structure/sign/fire,/turf/closed/wall,/area/medical/research{name = "Research Division"}) +"bPQ" = (/obj/structure/sign/nosmoking_2{pixel_x = -32},/turf/open/floor/plasteel/white,/area/toxins/mixing) +"bPR" = (/obj/structure/closet/wardrobe/grey,/turf/open/floor/plating,/area/toxins/mixing) +"bPS" = (/obj/machinery/mass_driver{dir = 4; id = "toxinsdriver"},/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 0; pixel_y = -32},/turf/open/floor/plating,/area/toxins/mixing) +"bPT" = (/obj/machinery/door/poddoor{id = "toxinsdriver"; name = "toxins launcher bay door"},/turf/open/floor/plating,/area/toxins/mixing) +"bPU" = (/turf/open/floor/plating/airless/warnplate{dir = 8},/area/toxins/test_area) +"bPV" = (/turf/open/floor/plating/airless/warnplate{dir = 4},/area/toxins/test_area) +"bPW" = (/obj/item/device/radio/beacon,/turf/open/floor/plating/airless,/area/toxins/test_area) +"bPX" = (/obj/machinery/camera{active_power_usage = 0; c_tag = "Bomb Test Site"; desc = "A specially-reinforced camera with a long lasting battery, used to monitor the bomb testing site."; dir = 8; invuln = 1; light = null; name = "Hardened Bomb-Test Camera"; network = list("Toxins"); use_power = 0},/obj/item/target/alien{anchored = 1},/turf/open/floor/plating/warnplate{dir = 4; luminosity = 2; initial_gas_mix = "o2=0.01;n2=0.01"},/area/toxins/test_area) +"bPY" = (/turf/closed/indestructible{desc = "A wall impregnated with Fixium, able to withstand massive explosions with ease"; icon_state = "riveted"; name = "hyper-reinforced wall"},/area/toxins/test_area) +"bPZ" = (/obj/structure/shuttle/engine/heater,/turf/open/floor/plating,/area/shuttle/labor) +"bQa" = (/obj/structure/ore_box,/turf/open/floor/plasteel/shuttle,/area/shuttle/labor) +"bQb" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/aft) +"bQc" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/maintenance/aft) +"bQd" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/aft) +"bQe" = (/obj/structure/table,/obj/item/weapon/stock_parts/subspace/transmitter,/obj/item/weapon/stock_parts/subspace/transmitter,/obj/item/weapon/stock_parts/subspace/treatment,/obj/item/weapon/stock_parts/subspace/treatment,/obj/item/weapon/stock_parts/subspace/treatment,/turf/open/floor/plating,/area/storage/tech) +"bQf" = (/obj/structure/table,/obj/item/weapon/stock_parts/subspace/filter,/obj/item/weapon/stock_parts/subspace/filter,/obj/item/weapon/stock_parts/subspace/filter,/obj/item/weapon/stock_parts/subspace/filter,/obj/item/weapon/stock_parts/subspace/filter,/obj/machinery/light/small,/turf/open/floor/plating,/area/storage/tech) +"bQg" = (/obj/structure/table,/obj/item/weapon/stock_parts/subspace/ansible,/obj/item/weapon/stock_parts/subspace/ansible,/obj/item/weapon/stock_parts/subspace/ansible,/obj/item/weapon/stock_parts/subspace/crystal,/obj/item/weapon/stock_parts/subspace/crystal,/obj/item/weapon/stock_parts/subspace/crystal,/turf/open/floor/plating,/area/storage/tech) +"bQh" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/weapon/storage/toolbox/electrical{pixel_x = 1; pixel_y = -1},/obj/item/clothing/gloves/color/yellow,/obj/item/device/t_scanner,/obj/item/device/multitool,/turf/open/floor/plating,/area/storage/tech) +"bQi" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/weapon/storage/toolbox/electrical{pixel_x = 1; pixel_y = -1},/obj/item/device/multitool,/obj/item/clothing/glasses/meson,/obj/machinery/light/small,/turf/open/floor/plating,/area/storage/tech) +"bQj" = (/obj/machinery/requests_console{department = "Tech storage"; pixel_x = 0; pixel_y = -32},/turf/open/floor/plating,/area/storage/tech) +"bQk" = (/obj/machinery/vending/assist,/turf/open/floor/plating,/area/storage/tech) +"bQl" = (/obj/structure/disposalpipe/segment,/obj/machinery/camera{c_tag = "Aft Primary Hallway 2"; dir = 4; network = list("SS13")},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/caution/corner{dir = 8},/area/hallway/primary/aft) +"bQm" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/hallway/primary/aft) +"bQn" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; external_pressure_bound = 101.325; on = 1; pressure_checks = 1},/turf/open/floor/plasteel,/area/hallway/primary/aft) +"bQo" = (/obj/structure/closet/emcloset,/turf/open/floor/plasteel/caution{dir = 5},/area/hallway/primary/aft) +"bQp" = (/turf/closed/wall/r_wall,/area/atmos) +"bQq" = (/obj/machinery/portable_atmospherics/canister/air,/turf/open/floor/plasteel/bot,/area/atmos) +"bQr" = (/obj/machinery/portable_atmospherics/canister/oxygen,/turf/open/floor/plasteel/bot,/area/atmos) +"bQs" = (/obj/machinery/portable_atmospherics/canister/nitrogen,/turf/open/floor/plasteel/bot,/area/atmos) +"bQt" = (/obj/machinery/portable_atmospherics/canister/nitrous_oxide,/turf/open/floor/plasteel/bot,/area/atmos) +"bQu" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall/r_wall,/area/atmos) +"bQv" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/door/firedoor/heavy,/obj/machinery/door/airlock/maintenance{name = "Atmospherics Maintenance"; req_access_txt = "24"},/turf/open/floor/plating,/area/atmos) +"bQw" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/visible,/turf/closed/wall/r_wall,/area/atmos) +"bQx" = (/obj/machinery/atmospherics/pipe/simple/supply/visible,/turf/closed/wall/r_wall,/area/atmos) +"bQy" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/asmaint) +"bQz" = (/obj/structure/table,/obj/item/weapon/folder/white,/obj/item/clothing/tie/stethoscope,/obj/machinery/light/small{dir = 8},/turf/open/floor/plasteel/white,/area/medical/medbay) +"bQA" = (/obj/structure/chair/office/light{dir = 8},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/white,/area/medical/medbay) +"bQB" = (/obj/structure/closet/secure_closet/personal/patient,/obj/machinery/button/door{id = "medpriv1"; name = "Privacy Shutters"; pixel_y = -25},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/medbay) +"bQC" = (/obj/structure/grille,/obj/machinery/door/poddoor/preopen{id = "medpriv1"; name = "privacy door"},/obj/structure/window/fulltile,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/medical/medbay) +"bQD" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/manifold4w/scrubbers,/turf/open/floor/plasteel/white,/area/medical/medbay) +"bQE" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/medbay) +"bQF" = (/obj/machinery/door/airlock/maintenance{name = "Medbay Maintenance"; req_access_txt = "5"},/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/medical/medbay) +"bQG" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) +"bQH" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) +"bQI" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) +"bQJ" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/junction,/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/asmaint) +"bQK" = (/obj/machinery/power/apc{dir = 8; name = "Xenobiology APC"; pixel_x = -25},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/structure/cable,/turf/open/floor/plasteel/white,/area/toxins/xenobiology) +"bQL" = (/turf/open/floor/plasteel/white,/area/toxins/xenobiology) +"bQM" = (/obj/structure/chair/stool,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plasteel/white,/area/toxins/xenobiology) +"bQN" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plasteel/white,/area/toxins/xenobiology) +"bQO" = (/obj/machinery/monkey_recycler,/obj/machinery/firealarm{dir = 2; pixel_y = 24},/turf/open/floor/plasteel/white,/area/toxins/xenobiology) +"bQP" = (/obj/machinery/processor{desc = "A machine used to process slimes and retrieve their extract."; name = "Slime Processor"},/turf/open/floor/plasteel/white,/area/toxins/xenobiology) +"bQQ" = (/obj/machinery/smartfridge/extract,/turf/open/floor/plasteel/white,/area/toxins/xenobiology) +"bQR" = (/obj/structure/table,/obj/machinery/reagentgrinder,/obj/machinery/airalarm{frequency = 1439; pixel_y = 23},/turf/open/floor/plasteel/white,/area/toxins/xenobiology) +"bQS" = (/obj/structure/closet/l3closet/scientist,/turf/open/floor/plasteel/white,/area/toxins/xenobiology) +"bQT" = (/obj/structure/closet/l3closet/scientist,/obj/machinery/light_switch{pixel_x = 0; pixel_y = 28},/turf/open/floor/plasteel/white,/area/toxins/xenobiology) +"bQU" = (/obj/structure/grille,/obj/structure/window/fulltile,/turf/open/floor/plating,/area/toxins/xenobiology) +"bQV" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/white/side{dir = 5},/area/medical/research{name = "Research Division"}) +"bQW" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/medical/research{name = "Research Division"}) +"bQX" = (/obj/machinery/door/poddoor{id = "mixvent"; name = "Mixer Room Vent"},/turf/open/floor/engine/vacuum,/area/toxins/mixing) +"bQY" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 0; pixel_y = 32},/turf/open/floor/engine/vacuum,/area/toxins/mixing) +"bQZ" = (/obj/machinery/sparker{dir = 2; id = "mixingsparker"; pixel_x = 25},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; external_pressure_bound = 0; initialize_directions = 1; internal_pressure_bound = 4000; on = 1; pressure_checks = 2; pump_direction = 0},/turf/open/floor/engine/vacuum,/area/toxins/mixing) +"bRa" = (/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 4},/turf/closed/wall/r_wall,/area/toxins/mixing) +"bRb" = (/obj/machinery/airlock_sensor{id_tag = "tox_airlock_sensor"; master_tag = "tox_airlock_control"; pixel_y = 24},/obj/machinery/atmospherics/components/binary/pump{dir = 4; on = 1},/turf/open/floor/engine,/area/toxins/mixing) +"bRc" = (/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 4},/obj/machinery/meter,/obj/machinery/embedded_controller/radio/airlock_controller{airpump_tag = "tox_airlock_pump"; exterior_door_tag = "tox_airlock_exterior"; id_tag = "tox_airlock_control"; interior_door_tag = "tox_airlock_interior"; pixel_x = -24; pixel_y = 0; sanitize_external = 1; sensor_tag = "tox_airlock_sensor"},/turf/open/floor/plasteel/warnwhite/corner{dir = 1},/area/toxins/mixing) +"bRd" = (/obj/machinery/atmospherics/components/binary/valve{dir = 4; name = "mix to port"},/turf/open/floor/plasteel/warnwhite{dir = 4},/area/toxins/mixing) +"bRe" = (/obj/machinery/atmospherics/components/unary/portables_connector/visible{dir = 8},/turf/open/floor/plasteel/warning{dir = 5},/area/toxins/mixing) +"bRf" = (/obj/structure/reagent_dispensers/fueltank,/turf/open/floor/plating,/area/maintenance/asmaint2) +"bRg" = (/obj/effect/decal/cleanable/cobweb2,/obj/effect/spawner/lootdrop/maintenance,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/asmaint2) +"bRh" = (/turf/open/floor/plating,/area/toxins/mixing) +"bRi" = (/turf/open/floor/plating/airless/warnplate{dir = 10},/area/toxins/test_area) +"bRj" = (/obj/structure/chair{dir = 8},/turf/open/floor/plating/airless/warnplate{dir = 6},/area/toxins/test_area) +"bRk" = (/obj/structure/shuttle/engine/propulsion/burst,/obj/structure/window/reinforced{dir = 1; layer = 2.9},/turf/open/floor/plating/airless,/area/shuttle/labor) +"bRl" = (/obj/structure/disposalpipe/segment,/obj/machinery/status_display{density = 0; layer = 3; pixel_x = -32; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/caution/corner{dir = 8},/area/hallway/primary/aft) +"bRm" = (/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel,/area/hallway/primary/aft) +"bRn" = (/turf/open/floor/plasteel/caution{dir = 4},/area/hallway/primary/aft) +"bRo" = (/turf/closed/wall,/area/atmos) +"bRp" = (/obj/machinery/atmospherics/components/unary/portables_connector/visible{dir = 4},/obj/machinery/portable_atmospherics/canister/air,/turf/open/floor/plasteel,/area/atmos) +"bRq" = (/obj/machinery/atmospherics/components/trinary/filter{dir = 4},/turf/open/floor/plasteel,/area/atmos) +"bRr" = (/obj/machinery/atmospherics/components/unary/portables_connector/visible{dir = 8},/obj/machinery/airalarm{pixel_y = 23},/turf/open/floor/plasteel,/area/atmos) +"bRs" = (/obj/machinery/firealarm{dir = 2; pixel_y = 24},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/atmos) +"bRt" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/atmos) +"bRu" = (/obj/machinery/pipedispenser,/turf/open/floor/plasteel,/area/atmos) +"bRv" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/atmos) +"bRw" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/visible{dir = 8},/obj/machinery/light{dir = 1},/obj/machinery/meter{frequency = 1441; id_tag = "waste_meter"; name = "Waste Loop"},/turf/open/floor/plasteel,/area/atmos) +"bRx" = (/obj/machinery/camera{c_tag = "Atmospherics North East"},/obj/machinery/atmospherics/components/binary/pump{dir = 8; name = "Distro to Waste"; on = 0},/turf/open/floor/plasteel,/area/atmos) +"bRy" = (/obj/machinery/atmospherics/pipe/manifold/supply/visible{dir = 2},/obj/machinery/meter{frequency = 1441; id_tag = "distro_meter"; name = "Distribution Loop"},/turf/open/floor/plasteel,/area/atmos) +"bRz" = (/obj/machinery/atmospherics/pipe/manifold/supply/visible{dir = 1},/turf/open/floor/plasteel,/area/atmos) +"bRA" = (/obj/machinery/atmospherics/components/binary/pump{dir = 8; name = "Air to Distro"; on = 1},/turf/open/floor/plasteel,/area/atmos) +"bRB" = (/obj/machinery/atmospherics/pipe/simple/cyan/visible{dir = 10; initialize_directions = 10},/turf/open/floor/plasteel,/area/atmos) +"bRC" = (/obj/machinery/atmospherics/pipe/simple/yellow/visible{dir = 6},/turf/open/floor/plasteel,/area/atmos) +"bRD" = (/obj/machinery/atmospherics/pipe/simple/yellow/visible{dir = 4},/turf/closed/wall/r_wall,/area/atmos) +"bRE" = (/obj/structure/lattice,/obj/machinery/atmospherics/pipe/simple/yellow/visible{dir = 4},/turf/open/space,/area/space/nearstation) +"bRF" = (/obj/structure/lattice,/obj/machinery/atmospherics/pipe/simple/yellow/visible{dir = 4},/turf/open/space,/area/space) +"bRG" = (/obj/structure/lattice,/obj/machinery/atmospherics/pipe/simple/yellow/visible{icon_state = "intact"; dir = 10},/turf/open/space,/area/space/nearstation) +"bRH" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall/r_wall,/area/medical/virology) +"bRI" = (/turf/closed/wall/r_wall,/area/medical/virology) +"bRJ" = (/turf/closed/wall,/area/medical/virology) +"bRK" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/doorButtons/access_button{idDoor = "virology_airlock_exterior"; idSelf = "virology_airlock_control"; name = "Virology Access Button"; pixel_x = -24; pixel_y = 0; req_access_txt = "39"},/obj/machinery/door/firedoor,/obj/machinery/door/airlock/virology{autoclose = 0; frequency = 1449; icon_state = "door_locked"; id_tag = "virology_airlock_exterior"; locked = 1; name = "Virology Exterior Airlock"; req_access_txt = "39"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/white,/area/medical/virology) +"bRL" = (/obj/structure/sign/biohazard,/turf/closed/wall,/area/medical/virology) +"bRM" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/disposalpipe/sortjunction{dir = 2; icon_state = "pipe-j2s"; sortType = 13},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/open/floor/plating,/area/maintenance/asmaint) +"bRN" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/door/airlock/maintenance{name = "Xenobiology Maintenance"; req_access_txt = "55"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/toxins/xenobiology) +"bRO" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/toxins/xenobiology) +"bRP" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/toxins/xenobiology) +"bRQ" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/toxins/xenobiology) +"bRR" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/white,/area/toxins/xenobiology) +"bRS" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/toxins/xenobiology) +"bRT" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/toxins/xenobiology) +"bRU" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/open/floor/plasteel/white,/area/toxins/xenobiology) +"bRV" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/research{name = "Xenobiology Lab"; req_access_txt = "55"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/toxins/xenobiology) +"bRW" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/open/floor/plasteel/white/side{dir = 5},/area/medical/research{name = "Research Division"}) +"bRX" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) +"bRY" = (/turf/open/floor/engine/vacuum,/area/toxins/mixing) +"bRZ" = (/obj/effect/landmark/event_spawn,/turf/open/floor/engine/vacuum,/area/toxins/mixing) +"bSa" = (/obj/machinery/door/airlock/glass_research{autoclose = 0; frequency = 1449; glass = 1; heat_proof = 1; icon_state = "door_locked"; id_tag = "tox_airlock_exterior"; locked = 1; name = "Mixing Room Exterior Airlock"; req_access_txt = "8"},/turf/open/floor/engine,/area/toxins/mixing) +"bSb" = (/obj/machinery/atmospherics/components/binary/dp_vent_pump/high_volume{dir = 2; frequency = 1449; id = "tox_airlock_pump"},/turf/open/floor/engine,/area/toxins/mixing) +"bSc" = (/obj/machinery/door/airlock/glass_research{autoclose = 0; frequency = 1449; glass = 1; heat_proof = 1; icon_state = "door_locked"; id_tag = "tox_airlock_interior"; locked = 1; name = "Mixing Room Interior Airlock"; req_access_txt = "8"},/turf/open/floor/engine,/area/toxins/mixing) +"bSd" = (/turf/open/floor/plasteel/warnwhite{dir = 8},/area/toxins/mixing) +"bSe" = (/turf/open/floor/plasteel/warnwhite{dir = 4},/area/toxins/mixing) +"bSf" = (/obj/structure/extinguisher_cabinet{pixel_x = 27; pixel_y = 0},/obj/machinery/camera{c_tag = "Toxins Lab East"; dir = 8; network = list("SS13","RD"); pixel_y = -22},/turf/open/floor/plasteel/warning{dir = 4},/area/toxins/mixing) +"bSg" = (/obj/structure/reagent_dispensers/watertank,/turf/open/floor/plating,/area/maintenance/asmaint2) +"bSh" = (/obj/structure/rack,/obj/effect/spawner/lootdrop/maintenance{lootcount = 2; name = "2maintenance loot spawner"},/turf/open/floor/plating,/area/maintenance/asmaint2) +"bSi" = (/obj/structure/chair{dir = 1},/turf/open/floor/plating/airless/warnplate{dir = 10},/area/toxins/test_area) +"bSj" = (/obj/item/device/flashlight/lamp,/turf/open/floor/plating/airless/warnplate{dir = 2},/area/toxins/test_area) +"bSk" = (/obj/structure/chair{dir = 1},/turf/open/floor/plating/airless/warnplate{dir = 6},/area/toxins/test_area) +"bSl" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/toxins/test_area) +"bSm" = (/turf/closed/wall,/area/construction) +"bSn" = (/obj/structure/closet/crate,/turf/open/floor/plating,/area/construction) +"bSo" = (/turf/open/floor/plating,/area/construction) +"bSp" = (/obj/machinery/airalarm{frequency = 1439; pixel_y = 23},/turf/open/floor/plating,/area/construction) +"bSq" = (/turf/open/floor/plasteel,/area/construction) +"bSr" = (/obj/structure/closet/toolcloset,/turf/open/floor/plasteel,/area/construction) +"bSs" = (/turf/open/floor/plasteel/caution{dir = 6},/area/hallway/primary/aft) +"bSt" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/item/device/radio/intercom{freerange = 0; frequency = 1459; name = "Station Intercom (General)"; pixel_x = -30},/obj/machinery/portable_atmospherics/canister/bz,/turf/open/floor/plasteel,/area/atmos) +"bSu" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/portable_atmospherics/canister/bz,/turf/open/floor/plasteel,/area/atmos) +"bSv" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel,/area/atmos) +"bSw" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/atmos) +"bSx" = (/obj/machinery/disposal/bin,/obj/structure/disposalpipe/trunk{dir = 8},/obj/machinery/airalarm{pixel_y = 23},/obj/machinery/camera{c_tag = "Atmospherics Monitoring"; dir = 2; network = list("SS13")},/obj/machinery/light{dir = 4; icon_state = "tube1"},/turf/open/floor/plasteel/caution{dir = 5},/area/atmos) +"bSy" = (/obj/machinery/camera{c_tag = "Atmospherics North West"; dir = 4; network = list("SS13")},/obj/machinery/light{dir = 8},/turf/open/floor/plasteel,/area/atmos) +"bSz" = (/obj/machinery/atmospherics/components/unary/portables_connector/visible{dir = 1},/turf/open/floor/plasteel,/area/atmos) +"bSA" = (/turf/open/floor/plasteel,/area/atmos) +"bSB" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/plasteel,/area/atmos) +"bSC" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden,/turf/open/floor/plasteel,/area/atmos) +"bSD" = (/obj/machinery/pipedispenser/disposal,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/atmos) +"bSE" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/atmos) +"bSF" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/visible,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/atmos) +"bSG" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/plasteel,/area/atmos) +"bSH" = (/obj/machinery/atmospherics/components/binary/pump{dir = 1; name = "Mix to Distro"; on = 0},/turf/open/floor/plasteel,/area/atmos) +"bSI" = (/obj/machinery/atmospherics/pipe/manifold/cyan/visible{dir = 8; initialize_directions = 11},/obj/machinery/meter,/turf/open/floor/plasteel,/area/atmos) +"bSJ" = (/obj/machinery/atmospherics/pipe/simple/cyan/visible{dir = 4},/obj/machinery/atmospherics/components/binary/pump{dir = 1; name = "Mix to Incinerator"; on = 0},/turf/open/floor/plasteel,/area/atmos) +"bSK" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/cyan/visible{dir = 10; initialize_directions = 10},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/atmos) +"bSL" = (/obj/structure/grille,/turf/closed/wall/r_wall,/area/atmos) +"bSM" = (/obj/structure/lattice,/obj/machinery/atmospherics/pipe/simple/yellow/visible,/turf/open/space,/area/space/nearstation) +"bSN" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 8},/turf/closed/wall/r_wall,/area/medical/virology) +"bSO" = (/obj/structure/closet/crate/freezer,/obj/item/weapon/reagent_containers/blood/empty,/obj/item/weapon/reagent_containers/blood/empty{pixel_x = -3; pixel_y = -3},/obj/item/weapon/reagent_containers/blood/AMinus,/obj/item/weapon/reagent_containers/blood/BMinus{pixel_x = -4; pixel_y = 4},/obj/item/weapon/reagent_containers/blood/BPlus{pixel_x = 1; pixel_y = 2},/obj/item/weapon/reagent_containers/blood/OMinus,/obj/item/weapon/reagent_containers/blood/OPlus{pixel_x = -2; pixel_y = -1},/obj/item/weapon/reagent_containers/blood/random,/obj/item/weapon/reagent_containers/blood/random,/obj/item/weapon/reagent_containers/blood/random,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/virology) +"bSP" = (/obj/item/weapon/storage/secure/safe{pixel_x = 5; pixel_y = 29},/obj/machinery/camera{c_tag = "Virology Break Room"},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/white,/area/medical/virology) +"bSQ" = (/obj/machinery/light{dir = 1},/obj/machinery/airalarm{frequency = 1439; pixel_y = 23},/turf/open/floor/plasteel/white,/area/medical/virology) +"bSR" = (/obj/item/weapon/bedsheet,/obj/structure/bed,/turf/open/floor/plasteel/white,/area/medical/virology) +"bSS" = (/obj/structure/sink{icon_state = "sink"; dir = 8; pixel_x = -12; pixel_y = 2},/turf/open/floor/plasteel/warnwhite{dir = 9},/area/medical/virology) +"bST" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/white,/area/medical/virology) +"bSU" = (/obj/structure/closet/emcloset,/obj/machinery/camera{c_tag = "Virology Airlock"; dir = 2; network = list("SS13")},/turf/open/floor/plasteel/warnwhite{dir = 5},/area/medical/virology) +"bSV" = (/turf/open/floor/plasteel/white,/area/medical/virology) +"bSW" = (/mob/living/carbon/monkey,/turf/open/floor/plasteel/white,/area/medical/virology) +"bSX" = (/obj/machinery/light/small{dir = 1},/turf/open/floor/plasteel/white,/area/medical/virology) +"bSY" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/sign/securearea{pixel_x = 32},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) +"bSZ" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall/r_wall,/area/toxins/xenobiology) +"bTa" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/toxins/xenobiology) +"bTb" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/chair/comfy/black,/turf/open/floor/plasteel/white,/area/toxins/xenobiology) +"bTc" = (/obj/effect/landmark/start{name = "Scientist"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/chair/comfy/black,/turf/open/floor/plasteel/white,/area/toxins/xenobiology) +"bTd" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,/turf/open/floor/plasteel/white,/area/toxins/xenobiology) +"bTe" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/hologram/holopad,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/toxins/xenobiology) +"bTf" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; external_pressure_bound = 101.325; on = 1; pressure_checks = 1},/turf/open/floor/plasteel/white,/area/toxins/xenobiology) +"bTg" = (/obj/structure/chair/stool,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/toxins/xenobiology) +"bTh" = (/obj/structure/grille,/obj/structure/window/fulltile,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/toxins/xenobiology) +"bTi" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white/side{dir = 1},/area/medical/research{name = "Research Division"}) +"bTj" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/turf/open/floor/plasteel/white/side{dir = 1},/area/medical/research{name = "Research Division"}) +"bTk" = (/turf/open/floor/plasteel/white/side{dir = 1},/area/medical/research{name = "Research Division"}) +"bTl" = (/obj/machinery/sparker{dir = 2; id = "mixingsparker"; pixel_x = 25},/obj/machinery/atmospherics/components/unary/outlet_injector/on{dir = 4; frequency = 1441; id = "air_in"},/turf/open/floor/engine/vacuum,/area/toxins/mixing) +"bTm" = (/obj/structure/sign/fire{pixel_y = -32},/obj/machinery/atmospherics/components/binary/pump{dir = 8; on = 1},/turf/open/floor/engine,/area/toxins/mixing) +"bTn" = (/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 4},/obj/machinery/meter,/obj/machinery/button/door{id = "mixvent"; name = "Mixing Room Vent Control"; pixel_x = -25; pixel_y = 5; req_access_txt = "7"},/obj/machinery/button/ignition{id = "mixingsparker"; pixel_x = -25; pixel_y = -5},/turf/open/floor/plasteel/warnwhite/corner{dir = 4},/area/toxins/mixing) +"bTo" = (/obj/machinery/light,/obj/machinery/atmospherics/components/binary/valve{dir = 4; name = "port to mix"},/turf/open/floor/plasteel/warnwhite{dir = 4},/area/toxins/mixing) +"bTp" = (/obj/machinery/atmospherics/components/unary/portables_connector/visible{dir = 8},/turf/open/floor/plasteel/warning{dir = 6},/area/toxins/mixing) +"bTq" = (/obj/structure/closet/toolcloset,/turf/open/floor/plating,/area/maintenance/asmaint2) +"bTr" = (/obj/item/target,/obj/structure/window/reinforced{dir = 1},/turf/open/floor/plating/warnplate,/area/toxins/test_area) +"bTs" = (/obj/structure/barricade/wooden,/obj/structure/girder,/turf/open/floor/plating,/area/maintenance/aft) +"bTt" = (/obj/machinery/light_construct{dir = 8},/turf/open/floor/plating,/area/construction) +"bTu" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plating,/area/construction) +"bTv" = (/obj/machinery/light_construct{dir = 4},/turf/open/floor/plasteel,/area/construction) +"bTw" = (/obj/structure/disposalpipe/segment,/obj/structure/extinguisher_cabinet{pixel_x = -27; pixel_y = 1},/obj/machinery/light{dir = 8},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/caution/corner{dir = 8},/area/hallway/primary/aft) +"bTx" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/turf/open/floor/plasteel,/area/hallway/primary/aft) +"bTy" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel/loadingarea{dir = 8},/area/hallway/primary/aft) +"bTz" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/plasticflaps{opacity = 1},/obj/machinery/navbeacon{codes_txt = "delivery;dir=4"; dir = 4; freq = 1400; location = "Atmospherics"},/turf/open/floor/plasteel/delivery{name = "floor"},/area/atmos) +"bTA" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/open/floor/plasteel/loadingarea{dir = 4},/area/atmos) +"bTB" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/atmos) +"bTC" = (/obj/machinery/hologram/holopad,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/atmos) +"bTD" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,/turf/open/floor/plasteel,/area/atmos) +"bTE" = (/obj/machinery/computer/atmos_control,/obj/machinery/requests_console{department = "Atmospherics"; departmentType = 4; name = "Atmos RC"; pixel_x = 30; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/caution{dir = 4},/area/atmos) +"bTF" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall,/area/atmos) +"bTG" = (/obj/machinery/atmospherics/pipe/manifold4w/scrubbers,/turf/open/floor/plasteel,/area/atmos) +"bTH" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/atmos) +"bTI" = (/obj/machinery/pipedispenser/disposal/transit_tube,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/atmos) +"bTJ" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/atmos) +"bTK" = (/obj/machinery/atmospherics/components/binary/pump{dir = 0; name = "Waste In"; on = 1},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/atmos) +"bTL" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/atmos) +"bTM" = (/obj/machinery/atmospherics/pipe/manifold/yellow/visible,/turf/open/floor/plasteel,/area/atmos) +"bTN" = (/obj/machinery/atmospherics/components/binary/pump{dir = 8; name = "Mix Outlet Pump"; on = 0},/turf/open/floor/plasteel,/area/atmos) +"bTO" = (/obj/machinery/atmospherics/components/binary/pump{dir = 0; name = "Air to Mix"; on = 0},/obj/machinery/atmospherics/pipe/simple/yellow/visible{dir = 4},/turf/open/floor/plasteel,/area/atmos) +"bTP" = (/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/machinery/atmospherics/pipe/manifold/yellow/visible,/turf/open/floor/plasteel/green/side{dir = 5},/area/atmos) +"bTQ" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/cyan/visible,/obj/machinery/atmospherics/pipe/simple/yellow/visible{dir = 4},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/atmos) +"bTR" = (/obj/machinery/atmospherics/pipe/simple{dir = 4},/obj/structure/grille,/obj/machinery/meter,/turf/closed/wall/r_wall,/area/atmos) +"bTS" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; external_pressure_bound = 0; frequency = 1441; id_tag = "mix_in"; initialize_directions = 1; internal_pressure_bound = 4000; on = 1; pressure_checks = 2; pump_direction = 0},/turf/open/floor/engine/vacuum,/area/atmos) +"bTT" = (/obj/machinery/camera{c_tag = "Atmospherics Waste Tank"},/turf/open/floor/engine/vacuum,/area/atmos) +"bTU" = (/turf/open/floor/engine/vacuum,/area/atmos) +"bTV" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/maintenance/asmaint) +"bTW" = (/obj/structure/table,/obj/machinery/microwave{pixel_x = -3; pixel_y = 6},/turf/open/floor/plasteel/white,/area/medical/virology) +"bTX" = (/obj/machinery/iv_drip,/turf/open/floor/plasteel/white,/area/medical/virology) +"bTY" = (/obj/machinery/shower{dir = 4},/obj/structure/sign/securearea{pixel_x = -32; pixel_y = 0},/turf/open/floor/plasteel/warnwhite{dir = 8},/area/medical/virology) +"bTZ" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/white,/area/medical/virology) +"bUa" = (/obj/machinery/airalarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/structure/closet/l3closet,/obj/machinery/light{dir = 4; icon_state = "tube1"},/turf/open/floor/plasteel/warnwhite{dir = 4},/area/medical/virology) +"bUb" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/white,/area/medical/virology) +"bUc" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/mob/living/carbon/monkey,/turf/open/floor/plasteel/white,/area/medical/virology) +"bUd" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/closed/wall/r_wall,/area/medical/virology) +"bUe" = (/obj/machinery/disposal/bin,/obj/structure/sign/deathsposal{pixel_x = 0; pixel_y = -32},/obj/structure/disposalpipe/trunk{dir = 4},/turf/open/floor/plasteel/white,/area/toxins/xenobiology) +"bUf" = (/obj/machinery/computer/camera_advanced/xenobio,/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel/white,/area/toxins/xenobiology) +"bUg" = (/obj/machinery/light,/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/table/glass,/obj/item/weapon/storage/box/monkeycubes,/obj/item/weapon/storage/box/monkeycubes,/turf/open/floor/plasteel/white,/area/toxins/xenobiology) +"bUh" = (/obj/structure/table/glass,/obj/structure/disposalpipe/segment{dir = 4},/obj/item/weapon/folder/white,/obj/item/weapon/pen,/turf/open/floor/plasteel/white,/area/toxins/xenobiology) +"bUi" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel/white,/area/toxins/xenobiology) +"bUj" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plasteel/white,/area/toxins/xenobiology) +"bUk" = (/obj/structure/table,/obj/item/weapon/extinguisher{pixel_x = 4; pixel_y = 3},/obj/item/weapon/extinguisher,/turf/open/floor/plasteel/white,/area/toxins/xenobiology) +"bUl" = (/obj/structure/table,/obj/machinery/requests_console{department = "Science"; departmentType = 2; name = "Science Requests Console"; pixel_x = 0; pixel_y = -30},/obj/item/weapon/paper_bin{pixel_x = 1; pixel_y = 9},/obj/item/weapon/pen,/turf/open/floor/plasteel/white,/area/toxins/xenobiology) +"bUm" = (/obj/structure/table,/obj/item/stack/sheet/mineral/plasma{layer = 2.9},/obj/item/stack/sheet/mineral/plasma{layer = 2.9},/obj/item/stack/sheet/mineral/plasma{layer = 2.9},/obj/machinery/light,/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -29},/turf/open/floor/plasteel/white,/area/toxins/xenobiology) +"bUn" = (/obj/structure/table,/obj/item/weapon/storage/box/beakers{pixel_x = 2; pixel_y = 2},/obj/item/weapon/storage/box/syringes,/turf/open/floor/plasteel/white,/area/toxins/xenobiology) +"bUo" = (/obj/structure/reagent_dispensers/watertank,/turf/open/floor/plasteel/white,/area/toxins/xenobiology) +"bUp" = (/obj/structure/grille,/obj/structure/window/fulltile,/turf/open/floor/plating,/area/toxins/misc_lab) +"bUq" = (/obj/machinery/door/airlock/research{name = "Testing Lab"; req_access_txt = "47"},/turf/open/floor/plasteel,/area/toxins/misc_lab) +"bUr" = (/turf/closed/wall,/area/toxins/misc_lab) +"bUs" = (/obj/effect/decal/cleanable/oil,/turf/open/floor/plating,/area/maintenance/asmaint2) +"bUt" = (/obj/effect/spawner/lootdrop/maintenance,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/asmaint2) +"bUu" = (/obj/effect/decal/cleanable/oil,/obj/structure/rack,/turf/open/floor/plating,/area/maintenance/asmaint2) +"bUv" = (/obj/machinery/vending/boozeomat,/turf/open/floor/plasteel/bar,/area/maintenance/aft) +"bUw" = (/turf/open/floor/wood,/area/maintenance/aft) +"bUx" = (/obj/effect/decal/cleanable/robot_debris/old,/turf/open/floor/wood,/area/maintenance/aft) +"bUy" = (/turf/open/floor/wood{icon_state = "wood-broken"},/area/maintenance/aft) +"bUz" = (/obj/machinery/door/airlock/maintenance{name = "Maint Bar Access"; req_access_txt = "12"},/obj/structure/barricade/wooden{name = "wooden barricade (CLOSED)"},/turf/open/floor/plating,/area/maintenance/aft) +"bUA" = (/obj/item/weapon/shard,/turf/open/floor/plating,/area/maintenance/aft) +"bUB" = (/obj/effect/decal/cleanable/oil,/turf/open/floor/plating,/area/maintenance/aft) +"bUC" = (/obj/structure/girder,/obj/structure/grille/broken,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"bUD" = (/obj/structure/closet/emcloset,/obj/effect/decal/cleanable/cobweb,/turf/open/floor/plating,/area/maintenance/aft) +"bUE" = (/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/aft) +"bUF" = (/obj/structure/chair{dir = 1},/turf/open/floor/plating,/area/maintenance/aft) +"bUG" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/open/floor/plating,/area/maintenance/aft) +"bUH" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/aft) +"bUI" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall,/area/construction) +"bUJ" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/construction) +"bUK" = (/obj/structure/closet/crate,/obj/effect/landmark{name = "blobstart"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/construction) +"bUL" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,/turf/open/floor/plating,/area/construction) +"bUM" = (/obj/effect/landmark{name = "xeno_spawn"; pixel_x = -1},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/construction) +"bUN" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/construction) +"bUO" = (/obj/machinery/door/airlock/engineering{name = "Construction Area"; req_access_txt = "32"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/construction) +"bUP" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/turf/open/floor/plasteel/caution/corner{dir = 8},/area/hallway/primary/aft) +"bUQ" = (/turf/open/floor/plasteel/caution{dir = 5},/area/hallway/primary/aft) +"bUR" = (/obj/structure/grille,/obj/machinery/door/poddoor/preopen{id = "atmos"; layer = 2.9; name = "atmos blast door"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/atmos) +"bUS" = (/obj/structure/tank_dispenser{pixel_x = -1},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/atmos) +"bUT" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/turf/open/floor/plasteel,/area/atmos) +"bUU" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/atmos) +"bUV" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/open/floor/plasteel,/area/atmos) +"bUW" = (/obj/machinery/computer/atmos_control,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/caution{dir = 4},/area/atmos) +"bUX" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/window/fulltile,/turf/open/floor/plating,/area/atmos) +"bUY" = (/obj/machinery/atmospherics/components/unary/portables_connector/visible,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/atmos) +"bUZ" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/atmos) +"bVa" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/turf/open/floor/plasteel,/area/atmos) +"bVb" = (/obj/structure/closet/crate,/turf/open/floor/plasteel,/area/atmos) +"bVc" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/visible{dir = 8},/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel,/area/atmos) +"bVd" = (/obj/machinery/atmospherics/components/binary/pump{dir = 8; name = "Mix to Filter"; on = 1},/turf/open/floor/plasteel,/area/atmos) +"bVe" = (/obj/machinery/atmospherics/pipe/manifold/yellow/visible{dir = 4},/turf/open/floor/plasteel,/area/atmos) +"bVf" = (/obj/machinery/atmospherics/pipe/simple/green/visible{dir = 6},/turf/open/floor/plasteel,/area/atmos) +"bVg" = (/obj/machinery/atmospherics/pipe/manifold/green/visible{dir = 1},/turf/open/floor/plasteel,/area/atmos) +"bVh" = (/obj/machinery/atmospherics/pipe/manifold/green/visible{dir = 4},/turf/open/floor/plasteel,/area/atmos) +"bVi" = (/obj/machinery/computer/atmos_control/tank{frequency = 1441; input_tag = "mix_in"; name = "Gas Mix Tank Control"; output_tag = "mix_in"; sensors = list("mix_sensor" = "Tank")},/turf/open/floor/plasteel/green/side{dir = 4},/area/atmos) +"bVj" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/cyan/visible,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/atmos) +"bVk" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating/airless,/area/atmos) +"bVl" = (/obj/machinery/air_sensor{frequency = 1441; id_tag = "mix_sensor"},/turf/open/floor/engine/vacuum,/area/atmos) +"bVm" = (/obj/machinery/light/small{dir = 4},/turf/open/floor/engine/vacuum,/area/atmos) +"bVn" = (/obj/structure/table,/obj/item/weapon/storage/box/donkpockets{pixel_x = 3; pixel_y = 3},/obj/machinery/newscaster{pixel_x = -30},/turf/open/floor/plasteel/white,/area/medical/virology) +"bVo" = (/obj/structure/chair/stool,/turf/open/floor/plasteel/white,/area/medical/virology) +"bVp" = (/obj/structure/closet/wardrobe/virology_white,/turf/open/floor/plasteel/white,/area/medical/virology) +"bVq" = (/obj/structure/sink{icon_state = "sink"; dir = 8; pixel_x = -12; pixel_y = 2},/obj/machinery/doorButtons/access_button{idDoor = "virology_airlock_interior"; idSelf = "virology_airlock_control"; name = "Virology Access Button"; pixel_x = 8; pixel_y = -28; req_access_txt = "39"},/turf/open/floor/plasteel/warnwhite{dir = 10},/area/medical/virology) +"bVr" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/turf/open/floor/plasteel/white,/area/medical/virology) +"bVs" = (/obj/structure/closet/l3closet,/turf/open/floor/plasteel/warnwhite{dir = 6},/area/medical/virology) +"bVt" = (/obj/effect/landmark{name = "blobstart"},/turf/open/floor/plasteel/white,/area/medical/virology) +"bVu" = (/obj/machinery/door/firedoor,/turf/open/floor/plasteel/warnwhite{dir = 1},/area/toxins/xenobiology) +"bVv" = (/obj/machinery/door/firedoor,/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plasteel/warnwhite{dir = 1},/area/toxins/xenobiology) +"bVw" = (/obj/machinery/door/firedoor,/obj/machinery/light{icon_state = "tube1"; dir = 4},/obj/machinery/camera{c_tag = "Xenobiology North"; dir = 8; network = list("SS13","RD")},/turf/open/floor/plasteel/warnwhite{dir = 1},/area/toxins/xenobiology) +"bVx" = (/obj/structure/closet/bombcloset,/obj/machinery/light_switch{pixel_x = -20; pixel_y = 0},/turf/open/floor/plasteel,/area/toxins/misc_lab) +"bVy" = (/turf/open/floor/plasteel,/area/toxins/misc_lab) +"bVz" = (/turf/open/floor/plasteel/floorgrime,/area/toxins/misc_lab) +"bVA" = (/obj/machinery/requests_console{department = "Science"; departmentType = 2; dir = 2; name = "Science Requests Console"; pixel_x = 0; pixel_y = 30},/turf/open/floor/plasteel,/area/toxins/misc_lab) +"bVB" = (/obj/structure/table,/obj/structure/window/reinforced{dir = 4},/obj/item/weapon/storage/toolbox/mechanical,/obj/item/clothing/ears/earmuffs,/obj/machinery/camera{c_tag = "Testing Lab North"; dir = 2; network = list("SS13","RD")},/turf/open/floor/plasteel,/area/toxins/misc_lab) +"bVC" = (/obj/machinery/atmospherics/components/unary/portables_connector/visible{dir = 4},/turf/open/floor/engine,/area/toxins/misc_lab) +"bVD" = (/obj/machinery/atmospherics/pipe/manifold/general/visible{dir = 1},/turf/open/floor/engine,/area/toxins/misc_lab) +"bVE" = (/obj/machinery/atmospherics/components/trinary/filter{dir = 4; req_access = null},/turf/open/floor/engine,/area/toxins/misc_lab) +"bVF" = (/obj/machinery/atmospherics/components/unary/thermomachine/heater{dir = 8},/turf/open/floor/engine,/area/toxins/misc_lab) +"bVG" = (/obj/machinery/light/small{dir = 1},/turf/open/floor/plasteel/warning{dir = 9},/area/toxins/misc_lab) +"bVH" = (/obj/machinery/light/small{dir = 1},/turf/open/floor/plasteel/warning{dir = 5},/area/toxins/misc_lab) +"bVI" = (/turf/closed/wall/r_wall,/area/toxins/misc_lab) +"bVJ" = (/obj/structure/rack,/turf/open/floor/plating,/area/maintenance/asmaint2) +"bVK" = (/obj/structure/table,/obj/machinery/chem_dispenser/drinks/beer,/turf/open/floor/wood,/area/maintenance/aft) +"bVL" = (/obj/structure/table/wood,/obj/item/weapon/soap/nanotrasen,/turf/open/floor/wood{icon_state = "wood-broken7"},/area/maintenance/aft) +"bVM" = (/obj/structure/table/wood,/turf/open/floor/wood{icon_state = "wood-broken5"},/area/maintenance/aft) +"bVN" = (/obj/structure/table/wood,/obj/effect/spawner/lootdrop/maintenance{lootcount = 4; name = "4maintenance loot spawner"},/turf/open/floor/wood,/area/maintenance/aft) +"bVO" = (/obj/structure/rack,/obj/effect/spawner/lootdrop/maintenance{lootcount = 2; name = "2maintenance loot spawner"},/turf/open/floor/plating,/area/maintenance/aft) +"bVP" = (/obj/effect/spawner/lootdrop/maintenance{lootcount = 3; name = "3maintenance loot spawner"},/turf/open/floor/plating,/area/maintenance/aft) +"bVQ" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/aft) +"bVR" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/turf/open/floor/plating,/area/maintenance/aft) +"bVS" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/door/airlock/maintenance{name = "Construction Area Maintenance"; req_access_txt = "32"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/construction) +"bVT" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/construction) +"bVU" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/construction) +"bVV" = (/obj/machinery/light_switch{pixel_x = 27},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/construction) +"bVW" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/closed/wall,/area/construction) +"bVX" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/caution/corner{dir = 8},/area/hallway/primary/aft) +"bVY" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/turf/open/floor/plasteel,/area/hallway/primary/aft) +"bVZ" = (/obj/structure/table/reinforced,/obj/machinery/door/firedoor/heavy,/obj/machinery/door/window/northleft{dir = 4; icon_state = "left"; name = "Atmospherics Desk"; req_access_txt = "24"},/obj/machinery/door/poddoor/preopen{id = "atmos"; layer = 2.9; name = "atmos blast door"},/turf/open/floor/plasteel/delivery{name = "floor"},/area/atmos) +"bWa" = (/obj/structure/chair{dir = 8},/obj/effect/landmark/start{name = "Atmospheric Technician"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/atmos) +"bWb" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/atmos) +"bWc" = (/obj/structure/chair/office/dark{dir = 4},/obj/effect/landmark/start{name = "Atmospheric Technician"},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; external_pressure_bound = 101.325; on = 1; pressure_checks = 1},/turf/open/floor/plasteel,/area/atmos) +"bWd" = (/obj/machinery/computer/atmos_alert,/turf/open/floor/plasteel/caution{dir = 4},/area/atmos) +"bWe" = (/obj/structure/grille,/obj/structure/window/fulltile,/turf/open/floor/plating,/area/atmos) +"bWf" = (/obj/machinery/atmospherics/components/unary/portables_connector/visible{dir = 4},/obj/machinery/portable_atmospherics/canister/oxygen,/turf/open/floor/plasteel,/area/atmos) +"bWg" = (/obj/machinery/atmospherics/components/trinary/mixer{dir = 8},/turf/open/floor/plasteel,/area/atmos) +"bWh" = (/obj/machinery/atmospherics/components/unary/portables_connector/visible{dir = 8},/turf/open/floor/plasteel,/area/atmos) +"bWi" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{dir = 6},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel,/area/atmos) +"bWj" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{dir = 4},/turf/open/floor/plasteel,/area/atmos) +"bWk" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{dir = 4},/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_atmos{name = "Distribution Loop"; req_access_txt = "24"},/turf/open/floor/plasteel,/area/atmos) +"bWl" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{dir = 9},/turf/open/floor/plasteel,/area/atmos) +"bWm" = (/obj/machinery/atmospherics/pipe/simple/yellow/visible{dir = 9},/turf/open/floor/plasteel,/area/atmos) +"bWn" = (/obj/machinery/atmospherics/components/binary/pump{dir = 1; name = "Pure to Mix"; on = 0},/turf/open/floor/plasteel,/area/atmos) +"bWo" = (/obj/machinery/atmospherics/pipe/simple/green/visible{dir = 5; initialize_directions = 12},/turf/open/floor/plasteel,/area/atmos) +"bWp" = (/obj/machinery/atmospherics/components/binary/pump{dir = 1; name = "Unfiltered to Mix"; on = 1},/obj/machinery/atmospherics/pipe/simple/green/visible{dir = 4; initialize_directions = 12},/turf/open/floor/plasteel,/area/atmos) +"bWq" = (/obj/machinery/atmospherics/pipe/simple/green/visible{dir = 4},/turf/open/floor/plasteel/green/side{dir = 6},/area/atmos) +"bWr" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/cyan/visible,/obj/machinery/atmospherics/pipe/simple/green/visible{dir = 4},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/atmos) +"bWs" = (/obj/structure/lattice,/obj/machinery/atmospherics/pipe/simple/green/visible{dir = 4},/turf/open/space,/area/space/nearstation) +"bWt" = (/obj/machinery/atmospherics/components/unary/outlet_injector/on{dir = 8; frequency = 1441; id = "mix_in"; pixel_y = 1},/turf/open/floor/engine/vacuum,/area/atmos) +"bWu" = (/obj/structure/table,/obj/machinery/light_switch{pixel_x = -23; pixel_y = 0},/obj/machinery/reagentgrinder,/turf/open/floor/plasteel/white,/area/medical/virology) +"bWv" = (/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/turf/open/floor/plasteel/white,/area/medical/virology) +"bWw" = (/obj/machinery/firealarm{dir = 4; pixel_x = 24},/turf/open/floor/plasteel/white,/area/medical/virology) +"bWx" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/firedoor,/obj/machinery/door/airlock/virology{autoclose = 0; frequency = 1449; icon_state = "door_locked"; id_tag = "virology_airlock_interior"; locked = 1; name = "Virology Interior Airlock"; req_access_txt = "39"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/white,/area/medical/virology) +"bWy" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/medical/virology) +"bWz" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_virology{name = "Monkey Pen"; req_access_txt = "39"},/turf/open/floor/plasteel/white,/area/medical/virology) +"bWA" = (/obj/structure/disposalpipe/trunk{dir = 4},/obj/structure/disposaloutlet,/turf/open/floor/engine,/area/toxins/xenobiology) +"bWB" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/engine,/area/toxins/xenobiology) +"bWC" = (/obj/structure/grille,/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/door/poddoor/preopen{id = "xenobio3"; name = "containment blast door"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/engine,/area/toxins/xenobiology) +"bWD" = (/obj/machinery/disposal/bin,/obj/structure/disposalpipe/trunk{dir = 8},/obj/structure/window/reinforced,/turf/open/floor/plasteel/warning{dir = 6},/area/toxins/xenobiology) +"bWE" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel/white,/area/toxins/xenobiology) +"bWF" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/open/floor/plasteel/white,/area/toxins/xenobiology) +"bWG" = (/obj/structure/window/reinforced,/obj/structure/table/reinforced,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/button/door{id = "xenobio8"; name = "Containment Blast Doors"; pixel_x = 0; pixel_y = 4; req_access_txt = "55"},/turf/open/floor/plasteel/warning{dir = 10},/area/toxins/xenobiology) +"bWH" = (/obj/structure/grille,/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/door/poddoor/preopen{id = "xenobio8"; name = "containment blast door"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/engine,/area/toxins/xenobiology) +"bWI" = (/obj/structure/closet/l3closet/scientist{pixel_x = -2},/turf/open/floor/plasteel,/area/toxins/misc_lab) +"bWJ" = (/obj/structure/chair/stool,/turf/open/floor/plasteel/floorgrime,/area/toxins/misc_lab) +"bWK" = (/obj/structure/table,/obj/structure/window/reinforced{dir = 4},/obj/item/device/electropack,/obj/item/device/healthanalyzer,/obj/item/device/assembly/signaler,/turf/open/floor/plasteel,/area/toxins/misc_lab) +"bWL" = (/obj/machinery/atmospherics/pipe/manifold/general/visible{dir = 4; initialize_directions = 11},/turf/open/floor/engine,/area/toxins/misc_lab) +"bWM" = (/obj/machinery/atmospherics/pipe/manifold/general/visible{dir = 8},/turf/open/floor/engine,/area/toxins/misc_lab) +"bWN" = (/obj/machinery/atmospherics/pipe/manifold/general/visible,/turf/open/floor/engine,/area/toxins/misc_lab) +"bWO" = (/obj/machinery/atmospherics/components/unary/thermomachine/freezer{dir = 8},/turf/open/floor/engine,/area/toxins/misc_lab) +"bWP" = (/obj/machinery/magnetic_module,/obj/effect/landmark{name = "blobstart"},/obj/structure/target_stake,/turf/open/floor/plasteel/bot{dir = 2},/area/toxins/misc_lab) +"bWQ" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/turf/open/floor/plating,/area/maintenance/asmaint2) +"bWR" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/turf/open/floor/plating{icon_state = "platingdmg3"},/area/maintenance/asmaint2) +"bWS" = (/obj/machinery/space_heater,/turf/open/floor/wood,/area/maintenance/aft) +"bWT" = (/obj/structure/chair/stool,/turf/open/floor/wood,/area/maintenance/aft) +"bWU" = (/obj/structure/grille/broken,/turf/open/floor/plating,/area/maintenance/aft) +"bWV" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/weapon/tank/internals/emergency_oxygen,/obj/item/weapon/tank/internals/emergency_oxygen,/obj/item/clothing/mask/breath,/obj/item/clothing/mask/breath,/obj/effect/decal/cleanable/cobweb,/turf/open/floor/plating,/area/maintenance/aft) +"bWW" = (/obj/structure/reagent_dispensers/watertank,/turf/open/floor/plating,/area/maintenance/aft) +"bWX" = (/obj/structure/rack,/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/aft) +"bWY" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/aft) +"bWZ" = (/obj/machinery/disposal/bin,/obj/structure/disposalpipe/trunk{dir = 1},/turf/open/floor/plating,/area/construction) +"bXa" = (/obj/machinery/camera{c_tag = "Construction Area"; dir = 1},/turf/open/floor/plating,/area/construction) +"bXb" = (/obj/structure/rack{dir = 1},/obj/item/clothing/suit/hazardvest,/turf/open/floor/plating,/area/construction) +"bXc" = (/obj/structure/table,/obj/item/stack/cable_coil{amount = 5},/obj/item/device/flashlight,/turf/open/floor/plating,/area/construction) +"bXd" = (/obj/structure/table,/turf/open/floor/plating,/area/construction) +"bXe" = (/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel/caution/corner{dir = 8},/area/hallway/primary/aft) +"bXf" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel,/area/hallway/primary/aft) +"bXg" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/machinery/door/poddoor/preopen{id = "atmos"; layer = 2.9; name = "atmos blast door"},/turf/open/floor/plating,/area/atmos) +"bXh" = (/obj/machinery/firealarm{dir = 1; pixel_y = -24},/obj/structure/table,/obj/item/weapon/tank/internals/emergency_oxygen{pixel_x = -8; pixel_y = 0},/obj/item/weapon/tank/internals/emergency_oxygen{pixel_x = -8; pixel_y = 0},/obj/item/clothing/mask/breath{pixel_x = 4; pixel_y = 0},/obj/item/clothing/mask/breath{pixel_x = 4; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/atmos) +"bXi" = (/obj/structure/sign/atmosplaque{pixel_x = 0; pixel_y = -32},/obj/structure/table,/obj/item/weapon/storage/box,/obj/item/weapon/storage/box,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/atmos) +"bXj" = (/obj/machinery/computer/station_alert,/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/machinery/button/door{id = "atmos"; name = "Atmospherics Lockdown"; pixel_x = 24; pixel_y = 4; req_access_txt = "24"},/turf/open/floor/plasteel/caution{dir = 6},/area/atmos) +"bXk" = (/obj/structure/table,/obj/item/clothing/head/welding{pixel_x = -3; pixel_y = 7},/obj/item/clothing/head/welding{pixel_x = -5; pixel_y = 3},/obj/machinery/light{dir = 8},/obj/item/device/multitool,/turf/open/floor/plasteel,/area/atmos) +"bXl" = (/obj/structure/table,/obj/item/stack/sheet/glass{amount = 50},/obj/item/weapon/storage/belt/utility,/obj/item/device/t_scanner,/obj/item/device/t_scanner,/obj/item/device/t_scanner,/turf/open/floor/plasteel,/area/atmos) +"bXm" = (/obj/structure/table,/obj/item/stack/sheet/metal{amount = 50},/obj/item/stack/sheet/metal{amount = 50; pixel_x = 2; pixel_y = 2},/turf/open/floor/plasteel,/area/atmos) +"bXn" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/visible,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel,/area/atmos) +"bXo" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/cyan/visible{dir = 6; initialize_directions = 6},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/atmos) +"bXp" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/cyan/visible{dir = 4},/obj/machinery/atmospherics/pipe/simple/yellow/visible,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/atmos) +"bXq" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/cyan/visible{dir = 4},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/atmos) +"bXr" = (/obj/machinery/atmospherics/pipe/simple/cyan/visible{dir = 4},/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/yellow/visible,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/atmos) +"bXs" = (/obj/machinery/atmospherics/pipe/simple/cyan/visible{dir = 4},/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/atmos) +"bXt" = (/obj/machinery/atmospherics/pipe/simple/green/visible,/obj/machinery/atmospherics/pipe/simple/cyan/visible{dir = 4},/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/atmos) +"bXu" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/manifold/cyan/visible{dir = 4; initialize_directions = 11},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/atmos) +"bXv" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/turf/open/floor/plasteel/white,/area/medical/virology) +"bXw" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/virology) +"bXx" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/virology{name = "Break Room"; req_access_txt = "39"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/virology) +"bXy" = (/obj/structure/extinguisher_cabinet{pixel_x = -5; pixel_y = 30},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/virology) +"bXz" = (/obj/machinery/doorButtons/airlock_controller{idExterior = "virology_airlock_exterior"; idInterior = "virology_airlock_interior"; idSelf = "virology_airlock_control"; name = "Virology Access Console"; pixel_x = 8; pixel_y = 22; req_access_txt = "39"},/obj/machinery/light_switch{pixel_x = -4; pixel_y = 24},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/virology) +"bXA" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/virology) +"bXB" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/firealarm{pixel_y = 25},/turf/open/floor/plasteel/white,/area/medical/virology) +"bXC" = (/obj/machinery/power/apc{cell_type = 5000; dir = 1; name = "Virology APC"; pixel_x = 0; pixel_y = 24},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/camera{c_tag = "Virology Module"},/turf/open/floor/plasteel/white,/area/medical/virology) +"bXD" = (/obj/machinery/vending/medical,/turf/open/floor/plasteel/white,/area/medical/virology) +"bXE" = (/obj/effect/landmark{name = "revenantspawn"},/turf/open/floor/engine,/area/toxins/xenobiology) +"bXF" = (/obj/machinery/door/window/northleft{base_state = "right"; dir = 8; icon_state = "right"; name = "Containment Pen"; req_access_txt = "55"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/door/poddoor/preopen{id = "xenobio3"; name = "containment blast door"},/turf/open/floor/engine,/area/toxins/xenobiology) +"bXG" = (/obj/machinery/door/window/northleft{dir = 4; name = "Containment Pen"; req_access_txt = "55"},/turf/open/floor/plasteel/warning{dir = 4},/area/toxins/xenobiology) +"bXH" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plasteel/white,/area/toxins/xenobiology) +"bXI" = (/obj/machinery/door/window/northleft{base_state = "right"; dir = 8; icon_state = "right"; name = "Containment Pen"; req_access_txt = "55"},/turf/open/floor/plasteel/warning{dir = 8},/area/toxins/xenobiology) +"bXJ" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/door/window/northleft{dir = 4; name = "Containment Pen"; req_access_txt = "55"},/obj/machinery/door/poddoor/preopen{id = "xenobio8"; name = "containment blast door"},/turf/open/floor/engine,/area/toxins/xenobiology) +"bXK" = (/obj/structure/rack,/obj/item/clothing/mask/gas{pixel_x = 3; pixel_y = 3},/obj/item/clothing/mask/gas,/obj/item/clothing/mask/gas{pixel_x = -3; pixel_y = -3},/obj/machinery/airalarm{dir = 4; locked = 0; pixel_x = -23; pixel_y = 0},/turf/open/floor/plasteel,/area/toxins/misc_lab) +"bXL" = (/obj/structure/table,/obj/machinery/cell_charger{pixel_y = 5},/obj/item/stack/cable_coil,/obj/item/device/multitool,/obj/item/weapon/stock_parts/cell/high/plus,/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plasteel,/area/toxins/misc_lab) +"bXM" = (/turf/open/floor/engine,/area/toxins/misc_lab) +"bXN" = (/obj/machinery/atmospherics/components/binary/valve,/turf/open/floor/engine,/area/toxins/misc_lab) +"bXO" = (/obj/machinery/atmospherics/pipe/simple/general/visible,/turf/open/floor/engine,/area/toxins/misc_lab) +"bXP" = (/obj/item/pipe{dir = 4; icon_state = "mixer"; name = "gas mixer fitting"; pipe_type = 14},/turf/open/floor/engine,/area/toxins/misc_lab) +"bXQ" = (/obj/structure/table,/obj/item/device/assembly/igniter{pixel_x = -5; pixel_y = 3},/obj/item/device/assembly/igniter{pixel_x = 5; pixel_y = -4},/obj/item/device/assembly/igniter{pixel_x = 2; pixel_y = 6},/obj/item/device/assembly/igniter{pixel_x = 2; pixel_y = -1},/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/item/device/assembly/timer{pixel_x = -3; pixel_y = 3},/obj/item/device/assembly/timer{pixel_x = -3; pixel_y = 3},/obj/item/device/assembly/timer{pixel_x = -3; pixel_y = 3},/obj/item/device/assembly/timer{pixel_x = -3; pixel_y = 3},/turf/open/floor/engine,/area/toxins/misc_lab) +"bXR" = (/turf/open/floor/plasteel/warning{dir = 10},/area/toxins/misc_lab) +"bXS" = (/turf/open/floor/plasteel/warning{dir = 6},/area/toxins/misc_lab) +"bXT" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/closed/wall,/area/toxins/misc_lab) +"bXU" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/disposalpipe/segment,/turf/open/floor/plating,/area/maintenance/asmaint2) +"bXV" = (/turf/open/floor/wood{icon_state = "wood-broken5"},/area/maintenance/aft) +"bXW" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/wood,/area/maintenance/aft) +"bXX" = (/obj/machinery/atmospherics/pipe/simple/general/hidden{icon_state = "intact"; dir = 4},/turf/open/floor/wood{icon_state = "wood-broken6"},/area/maintenance/aft) +"bXY" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/machinery/atmospherics/pipe/simple/general/hidden{icon_state = "intact"; dir = 4},/turf/open/floor/plating,/area/maintenance/aft) +"bXZ" = (/obj/machinery/atmospherics/pipe/simple/general/hidden{icon_state = "intact"; dir = 4},/turf/open/floor/plating,/area/maintenance/aft) +"bYa" = (/obj/structure/grille,/obj/structure/window/fulltile,/obj/machinery/atmospherics/pipe/simple/general/hidden{icon_state = "intact"; dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"bYb" = (/obj/machinery/atmospherics/components/unary/portables_connector/visible{icon_state = "connector_map"; dir = 8},/obj/machinery/portable_atmospherics/canister/air,/turf/open/floor/plating,/area/maintenance/aft) +"bYc" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/turf/open/floor/plating,/area/maintenance/aft) +"bYd" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/closed/wall,/area/maintenance/aft) +"bYe" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall,/area/maintenance/aft) +"bYf" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/aft) +"bYg" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,/turf/closed/wall,/area/maintenance/aft) +"bYh" = (/obj/structure/closet/emcloset,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/aft) +"bYi" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/turf/closed/wall,/area/maintenance/aft) +"bYj" = (/obj/machinery/power/apc{name = "Aft Hall APC"; dir = 8; pixel_x = -25; pixel_y = 1},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel/caution/corner{dir = 8},/area/hallway/primary/aft) +"bYk" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/open/floor/plasteel,/area/hallway/primary/aft) +"bYl" = (/obj/item/weapon/crowbar,/obj/item/weapon/wrench,/obj/structure/window/reinforced,/turf/open/floor/plasteel/caution{dir = 6},/area/hallway/primary/aft) +"bYm" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall,/area/atmos) +"bYn" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/closed/wall,/area/atmos) +"bYo" = (/obj/machinery/door/firedoor/heavy,/obj/machinery/door/airlock/glass_atmos{name = "Atmospherics Monitoring"; req_access_txt = "24"},/turf/open/floor/plasteel,/area/atmos) +"bYp" = (/obj/machinery/atmospherics/pipe/simple/cyan/visible{dir = 6; initialize_directions = 6},/turf/open/floor/plasteel,/area/atmos) +"bYq" = (/obj/machinery/atmospherics/pipe/simple/cyan/visible{dir = 4},/turf/open/floor/plasteel,/area/atmos) +"bYr" = (/obj/machinery/atmospherics/pipe/manifold/cyan/visible{dir = 4; initialize_directions = 11},/obj/machinery/meter,/turf/open/floor/plasteel,/area/atmos) +"bYs" = (/obj/machinery/atmospherics/pipe/simple/yellow/visible,/obj/machinery/meter,/turf/open/floor/plasteel,/area/atmos) +"bYt" = (/obj/machinery/atmospherics/pipe/simple/yellow/visible{dir = 6},/obj/machinery/meter,/turf/open/floor/plasteel,/area/atmos) +"bYu" = (/obj/machinery/atmospherics/pipe/manifold/yellow/visible{dir = 1},/turf/open/floor/plasteel,/area/atmos) +"bYv" = (/obj/machinery/atmospherics/pipe/simple/green/visible,/obj/machinery/atmospherics/pipe/simple/yellow/visible{dir = 4},/turf/open/floor/plasteel,/area/atmos) +"bYw" = (/obj/machinery/atmospherics/components/binary/pump{dir = 8; name = "N2O Outlet Pump"; on = 0},/turf/open/floor/plasteel/escape{dir = 5},/area/atmos) +"bYx" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; external_pressure_bound = 0; frequency = 1441; id_tag = "n2o_out"; initialize_directions = 1; internal_pressure_bound = 4000; on = 1; pressure_checks = 2; pump_direction = 0},/turf/open/floor/engine/n2o,/area/atmos) +"bYy" = (/turf/open/floor/engine/n2o,/area/atmos) +"bYz" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 5},/turf/closed/wall/r_wall,/area/medical/virology) +"bYA" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall/r_wall,/area/medical/virology) +"bYB" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/turf/closed/wall,/area/medical/virology) +"bYC" = (/obj/machinery/airalarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/obj/structure/sink{icon_state = "sink"; dir = 8; pixel_x = -12; pixel_y = 2},/turf/open/floor/plasteel/white,/area/medical/virology) +"bYD" = (/obj/machinery/hologram/holopad,/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/open/floor/plasteel/white,/area/medical/virology) +"bYE" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/open/floor/plasteel/white,/area/medical/virology) +"bYF" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/open/floor/plasteel/white,/area/medical/virology) +"bYG" = (/obj/structure/grille,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/cable,/obj/machinery/door/poddoor/preopen{id = "xenobio3"; name = "containment blast door"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/engine,/area/toxins/xenobiology) +"bYH" = (/obj/structure/table/reinforced,/obj/machinery/button/door{id = "xenobio3"; name = "Containment Blast Doors"; pixel_x = 0; pixel_y = 4; req_access_txt = "55"},/obj/structure/window/reinforced{dir = 1},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/open/floor/plasteel/warning{dir = 5},/area/toxins/xenobiology) +"bYI" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plasteel/white,/area/toxins/xenobiology) +"bYJ" = (/obj/structure/window/reinforced{dir = 1},/obj/machinery/disposal/bin,/obj/structure/disposalpipe/trunk{dir = 4},/turf/open/floor/plasteel/warning{dir = 9},/area/toxins/xenobiology) +"bYK" = (/obj/structure/grille,/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable,/obj/machinery/door/poddoor/preopen{id = "xenobio8"; name = "containment blast door"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/engine,/area/toxins/xenobiology) +"bYL" = (/obj/structure/disposalpipe/trunk{dir = 8},/obj/structure/disposaloutlet{dir = 1},/turf/open/floor/engine,/area/toxins/xenobiology) +"bYM" = (/obj/machinery/atmospherics/components/unary/portables_connector/visible{dir = 4},/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/open/floor/plasteel/floorgrime,/area/toxins/misc_lab) +"bYN" = (/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 10; pixel_x = 0; initialize_directions = 10},/turf/open/floor/plasteel,/area/toxins/misc_lab) +"bYO" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/table,/obj/item/weapon/hand_labeler,/obj/item/clothing/glasses/science,/obj/item/clothing/glasses/science,/turf/open/floor/plasteel,/area/toxins/misc_lab) +"bYP" = (/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 9},/turf/open/floor/engine,/area/toxins/misc_lab) +"bYQ" = (/obj/structure/table,/obj/item/weapon/storage/box/beakers{pixel_x = 2; pixel_y = 2},/obj/item/weapon/grenade/chem_grenade,/obj/item/weapon/grenade/chem_grenade,/turf/open/floor/engine,/area/toxins/misc_lab) +"bYR" = (/turf/open/floor/plating,/area/toxins/misc_lab) +"bYS" = (/obj/structure/target_stake,/obj/effect/decal/cleanable/cobweb,/turf/open/floor/plating,/area/toxins/misc_lab) +"bYT" = (/obj/structure/lattice/catwalk,/turf/open/space,/area/space/nearstation) +"bYU" = (/obj/machinery/atmospherics/components/unary/outlet_injector/on{dir = 2},/turf/open/floor/plating/airless,/area/space/nearstation) +"bYV" = (/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/open/floor/plating,/area/maintenance/aft) +"bYW" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/open/floor/plating,/area/maintenance/aft) +"bYX" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/aft) +"bYY" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/turf/open/floor/plating,/area/maintenance/aft) +"bYZ" = (/obj/structure/disposalpipe/junction{icon_state = "pipe-y"; dir = 1},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/open/floor/plating,/area/maintenance/aft) +"bZa" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/aft) +"bZb" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/open/floor/plating,/area/maintenance/aft) +"bZc" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/aft) +"bZd" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/power/apc{dir = 1; name = "Construction Area APC"; pixel_y = 24},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/construction) +"bZe" = (/obj/machinery/power/apc{dir = 2; name = "Telecoms Monitoring APC"; pixel_y = -24},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/tcommsat/computer) +"bZf" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/aft) +"bZg" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/open/floor/plating,/area/maintenance/aft) +"bZh" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel,/area/hallway/primary/aft) +"bZi" = (/obj/machinery/atmospherics/components/unary/portables_connector/visible{dir = 4},/obj/machinery/portable_atmospherics/pump,/turf/open/floor/plasteel/arrival{dir = 8},/area/atmos) +"bZj" = (/obj/machinery/atmospherics/pipe/manifold/cyan/visible{dir = 1},/obj/machinery/meter,/turf/closed/wall/r_wall,/area/atmos) +"bZk" = (/obj/machinery/atmospherics/pipe/simple/cyan/visible{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/caution{dir = 8},/area/atmos) +"bZl" = (/obj/machinery/atmospherics/pipe/simple/cyan/visible{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/atmos) +"bZm" = (/obj/machinery/atmospherics/pipe/simple/cyan/visible{dir = 4},/turf/open/floor/plasteel/caution{dir = 4},/area/atmos) +"bZn" = (/obj/machinery/atmospherics/pipe/simple/cyan/visible{dir = 4},/obj/machinery/door/firedoor/heavy,/obj/machinery/door/airlock/atmos{name = "Atmospherics"; req_access_txt = "24"},/turf/open/floor/plasteel,/area/atmos) +"bZo" = (/obj/machinery/atmospherics/components/binary/pump{dir = 8; name = "Air to External"; on = 1},/turf/open/floor/plasteel,/area/atmos) +"bZp" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/visible,/obj/machinery/atmospherics/pipe/simple/cyan/visible{dir = 4},/turf/open/floor/plasteel,/area/atmos) +"bZq" = (/obj/machinery/atmospherics/pipe/simple/cyan/visible{dir = 9},/turf/open/floor/plasteel,/area/atmos) +"bZr" = (/obj/item/device/radio/beacon,/turf/open/floor/plasteel,/area/atmos) +"bZs" = (/obj/machinery/atmospherics/components/binary/pump{dir = 0; name = "Air to Port"; on = 0},/turf/open/floor/plasteel,/area/atmos) +"bZt" = (/obj/machinery/atmospherics/components/binary/pump{dir = 0; name = "Mix to Port"; on = 0},/turf/open/floor/plasteel,/area/atmos) +"bZu" = (/obj/machinery/atmospherics/components/binary/pump{dir = 0; name = "Pure to Port"; on = 0},/turf/open/floor/plasteel,/area/atmos) +"bZv" = (/obj/machinery/atmospherics/pipe/simple/yellow/visible,/turf/open/floor/plasteel,/area/atmos) +"bZw" = (/obj/machinery/atmospherics/pipe/simple/green/visible,/turf/open/floor/plasteel,/area/atmos) +"bZx" = (/obj/machinery/computer/atmos_control/tank{frequency = 1441; input_tag = "n2o_in"; name = "Nitrous Oxide Supply Control"; output_tag = "n2o_out"; sensors = list("n2o_sensor" = "Tank")},/turf/open/floor/plasteel/escape{dir = 4},/area/atmos) +"bZy" = (/obj/machinery/air_sensor{frequency = 1441; id_tag = "n2o_sensor"},/turf/open/floor/engine/n2o,/area/atmos) +"bZz" = (/obj/machinery/portable_atmospherics/canister/nitrous_oxide,/turf/open/floor/engine/n2o,/area/atmos) +"bZA" = (/obj/machinery/light/small{dir = 4},/turf/open/floor/engine/n2o,/area/atmos) +"bZB" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plating,/area/maintenance/asmaint) +"bZC" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) +"bZD" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/open/floor/plating,/area/maintenance/asmaint) +"bZE" = (/obj/machinery/smartfridge/chemistry/virology,/turf/open/floor/plasteel/whitegreen/side{dir = 8},/area/medical/virology) +"bZF" = (/obj/structure/chair/stool,/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; external_pressure_bound = 101.325; on = 1; pressure_checks = 1},/turf/open/floor/plasteel/white,/area/medical/virology) +"bZG" = (/obj/machinery/computer/pandemic,/turf/open/floor/plasteel/whitegreen/side{dir = 4},/area/medical/virology) +"bZH" = (/obj/structure/grille,/obj/structure/window/fulltile,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/medical/virology) +"bZI" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_virology{name = "Isolation A"; req_access_txt = "39"},/turf/open/floor/plasteel/white,/area/medical/virology) +"bZJ" = (/obj/structure/grille,/obj/structure/window/fulltile,/turf/open/floor/plating,/area/medical/virology) +"bZK" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_virology{name = "Isolation B"; req_access_txt = "39"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/white,/area/medical/virology) +"bZL" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"},/turf/closed/wall,/area/toxins/xenobiology) +"bZM" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/open/floor/plasteel/white,/area/toxins/xenobiology) +"bZN" = (/obj/structure/sink{dir = 4; icon_state = "sink"; pixel_x = 11; pixel_y = 0},/turf/open/floor/plasteel/white,/area/toxins/xenobiology) +"bZO" = (/obj/machinery/atmospherics/components/unary/portables_connector/visible{dir = 4},/turf/open/floor/plasteel/floorgrime,/area/toxins/misc_lab) +"bZP" = (/obj/machinery/atmospherics/pipe/manifold/general/visible{dir = 4; initialize_directions = 11},/obj/machinery/meter,/turf/open/floor/plasteel/floorgrime,/area/toxins/misc_lab) +"bZQ" = (/turf/open/floor/plasteel/warning/corner{dir = 8},/area/toxins/misc_lab) +"bZR" = (/turf/open/floor/plasteel/warning{dir = 1},/area/toxins/misc_lab) +"bZS" = (/obj/structure/table,/obj/item/stack/sheet/glass{amount = 50; pixel_x = 3; pixel_y = 3},/obj/item/stack/sheet/metal{amount = 50},/obj/item/stack/sheet/mineral/plasma{layer = 2.9},/turf/open/floor/plasteel/warning{dir = 1},/area/toxins/misc_lab) +"bZT" = (/obj/machinery/camera{c_tag = "Testing Firing Range"; dir = 8; network = list("SS13","RD"); pixel_y = -22},/turf/open/floor/plating,/area/toxins/misc_lab) +"bZU" = (/obj/structure/target_stake,/turf/open/floor/plating,/area/toxins/misc_lab) +"bZV" = (/obj/structure/disposaloutlet{dir = 8},/obj/structure/disposalpipe/trunk{dir = 4},/turf/open/floor/plating/airless,/area/space/nearstation) +"bZW" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plating/airless,/area/space/nearstation) +"bZX" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{dir = 5},/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plating/airless,/area/space/nearstation) +"bZY" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plating/airless,/area/space/nearstation) +"bZZ" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/components/binary/pump{dir = 8; name = "Mix to Space"; on = 1},/turf/open/floor/plating/airless,/area/space/nearstation) +"caa" = (/obj/structure/grille,/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{dir = 4},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/maintenance/aft) +"cab" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/closet/emcloset,/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{dir = 4},/turf/open/floor/plating,/area/maintenance/aft) +"cac" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/reagent_dispensers/fueltank,/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{icon_state = "intact"; dir = 10},/turf/open/floor/plating,/area/maintenance/aft) +"cad" = (/obj/machinery/disposal/bin,/obj/structure/disposalpipe/trunk{dir = 8},/obj/structure/sign/deathsposal{pixel_y = 32},/turf/open/floor/plating,/area/maintenance/aft) +"cae" = (/obj/machinery/atmospherics/components/unary/portables_connector/visible,/obj/machinery/light/small{dir = 1},/turf/open/floor/plating,/area/maintenance/aft) +"caf" = (/obj/machinery/atmospherics/components/unary/portables_connector/visible,/turf/open/floor/plating,/area/maintenance/aft) +"cag" = (/obj/effect/decal/cleanable/cobweb2,/obj/machinery/atmospherics/components/unary/portables_connector/visible,/obj/machinery/portable_atmospherics/canister/oxygen,/turf/open/floor/plating,/area/maintenance/aft) +"cah" = (/obj/structure/sign/nosmoking_2{pixel_x = -28},/turf/open/floor/plating,/area/maintenance/aft) +"cai" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/aft) +"caj" = (/turf/closed/wall/r_wall,/area/tcommsat/server) +"cak" = (/turf/closed/wall/r_wall,/area/tcommsat/computer) +"cal" = (/obj/structure/rack{dir = 1},/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/aft) +"cam" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/aft) +"can" = (/obj/machinery/atmospherics/pipe/simple/cyan/visible{dir = 9},/turf/closed/wall/r_wall,/area/atmos) +"cao" = (/obj/machinery/camera{c_tag = "Atmospherics Access"; dir = 4; network = list("SS13")},/obj/machinery/light{dir = 8},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/caution{dir = 8},/area/atmos) +"cap" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; external_pressure_bound = 101.325; on = 1; pressure_checks = 1},/turf/open/floor/plasteel,/area/atmos) +"caq" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{dir = 6},/turf/open/floor/plasteel,/area/atmos) +"car" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{dir = 4},/turf/open/floor/plasteel/caution{dir = 4},/area/atmos) +"cas" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{dir = 4},/obj/structure/sign/securearea,/turf/closed/wall,/area/atmos) +"cat" = (/obj/machinery/atmospherics/components/binary/pump{dir = 4; name = "External to Filter"; on = 1},/turf/open/floor/plasteel,/area/atmos) +"cau" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold/scrubbers/visible{dir = 4},/turf/open/floor/plasteel,/area/atmos) +"cav" = (/obj/structure/reagent_dispensers/watertank/high,/turf/open/floor/plasteel,/area/atmos) +"caw" = (/obj/structure/reagent_dispensers/fueltank,/turf/open/floor/plasteel,/area/atmos) +"cax" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/clothing/suit/hazardvest,/obj/item/clothing/suit/hazardvest,/obj/item/clothing/suit/hazardvest,/obj/item/clothing/suit/hazardvest,/obj/item/clothing/gloves/color/black,/obj/item/clothing/gloves/color/black,/obj/item/clothing/gloves/color/black,/obj/item/clothing/mask/gas,/obj/item/clothing/mask/gas,/turf/open/floor/plasteel,/area/atmos) +"cay" = (/obj/machinery/atmospherics/pipe/manifold/general/visible{dir = 8},/turf/open/floor/plasteel,/area/atmos) +"caz" = (/obj/machinery/atmospherics/pipe/manifold/general/visible,/obj/machinery/meter,/turf/open/floor/plasteel,/area/atmos) +"caA" = (/obj/machinery/atmospherics/pipe/manifold/general/visible{dir = 4; initialize_directions = 11},/turf/open/floor/plasteel,/area/atmos) +"caB" = (/obj/machinery/atmospherics/components/trinary/filter{dir = 1; filter_type = "n2o"; on = 1},/turf/open/floor/plasteel,/area/atmos) +"caC" = (/obj/machinery/atmospherics/pipe/simple/green/visible{dir = 4},/turf/open/floor/plasteel/escape{dir = 6},/area/atmos) +"caD" = (/obj/machinery/atmospherics/components/unary/outlet_injector/on{dir = 8; frequency = 1441; id = "n2o_in"; pixel_y = 1},/turf/open/floor/engine/n2o,/area/atmos) +"caE" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plating,/area/maintenance/asmaint) +"caF" = (/obj/structure/table/glass,/obj/item/clothing/gloves/color/latex,/obj/machinery/requests_console{department = "Virology"; name = "Virology Requests Console"; pixel_x = -32},/obj/item/device/healthanalyzer,/obj/item/clothing/glasses/hud/health,/turf/open/floor/plasteel/whitegreen/side{dir = 8},/area/medical/virology) +"caG" = (/obj/structure/table,/obj/item/weapon/hand_labeler,/obj/item/device/radio/headset/headset_med,/turf/open/floor/plasteel/whitegreen/side{dir = 4},/area/medical/virology) +"caH" = (/obj/structure/grille,/obj/structure/window/fulltile,/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/open/floor/plating,/area/medical/virology) +"caI" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/plasteel/white,/area/medical/virology) +"caJ" = (/obj/structure/bed,/obj/item/weapon/bedsheet,/obj/effect/landmark{name = "revenantspawn"},/turf/open/floor/plasteel/white,/area/medical/virology) +"caK" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; external_pressure_bound = 101.325; on = 1; pressure_checks = 1},/turf/open/floor/plasteel/white,/area/medical/virology) +"caL" = (/obj/structure/grille,/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/door/poddoor/preopen{id = "xenobio2"; name = "containment blast door"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/engine,/area/toxins/xenobiology) +"caM" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plasteel/white,/area/toxins/xenobiology) +"caN" = (/obj/structure/window/reinforced,/obj/structure/table/reinforced,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/button/door{id = "xenobio7"; name = "Containment Blast Doors"; pixel_x = 0; pixel_y = 4; req_access_txt = "55"},/turf/open/floor/plasteel/warning{dir = 10},/area/toxins/xenobiology) +"caO" = (/obj/structure/grille,/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/door/poddoor/preopen{id = "xenobio7"; name = "containment blast door"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/engine,/area/toxins/xenobiology) +"caP" = (/obj/item/device/radio/intercom{pixel_x = -25},/turf/open/floor/plasteel/floorgrime,/area/toxins/misc_lab) +"caQ" = (/obj/machinery/atmospherics/components/binary/pump{dir = 2},/turf/open/floor/plasteel/floorgrime,/area/toxins/misc_lab) +"caR" = (/obj/structure/chair/office/light,/obj/effect/landmark/start{name = "Scientist"},/turf/open/floor/plasteel/floorgrime,/area/toxins/misc_lab) +"caS" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/floorgrime,/area/toxins/misc_lab) +"caT" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/turf/open/floor/plasteel,/area/toxins/misc_lab) +"caU" = (/obj/machinery/disposal/bin,/obj/structure/disposalpipe/trunk{dir = 8},/turf/open/floor/plasteel/warning/corner{dir = 2},/area/toxins/misc_lab) +"caV" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/visible,/turf/open/floor/plating,/area/maintenance/aft) +"caW" = (/turf/open/floor/plasteel/floorgrime,/area/maintenance/aft) +"caX" = (/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 5},/turf/open/floor/plating,/area/maintenance/aft) +"caY" = (/obj/machinery/atmospherics/pipe/manifold4w/general,/obj/machinery/meter,/turf/open/floor/plating,/area/maintenance/aft) +"caZ" = (/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 9},/turf/open/floor/plating,/area/maintenance/aft) +"cba" = (/turf/open/floor/bluegrid{name = "Mainframe Base"; initial_gas_mix = "n2=100;TEMP=80"},/area/tcommsat/server) +"cbb" = (/obj/machinery/telecomms/server/presets/engineering,/turf/open/floor/plasteel/black{name = "Mainframe Floor"; initial_gas_mix = "n2=100;TEMP=80"},/area/tcommsat/server) +"cbc" = (/obj/machinery/telecomms/bus/preset_four,/turf/open/floor/plasteel/black{name = "Mainframe Floor"; initial_gas_mix = "n2=100;TEMP=80"},/area/tcommsat/server) +"cbd" = (/obj/machinery/light{dir = 1},/obj/machinery/power/apc{cell_type = 5000; dir = 1; name = "Telecoms Server APC"; pixel_x = 0; pixel_y = 25},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/open/floor/bluegrid{name = "Mainframe Base"; initial_gas_mix = "n2=100;TEMP=80"},/area/tcommsat/server) +"cbe" = (/obj/machinery/telecomms/processor/preset_three,/turf/open/floor/plasteel/black{name = "Mainframe Floor"; initial_gas_mix = "n2=100;TEMP=80"},/area/tcommsat/server) +"cbf" = (/obj/machinery/telecomms/server/presets/security,/turf/open/floor/plasteel/black{name = "Mainframe Floor"; initial_gas_mix = "n2=100;TEMP=80"},/area/tcommsat/server) +"cbg" = (/obj/structure/window/reinforced/fulltile,/obj/structure/grille,/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/open/floor/plating,/area/tcommsat/computer) +"cbh" = (/obj/structure/table,/turf/open/floor/plasteel/yellow/side{dir = 9},/area/tcommsat/computer) +"cbi" = (/obj/item/device/radio/intercom{dir = 8; freerange = 1; name = "Station Intercom (Telecoms)"; pixel_x = 0; pixel_y = 26},/turf/open/floor/plasteel,/area/tcommsat/computer) +"cbj" = (/obj/machinery/light{dir = 1},/obj/machinery/announcement_system,/turf/open/floor/plasteel,/area/tcommsat/computer) +"cbk" = (/obj/machinery/airalarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/obj/structure/disposalpipe/segment,/obj/machinery/light{dir = 8},/turf/open/floor/plasteel/caution/corner{dir = 8},/area/hallway/primary/aft) +"cbl" = (/obj/machinery/atmospherics/components/unary/portables_connector/visible{dir = 4},/obj/machinery/portable_atmospherics/scrubber,/turf/open/floor/plasteel/escape{dir = 8},/area/atmos) +"cbm" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/visible{dir = 1},/obj/machinery/meter,/turf/closed/wall/r_wall,/area/atmos) +"cbn" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{dir = 4},/obj/machinery/door/poddoor/preopen{id = "atmos"; name = "atmos blast door"},/turf/open/floor/plasteel/delivery{name = "floor"},/area/atmos) +"cbo" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{dir = 9},/obj/machinery/door/poddoor/preopen{id = "atmos"; name = "atmos blast door"},/turf/open/floor/plasteel/delivery{name = "floor"},/area/atmos) +"cbp" = (/turf/closed/wall/r_wall,/area/security/checkpoint/engineering) +"cbq" = (/obj/item/device/radio/intercom{freerange = 0; frequency = 1459; name = "Station Intercom (General)"; pixel_x = -30},/turf/open/floor/plasteel,/area/atmos) +"cbr" = (/obj/structure/extinguisher_cabinet{pixel_x = 27; pixel_y = 0},/obj/machinery/camera{c_tag = "Atmospherics West"; dir = 8; network = list("SS13")},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/visible,/obj/machinery/light{dir = 4; icon_state = "tube1"},/turf/open/floor/plasteel,/area/atmos) +"cbs" = (/obj/structure/extinguisher_cabinet{pixel_x = -27; pixel_y = 0},/obj/machinery/atmospherics/components/binary/pump{dir = 0; name = "Air to Port"; on = 0},/obj/machinery/light{dir = 8},/turf/open/floor/plasteel,/area/atmos) +"cbt" = (/obj/machinery/light{dir = 4},/turf/open/floor/plasteel,/area/atmos) +"cbu" = (/obj/structure/door_assembly/door_assembly_mai,/turf/open/floor/plating,/area/maintenance/asmaint) +"cbv" = (/obj/structure/table/glass,/obj/item/device/radio/intercom{pixel_x = -25},/obj/machinery/light{dir = 8},/obj/item/weapon/storage/box/beakers{pixel_x = 2; pixel_y = 2},/obj/item/weapon/storage/box/syringes,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/whitegreen/side{dir = 8},/area/medical/virology) +"cbw" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/turf/open/floor/plasteel/white,/area/medical/virology) +"cbx" = (/obj/structure/chair/office/light{dir = 4},/obj/effect/landmark/start{name = "Virologist"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/virology) +"cby" = (/obj/structure/table,/obj/item/weapon/paper_bin{pixel_x = -2; pixel_y = 5},/obj/item/weapon/pen/red,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/whitegreen/side{dir = 4},/area/medical/virology) +"cbz" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/window/fulltile,/turf/open/floor/plating,/area/medical/virology) +"cbA" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/turf/open/floor/plasteel/white,/area/medical/virology) +"cbB" = (/obj/structure/table,/turf/open/floor/plasteel/white,/area/medical/virology) +"cbC" = (/obj/machinery/light{dir = 4},/turf/open/floor/plasteel/white,/area/medical/virology) +"cbD" = (/obj/effect/landmark{name = "revenantspawn"},/mob/living/simple_animal/slime,/turf/open/floor/engine,/area/toxins/xenobiology) +"cbE" = (/obj/machinery/door/window/northleft{base_state = "right"; dir = 8; icon_state = "right"; name = "Containment Pen"; req_access_txt = "55"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/door/poddoor/preopen{id = "xenobio2"; name = "containment blast door"},/turf/open/floor/engine,/area/toxins/xenobiology) +"cbF" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/door/window/northleft{dir = 4; name = "Containment Pen"; req_access_txt = "55"},/obj/machinery/door/poddoor/preopen{id = "xenobio7"; name = "containment blast door"},/turf/open/floor/engine,/area/toxins/xenobiology) +"cbG" = (/obj/structure/filingcabinet/chestdrawer,/turf/open/floor/plasteel/floorgrime,/area/toxins/misc_lab) +"cbH" = (/obj/structure/table,/obj/machinery/atmospherics/pipe/simple/general/visible,/obj/machinery/button/ignition{id = "testigniter"; pixel_x = -6; pixel_y = 2},/obj/machinery/button/door{id = "testlab"; name = "Test Chamber Blast Doors"; pixel_x = 4; pixel_y = 2; req_access_txt = "55"},/turf/open/floor/plasteel/floorgrime,/area/toxins/misc_lab) +"cbI" = (/obj/structure/table,/obj/item/weapon/folder/white,/obj/item/weapon/folder/white,/obj/item/weapon/pen,/obj/item/device/taperecorder{pixel_y = 0},/turf/open/floor/plasteel/floorgrime,/area/toxins/misc_lab) +"cbJ" = (/obj/structure/table,/obj/item/weapon/paper_bin{pixel_x = 0; pixel_y = 6},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/open/floor/plasteel/floorgrime,/area/toxins/misc_lab) +"cbK" = (/obj/structure/rack,/obj/item/weapon/wrench,/obj/item/weapon/crowbar,/obj/machinery/computer/security/telescreen{name = "Test Chamber Moniter"; network = list("Test"); pixel_x = 0; pixel_y = -30},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,/turf/open/floor/plasteel/floorgrime,/area/toxins/misc_lab) +"cbL" = (/obj/machinery/firealarm{dir = 1; pixel_y = -24},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/droneDispenser,/turf/open/floor/plasteel,/area/toxins/misc_lab) +"cbM" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/toxins/misc_lab) +"cbN" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/floorgrime,/area/toxins/misc_lab) +"cbO" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/turf/open/floor/plasteel/warning{dir = 4},/area/toxins/misc_lab) +"cbP" = (/obj/structure/table/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/machinery/recharger{pixel_y = 4},/obj/item/weapon/paper/range,/turf/open/floor/plating/warnplate{dir = 6},/area/toxins/misc_lab) +"cbQ" = (/obj/structure/table/reinforced,/obj/machinery/magnetic_controller{autolink = 1},/obj/structure/window/reinforced{dir = 1},/obj/item/device/radio/intercom{freerange = 0; frequency = 1459; name = "Station Intercom (General)"; pixel_x = 29},/obj/machinery/light{dir = 4; icon_state = "tube1"},/turf/open/floor/plating/warnplate{dir = 10},/area/toxins/misc_lab) +"cbR" = (/obj/structure/grille,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/window/reinforced/tinted/fulltile,/obj/structure/disposalpipe/segment,/turf/open/floor/plating,/area/maintenance/asmaint2) +"cbS" = (/obj/machinery/door/airlock/external{name = "External Access"; req_access = null; req_access_txt = "13"},/turf/open/floor/plating,/area/maintenance/aft) +"cbT" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/visible,/turf/open/floor/plasteel/floorgrime,/area/maintenance/aft) +"cbU" = (/obj/effect/landmark{name = "blobstart"},/turf/open/floor/plasteel/floorgrime,/area/maintenance/aft) +"cbV" = (/obj/machinery/atmospherics/pipe/simple/general/visible,/turf/open/floor/plasteel/floorgrime,/area/maintenance/aft) +"cbW" = (/obj/machinery/telecomms/server/presets/common,/turf/open/floor/plasteel/black{name = "Mainframe Floor"; initial_gas_mix = "n2=100;TEMP=80"},/area/tcommsat/server) +"cbX" = (/obj/machinery/telecomms/processor/preset_four,/turf/open/floor/plasteel/black{name = "Mainframe Floor"; initial_gas_mix = "n2=100;TEMP=80"},/area/tcommsat/server) +"cbY" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/bluegrid{name = "Mainframe Base"; initial_gas_mix = "n2=100;TEMP=80"},/area/tcommsat/server) +"cbZ" = (/obj/machinery/telecomms/bus/preset_three,/turf/open/floor/plasteel/black{name = "Mainframe Floor"; initial_gas_mix = "n2=100;TEMP=80"},/area/tcommsat/server) +"cca" = (/obj/machinery/telecomms/server/presets/command,/turf/open/floor/plasteel/black{name = "Mainframe Floor"; initial_gas_mix = "n2=100;TEMP=80"},/area/tcommsat/server) +"ccb" = (/obj/structure/window/reinforced/fulltile,/obj/structure/grille,/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/structure/cable,/turf/open/floor/plating,/area/tcommsat/computer) +"ccc" = (/obj/machinery/computer/message_monitor,/turf/open/floor/plasteel/yellow/side{dir = 8},/area/tcommsat/computer) +"ccd" = (/obj/structure/chair/office/dark{dir = 8},/turf/open/floor/plasteel,/area/tcommsat/computer) +"cce" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/plasteel,/area/tcommsat/computer) +"ccf" = (/obj/structure/table,/obj/item/weapon/paper_bin,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/open/floor/plasteel,/area/tcommsat/computer) +"ccg" = (/obj/machinery/atmospherics/components/unary/portables_connector/visible{dir = 4},/obj/machinery/portable_atmospherics/scrubber,/obj/machinery/light/small,/turf/open/floor/plasteel/escape{dir = 8},/area/atmos) +"cch" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{dir = 9},/turf/closed/wall/r_wall,/area/atmos) +"cci" = (/obj/machinery/door/firedoor/heavy,/obj/machinery/door/airlock/atmos{name = "Atmospherics"; req_access_txt = "24"},/turf/open/floor/plasteel,/area/atmos) +"ccj" = (/obj/structure/sign/securearea,/turf/closed/wall/r_wall,/area/atmos) +"cck" = (/obj/machinery/power/apc{dir = 8; name = "Engineering Security APC"; pixel_x = -24},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/newscaster{pixel_y = 32},/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/turf/open/floor/plasteel/red/side{dir = 9},/area/security/checkpoint/engineering) +"ccl" = (/obj/machinery/requests_console{department = "Security"; departmentType = 5; pixel_y = 30},/obj/structure/closet,/turf/open/floor/plasteel/red/side{dir = 1},/area/security/checkpoint/engineering) +"ccm" = (/obj/structure/filingcabinet,/obj/machinery/airalarm{pixel_y = 23},/turf/open/floor/plasteel/red/side{dir = 5},/area/security/checkpoint/engineering) +"ccn" = (/obj/structure/fireaxecabinet{pixel_x = -32; pixel_y = 0},/turf/open/floor/plasteel,/area/atmos) +"cco" = (/obj/structure/closet/secure_closet/atmospherics,/turf/open/floor/plasteel/warning{dir = 8},/area/atmos) +"ccp" = (/obj/machinery/atmospherics/components/unary/portables_connector/visible{dir = 4},/obj/machinery/portable_atmospherics/canister,/turf/open/floor/plasteel/bot{dir = 2},/area/atmos) +"ccq" = (/obj/machinery/atmospherics/components/unary/portables_connector/visible{dir = 8},/turf/open/floor/plasteel/bot{dir = 2},/area/atmos) +"ccr" = (/obj/machinery/atmospherics/pipe/manifold/yellow/visible{dir = 8},/turf/open/floor/plasteel,/area/atmos) +"ccs" = (/obj/machinery/camera{c_tag = "Atmospherics East"; dir = 8; network = list("SS13")},/obj/machinery/atmospherics/components/binary/pump{dir = 8; name = "Plasma Outlet Pump"; on = 0},/turf/open/floor/plasteel/warning{dir = 5},/area/atmos) +"cct" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; external_pressure_bound = 0; frequency = 1441; id_tag = "tox_out"; initialize_directions = 1; internal_pressure_bound = 4000; on = 1; pressure_checks = 2; pump_direction = 0},/turf/open/floor/engine/plasma,/area/atmos) +"ccu" = (/turf/open/floor/engine/plasma,/area/atmos) +"ccv" = (/obj/effect/landmark{name = "xeno_spawn"; pixel_x = -1},/turf/open/floor/engine/plasma,/area/atmos) +"ccw" = (/obj/structure/reagent_dispensers/fueltank,/turf/open/floor/plating,/area/maintenance/asmaint) +"ccx" = (/obj/structure/closet/crate,/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/asmaint) +"ccy" = (/obj/structure/table/glass,/obj/structure/reagent_dispensers/virusfood{density = 0; pixel_x = -30},/obj/item/weapon/book/manual/wiki/infections{pixel_y = 7},/obj/item/weapon/reagent_containers/syringe/antiviral,/obj/item/weapon/reagent_containers/dropper,/obj/item/weapon/reagent_containers/spray/cleaner,/turf/open/floor/plasteel/whitegreen/side{dir = 8},/area/medical/virology) +"ccz" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/white,/area/medical/virology) +"ccA" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/turf/open/floor/plasteel/white,/area/medical/virology) +"ccB" = (/obj/machinery/disposal/bin,/obj/structure/sign/deathsposal{pixel_x = 0; pixel_y = -32},/obj/structure/disposalpipe/trunk{dir = 8},/turf/open/floor/plasteel/whitegreen/side{dir = 4},/area/medical/virology) +"ccC" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/window/fulltile,/turf/open/floor/plating,/area/medical/virology) +"ccD" = (/obj/structure/closet/secure_closet/personal/patient,/turf/open/floor/plasteel/white,/area/medical/virology) +"ccE" = (/obj/structure/grille,/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/door/poddoor/preopen{id = "xenobio2"; name = "containment blast door"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/engine,/area/toxins/xenobiology) +"ccF" = (/obj/structure/table/reinforced,/obj/machinery/button/door{id = "xenobio2"; name = "Containment Blast Doors"; pixel_x = 0; pixel_y = 4; req_access_txt = "55"},/obj/structure/window/reinforced{dir = 1},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/open/floor/plasteel/warning{dir = 5},/area/toxins/xenobiology) +"ccG" = (/obj/structure/grille,/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable,/obj/machinery/door/poddoor/preopen{id = "xenobio7"; name = "containment blast door"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/engine,/area/toxins/xenobiology) +"ccH" = (/obj/structure/grille,/obj/machinery/door/poddoor/preopen{id = "testlab"; name = "test chamber blast door"},/obj/machinery/atmospherics/pipe/simple/general/visible,/obj/structure/window/reinforced/fulltile,/turf/open/floor/engine,/area/toxins/misc_lab) +"ccI" = (/obj/structure/grille,/obj/machinery/door/poddoor/preopen{id = "testlab"; name = "test chamber blast door"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/engine,/area/toxins/misc_lab) +"ccJ" = (/obj/structure/grille,/obj/machinery/door/poddoor/preopen{id = "testlab"; name = "test chamber blast door"},/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/engine,/area/toxins/misc_lab) +"ccK" = (/obj/structure/reagent_dispensers/fueltank,/turf/open/floor/plasteel/bot{dir = 2},/area/toxins/misc_lab) +"ccL" = (/obj/structure/reagent_dispensers/watertank,/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plasteel/bot{dir = 2},/area/toxins/misc_lab) +"ccM" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/open/floor/plasteel,/area/toxins/misc_lab) +"ccN" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/warning{dir = 4},/area/toxins/misc_lab) +"ccO" = (/obj/machinery/door/airlock/glass_research{name = "Firing Range"; req_access_txt = "47"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/toxins/misc_lab) +"ccP" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/warning/corner{dir = 8},/area/toxins/misc_lab) +"ccQ" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/warning{dir = 1},/area/toxins/misc_lab) +"ccR" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/plasteel/warning/corner{dir = 4},/area/toxins/misc_lab) +"ccS" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/turf/open/floor/plating,/area/maintenance/asmaint2) +"ccT" = (/obj/structure/closet/crate,/obj/item/clothing/under/color/lightpurple,/obj/item/stack/spacecash/c200,/turf/open/floor/plating,/area/maintenance/asmaint2) +"ccU" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = -32; pixel_y = 0},/turf/open/floor/plating,/area/maintenance/aft) +"ccV" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{dir = 5},/turf/open/floor/plating,/area/maintenance/aft) +"ccW" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{dir = 4},/turf/open/floor/plasteel/floorgrime,/area/maintenance/aft) +"ccX" = (/obj/machinery/atmospherics/components/binary/pump{dir = 8; name = "Mix to Space"; on = 0},/turf/open/floor/plasteel/floorgrime,/area/maintenance/aft) +"ccY" = (/obj/machinery/atmospherics/pipe/manifold/general/visible{dir = 4; initialize_directions = 11},/turf/open/floor/plasteel/floorgrime,/area/maintenance/aft) +"ccZ" = (/obj/machinery/door/airlock/maintenance{name = "Incinerator Access"; req_access_txt = "12"},/obj/structure/barricade/wooden{name = "wooden barricade (CLOSED)"},/turf/open/floor/plating,/area/maintenance/aft) +"cda" = (/turf/open/floor/plasteel/black{name = "Mainframe Floor"; initial_gas_mix = "n2=100;TEMP=80"},/area/tcommsat/server) +"cdb" = (/obj/machinery/blackbox_recorder,/turf/open/floor/plasteel/black{name = "Mainframe Floor"; initial_gas_mix = "n2=100;TEMP=80"},/area/tcommsat/server) +"cdc" = (/obj/machinery/telecomms/broadcaster/preset_right,/turf/open/floor/plasteel/black{name = "Mainframe Floor"; initial_gas_mix = "n2=100;TEMP=80"},/area/tcommsat/server) +"cdd" = (/obj/machinery/telecomms/receiver/preset_right,/turf/open/floor/plasteel/black{name = "Mainframe Floor"; initial_gas_mix = "n2=100;TEMP=80"},/area/tcommsat/server) +"cde" = (/obj/machinery/computer/telecomms/server{network = "tcommsat"},/turf/open/floor/plasteel/yellow/side{dir = 10},/area/tcommsat/computer) +"cdf" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/tcommsat/computer) +"cdg" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/turf/open/floor/plasteel,/area/tcommsat/computer) +"cdh" = (/obj/structure/table,/obj/item/weapon/folder/blue,/obj/item/weapon/pen/blue,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/tcommsat/computer) +"cdi" = (/obj/machinery/firealarm{dir = 4; pixel_x = 24},/turf/open/floor/plasteel/yellow/corner{dir = 2},/area/hallway/primary/aft) +"cdj" = (/turf/closed/wall,/area/engine/break_room) +"cdk" = (/turf/open/floor/plasteel/caution{dir = 9},/area/engine/break_room) +"cdl" = (/turf/open/floor/plasteel/caution{dir = 1},/area/engine/break_room) +"cdm" = (/turf/open/floor/plasteel/caution{dir = 5},/area/engine/break_room) +"cdn" = (/turf/closed/wall,/area/security/checkpoint/engineering) +"cdo" = (/obj/item/weapon/screwdriver{pixel_y = 10},/obj/machinery/button/door{desc = "A remote control-switch for the engineering security doors."; id = "Engineering"; name = "Engineering Lockdown"; pixel_x = -24; pixel_y = -6; req_access_txt = "10"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/item/device/radio/off,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/red/side{dir = 8},/area/security/checkpoint/engineering) +"cdp" = (/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel,/area/security/checkpoint/engineering) +"cdq" = (/obj/machinery/camera{c_tag = "Security Post - Engineering"; dir = 8; network = list("SS13")},/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 27},/obj/machinery/light{dir = 4},/turf/open/floor/plasteel/red/side{dir = 4},/area/security/checkpoint/engineering) +"cdr" = (/obj/machinery/suit_storage_unit/atmos,/turf/open/floor/plasteel/warning{dir = 8},/area/atmos) +"cds" = (/obj/structure/sign/nosmoking_2,/turf/closed/wall,/area/atmos) +"cdt" = (/obj/machinery/atmospherics/pipe/manifold/general/visible{dir = 4; initialize_directions = 11},/obj/machinery/meter,/turf/open/floor/plasteel,/area/atmos) +"cdu" = (/obj/machinery/computer/atmos_control/tank{frequency = 1441; input_tag = "tox_in"; name = "Plasma Supply Control"; output_tag = "tox_out"; sensors = list("tox_sensor" = "Tank")},/turf/open/floor/plasteel/warning{dir = 4},/area/atmos) +"cdv" = (/obj/machinery/air_sensor{frequency = 1441; id_tag = "tox_sensor"},/turf/open/floor/engine/plasma,/area/atmos) +"cdw" = (/obj/machinery/portable_atmospherics/canister/toxins,/turf/open/floor/engine/plasma,/area/atmos) +"cdx" = (/obj/machinery/light/small{dir = 4},/turf/open/floor/engine/plasma,/area/atmos) +"cdy" = (/obj/structure/closet/l3closet/virology,/turf/open/floor/plasteel/whitegreen/side{dir = 2},/area/medical/virology) +"cdz" = (/obj/structure/closet/secure_closet/medical1,/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel/whitegreen/side{dir = 2},/area/medical/virology) +"cdA" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/closed/wall/r_wall,/area/medical/virology) +"cdB" = (/obj/structure/sink{icon_state = "sink"; dir = 8; pixel_x = -12; pixel_y = 2},/obj/machinery/camera{c_tag = "Xenobiology South"; dir = 4; network = list("SS13","RD")},/turf/open/floor/plasteel/white,/area/toxins/xenobiology) +"cdC" = (/obj/machinery/light{dir = 4},/turf/open/floor/plasteel/white,/area/toxins/xenobiology) +"cdD" = (/obj/machinery/atmospherics/components/unary/outlet_injector/on{dir = 1; unacidable = 1},/turf/open/floor/engine,/area/toxins/misc_lab) +"cdE" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/engine,/area/toxins/misc_lab) +"cdF" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/toxins/misc_lab) +"cdG" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 8},/turf/open/floor/plasteel/warning{dir = 4},/area/toxins/misc_lab) +"cdH" = (/obj/structure/grille,/obj/structure/window/fulltile,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/toxins/misc_lab) +"cdI" = (/obj/machinery/firealarm{dir = 1; pixel_y = -24},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/toxins/misc_lab) +"cdJ" = (/obj/structure/rack,/obj/item/weapon/gun/energy/laser/practice,/obj/item/clothing/ears/earmuffs,/turf/open/floor/plasteel,/area/toxins/misc_lab) +"cdK" = (/obj/machinery/atmospherics/components/unary/portables_connector/visible{dir = 4},/obj/machinery/portable_atmospherics/canister,/turf/open/floor/plating,/area/maintenance/aft) +"cdL" = (/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 4},/turf/open/floor/plating,/area/maintenance/aft) +"cdM" = (/obj/machinery/atmospherics/components/binary/pump{dir = 8; name = "Mix to Port"; on = 0},/obj/machinery/light/small,/turf/open/floor/plating,/area/maintenance/aft) +"cdN" = (/obj/item/stack/tile/plasteel,/turf/open/space,/area/space/nearstation) +"cdO" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/floor/bluegrid{name = "Mainframe Base"; initial_gas_mix = "n2=100;TEMP=80"},/area/tcommsat/server) +"cdP" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/open/floor/bluegrid{name = "Mainframe Base"; initial_gas_mix = "n2=100;TEMP=80"},/area/tcommsat/server) +"cdQ" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/open/floor/bluegrid{name = "Mainframe Base"; initial_gas_mix = "n2=100;TEMP=80"},/area/tcommsat/server) +"cdR" = (/obj/structure/window/reinforced/fulltile,/obj/structure/grille,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/open/floor/plating,/area/tcommsat/computer) +"cdS" = (/obj/structure/window/reinforced/fulltile,/obj/structure/grille,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/cable,/turf/open/floor/plating,/area/tcommsat/computer) +"cdT" = (/obj/machinery/status_display,/turf/closed/wall,/area/tcommsat/computer) +"cdU" = (/obj/structure/window/reinforced/fulltile,/obj/structure/grille,/turf/open/floor/plating,/area/tcommsat/computer) +"cdV" = (/obj/machinery/door/airlock/glass_command{name = "Control Room"; req_access_txt = "19; 61"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/tcommsat/computer) +"cdW" = (/obj/structure/window/reinforced/fulltile,/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/tcommsat/computer) +"cdX" = (/obj/machinery/door/firedoor,/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel/caution/corner{dir = 8},/area/hallway/primary/aft) +"cdY" = (/obj/machinery/door/firedoor,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel,/area/hallway/primary/aft) +"cdZ" = (/obj/machinery/door/firedoor,/turf/open/floor/plasteel/yellow/corner{dir = 2},/area/hallway/primary/aft) +"cea" = (/obj/structure/table,/obj/machinery/cell_charger,/obj/machinery/light_switch{pixel_x = -23; pixel_y = 0},/obj/machinery/light{dir = 8},/turf/open/floor/plasteel,/area/engine/break_room) +"ceb" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/plasteel,/area/engine/break_room) +"cec" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/open/floor/plasteel,/area/engine/break_room) +"ced" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/engine/break_room) +"cee" = (/obj/machinery/door/airlock/glass_security{name = "Security Office"; req_access_txt = "63"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/security/checkpoint/engineering) +"cef" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/turf/open/floor/plasteel/red/side{dir = 8},/area/security/checkpoint/engineering) +"ceg" = (/obj/structure/chair/office/dark,/obj/effect/landmark/start/depsec/engineering,/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/security/checkpoint/engineering) +"ceh" = (/obj/machinery/computer/secure_data,/obj/machinery/light_switch{pixel_x = 27},/turf/open/floor/plasteel/red/side{dir = 4},/area/security/checkpoint/engineering) +"cei" = (/obj/machinery/power/apc{dir = 8; name = "Atmospherics APC"; pixel_x = -24},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/open/floor/plasteel,/area/atmos) +"cej" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/visible,/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/open/floor/plasteel,/area/atmos) +"cek" = (/obj/machinery/atmospherics/pipe/manifold/general/visible{dir = 4; initialize_directions = 11},/obj/item/weapon/wrench,/turf/open/floor/plasteel,/area/atmos) +"cel" = (/obj/machinery/atmospherics/pipe/manifold/general/visible{dir = 8},/obj/machinery/meter,/turf/open/floor/plasteel,/area/atmos) +"cem" = (/obj/machinery/atmospherics/components/trinary/filter{dir = 1; filter_type = "plasma"; on = 1},/turf/open/floor/plasteel,/area/atmos) +"cen" = (/obj/machinery/atmospherics/pipe/simple/green/visible{dir = 4},/turf/open/floor/plasteel/warning{dir = 6},/area/atmos) +"ceo" = (/obj/machinery/atmospherics/components/unary/outlet_injector/on{dir = 8; frequency = 1441; id = "tox_in"; pixel_y = 1},/turf/open/floor/engine/plasma,/area/atmos) +"cep" = (/turf/open/floor/plating{icon_state = "platingdmg3"},/area/maintenance/asmaint) +"ceq" = (/obj/structure/reagent_dispensers/watertank,/turf/open/floor/plating,/area/maintenance/asmaint) +"cer" = (/obj/effect/decal/cleanable/cobweb2,/obj/effect/spawner/lootdrop/maintenance,/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 8},/turf/open/floor/plating,/area/maintenance/asmaint) +"ces" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/turf/closed/wall/r_wall,/area/medical/virology) +"cet" = (/obj/machinery/airalarm{frequency = 1439; pixel_y = 23},/obj/item/weapon/wrench,/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/open/floor/plating/warnplate{dir = 9},/area/maintenance/asmaint) +"ceu" = (/obj/machinery/atmospherics/components/binary/valve/open{icon_state = "mvalve_map"; dir = 4},/turf/open/floor/plating/warnplate{dir = 1},/area/maintenance/asmaint) +"cev" = (/obj/machinery/atmospherics/components/unary/tank/air{dir = 8},/turf/open/floor/plating/warnplate{dir = 5},/area/maintenance/asmaint) +"cew" = (/obj/structure/closet/emcloset,/obj/effect/decal/cleanable/cobweb,/turf/open/floor/plating,/area/maintenance/asmaint) +"cex" = (/obj/structure/rack{dir = 1},/obj/machinery/light/small{dir = 1},/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/asmaint) +"cey" = (/obj/structure/grille,/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/door/poddoor/preopen{id = "xenobio1"; name = "containment blast door"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/engine,/area/toxins/xenobiology) +"cez" = (/obj/structure/window/reinforced,/obj/structure/table/reinforced,/obj/machinery/button/door{id = "xenobio6"; name = "Containment Blast Doors"; pixel_x = 0; pixel_y = 4; req_access_txt = "55"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/open/floor/plasteel/warning{dir = 10},/area/toxins/xenobiology) +"ceA" = (/obj/structure/grille,/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/door/poddoor/preopen{id = "xenobio6"; name = "containment blast door"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/engine,/area/toxins/xenobiology) +"ceB" = (/obj/item/device/radio/intercom{pixel_x = -25},/turf/open/floor/engine,/area/toxins/misc_lab) +"ceC" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/toxins/misc_lab) +"ceD" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/warning/corner{dir = 1},/area/toxins/misc_lab) +"ceE" = (/obj/structure/extinguisher_cabinet{pixel_x = 27; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/warning/corner{dir = 8},/area/toxins/misc_lab) +"ceF" = (/obj/structure/table,/obj/item/device/flashlight/lamp,/turf/open/floor/plating,/area/maintenance/asmaint2) +"ceG" = (/obj/structure/chair/stool,/turf/open/floor/plating,/area/maintenance/asmaint2) +"ceH" = (/turf/open/floor/plating{icon_state = "platingdmg3"},/area/maintenance/asmaint2) +"ceI" = (/obj/item/weapon/weldingtool,/turf/open/floor/plating/airless,/area/space/nearstation) +"ceJ" = (/obj/machinery/power/terminal{dir = 4},/turf/open/floor/bluegrid{name = "Mainframe Base"; initial_gas_mix = "n2=100;TEMP=80"},/area/tcommsat/server) +"ceK" = (/obj/machinery/power/smes{charge = 5e+006},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/open/floor/bluegrid{name = "Mainframe Base"; initial_gas_mix = "n2=100;TEMP=80"},/area/tcommsat/server) +"ceL" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/open/floor/bluegrid{name = "Mainframe Base"; initial_gas_mix = "n2=100;TEMP=80"},/area/tcommsat/server) +"ceM" = (/obj/machinery/telecomms/hub/preset,/turf/open/floor/plasteel/vault{dir = 8; name = "Mainframe Floor"; initial_gas_mix = "n2=100;TEMP=80"},/area/tcommsat/server) +"ceN" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/open/floor/bluegrid{name = "Mainframe Base"; initial_gas_mix = "n2=100;TEMP=80"},/area/tcommsat/server) +"ceO" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/bluegrid{name = "Mainframe Base"; initial_gas_mix = "n2=100;TEMP=80"},/area/tcommsat/server) +"ceP" = (/obj/machinery/door/airlock/glass_engineering{name = "Server Room"; req_access_txt = "61"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/open/floor/plasteel/vault{dir = 5},/area/tcommsat/computer) +"ceQ" = (/turf/open/floor/plasteel/vault{dir = 5},/area/tcommsat/computer) +"ceR" = (/obj/machinery/door/airlock/glass_engineering{name = "Server Room"; req_access_txt = "61"},/turf/open/floor/plasteel/vault{dir = 5},/area/tcommsat/computer) +"ceS" = (/turf/open/floor/plasteel/warning{dir = 8},/area/tcommsat/computer) +"ceT" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/tcommsat/computer) +"ceU" = (/obj/structure/closet/emcloset,/obj/machinery/camera{c_tag = "Telecoms Monitoring"; dir = 8; network = list("SS13")},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/tcommsat/computer) +"ceV" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/turf/open/floor/plating,/area/maintenance/aft) +"ceW" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/aft) +"ceX" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/open/floor/plasteel/caution/corner{dir = 8},/area/hallway/primary/aft) +"ceY" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/plasteel,/area/hallway/primary/aft) +"ceZ" = (/turf/open/floor/plasteel/yellow/corner{dir = 2},/area/hallway/primary/aft) +"cfa" = (/obj/structure/table,/obj/item/clothing/glasses/meson,/obj/machinery/airalarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/turf/open/floor/plasteel,/area/engine/break_room) +"cfb" = (/turf/open/floor/plasteel,/area/engine/break_room) +"cfc" = (/obj/machinery/hologram/holopad,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/engine/break_room) +"cfd" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/open/floor/plasteel,/area/engine/break_room) +"cfe" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/security/checkpoint/engineering) +"cff" = (/obj/structure/table,/obj/machinery/recharger{pixel_y = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/red/side{dir = 10},/area/security/checkpoint/engineering) +"cfg" = (/obj/structure/table,/obj/item/weapon/book/manual/wiki/security_space_law,/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,/turf/open/floor/plasteel/red/side,/area/security/checkpoint/engineering) +"cfh" = (/obj/structure/table,/obj/item/weapon/paper_bin{pixel_x = 1; pixel_y = 9},/obj/item/weapon/pen,/obj/structure/reagent_dispensers/peppertank{pixel_x = 30; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/red/side{dir = 6},/area/security/checkpoint/engineering) +"cfi" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall/r_wall,/area/security/checkpoint/engineering) +"cfj" = (/obj/machinery/requests_console{department = "Atmospherics"; departmentType = 4; name = "Atmos RC"; pixel_x = 30; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/visible,/obj/machinery/light{dir = 4; icon_state = "tube1"},/turf/open/floor/plasteel,/area/atmos) +"cfk" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/obj/machinery/camera{c_tag = "Atmospherics Central"; dir = 4; network = list("SS13")},/obj/machinery/atmospherics/components/binary/pump{dir = 0; name = "Port to Filter"; on = 0},/turf/open/floor/plasteel,/area/atmos) +"cfl" = (/obj/machinery/atmospherics/pipe/manifold/general/visible{dir = 8},/obj/structure/chair/stool,/turf/open/floor/plasteel,/area/atmos) +"cfm" = (/obj/machinery/atmospherics/components/unary/thermomachine/heater{dir = 8},/turf/open/floor/plasteel,/area/atmos) +"cfn" = (/obj/structure/lattice,/obj/machinery/atmospherics/pipe/simple/yellow/visible{icon_state = "intact"; dir = 5},/turf/open/space,/area/space/nearstation) +"cfo" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/simple/yellow/visible{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) +"cfp" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/yellow/visible{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) +"cfq" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/yellow/visible{icon_state = "intact"; dir = 10},/turf/open/floor/plating,/area/maintenance/asmaint) +"cfr" = (/obj/structure/rack,/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/asmaint) +"cfs" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/open/floor/plating,/area/maintenance/asmaint) +"cft" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/asmaint) +"cfu" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/open/floor/plating,/area/maintenance/asmaint) +"cfv" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/asmaint) +"cfw" = (/obj/structure/chair/stool{pixel_y = 8},/obj/machinery/light/small{dir = 8},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/turf/open/floor/plating/warnplate{dir = 10},/area/maintenance/asmaint) +"cfx" = (/obj/machinery/atmospherics/components/binary/valve{dir = 4},/turf/open/floor/plating/warnplate{dir = 2},/area/maintenance/asmaint) +"cfy" = (/obj/machinery/atmospherics/components/unary/portables_connector/visible{dir = 8},/obj/machinery/portable_atmospherics/canister/air,/turf/open/floor/plating/warnplate{dir = 6},/area/maintenance/asmaint) +"cfz" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/open/floor/plating,/area/maintenance/asmaint) +"cfA" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/asmaint) +"cfB" = (/obj/machinery/door/window/northleft{base_state = "right"; dir = 8; icon_state = "right"; name = "Containment Pen"; req_access_txt = "55"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/door/poddoor/preopen{id = "xenobio1"; name = "containment blast door"},/turf/open/floor/engine,/area/toxins/xenobiology) +"cfC" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/door/window/northleft{dir = 4; name = "Containment Pen"; req_access_txt = "55"},/obj/machinery/door/poddoor/preopen{id = "xenobio6"; name = "containment blast door"},/turf/open/floor/engine,/area/toxins/xenobiology) +"cfD" = (/obj/machinery/sparker{id = "testigniter"; pixel_x = -25},/turf/open/floor/engine,/area/toxins/misc_lab) +"cfE" = (/obj/item/device/radio/beacon,/turf/open/floor/engine,/area/toxins/misc_lab) +"cfF" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/engine,/area/toxins/misc_lab) +"cfG" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/engine,/area/toxins/misc_lab) +"cfH" = (/obj/machinery/door/poddoor/preopen{id = "testlab"; name = "test chamber blast door"},/obj/machinery/door/airlock/glass_research{name = "Test Chamber"; req_access_txt = "47"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/engine,/area/toxins/misc_lab) +"cfI" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/delivery{name = "floor"},/area/toxins/misc_lab) +"cfJ" = (/obj/machinery/door/airlock/glass_research{name = "Test Chamber"; req_access_txt = "47"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/delivery{name = "floor"},/area/toxins/misc_lab) +"cfK" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/turf/open/floor/plasteel/warning{dir = 8},/area/toxins/misc_lab) +"cfL" = (/obj/machinery/power/apc{dir = 4; name = "Testing Lab APC"; pixel_x = 26; pixel_y = 0},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/floorgrime,/area/toxins/misc_lab) +"cfM" = (/obj/machinery/light/small{dir = 4},/turf/open/floor/plasteel,/area/toxins/misc_lab) +"cfN" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/asmaint2) +"cfO" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/disposalpipe/segment,/turf/open/floor/plating{icon_state = "platingdmg3"},/area/maintenance/asmaint2) +"cfP" = (/obj/structure/table,/obj/item/weapon/paper_bin{pixel_x = -2; pixel_y = 5},/turf/open/floor/plating,/area/maintenance/asmaint2) +"cfQ" = (/obj/structure/table,/obj/item/weapon/folder/white,/obj/item/weapon/folder/white,/obj/item/weapon/pen,/turf/open/floor/plating,/area/maintenance/asmaint2) +"cfR" = (/obj/structure/closet/secure_closet/freezer/kitchen/maintenance,/turf/open/floor/plating,/area/maintenance/aft) +"cfS" = (/obj/machinery/light/small{dir = 1},/turf/open/floor/plating,/area/maintenance/aft) +"cfT" = (/obj/item/stack/sheet/metal,/turf/open/floor/plating/airless,/area/space/nearstation) +"cfU" = (/obj/item/stack/cable_coil{amount = 5},/turf/open/floor/plating/airless,/area/space/nearstation) +"cfV" = (/obj/machinery/camera{c_tag = "Telecoms Server Room"; dir = 4; network = list("SS13")},/turf/open/floor/plasteel/black{name = "Mainframe Floor"; initial_gas_mix = "n2=100;TEMP=80"},/area/tcommsat/server) +"cfW" = (/obj/structure/window/reinforced/fulltile,/obj/structure/grille,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/cable,/turf/open/floor/plating,/area/tcommsat/computer) +"cfX" = (/obj/structure/window/reinforced/fulltile,/obj/structure/grille,/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/open/floor/plating,/area/tcommsat/computer) +"cfY" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'SERVER ROOM'."; name = "SERVER ROOM"; pixel_y = 0},/turf/closed/wall,/area/tcommsat/computer) +"cfZ" = (/turf/open/floor/plasteel,/area/tcommsat/computer) +"cga" = (/obj/machinery/hologram/holopad,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/tcommsat/computer) +"cgb" = (/obj/machinery/requests_console{announcementConsole = 1; department = "Telecoms Admin"; departmentType = 5; name = "Telecoms RC"; pixel_x = 30; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/tcommsat/computer) +"cgc" = (/obj/structure/disposalpipe/sortjunction{dir = 2; icon_state = "pipe-j2s"; sortType = 5},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/caution/corner{dir = 8},/area/hallway/primary/aft) +"cgd" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel,/area/hallway/primary/aft) +"cge" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/machinery/camera{c_tag = "Aft Primary Hallway 1"; dir = 8; network = list("SS13"); pixel_x = 0; pixel_y = -22},/turf/open/floor/plasteel/yellow/corner{dir = 2},/area/hallway/primary/aft) +"cgf" = (/obj/machinery/power/apc{dir = 8; name = "Engineering Foyer APC"; pixel_x = -24},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/open/floor/plasteel,/area/engine/break_room) +"cgg" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/engine/break_room) +"cgh" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/engine/break_room) +"cgi" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/security/checkpoint/engineering) +"cgj" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/visible,/turf/open/floor/plasteel,/area/atmos) +"cgk" = (/obj/structure/closet/wardrobe/atmospherics_yellow,/turf/open/floor/plasteel,/area/atmos) +"cgl" = (/obj/machinery/space_heater,/turf/open/floor/plasteel/warning{dir = 10},/area/atmos) +"cgm" = (/obj/machinery/space_heater,/turf/open/floor/plasteel/warning{dir = 6},/area/atmos) +"cgn" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/visible{dir = 8},/turf/open/floor/plasteel,/area/atmos) +"cgo" = (/obj/machinery/atmospherics/components/binary/pump{dir = 8; name = "Port to Filter"; on = 0},/turf/open/floor/plasteel,/area/atmos) +"cgp" = (/obj/machinery/atmospherics/pipe/manifold/general/visible,/obj/item/weapon/cigbutt,/turf/open/floor/plasteel,/area/atmos) +"cgq" = (/obj/machinery/atmospherics/components/unary/thermomachine/freezer{dir = 8},/turf/open/floor/plasteel,/area/atmos) +"cgr" = (/obj/machinery/atmospherics/components/binary/pump{dir = 8; name = "CO2 Outlet Pump"; on = 0},/turf/open/floor/plasteel/yellow/side{dir = 5},/area/atmos) +"cgs" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; external_pressure_bound = 0; frequency = 1441; id_tag = "co2_out"; initialize_directions = 1; internal_pressure_bound = 4000; on = 1; pressure_checks = 2; pump_direction = 0},/turf/open/floor/engine/co2,/area/atmos) +"cgt" = (/turf/open/floor/engine/co2,/area/atmos) +"cgu" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/yellow/visible,/turf/open/floor/plating,/area/maintenance/asmaint) +"cgv" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/asmaint) +"cgw" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/asmaint) +"cgx" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/asmaint) +"cgy" = (/obj/machinery/door/airlock/atmos{name = "Atmospherics Maintenance"; req_access_txt = "12;24"},/turf/open/floor/plating,/area/maintenance/asmaint) +"cgz" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/turf/open/floor/plating,/area/maintenance/asmaint) +"cgA" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/asmaint) +"cgB" = (/obj/structure/grille,/obj/structure/cable,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/door/poddoor/preopen{id = "xenobio1"; name = "containment blast door"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/engine,/area/toxins/xenobiology) +"cgC" = (/obj/structure/table/reinforced,/obj/machinery/button/door{id = "xenobio1"; name = "Containment Blast Doors"; pixel_x = 0; pixel_y = 4; req_access_txt = "55"},/obj/structure/window/reinforced{dir = 1},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/light,/turf/open/floor/plasteel/warning{dir = 5},/area/toxins/xenobiology) +"cgD" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/open/floor/plasteel/white,/area/toxins/xenobiology) +"cgE" = (/obj/structure/grille,/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable,/obj/machinery/door/poddoor/preopen{id = "xenobio6"; name = "containment blast door"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/engine,/area/toxins/xenobiology) +"cgF" = (/obj/machinery/camera{c_tag = "Testing Chamber"; dir = 1; network = list("Test","RD"); pixel_x = 0},/obj/machinery/light,/turf/open/floor/engine,/area/toxins/misc_lab) +"cgG" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/warning/corner{dir = 4},/area/toxins/misc_lab) +"cgH" = (/obj/machinery/camera{c_tag = "Testing Lab South"; dir = 8; network = list("SS13","RD"); pixel_y = -22},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/toxins/misc_lab) +"cgI" = (/obj/structure/closet/crate,/obj/item/target,/obj/item/target,/obj/item/target,/turf/open/floor/plasteel,/area/toxins/misc_lab) +"cgJ" = (/obj/structure/closet/crate,/obj/item/target/syndicate,/obj/item/target/alien,/obj/item/target/clown,/turf/open/floor/plasteel,/area/toxins/misc_lab) +"cgK" = (/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/power/solar{id = "portsolar"; name = "Port Solar Array"},/turf/open/floor/plasteel/airless/solarpanel,/area/solar/port) +"cgL" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/port) +"cgM" = (/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/power/solar{id = "portsolar"; name = "Port Solar Array"},/turf/open/floor/plasteel/airless/solarpanel,/area/solar/port) +"cgN" = (/obj/structure/table,/obj/machinery/microwave,/turf/open/floor/plating,/area/maintenance/aft) +"cgO" = (/obj/structure/sink/kitchen{dir = 8; pixel_x = 11},/turf/open/floor/plating,/area/maintenance/aft) +"cgP" = (/obj/item/clothing/head/hardhat,/turf/open/floor/plating/airless,/area/space/nearstation) +"cgQ" = (/obj/machinery/message_server,/turf/open/floor/plasteel/black{name = "Mainframe Floor"; initial_gas_mix = "n2=100;TEMP=80"},/area/tcommsat/server) +"cgR" = (/obj/machinery/telecomms/broadcaster/preset_left,/turf/open/floor/plasteel/black{name = "Mainframe Floor"; initial_gas_mix = "n2=100;TEMP=80"},/area/tcommsat/server) +"cgS" = (/obj/machinery/telecomms/receiver/preset_left,/turf/open/floor/plasteel/black{name = "Mainframe Floor"; initial_gas_mix = "n2=100;TEMP=80"},/area/tcommsat/server) +"cgT" = (/obj/structure/table,/obj/item/device/multitool,/turf/open/floor/plasteel/yellow/side{dir = 9},/area/tcommsat/computer) +"cgU" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/tcommsat/computer) +"cgV" = (/obj/machinery/light_switch{pixel_x = 27},/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/open/floor/plasteel,/area/tcommsat/computer) +"cgW" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/closed/wall/r_wall,/area/tcommsat/computer) +"cgX" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/yellow/side{dir = 9},/area/hallway/primary/aft) +"cgY" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/yellow/side{dir = 1},/area/hallway/primary/aft) +"cgZ" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/open/floor/plasteel/yellow/corner{dir = 1},/area/hallway/primary/aft) +"cha" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/aft) +"chb" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/yellow/corner{dir = 4},/area/hallway/primary/aft) +"chc" = (/obj/item/device/radio/intercom{broadcasting = 0; name = "Station Intercom (General)"; pixel_y = 20},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/yellow/side{dir = 5},/area/hallway/primary/aft) +"chd" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/engine/break_room) +"che" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/engine/break_room) +"chf" = (/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden,/turf/open/floor/plasteel,/area/engine/break_room) +"chg" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/engine/break_room) +"chh" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/engine/break_room) +"chi" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/engine/break_room) +"chj" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/open/floor/plasteel,/area/engine/break_room) +"chk" = (/obj/machinery/vending/snack,/turf/open/floor/plasteel,/area/engine/break_room) +"chl" = (/turf/closed/wall/r_wall,/area/engine/engineering) +"chm" = (/obj/machinery/firealarm{dir = 8; pixel_x = -24},/turf/open/floor/plasteel,/area/atmos) +"chn" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{dir = 5},/turf/open/floor/plasteel,/area/atmos) +"cho" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/visible{dir = 1},/obj/machinery/meter,/turf/open/floor/plasteel,/area/atmos) +"chp" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{dir = 9},/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel,/area/atmos) +"chq" = (/obj/machinery/atmospherics/components/binary/pump{dir = 4; name = "N2 to Pure"; on = 0},/turf/open/floor/plasteel,/area/atmos) +"chr" = (/obj/machinery/computer/atmos_control/tank{frequency = 1441; input_tag = "co2_in"; name = "Carbon Dioxide Supply Control"; output_tag = "co2_out"; sensors = list("co2_sensor" = "Tank")},/turf/open/floor/plasteel/yellow/side{dir = 4},/area/atmos) +"chs" = (/obj/machinery/air_sensor{frequency = 1441; id_tag = "co2_sensor"},/turf/open/floor/engine/co2,/area/atmos) +"cht" = (/obj/machinery/portable_atmospherics/canister/carbon_dioxide,/turf/open/floor/engine/co2,/area/atmos) +"chu" = (/obj/machinery/light/small{dir = 4},/turf/open/floor/engine/co2,/area/atmos) +"chv" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/yellow/visible,/turf/open/floor/plating,/area/maintenance/asmaint) +"chw" = (/obj/machinery/light/small{dir = 1},/turf/open/floor/plating,/area/maintenance/asmaint) +"chx" = (/obj/structure/sign/nosmoking_2{pixel_x = 0; pixel_y = 28},/turf/open/floor/plating,/area/maintenance/asmaint) +"chy" = (/obj/structure/chair/stool,/obj/effect/decal/cleanable/cobweb{icon_state = "cobweb2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/asmaint) +"chz" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 5},/turf/open/floor/plating,/area/maintenance/asmaint) +"chA" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) +"chB" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) +"chC" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/turf/open/floor/plating,/area/maintenance/asmaint) +"chD" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) +"chE" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/turf/open/floor/plating,/area/maintenance/asmaint) +"chF" = (/obj/structure/disposalpipe/segment,/turf/open/floor/plating,/area/maintenance/asmaint) +"chG" = (/obj/structure/disposalpipe/segment,/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/asmaint2) +"chH" = (/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel/white,/area/toxins/xenobiology) +"chI" = (/obj/structure/rack,/obj/item/clothing/shoes/winterboots,/obj/item/clothing/suit/hooded/wintercoat,/turf/open/floor/plasteel/white,/area/toxins/xenobiology) +"chJ" = (/obj/machinery/portable_atmospherics/pump,/turf/open/floor/plasteel/bot{dir = 2},/area/toxins/misc_lab) +"chK" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/floorgrime,/area/toxins/misc_lab) +"chL" = (/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/floorgrime,/area/toxins/misc_lab) +"chM" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/closed/wall,/area/maintenance/asmaint2) +"chN" = (/obj/structure/table,/obj/effect/decal/cleanable/cobweb,/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/asmaint2) +"chO" = (/obj/structure/table,/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/asmaint2) +"chP" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/port) +"chQ" = (/obj/structure/table,/obj/item/weapon/kitchen/rollingpin,/obj/item/weapon/reagent_containers/food/condiment/enzyme,/obj/item/weapon/reagent_containers/food/condiment/sugar,/turf/open/floor/plating,/area/maintenance/aft) +"chR" = (/obj/structure/chair/stool,/turf/open/floor/plating,/area/maintenance/aft) +"chS" = (/obj/machinery/light/small{dir = 1},/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/aft) +"chT" = (/obj/machinery/portable_atmospherics/canister/air,/turf/open/floor/plating,/area/maintenance/aft) +"chU" = (/obj/machinery/telecomms/server/presets/supply,/turf/open/floor/plasteel/black{name = "Mainframe Floor"; initial_gas_mix = "n2=100;TEMP=80"},/area/tcommsat/server) +"chV" = (/obj/machinery/telecomms/bus/preset_two,/turf/open/floor/plasteel/black{name = "Mainframe Floor"; initial_gas_mix = "n2=100;TEMP=80"},/area/tcommsat/server) +"chW" = (/obj/machinery/telecomms/processor/preset_one,/turf/open/floor/plasteel/black{name = "Mainframe Floor"; initial_gas_mix = "n2=100;TEMP=80"},/area/tcommsat/server) +"chX" = (/obj/machinery/telecomms/server/presets/medical,/turf/open/floor/plasteel/black{name = "Mainframe Floor"; initial_gas_mix = "n2=100;TEMP=80"},/area/tcommsat/server) +"chY" = (/obj/machinery/computer/telecomms/monitor{network = "tcommsat"},/turf/open/floor/plasteel/yellow/side{dir = 8},/area/tcommsat/computer) +"chZ" = (/obj/structure/chair/office/dark{dir = 8},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/open/floor/plasteel,/area/tcommsat/computer) +"cia" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,/turf/open/floor/plasteel,/area/tcommsat/computer) +"cib" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/tcommsat/computer) +"cic" = (/obj/machinery/door/airlock/engineering{name = "Telecommunications"; req_access_txt = "61"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/tcommsat/computer) +"cid" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/yellow/side{dir = 8},/area/hallway/primary/aft) +"cie" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/turf/open/floor/plasteel,/area/hallway/primary/aft) +"cif" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/aft) +"cig" = (/obj/machinery/navbeacon{codes_txt = "patrol;next_patrol=AIE"; location = "AftH"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/aft) +"cih" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/turf/open/floor/plasteel,/area/hallway/primary/aft) +"cii" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/yellow/side{dir = 4},/area/hallway/primary/aft) +"cij" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_engineering{name = "Engineering"; req_access_txt = "32"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/engine/break_room) +"cik" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/engine/break_room) +"cil" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/engine/break_room) +"cim" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/manifold4w/scrubbers,/turf/open/floor/plasteel,/area/engine/break_room) +"cin" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/engine/break_room) +"cio" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/engine/break_room) +"cip" = (/obj/machinery/vending/cigarette{pixel_x = 0; pixel_y = 0},/turf/open/floor/plasteel,/area/engine/break_room) +"ciq" = (/obj/machinery/airalarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/turf/open/floor/plasteel,/area/atmos) +"cir" = (/obj/machinery/atmospherics/pipe/simple/cyan/visible{dir = 4},/obj/machinery/meter,/turf/open/floor/plasteel,/area/atmos) +"cis" = (/obj/machinery/atmospherics/pipe/manifold/cyan/visible,/turf/open/floor/plasteel,/area/atmos) +"cit" = (/obj/machinery/atmospherics/components/trinary/mixer{dir = 4; node1_concentration = 0.8; node2_concentration = 0.2; on = 1; pixel_x = 0; pixel_y = 0; target_pressure = 4500},/turf/open/floor/plasteel,/area/atmos) +"ciu" = (/obj/machinery/atmospherics/pipe/simple/cyan/visible{dir = 4},/obj/machinery/atmospherics/components/binary/pump{dir = 1; name = "O2 to Pure"; on = 0},/turf/open/floor/plasteel,/area/atmos) +"civ" = (/obj/machinery/atmospherics/components/trinary/filter{dir = 1; filter_type = "co2"; on = 1},/turf/open/floor/plasteel,/area/atmos) +"ciw" = (/obj/machinery/atmospherics/pipe/simple/green/visible{dir = 4},/turf/open/floor/plasteel/yellow/side{dir = 6},/area/atmos) +"cix" = (/obj/machinery/atmospherics/components/unary/outlet_injector/on{dir = 8; frequency = 1441; id = "co2_in"; pixel_y = 1},/turf/open/floor/engine/co2,/area/atmos) +"ciy" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/yellow/visible,/turf/open/floor/plating,/area/maintenance/asmaint) +"ciz" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/turf/open/floor/plating,/area/maintenance/asmaint) +"ciA" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) +"ciB" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/turf/open/floor/plating,/area/maintenance/asmaint) +"ciC" = (/obj/structure/table,/obj/effect/spawner/lootdrop/maintenance,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/asmaint) +"ciD" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/turf/open/floor/plating,/area/maintenance/asmaint) +"ciE" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) +"ciF" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/open/floor/plating,/area/maintenance/asmaint) +"ciG" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/mob/living/simple_animal/mouse,/turf/open/floor/plating,/area/maintenance/asmaint) +"ciH" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) +"ciI" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/turf/open/floor/plating,/area/maintenance/asmaint) +"ciJ" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/asmaint2) +"ciK" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 2; external_pressure_bound = 140; on = 1; pressure_checks = 0},/obj/machinery/camera{c_tag = "Xenobiology Kill Room"; dir = 4; network = list("SS13","RD")},/turf/open/floor/bluegrid{name = "Killroom Floor"; initial_gas_mix = "n2=500;TEMP=80"},/area/toxins/xenobiology) +"ciL" = (/turf/open/floor/bluegrid{name = "Killroom Floor"; initial_gas_mix = "n2=500;TEMP=80"},/area/toxins/xenobiology) +"ciM" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 2; external_pressure_bound = 120; initialize_directions = 1; internal_pressure_bound = 4000; on = 1; pressure_checks = 2; pump_direction = 0},/turf/open/floor/bluegrid{name = "Killroom Floor"; initial_gas_mix = "n2=500;TEMP=80"},/area/toxins/xenobiology) +"ciN" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/structure/sign/biohazard,/turf/open/floor/plating,/area/toxins/xenobiology) +"ciO" = (/obj/machinery/atmospherics/components/unary/thermomachine/freezer{target_temperature = 80; dir = 2; on = 1},/turf/open/floor/plasteel/white,/area/toxins/xenobiology) +"ciP" = (/obj/structure/closet/emcloset,/obj/effect/decal/cleanable/cobweb,/turf/open/floor/plating,/area/maintenance/asmaint2) +"ciQ" = (/obj/machinery/light/small{dir = 1},/turf/open/floor/plating,/area/maintenance/asmaint2) +"ciR" = (/obj/machinery/atmospherics/components/unary/tank/air,/turf/open/floor/plating,/area/maintenance/asmaint2) +"ciS" = (/obj/machinery/portable_atmospherics/scrubber,/turf/open/floor/plasteel/bot{dir = 2},/area/toxins/misc_lab) +"ciT" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/toxins/misc_lab) +"ciU" = (/obj/structure/rack{dir = 1},/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/asmaint2) +"ciV" = (/obj/structure/table,/turf/open/floor/plating,/area/maintenance/asmaint2) +"ciW" = (/obj/structure/table,/obj/item/weapon/kitchen/knife,/obj/item/weapon/storage/box/donkpockets,/turf/open/floor/plating,/area/maintenance/aft) +"ciX" = (/obj/structure/table/glass,/obj/item/weapon/reagent_containers/food/condiment/saltshaker{pixel_y = 2},/obj/item/weapon/reagent_containers/food/condiment/peppermill{pixel_x = 2},/obj/item/weapon/reagent_containers/food/snacks/mint{pixel_y = 9},/turf/open/floor/plating,/area/maintenance/aft) +"ciY" = (/obj/machinery/power/apc{dir = 8; name = "Engineering Maintenance APC"; pixel_x = -25; pixel_y = 1},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/open/floor/plating,/area/maintenance/aft) +"ciZ" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/open/floor/plating,/area/maintenance/aft) +"cja" = (/obj/effect/spawner/lootdrop/maintenance,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/open/floor/plating,/area/maintenance/aft) +"cjb" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/open/floor/plating,/area/maintenance/aft) +"cjc" = (/obj/machinery/telecomms/server/presets/service,/turf/open/floor/plasteel/black{name = "Mainframe Floor"; initial_gas_mix = "n2=100;TEMP=80"},/area/tcommsat/server) +"cjd" = (/obj/machinery/telecomms/processor/preset_two,/turf/open/floor/plasteel/black{name = "Mainframe Floor"; initial_gas_mix = "n2=100;TEMP=80"},/area/tcommsat/server) +"cje" = (/obj/structure/sign/nosmoking_2{pixel_y = -32},/obj/machinery/light,/turf/open/floor/bluegrid{name = "Mainframe Base"; initial_gas_mix = "n2=100;TEMP=80"},/area/tcommsat/server) +"cjf" = (/obj/machinery/telecomms/bus/preset_one,/turf/open/floor/plasteel/black{name = "Mainframe Floor"; initial_gas_mix = "n2=100;TEMP=80"},/area/tcommsat/server) +"cjg" = (/obj/machinery/telecomms/server/presets/science,/turf/open/floor/plasteel/black{name = "Mainframe Floor"; initial_gas_mix = "n2=100;TEMP=80"},/area/tcommsat/server) +"cjh" = (/obj/structure/window/reinforced/fulltile,/obj/structure/grille,/obj/structure/cable,/turf/open/floor/plating,/area/tcommsat/computer) +"cji" = (/obj/structure/table,/obj/item/device/radio/off,/turf/open/floor/plasteel/yellow/side{dir = 10},/area/tcommsat/computer) +"cjj" = (/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -35},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel,/area/tcommsat/computer) +"cjk" = (/obj/machinery/airalarm{dir = 1; icon_state = "alarm0"; pixel_y = -22},/obj/machinery/light,/obj/structure/filingcabinet/chestdrawer,/turf/open/floor/plasteel,/area/tcommsat/computer) +"cjl" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/weapon/storage/toolbox/mechanical{pixel_x = -2; pixel_y = -1},/turf/open/floor/plasteel,/area/tcommsat/computer) +"cjm" = (/obj/structure/sign/securearea{pixel_x = -32; pixel_y = 0},/turf/open/floor/plasteel/yellow/side{dir = 10},/area/hallway/primary/aft) +"cjn" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/yellow/side,/area/hallway/primary/aft) +"cjo" = (/turf/open/floor/plasteel/yellow/side,/area/hallway/primary/aft) +"cjp" = (/obj/machinery/light,/turf/open/floor/plasteel/yellow/side,/area/hallway/primary/aft) +"cjq" = (/obj/machinery/airalarm{dir = 1; icon_state = "alarm0"; pixel_y = -22},/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/yellow/side,/area/hallway/primary/aft) +"cjr" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel/yellow/side{dir = 6},/area/hallway/primary/aft) +"cjs" = (/obj/structure/grille,/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/engine/break_room) +"cjt" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel,/area/engine/break_room) +"cju" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/engine/break_room) +"cjv" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/engine/break_room) +"cjw" = (/obj/machinery/camera{c_tag = "Engineering Foyer"; dir = 1},/obj/structure/noticeboard{dir = 1; pixel_y = -27},/turf/open/floor/plasteel,/area/engine/break_room) +"cjx" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/engine/break_room) +"cjy" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/open/floor/plasteel,/area/engine/break_room) +"cjz" = (/obj/structure/extinguisher_cabinet{pixel_x = 27; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/engine/break_room) +"cjA" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/closed/wall/r_wall,/area/engine/engineering) +"cjB" = (/obj/machinery/camera{c_tag = "Atmospherics South West"; dir = 4; network = list("SS13")},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/plasteel,/area/atmos) +"cjC" = (/obj/machinery/atmospherics/pipe/simple/cyan/visible,/turf/open/floor/plasteel,/area/atmos) +"cjD" = (/obj/machinery/light{dir = 4},/obj/machinery/atmospherics/pipe/simple/cyan/visible{dir = 6},/turf/open/floor/plasteel,/area/atmos) +"cjE" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/simple/cyan/visible{dir = 9},/turf/open/floor/plating,/area/atmos) +"cjF" = (/obj/machinery/power/apc{dir = 2; name = "Incinerator APC"; pixel_x = 0; pixel_y = -24},/obj/structure/cable,/obj/machinery/atmospherics/pipe/simple/yellow/visible,/turf/open/floor/plating,/area/maintenance/incinerator) +"cjG" = (/obj/structure/sign/fire{pixel_x = 0; pixel_y = -32},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/asmaint) +"cjH" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/open/floor/plating/warnplate,/area/maintenance/asmaint) +"cjI" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) +"cjJ" = (/obj/structure/closet/emcloset,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/turf/open/floor/plating,/area/maintenance/asmaint) +"cjK" = (/obj/structure/sign/biohazard,/turf/closed/wall,/area/maintenance/asmaint) +"cjL" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/closed/wall,/area/maintenance/asmaint) +"cjM" = (/obj/structure/disposalpipe/segment,/turf/closed/wall,/area/maintenance/asmaint) +"cjN" = (/obj/structure/disposalpipe/segment,/obj/machinery/light/small,/turf/open/floor/plating,/area/maintenance/asmaint) +"cjO" = (/obj/structure/disposalpipe/segment,/obj/structure/closet/l3closet,/turf/open/floor/plating,/area/maintenance/asmaint) +"cjP" = (/obj/machinery/light,/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 5},/turf/open/floor/bluegrid{name = "Killroom Floor"; initial_gas_mix = "n2=500;TEMP=80"},/area/toxins/xenobiology) +"cjQ" = (/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 4},/turf/open/floor/bluegrid{name = "Killroom Floor"; initial_gas_mix = "n2=500;TEMP=80"},/area/toxins/xenobiology) +"cjR" = (/obj/machinery/light,/obj/machinery/atmospherics/pipe/manifold/general/visible,/turf/open/floor/bluegrid{name = "Killroom Floor"; initial_gas_mix = "n2=500;TEMP=80"},/area/toxins/xenobiology) +"cjS" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/research{name = "Kill Chamber"; req_access_txt = "55"},/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 4},/turf/open/floor/plating,/area/toxins/xenobiology) +"cjT" = (/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 4},/turf/open/floor/plasteel/white,/area/toxins/xenobiology) +"cjU" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 4},/turf/open/floor/plasteel/white,/area/toxins/xenobiology) +"cjV" = (/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 9},/obj/structure/table,/obj/item/weapon/folder/white,/obj/item/weapon/pen,/turf/open/floor/plasteel/white,/area/toxins/xenobiology) +"cjW" = (/obj/machinery/meter,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/turf/open/floor/plating,/area/maintenance/asmaint2) +"cjX" = (/obj/machinery/meter,/obj/machinery/atmospherics/pipe/manifold/cyan/hidden,/turf/open/floor/plating,/area/maintenance/asmaint2) +"cjY" = (/obj/machinery/atmospherics/pipe/simple/cyan/hidden{icon_state = "intact"; dir = 9},/turf/open/floor/plating,/area/maintenance/asmaint2) +"cjZ" = (/obj/machinery/portable_atmospherics/canister,/turf/open/floor/plasteel/bot{dir = 2},/area/toxins/misc_lab) +"cka" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/toxins/misc_lab) +"ckb" = (/obj/item/stack/sheet/cardboard,/turf/open/floor/plating,/area/maintenance/asmaint2) +"ckc" = (/obj/effect/landmark{name = "blobstart"},/turf/open/floor/plating,/area/maintenance/asmaint2) +"ckd" = (/obj/machinery/light/small,/turf/open/floor/plating,/area/maintenance/asmaint2) +"cke" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 0; pixel_y = -32},/turf/open/floor/plating,/area/maintenance/asmaint2) +"ckf" = (/obj/machinery/processor,/turf/open/floor/plating,/area/maintenance/aft) +"ckg" = (/obj/machinery/light/small,/turf/open/floor/plating,/area/maintenance/aft) +"ckh" = (/obj/structure/closet,/obj/effect/spawner/lootdrop/maintenance{lootcount = 2; name = "2maintenance loot spawner"},/turf/open/floor/plating,/area/maintenance/aft) +"cki" = (/obj/machinery/space_heater,/turf/open/floor/plating,/area/maintenance/aft) +"ckj" = (/obj/structure/reagent_dispensers/fueltank,/turf/open/floor/plating,/area/maintenance/aft) +"ckk" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plating,/area/maintenance/aft) +"ckl" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/aft) +"ckm" = (/turf/closed/wall/r_wall,/area/engine/chiefs_office) +"ckn" = (/obj/structure/grille,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/door/poddoor/preopen{id = "Engineering"; name = "engineering security door"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/engine/chiefs_office) +"cko" = (/obj/structure/grille,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/structure/disposalpipe/segment,/obj/machinery/door/poddoor/preopen{id = "Engineering"; name = "engineering security door"},/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/engine/chiefs_office) +"ckp" = (/obj/machinery/door/poddoor/preopen{id = "Engineering"; name = "engineering security door"},/obj/machinery/door/airlock/glass_command{name = "Chief Engineer"; req_access_txt = "56"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/delivery{name = "floor"},/area/engine/chiefs_office) +"ckq" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/yellow/side{dir = 10},/area/engine/break_room) +"ckr" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/yellow/side,/area/engine/break_room) +"cks" = (/obj/machinery/light,/turf/open/floor/plasteel/yellow/side{dir = 6},/area/engine/break_room) +"ckt" = (/obj/machinery/atmospherics/components/trinary/filter{dir = 2; filter_type = "n2"; on = 1},/turf/open/floor/plasteel,/area/atmos) +"cku" = (/turf/closed/wall,/area/maintenance/incinerator) +"ckv" = (/obj/machinery/atmospherics/pipe/simple/yellow/visible,/turf/closed/wall,/area/maintenance/incinerator) +"ckw" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/closed/wall,/area/maintenance/incinerator) +"ckx" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/door/airlock/atmos{name = "Turbine Access"; req_access_txt = "32"},/turf/open/floor/plating,/area/maintenance/incinerator) +"cky" = (/obj/structure/rack,/obj/effect/spawner/lootdrop/maintenance{lootcount = 2; name = "2maintenance loot spawner"},/obj/item/toy/minimeteor,/obj/item/weapon/poster/contraband,/turf/open/floor/plating,/area/maintenance/asmaint) +"ckz" = (/obj/structure/closet,/obj/effect/spawner/lootdrop/maintenance,/obj/item/roller,/turf/open/floor/plating,/area/maintenance/asmaint) +"ckA" = (/obj/structure/disposalpipe/segment,/obj/structure/rack{dir = 1},/obj/effect/spawner/lootdrop/maintenance,/obj/item/weapon/reagent_containers/food/snacks/donkpocket,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/asmaint) +"ckB" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/item/weapon/c_tube,/turf/open/floor/plating,/area/maintenance/asmaint) +"ckC" = (/obj/structure/mopbucket,/obj/item/weapon/caution,/turf/open/floor/plating,/area/maintenance/asmaint) +"ckD" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/toxins/xenobiology) +"ckE" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/structure/disposalpipe/segment,/turf/open/floor/plating,/area/toxins/xenobiology) +"ckF" = (/obj/machinery/door/airlock/maintenance{name = "Air Supply Maintenance"; req_access_txt = "12"},/turf/open/floor/plating,/area/maintenance/asmaint2) +"ckG" = (/obj/machinery/door/airlock/maintenance{name = "Testing Lab Maintenance"; req_access_txt = "47"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/toxins/misc_lab) +"ckH" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall/r_wall,/area/toxins/misc_lab) +"ckI" = (/obj/structure/closet/cardboard,/turf/open/floor/plating,/area/maintenance/asmaint2) +"ckJ" = (/obj/machinery/door/airlock/maintenance{name = "Firefighting equipment"; req_access_txt = "12"},/turf/open/floor/plating,/area/maintenance/asmaint2) +"ckK" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating/airless,/area/maintenance/portsolar) +"ckL" = (/turf/closed/wall/r_wall,/area/maintenance/portsolar) +"ckM" = (/obj/structure/grille,/turf/open/floor/plating,/area/maintenance/aft) +"ckN" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plating,/area/maintenance/aft) +"ckO" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 5},/turf/closed/wall,/area/maintenance/aft) +"ckP" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/aft) +"ckQ" = (/obj/structure/closet/wardrobe/black,/obj/effect/decal/cleanable/cobweb,/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/turf/open/floor/plating,/area/maintenance/aft) +"ckR" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/aft) +"ckS" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/aft) +"ckT" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/aft) +"ckU" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/turf/open/floor/plating,/area/maintenance/aft) +"ckV" = (/obj/machinery/suit_storage_unit/ce,/turf/open/floor/plasteel/warnwhite{dir = 4},/area/engine/chiefs_office) +"ckW" = (/obj/machinery/hologram/holopad,/turf/open/floor/plasteel/neutral{dir = 2},/area/engine/chiefs_office) +"ckX" = (/obj/machinery/light{dir = 1},/obj/machinery/keycard_auth{pixel_x = 0; pixel_y = 24},/turf/open/floor/plasteel/neutral{dir = 2},/area/engine/chiefs_office) +"ckY" = (/turf/open/floor/plasteel/neutral{dir = 2},/area/engine/chiefs_office) +"ckZ" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/neutral{dir = 2},/area/engine/chiefs_office) +"cla" = (/obj/machinery/power/apc{cell_type = 5000; dir = 4; name = "CE Office APC"; pixel_x = 24; pixel_y = 0},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/neutral{dir = 2},/area/engine/chiefs_office) +"clb" = (/obj/structure/sign/securearea,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall,/area/engine/engineering) +"clc" = (/obj/machinery/door/airlock/engineering{name = "Engine Room"; req_access_txt = "10"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/engine/engineering) +"cld" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'RADIOACTIVE AREA'"; icon_state = "radiation"; name = "RADIOACTIVE AREA"; pixel_x = 0; pixel_y = 0},/turf/closed/wall,/area/engine/engineering) +"cle" = (/obj/machinery/portable_atmospherics/scrubber,/turf/open/floor/plasteel,/area/atmos) +"clf" = (/obj/machinery/atmospherics/pipe/simple/green/visible,/obj/machinery/portable_atmospherics/pump,/turf/open/floor/plasteel,/area/atmos) +"clg" = (/obj/machinery/atmospherics/pipe/simple/green/visible{dir = 4},/obj/machinery/atmospherics/pipe/simple/cyan/visible,/turf/open/floor/plasteel,/area/atmos) +"clh" = (/obj/machinery/atmospherics/pipe/simple/green/visible{dir = 4},/turf/open/floor/plasteel,/area/atmos) +"cli" = (/obj/machinery/atmospherics/components/trinary/filter{dir = 4; filter_type = "o2"; on = 1},/turf/open/floor/plasteel,/area/atmos) +"clj" = (/obj/machinery/atmospherics/pipe/simple/green/visible{dir = 4; initialize_directions = 12},/turf/open/floor/plasteel,/area/atmos) +"clk" = (/obj/machinery/atmospherics/pipe/simple/green/visible{dir = 9},/turf/open/floor/plasteel,/area/atmos) +"cll" = (/obj/effect/decal/cleanable/cobweb,/obj/structure/reagent_dispensers/watertank,/obj/item/weapon/extinguisher,/turf/open/floor/plasteel/floorgrime,/area/maintenance/incinerator) +"clm" = (/obj/machinery/light{dir = 1},/obj/machinery/atmospherics/components/binary/pump{dir = 2; name = "atmospherics mix pump"},/turf/open/floor/plasteel/floorgrime,/area/maintenance/incinerator) +"cln" = (/obj/machinery/light_switch{pixel_x = 0; pixel_y = 26},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/floorgrime,/area/maintenance/incinerator) +"clo" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plating/warnplate{dir = 1},/area/maintenance/incinerator) +"clp" = (/obj/machinery/disposal/bin,/obj/structure/sign/deathsposal{pixel_x = 0; pixel_y = 32},/obj/structure/disposalpipe/trunk,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plating,/area/maintenance/incinerator) +"clq" = (/obj/machinery/power/smes{capacity = 9e+006; charge = 10000},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/effect/decal/cleanable/cobweb{icon_state = "cobweb2"},/turf/open/floor/plating,/area/maintenance/incinerator) +"clr" = (/obj/effect/landmark{name = "xeno_spawn"; pixel_x = -1},/turf/open/floor/plating{icon_state = "platingdmg3"},/area/maintenance/asmaint) +"cls" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/turf/open/floor/plating,/area/maintenance/asmaint) +"clt" = (/obj/structure/disposalpipe/segment,/obj/structure/grille/broken,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) +"clu" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) +"clv" = (/obj/structure/disposalpipe/segment,/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) +"clw" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) +"clx" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/barricade/wooden,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) +"cly" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plating,/area/maintenance/asmaint2) +"clz" = (/obj/structure/disposalpipe/segment,/turf/open/floor/plating/airless,/area/space/nearstation) +"clA" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/floor/plating,/area/maintenance/asmaint2) +"clB" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/open/floor/plating,/area/maintenance/asmaint2) +"clC" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint2) +"clD" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/open/floor/plating,/area/maintenance/asmaint2) +"clE" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/closed/wall,/area/maintenance/asmaint2) +"clF" = (/obj/machinery/space_heater,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint2) +"clG" = (/obj/structure/sign/securearea{pixel_y = 32},/obj/effect/spawner/lootdrop/maintenance,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint2) +"clH" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/obj/structure/disposalpipe/segment,/turf/open/floor/plating,/area/maintenance/asmaint2) +"clI" = (/obj/structure/rack{dir = 1},/obj/effect/decal/cleanable/cobweb2,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/asmaint2) +"clJ" = (/obj/machinery/door/airlock/maintenance{name = "Research Delivery access"; req_access_txt = "12"},/turf/open/floor/plating,/area/maintenance/asmaint2) +"clK" = (/obj/machinery/light/small{dir = 1},/obj/structure/chair/stool,/turf/open/floor/plating,/area/maintenance/asmaint2) +"clL" = (/obj/effect/landmark/event_spawn,/turf/open/floor/plating,/area/maintenance/asmaint2) +"clM" = (/obj/structure/cable,/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/port) +"clN" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = -32; pixel_y = 0},/turf/open/floor/plating,/area/maintenance/portsolar) +"clO" = (/obj/machinery/power/terminal{dir = 4},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/light/small{dir = 1},/turf/open/floor/plating,/area/maintenance/portsolar) +"clP" = (/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/power/smes,/turf/open/floor/plating,/area/maintenance/portsolar) +"clQ" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"; pixel_y = 0},/turf/closed/wall/r_wall,/area/maintenance/portsolar) +"clR" = (/obj/machinery/camera{c_tag = "Aft Port Solar Access"; dir = 4},/obj/machinery/light/small{dir = 8},/obj/structure/closet/emcloset,/turf/open/floor/plating,/area/maintenance/aft) +"clS" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/floor/plating,/area/maintenance/aft) +"clT" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/open/floor/plating,/area/maintenance/aft) +"clU" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/turf/open/floor/plating,/area/maintenance/aft) +"clV" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plating,/area/maintenance/aft) +"clW" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/turf/open/floor/plating,/area/maintenance/aft) +"clX" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/aft) +"clY" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/open/floor/plating,/area/maintenance/aft) +"clZ" = (/obj/machinery/computer/atmos_alert,/obj/machinery/requests_console{announcementConsole = 1; department = "Chief Engineer's Desk"; departmentType = 3; name = "Chief Engineer RC"; pixel_x = -32; pixel_y = 0},/turf/open/floor/plasteel/neutral{dir = 2},/area/engine/chiefs_office) +"cma" = (/obj/structure/table/reinforced,/obj/item/weapon/clipboard,/obj/item/weapon/lighter,/obj/item/clothing/glasses/meson{pixel_y = 4},/obj/item/weapon/stamp/ce,/obj/item/weapon/stock_parts/cell/high/plus,/turf/open/floor/plasteel/neutral{dir = 2},/area/engine/chiefs_office) +"cmb" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/neutral{dir = 2},/area/engine/chiefs_office) +"cmc" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/open/floor/plasteel/neutral{dir = 2},/area/engine/chiefs_office) +"cmd" = (/obj/structure/grille,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/engine/chiefs_office) +"cme" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/engine/engineering) +"cmf" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/engine/engineering) +"cmg" = (/obj/machinery/camera{c_tag = "Engineering Access"},/obj/structure/closet/radiation,/turf/open/floor/plasteel,/area/engine/engineering) +"cmh" = (/obj/machinery/atmospherics/pipe/simple/green/visible,/obj/machinery/portable_atmospherics/pump,/turf/open/floor/plasteel/red/side{dir = 10},/area/atmos) +"cmi" = (/obj/machinery/computer/atmos_control/tank{frequency = 1441; input_tag = "n2_in"; name = "Nitrogen Supply Control"; output_tag = "n2_out"; sensors = list("n2_sensor" = "Tank")},/turf/open/floor/plasteel/red/side,/area/atmos) +"cmj" = (/obj/machinery/atmospherics/components/binary/pump{dir = 1; name = "N2 Outlet Pump"; on = 1},/turf/open/floor/plasteel/red/side{dir = 6},/area/atmos) +"cmk" = (/obj/machinery/light,/turf/open/floor/plasteel,/area/atmos) +"cml" = (/obj/machinery/atmospherics/pipe/simple/green/visible,/turf/open/floor/plasteel/blue/side{dir = 10},/area/atmos) +"cmm" = (/obj/machinery/computer/atmos_control/tank{frequency = 1441; input_tag = "o2_in"; name = "Oxygen Supply Control"; output_tag = "o2_out"; sensors = list("o2_sensor" = "Tank")},/turf/open/floor/plasteel/blue/side{dir = 0},/area/atmos) +"cmn" = (/obj/machinery/atmospherics/components/binary/pump{dir = 1; name = "O2 Outlet Pump"; on = 1},/turf/open/floor/plasteel/blue/side{dir = 6},/area/atmos) +"cmo" = (/obj/machinery/atmospherics/pipe/simple/cyan/visible,/turf/open/floor/plasteel/arrival{dir = 10},/area/atmos) +"cmp" = (/obj/machinery/computer/atmos_control/tank{frequency = 1441; input_tag = "air_in"; name = "Mixed Air Supply Control"; output_tag = "air_out"; sensors = list("air_sensor" = "Tank")},/turf/open/floor/plasteel/arrival,/area/atmos) +"cmq" = (/obj/machinery/camera{c_tag = "Atmospherics South East"; dir = 1},/obj/machinery/atmospherics/components/binary/pump{dir = 1; name = "Air Outlet Pump"; on = 1},/turf/open/floor/plasteel/arrival{dir = 6},/area/atmos) +"cmr" = (/obj/machinery/door/airlock/external{name = "Atmospherics External Airlock"; req_access_txt = "24"},/turf/open/floor/plating,/area/atmos) +"cms" = (/turf/open/floor/plating,/area/atmos) +"cmt" = (/obj/structure/lattice,/obj/machinery/atmospherics/pipe/simple/yellow/visible{dir = 6},/turf/open/space,/area/space/nearstation) +"cmu" = (/obj/machinery/atmospherics/pipe/simple/yellow/visible{dir = 4},/turf/closed/wall,/area/maintenance/incinerator) +"cmv" = (/obj/machinery/atmospherics/pipe/simple/yellow/visible{dir = 4},/obj/structure/reagent_dispensers/fueltank,/obj/item/weapon/storage/toolbox/emergency,/turf/open/floor/plasteel/floorgrime,/area/maintenance/incinerator) +"cmw" = (/obj/machinery/atmospherics/components/binary/pump{dir = 8; name = "Mix to MiniSat"},/turf/open/floor/plasteel/floorgrime,/area/maintenance/incinerator) +"cmx" = (/obj/machinery/atmospherics/pipe/manifold/general/visible{dir = 4; initialize_directions = 11},/turf/open/floor/plasteel/floorgrime,/area/maintenance/incinerator) +"cmy" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/floorgrime,/area/maintenance/incinerator) +"cmz" = (/turf/open/floor/plasteel/floorgrime,/area/maintenance/incinerator) +"cmA" = (/obj/structure/disposalpipe/segment,/obj/structure/cable/yellow{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/floor/plasteel/floorgrime,/area/maintenance/incinerator) +"cmB" = (/obj/machinery/power/terminal{icon_state = "term"; dir = 1},/obj/machinery/airalarm{desc = "This particular atmos control unit appears to have no access restrictions."; dir = 8; icon_state = "alarm0"; locked = 0; name = "all-access air alarm"; pixel_x = 24; req_access = "0"; req_one_access = "0"},/obj/structure/cable/yellow{d2 = 8; icon_state = "0-8"},/turf/open/floor/plasteel/floorgrime,/area/maintenance/incinerator) +"cmC" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plating,/area/maintenance/asmaint2) +"cmD" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/structure/disposalpipe/segment,/turf/open/floor/plating,/area/maintenance/asmaint2) +"cmE" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/asmaint2) +"cmF" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/open/floor/plating{icon_state = "platingdmg3"},/area/maintenance/asmaint2) +"cmG" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/turf/open/floor/plating,/area/maintenance/asmaint2) +"cmH" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/asmaint2) +"cmI" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint2) +"cmJ" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/turf/open/floor/plating,/area/maintenance/asmaint2) +"cmK" = (/obj/structure/reagent_dispensers/watertank,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint2) +"cmL" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plating,/area/maintenance/asmaint2) +"cmM" = (/obj/structure/rack{dir = 1},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/spawner/lootdrop/maintenance,/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint2) +"cmN" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/turf/open/floor/plating,/area/maintenance/asmaint2) +"cmO" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint2) +"cmP" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/turf/open/floor/plating,/area/maintenance/asmaint2) +"cmQ" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/asmaint2) +"cmR" = (/obj/structure/closet/firecloset,/turf/open/floor/plating,/area/maintenance/asmaint2) +"cmS" = (/obj/machinery/power/tracker,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/open/floor/plasteel/airless/solarpanel,/area/solar/port) +"cmT" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/port) +"cmU" = (/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/port) +"cmV" = (/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/port) +"cmW" = (/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/port) +"cmX" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/airlock/external{name = "Solar Maintenance"; req_access = null; req_access_txt = "10; 13"},/turf/open/floor/plating,/area/maintenance/portsolar) +"cmY" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plating,/area/maintenance/portsolar) +"cmZ" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/open/floor/plating,/area/maintenance/portsolar) +"cna" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/open/floor/plating,/area/maintenance/portsolar) +"cnb" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/open/floor/plating,/area/maintenance/portsolar) +"cnc" = (/obj/machinery/door/airlock/engineering{name = "Aft Port Solar Access"; req_access_txt = "10"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plating,/area/maintenance/portsolar) +"cnd" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/mob/living/simple_animal/mouse,/turf/open/floor/plating,/area/maintenance/aft) +"cne" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/open/floor/plating,/area/maintenance/aft) +"cnf" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/turf/open/floor/plating,/area/maintenance/aft) +"cng" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/open/floor/plating,/area/maintenance/aft) +"cnh" = (/obj/structure/disposalpipe/sortjunction{dir = 8; icon_state = "pipe-j2s"; sortType = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/aft) +"cni" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plating,/area/maintenance/aft) +"cnj" = (/obj/machinery/shieldgen,/turf/open/floor/plating,/area/engine/engineering) +"cnk" = (/obj/machinery/the_singularitygen{anchored = 0},/turf/open/floor/plating,/area/engine/engineering) +"cnl" = (/obj/machinery/button/door{desc = "A door remote control switch for secure storage"; id = "Secure Storage"; name = "Secure Storage Control"; req_access = null; req_access_txt = "11"},/turf/closed/wall/r_wall,/area/engine/engineering) +"cnm" = (/obj/machinery/power/apc{cell_type = 15000; dir = 1; name = "Engineering APC"; pixel_x = 0; pixel_y = 25},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/open/floor/plasteel/yellow/side,/area/engine/engineering) +"cnn" = (/obj/machinery/light{dir = 1},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/floor/plasteel/yellow/side,/area/engine/engineering) +"cno" = (/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/portable_atmospherics/pump,/turf/open/floor/plasteel/yellow/side,/area/engine/engineering) +"cnp" = (/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/table,/turf/open/floor/plasteel/yellow/side,/area/engine/engineering) +"cnq" = (/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/table,/obj/item/weapon/tank/internals/emergency_oxygen/engi,/obj/item/clothing/mask/breath,/turf/open/floor/plasteel/yellow/side,/area/engine/engineering) +"cnr" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/extinguisher_cabinet{pixel_x = -5; pixel_y = 30},/turf/open/floor/plasteel/yellow/side,/area/engine/engineering) +"cns" = (/obj/machinery/airalarm{pixel_y = 23},/obj/machinery/portable_atmospherics/canister/oxygen,/turf/open/floor/plasteel/yellow/side,/area/engine/engineering) +"cnt" = (/turf/closed/wall,/area/engine/engineering) +"cnu" = (/obj/machinery/computer/station_alert,/obj/item/device/radio/intercom{broadcasting = 0; name = "Station Intercom (General)"; pixel_y = 20},/turf/open/floor/plasteel,/area/engine/engineering) +"cnv" = (/obj/machinery/computer/monitor{name = "primary power monitoring console"},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/open/floor/plasteel,/area/engine/engineering) +"cnw" = (/obj/machinery/computer/station_alert,/obj/machinery/button/door{desc = "A remote control-switch for the engineering security doors."; id = "Engineering"; name = "Engineering Lockdown"; pixel_x = -24; pixel_y = -10; req_access_txt = "10"},/obj/machinery/button/door{desc = "A remote control-switch for secure storage."; id = "Secure Storage"; name = "Engineering Secure Storage"; pixel_x = -24; pixel_y = 0; req_access_txt = "11"},/obj/machinery/button/door{id = "atmos"; name = "Atmospherics Lockdown"; pixel_x = -24; pixel_y = 10; req_access_txt = "24"},/turf/open/floor/plasteel/neutral{dir = 2},/area/engine/chiefs_office) +"cnx" = (/obj/structure/chair/office/light{dir = 4},/obj/effect/landmark/start{name = "Chief Engineer"},/turf/open/floor/plasteel/neutral{dir = 2},/area/engine/chiefs_office) +"cny" = (/obj/structure/table/reinforced,/obj/item/weapon/folder/yellow,/obj/item/weapon/paper/monitorkey,/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel/neutral{dir = 2},/area/engine/chiefs_office) +"cnz" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; external_pressure_bound = 101.325; on = 1; pressure_checks = 1},/turf/open/floor/plasteel/neutral{dir = 2},/area/engine/chiefs_office) +"cnA" = (/obj/structure/closet/secure_closet/engineering_chief{req_access_txt = "0"},/turf/open/floor/plasteel/neutral{dir = 2},/area/engine/chiefs_office) +"cnB" = (/obj/structure/grille,/obj/structure/cable,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/engine/chiefs_office) +"cnC" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 8},/turf/open/floor/plasteel,/area/engine/engineering) +"cnD" = (/obj/effect/landmark{name = "lightsout"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/engine/engineering) +"cnE" = (/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/structure/closet/radiation,/turf/open/floor/plasteel,/area/engine/engineering) +"cnF" = (/obj/machinery/atmospherics/pipe/simple/green/visible,/turf/closed/wall/r_wall,/area/atmos) +"cnG" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/yellow/visible,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/atmos) +"cnH" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/green/visible,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/atmos) +"cnI" = (/obj/machinery/atmospherics/pipe/simple/cyan/visible,/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/atmos) +"cnJ" = (/obj/machinery/atmospherics/pipe/simple/cyan/visible,/turf/closed/wall/r_wall,/area/atmos) +"cnK" = (/obj/machinery/atmospherics/components/unary/tank/toxins{dir = 4},/turf/open/floor/plasteel/floorgrime,/area/maintenance/incinerator) +"cnL" = (/obj/machinery/atmospherics/components/binary/pump{dir = 4; name = "plasma tank pump"},/turf/open/floor/plasteel/floorgrime,/area/maintenance/incinerator) +"cnM" = (/obj/machinery/atmospherics/pipe/manifold4w/general{level = 2},/obj/machinery/meter,/turf/open/floor/plasteel/floorgrime,/area/maintenance/incinerator) +"cnN" = (/obj/effect/landmark{name = "blobstart"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/components/binary/pump{dir = 4; name = "Mix to Incinerator"; on = 0},/mob/living/simple_animal/mouse,/turf/open/floor/plasteel/floorgrime,/area/maintenance/incinerator) +"cnO" = (/obj/item/weapon/cigbutt,/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 10},/turf/open/floor/plasteel/floorgrime,/area/maintenance/incinerator) +"cnP" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel/floorgrime,/area/maintenance/incinerator) +"cnQ" = (/obj/machinery/atmospherics/components/unary/portables_connector/visible{name = "output gas connector port"},/obj/machinery/portable_atmospherics/canister,/obj/structure/sign/nosmoking_2{pixel_x = 28},/turf/open/floor/plasteel/floorgrime,/area/maintenance/incinerator) +"cnR" = (/obj/structure/table,/obj/item/weapon/cartridge/medical,/turf/open/floor/plating,/area/maintenance/asmaint) +"cnS" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/closet/firecloset/full,/turf/open/floor/plating,/area/maintenance/asmaint) +"cnT" = (/obj/structure/rack,/obj/effect/spawner/lootdrop/maintenance{lootcount = 2; name = "2maintenance loot spawner"},/obj/item/latexballon,/turf/open/floor/plating,/area/maintenance/asmaint) +"cnU" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/open/floor/plating,/area/maintenance/aft) +"cnV" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/effect/landmark/event_spawn,/turf/open/floor/plating,/area/maintenance/aft) +"cnW" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/aft) +"cnX" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/aft) +"cnY" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/aft) +"cnZ" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/open/floor/plating,/area/maintenance/asmaint2) +"coa" = (/obj/structure/rack,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/asmaint2) +"cob" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating{icon_state = "platingdmg3"},/area/maintenance/asmaint2) +"coc" = (/obj/structure/grille,/obj/structure/window/reinforced/tinted/fulltile,/turf/open/floor/plating,/area/maintenance/asmaint2) +"cod" = (/obj/structure/grille,/obj/structure/window/reinforced/tinted/fulltile,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/open/floor/plating,/area/maintenance/asmaint2) +"coe" = (/obj/machinery/power/apc{dir = 8; name = "Science Maintenance APC"; pixel_x = -25},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/camera{c_tag = "Aft Starboard Solar Access"; dir = 1},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint2) +"cof" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint2) +"cog" = (/obj/structure/closet/emcloset,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/turf/open/floor/plating,/area/maintenance/asmaint2) +"coh" = (/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/port) +"coi" = (/obj/machinery/power/solar_control{id = "portsolar"; name = "Aft Port Solar Control"; track = 0},/obj/structure/cable,/turf/open/floor/plating,/area/maintenance/portsolar) +"coj" = (/turf/open/floor/plating,/area/maintenance/portsolar) +"cok" = (/obj/machinery/power/apc{dir = 4; name = "Aft Port Solar APC"; pixel_x = 23; pixel_y = 2},/obj/machinery/camera{c_tag = "Aft Port Solar Control"; dir = 1},/obj/structure/cable,/turf/open/floor/plating,/area/maintenance/portsolar) +"col" = (/obj/structure/closet/emcloset,/turf/open/floor/plating,/area/maintenance/aft) +"com" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/aft) +"con" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plating,/area/maintenance/aft) +"coo" = (/obj/structure/closet/crate,/obj/item/stack/sheet/metal{amount = 50},/obj/item/stack/rods{amount = 50},/obj/item/stack/sheet/glass{amount = 50},/obj/item/weapon/electronics/airlock,/obj/item/weapon/electronics/airlock,/obj/item/weapon/stock_parts/cell/high/plus,/obj/item/stack/sheet/mineral/plasma{amount = 30},/turf/open/floor/plating,/area/engine/engineering) +"cop" = (/obj/effect/landmark{name = "blobstart"},/turf/open/floor/plating,/area/engine/engineering) +"coq" = (/turf/open/floor/plating,/area/engine/engineering) +"cor" = (/obj/machinery/door/poddoor{id = "Secure Storage"; name = "secure storage"},/turf/open/floor/plating,/area/engine/engineering) +"cos" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/floor/plasteel,/area/engine/engineering) +"cot" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/open/floor/plasteel,/area/engine/engineering) +"cou" = (/turf/open/floor/plasteel,/area/engine/engineering) +"cov" = (/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel,/area/engine/engineering) +"cow" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/turf/open/floor/plasteel,/area/engine/engineering) +"cox" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel,/area/engine/engineering) +"coy" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/sign/nosmoking_2{pixel_y = 32},/obj/machinery/camera{c_tag = "Engineering Power Storage"},/obj/machinery/light{dir = 1},/turf/open/floor/plasteel,/area/engine/engineering) +"coz" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/chair/office/dark{dir = 1},/obj/effect/landmark/start{name = "Station Engineer"},/turf/open/floor/plasteel,/area/engine/engineering) +"coA" = (/obj/machinery/camera{c_tag = "Chief Engineer's Office"; dir = 4; network = list("SS13")},/obj/machinery/airalarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/obj/machinery/computer/card/minor/ce,/turf/open/floor/plasteel/neutral{dir = 2},/area/engine/chiefs_office) +"coB" = (/obj/structure/table/reinforced,/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/pen,/obj/item/weapon/storage/fancy/cigarettes,/turf/open/floor/plasteel/neutral{dir = 2},/area/engine/chiefs_office) +"coC" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel/neutral{dir = 2},/area/engine/chiefs_office) +"coD" = (/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 27},/obj/structure/filingcabinet/chestdrawer,/mob/living/simple_animal/parrot/Poly,/turf/open/floor/plasteel/neutral{dir = 2},/area/engine/chiefs_office) +"coE" = (/obj/machinery/door/poddoor/preopen{id = "Engineering"; name = "engineering security door"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/delivery{name = "floor"},/area/engine/engineering) +"coF" = (/obj/machinery/door/poddoor/preopen{id = "Engineering"; name = "engineering security door"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/delivery{name = "floor"},/area/engine/engineering) +"coG" = (/obj/machinery/door/poddoor/preopen{id = "Engineering"; name = "engineering security door"},/turf/open/floor/plasteel/delivery{name = "floor"},/area/engine/engineering) +"coH" = (/obj/structure/lattice,/obj/machinery/atmospherics/pipe/simple/green/visible,/turf/open/space,/area/space/nearstation) +"coI" = (/obj/structure/lattice,/obj/machinery/atmospherics/pipe/simple/cyan/visible,/turf/open/space,/area/space/nearstation) +"coJ" = (/obj/structure/sign/nosmoking_2{pixel_x = -28},/obj/machinery/atmospherics/components/unary/portables_connector/visible{dir = 4; name = "input gas connector port"},/obj/machinery/portable_atmospherics/canister/oxygen,/turf/open/floor/plasteel/floorgrime,/area/maintenance/incinerator) +"coK" = (/obj/machinery/atmospherics/components/binary/pump{dir = 4; name = "input port pump"},/turf/open/floor/plasteel/floorgrime,/area/maintenance/incinerator) +"coL" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; external_pressure_bound = 101.325; on = 1; pressure_checks = 1},/turf/open/floor/plasteel/floorgrime,/area/maintenance/incinerator) +"coM" = (/obj/machinery/atmospherics/pipe/simple/general/visible,/turf/open/floor/plasteel/floorgrime,/area/maintenance/incinerator) +"coN" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/turf/open/floor/plasteel/floorgrime,/area/maintenance/incinerator) +"coO" = (/obj/machinery/atmospherics/components/binary/pump{dir = 1; name = "Incinerator to Output"; on = 0},/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel/floorgrime,/area/maintenance/incinerator) +"coP" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/closed/wall,/area/maintenance/incinerator) +"coQ" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/closed/wall,/area/maintenance/asmaint) +"coR" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/turf/closed/wall,/area/maintenance/asmaint) +"coS" = (/obj/structure/disposalpipe/segment,/obj/item/weapon/shard,/turf/open/floor/plating,/area/maintenance/asmaint) +"coT" = (/obj/structure/disposalpipe/segment,/obj/item/weapon/cigbutt/roach,/turf/open/floor/plating,/area/maintenance/asmaint) +"coU" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 5},/turf/closed/wall,/area/maintenance/asmaint) +"coV" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/aft) +"coW" = (/obj/structure/chair,/obj/item/weapon/storage/fancy/cigarettes,/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/aft) +"coX" = (/obj/structure/chair,/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/aft) +"coY" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall,/area/maintenance/aft) +"coZ" = (/obj/structure/closet,/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint2) +"cpa" = (/obj/structure/reagent_dispensers/fueltank,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/turf/open/floor/plating,/area/maintenance/asmaint2) +"cpb" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/asmaint2) +"cpc" = (/obj/structure/rack,/obj/effect/decal/cleanable/cobweb2,/obj/effect/spawner/lootdrop/maintenance,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/asmaint2) +"cpd" = (/turf/closed/wall/r_wall,/area/maintenance/starboardsolar) +"cpe" = (/obj/machinery/door/airlock/engineering{name = "Aft Starboard Solar Access"; req_access_txt = "10"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plating,/area/maintenance/starboardsolar) +"cpf" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"; pixel_y = 0},/turf/closed/wall/r_wall,/area/maintenance/starboardsolar) +"cpg" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/port) +"cph" = (/obj/structure/closet/crate,/obj/effect/spawner/lootdrop/maintenance{lootcount = 2; name = "2maintenance loot spawner"},/turf/open/floor/plating,/area/maintenance/aft) +"cpi" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/closed/wall/r_wall,/area/engine/engine_smes) +"cpj" = (/turf/closed/wall/r_wall,/area/engine/engine_smes) +"cpk" = (/obj/effect/spawner/lootdrop/maintenance,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/aft) +"cpl" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plating,/area/maintenance/aft) +"cpm" = (/obj/machinery/portable_atmospherics/canister/toxins,/obj/machinery/light/small{dir = 8},/obj/machinery/camera{c_tag = "Engineering Secure Storage"; dir = 4; network = list("SS13")},/turf/open/floor/plating,/area/engine/engineering) +"cpn" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel,/area/engine/engineering) +"cpo" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/engine/engineering) +"cpp" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/engine/engineering) +"cpq" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/turf/open/floor/plasteel,/area/engine/engineering) +"cpr" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/engine/engineering) +"cps" = (/obj/machinery/disposal/bin,/obj/structure/disposalpipe/trunk{dir = 4},/turf/open/floor/plasteel/neutral{dir = 2},/area/engine/chiefs_office) +"cpt" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel/neutral{dir = 2},/area/engine/chiefs_office) +"cpu" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/turf/open/floor/plasteel/neutral{dir = 2},/area/engine/chiefs_office) +"cpv" = (/obj/item/weapon/cartridge/engineering{pixel_x = 4; pixel_y = 5},/obj/item/weapon/cartridge/engineering{pixel_x = -3; pixel_y = 2},/obj/item/weapon/cartridge/engineering{pixel_x = 3},/obj/structure/table/reinforced,/obj/machinery/light_switch{pixel_x = 27},/obj/item/weapon/cartridge/atmos,/turf/open/floor/plasteel/neutral{dir = 2},/area/engine/chiefs_office) +"cpw" = (/obj/structure/sign/securearea,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall/r_wall,/area/engine/engineering) +"cpx" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'RADIOACTIVE AREA'"; icon_state = "radiation"; name = "RADIOACTIVE AREA"; pixel_x = 0; pixel_y = 0},/turf/closed/wall/r_wall,/area/engine/engineering) +"cpy" = (/obj/machinery/atmospherics/pipe/simple,/obj/structure/grille,/obj/machinery/meter,/turf/closed/wall/r_wall,/area/atmos) +"cpz" = (/obj/machinery/atmospherics/pipe/simple,/obj/structure/grille,/obj/machinery/meter{name = "Mixed Air Tank In"},/turf/closed/wall/r_wall,/area/atmos) +"cpA" = (/obj/machinery/atmospherics/pipe/simple,/obj/structure/grille,/obj/machinery/meter{name = "Mixed Air Tank Out"},/turf/closed/wall/r_wall,/area/atmos) +"cpB" = (/obj/structure/grille,/obj/structure/disposalpipe/segment,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/maintenance/incinerator) +"cpC" = (/obj/structure/chair/stool,/turf/open/floor/plasteel/floorgrime,/area/maintenance/incinerator) +"cpD" = (/obj/machinery/atmospherics/components/binary/valve{name = "Mix to Space"},/turf/open/floor/plasteel/floorgrime,/area/maintenance/incinerator) +"cpE" = (/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 2},/turf/open/floor/plasteel/floorgrime,/area/maintenance/incinerator) +"cpF" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/floorgrime,/area/maintenance/incinerator) +"cpG" = (/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/machinery/atmospherics/pipe/simple/general/visible,/turf/open/floor/plasteel/floorgrime,/area/maintenance/incinerator) +"cpH" = (/obj/machinery/portable_atmospherics/canister,/obj/effect/decal/cleanable/cobweb,/turf/open/floor/plating,/area/maintenance/asmaint) +"cpI" = (/obj/machinery/door/airlock/maintenance{name = "Biohazard Disposals"; req_access_txt = "12"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/asmaint) +"cpJ" = (/obj/structure/disposalpipe/segment,/turf/closed/wall,/area/maintenance/asmaint2) +"cpK" = (/obj/structure/rack,/obj/effect/spawner/lootdrop/maintenance{lootcount = 2; name = "2maintenance loot spawner"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/asmaint2) +"cpL" = (/obj/structure/reagent_dispensers/fueltank,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/asmaint2) +"cpM" = (/obj/machinery/power/apc{dir = 8; name = "Aft Starboard Solar APC"; pixel_x = -26; pixel_y = 3},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/open/floor/plating,/area/maintenance/starboardsolar) +"cpN" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/open/floor/plating,/area/maintenance/starboardsolar) +"cpO" = (/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/power/smes,/turf/open/floor/plating,/area/maintenance/starboardsolar) +"cpP" = (/obj/machinery/light/small{dir = 8},/turf/open/floor/plating,/area/maintenance/aft) +"cpQ" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/floor/plasteel/black,/area/engine/engine_smes) +"cpR" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel/black,/area/engine/engine_smes) +"cpS" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/light{dir = 1},/turf/open/floor/plasteel/black,/area/engine/engine_smes) +"cpT" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/open/floor/plasteel/black,/area/engine/engine_smes) +"cpU" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/aft) +"cpV" = (/obj/machinery/field/generator,/turf/open/floor/plating,/area/engine/engineering) +"cpW" = (/obj/machinery/power/emitter,/turf/open/floor/plating,/area/engine/engineering) +"cpX" = (/obj/structure/table,/obj/machinery/cell_charger,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel,/area/engine/engineering) +"cpY" = (/obj/structure/table,/obj/item/weapon/electronics/airlock,/obj/item/weapon/electronics/airlock,/obj/item/weapon/electronics/apc,/obj/item/weapon/stock_parts/cell/high/plus,/obj/item/weapon/stock_parts/cell/high/plus,/turf/open/floor/plasteel,/area/engine/engineering) +"cpZ" = (/obj/structure/table,/obj/item/weapon/book/manual/engineering_singularity_safety,/obj/item/clothing/gloves/color/yellow,/turf/open/floor/plasteel,/area/engine/engineering) +"cqa" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/engine/engineering) +"cqb" = (/obj/structure/closet/crate{name = "solar pack crate"},/obj/item/solar_assembly,/obj/item/solar_assembly,/obj/item/solar_assembly,/obj/item/solar_assembly,/obj/item/solar_assembly,/obj/item/solar_assembly,/obj/item/solar_assembly,/obj/item/solar_assembly,/obj/item/solar_assembly,/obj/item/solar_assembly,/obj/item/solar_assembly,/obj/item/solar_assembly,/obj/item/solar_assembly,/obj/item/weapon/circuitboard/computer/solar_control,/obj/item/weapon/electronics/tracker,/obj/item/weapon/paper/solar,/turf/open/floor/plasteel,/area/engine/engineering) +"cqc" = (/obj/structure/tank_dispenser,/turf/open/floor/plasteel,/area/engine/engineering) +"cqd" = (/obj/machinery/suit_storage_unit/engine,/turf/open/floor/plasteel,/area/engine/engineering) +"cqe" = (/obj/structure/grille,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/engine/chiefs_office) +"cqf" = (/obj/structure/grille,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/engine/chiefs_office) +"cqg" = (/obj/machinery/door/airlock/glass_command{name = "Chief Engineer"; req_access_txt = "56"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/floor/plasteel/neutral{dir = 2},/area/engine/chiefs_office) +"cqh" = (/obj/structure/grille,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/engine/chiefs_office) +"cqi" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"},/turf/closed/wall/r_wall,/area/engine/chiefs_office) +"cqj" = (/obj/machinery/door/firedoor,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/yellow/side{dir = 9},/area/engine/engineering) +"cqk" = (/obj/machinery/door/firedoor,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/yellow/side{dir = 1},/area/engine/engineering) +"cql" = (/obj/machinery/door/firedoor,/turf/open/floor/plasteel/yellow/side{dir = 5},/area/engine/engineering) +"cqm" = (/obj/machinery/atmospherics/components/unary/outlet_injector/on{dir = 1; frequency = 1441; id = "n2_in"},/turf/open/floor/engine/n2,/area/atmos) +"cqn" = (/obj/machinery/air_sensor{frequency = 1441; id_tag = "n2_sensor"},/turf/open/floor/engine/n2,/area/atmos) +"cqo" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; external_pressure_bound = 0; frequency = 1441; id_tag = "n2_out"; initialize_directions = 1; internal_pressure_bound = 4000; on = 1; pressure_checks = 2; pump_direction = 0},/turf/open/floor/engine/n2,/area/atmos) +"cqp" = (/obj/machinery/atmospherics/components/unary/outlet_injector/on{dir = 1; frequency = 1441; id = "o2_in"},/turf/open/floor/engine/o2,/area/atmos) +"cqq" = (/obj/machinery/air_sensor{frequency = 1441; id_tag = "o2_sensor"},/turf/open/floor/engine/o2,/area/atmos) +"cqr" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; external_pressure_bound = 0; frequency = 1441; id_tag = "o2_out"; initialize_directions = 1; internal_pressure_bound = 4000; on = 1; pressure_checks = 2; pump_direction = 0},/turf/open/floor/engine/o2,/area/atmos) +"cqs" = (/obj/machinery/atmospherics/components/unary/outlet_injector/on{dir = 1; frequency = 1441; id = "air_in"},/turf/open/floor/engine/air,/area/atmos) +"cqt" = (/obj/machinery/air_sensor{frequency = 1441; id_tag = "air_sensor"},/turf/open/floor/engine/air,/area/atmos) +"cqu" = (/obj/machinery/atmospherics/components/unary/vent_pump/high_volume{dir = 1; external_pressure_bound = 0; frequency = 1441; icon_state = "vent_map"; id_tag = "air_out"; internal_pressure_bound = 2000; on = 1; pressure_checks = 2; pump_direction = 0},/turf/open/floor/engine/air,/area/atmos) +"cqv" = (/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -29},/obj/structure/table,/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/pen,/turf/open/floor/plating,/area/maintenance/incinerator) +"cqw" = (/obj/machinery/light/small,/obj/structure/extinguisher_cabinet{pixel_x = 0; pixel_y = -31},/obj/machinery/computer/turbine_computer{id = "incineratorturbine"},/turf/open/floor/plasteel/floorgrime,/area/maintenance/incinerator) +"cqx" = (/obj/machinery/atmospherics/pipe/manifold/general/visible{dir = 8},/obj/machinery/meter,/turf/open/floor/plasteel/floorgrime,/area/maintenance/incinerator) +"cqy" = (/obj/machinery/computer/security/telescreen{desc = "Used for watching the turbine vent."; dir = 1; name = "turbine vent monitor"; network = list("Turbine"); pixel_x = 0; pixel_y = -29},/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{dir = 4},/turf/open/floor/plasteel/floorgrime,/area/maintenance/incinerator) +"cqz" = (/obj/machinery/button/door{id = "auxincineratorvent"; name = "Auxiliary Vent Control"; pixel_x = 6; pixel_y = -24; req_access_txt = "32"},/obj/machinery/button/door{id = "turbinevent"; name = "Turbine Vent Control"; pixel_x = -6; pixel_y = -24; req_access_txt = "32"},/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{dir = 4},/obj/machinery/atmospherics/pipe/simple/general/visible,/turf/open/floor/plasteel/floorgrime,/area/maintenance/incinerator) +"cqA" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/components/binary/valve{dir = 4; name = "Incinerator to Space"},/turf/open/floor/plasteel/floorgrime,/area/maintenance/incinerator) +"cqB" = (/obj/machinery/doorButtons/airlock_controller{idExterior = "incinerator_airlock_exterior"; idSelf = "incinerator_access_control"; idInterior = "incinerator_airlock_interior"; name = "Incinerator Access Console"; pixel_x = 6; pixel_y = -26; req_access_txt = "12"},/obj/machinery/button/ignition{id = "Incinerator"; pixel_x = -6; pixel_y = -24},/obj/machinery/atmospherics/pipe/manifold/general/visible{dir = 4; initialize_directions = 11},/obj/machinery/meter,/turf/open/floor/plasteel/floorgrime,/area/maintenance/incinerator) +"cqC" = (/obj/machinery/atmospherics/components/unary/portables_connector/visible{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) +"cqD" = (/obj/machinery/meter,/obj/machinery/atmospherics/pipe/manifold/general/hidden{icon_state = "manifold"; dir = 1},/obj/structure/disposalpipe/segment,/turf/open/floor/plating,/area/maintenance/asmaint) +"cqE" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/components/binary/pump{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) +"cqF" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/obj/machinery/meter,/turf/open/floor/plating,/area/maintenance/asmaint) +"cqG" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/turf/open/floor/plating,/area/maintenance/asmaint) +"cqH" = (/obj/structure/disposalpipe/segment,/obj/structure/reagent_dispensers/fueltank,/turf/open/floor/plating,/area/maintenance/asmaint) +"cqI" = (/obj/machinery/door/airlock/external{name = "Solar Maintenance"; req_access = null; req_access_txt = "10; 13"},/turf/open/floor/plating,/area/maintenance/aft) +"cqJ" = (/obj/structure/rack,/obj/structure/disposalpipe/segment,/obj/effect/spawner/lootdrop/maintenance{lootcount = 2; name = "2maintenance loot spawner"},/turf/open/floor/plating,/area/maintenance/asmaint2) +"cqK" = (/obj/structure/rack,/obj/effect/spawner/lootdrop/maintenance{lootcount = 3; name = "3maintenance loot spawner"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/asmaint2) +"cqL" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/turf/open/floor/plating,/area/maintenance/asmaint2) +"cqM" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint2) +"cqN" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating{icon_state = "platingdmg3"},/area/maintenance/asmaint2) +"cqO" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/turf/open/floor/plating,/area/maintenance/asmaint2) +"cqP" = (/obj/structure/table,/obj/machinery/cell_charger,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/asmaint2) +"cqQ" = (/obj/structure/chair/stool,/obj/machinery/camera{c_tag = "Aft Starboard Solar Control"; dir = 4; network = list("SS13")},/turf/open/floor/plating,/area/maintenance/starboardsolar) +"cqR" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/floor/plating,/area/maintenance/starboardsolar) +"cqS" = (/obj/machinery/power/terminal{icon_state = "term"; dir = 1},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/light/small{dir = 4},/turf/open/floor/plating,/area/maintenance/starboardsolar) +"cqT" = (/obj/machinery/door/airlock/external{req_access_txt = "13"},/turf/open/floor/plating,/area/maintenance/aft) +"cqU" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 0; pixel_y = 32},/turf/open/floor/plating,/area/maintenance/aft) +"cqV" = (/obj/structure/closet,/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/aft) +"cqW" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/black,/area/engine/engine_smes) +"cqX" = (/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/power/smes/engineering,/turf/open/floor/plasteel/vault{dir = 1},/area/engine/engine_smes) +"cqY" = (/turf/open/floor/plasteel/vault{dir = 8},/area/engine/engine_smes) +"cqZ" = (/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/power/smes/engineering,/turf/open/floor/plasteel/vault{dir = 4},/area/engine/engine_smes) +"cra" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/black,/area/engine/engine_smes) +"crb" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/closed/wall,/area/engine/engineering) +"crc" = (/obj/structure/grille,/obj/structure/window/fulltile,/turf/open/floor/plating,/area/engine/engineering) +"crd" = (/obj/structure/grille,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/window/fulltile,/turf/open/floor/plating,/area/engine/engineering) +"cre" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_engineering{name = "Power Storage"; req_access_txt = "11"; req_one_access_txt = "0"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/engine/engineering) +"crf" = (/obj/structure/grille,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/window/fulltile,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/engine/engineering) +"crg" = (/obj/structure/table,/obj/item/weapon/crowbar/large,/obj/item/weapon/storage/box/lights/mixed,/turf/open/floor/plasteel/yellow/side{dir = 9},/area/engine/engineering) +"crh" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/weapon/storage/belt/utility,/obj/item/weapon/wrench,/obj/item/weapon/weldingtool,/obj/item/clothing/head/welding{pixel_x = -3; pixel_y = 5},/turf/open/floor/plasteel/yellow/side{dir = 1},/area/engine/engineering) +"cri" = (/turf/open/floor/plasteel/yellow/corner{dir = 1},/area/engine/engineering) +"crj" = (/turf/open/floor/plasteel/yellow/corner{dir = 4},/area/engine/engineering) +"crk" = (/obj/machinery/light{dir = 1},/turf/open/floor/plasteel/yellow/side{dir = 1},/area/engine/engineering) +"crl" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/yellow/corner{dir = 1},/area/engine/engineering) +"crm" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/engine/engineering) +"crn" = (/obj/machinery/firealarm{dir = 4; pixel_x = 24},/turf/open/floor/plasteel/yellow/side{dir = 4},/area/engine/engineering) +"cro" = (/turf/open/floor/engine/n2,/area/atmos) +"crp" = (/obj/machinery/portable_atmospherics/canister/nitrogen,/turf/open/floor/engine/n2,/area/atmos) +"crq" = (/turf/open/floor/engine/o2,/area/atmos) +"crr" = (/obj/machinery/portable_atmospherics/canister/oxygen,/turf/open/floor/engine/o2,/area/atmos) +"crs" = (/obj/effect/landmark{name = "xeno_spawn"; pixel_x = -1},/turf/open/floor/engine/air,/area/atmos) +"crt" = (/obj/machinery/portable_atmospherics/canister/air,/obj/effect/landmark/event_spawn,/turf/open/floor/engine/air,/area/atmos) +"cru" = (/turf/open/floor/engine/air,/area/atmos) +"crv" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/scrubbers/visible,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/maintenance/incinerator) +"crw" = (/turf/closed/wall/r_wall,/area/maintenance/incinerator) +"crx" = (/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 2},/turf/closed/wall/r_wall,/area/maintenance/incinerator) +"cry" = (/obj/machinery/door/airlock/glass{autoclose = 0; frequency = 1449; heat_proof = 1; icon_state = "door_locked"; id_tag = "incinerator_airlock_interior"; locked = 1; name = "Turbine Interior Airlock"; req_access_txt = "32"},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/engine,/area/maintenance/incinerator) +"crz" = (/obj/machinery/atmospherics/pipe/simple/general/visible,/turf/closed/wall/r_wall,/area/maintenance/incinerator) +"crA" = (/obj/machinery/atmospherics/pipe/simple/general/hidden{dir = 9},/obj/structure/disposalpipe/segment,/turf/open/floor/plating,/area/maintenance/asmaint) +"crB" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/asmaint) +"crC" = (/obj/structure/disposalpipe/junction{dir = 2; icon_state = "pipe-y"},/turf/open/floor/plating,/area/maintenance/asmaint) +"crD" = (/obj/structure/disposalpipe/segment,/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) +"crE" = (/obj/structure/chair/stool{pixel_y = 8},/turf/open/floor/plating,/area/maintenance/asmaint) +"crF" = (/obj/effect/landmark{name = "xeno_spawn"; pixel_x = -1},/obj/structure/disposalpipe/segment,/turf/open/floor/plating{icon_state = "platingdmg3"},/area/maintenance/asmaint2) +"crG" = (/obj/structure/closet/toolcloset,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 5},/turf/open/floor/plating,/area/maintenance/asmaint2) +"crH" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint2) +"crI" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint2) +"crJ" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/maintenance/asmaint2) +"crK" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/turf/closed/wall,/area/maintenance/asmaint2) +"crL" = (/obj/machinery/power/solar_control{id = "starboardsolar"; name = "Aft Starboard Solar Control"; track = 0},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/open/floor/plating,/area/maintenance/starboardsolar) +"crM" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/open/floor/plating,/area/maintenance/starboardsolar) +"crN" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 0; pixel_y = -32},/turf/open/floor/plating,/area/maintenance/starboardsolar) +"crO" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/black,/area/engine/engine_smes) +"crP" = (/obj/machinery/power/terminal{icon_state = "term"; dir = 1},/obj/structure/cable/yellow{d2 = 4; icon_state = "0-4"},/turf/open/floor/plasteel/vault{dir = 8},/area/engine/engine_smes) +"crQ" = (/obj/structure/cable/yellow{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/open/floor/plasteel/black,/area/engine/engine_smes) +"crR" = (/obj/machinery/power/terminal{icon_state = "term"; dir = 1},/obj/structure/cable/yellow{d2 = 8; icon_state = "0-8"},/turf/open/floor/plasteel/vault{dir = 8},/area/engine/engine_smes) +"crS" = (/obj/machinery/navbeacon{codes_txt = "delivery;dir=2"; freq = 1400; location = "Engineering"},/obj/structure/plasticflaps{opacity = 1},/turf/open/floor/plasteel/bot,/area/engine/engineering) +"crT" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall/r_wall,/area/engine/engineering) +"crU" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'RADIOACTIVE AREA'"; icon_state = "radiation"; name = "RADIOACTIVE AREA"; pixel_x = -32; pixel_y = 0},/obj/structure/disposalpipe/segment,/obj/structure/sign/securearea{pixel_x = 32; pixel_y = 0},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/aft) +"crV" = (/obj/structure/closet/secure_closet/engineering_welding,/obj/machinery/firealarm{dir = 8; pixel_x = -24},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/yellow/side{dir = 9},/area/engine/engineering) +"crW" = (/obj/structure/closet/secure_closet/engineering_electrical,/turf/open/floor/plasteel/yellow/side{dir = 1},/area/engine/engineering) +"crX" = (/obj/machinery/vending/engivend,/turf/open/floor/plasteel/yellow/side{dir = 1},/area/engine/engineering) +"crY" = (/obj/machinery/vending/tool,/turf/open/floor/plasteel/yellow/corner{dir = 1},/area/engine/engineering) +"crZ" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/yellow/corner{dir = 4},/area/engine/engineering) +"csa" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel/yellow/side{dir = 1},/area/engine/engineering) +"csb" = (/obj/machinery/requests_console{announcementConsole = 0; department = "Engineering"; departmentType = 4; name = "Engineering RC"; pixel_y = 30},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel/yellow/side{dir = 1},/area/engine/engineering) +"csc" = (/obj/structure/sign/nosmoking_2{pixel_y = 32},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/open/floor/plasteel/yellow/side{dir = 1},/area/engine/engineering) +"csd" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/open/floor/plasteel/yellow/corner{dir = 1},/area/engine/engineering) +"cse" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/open/floor/plasteel,/area/engine/engineering) +"csf" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/open/floor/plasteel,/area/engine/engineering) +"csg" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/engine/engineering) +"csh" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/engine/engineering) +"csi" = (/obj/structure/closet/secure_closet/engineering_personal,/turf/open/floor/plasteel/yellow/side{dir = 4},/area/engine/engineering) +"csj" = (/obj/machinery/light/small,/turf/open/floor/engine/n2,/area/atmos) +"csk" = (/obj/machinery/light/small,/turf/open/floor/engine/o2,/area/atmos) +"csl" = (/obj/machinery/light/small,/turf/open/floor/engine/air,/area/atmos) +"csm" = (/obj/structure/lattice,/obj/machinery/atmospherics/components/binary/pump{dir = 2; name = "Incinerator Output Pump"; on = 1},/turf/open/space,/area/maintenance/incinerator) +"csn" = (/obj/machinery/atmospherics/components/binary/pump{dir = 2; on = 1},/obj/machinery/doorButtons/access_button{idDoor = "incinerator_airlock_exterior"; idSelf = "incinerator_access_control"; layer = 3.1; name = "Incinerator airlock control"; pixel_x = 8; pixel_y = -24},/obj/machinery/light/small{dir = 8},/obj/structure/sign/fire{pixel_x = -32; pixel_y = 0},/turf/open/floor/engine,/area/maintenance/incinerator) +"cso" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/engine,/area/maintenance/incinerator) +"csp" = (/obj/machinery/atmospherics/components/binary/pump{dir = 1; on = 1},/obj/structure/sign/fire{pixel_x = 32; pixel_y = 0},/obj/machinery/doorButtons/access_button{idSelf = "incinerator_access_control"; idDoor = "incinerator_airlock_interior"; name = "Incinerator airlock control"; pixel_x = -8; pixel_y = 24},/obj/machinery/light/small{dir = 4},/turf/open/floor/engine,/area/maintenance/incinerator) +"csq" = (/obj/machinery/light/small,/obj/structure/disposalpipe/segment,/turf/open/floor/plating,/area/maintenance/asmaint) +"csr" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/turf/open/floor/plating,/area/maintenance/asmaint) +"css" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/disposalpipe/segment,/turf/open/floor/plating,/area/maintenance/asmaint) +"cst" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/asmaint) +"csu" = (/obj/machinery/light/small,/obj/structure/table,/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/effect/spawner/lootdrop/maintenance,/obj/item/weapon/clipboard,/turf/open/floor/plating,/area/maintenance/asmaint) +"csv" = (/obj/structure/table,/obj/effect/spawner/lootdrop/maintenance{lootcount = 2; name = "2maintenance loot spawner"},/turf/open/floor/plating,/area/maintenance/asmaint) +"csw" = (/obj/structure/disposalpipe/segment,/turf/open/floor/plating,/area/maintenance/asmaint2) +"csx" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/maintenance/starboardsolar) +"csy" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/door/airlock/external{name = "Solar Maintenance"; req_access = null; req_access_txt = "10; 13"},/turf/open/floor/plating,/area/maintenance/starboardsolar) +"csz" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/port) +"csA" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 2; on = 1},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/black,/area/engine/engine_smes) +"csB" = (/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/power/smes/engineering,/turf/open/floor/plasteel/vault{dir = 4},/area/engine/engine_smes) +"csC" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/vault{dir = 8},/area/engine/engine_smes) +"csD" = (/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/power/smes/engineering,/turf/open/floor/plasteel/vault{dir = 1},/area/engine/engine_smes) +"csE" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/camera{c_tag = "SMES Room"; dir = 8; network = list("SS13"); pixel_x = 0; pixel_y = 0},/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/black,/area/engine/engine_smes) +"csF" = (/obj/machinery/door/window/southleft{base_state = "left"; dir = 2; icon_state = "left"; name = "Engineering Delivery"; req_access_txt = "10"},/turf/open/floor/plasteel/delivery,/area/engine/engineering) +"csG" = (/obj/structure/disposalpipe/segment,/obj/machinery/door/airlock/maintenance{name = "Engineering Maintenance"; req_access_txt = "10"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/engine/engineering) +"csH" = (/obj/machinery/camera{c_tag = "Engineering West"; dir = 4; network = list("SS13")},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/yellow/corner{dir = 1},/area/engine/engineering) +"csI" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/engine/engineering) +"csJ" = (/obj/structure/cable/yellow{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/floor/plasteel,/area/engine/engineering) +"csK" = (/obj/machinery/computer/security/telescreen{desc = "Used for watching the singularity chamber."; dir = 1; layer = 4; name = "Singularity Engine Telescreen"; network = list("Singularity"); pixel_x = 0; pixel_y = -30},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel,/area/engine/engineering) +"csL" = (/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/open/floor/plasteel,/area/engine/engineering) +"csM" = (/obj/effect/landmark/start{name = "Station Engineer"},/turf/open/floor/plasteel,/area/engine/engineering) +"csN" = (/obj/structure/closet/secure_closet/engineering_personal,/obj/machinery/airalarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/turf/open/floor/plasteel/yellow/side{dir = 4},/area/engine/engineering) +"csO" = (/obj/structure/lattice,/obj/machinery/atmospherics/pipe/simple/scrubbers/visible,/turf/open/space,/area/maintenance/incinerator) +"csP" = (/obj/machinery/door/airlock/glass{autoclose = 0; frequency = 1449; heat_proof = 1; icon_state = "door_locked"; id_tag = "incinerator_airlock_exterior"; locked = 1; name = "Turbine Exterior Airlock"; req_access_txt = "32"},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/engine,/area/maintenance/incinerator) +"csQ" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/turf/closed/wall,/area/maintenance/asmaint) +"csR" = (/obj/machinery/atmospherics/components/binary/pump{dir = 2; name = "Waste Out"; on = 1},/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) +"csS" = (/obj/structure/disposalpipe/junction{dir = 4; icon_state = "pipe-j2"},/turf/open/floor/plating,/area/maintenance/asmaint) +"csT" = (/obj/structure/closet/emcloset,/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/turf/open/floor/plating,/area/maintenance/asmaint) +"csU" = (/obj/structure/disposalpipe/segment,/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/asmaint2) +"csV" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plating,/area/maintenance/starboardsolar) +"csW" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/window/reinforced,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/black,/area/engine/engine_smes) +"csX" = (/obj/structure/window/reinforced,/obj/structure/cable/yellow{d2 = 4; icon_state = "0-4"},/obj/machinery/power/terminal{icon_state = "term"; dir = 1},/turf/open/floor/plasteel/black,/area/engine/engine_smes) +"csY" = (/obj/machinery/door/window{name = "SMES Chamber"; req_access_txt = "32"},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable/yellow{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/open/floor/plasteel/black,/area/engine/engine_smes) +"csZ" = (/obj/machinery/power/terminal{icon_state = "term"; dir = 1},/obj/structure/window/reinforced,/obj/structure/cable/yellow{d2 = 8; icon_state = "0-8"},/turf/open/floor/plasteel/black,/area/engine/engine_smes) +"cta" = (/obj/structure/window/reinforced,/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 8},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/open/floor/plasteel/black,/area/engine/engine_smes) +"ctb" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall/r_wall,/area/engine/engine_smes) +"ctc" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/light{dir = 1},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/warning{dir = 8},/area/engine/engine_smes) +"ctd" = (/obj/machinery/door/firedoor,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/camera{c_tag = "SMES Access"; dir = 8; network = list("SS13"); pixel_x = 0; pixel_y = 0},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/turf/open/floor/plasteel/warning{dir = 4},/area/engine/engine_smes) +"cte" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"; pixel_x = -32; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/loadingarea,/area/engine/engineering) +"ctf" = (/obj/machinery/light/small{dir = 1},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/manifold4w/scrubbers,/turf/open/floor/plasteel,/area/engine/engineering) +"ctg" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/engine/engineering) +"cth" = (/obj/machinery/firealarm{pixel_y = 24},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/engine/engineering) +"cti" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/sign/nosmoking_2{pixel_y = 32},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/engine/engineering) +"ctj" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/extinguisher_cabinet{pixel_x = -5; pixel_y = 30},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/engine/engineering) +"ctk" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/firedoor,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/engine/engineering) +"ctl" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/airalarm{pixel_y = 23},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/engine/engineering) +"ctm" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/engine/engineering) +"ctn" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,/turf/open/floor/plasteel,/area/engine/engineering) +"cto" = (/obj/structure/table,/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/pen,/obj/item/weapon/storage/firstaid/fire,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/engine/engineering) +"ctp" = (/obj/effect/landmark/start{name = "Station Engineer"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/engine/engineering) +"ctq" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/turf/open/floor/plasteel,/area/engine/engineering) +"ctr" = (/obj/structure/closet/radiation,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/engine/engineering) +"cts" = (/obj/machinery/door/firedoor,/obj/machinery/door/poddoor/shutters/preopen{id = "Singularity"; name = "radiation shutters"},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/bot{dir = 2},/area/engine/engineering) +"ctt" = (/obj/structure/closet/radiation,/turf/open/floor/plasteel,/area/engine/engineering) +"ctu" = (/obj/structure/table,/obj/item/device/flashlight{pixel_y = 5},/obj/item/clothing/ears/earmuffs{pixel_x = -5; pixel_y = 6},/obj/item/weapon/airlock_painter,/turf/open/floor/plasteel,/area/engine/engineering) +"ctv" = (/obj/machinery/camera{c_tag = "Engineering East"; dir = 8; network = list("SS13"); pixel_x = 0; pixel_y = 0},/obj/structure/closet/wardrobe/engineering_yellow,/turf/open/floor/plasteel/yellow/corner{dir = 4},/area/engine/engineering) +"ctw" = (/obj/machinery/atmospherics/components/unary/outlet_injector/on{dir = 1; frequency = 1441; id = "inc_in"},/turf/open/floor/engine/vacuum,/area/maintenance/incinerator) +"ctx" = (/obj/machinery/igniter{icon_state = "igniter0"; id = "Incinerator"; luminosity = 2; on = 0},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/engine/vacuum,/area/maintenance/incinerator) +"cty" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; external_pressure_bound = 0; initialize_directions = 1; internal_pressure_bound = 4000; on = 0; pressure_checks = 2; pump_direction = 0},/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 0; pixel_y = -32},/turf/open/floor/engine/vacuum,/area/maintenance/incinerator) +"ctz" = (/obj/machinery/door/poddoor{id = "auxincineratorvent"; name = "Auxiliary Incinerator Vent"},/turf/open/floor/engine/vacuum,/area/maintenance/incinerator) +"ctA" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/maintenance/asmaint) +"ctB" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/turf/open/floor/plating,/area/maintenance/asmaint2) +"ctC" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint2) +"ctD" = (/obj/structure/table,/obj/item/weapon/weldingtool,/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/turf/open/floor/plating,/area/maintenance/asmaint2) +"ctE" = (/obj/machinery/space_heater,/turf/open/floor/plating,/area/maintenance/asmaint2) +"ctF" = (/obj/machinery/power/port_gen/pacman,/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/warning{dir = 9},/area/engine/engine_smes) +"ctG" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/warning{dir = 1},/area/engine/engine_smes) +"ctH" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/open/floor/plasteel/warning{dir = 1},/area/engine/engine_smes) +"ctI" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel/warning{dir = 1},/area/engine/engine_smes) +"ctJ" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel/warning{dir = 5},/area/engine/engine_smes) +"ctK" = (/obj/machinery/door/airlock/engineering{name = "SMES Room"; req_access_txt = "32"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel/delivery{name = "floor"},/area/engine/engine_smes) +"ctL" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel/warning{dir = 8},/area/engine/engine_smes) +"ctM" = (/obj/machinery/door/firedoor,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel/warning{dir = 4},/area/engine/engine_smes) +"ctN" = (/obj/machinery/door/airlock/engineering{name = "SMES Room"; req_access_txt = "32"},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/delivery{name = "floor"},/area/engine/engine_smes) +"ctO" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/warning{dir = 8},/area/engine/engineering) +"ctP" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/engine/engineering) +"ctQ" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden,/turf/open/floor/plasteel,/area/engine/engineering) +"ctR" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/engine/engineering) +"ctS" = (/obj/machinery/door/firedoor,/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/engine/engineering) +"ctT" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/engine/engineering) +"ctU" = (/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/engine/engineering) +"ctV" = (/obj/structure/table,/obj/item/weapon/book/manual/wiki/engineering_hacking{pixel_x = 3; pixel_y = 3},/obj/item/weapon/book/manual/wiki/engineering_construction,/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/open/floor/plasteel,/area/engine/engineering) +"ctW" = (/obj/machinery/hologram/holopad,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/engine/engineering) +"ctX" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/engine/engineering) +"ctY" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/clothing/gloves/color/black,/obj/item/weapon/extinguisher{pixel_x = 8},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/turf/open/floor/plasteel,/area/engine/engineering) +"ctZ" = (/turf/open/floor/plating/warnplate{dir = 9},/area/engine/engineering) +"cua" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plating/warnplate{dir = 1},/area/engine/engineering) +"cub" = (/obj/machinery/camera{c_tag = "Engineering Center"; dir = 2; pixel_x = 23},/obj/machinery/light{dir = 1},/turf/open/floor/plating/warnplate{dir = 1},/area/engine/engineering) +"cuc" = (/turf/open/floor/plating/warnplate{dir = 5},/area/engine/engineering) +"cud" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/clothing/gloves/color/yellow,/obj/item/weapon/storage/belt/utility,/turf/open/floor/plasteel,/area/engine/engineering) +"cue" = (/obj/machinery/hologram/holopad,/turf/open/floor/plasteel,/area/engine/engineering) +"cuf" = (/obj/structure/table,/obj/item/weapon/book/manual/wiki/engineering_guide,/obj/item/weapon/book/manual/engineering_particle_accelerator{pixel_y = 6},/turf/open/floor/plasteel,/area/engine/engineering) +"cug" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/turf/open/floor/plasteel,/area/engine/engineering) +"cuh" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/open/floor/plasteel,/area/engine/engineering) +"cui" = (/obj/machinery/light{dir = 4; icon_state = "tube1"},/turf/open/floor/plasteel/warning{dir = 5},/area/engine/engineering) +"cuj" = (/obj/structure/closet/emcloset,/obj/machinery/light/small{dir = 1},/turf/open/floor/plating,/area/engine/engineering) +"cuk" = (/turf/open/floor/plating,/obj/structure/shuttle/engine/propulsion/burst{dir = 4},/turf/closed/wall/shuttle{icon_state = "swall_f6"; dir = 2},/area/shuttle/pod_4) +"cul" = (/turf/closed/wall/shuttle{icon_state = "swall12"; dir = 2},/area/shuttle/pod_4) +"cum" = (/turf/open/space,/turf/closed/wall/shuttle{dir = 2; icon_state = "swall_f10"; layer = 2},/area/shuttle/pod_4) +"cun" = (/obj/machinery/power/compressor{comp_id = "incineratorturbine"; dir = 1; luminosity = 2},/obj/structure/cable/yellow,/obj/structure/cable/yellow{d2 = 2; icon_state = "0-2"},/obj/machinery/camera{c_tag = "Turbine Chamber"; dir = 4; network = list("Turbine")},/turf/open/floor/engine/vacuum,/area/maintenance/incinerator) +"cuo" = (/obj/structure/lattice,/obj/machinery/atmospherics/pipe/simple/scrubbers/visible,/turf/open/space,/area/space/nearstation) +"cup" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/starboard) +"cuq" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; on = 1},/turf/open/floor/plasteel/warning{dir = 8},/area/engine/engine_smes) +"cur" = (/turf/open/floor/plasteel,/area/engine/engine_smes) +"cus" = (/turf/open/floor/plasteel/warning/corner{dir = 2},/area/engine/engine_smes) +"cut" = (/obj/machinery/light,/turf/open/floor/plasteel/warning,/area/engine/engine_smes) +"cuu" = (/obj/machinery/airalarm{dir = 1; icon_state = "alarm0"; pixel_y = -22},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/warning{dir = 6},/area/engine/engine_smes) +"cuv" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; on = 1},/turf/open/floor/plasteel/warning{dir = 8},/area/engine/engine_smes) +"cuw" = (/obj/machinery/door/firedoor,/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/obj/machinery/airalarm{dir = 1; icon_state = "alarm0"; pixel_y = -22},/turf/open/floor/plasteel/warning{dir = 4},/area/engine/engine_smes) +"cux" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"; pixel_x = -32; pixel_y = 0},/turf/open/floor/plasteel,/area/engine/engineering) +"cuy" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/engine/engineering) +"cuz" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/engine/engineering) +"cuA" = (/obj/structure/table,/obj/item/stack/sheet/glass{amount = 50},/obj/item/stack/sheet/glass{amount = 50},/obj/item/stack/sheet/glass{amount = 50},/turf/open/floor/plasteel,/area/engine/engineering) +"cuB" = (/obj/structure/table,/obj/item/clothing/gloves/color/yellow,/obj/item/weapon/storage/toolbox/electrical{pixel_y = 5},/turf/open/floor/plasteel,/area/engine/engineering) +"cuC" = (/obj/effect/landmark/start{name = "Station Engineer"},/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/open/floor/plasteel,/area/engine/engineering) +"cuD" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; on = 1},/turf/open/floor/plasteel,/area/engine/engineering) +"cuE" = (/obj/structure/cable/yellow{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel,/area/engine/engineering) +"cuF" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/firedoor,/obj/machinery/door/poddoor/shutters/preopen{id = "Singularity"; name = "radiation shutters"},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel/bot{dir = 2},/area/engine/engineering) +"cuG" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable/yellow{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/turf/open/floor/plating/warnplate{dir = 8},/area/engine/engineering) +"cuH" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/yellow{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/open/floor/plating,/area/engine/engineering) +"cuI" = (/obj/structure/particle_accelerator/end_cap,/turf/open/floor/plating,/area/engine/engineering) +"cuJ" = (/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/effect/landmark/event_spawn,/turf/open/floor/plating,/area/engine/engineering) +"cuK" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plating/warnplate{dir = 4},/area/engine/engineering) +"cuL" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/open/floor/plasteel,/area/engine/engineering) +"cuM" = (/obj/effect/landmark/start{name = "Station Engineer"},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,/turf/open/floor/plasteel,/area/engine/engineering) +"cuN" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/engine/engineering) +"cuO" = (/turf/open/floor/plasteel/warning{dir = 4},/area/engine/engineering) +"cuP" = (/obj/machinery/door/airlock/external{name = "Escape Pod Four"; req_access = null; req_access_txt = "0"},/turf/open/floor/plating,/area/engine/engineering) +"cuQ" = (/obj/machinery/door/airlock/shuttle{name = "Escape Pod Airlock"},/obj/docking_port/mobile/pod{dir = 4; id = "pod4"; name = "escape pod 4"},/turf/open/floor/plasteel/shuttle,/area/shuttle/pod_4) +"cuR" = (/obj/item/device/radio/intercom{pixel_y = 25},/obj/item/weapon/storage/pod{pixel_x = 6; pixel_y = -32},/obj/structure/chair{dir = 4},/turf/open/floor/plasteel/shuttle,/area/shuttle/pod_4) +"cuS" = (/obj/machinery/computer/shuttle/pod{pixel_y = -32; possible_destinations = "pod_asteroid4"; shuttleId = "pod4"},/obj/structure/chair{dir = 4},/obj/machinery/status_display{density = 0; layer = 3; pixel_x = 0; pixel_y = 32},/turf/open/floor/plasteel/shuttle,/area/shuttle/pod_4) +"cuT" = (/obj/structure/grille,/obj/structure/window/shuttle,/turf/open/floor/plating,/area/shuttle/pod_4) +"cuU" = (/obj/docking_port/stationary/random{dir = 4; id = "pod_asteroid4"; name = "asteroid"},/turf/open/space,/area/space) +"cuV" = (/obj/machinery/power/turbine{luminosity = 2},/obj/structure/cable/yellow,/turf/open/floor/engine/vacuum,/area/maintenance/incinerator) +"cuW" = (/obj/item/weapon/wrench,/obj/structure/lattice/catwalk,/turf/open/space,/area/space/nearstation) +"cuX" = (/obj/machinery/atmospherics/components/unary/outlet_injector/on{dir = 1},/turf/open/floor/plating/airless,/area/space/nearstation) +"cuY" = (/obj/effect/decal/cleanable/dirt,/obj/structure/table_frame,/obj/item/weapon/wirerod,/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/asmaint2) +"cuZ" = (/obj/effect/decal/cleanable/dirt,/turf/open/floor/plating,/area/maintenance/asmaint2) +"cva" = (/obj/structure/disposaloutlet,/obj/structure/disposalpipe/trunk{dir = 1},/turf/open/floor/plating/airless,/area/space) +"cvb" = (/obj/machinery/door/airlock{name = "Observatory Access"},/turf/open/floor/plating,/area/maintenance/aft) +"cvc" = (/obj/structure/cable,/obj/machinery/power/apc{dir = 2; name = "SMES room APC"; pixel_y = -24},/turf/open/floor/plasteel/warning{dir = 10},/area/engine/engine_smes) +"cvd" = (/obj/structure/chair/office/light{dir = 4},/obj/machinery/firealarm{dir = 1; pixel_y = -24},/turf/open/floor/plasteel/warning,/area/engine/engine_smes) +"cve" = (/obj/structure/table,/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -35},/obj/item/weapon/stock_parts/cell/high/plus,/turf/open/floor/plasteel/warning{dir = 6},/area/engine/engine_smes) +"cvf" = (/obj/structure/table,/obj/machinery/camera{c_tag = "Engineering Storage"; dir = 4; network = list("SS13")},/turf/open/floor/plasteel,/area/engine/engineering) +"cvg" = (/obj/structure/table,/obj/item/stack/rods{amount = 50},/turf/open/floor/plasteel,/area/engine/engineering) +"cvh" = (/obj/structure/table,/obj/item/weapon/storage/toolbox/mechanical{pixel_y = 5},/obj/item/device/flashlight{pixel_x = 1; pixel_y = 5},/obj/item/device/flashlight{pixel_x = 1; pixel_y = 5},/turf/open/floor/plasteel/warning{dir = 2},/area/engine/engineering) +"cvi" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'RADIOACTIVE AREA'"; icon_state = "radiation"; name = "RADIOACTIVE AREA"; pixel_x = 0; pixel_y = -32},/obj/machinery/light,/turf/open/floor/plasteel/warning{dir = 2},/area/engine/engineering) +"cvj" = (/turf/open/floor/plasteel/warning{dir = 2},/area/engine/engineering) +"cvk" = (/obj/item/clothing/glasses/meson,/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/warning{dir = 2},/area/engine/engineering) +"cvl" = (/obj/structure/chair/stool,/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/warning{dir = 2},/area/engine/engineering) +"cvm" = (/obj/machinery/button/door{id = "Singularity"; name = "Shutters Control"; pixel_x = 25; pixel_y = 0; req_access_txt = "11"},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/warning{dir = 2},/area/engine/engineering) +"cvn" = (/obj/machinery/button/door{id = "Singularity"; name = "Shutters Control"; pixel_x = -25; pixel_y = 0; req_access_txt = "11"},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plating/warnplate{dir = 8},/area/engine/engineering) +"cvo" = (/obj/machinery/particle_accelerator/control_box,/obj/structure/cable/yellow,/turf/open/floor/plating,/area/engine/engineering) +"cvp" = (/obj/structure/particle_accelerator/fuel_chamber,/turf/open/floor/plating,/area/engine/engineering) +"cvq" = (/obj/effect/landmark/start{name = "Station Engineer"},/turf/open/floor/plating,/area/engine/engineering) +"cvr" = (/obj/machinery/button/door{id = "Singularity"; name = "Shutters Control"; pixel_x = 25; pixel_y = 0; req_access_txt = "11"},/turf/open/floor/plating/warnplate{dir = 4},/area/engine/engineering) +"cvs" = (/obj/machinery/button/door{id = "Singularity"; name = "Shutters Control"; pixel_x = -25; pixel_y = 0; req_access_txt = "11"},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/warning{dir = 2},/area/engine/engineering) +"cvt" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/warning{dir = 2},/area/engine/engineering) +"cvu" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/clothing/mask/gas{pixel_x = 3; pixel_y = 3},/obj/item/clothing/mask/gas,/obj/item/clothing/mask/gas{pixel_x = -3; pixel_y = -3},/turf/open/floor/plasteel/warning{dir = 2},/area/engine/engineering) +"cvv" = (/obj/structure/closet/firecloset,/turf/open/floor/plasteel,/area/engine/engineering) +"cvw" = (/obj/structure/sign/pods{pixel_x = 32; pixel_y = 0},/turf/open/floor/plasteel/warning{dir = 6},/area/engine/engineering) +"cvx" = (/obj/machinery/camera{c_tag = "Engineering Escape Pod"; dir = 4; network = list("SS13")},/turf/open/floor/plating,/area/engine/engineering) +"cvy" = (/turf/open/floor/plating,/obj/structure/shuttle/engine/propulsion/burst{dir = 4},/turf/closed/wall/shuttle{icon_state = "swall_f5"; dir = 2},/area/shuttle/pod_4) +"cvz" = (/turf/open/space,/turf/closed/wall/shuttle{icon_state = "swall_f9"; dir = 2},/area/shuttle/pod_4) +"cvA" = (/obj/effect/landmark{name = "carpspawn"},/turf/open/space,/area/space/nearstation) +"cvB" = (/obj/machinery/atmospherics/components/unary/outlet_injector/on{dir = 1},/turf/open/floor/plating/airless,/area/maintenance/incinerator) +"cvC" = (/obj/structure/sign/fire{pixel_x = 0; pixel_y = 0},/turf/closed/wall/r_wall,/area/maintenance/incinerator) +"cvD" = (/obj/machinery/door/poddoor{id = "turbinevent"; name = "Turbine Vent"},/turf/open/floor/engine/vacuum,/area/maintenance/incinerator) +"cvE" = (/obj/effect/decal/cleanable/dirt,/obj/machinery/light/small{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint2) +"cvF" = (/obj/effect/decal/cleanable/cobweb2,/turf/open/floor/plating,/area/maintenance/aft) +"cvG" = (/obj/structure/table,/obj/item/stack/sheet/plasteel{amount = 10},/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/open/floor/plasteel,/area/engine/engineering) +"cvH" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; external_pressure_bound = 101.325; on = 1; pressure_checks = 1},/turf/open/floor/plasteel,/area/engine/engineering) +"cvI" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel,/area/engine/engineering) +"cvJ" = (/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/machinery/disposal/bin,/obj/structure/disposalpipe/trunk{dir = 8},/turf/open/floor/plasteel,/area/engine/engineering) +"cvK" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/airlock/external{name = "Engineering External Access"; req_access = null; req_access_txt = "10;13"},/turf/open/floor/plating,/area/engine/engineering) +"cvL" = (/obj/machinery/door/poddoor/shutters/preopen{id = "Singularity"; name = "radiation shutters"},/turf/open/floor/plating,/area/engine/engineering) +"cvM" = (/obj/machinery/door/poddoor/shutters/preopen{id = "Singularity"; name = "radiation shutters"},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plating,/area/engine/engineering) +"cvN" = (/obj/item/stack/cable_coil{pixel_x = 3; pixel_y = -7},/obj/item/stack/cable_coil{pixel_x = 3; pixel_y = -7},/obj/item/weapon/crowbar,/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plating/warnplate{dir = 8},/area/engine/engineering) +"cvO" = (/obj/structure/chair/stool,/turf/open/floor/plating,/area/engine/engineering) +"cvP" = (/obj/structure/particle_accelerator/power_box,/turf/open/floor/plating,/area/engine/engineering) +"cvQ" = (/obj/item/weapon/screwdriver,/turf/open/floor/plating,/area/engine/engineering) +"cvR" = (/turf/open/floor/plating/warnplate{dir = 4},/area/engine/engineering) +"cvS" = (/obj/machinery/door/airlock/external{name = "External Access"; req_access = null; req_access_txt = "13"},/turf/open/floor/plating,/area/maintenance/asmaint2) +"cvT" = (/obj/effect/decal/cleanable/dirt,/obj/structure/closet/emcloset,/turf/open/floor/plating,/area/maintenance/asmaint2) +"cvU" = (/obj/structure/cable,/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/starboard) +"cvV" = (/obj/structure/table,/obj/effect/spawner/lootdrop/maintenance{lootcount = 2; name = "2maintenance loot spawner"},/turf/open/floor/plating,/area/maintenance/aft) +"cvW" = (/obj/structure/chair,/turf/open/floor/plating,/area/maintenance/aft) +"cvX" = (/obj/machinery/light/small{dir = 4},/turf/open/floor/plating,/area/maintenance/aft) +"cvY" = (/obj/structure/table,/obj/item/stack/cable_coil{pixel_x = 3; pixel_y = -7},/obj/item/stack/cable_coil,/obj/item/weapon/electronics/airlock,/obj/item/weapon/electronics/airlock,/turf/open/floor/plasteel,/area/engine/engineering) +"cvZ" = (/obj/structure/table,/obj/item/stack/sheet/metal{amount = 50},/obj/item/stack/sheet/metal{amount = 50},/obj/item/stack/sheet/metal{amount = 50},/obj/item/stack/sheet/metal{amount = 50},/turf/open/floor/plasteel,/area/engine/engineering) +"cwa" = (/obj/structure/table,/obj/item/weapon/folder/yellow,/obj/item/clothing/ears/earmuffs{pixel_x = -3; pixel_y = -2},/turf/open/floor/plasteel,/area/engine/engineering) +"cwb" = (/obj/structure/reagent_dispensers/fueltank,/turf/open/floor/plasteel,/area/engine/engineering) +"cwc" = (/obj/structure/reagent_dispensers/watertank,/turf/open/floor/plasteel,/area/engine/engineering) +"cwd" = (/obj/machinery/light/small{dir = 8},/obj/structure/closet/emcloset,/turf/open/floor/plating,/area/engine/engineering) +"cwe" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 32},/turf/open/floor/plating,/area/engine/engineering) +"cwf" = (/obj/structure/reagent_dispensers/fueltank,/turf/open/floor/plating/warnplate{dir = 1},/area/engine/engineering) +"cwg" = (/obj/machinery/power/rad_collector{anchored = 1},/obj/structure/cable/yellow,/turf/open/floor/plating/warnplate{dir = 1},/area/engine/engineering) +"cwh" = (/obj/machinery/power/rad_collector{anchored = 1},/obj/item/weapon/tank/internals/plasma,/obj/structure/cable/yellow,/turf/open/floor/plating/warnplate{dir = 1},/area/engine/engineering) +"cwi" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/engine/engineering) +"cwj" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plating/warnplate{dir = 8},/area/engine/engineering) +"cwk" = (/obj/structure/particle_accelerator/particle_emitter/left,/turf/open/floor/plating,/area/engine/engineering) +"cwl" = (/obj/structure/particle_accelerator/particle_emitter/center,/turf/open/floor/plating,/area/engine/engineering) +"cwm" = (/obj/structure/particle_accelerator/particle_emitter/right,/turf/open/floor/plating,/area/engine/engineering) +"cwn" = (/obj/structure/reagent_dispensers/watertank,/turf/open/floor/plating/warnplate{dir = 1},/area/engine/engineering) +"cwo" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = -32},/turf/open/floor/plating,/area/engine/engineering) +"cwp" = (/obj/machinery/light/small{dir = 4},/obj/structure/closet/emcloset,/turf/open/floor/plating,/area/engine/engineering) +"cwq" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/turf/open/floor/plasteel,/area/engine/engineering) +"cwr" = (/obj/structure/sign/securearea,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/closed/wall/r_wall,/area/engine/engineering) +"cws" = (/obj/machinery/camera{c_tag = "Engineering MiniSat Access"; dir = 4; network = list("SS13")},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/engine/engineering) +"cwt" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/plasteel,/area/engine/engineering) +"cwu" = (/obj/structure/transit_tube{icon_state = "Block"},/turf/open/floor/plating/warnplate{dir = 8},/area/engine/engineering) +"cwv" = (/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/power/solar{id = "starboardsolar"; name = "Starboard Solar Array"},/turf/open/floor/plasteel/airless/solarpanel,/area/solar/starboard) +"cww" = (/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/starboard) +"cwx" = (/obj/structure/table,/obj/item/device/taperecorder{pixel_y = 0},/turf/open/floor/plating,/area/maintenance/aft) +"cwy" = (/obj/structure/table,/obj/item/weapon/storage/box/matches,/obj/item/weapon/storage/fancy/cigarettes,/turf/open/floor/plating,/area/maintenance/aft) +"cwz" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating/airless,/area/engine/engineering) +"cwA" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"},/turf/closed/wall/r_wall,/area/engine/engineering) +"cwB" = (/obj/machinery/door/airlock/external{name = "Construction Site Airlock"; req_access = null; req_access_txt = "10;32"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plating,/area/engine/engineering) +"cwC" = (/obj/structure/cable/yellow{icon_state = "1-4"; d1 = 1; d2 = 4},/turf/open/floor/plating/warnplate{dir = 10},/area/engine/engineering) +"cwD" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/open/floor/plating/warnplate,/area/engine/engineering) +"cwE" = (/obj/item/weapon/wirecutters,/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/turf/open/floor/plating/warnplate,/area/engine/engineering) +"cwF" = (/turf/open/floor/plating/warnplate,/area/engine/engineering) +"cwG" = (/turf/open/floor/plating/warnplate{dir = 6},/area/engine/engineering) +"cwH" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 5},/turf/open/floor/plasteel,/area/engine/engineering) +"cwI" = (/obj/machinery/light,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/engine/engineering) +"cwJ" = (/obj/machinery/door/airlock/command{name = "MiniSat Access"; req_access_txt = "65"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/engine/engineering) +"cwK" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/engine/engineering) +"cwL" = (/obj/structure/transit_tube/station{dir = 8; icon_state = "closed"; reverse_launch = 1},/obj/structure/transit_tube_pod,/turf/open/floor/plating/warnplate{dir = 8},/area/engine/engineering) +"cwM" = (/obj/structure/lattice,/obj/machinery/atmospherics/pipe/simple/yellow/visible,/turf/open/space,/area/space) +"cwN" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/starboard) +"cwO" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/starboard) +"cwP" = (/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/starboard) +"cwQ" = (/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/starboard) +"cwR" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/starboard) +"cwS" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/starboard) +"cwT" = (/turf/open/floor/plating/airless,/area/space) +"cwU" = (/obj/machinery/light/small{dir = 8},/turf/open/floor/plating,/area/engine/engineering) +"cwV" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plating,/area/engine/engineering) +"cwW" = (/obj/machinery/light/small{dir = 4},/turf/open/floor/plating,/area/engine/engineering) +"cwX" = (/obj/structure/grille,/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/floor/plating/airless,/area/engine/engineering) +"cwY" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/open/floor/plating/airless,/area/engine/engineering) +"cwZ" = (/obj/machinery/camera/emp_proof{c_tag = "Singularity North-West"; dir = 2; network = list("Singularity")},/obj/machinery/power/grounding_rod,/turf/open/floor/plating/airless,/area/engine/engineering) +"cxa" = (/obj/machinery/power/grounding_rod,/turf/open/floor/plating/airless,/area/space/nearstation) +"cxb" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plating,/area/engine/engineering) +"cxc" = (/obj/machinery/camera/emp_proof{c_tag = "Singularity North East"; dir = 2; network = list("Singularity")},/obj/machinery/power/grounding_rod,/turf/open/floor/plating/airless,/area/engine/engineering) +"cxd" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/open/floor/plating/airless,/area/engine/engineering) +"cxe" = (/obj/structure/grille,/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/open/floor/plating/airless,/area/engine/engineering) +"cxf" = (/obj/machinery/door/airlock/external{name = "Engineering External Access"; req_access = null; req_access_txt = "10;13"},/turf/open/floor/plasteel,/area/engine/engineering) +"cxg" = (/obj/structure/closet/emcloset,/turf/open/floor/plasteel,/area/engine/engineering) +"cxh" = (/obj/machinery/light,/turf/open/floor/plasteel,/area/engine/engineering) +"cxi" = (/obj/structure/transit_tube{icon_state = "N-S"},/turf/open/floor/plating/warnplate{dir = 8},/area/engine/engineering) +"cxj" = (/obj/structure/cable,/obj/machinery/power/solar{id = "starboardsolar"; name = "Starboard Solar Array"},/turf/open/floor/plasteel/airless/solarpanel,/area/solar/starboard) +"cxk" = (/obj/structure/cable,/turf/open/floor/plating,/area/engine/engineering) +"cxl" = (/obj/structure/grille,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plating/airless,/area/engine/engineering) +"cxm" = (/turf/open/floor/plating/airless,/area/engine/engineering) +"cxn" = (/obj/structure/cable/yellow{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/turf/open/floor/plating/airless,/area/space/nearstation) +"cxo" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/open/floor/plating/airless,/area/space/nearstation) +"cxp" = (/obj/structure/cable/yellow{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"; tag = "90Curve"},/turf/open/floor/plating/airless,/area/space/nearstation) +"cxq" = (/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/turf/open/floor/plating/airless,/area/space/nearstation) +"cxr" = (/obj/item/weapon/wrench,/turf/open/floor/plating/airless,/area/engine/engineering) +"cxs" = (/obj/structure/closet/emcloset,/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 32},/turf/open/floor/plating,/area/engine/engineering) +"cxt" = (/obj/structure/transit_tube{icon_state = "N-S"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/engine/engineering) +"cxu" = (/obj/machinery/door/airlock/external{name = "Construction Site Airlock"; req_access = null; req_access_txt = "10;32"},/turf/open/floor/plating,/area/engine/engineering) +"cxv" = (/obj/structure/grille,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/open/floor/plating/airless,/area/engine/engineering) +"cxw" = (/obj/machinery/power/emitter{anchored = 1; dir = 4; state = 2},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/open/floor/plating/airless,/area/engine/engineering) +"cxx" = (/turf/open/floor/plating/airless/warnplate{dir = 8},/area/engine/engineering) +"cxy" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plating/airless,/area/space/nearstation) +"cxz" = (/obj/machinery/field/generator{anchored = 1; state = 2},/turf/open/floor/plating/airless,/area/space/nearstation) +"cxA" = (/turf/open/floor/plating/airless/warnplate{dir = 4},/area/engine/engineering) +"cxB" = (/obj/machinery/power/emitter{anchored = 1; dir = 8; state = 2},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/open/floor/plating/airless,/area/engine/engineering) +"cxC" = (/obj/structure/grille,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/open/floor/plating/airless,/area/engine/engineering) +"cxD" = (/obj/machinery/door/airlock/external{name = "Engineering External Access"; req_access = null; req_access_txt = "10;13"},/turf/open/floor/plating,/area/engine/engineering) +"cxE" = (/obj/structure/sign/securearea,/turf/closed/wall,/area/engine/engineering) +"cxF" = (/obj/structure/transit_tube{icon_state = "N-SE"},/turf/open/space,/area/space) +"cxG" = (/obj/structure/transit_tube{icon_state = "D-SW"},/turf/open/space,/area/space) +"cxH" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/turret_protected/aisat_interior) +"cxI" = (/turf/closed/wall,/area/space) +"cxJ" = (/obj/item/device/multitool,/turf/open/floor/plating/airless,/area/engine/engineering) +"cxK" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/yellow{icon_state = "1-4"; d1 = 1; d2 = 4},/turf/open/floor/plating/airless,/area/space/nearstation) +"cxL" = (/obj/structure/cable/yellow{d2 = 8; icon_state = "0-8"},/obj/machinery/power/tesla_coil,/turf/open/floor/plating/airless,/area/space/nearstation) +"cxM" = (/obj/item/weapon/wirecutters,/obj/structure/lattice,/turf/open/space,/area/space/nearstation) +"cxN" = (/obj/structure/cable/yellow{icon_state = "0-4"; d2 = 4},/obj/machinery/power/tesla_coil,/turf/open/floor/plating/airless,/area/space/nearstation) +"cxO" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/turf/open/floor/plating/airless,/area/space/nearstation) +"cxP" = (/obj/structure/transit_tube{icon_state = "D-NE"},/turf/open/space,/area/space) +"cxQ" = (/obj/structure/transit_tube{icon_state = "E-NW"},/turf/open/space,/area/space) +"cxR" = (/obj/structure/transit_tube,/obj/structure/lattice,/turf/open/space,/area/space) +"cxS" = (/obj/structure/transit_tube,/turf/open/space,/area/space) +"cxT" = (/obj/structure/transit_tube{icon_state = "E-W-Pass"},/turf/open/space,/area/space) +"cxU" = (/obj/structure/transit_tube,/obj/structure/lattice,/obj/machinery/atmospherics/pipe/simple/yellow/visible,/turf/open/space,/area/space) +"cxV" = (/obj/structure/window/reinforced/fulltile,/obj/structure/transit_tube,/turf/open/floor/plating,/area/turret_protected/aisat_interior) +"cxW" = (/obj/structure/transit_tube,/turf/open/floor/plating,/area/turret_protected/aisat_interior) +"cxX" = (/obj/structure/transit_tube/station{reverse_launch = 1},/turf/open/floor/plating,/area/turret_protected/aisat_interior) +"cxY" = (/obj/structure/transit_tube{dir = 8; icon_state = "Block"},/turf/open/floor/plating,/area/turret_protected/aisat_interior) +"cxZ" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/grille,/turf/open/floor/plating/airless,/area/engine/engineering) +"cya" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/grille,/turf/open/floor/plating/airless,/area/engine/engineering) +"cyb" = (/obj/effect/landmark/event_spawn,/turf/open/space,/area/space/nearstation) +"cyc" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/grille,/turf/open/floor/plating/airless,/area/engine/engineering) +"cyd" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/grille,/turf/open/floor/plating/airless,/area/engine/engineering) +"cye" = (/turf/open/floor/plating/warnplate{dir = 1},/area/turret_protected/aisat_interior) +"cyf" = (/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/turf/open/floor/plating/warnplate{dir = 1},/area/turret_protected/aisat_interior) +"cyg" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/grille,/turf/open/floor/plating/airless,/area/engine/engineering) +"cyh" = (/turf/open/floor/plating/airless/warnplate{dir = 9},/area/space/nearstation) +"cyi" = (/turf/open/floor/plating/airless/warnplate{dir = 1},/area/space/nearstation) +"cyj" = (/turf/open/floor/plating/airless/warnplate{dir = 5},/area/space/nearstation) +"cyk" = (/obj/item/weapon/crowbar,/turf/open/space,/area/space/nearstation) +"cyl" = (/obj/machinery/door/airlock/external{name = "MiniSat External Access"; req_access = null; req_access_txt = "65;13"},/turf/open/floor/plating,/area/turret_protected/aisat_interior) +"cym" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 0; pixel_y = 32},/turf/open/floor/plating,/area/turret_protected/aisat_interior) +"cyn" = (/turf/open/floor/plating,/area/turret_protected/aisat_interior) +"cyo" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/turret_protected/aisat_interior) +"cyp" = (/obj/machinery/light{dir = 8},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/grille,/turf/open/floor/plating/airless,/area/engine/engineering) +"cyq" = (/obj/machinery/the_singularitygen,/turf/open/floor/plating/airless/warnplate{dir = 8},/area/space/nearstation) +"cyr" = (/obj/item/weapon/wrench,/turf/open/floor/plating/airless,/area/space/nearstation) +"cys" = (/obj/machinery/the_singularitygen/tesla,/turf/open/floor/plating/airless/warnplate{dir = 4},/area/space/nearstation) +"cyt" = (/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/grille,/turf/open/floor/plating/airless,/area/engine/engineering) +"cyu" = (/obj/structure/lattice/catwalk,/obj/machinery/atmospherics/pipe/simple/yellow/visible,/turf/open/space,/area/space) +"cyv" = (/obj/structure/closet/emcloset,/turf/open/floor/plating,/area/turret_protected/aisat_interior) +"cyw" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/structure/sign/securearea{pixel_y = -32},/turf/open/floor/plating,/area/turret_protected/aisat_interior) +"cyx" = (/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_x = 0; pixel_y = -29},/obj/machinery/light/small,/turf/open/floor/plating,/area/turret_protected/aisat_interior) +"cyy" = (/obj/machinery/camera{c_tag = "MiniSat Pod Access"; dir = 1; network = list("MiniSat"); pixel_x = 0; pixel_y = 0; start_active = 1},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 2; on = 1},/obj/machinery/light/small,/turf/open/floor/plating,/area/turret_protected/aisat_interior) +"cyz" = (/obj/item/weapon/weldingtool,/turf/open/space,/area/space/nearstation) +"cyA" = (/turf/open/floor/plating/airless/warnplate{dir = 10},/area/space/nearstation) +"cyB" = (/turf/open/floor/plating/airless/warnplate{dir = 2},/area/space/nearstation) +"cyC" = (/turf/open/floor/plating/airless/warnplate{dir = 6},/area/space/nearstation) +"cyD" = (/turf/closed/wall,/area/turret_protected/aisat_interior) +"cyE" = (/obj/machinery/door/airlock/hatch{name = "MiniSat Foyer"; req_one_access_txt = "65"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/black,/area/turret_protected/aisat_interior) +"cyF" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 8},/turf/closed/wall,/area/turret_protected/aisat_interior) +"cyG" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall,/area/turret_protected/aisat_interior) +"cyH" = (/obj/machinery/atmospherics/components/unary/outlet_injector/on{dir = 8},/turf/open/floor/plating/airless,/area/turret_protected/aisat_interior) +"cyI" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/starboard) +"cyJ" = (/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/starboard) +"cyK" = (/obj/structure/table,/obj/machinery/light/small{dir = 1},/obj/item/weapon/folder{pixel_x = 3},/obj/item/weapon/phone{pixel_x = -3; pixel_y = 3},/obj/item/weapon/pen,/turf/open/floor/plasteel/vault{dir = 8},/area/turret_protected/aisat_interior) +"cyL" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/black,/area/turret_protected/aisat_interior) +"cyM" = (/obj/structure/rack{dir = 1},/obj/machinery/light/small{dir = 1},/obj/machinery/light_switch{pixel_y = 28},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/item/device/radio/off{pixel_y = 4},/obj/item/weapon/screwdriver{pixel_y = 10},/turf/open/floor/plasteel/vault{dir = 8},/area/turret_protected/aisat_interior) +"cyN" = (/obj/item/device/radio/off,/turf/open/floor/plating/airless,/area/engine/engineering) +"cyO" = (/obj/machinery/airalarm{dir = 4; pixel_x = -23; pixel_y = 0},/obj/machinery/computer/station_alert,/turf/open/floor/plasteel/vault{dir = 8},/area/turret_protected/aisat_interior) +"cyP" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/grimy,/area/turret_protected/aisat_interior) +"cyQ" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/grimy,/area/turret_protected/aisat_interior) +"cyR" = (/obj/machinery/atmospherics/pipe/manifold4w/scrubbers,/turf/open/floor/plasteel/grimy,/area/turret_protected/aisat_interior) +"cyS" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/extinguisher_cabinet{pixel_x = -5; pixel_y = 30},/turf/open/floor/plasteel/black,/area/turret_protected/aisat_interior) +"cyT" = (/obj/machinery/door/poddoor/shutters{id = "teledoor"; name = "MiniSat Teleport Access"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/black,/area/turret_protected/aisat_interior) +"cyU" = (/obj/machinery/button/door{id = "teledoor"; name = "MiniSat Teleport Shutters Control"; pixel_x = 0; pixel_y = 25; req_access_txt = "17;65"},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_Toxins = 0},/turf/open/floor/plasteel/darkwarning{dir = 4},/area/turret_protected/aisat_interior) +"cyV" = (/obj/machinery/teleport/hub,/turf/open/floor/plating,/area/turret_protected/aisat_interior) +"cyW" = (/obj/structure/grille,/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/open/floor/plating/airless,/area/engine/engineering) +"cyX" = (/obj/structure/grille,/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/open/floor/plating/airless,/area/engine/engineering) +"cyY" = (/obj/machinery/computer/security/telescreen/entertainment{pixel_x = -31},/obj/machinery/computer/monitor,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/open/floor/plasteel/vault{dir = 8},/area/turret_protected/aisat_interior) +"cyZ" = (/obj/structure/chair/office/dark{dir = 8},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/open/floor/plasteel/grimy,/area/turret_protected/aisat_interior) +"cza" = (/obj/machinery/hologram/holopad,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/obj/effect/landmark/start{name = "Cyborg"},/turf/open/floor/plasteel/grimy,/area/turret_protected/aisat_interior) +"czb" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/grimy,/area/turret_protected/aisat_interior) +"czc" = (/turf/open/floor/plasteel/black,/area/turret_protected/aisat_interior) +"czd" = (/obj/machinery/door/airlock/hatch{name = "MiniSat Teleporter"; req_access_txt = "17;65"},/turf/open/floor/plasteel/black,/area/turret_protected/aisat_interior) +"cze" = (/obj/machinery/bluespace_beacon,/turf/open/floor/plasteel/darkwarning{dir = 4},/area/turret_protected/aisat_interior) +"czf" = (/obj/machinery/teleport/station,/obj/machinery/light/small{dir = 4},/turf/open/floor/plating,/area/turret_protected/aisat_interior) +"czg" = (/obj/structure/grille,/turf/open/floor/plating/airless,/area/engine/engineering) +"czh" = (/obj/structure/cable/yellow{icon_state = "0-2"; d2 = 2},/obj/machinery/power/tesla_coil,/turf/open/floor/plating/airless,/area/space/nearstation) +"czi" = (/obj/structure/lattice,/obj/machinery/atmospherics/pipe/simple/yellow/visible{icon_state = "intact"; dir = 5},/turf/open/space,/area/space) +"czj" = (/obj/machinery/atmospherics/pipe/simple/yellow/visible{icon_state = "intact"; dir = 10},/obj/structure/lattice,/turf/open/space,/area/space) +"czk" = (/obj/structure/table,/obj/machinery/microwave{pixel_x = 0; pixel_y = 4},/obj/machinery/firealarm{dir = 8; pixel_x = -24},/turf/open/floor/plasteel/vault{dir = 8},/area/turret_protected/aisat_interior) +"czl" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/plasteel/grimy,/area/turret_protected/aisat_interior) +"czm" = (/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden,/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/grimy,/area/turret_protected/aisat_interior) +"czn" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/open/floor/plasteel/grimy,/area/turret_protected/aisat_interior) +"czo" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/power/apc{dir = 4; name = "MiniSat Foyer APC"; pixel_x = 27; pixel_y = 0},/obj/structure/chair,/turf/open/floor/plasteel/black,/area/turret_protected/aisat_interior) +"czp" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/closed/wall,/area/turret_protected/aisat_interior) +"czq" = (/obj/machinery/camera{c_tag = "MiniSat Teleporter"; dir = 1; network = list("MiniSat"); pixel_x = 0; pixel_y = 0; start_active = 1},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/plasteel/darkwarning{dir = 4},/area/turret_protected/aisat_interior) +"czr" = (/obj/machinery/computer/teleporter,/turf/open/floor/plating,/area/turret_protected/aisat_interior) +"czs" = (/obj/structure/cable,/obj/machinery/power/tracker,/turf/open/floor/plasteel/airless/solarpanel,/area/solar/starboard) +"czt" = (/obj/machinery/camera/emp_proof{c_tag = "Singularity West"; dir = 1; network = list("Singularity")},/turf/open/floor/plating/airless,/area/engine/engineering) +"czu" = (/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"; tag = "90Curve"},/turf/open/floor/plating/airless,/area/space/nearstation) +"czv" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/structure/cable/yellow{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/turf/open/floor/plating/airless,/area/space/nearstation) +"czw" = (/obj/structure/cable/yellow{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/turf/open/floor/plating/airless,/area/space/nearstation) +"czx" = (/obj/machinery/camera/emp_proof{c_tag = "Singularity East"; dir = 1; network = list("Singularity")},/turf/open/floor/plating/airless,/area/engine/engineering) +"czy" = (/turf/closed/wall/r_wall,/area/turret_protected/AIsatextAS{name = "AI Satellite Atmospherics"}) +"czz" = (/obj/machinery/atmospherics/pipe/simple/yellow/visible,/obj/machinery/meter,/turf/closed/wall/r_wall,/area/turret_protected/AIsatextAS{name = "AI Satellite Atmospherics"}) +"czA" = (/obj/structure/rack{dir = 1},/obj/machinery/status_display{pixel_y = -32},/obj/item/weapon/storage/box/donkpockets,/turf/open/floor/plasteel/vault{dir = 8},/area/turret_protected/aisat_interior) +"czB" = (/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_x = 0; pixel_y = -29},/obj/machinery/light/small,/turf/open/floor/plasteel/black,/area/turret_protected/aisat_interior) +"czC" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/black,/area/turret_protected/aisat_interior) +"czD" = (/obj/machinery/turretid{control_area = null; enabled = 1; icon_state = "control_standby"; name = "Antechamber Turret Control"; pixel_x = 0; pixel_y = -24; req_access = list(65)},/obj/machinery/light/small,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/camera/motion{c_tag = "MiniSat Foyer"; dir = 1; network = list("MiniSat")},/turf/open/floor/plasteel/black,/area/turret_protected/aisat_interior) +"czE" = (/obj/machinery/ai_status_display{pixel_y = -32},/obj/structure/table,/turf/open/floor/plasteel/vault{dir = 8},/area/turret_protected/aisat_interior) +"czF" = (/turf/closed/wall/r_wall,/area/turret_protected/AIsatextFP{name = "AI Satellite Service"}) +"czG" = (/obj/structure/sign/securearea,/turf/closed/wall/r_wall,/area/engine/engineering) +"czH" = (/obj/machinery/atmospherics/pipe/simple/yellow/visible,/obj/structure/rack,/obj/item/weapon/wrench,/obj/item/weapon/crowbar/red,/obj/item/clothing/head/welding,/turf/open/floor/plating,/area/turret_protected/AIsatextAS{name = "AI Satellite Atmospherics"}) +"czI" = (/obj/machinery/atmospherics/components/unary/tank/air,/turf/open/floor/plating,/area/turret_protected/AIsatextAS{name = "AI Satellite Atmospherics"}) +"czJ" = (/turf/closed/wall/r_wall,/area/turret_protected/aisat_interior) +"czK" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/door/firedoor,/obj/machinery/door/airlock/hatch{name = "MiniSat Antechamber"; req_one_access_txt = "65"},/turf/open/floor/plasteel/black,/area/turret_protected/aisat_interior) +"czL" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall/r_wall,/area/turret_protected/aisat_interior) +"czM" = (/obj/machinery/recharge_station,/turf/open/floor/plating,/area/turret_protected/AIsatextFP{name = "AI Satellite Service"}) +"czN" = (/obj/machinery/portable_atmospherics/canister/air,/obj/machinery/firealarm{dir = 8; pixel_x = -24},/turf/open/floor/plating/warnplate/corner{tag = "icon-warnplatecorner"; dir = 2},/area/turret_protected/AIsatextAS{name = "AI Satellite Atmospherics"}) +"czO" = (/obj/machinery/atmospherics/components/binary/pump{dir = 2; name = "Mix to MiniSat"},/turf/open/floor/plating/warnplate{icon_plating = "warnplate"},/area/turret_protected/AIsatextAS{name = "AI Satellite Atmospherics"}) +"czP" = (/obj/machinery/atmospherics/components/binary/pump{dir = 0; name = "Air Out"; on = 0},/turf/open/floor/plating/warnplate{icon_plating = "warnplate"},/area/turret_protected/AIsatextAS{name = "AI Satellite Atmospherics"}) +"czQ" = (/obj/structure/showcase{density = 0; desc = "An old, deactivated cyborg. Whilst once actively used to guard against intruders, it now simply intimidates them with its cold, steely gaze."; dir = 8; icon = 'icons/mob/robots.dmi'; icon_state = "robot_old"; name = "Cyborg Statue"; pixel_x = 9; pixel_y = 2},/obj/structure/extinguisher_cabinet{pixel_x = -5; pixel_y = 30},/turf/open/floor/plating/warnplate{icon_plating = "warnplate"},/area/turret_protected/AIsatextAS{name = "AI Satellite Atmospherics"}) +"czR" = (/obj/structure/showcase{density = 0; desc = "An old, deactivated cyborg. Whilst once actively used to guard against intruders, it now simply intimidates them with its cold, steely gaze."; dir = 4; icon = 'icons/mob/robots.dmi'; icon_state = "robot_old"; name = "Cyborg Statue"; pixel_x = -9; pixel_y = 2},/turf/open/floor/plasteel/darkblue/corner{dir = 1},/area/turret_protected/aisat_interior) +"czS" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/open/floor/plasteel/black,/area/turret_protected/aisat_interior) +"czT" = (/obj/structure/showcase{density = 0; desc = "An old, deactivated cyborg. Whilst once actively used to guard against intruders, it now simply intimidates them with its cold, steely gaze."; dir = 8; icon = 'icons/mob/robots.dmi'; icon_state = "robot_old"; name = "Cyborg Statue"; pixel_x = 9; pixel_y = 2},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/plasteel/darkblue/corner{dir = 4},/area/turret_protected/aisat_interior) +"czU" = (/obj/structure/showcase{density = 0; desc = "An old, deactivated cyborg. Whilst once actively used to guard against intruders, it now simply intimidates them with its cold, steely gaze."; dir = 4; icon = 'icons/mob/robots.dmi'; icon_state = "robot_old"; name = "Cyborg Statue"; pixel_x = -9; pixel_y = 2},/obj/structure/extinguisher_cabinet{pixel_x = 5; pixel_y = 30},/turf/open/floor/plating/warnplate{icon_plating = "warnplate"},/area/turret_protected/AIsatextFP{name = "AI Satellite Service"}) +"czV" = (/turf/open/floor/plating/warnplate{icon_plating = "warnplate"},/area/turret_protected/AIsatextFP{name = "AI Satellite Service"}) +"czW" = (/obj/structure/table,/obj/item/stack/sheet/metal{amount = 50},/obj/item/stack/sheet/glass{amount = 50},/obj/item/clothing/head/welding,/obj/item/stack/sheet/mineral/plasma{amount = 35; layer = 3.1},/obj/machinery/firealarm{dir = 4; pixel_x = 24},/turf/open/floor/plating/warnplate/corner{dir = 1},/area/turret_protected/AIsatextFP{name = "AI Satellite Service"}) +"czX" = (/obj/machinery/light/small{dir = 8},/obj/machinery/camera{c_tag = "MiniSat Atmospherics"; dir = 4; network = list("MiniSat"); pixel_x = 0; pixel_y = 0; start_active = 1},/obj/machinery/airalarm{dir = 4; pixel_x = -23; pixel_y = 0},/obj/machinery/space_heater,/turf/open/floor/plating/warnplate{dir = 4},/area/turret_protected/AIsatextAS{name = "AI Satellite Atmospherics"}) +"czY" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/black,/area/turret_protected/AIsatextAS{name = "AI Satellite Atmospherics"}) +"czZ" = (/obj/machinery/hologram/holopad,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/black,/area/turret_protected/AIsatextAS{name = "AI Satellite Atmospherics"}) +"cAa" = (/obj/machinery/light/small{dir = 4},/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_x = 28; pixel_y = 0},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/darkblue/corner{dir = 4},/area/turret_protected/AIsatextAS{name = "AI Satellite Atmospherics"}) +"cAb" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall/r_wall,/area/turret_protected/aisat_interior) +"cAc" = (/obj/machinery/light/small{dir = 8},/obj/machinery/camera{c_tag = "MiniSat Antechamber"; dir = 4; network = list("MiniSat"); pixel_x = 0; pixel_y = 0; start_active = 1},/obj/machinery/turretid{control_area = "AI Satellite Atmospherics"; enabled = 1; icon_state = "control_standby"; name = "Atmospherics Turret Control"; pixel_x = -27; pixel_y = 0; req_access = list(65)},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/darkblue/corner{dir = 1},/area/turret_protected/aisat_interior) +"cAd" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/hologram/holopad,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/black,/area/turret_protected/aisat_interior) +"cAe" = (/obj/machinery/light/small{dir = 4},/obj/machinery/turretid{control_area = "AI Satellite Service"; enabled = 1; icon_state = "control_standby"; name = "Service Bay Turret Control"; pixel_x = 27; pixel_y = 0; req_access = list(65)},/obj/machinery/atmospherics/pipe/manifold4w/scrubbers,/turf/open/floor/plasteel/darkblue/corner{dir = 4},/area/turret_protected/aisat_interior) +"cAf" = (/obj/machinery/light/small{dir = 8},/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_x = -28; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/darkblue/corner{dir = 1},/area/turret_protected/AIsatextFP{name = "AI Satellite Service"}) +"cAg" = (/obj/machinery/hologram/holopad,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/black,/area/turret_protected/AIsatextFP{name = "AI Satellite Service"}) +"cAh" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_Toxins = 0},/turf/open/floor/plasteel/black,/area/turret_protected/AIsatextFP{name = "AI Satellite Service"}) +"cAi" = (/obj/machinery/light/small{dir = 4},/obj/machinery/camera{c_tag = "MiniSat Service Bay"; dir = 8; network = list("MiniSat"); pixel_x = 0; pixel_y = 0; start_active = 1},/obj/machinery/airalarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/structure/rack,/obj/item/weapon/storage/toolbox/electrical{pixel_x = -3; pixel_y = 3},/obj/item/weapon/storage/toolbox/mechanical,/obj/item/device/multitool,/turf/open/floor/plating/warnplate{dir = 8},/area/turret_protected/AIsatextFP{name = "AI Satellite Service"}) +"cAj" = (/obj/machinery/power/apc{dir = 8; name = "MiniSat Atmospherics APC"; pixel_x = -27; pixel_y = 0},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/portable_atmospherics/scrubber,/turf/open/floor/plating/warnplate{dir = 4},/area/turret_protected/AIsatextAS{name = "AI Satellite Atmospherics"}) +"cAk" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/turf/open/floor/plasteel/black,/area/turret_protected/AIsatextAS{name = "AI Satellite Atmospherics"}) +"cAl" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/ai_slipper{icon_state = "motion0"; uses = 10},/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden,/turf/open/floor/plasteel/black,/area/turret_protected/AIsatextAS{name = "AI Satellite Atmospherics"}) +"cAm" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/open/floor/plasteel/black,/area/turret_protected/AIsatextAS{name = "AI Satellite Atmospherics"}) +"cAn" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/door/firedoor,/obj/machinery/door/airlock/hatch{name = "MiniSat Atmospherics"; req_one_access_txt = "65"},/turf/open/floor/plasteel/black,/area/turret_protected/aisat_interior) +"cAo" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/black,/area/turret_protected/aisat_interior) +"cAp" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/ai_slipper{icon_state = "motion0"; uses = 10},/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden,/mob/living/simple_animal/bot/secbot/pingsky,/turf/open/floor/plasteel/black,/area/turret_protected/aisat_interior) +"cAq" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/black,/area/turret_protected/aisat_interior) +"cAr" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/door/firedoor,/obj/machinery/door/airlock/hatch{name = "MiniSat Service Bay"; req_one_access_txt = "65"},/turf/open/floor/plasteel/black,/area/turret_protected/aisat_interior) +"cAs" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/open/floor/plasteel/black,/area/turret_protected/AIsatextFP{name = "AI Satellite Service"}) +"cAt" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/ai_slipper{icon_state = "motion0"; uses = 10},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/turf/open/floor/plasteel/black,/area/turret_protected/AIsatextFP{name = "AI Satellite Service"}) +"cAu" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/open/floor/plasteel/black,/area/turret_protected/AIsatextFP{name = "AI Satellite Service"}) +"cAv" = (/obj/machinery/power/apc{dir = 4; name = "MiniSat Service Bay APC"; pixel_x = 27; pixel_y = 0},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/power/port_gen/pacman,/turf/open/floor/plating/warnplate{dir = 8},/area/turret_protected/AIsatextFP{name = "AI Satellite Service"}) +"cAw" = (/obj/machinery/porta_turret/ai{dir = 4},/turf/open/floor/plasteel/vault{dir = 8},/area/turret_protected/AIsatextAS{name = "AI Satellite Atmospherics"}) +"cAx" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; on = 1},/mob/living/simple_animal/bot/floorbot,/turf/open/floor/plasteel/darkblue/corner,/area/turret_protected/AIsatextAS{name = "AI Satellite Atmospherics"}) +"cAy" = (/obj/structure/sign/securearea{pixel_x = -32; pixel_y = 0},/obj/machinery/porta_turret/ai{dir = 4},/obj/item/device/radio/intercom{broadcasting = 1; frequency = 1447; listening = 0; name = "Station Intercom (AI Private)"; pixel_y = -29},/turf/open/floor/plasteel/darkblue/corner{dir = 8},/area/turret_protected/aisat_interior) +"cAz" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/obj/machinery/turretid{control_area = "AI Satellite Hallway"; enabled = 1; icon_state = "control_standby"; name = "Chamber Hallway Turret Control"; pixel_x = 32; pixel_y = -24; req_access = list(65)},/turf/open/floor/plasteel/black,/area/turret_protected/aisat_interior) +"cAA" = (/obj/machinery/porta_turret/ai{dir = 4},/obj/structure/sign/securearea{pixel_x = 32; pixel_y = 0},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/darkblue/corner,/area/turret_protected/aisat_interior) +"cAB" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; on = 1},/mob/living/simple_animal/bot/cleanbot,/turf/open/floor/plasteel/darkblue/corner{dir = 8},/area/turret_protected/AIsatextFP{name = "AI Satellite Service"}) +"cAC" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/black,/area/turret_protected/AIsatextFP{name = "AI Satellite Service"}) +"cAD" = (/obj/machinery/porta_turret/ai{dir = 4},/turf/open/floor/plasteel/vault{dir = 8},/area/turret_protected/AIsatextFP{name = "AI Satellite Service"}) +"cAE" = (/turf/closed/wall/r_wall,/area/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) +"cAF" = (/turf/closed/wall,/area/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) +"cAG" = (/obj/machinery/door/airlock/maintenance_hatch{name = "MiniSat Maintenance"; req_access_txt = "65"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) +"cAH" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/door/firedoor,/obj/machinery/door/airlock/hatch{name = "MiniSat Chamber Hallway"; req_one_access_txt = "65"},/turf/open/floor/plasteel/black,/area/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) +"cAI" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall/r_wall,/area/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) +"cAJ" = (/obj/machinery/door/airlock/maintenance_hatch{name = "MiniSat Maintenance"; req_access_txt = "65"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plating,/area/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) +"cAK" = (/obj/docking_port/stationary{dheight = 9; dir = 2; dwidth = 5; height = 24; id = "syndicate_southmaint"; name = "south maintenance airlock"; turf_type = /turf/open/space; width = 18},/turf/open/space,/area/space) +"cAL" = (/obj/machinery/portable_atmospherics/scrubber,/turf/open/floor/plating,/area/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) +"cAM" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) +"cAN" = (/turf/open/floor/bluegrid,/area/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) +"cAO" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) +"cAP" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/black,/area/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) +"cAQ" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) +"cAR" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plating,/area/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) +"cAS" = (/obj/structure/rack,/obj/item/weapon/crowbar/red,/obj/item/weapon/wrench,/turf/open/floor/plating,/area/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) +"cAT" = (/obj/structure/reagent_dispensers/watertank,/turf/open/floor/plating,/area/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) +"cAU" = (/obj/structure/reagent_dispensers/fueltank,/turf/open/floor/plating,/area/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) +"cAV" = (/obj/structure/lattice,/obj/machinery/camera{c_tag = "MiniSat External NorthWest"; dir = 8; network = list("MiniSat"); pixel_x = 0; pixel_y = 0; start_active = 1},/turf/open/space,/area/space) +"cAW" = (/obj/machinery/porta_turret/ai{dir = 4; installation = /obj/item/weapon/gun/energy/gun},/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/open/floor/bluegrid,/area/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) +"cAX" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/black,/area/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) +"cAY" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) +"cAZ" = (/obj/machinery/porta_turret/ai{dir = 4; installation = /obj/item/weapon/gun/energy/gun},/obj/machinery/light{icon_state = "tube1"; dir = 4},/turf/open/floor/bluegrid,/area/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) +"cBa" = (/obj/structure/lattice,/obj/machinery/camera{c_tag = "MiniSat External NorthEast"; dir = 4; network = list("MiniSat"); pixel_x = 0; pixel_y = 0; start_active = 1},/turf/open/space,/area/space) +"cBb" = (/obj/structure/sign/securearea{pixel_x = 32; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) +"cBc" = (/obj/machinery/camera/motion{c_tag = "MiniSat Core Hallway"; dir = 4; network = list("MiniSat")},/obj/machinery/firealarm{dir = 8; pixel_x = -24},/turf/open/floor/bluegrid,/area/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) +"cBd" = (/obj/structure/sign/securearea{pixel_x = -32; pixel_y = 0},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plating,/area/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) +"cBe" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/turf/open/floor/plating,/area/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) +"cBf" = (/obj/machinery/door/airlock/maintenance_hatch{name = "MiniSat Maintenance"; req_access_txt = "65"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) +"cBg" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/bluegrid,/area/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) +"cBh" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/open/floor/plating,/area/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) +"cBi" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/hologram/holopad,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/black,/area/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) +"cBj" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/floor/bluegrid,/area/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) +"cBk" = (/obj/machinery/door/airlock/maintenance_hatch{name = "MiniSat Maintenance"; req_access_txt = "65"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/open/floor/plating,/area/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) +"cBl" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/open/floor/plating,/area/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) +"cBm" = (/turf/open/floor/plating,/area/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) +"cBn" = (/obj/machinery/airalarm{dir = 4; pixel_x = -23; pixel_y = 0},/turf/open/floor/bluegrid,/area/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) +"cBo" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) +"cBp" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel/black,/area/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) +"cBq" = (/obj/structure/cable,/obj/machinery/power/apc{dir = 4; name = "MiniSat Chamber Hallway APC"; pixel_x = 27; pixel_y = 0},/turf/open/floor/bluegrid,/area/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) +"cBr" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/turf/open/floor/plating,/area/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) +"cBs" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/plasteel/black,/area/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) +"cBt" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/item/device/radio/intercom{broadcasting = 1; frequency = 1447; listening = 0; name = "Station Intercom (AI Private)"; pixel_x = -28; pixel_y = -29},/turf/open/floor/plasteel/black,/area/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) +"cBu" = (/turf/closed/wall/r_wall,/area/turret_protected/ai) +"cBv" = (/obj/machinery/status_display,/turf/closed/wall/r_wall,/area/turret_protected/ai) +"cBw" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/door/firedoor,/obj/machinery/door/airlock/hatch{name = "MiniSat Chamber Observation"; req_one_access_txt = "65"},/turf/open/floor/plasteel/black,/area/turret_protected/ai) +"cBx" = (/obj/structure/sign/securearea,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall/r_wall,/area/turret_protected/ai) +"cBy" = (/obj/machinery/ai_status_display,/turf/closed/wall/r_wall,/area/turret_protected/ai) +"cBz" = (/obj/machinery/light/small{dir = 1},/obj/structure/table/reinforced,/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/pen{pixel_x = 4; pixel_y = 4},/turf/open/floor/plasteel/black,/area/turret_protected/ai) +"cBA" = (/obj/machinery/airalarm{frequency = 1439; pixel_y = 23},/obj/structure/chair{dir = 8},/turf/open/floor/plasteel/black,/area/turret_protected/ai) +"cBB" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/black,/area/turret_protected/ai) +"cBC" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 8},/turf/open/floor/plasteel/black,/area/turret_protected/ai) +"cBD" = (/obj/machinery/light/small{dir = 1},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_Toxins = 0},/obj/machinery/firealarm{dir = 4; pixel_x = 24},/turf/open/floor/plasteel/black,/area/turret_protected/ai) +"cBE" = (/obj/structure/table/reinforced,/obj/item/weapon/folder/white,/turf/open/floor/plasteel/black,/area/turret_protected/ai) +"cBF" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/plasteel/black,/area/turret_protected/ai) +"cBG" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/turf/open/floor/plasteel/black,/area/turret_protected/ai) +"cBH" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/black,/area/turret_protected/ai) +"cBI" = (/obj/structure/chair/office/dark,/obj/structure/extinguisher_cabinet{pixel_x = 27; pixel_y = 0},/turf/open/floor/plasteel/black,/area/turret_protected/ai) +"cBJ" = (/obj/structure/grille,/turf/open/floor/plating,/area/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) +"cBK" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/turret_protected/ai) +"cBL" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_command{name = "AI Core"; req_access_txt = "65"},/turf/open/floor/plasteel/black,/area/turret_protected/ai) +"cBM" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/turret_protected/ai) +"cBN" = (/obj/docking_port/stationary{dheight = 9; dir = 2; dwidth = 5; height = 24; id = "syndicate_se"; name = "southeast of station"; turf_type = /turf/open/space; width = 18},/turf/open/space,/area/space) +"cBO" = (/turf/open/floor/bluegrid,/area/turret_protected/ai) +"cBP" = (/turf/open/floor/plasteel/black,/area/turret_protected/ai) +"cBQ" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/ai_slipper{icon_state = "motion0"; uses = 10},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/black,/area/turret_protected/ai) +"cBR" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/obj/machinery/status_display{pixel_x = -32},/turf/open/floor/bluegrid,/area/turret_protected/ai) +"cBS" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/turf/open/floor/plasteel/black,/area/turret_protected/ai) +"cBT" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/black,/area/turret_protected/ai) +"cBU" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/hologram/holopad,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9; pixel_y = 0},/turf/open/floor/plasteel/black,/area/turret_protected/ai) +"cBV" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 5},/turf/open/floor/plasteel/black,/area/turret_protected/ai) +"cBW" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/turf/open/floor/plasteel/black,/area/turret_protected/ai) +"cBX" = (/obj/machinery/light{icon_state = "tube1"; dir = 4},/obj/machinery/ai_status_display{pixel_x = 32},/turf/open/floor/bluegrid,/area/turret_protected/ai) +"cBY" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/machinery/turretid{name = "AI Chamber turret control"; pixel_x = 5; pixel_y = -24},/turf/open/floor/bluegrid,/area/turret_protected/ai) +"cBZ" = (/obj/machinery/door/window{dir = 1; name = "AI Core Door"; req_access_txt = "16"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/open/floor/bluegrid,/area/turret_protected/ai) +"cCa" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/power/apc{cell_type = 5000; dir = 2; name = "AI Chamber APC"; pixel_y = -24},/obj/machinery/flasher{id = "AI"; pixel_x = -11; pixel_y = -24},/obj/machinery/camera/motion{c_tag = "MiniSat AI Chamber North"; dir = 1; network = list("MiniSat")},/turf/open/floor/bluegrid,/area/turret_protected/ai) +"cCb" = (/obj/machinery/porta_turret/ai{dir = 4},/turf/open/floor/bluegrid,/area/turret_protected/ai) +"cCc" = (/turf/closed/wall,/area/turret_protected/ai) +"cCd" = (/obj/effect/landmark/start{name = "AI"},/obj/item/device/radio/intercom{broadcasting = 0; freerange = 1; listening = 1; name = "Common Channel"; pixel_x = -27; pixel_y = -9},/obj/item/device/radio/intercom{anyai = 1; freerange = 1; listening = 0; name = "Custom Channel"; pixel_x = 0; pixel_y = -31},/obj/item/device/radio/intercom{anyai = 1; broadcasting = 0; freerange = 1; frequency = 1447; name = "Private Channel"; pixel_x = 27; pixel_y = -9},/obj/machinery/newscaster/security_unit{pixel_x = -28; pixel_y = -28},/obj/machinery/requests_console{department = "AI"; departmentType = 5; pixel_x = 28; pixel_y = -28},/turf/open/floor/bluegrid,/area/turret_protected/ai) +"cCe" = (/obj/machinery/ai_slipper{icon_state = "motion0"; uses = 10},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/black,/area/turret_protected/ai) +"cCf" = (/obj/structure/lattice,/obj/machinery/camera{c_tag = "MiniSat External SouthWest"; dir = 8; network = list("MiniSat"); pixel_x = 0; pixel_y = 0; start_active = 1},/turf/open/space,/area/space) +"cCg" = (/obj/effect/landmark{name = "tripai"},/obj/item/device/radio/intercom{anyai = 1; freerange = 1; listening = 0; name = "Custom Channel"; pixel_x = 0; pixel_y = 28},/obj/item/device/radio/intercom{broadcasting = 0; freerange = 1; listening = 1; name = "Common Channel"; pixel_x = -27; pixel_y = 5},/obj/item/device/radio/intercom{anyai = 1; broadcasting = 0; freerange = 1; frequency = 1447; name = "Private Channel"; pixel_x = 0; pixel_y = -25},/turf/open/floor/bluegrid,/area/turret_protected/ai) +"cCh" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/showcase{density = 0; desc = "An old, deactivated cyborg. Whilst once actively used to guard against intruders, it now simply intimidates them with its cold, steely gaze."; dir = 8; icon = 'icons/mob/robots.dmi'; icon_state = "robot_old"; name = "Cyborg Statue"; pixel_x = 9; pixel_y = 2},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; on = 1},/turf/open/floor/plasteel/black,/area/turret_protected/ai) +"cCi" = (/obj/structure/showcase{density = 0; desc = "An old, deactivated cyborg. Whilst once actively used to guard against intruders, it now simply intimidates them with its cold, steely gaze."; dir = 4; icon = 'icons/mob/robots.dmi'; icon_state = "robot_old"; name = "Cyborg Statue"; pixel_x = -9; pixel_y = 2},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1},/turf/open/floor/plasteel/black,/area/turret_protected/ai) +"cCj" = (/obj/effect/landmark{name = "tripai"},/obj/item/device/radio/intercom{anyai = 1; freerange = 1; listening = 0; name = "Custom Channel"; pixel_x = 0; pixel_y = 28},/obj/item/device/radio/intercom{broadcasting = 0; freerange = 1; listening = 1; name = "Common Channel"; pixel_x = 27; pixel_y = 5},/obj/item/device/radio/intercom{anyai = 1; broadcasting = 0; freerange = 1; frequency = 1447; name = "Private Channel"; pixel_x = 0; pixel_y = -25},/turf/open/floor/bluegrid,/area/turret_protected/ai) +"cCk" = (/obj/structure/lattice,/obj/machinery/camera{c_tag = "MiniSat External SouthEast"; dir = 4; network = list("MiniSat"); pixel_x = 0; pixel_y = 0; start_active = 1},/turf/open/space,/area/space) +"cCl" = (/obj/docking_port/stationary{dheight = 9; dir = 2; dwidth = 5; height = 24; id = "syndicate_s"; name = "south of station"; turf_type = /turf/open/space; width = 18},/turf/open/space,/area/space) +"cCm" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/open/floor/plasteel/black,/area/turret_protected/ai) +"cCn" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/closed/wall,/area/turret_protected/ai) +"cCo" = (/obj/machinery/power/smes{charge = 5e+006},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/open/floor/bluegrid,/area/turret_protected/ai) +"cCp" = (/obj/machinery/camera/motion{c_tag = "MiniSat AI Chamber South"; dir = 2; network = list("MiniSat")},/turf/open/floor/bluegrid,/area/turret_protected/ai) +"cCq" = (/obj/machinery/power/terminal{icon_state = "term"; dir = 1},/obj/machinery/ai_slipper{icon_state = "motion0"; uses = 10},/turf/open/floor/bluegrid,/area/turret_protected/ai) +"cCr" = (/obj/machinery/firealarm{dir = 1; pixel_y = -24},/turf/open/floor/plasteel/black,/area/turret_protected/ai) +"cCs" = (/obj/machinery/airalarm{dir = 1; icon_state = "alarm0"; pixel_y = -22},/obj/machinery/hologram/holopad,/turf/open/floor/plasteel/black,/area/turret_protected/ai) +"cCt" = (/obj/machinery/camera{c_tag = "MiniSat External South"; dir = 2; network = list("MiniSat"); pixel_x = 0; pixel_y = 0; start_active = 1},/turf/open/space,/area/space) (1,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(2,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(3,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(4,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(5,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(6,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(7,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(8,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(9,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(10,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(11,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(12,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(13,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(14,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(15,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -cyc -cyc -cye -cyc -cyc -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(16,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -cyc -cyw -cyi -cyw -cyc -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(17,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -cyc -cyi -cyi -cyi -cyc -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(18,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -cyc -cyi -cyi -cyi -cyc -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(19,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -cyc -cyi -cyi -cyi -cyc -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(20,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -cyc -cyi -cyi -cyi -cyc -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(21,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -cyc -cyi -cyi -cyi -cyc -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(22,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -cyc -cyi -cyi -cyi -cyc -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(23,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -cyc -cyi -cyi -czd -cyc -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(24,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -cyc -cyw -cyi -cyw -cyc -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(25,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -cyc -cyc -cye -cyc -cyc -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(26,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -cyc -cyi -cyc -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(27,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aae -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -cyc -cyc -cye -cyc -cyc -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(28,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -cyc -cyc -cyw -cyi -cyw -cyc -cyc -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(29,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -cpe -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -cwV -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aae -cyc -cyf -cym -cym -cym -cyF -aaa -cyc -cyw -cyi -cyi -cyi -cyw -cyc -aaa -cyf -cym -cym -cym -cyF -cyc -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(30,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aae -aaf -aaa -aqH -apK -aqH -aaa -aaa -aae -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aqF -apH -aqF -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -cyc -cyc -cyo -cyo -cyo -cyc -cyc -cyc -cyi -cyi -cyi -cyi -cyi -cyc -cyc -cyc -cyo -cyo -cyo -cyc -cyc -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(31,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaa -aqH -cpK -aqH -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aqF -cxl -aqF -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -cyc -cyn -cyv -cyv -cyn -cyc -cyw -cyi -cyi -cyi -cyi -cyi -cyw -cyc -cyn -cyv -cyv -cyn -cyc -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(32,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaa -aqH -cpL -aqH -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aqF -cxx -aqF -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -cyc -cyn -cyv -cyv -cyc -cyi -cyi -cyi -cyi -cyi -cyi -czr -cyc -cyv -cyv -cyn -cyc -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(33,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaa -aaa -aaa -aaa -aaf -aaa -ckq -cqq -ckq -aaa -aaa -aaa -aCS -aCV -aCV -aCV -aCS -aaa -aaa -aaa -cwU -cxF -cwU -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaa -aaa -aaa -aaa -aaf -aaa -aaa -aaa -cyc -cyc -cyH -cyc -cyc -cyc -cyR -cza -cyR -cyc -cyc -cyc -cyH -cyc -cyc -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(34,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaf -aaf -aaf -aaf -aaa -aaf -arB -asE -cyb -asE -arB -aaa -aaa -aCS -aFC -aEr -aIG -aCS -aaa -aaa -arB -asE -cyb -asE -arB -aaa -cxt -cxD -cxt -aaa -aaf -aaa -aaa -aaa -aaf -aaf -aaa -aaa -aaa -cyc -cyc -cyi -cyi -cyi -cyi -cyi -cyi -cyi -cyi -cyi -cyi -cyi -cyc -cyc -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(35,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -apJ -apJ -apJ -apJ -apJ -apJ -apJ -apJ -apJ -apJ -apJ -auO -auP -cwT -aAC -aaa -aaa -aCS -aFC -aEr -aIG -aCS -aaa -aaa -aAC -auO -auP -cxY -arB -cxt -cxy -cxC -cxy -cxt -aaf -aaa -aaf -aaa -aAC -aaf -aaa -aaa -cyc -cyc -cyw -cyI -cyi -cyi -cyi -cyi -cyi -cyi -cyi -cyi -cyi -cyi -cyc -cyc -cyc -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(36,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -amO -aac -aac -aac -aac -czq -aac -aac -aac -clO -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -apJ -apN -arC -arC -arC -arC -arC -arC -arC -aEp -apJ -avP -cyb -asE -arB -aaa -aCS -aCS -aCS -aHs -aCS -aCS -aCS -aaa -arB -asE -cyb -avP -arB -cxu -cxC -cxC -cxH -cxu -arB -awW -awW -asE -arB -aaf -aaa -cyc -cyc -cyw -cyi -cyi -cyi -cyi -cyc -cyc -cyc -cyc -cyc -cyc -cyi -cyi -cyc -cyc -cyc -cyc -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(37,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -amO -aac -aac -aac -aac -aac -aac -cmM -cnV -cmM -cmP -con -coU -cpr -cpH -cqI -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -apJ -aqI -arD -arD -arD -arD -arD -arD -arD -auN -apJ -awY -ayk -awW -aAD -awW -aCS -aEo -aEr -aEr -aEr -aKg -aCS -awW -awW -awW -aQG -aRX -arB -cxu -cxz -cxC -cxH -cxu -arB -awY -ayk -awW -aAD -awW -cyc -cyc -cyc -cyc -cyc -cyc -cyw -cyi -cyc -cyV -cyi -cyi -cyi -czi -cyi -cyi -cye -cyi -cyw -cyc -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(38,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aac -cmT -cmT -cmT -cmT -cmT -aac -cmP -cmP -cmP -cmP -coP -cmP -cpF -cpH -crg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -apJ -aqI -arD -arD -arD -arD -arD -arD -arD -auN -apJ -awZ -ayl -azy -auP -azy -aCU -aEr -aFE -aFE -aFE -aEr -aLs -azy -auP -azy -ayl -aRY -awW -cxv -cxB -cxC -cxI -cxv -awW -awZ -ayl -beK -auP -cyt -cyd -cyi -cyi -cyx -cyx -cyw -cyc -cyi -cyc -cyW -cyi -cze -czm -cyc -cyi -cyi -cyc -cyi -czB -cyc -cyc -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(39,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aac -aTp -aTp -aTp -aTp -aTp -aac -cmO -cmP -cmP -cmP -coI -coV -cpw -cpH -crf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -apJ -aqI -arD -arD -arD -atk -arD -arD -arD -auN -apJ -awZ -ayk -awW -awW -awW -aCS -aEq -aEr -aEr -aEr -aEr -aCS -awW -awW -awW -awV -aRY -awW -cxu -cxB -cxC -cxI -cxu -awW -awZ -ayk -awW -awW -awW -cyc -cyi -cyi -cyi -cyi -cyJ -cyc -cyi -czi -cyi -cyi -cyi -czl -cyc -cyi -cyi -cyc -cyi -cyi -cyw -cyc -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(40,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -amO -aac -aac -aac -clO -aaa -aaa -aac -aTp -cnh -aTp -aTp -aTp -aac -cnz -cmP -cmP -cmP -coQ -aac -aac -aac -czv -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -apJ -aqI -arD -arD -asG -atl -awX -arD -arD -auN -apJ -awZ -cqr -azz -aAF -awW -aCV -aEt -aFE -aFE -aFE -aEr -aCV -awW -aOf -azz -aPu -aRY -awW -cxu -cxB -cxC -cxI -cxu -awW -awZ -aym -azz -aAF -awW -cyc -cyk -cyi -cyi -cyi -cyi -cyc -cyi -cyc -cyc -cyc -cyc -cyc -cyc -cyi -cyI -cyR -czA -cyi -cyi -cyc -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(41,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aac -aDu -bwP -bBM -aac -czo -aaa -aac -cns -cnu -cnI -aTp -aTp -aac -cmS -cmP -cmP -cmP -cod -aac -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -apJ -aqI -arD -arD -arD -arD -arD -arD -arD -auN -apJ -awZ -aIK -ayl -aAE -awW -aCV -aEs -aEr -aHt -aEr -aEr -aCV -awW -aOe -ayl -ayl -aRY -awW -cxu -cxB -cxC -cxI -cxu -awW -awZ -ayl -ayl -aAE -awW -cyc -cyj -cyi -cyi -cyi -cyi -cye -cyi -cyi -cyi -cyi -cyi -cyi -cyi -cyi -cyi -cyR -cyi -cyi -czC -cyc -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(42,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -amP -aTp -aTp -aTp -aac -aac -aac -aac -aac -aac -aac -coe -cog -aac -aac -cnT -col -com -aac -aac -aac -clO -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -apJ -aqI -arD -arD -arD -arD -arD -arD -arD -auN -apJ -awZ -aIK -ayl -aAH -awW -aCV -aEv -aFE -aFE -aFE -aEr -aCV -awW -aOh -ayl -ayl -aRY -awW -cxw -cxB -cxC -cxI -cxw -awW -awZ -ayl -ayl -bgi -awW -cyc -cyi -cyi -cyi -cyi -cyi -cyc -cyw -cyi -cyi -cyi -cyi -cyi -cyi -cyi -czw -cyR -cyi -cyi -cyi -cyc -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(43,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -amP -aDJ -aTp -aTp -aac -cmH -aTp -aTp -aTp -aTp -coh -aTp -aTp -coj -aTp -aTp -aTp -aTp -aTp -coh -cpH -cqI -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -apJ -aqI -arD -arD -arD -arD -arD -arD -arD -auN -apJ -awZ -cry -azA -aAG -awW -aCV -aEu -aEr -aEr -aEr -aEr -aCV -awW -aOg -azA -aQH -aRY -awW -cxu -cxB -cxC -cxI -cxu -awW -awZ -ayn -azA -bgh -awW -cyc -cyi -cyi -cyi -cyi -cyw -cyc -cyc -cyc -cyR -czj -cyR -cyc -cyc -cyc -cyc -cyc -cyi -cyi -cyi -cyc -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(44,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -amP -biZ -apT -aTp -cma -aTp -aTp -aTp -aTp -aTp -cdP -aTp -aTp -aTp -aTp -aTp -aTp -aTp -aTp -coY -cpH -crg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -apJ -aqN -asD -asD -asD -asD -asD -asD -asD -aFD -apJ -awZ -crz -awW -awW -awW -aCS -aEw -aFE -aFE -aFE -aKh -aCS -awW -awW -awW -awV -aRY -awW -cxu -cxB -cxC -cxI -cxu -awW -awZ -ayk -awW -awW -awW -cyc -cyi -cyi -cyi -cyw -cyc -cyw -cyi -cyi -cyi -cyi -cyi -cyi -cyX -cyX -cyX -cyc -cyi -cyi -cyw -cyc -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(45,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -amP -aXH -aTp -clK -aac -cmJ -cmm -cmm -cmm -cmm -coh -aTp -aTp -aTp -aTp -aTp -aTp -aTp -aTp -coh -cpH -crf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -apJ -apJ -apJ -apJ -ajZ -atp -asF -asF -asF -asF -apJ -axh -aIK -azy -auP -azy -aCU -aEr -aEr -aEr -aEr -aEr -aCU -azy -auP -azy -ayl -aRY -awW -cxu -cxv -cxE -cxv -cxu -awW -awZ -ayl -beL -auP -cyu -cye -cyi -cyq -cyi -cyc -cyw -cyi -cyi -cyi -cyi -cyi -cyi -cyi -cyi -cyi -cyi -cyw -cyw -czy -cyc -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(46,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -amP -buA -aTp -aTp -aac -aac -aac -cmp -aac -aac -aac -cof -coh -aac -aac -aac -coN -coR -aac -aac -aac -cmE -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaf -apJ -asH -atI -arE -ayq -ayq -auc -avp -axI -ayp -awW -aAD -awW -aCS -aEy -aEy -aEy -aEy -aEy -aCS -awW -awW -awW -aQG -aRX -arB -aaa -aWa -aXI -awW -aaa -arB -awY -ayk -awW -aAD -awW -cyc -cyc -cyc -cyz -cyc -czy -cyO -cyi -cyi -cyi -cyi -cyi -cyi -cyi -cyi -czx -czn -cyc -cyc -cyc -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(47,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aac -buA -aTp -clL -aac -cmE -aaa -aaa -aaa -aac -aTp -aTp -aTp -aac -coo -aTp -aTp -aTp -coW -cpf -aac -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -asF -asI -auQ -auQ -auQ -aCX -aub -aLu -axH -ayo -azB -awW -aaa -aCS -aEx -aFF -aFF -aFF -aKi -aCS -aaa -awW -aPt -aPu -aRY -arB -awW -awW -auP -awW -awW -arB -awZ -aym -azB -awW -aaf -aaa -aaa -cyc -cyy -cyc -czy -cyO -cyi -cyi -cyX -czb -cyX -cyi -cyi -cyi -cyi -cyw -cyc -cyc -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aae -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(48,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -bJS -aac -aac -aac -cmE -aaa -aaa -aaa -aaa -bxh -aTp -aTp -aTp -aac -coE -aTp -aTp -aTp -coX -aac -aac -aac -czz -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -apJ -asJ -avQ -axc -aCT -atb -aIH -apJ -clB -aIK -azC -arB -arB -arB -awW -awW -awW -awW -awW -arB -arB -arB -aPv -ayl -aRZ -asE -aAF -awW -cyl -awW -baF -asE -bbb -ayl -beN -arB -aaf -aaf -aaf -cyc -cyA -cyc -cyw -cyP -cyi -cyi -cyY -czc -cyX -cyi -cyi -cyi -cyw -cyc -cyc -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(49,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -cni -aTp -aTp -aTp -aac -coD -aTp -aTp -aTp -aTp -aTp -bsB -cpH -cqI -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -apJ -apJ -apJ -apJ -apJ -apJ -apJ -apJ -axG -aIK -aym -aAI -aBH -azz -azz -azz -azz -azz -azz -aLv -aBH -azz -aPu -ayl -ayl -aNh -aym -azz -ayl -azz -aPu -ayl -aIK -ayl -beM -aAC -aaf -aaf -aaf -aaf -aaf -cyc -cyc -cyc -cyR -cyR -cyR -cyR -cyR -cyR -cyR -cyc -cyc -cyc -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(50,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -bJS -aac -aac -aac -aac -coG -cnh -aTp -aTp -aTp -aTp -cut -cpH -crg -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaf -aaf -aaf -alU -atJ -amC -aKf -bEJ -axb -ayr -azD -aAJ -azD -aCp -aEz -aFG -aHu -ayl -ayl -ayl -aNb -ayl -ayl -ayl -ayl -aTr -aUM -ayl -ayl -aWc -baG -ayl -aIK -ayl -beM -asE -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(51,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -cnW -aac -coF -coO -aTp -cok -cok -aTp -coi -cpH -crf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aae -aaa -aaa -aaa -aag -alU -alU -alU -aCW -amC -aud -alU -alU -atO -alU -alU -aBI -aBI -aBI -aBI -aBI -aNh -aKj -aLw -aLw -aLw -aLw -aQI -aNh -czK -czK -czK -czK -aXX -czK -czK -bbc -beO -beO -beO -beO -beO -beO -beO -beO -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(52,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -bJS -aac -aac -aac -aac -cmp -aac -aac -aac -cmE -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aag -aqJ -amC -aqJ -ase -avq -aum -avq -axJ -cwH -axJ -aAj -aBK -aCL -aEG -aFI -aBI -aIM -aKk -aLy -aNd -aOj -aPx -aQJ -ayl -czK -aUO -aUy -aWm -aWf -aUQ -czK -bhN -bcl -beQ -bgk -bhI -bjb -bkz -blS -bnv -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(53,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -alU -alU -alU -alU -asc -atn -aLt -aue -aue -aue -aue -aAe -aBJ -aCs -aEE -aFH -aGZ -aIJ -aJX -aLi -aMO -aNR -aOY -aQl -bcD -aTs -aUN -baH -aWi -aXY -baH -aTs -bbd -beO -beP -bgj -beO -bja -beO -bja -bja -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aae -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(54,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -alU -apL -aqK -alU -asc -atq -aon -amC -axe -ays -alU -aAM -aBI -aCY -aEI -aFK -aHy -aIM -aKk -aLz -aNe -aNe -aLz -aQo -aSb -czK -aUQ -aUA -aWr -aXZ -aUQ -czK -bbe -beO -beS -bgj -bhJ -bjd -bkB -cAI -bja -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaS -aaS -aaS -aaS -aaS -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -cBW -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(55,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -alU -alU -apM -aqL -alU -asc -atq -auX -avS -amC -amC -alU -aAM -aBI -aDc -aEH -bxM -aHa -aIL -aJY -aLj -aMP -aMP -aPa -aQn -ayl -czK -aUP -aUO -aXL -aXZ -aUO -czK -bbe -beO -beR -bgj -bgj -bjc -cAF -cAF -bja -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaS -aaa -aaf -aaa -aaS -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(56,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaS -aaS -aaS -aaS -aaS -aaS -aaS -aaS -aaS -aaS -aaS -aaS -aba -aaS -aaS -aaf -aaf -aaf -aaa -aaa -aaa -alU -aoS -amC -aom -ank -asc -atq -auZ -bsU -axf -amC -alU -auT -aBI -aDf -aEK -aFM -aHy -ayl -aKk -aLA -aNf -aNf -aLA -aQD -aSd -czK -aUQ -aUW -aXL -aXZ -baJ -czK -bbe -beO -beU -bgl -bhL -bjc -cAF -blV -beO -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaS -aaf -chJ -aaf -aaS -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(57,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -abY -aaa -aaf -aaa -aaf -aaa -aaf -aaa -acy -aaa -aaf -aaa -aiS -aaa -aaS -aaa -aaa -aaa -aaa -aaa -aaa -alU -aoR -apO -aqM -arF -asc -atq -auY -amC -amC -ayt -alU -aAw -aBl -aCZ -aEJ -aFL -aBI -aIO -aKk -asE -asE -asE -asE -aQD -ayl -czK -aUl -aUR -aWs -aXZ -aUQ -czK -bbf -beT -beT -bdQ -beZ -bje -bkC -cAJ -beO -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaS -aaS -aaS -aaS -aaS -aaf -aaf -aaa -chI -aaa -aaf -aaf -aaS -aaS -aba -aaS -aaS -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(58,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -abY -aaa -acV -adv -adZ -aaa -acV -adv -adZ -aaa -acV -adv -adZ -aaa -aaS -aaf -aaf -aaf -aaa -aaa -aaa -alU -aoT -amC -aqO -arG -asc -atq -ava -amC -axg -ayu -azF -azF -azF -azF -azF -azF -azF -aIQ -aKk -aLC -aNg -aOk -aPy -aRd -aRM -aTt -aUm -aUm -aWt -aYd -aZn -aTt -bbg -bdG -bdu -bdT -beO -bjf -beO -beO -beO -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aae -aaa -aaa -aaa -aaa -aaa -aaa -aaS -aaa -aaa -aaf -aaa -aaf -aaa -aaa -chI -aaa -aaa -aaf -aaa -aaf -aaa -aaa -aaS -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(59,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aae -aaa -aaa -abY -aaf -acV -adu -adZ -aaa -acV -adu -adZ -aaa -acV -adu -adZ -aaf -aaf -aaa -aaa -aaa -aaa -aaa -aaa -alU -alU -alU -alU -arG -ash -atq -alU -alU -alU -alU -azF -aAP -aAP -aAP -aEF -aFN -azF -aIP -aKl -aLB -aLB -aLB -aLB -aQK -aSe -czK -aUQ -aUQ -aXN -aUO -aUQ -czK -bcI -aPz -bdt -bdR -aSg -aYf -bkD -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaS -aaf -cca -cca -cca -cca -cca -aaa -chK -aaa -cca -cca -cca -cca -cca -aaf -aaS -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aae -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(60,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -abY -aaa -acV -adu -adZ -aaf -acV -adu -adZ -aaf -acV -adu -adZ -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaa -ali -aoX -arI -asi -atr -atN -atN -atN -ayi -azq -aAK -aBv -aDa -aAQ -aAQ -azF -aIR -ayl -ayl -aNi -ayl -ayl -ayl -aSf -aTq -aTq -aTq -aTq -aTq -aTq -aTq -aPz -aPz -bdB -aWv -aTu -bjg -bkD -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaS -aaa -ccc -ccX -ccX -ccX -ccX -cgz -chL -ciP -cjH -cjH -cjH -cjH -cnl -aaa -aaS -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(61,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaf -acV -adu -adZ -aaa -acV -adu -adZ -aaa -acV -adu -adZ -aaf -aaf -aaf -aaf -aaf -aaa -aaa -aaa -aaf -aaa -ali -amC -arH -atP -auV -auV -auV -axK -ayh -azi -aAx -aBm -aAQ -aAQ -aAQ -azF -azF -azF -aLD -aNh -aNh -aPz -aPz -aPz -aPz -aSg -aWj -aXP -aZr -baL -bbI -bcK -aPz -bdB -aWv -bfh -aPz -aPz -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaS -aaf -ccb -ccb -ccb -ccb -ccb -aaa -chL -aaa -ccb -ccb -ccb -ccb -ccb -aaf -aaS -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(62,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaS -aaS -aaS -aaf -aaa -acV -adu -adZ -aaa -acV -adu -adZ -aaa -acV -adu -adZ -aaa -aaf -aaa -ajV -alR -alR -alR -alR -alU -alU -alU -aqP -arJ -alU -avb -aaH -bOi -atO -asK -azF -aAT -aBw -aDg -aAQ -aAQ -aHz -aIS -aKn -aLF -aLF -aLF -aPz -aQL -aSg -aSg -aSg -aWl -aSg -aZs -baN -bbK -bcM -bdH -bdD -bea -bfq -bji -bkF -cys -cys -cys -cys -cys -cys -cys -cys -cys -cys -cys -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aag -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaS -aaa -aaa -aaa -aaf -aaa -aaa -aaa -chL -aaa -aaa -aaa -aaf -aaa -aaa -aaa -aba -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(63,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaS -aaa -aaf -aaa -aaa -aaa -adw -aaa -aaa -aaa -adw -aaa -aaa -aaa -adw -aaa -aaa -ajV -ajV -ajV -alQ -amy -ang -alR -aoj -amC -apP -amC -arH -alU -aaH -bNb -apQ -atO -asK -azF -aAS -aFP -aAQ -aAQ -aAQ -aAQ -aAQ -aKm -aLE -aNj -aLE -aPz -aPz -aPz -aTu -aUS -aWk -aWk -aWk -baM -bbJ -bcL -aWk -bdC -bdZ -bhO -bjh -bkE -cys -cyB -cyB -cyB -cyB -cyB -cyB -cyB -cyB -czf -cys -czs -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aag -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaS -aaf -cca -cca -cca -cca -cca -aaa -chL -aaa -cca -cca -cca -cca -cca -aaf -aaS -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(64,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaS -aaf -abs -abZ -abZ -acW -ady -ady -ady -ady -ady -ady -ady -ady -ady -ady -ajq -ajW -akB -alh -alT -amA -ani -anI -aol -aol -aol -aol -arL -alU -avU -avb -bOi -atO -asK -azF -aAU -aBG -aAQ -aAQ -aAQ -aBM -aAQ -aKn -aLE -aNl -aOm -aPB -aQM -aQM -aTv -aUT -aPz -aXQ -aXQ -aXQ -aXQ -aXQ -aXQ -aXQ -aXQ -bhQ -bjj -bkF -cys -cyB -cyB -cyB -cyB -cyB -cyB -cyB -cyB -cyB -czp -czt -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aag -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaS -aaa -ccc -ccX -ccX -ccX -ccX -cgz -chL -ciP -cjH -cjH -cjH -cjH -cnl -aaa -aaS -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(65,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaS -aaa -aaf -aaa -aaa -aaa -adx -aaa -aaa -aaa -adx -aaa -aaa -aaa -adx -aaa -aaa -ajV -ajV -ajV -alS -amz -anh -anH -aok -anJ -anJ -aFJ -arK -alU -alU -ali -alU -atO -asK -azF -aAP -aAP -aAP -aAQ -aFO -aHA -aIT -azF -aLG -aNk -aOl -aPA -aPA -aPA -aPA -aPA -aPA -aXQ -aZt -aXQ -aZt -aXQ -aZt -aXQ -aZt -bhQ -bjj -bkF -cys -cyB -cyB -cyB -cyB -cyB -cyB -cyB -cyB -cyB -czp -czt -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aag -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaS -acy -ccb -ccb -ccb -ccb -ccb -aaa -chL -aaa -ccb -ccb -ccb -ccb -ccb -aaf -aaS -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(66,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaS -aba -aaS -aaf -aaa -acV -adz -adZ -aaa -acV -adz -adZ -aaa -acV -adz -adZ -aaa -aaf -aaa -ajV -alR -alR -alR -alR -aom -amC -apP -amC -arN -amC -amC -amC -amC -axi -asK -azF -azF -azF -azF -aEL -azF -azF -azF -azF -aLE -aNn -aOl -aPA -aQO -aSh -aTw -aUU -aWn -aXQ -aZv -aXQ -bbL -aXQ -bdJ -aXQ -bgr -bhQ -bjj -bkF -cys -cyB -cyB -cyB -cyB -cyB -cyB -cyB -cyB -cyB -czp -czt -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aag -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aba -aaa -aaa -aaa -aaf -aaa -aaa -aaa -chL -aaa -aaa -aaa -aaf -aaa -aaa -aaa -aaS -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(67,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaf -acV -adz -adZ -aaa -acV -adz -adZ -aaa -acV -adz -adZ -aaf -aaf -aaa -aaa -alU -alF -anj -anJ -anl -aoU -alU -amC -arM -alU -atT -asO -avV -atO -ayw -atN -aAV -alU -aDh -aDo -aFQ -aHe -aIN -aKp -aLE -aNm -aOl -aPA -aQN -aQN -aQN -aUn -aTy -aWy -aYe -aZw -aZw -bbq -bct -bfa -bfa -bhQ -bjk -bkE -cys -cyB -cyB -cyB -cyB -cyS -cyB -cyB -cyB -czf -cys -czu -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aag -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaS -aaf -cca -cca -cca -cca -cca -aaa -chL -aaa -cca -cca -cca -cca -cca -aaf -aaS -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(68,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaS -aaa -acV -adz -adZ -aaf -acV -adz -adZ -aaf -acV -adz -adZ -aaa -aaf -aaf -aaf -alU -alF -anl -amC -alU -alU -alU -amC -alU -alU -apP -alU -alU -atP -auV -axK -aAN -aBL -aDd -aDd -aFR -aDd -aDd -aJZ -aLk -aNo -aOo -aPA -aQQ -aQN -aSV -aUo -aUX -aXp -baO -aZo -baw -bcO -baw -cBn -bgs -bhQ -bjk -bkF -cys -cys -cys -cyN -cyQ -cys -cyT -cyZ -cys -cys -cys -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aag -aaa -aoV -bZm -aoV -aoV -aoV -aaa -aaS -aaa -ccc -ccX -ccX -ccX -ccX -cgz -chL -ciP -cjH -cjH -cjH -cjH -cnl -aaa -aaS -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(69,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaS -aaf -acV -adz -adZ -aaa -acV -adz -adZ -aaa -acV -adz -adZ -aaf -aaf -aaa -aaa -alU -alU -ank -alU -alU -aoV -alU -amC -amC -amC -arN -alU -avW -amC -ayx -atO -aAL -aBQ -aDb -aDo -aFY -aDo -aDo -aKp -aLE -aLE -aOn -aPA -aQP -aQN -aTx -aUV -aWo -aXQ -aXQ -aXQ -aXQ -aXQ -aXQ -aXQ -aXQ -bhQ -bjk -aPz -aaa -aaa -boI -bqi -brJ -boI -brJ -bvS -boI -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aag -aaa -aoV -bVz -apQ -apQ -aoV -aaa -aaS -aaf -ccb -ccb -ccb -ccb -ccb -aaa -chL -aaa -ccb -ccb -ccb -ccb -ccb -aaf -aaS -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(70,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaS -aaa -acV -adA -adZ -aaa -acV -adA -adZ -aaa -acV -adA -adZ -aaa -aaS -aaa -aaa -alU -amD -anm -amC -ali -aoV -ali -amC -alU -asO -atL -alU -avX -axf -amC -atO -aAY -aBQ -aDl -bxk -aFS -aDo -aIX -aBQ -aLE -aLE -aOp -aPA -aQR -aQN -aTA -aUq -aWq -aXs -aYH -aZx -bbO -aPA -bdM -aPz -bgt -bhS -bjk -aPz -aaa -aaa -blW -bqj -brK -blW -brK -bvT -blW -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aag -aaa -bVw -bVz -bVw -bVw -aoV -aaa -aaS -aaa -aaa -aaf -aaa -aaf -aaa -aaa -chL -aaa -aaa -aaf -aaa -aaf -aaa -aaa -aaS -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(71,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaS -aaa -aaf -aaa -aaf -aaa -aaf -aaa -aaf -aaa -aaf -aaa -aaf -aaa -aaS -aaf -aaf -alU -amC -amC -amC -ali -apQ -ali -amC -alU -alU -alU -alU -alU -axj -alU -atO -aAY -aBQ -aDk -aDo -aDo -aDo -aIW -aBQ -aLE -aLE -aOl -aPC -aQN -aQN -aTz -aUp -aWq -aXr -aZx -cBh -bbN -aPA -bdL -aPz -bgt -bhR -bjk -aZE -blW -blW -blW -bqi -cyD -blW -cyD -bvS -blW -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aag -aaa -apQ -bVz -aoV -bVw -aoV -aaa -aaS -aaS -aaS -aaf -aaf -aaf -aaf -aaf -chM -aaf -aaf -aaf -aaf -aaf -aaS -aaS -aaS -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(72,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaS -aaS -aaS -aaS -aaS -aba -aaS -aaS -aaS -aaS -aaS -aaS -aaS -aaS -aaS -aaa -aaa -alU -amE -ann -amC -alU -aoV -ali -amC -alU -arN -atU -alU -atU -amC -atJ -atO -aAY -aBQ -aDn -aDo -aDo -aHD -aIZ -aBQ -aLE -aLE -aOq -aPD -aQT -aQT -aTC -aUs -aUY -aXv -aYS -aZx -bbO -aPA -bdM -aPz -aSg -bhT -bjk -aZE -blY -bnw -boJ -bql -brL -btr -bnw -bvV -blW -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aag -aaa -apQ -bVz -apQ -bVw -aoV -aaa -aaa -aaf -aaa -aaa -aaf -aaa -aaa -cfx -chO -cfx -aaa -aaf -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(73,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -alU -alU -alU -ank -alU -aoV -alU -amC -amC -amC -amC -alU -aqO -amC -atJ -atO -aAY -aBQ -aDm -aDo -aDo -aDo -aIY -aBQ -aLE -aLE -aOl -aPA -aQS -aSj -aTB -aUr -aWq -aXt -aPA -aPA -aPA -aPA -aPA -aPz -bel -bfI -bgq -bhY -bkj -bqm -bqm -bps -bjr -bjr -buB -bvU -aZE -aaf -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaf -aaf -aaa -aaa -aag -aaa -bVx -caf -aoV -bVw -apQ -aaa -aaa -aaf -aaa -aaa -aaf -aaa -aaa -cfx -chN -cfx -aaa -aaa -aaf -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(74,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -alU -amF -alU -amC -alU -apQ -alU -alU -alU -alU -amC -alU -atM -axl -auV -azG -aAY -aBQ -aDp -aDo -aFU -aDo -aJb -aKp -aLE -aLE -aOl -aPE -aQV -aQN -aSi -aUu -aWq -aXw -aZB -aZB -aZB -aZB -aPA -bfc -bew -bfM -bjl -bkG -bkp -bmj -bjt -cCo -bjt -bjt -biq -bvV -blW -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -bCq -bCq -bCq -bLv -bCq -aoV -cbj -aoV -bVw -apQ -aaf -bCq -bCq -bCq -bCq -bCq -bCq -cfx -cfx -cyK -cfx -cfx -aaa -aaa -aaf -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(75,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -alU -alU -alU -amC -alU -apQ -aaH -alU -arO -alU -amC -avc -atO -axk -ayy -ayy -aAO -aBN -aDe -aDe -aFT -aDe -aIU -aKa -aLH -aLE -aOl -aPA -aQU -aQN -aQN -aUt -aWq -aXw -aZA -aZA -aZA -aZA -aPA -aWv -aYb -aZE -aZE -aZE -bkn -bmh -bjr -bmb -bjr -bjr -buC -bvV -blW -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -bCq -bJP -bCq -bSn -bCq -bCq -cbj -bLv -bXv -bLv -aaf -bCq -cAy -cAB -ccY -cAD -cAH -cfw -cgA -chP -ciQ -cfw -aaa -aaa -aaa -aaf -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(76,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -ali -anK -ali -aaH -atR -alU -alU -alU -atW -atW -atO -axn -alU -aoX -atJ -aBQ -aDq -aDo -aFZ -aHE -aJc -aKs -aLK -aLK -aOr -aPA -aQX -aQN -aQN -aUv -aWp -aXA -aYX -aYX -aYX -bbs -bcw -bfd -bgw -aZE -bjn -bjr -bkt -bmh -boK -bpz -boK -bjr -bkt -bvV -blW -aaa -aaa -aaa -aaa -aaa -akD -akD -ajX -akD -ajX -akD -akD -aaa -bCq -bPS -bRd -bPS -bPS -bCq -cbk -bLv -bHE -bLv -aaf -bCq -cAA -bHE -bHE -ccZ -cAK -cfw -cgC -chR -ciS -cfw -aaa -aaa -aaa -aaa -aaf -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(77,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -alU -amC -alU -aaH -apQ -apQ -aaH -alU -ali -ali -atO -axm -ayz -ayz -ayz -aBR -aBR -aBR -aBR -aBR -aBR -aBR -aLJ -aLE -aOl -aPA -aQW -aQW -aTD -aQW -aUZ -aXx -aYU -aYU -aYU -bbr -bcu -bfe -bgx -aZE -bjm -bjr -bjr -bmh -boK -bjr -boK -bjr -bjr -bvV -bxu -aaa -aaa -aaa -aaa -aaa -akD -bGg -amI -amI -bHx -anM -akD -aaa -bLv -bPR -bRc -bSo -bTs -bCq -bVy -bLv -cyE -bLv -bLv -bCq -bHE -cAC -ccZ -cAE -ceV -cfw -cgB -chQ -ciR -cfw -aag -aag -aag -aaa -aaa -aaf -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(78,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -ali -aKY -ali -asC -apQ -aaH -apQ -aoV -aoV -apQ -avY -axo -ayB -aaa -aaf -aaa -aaf -aaa -aaf -aaa -aaa -aKu -aLM -aLF -aOs -aPG -aPG -aPG -aPG -aPG -aPA -aPA -aPA -aPA -aPA -aPA -aPA -aWv -bgx -aZE -bjp -bjr -bjr -bmh -boK -bjr -cBp -bjr -buB -bvV -bxu -bxu -bxx -bxu -bxu -bDi -ajX -bGh -bHx -amI -bHx -bLt -bMF -aaa -bCq -bPS -bRf -bSo -bTu -bCq -bVB -bHE -bHE -bYu -bZk -bCq -bTz -bCq -bCq -bCq -bCq -cfw -cgE -chS -cfw -cfw -bCq -bXv -bCq -aaa -aaa -aaa -aaf -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(79,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aae -aaa -aaf -ali -amC -ali -asC -aaH -apQ -aoV -aoV -aoV -aoV -avY -axo -ayA -aaf -aBa -aBa -aBa -aBa -aBa -aBa -aaf -aKt -aLL -bDe -aOl -aPF -aQY -aSk -aTE -aPG -aWu -aYa -aZD -aZD -aZD -aZD -aZD -bff -bfk -aZE -bjo -bjr -bjr -bmh -boK -bjr -boK -bjr -bjr -bub -bxu -bvF -bzP -bAS -bxu -aaa -akD -bGg -amI -amI -bHx -bLs -akD -aaa -bLv -bPT -bRe -bSo -bTt -bCq -bVA -bWw -bXw -bYt -bZj -bCq -bHE -bCq -bSq -cdW -ceW -bCq -cgD -cgH -bHE -cjI -bCq -clA -bCq -aaa -aaa -aaa -aaa -aaf -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(80,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -ali -ali -alU -alU -amC -alU -alU -alU -aaH -apQ -aoV -apQ -apQ -avY -axo -ayA -aaa -aBa -aBT -aDs -aEN -aGb -aBa -aaa -aKt -aLN -aLE -aOl -aPH -aRa -aRa -aTG -aPG -aWw -aYc -aZF -aZF -aZF -aZF -aZF -aZF -bgy -aZE -bjr -bjr -ama -bmh -bjr -bjr -bjr -bjr -bjr -bvX -bxu -byA -bzR -byd -bxx -aaa -akD -akD -ajX -bJc -ajX -akD -akD -aaa -bCq -bPV -bCq -bCq -bTw -bCq -bVD -bWy -bXx -bYw -bZj -bYy -bHE -bTz -bHE -cdY -ceY -bCq -bHE -cgH -bHE -bLu -bCq -cyE -bCq -aaa -aaa -aaf -aaa -bCq -bCq -bLv -bLv -bLv -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(81,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -ali -alV -amG -ano -amC -aon -aoW -alU -aqQ -aqQ -aqQ -aqQ -aqQ -avZ -axp -ayC -azH -aBb -aBS -aDr -aEM -aGa -aHF -aJd -aKv -aLN -aLE -aOl -aPF -aQZ -aRa -aTF -aPG -aSX -aWC -baS -aZI -baS -baS -bdS -bdU -ckQ -aZE -bjq -bjr -bjr -bmh -bjr -bjr -bjr -bjr -bjr -bjr -bxw -byz -bzQ -byc -bxx -aaa -aaa -bGi -bGi -bJb -bGi -bGi -aoV -aoV -bCq -bPU -bHE -bSp -bTv -bCq -bVC -bWx -bWy -bYv -bZl -bCq -bHE -bCq -cda -cgF -bCq -cqn -cAh -chT -bHE -bHE -ckv -bHE -bCq -bLv -bLv -bLv -bLv -bCq -ciT -cqK -crl -bLv -aaa -aaa -aaa -aae -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(82,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -ali -aKY -amC -anp -amC -amC -amC -ank -aqR -aqR -aGh -aqR -aqR -awb -axo -ayA -aaa -aBa -aBV -alu -aEM -aGd -aHG -aJe -aKw -aLP -aMR -aNU -aPJ -aPJ -aPJ -aPJ -aPJ -aVC -aXJ -bgA -aZp -baY -bcJ -bcF -bfg -bgA -bhW -bjt -biq -bjr -bmh -bjr -bqn -brN -brN -brN -brN -bxx -byC -bzT -byl -bxx -aaf -aaf -bGi -bHz -byE -bKk -bGi -aoV -aoV -bCq -bPW -bCq -bCq -bTy -bCq -bVF -bWA -bXy -bYx -bWz -bCq -bHE -bCq -bQa -cpY -cyL -cqy -cAi -bQa -bHE -bHE -bHE -bHE -bHE -bHE -bHE -bHE -bHE -cpR -bHE -cAQ -crm -bLv -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(83,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -ali -alW -amH -ano -anL -aoo -aoX -alU -aqQ -aqQ -aqQ -aqQ -aqQ -awa -axq -ayD -azI -aBc -aBU -aDt -aEO -aGc -aHF -aJd -aKb -aLN -aMQ -aNT -aPI -aRb -aRb -aRb -aRb -aWx -aXE -baS -baS -bbP -bcR -bcE -baS -bex -bhY -bgu -bic -bku -bmh -bjr -aZE -brM -bts -buD -bvY -bxx -byB -bwS -byg -bxx -aaa -aaa -bGi -bHy -byE -bKj -bGi -aoV -aoV -bCq -bHE -bHE -bSq -bTx -bCq -bVE -bWz -bHE -bHE -bLu -bCq -bLu -bCq -cdb -bSs -bCq -bCq -cgG -bCq -bCq -bCq -bCq -bTz -bCq -bLv -bLv -bLv -bLv -bCq -cqv -cqL -bJe -bLv -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(84,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -ali -ali -alU -alU -ali -alU -alU -alU -aaa -aaa -aaa -aaa -aag -avY -axo -ayA -aaa -aBa -aBW -aDv -aEP -aGe -aBa -aaa -aKt -aLN -aMS -aOt -aPK -aPK -aPK -aPK -aPK -aWA -aXM -bfi -cBi -bbS -bcS -bbt -bfi -beD -aZE -aZE -biA -bmg -bmH -bkJ -aZE -aZE -aZE -aZE -aZE -bxu -byD -bwU -byn -bxu -aaa -bxy -bxy -bxy -bJd -bKm -bxy -apQ -apQ -bCq -bPY -apE -bCq -bCq -bCq -bCq -bCq -bCq -bYy -bCq -bCq -bLv -bCq -bCq -bCq -bCq -bLv -cgH -bLv -aaa -bCq -ckv -bHE -bCq -aaa -aaa -aaf -aaa -bCq -bCq -bCq -bCq -bCq -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(85,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aag -avY -axo -ayA -aaf -aBa -aBa -aBa -aBa -aBa -aBa -aaf -aKt -aLN -aMS -aOi -aLE -aPK -aSl -aTH -aPK -aWz -aWC -aZE -aZE -aZE -bcT -aZE -aZE -aZE -aZE -bju -biv -bmf -bmt -boN -bqo -brO -btt -buE -bvZ -bxu -bxx -bwT -bym -bxu -bxy -bxy -bGj -bHA -bHA -bKl -bxy -aaH -aaH -bCq -bPX -bRg -bRg -bCq -bHE -bVG -bHE -bHE -bHE -bLv -apQ -aoV -aoV -aoV -aoV -aoV -bLv -cgH -bLv -aaa -bLv -bJf -ccd -bCq -aaa -aaa -aaf -aaa -aaa -aaf -aaf -cig -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(86,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -akD -akD -ajX -akD -akD -ajX -akD -akD -akD -aaa -aaa -aaa -aaa -aaa -aag -avY -axs -ayF -aaa -aaf -aaa -aaf -aaa -aaf -aaa -aaa -aKx -aLN -aMS -aOi -aLE -aRc -aSm -aTJ -aPK -cCl -aYh -cCm -cCm -cCm -cCn -aPz -bdW -aSg -aZE -bgz -biT -boU -bmP -buF -bbR -bbR -btu -bbR -bOL -bxy -byF -bwW -bGm -bCo -bDk -bEK -byE -byE -byE -byE -bGi -apQ -apQ -bLv -bQa -bHE -bHE -bCq -bHE -bLv -bLv -bLv -bLv -bLv -aoV -aoV -aoV -aoV -aoV -apQ -bLv -cgH -bLv -aaf -cAj -cjJ -cjJ -cjJ -cjJ -cjJ -cjJ -cjJ -cjJ -cjJ -aaa -crn -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(87,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aae -aaa -aaa -aaa -aaa -aaa -ajX -akC -alj -alY -amI -amI -anM -aop -aoY -aaa -aaa -aaa -aaf -arP -avd -avZ -axr -ayE -ayE -ayE -ayE -ayE -ayE -ayE -ayE -ayE -ayE -aLl -aMT -aOu -aPL -aPK -aSm -aTI -aPK -aWB -cCj -apd -apd -bbU -cCk -apd -aZE -bgB -bhX -bgv -biF -bkw -bnE -bny -btv -btv -bjv -btv -buc -bxz -bBa -bwV -byy -bBa -bAb -bzY -bBa -bEQ -bGM -bKn -bGi -aoV -aoV -bLv -bPZ -bHE -bHE -bTz -bHE -bLv -aoV -aoV -aoV -aoV -aoV -aoV -aoV -aoV -aoV -aoV -bLv -cgH -bLv -aaa -cjJ -ckw -clC -cmy -cnm -cnL -cov -cpj -cpS -cjJ -aaa -crn -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(88,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -ajX -akF -alm -akD -amI -amI -amI -aop -aoY -aaa -aaa -aaa -aaf -arP -ave -awa -axu -ayH -ayH -ayH -ayH -ayH -ayH -aFV -ayH -ayH -aKy -aLn -aMU -aOw -aPN -aPK -aSn -aTK -aPK -apd -cCj -asW -baW -bLE -bLG -apd -bfj -bgC -bia -aZK -bjs -bkx -bmQ -bnA -bpB -bpB -brR -bsV -bwc -bxA -bvI -bwX -byG -bvI -bAm -bBG -bDo -byE -byE -bKp -bGi -apQ -apQ -bLv -bHE -bHE -bSs -bCq -bHE -bLv -aoV -aoV -aoV -bcU -apQ -aaH -cCa -aoV -aoV -aoV -bLv -cgH -bLv -aaa -cjJ -cky -clE -cmA -cno -cnN -cox -cpl -cpU -cjJ -aaf -crn -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(89,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -adB -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -ajX -akE -all -alZ -amJ -anr -amI -aop -aoY -aaa -aaa -arP -arP -arP -cya -avZ -axt -ayG -ayG -ayG -ayG -ayG -ayG -ayG -ayG -ayG -ayG -aLm -aMS -aOv -aPM -aPQ -aPQ -aPQ -aPQ -apd -aYi -aqW -aqW -bbQ -bLG -apd -aZH -aZK -bhZ -aZK -bkM -bfQ -bnG -bnz -bpA -bbR -bkM -bqs -bud -bxy -bvG -bAZ -bGm -bzF -bAc -bGm -byE -cBB -byE -bKo -bxy -aaH -aaH -bCq -bHE -bRh -bSr -bCq -bHE -bLv -apQ -apQ -aoV -aoV -aaH -bdV -aaH -apQ -apQ -apQ -bLv -cgH -bLv -aaf -cjJ -ckx -clD -cmz -cnn -cnM -cow -cpk -cpT -cjJ -aaa -crn -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(90,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -abc -abc -abc -afu -abc -aaa -aaa -aaa -aaa -aaa -aaa -akD -akD -alo -akD -akD -akD -anO -akD -akD -aaa -aaa -arP -asQ -aqR -aqR -avZ -axt -ayG -azK -aBe -aBe -aDj -aER -aFX -aHj -aJa -aKc -aLp -aMV -aOy -aLE -aPQ -aRV -aSW -aVa -apd -aWE -aqW -aqW -bcG -bLG -apd -aZH -bgD -bfN -bgE -bjv -bkH -bfm -boS -bfm -bNK -bkN -bml -bwe -bwe -bwd -bwY -byJ -bwe -bAc -bBI -bGn -bGn -bGn -bKq -bxy -apQ -apQ -bCq -bOK -bCq -bCq -bCq -bHE -bLv -aoV -aoV -aoV -aoV -cjn -bSu -aaH -aoV -aoV -aoV -bLv -cgH -bLv -aaa -cjJ -cky -clG -cmB -cnq -cnP -coz -cpn -cjJ -cjJ -aaa -crn -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(91,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -abc -aea -aeH -aft -abc -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aiU -aln -aiU -aaa -aiU -anN -aiU -aaa -aaa -aaa -arP -asP -aqR -aqR -awb -axt -ayG -azJ -aBd -aBX -aDi -aEQ -aFW -aHh -aIV -ayG -aLN -aMS -aOx -aPc -aRe -aRT -aSt -aWF -apd -aWG -aZa -baX -bcH -bdE -apd -aZH -bnL -bbR -boU -bkM -bfm -bnI -boR -bqs -bbR -bkM -bNM -bwd -bxB -bvL -byI -byH -bwe -bAn -bBH -bxy -bxy -bxy -bxy -bxy -bLv -bLv -bCq -bHE -bLv -aaa -bLv -bHE -bLv -aoV -aoV -aoV -aoV -aoV -aaH -apQ -aoV -aoV -aoV -bLv -cgH -bLv -aaa -cjJ -ckz -clF -cmy -cnp -cnO -coy -cpm -cjJ -aaf -aaf -crn -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(92,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -abc -abu -abu -abu -abc -abc -aec -aeJ -afw -abc -abc -aaf -aaa -aaf -aaf -aaf -aaf -aiU -alp -aiU -aaa -aiU -alp -aiU -aaf -aaf -aaf -arP -arP -arP -arP -avZ -axt -ayG -azM -aBg -aBZ -aDx -aET -aET -bCx -aHJ -aKd -aLq -aMY -aOA -aPO -aRf -aSc -aSc -aUw -apd -aXK -avr -aZJ -bbT -bSy -apd -aZH -beF -bfl -bmi -bjw -bmk -bbR -boT -bbR -bbR -buI -bbR -bwd -bxD -byL -byK -byT -bwe -bAx -bTE -bCq -bHD -bJe -bCq -bLu -bHE -bHE -bHE -bHE -bLv -aaf -bLv -bUt -bLv -apQ -apQ -aoV -aoV -aoV -aaH -aoV -aoV -apQ -apQ -bLv -cgH -bLv -aaf -cjJ -cjJ -cjJ -cjJ -cjJ -cnR -coB -cjJ -cjJ -aaa -aaa -crn -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(93,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aae -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -abb -abt -aca -acz -acX -adC -aeb -aeI -afv -agf -abc -aaf -aaa -aaa -aiT -aiT -aiV -akG -cxJ -aiU -amK -aiU -cxP -aoq -aiV -aiT -aiT -arP -asR -aqR -arP -awc -axt -ayG -azL -aBf -aBY -aDw -aES -aJh -aHv -aJh -aKA -aLN -aMS -aOz -aLE -aPQ -aSa -aSr -aSr -apd -aYZ -bLE -aqW -aqW -bLE -apd -beA -bqp -bbR -aqU -bLF -aZK -bnJ -bbR -bqt -cBq -bbR -bbR -bwd -bxC -byK -cBv -byO -bwe -bAo -bTE -bGo -bHC -bHE -bCq -bCq -bLv -bLv -bHE -bLv -bCq -aaa -bLv -bUs -bLv -aoV -aoV -aoV -aoV -aoV -apQ -aoV -aoV -aoV -aoV -bCq -cgH -bCq -aaa -aaf -aaa -aaa -aaf -cjJ -cnQ -coA -cpo -cjJ -aaa -aaa -crn -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(94,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -abe -abw -acc -acB -acZ -adE -aee -aeL -afy -agh -abc -aaf -aaa -aaf -aiT -ajs -akb -akI -akI -amc -aiT -ant -akI -aos -aiT -apR -cCh -arP -asT -aqR -avf -awb -axt -ayG -azN -aBe -aBe -aDy -aEU -aGf -aHL -aJi -aKB -aLT -aNp -aOC -aPQ -aPQ -aTL -aTP -aWD -apd -aYj -aZL -baU -baU -bcV -apf -bfn -beW -bfR -bKF -bNH -aZK -bbR -bbR -bbR -bbR -bty -buJ -bwe -bxE -byM -bAd -bBf -bwe -bAJ -bCe -bCq -bHE -bJf -bCq -aaa -aaf -bLv -bHE -bLv -aaa -aaa -bTB -bUv -bES -bES -bES -bES -bGp -bGp -bGp -bGp -bES -bES -bES -car -cgH -bCq -bCq -bCq -bCq -bCq -bCq -cjJ -cnS -coC -cpp -cjJ -aaf -aaf -cig -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(95,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -abd -abv -acb -acA -acI -adD -aed -aeK -afx -agg -abc -aaf -aaa -aaa -aiU -ajr -aka -akH -alq -amb -aiU -ans -alq -aor -apb -alp -aqS -arP -asS -aqR -arP -awd -axv -ayG -ayG -ayG -ayG -ayG -ayG -ayG -ayG -ayG -ayG -aHP -aNc -aOB -aPQ -aPQ -aSs -aSs -aSs -apd -apd -apd -baV -bON -apd -apd -aZK -beV -bfm -bKP -bfm -aZK -bnK -bnK -bqu -bqu -bnK -bnK -bwe -bwe -bwe -bwe -bwe -bwe -bAI -bCd -bCq -bCq -bCq -bCq -bLv -bLv -bLv -bOK -bLv -bLv -bLv -bTA -bUu -bVH -bVH -bVH -bVH -bVH -bVH -bVH -bVH -bVH -bVH -bVH -caq -cbw -ccu -ciT -bCq -bSs -ceY -ccw -ccw -cnR -cgT -cjJ -ccw -ccw -ccw -ccw -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(96,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaf -aaH -aai -aai -abg -aby -aby -aby -aby -aby -aeg -aeN -afA -afA -afA -aaf -aaa -aaa -aiU -aju -akd -akK -als -ame -amM -anv -als -aou -aiT -aiT -aiT -arP -arP -arP -arP -awf -axx -ayJ -ayJ -aBi -aqR -aqR -aqR -aqR -aqR -aqR -arP -aLI -aNr -bBo -aJq -aRh -aJq -aJq -aJq -aJq -aJq -aLY -aJq -aJq -bcW -bbV -bfo -bkS -bfo -bgn -bfo -bmn -bfo -boW -bmE -bmE -btz -btz -bwf -btz -btz -btz -bBh -bCr -bAK -bCn -bGq -bGq -bGq -bGq -bLw -bGq -bGq -bGq -bLw -bGq -bGq -bTD -bUx -bVI -bVI -bVI -bVI -bVI -bVI -bVI -bVI -bVI -bVI -bVI -bTA -bEP -cdi -bCq -bCq -bHE -bHE -cmD -cnr -cnU -chD -cpq -cpV -cqw -cqO -crp -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aae -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(97,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaf -aaf -aai -aai -aai -aaU -abf -abx -acd -acC -ada -adF -aef -aeM -afz -aai -aai -aai -aai -aai -aai -ajt -akc -akJ -alr -amd -amL -anu -alq -aot -apc -apS -aqT -arQ -arQ -atX -atX -awe -axw -ayI -azO -aBh -akL -aDz -aEV -aGg -aHx -aqZ -apg -aLx -aNq -aOD -aPe -aJq -aJq -aJq -aJq -aJq -aJq -aLY -aJq -aJq -bHt -aJq -aJq -beX -aJq -bgm -bjx -bmm -bnM -boV -bnM -brT -brT -brT -brT -brT -brT -bAe -bBg -bCq -bCq -bDt -bGp -bGp -bGp -bES -bGp -bGp -bGp -bGp -bGp -bGp -bES -bTC -bUw -bVI -bWB -bWB -bYz -bYz -cag -cbl -bYz -bWB -bWB -bVI -cax -cbx -cdh -ciU -cjK -ckA -ckA -cmC -cmC -cfJ -chB -cpW -cgR -cgR -cqN -cro -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(98,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aag -aah -aai -aai -aai -aai -aaI -aaM -aat -aat -aat -ace -aat -aat -adH -aei -aeO -afJ -acd -agL -agK -agK -aiB -aai -ajw -akf -aiX -aiX -aiX -aiX -aiV -anP -aiT -cCi -cCi -cCi -cCi -cCi -cCi -cCi -awg -axy -ayL -azQ -aBk -ayL -ayL -ayL -ayW -ayW -ayW -ayW -aLW -aNs -aJq -aLX -aLX -aLX -aLX -aLX -aJq -aYl -aZN -aYl -aYl -aYl -aYl -aYl -bgG -bid -aYl -bBi -aLY -bnN -boY -bqw -aJq -aJq -aYl -aKF -aLX -aJq -aJq -bBi -aJw -aaa -aaf -aaa -aaf -aaa -aaf -aaa -aaf -aaa -aaa -aaa -aaa -bCq -bTF -bUw -bVI -bWD -bXA -bYB -bYz -cai -bYz -ccg -cdd -cea -bVI -caz -cby -cdj -cdv -cem -cem -cem -cfe -cfD -cgv -chE -ciN -ciN -cji -ckH -crr -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(99,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aag -aaf -aai -aan -aaw -aaB -aat -aaJ -aat -abh -aat -acd -abK -acY -adG -aeh -aeO -afI -agl -agH -ags -ags -aho -acd -ajv -ake -agj -afL -aez -ahU -aiX -anz -aov -cCi -air -aqY -arU -apU -apU -cCi -awg -axy -ayK -azP -aBj -aBO -aDC -ayL -aGo -aHN -aJj -ayW -aLV -aJq -aOE -aJn -aJn -aJn -aJn -aJs -aJq -aYk -aZM -aZM -bbW -bcX -bcX -aZM -aZM -aZM -bjz -bkT -bjz -bjz -boX -bqv -bqv -bqv -bqv -bwg -aJw -aJq -aJq -bBi -aJw -aaa -bEU -bGr -bGr -bGr -bKr -aaa -aaf -aaa -aaa -aaf -aaf -bCq -bTE -bUw -bVI -bWC -bXz -bYA -bZn -cah -bWB -ccf -cdc -cdZ -bVI -cay -ccw -ccw -ccw -ccw -ccw -ccw -ccw -ccw -cfL -coH -cBO -cgR -cqx -cqP -crq -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(100,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aag -aaa -aak -aap -aay -aaD -aat -aat -aat -aat -abA -acd -acd -acd -acd -aek -aeU -afI -acd -agI -ahq -ahV -aho -acd -ajy -akh -afK -ajc -afM -afN -aiX -anz -aov -cCi -aqX -arR -asj -asU -ats -atY -auo -axy -ayN -azP -aAW -aCa -aDB -aDI -azW -azW -azW -ayW -aLX -aJq -aOE -aJn -aaa -aaa -aJn -aJs -aJq -aYn -aZM -aZu -bbY -bcY -bdX -bbX -bgH -bie -bjB -bkW -bmp -bjz -bpa -bqy -cBr -bqy -buK -bqy -aJw -aJq -aJq -bBi -aJw -aaf -bEW -bGt -bHG -bJh -bEW -aaf -aaf -aaa -aaa -bKv -bLB -bES -bMj -bUw -bVI -bWF -bXC -bXC -bZp -cak -bWB -bWB -bWB -cec -bVI -cay -ccw -chY -ciX -cjM -ckB -ckB -ckB -ccw -cnY -coH -cgR -cgR -cqx -cqR -crp -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(101,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aag -aaf -aaj -aao -aax -aaC -aat -aat -adO -aat -abz -acd -acE -add -adF -aej -aeQ -afD -acd -agJ -ahp -ahp -aiC -adF -ajx -akg -agj -adL -ahr -aih -aiX -anz -aov -ape -arT -aqV -arS -apU -atu -cCi -awg -axy -ayM -azs -aAR -aBP -aDA -aEW -aGi -aHB -aEZ -aBt -aJs -aJq -aOE -aJn -aaa -aaa -aJw -aVb -aWH -aYm -aZM -aZq -bbX -bbX -bbX -bfp -aZP -aZP -bjA -cAG -bmo -bmr -boZ -bqx -brU -bmr -bmr -bmr -bmr -byN -aJq -bBj -aJw -aaa -bEV -bGs -cBC -bJg -bKs -aaa -aaf -aaf -aaf -bJQ -bLg -cCg -cCg -bNg -bVI -bWE -bXB -bYC -bZo -caj -bWB -cch -cde -ceb -bVI -cay -ccw -chY -ciW -ciZ -ckB -ckB -ckC -ccw -cnX -coH -cps -cpX -cqz -cqQ -ccw -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(102,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aag -aaa -aal -aar -aay -aaF -aat -aaO -aaW -aat -abB -acf -abM -acG -adI -aem -aeO -afG -acd -agK -agK -ail -aiE -aiW -ajA -akj -agj -agj -agj -aiX -aiX -anQ -aov -cCi -apU -arT -arT -asn -atK -auq -avs -axz -ayP -azU -aBo -aCg -azW -aEX -aEZ -aEZ -aEZ -aEX -aJs -aJq -bJx -aJn -aaa -aaa -aTQ -aVd -aWJ -aYp -aZM -aZz -baI -bda -bda -bca -bgJ -aZP -bjD -bkY -bmo -bnP -bpc -bqA -brW -btB -buM -bwi -bmr -aMm -aJq -bBi -bCs -bCs -bEY -bGu -bHI -bJi -bEY -bCs -bCs -bNI -bNI -bRn -cce -bNI -bNI -bUz -bVI -bWG -bXD -bYz -bYz -cam -bYz -bYz -cdf -ced -bVI -cay -ccw -chZ -ciZ -ciZ -ckC -ckC -ckC -ccw -coa -coJ -clJ -clJ -cig -cig -ccw -ccw -ccw -ccw -ccw -ccw -ccw -csF -ccw -ccw -ccw -ccw -ccw -ccw -cjZ -aaf -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(103,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aag -aaf -aaj -aaq -aay -aaE -aaJ -aaN -aaV -aat -aat -acd -abL -adb -acd -ael -aeO -afF -agj -agj -agj -agj -agj -agj -ajz -aki -akM -alv -amf -amQ -anw -anz -aov -cCi -arT -arT -asl -arT -apU -cCi -awg -axy -ayv -azE -aBn -aCb -aDD -aEY -aGj -aHC -aEZ -aBt -aJs -aJq -aOE -aJn -aaa -aaa -aPR -aVc -aWI -aYo -aZM -aZy -bay -bcZ -bdY -bdF -bgI -aZP -bjC -bkX -bmo -bnO -bpb -bqz -bqq -brS -bsY -bue -bmr -aMn -aJq -bBi -bCs -bDv -bEX -bFa -bHH -bFa -bKt -bLx -bCs -cCe -bRl -apV -bLC -cCf -bNI -bUz -bVI -bWB -bWB -bYz -bZq -cal -cbm -bYz -bWB -bWB -bVI -cay -ccw -ccw -ciY -ciY -ccw -ccw -ccw -ccw -cnZ -coH -cpt -cpZ -cig -cqS -ccw -crH -crT -crZ -crT -css -ccw -ccw -ccw -csv -crT -ctl -ctv -ctv -ccw -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(104,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aae -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aag -aaa -aal -aat -aay -aat -aat -aaJ -aat -aat -abD -acd -acd -acd -acd -aen -aeO -afH -agj -agM -ahu -ahW -aiD -agj -auj -akl -akO -alx -alx -amR -anw -anz -aox -cCi -cCi -cCi -cCi -cCi -cCi -cCi -awg -axy -ayQ -azE -aBq -aBr -aDE -aFc -azW -azW -aJf -ayW -aJr -aJq -aOE -aJn -aaa -aPR -aPR -aPR -aWL -aPR -aZM -bbX -bay -bbM -bcN -bdK -bgL -aZP -aZP -aZP -bmo -bnR -bpe -bqB -bqq -btD -buO -bwk -bmr -aLY -cBw -bBk -bCs -bDx -bFa -bFa -bHJ -bFa -bFa -bLz -bCs -cCe -bNJ -apV -cjL -bNJ -bNI -bUz -bVJ -bWI -bXF -bXF -bZs -cao -cbo -bXF -bXF -cef -bVJ -cay -ccw -cib -cjb -ckH -ckE -clH -cmG -cnt -cob -coL -ckH -ckH -cqA -cqT -czh -crJ -crU -csb -crU -cst -csx -csG -csx -csu -crU -csb -crU -crU -ccw -ctv -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(105,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aag -aaf -aaj -aas -aaz -aat -aat -aat -aat -aat -abC -acd -acH -adc -acd -aeo -aeS -afH -agj -agN -aht -ain -aid -agj -aiZ -akk -akN -alw -amg -amR -anw -anR -aow -apg -aqZ -aqZ -aqZ -apW -aqZ -avh -awh -axz -ayO -azE -aBp -aCc -aDF -ayL -aGq -aHO -aJl -ayW -aJq -aJq -aOE -aJn -aaa -aPR -aTR -aVe -aWK -aYq -aZO -aZC -baK -bbC -bbC -bdI -bgK -bgK -bjE -bgK -bmq -bnQ -bpd -bpd -bqr -btC -buN -bwj -bmr -byP -aJq -bBi -bCs -bDw -bEZ -bGv -bHH -bJj -bKu -bLy -bCs -bNJ -bNJ -bKx -cjL -bNJ -bNI -bUA -bVJ -bWH -bXE -bYD -bZr -can -cbn -cci -cdg -cee -bVJ -cay -ccw -cia -cja -cgR -ckD -cig -cmF -cfG -cgw -coK -cpu -cqa -ccw -ccw -ccw -crK -crU -csa -csj -crU -crU -crU -crU -crU -cte -csa -crU -ctC -ccw -ccw -ctv -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(106,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aab -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aag -aaa -aam -aav -aav -aav -aaL -aaQ -aaY -aav -abE -acg -acJ -ade -adJ -aep -aeT -afH -agj -ahs -ahP -ahP -aiF -agj -aja -ajG -akQ -agj -agj -amS -anx -anz -aov -aph -aph -aph -arW -aso -auf -avi -awi -axy -ayS -azS -aBs -aCi -aDI -ayL -ayW -ayW -ayW -ayW -aJq -aJq -aOE -aJn -aaa -aPR -aTT -aVg -aWN -aYs -aZQ -bbi -bde -bcd -bcd -bcd -bcd -bcd -bcd -bcd -bms -bnS -bpf -bqC -brZ -btE -bnS -bwl -bxG -byR -brT -bBl -bCs -bDz -bFa -bFa -bHH -bFa -bFa -bFa -bCs -bNL -bNJ -apV -cjL -bNJ -bNI -bUz -bVJ -bOo -bOD -bQb -bZv -bSd -bXG -bOC -bWt -cBK -bVJ -cay -ccw -cid -cgR -cen -ckG -clJ -cmI -cgR -cgI -chF -ciO -cqc -cqC -cqV -ccw -aoV -aoV -apQ -aoV -aoV -aoV -aoV -aoV -aoV -aoV -apQ -aoV -aoV -crU -ccw -ctv -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(107,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aag -aaf -aai -aau -aaA -aaG -aaK -aaP -aaX -aat -aat -acd -acD -acY -adG -aeq -aeV -acd -agj -ahm -ahD -aiw -aiO -agj -ajD -akm -akP -aly -amh -amR -anw -anz -aov -aph -aob -ara -arV -apZ -aph -aph -awg -axA -ayR -azR -aBr -azW -afO -azW -agm -aBt -aaa -aJn -aLY -aLY -aOF -aPR -aPR -aPR -aTS -aVf -aWM -aYr -aZP -bbh -bcc -bdd -bbX -bfr -bgM -bif -aZM -aZM -bmr -bmr -bmr -bmr -bmr -bmr -bmr -bmr -bmr -byQ -aJq -aJq -bCs -bDy -bFb -bGw -bER -bJk -bFa -bLA -bCs -cCd -bQc -bKA -cjL -bSv -bNI -bUB -bVJ -bOl -bOC -bPQ -bQK -bYF -bTI -bUy -bWs -ceg -bVJ -cay -ccw -cic -cBO -cjN -cgR -ceu -cff -cgR -cgx -coM -cpv -cqb -cqB -cqU -cqY -aaH -cAk -cAo -cAp -cAo -cAo -cAp -cAo -cAo -cAp -cAo -cAo -cAv -apQ -cig -ctv -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(108,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aag -aaa -aai -aai -aai -aai -aai -aai -aai -abj -abG -acd -acd -acd -acd -aeP -afC -agk -agF -agP -agP -agP -agP -aiz -ajg -akl -akR -alx -alx -amR -anw -anz -aov -aph -aoc -ata -arY -ata -auh -aph -awg -axA -ayT -azR -azW -azW -aBt -azW -aio -aBt -aaa -aJn -aJq -aJq -aOE -aPT -aRj -aSv -aTV -aVi -aWP -aYu -aYt -bbk -bbk -bbk -bbk -bfs -aZM -aZM -aZM -aaf -aaf -aaa -aaf -aaa -aaf -aaa -aaa -aaa -aJn -aXf -aJq -byV -bCs -bAM -bFa -bGy -bFc -bJm -bFa -bHO -bCs -cCd -cCd -aYg -cjL -cCc -bNI -bEP -bVJ -bVJ -bOM -bQd -bQP -bSt -bUc -bVb -bWv -cei -bVJ -caB -ccw -cif -cgR -cjP -ckF -ceZ -ckF -ckF -cgK -cjS -cpv -cqe -cqB -cqW -cqY -csP -cAl -aaH -cAq -aaH -aaH -cAq -aaH -aaH -cAq -aaH -aaH -cAl -apQ -cig -ctv -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(109,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaf -aaa -aaf -aai -abi -abF -ach -acK -adf -acd -aer -afB -agi -agD -agO -agO -agO -agO -aiy -ajb -ajF -akN -alw -ami -amR -anw -anz -aov -api -ata -arb -arX -atc -aug -aph -awg -axA -azW -ayU -azW -aCj -ayW -ayW -ayW -ayW -aJn -aJn -aJq -aJq -aOE -aPS -aRi -aSu -aTU -cpC -aWO -aYt -aYx -bbj -bce -bdf -beb -aYv -aaf -aaf -aaf -aaf -aaa -aaa -aaa -aaa -aaf -aaa -aaa -aaa -aJn -aXf -aJq -byU -bCs -bAL -bFa -bGx -bET -bJl -bHh -bHN -bCs -cjo -cCd -bSx -cjL -cCb -bNI -bEP -bVL -bVJ -bVJ -bVJ -bVJ -bVJ -bVJ -bUC -bWu -bVJ -bVJ -caB -ccw -cie -cdT -cnA -cnA -cev -cfg -cgU -cgJ -chG -cpv -cqd -cqB -cqU -cqY -cqY -cAl -csA -aoV -aoV -csA -aoV -aoV -aoV -aoV -csA -aaH -cAl -apQ -cig -ctR -aaf -aaf -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(110,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaf -aaf -aaf -aaf -aaf -aaf -aaf -aaR -aaZ -aaZ -aaZ -aaZ -aaZ -aaZ -aaZ -aaZ -aaZ -aaZ -agn -agR -agn -agR -agn -ajc -ajI -ako -akQ -agj -agj -amS -any -anz -aov -aph -aqb -are -arZ -ata -aui -aph -awg -axA -ayX -azY -azW -azW -afP -aFb -aEZ -cyg -aJp -aKE -aMa -aNw -aOE -aPU -aRl -aSx -aTX -aVi -aWR -aYv -aZS -aZR -aZR -bbm -bec -bfu -bgO -bgO -bgO -bmu -bgO -bgO -bgO -bgO -bsb -aaf -aaf -aaf -aJn -aXf -aJq -aJq -bCs -bFa -bFa -bFa -bET -bJn -bHi -bHQ -bCs -cjo -bJu -bSx -cmX -bSz -bNI -bUD -bVM -bVM -bVM -bVM -bVM -cat -bCq -bVd -bWK -bYp -bCq -cay -ccw -cih -cje -cgR -ckJ -clJ -cmL -cgR -csF -ccw -cpy -ccw -ccw -cqY -cqY -cqY -cAl -aoV -aoV -aoV -apQ -aoV -csS -aoV -aoV -aoV -cAu -cAw -apQ -cig -ctv -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(111,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaa -aaf -aaf -aaT -aaf -aaZ -abm -cpg -acv -adi -adi -aaZ -aeW -agQ -ahv -ahQ -aiI -aiH -ajB -akm -akP -aly -amj -amR -anw -anz -aov -aph -aph -ard -ard -ard -aph -aph -awj -axA -ayW -ayW -aBt -aBt -ayW -ayW -ayW -ayW -aJo -aJq -aLZ -aNv -aOE -aPS -aRk -aSw -aTW -aVj -aWQ -aYv -aZR -aZR -aZR -aZR -aZR -bft -bgN -bgN -bgN -bmv -bkI -bnT -bpg -bqD -bsa -bgO -buP -bwm -bxH -byS -aJq -aMh -bCs -bCs -bCs -bCs -bFe -bCs -bLD -bCs -bCs -bNI -bNI -bKU -cnB -bNI -bNI -bCq -bCq -bCq -bCq -bCq -bCq -cas -bCq -bVc -bWJ -bYn -bZB -caC -ccw -cig -cjd -cgR -ckI -cig -cmK -cBO -ccw -chV -cpx -cqf -cqD -cqX -crs -cqY -cAl -aoV -aoV -apQ -apQ -apQ -apQ -apQ -aoV -aoV -aaH -cAl -aoV -cig -ctv -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(112,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaa -aaf -aaf -aaT -aaa -aaZ -abH -acl -ajC -acL -adi -aaZ -agp -agT -ahx -ahS -aiK -ajc -ajI -akl -akT -aww -alx -amR -anw -anz -aov -apk -anw -anw -anw -anw -aVh -avj -awl -axC -ayY -azZ -azZ -azZ -azZ -azZ -aGt -aHQ -aJr -aJq -aMc -aNy -aOE -aPS -aRn -aSz -aTY -aVl -aWT -aYx -aZR -bbm -bbm -bdh -bee -bfv -bgN -bih -big -bii -bgN -bnV -bph -bqF -bsd -btG -buQ -bwn -bxI -bwa -bAg -bBq -bCu -bAO -bFd -bFd -bFj -bJp -bHk -bHR -bIe -bFd -bJz -bRp -cav -bSA -bTJ -bSA -bSA -bWL -bSA -bSA -bZx -bSR -bUl -bVf -bXm -bYE -bCq -ceW -ccw -cij -cjf -cgR -ckK -clJ -cmL -cnw -cgL -chX -cAO -cqh -cqF -cra -crI -cqY -cAl -aoV -aoV -apQ -csH -csR -ctm -apQ -apQ -csA -aaH -cAl -aoV -cig -ctv -aaa -aaa -aaa -aae -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(113,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaa -aaf -aaf -abY -aaa -aaZ -abn -ack -adk -adK -cqG -aeX -ago -agS -ahw -ahR -aiJ -ajc -ajI -akk -akS -alw -amk -amR -anw -anS -aoy -apj -anz -anz -anz -anz -anz -anz -awk -axB -anz -anz -anz -anz -anz -anz -apj -aHP -aJq -aJq -aMb -aNx -aOE -aPS -aRm -aSy -aTX -aVk -aWS -aYw -aZT -cBj -bcf -bdg -bed -bfv -bgN -big -bgN -bkZ -bgN -bnU -bph -bqE -bsc -btF -bph -bsc -btF -bvW -bAf -bBp -aHP -bAN -bQg -bQg -bFh -bGN -bHj -bNN -bNN -bNN -bNN -bNN -cau -cBH -bMG -bLZ -bLZ -bLZ -bLZ -bLZ -bQQ -bSw -cbr -bVe -bXk -bYq -ccw -ccw -ccw -cdk -cja -cgR -ckK -clJ -cmL -cnv -ccw -chW -cpz -cqg -cqE -cqZ -crt -czE -cAm -aoV -aoV -apQ -csC -csQ -ctf -apQ -aoV -aoV -cAu -cAw -aoV -cig -ctv -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(114,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaa -aaf -aaf -aaT -aaa -aaZ -abJ -ack -acM -adQ -cwM -aeZ -agr -agU -ahy -ahX -aiL -ajc -ajI -akq -akQ -agj -agj -amS -anx -anz -aoz -apm -aqd -anA -asa -atd -anA -avk -awk -axE -ayZ -aAa -aBu -aAa -aAa -aAa -aGu -aHR -aJt -aJq -aMe -aNA -aOE -aPV -aRp -aSB -aTZ -aVn -aWV -aYz -aZR -bbm -bbm -bdh -bef -bfv -bgN -bii -big -bih -bgN -bnV -bph -bqF -bsf -btG -buS -bwp -bxK -bwh -bAh -bBs -bzG -bAP -bCp -bDp -bFq -bGO -bHl -bHS -bLI -bLI -bOR -bQg -bQg -bQg -bQg -bQg -bQg -bQg -bQg -bYI -bDG -bHP -cbt -bVh -bXo -bYM -cfb -cfF -cfb -cfb -cfb -cfb -cfb -cig -cmN -cnx -cgL -chX -cBQ -cqj -cqH -crb -cru -cqY -cAl -csA -csB -apQ -csI -cAt -czD -apQ -aoV -aoV -aaH -cAl -aoV -cig -ctv -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(115,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaa -aaf -aaf -aaT -aaa -aaZ -abI -ack -coS -aet -cxA -aeY -agt -agt -ahz -aie -aiN -ajc -ajI -akp -akU -alz -aml -amT -anw -anz -aoz -apl -aqc -aqc -aqc -aqc -aqc -aqc -awm -axD -ahn -ahn -ahn -ahn -ahn -ahn -ahn -ahn -aJs -aJq -aMd -aNz -aOE -aPS -aRo -aSA -aTX -aVm -aWU -aYy -aZR -aZR -aZR -aZR -aZR -bfw -bgN -bgN -bgN -bjy -bmw -bnW -bpi -bqG -bse -bij -buR -bwo -bxJ -bwb -aJq -bBr -bCv -bCv -bCv -bCv -bCv -bJq -bKw -bLH -bRq -bNO -bOQ -bQf -bRq -bRq -bTK -bUE -bUE -bWM -bXJ -bYH -bYH -bYH -bYH -bVg -bXn -bYG -cfb -cfE -cgM -cik -cjg -cjU -ckL -clM -cfz -cgR -ccw -cii -cpB -cqi -cAP -cAP -crv -cqY -cAl -aoV -aoV -apQ -apQ -apQ -apQ -apQ -aoV -aoV -aaH -cAl -aoV -cig -ctv -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -cBY -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(116,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aae -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaa -aaf -aaf -abY -aaa -aaZ -abQ -ack -adj -arc -blT -agq -cml -agV -cxk -aig -aiM -ajc -ajI -akp -akV -alB -amn -amV -anw -anz -aoz -aod -aqf -ahT -ahT -ahT -ahT -ahT -awn -axF -anF -anF -anF -anF -anF -anF -anF -aoa -aJu -aKF -aMf -aNB -aOE -aPW -aRr -aSD -ceh -aVp -aWX -aYB -aZU -aZR -aZR -bbm -beh -bfx -bij -bij -bij -bgR -bij -bij -bij -bij -bsg -aaf -aaf -aaf -aJn -aJq -aJq -bBu -bCv -bAT -bDL -bDq -bCv -bJs -bKy -bLK -bLK -bLK -bOT -bQi -bRs -bSC -bLK -bUG -bVO -bWO -bXK -bYH -bZz -caw -bYH -bVo -bXq -bZe -cfb -cfH -cgO -cim -cgO -ceo -ceq -cfa -cmQ -cgR -csF -ccw -cpy -ccw -ccw -cqY -cqY -cqY -cAl -aoV -aoV -aoV -csJ -aoV -apQ -aoV -aoV -aoV -cAu -cAw -apQ -cig -ctv -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(117,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaa -aaf -aaf -abY -aaa -aaZ -abN -ack -bkA -acF -aes -avB -amN -agt -awN -aHp -aIF -ajc -ajI -akp -akQ -alA -amm -amU -anw -anT -aoA -apn -aqe -arf -arf -arf -arf -arf -arf -arf -arf -arf -arf -arf -arf -arf -anF -ahn -aJn -aJn -aJq -aJq -aOE -aPS -aRq -aSC -aUa -aVo -aWW -aYA -aYz -bbn -bcg -aZU -beg -aYB -aaf -aaf -aaf -aaf -aaa -aaa -aaa -aaa -aaf -aaa -aaa -aaa -aJn -aJq -aJq -bBt -bCv -bDH -bFf -bGB -bCv -bJs -bKy -bLJ -bLJ -bNP -bOS -bQh -bRr -bSB -bTL -bUF -bVN -bWN -bLK -bYJ -bRi -bZy -cbu -bVm -bXp -bYO -cfc -cgO -ccj -cBM -cdU -ceo -ceq -clQ -cmQ -cgR -cgN -cil -cpD -cqk -cqB -cqU -cqY -cqY -cAl -csA -aoV -aoV -aoV -aoV -csA -aoV -aoV -csA -aaH -cAl -apQ -cig -ctR -aaf -aaf -aaf -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(118,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaa -aaf -aaf -aaT -aaf -aaZ -aci -acm -cpA -adg -aeu -alt -agu -agX -ahB -aij -agn -aje -ajJ -akr -akX -alC -alC -amX -anz -anz -aoB -aod -aqe -arf -aqa -atf -arf -aqa -atf -arf -aqa -atf -arf -aqa -atf -arf -anF -ahn -aaa -aJn -aJq -aJq -aOE -aPX -aRs -aSE -aUc -aVm -aWY -aYC -aYA -bbp -bbp -bbp -bbp -bfz -aZV -aZV -aZV -aaf -aaf -aaa -aaf -aaa -aaf -aaa -aaa -aaa -aJn -aJq -aJq -aXf -bCv -bDK -bFi -bGE -bCv -bJs -bKy -bLM -bLM -bNQ -bOV -bQk -bRt -bSD -bTM -bUH -bVQ -bWN -bXM -bYL -cew -bTh -cdt -bVq -bXI -bZg -bZD -cbq -ccl -cdm -cio -cjY -ckP -ckH -cmR -cgR -cgR -cgR -cpD -cql -cqB -cqU -cqY -csP -cAl -aaH -cAs -aaH -aaH -cAs -aaH -aaH -cAs -aaH -aaH -cAl -apQ -cig -ctv -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(119,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaf -aaf -aaf -aaa -adR -abo -aaZ -aaZ -aaZ -acT -adl -aaZ -aaZ -agn -agW -ahE -aii -agn -ajd -ajI -ahY -akW -aiG -amo -amW -anz -anz -aoz -aod -aqe -arf -apY -ate -arf -apY -ath -arf -apY -ath -arf -apY -ate -arf -anF -ahn -aaa -aJn -aLY -aLY -aOG -aPR -aPR -aPR -aUb -aVq -aWM -aYr -aZV -bbo -bch -bdi -bei -bfy -bgS -bik -aZV -aZV -bmx -bmx -bmx -bqH -bsh -bsh -bsh -bsh -bqH -aJq -aJq -aXf -bCv -bDJ -bCt -bGD -bCv -bJs -bKy -bLL -bLL -bNQ -bOU -bQj -bOd -bOd -bRx -bTP -bVP -bWP -bXL -bYK -bRj -bTg -bUm -bVp -bXH -bZf -bZC -cbp -cck -cin -cjj -cjX -ckO -clP -cmQ -cny -cgR -cip -cnx -cql -cqB -cqU -cqY -aaH -cAn -cAo -cAr -cAo -cAo -cAr -cAo -cAo -cAr -cAo -cAo -cAx -apQ -cig -ctv -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(120,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaf -aaa -abp -abP -aco -acO -abl -abO -abO -afc -afQ -agw -agY -ahA -ahZ -adR -aiQ -ajI -akt -akQ -agj -agj -aiX -anB -anz -aoD -aod -aqe -arf -aqn -ath -arf -auw -ath -arf -ayV -ath -arf -aCd -ath -arf -anF -ahn -aJw -aJw -aMh -aJq -aOE -aJn -aaa -aPR -aUe -aVs -aXa -aYD -aZX -baf -bdk -bdk -bek -bfB -bgU -bdk -bjF -blc -bmz -bnY -bpk -bqJ -bsj -btI -btd -bwr -bqH -aMm -aJq -bBv -cBy -bDM -bCw -bDr -bCy -bGP -bHn -bLN -bLN -bNS -bOX -bQm -bRv -bOd -bTN -bTP -bRA -bWQ -bWQ -bYN -bRm -bTj -caA -cer -ccs -bZu -cfb -cfb -cgS -ciq -cfb -cfb -ckR -clR -cmQ -cgR -cgP -cir -cen -cqc -cqC -crc -ccw -aoV -aoV -aoV -aoV -cBR -aoV -aoV -aoV -aoV -aoV -aoV -aoV -aoV -crU -ccw -ctv -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(121,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaa -abo -abO -abO -abO -abO -abO -abO -afb -abo -afg -ahb -ahG -aik -cBV -ajf -ajK -aks -akY -alx -amp -aiX -anA -anz -aoC -aod -aqe -arf -asd -atg -arf -asd -awo -arf -asd -aAb -arf -asd -aDK -arf -aoa -ahn -aJv -aKG -aMg -bHt -aOE -aJn -aaa -aPR -aUd -aVr -aWZ -aYq -aZW -aZG -bej -bej -bdj -bfA -bgT -bil -bej -blb -bmy -bnX -bpj -bqI -bsi -btH -btc -bwq -bqH -aJq -aJq -aXf -bCv -bAU -cAL -bFg -bFs -bJt -bKy -bLK -bMK -bNR -bOW -bQl -bRu -bSE -bRx -bUI -bVR -bWQ -bOO -bQe -bRk -bTi -caA -bVr -bXN -bZt -bZE -cbs -ccm -cdn -cej -cep -ces -clN -cfA -ckF -ckF -ckF -coc -cqa -ccw -ccw -ccw -czF -crU -csd -crU -crU -crU -crU -crU -crU -crU -csd -crU -ctD -ccw -ccw -ctv -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(122,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaa -abp -abO -acq -acq -acq -acq -aew -afe -afS -agy -aha -ahC -aia -aiP -aiR -ajB -akv -ala -akz -alf -aiX -anA -anz -aoF -apo -aqh -arh -asg -atj -aul -auR -atj -aul -azc -atj -aAX -azc -atj -aFe -aul -aHT -aJy -aJy -aMj -aJq -aOE -aJn -aaa -aPR -aPR -aPR -aXc -aPR -aZV -baq -baQ -baQ -bcQ -bfC -bgV -bim -bjG -aZV -bmB -bnZ -bpl -bqH -bsl -btK -buW -bwt -bqH -aLY -aLY -bBx -bCv -apG -bFk -bDs -bCv -bJs -bHo -bLK -bMK -bMK -bOY -bQn -bRx -bMK -bMK -bUJ -bVS -bWQ -bXP -cBI -bRS -bTH -caA -bWh -cdt -bZA -cfh -cfM -cco -cdp -cel -cyM -ckT -cgU -cfC -cnA -cnA -cis -ciV -ckH -cqA -cre -czh -crM -crV -csf -crU -csv -csx -csK -csx -css -crU -csf -crU -crU -ccw -ctv -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(123,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaf -aaf -aaf -abo -abO -acp -acP -acP -acP -aev -afd -afR -agx -agZ -ahI -aim -adR -aiG -ajL -aku -akZ -alE -amq -aiX -anA -anz -aoE -aod -aqg -arg -asf -ati -auk -aux -avt -axL -bbl -azT -auk -auk -aDG -aFd -auk -aHH -aJg -aKo -aLO -aJq -aOE -aJn -aaa -aaa -aPR -aVt -aXb -aYo -aZV -bao -baP -bbZ -bcP -cBo -bbw -bbw -bbw -aZV -bmA -bmx -bmx -bqH -bsk -btJ -buV -bws -bqH -aJq -aJq -byW -bCv -bAV -bCv -bCv -bCv -bJs -bKz -bLK -bML -bNT -bOV -bQj -bRw -bSF -bOd -bTP -bRA -bWQ -bXO -bQq -bRo -bTG -caA -bVK -bYb -bZw -cap -ctR -ccn -cdo -cek -csF -cet -cfd -cfB -cfI -cgQ -cjS -cjN -cqm -cig -crd -ccw -crL -crT -cse -crT -csu -ccw -ccw -ccw -cst -crT -ctn -ctv -ctv -ccw -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(124,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -abp -abR -abP -abP -abP -abP -abp -abp -abp -agA -afU -ahF -aip -adR -aiX -ajN -akx -aiX -aiX -aiX -aiX -anC -anU -anC -aod -aqe -arf -arf -arf -arf -auU -avG -awr -awr -azV -aAh -aAh -aFg -aFh -aAh -aAh -aAh -aAh -aLR -aJq -aOE -aJn -aaa -aaa -aTQ -aVd -aXe -aYp -aZV -bbv -bcm -bcm -bem -bfD -bgW -bfD -bjI -aZV -bmC -boa -bpm -bqH -bsn -btL -buY -buY -bqH -aJq -aJq -aXf -bCv -bDP -bCv -bAw -bHV -bJw -bKC -bLK -bMN -bNV -bOV -bQo -bRz -bSH -bOd -bTP -bRA -bWQ -bWQ -bWQ -bWQ -caD -bWQ -ccw -ccw -cey -ccw -ccw -ccw -ccw -ccw -ccw -ccw -ccw -ccw -ccw -ccw -cjS -cjN -cjh -cig -ccw -ccw -ccw -ccw -ccw -ccw -ccw -ccw -csF -ccw -ccw -ccw -ccw -ccw -ccw -cjZ -aaf -aaf -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(125,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaf -aaf -aaf -aaf -abq -abq -abq -abr -abr -abq -abq -aff -afT -agz -ahb -ahF -clI -abp -ajh -ajM -akw -alb -alG -amr -amY -amY -ajp -aoG -aod -aqe -arf -aqo -asp -arf -auS -avv -awu -awr -aAd -aAh -aCm -aDL -aFf -aGk -aHU -aJz -aAh -aLQ -aJq -aOE -aJn -aaa -aaa -aJw -aVu -aXd -aYE -aZV -bbu -bbw -bbw -bbw -bbw -bbw -bbw -bjH -aZV -bmx -bmx -bmx -bqH -bsm -btL -buX -buX -bqH -aJq -aJq -bBy -bzs -bDO -bFl -bGH -bHU -bJv -bKB -bLK -bMM -bOd -bOV -bQj -bRy -bSG -bOd -bUK -bVT -bWR -bXQ -bOd -bZF -bPc -bOd -ccv -cdw -cex -bOd -cfN -cfN -bLK -apQ -bOh -bOh -bOh -bOh -bOh -ccw -cjS -cjP -ckF -ckF -ckF -cpE -cjR -crW -csg -aag -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(126,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -abq -abT -acs -acR -ado -adN -aex -afh -afV -agB -ahd -ahI -clS -abp -ajj -ajP -aky -alc -alI -ams -amZ -amZ -anW -aoH -aod -aqe -arf -asm -blU -atQ -avg -awp -axN -awr -aAg -aAh -aDO -aDQ -aFi -aGl -aBy -aBy -aAh -aMn -aJq -aOE -aJn -aaa -aaa -aJn -aVv -aXg -aYF -aZV -bbw -bcn -bbw -ben -bfE -bgX -bbw -bjJ -bld -bmD -bmD -bmD -bqK -bso -btN -buZ -buZ -bqH -byN -aJq -bBA -bCz -bDQ -bFn -bGJ -bHX -bJy -bKE -bLP -bMP -bIG -bJB -bKV -bRB -bSI -bSI -bUM -bVV -bWS -bSI -bSI -bZG -caE -cbA -ccy -bOd -bOd -bQu -cfO -cgW -cit -cph -ckb -ckV -clU -clU -bOh -ccw -coZ -cgU -cgU -cgU -crw -cjO -ccw -crX -cfK -aag -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aae -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(127,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaf -aaf -aaf -aaf -abr -abS -acr -acQ -adn -adM -abq -afg -afU -afU -ahc -ahH -aiq -abp -aji -ajO -akw -ajn -alH -amr -amY -amY -anV -ajo -aod -aqe -arf -ari -asu -aun -auW -avR -axM -awu -aAf -aAh -aCn -aDM -aGx -aAh -aAh -aBy -aAh -aMm -aJq -aOE -aJn -aJn -aJn -aJn -aJs -aXf -aYk -aZV -aZV -aZV -aZV -aZV -aZV -aZV -aZV -aZV -aZV -bmx -bmx -bmx -bqH -bqH -btM -bqH -bqH -bqH -aJq -bHt -bBz -bzs -bzs -bFm -bGI -bHW -cBD -bKD -bLO -bMO -bIF -bOZ -bQp -bRA -bOd -bTO -bUL -bVU -bMK -bXR -bYQ -bXR -bMK -cbz -ccx -cbA -cbA -cfi -bRH -cgV -bMQ -apQ -bQA -ckU -clT -cmU -bOh -ccw -cpa -cjc -cqo -ccw -cjk -cjm -ccw -ccw -cig -aag -aag -aag -aag -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(128,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aae -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -abr -abV -acu -acS -adp -adP -aey -afj -afX -agC -ahf -ahK -ait -abp -ajl -ajR -akw -ald -alJ -amt -ajp -ajp -anY -ajo -apq -aqe -arf -arf -arf -arf -avm -aws -axP -azb -aAi -aAh -aCn -aDM -aGx -aGm -aHV -aBy -aAh -aJq -aJq -aJq -aJr -aJr -aJr -aJr -aJr -aXh -aYG -aZY -aYG -aYG -bdn -bep -aYG -aYG -aYG -aYG -ble -bmE -bmE -bpn -bqL -bsp -btO -bva -bwu -bwu -bwu -bwu -bBB -aJv -bzs -bFp -bGJ -bHZ -bJA -bKG -bLK -bMR -bIH -bJF -bQr -bRA -bOd -bTP -bOd -bVX -bMK -bMK -bYR -bMK -bMK -cbC -bRA -bTO -cez -cez -cfQ -cgY -ciu -bVu -ckb -ckW -clU -clU -bOh -ccw -ccw -cpI -ccw -ccw -cjl -cjQ -cjV -cig -aaf -aaf -aaf -aaf -aag -aaa -aaa -aae -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(129,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aag -aaf -aaf -aaf -aaf -aaf -aaf -abr -abU -act -acu -acu -ato -abq -afi -afW -afW -ahe -ahJ -ais -abp -ajk -ajQ -akw -ajn -alH -amr -amY -amY -anX -ajo -app -aqi -arf -ask -atm -arf -avl -awq -axO -aza -aAh -aAh -aAh -aDS -aGx -aAh -aAh -aDN -aAh -aMo -aNC -aJq -aJq -aJq -aJq -aJq -aJq -aJq -aJq -aLY -aJq -bco -aJq -beo -aJq -aJq -aJq -aJq -aJq -aJq -aJq -aJq -aLY -aJq -bAk -aJq -aJq -aJq -aJq -bAj -aJq -aKG -bzs -bFo -bDu -bFt -bGQ -bHp -bLK -bMQ -bNY -bPa -bMQ -bRC -bMQ -bTP -bUN -bVW -bMK -bXS -bXS -bXS -bMK -cbB -alk -alX -aoZ -bQt -apa -cgX -apF -apI -bOh -bOh -bOh -bOh -bOh -cig -cpb -ciZ -cqp -cig -cjT -cgR -crP -cig -aaa -aaa -aaa -aaf -aag -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(130,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -abq -abW -abk -acj -acn -adh -adm -afk -afZ -agE -ahh -ahM -aiv -abp -aiY -ajE -ajH -akn -ale -alD -ana -ana -amu -ajo -aps -aqk -arf -asm -aHw -aup -avn -awv -axX -aze -aAh -aBz -aBz -aDU -aGx -aGn -aHW -aBy -aAh -aJq -aJq -aJq -aJq -aRt -aJq -aJq -aJq -aJq -aJq -aLY -aJq -bcp -aJq -beq -aJq -bgY -aJq -aJq -aJq -bAi -bmS -bmS -bpC -bqN -aNr -aJq -aJq -bxL -byX -aJq -aJq -bCA -bzs -bCC -bDA -bFx -bGW -bKI -bLQ -bMT -bOb -bPd -cBF -bRD -bSK -bTR -bUP -bVZ -bWT -bWa -bYS -bZH -caF -bQt -cBJ -cdy -bOd -bRy -cfR -cha -civ -cph -ckb -ckY -clW -clW -bOh -cig -cig -czg -cig -cig -crh -crA -crR -crY -csi -aaa -aaa -aaf -aag -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(131,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -abq -abq -abq -abq -abq -abq -abq -afg -afY -afY -ahg -ahL -aiu -abp -ajm -ajS -ajn -ajT -akA -amr -amY -amY -anV -ajo -apr -aqj -arf -ark -asL -aun -avu -awt -axV -azd -azX -aAZ -aCe -aDT -aGx -aAh -aAh -aBy -aAh -aCr -aCr -aCr -aJC -bYP -aQg -aJC -aQg -aJC -aQg -aJC -aJC -aHP -aHP -aHP -bfF -bfF -bfF -bfF -bfF -bfF -bfF -bfF -bfF -bqM -brV -bof -bwv -bvj -bvj -bvj -bvj -bvj -bvj -bCB -bCP -bvj -bvd -bKH -bLK -bMS -bOa -bPc -bQs -bMZ -bSJ -bTQ -bUO -bVY -bOd -bOd -bOd -bOd -bOd -cbD -bTO -cdx -bOd -bOd -cfP -cgZ -bMQ -apQ -bQA -ckX -clV -cmV -bOh -cig -cpc -cpJ -cpc -cig -cqY -cqY -cqY -cig -aaa -csl -aaa -aaf -aag -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(132,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -abo -aeB -afm -agb -agG -ahi -ahN -aix -abp -ajp -ajU -ajn -ajn -ajn -amr -ajp -ajp -ajp -ajo -apt -aqm -arj -arj -arj -arj -avx -awz -axR -avx -aAh -aBA -aBA -aDP -aBx -aGp -aHX -aBy -aAh -aMq -adq -aQb -aPZ -aRu -aQc -aUf -aQc -aXi -aQc -baa -aJC -bcq -bcq -bcq -bfF -bha -bio -bgF -blf -bmF -bob -bnB -bfF -bqR -brX -bof -bwx -bvj -bwB -bxa -byZ -bzI -bAX -bCF -bDB -bFB -bvd -bKJ -bLR -bMV -bOd -bMZ -bQv -bRF -bSM -bTS -bUQ -bWa -bUO -bVZ -bVZ -bZI -caH -cbF -ccz -cdA -cez -bOe -cfQ -chb -ciu -bVu -ckb -ckZ -clW -clW -bOh -cig -cpd -czM -cpd -cig -aaa -aaa -aaa -aaf -aaf -cso -aaf -aaf -aag -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(133,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaf -aaf -abo -aeA -afl -aga -abp -ahj -abp -cAN -abp -ajo -ajo -ajo -ajo -ajo -ajo -ajo -ajo -aoa -ajo -apt -aql -apv -arl -asM -atV -avw -awy -axQ -azj -arj -aAh -aAh -aAh -aAh -aAh -aAh -aAh -aAh -aMp -aMr -aOH -aPY -aQc -aRx -aQc -aQc -aPY -aQc -aZZ -aJC -aYV -aYV -aYV -bfF -bgZ -bin -bin -bjK -bkK -bkK -bkK -bpD -bqO -bLX -btf -bui -bvi -bww -bwZ -byY -bzH -bAW -bCE -bFv -bFz -bvd -bKH -bLK -bMU -bOc -bPe -bQu -bRE -bSL -bPe -bOd -bOd -bOd -bXT -bXT -bXT -caG -cbE -bTU -cdz -cez -bUL -cfS -bOd -bMQ -apQ -bOh -bOh -bOh -bOh -bOh -ccw -cpd -czL -cpd -ccw -aaf -aaa -aaa -aaf -aaa -csn -aaa -aaf -aag -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(134,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -acw -abp -abp -adR -abp -cxG -abp -adR -ahl -ahO -aic -ahT -ahT -ahT -ahT -ahT -ahT -ahT -alL -ahT -anb -ahT -anZ -apu -ahn -asb -asV -aus -aus -awA -axT -azl -aAl -arj -aCq -aDR -aFl -aGD -aHZ -aCr -aKJ -aMr -aMr -aOH -aQc -aQd -aQa -aRv -aPY -aVw -aPY -bac -aJC -aYV -aYV -aYV -bfF -bhc -bip -bgP -bjL -bkL -bmT -bnD -bpM -bqT -bFD -bJG -bJG -bvl -bwE -bxc -bzb -bzK -bBb -cpG -bDC -bId -bvd -bKH -bLK -bMX -bOd -bPg -bQx -bRH -bSO -bTU -bUS -bUS -bUS -bXU -bUS -bUS -bUS -bXU -bRF -bMW -cez -cez -cfQ -chd -ciw -cpP -ckc -clb -clY -clZ -bOh -aaa -cpd -cpM -cpd -aaa -aaf -aaa -aaa -aaf -aaa -csn -aaa -aaf -aag -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(135,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aag -acU -adr -acU -aeC -afn -agc -abp -ahk -aoJ -aib -aif -aif -aif -aif -aif -aif -aif -alK -alM -bkV -anc -anD -aoI -apX -arn -asN -aur -avy -avy -axS -azk -aAk -arj -aCf -aDY -aFj -aGr -aHI -aJk -aMr -aMr -aNt -aOH -aQc -aQc -aSq -aQc -aQc -aPY -aQc -bab -aJC -aYV -aYV -ber -bfF -bhb -bip -bjO -bip -bmG -bip -bnC -bpF -bqS -brY -bwz -bwy -bvj -bza -bxb -bvh -bCD -bAY -bCH -bDR -bIc -bvd -bKH -bLK -bMW -bOe -bPf -bQw -bRG -bSN -bTT -bUR -bWb -bUR -bTT -bUR -bZJ -bUR -bTT -bUR -cdB -bUR -bUR -cfT -chc -bMQ -apQ -bQA -cla -cBP -cmW -bOh -aaa -aaa -czN -aaa -aaa -aaf -aaa -aaa -aaf -aaa -csn -aaa -aaf -aag -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(136,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaf -aag -aag -aag -aaa -aaa -aag -abp -abp -abp -abp -afo -abp -abp -ahn -ahn -aiA -aiA -aiA -ahn -aiA -aiA -aiA -ahn -and -anF -aod -ahn -apx -ahn -arj -asr -asN -aut -avz -aXF -axU -azn -aAn -arj -aCh -aEc -aFk -aGw -aHK -aCr -aKr -aMr -bHF -aOH -aQc -aQc -aSo -clX -aVx -aQc -aQc -aQc -bbx -aYV -aYV -aYV -bfF -bhd -bis -bjR -bis -bmI -bod -bpt -bfF -bqV -bEe -bBL -bwA -bvj -bAl -bAl -bvh -bzS -bBc -bCJ -buk -cCp -bvd -bKH -bLK -bMZ -bOg -bPi -bQz -bRJ -bSO -bTV -bUT -bWc -bWU -bXV -bYT -bZK -bOd -cbG -ccA -cdC -ceB -cez -cez -chf -cix -cpP -ckd -clc -clZ -clZ -bOh -aaa -aaa -aaa -aaa -aaa -aaf -aaa -aaa -aaf -aaf -cso -aaf -aaf -aag -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(137,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aag -aaf -aaf -aaf -aaf -abp -aeD -afp -aeD -abp -aaa -aaa -aaa -aaf -aaf -aaf -aaa -aaf -aaf -ahn -ahn -anE -aod -aoK -apw -aqp -arj -asq -asN -aut -avz -avz -axU -azm -aAm -arj -aCr -aEb -aCr -aGv -aCr -aCr -aKq -aLS -aNF -aOH -aQc -aQc -aSH -aQc -aQc -aRx -aQc -aQc -aQg -aYV -aYV -bes -bfF -bfF -bir -bjQ -blh -bfF -bfF -bfF -bfF -bqU -bsq -bvj -bvj -bvj -bvj -bvj -bvj -bvj -bvd -bFu -bvj -bvj -bvd -bKH -bLK -bMY -bOf -bPh -bQy -bRI -bSP -bPh -bQy -bRI -bQy -bPh -bQy -bRI -bQy -bPh -bQy -bRI -ceA -bLK -bLK -che -bLK -apQ -bOh -bOh -bOh -bOh -bOh -aaa -aaa -aaa -aaa -aaa -aaf -aaa -aaa -aaf -aaa -csn -aaa -aaf -aag -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(138,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaa -aaa -adR -aeE -afr -aeE -adR -aaa -aaa -aaa -aaf -aaf -aaa -aaa -aaa -aaa -aaf -ahn -anG -aoe -aoL -apy -aqq -arj -ast -asN -auv -avA -avA -axW -azo -aAp -aBC -aCt -aEA -aCt -aGz -aIb -aCr -aKN -aMv -aNH -aOJ -aQc -aPY -aSG -aPY -aUg -bFC -aRw -aQc -bbx -aYV -aYV -bet -bfH -bhf -bhh -bhh -bhh -bmJ -bof -bpu -bqP -bsy -bEe -bvh -bwC -bxN -bze -bAp -bvh -bCG -bBd -bFw -bDD -bFJ -bvd -bKH -bzs -bRK -apQ -bRK -apQ -bVv -apQ -bRK -apQ -bVv -apQ -bRK -apQ -bVv -apQ -bRK -apQ -bVv -apQ -apQ -bLK -chg -bLK -apQ -aoV -aoV -apQ -apQ -apQ -aoV -aoV -aoV -aoV -aoV -aoV -aaa -aaa -aaf -aaa -csn -aaa -aaf -aag -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(139,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aeE -afq -aeE -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -ahn -anE -ahn -ahn -ahn -ahn -arj -ass -asX -auu -att -att -att -azf -aAo -aBB -aBB -aBB -aBB -aGy -aIa -aBB -aKM -aMu -aNG -aKM -aKM -aKM -aSp -aQc -aQc -aSq -aQc -bad -bby -aYV -aYV -bet -bfG -bhe -bit -bjS -bli -bli -boe -bli -bpN -bqX -bEe -btg -bDR -bDR -bDR -bDR -bzc -bDR -bDZ -bCK -bFy -bFF -bvd -bKH -bzs -bNa -bOh -bPj -bQA -bPj -bOh -bPj -bQA -bPj -bOh -bPj -bQA -bPj -bOh -bPj -bQA -bPj -bOh -apQ -bLK -cyG -bLK -aoV -aoV -aoV -apQ -apQ -aoV -aoV -aoV -aoV -aoV -aoV -aoV -aaa -aaa -aaf -aaa -csn -aaa -aaf -aag -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(140,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aeE -afs -aeE -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aag -aag -aag -aaa -aaa -aaf -arj -arj -asZ -aua -aua -awB -axY -azh -arj -arj -aaf -aaa -alP -aGI -aId -aJD -aKP -aMx -aNJ -aQe -aOL -aOL -aOL -aOL -aOL -aOL -aXO -aZb -aJC -aYV -aYV -bet -bfG -bhe -bhh -bjU -blk -blk -boh -biu -bpO -bqY -bss -btg -buk -bvm -bDT -buk -bvh -bzU -bBe -bCS -bDE -bFK -bvd -bKH -bzs -bNa -bOh -bPl -bQB -bRL -bOh -bTX -bUV -bWd -bOh -bXX -bYV -bZL -bOh -cbI -ccC -cdD -bOh -apQ -aoV -aoV -apQ -aoV -aoV -aoV -apQ -aoV -aoV -aoV -aoV -aoV -aoV -aoV -aoV -aaa -aaa -aaf -aaf -cso -aaf -aaf -aag -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(141,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aqG -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aqr -arm -arm -asY -atZ -auB -auB -atZ -azg -azp -azp -aCu -aaf -alP -aGH -aIc -aJC -aKO -aMw -aNI -aMw -aOK -acN -acN -acN -acN -acN -aQc -bae -aJC -bcr -aYV -bet -bfG -bhe -bhh -bjV -blj -bmK -bog -bog -bhh -bsx -bsr -bvh -bwD -bDR -bDR -bAq -bvj -bCQ -bDW -bCP -bvj -bvj -bJC -bKH -bzs -bNa -bOh -bPk -bPm -bPm -bOh -bTW -bUU -bTW -bOh -bXW -bYU -bXW -bOh -cbH -ccB -cbH -bOh -apQ -aoV -aoV -apQ -aoV -aoV -aoV -apQ -aoV -aoV -aoV -aoV -aoV -aoV -aoV -aoV -aaa -aaa -aaf -aaa -csn -aaa -aaf -aag -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(142,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aqs -aro -aro -aro -aro -aro -aro -aro -aro -aro -aro -aCv -aaa -alP -aGK -aIe -aJC -aJC -aJC -aJC -aJC -aJC -aXj -aVy -aSY -aVy -aVy -aYI -bah -aJC -aYV -bdo -beu -bvk -biu -biu -bjT -blm -bmL -boi -bpw -bhh -bsx -btX -bvj -bwG -bxR -bxR -bvj -bvj -bzW -bDZ -bCT -bGR -bIj -bJC -bKH -bzs -bNa -bOh -bPm -bQC -bPm -bOh -bTW -bUW -bTW -bOh -bXY -bYW -bXW -bOh -cbH -ccD -cbH -bOh -apQ -apQ -apQ -apQ -apQ -aoV -aoV -apQ -aoV -aoV -aoV -aoV -aoV -csz -aoV -aoV -aaa -aaa -aaf -aaa -csn -aaa -aaf -aag -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(143,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aae -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aqs -aro -aro -aro -aro -aro -aro -aro -aro -aro -aro -aCv -aaf -alP -aGJ -aIe -aJE -aKQ -aLU -aNu -aJC -aPw -aQc -aQc -aSZ -aQc -aVy -czP -bag -aJC -aYV -aYV -bet -bfJ -bhh -bhh -bgQ -bll -bhh -bhh -bpv -bhh -bsx -btV -bvh -bwF -bxQ -bxQ -bAr -bvj -bzV -bDZ -bzf -bDR -bIi -bJC -bKH -bzs -bNa -bOh -bOh -bOh -bOh -bOh -bOh -bOh -bOh -bOh -bOh -bOh -bOh -bOh -bOh -bOh -bOh -bOh -apQ -apQ -ciC -bVu -bVu -bVu -bVu -bVu -caJ -aoV -aoV -aoV -aoV -aoV -aoV -aoV -aaa -aaa -aaf -aaa -csn -aaa -aaf -aag -aaa -aaa -aaa -aaa -aaf -aaf -ctZ -ctZ -ctZ -ctZ -ctZ -aaf -aaa -aaf -cvF -aaf -aaa -aaa -aaf -aaf -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -cAU -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(144,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aqt -aro -aro -aro -aro -aro -aro -aro -aro -aro -aro -aCv -aaa -alP -aGA -aHS -aJx -aJx -aMi -aNE -aOO -aQi -aRz -aSF -aQc -aQc -aXl -aQc -bai -aJC -aYV -aYV -bet -bfH -bhh -bhh -bhg -bln -bmM -boj -bof -bhh -bsx -btV -bvj -bwI -bxT -bxQ -bAt -bvj -bCM -bDZ -bDR -bDR -bIl -bJC -bKH -bzs -bUr -bVu -bVu -bVu -bVu -bVu -bVu -bVu -bVu -bVu -bVu -bVu -bVu -caJ -apQ -apQ -apQ -apQ -apQ -cfj -cfU -cfj -cfj -ckf -cfj -cfj -bUr -bVu -bVu -bVu -bVu -bVu -bVu -bVu -csw -csw -csw -csw -csM -csw -csw -ctd -csw -csw -csw -csw -ctO -ctZ -ctZ -cuo -cuA -cuM -ctZ -cvk -cvk -cvk -cvk -aaf -aaf -aaf -aaf -cvk -cvk -cvk -cvk -cvk -cvk -cvk -cva -cva -cva -cva -cva -cva -cva -cva -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(145,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aae -aaa -aaa -aaa -aaa -aaa -aaa -aqs -aro -aro -aro -aro -aro -aro -aro -aro -aro -aro -aCv -aaf -alP -aGL -aHM -aJm -aKz -aKR -aND -aJC -aPP -aRg -aQc -aTa -aQc -aXk -aQc -aQc -aJC -aYV -aYV -bev -bfK -bhi -bhi -bhi -bfK -bfK -bfK -bof -bhh -bsx -btV -bvh -bwH -bxS -bzh -bAs -bvj -bCL -bxO -bDR -bDR -bIk -bJC -bKH -bzs -bzs -bzs -bPn -bPn -bPn -bzs -bzs -bPn -bPn -bPn -bzs -bzs -bPn -caI -bPn -bzs -bzs -bzs -cfj -cfj -cjp -chh -ciy -cke -clg -cfj -aoV -aoV -aoV -aoV -aoV -aoV -aoV -aoV -aaa -aaa -aaf -aaa -csn -aag -aag -aag -aag -aaa -aaa -aaa -ctN -ctY -cuh -cun -cuz -cuL -cuY -cvj -cvs -cvD -cvk -cvk -cvk -cvk -cvk -cvk -cvX -cvX -cvX -cvX -cwq -cwq -cva -cva -cva -cva -cva -cva -cva -cva -cva -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(146,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aqs -aro -aro -aro -aro -aro -aro -aro -aro -aro -aro -aCv -aaa -alP -aGL -aIe -aJC -aKS -aMC -aJC -aJC -aJI -aJI -aSI -aJI -aVA -aJI -aYK -aJI -aJI -bcs -aYV -aYV -bfK -bhk -bix -bjX -blp -bmO -bhi -bpy -bwz -brg -btZ -bvj -bwI -bxV -bzj -bAv -bvj -bCO -bDR -bDR -bDR -bIn -bJC -bKL -bLT -bLT -bLT -bLT -bLT -bLT -bLT -bLT -bUY -bWe -bWe -bWe -bWe -bWe -cdE -bAw -bzs -bAw -caK -cfj -ciB -ckh -chj -ciA -cjr -clh -cfj -aoV -aoV -aoV -aoV -aoV -aoV -aoV -aoV -aaa -aaa -aaf -aaa -csn -csD -cta -csD -cua -aaa -aaa -aaa -aaf -ctZ -cui -cuq -cuC -cuO -cuz -cvm -cvt -cvt -cvt -cvL -cvQ -cvX -cvX -cvX -cvX -cva -cva -cva -cva -cva -cva -cva -cva -cvx -cva -cva -cva -cva -cva -cva -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(147,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aqu -arm -arm -arm -auy -auB -auB -axZ -azp -azp -azp -aCw -aaf -alP -aGL -aIg -aJH -aKR -aMB -aJC -aOP -aJI -aRA -aVz -aVz -aVz -aVz -aYJ -aJI -bbz -aYV -aYV -aYV -bfK -bhj -biw -bhs -bjM -bmN -bok -bpx -bpP -brf -bhh -bvh -bwJ -bxU -bzi -bAu -bvj -bCN -bEa -bFA -bGS -bIm -bJD -bKK -bLS -bNc -bOj -bNc -bNc -bNc -bNc -bTY -bUX -bzs -bWV -bzs -bzs -bZM -cbJ -ceC -cfV -cfW -cfX -chk -chl -ciz -chi -ciz -cjq -ckg -cmb -cpO -cpQ -cpQ -cpQ -cpQ -czJ -apQ -aoV -aaa -aaa -aaf -aaa -csn -csD -csX -ctg -cua -cua -cua -cua -cua -ctZ -ctZ -cup -cuB -cuN -cuZ -cvj -cvj -cvj -cvj -cvj -cvP -cvj -cvj -cvj -cvj -cva -cva -cva -cva -cvp -cwv -cvr -cvp -cvl -cvr -cwv -cvp -cva -cva -cva -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(148,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaf -aaf -arj -arj -arj -auA -avD -awC -ayb -arj -alP -alP -aaa -aaa -alP -aGL -aIi -aJI -aJI -aJI -aJI -aJI -aJI -aRC -aSK -aVz -aVz -aVz -aYL -aJI -bbz -aYV -bdq -aYV -bfK -bhl -biy -bjY -bjN -bkO -bmU -bnH -bqQ -bsx -bhh -bvj -bvj -bxR -bxR -bvj -bvj -bCQ -bEd -bof -bof -bof -bJE -bof -bof -bNd -bIJ -bPo -bQE -bRM -bOr -bTZ -bUX -bzs -bAw -bBR -bHZ -bzs -bzs -bzs -ccF -cdG -ceE -cfl -cfZ -cki -cld -cjt -cjr -csq -cmd -cmd -cmd -cmd -cmd -bVw -bVw -bVw -bVw -aaa -aaa -aaf -csD -csO -csD -czk -cti -cua -cua -ctw -ctH -ctQ -cuc -cuj -cuj -cuE -cuQ -cuj -cvk -cvw -cvw -cvG -cvM -cvS -cvZ -cvG -cvw -cvw -cvf -cwh -cwm -cwr -cvp -cwx -cwj -cwu -cAV -cAZ -cvl -cvl -cva -cva -cva -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(149,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaf -aaf -aaf -aaf -aaf -arj -auz -avC -avC -aya -arj -arA -alP -alP -alP -alP -aGN -aIh -aJI -aKT -aMD -aNM -aOI -aJI -aRy -aSJ -aTM -aVB -aVz -aVz -baj -bbz -aYV -bdp -aYV -bfK -bfK -bfK -bfK -bfK -bfK -bfK -bnF -bqQ -bsx -bhh -bfJ -bhh -bhh -bhh -bhh -bhh -bzX -bBm -bof -bGT -bIo -bof -bIo -bLU -bNd -bII -bOr -bQD -bLY -bMa -bTZ -bUX -bzs -bAw -bXZ -bHZ -bZN -caK -bzs -ccE -cdF -ceD -cfk -cfY -cjr -ckj -cjs -cle -cli -cmc -cmY -cmc -cop -cmd -cmd -cqs -aaa -bVw -aaa -aaa -aaf -csD -csN -csV -ctb -cth -cua -ctr -ctu -ctG -ctP -cub -cuj -cur -cuD -cuP -cvc -cvk -cvu -cvu -cvu -cvu -cvR -cvY -cwb -cvu -cvu -cva -cwg -cwl -cwr -cvl -cww -cwD -cvv -cvv -cAY -cBb -cBd -cva -cva -cva -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(150,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaf -aaa -aaa -aaa -aaa -aaf -arj -auB -auB -arj -arj -arj -anf -anf -anf -awD -alP -aGB -aIf -aJA -aKC -aKC -aKC -aON -aQk -aRD -aSM -aVG -aVE -aXm -aVz -bak -bbz -aYV -bdp -aYV -bfL -bhn -biz -biz -biz -bmR -bfL -bol -bqQ -bsx -bst -bfJ -bhh -bhh -bwK -bhh -bhh -bhh -btV -bof -bGV -bIp -bof -bKM -bLW -bNd -bOn -bOr -bOr -bRO -bSQ -bTZ -bUZ -bPv -bPv -bPv -bPv -bPv -caM -cbL -cbL -cdI -ceG -cfj -cgb -chn -ciE -cjv -clj -ckk -cmf -cna -cnC -cor -ciM -cpN -cqt -aaa -bVw -aaa -aaa -aaf -csD -csU -csW -ctc -ctc -cto -ctt -cty -ctJ -ctT -cue -cul -cuu -cuG -cuS -cve -cvo -cvz -cvz -cvI -cvz -cvT -cBS -cwc -cvz -cwd -cwf -cwj -cwo -cwt -cwu -cwA -cAR -cAS -cvv -cBa -cBc -cBe -cva -cva -cva -cBf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(151,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaf -aaa -aaa -aaa -aaa -aaa -aaf -aaa -aaa -aaf -aaa -aaa -alP -ayf -aBD -aCx -aDV -alP -aGL -aHY -aQj -aQj -aMk -aNK -aOM -aQj -aRB -aSL -aTN -aVD -aVz -cAg -bak -bbz -aYV -bdp -cBm -bfL -bhm -bhm -bhm -bhm -bkP -bmV -boc -bqW -brh -bua -bua -bua -bua -bua -bua -bhh -bhh -btV -bof -bGU -bqQ -bof -bCR -bLV -bNd -bOm -bPp -bQF -bRN -bSS -bUa -bNc -bNc -bOj -bNc -bNc -bZO -caL -cbK -ccG -cdH -ceF -cfj -cga -chm -ciD -cju -clf -csr -cme -cmZ -cme -coq -cmd -cmd -cqs -aaa -bVw -aaa -aaa -aaf -csD -ctb -csV -ctb -ctj -ctk -cts -ctx -ctI -ctS -cud -cuk -cus -cuF -cuR -cvd -cvn -cvy -cvy -cvH -cvy -cvy -cvy -cvy -cvy -cvy -cwe -cwi -cwn -cws -cwn -cwz -cwE -cvv -cvv -cvv -cvp -cvl -cva -cva -cva -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(152,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaa -aaa -aaf -aaa -aaa -alP -aAq -aAq -aCy -aCG -alP -aGL -avI -aJK -aKV -aMl -aMF -aMF -aJI -aRG -aSO -aTO -aVG -aVz -aVz -bak -bbz -aYV -bdp -bdc -bfL -beY -biz -biz -biz -bkR -bfL -boo -bqQ -bhg -bua -bvn -bwL -bxX -bsL -bua -bBJ -bhh -bBn -bof -bDF -bIr -bof -bKN -bHT -bNd -bNd -bNd -bNd -bNd -bSU -bUb -bVa -bWf -bWX -bOP -bNd -bTZ -bUX -bzs -bzs -bzs -bzs -cfj -cfj -cfj -cfj -cjx -cfj -cfj -cmd -cmd -cmd -cos -cmd -czI -bVw -bVw -bVw -aaa -aaa -aaf -csD -csD -csD -csD -cti -ctq -cua -ctA -cuy -ctV -cug -cuj -cuj -cuE -cuU -cuj -cvk -cvw -cvw -cvJ -cvw -cvV -cwa -cvJ -cvw -cvw -cvb -cwk -cwp -cwr -cvp -cwC -cwn -cAT -cAW -cvl -cvl -cvl -cva -cva -cva -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(153,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaS -aba -aaS -aaS -aaS -aaS -aaS -aaS -aaS -aaS -aaS -aaS -aaS -aaS -aaS -aaa -aaf -aaf -aaa -aaa -aaa -aaa -aaa -aaf -aaf -alO -alO -alO -alP -alP -alP -alP -alP -alP -alP -aDW -aFn -aGP -avI -aJI -aJI -aJI -aNO -aOT -aJI -aRF -aSN -aVF -aVF -aVF -aYM -aJI -bbA -aYV -bdr -bdb -bdN -blr -bho -bho -bho -bkQ -bmW -bom -bIq -bri -bsu -bsL -bsL -bvo -bzl -bua -bzd -bhh -btT -bCU -bCR -bqQ -bGX -bCR -bqQ -bRN -bIK -bPq -bLd -bNd -bST -bOr -bOr -bOr -bWW -bYa -bYX -bTZ -caN -cbM -cbM -cdJ -bzs -cfm -cgc -bAw -ciF -cjw -ckl -clk -clk -bAw -bzs -apQ -aaa -apQ -apQ -apQ -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -ctp -cua -ctz -ctK -ctU -cuf -cuf -cuv -cuH -cuT -cvg -cvj -cvj -cvj -cvj -cvj -cvU -cvj -cvj -cvj -cvj -cva -cva -cva -cva -cvp -cwB -cvr -cvp -cvl -cvr -cwB -cvp -cva -cva -cva -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(154,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaS -aaa -aaf -aaa -aaf -aaa -aaf -aaa -aaf -aaa -aaf -aaa -aaf -aaa -aaS -aaf -aaf -aaa -aaa -aaa -aaa -aaa -aag -alO -arp -alO -anf -anf -anf -awD -anf -aoP -alP -aBE -alP -aDX -alP -aGR -avI -aJL -aKX -aJI -aJI -aJI -aJI -aRH -aVz -aVz -aVH -aXn -aYN -aJI -bbz -aYV -aYV -bey -bfL -bhm -biz -biz -biz -bla -bmY -boq -boq -brj -bpE -btk -bum -bvq -bzn -bua -bBL -bhh -bBC -bCV -bDN -bFM -btR -bDN -bIa -bIf -bIL -bOq -bLf -bRP -bSW -bMH -bNi -bOr -bWZ -bYd -bYY -bZP -caO -cbN -ccI -cdL -ceI -cfo -bAw -bAw -bAw -cjz -ceJ -clm -cmg -cnc -cnD -bzs -apQ -apQ -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -cua -ctF -ctM -ctX -cuf -cum -cuw -cuJ -cuW -cvi -cvq -cvC -cvC -cvC -cvN -cvW -cvX -cvX -cvX -cvX -cva -cva -cva -cva -cva -cva -cva -cva -cvA -cva -cva -cva -cva -cva -cva -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(155,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaS -aaa -ads -adS -aeG -aaa -ads -adS -aeG -aaa -ads -adS -aeG -aaa -aaS -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aag -cxW -anf -aqv -anf -anf -anf -aEl -anf -alP -alP -alP -alP -alP -alP -aGQ -aIk -aIp -aKW -aMG -aIp -aIp -aJI -aJI -aSP -aUh -aJI -aJI -aJI -aJI -aJI -bcq -bcq -bcq -bfL -bhp -biB -biB -biB -bkU -bmX -bpE -bpE -bpE -bpE -bti -bul -bvp -bzm -bua -bBK -bwz -bBw -bJG -bDI -bFL -bli -bKO -bHY -bNf -bOp -bPr -bQH -bNd -bSV -bSQ -bNh -bWg -bWY -bYc -bNd -bNd -bzs -bzs -ccH -cdK -ceH -cfn -cgd -ceJ -ccM -cjy -ceJ -cll -ccM -cnb -bHd -ceI -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -cua -ctE -ctL -ctW -cuf -cum -cuw -cuI -cuV -cvh -cvj -cvB -cvE -cvk -cvk -cvk -cvk -cvk -cvk -cvX -cvX -cvX -cvX -cwq -cwq -cva -cva -cva -cva -cva -cva -cva -cva -cva -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(156,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aae -aaa -aaa -aaa -aaS -aaf -ads -adT -aeG -aaa -ads -adT -aeG -aaa -ads -adT -aeG -aaf -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aag -alO -alO -alO -anf -auC -alP -anf -anf -alP -arA -anf -alP -atw -alP -aGS -aIm -aIp -aKH -aMI -aIp -aOV -aOX -aOX -aSR -aUi -aVJ -aOX -aYP -bal -bam -aYV -aYV -aYV -bfL -bhq -bhm -bkb -bhm -bla -bmZ -bpH -bra -bsK -bpE -bpE -buq -bvt -bye -bon -bBN -bEi -bEi -bEi -bDU -bFO -bBN -bKR -bMc -bNd -bNd -bNd -bNd -bNd -bSX -bMI -bNk -bNU -bXb -bWi -bYZ -bZR -caQ -bzs -ccK -ccM -ceJ -ceJ -cgf -ceJ -ccM -ccM -ceJ -clo -cmi -cbQ -cnF -cot -csc -csm -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -cua -cua -cua -cua -cuf -cuf -cux -cuK -cuX -cuf -cvk -cvk -cvk -cvk -aaf -aaf -aaf -aaf -cvk -cvk -cvk -cvk -cvk -cvk -cvk -cva -cva -cva -cva -cva -cva -cva -cva -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(157,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaS -aaa -ads -adT -aeG -aaf -ads -adT -aeG -aaf -ads -adT -aeG -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -alO -aqy -anf -alP -awE -anf -apE -anf -anf -alP -anf -alP -aCE -aIj -aJB -aKD -aMs -aNL -aOQ -aQf -aRE -aSQ -aVI -aVI -aVI -aYO -aRJ -bbB -aYV -aYV -aYV -bfL -bfL -bfL -bfL -bfL -blg -bmZ -bpG -bqZ -brk -bsv -bsv -bun -bvr -bzo -bon -aFa -bCY -bEh -bCW -bDS -bFN -bBN -bKQ -bMb -bNd -bOr -bOt -bOr -bRQ -bOr -bSQ -bNj -bNs -bXa -bYa -bNd -bZQ -caP -cbO -ccJ -cdM -bLS -cfp -cge -cbK -ciG -bLS -ckm -cln -cmh -cnd -cnE -bPn -aoV -aoV -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaf -aaf -aaf -aaf -aaf -cuf -cuf -cuf -cuf -cuf -aaf -aaa -aaf -cvK -aaf -aaa -aaa -aaf -aaf -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -cAX -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(158,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaf -ads -adT -aeG -aaa -ads -adT -aeG -aaa -ads -adT -aeG -aaf -aaf -aaf -aaf -aaf -aaf -aaf -aaf -aaf -aaf -apC -apC -apC -apC -apC -apC -alP -anf -alP -alP -alP -alP -awD -ayf -aGC -aIl -aIq -aKK -aMy -aIp -aOX -aQm -aRJ -aRJ -aRJ -aVK -aRJ -aRJ -aRJ -bbB -aYV -aYV -aYV -bfO -bfS -biC -bkd -bfS -bKH -bmZ -bpJ -brc -bsL -bug -btl -but -bvw -bzq -bon -bBP -bCZ -bEk -bFG -bCY -bFP -bBN -bKQ -bMb -bNd -bOt -bOr -bOr -bRQ -bOr -bSQ -bWj -bWk -bXc -bYe -bNd -bZS -caR -bzs -ccL -ccM -ceL -ceJ -cgh -ceJ -ceJ -ccM -ceJ -cAe -cmj -cne -bHd -bPn -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(159,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaS -aaS -aaS -aaf -aaa -ads -adT -aeG -aaa -ads -adT -aeG -aaa -ads -adT -aeG -aaa -aaf -aaa -aaa -aaa -aaa -amw -aof -aof -aof -aof -arq -asv -atv -auD -apC -awF -anf -alP -arA -anf -aCz -asw -aCJ -aGT -aIn -aIp -aKI -aMt -aIp -aOW -aQm -aRJ -aSS -aUj -aRJ -aRJ -aYQ -cBg -bam -aYV -aYV -aYV -aYV -bhr -biC -bkc -bfS -blo -bmZ -bpI -brb -bsL -buf -bvs -bur -bvp -bzp -bon -bBO -bCY -bEj -bCY -bGZ -bFE -bBN -bKS -bMd -bNd -bOs -bOt -bQJ -bRR -bOr -bSQ -bWj -bWj -bWj -bWj -bNd -bzs -bzs -bzs -ccH -bFr -ceK -ceJ -cgg -ccM -ccM -cjA -ceJ -ccM -cdN -bFr -cnG -bzs -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(160,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaS -aaa -aaf -aaa -aaa -aaa -adV -aaa -aaa -aaa -adV -aaa -aaa -aaa -adV -aaa -aaa -aaf -aaa -aaa -amw -amw -amw -aoh -aoN -apA -aof -ars -anf -arx -anf -apC -aoQ -cqM -asw -asw -asw -aCA -anf -aFp -aGW -anf -aIp -aKI -aMA -aIp -aOX -aQm -aRJ -aST -aUk -aRJ -aRJ -aYQ -bam -aYV -aYV -aYV -aYV -beE -bfS -biE -bkf -bfS -bKH -bmZ -bpL -bre -bsN -bre -bvv -bur -bvp -bzr -bon -bBQ -bDa -bEl -bFH -bHb -bIw -bBN -bKT -bMb -bNd -bOt -bPu -bOr -bRQ -bOr -bSQ -bWj -bWk -bXc -bYe -bNd -bZU -caS -cbN -ccN -bHd -bzs -bzs -bKT -bAw -bAw -bFr -ceJ -ccM -ccM -cng -bzs -bzs -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(161,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaS -aaf -abX -acx -acx -adt -adU -adU -adU -adU -adU -adU -adU -adU -adU -adU -adU -adU -alg -alN -amv -ane -cxN -aog -aoM -apz -aqw -arr -asw -asw -auE -apC -awG -auF -alP -alP -alP -alP -alP -aFo -aGV -aIp -aIp -aKL -aMz -aNQ -aOX -aQm -aRJ -aRJ -aRJ -aRJ -aRJ -aYR -ban -aYV -aYV -aYV -bez -bfP -bfS -biD -bke -bfS -bKH -bmZ -bpK -brd -bpK -bpK -bvu -bux -bvy -bon -bon -bBN -bBN -bBN -bBN -bHa -bBN -bBN -bKB -bMb -bNd -bOr -bPt -bOr -bRQ -bSY -bMJ -bNl -bNW -bXd -bPu -bNd -bZT -bMb -bFr -ccM -cdN -bzs -cfq -bKT -bAw -ciH -bHd -bzs -bAw -cmk -cnf -bzs -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(162,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaS -aaa -aaf -aaa -aaa -aaa -adX -aaa -aaa -aaa -adX -aaa -aaa -aaa -adX -aaa -aaa -aaf -aaa -aaa -amw -amw -amw -aoi -aoO -apB -aqx -art -anf -anf -auF -apC -awH -auF -alP -aAr -anf -alP -aaa -aFq -aGX -aIp -aJO -aKU -aME -aNN -aOR -aQh -aRI -aSU -aXo -aXo -aXo -aYO -bap -aYV -aYV -bci -beB -bfS -bfS -bfS -bfS -bfS -bKH -bmZ -bon -bon -bon -bon -bon -buG -bvA -bon -bAw -bzg -bLS -bLS -bLS -cbQ -bLS -bLS -bKE -caU -bNc -bOj -bPw -bNc -bNc -bNc -bNc -bNc -bNc -bNc -bPw -bNc -bLS -caU -cbQ -bhG -bhG -bhG -cbK -cgj -cbK -cbK -chp -bCq -clp -bCq -bCq -bCq -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(163,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaS -aba -aaS -acy -aaa -ads -adW -aeG -aaa -ads -adW -aeG -aaa -ads -adW -aeG -aaa -aaf -aaa -aaa -aaa -aaa -amw -aof -aof -aof -aof -anf -aoP -atw -auF -apC -aoP -auF -azr -anf -anf -alP -alP -aFo -aGV -aIp -aJN -aLd -aMN -aNQ -aOZ -aOX -aOX -aOX -aUz -aVM -aOX -aYT -bam -aYV -baR -bcb -bdl -bdO -bPv -bgo -bPv -bPv -blq -bna -bPv -bpQ -bPv -bdO -btm -buy -bvz -bdO -bPv -bna -bPv -bPv -bPv -bDV -bPv -bPv -bHq -bMe -bIg -bIM -bPv -bLT -bLT -bLT -bLT -bLT -bLT -bLT -bLT -bLT -bLT -caT -cbP -ccO -cdO -cdO -cdO -cnH -czH -czT -czY -bCq -bHE -bHE -clp -aag -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(164,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaf -ads -adW -aeG -aaa -ads -adW -aeG -aaa -ads -adW -aeG -aaf -aaf -aaf -aaf -aaf -aaf -aaf -aaf -aaf -apC -aqy -anf -anf -aty -auF -apC -alP -auF -alP -alP -alP -alP -ayf -aFm -aGF -aIq -aIq -aIq -aIq -aIq -aIq -aIq -aIq -aIq -aIq -aIq -aIq -aXS -aIq -aIq -baZ -bck -bdm -bdP -bdP -bdP -bdP -bdP -bdP -bnc -boC -bpV -bdP -bdP -bto -buL -bvB -cbK -bxg -bzk -bDb -bDb -bDb -bDb -bDb -bDb -bDb -bDb -bIs -bIN -bDb -bDb -bDb -bDb -bDb -bDb -bDb -bDb -bDb -bDb -bDb -bDb -bDb -bDb -bDb -bDb -bDb -bky -bky -bUw -czY -bCq -bLv -bLv -bLv -aag -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(165,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaS -aaa -ads -adW -aeG -aaf -ads -adW -aeG -aaf -ads -adW -aeG -aaa -aaf -aaa -aaa -aaa -aaf -aaa -aaa -aaa -apC -anf -anf -alP -atx -auF -apC -auD -auF -alP -aAs -anf -alP -aCG -aFr -aGE -aIo -aIo -aIo -aIo -aIo -aIo -aIo -aRK -aIo -aIo -aUx -aVL -aXR -aZc -aZc -baT -bcj -beC -aYV -bfT -biG -bkg -blu -bnb -bop -bor -bpS -bsO -buh -btn -buH -byf -byf -byf -byf -bDb -bEm -bEm -bEm -bDb -bJH -bKW -bMg -bIh -bOx -bPx -bJN -bRT -bEm -bEm -bJN -bRT -bEm -bEm -bJN -bRT -bEm -bEm -bDb -cfr -cho -bDb -aaa -bky -bUw -czY -bLv -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(166,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaS -aaf -ads -adW -aeG -aaa -ads -adW -aeG -aaa -ads -adW -aeG -aaf -aaf -aaa -aaa -aaa -aaf -aaa -aaa -aaa -apC -anf -alP -alP -apE -auG -apC -aoP -auF -apE -anf -anf -alP -aCG -aFt -aFu -aFu -aFu -aFu -aFu -aFu -aFu -aFu -aFu -aFu -aFu -aFu -aVO -bdp -aYV -aYV -bba -aXq -aYV -aYV -bht -biI -bkh -blw -biI -blw -boE -bpY -bsQ -buh -btx -buU -byf -bzu -bAz -bBT -bDb -bEm -bEm -bEm -bIx -bJJ -bKY -bMi -bNo -bIP -bPA -bJN -bRU -bSZ -bEm -bJN -bRU -bXe -bEm -bJN -bRU -bSZ -bEm -bDb -cgi -chq -ccQ -aaa -bZi -bUw -czY -bLv -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(167,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaS -aaa -ads -adY -aeG -aaa -ads -adY -aeG -aaa -ads -adY -aeG -aaa -aaS -aaf -aaf -aaf -aaf -aaf -aaf -aaf -apC -anf -anf -asx -anf -auF -alP -alP -auF -alP -alP -alP -aCB -aEB -aFs -bbE -aIr -bav -aLf -aIt -aNS -aPb -aQp -aRN -aIt -aUB -aFu -aVN -bdp -bar -bar -aYV -aXq -aYV -aYV -bfT -biH -bkh -blv -bls -blv -boD -bpY -bsP -buh -btw -buT -byf -bzt -bAy -bBS -bDb -bEm -bEm -cBz -bEm -bJI -bKX -bMh -bIt -bOx -bPz -bJN -bRU -bEm -bEm -bJN -bRU -bEm -bEm -bJN -bRU -bEm -cBz -bDb -cgi -chq -ccQ -aaa -bZi -bUw -czY -bLv -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(168,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaS -aaa -aaf -aaa -aaf -aaa -aaf -aaa -aaf -aaa -aaf -aaa -aiS -aaa -aaS -aaa -aaa -aaa -aaa -aaa -aaa -aaa -apC -alP -alP -alP -anf -auH -avF -awI -ayc -asw -aAu -asw -aCD -aEa -aFv -aGG -aIu -aJQ -bCI -aIt -aIt -aPb -aIt -aRN -aIt -aUB -aFu -aVZ -aXT -aFu -aFu -bcv -aXq -aYV -bfU -bhu -biJ -bhM -bjW -blx -bne -boL -bqb -bsR -buh -buo -bxd -byf -bzw -bAB -bBV -bDb -bEn -bEm -bEm -bEm -bJL -bLa -bMi -bNo -bPy -bPA -bJN -bRW -bTb -bUe -bJN -bWl -bXf -bYg -bJN -bZV -caV -cbS -bDb -cgl -chs -bDb -aaa -bky -bUw -czY -bCq -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(169,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaS -aaS -aaS -aaS -aaS -aaS -aaS -aaS -aaS -aaS -aaS -aaS -aba -aaS -aaS -aaf -aaa -aaa -aaf -aaf -aaf -aaf -alO -aqz -aru -alP -anf -anf -avE -anf -anf -awD -aAt -aty -aCC -aDZ -aFu -aFu -aIs -aJP -aLg -aMH -aIt -aYW -aYW -aYW -aYW -aYW -aYW -aVY -aYY -bas -aFu -aYV -cBk -aYV -bfU -bhu -biJ -bhK -bjP -blt -bnd -boG -bqa -bsR -buh -buo -bvb -byh -bzv -bAA -bBU -bDb -bEm -bEm -bEm -bIy -bJK -bKZ -bMi -bIu -bIO -bPB -bLe -bRV -bTa -bUd -bVi -bRV -bTa -bYf -bVi -bRV -bTa -cbR -bDb -cgk -chr -bDb -aaa -bky -cBN -czY -bCq -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(170,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaf -aaa -aaa -aaa -aaa -aaa -aaa -alO -anf -anf -asy -anf -anf -alP -alP -anf -alP -alP -alP -aCE -aDZ -aFu -aHc -aIw -aJS -cAM -aMJ -aNP -aOS -aOS -aOS -aOS -aOS -aOS -aWb -aXU -bau -aFu -aYV -aXq -aYV -bfV -bfV -bfV -bkl -blA -blD -bot -bfV -bfV -bfV -bfV -btA -bxd -byf -bzy -bAD -bBX -bDb -bEm -bEm -bEm -bIx -bJM -bLc -bMi -bNo -bOx -bPD -bQM -bMi -bMi -bRZ -bVj -bMi -bMi -bRZ -bZa -bMi -bMi -bRZ -bMi -bMi -chu -ccQ -aaf -bZi -bUw -cAa -bLv -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(171,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaf -aaa -aaa -aaa -aaf -aaf -alO -aqA -anf -alP -anf -anf -alP -awJ -anf -alP -aAv -anf -aCE -aDZ -aFu -aHb -aIv -aJR -aJR -aIt -aIt -aPd -aIt -aRO -aIt -aUC -aVP -aXu -aYW -bat -bbD -aYV -aXq -beE -bfV -bhv -biK -bkk -blz -bly -bos -bpR -bqc -bsS -box -buo -bxd -byf -bzx -bAC -bBW -bDb -bEm -bEm -bEm -bDb -bJH -bLb -bMk -bNn -bIQ -bPC -bQL -cBG -bTc -bUf -bTc -bRX -bTc -bUf -bTc -bRX -bTc -cbT -ccP -ccP -cht -ckn -csk -czQ -czU -czZ -bLv -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(172,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaf -aaa -aaa -aaa -alP -alP -alP -alP -alP -anf -anf -alP -anf -anf -apE -anf -anf -aCE -aDZ -aFu -aHd -aIx -aJF -aLh -aIt -aNV -aPd -aIt -aRO -aIt -aIt -aVQ -aXu -aYW -aVQ -aFu -aYV -aXq -bds -bfV -bhx -biM -bkm -blC -blG -bou -bou -biL -cBs -box -buo -bvc -byf -byf -byf -byf -bDb -bDb -bDb -bDb -bDb -bJN -bJN -bMm -bNp -bOx -bMi -bQN -bRZ -bMi -bMi -bVk -bRZ -bMi -bMi -bZb -bRZ -bMi -bMi -cfy -cgn -cjB -ccQ -aaf -bZi -czV -czY -bLv -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(173,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aae -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaf -aaa -aaa -alO -apD -aEl -anf -arx -anf -anf -alP -alP -atB -alP -alP -alP -aCF -aDZ -aFw -aFw -aFw -aFw -aFw -aFw -aFw -aPf -aQq -aRP -aIt -aIt -aIt -aWd -aXV -aIt -bbD -aYV -aXq -aYV -bfV -bhw -biL -bhP -blB -blF -bou -bou -biL -bsT -box -btP -bxd -byi -bzz -bAE -bBY -bDc -bEo -bFI -bHe -bIz -bIz -bJN -bMl -bIv -bIR -bPE -bLe -bRY -bTd -bUg -bVi -bWm -bTd -bUg -bVi -bZW -bTd -bUg -bDb -bDb -bDb -bDb -aaa -bky -czV -czY -bCq -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(174,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaf -aaa -alP -anf -anf -arw -asA -asA -anf -alP -awL -anf -anf -apE -aBF -aCH -aED -aFy -aGO -aIB -aJJ -aKZ -aMW -aFw -aFu -aFu -aFu -aTc -aUD -aVS -aYW -aYW -bax -aFu -aYV -aXq -aYV -bfV -bfV -biO -biL -blB -blF -bou -bpT -bqd -box -box -btS -bxd -byi -bwN -bAG -bCa -bDc -bEo -bIC -bEc -bIB -bIB -bJN -bMo -bNp -bOx -bPH -bJN -bSa -bTe -bUh -bJN -bWn -bXg -bYh -bJN -bZX -caW -cbU -bDb -aaf -aaf -aaa -aaa -bky -czV -czY -bCq -aaa -aaa -aaa -aaa -aaa -aaa -aaa -bZi -bZi -bZi -aag -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(175,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaf -alO -aoQ -anf -arv -asz -atA -anf -alP -awK -anf -awD -apE -anf -aCk -aEC -aFx -aGM -aIy -aJG -cAz -aMK -aFw -aPg -aQr -aFu -aTb -aIt -aVR -aYW -aYW -aUD -bbD -aYV -aXq -aYV -bfW -bhy -biN -biL -bni -blM -bni -bni -bni -brl -buj -btQ -bve -byj -bwM -bAF -bBZ -bDc -bEp -bCX -bEc -bIA -bIA -bJN -bMn -bNp -bOz -bPG -bJN -bEm -bEm -bRU -bJN -bEm -bEm -bRU -bJN -bEm -bEm -bRU -bDb -aaf -aaa -aaa -aaa -bZi -czV -czY -bLv -aaa -aaa -aaa -aaa -aaa -aaa -aaa -bZi -btp -cqu -aag -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(176,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -alP -alP -alP -aqB -arx -anf -anf -anf -alP -awM -ayg -ayg -ayg -ayg -aCl -aEe -aFw -aFw -aFw -aLo -aLb -aFw -aFw -aPi -aQt -aRQ -aIt -aUF -aLg -aYW -aYW -aVQ -aFu -aYV -aXq -aYV -bfX -bhz -biQ -biL -biL -blN -biL -biL -biL -biL -bsw -btU -bxe -bvC -bzD -bxv -bCc -bDc -bEo -bDj -bDY -bIA -bIA -bJN -bMq -bNp -bOx -bPJ -bJN -bEm -bSZ -bRU -bJN -bEm -bXe -bRU -bJN -bEm -bSZ -bRU -bDb -aaf -aaa -aaa -aaa -bZi -czV -czY -bLv -aaf -aaf -aaf -aaf -aaf -bky -bky -bZi -cqu -bZi -aag -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(177,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -alP -aoP -alP -alP -apE -alP -atB -alP -alP -awx -aye -ayd -aAc -ayd -aCI -aEd -aFw -aHf -aIz -aJM -aLa -cBZ -aFw -aPh -aQs -aFu -aTd -aUE -aVT -aYW -aYW -aZd -aFu -aYV -aXq -aYV -bfX -bhy -biP -bko -blE -bnj -bov -bpU -brq -bsW -buj -bvE -bxd -byk -bzC -bAH -bCb -bDc -bEo -bDf -bEb -bGY -bGY -bJN -bMp -bNp -bOx -bPI -bJN -bEm -bEm -bUi -bJN -bEm -bEm -bUi -bJN -bEm -bEm -bUi -bDb -aaf -aaf -aaa -aaa -bZi -czV -czY -bLv -aaa -aaa -aaa -aaf -aaf -bky -cwy -cmn -cmn -bZi -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(178,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaf -aaf -aaf -alP -alP -alP -alP -alP -anf -anf -anf -anf -anf -anf -aty -anf -awx -avI -asA -apE -arx -aCo -aEf -aFw -aGU -aIC -aJU -aLe -aMX -aFw -aCR -aCR -aCR -aCR -aCR -aCR -aWe -aWe -aCR -aCR -bcs -aXq -aYV -bfX -bfV -bfV -bfV -bfV -bfV -box -bpW -brs -box -box -buo -bxd -byk -byk -byk -byk -bDc -bDc -bJR -bEg -bDc -bDc -bLe -bMr -bNr -bIT -bJN -bJN -bJN -bJN -bJN -bJN -bJN -bJN -bDb -bDb -bDb -bDb -bDb -bDb -bky -bky -bky -bky -bky -czX -cAc -bCq -bky -bky -bky -bky -bky -bky -cmn -cmn -cmn -bZi -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(179,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -alO -amx -anf -anf -anf -anf -alP -alP -alP -asB -asB -asB -avo -awx -avH -asB -asB -asB -aCK -aEf -aFw -aHg -aIA -aJT -aLc -aMX -aFw -aPj -aFz -aRR -aTe -aUG -aFz -aRS -aXW -baz -aCR -bcx -aXq -aYV -bfY -bhA -biR -bkq -bjZ -bvx -boz -boM -bzE -bsX -bsz -btW -bxf -bzE -bzE -bzE -bzE -bDd -bEq -bDl -bEf -bFQ -bHc -bHK -bIb -bID -bOA -bPK -bQO -bSb -bOu -bUj -bVl -bWo -bXh -bQZ -bTl -bZY -caX -bTl -bQZ -cdQ -btp -bky -czG -czR -czW -cAb -cko -clq -cmq -ciI -cnJ -cri -bYr -cmn -cBT -cBU -bZi -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(180,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -alP -alP -alP -alP -alP -anf -alP -aqD -arz -asB -atD -auJ -asB -awQ -avK -azt -aAy -asB -aCN -aEf -aFw -aGY -aII -aJW -aMX -aMX -aNW -aPl -aQv -aPl -aTg -aUI -aTg -aRS -aZf -aFz -bbF -aYV -aXq -aYV -bfX -bhB -bgp -bhU -bhU -blX -bow -boO -bhU -bsZ -cdX -ceX -bvg -bvD -bvD -cBx -bzB -bAa -bBE -bDm -bEr -bFR -bHf -bHM -bFR -bIE -bJr -bJO -bWr -bQX -bQX -bUk -bVn -bWq -bXj -bYj -bZc -bTl -bTl -bTl -bQZ -bNB -ceM -ccU -cgo -czS -blO -cAd -bky -bDh -cBL -btp -btp -cvO -bky -bky -bky -bky -bky -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(181,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaf -aaf -aaf -aaf -aaf -alP -anf -alP -aqC -ary -asB -atC -auI -auI -awP -avJ -awO -awO -asB -aCM -aEg -aFw -aHi -aHi -aJV -aFw -aFw -aFw -aPk -aQu -aPk -aTf -aUH -aTf -aRS -aZf -baA -bbF -aYV -aXq -aYV -bfZ -bhA -biS -bkr -blH -bnm -boy -bpX -brt -brm -bsA -bvH -bvf -brt -bwO -bxF -bzA -bzZ -bBD -bBD -bBD -bBD -bBD -bHL -bBD -bBD -bJo -bPK -bQX -bWr -bQX -bQX -bWr -bWp -bXi -bYi -bTl -bTl -caY -cbV -bQZ -blQ -brG -cfs -cgm -bns -bky -bky -bky -bky -bky -bky -btp -csy -cko -cAf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(182,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -alP -anf -alP -alP -alP -asB -atE -auI -auI -awT -avM -azv -aAA -asB -aCE -aEi -aFw -aHl -aID -aID -aFw -aMM -aFz -aFz -aQw -aRS -aRS -aRS -aRS -aRS -aZf -aRS -bbF -aYV -aXq -aYV -bga -bgc -bgc -bgc -bgc -bgc -boB -boB -boB -btb -buo -bvJ -bvJ -bvJ -bwQ -bxW -bvK -bvK -bEt -bDn -bEz -bFS -bJT -bLh -bMs -bMs -bMs -bPN -bQS -bSf -bWr -bWr -bQX -bWr -bXl -caZ -cba -bTl -cbc -bTl -bQZ -cdR -ceO -bky -cgm -chw -ciK -cjC -ckp -cls -cmr -bky -btp -cmo -bky -aaf -aaf -aaf -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aae -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(183,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaf -aaf -alP -anf -apE -anf -anf -asB -asB -asB -avL -awR -auI -azu -aAz -asB -aCO -aEh -aFz -aHk -aFz -aFz -aTe -aML -aFz -aFz -aQw -cdl -aRS -aRS -aRS -aRS -aZf -aRS -bbF -aYV -aXq -aYV -bfX -bhC -biU -bks -blI -bnn -boA -bpZ -boB -bta -buo -bvJ -bCk -byo -aDH -bxP -bCf -bvK -bEs -bGc -bHm -bGc -bEs -bEs -aaf -aaf -aaf -bPN -bQR -bSe -bMf -bNe -bNm -bNX -bTf -bQZ -bTl -bTl -cbb -bTl -bQZ -cdR -ceN -bky -cgp -chv -ciJ -cbf -cbf -clr -bnt -bky -btp -cou -bZi -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(184,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -alP -aoQ -alP -aqE -arA -asB -atG -auL -avN -axa -auI -azw -aAA -asB -aCQ -aEk -aFB -aHn -aFB -csT -aFB -aLr -aFB -aPn -aQy -aPn -aTi -aUK -aVU -aWg -aZf -baA -bbF -aYV -aXq -aYV -bfX -bhD -biV -biW -blK -bnp -bng -boQ -brx -bro -buo -bvJ -bxj -byq -bwR -bxY -bCh -bvK -bEv -bFU -bFU -bFU -bJV -bEC -bMu -bMu -bMu -bEC -bQU -bQU -bTl -bQU -bXr -bWr -bOw -bQZ -bQZ -bQZ -cka -bQZ -bQZ -bQZ -bQZ -bQZ -cgr -chx -bky -bky -bky -clt -bnt -bky -btp -bMB -bZi -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(185,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaf -alP -alP -alP -alP -alP -asB -atF -auK -auJ -awS -auI -awO -awO -asB -aCP -aEj -aFA -aHm -aEj -aEj -aEj -aEj -aEj -aPm -aQx -aPm -aTh -aUJ -aTh -aXz -aZg -aFz -bbF -aYV -bdv -aYV -bgb -bhC -biU -biW -blJ -bno -bnf -boP -bqf -brn -bsC -bvK -bxi -byp -bzJ -bxY -bCg -bvK -bEu -bFU -bFU -bFU -bJU -bEC -bMt -bNt -bNt -bEC -bQT -bSg -bTk -bSh -bXr -bQX -bOv -bYk -bYk -bZZ -cjW -bZZ -ccR -cdS -ceP -bQZ -cgq -chx -bky -aaa -bky -cgr -cms -bky -btp -bNA -bky -aaf -aaf -aaf -aaf -aaf -aaf -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(186,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aae -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaf -aaa -aaa -asB -atH -auM -avO -awU -ayj -azx -aAB -asB -aCR -aEm -aCR -aPl -aQv -aPl -aQv -aCR -aNY -aCR -aQA -aCR -aTj -aFz -aVV -aXB -aZh -baB -aCR -bcq -bdx -bcq -bgc -bgc -biX -bhV -bka -blZ -bnk -bpo -bqk -brp -bsD -bvK -bxl -bys -bzM -bya -bCj -bvK -bEx -bFU -bFU -bGl -bJX -bEC -bMw -cBE -bOE -bEC -bQV -bSi -bTm -bUn -bXr -bQX -bOv -bYm -bYm -bZZ -ckN -bZZ -ccR -cdS -ceP -bQZ -cgt -chx -bZi -aaa -bZi -clt -bnt -btp -btp -bky -bky -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(187,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaa -aaa -asB -asB -asB -asB -asB -asB -asB -asB -asB -aCR -bfb -aCR -aHo -aIE -aKe -aIE -aCR -aNX -aPo -aQz -aCR -aCR -aCR -aCR -aXy -aZe -aCR -aCR -bcy -bdw -beG -bgc -bhE -biW -bkv -blL -biW -bnh -biW -brx -bte -bup -bvK -cBu -byr -bzL -bxZ -bCi -bvK -bEw -bFU -bFU -bGk -bJW -bEC -bMv -bNu -bMv -bEC -bQT -bSh -coT -bTl -bXr -bNZ -bOy -bZd -bYl -caa -ckM -cbW -ccS -ccS -ceQ -cft -cgs -chy -bZi -aaa -bZi -clt -bns -bky -bky -bky -aaa -aaa -aaS -aaS -aaS -aaS -aaS -aaS -aaS -aaS -aaS -aba -aaS -aaS -aaS -aaS -aaS -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(188,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaa -aaa -atS -apQ -aoV -aoV -atS -apQ -apQ -apQ -atS -aCR -aEn -aCR -aHq -aHq -aHq -aHq -aCR -aCR -aCR -aCR -aCR -aTl -aUL -aVW -aXD -aZj -baD -bbG -aTk -bdy -beI -bgc -bhF -biW -bib -bki -bma -bnl -bpq -boB -bth -bus -bvK -bxm -byu -bzN -byb -aGs -bvK -bBF -bFU -bEL -bGz -bJZ -bEC -bMx -bNw -bOF -bEC -bQW -bSj -bTn -bUo -bNq -bOk -bOB -bPs -bYo -cab -cbd -cbX -ccT -bSc -bSc -cfu -cgu -chA -bky -aaa -bky -clt -bns -aaf -aaf -aaf -aaf -aaf -aaS -aaa -aaf -aaa -acy -aaa -aaf -aaa -aaf -aaa -aaf -aaa -aaf -aaa -aaS -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(189,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -atS -aoV -aoV -aoV -atS -aoV -aoV -apQ -atS -aaf -aaa -aaf -aaa -aaa -aaa -aaa -aMZ -aNZ -aPp -aQB -aNa -aTk -aPq -aPq -aXC -aZi -baC -aPq -aPq -bdy -beH -bgc -bgc -bgc -bgc -bgc -bgc -bgc -bpp -bgc -brr -bsE -bvK -bvK -byt -byt -byt -byt -byt -bEy -bFU -bFT -bFU -bJY -bEC -bMv -bNv -bMv -bEC -bPN -bPK -bPN -bPN -bPK -bPN -bPK -bPb -bQG -bPN -bPN -bPN -bQZ -bQZ -bQZ -bQZ -bky -chz -bky -bky -bky -clt -bns -aaa -aaa -aaa -aaa -aaa -aaS -aaa -crj -crB -crS -aaa -crj -crB -crS -aaa -crj -crB -crS -aaa -aaS -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(190,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -atS -aoV -aoV -aoV -aaH -aoV -aoV -apQ -atS -aaf -aaa -aaf -aaa -aaa -aaa -aaf -aMZ -aOb -aPr -aQC -aRU -aQC -aQC -aQC -czO -aZl -baE -bbH -bcA -bdz -beJ -bge -bhH -biY -biY -biY -bmd -bnr -bpr -bgc -btj -buu -bvM -bxo -bqe -bzO -bzO -bzO -bqe -bEB -bFW -bFT -bFU -bFU -bLi -bMz -bNy -bOH -bEs -bQY -bQX -bTo -bUp -bUp -bUp -bXs -bPL -bQI -bPN -bWr -cbZ -bQZ -cmo -bky -bDh -bky -chC -ciL -btp -btp -clv -cmt -aaa -aaa -aaa -aaa -aaa -aba -aaf -crj -crC -crS -aaa -crj -crC -crS -aaa -crj -crC -crS -aaf -aaS -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(191,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -avT -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -atS -aoV -aoV -aoV -aaH -aoV -aoV -aoV -atS -aaf -aaa -aaf -aaa -aaa -aaa -aaf -aMZ -aOa -aVX -aTm -aRL -aTm -aTm -aTm -aWh -aZk -aTm -aTm -bcz -aTm -aTm -bgd -bhG -bhG -bhG -blO -bmc -bnq -bgc -bgc -bru -bsF -btY -bxn -bqe -bzO -bzO -bzO -bqe -bEA -bFV -bFT -bGA -bHg -bFU -bMy -bNx -bOG -bEs -bQX -bSk -bQX -bUp -bUp -bUp -bXr -bPF -bWr -bWr -bWr -cbY -bQZ -btp -bky -bky -bky -ccp -cbf -cbf -cbf -clu -cmt -aaa -aaa -aaa -aaa -aaa -aaf -aaa -crj -crC -crS -aaf -crj -crC -crS -aaf -crj -crC -crS -aaa -aaS -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(192,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaH -aoV -aoV -aoV -atS -aoV -aoV -aoV -atS -aaf -aaa -aaf -aaa -aaa -aaa -aaf -aNa -aOd -aOU -aPq -aNa -aPq -aPq -aPq -aOU -aPq -aPq -aPq -bcC -cBl -aPq -bgg -aNa -aaa -bky -bqh -bme -bnx -bqe -brA -brw -buw -bvO -bxq -byv -bzO -bAR -bzO -bqe -bED -bFX -bFT -bGF -bKa -bFU -bMA -bNz -bOI -bEs -bRa -bQX -bTp -bUp -bVs -bUp -bXt -bPM -bZh -bPN -cbe -cbY -bQZ -btp -ceS -cae -bky -ccq -cdq -cjE -ckr -clw -cmu -aaf -aaf -aaf -aaf -aaf -aaf -aaf -crj -crC -crS -aaa -crj -crC -crS -aaa -crj -crC -crS -aaf -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(193,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -atS -aoV -aoV -aoV -atS -aoV -aoV -aoV -apQ -aaf -aaa -aaf -aaa -aaa -aaa -aaf -aNa -aOc -aPs -aPq -aNa -aPq -aPs -aPs -aXG -aZm -aPs -aPq -bcB -aPq -aPs -bgf -aNa -aaf -bky -blP -bns -boF -bqe -brz -brv -cBt -bvN -bxp -byv -bzO -bAQ -bCl -bqe -bEC -bEC -bEM -bGC -bEC -bEC -bEC -bEC -bEC -bEC -bQZ -bQZ -bQZ -bQZ -bQZ -bQZ -bQZ -bUp -bQZ -bQZ -bQZ -bQZ -bQZ -btp -ceR -btp -cbv -ccq -bns -cjD -cjD -cjD -cjD -cnj -aaa -aaa -aaa -aaa -aaf -aaa -crj -crC -crS -aaa -crj -crC -crS -aaa -crj -crC -crS -aaa -aaf -aaS -aaS -aaS -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(194,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aae -aaa -atS -aoV -aoV -aoV -atS -aoV -aoV -aoV -aoV -aaf -aaa -aaf -aaf -aaf -aaf -aaf -aNa -aNa -aNa -aQF -aNa -aTn -aNa -aNa -aNa -aNa -aNa -cyp -aNa -bdA -aNa -aNa -aNa -aaa -bky -blR -bns -boF -bqe -brC -brv -buv -bvO -bxr -byv -bzO -bzO -bzO -bqe -bEF -bky -bEO -bGK -bKc -bky -bMB -bNA -btp -btp -bRb -bDh -bPN -bUq -bVt -bVt -bUp -bUp -bUp -bPN -bDh -bqg -bky -bDh -bDh -ckS -bky -ccq -cds -cjD -ckt -cly -cmw -cnj -cnj -cnj -aaa -aaa -aaf -aaa -aaa -crD -aaa -aaa -aaa -crD -aaa -aaa -aaa -csZ -aaa -aaa -aaa -aaf -aaa -aaS -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(195,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -apQ -aoV -aoV -aoV -atS -aoV -aoV -aoV -aoV -aaf -aaa -aaf -aaa -aaa -aaa -aaf -aaf -aaf -aNa -aQE -aNa -aQE -aNa -aaa -aaf -aaa -aNa -aQE -aNa -aQE -aNa -aaf -aaf -aaf -bky -cyC -bns -boF -bqe -brB -brv -bsG -bvP -bxn -bqe -bzO -bzO -bzO -bqe -bEE -bFY -bEN -bGG -bKb -bFY -buz -buz -buz -buz -buz -bSl -bTq -bTq -bTq -bTq -bTq -bTq -bTq -bTq -cbf -cbf -ccU -ccU -ccU -ccU -ccU -ccr -cdr -cjF -cks -clx -cmv -cnk -cnK -cyU -cpi -cpi -cpi -cqJ -crk -crk -crk -crk -crk -crk -crk -csE -cpi -csY -cpi -cpi -cpi -ctB -aaf -aaS -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(196,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -apQ -aoV -aoV -aoV -apQ -aoV -aoV -aoV -aoV -aaf -aaa -aaf -aaa -aaa -aaa -aaf -aaf -aaa -aNa -aQE -aNa -aQE -aNa -aaf -aaf -aaf -aNa -aQE -aNa -aQE -aNa -aaa -aaf -aaa -aaf -aaa -bns -boF -bqe -brD -brP -bsI -bvO -bxs -byw -bzO -bzO -bzO -bqe -bEG -bGa -bHs -bGL -bKd -bhG -bMC -blO -blO -bPO -blO -bSm -bTr -bTr -bTr -bTr -bXu -bTr -bTr -bTr -cbg -bTr -bTr -bXu -bTr -cbg -bTr -cct -cdu -cjG -cku -clz -cmx -cnj -cnj -cnj -aaa -aaa -aaf -aaa -aaa -crF -aaa -aaa -aaa -crF -aaa -aaa -aaa -csZ -aaa -aaa -aaa -aaf -aaa -aaS -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(197,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aoV -aoV -aoV -aoV -apQ -aoV -aoV -aoV -aoV -aaa -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aNa -aeR -aNa -aQE -aNa -aaf -aaa -aaf -aNa -aQE -aNa -afE -aNa -aaa -aaa -aaa -aaf -aaa -bns -boF -bqe -bqe -bry -bsH -bqe -bqe -bqe -bqe -bqe -bqe -bqe -bEG -bFZ -bHr -bIS -bEs -bEs -bEs -bky -bky -btp -bky -bky -bky -bky -bky -btp -bky -bky -bky -bky -bky -bky -bky -bky -btp -bky -bky -bky -bky -cjD -cjD -cjD -cjD -cnj -aaa -aaa -aaa -aaa -aaf -aaa -crj -crE -crS -aaa -crj -crE -crS -aaa -crj -crE -crS -aaa -aaf -aaS -aaS -aaS -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(198,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aNa -aQE -aNa -aQE -aNa -aaf -aaf -aaf -aNa -aQE -aNa -aQE -aNa -aaa -aaa -aaa -aaf -aaf -bns -boH -biY -brF -brQ -bsM -buz -buz -buz -buz -buz -buz -buz -bEI -bFZ -bHu -bIV -bKf -bLk -bEs -bNC -btp -btp -bky -aaa -aaa -aaf -bky -btp -btp -bYr -btp -cad -cbi -bky -ccW -cdV -btp -bky -cgy -ccV -bky -aaa -aaa -aaf -aaf -aaf -aaf -aaf -aaf -aaf -aaf -aaf -crj -crE -crS -aaa -crj -crE -crS -aaa -crj -crE -crS -aaf -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(199,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aNa -cyh -aRW -aTo -aNa -aaa -aaf -aaa -aNa -aTo -aRW -cyr -aNa -aaa -aaa -aaf -aaf -aaf -bnu -bhG -bhG -bhG -bhG -bsJ -brE -bhG -bhG -bhG -bhG -brE -bhG -bEH -bGb -cBA -bIU -bKe -bLj -bEs -bNB -btp -bPP -bky -aaa -aaa -aaf -bky -bky -bky -bky -btp -cac -cbh -bky -ccV -btp -btp -cfv -cBL -btp -bky -aaf -aaa -aaa -aaa -aaf -aaa -aaa -aaa -aaa -aaf -aaa -crj -crE -crS -aaf -crj -crE -crS -aaf -crj -crE -crS -aaa -aaS -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aae -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(200,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -cwI -cwI -cwI -cxg -cwI -afa -cwI -crx -crx -crx -cwI -cxK -cwI -cxK -cwI -cwI -cwI -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -bky -btq -brH -bvQ -bxt -bvQ -bCm -bDh -bEs -bGd -bHv -bIW -bKe -bLm -bEs -bky -bky -bky -bky -aaa -aaa -aaf -aaa -aaf -bky -bYs -btp -cae -btp -btp -btp -btp -ceT -bky -btp -chH -bky -aaf -aaf -aaa -aaf -aaf -aaf -aaf -aaf -aaf -aaf -aaf -crj -crE -crS -aaa -crj -crE -crS -aaa -crj -crE -crS -aaf -aaS -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(201,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -cwI -cwI -cwI -cwI -cwY -cxd -cxe -cwI -cwL -anq -anq -anq -anq -anq -cwL -cwI -cxQ -cxQ -cxU -cwI -cwI -aaa -aaa -aaa -aaa -aaa -aaa -aaa -bZi -bqg -brG -brG -btp -brG -brG -bDg -bEs -bGc -bGc -bGc -bEs -bLl -bEs -aaf -aaa -aaf -atS -aaa -aaa -aaf -aaa -aaf -bky -bky -bZi -bZi -bZi -bky -bky -bky -blP -bky -bky -bky -bky -aaf -aaf -aaa -aaa -aaf -aaa -aaa -aaa -aaa -aba -aaa -crj -crG -crS -aaa -crj -crG -crS -aaa -crj -crG -crS -aaa -aaS -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(202,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aae -aaa -aaa -aaa -cwI -crO -cwK -cwP -cwI -cwY -cxe -cxh -cwI -cxo -cwL -cwL -cwL -cwL -cwL -cxL -cwI -cxQ -cxQ -cxU -cxX -cxZ -aaa -aaa -aaa -aaa -aaa -aaa -aaa -bZi -btp -brI -bvR -btp -byx -brI -bky -bky -aaf -aaf -aaf -aaf -aaa -aaf -aaf -aaa -aaa -aaf -aaa -aaa -aaf -aaa -aaa -aag -aaf -aaa -aaa -aaa -aaf -aaf -bky -ceU -bky -aaa -aaa -aaa -aaf -aaa -aaa -aaa -aaf -aaa -aaa -aaa -aaa -aaS -aaa -aaf -aaa -aaf -aaa -aaf -aaa -aaf -aaa -aaf -aaa -aaf -aaa -aba -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(203,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -crx -crN -cwJ -cwO -cwI -cwY -cxe -cxh -cwI -cwL -cxq -cxq -cxq -cxq -cxq -cwL -cxM -cxQ -cxQ -cxV -cxX -cxZ -aaa -aaa -aaa -aaa -aaa -aaa -aaa -bky -bky -bky -bky -bky -bky -bky -bky -aaf -aaa -aaa -aaa -aaf -aaa -aaf -aaa -aaa -aaa -aaf -aaa -aaa -aaf -aaa -aaa -aag -aaf -aaa -aaa -aaa -aaa -aaf -bky -cyC -bky -aaf -aaf -aaf -aaf -aaf -aaf -aaf -aaf -aaf -aaf -aaf -aaf -aaS -aaS -aaS -aaS -aaS -aaS -aaS -aaS -aaS -aaS -aaS -aaS -aaS -aaS -aaS -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(204,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -crx -cwF -cwL -cwR -cwI -crx -cxf -crx -cxm -cwL -cxr -cxr -cxr -cxr -cxr -cwL -cwI -cxR -cxQ -cxV -cxX -cxZ -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaf -aaa -aaf -aaf -aaf -aaa -aaf -aaa -aaa -aaa -aaa -aaf -aaa -aaf -aaa -aaa -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaf -aaf -aaa -aaa -aaa -aaa -aaf -aag -aag -aag -aaf -aaa -aaa -aaf -aaa -aaa -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(205,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -crx -crQ -cwL -cwQ -cwI -cwZ -cwL -cxi -cxj -cwL -cwL -cwL -cwL -cwL -cwL -cwL -cwW -cwI -cwI -cwI -cxX -cxZ -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaa -aaa -aaa -aaf -aaa -aaa -aaf -aaa -aaa -aaa -aaa -aaf -aaa -aaf -aaa -aaa -aaa -aag -aaa -aaa -aaa -aaa -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aag -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(206,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -crx -cwF -cwL -cwL -cwX -cwL -cwL -anq -cxj -cwL -cxq -cxq -cxq -cxq -cxq -cwL -crx -cxc -cxa -cxc -cxX -cxZ -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaa -aaa -aaa -aaf -aaa -aaa -aaf -aaa -aaa -aaa -aaa -aaf -aaa -aaf -aaa -aaa -aaa -aag -aaa -aaa -aaa -aaa -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(207,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -crx -cwG -amB -amB -cwW -cxa -cwL -cxj -cxj -cwL -cxr -cxr -cxr -cxr -cxr -cwL -cxO -cxa -cxa -cxa -cxX -cxZ -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaa -aaa -aaa -aaf -aaa -aaa -aag -aaa -aaa -aaa -aaa -aaf -aaa -aaf -aaa -aaa -aaa -aag -aaa -aaa -aaa -aaa -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aae -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(208,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -cwI -crO -cwN -cwS -cwI -cxc -cwL -cwL -cwL -cwL -cwL -cwL -cwL -cwL -cwL -cwL -crx -cxa -cxa -cxa -cxX -cxZ -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaa -aaa -aaa -aaf -aaa -aaa -aag -aaa -aaa -aaa -aaa -aaf -aaa -aaf -aaa -aaa -aaa -aag -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aae -aaa -aaa -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aae -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(209,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -cwI -cwI -cwI -cwI -cxb -cxa -cxa -cxa -cxp -cxs -cxs -cxs -cxs -cxs -cxp -crx -cxS -cxT -cxS -cwI -cwI -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aag -aaa -aaa -aaa -aaa -aaf -aaa -aaf -aaa -aaa -aaa -aag -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(210,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -cwI -crx -cwI -crx -cwI -cwI -cwI -crx -crx -crx -cwI -cwI -cwI -crx -cwI -crx -cwI -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aag -aaa -aaa -aaa -aaa -aaf -aaa -aaf -aaa -aaa -aaa -aag -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(211,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaf -aaf -aaa -aaa -aaa -aaa -aag -aaa -aaa -aaa -aaa -aaf -aaa -aaf -aaa -aaa -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(212,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -cxn -aaa -aaa -aaa -aaa -aag -aaa -aaa -aaa -aaa -aaf -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(213,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaf -aaa -aaa -aaa -aaa -aag -aaa -aaa -aaa -aaa -aaf -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(214,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aag -aaa -aaa -aaa -aaa -aaf -aaa -aaf -aae -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(215,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaa -aaa -aaa -aaa -aaf -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(216,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaa -aaa -aaa -aaa -aaf -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(217,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(218,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aae -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(219,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(220,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(221,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -cBX -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(222,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(223,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaf -aaa -aaf -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(224,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaf -bGf -bLo -bGf -aaf -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(225,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaf -bIX -bGf -bLn -bGf -bIX -aaf -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(226,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaf -bGf -bGf -bKh -bLo -bMD -bGf -bGf -aaf -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(227,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -bGe -bGe -bIY -bKg -bKg -bKg -bND -bGe -bGe -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(228,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaf -aaf -bGf -bHw -bJa -bKg -bLp -bKg -bNF -bOJ -bGf -aaf -aaf -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(229,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -bGe -bGe -bIZ -bKg -bKg -bKg -bNE -bGe -bGe -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(230,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaf -bGf -bGf -bKi -bLr -bME -bNG -bNG -aaf -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(231,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaf -bIX -bGf -bLq -bGf -bIX -aaf -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(232,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaf -bGf -bGe -bGf -aaf -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(233,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaf -aaf -aaf -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aae -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(234,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaf -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(235,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(236,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(237,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(238,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(239,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(240,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aHr -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(241,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aHr -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(242,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aHr -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(243,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(244,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(245,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(246,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(247,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aHr -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aHr -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(248,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aHr -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(249,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(250,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(251,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(252,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(253,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(254,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -"} -(255,1,1) = {" -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaadaaeaaeaaeaaeaaeaadaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaagaahaaiaajaakaalaalaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaamaahaahaanaahaahaahaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaaoaahaahaahaapaahaaqaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaraadaadaadaasaataadaadaauaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaraadaavaahaawaadaauaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaahaahaaxaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaayaadaadaadaadaadaahaahaaxaazaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaaAaahaahaaBaadaahaahaaxaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaCaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaaAaahaaDaaEaadaahaahaaxaadaadaaFaaGaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaaAaahaahaaHaadaaIaaJaaIaadaahaahaahaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaKaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaaAaahaahaahaaLaahaahaahaaMaahaahaahaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaKaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaaAaahaahaahaaNaahaahaahaaIaahaahaahaadaaOaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaayaadaadaadaadaadaadaaPaahaahaadaadaadaadaadaadaaOaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaaQaaRaaSaaTaaUaadaahaahaahaadaaVaaWaaXaaYaaZaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaKaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadabaaaRaaRaaRaaRabbaahaahaahaadaahaahaahaaDabcaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaaQaaRaaRaaRaaRabdaahaahaahabeaahaahaahaahaahaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaaRaaRaaRaaRaaRabfaahaahaahabgaahaahaahaahabhaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaKaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadabjabkablabmabnaadaahaahaahaadaboabpaahaahabhaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqabqabqabqabqabqabqabqabqabqabqaaaabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadabraaRabsaadaadaadaaIabtaaIaadabuaadaahaahaahaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabvabiaaaabiaaaabiaaaabiaaaabiaaaaaaabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadabwabxabyaadaaaaadabzabzabzaadaadaadabAabBabCaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiabDabDabEabFabGabFabGabFabHabDabDaaaabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadabzabzabzaadaaaaarabIabJabKaauaaaaadabzabzabzaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiabDabLabMabNabOabPabQabRabSabTabDaaaabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarabIabJabKaauaaaaaaaaaaaaaaaaaaaaaaarabIabJabKaauaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiabiabDabUabVabWabVabVabVabXabSabYabDabiabiaaaaaaaaaaaaaaaaaaaaaaaaabiaaaaaaaaaaaaaaaabiaaaabiaaaabiaaaaaaaaaaaaaaaaaaabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiabDabDabZacaacbaccacdabQabQabSaceabDabiabiabiabiabiabiabiabiabiabiabiaaaaaaaaaabiaaaabiaaaabiaaaabiaaaaaaaaaaaaaaaaaaabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacfabDacgabQabQabQabQachabQabQaciacjabDaaaabiaaaaaaaaaaaaaaaaaaaaaaaaabiabiaaaaaaabiaaaabiaaaabiaaaabiaaaaaaaaaaaaaaaaaaabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabDabDackachabQabQaclacmachabQacnacoabDabiacpabiabiabiabiabiabiabiabiabiabiabiabiabiaaaabiaaaabiaaaabiaaaaaaaaaaaaaaaaaaabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaKaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaKaaaaaaacqacqacqacqacqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabDacrabQabQabQacsactacuabQabQacvacwabDabDacxabiabiabiabiabiabiabiabiaaaaaaaaaaaaabiabiabiabiabiabiabiabiaaaaaaaaaaaaaaaabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacqacqacqacqacqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacqaaaabiaaaacyaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaczacAacBacCacDacEabQacFabQabQabQabQabQabQabSabQacGacHacxacIacIacJacIacIacJacJacIacKacLacMacLacMacLacNacNacOacOacOacNacNaaaaaaaaaaaaaaaabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacqaaaabiaaaacyaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacqabiacPabiacqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacQacRacSacTacUacVabQabQacWacXacYabQacZadaadbabQadcaddacxabiaaaaaaaaaaaaaaaaaaabiacMadeadfadfadfadgacNadhadiadjadkadlacNaaaaaaaaaabiaaaabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacqabiadmabiacqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacqacJacJacJacJabiabiaaaadnaaaabiabiacqacqacqacqacqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacQadoadpadqacUadradsadradradradtadradradraduadradradvacxacxacxacxacxacxacxacxacxacxadwadfadxadyadeacNadzadAadBadCadDacNaaaabiadEabqabqabiabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacqacqacqacqacqabiabiaaaadFaaaadGabiacqacqacqacqacqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacqaaaaaaabiaaaabiaaaaaaadnaaaaaaabiaaaabiaaaaaaacqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacQadHadIadJacUadKabQadLadradMadNadOadradPadQadRadradSacxadTadUadVadWadXadYadZaeaacxaebadfadxaecadeacOaedaeeaefadBaegacNaaaabiacLaehacLabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacyaaaaaaabiaaaabiaaaaaaadFaaaaaaabiaaaabiaaaaaaacqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacqabiaeiaeiaeiaeiaeiaaaaejaaaaeiaeiaeiaeiaeiabiacqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaczaekaelaemacUaenabQaeoadraepaeqaeradraesaetaeoadraeuacxaevaewaexaexaexaexaexaeyacxaezadfadxaecadeacOaeAaeBaeCadBaeDacNabiabiacLaeEacLabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacqabiaeFaeFaeFaeFaeFaaaaeGaaaaeFaeFaeFaeFaeFabiacqaaaaaaaaaaaKaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacqaaaaeHaeIaeIaeIaeIaeJaeKaeLaeMaeMaeMaeMaeNaaaacqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeOaczaczaczaePaeQaeRacUaeSaeTaeUadraeSaeVadradradraeWaeUadradracxaeXaeYaeZafaafbafcafdafeaffadfadfadxaecadeacNafgafhafiafjafkacNacMacMacKaehacLacLacKaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacqaaaaflafmafmafmafmafnafoafpafqafqafqafqafraaaacqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacqabiafsafsafsafsafsaaaaeKaaaafsafsafsafsafsabiacqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaczaftafuafvafwafxafyafzafAafBafCafDafEafFafGafHafIafJafKafLacxafMafNafOafPafQafRafSafTafUadfadfafVafWacLacNafXacNafYacNafZacNagaagbacLagcacLagdageageagfaaaaaaaaKaaaaaaaaaaaaaaaaaaaaaaaaaaaacqabiaggaggaggaggaggaaaafoaaaaggaggaggaggaggabiacqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacqaaaaaaaaaabiaaaaaaaaaaeKaaaaaaaaaabiaaaaaaaaaacyaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaczaghagiagjagkaglagmagnagoagoagpagqagoagoagoagragsagtaguagvacxafMafMagwagxagyagzagAagBacxagCagDagEagFacLagGagHagIagJagKagLagIagMagNagOagPagOagQagRagSagTagUaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacqaaaaaaaaaabiaaaaaaaaaafoaaaaaaaaaabiaaaaaaaaaacqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacqabiaeiaeiaeiaeiaeiaaaaeKaaaaeiaeiaeiaeiaeiabiacqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagVagWagXagYagZahaahbahcahdaheaheahfahgahhahiahiahiadrahjahkacxacxacxahlahmahnahoahpahqacxahracMahsahtacLahuahvahwahxahyahzahAahBahCacLahDacLahEageageahFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacqabiaeFaeFaeFaeFaeFaaaafoaaaaeFaeFaeFaeFaeFabiacqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacqaaaaeHaeIaeIaeIaeIaeJaeKaeLaeMaeMaeMaeMaeNaaaacqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaczaczaczahGahHahIahbabDadrahJadradradrahKahKahKahKahKahLahMahNahOahPahQahRahSahTahUahVahNahWahXahYahZaiaaibaicahwaidahyaieahAaifacLacKacLacLacLacKaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacqaaaaflafmafmafmafmafnafoafpafqafqafqafqafraaaacqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacqadGafsafsafsafsafsaaaaeKaaaafsafsafsafsafsabiacqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaKaaaaaaaaaaaaaczaczaczaczahbabDaigaihaiiaijaikahKailaimainaioaipaiqairaisaitaiuaivahSaiwahSaixaiyaizahwaiAaiBahwaiCaiDaiEaiFaiGaiHaiIaiJaiKaiLaiMaiNaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacqabiaggaggaggaggaggaaaafoaaaaggaggaggaggaggabiacqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacqaaaaaaaaaabiaaaaaaaaaaeKaaaaaaaaaabiaaaaaaaaaacqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiabiabiabiabiabDaikaiOaiPaiQaikahKaiRaiSaiTaiUaipaiqahNaiVaiWaiXaiYaiZajaajbajcajdajeajfajgajhajiajiajhajjajkajlajmajnajoacLajpajqaiNaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacqaaaaaaaaaabiaaaaaaaaaafoaaaaaaaaaabiaaaaaaaaaacqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacqabiaeiaeiaeiaeiaeiaaaaeKaaaaeiaeiaeiaeiaeiabiacqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabDaikaiOajraiQajsahKajtajuaiTajvaipaiqairajwajxajyajzajAajBajCajDajEajFajGajHajIajJajKajLajMajNajOajPajQajRajSajTajUajVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacqabiaeFaeFaeFaeFaeFaaaafoaaaaeFaeFaeFaeFaeFabiacqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacqaaaaeHaeIaeIaeIaeIaeJaeKaeLaeMaeMaeMaeMaeNaaaacqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiaaaabiaaaaaaabDajWajXajXajYajZahKakaakbakcakdaipaiqahNakeakfakgakhakiakjakkahNahNacKaklakmacKacKacLacLacLacLacLacLacLacLacLaknakoajVabiabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacqaaaaflafmafmafmafmafnafoafpafqafqafqafqafraaaacqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacyakpafsafsafsafsafsaaaaeKaaaafsafsafsafsafsabiacqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiakqakqakrakrabDabDadradraeSaksahKahKahKahKahKaktakuakvakwakvakvakvakvakvakvakxakyakzakAakBakCakDakEakFakGakHakIakJakKakLakMaknakoajVabiabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacqabiaggaggaggaggaggaaaafoaaaaggaggaggaggaggakpacyaaaaaaaaaaaaaaaaaaaaaaaaabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacqaaaaaaabiaaaabiaaaaaaakNaaaaaaabiaaaabiaaaaaaacqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiakqakOakPakQakRakSakTakUakVakWakXakYakZalaalbalcaldalealfalealealealealealealgalealealhalfalialjalkallalmalnaloalpalqalrakMaknakoaiNabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacqaaaaaaabiaaaabiaaaaaaafoaaaaaaabiaaaabiaaaaaaacqaaaaaaaaaaaaaaaaaaaaaaaaabiaaaaaaaaaaaaaaaaaaaaaaaKaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacqacqacqabiabiabiabialsaltalsabiabiabiabiacqacqacqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalualvalvalvalwaaaabialxalyalzalAalBalCalDalEalFalGalHalIalJalKalLalIalMalNalLalIalJalOalPalPalPalQalRalSalTalUalValWalXalYalXalXalXalZamaamaakMaknakoajVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacqacqacqabiabiabiabiabiafoabiabiabiabiabiacqacqacqabiaaaaaaaaaaaaaaaaaaaaaabiaaaaaaabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiaaaabiaaaaaaabiaaaalsambalsaaaaaaabiaaaaaaabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamcamdameamfamcakrakramgamhamiamjamkakDahKamlahKahKammamnamoampamqamramoampamqamsamtampamuamvampamwamxampamyamzamAakDamBamCamaamDamaamEamFamaakMaknakoajVabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiabiaaaaaaabiaaaaaaamGaaaaaaabiaaaaaaabiaaaabiabiabiaaaaaaaaaaaaaaaaaaabiaaaaaaabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaKaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiaaaabiaaaaaaabialsalsamHalsalsaaaabiaaaaaaabiaaaaaaaaaaaaaaaaaaaaaaaKamIamIamIamIamIaaaamJamKamLamMamNamOamPamOamhamQamRamSakDamTakvamUahKamVamWamXahKamYamWamXahKamYamZamXahKanaanbancandakCahKamWaneanfakDanganhanianjaniankanlamaakMaknakoajVabiaaaaaaaaaaaaaaaaaaaaaaaKaaaaaaaaaaaaaaaaaaaaaabiabiaaaaaaaaaabiaaaaaaanmaaaaaaabiaaaaaaabiaaaaaaaaaabiabiaaaaaaaaaaaaaaaannanoannabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiaaaabiaaaaaaabianpanqanransanpantantantantantantantantantaaaaaaaaaaaaamIanuanvanwamIaaaamcanxanyanzamcakrakrakranAanBanCanDakDanEanFanGahKanHamWanIahKanJamWanKahKanLamWanMahKanNanOanPandanQahKanRanSanTakDanUanVanUanWanUanXanUanUakMaknakoaiNaiNabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiabiaaaaaaaaaaaaabiaaaanYanZanYaaaabiaaaaaaabiaaaaaaaaaaaaabiabiaaaaaaaaaaaaannaoaannabiaaaabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaKaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaanpaobaocaodanpaoeaoeantaofaogaohantaoiantaaaaaaaaaabiantaojaogaokantaaaamcaolaolaomamcaaaaaaaonakqakraooaopakDaoqaoraosakDaotaouaouaovaouaouaouaovaouaouaouaovaowaoxaoyaozaoAakDakDakDakDakDaoBaoCaoBakLaoBaoDaoBakLakMaoEaoFaoGaiNaiNaiNabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiabiaaaaaaaaaaaaaaaabiaaaanYaoHanYaaaabiabiabiabiaaaabiaaaaaaaaaabiabiaaaaaaaaaannaoIannabiaaaabiaaaabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaanpaoJaoKaoLanpaoMaoNaoOaoPaogaoQantantantamIantamIamIantaoRaoSaoRantaaaamJaolaolaoTamcakrakrakraoUaoVaoWaoXalxakDakDakDakDaoYaoYaoYaoZaoYaoYaoYapaaoYaoYaoYaoZaoYaoYaoYapbapbapcapdapdapdapeaoBaoCaoBakLaoBaoDaoBakLakMaknapfapgaphapiaphabqaaaaaaaaaaaaaaaaaaaaaaaaaaaabiabiaaaaaaaaaaaaaaaaaaabianYanYanZanYanYabiaaaaaaabiaaaabiaaaaaaaaaaaaabiabiaaaaaaannaoIannabiabiabiabiabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiaaaaaaaaaaaaaaaaaaanpanpapjapkanpaplaogantaogaogaogaoOaogaogapmaoganvaogaogaogaogapnamIaaaamcapoaolaolappapqamPapqamhamQamRamQaprapbapbapbapsapbapbaptapbapbapbapbapbapbapbapuapbapbapbapvapbapbapbapbapbapbapwakLapxapyapzapAapBapyakLapCapDapEapFapFapGaiNabqaaaaaaaaaaaaaaaaaaaaaaaaabiabiaaaaaaaaaaaaaaaaaaaaaabiapHapIapJapKapHabiaaaaaaabiaaaabiaaaabiaaaaaaaaaabiannannannaoIannannannannannannaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiaaaaaaaaaaaaaaaaaaaaaabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaantantantantantabiabiantapLapMapNapOaoNantantamIamIantantantantamIantamIamIantapPaogapQantaaaamcapRapRapRamcakrakrapSapTapUapVapWakqapXapXapXapXapXapYapZapXapXapXapXapXapXapXaqaaqbaqbaqbaqcaqdaqbaqeaqfaqgaqhapeaqiaqjakMakMakMakMakMakMakMaknaqkaiNaqlaqmaiNaaaaaaaaaaaaaaaaaaaaaaaaabiabiaaaaaaaaaaaaaaaaaaaaaaaaabiapHaqnaqoaqpapHabiaaaaaaabiaaaabiaaaabiannanoannanoannaqqaoIaoIaoIaoIaoIaoIaqrannabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiaaaaqsaaaaaaaaaaqtaaaabiaaaaaaaaaaaaaaaaaaaaaantantantantaquaqvaqwantaaaaaaantaogapMaplaogaqxantaqyaqyaqzaqyaqyaqzaqzacfacfaqAaqAantaqBaogaqCantaaaaqDaqEaqEaqEaqFaaaabialxakqaqGakqaqHaqIaqIaqIaqJaqIaqIaqIaqKaqLaqLaqLaqMaqLaqLaqNaqOaqPaqQapFaqRapFapFapFapFaqSapFapFapFapFapFaqTaqUaqVaqWaqXaqXaqYaqZaraarbarcaiNaaaaaaaaaaaaaaaaaaaaaaaaabiabiaaaaaaaaaaaaabqabqabqaaaabiapHardarearfapHargargargargarganoanoanoannarhaoIaqrannannaoIannannannannariannannabiabiabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiarjarkarlaaaarmarnaroabiaaaabqabqabqaaaaaaabiantarparqarraogarsaogantamIamIantartapMaplartantantantamIamIamIantantacfaruaqzaqzacfantantaoOantantaaaaaaaaaaaaaaaaaaaaaabiakqarvamPakqarwaqIarxaryarzarAarzaqIarBaqLarCarDarEarFaqLaoYapbarGarHarIarJarJarJarJarJarKarLarJarJarJarJarJarMarNarOarParQarRarSaiNarTarUaiNabiarVarWarWarXarWarWarYabiabiaaaaaaaaaabianoarZanoaaaargapHapHasaasbapHascaoIaoIaoIannasdaoIaseannasfaoIaoIasgannaoIannashasiannaoIasjannaaaaaaaaaaaaaaaaaaaaaaaaaaKaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiaskaslaskaaaasmasnasmabiabiamIasoamIaaaaaaabiantaspasqapOasrassastantaqCaogasuaogapMasvaogaogaogaogaogaogaogaogantantantaqzacfaqzacfaswasxaswaaaaaaaaaaaaaaaaaaaaaaaaabiakqasyaszakqasAaqIasBasCasDarzarzaqIarBaqLasEarEasFasGasHaoYapbapdarHaknasIasIasIasIasIasJasKasIasIasIasIasIasIasIasIasLasMaiNasNasLasLasLasLasLasOasPasPasPasPasPasOasLabiaaaaaaaaaabiasQaoIanoaaaargasRasSasTasUaoIaoIaoIannaoIannasVaoIaoIannaoIasWasXasYariaoIannasZataannaoIatbannaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaatcaskatdaskatcasmateasmatcabiatfaogamIaaaaaaantantantantantaoOatgathathatiatjatkatjatlatmatnatoantaogantantantaogantatpantacfaqzaqyaqzaswasxaswaaaaaaaaaaaaaaaatqatqatqatqatqatqatqatqatraqIatsattatuarzatvaqIarBatwatxatyatzatAasHaoYapbatBarHaknasIatCatDatEatFatGatHasIatIatJatKasIatLatJatMasLatNatOatPatQatRatSatTasLasOasPasPasPasPasPasOasLabiabiabiabianoanoarZanoanoargatUaoIatVaoIaqqaoIannannatWannannatXannannasYatYatZaoIannaoIauaauaauaauaauaauaauaauaauaaubaubaubaubacfaubaubaqzaqzaqyaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaucaudaueaufaucaugauhauiaucantamIasoamIamIamIantaujaukaukaukaukaukaukaulaumaunantantantantaogantantaogauoantatnaogantantantantaqyaqyaqyaswaupaswaaaaaaaaaabiabiatqauqauratqausautauuatqatraqIarAauvarAauwarzaqIauxauyauzarEauAarEasHaoYapbauBarHaknasIauCauDauEauFauGauHasIauIauJauKasIauLauMauNasLauOauPauQauQauQauQauRauSauTasPasPasPasPasPasOasLasLasLaaaaaaanoaoIaoIaoIascargauUasYatVaoIauVauWauXariaoIaoIaoIaoIauYaoIaoIatYauZaoIavaaoIauaavbavcavdauaaveavfavgauaaqzaqyaqyaqyaqyaqyaqyaqyaqyaqyaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaucaucavhaucaucaucavhaucaucaviavjavkavlavlavmavnavoavpavqavqavqavqavqavqavravsavtacfavuantaogavvartatnavwantavxaogaogaogavyamIaqyaqyaqzaswasxaswaaaaaaaaaatqatqatqasxasxatqasxasxasxatqavzaqIarAavAavBavCarAaqIarBavDaqLavEavFavGaqLavHapbapdarHaknasIasIasIasIasIavIavJasIasIavKavLasIasIavMavLasLavNavOavPavQavQavRavSavTavUasPasPasPasPasPavVavWavXavYaaaaaaanoaoIaoIavZaoIargawaaoIawbawcawcawcawcawdawcaweaoIaoIaoIaoIaoIaoIaoIaoIannauWauaawfawgawgauaawhawiawjauaaqyaqyaqyaqyaqyaqyaqyaqyaqyaqyaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaucawkawlawmaucawnawlawmaucastawoawpaukaukaukawqawrawsapPawtawuawvawwantawxavsacfawyavtamIaogauoantantantantantantantawzavyamIaqzaqyaqzaswasxaswabqabqabqawAawBawAasxasxatqatqawCatqatqavzaqIaqIawDaqIawEaqIaqIawFawGaqLaqLaqLaqLaqLawHapbawIarHaknasIatCatDawJatFawKawLawMawNawOawPawQawRawSawTawUawVavOawWawXawXawYawZavTavYasPasPasPasPasPavYaxaaxbavYabiabiannaoIaoIannannargargargargargargargargargannaxcaxdannannannannannannannannaoIaxeauaawgawgaxfaxgawfaxhauaaqyaqyaqyaqyaqyaqyaqyaqyaqyaqyaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaKaaaaaaaaaaaaabiatcaucavhaxiatcaucaxjaxiatcantaxkavsantantantantaxlawsaogaxmaxnaogaogantawxavsaxoaqzaxoantaogaxpantaxqaxrantavxastaxsaxtaxtaxtaxuaxuaxuaxvaxwaxxaxuaxuaxuaxvaxxaxvaxvaxwaxvaxyaxwaxzaxAaxBaxCaxCaxCaxDaxEaxCaxCaxFaxGaxCaxCaxCaxCaxHaxIaxJaxJaxKaxLasIauCauEauEaxMauGaxNaxOaxPaxQaxRaxSaxTaxUaxVaxWaxXaxYawWaxZawXawYawZayaavYasPasPasPasPasPavYaybaxbasLaaaaaaannaycasfaoIaydannayeaqrayfaygaqqannawaaqqannayhaoIannayiaoIannayjaykaylaymaymaymaynayoaypayqayraysaytauaaubaubacfacfaubaubaubaubaqzaqzaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaayuayvayvayvaywayvayvayxayyayzayAayBayCayCayDantayEawsayFayGayHaogayIantawxayJaxtaxtaxtaxtayKaxtaunaogayHayLaogaogayMavjayNayOayPayPayPayQayPayRayPayPaySayTayUayVayVayVayVayVayVayWayXayYayZayZayZayZazaayZayZazaayZazbazbazbazbazbazcazdazeazfazgasIasIasIasIasIavIazhaziazjazkazlazmaznazoazpazqazrazsaztazuazuazvawZazwavUasPasPasPasPasPazxazyazzasLaaaaaaannaoIaoIaoIaoIaoIaoIazAawcawcawcawcawcawcawcazBaoIaoIaoIaoIavaaoIaoIazCazDazEazFazGazHazIawgawgawgazJauaaqzaqyaqyaqyaqyaqyaqyaqyaqyaqyaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaayuazKazLazKazMazLazLazNazKazLazOazPazQazQazRantayEawsazSaogaogazTazUantazVazWazXazXazXazXazXazYavsazZaogantaviaviavsaAaantaAbaAcaAdaAdaAeaAdaAfaAdaAdaAgaAhaAiaAjaAjaAjaAjaAjaAjaAjaAkaAlaAmaAnaAoaApaAqaAraAsaAtaAuaAvaAwaAxaAyaAzaAAapbaABaiNapgasIatCatDaACatFaADaAEaziaziaziazjaAFaAGaAHaAIawUaAJaAKaALaAMaANaAOaAPaAQaARasPasPasPasPasPaASasLasLasLannannannaqqannannariannannatVannannaATannannariannatVaycannannariannaoIaycazCaAUatYauaaAVaAWaAXaAYaAZaAWaBaauaaqzaqyaqyaqyaqyaqyaqyaqyaqyaqyaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaucayuaBbayuaBcazLazLaBdayuaBbayuaBeaBfazMaBgantayEawsantantantantaBhaBhaBiaBjaBhaBhaBhaBhaBhawxayJaxtaxtaxtaxtaxtaBkaAaaqCaAbaaaabiaaaaBlaaaaBmaaaabiaaaaAhaAiaAjaBnaBoaBpaBqaBraAjaAkaBsaBtaBuaBuaBvaBwaBxaBxaBxaByaBzaBzaBAaBBaAzaBCapbaBDaiNapgasIauCauEauEaBEauGaBFaBGaBHaBIaBJaBKaBLaBLaBMaBLasLaBNaBOaBPaBQaBRaBSasLaASasPasPasPasPasPaASannatbaoIaBTaBUannannannatbaoIannatbatVannaBVaoIannaBWaoIannaBXaBYannaBZaoIannariariazCaCaariauaaCbaAWaCcaCdaCcaAWaCeauaaqzaqzaqzaqyaqyaqyaqyaqyaqyaqyaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqabiabiabiabiaCfatcaCgawlayuaChaCiaCjaCkayuawlaCgayuatcaClaCmantaCnaCoaCpaCpaCqaCraBhaCsaCtaCuaCvaCwaCxaCsaBhaCyaCzaCAavkavkavkavkavkaCBaviaAbabiaCCaCCaCDaCCaCEaCCaCCabiaAhaAiaAjaCFaCGaCHaCIaCFaAjaCJaCKaCLaCMaCNaCOaCPaCQaCRaCSaCTaCUaAxaAxaAxaCVaBCapbaCWaiNapgasIasIasIasIasIaCXavJaBLaBLaBLaBLaBLaBLaCYaCZaDaaBLasLasLasLasLaDbaDcasLaASasPasPasPasPasPaASannannaoIaDdaBUannaDeannaoIaoIannaoIatVannaoIaoIannaoIaoIannatVauWannaoIaoIannaDfaoIazCaAUasYauaauaauaauaauaauaauaauaauaaubaubaubaubaubaqzaqyaqyaqyaqyaaaaaaaaaaaaaaKaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaayuaBbayuayuayuayuayuayuaBbayuaaaatcaDgaBgaDhaDiaDjaDhaDhaDhaDkaBhaCsaDlaDmaDnaDoaDpaCsaBhantaDqaDraDraDraDraDraDraDsaDraDtaaaaCCaDuaDvaDwaDxaDyaCCaaaaAhaAiaAjaCFaDzaDAaDBaCFaAjasxaDCaAmaDDaDEaDFaDGaDHaCUaDIaDJaAxaAxaDKaAxaCVaBCapbaBDaiNapgasIatCatDaDLatFaADavJaBLaDMaDNaDOaDOaBLaCYaDPaDaaBLaDQaDRaDSaDTaDUaDcabiaDVaDWaDWaDWaDWaDWaDXaaaannaoIaDYaDZannannannannannannaEaaEbannannannannannannaEcaEdaEeaEfaEfaEfaEgaEhaEiaEjaEkaElaEmaEnaEoaEfaEpaEqaEraEsaEsaEsabiabiabiabiabiabiabiabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaKaaaaaaaaaaaaaaaaEtaEuaEvaEuaEwaEwaEwaEwaEuaEvaExaEyatcaBcaEzaDhaEAaEBaECaEDaEEaEFaBhaCsaEGaEHaEIaEHaEHaCsaBhaEJaEKaELaEMaENaEOaEPaEQaERaESaDtabiaCCaETaEUaEVaEWaEXaCCabiaAhaAiaAjaEYaEZaFaaFbaFcaAjasxaFdaAmaFeaFfaFgaAxaFhaFiaFjaFkaFlaCVaAzaFmaAzaBCapbaBDaiNapgasIauCauDauEaFnauGaFoaFpaFqaFraFsaFsaFtaFuaFvaFwaBLaFxaFyaFzaFAaFBaDcaaaabiaaaabiaaaabiaaaabiaaaannaycaFCaFDaFEaFFannauVaoIaycatVaoIannaaaannaBTaFDaFDaFGaFHaFIaFIaFIaFIaFIaFJaFKaFLaFMaFNaFNaFNaFOaFPaFQaFRaFSaFTaFUaFVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaEtaEuaEuaFWaFXaFYaFZaGaaGbaGcaGdaGeaFYaGfaGgayuaBcaGhaDhaGiaGjaGkaGlaGmaGnaBhaGoaEHaEHaEHaEHaEHaEHaGpaGqaEKaGqaGraGqaGqaGqaGqaERaGqaDtaaaaCCaGsaGtaGtaGuaGvaCCaaaaAhaAiaAjaGwaGxaGyaGzaGAaAjasxaGBaAmaAmaFkaGCaGDaGEaGFaAmaAmaAxaAxaAzaGGaAzaBCapbaBDaiNapgasIasIasIasIasIaGHaGIaGJaGKaGLaGMaGMaGMaGMaGMaGNaBLaGOaGPaGQaDTaDUaDcannannannannannannannannannannannannannaGRannannannannaBTaGSaGTaGUaGVaGUaGWaGXaGYaGZaHaaHbaHbaHbaHbaHcaHdaHeaHcaHcaHcaHcaHcaHcaHcaHfaHgaHhaEsaEsaEsabiabiabiabiabiabiabiabiabiabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaEwaHiaHiaHjaFYaHkaFYaHkaFYaHkaFYaHkaFYaGfaHlayuaBcaHmaDhaHnaHoaHpaHqaHraHsaBhaHtaEHaEHaEHaEHaEHaHuaBhaHvaHwaHxaHyaGqaGqaGqaHzaHAaHBaDtabiaCCaHCaHDaHEaHFaHGaCCabiaAhaHHaAjaHIaHJaGyaHKaHLaAjasxaHMaAzaHNaAxaHOaHPaHQaAxaHRaAzaHSaHTaAzaHPaAzaHUaqOaHVaiNapgapgapgapgapgapCavIavJaBLaHWaHXaBLaHYaBLaHZaBLaIaaBLaIbaIcaIdaIeaIfaIgaIhaIiaIjaIkaIlaImaImaImaImaInaIoaImaImaIpaIqaIraIsaEfaItaIuaIvaIwaIxaIwaIyaIzaHbaIAaIBaHbaICaIDaIEaHcaIFaIGaHcaIHaIIaIJaIKaILaIMaINaIOaIPaIQaIRaISaaaaaaaaaaaaaaaabiaaaaaaaaaaaaaaaaaaaaaaITaIUaIUaIUaIUaIUaIVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIWaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaEwaFYaFYaIXaFYaHkaFYaHkaIYaHkaFYaHkaFYaGfaHlayuaBcaIZaDhaDhaJaaJbaJcaJbaDhaBhaBhaBhaBhaJdaEHaJeaJfaBhaJgaEKaGqaGqaGqaJhaGqaGqaERaJiaDtaaaaCCaCCaJjaJkaJjaCCaCCaaaaAhaAiaAjaJlaJmaJnaJoaJpaAjasxaJqaAzaJraAxaJsaHPaJtaAxaJuaAzaCVaCVaAzaFmaAzaJvaJwaJxaiNapCaiNaiNaiNaiNaiNaJyaJzaBLaJAaJBaBLaJCaBLaJDaBLaJEaBLaJFaJGaJHaDTaJIaJJaJKaJLaJMaJMaJNaJOaJMaJPaJQaJRaJSaJTazEazEazEaJUaJVaJWaJXaJYaoIaJZaJZaJZaKaaKbaHbaKcaKdaKeaKfaKgaKhaHcaKiaKjaHcaKkaKlaKmaKnaILaKoaHfaHgaFSaKpaKqaISaaaaaaaaaaaaaaaabiaaaaaaaaaaaaaaaaaaaITaKraKsaKtaKuaKtaKvaKwaIVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaEwaKxaKxaKyaFYaHkaFYaHkaFYaHkaFYaHkaFYaGfaHlayuaBcazLaKzaKAaKBaKAaKCazLaKDaKEaKFaKGaBhaKHaEHaEHaKIaBhaKJaEKaGqaKKaKLaKMaKNaKOaKPaKQaDtaaaabiaaaaKRaKSaKRaaaabiaaaaAhaAiaAjaKTaKUaKVaHKaKWaAjasxarBaAzaKXaAxaHPaHPaHPaKYaKZaAzaaaaaaaLaaLbaLcaLdaLeaLfaLgaLhaLaaaaaaaaLiaLjaLkaLlaBLaLmaJBaJBaJBaLnaJBaJBaJBaBLaDTaLoaDTaDTaDTaDcaLpaLqaLqaLraLsaLtaLqaLuaLvaLvaLwaLxaLyaLvaLzaJZaJZaLAaKaaJZaJZaJZaLBaLCaKaaKbaHbaLDaLEaLFaLGaLHaLIaHcaLJaLKaLLaLMaLNaLOaLPaLQaKoaHfaHgaFSaIQaLRaISaaaaaaaaaaaaaaaabiaaaaaaaaaaaaaaaaaaaLSaLTaLUaLVaLVaLVaLWaLXaLSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaLYaEuaEuaFWaLZaFYaFYaFYaFYaFYaFYaMaaFYaGfaMbayuaBcazLaMcaMdaMeaMdaMfaMdaMdaMdaMgazLaBhaMhaMiaMhaBhaBhaMjaMkaMjaDraDraDraDraMjaMlaMmaDtaMnaMoaMoaMpaMqaMraMoaMoaMsaAhaMtaAjaMuaAjaMvaMwaMxaAjatqaqKaAzaAzaAzaCVaGDaCVaAzaAzaAzaLaaLaaLaaMyaLeaLeaLeaLeaLeaMzaLaaLaaLaaLiaMAaLkaMBaBLaBLaBLaBLaBLaBLaBLaBLaBLaBLaMCaMDaMEaMFaMGaMHaMIaMJaLqaMKaLsaMLaMMaMNaLvaMOaMPaLxaMQaLvaMRaMSaMTaMUaMVaMWaMWaMXaMYaMZaKaaKbaHbaNaaNbaNcaNdaLHaNeaHcaNfaNgaNhaNiaNjaNkaNlaHcaHcaNmaHgaFSaKpaKqaISaaaabiabiabiabiabiabiabiaaaaaaaaaaaaaLSaNnaNoaNpaNqaLVaLWaNraLSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaLYaEuaNsaEuaEwaEwaEwaEwaEuaEvaNtaNuatcaNvazLaNwaNxaNyaNzaNAaNBaucaNCaNDazLaNEaNFaNGaNGaNHaNGaNGaNIaNGaNGaNGaNGaNGaNGaNJaNKaNLaNMaNNaNOaNOaNPaNOaNOaNOaNOaNQaNRaNSaNTaNOaNUaNOaNVaJwaNWaNXaNYaNZaOaaLgaLgaLgaLdaLeaLeaObaLeaLeaOcaOdaOeaOfaOgaOhaOiaLeaLeaObaOjaOkaOlaOmaOnaOoaOpaOqaLeaOraLeaDTaOsaOtaMDaMDaMDaOuaOvaOwaOxaOyaLqaOzaOAaMNaOBaOCaLvaODaMPaOEaOFaLvaLvaOGaOHaOIaOJaOKaOLaOMaONaOOaKaaKbaHbaOPaOPaOQaORaOPaOPaHcaOSaOTaHcaOUaNlaNlaNlaHcaOVaOWaOXaFSaEsaEsaEsaOYaOYaOYaOZaOZaOZabiabiaaaaaaaaaaITaPaaPbaPbaPcaPbaPdaPeaPbaPaaIVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaayuaBbayuayuayuayuayuayuaBbayuaaaatcaDgaPfaNwaPgaPhaPiaPjaPkaucaPlaNDaPmaKzaNFaPnaPoaPpaPqaPraPsaNGaNGaNGaNGaNGaNGaNGaNKaNGaNFaPtaNGaNGaPuaPvaPwaPwaPwaPxaPyaPwaPzaPwaPAaPwaPBaPCaPDaPEaPFaLeaLeaLeaLeaLeaLeaLeaLeaObaLeaLeaPGaPHaPIaPJaPKaPLaPMaLeaLeaObaLeaPNaLeaLeaLeaLeaLeaLeaLeaPOaLeaDTaPPaMDaMDaPQaPRaPSaPTaPUaPVaPWaLqaPXaPYaPZaLqaLqaLvaQaaMPaQbaQcaQdaLvaJZaJZaQeaJZaJZaJZaQfaQgaQfaKaaKbaHbaQhaOPaOPaQiaOPaQjaHcaHcaHcaHcaHcaHcaHcaQkaHcaHfaHfaHgaFSaQlaQmaEsaQnaQoaQpaQqaQraOZabiaaaaaaaaaaaaaLSaQsaQsaQsaIUaQtaLVaQuaQvaQwaIUaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqabiabiabiabiaCfatcayuawlayuaQxaQyaQzaQAayuawlayuayuatcaBcazLaNwaQBaQCaPiaPjaPkaucaQDaNDazLaKzaNFaNGaQEaQFaQFaQFaQGaQHaQIaQFaQJaQFaQFaQFaQKaQFaQLaQFaQFaQFaQMaQNaQOaQPaQPaQQaQRaQSaQTaQUaQVaQWaQXaQYaQZaRaaLeaRbaRbaRbaRcaRbaRbaRbaRbaRdaRbaRbaRbaRbaRbaRbaRbaRbaRbaRbaRbaReaRbaRbaRbaRbaRbaRbaRbaRbaLeaLeaLeaDTaRfaRgaRgaRgaRgaRgaRhaMHaRiaOyaLqaLqaRjaLqaLqaRkaLvaRlaRmaRnaQcaRoaLvaJZaRpaRqaRraRsaRraRraRtaRuaKaaKbaHbaRvaRvaRwaRxaRyaRyaRzaHbaRAaRBaRCaEsaRDaIQaREaHfaHfaRFaRGaEsaRHaEsaRIaRJaRKaRLaRMaOZaOZaOZaOZaOZaOZaLSaRNaROaROaRPaLVaLVaLVaLVaQuaLSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiabiaucayuaBbayuaBcazLazLaBdayuaBbayuaRQaRRaRSazLaNwaRTaRUaNzaRVaNBaucaRWaNDazLaRXaRXaRXaRYaRZaRZaRZaRZaRZaRZaSaaSbaRZaScaRZaRZaRZaSdaSeaSfaSeaSgaShaSiaNGaNGaSjaSkaSlaNGaSmaSnaNGaSoaSoaLeaSpaOaaLaaLaaLaaLaaLaaLaaLaaLaaSqaSraSsaStaSsaSsaSsaSuaSsaSvaSsaSwaSqaLaaLaaLaaLaaLaaLaaLaaLaaLdaLeaLeaLqaSxaSyaSzaSzaSzaSzaSzaMHaSAaSBaLqaSCaSDaSEaLvaLvaLvaLvaSFaLxaLvaLvaLvaLvaRraSGaSHaSHaSHaSHaSIaRraKaaKbaHbaSJaOPaRwaRxaOPaOPaSKaHbaSLaSMaSNaEsaHfaKpaSOaSPaSPaSQaSRaSSaSTaEsaSUaSVaSWaSXaSXaSYaSZaSZaTaaSZaSYaTbaROaTcaTcaIUaTdaTeaTfaLVaQuaIUaaaaaaaaaaaaaaaaaaaaaaaKaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaayuaTgazLayvaRSazLazLaThayvazLaTgaRSazLazLazLaTiaTjaTkaTlaTmaTnaTnaToaTpazLaRXaTqaRXaTraRZaTsaTtaTuaTvaTwaTtaTxaTyaTzaTAaTBaTCaSdaTDaTEaTFaSgaTGaSiaSiaTHaSiaSiaSoaSoaTIaTJaSoaSoaSoaTKaLeaOaaLaaaaaaaaaaaaaaaaaaaaaaaSqaTLaTMaTNaTOaTPaTQaTRaTSaTTaTUaTVaSqaaaaaaaaaaaaaaaaaaaaaaLaaLdaLeaTWaTXaTYaSzaTZaSzaSzaSzaSyaMHaSAaUaaUbaSzaUcaUdaLvaUeaUfaUgaUhaUiaUjaUkaUlaLvaRraUmaUnaUnaUnaUnaUoaRraKaaUpaHbaUqaUqaRwaRxaUraUraUsaHbaHbaUtaHbaEsaUuaIQaREaUvaUwaRFaRGaEsaEsaEsaOZaUxaUyaOZaOZaOZaOZaOZaOZaOZaUzaUAaPbaPbaPbaUBaTfaTfaTfaLVaQuaLSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaKaaaaaaaaaaaaaaaaaaayuaUCaUDaUDaUDaUDaUDaUDaUDaUDaUCaUDaUEazLazLaKzazLaUFaUGazLaUHazLaUIaUJaUKaRXaULaRXaTraRZaUMaTtaTtaTtaTtaTtaTxaUNaTtaTtaTtaTCaSdaUOaTEaTEaSgaTGaSiaUPaUQaUQaURaSoaUSaUTaUUaUVaUWaUXaLeaLeaOaaLaaaaaaaaaaaaaaSqaSqaSqaSqaUYaUZaVaaVbaVcaVdaVeaVfaVgaVhaViaSqaSqaSqaSqaaaaaaaaaaaaaLaaLdaLeaLeaVjaSzaVkaVlaVmaVnaVoaVpaVqaSAaUaaVraSzaVsaSzaVtaVuaVvaVwaVxaVyaVzaVAaVuaVBaVCaVDaUnaVEaVFaUnaVGaRraKaaKbaHbaOPaOPaRwaRxaOPaOPaOPaVHaVIaOPaVJaEsaNmaVKaVLaUvaUvaVMaVNaVOaEsaVPaVQaSVaSWaSXaSXaVRaSZaSZaSZaSZaVSaVTaLVaVUaLVaLVaLVaLVaLVaLVaVVaLSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiabiabiabiatcatcayuayuayuayuayuayuayuayuatcatcaucaKzaVWaVXaVXaVYaVXaVXaVXaVXaVZaVXaVXaRXaULaWaaWbaRZaWcaTtaWdaWeaWfaWgaWhaWiaWjaTtaTtaWkaSdaWlaWmaWnaSgaTGaSiaWoaWpaWqaWraSoaWsaWtaUUaWuaWvaUXaLeaLeaOaaLaaLaaLiaWwaSqaSqaWxaWyaWzaWAaWBaWCaWDaWEaWCaWFaWCaWGaWHaWIaWJaWKaWLaSqaSqaWwaLiaLaaLaaLdaLeaLeaLqaWMaSzaWNaSzaWOaSzaSyaSzaSAaUaaWPaWQaSzaWRaLvaVuaVuaWSaWTaWUaWVaWWaVuaWXaWYaWZaUnaXaaXbaUnaXcaXdaKaaKbaHbaXeaXeaRwaRxaXfaOPaOPaXgaOPaXhaXiaEsaXjaXkaXlaUvaUvaXmaXnaHfaEsaXoaSXaSVaSWaSXaRMaOZaOZaOZaOZaOZaOZaLSaTeaLVaXpaXqaLVaXpaXqaLVaXraLSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaXsaXtaXtaXuaXtaXtaXtaXvaXtaXtaXwaaaayuaChazMaXxaVXaXyaXzaXAaXBaXAaXCaXDaXAaVXaULaULaXEaXFaRZaXGaXHaXIaXJaXKaXLaXMaXNaXOaXPaXQaTCaSdaSdaSdaSdaSgaTGaSiaSiaSiaSiaSiaSoaXRaXSaXTaWuaXUaUXaLeaLeaOaaLgaLgaXVaXWaXXaSqaXYaXZaYaaYbaYcaYbaYdaYeaYfaYgaYhaYiaYjaYhaYkaYlaYmaSqaYnaXWaYoaYpaLgaLdaLeaLeaVjaSzaSzaSyaSzaYqaSzaYraSzaSAaUaaVraSzaSzaSzaYsaVuaVuaYtaYuaYvaWTaWWaYwaLvaYxaWZaYyaUnaUnaUnaXcaYzaKaaYAaHbaHbaHbaRwaRxaYBaYCaOPaYDaYEaNcaYFaEsaHfaVKaVLaUvaUvaYGaVNaYHaEsaYIaSXaSVaSWaSXaRMaOZaaaabiabiabiaaaaIUaTeaLVaXpaXqaLVaXpaXqaLVaXraIUaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaXsaYJaYKaYLaYMaYMaYMaYMaYMaYMaYMaXuaYNayuayuaBcazLaVXaYOaYPaYQaXyaYRaYSaXDaXAaVXaYTaYUaYVaRXaRZaYWaYXaYYaYZaZaaZaaZbaZaaZaaZaaZcaZdaRZaZeaZfaZgaZhaZiaZjaZkaZlaZmaZnaZnaZnaZnaZnaZnaZnaZnaLeaLeaLeaLeaLeaZoaZpaZqaZraZsaZtaZuaZvaZwaZxaZyaZzaZAaZBaZCaZDaZEaZFaZuaZGaZHaZIaZJaZKaZLaZMaZNaZOaLeaLeaLqaZPaSyaZQaSyaSzaVkaZRaVmaSAaUaaVraVraZSaZTaLvaVuaVuaVuaZUaVuaVuaWWaZVaLvaRraWZaUnaUnaUnaUnaXcaRraKaaZWaZXaZYaZZbaababbacbacbadaRwaRwaRwaRwbaeaUvaUvaUvaUvaUvbafbagbahbaibajbakbalbamaRLbanaOZabiabiaaaabiabiaIUaTeaLVaXpaXqaLVaXpaXqaLVaXraIUaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaoaYKaYKaYKaYKaYKaYKaYKaYKaYKaYKbapbaqawlbaqazLazLaVXbarbasbatbaubaubavbawbaxaVXbayaULaYVbazbazbazbaAbaBbazbaCbaDbaEbaFbaGbaGbaHbaIaRZbaJbaKbaLbaMbaNbaObaLbaPbaQbaQbaRbaSbaTbaUbaVbaWaZnaLeaLebaXbaYbaZbbabbbbbcaSqbbdbbebbfbbgbbhbbibbibbjbbkbblbbmbbnbbobbpbbfbbqbbdaSqbbcbbbbbrbbsbaYbbtaLeaLeaVjaSzaSzaSyaSzaSzaSzbbuaSzbbvaSzbbwbbxaSzaSzbbybbzbbAaVuaVubbBaVubbCbbDaLvbbEbbFaUnbbGbbGbbHbbFbbIbbJbbKbbLbbLbbMbbNbbOaRwaRwbbPaRwaRwaRwaRwbaebbQbbRbbRbbRbbRbbRbbSbbTbbUbbVbbWbbXbbYaSXbbZaOZaaaabiabiabiaaaaIUaTeaLVaXpaXqaLVaXpaXqaLVaXraIUaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabcabcbbccbccbcdbcdbcdbcdbcdbcdbcdaXuayuayuayuaBcbcebcfbcgbchbcibcibcibcibcjaXyaVXbckbclaYVbazbcmbcnbcobcpbazbcqbcrbcsaRZbctbcubcvbcwaRZbcxbcybczbcAbczbcBbcCbcDaZnbcEbcFbcFbcGbcHbcIbcJaZnaObaObbcKbcLbcLbcLbcLbcLbcLbcMbcNbcObbhbbjbcPbcQbcQbcRbcQbcQbcSbblbbobcTbcUbcVbcTbcTbcTbcTbcTbcTbcWaObaObaLqbcXbcYbcZbdaaSzaSzaSzbdbbdcbddbdebdfbdgaSzaLvaLvaLvbdhbdibdibdiaLvaLvaLvbdjaUnaUnbdkbdlbdmbdnbdlaKabdobdpbdqaHbbdrbdsbdtaYCaOPbduaXgaYCbdvaEsbdwaHfbdxaUvaUvbdxaHfbdyaEsbdzbdAbdBaSWaSXaRMaOZaOZaOZaOZaOZaOZaLSaTeaLVaXpaXqaLVaXpaXqaLVaXraLSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabcaaXtaXtaXuaXtaXtaXtaXvaXtaXtbdCaaaayubdDaRSbdEaVXaXAaYPaXAaXybdFaXAbdGaXAaVXbdHbdIbdJbazbazbazbdKbdLbazbcrbdMbcraRZbctbcubcvbcwaRZbcxbcybdNbdObczbdPbcCbcDaZnbdQbcFbcFbdRbdSbcFbdTbdUaLeaLebaXbcLbdVbdWbdXbdYbdZbeabebbecbedbeebcQbcQbefbegbefbcQbcQbehbeibejbekbelbembenbeobepbeqbcTbbtaLeaLeaLqaLqaLqaLqaLqberaSBberbesaLqaLqaLqaLqaLqaLqaLvbetbetbetbetbetbetbeubetaLvbdlbevbevbdlbdpbdpbdpbdpaKabdobdpbdqaHbaHbaHbbewaHbbewaHbbewaHbaHbaEsaEsbexbexbexbexbexbexaEsaEsbeyaSXbezaSWaSXaSXaVSaSZaSZaSZaSZaVSbeAaLVbeBaLVaLVaLVaLVaLVaLVaVVaLSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiabiabiabiatcatcayuayuayuayuayuayuayuayuatcatcaucazLazLaVXaVXaVYaVXaVXaVXaVXaVZaVXaVXbeCbeDbeEbazbcmbeFbdKbeGbazbeHbeIbeHaRZbctbcubcvbcwaRZbcxbcybczbeJbeKbeLbcCbcDbeMbcIbeNbeObePbeQbcFbdTbeRaLeaLebaXbeSbeTbdZbeUbeVbeVbeWbeXbeYbedbeZbcQbcQbefbfabefbcQbcQbfbbeibfcbfdbfebffbfgbfhbeqbfibcTbbtbfjbfkaJwbflbdpbdpbdpbdpbdpbdpbdpbdpbfmbdpbdpbdpbdpbfnbdpbdpbdpbdpbdpbdpbdpbdpbflbdpbdpbdpbdpbdpbdpbdpbfobfpbfqbfrbdpbfsbdpbdpbdpbdpbdpbdpbdpbdpbdpbfnbftbdpbdpbdpbdpbdpbdpbflbfuaVQaSXbfvbfwbfxbfyaOZaOZaOZaOZaOZaUzaUAaPbaPbbfzaPbbfAaIUbfBaIUaIUbfCaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaayubfDayCayCayCayCayCayCayCayCbfDayCbfEbfFbfFbfGbfHbfIbfJbfJbfJbfKbfLbfMaRXbfNbfObfPbazbazbazbfQbfRbazaRZaRZaRZaRZbctbcubfSbfTaRZbcxbcybczbfUbfVbfWbfXbfYbfZbgabgabgabgbbgcbcIbgdaZnbgeaPNbaXbgfbggbdZbghbgibgjbgkbglbgmbedbgnbefbcQbgobgpbgobcQbefbcSbeibgqbfdbfebffbgrbfhbeqbeqbcTbgsaLeaLeaJwbflbdpbdpbdpbdpbdpbdpbdpbdpbdpbgtbdpbdpbdpbdpbdpbgubbLbbLbbLbbLbgvbdpbflbdpbdpbdpbdpbdpbdpbgwbgxbgybgzbgAbgAbgAbgBbgAbgAbgAbgAbgAbgAbgAbgAbgAbgAbgAbgAbgAbgAbgAbgCbgDbgEbgFbgFbgGaSWbgHaSXbgIaSZaSZbgJaSZbgIbeAbgKbgKbgKbgLaLSaQvaQuaQubgMaIUaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiayuazKazLazKazMazLazLazNazKazLazKazMazLazLazLbgNbgObgNbgNbgNbgNbgPbgQaRXaRXaRXbgRaYVbazbcmbgSbgTbeGbazbgUbgVbgUaRZaRZaRZbgWbgXaRZbcxbcybgYbgZbhabhbbcCaRXaZnaZnaZnaZnaZnaZnaZnbhcaZnbhdaLebaXbgfbhebdZbghbhfbhgbgkbglbdZbedbhhbhibcQbhjbhkbhlbcQbhmbhnbeibhobhpbhqbhrbhsbhtbeqbhubcTbhvbhwbhxaJwbflbdpbdpbhybdpbhzbhAbhAbhAbhAbhBbhAbhAbhCbdpbdpbdpbdpbdpbhDbhEbhFbhGbflbdpbdpbdpbdpbdpbhHbhIbhJbhKbhLbdpbdpbdpbdpbdpbhMbhNbdpbdpbdpbdpbdpbdpbdpbdpbdpbdpbdpbdpbdpbflbhObhPbhQbhRaSWaSXaRMaOZaOZaOZaOZaOZaOZaLSbgKbgKbgKbgKaLSaQuaQuaQubhSaLSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaucayubhTayuaBcazLazLaBdayubhUayuaBebhVbhWbhWbgNbhXbhYbhZbiabibbgPbicbidbiebiebifbigbazbazbazbihbiibazaRXaRXaRXaRXbijbikbilbimbikbinbcybiobipbczbcBbcCbiqbcCbirbisbisbisbisbitbiubivbiwaLebaXbcLbdZbixbiybizbiAbiBbglbiCbiDbbibiEbiFbiGbiGbiGbiHbiIbbnbiJbiKbiLbiMbiNbiObiPbeqbiQbcTbbtaLeaLebiRbiRbiRbiRbiRbiRbiRbiSbiTbiTbiTbiUbiVbiSbiWbiWbiWbiWbiWbiXbiXbiXbiYbiXbiXbiXbiXbiZbdpbhMbjabjbbjcbjdbdpbdpbdpbjebjebjfbjfbjfbjfbjfbjgbjhbjhbjhbjibjhbjjbjkbjhbjhbjlbjmbjmbjmbjmbjnbjobjpbjqaOZabiaaaaaaaaaaaaaLSbjrbjrbjsbjsaLSaQvaQuaQubgMaIUaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiaCfatcaCgawlayuaChaCibjtbjuayuawlaCgayuatcaCfaucbgNbjvbjwbjwbjwbjxbjybjzbjAbikbikbjBbjCbazbcmbjDbihbjEbazbjFbjFaULbjGbjHbjIbjJbjKbjKbjLbjMbjNbcAbjObjPbcCaULbjQbjRbivbjSbjTbjUbjVbjWbjXbjYbjZbkabcLbkbbcObkcbkdbkebkfbglbkgbcLabibkhbkibkibkibkibkibkjabibcTbkkbklbkmbknbeqbkobeqbkpbcTbbtaLebkqbiRbkrbksbktbkubkvbiRbkwbkxbkxbkxbkybkzbkzbkAbkBbkCbkDbiWbkEbkFbkGbkHbkFbkIbkJbiXbjbbkKbjbbjbbjbbkLbjdbkMbkNbkMbkObkObjfbkPbkQbkRbjfbkSbkTbkSbjfbkUbkVbkUbjmbkWbkXbkWbjmbkYbkZbjmblablbaOZaOZaOZabiabiaaaaaaaaablcaPcbldbldbldbldbldbldbldaPcbleaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaKaaaaaaaaaabiabiabiabiayubhTayuayuayuayuayuayubhUayuabiabiabiaaabgNblfbgNblgbjwblhblibgNaULaWabljblkbllblmblmblmblmblmblmblnbloblpblqblrbcCbcCbcCbcCbcCbcCbcCblsbltbcCbcCbcCblublvblwblxblyblzblyblAblBbiwaLeblCbcLblDbcObcObcObcObkfbglblEbcLabibkhbkiblFblGblHbkibkjabibcTblIbfdblJblKbeqbiPbeqbeqbcTbbtaLeaLebiRblLblMblNblNblOblPbkzblQbkzbkzbkybkzbkzbkAblRblSblTbiWblUbkFblUblVblUblWbkFbiXblXblXblYblZbjbbmabjdbmbbmcbmdbmebmebjfbmfbmgbmhbmibmjbmkbmlbjfbmmbmnbmobjmbmpbmqbmpbmrbmsbmsbjmbmtblbaaaabiaaaabiaaaaaaaaaabiaaablcbmubmubmubmubmubmubmubleaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabmvbmwaaaaaaaaaabiaaaaaabmvbmxbmybmybmybmybmybmybmzbmwaaaabiabiaaabgNbmAbmBbmCbmDbmDbmEbmFbmGbmHaRXbmIbmJbmKbmKbmKbmLbmLbmLbmLbmLbmLbmMbmNbcCbmObmPbmQbmRbmSbmTbmUbmVbcCbmWbmXbmYbivbivbmZbnabnbbncbndbnebnfbngbaXbnhbnibnjbnkbnlbcObnmbglbcLbcLabibkhbkiblGbkiblGbkibkjabibcTbcTbnnbfebnobeqbnpbnqbnrbcTbbtaLeaLebiRbnsblMbntbnubnvbnwbkzbnxbnybnzbnAbnBbnCbkAbnDbnEbnFbiWblUbkFblUblVblUblWbnGbiXbnHbnIbnJbnKbjbbkLbjdbnLbnMbnMbnNbnObnPbnQbnRbnSbmhbmhbmhbnTbjfbnUbnVbnWbjmbnXbmsbmsbnYbnZboabjmbmtblbbobbobbobbobabiabiabiabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabocbodbmwaaaaaaabiabibmvboebofbofbogbohbofbofbofbofboiaaaabiabiaaabgNbojbgNbokbolbolbombgNbonbonaRXboobopboobooboobopbooaRXaRXbcCbcCbltboqbcCbmSbmSbmSbmSbmSbmSborbosbotboubovbowboxboybozboyboAboBboCblBbiwboDboEboFboGboHboIboJbcObkfbglbcLabiabiboKboLblHboMblFboNboOabiabibcTboPboQbcTbcTbcTbcTboRbcTboSaLeaLebiRboTboUboVblNblOboWbkzboXboYboZbpabpbbpcbiWbpdbpebpfbiWblUbkFblUblVblUblWbkFbiXbjbbjbbjbbjbbjbbkLbjdbpgbphbpibpjbpkbplbpmbpnbpobpobppbmhbpqbjfbprbnVbpsbjmbptbpubpvbpwbpxbpybjmbmtbpzbpAbpBbpCbpBaaaaaaabiabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabpDbpEbpFbmwaaaabibmvbpGboebofbofbofbofbofbofbofbpHbpIbmybmwabiaaabgNbpJbmBbpKbolbpLbpMbgNaaaaaaaaabpNbpObpObpObpObpObpPaaaaaabpQbpRbpSbpTbpUbpVbmSbmSbmSbmSbmSbmSbpWbpXbpYbnabpZbqabqbbqcblBbqdbivbivbivbqebqfaObbnhbqgbqhbqhbqhbqhbqibqjbqkabiaaabkhbqlbkibkibkibqmbkjaaaabibqnbqobqpbqqbqrbqsbqnbqtbqnbquaLebqvbiRbqwbqxbqybqzbqAbiRbqBboXboYbqCbqDbkzbqEbiWbqFbqGbqHbiWbqIbqJbqKbqLbqMbqNbqMbqObqPbqQbqPbqPbqPbqRbjdbqSbmcbqTbqUbqVbqWbqXbqYbqZbqZbrabrbbrcbjfbrdbrebrfbjmbrgbrhbribrjbmsbrkbjmbrlbrmbrnbrobrobrobrobrobrobrpaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabpDbpEbrqbpFbmwbmvbpGbrrboibrsbofbofbofbofbofbofbofbrtbrubrvabiaaabgNbrwbmBbmBbmBbgNbgNbgNaaaaaaaaabrxbrybrybrybrybrybrxaaaaaabpQbrzbrAbrBbrCbrCbrCbrCbrCbrCbrCbrCbrCbrDbrEbrFbrGbrHbrIblBbrJblybrKblybrLbiwbrMbrNbnhbnhbqkbrObrPbrQbrRbrSbqkaaaaaabkhbrTbrUbrVbrUbrWbkjaaaaaabqnbrXbrYbrZbqnbsabqnbqtbqnbquaLebsbbiRbscbqxbsdblNbsebiRbsfbsgbshbsibsjbkzbskbiWbkAbslbsmbiWbiXbsnbiXbsobspbsqbsrbsrbsrbsrbsrbsrbsrbssbstbsubphbpibsvbswbsxbsybszbszbszbppbmhbsAbsBbsCbsDbsEbsFbsGbsHbsIbsJbsKbsLbjmbsMbsNbsObsPbsPbsPbsPbsPbsQblbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabpDbpEbrqbrqbpIbodbrrbofboibrsbofbofbofbofbofbsRbpGbmybodbsSbmwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabrxbrybrybrybrybrybrxbsTbpQbpQbsUbrAbmUbmSbsVbsVbsVbsVbmSbmSbmSbmSbsWbsXbsYbsZbtabtbbtcbtdbteblyblybrLbtfbtgbthbtibtjbtkbtlbtmbtnbtobtpbqkabiaaabkhbtqbtrbtrbtrbtsbkjaaaabibqnbttbtubtvbqnbtwbqnbqtbqnbtxaLebsbbiRbtybqxbtzbtAbtBbiRbtCboXbkybsibtDbtEbsfbsfbtFbtGbtHbtIbtJbtKbtLbtMbtNbtObtPbtQbtRbtSbtTbtUbtVbkLbtWbtXbtYbtZbuabubbjfbucbszbszbudbppbmhbuebufbugbuhbuibsFbujbukbulbumbmsbunbuobupbjmbuqbuqbuqbuqbuqbuqbmtblbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaburbmybusbrqbutbofbuubofbpIbuvbuwbofbofbofbsRbpGbrrbuxbuxbuyboeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabrxbrybrybrybrybrybuzbuAbuBbuAbuCbuDbuEbuFbuGbmSbmSbmSbmSbmSbuHbcCbcCbuIblybuJbuKbuLblBbuMblybuNblybuObqubrMbuPbuQbuRbuSbuTbuUbuVbtobuWbqkaaaaaabkhbuXbuYbuZbuYbvabkjaaaaaabvbbvcbvdbvbbvbbvbbvbbvebvbbvfaObbvgbiRbiRbvhbvibvjbiRbiRbvkbvlbvmbkzbkzbkzbkzbkzbvnbvobvpbvpbvpbvqbvpbvrbtNbtObvsbvtbvubvvbvwbvxbtVbvybvzbvAbvBbvBbvCbvDbjfbvEbmhbmhbvFbppbmhbvGbvHbvIbnVbvJbsFbsFbvKbvLbvMbvKbsFbjmbjmbjmbvNbvObvPbvQbvRbuqbvSblbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabmvbpGbmyboebofbofbofbuybodbmybmybmzbsSbpGbrrbofbvTbvTbvUboiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabrxbrybrybrybrybrybvVbvWbvXbvWbvYbmSbmUbmSbsVbsVbvZbsVbmSbmSbwabwbbcCbwcblybuJbuKblybwdblyblybweblybuObqubwfaLebuQbwgbwhbwibwjbwjbwkbwlbqkabiabibwmbwnbwobwpbwqbwrbwsabiabibwtbwubwvbwwbwxbwybwzbwAbvbbwBaLebwCbwDbwEbwFbwGbwHbwIbwJbwKbwLbwMbwNbwNbwNbwNbwNbwObwPbwNbwNbwNbwQbnCbwRbwSbtObwTbwUbwVbwVbwWbtUbtVbkLbjdbwXbwYbwZbxabxabjfbxbbxcbxdbsBbxebmhbxfbsBbxgbxhbxibxjbxkbxlbxmbxnbxobxpbxqbxrbxsbxtbxubxubxubxvbxwbxxblbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabmvbsSbodbrrbofboibofbofbofbofbofbofbofbofbuyboebofbofbofbofbofbxyaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabrxbrybrybrybrybxzbrxbsTbpQbpQbxAbmSbmUbmSbmSbmSbmSbmSbmSbmSbwabxBbcCbxCbxDbozbxEboybxFboybxGblybxHbrLbxIbwfaLebuQbuRbqkbxJbxKbxLbxMbxNbqkaaaaaaabibkhbxObxPbxObkjabiaaaaaabwtbxQbxRbxSbxTbxUbxUbxVbxWbxXbxYaPDbxZbyabybbycbydbyebyfbyebyebygbyhbyibyjbyjbyjbykbkzbkzbkzbylbymbymbynbtObtObtObyobypbyqbvwbtUbtVbjcbjdbyrbyrbyrbyrbyrbjfbsBbsBbsBbsBbysbytbysbsBbyubyvbywbyxbyxbyxbyybyzbyAbyBbyCbyDbyEbyFbyGbyHbyIbyJbyKbyLbyMbobbyNbyNbobabiabiabiabiabiabiabiabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabmvbsSbmybmybmybmybmybmybmybsSbmwaaabmvbpGbrrbofbofbofboibofbofbsRbmybmybmzbuvbofbofboibofbofbofbofbofbxyaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabrxbrybrybrybrybrybyObvWbvXbvWbrzbyPborbyQbpVbmSbyPbmSbmSbmSbwabyRbcCbySblybuJbyTbuMbyUbyVblyblybyWbrLbxIbwfbaXbuQbyXbqkbyYbyZbzabzbbrSbqkaaaaaaabibzcbzdbtrbzebzfabiaaaaaabwtbzgbzhbzibzjbzkbzlbzmbvbbznaLeaLebsfbsfbzobzpbvnbzqbzrbzsbztbztbzsbzrbzsbzrbzsbzrbzsbzrbiVbiVbymbzubwVbzvbzwbtObyobzxbzybzzbzAbtVbzBbzCbzDbzEbzFbyxbyxbzGbyxbyxbzHbzIbzJbzKbzLbyxbzMbzNbzObzPbzPbzPbzQbzQbzQbzQbzQbzRbzSbzTbzUbzTbzVbzTbuqbzWbzXbzYbzZbAabobabiaaaaaaaaaaaaaaaaaaabiaaaabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabpGbrrbofbofbofbofbofbofbofbuybpGbmybpGbrrbofbofbofbofbAbbofbofboibAcbAdbofboibofbofbxybofbofbofbAebAfbxyaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabrxbrybrybrybrybrybAgbAhbAibAhbAjbAkbAjbAjbAjbAjbAjbAlbAmbmSbwabAnbcCbAobApbAqbArbAsbAtbAubAubAubAtbAtbAvbwfaMzbAwbuRbqkbAxbAybAzbAAbABbqkaaaaaaabibACbADbwpbAEbAFabiaaaaaabwtbAGbAHbAIbAJbzkbzlbzmbvbbAKaLeaLebALbAMbANbzpbAObAPbzrbAQbARbASbATbAUbAVbAWbAXbAWbAYbzrbkzbkzbymbAZbwVbBabBbbBcbBdbBebBfbBfbBgbBhbBibBjbBkbBlbBmbBnbBobBnbBnbBpbBnbBnbBqbBrbBnbBnbBsbBtbBubzPbBvbBwbBxbBybBzbBAbzQbBBbBCbBDbBEbBFbBCbBGbuqbzWblbbBHbBIbBJbobaaaaaaaaaaaaaaaaaaaaaabibBKabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabmzbofbofbofbofbofbofbofbofbofbmzbofbmzbofbofbofbofbofbBLbofbofboibofbofbofboibofbofbBLbofbofbofbBMbBNbxyaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabrxbrybrybrybrybrybrxbsTbpQbpQbpQbcCbpQbpQbpQbBObBObBObBObBPbBQbBQbBObBObBRbBSbBTbBRbAtbBUbBVbBWbBXbAtbxIbwfaOaaLiaLibqkbqkbqkbqkbqkbBYbqkaLaaLaaLabBZbCabxPbCbbCcaLaaLaaLabvbbvbbvbbvbbvbbvbbvbbvbbvbbAKaLebCdbzrbzrbCebCfbzrbzrbzrbCgbARbChbARbCibCjbCkbClbCmbCnbCibkzbkzbymbCobCpbCqbCrbCsbCtbCubCrbCrbCvbCwbCxbCybCzbCzbCzbCzbCAbCzbCzbCzbCBbCBbCCbCDbCEbCEbvIbCFbvJbzPbCGbCHbCIbCJbCKbCLbCMbuqbuqbCNbCNbCNbuqbCObuqbzWblbbCPbBIbCQbobabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabpGbuvbofbofbofbofbofbofbCRbsRbpGbmybpGbuvbofbofbofbofbAbbofbofboibofbCSbofboibofbofbxybofbofbofbAebAebxyaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabCTbCUbrybrybrybCVbCWaaaaaaaaaaaaabiaaaaaaaaaaaabBObCXbCYbCZbDabDbbDcbBQbDdbDebDfbDgbAubDhbDibDjbDkbAtbxIbwfaLeaLeaLebDlaOqaOpaObbDmbDnbDoaZNaZNaZNbDpbDqbDrbDsbDtaLeaLeaLeaLeaOqaLeaObaLeaLeaLebDlaLebAKaLebDubzrbDvbDwbDxbDybDzbzrbDAbARbDBbARbCibCjbCjbDCbDDbDEbCibkzbDFbymbwVbDGbDHbDIbDJbDKbDLbDMbDNbtVbtVbjcbDObCzbDPbDQbDRbDSbDTbDUbCzbDVbDWbDXbDYbDZbCEbvIbCFbEabEbbEcbEdbEebEfbEgbEhbCMbEibEibEibEibEibEibEibuqbzWblbbEjbAabAabobabiabiabiabiabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIWaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabEkbodbmybmybmybmybmybmybmybodbElaaabEkbpGbuvbofbofbofboibofbofboibofbEmbEnboibofbofboibofbofbofbofbofbxyaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabEobEpbEqbEqbEqbEpbEraaaaaaaaaaaaabiaaaaaaaaaaaabBQbEsbEtbEubEvbEwbExbEybEzbEAbEBbECbEDbEEbDjbEFbEGbAtbxIbEHaLeaLeaLeaLeaLeaLebEIaLebwfaLeaLeaLeaLeaLebEJbEKbELaLeaLeaLeaLeaLeaLeaLeaObaLeaLeaLeaLeaPNbAKbEMaLebzrbENbEObEPbEQbDzbzrbERbARbASbESbzrbETbEUbEVbEWbEXbzrbkzbkzbymbymbymbymbymbtVbtVbtVbtVbtVbtVbEYbkLbEZbCzbFabFbbFcbFdbFebFfbCzbFgbFhbFibFjbFkbCEbvIbFlbFmbFnbFobFpbFpbFqbFrbFsbCMbEibEibFtbFubEibEibEibuqbzWblbbCPbBIbFvbobabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabEkbodbsSbuvbFwboibofbofbuybmzbmybmybrrbofbofboibAebofbofbofbofbxyaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabFxbFybFybFybFzaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabBObFAbFBbFCbFDbFEbFFbFGbFHbFIbFJbFHbFKbFLbFMbFNbFObAtbFPbFQboEboEboEbFRboEboEbFSboEbFTaLebFUbFVaLeaOjbFWbFXbFYbFZbGabGbaZNaZNbGcaZNbGdbGeaZNbGfbGgbGhbGiaLeaLebzrbGjbGkbGlbzsbzsbzrbzsbGmbzsbzrbzrbzrbzrbzrbzrbzrbzrbkzbkzbkzbGnbGobzqbGpbGqbGrbGsbGtbGubGqbGvbssbGwbCzbGxbGybGzbGAbGBbGCbCzbGDbGEbGFbGGbGHbCEbvIbGIbGJbzQbGKbGLbGMbGNbGObGPbCMbEibEibEibGQbEibEibEibuqbzWbzXbGRbBIbBJbobaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabEkbpGbmyboebofbofbofbofbofbofbofbofbofboibAebofbofbofbofboiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabBObBObBQbBQbBQbBQbBObBObGSbDebDfbGTbAtbAtbAtbAtbAtbAtbGUbGVaLiaLiaLiaLibGWbGWbGWbGWbGWbGWbGWbGWbGWbGWbGXaJwbGYbGZbGZbGZbGZbGZbHabGZbGZbGZbGZbHbbHcbHbaLjaMAbHdbzrbHebHfbHgbHhbHibzrbHjbARbHkbHlbHmbHnbHobHpbHqbHrbHlbHsbkzbkzbkzbkzbkzbvnbHtbHubHvbHubHwbGqbHxbkLbHybHybHybHybHybHybHybHybHybHzbHzbHzbHzbHzbHzbHAbHBbHCbzQbzQbzQbzQbzQbzQbzQbCMbuqbuqbuqbuqbuqbuqbuqbuqbzWblbbHDbHEbobbobabiabiabiabqabqabqabqabqabqabqabqabiabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabocbmybHFbrqbutbofbofbofbofbofbofbuubofbHGboibAebofbHHbofbsRboeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabHIaaaaaaaaaabiaaaaaabBRbHJbHKbHLbHMbHMbHNbHObHPbHQbHRbHSbGVaaaaaaabiaaabGWbHTbHUbHVbHWbHXbHYbHZbIabGWbIbbIcbIdbGZbIebIfbIgbIhbIibIjbIkbIlbImbInbIobHbbHbbHbbHbbzrbIpbIqbIrbIsbItbIubIvbIwbIxbIybIwbIwbIwbIzbARbIAbIBbICbyjbyjbIDbIEbIFbIGbHtbIHbIIbIJbIKbGqbHxbkLbHybILbILbILbIMbILbILbILbHybINbINbIObINbINbHzbIPbIQbIRbISbITbIUbIVbIWbIXbIYbIZbJabJbbJcbJdbJebJfbJgbJgbJhbJibITbITbobabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiabiabiabiabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabpDbpEbrqbrqbpIbsSbsSbsSbmzbmybmybxybxybxybodbmybuvbuxbsRbpGbElaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalubJjalvbJjalwaaaabiaaabBRbBRbJkbJlbJmbFHbJnbJobJpbJpbJqbJrbJsbJtabibJubJvbJwbJxbJybIabJzbIabJAbIabIabIabGWbJBbJCbJDbGZbIkbJEbJFbJGbJHbJIbJJbGZbGZbJKbJLbJMbJNbJObJPbJQbJRbJSbJTbJUbJVbJWbJXbJYbJZbKabKbbKcbARbARbARbKdbsfbsfbsfbsfbsfbKebKfbzpbHtbKgbKhbHubKibGqbHxbkLbHybILbILbILbILbILbILbILbHybKjbKkbKlbKmbKnbKobKpbKqbIRbKrbKsbKtbKtbKtbKtbKtbKtbKubKvbKwbJdbobbKxbKybKzbKzbKAbKBbKsabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiabibKCbKDbKCabiabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabpDbpEbrqbKEbElbEkbpGboebofbofbofbKFbofbofbofbofbuybsSbpGbElaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamcbKGbKHbKGamcbKIbKIbKIbBRbKJbKKbDebKLbKKbKMbBRbGVbKNbGVbGVbKObKPaaabKQbKRbKSbKTbIabIabKUbIabKVbKWbKXbIabGWbJBbJCbKYbGZbKZbLabLbbLcbLdbLebLfbGZbEYbLgbLhbLibLhbLjbLkbKabLlbLmbLnbARbASbzrbLobLpbLqbzrbLrbARbARbARbARbLsbsfbLtbLubLvbLwbLxbLybLzbLAbLBbHubLCbLDbLEbLFbLGbHybILbILbLHbILbILbILbILbHybLIbLJbLKbLLbLMbLNbLObLPbIRbLQbLRbKtbKtbKtbKtbLSbLTbLTbLTbLTbLUbLVbLWbLXbLYbLZbMabMbbKsabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiabibKDbKCbMcbKCbKDabiabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabpDbpEbKEbElaaaaaabEkbpGbuvbMdbofbofbofbofbofbofbuxbpIbElaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalvaolbMeaolalvbKIbMfbMgbBRbMhbKKbMibKKbMjbKMbBRbMkbMlbMmbGVbKObKPabibKQbMnbMobMpbMqbMrbMqbMqbMsbMtbMubMubMvbMwbMxbMybGZbGZbGZbGZbGZbMzbMAbGZbGZbMBbMCbMDbMEbMFbMGbMHbzrbMIbMJbMKbMLbMMbzrbMNbMObMPbzrbMQbMRbMSbMTbMUbMVbsfbMWbMXbvpbMYbvpbMZbNabNbbNcbNdbNebNfbGqbHxbkLbHybHybNgbILbILbNhbNgbHybHybNibNjbNkbNkbKkbHzbNlbNmbIRbNnbKsbKtbKtbNobNpbNqbKtbKtbNrbNsbNtbNubNvbNwbNxbNybNzbNAbKsabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiabibNBbKDbNCbNDbNEbKDbNBabiabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaburbsSbElaaaaaaaaaaaabEkbodbsSbuvbofbNFbofbofbsRbmybElaaaaaaaaaaaaaaaaaaaaKaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamcaolaolaolbNGbNHbKKbKKbNIbMhbKKbNJbKKbKKbKMbBRbNKbMmbNLbGVbKObKPaaabKQbNMbNNbNObIabIabNPbIabNQbNRbNSbNTbGWbNUbNVbNWbNXbNYbNYbNYbNYbNZbOabNYbNYbObbOcbOdbOebOfbOgbOhbIubIubIubIubIubIubIubIubIubIubOibOibOibOibOibOibOjbOkbsfbsfbsfbsfbOlbOmboXbGqbGqbGqbGqbGqbGqbHxbkLbHybOnbOobOpbOqbOrbOsbOnbOtbNibNjbNkbNkbOubHzbOvbOwbIRbOxbITbOybOzbOAbOBbOCbODbKtbOEbOFbJdbOGbOHbOIbITbITbITbOJbITabiabiabiabiabiabiabiabiabiabiabiabiabiabiabiabiabiabiabiabiabiabibKDbKDbOKbOLbOLbOLbOMbKDbKDabiabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabEkbElaaaaaaaaaaaaaaaaaaaaabEkbodbmybmybmybmybElaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalvbMebMebMealvbKIbONbOObOPbOQbKKbORbOSbOTbOUbBRbGVbGVbGVbGVbKObOVabibOWbJvbOXbJxbOYbIabOZbIabIabIabPabPbbPcbPdbPebPfbPgbPhbPhbPhbPhbPibPhbPjbPkbPlbPmbPnbPobPpbPqbPrbqPbPsbqPbqPbqPbqPbqPbqPbqPbqPbqPbqPbqPbqPbqPbPtbPubsfbMWbPvbLxbPwbLxbLybPxbPybPzbPzbPAbPBbPmbPCbPDbHybPEbPFbPGbPHbPIbPJbPKbOtbOtbOtbOtbOtbOtbPLbPMbPNbPObPPbITbJdbJdbJdbJdbJdbJdbPQbKtbKtbJdbobbKxblbbITbPRbITbPSbPTaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabPUbPVbPUbOLbPWbOLbPXbPYbKCabiabiabiabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamcapobPZbQaamcbKIbKIbKIbBRbBRbKIbKIbKIbBRbBRbBRbQbbGVaaabQcbQdbKPaaaaaaabiaaabGWbQebQfbQgbIabQhbQibQjbQkbGWbQlbQmbQnbQobQpbQqbQrbQsbQtbQpbQpbQpbQpbQpbQubQvbQpbQpbQwbQpbQxbQpbQpbQpbQpbQpbHbbHbbHbbHbbHbbHbbHbbHbbQybHxbsfbQzbQAbQBbQCbvpbQDbQEbQFbQGbQGbQHbQGbQGbQIbQJbHybQKbQLbQMbQLbQLbQLbQNbQObQPbQQbQRbQSbQTbQUbQVbNmbIRbQWabibQXbQYbQZbRabRbbRabRcbRdbRebJdbRfbzWbRgbRhbRhbITbITbITabiabiabiabiabiabiabiabiabiabiabiabiabiabiabiabiabiabiabiabiabiabibKDbKDbRibOLbOLbOLbRjbKDbKDabiabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiaaaaaaaqDbJjbRkbJjaqFaqyaqyaqyaqzacfaqzaqyaqzacfaqzbQcbMmbQcabibQcbKObKPabiabiabiabibGWbGWbGWbGWbGWbGWbGWbGWbGWbGWbRlbQmbRmbRnbQpbQqbQrbQsbQtbRobRobRpbRqbRrbRsbRtbRubRvbRwbRxbRybRzbRAbRBbRCbRDbREbRFbRFbRFbRFbRFbRGbHbbQybRHbRIbRIbRIbRIbRIbRJbRKbRLbRIbRIbRIbRIbRIbRIbRHbRMbRNbRObRPbRQbRPbRRbRPbRSbRTbRUbRTbRTbRTbRTbRVbRWbRXbIRbQWabibQXbRYbRZbSabSbbScbSdbSebSfbJdbSgbzWbpzbAabAabShbobabiabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaKaaaaaaaaaaaaaaaaaaaaaaaaabiabibNBbKDbSibSjbSkbSlbNBabiabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiaaaaaaaaaaaaaaaaaaaaaaqyaqyaqyaqzacfaqzaqyaqzacfaqzbQcbMmbQcbQcbQcbKObKPaaaaaaaaaabibSmbSnbSnbSobSpbSqbSqbSrbSrbSmbJBbQmbRmbSsbQpbStbSubSvbSwbSxbRobSybSzbSAbSBbSCbSDbSEbSFbSGbSAbSHbSAbSIbSJbSKaqzbSLbSLbSLbSLbSLbSMbHbbQybSNbSObSPbSQbSRbRIbSSbSTbSUbRIbSVbSWbSXbSWbSVbSNbSYbSZbTabTbbTabTcbTdbTabTebTabTfbTabTgbTabTabThbTibTjbTkbQWabibQXbRYbTlbRabTmbRabTnbTobTpbJdbAabzWbpzbAabAabTqbobaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiabibKDbKCbTrbKCbSlabiabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabibGVbGVbGVbQcbGVbQcbGVbGVbGVbGVbGVbGVbQcbQcbQcbGVbGVbGVbMmbMmbMmbTsbKObKPaaaaaaaaaabibSmbTtbSobSobSobTubSqbSqbTvbSmbTwbQmbTxbTybTzbTAbTBbTCbTDbTEbTFbTBbTBbTBbTGbTHbTIbTJbTKbTLbRCbTMbTNbTObTPbTQbREbTRbTSbTTbTUbSLbSMbTVbQybRHbTWbSVbSVbTXbRIbTYbTZbUabRIbSWbSVbSWbUbbUcbUdbkLbHybUebUfbUgbUfbUhbUibUjbQLbUkbUlbUmbUnbUobOtbUpbUqbUpbUrbUrbJdbJdbJdbJdbJdbJdbITbITbITbJdbUsbzWbUtbAabAabUubobabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiabibKCbKDbKCabiabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabGVbUvbUwbUxbUwbUybUzbUAbUBbMmbUCbUDbUEbUFbMmbMmbTsbMmbMmbQcbQcbQcbQdbKPaaaabibUGbUHbUIbUJbUJbUKbUJbULbUMbUNbUNbUObUPbQmbJCbUQbURbUSbUTbUUbUVbUWbUXbUUbUYbUUbUZbVabVbbRvbVcbVdbVebVfbVgbVhbVibVjaqzbVkbVlbTUbVmbSLbSMbTVbQybRHbVnbVobSVbVpbRIbVqbVrbVsbRIbSVbSVbVtbSVbSVbRHbQybHybOtbOtbOtbOtbPLbVubVvbVwbPLbOtbOtbOtbOtbOtbVxbVybVzbVAbVBbVCbVDbVEbVDbVFbUrbVGbVzbVHbVIbVJbzWbpzbobbobbobbobaubabiabiabiabqabqabqabqabqabqabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiabiabiabiabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabGVbGVbVKbVLbVMbVNbGVbMmbGVbMmaribVObMmbMmbMmbVPbGVbQcbQcbGVaaabQcbKObKPaaaabibVQbVRbVSbVTbVUbVUbVUbVUbVUbVUbVVbVWbVXbVYbJCbRnbVZbWabWbbSAbWcbWdbWebWfbWgbWhbWibWjbWjbWkbWlbRCbWmbWnbWobWpbWqbWrbWsbTRbWtbTUbTUbSLbSMbTVbQybRHbWubWvbWwbRJbRIbRIbWxbRIbRIbWybWybWzbWybWybRHbQybHybWAbWBbWBbWCbWDbQLbWEbWFbWGbWHbILbILbILbOtbWIbVzbVybWJbWKbVCbWLbWMbWNbWObUpbVzbWPbVzbVIbHDbWQbWRbobaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqabqabqabqabqabqabqabqabqabqabqabqbQcbWSbUwbWTbWTbWTbGVbWUbGVbWVbGVbVObMmbMmbWWbWXbGVaaaabiaaaaaabQcbKObOVbGVbGVbOVbWYbSmbWZbSobSobSobXabXbbXcbXdbSmbXebXfbJCbRnbXgbXhbXibSAbSAbXjbRobXkbXlbXmbXnbSAbSAbRvbXobXpbXqbXrbXsbXtbXsbXuaqzbSLbSLbSLbSLbSLbSMbHbbQybRHbSVbXvbXwbXxbXybXzbXAbXBbXCbSVbSVbSVbSVbXDbRHbQybHybILbXEbILbXFbXGbQLbXHbQLbXIbXJbILbXEbILbOtbXKbVzbVzbVybXLbXMbXNbXObXPbXQbUrbXRbVzbXSbVIbUrbXTbXUbobaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaKaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabGVbGVbUwbXVbXWbXXbXYbXZbYabYbbGVbGVbGVbYcbGVbGVbGVbQcbQcbQcbYdbYebYfbYgbYhbJpbYibWYbSmbSmbSmbSmbSmbSmbSmbSmbSmbSmbYjbYkbJCbYlbQpbYmbYnbWebYobWebRobSAbSAbSAbXnbYpbYqbYqbYrbYsbYtbTMbYubYvbYwbTQbREbTRbYxbYybYybSLbSMbHbbQybYzbYAbYAbYAbYBbYCbSVbYDbXwbYEbXwbXwbXwbXwbYFbRHbQybHybILbILbILbYGbYHbWFbYIbQLbYJbYKbWBbWBbYLbOtbYMbYNbVzbVybYObVCbWNbYPbXMbYQbUrbYRbYRbYRbVIbYSbXTbXUbobabiabiabiabiabiabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqyaqybYTaqzaqzbYUaqybGVbGVbGVbGVbGVbGVbGVbGVbGVbGVbMmbMmbMmbMmbMmbMmbMmbYVbYWbYXbYYbYZbZabZabZabZabZbbZcbZcbZcbZdbZcbZebZfbZfbZgbGVbXebZhbJCbZibZjbZkbZlbYqbYqbZmbZnbYqbYqbZobZpbZqbSAbZrbZsbZtbZubSAbZvbZwbZxbVjaqzbVkbZybZzbZAbSLbSMbTVbZBbZCbZCbZCbZDbRHbZEbSVbZFbZGbZHbZIbZJbZJbZJbZKbRHbQybHybOtbOtbOtbOtbZLbZMbXHbZNbZLbOtbOtbOtbOtbOtbZObZPbVybVzbZQbZRbZRbZRbZRbZSbUpbYRbYRbZTbVIbZUbXTbXUbobbobbobaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabZVbZWbZWbZWbZWbZXbZYbZYbZZcaacabcaccadcaecafcagbGVcahbQcbQcbQcbQcbQcbQcbQcbQcbOVcaicajcajcajcajcajcajcajcajcakcakcakcakcakcalcambGVbXebZhbJCbZicancaocapcaqbWjcarcasbWjbWjcatcaucavcawcaxcaycazcaAbSAbZvcaBcaCbWrbWsbTRcaDbYybYybSLbSMbTVcaEbHbbHbbHbbkLbRHcaFbSVbSVcaGcaHcaIcaJbZJcaJcaKbRHbQybHybWAbWBbWBcaLbWDbQLcaMbWFcaNcaObILbILbILbOtcaPcaQcaRbVycaSbVybVzbVzcaTcaUbUrbYRbYRbYRbVIbZUbXTbXUbAabAabobabiabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqyaqzbYTaqyaqzaqyaqybQcbQcbQcbMmcaVcaWcaXcaYcaZbGVbMmbQcaqyaqyaqzaqyaqyaqzaqybOVcaicajcbacbbcbccbdcbecbfcbacbgcbhcbicbjcakcakcambGVcbkbZhbJCcblcbmcbncbncbocbpcbpcbpcbpcbpcbqcbrbRobRobRocbsbSAbZtbSAbZvbZwcbtbVjaqzbSLbSLbSLbSLbSLbSMbTVcaEcbubEYbEYbkLbSNcbvcbwcbxcbycbzcbAcbBbZJcbBcbCbRHbQybHybILcbDbILcbEbXGbQLbXHbQLbXIcbFbILcbDbILbOtcbGcbHcbIcbJcbKcbLcbMcbMcbNcbObUpcbPbZRcbQbVIbYRbXTcbRbobbAabobbobbobabqabqabiabiabiabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqyaqzbYTbYTbYTbYTbYTcbSbMmcbSbMmcbTcbUcaWcbVbMmbGVbMmbQcaqyaqyaqzaqyaqyaqzaqybOVcaicajcbacbWcbXcbYcbZccacbaccbcccccdcceccfcakcambGVbXebZhbJCccgcchbQpcciccjcbpcckcclccmcbpccnbXnccobRoccpcaAbSAcayccqccrbYvccsbTQbREbTRcctccuccvbSLbSMbHbcaEbHbccwccxbkLbRHccycczccAccBccCcczccDbZJccDbUbbUdbQybHybILbILbILccEccFbWFbYIbQLbYJccGbWBbWBbYLbHybVIccHccIccJbVIbVIccKccLccMccNccOccPccQccRbYRbYRbXTbXUbobccSbobccTbobabiabiabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqyaqyaqyaqyaqyaqzaqzbQcbQcbQcccUccVccWccXccYbMmccZbMmbQcaqyaqyaqyaqyaqyaqyaqybOVcaicajcdacdbcdccbYcddcdacdaccbcdecdfcdgcdhcakcambGVbXebZhcdicdjcdjcdkcdlcdmcdncdocdpcdqcbpbSAbXncdrcdsccpcdtbSAcayccqbZvbZwcdubVjaqzbVkcdvcdwcdxbSLbSMbHbcaEbHbbMFbMFbkLbRHbRIcdycdzbRIcdAbRIbRIbRIbRIbRIbRHbQybHybOtbOtbOtbOtbZLcdBbXHcdCbZLbOtbOtbOtbOtbHybXMcdDbXMcdEbXMbVIccKccLcdFcdGcdHcdIbVycdJbVIbYRbXTbXUbobbAabAabAabyNaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiabiabiabiabiabiabiaaaaaaaaaaaaaaaaaaabiabiabibQccdKcdLcdLcdMcaZbQbbGVbQcbQcaqycdNaqyaqyaqyaqyaqybKPcaicajcdacdacdOcdPcdQcdacdRcdScdTcdUcdVcdWcakcambGVcdXcdYcdZcdjceacebceccedceecefcegcehcbpceicejccobRoccpcekbSAcelccqbZvcemcenbWrbWsbTRceoccuccubSLbSMbTVcaEcepbHbceqbkLcerbYAbYAcesbRIcetceucevbHbcewcexbHxbQybHybWAbWBbWBceybWDbQLcaMbWFcezceAbILbILbILbHyceBbXMbXMbXMbXMbVIceCceCceDceEbUrbUrbVybUrbVIbUrbXTbXUbobceFceGceHbyNaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacqacqacqacqacqacqacqacqacqacyacqacqacqacqacqaaaaaabGVbGVbGVbGVbGVbGVccZbGVbGVbGVbGVaqzaqyaqyaqzacfceIaqyaqyaqybKPcaicajceJceKceLceMceNceOcePceQceRceSceTceUcakceVceWceXceYceZcdjcfacfbcfccfdcfecffcfgcfhcfibTLcfjbRobRobRocfkbSAcflcfmbZvbZwbSAbVjaqzbSLbSLbSLbSLbSLcfncfocfpcfqbHbcfrcfscftbZCcfucfvbHbcfwcfxcfybHbcfzbQGbQIcfAbHybILbXEbILcfBbXGbQLbXHbQLbXIcfCbILbXEbILbHycfDbXMcfEcfFcfGcfHcfIcfJcfKcfLbUrbVybVycfMbVIbHDcfNcfObobcfPcfQbAabyNaaaaaaaaaaaaaaaaaaaaKaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacqaaaabiaaaabiaaaabiaaaadGaaaabiaaaabiaaaacqabiabibGVcfRcfSbMmbYcbMmbMmbMmbMmbQbbQcaqyaqyaqyacfcfTcfUacfacfaqzbKPcaicajcfVcdacbacbacbacdacfWcfXcfYcfZcgacgbcakbGVbGVcgccgdcgecdjcdjcgfcggcghcgicgicgicgicbpbSAcgjcgkcglcgmcgncgocgpcgqccrbYvcgrbTQbREbTRcgscgtcgtbSLaqzbTVbEYcgubHbbHbcgvbDObHbcgwcgxbHbbHbcgybHbbHbcgxcgzbLFcgAbHybILbILbLHcgBcgCbWFcgDbQLbYJcgEbWBbWBbYLbHybXMbXMcgFbXMbXMbVIceCceCcgGcgHbUrcgIcgJcgJbVIbzZcfNbXUbobbobbobbAabobabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacqaaacgKcgLcgMaaacgKcgLcgMaaacgKcgLcgMaaaacqaaaaaabGVcgNbMmcgObGVbGVbYcbGVbGVbGVbGVaqyaqyaqycgPacfacfaqzaqyaqybKPcaicajcdacgQcgRcbacgScdacdaccbcgTccecgUcgVcgWcgXcgYcgZchachbchcchdchechfchgchhchichjchkchlchmchnchobWjbWjchpbYpchqbYubWmbZwchrbVjaqzbVkchschtchubSLaqzbHbbHbchvchwchxcgvchybHbcgwchzchAchBchCchDchAchEchFblbchGbHybHybHybHybHybHybQLchHchIbHybHybHybHybHybHybVIbVIbVIbVIbVIbVIchJchJchKchLbVIbVIbVIbVIbVIbobchMbXUbobchNchObAabobabiabiabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacqabicgKchPcgMaaacgKchPcgMaaacgKchPcgMabiabiaaaaaabGVchQbMmchRbGVbWVbMmchSbUEchTbGVaqyaqyaqyaqyaqzaqyaqyaqyaqybOVcaicajcbachUchVcbachWchXcbaccbchYchZciacibciccidciecifcigcihciicijcikcilcimcinciocggcipchlciqbSAcgjbYpbYqcirciscitciubRBcivciwbWrbWsbTRcixcgtcgtbSLaqzbHbbEYciycizciAciBciCbHbciDciEciFchFciGchFcgzciHciIblbciJbHyciKciLciLciMciNbQLchHciObHyabiabiabiabibobciPbShciQciRciRbVIciSciSchKciTbVIciUbAabAabAabHDchMcbRbobciVbAabAabobbobbobabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacqaaacgKchPcgMabicgKchPcgMabicgKchPcgMaaaabiabiabibGVciWchRciXbGVciYciZcjacjbbWWbGVaqyaqyaqyaqyaqzaqyaqyaqzaqybOVcaicajcbacjccjdcjecjfcjgcbacjhcjicjjcjkcjlcakcjmcjncjocjpcjqcjrcjscjtcjucjvcjwcjxcjycjzcjAcjBbSAcgjcjCbSAbSAbSAcjCcjCcjCbZwcjDcjEaqzbSLbSLbSLbSLbSLaqzbHbcfrcjFcjGcjHcjIcjJbHbbHbcjKcjLcjMbHxcjNcjObHbbHbblbciJbHycjPcjQcjQcjRcjScjTcjUcjVbHyabiaaaaaaabibobbAacjWbBIcjXcjYbVIcjZcjZckaciTbVIbobbobckbckcbHDchMbXUbAabAabAackdbpBckebpBabqabqabiabiabiabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiabicgKchPcgMaaacgKchPcgMaaacgKchPcgMabiabiaaaaaabGVckfckgckhbGVckickjbGVckkbGVbGVaqyaqzaqyaqyaqzaqyaqyaqzaqybOVcaicajcajcajcajcajcajcajcajcakcakcakcakcakcakbGVcklbGVchlckmckmckmcknckockpckmckqckrckschlbSAbVfcktcjCbSAbSAbSAbSIbZqcjCbZwcjCbQpaqzaqzaqzaqzaqzaqzaqzckuckuckvckwckxckuckuckuckyckzckAcjMckBcjMcjMbHbckCbDOciJbHybHyckDckDbHybHyckDckEckDbHyaaaaaaaaaaaabobbobchMckFbobbobbVIbVIbVIckGckHbVIbHDbobceHbAackIchMcfObobbobckJbobbobbobbobabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacqacqacqabiaaacgKchPcgMaaacgKchPcgMaaacgKchPcgMaaaabiaaaaaackKckLckLckLckLbGVbGVckMckNbGVbQcbQcbQcbQcbQcbQcbQcbQcbQcbGVckOckPbYeckQckRckSckSckSckSckSckSckSckSckSckTckTckSckUckichlckVckWckXckYckZclackmclbclccldchlcleclfbWoclgclhcliclhclgcljclgclkcjCbQpbQpbQpaqyaqyaqzaqzckuckucllclmclncloclpclqckuclrbEYclscltcluclvclwbPBbPBclxclybobaaaaaaaaaaaaaaaabiclzabiaaaaaaaaaaaaaaabobclAclBclCclCclDclEclFclGclHclIbobbobbobbobclJbobchMbXUbobclKclLbAabobaaaabiabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacqaaaabiaaaaaaaaaclMaaaaaaaaaclMaaaaaaaaaclMaaaaaaabickKckKckKclNclOclPclQclRbMmclSclTclUclVclVclVclVclVclVclVclVclVclVclVclWbZfclXclYchlchlchlchlchlchlchlchlchlchlchlchlchlchlchlckmclZckYcmacmbcmccmdcmecmfcmgchlclecmhcmicmjcmkcmlcmmcmnbSAcmocmpcmqcmrcmscmraqyaqyaqzcmtcmucmvcmwcmxcmycmzcmAcmBckubEYbEYcjMcjMbDOcjMchFbEYbEYbDOcmCbobbobbyNbyNbobbobbyNcmDbyNbobbobbyNbyNbyNbobcmEcmFbrocmGcmHcmIcmIcmIcmJcmKcmLcmMcmNcmOcmOcmOcmPcmQbobchObAacmRbobaaaabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacqabicmScmTcmTcmUcmVcmVcmVcmVcmVcmVcmVcmVcmVcmVcmVcmWcmXcmYcmXcmZcnacnbcncclVcndcnebUEbGVbQcbQcbQcbQcbQcbQcbQcbQcbQcbGVbGVcnfcngcnhcnichlcnjcnjcnkcnlcnmcnncnocnpcnqcnrcnscntcnucnvckmcnwcnxcnycnzcnAcnBcnCcnDcnEchlbQpcnFbRvcnGbRvcnHbRvcnGbRvcnIbRvcnJbQpbQpbQpaqzaqzaqzbSMckucnKcnLcnMcnNcnOcnPcnQckucnRbEYchFchFcnScjMchFbEYcnTbDOcnUbZabZabZabZabZacnVbZacnWcnXcnXcnXcnXcnXcnXcnYcnZbpzbobcoacobbobbobbyNbyNbobbobcoccfNcodbrocoecofcogbobbobbobbobbobaaaabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacqaaaabiaaaaaaaaacohaaaaaaaaacohaaaaaaaaacohaaaaaaabickKckKckKcoicojcokckLbMmbMmbMmbMmbGVaaaaaaabiaaaaaaabiaaaaaaabiaaabGVcolbGVcomconchlcoocopcoqcorcoscotcoucovcoucowcoxcoycozcotckmcoAckYcoBcoCcoDckmcoEcoFcoGchlaqzcoHaqzbSMaqzcoHaqzbSMaqzcoIaqzcoIaqzaqzaqyaqyaqyaqzbSMckucoJcoKcmxcoLcoMcoNcoOcoPcoQcoRcoSchFbHxchFcoTcgzciHcoUcoVcoVcoVcoVcoVcoVcoVcoWcoXcoVcoVcoVcoVcoVcoVcoYcoZcpabobcpbcfNbobaaaaaaaaaaaabobbAacfNcpccpdcpdcpecpfcpdaaaabiabiabiabiabiabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacqacqacqabiaaacgKcpgcgMaaacgKcpgcgMaaacgKcpgcgMaaaabiaaaaaackKckLckLckLckLcphbQbbMmbMmbGVbGVbQccpicpjcpjcpjcpjcpjcpjabibGVbGVbGVcpkcplchlcpmcoqcoqcorcpncoucpocppcpqcprcoucoucoucouckmcpscptcptcpucpvckmcpwclccpxchlbSLcpybVkcpybSLcpybVkcpybSLcpzbVkcpAbSLaqyaqyaqyaqyaqybSMcpBcpCcmzcpDcmzcpEcpFcpGckucpHcjMcjMcjMcpIcjMcjMcjMbHbbGVbGVbGVbQcbQcbQcbGVbGVbQcbQcbQcbGVbGVbQcbQcbQcbGVcpJbobbobcpKcfNbobbobbyNbyNbobbobbAacfNcpLcpdcpMcpNcpOcpdaaaaaaabiabiaaaabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiabicgKcpgcgMaaacgKcpgcgMaaacgKcpgcgMabiabiabiaaaaaaaaaaaaabqbGVbGVbGVcpPbMmbGVcpPbNLcpjcpQcpRcpScpRcpTcpjaaabGVbWWbMmcpUcplchlcpVcpVcpWchlcpXcpYcpZcoucqacprcqbcqccqdcqdckmcqecqfcqfcqgcqhcqicqjcqkcqlchlbSLcqmcqncqobSLcqpcqqcqrbSLcqscqtcqubSLaqyaqyaqyaqyaqybSMckucqvcqwcqxcqycqzcqAcqBckucqCcqDcqEcqFcqGcqHchFchFbEYcqIbMmbQcaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiaaabobcqJbHDbobcqKcqLcqMclEcqMcqMcqMcqMcqNcqOcqPcpdcqQcqRcqScpdabiaaaaaaaaaaaaabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIWaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacqaaacgKcpgcgMabicgKcpgcgMabicgKcpgcgMaaaabiabiabiaaaaaaaaaabqcqTcqUcqTbMmbMmbYcbMmcqVcpjcqWcqXcqYcqZcracpjaaabGVckjbMmcpUcplchlcpVcpVcpWchlcrbcntcrccrdcrecrfcrccntcrccrccntcrgcrhcricpncrjcrkcrlcrmcrnchlbSLcrocrpcrobSLcrqcrrcrqbSLcrscrtcrubSLaqzaqzaqzaqzaqzbSMckuckuckucrvcrwcrxcrycrzcrwcqCcrAchFcrBcrCcrDciIchFcrEbGVbMmbQcaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiaaabobcrFclLbobcrGcrHcrHcrIcrHbrobrobrocrJcrJcrKcpdcrLcrMcrNcpdabiaaaabiaaaaaaabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacqabicgKcpgcgMaaacgKcpgcgMaaacgKcpgcgMabiabiaaaabiabiaaaaaaabqbGVbGVbGVbGVbMmbGVbGVbGVcpjcrOcrPcrQcrRcrOcpjabibGVchlcrScrTcrUchlcpVcpWcpWchlcrVcrWcrXcrYcqacrZcsacsbcsacsacsccsdcsecsecsfcsecsecsgcshcsichlbSLcrocsjcrobSLcrqcskcrqbSLcrucslcrubSLaqyaqyaqzaqzaqycfnbRGaqyaqycsmcrwcsncsocspcrwbEYcsqcsrbLFcsscstcgzcsucsvbGVcqIbQcaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiaaabobcswbAabobbobbobbobbobbAabobabiaaaaaaaaaabicsxcsxcsycsxcsxabiabiabiabiabiabiabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacyaaacgKcszcgMaaacgKcszcgMaaacgKcszcgMaaaacqaaaaaaabiabiaaaaaaaaaaaaaaabQcbMmbQcaaaaaacpjcsAcsBcsCcsDcsEcpjcpjcpjchlcsFcrTcsGchlchlchlchlchlcsHcsIcoucoucqacrmcoucovcsJcsKcsLcoucoucoucoucsMcoucqacprcsNchlbSLbSLbSLbSLbSLbSLbSLbSLbSLbSLbSLbSLbSLaqyaqzaqzaqyaqyaqybSMaqyaqycsOcrwcrxcsPcrzcrwbHbcsQciHcsRcsSciHcsTbHbbHbbGVabqabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiabibobcsUbAabAabAabAabAabAabAabobabiaaaaaaaaaabiaaacsxcsVcsxaaaabiaaaabiaaaaaaabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacqaaaabiaaaabiaaaabiaaaabiaaaabiaaaabiaaaacqaaaaaaaaaabiabiaaaaaaaaaaaabQcbMmbQcaaaaaacpjcsWcsXcsYcsZctactbctcctdctbctectfctgcthctictjctkctlctmctnctoctpctqctrcpxchlctschlctschlcpxcttcoucouctucqacprctvchlchlchlchlchlcntcntcntcntchlabiabiabiabiaqzaqzaqyaqyaqyaqybSMaqyaqycsOcrwctwctxctyctzaqzbHbcjKctAbTVbTVbHbbHbaaaabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiabibobctBctCctDciUctEbRfbSgbobbobabiaaaaaaaaaabiaaacsxcsycsxaaaabiaaaabiaaaaaaabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacqacqacqacqacqacyacqacqacqacqacqacqacqacqacqaaaaaaaaaaaaabiabiaaaaaaabibQcbMmbQcabiabicpjctFctGctHctIctJctKctLctMctNctOctPctQctRctRctRctSctRctTctUctVctWctXctYchlctZcuacubcuacucchlcudcoucuecufcqacugctXctXctXcuhcuichlcujcntcukculculcumaaaaaaaaaaqyaqyaqyaqyaqyaqybSMaqyaqycsOcrwcrwcuncrwcrwaaaaqzaaacuoaqyaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabobbobbobccSbobcpJbobbyNbyNbobbobaaaabiaaaaaaaaaabiaaaaaacupaaaaaaabiaaaabiaaaaaaabiaaaaaaaaaaaKaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiabiaaaaaabQcbMmbQcaaaaaacpjcuqcurcuscutcuucpjcuvcuwcpjcuxcuycuzcovcoucuAcrccuBcpncuCcuDcuEcuEcuEcuFcuGcuHcuIcuJcuKcuFcuLcuLcsLcpocuMcuNcppcppcpqcrmcuOcuPcoqcuPcuQcuRcuScuTcuUaaaaaaaqyaqyaqyaqyaqyaqybSMaqyaqycsObYTcrwcuVcrwcuWaqzaqzaaacuXaqyaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabobcuYcuZcuZbobcvaabiaaaaaaabiaaaaaaabiaaaaaaaaaabiaaaaaacupaaaaaaabiaaaabiaaaaaaabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaKaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiabibGVbGVcvbbGVbGVaaacpjcvccvdcvecpjcpjcpjcpjcpjchlcvfcoucuzcoucoucvgcrccvhcpncvicvjcvkcvlcvmchlcvncvocvpcvqcvrchlcvscvtcvtcvjcvicpncvucvvcqacrmcvwchlcvxcntcvyculculcvzaaaaaaaaaaqyaqyaqyaqycvAaqybSMaqyaqycvBbYTcvCcvDcvCbYTaqzaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabyNbyNbyNcuZcuZcvEbobaaaabiaaaaaaabiaaaacqacqacqacyabiabiabiabicupabiabiabiabiabiacyacqacqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabibGVcolbMmcvFbGVabicpjcpjcpjcpjcpjabiaaaaaaabichlcvGcoucvHcvIcvIcvJcntcntcvKchlcvLcvMcvMcvMchlcvNcvOcvPcvQcvRchlcvMcvMcvMcvLchlcvKcntcntcqacrmchlchlcntcntcntcntchlabiabiabiabiaqzaqzaqyaqyaqyaqybSMaqyaqyaqzbYTaaaaaaaaabYTaqzaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabyNbAacvScuZcuZcvTbobaaaabiaaaaaaabiaaaacqaaaaaaabiaaaabiaaaaaacvUaaaaaaabiaaaabiaaaaaaacqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabQccvVcvWcvXbGVabiaaaaaaabiaaaaaaabiaaaaaaabichlcvYcvZcpncwacwbcwccntcwdcwechlcwfcwgcwhcwgcwicwjcwkcwlcwmcvRcwicwgcwgcwgcwnchlcwocwpchlcqacwqcwrcwscwtcwucwiaaaaaaaaaaaaaaaaaaaqyaqyaqyaqyaqyaqybSMaqyaqyaqybYTbYTbYTbYTbYTaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabyNcvSbyNbyNbyNbyNbobaaaabiaaaaaaabiaaaacqabicwvcwvcwvcwvcwvaaacwwaaacwvcwvcwvcwvcwvabiacqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabQccwxcwybNKbGVcntcwzcwzcwzcwzcwzcwzcwzcwzcntchlcwAchlcwBchlcwAchlchlchlcvKchlchlcwicwicwicwicwCcwDcwEcwFcwGcwicwicwicwichlchlcvKchlchlcwHcwIcwJcwKcoucwLcwiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacwMaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqabqabqaaaaaaaaaaaaaaaaaaaaaaaaabiaaaacqaaacwNcwOcwOcwOcwOcwPcwwcwQcwRcwRcwRcwRcwSaaaacqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabQcbQcbQcbQcbGVabiabicwTcwTcwTcwTcwTcwTcwTcwTcwTcntcwUcwVcwWcntabichlcwXcwYcwZaqyacfcxacwicwicwicwicxbcwicwicwicwicxaacfaqycxccxdcxechlcxfchlchlcxgcxhcxicwiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacwMaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiaaaacqadGcxjcxjcxjcxjcxjaaacwwaaacxjcxjcxjcxjcxjabiacqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiabicwTcwTcwTcwTcwTcwTcwTcwTcwTcntcoqcxkcoqcntabichlcxlcxmcxmaqycxncxocxocxocxocxocxpcxocxocxocxocxocxqaqycxmcxrcxlchlcwUcxschlcntcntcxtcntabiabiabiabiabiabiabiabiabiabiabiabicwMabiabiabiabiabiabiabiabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiaaaacqaaaaaaaaaabiaaaaaaaaacwwaaaaaaaaaabiaaaaaaaaaacqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiabicwTcwTcwTcwTcwTcwTcwTcwTcwTcntcntcxucntcntabichlcxvcxwcxxaqzcxyacfcxzaqyaqyaqyaqycxzaqyaqycxzacfcxyaqycxAcxBcxCchlcxDcxEcntabiaaacxFcxGabiaaaaaaaaaabiaaaaaaaaaabiaaaaaaaaacwMaaaaaaaaacxHcxHcxHcxHcxHaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacqabicwvcwvcwvcwvcwvaaacwwaaacwvcwvcwvcwvcwvabiacqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaKaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiabicwTcwTcwTcwTcwTcwTcwTcwTcwTcwTcwTcwTcwTcxIabichlcxlcxmcxJaqycxKcxLaqyaqyaqyaqyaqycxMaqyaqyaqycxNcxOaqycxmcxmcxlchlabqabqabqabiaaacxPcxQcxRcxScxTcxScxRcxScxTcxScxRcxScxTcxScxUcxScxScxScxVcxWcxXcxYcxHaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacqaaacwNcwOcwOcwOcwOcwPcwwcwQcwRcwRcwRcwRcwSaaaacqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaKaaaaaaaaaabiabiabicwTcwTcwTcwTcwTcwTcwTcwTcwTcwTcwTcwTcxIabichlcxZcyacxmaqycxyacfaqyaqyaqzaqzaqzaqzaqzaqyaqyacfcxycybcxmcyccydchlabiaaaabqabiaaaaaaaaaabiaaaaaaaaaabiaaaaaaaaaabiaaaaaaaaacwMabqcxHcxHcxHcyecyfcyecxHaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacqabicxjcxjcxjcxjcxjaaacwwaaacxjcxjcxjcxjcxjabiacqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiabiabicwTcwTcwTcwTcwTcwTcwTcwTcwTcwTcwTcwTcxIabichlchlcygcxmaqycxyacfcxzaqzaqzcyhcyicyjaqzcykaqyacfcxyaqycxmcygchlchlabiaaaabqabiabiabiabiabiabiabiabiabiabiabiabiabiabiabiabicwMabqcylcymcylcyncyocyncxHaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacyaaaaaaaaaabiaaaaaaaaacwwaaaaaaaaaabiaaaaaaaaaacqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiabiabiabicwTcwTcwTcwTcwTcwTcwTcwTcwTcwTcwTcxIabicpxchlcypcxmaqycxKcxLaqyaqyaqzcyqcyrcysaqzaqyaqycxNcxOaqycxmcytchlcpxabiaaaabqabqabqabqabqabqabqabqabqabqabqabqabqabqabqabqabqcyuabqcxHcyvcywcyxcyocyycywaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacqabicwvcwvcwvcwvcwvaaacwwaaacwvcwvcwvcwvcwvabiacqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiabiabiabicwTcwTcwTcwTcwTcwTcwTcwTcwTcwTcwTcxIabichlchlcygcxmaqycxyacfaqycyzaqzcyAcyBcyCaqzaqzcxzacfcxyaqycxmcygchlchlabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacwMabqcyDcyDcyDcyDcyEcyFcyGcyHabiabiabiabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacqaaacwNcwOcwOcwOcwOcyIcyJcyIcwRcwRcwRcwRcwSaaaacqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiabiabiabicwTcwTcwTcwTcwTcwTcwTcwTcwTcwTcwTcxIabichlcyccydcxmaqycxyacfaqyaqyaqzaqzaqzaqzaqzaqyaqyacfcxyaqycxmcxZcyachlabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacwMaaaaaacyDcyDcyKcyLcyMcyDcyDcyDcyDcyDabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacqabicxjcxjcxjcxjcxjaaacupaaacxjcxjcxjcxjcxjabiacqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiabiabiabicwTcwTcwTcwTcwTcwTcwTcwTcwTcwTcwTcxIabichlcxlcxmcyNaqycxKcxLaqyaqyaqyaqzaqyaqyaqyaqyaqycxNcxOaqycxmcxmcxlchlabiaaaaaaaaKaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacwMaaaaaacyDcyOcyPcyQcyRcyScyTcyUcyVcyDabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacqaaaaaaabiaaaabiaaaaaacupaaaaaaabiaaaabiaaaaaaacqaaaaaaaaaaaaaaKaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiabiabiabiabiabicwTcwTcwTcwTcwTcwTcwTcwTcwTcwTcwTcxIabichlcyWcxwcxxaqzcxyacfcxzaqyaqycxzaqyaqyaqyaqycxzacfcxyaqycxAcxBcyXchlabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacwMaaaaaacyDcyYcyZczaczbczcczdczeczfcyDabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaKaaaaaaaaaaaaacqacqacqacqacqabiabiaaacupaaaabiabiacqacqacqacyacqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiabiabiabiabiabiabiabiabiabiabicwTcwTcwTcwTcwTcwTcwTcwTcxIabichlczgcxmcxmaqycxyacfacfczhacfacfczhacfacfczhacfacfcxyaqycxmcxmczgchlabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabicziczjabicyDczkczlczmcznczoczpczqczrcyDabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacqabiczsabiacqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiabiabiabiabiabiabicwTcwTcwTcwTcwTcwTcwTcwTcxIabichlczgcxmcztaqyczucxocxoczvcxocxoczvcxocxoczvcxocxoczwaqyczxcxmczgchlabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiczyczzczyczyczAczBczCczDczEczFczFczFczFabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacqaaaabiaaaacqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiabiabiabiabiabiabiabiabiabiabiabicwTcwTcwTcxIabiczGchlchlchlcxmaqzaqzaqzaqzaqyaqyaqyaqyaqyaqzaqzaqzaqzcxmchlchlchlczGabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaczyczyczHczIczyczJczJczKczLczJczFczMczMczFczFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacqacqacqacqacqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiabiabiabiabiabiabiabiabiabiabiabiabiabiabiabiabiabiabiabiabiabiczgchlchlcntcntcntcntcntcntcntcntcntcntcntcntcntchlchlczgabiabiabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaczyczNczOczPczQczJczRczSczTczJczUczVczVczWczFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiaaaaaaabiabiaaaaaaaaaabiabiabiaaaabiabiaaaaaaaaaabiabiabiczgczgczgczgcldczgczgczgczgczgczgczgcldczgczgczgczgabiabiabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaczyczXczYczZcAacAbcAccAdcAecAbcAfcAgcAhcAiczFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiaaaaaaabiabiaaaaaaaaaabiabiabiaaaabiabiaaaaaaaaaabiabiabiabiabiabiabiabiabiabiabiabiabiabiabiabiabiabiabiabiabiabiabiaaaaaKaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaczycAjcAkcAlcAmcAncAocApcAqcArcAscAtcAucAvczFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiaaaaaaabiaaaaaaaaaaaaabiabiabiaaaabiabiaaaaaaaaaabiaaaaaaaaaaaaaaaaaaabiaaaaaaaaaaaaaaaaaaaaaabiabiaaaaaaaaaaaaabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaczyczycAwczYcAxczJcAycAzcAAczJcABcACcADczFczFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiaaaaaaaaaaaaabiabiabiaaaaaaabiaaaaaaaaaabiaaaaaaaaaaaaaaaaaaabiaaaaaaaaaaaaaaaaaaaaaabiabiaaaaaaaaaaaaabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabicAEcAFcAGcAFcAEcAEcAHcAIcAEcAFcAJcAFcAEabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacAKaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiabiaaaaaaabiaaaaaaaaaabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaKaaaaaaaaaaaaaaaabiaaaaaaaaaaaaabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacAEcALcAMcAFcANcAOcAPcAQcANcAFcARcAScAEaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaKaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiabiaaaaaaabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabicAEcATcAMcAFcANcAOcAPcAQcANcAFcARcAUcAEabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiaaaaaaaaaabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacAVcAEcAEcAMcAFcAWcAOcAXcAYcAZcAFcARcAEcAEcBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiabicAEcBbcAFcBccAOcAPcAQcANcAFcBdcAEabiabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabicAEcBecBfcBgcBhcBicAQcBjcBkcBlcAEabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabicAEcBmcAFcBncBocBpcAQcBqcAFcBmcAEabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiabicAEcBmcAFcAWcBrcBscAQcAZcAFcBmcAEabiabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabicAEcAEcBmcAFcANcAOcAPcAQcANcAFcBmcAEcAEabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabicAEcBmcBmcAFcANcAOcBtcAQcANcAFcBmcBmcAEabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacAEcBmcBucBucBvcBucBwcBxcBycBucBucBmcAEaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacAEcBmcBucBucBzcBAcBBcBCcBDcBucBucBmcAEaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacAEcBmcBucBucBEcBFcBGcBHcBIcBucBucBmcAEaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacAEcBJcBucBucBKcBKcBLcBMcBKcBucBucBJcAEaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacBNaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacAEcBJcBucBOcBOcBPcBQcBHcBOcBOcBucBJcAEaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacBucBucBucBRcBScBTcBUcBVcBWcBXcBucBucBuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacBucBucBucBOcBBcBYcBZcCacBHcBOcBucBucBuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabicBucBucBucCbcBQcCccCdcCccCecCbcBucBucBuabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacCfcBucBucCgcBPcChcCccCccCccCicBPcCjcBucBucCkaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacClaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabicBucBucBucCbcCmcCncCocCccBPcCbcBucBucBuabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacBucBucBucBRcBPcCpcCqcBOcBPcBXcBucBucBuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacBucBucBucBOcBPcCrcCscBPcBPcBOcBucBucBuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacBucBucBucBucBucBucBucBucBucBucBucBucBuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacBucBucBucBucBucBucBucBucBucBucBuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabicBucBucBucBucBucBucBucBucBuabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiabiaaaaaacCtaaaaaaabiabiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaKaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa "} diff --git a/_maps/map_files/debug/runtimestation.dmm b/_maps/map_files/debug/runtimestation.dmm deleted file mode 100644 index 5bfc19354f..0000000000 --- a/_maps/map_files/debug/runtimestation.dmm +++ /dev/null @@ -1,255 +0,0 @@ -"aa" = (/turf/open/space,/area/space) -"ab" = (/obj/structure/lattice,/turf/open/space,/area/space) -"ac" = (/turf/open/space,/area/space/nearstation) -"ad" = (/turf/closed/wall/r_wall,/area/maintenance/maintcentral) -"ae" = (/obj/structure/lattice,/obj/structure/grille,/turf/open/space,/area/space/nearstation) -"af" = (/turf/open/floor/plating,/area/maintenance/maintcentral) -"ag" = (/obj/structure/lattice,/turf/open/space,/area/space/nearstation) -"ah" = (/turf/closed/wall/r_wall,/area/atmos) -"ai" = (/obj/machinery/power/rtg/advanced,/turf/open/floor/plating/airless,/area/space/nearstation) -"aj" = (/turf/closed/wall/r_wall,/area/engine/engineering) -"ak" = (/turf/closed/wall/r_wall,/area/engine/gravity_generator) -"al" = (/obj/machinery/airalarm{frequency = 1439; locked = 0; pixel_y = 23},/obj/structure/closet/secure_closet/atmospherics,/turf/open/floor/plating,/area/atmos) -"am" = (/obj/machinery/atmospherics/components/unary/tank/air,/turf/open/floor/plating,/area/atmos) -"an" = (/obj/structure/lattice/catwalk,/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/open/space,/area/space/nearstation) -"ao" = (/obj/structure/lattice/catwalk,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/turf/open/space,/area/space/nearstation) -"ap" = (/obj/machinery/airalarm{frequency = 1439; locked = 0; pixel_y = 23},/obj/machinery/power/apc{dir = 8; pixel_x = -24},/obj/structure/closet/secure_closet/engineering_electrical,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/open/floor/plating,/area/engine/engineering) -"aq" = (/obj/machinery/computer/monitor,/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/turf/open/floor/plating,/area/engine/engineering) -"ar" = (/obj/structure/closet/secure_closet/engineering_welding,/turf/open/floor/plating,/area/engine/engineering) -"as" = (/obj/machinery/power/smes{charge = 5e+006},/obj/machinery/airalarm{frequency = 1439; locked = 0; pixel_y = 23},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/open/floor/plasteel/warning{dir = 9},/area/engine/gravity_generator) -"at" = (/obj/machinery/power/apc{dir = 1; name = "Gravity Generator APC"; pixel_x = 0; pixel_y = 25},/obj/structure/cable{icon_state = "0-8"; d2 = 8},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/open/floor/plasteel/warning{dir = 5},/area/engine/gravity_generator) -"au" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/structure/sign/securearea{desc = "A warning sign which reads 'RADIOACTIVE AREA'"; icon_state = "radiation"; name = "RADIOACTIVE AREA"; pixel_x = 0; pixel_y = 32},/turf/open/floor/plating,/area/engine/gravity_generator) -"av" = (/turf/open/floor/plasteel/black,/area/engine/gravity_generator) -"aw" = (/turf/open/floor/plating,/area/atmos) -"ax" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/turf/open/floor/plating,/area/atmos) -"ay" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/open/floor/plating,/area/atmos) -"az" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/obj/machinery/meter,/turf/open/floor/plating,/area/atmos) -"aA" = (/obj/structure/lattice/catwalk,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/space,/area/space/nearstation) -"aB" = (/obj/structure/lattice/catwalk,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/open/space,/area/space/nearstation) -"aC" = (/obj/machinery/door/airlock,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/open/floor/plating,/area/engine/engineering) -"aD" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/open/floor/plating,/area/engine/engineering) -"aE" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/turf/open/floor/plating,/area/engine/engineering) -"aF" = (/turf/open/floor/plating,/area/engine/engineering) -"aG" = (/obj/machinery/power/terminal{icon_state = "term"; dir = 1},/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/open/floor/plasteel/warning{dir = 8},/area/engine/gravity_generator) -"aH" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/warning{dir = 4},/area/engine/gravity_generator) -"aI" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/engine/gravity_generator) -"aJ" = (/turf/open/floor/plasteel/vault{dir = 1},/area/engine/gravity_generator) -"aK" = (/turf/open/floor/plasteel/vault{dir = 8},/area/engine/gravity_generator) -"aL" = (/turf/open/floor/plasteel/vault{dir = 4},/area/engine/gravity_generator) -"aM" = (/obj/machinery/suit_storage_unit/ce,/turf/open/floor/plating,/area/atmos) -"aN" = (/obj/machinery/atmospherics/components/unary/portables_connector/visible{dir = 4},/obj/machinery/portable_atmospherics/canister/nitrous_oxide,/turf/open/floor/plasteel/bot{dir = 2},/area/atmos) -"aO" = (/obj/machinery/atmospherics/components/binary/pump{dir = 4; on = 1},/turf/open/floor/plasteel,/area/atmos) -"aP" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/turf/open/floor/plating,/area/atmos) -"aQ" = (/obj/structure/lattice/catwalk,/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/space,/area/space/nearstation) -"aR" = (/obj/structure/lattice/catwalk,/obj/structure/cable{icon_state = "1-8"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/space,/area/space/nearstation) -"aS" = (/obj/structure/table,/obj/item/device/flashlight{pixel_y = 5},/obj/item/weapon/airlock_painter,/turf/open/floor/plating,/area/engine/engineering) -"aT" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/floor/plating,/area/engine/engineering) -"aU" = (/obj/machinery/door/airlock/glass_engineering{name = "Gravity Generator"; req_access_txt = "11"; req_one_access_txt = "0"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel,/area/engine/gravity_generator) -"aV" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel/warning{dir = 8},/area/engine/gravity_generator) -"aW" = (/obj/structure/cable{icon_state = "1-8"},/turf/open/floor/plasteel/warning{dir = 4},/area/engine/gravity_generator) -"aX" = (/obj/machinery/door/airlock/glass_engineering{name = "Gravity Generator"; req_access_txt = "11"; req_one_access_txt = "0"},/turf/open/floor/plasteel/black,/area/engine/gravity_generator) -"aY" = (/obj/machinery/light{dir = 4},/turf/open/floor/plasteel/black,/area/engine/gravity_generator) -"aZ" = (/obj/structure/tank_dispenser{pixel_x = -1},/turf/open/floor/plating,/area/atmos) -"ba" = (/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/turf/open/floor/plating,/area/atmos) -"bb" = (/obj/machinery/atmospherics/components/unary/portables_connector/visible{dir = 4},/obj/machinery/portable_atmospherics/canister,/turf/open/floor/plasteel/bot{dir = 2},/area/atmos) -"bc" = (/obj/machinery/atmospherics/components/binary/pump{dir = 8; on = 1},/turf/open/floor/plasteel,/area/atmos) -"bd" = (/obj/structure/table,/obj/item/weapon/weldingtool/experimental,/turf/open/floor/plating,/area/engine/engineering) -"be" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plating,/area/engine/engineering) -"bf" = (/obj/structure/closet/secure_closet/engineering_chief,/turf/open/floor/plating,/area/engine/engineering) -"bg" = (/turf/open/floor/plasteel/warning{dir = 8},/area/engine/gravity_generator) -"bh" = (/turf/open/floor/plasteel/warning{dir = 4},/area/engine/gravity_generator) -"bi" = (/obj/machinery/gravity_generator/main/station,/turf/open/floor/plasteel/vault{dir = 8},/area/engine/gravity_generator) -"bj" = (/obj/machinery/power/apc{dir = 8; pixel_x = -24},/obj/structure/cable{icon_state = "0-2"; pixel_y = 1; d2 = 2},/obj/machinery/light,/obj/structure/table,/obj/item/device/analyzer,/obj/item/weapon/wrench,/turf/open/floor/plating,/area/atmos) -"bk" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/open/floor/plating,/area/atmos) -"bl" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/meter,/turf/open/floor/plating,/area/atmos) -"bm" = (/obj/machinery/atmospherics/components/binary/valve/open{icon_state = "mvalve_map"; dir = 4},/turf/open/floor/plating,/area/atmos) -"bn" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9; pixel_y = 0},/obj/machinery/light,/turf/open/floor/plating,/area/atmos) -"bo" = (/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/obj/structure/table,/obj/item/weapon/screwdriver/power,/obj/item/weapon/wirecutters/power,/turf/open/floor/plating,/area/engine/engineering) -"bp" = (/obj/machinery/light,/obj/item/weapon/storage/box/lights/mixed,/obj/item/device/lightreplacer,/turf/open/floor/plating,/area/engine/engineering) -"bq" = (/turf/open/floor/plasteel/warning{dir = 10},/area/engine/gravity_generator) -"br" = (/obj/structure/closet/radiation,/turf/open/floor/plasteel/warning{dir = 6},/area/engine/gravity_generator) -"bs" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/closed/wall/r_wall,/area/hallway/primary/central) -"bt" = (/obj/machinery/door/airlock,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/atmos) -"bu" = (/turf/closed/wall/r_wall,/area/bridge) -"bv" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/bridge) -"bw" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/closed/wall/r_wall,/area/engine/engineering) -"bx" = (/obj/machinery/door/airlock,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plating,/area/engine/engineering) -"by" = (/turf/closed/wall/r_wall,/area/hallway/secondary/entry) -"bz" = (/obj/machinery/light{dir = 8},/turf/open/floor/plating,/area/maintenance/maintcentral) -"bA" = (/turf/closed/wall/r_wall,/area/hallway/primary/central) -"bB" = (/obj/machinery/power/apc{dir = 8; pixel_x = -24},/obj/structure/cable,/obj/structure/cable{icon_state = "0-2"; pixel_y = 1; d2 = 2},/obj/machinery/airalarm{frequency = 1439; locked = 0; pixel_y = 23},/obj/structure/closet/jcloset,/turf/open/floor/plasteel,/area/hallway/primary/central) -"bC" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/open/floor/plasteel,/area/hallway/primary/central) -"bD" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/plasteel,/area/hallway/primary/central) -"bE" = (/turf/open/floor/plasteel,/area/hallway/primary/central) -"bF" = (/obj/structure/closet/secure_closet/CMO,/turf/open/floor/plasteel,/area/hallway/primary/central) -"bG" = (/obj/machinery/airalarm{frequency = 1439; locked = 0; pixel_y = 23},/obj/machinery/power/apc{dir = 8; pixel_x = -24},/obj/structure/cable{icon_state = "0-2"; pixel_y = 1; d2 = 2},/obj/structure/closet/secure_closet/captains,/turf/open/floor/plasteel/blue/side{dir = 8},/area/bridge) -"bH" = (/obj/structure/table,/obj/item/ammo_box/c10mm,/obj/item/weapon/gun/ballistic,/turf/open/floor/plasteel,/area/bridge) -"bI" = (/obj/structure/table,/turf/open/floor/plasteel,/area/bridge) -"bJ" = (/obj/structure/table,/obj/item/weapon/card/id/captains_spare,/turf/open/floor/plasteel,/area/bridge) -"bK" = (/obj/structure/table,/obj/item/weapon/storage/backpack/holding,/turf/open/floor/plasteel,/area/bridge) -"bL" = (/obj/structure/table,/obj/item/weapon/rcd_ammo/large,/obj/item/weapon/rcd_ammo/large,/obj/item/weapon/rcd_ammo/large,/obj/item/weapon/rcd,/turf/open/floor/plasteel,/area/bridge) -"bM" = (/obj/structure/closet/secure_closet/hop,/turf/open/floor/plasteel/blue/side{dir = 4},/area/bridge) -"bN" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/hallway/primary/central) -"bO" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel,/area/hallway/primary/central) -"bP" = (/obj/machinery/vending/cigarette,/turf/open/floor/plasteel/black,/area/hallway/primary/central) -"bQ" = (/obj/machinery/vending/coffee,/turf/open/floor/plasteel/black,/area/hallway/primary/central) -"bR" = (/obj/machinery/vending/cola,/turf/open/floor/plasteel/black,/area/hallway/primary/central) -"bS" = (/obj/machinery/vending/snack,/turf/open/floor/plasteel/black,/area/hallway/primary/central) -"bT" = (/obj/machinery/computer/arcade,/turf/open/floor/plasteel/black,/area/hallway/primary/central) -"bU" = (/obj/machinery/airalarm{frequency = 1439; locked = 0; pixel_y = 23},/obj/machinery/power/apc{dir = 8; pixel_x = -24},/obj/structure/cable{icon_state = "0-2"; pixel_y = 1; d2 = 2},/obj/structure/closet/firecloset/full,/turf/open/floor/plasteel/arrival{tag = "icon-arrival (NORTHWEST)"; icon_state = "arrival"; dir = 9},/area/hallway/secondary/entry) -"bV" = (/obj/machinery/light{dir = 1},/obj/structure/closet/emcloset,/turf/open/floor/plasteel/arrival{dir = 1},/area/hallway/secondary/entry) -"bW" = (/obj/structure/closet/secure_closet/hos,/turf/open/floor/plasteel/arrival{dir = 1},/area/hallway/secondary/entry) -"bX" = (/obj/structure/closet/emcloset,/turf/open/floor/plasteel/arrival{dir = 1},/area/hallway/secondary/entry) -"bY" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/maintenance/maintcentral) -"bZ" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/hallway/primary/central) -"ca" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/floor/plasteel,/area/hallway/primary/central) -"cb" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/hallway/primary/central) -"cc" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/open/floor/plasteel,/area/hallway/primary/central) -"cd" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/open/floor/plating,/area/bridge) -"ce" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/open/floor/plasteel/blue/side{dir = 8},/area/bridge) -"cf" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/open/floor/plasteel,/area/bridge) -"cg" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/open/floor/plasteel/blue/side{dir = 4},/area/bridge) -"ch" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/floor/plating,/area/bridge) -"ci" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/open/floor/plasteel,/area/hallway/primary/central) -"cj" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/cable{icon_state = "1-8"},/turf/open/floor/plasteel,/area/hallway/primary/central) -"ck" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/closed/wall/r_wall,/area/hallway/secondary/entry) -"cl" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/open/floor/plasteel/arrival{dir = 8},/area/hallway/secondary/entry) -"cm" = (/turf/open/floor/plasteel,/area/hallway/secondary/entry) -"cn" = (/obj/machinery/door/airlock,/turf/open/floor/plating,/area/hallway/secondary/entry) -"co" = (/obj/machinery/light{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/central) -"cp" = (/obj/machinery/light,/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/turf/open/floor/plasteel/blue/side{dir = 10},/area/bridge) -"cq" = (/turf/open/floor/plasteel/blue/side,/area/bridge) -"cr" = (/obj/machinery/light,/turf/open/floor/plasteel/blue/side{dir = 6},/area/bridge) -"cs" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/closed/wall/r_wall,/area/bridge) -"ct" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/open/floor/plasteel,/area/hallway/primary/central) -"cu" = (/turf/open/floor/plasteel/arrival{dir = 8},/area/hallway/secondary/entry) -"cv" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/closed/wall/r_wall,/area/bridge) -"cw" = (/obj/machinery/door/airlock,/turf/open/floor/plasteel,/area/bridge) -"cx" = (/obj/machinery/door/airlock/glass,/turf/open/floor/plasteel,/area/hallway/secondary/entry) -"cy" = (/turf/open/floor/plasteel/loadingarea{dir = 8},/area/hallway/secondary/entry) -"cz" = (/turf/open/floor/plating,/area/hallway/secondary/entry) -"cA" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/central) -"cB" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/light{dir = 1},/turf/open/floor/plasteel/blue/corner{dir = 4},/area/hallway/primary/central) -"cC" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/open/floor/plasteel/blue/side{dir = 1},/area/hallway/primary/central) -"cD" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/blue/side{dir = 1},/area/hallway/primary/central) -"cE" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/light{dir = 1},/turf/open/floor/plasteel/blue/corner{dir = 1},/area/hallway/primary/central) -"cF" = (/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden,/turf/open/floor/plasteel,/area/hallway/primary/central) -"cG" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/closed/wall/r_wall,/area/hallway/secondary/entry) -"cH" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/plasteel/arrival{dir = 8},/area/hallway/secondary/entry) -"cI" = (/obj/structure/table,/obj/item/weapon/storage/fancy/donut_box,/turf/open/floor/plasteel/arrival{dir = 8},/area/hallway/secondary/entry) -"cJ" = (/obj/structure/table,/obj/item/weapon/storage/fancy/donut_box,/turf/open/floor/plasteel/arrival{dir = 10},/area/hallway/secondary/entry) -"cK" = (/obj/structure/table,/obj/item/stack/sheet/glass{amount = 50},/obj/item/stack/rods{amount = 50},/obj/machinery/light,/turf/open/floor/plasteel/arrival,/area/hallway/secondary/entry) -"cL" = (/obj/structure/table,/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/pen,/turf/open/floor/plasteel/arrival,/area/hallway/secondary/entry) -"cM" = (/obj/structure/table,/obj/item/weapon/storage/firstaid/regular,/obj/item/weapon/storage/firstaid/regular,/obj/item/device/healthanalyzer,/turf/open/floor/plasteel/arrival,/area/hallway/secondary/entry) -"cN" = (/turf/closed/wall/r_wall,/area/construction) -"cO" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/closed/wall/r_wall,/area/construction) -"cP" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/closed/wall/r_wall,/area/construction) -"cQ" = (/obj/machinery/door/airlock/glass,/turf/open/floor/plasteel,/area/construction) -"cR" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/construction) -"cS" = (/turf/closed/wall/r_wall,/area/storage/primary) -"cT" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/closed/wall/r_wall,/area/storage/primary) -"cU" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/closed/wall/r_wall,/area/storage/primary) -"cV" = (/obj/machinery/door/airlock/glass,/turf/open/floor/plasteel,/area/storage/primary) -"cW" = (/obj/machinery/airalarm{frequency = 1439; locked = 0; pixel_y = 23},/obj/structure/cable,/obj/machinery/power/apc{dir = 8; pixel_x = -24},/turf/open/floor/plasteel/warning/corner,/area/construction) -"cX" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; on = 1},/turf/open/floor/plasteel/warning,/area/construction) -"cY" = (/turf/open/floor/plasteel/warning,/area/construction) -"cZ" = (/turf/open/floor/plasteel/warning/corner{dir = 1},/area/construction) -"da" = (/obj/machinery/airalarm{frequency = 1439; locked = 0; pixel_y = 23},/obj/machinery/power/apc{dir = 8; pixel_x = -24},/obj/structure/cable,/turf/open/floor/plating,/area/storage/primary) -"db" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; on = 1},/turf/open/floor/plating,/area/storage/primary) -"dc" = (/turf/open/floor/plasteel/warning{dir = 8},/area/storage/primary) -"dd" = (/turf/open/floor/plasteel{icon_state = "L1"},/area/storage/primary) -"de" = (/obj/machinery/light{dir = 1},/turf/open/floor/plasteel{icon_state = "L3"},/area/storage/primary) -"df" = (/turf/open/floor/plasteel{icon_state = "L5"},/area/storage/primary) -"dg" = (/turf/open/floor/plasteel{icon_state = "L7"},/area/storage/primary) -"dh" = (/turf/open/floor/plasteel{icon_state = "L9"},/area/storage/primary) -"di" = (/obj/machinery/light{dir = 1},/turf/open/floor/plasteel{icon_state = "L11"},/area/storage/primary) -"dj" = (/turf/open/floor/plasteel{icon_state = "L13"; name = "floor"},/area/storage/primary) -"dk" = (/turf/open/floor/plasteel/warning{dir = 4},/area/storage/primary) -"dl" = (/turf/open/floor/plating,/area/storage/primary) -"dm" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/open/floor/plasteel/warning{dir = 4},/area/construction) -"dn" = (/turf/open/floor/plating,/area/construction) -"do" = (/obj/machinery/light{icon_state = "tube1"; dir = 4},/turf/open/floor/plasteel/warning{dir = 8},/area/construction) -"dp" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/open/floor/plating,/area/storage/primary) -"dq" = (/turf/open/floor/plasteel{icon_state = "L2"},/area/storage/primary) -"dr" = (/turf/open/floor/plasteel{icon_state = "L4"},/area/storage/primary) -"ds" = (/turf/open/floor/plasteel{icon_state = "L6"},/area/storage/primary) -"dt" = (/turf/open/floor/plasteel{icon_state = "L8"},/area/storage/primary) -"du" = (/turf/open/floor/plasteel{icon_state = "L10"},/area/storage/primary) -"dv" = (/turf/open/floor/plasteel{icon_state = "L12"},/area/storage/primary) -"dw" = (/turf/open/floor/plasteel{icon_state = "L14"},/area/storage/primary) -"dx" = (/obj/machinery/light{icon_state = "tube1"; dir = 4},/turf/open/floor/plating,/area/storage/primary) -"dy" = (/turf/open/floor/plasteel/warning{dir = 4},/area/construction) -"dz" = (/turf/open/floor/plasteel/warning{dir = 8},/area/construction) -"dA" = (/turf/open/floor/plasteel/warning{dir = 10},/area/storage/primary) -"dB" = (/turf/open/floor/plasteel/warning,/area/storage/primary) -"dC" = (/turf/open/floor/plasteel/warning{dir = 6},/area/storage/primary) -"dD" = (/turf/open/floor/plasteel/warning{dir = 9},/area/storage/primary) -"dE" = (/turf/open/floor/plasteel/warning{dir = 1},/area/storage/primary) -"dF" = (/turf/open/floor/plasteel/warning{dir = 5},/area/storage/primary) -"dG" = (/obj/machinery/door/airlock,/turf/open/floor/plasteel,/area/storage/primary) -"dH" = (/obj/effect/landmark/start,/turf/open/floor/plasteel,/area/storage/primary) -"dI" = (/obj/effect/landmark{name = "JoinLate"},/turf/open/floor/plasteel,/area/storage/primary) -"dJ" = (/turf/open/floor/plasteel,/area/storage/primary) -"dK" = (/turf/open/floor/plasteel/warning/corner{dir = 8},/area/construction) -"dL" = (/turf/open/floor/plasteel/warning{dir = 1},/area/construction) -"dM" = (/turf/open/floor/plasteel/warning/corner{dir = 4},/area/construction) -"dN" = (/obj/structure/table,/turf/open/floor/plasteel,/area/storage/primary) -"dO" = (/obj/structure/table,/obj/machinery/light,/obj/item/weapon/twohanded/fireaxe,/obj/item/weapon/extinguisher,/turf/open/floor/plasteel,/area/storage/primary) -"dP" = (/obj/structure/table,/obj/item/device/lightreplacer,/turf/open/floor/plasteel,/area/storage/primary) -"dQ" = (/obj/structure/table,/obj/item/weapon/storage/box/lights/mixed,/obj/item/weapon/storage/box/lights/tubes,/obj/machinery/light,/turf/open/floor/plasteel,/area/storage/primary) -"dR" = (/obj/structure/table,/obj/item/device/flashlight{pixel_y = 5},/turf/open/floor/plasteel,/area/storage/primary) - -(1,1,1) = {" -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaababababababababababababababababababababababababababababababababababababaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaabacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacabaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaabacadadadadadadadadadaeaeaeaeaeaeaeadadadadadadadadadadadadadadadadacabaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaabacadafafafafafafafadagagagagacacacadafafafafafafafafafafafafafafadacabaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaabacadafahahahahahahahagaiaiagacacacajajajajakakakakakakakakakakafadacabaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaabacadafahalamamamamahaganaoagagajajajapaqarakasatauavavavavavakafadacabaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaabacadafahawaxayayazahagaiaAaBaBaCaDaCaDaEaFakaGaHaIavaJaKaLavakafadacabaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaabacadafahaMawaNaOaPahagaQaRagagajajajaSaTaDaUaVaWaXavaKavaKaYakafadacabaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaabacadafahaZbabbbcaPahagaiaiagacacacajbdbebfakbgbhaIavaLbiaJavakafadacabaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaabacadafahbjbkblbmbnahagagagagacacacajbobebpakbqbraIavavavavavakafadacabaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaabacadafahbsbtahahahbububvbvbvbvbvbububwbxajakakakakbybybybybybyafadacabaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaabacadbzbAbBbCbDbEbFbubGbHbIbJbKbLbMbubNbObPbQbRbSbTbybUbVbWbXbyafadacabaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaabacbYafbZcacbcccccccdcecfcfcfcfcfcgchcicjccccccccccckclcmcmcmcnafadacabaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaabacbYafbZbObNbEbEcobucpcqcqcqcqcqcrcsctbEbEbEbEbEcobycucmcmcmbybybyacabaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaabacbYafbZbObNbEbEbEbucvbvbucwbubvbucsbNbEbEbEbEbEbEcxcucmcmcycnczcnacabaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaabacbYafbZbObCcAcAcAcBcCcDcDcDcDcDcDcEcFcAcAcAcAcAcAcGcHcmcmcmbybybyacabaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaabacbYafbZbObNbEbEbEbEbEbEbEbEbEbEbEbObNbEbEbEbEbEbEbycIcmcmcmcnafadacabaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaabacadbzbAbObNbEbEbEbEbEbEbEbEbEbEbEbObNbEbEbEbEbEbEbycJcKcLcMbyafadacabaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaabacadafcNcOcPcQcQcNcRcRcRcNcQcQcNcScTcUcScScScVcVcVbybybybybybyafadacabaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaabacadafcNcWcXcYcYcYcYcYcYcYcYcYcZcSdadbdcdddedfdgdhdidjdkdldlcSafadacabaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaabacadafcNdmdndndndndndndndndndndocSdpdldcdqdrdsdtdudvdwdkdldxcSafadacabaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaabacadafcNdydndndndndndndndndndndzcSdldldAdBdBdBdBdBdBdBdCdldlcSafadacabaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaabacadafcNdydndndndndndndndndndndzcSdldldldldldldldldldldldldlcSafadacabaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaabacadafcNdydndndndndndndndndndndzcSdldldDdEdEdEdEdEdEdEdFdldlcSafadacabaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaabacadafcNdydndndndndndndndndndndzdGdldldcdHdHdHdHdHdHdHdkdldlcSafadacabaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaabacadafcNdydndndndndndndndndndndzdGdldldcdIdIdIdIdIdIdIdkdldlcSafadacabaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaabacadafcNdydndndndndndndndndndndzcSdldldAdBdBdBdBdBdBdBdCdldlcSafadacabaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaabacadafcNdydndndndndndndndndndndzcSdldldldldldldldldldldldldlcSafadacabaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaabacadafcNdydndndndndndndndndndndzcSdldldDdEdEdEdEdEdEdEdFdldlcSafadacabaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaabacadafcNdmdndndndndndndndndndndocSdpdldcdJdJdJdJdJdJdJdkdldxcSafadacabaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaabacadafcNdKdLdLdLdLdLdLdLdLdLdLdMcSdldldcdNdOdNdNdPdQdRdkdldlcSafadacabaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaabacadafcNcNcNcNcNcNcNcNcNcNcNcNcNcScScScScScScScScScScScScScScSafadacabaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaabacadafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafadacabaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaabacadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadacabaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaabacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacabaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaababababababababababababababababababababababababababababababababababababaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -"} diff --git a/_maps/map_files/generic/lavaland.dmm b/_maps/map_files/generic/lavaland.dmm index 0605fc05ef..3d1078b926 100644 --- a/_maps/map_files/generic/lavaland.dmm +++ b/_maps/map_files/generic/lavaland.dmm @@ -1,68343 +1,599 @@ -//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE -"aa" = ( -/turf/closed/indestructible/necropolis, -/area/lavaland/surface/outdoors) -"ab" = ( -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/lavaland/surface/outdoors) -"ac" = ( -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/lavaland/surface/outdoors) -"ad" = ( -/turf/closed/indestructible/necropolis, -/area/lavaland/surface/outdoors) -"ae" = ( -/obj/structure/necropolis_gate, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/lavaland/surface/outdoors) -"af" = ( -/turf/open/floor/plating/lava/smooth/lava_land_surface, -/area/lavaland/surface/outdoors) -"ag" = ( -/obj/item/device/radio/intercom{ - dir = 8; - name = "Station Intercom (General)"; - pixel_x = 28 - }, -/turf/open/floor/plasteel/purple/side{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; - dir = 4 - }, -/area/mine/living_quarters) -"ah" = ( -/turf/closed/indestructible/necropolis, -/area/ruin/unpowered{ - name = "Necropolis Bridge" - }) -"ai" = ( -/turf/open/indestructible/necropolis, -/area/ruin/unpowered{ - name = "Necropolis Bridge" - }) -"aj" = ( -/turf/open/indestructible/necropolis, -/area/lavaland/surface/outdoors) -"ak" = ( -/obj/effect/light_emitter, -/turf/open/indestructible/necropolis, -/area/lavaland/surface/outdoors) -"al" = ( -/turf/closed/mineral/random/volcanic, -/area/lavaland/surface/outdoors) -"am" = ( -/obj/effect/spawner/structure/window/reinforced, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/laborcamp) -"an" = ( -/turf/closed/wall{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/laborcamp) -"ao" = ( -/obj/structure/table, -/turf/open/floor/plasteel/white{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/laborcamp) -"ap" = ( -/obj/structure/table, -/obj/item/weapon/storage/firstaid/regular, -/turf/open/floor/plasteel/white{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/laborcamp) -"aq" = ( -/obj/structure/bed, -/obj/item/weapon/bedsheet/medical, -/obj/machinery/camera{ - c_tag = "Labor Camp Medical"; - dir = 8; - network = list("Labor") - }, -/turf/open/floor/plasteel/white{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/laborcamp) -"ar" = ( -/obj/structure/rack{ - dir = 1 - }, -/obj/item/weapon/storage/bag/ore, -/obj/item/weapon/pickaxe, -/obj/item/device/flashlight, -/obj/item/clothing/glasses/meson, -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/laborcamp) -"as" = ( -/obj/structure/rack{ - dir = 1 - }, -/obj/item/weapon/storage/bag/ore, -/obj/item/device/flashlight, -/obj/item/weapon/pickaxe, -/obj/item/clothing/glasses/meson, -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/laborcamp) -"at" = ( -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/laborcamp) -"au" = ( -/obj/machinery/light/small{ - dir = 4 - }, -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/laborcamp) -"av" = ( -/obj/machinery/portable_atmospherics/canister/oxygen, -/obj/machinery/light/small{ - dir = 4 - }, -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/laborcamp) -"aw" = ( -/obj/machinery/door/airlock/glass_medical{ - id_tag = null; - name = "Infirmary"; - req_access_txt = "0" - }, -/turf/open/floor/plasteel/white{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/laborcamp) -"ax" = ( -/obj/structure/closet/crate/internals, -/obj/item/weapon/tank/internals/emergency_oxygen, -/obj/item/weapon/tank/internals/emergency_oxygen, -/obj/item/weapon/tank/internals/emergency_oxygen, -/obj/item/weapon/tank/internals/emergency_oxygen, -/obj/item/clothing/mask/breath, -/obj/item/clothing/mask/breath, -/obj/item/clothing/mask/breath, -/obj/item/clothing/mask/breath, -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/laborcamp) -"ay" = ( -/obj/structure/table, -/obj/item/trash/plate, -/obj/item/weapon/kitchen/fork, -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/laborcamp) -"az" = ( -/obj/structure/chair{ - dir = 8 - }, -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/laborcamp) -"aA" = ( -/obj/item/device/radio/intercom{ - desc = "Talk through this. It looks like it has been modified to not broadcast."; - dir = 2; - name = "Prison Intercom (General)"; - pixel_x = 0; - pixel_y = 24; - prison_radio = 1 - }, -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/laborcamp) -"aB" = ( -/obj/machinery/door/airlock{ - name = "Labor Camp Storage" - }, -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/laborcamp) -"aC" = ( -/obj/structure/chair{ - dir = 1 - }, -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/laborcamp) -"aD" = ( -/obj/machinery/door/airlock{ - name = "Vending" - }, -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/laborcamp) -"aE" = ( -/obj/machinery/door/airlock{ - name = "Labor Camp External Access" - }, -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/laborcamp) -"aF" = ( -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/laborcamp) -"aG" = ( -/obj/machinery/vending/sustenance, -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/laborcamp) -"aH" = ( -/obj/item/device/radio/intercom{ - dir = 8; - name = "Station Intercom (General)"; - pixel_x = -28 - }, -/turf/open/floor/plasteel/bar{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/living_quarters) -"aI" = ( -/obj/machinery/mineral/unloading_machine{ - dir = 1; - icon_state = "unloader-corner"; - input_dir = 1; - output_dir = 2 - }, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/laborcamp) -"aJ" = ( -/obj/machinery/camera{ - c_tag = "Labor Camp External"; - dir = 4; - network = list("Labor") - }, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/lavaland/surface/outdoors) -"aK" = ( -/obj/machinery/flasher{ - id = "Labor"; - pixel_x = 0; - pixel_y = 0 - }, -/turf/closed/wall{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/laborcamp) -"aL" = ( -/obj/machinery/mineral/processing_unit_console{ - dir = 2; - machinedir = 4 - }, -/turf/closed/wall{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/laborcamp) -"aM" = ( -/obj/machinery/light/small{ - dir = 4 - }, -/turf/open/floor/plasteel/white{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/laborcamp) -"aN" = ( -/obj/structure/closet/crate, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/lavaland/surface/outdoors/explored) -"aO" = ( -/obj/machinery/door/airlock/glass_security{ - name = "Labor Camp Shuttle Security Airlock"; - req_access_txt = "2" - }, -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/laborcamp) -"aP" = ( -/obj/machinery/light/small{ - dir = 1 - }, -/obj/machinery/button/door{ - id = "Labor"; - name = "Labor Camp Lockdown"; - pixel_x = 0; - pixel_y = 28; - req_access_txt = "2" - }, -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/laborcamp) -"aQ" = ( -/obj/machinery/door/poddoor/preopen{ - id = "Labor"; - name = "labor camp blast door" - }, -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/laborcamp) -"aR" = ( -/obj/machinery/camera{ - c_tag = "Labor Camp Central"; - network = list("Labor") - }, -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/laborcamp) -"aS" = ( -/obj/machinery/conveyor{ - dir = 8; - id = "gulag" - }, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/laborcamp) -"aT" = ( -/obj/machinery/conveyor{ - dir = 2; - id = "gulag" - }, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/laborcamp) -"aU" = ( -/obj/item/weapon/pickaxe, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/lavaland/surface/outdoors) -"aV" = ( -/obj/machinery/conveyor{ - dir = 10; - icon_state = "conveyor0"; - id = "gulag" - }, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/laborcamp) -"aW" = ( -/obj/machinery/power/terminal, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/laborcamp) -"aX" = ( -/obj/machinery/power/smes{ - charge = 5e+006 - }, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/structure/cable{ - tag = "icon-0-9"; - icon_state = "0-9"; - d1 = 2; - d2 = 4 - }, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/laborcamp) -"aY" = ( -/obj/structure/ore_box, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/lavaland/surface/outdoors) -"aZ" = ( -/obj/machinery/computer/shuttle/labor/one_way, -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/laborcamp) -"ba" = ( -/obj/machinery/status_display{ - density = 0; - layer = 4; - pixel_x = 0; - pixel_y = 32 - }, -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/laborcamp) -"bb" = ( -/obj/effect/spawner/structure/window, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/eva) -"bc" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/laborcamp) -"bd" = ( -/obj/machinery/door/airlock/glass_security{ - name = "Labor Camp Backroom"; - req_access_txt = "2" - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/laborcamp) -"be" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0 - }, -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/laborcamp) -"bf" = ( -/obj/machinery/power/apc{ - dir = 1; - name = "Labor Camp APC"; - pixel_y = 24 - }, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/laborcamp) -"bg" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/living_quarters) -"bh" = ( -/turf/closed/wall{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/production) -"bi" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/living_quarters) -"bj" = ( -/turf/open/floor/mech_bay_recharge_floor{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/eva) -"bk" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4"; - tag = "" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/living_quarters) -"bl" = ( -/obj/docking_port/stationary{ - area_type = /area/lavaland/surface/outdoors; - dir = 8; - dwidth = 2; - height = 5; - id = "laborcamp_away"; - name = "labor camp"; - turf_type = /turf/open/floor/plating/asteroid/basalt/lava_land_surface; - width = 9 - }, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/lavaland/surface/outdoors/explored) -"bm" = ( -/obj/machinery/door/airlock/glass_security{ - name = "Labor Camp Shuttle Prisoner Airlock"; - req_access_txt = "0" - }, -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/laborcamp) -"bn" = ( -/obj/structure/ore_box, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (SOUTHWEST)"; - dir = 10; - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/living_quarters) -"bo" = ( -/obj/structure/closet/secure_closet/miner, -/turf/open/floor/plasteel/purple/side{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/living_quarters) -"bp" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/turf/open/floor/plasteel/brown{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; - dir = 4 - }, -/area/mine/living_quarters) -"bq" = ( -/obj/machinery/airalarm{ - frequency = 1439; - pixel_y = 23 - }, -/obj/machinery/computer/shuttle/mining{ - req_access = "0" - }, -/turf/open/floor/plasteel/purple/side{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; - dir = 1 - }, -/area/mine/production) -"br" = ( -/obj/structure/table, -/obj/item/stack/packageWrap, -/obj/item/stack/packageWrap, -/obj/item/stack/packageWrap, -/obj/item/weapon/hand_labeler, -/turf/open/floor/plasteel/purple/corner{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; - dir = 8 - }, -/area/mine/eva) -"bs" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/door/airlock/glass_mining{ - name = "Mining Station Bridge"; - req_access_txt = "48" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/living_quarters) -"bt" = ( -/obj/machinery/light/small{ - dir = 8 - }, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/mine/eva) -"bu" = ( -/obj/machinery/door/airlock/glass_security{ - name = "Labor Camp Monitoring"; - req_access_txt = "2" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/laborcamp) -"bv" = ( -/obj/structure/closet/secure_closet/miner, -/turf/open/floor/plasteel/brown{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; - dir = 6 - }, -/area/mine/living_quarters) -"bw" = ( -/obj/machinery/door/airlock/maintenance{ - name = "Labor Camp Maintenance"; - req_access_txt = "2" - }, -/obj/structure/cable{ - tag = "icon-1-10"; - icon_state = "1-10"; - d1 = 2; - d2 = 4 - }, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/laborcamp) -"bx" = ( -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/laborcamp) -"by" = ( -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'KEEP CLEAR OF DOCKING AREA'."; - name = "KEEP CLEAR: DOCKING AREA"; - pixel_y = 0 - }, -/obj/effect/spawner/structure/window/reinforced, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/production) -"bz" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/door/airlock/glass_mining{ - name = "Mining Station EVA"; - req_access_txt = "54" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/eva) -"bA" = ( -/turf/open/floor/plating/lava/smooth/lava_land_surface, -/area/lavaland/surface/outdoors/explored) -"bB" = ( -/obj/structure/table, -/obj/machinery/recharger, -/obj/machinery/light/small{ - dir = 8 - }, -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/laborcamp/security) -"bC" = ( -/obj/structure/chair/office/dark, -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/mob/living/simple_animal/bot/secbot/beepsky{ - desc = "Powered by tears and swet of laborer."; - name = "Prison Ofitser" - }, -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/laborcamp/security) -"bD" = ( -/obj/structure/table, -/obj/item/weapon/paper_bin{ - pixel_x = 1; - pixel_y = 9 - }, -/obj/item/weapon/pen, -/obj/machinery/power/apc{ - dir = 4; - name = "Labor Camp Security APC"; - pixel_x = 24; - pixel_y = 0 - }, -/obj/machinery/camera{ - c_tag = "Labor Camp Monitoring"; - network = list("Labor") - }, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/laborcamp/security) -"bE" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/structure/cable{ - tag = "icon-5-6"; - icon_state = "5-6"; - d1 = 2; - d2 = 4 - }, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/laborcamp) -"bF" = ( -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/laborcamp) -"bG" = ( -/obj/structure/reagent_dispensers/fueltank, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/laborcamp) -"bH" = ( -/obj/machinery/door/airlock/external{ - glass = 1; - name = "Mining Shuttle Airlock"; - opacity = 0; - req_access_txt = "0" - }, -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/production) -"bI" = ( -/turf/open/floor/plasteel/purple/corner{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; - dir = 4 - }, -/area/mine/production) -"bJ" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold-b-f (WEST)"; - dir = 8 - }, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/living_quarters) -"bK" = ( -/obj/machinery/computer/secure_data, -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/laborcamp/security) -"bL" = ( -/obj/machinery/computer/security{ - name = "Labor Camp Monitoring"; - network = list("Labor") - }, -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/laborcamp/security) -"bM" = ( -/obj/machinery/computer/prisoner, -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/laborcamp/security) -"bN" = ( -/obj/machinery/power/port_gen/pacman{ - anchored = 1 - }, -/obj/structure/cable, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/laborcamp) -"bO" = ( -/obj/machinery/portable_atmospherics/canister/air, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/laborcamp) -"bP" = ( -/turf/open/floor/plasteel/purple/corner{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; - dir = 1 - }, -/area/mine/production) -"bQ" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/turf/open/floor/plasteel/brown{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; - dir = 8 - }, -/area/mine/living_quarters) -"bR" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/production) -"bS" = ( -/turf/open/floor/plasteel/brown{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; - dir = 4 - }, -/area/mine/production) -"bT" = ( -/obj/structure/extinguisher_cabinet{ - pixel_x = 30; - pixel_y = 0 - }, -/turf/open/floor/plasteel/brown{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; - dir = 4 - }, -/area/mine/production) -"bU" = ( -/turf/open/floor/plasteel/purple/corner{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; - dir = 8 - }, -/area/mine/production) -"bV" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/production) -"bW" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/brown{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; - dir = 8 - }, -/area/mine/production) -"bX" = ( -/obj/machinery/power/terminal{ - icon_state = "term"; - dir = 1 - }, -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/living_quarters) -"bY" = ( -/obj/structure/cable, -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/machinery/power/port_gen/pacman{ - anchored = 1 - }, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/living_quarters) -"bZ" = ( -/obj/machinery/power/port_gen/pacman{ - anchored = 1 - }, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/living_quarters) -"ca" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/living_quarters) -"cb" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/door/airlock/glass_mining{ - name = "Mining Station Bridge"; - req_access_txt = "48" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/production) -"cc" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/machinery/door/airlock/maintenance{ - name = "Mining Station Maintenance"; - req_access_txt = "48" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/living_quarters) -"cd" = ( -/obj/machinery/mineral/equipment_vendor, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (NORTHWEST)"; - dir = 9; - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/living_quarters) -"ce" = ( -/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/production) -"cf" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/brown{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; - dir = 1; - tag = "icon-brown (NORTH)" - }, -/area/mine/living_quarters) -"cg" = ( -/obj/machinery/camera{ - c_tag = "Crew Area Hallway East"; - network = list("MINE") - }, -/turf/open/floor/plasteel/purple/corner{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; - dir = 1 - }, -/area/mine/living_quarters) -"ch" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/production) -"ci" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold-b-f (NORTH)"; - dir = 1 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4"; - tag = "" - }, -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/living_quarters) -"cj" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold-b-f (NORTH)"; - dir = 1 - }, -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/living_quarters) -"ck" = ( -/obj/docking_port/stationary{ - area_type = /area/lavaland/surface/outdoors; - dir = 8; - dwidth = 3; - height = 5; - id = "mining_away"; - name = "lavaland mine"; - turf_type = /turf/open/floor/plating/asteroid/basalt/lava_land_surface; - width = 7 - }, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/lavaland/surface/outdoors) -"cl" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/living_quarters) -"cm" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/brown{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; - dir = 4 - }, -/area/mine/production) -"cn" = ( -/obj/machinery/door/airlock/glass_mining{ - name = "Processing Area"; - req_access_txt = "48" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/production) -"co" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/brown{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; - dir = 8 - }, -/area/mine/production) -"cp" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/purple/corner{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/production) -"cq" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 9 - }, -/turf/open/floor/plasteel/brown{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/production) -"cr" = ( -/turf/open/floor/plasteel/purple/side{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; - dir = 6 - }, -/area/mine/production) -"cs" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/brown{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/living_quarters) -"ct" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/door/airlock{ - glass = 1; - name = "Break Room"; - opacity = 0 - }, -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/living_quarters) -"cu" = ( -/turf/open/floor/plasteel/purple/corner{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; - dir = 8 - }, -/area/mine/living_quarters) -"cv" = ( -/obj/machinery/light, -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/living_quarters) -"cw" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/production) -"cx" = ( -/obj/structure/extinguisher_cabinet{ - pixel_x = -5; - pixel_y = 30 - }, -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/living_quarters) -"cy" = ( -/obj/machinery/door/airlock/mining{ - name = "Mining Station Storage"; - req_access_txt = "48" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/living_quarters) -"cz" = ( -/obj/machinery/airalarm{ - dir = 1; - pixel_y = -22 - }, -/obj/structure/closet/crate{ - icon_state = "crateopen"; - opened = 1 - }, -/turf/open/floor/plasteel/purple/side{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/production) -"cA" = ( -/obj/structure/closet/crate{ - icon_state = "crateopen"; - opened = 1 - }, -/obj/machinery/light, -/turf/open/floor/plasteel/brown{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/production) -"cB" = ( -/obj/docking_port/stationary{ - area_type = /area/lavaland/surface/outdoors; - dir = 2; - dwidth = 11; - height = 22; - id = "whiteship_lavaland"; - name = "lavaland wastes"; - turf_type = /turf/open/floor/plating/asteroid/basalt/lava_land_surface; - width = 35 - }, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/lavaland/surface/outdoors) -"cC" = ( -/obj/structure/closet/crate, -/turf/open/floor/plasteel/purple/side{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/production) -"cD" = ( -/obj/structure/closet/crate{ - icon_state = "crateopen"; - opened = 1 - }, -/turf/open/floor/plasteel/brown{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; - dir = 6 - }, -/area/mine/production) -"cE" = ( -/turf/open/floor/plasteel/loadingarea{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; - dir = 8 - }, -/area/mine/production) -"cF" = ( -/obj/machinery/conveyor{ - dir = 8; - id = "mining_internal" - }, -/obj/structure/plasticflaps, -/turf/open/floor/plating/warnplate{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; - dir = 9 - }, -/area/mine/production) -"cG" = ( -/obj/machinery/conveyor{ - dir = 8; - id = "mining_internal" - }, -/turf/open/floor/plating/warnplate{ - tag = "icon-warnplate (NORTH)"; - dir = 1; - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/production) -"cH" = ( -/obj/machinery/light/small, -/turf/open/floor/plasteel/purple/corner{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; - dir = 4 - }, -/area/mine/living_quarters) -"cI" = ( -/obj/machinery/conveyor{ - icon_state = "conveyor0"; - dir = 10; - id = "mining_internal" - }, -/obj/machinery/light/small{ - dir = 4 - }, -/turf/open/floor/plating/warnplate/corner{ - tag = "icon-warnplatecorner (EAST)"; - dir = 4; - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/production) -"cJ" = ( -/obj/machinery/airalarm{ - frequency = 1439; - pixel_y = 23 - }, -/turf/open/floor/plasteel/purple/corner{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; - dir = 1 - }, -/area/mine/living_quarters) -"cK" = ( -/obj/structure/bed, -/obj/item/weapon/bedsheet/brown, -/obj/machinery/airalarm{ - frequency = 1439; - pixel_y = 23 - }, -/turf/open/floor/carpet{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/living_quarters) -"cL" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/carpet{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/living_quarters) -"cM" = ( -/obj/machinery/door/airlock{ - id_tag = "miningdorm1"; - name = "Room 1" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/living_quarters) -"cN" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/brown{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; - dir = 8 - }, -/area/mine/living_quarters) -"cO" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold-b-f (EAST)"; - dir = 4 - }, -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/living_quarters) -"cP" = ( -/obj/machinery/vending/snack, -/turf/open/floor/plasteel/bar{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/living_quarters) -"cQ" = ( -/turf/open/floor/plasteel/bar{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/living_quarters) -"cR" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/bar{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/living_quarters) -"cS" = ( -/obj/machinery/vending/cigarette, -/obj/machinery/newscaster{ - pixel_y = 32 - }, -/turf/open/floor/plasteel/bar{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/living_quarters) -"cT" = ( -/obj/structure/table, -/obj/machinery/microwave{ - pixel_y = 6 - }, -/turf/open/floor/plasteel/bar{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/living_quarters) -"cU" = ( -/obj/structure/ore_box, -/turf/open/floor/plasteel/purple/side{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; - dir = 8 - }, -/area/mine/living_quarters) -"cV" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 1; - on = 1 - }, -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/living_quarters) -"cW" = ( -/obj/structure/table, -/turf/open/floor/carpet{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/living_quarters) -"cX" = ( -/obj/machinery/light/small{ - dir = 4 - }, -/obj/machinery/button/door{ - id = "miningdorm1"; - name = "Door Bolt Control"; - normaldoorcontrol = 1; - pixel_x = 25; - pixel_y = 0; - req_access_txt = "0"; - specialfunctions = 4 - }, -/turf/open/floor/carpet{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/living_quarters) -"cY" = ( -/obj/structure/chair, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/bar{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/living_quarters) -"cZ" = ( -/obj/structure/table, -/obj/machinery/reagentgrinder, -/turf/open/floor/plasteel/bar{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/living_quarters) -"da" = ( -/obj/machinery/recharge_station, -/turf/open/floor/plasteel/purple/side{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/living_quarters) -"db" = ( -/obj/structure/closet/secure_closet/miner, -/turf/open/floor/plasteel/brown{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/living_quarters) -"dc" = ( -/obj/structure/chair{ - dir = 4 - }, -/turf/open/floor/plasteel/bar{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/living_quarters) -"dd" = ( -/obj/structure/table, -/obj/item/weapon/reagent_containers/food/drinks/beer, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 5 - }, -/turf/open/floor/plasteel/bar{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/living_quarters) -"de" = ( -/obj/structure/chair{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/bar{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/living_quarters) -"df" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 8; - layer = 2.4; - on = 1 - }, -/turf/open/floor/plasteel/bar{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/living_quarters) -"dg" = ( -/obj/structure/table, -/obj/item/weapon/reagent_containers/food/drinks/beer, -/obj/item/weapon/reagent_containers/food/drinks/beer, -/turf/open/floor/plasteel/bar{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/living_quarters) -"dh" = ( -/obj/machinery/door/airlock{ - id_tag = "miningdorm2"; - name = "Room 2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/living_quarters) -"di" = ( -/obj/machinery/camera{ - c_tag = "Crew Area"; - dir = 1; - network = list("MINE") - }, -/obj/machinery/computer/security/telescreen/entertainment{ - pixel_x = 0; - pixel_y = -32 - }, -/obj/machinery/light, -/turf/open/floor/plasteel/bar{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/living_quarters) -"dj" = ( -/obj/machinery/airalarm{ - dir = 1; - pixel_y = -22 - }, -/turf/open/floor/plasteel/bar{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/living_quarters) -"dk" = ( -/obj/structure/table, -/obj/item/weapon/storage/box/donkpockets, -/turf/open/floor/plasteel/bar{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/living_quarters) -"dl" = ( -/obj/machinery/light/small{ - dir = 4 - }, -/obj/machinery/button/door{ - id = "miningdorm2"; - name = "Door Bolt Control"; - normaldoorcontrol = 1; - pixel_x = 25; - pixel_y = 0; - req_access_txt = "0"; - specialfunctions = 4 - }, -/turf/open/floor/carpet{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/living_quarters) -"dm" = ( -/turf/open/floor/bluegrid{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/maintenance) -"dn" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/light{ - icon_state = "tube1"; - dir = 4 - }, -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/living_quarters) -"do" = ( -/obj/machinery/door/airlock{ - id_tag = "miningdorm3"; - name = "Room 3" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/living_quarters) -"dp" = ( -/obj/machinery/light/small{ - dir = 4 - }, -/obj/machinery/button/door{ - id = "miningdorm3"; - name = "Door Bolt Control"; - normaldoorcontrol = 1; - pixel_x = 25; - pixel_y = 0; - req_access_txt = "0"; - specialfunctions = 4 - }, -/turf/open/floor/carpet{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/living_quarters) -"dq" = ( -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/lavaland/surface/outdoors/explored) -"dr" = ( -/obj/machinery/conveyor_switch/oneway{ - id = "gulag" - }, -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/laborcamp) -"ds" = ( -/turf/closed/wall{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/eva) -"dt" = ( -/obj/effect/spawner/structure/window/reinforced, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/eva) -"du" = ( -/obj/structure/table, -/obj/item/weapon/pickaxe, -/obj/item/device/gps/mining, -/obj/item/device/gps/mining, -/obj/item/device/gps/mining, -/obj/item/device/gps/mining, -/turf/open/floor/plasteel/purple/side{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; - dir = 9 - }, -/area/mine/eva) -"dv" = ( -/obj/machinery/suit_storage_unit/mining, -/turf/open/floor/plasteel/brown{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; - dir = 1 - }, -/area/mine/eva) -"dw" = ( -/obj/machinery/suit_storage_unit/mining, -/turf/open/floor/plasteel/purple/side{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; - dir = 5 - }, -/area/mine/eva) -"dx" = ( -/obj/effect/spawner/structure/window/reinforced, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/production) -"dy" = ( -/obj/machinery/camera{ - c_tag = "EVA"; - dir = 4; - network = list("MINE") - }, -/obj/machinery/airalarm{ - dir = 4; - pixel_x = -23; - pixel_y = 0 - }, -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/obj/structure/table, -/obj/item/weapon/storage/toolbox/mechanical{ - pixel_x = -2; - pixel_y = -1 - }, -/turf/open/floor/plasteel/brown{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; - dir = 8 - }, -/area/mine/eva) -"dz" = ( -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/eva) -"dA" = ( -/obj/machinery/light_switch{ - pixel_x = 27 - }, -/turf/open/floor/plasteel/brown{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; - dir = 4 - }, -/area/mine/eva) -"dB" = ( -/obj/structure/closet/crate, -/turf/open/floor/plasteel/brown{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; - dir = 1 - }, -/area/mine/production) -"dC" = ( -/turf/open/floor/plasteel/purple/corner{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/production) -"dD" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 2; - on = 1 - }, -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/eva) -"dE" = ( -/obj/structure/tank_dispenser/oxygen, -/turf/open/floor/plasteel/purple/corner{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/eva) -"dF" = ( -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/plasteel/purple/corner{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; - dir = 8 - }, -/area/mine/eva) -"dG" = ( -/obj/structure/extinguisher_cabinet{ - pixel_x = -5; - pixel_y = 30 - }, -/turf/open/floor/plasteel/purple/corner{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/eva) -"dH" = ( -/obj/item/device/radio/beacon, -/turf/open/floor/plasteel/purple/corner{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; - dir = 8 - }, -/area/mine/production) -"dI" = ( -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/production) -"dJ" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 6 - }, -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/production) -"dK" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/turf/open/floor/plasteel/brown{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; - dir = 4 - }, -/area/mine/production) -"dL" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/turf/open/floor/plasteel/brown{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; - dir = 8 - }, -/area/mine/eva) -"dM" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/eva) -"dN" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 9 - }, -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/eva) -"dO" = ( -/turf/open/floor/plasteel/brown{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; - dir = 4 - }, -/area/mine/eva) -"dP" = ( -/obj/machinery/door/airlock/external{ - glass = 1; - name = "Mining External Airlock"; - opacity = 0; - req_access_txt = "54" - }, -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/eva) -"dQ" = ( -/turf/open/floor/plasteel/brown{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; - dir = 8 - }, -/area/mine/eva) -"dR" = ( -/turf/open/floor/plasteel/brown{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; - dir = 8 - }, -/area/mine/production) -"dS" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - layer = 2.4; - on = 1 - }, -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/production) -"dT" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold-b-f (EAST)"; - dir = 4 - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/production) -"dU" = ( -/obj/machinery/power/apc{ - dir = 2; - name = "Mining EVA APC"; - pixel_x = 1; - pixel_y = -23 - }, -/obj/structure/cable, -/obj/machinery/recharge_station, -/turf/open/floor/plasteel/purple/corner{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; - dir = 1 - }, -/area/mine/eva) -"dV" = ( -/obj/machinery/mech_bay_recharge_port, -/obj/structure/cable, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/eva) -"dW" = ( -/obj/machinery/computer/mech_bay_power_console, -/turf/open/floor/plasteel/purple/corner{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; - dir = 4 - }, -/area/mine/eva) -"dX" = ( -/obj/structure/closet/emcloset, -/turf/open/floor/plasteel/purple/corner{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; - dir = 1 - }, -/area/mine/eva) -"dY" = ( -/obj/structure/ore_box, -/turf/open/floor/plasteel/purple/corner{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; - dir = 4 - }, -/area/mine/eva) -"dZ" = ( -/turf/open/floor/plasteel/purple/side{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; - dir = 4 - }, -/area/mine/production) -"ea" = ( -/obj/machinery/door/airlock{ - name = "Closet"; - req_access_txt = "0" - }, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/production) -"eb" = ( -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/production) -"ec" = ( -/obj/machinery/space_heater, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/production) -"ed" = ( -/turf/closed/mineral/random/high_chance/volcanic, -/area/lavaland/surface/outdoors) -"ee" = ( -/turf/closed/wall{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/living_quarters) -"ef" = ( -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'HIGH VOLTAGE'"; - icon_state = "shock"; - name = "HIGH VOLTAGE" - }, -/turf/closed/wall{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/living_quarters) -"eg" = ( -/obj/item/device/radio/intercom{ - dir = 8; - name = "Station Intercom (General)"; - pixel_x = -28 - }, -/turf/open/floor/plasteel/brown{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; - dir = 8 - }, -/area/mine/production) -"eh" = ( -/turf/closed/wall/r_wall{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/maintenance) -"ei" = ( -/obj/effect/spawner/structure/window/reinforced, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/living_quarters) -"ej" = ( -/obj/machinery/power/smes{ - charge = 5e+006 - }, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/living_quarters) -"ek" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/light/small{ - dir = 1 - }, -/obj/structure/closet/crate/secure/loot, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/living_quarters) -"el" = ( -/obj/machinery/portable_atmospherics/canister/oxygen, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/living_quarters) -"em" = ( -/obj/structure/reagent_dispensers/fueltank, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/living_quarters) -"en" = ( -/obj/structure/fluff/drake_statue, -/turf/open/indestructible/necropolis, -/area/lavaland/surface/outdoors) -"eo" = ( -/obj/machinery/power/apc{ - dir = 8; - name = "Mining Station Starboard Wing APC"; - pixel_x = -27; - pixel_y = 2 - }, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/turf/open/floor/plasteel/purple/side{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; - dir = 8 - }, -/area/mine/production) -"ep" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/production) -"eq" = ( -/obj/machinery/mineral/equipment_vendor, -/turf/open/floor/plasteel/brown{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; - dir = 5 - }, -/area/mine/production) -"er" = ( -/obj/machinery/mineral/mint{ - input_dir = 4 - }, -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/production) -"es" = ( -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/plasteel/loadingarea{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; - dir = 8 - }, -/area/mine/production) -"et" = ( -/obj/structure/closet/crate, -/obj/machinery/airalarm{ - frequency = 1439; - pixel_y = 23 - }, -/turf/open/floor/plasteel/bot{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/production) -"eu" = ( -/obj/structure/extinguisher_cabinet{ - pixel_x = -5; - pixel_y = 30 - }, -/obj/structure/table, -/obj/item/weapon/paper{ - anchored = 0; - info = "A hastily written note has been scribbled here...

Please use the ore redemption machine in the cargo office for smelting. PLEASE!

--The Research Staff"; - name = "URGENT!" - }, -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/production) -"ev" = ( -/obj/structure/ore_box, -/turf/open/floor/plasteel/bot{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/production) -"ew" = ( -/turf/open/floor/plasteel/bot{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/production) -"ex" = ( -/obj/structure/cable{ - icon_state = "0-2"; - pixel_y = 1; - d2 = 2 - }, -/obj/machinery/power/apc{ - dir = 1; - name = "Mining Communications APC"; - pixel_x = 1; - pixel_y = 25 - }, -/turf/open/floor/plasteel/black{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/maintenance) -"ey" = ( -/obj/machinery/telecomms/relay/preset/mining, -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/plasteel/vault{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; - dir = 8; - tag = "icon-vault (WEST)" - }, -/area/mine/maintenance) -"ez" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - on = 1 - }, -/turf/open/floor/plasteel/black{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/maintenance) -"eA" = ( -/obj/machinery/light/small{ - dir = 8 - }, -/obj/machinery/airalarm{ - frequency = 1439; - pixel_y = 23 - }, -/obj/machinery/iv_drip, -/turf/open/floor/plasteel/whiteblue/side{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; - dir = 1; - tag = "icon-whiteblue (NORTH)" - }, -/area/mine/living_quarters) -"eB" = ( -/turf/open/floor/plasteel/whiteblue/side{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; - dir = 1; - tag = "icon-whiteblue (NORTH)" - }, -/area/mine/living_quarters) -"eC" = ( -/obj/structure/table, -/obj/item/weapon/storage/firstaid/toxin{ - pixel_x = 3; - pixel_y = 3 - }, -/turf/open/floor/plasteel/whiteblue/side{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; - dir = 5; - tag = "icon-whiteblue (NORTHEAST)" - }, -/area/mine/living_quarters) -"eD" = ( -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/living_quarters) -"eE" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 6 - }, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/living_quarters) -"eF" = ( -/obj/machinery/meter, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/living_quarters) -"eG" = ( -/obj/machinery/atmospherics/components/unary/tank/air{ - dir = 8 - }, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/living_quarters) -"eH" = ( -/obj/machinery/mineral/equipment_vendor, -/turf/open/floor/plasteel/purple/side{ - dir = 4 - }, -/area/mine/production) -"eI" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/production) -"eJ" = ( -/turf/open/floor/plasteel/loadingarea{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/production) -"eK" = ( -/turf/open/floor/plasteel/loadingarea{ - tag = "icon-loadingarea (EAST)"; - dir = 4; - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/production) -"eL" = ( -/obj/machinery/light/small{ - dir = 4 - }, -/turf/open/floor/plasteel/delivery{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/production) -"eM" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/turf/open/floor/bluegrid{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/maintenance) -"eN" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 6 - }, -/turf/open/floor/plasteel/black{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/maintenance) -"eO" = ( -/obj/machinery/light_switch{ - pixel_y = -25 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 9 - }, -/turf/open/floor/bluegrid{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/maintenance) -"eP" = ( -/obj/machinery/camera{ - c_tag = "Communications Relay"; - dir = 8; - network = list("MINE") - }, -/turf/open/floor/bluegrid{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/maintenance) -"eQ" = ( -/obj/structure/closet/crate/freezer, -/obj/item/weapon/reagent_containers/blood/empty, -/obj/item/weapon/reagent_containers/blood/empty{ - pixel_x = -3; - pixel_y = -3 - }, -/obj/item/weapon/reagent_containers/blood/AMinus, -/obj/item/weapon/reagent_containers/blood/BMinus{ - pixel_x = -4; - pixel_y = 4 - }, -/obj/item/weapon/reagent_containers/blood/BPlus{ - pixel_x = 1; - pixel_y = 2 - }, -/obj/item/weapon/reagent_containers/blood/OMinus, -/obj/item/weapon/reagent_containers/blood/OPlus{ - pixel_x = -2; - pixel_y = -1 - }, -/obj/item/weapon/reagent_containers/blood/random, -/obj/item/weapon/reagent_containers/blood/random, -/obj/item/weapon/reagent_containers/blood/random, -/obj/machinery/camera{ - c_tag = "Sleeper Room"; - dir = 1; - network = list("MINE") - }, -/turf/open/floor/plasteel/white{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/living_quarters) -"eR" = ( -/turf/open/floor/plasteel/white{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/living_quarters) -"eS" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - on = 1 - }, -/turf/open/floor/plasteel/white{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/living_quarters) -"eT" = ( -/obj/structure/table, -/obj/item/weapon/storage/firstaid/regular, -/turf/open/floor/plasteel/whiteblue/side{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; - dir = 4; - tag = "icon-whiteblue (EAST)" - }, -/area/mine/living_quarters) -"eU" = ( -/turf/open/floor/plasteel/purple/side{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; - dir = 8 - }, -/area/mine/production) -"eV" = ( -/obj/machinery/light{ - dir = 4 - }, -/obj/machinery/camera{ - c_tag = "Shuttle Docking Foyer"; - dir = 8; - network = list("MINE") - }, -/obj/machinery/newscaster{ - pixel_x = 30; - pixel_y = 1 - }, -/turf/open/floor/plasteel/brown{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; - dir = 4 - }, -/area/mine/production) -"eW" = ( -/obj/structure/closet/crate{ - icon_state = "crateopen"; - opened = 1 - }, -/turf/open/floor/plasteel/bot{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/production) -"eX" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 2; - on = 1 - }, -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/production) -"eY" = ( -/obj/machinery/camera{ - c_tag = "Processing Area Room"; - dir = 8; - network = list("MINE") - }, -/obj/item/device/radio/intercom{ - dir = 8; - name = "Station Intercom (General)"; - pixel_x = 28 - }, -/turf/open/floor/plasteel/brown{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; - dir = 4 - }, -/area/mine/production) -"eZ" = ( -/obj/machinery/mineral/unloading_machine{ - dir = 1; - icon_state = "unloader-corner"; - input_dir = 1; - output_dir = 2 - }, -/turf/open/floor/plating/warnplate{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; - dir = 9 - }, -/area/mine/production) -"fa" = ( -/obj/machinery/door/airlock/maintenance{ - name = "Mining Station Communications"; - req_access_txt = "48" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/maintenance) -"fb" = ( -/obj/effect/spawner/structure/window, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/living_quarters) -"fc" = ( -/obj/machinery/door/airlock/glass_medical{ - id_tag = null; - name = "Infirmary"; - req_access_txt = "0" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/white{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/living_quarters) -"fd" = ( -/obj/machinery/camera{ - c_tag = "Storage"; - dir = 2; - network = list("MINE") - }, -/turf/open/floor/plasteel/brown{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; - dir = 5 - }, -/area/mine/living_quarters) -"fe" = ( -/turf/open/floor/plasteel/brown/corner{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; - dir = 1; - tag = "icon-browncorner (NORTH)" - }, -/area/mine/production) -"ff" = ( -/obj/effect/spawner/structure/window, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/production) -"fg" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/production) -"fh" = ( -/obj/machinery/conveyor_switch/oneway{ - id = "mining_internal"; - name = "mining conveyor" - }, -/turf/open/floor/plasteel/purple/side{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; - dir = 4 - }, -/area/mine/production) -"fi" = ( -/obj/machinery/conveyor{ - dir = 2; - id = "mining_internal" - }, -/turf/open/floor/plating/warnplate{ - tag = "icon-warnplate (WEST)"; - dir = 8; - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/production) -"fj" = ( -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/living_quarters) -"fk" = ( -/turf/open/floor/plasteel/purple/corner{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; - dir = 4 - }, -/area/mine/living_quarters) -"fl" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/turf/open/floor/plasteel/brown{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; - dir = 1; - tag = "icon-brown (NORTH)" - }, -/area/mine/living_quarters) -"fm" = ( -/turf/open/floor/plasteel/purple/corner{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; - dir = 1 - }, -/area/mine/living_quarters) -"fn" = ( -/obj/machinery/airalarm{ - frequency = 1439; - pixel_y = 23 - }, -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/living_quarters) -"fo" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/brown{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; - dir = 1; - tag = "icon-brown (NORTH)" - }, -/area/mine/living_quarters) -"fp" = ( -/obj/machinery/power/apc{ - dir = 1; - name = "Mining Station Port Wing APC"; - pixel_x = 1; - pixel_y = 25 - }, -/obj/structure/cable{ - icon_state = "0-2"; - pixel_y = 1; - d2 = 2 - }, -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/living_quarters) -"fq" = ( -/turf/open/floor/plasteel/purple/corner{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/living_quarters) -"fr" = ( -/obj/machinery/door/airlock/glass_mining{ - name = "Processing Area"; - req_access_txt = "48" - }, -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/living_quarters) -"fs" = ( -/obj/machinery/light{ - dir = 4 - }, -/turf/open/floor/plasteel/brown{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; - dir = 4 - }, -/area/mine/production) -"ft" = ( -/obj/machinery/mineral/processing_unit_console, -/turf/closed/wall{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/production) -"fu" = ( -/obj/machinery/mineral/processing_unit{ - dir = 1; - output_dir = 2 - }, -/turf/open/floor/plating/warnplate{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; - dir = 9 - }, -/area/mine/production) -"fv" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/living_quarters) -"fw" = ( -/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4"; - tag = "" - }, -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/living_quarters) -"fx" = ( -/obj/structure/fluff/drake_statue/falling, -/turf/open/indestructible/necropolis, -/area/lavaland/surface/outdoors) -"fy" = ( -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/turf/closed/mineral/random/volcanic, -/area/lavaland/surface/outdoors) -"fz" = ( -/obj/machinery/camera{ - c_tag = "Crew Area Hallway West"; - network = list("MINE") - }, -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/living_quarters) -"fA" = ( -/obj/machinery/camera{ - c_tag = "Dormatories"; - dir = 4; - network = list("MINE") - }, -/turf/open/floor/plasteel/purple/corner{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; - dir = 1 - }, -/area/mine/living_quarters) -"fB" = ( -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/plasteel/purple/corner{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; - dir = 4 - }, -/area/mine/living_quarters) -"fC" = ( -/obj/machinery/airalarm{ - pixel_y = 24 - }, -/turf/open/floor/bluegrid{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/maintenance) -"fD" = ( -/turf/open/floor/plasteel/white{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/laborcamp) -"fE" = ( -/obj/machinery/light/small, -/turf/open/floor/plasteel/loadingarea{ - tag = "icon-loadingarea (EAST)"; - dir = 4; - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/laborcamp) -"fF" = ( -/turf/open/floor/plasteel/delivery{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/laborcamp) -"fG" = ( -/obj/machinery/mineral/processing_unit{ - dir = 1; - output_dir = 2 - }, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/laborcamp) -"fH" = ( -/turf/open/floor/plasteel/loadingarea{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; - dir = 8 - }, -/area/mine/laborcamp) -"fI" = ( -/turf/closed/wall{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/lavaland/surface/outdoors) -"fJ" = ( -/turf/closed/mineral/random/volcanic, -/area/lavaland/surface/outdoors/explored) -"fK" = ( -/turf/closed/mineral/random/labormineral/volcanic, -/area/lavaland/surface/outdoors) -"fL" = ( -/obj/structure/ore_box, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/lavaland/surface/outdoors/explored) -"fM" = ( -/obj/structure/gulag_beacon, -/turf/open/floor/plasteel{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/laborcamp) -"fN" = ( -/turf/closed/wall{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/laborcamp/security) -"fO" = ( -/obj/effect/spawner/structure/window/reinforced, -/turf/open/floor/plating{ - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - }, -/area/mine/laborcamp/security) -"fP" = ( -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/turf/closed/indestructible/riveted, -/area/ruin/unpowered{ - name = "Necropolis Bridge" - }) +"aa" = (/turf/closed/indestructible/riveted,/area/lavaland/surface/outdoors) +"ab" = (/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) +"ac" = (/obj/machinery/lavaland_controller,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area) +"ad" = (/obj/structure/lavaland_door,/turf/closed/indestructible/riveted,/area/lavaland/surface/outdoors) +"ae" = (/turf/closed/mineral/random/high_chance/volcanic,/area/lavaland/surface/outdoors) +"af" = (/obj/effect/light_emitter,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) +"ag" = (/turf/open/floor/plating/lava/smooth/lava_land_surface,/area/lavaland/surface/outdoors) +"ah" = (/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/obj/item/weapon/pickaxe,/turf/closed/indestructible/riveted,/area/ruin/unpowered{name = "Necropolis Bridge"}) +"ai" = (/turf/open/floor/plasteel/neutral{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; initial_gas_mix = "o2=14;n2=23;TEMP=300"},/area/ruin/unpowered{name = "Necropolis Bridge"}) +"aj" = (/obj/structure/window/reinforced{dir = 8},/turf/open/floor/plasteel/neutral{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; initial_gas_mix = "o2=14;n2=23;TEMP=300"},/area/ruin/unpowered{name = "Necropolis Bridge"}) +"ak" = (/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plasteel/neutral{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; initial_gas_mix = "o2=14;n2=23;TEMP=300"},/area/ruin/unpowered{name = "Necropolis Bridge"}) +"al" = (/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plating/lava/smooth/lava_land_surface,/area/lavaland/surface/outdoors) +"am" = (/obj/structure/window/reinforced{dir = 8},/turf/open/floor/plating/lava/smooth/lava_land_surface,/area/lavaland/surface/outdoors) +"an" = (/turf/closed/mineral/random/volcanic,/area/lavaland/surface/outdoors) +"ao" = (/turf/closed/mineral/random/labormineral/volcanic,/area/lavaland/surface/outdoors) +"ap" = (/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/turf/closed/mineral/random/volcanic,/area/lavaland/surface/outdoors) +"aq" = (/obj/effect/spawner/structure/window/reinforced,/turf/open/floor/plating{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/laborcamp) +"ar" = (/turf/closed/wall{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/laborcamp) +"as" = (/obj/structure/table,/turf/open/floor/plasteel/white{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/laborcamp) +"at" = (/obj/structure/table,/obj/item/weapon/storage/firstaid/regular,/turf/open/floor/plasteel/white{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/laborcamp) +"au" = (/obj/structure/bed,/obj/item/weapon/bedsheet/medical,/obj/machinery/camera{c_tag = "Labor Camp Medical"; dir = 8; network = list("Labor")},/turf/open/floor/plasteel/white{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/laborcamp) +"av" = (/obj/structure/rack{dir = 1},/obj/item/weapon/storage/bag/ore,/obj/item/weapon/pickaxe,/obj/item/device/flashlight,/obj/item/clothing/glasses/meson,/turf/open/floor/plasteel{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/laborcamp) +"aw" = (/obj/structure/rack{dir = 1},/obj/item/weapon/storage/bag/ore,/obj/item/device/flashlight,/obj/item/weapon/pickaxe,/obj/item/clothing/glasses/meson,/turf/open/floor/plasteel{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/laborcamp) +"ax" = (/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors/explored) +"ay" = (/turf/open/floor/plasteel/white{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/laborcamp) +"az" = (/obj/machinery/light/small{dir = 4},/turf/open/floor/plasteel/white{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/laborcamp) +"aA" = (/turf/open/floor/plasteel{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/laborcamp) +"aB" = (/obj/machinery/portable_atmospherics/canister/oxygen,/obj/machinery/light/small{dir = 4},/turf/open/floor/plasteel{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/laborcamp) +"aC" = (/obj/machinery/door/airlock/glass_medical{id_tag = null; name = "Infirmary"; req_access_txt = "0"},/turf/open/floor/plasteel/white{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/laborcamp) +"aD" = (/obj/structure/closet/crate/internals,/obj/item/weapon/tank/internals/emergency_oxygen,/obj/item/weapon/tank/internals/emergency_oxygen,/obj/item/weapon/tank/internals/emergency_oxygen,/obj/item/weapon/tank/internals/emergency_oxygen,/obj/item/clothing/mask/breath,/obj/item/clothing/mask/breath,/obj/item/clothing/mask/breath,/obj/item/clothing/mask/breath,/turf/open/floor/plasteel{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/laborcamp) +"aE" = (/obj/item/device/radio/intercom{desc = "Talk through this. It looks like it has been modified to not broadcast."; dir = 2; name = "Prison Intercom (General)"; pixel_x = 0; pixel_y = 24; prison_radio = 1},/turf/open/floor/plasteel{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/laborcamp) +"aF" = (/obj/machinery/door/airlock{name = "Labor Camp Storage"},/turf/open/floor/plasteel{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/laborcamp) +"aG" = (/obj/structure/table,/obj/item/trash/plate,/obj/item/weapon/kitchen/fork,/turf/open/floor/plasteel{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/laborcamp) +"aH" = (/obj/structure/chair{dir = 8},/turf/open/floor/plasteel{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/laborcamp) +"aI" = (/obj/machinery/door/airlock{name = "Labor Camp External Access"},/turf/open/floor/plasteel{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/laborcamp) +"aJ" = (/obj/machinery/light/small{dir = 1},/turf/open/floor/plasteel{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/laborcamp) +"aK" = (/obj/machinery/door/airlock{name = "Labor Camp External Access"},/obj/structure/fans/tiny,/turf/open/floor/plasteel{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/laborcamp) +"aL" = (/obj/structure/chair{dir = 1},/turf/open/floor/plasteel{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/laborcamp) +"aM" = (/obj/machinery/door/airlock{name = "Vending"},/turf/open/floor/plasteel{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/laborcamp) +"aN" = (/obj/machinery/light/small,/turf/open/floor/plasteel/loadingarea{tag = "icon-loadingarea (EAST)"; dir = 4; baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/laborcamp) +"aO" = (/turf/open/floor/plasteel/delivery{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/laborcamp) +"aP" = (/obj/machinery/camera{c_tag = "Labor Camp External"; dir = 4; network = list("Labor")},/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) +"aQ" = (/obj/machinery/vending/sustenance,/turf/open/floor/plasteel{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/laborcamp) +"aR" = (/obj/machinery/light/small{dir = 4},/turf/open/floor/plasteel{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/laborcamp) +"aS" = (/obj/machinery/mineral/unloading_machine{dir = 1; icon_state = "unloader-corner"; input_dir = 1; output_dir = 2},/turf/open/floor/plating{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/laborcamp) +"aT" = (/obj/structure/ore_box,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors/explored) +"aU" = (/obj/machinery/flasher{id = "Labor"; pixel_x = 0; pixel_y = 0},/turf/closed/wall{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/laborcamp) +"aV" = (/obj/machinery/conveyor{dir = 2; id = "gulag"},/turf/open/floor/plating{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/laborcamp) +"aW" = (/obj/structure/closet/crate,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors/explored) +"aX" = (/obj/machinery/door/airlock/glass_security{name = "Labor Camp Shuttle Security Airlock"; req_access_txt = "2"},/obj/structure/fans/tiny,/turf/open/floor/plasteel{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/laborcamp) +"aY" = (/obj/machinery/light/small{dir = 1},/obj/machinery/button/door{id = "Labor"; name = "Labor Camp Lockdown"; pixel_x = 0; pixel_y = 28; req_access_txt = "2"},/turf/open/floor/plasteel{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/laborcamp) +"aZ" = (/obj/machinery/door/airlock/glass_security{name = "Labor Camp Shuttle Security Airlock"; req_access_txt = "2"},/turf/open/floor/plasteel{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/laborcamp) +"ba" = (/obj/machinery/door/poddoor/preopen{id = "Labor"; name = "labor camp blast door"},/turf/open/floor/plasteel{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/laborcamp) +"bb" = (/obj/machinery/camera{c_tag = "Labor Camp Central"; network = list("Labor")},/turf/open/floor/plasteel{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/laborcamp) +"bc" = (/obj/machinery/conveyor_switch/oneway{id = "gulag"},/turf/open/floor/plasteel{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/laborcamp) +"bd" = (/obj/machinery/mineral/processing_unit_console{dir = 2; machinedir = 4},/turf/closed/wall{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/laborcamp) +"be" = (/obj/machinery/mineral/processing_unit{dir = 1; output_dir = 2},/turf/open/floor/plating{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/laborcamp) +"bf" = (/turf/closed/wall{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/eva) +"bg" = (/obj/effect/spawner/structure/window/reinforced,/turf/open/floor/plating{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/eva) +"bh" = (/turf/closed/wall{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/lavaland/surface/outdoors) +"bi" = (/obj/machinery/computer/shuttle/labor/one_way,/turf/open/floor/plasteel{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/laborcamp) +"bj" = (/obj/structure/gulag_beacon,/turf/open/floor/plasteel{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/laborcamp) +"bk" = (/obj/machinery/status_display{density = 0; layer = 4; pixel_x = 0; pixel_y = 32},/turf/open/floor/plasteel{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/laborcamp) +"bl" = (/turf/open/floor/plasteel/loadingarea{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; dir = 8},/area/mine/laborcamp) +"bm" = (/obj/machinery/conveyor{dir = 8; id = "gulag"},/turf/open/floor/plating{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/laborcamp) +"bn" = (/obj/machinery/conveyor{dir = 10; icon_state = "conveyor0"; id = "gulag"},/turf/open/floor/plating{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/laborcamp) +"bo" = (/obj/structure/table,/obj/item/weapon/pickaxe,/obj/item/device/gps/mining,/obj/item/device/gps/mining,/obj/item/device/gps/mining,/obj/item/device/gps/mining,/turf/open/floor/plasteel/purple/side{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; dir = 9},/area/mine/eva) +"bp" = (/obj/machinery/suit_storage_unit/mining,/turf/open/floor/plasteel/brown{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; dir = 1},/area/mine/eva) +"bq" = (/obj/machinery/suit_storage_unit/mining,/turf/open/floor/plasteel/purple/side{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; dir = 5},/area/mine/eva) +"br" = (/turf/closed/wall{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/production) +"bs" = (/obj/effect/spawner/structure/window/reinforced,/turf/open/floor/plating{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/production) +"bt" = (/obj/machinery/camera{c_tag = "EVA"; dir = 4; network = list("MINE")},/obj/machinery/airalarm{dir = 4; pixel_x = -23; pixel_y = 0},/obj/machinery/light{icon_state = "tube1"; dir = 8},/obj/structure/table,/obj/item/weapon/storage/toolbox/mechanical{pixel_x = -2; pixel_y = -1},/turf/open/floor/plasteel/brown{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; dir = 8},/area/mine/eva) +"bu" = (/turf/open/floor/plasteel{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/eva) +"bv" = (/obj/machinery/light_switch{pixel_x = 27},/turf/open/floor/plasteel/brown{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; dir = 4},/area/mine/eva) +"bw" = (/obj/machinery/light/small{dir = 8},/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/mine/eva) +"bx" = (/obj/docking_port/stationary{area_type = /area/lavaland/surface/outdoors; dir = 8; dwidth = 2; height = 5; id = "laborcamp_away"; name = "labor camp"; turf_type = /turf/open/floor/plating/lava/smooth; width = 9},/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors/explored) +"by" = (/obj/machinery/door/airlock/glass_security{name = "Labor Camp Shuttle Prisoner Airlock"; req_access_txt = "0"},/obj/structure/fans/tiny,/turf/open/floor/plasteel{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/laborcamp) +"bz" = (/obj/machinery/door/airlock/glass_security{name = "Labor Camp Shuttle Prisoner Airlock"; req_access_txt = "0"},/turf/open/floor/plasteel{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/laborcamp) +"bA" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/floor/plasteel{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/laborcamp) +"bB" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/open/floor/plasteel{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/laborcamp) +"bC" = (/obj/machinery/door/airlock/glass_security{name = "Labor Camp Backroom"; req_access_txt = "2"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/open/floor/plasteel{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/laborcamp) +"bD" = (/obj/machinery/power/apc{dir = 1; name = "Labor Camp APC"; pixel_y = 24},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/open/floor/plasteel{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/laborcamp) +"bE" = (/obj/machinery/airalarm{frequency = 1439; pixel_y = 23},/obj/machinery/computer/shuttle/mining{req_access = "0"},/turf/open/floor/plasteel/purple/side{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; dir = 1},/area/mine/production) +"bF" = (/obj/structure/closet/crate,/turf/open/floor/plasteel/brown{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; dir = 1},/area/mine/production) +"bG" = (/turf/open/floor/plasteel/purple/corner{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/production) +"bH" = (/obj/effect/spawner/structure/window,/turf/open/floor/plating{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/eva) +"bI" = (/obj/structure/table,/obj/machinery/cell_charger,/turf/open/floor/plasteel/purple/corner{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; dir = 8},/area/mine/eva) +"bJ" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 2; on = 1},/turf/open/floor/plasteel{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/eva) +"bK" = (/obj/structure/tank_dispenser/oxygen,/turf/open/floor/plasteel/purple/corner{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/eva) +"bL" = (/obj/machinery/light/small{dir = 1},/turf/open/floor/plasteel/purple/corner{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; dir = 8},/area/mine/eva) +"bM" = (/turf/open/floor/plasteel/purple/corner{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/eva) +"bN" = (/obj/machinery/door/airlock/glass_security{name = "Labor Camp Monitoring"; req_access_txt = "2"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/laborcamp) +"bO" = (/obj/machinery/door/airlock/maintenance{name = "Labor Camp Maintenance"; req_access_txt = "2"},/obj/structure/cable{tag = "icon-1-10"; icon_state = "1-10"; d1 = 2; d2 = 4},/turf/open/floor/plating{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/laborcamp) +"bP" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'KEEP CLEAR OF DOCKING AREA'."; name = "KEEP CLEAR: DOCKING AREA"; pixel_y = 0},/obj/effect/spawner/structure/window/reinforced,/turf/open/floor/plating{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/production) +"bQ" = (/obj/item/device/radio/beacon,/turf/open/floor/plasteel/purple/corner{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; dir = 8},/area/mine/production) +"bR" = (/turf/open/floor/plasteel{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/production) +"bS" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/turf/open/floor/plasteel{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/production) +"bT" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/open/floor/plasteel/brown{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; dir = 4},/area/mine/production) +"bU" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/door/airlock/glass_mining{name = "Mining Station EVA"; req_access_txt = "54"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/eva) +"bV" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/open/floor/plasteel/brown{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; dir = 8},/area/mine/eva) +"bW" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/open/floor/plasteel{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/eva) +"bX" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/turf/open/floor/plasteel{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/eva) +"bY" = (/turf/open/floor/plasteel/brown{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; dir = 4},/area/mine/eva) +"bZ" = (/obj/machinery/door/airlock/external{glass = 1; name = "Mining External Airlock"; opacity = 0; req_access_txt = "54"},/turf/open/floor/plasteel{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/eva) +"ca" = (/turf/open/floor/plasteel/brown{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; dir = 8},/area/mine/eva) +"cb" = (/obj/machinery/door/airlock/external{glass = 1; name = "Mining External Airlock"; opacity = 0; req_access_txt = "54"},/obj/structure/fans/tiny,/turf/open/floor/plasteel{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/eva) +"cc" = (/turf/closed/mineral/random/volcanic,/area/lavaland/surface/outdoors/explored) +"cd" = (/turf/closed/wall{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/laborcamp/security) +"ce" = (/obj/structure/table,/obj/machinery/recharger,/obj/machinery/light/small{dir = 8},/turf/open/floor/plasteel{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/laborcamp/security) +"cf" = (/obj/structure/chair/office/dark,/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/mob/living/simple_animal/bot/secbot/beepsky{desc = "Powered by tears and swet of laborer."; name = "Prison Ofitser"},/turf/open/floor/plasteel{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/laborcamp/security) +"cg" = (/obj/structure/table,/obj/item/weapon/paper_bin{pixel_x = 1; pixel_y = 9},/obj/item/weapon/pen,/obj/machinery/power/apc{dir = 4; name = "Labor Camp Security APC"; pixel_x = 24; pixel_y = 0},/obj/machinery/camera{c_tag = "Labor Camp Monitoring"; network = list("Labor")},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/open/floor/plasteel{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/laborcamp/security) +"ch" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable{tag = "icon-5-6"; icon_state = "5-6"; d1 = 2; d2 = 4},/turf/open/floor/plating{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/laborcamp) +"ci" = (/obj/machinery/power/terminal,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/open/floor/plating{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/laborcamp) +"cj" = (/obj/machinery/light/small{dir = 1},/turf/open/floor/plating{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/laborcamp) +"ck" = (/turf/open/floor/plating{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/laborcamp) +"cl" = (/obj/docking_port/stationary{area_type = /area/lavaland/surface/outdoors; dir = 8; dwidth = 3; height = 5; id = "mining_away"; name = "lavaland mine"; turf_type = /turf/open/floor/plating/asteroid/basalt/lava_land_surface; width = 7},/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) +"cm" = (/obj/machinery/door/airlock/external{glass = 1; name = "Mining Shuttle Airlock"; opacity = 0; req_access_txt = "0"},/obj/structure/fans/tiny,/turf/open/floor/plasteel{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/production) +"cn" = (/obj/machinery/door/airlock/external{glass = 1; name = "Mining Shuttle Airlock"; opacity = 0; req_access_txt = "0"},/turf/open/floor/plasteel{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/production) +"co" = (/turf/open/floor/plasteel/brown{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; dir = 8},/area/mine/production) +"cp" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; layer = 2.4; on = 1},/turf/open/floor/plasteel{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/production) +"cq" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{tag = "icon-manifold-b-f (EAST)"; dir = 4},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plasteel{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/production) +"cr" = (/turf/open/floor/plasteel/purple/corner{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; dir = 4},/area/mine/production) +"cs" = (/obj/machinery/power/apc{dir = 2; name = "Mining EVA APC"; pixel_x = 1; pixel_y = -23},/obj/structure/cable,/obj/machinery/recharge_station,/turf/open/floor/plasteel/purple/corner{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; dir = 1},/area/mine/eva) +"ct" = (/obj/machinery/mech_bay_recharge_port,/obj/structure/cable,/turf/open/floor/plating{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/eva) +"cu" = (/turf/open/floor/mech_bay_recharge_floor{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/eva) +"cv" = (/obj/machinery/computer/mech_bay_power_console,/turf/open/floor/plasteel/purple/corner{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; dir = 4},/area/mine/eva) +"cw" = (/obj/structure/closet/emcloset,/turf/open/floor/plasteel/purple/corner{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; dir = 1},/area/mine/eva) +"cx" = (/obj/structure/ore_box,/turf/open/floor/plasteel/purple/corner{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; dir = 4},/area/mine/eva) +"cy" = (/obj/item/weapon/pickaxe,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) +"cz" = (/obj/structure/ore_box,/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) +"cA" = (/obj/machinery/computer/secure_data,/turf/open/floor/plasteel{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/laborcamp/security) +"cB" = (/obj/machinery/computer/security{name = "Labor Camp Monitoring"; network = list("Labor")},/turf/open/floor/plasteel{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/laborcamp/security) +"cC" = (/obj/machinery/computer/prisoner,/turf/open/floor/plasteel{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/laborcamp/security) +"cD" = (/obj/machinery/power/port_gen/pacman{anchored = 1},/obj/structure/cable,/turf/open/floor/plating{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/laborcamp) +"cE" = (/obj/machinery/power/smes{charge = 5e+006},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/cable{tag = "icon-0-9"; icon_state = "0-9"; d1 = 2; d2 = 4},/turf/open/floor/plating{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/laborcamp) +"cF" = (/obj/machinery/portable_atmospherics/canister/air,/turf/open/floor/plating{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/laborcamp) +"cG" = (/obj/structure/reagent_dispensers/fueltank,/turf/open/floor/plating{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/laborcamp) +"cH" = (/turf/open/floor/plasteel/purple/corner{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; dir = 1},/area/mine/production) +"cI" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plasteel{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/production) +"cJ" = (/turf/open/floor/plasteel/brown{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; dir = 4},/area/mine/production) +"cK" = (/obj/effect/spawner/structure/window/reinforced,/turf/open/floor/plating{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/laborcamp/security) +"cL" = (/turf/open/floor/plasteel/purple/corner{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; dir = 8},/area/mine/production) +"cM" = (/turf/open/floor/plasteel/purple/side{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; dir = 4},/area/mine/production) +"cN" = (/obj/machinery/door/airlock{name = "Closet"; req_access_txt = "0"},/turf/open/floor/plating{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/production) +"cO" = (/obj/machinery/light/small{dir = 1},/turf/open/floor/plating{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/production) +"cP" = (/obj/machinery/space_heater,/turf/open/floor/plating{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/production) +"cQ" = (/turf/closed/wall{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/living_quarters) +"cR" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"},/turf/closed/wall{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/living_quarters) +"cS" = (/obj/item/device/radio/intercom{dir = 8; name = "Station Intercom (General)"; pixel_x = -28},/turf/open/floor/plasteel/brown{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; dir = 8},/area/mine/production) +"cT" = (/turf/open/floor/plating/lava/smooth/lava_land_surface,/area/lavaland/surface/outdoors/explored) +"cU" = (/turf/closed/wall/r_wall{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/maintenance) +"cV" = (/obj/effect/spawner/structure/window/reinforced,/turf/open/floor/plating{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/living_quarters) +"cW" = (/obj/machinery/power/smes{charge = 5e+006},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/open/floor/plating{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/living_quarters) +"cX" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/light/small{dir = 1},/obj/structure/closet/crate/secure/loot,/turf/open/floor/plating{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/living_quarters) +"cY" = (/obj/machinery/portable_atmospherics/canister/oxygen,/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/turf/open/floor/plating{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/living_quarters) +"cZ" = (/obj/structure/mopbucket,/obj/item/weapon/mop,/obj/item/weapon/reagent_containers/glass/bucket,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/living_quarters) +"da" = (/obj/machinery/atmospherics/components/unary/tank/air{dir = 8},/turf/open/floor/plating{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/living_quarters) +"db" = (/obj/machinery/power/apc{dir = 8; name = "Mining Station Starboard Wing APC"; pixel_x = -27; pixel_y = 2},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/open/floor/plasteel/purple/side{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; dir = 8},/area/mine/production) +"dc" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/open/floor/plasteel{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/production) +"dd" = (/obj/machinery/mineral/equipment_vendor,/turf/open/floor/plasteel/brown{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; dir = 5},/area/mine/production) +"de" = (/obj/machinery/mineral/mint{input_dir = 4},/turf/open/floor/plasteel{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/production) +"df" = (/obj/machinery/light/small{dir = 1},/turf/open/floor/plasteel/loadingarea{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; dir = 8},/area/mine/production) +"dg" = (/obj/structure/closet/crate,/obj/machinery/airalarm{frequency = 1439; pixel_y = 23},/turf/open/floor/plasteel/bot{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/production) +"dh" = (/obj/structure/extinguisher_cabinet{pixel_x = -5; pixel_y = 30},/obj/structure/table,/obj/item/weapon/paper{anchored = 0; info = "A hastily written note has been scribbled here...

Please use the ore redemption machine in the science wing for smelting. PLEASE!

--The Research Staff"; name = "URGENT!"},/turf/open/floor/plasteel{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/production) +"di" = (/obj/structure/ore_box,/turf/open/floor/plasteel/bot{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/production) +"dj" = (/turf/open/floor/plasteel/bot{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/production) +"dk" = (/turf/open/floor/bluegrid{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/maintenance) +"dl" = (/obj/structure/cable{icon_state = "0-2"; pixel_y = 1; d2 = 2},/obj/machinery/power/apc{dir = 1; name = "Mining Communications APC"; pixel_x = 1; pixel_y = 25},/turf/open/floor/plasteel/black{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/maintenance) +"dm" = (/obj/machinery/telecomms/relay/preset/mining,/obj/machinery/light/small{dir = 1},/turf/open/floor/plasteel/vault{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; dir = 8; tag = "icon-vault (WEST)"},/area/mine/maintenance) +"dn" = (/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/turf/open/floor/plasteel/black{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/maintenance) +"do" = (/obj/machinery/airalarm{pixel_y = 24},/turf/open/floor/bluegrid{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/maintenance) +"dp" = (/obj/machinery/light/small{dir = 8},/obj/machinery/airalarm{frequency = 1439; pixel_y = 23},/obj/machinery/iv_drip{density = 0},/turf/open/floor/plasteel/whiteblue/side{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; dir = 1; tag = "icon-whiteblue (NORTH)"},/area/mine/living_quarters) +"dq" = (/turf/open/floor/plasteel/whiteblue/side{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; dir = 1; tag = "icon-whiteblue (NORTH)"},/area/mine/living_quarters) +"dr" = (/obj/structure/table,/obj/item/weapon/storage/firstaid/toxin{pixel_x = 3; pixel_y = 3},/turf/open/floor/plasteel/whiteblue/side{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; dir = 5; tag = "icon-whiteblue (NORTHEAST)"},/area/mine/living_quarters) +"ds" = (/obj/machinery/power/terminal{icon_state = "term"; dir = 1},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/open/floor/plating{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/living_quarters) +"dt" = (/turf/open/floor/plating{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/living_quarters) +"du" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/open/floor/plating{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/living_quarters) +"dv" = (/obj/machinery/meter,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/living_quarters) +"dw" = (/obj/machinery/mineral/equipment_vendor,/turf/open/floor/plasteel/purple/side{dir = 4},/area/mine/production) +"dx" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/production) +"dy" = (/turf/open/floor/plasteel/loadingarea{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/production) +"dz" = (/turf/open/floor/plasteel/loadingarea{tag = "icon-loadingarea (EAST)"; dir = 4; baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/production) +"dA" = (/obj/machinery/light/small{dir = 4},/turf/open/floor/plasteel/delivery{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/production) +"dB" = (/obj/machinery/vending/boozeomat{req_access_txt = "0"},/obj/effect/decal/cleanable/cobweb,/turf/open/floor/wood{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/living_quarters) +"dC" = (/obj/structure/table/wood/bar,/obj/item/weapon/reagent_containers/food/drinks/bottle/whiskey,/turf/open/floor/wood{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/living_quarters) +"dD" = (/obj/structure/table/wood/bar,/obj/machinery/light{tag = "icon-tube1 (NORTH)"; icon_state = "tube1"; dir = 1},/obj/item/weapon/reagent_containers/food/drinks/drinkingglass,/obj/item/weapon/reagent_containers/food/drinks/drinkingglass,/obj/item/weapon/reagent_containers/food/drinks/drinkingglass,/obj/item/weapon/reagent_containers/food/drinks/drinkingglass,/obj/item/weapon/reagent_containers/food/drinks/drinkingglass,/obj/item/weapon/reagent_containers/food/drinks/drinkingglass,/turf/open/floor/wood{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/living_quarters) +"dE" = (/obj/machinery/vending/cigarette{contraband = list(); name = "\improper ShadyCigs Super Deluxe"; premium = list(/obj/item/weapon/lighter = 6); products = list(/obj/item/weapon/storage/box/matches = 10, /obj/item/weapon/lighter = 6, /obj/item/weapon/storage/fancy/cigarettes/cigars = 3, /obj/item/weapon/storage/fancy/cigarettes/cigars/havana = 3, /obj/item/weapon/storage/fancy/cigarettes/cigars/cohiba = 3); refill_canister = null},/turf/open/floor/wood{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/living_quarters) +"dF" = (/obj/structure/closet/crate/bin,/obj/machinery/camera{c_tag = "Crew Area Hallway East"; network = list("MINE")},/obj/item/toy/cards/deck/cas,/obj/item/toy/cards/deck/cas/black,/turf/open/floor/wood{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/living_quarters) +"dG" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/open/floor/bluegrid{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/maintenance) +"dH" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/turf/open/floor/plasteel/black{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/maintenance) +"dI" = (/obj/machinery/light_switch{pixel_y = -25},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/turf/open/floor/bluegrid{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/maintenance) +"dJ" = (/obj/machinery/camera{c_tag = "Communications Relay"; dir = 8; network = list("MINE")},/turf/open/floor/bluegrid{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/maintenance) +"dK" = (/obj/structure/closet/crate/freezer,/obj/item/weapon/reagent_containers/blood/empty,/obj/item/weapon/reagent_containers/blood/empty{pixel_x = -3; pixel_y = -3},/obj/item/weapon/reagent_containers/blood/AMinus,/obj/item/weapon/reagent_containers/blood/BMinus{pixel_x = -4; pixel_y = 4},/obj/item/weapon/reagent_containers/blood/BPlus{pixel_x = 1; pixel_y = 2},/obj/item/weapon/reagent_containers/blood/OMinus,/obj/item/weapon/reagent_containers/blood/OPlus{pixel_x = -2; pixel_y = -1},/obj/item/weapon/reagent_containers/blood/random,/obj/item/weapon/reagent_containers/blood/random,/obj/item/weapon/reagent_containers/blood/random,/obj/machinery/camera{c_tag = "Sleeper Room"; dir = 1; network = list("MINE")},/turf/open/floor/plasteel/white{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/living_quarters) +"dL" = (/turf/open/floor/plasteel/white{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/living_quarters) +"dM" = (/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/turf/open/floor/plasteel/white{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/living_quarters) +"dN" = (/obj/structure/table,/obj/item/weapon/storage/firstaid/regular,/turf/open/floor/plasteel/whiteblue/side{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; dir = 4; tag = "icon-whiteblue (EAST)"},/area/mine/living_quarters) +"dO" = (/obj/structure/cable,/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/power/port_gen/pacman{anchored = 1},/turf/open/floor/plating{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/living_quarters) +"dP" = (/obj/machinery/power/port_gen/pacman{anchored = 1},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/open/floor/plating{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/living_quarters) +"dQ" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/living_quarters) +"dR" = (/obj/structure/reagent_dispensers/fueltank,/turf/open/floor/plating{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/living_quarters) +"dS" = (/turf/open/floor/plasteel/purple/side{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; dir = 8},/area/mine/production) +"dT" = (/obj/machinery/light{dir = 4},/obj/machinery/camera{c_tag = "Shuttle Docking Foyer"; dir = 8; network = list("MINE")},/obj/machinery/newscaster{pixel_x = 30; pixel_y = 1},/turf/open/floor/plasteel/brown{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; dir = 4},/area/mine/production) +"dU" = (/obj/structure/closet/crate{icon_state = "crateopen"; opened = 1},/turf/open/floor/plasteel/bot{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/production) +"dV" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 2; on = 1},/turf/open/floor/plasteel{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/production) +"dW" = (/obj/machinery/camera{c_tag = "Processing Area Room"; dir = 8; network = list("MINE")},/obj/item/device/radio/intercom{dir = 8; name = "Station Intercom (General)"; pixel_x = 28},/turf/open/floor/plasteel/brown{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; dir = 4},/area/mine/production) +"dX" = (/obj/machinery/mineral/unloading_machine{dir = 1; icon_state = "unloader-corner"; input_dir = 1; output_dir = 2},/turf/open/floor/plating/warnplate{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; dir = 9},/area/mine/production) +"dY" = (/obj/item/device/radio/intercom{dir = 8; name = "Station Intercom (General)"; pixel_x = -28},/turf/open/floor/wood{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/living_quarters) +"dZ" = (/turf/open/floor/wood{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/living_quarters) +"ea" = (/obj/machinery/door/airlock/maintenance{name = "Mining Station Communications"; req_access_txt = "48"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/maintenance) +"eb" = (/obj/effect/spawner/structure/window,/turf/open/floor/plating{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/living_quarters) +"ec" = (/obj/machinery/door/airlock/glass_medical{id_tag = null; name = "Infirmary"; req_access_txt = "0"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/white{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/living_quarters) +"ed" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/door/airlock/maintenance{name = "Mining Station Maintenance"; req_access_txt = "48"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/living_quarters) +"ee" = (/turf/open/floor/plasteel/brown/corner{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; dir = 1; tag = "icon-browncorner (NORTH)"},/area/mine/production) +"ef" = (/obj/effect/spawner/structure/window,/turf/open/floor/plating{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/production) +"eg" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/production) +"eh" = (/obj/machinery/conveyor_switch/oneway{id = "mining_internal"; name = "mining conveyor"},/turf/open/floor/plasteel/purple/side{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; dir = 4},/area/mine/production) +"ei" = (/obj/machinery/conveyor{dir = 2; id = "mining_internal"},/turf/open/floor/plating/warnplate{tag = "icon-warnplate (WEST)"; dir = 8; baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/production) +"ej" = (/obj/structure/grille,/obj/structure/window/reinforced/tinted/fulltile,/turf/open/floor/plating{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/living_quarters) +"ek" = (/obj/structure/chair/wood{tag = "icon-wooden_chair (EAST)"; icon_state = "wooden_chair"; dir = 4},/turf/open/floor/wood{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/living_quarters) +"el" = (/obj/structure/table/wood/poker,/obj/item/toy/cards/deck,/turf/open/floor/wood{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/living_quarters) +"em" = (/obj/structure/chair/wood{tag = "icon-wooden_chair (WEST)"; icon_state = "wooden_chair"; dir = 8},/turf/open/floor/wood{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/living_quarters) +"en" = (/turf/open/floor/plasteel{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/living_quarters) +"eo" = (/turf/open/floor/plasteel/purple/corner{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; dir = 4},/area/mine/living_quarters) +"ep" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plasteel/brown{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; dir = 1; tag = "icon-brown (NORTH)"},/area/mine/living_quarters) +"eq" = (/turf/open/floor/plasteel/purple/corner{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; dir = 1},/area/mine/living_quarters) +"er" = (/obj/machinery/camera{c_tag = "Crew Area Hallway West"; network = list("MINE")},/turf/open/floor/plasteel{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/living_quarters) +"es" = (/obj/machinery/airalarm{frequency = 1439; pixel_y = 23},/turf/open/floor/plasteel{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/living_quarters) +"et" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/brown{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; dir = 1; tag = "icon-brown (NORTH)"},/area/mine/living_quarters) +"eu" = (/obj/machinery/power/apc{dir = 1; name = "Mining Station Port Wing APC"; pixel_x = 1; pixel_y = 25},/obj/structure/cable{icon_state = "0-2"; pixel_y = 1; d2 = 2},/turf/open/floor/plasteel{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/living_quarters) +"ev" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/brown{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; dir = 1; tag = "icon-brown (NORTH)"},/area/mine/living_quarters) +"ew" = (/obj/machinery/camera{c_tag = "Crew Area Hallway East"; network = list("MINE")},/turf/open/floor/plasteel/purple/corner{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; dir = 1},/area/mine/living_quarters) +"ex" = (/turf/open/floor/plasteel/purple/corner{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/living_quarters) +"ey" = (/obj/machinery/door/airlock/glass_mining{name = "Processing Area"; req_access_txt = "48"},/turf/open/floor/plasteel{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/living_quarters) +"ez" = (/obj/machinery/light{dir = 4},/turf/open/floor/plasteel/brown{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; dir = 4},/area/mine/production) +"eA" = (/obj/machinery/mineral/processing_unit_console,/turf/closed/wall{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/production) +"eB" = (/obj/machinery/mineral/processing_unit{dir = 1; output_dir = 2},/turf/open/floor/plating/warnplate{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; dir = 9},/area/mine/production) +"eC" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/turf/open/floor/wood{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/living_quarters) +"eD" = (/obj/structure/chair/wood{tag = "icon-wooden_chair (EAST)"; icon_state = "wooden_chair"; dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/wood{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/living_quarters) +"eE" = (/obj/structure/table/wood/poker,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/item/weapon/lighter,/obj/item/clothing/mask/cigarette/cigar/havana,/turf/open/floor/wood{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/living_quarters) +"eF" = (/obj/structure/chair/wood{tag = "icon-wooden_chair (WEST)"; icon_state = "wooden_chair"; dir = 8},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/wood{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/living_quarters) +"eG" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/wood{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/living_quarters) +"eH" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/door/airlock{name = "Cigar Lounge"},/turf/open/floor/plasteel{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/living_quarters) +"eI" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/living_quarters) +"eJ" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{tag = "icon-manifold-b-f (NORTH)"; dir = 1},/turf/open/floor/plasteel{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/living_quarters) +"eK" = (/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden,/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/turf/open/floor/plasteel{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/living_quarters) +"eL" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/open/floor/plasteel{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/living_quarters) +"eM" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/open/floor/plasteel{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/living_quarters) +"eN" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{tag = "icon-manifold-b-f (NORTH)"; dir = 1},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/turf/open/floor/plasteel{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/living_quarters) +"eO" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/open/floor/plasteel{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/living_quarters) +"eP" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{tag = "icon-manifold-b-f (NORTH)"; dir = 1},/turf/open/floor/plasteel{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/living_quarters) +"eQ" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/open/floor/plasteel/brown{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; dir = 4},/area/mine/living_quarters) +"eR" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/door/airlock/glass_mining{name = "Mining Station Bridge"; req_access_txt = "48"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/living_quarters) +"eS" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/open/floor/plasteel/brown{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; dir = 8},/area/mine/living_quarters) +"eT" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/open/floor/plasteel{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/production) +"eU" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/door/airlock/glass_mining{name = "Mining Station Bridge"; req_access_txt = "48"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/production) +"eV" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/brown{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; dir = 8},/area/mine/production) +"eW" = (/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden,/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/open/floor/plasteel{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/production) +"eX" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/production) +"eY" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/brown{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; dir = 4},/area/mine/production) +"eZ" = (/obj/machinery/door/airlock/glass_mining{name = "Processing Area"; req_access_txt = "48"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/production) +"fa" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/brown{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; dir = 8},/area/mine/production) +"fb" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/purple/corner{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/production) +"fc" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/turf/open/floor/plasteel/brown{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/production) +"fd" = (/turf/open/floor/plasteel/purple/side{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; dir = 6},/area/mine/production) +"fe" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; on = 1},/turf/open/floor/wood{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/living_quarters) +"ff" = (/obj/structure/table/wood/poker,/turf/open/floor/wood{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/living_quarters) +"fg" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; on = 1},/turf/open/floor/plasteel/purple/corner{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/living_quarters) +"fh" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/brown{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/living_quarters) +"fi" = (/turf/open/floor/plasteel/purple/corner{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; dir = 8},/area/mine/living_quarters) +"fj" = (/obj/machinery/light,/turf/open/floor/plasteel{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/living_quarters) +"fk" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/living_quarters) +"fl" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; on = 1},/turf/open/floor/plasteel{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/living_quarters) +"fm" = (/obj/machinery/light/small,/turf/open/floor/plasteel/purple/corner{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; dir = 4},/area/mine/living_quarters) +"fn" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; on = 1},/turf/open/floor/plasteel{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/production) +"fo" = (/obj/machinery/light,/obj/machinery/computer/security/telescreen/entertainment{pixel_x = 0; pixel_y = -32},/turf/open/floor/wood{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/living_quarters) +"fp" = (/obj/machinery/light_switch{pixel_y = -25},/turf/open/floor/wood{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/living_quarters) +"fq" = (/obj/machinery/airalarm{dir = 1; pixel_y = -22},/turf/open/floor/wood{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/living_quarters) +"fr" = (/obj/machinery/door/airlock/mining{name = "Mining Station Storage"; req_access_txt = "48"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/living_quarters) +"fs" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/door/airlock{glass = 1; name = "Break Room"; opacity = 0},/turf/open/floor/plasteel{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/living_quarters) +"ft" = (/obj/machinery/airalarm{dir = 1; pixel_y = -22},/obj/structure/closet/crate{icon_state = "crateopen"; opened = 1},/turf/open/floor/plasteel/purple/side{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/production) +"fu" = (/obj/structure/closet/crate{icon_state = "crateopen"; opened = 1},/obj/machinery/light,/turf/open/floor/plasteel/brown{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/production) +"fv" = (/obj/structure/closet/crate,/turf/open/floor/plasteel/purple/side{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/production) +"fw" = (/obj/structure/closet/crate{icon_state = "crateopen"; opened = 1},/turf/open/floor/plasteel/brown{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; dir = 6},/area/mine/production) +"fx" = (/turf/open/floor/plasteel/loadingarea{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; dir = 8},/area/mine/production) +"fy" = (/obj/machinery/conveyor{dir = 8; id = "mining_internal"},/obj/structure/plasticflaps,/turf/open/floor/plating/warnplate{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; dir = 9},/area/mine/production) +"fz" = (/obj/machinery/conveyor{dir = 8; id = "mining_internal"},/turf/open/floor/plating/warnplate{tag = "icon-warnplate (NORTH)"; dir = 1; baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/production) +"fA" = (/obj/machinery/conveyor{icon_state = "conveyor0"; dir = 10; id = "mining_internal"},/obj/machinery/light/small{dir = 4},/turf/open/floor/plating/warnplate/corner{tag = "icon-warnplatecorner (EAST)"; dir = 4; baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/production) +"fB" = (/obj/machinery/mineral/equipment_vendor,/turf/open/floor/plasteel/brown{tag = "icon-brown (NORTHWEST)"; dir = 9; baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/living_quarters) +"fC" = (/obj/machinery/light/small{dir = 1},/turf/open/floor/plasteel/purple/corner{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; dir = 4},/area/mine/living_quarters) +"fD" = (/obj/machinery/airalarm{frequency = 1439; pixel_y = 23},/turf/open/floor/plasteel/purple/corner{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; dir = 1},/area/mine/living_quarters) +"fE" = (/obj/machinery/camera{c_tag = "Storage"; dir = 2; network = list("MINE")},/obj/structure/table,/obj/machinery/cell_charger,/turf/open/floor/plasteel/brown{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; dir = 5},/area/mine/living_quarters) +"fF" = (/obj/structure/bed,/obj/item/weapon/bedsheet/brown,/obj/machinery/airalarm{frequency = 1439; pixel_y = 23},/turf/open/floor/carpet{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/living_quarters) +"fG" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/carpet{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/living_quarters) +"fH" = (/obj/machinery/door/airlock{id_tag = "miningdorm1"; name = "Room 1"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/living_quarters) +"fI" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/brown{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; dir = 8},/area/mine/living_quarters) +"fJ" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{tag = "icon-manifold-b-f (EAST)"; dir = 4},/turf/open/floor/plasteel{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/living_quarters) +"fK" = (/obj/machinery/vending/snack,/turf/open/floor/plasteel/bar{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/living_quarters) +"fL" = (/turf/open/floor/plasteel/bar{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/living_quarters) +"fM" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/bar{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/living_quarters) +"fN" = (/obj/machinery/newscaster{pixel_y = 32},/turf/open/floor/plasteel/bar{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/living_quarters) +"fO" = (/obj/structure/table,/obj/machinery/reagentgrinder,/turf/open/floor/plasteel/bar{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/living_quarters) +"fP" = (/obj/structure/ore_box,/turf/open/floor/plasteel/purple/side{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; dir = 8},/area/mine/living_quarters) +"fQ" = (/obj/item/device/radio/intercom{dir = 8; name = "Station Intercom (General)"; pixel_x = 28},/turf/open/floor/plasteel/purple/side{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; dir = 4},/area/mine/living_quarters) +"fR" = (/obj/structure/table,/turf/open/floor/carpet{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/living_quarters) +"fS" = (/obj/machinery/light/small{dir = 4},/obj/machinery/button/door{id = "miningdorm1"; name = "Door Bolt Control"; normaldoorcontrol = 1; pixel_x = 25; pixel_y = 0; req_access_txt = "0"; specialfunctions = 4},/turf/open/floor/carpet{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/living_quarters) +"fT" = (/obj/machinery/camera{c_tag = "Dormatories"; dir = 4; network = list("MINE")},/turf/open/floor/plasteel/purple/corner{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; dir = 1},/area/mine/living_quarters) +"fU" = (/obj/structure/chair,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/bar{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/living_quarters) +"fV" = (/obj/structure/table,/obj/machinery/microwave{pixel_y = 6},/turf/open/floor/plasteel/bar{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/living_quarters) +"fW" = (/obj/docking_port/stationary{area_type = /area/lavaland/surface/outdoors; dir = 2; dwidth = 11; height = 22; id = "whiteship_lavaland"; name = "lavaland wastes"; turf_type = /turf/open/floor/plating/asteroid/basalt/lava_land_surface; width = 35},/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) +"fX" = (/obj/structure/ore_box,/turf/open/floor/plasteel/brown{tag = "icon-brown (SOUTHWEST)"; dir = 10; baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/living_quarters) +"fY" = (/obj/machinery/recharge_station,/turf/open/floor/plasteel/purple/side{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/living_quarters) +"fZ" = (/obj/structure/closet/secure_closet/miner,/turf/open/floor/plasteel/brown{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/living_quarters) +"ga" = (/obj/structure/closet/secure_closet/miner,/turf/open/floor/plasteel/purple/side{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/living_quarters) +"gb" = (/obj/structure/closet/secure_closet/miner,/turf/open/floor/plasteel/brown{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; dir = 6},/area/mine/living_quarters) +"gc" = (/obj/structure/chair{dir = 4},/turf/open/floor/plasteel/bar{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/living_quarters) +"gd" = (/obj/structure/table,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/turf/open/floor/plasteel/bar{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/living_quarters) +"ge" = (/obj/structure/chair{dir = 8},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/bar{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/living_quarters) +"gf" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; layer = 2.4; on = 1},/turf/open/floor/plasteel/bar{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/living_quarters) +"gg" = (/obj/structure/sink{dir = 4; icon_state = "sink"; pixel_x = 14; tag = "icon-sink (EAST)"},/obj/structure/table,/obj/item/weapon/storage/box/donkpockets,/turf/open/floor/plasteel/bar{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/living_quarters) +"gh" = (/obj/machinery/door/airlock{id_tag = "miningdorm2"; name = "Room 2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/living_quarters) +"gi" = (/obj/item/device/radio/intercom{dir = 8; name = "Station Intercom (General)"; pixel_x = -28},/turf/open/floor/plasteel/bar{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/living_quarters) +"gj" = (/obj/machinery/camera{c_tag = "Crew Area"; dir = 1; network = list("MINE")},/obj/machinery/computer/security/telescreen/entertainment{pixel_x = 0; pixel_y = -32},/obj/machinery/light,/turf/open/floor/plasteel/bar{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/living_quarters) +"gk" = (/obj/machinery/airalarm{dir = 1; pixel_y = -22},/turf/open/floor/plasteel/bar{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/living_quarters) +"gl" = (/obj/structure/closet/secure_closet/freezer/kitchen/mining,/turf/open/floor/plasteel/bar{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/living_quarters) +"gm" = (/obj/machinery/light/small{dir = 4},/obj/machinery/button/door{id = "miningdorm2"; name = "Door Bolt Control"; normaldoorcontrol = 1; pixel_x = 25; pixel_y = 0; req_access_txt = "0"; specialfunctions = 4},/turf/open/floor/carpet{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/living_quarters) +"gn" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/light{icon_state = "tube1"; dir = 4},/turf/open/floor/plasteel{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/living_quarters) +"go" = (/obj/machinery/button/door{id = "lavalandrestroom"; name = "Door Bolt Control"; normaldoorcontrol = 1; pixel_x = -25; pixel_y = -10; req_access_txt = "0"; specialfunctions = 4},/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/turf/open/floor/plasteel/freezer{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/living_quarters) +"gp" = (/obj/machinery/light/small{dir = 4},/obj/structure/table,/turf/open/floor/plasteel/freezer{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/living_quarters) +"gq" = (/obj/machinery/shower{tag = "icon-shower (EAST)"; icon_state = "shower"; dir = 4},/obj/item/weapon/soap,/turf/open/floor/plasteel/freezer{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/living_quarters) +"gr" = (/obj/machinery/shower{dir = 8},/turf/open/floor/plasteel/freezer{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/living_quarters) +"gs" = (/obj/machinery/door/airlock{id_tag = "miningdorm3"; name = "Room 3"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/living_quarters) +"gt" = (/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden,/turf/open/floor/plasteel{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/living_quarters) +"gu" = (/obj/machinery/door/airlock{id_tag = "lavalandrestroom"; name = "Restroom"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/freezer{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/living_quarters) +"gv" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/open/floor/plasteel/freezer{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/living_quarters) +"gw" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/freezer{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/living_quarters) +"gx" = (/obj/machinery/door/airlock/glass{name = "Shower"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/freezer{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/living_quarters) +"gy" = (/obj/machinery/light{dir = 4},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; layer = 2.4; on = 1},/turf/open/floor/plasteel/freezer{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/living_quarters) +"gz" = (/obj/machinery/light/small{dir = 4},/obj/machinery/button/door{id = "miningdorm3"; name = "Door Bolt Control"; normaldoorcontrol = 1; pixel_x = 25; pixel_y = 0; req_access_txt = "0"; specialfunctions = 4},/turf/open/floor/carpet{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/living_quarters) +"gA" = (/obj/structure/sink{dir = 8; icon_state = "sink"; pixel_x = -14; tag = "icon-sink (WEST)"},/obj/structure/mirror{pixel_x = -27},/turf/open/floor/plasteel/freezer{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/living_quarters) +"gB" = (/obj/structure/toilet{tag = "icon-toilet00 (WEST)"; icon_state = "toilet00"; dir = 8},/turf/open/floor/plasteel/freezer{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/living_quarters) +"gC" = (/obj/machinery/shower{tag = "icon-shower (EAST)"; icon_state = "shower"; dir = 4},/turf/open/floor/plasteel/freezer{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface},/area/mine/living_quarters) (1,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ed -ed -ab -ab -ab -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -"} -(2,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ed -ab -ab -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -"} -(3,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ed -ab -ab -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -ed -ed -ed -ed -ed -ab -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -ab -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -"} -(4,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ed -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -ab -ab -ab -ab -ab -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -ab -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -ab -al -al -af -af -af -ab -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -"} -(5,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -ab -ab -ab -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -fK -ab -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -ab -al -al -al -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -"} -(6,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -af -ab -af -af -af -af -af -af -af -af -af -af -af -af -af -af -ed -ed -ed -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -ab -ab -ab -af -ab -af -af -af -af -af -af -af -af -af -af -af -af -af -af -ab -ab -af -af -af -af -af -fK -fK -fK -fK -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -ab -ab -af -af -af -af -af -af -af -af -ab -al -dq -ab -af -af -af -af -af -ab -ab -ab -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -"} -(7,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ed -ab -ab -ab -af -ab -ab -af -af -af -af -af -af -af -af -af -af -af -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ed -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -al -al -al -al -al -al -al -ed -af -af -af -af -af -af -af -af -fK -fK -fK -fK -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -ab -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -ab -ab -ab -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -ab -af -af -bA -bA -ab -dq -ab -af -af -af -af -af -af -af -ab -ab -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -ab -af -af -af -af -"} -(8,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ed -ab -ab -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ed -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -ed -af -ab -ab -ed -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -ed -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -ab -ab -ab -fK -fK -ab -ab -fK -fK -fK -fK -fK -fK -fK -fK -fK -ab -ab -ab -af -af -af -af -af -af -af -ab -ab -ab -ab -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -ab -af -af -af -ab -af -af -af -bA -bA -af -af -af -af -af -af -af -af -af -af -af -ab -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -ab -af -af -af -af -af -af -"} -(9,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ed -ab -ab -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -ab -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -ab -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -ab -ab -af -ab -ab -af -af -af -af -bA -bA -af -af -bA -bA -af -af -bA -af -ab -af -af -af -af -af -ab -af -af -af -af -af -af -af -af -af -af -af -af -af -af -ab -ab -af -ab -af -af -af -af -af -af -af -af -af -af -af -"} -(10,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -ab -ab -al -al -ed -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ed -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -ab -ab -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -ab -ab -ab -ab -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -ab -ab -af -af -af -bA -bA -bA -bA -bA -bA -bA -bA -bA -bA -bA -bA -bA -af -af -af -af -ab -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -ab -af -af -af -af -af -ab -af -af -af -af -af -af -af -"} -(11,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -ab -al -ed -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -ab -ab -fK -fK -fK -fK -fK -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -bA -bA -dq -bA -bA -bA -bA -bA -bA -bA -bA -bA -bA -bA -bA -bA -ab -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -ab -af -ab -af -af -af -af -af -af -af -"} -(12,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -af -af -af -af -af -af -af -af -fK -ab -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -bA -bA -bA -dq -bA -bA -bA -bA -bA -dq -bA -bA -dq -bA -bA -bA -af -bA -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -ab -af -af -af -af -af -af -af -af -af -af -af -af -af -"} -(13,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -af -af -af -af -af -af -af -af -af -af -af -af -af -af -al -al -al -al -al -ed -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -ab -ab -af -af -af -af -af -af -ab -fK -fK -af -af -af -af -af -af -af -af -ab -af -af -af -af -af -af -ab -af -bA -bA -bA -dq -dq -dq -dq -dq -dq -dq -dq -dq -bA -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -ab -ab -af -af -af -af -af -af -af -"} -(14,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ed -ab -ab -ab -af -af -af -af -af -af -af -af -af -af -af -af -ab -ab -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -ab -ab -fK -fK -fK -fK -fK -fK -fK -fK -af -af -af -af -af -af -af -ab -ab -af -af -af -af -af -af -af -bA -bA -bA -bA -dq -dq -dq -dq -dq -dq -dq -dq -dq -bA -bA -ab -af -af -af -af -ab -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -ab -ab -ab -af -ab -af -af -af -af -af -"} -(15,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ed -ab -ab -ab -af -af -af -af -af -af -af -af -af -af -af -af -al -ab -ab -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -af -af -af -af -af -af -af -af -af -af -af -ab -af -af -af -af -bA -bA -bA -bA -dq -dq -dq -dq -dq -dq -dq -dq -dq -bA -bA -bA -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -ab -ab -ab -af -af -af -af -af -af -af -"} -(16,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -ab -af -af -af -af -af -ab -af -af -af -af -af -af -ab -ed -ed -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -bA -bA -bA -dq -dq -dq -dq -dq -dq -dq -dq -dq -bA -af -af -af -af -af -ab -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -ab -ab -af -af -af -af -af -af -af -"} -(17,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ed -ed -ab -ab -af -af -af -af -af -ab -af -af -af -af -af -af -ab -af -ed -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -ab -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -bA -bA -dq -dq -dq -dq -dq -dq -dq -bl -dq -dq -dq -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -ab -ab -af -af -ab -af -af -af -af -"} -(18,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -af -af -af -af -ab -ab -ab -af -af -af -af -af -ab -af -ab -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -ab -ab -af -af -af -af -af -ab -af -af -af -af -af -af -af -af -af -an -an -an -an -an -aO -an -an -an -bm -an -bA -bA -af -af -af -af -af -al -ab -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -"} -(19,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ed -ab -af -af -af -af -ab -ab -ab -af -af -af -af -af -ab -af -af -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -ab -ab -fK -ab -af -af -af -af -af -ab -an -ay -aC -aG -an -aP -an -aZ -an -aF -an -dq -fJ -af -af -dq -af -ab -al -al -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -"} -(20,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ed -ab -af -af -af -af -ab -ab -ab -ab -af -af -af -af -ab -af -af -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -ab -af -af -af -ab -ab -an -az -at -au -an -aO -an -fM -an -bm -an -fJ -fJ -fJ -af -af -af -al -al -al -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -"} -(21,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -af -af -af -af -ab -ab -ab -ab -af -af -af -af -ab -af -af -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -am -am -am -an -an -an -aD -an -an -aQ -an -ba -at -at -an -fN -fN -fN -af -af -af -al -ed -al -al -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -"} -(22,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ed -ab -ab -ab -ab -af -af -af -ab -ab -ab -ab -af -af -af -af -ab -ab -af -af -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -am -ao -ao -an -at -at -at -at -at -at -at -at -at -at -an -bB -bK -fO -af -af -af -af -al -ab -ab -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -"} -(23,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ed -ed -ab -ab -ab -ab -af -ab -ab -ab -af -af -af -af -af -af -ab -ab -ab -af -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -an -ap -fD -aw -at -at -at -at -aK -aR -at -at -at -bc -bu -bC -bL -fO -af -af -af -af -af -ab -ab -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -"} -(24,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -af -af -af -af -af -af -af -af -af -af -af -af -ab -ab -ab -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -ab -ab -ab -af -af -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -an -aq -aM -an -aA -at -at -at -at -at -au -fH -at -be -an -bD -bM -fO -af -af -af -af -ab -ab -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -"} -(25,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -af -af -af -af -af -af -af -af -af -af -af -ab -af -af -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -af -af -ab -ab -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -an -an -an -an -an -at -at -at -at -dr -an -aS -an -bd -an -an -an -an -af -af -af -ab -ab -ab -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -"} -(26,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ed -ed -ab -ab -af -af -af -af -af -af -af -af -af -af -af -ab -af -af -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -af -af -af -af -ed -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -an -ar -ar -ar -an -at -fE -an -an -aL -an -aS -an -be -an -bE -bN -an -af -af -af -ab -ab -ab -ab -ab -ab -af -af -af -al -al -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -"} -(27,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ed -ab -ab -af -af -af -af -af -af -af -af -af -af -af -af -ab -ab -af -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -af -af -af -af -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -an -as -at -at -aB -at -fF -aI -aT -fG -aT -aV -an -bf -bw -aW -aX -an -af -af -ab -ed -al -ab -ab -ab -al -ab -ab -ab -ed -al -al -al -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -"} -(28,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -af -af -af -af -af -af -af -af -af -af -af -af -ab -ab -ab -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -al -ab -ab -af -af -af -af -af -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -an -an -av -ax -an -aE -an -an -an -an -an -an -an -an -an -bx -bO -an -af -eh -eh -eh -eh -ei -ei -ei -ee -ei -ei -ei -ee -al -al -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -"} -(29,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -ab -af -af -af -af -af -af -af -af -af -af -af -ab -ab -ab -ab -ab -ab -al -al -al -al -al -al -al -al -al -ed -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ab -al -af -af -af -af -af -af -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -an -an -an -an -at -an -fL -aN -aN -dq -dq -dq -dq -an -bF -bG -an -af -eh -dm -dm -eh -fj -fj -fj -ee -cd -cU -bn -ee -ab -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -"} -(30,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -ab -ab -af -ab -ab -ab -ab -ab -ab -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -an -aF -an -fL -dq -dq -dq -dq -dq -dq -an -an -an -an -af -eh -ex -eM -eh -fk -fv -fq -ee -fB -fj -da -ei -ab -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -"} -(31,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -ab -ab -af -af -af -ab -ab -ab -af -af -af -af -ab -ab -ab -ab -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -al -af -af -af -af -af -fK -af -af -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -dq -an -aE -an -fL -dq -dq -dq -dq -dq -af -af -af -af -af -ab -eh -ey -eN -fa -fl -fw -cs -cy -fo -cV -db -ei -ab -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -"} -(32,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -ab -ab -af -af -af -ab -ab -ab -af -af -af -af -af -ab -ab -ab -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ab -ab -af -af -af -af -af -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -dq -dq -aJ -dq -dq -dq -dq -dq -af -af -af -af -af -ab -ed -eh -ez -eO -eh -fm -bg -cu -ee -cJ -fj -bo -ei -ab -al -al -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -"} -(33,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ed -ab -ab -ab -ab -ab -af -af -af -ab -ab -af -af -af -af -af -af -af -ab -af -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ab -al -af -af -af -af -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -dq -dq -dq -dq -dq -dq -dq -dq -dq -af -af -af -af -ab -al -eh -fC -eP -eh -fz -bg -cv -ee -fd -ag -bv -ee -al -ed -al -al -ab -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -"} -(34,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ed -ed -ab -ab -ab -ab -af -af -ab -ab -af -af -af -af -af -af -af -af -af -af -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ed -af -af -af -af -af -af -af -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -dq -dq -dq -dq -dq -dq -dq -af -af -af -af -ab -ab -eh -eh -eh -eh -fn -bg -fj -ee -ee -ee -ee -ee -ee -ee -ee -ee -ee -ab -ab -af -af -af -af -af -af -af -af -af -af -af -af -af -"} -(35,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ed -ed -ed -ab -ab -ab -af -af -ab -ab -af -af -af -af -af -af -af -af -af -ab -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -af -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -dq -dq -dq -dq -dq -dq -dq -af -af -af -af -af -ab -ee -eA -eQ -ee -fj -bg -fj -ee -cK -cW -ee -cK -cW -ee -cK -cW -ee -ab -af -af -af -af -af -af -af -af -af -af -af -af -af -af -"} -(36,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -af -af -ab -ab -af -af -af -af -af -af -af -ab -ab -ab -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -af -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -dq -dq -dq -dq -dq -dq -dq -dq -af -af -af -af -ab -ei -eB -eR -fb -fk -bg -fj -ee -cL -cX -ee -cL -dl -ee -cL -dp -ee -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -"} -(37,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ed -ab -af -af -af -ab -ab -ab -af -af -ab -af -ab -ab -ab -ab -ab -ab -al -al -al -al -ed -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ed -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -af -af -af -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -dq -fP -fL -fK -dq -dq -af -af -af -af -ab -ei -eB -eS -fc -fo -bi -fj -ee -cM -ee -ee -dh -ee -ee -do -ee -ee -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -"} -(38,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ed -ab -af -af -af -ab -ab -ab -ab -af -af -af -af -ab -ab -ab -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -af -af -af -fK -fK -fK -ab -ab -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -dq -dq -dq -af -af -al -ed -ee -eC -eT -fb -fm -bg -fj -cu -cN -fA -cu -cN -fm -cu -cN -fm -ei -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -"} -(39,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ed -ab -af -af -af -ab -ab -ab -ab -af -af -af -af -af -af -af -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -af -af -af -af -af -ab -ab -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -af -af -al -ee -ee -ee -ee -ee -fp -ci -cl -cl -cO -cl -cl -cO -dn -cl -cO -cV -ei -ab -af -af -af -af -af -af -af -af -af -af -af -af -af -af -"} -(40,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ed -ab -af -af -af -af -ab -ab -af -af -af -af -af -af -af -af -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -al -al -al -af -af -af -af -af -af -af -ab -ab -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -dq -af -af -ee -ej -bX -bY -ee -cx -bg -fj -ee -ee -fb -fb -ee -ee -ee -ei -ei -ee -al -ab -ab -ab -af -af -af -af -af -af -af -af -af -af -af -"} -(41,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -af -af -af -af -af -ab -af -af -af -af -af -af -af -ab -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -af -ab -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -dq -dq -af -af -ef -ek -eD -bZ -ee -fk -bg -cv -ee -cP -cQ -cQ -aH -ee -ab -ab -ab -al -ed -al -al -ab -ab -ab -ab -af -af -af -af -af -af -af -af -"} -(42,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -ab -af -af -af -af -af -af -ab -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -af -af -ab -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -dq -dq -af -af -ee -el -eE -bJ -cc -cf -bk -fq -fb -cQ -cQ -dc -cQ -ee -ab -af -ab -ab -al -al -ab -ab -ab -af -af -af -af -af -af -af -af -af -af -"} -(43,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -ab -ab -ab -af -af -af -ab -ab -af -af -af -af -af -ab -ab -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -af -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -af -af -af -af -af -ab -ab -ab -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -dq -dq -af -ab -ee -eD -eF -ca -ee -cg -cj -cs -ct -cR -cY -dd -di -ee -al -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -"} -(44,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -ab -ab -ab -af -af -af -ab -ab -af -af -af -af -af -af -af -af -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -af -af -af -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -ab -ab -af -af -af -af -af -af -af -af -af -ab -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -ab -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -dq -dq -af -af -ab -ee -em -eG -eG -ee -fj -bg -cu -fb -cQ -cQ -de -dj -ee -ed -af -af -af -af -af -af -ab -ab -af -af -af -af -af -af -af -af -af -af -"} -(45,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -ab -ab -af -af -af -af -ab -ab -af -af -af -af -af -af -af -af -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ab -af -af -af -af -af -af -af -af -af -af -af -af -af -fK -fK -fK -fK -fK -fK -fK -fK -fK -af -af -af -af -af -af -af -af -af -af -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -af -af -af -af -af -af -af -af -af -af -af -af -fK -fK -ab -af -af -ab -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -fK -ab -af -af -fK -fK -fK -fK -fK -dq -dq -dq -dq -af -af -af -af -ee -ee -ee -ee -ee -fj -bg -fj -ee -cS -cQ -df -cQ -ee -al -af -af -af -af -af -af -af -ab -af -af -af -af -af -af -af -af -af -af -"} -(46,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ed -ab -ab -ab -ab -ab -af -af -af -af -af -af -af -af -af -af -af -af -af -af -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ab -af -af -af -al -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -fK -fK -fK -fK -fK -af -af -af -af -af -af -af -dq -dq -dq -dq -af -af -af -af -af -af -af -af -ab -ab -ei -fj -bg -fj -ee -cT -cZ -dg -dk -ee -al -al -af -af -af -af -af -af -af -af -af -ab -af -af -af -af -af -af -af -"} -(47,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ed -ed -ab -ab -ab -ab -af -af -af -af -af -af -af -af -af -af -af -af -af -af -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ab -ab -ab -al -al -al -af -af -al -al -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -ab -af -af -af -af -af -af -ab -ei -fq -bp -cH -ee -ei -ei -ei -ei -ee -al -al -al -af -ab -af -af -ab -ab -af -ab -ab -ab -af -af -af -af -af -af -"} -(48,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ed -ab -ab -ab -ab -af -af -af -af -af -af -af -af -af -af -af -af -af -af -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -al -al -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -ab -af -ab -af -af -af -af -af -ei -ei -bs -ei -ei -ab -ab -ab -ab -al -al -al -ab -af -af -af -af -ab -ab -ab -al -ed -ed -ab -ab -af -af -af -af -"} -(49,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ed -ab -ab -ab -ab -af -af -af -af -af -af -af -af -af -af -af -af -af -af -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -ed -ab -ab -ab -al -af -af -af -af -af -af -af -al -al -al -al -al -al -al -af -af -af -af -af -al -al -al -al -al -al -al -ab -ab -al -al -al -al -af -af -af -af -al -al -af -af -af -af -af -af -af -al -al -al -af -af -af -af -af -af -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -ei -bQ -ei -ab -ab -af -af -af -af -af -af -af -af -af -af -af -af -ab -ed -ed -ed -ed -ed -al -al -af -af -af -"} -(50,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -ab -ab -af -af -af -af -af -af -af -af -af -af -af -af -af -af -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ab -ab -ab -al -al -al -al -al -al -al -al -al -al -al -ab -af -af -af -af -af -ab -ab -ab -ab -ab -ab -ab -ab -ab -af -af -af -ei -bg -ei -ab -af -af -af -af -af -af -af -af -af -ab -af -ab -ab -ed -ed -ed -ed -ed -ed -ed -ed -ab -af -af -"} -(51,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -ab -ab -af -af -af -af -af -af -af -af -af -af -af -af -af -af -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ab -af -af -af -af -af -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -af -af -af -ei -bg -ei -ab -af -af -af -af -af -af -af -af -af -af -af -af -ab -ab -ed -ed -ed -ed -ed -ed -ed -ab -af -af -"} -(52,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -af -af -af -af -af -af -af -af -af -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ab -af -af -ab -ab -af -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -af -af -ei -bg -ei -ab -af -af -af -af -af -af -af -af -af -af -af -af -af -ab -ed -ed -ed -ed -ed -ed -ed -ab -af -af -"} -(53,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -af -af -af -af -af -af -af -af -af -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ab -af -ab -ab -af -af -af -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -af -ab -dx -bV -dx -ab -af -af -af -af -af -af -af -af -af -af -af -af -af -af -ab -ab -ed -ed -al -ed -ab -ab -af -af -"} -(54,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -af -af -af -af -af -af -af -af -af -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -af -ab -ab -ab -ab -ck -ab -ab -ab -ab -af -af -ab -dx -bV -dx -ab -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -ab -ab -ab -ab -ab -af -af -af -af -"} -(55,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ed -ed -ab -ab -af -af -af -af -af -af -af -af -af -af -af -af -af -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -ab -af -af -af -af -af -ab -ab -by -bH -dx -ab -ab -af -af -af -ab -dx -bV -dx -ab -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -ab -ab -ab -af -af -af -af -af -"} -(56,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -al -al -al -al -ab -af -af -af -af -af -af -af -af -af -af -af -af -af -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ab -ab -af -af -af -af -af -af -ab -dx -dI -dx -ab -af -af -af -af -ab -dx -dK -dx -ab -ab -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -ab -af -af -af -af -af -"} -(57,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ed -al -al -al -al -ab -af -af -af -af -af -af -af -af -af -af -af -af -af -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ab -af -af -af -af -af -af -dx -dx -bH -dx -dx -ab -af -af -ab -dx -dx -cb -dx -dx -ab -ab -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -ab -af -af -af -af -af -"} -(58,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ed -al -al -al -al -ab -af -af -af -af -af -af -af -af -af -af -af -af -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -bh -dx -dH -dR -bP -dx -bh -bh -bh -bh -dx -bU -bW -bP -dx -bh -al -al -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -"} -(59,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ed -ed -ed -ab -ab -ab -af -af -af -af -af -af -af -af -af -af -af -ab -ab -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -ab -bh -bq -dI -dS -dI -bU -eg -eo -dR -eU -fe -dI -bV -dI -cz -bh -ab -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -ab -af -af -af -af -af -"} -(60,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -ab -ab -ab -ab -af -ab -af -af -ab -ab -af -ab -af -ab -ab -ab -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -ab -dx -dB -dJ -dT -bR -bR -bR -ep -bR -bR -bR -bR -ce -cw -cA -bh -ab -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -"} -(61,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -ab -ab -ab -ab -af -af -af -ab -ab -af -af -af -af -af -ab -ab -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -ab -ab -dx -dC -dK -bI -bS -dZ -bT -bI -dI -dI -dI -dI -ch -dI -cC -dx -ab -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -"} -(62,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -ab -ab -af -af -af -af -af -af -af -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -al -ab -ds -ds -ds -bb -bz -bb -ds -ea -bh -eq -eH -eV -dC -bS -cm -bI -cD -dx -ab -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -"} -(63,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -ab -ab -af -af -af -af -af -ab -ab -ab -af -af -af -af -af -af -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ab -ds -du -dy -br -dL -dU -ds -eb -bh -bh -eI -bh -ff -fr -cn -ff -bh -bh -ab -ab -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -"} -(64,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -ab -af -af -af -af -af -ab -ab -ab -ab -af -af -af -af -af -af -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ab -ab -dt -dv -dz -dz -dM -dV -ds -ec -bh -er -eJ -eW -bU -dR -co -bP -dI -dx -ab -ab -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -"} -(65,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -ab -af -ab -ab -af -ab -ab -ab -ab -ab -af -af -af -af -af -af -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -ab -dt -dv -dz -dD -dN -bj -ds -bh -bh -es -dI -dI -dI -dI -cp -bS -cE -bh -ab -ab -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -"} -(66,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -ab -af -af -af -af -af -af -ab -ab -ab -af -af -af -af -af -af -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -ab -ds -dw -dA -dE -dO -dW -ds -ed -bh -et -dI -eX -fg -fg -cq -bh -cF -bh -ab -ab -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -ab -af -af -af -af -af -"} -(67,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -ab -ab -ab -af -af -af -af -af -af -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -ab -ds -ds -ds -dt -dP -dt -ds -al -bh -eu -dI -eY -fh -fs -cr -ff -cG -bh -ab -ab -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -ab -af -af -af -af -af -"} -(68,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ed -ed -ab -ab -ab -ab -ab -af -af -af -af -af -ab -ab -af -af -af -af -af -af -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -ab -ab -ab -ds -dF -dQ -dX -ds -al -bh -ev -eK -bh -ff -ft -ff -ff -cG -bh -ab -ab -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -ab -af -af -af -af -af -"} -(69,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -af -af -af -af -af -ab -ab -af -af -af -af -af -af -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ed -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -ab -ab -ds -dG -dO -dY -ds -al -bh -ew -eL -eZ -fi -fu -fi -fi -cI -bh -ab -ab -ab -af -af -af -af -af -af -af -af -ab -af -af -af -af -af -af -af -af -af -af -af -"} -(70,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -af -af -af -af -af -ab -ab -af -af -af -af -af -ab -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ab -al -al -af -af -ab -ds -dt -dP -dt -ds -al -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -ab -ab -ab -af -af -af -af -ab -af -af -af -ab -af -af -af -af -af -ab -af -af -af -af -af -"} -(71,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ed -ab -ab -ab -ab -af -af -af -af -ab -ab -af -af -af -af -af -ab -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -fy -ab -ab -ab -ab -ab -ab -ab -bt -ab -ab -ab -bt -al -al -ab -ab -af -af -af -af -ab -ab -ab -ab -ab -ab -af -af -ab -af -af -af -af -ab -ab -af -af -af -af -af -af -af -af -af -af -af -"} -(72,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ed -ab -ab -ab -ab -af -af -af -af -ab -ab -ab -af -af -af -ab -ab -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -af -af -af -ab -ab -ab -ab -ab -af -af -af -af -af -af -af -ab -ab -af -af -af -af -af -ab -af -af -af -af -af -"} -(73,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ed -ed -ab -ab -ab -ab -ab -af -af -af -af -ab -ab -ab -af -ab -af -ab -ab -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -fy -ab -ab -al -al -al -al -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -af -af -af -af -ab -ab -ab -ab -af -af -ab -af -af -af -af -ab -ab -af -af -af -af -ab -ab -ab -af -af -af -af -"} -(74,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -ab -ab -af -af -af -af -af -ab -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ab -ab -ab -al -ab -al -al -al -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -af -af -af -af -af -af -ab -ab -ab -af -af -ab -af -af -af -af -ab -ab -af -af -af -af -ab -ab -ab -af -af -af -af -"} -(75,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -af -ab -af -af -af -af -af -ab -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ab -ab -ab -ab -ab -ab -al -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -af -af -af -af -af -al -al -ab -ab -ab -af -ab -ab -ab -af -af -af -ab -ab -ab -af -af -af -ab -ab -ab -af -af -af -af -"} -(76,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -af -af -af -af -af -af -ab -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ab -ab -ab -ab -ab -ab -ab -al -ab -ab -ab -ab -ab -ab -fy -ab -ab -ab -ab -ab -ab -af -af -af -af -af -af -af -al -al -al -al -al -ab -ab -af -ab -ab -ab -af -af -af -ab -ab -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -"} -(77,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -af -af -ab -af -af -af -af -af -ab -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ab -ab -al -ab -ab -ab -ab -al -al -ab -ab -ab -ab -al -al -al -ab -ab -ab -ab -ab -ab -ab -al -al -al -al -al -al -al -al -al -al -al -ab -af -ab -ab -ab -ab -ab -af -ab -ab -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -"} -(78,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -af -af -af -af -af -af -af -ab -ab -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ab -ab -ab -ab -ab -al -al -ab -ab -ab -al -al -al -ab -ab -ab -ab -ab -ab -ab -ab -ab -al -al -al -al -af -af -af -ab -ab -ab -ab -ab -ab -ab -ab -ab -af -ab -ab -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -"} -(79,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ed -ed -ed -ab -ab -ab -af -af -af -af -af -af -af -af -af -af -ab -ab -ab -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -al -al -al -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -ab -ab -ab -ab -ab -ab -ab -ab -ab -af -ab -ab -ab -ab -ab -ab -ab -af -ab -af -af -af -af -"} -(80,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ed -al -al -al -ab -ab -af -af -af -af -af -af -af -af -af -ab -ab -ab -ab -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -al -al -al -ab -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -af -af -af -af -af -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -af -af -"} -(81,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ed -al -al -al -ed -ab -af -af -af -af -af -af -af -af -af -ab -ab -ab -ab -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -al -al -al -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -af -af -af -af -af -af -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -af -af -"} -(82,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -al -al -al -ed -ab -af -af -af -af -af -af -af -af -af -ab -ab -af -ab -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ab -ab -ab -ab -ab -ab -ab -al -al -al -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -af -af -af -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -af -af -"} -(83,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ed -ed -ab -ab -af -af -af -af -af -af -af -ab -af -ab -af -af -ab -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -fy -ab -ab -ab -ab -ab -ab -al -al -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -al -al -al -al -ab -af -af -af -af -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -af -"} -(84,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -af -af -ab -ab -af -af -af -af -ab -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ed -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -fy -ab -ab -ab -ab -ab -ab -al -al -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -al -al -al -al -al -af -af -af -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -af -"} -(85,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -af -af -ab -ab -af -af -af -af -ab -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ab -ab -ab -ab -ab -ab -al -al -al -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -fy -al -al -al -af -af -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -af -"} -(86,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -af -af -ab -ab -af -ab -af -af -ab -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ab -ab -ab -ab -ab -ab -al -fy -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -al -al -al -af -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -af -"} -(87,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -ab -ab -ab -af -af -af -af -ab -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -fy -ab -ab -ab -ab -ab -al -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -al -ab -ab -ab -al -al -al -al -al -al -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -"} -(88,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ed -ab -ab -ab -ab -ab -ab -ab -ab -af -ab -af -ab -ab -ab -af -ab -af -af -af -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -al -al -al -al -al -al -ab -al -al -al -al -al -al -fy -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -"} -(89,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -ab -ab -af -af -af -af -af -ab -ab -af -ab -af -af -af -af -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ab -ab -ab -ab -ab -ab -ab -ab -ab -fy -al -al -al -al -al -al -al -al -al -al -al -al -al -fy -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -"} -(90,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ed -ab -ab -ab -ab -ab -af -af -af -af -af -ab -ab -ab -ab -af -af -af -af -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -"} -(91,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ed -ab -ab -ab -ab -ab -af -af -af -af -af -ab -ab -ab -ab -af -af -af -af -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -af -af -af -"} -(92,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -ab -ab -af -af -af -af -af -af -ab -ab -ab -af -af -af -af -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -fy -al -al -al -al -al -al -al -al -al -al -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -"} -(93,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -ab -ab -af -af -af -af -af -af -ab -ab -ab -af -af -af -af -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ed -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -al -al -al -al -al -al -al -al -al -al -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -"} -(94,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ed -ed -ab -ab -ab -ab -ab -ab -af -af -af -af -af -af -ab -ab -ab -ab -af -af -af -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -al -al -al -al -al -al -al -al -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -af -af -af -"} -(95,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ed -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -af -af -ab -ab -ab -ab -af -af -af -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -al -al -al -al -al -al -al -al -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -af -af -af -"} -(96,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ed -ab -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -af -ab -ab -ab -ab -af -af -af -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ab -ab -al -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -al -al -al -al -al -al -al -al -al -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -af -ab -ab -"} -(97,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -af -ab -ab -ab -af -af -af -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ab -ab -al -al -ab -ab -ab -ab -ab -al -ab -ab -ab -ab -ab -ab -al -al -al -al -al -al -al -al -al -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -af -af -af -"} -(98,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -al -al -ab -ab -ab -ab -ab -ab -af -af -af -af -af -ab -af -af -af -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ed -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ab -ab -al -ab -ab -ab -ab -ab -ab -al -fy -ab -ab -ab -ab -ab -ab -al -al -al -al -al -al -al -al -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -af -af -"} -(99,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -al -al -ed -ab -ab -ab -ab -af -af -af -af -af -af -ab -af -af -af -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ab -ab -al -ab -ab -ab -ab -ab -ab -al -al -al -al -al -al -ab -ab -al -al -al -al -al -al -al -ed -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -af -af -af -"} -(100,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ed -al -al -ed -ab -ab -ab -af -af -af -af -af -af -af -ab -ab -af -af -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ab -ab -ab -ab -ab -ab -fy -ab -ab -al -al -al -al -al -al -fy -ab -ab -ab -ab -fy -fy -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -af -af -"} -(101,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -ed -ed -ab -ab -ab -af -af -af -af -af -af -af -af -ab -ab -ab -af -ab -al -ed -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ab -ab -ab -ab -ab -fy -fy -ab -al -al -al -al -al -al -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -cB -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -af -af -"} -(102,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -af -af -af -af -ab -af -af -af -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ab -ab -ab -ab -al -al -al -al -al -al -aU -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -af -af -"} -(103,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ed -ab -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -af -af -af -af -ab -af -af -af -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ab -ab -ab -ab -ab -al -al -al -al -al -al -aY -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -af -af -af -"} -(104,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ed -ed -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -af -af -af -af -ab -af -af -af -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ab -ab -ab -ab -ab -al -al -al -al -al -al -ab -ab -ab -ab -ab -fy -fy -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -af -af -af -"} -(105,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ed -ed -ed -ab -ab -ab -ab -ab -ab -af -af -af -af -af -af -af -af -ab -af -af -af -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ab -ab -ab -al -al -al -al -al -al -al -ab -ab -ab -ab -ab -al -al -al -al -al -al -al -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -af -af -af -"} -(106,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -af -af -af -af -af -af -af -af -af -af -af -af -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ab -ab -ab -al -al -al -al -al -al -al -al -al -al -ab -ab -fy -al -al -al -al -al -al -al -al -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -af -af -af -"} -(107,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ed -ab -ab -ab -af -af -af -af -af -af -af -af -ab -af -af -af -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ab -al -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -af -af -af -"} -(108,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ed -ab -ab -ab -af -af -af -af -af -af -af -af -af -af -af -af -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -af -af -af -"} -(109,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -af -af -af -af -af -af -af -af -af -af -af -af -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -af -af -"} -(110,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -af -af -af -af -af -af -af -af -af -af -af -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -af -af -"} -(111,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ed -ed -ed -ed -ab -ab -ab -ab -ab -af -af -af -af -af -af -af -af -af -af -af -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -af -af -"} -(112,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ed -ab -ab -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -af -af -af -af -af -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -"} -(113,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -af -af -af -af -ab -ed -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -af -ab -ab -ab -ab -"} -(114,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ed -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -af -af -af -af -af -ab -ed -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -af -af -ab -af -af -"} -(115,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ed -ab -ab -ab -ab -ab -ed -ab -ab -af -af -af -af -af -af -af -af -af -af -af -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -af -"} -(116,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -ab -ed -al -al -ab -af -af -af -af -af -af -af -af -af -af -af -ab -ab -ed -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -af -af -ab -af -af -"} -(117,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ed -ab -ab -ab -ed -ed -al -al -ed -af -af -af -af -af -af -af -af -af -af -af -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -"} -(118,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ed -al -al -ed -af -af -af -af -af -af -af -af -af -af -af -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -"} -(119,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ed -ab -ab -ed -al -al -ab -af -af -af -af -af -af -af -af -af -af -ab -ab -ab -ed -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ed -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -"} -(120,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ed -ab -ab -ab -ab -ab -ab -af -af -af -af -ab -af -af -af -af -af -af -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ab -ab -ab -ab -ab -ab -af -ab -ab -af -af -af -af -"} -(121,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aj -aj -ab -ab -ab -ab -ab -ab -ab -af -af -ab -af -af -af -ab -ab -af -af -af -ab -ab -al -al -al -al -al -al -ed -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ab -ab -ab -ab -af -af -ab -af -af -af -af -"} -(122,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aj -aj -aj -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -af -af -af -af -af -af -ab -ab -al -al -al -al -ed -ab -ab -ab -ab -ed -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ab -ab -ab -af -af -af -af -af -af -af -"} -(123,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aj -en -aj -aj -ab -ab -ab -ab -ab -af -af -af -af -af -af -af -af -af -af -af -ab -ab -al -al -al -al -ab -ab -ab -ab -ab -ab -ed -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ab -ab -ab -af -af -ab -af -af -af -af -"} -(124,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aj -aj -aj -aj -ab -ab -ab -ab -ab -af -af -af -af -af -af -af -af -af -af -af -ab -ab -ab -ed -al -ed -ab -ab -ab -ab -ab -ab -ab -ab -ab -ed -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ed -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ab -af -af -ab -af -af -ab -ab -af -af -af -"} -(125,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aj -aj -aj -aj -aj -ab -ab -ah -ah -af -af -af -af -af -af -af -af -af -af -af -ah -ah -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -af -ab -af -af -af -"} -(126,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aj -aj -aj -aj -aj -aj -aj -ai -ai -ai -ai -ai -ai -ai -ai -ai -ai -ai -ai -ai -ai -ah -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ed -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -ab -af -af -af -af -af -af -af -"} -(127,1,1) = {" -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ae -ak -aj -aj -aj -aj -aj -aj -ai -ai -ai -ai -ai -ai -ai -ai -ai -ai -ai -ai -ai -ai -ai -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -af -af -af -af -af -"} -(128,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aj -aj -aj -aj -aj -aj -aj -ai -ai -ai -ai -ai -ai -ai -ai -ai -ai -ai -ai -ai -ai -ah -ab -ab -ab -ab -ab -ab -ab -ab -ab -ed -ab -ab -ab -ab -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -af -af -af -af -af -"} -(129,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aj -aj -aj -aj -aj -ab -ab -ah -ah -af -af -af -af -af -af -af -af -af -af -af -ah -ah -ab -ab -ab -ab -ab -ab -ab -ab -ab -ed -ed -ab -ab -ab -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ed -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ed -af -af -af -af -af -af -af -af -af -af -af -"} -(130,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aj -aj -aj -aj -ab -ab -ab -ab -ab -af -af -af -ab -af -af -af -af -af -af -af -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -al -ab -ab -ab -ab -ab -al -al -al -al -al -al -al -al -al -al -ed -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ab -af -af -af -af -af -ab -af -af -af -af -af -"} -(131,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aj -fx -aj -aj -ab -ab -ab -ab -ab -af -af -af -ab -ab -af -ab -ab -af -af -af -ab -ab -al -ed -ab -ab -ab -ab -ab -ab -ed -al -al -ed -ab -ab -ab -ed -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ab -af -af -af -af -af -af -af -af -af -af -af -"} -(132,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aj -aj -aj -ab -ab -ab -ab -ab -ab -af -af -af -af -af -af -ab -ab -af -af -af -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ab -af -af -af -af -af -af -af -af -af -af -"} -(133,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aj -aj -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -af -af -af -ab -af -af -af -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ab -af -af -af -af -af -ab -af -af -af -af -"} -(134,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -ab -af -af -af -af -af -af -af -af -af -af -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ab -af -ab -af -ab -af -af -af -af -af -af -"} -(135,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ed -ab -ab -ab -af -af -af -af -af -af -af -af -af -ab -ab -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ab -af -af -af -af -af -af -af -af -af -af -af -"} -(136,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ed -ed -ab -ab -ab -ab -af -af -af -af -af -af -af -af -af -af -ab -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ab -af -af -af -af -af -af -af -af -af -af -af -"} -(137,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -af -af -af -af -af -af -af -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ab -af -af -af -af -af -af -af -af -af -af -af -"} -(138,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -af -af -af -af -af -af -af -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -af -af -af -af -af -"} -(139,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -af -af -af -af -af -af -af -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -af -af -af -af -af -"} -(140,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ed -ab -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -af -af -af -af -af -af -af -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -af -af -af -af -af -"} -(141,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ed -ab -ab -ab -ab -ab -ab -ab -af -af -af -ab -af -af -af -af -af -af -af -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -af -af -af -af -af -"} -(142,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ed -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -af -af -af -af -af -af -af -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -af -af -af -af -af -"} -(143,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ed -ab -ab -ab -ab -ab -ab -ab -af -af -af -ab -af -af -af -af -af -af -af -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -af -af -af -af -af -"} -(144,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ed -ab -ab -ab -ab -ab -ab -ab -ab -af -af -af -ab -af -af -af -af -af -af -ab -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -af -af -af -af -af -"} -(145,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -ab -ab -ab -ab -ab -af -af -af -ab -ab -af -af -af -af -af -ab -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -af -af -af -af -af -"} -(146,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -ab -ab -ab -ab -ab -af -af -af -ab -ab -af -af -af -af -af -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -af -af -af -af -af -"} -(147,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ed -ab -ab -ab -ab -ab -ab -ab -ab -af -af -af -ab -ab -af -af -af -af -af -ab -ed -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -af -af -af -af -af -"} -(148,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ed -ed -ab -ed -ab -ab -ab -ab -ab -af -af -af -ab -ab -af -af -af -af -af -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -af -af -af -af -af -"} -(149,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ed -ab -af -af -af -ab -af -af -af -af -af -af -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -af -af -af -af -af -"} -(150,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ed -ab -af -af -af -ab -af -af -af -af -af -af -ab -ab -ab -ed -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -af -af -af -af -af -"} -(151,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -ed -ed -ed -ab -ab -ab -af -af -af -af -af -af -af -af -af -ab -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -af -af -af -af -af -"} -(152,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ed -ed -ed -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -af -af -ab -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -af -af -af -af -af -"} -(153,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -af -af -af -ab -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -af -af -af -af -af -"} -(154,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ed -ed -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -af -af -ab -ab -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -af -af -af -af -af -"} -(155,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ed -ed -ed -ed -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -af -af -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -af -af -af -af -af -"} -(156,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ed -ab -ab -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -af -af -af -af -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -af -af -af -af -af -"} -(157,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -af -af -af -af -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ed -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -af -af -af -af -af -"} -(158,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -af -af -af -af -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -af -af -af -af -af -"} -(159,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -af -af -af -af -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -af -af -af -af -af -"} -(160,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ed -ed -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -af -af -af -af -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -af -af -af -af -af -"} -(161,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -af -af -af -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -af -af -af -af -af -"} -(162,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -af -af -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -af -af -af -af -af -"} -(163,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -af -af -af -af -af -ab -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -af -af -af -af -af -"} -(164,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -af -ab -af -af -af -af -ab -ab -ed -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -af -af -af -af -af -"} -(165,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -ab -ab -af -af -af -af -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -af -af -af -af -af -"} -(166,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -ab -ab -ed -ed -ab -ab -af -af -af -af -ab -ab -ab -af -ab -af -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -af -af -af -af -af -"} -(167,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -ab -al -al -al -al -ab -af -af -af -ab -ab -ab -af -af -af -af -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -ab -af -ab -af -af -af -af -af -af -"} -(168,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -ab -al -al -al -al -ab -af -af -af -af -af -af -af -af -af -af -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ab -ab -ab -af -af -af -af -af -af -af -af -af -af -"} -(169,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -ed -al -al -al -al -ab -ab -ab -ab -af -af -af -af -af -af -af -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ab -ab -af -af -af -af -af -ab -af -af -af -af -af -"} -(170,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ed -ed -al -al -al -al -ed -ab -ab -ab -af -af -af -af -af -af -af -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ed -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ed -af -af -af -af -af -af -af -af -af -af -af -"} -(171,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -ed -al -al -al -al -ed -ed -ab -ab -af -af -af -af -af -af -af -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -ab -af -af -af -af -af -"} -(172,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -ed -al -al -al -al -ed -ed -ab -ab -af -af -af -af -af -af -af -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ed -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -ab -af -af -af -af -af -"} -(173,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -ed -al -al -al -al -ed -ab -ab -ab -af -af -af -af -af -af -af -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -af -af -af -af -af -"} -(174,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ed -ab -ab -ab -ed -al -al -al -al -ed -ab -ab -ab -af -af -af -af -af -af -af -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -af -af -af -af -af -"} -(175,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ed -ed -ab -ab -ab -al -al -al -al -ab -ab -ab -ab -af -af -af -af -af -af -af -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ed -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -af -af -af -af -af -"} -(176,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -al -al -al -al -ab -ab -ab -af -af -af -af -af -af -af -af -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ed -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -af -af -af -af -af -"} -(177,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ed -ed -ab -ab -ab -ab -af -af -af -af -af -af -af -af -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -af -af -af -af -af -"} -(178,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -af -af -af -af -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -af -af -af -af -af -"} -(179,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ed -ab -ab -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -af -af -af -ab -ed -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -af -af -af -af -af -"} -(180,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ed -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -af -af -af -af -af -"} -(181,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -af -af -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -af -af -af -af -af -"} -(182,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -af -af -af -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -af -af -af -af -af -"} -(183,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -af -af -af -af -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -af -af -af -af -af -"} -(184,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ed -al -ab -ab -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -af -af -af -af -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -af -af -af -af -af -"} -(185,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ed -ed -al -ab -ab -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -af -af -af -af -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -af -af -af -af -af -"} -(186,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ed -ed -al -ed -ab -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -af -af -af -af -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ab -af -af -af -af -af -af -af -af -af -af -"} -(187,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ed -ed -al -ed -ab -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -af -af -af -af -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ab -al -af -af -af -af -af -af -af -af -af -"} -(188,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ed -ed -al -ab -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -af -af -af -af -af -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -af -af -af -"} -(189,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ed -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -af -af -af -af -af -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -af -af -af -"} -(190,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -af -ab -af -af -ab -ab -ab -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -af -af -af -"} -(191,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -af -af -af -af -ab -ab -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ed -af -af -af -af -af -af -af -af -af -"} -(192,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -af -af -af -af -ab -ab -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -af -af -af -af -"} -(193,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ed -ab -ab -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -af -af -af -af -ab -ab -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -af -af -af -af -"} -(194,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -af -af -af -af -ab -ab -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -af -af -af -af -"} -(195,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -af -af -af -af -af -af -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ed -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -af -af -af -af -"} -(196,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ed -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -af -af -af -af -af -af -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -af -af -af -af -"} -(197,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ed -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -af -af -af -af -af -af -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -af -af -af -af -"} -(198,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ed -ed -ab -ab -ed -ed -ab -ab -ab -ab -af -af -af -af -af -af -af -af -af -af -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -af -af -af -"} -(199,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -af -af -af -af -af -af -af -af -af -af -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ed -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -af -af -af -"} -(200,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ed -ab -ab -ab -af -af -af -af -af -af -af -af -af -af -ab -al -al -al -al -al -al -ed -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -af -af -af -"} -(201,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ed -ab -ab -ab -af -af -af -af -af -af -af -af -af -af -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -af -af -af -"} -(202,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -af -af -af -af -af -af -af -af -af -af -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -af -af -af -"} -(203,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ed -ed -ed -ab -ab -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -af -af -af -af -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -af -af -af -"} -(204,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ed -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -af -af -af -af -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ed -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -af -af -af -"} -(205,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -af -af -ab -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -af -af -af -"} -(206,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -ab -ab -ab -ab -al -al -ab -ab -ab -af -af -af -af -ab -ab -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ab -af -af -af -af -af -af -af -af -af -"} -(207,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -ab -ab -ab -ed -al -al -ab -ab -ab -af -ab -af -ab -ab -ab -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -af -af -af -af -af -"} -(208,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -ab -ab -ab -ab -al -al -ed -ab -af -af -af -af -af -ab -ab -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -af -af -af -af -af -"} -(209,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -ab -ab -ab -ab -ab -ed -ab -ab -af -af -af -af -af -af -ab -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -af -af -af -af -af -"} -(210,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ed -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -af -af -ab -ab -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -af -af -af -af -af -"} -(211,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -af -af -ab -ab -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -af -af -af -af -af -"} -(212,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ed -ab -ab -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -af -af -af -ab -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -af -af -af -af -af -"} -(213,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ed -ab -ab -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -af -af -af -ab -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -af -af -af -af -af -"} -(214,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ed -ab -ab -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -af -af -af -af -ab -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ed -ab -af -af -af -af -af -af -af -af -af -"} -(215,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -af -af -af -af -ab -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -af -af -af -"} -(216,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -af -af -af -af -ab -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -af -af -af -"} -(217,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -af -af -af -af -ab -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -af -af -af -"} -(218,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ed -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -af -af -af -af -ab -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -af -af -af -"} -(219,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ed -ed -ed -ab -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -af -af -af -af -ab -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -af -af -af -"} -(220,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ed -al -al -al -al -ab -ab -ab -ab -ab -ab -af -af -af -af -af -af -af -af -ab -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ed -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ab -af -af -af -af -af -af -af -af -"} -(221,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ed -al -al -al -al -ed -ab -ab -ab -ab -ab -af -af -af -af -af -af -af -af -ab -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ed -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ab -af -af -af -af -af -af -af -af -"} -(222,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ed -al -al -al -al -ed -ab -ab -ab -ab -ab -af -af -af -af -af -af -af -af -ab -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ab -af -af -af -af -af -af -af -af -"} -(223,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ed -al -al -al -al -ed -ab -ab -ab -ab -ab -af -af -af -af -af -af -af -af -ab -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -af -af -af -"} -(224,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ed -al -al -al -al -ed -ab -ab -ab -ab -ab -af -af -af -af -af -af -af -af -ab -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ed -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ab -af -af -af -af -af -af -af -af -af -"} -(225,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -al -al -al -al -ed -ab -ab -ab -ab -ab -af -af -af -af -af -af -af -af -ab -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ab -af -af -af -af -af -af -af -af -af -"} -(226,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -al -al -al -al -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -af -af -ab -ab -ed -ed -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -af -af -af -af -"} -(227,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -al -al -al -al -ab -ab -ab -ab -ab -ab -ab -ab -af -af -ab -ab -ab -ed -ed -ed -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ed -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -af -af -af -af -"} -(228,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -af -af -ab -ed -ed -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ab -af -af -af -af -af -af -af -af -af -af -"} -(229,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -af -af -ab -ab -ab -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ab -ab -af -af -af -af -af -af -af -af -af -af -"} -(230,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -af -af -af -af -ab -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ab -ab -ab -ab -af -af -af -af -af -af -af -af -af -af -"} -(231,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -af -af -af -af -af -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ab -ab -af -af -af -af -af -af -af -af -af -af -"} -(232,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -af -af -af -af -af -af -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -af -af -af -af -"} -(233,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ed -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -af -af -af -af -af -af -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -af -af -af -"} -(234,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ed -ed -ab -ab -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -af -af -af -af -af -af -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -af -af -af -"} -(235,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ed -ed -ed -ed -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -af -af -af -af -af -af -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -af -af -af -"} -(236,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ed -ed -ed -ed -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -af -ab -af -af -af -af -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ed -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -af -af -af -"} -(237,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ed -ed -ab -ab -ab -ab -ab -ab -af -af -af -af -af -af -af -af -af -af -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ed -af -af -af -af -af -af -af -af -af -"} -(238,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -ab -ab -af -af -af -af -af -ab -af -af -af -af -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -af -af -af -af -"} -(239,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ed -ab -ab -ab -ab -ab -af -af -af -af -ab -ab -af -af -af -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -af -af -af -af -"} -(240,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ed -ab -ab -ab -ab -ab -ab -af -ab -af -ab -ab -ab -ab -ab -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -af -af -af -af -"} -(241,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ed -ab -ab -ab -ab -ab -af -af -af -af -af -ab -ab -ab -ab -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -af -af -af -af -"} -(242,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -af -af -af -af -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -af -af -af -af -"} -(243,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -af -af -af -af -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -af -af -af -af -"} -(244,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -af -af -af -af -ab -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -af -af -af -af -"} -(245,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -af -af -af -af -ab -ed -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -af -af -af -af -"} -(246,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -af -af -af -af -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -af -af -af -af -"} -(247,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ed -ab -ab -ab -ab -ab -ab -af -af -af -af -af -af -af -af -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -af -af -af -af -"} -(248,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ed -ed -ab -ab -ab -ab -ab -af -af -af -af -af -af -af -af -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -ed -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -af -af -af -af -"} -(249,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ed -ed -ed -ed -ed -ed -ab -ab -ab -ab -ab -ab -af -af -af -af -af -af -af -af -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -af -af -af -af -"} -(250,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ed -ed -ab -ab -ed -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -af -af -af -af -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ed -al -al -al -al -al -af -af -af -af -af -af -af -af -af -"} -(251,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -af -af -af -af -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -ed -af -af -af -af -af -af -af -af -af -af -af -"} -(252,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -af -af -af -af -af -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -af -af -af -af -af -af -"} -(253,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ed -ed -ed -ed -ab -ab -ab -ab -ab -ab -ab -af -af -af -af -af -af -af -af -af -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -af -af -af -af -af -af -"} -(254,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -af -af -af -af -af -af -af -af -af -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -af -af -af -af -af -af -af -"} -(255,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ed -ab -ab -ab -af -af -af -af -af -af -af -af -af -ab -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -af -af -af -af -af -af -af -af -af -af -af -af -af -af +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aeaaaaaaaaaaaaaaaaaaaaaaaaaaaaababaaaaaaaaaeaeaaaaaaaaaaababababaeaeaeaaaaaaaaaaaaababababaeaeaaaaababababababababababababababababababaeaaaaaaaaabababababababababababababababaeaaaaaaaaaaaeaeaeababababababaeaeaeaaaaaaaaaaaeababaeaeabaeaaaaaaaeabababababafababababaeaeaaaaababababaeaaaaaaaeababaeaeaaaaabababaeaeaaaaaaaaaeabababababababababababababaeaeaaaaaaaaabababababaeaeaeaeaeabababaeaaaaaaaaaeaaaaaaaaaeaeabababababaeaaaaaaaaaaaaaaaeaeaeaeaeaeaeababababababababaeaeaeaeabaaaaaaaaaaaaaaaaaaaaaaaeaeababaeaaaa +aeaaaaaaaaaaaaaaaeababababaeaeabaeaaaaaaaaabaeaaaaaaaaaaabababababaeaeaaaaaaaaaaaaabababababaeaeaeabababababababaeaeaeababababababababaeaaaaaaaaaeabababababaeaeaeabababababababaaaaaaaaaaaeabababababababababaeaeaaaaaaaaaaaeaeabababababaaaaaaababababababababababababaeaaaaabababababaeaeaeababababaeaaaaabababaeaeaaaaaaaaaeababababababababababababababaeaaaaaaaaababababaeaeaeaeaeabababababaaaaaaaaaeaaaaaaaaaeabababababababaaaaaaaeababababaeaaaaaaaaaaaaaaaaababababababaeaeaeabaaaaaaaaaaaaaaaaaaaaaaaeaeababaeaaaa +abaeaeaeababaeaeababababababababaeaaaaaaaaababababaeaeabababababababaeaaaaaaaaaaaaababababababababababababababaaaaaaaeabababababababababaaaaaaaaaeabababababaeaaaaaaabababababababaeaeabababababababababababababaeaaaaaaaaaaaeabababababababaeaeababababababababababababaeaaaaabababababababababababababaaaaababababaeaeabababababababababababababababababababaaaaaaaaaeabababaaaaaaaaaaabababababababaeaeabaaaaaaaaaeababababababababaeaeabababababaeaaaaaaaaaaaaaaaaabababababababaeaeabaaaaaaaaaaaaaaaaaaaaaaaeabababaeaaaa +abababagababababababababababababababaeaeabababababaeabababababababababaaaaaaaaaaaaabababababababababababababaeaaaaaaaeabababababababababababaeaeababababababaeaaaaaaaeababababababababababababababababaeabababababaaaaaaaaaaaeababababababababababababababababababababababaaaaaeabababababababababababaeaaaaabaeababaeababababababababababababababaeababababababababaeababababababaeaeabababababababababababaaaaaaaaabababababababababababababababababaaaaaaaaaaaaaaaaabababababababaeaeaeaaaaaaaaaaaaaaaaaaaaaaaeabababaeaaaa +abababagagabababagabababababababababababababababababababababababababababaeaeaeaeababababababababababababababaeaaaaaaabababababababababababababababababababababaaaaaaaeababababababababababababababaaaaaaaeababababaaaaaaaaaaababababababaeababababababababababababababababaaaaaeababababababababababababaaaaaeaeababababababababababababababababaeaeaeaeaeaeabababababababababababababababababababababababaeaaaaaaaaabababababababababababababababababaaaaaaaaaaaaaaaaabababababababababaeaaaaaaaaaaaaaaaaaaaaaaaeaeabababaaaa +agagagagagababagagagagagagagagagagagagagagagabagababagagagababababababababababababababababababababababababababaaaaaaabababababagagagababababababababababababababaeaeabababababababababababababababaaaaaaaeabababababaeaeabababababababaeaeaeaeabababababababababababababababaeabababababababababababababaaaaaeaeababababababababababababababaaaaaaaaaaaaaaaaaaaaabababababababababababababababababababababaeaaaaaaaaababababababababababababababababababaeaeaeaeaeabababababababababababababaeaeaeabababababaeaeaeababababaaaa +agagagagagagagagagagagagagagagagagagagagagagagagagagagagagabagagagagagagagagagagagabababagagagagagagagabababababababababababagagabagababababababababababababababababababababababababababababababababaeaeababababababababababababababaeaaaaaaaaabababababababababababababababababababababababababababababaaaaaeababababababababababababababaeaaaaaaaaaaaaaaaaaaaaaeababababababababababababababababababababababaeaeababababababababababababababababababababababababababababababababababababababababababababababaeabababababaaaa +agagagagagababagagagagagagagagagagagagagagagabagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagababagagagabagagagagagabababababababagagagagagagagagagabababababababababababababababababababababababababababababaaaaaaaaabababababahahaiahahabababababababababababababababababababaeaeabababababababababababababababaeaaaaaaaaaaaaaaaaaaaaaeabababababababababababababababababababababababababababababaeabababababababababababababababababababababababababababababababababababababababababababababababae +agagagagagagabagagagagagagagagagagagagagagababagagagagagagagagagagabababagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagababagagagagagagagagagagabagagagagagagagabababababababababababababababababababababaeaeababababababahajaiakahabababababababababababababababababababababababababababababababababababababaaaaaaaaaaaaaaaaaaaaabababababababababababababababababababababababababababababaaaaaaababababababababababababababababababababababababababababababababababababababababababababababab +agagagagagagagagagagagagagagagagagababababababagagagagagagagabababababababababagagagagagagagagagagagagagagagagagagagagabagagagagabagagagagagagagagagagagabagagagagagagagagagagagagagagagagagagagababababagagagagagagagagagagagabababagagagagagagagabagagalajaiakamagagagagabagagagagagagagagagagagagagagagagabababababababababababababababababababaeaeaeaeaeabababababababababababababababababababababababababababababababaaaaaaaeabababababababababababababababababababababababababababababababababababababababababababababab +agagagagagagagagagagagagagagagabababababababagagagagagagagagabababagagagababababagagabababagagagagagagagagagagagagagagagagagagababagagagagagagagagagagagabagagagagagagagagagagabagagagagagagagagagababagagagagagagagagagagagagabababagagagagagagagagagagalajaiakamagagagagagagagagagagagagagagagagagagagagagagababababababababababababagagagagagababaeaeababababababababababababababababababagagagagagagagagagagagagabababababaeababababababababababababababababababababababababababababababababababababababababababababababab +agagagagagagagagagagagagagagagagagabababababagagagagagagagabababagagagagabababababababababagagagagagagagagagagagagagagagabababababababagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagabagagagagagagagagagagagagagagabagagagagagagagabagagagalajaiakamagagagagagagagagagagagagagagagagagagagagagagabababababababababababagagagagagagabababababababababababababababababababagagabagagagagagagagagagagagagabababababababababababagagagagagagagagagagagagababagagagagagagagagagagagagabagababababababababababagagagag +agagagagagagagagagagagagagagagagagagagababagagagagagagagagabagagagagagagagababagagagagagagagagagagagagagagagagagagagagabababababababababababababababagagagagagagagagagagagagababagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagalajaiakamababagagagagagagagagagabagababababababababagabagababagagagagagababagagagagagagabababababababagagagababababagagagagagagagabagagagagagagagagagagagagagagagababagagagagagagagagagagagagagagagagagagagabagagagagagagagagagagagagagagagagagagagagagagagagagagagag +agagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagabagagabababababababababababababagabagagagagagagababababababababagagagagagagagagagagagagagagagagagagagagagagagagagagagagabagagagagalajaiakamagabagagagagagagagagagagagagagababababagagagagagababagagagagagagabagagagagabagagagagagagagagagagagagababagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagabagagagagagagagagagagagagagagag +agagagagagagagagagagagagagagagagagagagagagagagagagagagagagabagagagagagagabagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagababagagagagagagagagagababababababababababababababagagagagagagagagagagagagagagagagagagagagagagagagagagagagalajaiakamagagagagagagagagagagagagagagagagagagagagagagagagabagagagagagagagagagagabababagagagagagagagagagagagagababagagagagagagagagabagagagagagagagagagagagagagagagagabagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagag +agagagagagagagagagagagagagagagagagagagagagagagagagagagagagabagagagagagagagagagagagagagagagagagagagagagagagagagagagagagabagagagagagagagagagagagagagagagagagagagagagagagagagagagagagababababababababagagagagagagagagagagagagagagagagagagagagagagagabagagagalajaiakamagababagagagagagagagagagagagagagagagagagagagagagabagagagagagagagagagababababagagagagagagagagagagagagababagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagabagagagagagagagagagagagababagagagagagagagagagagagagagagag +agagagagagagagagagagagagagagagagagagagagagababagagagagagabababagagagagagabagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagabagagagagagagababababagagabagababababababababababagagagagagagagagagagagagagagagagagagagagagagagabagagagalajaiakamagabababagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagabagagagagagagagagagagagagagagabagagagagagagagagagagagagagagagagagagagagagagagagagabagagagagagagagagagagagagagagagagagagagabagagagagagagagagabagababababagagagagagagagagagagagagagag +agagagagagagagagagagagagagabanabababababababababababababababababagagagabababagagagagabagagagagagagagagagagagagagagagagabagagagagagagagagagagagagagagagagagagababababagagagagagagagagagagagababababababababababababagabagagagagagagagagagagagagagagagagagalajaiakamagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagabagagagagagagagagabagagagagagagagagagagagagagagagabababagagagagagagagagagagagagagagagagagagabababagagagagagagagagagagababagagagagagagagagagagagagagag +agagagagagagagagagagagagagababaeagagagagagagababagagabababababababagagabababagagagababagagagagagagagagagagagagagagagabababagagagagagagagagagagababagagagagababababagagagagagagagagagagagagagagagagagagababagagagagagagagagagagagagagagagagagagagagagagagalajaiakamagagagagagabagagagagagagagagagagagagagagagagagagabagagagagagagagagagagagabagagagagagagagagagagagagagagagagagagagagagagagabababababagagagagagagagagagagabababababababagagagagagagagagagagagagagagabaeaeabagagagagagagagagagagababagagagagagagagagagagagagagag +agagagagagagagagagagagaganababaeaeabagagagagagabagagagabababababagagababababagagabababagagagagagagagagagagagagagagababababagagagagagagagagababababababababababababababababababagagagagagagagagagagagagagabagagagagagagagagagagagagagagagagagabagagagagagalajaiakamagagagagagababagagagagagagagabababababababababababagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagabababababagagagagagagagagagagababababababababababababababababababababababaeaeababagagagagagagagagagababagagagagagagagagagagagagagag +agagagagagagababababababanabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababagagagagagagagagagagagagagagagagagagagagagabababababababababababababababahajaiakahabababababababababababababababababaeananababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababaeaeababababagagagagagagagababababababababababababababababab +agagagagagaganabababananananabababababababababababananababababababababababababababanananabababababababababababababanabababananananabababababababababababababababababababababababababababababababababababababababababababababababaeaeababababababababababahahaiahahababababababababababababababababananananabababababababababababababababababababababababababababababaeanananananabababababababababababababababananananananananananababababababababababababababababaeanabababababababababababababababababaeanananananananananan +agagagagagaeananananaeananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananaeananaeananananabababababababanananananananananananananananananananaeananananananananananananabaeananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagaeananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananaeananananananananananananananananananananananaeababababababaeanananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagaeanananaeananaeanananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananabababababababanananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananabababababababanananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananaeababababababanananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananaeababababababanananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagaganananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananaeabababababababanananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagananananananananananananananananananananananananananananananaeananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananaeabababababababababanananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagaganananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananababababababababababananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananaeananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananaeababababababababababanananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagaganananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananababababababababababanananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagaganananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananabababababababababaeanananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagananananananananananananananananananananananaeananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananaeabababababaeaeabananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananaeabababababaeanananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagaganananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananabababababababaeanananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagaganananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananababababababababananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananaeananananananan +agagagagagaganananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananaeabababababababanananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananaeanananananananananananananananananananananananananananan +agagagagagagaeanananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananaeananananananananananananananananananananananananananananananananananananananananananananananananananananananananaeabababababanananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagaganananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananababababaeanananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagaganananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagaganananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagaganananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagaganananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagaganananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagaganananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagaganananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagaganananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagaganananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagaganananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananaeananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananaeanananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagaganananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagaganananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagaganananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagaeananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagagaganananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagagaganananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagagagaeananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagagaganananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagagaganananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagagagananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananaeananananananananananananananananananananananananananananananananananan +agagagagagagagagaganananananananananananananananananananananananananananaeanananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagagaganananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagagaganananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagagaganananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagagaganananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagagaganananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagagaganananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagagaganananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagagaganananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagagaganananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagagaganananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagagabanananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagababanananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagaganababanananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananaeanananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagaeanananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagaganananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagaganananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagaganananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagaganananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagaganananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagaeananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananaeanananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagagaganananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagabagagagagaganananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananaeanananananananananananananananananananananananananananananananananan +agagagagagagaoabababagagagagananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagaoaeaoabagagagagagagaganananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagaoaoaoaoaoagagagagagagagananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagaoaoaoaoaoaoaoagagagagagaganananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagaoaoaoaoaoaoaoagagagagaganananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagaoaoaoaoaoaoaoagaoagagagagagagananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagaoaoaoaoaoaoaoaoaoaoagagagagagaganananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagaoaoaoaoaoaoaoaoaoaoagagagagagagagananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagaoaoaoaoaoaoaoaoaoaoaoagaoagagagagagagananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagaoaoaoaoaoaoaoaoaoaoaoaoaoaoagagagagagaganananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoagagagagagananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoagagagagagananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananaeanananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoabagagaganananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoabagagagabananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoabagagagababanananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoagagagagagananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoagabagagagagagaganananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoabagagagagagagananananananananananananananananananananananananananananananananananananananananananananananananananananaeananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaeagagagagananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagaeaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoagagagagababaeananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoagagagabanagaganananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoagagagagagagagagananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoagagagagagagananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoagagagagagagaganananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoagagagagagaganananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoagagaoagagagagagananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoagaoaoagagagagagananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoagagagagagananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagaeabagagagaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoagagagagananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagaeabagagagaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoagagaganananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagaeababagagaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoagagaganananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagaeabababagaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoagagaganananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagaeabababagabaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoagagaganaganananababanananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagabagagabagabaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoagagagagagagagabagabanananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananaeanananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagabaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoagagagagagagagagabanananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagabagaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoagagagagagagagagananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoagagagagagagaganananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagababaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoabagagagagagagagaganananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananaeananananananananananananananananananaeanananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagabaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoababagagagagagagagaganananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoababagagagagagagaganananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoabababaoagagagananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoagagagananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoagagaganananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoagagagananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananaeananananananananananananananananananananananananananananananan +agagagagagagagaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoagagagagananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoagagagaganananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananaeananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoagagagagananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoagagagananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagabaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoagagagananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagabaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoagagagananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagabaoabagabaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoagagananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananaeananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagababagagaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoagaganananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagagaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoagagagananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagagaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoagagagananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagagaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoagagagaganananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagagaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoagagagaganananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagagaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoabagagagagaganananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagaoagagaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoabagagagagaganananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagaoababaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoagagagagagaeanananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagaoababaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoagagagagagagabanananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagaoababaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoagagagagagagabanananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagabaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoagagagagagagabanananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagagaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoagagagagagagananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagagaoabaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoagagagagagagaganananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagagaoabaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoabagagagagagaganananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagagaoababaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoabagagagagagaganananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagagagababaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoabagaoagagagaganananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagagagagaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoabaoagagagaganananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagagagagaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoagagagaganananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagagagagaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoagagagaganananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagagagagaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoagagagananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagagagagaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoagagagananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagagagagagaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoagagagananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagagagagagaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoagagagananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagagagagagaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoagagagananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagagagagagaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoagagagananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagagagagagaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoagagagagananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagagagagagaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoagagagagaganananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagagagagagaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoagagagagaganananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagagagagagaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoagagagagagabanananananananananananananananananananananananananananananananananananananananananananananananaeananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagagagagagaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoagagagagagabananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagagagagagaoabaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoagagagagaganananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagagagagagagababaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoagagagagananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagagagagagagagabaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoagagagagananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagagagagagagagaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoagagagaganananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananaeananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagagagagagagagaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoagagagagananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagagagagagagagaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoagagagagananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagagagagagagagaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoagagagagananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagagagagagagagaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoagagagananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagagagagagagabaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoagagagabanananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananaeanananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagagagagagaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoabagagagabanananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagagagagagabaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoabagagagagananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagagagagagagagagagagababaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoagagagagananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagagagagagagagagagagagabaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoabagagagananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagagagagagagagagagagagagaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoagagagananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagagagagagagagagagagagagaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoagagagaganananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagagagagagagagagagagagagaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoagagagagabananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagagagagagagagagagagagagaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoagagagagabananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagagagagagagagagagagagagaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoagagagagabanananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananaeananananananananananananananananananan +agagagagagagagagagagagagagagagagagagabaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoagagagananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagagagagagagagagagagagagabaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoagagagananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagagagagagagagagagagagagaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoagagagananananananananananananananananananananananananananababanananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagagagagagagagagagagagagabaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoagagaganananananananananananananananananananananananapababababanabanananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagagagagagagagagagagagagagabaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoagagaganananananananananananananananananananananananababababananabanabanananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagagagagagagagagagagagagagagaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoagagaganananananananananananananananananananananananabababababababababanananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagagagagagagagagagagagagagagaqaqararararararaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoagagaganananananananananananananananananananananananananabababababababanananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagagagagagagagagagagagagagagaqasatauaravawararaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoaoagagagagananananananananananananananananananananananananabababababababababapapababapanananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagagagagaxagagagagagagagagabaqasayazaravaAaBaraoaoaoaoaoaoaoaoaoaoaoaoaoaoaoabagagagaganananananananananananananananananananananananananabababababababababababababanananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagagagagaxaxagaxaxagagagababararaCararavaAaDaraoaxaoaoaoaoaoaoaoaoaoaoaoaoaoagagagaganananananananananananananananananananananananananananananabababababababababababanabananananananababababananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagagagaxaxaxaxaxaxaxaxararararaAaAaEararaFararararaxaxaoaoaoaoaoaoaoaoaoaoaoagagagagananabababagananananananananananananananananapababanababananababababababababababanababababababababababababanababanabananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagaxaxaxaxaxaxaxaxaxaxaraGaHaraAaAaAaAaAaAaIaAaJaKaxaxaoaoaoaoaoaoaoaoaoaoaoaoagagaganabagagagagagabananananananananananananananabababababababanababababababababababababababababababanananababababababababanananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagaxaxaxaxaxaxaxaxaxaxaxaraLaAaMaAaAaAaAaNaOararararaPaxaxaxaxaoaoaoaoaoaoaoaoaoagagagagagagagabagabababanananagaganananananananababababababababababababababababababababababababababananabababababababababananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagaxagagaxaxaxaxaxaxaxaxaraQaRaraAaAaAaAaraSaraTaTaTaxaxaxaxaxaoaoaoaoaoaoaoaoaoagagagagagagababagagagagananagagagananagagagagananababababababababababababababanananababababababababababababababababababanabanananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagagagaxaxaxaxaxaxaxaxararararaAaUaAaAaraVaraWaxaxaxaxaxaxaxaxaoaoaoaoaoaoaoaoaxagagagagagabagagagagaganagagagananabagagagagaganabababababababababababananananapababababababababababababababababababananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagaxagaxaxaxaxaxaxaxaxaxaXaYaZbaaAbbaAbcbdbearaWaxaxaxaxaxaxaxahaoaoaoaoaoaoaoaoaxagagagagagagagagagagagagagagagabababababababagagababababababanananananananananababababababababababababababapapanananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagagaxaxaxaxaxaxaxaxaxararararaAaAaRararaVaraxaxaxaxaxaxaxaxaTaoaoaoaoaoaoaoaxaxagagagagababagagagagagagagagabbfbfbgbgbfbfababagabababababapananananananababababababababababababababababababapanananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagaxagagagaxaxaxaxaxaxaxaxbhbibjbkaAaAblbmbmbnaraxaxaxaxaxaxaxaxaoaoaoaoaoaoaoaoaxaxagagagabababababagagagagabababbfbobpbpbqbfabababababababababanananananababababababababababababababababababababanananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagagagaxaxaxaxaxaxaxaxarararaAaAaAaAararararaxaxaxagaxaxaxaxaxaxaoaoaoaoaoaoaxagagagabababababababagagbrbrbsbsbfbtbububvbfbfbfbfbwabababababababababababababababababababababababababananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagagaxaxaxaxaxaxaxaxbxbyaJbzaAaAbAbBbCbBbDaraxaxagagagagagaxaxaxaoaoaoaoaoaxaxagagagababababababababbsbsbEbFbGbHbIbubJbKbgbLbMbgabababababababababababababababababababababababababababapanananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananaeananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagagagaxaxaxaxaxaxaxaxarararararbNarararbOarararagagagagagagagaxaoaoaxaxaxaxagagababababababababbPbsbsbQbRbSbTbUbVbWbXbYbZcabYcbababababababababababababababababababapabababababababababananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagagagaxaxaxaxaxaxaxaxaxaxcccdcecfcgarchcicjckaragagagagagagagagagaxaxaxaxagagagagagabababababclcmbRcncocpcqcrbHcsctcucvbgcwcxbgabababababababababababababababababananananabababababababananancyczababanananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagagagaxaxaxaxaxaxaxaxaxcccccdcAcBcCarcDcEcFcGaragagagagagagagagagagagagagagagagagabababababababbsbsbscHbRcIcJbfbfbfbfbfbfbfbfbfbwababababababababababababababababananananapababababababanananababababanananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagagagagaxaxagaxaxagagagagcccdcKcKcKararararararagabababagagagananagagagababagagagagababababababababbsbscLcIcMcNcOcPbraeanananananabababagagabababababababababababananananananabababababanananabababababananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagagagagagaxagagaxagagagagagagagagagagagagagagagabaeanababababaecQcQcRcQcQcQcQagagagabababababababagabbrcScIcJbrbrbrbrbrbrbrbrbranababagagagababababababababababanananananananababababababapababababababananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagagagagagagagagagagagagcTagagagagagagagagcUcUcUcUcUcUcUcQcVcVcQcQcWcXcYcZdacQagagagagabababababagagagbrdbdccrddbrdedfdgdhdidjbrabagagagagaganabababagababababababananananananananananababababababababapananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagagagagagcTagagagagababagagabcQcQcQcQcQcQcUdkdldmdndocUdpdqdqdrcQdsdtdudvdacQabagagagagagababagagagagbrcocIbRdwdxdybRbRbRdzdAbrabagagagagaganababagagabananabababananananananananananananababababapananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagagagagagagagagagagagababagabcQdBdCdDdEdFcUdkdGdHdIdJcUdKdLdMdNcQdOdPdQdtdRcQababagagagagagagagagagabbrdScIbRdTbrdUbRdVdWbrdXbragagagagagagananabagagabananapabababanananananananananananababababapananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagagagagagagagagagagagababababcQdYdZdZdZdZcUcUcUeacUcUcUcQebecebcQcQcQedcQcQcQcVcVcVagagagagababababbsbseecIbRbGefcLbRegehefeibragagagagagagananabagagabanananananananananananananananananabababababananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagagagagagagagagagagagagabababejdZekelemdZejeneoepeqereseneoeteqeueneoevewenenenexcVcVcVcVcVbsbsbsbsbscLbRcIbRcJeycobRegezeAeBbragagagagagagananabagagaganananananananananananananananananapababababananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagagagagagagagagababagababababejeCeDeEeFeGeHeIeJeKeLeLeLeLeLeMeLeNeLeLeOePeLePeLeQeReSeLeLeLeTeTeTbTeUeVeTeWeXeYeZfafbfcfdefeibragagagagaganananagagagagabananananananananananananananananapababababananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagagagagagagagagabababababababejfeekffemdZejenfgfhfifjenenenenenfkenfjexfhfiflenfmcVcVcVcVcVbsbsbsbsbscHbRfnbRcrefcHcJbrefefeibrabagagagagananagagagagagagagagaganananananananananananananabababababananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagagagagagagagagagababababababcQdZdZfofpfqcQcQcQfrcQcQcQcQcQcQfifkcQcQebfsebcQcQcQcVababababababababbsbsftfufvfwbrbRfxfyfzfzfAbrababagaganananagagagagagagagagabanananananananananananananabababababananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagagagagagagagagagabagababababcQcQcQcQcQcQcQfBfCetfDfEcQfFfGfHfIfJcQfKfLfMfLfNfOcVababagagagagagagababbrbrbrbsbsbrbsbrbrbrbrbrbrabababaganananagagagagagagagababananananabababababanananaeababababababanananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagagagagagagagagagagagababagababananananancQfPenflenfQcQfRfScQfTfkebfLfLfUfLfLfVcQabagagagagagagagagabanabababababababababababababababababananababagagagagababababapapabababababababababababfWababababababababababanananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagagagagagagagagagagagabagagagagabanananancQfXfYfZgagbcQcQcQcQfifkebfLgcgdgegfggcQabagagagagagagagagaganagagagagababababababababababababababanababababagabababababababababababababababababababababababababababababababanananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagagagagagagagagagagagabagagagagabababanaecQcQcVcVcVcQcQfFfGghfIfJcQgifLgjgkfLglcVabagagagagagagagagagagagagagagagagagagagagabababababababababababababababababababababababababababababababababababababababababababababababanananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagagagagagagagagagagagagagagagagagabaganananababababancQfRgmcQeqgncQcQcQcQcQcQcQcQanagagagagagagagagagagagagagagagagagagagagagagagagagagagagagabababababababababababababababababababababababababababababababababababababababananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagagagagagagagagagagagagagagagagagagagagananabababanaecQcQcQcQfifkcQgogpcQgqgrcQananagagagagagagagagagagagagagagagagagagagagagagagagagagabababababababababababababababababababababababababababababababababababababababababababanananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagagagagagagagagagagagagagagagagagagagaganagagagabanancQfFfGgsfIgtgugvgwgxgwgycQananabagagagagagagagagagagagagagagagagagagagagagabagabababababababababababababababababababababababababababababababababababababababababababababanananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagabancQfRgzcQeqflcQgAgBcQgCgrcQanababagagagagagagagagagagagagagagagagagagagagagagagagagababababababababababababababababababababababababababababababababababababababababababababananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagababcQcQcQcQcVcVcQcQcQcQcQcQcQanababagagagagagagagagagagagagagagagagagagagagabagagagagagagabababababababababababababababababababababababababababababababababababababababababababanananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananan +agagagagagagagagabagagagagagagagagagagagagagagagagagagagagagagagagababagagagabanaeananananananabababagagagagagagagagagagagagagagagagagagagagagagagagagagabababababababababababababababababababababababababababababababababababababababababababananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananaeananananan +agagagagagagagagababagabagagagagagagagagagagagagagagagagagagagagagabagagagagagabanananabababababagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagababababababababababababababababababababababababababababababababababababababababananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananabananananananananananananananananananananananananag +agagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagabanabababagagagagagabagagagagagagagagagagagagagagagagagagagagababababababababababababababababababababababababababababababababababababababababababababababababababanananananananananananananananananananananananananananananananananananananananananananananananababananananananananananananananananananananananananananananananananananananananananananananananananananananananananananananabanananananananananananananananananananananananagag +agagagagagagagagabagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagabababagabagagababagababagagagagagagagagagagagagagagagagagababababababababababababababababababababababababababababababababababababababababababababababababababababananananananananaeababanananabababananananananananananananananananananananananananananananananababaeananananananananananananananananananananananananananananananananananananananananananananananananananananananananananabababanananananananananananananananananananaeagagagag +agagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagababagababagabababaeababagagagagagagagagagagagagagagagagagagagagagagabababababababababababababababababababababababababababababababababababababababababababababababananabagagagagagagagabababagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagabagagagagagagagagagagagagagagagagagababanananananananananananananananananananagagagagagagagaeanananananananananananananababababanananananananananananananananananananagagagagag +agagagagagagagagagagabagagababagagagagagagagagagagagagagagagagagagagagagagagagagabagagagagagagabaeaeaeaeabagagagagagagagagagagagagagagagagagagagagagagababababababababababababababababababababababababababababababababababababababababababababababababagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagananananaeagagagagagagananananananananabagagagagagagagabanananananananananababagagagagagagagananananaeagagagagagagagagagagagaganagagagagag +agagagagagagagagagagagagabababababagagagagagagagagagagagagagagagagagagagagagagagabagagagagagabanaeaeaeaeababagagagagagagagagagagagagagagagagagagagagagababababababababababababababababababababababababababababababababababababababababababababababababagagagagagagagagagagabagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagabagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagabababagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagag +agagagagagagagagagababagabababababagagagagagagagagagagagagagagagagagagagagagagagagagagagagababaeaeaeaeaeaeababagagagagagagagagagagagagagagagagagagagagabababababababababababababababababababababababababababababababababababababababababababababababababagabagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagag +agagagagagagagabagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagabaeaeaeaeaeaeababagagagagagagagagagagagagagagagagagabababababababababababababababababababababababababababababababababababababababababababababababagagagagagagagagagagagagagagabagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagabagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagag +agagagagagagagagagagagagagabagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagabaeaeaeaeanababababagabagagagagagagabababagabagabababababababagagagagababababababababababababababababababababababababababababababababababababababagagagagagagagagagabagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagabagababagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagag +agagagagagagabagagagagagagagagagabagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagabanaeaeaeaeabagagagagagagagagagagagagagagagagagagabababababababagagagagagagagababababababababababababababababababababababababababagagagagabababababagababagagagagagagagagabagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagag +agagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagaganaeaeaeabagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagabababababababababababababababababababababababagagagagagagagagagagababagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagag +agagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagababababagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagababagagagagabagabababagagagagagagababababababagabagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagag +agagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagababagagabagagagagagagagagagagagagagagagababagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagag +agagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagababagagabagagagagagagagagagagagagagagagababagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagagag "} diff --git a/_maps/map_files/generic/z2.dmm b/_maps/map_files/generic/z2.dmm index cd9bdb86f4..239790bc13 100644 --- a/_maps/map_files/generic/z2.dmm +++ b/_maps/map_files/generic/z2.dmm @@ -1,1303 +1,1214 @@ -"aa" = (/turf/open/space,/area/space) -"ab" = (/turf/closed/indestructible/riveted,/area/space) -"ac" = (/obj/structure/window/reinforced,/turf/closed/indestructible/riveted,/area/space) -"ad" = (/obj/effect/landmark/transit,/turf/open/space,/area/space) -"ae" = (/obj/structure/window/reinforced{dir = 4},/turf/closed/indestructible/riveted,/area/space) -"af" = (/turf/open/floor/holofloor/snow/cold,/area/holodeck/rec_center/winterwonderland) -"ag" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/turf/closed/indestructible/riveted,/area/space) -"ah" = (/obj/structure/foamedmetal,/obj/structure/window{icon_state = "rwindow";dir = 8},/turf/open/floor/holofloor/asteroid,/area/holodeck/rec_center/bunker) -"ai" = (/obj/structure/foamedmetal,/obj/structure/window{icon_state = "rwindow";dir = 4},/turf/open/floor/holofloor/asteroid,/area/holodeck/rec_center/bunker) -"aj" = (/turf/open/floor/holofloor/asteroid,/area/holodeck/rec_center/bunker) -"ak" = (/turf/open/floor/holofloor{tag = "icon-asteroid_warn_side (WEST)";icon_state = "asteroid_warn_side";dir = 8},/area/holodeck/rec_center/bunker) -"al" = (/obj/structure/table,/obj/item/stack/medical/ointment{heal_burn = 10},/turf/open/floor/holofloor{tag = "icon-asteroid_warn_side (WEST)";icon_state = "asteroid_warn_side";dir = 8},/area/holodeck/rec_center/bunker) -"am" = (/obj/structure/table/wood{layer = 3.3},/obj/item/weapon/twohanded/required/kirbyplants{icon_state = "plant-05";layer = 4.1;pixel_y = 4},/turf/open/floor/holofloor{icon_state = "wood";dir = 9},/area/holodeck/rec_center/lounge) -"an" = (/obj/structure/closet/crate/bin,/turf/open/floor/holofloor{icon_state = "wood";dir = 9},/area/holodeck/rec_center/lounge) -"ao" = (/turf/open/floor/holofloor{icon_state = "wood";dir = 9},/area/holodeck/rec_center/lounge) -"ap" = (/obj/structure/table/wood,/obj/item/device/flashlight/lamp/green{layer = 3.3;pixel_y = 0},/turf/open/floor/holofloor{icon_state = "wood";dir = 9},/area/holodeck/rec_center/lounge) -"aq" = (/turf/open/floor/holofloor/plating,/area/holodeck/rec_center/wildlife) -"ar" = (/turf/open/floor/holofloor/plating,/area/holodeck/rec_center/offline) -"as" = (/turf/open/floor/holofloor/plating/burnmix,/area/holodeck/rec_center/burn) -"at" = (/turf/open/floor/holofloor{dir = 9;icon_state = "red"},/area/holodeck/rec_center/court) -"au" = (/turf/open/floor/holofloor{dir = 1;icon_state = "red"},/area/holodeck/rec_center/court) -"av" = (/turf/open/floor/holofloor{dir = 5;icon_state = "red"},/area/holodeck/rec_center/court) -"aw" = (/obj/structure/window/reinforced{dir = 8},/turf/closed/indestructible/riveted,/area/space) -"ax" = (/obj/structure/flora/bush,/turf/open/floor/holofloor/snow/cold,/area/holodeck/rec_center/winterwonderland) -"ay" = (/obj/item/toy/snowball{pixel_x = 0;pixel_y = 6},/obj/item/toy/snowball{pixel_x = 5;pixel_y = 0},/obj/item/toy/snowball{pixel_x = -4},/turf/open/floor/holofloor/snow/cold,/area/holodeck/rec_center/winterwonderland) -"az" = (/turf/open/floor/holofloor{tag = "icon-asteroid_warn (WEST)";icon_state = "asteroid_warn";dir = 8},/area/holodeck/rec_center/bunker) -"aA" = (/obj/structure/table,/obj/machinery/recharger,/turf/open/floor/holofloor{tag = "icon-asteroidfloor (WEST)";icon_state = "asteroidfloor";dir = 8},/area/holodeck/rec_center/bunker) -"aB" = (/obj/structure/table/wood,/obj/item/weapon/storage/box/matches{pixel_x = -4;pixel_y = 8},/turf/open/floor/holofloor{icon_state = "wood";dir = 9},/area/holodeck/rec_center/lounge) -"aC" = (/obj/structure/chair/wood/normal,/turf/open/floor/holofloor{icon_state = "wood";dir = 9},/area/holodeck/rec_center/lounge) -"aD" = (/obj/effect/holodeck_effect/mobspawner,/turf/open/floor/holofloor/plating,/area/holodeck/rec_center/wildlife) -"aE" = (/obj/effect/holodeck_effect/sparks,/turf/open/floor/holofloor/plating/burnmix,/area/holodeck/rec_center/burn) -"aF" = (/turf/open/floor/holofloor{dir = 8;icon_state = "red"},/area/holodeck/rec_center/court) -"aG" = (/turf/open/floor/holofloor,/area/holodeck/rec_center/court) -"aH" = (/turf/open/floor/holofloor{dir = 4;icon_state = "red"},/area/holodeck/rec_center/court) -"aI" = (/obj/structure/flora/grass/brown,/turf/open/floor/holofloor/snow/cold,/area/holodeck/rec_center/winterwonderland) -"aJ" = (/obj/structure/table,/obj/item/weapon/gun/energy/laser,/turf/open/floor/holofloor{tag = "icon-asteroidfloor (WEST)";icon_state = "asteroidfloor";dir = 8},/area/holodeck/rec_center/bunker) -"aK" = (/obj/structure/chair/wood/normal{icon_state = "wooden_chair";dir = 4},/turf/open/floor/holofloor{icon_state = "wood";dir = 9},/area/holodeck/rec_center/lounge) -"aL" = (/obj/structure/table/wood/poker,/obj/item/clothing/mask/cigarette/pipe,/turf/open/floor/holofloor{icon_state = "wood";dir = 9},/area/holodeck/rec_center/lounge) -"aM" = (/obj/structure/table/wood/poker,/obj/structure/table/wood/poker,/obj/effect/holodeck_effect/cards,/turf/open/floor/holofloor{icon_state = "wood";dir = 9},/area/holodeck/rec_center/lounge) -"aN" = (/obj/structure/chair/wood/normal{icon_state = "wooden_chair";dir = 8},/turf/open/floor/holofloor{icon_state = "wood";dir = 9},/area/holodeck/rec_center/lounge) -"aO" = (/obj/structure/statue/snow/snowman{anchored = 1},/turf/open/floor/holofloor/snow/cold,/area/holodeck/rec_center/winterwonderland) -"aP" = (/obj/structure/chair/wood/normal{icon_state = "wooden_chair";dir = 1},/turf/open/floor/holofloor{icon_state = "wood";dir = 9},/area/holodeck/rec_center/lounge) -"aQ" = (/obj/structure/chair/wood/wings,/turf/open/floor/holofloor/snow/cold,/area/holodeck/rec_center/winterwonderland) -"aR" = (/obj/structure/window/reinforced/tinted{icon_state = "rwindow";dir = 4},/turf/open/floor/holofloor{icon_state = "wood";dir = 9},/area/holodeck/rec_center/lounge) -"aS" = (/obj/structure/window/reinforced,/turf/open/floor/holofloor{icon_state = "wood";dir = 9},/area/holodeck/rec_center/lounge) -"aT" = (/obj/structure/flora/tree/pine,/turf/open/floor/holofloor/snow/cold,/area/holodeck/rec_center/winterwonderland) -"aU" = (/obj/structure/chair/wood,/turf/open/floor/holofloor/snow/cold,/area/holodeck/rec_center/winterwonderland) -"aV" = (/obj/structure/table/wood,/obj/item/weapon/twohanded/required/kirbyplants{icon_state = "plant-05";layer = 4.1;pixel_y = 10},/turf/open/floor/holofloor{icon_state = "wood";dir = 9},/area/holodeck/rec_center/lounge) -"aW" = (/turf/open/floor/holofloor{dir = 9;icon_state = "stairs-l"},/area/holodeck/rec_center/lounge) -"aX" = (/turf/open/floor/holofloor{dir = 9;icon_state = "stairs-r"},/area/holodeck/rec_center/lounge) -"aY" = (/turf/open/floor/holofloor{dir = 8;icon_state = "green"},/area/holodeck/rec_center/court) -"aZ" = (/turf/open/floor/holofloor{dir = 4;icon_state = "green"},/area/holodeck/rec_center/court) -"ba" = (/obj/structure/table/wood,/obj/item/device/flashlight/lamp/green{pixel_y = 4},/turf/open/floor/holofloor/carpet,/area/holodeck/rec_center/lounge) -"bb" = (/turf/open/floor/holofloor/carpet,/area/holodeck/rec_center/lounge) -"bc" = (/obj/structure/chair/comfy/brown{dir = 4},/turf/open/floor/holofloor/carpet,/area/holodeck/rec_center/lounge) -"bd" = (/obj/structure/chair/comfy/brown{dir = 8},/turf/open/floor/holofloor/carpet,/area/holodeck/rec_center/lounge) -"be" = (/obj/structure/table,/obj/item/stack/medical/bruise_pack{heal_brute = 10},/turf/open/floor/holofloor{tag = "icon-asteroid_warn_side (WEST)";icon_state = "asteroid_warn_side";dir = 8},/area/holodeck/rec_center/bunker) -"bf" = (/obj/structure/table/wood,/obj/item/device/instrument/violin,/turf/open/floor/holofloor/carpet,/area/holodeck/rec_center/lounge) -"bg" = (/obj/structure/chair/comfy/brown{buildstackamount = 0;dir = 1},/turf/open/floor/holofloor/carpet,/area/holodeck/rec_center/lounge) -"bh" = (/obj/structure/table/wood,/obj/item/weapon/book/manual/barman_recipes,/obj/item/clothing/mask/cigarette/pipe,/turf/open/floor/holofloor/carpet,/area/holodeck/rec_center/lounge) -"bi" = (/turf/open/floor/holofloor{dir = 10;icon_state = "green"},/area/holodeck/rec_center/court) -"bj" = (/turf/open/floor/holofloor{dir = 2;icon_state = "green"},/area/holodeck/rec_center/court) -"bk" = (/turf/open/floor/holofloor{dir = 6;icon_state = "green"},/area/holodeck/rec_center/court) -"bl" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/turf/closed/indestructible/riveted,/area/space) -"bm" = (/obj/effect/holodeck_effect/mobspawner/bee,/turf/open/floor/holofloor/asteroid,/area/holodeck/rec_center/anthophila) -"bn" = (/turf/open/floor/holofloor/grass,/area/holodeck/rec_center/pet_lounge) -"bo" = (/obj/structure/flora/ausbushes/sunnybush,/turf/open/floor/holofloor/grass,/area/holodeck/rec_center/pet_lounge) -"bp" = (/obj/structure/flora/ausbushes/genericbush,/turf/open/floor/holofloor/grass,/area/holodeck/rec_center/pet_lounge) -"bq" = (/obj/structure/table/glass,/obj/item/weapon/surgicaldrill,/turf/open/floor/holofloor{tag = "icon-white_warn (NORTHWEST)";icon_state = "white_warn";dir = 9},/area/holodeck/rec_center/medical) -"br" = (/obj/structure/table/glass,/obj/item/weapon/hemostat,/turf/open/floor/holofloor{tag = "icon-white_warn (NORTH)";icon_state = "white_warn";dir = 1},/area/holodeck/rec_center/medical) -"bs" = (/obj/structure/table/glass,/obj/item/weapon/scalpel{pixel_y = 10},/obj/item/weapon/circular_saw,/turf/open/floor/holofloor{tag = "icon-white_warn (NORTH)";icon_state = "white_warn";dir = 1},/area/holodeck/rec_center/medical) -"bt" = (/obj/structure/table/glass,/obj/item/weapon/retractor,/turf/open/floor/holofloor{tag = "icon-white_warn (NORTH)";icon_state = "white_warn";dir = 1},/area/holodeck/rec_center/medical) -"bu" = (/obj/structure/table/glass,/obj/item/stack/medical/gauze,/obj/item/weapon/cautery,/turf/open/floor/holofloor{tag = "icon-white_warn (NORTHEAST)";icon_state = "white_warn";dir = 5},/area/holodeck/rec_center/medical) -"bv" = (/turf/open/floor/holofloor{dir = 9;icon_state = "red"},/area/holodeck/rec_center/basketball) -"bw" = (/obj/structure/holohoop{layer = 3.9},/turf/open/floor/holofloor{dir = 1;icon_state = "red"},/area/holodeck/rec_center/basketball) -"bx" = (/turf/open/floor/holofloor{dir = 5;icon_state = "red"},/area/holodeck/rec_center/basketball) -"by" = (/turf/open/floor/holofloor/beach,/area/holodeck/rec_center/beach) -"bz" = (/turf/open/floor/holofloor/basalt,/obj/structure/table,/obj/machinery/readybutton,/turf/open/floor/holofloor{tag = "icon-warningline";icon_state = "warningline";dir = 2},/area/holodeck/rec_center/thunderdome) -"bA" = (/turf/open/floor/holofloor/basalt,/obj/structure/table,/obj/item/clothing/head/helmet/thunderdome,/obj/item/clothing/suit/armor/tdome/red,/obj/item/clothing/under/color/red,/obj/item/weapon/holo/esword/red,/turf/open/floor/holofloor{tag = "icon-warningline";icon_state = "warningline";dir = 2},/area/holodeck/rec_center/thunderdome) -"bB" = (/turf/open/floor/holofloor/basalt,/obj/structure/table,/turf/open/floor/holofloor{tag = "icon-warningline";icon_state = "warningline";dir = 2},/area/holodeck/rec_center/thunderdome) -"bC" = (/obj/machinery/readybutton,/turf/open/floor/holofloor{dir = 9;icon_state = "red"},/area/holodeck/rec_center/dodgeball) -"bD" = (/turf/open/floor/holofloor{dir = 1;icon_state = "red"},/area/holodeck/rec_center/dodgeball) -"bE" = (/turf/open/floor/holofloor{dir = 5;icon_state = "red"},/area/holodeck/rec_center/dodgeball) -"bF" = (/obj/effect/holodeck_effect/mobspawner/pet,/turf/open/floor/holofloor/grass,/area/holodeck/rec_center/pet_lounge) -"bG" = (/obj/structure/flora/ausbushes/ppflowers,/turf/open/floor/holofloor/grass,/area/holodeck/rec_center/pet_lounge) -"bH" = (/obj/effect/holodeck_effect/mobspawner/pet,/obj/structure/flora/ausbushes/brflowers,/turf/open/floor/holofloor/grass,/area/holodeck/rec_center/pet_lounge) -"bI" = (/obj/structure/table/glass,/obj/item/weapon/surgical_drapes,/obj/item/weapon/razor,/turf/open/floor/holofloor{tag = "icon-white_warn (WEST)";icon_state = "white_warn";dir = 8},/area/holodeck/rec_center/medical) -"bJ" = (/turf/open/floor/holofloor{icon_state = "white"},/area/holodeck/rec_center/medical) -"bK" = (/turf/open/floor/holofloor{tag = "icon-white_warn (EAST)";icon_state = "white_warn";dir = 4},/area/holodeck/rec_center/medical) -"bL" = (/turf/open/floor/holofloor{dir = 8;icon_state = "red"},/area/holodeck/rec_center/basketball) -"bM" = (/turf/open/floor/holofloor,/area/holodeck/rec_center/basketball) -"bN" = (/turf/open/floor/holofloor{dir = 4;icon_state = "red"},/area/holodeck/rec_center/basketball) -"bO" = (/obj/effect/overlay/palmtree_r,/turf/open/floor/holofloor/beach,/area/holodeck/rec_center/beach) -"bP" = (/obj/effect/overlay/palmtree_l,/obj/effect/overlay/coconut,/turf/open/floor/holofloor/beach,/area/holodeck/rec_center/beach) -"bQ" = (/turf/open/floor/holofloor/basalt,/area/holodeck/rec_center/thunderdome) -"bR" = (/turf/open/floor/holofloor{dir = 8;icon_state = "red"},/area/holodeck/rec_center/dodgeball) -"bS" = (/turf/open/floor/holofloor,/area/holodeck/rec_center/dodgeball) -"bT" = (/turf/open/floor/holofloor{dir = 4;icon_state = "red"},/area/holodeck/rec_center/dodgeball) -"bU" = (/obj/structure/flora/ausbushes/brflowers,/turf/open/floor/holofloor/grass,/area/holodeck/rec_center/pet_lounge) -"bV" = (/obj/item/weapon/storage/bag/easterbasket{name = "picnic basket";pixel_y = 6},/turf/open/floor/holofloor{icon_state = "redbluefull"},/area/holodeck/rec_center/pet_lounge) -"bW" = (/obj/item/trash/plate,/turf/open/floor/holofloor{icon_state = "redbluefull"},/area/holodeck/rec_center/pet_lounge) -"bX" = (/turf/open/floor/holofloor{tag = "icon-white_warn (SOUTHWEST)";icon_state = "white_warn";dir = 10},/area/holodeck/rec_center/medical) -"bY" = (/turf/open/floor/holofloor{icon_state = "white_warn"},/area/holodeck/rec_center/medical) -"bZ" = (/obj/structure/table/optable,/turf/open/floor/holofloor{icon_state = "white_warn"},/area/holodeck/rec_center/medical) -"ca" = (/obj/machinery/computer/operating,/turf/open/floor/holofloor{icon_state = "white_warn"},/area/holodeck/rec_center/medical) -"cb" = (/obj/structure/table/glass,/obj/item/clothing/gloves/color/latex/nitrile,/obj/item/clothing/suit/apron/surgical,/obj/item/clothing/mask/surgical,/turf/open/floor/holofloor{tag = "icon-white_warn (SOUTHEAST)";icon_state = "white_warn";dir = 6},/area/holodeck/rec_center/medical) -"cc" = (/turf/open/floor/holofloor{dir = 1;icon_state = "red"},/area/holodeck/rec_center/basketball) -"cd" = (/obj/effect/holodeck_effect/mobspawner/monkey,/turf/open/floor/holofloor/beach,/area/holodeck/rec_center/beach) -"ce" = (/turf/open/floor/holofloor{dir = 2;icon_state = "red"},/area/holodeck/rec_center/dodgeball) -"cf" = (/obj/structure/flora/ausbushes/palebush,/turf/open/floor/holofloor/grass,/area/holodeck/rec_center/pet_lounge) -"cg" = (/obj/effect/holodeck_effect/mobspawner/pet,/turf/open/floor/holofloor{icon_state = "redbluefull"},/area/holodeck/rec_center/pet_lounge) -"ch" = (/obj/item/weapon/shovel/spade{pixel_x = 2;pixel_y = -2},/turf/open/floor/holofloor{icon_state = "redbluefull"},/area/holodeck/rec_center/pet_lounge) -"ci" = (/obj/structure/window{dir = 1},/turf/open/floor/holofloor{icon_state = "white"},/area/holodeck/rec_center/medical) -"cj" = (/obj/effect/holodeck_effect/mobspawner/bee,/obj/item/clothing/head/beekeeper_head,/turf/open/floor/holofloor/asteroid,/area/holodeck/rec_center/anthophila) -"ck" = (/obj/structure/table/glass,/obj/machinery/reagentgrinder,/turf/open/floor/holofloor{tag = "icon-white_warn (NORTHWEST)";icon_state = "white_warn";dir = 9},/area/holodeck/rec_center/medical) -"cl" = (/turf/open/floor/holofloor{tag = "icon-white_warn (NORTHEAST)";icon_state = "white_warn";dir = 5},/area/holodeck/rec_center/medical) -"cm" = (/obj/structure/table/glass,/obj/item/weapon/storage/box/syringes{pixel_x = 4;pixel_y = 4},/obj/item/weapon/storage/box/beakers,/turf/open/floor/holofloor{icon_state = "white"},/area/holodeck/rec_center/medical) -"cn" = (/obj/machinery/washing_machine,/turf/open/floor/holofloor{icon_state = "white"},/area/holodeck/rec_center/medical) -"co" = (/turf/open/floor/holofloor{dir = 10;icon_state = "red"},/area/holodeck/rec_center/basketball) -"cp" = (/turf/open/floor/holofloor{dir = 2;icon_state = "red"},/area/holodeck/rec_center/basketball) -"cq" = (/turf/open/floor/holofloor{dir = 6;icon_state = "red"},/area/holodeck/rec_center/basketball) -"cr" = (/obj/item/clothing/under/color/rainbow,/obj/item/clothing/glasses/sunglasses,/turf/open/floor/holofloor/beach,/area/holodeck/rec_center/beach) -"cs" = (/obj/structure/window,/turf/open/floor/holofloor/basalt,/area/holodeck/rec_center/thunderdome) -"ct" = (/obj/structure/window{dir = 1},/obj/item/toy/beach_ball/holoball/dodgeball,/turf/open/floor/holofloor{dir = 10;icon_state = "red"},/area/holodeck/rec_center/dodgeball) -"cu" = (/obj/structure/window{dir = 1},/obj/item/toy/beach_ball/holoball/dodgeball,/turf/open/floor/holofloor{dir = 2;icon_state = "red"},/area/holodeck/rec_center/dodgeball) -"cv" = (/obj/structure/window{dir = 1},/obj/item/toy/beach_ball/holoball/dodgeball,/turf/open/floor/holofloor{dir = 6;icon_state = "red"},/area/holodeck/rec_center/dodgeball) -"cw" = (/obj/effect/holodeck_effect/mobspawner/bee,/obj/effect/decal/remains/human,/obj/item/clothing/suit/beekeeper_suit,/turf/open/floor/holofloor/asteroid,/area/holodeck/rec_center/anthophila) -"cx" = (/obj/effect/holodeck_effect/mobspawner/bee,/obj/item/weapon/melee/flyswatter,/turf/open/floor/holofloor/asteroid,/area/holodeck/rec_center/anthophila) -"cy" = (/obj/machinery/chem_master,/turf/open/floor/holofloor{tag = "icon-white_warn (SOUTHWEST)";icon_state = "white_warn";dir = 10},/area/holodeck/rec_center/medical) -"cz" = (/turf/open/floor/holofloor{tag = "icon-white_warn (SOUTHEAST)";icon_state = "white_warn";dir = 6},/area/holodeck/rec_center/medical) -"cA" = (/obj/structure/table/glass,/obj/item/device/healthanalyzer,/turf/open/floor/holofloor{icon_state = "white"},/area/holodeck/rec_center/medical) -"cB" = (/obj/structure/closet/wardrobe/white,/turf/open/floor/holofloor{icon_state = "white"},/area/holodeck/rec_center/medical) -"cC" = (/turf/open/floor/holofloor{dir = 9;icon_state = "green"},/area/holodeck/rec_center/basketball) -"cD" = (/turf/open/floor/holofloor{dir = 1;icon_state = "green"},/area/holodeck/rec_center/basketball) -"cE" = (/turf/open/floor/holofloor{dir = 5;icon_state = "green"},/area/holodeck/rec_center/basketball) -"cF" = (/obj/item/toy/beach_ball,/turf/open/floor/holofloor/beach,/area/holodeck/rec_center/beach) -"cG" = (/obj/structure/window{dir = 1},/turf/open/floor/holofloor/basalt,/area/holodeck/rec_center/thunderdome) -"cH" = (/obj/structure/window,/obj/item/toy/beach_ball/holoball/dodgeball,/turf/open/floor/holofloor{dir = 9;icon_state = "green"},/area/holodeck/rec_center/dodgeball) -"cI" = (/obj/structure/window,/obj/item/toy/beach_ball/holoball/dodgeball,/turf/open/floor/holofloor{dir = 1;icon_state = "green"},/area/holodeck/rec_center/dodgeball) -"cJ" = (/obj/structure/window,/obj/item/toy/beach_ball/holoball/dodgeball,/turf/open/floor/holofloor{dir = 5;icon_state = "green"},/area/holodeck/rec_center/dodgeball) -"cK" = (/obj/structure/sink/puddle,/turf/open/floor/holofloor/grass,/area/holodeck/rec_center/pet_lounge) -"cL" = (/obj/item/weapon/reagent_containers/glass/bucket,/turf/open/floor/holofloor/grass,/area/holodeck/rec_center/pet_lounge) -"cM" = (/turf/open/floor/holofloor{dir = 8;icon_state = "green"},/area/holodeck/rec_center/basketball) -"cN" = (/obj/item/toy/beach_ball/holoball,/turf/open/floor/holofloor,/area/holodeck/rec_center/basketball) -"cO" = (/turf/open/floor/holofloor{dir = 4;icon_state = "green"},/area/holodeck/rec_center/basketball) -"cP" = (/turf/open/floor/holofloor{dir = 8;icon_state = "green"},/area/holodeck/rec_center/dodgeball) -"cQ" = (/turf/open/floor/holofloor{dir = 4;icon_state = "green"},/area/holodeck/rec_center/dodgeball) -"cR" = (/obj/machinery/hydroponics/soil,/turf/open/floor/holofloor/grass,/area/holodeck/rec_center/pet_lounge) -"cS" = (/obj/machinery/hydroponics/soil,/obj/item/weapon/cultivator,/turf/open/floor/holofloor/grass,/area/holodeck/rec_center/pet_lounge) -"cT" = (/obj/machinery/hydroponics/soil,/obj/effect/holodeck_effect/mobspawner/pet,/turf/open/floor/holofloor/grass,/area/holodeck/rec_center/pet_lounge) -"cU" = (/obj/structure/flora/ausbushes/grassybush,/turf/open/floor/holofloor/grass,/area/holodeck/rec_center/pet_lounge) -"cV" = (/obj/structure/bed,/obj/item/weapon/bedsheet/medical,/obj/structure/window{dir = 1},/turf/open/floor/holofloor{tag = "icon-white_warn (NORTHWEST)";icon_state = "white_warn";dir = 9},/area/holodeck/rec_center/medical) -"cW" = (/obj/structure/window{icon_state = "rwindow";dir = 8},/obj/structure/bed,/obj/item/weapon/bedsheet/medical,/obj/structure/window{dir = 1},/turf/open/floor/holofloor{tag = "icon-white_warn (NORTHEAST)";icon_state = "white_warn";dir = 5},/area/holodeck/rec_center/medical) -"cX" = (/obj/structure/window{icon_state = "rwindow";dir = 8},/obj/machinery/computer/pandemic,/turf/open/floor/holofloor{icon_state = "white"},/area/holodeck/rec_center/medical) -"cY" = (/turf/open/floor/holofloor{dir = 2;icon_state = "green"},/area/holodeck/rec_center/basketball) -"cZ" = (/turf/open/floor/holofloor/beach/coast_t,/area/holodeck/rec_center/beach) -"da" = (/obj/item/weapon/reagent_containers/glass/bucket,/turf/open/floor/holofloor/beach/coast_t,/area/holodeck/rec_center/beach) -"db" = (/obj/item/weapon/shovel/spade,/turf/open/floor/holofloor/beach/coast_t,/area/holodeck/rec_center/beach) -"dc" = (/turf/open/floor/holofloor{dir = 1;icon_state = "green"},/area/holodeck/rec_center/dodgeball) -"dd" = (/obj/structure/flora/ausbushes/pointybush,/turf/open/floor/holofloor/grass,/area/holodeck/rec_center/pet_lounge) -"de" = (/turf/open/floor/holofloor{tag = "icon-white_warn (WEST)";icon_state = "white_warn";dir = 8},/area/holodeck/rec_center/medical) -"df" = (/turf/open/floor/holofloor{dir = 8;icon_state = "white_warn_corner";tag = "icon-white_warn (WEST)"},/area/holodeck/rec_center/medical) -"dg" = (/obj/machinery/door/window/westleft,/turf/open/floor/holofloor{tag = "icon-white_warn (NORTH)";icon_state = "white_warn";dir = 1},/area/holodeck/rec_center/medical) -"dh" = (/turf/open/floor/holofloor{tag = "icon-white_warn (NORTH)";icon_state = "white_warn";dir = 1},/area/holodeck/rec_center/medical) -"di" = (/turf/open/floor/holofloor/beach/coast_b,/area/holodeck/rec_center/beach) -"dj" = (/obj/structure/bed,/obj/item/weapon/bedsheet/medical,/obj/machinery/iv_drip{density = 0},/turf/open/floor/holofloor{tag = "icon-white_warn (SOUTHWEST)";icon_state = "white_warn";dir = 10},/area/holodeck/rec_center/medical) -"dk" = (/obj/structure/window{icon_state = "rwindow";dir = 8},/obj/structure/bed,/obj/item/weapon/bedsheet/medical,/obj/machinery/iv_drip{density = 0},/turf/open/floor/holofloor{icon_state = "white_warn"},/area/holodeck/rec_center/medical) -"dl" = (/obj/structure/window{icon_state = "rwindow";dir = 8},/obj/machinery/sleeper{icon_state = "sleeper-open";dir = 1},/turf/open/floor/holofloor{icon_state = "white_warn"},/area/holodeck/rec_center/medical) -"dm" = (/obj/machinery/iv_drip{density = 0},/turf/open/floor/holofloor{icon_state = "white_warn"},/area/holodeck/rec_center/medical) -"dn" = (/obj/machinery/sleeper{icon_state = "sleeper-open";dir = 1},/turf/open/floor/holofloor{tag = "icon-white_warn (SOUTHEAST)";icon_state = "white_warn";dir = 6},/area/holodeck/rec_center/medical) -"do" = (/turf/open/floor/holofloor{dir = 10;icon_state = "green"},/area/holodeck/rec_center/basketball) -"dp" = (/obj/structure/holohoop{dir = 1;layer = 4.1},/turf/open/floor/holofloor{dir = 2;icon_state = "green"},/area/holodeck/rec_center/basketball) -"dq" = (/turf/open/floor/holofloor{dir = 6;icon_state = "green"},/area/holodeck/rec_center/basketball) -"dr" = (/turf/open/floor/holofloor/beach/water,/area/holodeck/rec_center/beach) -"ds" = (/turf/open/floor/holofloor/basalt,/obj/structure/table,/turf/open/floor/holofloor{tag = "icon-warningline (NORTH)";icon_state = "warningline";dir = 1},/area/holodeck/rec_center/thunderdome) -"dt" = (/turf/open/floor/holofloor/basalt,/obj/structure/table,/obj/item/clothing/head/helmet/thunderdome,/obj/item/clothing/suit/armor/tdome/green,/obj/item/clothing/under/color/green,/obj/item/weapon/holo/esword/green,/turf/open/floor/holofloor{tag = "icon-warningline (NORTH)";icon_state = "warningline";dir = 1},/area/holodeck/rec_center/thunderdome) -"du" = (/turf/open/floor/holofloor/basalt,/obj/structure/table,/obj/machinery/readybutton,/turf/open/floor/holofloor{tag = "icon-warningline (NORTH)";icon_state = "warningline";dir = 1},/area/holodeck/rec_center/thunderdome) -"dv" = (/turf/open/floor/holofloor{dir = 10;icon_state = "green"},/area/holodeck/rec_center/dodgeball) -"dw" = (/turf/open/floor/holofloor{dir = 2;icon_state = "green"},/area/holodeck/rec_center/dodgeball) -"dx" = (/obj/machinery/readybutton,/turf/open/floor/holofloor{dir = 6;icon_state = "green"},/area/holodeck/rec_center/dodgeball) -"dy" = (/turf/open/floor/holofloor/plating,/area/holodeck/rec_center/refuel) -"dz" = (/turf/open/floor/holofloor/grass,/turf/open/floor/holofloor{tag = "icon-warningline";icon_state = "warningline";dir = 2},/area/holodeck/rec_center/spacechess) -"dA" = (/obj/item/weapon/banner/blue,/turf/open/floor/holofloor/grass,/area/holodeck/rec_center/thunderdome1218) -"dB" = (/obj/structure/table/wood/fancy,/obj/item/clothing/suit/armor/riot/knight/blue,/obj/item/clothing/head/helmet/knight/blue,/obj/item/weapon/claymore/weak,/turf/open/floor/holofloor/grass,/area/holodeck/rec_center/thunderdome1218) -"dC" = (/obj/structure/table/wood/fancy,/obj/item/clothing/head/crown/fancy{pixel_y = 6},/turf/open/floor/holofloor/grass,/area/holodeck/rec_center/thunderdome1218) -"dD" = (/obj/structure/table/wood/fancy,/obj/item/clothing/suit/armor/riot/knight/red,/obj/item/clothing/head/helmet/knight/red,/obj/item/weapon/claymore/weak,/turf/open/floor/holofloor/grass,/area/holodeck/rec_center/thunderdome1218) -"dE" = (/obj/item/weapon/banner/red,/turf/open/floor/holofloor/grass,/area/holodeck/rec_center/thunderdome1218) -"dF" = (/turf/open/floor/holofloor/hyperspace,/area/holodeck/rec_center/kobayashi) -"dG" = (/obj/structure/window/reinforced,/turf/open/floor/holofloor/hyperspace,/area/holodeck/rec_center/kobayashi) -"dH" = (/obj/structure/closet{density = 0;opened = 1},/obj/item/clothing/suit/judgerobe,/obj/item/clothing/head/powdered_wig,/turf/open/floor/holofloor{dir = 8;icon_state = "dark";tag = "icon-white_warn (WEST)"},/area/holodeck/rec_center/chapelcourt) -"dI" = (/obj/structure/table/wood/fancy,/obj/item/clothing/suit/nun,/obj/item/clothing/head/nun_hood,/obj/item/clothing/suit/holidaypriest,/turf/open/floor/holofloor{dir = 8;icon_state = "dark";tag = "icon-white_warn (WEST)"},/area/holodeck/rec_center/chapelcourt) -"dJ" = (/obj/structure/table/wood/fancy,/obj/item/weapon/storage/book/bible,/turf/open/floor/holofloor{dir = 8;icon_state = "dark";tag = "icon-white_warn (WEST)"},/area/holodeck/rec_center/chapelcourt) -"dK" = (/obj/structure/table/wood/fancy,/obj/item/weapon/book/manual/wiki/security_space_law,/turf/open/floor/holofloor{dir = 8;icon_state = "dark";tag = "icon-white_warn (WEST)"},/area/holodeck/rec_center/chapelcourt) -"dL" = (/obj/structure/closet{name = "Evidence Closet"},/turf/open/floor/holofloor{dir = 8;icon_state = "dark";tag = "icon-white_warn (WEST)"},/area/holodeck/rec_center/chapelcourt) -"dM" = (/obj/machinery/conveyor/holodeck{dir = 5;icon_state = "conveyor0";id = "holocoaster";movedir = null;verted = -1},/turf/open/floor/holofloor/asteroid,/area/holodeck/rec_center/rollercoaster) -"dN" = (/obj/machinery/conveyor/holodeck{dir = 8;id = "holocoaster"},/turf/open/floor/holofloor/asteroid,/area/holodeck/rec_center/rollercoaster) -"dO" = (/obj/machinery/conveyor/holodeck{dir = 6;id = "holocoaster";movedir = null;verted = -1},/turf/open/floor/holofloor/asteroid,/area/holodeck/rec_center/rollercoaster) -"dP" = (/turf/open/floor/holofloor{dir = 8;icon_state = "green"},/area/holodeck/rec_center/firingrange) -"dQ" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/turf/open/floor/holofloor{tag = "icon-white_warn (NORTHWEST)";icon_state = "white_warn";dir = 9},/area/holodeck/rec_center/firingrange) -"dR" = (/obj/structure/window/reinforced{dir = 1},/turf/open/floor/holofloor{tag = "icon-white_warn (NORTH)";icon_state = "white_warn";dir = 1},/area/holodeck/rec_center/firingrange) -"dS" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/turf/open/floor/holofloor{tag = "icon-white_warn (NORTHEAST)";icon_state = "white_warn";dir = 5},/area/holodeck/rec_center/firingrange) -"dT" = (/turf/open/floor/holofloor{dir = 4;icon_state = "green"},/area/holodeck/rec_center/firingrange) -"dU" = (/obj/structure/reagent_dispensers/fueltank,/turf/open/floor/holofloor/plating,/area/holodeck/rec_center/refuel) -"dV" = (/obj/item/cardboard_cutout/adaptive{color = "#9999BB";icon_state = "cutout_viva";name = "Black Rook";tag = "icon-cutout_viva"},/turf/open/floor/holofloor{dir = 8;icon_state = "dark";tag = "icon-white_warn (WEST)"},/area/holodeck/rec_center/spacechess) -"dW" = (/obj/item/cardboard_cutout/adaptive{color = "#9999BB";icon_state = "cutout_mime";name = "Black Queen";tag = "icon-cutout_mime"},/turf/open/floor/holofloor{icon_state = "white"},/area/holodeck/rec_center/spacechess) -"dX" = (/obj/item/cardboard_cutout/adaptive{color = "#9999BB";icon_state = "cutout_clown";name = "Black King";tag = "icon-cutout_clown"},/turf/open/floor/holofloor{dir = 8;icon_state = "dark";tag = "icon-white_warn (WEST)"},/area/holodeck/rec_center/spacechess) -"dY" = (/obj/item/cardboard_cutout/adaptive{color = "#9999BB";icon_state = "cutout_ian";name = "Black Knight";tag = "icon-cutout_ian"},/turf/open/floor/holofloor{icon_state = "white"},/area/holodeck/rec_center/spacechess) -"dZ" = (/turf/open/floor/holofloor/grass,/area/holodeck/rec_center/thunderdome1218) -"ea" = (/obj/structure/chair/wood/wings,/turf/open/floor/holofloor/grass,/area/holodeck/rec_center/thunderdome1218) -"eb" = (/obj/structure/window/reinforced,/obj/machinery/mass_driver{dir = 1;icon_state = "mass_driver";id = "trektorpedo1";name = "photon torpedo tube";tag = "icon-mass_driver (NORTH)"},/obj/item/toy/minimeteor{color = "";icon = 'icons/effects/effects.dmi';icon_state = "impact_laser";name = "photon torpedo"},/turf/open/floor/holofloor/hyperspace,/area/holodeck/rec_center/kobayashi) -"ec" = (/obj/structure/window/reinforced{dir = 8},/obj/machinery/computer/arcade/orion_trail{desc = "A test for cadets";events = list("Raiders" = 3, "Interstellar Flux" = 1, "Illness" = 3, "Breakdown" = 2, "Malfunction" = 2, "Collision" = 1, "Spaceport" = 2);icon = 'icons/obj/machines/particle_accelerator.dmi';icon_state = "control_boxp";name = "Kobayashi Maru control computer";prizes = list(/obj/item/weapon/paper/trek_diploma = 1);settlers = list("Kirk","Worf","Gene")},/turf/open/floor/holofloor/plating,/area/holodeck/rec_center/kobayashi) -"ed" = (/obj/machinery/button/massdriver{id = "trektorpedo1";layer = 3.9;name = "photon torpedo button";pixel_x = -16;pixel_y = -5},/obj/machinery/button/massdriver{id = "trektorpedo2";layer = 3.9;name = "photon torpedo button";pixel_x = 16;pixel_y = -5},/obj/machinery/computer/arcade/orion_trail{desc = "A test for cadets";events = list("Raiders" = 3, "Interstellar Flux" = 1, "Illness" = 3, "Breakdown" = 2, "Malfunction" = 2, "Collision" = 1, "Spaceport" = 2);icon = 'icons/obj/machines/particle_accelerator.dmi';icon_state = "control_boxp";name = "Kobayashi Maru control computer";prizes = list(/obj/item/weapon/paper/trek_diploma = 1);settlers = list("Kirk","Worf","Gene")},/turf/open/floor/holofloor/plating,/area/holodeck/rec_center/kobayashi) -"ee" = (/obj/structure/window/reinforced{dir = 4},/obj/machinery/computer/arcade/orion_trail{desc = "A test for cadets";events = list("Raiders" = 3, "Interstellar Flux" = 1, "Illness" = 3, "Breakdown" = 2, "Malfunction" = 2, "Collision" = 1, "Spaceport" = 2);icon = 'icons/obj/machines/particle_accelerator.dmi';icon_state = "control_boxp";name = "Kobayashi Maru control computer";prizes = list(/obj/item/weapon/paper/trek_diploma = 1);settlers = list("Kirk","Worf","Gene")},/turf/open/floor/holofloor/plating,/area/holodeck/rec_center/kobayashi) -"ef" = (/obj/structure/window/reinforced,/obj/machinery/mass_driver{dir = 1;icon_state = "mass_driver";id = "trektorpedo2";name = "photon torpedo tube";tag = "icon-mass_driver (NORTH)"},/obj/item/toy/minimeteor{color = "";icon = 'icons/effects/effects.dmi';icon_state = "impact_laser";name = "photon torpedo"},/turf/open/floor/holofloor/hyperspace,/area/holodeck/rec_center/kobayashi) -"eg" = (/obj/structure/chair{dir = 4},/turf/open/floor/holofloor{tag = "icon-chapel (NORTH)";icon_state = "chapel";dir = 1},/area/holodeck/rec_center/chapelcourt) -"eh" = (/turf/open/floor/holofloor{tag = "icon-chapel (EAST)";icon_state = "chapel";dir = 4},/area/holodeck/rec_center/chapelcourt) -"ei" = (/obj/structure/chair,/turf/open/floor/holofloor{dir = 8;icon_state = "dark";tag = "icon-white_warn (WEST)"},/area/holodeck/rec_center/chapelcourt) -"ej" = (/turf/open/floor/holofloor{tag = "icon-chapel (NORTH)";icon_state = "chapel";dir = 1},/area/holodeck/rec_center/chapelcourt) -"ek" = (/obj/structure/chair{dir = 8},/turf/open/floor/holofloor{tag = "icon-chapel (EAST)";icon_state = "chapel";dir = 4},/area/holodeck/rec_center/chapelcourt) -"el" = (/obj/machinery/conveyor/holodeck{id = "holocoaster"},/turf/open/floor/holofloor/asteroid,/area/holodeck/rec_center/rollercoaster) -"em" = (/turf/open/floor/holofloor/asteroid,/area/holodeck/rec_center/rollercoaster) -"en" = (/obj/machinery/conveyor/holodeck{dir = 1;id = "holocoaster";layer = 2.5},/turf/open/floor/holofloor/asteroid,/area/holodeck/rec_center/rollercoaster) -"eo" = (/obj/structure/window/reinforced{dir = 8},/turf/open/floor/holofloor{tag = "icon-white_warn (WEST)";icon_state = "white_warn";dir = 8},/area/holodeck/rec_center/firingrange) -"ep" = (/obj/structure/target_stake,/obj/machinery/magnetic_module,/turf/open/floor/holofloor{icon_state = "white"},/area/holodeck/rec_center/firingrange) -"eq" = (/obj/structure/window/reinforced{dir = 4},/turf/open/floor/holofloor{tag = "icon-white_warn (EAST)";icon_state = "white_warn";dir = 4},/area/holodeck/rec_center/firingrange) -"er" = (/obj/item/cardboard_cutout/adaptive{color = "#9999BB";icon_state = "cutout_greytide";name = "Black Pawn";tag = "icon-cutout_greytide"},/turf/open/floor/holofloor{icon_state = "white"},/area/holodeck/rec_center/spacechess) -"es" = (/obj/item/cardboard_cutout/adaptive{color = "#9999BB";icon_state = "cutout_greytide";name = "Black Pawn";tag = "icon-cutout_greytide"},/turf/open/floor/holofloor{dir = 8;icon_state = "dark";tag = "icon-white_warn (WEST)"},/area/holodeck/rec_center/spacechess) -"et" = (/obj/machinery/door/window/westleft{dir = 2;icon_state = "right"},/turf/open/floor/holofloor/grass,/area/holodeck/rec_center/thunderdome1218) -"eu" = (/obj/structure/window/reinforced,/turf/open/floor/holofloor/grass,/area/holodeck/rec_center/thunderdome1218) -"ev" = (/obj/machinery/door/window/westleft{dir = 2},/turf/open/floor/holofloor/grass,/area/holodeck/rec_center/thunderdome1218) -"ew" = (/obj/structure/table/glass,/obj/machinery/recharger,/turf/open/floor/holofloor/plating,/area/holodeck/rec_center/kobayashi) -"ex" = (/turf/open/floor/holofloor/plating,/area/holodeck/rec_center/kobayashi) -"ey" = (/obj/structure/chair/comfy{tag = "icon-comfychair (NORTH)";icon_state = "comfychair";dir = 1},/turf/open/floor/holofloor/plating,/area/holodeck/rec_center/kobayashi) -"ez" = (/obj/structure/table/glass,/obj/item/weapon/gun/energy/e_gun/mini/practice_phaser,/turf/open/floor/holofloor/plating,/area/holodeck/rec_center/kobayashi) -"eA" = (/obj/structure/chair{dir = 4},/turf/open/floor/holofloor{dir = 8;icon_state = "chapel";tag = "icon-chapel"},/area/holodeck/rec_center/chapelcourt) -"eB" = (/turf/open/floor/holofloor{tag = "icon-chapel";icon_state = "chapel";dir = 2},/area/holodeck/rec_center/chapelcourt) -"eC" = (/obj/item/weapon/gavelblock,/obj/item/weapon/gavelhammer,/obj/structure/table/wood,/turf/open/floor/holofloor{dir = 8;icon_state = "dark";tag = "icon-white_warn (WEST)"},/area/holodeck/rec_center/chapelcourt) -"eD" = (/turf/open/floor/holofloor{dir = 8;icon_state = "chapel";tag = "icon-chapel"},/area/holodeck/rec_center/chapelcourt) -"eE" = (/obj/structure/chair{dir = 8},/turf/open/floor/holofloor{tag = "icon-chapel";icon_state = "chapel";dir = 2},/area/holodeck/rec_center/chapelcourt) -"eF" = (/obj/item/weapon/shovel,/turf/open/floor/holofloor/asteroid,/area/holodeck/rec_center/rollercoaster) -"eG" = (/obj/structure/window/reinforced{dir = 8},/turf/open/floor/holofloor{tag = "icon-white_warn (SOUTHWEST)";icon_state = "white_warn";dir = 10},/area/holodeck/rec_center/firingrange) -"eH" = (/turf/open/floor/holofloor{icon_state = "white_warn"},/area/holodeck/rec_center/firingrange) -"eI" = (/obj/structure/window/reinforced{dir = 4},/turf/open/floor/holofloor{tag = "icon-white_warn (SOUTHEAST)";icon_state = "white_warn";dir = 6},/area/holodeck/rec_center/firingrange) -"eJ" = (/obj/item/weapon/weldingtool,/turf/open/floor/holofloor/plating,/area/holodeck/rec_center/refuel) -"eK" = (/turf/open/floor/holofloor{dir = 8;icon_state = "dark";tag = "icon-white_warn (WEST)"},/area/holodeck/rec_center/spacechess) -"eL" = (/turf/open/floor/holofloor{icon_state = "white"},/area/holodeck/rec_center/spacechess) -"eM" = (/turf/open/floor/holofloor{tag = "icon-stairs-old (WEST)";icon_state = "stairs-old";dir = 8},/area/holodeck/rec_center/thunderdome1218) -"eN" = (/obj/structure/table/wood,/obj/item/weapon/melee/chainofcommand{name = "chain whip"},/obj/item/weapon/twohanded/spear,/turf/open/floor/holofloor/asteroid,/area/holodeck/rec_center/thunderdome1218) -"eO" = (/obj/structure/table/wood,/obj/item/weapon/scythe,/obj/item/weapon/twohanded/spear,/turf/open/floor/holofloor/asteroid,/area/holodeck/rec_center/thunderdome1218) -"eP" = (/obj/structure/table/wood,/obj/item/weapon/tailclub,/obj/item/weapon/twohanded/spear,/turf/open/floor/holofloor/asteroid,/area/holodeck/rec_center/thunderdome1218) -"eQ" = (/turf/open/floor/holofloor{dir = 8;icon_state = "dark";tag = "icon-white_warn (WEST)"},/area/holodeck/rec_center/chapelcourt) -"eR" = (/obj/structure/window/reinforced{dir = 8},/turf/open/floor/holofloor{dir = 8;icon_state = "red"},/area/holodeck/rec_center/firingrange) -"eS" = (/turf/open/floor/holofloor,/area/holodeck/rec_center/firingrange) -"eT" = (/obj/structure/window/reinforced{dir = 4},/turf/open/floor/holofloor{dir = 4;icon_state = "red"},/area/holodeck/rec_center/firingrange) -"eU" = (/turf/open/floor/holofloor/asteroid,/area/holodeck/rec_center/thunderdome1218) -"eV" = (/obj/machinery/modular_computer/console/preset/civilian,/turf/open/floor/holofloor/plating,/area/holodeck/rec_center/kobayashi) -"eW" = (/obj/structure/chair/office/dark{dir = 8},/turf/open/floor/holofloor/plating,/area/holodeck/rec_center/kobayashi) -"eX" = (/obj/structure/chair/office/dark{dir = 4},/turf/open/floor/holofloor/plating,/area/holodeck/rec_center/kobayashi) -"eY" = (/obj/machinery/computer/station_alert,/turf/open/floor/holofloor/plating,/area/holodeck/rec_center/kobayashi) -"eZ" = (/obj/structure/chair{dir = 1},/turf/open/floor/holofloor{tag = "icon-chapel (NORTH)";icon_state = "chapel";dir = 1},/area/holodeck/rec_center/chapelcourt) -"fa" = (/obj/structure/chair{dir = 1},/turf/open/floor/holofloor{tag = "icon-chapel (EAST)";icon_state = "chapel";dir = 4},/area/holodeck/rec_center/chapelcourt) -"fb" = (/obj/machinery/modular_computer/console/preset/civilian,/obj/structure/window/reinforced,/turf/open/floor/holofloor/plating,/area/holodeck/rec_center/kobayashi) -"fc" = (/obj/machinery/computer/atmos_alert,/obj/structure/window/reinforced,/turf/open/floor/holofloor/plating,/area/holodeck/rec_center/kobayashi) -"fd" = (/obj/structure/chair{dir = 1},/turf/open/floor/holofloor{dir = 8;icon_state = "chapel";tag = "icon-chapel"},/area/holodeck/rec_center/chapelcourt) -"fe" = (/obj/structure/chair{dir = 1},/turf/open/floor/holofloor{tag = "icon-chapel";icon_state = "chapel";dir = 2},/area/holodeck/rec_center/chapelcourt) -"ff" = (/obj/machinery/conveyor/holodeck{id = "holocoaster"},/obj/structure/chair/office{dir = 1;name = "coaster car"},/turf/open/floor/holofloor/asteroid,/area/holodeck/rec_center/rollercoaster) -"fg" = (/obj/machinery/conveyor_switch/oneway{convdir = -1;id = "holocoaster"},/turf/open/floor/holofloor/asteroid,/area/holodeck/rec_center/rollercoaster) -"fh" = (/obj/structure/window/reinforced,/turf/open/floor/holofloor/plating,/area/holodeck/rec_center/kobayashi) -"fi" = (/obj/item/cardboard_cutout/adaptive{icon_state = "cutout_greytide";name = "White Pawn";tag = "icon-cutout_greytide"},/turf/open/floor/holofloor{dir = 8;icon_state = "dark";tag = "icon-white_warn (WEST)"},/area/holodeck/rec_center/spacechess) -"fj" = (/obj/item/cardboard_cutout/adaptive{icon_state = "cutout_greytide";name = "White Pawn";tag = "icon-cutout_greytide"},/turf/open/floor/holofloor{icon_state = "white"},/area/holodeck/rec_center/spacechess) -"fk" = (/obj/structure/window/reinforced,/turf/open/floor/holofloor/asteroid,/area/holodeck/rec_center/thunderdome1218) -"fl" = (/obj/machinery/door/window/westleft{dir = 2},/turf/open/floor/holofloor/asteroid,/area/holodeck/rec_center/thunderdome1218) -"fm" = (/obj/machinery/door/window/westleft{dir = 2;icon_state = "right"},/turf/open/floor/holofloor/plating,/area/holodeck/rec_center/kobayashi) -"fn" = (/obj/structure/table,/obj/item/weapon/folder,/obj/item/weapon/pen/blue,/obj/structure/window/reinforced{dir = 8},/turf/open/floor/holofloor{tag = "icon-neutral (NORTH)";icon_state = "neutral";dir = 1},/area/holodeck/rec_center/kobayashi) -"fo" = (/obj/structure/table,/obj/item/weapon/folder,/obj/item/weapon/pen,/turf/open/floor/holofloor{tag = "icon-neutral (NORTH)";icon_state = "neutral";dir = 1},/area/holodeck/rec_center/kobayashi) -"fp" = (/obj/structure/table,/obj/structure/window/reinforced{dir = 4},/obj/item/weapon/folder,/obj/item/weapon/pen/red,/turf/open/floor/holofloor{tag = "icon-neutral (NORTH)";icon_state = "neutral";dir = 1},/area/holodeck/rec_center/kobayashi) -"fq" = (/obj/machinery/door/window/westleft{dir = 2},/turf/open/floor/holofloor/plating,/area/holodeck/rec_center/kobayashi) -"fr" = (/obj/structure/closet/crate/miningcar{can_buckle = 1;desc = "Great for mining!";name = "minecart"},/turf/open/floor/holofloor/asteroid,/area/holodeck/rec_center/rollercoaster) -"fs" = (/obj/structure/table/reinforced,/obj/machinery/recharger,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/turf/open/floor/holofloor{dir = 8;icon_state = "red"},/area/holodeck/rec_center/firingrange) -"ft" = (/obj/item/weapon/paper/range,/turf/open/floor/holofloor,/area/holodeck/rec_center/firingrange) -"fu" = (/obj/structure/table/reinforced,/obj/machinery/magnetic_controller{autolink = 1},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/turf/open/floor/holofloor{dir = 4;icon_state = "red"},/area/holodeck/rec_center/firingrange) -"fv" = (/obj/item/cardboard_cutout/adaptive{icon_state = "cutout_viva";name = "White Rook";tag = "icon-cutout_viva"},/turf/open/floor/holofloor{icon_state = "white"},/area/holodeck/rec_center/spacechess) -"fw" = (/obj/item/cardboard_cutout/adaptive{icon_state = "cutout_mime";name = "White Queen";tag = "icon-cutout_mime"},/turf/open/floor/holofloor{dir = 8;icon_state = "dark";tag = "icon-white_warn (WEST)"},/area/holodeck/rec_center/spacechess) -"fx" = (/obj/item/cardboard_cutout/adaptive{icon_state = "cutout_clown";name = "White King";tag = "icon-cutout_clown"},/turf/open/floor/holofloor{icon_state = "white"},/area/holodeck/rec_center/spacechess) -"fy" = (/obj/item/cardboard_cutout/adaptive{icon_state = "cutout_ian";name = "White Knight";tag = "icon-cutout_ian"},/turf/open/floor/holofloor{dir = 8;icon_state = "dark";tag = "icon-white_warn (WEST)"},/area/holodeck/rec_center/spacechess) -"fz" = (/turf/open/floor/holofloor{tag = "icon-neutral (NORTH)";icon_state = "neutral";dir = 1},/area/holodeck/rec_center/kobayashi) -"fA" = (/obj/structure/chair{dir = 1},/turf/open/floor/holofloor,/area/holodeck/rec_center/kobayashi) -"fB" = (/turf/open/floor/holofloor{dir = 1;icon_state = "green"},/area/holodeck/rec_center/firingrange) -"fC" = (/turf/open/floor/holofloor/grass,/turf/open/floor/holofloor{tag = "icon-warningline (NORTH)";icon_state = "warningline";dir = 1},/area/holodeck/rec_center/spacechess) -"fD" = (/obj/structure/chair/wood/normal{icon_state = "wooden_chair";dir = 1},/turf/open/floor/holofloor/grass,/area/holodeck/rec_center/thunderdome1218) -"fE" = (/obj/structure/rack,/obj/item/clothing/under/trek/medsci,/obj/item/clothing/under/trek/medsci,/obj/item/clothing/under/trek/command,/turf/open/floor/holofloor{tag = "icon-neutral (NORTH)";icon_state = "neutral";dir = 1},/area/holodeck/rec_center/kobayashi) -"fF" = (/turf/open/floor/holofloor{tag = "icon-neutral";icon_state = "neutral";dir = 2},/area/holodeck/rec_center/kobayashi) -"fG" = (/obj/structure/rack,/obj/item/clothing/under/trek/engsec,/obj/item/clothing/under/trek/engsec,/turf/open/floor/holofloor{tag = "icon-neutral (NORTH)";icon_state = "neutral";dir = 1},/area/holodeck/rec_center/kobayashi) -"fH" = (/obj/machinery/conveyor/holodeck{dir = 9;icon_state = "conveyor0";id = "holocoaster";tag = "icon-conveyor0 (NORTHWEST)";verted = -1},/turf/open/floor/holofloor/asteroid,/area/holodeck/rec_center/rollercoaster) -"fI" = (/obj/machinery/conveyor/holodeck{dir = 4;id = "holocoaster"},/turf/open/floor/holofloor/asteroid,/area/holodeck/rec_center/rollercoaster) -"fJ" = (/obj/machinery/conveyor/holodeck{dir = 10;id = "holocoaster";verted = -1},/turf/open/floor/holofloor/asteroid,/area/holodeck/rec_center/rollercoaster) -"fK" = (/obj/item/target,/obj/item/target/clown,/turf/open/floor/holofloor,/area/holodeck/rec_center/firingrange) -"fL" = (/obj/item/target,/obj/item/target/syndicate,/turf/open/floor/holofloor,/area/holodeck/rec_center/firingrange) -"fM" = (/obj/structure/rack,/obj/item/weapon/gun/energy/laser/practice,/obj/item/clothing/ears/earmuffs,/turf/open/floor/holofloor,/area/holodeck/rec_center/firingrange) -"fN" = (/obj/structure/window/reinforced{dir = 1},/turf/closed/indestructible/riveted,/area/space) -"fO" = (/turf/closed/indestructible/riveted,/area/tdome/arena_source) -"fP" = (/obj/machinery/igniter,/turf/open/floor/plasteel,/area/tdome/arena_source) -"fQ" = (/turf/open/floor/plasteel,/area/tdome/arena_source) -"fR" = (/obj/structure/rack,/obj/item/clothing/under/color/red,/obj/item/clothing/shoes/sneakers/brown,/obj/item/clothing/suit/armor/tdome/red,/obj/item/clothing/head/helmet/thunderdome,/obj/item/weapon/melee/baton/loaded,/obj/item/weapon/melee/energy/sword/saber/red,/turf/open/floor/plasteel/black,/area/tdome/arena_source) -"fS" = (/obj/machinery/door/poddoor{id = "thunderdomegen";name = "General Supply"},/turf/open/floor/plasteel/black,/area/tdome/arena_source) -"fT" = (/obj/machinery/door/poddoor{id = "thunderdome";name = "Thunderdome Blast Door"},/turf/open/floor/plasteel,/area/tdome/arena_source) -"fU" = (/turf/open/floor/plasteel/red/side{dir = 8},/area/tdome/arena_source) -"fV" = (/turf/open/floor/plasteel/green/side{dir = 4},/area/tdome/arena_source) -"fW" = (/obj/structure/rack,/obj/item/clothing/under/color/green,/obj/item/clothing/shoes/sneakers/brown,/obj/item/clothing/suit/armor/tdome/green,/obj/item/clothing/head/helmet/thunderdome,/obj/item/weapon/melee/baton/loaded,/obj/item/weapon/melee/energy/sword/saber/green,/turf/open/floor/plasteel/black,/area/tdome/arena_source) -"fX" = (/turf/open/floor/bluegrid,/area/tdome/arena_source) -"fY" = (/obj/machinery/flasher{id = "tdomeflash";name = "Thunderdome Flash"},/turf/open/floor/bluegrid,/area/tdome/arena_source) -"fZ" = (/obj/machinery/door/poddoor{id = "thunderdomehea";name = "Heavy Supply"},/turf/open/floor/plasteel/black,/area/tdome/arena_source) -"ga" = (/obj/structure/rack,/obj/item/clothing/under/color/red,/obj/item/clothing/shoes/sneakers/brown,/obj/item/clothing/suit/armor/vest,/obj/item/clothing/head/helmet/swat,/obj/item/weapon/gun/energy/laser,/turf/open/floor/plasteel/black,/area/tdome/arena_source) -"gb" = (/obj/structure/rack,/obj/item/clothing/under/color/green,/obj/item/clothing/shoes/sneakers/brown,/obj/item/clothing/suit/armor/vest,/obj/item/clothing/head/helmet/swat,/obj/item/weapon/gun/energy/laser,/turf/open/floor/plasteel/black,/area/tdome/arena_source) -"gc" = (/turf/closed/indestructible/riveted,/area/start) -"gd" = (/obj/effect/landmark/start,/turf/open/floor/plating,/area/start) -"ge" = (/turf/closed/indestructible/riveted,/area/ctf) -"gf" = (/turf/open/floor/plasteel/darkblue/side{tag = "icon-darkblue (NORTHWEST)";dir = 9},/area/ctf) -"gg" = (/turf/open/floor/plasteel/darkblue/side{tag = "icon-darkblue (NORTH)";dir = 1},/area/ctf) -"gh" = (/turf/open/floor/plasteel/darkblue/side{tag = "icon-darkblue (NORTHEAST)";dir = 5},/area/ctf) -"gi" = (/turf/open/floor/plasteel/darkred/side{tag = "icon-darkred (NORTHWEST)";dir = 9},/area/ctf) -"gj" = (/turf/open/floor/plasteel/darkred/side{tag = "icon-darkred (NORTH)";dir = 1},/area/ctf) -"gk" = (/turf/open/floor/plasteel/darkred/side{tag = "icon-darkred (NORTHEAST)";dir = 5},/area/ctf) -"gl" = (/turf/open/floor/plasteel/darkblue/side{tag = "icon-darkblue (WEST)";dir = 8},/area/ctf) -"gm" = (/turf/open/floor/plasteel/black,/area/ctf) -"gn" = (/turf/open/floor/plasteel/darkblue/side{tag = "icon-darkblue (EAST)";dir = 4},/area/ctf) -"go" = (/turf/open/floor/plasteel/blue,/area/ctf) -"gp" = (/turf/open/floor/plasteel/darkblue,/area/ctf) -"gq" = (/obj/structure/barricade/security/ctf,/turf/open/floor/plasteel/circuit,/area/ctf) -"gr" = (/obj/structure/table/reinforced,/turf/open/floor/plasteel/bluespace,/area/ctf) -"gs" = (/obj/structure/barricade/security/ctf,/turf/open/floor/plasteel/bluespace,/area/ctf) -"gt" = (/turf/open/floor/plasteel/bluespace,/area/ctf) -"gu" = (/turf/open/floor/plasteel/darkred/side{tag = "icon-darkred (WEST)";dir = 8},/area/ctf) -"gv" = (/obj/structure/barricade/security/ctf,/turf/open/floor/plasteel/circuit/rcircuit,/area/ctf) -"gw" = (/turf/open/floor/plasteel/darkred/side{tag = "icon-darkred (EAST)";dir = 4},/area/ctf) -"gx" = (/turf/open/floor/plasteel/red,/area/ctf) -"gy" = (/obj/structure/kitchenspike,/turf/open/floor/plasteel/black,/area/ctf) -"gz" = (/turf/closed/indestructible/splashscreen,/area/start) -"gA" = (/turf/open/floor/plasteel/darkblue/side{tag = "icon-darkblue (SOUTHWEST)";dir = 10},/area/ctf) -"gB" = (/turf/open/floor/plasteel/darkblue/side,/area/ctf) -"gC" = (/turf/open/floor/plasteel/darkblue/side{tag = "icon-darkblue (SOUTHEAST)";dir = 6},/area/ctf) -"gD" = (/turf/open/floor/plasteel/darkred/side{tag = "icon-darkred (SOUTHWEST)";dir = 10},/area/ctf) -"gE" = (/turf/open/floor/plasteel/darkred/side,/area/ctf) -"gF" = (/turf/open/floor/plasteel/darkred/side{tag = "icon-darkred (SOUTHEAST)";dir = 6},/area/ctf) -"gG" = (/obj/structure/window/reinforced/fulltile{obj_integrity = 5000;max_integrity = 5000;name = "hardened window"},/turf/open/floor/plating,/area/ctf) -"gH" = (/turf/open/floor/plasteel/black,/turf/open/floor/plasteel/warningline,/area/ctf) -"gI" = (/turf/open/floor/plasteel/darkblue/corner,/turf/open/floor/plasteel/warningline{tag = "icon-warningline (NORTH)";dir = 1},/turf/open/floor/plasteel/warningline{tag = "icon-warningline (NORTHWEST)";dir = 9},/area/ctf) -"gJ" = (/turf/open/floor/plasteel/darkblue/corner{tag = "icon-darkbluecorners (WEST)";dir = 8},/turf/open/floor/plasteel/warningline{tag = "icon-warningline (NORTH)";dir = 1},/area/ctf) -"gK" = (/turf/open/floor/plasteel/black,/turf/open/floor/plasteel/warningline{tag = "icon-warningline (NORTH)";dir = 1},/area/ctf) -"gL" = (/turf/open/floor/plasteel/darkblue/corner,/turf/open/floor/plasteel/warningline{tag = "icon-warningline (NORTH)";dir = 1},/area/ctf) -"gM" = (/turf/open/floor/plasteel/black,/turf/open/floor/plasteel/warningline{tag = "icon-warningline (NORTH)";dir = 1},/turf/open/floor/plasteel/warningline{tag = "icon-warningline (NORTHEAST)";dir = 5},/area/ctf) -"gN" = (/obj/machinery/power/emitter/energycannon,/turf/open/floor/plating,/area/ctf) -"gO" = (/turf/open/floor/plasteel/black,/turf/open/floor/plasteel/warningline{tag = "icon-warningline (EAST)";dir = 4},/area/ctf) -"gP" = (/turf/open/floor/plasteel/darkblue/corner{tag = "icon-darkbluecorners (EAST)";dir = 4},/turf/open/floor/plasteel/warningline{tag = "icon-warningline (WEST)";dir = 8},/area/ctf) -"gQ" = (/turf/open/floor/plasteel/darkblue/corner{tag = "icon-darkbluecorners (WEST)";dir = 8},/area/ctf) -"gR" = (/turf/open/floor/plasteel/darkblue/corner{tag = "icon-darkbluecorners (EAST)";dir = 4},/area/ctf) -"gS" = (/turf/open/floor/plating/warnplate{icon_plating = "warnplate"},/area/ctf) -"gT" = (/turf/open/floor/plasteel/black,/turf/open/floor/plasteel/warningline{tag = "icon-warningline (WEST)";dir = 8},/area/ctf) -"gU" = (/turf/open/floor/plating/warnplate{dir = 8},/area/ctf) -"gV" = (/turf/open/floor/plating,/area/ctf) -"gW" = (/turf/open/floor/plating/warnplate{dir = 4;luminosity = 2},/area/ctf) -"gX" = (/turf/open/floor/plasteel/darkblue/corner,/turf/open/floor/plasteel/warningline{tag = "icon-warningline (WEST)";dir = 8},/area/ctf) -"gY" = (/turf/open/floor/plasteel/darkblue/corner{tag = "icon-darkbluecorners (NORTH)";dir = 1},/area/ctf) -"gZ" = (/turf/open/floor/plasteel/darkblue/corner,/area/ctf) -"ha" = (/turf/open/floor/plating/warnplate{dir = 1},/area/ctf) -"hb" = (/turf/open/floor/plasteel/darkblue/corner{tag = "icon-darkbluecorners (EAST)";dir = 4},/turf/open/floor/plasteel/warningline{tag = "icon-warningline (SOUTHWEST)";dir = 10},/area/ctf) -"hc" = (/turf/open/floor/plasteel/darkblue/corner{tag = "icon-darkbluecorners (NORTH)";dir = 1},/turf/open/floor/plasteel/warningline,/area/ctf) -"hd" = (/turf/open/floor/plasteel/darkblue/corner{tag = "icon-darkbluecorners (EAST)";dir = 4},/turf/open/floor/plasteel/warningline,/area/ctf) -"he" = (/turf/open/floor/plasteel/black,/turf/open/floor/plasteel/warningline{tag = "icon-warningline (SOUTHEAST)";dir = 6},/area/ctf) -"hf" = (/obj/machinery/power/emitter/energycannon{tag = "icon-emitter (NORTH)";icon_state = "emitter";dir = 1},/turf/open/floor/plating,/area/ctf) -"hg" = (/obj/structure/trap/ctf/blue,/turf/open/floor/plasteel/blue,/area/ctf) -"hh" = (/turf/open/floor/plasteel/circuit,/turf/open/floor/plasteel/warningline{tag = "icon-warningline (NORTHWEST)";dir = 9},/area/ctf) -"hi" = (/turf/open/floor/plasteel/circuit,/turf/open/floor/plasteel/warningline{tag = "icon-warningline (NORTH)";dir = 1},/area/ctf) -"hj" = (/turf/open/floor/plasteel/circuit,/turf/open/floor/plasteel/warningline{tag = "icon-warningline (NORTHEAST)";dir = 5},/area/ctf) -"hk" = (/turf/open/floor/plasteel/darkred,/area/ctf) -"hl" = (/obj/structure/trap/ctf/red,/turf/open/floor/plasteel/darkred,/area/ctf) -"hm" = (/turf/open/floor/plasteel/circuit,/turf/open/floor/plasteel/warningline{tag = "icon-warningline (WEST)";dir = 8},/area/ctf) -"hn" = (/turf/open/floor/plasteel/circuit,/area/ctf) -"ho" = (/turf/open/floor/plasteel/circuit,/turf/open/floor/plasteel/warningline{tag = "icon-warningline (EAST)";dir = 4},/area/ctf) -"hp" = (/turf/open/floor/plasteel/circuit,/turf/open/floor/plasteel/warningline,/turf/open/floor/plasteel/warningline{tag = "icon-warningline (SOUTHWEST)";dir = 10},/area/ctf) -"hq" = (/turf/open/floor/plasteel/circuit,/turf/open/floor/plasteel/warningline,/area/ctf) -"hr" = (/turf/open/floor/plasteel/circuit,/turf/open/floor/plasteel/warningline{tag = "icon-warningline (SOUTHEAST)";dir = 6},/area/ctf) -"hs" = (/obj/structure/barricade/security/ctf,/turf/open/floor/plasteel/circuit/gcircuit/off,/area/ctf) -"ht" = (/obj/structure/trap/ctf/red,/turf/open/floor/plasteel/red,/area/ctf) -"hu" = (/turf/open/floor/plasteel/darkblue/side{tag = "icon-darkblue (NORTHWEST)";dir = 9},/turf/open/floor/plasteel/warningline{tag = "icon-warningline (NORTHWEST)";dir = 9},/area/ctf) -"hv" = (/turf/open/floor/plasteel/darkblue/side{tag = "icon-darkblue (NORTH)";dir = 1},/turf/open/floor/plasteel/warningline{tag = "icon-warningline (NORTH)";dir = 1},/area/ctf) -"hw" = (/turf/open/floor/plasteel/darkblue/side{tag = "icon-darkblue (NORTHEAST)";dir = 5},/turf/open/floor/plasteel/warningline{tag = "icon-warningline (NORTH)";dir = 1},/area/ctf) -"hx" = (/turf/open/floor/plasteel/circuit/gcircuit/off,/turf/open/floor/plasteel/warningline{tag = "icon-warningline (NORTH)";dir = 1},/area/ctf) -"hy" = (/turf/open/floor/plasteel/darkred/side{tag = "icon-darkred (NORTHWEST)";dir = 9},/turf/open/floor/plasteel/warningline{tag = "icon-warningline (NORTH)";dir = 1},/area/ctf) -"hz" = (/turf/open/floor/plasteel/darkred/side{tag = "icon-darkred (NORTH)";dir = 1},/turf/open/floor/plasteel/warningline{tag = "icon-warningline (NORTH)";dir = 1},/area/ctf) -"hA" = (/turf/open/floor/plasteel/darkred/side{tag = "icon-darkred (NORTHEAST)";dir = 5},/turf/open/floor/plasteel/warningline{tag = "icon-warningline (NORTHEAST)";dir = 5},/area/ctf) -"hB" = (/turf/open/floor/plasteel/darkblue/side{tag = "icon-darkblue (WEST)";dir = 8},/turf/open/floor/plasteel/warningline{tag = "icon-warningline (WEST)";dir = 8},/area/ctf) -"hC" = (/turf/open/floor/plasteel/circuit/gcircuit/off,/area/ctf) -"hD" = (/turf/open/floor/plasteel/darkred/side{tag = "icon-darkred (EAST)";dir = 4},/turf/open/floor/plasteel/warningline{tag = "icon-warningline (EAST)";dir = 4},/area/ctf) -"hE" = (/turf/open/floor/plasteel/circuit/rcircuit,/area/ctf) -"hF" = (/turf/open/floor/plasteel/circuit/gcircuit/animated,/area/ctf) -"hG" = (/obj/machinery/capture_the_flag/blue,/turf/open/floor/plasteel/circuit/gcircuit/animated,/area/ctf) -"hH" = (/obj/item/weapon/twohanded/required/ctf/blue,/turf/open/floor/plasteel/circuit/gcircuit/animated,/area/ctf) -"hI" = (/obj/item/weapon/twohanded/required/ctf/red,/turf/open/floor/plasteel/circuit/gcircuit/animated,/area/ctf) -"hJ" = (/obj/machinery/capture_the_flag/red,/turf/open/floor/plasteel/circuit/gcircuit/animated,/area/ctf) -"hK" = (/obj/effect/landmark/shuttle_import,/turf/open/space,/area/space) -"hL" = (/turf/open/floor/plasteel/darkblue/side{tag = "icon-darkblue (SOUTHWEST)";dir = 10},/turf/open/floor/plasteel/warningline{tag = "icon-warningline (SOUTHWEST)";dir = 10},/area/ctf) -"hM" = (/turf/open/floor/plasteel/darkblue/side,/turf/open/floor/plasteel/warningline,/area/ctf) -"hN" = (/turf/open/floor/plasteel/darkblue/side{tag = "icon-darkblue (SOUTHEAST)";dir = 6},/turf/open/floor/plasteel/warningline,/area/ctf) -"hO" = (/turf/open/floor/plasteel/circuit/gcircuit/off,/turf/open/floor/plasteel/warningline,/area/ctf) -"hP" = (/turf/open/floor/plasteel/darkred/side{tag = "icon-darkred (SOUTHWEST)";dir = 10},/turf/open/floor/plasteel/warningline,/area/ctf) -"hQ" = (/turf/open/floor/plasteel/darkred/side,/turf/open/floor/plasteel/warningline,/area/ctf) -"hR" = (/turf/open/floor/plasteel/darkred/side{tag = "icon-darkred (SOUTHEAST)";dir = 6},/turf/open/floor/plasteel/warningline{tag = "icon-warningline (SOUTHEAST)";dir = 6},/area/ctf) -"hS" = (/turf/closed/wall/mineral/titanium/overspace,/area/centcom/evac) -"hT" = (/obj/structure/shuttle/engine/propulsion{icon_state = "propulsion_r";dir = 1},/turf/open/floor/plating/airless,/area/centcom/evac) -"hU" = (/obj/structure/shuttle/engine/propulsion{icon_state = "propulsion";dir = 1},/turf/open/floor/plating/airless,/area/centcom/evac) -"hV" = (/obj/structure/shuttle/engine/propulsion{icon_state = "propulsion_l";dir = 1},/turf/open/floor/plating/airless,/area/centcom/evac) -"hW" = (/obj/docking_port/stationary{dir = 1;dwidth = 1;height = 4;id = "pod4_away";name = "recovery ship";width = 3},/turf/open/space,/area/space) -"hX" = (/obj/docking_port/stationary{dir = 1;dwidth = 1;height = 4;id = "pod3_away";name = "recovery ship";width = 3},/turf/open/space,/area/space) -"hY" = (/turf/open/floor/plasteel/circuit/rcircuit,/turf/open/floor/plasteel/warningline{tag = "icon-warningline (NORTHWEST)";dir = 9},/area/ctf) -"hZ" = (/turf/open/floor/plasteel/circuit/rcircuit,/turf/open/floor/plasteel/warningline{tag = "icon-warningline (NORTH)";dir = 1},/area/ctf) -"ia" = (/turf/open/floor/plasteel/circuit/rcircuit,/turf/open/floor/plasteel/warningline{tag = "icon-warningline (NORTHEAST)";dir = 5},/area/ctf) -"ib" = (/turf/closed/wall/mineral/titanium,/area/centcom/evac) -"ic" = (/obj/structure/window/reinforced,/obj/structure/shuttle/engine/heater{icon_state = "heater";dir = 1},/turf/open/floor/plating/airless,/area/centcom/evac) -"id" = (/obj/machinery/door/airlock/titanium,/turf/open/floor/plating,/area/centcom/evac) -"ie" = (/obj/structure/window/shuttle,/obj/structure/grille,/turf/open/floor/plating,/area/centcom/evac) -"if" = (/turf/open/floor/plasteel/circuit/rcircuit,/turf/open/floor/plasteel/warningline{tag = "icon-warningline (WEST)";dir = 8},/area/ctf) -"ig" = (/turf/open/floor/plasteel/circuit/rcircuit,/turf/open/floor/plasteel/warningline{tag = "icon-warningline (EAST)";dir = 4},/area/ctf) -"ih" = (/turf/open/floor/plating,/area/centcom/evac) -"ii" = (/turf/open/floor/plating,/turf/closed/wall/mineral/titanium/interior,/area/centcom/evac) -"ij" = (/turf/open/floor/mineral/titanium/blue,/turf/closed/wall/mineral/titanium/interior,/area/centcom/evac) -"ik" = (/obj/structure/closet/emcloset,/turf/open/floor/mineral/titanium/blue,/area/centcom/evac) -"il" = (/turf/open/floor/mineral/titanium/yellow,/area/centcom/evac) -"im" = (/obj/structure/table,/obj/item/weapon/storage/firstaid/toxin{pixel_x = -2;pixel_y = 4},/obj/item/weapon/storage/firstaid/toxin,/turf/open/floor/mineral/titanium/blue,/area/centcom/evac) -"in" = (/obj/structure/table,/obj/item/weapon/storage/firstaid/fire,/obj/item/weapon/storage/firstaid/fire{pixel_x = -2;pixel_y = 4},/turf/open/floor/mineral/titanium/blue,/area/centcom/evac) -"io" = (/obj/structure/table,/obj/item/weapon/storage/firstaid/regular{pixel_x = 2;pixel_y = 0},/obj/item/weapon/storage/firstaid/regular{pixel_x = -2;pixel_y = 4},/turf/open/floor/mineral/titanium/blue,/area/centcom/evac) -"ip" = (/turf/open/floor/plasteel/circuit/rcircuit,/turf/open/floor/plasteel/warningline{tag = "icon-warningline (SOUTHWEST)";dir = 10},/area/ctf) -"iq" = (/turf/open/floor/plasteel/circuit/rcircuit,/turf/open/floor/plasteel/warningline,/area/ctf) -"ir" = (/turf/open/floor/plasteel/circuit/rcircuit,/turf/open/floor/plasteel/warningline{tag = "icon-warningline (SOUTHEAST)";dir = 6},/area/ctf) -"is" = (/turf/open/floor/mineral/titanium/blue,/area/centcom/evac) -"it" = (/turf/open/floor/plasteel/black,/turf/open/floor/plasteel/warningline{tag = "icon-warningline (WEST)";dir = 8},/turf/open/floor/plasteel/warningline{tag = "icon-warningline (NORTH)";dir = 1},/area/ctf) -"iu" = (/turf/open/floor/plasteel/darkred/corner,/turf/open/floor/plasteel/warningline{tag = "icon-warningline (NORTH)";dir = 1},/area/ctf) -"iv" = (/turf/open/floor/plasteel/darkred/corner{tag = "icon-darkredcorners (WEST)";dir = 8},/turf/open/floor/plasteel/warningline{tag = "icon-warningline (NORTH)";dir = 1},/area/ctf) -"iw" = (/turf/open/floor/plasteel/darkred/corner{tag = "icon-darkredcorners (WEST)";dir = 8},/turf/open/floor/plasteel/warningline{tag = "icon-warningline (NORTHEAST)";dir = 5},/area/ctf) -"ix" = (/turf/open/floor/plasteel/darkred/corner,/area/ctf) -"iy" = (/turf/open/floor/plasteel/darkred/corner{tag = "icon-darkredcorners (NORTH)";dir = 1},/area/ctf) -"iz" = (/turf/open/floor/plasteel/darkred/corner{tag = "icon-darkredcorners (NORTH)";dir = 1},/turf/open/floor/plasteel/warningline{tag = "icon-warningline (EAST)";dir = 4},/area/ctf) -"iA" = (/obj/structure/table/reinforced,/obj/item/weapon/paper_bin,/turf/open/floor/mineral/plastitanium,/area/centcom/evac) -"iB" = (/obj/structure/table/reinforced,/obj/item/weapon/storage/fancy/donut_box,/turf/open/floor/mineral/plastitanium,/area/centcom/evac) -"iC" = (/obj/structure/table/reinforced,/obj/item/weapon/pen,/turf/open/floor/mineral/plastitanium,/area/centcom/evac) -"iD" = (/obj/structure/table/reinforced,/turf/open/floor/mineral/plastitanium,/area/centcom/evac) -"iE" = (/obj/machinery/sleeper{icon_state = "sleeper-open";dir = 8},/turf/open/floor/mineral/titanium/blue,/area/centcom/evac) -"iF" = (/obj/structure/chair{dir = 8},/turf/open/floor/mineral/titanium/blue,/area/centcom/evac) -"iG" = (/obj/machinery/computer/secure_data,/turf/open/floor/mineral/plastitanium,/area/centcom/evac) -"iH" = (/obj/structure/chair{dir = 1},/turf/open/floor/mineral/plastitanium,/area/centcom/evac) -"iI" = (/obj/structure/chair{dir = 4},/turf/open/floor/mineral/plastitanium,/area/centcom/evac) -"iJ" = (/obj/structure/table/reinforced,/obj/item/weapon/clipboard,/obj/item/weapon/stamp,/turf/open/floor/mineral/plastitanium,/area/centcom/evac) -"iK" = (/turf/open/floor/plasteel/darkred/corner{tag = "icon-darkredcorners (EAST)";dir = 4},/area/ctf) -"iL" = (/turf/open/floor/plasteel/darkred/corner{tag = "icon-darkredcorners (WEST)";dir = 8},/area/ctf) -"iM" = (/turf/open/floor/plasteel/darkred/corner{tag = "icon-darkredcorners (WEST)";dir = 8},/turf/open/floor/plasteel/warningline{tag = "icon-warningline (EAST)";dir = 4},/area/ctf) -"iN" = (/obj/structure/table,/obj/item/device/assembly/flash/handheld,/turf/open/floor/mineral/plastitanium,/area/centcom/evac) -"iO" = (/turf/open/floor/mineral/plastitanium,/area/centcom/evac) -"iP" = (/obj/structure/chair{dir = 4},/turf/open/floor/mineral/titanium/blue,/area/centcom/evac) -"iQ" = (/turf/open/floor/plasteel/black,/turf/open/floor/plasteel/warningline{tag = "icon-warningline (SOUTHWEST)";dir = 10},/area/ctf) -"iR" = (/turf/open/floor/plasteel/darkred/corner{tag = "icon-darkredcorners (EAST)";dir = 4},/turf/open/floor/plasteel/warningline,/area/ctf) -"iS" = (/turf/open/floor/plasteel/darkred/corner{tag = "icon-darkredcorners (NORTH)";dir = 1},/turf/open/floor/plasteel/warningline,/area/ctf) -"iT" = (/turf/open/floor/plasteel/darkred/corner{tag = "icon-darkredcorners (NORTH)";dir = 1},/turf/open/floor/plasteel/warningline{tag = "icon-warningline (SOUTHEAST)";dir = 6},/area/ctf) -"iU" = (/obj/structure/table,/obj/item/weapon/storage/box/handcuffs,/turf/open/floor/mineral/plastitanium,/area/centcom/evac) -"iV" = (/obj/machinery/door/window/northright{base_state = "right";dir = 4;icon_state = "right";name = "Security Desk";req_access_txt = "103"},/turf/open/floor/mineral/plastitanium,/area/centcom/evac) -"iW" = (/obj/docking_port/stationary{dir = 4;dwidth = 1;height = 4;id = "pod2_away";name = "recovery ship";width = 3},/turf/open/space,/area/space) -"iX" = (/obj/structure/bed,/turf/open/floor/mineral/titanium/blue,/area/centcom/evac) -"iY" = (/obj/structure/grille,/obj/structure/window/shuttle,/turf/open/floor/plating,/area/centcom/evac) -"iZ" = (/obj/machinery/door/airlock/titanium,/turf/open/floor/mineral/titanium/yellow,/area/centcom/evac) -"ja" = (/obj/docking_port/stationary{dir = 4;dwidth = 2;height = 7;id = "pod1_away";name = "recovery ship";width = 5},/turf/open/space,/area/space) -"jb" = (/obj/structure/table,/obj/structure/bedsheetbin,/turf/open/floor/mineral/titanium/blue,/area/centcom/evac) -"jc" = (/obj/structure/table,/obj/item/weapon/hand_labeler,/turf/open/floor/mineral/titanium/blue,/area/centcom/evac) -"jd" = (/obj/structure/table,/obj/item/weapon/storage/box/donkpockets,/turf/open/floor/mineral/titanium/blue,/area/centcom/evac) -"je" = (/obj/machinery/door/airlock/titanium{name = "Cockpit";req_access_txt = "109"},/turf/open/floor/mineral/titanium/yellow,/area/centcom/evac) -"jf" = (/obj/structure/table,/obj/item/device/radio/off,/turf/open/floor/mineral/titanium/blue,/area/centcom/evac) -"jg" = (/obj/structure/chair{dir = 4;name = "Prosecution"},/turf/open/floor/mineral/titanium/blue,/area/centcom/evac) -"jh" = (/obj/structure/filingcabinet,/turf/open/floor/mineral/titanium/blue,/area/centcom/evac) -"ji" = (/obj/structure/chair,/turf/open/floor/mineral/titanium/blue,/area/centcom/evac) -"jj" = (/turf/closed/wall/mineral/titanium,/area/shuttle/escape) -"jk" = (/obj/machinery/status_display,/turf/closed/wall/mineral/titanium,/area/shuttle/escape) -"jl" = (/obj/structure/table,/obj/item/weapon/storage/lockbox,/turf/open/floor/mineral/titanium/blue,/area/centcom/evac) -"jm" = (/obj/structure/table,/turf/open/floor/mineral/titanium/blue,/area/centcom/evac) -"jn" = (/obj/machinery/computer/shuttle,/turf/open/floor/mineral/titanium/blue,/area/centcom/evac) -"jo" = (/obj/structure/table,/obj/item/weapon/clipboard,/obj/item/weapon/pen,/turf/open/floor/mineral/titanium/blue,/area/centcom/evac) -"jp" = (/obj/structure/table,/obj/item/weapon/paper_bin,/turf/open/floor/mineral/titanium/blue,/area/centcom/evac) -"jq" = (/turf/closed/indestructible/riveted,/area/centcom/ferry) -"jr" = (/turf/open/floor/mineral/titanium,/area/shuttle/escape) -"js" = (/turf/open/floor/mineral/plastitanium,/area/shuttle/escape) -"jt" = (/turf/open/floor/plasteel/black,/area/centcom/ferry) -"ju" = (/turf/open/floor/plasteel/darkwarning{tag = "icon-warndark (EAST)";dir = 4},/area/centcom/ferry) -"jv" = (/turf/open/floor/plasteel/delivery,/area/centcom/ferry) -"jw" = (/obj/machinery/door/airlock/external{name = "Backup Emergency Escape Shuttle"},/turf/open/floor/plasteel/delivery,/area/centcom/ferry) -"jx" = (/obj/machinery/door/airlock/titanium,/obj/docking_port/stationary{dir = 4;dwidth = 2;height = 8;id = "backup_away";name = "Backup Shuttle Dock";width = 8},/obj/docking_port/mobile/emergency/backup,/turf/open/floor/plating,/area/shuttle/escape) -"jy" = (/obj/structure/chair/office/light{dir = 4},/turf/open/floor/mineral/titanium,/area/shuttle/escape) -"jz" = (/obj/structure/table/wood,/obj/item/weapon/paper{info = "Due to circumstances beyond our control, your Emergency Evacuation Shuttle is out of service.

We apologise for the inconvinience this may cause you.

Please enjoy the use of this complementary book.

Sincerely,
Centcom Operations Demolitions Examination Retribution Bugfixing Underlining Services"},/turf/open/floor/mineral/titanium,/area/shuttle/escape) -"jA" = (/obj/structure/table/wood,/obj/item/weapon/book/manual/random,/turf/open/floor/mineral/titanium,/area/shuttle/escape) -"jB" = (/turf/closed/indestructible/fakedoor,/area/centcom/ferry) -"jC" = (/obj/machinery/door/airlock/centcom{name = "Centcom Backup Docks";opacity = 1;req_access_txt = "101"},/turf/open/floor/plasteel/black,/area/centcom/ferry) -"jD" = (/obj/machinery/vending/coffee,/turf/open/floor/plasteel/black,/area/centcom/ferry) -"jE" = (/obj/machinery/vending/cigarette{products = list(/obj/item/weapon/storage/fancy/cigarettes/cigpack_syndicate = 7, /obj/item/weapon/storage/fancy/cigarettes/cigpack_uplift = 3, /obj/item/weapon/storage/fancy/cigarettes/cigpack_robust = 2, /obj/item/weapon/storage/fancy/cigarettes/cigpack_carp = 3, /obj/item/weapon/storage/fancy/cigarettes/cigpack_midori = 1, /obj/item/weapon/storage/box/matches = 10, /obj/item/weapon/lighter/greyscale = 4, /obj/item/weapon/storage/fancy/rollingpapers = 5)},/turf/open/floor/plasteel/black,/area/centcom/ferry) -"jF" = (/obj/structure/reagent_dispensers/water_cooler,/turf/open/floor/plasteel/black,/area/centcom/ferry) -"jG" = (/obj/machinery/status_display{density = 0;pixel_y = 32;supply_display = 1},/turf/open/floor/plasteel/black,/area/centcom/ferry) -"jH" = (/obj/item/weapon/twohanded/required/kirbyplants,/obj/machinery/status_display{pixel_y = 32},/turf/open/floor/plasteel/black,/area/centcom/ferry) -"jI" = (/obj/structure/chair/office/dark,/obj/effect/landmark{name = "Emergencyresponseteam"},/turf/open/floor/plasteel/black,/area/centcom/ferry) -"jJ" = (/obj/structure/table/reinforced,/turf/open/floor/vault,/area/centcom/ferry) -"jK" = (/obj/structure/chair/office/dark{dir = 8},/obj/effect/landmark{name = "Emergencyresponseteam"},/turf/open/floor/plasteel/black,/area/centcom/ferry) -"jL" = (/obj/structure/chair/office/dark{dir = 4},/obj/effect/landmark{name = "Emergencyresponseteam"},/turf/open/floor/plasteel/black,/area/centcom/ferry) -"jM" = (/obj/machinery/shuttle_manipulator,/turf/open/floor/plasteel/circuit,/area/centcom/ferry) -"jN" = (/turf/open/floor/plasteel/circuit,/area/centcom/ferry) -"jO" = (/obj/structure/extinguisher_cabinet{pixel_x = 28},/turf/open/floor/plasteel/black,/area/centcom/ferry) -"jP" = (/obj/structure/closet/secure_closet/ertCom,/turf/open/floor/plasteel/freezer{dir = 2},/area/centcom/ferry) -"jQ" = (/obj/structure/chair/office/dark,/turf/open/floor/plasteel/freezer{dir = 2},/area/centcom/ferry) -"jR" = (/obj/structure/table/reinforced,/obj/item/weapon/c4,/obj/item/weapon/c4{pixel_x = 7},/turf/open/floor/plasteel/freezer{dir = 2},/area/centcom/ferry) -"jS" = (/obj/structure/table/reinforced,/obj/item/weapon/storage/box/syringes,/obj/item/weapon/gun/syringe/rapidsyringe,/obj/structure/extinguisher_cabinet{pixel_y = 28},/turf/open/floor/plasteel/freezer{dir = 2},/area/centcom/ferry) -"jT" = (/obj/structure/closet/secure_closet/ertEngi,/turf/open/floor/plasteel/freezer{dir = 2},/area/centcom/ferry) -"jU" = (/obj/structure/table/wood,/obj/item/weapon/reagent_containers/food/drinks/bottle/rum,/obj/item/weapon/reagent_containers/food/drinks/bottle/tequila,/obj/item/weapon/reagent_containers/food/drinks/bottle/vodka{pixel_x = -5},/obj/item/weapon/reagent_containers/food/drinks/bottle/whiskey{pixel_x = 5},/turf/open/floor/plasteel/black,/area/centcom/ferry) -"jV" = (/turf/open/floor/plasteel/freezer{dir = 2},/area/centcom/ferry) -"jW" = (/obj/machinery/door/poddoor/ert,/turf/open/floor/plasteel/freezer{dir = 2},/area/centcom/ferry) -"jX" = (/obj/structure/chair/office/dark{dir = 1},/obj/effect/landmark{name = "Emergencyresponseteam"},/turf/open/floor/plasteel/black,/area/centcom/ferry) -"jY" = (/obj/structure/table/wood,/obj/item/weapon/storage/box/drinkingglasses,/turf/open/floor/plasteel/black,/area/centcom/ferry) -"jZ" = (/turf/closed/indestructible/riveted,/area/centcom/prison) -"ka" = (/turf/open/floor/plasteel/darkgreen/side{dir = 4},/area/centcom/ferry) -"kb" = (/obj/machinery/door/poddoor/shutters/preopen{id = "adminshut";name = "Administrative Shutters"},/turf/closed/indestructible/fakeglass{icon_state = "fakewindows2";dir = 6},/area/centcom/ferry) -"kc" = (/turf/open/floor/wood,/area/centcom/ferry) -"kd" = (/obj/effect/landmark{name = "prisonwarp"},/turf/open/floor/plasteel,/area/centcom/prison) -"ke" = (/obj/structure/closet/secure_closet/ertSec,/turf/open/floor/plasteel/freezer{dir = 2},/area/centcom/ferry) -"kf" = (/obj/structure/table/reinforced,/obj/item/weapon/storage/box/emps,/obj/item/weapon/gun/energy/ionrifle{pin = /obj/item/device/firing_pin},/turf/open/floor/plasteel/freezer{dir = 2},/area/centcom/ferry) -"kg" = (/obj/structure/table/reinforced,/obj/item/weapon/storage/box/syringes,/obj/item/weapon/gun/syringe/rapidsyringe,/turf/open/floor/plasteel/freezer{dir = 2},/area/centcom/ferry) -"kh" = (/obj/structure/closet/secure_closet/ertMed,/turf/open/floor/plasteel/freezer{dir = 2},/area/centcom/ferry) -"ki" = (/obj/structure/table/reinforced,/obj/item/clothing/mask/gas,/obj/item/clothing/mask/gas,/obj/item/clothing/mask/gas,/obj/item/clothing/mask/gas,/obj/item/clothing/mask/gas,/obj/item/clothing/mask/gas,/obj/item/clothing/mask/gas,/turf/open/floor/vault,/area/centcom/ferry) -"kj" = (/obj/structure/table/reinforced,/obj/item/weapon/paper_bin{pixel_x = -3;pixel_y = 5},/obj/item/weapon/pen/blue,/turf/open/floor/vault,/area/centcom/ferry) -"kk" = (/obj/machinery/door/airlock/centcom{name = "Administrative Office";opacity = 1;req_access_txt = "109"},/turf/open/floor/wood,/area/centcom/ferry) -"kl" = (/obj/structure/chair/office/dark,/turf/open/floor/wood,/area/centcom/ferry) -"km" = (/turf/closed/indestructible/fakeglass{icon_state = "fakewindows";dir = 8},/area/centcom/ferry) -"kn" = (/turf/closed/indestructible/fakeglass{icon_state = "fakewindows2";dir = 8},/area/centcom/ferry) -"ko" = (/turf/closed/indestructible/fakeglass{icon_state = "fakewindows";dir = 4},/area/centcom/ferry) -"kp" = (/obj/machinery/door/airlock/centcom{name = "briefing room";opacity = 1;req_access_txt = "101"},/turf/open/floor/plasteel/black,/area/centcom/ferry) -"kq" = (/obj/structure/table/wood,/obj/item/weapon/paper_bin,/turf/open/floor/carpet,/area/centcom/ferry) -"kr" = (/obj/structure/table/wood,/obj/item/weapon/pen,/turf/open/floor/carpet,/area/centcom/ferry) -"ks" = (/turf/open/floor/carpet,/area/centcom/ferry) -"kt" = (/turf/closed/indestructible/fakeglass{icon_state = "fakewindows";dir = 1},/area/centcom/ferry) -"ku" = (/obj/machinery/door/poddoor/shutters/preopen{id = "adminshut";name = "Administrative Shutters"},/turf/closed/indestructible/fakeglass{icon_state = "fakewindows";dir = 1},/area/centcom/ferry) -"kv" = (/obj/machinery/button/door{id = "adminshut";name = "Administrative Shutter-Control";pixel_y = 26},/turf/open/floor/carpet,/area/centcom/ferry) -"kw" = (/obj/structure/chair/comfy/black{dir = 1},/turf/open/floor/carpet,/area/centcom/ferry) -"kx" = (/turf/closed/indestructible/fakeglass{icon_state = "fakewindows";dir = 9},/area/centcom/ferry) -"ky" = (/turf/closed/indestructible/fakeglass{icon_state = "fakewindows";dir = 6},/area/centcom/ferry) -"kz" = (/obj/machinery/door/poddoor/shutters/preopen{id = "adminshut";name = "Administrative Shutters"},/turf/closed/indestructible/fakeglass,/area/centcom/ferry) -"kA" = (/obj/structure/showcase/fakesec,/turf/open/floor/carpet,/area/centcom/ferry) -"kB" = (/obj/structure/filingcabinet,/turf/open/floor/carpet,/area/centcom/ferry) -"kC" = (/obj/structure/reagent_dispensers/water_cooler,/turf/open/floor/carpet,/area/centcom/ferry) -"kD" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'";icon_state = "space";layer = 4;name = "EXTERNAL AIRLOCK";pixel_x = 0},/turf/closed/indestructible/fakeglass{icon_state = "fakewindows";dir = 8},/area/centcom/ferry) -"kE" = (/obj/machinery/computer/shuttle/ferry,/turf/open/floor/plasteel/darkwarning{dir = 8},/area/centcom/ferry) -"kF" = (/turf/closed/indestructible/riveted,/area/centcom/evac) -"kG" = (/obj/docking_port/stationary{dir = 8;dwidth = 2;height = 12;id = "ferry_away";name = "unknown";width = 5},/turf/open/space,/area/space) -"kH" = (/obj/machinery/door/airlock/external{name = "Ferry Airlock";req_access_txt = "0"},/turf/open/floor/plasteel/delivery,/area/centcom/ferry) -"kI" = (/turf/open/floor/plasteel/darkwarning{dir = 8},/area/centcom/ferry) -"kJ" = (/turf/open/floor/plasteel/darkgreen/corner{dir = 4},/area/centcom/ferry) -"kK" = (/obj/structure/mirror{pixel_y = 32},/obj/structure/dresser,/turf/open/floor/wood,/area/centcom/ferry) -"kL" = (/obj/machinery/vending/autodrobe,/turf/open/floor/wood,/area/centcom/ferry) -"kM" = (/turf/open/floor/plasteel/darkred/side{dir = 9},/area/centcom/evac) -"kN" = (/turf/open/floor/plasteel/darkred/side{dir = 1},/area/centcom/evac) -"kO" = (/obj/structure/table,/obj/item/weapon/storage/box/handcuffs,/turf/open/floor/plasteel/darkred/side{dir = 5},/area/centcom/evac) -"kP" = (/turf/closed/indestructible/fakeglass{icon_state = "fakewindows";dir = 5},/area/centcom/ferry) -"kQ" = (/obj/machinery/door/airlock/centcom{name = "Dressing Room";opacity = 1;req_access_txt = "0"},/turf/open/floor/wood,/area/centcom/ferry) -"kR" = (/obj/machinery/vending/clothing,/turf/open/floor/wood,/area/centcom/ferry) -"kS" = (/turf/closed/indestructible/fakedoor{name = "Centcom Security"},/area/centcom/evac) -"kT" = (/turf/open/floor/plasteel/black,/area/centcom/evac) -"kU" = (/turf/closed/indestructible/fakeglass{icon_state = "fakewindows";dir = 10},/area/centcom/ferry) -"kV" = (/turf/open/floor/plasteel/darkgreen/corner,/area/centcom/ferry) -"kW" = (/obj/structure/table/wood,/obj/item/weapon/paper_bin{pixel_y = 4},/obj/item/weapon/pen,/turf/open/floor/wood,/area/centcom/ferry) -"kX" = (/obj/structure/table/reinforced,/obj/item/weapon/clipboard,/turf/open/floor/plasteel/darkred/side{dir = 8},/area/centcom/evac) -"kY" = (/obj/structure/chair/office/dark,/turf/open/floor/plasteel/black,/area/centcom/evac) -"kZ" = (/obj/structure/showcase/fakesec,/turf/open/floor/plasteel/black,/area/centcom/evac) -"la" = (/turf/closed/indestructible/fakeglass,/area/centcom/ferry) -"lb" = (/obj/structure/chair/comfy/black{dir = 4},/turf/open/floor/wood,/area/centcom/ferry) -"lc" = (/obj/structure/table/wood,/turf/open/floor/wood,/area/centcom/ferry) -"ld" = (/obj/machinery/door/window/northleft{dir = 2;name = "Centcom Security";req_access_txt = "101"},/turf/open/floor/plasteel/black,/area/centcom/evac) -"le" = (/obj/structure/table/reinforced,/turf/open/floor/plasteel/darkred/side{dir = 10},/area/centcom/evac) -"lf" = (/obj/structure/table/reinforced,/obj/item/weapon/pen,/turf/open/floor/plasteel/darkred/side{dir = 2},/area/centcom/evac) -"lg" = (/obj/structure/table/reinforced,/obj/item/weapon/paper_bin,/turf/open/floor/plasteel/darkred/side{dir = 2},/area/centcom/evac) -"lh" = (/obj/machinery/door/airlock/centcom{name = "Transport Shuttle";opacity = 1;req_access_txt = "101"},/turf/open/floor/plasteel/darkgreen/side{dir = 2},/area/centcom/ferry) -"li" = (/turf/closed/indestructible/riveted,/area/centcom/control) -"lj" = (/obj/structure/flora/ausbushes/brflowers,/turf/open/floor/grass,/area/centcom/control) -"lk" = (/obj/structure/flora/ausbushes/palebush,/turf/open/floor/grass,/area/centcom/control) -"ll" = (/turf/closed/indestructible/fakeglass{icon_state = "fakewindows";dir = 1},/area/centcom/control) -"lm" = (/turf/open/floor/plasteel/green/side{dir = 1},/area/centcom/control) -"ln" = (/turf/closed/indestructible/fakeglass{icon_state = "fakewindows";dir = 9},/area/centcom/evac) -"lo" = (/turf/closed/indestructible/fakeglass{icon_state = "fakewindows2";dir = 8},/area/centcom/evac) -"lp" = (/turf/closed/indestructible/fakeglass{icon_state = "fakewindows";dir = 4},/area/centcom/evac) -"lq" = (/obj/machinery/door/airlock/centcom{name = "Centcom Security";opacity = 1;req_access_txt = "0"},/turf/open/floor/plasteel/black,/area/centcom/evac) -"lr" = (/turf/closed/indestructible/fakeglass{icon_state = "fakewindows2";dir = 6},/area/centcom/evac) -"ls" = (/turf/closed/indestructible/fakeglass,/area/centcom/control) -"lt" = (/turf/open/floor/plasteel,/area/centcom/control) -"lu" = (/obj/item/weapon/twohanded/required/kirbyplants,/turf/open/floor/plasteel/red/side{dir = 9},/area/centcom/evac) -"lv" = (/obj/structure/chair,/turf/open/floor/plasteel/red/side{dir = 1},/area/centcom/evac) -"lw" = (/turf/open/floor/plasteel/red/side{dir = 1},/area/centcom/evac) -"lx" = (/obj/structure/rack,/obj/item/weapon/gun/ballistic/shotgun/toy/crossbow,/obj/item/toy/foamblade,/turf/open/floor/plasteel/red/side{dir = 1},/area/centcom/evac) -"ly" = (/obj/structure/rack,/obj/item/weapon/storage/crayons,/obj/item/toy/sword,/turf/open/floor/plasteel/red/side{dir = 1},/area/centcom/evac) -"lz" = (/turf/closed/indestructible/fakeglass,/area/centcom/evac) -"lA" = (/turf/open/floor/plasteel/yellowsiding{dir = 8},/area/centcom/evac) -"lB" = (/turf/open/floor/plasteel,/area/centcom/evac) -"lC" = (/turf/open/floor/plasteel/warning{dir = 4},/area/centcom/evac) -"lD" = (/obj/machinery/door/poddoor/shuttledock,/turf/open/floor/engine,/area/centcom/evac) -"lE" = (/turf/closed/indestructible/fakeglass{icon_state = "fakewindows2";dir = 6},/area/centcom/control) -"lF" = (/obj/structure/chair{dir = 4},/turf/open/floor/plasteel/red/side{dir = 8},/area/centcom/evac) -"lG" = (/obj/structure/chair/office/dark,/turf/open/floor/plasteel,/area/centcom/evac) -"lH" = (/obj/structure/table/reinforced,/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plasteel/red/side{dir = 4},/area/centcom/evac) -"lI" = (/turf/open/floor/grass,/area/centcom/control) -"lJ" = (/obj/structure/chair{dir = 4},/turf/open/floor/plasteel/green/side{dir = 8},/area/centcom/control) -"lK" = (/turf/open/floor/plasteel/warning{dir = 4},/area/centcom/control) -"lL" = (/obj/machinery/door/airlock/centcom{name = "Centcom Customs";opacity = 1;req_access_txt = "109"},/turf/open/floor/plasteel/black,/area/centcom/control) -"lM" = (/turf/open/floor/plasteel/black,/area/centcom/control) -"lN" = (/obj/structure/table,/turf/open/floor/plasteel/black,/area/centcom/control) -"lO" = (/obj/structure/table/reinforced,/obj/item/weapon/paper_bin,/turf/open/floor/plasteel/red/side{dir = 2},/area/centcom/evac) -"lP" = (/obj/structure/table/reinforced,/obj/item/weapon/pen,/turf/open/floor/plasteel/red/side{dir = 2},/area/centcom/evac) -"lQ" = (/obj/structure/table/reinforced,/obj/item/toy/carpplushie,/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plasteel/red/side{dir = 6},/area/centcom/evac) -"lR" = (/turf/open/space/transit,/area/space) -"lS" = (/turf/closed/indestructible/riveted,/area/centcom/supply) -"lT" = (/turf/closed/indestructible/fakeglass{icon_state = "fakewindows2";dir = 1},/area/centcom/control) -"lU" = (/turf/open/floor/plasteel/green/corner,/area/centcom/control) -"lV" = (/obj/structure/table,/obj/item/weapon/paper_bin,/obj/item/weapon/pen,/turf/open/floor/plasteel/black,/area/centcom/control) -"lW" = (/turf/open/floor/plasteel/yellowsiding{dir = 1},/area/centcom/evac) -"lX" = (/turf/open/floor/plasteel/yellowsiding/corner{dir = 1},/area/centcom/evac) -"lY" = (/obj/docking_port/stationary{dir = 4;dwidth = 25;height = 50;id = "emergency_away";name = "Centcom Emergency Shuttle Dock";width = 50},/turf/open/space,/area/space) -"lZ" = (/turf/closed/indestructible/rock/snow,/area/syndicate_mothership) -"ma" = (/obj/structure/closet,/turf/open/floor/plasteel/warning/corner{dir = 1},/area/centcom/supply) -"mb" = (/obj/structure/closet/wardrobe/cargotech,/turf/open/floor/plasteel/loadingarea,/area/centcom/supply) -"mc" = (/obj/structure/closet/secure_closet/quartermaster,/turf/open/floor/plasteel/loadingarea,/area/centcom/supply) -"md" = (/obj/structure/closet,/turf/open/floor/plasteel,/area/centcom/supply) -"me" = (/turf/open/floor/plasteel/green/side{dir = 4},/area/centcom/control) -"mf" = (/obj/machinery/button/door{desc = "A remote control switch for port-side blast doors.";icon_state = "doorctrl0";id = "CentComPort";name = "Security Doors";pixel_y = 28;req_access_txt = "101"},/obj/structure/showcase/fakeid,/turf/open/floor/plasteel/black,/area/centcom/control) -"mg" = (/obj/structure/chair/office/dark{dir = 8},/turf/open/floor/plasteel/black,/area/centcom/control) -"mh" = (/obj/structure/table,/obj/item/weapon/stamp{pixel_x = -3;pixel_y = 3},/obj/item/weapon/stamp/denied{pixel_x = 4;pixel_y = -2},/obj/item/weapon/paper/centcom,/turf/open/floor/plasteel/black,/area/centcom/control) -"mi" = (/turf/open/floor/plasteel/red/corner{dir = 1},/area/centcom/evac) -"mj" = (/turf/open/floor/plating/asteroid/snow/atmosphere,/area/syndicate_mothership) -"mk" = (/obj/structure/flora/grass/brown,/turf/open/floor/plating/asteroid/snow/atmosphere,/area/syndicate_mothership) -"ml" = (/obj/structure/flora/tree/pine,/turf/open/floor/plating/asteroid/snow/atmosphere,/area/syndicate_mothership) -"mm" = (/obj/structure/flora/grass/both,/turf/open/floor/plating/asteroid/snow/atmosphere,/area/syndicate_mothership) -"mn" = (/obj/item/weapon/disk/data,/turf/open/floor/plating/asteroid/snow/atmosphere,/area/syndicate_mothership) -"mo" = (/turf/closed/indestructible/fakeglass{icon_state = "fakewindows2";dir = 6},/area/centcom/supply) -"mp" = (/turf/open/floor/plasteel/warning{dir = 8},/area/centcom/supply) -"mq" = (/turf/open/floor/plasteel,/area/centcom/supply) -"mr" = (/turf/open/floor/plasteel/green/corner{dir = 1},/area/centcom/control) -"ms" = (/turf/open/floor/plasteel/green/corner{dir = 4},/area/centcom/control) -"mt" = (/obj/structure/table/reinforced,/obj/machinery/door/window/brigdoor{base_state = "rightsecure";dir = 1;icon_state = "rightsecure";name = "Centcom Customs";req_access_txt = "109"},/turf/open/floor/plasteel/black,/area/centcom/control) -"mu" = (/turf/open/floor/plasteel/warning/corner{dir = 1},/area/centcom/evac) -"mv" = (/obj/item/toy/figure/syndie,/turf/open/floor/plating/asteroid/snow/atmosphere,/area/syndicate_mothership) -"mw" = (/obj/machinery/door/airlock/external{name = "Supply Shuttle";req_access_txt = "106"},/turf/open/floor/plasteel/delivery,/area/centcom/supply) -"mx" = (/obj/machinery/door/airlock/centcom{name = "Centcom Supply";req_access_txt = "106"},/turf/open/floor/plasteel/brown{dir = 4},/area/centcom/supply) -"my" = (/turf/open/floor/plasteel/brown{dir = 8},/area/centcom/control) -"mz" = (/obj/machinery/door/airlock/centcom{name = "Centcom Docks";opacity = 1;req_access_txt = "101"},/turf/open/floor/plasteel/black,/area/centcom/control) -"mA" = (/obj/machinery/door/poddoor/preopen{id = "CentComPort";name = "security door"},/turf/open/floor/plasteel/loadingarea{dir = 8},/area/centcom/control) -"mB" = (/turf/open/floor/plasteel/warning{dir = 8},/area/centcom/evac) -"mC" = (/obj/structure/flora/bush,/turf/open/floor/plating/asteroid/snow/atmosphere,/area/syndicate_mothership) -"mD" = (/obj/machinery/computer/cargo,/turf/open/floor/plasteel/warning{dir = 8},/area/centcom/supply) -"mE" = (/turf/open/floor/plasteel/green/corner{dir = 8},/area/centcom/control) -"mF" = (/obj/effect/spawner/structure/window/reinforced,/turf/open/floor/plating,/area/centcom/control) -"mG" = (/turf/open/floor/plasteel/warning/corner{dir = 4},/area/centcom/evac) -"mH" = (/obj/docking_port/stationary{dir = 8;dwidth = 5;height = 7;id = "supply_away";name = "Centcom";width = 12},/turf/open/space,/area/space) -"mI" = (/obj/structure/chair{dir = 8},/turf/open/floor/plasteel/green/side{dir = 4},/area/centcom/control) -"mJ" = (/turf/open/floor/plasteel/green/corner{dir = 8},/area/centcom/evac) -"mK" = (/turf/closed/indestructible/fakeglass{icon_state = "fakewindows";dir = 1},/area/centcom/supply) -"mL" = (/obj/structure/chair{dir = 4},/turf/open/floor/plasteel/green/side{dir = 8},/area/centcom/evac) -"mM" = (/turf/open/floor/plasteel/yellowsiding,/area/centcom/evac) -"mN" = (/turf/open/floor/plasteel/yellowsiding/corner{dir = 8},/area/centcom/evac) -"mO" = (/turf/closed/indestructible/fakeglass{icon_state = "fakewindows2";dir = 1},/area/centcom/supply) -"mP" = (/obj/structure/chair{dir = 4},/turf/open/floor/plasteel/green/side{dir = 10},/area/centcom/control) -"mQ" = (/obj/structure/chair{dir = 8},/turf/open/floor/plasteel/green/side{dir = 6},/area/centcom/control) -"mR" = (/obj/structure/table/reinforced,/obj/item/weapon/paper_bin,/turf/open/floor/plasteel/green/side{dir = 1},/area/centcom/evac) -"mS" = (/obj/structure/table/reinforced,/obj/item/weapon/pen,/turf/open/floor/plasteel/green/side{dir = 1},/area/centcom/evac) -"mT" = (/obj/structure/table/reinforced,/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plasteel/green/side{dir = 5},/area/centcom/evac) -"mU" = (/turf/open/floor/plating/asteroid/snow/atmosphere,/area/space) -"mV" = (/turf/closed/indestructible/fakeglass,/area/centcom/supply) -"mW" = (/turf/closed/indestructible/riveted,/area/tdome/tdomeobserve) -"mX" = (/turf/closed/indestructible/fakeglass{icon_state = "fakewindows";dir = 8},/area/tdome/tdomeobserve) -"mY" = (/turf/closed/indestructible/fakeglass{icon_state = "fakewindows";dir = 4},/area/tdome/tdomeobserve) -"mZ" = (/obj/machinery/door/airlock/centcom{name = "Thunderdome";opacity = 1;req_access_txt = "101"},/turf/open/floor/plasteel,/area/tdome/tdomeobserve) -"na" = (/obj/structure/chair/office/dark{dir = 1},/turf/open/floor/plasteel,/area/centcom/evac) -"nb" = (/obj/structure/table/reinforced,/obj/item/toy/talking/AI,/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plasteel/green/side{dir = 4},/area/centcom/evac) -"nc" = (/turf/closed/indestructible/riveted,/area/syndicate_mothership) -"nd" = (/turf/closed/indestructible/fakeglass{icon_state = "fakewindows";dir = 8},/area/syndicate_mothership) -"ne" = (/turf/closed/indestructible/fakeglass{icon_state = "fakewindows";dir = 4},/area/syndicate_mothership) -"nf" = (/obj/structure/table,/obj/item/weapon/paper_bin,/turf/open/floor/plasteel/warning/corner{dir = 4},/area/centcom/supply) -"ng" = (/obj/structure/table,/obj/item/weapon/clipboard,/obj/item/weapon/coin/silver,/turf/open/floor/plasteel,/area/centcom/supply) -"nh" = (/obj/structure/table,/obj/item/weapon/pen/blue{pixel_x = 4;pixel_y = 4},/obj/item/weapon/pen/red,/obj/item/weapon/pen{pixel_x = 8;pixel_y = 8},/turf/open/floor/plasteel,/area/centcom/supply) -"ni" = (/obj/structure/table,/turf/open/floor/plasteel/red/side{dir = 9},/area/tdome/tdomeobserve) -"nj" = (/turf/open/floor/plasteel/red/side{dir = 1},/area/tdome/tdomeobserve) -"nk" = (/obj/structure/table,/turf/open/floor/plasteel/red/side{dir = 1},/area/tdome/tdomeobserve) -"nl" = (/obj/structure/chair/stool,/turf/open/floor/plasteel/neutral/side{dir = 8},/area/tdome/tdomeobserve) -"nm" = (/turf/open/floor/plasteel,/area/tdome/tdomeobserve) -"nn" = (/obj/structure/chair/stool,/turf/open/floor/plasteel/neutral/side{dir = 4},/area/tdome/tdomeobserve) -"no" = (/obj/structure/table,/turf/open/floor/plasteel/green/side{dir = 1},/area/tdome/tdomeobserve) -"np" = (/turf/open/floor/plasteel/green/side{dir = 1},/area/tdome/tdomeobserve) -"nq" = (/obj/structure/table,/turf/open/floor/plasteel/green/side{dir = 5},/area/tdome/tdomeobserve) -"nr" = (/obj/item/weapon/twohanded/required/kirbyplants,/turf/open/floor/plasteel/green/side{dir = 10},/area/centcom/evac) -"ns" = (/obj/structure/chair{dir = 1},/turf/open/floor/plasteel/green/side,/area/centcom/evac) -"nt" = (/turf/open/floor/plasteel/green/side,/area/centcom/evac) -"nu" = (/obj/structure/rack,/obj/item/weapon/gun/ballistic/shotgun/toy/crossbow,/obj/item/toy/katana,/turf/open/floor/plasteel/green/side,/area/centcom/evac) -"nv" = (/obj/structure/rack,/obj/item/weapon/storage/crayons,/obj/item/toy/sword,/turf/open/floor/plasteel/green/side,/area/centcom/evac) -"nw" = (/turf/closed/indestructible/fakeglass{icon_state = "fakewindows";dir = 1},/area/centcom/evac) -"nx" = (/obj/item/weapon/storage/crayons,/obj/structure/table,/obj/item/weapon/storage/crayons,/turf/open/floor/plasteel/freezer{dir = 2},/area/syndicate_mothership) -"ny" = (/obj/machinery/washing_machine,/turf/open/floor/plasteel/freezer{dir = 2},/area/syndicate_mothership) -"nz" = (/obj/machinery/door/airlock/centcom{name = "Crate Storage";req_access_txt = "106"},/turf/open/floor/plasteel/delivery,/area/centcom/supply) -"nA" = (/obj/structure/closet/secure_closet/bar,/turf/open/floor/plasteel/red/side{dir = 8},/area/tdome/tdomeobserve) -"nB" = (/obj/structure/table,/turf/open/floor/plasteel,/area/tdome/tdomeobserve) -"nC" = (/obj/structure/closet/secure_closet/freezer/kitchen,/turf/open/floor/plasteel/green/side{dir = 4},/area/tdome/tdomeobserve) -"nD" = (/turf/closed/indestructible/fakeglass{icon_state = "fakewindows";dir = 10},/area/centcom/evac) -"nE" = (/obj/machinery/door/airlock/centcom{name = "Centcom";opacity = 1;req_access_txt = "0"},/turf/open/floor/plasteel/black,/area/centcom/evac) -"nF" = (/turf/closed/indestructible/riveted/uranium,/area/wizard_station) -"nG" = (/turf/closed/indestructible/fakeglass{color = "#008000";dir = 8;icon_state = "fakewindows"},/area/wizard_station) -"nH" = (/turf/closed/indestructible/fakeglass{color = "#008000";dir = 8;icon_state = "fakewindows2"},/area/wizard_station) -"nI" = (/turf/closed/indestructible/fakeglass{color = "#008000";dir = 4;icon_state = "fakewindows"},/area/wizard_station) -"nJ" = (/obj/machinery/computer/shuttle/syndicate/recall,/turf/open/floor/plasteel/bar{dir = 2},/area/syndicate_mothership) -"nK" = (/turf/open/floor/plasteel/bar{dir = 2},/area/syndicate_mothership) -"nL" = (/obj/machinery/vending/coffee,/turf/open/floor/plasteel/bar{dir = 2},/area/syndicate_mothership) -"nM" = (/obj/machinery/vending/cola,/turf/open/floor/plasteel/bar{dir = 2},/area/syndicate_mothership) -"nN" = (/obj/machinery/vending/cigarette{products = list(/obj/item/weapon/storage/fancy/cigarettes/cigpack_syndicate = 7, /obj/item/weapon/storage/fancy/cigarettes/cigpack_uplift = 3, /obj/item/weapon/storage/fancy/cigarettes/cigpack_robust = 2, /obj/item/weapon/storage/fancy/cigarettes/cigpack_carp = 3, /obj/item/weapon/storage/fancy/cigarettes/cigpack_midori = 1, /obj/item/weapon/storage/box/matches = 10, /obj/item/weapon/lighter/greyscale = 4, /obj/item/weapon/storage/fancy/rollingpapers = 5)},/turf/open/floor/plasteel/bar{dir = 2},/area/syndicate_mothership) -"nO" = (/obj/structure/urinal{pixel_y = 28},/turf/open/floor/plasteel/freezer{dir = 2},/area/syndicate_mothership) -"nP" = (/obj/item/weapon/soap/syndie,/obj/structure/mopbucket,/turf/open/floor/plasteel/freezer{dir = 2},/area/syndicate_mothership) -"nQ" = (/obj/structure/mirror{pixel_x = 28},/obj/item/weapon/mop,/turf/open/floor/plasteel/freezer{dir = 2},/area/syndicate_mothership) -"nR" = (/obj/structure/closet/crate,/turf/open/floor/plasteel,/area/centcom/supply) -"nS" = (/obj/structure/table,/obj/item/weapon/storage/box/drinkingglasses,/turf/open/floor/plasteel/red/side{dir = 8},/area/tdome/tdomeobserve) -"nT" = (/obj/structure/table,/turf/open/floor/plasteel/green/side{dir = 4},/area/tdome/tdomeobserve) -"nU" = (/turf/open/floor/engine/cult,/area/wizard_station) -"nV" = (/obj/machinery/computer/shuttle,/turf/open/floor/engine/cult,/area/wizard_station) -"nW" = (/obj/item/weapon/paper{info = "GET DAT FUKKEN DISK";name = "memo"},/obj/structure/noticeboard{pixel_x = -32;pixel_y = 0},/turf/open/floor/plasteel/bar{dir = 2},/area/syndicate_mothership) -"nX" = (/obj/structure/chair/stool,/turf/open/floor/plasteel/bar{dir = 2},/area/syndicate_mothership) -"nY" = (/mob/living/simple_animal/hostile/carp/cayenne,/turf/open/floor/plasteel/bar{dir = 2},/area/syndicate_mothership) -"nZ" = (/obj/machinery/door/airlock/centcom{name = "Restroom";opacity = 1;req_access_txt = "150"},/turf/open/floor/plasteel/bar{dir = 2},/area/syndicate_mothership) -"oa" = (/turf/open/floor/plasteel/freezer{dir = 2},/area/syndicate_mothership) -"ob" = (/obj/structure/mirror{pixel_x = 28},/turf/open/floor/plasteel/freezer{dir = 2},/area/syndicate_mothership) -"oc" = (/turf/open/floor/plasteel/red/side{dir = 8},/area/tdome/tdomeobserve) -"od" = (/obj/structure/closet/secure_closet/freezer/fridge,/turf/open/floor/plasteel/green/side{dir = 4},/area/tdome/tdomeobserve) -"oe" = (/obj/structure/table/reinforced,/turf/open/floor/plasteel/green/side{dir = 9},/area/centcom/evac) -"of" = (/obj/structure/table/wood,/obj/item/device/paicard,/turf/open/floor/plasteel/bar{dir = 2},/area/syndicate_mothership) -"og" = (/obj/structure/table/wood,/obj/item/pizzabox,/turf/open/floor/plasteel/bar{dir = 2},/area/syndicate_mothership) -"oh" = (/obj/structure/chair/stool,/obj/effect/landmark{name = "Syndicate-Spawn"},/turf/open/floor/plasteel/bar{dir = 2},/area/syndicate_mothership) -"oi" = (/obj/machinery/computer/telecrystals/uplinker,/turf/open/floor/plasteel/podhatch{dir = 9},/area/syndicate_mothership) -"oj" = (/obj/structure/toilet{icon_state = "toilet00";dir = 8},/obj/structure/window/reinforced/tinted{tag = "icon-rwindow (NORTH)";icon_state = "rwindow";dir = 1},/obj/machinery/door/window{tag = "icon-right (WEST)";name = "Tactical Toilet";icon_state = "right";dir = 8;opacity = 1},/turf/open/floor/plasteel/freezer{dir = 2},/area/syndicate_mothership) -"ok" = (/turf/open/floor/plating/airless,/area/syndicate_mothership) -"ol" = (/turf/open/floor/plating/airless/warnplate{dir = 2},/area/syndicate_mothership) -"om" = (/turf/open/floor/plasteel/red/side{dir = 10},/area/tdome/tdomeobserve) -"on" = (/turf/open/floor/plasteel/red/side{dir = 2},/area/tdome/tdomeobserve) -"oo" = (/turf/open/floor/plasteel/neutral/side{dir = 8},/area/tdome/tdomeobserve) -"op" = (/turf/open/floor/plasteel/neutral/side{dir = 4},/area/tdome/tdomeobserve) -"oq" = (/turf/open/floor/plasteel/green/side,/area/tdome/tdomeobserve) -"or" = (/turf/open/floor/plasteel/green/side{dir = 6},/area/tdome/tdomeobserve) -"os" = (/obj/structure/table/reinforced,/obj/item/weapon/clipboard,/turf/open/floor/plasteel/green/side{dir = 8},/area/centcom/evac) -"ot" = (/obj/structure/filingcabinet/filingcabinet,/turf/open/floor/plasteel,/area/centcom/evac) -"ou" = (/obj/structure/showcase{desc = "A strange machine supposedly from another world. The Wizard Federation has been meddling with it for years.";icon = 'icons/obj/machines/telecomms.dmi';icon_state = "processor";name = "byond random number generator"},/turf/open/floor/engine/cult,/area/wizard_station) -"ov" = (/obj/structure/showcase{desc = "A historical figure of great importance to the wizard federation. He spent his long life learning magic, stealing artifacts, and harassing idiots with swords. May he rest forever, Rodney.";icon = 'icons/mob/mob.dmi';icon_state = "nim";name = "wizard of yendor showcase"},/turf/open/floor/engine/cult,/area/wizard_station) -"ow" = (/turf/closed/indestructible/fakeglass{icon_state = "fakewindows";dir = 9},/area/syndicate_mothership) -"ox" = (/turf/closed/indestructible/fakeglass{icon_state = "fakewindows2";dir = 8},/area/syndicate_mothership) -"oy" = (/obj/structure/table/wood,/obj/item/weapon/reagent_containers/food/snacks/pizzaslice/mushroom,/turf/open/floor/plasteel/bar{dir = 2},/area/syndicate_mothership) -"oz" = (/obj/structure/table/wood,/obj/item/weapon/reagent_containers/food/drinks/beer{pixel_x = 5;pixel_y = -2},/obj/item/toy/cards/deck/syndicate{icon_state = "deck_syndicate_full";pixel_x = -6;pixel_y = 6},/turf/open/floor/plasteel/bar{dir = 2},/area/syndicate_mothership) -"oA" = (/obj/machinery/computer/telecrystals/uplinker,/turf/open/floor/plasteel/podhatch{dir = 8},/area/syndicate_mothership) -"oB" = (/obj/structure/closet/cardboard,/turf/open/floor/plating/airless,/area/syndicate_mothership) -"oC" = (/turf/open/floor/plating/airless/warnplate{dir = 6},/area/syndicate_mothership) -"oD" = (/turf/open/space,/obj/machinery/porta_turret/syndicate/pod,/turf/closed/wall/mineral/plastitanium{dir = 8;icon_state = "diagonalWall3"},/area/shuttle/assault_pod) -"oE" = (/turf/closed/wall/mineral/plastitanium,/area/shuttle/assault_pod) -"oF" = (/obj/machinery/door/airlock/centcom{name = "Assault Pod";opacity = 1;req_access_txt = "150"},/turf/open/floor/plating,/area/shuttle/assault_pod) -"oG" = (/turf/open/space,/obj/machinery/porta_turret/syndicate/pod,/turf/closed/wall/mineral/plastitanium{dir = 1;icon_state = "diagonalWall3"},/area/shuttle/assault_pod) -"oH" = (/turf/open/floor/plating/airless/warnplate{dir = 10},/area/syndicate_mothership) -"oI" = (/turf/closed/indestructible/fakeglass{icon_state = "fakewindows2";dir = 8},/area/tdome/tdomeobserve) -"oJ" = (/turf/closed/indestructible/fakedoor{name = "Centcom"},/area/centcom/evac) -"oK" = (/turf/closed/indestructible/fakeglass{color = "#008000";dir = 6;icon_state = "fakewindows2"},/area/wizard_station) -"oL" = (/obj/machinery/door/airlock{icon = 'icons/obj/doors/airlocks/station/uranium.dmi';name = "Cockpit"},/turf/open/floor/engine/cult,/area/wizard_station) -"oM" = (/turf/closed/indestructible/fakeglass{icon_state = "fakewindows2";dir = 1},/area/syndicate_mothership) -"oN" = (/turf/open/floor/plating,/area/syndicate_mothership) -"oO" = (/obj/machinery/door/poddoor/shutters{id = "nukeop_ready";name = "shuttle dock"},/turf/open/floor/plating,/area/syndicate_mothership) -"oP" = (/turf/open/floor/plating/airless/warnplate{dir = 4},/area/syndicate_mothership) -"oQ" = (/obj/structure/chair{dir = 4},/turf/open/floor/mineral/plastitanium,/area/shuttle/assault_pod) -"oR" = (/turf/open/floor/mineral/plastitanium,/area/shuttle/assault_pod) -"oS" = (/obj/structure/chair{dir = 8},/turf/open/floor/mineral/plastitanium,/area/shuttle/assault_pod) -"oT" = (/turf/open/floor/plating/airless/warnplate{dir = 8},/area/syndicate_mothership) -"oU" = (/turf/open/floor/grass,/area/tdome/tdomeobserve) -"oV" = (/turf/closed/indestructible/fakeglass{icon_state = "fakewindows2";dir = 6},/area/tdome/tdomeobserve) -"oW" = (/turf/open/floor/plasteel/green/side{dir = 10},/area/centcom/evac) -"oX" = (/turf/open/floor/plasteel/green/side{dir = 6},/area/centcom/evac) -"oY" = (/obj/machinery/computer/camera_advanced,/turf/open/floor/wood,/area/wizard_station) -"oZ" = (/obj/structure/table/wood/fancy,/obj/item/device/radio/intercom{desc = "Talk smack through this.";syndie = 1},/turf/open/floor/wood,/area/wizard_station) -"pa" = (/turf/open/floor/carpet,/area/wizard_station) -"pb" = (/obj/structure/chair/wood/wings,/turf/open/floor/carpet,/area/wizard_station) -"pc" = (/turf/closed/indestructible/fakeglass,/area/syndicate_mothership) -"pd" = (/obj/machinery/door/airlock/external{req_access_txt = "150"},/turf/open/floor/plating,/area/syndicate_mothership) -"pe" = (/obj/machinery/button/door{id = "nukeop_ready";name = "mission launch control";pixel_x = -26;pixel_y = 0;req_access_txt = "151"},/turf/open/floor/plasteel/bar{dir = 2},/area/syndicate_mothership) -"pf" = (/obj/machinery/computer/telecrystals/uplinker,/turf/open/floor/plasteel/podhatch{dir = 10},/area/syndicate_mothership) -"pg" = (/obj/structure/chair{dir = 1},/turf/open/floor/mineral/plastitanium,/area/shuttle/assault_pod) -"ph" = (/turf/open/floor/wood,/area/wizard_station) -"pi" = (/obj/structure/chair/wood/wings{icon_state = "wooden_chair_wings";dir = 1},/turf/open/floor/wood,/area/wizard_station) -"pj" = (/obj/structure/chair/wood/wings{tag = "icon-wooden_chair_wings (EAST)";icon_state = "wooden_chair_wings";dir = 4},/turf/open/floor/carpet,/area/wizard_station) -"pk" = (/obj/structure/table/wood/poker,/obj/item/toy/figure/wizard,/turf/open/floor/carpet,/area/wizard_station) -"pl" = (/obj/structure/chair/wood/wings{tag = "icon-wooden_chair_wings (WEST)";icon_state = "wooden_chair_wings";dir = 8},/turf/open/floor/carpet,/area/wizard_station) -"pm" = (/obj/docking_port/stationary{area_type = /area/syndicate_mothership;dheight = 9;dir = 2;dwidth = 5;height = 24;id = "syndicate_away";name = "syndicate recon outpost";turf_type = /turf/open/floor/plating/asteroid/snow;width = 18},/turf/open/floor/plating/asteroid/snow/atmosphere,/area/space) -"pn" = (/obj/item/weapon/storage/box/drinkingglasses,/obj/item/weapon/reagent_containers/food/drinks/bottle/rum,/obj/structure/table/wood,/turf/open/floor/wood,/area/syndicate_mothership) -"po" = (/obj/structure/table/wood,/turf/open/floor/wood,/area/syndicate_mothership) -"pp" = (/obj/structure/table/wood,/obj/item/device/syndicatedetonator{desc = "This gaudy button can be used to instantly detonate syndicate bombs that have been activated on the station. It is also fun to press."},/turf/open/floor/wood,/area/syndicate_mothership) -"pq" = (/obj/structure/table/wood,/obj/item/toy/nuke,/turf/open/floor/wood,/area/syndicate_mothership) -"pr" = (/obj/machinery/door/airlock/centcom{aiControlDisabled = 1;name = "Assault Pod";opacity = 1;req_access_txt = "150"},/turf/open/floor/plating,/area/shuttle/assault_pod) -"ps" = (/obj/machinery/computer/shuttle/syndicate/drop_pod,/turf/closed/wall/shuttle{tag = "icon-wall3";icon_state = "wall3";dir = 2},/area/shuttle/assault_pod) -"pt" = (/turf/open/floor/plasteel/redblue,/area/tdome/tdomeobserve) -"pu" = (/obj/structure/chair,/obj/effect/landmark{name = "tdomeobserve"},/turf/open/floor/plasteel/redblue,/area/tdome/tdomeobserve) -"pv" = (/obj/machinery/door/airlock{icon = 'icons/obj/doors/airlocks/station/uranium.dmi';name = "Observation Room"},/turf/open/floor/engine/cult,/area/wizard_station) -"pw" = (/obj/machinery/door/airlock{icon = 'icons/obj/doors/airlocks/station/uranium.dmi';name = "Game Room"},/turf/open/floor/engine/cult,/area/wizard_station) -"px" = (/obj/structure/chair/wood/wings{icon_state = "wooden_chair_wings";dir = 1},/turf/open/floor/carpet,/area/wizard_station) -"py" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'FOURTH WALL'.";name = "\improper FOURTH WALL";pixel_x = -32},/turf/open/floor/plating/asteroid/snow/atmosphere,/area/syndicate_mothership) -"pz" = (/turf/open/floor/wood,/area/syndicate_mothership) -"pA" = (/obj/effect/landmark{name = "Syndicate-Spawn"},/turf/open/floor/wood,/area/syndicate_mothership) -"pB" = (/obj/machinery/door/window{base_state = "right";dir = 4;icon_state = "right";name = "Uplink Management Control";req_access_txt = "151"},/turf/open/floor/wood,/area/syndicate_mothership) -"pC" = (/obj/structure/chair,/turf/open/floor/mineral/plastitanium,/area/shuttle/assault_pod) -"pD" = (/turf/closed/indestructible/fakedoor{name = "Thunderdome"},/area/tdome/tdomeobserve) -"pE" = (/obj/machinery/computer/security/telescreen,/turf/open/floor/plasteel/redblue,/area/tdome/tdomeobserve) -"pF" = (/obj/structure/chair/wood/wings{tag = "icon-wooden_chair_wings (WEST)";icon_state = "wooden_chair_wings";dir = 8},/turf/open/floor/wood,/area/wizard_station) -"pG" = (/obj/structure/table/wood/fancy,/obj/item/device/camera/spooky,/turf/open/floor/carpet,/area/wizard_station) -"pH" = (/obj/structure/table/wood/poker,/obj/item/toy/cards/deck,/turf/open/floor/carpet,/area/wizard_station) -"pI" = (/obj/machinery/computer/telecrystals/boss,/turf/open/floor/plasteel/podhatch{dir = 5},/area/syndicate_mothership) -"pJ" = (/obj/structure/sign/map/left{pixel_y = -32},/obj/structure/rack{icon = 'icons/obj/stationobjs.dmi';icon_state = "minibar_left";name = "skeletal minibar"},/obj/item/weapon/reagent_containers/food/drinks/bottle/vodka,/turf/open/floor/wood,/area/syndicate_mothership) -"pK" = (/obj/structure/sign/map/right{pixel_y = -32},/obj/structure/rack{icon = 'icons/obj/stationobjs.dmi';icon_state = "minibar_right";name = "skeletal minibar"},/obj/item/weapon/reagent_containers/food/drinks/bottle/gin,/turf/open/floor/wood,/area/syndicate_mothership) -"pL" = (/obj/machinery/door/airlock/centcom{name = "Equipment Room";opacity = 1;req_access_txt = "150"},/turf/open/floor/plasteel/bar{dir = 2},/area/syndicate_mothership) -"pM" = (/turf/open/space,/obj/machinery/porta_turret/syndicate/pod,/turf/closed/wall/mineral/plastitanium{icon_state = "diagonalWall3"},/area/shuttle/assault_pod) -"pN" = (/turf/open/space,/obj/machinery/porta_turret/syndicate/pod,/turf/closed/wall/mineral/plastitanium{dir = 4;icon_state = "diagonalWall3"},/area/shuttle/assault_pod) -"pO" = (/obj/item/weapon/statuebust{pixel_y = 12},/obj/structure/table/wood/fancy,/turf/open/floor/wood,/area/wizard_station) -"pP" = (/obj/machinery/vending/magivend,/turf/open/floor/engine/cult,/area/wizard_station) -"pQ" = (/obj/machinery/vending/snack,/turf/open/floor/engine/cult,/area/wizard_station) -"pR" = (/obj/structure/table/wood/fancy,/obj/item/weapon/storage/pill_bottle/dice{icon_state = "magicdicebag"},/turf/open/floor/carpet,/area/wizard_station) -"pS" = (/obj/structure/table/wood/fancy,/obj/item/weapon/storage/photo_album,/turf/open/floor/carpet,/area/wizard_station) -"pT" = (/turf/open/floor/plasteel/black,/area/syndicate_mothership) -"pU" = (/obj/machinery/mech_bay_recharge_port,/turf/open/floor/plating,/area/syndicate_mothership) -"pV" = (/turf/open/floor/mech_bay_recharge_floor,/area/syndicate_mothership) -"pW" = (/obj/machinery/computer/mech_bay_power_console,/turf/open/floor/plating,/area/syndicate_mothership) -"pX" = (/obj/machinery/vending/tool,/turf/open/floor/plasteel/black,/area/syndicate_mothership) -"pY" = (/obj/structure/closet/cardboard/metal,/turf/open/floor/plating/airless,/area/syndicate_mothership) -"pZ" = (/turf/open/floor/plating/airless/warnplate{dir = 5},/area/syndicate_mothership) -"qa" = (/obj/machinery/door/airlock/centcom{aiControlDisabled = 1;name = "Assault Pod";opacity = 1;req_access_txt = "150"},/obj/docking_port/mobile/assault_pod{dwidth = 3;name = "steel rain";port_angle = 90;preferred_direction = 4},/turf/open/floor/plating,/area/shuttle/assault_pod) -"qb" = (/turf/open/floor/plating/airless/warnplate{dir = 9},/area/syndicate_mothership) -"qc" = (/obj/machinery/door/airlock{icon = 'icons/obj/doors/airlocks/station/uranium.dmi';name = "Study"},/turf/open/floor/engine/cult,/area/wizard_station) -"qd" = (/obj/machinery/door/airlock{icon = 'icons/obj/doors/airlocks/station/uranium.dmi';name = "Break Room"},/turf/open/floor/engine/cult,/area/wizard_station) -"qe" = (/turf/open/floor/plating/airless/warnplate{dir = 1},/area/syndicate_mothership) -"qf" = (/turf/closed/indestructible/riveted,/area/tdome/arena) -"qg" = (/obj/machinery/igniter,/turf/open/floor/plasteel,/area/tdome/arena) -"qh" = (/turf/open/floor/plasteel,/area/tdome/arena) -"qi" = (/obj/structure/chair/wood/wings,/turf/open/floor/engine/cult,/area/wizard_station) -"qj" = (/obj/structure/table/wood,/obj/item/stack/medical/bruise_pack,/obj/item/stack/medical/ointment,/turf/open/floor/engine/cult,/area/wizard_station) -"qk" = (/obj/structure/table/wood,/obj/item/weapon/retractor,/turf/open/floor/engine/cult,/area/wizard_station) -"ql" = (/obj/structure/table/wood,/obj/item/clothing/suit/wizrobe/magusblue,/obj/item/clothing/head/wizard/magus,/obj/item/weapon/staff,/obj/structure/mirror/magic{pixel_y = 28},/turf/open/floor/engine/cult,/area/wizard_station) -"qm" = (/obj/structure/table/wood,/obj/item/clothing/suit/wizrobe/magusred,/obj/item/clothing/head/wizard/magus,/obj/item/weapon/staff,/turf/open/floor/engine/cult,/area/wizard_station) -"qn" = (/obj/item/weapon/reagent_containers/food/snacks/meat/slab/human/mutant/lizard,/turf/open/floor/grass,/area/wizard_station) -"qo" = (/obj/effect/decal/cleanable/blood/splatter,/obj/effect/decal/cleanable/blood/gibs/body,/turf/open/floor/grass,/area/wizard_station) -"qp" = (/obj/effect/decal/remains/xeno/larva,/turf/open/floor/grass,/area/wizard_station) -"qq" = (/obj/effect/decal/cleanable/blood/splatter,/turf/open/floor/grass,/area/wizard_station) -"qr" = (/turf/closed/indestructible/fakeglass{icon_state = "fakewindows2";dir = 6},/area/syndicate_mothership) -"qs" = (/obj/structure/chair/stool,/turf/open/floor/plasteel/black,/area/syndicate_mothership) -"qt" = (/obj/structure/rack,/obj/item/clothing/under/color/red,/obj/item/clothing/shoes/sneakers/brown,/obj/item/clothing/suit/armor/tdome/red,/obj/item/clothing/head/helmet/thunderdome,/obj/item/weapon/melee/baton/loaded,/obj/item/weapon/melee/energy/sword/saber/red,/turf/open/floor/plasteel/black,/area/tdome/arena) -"qu" = (/obj/machinery/door/poddoor{id = "thunderdomegen";name = "General Supply"},/turf/open/floor/plasteel/black,/area/tdome/arena) -"qv" = (/obj/effect/landmark{name = "tdome2"},/turf/open/floor/plasteel,/area/tdome/tdome2) -"qw" = (/obj/machinery/door/poddoor{id = "thunderdome";name = "Thunderdome Blast Door"},/turf/open/floor/plasteel,/area/tdome/arena) -"qx" = (/turf/open/floor/plasteel/red/side{dir = 8},/area/tdome/arena) -"qy" = (/turf/open/floor/plasteel/green/side{dir = 4},/area/tdome/arena) -"qz" = (/obj/effect/landmark{name = "tdome1"},/turf/open/floor/plasteel,/area/tdome/tdome1) -"qA" = (/obj/structure/rack,/obj/item/clothing/under/color/green,/obj/item/clothing/shoes/sneakers/brown,/obj/item/clothing/suit/armor/tdome/green,/obj/item/clothing/head/helmet/thunderdome,/obj/item/weapon/melee/baton/loaded,/obj/item/weapon/melee/energy/sword/saber/green,/turf/open/floor/plasteel/black,/area/tdome/arena) -"qB" = (/turf/closed/indestructible/fakeglass{color = "#008000";dir = 1;icon_state = "fakewindows"},/area/wizard_station) -"qC" = (/obj/structure/destructible/cult/tome,/turf/open/floor/engine/cult,/area/wizard_station) -"qD" = (/obj/structure/closet/crate{icon_state = "crateopen"; opened = 1},/obj/item/clothing/suit/wizrobe/red,/obj/item/clothing/head/wizard/red,/obj/item/weapon/staff,/obj/item/clothing/shoes/sandal/magic,/turf/open/floor/engine/cult,/area/wizard_station) -"qE" = (/turf/open/floor/grass,/area/wizard_station) -"qF" = (/obj/item/weapon/reagent_containers/food/snacks/meat/slab/corgi,/turf/open/floor/grass,/area/wizard_station) -"qG" = (/obj/structure/closet/syndicate/personal,/turf/open/floor/plasteel/darkwarning{dir = 1},/area/syndicate_mothership) -"qH" = (/obj/structure/table,/obj/item/weapon/gun/energy/ionrifle{pin = /obj/item/device/firing_pin},/turf/open/floor/plasteel/darkwarning{dir = 1},/area/syndicate_mothership) -"qI" = (/obj/machinery/recharger{pixel_y = 4},/obj/effect/landmark{name = "tdome2"},/turf/open/floor/plasteel,/area/tdome/tdome2) -"qJ" = (/obj/machinery/recharger{pixel_y = 4},/obj/effect/landmark{name = "tdome1"},/turf/open/floor/plasteel,/area/tdome/tdome1) -"qK" = (/turf/closed/indestructible/fakeglass{color = "#008000";dir = 1;icon_state = "fakewindows2"},/area/wizard_station) -"qL" = (/obj/structure/bookcase/random/reference,/turf/open/floor/engine/cult,/area/wizard_station) -"qM" = (/obj/structure/destructible/cult/talisman{desc = "A altar dedicated to the Wizard's Federation"},/obj/item/weapon/kitchen/knife/ritual,/turf/open/floor/engine/cult,/area/wizard_station) -"qN" = (/obj/item/clothing/shoes/sandal/marisa,/obj/item/clothing/suit/wizrobe/marisa,/obj/item/clothing/head/wizard/marisa,/obj/item/weapon/staff/broom,/turf/open/floor/engine/cult,/area/wizard_station) -"qO" = (/obj/effect/decal/cleanable/blood/splatter,/mob/living/simple_animal/hostile/creature{name = "Experiment 35b"},/turf/open/floor/grass,/area/wizard_station) -"qP" = (/obj/machinery/camera{pixel_x = 11;pixel_y = -9;network = list("thunder");c_tag = "Red Team"},/obj/effect/landmark{name = "tdome2"},/turf/open/floor/plasteel,/area/tdome/tdome2) -"qQ" = (/turf/open/floor/bluegrid,/area/tdome/arena) -"qR" = (/obj/machinery/flasher{id = "tdomeflash";name = "Thunderdome Flash"},/turf/open/floor/bluegrid,/area/tdome/arena) -"qS" = (/obj/machinery/camera{pixel_x = 12;pixel_y = -10;network = list("thunder");c_tag = "Green Team"},/obj/effect/landmark{name = "tdome1"},/turf/open/floor/plasteel,/area/tdome/tdome1) -"qT" = (/turf/closed/indestructible/fakeglass{color = "#008000"},/area/wizard_station) -"qU" = (/obj/effect/landmark/start{name = "wizard"},/turf/open/floor/engine/cult,/area/wizard_station) -"qV" = (/obj/effect/decal/remains/human,/obj/effect/decal/cleanable/blood/splatter,/turf/open/floor/grass,/area/wizard_station) -"qW" = (/obj/item/weapon/reagent_containers/food/snacks/meat/slab/human/mutant/slime,/turf/open/floor/grass,/area/wizard_station) -"qX" = (/obj/effect/decal/remains/xeno,/turf/open/floor/grass,/area/wizard_station) -"qY" = (/obj/machinery/camera{pixel_x = 10;network = list("thunder");c_tag = "Arena"},/turf/open/floor/bluegrid,/area/tdome/arena) -"qZ" = (/obj/structure/chair/wood/wings{icon_state = "wooden_chair_wings";dir = 1},/turf/open/floor/engine/cult,/area/wizard_station) -"ra" = (/mob/living/simple_animal/bot/medbot/mysterious{desc = "If you don't accidentally blow yourself up from time to time you're not really a wizard anyway.";faction = list("neutral","silicon","creature");name = "Nobody's Perfect"},/turf/open/floor/engine/cult,/area/wizard_station) -"rb" = (/obj/item/weapon/reagent_containers/food/snacks/meat/slab/xeno,/turf/open/floor/grass,/area/wizard_station) -"rc" = (/obj/machinery/door/airlock{icon = 'icons/obj/doors/airlocks/station/uranium.dmi';name = "Observation Deck"},/turf/open/floor/engine/cult,/area/wizard_station) -"rd" = (/obj/structure/statue/uranium/nuke,/turf/open/floor/plating/asteroid/snow/atmosphere,/area/syndicate_mothership) -"re" = (/obj/machinery/door/poddoor{id = "thunderdomehea";name = "Heavy Supply"},/turf/open/floor/plasteel/black,/area/tdome/arena) -"rf" = (/obj/structure/rack,/obj/item/clothing/under/color/red,/obj/item/clothing/shoes/sneakers/brown,/obj/item/clothing/suit/armor/vest,/obj/item/clothing/head/helmet/swat,/obj/item/weapon/gun/energy/laser,/turf/open/floor/plasteel/black,/area/tdome/arena) -"rg" = (/turf/closed/indestructible/fakeglass{icon_state = "fakewindows";dir = 8},/area/tdome/tdomeadmin) -"rh" = (/turf/closed/indestructible/fakeglass{icon_state = "fakewindows2";dir = 8},/area/tdome/tdomeadmin) -"ri" = (/turf/closed/indestructible/fakeglass{icon_state = "fakewindows";dir = 4},/area/tdome/tdomeadmin) -"rj" = (/obj/structure/rack,/obj/item/clothing/under/color/green,/obj/item/clothing/shoes/sneakers/brown,/obj/item/clothing/suit/armor/vest,/obj/item/clothing/head/helmet/swat,/obj/item/weapon/gun/energy/laser,/turf/open/floor/plasteel/black,/area/tdome/arena) -"rk" = (/turf/open/floor/plasteel/redyellow,/area/tdome/tdomeadmin) -"rl" = (/obj/structure/chair{dir = 1},/obj/effect/landmark{name = "tdomeadmin"},/turf/open/floor/plasteel/redyellow,/area/tdome/tdomeadmin) -"rm" = (/obj/structure/table,/obj/machinery/computer/security/telescreen{pixel_y = 0},/turf/open/floor/plasteel/redyellow,/area/tdome/tdomeadmin) -"rn" = (/obj/structure/chair/comfy/brown{dir = 1},/turf/open/floor/plasteel/redyellow,/area/tdome/tdomeadmin) -"ro" = (/obj/machinery/button/flasher{id = "tdomeflash";pixel_x = 0;pixel_y = 0},/obj/structure/table,/turf/open/floor/plasteel/redyellow,/area/tdome/tdomeadmin) -"rp" = (/obj/machinery/door/airlock{icon = 'icons/obj/doors/airlocks/station/uranium.dmi';name = "Storage"},/turf/open/floor/engine/cult,/area/wizard_station) -"rq" = (/obj/machinery/door/airlock{icon = 'icons/obj/doors/airlocks/station/uranium.dmi';name = "Personal Quarters"},/turf/open/floor/engine/cult,/area/wizard_station) -"rr" = (/obj/machinery/door/airlock{icon = 'icons/obj/doors/airlocks/station/uranium.dmi';name = "Bathroom"},/turf/open/floor/engine/cult,/area/wizard_station) -"rs" = (/turf/closed/indestructible/riveted,/area/tdome/tdomeadmin) -"rt" = (/obj/machinery/computer/security/telescreen{pixel_y = -32},/turf/open/floor/plasteel/redyellow,/area/tdome/tdomeadmin) -"ru" = (/turf/open/floor/plasteel,/area/tdome/tdomeadmin) -"rv" = (/obj/item/clothing/suit/wizrobe/black,/obj/item/clothing/head/wizard/black,/turf/open/floor/plasteel/bot,/area/wizard_station) -"rw" = (/turf/open/floor/plasteel/bot,/area/wizard_station) -"rx" = (/obj/item/cardboard_cutout,/turf/open/floor/plasteel/bot,/area/wizard_station) -"ry" = (/obj/structure/table/wood,/obj/effect/landmark{name = "Teleport-Scroll"},/obj/item/weapon/dice/d20,/obj/item/weapon/dice,/turf/open/floor/carpet,/area/wizard_station) -"rz" = (/obj/structure/punching_bag,/turf/open/floor/carpet,/area/wizard_station) -"rA" = (/obj/structure/urinal{pixel_y = 28},/turf/open/floor/plasteel/white,/area/wizard_station) -"rB" = (/turf/open/floor/plasteel/white,/area/wizard_station) -"rC" = (/obj/structure/mirror/magic{pixel_y = 28},/obj/structure/sink{pixel_y = 20},/turf/open/floor/plasteel/white,/area/wizard_station) -"rD" = (/turf/closed/indestructible/fakedoor{name = "Thunderdome Admin"},/area/tdome/tdomeadmin) -"rE" = (/obj/structure/table,/obj/machinery/button/door{id = "thunderdomehea";name = "Heavy Supply Control";pixel_y = 0;req_access_txt = "102"},/turf/open/floor/plasteel,/area/tdome/tdomeadmin) -"rF" = (/obj/structure/table,/obj/machinery/button/door{id = "thunderdome";name = "Main Blast Doors Control";pixel_y = 0;req_access_txt = "102"},/turf/open/floor/plasteel,/area/tdome/tdomeadmin) -"rG" = (/obj/structure/table,/obj/machinery/button/door{id = "thunderdomegen";name = "General Supply Control";pixel_y = 0;req_access_txt = "102"},/turf/open/floor/plasteel,/area/tdome/tdomeadmin) -"rH" = (/obj/item/weapon/cautery/alien,/turf/open/floor/plasteel/bot,/area/wizard_station) -"rI" = (/obj/item/weapon/coin/antagtoken,/turf/open/floor/plasteel/bot,/area/wizard_station) -"rJ" = (/obj/structure/bed,/obj/item/weapon/bedsheet/wiz,/turf/open/floor/carpet,/area/wizard_station) -"rK" = (/obj/item/weapon/soap/homemade,/turf/open/floor/plasteel/white,/area/wizard_station) -"rL" = (/obj/structure/closet/cardboard,/obj/item/weapon/banhammer,/turf/open/floor/plasteel/warning,/area/wizard_station) -"rM" = (/turf/open/floor/plasteel/warning,/area/wizard_station) -"rN" = (/obj/vehicle/scooter/skateboard{tag = "icon-skateboard (EAST)";icon_state = "skateboard";dir = 4},/turf/open/floor/plasteel/warning,/area/wizard_station) -"rO" = (/obj/structure/dresser,/obj/item/weapon/storage/backpack/satchel,/turf/open/floor/carpet,/area/wizard_station) -"rP" = (/obj/structure/table/wood,/obj/item/weapon/storage/bag/tray,/obj/item/weapon/reagent_containers/food/snacks/burger/spell,/turf/open/floor/carpet,/area/wizard_station) -"rQ" = (/obj/structure/bookcase/random/adult,/turf/open/floor/plasteel/white,/area/wizard_station) -"rR" = (/obj/structure/toilet{tag = "icon-toilet00 (NORTH)";icon_state = "toilet00";dir = 1},/turf/open/floor/plasteel/white,/area/wizard_station) -"rS" = (/obj/structure/table/wood/fancy,/obj/item/weapon/skub{pixel_y = 16},/turf/open/floor/plasteel/white,/area/wizard_station) -"rT" = (/obj/machinery/door/airlock{icon = 'icons/obj/doors/airlocks/station/uranium.dmi';name = "Engine Room"},/obj/structure/barricade/wooden,/turf/open/floor/engine/cult,/area/wizard_station) -"rU" = (/turf/closed/indestructible/riveted,/area/centcom/holding) -"rV" = (/obj/structure/table/wood,/turf/open/floor/engine/cult,/area/wizard_station) -"rW" = (/obj/structure/table/wood,/obj/item/weapon/gun/magic/wand{desc = "Used in emergencies to reignite magma engines.";max_charges = 0;name = "wand of emergency engine ignition"},/turf/open/floor/engine/cult,/area/wizard_station) -"rX" = (/obj/structure/table/wood,/obj/item/weapon/bikehorn/golden{pixel_x = -8;pixel_y = 8},/turf/open/floor/engine/cult,/area/wizard_station) -"rY" = (/obj/structure/table,/turf/open/floor/plasteel/freezer{dir = 2},/area/centcom/holding) -"rZ" = (/turf/open/floor/plasteel/freezer{dir = 2},/area/centcom/holding) -"sa" = (/obj/structure/closet/secure_closet/bar{req_access_txt = "25"},/turf/open/floor/plasteel/freezer{dir = 2},/area/centcom/holding) -"sb" = (/obj/structure/reagent_dispensers/beerkeg,/turf/open/floor/plasteel/freezer{dir = 2},/area/centcom/holding) -"sc" = (/obj/structure/table,/obj/item/weapon/storage/box/donkpockets{pixel_x = 3;pixel_y = 3},/obj/item/weapon/storage/box/donkpockets{pixel_x = 3;pixel_y = 3},/obj/item/weapon/storage/box/donkpockets{pixel_x = 3;pixel_y = 3},/obj/item/weapon/storage/box/donkpockets{pixel_x = 3;pixel_y = 3},/turf/open/floor/plasteel/freezer{dir = 2},/area/centcom/holding) -"sd" = (/obj/structure/rack,/obj/item/device/camera,/turf/open/floor/plasteel/cafeteria,/area/centcom/holding) -"se" = (/obj/structure/rack,/obj/item/toy/sword,/turf/open/floor/plasteel/cafeteria,/area/centcom/holding) -"sf" = (/obj/structure/rack,/obj/item/toy/gun,/turf/open/floor/plasteel/cafeteria,/area/centcom/holding) -"sg" = (/turf/open/floor/plasteel/cafeteria,/area/centcom/holding) -"sh" = (/turf/open/floor/plating/beach/sand,/area/centcom/holding) -"si" = (/obj/effect/overlay/palmtree_r,/obj/effect/overlay/coconut,/turf/open/floor/plating/beach/sand,/area/centcom/holding) -"sj" = (/obj/effect/overlay/palmtree_l,/turf/open/floor/plating/beach/sand,/area/centcom/holding) -"sk" = (/obj/structure/table,/obj/item/clothing/head/that,/turf/open/floor/plasteel/freezer{dir = 2},/area/centcom/holding) -"sl" = (/obj/structure/chair/stool{pixel_y = 8},/turf/open/floor/plasteel/cafeteria,/area/centcom/holding) -"sm" = (/obj/item/device/camera,/turf/open/floor/plating/beach/sand,/area/centcom/holding) -"sn" = (/obj/structure/destructible/cult/forge{desc = "A engine used in powering the wizards ship";name = "magma engine"},/turf/open/floor/engine/cult,/area/wizard_station) -"so" = (/obj/structure/table,/obj/item/ammo_box/foambox,/turf/open/floor/plasteel/freezer{dir = 2},/area/centcom/holding) -"sp" = (/obj/structure/table,/obj/item/weapon/reagent_containers/food/drinks/shaker,/turf/open/floor/plasteel/freezer{dir = 2},/area/centcom/holding) -"sq" = (/obj/structure/table,/obj/item/weapon/lighter,/turf/open/floor/plasteel/freezer{dir = 2},/area/centcom/holding) -"sr" = (/obj/structure/table,/obj/item/weapon/reagent_containers/food/drinks/soda_cans/cola,/turf/open/floor/plasteel/freezer{dir = 2},/area/centcom/holding) -"ss" = (/obj/structure/table,/obj/item/weapon/dice/d20,/turf/open/floor/plasteel/freezer{dir = 2},/area/centcom/holding) -"st" = (/obj/structure/chair/stool{pixel_y = 8},/obj/item/clothing/head/bandana{pixel_y = -10},/obj/item/clothing/glasses/sunglasses,/turf/open/floor/plating/beach/sand,/area/centcom/holding) -"su" = (/obj/structure/chair/stool{pixel_y = 8},/turf/open/floor/plating/beach/sand,/area/centcom/holding) -"sv" = (/obj/structure/window/reinforced{resistance_flags = 3;color = "#008000";dir = 1},/turf/open/floor/plating/lava,/area/wizard_station) -"sw" = (/obj/structure/rack,/obj/item/clothing/head/that,/obj/item/clothing/under/suit_jacket,/obj/item/clothing/tie/waistcoat,/turf/open/floor/plasteel/cafeteria,/area/centcom/holding) -"sx" = (/obj/item/toy/beach_ball,/turf/open/floor/plating/beach/sand,/area/centcom/holding) -"sy" = (/obj/structure/shuttle/engine/heater{resistance_flags = 3},/obj/structure/window/reinforced{resistance_flags = 3;color = "#008000";dir = 1},/turf/open/floor/plating/lava/airless,/area/wizard_station) -"sz" = (/obj/structure/rack,/obj/item/weapon/storage/crayons,/obj/item/weapon/gun/ballistic/automatic/toy/pistol,/turf/open/floor/plasteel/cafeteria,/area/centcom/holding) -"sA" = (/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plasteel/cafeteria,/area/centcom/holding) -"sB" = (/obj/structure/shuttle/engine/propulsion,/turf/open/space,/area/wizard_station) -"sC" = (/obj/structure/rack,/obj/item/weapon/storage/crayons,/obj/item/weapon/gun/ballistic/shotgun/toy/crossbow,/turf/open/floor/plasteel/cafeteria,/area/centcom/holding) -"sD" = (/turf/open/floor/plating/beach/coastline_b,/area/centcom/holding) -"sE" = (/obj/item/clothing/head/collectable/paper,/turf/open/floor/plating/beach/coastline_b,/area/centcom/holding) -"sF" = (/obj/structure/rack,/obj/item/clothing/shoes/laceup,/obj/item/clothing/under/suit_jacket/female{desc = "A black trouser suit for women. Very formal.";name = "black suit";pixel_x = 3;pixel_y = 1},/turf/open/floor/plasteel/cafeteria,/area/centcom/holding) -"sG" = (/obj/structure/table,/obj/item/weapon/gun/ballistic/automatic/toy/pistol,/turf/open/floor/plasteel/cafeteria,/area/centcom/holding) -"sH" = (/turf/open/floor/plating/beach/water,/area/centcom/holding) -"sI" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plasteel,/area/centcom/holding) -"sJ" = (/turf/open/floor/plasteel/delivery,/area/centcom/holding) -"sK" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/turf/open/floor/plasteel,/area/centcom/holding) -"sL" = (/obj/item/weapon/reagent_containers/food/snacks/egg/rainbow{desc = "I bet you think you're pretty clever... well you are.";name = "easter egg"},/turf/open/space,/area/space) -"sM" = (/obj/effect/landmark{name = "Holding Facility"},/turf/open/floor/engine,/area/centcom/holding) -"sN" = (/turf/closed/indestructible/abductor{icon_state = "alien20"},/area/abductor_ship) -"sO" = (/turf/closed/indestructible/abductor{icon_state = "alien21"},/area/abductor_ship) -"sP" = (/turf/closed/indestructible/abductor{icon_state = "alien22"},/area/abductor_ship) -"sQ" = (/turf/closed/indestructible/abductor{icon_state = "alien23"},/area/abductor_ship) -"sR" = (/turf/closed/indestructible/abductor{icon_state = "alien24"},/area/abductor_ship) -"sS" = (/turf/closed/indestructible/abductor{icon_state = "alien16"},/area/abductor_ship) -"sT" = (/turf/closed/indestructible/abductor{icon_state = "alien17"},/area/abductor_ship) -"sU" = (/obj/machinery/abductor/experiment{team = 1},/turf/open/floor/plating/abductor,/area/abductor_ship) -"sV" = (/obj/effect/landmark/abductor/console,/turf/open/floor/plating/abductor,/area/abductor_ship) -"sW" = (/obj/machinery/abductor/pad{team = 1},/turf/open/floor/plating/abductor,/area/abductor_ship) -"sX" = (/turf/closed/indestructible/abductor{icon_state = "alien18"},/area/abductor_ship) -"sY" = (/turf/closed/indestructible/abductor{icon_state = "alien19"},/area/abductor_ship) -"sZ" = (/obj/machinery/abductor/experiment{team = 4},/turf/open/floor/plating/abductor,/area/abductor_ship) -"ta" = (/obj/effect/landmark/abductor/console{team = 4},/turf/open/floor/plating/abductor,/area/abductor_ship) -"tb" = (/obj/machinery/abductor/pad{team = 4},/turf/open/floor/plating/abductor,/area/abductor_ship) -"tc" = (/turf/closed/indestructible/abductor{icon_state = "alien14"},/area/abductor_ship) -"td" = (/obj/machinery/computer/camera_advanced/abductor{team = 1},/turf/open/floor/plating/abductor,/area/abductor_ship) -"te" = (/turf/open/floor/plating/abductor,/area/abductor_ship) -"tf" = (/obj/structure/closet/abductor,/turf/open/floor/plating/abductor,/area/abductor_ship) -"tg" = (/turf/closed/indestructible/abductor{icon_state = "alien15"},/area/abductor_ship) -"th" = (/obj/machinery/computer/camera_advanced/abductor{team = 4},/turf/open/floor/plating/abductor,/area/abductor_ship) -"ti" = (/turf/closed/indestructible/abductor{icon_state = "alien12"},/area/abductor_ship) -"tj" = (/obj/item/weapon/retractor/alien,/obj/item/weapon/hemostat/alien,/obj/structure/table/abductor,/turf/open/floor/plating/abductor,/area/abductor_ship) -"tk" = (/obj/effect/landmark/abductor/scientist,/turf/open/floor/plating/abductor,/area/abductor_ship) -"tl" = (/obj/structure/table/optable/abductor,/turf/open/floor/plating/abductor,/area/abductor_ship) -"tm" = (/obj/effect/landmark/abductor/agent,/turf/open/floor/plating/abductor,/area/abductor_ship) -"tn" = (/obj/structure/table/abductor,/obj/item/weapon/storage/box/alienhandcuffs,/turf/open/floor/plating/abductor,/area/abductor_ship) -"to" = (/turf/closed/indestructible/abductor{icon_state = "alien13"},/area/abductor_ship) -"tp" = (/obj/effect/landmark/abductor/scientist{team = 4},/turf/open/floor/plating/abductor,/area/abductor_ship) -"tq" = (/obj/effect/landmark/abductor/agent{team = 4},/turf/open/floor/plating/abductor,/area/abductor_ship) -"tr" = (/turf/closed/indestructible/abductor{icon_state = "alien10"},/area/abductor_ship) -"ts" = (/obj/item/weapon/surgical_drapes,/obj/item/weapon/paper/abductor,/obj/item/weapon/scalpel/alien,/obj/structure/table/abductor,/obj/item/weapon/cautery/alien,/turf/open/floor/plating/abductor,/area/abductor_ship) -"tt" = (/turf/closed/indestructible/abductor{icon_state = "alien11"},/area/abductor_ship) -"tu" = (/turf/closed/indestructible/abductor{icon_state = "alien6"},/area/abductor_ship) -"tv" = (/turf/closed/indestructible/abductor{icon_state = "alien7"},/area/abductor_ship) -"tw" = (/obj/machinery/abductor/gland_dispenser,/turf/open/floor/plating/abductor,/area/abductor_ship) -"tx" = (/obj/structure/table/abductor,/obj/item/weapon/surgicaldrill/alien,/obj/item/weapon/circular_saw/alien,/turf/open/floor/plating/abductor,/area/abductor_ship) -"ty" = (/obj/structure/bed/abductor,/turf/open/floor/plating/abductor,/area/abductor_ship) -"tz" = (/turf/closed/indestructible/abductor{icon_state = "alien8"},/area/abductor_ship) -"tA" = (/turf/closed/indestructible/abductor{icon_state = "alien9"},/area/abductor_ship) -"tB" = (/turf/closed/indestructible/abductor,/area/abductor_ship) -"tC" = (/turf/closed/indestructible/abductor{icon_state = "alien2"},/area/abductor_ship) -"tD" = (/turf/closed/indestructible/abductor{icon_state = "alien3"},/area/abductor_ship) -"tE" = (/turf/closed/indestructible/abductor{icon_state = "alien4"},/area/abductor_ship) -"tF" = (/turf/closed/indestructible/abductor{icon_state = "alien5"},/area/abductor_ship) -"tG" = (/obj/machinery/abductor/experiment{team = 2},/turf/open/floor/plating/abductor,/area/abductor_ship) -"tH" = (/obj/effect/landmark/abductor/console{team = 2},/turf/open/floor/plating/abductor,/area/abductor_ship) -"tI" = (/obj/machinery/abductor/pad{team = 2},/turf/open/floor/plating/abductor,/area/abductor_ship) -"tJ" = (/obj/machinery/abductor/experiment{team = 3},/turf/open/floor/plating/abductor,/area/abductor_ship) -"tK" = (/obj/effect/landmark/abductor/console{team = 3},/turf/open/floor/plating/abductor,/area/abductor_ship) -"tL" = (/obj/machinery/abductor/pad{team = 3},/turf/open/floor/plating/abductor,/area/abductor_ship) -"tM" = (/obj/machinery/computer/camera_advanced/abductor{team = 2},/turf/open/floor/plating/abductor,/area/abductor_ship) -"tN" = (/obj/machinery/computer/camera_advanced/abductor{team = 3},/turf/open/floor/plating/abductor,/area/abductor_ship) -"tO" = (/obj/effect/landmark/abductor/scientist{team = 2},/turf/open/floor/plating/abductor,/area/abductor_ship) -"tP" = (/obj/effect/landmark/abductor/agent{team = 2},/turf/open/floor/plating/abductor,/area/abductor_ship) -"tQ" = (/obj/effect/landmark/abductor/scientist{team = 3},/turf/open/floor/plating/abductor,/area/abductor_ship) -"tR" = (/obj/effect/landmark/abductor/agent{team = 3},/turf/open/floor/plating/abductor,/area/abductor_ship) -"tS" = (/turf/closed/indestructible/riveted,/area/awaymission/errorroom) -"tT" = (/turf/closed/mineral/ash_rock,/area/awaymission/errorroom) -"tU" = (/obj/structure/speaking_tile,/turf/closed/mineral/ash_rock,/area/awaymission/errorroom) -"tV" = (/obj/item/rupee,/turf/open/floor/plating/ashplanet/wateryrock{initial_gas_mix = "o2=22;n2=82;TEMP=293.15";planetary_atmos = 0},/area/awaymission/errorroom) -"tW" = (/turf/open/floor/plating/ashplanet/wateryrock{initial_gas_mix = "o2=22;n2=82;TEMP=293.15";planetary_atmos = 0},/area/awaymission/errorroom) -"tX" = (/obj/effect/landmark/error,/turf/open/floor/plating/ashplanet/wateryrock{initial_gas_mix = "o2=22;n2=82;TEMP=293.15";planetary_atmos = 0},/area/awaymission/errorroom) -"tY" = (/obj/structure/signpost/salvation{icon = 'icons/obj/structures.dmi';icon_state = "ladder10";invisibility = 100},/turf/open/floor/plating/ashplanet/wateryrock{initial_gas_mix = "o2=22;n2=82;TEMP=293.15";planetary_atmos = 0},/area/awaymission/errorroom) -"tZ" = (/obj/structure/lattice,/turf/open/space,/area/space) -"ue" = (/obj/machinery/door/airlock/centcom{name = "Auxillary Dock";opacity = 1;req_access_txt = ""},/turf/open/floor/plating,/area/syndicate_mothership) -"ud" = (/turf/closed/indestructible/fakeglass{icon_state = "fakewindows";dir = 1},/area/syndicate_mothership) -"uc" = (/turf/open/floor/plating/warnplate{dir = 1},/area/syndicate_mothership) -"ub" = (/obj/machinery/door/poddoor/shuttledock{checkdir = 1;name = "syndicate blast door";turftype = /turf/open/floor/plating/asteroid/snow},/turf/open/floor/plating,/area/syndicate_mothership) -"ua" = (/obj/docking_port/stationary{area_type = /area/syndicate_mothership;dir = 1;dwidth = 25;height = 50;id = "emergency_syndicate";name = "Syndicate Auxillary Shuttle Dock";turf_type = /turf/open/floor/plating/asteroid/snow;width = 50},/turf/open/floor/plating/asteroid/snow/atmosphere,/area/syndicate_mothership) +"aa" = (/turf/open/space/transit,/area/space) +"ab" = (/turf/open/space,/area/space) +"ac" = (/turf/open/space/transit/horizontal,/area/space) +"ad" = (/turf/closed/indestructible/riveted,/area/space) +"ae" = (/obj/structure/window/reinforced,/turf/closed/indestructible/riveted,/area/space) +"af" = (/obj/structure/window/reinforced{dir = 4},/turf/closed/indestructible/riveted,/area/space) +"ag" = (/turf/open/floor/holofloor/snow/cold,/area/holodeck/rec_center/winterwonderland) +"ah" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/turf/closed/indestructible/riveted,/area/space) +"ai" = (/obj/structure/foamedmetal,/obj/structure/window{icon_state = "rwindow"; dir = 8},/turf/open/floor/holofloor/plating,/area/holodeck/rec_center/bunker) +"aj" = (/obj/structure/foamedmetal,/obj/structure/window{icon_state = "rwindow"; dir = 4},/turf/open/floor/holofloor/plating,/area/holodeck/rec_center/bunker) +"ak" = (/turf/open/floor/holofloor/plating,/area/holodeck/rec_center/bunker) +"al" = (/obj/structure/table,/obj/item/stack/medical/ointment{heal_burn = 10},/turf/open/floor/holofloor/plating,/area/holodeck/rec_center/bunker) +"am" = (/turf/open/floor/holofloor/carpet,/area/holodeck/rec_center/lounge) +"an" = (/obj/structure/chair/wood/normal{icon_state = "wooden_chair"; dir = 4},/turf/open/floor/holofloor/carpet,/area/holodeck/rec_center/lounge) +"ao" = (/obj/structure/table/wood/poker,/obj/effect/holodeck_effect/cards,/turf/open/floor/holofloor/carpet,/area/holodeck/rec_center/lounge) +"ap" = (/obj/structure/table/wood/poker,/obj/item/clothing/mask/cigarette/pipe,/turf/open/floor/holofloor/carpet,/area/holodeck/rec_center/lounge) +"aq" = (/obj/structure/chair/wood/normal{icon_state = "wooden_chair"; dir = 8},/turf/open/floor/holofloor/carpet,/area/holodeck/rec_center/lounge) +"ar" = (/turf/open/floor/holofloor/plating,/area/holodeck/rec_center/wildlife) +"as" = (/turf/open/floor/holofloor/plating,/area/holodeck/rec_center/offline) +"at" = (/turf/open/floor/holofloor/plating/burnmix,/area/holodeck/rec_center/burn) +"au" = (/turf/open/floor/holofloor{dir = 9; icon_state = "red"},/area/holodeck/rec_center/court) +"av" = (/turf/open/floor/holofloor{dir = 1; icon_state = "red"},/area/holodeck/rec_center/court) +"aw" = (/turf/open/floor/holofloor{dir = 5; icon_state = "red"},/area/holodeck/rec_center/court) +"ax" = (/obj/structure/window/reinforced{dir = 8},/turf/closed/indestructible/riveted,/area/space) +"ay" = (/obj/structure/flora/bush,/turf/open/floor/holofloor/snow/cold,/area/holodeck/rec_center/winterwonderland) +"az" = (/obj/structure/table,/obj/machinery/recharger,/turf/open/floor/holofloor/plating,/area/holodeck/rec_center/bunker) +"aA" = (/obj/structure/chair/wood/normal{icon_state = "wooden_chair"; dir = 1},/turf/open/floor/holofloor/carpet,/area/holodeck/rec_center/lounge) +"aB" = (/obj/effect/holodeck_effect/mobspawner,/turf/open/floor/holofloor/plating,/area/holodeck/rec_center/wildlife) +"aC" = (/obj/effect/holodeck_effect/sparks,/turf/open/floor/holofloor/plating/burnmix,/area/holodeck/rec_center/burn) +"aD" = (/turf/open/floor/holofloor{dir = 8; icon_state = "red"},/area/holodeck/rec_center/court) +"aE" = (/turf/open/floor/holofloor,/area/holodeck/rec_center/court) +"aF" = (/turf/open/floor/holofloor{dir = 4; icon_state = "red"},/area/holodeck/rec_center/court) +"aG" = (/obj/structure/flora/grass/brown,/turf/open/floor/holofloor/snow/cold,/area/holodeck/rec_center/winterwonderland) +"aH" = (/obj/structure/table,/obj/item/weapon/gun/energy/laser,/turf/open/floor/holofloor/plating,/area/holodeck/rec_center/bunker) +"aI" = (/obj/structure/window/reinforced/tinted{icon_state = "rwindow"; dir = 4},/turf/open/floor/holofloor{icon_state = "wood"; dir = 9},/area/holodeck/rec_center/lounge) +"aJ" = (/obj/item/device/instrument/violin,/obj/structure/table/wood,/turf/open/floor/holofloor/carpet,/area/holodeck/rec_center/lounge) +"aK" = (/obj/structure/chair/comfy/brown{buildstackamount = 0},/turf/open/floor/holofloor/carpet,/area/holodeck/rec_center/lounge) +"aL" = (/obj/structure/chair/wood/wings,/turf/open/floor/holofloor/snow/cold,/area/holodeck/rec_center/winterwonderland) +"aM" = (/obj/structure/flora/tree/pine,/turf/open/floor/holofloor/snow/cold,/area/holodeck/rec_center/winterwonderland) +"aN" = (/obj/structure/chair/wood,/turf/open/floor/holofloor/snow/cold,/area/holodeck/rec_center/winterwonderland) +"aO" = (/turf/open/floor/holofloor{dir = 8; icon_state = "green"},/area/holodeck/rec_center/court) +"aP" = (/turf/open/floor/holofloor{dir = 4; icon_state = "green"},/area/holodeck/rec_center/court) +"aQ" = (/obj/structure/table/wood,/obj/item/device/flashlight/lamp/green,/turf/open/floor/holofloor/carpet,/area/holodeck/rec_center/lounge) +"aR" = (/obj/structure/chair/comfy/brown{buildstackamount = 0; dir = 1},/turf/open/floor/holofloor/carpet,/area/holodeck/rec_center/lounge) +"aS" = (/obj/docking_port/stationary/transit{dheight = 0; dir = 2; dwidth = 11; height = 22; id = "whiteship_transit"; width = 35},/turf/open/space/transit/horizontal,/area/space) +"aT" = (/obj/structure/chair/wood/normal,/turf/open/floor/holofloor/carpet,/area/holodeck/rec_center/lounge) +"aU" = (/obj/docking_port/stationary/transit{dir = 4; dwidth = 1; height = 4; id = "pod3_transit"; turf_type = /turf/open/space/transit/horizontal; width = 3},/turf/open/space/transit/horizontal,/area/space) +"aV" = (/obj/structure/table,/obj/item/stack/medical/bruise_pack{heal_brute = 10},/turf/open/floor/holofloor/plating,/area/holodeck/rec_center/bunker) +"aW" = (/obj/structure/table/wood/poker,/turf/open/floor/holofloor/carpet,/area/holodeck/rec_center/lounge) +"aX" = (/turf/open/floor/holofloor{dir = 10; icon_state = "green"},/area/holodeck/rec_center/court) +"aY" = (/turf/open/floor/holofloor{dir = 2; icon_state = "green"},/area/holodeck/rec_center/court) +"aZ" = (/turf/open/floor/holofloor{dir = 6; icon_state = "green"},/area/holodeck/rec_center/court) +"ba" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/turf/closed/indestructible/riveted,/area/space) +"bb" = (/obj/effect/holodeck_effect/mobspawner/bee,/turf/open/floor/holofloor/asteroid,/area/holodeck/rec_center/anthophila) +"bc" = (/obj/effect/holodeck_effect/mobspawner/pet,/turf/open/floor/holofloor/grass,/area/holodeck/rec_center/pet_lounge) +"bd" = (/turf/open/floor/holofloor/grass,/area/holodeck/rec_center/pet_lounge) +"be" = (/obj/structure/table/glass,/obj/item/weapon/surgicaldrill,/turf/open/floor/holofloor{tag = "icon-white_warn (NORTHWEST)"; icon = 'icons/turf/floors/warning.dmi'; icon_state = "white_warn"; dir = 9},/area/holodeck/rec_center/medical) +"bf" = (/obj/structure/table/glass,/obj/item/weapon/hemostat,/turf/open/floor/holofloor{tag = "icon-white_warn (NORTH)"; icon = 'icons/turf/floors/warning.dmi'; icon_state = "white_warn"; dir = 1},/area/holodeck/rec_center/medical) +"bg" = (/obj/structure/table/glass,/obj/item/weapon/scalpel{pixel_y = 10},/obj/item/weapon/circular_saw,/turf/open/floor/holofloor{tag = "icon-white_warn (NORTH)"; icon = 'icons/turf/floors/warning.dmi'; icon_state = "white_warn"; dir = 1},/area/holodeck/rec_center/medical) +"bh" = (/obj/structure/table/glass,/obj/item/weapon/retractor,/turf/open/floor/holofloor{tag = "icon-white_warn (NORTH)"; icon = 'icons/turf/floors/warning.dmi'; icon_state = "white_warn"; dir = 1},/area/holodeck/rec_center/medical) +"bi" = (/obj/structure/table/glass,/obj/item/weapon/cautery,/turf/open/floor/holofloor{tag = "icon-white_warn (NORTHEAST)"; icon = 'icons/turf/floors/warning.dmi'; icon_state = "white_warn"; dir = 5},/area/holodeck/rec_center/medical) +"bj" = (/turf/open/floor/holofloor{dir = 9; icon_state = "red"},/area/holodeck/rec_center/basketball) +"bk" = (/obj/structure/holohoop,/turf/open/floor/holofloor{dir = 1; icon_state = "red"},/area/holodeck/rec_center/basketball) +"bl" = (/turf/open/floor/holofloor{dir = 5; icon_state = "red"},/area/holodeck/rec_center/basketball) +"bm" = (/turf/open/floor/holofloor/beach,/area/holodeck/rec_center/beach) +"bn" = (/obj/structure/table,/obj/machinery/readybutton,/turf/open/floor/holofloor{dir = 9; icon_state = "red"},/area/holodeck/rec_center/thunderdome) +"bo" = (/obj/structure/table,/obj/item/clothing/head/helmet/thunderdome,/obj/item/clothing/suit/armor/tdome/red,/obj/item/clothing/under/color/red,/obj/item/weapon/holo/esword/red,/turf/open/floor/holofloor{dir = 1; icon_state = "red"},/area/holodeck/rec_center/thunderdome) +"bp" = (/obj/structure/table,/turf/open/floor/holofloor{dir = 5; icon_state = "red"},/area/holodeck/rec_center/thunderdome) +"bq" = (/obj/machinery/readybutton,/turf/open/floor/holofloor{dir = 9; icon_state = "red"},/area/holodeck/rec_center/dodgeball) +"br" = (/turf/open/floor/holofloor{dir = 1; icon_state = "red"},/area/holodeck/rec_center/dodgeball) +"bs" = (/turf/open/floor/holofloor{dir = 5; icon_state = "red"},/area/holodeck/rec_center/dodgeball) +"bt" = (/obj/structure/table/glass,/obj/item/weapon/surgical_drapes,/obj/item/weapon/razor,/turf/open/floor/holofloor{tag = "icon-white_warn (WEST)"; icon = 'icons/turf/floors/warning.dmi'; icon_state = "white_warn"; dir = 8},/area/holodeck/rec_center/medical) +"bu" = (/turf/open/floor/holofloor{icon_state = "white"},/area/holodeck/rec_center/medical) +"bv" = (/turf/open/floor/holofloor{tag = "icon-white_warn (EAST)"; icon = 'icons/turf/floors/warning.dmi'; icon_state = "white_warn"; dir = 4},/area/holodeck/rec_center/medical) +"bw" = (/turf/open/floor/holofloor{dir = 8; icon_state = "red"},/area/holodeck/rec_center/basketball) +"bx" = (/turf/open/floor/holofloor,/area/holodeck/rec_center/basketball) +"by" = (/turf/open/floor/holofloor{dir = 4; icon_state = "red"},/area/holodeck/rec_center/basketball) +"bz" = (/obj/effect/overlay/palmtree_r,/turf/open/floor/holofloor/beach,/area/holodeck/rec_center/beach) +"bA" = (/obj/effect/overlay/palmtree_l,/obj/effect/overlay/coconut,/turf/open/floor/holofloor/beach,/area/holodeck/rec_center/beach) +"bB" = (/turf/open/floor/holofloor{dir = 8; icon_state = "red"},/area/holodeck/rec_center/thunderdome) +"bC" = (/turf/open/floor/holofloor,/area/holodeck/rec_center/thunderdome) +"bD" = (/turf/open/floor/holofloor{dir = 4; icon_state = "red"},/area/holodeck/rec_center/thunderdome) +"bE" = (/turf/open/floor/holofloor{dir = 8; icon_state = "red"},/area/holodeck/rec_center/dodgeball) +"bF" = (/turf/open/floor/holofloor,/area/holodeck/rec_center/dodgeball) +"bG" = (/turf/open/floor/holofloor{dir = 4; icon_state = "red"},/area/holodeck/rec_center/dodgeball) +"bH" = (/turf/open/floor/holofloor{tag = "icon-white_warn (SOUTHWEST)"; icon = 'icons/turf/floors/warning.dmi'; icon_state = "white_warn"; dir = 10},/area/holodeck/rec_center/medical) +"bI" = (/turf/open/floor/holofloor{icon = 'icons/turf/floors/warning.dmi'; icon_state = "white_warn"},/area/holodeck/rec_center/medical) +"bJ" = (/obj/structure/table/optable,/turf/open/floor/holofloor{icon = 'icons/turf/floors/warning.dmi'; icon_state = "white_warn"},/area/holodeck/rec_center/medical) +"bK" = (/obj/machinery/computer/operating,/turf/open/floor/holofloor{icon = 'icons/turf/floors/warning.dmi'; icon_state = "white_warn"},/area/holodeck/rec_center/medical) +"bL" = (/obj/structure/table/glass,/obj/item/clothing/gloves/color/latex/nitrile,/obj/item/clothing/suit/apron/surgical,/obj/item/clothing/mask/surgical,/turf/open/floor/holofloor{tag = "icon-white_warn (SOUTHEAST)"; icon = 'icons/turf/floors/warning.dmi'; icon_state = "white_warn"; dir = 6},/area/holodeck/rec_center/medical) +"bM" = (/turf/open/floor/holofloor{dir = 1; icon_state = "red"},/area/holodeck/rec_center/basketball) +"bN" = (/turf/open/floor/holofloor{dir = 2; icon_state = "red"},/area/holodeck/rec_center/dodgeball) +"bO" = (/obj/docking_port/stationary/transit{dir = 4; dwidth = 1; height = 4; id = "pod4_transit"; turf_type = /turf/open/space/transit/horizontal; width = 3},/turf/open/space/transit/horizontal,/area/space) +"bP" = (/obj/structure/window{dir = 1},/turf/open/floor/holofloor{icon_state = "white"},/area/holodeck/rec_center/medical) +"bQ" = (/obj/structure/table/glass,/obj/machinery/reagentgrinder,/turf/open/floor/holofloor{tag = "icon-white_warn (NORTHWEST)"; icon = 'icons/turf/floors/warning.dmi'; icon_state = "white_warn"; dir = 9},/area/holodeck/rec_center/medical) +"bR" = (/turf/open/floor/holofloor{tag = "icon-white_warn (NORTHEAST)"; icon = 'icons/turf/floors/warning.dmi'; icon_state = "white_warn"; dir = 5},/area/holodeck/rec_center/medical) +"bS" = (/obj/structure/table/glass,/obj/item/weapon/storage/box/beakers,/turf/open/floor/holofloor{icon_state = "white"},/area/holodeck/rec_center/medical) +"bT" = (/obj/machinery/washing_machine,/turf/open/floor/holofloor{icon_state = "white"},/area/holodeck/rec_center/medical) +"bU" = (/turf/open/floor/holofloor{dir = 10; icon_state = "red"},/area/holodeck/rec_center/basketball) +"bV" = (/turf/open/floor/holofloor{dir = 2; icon_state = "red"},/area/holodeck/rec_center/basketball) +"bW" = (/turf/open/floor/holofloor{dir = 6; icon_state = "red"},/area/holodeck/rec_center/basketball) +"bX" = (/obj/item/clothing/under/color/rainbow,/obj/item/clothing/glasses/sunglasses,/turf/open/floor/holofloor/beach,/area/holodeck/rec_center/beach) +"bY" = (/obj/structure/window,/turf/open/floor/holofloor{dir = 8; icon_state = "red"},/area/holodeck/rec_center/thunderdome) +"bZ" = (/obj/structure/window,/turf/open/floor/holofloor,/area/holodeck/rec_center/thunderdome) +"ca" = (/obj/structure/window,/turf/open/floor/holofloor{dir = 4; icon_state = "red"},/area/holodeck/rec_center/thunderdome) +"cb" = (/obj/structure/window{dir = 1},/obj/item/toy/beach_ball/holoball/dodgeball,/turf/open/floor/holofloor{dir = 10; icon_state = "red"},/area/holodeck/rec_center/dodgeball) +"cc" = (/obj/structure/window{dir = 1},/obj/item/toy/beach_ball/holoball/dodgeball,/turf/open/floor/holofloor{dir = 2; icon_state = "red"},/area/holodeck/rec_center/dodgeball) +"cd" = (/obj/structure/window{dir = 1},/obj/item/toy/beach_ball/holoball/dodgeball,/turf/open/floor/holofloor{dir = 6; icon_state = "red"},/area/holodeck/rec_center/dodgeball) +"ce" = (/obj/machinery/chem_master,/turf/open/floor/holofloor{tag = "icon-white_warn (SOUTHWEST)"; icon = 'icons/turf/floors/warning.dmi'; icon_state = "white_warn"; dir = 10},/area/holodeck/rec_center/medical) +"cf" = (/turf/open/floor/holofloor{tag = "icon-white_warn (SOUTHEAST)"; icon = 'icons/turf/floors/warning.dmi'; icon_state = "white_warn"; dir = 6},/area/holodeck/rec_center/medical) +"cg" = (/obj/structure/table/glass,/obj/item/weapon/storage/box/syringes,/turf/open/floor/holofloor{icon_state = "white"},/area/holodeck/rec_center/medical) +"ch" = (/obj/structure/closet/wardrobe/white,/turf/open/floor/holofloor{icon_state = "white"},/area/holodeck/rec_center/medical) +"ci" = (/turf/open/floor/holofloor{dir = 9; icon_state = "green"},/area/holodeck/rec_center/basketball) +"cj" = (/turf/open/floor/holofloor{dir = 1; icon_state = "green"},/area/holodeck/rec_center/basketball) +"ck" = (/turf/open/floor/holofloor{dir = 5; icon_state = "green"},/area/holodeck/rec_center/basketball) +"cl" = (/obj/item/toy/beach_ball,/turf/open/floor/holofloor/beach,/area/holodeck/rec_center/beach) +"cm" = (/obj/structure/window{dir = 1},/turf/open/floor/holofloor{dir = 8; icon_state = "green"},/area/holodeck/rec_center/thunderdome) +"cn" = (/obj/structure/window{dir = 1},/turf/open/floor/holofloor,/area/holodeck/rec_center/thunderdome) +"co" = (/obj/structure/window{dir = 1},/turf/open/floor/holofloor{dir = 4; icon_state = "green"},/area/holodeck/rec_center/thunderdome) +"cp" = (/obj/structure/window,/obj/item/toy/beach_ball/holoball/dodgeball,/turf/open/floor/holofloor{dir = 9; icon_state = "green"},/area/holodeck/rec_center/dodgeball) +"cq" = (/obj/structure/window,/obj/item/toy/beach_ball/holoball/dodgeball,/turf/open/floor/holofloor{dir = 1; icon_state = "green"},/area/holodeck/rec_center/dodgeball) +"cr" = (/obj/structure/window,/obj/item/toy/beach_ball/holoball/dodgeball,/turf/open/floor/holofloor{dir = 5; icon_state = "green"},/area/holodeck/rec_center/dodgeball) +"cs" = (/obj/docking_port/stationary/transit{dir = 4; dwidth = 9; height = 11; id = "emergency_transit"; width = 22},/turf/open/space/transit,/area/space) +"ct" = (/obj/structure/window,/turf/open/floor/holofloor{icon_state = "white"},/area/holodeck/rec_center/medical) +"cu" = (/turf/open/floor/holofloor{dir = 8; icon_state = "green"},/area/holodeck/rec_center/basketball) +"cv" = (/obj/item/toy/beach_ball/holoball,/turf/open/floor/holofloor,/area/holodeck/rec_center/basketball) +"cw" = (/turf/open/floor/holofloor{dir = 4; icon_state = "green"},/area/holodeck/rec_center/basketball) +"cx" = (/turf/open/floor/holofloor{dir = 8; icon_state = "green"},/area/holodeck/rec_center/thunderdome) +"cy" = (/turf/open/floor/holofloor{dir = 4; icon_state = "green"},/area/holodeck/rec_center/thunderdome) +"cz" = (/turf/open/floor/holofloor{dir = 8; icon_state = "green"},/area/holodeck/rec_center/dodgeball) +"cA" = (/turf/open/floor/holofloor{dir = 4; icon_state = "green"},/area/holodeck/rec_center/dodgeball) +"cB" = (/obj/structure/bed,/obj/item/weapon/bedsheet/medical,/turf/open/floor/holofloor{tag = "icon-white_warn (NORTHWEST)"; icon = 'icons/turf/floors/warning.dmi'; icon_state = "white_warn"; dir = 9},/area/holodeck/rec_center/medical) +"cC" = (/obj/structure/window{icon_state = "rwindow"; dir = 8},/obj/structure/bed,/obj/item/weapon/bedsheet/medical,/turf/open/floor/holofloor{tag = "icon-white_warn (NORTHEAST)"; icon = 'icons/turf/floors/warning.dmi'; icon_state = "white_warn"; dir = 5},/area/holodeck/rec_center/medical) +"cD" = (/obj/structure/window{icon_state = "rwindow"; dir = 8},/obj/structure/window,/obj/machinery/computer/pandemic,/turf/open/floor/holofloor{icon_state = "white"},/area/holodeck/rec_center/medical) +"cE" = (/turf/open/floor/holofloor{dir = 2; icon_state = "green"},/area/holodeck/rec_center/basketball) +"cF" = (/turf/open/floor/holofloor/beach/coast_t,/area/holodeck/rec_center/beach) +"cG" = (/turf/open/floor/holofloor{dir = 1; icon_state = "green"},/area/holodeck/rec_center/dodgeball) +"cH" = (/turf/open/floor/holofloor{tag = "icon-white_warn (WEST)"; icon = 'icons/turf/floors/warning.dmi'; icon_state = "white_warn"; dir = 8},/area/holodeck/rec_center/medical) +"cI" = (/obj/machinery/door/window/westleft,/turf/open/floor/holofloor{dir = 8; icon = 'icons/turf/floors/warning.dmi'; icon_state = "white_warn_corner"; tag = "icon-white_warn (WEST)"},/area/holodeck/rec_center/medical) +"cJ" = (/obj/machinery/door/window/westleft,/turf/open/floor/holofloor{tag = "icon-white_warn (NORTH)"; icon = 'icons/turf/floors/warning.dmi'; icon_state = "white_warn"; dir = 1},/area/holodeck/rec_center/medical) +"cK" = (/turf/open/floor/holofloor/beach/coast_b,/area/holodeck/rec_center/beach) +"cL" = (/obj/structure/bed,/obj/item/weapon/bedsheet/medical,/turf/open/floor/holofloor{tag = "icon-white_warn (SOUTHWEST)"; icon = 'icons/turf/floors/warning.dmi'; icon_state = "white_warn"; dir = 10},/area/holodeck/rec_center/medical) +"cM" = (/obj/structure/window{icon_state = "rwindow"; dir = 8},/obj/structure/bed,/obj/item/weapon/bedsheet/medical,/turf/open/floor/holofloor{icon = 'icons/turf/floors/warning.dmi'; icon_state = "white_warn"},/area/holodeck/rec_center/medical) +"cN" = (/obj/structure/window{icon_state = "rwindow"; dir = 8},/obj/machinery/sleeper{icon_state = "sleeper-open"; dir = 1},/turf/open/floor/holofloor{icon = 'icons/turf/floors/warning.dmi'; icon_state = "white_warn"},/area/holodeck/rec_center/medical) +"cO" = (/obj/machinery/sleeper{icon_state = "sleeper-open"; dir = 1},/obj/structure/window{icon_state = "rwindow"; dir = 8},/turf/open/floor/holofloor{tag = "icon-white_warn (SOUTHEAST)"; icon = 'icons/turf/floors/warning.dmi'; icon_state = "white_warn"; dir = 6},/area/holodeck/rec_center/medical) +"cP" = (/turf/open/floor/holofloor{dir = 10; icon_state = "green"},/area/holodeck/rec_center/basketball) +"cQ" = (/obj/structure/holohoop{dir = 1},/turf/open/floor/holofloor{dir = 2; icon_state = "green"},/area/holodeck/rec_center/basketball) +"cR" = (/turf/open/floor/holofloor{dir = 6; icon_state = "green"},/area/holodeck/rec_center/basketball) +"cS" = (/turf/open/floor/holofloor/beach/water,/area/holodeck/rec_center/beach) +"cT" = (/obj/structure/table,/turf/open/floor/holofloor{dir = 10; icon_state = "green"},/area/holodeck/rec_center/thunderdome) +"cU" = (/obj/structure/table,/obj/item/clothing/head/helmet/thunderdome,/obj/item/clothing/suit/armor/tdome/green,/obj/item/clothing/under/color/green,/obj/item/weapon/holo/esword/green,/turf/open/floor/holofloor{dir = 2; icon_state = "green"},/area/holodeck/rec_center/thunderdome) +"cV" = (/obj/structure/table,/obj/machinery/readybutton,/turf/open/floor/holofloor{dir = 6; icon_state = "green"},/area/holodeck/rec_center/thunderdome) +"cW" = (/turf/open/floor/holofloor{dir = 10; icon_state = "green"},/area/holodeck/rec_center/dodgeball) +"cX" = (/turf/open/floor/holofloor{dir = 2; icon_state = "green"},/area/holodeck/rec_center/dodgeball) +"cY" = (/obj/machinery/readybutton,/turf/open/floor/holofloor{dir = 6; icon_state = "green"},/area/holodeck/rec_center/dodgeball) +"cZ" = (/obj/structure/window/reinforced{dir = 1},/turf/closed/indestructible/riveted,/area/space) +"da" = (/turf/closed/indestructible/riveted,/area/tdome/arena_source) +"db" = (/obj/machinery/igniter,/turf/open/floor/plasteel,/area/tdome/arena_source) +"dc" = (/turf/open/floor/plasteel,/area/tdome/arena_source) +"dd" = (/obj/structure/rack,/obj/item/clothing/under/color/red,/obj/item/clothing/shoes/sneakers/brown,/obj/item/clothing/suit/armor/tdome/red,/obj/item/clothing/head/helmet/thunderdome,/obj/item/weapon/melee/baton/loaded,/obj/item/weapon/melee/energy/sword/saber/red,/turf/open/floor/plasteel/black,/area/tdome/arena_source) +"de" = (/obj/machinery/door/poddoor{id = "thunderdomegen"; name = "General Supply"},/turf/open/floor/plasteel/black,/area/tdome/arena_source) +"df" = (/obj/machinery/door/poddoor{id = "thunderdome"; name = "Thunderdome Blast Door"},/turf/open/floor/plasteel,/area/tdome/arena_source) +"dg" = (/turf/open/floor/plasteel/red/side{dir = 8},/area/tdome/arena_source) +"dh" = (/turf/open/floor/plasteel/green/side{dir = 4},/area/tdome/arena_source) +"di" = (/obj/structure/rack,/obj/item/clothing/under/color/green,/obj/item/clothing/shoes/sneakers/brown,/obj/item/clothing/suit/armor/tdome/green,/obj/item/clothing/head/helmet/thunderdome,/obj/item/weapon/melee/baton/loaded,/obj/item/weapon/melee/energy/sword/saber/green,/turf/open/floor/plasteel/black,/area/tdome/arena_source) +"dj" = (/turf/open/floor/bluegrid,/area/tdome/arena_source) +"dk" = (/obj/machinery/flasher{id = "tdomeflash"; name = "Thunderdome Flash"},/turf/open/floor/bluegrid,/area/tdome/arena_source) +"dl" = (/obj/docking_port/stationary/transit{dir = 8; dwidth = 2; height = 5; id = "laborcamp_transit"; width = 9},/turf/open/space/transit,/area/space) +"dm" = (/obj/machinery/door/poddoor{id = "thunderdomehea"; name = "Heavy Supply"},/turf/open/floor/plasteel/black,/area/tdome/arena_source) +"dn" = (/obj/structure/rack,/obj/item/clothing/under/color/red,/obj/item/clothing/shoes/sneakers/brown,/obj/item/clothing/suit/armor/vest,/obj/item/clothing/head/helmet/swat,/obj/item/weapon/gun/energy/laser,/turf/open/floor/plasteel/black,/area/tdome/arena_source) +"do" = (/obj/structure/rack,/obj/item/clothing/under/color/green,/obj/item/clothing/shoes/sneakers/brown,/obj/item/clothing/suit/armor/vest,/obj/item/clothing/head/helmet/swat,/obj/item/weapon/gun/energy/laser,/turf/open/floor/plasteel/black,/area/tdome/arena_source) +"dp" = (/obj/docking_port/stationary/transit{dheight = 9; dir = 2; dwidth = 5; height = 22; id = "syndicate_transit"; width = 18},/turf/open/space/transit,/area/space) +"dq" = (/obj/docking_port/stationary/transit{dir = 8; dwidth = 2; height = 12; id = "ferry_transit"; width = 5},/turf/open/space/transit/horizontal,/area/space) +"dr" = (/obj/docking_port/stationary/transit{dwidth = 1; height = 4; id = "pod1_transit"; width = 3},/turf/open/space/transit,/area/space) +"ds" = (/obj/docking_port/stationary/transit{dwidth = 1; height = 4; id = "pod2_transit"; width = 3},/turf/open/space/transit,/area/space) +"dt" = (/obj/docking_port/stationary/transit{dir = 8; dwidth = 5; height = 7; id = "supply_transit"; width = 12},/turf/open/space/transit,/area/space) +"du" = (/obj/docking_port/stationary/transit{dir = 8; dwidth = 3; height = 5; id = "mining_transit"; width = 7},/turf/open/space/transit,/area/space) +"dv" = (/obj/docking_port/stationary/transit{dwidth = 3; height = 7; id = "steel_rain_transit"; width = 7},/turf/open/space/transit/horizontal,/area/space) +"dw" = (/turf/closed/indestructible/riveted,/area/start) +"dx" = (/obj/effect/landmark/start,/turf/open/floor/plating,/area/start) +"dy" = (/turf/closed/indestructible/riveted,/area/ctf) +"dz" = (/turf/open/floor/plasteel/darkblue/side{tag = "icon-darkblue (NORTHWEST)"; dir = 9},/area/ctf) +"dA" = (/turf/open/floor/plasteel/darkblue/side{tag = "icon-darkblue (NORTH)"; dir = 1},/area/ctf) +"dB" = (/turf/open/floor/plasteel/darkblue/side{tag = "icon-darkblue (NORTHEAST)"; dir = 5},/area/ctf) +"dC" = (/turf/open/floor/plasteel/darkred/side{tag = "icon-darkred (NORTHWEST)"; dir = 9},/area/ctf) +"dD" = (/turf/open/floor/plasteel/darkred/side{tag = "icon-darkred (NORTH)"; dir = 1},/area/ctf) +"dE" = (/turf/open/floor/plasteel/darkred/side{tag = "icon-darkred (NORTHEAST)"; dir = 5},/area/ctf) +"dF" = (/turf/open/floor/plasteel/darkblue/side{tag = "icon-darkblue (WEST)"; dir = 8},/area/ctf) +"dG" = (/turf/open/floor/plasteel/black,/area/ctf) +"dH" = (/turf/open/floor/plasteel/darkblue/side{tag = "icon-darkblue (EAST)"; dir = 4},/area/ctf) +"dI" = (/turf/open/floor/plasteel/blue,/area/ctf) +"dJ" = (/turf/open/floor/plasteel/darkblue,/area/ctf) +"dK" = (/obj/structure/barricade/security/ctf,/turf/open/floor/plasteel/circuit,/area/ctf) +"dL" = (/obj/structure/table/reinforced,/turf/open/floor/plasteel/bluespace,/area/ctf) +"dM" = (/obj/structure/barricade/security/ctf,/turf/open/floor/plasteel/bluespace,/area/ctf) +"dN" = (/turf/open/floor/plasteel/bluespace,/area/ctf) +"dO" = (/turf/open/floor/plasteel/darkred/side{tag = "icon-darkred (WEST)"; dir = 8},/area/ctf) +"dP" = (/obj/structure/barricade/security/ctf,/turf/open/floor/plasteel/circuit/rcircuit,/area/ctf) +"dQ" = (/turf/open/floor/plasteel/darkred/side{tag = "icon-darkred (EAST)"; dir = 4},/area/ctf) +"dR" = (/turf/open/floor/plasteel/red,/area/ctf) +"dS" = (/obj/structure/kitchenspike,/turf/open/floor/plasteel/black,/area/ctf) +"dT" = (/obj/docking_port/stationary/transit{dir = 8; dwidth = 2; height = 8; id = "backup_transit"; width = 8},/turf/open/space/transit,/area/space) +"dU" = (/turf/closed/indestructible/splashscreen,/area/start) +"dV" = (/turf/open/floor/plasteel/darkblue/side{tag = "icon-darkblue (SOUTHWEST)"; dir = 10},/area/ctf) +"dW" = (/turf/open/floor/plasteel/darkblue/side,/area/ctf) +"dX" = (/turf/open/floor/plasteel/darkblue/side{tag = "icon-darkblue (SOUTHEAST)"; dir = 6},/area/ctf) +"dY" = (/turf/open/floor/plasteel/darkred/side{tag = "icon-darkred (SOUTHWEST)"; dir = 10},/area/ctf) +"dZ" = (/turf/open/floor/plasteel/darkred/side,/area/ctf) +"ea" = (/turf/open/floor/plasteel/darkred/side{tag = "icon-darkred (SOUTHEAST)"; dir = 6},/area/ctf) +"eb" = (/obj/structure/window/reinforced/fulltile{health = 1e+007; maxhealth = 1e+007; name = "hardened window"},/turf/open/floor/plating,/area/ctf) +"ec" = (/turf/open/floor/plasteel/black,/turf/open/floor/plasteel/warningline,/area/ctf) +"ed" = (/turf/open/floor/plasteel/darkblue/corner,/turf/open/floor/plasteel/warningline{tag = "icon-warningline (NORTH)"; dir = 1},/turf/open/floor/plasteel/warningline{tag = "icon-warningline (NORTHWEST)"; dir = 9},/area/ctf) +"ee" = (/turf/open/floor/plasteel/darkblue/corner{tag = "icon-darkbluecorners (WEST)"; dir = 8},/turf/open/floor/plasteel/warningline{tag = "icon-warningline (NORTH)"; dir = 1},/area/ctf) +"ef" = (/turf/open/floor/plasteel/black,/turf/open/floor/plasteel/warningline{tag = "icon-warningline (NORTH)"; dir = 1},/area/ctf) +"eg" = (/turf/open/floor/plasteel/darkblue/corner,/turf/open/floor/plasteel/warningline{tag = "icon-warningline (NORTH)"; dir = 1},/area/ctf) +"eh" = (/turf/open/floor/plasteel/black,/turf/open/floor/plasteel/warningline{tag = "icon-warningline (NORTH)"; dir = 1},/turf/open/floor/plasteel/warningline{tag = "icon-warningline (NORTHEAST)"; dir = 5},/area/ctf) +"ei" = (/obj/machinery/power/emitter/energycannon,/turf/open/floor/plating,/area/ctf) +"ej" = (/turf/open/floor/plasteel/black,/turf/open/floor/plasteel/warningline{tag = "icon-warningline (EAST)"; dir = 4},/area/ctf) +"ek" = (/turf/open/floor/plasteel/darkblue/corner{tag = "icon-darkbluecorners (EAST)"; dir = 4},/turf/open/floor/plasteel/warningline{tag = "icon-warningline (WEST)"; dir = 8},/area/ctf) +"el" = (/turf/open/floor/plasteel/darkblue/corner{tag = "icon-darkbluecorners (WEST)"; dir = 8},/area/ctf) +"em" = (/turf/open/floor/plasteel/darkblue/corner{tag = "icon-darkbluecorners (EAST)"; dir = 4},/area/ctf) +"en" = (/turf/open/floor/plating/warnplate{icon_plating = "warnplate"},/area/ctf) +"eo" = (/turf/open/floor/plasteel/black,/turf/open/floor/plasteel/warningline{tag = "icon-warningline (WEST)"; dir = 8},/area/ctf) +"ep" = (/turf/open/floor/plating/warnplate{dir = 8},/area/ctf) +"eq" = (/turf/open/floor/plating,/area/ctf) +"er" = (/turf/open/floor/plating/airless/warnplate{dir = 4; luminosity = 2},/area/ctf) +"es" = (/turf/open/floor/plasteel/darkblue/corner,/turf/open/floor/plasteel/warningline{tag = "icon-warningline (WEST)"; dir = 8},/area/ctf) +"et" = (/turf/open/floor/plasteel/darkblue/corner{tag = "icon-darkbluecorners (NORTH)"; dir = 1},/area/ctf) +"eu" = (/turf/open/floor/plasteel/darkblue/corner,/area/ctf) +"ev" = (/turf/open/floor/plating/warnplate{dir = 1},/area/ctf) +"ew" = (/turf/open/floor/plasteel/darkblue/corner{tag = "icon-darkbluecorners (EAST)"; dir = 4},/turf/open/floor/plasteel/warningline{tag = "icon-warningline (SOUTHWEST)"; dir = 10},/area/ctf) +"ex" = (/turf/open/floor/plasteel/darkblue/corner{tag = "icon-darkbluecorners (NORTH)"; dir = 1},/turf/open/floor/plasteel/warningline,/area/ctf) +"ey" = (/turf/open/floor/plasteel/darkblue/corner{tag = "icon-darkbluecorners (EAST)"; dir = 4},/turf/open/floor/plasteel/warningline,/area/ctf) +"ez" = (/turf/open/floor/plasteel/black,/turf/open/floor/plasteel/warningline{tag = "icon-warningline (SOUTHEAST)"; dir = 6},/area/ctf) +"eA" = (/obj/machinery/power/emitter/energycannon{tag = "icon-emitter (NORTH)"; icon_state = "emitter"; dir = 1},/turf/open/floor/plating,/area/ctf) +"eB" = (/obj/structure/divine/trap/ctf/blue,/turf/open/floor/plasteel/blue,/area/ctf) +"eC" = (/turf/open/floor/plasteel/circuit,/turf/open/floor/plasteel/warningline{tag = "icon-warningline (NORTHWEST)"; dir = 9},/area/ctf) +"eD" = (/turf/open/floor/plasteel/circuit,/turf/open/floor/plasteel/warningline{tag = "icon-warningline (NORTH)"; dir = 1},/area/ctf) +"eE" = (/turf/open/floor/plasteel/circuit,/turf/open/floor/plasteel/warningline{tag = "icon-warningline (NORTHEAST)"; dir = 5},/area/ctf) +"eF" = (/turf/open/floor/plasteel/darkred,/area/ctf) +"eG" = (/obj/structure/divine/trap/ctf/red,/turf/open/floor/plasteel/darkred,/area/ctf) +"eH" = (/turf/open/floor/plasteel/circuit,/turf/open/floor/plasteel/warningline{tag = "icon-warningline (WEST)"; dir = 8},/area/ctf) +"eI" = (/turf/open/floor/plasteel/circuit,/area/ctf) +"eJ" = (/turf/open/floor/plasteel/circuit,/turf/open/floor/plasteel/warningline{tag = "icon-warningline (EAST)"; dir = 4},/area/ctf) +"eK" = (/turf/open/floor/plasteel/circuit,/turf/open/floor/plasteel/warningline,/turf/open/floor/plasteel/warningline{tag = "icon-warningline (SOUTHWEST)"; dir = 10},/area/ctf) +"eL" = (/turf/open/floor/plasteel/circuit,/turf/open/floor/plasteel/warningline,/area/ctf) +"eM" = (/turf/open/floor/plasteel/circuit,/turf/open/floor/plasteel/warningline{tag = "icon-warningline (SOUTHEAST)"; dir = 6},/area/ctf) +"eN" = (/obj/structure/barricade/security/ctf,/turf/open/floor/plasteel/circuit/gcircuit/off,/area/ctf) +"eO" = (/obj/structure/divine/trap/ctf/red,/turf/open/floor/plasteel/red,/area/ctf) +"eP" = (/turf/open/floor/plasteel/darkblue/side{tag = "icon-darkblue (NORTHWEST)"; dir = 9},/turf/open/floor/plasteel/warningline{tag = "icon-warningline (NORTHWEST)"; dir = 9},/area/ctf) +"eQ" = (/turf/open/floor/plasteel/darkblue/side{tag = "icon-darkblue (NORTH)"; dir = 1},/turf/open/floor/plasteel/warningline{tag = "icon-warningline (NORTH)"; dir = 1},/area/ctf) +"eR" = (/turf/open/floor/plasteel/darkblue/side{tag = "icon-darkblue (NORTHEAST)"; dir = 5},/turf/open/floor/plasteel/warningline{tag = "icon-warningline (NORTH)"; dir = 1},/area/ctf) +"eS" = (/turf/open/floor/plasteel/circuit/gcircuit/off,/turf/open/floor/plasteel/warningline{tag = "icon-warningline (NORTH)"; dir = 1},/area/ctf) +"eT" = (/turf/open/floor/plasteel/darkred/side{tag = "icon-darkred (NORTHWEST)"; dir = 9},/turf/open/floor/plasteel/warningline{tag = "icon-warningline (NORTH)"; dir = 1},/area/ctf) +"eU" = (/turf/open/floor/plasteel/darkred/side{tag = "icon-darkred (NORTH)"; dir = 1},/turf/open/floor/plasteel/warningline{tag = "icon-warningline (NORTH)"; dir = 1},/area/ctf) +"eV" = (/turf/open/floor/plasteel/darkred/side{tag = "icon-darkred (NORTHEAST)"; dir = 5},/turf/open/floor/plasteel/warningline{tag = "icon-warningline (NORTHEAST)"; dir = 5},/area/ctf) +"eW" = (/turf/open/floor/plasteel/darkblue/side{tag = "icon-darkblue (WEST)"; dir = 8},/turf/open/floor/plasteel/warningline{tag = "icon-warningline (WEST)"; dir = 8},/area/ctf) +"eX" = (/turf/open/floor/plasteel/circuit/gcircuit/off,/area/ctf) +"eY" = (/turf/open/floor/plasteel/darkred/side{tag = "icon-darkred (EAST)"; dir = 4},/turf/open/floor/plasteel/warningline{tag = "icon-warningline (EAST)"; dir = 4},/area/ctf) +"eZ" = (/turf/open/floor/plasteel/circuit/rcircuit,/area/ctf) +"fa" = (/turf/open/floor/plasteel/circuit/gcircuit/animated,/area/ctf) +"fb" = (/obj/machinery/capture_the_flag/blue,/turf/open/floor/plasteel/circuit/gcircuit/animated,/area/ctf) +"fc" = (/obj/item/weapon/twohanded/required/ctf/blue,/turf/open/floor/plasteel/circuit/gcircuit/animated,/area/ctf) +"fd" = (/obj/item/weapon/twohanded/required/ctf/red,/turf/open/floor/plasteel/circuit/gcircuit/animated,/area/ctf) +"fe" = (/obj/machinery/capture_the_flag/red,/turf/open/floor/plasteel/circuit/gcircuit/animated,/area/ctf) +"ff" = (/obj/effect/landmark/shuttle_import,/turf/open/space,/area/space) +"fg" = (/turf/open/floor/plasteel/darkblue/side{tag = "icon-darkblue (SOUTHWEST)"; dir = 10},/turf/open/floor/plasteel/warningline{tag = "icon-warningline (SOUTHWEST)"; dir = 10},/area/ctf) +"fh" = (/turf/open/floor/plasteel/darkblue/side,/turf/open/floor/plasteel/warningline,/area/ctf) +"fi" = (/turf/open/floor/plasteel/darkblue/side{tag = "icon-darkblue (SOUTHEAST)"; dir = 6},/turf/open/floor/plasteel/warningline,/area/ctf) +"fj" = (/turf/open/floor/plasteel/circuit/gcircuit/off,/turf/open/floor/plasteel/warningline,/area/ctf) +"fk" = (/turf/open/floor/plasteel/darkred/side{tag = "icon-darkred (SOUTHWEST)"; dir = 10},/turf/open/floor/plasteel/warningline,/area/ctf) +"fl" = (/turf/open/floor/plasteel/darkred/side,/turf/open/floor/plasteel/warningline,/area/ctf) +"fm" = (/turf/open/floor/plasteel/darkred/side{tag = "icon-darkred (SOUTHEAST)"; dir = 6},/turf/open/floor/plasteel/warningline{tag = "icon-warningline (SOUTHEAST)"; dir = 6},/area/ctf) +"fn" = (/turf/closed/wall/shuttle{icon_state = "swall_s6"; dir = 2},/area/centcom/evac) +"fo" = (/obj/structure/shuttle/engine/propulsion{icon_state = "propulsion_r"; dir = 1},/turf/open/floor/plating/airless,/area/centcom/evac) +"fp" = (/obj/structure/shuttle/engine/propulsion{icon_state = "propulsion"; dir = 1},/turf/open/floor/plating/airless,/area/centcom/evac) +"fq" = (/obj/structure/shuttle/engine/propulsion{icon_state = "propulsion_l"; dir = 1},/turf/open/floor/plating/airless,/area/centcom/evac) +"fr" = (/turf/closed/wall/shuttle{icon_state = "swall_s10"; dir = 2},/area/centcom/evac) +"fs" = (/obj/docking_port/stationary{dir = 1; dwidth = 1; height = 4; id = "pod1_away"; name = "recovery ship"; width = 3},/turf/open/space,/area/space) +"ft" = (/obj/docking_port/stationary{dir = 1; dwidth = 1; height = 4; id = "pod2_away"; name = "recovery ship"; width = 3},/turf/open/space,/area/space) +"fu" = (/turf/open/floor/plasteel/circuit/rcircuit,/turf/open/floor/plasteel/warningline{tag = "icon-warningline (NORTHWEST)"; dir = 9},/area/ctf) +"fv" = (/turf/open/floor/plasteel/circuit/rcircuit,/turf/open/floor/plasteel/warningline{tag = "icon-warningline (NORTH)"; dir = 1},/area/ctf) +"fw" = (/turf/open/floor/plasteel/circuit/rcircuit,/turf/open/floor/plasteel/warningline{tag = "icon-warningline (NORTHEAST)"; dir = 5},/area/ctf) +"fx" = (/turf/closed/wall/shuttle{icon_state = "swall3"; dir = 2},/area/centcom/evac) +"fy" = (/obj/structure/window/reinforced,/obj/structure/shuttle/engine/heater{icon_state = "heater"; dir = 1},/turf/open/floor/plating/airless,/area/centcom/evac) +"fz" = (/turf/closed/wall/shuttle{icon_state = "swall7"; dir = 2},/area/centcom/evac) +"fA" = (/turf/closed/wall/shuttle{icon_state = "swall8"; dir = 2},/area/centcom/evac) +"fB" = (/obj/machinery/door/airlock/shuttle,/turf/open/floor/plating,/area/centcom/evac) +"fC" = (/turf/closed/wall/shuttle{icon_state = "swall0"; dir = 2},/area/centcom/evac) +"fD" = (/obj/structure/window/shuttle,/obj/structure/grille,/turf/open/floor/plating,/area/centcom/evac) +"fE" = (/turf/closed/wall/shuttle{icon_state = "swall4"; dir = 2},/area/centcom/evac) +"fF" = (/turf/closed/wall/shuttle{icon_state = "swall11"; dir = 2},/area/centcom/evac) +"fG" = (/turf/open/floor/plasteel/circuit/rcircuit,/turf/open/floor/plasteel/warningline{tag = "icon-warningline (WEST)"; dir = 8},/area/ctf) +"fH" = (/turf/open/floor/plasteel/circuit/rcircuit,/turf/open/floor/plasteel/warningline{tag = "icon-warningline (EAST)"; dir = 4},/area/ctf) +"fI" = (/turf/open/floor/plating,/area/centcom/evac) +"fJ" = (/turf/open/floor/plating,/turf/closed/wall/shuttle{icon_state = "swall_f6"; dir = 2},/area/centcom/evac) +"fK" = (/turf/open/floor/plasteel/shuttle,/turf/closed/wall/shuttle{icon_state = "swall_f9"; dir = 2},/area/centcom/evac) +"fL" = (/obj/structure/closet/emcloset,/turf/open/floor/plasteel/shuttle,/area/centcom/evac) +"fM" = (/turf/open/floor/plasteel/shuttle/yellow,/area/centcom/evac) +"fN" = (/obj/structure/table,/obj/item/weapon/storage/firstaid/toxin{pixel_x = -2; pixel_y = 4},/obj/item/weapon/storage/firstaid/toxin,/turf/open/floor/plasteel/shuttle,/area/centcom/evac) +"fO" = (/obj/structure/table,/obj/item/weapon/storage/firstaid/fire,/obj/item/weapon/storage/firstaid/fire{pixel_x = -2; pixel_y = 4},/turf/open/floor/plasteel/shuttle,/area/centcom/evac) +"fP" = (/obj/structure/table,/obj/item/weapon/storage/firstaid/regular{pixel_x = 2; pixel_y = 0},/obj/item/weapon/storage/firstaid/regular{pixel_x = -2; pixel_y = 4},/turf/open/floor/plasteel/shuttle,/area/centcom/evac) +"fQ" = (/turf/open/floor/plasteel/shuttle,/turf/closed/wall/shuttle{icon_state = "swall_f5"; dir = 2},/area/centcom/evac) +"fR" = (/turf/open/floor/plating,/turf/closed/wall/shuttle{dir = 2; icon_state = "swall_f10"; layer = 2},/area/centcom/evac) +"fS" = (/turf/open/floor/plasteel/circuit/rcircuit,/turf/open/floor/plasteel/warningline{tag = "icon-warningline (SOUTHWEST)"; dir = 10},/area/ctf) +"fT" = (/turf/open/floor/plasteel/circuit/rcircuit,/turf/open/floor/plasteel/warningline,/area/ctf) +"fU" = (/turf/open/floor/plasteel/circuit/rcircuit,/turf/open/floor/plasteel/warningline{tag = "icon-warningline (SOUTHEAST)"; dir = 6},/area/ctf) +"fV" = (/turf/closed/wall/shuttle{icon_state = "swall1"; dir = 2},/area/centcom/evac) +"fW" = (/turf/open/floor/plasteel/shuttle,/area/centcom/evac) +"fX" = (/turf/open/floor/plasteel/black,/turf/open/floor/plasteel/warningline{tag = "icon-warningline (WEST)"; dir = 8},/turf/open/floor/plasteel/warningline{tag = "icon-warningline (NORTH)"; dir = 1},/area/ctf) +"fY" = (/turf/open/floor/plasteel/darkred/corner,/turf/open/floor/plasteel/warningline{tag = "icon-warningline (NORTH)"; dir = 1},/area/ctf) +"fZ" = (/turf/open/floor/plasteel/darkred/corner{tag = "icon-darkredcorners (WEST)"; dir = 8},/turf/open/floor/plasteel/warningline{tag = "icon-warningline (NORTH)"; dir = 1},/area/ctf) +"ga" = (/turf/open/floor/plasteel/darkred/corner{tag = "icon-darkredcorners (WEST)"; dir = 8},/turf/open/floor/plasteel/warningline{tag = "icon-warningline (NORTHEAST)"; dir = 5},/area/ctf) +"gb" = (/turf/closed/wall/shuttle{icon_state = "swall_s5"; dir = 2},/area/centcom/evac) +"gc" = (/turf/closed/wall/shuttle{icon_state = "swall_s9"; dir = 2},/area/centcom/evac) +"gd" = (/turf/open/floor/plasteel/darkred/corner,/area/ctf) +"ge" = (/turf/open/floor/plasteel/darkred/corner{tag = "icon-darkredcorners (NORTH)"; dir = 1},/area/ctf) +"gf" = (/turf/open/floor/plasteel/darkred/corner{tag = "icon-darkredcorners (NORTH)"; dir = 1},/turf/open/floor/plasteel/warningline{tag = "icon-warningline (EAST)"; dir = 4},/area/ctf) +"gg" = (/turf/closed/wall/shuttle{icon_state = "swall12"; dir = 2},/area/centcom/evac) +"gh" = (/turf/closed/wall/shuttle{icon_state = "swallc1"; dir = 2},/area/centcom/evac) +"gi" = (/obj/structure/table/reinforced,/obj/item/weapon/paper_bin,/turf/open/floor/plasteel/shuttle/red,/area/centcom/evac) +"gj" = (/obj/structure/table/reinforced,/obj/item/weapon/storage/fancy/donut_box,/turf/open/floor/plasteel/shuttle/red,/area/centcom/evac) +"gk" = (/obj/structure/table/reinforced,/obj/item/weapon/pen,/turf/open/floor/plasteel/shuttle/red,/area/centcom/evac) +"gl" = (/obj/structure/table/reinforced,/turf/open/floor/plasteel/shuttle/red,/area/centcom/evac) +"gm" = (/obj/machinery/sleeper{icon_state = "sleeper-open"; dir = 8},/turf/open/floor/plasteel/shuttle,/area/centcom/evac) +"gn" = (/obj/structure/chair{dir = 8},/turf/open/floor/plasteel/shuttle,/area/centcom/evac) +"go" = (/turf/closed/wall/shuttle{icon_state = "swallc2"; dir = 2},/area/centcom/evac) +"gp" = (/turf/open/floor/plating/warnplate{dir = 4; luminosity = 2; initial_gas_mix = "o2=0.01;n2=0.01"},/area/ctf) +"gq" = (/obj/machinery/computer/secure_data,/turf/open/floor/plasteel/shuttle/red,/area/centcom/evac) +"gr" = (/obj/structure/chair{dir = 1},/turf/open/floor/plasteel/shuttle/red,/area/centcom/evac) +"gs" = (/obj/structure/chair{dir = 4},/turf/open/floor/plasteel/shuttle/red,/area/centcom/evac) +"gt" = (/obj/structure/table/reinforced,/obj/item/weapon/clipboard,/obj/item/weapon/stamp,/turf/open/floor/plasteel/shuttle/red,/area/centcom/evac) +"gu" = (/turf/open/floor/plasteel/darkred/corner{tag = "icon-darkredcorners (EAST)"; dir = 4},/area/ctf) +"gv" = (/turf/open/floor/plasteel/darkred/corner{tag = "icon-darkredcorners (WEST)"; dir = 8},/area/ctf) +"gw" = (/turf/open/floor/plasteel/darkred/corner{tag = "icon-darkredcorners (WEST)"; dir = 8},/turf/open/floor/plasteel/warningline{tag = "icon-warningline (EAST)"; dir = 4},/area/ctf) +"gx" = (/obj/structure/table,/obj/item/weapon/gun/projectile/shotgun/automatic/dual_tube,/turf/open/floor/plasteel/shuttle/red,/area/centcom/evac) +"gy" = (/turf/open/floor/plasteel/shuttle/red,/area/centcom/evac) +"gz" = (/obj/structure/chair{dir = 4},/turf/open/floor/plasteel/shuttle,/area/centcom/evac) +"gA" = (/turf/open/floor/plasteel/black,/turf/open/floor/plasteel/warningline{tag = "icon-warningline (SOUTHWEST)"; dir = 10},/area/ctf) +"gB" = (/turf/open/floor/plasteel/darkred/corner{tag = "icon-darkredcorners (EAST)"; dir = 4},/turf/open/floor/plasteel/warningline,/area/ctf) +"gC" = (/turf/open/floor/plasteel/darkred/corner{tag = "icon-darkredcorners (NORTH)"; dir = 1},/turf/open/floor/plasteel/warningline,/area/ctf) +"gD" = (/turf/open/floor/plasteel/darkred/corner{tag = "icon-darkredcorners (NORTH)"; dir = 1},/turf/open/floor/plasteel/warningline{tag = "icon-warningline (SOUTHEAST)"; dir = 6},/area/ctf) +"gE" = (/obj/structure/table,/obj/item/weapon/storage/box/handcuffs,/obj/item/device/assembly/flash/handheld,/turf/open/floor/plasteel/shuttle/red,/area/centcom/evac) +"gF" = (/obj/machinery/door/window/northright{base_state = "right"; dir = 4; icon_state = "right"; name = "Security Desk"; req_access_txt = "103"},/turf/open/floor/plasteel/shuttle/red,/area/centcom/evac) +"gG" = (/obj/docking_port/stationary{dir = 4; dwidth = 1; height = 4; id = "pod3_away"; name = "recovery ship"; width = 3},/turf/open/space,/area/space) +"gH" = (/obj/structure/bed,/turf/open/floor/plasteel/shuttle,/area/centcom/evac) +"gI" = (/obj/structure/grille,/obj/structure/window/shuttle,/turf/open/floor/plating,/area/centcom/evac) +"gJ" = (/obj/machinery/door/airlock/shuttle,/turf/open/floor/plasteel/shuttle/yellow,/area/centcom/evac) +"gK" = (/obj/docking_port/stationary{dir = 4; dwidth = 1; height = 4; id = "pod4_away"; name = "recovery ship"; width = 3},/turf/open/space,/area/space) +"gL" = (/turf/closed/wall/shuttle{icon_state = "swall2"; dir = 2},/area/centcom/evac) +"gM" = (/obj/structure/table,/obj/structure/bedsheetbin,/turf/open/floor/plasteel/shuttle,/area/centcom/evac) +"gN" = (/obj/structure/table,/obj/item/weapon/hand_labeler,/turf/open/floor/plasteel/shuttle,/area/centcom/evac) +"gO" = (/obj/structure/table,/obj/item/weapon/storage/box/donkpockets,/turf/open/floor/plasteel/shuttle,/area/centcom/evac) +"gP" = (/turf/closed/wall/shuttle{icon_state = "swall14"; dir = 2},/area/centcom/evac) +"gQ" = (/turf/closed/wall/shuttle{icon_state = "swallc4"; dir = 2},/area/centcom/evac) +"gR" = (/obj/machinery/door/airlock/shuttle{name = "Cockpit"; req_access_txt = "109"},/turf/open/floor/plasteel/shuttle/yellow,/area/centcom/evac) +"gS" = (/obj/structure/table,/obj/item/device/radio/off,/turf/open/floor/plasteel/shuttle,/area/centcom/evac) +"gT" = (/obj/structure/chair{dir = 4; name = "Prosecution"},/turf/open/floor/plasteel/shuttle,/area/centcom/evac) +"gU" = (/obj/structure/filingcabinet,/turf/open/floor/plasteel/shuttle,/area/centcom/evac) +"gV" = (/obj/structure/chair,/turf/open/floor/plasteel/shuttle,/area/centcom/evac) +"gW" = (/turf/closed/wall/shuttle/smooth,/area/shuttle/escape) +"gX" = (/obj/machinery/status_display,/turf/closed/wall/shuttle/smooth,/area/shuttle/escape) +"gY" = (/obj/structure/table,/obj/item/weapon/storage/lockbox,/turf/open/floor/plasteel/shuttle,/area/centcom/evac) +"gZ" = (/obj/structure/table,/turf/open/floor/plasteel/shuttle,/area/centcom/evac) +"ha" = (/obj/machinery/computer/shuttle,/turf/open/floor/plasteel/shuttle,/area/centcom/evac) +"hb" = (/obj/structure/table,/obj/item/weapon/clipboard,/obj/item/weapon/pen,/turf/open/floor/plasteel/shuttle,/area/centcom/evac) +"hc" = (/obj/structure/table,/obj/item/weapon/paper_bin,/turf/open/floor/plasteel/shuttle,/area/centcom/evac) +"hd" = (/turf/closed/indestructible/riveted,/area/centcom/ferry) +"he" = (/turf/open/floor/plasteel/shuttle/white,/area/shuttle/escape) +"hf" = (/turf/open/floor/plasteel/shuttle/red,/area/shuttle/escape) +"hg" = (/turf/open/floor/plasteel/black,/area/centcom/ferry) +"hh" = (/turf/open/floor/plasteel/darkwarning{tag = "icon-warndark (EAST)"; dir = 4},/area/centcom/ferry) +"hi" = (/turf/open/floor/plasteel/delivery,/area/centcom/ferry) +"hj" = (/obj/machinery/door/airlock/external{name = "Backup Emergency Escape Shuttle"},/turf/open/floor/plasteel/delivery,/area/centcom/ferry) +"hk" = (/obj/machinery/door/airlock/shuttle,/obj/docking_port/stationary{dir = 4; dwidth = 3; height = 8; id = "backup_away"; name = "Backup Shuttle Dock"; width = 8},/obj/docking_port/mobile/emergency/backup{dwidth = 3},/turf/open/floor/plating,/area/shuttle/escape) +"hl" = (/obj/structure/chair/office/light{dir = 4},/turf/open/floor/plasteel/shuttle/white,/area/shuttle/escape) +"hm" = (/obj/structure/table/wood,/obj/item/weapon/paper{info = "Due to circumstances beyond our control, your Emergency Evacuation Shuttle is out of service.

We apologise for the inconvinience this may cause you.

Please enjoy the use of this complementary book.

Sincerely,
Centcom Operations Demolitions Examination Retribution Bugfixing Underlining Services"},/turf/open/floor/plasteel/shuttle/white,/area/shuttle/escape) +"hn" = (/obj/structure/table/wood,/obj/item/weapon/book/manual/random,/turf/open/floor/plasteel/shuttle/white,/area/shuttle/escape) +"ho" = (/turf/closed/indestructible/fakedoor,/area/centcom/ferry) +"hp" = (/obj/machinery/door/airlock/centcom{name = "Centcom Backup Docks"; opacity = 1; req_access_txt = "101"},/turf/open/floor/plasteel/black,/area/centcom/ferry) +"hq" = (/obj/machinery/vending/coffee,/turf/open/floor/plasteel/black,/area/centcom/ferry) +"hr" = (/obj/machinery/vending/cigarette{products = list(/obj/item/weapon/storage/fancy/cigarettes/cigpack_syndicate = 7, /obj/item/weapon/storage/fancy/cigarettes/cigpack_uplift = 3, /obj/item/weapon/storage/fancy/cigarettes/cigpack_robust = 2, /obj/item/weapon/storage/fancy/cigarettes/cigpack_carp = 3, /obj/item/weapon/storage/fancy/cigarettes/cigpack_midori = 1, /obj/item/weapon/storage/box/matches = 10, /obj/item/weapon/lighter/greyscale = 4, /obj/item/weapon/storage/fancy/rollingpapers = 5)},/turf/open/floor/plasteel/black,/area/centcom/ferry) +"hs" = (/obj/structure/reagent_dispensers/water_cooler,/turf/open/floor/plasteel/black,/area/centcom/ferry) +"ht" = (/obj/machinery/status_display{density = 0; pixel_y = 32; supply_display = 1},/turf/open/floor/plasteel/black,/area/centcom/ferry) +"hu" = (/obj/item/weapon/twohanded/required/kirbyplants,/obj/machinery/status_display{pixel_y = 32},/turf/open/floor/plasteel/black,/area/centcom/ferry) +"hv" = (/obj/structure/chair/office/dark,/obj/effect/landmark{name = "Emergencyresponseteam"},/turf/open/floor/plasteel/black,/area/centcom/ferry) +"hw" = (/obj/structure/table/reinforced,/turf/open/floor/vault,/area/centcom/ferry) +"hx" = (/obj/structure/chair/office/dark{dir = 8},/obj/effect/landmark{name = "Emergencyresponseteam"},/turf/open/floor/plasteel/black,/area/centcom/ferry) +"hy" = (/obj/structure/chair/office/dark{dir = 4},/obj/effect/landmark{name = "Emergencyresponseteam"},/turf/open/floor/plasteel/black,/area/centcom/ferry) +"hz" = (/obj/machinery/shuttle_manipulator,/turf/open/floor/plasteel/circuit,/area/centcom/ferry) +"hA" = (/turf/open/floor/plasteel/circuit,/area/centcom/ferry) +"hB" = (/obj/structure/extinguisher_cabinet{pixel_x = 28},/turf/open/floor/plasteel/black,/area/centcom/ferry) +"hC" = (/obj/structure/closet/secure_closet/ertCom,/turf/open/floor/plasteel/freezer{dir = 2},/area/centcom/ferry) +"hD" = (/obj/structure/chair/office/dark,/turf/open/floor/plasteel/freezer{dir = 2},/area/centcom/ferry) +"hE" = (/obj/structure/table/reinforced,/obj/item/weapon/c4,/obj/item/weapon/c4{pixel_x = 7},/turf/open/floor/plasteel/freezer{dir = 2},/area/centcom/ferry) +"hF" = (/obj/structure/table/reinforced,/obj/item/weapon/storage/box/syringes,/obj/item/weapon/gun/syringe/rapidsyringe,/obj/structure/extinguisher_cabinet{pixel_y = 28},/turf/open/floor/plasteel/freezer{dir = 2},/area/centcom/ferry) +"hG" = (/obj/structure/closet/secure_closet/ertEngi,/turf/open/floor/plasteel/freezer{dir = 2},/area/centcom/ferry) +"hH" = (/obj/structure/table/wood,/obj/item/weapon/reagent_containers/food/drinks/bottle/rum,/obj/item/weapon/reagent_containers/food/drinks/bottle/tequila,/obj/item/weapon/reagent_containers/food/drinks/bottle/vodka{pixel_x = -5},/obj/item/weapon/reagent_containers/food/drinks/bottle/whiskey{pixel_x = 5},/turf/open/floor/plasteel/black,/area/centcom/ferry) +"hI" = (/turf/open/floor/plasteel/freezer{dir = 2},/area/centcom/ferry) +"hJ" = (/obj/machinery/door/poddoor/ert,/turf/open/floor/plasteel/freezer{dir = 2},/area/centcom/ferry) +"hK" = (/obj/structure/chair/office/dark{dir = 1},/obj/effect/landmark{name = "Emergencyresponseteam"},/turf/open/floor/plasteel/black,/area/centcom/ferry) +"hL" = (/obj/structure/table/wood,/obj/item/weapon/storage/box/drinkingglasses,/turf/open/floor/plasteel/black,/area/centcom/ferry) +"hM" = (/turf/closed/indestructible/riveted,/area/centcom/prison) +"hN" = (/turf/open/floor/plasteel/darkgreen/side{dir = 4},/area/centcom/ferry) +"hO" = (/obj/machinery/door/poddoor/shutters/preopen{id = "adminshut"; name = "Administrative Shutters"},/turf/closed/indestructible/fakeglass{icon_state = "fakewindows2"; dir = 6},/area/centcom/ferry) +"hP" = (/turf/open/floor/wood,/area/centcom/ferry) +"hQ" = (/obj/effect/landmark{name = "prisonwarp"},/turf/open/floor/plasteel,/area/centcom/prison) +"hR" = (/obj/structure/closet/secure_closet/ertSec,/turf/open/floor/plasteel/freezer{dir = 2},/area/centcom/ferry) +"hS" = (/obj/structure/table/reinforced,/obj/item/weapon/storage/box/emps,/obj/item/weapon/gun/energy/ionrifle{pin = /obj/item/device/firing_pin},/turf/open/floor/plasteel/freezer{dir = 2},/area/centcom/ferry) +"hT" = (/obj/structure/table/reinforced,/obj/item/weapon/storage/box/syringes,/obj/item/weapon/gun/syringe/rapidsyringe,/turf/open/floor/plasteel/freezer{dir = 2},/area/centcom/ferry) +"hU" = (/obj/structure/closet/secure_closet/ertMed,/turf/open/floor/plasteel/freezer{dir = 2},/area/centcom/ferry) +"hV" = (/obj/structure/table/reinforced,/obj/item/clothing/mask/gas,/obj/item/clothing/mask/gas,/obj/item/clothing/mask/gas,/obj/item/clothing/mask/gas,/obj/item/clothing/mask/gas,/obj/item/clothing/mask/gas,/obj/item/clothing/mask/gas,/turf/open/floor/vault,/area/centcom/ferry) +"hW" = (/obj/structure/table/reinforced,/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 5},/obj/item/weapon/pen/blue,/turf/open/floor/vault,/area/centcom/ferry) +"hX" = (/obj/machinery/door/airlock/centcom{name = "Administrative Office"; opacity = 1; req_access_txt = "109"},/turf/open/floor/wood,/area/centcom/ferry) +"hY" = (/obj/structure/chair/office/dark,/turf/open/floor/wood,/area/centcom/ferry) +"hZ" = (/turf/closed/indestructible/fakeglass{icon_state = "fakewindows"; dir = 8},/area/centcom/ferry) +"ia" = (/turf/closed/indestructible/fakeglass{icon_state = "fakewindows2"; dir = 8},/area/centcom/ferry) +"ib" = (/turf/closed/indestructible/fakeglass{icon_state = "fakewindows"; dir = 4},/area/centcom/ferry) +"ic" = (/obj/machinery/door/airlock/centcom{name = "briefing room"; opacity = 1; req_access_txt = "101"},/turf/open/floor/plasteel/black,/area/centcom/ferry) +"id" = (/obj/structure/table/wood,/obj/item/weapon/paper_bin,/turf/open/floor/carpet,/area/centcom/ferry) +"ie" = (/obj/structure/table/wood,/obj/item/weapon/pen,/turf/open/floor/carpet,/area/centcom/ferry) +"if" = (/turf/open/floor/carpet,/area/centcom/ferry) +"ig" = (/turf/closed/indestructible/fakeglass{icon_state = "fakewindows"; dir = 1},/area/centcom/ferry) +"ih" = (/obj/machinery/door/poddoor/shutters/preopen{id = "adminshut"; name = "Administrative Shutters"},/turf/closed/indestructible/fakeglass{icon_state = "fakewindows"; dir = 1},/area/centcom/ferry) +"ii" = (/obj/machinery/button/door{id = "adminshut"; name = "Administrative Shutter-Control"; pixel_y = 26},/turf/open/floor/carpet,/area/centcom/ferry) +"ij" = (/obj/structure/chair/comfy/black{dir = 1},/turf/open/floor/carpet,/area/centcom/ferry) +"ik" = (/turf/closed/indestructible/fakeglass{icon_state = "fakewindows"; dir = 9},/area/centcom/ferry) +"il" = (/turf/closed/indestructible/fakeglass{icon_state = "fakewindows"; dir = 6},/area/centcom/ferry) +"im" = (/obj/machinery/door/poddoor/shutters/preopen{id = "adminshut"; name = "Administrative Shutters"},/turf/closed/indestructible/fakeglass,/area/centcom/ferry) +"in" = (/obj/structure/showcase/fakesec,/turf/open/floor/carpet,/area/centcom/ferry) +"io" = (/obj/structure/filingcabinet,/turf/open/floor/carpet,/area/centcom/ferry) +"ip" = (/obj/structure/reagent_dispensers/water_cooler,/turf/open/floor/carpet,/area/centcom/ferry) +"iq" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 0},/turf/closed/indestructible/fakeglass{icon_state = "fakewindows"; dir = 8},/area/centcom/ferry) +"ir" = (/obj/machinery/computer/shuttle/ferry,/turf/open/floor/plasteel/darkwarning{dir = 8},/area/centcom/ferry) +"is" = (/turf/closed/indestructible/riveted,/area/centcom/evac) +"it" = (/obj/docking_port/stationary{dir = 8; dwidth = 2; height = 12; id = "ferry_away"; name = "unknown"; width = 5},/turf/open/space,/area/space) +"iu" = (/obj/machinery/door/airlock/external{name = "Ferry Airlock"; req_access_txt = "0"},/turf/open/floor/plasteel/delivery,/area/centcom/ferry) +"iv" = (/turf/open/floor/plasteel/darkwarning{dir = 8},/area/centcom/ferry) +"iw" = (/turf/open/floor/plasteel/darkgreen/corner{dir = 4},/area/centcom/ferry) +"ix" = (/obj/structure/mirror{pixel_y = 32},/obj/structure/dresser,/turf/open/floor/wood,/area/centcom/ferry) +"iy" = (/obj/machinery/vending/autodrobe,/turf/open/floor/wood,/area/centcom/ferry) +"iz" = (/turf/open/floor/plasteel/darkred/side{dir = 9},/area/centcom/evac) +"iA" = (/turf/open/floor/plasteel/darkred/side{dir = 1},/area/centcom/evac) +"iB" = (/obj/structure/table,/obj/item/weapon/storage/box/handcuffs,/turf/open/floor/plasteel/darkred/side{dir = 5},/area/centcom/evac) +"iC" = (/turf/closed/indestructible/fakeglass{icon_state = "fakewindows"; dir = 5},/area/centcom/ferry) +"iD" = (/obj/machinery/door/airlock/centcom{name = "Dressing Room"; opacity = 1; req_access_txt = "0"},/turf/open/floor/wood,/area/centcom/ferry) +"iE" = (/obj/machinery/vending/clothing,/turf/open/floor/wood,/area/centcom/ferry) +"iF" = (/turf/closed/indestructible/fakedoor{name = "Centcom Security"},/area/centcom/evac) +"iG" = (/turf/open/floor/plasteel/black,/area/centcom/evac) +"iH" = (/turf/closed/indestructible/fakeglass{icon_state = "fakewindows"; dir = 10},/area/centcom/ferry) +"iI" = (/turf/open/floor/plasteel/darkgreen/corner,/area/centcom/ferry) +"iJ" = (/obj/structure/table/wood,/obj/item/weapon/paper_bin{pixel_y = 4},/obj/item/weapon/pen,/turf/open/floor/wood,/area/centcom/ferry) +"iK" = (/obj/structure/table/reinforced,/obj/item/weapon/clipboard,/turf/open/floor/plasteel/darkred/side{dir = 8},/area/centcom/evac) +"iL" = (/obj/structure/chair/office/dark,/turf/open/floor/plasteel/black,/area/centcom/evac) +"iM" = (/obj/structure/showcase/fakesec,/turf/open/floor/plasteel/black,/area/centcom/evac) +"iN" = (/turf/closed/indestructible/fakeglass,/area/centcom/ferry) +"iO" = (/obj/structure/chair/comfy/black{dir = 4},/turf/open/floor/wood,/area/centcom/ferry) +"iP" = (/obj/structure/table/wood,/turf/open/floor/wood,/area/centcom/ferry) +"iQ" = (/obj/machinery/door/window/northleft{dir = 2; name = "Centcom Security"; req_access_txt = "101"},/turf/open/floor/plasteel/black,/area/centcom/evac) +"iR" = (/obj/structure/table/reinforced,/turf/open/floor/plasteel/darkred/side{dir = 10},/area/centcom/evac) +"iS" = (/obj/structure/table/reinforced,/obj/item/weapon/pen,/turf/open/floor/plasteel/darkred/side{dir = 2},/area/centcom/evac) +"iT" = (/obj/structure/table/reinforced,/obj/item/weapon/paper_bin,/turf/open/floor/plasteel/darkred/side{dir = 2},/area/centcom/evac) +"iU" = (/obj/machinery/door/airlock/centcom{name = "Transport Shuttle"; opacity = 1; req_access_txt = "101"},/turf/open/floor/plasteel/darkgreen/side{dir = 2},/area/centcom/ferry) +"iV" = (/turf/closed/indestructible/riveted,/area/centcom/control) +"iW" = (/obj/structure/flora/ausbushes/brflowers,/turf/open/floor/grass,/area/centcom/control) +"iX" = (/obj/structure/flora/ausbushes/palebush,/turf/open/floor/grass,/area/centcom/control) +"iY" = (/turf/closed/indestructible/fakeglass{icon_state = "fakewindows"; dir = 1},/area/centcom/control) +"iZ" = (/turf/open/floor/plasteel/green/side{dir = 1},/area/centcom/control) +"ja" = (/turf/closed/indestructible/fakeglass{icon_state = "fakewindows"; dir = 9},/area/centcom/evac) +"jb" = (/turf/closed/indestructible/fakeglass{icon_state = "fakewindows2"; dir = 8},/area/centcom/evac) +"jc" = (/turf/closed/indestructible/fakeglass{icon_state = "fakewindows"; dir = 4},/area/centcom/evac) +"jd" = (/obj/machinery/door/airlock/centcom{name = "Centcom Security"; opacity = 1; req_access_txt = "0"},/turf/open/floor/plasteel/black,/area/centcom/evac) +"je" = (/turf/closed/indestructible/fakeglass{icon_state = "fakewindows2"; dir = 6},/area/centcom/evac) +"jf" = (/turf/closed/indestructible/fakeglass,/area/centcom/control) +"jg" = (/turf/open/floor/plasteel,/area/centcom/control) +"jh" = (/obj/item/weapon/twohanded/required/kirbyplants,/turf/open/floor/plasteel/red/side{dir = 9},/area/centcom/evac) +"ji" = (/obj/structure/chair,/turf/open/floor/plasteel/red/side{dir = 1},/area/centcom/evac) +"jj" = (/turf/open/floor/plasteel/red/side{dir = 1},/area/centcom/evac) +"jk" = (/obj/structure/rack,/obj/item/weapon/gun/projectile/shotgun/toy/crossbow,/obj/item/toy/foamblade,/turf/open/floor/plasteel/red/side{dir = 1},/area/centcom/evac) +"jl" = (/obj/structure/rack,/obj/item/weapon/storage/crayons,/obj/item/toy/sword,/turf/open/floor/plasteel/red/side{dir = 1},/area/centcom/evac) +"jm" = (/turf/closed/indestructible/fakeglass,/area/centcom/evac) +"jn" = (/turf/open/floor/plasteel/yellowsiding{dir = 8},/area/centcom/evac) +"jo" = (/turf/open/floor/plasteel,/area/centcom/evac) +"jp" = (/turf/open/floor/plasteel/warning{dir = 4},/area/centcom/evac) +"jq" = (/obj/machinery/door/poddoor/shuttledock{name = "blast doorend"},/turf/open/floor/engine,/area/centcom/evac) +"jr" = (/turf/closed/indestructible/fakeglass{icon_state = "fakewindows2"; dir = 6},/area/centcom/control) +"js" = (/obj/structure/chair{dir = 4},/turf/open/floor/plasteel/red/side{dir = 8},/area/centcom/evac) +"jt" = (/obj/structure/chair/office/dark,/turf/open/floor/plasteel,/area/centcom/evac) +"ju" = (/obj/structure/table/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/item/weapon/gun/energy/gun/mini,/turf/open/floor/plasteel/red/side{dir = 4},/area/centcom/evac) +"jv" = (/obj/machinery/door/poddoor/shuttledock,/turf/open/floor/engine,/area/centcom/evac) +"jw" = (/turf/open/floor/grass,/area/centcom/control) +"jx" = (/obj/structure/chair{dir = 4},/turf/open/floor/plasteel/green/side{dir = 8},/area/centcom/control) +"jy" = (/turf/open/floor/plasteel/warning{dir = 4},/area/centcom/control) +"jz" = (/obj/machinery/door/airlock/centcom{name = "Centcom Customs"; opacity = 1; req_access_txt = "109"},/turf/open/floor/plasteel/black,/area/centcom/control) +"jA" = (/turf/open/floor/plasteel/black,/area/centcom/control) +"jB" = (/obj/structure/table,/turf/open/floor/plasteel/black,/area/centcom/control) +"jC" = (/obj/structure/table/reinforced,/obj/item/weapon/paper_bin,/turf/open/floor/plasteel/red/side{dir = 2},/area/centcom/evac) +"jD" = (/obj/structure/table/reinforced,/obj/item/weapon/pen,/turf/open/floor/plasteel/red/side{dir = 2},/area/centcom/evac) +"jE" = (/obj/structure/table/reinforced,/obj/item/toy/carpplushie,/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plasteel/red/side{dir = 6},/area/centcom/evac) +"jF" = (/turf/closed/indestructible/riveted,/area/centcom/supply) +"jG" = (/turf/closed/indestructible/fakeglass{icon_state = "fakewindows2"; dir = 1},/area/centcom/control) +"jH" = (/turf/open/floor/plasteel/green/corner,/area/centcom/control) +"jI" = (/obj/structure/table,/obj/item/weapon/paper_bin,/obj/item/weapon/pen,/turf/open/floor/plasteel/black,/area/centcom/control) +"jJ" = (/turf/open/floor/plasteel/yellowsiding{dir = 1},/area/centcom/evac) +"jK" = (/turf/open/floor/plasteel/yellowsiding/corner{dir = 1},/area/centcom/evac) +"jL" = (/obj/docking_port/stationary{dir = 4; dwidth = 25; height = 50; id = "emergency_away"; name = "Centcom Emergency Shuttle Dock"; width = 50},/turf/open/space,/area/space) +"jM" = (/turf/closed/indestructible/rock/snow,/area/syndicate_mothership) +"jN" = (/obj/structure/closet,/turf/open/floor/plasteel/warning/corner{dir = 1},/area/centcom/supply) +"jO" = (/obj/structure/closet/wardrobe/cargotech,/turf/open/floor/plasteel/loadingarea,/area/centcom/supply) +"jP" = (/obj/structure/closet/secure_closet/quartermaster,/turf/open/floor/plasteel/loadingarea,/area/centcom/supply) +"jQ" = (/obj/structure/closet,/turf/open/floor/plasteel,/area/centcom/supply) +"jR" = (/turf/open/floor/plasteel/green/side{dir = 4},/area/centcom/control) +"jS" = (/obj/machinery/button/door{desc = "A remote control switch for port-side blast doors."; icon_state = "doorctrl0"; id = "CentComPort"; name = "Security Doors"; pixel_y = 28; req_access_txt = "101"},/obj/structure/showcase/fakeid,/turf/open/floor/plasteel/black,/area/centcom/control) +"jT" = (/obj/structure/chair/office/dark{dir = 8},/turf/open/floor/plasteel/black,/area/centcom/control) +"jU" = (/obj/structure/table,/obj/item/weapon/stamp{pixel_x = -3; pixel_y = 3},/obj/item/weapon/stamp/denied{pixel_x = 4; pixel_y = -2},/obj/item/weapon/paper/centcom,/turf/open/floor/plasteel/black,/area/centcom/control) +"jV" = (/turf/open/floor/plasteel/red/corner{dir = 1},/area/centcom/evac) +"jW" = (/turf/open/floor/plating/asteroid/snow,/area/syndicate_mothership) +"jX" = (/obj/structure/flora/grass/brown,/turf/open/floor/plating/asteroid/snow,/area/syndicate_mothership) +"jY" = (/obj/structure/flora/tree/pine,/turf/open/floor/plating/asteroid/snow,/area/syndicate_mothership) +"jZ" = (/obj/structure/flora/grass/both,/turf/open/floor/plating/asteroid/snow,/area/syndicate_mothership) +"ka" = (/obj/item/weapon/disk/data,/turf/open/floor/plating/asteroid/snow,/area/syndicate_mothership) +"kb" = (/turf/closed/indestructible/fakeglass{icon_state = "fakewindows2"; dir = 6},/area/centcom/supply) +"kc" = (/turf/open/floor/plasteel/warning{dir = 8},/area/centcom/supply) +"kd" = (/turf/open/floor/plasteel,/area/centcom/supply) +"ke" = (/turf/open/floor/plasteel/green/corner{dir = 1},/area/centcom/control) +"kf" = (/turf/open/floor/plasteel/green/corner{dir = 4},/area/centcom/control) +"kg" = (/obj/structure/table/reinforced,/obj/machinery/door/window/brigdoor{base_state = "rightsecure"; dir = 1; icon_state = "rightsecure"; name = "Centcom Customs"; req_access_txt = "109"},/turf/open/floor/plasteel/black,/area/centcom/control) +"kh" = (/turf/open/floor/plasteel/warning/corner{dir = 1},/area/centcom/evac) +"ki" = (/obj/item/toy/figure/syndie,/turf/open/floor/plating/asteroid/snow,/area/syndicate_mothership) +"kj" = (/obj/machinery/door/airlock/external{name = "Supply Shuttle"; req_access_txt = "106"},/turf/open/floor/plasteel/delivery,/area/centcom/supply) +"kk" = (/obj/machinery/door/airlock/centcom{name = "Centcom Supply"; req_access_txt = "106"},/turf/open/floor/plasteel/brown{dir = 4},/area/centcom/supply) +"kl" = (/turf/open/floor/plasteel/brown{dir = 8},/area/centcom/control) +"km" = (/obj/machinery/door/airlock/centcom{name = "Centcom Docks"; opacity = 1; req_access_txt = "101"},/turf/open/floor/plasteel/black,/area/centcom/control) +"kn" = (/obj/machinery/door/poddoor/preopen{id = "CentComPort"; name = "security door"},/turf/open/floor/plasteel/loadingarea{dir = 8},/area/centcom/control) +"ko" = (/turf/open/floor/plasteel/warning{dir = 8},/area/centcom/evac) +"kp" = (/obj/structure/flora/bush,/turf/open/floor/plating/asteroid/snow,/area/syndicate_mothership) +"kq" = (/obj/machinery/computer/cargo,/turf/open/floor/plasteel/warning{dir = 8},/area/centcom/supply) +"kr" = (/turf/open/floor/plasteel/green/corner{dir = 8},/area/centcom/control) +"ks" = (/turf/open/floor/plasteel/warning/corner{dir = 4},/area/centcom/evac) +"kt" = (/obj/docking_port/stationary{dir = 8; dwidth = 5; height = 7; id = "supply_away"; name = "Centcom"; width = 12},/turf/open/space,/area/space) +"ku" = (/obj/structure/chair{dir = 8},/turf/open/floor/plasteel/green/side{dir = 4},/area/centcom/control) +"kv" = (/turf/open/floor/plasteel/green/corner{dir = 8},/area/centcom/evac) +"kw" = (/turf/closed/indestructible/fakeglass{icon_state = "fakewindows"; dir = 1},/area/centcom/supply) +"kx" = (/obj/structure/chair{dir = 4},/turf/open/floor/plasteel/green/side{dir = 8},/area/centcom/evac) +"ky" = (/turf/open/floor/plasteel/yellowsiding,/area/centcom/evac) +"kz" = (/turf/open/floor/plasteel/yellowsiding/corner{dir = 8},/area/centcom/evac) +"kA" = (/turf/closed/indestructible/fakeglass{icon_state = "fakewindows2"; dir = 1},/area/centcom/supply) +"kB" = (/obj/structure/chair{dir = 4},/turf/open/floor/plasteel/green/side{dir = 10},/area/centcom/control) +"kC" = (/obj/structure/chair{dir = 8},/turf/open/floor/plasteel/green/side{dir = 6},/area/centcom/control) +"kD" = (/obj/structure/table/reinforced,/obj/item/weapon/paper_bin,/turf/open/floor/plasteel/green/side{dir = 1},/area/centcom/evac) +"kE" = (/obj/structure/table/reinforced,/obj/item/weapon/pen,/turf/open/floor/plasteel/green/side{dir = 1},/area/centcom/evac) +"kF" = (/obj/structure/table/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/item/weapon/gun/medbeam,/turf/open/floor/plasteel/green/side{dir = 5},/area/centcom/evac) +"kG" = (/obj/machinery/door/poddoor/shuttledock{name = "blast door3"},/turf/open/floor/engine,/area/centcom/evac) +"kH" = (/turf/open/floor/plating/asteroid/snow,/area/space) +"kI" = (/turf/closed/indestructible/fakeglass,/area/centcom/supply) +"kJ" = (/turf/closed/indestructible/riveted,/area/tdome/tdomeobserve) +"kK" = (/turf/closed/indestructible/fakeglass{icon_state = "fakewindows"; dir = 8},/area/tdome/tdomeobserve) +"kL" = (/turf/closed/indestructible/fakeglass{icon_state = "fakewindows"; dir = 4},/area/tdome/tdomeobserve) +"kM" = (/obj/machinery/door/airlock/centcom{name = "Thunderdome"; opacity = 1; req_access_txt = "101"},/turf/open/floor/plasteel,/area/tdome/tdomeobserve) +"kN" = (/obj/structure/chair/office/dark{dir = 1},/turf/open/floor/plasteel,/area/centcom/evac) +"kO" = (/obj/structure/table/reinforced,/obj/item/toy/talking/AI,/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plasteel/green/side{dir = 4},/area/centcom/evac) +"kP" = (/obj/machinery/door/poddoor/shuttledock{name = "blast door2"},/turf/open/floor/engine,/area/centcom/evac) +"kQ" = (/turf/closed/indestructible/riveted,/area/syndicate_mothership) +"kR" = (/turf/closed/indestructible/fakeglass{icon_state = "fakewindows"; dir = 8},/area/syndicate_mothership) +"kS" = (/turf/closed/indestructible/fakeglass{icon_state = "fakewindows"; dir = 4},/area/syndicate_mothership) +"kT" = (/obj/structure/table,/obj/item/weapon/paper_bin,/turf/open/floor/plasteel/warning/corner{dir = 4},/area/centcom/supply) +"kU" = (/obj/structure/table,/obj/item/weapon/clipboard,/obj/item/weapon/coin/silver,/turf/open/floor/plasteel,/area/centcom/supply) +"kV" = (/obj/structure/table,/obj/item/weapon/pen/blue{pixel_x = 4; pixel_y = 4},/obj/item/weapon/pen/red,/obj/item/weapon/pen{pixel_x = 8; pixel_y = 8},/turf/open/floor/plasteel,/area/centcom/supply) +"kW" = (/obj/structure/table,/turf/open/floor/plasteel/red/side{dir = 9},/area/tdome/tdomeobserve) +"kX" = (/turf/open/floor/plasteel/red/side{dir = 1},/area/tdome/tdomeobserve) +"kY" = (/obj/structure/table,/turf/open/floor/plasteel/red/side{dir = 1},/area/tdome/tdomeobserve) +"kZ" = (/obj/structure/chair/stool,/turf/open/floor/plasteel/neutral/side{dir = 8},/area/tdome/tdomeobserve) +"la" = (/turf/open/floor/plasteel,/area/tdome/tdomeobserve) +"lb" = (/obj/structure/chair/stool,/turf/open/floor/plasteel/neutral/side{dir = 4},/area/tdome/tdomeobserve) +"lc" = (/obj/structure/table,/turf/open/floor/plasteel/green/side{dir = 1},/area/tdome/tdomeobserve) +"ld" = (/turf/open/floor/plasteel/green/side{dir = 1},/area/tdome/tdomeobserve) +"le" = (/obj/structure/table,/turf/open/floor/plasteel/green/side{dir = 5},/area/tdome/tdomeobserve) +"lf" = (/obj/item/weapon/twohanded/required/kirbyplants,/turf/open/floor/plasteel/green/side{dir = 10},/area/centcom/evac) +"lg" = (/obj/structure/chair{dir = 1},/turf/open/floor/plasteel/green/side,/area/centcom/evac) +"lh" = (/turf/open/floor/plasteel/green/side,/area/centcom/evac) +"li" = (/obj/structure/rack,/obj/item/weapon/gun/projectile/shotgun/toy/crossbow,/obj/item/toy/katana,/turf/open/floor/plasteel/green/side,/area/centcom/evac) +"lj" = (/obj/structure/rack,/obj/item/weapon/storage/crayons,/obj/item/toy/sword,/turf/open/floor/plasteel/green/side,/area/centcom/evac) +"lk" = (/turf/closed/indestructible/fakeglass{icon_state = "fakewindows"; dir = 1},/area/centcom/evac) +"ll" = (/obj/machinery/door/poddoor/shuttledock{name = "blast door1"},/turf/open/floor/engine,/area/centcom/evac) +"lm" = (/turf/closed/indestructible/fakeglass{color = "#008000"; dir = 9; icon_state = "fakewindows"},/area/space) +"ln" = (/turf/closed/indestructible/fakeglass{color = "#008000"; dir = 8; icon_state = "fakewindows2"},/area/wizard_station) +"lo" = (/turf/closed/indestructible/fakeglass{color = "#008000"; dir = 5; icon_state = "fakewindows"},/area/space) +"lp" = (/obj/item/weapon/storage/crayons,/obj/structure/table,/obj/item/weapon/storage/crayons,/turf/open/floor/plasteel/freezer{dir = 2},/area/syndicate_mothership) +"lq" = (/obj/machinery/washing_machine,/turf/open/floor/plasteel/freezer{dir = 2},/area/syndicate_mothership) +"lr" = (/obj/machinery/door/airlock/centcom{name = "Crate Storage"; req_access_txt = "106"},/turf/open/floor/plasteel/delivery,/area/centcom/supply) +"ls" = (/obj/structure/closet/secure_closet/bar,/turf/open/floor/plasteel/red/side{dir = 8},/area/tdome/tdomeobserve) +"lt" = (/obj/structure/table,/turf/open/floor/plasteel,/area/tdome/tdomeobserve) +"lu" = (/obj/structure/closet/secure_closet/freezer/kitchen,/turf/open/floor/plasteel/green/side{dir = 4},/area/tdome/tdomeobserve) +"lv" = (/turf/closed/indestructible/fakeglass{icon_state = "fakewindows"; dir = 10},/area/centcom/evac) +"lw" = (/obj/machinery/door/airlock/centcom{name = "Centcom"; opacity = 1; req_access_txt = "0"},/turf/open/floor/plasteel/black,/area/centcom/evac) +"lx" = (/turf/closed/indestructible/fakeglass{color = "#008000"; dir = 1; icon_state = "fakewindows2"},/area/wizard_station) +"ly" = (/turf/open/floor/engine/cult,/area/wizard_station) +"lz" = (/obj/machinery/computer/shuttle/fluff,/turf/open/floor/engine/cult,/area/wizard_station) +"lA" = (/obj/machinery/computer/shuttle/syndicate/recall,/turf/open/floor/plasteel/bar{dir = 2},/area/syndicate_mothership) +"lB" = (/turf/open/floor/plasteel/bar{dir = 2},/area/syndicate_mothership) +"lC" = (/obj/machinery/vending/coffee,/turf/open/floor/plasteel/bar{dir = 2},/area/syndicate_mothership) +"lD" = (/obj/machinery/vending/cola,/turf/open/floor/plasteel/bar{dir = 2},/area/syndicate_mothership) +"lE" = (/obj/machinery/vending/cigarette{products = list(/obj/item/weapon/storage/fancy/cigarettes/cigpack_syndicate = 7, /obj/item/weapon/storage/fancy/cigarettes/cigpack_uplift = 3, /obj/item/weapon/storage/fancy/cigarettes/cigpack_robust = 2, /obj/item/weapon/storage/fancy/cigarettes/cigpack_carp = 3, /obj/item/weapon/storage/fancy/cigarettes/cigpack_midori = 1, /obj/item/weapon/storage/box/matches = 10, /obj/item/weapon/lighter/greyscale = 4, /obj/item/weapon/storage/fancy/rollingpapers = 5)},/turf/open/floor/plasteel/bar{dir = 2},/area/syndicate_mothership) +"lF" = (/obj/structure/urinal{pixel_y = 28},/turf/open/floor/plasteel/freezer{dir = 2},/area/syndicate_mothership) +"lG" = (/obj/item/weapon/soap/syndie,/obj/structure/mopbucket,/turf/open/floor/plasteel/freezer{dir = 2},/area/syndicate_mothership) +"lH" = (/obj/structure/mirror{pixel_x = 28},/obj/item/weapon/mop,/turf/open/floor/plasteel/freezer{dir = 2},/area/syndicate_mothership) +"lI" = (/obj/structure/closet/crate,/turf/open/floor/plasteel,/area/centcom/supply) +"lJ" = (/obj/structure/table,/obj/item/weapon/storage/box/drinkingglasses,/turf/open/floor/plasteel/red/side{dir = 8},/area/tdome/tdomeobserve) +"lK" = (/obj/structure/table,/turf/open/floor/plasteel/green/side{dir = 4},/area/tdome/tdomeobserve) +"lL" = (/turf/closed/indestructible/fakeglass{color = "#008000"},/area/wizard_station) +"lM" = (/obj/item/weapon/paper{info = "GET DAT FUKKEN DISK"; name = "memo"},/obj/structure/noticeboard{pixel_x = -32; pixel_y = 0},/turf/open/floor/plasteel/bar{dir = 2},/area/syndicate_mothership) +"lN" = (/obj/structure/chair/stool,/turf/open/floor/plasteel/bar{dir = 2},/area/syndicate_mothership) +"lO" = (/mob/living/simple_animal/hostile/carp/cayenne,/turf/open/floor/plasteel/bar{dir = 2},/area/syndicate_mothership) +"lP" = (/obj/machinery/door/airlock/centcom{name = "Restroom"; opacity = 1; req_access_txt = "150"},/turf/open/floor/plasteel/bar{dir = 2},/area/syndicate_mothership) +"lQ" = (/turf/open/floor/plasteel/freezer{dir = 2},/area/syndicate_mothership) +"lR" = (/obj/structure/mirror{pixel_x = 28},/turf/open/floor/plasteel/freezer{dir = 2},/area/syndicate_mothership) +"lS" = (/turf/open/floor/plasteel/red/side{dir = 8},/area/tdome/tdomeobserve) +"lT" = (/obj/structure/closet/secure_closet/freezer/fridge,/turf/open/floor/plasteel/green/side{dir = 4},/area/tdome/tdomeobserve) +"lU" = (/obj/structure/table/reinforced,/turf/open/floor/plasteel/green/side{dir = 9},/area/centcom/evac) +"lV" = (/turf/closed/indestructible/riveted/uranium,/area/wizard_station) +"lW" = (/obj/structure/showcase{desc = "A strange machine supposedly from another world. The Wizard Federation has been meddling with it for years."; icon = 'icons/obj/machines/telecomms.dmi'; icon_state = "processor"; name = "byond random number generator"},/turf/open/floor/engine/cult,/area/wizard_station) +"lX" = (/obj/structure/showcase{desc = "A historical figure of great importance to the wizard federation. He spent his long life learning magic, stealing artifacts, and harassing idiots with swords. May he rest forever, Rodney."; icon = 'icons/mob/mob.dmi'; icon_state = "nim"; name = "wizard of yendor showcase"},/turf/open/floor/engine/cult,/area/wizard_station) +"lY" = (/obj/structure/table/wood,/obj/item/device/paicard,/turf/open/floor/plasteel/bar{dir = 2},/area/syndicate_mothership) +"lZ" = (/obj/structure/table/wood,/obj/item/pizzabox,/turf/open/floor/plasteel/bar{dir = 2},/area/syndicate_mothership) +"ma" = (/obj/structure/chair/stool,/obj/effect/landmark{name = "Syndicate-Spawn"},/turf/open/floor/plasteel/bar{dir = 2},/area/syndicate_mothership) +"mb" = (/obj/machinery/computer/telecrystals/uplinker,/turf/open/floor/plasteel/podhatch{dir = 9},/area/syndicate_mothership) +"mc" = (/obj/structure/toilet{icon_state = "toilet00"; dir = 8},/obj/structure/window/reinforced/tinted{tag = "icon-rwindow (NORTH)"; icon_state = "rwindow"; dir = 1},/obj/machinery/door/window{tag = "icon-right (WEST)"; name = "Tactical Toilet"; icon_state = "right"; dir = 8; opacity = 1},/turf/open/floor/plasteel/freezer{dir = 2},/area/syndicate_mothership) +"md" = (/turf/open/floor/plating/airless,/area/syndicate_mothership) +"me" = (/turf/open/floor/plating/airless/warnplate{dir = 2},/area/syndicate_mothership) +"mf" = (/turf/open/floor/plasteel/red/side{dir = 10},/area/tdome/tdomeobserve) +"mg" = (/turf/open/floor/plasteel/red/side{dir = 2},/area/tdome/tdomeobserve) +"mh" = (/turf/open/floor/plasteel/neutral/side{dir = 8},/area/tdome/tdomeobserve) +"mi" = (/turf/open/floor/plasteel/neutral/side{dir = 4},/area/tdome/tdomeobserve) +"mj" = (/turf/open/floor/plasteel/green/side,/area/tdome/tdomeobserve) +"mk" = (/turf/open/floor/plasteel/green/side{dir = 6},/area/tdome/tdomeobserve) +"ml" = (/obj/structure/table/reinforced,/obj/item/weapon/clipboard,/turf/open/floor/plasteel/green/side{dir = 8},/area/centcom/evac) +"mm" = (/obj/structure/filingcabinet/filingcabinet,/turf/open/floor/plasteel,/area/centcom/evac) +"mn" = (/obj/machinery/door/airlock{icon = 'icons/obj/doors/airlocks/station/uranium.dmi'; name = "Bridge"},/turf/open/floor/engine/cult,/area/wizard_station) +"mo" = (/turf/closed/indestructible/fakeglass{icon_state = "fakewindows"; dir = 9},/area/syndicate_mothership) +"mp" = (/turf/closed/indestructible/fakeglass{icon_state = "fakewindows2"; dir = 8},/area/syndicate_mothership) +"mq" = (/obj/structure/table/wood,/obj/item/weapon/reagent_containers/food/snacks/pizzaslice/mushroom,/turf/open/floor/plasteel/bar{dir = 2},/area/syndicate_mothership) +"mr" = (/obj/structure/table/wood,/obj/item/weapon/reagent_containers/food/drinks/beer{pixel_x = 5; pixel_y = -2},/obj/item/toy/cards/deck/syndicate{icon_state = "deck_syndicate_full"; pixel_x = -6; pixel_y = 6},/turf/open/floor/plasteel/bar{dir = 2},/area/syndicate_mothership) +"ms" = (/obj/machinery/computer/telecrystals/uplinker,/turf/open/floor/plasteel/podhatch{dir = 8},/area/syndicate_mothership) +"mt" = (/obj/structure/closet/cardboard,/turf/open/floor/plating/airless,/area/syndicate_mothership) +"mu" = (/turf/open/floor/plating/airless/warnplate{dir = 6},/area/syndicate_mothership) +"mv" = (/turf/open/space,/obj/machinery/porta_turret/syndicate/pod,/turf/closed/wall/shuttle{tag = "icon-wall3 (NORTHWEST)"; icon_state = "wall3"; dir = 9},/area/shuttle/assault_pod) +"mw" = (/turf/closed/wall/shuttle{tag = "icon-wall3"; icon_state = "wall3"; dir = 2},/area/shuttle/assault_pod) +"mx" = (/obj/machinery/door/airlock/centcom{name = "Assault Pod"; opacity = 1; req_access_txt = "150"},/turf/open/floor/plating,/area/shuttle/assault_pod) +"my" = (/turf/open/space,/obj/machinery/porta_turret/syndicate/pod,/turf/closed/wall/shuttle{tag = "icon-wall3 (NORTHEAST)"; icon_state = "wall3"; dir = 5},/area/shuttle/assault_pod) +"mz" = (/turf/open/floor/plating/airless/warnplate{dir = 10},/area/syndicate_mothership) +"mA" = (/turf/closed/indestructible/fakeglass{icon_state = "fakewindows2"; dir = 8},/area/tdome/tdomeobserve) +"mB" = (/turf/closed/indestructible/fakedoor{name = "Centcom"},/area/centcom/evac) +"mC" = (/turf/open/floor/carpet/carpetsymbol2,/area/wizard_station) +"mD" = (/turf/closed/indestructible/fakeglass{icon_state = "fakewindows2"; dir = 1},/area/syndicate_mothership) +"mE" = (/turf/open/floor/plating,/area/syndicate_mothership) +"mF" = (/obj/machinery/door/poddoor/shutters{id = "nukeop_ready"; name = "shuttle dock"},/turf/open/floor/plating,/area/syndicate_mothership) +"mG" = (/turf/open/floor/plating/airless/warnplate{dir = 4},/area/syndicate_mothership) +"mH" = (/obj/structure/chair{dir = 4},/turf/open/floor/plasteel/shuttle/red,/area/shuttle/assault_pod) +"mI" = (/turf/open/floor/plasteel/shuttle/red,/area/shuttle/assault_pod) +"mJ" = (/obj/structure/chair{dir = 8},/turf/open/floor/plasteel/shuttle/red,/area/shuttle/assault_pod) +"mK" = (/turf/open/floor/plating/airless/warnplate{dir = 8},/area/syndicate_mothership) +"mL" = (/turf/open/floor/grass,/area/tdome/tdomeobserve) +"mM" = (/turf/closed/indestructible/fakeglass{icon_state = "fakewindows2"; dir = 6},/area/tdome/tdomeobserve) +"mN" = (/turf/open/floor/plasteel/green/side{dir = 10},/area/centcom/evac) +"mO" = (/turf/open/floor/plasteel/green/side{dir = 6},/area/centcom/evac) +"mP" = (/obj/machinery/vending/magivend,/turf/open/floor/engine/cult,/area/wizard_station) +"mQ" = (/obj/machinery/vending/snack,/turf/open/floor/engine/cult,/area/wizard_station) +"mR" = (/turf/closed/indestructible/fakeglass,/area/syndicate_mothership) +"mS" = (/obj/machinery/door/airlock/external{req_access_txt = "150"},/turf/open/floor/plating,/area/syndicate_mothership) +"mT" = (/obj/machinery/button/door{id = "nukeop_ready"; name = "mission launch control"; pixel_x = -26; pixel_y = 0; req_access_txt = "151"},/turf/open/floor/plasteel/bar{dir = 2},/area/syndicate_mothership) +"mU" = (/obj/machinery/computer/telecrystals/uplinker,/turf/open/floor/plasteel/podhatch{dir = 10},/area/syndicate_mothership) +"mV" = (/obj/structure/chair{dir = 1},/turf/open/floor/plasteel/shuttle/red,/area/shuttle/assault_pod) +"mW" = (/obj/docking_port/stationary{area_type = /area/syndicate_mothership; dheight = 9; dir = 2; dwidth = 5; height = 24; id = "syndicate_away"; name = "syndicate recon outpost"; turf_type = /turf/open/floor/plating/asteroid/snow; width = 18},/turf/open/floor/plating/asteroid/snow,/area/space) +"mX" = (/obj/item/weapon/storage/box/drinkingglasses,/obj/item/weapon/reagent_containers/food/drinks/bottle/rum,/obj/structure/table/wood,/turf/open/floor/wood,/area/syndicate_mothership) +"mY" = (/obj/structure/table/wood,/turf/open/floor/wood,/area/syndicate_mothership) +"mZ" = (/obj/structure/table/wood,/obj/item/device/syndicatedetonator{desc = "This gaudy button can be used to instantly detonate syndicate bombs that have been activated on the station. It is also fun to press."},/turf/open/floor/wood,/area/syndicate_mothership) +"na" = (/obj/structure/table/wood,/obj/item/toy/nuke,/turf/open/floor/wood,/area/syndicate_mothership) +"nb" = (/obj/machinery/door/airlock/centcom{aiControlDisabled = 1; name = "Assault Pod"; opacity = 1; req_access_txt = "150"},/turf/open/floor/plating,/area/shuttle/assault_pod) +"nc" = (/obj/machinery/computer/shuttle/syndicate/drop_pod,/turf/closed/wall/shuttle{tag = "icon-wall3"; icon_state = "wall3"; dir = 2},/area/shuttle/assault_pod) +"nd" = (/turf/open/floor/plasteel/redblue,/area/tdome/tdomeobserve) +"ne" = (/obj/structure/chair,/obj/effect/landmark{name = "tdomeobserve"},/turf/open/floor/plasteel/redblue,/area/tdome/tdomeobserve) +"nf" = (/obj/structure/bookcase,/turf/open/floor/carpet/carpetsymbol2,/area/wizard_station) +"ng" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'FOURTH WALL'."; name = "\improper FOURTH WALL"; pixel_x = -32},/turf/open/floor/plating/asteroid/snow,/area/syndicate_mothership) +"nh" = (/turf/open/floor/wood,/area/syndicate_mothership) +"ni" = (/obj/effect/landmark{name = "Syndicate-Spawn"},/turf/open/floor/wood,/area/syndicate_mothership) +"nj" = (/obj/machinery/door/window{base_state = "right"; dir = 4; icon_state = "right"; name = "Uplink Management Control"; req_access_txt = "151"},/turf/open/floor/wood,/area/syndicate_mothership) +"nk" = (/obj/structure/chair,/turf/open/floor/plasteel/shuttle/red,/area/shuttle/assault_pod) +"nl" = (/turf/closed/indestructible/fakedoor{name = "Thunderdome"},/area/tdome/tdomeobserve) +"nm" = (/obj/machinery/computer/security/telescreen,/turf/open/floor/plasteel/redblue,/area/tdome/tdomeobserve) +"nn" = (/turf/closed/indestructible/fakeglass{color = "#008000"; dir = 1; icon_state = "fakewindows"},/area/wizard_station) +"no" = (/turf/closed/indestructible/fakeglass{color = "#008000"; dir = 6; icon_state = "fakewindows2"},/area/wizard_station) +"np" = (/obj/structure/cult/pylon,/turf/open/floor/engine/cult,/area/wizard_station) +"nq" = (/obj/effect/mob_spawn/human/corpse/russian/ranged/officer,/obj/structure/chair/wood/wings,/obj/effect/decal/cleanable/blood,/turf/open/floor/engine/cult,/area/wizard_station) +"nr" = (/obj/machinery/computer/telecrystals/boss,/turf/open/floor/plasteel/podhatch{dir = 5},/area/syndicate_mothership) +"ns" = (/obj/structure/sign/map/left{pixel_y = -32},/obj/structure/rack{icon = 'icons/obj/stationobjs.dmi'; icon_state = "minibar_left"; name = "skeletal minibar"},/obj/item/weapon/reagent_containers/food/drinks/bottle/vodka,/turf/open/floor/wood,/area/syndicate_mothership) +"nt" = (/obj/structure/sign/map/right{pixel_y = -32},/obj/structure/rack{icon = 'icons/obj/stationobjs.dmi'; icon_state = "minibar_right"; name = "skeletal minibar"},/obj/item/weapon/reagent_containers/food/drinks/bottle/gin,/turf/open/floor/wood,/area/syndicate_mothership) +"nu" = (/obj/machinery/door/airlock/centcom{name = "Equipment Room"; opacity = 1; req_access_txt = "150"},/turf/open/floor/plasteel/bar{dir = 2},/area/syndicate_mothership) +"nv" = (/turf/open/space,/obj/machinery/porta_turret/syndicate/pod,/turf/closed/wall/shuttle{tag = "icon-wall3 (SOUTHWEST)"; icon_state = "wall3"; dir = 10},/area/shuttle/assault_pod) +"nw" = (/turf/open/space,/obj/machinery/porta_turret/syndicate/pod,/turf/closed/wall/shuttle{tag = "icon-wall3 (SOUTHEAST)"; icon_state = "wall3"; dir = 6},/area/shuttle/assault_pod) +"nx" = (/obj/structure/chair/wood/wings{tag = "icon-wooden_chair_wings (EAST)"; icon_state = "wooden_chair_wings"; dir = 4},/turf/open/floor/carpet/carpetsymbol2,/area/wizard_station) +"ny" = (/obj/structure/cult/tome,/turf/open/floor/carpet/carpetsymbol2,/area/wizard_station) +"nz" = (/obj/machinery/door/airlock{icon = 'icons/obj/doors/airlocks/station/uranium.dmi'; name = "Break Room"},/turf/open/floor/engine/cult,/area/wizard_station) +"nA" = (/obj/machinery/door/airlock{icon = 'icons/obj/doors/airlocks/station/uranium.dmi'; name = "Tabletop Room"},/turf/open/floor/engine/cult,/area/wizard_station) +"nB" = (/obj/structure/chair/wood/wings{tag = "icon-wooden_chair_wings (EAST)"; icon_state = "wooden_chair_wings"; dir = 4},/turf/open/floor/engine/cult,/area/wizard_station) +"nC" = (/obj/structure/table/wood/poker,/obj/item/weapon/dice/d20,/turf/open/floor/engine/cult,/area/wizard_station) +"nD" = (/obj/structure/chair/wood/wings{tag = "icon-wooden_chair_wings (WEST)"; icon_state = "wooden_chair_wings"; dir = 8},/turf/open/floor/engine/cult,/area/wizard_station) +"nE" = (/turf/open/floor/plasteel/black,/area/syndicate_mothership) +"nF" = (/obj/machinery/mech_bay_recharge_port,/turf/open/floor/plating,/area/syndicate_mothership) +"nG" = (/turf/open/floor/mech_bay_recharge_floor,/area/syndicate_mothership) +"nH" = (/obj/machinery/computer/mech_bay_power_console,/turf/open/floor/plating,/area/syndicate_mothership) +"nI" = (/obj/machinery/vending/tool,/turf/open/floor/plasteel/black,/area/syndicate_mothership) +"nJ" = (/obj/structure/closet/cardboard/metal,/turf/open/floor/plating/airless,/area/syndicate_mothership) +"nK" = (/turf/open/floor/plating/airless/warnplate{dir = 5},/area/syndicate_mothership) +"nL" = (/obj/machinery/door/airlock/centcom{aiControlDisabled = 1; name = "Assault Pod"; opacity = 1; req_access_txt = "150"},/obj/docking_port/mobile/assault_pod{dwidth = 3; name = "steel rain"},/turf/open/floor/plating,/area/shuttle/assault_pod) +"nM" = (/turf/open/floor/plating/airless/warnplate{dir = 9},/area/syndicate_mothership) +"nN" = (/obj/structure/cult/talisman{desc = "A altar dedicated to the Wizard's Federation"},/obj/item/weapon/kitchen/knife/ritual,/obj/effect/decal/cleanable/blood/old,/turf/open/floor/engine/cult,/area/wizard_station) +"nO" = (/obj/effect/mob_spawn/human/corpse/russian,/turf/open/floor/engine/cult,/area/wizard_station) +"nP" = (/obj/structure/chair/wood/wings{icon_state = "wooden_chair_wings"; dir = 1},/turf/open/floor/engine/cult,/area/wizard_station) +"nQ" = (/obj/item/weapon/broken_bottle,/turf/open/floor/engine/cult,/area/wizard_station) +"nR" = (/turf/open/floor/plating/airless/warnplate{dir = 1},/area/syndicate_mothership) +"nS" = (/turf/closed/indestructible/riveted,/area/tdome/arena) +"nT" = (/obj/machinery/igniter,/turf/open/floor/plasteel,/area/tdome/arena) +"nU" = (/turf/open/floor/plasteel,/area/tdome/arena) +"nV" = (/turf/closed/indestructible/fakeglass{icon_state = "fakewindows2"; dir = 6},/area/syndicate_mothership) +"nW" = (/obj/structure/chair/stool,/turf/open/floor/plasteel/black,/area/syndicate_mothership) +"nX" = (/obj/structure/rack,/obj/item/clothing/under/color/red,/obj/item/clothing/shoes/sneakers/brown,/obj/item/clothing/suit/armor/tdome/red,/obj/item/clothing/head/helmet/thunderdome,/obj/item/weapon/melee/baton/loaded,/obj/item/weapon/melee/energy/sword/saber/red,/turf/open/floor/plasteel/black,/area/tdome/arena) +"nY" = (/obj/machinery/door/poddoor{id = "thunderdomegen"; name = "General Supply"},/turf/open/floor/plasteel/black,/area/tdome/arena) +"nZ" = (/obj/effect/landmark{name = "tdome2"},/turf/open/floor/plasteel,/area/tdome/tdome2) +"oa" = (/obj/machinery/door/poddoor{id = "thunderdome"; name = "Thunderdome Blast Door"},/turf/open/floor/plasteel,/area/tdome/arena) +"ob" = (/turf/open/floor/plasteel/red/side{dir = 8},/area/tdome/arena) +"oc" = (/turf/open/floor/plasteel/green/side{dir = 4},/area/tdome/arena) +"od" = (/obj/effect/landmark{name = "tdome1"},/turf/open/floor/plasteel,/area/tdome/tdome1) +"oe" = (/obj/structure/rack,/obj/item/clothing/under/color/green,/obj/item/clothing/shoes/sneakers/brown,/obj/item/clothing/suit/armor/tdome/green,/obj/item/clothing/head/helmet/thunderdome,/obj/item/weapon/melee/baton/loaded,/obj/item/weapon/melee/energy/sword/saber/green,/turf/open/floor/plasteel/black,/area/tdome/arena) +"of" = (/obj/structure/closet/syndicate/personal,/turf/open/floor/plasteel/darkwarning{dir = 1},/area/syndicate_mothership) +"og" = (/obj/structure/table,/obj/item/weapon/gun/energy/ionrifle{pin = /obj/item/device/firing_pin},/turf/open/floor/plasteel/darkwarning{dir = 1},/area/syndicate_mothership) +"oh" = (/obj/machinery/recharger{pixel_y = 4},/obj/effect/landmark{name = "tdome2"},/turf/open/floor/plasteel,/area/tdome/tdome2) +"oi" = (/obj/machinery/recharger{pixel_y = 4},/obj/effect/landmark{name = "tdome1"},/turf/open/floor/plasteel,/area/tdome/tdome1) +"oj" = (/obj/machinery/door/airlock{icon = 'icons/obj/doors/airlocks/station/uranium.dmi'; name = "Corridor"},/turf/open/floor/engine/cult,/area/wizard_station) +"ok" = (/obj/machinery/camera{pixel_x = 11; pixel_y = -9; network = list("thunder"); c_tag = "Red Team"},/obj/effect/landmark{name = "tdome2"},/turf/open/floor/plasteel,/area/tdome/tdome2) +"ol" = (/turf/open/floor/bluegrid,/area/tdome/arena) +"om" = (/obj/machinery/flasher{id = "tdomeflash"; name = "Thunderdome Flash"},/turf/open/floor/bluegrid,/area/tdome/arena) +"on" = (/obj/machinery/camera{pixel_x = 12; pixel_y = -10; network = list("thunder"); c_tag = "Green Team"},/obj/effect/landmark{name = "tdome1"},/turf/open/floor/plasteel,/area/tdome/tdome1) +"oo" = (/obj/machinery/camera{pixel_x = 10; network = list("thunder"); c_tag = "Arena"},/turf/open/floor/bluegrid,/area/tdome/arena) +"op" = (/turf/open/floor/carpet/carpetsymbol,/area/wizard_station) +"oq" = (/turf/closed/indestructible/fakeglass{color = "#008000"; dir = 8; icon_state = "fakewindows"},/area/wizard_station) +"or" = (/turf/closed/indestructible/fakeglass{color = "#008000"; dir = 4; icon_state = "fakewindows"},/area/wizard_station) +"os" = (/obj/machinery/door/airlock{icon = 'icons/obj/doors/airlocks/station/uranium.dmi'; locked = 1; name = "Experiment Room"},/turf/open/floor/engine/cult,/area/wizard_station) +"ot" = (/obj/machinery/door/airlock{icon = 'icons/obj/doors/airlocks/station/uranium.dmi'; name = "Personal Quarters"},/turf/open/floor/engine/cult,/area/wizard_station) +"ou" = (/obj/machinery/door/airlock{icon = 'icons/obj/doors/airlocks/station/uranium.dmi'; name = "Cargo"},/turf/open/floor/engine/cult,/area/wizard_station) +"ov" = (/obj/structure/statue/uranium/nuke,/turf/open/floor/plating/asteroid/snow,/area/syndicate_mothership) +"ow" = (/obj/machinery/door/poddoor{id = "thunderdomehea"; name = "Heavy Supply"},/turf/open/floor/plasteel/black,/area/tdome/arena) +"ox" = (/obj/effect/decal/cleanable/blood/old,/obj/item/weapon/reagent_containers/food/snacks/meat/slab/goliath,/turf/open/floor/engine/cult,/area/wizard_station) +"oy" = (/obj/structure/table/wood,/obj/item/clothing/suit/wizrobe/magusblue,/obj/item/clothing/head/wizard/magus,/obj/item/weapon/staff,/turf/open/floor/engine/cult,/area/wizard_station) +"oz" = (/turf/open/floor/carpet,/area/wizard_station) +"oA" = (/obj/structure/dresser,/obj/item/weapon/storage/backpack/satchel,/obj/structure/mirror/magic{pixel_y = 28},/turf/open/floor/carpet,/area/wizard_station) +"oB" = (/obj/structure/closet/masks,/turf/open/floor/engine/cult,/area/wizard_station) +"oC" = (/obj/structure/rack,/obj/item/weapon/staff,/obj/item/clothing/head/wizard/magus,/obj/item/clothing/suit/wizrobe/magusred,/turf/open/floor/engine/cult,/area/wizard_station) +"oD" = (/obj/structure/rack,/obj/item/clothing/under/color/red,/obj/item/clothing/shoes/sneakers/brown,/obj/item/clothing/suit/armor/vest,/obj/item/clothing/head/helmet/swat,/obj/item/weapon/gun/energy/laser,/turf/open/floor/plasteel/black,/area/tdome/arena) +"oE" = (/turf/closed/indestructible/fakeglass{icon_state = "fakewindows"; dir = 8},/area/tdome/tdomeadmin) +"oF" = (/turf/closed/indestructible/fakeglass{icon_state = "fakewindows2"; dir = 8},/area/tdome/tdomeadmin) +"oG" = (/turf/closed/indestructible/fakeglass{icon_state = "fakewindows"; dir = 4},/area/tdome/tdomeadmin) +"oH" = (/obj/structure/rack,/obj/item/clothing/under/color/green,/obj/item/clothing/shoes/sneakers/brown,/obj/item/clothing/suit/armor/vest,/obj/item/clothing/head/helmet/swat,/obj/item/weapon/gun/energy/laser,/turf/open/floor/plasteel/black,/area/tdome/arena) +"oI" = (/obj/effect/decal/remains/human,/obj/effect/decal/cleanable/blood/old,/turf/open/floor/engine/cult,/area/wizard_station) +"oJ" = (/mob/living/simple_animal/hostile/creature{desc = "Chompy, your cute little sanity-destroying otherthing."; name = "Chompy"},/turf/open/floor/engine/cult,/area/wizard_station) +"oK" = (/obj/structure/table/wood,/obj/effect/landmark{name = "Teleport-Scroll"},/obj/item/weapon/dice/d20,/obj/item/weapon/dice,/turf/open/floor/carpet,/area/wizard_station) +"oL" = (/obj/effect/landmark/start{name = "wizard"},/turf/open/floor/carpet,/area/wizard_station) +"oM" = (/obj/structure/bed,/obj/item/weapon/bedsheet/wiz,/turf/open/floor/carpet,/area/wizard_station) +"oN" = (/obj/structure/closet/wardrobe/mixed,/turf/open/floor/engine/cult,/area/wizard_station) +"oO" = (/obj/structure/closet/crate{icon_state = "crateopen"; opened = 1},/obj/item/clothing/suit/wizrobe/red,/obj/item/clothing/head/wizard/red,/obj/item/weapon/staff,/obj/item/clothing/shoes/sandal,/turf/open/floor/engine/cult,/area/wizard_station) +"oP" = (/turf/open/floor/plasteel/redyellow,/area/tdome/tdomeadmin) +"oQ" = (/obj/structure/chair{dir = 1},/obj/effect/landmark{name = "tdomeadmin"},/turf/open/floor/plasteel/redyellow,/area/tdome/tdomeadmin) +"oR" = (/obj/structure/table,/obj/machinery/computer/security/telescreen{pixel_y = 0},/turf/open/floor/plasteel/redyellow,/area/tdome/tdomeadmin) +"oS" = (/obj/structure/chair/comfy/brown{dir = 1},/turf/open/floor/plasteel/redyellow,/area/tdome/tdomeadmin) +"oT" = (/obj/machinery/button/flasher{id = "tdomeflash"; pixel_x = 0; pixel_y = 0},/obj/structure/table,/turf/open/floor/plasteel/redyellow,/area/tdome/tdomeadmin) +"oU" = (/obj/structure/table/wood,/obj/item/candle/infinite,/turf/open/floor/carpet,/area/wizard_station) +"oV" = (/obj/structure/table/wood,/obj/item/weapon/storage/bag/tray,/obj/item/weapon/reagent_containers/food/snacks/burger/spell,/turf/open/floor/carpet,/area/wizard_station) +"oW" = (/obj/structure/closet/wardrobe/pjs,/turf/open/floor/engine/cult,/area/wizard_station) +"oX" = (/obj/structure/rack,/obj/item/weapon/staff/broom,/obj/item/clothing/head/wizard/marisa,/obj/item/clothing/suit/wizrobe/marisa,/obj/item/clothing/shoes/sandal/marisa,/turf/open/floor/engine/cult,/area/wizard_station) +"oY" = (/turf/closed/indestructible/riveted,/area/tdome/tdomeadmin) +"oZ" = (/obj/machinery/computer/security/telescreen{pixel_y = -32},/turf/open/floor/plasteel/redyellow,/area/tdome/tdomeadmin) +"pa" = (/turf/open/floor/plasteel,/area/tdome/tdomeadmin) +"pb" = (/obj/item/organ/heart,/obj/effect/decal/cleanable/blood/old,/turf/open/floor/engine/cult,/area/wizard_station) +"pc" = (/obj/machinery/door/airlock{icon = 'icons/obj/doors/airlocks/station/uranium.dmi'; name = "Engine Room"},/turf/open/floor/engine/cult,/area/wizard_station) +"pd" = (/obj/structure/mecha_wreckage/ripley,/obj/effect/decal/cleanable/oil,/turf/open/floor/engine/cult,/area/wizard_station) +"pe" = (/obj/structure/closet/crate,/obj/item/weapon/coin/uranium,/obj/effect/spawner/lootdrop/gambling,/obj/item/weapon/lipstick/random,/obj/item/weapon/c_tube,/turf/open/floor/engine/cult,/area/wizard_station) +"pf" = (/obj/structure/closet/crate,/obj/item/weapon/storage/box/donkpockets,/obj/item/weapon/crowbar,/obj/item/weapon/wrench,/obj/item/weapon/weldingtool,/turf/open/floor/engine/cult,/area/wizard_station) +"pg" = (/turf/closed/indestructible/fakedoor{name = "Thunderdome Admin"},/area/tdome/tdomeadmin) +"ph" = (/obj/structure/table,/obj/machinery/button/door{id = "thunderdomehea"; name = "Heavy Supply Control"; pixel_y = 0; req_access_txt = "102"},/turf/open/floor/plasteel,/area/tdome/tdomeadmin) +"pi" = (/obj/structure/table,/obj/machinery/button/door{id = "thunderdome"; name = "Main Blast Doors Control"; pixel_y = 0; req_access_txt = "102"},/turf/open/floor/plasteel,/area/tdome/tdomeadmin) +"pj" = (/obj/structure/table,/obj/machinery/button/door{id = "thunderdomegen"; name = "General Supply Control"; pixel_y = 0; req_access_txt = "102"},/turf/open/floor/plasteel,/area/tdome/tdomeadmin) +"pk" = (/obj/structure/table/wood,/obj/item/weapon/gun/magic/wand{desc = "Used in emergencies to reignite magma engines."; max_charges = 0; name = "wand of emergency engine ignition"},/turf/open/floor/engine/cult,/area/wizard_station) +"pl" = (/obj/structure/table/wood,/turf/open/floor/engine/cult,/area/wizard_station) +"pm" = (/obj/structure/cult/forge{desc = "A engine used in powering the wizards ship"; name = "magma engine"},/turf/open/floor/engine/cult,/area/wizard_station) +"pn" = (/mob/living/simple_animal/mouse/white{name = "Stuart"},/turf/open/floor/engine/cult,/area/wizard_station) +"po" = (/turf/closed/indestructible/riveted,/area/centcom/holding) +"pp" = (/obj/structure/window/reinforced{color = "#008000"; dir = 1},/turf/open/floor/plating/lava/airless,/area/wizard_station) +"pq" = (/obj/structure/table,/turf/open/floor/plasteel/freezer{dir = 2},/area/centcom/holding) +"pr" = (/turf/open/floor/plasteel/freezer{dir = 2},/area/centcom/holding) +"ps" = (/obj/structure/closet/secure_closet/bar{req_access_txt = "25"},/turf/open/floor/plasteel/freezer{dir = 2},/area/centcom/holding) +"pt" = (/obj/structure/reagent_dispensers/beerkeg,/turf/open/floor/plasteel/freezer{dir = 2},/area/centcom/holding) +"pu" = (/obj/structure/table,/obj/item/weapon/storage/box/donkpockets{pixel_x = 3; pixel_y = 3},/obj/item/weapon/storage/box/donkpockets{pixel_x = 3; pixel_y = 3},/obj/item/weapon/storage/box/donkpockets{pixel_x = 3; pixel_y = 3},/obj/item/weapon/storage/box/donkpockets{pixel_x = 3; pixel_y = 3},/turf/open/floor/plasteel/freezer{dir = 2},/area/centcom/holding) +"pv" = (/obj/structure/rack,/obj/item/device/camera,/turf/open/floor/plasteel/cafeteria,/area/centcom/holding) +"pw" = (/obj/structure/rack,/obj/item/toy/sword,/turf/open/floor/plasteel/cafeteria,/area/centcom/holding) +"px" = (/obj/structure/rack,/obj/item/toy/gun,/turf/open/floor/plasteel/cafeteria,/area/centcom/holding) +"py" = (/turf/open/floor/plasteel/cafeteria,/area/centcom/holding) +"pz" = (/turf/open/floor/plating/beach/sand,/area/centcom/holding) +"pA" = (/obj/effect/overlay/palmtree_r,/obj/effect/overlay/coconut,/turf/open/floor/plating/beach/sand,/area/centcom/holding) +"pB" = (/obj/effect/overlay/palmtree_l,/turf/open/floor/plating/beach/sand,/area/centcom/holding) +"pC" = (/obj/structure/shuttle/engine/heater,/turf/open/floor/plating/lava/airless,/area/wizard_station) +"pD" = (/obj/structure/table,/obj/item/clothing/head/that,/turf/open/floor/plasteel/freezer{dir = 2},/area/centcom/holding) +"pE" = (/obj/structure/chair/stool{pixel_y = 8},/turf/open/floor/plasteel/cafeteria,/area/centcom/holding) +"pF" = (/obj/item/device/camera,/turf/open/floor/plating/beach/sand,/area/centcom/holding) +"pG" = (/obj/structure/shuttle/engine/propulsion,/turf/open/space,/area/space) +"pH" = (/obj/structure/table,/obj/item/ammo_box/foambox,/turf/open/floor/plasteel/freezer{dir = 2},/area/centcom/holding) +"pI" = (/obj/structure/table,/obj/item/weapon/reagent_containers/food/drinks/shaker,/turf/open/floor/plasteel/freezer{dir = 2},/area/centcom/holding) +"pJ" = (/obj/structure/table,/obj/item/weapon/lighter,/turf/open/floor/plasteel/freezer{dir = 2},/area/centcom/holding) +"pK" = (/obj/structure/table,/obj/item/weapon/reagent_containers/food/drinks/soda_cans/cola,/turf/open/floor/plasteel/freezer{dir = 2},/area/centcom/holding) +"pL" = (/obj/structure/table,/obj/item/weapon/dice/d20,/turf/open/floor/plasteel/freezer{dir = 2},/area/centcom/holding) +"pM" = (/obj/structure/chair/stool{pixel_y = 8},/obj/item/clothing/head/bandana{pixel_y = -10},/obj/item/clothing/glasses/sunglasses,/turf/open/floor/plating/beach/sand,/area/centcom/holding) +"pN" = (/obj/structure/chair/stool{pixel_y = 8},/turf/open/floor/plating/beach/sand,/area/centcom/holding) +"pO" = (/obj/structure/rack,/obj/item/clothing/head/that,/obj/item/clothing/under/suit_jacket,/obj/item/clothing/tie/waistcoat,/turf/open/floor/plasteel/cafeteria,/area/centcom/holding) +"pP" = (/obj/item/toy/beach_ball,/turf/open/floor/plating/beach/sand,/area/centcom/holding) +"pQ" = (/obj/structure/rack,/obj/item/weapon/storage/crayons,/obj/item/weapon/gun/projectile/automatic/toy/pistol,/turf/open/floor/plasteel/cafeteria,/area/centcom/holding) +"pR" = (/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plasteel/cafeteria,/area/centcom/holding) +"pS" = (/obj/structure/rack,/obj/item/weapon/storage/crayons,/obj/item/weapon/gun/projectile/shotgun/toy/crossbow,/turf/open/floor/plasteel/cafeteria,/area/centcom/holding) +"pT" = (/turf/open/floor/plating/beach/coastline_b,/area/centcom/holding) +"pU" = (/obj/item/clothing/head/collectable/paper,/turf/open/floor/plating/beach/coastline_b,/area/centcom/holding) +"pV" = (/obj/structure/rack,/obj/item/clothing/shoes/laceup,/obj/item/clothing/under/suit_jacket/female{desc = "A black trouser suit for women. Very formal."; name = "black suit"; pixel_x = 3; pixel_y = 1},/turf/open/floor/plasteel/cafeteria,/area/centcom/holding) +"pW" = (/obj/structure/table,/obj/item/weapon/gun/projectile/automatic/toy/pistol,/turf/open/floor/plasteel/cafeteria,/area/centcom/holding) +"pX" = (/turf/open/floor/plating/beach/water,/area/centcom/holding) +"pY" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plasteel,/area/centcom/holding) +"pZ" = (/turf/open/floor/plasteel/delivery,/area/centcom/holding) +"qa" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/turf/open/floor/plasteel,/area/centcom/holding) +"qb" = (/obj/effect/landmark{name = "Holding Facility"},/turf/open/floor/engine,/area/centcom/holding) +"qc" = (/turf/closed/indestructible/abductor{icon_state = "alien20"},/area/abductor_ship) +"qd" = (/turf/closed/indestructible/abductor{icon_state = "alien21"},/area/abductor_ship) +"qe" = (/turf/closed/indestructible/abductor{icon_state = "alien22"},/area/abductor_ship) +"qf" = (/turf/closed/indestructible/abductor{icon_state = "alien23"},/area/abductor_ship) +"qg" = (/turf/closed/indestructible/abductor{icon_state = "alien24"},/area/abductor_ship) +"qh" = (/turf/closed/indestructible/abductor{icon_state = "alien16"},/area/abductor_ship) +"qi" = (/turf/closed/indestructible/abductor{icon_state = "alien17"},/area/abductor_ship) +"qj" = (/obj/machinery/abductor/experiment{team = 1},/turf/open/floor/plating/abductor,/area/abductor_ship) +"qk" = (/obj/effect/landmark/abductor/console,/turf/open/floor/plating/abductor,/area/abductor_ship) +"ql" = (/obj/machinery/abductor/pad{team = 1},/turf/open/floor/plating/abductor,/area/abductor_ship) +"qm" = (/turf/closed/indestructible/abductor{icon_state = "alien18"},/area/abductor_ship) +"qn" = (/turf/closed/indestructible/abductor{icon_state = "alien19"},/area/abductor_ship) +"qo" = (/obj/machinery/abductor/experiment{team = 4},/turf/open/floor/plating/abductor,/area/abductor_ship) +"qp" = (/obj/effect/landmark/abductor/console{team = 4},/turf/open/floor/plating/abductor,/area/abductor_ship) +"qq" = (/obj/machinery/abductor/pad{team = 4},/turf/open/floor/plating/abductor,/area/abductor_ship) +"qr" = (/turf/closed/indestructible/riveted,/area/hades) +"qs" = (/turf/closed/indestructible/abductor{icon_state = "alien14"},/area/abductor_ship) +"qt" = (/obj/machinery/computer/camera_advanced/abductor{team = 1},/turf/open/floor/plating/abductor,/area/abductor_ship) +"qu" = (/turf/open/floor/plating/abductor,/area/abductor_ship) +"qv" = (/obj/structure/closet/abductor,/turf/open/floor/plating/abductor,/area/abductor_ship) +"qw" = (/turf/closed/indestructible/abductor{icon_state = "alien15"},/area/abductor_ship) +"qx" = (/obj/machinery/computer/camera_advanced/abductor{team = 4},/turf/open/floor/plating/abductor,/area/abductor_ship) +"qy" = (/obj/structure/bookcase/random/religion,/turf/open/floor/plasteel/hades,/area/hades) +"qz" = (/turf/closed/indestructible/abductor{icon_state = "alien12"},/area/abductor_ship) +"qA" = (/obj/item/weapon/retractor/alien,/obj/item/weapon/hemostat/alien,/obj/structure/table/abductor,/turf/open/floor/plating/abductor,/area/abductor_ship) +"qB" = (/obj/effect/landmark/abductor/scientist,/turf/open/floor/plating/abductor,/area/abductor_ship) +"qC" = (/obj/structure/table/optable/abductor,/turf/open/floor/plating/abductor,/area/abductor_ship) +"qD" = (/obj/effect/landmark/abductor/agent,/turf/open/floor/plating/abductor,/area/abductor_ship) +"qE" = (/obj/structure/table/abductor,/obj/item/weapon/storage/box/alienhandcuffs,/turf/open/floor/plating/abductor,/area/abductor_ship) +"qF" = (/turf/closed/indestructible/abductor{icon_state = "alien13"},/area/abductor_ship) +"qG" = (/obj/effect/landmark/abductor/scientist{team = 4},/turf/open/floor/plating/abductor,/area/abductor_ship) +"qH" = (/obj/effect/landmark/abductor/agent{team = 4},/turf/open/floor/plating/abductor,/area/abductor_ship) +"qI" = (/obj/structure/piano,/turf/open/floor/plasteel/hades,/area/hades) +"qJ" = (/obj/effect/gibspawner/human,/turf/open/floor/plasteel/hades,/area/hades) +"qK" = (/turf/open/floor/plasteel/hades,/area/hades) +"qL" = (/turf/closed/indestructible/abductor{icon_state = "alien10"},/area/abductor_ship) +"qM" = (/obj/item/weapon/surgical_drapes,/obj/item/weapon/paper/abductor,/obj/item/weapon/scalpel/alien,/obj/structure/table/abductor,/obj/item/weapon/cautery/alien,/turf/open/floor/plating/abductor,/area/abductor_ship) +"qN" = (/turf/closed/indestructible/abductor{icon_state = "alien11"},/area/abductor_ship) +"qO" = (/obj/structure/window/fulltile,/turf/open/floor/plasteel/hades,/area/hades) +"qP" = (/obj/structure/window/reinforced,/turf/open/floor/plasteel/hades,/area/hades) +"qQ" = (/obj/effect/gibspawner/human,/mob/living/simple_animal/hostile/hadesacolyte,/turf/open/floor/plasteel/hades,/area/hades) +"qR" = (/mob/living/simple_animal/hostile/hadesacolyte,/turf/open/floor/plasteel/hades,/area/hades) +"qS" = (/turf/closed/indestructible/abductor{icon_state = "alien6"},/area/abductor_ship) +"qT" = (/turf/closed/indestructible/abductor{icon_state = "alien7"},/area/abductor_ship) +"qU" = (/obj/machinery/abductor/gland_dispenser,/turf/open/floor/plating/abductor,/area/abductor_ship) +"qV" = (/obj/structure/table/abductor,/obj/item/weapon/surgicaldrill/alien,/obj/item/weapon/circular_saw/alien,/turf/open/floor/plating/abductor,/area/abductor_ship) +"qW" = (/obj/structure/bed/abductor,/turf/open/floor/plating/abductor,/area/abductor_ship) +"qX" = (/turf/closed/indestructible/abductor{icon_state = "alien8"},/area/abductor_ship) +"qY" = (/turf/closed/indestructible/abductor{icon_state = "alien9"},/area/abductor_ship) +"qZ" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/fulltile,/turf/open/floor/plasteel/hades,/area/hades) +"ra" = (/obj/structure/table/reinforced/brass,/obj/item/candle/infinite,/turf/open/floor/plasteel/hades,/area/hades) +"rb" = (/obj/structure/table/reinforced/brass,/obj/item/candle/infinite,/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plasteel/hades,/area/hades) +"rc" = (/obj/structure/table/reinforced/brass,/turf/open/floor/plasteel/hades,/area/hades) +"rd" = (/obj/structure/table/reinforced/brass,/obj/item/candle/infinite,/obj/structure/window/reinforced{dir = 8},/turf/open/floor/plasteel/hades,/area/hades) +"re" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/fulltile,/turf/open/floor/plasteel/hades,/area/hades) +"rf" = (/turf/closed/indestructible/abductor,/area/abductor_ship) +"rg" = (/turf/closed/indestructible/abductor{icon_state = "alien2"},/area/abductor_ship) +"rh" = (/turf/closed/indestructible/abductor{icon_state = "alien3"},/area/abductor_ship) +"ri" = (/turf/closed/indestructible/abductor{icon_state = "alien4"},/area/abductor_ship) +"rj" = (/turf/closed/indestructible/abductor{icon_state = "alien5"},/area/abductor_ship) +"rk" = (/turf/open/floor/carpet,/area/hades) +"rl" = (/obj/structure/chair/wood/normal{icon_state = "wooden_chair"; dir = 1},/mob/living/simple_animal/hostile/hadesacolyte,/turf/open/floor/plasteel/hades,/area/hades) +"rm" = (/obj/structure/chair/wood/normal{icon_state = "wooden_chair"; dir = 1},/turf/open/floor/plasteel/hades,/area/hades) +"rn" = (/obj/effect/gibspawner/human,/turf/open/floor/carpet,/area/hades) +"ro" = (/obj/machinery/abductor/experiment{team = 2},/turf/open/floor/plating/abductor,/area/abductor_ship) +"rp" = (/obj/effect/landmark/abductor/console{team = 2},/turf/open/floor/plating/abductor,/area/abductor_ship) +"rq" = (/obj/machinery/abductor/pad{team = 2},/turf/open/floor/plating/abductor,/area/abductor_ship) +"rr" = (/obj/machinery/abductor/experiment{team = 3},/turf/open/floor/plating/abductor,/area/abductor_ship) +"rs" = (/obj/effect/landmark/abductor/console{team = 3},/turf/open/floor/plating/abductor,/area/abductor_ship) +"rt" = (/obj/machinery/abductor/pad{team = 3},/turf/open/floor/plating/abductor,/area/abductor_ship) +"ru" = (/obj/machinery/computer/camera_advanced/abductor{team = 2},/turf/open/floor/plating/abductor,/area/abductor_ship) +"rv" = (/obj/machinery/computer/camera_advanced/abductor{team = 3},/turf/open/floor/plating/abductor,/area/abductor_ship) +"rw" = (/obj/effect/landmark/abductor/scientist{team = 2},/turf/open/floor/plating/abductor,/area/abductor_ship) +"rx" = (/obj/effect/landmark/abductor/agent{team = 2},/turf/open/floor/plating/abductor,/area/abductor_ship) +"ry" = (/obj/effect/landmark/abductor/scientist{team = 3},/turf/open/floor/plating/abductor,/area/abductor_ship) +"rz" = (/obj/effect/landmark/abductor/agent{team = 3},/turf/open/floor/plating/abductor,/area/abductor_ship) +"rA" = (/obj/effect/landmark/event_spawn,/turf/open/floor/carpet,/area/hades) +"rB" = (/obj/structure/dresser,/turf/open/floor/carpet,/area/hades) +"rC" = (/obj/structure/table/wood,/obj/item/trash/candle,/turf/open/floor/carpet,/area/hades) +"rD" = (/obj/structure/flora/grass/green,/turf/open/floor/grass,/area/hades) +"rE" = (/obj/structure/flora/ausbushes/ppflowers,/turf/open/floor/grass,/area/hades) +"rF" = (/obj/structure/flora/ausbushes/palebush,/turf/open/floor/grass,/area/hades) +"rG" = (/obj/structure/flora/ausbushes/ywflowers,/turf/open/floor/grass,/area/hades) +"rH" = (/obj/structure/bookcase/random/nonfiction,/turf/open/floor/carpet,/area/hades) +"rI" = (/obj/structure/bookcase/random/fiction,/turf/open/floor/carpet,/area/hades) +"rJ" = (/obj/structure/bookcase/random/adult,/turf/open/floor/carpet,/area/hades) +"rK" = (/obj/structure/bookcase/random/religion,/turf/open/floor/carpet,/area/hades) +"rL" = (/obj/structure/kitchenspike,/turf/open/floor/mineral/diamond,/area/hades) +"rM" = (/mob/living/simple_animal/hostile/hadesacolyte,/turf/open/floor/mineral/gold,/area/hades) +"rN" = (/turf/open/floor/mineral/gold,/area/hades) +"rO" = (/obj/structure/table/wood,/turf/open/floor/carpet,/area/hades) +"rP" = (/obj/structure/flora/ausbushes/grassybush,/turf/open/floor/grass,/area/hades) +"rQ" = (/obj/structure/flora/ausbushes/stalkybush,/turf/open/floor/grass,/area/hades) +"rR" = (/obj/structure/flora/ausbushes/genericbush,/turf/open/floor/grass,/area/hades) +"rS" = (/obj/structure/bookcase/random/reference,/turf/open/floor/carpet,/area/hades) +"rT" = (/obj/structure/closet/cabinet,/turf/open/floor/carpet,/area/hades) +"rU" = (/obj/structure/table/wood,/obj/item/weapon/paper/hades_instructions,/turf/open/floor/carpet,/area/hades) +"rV" = (/obj/structure/flora/ausbushes/fernybush,/turf/open/floor/grass,/area/hades) +"rW" = (/obj/structure/bed,/obj/item/weapon/bedsheet/black,/turf/open/floor/carpet,/area/hades) +"rX" = (/mob/living/simple_animal/hostile/hadesacolyte,/turf/open/floor/carpet,/area/hades) +"rY" = (/obj/structure/table/wood,/obj/item/weapon/storage/box/matches,/turf/open/floor/carpet,/area/hades) +"rZ" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plasteel,/area/hades) +"sa" = (/obj/machinery/door/airlock/wood,/turf/open/floor/plasteel/hades,/area/hades) +"sb" = (/obj/structure/table/wood,/obj/item/weapon/lipstick,/turf/open/floor/carpet,/area/hades) +"sc" = (/obj/structure/table/wood,/obj/item/weapon/storage/fancy/candle_box,/turf/open/floor/carpet,/area/hades) +"sd" = (/obj/structure/chair/wood/normal{icon_state = "wooden_chair"; dir = 4},/turf/open/floor/carpet,/area/hades) +"se" = (/obj/structure/chair/wood/normal{icon_state = "wooden_chair"; dir = 8},/turf/open/floor/carpet,/area/hades) +"sf" = (/obj/structure/table/wood,/obj/item/weapon/storage/crayons,/turf/open/floor/carpet,/area/hades) +"sg" = (/obj/structure/table/wood,/obj/item/weapon/razor,/turf/open/floor/carpet,/area/hades) +"sh" = (/obj/machinery/door/airlock/wood,/turf/open/floor/carpet,/area/hades) +"si" = (/obj/structure/chair/hades,/turf/open/floor/mineral/diamond,/area/hades) +"sj" = (/obj/machinery/vending/cola,/turf/open/floor/carpet,/area/hades) +"sk" = (/obj/machinery/vending/snack,/turf/open/floor/carpet,/area/hades) +"sl" = (/obj/structure/table/wood,/obj/machinery/chem_dispenser/drinks/beer,/turf/open/floor/carpet,/area/hades) +"sm" = (/obj/structure/table/wood,/obj/machinery/microwave,/turf/open/floor/carpet,/area/hades) +"sn" = (/obj/structure/table/wood,/obj/item/weapon/storage/box/donkpockets,/turf/open/floor/carpet,/area/hades) +"so" = (/obj/machinery/chem_dispenser/drinks,/obj/structure/table/wood,/turf/open/floor/carpet,/area/hades) +"sp" = (/obj/structure/chair/wood/normal,/mob/living/simple_animal/hostile/hadesacolyte,/turf/open/floor/carpet,/area/hades) +"sq" = (/obj/structure/table/wood,/turf/open/floor/carpet,/area/syndicate_mothership) +"sr" = (/obj/structure/table/wood,/obj/structure/table/wood,/turf/open/floor/carpet,/area/hades) +"ss" = (/obj/structure/table/wood,/obj/item/weapon/storage/box/drinkingglasses,/turf/open/floor/carpet,/area/hades) +"st" = (/obj/structure/lattice,/turf/open/space,/area/space) (1,1,1) = {" -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabacacacacacabacacacacacabacacacacacabacacacacacabacacacacacabacacacacacabacacacacacab -aaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeafafafafafagahaiajakalagamanaoaoapagaqaqaqaqaqagarararararagasasasasasagatauauauavaw -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeafaxayayafagahaiajazaAagaBaoaCaCaoagaqaDaqaDaqagarararararagasaEasaEasagaFaGaGaGaHaw -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeafafafaIafagahaiajazaJagaoaKaLaMaNagaqaqaqaqaqagarararararagasasasasasagaFaGaGaGaHaw -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeafafafaOafagahaiajakakagaoaoaPaPaoagaqaqaqaqaqagarararararagasasaEasasagaFaGaGaGaHaw -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeafaQafafafagahaiajazaJagaRaSaoaoaSagaqaqaDaqaqagarararararagasasasasasagaFaGaGaGaHaw -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeafaTafaUaxagahaiajazaJagaRaVaWaXaVagaqaqaDaqaqagarararararagasasasasasagaYaGaGaGaZaw -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeafaIafafafagahaiajakakagaRbabbbbbbagaqaqaqaqaqagarararararagasasaEasasagaYaGaGaGaZaw -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeafafafafafagahaiajazaJagaRbcbbbbbdagaqaqaqaqaqagarararararagasasasasasagaYaGaGaGaZaw -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeafayayaIafagahaiajazaAagaRbcbbbbbdagaqaDaqaDaqagarararararagasaEasaEasagaYaGaGaGaZaw -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeafafafafafagahaiajakbeagaRbfbgbgbhagaqaqaqaqaqagarararararagasasasasasagbibjbjbjbkaw -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabblblblblblabblblblblblabblblblblblabblblblblblabblblblblblabblblblblblabblblblblblab -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaebmbmbmbmbmagbnbobnbpbnagbqbrbsbtbuagbvbvbwbxbxagbybybybybyagbzbAbAbAbBagbCbDbDbDbEaw -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaebmbmbmbmbmagbpbFbGbHbnagbIbJbJbJbKagbLbLbMbNbNagbybObybPbyagbQbQbQbQbQagbRbSbSbSbTaw -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaebmbmbmbmbmagbFbUbVbWbFagbXbYbZcacbagbLccccccbNagbycdbycdbyagbQbQbQbQbQagbRcececebTaw -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaebmbmbmbmbmagcfbncgchcfagbJbJciciciagbLbMbMbMbNagbybybybybyagbQbQbQbQbQagbRbSbSbSbTaw -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaebmbmcjbmbmagbFbnbnbnbnagckclcmbJcnagcocpcpcpcqagbycrbybybyagcscscscscsagctcucucucvaw -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaebmbmcwcxbmagbnbGbnbobFagcyczcAbJcBagcCcDcDcDcEagbybybycFbyagcGcGcGcGcGagcHcIcIcIcJaw -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaebmbmbmbmbmagcfcKbUcLbnagbJbJbJbJbJagcMbMcNbMcOagbybybybybyagbQbQbQbQbQagcPbSbSbScQaw -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaebmbmbmbmbmagbFcRcScTcUagcVcWcXbJbJagcMcYcYcYcOagcZdadbcZcZagbQbQbQbQbQagcPdcdcdccQaw -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaebmbmbmbmbmagbocRcTcRddagdedfdgdhclagcMcMbMcOcOagdididididiagbQbQbQbQbQagcPbSbSbScQaw -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaebmbmbmbmbmagbncfbnbpbnagdjdkdldmdnagdododpdqdqagdrdrdrdrdragdsdtdtdtduagdvdwdwdwdxaw -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabblblblblblabblblblblblabacacacacacabblblblblblabblblblblblabblblblblblabblblblblblab -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaedydydydydyagdzdzdzdzdzagdAdBdCdDdEagdFdGdGdGdFagdHdIdJdKdLagdMdNdNdNdOagdPdQdRdSdTag -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaedydUdUdUdyagdVdWdXdYdVagdZdZeadZdZagebecedeeefagegeheiejekagelemememenagdPeoepeqdTag -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaedydUdUdUdyageresereserageteueueuevagewexeyexezageAeBeCeDeEageleFememenagdPeGeHeIdTag -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaedydyeJdydyageKeLeKeLeKageMeNeOePeMagexexexexexageQeQeQeQeQagelemememenagdPeReSeTdTag -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaedydUdUdUdyageLeKeLeKeLageUeUeUeUeUageVeWexeXeYageZfaeQeZfaagelemememenagdPeReSeTdTag -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaedydUdUdUdyageKeLeKeLeKageUeUeUeUeUagfbeWexeXfcagfdfeeQfdfeagfffgememenagdPeReSeTdTag -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaedydyeJdydyageLeKeLeKeLageUeUeUeUeUagexfhfhfhexageZfaeQeZfaagffemememenagdPeReSeTdTag -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaedydUdUdUdyagfifjfifjfiagfkfkflfkfkagfmfnfofpfqagfdfeeQfdfeagffememfrenagdPfsftfudTag -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaedydUdUdUdyagfvfwfxfyfvagdZdZdZdZdZagfzfAfAfAfzageZfaeQeZfaagffemememenagdPfBfBfBdTag -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaedydydydydyagfCfCfCfCfCagfDfDfDfDfDagfEfFfFfFfGageDeBeQeDeBagfHfIfIfIfJagdPfKfLfMdTag -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabfNfNfNfNfNabfNfNfNfNfNabfNfNfNfNfNabfNfNfNfNfNabfNfNfNfNfNabfNfNfNfNfNabfNfNfNfNfNab -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafOfOfOfOfOfOfOfOfOfPfQfQfQfQfQfQfQfQfQfQfQfQfQfPfOfOfOfOfOfOfOfOfO -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafOfRfSabababababfTfUfQfQfQfQfQfQfQfQfQfQfQfQfQfVfTabababababfSfWfO -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafOfRfSabababababfTfUfQfQfQfQfQfQfQfQfQfQfQfQfQfVfTabababababfSfWfO -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafOfRfSabababababfTfUfQfQfQfQfQfXfYfXfQfQfQfQfQfVfTabababababfSfWfO -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafOfRfSabababababfTfUfQfQfQfQfQfXfXfXfQfQfQfQfQfVfTabababababfSfWfO -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafOfRfSabababababfTfUfQfQfQfQfQfQfQfQfQfQfQfQfQfVfTabababababfSfWfO -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafOfRfSabababababfTfUfQfQfQfQfQfQfQfQfQfQfQfQfQfVfTabababababfSfWfO -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafOfOfOfZfZfZfZfZfOfPfQfQfQfQfQfQfQfQfQfQfQfQfQfPfOfZfZfZfZfZfOfOfO -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafOgagagagagafOabababababababababababababababfOgbgbgbgbgbfOaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafOfOfOfOfOfOfOaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafOfOfOfOfOfOfOaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -gcgcgcgcgcgcgcgcgcgcgcgcgcgcgcaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -gcgcgcgcgcgcgcgcgcgcgcgcgcgcgcaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -gcgcgcgcgcgcgcgcgcgcgcgcgcgcgcaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -gcgcgcgcgcgcgcgcgcgcgcgcgcgcgcaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -gcgcgcgcgcgcgcgcgcgcgcgcgcgcgcaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -gcgcgcgcgcgcgcgcgcgcgcgcgcgcgcaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -gcgcgcgcgcgcgcgcgcgcgcgcgcgcgcaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -gcgcgcgcgcgcgcgdgcgcgcgcgcgcgcaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -gcgcgcgcgcgcgcgcgcgcgcgcgcgcgcaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -gcgcgcgcgcgcgcgcgcgcgcgcgcgcgcaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegeaa -gcgcgcgcgcgcgcgcgcgcgcgcgcgcgcaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagegfggggggggggghgegfggggggghgegfggggggghgegfggggggghgegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegigjgjgjgkgegigjgjgjgkgegigjgjgjgkgegigjgjgjgjgjgkgeaa -gcgcgcgcgcgcgcgcgcgcgcgcgcgcgcaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaageglgmgmgmgmgmgngoglgpgqgpgngoglgpgqgpgngoglgpgqgpgngrgrgrgrgrgsgsgrgrgrgrgrgrgtgrgrgrgrgrgrgrgrgrgtgrgrgrgrgrgrgrgtgrgrgrgrgrgrgrgrgrgtgrgrgrgrgrgrgsgsgrgrgrgrgrgugmgvgmgwgxgugmgvgmgwgxgugmgvgmgwgxgugmgmgmgmgmgwgeaa -gcgcgcgcgcgcgcgcgcgcgcgcgcgcgcaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaageglgmgygygygmgngoglgpgqgqgngoglgqgqgqgngoglgqgqgpgngrgrgrgrgrgrgrgrgrgrgrgrgrgrgrgrgrgrgsgrgrgrgrgrgrgrgrgsgrgrgrgrgrgrgrgrgsgrgrgrgrgrgrgrgrgrgrgrgrgrgrgrgrgrgrgugmgvgvgwgxgugvgvgvgwgxgugvgvgmgwgxgugmgygygygmgwgeaa -gcgcgcgcgcgcgcgcgcgcgcgcgcgcgcaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaageglgmgmgmgmgmgngoglgpgqgpgngoglgpgqgpgngoglgpgqgpgngrgrgrgrgrgsgsgrgrgrgrgrgrgtgrgrgrgrgrgrgrgrgrgtgrgrgrgrgrgrgrgtgrgrgrgrgrgrgrgrgrgtgrgrgrgrgrgrgsgsgrgrgrgrgrgugmgvgmgwgxgugmgvgmgwgxgugmgvgmgwgxgugmgmgmgmgmgwgeaa -gzgcgcgcgcgcgcgcgcgcgcgcgcgcgcaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaageglgmgygygygmgngegAgBgBgBgCgegAgBgBgBgCgegAgBgBgBgCgegmgmgmgegegegegmgmgmgegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegDgEgEgEgFgegDgEgEgEgFgegDgEgEgEgFgegugmgygygygmgwgeaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaageglgmgmgmgmgmgngegegogogogegegegGgGgGgegegegogogogegegHgHgHgegegegegHgHgHgegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegxgxgxgegegegGgGgGgegegegxgxgxgegegugmgmgmgmgmgwgeaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaageglgmgygygygmgngegfggggggghgegfggggggghgegfggggggghgegIgJgKgKgLgJgKgKgLgJgKgKgLgJgKgKgLgJgKgMgegegNgegegegNgegegegNgegegegegNgegegegegNgegegegNgegegegNgegegegegegigjgjgjgkgegigjgjgjgkgegigjgjgjgkgegugmgygygygmgwgeaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaageglgmgmgmgmgmgngoglgpgqgpgngoglgpgqgpgngoglgpgqgpgngOgPgpgQgmgRgpgQgmgRgpgQgmgRgpgQgmgRgqgQgOgegegSgegegegSgegegegSgegegegegSgegegegegSgegegegSgegegegSgegegegegegugmgvgmgwgxgugmgvgmgwgxgugmgvgmgwgxgugmgmgmgmgmgwgeaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaageglgmgygygygmgngoglgpgqgqgngoglgqgqgqgngoglgqgqgpgngOgTgngpgmgmgngpgmgmgngpgmgmgngpgmgmgqgpgOgUgVgVgVgVgVgVgVgVgVgVgVgVgVgVgVgVgVgVgVgVgVgVgVgVgVgVgVgVgVgVgVgVgWgugmgvgvgwgxgugvgvgvgwgxgugvgvgmgwgxgugmgygygygmgwgeaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaageglgmgmgmgmgmgngoglgpgqgpgngoglgpgqgpgngoglgpgqgpgngOgXgpgYgmgZgpgYgmgZgpgYgmgZgpgYgmgZgqgYgOgegehagegGgehagegGgehagegegGgehagegGgegehagegGgehagegGgehagegegGgegegugmgvgmgwgxgugmgvgmgwgxgugmgvgmgwgxgugmgmgmgmgmgwgeaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagegAgBgBgBgBgBgCgegAgBgBgBgCgegAgBgBgBgCgegAgBgBgBgCgehbhcgHgHhdhcgHgHhdhcgHgHhdhcgHgHhdhcgHhegegehfgegGgehfgegGgehfgegegGgehfgegGgegehfgegGgehfgegGgehfgegegGgegegDgEgEgEgFgegDgEgEgEgFgegDgEgEgEgFgegDgEgEgEgEgEgFgeaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagehggegegegegehggegegogogogegegegpgpgpgegegegegVgegegegegKgegegegegegqgqgqgegegegegehhhihihihjgegegGgegGgegGgegGgegGgegegGgegGgegGgegegGgegGgegGgegGgegGgegegGgegegegegVgegegegehkhkhkgegegegxgxgxgegehlgegegegegehlgeaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalZlZlZlZlZlZlZlZlZlZlZlZlZlZlZlZlZlZlZlZlZlZlZlZlZlZlZlZlZlZlZlZlZlZlZlZlZlZlZlZlZlZlZlZlZlZlZlZlZlZlZlZlZlZlZlZlZlZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagegpgpgpgpgpgpgpgegfggggggghgegpgpgpgpgpgegegegVgegegegegmgtgtgtgtgtgtgtgtgtgtgtgtgthmhnhnhnhogtgtgtgtgtgtgtgtgtgtgtgtgtgmgegegegmgtgtgtgtgtgtgtgtgtgtgtgtgtgmgegegegegVgegegehkhkhkhkhkgegigjgjgjgkgehkhkhkhkhkhkhkgeaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalZmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjlZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagegpgqgqgqgqgqgphgglgpgqgpgngegpgmgmgmgpgegegegVgegegegegmgegGgGgGgegqgqgqgegGgGgGgehphqhqhqhrgegGgGgGgehshshsgegGgGgGgegmgegegegmgegGgGgGgegvgvgvgegGgGgGgegmgegegegegVgegegehkgmgmgmhkgegugmgvgmgwhthkgvgvgvgvgvhkgeaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalZmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjlZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagegpgqgpgpgpgqgphgglgqgqgqgngegpgegqgegpgegVgVgVgVgVgVgmgmgmgmgmgmgmgmgmgmgmgmgmgmgmhuhvhvhvhwhxhxhxhxhxhxhxhxhxhxhxhxhxhyhzhzhzhAgmgmgmgmgmgmgmgmgmgmgmgmgmgmgmgVgVgVgVgVgVgehkgegvgehkgegugvgvgvgwhthkgvhkhkhkgvhkgeaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalZmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjlZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagegpgqgpgpgpgqgphgglgpgqgpgngegpgmgmgmgpgegegegVgegGgegmgmgmhnhnhnhnhnhnhnhnhnhnhngmhBgpgpgpgnhChChChChCgehCgehChChChChCguhkhkhkhDgmhEhEhEhEhEhEhEhEhEhEhEgmgmgmgegGgegVgegegehkgmgmgmhkgegugmgvgmgwhthkgvhkhkhkgvhkgeaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalZmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjlZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagegpgpgpgpgpgpgpgegAgBgBgBgCgegpgpgpgpgpgegegegVgGgGgGgmgmgmgmgmgmgmgmgmgmgmgmgmgmgmhBgpgqgpgnhChChChChChCgehChChChChChCguhkgvhkhDgmgmgmgmgmgmgmgmgmgmgmgmgmgmgmgGgGgGgVgegegehkhkhkhkhkgegDgEgEgEgFgehkhkhkhkhkhkhkgeaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalZmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjlZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagegegogogogogogegegegegegegegegegpgpgpgegegegegegegGgegmgmgegpgogpgegGgGgGgegpgogpgehBgpgpgpgngehChngqhChChChChCgvhEhCgeguhkhkhkhDgehkgxhkgegGgGgGgehkgxhkgegmgmgegGgegegegegegehkhkhkgegegegegegegegegehkhkhkhkhkgegeaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalZmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjlZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagegpgpgpgpgpgpgpgegpgpgpgpgpgegpgpgpgpgpgegpgpgpgpgpgegmgmgegogpgogqhnhnhngqgogpgogehBgpgegpgngehChChngqhChChCgvhEhChCgeguhkgehkhDgegxhkgxgvhEhEhEgvgxhkgxgegmgmgehkhkhkhkhkgehkhkhkhkhkgehkhkhkhkhkgehkhkhkhkhkhkhkgeaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalZmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjlZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagegpgpgphFgpgpgpgegpgmgegmgpgpgpgqhFgqgpgpgpgmgegmgpgpgmgmgGgpgogphnhnhnhnhngpgogpgehBgpgqgpgngehnhChChngqhCgvhEhChChEgeguhkgvhkhDgehkgxhkhEhEhEhEhEhkgxhkgGgmgmhkhkgmgegmhkhkhkgvhFgvhkhkhkgmgegmhkgehkhkhkhFhkhkhkgeaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalZmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjlZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagegpgphFhGhFgpgpgegpgmgqgmgpgpgphFhHhFgpgpgpgmgqgmgpgpgmgmgGgogpgohnhngqhnhngogpgogehBgpgqgpgngegqhnhChChnhChEhChChEgvgeguhkgvhkhDgegxhkgxhEhEgvhEhEgxhkgxgGgmgmhkhkgmgvgmhkhkhkhFhIhFhkhkhkgmgvgmhkgehkhkhFhJhFhkhkgeaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalZmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjlZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagegpgpgphFgpgpgpgegpgmgegmgpgpgpgqhFgqgpgpgpgmgegmgpgpgmgmgGgpgogphnhnhnhnhngpgogpgehBgpgqgpgngehnhChChngqhCgvhEhChChEgeguhkgvhkhDgehkgxhkhEhEhEhEhEhkgxhkgGgmgmhkhkgmgegmhkhkhkgvhFgvhkhkhkgmgegmhkgehkhkhkhFhkhkhkgeaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalZmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjlZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagegpgpgpgpgpgpgpgegpgpgpgpgpgegpgpgpgpgpgegpgpgpgpgpgegmgmgegogpgogqhnhnhngqgogpgogehBgpgegpgngehChChngqhChChCgvhEhChCgeguhkgehkhDgegxhkgxgvhEhEhEgvgxhkgxgegmgmgehkhkhkhkhkgehkhkhkhkhkgehkhkhkhkhkgehkhkhkhkhkhkhkgeaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalZmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjlZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahKaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagegegogogogogogegegegegegegegegegpgpgpgegegegegegegGgegmgmgegpgogpgegGgGgGgegpgogpgehBgpgpgpgngehChngqhChChChChCgvhEhCgeguhkhkhkhDgehkgxhkgegGgGgGgehkgxhkgegmgmgegGgegegegegegehkhkhkgegegegegegegegegehkhkhkhkhkgegeaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalZmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjlZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagegpgpgpgpgpgpgpgegfggggggghgegpgpgpgpgpgegegegVgGgGgGgmgmgmgmgmgmgmgmgmgmgmgmgmgmgmhBgpgqgpgnhChChChChChCgehChChChChChCguhkgvhkhDgmgmgmgmgmgmgmgmgmgmgmgmgmgmgmgGgGgGgVgegegehkhkhkhkhkgegigjgjgjgkgehkhkhkhkhkhkhkgeaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalZmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjlZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagegpgqgpgpgpgqgphgglgmgqgmgngegpgmgmgmgpgegegegVgegGgegmgmgmhnhnhnhnhnhnhnhnhnhnhngmhBgpgpgpgnhChChChChCgehCgehChChChChCguhkhkhkhDgmhEhEhEhEhEhEhEhEhEhEhEgmgmgmgegGgegVgegegehkgmgmgmhkgeguhkgvhkgwhthkgvhkhkhkgvhkgeaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalZmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjlZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagegpgqgpgpgpgqgphgglgqgqgqgngegpgegqgegpgegVgVgVgVgVgVgmgmgmgmgmgmgmgmgmgmgmgmgmgmgmhLhMhMhMhNhOhOhOhOhOhOhOhOhOhOhOhOhOhPhQhQhQhRgmgmgmgmgmgmgmgmgmgmgmgmgmgmgmgVgVgVgVgVgVgehkgegvgehkgegugvgvgvgwhthkgvhkhkhkgvhkgeaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalZmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjlZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagegpgqgqgqgqgqgphgglgmgqgmgngegpgmgmgmgpgegegegVgegegegegmgegGgGgGgegqgqgqgegGgGgGgegmgegegegmgegGgGgGgehshshsgegGgGgGgehYhZhZhZiagegGgGgGgegvgvgvgegGgGgGgegmgegegegegVgegegehkgmgmgmhkgeguhkgvhkgwhthkgvgvgvgvgvhkgeaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalZmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjlZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagegpgpgpgpgpgpgpgegAgBgBgBgCgegpgpgpgpgpgegegegVgegegegegmgtgtgtgtgtgtgtgtgtgtgtgtgtgmgegegegmgtgtgtgtgtgtgtgtgtgtgtgtgtifhEhEhEiggtgtgtgtgtgtgtgtgtgtgtgtgtgmgegegegegVgegegehkhkhkhkhkgegDgEgEgEgFgehkhkhkhkhkhkhkgeaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalZmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjlZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagehggegegegegehggegegogogogegegegpgpgpgegegegegVgegegegegGgegegGgegGgegGgegGgegGgegegGgegegegGgegegGgegGgegGgegGgegGgegeipiqiqiqirgegegegegegvgvgvgegegegegegHgegegegegVgegegegehkhkhkgegegegxgxgxgegehlgegegegegehlgeaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalZmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjlZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagegfggggggggggghgegfggggggghgegfggggggghgegfggggggghgegegGgegegNgegGgegNgegGgegNgegegGgegNgegGgegegNgegGgegNgegGgegNgegeitgKiuivgKgKiuivgKgKiuivgKgKiuivgKgKiuiwgegigjgjgjgkgegigjgjgjgkgegigjgjgjgkgegigjgjgjgjgjgkgeaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalZmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjlZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaageglgmgmgmgmgmgngoglgmgqgmgngoglgmgqgmgngoglgmgqgmgngegegGgegegSgegGgegSgegGgegSgegegGgegSgegGgegegSgegGgegSgegGgegSgegegTixgviygmixhkiygmixhkiygmixhkiygmixhkizgTgugmgvgmgwgxgugmgvgmgwgxgugmgvgmgwgxgugmgmgmgmgmgwgeaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalZmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjlZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaageglgmgygygygmgngoglgmgqgqgngoglgqgqgqgngoglgqgqgmgngUgVgVgVgVgVgVgVgVgVgVgVgVgVgVgVgVgVgVgVgVgVgVgVgVgVgVgVgVgVgVgVgVgWgThkgvgmgmhkgugmgmhkgugmgmhkgugmgmhkgugOgTgugmgvgvgwgxgugvgvgvgwgxgugvgvgmgwgxgugmgygygygmgwgeaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalZmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjlZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaageglgmgmgmgmgmgngoglgmgqgmgngoglgmgqgmgngoglgmgqgmgngegegegegehagegegehagegegehagegegegehagegegegehagegegehagegegehagegegTiKgviLgmiKhkiLgmiKhkiLgmiKhkiLgmiKhkiMgTgugmgvgmgwgxgugmgvgmgwgxgugmgvgmgwgxgugmgmgmgmgmgwgeaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalZmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjlZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaageglgmgygygygmgngegAgBgBgBgCgegAgBgBgBgCgegAgBgBgBgCgegegegegehfgegegehfgegegehfgegegegehfgegegegehfgegegehfgegegehfgegeiQgHiRiSgHgHiRiSgHgHiRiSgHgHiRiSgHgHiRiTgegDgEgEgEgFgegDgEgEgEgFgegDgEgEgEgFgegugmgygygygmgwgeaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalZmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjlZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaageglgmgmgmgmgmgngegegogogogegegegGgGgGgegegegogogogegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegKgKgKgegegegegKgKgKgegegxgxgxgegegegGgGgGgegegegxgxgxgegegugmgmgmgmgmgwgeaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalZmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjlZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaageglgmgygygygmgngegfggggggghgegfggggggghgegfggggggghgegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegmgmgmgegegegegmgmgmgegigjgjgjgkgegigjgjgjgkgegigjgjgjgkgegugmgygygygmgwgeaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalZmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjlZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaageglgmgmgmgmgmgngoglgmgqgmgngoglgmgqgmgngoglgmgqgmgngmgrgrgrgrgsgsgrgrgrgrgrgrgtgrgrgrgrgrgrgrgrgrgtgrgrgrgrgrgrgrgtgrgrgrgrgrgrgrgrgrgtgrgrgrgrgrgrgsgsgrgrgrgrgrgugmgvgmgwgxgugmgvgmgwgxgugmgvgmgwgxgugmgmgmgmgmgwgeaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalZmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjlZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaageglgmgygygygmgngoglgmgqgqgngoglgqgqgqgngoglgqgqgmgngmgrgrgrgrgrgrgrgrgrgrgrgrgrgrgrgrgrgsgrgrgrgrgrgrgrgrgsgrgrgrgrgrgrgrgrgsgrgrgrgrgrgrgrgrgrgrgrgrgrgrgrgrgrgrgugmgvgvgwgxgugvgvgvgwgxgugvgvgmgwgxgugmgygygygmgwgeaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalZmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjlZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaageglgmgmgmgmgmgngoglgmgqgmgngoglgmgqgmgngoglgmgqgmgngmgrgrgrgrgsgsgrgrgrgrgrgrgtgrgrgrgrgrgrgrgrgrgtgrgrgrgrgrgrgrgtgrgrgrgrgrgrgrgrgrgtgrgrgrgrgrgrgsgsgrgrgrgrgrgugmgvgmgwgxgugmgvgmgwgxgugmgvgmgwgxgugmgmgmgmgmgwgeaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalZmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjlZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagegAgBgBgBgBgBgCgegAgBgBgBgCgegAgBgBgBgCgegAgBgBgBgCgegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegDgEgEgEgFgegDgEgEgEgFgegDgEgEgEgFgegDgEgEgEgEgEgFgeaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalZmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjlZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegegeaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalZmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjlZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalZmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjlZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalZmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjlZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaajjjkjjjjjjjjjkjjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalZmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjlZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaajqjqjqjqjqjjjrjrjsjsjrjrjjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalZmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjlZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaajqjtjujvjwjxjrjrjsjsjyjzjjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalZmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjlZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaajqjtjqjqjqjjjrjrjsjsjrjAjjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalZmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjlZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaajqjqjqjqjqjBjqjqjqjCjqaaaajjjrjrjsjsjrjrjjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalZmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjlZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaajqjDjEjFjtjtjtjGjHjtjqaaaajjjrjrjrjrjrjrjjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalZmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjlZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaajqjtjtjtjIjtjIjtjtjtjqaaaajjjrjrjsjsjrjrjjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalZmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjlZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaajqjtjtjJjJjJjJjKjtjtjqaaaajjjkjjjjjjjjjkjjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalZmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjlZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaajqjqjqjqjqjqjqjqjtjLjJjMjNjJjtjtjOjqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalZmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjlZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaajqjPjQjRjSjTjTjqjtjtjJjJjJjJjKjtjUjqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalZmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjlZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaajqjVjVjVjVjVjVjWjtjtjXjtjXjtjtjtjYjqjqjqjqjqjZjZjZjZjZjZjZjZjZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalZmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjlZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaajqjVjVjVjVjVjVjWjtjtjtjtjtjtjtjtkakbkckckcjqjZkdjZkdjZkdjZkdjZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalZmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjlZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaajqkekekfkgkhkhjqkikjjtjtjtjtjtjtkakkkcklkcjqjZjZjZjZjZjZjZjZjZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalZmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjlZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaajqjqkmknknkojqjqkmknknkojqjqjqkpjqjqkqkrksjqjZkdjZkdjZkdjZkdjZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalZmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjlZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaktjtjtkakukvkwksjqjZjZjZjZjZjZjZjZjZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalZmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjlZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaakxkyjtjtkakzkAkBkCjqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalZmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjlZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaakDkykEjtjtkajqjqjqjqjqjZjZjZjZjZjZjZjZjZaakFkFkFkFkFkFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalZmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjlZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaakGkHjvkIjtjtkJjqkKkckLjqjZkdjZkdjZkdjZkdjZaakFkMkNkNkOkFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalZmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjlZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaakDkPkIjtjtjtkQkckckRjqjZjZjZjZjZjZjZjZjZaakSkTkTkTkTkFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalZmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjlZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaakUkPjtjtkVjqkckckWjqjZkdjZkdjZkdjZkdjZaakFkTkXkYkZkFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalZmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjlZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalajtjtkajqkclblcjqjZjZjZjZjZjZjZjZjZaakFldlelflgkFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalZmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjlZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaajqjqjqjqjqlhjqjqjqjqjqjqaaaaaaaaaaaaaaaaaaaakFkTkTkTkTkFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalZmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjuamjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjlZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaliljlkljlllmllljlkljliaaaaaakFkFkFkFkFkFkFkFlnlolplqlrkFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalZmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjncubububububububububububububncmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjlZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaliljljljlsltlsljljljliaaaaaakFlulvlvlvlwlxlylzlAlBlBlClDaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalZlZlZlZlZlZlZlZlZmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjncucucucucucucucucucucucucucncmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjlZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalilElilEliltlilElilElilililikFlFlBlBlBlBlBlGlHlAlBlBlClDaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalZmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjncoNoNoNoNoNoNoNoNoNoNoNoNoNncmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjlZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalilIlllJltltltltltlKlLlMlMlNkFlFlBlBlBlBlOlPlQlAlBlBlClDaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaalRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRaaaaaaaalZmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjncncncncncncncoNncncncncncncncmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjlZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalSlSlSlSlSlSlSlIlTlJltltltlUlilElililMlVkFlFlBlBlBlBlWlWlWlXlBlBlClDlYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaalRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRaaaaaaaalZmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjncoNncmjmjmjmjmmmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjlZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalSmambmcmbmdlSlIlslJltltltmelElIlimfmgmhkFmilBlBlBlBlBlBlBlBlBlBlClDaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaalRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRaaaaaaaalZmjmjmjmjmjmjmjmjmjmkmjmjmjmlmmmjmjmjmjmjmlmjmjncoNudmnmlmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjlZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamompmqmqmqmqlSlElimrltltltmslilElilEmtlEkFmulBlBlBlBlBlBlBlBlBlBlClDaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaalRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRaaaaaaaalZmjmjmjmjmkmjmjmjmjmjmjmjmjmjmjmjmlmjmjmjmjmjmjncoNoMmvmjmjmlmjmlmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjlZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamwmpmqmqmqmqmxmyltltltltltltltlKmzlMlMlMmAmBlBlBlBlBlBlBlBlBlBlBlClDaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaalRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRaaaaaaaalZmjmjmjmjmjmjmjmCmjmjmjmjmjmkmjmjmmmjmjmlmjmjmjncoNpcmmmjmlmjmjmmmjmlmjmmmjmjmjmjmjmjmjmjmjmjmjmjlZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamomDmqmqmqmqlSlElimEltltltlUlimFlilililikFmGlBlBlBlBlBlBlBlBlBlBlClDaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaalRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRaaaaaaaalZmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmlmjmjmkmjmjncoNncmjmlmjmmmlmjmmmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjlZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamHmwmpmqmqmqmqlSlIlllJltltltmIlllIliaaaaaakFmJlBlBlBlBlBlBlBlBlBlBlClDaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaalRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRaaaaaaaalZmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmkmjmjmjmjmjmjmjncoNncmmmjmlmjmjmjmlmjmlmjmlmjmjmjmjmjmjmjmjmjmjmjlZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamKmpmqmqmqmqlSlIlTlJltltltmIlTlIliaaaaaakFmLlBlBlBlBmMmMmMmNlBlBlClDaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaalRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRaaaaaaaalZmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmmmjmjmjmjncoNncmmmjmjmjmjmmmjmjmjmmmjmjmjmjmjmjmjmjmjmjmjmjlZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamOmpmqmqmqmqlSlIlsmPmEltlUmQlslIliaaaaaakFmLlBlBlBlBmRmSmTlAlBlBlClDaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaalRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRaaaaaaaalZmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmCmjmjncoNncmjmlmjmlmlmjmmmlmmmjmjmjmjmjmjmjmjmjmjmjmjmjlZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamVmpmqmqmqmqlSmWmWmXmYmZmXmYmWmWmWaaaaaakFmLlBlBlBlBlBnanblAlBlBlClDaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaalRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRaaaaaaaalZmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjncncqrncuencmjmmmlmjmmmlmjmmmjmlmjmjmjmjmjmjmjmjmjmjmjmjlZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalSnfngnhmqmqlSninjnknlnmnnnonpnqmWaaaaaakFnrnsnsnsntnunvnwlAlBlBlClDaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaalRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRaaaaaaaalZmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjncncnxnynKnKncncncncncncqrnclZlZlZlZlZlZlZlZlZlZlZlZlZlZlZlZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalSlSlSlSnzlSlSnAnmnBnlnmnnnBnmnCmWaaaaaakFkFkFkFkFkFkFkFnDlolpnElrkFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaalRlRlRlRlRlRlRlRlRlRlRlRlRlRnFnGnHnInFlRlRlRlRlRlRlRlRlRlRlRlRlRaaaaaaaalZmjmjmjmjmjmUmUmUmUmUmUmUmUmUmjmCmjmjmjncnJnKnKnKnKnLnMnNncnOnPnQncaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalSnRnRnRlSnSnmnBnlnmnnnBnmnTmWaaaaaaaaaaaaaaaaaaaaaakFlBlBlBlBkFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaalRlRlRlRlRlRlRlRlRlRlRlRlRnFnFnUnVnUnFnFlRlRlRlRlRlRlRlRlRlRlRlRaaaaaaaalZmjmjmjmjmjmUmUmUmUmUmUmUmUmUmjmjmjmjmkncnWnKnXnXnYnKnKnKnZoaoaobncncncncncncncncncncncncaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalSnRnRnRlSocnmnBnlnmnnnBnmodmWaaaaaaaaaaaaaaaaaaaaaakFlBoemSmRkFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaalRlRlRlRlRlRlRlRlRlRlRlRlRnFnUnUnUnUnUnFlRlRlRlRlRlRlRlRlRlRlRlRaaaaaaaalZmjmjmjmjmjmjmUmUmUmUmUmUmUmjmjmjmjmjmjncnKnXofognXnKohoincoaojncncokokokolololololokokncaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalSnRnRnRlSomononoonmopoqoqormWaaaaaaaaaaaaaaaaaaaaaakFlBosnaotkFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaalRlRlRlRlRlRlRlRlRlRlRlRlRnFounUnUnUovnFlRlRlRlRlRlRlRlRlRlRlRlRaaaaaaaalZmjmjmjmjmjmjmjmUmUmUmUmUowoxoxoxoxoxnencnKnXoyoznXnKohoAncncncncncokoBoCoDoEoFoEoGoHokncaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalSlSlSlSlSmXoImYmWnmmWmXoImYmWaaaaaaaaaaaaaaaaaaaaaaoJlBlBlBlBkFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaalRlRlRlRlRlRlRlRlRlRlRnFnFnFnFoKoLoKnFnFnFnFlRlRlRlRlRlRlRlRlRlRaaaaaaaalZmjmjmUmUmUmUmUmUmUmUmUmUoMoNoNoNoNoNoNoOnKnKnKnKnKnKohoAncncncncncokoPoDoEoQoRoSoEoGoTncaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamWoUoUoUoVnmoVoUoUoUmWaaaaaaaaaaaaaaaaaaaaaakFoWntntoXkFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaalRlRlRlRlRlRlRlRlRlRnFnFoYoZnFnUnUnUnFpapbnFnFlRlRlRlRlRlRlRlRlRaaaaaaaalZmjmjmUmUmUmUmUmUmUmUmUmUpcpdndoxoxoxnencpenXnXnXnKnKohpfndoxoxoxoxoxoxoEoQoRpgoRoSoEoTncaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamWmWmWmWmWmWmWmWmZmWmWmWmWmWmWmWmWaaaaaaaaaaaaaaaakFkFkFkFkFkFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaalRlRlRlRlRlRlRlRlRnFnFphpiphnFnUnUnUnFpjpkplnFnFlRlRlRlRlRlRlRlRaaaaaaaalZmjmjmUmUmUmUmUmUmUmUmUmUmUpmmUmUmjmjmjncpnpopppopqnKnKnKpdoNoNoNoNoNpdproRoSpsoQoRproTncaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamWptpupupupupuptptptpupupupupuptmWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaalRlRlRlRlRlRlRlRnFnFoZphphphpvnUnUnUpwpapxpapbnFnFlRlRlRlRlRlRlRaaaaaaaalZpymjmUmUmUmUmUmUmUmUmUmUmUmUmUmUmjmjmkncpzpApzpzpBnKnKnKndoxoxoxoxoxoxoEoQoRpCoRoSoEoTncaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaapDptptptpEptptptptptptptpEptptptpDaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaalRlRlRlRlRlRlRlRnFoYpFphphphnFnUnUnUnFpGpapjpHplnFlRlRlRlRlRlRlRaaaaaaaalZmjmjmUmUmUmUmUmUmUmUmUmUmUmUmUmUmjmCmjncncoipIpJpKncpLncncncncncncokoPpMoEoQoRoSoEpNoTncaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamWptpupupupupuptptptpupupupupuptmWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaalRlRlRlRlRlRlRlRnFphphphphpOnFpPnUpQnFpRpSpapxpanFlRlRlRlRlRlRlRaaaaaaaalZmjmjmUmUmUmUmUmUmUmUmUmUmUmUmUmUmUmjmjmjncncncncncncpTpTpUpVpWpXncokpYpZpMoEqaoEpNqbokncaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamWmXoIoIoIoIoIoIoIoIoIoIoIoIoImYmWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaalRlRlRlRlRlRlRnFnFqcnFnFnFnFnFnFqdnFnFnFnFnGnHnInFnFlRlRlRlRlRlRaaaaaaaalZmjmUmUmUmUmUmUmUmUmUmUmUmUmUmUmUmUmUmjmjmjmjmjmCmjncpTpTpTpTpTpTncokokokqeqeqeqeqeokokncaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqfqfqfqfqfqfqfqfqfqgqhqhqhqhqhqhqhqhqhqhqhqhqhqgqfqfqfqfqfqfqfqfqfaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaalRlRlRlRlRlRlRnFqinUnUqinFqjqknUnUnUqlqmnFqnqoqpqqnFlRlRlRlRlRlRaaaaaaaalZmjmUmUmUmUmUmUmUmUmUmUmUmUmUmUmUmUmUmjmjmjmkmjmjmmqrpTpTpTpTpTqsncncncncncncncncncncncncaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqfqtquqvqvqvqvqvqwqxqhqhqhqhqhqhqhqhqhqhqhqhqhqyqwqzqzqzqzqzquqAqfaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaalRlRlRlRlRlRlRqBqCnUnUqCqBnUnUnUnUnUnUqDqBqqqEqFqEnFlRlRlRlRlRlRaaaaaaaalZmjmUmUmUmUmUmUmUmUmUmUmUmUmUmUmUmUmUmjmjmjmCmlmkmCncqGqGqGqGqGqHncaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqfqtquqvqIqvqIqvqwqxqhqhqhqhqhqhqhqhqhqhqhqhqhqyqwqzqJqzqJqzquqAqfaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaalRlRlRlRlRlRlRqKqLnUnUnUqKnUnUnUqMnUnUqNqKqOqoqqqonFlRlRlRlRlRlRaaaaaaaalZmjmUmUmUmUmUmUmUmUmUmUmUmUmUmUmUmUmUmjmjmjmjmjmlmjncncncncncncncncaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqfqtquqvqvqPqvqvqwqxqhqhqhqhqhqQqRqQqhqhqhqhqhqyqwqzqzqSqzqzquqAqfaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaalRlRlRlRlRlRlRqTqCnUnUqCqTnUnUnUqUnUnUnUqTqVqWqEqXnFlRlRlRlRlRlRaaaaaaaalZmjmUmUmUmUmUmUmUmUmUmUmUmUmUmUmUmUmUmjmjmjmlmjmCmjlZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqfqtquqvqvqvqvqvqwqxqhqhqhqhqhqQqYqQqhqhqhqhqhqyqwqzqzqzqzqzquqAqfaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaalRlRlRlRlRlRlRnFqZnUnUqZnFranUnUnUnUnUnUnFqqqoqqrbnFlRlRlRlRlRlRaaaaaaaalZmjmUmUmUmUmUmUmUmUmUmUmUmUmUmUmUmUmUmjmjmjmjmjmjmjlZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqfqtquqvqIqvqIqvqwqxqhqhqhqhqhqhqhqhqhqhqhqhqhqyqwqzqJqzqJqzquqAqfaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaalRlRlRlRlRlRlRnFnFrcnFnFnFnFnFoKrcoKnFnFnFnGnHnInFnFlRlRlRlRlRlRaaaaaaaalZmjmUmUmUmUmUmjmUmUmUmUmUmUmUmUmUmUmUmjmjmjmjmvmjmjlZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqfqtquqvqvqvqvqvqwqxqhqhqhqhqhqhqhqhqhqhqhqhqhqyqwqzqzqzqzqzquqAqfaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaalRlRlRlRlRlRlRlRqBnUnUnUnUnUnUnUnUnUnUnUnUnUnUnUqBlRlRlRlRlRlRlRaaaaaaaalZmjmUmUmUmUmUmjmUmUmUmUmUmjmUmUmUmUmUmjmjmjmvrdmvmjlZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqfqfqfrerererereqfqgqhqhqhqhqhqhqhqhqhqhqhqhqhqgqfrerererereqfqfqfaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaalRlRlRlRlRlRlRlRqTnUpanUpanUpanUpanUpanUpanUpanUqTlRlRlRlRlRlRlRaaaaaaaalZmjmUmUmUmUmUmjmjmjmjmjmjmjmUmUmUmUmUmjmjmjmjmvmjmjlZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqfrfrfrfrfrfqfrgrhrhrhrhrhrhrhrhrhrhrhrhrhriqfrjrjrjrjrjqfaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaalRlRlRlRlRlRlRlRnFnFnUnUnUnUnUnUnUnUnUnUnUnUnUnFnFlRlRlRlRlRlRlRaaaaaaaalZmjmUmUmUmUmUmjmjmjmjmjmjmjmUmUmUmUmUmjmjmjmjmjmjmjlZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqfqfqfqfqfqfqfrkrlrlrlrlrlrmrnrorlrlrlrlrlrkqfqfqfqfqfqfqfaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaalRlRlRlRlRlRlRlRlRnFnFnFrpnFnFnFrqnFnFnFrrnFnFnFlRlRlRlRlRlRlRlRaaaaaaaalZmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjmjlZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarsrkrkrkrtrkrurururururkrtrkrkrkrsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaalRlRlRlRlRlRlRlRlRlRnFrvrwrxnFryparznFrArBrCnFlRlRlRlRlRlRlRlRlRaaaaaaaalZlZlZlZlZlZlZlZlZlZlZlZlZlZlZlZlZlZlZlZlZlZlZlZlZlZlZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarsrsrDrsrsrsrsrErFrGrsrsrsrsrDrsrsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaalRlRlRlRlRlRlRlRlRlRnFrHrwrInFparJpanFrKrBrBnFlRlRlRlRlRlRlRlRlRaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarsrsrsrsrsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaalRlRlRlRlRlRlRlRlRlRnFrLrMrNnFrOparPnFrQrRrSnFlRlRlRlRlRlRlRlRlRaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaalRlRlRlRlRlRlRlRlRlRnFnFrTnFnFnFoKnFnFnFnFnFnFlRlRlRlRlRlRlRlRlRaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarUrUrUrUrUrUrUrUrUrUrUrUrUrUrUrUrUrUrUaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaalRlRlRlRlRlRlRlRlRlRlRnFnUnFnUrVrWrVrXnFlRlRlRlRlRlRlRlRlRlRlRlRaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarUrYrZsasbsbrZscsdsesfsgshsishshshsjrUaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaalRlRlRlRlRlRlRlRlRlRlRoKnUrTnUnUnUnUnUoKlRlRlRlRlRlRlRlRlRlRlRlRaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarUrYrZrZrZrZrZsksgsgsgslshshshsmshshrUaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaalRlRlRlRlRlRlRlRlRlRlRnFnFnFsnnUnUnUsnnFlRlRlRlRlRlRlRlRlRlRlRlRaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarUsorZsprYsqsrsssgsgsgsgshshstshsusirUaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaalRlRlRlRlRlRlRlRlRlRlRlRlRnFsvsvsvsvsvnFlRlRlRlRlRlRlRlRlRlRlRlRaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarUswsgslslslslslsgsgsgsgshshshsxshshrUaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaalRlRlRlRlRlRlRlRlRlRlRlRlRnFnFsysysynFnFlRlRlRlRlRlRlRlRlRlRlRlRaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarUszsgsgsgsgsgsgsgsgsgsgsAshshshshshrUaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaalRlRlRlRlRlRlRlRlRlRlRlRlRlRlRsBsBsBlRlRlRlRlRlRlRlRlRlRlRlRlRlRaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarUsCsgsgsgsgsgsgsgsgslsgsAsDsDsDsEsDrUaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaalRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarUsFsgsgsgsgsgsgsgslsGslsAsHsHsHsHsHrUaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaalRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRlRaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarUrUsIsJsJsKrUrUrUrUrUrUrUrUrUrUrUrUrUaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaasLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarUsMsMsMsMrUaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarUsMsMsMsMrUaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarUrUrUrUrUrUaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahShThUhVhSaahWaaaaaahXaahShThUhVhSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaibicicicibibidibieibidibibicicicibaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaibihihiiijikiliminioilikijiiihihibaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaibihihibisisilisisisilisisibihihibaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaasNsOsPsQsRaaaaaasNsOsPsQsRaaaaaaaaaaaaaaaahSihihidisilililililililisidihihhSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaasSsTsUsVsWsXsYaasSsTsZtatbsXsYaaaaaaaaaaaaaaaahSibibiAiBiCiDiliEisiliFibibhSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaatctdtetetetftgaatcthtetetetftgaaaaaaaaaaaaaaaaaaaaibiGiHiIiJilisisiliFibaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaatitjtktltmtntoaatitjtptltqtntoaaaaaaaaaaaaaaaaaaaaibiNiOiOiDiliFiPiliFibaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaatrtstetetetfttaatrtstetetetfttaaaaaaaaaaaaaaaaaaaaibiUiOiOiViliFiPililidiWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaatutvtwtxtytztAaatutvtwtxtytztAaaaaaaaaaaaaaaaaaaaaibibibibibilisisiliFibaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaatBtCtDtEtFaaaaaatBtCtDtEtFaaaaaaaaaaaaaaaaaaaaaaibiXiliXibiliFiPiliFiYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaibiXiliXibiliFiPiliFibaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaasNsOsPsQsRaaaaaasNsOsPsQsRaaaaaaaaaaaaaaaaaaaaaaibiXililiZilililililidjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaasSsTtGtHtIsXsYaasSsTtJtKtLsXsYaaaaaaaaaaaaaaaaaaaaibiXiliXibilisisisisibaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaatctMtetetetftgaatctNtetetetftgaaaaaaaaaaaaaaaaaaaaibiXiliXibiljbjcjdikibaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaatitjtOtltPtntoaatitjtQtltRtntoaaaaaaaaaaaaaaaaaaaahSibibibibjeibibibibhSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaatrtstetetetfttaatrtstetetetfttaaaaaaaaaaaaaaaaaaaaaahSibjfiFiljgjhibhSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaatutvtwtxtytztAaatutvtwtxtytztAaaaaaaaaaaaaaaaaaaaaaaaaibjdisjiisjfibaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaatBtCtDtEtFaaaaaatBtCtDtEtFaaaaaaaaaaaaaaaaaaaaaaaaaaibjljmjnjojpibaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahSiYiYiYiYiYhSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aatStStStStStStStStStStStStStStSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aatStTtTtTtTtTtTtUtTtTtTtTtTtTtSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aatStTtVtVtVtWtVtVtVtWtVtVtVtTtSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aatStTtVtVtVtWtVtVtVtWtVtVtVtTtSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aatStTtVtVtVtWtVtVtVtWtVtVtVtTtSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aatStTtWtWtWtWtWtWtWtWtWtWtWtTtSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aatStTtVtVtVtWtWtWtWtWtVtVtVtTtSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aatStTtVtVtVtWtWtXtWtWtVtVtVtTtSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aatStTtVtVtVtWtWtYtWtWtVtVtVtTtSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aatStTtTtTtTtTtTtTtTtTtTtTtTtTtSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aatStStStStStStStStStStStStStStSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaatZ -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaatZ +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacabababababababababababababababababababababababababababababababababababababababababababababadaeaeaeaeaeadaeaeaeaeaeadaeaeaeaeaeadaeaeaeaeaeadaeaeaeaeaeadaeaeaeaeaeadaeaeaeaeaead +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacabababababababababababababababababababababababababababababababababababababababababababababafagagagagagahaiajakakalahamanaoapaqaharararararahasasasasasahatatatatatahauavavavawax +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacabababababababababababababababababababababababababababababababababababababababababababababafagayagagagahaiajakakazahamamaAaAamaharaBaraBarahasasasasasahataCataCatahaDaEaEaEaFax +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacabababababababababababababababababababababababababababababababababababababababababababababafagagagaGagahaiajakakaHahaIamamamamaharararararahasasasasasahatatatatatahaDaEaEaEaFax +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacabababababababababababababababababababababababababababababababababababababababababababababafagagagagagahaiajakakakahaIaJaKaKamaharararararahasasasasasahatataCatatahaDaEaEaEaFax +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacabababababababababababababababababababababababababababababababababababababababababababababafagaLagagagahaiajakakaHahaIamamamamahararaBararahasasasasasahatatatatatahaDaEaEaEaFax +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacabababababababababababababababababababababababababababababababababababababababababababababafagaMagaNayahaiajakakaHahaIamamamamahararaBararahasasasasasahatatatatatahaOaEaEaEaPax +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacabababababababababababababababababababababababababababababababababababababababababababababafagaGagagagahaiajakakakahaIaQaRaRamaharararararahasasasasasahatataCatatahaOaEaEaEaPax +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacabababababababababababababababababababababababababababababababababababababababababababababafagagagagagahaiajakakaHahaIamamamamaharararararahasasasasasahatatatatatahaOaEaEaEaPax +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaSacacacacacacacacacacacacacacacacacacacacacacacacacacacabababababababababababababababababababababababababababababababababababababababababababababafagagagaGagahaiajakakazahamamaTaTamaharaBaraBarahasasasasasahataCataCatahaOaEaEaEaPax +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabacacacacacacacacacaUacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacabababababababababababababababababababababababababababababababababababababababababababababafagagagagagahaiajakakaVahamanaWaoaqaharararararahasasasasasahatatatatatahaXaYaYaYaZax +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacabababababababababababababababababababababababababababababababababababababababababababababadbababababaadbababababaadbababababaadbababababaadbababababaadbababababaadbababababaad +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacabababababababababababababababababababababababababababababababababababababababababababababafbbbbbbbbbbahbcbdbcbdbcahbebfbgbhbiahbjbjbkblblahbmbmbmbmbmahbnbobobobpahbqbrbrbrbsax +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacabababababababababababababababababababababababababababababababababababababababababababababafbbbbbbbbbbahbdbcbdbcbdahbtbubububvahbwbwbxbybyahbmbzbmbAbmahbBbCbCbCbDahbEbFbFbFbGax +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacabababababababababababababababababababababababababababababababababababababababababababababafbbbbbbbbbbahbcbdbcbdbcahbHbIbJbKbLahbwbMbMbMbyahbmbmbmbmbmahbBbCbCbCbDahbEbNbNbNbGax +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabacacacacacacacacacbOacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacabababababababababababababababababababababababababababababababababababababababababababababafbbbbbbbbbbahbdbdbdbdbdahbububPbPbPahbwbxbxbxbyahbmbmbmbmbmahbBbCbCbCbDahbEbFbFbFbGax +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacabababababababababababababababababababababababababababababababababababababababababababababafbbbbbbbbbbahbcbdbcbdbcahbQbRbSbubTahbUbVbVbVbWahbmbXbmbmbmahbYbZbZbZcaahcbcccccccdax +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacabababababababababababababababababababababababababababababababababababababababababababababafbbbbbbbbbbahbcbdbcbdbcahcecfcgbuchahcicjcjcjckahbmbmbmclbmahcmcncncncoahcpcqcqcqcrax +aaaaaaaaaaaaaaaacsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacabababababababababababababababababababababababababababababababababababababababababababababafbbbbbbbbbbahbdbdbdbdbdahctctbububuahcubxcvbxcwahbmbmbmbmbmahcxbCbCbCcyahczbFbFbFcAax +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacabababababababababababababababababababababababababababababababababababababababababababababafbbbbbbbbbbahbcbdbcbdbcahcBcCcDbubuahcucEcEcEcwahcFcFcFcFcFahcxbCbCbCcyahczcGcGcGcAax +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacabababababababababababababababababababababababababababababababababababababababababababababafbbbbbbbbbbahbdbcbdbcbdahcHcIcJcJbRahcucubxcwcwahcKcKcKcKcKahcxbCbCbCcyahczbFbFbFcAax +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacabababababababababababababababababababababababababababababababababababababababababababababafbbbbbbbbbbahbcbdbcbdbcahcLcMcMcNcOahcPcPcQcRcRahcScScScScSahcTcUcUcUcVahcWcXcXcXcYax +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacabababababababababababababababababababababababababababababababababababababababababababababadcZcZcZcZcZadcZcZcZcZcZadcZcZcZcZcZadcZcZcZcZcZadcZcZcZcZcZadcZcZcZcZcZadcZcZcZcZcZad +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacabababababababababababababababababababababababababababababababababababababababababababababababababababababababdadadadadadadadadadbdcdcdcdcdcdcdcdcdcdcdcdcdcdbdadadadadadadadada +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacabababababababababababababababababababababababababababababababababababababababababababababababababababababababdadddeadadadadaddfdgdcdcdcdcdcdcdcdcdcdcdcdcdcdhdfadadadadaddedida +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacabababababababababababababababababababababababababababababababababababababababababababababababababababababababdadddeadadadadaddfdgdcdcdcdcdcdcdcdcdcdcdcdcdcdhdfadadadadaddedida +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacabababababababababababababababababababababababababababababababababababababababababababababababababababababababdadddeadadadadaddfdgdcdcdcdcdcdjdkdjdcdcdcdcdcdhdfadadadadaddedida +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadlaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacabababababababababababababababababababababababababababababababababababababababababababababababababababababababdadddeadadadadaddfdgdcdcdcdcdcdjdjdjdcdcdcdcdcdhdfadadadadaddedida +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacabababababababababababababababababababababababababababababababababababababababababababababababababababababababdadddeadadadadaddfdgdcdcdcdcdcdcdcdcdcdcdcdcdcdhdfadadadadaddedida +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacabababababababababababababababababababababababababababababababababababababababababababababababababababababababdadddeadadadadaddfdgdcdcdcdcdcdcdcdcdcdcdcdcdcdhdfadadadadaddedida +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacabababababababababababababababababababababababababababababababababababababababababababababababababababababababdadadadmdmdmdmdmdadbdcdcdcdcdcdcdcdcdcdcdcdcdcdbdadmdmdmdmdmdadada +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacabababababababababababababababababababababababababababababababababababababababababababababababababababababababababdadndndndndndaadadadadadadadadadadadadadadaddadodododododaabab +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacabababababababababababababababababababababababababababababababababababababababababababababababababababababababababdadadadadadadaabababababababababababababababdadadadadadadaabab +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadpaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabacacacacacacacacacacacacacacacacacacacacdqacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +aaaaaaaaaaaaaaaaaaaadraaaaaaaaaadsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaababababababababababababababababababacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadtaaaaaaaaaaaaaaaaababababababababababababababababababacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaababababababababababababababababababacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaduaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaababababababababababababababababababacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaababababababababababababababababababacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaababababababababababababababababababacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaababababababababababababababababababacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaababababababababababababababababababacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaababababababababababababababababababacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaababababababababababababababababababacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaababababababababababababababababababacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaababababababababababababababababababacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaababababababababababababababababababacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaababababababababababababababababababacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaababababababababababababababababababacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaababababababababababababababababababacacacacacacacacacacacacacacacdvacacacacacacacacacacacacacacacababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +ababababababababababababababababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaababababababababababababababababababababababababababababababababababababababababababababababababababababababacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +dwdwdwdwdwdwdwdwdwdwdwdwdwdwdwabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaababababababababababababababababababababababababababababababababababababababababababababababababababababababacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +dwdwdwdwdwdwdwdwdwdwdwdwdwdwdwabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaababababababababababababababababababababababababababababababababababababababababababababababababababababababacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +dwdwdwdwdwdwdwdwdwdwdwdwdwdwdwabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaababababababababababababababababababababababababababababababababababababababababababababababababababababababacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +dwdwdwdwdwdwdwdwdwdwdwdwdwdwdwabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaababababababababababababababababababababababababababababababababababababababababababababababababababababababacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +dwdwdwdwdwdwdwdwdwdwdwdwdwdwdwabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaababababababababababababababababababababababababababababababababababababababababababababababababababababababacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +dwdwdwdwdwdwdwdwdwdwdwdwdwdwdwabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaababababababababababababababababababababababababababababababababababababababababababababababababababababababacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +dwdwdwdwdwdwdwdwdwdwdwdwdwdwdwabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaababababababababababababababababababababababababababababababababababababababababababababababababababababababacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +dwdwdwdwdwdwdwdxdwdwdwdwdwdwdwabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaababababababababababababababababababababababababababababababababababababababababababababababababababababababacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +dwdwdwdwdwdwdwdwdwdwdwdwdwdwdwabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaababababababababababababababababababababababababababababababababababababababababababababababababababababababacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +dwdwdwdwdwdwdwdwdwdwdwdwdwdwdwabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaababababababababababababababababababababababababababababababababababababababababababababababababababababababacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacabababababababababababababdydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydyab +dwdwdwdwdwdwdwdwdwdwdwdwdwdwdwabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaababababababababababababababababababababababababababababababababababababababababababababababababababababababacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacabababababababababababababdydzdAdAdAdAdAdBdydzdAdAdAdBdydzdAdAdAdBdydzdAdAdAdBdydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydCdDdDdDdEdydCdDdDdDdEdydCdDdDdDdEdydCdDdDdDdDdDdEdyab +dwdwdwdwdwdwdwdwdwdwdwdwdwdwdwabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaababababababababababababababababababababababababababababababababababababababababababababababababababababababacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacabababababababababababababdydFdGdGdGdGdGdHdIdFdJdKdJdHdIdFdJdKdJdHdIdFdJdKdJdHdLdLdLdLdLdMdMdLdLdLdLdLdLdNdLdLdLdLdLdLdLdLdLdNdLdLdLdLdLdLdLdNdLdLdLdLdLdLdLdLdLdNdLdLdLdLdLdLdMdMdLdLdLdLdLdOdGdPdGdQdRdOdGdPdGdQdRdOdGdPdGdQdRdOdGdGdGdGdGdQdyab +dwdwdwdwdwdwdwdwdwdwdwdwdwdwdwabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababdydFdGdSdSdSdGdHdIdFdJdKdKdHdIdFdKdKdKdHdIdFdKdKdJdHdLdLdLdLdLdLdLdLdLdLdLdLdLdLdLdLdLdLdMdLdLdLdLdLdLdLdLdMdLdLdLdLdLdLdLdLdMdLdLdLdLdLdLdLdLdLdLdLdLdLdLdLdLdLdLdOdGdPdPdQdRdOdPdPdPdQdRdOdPdPdGdQdRdOdGdSdSdSdGdQdyab +dwdwdwdwdwdwdwdwdwdwdwdwdwdwdwabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadTaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababdydFdGdGdGdGdGdHdIdFdJdKdJdHdIdFdJdKdJdHdIdFdJdKdJdHdLdLdLdLdLdMdMdLdLdLdLdLdLdNdLdLdLdLdLdLdLdLdLdNdLdLdLdLdLdLdLdNdLdLdLdLdLdLdLdLdLdNdLdLdLdLdLdLdMdMdLdLdLdLdLdOdGdPdGdQdRdOdGdPdGdQdRdOdGdPdGdQdRdOdGdGdGdGdGdQdyab +dUdwdwdwdwdwdwdwdwdwdwdwdwdwdwabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababdydFdGdSdSdSdGdHdydVdWdWdWdXdydVdWdWdWdXdydVdWdWdWdXdydGdGdGdydydydydGdGdGdydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydYdZdZdZeadydYdZdZdZeadydYdZdZdZeadydOdGdSdSdSdGdQdyab +ababababababababababababababababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababdydFdGdGdGdGdGdHdydydIdIdIdydydyebebebdydydydIdIdIdydyecececdydydydyecececdydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydRdRdRdydydyebebebdydydydRdRdRdydydOdGdGdGdGdGdQdyab +ababababababababababababababababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababdydFdGdSdSdSdGdHdydzdAdAdAdBdydzdAdAdAdBdydzdAdAdAdBdyedeeefefegeeefefegeeefefegeeefefegeeefehdydyeidydydyeidydydyeidydydydyeidydydydyeidydydyeidydydyeidydydydydydCdDdDdDdEdydCdDdDdDdEdydCdDdDdDdEdydOdGdSdSdSdGdQdyab +ababababababababababababababababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababdydFdGdGdGdGdGdHdIdFdJdKdJdHdIdFdJdKdJdHdIdFdJdKdJdHejekdJeldGemdJeldGemdJeldGemdJeldGemdKelejdydyendydydyendydydyendydydydyendydydydyendydydyendydydyendydydydydydOdGdPdGdQdRdOdGdPdGdQdRdOdGdPdGdQdRdOdGdGdGdGdGdQdyab +ababababababababababababababababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababdydFdGdSdSdSdGdHdIdFdJdKdKdHdIdFdKdKdKdHdIdFdKdKdJdHejeodHdJdGdGdHdJdGdGdHdJdGdGdHdJdGdGdKdJejepeqeqeqeqeqeqeqeqeqeqeqeqeqeqeqeqeqeqeqeqeqeqeqeqeqeqeqeqeqeqeqeqerdOdGdPdPdQdRdOdPdPdPdQdRdOdPdPdGdQdRdOdGdSdSdSdGdQdyab +ababababababababababababababababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababdydFdGdGdGdGdGdHdIdFdJdKdJdHdIdFdJdKdJdHdIdFdJdKdJdHejesdJetdGeudJetdGeudJetdGeudJetdGeudKetejdydyevdyebdyevdyebdyevdydyebdyevdyebdydyevdyebdyevdyebdyevdydyebdydydOdGdPdGdQdRdOdGdPdGdQdRdOdGdPdGdQdRdOdGdGdGdGdGdQdyab +ababababababababababababababababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababdydVdWdWdWdWdWdXdydVdWdWdWdXdydVdWdWdWdXdydVdWdWdWdXdyewexececeyexececeyexececeyexececeyexecezdydyeAdyebdyeAdyebdyeAdydyebdyeAdyebdydyeAdyebdyeAdyebdyeAdydyebdydydYdZdZdZeadydYdZdZdZeadydYdZdZdZeadydYdZdZdZdZdZeadyab +ababababababababababababababababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababdyeBdydydydydyeBdydydIdIdIdydydydJdJdJdydydydyeqdydydydyefdydydydydydKdKdKdydydydydyeCeDeDeDeEdydyebdyebdyebdyebdyebdydyebdyebdyebdydyebdyebdyebdyebdyebdydyebdydydydyeqdydydydyeFeFeFdydydydRdRdRdydyeGdydydydydyeGdyab +ababababababababababababababababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababdydJdJdJdJdJdJdJdydzdAdAdAdBdydJdJdJdJdJdydydyeqdydydydydGdNdNdNdNdNdNdNdNdNdNdNdNdNeHeIeIeIeJdNdNdNdNdNdNdNdNdNdNdNdNdNdGdydydydGdNdNdNdNdNdNdNdNdNdNdNdNdNdGdydydydyeqdydydyeFeFeFeFeFdydCdDdDdDdEdyeFeFeFeFeFeFeFdyab +ababababababababababababababababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababdydJdKdKdKdKdKdJeBdFdJdKdJdHdydJdGdGdGdJdydydyeqdydydydydGdyebebebdydKdKdKdyebebebdyeKeLeLeLeMdyebebebdyeNeNeNdyebebebdydGdydydydGdyebebebdydPdPdPdyebebebdydGdydydydyeqdydydyeFdGdGdGeFdydOdGdPdGdQeOeFdPdPdPdPdPeFdyab +ababababababababababababababababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababdydJdKdJdJdJdKdJeBdFdKdKdKdHdydJdydKdydJdyeqeqeqeqeqeqdGdGdGdGdGdGdGdGdGdGdGdGdGdGdGePeQeQeQeReSeSeSeSeSeSeSeSeSeSeSeSeSeTeUeUeUeVdGdGdGdGdGdGdGdGdGdGdGdGdGdGdGeqeqeqeqeqeqdyeFdydPdyeFdydOdPdPdPdQeOeFdPeFeFeFdPeFdyab +ababababababababababababababababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababdydJdKdJdJdJdKdJeBdFdJdKdJdHdydJdGdGdGdJdydydyeqdyebdydGdGdGeIeIeIeIeIeIeIeIeIeIeIdGeWdJdJdJdHeXeXeXeXeXdyeXdyeXeXeXeXeXdOeFeFeFeYdGeZeZeZeZeZeZeZeZeZeZeZdGdGdGdyebdyeqdydydyeFdGdGdGeFdydOdGdPdGdQeOeFdPeFeFeFdPeFdyab +ababababababababababababababababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababdydJdJdJdJdJdJdJdydVdWdWdWdXdydJdJdJdJdJdydydyeqebebebdGdGdGdGdGdGdGdGdGdGdGdGdGdGdGeWdJdKdJdHeXeXeXeXeXeXdyeXeXeXeXeXeXdOeFdPeFeYdGdGdGdGdGdGdGdGdGdGdGdGdGdGdGebebebeqdydydyeFeFeFeFeFdydYdZdZdZeadyeFeFeFeFeFeFeFdyab +ababababababababababababababababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababdydydIdIdIdIdIdydydydydydydydydydJdJdJdydydydydydyebdydGdGdydJdIdJdyebebebdydJdIdJdyeWdJdJdJdHdyeXeIdKeXeXeXeXeXdPeZeXdydOeFeFeFeYdyeFdReFdyebebebdyeFdReFdydGdGdyebdydydydydydyeFeFeFdydydydydydydydydyeFeFeFeFeFdydyab +ababababababababababababababababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababdydJdJdJdJdJdJdJdydJdJdJdJdJdydJdJdJdJdJdydJdJdJdJdJdydGdGdydIdJdIdKeIeIeIdKdIdJdIdyeWdJdydJdHdyeXeXeIdKeXeXeXdPeZeXeXdydOeFdyeFeYdydReFdRdPeZeZeZdPdReFdRdydGdGdyeFeFeFeFeFdyeFeFeFeFeFdyeFeFeFeFeFdyeFeFeFeFeFeFeFdyab +ababababababababababababababababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababdydJdJdJfadJdJdJdydJdGdydGdJdJdJdKfadKdJdJdJdGdydGdJdJdGdGebdJdIdJeIeIeIeIeIdJdIdJdyeWdJdKdJdHdyeIeXeXeIdKeXdPeZeXeXeZdydOeFdPeFeYdyeFdReFeZeZeZeZeZeFdReFebdGdGeFeFdGdydGeFeFeFdPfadPeFeFeFdGdydGeFdyeFeFeFfaeFeFeFdyab +abababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababdydJdJfafbfadJdJdydJdGdKdGdJdJdJfafcfadJdJdJdGdKdGdJdJdGdGebdIdJdIeIeIdKeIeIdIdJdIdyeWdJdKdJdHdydKeIeXeXeIeXeZeXeXeZdPdydOeFdPeFeYdydReFdReZeZdPeZeZdReFdRebdGdGeFeFdGdPdGeFeFeFfafdfaeFeFeFdGdPdGeFdyeFeFfafefaeFeFdyab +abababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababdydJdJdJfadJdJdJdydJdGdydGdJdJdJdKfadKdJdJdJdGdydGdJdJdGdGebdJdIdJeIeIeIeIeIdJdIdJdyeWdJdKdJdHdyeIeXeXeIdKeXdPeZeXeXeZdydOeFdPeFeYdyeFdReFeZeZeZeZeZeFdReFebdGdGeFeFdGdydGeFeFeFdPfadPeFeFeFdGdydGeFdyeFeFeFfaeFeFeFdyab +abababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababdydJdJdJdJdJdJdJdydJdJdJdJdJdydJdJdJdJdJdydJdJdJdJdJdydGdGdydIdJdIdKeIeIeIdKdIdJdIdyeWdJdydJdHdyeXeXeIdKeXeXeXdPeZeXeXdydOeFdyeFeYdydReFdRdPeZeZeZdPdReFdRdydGdGdyeFeFeFeFeFdyeFeFeFeFeFdyeFeFeFeFeFdyeFeFeFeFeFeFeFdyab +ababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababffababababababababababababababababababababababababababdydydIdIdIdIdIdydydydydydydydydydJdJdJdydydydydydyebdydGdGdydJdIdJdyebebebdydJdIdJdyeWdJdJdJdHdyeXeIdKeXeXeXeXeXdPeZeXdydOeFeFeFeYdyeFdReFdyebebebdyeFdReFdydGdGdyebdydydydydydyeFeFeFdydydydydydydydydyeFeFeFeFeFdydyab +abababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababdydJdJdJdJdJdJdJdydzdAdAdAdBdydJdJdJdJdJdydydyeqebebebdGdGdGdGdGdGdGdGdGdGdGdGdGdGdGeWdJdKdJdHeXeXeXeXeXeXdyeXeXeXeXeXeXdOeFdPeFeYdGdGdGdGdGdGdGdGdGdGdGdGdGdGdGebebebeqdydydyeFeFeFeFeFdydCdDdDdDdEdyeFeFeFeFeFeFeFdyab +abababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababdydJdKdJdJdJdKdJeBdFdGdKdGdHdydJdGdGdGdJdydydyeqdyebdydGdGdGeIeIeIeIeIeIeIeIeIeIeIdGeWdJdJdJdHeXeXeXeXeXdyeXdyeXeXeXeXeXdOeFeFeFeYdGeZeZeZeZeZeZeZeZeZeZeZdGdGdGdyebdyeqdydydyeFdGdGdGeFdydOeFdPeFdQeOeFdPeFeFeFdPeFdyab +abababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababdydJdKdJdJdJdKdJeBdFdKdKdKdHdydJdydKdydJdyeqeqeqeqeqeqdGdGdGdGdGdGdGdGdGdGdGdGdGdGdGfgfhfhfhfifjfjfjfjfjfjfjfjfjfjfjfjfjfkflflflfmdGdGdGdGdGdGdGdGdGdGdGdGdGdGdGeqeqeqeqeqeqdyeFdydPdyeFdydOdPdPdPdQeOeFdPeFeFeFdPeFdyab +abababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababfnfofpfqfrabfsabababftabfnfofpfqfrabababababababababababababababababababababababababababababababababababababababababababababababababababababababababdydJdKdKdKdKdKdJeBdFdGdKdGdHdydJdGdGdGdJdydydyeqdydydydydGdyebebebdydKdKdKdyebebebdydGdydydydGdyebebebdyeNeNeNdyebebebdyfufvfvfvfwdyebebebdydPdPdPdyebebebdydGdydydydyeqdydydyeFdGdGdGeFdydOeFdPeFdQeOeFdPdPdPdPdPeFdyab +abababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababfxfyfyfyfzfAfBfCfDfCfBfEfFfyfyfyfxabababababababababababababababababababababababababababababababababababababababababababababababababababababababababdydJdJdJdJdJdJdJdydVdWdWdWdXdydJdJdJdJdJdydydyeqdydydydydGdNdNdNdNdNdNdNdNdNdNdNdNdNdGdydydydGdNdNdNdNdNdNdNdNdNdNdNdNdNfGeZeZeZfHdNdNdNdNdNdNdNdNdNdNdNdNdNdGdydydydyeqdydydyeFeFeFeFeFdydYdZdZdZeadyeFeFeFeFeFeFeFdyab +abababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababfxfIfIfJfKfLfMfNfOfPfMfLfQfRfIfIfxabababababababababababababababababababababababababababababababababababababababababababababababababababababababababdyeBdydydydydyeBdydydIdIdIdydydydJdJdJdydydydyeqdydydydyebdydyebdyebdyebdyebdyebdydyebdydydyebdydyebdyebdyebdyebdyebdydyfSfTfTfTfUdydydydydydPdPdPdydydydydyecdydydydyeqdydydydyeFeFeFdydydydRdRdRdydyeGdydydydydyeGdyab +abababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababfxfIfIfVfWfWfMfWfWfWfMfWfWfVfIfIfxabababababababababababababababababababababababababababababababababababababababababababababababababababababababababdydzdAdAdAdAdAdBdydzdAdAdAdBdydzdAdAdAdBdydzdAdAdAdBdydyebdydyeidyebdyeidyebdyeidydyebdyeidyebdydyeidyebdyeidyebdyeidydyfXeffYfZefeffYfZefeffYfZefeffYfZefeffYgadydCdDdDdDdEdydCdDdDdDdEdydCdDdDdDdEdydCdDdDdDdDdDdEdyab +abababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababgbfRfIfBfWfMfMfMfMfMfMfMfWfBfIfJgcabababababababababababababababababababababababababababababababababababababababababababababababababababababababababdydFdGdGdGdGdGdHdIdFdGdKdGdHdIdFdGdKdGdHdIdFdGdKdGdHdydyebdydyendyebdyendyebdyendydyebdyendyebdydyendyebdyendyebdyendydyeogddPgedGgdeFgedGgdeFgedGgdeFgedGgdeFgfeodOdGdPdGdQdRdOdGdPdGdQdRdOdGdPdGdQdRdOdGdGdGdGdGdQdyab +ababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababgbggghgigjgkglfMgmfWfMgngogggcababababababababababababababababababababababababababababababababababababababababababababababababababababababababababdydFdGdSdSdSdGdHdIdFdGdKdKdHdIdFdKdKdKdHdIdFdKdKdGdHepeqeqeqeqeqeqeqeqeqeqeqeqeqeqeqeqeqeqeqeqeqeqeqeqeqeqeqeqeqeqeqeqgpeoeFdPdGdGeFdOdGdGeFdOdGdGeFdOdGdGeFdOejeodOdGdPdPdQdRdOdPdPdPdQdRdOdPdPdGdQdRdOdGdSdSdSdGdQdyab +ababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababfxgqgrgsgtfMfWfWfMgnfxababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababdydFdGdGdGdGdGdHdIdFdGdKdGdHdIdFdGdKdGdHdIdFdGdKdGdHdydydydydyevdydydyevdydydyevdydydydyevdydydydyevdydydyevdydydyevdydyeogudPgvdGgueFgvdGgueFgvdGgueFgvdGgueFgweodOdGdPdGdQdRdOdGdPdGdQdRdOdGdPdGdQdRdOdGdGdGdGdGdQdyab +ababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababfxgxgygyglfMgngzfMgnfVababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababdydFdGdSdSdSdGdHdydVdWdWdWdXdydVdWdWdWdXdydVdWdWdWdXdydydydydyeAdydydyeAdydydyeAdydydydyeAdydydydyeAdydydyeAdydydyeAdydygAecgBgCececgBgCececgBgCececgBgCececgBgDdydYdZdZdZeadydYdZdZdZeadydYdZdZdZeadydOdGdSdSdSdGdQdyab +ababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababfxgEgygygFfMgngzfMfMfBgGabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababdydFdGdGdGdGdGdHdydydIdIdIdydydyebebebdydydydIdIdIdydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydyefefefdydydydyefefefdydydRdRdRdydydyebebebdydydydRdRdRdydydOdGdGdGdGdGdQdyab +ababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababfzggggggghfMfWfWfMgnfCababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababdydFdGdSdSdSdGdHdydzdAdAdAdBdydzdAdAdAdBdydzdAdAdAdBdydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydGdGdGdydydydydGdGdGdydCdDdDdDdEdydCdDdDdDdEdydCdDdDdDdEdydOdGdSdSdSdGdQdyab +ababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababfxgHfMgHfxfMgngzfMgngIababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababdydFdGdGdGdGdGdHdIdFdGdKdGdHdIdFdGdKdGdHdIdFdGdKdGdHdGdLdLdLdLdMdMdLdLdLdLdLdLdNdLdLdLdLdLdLdLdLdLdNdLdLdLdLdLdLdLdNdLdLdLdLdLdLdLdLdLdNdLdLdLdLdLdLdMdMdLdLdLdLdLdOdGdPdGdQdRdOdGdPdGdQdRdOdGdPdGdQdRdOdGdGdGdGdGdQdyab +ababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababfxgHfMgHfVfMgngzfMgnfCababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababdydFdGdSdSdSdGdHdIdFdGdKdKdHdIdFdKdKdKdHdIdFdKdKdGdHdGdLdLdLdLdLdLdLdLdLdLdLdLdLdLdLdLdLdMdLdLdLdLdLdLdLdLdMdLdLdLdLdLdLdLdLdMdLdLdLdLdLdLdLdLdLdLdLdLdLdLdLdLdLdLdOdGdPdPdQdRdOdPdPdPdQdRdOdPdPdGdQdRdOdGdSdSdSdGdQdyab +ababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababfxgHfMfMgJfMfMfMfMfMfBgKabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababdydFdGdGdGdGdGdHdIdFdGdKdGdHdIdFdGdKdGdHdIdFdGdKdGdHdGdLdLdLdLdMdMdLdLdLdLdLdLdNdLdLdLdLdLdLdLdLdLdNdLdLdLdLdLdLdLdNdLdLdLdLdLdLdLdLdLdNdLdLdLdLdLdLdMdMdLdLdLdLdLdOdGdPdGdQdRdOdGdPdGdQdRdOdGdPdGdQdRdOdGdGdGdGdGdQdyab +ababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababfxgHfMgHgLfMfWfWfWfWgLababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababdydVdWdWdWdWdWdXdydVdWdWdWdXdydVdWdWdWdXdydVdWdWdWdXdydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydYdZdZdZeadydYdZdZdZeadydYdZdZdZeadydYdZdZdZdZdZeadyab +ababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababfxgHfMgHfxfMgMgNgOfLfxababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababdydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydydyab +ababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababgbgPgPgggQgRfEgggPgPgcabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +abababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababgbfFgSgnfMgTgUfzgcababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +ababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababfxgOfWgVfWgSfxabababababababababababababababababababababababababababababababababababababababababababababababgWgXgWgWgWgWgXgWababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +ababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababfxgYgZhahbhcfxababababababababababababababababababababababababababababababababababababababababababhdhdhdhdhdgWhehehfhfhehegWababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +ababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababgbgIgIgIgIgIgcababababababababababababababababababababababababababababababababababababababababababhdhghhhihjhkhehehfhfhlhmgWababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +abababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababhdhghdhdhdgWhehehfhfhehngWababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +abababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababhdhdhdhdhdhohdhdhdhphdababgWhehehfhfhehegWababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +abababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababhdhqhrhshghghghthuhghdababgWhehehehehehegWababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +abababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababhdhghghghvhghvhghghghdababgWhehehfhfhehegWababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +abababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababhdhghghwhwhwhwhxhghghdababgWgXgWgWgWgWgXgWababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +ababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababhdhdhdhdhdhdhdhdhghyhwhzhAhwhghghBhdababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +ababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababhdhChDhEhFhGhGhdhghghwhwhwhwhxhghHhdababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +ababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababhdhIhIhIhIhIhIhJhghghKhghKhghghghLhdhdhdhdhdhMhMhMhMhMhMhMhMhMabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +ababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababhdhIhIhIhIhIhIhJhghghghghghghghghNhOhPhPhPhdhMhQhMhQhMhQhMhQhMabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +ababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababhdhRhRhShThUhUhdhVhWhghghghghghghNhXhPhYhPhdhMhMhMhMhMhMhMhMhMabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +ababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababhdhdhZiaiaibhdhdhZiaiaibhdhdhdichdhdidieifhdhMhQhMhQhMhQhMhQhMabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +abababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababighghghNihiiijifhdhMhMhMhMhMhMhMhMhMabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +ababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababikilhghghNiminioiphdababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +abababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababiqilirhghghNhdhdhdhdhdhMhMhMhMhMhMhMhMhMabisisisisisisababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +ababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababitiuhiivhghgiwhdixhPiyhdhMhQhMhQhMhQhMhQhMabisiziAiAiBisababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +abababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababiqiCivhghghgiDhPhPiEhdhMhMhMhMhMhMhMhMhMabiFiGiGiGiGisababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +ababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababiHiChghgiIhdhPhPiJhdhMhQhMhQhMhQhMhQhMabisiGiKiLiMisababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +abababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababiNhghghNhdhPiOiPhdhMhMhMhMhMhMhMhMhMabisiQiRiSiTisababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +ababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababhdhdhdhdhdiUhdhdhdhdhdhdababababababababababisiGiGiGiGisababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +ababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababiViWiXiWiYiZiYiWiXiWiVabababisisisisisisisisjajbjcjdjeisababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +ababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababiViWiWiWjfjgjfiWiWiWiVabababisjhjijijijjjkjljmjnjojojpjqababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +ababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababiVjriVjriVjgiVjriVjriViViViVisjsjojojojojojtjujnjojojpjvababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +ababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababiVjwiYjxjgjgjgjgjgjyjzjAjAjBisjsjojojojojCjDjEjnjojojpjvababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +ababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababjFjFjFjFjFjFjFjwjGjxjgjgjgjHiVjriViVjAjIisjsjojojojojJjJjJjKjojojpjvjLabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +ababababababababababababababababababababababababababababababababababababababababababababababjMjMjMjMjMjMjMjMjMjMjMjMjMjMjMjMjMjMjMjMjMjMjMjMjMjMjMjMjMjMjMjMababababababababababababababababababababababababababababababababababababababjFjNjOjPjOjQjFjwjfjxjgjgjgjRjrjwiVjSjTjUisjVjojojojojojojojojojojpjvababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +ababababababababababababababababababababababababababababababababababababababababababababababjMjWjWjWjWjWjWjWjWjWjXjWjWjWjYjZjWjWjWjWjWjYjWjWjWjWjWkajYjWjWjMababababababababababababababababababababababababababababababababababababababkbkckdkdkdkdjFjriVkejgjgjgkfiVjriVjrkgjriskhjojojojojojojojojojojpjvababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +ababababababababababababababababababababababababababababababababababababababababababababababjMjWjWjWjWjXjWjWjWjWjWjWjWjWjWjWjWjYjWjWjWjWjWjWjWjYjWkijWjWjWjMababababababababababababababababababababababababababababababababababababababkjkckdkdkdkdkkkljgjgjgjgjgjgjgjykmjAjAjAknkojojojojojojojojojojojpjvababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +abababababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaababababababababjMjWjWjWjWjWjWjWkpjWjWjWjWjWjXjWjWjZjWjWjYjWjWjYjWjWjYjZjWjYjWjMababababababababababababababababababababababababababababababababababababababkbkqkdkdkdkdjFjriVkrjgjgjgjHiVjriViViViVisksjojojojojojojojojojojpjvababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +abababababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaababababababababjMjWjWjWjWjWjWjWjWjWjWjWjWjWjWjWjWjWjYjWjWjXjWjWjYjZjWjWjYjWjZjMabababababababababababababababababababababababababababababababababababababktkjkckdkdkdkdjFjwiYjxjgjgjgkuiYjwiVabababiskvjojojojojojojojojojojpjvababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +abababababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaababababababababjMjWjWjWjWjWjWjWjWjWjWjWjWjWjWjWjXjWjWjWjWjWjWjWjZjWjYjZjWjYjWjMababababababababababababababababababababababababababababababababababababababkwkckdkdkdkdjFjwjGjxjgjgjgkujGjwiVabababiskxjojojojokykykykzjojojpjvababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +abababababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaababababababababjMjWjWjWjWjWjWjWjWjWjWjWjWjWjWjWjWjWjWjZjWjWjWjYjWjWkpjZjWjWjWjMababababababababababababababababababababababababababababababababababababababkAkckdkdkdkdjFjwjfkBkrjgjHkCjfjwiVabababiskxjojojojokDkEkFjnjojojpkGababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +abababababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaababababababababjMjWjWjWjWjWkHkHkHkHkHkHkHkHkHjWjWjWjWjWjWkpjWjWjXjWjXjWjYjWjYjMababababababababababababababababababababababababababababababababababababababkIkckdkdkdkdjFkJkJkKkLkMkKkLkJkJkJabababiskxjojojojojokNkOjnjojojpkPababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +abababababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaababababababababjMjWjWjWjWjWkHkHkHkHkHkHkHkHkHjWjWjWjWjWjWkQkQkRkSkQkQjWjZjYjWjMababababababababababababababababababababababababababababababababababababababjFkTkUkVkdkdjFkWkXkYkZlalblcldlekJabababislflglglglhliljlkjnjojojpllababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +abababababaaaaaaaaaaaaaaaaaaaaaaaaaaaalmlnlnlnloaaaaaaaaaaaaaaaaaaaaaaaaaaaaababababababababjMjWjWjWjWjWkHkHkHkHkHkHkHkHkHjWjWjWjWjWkQkQlplqlqlpkQkQkQkQkQkQkQkQababababababababababababababababababababababababababababababababababababjFjFjFjFlrjFjFlslaltkZlalbltlalukJabababisisisisisisisislvjbjclwjeisababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +abababababaaaaaaaaaaaaaaaaaaaaaaaaaaaalxlylzlylxaaaaaaaaaaaaaaaaaaaaaaaaaaaaababababababababjMjWjWjWjWjWkHkHkHkHkHkHkHkHkHjWkpjWjWjWkQlAlBlBlBlBlClDlEkQlFlGlHkQababababababababababababababababababababababababababababababababababababababjFlIlIlIjFlJlaltkZlalbltlalKkJabababababababababababisjojojojoisababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +abababababaaaaaaaaaaaaaaaaaaaaaaaaaaaalLlylylylLaaaaaaaaaaaaaaaaaaaaaaaaaaaaababababababababjMjWjWjWjWjWkHkHkHkHkHkHkHkHkHjWjWjWjWjXkQlMlBlNlNlOlBlBlBlPlQlQlRkQkQkQkQkQkQkQkQkQkQkQkQabababababababababababababababababababababababababababjFlIlIlIjFlSlaltkZlalbltlalTkJabababababababababababisjolUkEkDisababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +abababababaaaaaaaaaaaaaaaaaaaaaaaaaaaalVlWlylXlVaaaaaaaaaaaaaaaaaaaaaaaaaaaaababababababababjMjWjWjWjWjWjWkHkHkHkHkHkHkHjWjWjWjWjWjWkQlBlNlYlZlNlBmambkQlQmckQkQmdmdmdmemememememdmdkQabababababababababababababababababababababababababababjFlIlIlIjFmfmgmgmhlamimjmjmkkJabababababababababababisjomlkNmmisababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +abababababaaaaaaaaaaaaaaaaaaaaaaaaaaaalVlVmnlVlVaaaaaaaaaaaaaaaaaaaaaaaaaaaaababababababababjMjWjWjWjWjWjWjWkHkHkHkHkHmompmpmpmpmpkSkQlBlNmqmrlNlBmamskQkQkQkQkQmdmtmumvmwmxmwmymzmdkQabababababababababababababababababababababababababababjFjFjFjFjFkKmAkLkJlakJkKmAkLkJabababababababababababmBjojojojoisababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +abababababaaaaaaaaaaaaaaaaaaaaaaaaaaaalVlymClylVaaaaaaaaaaaaaaaaaaaaaaaaaaaaababababababababjMjWjWkHkHkHkHkHkHkHkHkHkHmDmEmEmEmEmEmEmFlBlBlBlBlBlBmamskQkQkQkQkQmdmGmvmwmHmImJmwmymKkQabababababababababababababababababababababababababababababababkJmLmLmLmMlamMmLmLmLkJabababababababababababismNlhlhmOisababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +abababababaaaaaaaaaaaaaaaaaaaaaaaaaaaalVmPmCmQlVaaaaaaaaaaaaaaaaaaaaaaaaaaaaababababababababjMjWjWkHkHkHkHkHkHkHkHkHkHmRmSkRmpmpmpkSkQmTlNlNlNlBlBmamUkRmpmpmpmpmpmpmwmHmImVmImJmwmKkQababababababababababababababababababababababababababababkJkJkJkJkJkJkJkJkMkJkJkJkJkJkJkJkJababababababababisisisisisisababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +abababababaaaaaaaaaaaalVlVlVlVlVlVaaaalVlymClylVaaaalVlVlVlVlVlVaaaaaaaaaaaaababababababababjMjWjWkHkHkHkHkHkHkHkHkHkHkHmWkHkHjWjWjWkQmXmYmZmYnalBlBlBmSmEmEmEmEmEmSnbmImJncmHmInbmKkQababababababababababababababababababababababababababababkJndnenenenenendndndnenenenenendkJababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +abababababaaaaaaaaaaaalVnfnfnfnflVlVlVlVlVmnlVlVlVlVlVlylylylylVaaaaaaaaaaaaababababababababjMngjWkHkHkHkHkHkHkHkHkHkHkHkHkHkHjWjWjXkQnhninhnhnjlBlBlBkRmpmpmpmpmpmpmwmHmInkmImJmwmKkQababababababababababababababababababababababababababababnlndndndnmndndndndndndndnmndndndnlababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +abababababaaaaaaaaaaaannmCmCmCmCnolynplylylylylynplynolylynqlynnaaaaaaaaaaaaababababababababjMjWjWkHkHkHkHkHkHkHkHkHkHkHkHkHkHjWkpjWkQkQmbnrnsntkQnukQkQkQkQkQkQmdmGnvmwmHmImJmwnwmKkQababababababababababababababababababababababababababababkJndnenenenenendndndnenenenenendkJababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +abababababaaaaaaaaaaaalxnxnymCmCnzlylylylylylylylylynAlynBnCnDlxaaaaaaaaaaaaababababababababjMjWjWkHkHkHkHkHkHkHkHkHkHkHkHkHkHkHjWjWjWkQkQkQkQkQkQnEnEnFnGnHnIkQmdnJnKnvmwnLmwnwnMmdkQababababababababababababababababababababababababababababkJkKmAmAmAmAmAmAmAmAmAmAmAmAmAkLkJababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +abababababaaaaaaaaaaaalLmCmCmCnfnolylylylynNlylylylynolynOnPnQlLaaaaaaaaaaaaababababababababjMjWkHkHkHkHkHkHkHkHkHkHkHkHkHkHkHkHkHjWjWjWjWjWkpjWkQnEnEnEnEnEnEkQmdmdmdnRnRnRnRnRmdmdkQababababababababababababababababababababnSnSnSnSnSnSnSnSnSnTnUnUnUnUnUnUnUnUnUnUnUnUnUnTnSnSnSnSnSnSnSnSnSababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +abababababaaaaaaaaaaaalVnfnfmCnflVlylylylylylylylylylVlylylylylVaaaaaaaaaaaaababababababababjMjWkHkHkHkHkHkHkHkHkHkHkHkHkHkHkHkHkHjWjWjWjXjWjWjZnVnEnEnEnEnEnWkQkQkQkQkQkQkQkQkQkQkQkQababababababababababababababababababababnSnXnYnZnZnZnZnZoaobnUnUnUnUnUnUnUnUnUnUnUnUnUocoaodododododnYoenSababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +abababababaaaaaaaaaaaalVlVlVnzlVlVlynplylylylylynplylVlVnAlVlVlVaaaaaaaaaaaaababababababababjMjWkHkHkHkHkHkHkHkHkHkHkHkHkHkHkHkHkHjWjWjWkpjYjXkpkQofofofofofogkQabababababababababababababababababababababababababababababababnSnXnYnZohnZohnZoaobnUnUnUnUnUnUnUnUnUnUnUnUnUocoaodoiodoiodnYoenSababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +abababababaaaaaaaaaaaaaalVlylylylVlVlVlVnoojnolVlVlVlVlylylylVaaaaaaaaaaaaaaababababababababjMjWkHkHkHkHkHkHkHkHkHkHkHkHkHkHkHkHkHjWjWjWjWjWjYjWkQkQkQkQkQkQkQkQabababababababababababababababababababababababababababababababnSnXnYnZnZoknZnZoaobnUnUnUnUnUolomolnUnUnUnUnUocoaododonododnYoenSababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +abababababaaaaaaaaaaaaaannlylylylylylylylylylylylylylylylylynnaaaaaaaaaaaaaaababababababababjMjWkHkHkHkHkHkHkHkHkHkHkHkHkHkHkHkHkHjWjWjWjYjWkpjWjMababababababababababababababababababababababababababababababababababababababnSnXnYnZnZnZnZnZoaobnUnUnUnUnUolooolnUnUnUnUnUocoaodododododnYoenSababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +abababababaaaaaaaaaaaaaalxlyoplyoplyoplyoplyoplyoplyoplyoplylxaaaaaaaaaaaaaaababababababababjMjWkHkHkHkHkHkHkHkHkHkHkHkHkHkHkHkHkHjWjWjWjWjWjWjWjMababababababababababababababababababababababababababababababababababababababnSnXnYnZohnZohnZoaobnUnUnUnUnUnUnUnUnUnUnUnUnUocoaodoiodoiodnYoenSababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +abababababaaaaaaaaaaaaaalLlylylylylylylylylylylylylylylylylylLaaaaaaaaaaaaaaababababababababjMjWkHkHkHkHkHjWkHkHkHkHkHkHkHkHkHkHkHjWjWjWjWkijWjWjMababababababababababababababababababababababababababababababababababababababnSnXnYnZnZnZnZnZoaobnUnUnUnUnUnUnUnUnUnUnUnUnUocoaodododododnYoenSababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +abababababaaaaaaaaaaaaaalVlVoqorosoqorlVlVotlVlVoqorouoqorlVlVaaaaaaaaaaaaaaababababababababjMjWkHkHkHkHkHjWkHkHkHkHkHjWkHkHkHkHkHjWjWjWkiovkijWjMababababababababababababababababababababababababababababababababababababababnSnSnSowowowowownSnTnUnUnUnUnUnUnUnUnUnUnUnUnUnTnSowowowowownSnSnSababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +abababababaaaaaaaaaaaaaaaalVlylylylyoxlVoyozoAlVoBlylylyoClVaaaaaaaaaaaaaaaaababababababababjMjWkHkHkHkHkHjWjWjWjWjWjWjWkHkHkHkHkHjWjWjWjWkijWjWjMababababababababababababababababababababababababababababababababababababababababnSoDoDoDoDoDnSoEoFoFoFoFoFoFoFoFoFoFoFoFoFoGnSoHoHoHoHoHnSababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +abababababaaaaaaaaaaaaaaaalVoIoJlylylylVoKoLoMlVoNlylylyoOlVaaaaaaaaaaaaaaaaababababababababjMjWkHkHkHkHkHjWjWjWjWjWjWjWkHkHkHkHkHjWjWjWjWjWjWjWjMababababababababababababababababababababababababababababababababababababababababnSnSnSnSnSnSnSoPoQoQoQoQoQoRoSoToQoQoQoQoQoPnSnSnSnSnSnSnSababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +abababababaaaaaaaaaaaaaaaalVlylylylylylVoUozoVlVoWlylylyoXlVaaaaaaaaaaaaaaaaababababababababjMjWjWjWjWjWjWjWjWjWjWjWjWjWjWjWjWjWjWjWjWjWjWjWjWjWjMababababababababababababababababababababababababababababababababababababababababababababababoYoPoPoPoZoPpapapapapaoPoZoPoPoPoYababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +abababababaaaaaaaaaaaaaaaalVlVlylypblVlVlVpclVlVlVpdpepflVlVaaaaaaaaaaaaaaaaababababababababjMjMjMjMjMjMjMjMjMjMjMjMjMjMjMjMjMjMjMjMjMjMjMjMjMjMjMababababababababababababababababababababababababababababababababababababababababababababababoYoYpgoYoYoYoYphpipjoYoYoYoYpgoYoYababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +abababababaaaaaaaaaaaaaaaaaalVlVlVlVlVpkpllyplpllVlVlVlVlVaaaaaaaaaaaaaaaaaaabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababoYoYoYoYoYababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +abababababaaaaaaaaaaaaaaaaaaaaaaaaaalVlylylylylylVaaaaaaaaaaaaaaaaaaaaaaaaaaababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +abababababaaaaaaaaaaaaaaaaaaaaaaaaaalVpmlypnlypmlVaaaaaaaaaaaaaaaaaaaaaaaaaaabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababpopopopopopopopopopopopopopopopopopopoababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +abababababaaaaaaaaaaaaaaaaaaaaaaaaaalVpppppppppplVaaaaaaaaaaaaaaaaaaaaaaaaaaabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababpopqprpsptptprpupvpwpxpypzpApzpzpzpBpoababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +abababababaaaaaaaaaaaaaaaaaaaaaaaaaalVlVpCpCpClVlVaaaaaaaaaaaaaaaaaaaaaaaaaaabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababpopqprprprprprpDpypypypEpzpzpzpFpzpzpoababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +abababababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaapGpGpGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababpopHprpIpqpJpKpLpypypypypzpzpMpzpNpApoababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +abababababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababpopOpypEpEpEpEpEpypypypypzpzpzpPpzpzpoababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +abababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababpopQpypypypypypypypypypypRpzpzpzpzpzpoababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +abababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababpopSpypypypypypypypypEpypRpTpTpTpUpTpoababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +abababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababpopVpypypypypypypypEpWpEpRpXpXpXpXpXpoababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +abababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababpopopYpZpZqapopopopopopopopopopopopopoababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +ababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababpoqbqbqbqbpoababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +ababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababpoqbqbqbqbpoababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +ababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababpopopopopopoababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +ababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +ababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +ababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +ababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +ababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +ababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +ababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +ababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +ababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +ababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +ababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +ababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +ababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +ababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +ababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +ababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +ababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +ababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +ababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +ababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +ababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +abababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababqcqdqeqfqgabababqcqdqeqfqgababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +ababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababqhqiqjqkqlqmqnabqhqiqoqpqqqmqnabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +ababababqrqrqrqrqrqrqrqrqrqrqrqrababababababababababababababababababababababababababababababababababababababababababababababababababababababababababqsqtquququqvqwabqsqxquququqvqwabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +ababababqrqyqyqyqyqyqyqyqyqyqyqrababababababababababababababababababababababababababababababababababababababababababababababababababababababababababqzqAqBqCqDqEqFabqzqAqGqCqHqEqFabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +ababababqrqIqJqKqKqKqKqJqKqKqKqrababababababababababababababababababababababababababababababababababababababababababababababababababababababababababqLqMquququqvqNabqLqMquququqvqNabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +abqrqrqrqrqOqPqPqQqKqKqRqPqPqOqrqrqrqrabababababababababababababababababababababababababababababababababababababababababababababababababababababababqSqTqUqVqWqXqYabqSqTqUqVqWqXqYabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +abqrqyqyqyqZrarbrcrcrcrcrdrareqyqyqyqrababababababababababababababababababababababababababababababababababababababababababababababababababababababababrfrgrhrirjabababrfrgrhrirjababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +abqrqJqKqKqKqKqRrkrkrkrkqRqKqKqKqKqJqrabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +abqrqKqKqKqJqKqKrkrkrkrkqKqKqJqKqKqKqrababababababababababababababababababababababababababababababababababababababababababababababababababababababababqcqdqeqfqgabababqcqdqeqfqgababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +abqrqKrlrmrmrmqKrkrnrkrkqKrlrmrmrlqKqrabababababababababababababababababababababababababababababababababababababababababababababababababababababababqhqirorprqqmqnabqhqirrrsrtqmqnabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +abqrqKqKqKqKqKqKrkrkrkrkqKqKqKqKqKqKqrabababababababababababababababababababababababababababababababababababababababababababababababababababababababqsruquququqvqwabqsrvquququqvqwabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +abqrqKrmrmrlrmqKrkrkrkrkqKrmrlrmrmqKqrabababababababababababababababababababababababababababababababababababababababababababababababababababababababqzqArwqCrxqEqFabqzqAryqCrzqEqFabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +abqrqKqKqJqKqKqKrkrnrkrkqKqKqJqKqKqKqrabababababababababababababababababababababababababababababababababababababababababababababababababababababababqLqMquququqvqNabqLqMquququqvqNabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +abqrqKrmrmrmrlqKrkrkrkrkqKrmrmrlrmqKqrabababababababababababababababababababababababababababababababababababababababababababababababababababababababqSqTqUqVqWqXqYabqSqTqUqVqWqXqYabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +abqrqKqKqKqJqKqKrkrArkrkqKqKqKqKqJqKqrababababababababababababababababababababababababababababababababababababababababababababababababababababababababrfrgrhrirjabababrfrgrhrirjababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +abqrqKrlrmrmrmqKrkrkrnrkqKrmrlrmrmqKqrabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +abqrqJqKqKqKqKqKrkrkrkrkqKqKqKqKqKqJqrabababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +abqrqrqrqrqrqrqrrkrkrkrkqrqrqrqrqrqrqrqrqrqrqrqrqrqrqrqrqrqrqrqrqrqrababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +abqrrBrBrBrBrBqrrCrkrkrkqrrDrErFrGrDqrrHrHrIrIrJrKqrrLrMrNrNrNrMrLqrababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +abqrrkrkrkrkrkqrrOrkrkrkqrrPrQrRrGrEqrrSrkrkrkrkrSqrqKqKqKrNqKqKqKqrababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +abqrrTrkrkrkrTqrrUrkrkrkqrrVrErPrDrFqrrSrkrkrkrkrIqrqKqKqKrNqKqKqKqrababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +abqrrWrXrkrkrWqrrYrkrkrkqrrZrZrZrZrZqrrKrkrXrXrkrHsaqKqKqKrNqKqKqKqrababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +abqrsbrkrkrkrUqrscrkrkrkqrsdrkrkrkseqrrKrkrXrXrkrHqrqKqKqKrNqKqKqKqrababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +abqrrWrkrkrkrWqrsfrkrkrkqrsdrkrkrkseqrrKrkrkrkrkrIqrqKqKqKrNqKqKqKqrababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +abqrrOrkrkrXsgqrrOrkrkrkshrkrkrkrkrkqrqrqrshqrqrqrqrrLrMrNsirNrMrLqrababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +abqrrWrXrkrkrWqrrkrkrkrkqrrkrkrkrkrkqrrKrHrkrIrHrKqrqKqKqKrNqKqKqKqrababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +abqrqrqrshqrqrqrqrqrqrqrqrrkrkrkrkrkqrrKrkrkrkrXrHqrqKqKqKrNqKqKqKqrababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +abqrrkrkrkrksjskslsmsnsoqrsdrkrkrXseqrrHrkrkrkrkrKqrqKqKqKrNqKqKqKqrababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +abqrrkspsprkrkrkrkrkrkrkqrsdrkrkrkseqrrIrkrkrkrkrSqrqKqKqKrNqKqKqKqrababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +abqrsdsqsrserkrkrkrkrkrkshrkrkrkrkrkshrkrkrXrkrkrKqrqKqKqKrNqKqKqKqrababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +abqrsdsqsqserkrkssrOrOrUqrrkrkrkrkrkqrrSrSrHrJrIrSqrrLrMrNrNrNrMrLqrababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab +abqrqrqrqrqrqrqrqrqrqrqrqrqrqrqrqrqrqrqrqrqrqrqrqrqrqrqrqrqrqrqrqrqrababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababst +ababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababst "} diff --git a/_maps/map_files/generic/z5.dmm b/_maps/map_files/generic/z5.dmm index 1bf6980061..b5fa974079 100644 --- a/_maps/map_files/generic/z5.dmm +++ b/_maps/map_files/generic/z5.dmm @@ -153,7 +153,10 @@ /turf/open/floor/plating/airless, /area/mine/abandoned) "aA" = ( -/obj/item/clothing/mask/facehugger/dead, +/obj/item/clothing/mask/facehugger{ + icon_state = "facehugger_dead"; + stat = 2 + }, /turf/open/floor/plasteel/airless, /area/mine/abandoned) "aB" = ( @@ -277,7 +280,10 @@ /turf/open/floor/plating/airless, /area/mine/abandoned) "aU" = ( -/obj/item/clothing/mask/facehugger/dead, +/obj/item/clothing/mask/facehugger{ + icon_state = "facehugger_dead"; + stat = 2 + }, /obj/structure/alien/weeds, /turf/open/floor/plating/airless, /area/mine/abandoned) @@ -318,7 +324,10 @@ /obj/item/weapon/shard{ icon_state = "small" }, -/obj/item/clothing/mask/facehugger/dead, +/obj/item/clothing/mask/facehugger{ + icon_state = "facehugger_dead"; + stat = 2 + }, /turf/open/space, /area/mine/abandoned) "bc" = ( @@ -387,7 +396,10 @@ }, /area/mine/abandoned) "bn" = ( -/obj/item/clothing/mask/facehugger/dead, +/obj/item/clothing/mask/facehugger{ + icon_state = "facehugger_dead"; + stat = 2 + }, /obj/structure/alien/weeds, /turf/open/floor/plasteel/airless{ icon_state = "floorscorched1" @@ -453,7 +465,10 @@ /turf/open/floor/plating/airless, /area/mine/abandoned) "by" = ( -/obj/item/clothing/mask/facehugger/dead, +/obj/item/clothing/mask/facehugger{ + icon_state = "facehugger_dead"; + stat = 2 + }, /obj/structure/alien/weeds, /turf/open/floor/plasteel/airless, /area/mine/abandoned) @@ -1076,7 +1091,7 @@ /turf/open/floor/plasteel/floorgrime, /area/mine/laborcamp) "dp" = ( -/obj/effect/decal/cleanable/cobweb/cobweb2, +/obj/effect/decal/cleanable/cobweb2, /obj/structure/chair{ dir = 8 }, @@ -4642,7 +4657,7 @@ /obj/structure/table, /obj/item/weapon/paper{ anchored = 0; - info = "A hastily written note has been scribbled here...

Please use the ore redemption machine in the cargo office for smelting. PLEASE!

--The Research Staff"; + info = "A hastily written note has been scribbled here...

Please use the ore redemption machine in the science wing for smelting. PLEASE!

--The Research Staff"; name = "URGENT!" }, /turf/open/floor/plasteel/bot{ diff --git a/_maps/ministation.dm b/_maps/ministation.dm index e47dece814..268439050a 100644 --- a/_maps/ministation.dm +++ b/_maps/ministation.dm @@ -50,18 +50,13 @@ Changes to the uplinks were made to discourage murderboning, the rest is the sam #define TITLESCREEN "title" //Add an image in misc/fullscreen.dmi, and set this define to the icon_state, to set a custom titlescreen for your map - // Uncomment the following to use the old mining asteroid (The mining shuttle won't be used if this is enabled) - //#define MINETYPE "mining" + #define MINETYPE "mining" #include "map_files\MiniStation\MiniStation.dmm" #include "map_files\generic\z2.dmm" #include "map_files\generic\z3.dmm" #include "map_files\generic\z4.dmm" - #if defined(MINETYPE) - #include "map_files\MiniStation\z5.dmm" - #else - #include "map_files\MiniStation\lavaland.dmm" - #endif + #include "map_files\MiniStation\z5.dmm" #include "map_files\generic\z6.dmm" #include "map_files\generic\z7.dmm" #include "map_files\generic\z8.dmm" @@ -73,26 +68,14 @@ Changes to the uplinks were made to discourage murderboning, the rest is the sam #define MAP_FILE "MiniStation.dmm" #define MAP_NAME "MiniStation" - #if defined(MINETYPE) - #define MAP_TRANSITION_CONFIG list(MAIN_STATION = CROSSLINKED, CENTCOMM = SELFLOOPING, EMPTY_AREA_1 = CROSSLINKED, EMPTY_AREA_2 = CROSSLINKED, MINING = CROSSLINKED, EMPTY_AREA_3 = CROSSLINKED, EMPTY_AREA_4 = SELFLOOPING, EMPTY_AREA_5 = SELFLOOPING, EMPTY_AREA_6 = SELFLOOPING, EMPTY_AREA_7 = SELFLOOPING, EMPTY_AREA_8 = SELFLOOPING) - #else - #define MAP_TRANSITION_CONFIG list(MAIN_STATION = CROSSLINKED, CENTCOMM = SELFLOOPING, EMPTY_AREA_1 = CROSSLINKED, EMPTY_AREA_2 = CROSSLINKED, MINING = SELFLOOPING, EMPTY_AREA_3 = CROSSLINKED, EMPTY_AREA_4 = SELFLOOPING, EMPTY_AREA_5 = SELFLOOPING, EMPTY_AREA_6 = SELFLOOPING, EMPTY_AREA_7 = SELFLOOPING, EMPTY_AREA_8 = SELFLOOPING) - #endif - - #include "..\code\__DEFINES\misc.dm" //Load defines early so we can modify them - #if defined(MINETYPE) - #define ZLEVEL_LAVALAND -1 //Prevents lavaland weather effects from happening on the mining asteroid - #endif - #define ZLEVEL_SPACEMAX 6 //Makes space navigation a little more manageable for lowpop, especially with no mining shuttle - - #if !defined(MINETYPE) - #define MINETYPE "lavaland" - #endif + #define MAP_TRANSITION_CONFIG DEFAULT_MAP_TRANSITION_CONFIG #if !defined(MAP_OVERRIDE_FILES) #define MAP_OVERRIDE_FILES #include "map_files\MiniStation\misc.dm" #include "map_files\MiniStation\cargopacks.dm" + #include "map_files\MiniStation\telecomms.dm" + #include "map_files\MiniStation\uplink_item.dm" #include "map_files\MiniStation\job\jobs.dm" #include "map_files\MiniStation\job\removed.dm" #endif diff --git a/_maps/pubbystation.dm b/_maps/pubbystation.dm deleted file mode 100644 index 92ef96be5e..0000000000 --- a/_maps/pubbystation.dm +++ /dev/null @@ -1,37 +0,0 @@ -#if !defined(MAP_FILE) - - #define TITLESCREEN "title" //Add an image in misc/fullscreen.dmi, and set this define to the icon_state, to set a custom titlescreen for your map - - #define MINETYPE "lavaland" - - #include "map_files\PubbyStation\PubbyStation.dmm" - #include "map_files\generic\z2.dmm" - #include "map_files\generic\z3.dmm" - #include "map_files\generic\z4.dmm" - #include "map_files\generic\lavaland.dmm" - #include "map_files\generic\z6.dmm" - #include "map_files\generic\z7.dmm" - #include "map_files\generic\z8.dmm" - #include "map_files\generic\z9.dmm" - #include "map_files\generic\z10.dmm" - #include "map_files\generic\z11.dmm" - - #define MAP_PATH "map_files/PubbyStation" - #define MAP_FILE "PubbyStation.dmm" - #define MAP_NAME "PubbyStation" - - #define MAP_TRANSITION_CONFIG DEFAULT_MAP_TRANSITION_CONFIG - - #if !defined(MAP_OVERRIDE_FILES) - #define MAP_OVERRIDE_FILES - #include "map_files\PubbyStation\job\job_changes.dm" - #include "map_files\PubbyStation\job\removed_jobs.dm" - #include "map_files\PubbyStation\monastery_shuttle.dm" - #include "map_files\PubbyStation\areas.dm" - #endif - -#elif !defined(MAP_OVERRIDE) - - #warn a map has already been included, ignoring PubbyStation. - -#endif diff --git a/_maps/runtimestation.dm b/_maps/runtimestation.dm deleted file mode 100644 index 7c97c10344..0000000000 --- a/_maps/runtimestation.dm +++ /dev/null @@ -1,23 +0,0 @@ -#if !defined(MAP_FILE) - - // Runtime Station - // This is a developer sandbox map that will compile and - // load quickly. Not intended for production deployment. - - #define TITLESCREEN "title" - - #define MINETYPE "lavaland" - - #include "map_files\debug\runtimestation.dmm" - - #define MAP_PATH "map_files/debug" - #define MAP_FILE "runtimestation.dmm" - #define MAP_NAME "Runtime Station" - - #define MAP_TRANSITION_CONFIG list(MAIN_STATION = UNAFFECTED) - -#elif !defined(MAP_OVERRIDE) - - #warn a map has already been included, ignoring Runtime Station. - -#endif diff --git a/_maps/shuttles/cargo_birdboat.dmm b/_maps/shuttles/cargo_birdboat.dmm index 056319c722..ed21b35382 100644 --- a/_maps/shuttles/cargo_birdboat.dmm +++ b/_maps/shuttles/cargo_birdboat.dmm @@ -1,9 +1,15 @@ //MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE "a" = ( -/turf/closed/wall/mineral/titanium/overspace, +/turf/closed/wall/shuttle{ + icon_state = "swall_s6"; + dir = 2 + }, /area/shuttle/supply) "b" = ( -/turf/closed/wall/mineral/titanium, +/turf/closed/wall/shuttle{ + icon_state = "swall12"; + dir = 2 + }, /area/shuttle/supply) "c" = ( /turf/closed/wall/shuttle{ @@ -23,7 +29,7 @@ id = "cargoshuttle"; name = "cargo shuttle conveyor belt" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/supply) "f" = ( /obj/machinery/conveyor{ @@ -31,7 +37,7 @@ id = "cargoshuttle"; name = "cargo shuttle conveyor belt" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/supply) "g" = ( /obj/machinery/conveyor{ @@ -39,7 +45,7 @@ id = "cargoshuttle"; name = "cargo shuttle conveyor belt" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/supply) "h" = ( /obj/machinery/conveyor{ @@ -47,7 +53,7 @@ id = "cargoshuttle"; name = "cargo shuttle conveyor belt" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/supply) "i" = ( /obj/machinery/conveyor{ @@ -55,7 +61,7 @@ id = "cargoshuttle"; name = "cargo shuttle conveyor belt" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/supply) "j" = ( /obj/machinery/conveyor{ @@ -63,7 +69,7 @@ id = "cargoshuttle"; name = "cargo shuttle conveyor belt" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/supply) "k" = ( /obj/machinery/conveyor{ @@ -71,7 +77,7 @@ id = "cargoshuttle"; name = "cargo shuttle conveyor belt" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/supply) "l" = ( /obj/machinery/door/poddoor{ @@ -86,13 +92,13 @@ /turf/open/floor/plating, /area/shuttle/supply) "m" = ( -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/supply) "n" = ( -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/supply) "o" = ( -/obj/machinery/door/airlock/titanium{ +/obj/machinery/door/airlock/shuttle{ name = "Supply Shuttle Airlock"; req_access_txt = "31" }, @@ -115,10 +121,10 @@ /obj/machinery/conveyor_switch/oneway{ id = "cargoshuttle" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/supply) "q" = ( -/obj/machinery/door/airlock/titanium{ +/obj/machinery/door/airlock/shuttle{ name = "Supply Shuttle Airlock"; req_access_txt = "31" }, @@ -142,7 +148,9 @@ /turf/open/floor/plating, /area/shuttle/supply) "s" = ( -/turf/closed/wall/mineral/titanium/nodiagonal, +/turf/closed/wall/shuttle{ + icon_state = "swallc3" + }, /area/shuttle/supply) "t" = ( /turf/closed/wall/shuttle{ @@ -184,15 +192,15 @@ /area/shuttle/supply) (1,1,1) = {" -b -b -b -b -b -b -b -b -b +a +d +d +d +d +d +d +d +s w "} (2,1,1) = {" @@ -204,7 +212,7 @@ m m m g -b +t x "} (3,1,1) = {" @@ -252,18 +260,18 @@ n p n g -b +t z "} (7,1,1) = {" -b -b -b +c +d +d l o -b +d q r -b +v w "} diff --git a/_maps/shuttles/cargo_box.dmm b/_maps/shuttles/cargo_box.dmm index e66dcfe483..bbc040600c 100644 --- a/_maps/shuttles/cargo_box.dmm +++ b/_maps/shuttles/cargo_box.dmm @@ -1,9 +1,15 @@ //MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE "a" = ( -/turf/closed/wall/mineral/titanium/overspace, +/turf/closed/wall/shuttle{ + icon_state = "swall_s6"; + dir = 2 + }, /area/shuttle/supply) "b" = ( -/turf/closed/wall/mineral/titanium, +/turf/closed/wall/shuttle{ + icon_state = "swall12"; + dir = 2 + }, /area/shuttle/supply) "c" = ( /turf/closed/wall/shuttle{ @@ -18,7 +24,7 @@ }, /area/shuttle/supply) "e" = ( -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/supply) "f" = ( /obj/machinery/conveyor{ @@ -32,7 +38,7 @@ /turf/open/floor/plating, /area/shuttle/supply) "g" = ( -/obj/machinery/door/airlock/titanium{ +/obj/machinery/door/airlock/shuttle{ name = "Supply Shuttle Airlock"; req_access_txt = "31" }, @@ -52,10 +58,10 @@ pixel_x = 24; pixel_y = -8 }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/supply) "i" = ( -/obj/machinery/door/airlock/titanium{ +/obj/machinery/door/airlock/shuttle{ name = "Supply Shuttle Airlock"; req_access_txt = "31" }, @@ -84,8 +90,10 @@ }, /area/shuttle/supply) "l" = ( -/turf/open/floor/mineral/titanium/blue, -/turf/closed/wall/mineral/titanium/interior, +/turf/open/floor/plasteel/shuttle, +/turf/closed/wall/shuttle/interior{ + icon_state = "swall_f10" + }, /area/shuttle/supply) "m" = ( /turf/open/floor/plasteel/shuttle, @@ -145,17 +153,17 @@ /area/shuttle/supply) (1,1,1) = {" -b -b -b -b -b -b -b -b -b -b -b +a +d +d +d +d +d +d +d +d +k +o s "} (2,1,1) = {" @@ -169,7 +177,7 @@ e e e l -b +p t "} (3,1,1) = {" @@ -224,21 +232,21 @@ h e e e -l -b +m +p v "} (7,1,1) = {" -b -b -b +c +d +d f g -b +d i j -b -b -b +d +n +r s "} diff --git a/_maps/shuttles/emergency_airless.dmm b/_maps/shuttles/emergency_airless.dmm index 480f27bd8a..17c492af9d 100644 --- a/_maps/shuttles/emergency_airless.dmm +++ b/_maps/shuttles/emergency_airless.dmm @@ -1,36 +1,381 @@ -"a" = (/turf/open/space,/area/space) -"b" = (/turf/open/floor/plating/airless,/area/shuttle/escape) -"c" = (/turf/closed/wall,/area/shuttle/escape) -"d" = (/obj/structure/closet/malf,/turf/open/floor/plating/airless,/area/shuttle/escape) -"e" = (/obj/machinery/status_display,/turf/closed/wall,/area/shuttle/escape) -"f" = (/obj/effect/shuttle_build,/turf/open/floor/plating/airless,/area/shuttle/escape) -"g" = (/turf/open/floor/plating,/area/shuttle/escape) -"h" = (/obj/docking_port/mobile/emergency{name = "Shuttle Under Construction"; timid = 1},/turf/open/floor/plating/airless,/area/shuttle/escape) -"i" = (/obj/structure/rack,/obj/effect/spawner/lootdrop/maintenance{lootcount = 4; name = "4maintenance loot spawner"},/turf/open/floor/plating/airless,/area/shuttle/escape) -"j" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/shuttle/engine/heater,/turf/open/floor/plating/airless,/area/shuttle/escape) -"k" = (/obj/structure/shuttle/engine/propulsion,/turf/open/floor/plating/airless,/area/shuttle/escape) +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"a" = ( +/turf/open/space, +/area/space) +"b" = ( +/turf/open/floor/plating/airless, +/area/shuttle/escape) +"c" = ( +/turf/closed/wall, +/area/shuttle/escape) +"d" = ( +/obj/structure/fireaxecabinet, +/turf/closed/wall, +/area/shuttle/escape) +"e" = ( +/obj/structure/closet/malf, +/turf/open/floor/plating/airless, +/area/shuttle/escape) +"f" = ( +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/structure/grille, +/turf/open/floor/plating/airless, +/area/shuttle/escape) +"g" = ( +/obj/structure/window/reinforced, +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/structure/grille, +/turf/open/floor/plating/airless, +/area/shuttle/escape) +"h" = ( +/obj/structure/window/reinforced{ + dir = 4; + pixel_x = 0 + }, +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/structure/grille, +/turf/open/floor/plating/airless, +/area/shuttle/escape) +"i" = ( +/obj/machinery/computer/emergency_shuttle, +/turf/open/floor/plating/airless, +/area/shuttle/escape) +"j" = ( +/obj/structure/window/reinforced, +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/structure/grille, +/turf/open/floor/plating/airless, +/area/shuttle/escape) +"k" = ( +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/structure/window/reinforced, +/obj/structure/grille, +/turf/open/floor/plating/airless, +/area/shuttle/escape) +"l" = ( +/turf/open/floor/plating, +/area/shuttle/escape) +"m" = ( +/obj/structure/chair{ + dir = 8 + }, +/obj/structure/window/reinforced{ + dir = 4; + pixel_x = 0 + }, +/turf/open/floor/plating/airless, +/area/shuttle/escape) +"n" = ( +/obj/structure/chair{ + dir = 4 + }, +/turf/open/floor/plating/airless, +/area/shuttle/escape) +"o" = ( +/obj/docking_port/mobile/emergency{ + name = "Shuttle Under Construction"; + timid = 1 + }, +/turf/open/floor/plating/airless, +/area/shuttle/escape) +"p" = ( +/obj/structure/rack, +/obj/effect/spawner/lootdrop/maintenance{ + lootcount = 4; + name = "4maintenance loot spawner" + }, +/turf/open/floor/plating/airless, +/area/shuttle/escape) +"q" = ( +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/structure/shuttle/engine/heater, +/turf/open/floor/plating/airless, +/area/shuttle/escape) +"r" = ( +/obj/structure/shuttle/engine/propulsion, +/turf/open/floor/plating/airless, +/area/shuttle/escape) +"s" = ( +/obj/machinery/status_display, +/turf/closed/wall, +/area/shuttle/escape) (1,1,1) = {" -aabbbbbbbaa -abbbbbbbbba -acdbbbbbbba -aedbbbfbbba -abdbbbbbbba -abbbbbbbbba -bbbbbbbbbbc -gbbbbbbbbbc -bbbbbbbbbbc -hbbbbbbbbbc -bbbbbbbbbbc -bbbbbbbbbbb -bbbbbbbbbbc -bbbbbbbbbbc -abbbbbbbbba -abbbbbbbica -abbbbbbbiea -acbbbbbbica -acbbbbbbbba -acbbbbbbbca -aajjjjjjjaa -aakkkkkkkaa +a +a +a +a +a +a +b +l +b +o +b +b +b +b +a +a +a +a +a +a +a +a +"} +(2,1,1) = {" +a +b +c +s +c +b +b +b +b +b +b +b +b +b +b +b +b +c +c +c +a +a +"} +(3,1,1) = {" +b +b +e +e +e +b +b +m +m +m +m +m +b +b +b +b +b +b +b +b +q +r +"} +(4,1,1) = {" +c +b +b +b +b +b +b +n +n +n +n +n +b +b +b +b +b +b +b +b +q +r +"} +(5,1,1) = {" +c +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +q +r +"} +(6,1,1) = {" +c +b +b +b +b +b +b +m +m +m +m +m +b +b +b +b +b +b +b +b +q +r +"} +(7,1,1) = {" +d +b +b +b +b +b +b +n +n +n +n +n +b +b +b +b +b +b +b +b +q +r +"} +(8,1,1) = {" +c +b +f +h +j +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +q +r +"} +(9,1,1) = {" +c +b +g +i +k +b +b +m +m +m +m +m +b +b +b +p +p +p +b +b +q +r +"} +(10,1,1) = {" +a +b +c +c +c +b +b +b +b +b +b +b +b +b +b +c +s +c +b +c +a +a +"} +(11,1,1) = {" +a +a +a +a +a +a +c +c +c +c +c +b +c +c +a +a +a +a +a +a +a +a "} diff --git a/_maps/shuttles/emergency_asteroid.dmm b/_maps/shuttles/emergency_asteroid.dmm index a093338f73..cc22fab653 100644 --- a/_maps/shuttles/emergency_asteroid.dmm +++ b/_maps/shuttles/emergency_asteroid.dmm @@ -3,10 +3,16 @@ /turf/open/space, /area/space) "ab" = ( -/turf/closed/wall/mineral/titanium/overspace, +/turf/closed/wall/shuttle{ + icon_state = "swall_s6"; + dir = 2 + }, /area/shuttle/escape) "ac" = ( -/turf/closed/wall/mineral/titanium, +/turf/closed/wall/shuttle{ + icon_state = "swall14"; + dir = 2 + }, /area/shuttle/escape) "ad" = ( /obj/structure/window/shuttle, @@ -14,10 +20,10 @@ /turf/open/floor/plating, /area/shuttle/escape) "ae" = ( -/obj/machinery/door/airlock/titanium{ +/obj/machinery/door/airlock/shuttle{ name = "Emergency Shuttle Airlock" }, -/turf/open/floor/mineral/titanium/yellow, +/turf/open/floor/plasteel/shuttle/yellow, /area/shuttle/escape) "af" = ( /turf/closed/wall/shuttle{ @@ -34,13 +40,13 @@ /turf/open/floor/plating, /area/shuttle/escape) "ai" = ( -/obj/machinery/door/airlock/titanium{ +/obj/machinery/door/airlock/shuttle{ name = "Emergency Shuttle Airlock" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "aj" = ( -/obj/machinery/door/airlock/titanium{ +/obj/machinery/door/airlock/shuttle{ name = "Emergency Shuttle Airlock" }, /obj/docking_port/mobile/emergency{ @@ -51,7 +57,7 @@ width = 28; timid = 1 }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "ak" = ( /turf/closed/wall/shuttle{ @@ -60,11 +66,11 @@ }, /area/shuttle/escape) "al" = ( -/obj/machinery/door/airlock/titanium{ +/obj/machinery/door/airlock/shuttle{ name = "Emergency Shuttle Airlock"; req_access_txt = "2" }, -/turf/open/floor/mineral/plastitanium/brig, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/escape) "am" = ( /obj/structure/shuttle/engine/propulsion{ @@ -88,14 +94,14 @@ /area/shuttle/escape) "ap" = ( /obj/structure/ore_box, -/turf/open/floor/mineral/titanium/yellow, +/turf/open/floor/plasteel/shuttle/yellow, /area/shuttle/escape) "aq" = ( -/turf/open/floor/mineral/titanium/yellow, +/turf/open/floor/plasteel/shuttle/yellow, /area/shuttle/escape) "ar" = ( /obj/machinery/recharge_station, -/turf/open/floor/mineral/titanium/yellow, +/turf/open/floor/plasteel/shuttle/yellow, /area/shuttle/escape) "as" = ( /turf/closed/wall/shuttle{ @@ -104,7 +110,7 @@ }, /area/shuttle/escape) "at" = ( -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "au" = ( /turf/closed/wall/shuttle{ @@ -116,16 +122,16 @@ /obj/structure/chair{ dir = 4 }, -/turf/open/floor/mineral/plastitanium/brig, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/escape) "aw" = ( -/turf/open/floor/mineral/plastitanium/brig, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/escape) "ax" = ( /obj/structure/chair{ dir = 8 }, -/turf/open/floor/mineral/plastitanium/brig, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/escape) "ay" = ( /turf/closed/wall/shuttle{ @@ -134,7 +140,10 @@ }, /area/shuttle/escape) "az" = ( -/turf/closed/wall/mineral/titanium/nodiagonal, +/turf/closed/wall/shuttle{ + icon_state = "swallc4"; + dir = 2 + }, /area/shuttle/escape) "aA" = ( /turf/closed/wall/shuttle{ @@ -143,8 +152,9 @@ }, /area/shuttle/escape) "aB" = ( -/turf/open/floor/mineral/titanium, -/turf/closed/wall/mineral/titanium/interior, +/turf/closed/wall/shuttle{ + icon_state = "swall_f13" + }, /area/shuttle/escape) "aC" = ( /turf/closed/wall/shuttle{ @@ -165,38 +175,38 @@ name = "Station Intercom (General)"; pixel_x = -28 }, -/turf/open/floor/mineral/plastitanium/brig, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/escape) "aF" = ( /obj/machinery/suit_storage_unit, -/turf/open/floor/mineral/titanium/yellow, +/turf/open/floor/plasteel/shuttle/yellow, /area/shuttle/escape) "aG" = ( /obj/machinery/door/airlock/mining{ name = "Emergency Shuttle Storage"; req_access_txt = "0" }, -/turf/open/floor/mineral/titanium/yellow, +/turf/open/floor/plasteel/shuttle/yellow, /area/shuttle/escape) "aH" = ( /obj/structure/extinguisher_cabinet{ pixel_y = 30 }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "aI" = ( /obj/structure/closet, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "aJ" = ( /obj/structure/table, /obj/item/weapon/extinguisher, /obj/item/weapon/crowbar, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "aK" = ( /obj/structure/chair, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "aL" = ( /obj/structure/table, @@ -205,7 +215,7 @@ pixel_x = 2; pixel_y = 3 }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "aM" = ( /obj/structure/closet/emcloset, @@ -214,11 +224,11 @@ name = "Station Intercom (General)"; pixel_y = 23 }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "aN" = ( /obj/structure/bed/roller, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "aO" = ( /turf/closed/wall/shuttle{ @@ -231,36 +241,36 @@ name = "Emergency Shuttle Brig"; req_access_txt = "2" }, -/turf/open/floor/mineral/plastitanium/brig, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/escape) "aQ" = ( /obj/structure/bed, -/turf/open/floor/mineral/plastitanium/brig, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/escape) "aR" = ( /obj/machinery/computer/station_alert, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "aS" = ( -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "aT" = ( /obj/structure/chair/office/light{ name = "Chief Engineer" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "aU" = ( /obj/structure/chair/office/light{ name = "Captain" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "aV" = ( /obj/structure/chair/office/light{ name = "Head of Security" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "aW" = ( /obj/item/device/radio/intercom{ @@ -268,33 +278,36 @@ name = "Station Intercom (General)"; pixel_y = 23 }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "aX" = ( /obj/machinery/ai_status_display, -/turf/closed/wall/mineral/titanium, +/turf/closed/wall/shuttle{ + icon_state = "swall1"; + dir = 2 + }, /area/shuttle/escape) "aY" = ( /obj/structure/chair{ dir = 8 }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "aZ" = ( /obj/structure/chair{ dir = 1 }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "ba" = ( /obj/structure/chair{ dir = 4 }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "bb" = ( /obj/machinery/computer/security, -/turf/open/floor/mineral/plastitanium/brig, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/escape) "bc" = ( /obj/structure/table, @@ -302,29 +315,29 @@ pixel_x = -1; pixel_y = 6 }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "bd" = ( /obj/machinery/computer/emergency_shuttle, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "be" = ( /obj/structure/table, /obj/item/weapon/folder/blue, /obj/item/weapon/pen, /obj/machinery/recharger, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "bf" = ( /obj/machinery/ai_slipper, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "bg" = ( /obj/machinery/door/airlock/glass_command{ name = "Emergency Shuttle Cockpit"; req_access_txt = "19" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "bh" = ( /obj/structure/grille, @@ -333,38 +346,41 @@ /area/shuttle/escape) "bi" = ( /obj/machinery/status_display, -/turf/closed/wall/mineral/titanium, +/turf/closed/wall/shuttle{ + icon_state = "swall7"; + dir = 2 + }, /area/shuttle/escape) "bj" = ( /obj/machinery/computer/communications, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "bk" = ( /obj/structure/chair/office/light{ dir = 1; name = "Research Director" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "bl" = ( /obj/structure/chair/office/light{ dir = 1; name = "Head of Personnel" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "bm" = ( /obj/structure/chair/office/light{ dir = 1; name = "Chief Medical Officer" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "bn" = ( /obj/structure/extinguisher_cabinet{ pixel_y = -30 }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "bo" = ( /obj/machinery/status_display, @@ -375,7 +391,7 @@ /area/shuttle/escape) "bp" = ( /obj/machinery/computer/crew, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "bq" = ( /obj/machinery/door/airlock/glass_medical{ @@ -383,7 +399,7 @@ name = "Escape Shuttle Infirmary"; req_access_txt = "5" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "br" = ( /obj/machinery/door/airlock/glass_medical{ @@ -391,11 +407,11 @@ name = "Escape Shuttle Infirmary"; req_access_txt = "0" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "bs" = ( /obj/structure/bed, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "bt" = ( /obj/structure/sink{ @@ -407,17 +423,17 @@ /obj/structure/mirror{ pixel_x = -30 }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "bu" = ( /obj/machinery/door/airlock{ name = "Emergency Shuttle Restroom" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "bv" = ( /obj/structure/closet/emcloset, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "bw" = ( /obj/structure/chair{ @@ -427,7 +443,7 @@ name = "Station Intercom (General)"; pixel_y = -29 }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "bx" = ( /obj/structure/chair{ @@ -436,21 +452,21 @@ /obj/structure/extinguisher_cabinet{ pixel_y = -30 }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "by" = ( /obj/structure/table, /obj/item/weapon/extinguisher, /obj/item/weapon/crowbar, /obj/machinery/recharger, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "bz" = ( /obj/machinery/sleeper{ icon_state = "sleeper-open"; dir = 8 }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "bA" = ( /turf/closed/wall/shuttle{ @@ -470,28 +486,28 @@ name = "Station Intercom (General)"; pixel_x = -28 }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "bD" = ( /obj/structure/closet/secure_closet/medical2, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "bE" = ( /obj/structure/toilet{ dir = 1 }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "bF" = ( /obj/structure/table, /obj/item/weapon/retractor, /obj/item/weapon/hemostat, /obj/item/weapon/scalpel, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "bG" = ( /obj/structure/table/optable, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "bH" = ( /obj/structure/table, @@ -500,84 +516,82 @@ pixel_x = 4 }, /obj/item/weapon/surgical_drapes, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "bI" = ( -/obj/structure/window/shuttle, -/obj/structure/grille, -/turf/open/floor/mineral/titanium/blue, +/turf/closed/wall/shuttle, /area/shuttle/escape) (1,1,1) = {" aa aa -ac +ab am -ac +as ad ad -bI -ac +ad +as am -ac +bB aa aa "} (2,1,1) = {" -ac +ab am -ac +ak an -ac +ak aR aS bj -ac +ak an -ac +ak am -ac +bB "} (3,1,1) = {" ac an -ac -ac -ac +ay +au +aA aS aS aS ac -ac -ac +au +ay an -ac +aA "} (4,1,1) = {" ac -ac +ao az aF -ac +ak aT bc bk -ac +ak bt -az -ac ac +ao +aA "} (5,1,1) = {" ad ap aq aq -ac +ak aU bd bl -ac +ak at bu bE @@ -588,50 +602,50 @@ ae aq aq aq -ac +ak aV be bm -ac +ak at ac -ac -ac +au +bI "} (7,1,1) = {" ad ar aq aq -ac +ak aW bf bn -ac +ak at bu bE ad "} (8,1,1) = {" -ac -ac -ac +af +as +as aG -ac +aO aX bg -bi +bo az bu -az -ac -ac +ay +as +bA "} (9,1,1) = {" ag -ac -ac +af +aA aH at at @@ -640,13 +654,13 @@ at at at ac -ac +bA aa "} (10,1,1) = {" ag ag -ac +ak aI at aY @@ -654,7 +668,7 @@ aY aY at bv -ac +ak aa aa "} @@ -669,7 +683,7 @@ ah aK at aL -ac +ak aa aa "} @@ -684,14 +698,14 @@ ah aK at aS -ac +ak aa aa "} (13,1,1) = {" ah ah -aB +aC aK at aZ @@ -699,7 +713,7 @@ ah aK at bw -ac +ak aa aa "} @@ -759,7 +773,7 @@ ah aK at bx -ac +ak aa aa "} @@ -774,14 +788,14 @@ ah aK at aS -ac +ak aa aa "} (19,1,1) = {" ah ah -aB +aC aL at aZ @@ -789,14 +803,14 @@ ah aK at by -ac +ak aa aa "} (20,1,1) = {" ag ag -ac +ak aM at ba @@ -804,14 +818,14 @@ ba ba at aI -ac +ak aa aa "} (21,1,1) = {" ag -ac -ac +ag +ak aN at at @@ -819,14 +833,14 @@ at at at aN -ac -ac +ak +aa aa "} (22,1,1) = {" -ac -ac -ac +ab +au +ao ad aP ad @@ -834,24 +848,24 @@ bi ad br ad -ac -ac -ac +ao +au +bB "} (23,1,1) = {" -ac +ak av aE av aw bb -ac +ak bp at at bC bF -ac +ak "} (24,1,1) = {" al @@ -869,47 +883,47 @@ bG ad "} (25,1,1) = {" -ac +ak ax ax ax aw aw -ac +ak at at bz bD bH -ac +ak "} (26,1,1) = {" -ac -ac -ac -ac +af +au +as +as ad aP -ac +ak bq ad -ac -ac -ac -ac +as +as +au +bA "} (27,1,1) = {" aa aa -ac -ac +af +aA aQ aw ad at bs ac -ac +bA aa aa "} @@ -917,13 +931,13 @@ aa ag ag ag -ac -ac +af +au ad -ac +ao ad -ac -ac +au +bA aa aa aa diff --git a/_maps/shuttles/emergency_bar.dmm b/_maps/shuttles/emergency_bar.dmm index 7e888e9d4d..15abf97cae 100644 --- a/_maps/shuttles/emergency_bar.dmm +++ b/_maps/shuttles/emergency_bar.dmm @@ -3,7 +3,7 @@ /turf/open/space, /area/space) "ab" = ( -/turf/closed/wall/mineral/titanium/overspace, +/turf/closed/wall/shuttle/smooth/overspace, /area/shuttle/escape) "ac" = ( /obj/structure/grille, @@ -17,7 +17,7 @@ }, /area/shuttle/escape) "ae" = ( -/turf/closed/wall/mineral/titanium/nodiagonal, +/turf/closed/wall/shuttle/smooth/nodiagonal, /area/shuttle/escape) "af" = ( /obj/structure/table/wood, @@ -150,7 +150,7 @@ /area/shuttle/escape) "aA" = ( /obj/machinery/status_display, -/turf/closed/wall/mineral/titanium, +/turf/closed/wall/shuttle/smooth, /area/shuttle/escape) "aB" = ( /turf/closed/wall/shuttle{ @@ -160,7 +160,7 @@ /area/shuttle/escape) "aC" = ( /obj/structure/chair, -/turf/open/floor/mineral/plastitanium/brig, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/escape) "aD" = ( /obj/machinery/flasher{ @@ -204,10 +204,10 @@ pixel_x = -24; pixel_y = -6 }, -/turf/open/floor/mineral/plastitanium/brig, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/escape) "aI" = ( -/turf/open/floor/mineral/plastitanium/brig, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/escape) "aJ" = ( /obj/machinery/door/airlock/glass{ @@ -217,24 +217,24 @@ /turf/open/floor/plasteel/bar, /area/shuttle/escape) "aK" = ( -/obj/machinery/door/airlock/titanium{ +/obj/machinery/door/airlock/shuttle{ name = "Emergency Shuttle Airlock"; req_access_txt = "2" }, -/turf/open/floor/mineral/plastitanium/brig, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/escape) "aL" = ( /obj/structure/extinguisher_cabinet{ pixel_x = 0; pixel_y = -30 }, -/turf/open/floor/mineral/plastitanium/brig, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/escape) "aM" = ( /obj/structure/chair{ dir = 1 }, -/turf/open/floor/mineral/plastitanium/brig, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/escape) "aN" = ( /obj/structure/chair/stool/bar{ @@ -276,7 +276,7 @@ /turf/open/floor/plasteel/bar, /area/shuttle/escape) "aT" = ( -/obj/machinery/door/airlock/titanium{ +/obj/machinery/door/airlock/shuttle{ name = "Emergency Shuttle Airlock" }, /obj/docking_port/mobile/emergency{ @@ -350,7 +350,7 @@ }, /area/shuttle/escape) "bg" = ( -/obj/machinery/door/airlock/titanium{ +/obj/machinery/door/airlock/shuttle{ name = "Emergency Shuttle Airlock" }, /turf/open/floor/plasteel/bar, @@ -362,7 +362,7 @@ /turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "bi" = ( -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "bj" = ( /obj/structure/table/reinforced, @@ -394,10 +394,10 @@ /obj/structure/grille, /obj/structure/window/shuttle, /obj/structure/sign/bluecross_2, -/turf/closed/wall/mineral/titanium, +/turf/open/floor/plasteel/freezer, /area/shuttle/escape) "bo" = ( -/obj/machinery/door/airlock/titanium{ +/obj/machinery/door/airlock/shuttle{ name = "Emergency Shuttle Airlock" }, /turf/open/floor/plasteel/freezer, @@ -409,13 +409,13 @@ /obj/machinery/door/airlock/glass_medical{ name = "Medbay" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "br" = ( /obj/machinery/sleeper{ dir = 8 }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "bs" = ( /obj/machinery/door/airlock{ @@ -424,7 +424,7 @@ /turf/open/floor/plasteel/freezer, /area/shuttle/escape) "bt" = ( -/turf/closed/wall/mineral/titanium, +/turf/closed/wall/shuttle/smooth, /area/shuttle/escape) "bu" = ( /obj/machinery/door/airlock{ @@ -441,7 +441,7 @@ "bw" = ( /obj/structure/table/optable, /obj/item/weapon/surgical_drapes, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "bx" = ( /obj/structure/toilet{ @@ -461,16 +461,21 @@ /obj/item/weapon/hemostat, /obj/item/weapon/retractor, /obj/item/weapon/scalpel, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "bA" = ( -/turf/open/space, -/turf/closed/wall/mineral/plastitanium{ - icon_state = "diagonalWall3" +/turf/closed/wall/shuttle{ + tag = "icon-gwall_space"; + icon_state = "gwall_space"; + dir = 2 }, /area/shuttle/escape) "bB" = ( -/turf/closed/wall/mineral/plastitanium, +/turf/closed/wall/shuttle{ + tag = "icon-wall3"; + icon_state = "wall3"; + dir = 2 + }, /area/shuttle/escape) "bC" = ( /obj/structure/window/reinforced{ @@ -480,10 +485,10 @@ /turf/open/floor/plating/airless, /area/shuttle/escape) "bD" = ( -/turf/open/space, -/turf/closed/wall/mineral/plastitanium{ - dir = 4; - icon_state = "diagonalWall3" +/turf/closed/wall/shuttle{ + tag = "icon-gwall_space (EAST)"; + icon_state = "gwall_space"; + dir = 4 }, /area/shuttle/escape) "bE" = ( @@ -573,7 +578,7 @@ pixel_x = 4; pixel_y = 4 }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "bT" = ( /obj/item/weapon/twohanded/required/kirbyplants{ @@ -589,7 +594,7 @@ pixel_x = 4; pixel_y = 4 }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "bV" = ( /obj/structure/table/wood/bar{ @@ -606,7 +611,7 @@ aa aa aa aa -bt +ab bt bt aK @@ -622,12 +627,12 @@ bt bo bt bt -bt +bA aa "} (2,1,1) = {" aa -bt +ab bt bt bt @@ -646,11 +651,11 @@ bt bp bs bx -bt -bt +bB +bB "} (3,1,1) = {" -bt +ab ae al aq @@ -794,7 +799,7 @@ bC bE "} (9,1,1) = {" -bt +ab ae ap au @@ -819,7 +824,7 @@ bE "} (10,1,1) = {" aa -bt +ab bt bt bt @@ -838,15 +843,15 @@ bF br br bU -bt -bt +bB +bB "} (11,1,1) = {" aa aa aa aa -bt +ab ac bt ac @@ -862,6 +867,6 @@ bt ac bt ac -bt +bD aa "} diff --git a/_maps/shuttles/emergency_birdboat.dmm b/_maps/shuttles/emergency_birdboat.dmm index 96443b0cd6..b664d550b0 100644 --- a/_maps/shuttles/emergency_birdboat.dmm +++ b/_maps/shuttles/emergency_birdboat.dmm @@ -1,19 +1,55 @@ //MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE -"a" = ( +"aa" = ( /turf/open/space, /area/space) -"b" = ( -/turf/closed/wall/mineral/titanium/overspace, +"ab" = ( +/turf/closed/wall/shuttle{ + icon_state = "swall_s6"; + dir = 2 + }, /area/shuttle/escape) -"c" = ( -/turf/closed/wall/mineral/titanium, +"ac" = ( +/turf/closed/wall/shuttle{ + icon_state = "swall12"; + dir = 2 + }, /area/shuttle/escape) -"d" = ( +"ad" = ( +/turf/closed/wall/shuttle{ + icon_state = "swall14"; + dir = 2 + }, +/area/shuttle/escape) +"ae" = ( +/turf/closed/wall/shuttle{ + icon_state = "swall_s10"; + dir = 2 + }, +/area/shuttle/escape) +"af" = ( +/turf/closed/wall/shuttle{ + icon_state = "swall8"; + dir = 2 + }, +/area/shuttle/escape) +"ag" = ( /obj/structure/grille, /obj/structure/window/shuttle, /turf/open/floor/plating, /area/shuttle/escape) -"e" = ( +"ah" = ( +/turf/closed/wall/shuttle{ + icon_state = "swall4"; + dir = 2 + }, +/area/shuttle/escape) +"ai" = ( +/turf/closed/wall/shuttle{ + icon_state = "swall11"; + dir = 2 + }, +/area/shuttle/escape) +"aj" = ( /obj/structure/table, /obj/item/weapon/scalpel, /obj/item/weapon/retractor{ @@ -23,7 +59,7 @@ /obj/item/weapon/hemostat, /turf/open/floor/plasteel/white, /area/shuttle/escape) -"f" = ( +"ak" = ( /obj/structure/table, /obj/item/weapon/cautery, /obj/item/weapon/surgicaldrill, @@ -32,82 +68,97 @@ }, /turf/open/floor/plasteel/white, /area/shuttle/escape) -"g" = ( +"al" = ( /turf/open/floor/plasteel/white, /area/shuttle/escape) -"h" = ( +"am" = ( +/turf/closed/wall/shuttle{ + icon_state = "swall3"; + dir = 2 + }, +/area/shuttle/escape) +"an" = ( /obj/structure/shuttle/engine/propulsion{ icon_state = "propulsion_r"; dir = 8 }, /turf/open/floor/plating/airless, /area/shuttle/escape) -"i" = ( -/turf/closed/wall/mineral/titanium/nodiagonal, +"ao" = ( +/turf/closed/wall/shuttle{ + icon_state = "swallc4"; + dir = 2 + }, /area/shuttle/escape) -"j" = ( +"ap" = ( /obj/machinery/computer/emergency_shuttle, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) -"k" = ( -/turf/open/floor/mineral/titanium/blue, +"aq" = ( +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) -"l" = ( +"ar" = ( /obj/item/weapon/twohanded/required/kirbyplants{ icon_state = "plant-22" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) -"m" = ( +"as" = ( +/turf/closed/wall/shuttle{ + icon_state = "swall1"; + dir = 2 + }, +/area/shuttle/escape) +"at" = ( /obj/structure/chair, -/turf/open/floor/mineral/plastitanium/brig, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/escape) -"n" = ( +"au" = ( /obj/structure/table/optable, /obj/item/weapon/surgical_drapes, /turf/open/floor/plasteel/white, /area/shuttle/escape) -"o" = ( +"av" = ( /obj/structure/shuttle/engine/propulsion{ icon_state = "propulsion"; dir = 8 }, /turf/open/floor/plating/airless, /area/shuttle/escape) -"p" = ( +"aw" = ( /obj/machinery/computer/communications, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) -"q" = ( +"ax" = ( /obj/structure/chair{ dir = 8 }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) -"r" = ( +"ay" = ( /obj/machinery/door/airlock/glass_command{ name = "bridge door"; req_access_txt = "19" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) -"s" = ( -/turf/open/floor/mineral/plastitanium/brig, +"az" = ( +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/escape) -"t" = ( +"aA" = ( /obj/structure/shuttle/engine/propulsion{ icon_state = "propulsion_l"; dir = 8 }, /turf/open/floor/plating/airless, /area/shuttle/escape) -"u" = ( +"aB" = ( /obj/structure/extinguisher_cabinet{ pixel_y = -32 }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) -"v" = ( +"aC" = ( /obj/structure/table, /obj/machinery/recharger{ active_power_usage = 0; @@ -115,58 +166,90 @@ pixel_y = 4; use_power = 0 }, -/turf/open/floor/mineral/plastitanium/brig, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/escape) -"w" = ( +"aD" = ( /obj/structure/table, /obj/item/weapon/storage/box/handcuffs, -/turf/open/floor/mineral/plastitanium/brig, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/escape) -"x" = ( +"aE" = ( +/turf/closed/wall/shuttle{ + icon_state = "swallc2"; + dir = 2 + }, +/area/shuttle/escape) +"aF" = ( +/turf/closed/wall/shuttle{ + icon_state = "swall15"; + dir = 2 + }, +/area/shuttle/escape) +"aG" = ( +/turf/closed/wall/shuttle{ + icon_state = "swall_s9"; + dir = 2 + }, +/area/shuttle/escape) +"aH" = ( +/turf/closed/wall/shuttle, +/area/shuttle/escape) +"aI" = ( /obj/machinery/door/airlock/glass_security{ name = "security airlock"; req_access_txt = "63" }, -/turf/open/floor/mineral/plastitanium/brig, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/escape) -"y" = ( +"aJ" = ( /obj/machinery/door/airlock/glass, /turf/open/floor/plasteel/white, /area/shuttle/escape) -"z" = ( +"aK" = ( +/turf/closed/wall/shuttle{ + icon_state = "swallc3" + }, +/area/shuttle/escape) +"aL" = ( +/turf/closed/wall/shuttle{ + icon_state = "swall13"; + dir = 2 + }, +/area/shuttle/escape) +"aM" = ( /obj/item/weapon/twohanded/required/kirbyplants{ icon_state = "plant-21"; layer = 4.1 }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) -"A" = ( -/turf/open/floor/mineral/titanium, +"aN" = ( +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) -"B" = ( +"aO" = ( /turf/open/floor/plasteel/black, /area/shuttle/escape) -"C" = ( +"aP" = ( /obj/structure/chair{ dir = 4 }, /turf/open/floor/plasteel/black, /area/shuttle/escape) -"D" = ( +"aQ" = ( /obj/structure/table, /turf/open/floor/plasteel/black, /area/shuttle/escape) -"E" = ( -/obj/machinery/door/airlock/titanium, -/turf/open/floor/mineral/titanium, +"aR" = ( +/obj/machinery/door/airlock/shuttle, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) -"F" = ( +"aS" = ( /obj/structure/chair{ dir = 8 }, /turf/open/floor/plasteel/black, /area/shuttle/escape) -"G" = ( +"aT" = ( /obj/structure/table, /obj/item/weapon/reagent_containers/food/snacks/boiledspaghetti{ name = "pasghetti"; @@ -175,33 +258,39 @@ }, /turf/open/floor/plasteel/black, /area/shuttle/escape) -"H" = ( -/obj/machinery/door/airlock/titanium, +"aU" = ( +/obj/machinery/door/airlock/shuttle, /obj/docking_port/mobile/emergency{ dheight = 0; dir = 8; dwidth = 6; height = 18; - port_angle = 90; + travelDir = 90; width = 14; timid = 1; name = "Birdboat emergency escape shuttle" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) -"I" = ( +"aV" = ( /obj/structure/table, /obj/item/weapon/reagent_containers/food/snacks/chocolatebar, /turf/open/floor/plasteel/black, /area/shuttle/escape) -"J" = ( +"aW" = ( /obj/structure/chair{ dir = 1 }, /obj/structure/window/reinforced, /turf/open/floor/plasteel/black, /area/shuttle/escape) -"K" = ( +"aX" = ( +/turf/closed/wall/shuttle{ + icon_state = "swall2"; + dir = 2 + }, +/area/shuttle/escape) +"aY" = ( /obj/structure/chair, /obj/structure/window/reinforced{ dir = 1; @@ -209,13 +298,13 @@ }, /turf/open/floor/plasteel/black, /area/shuttle/escape) -"L" = ( +"aZ" = ( /obj/structure/extinguisher_cabinet{ pixel_x = -27 }, /turf/open/floor/plasteel/white, /area/shuttle/escape) -"M" = ( +"ba" = ( /obj/structure/table/glass, /obj/item/weapon/storage/firstaid/fire{ pixel_x = 5; @@ -224,13 +313,25 @@ /obj/item/weapon/storage/firstaid/toxin, /turf/open/floor/plasteel/white, /area/shuttle/escape) -"N" = ( +"bb" = ( +/turf/closed/wall/shuttle{ + icon_state = "swall_s5"; + dir = 2 + }, +/area/shuttle/escape) +"bc" = ( +/turf/closed/wall/shuttle{ + icon_state = "swallc1"; + dir = 2 + }, +/area/shuttle/escape) +"bd" = ( /obj/structure/chair{ dir = 1 }, /turf/open/floor/plasteel/black, /area/shuttle/escape) -"O" = ( +"be" = ( /obj/structure/table/glass, /obj/item/weapon/storage/firstaid/brute{ pixel_x = 5; @@ -239,314 +340,314 @@ /obj/item/weapon/storage/firstaid/brute, /turf/open/floor/plasteel/white, /area/shuttle/escape) -"P" = ( +"bf" = ( /obj/structure/extinguisher_cabinet{ pixel_y = -32 }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) -"Q" = ( +"bg" = ( /obj/structure/chair, /turf/open/floor/plasteel/black, /area/shuttle/escape) -"R" = ( +"bh" = ( /obj/machinery/sleeper{ icon_state = "sleeper-open"; dir = 1 }, /turf/open/floor/plasteel/white, /area/shuttle/escape) -"S" = ( +"bi" = ( /obj/structure/table/glass, /obj/item/weapon/defibrillator/loaded, /turf/open/floor/plasteel/white, /area/shuttle/escape) (1,1,1) = {" -a -a -c -c -d -c -d -d -d -d -d -c -a -a +aa +aa +ab +as +ag +aH +ag +ag +ag +ag +ag +bb +aa +aa "} (2,1,1) = {" -a -c -i -p -l -d -z -F -F -F -z -i -c -a +aa +ab +ao +aw +ar +ag +aM +aS +aS +aS +aM +bc +bb +aa "} (3,1,1) = {" -a -c -j -q -k -r -A -A -A -A -A -N -c -a +aa +af +ap +ax +aq +ay +aN +aN +aN +aN +aN +bd +ac +aa "} (4,1,1) = {" -a -d -k -k -k -c -B -B -D -A -A -N -c -a +aa +ag +aq +aq +aq +ah +aO +aO +aQ +aN +aN +bd +ac +aa "} (5,1,1) = {" -a -d -k -k -u -c -C -C -I -A -A -N -c -a +aa +ag +aq +aq +aB +ac +aP +aP +aV +aN +aN +bd +ac +aa "} (6,1,1) = {" -a -c -l -k -l -c -D -G -D -A -A -N -i -c +aa +ah +ar +aq +ar +ac +aQ +aT +aQ +aN +aN +bd +bc +bb "} (7,1,1) = {" -a -c -c -r -d -c -A -A -A -A -A -A -z -c +aa +ad +as +ay +ag +af +aN +aN +aN +aN +aN +aN +aM +ac "} (8,1,1) = {" -a -c -m -s -s -d -z -A -A -A -A -A -P -c +aa +ac +at +az +az +ag +aM +aN +aN +aN +aN +aN +bf +af "} (9,1,1) = {" -a -c -m -s -s -x -A -A -J -K -A -A -Q -d +aa +ac +at +az +az +aI +aN +aN +aW +aY +aN +aN +bg +ag "} (10,1,1) = {" -a -c -m -s -s -d -A -A -J -K -A -A -Q -d +aa +ac +at +az +az +ag +aN +aN +aW +aY +aN +aN +bg +ag "} (11,1,1) = {" -a -c -m -s -v -c -A -A -J -K -A -A -Q -d +aa +ac +at +az +aC +ah +aN +aN +aW +aY +aN +aN +bg +ag "} (12,1,1) = {" -a -c -m -s -w -c -A -A -J -K -A -A -z -c +aa +ac +at +az +aD +ac +aN +aN +aW +aY +aN +aN +aM +ah "} (13,1,1) = {" -c -c -c -c -c -i -A -A -c -c -y -d -c -c +ab +ai +am +am +am +ao +aN +aN +aX +as +aJ +ag +aX +aL "} (14,1,1) = {" -c -e -n -g -g -y -A -A -y -L -g -g -R -c +ac +aj +au +al +al +aJ +aN +aN +aJ +aZ +al +al +bh +ac "} (15,1,1) = {" -c -f -g -g -g -y -A -A -y -g -g -g -g -c +ac +ak +al +al +al +aJ +aN +aN +aJ +al +al +al +al +ac "} (16,1,1) = {" -c -g -g -g -c -c -E -E -c -c -M -O -S -c +ac +al +al +al +aE +aK +aR +aR +aE +aK +ba +be +bi +ac "} (17,1,1) = {" -c -c -c -c -c -c -A -A -c -c -c -c -c -c +ad +am +am +am +aF +aL +aN +aN +ad +aF +am +am +am +aL "} (18,1,1) = {" -c -h -o -t -c -c -E -H -c -c -h -o -t -c +ae +an +av +aA +aG +af +aR +aU +af +ae +an +av +aA +aG "} diff --git a/_maps/shuttles/emergency_box.dmm b/_maps/shuttles/emergency_box.dmm index 68404f35ac..51d5348175 100644 --- a/_maps/shuttles/emergency_box.dmm +++ b/_maps/shuttles/emergency_box.dmm @@ -3,7 +3,10 @@ /turf/open/space, /area/space) "ab" = ( -/turf/closed/wall/mineral/titanium/overspace, +/turf/closed/wall/shuttle{ + icon_state = "swall_s6"; + dir = 2 + }, /area/shuttle/escape) "ac" = ( /obj/structure/grille, @@ -17,23 +20,25 @@ }, /area/shuttle/escape) "ae" = ( -/turf/open/floor/mineral/titanium, -/turf/closed/wall/mineral/titanium/interior, +/turf/open/floor/plasteel/shuttle/white, +/turf/closed/wall/shuttle/interior{ + icon_state = "swall_f9" + }, /area/shuttle/escape) "af" = ( /obj/structure/table, /obj/item/weapon/storage/firstaid/fire, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "ag" = ( /obj/structure/chair{ dir = 1 }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "ah" = ( /obj/machinery/computer/emergency_shuttle, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "ai" = ( /obj/structure/table, @@ -42,7 +47,7 @@ pixel_y = 3 }, /obj/item/weapon/crowbar, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "aj" = ( /turf/open/floor/plasteel/shuttle/white, @@ -51,34 +56,37 @@ }, /area/shuttle/escape) "ak" = ( -/turf/closed/wall/mineral/titanium, +/turf/closed/wall/shuttle{ + icon_state = "swall3"; + dir = 2 + }, /area/shuttle/escape) "al" = ( /obj/machinery/computer/atmos_alert, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "am" = ( /obj/structure/chair{ dir = 8 }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "an" = ( -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "ao" = ( /obj/structure/chair{ dir = 4 }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "ap" = ( /obj/machinery/computer/security, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "aq" = ( /obj/machinery/computer/crew, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "ar" = ( /obj/structure/chair{ @@ -88,7 +96,7 @@ pixel_x = 0; pixel_y = -30 }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "as" = ( /obj/item/device/radio/intercom{ @@ -96,7 +104,7 @@ pixel_x = 0; pixel_y = -29 }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "at" = ( /obj/machinery/button/flasher{ @@ -104,11 +112,11 @@ pixel_x = 6; pixel_y = -24 }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "au" = ( /obj/machinery/computer/communications, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "av" = ( /turf/closed/wall/shuttle{ @@ -133,15 +141,18 @@ name = "Emergency Shuttle Cockpit"; req_access_txt = "19" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "az" = ( /obj/machinery/status_display, -/turf/closed/wall/mineral/titanium, +/turf/closed/wall/shuttle{ + icon_state = "swall12"; + dir = 2 + }, /area/shuttle/escape) "aA" = ( /obj/structure/chair, -/turf/open/floor/mineral/plastitanium/brig, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/escape) "aB" = ( /obj/machinery/flasher{ @@ -149,14 +160,14 @@ pixel_x = 6; pixel_y = 24 }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "aC" = ( -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "aD" = ( /obj/structure/closet/emcloset, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "aE" = ( /obj/structure/table, @@ -166,7 +177,7 @@ pixel_y = 3 }, /obj/item/weapon/crowbar, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "aF" = ( /obj/machinery/flasher{ @@ -179,20 +190,20 @@ pixel_x = -24; pixel_y = -6 }, -/turf/open/floor/mineral/plastitanium/brig, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/escape) "aG" = ( -/turf/open/floor/mineral/plastitanium/brig, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/escape) "aH" = ( /obj/machinery/door/airlock/glass{ name = "Emergency Shuttle Brig"; req_access_txt = "2" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "aI" = ( -/obj/machinery/door/airlock/titanium{ +/obj/machinery/door/airlock/shuttle{ name = "Emergency Shuttle Airlock"; req_access_txt = "2" }, @@ -202,21 +213,21 @@ /obj/structure/chair{ dir = 1 }, -/turf/open/floor/mineral/plastitanium/brig, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/escape) "aK" = ( /obj/structure/chair, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "aL" = ( /obj/structure/chair{ dir = 4 }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "aM" = ( /obj/structure/table, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "aN" = ( /turf/closed/wall/shuttle{ @@ -231,7 +242,7 @@ }, /area/shuttle/escape) "aP" = ( -/obj/machinery/door/airlock/titanium{ +/obj/machinery/door/airlock/shuttle{ name = "Emergency Shuttle Airlock" }, /obj/docking_port/mobile/emergency{ @@ -245,14 +256,14 @@ pixel_x = -5; pixel_y = 30 }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "aR" = ( /obj/structure/extinguisher_cabinet{ pixel_x = 27; pixel_y = 0 }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "aS" = ( /obj/structure/chair{ @@ -261,7 +272,7 @@ /obj/structure/window/reinforced{ dir = 4 }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "aT" = ( /obj/structure/chair{ @@ -270,16 +281,16 @@ /obj/structure/window/reinforced{ dir = 8 }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "aU" = ( /obj/structure/chair{ dir = 8 }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "aV" = ( -/obj/machinery/door/airlock/titanium{ +/obj/machinery/door/airlock/shuttle{ name = "Emergency Shuttle Airlock" }, /turf/open/floor/plating, @@ -289,13 +300,13 @@ pixel_x = 0; pixel_y = -30 }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "aX" = ( -/obj/machinery/door/airlock/titanium{ +/obj/machinery/door/airlock/shuttle{ name = "Emergency Shuttle Cargo" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "aY" = ( /obj/machinery/status_display, @@ -308,7 +319,7 @@ /obj/machinery/door/airlock/glass{ name = "Emergency Shuttle Infirmary" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "ba" = ( /turf/closed/wall/shuttle{ @@ -317,21 +328,21 @@ }, /area/shuttle/escape) "bb" = ( -/turf/open/floor/mineral/titanium/yellow, +/turf/open/floor/plasteel/shuttle/yellow, /area/shuttle/escape) "bc" = ( /obj/structure/extinguisher_cabinet{ pixel_x = 27; pixel_y = 0 }, -/turf/open/floor/mineral/titanium/yellow, +/turf/open/floor/plasteel/shuttle/yellow, /area/shuttle/escape) "bd" = ( /obj/machinery/sleeper{ icon_state = "sleeper-open"; dir = 8 }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "be" = ( /obj/structure/table, @@ -345,15 +356,15 @@ pixel_x = 27; pixel_y = 0 }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "bf" = ( /obj/structure/closet, -/turf/open/floor/mineral/titanium/yellow, +/turf/open/floor/plasteel/shuttle/yellow, /area/shuttle/escape) "bg" = ( /obj/structure/closet/crate, -/turf/open/floor/mineral/titanium/yellow, +/turf/open/floor/plasteel/shuttle/yellow, /area/shuttle/escape) "bh" = ( /turf/closed/wall/shuttle{ @@ -369,7 +380,10 @@ /turf/open/floor/plating/airless, /area/shuttle/escape) "bj" = ( -/turf/closed/wall/mineral/titanium/nodiagonal, +/turf/closed/wall/shuttle{ + icon_state = "swall_s9"; + dir = 2 + }, /area/shuttle/escape) "bk" = ( /obj/structure/shuttle/engine/propulsion, @@ -381,11 +395,11 @@ aa aa aa aa -ak +ab ak ak aI -ak +aN aP ak ac @@ -393,23 +407,23 @@ ac ac ak aV -ak +aN aV ak ak -ak +bh aa "} (2,1,1) = {" aa +ab ak ak -ak -ak +av aA aF aG -ak +aw an aL aL @@ -417,23 +431,23 @@ aL aL aL an -ak +aw bb bb bf -ak -ak +ax +bh "} (3,1,1) = {" -ak +ab ae al aq -ak +aw aA aG aJ -ak +aw aQ an an @@ -441,7 +455,7 @@ an an an aW -ak +aw bb bb bf @@ -453,11 +467,11 @@ ac af am ar -ak +aw aA aG aJ -ak +aw an aS aS @@ -477,11 +491,11 @@ ac ag an as -ak +ax ac aH ac -bj +aO an aT aT @@ -489,7 +503,7 @@ aT aT aT an -ak +aw bc bb bg @@ -501,7 +515,7 @@ ac ah an at -ak +aw aB an aK @@ -513,7 +527,7 @@ an an an an -az +aY ak ak ak @@ -569,11 +583,11 @@ bi bk "} (9,1,1) = {" -ak -ae +ad +aj ap au -ak +aw aD an an @@ -594,10 +608,10 @@ bk "} (10,1,1) = {" aa +ad ak ak -ak -ak +av aE aC aC @@ -613,15 +627,15 @@ ac bd be bd -ak -ak +ax +bj "} (11,1,1) = {" aa aa aa aa -ak +ad ac ak ac @@ -633,10 +647,10 @@ ac ac ak ak -ak +ba ac ak ac -ak +bj aa "} diff --git a/_maps/shuttles/emergency_clown.dmm b/_maps/shuttles/emergency_clown.dmm index 05f2b9929c..ceccd98c98 100644 --- a/_maps/shuttles/emergency_clown.dmm +++ b/_maps/shuttles/emergency_clown.dmm @@ -1,35 +1,46 @@ //MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE -"a" = ( +"aa" = ( /turf/open/space, /area/space) -"b" = ( -/turf/closed/wall/mineral/titanium, +"ab" = ( +/turf/closed/wall/shuttle{ + icon_state = "swall_s6"; + dir = 2 + }, /area/shuttle/escape) -"c" = ( +"ac" = ( /obj/structure/grille, /obj/structure/window/shuttle, /turf/open/floor/plating, /area/shuttle/escape) -"d" = ( -/turf/open/floor/mineral/titanium, -/turf/closed/wall/mineral/titanium/interior, +"ad" = ( +/turf/closed/wall/shuttle{ + icon_state = "swall_s10"; + dir = 2 + }, /area/shuttle/escape) -"e" = ( +"ae" = ( +/turf/open/floor/plasteel/shuttle/white, +/turf/closed/wall/shuttle/interior{ + icon_state = "swall_f9" + }, +/area/shuttle/escape) +"af" = ( /obj/structure/table, /obj/item/weapon/storage/firstaid/fire, /turf/open/floor/noslip, /area/shuttle/escape) -"f" = ( +"ag" = ( /obj/structure/chair{ dir = 1 }, /turf/open/floor/bluespace, /area/shuttle/escape) -"g" = ( +"ah" = ( /obj/machinery/computer/emergency_shuttle, /turf/open/floor/bluespace, /area/shuttle/escape) -"h" = ( +"ai" = ( /obj/structure/table, /obj/item/weapon/storage/firstaid/regular{ pixel_x = 2; @@ -38,35 +49,47 @@ /obj/item/weapon/crowbar, /turf/open/floor/noslip, /area/shuttle/escape) -"i" = ( +"aj" = ( +/turf/open/floor/plasteel/shuttle/white, +/turf/closed/wall/shuttle/interior{ + icon_state = "swall_f5" + }, +/area/shuttle/escape) +"ak" = ( +/turf/closed/wall/shuttle{ + icon_state = "swall3"; + dir = 2 + }, +/area/shuttle/escape) +"al" = ( /obj/machinery/computer/atmos_alert, /turf/open/floor/noslip, /area/shuttle/escape) -"j" = ( +"am" = ( /obj/structure/chair{ dir = 8 }, /turf/open/floor/bluespace, /area/shuttle/escape) -"k" = ( +"an" = ( /obj/item/toy/snappop/phoenix, /turf/open/floor/bluespace, /area/shuttle/escape) -"l" = ( +"ao" = ( /obj/structure/chair{ dir = 4 }, /turf/open/floor/bluespace, /area/shuttle/escape) -"m" = ( +"ap" = ( /obj/machinery/computer/security, /turf/open/floor/noslip, /area/shuttle/escape) -"n" = ( +"aq" = ( /obj/machinery/computer/crew, /turf/open/floor/noslip, /area/shuttle/escape) -"o" = ( +"ar" = ( /obj/structure/chair{ dir = 8 }, @@ -76,7 +99,7 @@ }, /turf/open/floor/bluespace, /area/shuttle/escape) -"p" = ( +"as" = ( /obj/item/device/radio/intercom{ name = "Station Intercom (General)"; pixel_x = 0; @@ -85,33 +108,54 @@ /obj/item/toy/snappop/phoenix, /turf/open/floor/bluespace, /area/shuttle/escape) -"q" = ( +"at" = ( /obj/machinery/computer/communications, /turf/open/floor/noslip, /area/shuttle/escape) -"r" = ( +"au" = ( +/turf/closed/wall/shuttle{ + icon_state = "swall13"; + dir = 2 + }, +/area/shuttle/escape) +"av" = ( +/turf/closed/wall/shuttle{ + icon_state = "swall12"; + dir = 2 + }, +/area/shuttle/escape) +"aw" = ( +/turf/closed/wall/shuttle{ + icon_state = "swall14"; + dir = 2 + }, +/area/shuttle/escape) +"ax" = ( /obj/machinery/door/airlock/glass{ name = "Emergency Shuttle Premium Lounge"; req_access_txt = "0" }, /turf/open/floor/bluespace, /area/shuttle/escape) -"s" = ( +"ay" = ( /obj/machinery/status_display, -/turf/closed/wall/mineral/titanium, +/turf/closed/wall/shuttle{ + icon_state = "swall12"; + dir = 2 + }, /area/shuttle/escape) -"t" = ( +"az" = ( /turf/open/chasm/straight_down/lava_land_surface/normal_air, /area/shuttle/escape) -"u" = ( +"aA" = ( /turf/open/floor/noslip, /area/shuttle/escape) -"v" = ( +"aB" = ( /obj/structure/closet/emcloset, /obj/item/toy/sword, /turf/open/floor/noslip, /area/shuttle/escape) -"w" = ( +"aC" = ( /obj/structure/table, /obj/item/weapon/storage/firstaid/fire, /obj/item/weapon/storage/firstaid/regular{ @@ -121,44 +165,53 @@ /obj/item/weapon/crowbar, /turf/open/floor/noslip, /area/shuttle/escape) -"x" = ( +"aD" = ( /obj/item/weapon/greentext/quiet{ anchored = 1 }, -/turf/open/floor/mineral/plastitanium/brig, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/escape) -"y" = ( +"aE" = ( /obj/machinery/door/airlock/glass{ name = "Emergency Shuttle Greentext"; req_access_txt = "0" }, /turf/open/floor/bluespace, /area/shuttle/escape) -"z" = ( +"aF" = ( /obj/structure/chair, /turf/open/floor/noslip, /area/shuttle/escape) -"A" = ( +"aG" = ( /obj/structure/chair{ dir = 4 }, /turf/open/floor/noslip, /area/shuttle/escape) -"B" = ( +"aH" = ( /obj/structure/table, /obj/item/device/multitool/ai_detect, /turf/open/floor/noslip, /area/shuttle/escape) -"C" = ( -/turf/closed/wall/mineral/titanium/nodiagonal, +"aI" = ( +/turf/closed/wall/shuttle{ + icon_state = "swall7"; + dir = 2 + }, /area/shuttle/escape) -"D" = ( +"aJ" = ( +/turf/closed/wall/shuttle{ + icon_state = "swallc4"; + dir = 2 + }, +/area/shuttle/escape) +"aK" = ( /obj/structure/table, /obj/item/toy/sword, /turf/open/floor/noslip, /area/shuttle/escape) -"E" = ( -/obj/machinery/door/airlock/titanium{ +"aL" = ( +/obj/machinery/door/airlock/shuttle{ name = "Emergency Shuttle Airlock" }, /obj/docking_port/mobile/emergency{ @@ -167,7 +220,7 @@ }, /turf/open/floor/plating, /area/shuttle/escape) -"F" = ( +"aM" = ( /obj/structure/extinguisher_cabinet{ pixel_x = -5; pixel_y = 30 @@ -175,7 +228,7 @@ /obj/item/toy/snappop/phoenix, /turf/open/floor/bluespace, /area/shuttle/escape) -"G" = ( +"aN" = ( /obj/structure/extinguisher_cabinet{ pixel_x = 27; pixel_y = 0 @@ -183,12 +236,12 @@ /obj/item/toy/snappop/phoenix, /turf/open/floor/bluespace, /area/shuttle/escape) -"H" = ( +"aO" = ( /obj/structure/bed, /obj/item/weapon/bedsheet/random, /turf/open/floor/noslip, /area/shuttle/escape) -"I" = ( +"aP" = ( /obj/structure/window/reinforced{ dir = 4 }, @@ -196,7 +249,7 @@ /obj/item/weapon/bedsheet/random, /turf/open/floor/noslip, /area/shuttle/escape) -"J" = ( +"aQ" = ( /obj/structure/window/reinforced{ dir = 8 }, @@ -204,7 +257,7 @@ /obj/item/weapon/bedsheet/random, /turf/open/floor/noslip, /area/shuttle/escape) -"K" = ( +"aR" = ( /obj/structure/bed, /obj/item/weapon/bedsheet/random, /obj/structure/window/reinforced{ @@ -212,13 +265,13 @@ }, /turf/open/floor/noslip, /area/shuttle/escape) -"L" = ( -/obj/machinery/door/airlock/titanium{ +"aS" = ( +/obj/machinery/door/airlock/shuttle{ name = "Emergency Shuttle Airlock" }, /turf/open/floor/plating, /area/shuttle/escape) -"M" = ( +"aT" = ( /obj/structure/extinguisher_cabinet{ pixel_x = 0; pixel_y = -30 @@ -226,36 +279,53 @@ /obj/item/toy/snappop/phoenix, /turf/open/floor/bluespace, /area/shuttle/escape) -"N" = ( -/obj/machinery/door/airlock/titanium{ +"aU" = ( +/obj/item/toy/snappop/phoenix, +/turf/open/floor/bluespace, +/area/shuttle/escape) +"aV" = ( +/obj/machinery/door/airlock/shuttle{ name = "Emergency Shuttle Cargo" }, /turf/open/floor/bluespace, /area/shuttle/escape) -"O" = ( +"aW" = ( +/obj/machinery/status_display, +/turf/closed/wall/shuttle{ + icon_state = "swall14"; + dir = 2 + }, +/area/shuttle/escape) +"aX" = ( /obj/machinery/door/airlock/glass{ name = "Emergency Shuttle Infirmary" }, /turf/open/floor/bluespace, /area/shuttle/escape) -"P" = ( +"aY" = ( +/turf/closed/wall/shuttle{ + icon_state = "swall11"; + dir = 2 + }, +/area/shuttle/escape) +"aZ" = ( /turf/open/floor/mineral/bananium, /area/shuttle/escape) -"Q" = ( +"ba" = ( /obj/structure/extinguisher_cabinet{ pixel_x = 27; pixel_y = 0 }, /turf/open/floor/mineral/bananium, /area/shuttle/escape) -"R" = ( +"bb" = ( /obj/machinery/sleeper{ icon_state = "sleeper-open"; dir = 8 }, /turf/open/floor/noslip, /area/shuttle/escape) -"S" = ( +"bc" = ( /obj/structure/table, /obj/item/weapon/storage/firstaid/fire, /obj/item/weapon/storage/firstaid/regular{ @@ -269,299 +339,311 @@ }, /turf/open/floor/noslip, /area/shuttle/escape) -"T" = ( +"bd" = ( /obj/structure/closet/crate/trashcart{ desc = "A heavy, metal trashcart with wheels. Feel free to hop in at any time!" }, /obj/item/toy/sword, /turf/open/floor/mineral/bananium, /area/shuttle/escape) -"U" = ( +"be" = ( /obj/machinery/vending/autodrobe{ extended_inventory = 1; scan_id = 0 }, /turf/open/floor/mineral/bananium, /area/shuttle/escape) -"V" = ( +"bf" = ( /obj/machinery/vending/clothing{ extended_inventory = 1 }, /turf/open/floor/mineral/bananium, /area/shuttle/escape) -"W" = ( +"bg" = ( +/turf/closed/wall/shuttle{ + icon_state = "swall_s5"; + dir = 2 + }, +/area/shuttle/escape) +"bh" = ( /obj/structure/window/reinforced{ dir = 1 }, /obj/structure/shuttle/engine/heater, /turf/open/floor/plating/airless, /area/shuttle/escape) -"X" = ( +"bi" = ( +/turf/closed/wall/shuttle{ + icon_state = "swall_s9"; + dir = 2 + }, +/area/shuttle/escape) +"bj" = ( /obj/structure/shuttle/engine/propulsion, /turf/open/floor/plating/airless, /area/shuttle/escape) (1,1,1) = {" -a -a -a -a -b -b -b -b -b -E -b -c -c -c -b -L -b -L -b -b -b -a +aa +aa +aa +aa +ab +ak +ak +ak +aI +aL +ak +ac +ac +ac +ak +aS +aI +aS +ak +ak +bg +aa "} (2,1,1) = {" -a -b -b -b -b -t -t -t -b -k -H -H -H -H -H -k -b -P -P -T -b -b +aa +ab +ak +ak +au +az +az +az +av +an +aO +aO +aO +aO +aO +an +av +aZ +aZ +bd +aw +bg "} (3,1,1) = {" -b -d -i -n -b -t -x -t -b -F -k -k -k -k -k -M -b -P -P -T -W -X +ab +ae +al +aq +av +az +aD +az +av +aM +an +an +an +an +an +aT +av +aZ +aZ +bd +bh +bj "} (4,1,1) = {" -c -e -j -o -b -t -t -t -b -k -I -I -I -I -I -k -N -P -P -U -W -X +ac +af +am +ar +av +az +az +az +av +an +aP +aP +aP +aP +aP +an +aV +aZ +aZ +be +bh +bj "} (5,1,1) = {" -c -f -k -p -b -c -y -c -C -k -J -J -J -J -J -k -b -Q -P -V -W -X +ac +ag +an +as +aw +ac +aE +ac +aJ +an +aQ +aQ +aQ +aQ +aQ +an +av +ba +aZ +bf +bh +bj "} (6,1,1) = {" -c -g -k -k -b -u -k -z -D -k -k -k -k -k -k -k -s -b -b -b -W -X +ac +ah +an +an +av +aA +an +aF +aK +an +an +an +an +an +an +an +aW +ak +ak +ak +bh +bj "} (7,1,1) = {" -c -f -k -k -r -k -k -A -D -k -I -I -I -I -I -k -c -v -u -v -W -X +ac +ag +an +an +ax +an +an +aG +aK +an +aP +aP +aP +aP +aP +an +ac +aB +aA +aB +bh +bj "} (8,1,1) = {" -c -h -l -l -s -u -k -B -D -k -K -J -J -J -J -k -O -u -u -u -W -X +ac +ai +ao +ao +ay +aA +an +aH +aK +an +aR +aQ +aQ +aQ +aQ +an +aX +aA +aA +aA +bh +bj "} (9,1,1) = {" -b -d -m -q -b -v -k -k -k -k -k -k -k -k -k -k -c -u -u -u -W -X +ad +aj +ap +at +av +aB +an +an +an +an +an +an +an +an +an +aU +ac +aA +aA +aA +bh +bj "} (10,1,1) = {" -a -b -b -b -b -w -u -u -u -G -H -H -H -H -H -G -c -R -S -R -b -b +aa +ad +ak +ak +au +aC +aA +aA +aA +aN +aO +aO +aO +aO +aO +aN +ac +bb +bc +bb +aw +bi "} (11,1,1) = {" -a -a -a -a -b -c -b -c -b -b -b -c -c -c -b -b -b -c -b -c -b -a +aa +aa +aa +aa +ad +ac +ak +ac +ak +ak +ak +ac +ac +ac +ak +ak +aY +ac +ak +ac +bi +aa "} diff --git a/_maps/shuttles/emergency_cramped.dmm b/_maps/shuttles/emergency_cramped.dmm index 0ae834c1dc..140156dc68 100644 --- a/_maps/shuttles/emergency_cramped.dmm +++ b/_maps/shuttles/emergency_cramped.dmm @@ -1,6 +1,6 @@ //MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE "a" = ( -/turf/closed/wall/mineral/titanium, +/turf/closed/wall/shuttle/smooth, /area/shuttle/escape) "b" = ( /obj/structure/grille, @@ -8,7 +8,7 @@ /turf/open/floor/plating, /area/shuttle/escape) "c" = ( -/obj/machinery/door/airlock/titanium{ +/obj/machinery/door/airlock/shuttle{ name = "Emergency Shuttle Airlock"; req_access_txt = "2" }, @@ -51,10 +51,12 @@ /area/shuttle/escape) "j" = ( /obj/machinery/status_display, -/turf/closed/wall/mineral/titanium, +/turf/closed/wall/shuttle{ + icon_state = "swall3" + }, /area/shuttle/escape) "k" = ( -/obj/machinery/door/airlock/titanium{ +/obj/machinery/door/airlock/shuttle{ name = "Emergency Shuttle Airlock" }, /obj/docking_port/mobile/emergency{ @@ -92,7 +94,7 @@ /turf/open/floor/plasteel/bot, /area/shuttle/escape) "q" = ( -/obj/machinery/door/airlock/titanium{ +/obj/machinery/door/airlock/shuttle{ name = "Emergency Shuttle Airlock" }, /turf/open/floor/plating, @@ -119,25 +121,64 @@ /turf/open/floor/plating/airless, /area/shuttle/escape) "u" = ( +/turf/open/space, +/area/space) +"v" = ( /obj/structure/shuttle/engine/propulsion, /turf/open/floor/plating/airless, /area/shuttle/escape) +"w" = ( +/turf/closed/wall/shuttle{ + icon_state = "swall_s6"; + dir = 2 + }, +/area/shuttle/escape) +"x" = ( +/turf/closed/wall/shuttle{ + icon_state = "swall_s10"; + dir = 2 + }, +/area/shuttle/escape) +"y" = ( +/turf/closed/wall/shuttle{ + icon_state = "swall3" + }, +/area/shuttle/escape) +"z" = ( +/turf/closed/wall/shuttle{ + icon_state = "swall2"; + dir = 2 + }, +/area/shuttle/escape) +"A" = ( +/turf/closed/wall/shuttle{ + icon_state = "swall1"; + dir = 2 + }, +/area/shuttle/escape) +"B" = ( +/turf/closed/wall/shuttle{ + tag = "icon-wall3 (WEST)"; + icon_state = "wall3"; + dir = 8 + }, +/area/shuttle/escape) (1,1,1) = {" -a +w c a k -a +z b b b -a +A q a q -a -a +B +u "} (2,1,1) = {" b @@ -153,7 +194,7 @@ l s l t -u +v "} (3,1,1) = {" b @@ -169,7 +210,7 @@ l l l t -u +v "} (4,1,1) = {" b @@ -185,21 +226,21 @@ r r m t -u +v "} (5,1,1) = {" -a -a +x +y j -a -a +y +y b b b -a -a -a -a -a -a +y +y +y +A +B +u "} diff --git a/_maps/shuttles/emergency_delta.dmm b/_maps/shuttles/emergency_delta.dmm deleted file mode 100644 index a1a7fd709a..0000000000 --- a/_maps/shuttles/emergency_delta.dmm +++ /dev/null @@ -1,160 +0,0 @@ -"aa" = (/turf/open/space,/area/space) -"ab" = (/obj/structure/shuttle/engine/propulsion{tag = "icon-propulsion (NORTH)"; icon_state = "propulsion"; dir = 1},/turf/open/floor/plating/warnplate{dir = 1},/area/shuttle/escape) -"ac" = (/turf/closed/wall/mineral/plastitanium,/area/shuttle/escape) -"ad" = (/obj/structure/window/reinforced,/obj/structure/shuttle/engine/heater{tag = "icon-heater (NORTH)"; icon_state = "heater"; dir = 1},/turf/open/floor/plating/warnplate{dir = 1},/area/shuttle/escape) -"ae" = (/turf/closed/wall/mineral/titanium/nodiagonal,/area/shuttle/escape) -"af" = (/turf/closed/wall/mineral/titanium,/area/shuttle/escape) -"ag" = (/obj/structure/window/shuttle,/obj/structure/grille,/turf/open/floor/plating,/area/shuttle/escape) -"ah" = (/obj/item/clothing/suit/hazardvest{desc = "A high-visibility lifejacket complete with whistle and slot for oxygen tanks."; name = "emergency lifejacket"},/obj/item/clothing/suit/hazardvest{desc = "A high-visibility lifejacket complete with whistle and slot for oxygen tanks."; name = "emergency lifejacket"},/obj/item/clothing/suit/hazardvest{desc = "A high-visibility lifejacket complete with whistle and slot for oxygen tanks."; name = "emergency lifejacket"},/obj/item/clothing/suit/hazardvest{desc = "A high-visibility lifejacket complete with whistle and slot for oxygen tanks."; name = "emergency lifejacket"},/obj/item/clothing/suit/hazardvest{desc = "A high-visibility lifejacket complete with whistle and slot for oxygen tanks."; name = "emergency lifejacket"},/obj/item/weapon/tank/internals/emergency_oxygen/double{pixel_x = 3},/obj/item/weapon/tank/internals/emergency_oxygen/double{pixel_x = 3},/obj/item/weapon/tank/internals/emergency_oxygen/double{pixel_x = 3},/obj/item/weapon/tank/internals/emergency_oxygen/double{pixel_x = 3},/obj/item/weapon/tank/internals/emergency_oxygen/double{pixel_x = 3},/obj/item/clothing/mask/breath{pixel_x = -3; pixel_y = -3},/obj/item/clothing/mask/breath{pixel_x = -3; pixel_y = -3},/obj/item/clothing/mask/breath{pixel_x = -3; pixel_y = -3},/obj/item/clothing/mask/breath{pixel_x = -3; pixel_y = -3},/obj/item/clothing/mask/breath{pixel_x = -3; pixel_y = -3},/obj/item/clothing/head/hardhat/orange{name = "protective hat"; pixel_y = 9},/obj/item/clothing/head/hardhat/orange{name = "protective hat"; pixel_y = 9},/obj/item/clothing/head/hardhat/orange{name = "protective hat"; pixel_y = 9},/obj/item/clothing/head/hardhat/orange{name = "protective hat"; pixel_y = 9},/obj/item/clothing/head/hardhat/orange{name = "protective hat"; pixel_y = 9},/obj/structure/closet/crate/internals,/turf/open/floor/plasteel/bot,/area/shuttle/escape) -"ai" = (/turf/open/floor/plasteel/neutral/side{dir = 1},/area/shuttle/escape) -"aj" = (/obj/item/weapon/defibrillator/loaded,/obj/structure/table/reinforced,/turf/open/floor/plasteel/cmo,/area/shuttle/escape) -"ak" = (/obj/machinery/computer/operating,/turf/open/floor/plasteel/cmo,/area/shuttle/escape) -"al" = (/obj/structure/table/optable,/obj/item/weapon/surgical_drapes,/turf/open/floor/plasteel/cmo,/area/shuttle/escape) -"am" = (/obj/item/weapon/scalpel{pixel_y = 12},/obj/item/weapon/circular_saw,/obj/item/weapon/retractor{pixel_x = 4},/obj/item/weapon/hemostat{pixel_x = -4},/obj/item/clothing/gloves/color/latex,/obj/item/clothing/mask/surgical,/obj/structure/table/reinforced,/turf/open/floor/plasteel/cmo,/area/shuttle/escape) -"an" = (/obj/item/weapon/twohanded/required/kirbyplants{icon_state = "plant-21"; layer = 4.1; pixel_x = -3; pixel_y = 3},/turf/open/floor/plasteel/neutral/side{dir = 8; heat_capacity = 1e+006},/area/shuttle/escape) -"ao" = (/turf/open/floor/plasteel/neutral,/area/shuttle/escape) -"ap" = (/obj/item/weapon/twohanded/required/kirbyplants{icon_state = "plant-21"; layer = 4.1; pixel_x = -3; pixel_y = 3},/turf/open/floor/plasteel/neutral/side{dir = 4},/area/shuttle/escape) -"aq" = (/obj/machinery/status_display,/turf/closed/wall/mineral/titanium,/area/shuttle/escape) -"ar" = (/obj/item/weapon/reagent_containers/glass/bottle/epinephrine{pixel_x = 6; pixel_y = 0},/obj/item/weapon/reagent_containers/glass/bottle/charcoal{pixel_x = -3},/obj/item/weapon/reagent_containers/glass/bottle/epinephrine{pixel_x = -3; pixel_y = 8},/obj/item/weapon/reagent_containers/glass/bottle/charcoal{pixel_x = 6; pixel_y = 8},/obj/item/weapon/reagent_containers/syringe/epinephrine{pixel_x = 3; pixel_y = -2},/obj/item/weapon/reagent_containers/syringe/epinephrine{pixel_x = 4; pixel_y = 1},/obj/item/weapon/reagent_containers/syringe/epinephrine{pixel_x = -2; pixel_y = 5},/obj/item/weapon/reagent_containers/syringe/epinephrine{pixel_x = 2; pixel_y = 8},/obj/structure/table/reinforced,/turf/open/floor/plasteel/cmo,/area/shuttle/escape) -"as" = (/obj/structure/chair/office/light{dir = 1},/turf/open/floor/plasteel/cmo,/area/shuttle/escape) -"at" = (/obj/item/device/radio/intercom{name = "Station Intercom"; pixel_x = 26; pixel_y = 58},/turf/open/floor/plasteel/cmo,/area/shuttle/escape) -"au" = (/obj/structure/sink{dir = 4; pixel_x = 11},/turf/open/floor/plasteel/cmo,/area/shuttle/escape) -"av" = (/obj/structure/chair{dir = 4},/turf/open/floor/plasteel/bot,/area/shuttle/escape) -"aw" = (/obj/structure/chair{dir = 8},/turf/open/floor/plasteel/bot,/area/shuttle/escape) -"ax" = (/obj/structure/flora/ausbushes/grassybush,/obj/structure/flora/ausbushes/lavendergrass,/obj/structure/flora/ausbushes/brflowers,/obj/structure/flora/ausbushes/leafybush,/obj/structure/window/shuttle,/turf/open/floor/grass,/area/shuttle/escape) -"ay" = (/obj/machinery/computer/med_data,/turf/open/floor/plasteel/whiteblue/side{dir = 1},/area/shuttle/escape) -"az" = (/obj/structure/chair/office/light{dir = 8},/turf/open/floor/plasteel/whiteblue/side{tag = "icon-whiteblue (NORTH)"; icon_state = "whiteblue"; dir = 1},/area/shuttle/escape) -"aA" = (/turf/open/floor/plasteel/whiteblue/side{tag = "icon-whiteblue (NORTH)"; icon_state = "whiteblue"; dir = 1},/area/shuttle/escape) -"aB" = (/obj/item/weapon/storage/firstaid/toxin,/obj/item/weapon/storage/firstaid/o2{pixel_x = 3; pixel_y = 3},/obj/structure/table/reinforced,/turf/open/floor/plasteel/whiteblue/side{dir = 5},/area/shuttle/escape) -"aC" = (/obj/machinery/ai_status_display,/turf/closed/wall/shuttle/smooth/nodiagonal,/area/shuttle/escape) -"aD" = (/obj/machinery/status_display,/turf/closed/wall/shuttle/smooth/nodiagonal,/area/shuttle/escape) -"aE" = (/turf/open/floor/plasteel/delivery,/area/shuttle/escape) -"aF" = (/obj/machinery/door/airlock/glass_medical{id_tag = null; name = "Escape Shuttle Infirmary"; req_access_txt = "0"},/turf/open/floor/plasteel/warning/side,/area/shuttle/escape) -"aG" = (/obj/item/weapon/storage/firstaid/fire,/obj/item/weapon/storage/firstaid/regular{pixel_x = 2; pixel_y = 3},/obj/structure/table/reinforced,/turf/open/floor/plasteel/whiteblue/side{dir = 4},/area/shuttle/escape) -"aH" = (/obj/structure/chair{dir = 4},/obj/item/device/radio/intercom{name = "Station Intercom"; pixel_x = -26; pixel_y = 0},/turf/open/floor/plasteel/bot,/area/shuttle/escape) -"aI" = (/obj/structure/flora/ausbushes/grassybush,/obj/structure/flora/ausbushes/lavendergrass,/obj/structure/flora/ausbushes/ywflowers,/obj/structure/flora/ausbushes/genericbush,/obj/structure/window/shuttle,/turf/open/floor/grass,/area/shuttle/escape) -"aJ" = (/obj/machinery/shower{dir = 8; icon_state = "shower"; name = "emergency shower"},/turf/open/floor/plasteel/whiteblue/side{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; dir = 4; tag = "icon-whiteblue (EAST)"},/area/shuttle/escape) -"aK" = (/obj/structure/extinguisher_cabinet,/turf/closed/wall/shuttle/smooth/nodiagonal,/area/shuttle/escape) -"aL" = (/obj/structure/bed/roller,/obj/machinery/iv_drip,/turf/open/floor/plasteel/whiteblue/side,/area/shuttle/escape) -"aM" = (/turf/open/floor/plasteel/whiteblue/side,/area/shuttle/escape) -"aN" = (/obj/structure/bed/roller,/obj/machinery/iv_drip,/obj/structure/extinguisher_cabinet{pixel_x = 26},/turf/open/floor/plasteel/whiteblue/side{dir = 6},/area/shuttle/escape) -"aO" = (/obj/machinery/door/airlock/shuttle{name = "Emergency Shuttle Airlock"; req_access_txt = "0"},/turf/open/floor/plasteel/warnwhite/side,/area/shuttle/escape) -"aP" = (/obj/structure/sign/bluecross_2,/turf/closed/wall/mineral/titanium,/area/shuttle/escape) -"aQ" = (/obj/machinery/sleeper{icon_state = "sleeper-open"; dir = 4},/turf/open/floor/plasteel/cmo,/area/shuttle/escape) -"aR" = (/turf/open/floor/plasteel/cmo,/area/shuttle/escape) -"aS" = (/obj/machinery/sleeper{icon_state = "sleeper-open"; dir = 8},/turf/open/floor/plasteel/cmo,/area/shuttle/escape) -"aT" = (/obj/structure/sign/nanotrasen,/turf/closed/wall/mineral/titanium,/area/shuttle/escape) -"aU" = (/turf/open/floor/plasteel/bot,/area/shuttle/escape) -"aV" = (/obj/machinery/door/airlock/glass_medical{id_tag = null; name = "Escape Shuttle Infirmary"; req_access_txt = "0"},/turf/open/floor/plasteel/warning/side{tag = "icon-plasteel_warn_side (EAST)"; icon_state = "plasteel_warn_side"; dir = 4},/area/shuttle/escape) -"aW" = (/obj/machinery/door/airlock/shuttle{name = "Emergency Shuttle Airlock"},/obj/docking_port/mobile/emergency{dheight = 0; dwidth = 11; height = 18; name = "Delta emergency shuttle"; timid = 1; width = 30},/turf/open/floor/plating,/area/shuttle/escape) -"aX" = (/obj/structure/flora/ausbushes/grassybush,/obj/structure/flora/ausbushes/lavendergrass,/obj/structure/flora/ausbushes/ppflowers,/obj/structure/flora/ausbushes/sunnybush,/obj/structure/window/shuttle,/turf/open/floor/grass,/area/shuttle/escape) -"aY" = (/obj/structure/extinguisher_cabinet{pixel_x = -26},/obj/machinery/shieldgen,/turf/open/floor/plasteel/bot,/area/shuttle/escape) -"aZ" = (/obj/structure/rack,/obj/item/weapon/storage/toolbox/electrical{pixel_x = -3; pixel_y = 1},/obj/item/weapon/storage/toolbox/mechanical{pixel_x = 0; pixel_y = -1},/obj/item/weapon/storage/toolbox/emergency{pixel_x = 3; pixel_y = -5},/turf/open/floor/plasteel/bot,/area/shuttle/escape) -"ba" = (/obj/structure/reagent_dispensers/fueltank,/obj/item/device/radio/intercom{name = "Station Intercom"; pixel_x = -26; pixel_y = 0},/turf/open/floor/plasteel/bot,/area/shuttle/escape) -"bb" = (/turf/open/floor/plasteel/warning{dir = 9},/area/shuttle/escape) -"bc" = (/turf/open/floor/plasteel/warning{dir = 5},/area/shuttle/escape) -"bd" = (/obj/structure/closet/crate/medical{name = "medical crate"},/obj/item/weapon/storage/firstaid/regular,/obj/item/weapon/storage/firstaid/o2{pixel_x = 3; pixel_y = 3},/obj/item/weapon/storage/firstaid/toxin{pixel_x = -4; pixel_y = 3},/obj/item/device/healthanalyzer{pixel_x = 3; pixel_y = 3},/obj/item/weapon/lazarus_injector,/mob/living/simple_animal/bot/medbot{name = "\improper emergency medibot"; pixel_x = -3; pixel_y = 2},/turf/open/floor/plasteel/bot,/area/shuttle/escape) -"be" = (/obj/structure/flora/ausbushes/grassybush,/obj/structure/flora/ausbushes/lavendergrass,/obj/structure/flora/ausbushes/ywflowers,/obj/structure/flora/ausbushes/fernybush,/obj/structure/window/shuttle,/turf/open/floor/grass,/area/shuttle/escape) -"bf" = (/obj/structure/reagent_dispensers/watertank,/turf/open/floor/plasteel/bot,/area/shuttle/escape) -"bg" = (/turf/open/floor/plasteel/warning{dir = 8},/area/shuttle/escape) -"bh" = (/turf/open/floor/plasteel/warning{dir = 4},/area/shuttle/escape) -"bi" = (/obj/structure/closet/crate{name = "emergency supplies crate"},/obj/item/weapon/storage/toolbox/emergency,/obj/item/weapon/storage/toolbox/emergency,/obj/item/device/flashlight/flare{pixel_x = 3; pixel_y = 3},/obj/item/device/flashlight/flare{pixel_x = -6; pixel_y = -2},/obj/item/weapon/crowbar,/obj/item/weapon/wrench,/obj/item/device/radio,/turf/open/floor/plasteel/bot,/area/shuttle/escape) -"bj" = (/obj/machinery/vending/wallmed{name = "Emergency NanoMed"; pixel_x = 0; pixel_y = 0; req_access_txt = "0"; use_power = 0},/turf/closed/wall/shuttle/smooth/nodiagonal,/area/shuttle/escape) -"bk" = (/obj/machinery/door/airlock/shuttle{name = "Emergency Shuttle Cargo"},/turf/open/floor/plasteel/warning/side,/area/shuttle/escape) -"bl" = (/obj/structure/rack,/obj/item/clothing/suit/fire/firefighter,/obj/item/weapon/tank/internals/oxygen/red,/obj/item/clothing/mask/gas,/obj/item/clothing/head/hardhat/red,/turf/open/floor/plasteel/bot,/area/shuttle/escape) -"bm" = (/turf/open/floor/plasteel/warning{dir = 10},/area/shuttle/escape) -"bn" = (/turf/open/floor/plasteel/warning{dir = 6},/area/shuttle/escape) -"bo" = (/turf/open/floor/plasteel/neutral/side,/area/shuttle/escape) -"bp" = (/obj/machinery/flasher{id = "shuttleflash"; pixel_y = -26},/turf/open/floor/plasteel/neutral/side,/area/shuttle/escape) -"bq" = (/obj/structure/table,/obj/item/weapon/clipboard,/obj/item/weapon/folder/yellow,/obj/item/weapon/pen,/obj/item/hand_labeler_refill,/turf/open/floor/plasteel/bot,/area/shuttle/escape) -"br" = (/obj/machinery/recharge_station,/turf/open/floor/plasteel/delivery,/area/shuttle/escape) -"bs" = (/obj/structure/table,/obj/machinery/cell_charger,/obj/item/weapon/stock_parts/cell/high,/turf/open/floor/plasteel/bot,/area/shuttle/escape) -"bt" = (/obj/machinery/door/airlock/glass_security{name = "Holding Area"; req_access_txt = "2"},/turf/open/floor/plasteel/shuttle/red,/area/shuttle/escape) -"bu" = (/obj/machinery/door/airlock/glass_command{name = "Cockpit"; req_access_txt = "19"},/turf/open/floor/plasteel/warning/side{tag = "icon-plasteel_warn_side (EAST)"; icon_state = "plasteel_warn_side"; dir = 4},/area/shuttle/escape) -"bv" = (/obj/machinery/door/airlock/shuttle{name = "Emergency Shuttle Airlock"; req_access_txt = "2"},/turf/open/floor/plasteel/warnwhite/side,/area/shuttle/escape) -"bw" = (/turf/open/floor/plasteel/shuttle/red,/area/shuttle/escape) -"bx" = (/obj/structure/chair,/turf/open/floor/plasteel/shuttle/red,/area/shuttle/escape) -"by" = (/obj/structure/table/reinforced,/obj/machinery/recharger,/turf/open/floor/plasteel/shuttle/red,/area/shuttle/escape) -"bz" = (/obj/item/weapon/twohanded/required/kirbyplants{icon_state = "plant-21"; layer = 4.1},/obj/machinery/button/flasher{id = "shuttleflash"; pixel_x = -26; pixel_y = 24},/turf/open/floor/plasteel/red/corner{dir = 1},/area/shuttle/escape) -"bA" = (/obj/item/weapon/twohanded/required/kirbyplants{icon_state = "plant-21"; layer = 4.1},/turf/open/floor/plasteel/neutral/corner{dir = 4},/area/shuttle/escape) -"bB" = (/obj/structure/table,/obj/item/weapon/clipboard,/obj/item/toy/figure/ninja,/turf/open/floor/plasteel/bot,/area/shuttle/escape) -"bC" = (/obj/structure/chair,/turf/open/floor/plasteel/bot,/area/shuttle/escape) -"bD" = (/obj/structure/chair,/obj/machinery/status_display{pixel_y = 32},/turf/open/floor/plasteel/bot,/area/shuttle/escape) -"bE" = (/obj/structure/chair{dir = 4},/turf/open/floor/plasteel/shuttle/red,/area/shuttle/escape) -"bF" = (/turf/open/floor/plasteel/red/corner{dir = 1},/area/shuttle/escape) -"bG" = (/obj/structure/extinguisher_cabinet{pixel_x = 26},/turf/open/floor/plasteel/neutral/corner{dir = 4},/area/shuttle/escape) -"bH" = (/turf/open/floor/plasteel,/area/shuttle/escape) -"bI" = (/turf/open/floor/plasteel/neutral/corner,/area/shuttle/escape) -"bJ" = (/obj/item/device/radio/intercom{name = "Station Intercom"; pixel_x = 0; pixel_y = 58},/turf/open/floor/plasteel/neutral/side,/area/shuttle/escape) -"bK" = (/turf/open/floor/plasteel/neutral/corner{dir = 8},/area/shuttle/escape) -"bL" = (/obj/machinery/door/airlock/external{name = "Emergency Recovery Airlock"},/turf/open/floor/plasteel/warning/side,/area/shuttle/escape) -"bM" = (/obj/structure/chair{dir = 4},/obj/machinery/status_display{pixel_x = -32},/turf/open/floor/plasteel/shuttle/red,/area/shuttle/escape) -"bN" = (/obj/structure/chair{dir = 8},/turf/open/floor/plasteel/shuttle/red,/area/shuttle/escape) -"bO" = (/obj/structure/table/reinforced,/obj/item/weapon/storage/lockbox/loyalty,/turf/open/floor/plasteel/shuttle/red,/area/shuttle/escape) -"bP" = (/obj/structure/table/reinforced,/obj/machinery/recharger,/turf/open/floor/plasteel/red/corner{dir = 8},/area/shuttle/escape) -"bQ" = (/obj/structure/fireaxecabinet{pixel_x = 32},/turf/open/floor/plasteel/neutral/corner,/area/shuttle/escape) -"bR" = (/obj/machinery/door/airlock/external{name = "Emergency Recovery Airlock"},/turf/open/floor/plasteel/warning/side{tag = "icon-plasteel_warn_side (EAST)"; icon_state = "plasteel_warn_side"; dir = 4},/area/shuttle/escape) -"bS" = (/turf/open/floor/plasteel/neutral/corner{dir = 4},/area/shuttle/escape) -"bT" = (/turf/open/floor/plasteel/neutral/corner{dir = 1},/area/shuttle/escape) -"bU" = (/obj/structure/chair{dir = 1},/turf/open/floor/plasteel/shuttle/red,/area/shuttle/escape) -"bV" = (/obj/structure/table/reinforced,/obj/item/weapon/storage/box/zipties,/obj/item/device/radio/intercom{name = "Station Intercom"; pixel_x = 0; pixel_y = -26},/turf/open/floor/plasteel/shuttle/red,/area/shuttle/escape) -"bW" = (/obj/structure/table/reinforced,/obj/item/weapon/paper_bin,/obj/item/weapon/pen,/turf/open/floor/plasteel/red/corner{dir = 8},/area/shuttle/escape) -"bX" = (/turf/open/floor/plasteel/blue/side,/area/shuttle/escape) -"bY" = (/obj/machinery/door/airlock/command{name = "Emergency Recovery Airlock"; req_access = null; req_access_txt = "19"},/turf/open/floor/plasteel/warning/side{tag = "icon-plasteel_warn_side (NORTH)"; icon_state = "plasteel_warn_side"; dir = 1},/area/shuttle/escape) -"bZ" = (/obj/machinery/suit_storage_unit/standard_unit,/turf/open/floor/plasteel/delivery,/area/shuttle/escape) -"ca" = (/obj/structure/table/reinforced,/obj/machinery/recharger,/turf/open/floor/plasteel/vault{dir = 4},/area/shuttle/escape) -"cb" = (/obj/item/weapon/twohanded/required/kirbyplants{icon_state = "plant-21"; layer = 4.1; pixel_x = -3; pixel_y = 3},/turf/open/floor/plasteel/vault{tag = "icon-vault (NORTHEAST)"; icon_state = "vault"; dir = 5},/area/shuttle/escape) -"cc" = (/turf/open/floor/plasteel/vault{tag = "icon-vault (NORTHEAST)"; icon_state = "vault"; dir = 5},/area/shuttle/escape) -"cd" = (/obj/structure/table/reinforced,/obj/item/weapon/storage/fancy/donut_box,/turf/open/floor/plasteel/vault{dir = 4},/area/shuttle/escape) -"ce" = (/obj/machinery/computer/security,/turf/open/floor/plasteel/darkred/side{tag = "icon-darkred (NORTHWEST)"; icon_state = "darkred"; dir = 9},/area/shuttle/escape) -"cf" = (/obj/structure/chair/office/dark{dir = 8},/turf/open/floor/plasteel/vault{tag = "icon-vault (NORTHEAST)"; icon_state = "vault"; dir = 5},/area/shuttle/escape) -"cg" = (/obj/item/device/radio/intercom{name = "Station Intercom"; pixel_x = 26; pixel_y = 58},/turf/open/floor/plasteel/vault{tag = "icon-vault (NORTHEAST)"; icon_state = "vault"; dir = 5},/area/shuttle/escape) -"ch" = (/obj/structure/chair/office/dark{dir = 4},/turf/open/floor/plasteel/vault{tag = "icon-vault (NORTHEAST)"; icon_state = "vault"; dir = 5},/area/shuttle/escape) -"ci" = (/obj/machinery/computer/station_alert,/turf/open/floor/plasteel/darkyellow/side{tag = "icon-darkyellow (NORTHEAST)"; icon_state = "darkyellow"; dir = 5},/area/shuttle/escape) -"cj" = (/obj/machinery/computer/secure_data,/turf/open/floor/plasteel/darkred/side{tag = "icon-darkred (SOUTHWEST)"; icon_state = "darkred"; dir = 10},/area/shuttle/escape) -"ck" = (/obj/structure/chair/office/dark{dir = 8},/turf/open/floor/plasteel/vault,/area/shuttle/escape) -"cl" = (/obj/structure/chair/office/dark,/turf/open/floor/plasteel/vault,/area/shuttle/escape) -"cm" = (/obj/structure/table/reinforced,/obj/item/weapon/storage/firstaid/regular,/turf/open/floor/plasteel/vault,/area/shuttle/escape) -"cn" = (/obj/structure/table/reinforced,/obj/item/weapon/folder/blue,/obj/item/weapon/pen,/turf/open/floor/plasteel/vault,/area/shuttle/escape) -"co" = (/obj/structure/chair/office/dark{dir = 4},/turf/open/floor/plasteel/vault,/area/shuttle/escape) -"cp" = (/obj/machinery/computer/atmos_alert,/turf/open/floor/plasteel/darkyellow/side{tag = "icon-darkyellow (SOUTHEAST)"; icon_state = "darkyellow"; dir = 6},/area/shuttle/escape) -"cq" = (/obj/structure/table/reinforced,/obj/item/weapon/paper_bin,/obj/item/weapon/pen,/turf/open/floor/plasteel/vault{dir = 4},/area/shuttle/escape) -"cr" = (/obj/structure/table/reinforced,/obj/item/weapon/folder/red,/obj/item/weapon/restraints/handcuffs,/obj/item/device/assembly/flash/handheld,/turf/open/floor/plasteel/vault,/area/shuttle/escape) -"cs" = (/obj/machinery/computer/crew,/turf/open/floor/plasteel/darkblue/side,/area/shuttle/escape) -"ct" = (/obj/machinery/computer/med_data,/turf/open/floor/plasteel/darkblue/side{dir = 6},/area/shuttle/escape) -"cu" = (/obj/machinery/computer/emergency_shuttle,/turf/open/floor/plasteel/darkblue/side{dir = 10},/area/shuttle/escape) -"cv" = (/obj/machinery/computer/communications,/turf/open/floor/plasteel/darkblue/side,/area/shuttle/escape) -"cw" = (/obj/structure/table/reinforced,/obj/item/weapon/storage/toolbox/mechanical,/turf/open/floor/plasteel/vault,/area/shuttle/escape) -"cx" = (/obj/structure/table/reinforced,/obj/machinery/cell_charger,/obj/item/weapon/stock_parts/cell/high,/turf/open/floor/plasteel/vault{dir = 4},/area/shuttle/escape) - -(1,1,1) = {" -aaabababacababacababacababacabababaa -acadadadacadadacadadacadadacadadadac -aeafagagafafagafagagafagafafagagafae -afahaiaiaiaiaiaiaiaiaiahafajakalamaf -afanaoaoaoaoaoaoaoaoaoapaqarasatauag -agavaoawaxavaoawaxavaoawagayazaAaBag -agavaoawaCavaoawaDavaoaEaFaEaoaoaGag -afaHaoawaIavaoawaIavaoaEaFaEaoaoaJag -afanaoawaKavaoawaKavaoawagaLaMaMaNaf -aOaEaoawaxavaoawaxavaoawaPaQaRaRaSaf -aTaUaoaoaoaoaoaoaoaoaoawafafaVaVaPaT -aWaEaoawaXavaoawaXavaoawafaYaEaEaZaf -afanaoawaKavaoawaCavaoawafbabbbcbdag -agavaoawbeavaoawbeavaoawafbfbgbhbiag -agavaoawaDavaoawbjavaoaEbkaEbgbhaUag -agavaoawaXavaoawaXavaoaEbkaEbgbhaUag -afanaoaoaoaoaoaoaoaoaoapafblbmbnahag -aOaEbobobobobpboboboboahafbqbrbrbsaf -afafbtafagafafagbubuagafafafafafafaf -bvbwbwbxbxbyafbzaiaibAaTbBbCbDbCahag -afbEbwbwbwbwbtbFaoaobGafbHbHbIbJbKbL -afbMbwbwbNbOagbPaoaobQafbRaebSaibTbL -afbUbUbUbUbVaTbWbXbXbIbYaUafbZbZbZag -afafagafafafafaqbubuaqafafafafagafaf -aaaaaaaaafcacbcccccccccbcdafaaaaaaaa -aaaaaaaaaTcecfcccccccgchciaTaaaaaaaa -aaaaaaaaagcjckclcmcnclcocpagaaaaaaaa -aaaaaaaaafcqcrcsctcucvcwcxafaaaaaaaa -aaaaaaaaafafagagagagagagafafaaaaaaaa -"} diff --git a/_maps/shuttles/emergency_goon.dmm b/_maps/shuttles/emergency_goon.dmm index f400b86ddb..06b874baa6 100644 --- a/_maps/shuttles/emergency_goon.dmm +++ b/_maps/shuttles/emergency_goon.dmm @@ -17,23 +17,23 @@ /turf/open/floor/plating, /area/shuttle/escape) "d" = ( -/turf/closed/wall/mineral/titanium, +/turf/closed/wall/shuttle/smooth/nodiagonal, /area/shuttle/escape) "e" = ( -/turf/closed/wall/mineral/titanium/overspace, +/turf/closed/wall/shuttle/smooth/overspace, /area/shuttle/escape) "f" = ( /obj/machinery/status_display, -/turf/closed/wall/mineral/titanium, +/turf/closed/wall/shuttle/smooth/nodiagonal, /area/shuttle/escape) "g" = ( -/obj/machinery/door/airlock/titanium{ +/obj/machinery/door/airlock/shuttle{ name = "Emergency Shuttle Airlock" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "h" = ( -/obj/machinery/door/airlock/titanium{ +/obj/machinery/door/airlock/shuttle{ name = "Emergency Shuttle Airlock" }, /obj/docking_port/mobile/emergency{ @@ -44,7 +44,7 @@ width = 19; timid = 1 }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "i" = ( /turf/closed/wall/shuttle{ @@ -67,7 +67,7 @@ /area/shuttle/escape) "l" = ( /obj/machinery/vending/wallmed, -/turf/closed/wall/mineral/titanium, +/turf/closed/wall/shuttle/smooth/nodiagonal, /area/shuttle/escape) "m" = ( /obj/structure/window/shuttle, @@ -81,7 +81,7 @@ }, /area/shuttle/escape) "o" = ( -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "p" = ( /obj/structure/shuttle/engine/heater{ @@ -99,20 +99,22 @@ icon_state = "sleeper-open"; dir = 4 }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "r" = ( -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "s" = ( /obj/structure/chair{ dir = 4 }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "t" = ( -/turf/open/floor/mineral/titanium/blue, -/turf/closed/wall/mineral/titanium/interior, +/turf/closed/wall/shuttle{ + tag = "icon-wall_floor"; + icon_state = "wall_floor" + }, /area/shuttle/escape) "u" = ( /turf/open/space, @@ -120,13 +122,13 @@ "v" = ( /obj/structure/table, /obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "w" = ( /obj/machinery/door/airlock/glass{ name = "Emergency Shuttle Infirmary" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "x" = ( /obj/structure/window/shuttle, @@ -136,7 +138,7 @@ "y" = ( /obj/structure/table/reinforced, /obj/item/weapon/storage/toolbox/emergency, -/turf/open/floor/mineral/titanium/yellow, +/turf/open/floor/plasteel/shuttle/yellow, /area/shuttle/escape) "z" = ( /obj/structure/table/reinforced, @@ -149,13 +151,13 @@ dir = 4; pixel_x = 0 }, -/turf/open/floor/mineral/titanium/yellow, +/turf/open/floor/plasteel/shuttle/yellow, /area/shuttle/escape) "A" = ( /obj/structure/chair/comfy/brown{ dir = 4 }, -/turf/open/floor/mineral/titanium/yellow, +/turf/open/floor/plasteel/shuttle/yellow, /area/shuttle/escape) "B" = ( /obj/structure/window/reinforced{ @@ -166,7 +168,7 @@ dir = 1 }, /obj/structure/table/reinforced, -/turf/open/floor/mineral/titanium/yellow, +/turf/open/floor/plasteel/shuttle/yellow, /area/shuttle/escape) "C" = ( /turf/closed/wall/shuttle{ @@ -185,10 +187,10 @@ name = "Emergency Shuttle Cockpit"; req_access_txt = "19" }, -/turf/open/floor/mineral/titanium/yellow, +/turf/open/floor/plasteel/shuttle/yellow, /area/shuttle/escape) "F" = ( -/turf/open/floor/mineral/titanium/yellow, +/turf/open/floor/plasteel/shuttle/yellow, /area/shuttle/escape) "G" = ( /obj/machinery/computer/emergency_shuttle, @@ -196,13 +198,13 @@ dir = 4; pixel_x = 0 }, -/turf/open/floor/mineral/titanium/yellow, +/turf/open/floor/plasteel/shuttle/yellow, /area/shuttle/escape) "H" = ( /obj/structure/chair{ dir = 4 }, -/turf/open/floor/mineral/plastitanium/brig, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/escape) "I" = ( /obj/structure/table/reinforced, @@ -211,22 +213,22 @@ pixel_x = 0 }, /obj/structure/window/reinforced, -/turf/open/floor/mineral/titanium/yellow, +/turf/open/floor/plasteel/shuttle/yellow, /area/shuttle/escape) "J" = ( -/turf/open/floor/mineral/plastitanium/brig, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/escape) "K" = ( /obj/machinery/door/airlock/glass{ name = "Emergency Shuttle Brig"; req_access_txt = "2" }, -/turf/open/floor/mineral/plastitanium/brig, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/escape) "L" = ( /obj/structure/table/reinforced, /obj/item/weapon/storage/firstaid/regular, -/turf/open/floor/mineral/titanium/yellow, +/turf/open/floor/plasteel/shuttle/yellow, /area/shuttle/escape) "M" = ( /obj/structure/table/reinforced, @@ -236,7 +238,7 @@ dir = 4; pixel_x = 0 }, -/turf/open/floor/mineral/titanium/yellow, +/turf/open/floor/plasteel/shuttle/yellow, /area/shuttle/escape) "N" = ( /turf/closed/wall/shuttle{ @@ -262,7 +264,7 @@ (1,1,1) = {" a -d +e b b b @@ -270,7 +272,7 @@ d b b b -d +e a "} (2,1,1) = {" @@ -313,7 +315,7 @@ d d "} (5,1,1) = {" -d +e d d w @@ -323,7 +325,7 @@ f K d d -d +e "} (6,1,1) = {" a @@ -438,21 +440,21 @@ s o s s -t +O d a "} (15,1,1) = {" a -d +e d x d E -f +P x d -d +e a "} (16,1,1) = {" @@ -471,13 +473,13 @@ a (17,1,1) = {" a a -d +e z A A A M -d +e a a "} @@ -498,11 +500,11 @@ a a a a -d +e x x x -d +e a a a diff --git a/_maps/shuttles/emergency_imfedupwiththisworld.dmm b/_maps/shuttles/emergency_imfedupwiththisworld.dmm index 9afc23482c..aa4719f3ec 100644 --- a/_maps/shuttles/emergency_imfedupwiththisworld.dmm +++ b/_maps/shuttles/emergency_imfedupwiththisworld.dmm @@ -120,7 +120,7 @@ /obj/effect/decal/cleanable/blood/drip, /obj/effect/decal/cleanable/blood/gibs, /obj/effect/mob_spawn/human/corpse, -/obj/item/weapon/gun/ballistic/automatic/pistol/m1911, +/obj/item/weapon/gun/projectile/automatic/pistol/m1911, /obj/machinery/light/small{ dir = 8 }, diff --git a/_maps/shuttles/emergency_luxury.dmm b/_maps/shuttles/emergency_luxury.dmm deleted file mode 100644 index 1b1443fb26..0000000000 --- a/_maps/shuttles/emergency_luxury.dmm +++ /dev/null @@ -1,77 +0,0 @@ -"aa" = (/turf/open/space,/area/space) -"ab" = (/turf/closed/indestructible/riveted/uranium,/area/shuttle/escape) -"ac" = (/obj/machinery/door/airlock/external,/turf/open/floor/plating{tag = "icon-wood-broken2"; icon_state = "wood-broken2"},/area/shuttle/escape) -"ad" = (/obj/machinery/door/airlock/gold,/obj/effect/forcefield/luxury_shuttle{name = "Ticket Booth"},/turf/open/floor/mineral/gold,/area/shuttle/escape) -"ae" = (/obj/docking_port/mobile/emergency{dir = 2; dwidth = 5; height = 14; name = "Luxury emergency shuttle"; timid = 1; width = 25},/obj/machinery/door/airlock/gold,/obj/effect/forcefield/luxury_shuttle{name = "Ticket Booth"},/turf/open/floor/mineral/gold,/area/shuttle/escape) -"af" = (/turf/open/floor/plating{tag = "icon-wood-broken3"; icon_state = "wood-broken3"},/area/shuttle/escape) -"ag" = (/turf/open/floor/plating{tag = "icon-wood"; icon_state = "wood"},/area/shuttle/escape) -"ah" = (/turf/open/floor/plating{tag = "icon-wood-broken"; icon_state = "wood-broken"},/area/shuttle/escape) -"ai" = (/turf/open/floor/plating{tag = "icon-wood-broken5"; icon_state = "wood-broken5"},/area/shuttle/escape) -"aj" = (/turf/open/floor/mineral/gold,/area/shuttle/escape) -"ak" = (/obj/item/weapon/twohanded/required/kirbyplants{tag = "icon-plant-10"; icon_state = "plant-10"},/turf/open/floor/mineral/gold,/area/shuttle/escape) -"al" = (/obj/structure/mirror{pixel_y = 32},/turf/open/floor/mineral/gold,/area/shuttle/escape) -"am" = (/turf/open/floor/plating{tag = "icon-wood-broken7"; icon_state = "wood-broken7"},/area/shuttle/escape) -"an" = (/turf/open/floor/plating{tag = "icon-wood-broken2"; icon_state = "wood-broken2"},/area/shuttle/escape) -"ao" = (/turf/open/floor/plating{tag = "icon-wood-broken6"; icon_state = "wood-broken6"},/area/shuttle/escape) -"ap" = (/obj/structure/toilet{dir = 4; icon_state = "toilet00"; tag = "icon-toilet00 (NORTH)"},/turf/open/floor/mineral/gold,/area/shuttle/escape) -"aq" = (/obj/machinery/door/airlock/gold,/turf/open/floor/mineral/gold,/area/shuttle/escape) -"ar" = (/obj/structure/shuttle/engine/propulsion{dir = 4},/turf/open/floor/plating/airless,/area/shuttle/escape) -"as" = (/obj/structure/shuttle/engine/heater{dir = 8},/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plating/airless,/area/shuttle/escape) -"at" = (/turf/open/floor/carpet,/area/shuttle/escape) -"au" = (/obj/structure/chair/comfy,/turf/open/floor/carpet,/area/shuttle/escape) -"av" = (/obj/structure/chair/comfy{tag = "icon-comfychair (EAST)"; icon_state = "comfychair"; dir = 4},/turf/open/floor/mineral/gold,/area/shuttle/escape) -"aw" = (/obj/machinery/computer/communications,/turf/open/floor/mineral/gold,/area/shuttle/escape) -"ax" = (/obj/structure/table/wood/fancy,/obj/item/weapon/reagent_containers/food/snacks/meatballspaghetti,/turf/open/floor/carpet,/area/shuttle/escape) -"ay" = (/obj/structure/table/wood/fancy,/obj/item/weapon/reagent_containers/food/snacks/notasandwich,/turf/open/floor/carpet,/area/shuttle/escape) -"az" = (/obj/structure/table/wood/fancy,/obj/item/weapon/reagent_containers/food/snacks/pastatomato,/turf/open/floor/carpet,/area/shuttle/escape) -"aA" = (/obj/structure/table/wood/fancy,/obj/item/weapon/reagent_containers/food/snacks/kebab/tofu,/turf/open/floor/carpet,/area/shuttle/escape) -"aB" = (/obj/structure/table/wood/fancy,/obj/item/weapon/reagent_containers/food/snacks/honkdae,/turf/open/floor/carpet,/area/shuttle/escape) -"aC" = (/obj/structure/table/wood/fancy,/obj/item/weapon/reagent_containers/food/snacks/enchiladas,/turf/open/floor/carpet,/area/shuttle/escape) -"aD" = (/obj/structure/table/wood/fancy,/obj/item/weapon/reagent_containers/food/snacks/candiedapple,/turf/open/floor/carpet,/area/shuttle/escape) -"aE" = (/obj/structure/table/wood/fancy,/obj/item/weapon/reagent_containers/food/snacks/burger/baconburger,/turf/open/floor/carpet,/area/shuttle/escape) -"aF" = (/obj/structure/table/wood/fancy,/obj/item/weapon/reagent_containers/food/snacks/benedict,/turf/open/floor/carpet,/area/shuttle/escape) -"aG" = (/obj/structure/table/wood/fancy,/obj/item/weapon/reagent_containers/food/snacks/cakeslice/chocolate,/turf/open/floor/carpet,/area/shuttle/escape) -"aH" = (/obj/structure/table/wood/fancy,/obj/item/weapon/reagent_containers/food/snacks/chowmein,/turf/open/floor/carpet,/area/shuttle/escape) -"aI" = (/obj/structure/table/wood/fancy,/obj/item/weapon/reagent_containers/food/snacks/dulcedebatataslice,/turf/open/floor/carpet,/area/shuttle/escape) -"aJ" = (/obj/structure/table/wood/fancy,/obj/item/weapon/reagent_containers/food/snacks/salad/validsalad,/turf/open/floor/carpet,/area/shuttle/escape) -"aK" = (/obj/structure/table/wood/fancy,/obj/item/weapon/reagent_containers/food/snacks/carneburrito,/turf/open/floor/carpet,/area/shuttle/escape) -"aL" = (/obj/structure/table/wood/fancy,/obj/item/weapon/reagent_containers/food/snacks/chawanmushi,/turf/open/floor/carpet,/area/shuttle/escape) -"aM" = (/obj/machinery/computer/emergency_shuttle,/turf/open/floor/mineral/gold,/area/shuttle/escape) -"aN" = (/obj/structure/table/wood/fancy,/obj/item/weapon/reagent_containers/food/snacks/melonfruitbowl,/turf/open/floor/carpet,/area/shuttle/escape) -"aO" = (/obj/structure/table/wood/fancy,/obj/item/weapon/reagent_containers/food/snacks/khachapuri,/turf/open/floor/carpet,/area/shuttle/escape) -"aP" = (/obj/structure/table/wood/fancy,/obj/item/weapon/reagent_containers/food/snacks/grilledcheese,/turf/open/floor/carpet,/area/shuttle/escape) -"aQ" = (/obj/structure/table/wood/fancy,/obj/item/weapon/reagent_containers/food/snacks/jelliedtoast/cherry,/turf/open/floor/carpet,/area/shuttle/escape) -"aR" = (/obj/structure/table/wood/fancy,/obj/item/weapon/reagent_containers/food/snacks/honeybun,/turf/open/floor/carpet,/area/shuttle/escape) -"aS" = (/obj/structure/table/wood/fancy,/obj/item/weapon/reagent_containers/food/snacks/eggplantparm,/turf/open/floor/carpet,/area/shuttle/escape) -"aT" = (/obj/structure/table/wood/fancy,/obj/item/weapon/reagent_containers/food/snacks/copypasta,/turf/open/floor/carpet,/area/shuttle/escape) -"aU" = (/obj/structure/table/wood/fancy,/obj/item/weapon/reagent_containers/food/snacks/bearsteak,/turf/open/floor/carpet,/area/shuttle/escape) -"aV" = (/obj/structure/table/wood/fancy,/obj/item/weapon/reagent_containers/food/snacks/boiledspaghetti,/turf/open/floor/carpet,/area/shuttle/escape) -"aW" = (/obj/structure/table/wood/fancy,/obj/item/weapon/reagent_containers/food/snacks/cherrycupcake,/turf/open/floor/carpet,/area/shuttle/escape) -"aX" = (/obj/structure/table/wood/fancy,/obj/item/weapon/reagent_containers/food/snacks/customizable/pizza,/turf/open/floor/carpet,/area/shuttle/escape) -"aY" = (/obj/structure/table/wood/fancy,/obj/item/weapon/reagent_containers/food/snacks/hotdog,/turf/open/floor/carpet,/area/shuttle/escape) -"aZ" = (/obj/structure/table/wood/fancy,/obj/item/weapon/reagent_containers/food/snacks/pie/grapetart,/turf/open/floor/carpet,/area/shuttle/escape) -"ba" = (/obj/structure/table/wood/fancy,/obj/item/weapon/reagent_containers/food/snacks/burger/superbite,/turf/open/floor/carpet,/area/shuttle/escape) -"bb" = (/obj/structure/table/wood/fancy,/obj/item/weapon/reagent_containers/food/snacks/cakeslice/slimecake,/turf/open/floor/carpet,/area/shuttle/escape) -"bc" = (/obj/machinery/computer/station_alert,/turf/open/floor/mineral/gold,/area/shuttle/escape) -"bd" = (/obj/structure/chair/comfy{tag = "icon-comfychair (NORTH)"; icon_state = "comfychair"; dir = 1},/turf/open/floor/carpet,/area/shuttle/escape) -"be" = (/obj/machinery/computer/crew,/turf/open/floor/mineral/gold,/area/shuttle/escape) -"bf" = (/obj/machinery/sleeper{tag = "icon-sleeper-open (EAST)"; icon_state = "sleeper-open"; dir = 4},/turf/open/floor/mineral/gold,/area/shuttle/escape) -"bg" = (/obj/item/weapon/twohanded/required/kirbyplants{icon_state = "plant-21"; layer = 4.1; pixel_x = -3; pixel_y = 3},/turf/open/floor/mineral/gold,/area/shuttle/escape) -"bh" = (/turf/open/floor/plating/beach/coastline_b,/area/shuttle/escape) - -(1,1,1) = {" -aaababababababababababacabadabababababaeababababab -ababafagagagahagagaiagagabajajajajajajajabakajalab -abamaganagagagagagaoagafabajajajajajajajabapajajab -abababababababababababababajajajajajajajabababaqab -abababakajajajajajajajajajajajajajajajajajajajajab -arasabajatauauauauauauauauauauauauauauauatajavawab -arasabajataxayazaAaBaCaDaEaFaGaHaIaJaKaLatajavaMab -arasabajataNaOaPaQaRaSaTaUaVaWaXaYaZbabbatajavbcab -arasabajatbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdatajavbeab -abababajajajajajajajajajajajajajajajajajajajajajab -abbfajajajajajajajajajajajajajajajajajajajajajajab -abbfajajajbgbhbhbhbhbhbhbhbhbhbhbhbhbhbgajajajajab -abababakajbgbhbhbhbhbhbhbhbhbhbhbhbhbhbgajajajakab -aaabababababababababababababababababababababababab -"} diff --git a/_maps/shuttles/emergency_meta.dmm b/_maps/shuttles/emergency_meta.dmm index 0c3359597a..1a9a5a1a8a 100644 --- a/_maps/shuttles/emergency_meta.dmm +++ b/_maps/shuttles/emergency_meta.dmm @@ -3,7 +3,10 @@ /turf/open/space, /area/space) "ab" = ( -/turf/closed/wall/mineral/titanium/overspace, +/turf/closed/wall/shuttle{ + icon_state = "swall_s6"; + dir = 2 + }, /area/shuttle/escape) "ac" = ( /obj/structure/grille, @@ -11,7 +14,10 @@ /turf/open/floor/plating, /area/shuttle/escape) "ad" = ( -/turf/closed/wall/mineral/titanium, +/turf/closed/wall/shuttle{ + icon_state = "swall14"; + dir = 2 + }, /area/shuttle/escape) "ae" = ( /turf/closed/wall/shuttle{ @@ -20,17 +26,20 @@ }, /area/shuttle/escape) "af" = ( -/obj/machinery/door/airlock/titanium{ +/obj/machinery/door/airlock/shuttle{ name = "Emergency Shuttle Airlock" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "ag" = ( /obj/structure/sign/nosmoking_2, -/turf/closed/wall/mineral/titanium, +/turf/closed/wall/shuttle{ + icon_state = "swall12"; + dir = 2 + }, /area/shuttle/escape) "ah" = ( -/obj/machinery/door/airlock/titanium{ +/obj/machinery/door/airlock/shuttle{ name = "Emergency Shuttle Airlock" }, /obj/docking_port/mobile/emergency{ @@ -38,10 +47,10 @@ dwidth = 5; height = 14; name = "Meta emergency shuttle"; - timid = 1; - width = 25 + width = 25; + timid = 1 }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "ai" = ( /turf/closed/wall/shuttle{ @@ -50,10 +59,10 @@ }, /area/shuttle/escape) "aj" = ( -/turf/open/space, -/turf/closed/wall/mineral/plastitanium{ - dir = 8; - icon_state = "diagonalWall3" +/turf/closed/wall/shuttle{ + tag = "icon-wall3 (NORTHWEST)"; + icon_state = "wall3"; + dir = 9 }, /area/shuttle/escape) "ak" = ( @@ -72,31 +81,31 @@ pixel_x = 5; pixel_y = -1 }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "am" = ( /obj/machinery/computer/crew, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "an" = ( /obj/machinery/computer/security, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "ao" = ( /obj/structure/table, /obj/item/weapon/storage/firstaid/regular, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "ap" = ( /obj/structure/closet/emcloset, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "aq" = ( -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "ar" = ( /obj/structure/chair, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "as" = ( /obj/item/device/radio/intercom{ @@ -106,7 +115,7 @@ pixel_y = 27 }, /obj/structure/chair, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "at" = ( /obj/item/clothing/suit/hazardvest{ @@ -187,7 +196,7 @@ /obj/structure/closet/crate{ name = "lifejackets" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "au" = ( /obj/structure/shuttle/engine/propulsion{ @@ -207,24 +216,27 @@ "aw" = ( /obj/structure/table, /obj/item/weapon/storage/fancy/donut_box, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "ax" = ( /obj/structure/chair/office/dark{ dir = 1 }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "ay" = ( /obj/structure/table, /obj/item/weapon/restraints/handcuffs{ pixel_y = 3 }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "az" = ( /obj/machinery/status_display, -/turf/closed/wall/mineral/titanium, +/turf/closed/wall/shuttle{ + icon_state = "swall3"; + dir = 2 + }, /area/shuttle/escape) "aA" = ( /obj/structure/tank_dispenser/oxygen{ @@ -232,15 +244,15 @@ pixel_x = -1; pixel_y = 2 }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "aB" = ( /obj/machinery/computer/communications, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "aC" = ( /obj/structure/chair/office/dark, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "aD" = ( /turf/closed/wall/shuttle{ @@ -251,24 +263,24 @@ /obj/structure/chair{ dir = 1 }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "aF" = ( /obj/machinery/computer/emergency_shuttle, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "aG" = ( /obj/structure/chair/office/dark{ dir = 8 }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "aH" = ( /obj/machinery/door/airlock/glass_command{ name = "Cockpit"; req_access_txt = "19" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "aI" = ( /obj/machinery/vending/wallmed{ @@ -278,18 +290,26 @@ req_access_txt = "0"; use_power = 0 }, -/turf/closed/wall/mineral/titanium, +/turf/closed/wall/shuttle{ + icon_state = "swall12"; + dir = 2 + }, /area/shuttle/escape) "aJ" = ( /obj/structure/extinguisher_cabinet, -/turf/closed/wall/mineral/titanium, +/turf/closed/wall/shuttle{ + icon_state = "swall12"; + dir = 2 + }, /area/shuttle/escape) "aK" = ( -/turf/closed/wall/mineral/plastitanium, +/turf/closed/wall/shuttle{ + icon_state = "wall3" + }, /area/shuttle/escape) "aL" = ( /obj/machinery/computer/station_alert, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "aM" = ( /turf/closed/wall/shuttle{ @@ -302,15 +322,15 @@ pixel_x = 32; pixel_y = 0 }, -/obj/machinery/holopad, -/turf/open/floor/mineral/titanium/blue, +/obj/machinery/hologram/holopad, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "aO" = ( /obj/structure/table, /obj/item/weapon/storage/toolbox/emergency{ pixel_y = 3 }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "aP" = ( /obj/structure/table, @@ -320,7 +340,7 @@ pixel_y = 4; use_power = 0 }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "aQ" = ( /obj/structure/table, @@ -334,7 +354,7 @@ pixel_x = 0; pixel_y = -31 }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "aR" = ( /obj/structure/table, @@ -344,7 +364,7 @@ pixel_x = 0; pixel_y = -27 }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "aS" = ( /obj/item/device/radio/intercom{ @@ -356,14 +376,14 @@ /obj/structure/chair{ dir = 1 }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "aT" = ( /obj/structure/table, /obj/item/stack/medical/gauze, /obj/item/stack/medical/bruise_pack, /obj/item/stack/medical/ointment, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "aU" = ( /turf/closed/wall/shuttle{ @@ -383,7 +403,7 @@ req_access = null; req_access_txt = "19" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "aX" = ( /turf/closed/wall/shuttle{ @@ -396,7 +416,7 @@ name = "Brig"; req_access_txt = "2" }, -/turf/open/floor/mineral/plastitanium/brig, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/escape) "aZ" = ( /obj/machinery/door/airlock/glass_medical{ @@ -404,14 +424,17 @@ name = "Escape Shuttle Infirmary"; req_access_txt = "0" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "ba" = ( /obj/structure/sign/bluecross_2, -/turf/closed/wall/mineral/titanium, +/turf/closed/wall/shuttle{ + icon_state = "swall14"; + dir = 2 + }, /area/shuttle/escape) "bb" = ( -/obj/machinery/door/airlock/titanium{ +/obj/machinery/door/airlock/shuttle{ name = "Emergency Shuttle Cargo Bay Airlock" }, /turf/open/floor/plasteel/delivery, @@ -438,32 +461,32 @@ /turf/open/floor/plasteel/floorgrime, /area/shuttle/escape) "bg" = ( -/turf/open/floor/mineral/plastitanium, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/escape) "bh" = ( /obj/structure/chair{ dir = 4 }, -/turf/open/floor/mineral/plastitanium/brig, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/escape) "bi" = ( /obj/structure/chair, -/turf/open/floor/mineral/plastitanium/brig, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/escape) "bj" = ( /obj/structure/table, /obj/item/weapon/defibrillator/loaded, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "bk" = ( /obj/machinery/shower, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "bl" = ( /obj/machinery/sleeper{ dir = 8 }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "bm" = ( /obj/structure/rack, @@ -501,11 +524,14 @@ /obj/structure/chair{ dir = 8 }, -/turf/open/floor/mineral/plastitanium/brig, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/escape) "bt" = ( /obj/structure/reagent_dispensers/peppertank, -/turf/closed/wall/mineral/titanium, +/turf/closed/wall/shuttle{ + icon_state = "swall3"; + dir = 2 + }, /area/shuttle/escape) "bu" = ( /obj/structure/table, @@ -540,7 +566,7 @@ pixel_x = 2; pixel_y = 8 }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "bv" = ( /obj/structure/rack, @@ -574,7 +600,7 @@ "bz" = ( /obj/structure/table/optable, /obj/item/weapon/surgical_drapes, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "bA" = ( /turf/open/floor/plasteel/warning{ @@ -582,8 +608,7 @@ }, /area/shuttle/escape) "bB" = ( -/turf/open/space, -/turf/closed/wall/mineral/plastitanium{ +/turf/closed/wall/shuttle{ icon_state = "diagonalWall3" }, /area/shuttle/escape) @@ -610,14 +635,14 @@ pixel_x = -4; pixel_y = 4 }, -/turf/open/floor/mineral/plastitanium/brig, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/escape) "bE" = ( /obj/structure/table, /obj/item/weapon/restraints/handcuffs{ pixel_y = 3 }, -/turf/open/floor/mineral/plastitanium/brig, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/escape) "bF" = ( /obj/structure/table, @@ -626,7 +651,7 @@ idle_power_usage = 0; use_power = 0 }, -/turf/open/floor/mineral/plastitanium/brig, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/escape) "bG" = ( /obj/structure/table, @@ -634,7 +659,7 @@ pixel_x = 2; pixel_y = 2 }, -/turf/open/floor/mineral/plastitanium/brig, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/escape) "bH" = ( /obj/structure/table, @@ -656,11 +681,11 @@ pixel_x = -27; pixel_y = 0 }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "bI" = ( /obj/structure/sink, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "bJ" = ( /obj/structure/table, @@ -669,7 +694,7 @@ pixel_x = 2; pixel_y = 3 }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "bK" = ( /obj/structure/table, @@ -678,11 +703,13 @@ pixel_x = 3; pixel_y = 3 }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "bL" = ( -/obj/structure/extinguisher_cabinet, -/turf/closed/wall/mineral/titanium/nodiagonal, +/obj/structure/sign/bluecross_2, +/turf/closed/wall/shuttle{ + icon_state = "swall2" + }, /area/shuttle/escape) "bM" = ( /obj/structure/rack{ @@ -768,20 +795,22 @@ /turf/open/floor/plasteel/bot, /area/shuttle/escape) "bS" = ( -/obj/machinery/vending/wallmed{ - name = "Emergency NanoMed"; - pixel_x = 0; - pixel_y = 0; - req_access_txt = "0"; - use_power = 0 +/turf/closed/wall/shuttle{ + icon_state = "swall_s5"; + dir = 2 }, -/turf/closed/wall/mineral/titanium/nodiagonal, /area/shuttle/escape) "bT" = ( -/turf/closed/wall/mineral/titanium/nodiagonal, +/turf/closed/wall/shuttle{ + icon_state = "swall13"; + dir = 2 + }, /area/shuttle/escape) "bU" = ( -/turf/open/floor/mineral/plastitanium/brig, +/turf/closed/wall/shuttle{ + icon_state = "swall_s9"; + dir = 2 + }, /area/shuttle/escape) (1,1,1) = {" @@ -790,10 +819,10 @@ aa au au au -ad +aK au au -ad +aK au au au @@ -802,35 +831,35 @@ aa "} (2,1,1) = {" aa -ad +aj av av av -ad +aK av av -ad +aK av av av -ad +bB aa "} (3,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad +ab +ak +ak +ak +ak +ak +ak +ak +aU +ak +ak +ak +ak +bS "} (4,1,1) = {" ac @@ -857,7 +886,7 @@ aG ax aq aQ -ad +ae be be be @@ -873,9 +902,9 @@ aq aq aC aR -ad +aV bf -bT +br be be bf @@ -890,30 +919,30 @@ aq aq aq aW -bU -ad +bg +ae by by ac "} (8,1,1) = {" ad -ad +ak az -ad +aD aH -ad +aM az -ad -ad -ad -ad +ak +aX +ak +bc az -ad -ad +ak +bT "} (9,1,1) = {" -ad +ae ap aq aq @@ -921,12 +950,12 @@ aq aq aq ap -ad +aV bh bh bh bD -ad +ae "} (10,1,1) = {" ac @@ -938,14 +967,14 @@ aq aq aq aY -bU -bU -bU +bg +bg +bg bE ac "} (11,1,1) = {" -ad +ae ar aq aE @@ -955,8 +984,8 @@ aq aE ac bi -bU -bU +bg +bg bF ac "} @@ -969,12 +998,12 @@ aI ar aq aE -ad +ae bi bs bs bG -ad +ae "} (13,1,1) = {" ac @@ -986,11 +1015,11 @@ ar aq aS ad -ad +ak bt az -ad -ad +ak +bT "} (14,1,1) = {" af @@ -1001,12 +1030,12 @@ aJ ar aq aE -ad +ae bj bu bz bH -ad +ae "} (15,1,1) = {" ag @@ -1054,26 +1083,26 @@ bl bl aq bK -ad +ae "} (18,1,1) = {" ac ar aq aE -bL +aJ ar aq aE ba -ad +ak ac aZ -ba -ad +bL +bT "} (19,1,1) = {" -ad +ae as aq aE @@ -1081,28 +1110,28 @@ ac ar aq aE -ad +ae bm bv bA bM -ad +ae "} (20,1,1) = {" ah aq aq aE -bS +aI ar aq aE ac bn bw -be +bx bN -ad +ae "} (21,1,1) = {" ac @@ -1115,8 +1144,8 @@ aq aE aJ bo -be -be +bx +bx bO ac "} @@ -1131,13 +1160,13 @@ aq aq bb bp -be +bx bw bP ac "} (23,1,1) = {" -ad +ae aq aq aq @@ -1147,13 +1176,13 @@ aq aq bb bp -be -be +bx +bx bQ -ad +ae "} (24,1,1) = {" -ad +ae at aA at @@ -1166,21 +1195,21 @@ bq bp bp bR -ad +ae "} (25,1,1) = {" -ad -ad +ai +ak ac -ad +ak ac -ad +ak ac -ad -ad -ad +ak +bc +ak ac ac -ad -ad +ak +bU "} diff --git a/_maps/shuttles/emergency_meteor.dmm b/_maps/shuttles/emergency_meteor.dmm deleted file mode 100644 index 4809e66ac9..0000000000 --- a/_maps/shuttles/emergency_meteor.dmm +++ /dev/null @@ -1,57 +0,0 @@ -"a" = (/turf/open/space,/area/space) -"b" = (/turf/closed/mineral,/area/shuttle/escape{luminosity = 0}) -"c" = (/obj/structure/window/reinforced{dir = 1; layer = 2.9},/turf/open/floor/plating/asteroid,/area/shuttle/escape{luminosity = 0}) -"d" = (/turf/open/floor/plating/asteroid,/area/shuttle/escape{luminosity = 0}) -"e" = (/obj/machinery/computer/emergency_shuttle{use_power = 0},/turf/open/floor/plating/asteroid,/area/shuttle/escape{luminosity = 0}) -"f" = (/mob/living/simple_animal/hostile/asteroid/goliath,/turf/open/floor/plating/asteroid,/area/shuttle/escape{luminosity = 0}) -"g" = (/obj/structure/mineral_door/iron,/turf/open/floor/plating/asteroid,/area/shuttle/escape{luminosity = 0}) -"h" = (/obj/item/weapon/pickaxe,/turf/open/floor/plating/asteroid,/area/shuttle/escape{luminosity = 0}) -"i" = (/obj/effect/station_crash,/turf/open/floor/plating/asteroid,/area/shuttle/escape{luminosity = 0}) -"j" = (/obj/docking_port/mobile/emergency{dwidth = 20; height = 40; name = "a meteor with engines strapped to it"; timid = 1; width = 40},/turf/open/floor/plating/asteroid,/area/shuttle/escape{luminosity = 0}) -"k" = (/obj/structure/closet/crate,/turf/open/floor/plating/asteroid,/area/shuttle/escape{luminosity = 0}) -"l" = (/obj/machinery/power/smes,/turf/open/floor/plating/asteroid,/area/shuttle/escape{luminosity = 0}) -"m" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/shuttle/engine/heater,/turf/open/floor/plating/airless,/area/shuttle/escape{luminosity = 0}) -"n" = (/obj/structure/shuttle/engine/propulsion,/turf/open/floor/plating/airless,/area/shuttle/escape{luminosity = 0}) - -(1,1,1) = {" -aaabbbbbbaaabbbbaaaaabbbbbabbbbaaaaaaaaa -aabbbbbbbbbbbbbbcccccbbbbbbbbbbbbbbbbbaa -abbbbbbbbbbbbbbbdddddbbbbbbbbbbbbbbbbbba -bbbbbbbbbbbbbbbbeddddbbbbbbbbbbbbbbbbbba -bbbbbbbbbbbbbbbbbbdbbbbbbbbbbbbbbbbbbbba -ddddbbbbbbdbbbbbbbdbbbbbbbbbbbbbbbbbbbba -ddddbbbbbbddbbbbbbdbbbbbbbbbbbbbbbddbbbb -ddddbbbbbbddbbbbbbdbbbdddddbbbbbbdddbbbb -bbbbbbbbbbddbbbbbbdddddddddbbbbbbdfdbbbb -bbbbbbbbbbddbbbbbbbbbddbbbbbbbbbbdddbbbb -bbbbbbbbbbddbbbbbbbbbddbbbbbbbbbbbbbbbbb -dbbbbbbbbbddbbbbbbbbbddbbbbbbbbbbbbbbbbb -dbddbbbbbdddbbbbbbbbdddddddbbbbbbbbbbbbb -dbddddddgdddbbbbbbbddddddddbbbbbbbbbbbaa -bbddddddgdddbbbbbbbdbbbbbbbbbbbbbbdbbbaa -bddbbbbbbbbdbbbbbbbdbbbbbbbddddddddbbbbb -bdbbbbbbbbbdbbbbbbbdbbbbbbbbdbbbbbdbbbbb -ddbbbbbbbbbdbbbbbbbdbbbbbbbbdbbbbbdbbbbb -dbbbbbbbbbbdbbbbbbbdbbbbbbbbddddhbdbbbbb -dibbbbbbbbbdbbbbbbbdbbbbbbbbbbbbbbdbbbbb -jbbbbbbbbbbdbbbbbbbdbbbbbbbbbbbbbbdbbbba -dbbbbddddddddddddddddbbbbbbdbbbbbbdbbbba -dbbbdddbbbbdbbbbbbbdbbbbbbbddddddddbbbbb -bbbbdddbbbbdbbbbbbbdbbbbbbbdbbbbbbbbbbba -dbbbdddbbbbdbbbbbbbdbbbbbbbdbbbbbbbbbbba -dbbbddbbbbbbbbbbbbbdbbbbbbbdbbbbbbbbbbba -dbbbkkkbbbbbbbbbbbbdbbbbbbbdbbbllllllbba -dbbbbbbbbbbbbbbbbbbdbbbbbbbdbbbddddddbbb -dbbbbbbbbbbbbbbbbbbddddddddddddddddddbbb -ddbbbbbbbbbbbbbbbbbdbbbbbbbbbbbddddddbbb -ddbbbbbbbbbbbbbbbbbdbbbbbbbbbbbddddddbbb -ddbbbbbbbbbbbbbbbbbdbbbbbbbbbbbddddddbbb -ddbbbbbbbbbbbbbbbbbdbbbbbbbbbbbbbbbdbbbb -ddbbbbbbbbbbbbbbbbbdbbbbbbbbbbbbbbbdbbbb -ddbbbbbbbbbbbbbbbbbdbbbbbbbbbbbbbbbdbbbb -ddbbbbbbbbbbbbbbbbddddbbbbbbbbbbbbbdbbbb -bbbbbbbbbbbbbbbbbbddddbbbbbbbbbbbbbdbbbb -abbbbbbbbbbbbbbbbbddddbbbbbbbbbbbmmmmbba -aaabbbbaaaaaabbbbbmmmmbbbbbbbbaaannnnbaa -aaaaabbaaaaaabbaabnnnnaaaaaaaaaaaaaaaaaa -"} diff --git a/_maps/shuttles/emergency_mini.dmm b/_maps/shuttles/emergency_mini.dmm index 3930750859..20e636028f 100644 --- a/_maps/shuttles/emergency_mini.dmm +++ b/_maps/shuttles/emergency_mini.dmm @@ -3,7 +3,11 @@ /turf/open/space, /area/space) "b" = ( -/turf/closed/wall/mineral/titanium/overspace, +/turf/open/space, +/turf/closed/wall/shuttle{ + icon_state = "swall_f6"; + dir = 2 + }, /area/shuttle/escape) "c" = ( /obj/structure/shuttle/engine/propulsion{ @@ -20,7 +24,10 @@ }, /area/shuttle/escape) "e" = ( -/turf/closed/wall/mineral/titanium, +/turf/closed/wall/shuttle{ + icon_state = "swall13"; + dir = 2 + }, /area/shuttle/escape) "f" = ( /obj/structure/shuttle/engine/heater{ @@ -45,32 +52,32 @@ pixel_x = -2; pixel_y = 4 }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "i" = ( -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "j" = ( /obj/machinery/sleeper{ dir = 8; icon_state = "sleeper-open" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "k" = ( /obj/structure/chair{ dir = 4 }, -/turf/open/floor/mineral/plastitanium/brig, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/escape) "l" = ( -/turf/open/floor/mineral/plastitanium/brig, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/escape) "m" = ( /obj/structure/chair{ dir = 8 }, -/turf/open/floor/mineral/plastitanium/brig, +/turf/open/floor/plasteel/shuttle/red, /area/shuttle/escape) "n" = ( /obj/machinery/vending/wallmed{ @@ -78,7 +85,7 @@ pixel_x = 28; req_access_txt = "0" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "o" = ( /obj/effect/spawner/structure/window/reinforced, @@ -89,7 +96,7 @@ name = "Escape Shuttle Cell"; req_access_txt = "2" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "q" = ( /obj/machinery/door/airlock/glass_medical{ @@ -97,41 +104,44 @@ name = "Escape Shuttle Infirmary"; req_access_txt = "0" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "r" = ( -/turf/closed/wall/mineral/titanium/nodiagonal, +/turf/closed/wall/shuttle{ + icon_state = "swallc4"; + dir = 2 + }, /area/shuttle/escape) "s" = ( -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "t" = ( /obj/structure/closet/emcloset, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "u" = ( -/obj/machinery/door/airlock/titanium{ +/obj/machinery/door/airlock/shuttle{ name = "Emergency Shuttle Airlock" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "v" = ( /obj/structure/chair{ dir = 4 }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "w" = ( /obj/structure/chair{ dir = 8 }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "x" = ( /obj/structure/chair{ dir = 1 }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "y" = ( /obj/structure/grille, @@ -143,7 +153,10 @@ name = "Emergency NanoMed"; req_access_txt = "0" }, -/turf/closed/wall/mineral/titanium, +/turf/closed/wall/shuttle{ + icon_state = "swall3"; + dir = 2 + }, /area/shuttle/escape) "A" = ( /obj/structure/chair{ @@ -152,10 +165,10 @@ /obj/item/device/radio/intercom{ pixel_x = 25 }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "B" = ( -/obj/machinery/door/airlock/titanium{ +/obj/machinery/door/airlock/shuttle{ name = "Emergency Shuttle Airlock" }, /obj/docking_port/mobile/emergency{ @@ -166,11 +179,11 @@ timid = 1; width = 21 }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plating, /area/shuttle/escape) "C" = ( /obj/structure/chair, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "D" = ( /obj/structure/table, @@ -181,7 +194,7 @@ }, /obj/item/weapon/crowbar, /obj/item/weapon/extinguisher, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "E" = ( /turf/closed/wall/shuttle{ @@ -197,14 +210,17 @@ /area/shuttle/escape) "G" = ( /obj/machinery/status_display, -/turf/closed/wall/mineral/titanium, +/turf/closed/wall/shuttle{ + icon_state = "swall12"; + dir = 2 + }, /area/shuttle/escape) "H" = ( /obj/machinery/door/airlock/glass_command{ name = "Escape Shuttle Cockpit"; req_access_txt = "19" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "I" = ( /turf/closed/wall/shuttle{ @@ -214,38 +230,38 @@ /area/shuttle/escape) "J" = ( /obj/machinery/computer/atmos_alert, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "K" = ( /obj/structure/chair{ dir = 8 }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "L" = ( /obj/item/device/radio/intercom{ name = "Station Intercom (General)"; pixel_y = 24 }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "M" = ( /obj/structure/chair{ dir = 4 }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "N" = ( /obj/machinery/computer/security, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "O" = ( /obj/machinery/computer/crew, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "P" = ( /obj/machinery/computer/communications, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "Q" = ( /turf/open/space, @@ -264,15 +280,15 @@ /obj/structure/table, /obj/item/weapon/storage/firstaid/fire, /obj/item/weapon/extinguisher, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "T" = ( /obj/structure/chair, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "U" = ( /obj/machinery/computer/emergency_shuttle, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "V" = ( /obj/structure/table, @@ -281,7 +297,7 @@ pixel_y = 3 }, /obj/item/weapon/crowbar, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "W" = ( /turf/closed/wall/shuttle{ @@ -299,29 +315,29 @@ (1,1,1) = {" a -e -e -e -e -e -e -e +b +g +g +g +g +g +g y y y -e -e -e -e -e -e -e -e -e +g +g +g +g +g +E +g +g +Q a "} (2,1,1) = {" -e +b e h i @@ -337,11 +353,11 @@ s v v D -e +F J O -r -e +R +Q "} (3,1,1) = {" c @@ -349,7 +365,7 @@ f i i i -y +o s s s @@ -360,11 +376,11 @@ s s s i -e +F K K S -y +o "} (4,1,1) = {" c @@ -372,7 +388,7 @@ f j n j -y +o s w w @@ -387,22 +403,22 @@ G s s T -y +o "} (5,1,1) = {" c f -e -e -e +g +g +g r s x -y -y +o +o z -y -y +o +o C s s @@ -410,14 +426,14 @@ H s s U -y +o "} (6,1,1) = {" c f k k -y +o i s v @@ -429,11 +445,11 @@ v v s i -e +F L s T -y +o "} (7,1,1) = {" c @@ -452,18 +468,18 @@ s s s i -e +F M M V -y +o "} (8,1,1) = {" -e +d e m m -y +o t s w @@ -475,32 +491,32 @@ s w w D -e +F N P -r -e +W +X "} (9,1,1) = {" a -e -e -e -e -e +d +g +g +g +g u -e -e +g +g y -e -e +g +g B -e -e -e -e -e -e -e +g +g +g +I +g +g +X a "} diff --git a/_maps/shuttles/emergency_narnar.dmm b/_maps/shuttles/emergency_narnar.dmm index a6da04a518..3295aee638 100644 --- a/_maps/shuttles/emergency_narnar.dmm +++ b/_maps/shuttles/emergency_narnar.dmm @@ -164,6 +164,9 @@ /area/shuttle/escape) "G" = ( /obj/structure/extinguisher_cabinet{ + has_extinguisher = null; + icon_state = "extinguisher_empty"; + opened = 1; pixel_x = 27; pixel_y = 0 }, diff --git a/_maps/shuttles/emergency_pubby.dmm b/_maps/shuttles/emergency_pubby.dmm deleted file mode 100644 index 6ccfbbec7a..0000000000 --- a/_maps/shuttles/emergency_pubby.dmm +++ /dev/null @@ -1,71 +0,0 @@ -"a" = (/turf/open/space,/area/space) -"b" = (/turf/closed/wall/mineral/titanium,/area/shuttle/escape) -"c" = (/obj/structure/grille,/obj/structure/window/shuttle,/turf/open/floor/plating,/area/shuttle/escape) -"d" = (/obj/structure/table,/obj/item/weapon/storage/firstaid/regular{pixel_x = 2; pixel_y = 3},/turf/open/floor/mineral/titanium,/area/shuttle/escape) -"e" = (/obj/machinery/computer/emergency_shuttle,/turf/open/floor/mineral/titanium,/area/shuttle/escape) -"f" = (/obj/structure/table,/obj/machinery/recharger,/obj/structure/extinguisher_cabinet{pixel_x = 27; pixel_y = 0},/turf/open/floor/mineral/titanium,/area/shuttle/escape) -"g" = (/turf/open/floor/mineral/titanium/blue,/area/shuttle/escape) -"h" = (/obj/structure/chair/comfy/black{tag = "icon-comfychair (NORTH)"; icon_state = "comfychair"; dir = 1},/turf/open/floor/mineral/titanium/blue,/area/shuttle/escape) -"i" = (/obj/structure/closet,/turf/open/floor/mineral/titanium/yellow,/area/shuttle/escape) -"j" = (/obj/machinery/recharge_station,/turf/open/floor/mineral/titanium/yellow,/area/shuttle/escape) -"k" = (/obj/machinery/vending/cola,/turf/open/floor/mineral/titanium/yellow,/area/shuttle/escape) -"l" = (/obj/machinery/computer/atmos_alert,/turf/open/floor/mineral/titanium,/area/shuttle/escape) -"m" = (/obj/structure/chair{dir = 8},/turf/open/floor/mineral/titanium/blue,/area/shuttle/escape) -"n" = (/obj/structure/chair{dir = 4},/turf/open/floor/mineral/titanium/blue,/area/shuttle/escape) -"o" = (/obj/machinery/computer/security,/turf/open/floor/mineral/titanium,/area/shuttle/escape) -"p" = (/obj/structure/chair,/turf/open/floor/mineral/plastitanium/brig,/area/shuttle/escape) -"q" = (/turf/open/floor/mineral/titanium/yellow,/area/shuttle/escape) -"r" = (/obj/structure/extinguisher_cabinet{pixel_x = 27; pixel_y = 0},/turf/open/floor/mineral/titanium/yellow,/area/shuttle/escape) -"s" = (/obj/machinery/computer/crew,/turf/open/floor/mineral/titanium,/area/shuttle/escape) -"t" = (/obj/machinery/computer/communications,/turf/open/floor/mineral/titanium,/area/shuttle/escape) -"u" = (/obj/machinery/flasher{id = "shuttle_flasher"; pixel_x = -24; pixel_y = 6},/obj/machinery/button/flasher{id = "shuttle_flasher"; pixel_x = -24; pixel_y = -6},/turf/open/floor/mineral/plastitanium/brig,/area/shuttle/escape) -"v" = (/turf/open/floor/mineral/plastitanium/brig,/area/shuttle/escape) -"w" = (/obj/machinery/door/airlock/titanium{name = "Emergency Shuttle Airlock"},/turf/open/floor/plating,/area/shuttle/escape) -"x" = (/obj/structure/reagent_dispensers/fueltank,/turf/open/floor/mineral/titanium/yellow,/area/shuttle/escape) -"y" = (/obj/structure/sign/nanotrasen,/turf/closed/wall/mineral/titanium,/area/shuttle/escape) -"z" = (/obj/machinery/door/airlock/glass{name = "Emergency Shuttle Cockpit"; req_access_txt = "19"},/turf/open/floor/mineral/titanium/blue,/area/shuttle/escape) -"A" = (/obj/structure/chair{dir = 1},/turf/open/floor/mineral/plastitanium/brig,/area/shuttle/escape) -"B" = (/obj/machinery/door/airlock/titanium{name = "Emergency Shuttle Airlock"; req_access_txt = "2"},/turf/open/floor/mineral/plastitanium/brig,/area/shuttle/escape) -"C" = (/obj/machinery/door/airlock/glass{name = "Emergency Shuttle Cargo Hold"; req_access_txt = "0"},/turf/open/floor/mineral/titanium/blue,/area/shuttle/escape) -"D" = (/obj/item/weapon/twohanded/required/kirbyplants{icon_state = "plant-22"},/turf/open/floor/mineral/titanium/blue,/area/shuttle/escape) -"E" = (/obj/machinery/door/airlock/glass{name = "Emergency Shuttle Brig"; req_access_txt = "2"},/turf/open/floor/mineral/titanium/blue,/area/shuttle/escape) -"F" = (/turf/open/floor/mineral/titanium,/area/shuttle/escape) -"G" = (/obj/structure/chair{dir = 4},/turf/open/floor/mineral/titanium,/area/shuttle/escape) -"H" = (/obj/structure/chair{dir = 8},/obj/structure/window/reinforced{dir = 4},/turf/open/floor/mineral/titanium,/area/shuttle/escape) -"I" = (/obj/structure/chair{dir = 4},/obj/structure/window/reinforced{dir = 8},/turf/open/floor/mineral/titanium,/area/shuttle/escape) -"J" = (/turf/open/floor/carpet,/area/shuttle/escape) -"K" = (/obj/structure/chair/comfy/beige,/turf/open/floor/carpet,/area/shuttle/escape) -"L" = (/obj/structure/chair{dir = 8},/turf/open/floor/mineral/titanium,/area/shuttle/escape) -"M" = (/obj/structure/chair/comfy/beige{dir = 4},/turf/open/floor/carpet,/area/shuttle/escape) -"N" = (/obj/structure/table/wood/poker,/obj/item/toy/cards/deck,/turf/open/floor/carpet,/area/shuttle/escape) -"O" = (/obj/structure/chair/comfy/beige{dir = 8},/turf/open/floor/carpet,/area/shuttle/escape) -"P" = (/obj/structure/chair/comfy/beige{tag = "icon-comfychair (NORTH)"; icon_state = "comfychair"; dir = 1},/turf/open/floor/carpet,/area/shuttle/escape) -"Q" = (/obj/machinery/door/airlock/glass{name = "Emergency Shuttle Infirmary"},/turf/open/floor/mineral/titanium/blue,/area/shuttle/escape) -"R" = (/obj/machinery/sleeper{dir = 4; icon_state = "sleeper-open"},/turf/open/floor/mineral/titanium,/area/shuttle/escape) -"S" = (/obj/machinery/vending/medical,/turf/open/floor/mineral/titanium,/area/shuttle/escape) -"T" = (/obj/machinery/door/airlock/titanium{name = "Emergency Shuttle Airlock"},/obj/docking_port/mobile/emergency{dheight = 0; dir = 8; dwidth = 4; height = 15; name = "Pubby emergency shuttle"; port_angle = 90; timid = 1; width = 18},/turf/open/floor/mineral/titanium/blue,/area/shuttle/escape) -"U" = (/obj/structure/table,/obj/item/weapon/storage/firstaid/fire,/obj/item/weapon/storage/firstaid/regular{pixel_x = 2; pixel_y = 3},/obj/item/weapon/crowbar,/obj/structure/sign/nosmoking_2{pixel_x = 32},/turf/open/floor/mineral/titanium,/area/shuttle/escape) -"V" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/shuttle/engine/heater,/turf/open/floor/plating/airless,/area/shuttle/escape) -"W" = (/obj/structure/table,/obj/item/weapon/defibrillator/loaded,/turf/open/floor/mineral/titanium,/area/shuttle/escape) -"X" = (/obj/structure/shuttle/engine/propulsion,/turf/open/floor/plating/airless,/area/shuttle/escape) - -(1,1,1) = {" -aaaaabcccbaaaaa -aaaaabdefbaaaaa -bbbbbbghgbbbbbb -cijkblmgnobpppc -cqqrbsmgntbuvvc -wqqxbyczcybAvvB -bcCcbDgggDbcEcb -bFgggggggggggFb -cGgHIgJKJgHIgLc -cGgHIgMNOgHIgLc -bGgHIgJPJgHIgLb -wFgggggggggggFw -bGggbbcQcbbggLb -wFgLbRFFFSbGgFT -bGgLbFFFGUbGgLb -bVVVbRFFGWbVVVb -bXXXbVVVVVbXXXb -aaaabXXXXXbaaaa -"} diff --git a/_maps/shuttles/emergency_scrapheap.dmm b/_maps/shuttles/emergency_scrapheap.dmm deleted file mode 100644 index b089143ba8..0000000000 --- a/_maps/shuttles/emergency_scrapheap.dmm +++ /dev/null @@ -1,91 +0,0 @@ -"aa" = (/turf/open/space,/area/space) -"ab" = (/turf/closed/wall/mineral/titanium,/area/shuttle/escape) -"ac" = (/obj/structure/grille,/obj/structure/window/shuttle,/turf/open/floor/plating,/area/shuttle/escape) -"ad" = (/turf/closed/wall/mineral/titanium/nodiagonal,/area/shuttle/escape) -"ae" = (/obj/structure/table/wood,/turf/open/floor/carpet,/area/shuttle/escape) -"af" = (/obj/structure/chair/comfy/brown{tag = "icon-comfychair (NORTH)"; icon_state = "comfychair"; dir = 1},/turf/open/floor/carpet,/area/shuttle/escape) -"ag" = (/obj/machinery/computer/emergency_shuttle,/turf/open/floor/carpet,/area/shuttle/escape) -"ah" = (/obj/structure/table/wood,/obj/structure/window/reinforced{dir = 4},/turf/open/floor/carpet,/area/shuttle/escape) -"ai" = (/obj/machinery/computer/atmos_alert,/turf/open/floor/carpet,/area/shuttle/escape) -"aj" = (/obj/structure/chair/comfy/brown{tag = "icon-comfychair (WEST)"; icon_state = "comfychair"; dir = 8},/turf/open/floor/carpet,/area/shuttle/escape) -"ak" = (/turf/open/floor/carpet,/area/shuttle/escape) -"al" = (/obj/structure/chair/comfy/brown{tag = "icon-comfychair (EAST)"; icon_state = "comfychair"; dir = 4},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/turf/open/floor/carpet,/area/shuttle/escape) -"am" = (/obj/machinery/computer/crew,/turf/open/floor/carpet,/area/shuttle/escape) -"an" = (/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_x = 0; pixel_y = -29},/turf/open/floor/carpet,/area/shuttle/escape) -"ao" = (/obj/machinery/button/flasher{id = "cockpit_flasher"; pixel_x = 6; pixel_y = -24},/obj/structure/table/wood/poker,/turf/open/floor/carpet,/area/shuttle/escape) -"ap" = (/obj/structure/window/reinforced{dir = 4},/turf/open/floor/carpet,/area/shuttle/escape) -"aq" = (/obj/machinery/door/airlock/titanium{name = "Emergency Shuttle Airlock"; req_access_txt = "2"},/turf/open/floor/plasteel/shuttle/red,/area/shuttle/escape) -"ar" = (/obj/machinery/door/airlock/glass{name = "Emergency Shuttle Cockpit"; req_access_txt = "19"},/turf/open/floor/carpet,/area/shuttle/escape) -"as" = (/obj/machinery/door/airlock/titanium{name = "Emergency Shuttle Airlock"; req_access_txt = "2"},/turf/open/floor/plasteel/shuttle/white,/area/shuttle/escape) -"at" = (/obj/structure/chair,/turf/open/floor/mineral/plastitanium/brig,/area/shuttle/escape) -"au" = (/obj/machinery/flasher{id = "cockpit_flasher"; pixel_x = 6; pixel_y = 24},/turf/open/floor/plasteel/bar,/area/shuttle/escape) -"av" = (/turf/open/floor/plasteel/bar,/area/shuttle/escape) -"aw" = (/turf/open/floor/plasteel/shuttle/white,/area/shuttle/escape) -"ax" = (/obj/machinery/flasher{id = "shuttle_flasher"; pixel_x = -24; pixel_y = 6},/obj/machinery/button/flasher{id = "shuttle_flasher"; pixel_x = -24; pixel_y = -6},/turf/open/floor/mineral/plastitanium/brig,/area/shuttle/escape) -"ay" = (/turf/open/floor/mineral/plastitanium/brig,/area/shuttle/escape) -"az" = (/obj/structure/grille,/obj/machinery/door/airlock/glass{name = "Emergency Shuttle Brig"; req_access_txt = "2"},/turf/open/floor/plating,/area/shuttle/escape) -"aA" = (/obj/structure/grille/broken,/turf/open/floor/plasteel,/area/shuttle/escape) -"aB" = (/turf/closed/wall/mineral/titanium/interior,/area/shuttle/escape) -"aC" = (/obj/machinery/door/airlock/titanium{name = "Emergency Shuttle Airlock"; req_access_txt = "2"},/turf/open/floor/plating,/area/shuttle/escape) -"aD" = (/obj/structure/extinguisher_cabinet{pixel_y = -30},/obj/structure/table,/obj/item/weapon/extinguisher,/obj/item/weapon/crowbar,/turf/open/floor/mineral/plastitanium/brig,/area/shuttle/escape) -"aE" = (/obj/structure/chair{dir = 1},/turf/open/floor/mineral/plastitanium/brig,/area/shuttle/escape) -"aF" = (/obj/item/weapon/twohanded/required/kirbyplants/random,/turf/open/floor/plasteel/shuttle,/area/shuttle/escape) -"aG" = (/obj/structure/chair,/turf/open/floor/plasteel/shuttle,/area/shuttle/escape) -"aH" = (/obj/structure/table,/obj/item/weapon/storage/firstaid/regular,/turf/open/floor/plasteel/shuttle,/area/shuttle/escape) -"aI" = (/obj/structure/window/reinforced{dir = 4},/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_x = 0; pixel_y = 23},/turf/open/floor/plasteel/shuttle,/area/shuttle/escape) -"aJ" = (/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plasteel/shuttle/white,/area/shuttle/escape) -"aK" = (/obj/machinery/door/airlock/titanium{name = "Emergency Shuttle Airlock"},/obj/docking_port/mobile/emergency{name = "Scrapheap Challenge"; timid = 1},/turf/open/floor/plating,/area/shuttle/escape) -"aL" = (/obj/structure/chair{dir = 1},/turf/open/floor/plasteel/shuttle,/area/shuttle/escape) -"aM" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/chair{dir = 4},/turf/open/floor/plasteel/shuttle,/area/shuttle/escape) -"aN" = (/obj/structure/table/wood,/obj/item/toy/cards/deck/cas/black,/turf/open/floor/plasteel/shuttle,/area/shuttle/escape) -"aO" = (/obj/structure/table/wood,/turf/open/floor/plasteel/shuttle,/area/shuttle/escape) -"aP" = (/obj/structure/table/wood,/obj/item/toy/cards/deck/cas,/turf/open/floor/plasteel/shuttle/white,/area/shuttle/escape) -"aQ" = (/obj/structure/chair/comfy/brown{dir = 8},/turf/open/floor/plasteel/shuttle/white,/area/shuttle/escape) -"aR" = (/obj/structure/table_frame,/turf/open/floor/plasteel/shuttle,/area/shuttle/escape) -"aS" = (/obj/structure/table/wood,/obj/item/weapon/storage/firstaid/fire,/turf/open/floor/plasteel/shuttle,/area/shuttle/escape) -"aT" = (/obj/structure/chair{dir = 1},/obj/structure/extinguisher_cabinet{pixel_y = -30},/turf/open/floor/plasteel/shuttle,/area/shuttle/escape) -"aU" = (/turf/open/floor/plasteel/shuttle,/area/shuttle/escape) -"aV" = (/obj/structure/table,/obj/machinery/recharger,/turf/open/floor/plasteel/shuttle,/area/shuttle/escape) -"aW" = (/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plasteel/shuttle,/area/shuttle/escape) -"aX" = (/turf/open/floor/plasteel/grimy,/area/shuttle/escape) -"aY" = (/obj/structure/chair/wood{tag = "icon-wooden_chair (NORTH)"; icon_state = "wooden_chair"; dir = 1},/turf/open/floor/plasteel/grimy,/area/shuttle/escape) -"aZ" = (/obj/machinery/door/airlock/titanium{name = "Emergency Shuttle Airlock"},/turf/open/floor/plating,/area/shuttle/escape) -"ba" = (/obj/structure/extinguisher_cabinet{pixel_x = 0; pixel_y = -30},/turf/open/floor/plasteel/bar,/area/shuttle/escape) -"bb" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/barricade/wooden,/turf/open/floor/plasteel/bar,/area/shuttle/escape) -"bc" = (/obj/machinery/status_display,/turf/closed/wall/mineral/titanium,/area/shuttle/escape) -"bd" = (/obj/machinery/door/airlock{name = "Unisex Restrooms"; req_access_txt = "0"},/turf/open/floor/plasteel/freezer,/area/shuttle/escape) -"be" = (/turf/open/floor/plasteel/freezer,/area/shuttle/escape) -"bf" = (/obj/structure/extinguisher_cabinet{pixel_y = 30},/turf/open/floor/plasteel/freezer,/area/shuttle/escape) -"bg" = (/obj/machinery/door/airlock{name = "Unit 1"},/turf/open/floor/plasteel/freezer,/area/shuttle/escape) -"bh" = (/obj/machinery/door/airlock{name = "Unit 2"},/turf/open/floor/plasteel/freezer,/area/shuttle/escape) -"bi" = (/obj/machinery/door/airlock{name = "Unit B"},/turf/open/floor/plasteel/freezer,/area/shuttle/escape) -"bj" = (/obj/structure/toilet{tag = "icon-toilet00 (EAST)"; icon_state = "toilet00"; dir = 4},/turf/open/floor/plasteel/freezer,/area/shuttle/escape) -"bk" = (/obj/machinery/recharge_station,/turf/open/floor/plasteel/freezer,/area/shuttle/escape) -"bl" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/shuttle/engine/heater,/turf/open/floor/plating/airless,/area/shuttle/escape) -"bm" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/shuttle/engine/heater,/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plating/airless,/area/shuttle/escape) -"bn" = (/obj/structure/shuttle/engine/propulsion,/turf/open/floor/plating/airless,/area/shuttle/escape) - -(1,1,1) = {" -aaaaabacacacacacaaaaaa -aaabadaeafagafahaaaaaa -aaabaiajakakakalaaaaaa -aaabamakanaoapaaaaaaaa -abacaqacababaracasacaa -abacatacacauavacawacaa -abaxayayazaAacaBawaBab -aCaDaEaEacaFaGaGawaHaI -ababababadawawawawawaJ -aKaLaLaLaLawaLaLaLaLaM -abaAacacacawacacacacaM -acaGaNaOaGawaGaGaGaGaM -acawaPaQawawawawawawaJ -acaRaSaOaLaLaLaTaUaVaW -abaXaYaYacacacabababab -aZavbaavavavbbaaaaaaaa -ababababbcbdadaaaaaaaa -aZbebebfbebeabaaaaaaaa -abbgabbhabbiabaaaaaaaa -abbjabbjabbkabaaaaaaaa -ababblblblblbmaaaaaaaa -aaabbnbnbnbnbnaaaaaaaa -"} diff --git a/_maps/shuttles/emergency_supermatter.dmm b/_maps/shuttles/emergency_supermatter.dmm index 69ea316bb2..e9620c3389 100644 --- a/_maps/shuttles/emergency_supermatter.dmm +++ b/_maps/shuttles/emergency_supermatter.dmm @@ -3,11 +3,17 @@ /turf/open/space, /area/space) "ab" = ( -/turf/closed/wall/mineral/titanium/overspace, +/turf/closed/wall/shuttle{ + icon_state = "swall_s6"; + dir = 2 + }, /area/shuttle/escape) "ac" = ( /obj/structure/sign/radiation, -/turf/closed/wall/mineral/titanium, +/turf/closed/wall/shuttle{ + tag = "icon-swall12"; + icon_state = "swall12" + }, /area/shuttle/escape) "ad" = ( /obj/structure/grille, @@ -21,27 +27,30 @@ }, /area/shuttle/escape) "af" = ( -/turf/closed/wall/mineral/titanium, +/turf/closed/wall/shuttle{ + tag = "icon-swall3"; + icon_state = "swall3" + }, /area/shuttle/escape) "ag" = ( /obj/structure/closet/radiation{ anchored = 1 }, /obj/item/clothing/glasses/meson/engine, -/turf/open/floor/mineral/titanium/yellow, +/turf/open/floor/plasteel/shuttle/yellow, /area/shuttle/escape) "ah" = ( /obj/structure/chair, -/turf/open/floor/mineral/titanium/yellow, +/turf/open/floor/plasteel/shuttle/yellow, /area/shuttle/escape) "ai" = ( -/turf/open/floor/mineral/titanium/yellow, +/turf/open/floor/plasteel/shuttle/yellow, /area/shuttle/escape) "aj" = ( /obj/structure/chair{ dir = 1 }, -/turf/open/floor/mineral/titanium/yellow, +/turf/open/floor/plasteel/shuttle/yellow, /area/shuttle/escape) "ak" = ( /obj/structure/sign/radiation, @@ -89,13 +98,16 @@ /area/shuttle/escape) "aq" = ( /obj/machinery/status_display, -/turf/closed/wall/mineral/titanium, +/turf/closed/wall/shuttle{ + tag = "icon-swall3"; + icon_state = "swall3" + }, /area/shuttle/escape) "ar" = ( /obj/structure/chair{ dir = 8 }, -/turf/open/floor/mineral/titanium/yellow, +/turf/open/floor/plasteel/shuttle/yellow, /area/shuttle/escape) "as" = ( /turf/open/floor/plating/warnplate{ @@ -114,14 +126,19 @@ /obj/structure/chair{ dir = 4 }, -/turf/open/floor/mineral/titanium/yellow, +/turf/open/floor/plasteel/shuttle/yellow, /area/shuttle/escape) "aw" = ( -/turf/closed/wall/mineral/titanium/nodiagonal, +/turf/closed/wall/shuttle{ + icon_state = "swallc2"; + dir = 2 + }, /area/shuttle/escape) "ax" = ( -/turf/open/floor/mineral/titanium/yellow, -/turf/closed/wall/mineral/titanium/interior, +/turf/closed/wall/shuttle{ + icon_state = "swall_f9"; + dir = 2 + }, /area/shuttle/escape) "ay" = ( /turf/closed/wall/shuttle{ @@ -135,7 +152,7 @@ }, /area/shuttle/escape) "aA" = ( -/obj/machinery/door/airlock/titanium{ +/obj/machinery/door/airlock/shuttle{ name = "Emergency Shuttle Airlock" }, /turf/open/floor/plating, @@ -163,14 +180,14 @@ pixel_x = 4; pixel_y = -4 }, -/turf/open/floor/mineral/titanium/yellow, +/turf/open/floor/plasteel/shuttle/yellow, /area/shuttle/escape) "aE" = ( /obj/structure/reagent_dispensers/fueltank, -/turf/open/floor/mineral/titanium/yellow, +/turf/open/floor/plasteel/shuttle/yellow, /area/shuttle/escape) "aF" = ( -/obj/machinery/door/airlock/titanium{ +/obj/machinery/door/airlock/shuttle{ name = "Emergency Shuttle Airlock" }, /obj/docking_port/mobile/emergency{ @@ -192,7 +209,9 @@ /area/shuttle/escape) "aI" = ( /obj/structure/sign/radiation, -/turf/closed/wall/mineral/titanium/nodiagonal, +/turf/closed/wall/shuttle{ + icon_state = "swallc1" + }, /area/shuttle/escape) "aJ" = ( /obj/structure/sign/radiation, @@ -319,9 +338,11 @@ /obj/structure/shuttle/engine/propulsion, /turf/open/floor/plating/airless, /area/shuttle/escape) -"bf" = ( +"bh" = ( /obj/structure/grille, -/turf/open/floor/plating, +/turf/open/floor/plating/warnplate{ + dir = 4 + }, /area/shuttle/escape) "bg" = ( /obj/structure/grille, @@ -329,11 +350,9 @@ dir = 8 }, /area/shuttle/escape) -"bh" = ( +"bf" = ( /obj/structure/grille, -/turf/open/floor/plating/warnplate{ - dir = 4 - }, +/turf/open/floor/plating, /area/shuttle/escape) (1,1,1) = {" @@ -347,7 +366,7 @@ aw aA aC aF -aw +aG aa aa aa @@ -361,17 +380,17 @@ aa aa "} (2,1,1) = {" -af +ab af ad -ac +ak aq ad ax ai aD ai -aq +aH aa aa aN @@ -420,7 +439,7 @@ ar ar ar aI -aw +aG aa at aa @@ -515,8 +534,8 @@ av av av av -aI -aw +aJ +aK aa at aa @@ -553,17 +572,17 @@ bc be "} (10,1,1) = {" -af +ae af ad -ac +ak aq ad -ax +ay ai aE ai -aq +aH aa aa aQ @@ -583,11 +602,11 @@ aa aa aa aa -aw +az aA aC aA -aw +aK aa aa aa diff --git a/_maps/shuttles/emergency_wabbajack.dmm b/_maps/shuttles/emergency_wabbajack.dmm index e646fb1578..aa454b07d1 100644 --- a/_maps/shuttles/emergency_wabbajack.dmm +++ b/_maps/shuttles/emergency_wabbajack.dmm @@ -3,7 +3,7 @@ /turf/open/space, /area/space) "ab" = ( -/turf/closed/wall/mineral/titanium, +/turf/closed/wall/shuttle/smooth, /area/shuttle/escape) "ac" = ( /obj/structure/grille, @@ -30,11 +30,11 @@ /area/shuttle/escape) "ai" = ( /obj/structure/sign/biohazard, -/turf/closed/wall/mineral/titanium, +/turf/closed/wall/shuttle/smooth, /area/shuttle/escape) "aj" = ( /obj/structure/barricade/wooden, -/obj/machinery/door/airlock/titanium, +/obj/machinery/door/airlock/shuttle, /turf/open/floor/plasteel/cult, /area/shuttle/escape) "ak" = ( @@ -65,7 +65,7 @@ /turf/open/floor/plasteel/cult, /area/shuttle/escape) "aq" = ( -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "ar" = ( /obj/structure/table, @@ -75,7 +75,7 @@ pixel_y = 3 }, /obj/item/weapon/crowbar, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "as" = ( /obj/structure/grille, @@ -104,16 +104,16 @@ /area/shuttle/escape) "av" = ( /obj/structure/chair, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "aw" = ( /obj/structure/chair{ dir = 8 }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "ax" = ( -/obj/machinery/door/airlock/titanium{ +/obj/machinery/door/airlock/shuttle{ name = "Emergency Shuttle Airlock"; req_access_txt = "2" }, @@ -126,16 +126,16 @@ pixel_x = -2; pixel_y = 4 }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "az" = ( /obj/machinery/computer/emergency_shuttle, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "aA" = ( /obj/structure/table, /obj/item/weapon/coin/mythril, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "aB" = ( /obj/machinery/door/airlock/glass{ @@ -145,11 +145,11 @@ /turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "aC" = ( -/obj/machinery/door/airlock/titanium, -/turf/open/floor/mineral/titanium, +/obj/machinery/door/airlock/shuttle, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "aD" = ( -/obj/machinery/door/airlock/titanium{ +/obj/machinery/door/airlock/shuttle{ name = "Emergency Shuttle Airlock" }, /obj/docking_port/mobile/emergency{ @@ -163,7 +163,7 @@ /area/shuttle/escape) "aF" = ( /obj/machinery/door/window/eastleft, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "aG" = ( /obj/structure/extinguisher_cabinet{ @@ -176,17 +176,17 @@ pixel_y = 3 }, /obj/item/weapon/storage/box/beakers, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "aH" = ( /obj/machinery/status_display, -/turf/closed/wall/mineral/titanium, +/turf/closed/wall/shuttle/smooth, /area/shuttle/escape) "aI" = ( /obj/structure/chair{ dir = 4 }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "aJ" = ( /obj/structure/chair{ @@ -195,22 +195,22 @@ /obj/structure/window/reinforced{ dir = 4 }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "aK" = ( /obj/machinery/sleeper{ icon_state = "sleeper-open"; dir = 4 }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "aL" = ( /obj/structure/table/reinforced, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "aM" = ( /obj/machinery/chem_dispenser, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "aN" = ( /obj/structure/table, @@ -220,7 +220,7 @@ pixel_y = 1 }, /obj/item/weapon/wrench/medical, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "aO" = ( /turf/open/floor/plating, @@ -229,19 +229,19 @@ /obj/structure/chair/office/light{ dir = 8 }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "aQ" = ( /obj/machinery/chem_heater, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "aR" = ( /obj/machinery/chem_master, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "aS" = ( /obj/machinery/door/window/eastright, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "aT" = ( /obj/structure/table/glass, @@ -250,14 +250,14 @@ pixel_y = 2 }, /obj/item/weapon/reagent_containers/glass/bottle/charcoal, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/escape) "aU" = ( /obj/machinery/door/airlock/glass, /turf/open/floor/plasteel/shuttle, /area/shuttle/escape) "aV" = ( -/obj/machinery/door/airlock/titanium{ +/obj/machinery/door/airlock/shuttle{ name = "Emergency Shuttle Airlock" }, /turf/open/floor/plating, @@ -291,7 +291,7 @@ }, /area/shuttle/escape) "ba" = ( -/obj/structure/destructible/cult/forge{ +/obj/structure/cult/forge{ desc = "A engine used in powering the shuttle."; name = "magma engine" }, @@ -312,7 +312,7 @@ }, /area/shuttle/escape) "bd" = ( -/obj/structure/destructible/cult/forge{ +/obj/structure/cult/forge{ desc = "A engine used in powering the shuttle."; name = "magma engine" }, @@ -333,7 +333,7 @@ /turf/open/floor/plating/airless, /area/shuttle/escape) "bh" = ( -/turf/closed/wall/mineral/titanium/overspace, +/turf/closed/wall/shuttle/smooth/overspace, /area/shuttle/escape) (1,1,1) = {" @@ -341,7 +341,7 @@ aa aa aa aa -ab +bh ab ab ax @@ -357,12 +357,12 @@ ab aV ab ab -ab +bh aa "} (2,1,1) = {" aa -ab +bh ab ab ab @@ -382,10 +382,10 @@ aW ba be ab -ab +bh "} (3,1,1) = {" -ab +bh ab ag ae @@ -529,7 +529,7 @@ bf bg "} (9,1,1) = {" -ab +bh ab ah ae @@ -554,7 +554,7 @@ bg "} (10,1,1) = {" aa -ab +bh ab ab ab @@ -574,14 +574,14 @@ aZ bd be ab -ab +bh "} (11,1,1) = {" aa aa aa aa -ab +bh as ab as @@ -597,6 +597,6 @@ ab as ab ab -ab +bh aa "} diff --git a/_maps/shuttles/ferry_base.dmm b/_maps/shuttles/ferry_base.dmm index d6463d278c..efe2532f80 100644 --- a/_maps/shuttles/ferry_base.dmm +++ b/_maps/shuttles/ferry_base.dmm @@ -7,10 +7,16 @@ icon_state = "propulsion"; dir = 4 }, -/turf/closed/wall/mineral/titanium, +/turf/closed/wall/shuttle{ + icon_state = "swall_s6"; + dir = 2 + }, /area/shuttle/transport) "c" = ( -/turf/closed/wall/mineral/titanium, +/turf/closed/wall/shuttle{ + icon_state = "swall12"; + dir = 2 + }, /area/shuttle/transport) "d" = ( /obj/structure/window/shuttle, @@ -23,35 +29,40 @@ /turf/open/floor/plating, /area/shuttle/transport) "f" = ( -/turf/closed/wall/mineral/titanium/overspace, +/turf/closed/wall/shuttle{ + icon_state = "swall_s10"; + dir = 2 + }, /area/shuttle/transport) "g" = ( -/turf/open/floor/mineral/titanium/blue, -/turf/closed/wall/mineral/titanium/interior, +/turf/open/floor/plasteel/shuttle, +/turf/closed/wall/shuttle/interior{ + icon_state = "swall_f9" + }, /area/shuttle/transport) "h" = ( /obj/structure/chair{ dir = 4 }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/transport) "i" = ( /obj/machinery/computer/shuttle/ferry/request, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/transport) "j" = ( /obj/structure/chair, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/transport) "k" = ( -/obj/machinery/door/airlock/titanium, -/turf/open/floor/mineral/titanium/blue, +/obj/machinery/door/airlock/shuttle, +/turf/open/floor/plasteel/shuttle, /area/shuttle/transport) "l" = ( -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/transport) "m" = ( -/obj/machinery/door/airlock/titanium, +/obj/machinery/door/airlock/shuttle, /obj/docking_port/mobile{ dir = 8; dwidth = 2; @@ -59,11 +70,11 @@ id = "ferry"; name = "ferry shuttle"; roundstart_move = "ferry_away"; - port_angle = 180; + travelDir = 180; width = 5; timid = 1 }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/transport) "n" = ( /obj/structure/shuttle/engine/propulsion{ @@ -83,13 +94,13 @@ /area/shuttle/transport) "p" = ( /obj/structure/closet/crate, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/transport) "q" = ( /obj/structure/chair{ dir = 1 }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/transport) "r" = ( /turf/closed/wall/shuttle{ @@ -102,15 +113,15 @@ a b k -b +n a "} (2,1,1) = {" b g l -g -b +o +n "} (3,1,1) = {" c @@ -176,9 +187,9 @@ q c "} (12,1,1) = {" -c +f d m d -c +r "} diff --git a/_maps/shuttles/ferry_lighthouse.dmm b/_maps/shuttles/ferry_lighthouse.dmm index 47a989477c..bce3237400 100644 --- a/_maps/shuttles/ferry_lighthouse.dmm +++ b/_maps/shuttles/ferry_lighthouse.dmm @@ -17,7 +17,7 @@ /turf/open/floor/plating/airless, /area/shuttle/transport) "ad" = ( -/turf/closed/wall/mineral/titanium, +/turf/closed/wall/shuttle/smooth, /area/shuttle/transport) "ae" = ( /turf/open/space, @@ -34,18 +34,18 @@ /area/shuttle/transport) "ai" = ( /obj/machinery/vending/liberationstation, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/transport) "aj" = ( /obj/machinery/door/airlock/vault, /turf/open/floor/plating/airless, /area/shuttle/transport) "ak" = ( -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/transport) "al" = ( /obj/machinery/computer/shuttle/ferry/request, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/transport) "am" = ( /obj/structure/grille{ @@ -59,13 +59,13 @@ dir = 8 }, /obj/machinery/vending/autodrobe, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/transport) "ao" = ( /obj/structure/mirror/magic/badmin{ pixel_x = 30 }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/transport) "ap" = ( /turf/closed/wall, @@ -75,14 +75,14 @@ dir = 8 }, /obj/machinery/vending/clothing, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/transport) "ar" = ( /obj/structure/chair, /turf/open/floor/wood, /area/shuttle/transport) "as" = ( -/obj/structure/emergency_shield, +/obj/machinery/shield, /turf/open/space, /area/shuttle/transport) "at" = ( @@ -146,46 +146,50 @@ /area/shuttle/transport) "aF" = ( /obj/machinery/vending/sovietsoda, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/transport) "aG" = ( /obj/machinery/vending/snack, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/transport) "aH" = ( /obj/machinery/newscaster{ pixel_y = 30 }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/transport) "aI" = ( /obj/structure/bed, /obj/item/weapon/bedsheet/wiz, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/transport) "aJ" = ( /obj/structure/chair, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/transport) "aK" = ( /obj/structure/table/wood, /obj/item/device/flashlight/lamp/green, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/transport) "aL" = ( /turf/closed/wall/rust, /area/shuttle/transport) "aM" = ( -/turf/closed/wall/mineral/titanium/nodiagonal, +/obj/structure/table/wood, +/obj/structure/window/reinforced{ + dir = 4 + }, +/turf/open/floor/wood, /area/shuttle/transport) "aN" = ( /obj/machinery/power/grounding_rod{ anchored = 1 }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/transport) "aO" = ( -/obj/machinery/door/airlock/titanium, +/obj/machinery/door/airlock/shuttle, /obj/docking_port/mobile{ dir = 8; dwidth = 8; @@ -194,14 +198,14 @@ name = "The Lighthouse"; roundstart_move = "ferry_away"; timid = 1; - port_angle = 180; + travelDir = 180; width = 16 }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/transport) "aP" = ( /obj/machinery/vending/magivend, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/transport) "aQ" = ( /obj/structure/grille, @@ -222,26 +226,26 @@ "aT" = ( /obj/structure/bed, /obj/item/weapon/bedsheet/centcom, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/transport) "aU" = ( /obj/structure/bed, /obj/item/weapon/bedsheet/rainbow, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/transport) "aV" = ( /obj/structure/closet/crate, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/transport) "aW" = ( /obj/structure/chair{ dir = 1 }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/transport) "aX" = ( /obj/structure/window/fulltile, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/transport) "aY" = ( /obj/structure/grille, @@ -249,7 +253,10 @@ /turf/closed/wall/shuttle/smooth, /area/shuttle/transport) "aZ" = ( -/turf/closed/wall/mineral/titanium/overspace, +/turf/closed/wall/shuttle{ + icon_state = "swall_s9"; + dir = 2 + }, /area/shuttle/transport) "ba" = ( /obj/machinery/conveyor{ @@ -393,7 +400,7 @@ bj "} (5,1,1) = {" ad -aM +ad ai ak ao @@ -412,7 +419,7 @@ bj (6,1,1) = {" ae ad -aM +ad al ap ap @@ -424,7 +431,7 @@ ap aL be bh -aM +ad ad "} (7,1,1) = {" @@ -432,7 +439,7 @@ ae ae ad ad -aM +ad ar au au @@ -441,7 +448,7 @@ au au aL bf -aM +ad ad ae "} @@ -476,7 +483,7 @@ aC aS aC bc -aM +ad ad ae ae @@ -511,7 +518,7 @@ aD aD aD aD -aM +ad ad ae ae @@ -546,7 +553,7 @@ ap aE aN aE -aM +ad ad ae ae @@ -632,7 +639,7 @@ ae ae ae ae -ad +ax aG aE aU @@ -650,11 +657,11 @@ ae ae ae ae -ad +ax aH aE aV -ad +ax ae ae ae @@ -686,11 +693,11 @@ ae ae ae ae -ad +ax ak aE aW -ad +ax ae ae ae @@ -704,11 +711,11 @@ ae ae ae ae -ad +ax aJ aE aW -ad +ax ae ae ae @@ -722,11 +729,11 @@ ae ae ae ae -ad +ax aJ aE aW -ad +ax ae ae ae @@ -758,11 +765,11 @@ ae ae ae ae -ad +ax aJ aE aW -ad +ax ae ae ae @@ -776,11 +783,11 @@ ae ae ae ae -ad +ax aK aE aW -ad +ax ae ae ae @@ -794,11 +801,11 @@ ae ae ae ae -ad +aA ay aO ay -ad +aZ ae ae ae diff --git a/_maps/shuttles/ferry_meat.dmm b/_maps/shuttles/ferry_meat.dmm index 071b5b4cf0..a818725389 100644 --- a/_maps/shuttles/ferry_meat.dmm +++ b/_maps/shuttles/ferry_meat.dmm @@ -7,17 +7,28 @@ icon_state = "propulsion"; dir = 4 }, -/turf/closed/wall/mineral/titanium/overspace, +/turf/closed/wall/shuttle{ + icon_state = "swall_s6"; + dir = 2 + }, /area/shuttle/transport) "c" = ( -/turf/closed/wall/mineral/titanium, +/turf/closed/wall/shuttle{ + icon_state = "swall12"; + dir = 2 + }, /area/shuttle/transport) "d" = ( -/turf/closed/wall/mineral/titanium/overspace, +/turf/closed/wall/shuttle{ + icon_state = "swall_s10"; + dir = 2 + }, /area/shuttle/transport) "e" = ( /turf/open/floor/plasteel/freezer, -/turf/closed/wall/mineral/titanium/interior, +/turf/closed/wall/shuttle/interior{ + icon_state = "swall_f9" + }, /area/shuttle/transport) "f" = ( /obj/structure/chair{ @@ -104,11 +115,11 @@ /turf/open/floor/plating, /area/shuttle/transport) "p" = ( -/obj/machinery/door/airlock/titanium, +/obj/machinery/door/airlock/shuttle, /turf/open/floor/plasteel/freezer, /area/shuttle/transport) "q" = ( -/obj/machinery/door/airlock/titanium, +/obj/machinery/door/airlock/shuttle, /obj/docking_port/mobile{ dir = 8; dwidth = 2; @@ -116,7 +127,7 @@ id = "ferry"; name = "ferry shuttle"; roundstart_move = "ferry_away"; - port_angle = 180; + travelDir = 180; width = 5; timid = 1 }, @@ -170,15 +181,15 @@ a b p -b +r a "} (2,1,1) = {" b e i -e -b +s +r "} (3,1,1) = {" c @@ -244,9 +255,9 @@ w c "} (12,1,1) = {" -c +d o q o -c +x "} diff --git a/_maps/shuttles/whiteship_box.dmm b/_maps/shuttles/whiteship_box.dmm index 8806c72c3e..34f09e6e87 100644 --- a/_maps/shuttles/whiteship_box.dmm +++ b/_maps/shuttles/whiteship_box.dmm @@ -3,7 +3,10 @@ /turf/open/space, /area/space) "ab" = ( -/turf/closed/wall/mineral/titanium/overspace, +/turf/closed/wall/shuttle{ + icon_state = "swall_s6"; + dir = 2 + }, /area/shuttle/abandoned) "ac" = ( /turf/closed/wall/shuttle{ @@ -12,7 +15,7 @@ }, /area/shuttle/abandoned) "ad" = ( -/obj/machinery/door/airlock/titanium, +/obj/machinery/door/airlock/shuttle, /obj/docking_port/mobile{ dheight = 0; dir = 2; @@ -22,11 +25,11 @@ launch_status = 0; name = "NT Medical Ship"; roundstart_move = "whiteship_away"; - port_angle = 180; + travelDir = 180; width = 35; timid = 1 }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "ae" = ( /turf/closed/wall/shuttle{ @@ -35,7 +38,7 @@ }, /area/shuttle/abandoned) "af" = ( -/obj/machinery/door/airlock/titanium, +/obj/machinery/door/airlock/shuttle, /turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "ag" = ( @@ -58,17 +61,17 @@ }, /area/shuttle/abandoned) "aj" = ( -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "ak" = ( /obj/structure/table, /obj/item/device/radio/off, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "al" = ( /obj/structure/table, /obj/item/weapon/screwdriver, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "am" = ( /turf/closed/wall/shuttle{ @@ -94,8 +97,9 @@ /turf/open/floor/plating/airless, /area/shuttle/abandoned) "ap" = ( -/turf/open/floor/plating, -/turf/closed/wall/mineral/titanium/interior, +/turf/closed/wall/shuttle{ + icon_state = "swall_f15" + }, /area/shuttle/abandoned) "aq" = ( /turf/closed/wall/shuttle{ @@ -107,7 +111,7 @@ /obj/machinery/computer/pod{ id = "oldship_gun" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "as" = ( /turf/closed/wall/shuttle{ @@ -127,7 +131,7 @@ /obj/structure/rack, /obj/item/clothing/suit/space/hardsuit/medical, /obj/item/clothing/mask/breath, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "aw" = ( /obj/machinery/door/airlock/glass, @@ -167,10 +171,12 @@ /turf/open/floor/plating/airless, /area/shuttle/abandoned) "aC" = ( -/turf/closed/wall/mineral/titanium, +/turf/closed/wall/shuttle{ + icon_state = "swall_f17" + }, /area/shuttle/abandoned) "aD" = ( -/obj/machinery/door/airlock/titanium, +/obj/machinery/door/airlock/shuttle, /turf/open/floor/plating, /area/shuttle/abandoned) "aE" = ( @@ -178,7 +184,7 @@ charge = 100; maxcharge = 15000 }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "aF" = ( /turf/closed/wall/shuttle{ @@ -192,7 +198,7 @@ /obj/item/weapon/tank/internals/emergency_oxygen, /obj/item/weapon/tank/internals/emergency_oxygen, /obj/item/weapon/storage/toolbox/mechanical, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "aH" = ( /obj/structure/frame/computer{ @@ -209,17 +215,17 @@ /obj/structure/chair{ dir = 1 }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "aK" = ( /obj/item/weapon/shard{ icon_state = "medium" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "aL" = ( /obj/structure/grille, -/obj/structure/window/shuttle, +/obj/structure/window/reinforced/fulltile, /turf/open/floor/plating, /area/shuttle/abandoned) "aM" = ( @@ -229,7 +235,7 @@ /area/shuttle/abandoned) "aN" = ( /obj/machinery/door/window, -/turf/open/floor/mineral/titanium/purple, +/turf/open/floor/plasteel/shuttle/purple, /area/shuttle/abandoned) "aO" = ( /obj/structure/bed, @@ -238,16 +244,16 @@ /obj/structure/window/reinforced{ dir = 4 }, -/turf/open/floor/mineral/titanium/purple, +/turf/open/floor/plasteel/shuttle/purple, /area/shuttle/abandoned) "aP" = ( /obj/structure/table, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "aQ" = ( /obj/structure/table, /obj/item/weapon/gun/energy/laser/retro, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "aR" = ( /obj/machinery/door/airlock/glass, @@ -258,28 +264,32 @@ dir = 4 }, /obj/effect/decal/remains/human, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "aT" = ( /obj/machinery/computer/shuttle/white_ship, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "aU" = ( /obj/machinery/portable_atmospherics/canister/oxygen, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "aV" = ( /obj/structure/table, /obj/item/weapon/tank/internals/oxygen, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "aW" = ( -/obj/machinery/door/airlock/titanium, -/turf/open/floor/mineral/titanium, +/turf/closed/wall/shuttle{ + icon_state = "swall_s5"; + dir = 2 + }, /area/shuttle/abandoned) "aX" = ( -/turf/open/floor/mineral/titanium, -/turf/closed/wall/mineral/titanium/interior, +/turf/closed/wall/shuttle{ + icon_state = "swall_s9"; + dir = 2 + }, /area/shuttle/abandoned) "aY" = ( /obj/structure/bed, @@ -290,38 +300,38 @@ /obj/structure/window/reinforced{ dir = 8 }, -/turf/open/floor/mineral/titanium/purple, +/turf/open/floor/plasteel/shuttle/purple, /area/shuttle/abandoned) "aZ" = ( /obj/machinery/door/window/northright, /obj/effect/decal/remains/human, -/turf/open/floor/mineral/titanium/purple, +/turf/open/floor/plasteel/shuttle/purple, /area/shuttle/abandoned) "ba" = ( /obj/machinery/portable_atmospherics/scrubber, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "bb" = ( -/obj/structure/frame/computer{ - anchored = 1 +/turf/closed/wall/shuttle{ + icon_state = "swall_f18" }, -/turf/open/floor/mineral/titanium, /area/shuttle/abandoned) "bc" = ( /obj/item/device/multitool, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "bd" = ( /obj/structure/chair, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "be" = ( -/obj/machinery/door/airlock/glass, -/turf/open/floor/mineral/titanium, +/turf/closed/wall/shuttle{ + icon_state = "swall_f16" + }, /area/shuttle/abandoned) "bf" = ( /obj/item/weapon/scalpel, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "bg" = ( /obj/structure/table, @@ -329,7 +339,7 @@ pixel_x = 6; pixel_y = -5 }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "bh" = ( /obj/machinery/sleeper{ @@ -337,7 +347,7 @@ dir = 8 }, /obj/effect/decal/remains/human, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) (1,1,1) = {" @@ -349,11 +359,11 @@ aa aa aa aa -aC -aC +ab +aq +af +aq aW -aC -aC aa aa aa @@ -373,11 +383,11 @@ aa aa aa aa -aC -aX +aA +au aj -aX -aC +aF +ah aa aa aa @@ -397,11 +407,11 @@ aa aa aa aa -aC +ae aj aj aj -aC +ae aa aa aa @@ -421,11 +431,11 @@ aa aa aa aa -aC +ae aj aj aj -aC +ae aa aa aa @@ -445,11 +455,11 @@ aa aa aa aa -aC +ae aj aj aj -aC +ae aa aa aa @@ -469,11 +479,11 @@ aa aa aa aa -aC +ae aj aj aj -aC +ae aa aa aa @@ -493,11 +503,11 @@ aa aa aa aa -aC +ae aj aj aj -aC +ae aa aa aa @@ -517,11 +527,11 @@ aa aa aa aa -aC +ae aj aj aj -aC +ae aa aa aa @@ -541,11 +551,11 @@ aa aa aa aa -aC +ae aj aj aU -aC +ae aa aa aa @@ -565,11 +575,11 @@ aa aa aa aa -aC -aX +aA +aI aj -aX -aC +az +ah aa aa aa @@ -589,11 +599,11 @@ aa aa aa aa -aC -aC -aW -aC -aC +ac +aq +af +aq +aX aa aa aa @@ -614,9 +624,9 @@ aa aa aa aa -aC +ae aj -aC +ae aa aa aa @@ -637,11 +647,11 @@ aa aa aa aa -aC -aC +ab +aq +af +aq aW -aC -aC aa aa aa @@ -660,13 +670,13 @@ aa aa aa aa -aC -aC -aX +ab +aq +au aj -aX -aC -aC +aF +aq +aW aa aa aa @@ -677,85 +687,85 @@ aa aa "} (15,1,1) = {" -aC +ab ag an an an aB aa -aC -aX +aA +au aj aj aj -aX -aC +aF +ah aa ag an an an aB -aC +aW aa "} (16,1,1) = {" -aC -aC +ac +ah ao ao ao -aC -aC -aC +ae +ab +ah aj aj aj aj aj -aC -aC -aC +aA +aW +ae ao ao ao -aC -aC +aA +aX aa "} (17,1,1) = {" aa -aC +ac ap at at -ap aC +aq +au +aj +aj +aj +aj +aj +aF +aq +bb +at +at +be aX -aj -aj -aj -aj -aj -aX -aC -ap -at -at -ap -aC aa aa "} (18,1,1) = {" aa aa -aC +ac ap at at -aC +ae aj aj aj @@ -763,11 +773,11 @@ aj aj aj ba -aC +ae at at -ap -aC +be +aX aa aa aa @@ -776,21 +786,21 @@ aa aa aa aa -aC -aC +ac +as aD -aC -aC -aC -aL -be -aL -aC -aC -aC +ai +am +am +aM +aR +aM +am +am +ai aD -aC -aC +as +aX aa aa aa @@ -800,8 +810,8 @@ aa aa aa aa -aC -aC +ab +ah aj aj aj @@ -813,8 +823,8 @@ aj aj aj aj -aC -aC +aA +aW aa aa aa @@ -823,9 +833,9 @@ aa (21,1,1) = {" aa aa -aC -aC -aX +ab +aq +au aE aj aj @@ -837,18 +847,18 @@ aj aj aj aj -aC -aC -aC +aA +aq +aW aa aa aa "} (22,1,1) = {" aa -aC -aC -aX +ab +aq +au aj aj aj @@ -861,21 +871,21 @@ am aI aj aj -aC -aC -aC -aC +aA +ai +aq +aW aa aa "} (23,1,1) = {" -aC -aC -aC -aC -aC -aC -aX +ab +ai +ai +am +am +as +aI aj ae aN @@ -885,10 +895,10 @@ aj af aj aj -aW +af aj -aX -aC +aF +ah aa aa "} @@ -898,8 +908,8 @@ aj aj av av -aX -aC +aF +ah aj ae aO @@ -909,21 +919,21 @@ aY ae aj aj -aC +ae aj bg -aC -aC +aA +aW aa "} (25,1,1) = {" -aC +ae aj aj aj aj aG -aC +ae aj af aj @@ -933,21 +943,21 @@ aZ ae aj aj -aC +ae aj aj -aX -aC +aF +ah aa "} (26,1,1) = {" -aC +ae ak aj aj aj aj -aC +ae aj aF am @@ -961,17 +971,17 @@ aL bf aj aj -aC +ae aa "} (27,1,1) = {" -aC +ae al aj aj aj aj -aW +af aj aj aj @@ -985,18 +995,18 @@ aL aj aj bh -aC +ae aa "} (28,1,1) = {" -aC +ae aj aj aj aj aj -aC -aX +aA +aI aj aj aj @@ -1009,41 +1019,41 @@ aL aj aj aj -aC +ae aa "} (29,1,1) = {" -aC +ae aj aj aj aj -aX -aC -aC -aC +az +aq +ai +am aL aR aL -aC -aC -aC -aC -aC +am +am +am +am +ah aj aj aj -aC +ae aa "} (30,1,1) = {" -aC +ae aj aj aj -aX -aC -aX +az +aq +au aj aj aj @@ -1053,20 +1063,20 @@ aj aP aP aP -aC +ae aj aj +az aX -aC aa "} (31,1,1) = {" -aW +af aj ar aj -aC -aX +aq +au aj aj aj @@ -1077,20 +1087,20 @@ aj aj aj aj -aX -aX -bb -aC +aF +aI +aH +ae aa aa "} (32,1,1) = {" -aC -aC -aC +ac +am +as aw -aC -bb +ae +aH aJ aj aj @@ -1102,19 +1112,19 @@ aj aj bd aH -aC -aC -aC +aA +as +aX aa aa "} (33,1,1) = {" aa aa -aC +ae ax -aC -bb +ah +aH aJ aj aj @@ -1125,9 +1135,9 @@ aj aj aj aj +az +aq aX -aC -aC aa aa aa @@ -1135,10 +1145,10 @@ aa (34,1,1) = {" aa aa -aC +ac ay -aC -aX +aA +aI aK aj aj @@ -1148,9 +1158,9 @@ aP aj aj aj +az +aq aX -aC -aC aa aa aa @@ -1161,9 +1171,9 @@ aa aa aa aa -aC -aC -aC +ac +ai +am aL aL aL @@ -1171,9 +1181,9 @@ aL aL aL aL -aC -aC -aC +am +ai +aX aa aa aa diff --git a/_maps/shuttles/whiteship_meta.dmm b/_maps/shuttles/whiteship_meta.dmm index 0b3256aef2..b5344f4198 100644 --- a/_maps/shuttles/whiteship_meta.dmm +++ b/_maps/shuttles/whiteship_meta.dmm @@ -3,10 +3,16 @@ /turf/open/space, /area/space) "ab" = ( -/turf/closed/wall/mineral/titanium/overspace, +/turf/closed/wall/shuttle{ + icon_state = "swall_s6"; + dir = 2 + }, /area/shuttle/abandoned) "ac" = ( -/turf/closed/wall/mineral/titanium, +/turf/closed/wall/shuttle{ + icon_state = "swall14"; + dir = 2 + }, /area/shuttle/abandoned) "ad" = ( /turf/closed/wall/shuttle{ @@ -34,30 +40,29 @@ id = "whiteship"; launch_status = 0; name = "NT Recovery White-Ship"; - port_angle = 180; - preferred_direction = 1; roundstart_move = "whiteship_away"; - timid = 1; - width = 27 + travelDir = 180; + width = 27; + timid = 1 }, -/obj/machinery/door/airlock/titanium{ +/obj/machinery/door/airlock/shuttle{ name = "recovery shuttle external airlock" }, /obj/effect/decal/cleanable/dirt{ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/abandoned) "ah" = ( -/obj/machinery/door/airlock/titanium{ +/obj/machinery/door/airlock/shuttle{ name = "recovery shuttle external airlock" }, /obj/effect/decal/cleanable/dirt{ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/abandoned) "ai" = ( /turf/closed/wall/shuttle{ @@ -101,7 +106,7 @@ /obj/effect/decal/cleanable/greenglow{ desc = "Looks like something's sprung a leak" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "ao" = ( /obj/structure/mirror{ @@ -122,7 +127,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "ap" = ( /turf/closed/wall/shuttle{ @@ -144,7 +149,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "ar" = ( /obj/structure/table, @@ -155,7 +160,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "as" = ( /obj/structure/table, @@ -172,7 +177,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "at" = ( /obj/machinery/suit_storage_unit/standard_unit, @@ -180,7 +185,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "au" = ( /obj/structure/tank_dispenser/oxygen{ @@ -192,7 +197,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "av" = ( /turf/closed/wall/shuttle{ @@ -207,7 +212,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/abandoned) "ax" = ( /obj/effect/decal/cleanable/dirt{ @@ -218,7 +223,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/abandoned) "ay" = ( /obj/structure/closet/crate/medical{ @@ -296,7 +301,7 @@ /obj/effect/spawner/lootdrop/maintenance, /obj/item/weapon/extinguisher, /obj/item/weapon/extinguisher, -/obj/effect/decal/cleanable/cobweb/cobweb2, +/obj/effect/decal/cleanable/cobweb2, /obj/effect/decal/cleanable/dirt{ desc = "A thin layer of dust coating the floor."; name = "dust" @@ -333,14 +338,14 @@ }, /area/shuttle/abandoned) "aG" = ( -/obj/machinery/door/airlock/titanium{ +/obj/machinery/door/airlock/shuttle{ name = "bathroom" }, /obj/effect/decal/cleanable/dirt{ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/abandoned) "aH" = ( /obj/effect/decal/cleanable/blood/old, @@ -356,7 +361,7 @@ name = "remains" }, /obj/item/weapon/gun/energy/laser/retro, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/abandoned) "aI" = ( /obj/structure/bed, @@ -367,7 +372,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "aJ" = ( /obj/structure/table, @@ -381,7 +386,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "aK" = ( /obj/effect/decal/cleanable/dirt{ @@ -389,24 +394,24 @@ name = "dust" }, /obj/effect/decal/cleanable/oil, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/abandoned) "aL" = ( /obj/effect/decal/cleanable/dirt{ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/abandoned) "aM" = ( -/obj/machinery/door/airlock/titanium{ +/obj/machinery/door/airlock/shuttle{ name = "E.V.A. equipment" }, /obj/effect/decal/cleanable/dirt{ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/abandoned) "aN" = ( /obj/effect/decal/cleanable/blood/old, @@ -421,10 +426,10 @@ icon_state = "remains"; name = "remains" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/abandoned) "aO" = ( -/obj/machinery/door/airlock/titanium{ +/obj/machinery/door/airlock/shuttle{ name = "cargo bay" }, /turf/open/floor/plasteel/delivery{ @@ -481,7 +486,7 @@ name = "remains" }, /obj/effect/decal/cleanable/blood/gibs/old, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "aT" = ( /obj/effect/decal/cleanable/blood/old, @@ -493,7 +498,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/abandoned) "aU" = ( /obj/effect/decal/cleanable/blood/old, @@ -506,7 +511,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/abandoned) "aV" = ( /obj/structure/bed, @@ -515,7 +520,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "aW" = ( /obj/structure/table, @@ -532,7 +537,7 @@ name = "dust" }, /obj/item/weapon/wrench, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "aX" = ( /obj/structure/rack{ @@ -557,7 +562,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "aY" = ( /obj/machinery/portable_atmospherics/canister/oxygen, @@ -565,7 +570,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "aZ" = ( /turf/closed/wall/shuttle{ @@ -573,6 +578,8 @@ }, /area/shuttle/abandoned) "ba" = ( +/obj/structure/frame/machine, +/obj/item/weapon/circuitboard/machine/cyborgrecharger, /obj/effect/decal/cleanable/oil, /obj/effect/decal/cleanable/dirt{ desc = "A thin layer of dust coating the floor."; @@ -597,7 +604,7 @@ /turf/open/floor/plasteel/bot, /area/shuttle/abandoned) "bd" = ( -/obj/machinery/door/airlock/titanium{ +/obj/machinery/door/airlock/shuttle{ name = "bathroom" }, /obj/effect/decal/cleanable/blood/old, @@ -605,7 +612,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/abandoned) "be" = ( /turf/closed/wall/shuttle{ @@ -614,7 +621,7 @@ }, /area/shuttle/abandoned) "bf" = ( -/obj/machinery/door/airlock/titanium{ +/obj/machinery/door/airlock/shuttle{ name = "dormitory" }, /obj/effect/decal/cleanable/blood/old, @@ -622,7 +629,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/abandoned) "bg" = ( /obj/machinery/vending/boozeomat{ @@ -649,7 +656,7 @@ }, /area/shuttle/abandoned) "bj" = ( -/obj/machinery/door/airlock/titanium{ +/obj/machinery/door/airlock/shuttle{ name = "recovery shuttle interior airlock" }, /obj/effect/decal/cleanable/dirt{ @@ -660,7 +667,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/abandoned) "bk" = ( /turf/closed/wall/shuttle{ @@ -669,7 +676,7 @@ }, /area/shuttle/abandoned) "bl" = ( -/obj/machinery/door/airlock/titanium{ +/obj/machinery/door/airlock/shuttle{ name = "cargo bay" }, /obj/effect/decal/cleanable/dirt{ @@ -684,7 +691,7 @@ /obj/machinery/vending/cigarette{ use_power = 0 }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "bn" = ( /obj/effect/decal/cleanable/blood/old, @@ -693,7 +700,7 @@ name = "dust" }, /obj/effect/decal/cleanable/blood/gibs/limb, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/abandoned) "bo" = ( /obj/effect/decal/cleanable/blood/gibs/old, @@ -701,7 +708,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/abandoned) "bp" = ( /obj/effect/decal/cleanable/blood/old, @@ -709,23 +716,24 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/abandoned) "bq" = ( /obj/effect/decal/cleanable/dirt{ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/obj/effect/decal/cleanable/cobweb/cobweb2, -/turf/open/floor/mineral/titanium/blue, +/obj/effect/decal/cleanable/cobweb2, +/turf/open/floor/plasteel/shuttle, /area/shuttle/abandoned) "br" = ( +/obj/structure/frame/computer, /obj/effect/decal/cleanable/cobweb, /obj/effect/decal/cleanable/dirt{ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "bs" = ( /obj/structure/table, @@ -734,7 +742,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "bt" = ( /obj/structure/table, @@ -743,7 +751,7 @@ name = "dust" }, /obj/item/weapon/storage/photo_album, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "bu" = ( /obj/structure/table, @@ -755,7 +763,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "bv" = ( /obj/structure/reagent_dispensers/fueltank, @@ -766,21 +774,21 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/abandoned) "bw" = ( /obj/machinery/vending/coffee{ pixel_x = -2; use_power = 0 }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "bx" = ( /obj/effect/decal/cleanable/dirt{ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "by" = ( /obj/structure/chair, @@ -788,7 +796,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "bz" = ( /obj/effect/decal/cleanable/dirt{ @@ -799,7 +807,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "bA" = ( /obj/effect/decal/cleanable/dirt{ @@ -810,7 +818,7 @@ dir = 1; pixel_y = 0 }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "bB" = ( /obj/effect/decal/cleanable/dirt{ @@ -825,7 +833,7 @@ dir = 1; pixel_y = 0 }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "bC" = ( /obj/structure/chair/office/light{ @@ -835,7 +843,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "bD" = ( /obj/structure/table, @@ -849,17 +857,17 @@ pixel_x = -1; pixel_y = 2 }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "bE" = ( -/obj/machinery/door/airlock/titanium{ +/obj/machinery/door/airlock/shuttle{ name = "recovery shuttle interior airlock" }, /obj/effect/decal/cleanable/dirt{ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/abandoned) "bF" = ( /obj/structure/chair{ @@ -869,7 +877,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "bG" = ( /obj/structure/table, @@ -878,7 +886,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "bH" = ( /obj/structure/table, @@ -894,7 +902,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "bI" = ( /obj/structure/table, @@ -903,7 +911,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "bJ" = ( /obj/structure/chair{ @@ -913,17 +921,17 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "bK" = ( -/obj/machinery/door/airlock/titanium{ +/obj/machinery/door/airlock/shuttle{ name = "living quarters" }, /obj/effect/decal/cleanable/dirt{ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/abandoned) "bL" = ( /obj/effect/decal/cleanable/dirt{ @@ -940,7 +948,7 @@ }, /obj/item/weapon/reagent_containers/spray/cleaner, /obj/structure/table, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "bM" = ( /obj/item/clothing/suit/bio_suit, @@ -956,7 +964,7 @@ /obj/item/clothing/mask/breath, /obj/item/clothing/mask/breath, /obj/structure/table, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "bN" = ( /obj/effect/decal/cleanable/blood/gibs/old, @@ -971,7 +979,7 @@ icon_state = "remains"; name = "remains" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "bO" = ( /obj/effect/decal/cleanable/blood/old, @@ -980,7 +988,7 @@ name = "dust" }, /obj/effect/decal/cleanable/blood/gibs/limb, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "bP" = ( /obj/effect/decal/cleanable/dirt{ @@ -994,7 +1002,7 @@ /obj/structure/table, /obj/item/clothing/head/helmet/swat/nanotrasen, /obj/item/clothing/head/helmet/swat/nanotrasen, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "bQ" = ( /obj/item/weapon/storage/toolbox/emergency{ @@ -1011,17 +1019,17 @@ name = "dust" }, /obj/structure/table, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "bR" = ( -/obj/machinery/door/airlock/titanium{ +/obj/machinery/door/airlock/shuttle{ name = "bridge" }, /obj/effect/decal/cleanable/dirt{ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/abandoned) "bS" = ( /obj/effect/decal/cleanable/blood/old, @@ -1032,7 +1040,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "bT" = ( /obj/effect/decal/cleanable/dirt{ @@ -1040,7 +1048,7 @@ name = "dust" }, /obj/machinery/computer/shuttle/white_ship, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "bU" = ( /obj/structure/reagent_dispensers/watertank, @@ -1048,14 +1056,14 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/abandoned) "bV" = ( /obj/machinery/vending/cola{ pixel_x = -1; use_power = 0 }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "bW" = ( /obj/structure/chair{ @@ -1065,7 +1073,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "bX" = ( /obj/effect/decal/cleanable/dirt{ @@ -1076,7 +1084,7 @@ dir = 2; pixel_y = 3 }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "bY" = ( /obj/effect/decal/cleanable/dirt{ @@ -1091,7 +1099,7 @@ dir = 2; pixel_y = 3 }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "bZ" = ( /obj/structure/chair/office/light, @@ -1099,7 +1107,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "ca" = ( /obj/effect/decal/cleanable/blood/old, @@ -1118,7 +1126,7 @@ icon_state = "remains"; name = "remains" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/abandoned) "cb" = ( /obj/item/weapon/phone{ @@ -1134,7 +1142,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "cc" = ( /turf/closed/wall/shuttle{ @@ -1147,7 +1155,7 @@ pixel_x = -1; use_power = 0 }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "ce" = ( /obj/structure/sign/science{ @@ -1157,7 +1165,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/abandoned) "cf" = ( /obj/structure/frame/computer, @@ -1165,7 +1173,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "cg" = ( /obj/structure/table, @@ -1174,7 +1182,7 @@ name = "dust" }, /obj/item/device/megaphone, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "ch" = ( /obj/structure/table, @@ -1183,7 +1191,7 @@ name = "dust" }, /obj/item/device/mass_spectrometer, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "ci" = ( /obj/structure/table, @@ -1194,48 +1202,54 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "cj" = ( /obj/structure/sign/botany, -/turf/closed/wall/mineral/titanium, +/turf/closed/wall/shuttle{ + icon_state = "swall8"; + dir = 2 + }, /area/shuttle/abandoned) "ck" = ( -/obj/machinery/door/airlock/titanium{ +/obj/machinery/door/airlock/shuttle{ name = "hydroponics" }, /obj/effect/decal/cleanable/dirt{ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/abandoned) "cl" = ( -/obj/machinery/door/airlock/titanium{ +/obj/machinery/door/airlock/shuttle{ name = "kitchen" }, /obj/effect/decal/cleanable/dirt{ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/abandoned) "cm" = ( -/obj/machinery/door/airlock/titanium{ +/obj/machinery/door/airlock/shuttle{ name = "laboratory" }, /obj/effect/decal/cleanable/dirt{ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/abandoned) "cn" = ( /obj/structure/sign/bluecross_2, -/turf/closed/wall/mineral/titanium, +/turf/closed/wall/shuttle{ + icon_state = "swall8"; + dir = 2 + }, /area/shuttle/abandoned) "co" = ( -/obj/machinery/door/airlock/titanium{ +/obj/machinery/door/airlock/shuttle{ icon_state = "door_closed"; name = "medbay"; welded = 0 @@ -1244,7 +1258,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/abandoned) "cp" = ( /turf/closed/wall/shuttle{ @@ -1271,14 +1285,14 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "cr" = ( /obj/machinery/biogenerator{ idle_power_usage = 0; use_power = 0 }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "cs" = ( /obj/machinery/vending/hydroseeds{ @@ -1289,7 +1303,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "ct" = ( /obj/machinery/processor, @@ -1297,7 +1311,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "cu" = ( /obj/structure/kitchenspike, @@ -1306,7 +1320,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "cv" = ( /obj/structure/table, @@ -1319,16 +1333,17 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/obj/effect/decal/cleanable/cobweb/cobweb2, -/turf/open/floor/mineral/titanium, +/obj/effect/decal/cleanable/cobweb2, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "cw" = ( +/obj/structure/fluff/empty_sleeper/nanotrasen, /obj/effect/decal/cleanable/oil, /obj/effect/decal/cleanable/dirt{ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "cx" = ( /obj/structure/fluff/empty_sleeper/nanotrasen, @@ -1337,7 +1352,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "cy" = ( /obj/machinery/sleeper{ @@ -1348,7 +1363,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "cz" = ( /obj/structure/closet/crate/freezer, @@ -1363,7 +1378,7 @@ name = "dust" }, /obj/effect/decal/cleanable/xenoblood, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "cA" = ( /obj/structure/table/optable, @@ -1373,7 +1388,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "cB" = ( /obj/structure/table, @@ -1389,7 +1404,7 @@ /obj/item/weapon/wirecutters, /obj/item/device/plant_analyzer, /obj/item/weapon/reagent_containers/glass/bucket, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "cC" = ( /obj/structure/sink{ @@ -1402,13 +1417,16 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/abandoned) "cD" = ( /obj/machinery/smartfridge{ use_power = 0 }, -/turf/closed/wall/mineral/titanium, +/turf/closed/wall/shuttle{ + icon_state = "swall3"; + dir = 2 + }, /area/shuttle/abandoned) "cE" = ( /obj/structure/sink{ @@ -1421,7 +1439,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/abandoned) "cF" = ( /obj/effect/decal/cleanable/egg_smudge, @@ -1430,7 +1448,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/abandoned) "cG" = ( /obj/structure/table, @@ -1440,7 +1458,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "cH" = ( /obj/structure/fluff/empty_sleeper/nanotrasen, @@ -1449,7 +1467,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "cI" = ( /obj/structure/chair/office/light, @@ -1461,7 +1479,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/abandoned) "cJ" = ( /obj/structure/fluff/empty_sleeper/nanotrasen, @@ -1469,7 +1487,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "cK" = ( /obj/machinery/vending/wallmed{ @@ -1487,7 +1505,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/abandoned) "cL" = ( /obj/effect/decal/cleanable/dirt{ @@ -1496,7 +1514,7 @@ }, /obj/effect/decal/cleanable/ash, /obj/effect/decal/cleanable/xenoblood, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/abandoned) "cM" = ( /obj/effect/decal/cleanable/xenoblood, @@ -1510,7 +1528,7 @@ icon_state = "remainsxeno"; name = "remains" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/abandoned) "cN" = ( /obj/structure/sink{ @@ -1525,7 +1543,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/shuttle/abandoned) "cO" = ( /obj/structure/shuttle/engine/propulsion{ @@ -1540,7 +1558,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "cQ" = ( /obj/machinery/hydroponics/constructable, @@ -1549,7 +1567,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "cR" = ( /obj/structure/table, @@ -1560,7 +1578,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "cS" = ( /obj/structure/table, @@ -1574,7 +1592,7 @@ /obj/item/weapon/storage/fancy/egg_box{ pixel_y = 5 }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "cT" = ( /obj/structure/table, @@ -1589,7 +1607,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "cU" = ( /obj/structure/table, @@ -1609,7 +1627,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "cV" = ( /obj/structure/table, @@ -1624,7 +1642,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "cW" = ( /obj/structure/table, @@ -1633,7 +1651,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "cX" = ( /obj/structure/table, @@ -1642,7 +1660,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "cY" = ( /obj/structure/table, @@ -1651,7 +1669,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "cZ" = ( /obj/structure/table, @@ -1667,7 +1685,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "da" = ( /obj/structure/table, @@ -1678,7 +1696,7 @@ name = "dust" }, /obj/item/clothing/suit/apron/surgical, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "db" = ( /obj/structure/table, @@ -1688,7 +1706,7 @@ name = "surgical dufflebag"; pixel_y = 4 }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) (1,1,1) = {" @@ -1697,11 +1715,11 @@ aa aa aa aa -ac -ac +ab +av ah -ac -ac +aZ +cc aa aa aa @@ -1726,55 +1744,55 @@ cO aa "} (3,1,1) = {" -ac -ac +ab +al aD aD -ac -ac -ac +ai +am +av bE -ac -ac -ac +aZ +am +bk aD aD ac -ac +cc "} (4,1,1) = {" ac -ac -ac -ac -ac +am +aE +ap +al bm bw ax bV cd ac -ac -ac -ac -ac +ap +ap +am +al "} (5,1,1) = {" -ac +ad an -ac +aF aS -ac +aF aL aL aL aL aL -ac +ad cq cB cP -ac +ad "} (6,1,1) = {" ae @@ -1795,10 +1813,10 @@ ae "} (7,1,1) = {" ac -ac -ac -ac -ac +ap +ap +ap +be bo by bG @@ -1821,14 +1839,14 @@ by bH bW aL -ac +bh cs cC cP -ac +ad "} (9,1,1) = {" -ac +ad ar aI aV @@ -1838,18 +1856,18 @@ by bI bW aL -ac -ac +af +ap cD -ac -ac +ap +al "} (10,1,1) = {" ac -ac -ac -ac -ac +ap +ap +ap +al aL bz bJ @@ -1859,20 +1877,20 @@ cl aL cE cR -ac +ad "} (11,1,1) = {" -ac +ad as aJ aW -ac +ad bq aL ax aL aL -ac +bh ct ax cS @@ -1883,13 +1901,13 @@ ae at aK aX -ac -ac -ac +af +ap +av bK -ac -ac -ac +aZ +ap +al cu cF cT @@ -1906,45 +1924,45 @@ aL aL aL aL -ac +ad cv cG cU -ac +ad "} (14,1,1) = {" -ac +ad au aL aY -ac +bh aL -bx +bA bL -bx +bX aL ac -ac -ac -ac -ac +ap +ap +ap +al "} (15,1,1) = {" -ac +af av aM -ac -ac +aZ +bi aL -bz +bB bM -bz +bY ce -ac +aF cw -bx +cH cV -ac +ad "} (16,1,1) = {" ag @@ -1974,45 +1992,45 @@ aL bO ax aL -ac -bx -bx +bh +cx +cJ cX -ac +ad "} (18,1,1) = {" -ac -ac +ai +av aO -ac -ac +aZ +bk aL -bx +bA bP -bx +bX aL ac -ac -ac -ac -ac +ap +ap +ap +al "} (19,1,1) = {" -ac +ad ay aP ba -ac +aF aL -bx +bA bQ -bz +bY aL cn cy cK cY -ac +ad "} (20,1,1) = {" ae @@ -2036,51 +2054,51 @@ ae aA aQ bb -ac -ac -ac +ai +ap +av bR -ac -ac -ac +aZ +ap +bk cz cM da ae "} (22,1,1) = {" -ac +ad aB aR bc -ac +ad br bC aL bZ -bx -ac +cf +ad cA cN db -ac +ad "} (23,1,1) = {" -ac -ac +aj +ap ae -ac -ac +ap +al bs ax aL bp cg ac -ac +ap ae -ac -ac +ap +cp "} (24,1,1) = {" aa @@ -2121,13 +2139,13 @@ aa aa aa aa -ac +aj ae ae ae ae ae -ac +cp aa aa aa diff --git a/_maps/shuttles/whiteship_pubby.dmm b/_maps/shuttles/whiteship_pubby.dmm deleted file mode 100644 index 7f17a983dc..0000000000 --- a/_maps/shuttles/whiteship_pubby.dmm +++ /dev/null @@ -1,31 +0,0 @@ -"a" = (/turf/open/space,/area/space) -"b" = (/turf/closed/wall/mineral/titanium,/area/shuttle/abandoned) -"c" = (/obj/structure/shuttle/engine/propulsion/burst{tag = "icon-propulsion (NORTH)"; icon_state = "propulsion"; dir = 1},/turf/closed/wall/mineral/titanium,/area/shuttle/abandoned) -"d" = (/obj/machinery/door/airlock/glass{name = "Shuttle Airlock"},/turf/open/floor/plasteel/black,/area/shuttle/abandoned) -"e" = (/turf/open/floor/plasteel/black,/area/shuttle/abandoned) -"f" = (/turf/open/floor/plasteel,/area/shuttle/abandoned) -"g" = (/obj/structure/shuttle/engine/propulsion/burst{dir = 4},/turf/closed/wall/mineral/titanium,/area/shuttle/abandoned) -"h" = (/obj/structure/window/reinforced{dir = 1; layer = 2.9},/obj/structure/window/reinforced{dir = 8},/obj/structure/table/glass,/obj/item/weapon/gun/medbeam,/turf/open/floor/plating/abductor,/area/shuttle/abandoned) -"i" = (/obj/structure/chair,/turf/open/floor/plating/abductor,/area/shuttle/abandoned) -"j" = (/obj/structure/window/reinforced{dir = 1; layer = 2.9},/obj/structure/window/reinforced{dir = 4},/obj/structure/table/glass,/obj/machinery/recharger,/obj/item/weapon/gun/energy/laser/retro,/turf/open/floor/plating/abductor,/area/shuttle/abandoned) -"k" = (/obj/structure/shuttle/engine/propulsion/burst{tag = "icon-propulsion (WEST)"; icon_state = "propulsion"; dir = 8},/turf/closed/wall/mineral/titanium,/area/shuttle/abandoned) -"l" = (/obj/structure/chair{dir = 4},/turf/open/floor/plating/abductor,/area/shuttle/abandoned) -"m" = (/obj/machinery/computer/shuttle/white_ship,/turf/open/floor/plating/abductor,/area/shuttle/abandoned) -"n" = (/obj/structure/chair{dir = 8},/turf/open/floor/plating/abductor,/area/shuttle/abandoned) -"o" = (/obj/machinery/door/airlock/glass{name = "Shuttle Airlock"},/obj/docking_port/mobile{dheight = 0; dir = 8; dwidth = 4; height = 9; id = "whiteship"; launch_status = 0; name = "White Ship"; port_angle = 90; preferred_direction = 1; roundstart_move = "whiteship_away"; timid = 1; width = 9},/turf/open/floor/plasteel/black,/area/shuttle/abandoned) -"p" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/obj/structure/table/glass,/obj/item/weapon/tank/internals/oxygen,/obj/item/clothing/mask/breath,/obj/item/clothing/suit/space/hardsuit/engine/elite,/turf/open/floor/plating/abductor,/area/shuttle/abandoned) -"q" = (/obj/structure/chair{dir = 1},/turf/open/floor/plating/abductor,/area/shuttle/abandoned) -"r" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/obj/structure/table/glass,/obj/item/clothing/shoes/magboots,/turf/open/floor/plating/abductor,/area/shuttle/abandoned) -"s" = (/obj/structure/shuttle/engine/propulsion/burst,/turf/closed/wall/mineral/titanium,/area/shuttle/abandoned) - -(1,1,1) = {" -aabcdcbaa -abbefebba -bbeefeebb -geehijeek -dfflmnffo -geepqreek -bbeefeebb -abbefebba -aabsdsbaa -"} diff --git a/_maps/templates/medium_shuttle1.dmm b/_maps/templates/medium_shuttle1.dmm index 7a75899024..db4cdf2aaf 100644 --- a/_maps/templates/medium_shuttle1.dmm +++ b/_maps/templates/medium_shuttle1.dmm @@ -28,31 +28,32 @@ name = "Shuttle" }) "d" = ( -/turf/closed/wall/mineral/plastitanium, +/turf/closed/indestructible/opshuttle, /area/ruin/powered{ name = "Shuttle" }) "e" = ( /turf/open/space, -/turf/closed/wall/mineral/plastitanium{ - dir = 1; - icon_state = "diagonalWall3" +/turf/closed/indestructible/opshuttle{ + tag = "icon-wall3 (NORTHEAST)"; + icon_state = "wall3"; + dir = 5 }, /area/ruin/powered{ name = "Shuttle" }) "f" = ( -/turf/open/floor/plating, -/turf/closed/wall/mineral/plastitanium{ - dir = 4; - icon_state = "diagonalWall3" +/turf/closed/wall/shuttle/smooth, +/turf/closed/indestructible/opshuttle{ + tag = "icon-wall3 (SOUTHEAST)"; + icon_state = "wall3"; + dir = 6 }, -/turf/closed/wall/mineral/titanium, /area/ruin/powered{ name = "Shuttle" }) "g" = ( -/turf/closed/wall/mineral/titanium, +/turf/closed/wall/shuttle/smooth, /area/ruin/powered{ name = "Shuttle" }) @@ -63,7 +64,7 @@ name = "Shuttle" }) "i" = ( -/turf/closed/wall/mineral/titanium/overspace, +/turf/closed/wall/shuttle/smooth/overspace, /area/ruin/powered{ name = "Shuttle" }) @@ -158,20 +159,21 @@ name = "Shuttle" }) "x" = ( -/turf/open/floor/plating, -/turf/closed/wall/mineral/plastitanium{ - dir = 1; - icon_state = "diagonalWall3" +/turf/closed/wall/shuttle/smooth, +/turf/closed/indestructible/opshuttle{ + tag = "icon-wall3 (NORTHEAST)"; + icon_state = "wall3"; + dir = 5 }, -/turf/closed/wall/mineral/titanium, /area/ruin/powered{ name = "Shuttle" }) "y" = ( /turf/open/space, -/turf/closed/wall/mineral/plastitanium{ - dir = 4; - icon_state = "diagonalWall3" +/turf/closed/indestructible/opshuttle{ + tag = "icon-wall3 (SOUTHEAST)"; + icon_state = "wall3"; + dir = 6 }, /area/ruin/powered{ name = "Shuttle" diff --git a/_maps/templates/medium_shuttle2.dmm b/_maps/templates/medium_shuttle2.dmm index 0b81941ced..5d2af9c565 100644 --- a/_maps/templates/medium_shuttle2.dmm +++ b/_maps/templates/medium_shuttle2.dmm @@ -28,15 +28,20 @@ name = "Shuttle" }) "d" = ( -/turf/closed/wall/mineral/plastitanium, +/turf/closed/indestructible/opshuttle{ + tag = "icon-wall3 (EAST)"; + icon_state = "wall3"; + dir = 4 + }, /area/ruin/powered{ name = "Shuttle" }) "e" = ( /turf/open/space, -/turf/closed/wall/mineral/plastitanium{ - dir = 1; - icon_state = "diagonalWall3" +/turf/closed/indestructible/opshuttle{ + tag = "icon-wall3 (NORTHEAST)"; + icon_state = "wall3"; + dir = 5 }, /area/ruin/powered{ name = "Shuttle" @@ -52,30 +57,31 @@ name = "Shuttle" }) "g" = ( -/turf/open/floor/plating, -/turf/closed/wall/mineral/plastitanium{ - dir = 4; - icon_state = "diagonalWall3" +/turf/closed/wall/shuttle, +/turf/closed/indestructible/opshuttle{ + tag = "icon-wall3 (SOUTHEAST)"; + icon_state = "wall3"; + dir = 6 }, -/turf/closed/wall/mineral/titanium, /area/ruin/powered{ name = "Shuttle" }) "h" = ( -/turf/closed/wall/mineral/titanium, +/turf/closed/wall/shuttle, /area/ruin/powered{ name = "Shuttle" }) "i" = ( -/turf/closed/wall/mineral/titanium/overspace, +/turf/closed/wall/shuttle/smooth/overspace, /area/ruin/powered{ name = "Shuttle" }) "j" = ( /turf/open/space, -/turf/closed/wall/mineral/plastitanium{ - dir = 8; - icon_state = "diagonalWall3" +/turf/closed/indestructible/opshuttle{ + tag = "icon-wall3 (NORTHWEST)"; + icon_state = "wall3"; + dir = 9 }, /area/ruin/powered{ name = "Shuttle" @@ -114,8 +120,10 @@ }) "q" = ( /turf/open/space, -/turf/closed/wall/mineral/plastitanium{ - icon_state = "diagonalWall3" +/turf/closed/indestructible/opshuttle{ + tag = "icon-wall3 (SOUTHWEST)"; + icon_state = "wall3"; + dir = 10 }, /area/ruin/powered{ name = "Shuttle" @@ -179,29 +187,25 @@ name = "Shuttle" }) "z" = ( -/turf/open/floor/plating, -/turf/closed/wall/mineral/plastitanium{ - dir = 1; - icon_state = "diagonalWall3" +/turf/closed/wall/shuttle, +/turf/closed/indestructible/opshuttle{ + tag = "icon-wall3 (NORTHEAST)"; + icon_state = "wall3"; + dir = 5 }, -/turf/closed/wall/mineral/titanium, /area/ruin/powered{ name = "Shuttle" }) "A" = ( /turf/open/space, -/turf/closed/wall/mineral/plastitanium{ - dir = 4; - icon_state = "diagonalWall3" +/turf/closed/indestructible/opshuttle{ + tag = "icon-wall3 (SOUTHEAST)"; + icon_state = "wall3"; + dir = 6 }, /area/ruin/powered{ name = "Shuttle" }) -"B" = ( -/turf/closed/wall/mineral/titanium/nodiagonal, -/area/ruin/powered{ - name = "Shuttle" - }) (1,1,1) = {" a @@ -314,9 +318,9 @@ g h n h -B +h w -B +h h n h @@ -330,7 +334,7 @@ k k h h -B +h h h k diff --git a/_maps/templates/medium_shuttle3.dmm b/_maps/templates/medium_shuttle3.dmm index 406677afd9..359922091b 100644 --- a/_maps/templates/medium_shuttle3.dmm +++ b/_maps/templates/medium_shuttle3.dmm @@ -13,7 +13,7 @@ name = "Shuttle" }) "c" = ( -/turf/closed/wall/mineral/plastitanium, +/turf/closed/indestructible/opshuttle, /area/ruin/powered{ name = "Shuttle" }) @@ -29,43 +29,46 @@ }) "e" = ( /turf/open/space, -/turf/closed/wall/mineral/plastitanium{ - dir = 8; - icon_state = "diagonalWall3" +/turf/closed/indestructible/opshuttle{ + tag = "icon-wall3 (NORTHWEST)"; + icon_state = "wall3"; + dir = 9 }, /area/ruin/powered{ name = "Shuttle" }) "f" = ( /turf/open/space, -/turf/closed/wall/mineral/plastitanium{ - dir = 1; - icon_state = "diagonalWall3" +/turf/closed/indestructible/opshuttle{ + tag = "icon-wall3 (NORTHEAST)"; + icon_state = "wall3"; + dir = 5 }, /area/ruin/powered{ name = "Shuttle" }) "g" = ( -/turf/open/floor/plating, -/turf/closed/wall/mineral/plastitanium{ - dir = 4; - icon_state = "diagonalWall3" +/turf/closed/wall/shuttle/smooth, +/turf/closed/indestructible/opshuttle{ + tag = "icon-wall3 (SOUTHEAST)"; + icon_state = "wall3"; + dir = 6 }, -/turf/closed/wall/mineral/titanium, /area/ruin/powered{ name = "Shuttle" }) "h" = ( -/turf/closed/wall/mineral/titanium, +/turf/closed/wall/shuttle/smooth, /area/ruin/powered{ name = "Shuttle" }) "i" = ( -/turf/open/floor/plating, -/turf/closed/wall/mineral/plastitanium{ - icon_state = "diagonalWall3" +/turf/closed/wall/shuttle/smooth, +/turf/closed/indestructible/opshuttle{ + tag = "icon-wall3 (SOUTHWEST)"; + icon_state = "wall3"; + dir = 10 }, -/turf/closed/wall/mineral/titanium, /area/ruin/powered{ name = "Shuttle" }) @@ -138,12 +141,12 @@ name = "Shuttle" }) "s" = ( -/turf/open/floor/plating, -/turf/closed/wall/mineral/plastitanium{ - dir = 1; - icon_state = "diagonalWall3" +/turf/closed/wall/shuttle/smooth, +/turf/closed/indestructible/opshuttle{ + tag = "icon-wall3 (NORTHEAST)"; + icon_state = "wall3"; + dir = 5 }, -/turf/closed/wall/mineral/titanium, /area/ruin/powered{ name = "Shuttle" }) @@ -154,12 +157,12 @@ name = "Shuttle" }) "u" = ( -/turf/open/floor/plating, -/turf/closed/wall/mineral/plastitanium{ - dir = 8; - icon_state = "diagonalWall3" +/turf/closed/wall/shuttle/smooth, +/turf/closed/indestructible/opshuttle{ + tag = "icon-wall3 (NORTHWEST)"; + icon_state = "wall3"; + dir = 9 }, -/turf/closed/wall/mineral/titanium, /area/ruin/powered{ name = "Shuttle" }) @@ -186,8 +189,10 @@ }) "y" = ( /turf/open/space, -/turf/closed/wall/mineral/plastitanium{ - icon_state = "diagonalWall3" +/turf/closed/indestructible/opshuttle{ + tag = "icon-wall3 (SOUTHWEST)"; + icon_state = "wall3"; + dir = 10 }, /area/ruin/powered{ name = "Shuttle" @@ -205,9 +210,10 @@ }) "B" = ( /turf/open/space, -/turf/closed/wall/mineral/plastitanium{ - dir = 4; - icon_state = "diagonalWall3" +/turf/closed/indestructible/opshuttle{ + tag = "icon-wall3 (SOUTHEAST)"; + icon_state = "wall3"; + dir = 6 }, /area/ruin/powered{ name = "Shuttle" @@ -233,11 +239,6 @@ "F" = ( /obj/structure/shuttle/engine/propulsion, /turf/open/space, -/area/ruin/powered{ - name = "Shuttle" - }) -"G" = ( -/turf/closed/wall/mineral/titanium/nodiagonal, /area/ruin/powered{ name = "Shuttle" }) @@ -370,14 +371,14 @@ c h k l -G h -G +h +h m m -G h -G +h +h l k h @@ -416,18 +417,18 @@ c c c i -G +h l l l -G +h t t -G +h l l l -G +h u c c @@ -443,12 +444,12 @@ c h l l -G +h z C C D -G +h l l h @@ -464,18 +465,18 @@ a f c g -G +h p -G +h v -G +h C C -G +h A -G +h p -G +h s c B @@ -536,18 +537,18 @@ a e c i -G +h p -G +h w -G +h A A -G +h A -G +h p -G +h u c y @@ -563,12 +564,12 @@ c h l l -G +h A A A A -G +h l l h @@ -584,18 +585,18 @@ c c c g -G +h l l l -G +h t t -G +h l l l -G +h s c c @@ -634,14 +635,14 @@ c h k l -G h -G +h +h m m -G h -G +h +h l k h diff --git a/_maps/templates/small_shuttle_1.dmm b/_maps/templates/small_shuttle_1.dmm index 8aeacad17b..890b172819 100644 --- a/_maps/templates/small_shuttle_1.dmm +++ b/_maps/templates/small_shuttle_1.dmm @@ -3,7 +3,11 @@ /turf/open/space, /area/space) "b" = ( -/turf/closed/wall/mineral/titanium/overspace, +/turf/open/space, +/turf/closed/wall/shuttle{ + tag = "icon-swall_f6"; + icon_state = "swall_f6" + }, /area/space) "c" = ( /obj/structure/grille, @@ -18,16 +22,19 @@ }, /area/space) "e" = ( -/turf/closed/wall/mineral/titanium, +/turf/closed/wall/shuttle{ + tag = "icon-swall3"; + icon_state = "swall3" + }, /area/space) "f" = ( -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/space) "g" = ( /obj/structure/chair{ dir = 1 }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/space) "h" = ( /turf/closed/wall/shuttle{ @@ -43,7 +50,7 @@ /area/space) "j" = ( /obj/machinery/door/unpowered/shuttle, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/space) "k" = ( /turf/closed/wall/shuttle{ @@ -55,13 +62,13 @@ /obj/structure/chair{ dir = 4 }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/space) "m" = ( /obj/structure/chair{ dir = 8 }, -/turf/open/floor/mineral/titanium/blue, +/turf/open/floor/plasteel/shuttle, /area/space) "n" = ( /obj/structure/shuttle/engine/heater, @@ -109,13 +116,13 @@ j j e e -b +o "} (2,1,1) = {" b e e -e +h l l f @@ -128,7 +135,7 @@ p c f f -e +i f f f @@ -154,7 +161,7 @@ q c f f -e +k f f f @@ -164,10 +171,10 @@ n q "} (6,1,1) = {" -b -e +d e e +h m m f @@ -180,12 +187,12 @@ r a a a -b +d e e j j e e -b +s "} diff --git a/code/__DEFINES/MC.dm b/code/__DEFINES/_MC.dm similarity index 90% rename from code/__DEFINES/MC.dm rename to code/__DEFINES/_MC.dm index b0030793b6..932805089e 100644 --- a/code/__DEFINES/MC.dm +++ b/code/__DEFINES/_MC.dm @@ -5,8 +5,8 @@ #define MC_AVERAGE_SLOW(average, current) (0.9 * (average) + 0.1 * (current)) #define NEW_SS_GLOBAL(varname) if(varname != src){if(istype(varname)){Recover();qdel(varname);}varname = src;} -#define START_PROCESSING(Processor, Datum) if (!Datum.isprocessing) {Datum.isprocessing = 1;Processor.processing += Datum} -#define STOP_PROCESSING(Processor, Datum) Datum.isprocessing = 0;Processor.processing -= Datum +#define START_PROCESSING(Processor, Datum) if (!Datum.isprocessing) Datum.isprocessing = 1;Processor.processing += Datum +#define STOP_PROCESSING(Processor, Datum) if (Datum.isprocessing) Datum.isprocessing = 0;Processor.processing -= Datum //SubSystem flags (Please design any new flags so that the default is off, to make adding flags to subsystems easier) @@ -46,4 +46,4 @@ //Timing subsystem -#define GLOBAL_PROC "some_magic_bullshit" +#define GLOBAL_PROC "some_magic_bullshit" \ No newline at end of file diff --git a/code/__DEFINES/admin.dm b/code/__DEFINES/admin.dm index dd02cbb27e..e1af51cb55 100644 --- a/code/__DEFINES/admin.dm +++ b/code/__DEFINES/admin.dm @@ -14,7 +14,7 @@ #define BANTYPE_JOB_PERMA 3 #define BANTYPE_JOB_TEMP 4 #define BANTYPE_ANY_FULLBAN 5 //used to locate stuff to unban. - +#define BANTYPE_APPEARANCE 6 #define BANTYPE_ADMIN_PERMA 7 #define BANTYPE_ADMIN_TEMP 8 #define BANTYPE_ANY_JOB 9 //used to remove jobbans @@ -36,21 +36,3 @@ #define R_SPAWN 4096 #define R_MAXPERMISSION 4096 //This holds the maximum value for a permission. It is used in iteration, so keep it updated. - -#define ADMIN_QUE(user) "(?)" -#define ADMIN_FLW(user) "(FLW)" -#define ADMIN_PP(user) "(PP)" -#define ADMIN_VV(atom) "(VV)" -#define ADMIN_SM(user) "(SM)" -#define ADMIN_TP(user) "(TP)" -#define ADMIN_BSA(user) "(BSA)" -#define ADMIN_CENTCOM_REPLY(user) "(RPLY)" -#define ADMIN_SYNDICATE_REPLY(user) "(RPLY)" -#define ADMIN_SC(user) "(SC)" -#define ADMIN_LOOKUP(user) "[key_name_admin(user)][ADMIN_QUE(user)]" -#define ADMIN_LOOKUPFLW(user) "[key_name_admin(user)][ADMIN_QUE(user)] [ADMIN_FLW(user)]" -#define ADMIN_SET_SD_CODE "(SETCODE)" -#define ADMIN_FULLMONTY(user) "[key_name_admin(user)] [ADMIN_QUE(user)] [ADMIN_PP(user)] [ADMIN_VV(user)] [ADMIN_SM(user)] [ADMIN_FLW(user)] [ADMIN_TP(user)]" -#define ADMIN_JMP(src) "(JMP)" -#define COORD(src) "[src ? "([src.x],[src.y],[src.z])" : "nonexistent location"]" -#define ADMIN_COORDJMP(src) "[src ? "[COORD(src)] [ADMIN_JMP(src)]" : "nonexistent location"]" diff --git a/code/__DEFINES/atmospherics.dm b/code/__DEFINES/atmospherics.dm index 733e21e503..69d51ed0bd 100644 --- a/code/__DEFINES/atmospherics.dm +++ b/code/__DEFINES/atmospherics.dm @@ -163,10 +163,3 @@ #define TANK_MAX_RELEASE_PRESSURE (ONE_ATMOSPHERE*3) #define TANK_MIN_RELEASE_PRESSURE 0 #define TANK_DEFAULT_RELEASE_PRESSURE 16 - - -#define ATMOS_PASS_YES 1 -#define ATMOS_PASS_NO 0 -#define ATMOS_PASS_PROC -1 //ask CanAtmosPass() -#define ATMOS_PASS_DENSITY -2 //just check density -#define CANATMOSPASS(A, O) ( A.CanAtmosPass == ATMOS_PASS_PROC ? A.CanAtmosPass(O) : ( A.CanAtmosPass == ATMOS_PASS_DENSITY ? !A.density : A.CanAtmosPass ) ) \ No newline at end of file diff --git a/code/__DEFINES/clockcult.dm b/code/__DEFINES/clockcult.dm deleted file mode 100644 index ba2e9cf239..0000000000 --- a/code/__DEFINES/clockcult.dm +++ /dev/null @@ -1,98 +0,0 @@ -//component id defines -#define BELLIGERENT_EYE "belligerent_eye" -#define VANGUARD_COGWHEEL "vanguard_cogwheel" -#define GEIS_CAPACITOR "geis_capacitor" -#define REPLICANT_ALLOY "replicant_alloy" -#define HIEROPHANT_ANSIBLE "hierophant_ansible" - -var/global/clockwork_construction_value = 0 //The total value of all structures built by the clockwork cult -var/global/clockwork_caches = 0 //How many clockwork caches exist in the world (not each individual) -var/global/clockwork_daemons = 0 //How many daemons exist in the world -var/global/list/clockwork_generals_invoked = list("nezbere" = FALSE, "sevtug" = FALSE, "nzcrentr" = FALSE, "inath-neq" = FALSE) //How many generals have been recently invoked -var/global/list/all_clockwork_objects = list() //All clockwork items, structures, and effects in existence -var/global/list/all_clockwork_mobs = list() //All clockwork SERVANTS (not creatures) in existence -var/global/list/clockwork_component_cache = list(BELLIGERENT_EYE = 0, VANGUARD_COGWHEEL = 0, GEIS_CAPACITOR = 0, REPLICANT_ALLOY = 0, HIEROPHANT_ANSIBLE = 0) //The pool of components that caches draw from -var/global/ratvar_awakens = 0 //If Ratvar has been summoned; not a boolean, for proper handling of multiple ratvars -var/global/clockwork_gateway_activated = FALSE //if a gateway to the celestial derelict has ever been successfully activated -var/global/list/all_scripture = list() //a list containing scripture instances; not used to track existing scripture - -//Scripture tiers and requirements; peripherals should never be used -#define SCRIPTURE_PERIPHERAL "Peripheral" -#define SCRIPTURE_DRIVER "Driver" -#define SCRIPTURE_SCRIPT "Script" -#define SCRIPT_SERVANT_REQ 5 -#define SCRIPT_CACHE_REQ 1 -#define SCRIPTURE_APPLICATION "Application" -#define APPLICATION_SERVANT_REQ 8 -#define APPLICATION_CACHE_REQ 3 -#define APPLICATION_CV_REQ 100 -#define SCRIPTURE_REVENANT "Revenant" -#define REVENANT_SERVANT_REQ 10 -#define REVENANT_CACHE_REQ 4 -#define REVENANT_CV_REQ 200 -#define SCRIPTURE_JUDGEMENT "Judgement" -#define JUDGEMENT_SERVANT_REQ 12 -#define JUDGEMENT_CACHE_REQ 5 -#define JUDGEMENT_CV_REQ 300 - -//general component/cooldown things -#define SLAB_PRODUCTION_TIME 900 //how long(deciseconds) slabs require to produce a single component; defaults to 1 minute 30 seconds - -#define SLAB_SERVANT_SLOWDOWN 300 //how much each servant above 5 slows down slab-based generation; defaults to 30 seconds per sevant - -#define SLAB_SLOWDOWN_MAXIMUM 2700 //maximum slowdown from additional servants; defaults to 4 minutes 30 seconds - -#define CACHE_PRODUCTION_TIME 900 //how long(deciseconds) caches require to produce a component; defaults to 1 minute 30 seconds - -#define LOWER_PROB_PER_COMPONENT 10 //how much each component in the cache reduces the weight of getting another of that component type - -#define MAX_COMPONENTS_BEFORE_RAND 10*LOWER_PROB_PER_COMPONENT //the number of each component, times LOWER_PROB_PER_COMPONENT, you need to have before component generation will become random - -#define CLOCKWORK_GENERAL_COOLDOWN 3000 //how long clockwork generals go on cooldown after use, defaults to 5 minutes - -//proselytizer defines -#define REPLICANT_ALLOY_UNIT 100 //how much each piece of replicant alloy gives in a clockwork proselytizer - -#define REPLICANT_STANDARD REPLICANT_ALLOY_UNIT*0.2 //how much alloy is in anything else; doesn't matter as much as the following - -#define REPLICANT_FLOOR REPLICANT_ALLOY_UNIT*0.1 //how much alloy is in a clockwork floor, determines the cost of clockwork floor production - -#define REPLICANT_WALL_MINUS_FLOOR REPLICANT_ALLOY_UNIT*0.4 //amount of alloy in a clockwork wall, determines the cost of clockwork wall production - -#define REPLICANT_GEAR REPLICANT_ALLOY_UNIT*0.3 //amount of alloy in a wall gear, minus the brass from the wall - -#define REPLICANT_WALL_TOTAL REPLICANT_WALL_MINUS_FLOOR+REPLICANT_FLOOR //how much alloy is in a clockwork wall and the floor under it - -#define REPLICANT_ROD REPLICANT_ALLOY_UNIT*0.01 //amount of replicant alloy in one rod - -#define REPLICANT_METAL REPLICANT_ALLOY_UNIT*0.02 //amount of replicant alloy in one sheet of metal - -#define REPLICANT_PLASTEEL REPLICANT_ALLOY_UNIT*0.05 //amount of replicant alloy in one sheet of plasteel - -#define RATVAR_ALLOY_CHECK "ratvar?" //when passed into can_use_alloy(), converts it into a check for if ratvar has woken/the proselytizer is debug - -//clockcult power defines -#define MIN_CLOCKCULT_POWER 50 //the minimum amount of power clockcult machines will handle gracefully - -#define CLOCKCULT_POWER_TO_ALLOY_MULTIPLIER 0.04 //conversion rate for power -> alloy - -#define CLOCKCULT_ALLOY_TO_POWER_MULTIPLIER 25 //conversion rate for alloy -> power - -#define REPLICANT_ALLOY_POWER REPLICANT_ALLOY_UNIT*CLOCKCULT_ALLOY_TO_POWER_MULTIPLIER //the amount of power you get from a single piece of replicant alloy - -//Ark defines -#define GATEWAY_SUMMON_RATE 1 //the time amount the Gateway to the Celestial Derelict gets each process tick; defaults to 1 per tick - -#define GATEWAY_REEBE_FOUND 119 //when progress is at or above this, the gateway finds reebe and begins drawing power - -#define GATEWAY_RATVAR_COMING 239 //when progress is at or above this, ratvar has entered and is coming through the gateway - -#define GATEWAY_RATVAR_ARRIVAL 300 //when progress is at or above this, game over ratvar's here everybody go home - -//Objective defines - -#define CLOCKCULT_GATEWAY "gateway" - -#define CLOCKCULT_ESCAPE "escape" - -#define CLOCKCULT_SILICONS "silicons" diff --git a/code/__DEFINES/clothing.dm b/code/__DEFINES/clothing.dm index f38adac009..c180fca98a 100644 --- a/code/__DEFINES/clothing.dm +++ b/code/__DEFINES/clothing.dm @@ -10,22 +10,20 @@ #define SLOT_ID 256 #define SLOT_BELT 512 #define SLOT_BACK 1024 -#define SLOT_POCKET 2048 // this is to allow items with a w_class of WEIGHT_CLASS_NORMAL or WEIGHT_CLASS_BULKY to fit in pockets. -#define SLOT_DENYPOCKET 4096 // this is to deny items with a w_class of WEIGHT_CLASS_SMALL or WEIGHT_CLASS_TINY to fit in pockets. -#define SLOT_NECK 8192 +#define SLOT_POCKET 2048 //this is to allow items with a w_class of 3 or 4 to fit in pockets. +#define SLOT_DENYPOCKET 4096 //this is to deny items with a w_class of 2 or 1 to fit in pockets. //SLOTS #define slot_back 1 #define slot_wear_mask 2 #define slot_handcuffed 3 -#define slot_hands 4 //wherever you provide a slot for hands you provide slot_hands - //slot_hands as a slot will pick ANY available hand -#define slot_belt 5 -#define slot_wear_id 6 -#define slot_ears 7 -#define slot_glasses 8 -#define slot_gloves 9 -#define slot_neck 10 +#define slot_l_hand 4 +#define slot_r_hand 5 +#define slot_belt 6 +#define slot_wear_id 7 +#define slot_ears 8 +#define slot_glasses 9 +#define slot_gloves 10 #define slot_head 11 #define slot_shoes 12 #define slot_wear_suit 13 @@ -35,7 +33,7 @@ #define slot_s_store 17 #define slot_in_backpack 18 #define slot_legcuffed 19 -#define slot_generic_dextrous_storage 20 +#define slot_drone_storage 20 #define slots_amt 20 // Keep this up to date! @@ -47,8 +45,6 @@ . = SLOT_BACK if(slot_wear_mask) . = SLOT_MASK - if(slot_neck) - . = SLOT_NECK if(slot_belt) . = SLOT_BELT if(slot_wear_id) @@ -82,7 +78,7 @@ #define HIDEFACE 128 // Whether we appear as unknown. #define HIDEHAIR 256 #define HIDEFACIALHAIR 512 -#define HIDENECK 1024 + //Cant seem to find a mob bitflags area other than the powers one @@ -102,8 +98,7 @@ #define HAND_LEFT 512 #define HAND_RIGHT 1024 #define HANDS 1536 -#define NECK 2048 -#define FULL_BODY 4095 +#define FULL_BODY 2047 // bitflags for the percentual amount of protection a piece of clothing which covers the body part offers. // Used with human/proc/get_heat_protection() and human/proc/get_cold_protection() @@ -127,20 +122,6 @@ #define FEMALE_UNIFORM_FULL 1 #define FEMALE_UNIFORM_TOP 2 -//flags for alternate styles: These are hard sprited so don't set this if you didn't put the effort it - -#define NORMAL_STYLE 0 -#define ALT_STYLE 1 -#define DIGITIGRADE_STYLE 2 - -//flags for outfits that have mutantrace variants (try not to use this): Currently only needed if you're trying to add tight fitting bootyshorts - -#define NO_MUTANTRACE_VARIATION 0 -#define MUTANTRACE_VARIATION 1 - -#define NOT_DIGITIGRADE 0 -#define FULL_DIGITIGRADE 1 -#define SQUISHED_DIGITIGRADE 2 //flags for covering body parts #define GLASSESCOVERSEYES 1 diff --git a/code/__DEFINES/combat.dm b/code/__DEFINES/combat.dm index 6517b8e0f1..f14e5f2fb6 100644 --- a/code/__DEFINES/combat.dm +++ b/code/__DEFINES/combat.dm @@ -69,22 +69,12 @@ #define UNARMED_ATTACK 2 #define PROJECTILE_ATTACK 3 #define THROWN_PROJECTILE_ATTACK 4 -#define LEAP_ATTACK 5 - -//the define for visible message range in combat -#define COMBAT_MESSAGE_RANGE 3 //Gun Stuff #define SAWN_INTACT 0 #define SAWN_OFF 1 -#define WEAPON_DUAL_WIELD 0 -#define WEAPON_LIGHT 1 -#define WEAPON_MEDIUM 2 -#define WEAPON_HEAVY 3 - -//Health Defines - -#define HEALTH_THRESHOLD_CRIT 0 -#define HEALTH_THRESHOLD_DEAD -100 \ No newline at end of file + #define WEAPON_LIGHT 0 + #define WEAPON_MEDIUM 1 + #define WEAPON_HEAVY 2 \ No newline at end of file diff --git a/code/__DEFINES/construction.dm b/code/__DEFINES/construction.dm deleted file mode 100644 index 2a329d105b..0000000000 --- a/code/__DEFINES/construction.dm +++ /dev/null @@ -1,28 +0,0 @@ -//Defines for construction states of various objects - -//girder construction states -#define GIRDER_NORMAL 0 -#define GIRDER_REINF_STRUTS 1 -#define GIRDER_REINF 2 -#define GIRDER_DISPLACED 3 -#define GIRDER_DISASSEMBLED 4 - -//rwall construction states -#define INTACT 0 -#define SUPPORT_LINES 1 -#define COVER 2 -#define CUT_COVER 3 -#define BOLTS 4 -#define SUPPORT_RODS 5 -#define SHEATH 6 - -//default_unfasten_wrench() return defines -#define CANT_UNFASTEN 0 -#define FAILED_UNFASTEN 1 -#define SUCCESSFUL_UNFASTEN 2 - -//disposal unit mode defines, which do double time as the construction defines -#define PRESSURE_OFF 0 -#define PRESSURE_ON 1 -#define PRESSURE_MAXED 2 -#define SCREWS_OUT -1 diff --git a/code/__DEFINES/contracts.dm b/code/__DEFINES/contracts.dm index e2f4aff409..cba98a29b2 100644 --- a/code/__DEFINES/contracts.dm +++ b/code/__DEFINES/contracts.dm @@ -15,8 +15,7 @@ #define BANE_TOOLBOX "toolbox" #define OBLIGATION_FOOD "food" -#define OBLIGATION_FIDDLE "fiddle" -#define OBLIGATION_DANCEOFF "danceoff" +#define OBLIGATION_DRINK "drink" #define OBLIGATION_GREET "greet" #define OBLIGATION_PRESENCEKNOWN "presenceknown" #define OBLIGATION_SAYNAME "sayname" diff --git a/code/__DEFINES/flags.dm b/code/__DEFINES/flags.dm index c2b639be84..5d38343e5f 100644 --- a/code/__DEFINES/flags.dm +++ b/code/__DEFINES/flags.dm @@ -34,8 +34,6 @@ //turf-only flags #define NOJAUNT 1 -#define UNUSED_TRANSIT_TURF 2 -#define CAN_BE_DIRTY 4 //If a turf can be made dirty at roundstart. This is also used in areas. /* These defines are used specifically with the atom/pass_flags bitmask @@ -49,12 +47,34 @@ #define PASSMOB 16 #define LETPASSTHROW 32 +//flags for species -//Movement Types -#define IMMOBILE 0 -#define GROUND 1 -#define FLYING 2 +#define MUTCOLORS 1 +#define HAIR 2 +#define FACEHAIR 3 +#define EYECOLOR 4 +#define LIPS 5 +#define RESISTTEMP 6 +#define RADIMMUNE 7 +#define NOBREATH 8 +#define NOGUNS 9 +#define NOBLOOD 10 +#define NOFIRE 11 +#define VIRUSIMMUNE 12 +#define PIERCEIMMUNE 13 +#define NOTRANSSTING 14 +#define MUTCOLORS_PARTSONLY 15 //Used if we want the mutant colour to be only used by mutant bodyparts. Don't combine this with MUTCOLORS, or it will be useless. +#define NODISMEMBER 16 +#define NOHUNGER 17 +#define NOCRITDAMAGE 18 +#define NOZOMBIE 19 +#define EASYDISMEMBER 20 +#define EASYLIMBATTACHMENT 21 +#define TOXINLOVER 22 +#define MUTCOLORS2 23 +#define MUTCOLORS3 24 +#define FLYING 65536 /* These defines are used specifically with the atom/movable/languages bitmask. @@ -68,6 +88,7 @@ #define DRONE 32 #define SWARMER 64 #define RATVAR 128 +#define YAUTJA 256 // Flags for reagents #define REAGENT_NOREACT 1 diff --git a/code/__DEFINES/genetics.dm b/code/__DEFINES/genetics.dm index 06284ce232..f0cb6dd926 100644 --- a/code/__DEFINES/genetics.dm +++ b/code/__DEFINES/genetics.dm @@ -61,24 +61,23 @@ #define DNA_HAIR_COLOR_BLOCK 1 #define DNA_FACIAL_HAIR_COLOR_BLOCK 2 #define DNA_SKIN_TONE_BLOCK 3 -#define DNA_EYE_COLOR_BLOCK 4 -#define DNA_GENDER_BLOCK 5 -#define DNA_FACIAL_HAIR_STYLE_BLOCK 6 -#define DNA_HAIR_STYLE_BLOCK 7 -#define DNA_EYE_COLOR_TWO_BLOCK 8 -#define DNA_EYE_COLOR_SWITCH_BLOCK 9 -#define DNA_EYE_COLOR_BLOCK 10 -#define DNA_COLOR_ONE_BLOCK 11 -#define DNA_COLOR_TWO_BLOCK 12 -#define DNA_COLOR_THR_BLOCK 13 -#define DNA_COLOR_SWITCH_BLOCK 14 +#define DNA_EYE_COLOR_TWO_BLOCK 4 +#define DNA_EYE_COLOR_SWITCH_BLOCK 5 +#define DNA_EYE_COLOR_BLOCK 6 +#define DNA_GENDER_BLOCK 7 +#define DNA_FACIAL_HAIR_STYLE_BLOCK 8 +#define DNA_HAIR_STYLE_BLOCK 9 +#define DNA_COLOR_ONE_BLOCK 10 +#define DNA_COLOR_TWO_BLOCK 11 +#define DNA_COLOR_THR_BLOCK 12 +#define DNA_COLOR_SWITCH_BLOCK 13 #define DNA_COLOR_SWITCH_MAX 7 //must be (2^(n+1))-1 -#define DNA_COCK_BLOCK 15 -#define DNA_MUTANTRACE_BLOCK 16 -#define DNA_MUTANTTAIL_BLOCK 17 -#define DNA_MUTANTWING_BLOCK 18 -#define DNA_WINGCOLOR_BLOCK 19 -//#define DNA_TAUR_BLOCK 20 //Taurs will be tails for now, easier - Pooj +#define DNA_COCK_BLOCK 14 +#define DNA_MUTANTRACE_BLOCK 15 +#define DNA_MUTANTTAIL_BLOCK 16 +#define DNA_MUTANTWING_BLOCK 17 +#define DNA_WINGCOLOR_BLOCK 18 +#define DNA_TAUR_BLOCK 19 #define DNA_STRUC_ENZYMES_BLOCKS 19 #define DNA_UNIQUE_ENZYMES_LEN 32 @@ -98,14 +97,6 @@ #define ORGAN_ORGANIC 1 #define ORGAN_ROBOTIC 2 -#define BODYPART_ORGANIC 1 -#define BODYPART_ROBOTIC 2 - -#define MONKEY_BODYPART "monkey" -#define ALIEN_BODYPART "alien" -#define LARVA_BODYPART "larva" -#define DEVIL_BODYPART "devil" - //Nutrition levels for humans. No idea where else to put it #define NUTRITION_LEVEL_FAT 600 #define NUTRITION_LEVEL_FULL 550 @@ -125,32 +116,3 @@ #define BLOOD_VOLUME_OKAY 336 #define BLOOD_VOLUME_BAD 224 #define BLOOD_VOLUME_SURVIVE 122 - -//species traits for mutantraces -#define MUTCOLORS 1 -#define HAIR 2 -#define FACEHAIR 3 -#define EYECOLOR 4 -#define LIPS 5 -#define RESISTHOT 6 -#define RESISTCOLD 7 -#define RESISTPRESSURE 8 -#define RADIMMUNE 9 -#define NOBREATH 10 -#define NOGUNS 11 -#define NOBLOOD 12 -#define NOFIRE 13 -#define VIRUSIMMUNE 14 -#define PIERCEIMMUNE 15 -#define NOTRANSSTING 16 -#define MUTCOLORS_PARTSONLY 17 //Used if we want the mutant colour to be only used by mutant bodyparts. Don't combine this with MUTCOLORS, or it will be useless. -#define NODISMEMBER 18 -#define NOHUNGER 19 -#define NOCRITDAMAGE 20 -#define NOZOMBIE 21 -#define EASYDISMEMBER 22 -#define EASYLIMBATTACHMENT 23 -#define TOXINLOVER 24 -#define DIGITIGRADE 25 //Uses weird leg sprites. Optional for Lizards, required for ashwalkers. Don't give it to other races unless you make sprites for this (see human_parts_greyscale.dmi) -#define MUTCOLORS2 26 -#define MUTCOLORS3 27 \ No newline at end of file diff --git a/code/__DEFINES/hud.dm b/code/__DEFINES/hud.dm index cb2c3adab5..b3dfca079c 100644 --- a/code/__DEFINES/hud.dm +++ b/code/__DEFINES/hud.dm @@ -30,14 +30,16 @@ #define ANTAG_HUD_OPS 8 #define ANTAG_HUD_WIZ 9 #define ANTAG_HUD_SHADOW 10 -#define ANTAG_HUD_TRAITOR 11 -#define ANTAG_HUD_NINJA 12 -#define ANTAG_HUD_CHANGELING 13 -#define ANTAG_HUD_ABDUCTOR 14 -#define ANTAG_HUD_DEVIL 15 -#define ANTAG_HUD_SINTOUCHED 16 -#define ANTAG_HUD_SOULLESS 17 -#define ANTAG_HUD_CLOCKWORK 18 +#define ANTAG_HUD_HOG_BLUE 11 +#define ANTAG_HUD_HOG_RED 12 +#define ANTAG_HUD_TRAITOR 13 +#define ANTAG_HUD_NINJA 14 +#define ANTAG_HUD_CHANGELING 15 +#define ANTAG_HUD_ABDUCTOR 16 +#define ANTAG_HUD_DEVIL 17 +#define ANTAG_HUD_SINTOUCHED 18 +#define ANTAG_HUD_SOULLESS 19 +#define ANTAG_HUD_CLOCKWORK 20 // Notification action types #define NOTIFY_JUMP "jump" diff --git a/code/__DEFINES/is_helpers.dm b/code/__DEFINES/is_helpers.dm index b4746944a3..50a9beb37b 100644 --- a/code/__DEFINES/is_helpers.dm +++ b/code/__DEFINES/is_helpers.dm @@ -4,32 +4,13 @@ #define in_range(source, user) (get_dist(source, user) <= 1) -#define ismovableatom(A) (istype(A, /atom/movable)) +#define is_cleanable(A) (istype(A, /obj/effect/decal/cleanable) || istype(A, /obj/effect/rune)) //if something is cleanable -//Turfs -#define isopenturf(A) (istype(A, /turf/open)) - -#define isspaceturf(A) (istype(A, /turf/open/space)) - -#define isfloorturf(A) (istype(A, /turf/open/floor)) - -#define isclosedturf(A) (istype(A, /turf/closed)) - -#define iswallturf(A) (istype(A, /turf/closed/wall)) - -#define ismineralturf(A) (istype(A, /turf/closed/mineral)) - -//Mobs -#define isliving(A) (istype(A, /mob/living)) - -#define isbrain(A) (istype(A, /mob/living/brain)) - -//Carbon mobs -#define iscarbon(A) (istype(A, /mob/living/carbon)) +// MOB HELPERS #define ishuman(A) (istype(A, /mob/living/carbon/human)) -//Human sub-species +// Human sub-species #define isabductor(A) (is_species(A, /datum/species/abductor)) #define isgolem(A) (is_species(A, /datum/species/golem)) #define islizard(A) (is_species(A, /datum/species/lizard)) @@ -41,86 +22,80 @@ #define iszombie(A) (is_species(A, /datum/species/zombie)) #define ishumanbasic(A) (is_species(A, /datum/species/human)) -//more carbon mobs #define ismonkey(A) (istype(A, /mob/living/carbon/monkey)) +#define isbrain(A) (istype(A, /mob/living/carbon/brain))//We didn't port the /mob/living/brain update, yet. + #define isalien(A) (istype(A, /mob/living/carbon/alien)) -#define islarva(A) (istype(A, /mob/living/carbon/alien/larva)) - #define isalienadult(A) (istype(A, /mob/living/carbon/alien/humanoid)) -#define isdevil(A) (istype(A, /mob/living/carbon/true_devil)) - -//Silicon mobs -#define issilicon(A) (istype(A, /mob/living/silicon)) - -#define iscyborg(A) (istype(A, /mob/living/silicon/robot)) - -#define isAI(A) (istype(A, /mob/living/silicon/ai)) - -#define ispAI(A) (istype(A, /mob/living/silicon/pai)) - -//Simple animals -#define isanimal(A) (istype(A, /mob/living/simple_animal)) - -#define isrevenant(A) (istype(A, /mob/living/simple_animal/revenant)) - -#define isborer(A) (istype(A, /mob/living/simple_animal/borer)) - -#define isbot(A) (istype(A, /mob/living/simple_animal/bot)) - -#define iscrab(A) (istype(A, /mob/living/simple_animal/crab)) - -#define isshade(A) (istype(A, /mob/living/simple_animal/shade)) - -#define ismouse(A) (istype(A, /mob/living/simple_animal/mouse)) +#define islarva(A) (istype(A, /mob/living/carbon/alien/larva)) #define isslime(A) (istype(A, /mob/living/simple_animal/slime)) -#define isdrone(A) (istype(A, /mob/living/simple_animal/drone)) +#define isrobot(A) (istype(A, /mob/living/silicon/robot)) -#define iscat(A) (istype(A, /mob/living/simple_animal/pet/cat)) - -#define isdog(A) (istype(A, /mob/living/simple_animal/pet/dog)) +#define isanimal(A) (istype(A, /mob/living/simple_animal)) #define iscorgi(A) (istype(A, /mob/living/simple_animal/pet/dog/corgi)) -#define ishostile(A) (istype(A, /mob/living/simple_animal/hostile)) +#define iscrab(A) (istype(A, /mob/living/simple_animal/crab)) + +#define iscat(A) (istype(A, /mob/living/simple_animal/pet/cat)) + +#define ismouse(A) (istype(A, /mob/living/simple_animal/mouse)) + +#define isconstruct(A) (istype(A, /mob/living/simple_animal/hostile/construct)) + +#define isclockmob(A) (istype(A, /mob/living/simple_animal/hostile/clockwork)) + +#define ismegafauna(A) (istype(A, /mob/living/simple_animal/hostile/megafauna)) + +#define isshade(A) (istype(A, /mob/living/simple_animal/shade)) #define isbear(A) (istype(A, /mob/living/simple_animal/hostile/bear)) #define iscarp(A) (istype(A, /mob/living/simple_animal/hostile/carp)) -#define isswarmer(A) (istype(A, /mob/living/simple_animal/hostile/swarmer)) - -#define isguardian(A) (istype(A, /mob/living/simple_animal/hostile/guardian)) - -#define isclockmob(A) (istype(A, /mob/living/simple_animal/hostile/clockwork)) - -#define isconstruct(A) (istype(A, /mob/living/simple_animal/hostile/construct)) - -#define ismegafauna(A) (istype(A, /mob/living/simple_animal/hostile/megafauna)) - #define isclown(A) (istype(A, /mob/living/simple_animal/hostile/retaliate/clown)) -//Misc mobs +#define isAI(A) (istype(A, /mob/living/silicon/ai)) + +#define ispAI(A) (istype(A, /mob/living/silicon/pai)) + +#define iscarbon(A) (istype(A, /mob/living/carbon)) + +#define issilicon(A) (istype(A, /mob/living/silicon)) + +#define iscyborg(A) (istype(A, /mob/living/silicon/robot)) + +#define isliving(A) (istype(A, /mob/living)) + #define isobserver(A) (istype(A, /mob/dead/observer)) #define isnewplayer(A) (istype(A, /mob/new_player)) #define isovermind(A) (istype(A, /mob/camera/blob)) -//Objects -#define isobj(A) istype(A, /obj) //override the byond proc because it returns true on children of /atom/movable that aren't objs +#define isdrone(A) (istype(A, /mob/living/simple_animal/drone)) + +#define isswarmer(A) (istype(A, /mob/living/simple_animal/hostile/swarmer)) + +#define isguardian(A) (istype(A, /mob/living/simple_animal/hostile/guardian)) + +#define ishostile(A) (istype(A, /mob/living/simple_animal/hostile)) #define islimb(A) (istype(A, /obj/item/bodypart)) -#define is_cleanable(A) (istype(A, /obj/effect/decal/cleanable) || istype(A, /obj/effect/rune)) //if something is cleanable +#define isbot(A) (istype(A, /mob/living/simple_animal/bot)) -#define isorgan(A) (istype(A, /obj/item/organ)) +#define ismovableatom(A) (istype(A, /atom/movable)) + +#define isobj(A) istype(A, /obj) //override the byond proc because it returns true on children of /atom/movable that aren't objs + +// ASSEMBLY HELPERS -//Assemblies #define isassembly(O) (istype(O, /obj/item/device/assembly)) #define isigniter(O) (istype(O, /obj/item/device/assembly/igniter)) @@ -131,4 +106,4 @@ #define issignaler(O) (istype(O, /obj/item/device/assembly/signaler)) -#define istimer(O) (istype(O, /obj/item/device/assembly/timer)) +#define istimer(O) (istype(O, /obj/item/device/assembly/timer)) \ No newline at end of file diff --git a/code/__DEFINES/layers.dm b/code/__DEFINES/layers.dm index fa040bf866..fb3b61cd80 100644 --- a/code/__DEFINES/layers.dm +++ b/code/__DEFINES/layers.dm @@ -1,16 +1,8 @@ -//Defines for atom layers and planes +//Defines for atom layers //KEEP THESE IN A NICE ACSCENDING ORDER, PLEASE -#define CLICKCATCHER_PLANE -99 - -#define PLANE_SPACE -95 -#define PLANE_SPACE_PARALLAX -90 - -#define GAME_PLANE 0 //#define TURF_LAYER 2 //For easy recordkeeping; this is a byond define -#define MID_TURF_LAYER 2.02 -#define HIGH_TURF_LAYER 2.03 -#define ABOVE_OPEN_TURF_LAYER 2.04 +#define ABOVE_OPEN_TURF_LAYER 2.01 #define CLOSED_TURF_LAYER 2.05 #define ABOVE_NORMAL_TURF_LAYER 2.08 #define LATTICE_LAYER 2.2 @@ -32,8 +24,7 @@ #define ABOVE_OBJ_LAYER 3.2 #define ABOVE_WINDOW_LAYER 3.3 #define SIGN_LAYER 3.4 -#define NOT_HIGH_OBJ_LAYER 3.5 -#define HIGH_OBJ_LAYER 3.6 +#define HIGH_OBJ_LAYER 3.5 #define BELOW_MOB_LAYER 3.7 #define LYING_MOB_LAYER 3.8 @@ -54,20 +45,13 @@ #define AREA_LAYER 10 #define MASSIVE_OBJ_LAYER 11 #define POINT_LAYER 12 - -#define LIGHTING_PLANE 15 #define LIGHTING_LAYER 15 //HUD layer defines - -#define FULLSCREEN_PLANE 18 -#define FLASH_LAYER 18 -#define FULLSCREEN_LAYER 18.1 -#define UI_DAMAGE_LAYER 18.2 -#define BLIND_LAYER 18.3 -#define CRIT_LAYER 18.4 - -#define HUD_PLANE 19 +#define FLASH_LAYER 17.9 +#define FULLSCREEN_LAYER 18 +#define UI_DAMAGE_LAYER 18.1 +#define BLIND_LAYER 18.2 +#define CRIT_LAYER 18.3 #define HUD_LAYER 19 -#define ABOVE_HUD_PLANE 20 -#define ABOVE_HUD_LAYER 20 +#define ABOVE_HUD_LAYER 19.1 diff --git a/code/__DEFINES/lighting.dm b/code/__DEFINES/lighting.dm index 1fdbfaee66..d3915d6584 100644 --- a/code/__DEFINES/lighting.dm +++ b/code/__DEFINES/lighting.dm @@ -1,16 +1,79 @@ -//Arbitrary lighting related stuff - -#define LIGHTING_CIRCULAR 1 //Comment this out to use old square lighting effects. -#define LIGHTING_CAP 10 //The lumcount level at which alpha is 0 and we're fully lit. -#define LIGHTING_CAP_FRAC (255/LIGHTING_CAP) //A precal'd variable we'll use in turf/redraw_lighting() -#define LIGHTING_ICON 'icons/effects/alphacolors.dmi' -#define LIGHTING_ICON_STATE "" -#define LIGHTING_TIME 2 //Time to do any lighting change. Actual number pulled out of my ass -#define LIGHTING_DARKEST_VISIBLE_ALPHA 250 //Anything darker than this is so dark, we'll just consider the whole tile unlit -#define LIGHTING_LUM_FOR_FULL_BRIGHT 6 //Anything who's lum is lower then this starts off less bright. -#define LIGHTING_MIN_RADIUS 4 //Lowest radius a light source can effect. +#define DYNAMIC_LIGHTING_DISABLED 0 //dynamic lighting disabled (area stays at full brightness) +#define DYNAMIC_LIGHTING_ENABLED 1 //dynamic lighting enabled +#define DYNAMIC_LIGHTING_IFSTARLIGHT 2 //dynamic lighting enabled only if starlight is. +#define IS_DYNAMIC_LIGHTING(A) ( A.dynamic_lighting == DYNAMIC_LIGHTING_IFSTARLIGHT ? config.starlight : A.dynamic_lighting ) -//different modes that lights can operate in -#define LIGHTING_REGULAR 1 //Apply all effects additively -#define LIGHTING_STARLIGHT 2 //Track all starlight but only apply brightest \ No newline at end of file +//Bay lighting engine shit, not in /code/modules/lighting because BYOND is being shit about it +#define LIGHTING_INTERVAL 5 // frequency, in 1/10ths of a second, of the lighting process + +#ifndef LIGHTING_INSTANT_UPDATES +#define LIGHTING_INTERVAL 5 // Frequency, in 1/10ths of a second, of the lighting process. +#include "../controllers/subsystem/lighting.dm" +#endif + +#define LIGHTING_FALLOFF 1 // type of falloff to use for lighting; 1 for circular, 2 for square +#define LIGHTING_LAMBERTIAN 0 // use lambertian shading for light sources +#define LIGHTING_HEIGHT 1 // height off the ground of light sources on the pseudo-z-axis, you should probably leave this alone +#define LIGHTING_ROUND_VALUE 1 / 128 //Value used to round lumcounts, values smaller than 1/255 don't matter (if they do, thanks sinking points), greater values will make lighting less precise, but in turn increase performance, VERY SLIGHTLY. + +#define LIGHTING_ICON 'icons/effects/lighting_overlay.png' // icon used for lighting shading effects + +#define LIGHTING_SOFT_THRESHOLD 0.05 // If the max of the lighting lumcounts of each spectrum drops below this, disable luminosity on the lighting overlays. + +// If I were you I'd leave this alone. +#define LIGHTING_BASE_MATRIX \ + list \ + ( \ + LIGHTING_SOFT_THRESHOLD, LIGHTING_SOFT_THRESHOLD, LIGHTING_SOFT_THRESHOLD, 0, \ + LIGHTING_SOFT_THRESHOLD, LIGHTING_SOFT_THRESHOLD, LIGHTING_SOFT_THRESHOLD, 0, \ + LIGHTING_SOFT_THRESHOLD, LIGHTING_SOFT_THRESHOLD, LIGHTING_SOFT_THRESHOLD, 0, \ + LIGHTING_SOFT_THRESHOLD, LIGHTING_SOFT_THRESHOLD, LIGHTING_SOFT_THRESHOLD, 0, \ + 0, 0, 0, 1 \ + ) \ + +// Helpers so we can (more easily) control the colour matrices. +#define CL_MATRIX_RR 1 +#define CL_MATRIX_RG 2 +#define CL_MATRIX_RB 3 +#define CL_MATRIX_RA 4 +#define CL_MATRIX_GR 5 +#define CL_MATRIX_GG 6 +#define CL_MATRIX_GB 7 +#define CL_MATRIX_GA 8 +#define CL_MATRIX_BR 9 +#define CL_MATRIX_BG 10 +#define CL_MATRIX_BB 11 +#define CL_MATRIX_BA 12 +#define CL_MATRIX_AR 13 +#define CL_MATRIX_AG 14 +#define CL_MATRIX_AB 15 +#define CL_MATRIX_AA 16 +#define CL_MATRIX_CR 17 +#define CL_MATRIX_CG 18 +#define CL_MATRIX_CB 19 +#define CL_MATRIX_CA 20 + +//Some defines to generalise colours used in lighting. +//Important note on colors. Colors can end up significantly different from the basic html picture, especially when saturated +#define LIGHT_COLOR_RED "#FA8282" //Warm but extremely diluted red. rgb(250, 130, 130) +#define LIGHT_COLOR_GREEN "#64C864" //Bright but quickly dissipating neon green. rgb(100, 200, 100) +#define LIGHT_COLOR_BLUE "#6496FA" //Cold, diluted blue. rgb(100, 150, 250) + +#define LIGHT_COLOR_CYAN "#7DE1E1" //Diluted cyan. rgb(125, 225, 225) +#define LIGHT_COLOR_PINK "#E17DE1" //Diluted, mid-warmth pink. rgb(225, 125, 225) +#define LIGHT_COLOR_YELLOW "#E1E17D" //Dimmed yellow, leaning kaki. rgb(225, 225, 125) +#define LIGHT_COLOR_BROWN "#966432" //Clear brown, mostly dim. rgb(150, 100, 50) +#define LIGHT_COLOR_ORANGE "#FA9632" //Mostly pure orange. rgb(250, 150, 50) + +//These ones aren't a direct colour like the ones above, because nothing would fit +#define LIGHT_COLOR_FIRE "#FAA019" //Warm orange color, leaning strongly towards yellow. rgb(250, 160, 25) +#define LIGHT_COLOR_FLARE "#FA644B" //Bright, non-saturated red. Leaning slightly towards pink for visibility. rgb(250, 100, 75) +#define LIGHT_COLOR_SLIME_LAMP "#AFC84B" //Weird color, between yellow and green, very slimy. rgb(175, 200, 75) +#define LIGHT_COLOR_TUNGSTEN "#FAE1AF" //Extremely diluted yellow, close to skin color (for some reason). rgb(250, 225, 175) +#define LIGHT_COLOR_HALOGEN "#F0FAFA" //Barely visible cyan-ish hue, as the doctor prescribed. rgb(240, 250, 250) + +#define FOR_DVIEW(type, range, center, invis_flags) \ + dview_mob.forceMove(center); \ + dview_mob.see_invisible = invis_flags; \ + for(type in view(range, dview_mob)) diff --git a/code/__DEFINES/machines.dm b/code/__DEFINES/machines.dm index 9df0604a7f..2180d8cb29 100644 --- a/code/__DEFINES/machines.dm +++ b/code/__DEFINES/machines.dm @@ -21,16 +21,4 @@ #define AUTOLATHE 4 //Uses glass/metal only. #define CRAFTLATHE 8 //Uses fuck if I know. For use eventually. #define MECHFAB 16 //Remember, objects utilising this flag should have construction_time and construction_cost vars. -#define BIOGENERATOR 32 //Uses biomass -#define LIMBGROWER 64 //Uses synthetic flesh -//Note: More then one of these can be added to a design but imprinter and lathe designs are incompatable. - -#define MC_CPU "CPU" -#define MC_HDD "HDD" -#define MC_SDD "SDD" -#define MC_CARD "CARD" -#define MC_NET "NET" -#define MC_PRINT "PRINT" -#define MC_CELL "CELL" -#define MC_CHARGE "CHARGE" -#define MC_AI "AI" \ No newline at end of file +//Note: More then one of these can be added to a design but imprinter and lathe designs are incompatable. \ No newline at end of file diff --git a/code/__DEFINES/misc.dm b/code/__DEFINES/misc.dm index 217aa70b6c..0d740458d1 100644 --- a/code/__DEFINES/misc.dm +++ b/code/__DEFINES/misc.dm @@ -1,10 +1,3 @@ -// Byond direction defines, because I want to put them somewhere. -// #define NORTH 1 -// #define SOUTH 2 -// #define EAST 4 -// #define WEST 8 - - #define MIDNIGHT_ROLLOVER 864000 //number of deciseconds in a day #define JANUARY 1 @@ -27,7 +20,6 @@ #define EASTER "Easter" #define HALLOWEEN "Halloween" #define CHRISTMAS "Christmas" -#define FESTIVE_SEASON "Festive Season" #define FRIDAY_13TH "Friday the 13th" //Human Overlays Indexes///////// @@ -47,14 +39,14 @@ #define GLASSES_LAYER 13 #define BELT_LAYER 12 //Possible make this an overlay of somethign required to wear a belt? #define SUIT_STORE_LAYER 11 -#define NECK_LAYER 10 -#define BACK_LAYER 9 -#define HAIR_LAYER 8 //TODO: make part of head layer? -#define FACEMASK_LAYER 7 -#define HEAD_LAYER 6 -#define HANDCUFF_LAYER 5 -#define LEGCUFF_LAYER 4 -#define HANDS_LAYER 3 +#define BACK_LAYER 10 +#define HAIR_LAYER 9 //TODO: make part of head layer? +#define FACEMASK_LAYER 8 +#define HEAD_LAYER 7 +#define HANDCUFF_LAYER 6 +#define LEGCUFF_LAYER 5 +#define L_HAND_LAYER 4 +#define R_HAND_LAYER 3 //Having the two hands seperate seems rather silly, merge them together? It'll allow for code to be reused on mobs with arbitarily many hands #define BODY_FRONT_LAYER 2 #define FIRE_LAYER 1 //If you're on fire #define TOTAL_LAYERS 26 //KEEP THIS UP-TO-DATE OR SHIT WILL BREAK ;_; @@ -83,7 +75,8 @@ #define UNDER_HEAD_LAYER HEAD_LAYER+1 #define UNDER_HANDCUFF_LAYER HANDCUFF_LAYER+1 #define UNDER_LEGCUFF_LAYER LEGCUFF_LAYER+1 -#define UNDER_HANDS_LAYER HANDS_LAYER+1 +#define UNDER_L_HAND_LAYER L_HAND_LAYER+1 +#define UNDER_R_HAND_LAYER R_HAND_LAYER+1 #define UNDER_BODY_FRONT_LAYER BODY_FRONT_LAYER+1 #define UNDER_FIRE_LAYER FIRE_LAYER+1 @@ -109,7 +102,8 @@ #define ABOVE_HEAD_LAYER HEAD_LAYER-1 #define ABOVE_HANDCUFF_LAYER HANDCUFF_LAYER-1 #define ABOVE_LEGCUFF_LAYER LEGCUFF_LAYER-1 -#define ABOVE_HANDS_LAYER HANDS_LAYER-1 +#define ABOVE_L_HAND_LAYER L_HAND_LAYER-1 +#define ABOVE_R_HAND_LAYER R_HAND_LAYER-1 #define ABOVE_BODY_FRONT_LAYER BODY_FRONT_LAYER-1 #define ABOVE_FIRE_LAYER FIRE_LAYER-1 @@ -151,7 +145,6 @@ #define CLICK_CD_MELEE 8 #define CLICK_CD_RANGE 4 -#define CLICK_CD_RAPID 2 #define CLICK_CD_CLICK_ABILITY 6 #define CLICK_CD_BREAKOUT 100 #define CLICK_CD_HANDCUFFED 10 @@ -314,14 +307,6 @@ var/list/bloody_footprints_cache = list() #define POLLTYPE_MULTI "MULTICHOICE" #define POLLTYPE_IRV "IRV" - - -//lighting area defines -#define DYNAMIC_LIGHTING_DISABLED 0 //dynamic lighting disabled (area stays at full brightness) -#define DYNAMIC_LIGHTING_ENABLED 1 //dynamic lighting enabled -#define DYNAMIC_LIGHTING_IFSTARLIGHT 2 //dynamic lighting enabled only if starlight is. -#define IS_DYNAMIC_LIGHTING(A) ( A.lighting_use_dynamic == DYNAMIC_LIGHTING_IFSTARLIGHT ? config.starlight : A.lighting_use_dynamic ) - //subtypesof(), typesof() without the parent path #define subtypesof(typepath) ( typesof(typepath) - typepath ) @@ -342,15 +327,12 @@ var/list/bloody_footprints_cache = list() #define SENTIENCE_MINEBOT 4 #define SENTIENCE_BOSS 5 +//Fire stuff, for burn_state +#define LAVA_PROOF -2 +#define FIRE_PROOF -1 +#define FLAMMABLE 0 +#define ON_FIRE 1 -//Fire and Acid stuff, for resistance_flags -#define LAVA_PROOF 1 -#define FIRE_PROOF 2 //100% immune to fire damage (but not necessarily to lava or heat) -#define FLAMMABLE 4 -#define ON_FIRE 8 -#define UNACIDABLE 16 //acid can't even appear on it, let alone melt it. -#define ACID_PROOF 32 //acid stuck on it doesn't melt it. -#define INDESTRUCTIBLE 64 //doesn't take damage //Ghost orbit types: #define GHOST_ORBIT_CIRCLE "circle" @@ -427,6 +409,12 @@ var/global/list/ghost_others_options = list(GHOST_OTHERS_SIMPLE, GHOST_OTHERS_DE #define TRIGGER_GUARD_NONE 0 #define TRIGGER_GUARD_NORMAL 1 +// Plant types +#define PLANT_NORMAL 0 +#define PLANT_WEED 1 +#define PLANT_MUSHROOM 2 +#define PLANT_ALIEN 3 + // Maploader bounds indices #define MAP_MINX 1 #define MAP_MINY 2 @@ -440,9 +428,6 @@ var/global/list/ghost_others_options = list(GHOST_OTHERS_SIMPLE, GHOST_OTHERS_DE // Evil narsie colour #define NARSIE_WINDOW_COLOUR "#7D1919" -//let's just pretend fulltile windows being children of border windows is fine -#define FULLTILE_WINDOW_DIR NORTHEAST - // Defib stats #define DEFIB_TIME_LIMIT 120 #define DEFIB_TIME_LOSS 60 @@ -484,6 +469,7 @@ var/global/list/ghost_others_options = list(GHOST_OTHERS_SIMPLE, GHOST_OTHERS_DE #define STORAGE_VIEW_DEPTH 2 + // Medal names #define BOSS_KILL_MEDAL "Killer" @@ -496,128 +482,5 @@ var/global/list/ghost_others_options = list(GHOST_OTHERS_SIMPLE, GHOST_OTHERS_DE #define COLOSSUS_SCORE "Colossus Killed" #define BUBBLEGUM_SCORE "Bubblegum Killed" #define DRAKE_SCORE "Drakes Killed" -#define BIRD_SCORE "Hierophants Killed" -#define SWARMER_BEACON_SCORE "Swarmer Beacons Killed" #define BOSS_SCORE "Bosses Killed" #define TENDRIL_CLEAR_SCORE "Tendrils Killed" - - - - // NTNet module-configuration values. Do not change these. If you need to add another use larger number (5..6..7 etc) -#define NTNET_SOFTWAREDOWNLOAD 1 // Downloads of software from NTNet -#define NTNET_PEERTOPEER 2 // P2P transfers of files between devices -#define NTNET_COMMUNICATION 3 // Communication (messaging) -#define NTNET_SYSTEMCONTROL 4 // Control of various systems, RCon, air alarm control, etc. - -// NTNet transfer speeds, used when downloading/uploading a file/program. -#define NTNETSPEED_LOWSIGNAL 0.5 // GQ/s transfer speed when the device is wirelessly connected and on Low signal -#define NTNETSPEED_HIGHSIGNAL 1 // GQ/s transfer speed when the device is wirelessly connected and on High signal -#define NTNETSPEED_ETHERNET 2 // GQ/s transfer speed when the device is using wired connection - - -// Program bitflags -#define PROGRAM_ALL 7 -#define PROGRAM_CONSOLE 1 -#define PROGRAM_LAPTOP 2 -#define PROGRAM_TABLET 4 - -#define PROGRAM_STATE_KILLED 0 -#define PROGRAM_STATE_BACKGROUND 1 -#define PROGRAM_STATE_ACTIVE 2 - -// Caps for NTNet logging. Less than 10 would make logging useless anyway, more than 500 may make the log browser too laggy. Defaults to 100 unless user changes it. -#define MAX_NTNET_LOGS 300 -#define MIN_NTNET_LOGS 10 -//TODO Move to a pref -#define STATION_GOAL_BUDGET 1 - -//Luma coefficients suggested for HDTVs. If you change these, make sure they add up to 1. -#define LUMA_R 0.213 -#define LUMA_G 0.715 -#define LUMA_B 0.072 - - -//attack visual effects -#define ATTACK_EFFECT_PUNCH "punch" -#define ATTACK_EFFECT_KICK "kick" -#define ATTACK_EFFECT_SMASH "smash" -#define ATTACK_EFFECT_CLAW "claw" -#define ATTACK_EFFECT_DISARM "disarm" -#define ATTACK_EFFECT_BITE "bite" -#define ATTACK_EFFECT_MECHFIRE "mech_fire" -#define ATTACK_EFFECT_MECHTOXIN "mech_toxin" -#define ATTACK_EFFECT_BOOP "boop" //Honk - - -//different types of atom colorations -#define ADMIN_COLOUR_PRIORITY 1 //only used by rare effects like greentext coloring mobs and when admins varedit color -#define TEMPORARY_COLOUR_PRIORITY 2 //e.g. purple effect of the revenant on a mob, black effect when mob electrocuted -#define WASHABLE_COLOUR_PRIORITY 3 //color splashed onto an atom (e.g. paint on turf) -#define FIXED_COLOUR_PRIORITY 4 //color inherent to the atom (e.g. blob color) -#define COLOUR_PRIORITY_AMOUNT 4 //how many priority levels there are. - -// w_class (weight class) -#define WEIGHT_CLASS_TINY 1 // Usually items smaller then a human hand -#define WEIGHT_CLASS_SMALL 2 // Pockets can hold small and tiny items -#define WEIGHT_CLASS_NORMAL 3 // Standard backpacks can carry tiny, small & normal items -#define WEIGHT_CLASS_BULKY 4 // Items that can be weilded or equipped but not stored in an inventory -#define WEIGHT_CLASS_HUGE 5 // Usually represents objects that require two hands to operate -#define WEIGHT_CLASS_GIGANTIC 6 // Essentially means it cannot be picked up or placed in an inventory - -// Examples of tiny items: Playing Cards, Lighter, Scalpel, Coins/Money -// Examples of small items: Flashlight, Multitool, Grenades, GPS Device -// Examples of normal items: Fire extinguisher, Stunbaton, Gas Mask, Metal Sheets -// Examples of bulky items: Defibrillator, Backpack, Space Suits -// Examples of huge items: Shotgun, Two Handed Melee Weapons -// Examples of gigantic items: Mech Parts, Safe - -// m_intent -#define MOVE_INTENT_WALK "walk" -#define MOVE_INTENT_RUN "run" - -//Endgame Results - -#define NUKE_NEAR_MISS 1 -#define NUKE_MISS_STATION 2 -#define NUKE_SYNDICATE_BASE 3 -#define STATION_DESTROYED_NUKE 4 -#define STATION_EVACUATED 5 -#define GANG_LOSS 6 -#define GANG_TAKEOVER 7 -#define BLOB_WIN 8 -#define BLOB_NUKE 9 -#define BLOB_DESTROYED 10 -#define CULT_ESCAPE 11 -#define CULT_FAILURE 12 -#define CULT_SUMMON 13 -#define NUKE_MISS 14 -#define OPERATIVES_KILLED 15 -#define OPERATIVE_SKIRMISH 16 -#define REVS_WIN 17 -#define REVS_LOSE 18 -#define WIZARD_KILLED 19 -#define STATION_NUKED 20 -#define CLOCK_SUMMON 21 -#define CLOCK_SILICONS 22 -#define CLOCK_PROSELYTIZATION 23 -#define SHUTTLE_HIJACK 24 - -//For SSTimer - -#define TIMER_NORMAL "normal" -#define TIMER_UNIQUE "unique" - -// Ventcrawling -#define VENTCRAWLER_NONE 0 -#define VENTCRAWLER_NUDE 1 -#define VENTCRAWLER_ALWAYS 2 - -// Intent -#define INTENT_HELP "help" -#define INTENT_GRAB "grab" -#define INTENT_DISARM "disarm" -#define INTENT_HARM "harm" -// NOTE: INTENT_HOTKEY_* defines are not actual intents! -// they are here to support hotkeys -#define INTENT_HOTKEY_LEFT "left" -#define INTENT_HOTKEY_RIGHT "right" diff --git a/code/__DEFINES/pinpointers.dm b/code/__DEFINES/pinpointers.dm deleted file mode 100644 index 80403e54de..0000000000 --- a/code/__DEFINES/pinpointers.dm +++ /dev/null @@ -1,7 +0,0 @@ -//I would rather have these in pinpointer.dm, but Malf_Modules.dm is loaded before that file so they need to be here. -#define TRACK_NUKE_DISK 1 //We track the nuclear authentication disk, either to protect it or steal it -#define TRACK_MALF_AI 2 //We track the malfunctioning AI, so we can prevent it from blowing us all up -#define TRACK_INFILTRATOR 3 //We track the Syndicate infiltrator, so we can get back to ship when the nuke's armed -#define TRACK_OPERATIVES 4 //We track the closest operative, so we can regroup when we need to -#define TRACK_ATOM 5 //We track a specified atom, so admins can make us function for events -#define TRACK_COORDINATES 6 //We point towards the specified coordinates on our z-level, so we can navigate diff --git a/code/__DEFINES/pipe_construction.dm b/code/__DEFINES/pipe_construction.dm index 84c4563bf2..f19c19824a 100644 --- a/code/__DEFINES/pipe_construction.dm +++ b/code/__DEFINES/pipe_construction.dm @@ -38,21 +38,4 @@ Construction breaks otherwise #define DISP_END_OUTLET 7 #define DISP_END_CHUTE 8 #define DISP_SORTJUNCTION 9 -#define DISP_SORTJUNCTION_FLIP 10 - -//Transit tubes -#define TRANSIT_TUBE_STRAIGHT 0 -#define TRANSIT_TUBE_STRAIGHT_CROSSING 1 -#define TRANSIT_TUBE_CURVED 2 -#define TRANSIT_TUBE_DIAGONAL 3 -#define TRANSIT_TUBE_DIAGONAL_CROSSING 4 -#define TRANSIT_TUBE_JUNCTION 5 -#define TRANSIT_TUBE_STATION 6 -#define TRANSIT_TUBE_TERMINUS 7 -#define TRANSIT_TUBE_POD 8 - -//the open status of the transit tube station -#define STATION_TUBE_OPEN 0 -#define STATION_TUBE_OPENING 1 -#define STATION_TUBE_CLOSED 2 -#define STATION_TUBE_CLOSING 3 \ No newline at end of file +#define DISP_SORTJUNCTION_FLIP 10 \ No newline at end of file diff --git a/code/__DEFINES/preferences.dm b/code/__DEFINES/preferences.dm index 5a9f36674a..ec4017088c 100644 --- a/code/__DEFINES/preferences.dm +++ b/code/__DEFINES/preferences.dm @@ -28,15 +28,7 @@ #define CHAT_GHOSTWHISPER 128 #define CHAT_GHOSTPDA 256 #define CHAT_GHOSTRADIO 512 +#define CHAT_LOOC 1024 -#define TOGGLES_DEFAULT_CHAT (CHAT_OOC|CHAT_DEAD|CHAT_GHOSTEARS|CHAT_GHOSTSIGHT|CHAT_PRAYER|CHAT_RADIO|CHAT_PULLR|CHAT_GHOSTWHISPER|CHAT_GHOSTPDA|CHAT_GHOSTRADIO) +#define TOGGLES_DEFAULT_CHAT (CHAT_OOC|CHAT_DEAD|CHAT_GHOSTEARS|CHAT_GHOSTSIGHT|CHAT_PRAYER|CHAT_RADIO|CHAT_PULLR|CHAT_GHOSTWHISPER|CHAT_GHOSTPDA|CHAT_GHOSTRADIO|CHAT_LOOC) -#define PARALLAX_INSANE -1 //for show offs -#define PARALLAX_HIGH 0 //default. -#define PARALLAX_MED 1 -#define PARALLAX_LOW 2 -#define PARALLAX_DISABLE 3 //this option must be the highest number - -#define PARALLAX_DELAY_DEFAULT world.tick_lag -#define PARALLAX_DELAY_MED 1 -#define PARALLAX_DELAY_LOW 2 \ No newline at end of file diff --git a/code/__DEFINES/qdel.dm b/code/__DEFINES/qdel.dm index 8358df737e..78c0b532bd 100644 --- a/code/__DEFINES/qdel.dm +++ b/code/__DEFINES/qdel.dm @@ -12,5 +12,4 @@ //defines for the gc_destroyed var #define GC_QUEUED_FOR_QUEUING -1 -#define GC_QUEUED_FOR_HARD_DEL -2 -#define GC_CURRENTLY_BEING_QDELETED -3 +#define GC_QUEUED_FOR_HARD_DEL -2 \ No newline at end of file diff --git a/code/__DEFINES/role_preferences.dm b/code/__DEFINES/role_preferences.dm index 94995eeb23..2427c1cc17 100644 --- a/code/__DEFINES/role_preferences.dm +++ b/code/__DEFINES/role_preferences.dm @@ -21,9 +21,10 @@ #define ROLE_GANG "gangster" #define ROLE_ABDUCTOR "abductor" #define ROLE_REVENANT "revenant" +#define ROLE_HOG_GOD "hand of god: god" +#define ROLE_HOG_CULTIST "hand of god: cultist" #define ROLE_DEVIL "devil" #define ROLE_SERVANT_OF_RATVAR "servant of Ratvar" -#define ROLE_BORER "borer" //Missing assignment means it's not a gamemode specific role, IT'S NOT A BUG OR ERROR. //The gamemode specific ones are just so the gamemodes can query whether a player is old enough @@ -44,12 +45,8 @@ var/global/list/special_roles = list( ROLE_GANG = /datum/game_mode/gang, ROLE_REVENANT, ROLE_ABDUCTOR = /datum/game_mode/abduction, + ROLE_HOG_GOD = /datum/game_mode/hand_of_god, + ROLE_HOG_CULTIST = /datum/game_mode/hand_of_god, ROLE_DEVIL = /datum/game_mode/devil, ROLE_SERVANT_OF_RATVAR = /datum/game_mode/clockwork_cult, - ROLE_BORER, ) - -//Job defines for what happens when you fail to qualify for any job during job selection -#define BEASSISTANT 1 -#define BERANDOMJOB 2 -#define RETURNTOLOBBY 3 \ No newline at end of file diff --git a/code/__DEFINES/say.dm b/code/__DEFINES/say.dm index 070837bee9..226bfee631 100644 --- a/code/__DEFINES/say.dm +++ b/code/__DEFINES/say.dm @@ -24,7 +24,6 @@ #define SPAN_PAPYRUS "papyrus" #define SPAN_REALLYBIG "reallybig" #define SPAN_COMMAND "command_headset" -#define SPAN_CLOWN "clown" //bitflag #defines for return value of the radio() proc. #define ITALICS 1 diff --git a/code/__DEFINES/shuttles.dm b/code/__DEFINES/shuttles.dm index a9c14bdd5c..7fbaf6d8c9 100644 --- a/code/__DEFINES/shuttles.dm +++ b/code/__DEFINES/shuttles.dm @@ -1,19 +1,17 @@ //shuttle mode defines -#define SHUTTLE_IDLE "idle" -#define SHUTTLE_IGNITING "igniting" -#define SHUTTLE_RECALL "recall" -#define SHUTTLE_CALL "call" -#define SHUTTLE_DOCKED "docked" -#define SHUTTLE_STRANDED "stranded" -#define SHUTTLE_ESCAPE "escape" -#define SHUTTLE_ENDGAME "endgame: game over" +#define SHUTTLE_IDLE 0 +#define SHUTTLE_RECALL 1 +#define SHUTTLE_CALL 2 +#define SHUTTLE_DOCKED 3 +#define SHUTTLE_STRANDED 4 +#define SHUTTLE_ESCAPE 5 +#define SHUTTLE_ENDGAME 6 #define EMERGENCY_IDLE_OR_RECALLED (SSshuttle.emergency && ((SSshuttle.emergency.mode == SHUTTLE_IDLE) || (SSshuttle.emergency.mode == SHUTTLE_RECALL))) #define EMERGENCY_ESCAPED_OR_ENDGAMED (SSshuttle.emergency && ((SSshuttle.emergency.mode == SHUTTLE_ESCAPE) || (SSshuttle.emergency.mode == SHUTTLE_ENDGAME))) #define EMERGENCY_AT_LEAST_DOCKED (SSshuttle.emergency && SSshuttle.emergency.mode != SHUTTLE_IDLE && SSshuttle.emergency.mode != SHUTTLE_RECALL && SSshuttle.emergency.mode != SHUTTLE_CALL) // Shuttle return values -#define SHUTTLE_CAN_DOCK "can_dock" #define SHUTTLE_NOT_A_DOCKING_PORT "not_a_docking_port" #define SHUTTLE_DWIDTH_TOO_LARGE "docking_width_too_large" #define SHUTTLE_WIDTH_TOO_LARGE "width_too_large" @@ -31,11 +29,3 @@ // Ripples, effects that signal a shuttle's arrival #define SHUTTLE_RIPPLE_TIME 100 #define SHUTTLE_RIPPLE_FADEIN 50 - -#define TRANSIT_REQUEST 1 -#define TRANSIT_READY 2 -#define TRANSIT_FULL 3 - -#define SHUTTLE_TRANSIT_BORDER 8 - -#define PARALLAX_LOOP_TIME 25 \ No newline at end of file diff --git a/code/__DEFINES/stat.dm b/code/__DEFINES/stat.dm index e2cf5d5dd7..9711fa9ff1 100644 --- a/code/__DEFINES/stat.dm +++ b/code/__DEFINES/stat.dm @@ -24,8 +24,3 @@ #define POWEROFF 4 // tbd #define MAINT 8 // under maintaince #define EMPED 16 // temporary broken by EMP pulse - -//ai power requirement defines -#define POWER_REQ_NONE 0 -#define POWER_REQ_ALL 1 -#define POWER_REQ_CLOCKCULT 2 diff --git a/code/__DEFINES/status_effects.dm b/code/__DEFINES/status_effects.dm deleted file mode 100644 index e80157fa63..0000000000 --- a/code/__DEFINES/status_effects.dm +++ /dev/null @@ -1,21 +0,0 @@ - -//These are all the different status effects. Use the paths for each effect in the defines. - -#define BASIC_STATUS_EFFECT /datum/status_effect //Has no effect. - -/////////// -// BUFFS // -/////////// - -#define STATUS_EFFECT_SHADOW_MEND /datum/status_effect/shadow_mend //Quick, powerful heal that deals damage afterwards. Heals 15 brute/burn every second for 3 seconds. -#define STATUS_EFFECT_VOID_PRICE /datum/status_effect/void_price //The price of healing yourself with void energy. Deals 3 brute damage every 3 seconds for 30 seconds. - -#define STATUS_EFFECT_VANGUARD /datum/status_effect/vanguard_shield //Grants temporary stun absorption, but will stun the user based on how many stuns they absorbed. -#define STATUS_EFFECT_INATHNEQS_ENDOWMENT /datum/status_effect/inathneqs_endowment //A 15-second invulnerability and stun absorption, granted by Inath-neq. -#define STATUS_EFFECT_WRAITHSPECS /datum/status_effect/wraith_spectacles - -#define STATUS_EFFECT_POWERREGEN /datum/status_effect/cyborg_power_regen //Regenerates power on a given cyborg over time - -///////////// -// DEBUFFS // -///////////// diff --git a/code/__DEFINES/tablecrafting.dm b/code/__DEFINES/tablecrafting.dm index a5dc040cc7..cfe3f8cb38 100644 --- a/code/__DEFINES/tablecrafting.dm +++ b/code/__DEFINES/tablecrafting.dm @@ -3,18 +3,6 @@ #define CAT_WEAPON "Weaponry" #define CAT_AMMO "Ammunition" #define CAT_ROBOT "Robots" +#define CAT_FOOD "Food" #define CAT_MISC "Misc" -#define CAT_PRIMAL "Tribal" -#define CAT_BREAD "Breads" -#define CAT_BURGER "Burgers" -#define CAT_CAKE "Cakes" -#define CAT_EGG "Egg-Based Food" -#define CAT_MEAT "Meats" -#define CAT_MISCFOOD "Misc. Food" -#define CAT_PASTRY "Pastries" -#define CAT_PIE "Pies" -#define CAT_PIZZA "Pizzas" -#define CAT_SALAD "Salads" -#define CAT_SANDWICH "Sandwiches" -#define CAT_SOUP "Soups" -#define CAT_SPAGHETTI "Spaghettis" +#define CAT_PRIMAL "Tribal" \ No newline at end of file diff --git a/code/__DEFINES/tick.dm b/code/__DEFINES/tick.dm index 03ba94a8b3..04e333fc95 100644 --- a/code/__DEFINES/tick.dm +++ b/code/__DEFINES/tick.dm @@ -1,7 +1,7 @@ -#define TICK_LIMIT_RUNNING 80 -#define TICK_LIMIT_TO_RUN 78 -#define TICK_LIMIT_MC 70 -#define TICK_LIMIT_MC_INIT 98 +#define TICK_LIMIT_RUNNING 85 +#define TICK_LIMIT_TO_RUN 80 +#define TICK_LIMIT_MC 84 +#define TICK_LIMIT_MC_INIT 100 #define TICK_CHECK ( world.tick_usage > CURRENT_TICKLIMIT ? stoplag() : 0 ) #define CHECK_TICK if (world.tick_usage > CURRENT_TICKLIMIT) stoplag() diff --git a/code/__DEFINES/typeids.dm b/code/__DEFINES/typeids.dm deleted file mode 100644 index ae5df258b4..0000000000 --- a/code/__DEFINES/typeids.dm +++ /dev/null @@ -1,8 +0,0 @@ -//Byond type ids -#define TYPEID_NULL "0" -#define TYPEID_NORMAL_LIST "f" -//helper macros -#define GET_TYPEID(ref) ( ( (lentext(ref) <= 10) ? "TYPEID_NULL" : copytext(ref, 4, lentext(ref)-6) ) ) -#define IS_NORMAL_LIST(L) (GET_TYPEID("\ref[L]") == TYPEID_NORMAL_LIST) - - diff --git a/code/__DEFINES/vv.dm b/code/__DEFINES/vv.dm deleted file mode 100644 index 807e5187b0..0000000000 --- a/code/__DEFINES/vv.dm +++ /dev/null @@ -1,21 +0,0 @@ -#define VV_NUM "Number" -#define VV_TEXT "Text" -#define VV_MESSAGE "Mutiline Text" -#define VV_ICON "Icon" -#define VV_ATOM_REFERENCE "Atom Reference" -#define VV_DATUM_REFERENCE "Datum Reference" -#define VV_MOB_REFERENCE "Mob Reference" -#define VV_CLIENT "Client" -#define VV_ATOM_TYPE "Atom Typepath" -#define VV_DATUM_TYPE "Datum Typepath" -#define VV_TYPE "Custom Typepath" -#define VV_FILE "File" -#define VV_LIST "List" -#define VV_NEW_ATOM "New Atom" -#define VV_NEW_DATUM "New Datum" -#define VV_NEW_TYPE "New Custom Typepath" -#define VV_NEW_LIST "New List" -#define VV_NULL "NULL" -#define VV_RESTORE_DEFAULT "Restore to Default" -#define VV_MARKED_DATUM "Marked Datum" - diff --git a/code/__DEFINES/wires.dm b/code/__DEFINES/wires.dm index d9bbff0b5f..8f863cd0ab 100644 --- a/code/__DEFINES/wires.dm +++ b/code/__DEFINES/wires.dm @@ -1,45 +1,44 @@ -#define WIRE_DUD_PREFIX "__dud" -#define WIRE_ACTIVATE "Activate" -#define WIRE_AI "AI Connection" -#define WIRE_ALARM "Alarm" -#define WIRE_AVOIDANCE "Avoidance" -#define WIRE_BACKUP1 "Auxillary Power 1" -#define WIRE_BACKUP2 "Auxillary Power 2" -#define WIRE_BEACON "Beacon" -#define WIRE_BOLTS "Bolts" -#define WIRE_BOOM "Boom" -#define WIRE_CAMERA "Camera" -#define WIRE_CONTRABAND "Contraband" -#define WIRE_DELAY "Delay" -#define WIRE_DISABLE "Disable" -#define WIRE_DISARM "Disarm" -#define WIRE_HACK "Hack" -#define WIRE_IDSCAN "ID Scan" -#define WIRE_INTERFACE "Interface" -#define WIRE_LAWSYNC "AI Law Synchronization" -#define WIRE_LIGHT "Bolt Lights" -#define WIRE_LIMIT "Limiter" -#define WIRE_LOADCHECK "Load Check" -#define WIRE_LOCKDOWN "Lockdown" -#define WIRE_MOTOR1 "Motor 1" -#define WIRE_MOTOR2 "Motor 2" -#define WIRE_OPEN "Open" -#define WIRE_PANIC "Panic Siphon" -#define WIRE_POWER "Power" -#define WIRE_POWER1 "Main Power 1" -#define WIRE_POWER2 "Main Power 2" -#define WIRE_PROCEED "Proceed" -#define WIRE_RX "Recieve" -#define WIRE_RESET_MODULE "Reset Module" -#define WIRE_SAFETY "Safety" -#define WIRE_SHOCK "High Voltage Ground" -#define WIRE_SIGNAL "Signal" -#define WIRE_SPEAKER "Speaker" -#define WIRE_STRENGTH "Strength" -#define WIRE_THROW "Throw" -#define WIRE_TIMING "Timing" -#define WIRE_TX "Transmit" -#define WIRE_UNBOLT "Unbolt" -#define WIRE_ZAP "High Voltage Circuit" -#define WIRE_ZAP1 "High Voltage Circuit 1" -#define WIRE_ZAP2 "High Voltage Circuit 2" +#define WIRE_ACTIVATE "activate" +#define WIRE_AI "ai" +#define WIRE_ALARM "alarm" +#define WIRE_AVOIDANCE "avoidance" +#define WIRE_BACKUP1 "backup1" +#define WIRE_BACKUP2 "backup2" +#define WIRE_BEACON "beacon" +#define WIRE_BOLTS "bolts" +#define WIRE_BOOM "boom" +#define WIRE_CAMERA "camera" +#define WIRE_CONTRABAND "contraband" +#define WIRE_DELAY "delay" +#define WIRE_DISABLE "disable" +#define WIRE_DISARM "disarm" +#define WIRE_ELECTRIFY "electrify" +#define WIRE_HACK "hack" +#define WIRE_IDSCAN "idscan" +#define WIRE_INTERFACE "interface" +#define WIRE_LAWSYNC "lawsync" +#define WIRE_LIGHT "light" +#define WIRE_LIMIT "limit" +#define WIRE_LOADCHECK "loadcheck" +#define WIRE_LOCKDOWN "lockdown" +#define WIRE_MOTOR1 "motor1" +#define WIRE_MOTOR2 "motor2" +#define WIRE_OPEN "open" +#define WIRE_PANIC "panic" +#define WIRE_POWER "power" +#define WIRE_POWER1 "power1" +#define WIRE_POWER2 "power2" +#define WIRE_PROCEED "proceed" +#define WIRE_RX "recieve" +#define WIRE_SAFETY "safety" +#define WIRE_SHOCK "shock" +#define WIRE_SIGNAL "signal" +#define WIRE_SPEAKER "speaker" +#define WIRE_STRENGTH "strength" +#define WIRE_THROW "throw" +#define WIRE_TIMING "timing" +#define WIRE_TX "transmit" +#define WIRE_UNBOLT "unbolt" +#define WIRE_ZAP "zap" +#define WIRE_ZAP1 "zap1" +#define WIRE_ZAP2 "zap2" diff --git a/code/__HELPERS/_logging.dm b/code/__HELPERS/_logging.dm index b6f7407e3f..a23204ac5d 100644 --- a/code/__HELPERS/_logging.dm +++ b/code/__HELPERS/_logging.dm @@ -22,7 +22,7 @@ /proc/log_adminsay(text) if (config.log_adminchat) log_admin("ASAY: [text]") - + /proc/log_dsay(text) if (config.log_adminchat) log_admin("DSAY: [text]") @@ -76,6 +76,3 @@ //reusing the PDA option because I really don't think news comments are worth a config option diary << "\[[time_stamp()]]COMMENT: [text]" -/proc/log_chat(text) - if (config.log_pda) - diary << "\[[time_stamp()]]CHAT: [text]" \ No newline at end of file diff --git a/code/__HELPERS/bandetect.dm b/code/__HELPERS/bandetect.dm index 61698c54d8..97c7e1567c 100644 --- a/code/__HELPERS/bandetect.dm +++ b/code/__HELPERS/bandetect.dm @@ -10,8 +10,6 @@ if(query.NextRow()) var/diff = text2num(query.item[1]) - if(config.use_account_age_for_jobs) - player_age = max(0,diff) //So job code soesn't freak out if they are time traveling. if(diff < YOUNG) var/msg = "(IP: [address], ID: [computer_id]) is a new BYOND account made on [y]-[m]-[d]." if(diff < 0) diff --git a/code/__HELPERS/cmp.dm b/code/__HELPERS/cmp.dm index 1cad2a5e5e..54cdc9bb8c 100644 --- a/code/__HELPERS/cmp.dm +++ b/code/__HELPERS/cmp.dm @@ -41,7 +41,4 @@ var/cmp_field = "name" return a.priority - b.priority /proc/cmp_clientcolour_priority(datum/client_colour/A, datum/client_colour/B) - return B.priority - A.priority - -/proc/cmp_clockscripture_priority(datum/clockwork_scripture/A, datum/clockwork_scripture/B) - return initial(A.sort_priority) - initial(B.sort_priority) \ No newline at end of file + return B.priority - A.priority \ No newline at end of file diff --git a/code/__HELPERS/game.dm b/code/__HELPERS/game.dm index fd25bc68b6..ac32632559 100644 --- a/code/__HELPERS/game.dm +++ b/code/__HELPERS/game.dm @@ -13,17 +13,13 @@ for(A, A && !isarea(A), A=A.loc); //semicolon is for the empty statement return A -/proc/get_area_name(atom/X) - var/area/Y = get_area(X) - return Y.name - /proc/get_area_master(O) var/area/A = get_area(O) if(A && A.master) A = A.master return A -/proc/get_area_by_name(N) //get area by its name +/proc/get_area_name(N) //get area by its name for(var/area/A in world) if(A.name == N) return A @@ -348,9 +344,9 @@ continue else if(afk_check && M.client.is_afk()) continue - else if(human_check && !ishuman(M)) + else if(human_check && !istype(M, /mob/living/carbon/human)) continue - else if(isnewplayer(M)) // exclude people in the lobby + else if(istype(M, /mob/new_player)) // exclude people in the lobby continue else if(isobserver(M)) // Ghosts are fine if they were playing once (didn't start as observers) var/mob/dead/observer/O = M @@ -397,14 +393,14 @@ return new /datum/projectile_data(src_x, src_y, time, distance, power_x, power_y, dest_x, dest_y) -/proc/pollCandidates(var/Question, var/jobbanType, var/datum/game_mode/gametypeCheck, var/be_special_flag = 0, var/poll_time = 300, var/ignore_category = null) +/proc/pollCandidates(var/Question, var/jobbanType, var/datum/game_mode/gametypeCheck, var/be_special_flag = 0, var/poll_time = 300) var/list/mob/dead/observer/candidates = list() var/time_passed = world.time if (!Question) Question = "Would you like to be a special role?" for(var/mob/dead/observer/G in player_list) - if(!G.key || !G.client || (ignore_category && poll_ignore[ignore_category] && G.ckey in poll_ignore[ignore_category])) + if(!G.key || !G.client) continue if(be_special_flag) if(!(G.client.prefs) || !(be_special_flag in G.client.prefs.be_special)) @@ -417,7 +413,7 @@ continue spawn(0) G << 'sound/misc/notice2.ogg' //Alerting them to their consideration - switch(ignore_category ? askuser(G,Question,"Please answer in [poll_time/10] seconds!","Yes","No","Never for this round", StealFocus=0, Timeout=poll_time) : askuser(G,Question,"Please answer in [poll_time/10] seconds!","Yes","No", StealFocus=0, Timeout=poll_time)) + switch(askuser(G,Question,"Please answer in [poll_time/10] seconds!","Yes","No", StealFocus=0, Timeout=poll_time)) if(1) G << "Choice registered: Yes." if((world.time-time_passed)>poll_time) @@ -427,12 +423,6 @@ candidates += G if(2) G << "Choice registered: No." - if(3) - var/list/L = poll_ignore[ignore_category] - if(!L) - poll_ignore[ignore_category] = list() - poll_ignore[ignore_category] += G.ckey - G << "Choice registered: Never for this round." sleep(poll_time) //Check all our candidates, to make sure they didn't log off during the wait period. @@ -442,23 +432,6 @@ return candidates -/proc/pollCandidatesForMob(Question, jobbanType, datum/game_mode/gametypeCheck, be_special_flag = 0, poll_time = 300, mob/M, ignore_category = null) - var/list/L = pollCandidates(Question, jobbanType, gametypeCheck, be_special_flag, poll_time, ignore_category) - if(!M || qdeleted(M) || !M.loc) - return list() - return L - -/proc/pollCandidatesForMobs(Question, jobbanType, datum/game_mode/gametypeCheck, be_special_flag = 0, poll_time = 300, list/mobs, ignore_category = null) - var/list/L = pollCandidates(Question, jobbanType, gametypeCheck, be_special_flag, poll_time, ignore_category) - var/i=1 - for(var/v in mobs) - var/atom/A = v - if(!A || qdeleted(A) || !A.loc) - mobs.Cut(i,i+1) - else - ++i - return L - /proc/makeBody(mob/dead/observer/G_found) // Uses stripped down and bastardized code from respawn character if(!G_found || !G_found.key) return @@ -471,13 +444,3 @@ new_character.key = G_found.key return new_character - -/proc/send_to_playing_players(thing) //sends a whatever to all playing players; use instead of world << where needed - for(var/M in player_list) - if(M && !isnewplayer(M)) - M << thing - -/proc/window_flash(var/client_or_usr) - if (!client_or_usr) - return - winset(client_or_usr, "mainwindow", "flash=5") diff --git a/code/__HELPERS/global_lists.dm b/code/__HELPERS/global_lists.dm index ab6d327994..f6b65bfa39 100644 --- a/code/__HELPERS/global_lists.dm +++ b/code/__HELPERS/global_lists.dm @@ -13,23 +13,22 @@ init_sprite_accessory_subtypes(/datum/sprite_accessory/undershirt, undershirt_list, undershirt_m, undershirt_f) //socks init_sprite_accessory_subtypes(/datum/sprite_accessory/socks, socks_list) + //human mutant bodyparts + init_sprite_accessory_subtypes(/datum/sprite_accessory/tails/human, tails_list_human) + init_sprite_accessory_subtypes(/datum/sprite_accessory/tails_animated/human, animated_tails_list_human) + init_sprite_accessory_subtypes(/datum/sprite_accessory/ears, ears_list) + init_sprite_accessory_subtypes(/datum/sprite_accessory/wings, wings_list) + init_sprite_accessory_subtypes(/datum/sprite_accessory/wings_open, wings_open_list) //lizard bodyparts (blizzard intensifies) init_sprite_accessory_subtypes(/datum/sprite_accessory/body_markings, body_markings_list) init_sprite_accessory_subtypes(/datum/sprite_accessory/tails/lizard, tails_list_lizard) init_sprite_accessory_subtypes(/datum/sprite_accessory/tails_animated/lizard, animated_tails_list_lizard) - init_sprite_accessory_subtypes(/datum/sprite_accessory/tails/human, tails_list_human) - init_sprite_accessory_subtypes(/datum/sprite_accessory/tails_animated/human, animated_tails_list_human) init_sprite_accessory_subtypes(/datum/sprite_accessory/snouts, snouts_list) init_sprite_accessory_subtypes(/datum/sprite_accessory/horns, horns_list) - init_sprite_accessory_subtypes(/datum/sprite_accessory/ears, ears_list) - init_sprite_accessory_subtypes(/datum/sprite_accessory/wings, wings_list) - init_sprite_accessory_subtypes(/datum/sprite_accessory/wings_open, wings_open_list) init_sprite_accessory_subtypes(/datum/sprite_accessory/frills, frills_list) init_sprite_accessory_subtypes(/datum/sprite_accessory/spines, spines_list) init_sprite_accessory_subtypes(/datum/sprite_accessory/spines_animated, animated_spines_list) - init_sprite_accessory_subtypes(/datum/sprite_accessory/legs, legs_list) init_sprite_accessory_subtypes(/datum/sprite_accessory/wings, r_wings_list,roundstart = TRUE) - //mammal bodyparts (fucking furries) init_sprite_accessory_subtypes(/datum/sprite_accessory/mam_body_markings, mam_body_markings_list) init_sprite_accessory_subtypes(/datum/sprite_accessory/mam_tails, mam_tails_list) @@ -45,7 +44,6 @@ init_sprite_accessory_subtypes(/datum/sprite_accessory/xeno_tail, xeno_tail_list) init_sprite_accessory_subtypes(/datum/sprite_accessory/xeno_dorsal, xeno_dorsal_list) - //Species for(var/spath in subtypesof(/datum/species)) var/datum/species/S = new spath() diff --git a/code/__HELPERS/icon_smoothing.dm b/code/__HELPERS/icon_smoothing.dm index 483f54b860..fd4b322202 100644 --- a/code/__HELPERS/icon_smoothing.dm +++ b/code/__HELPERS/icon_smoothing.dm @@ -108,39 +108,39 @@ return adjacencies -//do not use, use queue_smooth(atom) /proc/smooth_icon(atom/A) - if(!A || !A.smooth || !A.z) - return if(qdeleted(A)) return - if((A.smooth & SMOOTH_TRUE) || (A.smooth & SMOOTH_MORE)) - var/adjacencies = calculate_adjacencies(A) + if(!A || !A.smooth) + return + spawn(0) + if((A.smooth & SMOOTH_TRUE) || (A.smooth & SMOOTH_MORE)) + var/adjacencies = calculate_adjacencies(A) - if(A.smooth & SMOOTH_DIAGONAL) - A.diagonal_smooth(adjacencies) - else - cardinal_smooth(A, adjacencies) + if(A.smooth & SMOOTH_DIAGONAL) + A.diagonal_smooth(adjacencies) + else + cardinal_smooth(A, adjacencies) /atom/proc/diagonal_smooth(adjacencies) switch(adjacencies) if(N_NORTH|N_WEST) - replace_smooth_overlays("d-se","d-se-0") + replace_smooth_overlays("d1-se-0","d2-se","d3-se","d4-se") if(N_NORTH|N_EAST) - replace_smooth_overlays("d-sw","d-sw-0") + replace_smooth_overlays("d1-sw","d2-sw-0","d3-sw","d4-sw") if(N_SOUTH|N_WEST) - replace_smooth_overlays("d-ne","d-ne-0") + replace_smooth_overlays("d1-ne","d2-ne","d3-ne-0","d4-ne") if(N_SOUTH|N_EAST) - replace_smooth_overlays("d-nw","d-nw-0") + replace_smooth_overlays("d1-nw","d2-nw","d3-nw","d4-nw-0") if(N_NORTH|N_WEST|N_NORTHWEST) - replace_smooth_overlays("d-se","d-se-1") + replace_smooth_overlays("d1-se-1","d2-se","d3-se","d4-se") if(N_NORTH|N_EAST|N_NORTHEAST) - replace_smooth_overlays("d-sw","d-sw-1") + replace_smooth_overlays("d1-sw","d2-sw-1","d3-sw","d4-sw") if(N_SOUTH|N_WEST|N_SOUTHWEST) - replace_smooth_overlays("d-ne","d-ne-1") + replace_smooth_overlays("d1-ne","d2-ne","d3-ne-1","d4-ne") if(N_SOUTH|N_EAST|N_SOUTHEAST) - replace_smooth_overlays("d-nw","d-nw-1") + replace_smooth_overlays("d1-nw","d2-nw","d3-nw","d4-nw-1") else cardinal_smooth(src, adjacencies) @@ -153,33 +153,25 @@ /turf/closed/wall/diagonal_smooth(adjacencies) adjacencies = reverse_ndir(..()) if(adjacencies) - var/list/U = list() + underlays.Cut() if(fixed_underlay) if(fixed_underlay["space"]) - var/image/I = image('icons/turf/space.dmi', SPACE_ICON_STATE, layer=TURF_LAYER) - I.plane = PLANE_SPACE - U += I + underlays += image('icons/turf/space.dmi', SPACE_ICON_STATE, layer=src.layer) else - U += image(fixed_underlay["icon"], fixed_underlay["icon_state"], layer=TURF_LAYER) + underlays += image(fixed_underlay["icon"], fixed_underlay["icon_state"], layer=src.layer) else var/turf/T = get_step(src, turn(adjacencies, 180)) - if(T && (T.density || T.smooth)) + if(T && T.density) T = get_step(src, turn(adjacencies, 135)) - if(T && (T.density || T.smooth)) + if(T && T.density) T = get_step(src, turn(adjacencies, 225)) - if(isspaceturf(T) && !istype(T, /turf/open/space/transit)) - var/image/I = image('icons/turf/space.dmi', SPACE_ICON_STATE, layer=TURF_LAYER) - I.plane = PLANE_SPACE - U += I + if(istype(T, /turf/open/space)) + underlays += image('icons/turf/space.dmi', SPACE_ICON_STATE, layer=src.layer) else if(T && !T.density && !T.smooth) - U += T - else if(baseturf && !initial(baseturf.density) && !initial(baseturf.smooth)) - U += image(initial(baseturf.icon), initial(baseturf.icon_state), layer=TURF_LAYER) + underlays += T else - U += DEFAULT_UNDERLAY_IMAGE - underlays = U - + underlays += DEFAULT_UNDERLAY_IMAGE /proc/cardinal_smooth(atom/A, adjacencies) //NW CORNER @@ -234,31 +226,25 @@ else if(adjacencies & N_EAST) se = "4-e" - var/list/New = list() - if(A.top_left_corner != nw) A.overlays -= A.top_left_corner A.top_left_corner = nw - New += nw + A.add_overlay(nw) if(A.top_right_corner != ne) A.overlays -= A.top_right_corner A.top_right_corner = ne - New += ne + A.add_overlay(ne) if(A.bottom_right_corner != sw) A.overlays -= A.bottom_right_corner A.bottom_right_corner = sw - New += sw + A.add_overlay(sw) if(A.bottom_left_corner != se) A.overlays -= A.bottom_left_corner A.bottom_left_corner = se - New += se - - if(New.len) - A.add_overlay(New) - + A.add_overlay(se) /proc/find_type_in_direction(atom/source, direction) var/turf/target_turf = get_step(source, direction) @@ -319,16 +305,14 @@ /atom/proc/replace_smooth_overlays(nw, ne, sw, se) clear_smooth_overlays() - var/list/O = list() top_left_corner = nw - O += nw + add_overlay(nw) top_right_corner = ne - O += ne + add_overlay(ne) bottom_left_corner = sw - O += sw + add_overlay(sw) bottom_right_corner = se - O += se - add_overlay(O) + add_overlay(se) /proc/reverse_ndir(ndir) switch(ndir) @@ -367,6 +351,19 @@ else return 0 +//SSicon_smooth +/proc/ss_smooth_icon(atom/A) + if(qdeleted(A)) + return + if(!istype(A) || (A && !A.smooth)) + return + if((A.smooth & SMOOTH_TRUE) || (A.smooth & SMOOTH_MORE)) + var/adjacencies = calculate_adjacencies(A) + if(A.smooth & SMOOTH_DIAGONAL) + A.diagonal_smooth(adjacencies) + else + cardinal_smooth(A, adjacencies) + //SSicon_smooth /proc/queue_smooth_neighbors(atom/A) for(var/V in orange(1,A)) @@ -387,5 +384,6 @@ name = "smooth wall" icon = 'icons/turf/smooth_wall.dmi' icon_state = "smooth" + walltype = "shuttle" smooth = SMOOTH_TRUE|SMOOTH_DIAGONAL|SMOOTH_BORDER canSmoothWith = null diff --git a/code/__HELPERS/icons.dm b/code/__HELPERS/icons.dm index 9ebc0ef72d..cffdc7fe48 100644 --- a/code/__HELPERS/icons.dm +++ b/code/__HELPERS/icons.dm @@ -199,7 +199,7 @@ mob getFlatIcon(src) Browse_Icon() -/obj/effect/overlayTest +obj/effect/overlayTest icon = 'old_or_unused.dmi' icon_state = "blue" pixel_x = -24 @@ -948,8 +948,9 @@ var/global/list/friendly_animal_types = list() overlays += priority_overlays /atom/proc/add_overlay(image, priority = 0) + if(image in overlays) + return var/list/new_overlays = overlays.Copy() - new_overlays -= image if(priority) if(!priority_overlays) priority_overlays = list() @@ -1006,32 +1007,3 @@ var/global/list/humanoid_icon_cache = list() //Lame. /image/proc/setDir(newdir) dir = newdir - -// Used to make the frozen item visuals for Freon. -var/list/freeze_item_icons = list() - -/atom/proc/freeze_icon_index() - return "\ref[initial(icon)]-[initial(icon_state)]" - -/obj/proc/make_frozen_visual() - if(!is_frozen && (initial(icon) && initial(icon_state))) - var/index = freeze_icon_index() - var/icon/IC - var/icon/P = freeze_item_icons[index] - if(!P) - P = new /icon - for(var/iconstate in icon_states(icon)) - var/icon/O = new('icons/effects/freeze.dmi', "ice_cube") - IC = new(icon, iconstate) - O.Blend(IC, ICON_ADD) - P.Insert(O, iconstate) - freeze_item_icons[index] = P - icon = P - name = "frozen [name]" - is_frozen = TRUE - -//Assumes already frozed -obj/proc/make_unfrozen() - icon = initial(icon) - name = replacetext(name, "frozen ", "") - is_frozen = FALSE diff --git a/code/__HELPERS/lists.dm b/code/__HELPERS/lists.dm index 692d2953f3..e7807a881e 100644 --- a/code/__HELPERS/lists.dm +++ b/code/__HELPERS/lists.dm @@ -104,8 +104,13 @@ //Removes any null entries from the list /proc/listclearnulls(list/L) - var/list/N = new(L.len) - L -= N + if(istype(L)) + var/i=1 + for(var/thing in L) + if(thing != null) + ++i + continue + L.Cut(i,i+1) /* * Returns list containing all the entries from first list that are not present in second. @@ -223,30 +228,12 @@ return L -//same, but returns nothing and acts on list in place -/proc/shuffle_inplace(list/L) - if(!L) - return - - for(var/i=1, i= 0 ? /proc/cmp_ckey_asc : /proc/cmp_ckey_dsc) @@ -405,26 +392,5 @@ if(islist(.[i])) .[i] = .(.[i]) -#if DM_VERSION > 512 -#error Remie said that lummox was adding a way to get a lists -#error contents via list.values, if that is true remove this -#error otherwise, update the version and bug lummox -#elseif -//Flattens a keyed list into a list of it's contents -/proc/flatten_list(list/key_list) - if(!islist(key_list)) - return null - . = list() - for(var/key in key_list) - . |= key_list[key] - //Picks from the list, with some safeties, and returns the "default" arg if it fails #define DEFAULTPICK(L, default) ((istype(L, /list) && L:len) ? pick(L) : default) - -#define LAZYINITLIST(L) if (!L) L = list() - -#define UNSETEMPTY(L) if (L && !L.len) L = null -#define LAZYREMOVE(L, I) if(L) { L -= I; if(!L.len) { L = null; } } -#define LAZYADD(L, I) if(!L) { L = list(); } L += I; -#define LAZYACCESS(L, I) (L ? (isnum(I) ? (I > 0 && I <= L.len ? L[I] : null) : L[I]) : null) -#define LAZYLEN(L) length(L) diff --git a/code/__HELPERS/maths.dm b/code/__HELPERS/maths.dm index c64350a8a6..9e34764192 100644 --- a/code/__HELPERS/maths.dm +++ b/code/__HELPERS/maths.dm @@ -21,6 +21,7 @@ var/list/sqrtTable = list(1, 1, 1, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, return -round(-x / y) * y #define Clamp(CLVALUE,CLMIN,CLMAX) ( max( (CLMIN), min((CLVALUE), (CLMAX)) ) ) +#define CLAMP01(x) (Clamp(x,0,1)) // cotangent /proc/Cot(x) diff --git a/code/__HELPERS/matrices.dm b/code/__HELPERS/matrices.dm index c77b8aa7f4..808612107e 100644 --- a/code/__HELPERS/matrices.dm +++ b/code/__HELPERS/matrices.dm @@ -63,96 +63,91 @@ // Color matrices: -/* Documenting a couple of potentially useful color matrices here to inspire ideas -// Greyscale - indentical to saturation @ 0 -list(LUMA_R,LUMA_R,LUMA_R,0, LUMA_G,LUMA_G,LUMA_G,0, LUMA_B,LUMA_B,LUMA_B,0, 0,0,0,1, 0,0,0,0) +//Luma coefficients suggested for HDTVs. If you change these, make sure they add up to 1. +#define LUMR 0.2126 +#define LUMG 0.7152 +#define LUMB 0.0722 -// Color inversion -list(-1,0,0,0, 0,-1,0,0, 0,0,-1,0, 0,0,0,1, 1,1,1,0) +//Still need color matrix addition, negation, and multiplication. -// Sepiatone -list(0.393,0.349,0.272,0, 0.769,0.686,0.534,0, 0.189,0.168,0.131,0, 0,0,0,1, 0,0,0,0) -*/ +//Returns an identity color matrix which does nothing +/proc/color_identity() + return list(1,0,0, 0,1,0, 0,0,1) -//Does nothing -/proc/color_matrix_identity() - return list(1,0,0,0, 0,1,0,0, 0,0,1,0, 0,0,0,1, 0,0,0,0) - -//Adds/subtracts overall lightness -//0 is identity, 1 makes everything white, -1 makes everything black -/proc/color_matrix_lightness(power) - return list(1,0,0,0, 0,1,0,0, 0,0,1,0, 0,0,0,1, power,power,power,0) - -//Changes distance hues have from grey while maintaining the overall lightness. Greys are unaffected. -//1 is identity, 0 is greyscale, >1 oversaturates colors -/proc/color_matrix_saturation(value) - var/inv = 1 - value - var/R = round(LUMA_R * inv, 0.001) - var/G = round(LUMA_G * inv, 0.001) - var/B = round(LUMA_B * inv, 0.001) - - return list(R + value,R,R,0, G,G + value,G,0, B,B,B + value,0, 0,0,0,1, 0,0,0,0) - -//Changes distance colors have from rgb(127,127,127) grey -//1 is identity. 0 makes everything grey >1 blows out colors and greys -/proc/color_matrix_contrast(value) - var/add = (1 - value) / 2 - return list(value,0,0,0, 0,value,0,0, 0,0,value,0, 0,0,0,1, add,add,add,0) - -//Moves all colors angle degrees around the color wheel while maintaining intensity of the color and not affecting greys -//0 is identity, 120 moves reds to greens, 240 moves reds to blues -/proc/color_matrix_rotate_hue(angle) - var/sin = sin(angle) +//Moves all colors angle degrees around the color wheel while maintaining intensity of the color and not affecting whites +//TODO: Need a version that only affects one color (ie shift red to blue but leave greens and blues alone) +/proc/color_rotation(angle) + if(angle == 0) + return color_identity() + angle = Clamp(angle, -180, 180) var/cos = cos(angle) - var/cos_inv_third = 0.333*(1-cos) - var/sqrt3_sin = sqrt(3)*sin + var/sin = sin(angle) + + var/constA = 0.143 + var/constB = 0.140 + var/constC = -0.283 return list( -round(cos+cos_inv_third, 0.001), round(cos_inv_third+sqrt3_sin, 0.001), round(cos_inv_third-sqrt3_sin, 0.001), 0, -round(cos_inv_third-sqrt3_sin, 0.001), round(cos+cos_inv_third, 0.001), round(cos_inv_third+sqrt3_sin, 0.001), 0, -round(cos_inv_third+sqrt3_sin, 0.001), round(cos_inv_third-sqrt3_sin, 0.001), round(cos+cos_inv_third, 0.001), 0, -0,0,0,1, -0,0,0,0) + LUMR + cos * (1-LUMR) + sin * -LUMR, LUMR + cos * -LUMR + sin * constA, LUMR + cos * -LUMR + sin * -(1-LUMR), + LUMG + cos * -LUMG + sin * -LUMG, LUMG + cos * (1-LUMG) + sin * constB, LUMG + cos * -LUMG + sin * LUMG, + LUMB + cos * -LUMB + sin * (1-LUMB), LUMB + cos * -LUMB + sin * constC, LUMB + cos * (1-LUMB) + sin * LUMB + ) -//These next three rotate values about one axis only -//x is the red axis, y is the green axis, z is the blue axis. -/proc/color_matrix_rotate_x(angle) - var/sinval = round(sin(angle), 0.001); var/cosval = round(cos(angle), 0.001) - return list(1,0,0,0, 0,cosval,sinval,0, 0,-sinval,cosval,0, 0,0,0,1, 0,0,0,0) +//Makes everything brighter or darker without regard to existing color or brightness +/proc/color_brightness(power) + power = Clamp(power, -255, 255) + power = power/255 -/proc/color_matrix_rotate_y(angle) - var/sinval = round(sin(angle), 0.001); var/cosval = round(cos(angle), 0.001) - return list(cosval,0,-sinval,0, 0,1,0,0, sinval,0,cosval,0, 0,0,0,1, 0,0,0,0) + return list(1,0,0, 0,1,0, 0,0,1, power,power,power) -/proc/color_matrix_rotate_z(angle) - var/sinval = round(sin(angle), 0.001); var/cosval = round(cos(angle), 0.001) - return list(cosval,sinval,0,0, -sinval,cosval,0,0, 0,0,1,0, 0,0,0,1, 0,0,0,0) +/var/list/delta_index = list( + 0, 0.01, 0.02, 0.04, 0.05, 0.06, 0.07, 0.08, 0.1, 0.11, + 0.12, 0.14, 0.15, 0.16, 0.17, 0.18, 0.20, 0.21, 0.22, 0.24, + 0.25, 0.27, 0.28, 0.30, 0.32, 0.34, 0.36, 0.38, 0.40, 0.42, + 0.44, 0.46, 0.48, 0.5, 0.53, 0.56, 0.59, 0.62, 0.65, 0.68, + 0.71, 0.74, 0.77, 0.80, 0.83, 0.86, 0.89, 0.92, 0.95, 0.98, + 1.0, 1.06, 1.12, 1.18, 1.24, 1.30, 1.36, 1.42, 1.48, 1.54, + 1.60, 1.66, 1.72, 1.78, 1.84, 1.90, 1.96, 2.0, 2.12, 2.25, + 2.37, 2.50, 2.62, 2.75, 2.87, 3.0, 3.2, 3.4, 3.6, 3.8, + 4.0, 4.3, 4.7, 4.9, 5.0, 5.5, 6.0, 6.5, 6.8, 7.0, + 7.3, 7.5, 7.8, 8.0, 8.4, 8.7, 9.0, 9.4, 9.6, 9.8, + 10.0) +//Exxagerates or removes brightness +/proc/color_contrast(value) + value = Clamp(value, -100, 100) + if(value == 0) + return color_identity() -//Returns a matrix addition of A with B -/proc/color_matrix_add(list/A, list/B) - if(!istype(A) || !istype(B)) - return color_matrix_identity() - if(A.len != 20 || B.len != 20) - return color_matrix_identity() - var/list/output = list() - output.len = 20 - for(var/value in 1 to 20) - output[value] = A[value] + B[value] - return output + var/x = 0 + if (value < 0) + x = 127 + value / 100 * 127; + else + x = value % 1 + if(x == 0) + x = delta_index[value] + else + x = delta_index[value] * (1-x) + delta_index[value+1] * x//use linear interpolation for more granularity. + x = x * 127 + 127 -//Returns a matrix multiplication of A with B -/proc/color_matrix_multiply(list/A, list/B) - if(!istype(A) || !istype(B)) - return color_matrix_identity() - if(A.len != 20 || B.len != 20) - return color_matrix_identity() - var/list/output = list() - output.len = 20 - var/x = 1 - var/y = 1 - var/offset = 0 - for(y in 1 to 5) - offset = (y-1)*4 - for(x in 1 to 4) - output[offset+x] = round(A[offset+1]*B[x] + A[offset+2]*B[x+4] + A[offset+3]*B[x+8] + A[offset+4]*B[x+12]+(y==5?B[x+16]:0), 0.001) - return output \ No newline at end of file + var/mult = x / 127 + var/add = 0.5 * (127-x) / 255 + return list(mult,0,0, 0,mult,0, 0,0,mult, add,add,add) + +//Exxagerates or removes colors +/proc/color_saturation(value as num) + if(value == 0) + return color_identity() + value = Clamp(value, -100, 100) + if(value > 0) + value *= 3 + var/x = 1 + value / 100 + var/inv = 1 - x + var/R = LUMR * inv + var/G = LUMG * inv + var/B = LUMB * inv + + return list(R + x,R,R, G,G + x,G, B,B,B + x) + +#undef LUMR +#undef LUMG +#undef LUMB diff --git a/code/__HELPERS/mobs.dm b/code/__HELPERS/mobs.dm index be8de4ea97..e3e3d1274c 100644 --- a/code/__HELPERS/mobs.dm +++ b/code/__HELPERS/mobs.dm @@ -62,15 +62,13 @@ init_sprite_accessory_subtypes(/datum/sprite_accessory/frills, frills_list) if(!spines_list.len) init_sprite_accessory_subtypes(/datum/sprite_accessory/spines, spines_list) - if(!legs_list.len) - init_sprite_accessory_subtypes(/datum/sprite_accessory/legs, legs_list) if(!body_markings_list.len) init_sprite_accessory_subtypes(/datum/sprite_accessory/body_markings, body_markings_list) if(!wings_list.len) init_sprite_accessory_subtypes(/datum/sprite_accessory/wings, wings_list) //For now we will always return none for tail_human and ears. - return(list("mcolor" = pick("FFFFFF","7F7F7F", "7FFF7F", "7F7FFF", "FF7F7F", "7FFFFF", "FF7FFF", "FFFF7F"), "tail_lizard" = pick(tails_list_lizard), "tail_human" = "None", "wings" = "None", "snout" = pick(snouts_list), "horns" = pick(horns_list), "ears" = "None", "frills" = pick(frills_list), "spines" = pick(spines_list), "body_markings" = pick(body_markings_list), "legs" = "Normal Legs")) + return(list("mcolor" = pick("FFFFFF","7F7F7F", "7FFF7F", "7F7FFF", "FF7F7F", "7FFFFF", "FF7FFF", "FFFF7F"), "tail_lizard" = pick(tails_list_lizard), "tail_human" = "None", "wings" = "None", "snout" = pick(snouts_list), "horns" = pick(horns_list), "ears" = "None", "frills" = pick(frills_list), "spines" = pick(spines_list), "body_markings" = pick(body_markings_list))) /proc/random_hair_style(gender) switch(gender) @@ -107,13 +105,6 @@ if(i != attempts_to_find_unique_name && !findname(.)) break -/proc/random_unique_plasmaman_name(attempts_to_find_unique_name=10) - for(var/i=1, i<=attempts_to_find_unique_name, i++) - . = capitalize(plasmaman_name()) - - if(i != attempts_to_find_unique_name && !findname(.)) - break - /proc/random_skin_tone() return pick(skin_tones) @@ -133,6 +124,7 @@ var/list/skin_tones = list( ) var/global/list/species_list[0] +var/global/list/whitelisted_species_list[0] var/global/list/roundstart_species[0] /proc/age2agedescription(age) @@ -169,30 +161,24 @@ Proc for attack log creation, because really why not */ /proc/add_logs(mob/user, mob/target, what_done, object=null, addition=null) + var/newhealthtxt = "" + var/coordinates = "" var/turf/attack_location = get_turf(target) - - var/is_mob_user = user && typecache_mob[user.type] - var/is_mob_target = target && typecache_mob[target.type] - - var/mob/living/living_target - - + if(attack_location) + coordinates = "([attack_location.x],[attack_location.y],[attack_location.z])" if(target && isliving(target)) - living_target = target - - if(is_mob_user) - var/message = "\[[time_stamp()]\] [user ? "[user.name][(user.ckey) ? "([user.ckey])" : ""]" : "NON-EXISTANT SUBJECT"] has [what_done] [target ? "[target.name][(is_mob_target && target.ckey) ? "([target.ckey])" : ""]" : "NON-EXISTANT SUBJECT"][object ? " with [object]" : " "][addition][(living_target) ? " (NEWHP: [living_target.health])" : ""][(attack_location) ? "([attack_location.x],[attack_location.y],[attack_location.z])" : ""]" - user.attack_log += message + var/mob/living/L = target + newhealthtxt = " (NEWHP: [L.health])" + if(user && ismob(user)) + user.attack_log += text("\[[time_stamp()]\] Has [what_done] [target ? "[target.name][(ismob(target) && target.ckey) ? "([target.ckey])" : ""]" : "NON-EXISTANT SUBJECT"][object ? " with [object]" : " "][addition][newhealthtxt][coordinates]") if(user.mind) - user.mind.attack_log += message - - if(is_mob_target) - var/message = "\[[time_stamp()]\] [target ? "[target.name][(target.ckey) ? "([target.ckey])" : ""]" : "NON-EXISTANT SUBJECT"] has been [what_done] by [user ? "[user.name][(is_mob_user && user.ckey) ? "([user.ckey])" : ""]" : "NON-EXISTANT SUBJECT"][object ? " with [object]" : " "][addition][(living_target) ? " (NEWHP: [living_target.health])" : ""][(attack_location) ? "([attack_location.x],[attack_location.y],[attack_location.z])" : ""]" - target.attack_log += message + user.mind.attack_log += text("\[[time_stamp()]\] [user ? "[user.name][(ismob(user) && user.ckey) ? "([user.ckey])" : ""]" : "NON-EXISTANT SUBJECT"] has [what_done] [target ? "[target.name][(ismob(target) && target.ckey) ? "([target.ckey])" : ""]" : "NON-EXISTANT SUBJECT"][object ? " with [object]" : " "][addition][newhealthtxt][coordinates]") + if(target && ismob(target)) + target.attack_log += text("\[[time_stamp()]\] Has been [what_done] by [user ? "[user.name][(ismob(user) && user.ckey) ? "([user.ckey])" : ""]" : "NON-EXISTANT SUBJECT"][object ? " with [object]" : " "][addition][newhealthtxt][coordinates]") if(target.mind) - target.mind.attack_log += message + target.mind.attack_log += text("\[[time_stamp()]\] [target ? "[target.name][(ismob(target) && target.ckey) ? "([target.ckey])" : ""]" : "NON-EXISTANT SUBJECT"] has been [what_done] by [user ? "[user.name][(ismob(user) && user.ckey) ? "([user.ckey])" : ""]" : "NON-EXISTANT SUBJECT"][object ? " with [object]" : " "][addition][newhealthtxt][coordinates]") + log_attack("[user ? "[user.name][(ismob(user) && user.ckey) ? "([user.ckey])" : ""]" : "NON-EXISTANT SUBJECT"] [what_done] [target ? "[target.name][(ismob(target) && target.ckey)? "([target.ckey])" : ""]" : "NON-EXISTANT SUBJECT"][object ? " with [object]" : " "][addition][newhealthtxt][coordinates]") - log_attack("[user ? "[user.name][(is_mob_user && user.ckey) ? "([user.ckey])" : ""]" : "NON-EXISTANT SUBJECT"] [what_done] [target ? "[target.name][(is_mob_target && target.ckey)? "([target.ckey])" : ""]" : "NON-EXISTANT SUBJECT"][object ? " with [object]" : " "][addition][(living_target) ? " (NEWHP: [living_target.health])" : ""][(attack_location) ? "([attack_location.x],[attack_location.y],[attack_location.z])" : ""]") /proc/do_mob(mob/user , mob/target, time = 30, uninterruptible = 0, progress = 1) @@ -206,7 +192,7 @@ Proc for attack log creation, because really why not var/target_loc = target.loc - var/holding = user.get_active_held_item() + var/holding = user.get_active_hand() var/datum/progressbar/progbar if (progress) progbar = new(user, time, target) @@ -228,7 +214,7 @@ Proc for attack log creation, because really why not drifting = 0 user_loc = user.loc - if((!drifting && user.loc != user_loc) || target.loc != target_loc || user.get_active_held_item() != holding || user.incapacitated() || user.lying ) + if((!drifting && user.loc != user_loc) || target.loc != target_loc || user.get_active_hand() != holding || user.incapacitated() || user.lying ) . = 0 break if (progress) @@ -248,7 +234,7 @@ Proc for attack log creation, because really why not if(!user.Process_Spacemove(0) && user.inertia_dir) drifting = 1 - var/holding = user.get_active_held_item() + var/holding = user.get_active_hand() var/holdingnull = 1 //User's hand started out empty, check for an empty hand if(holding) @@ -285,7 +271,7 @@ Proc for attack log creation, because really why not if(!holding) . = 0 break - if(user.get_active_held_item() != holding) + if(user.get_active_hand() != holding) . = 0 break if (progress) @@ -306,7 +292,7 @@ Proc for attack log creation, because really why not for(var/atom/target in targets) originalloc[target] = target.loc - var/holding = user.get_active_held_item() + var/holding = user.get_active_hand() var/datum/progressbar/progbar if(progress) progbar = new(user, time, targets[1]) @@ -330,7 +316,7 @@ Proc for attack log creation, because really why not user_loc = user.loc for(var/atom/target in targets) - if((!drifting && user_loc != user.loc) || originalloc[target] != target.loc || user.get_active_held_item() != holding || user.incapacitated() || user.lying ) + if((!drifting && user_loc != user.loc) || originalloc[target] != target.loc || user.get_active_hand() != holding || user.incapacitated() || user.lying ) . = 0 break mainloop if(progbar) @@ -343,33 +329,6 @@ Proc for attack log creation, because really why not if(H.dna && istype(H.dna.species, species_datum)) . = TRUE -/proc/spawn_atom_to_turf(spawn_type, target, amount, admin_spawn=FALSE) - var/turf/T = get_turf(target) - if(!T) - throw EXCEPTION("attempt to spawn atom type: [spawn_type] in nullspace") - - for(var/j in 1 to amount) - var/atom/X = new spawn_type(T) - X.admin_spawned = admin_spawn - -/proc/spawn_and_random_walk(spawn_type, target, amount, walk_chance=100, max_walk=3, always_max_walk=FALSE, admin_spawn=FALSE) - var/turf/T = get_turf(target) - var/step_count = 0 - if(!T) - throw EXCEPTION("attempt to spawn atom type: [spawn_type] in nullspace") - - for(var/j in 1 to amount) - var/atom/movable/X = new spawn_type(T) - X.admin_spawned = admin_spawn - - if(always_max_walk || prob(walk_chance)) - if(always_max_walk) - step_count = max_walk - else - step_count = rand(1, max_walk) - - for(var/i in 1 to step_count) - step(X, pick(NORTH, SOUTH, EAST, WEST)) /proc/deadchat_broadcast(message, mob/follow_target=null, speaker_key=null, message_type=DEADCHAT_REGULAR) for(var/mob/M in player_list) @@ -382,7 +341,7 @@ Proc for attack log creation, because really why not var/adminoverride = 0 if(M.client && M.client.holder && (prefs.chat_toggles & CHAT_DEAD)) adminoverride = 1 - if(isnewplayer(M) && !adminoverride) + if(istype(M, /mob/new_player) && !adminoverride) continue if(M.stat != DEAD && !adminoverride) continue @@ -397,7 +356,7 @@ Proc for attack log creation, because really why not if(prefs.toggles & DISABLE_ARRIVALRATTLE) continue - if(isobserver(M) && follow_target) + if(istype(M, /mob/dead/observer) && follow_target) var/link = FOLLOW_LINK(M, follow_target) M << "[link] [message]" else diff --git a/code/__HELPERS/names.dm b/code/__HELPERS/names.dm index 61980062de..90f0eb252c 100644 --- a/code/__HELPERS/names.dm +++ b/code/__HELPERS/names.dm @@ -4,8 +4,6 @@ else return "[pick(lizard_names_female)]-[pick(lizard_names_female)]" -/proc/plasmaman_name() - return "[pick(plasmaman_names)] \Roman[rand(1,99)]" var/church_name = null /proc/church_name() @@ -102,7 +100,7 @@ var/religion_name = null if(2) new_station_name += pick(greek_letters) if(3) - new_station_name += "\Roman[rand(1,99)]" + new_station_name += pick(roman_numerals) if(4) new_station_name += pick(phonetic_alphabet) if(5) @@ -172,7 +170,7 @@ var/syndicate_code_response//Code response for traitors. var/safety[] = list(1,2,3)//Tells the proc which options to remove later on. var/nouns[] = list("love","hate","anger","peace","pride","sympathy","bravery","loyalty","honesty","integrity","compassion","charity","success","courage","deceit","skill","beauty","brilliance","pain","misery","beliefs","dreams","justice","truth","faith","liberty","knowledge","thought","information","culture","trust","dedication","progress","education","hospitality","leisure","trouble","friendships", "relaxation") - var/drinks[] = list("vodka and tonic","gin fizz","bahama mama","manhattan","black Russian","whiskey soda","long island iced tea","margarita","Irish coffee"," manly dwarf","Irish cream","doctor's delight","Beepksy Smash","tequila sunrise","brave bull","gargle blaster","bloody mary","whiskey cola","white Russian","vodka martini","martini","Cuba libre","kahlua","vodka","wine","moonshine") + var/drinks[] = list("vodka and tonic","gin fizz","bahama mama","manhattan","black Russian","whiskey soda","long island tea","margarita","Irish coffee"," manly dwarf","Irish cream","doctor's delight","Beepksy Smash","tequila sunrise","brave bull","gargle blaster","bloody mary","whiskey cola","white Russian","vodka martini","martini","Cuba libre","kahlua","vodka","wine","moonshine") var/locations[] = teleportlocs.len ? teleportlocs : drinks//if null, defaults to drinks instead. var/names[] = list() diff --git a/code/__HELPERS/pronouns.dm b/code/__HELPERS/pronouns.dm deleted file mode 100644 index 3446a750ee..0000000000 --- a/code/__HELPERS/pronouns.dm +++ /dev/null @@ -1,242 +0,0 @@ -//pronoun procs, for getting pronouns without using the text macros that only work in certain positions -//datums don't have gender, but most of their subtypes do! -/datum/proc/p_they(capitalized, temp_gender) - . = "it" - if(capitalized) - . = capitalize(.) - -/datum/proc/p_their(capitalized, temp_gender) - . = "its" - if(capitalized) - . = capitalize(.) - -/datum/proc/p_them(capitalized, temp_gender) - . = "it" - if(capitalized) - . = capitalize(.) - -/datum/proc/p_have(temp_gender) - . = "has" - -/datum/proc/p_are(temp_gender) - . = "is" - -/datum/proc/p_were(temp_gender) - . = "was" - -/datum/proc/p_do(temp_gender) - . = "does" - -/datum/proc/p_theyve(capitalized, temp_gender) - . = p_they(capitalized, temp_gender) + "'" + copytext(p_have(temp_gender), 3) - -/datum/proc/p_theyre(capitalized, temp_gender) - . = p_they(capitalized, temp_gender) + "'" + copytext(p_are(temp_gender), 2) - -/datum/proc/p_s(temp_gender) //is this a descriptive proc name, or what? - . = "s" - -//like clients, which do have gender. -/client/p_they(capitalized, temp_gender) - if(!temp_gender) - temp_gender = gender - . = "they" - switch(temp_gender) - if(FEMALE) - . = "she" - if(MALE) - . = "he" - if(capitalized) - . = capitalize(.) - -/client/p_their(capitalized, temp_gender) - if(!temp_gender) - temp_gender = gender - . = "their" - switch(temp_gender) - if(FEMALE) - . = "her" - if(MALE) - . = "his" - if(capitalized) - . = capitalize(.) - -/client/p_them(capitalized, temp_gender) - if(!temp_gender) - temp_gender = gender - . = "them" - switch(temp_gender) - if(FEMALE) - . = "her" - if(MALE) - . = "him" - if(capitalized) - . = capitalize(.) - -/client/p_have(temp_gender) - if(!temp_gender) - temp_gender = gender - . = "has" - if(temp_gender == PLURAL || temp_gender == NEUTER) - . = "have" - -/client/p_are(temp_gender) - if(!temp_gender) - temp_gender = gender - . = "is" - if(temp_gender == PLURAL || temp_gender == NEUTER) - . = "are" - -/client/p_were(temp_gender) - if(!temp_gender) - temp_gender = gender - . = "was" - if(temp_gender == PLURAL || temp_gender == NEUTER) - . = "were" - -/client/p_do(temp_gender) - if(!temp_gender) - temp_gender = gender - . = "does" - if(temp_gender == PLURAL || temp_gender == NEUTER) - . = "do" - -/client/p_s(temp_gender) - if(!temp_gender) - temp_gender = gender - if(temp_gender != PLURAL && temp_gender != NEUTER) - . = "s" - -//mobs(and atoms but atoms don't really matter write your own proc overrides) also have gender! -/mob/p_they(capitalized, temp_gender) - if(!temp_gender) - temp_gender = gender - . = "it" - switch(temp_gender) - if(FEMALE) - . = "she" - if(MALE) - . = "he" - if(PLURAL) - . = "they" - if(capitalized) - . = capitalize(.) - -/mob/p_their(capitalized, temp_gender) - if(!temp_gender) - temp_gender = gender - . = "its" - switch(temp_gender) - if(FEMALE) - . = "her" - if(MALE) - . = "his" - if(PLURAL) - . = "their" - if(capitalized) - . = capitalize(.) - -/mob/p_them(capitalized, temp_gender) - if(!temp_gender) - temp_gender = gender - . = "it" - switch(temp_gender) - if(FEMALE) - . = "her" - if(MALE) - . = "him" - if(PLURAL) - . = "them" - if(capitalized) - . = capitalize(.) - -/mob/p_have(temp_gender) - if(!temp_gender) - temp_gender = gender - . = "has" - if(temp_gender == PLURAL) - . = "have" - -/mob/p_are(temp_gender) - if(!temp_gender) - temp_gender = gender - . = "is" - if(temp_gender == PLURAL) - . = "are" - -/mob/p_were(temp_gender) - if(!temp_gender) - temp_gender = gender - . = "was" - if(temp_gender == PLURAL) - . = "were" - -/mob/p_do(temp_gender) - if(!temp_gender) - temp_gender = gender - . = "does" - if(temp_gender == PLURAL) - . = "do" - -/mob/p_s(temp_gender) - if(!temp_gender) - temp_gender = gender - if(temp_gender != PLURAL) - . = "s" - -//humans need special handling, because they can have their gender hidden -/mob/living/carbon/human/p_they(capitalized, temp_gender) - var/list/obscured = check_obscured_slots() - var/skipface = (wear_mask && (wear_mask.flags_inv & HIDEFACE)) || (head && (head.flags_inv & HIDEFACE)) - if((slot_w_uniform in obscured) && skipface) - temp_gender = PLURAL - return ..() - -/mob/living/carbon/human/p_their(capitalized, temp_gender) - var/list/obscured = check_obscured_slots() - var/skipface = (wear_mask && (wear_mask.flags_inv & HIDEFACE)) || (head && (head.flags_inv & HIDEFACE)) - if((slot_w_uniform in obscured) && skipface) - temp_gender = PLURAL - return ..() - -/mob/living/carbon/human/p_them(capitalized, temp_gender) - var/list/obscured = check_obscured_slots() - var/skipface = (wear_mask && (wear_mask.flags_inv & HIDEFACE)) || (head && (head.flags_inv & HIDEFACE)) - if((slot_w_uniform in obscured) && skipface) - temp_gender = PLURAL - return ..() - -/mob/living/carbon/human/p_have(temp_gender) - var/list/obscured = check_obscured_slots() - var/skipface = (wear_mask && (wear_mask.flags_inv & HIDEFACE)) || (head && (head.flags_inv & HIDEFACE)) - if((slot_w_uniform in obscured) && skipface) - temp_gender = PLURAL - return ..() - -/mob/living/carbon/human/p_are(temp_gender) - var/list/obscured = check_obscured_slots() - var/skipface = (wear_mask && (wear_mask.flags_inv & HIDEFACE)) || (head && (head.flags_inv & HIDEFACE)) - if((slot_w_uniform in obscured) && skipface) - temp_gender = PLURAL - return ..() - -/mob/living/carbon/human/p_were(temp_gender) - var/list/obscured = check_obscured_slots() - var/skipface = (wear_mask && (wear_mask.flags_inv & HIDEFACE)) || (head && (head.flags_inv & HIDEFACE)) - if((slot_w_uniform in obscured) && skipface) - temp_gender = PLURAL - return ..() - -/mob/living/carbon/human/p_do(temp_gender) - var/list/obscured = check_obscured_slots() - var/skipface = (wear_mask && (wear_mask.flags_inv & HIDEFACE)) || (head && (head.flags_inv & HIDEFACE)) - if((slot_w_uniform in obscured) && skipface) - temp_gender = PLURAL - return ..() - -/mob/living/carbon/human/p_s(temp_gender) - var/list/obscured = check_obscured_slots() - var/skipface = (wear_mask && (wear_mask.flags_inv & HIDEFACE)) || (head && (head.flags_inv & HIDEFACE)) - if((slot_w_uniform in obscured) && skipface) - temp_gender = PLURAL - return ..() diff --git a/code/__HELPERS/text.dm b/code/__HELPERS/text.dm index f0932c3a5e..236b86b774 100644 --- a/code/__HELPERS/text.dm +++ b/code/__HELPERS/text.dm @@ -421,110 +421,66 @@ var/list/binary = list("0","1") return t -#define string2charlist(string) (splittext(string, regex("(.)")) - splittext(string, "")) +/proc/char_split(t) + . = list() + for(var/x in 1 to length(t)) + . += copytext(t,x,x+1) -/proc/rot13(text = "") - var/list/textlist = string2charlist(text) - var/list/result = list() - for(var/c in textlist) - var/ca = text2ascii(c) - if(ca >= text2ascii("a") && ca <= text2ascii("m")) - ca += 13 - else if(ca >= text2ascii("n") && ca <= text2ascii("z")) - ca -= 13 - else if(ca >= text2ascii("A") && ca <= text2ascii("M")) - ca += 13 - else if(ca >= text2ascii("N") && ca <= text2ascii("Z")) - ca -= 13 - result += ascii2text(ca) - return jointext(result, "") +var/list/rot13_lookup = list() -//Takes a list of values, sanitizes it down for readability and character count, -//then exports it as a json file at data/npc_saves/[filename].json. -//As far as SS13 is concerned this is write only data. You can't change something -//in the json file and have it be reflected in the in game item/mob it came from. -//(That's what things like savefiles are for) Note that this list is not shuffled. -/proc/twitterize(list/proposed, filename, cullshort = 0, storemax = 1000) - if(!islist(proposed) || !filename || !config.log_twitter) - return +/proc/generate_rot13_lookup() + var/letters = alphabet.Copy() + for(var/c in alphabet) + letters += uppertext(c) - //Regular expressions are, as usual, absolute magic - var/regex/is_website = new("http|www.|\[a-z0-9_-]+.(com|org|net|mil|edu)+", "i") - var/regex/is_email = new("\[a-z0-9_-]+@\[a-z0-9_-]+.\[a-z0-9_-]+", "i") - var/regex/alphanumeric = new("\[a-z0-9]+", "i") - var/regex/punctuation = new("\[.!?]+", "i") - var/regex/all_invalid_symbols = new("\[^ -~]+") + for(var/char in letters) + var/ascii_char = text2ascii(char, 1) - var/list/accepted = list() - for(var/string in proposed) - if(findtext(string,is_website) || findtext(string,is_email) || findtext(string,all_invalid_symbols)) - continue - var/buffer = "" - var/early_culling = TRUE - for(var/pos = 1, pos != lentext(string), pos++) - var/let = copytext(string, pos, (pos + 1) % lentext(string)) - if(early_culling && !findtext(let,alphanumeric)) - continue - early_culling = FALSE - buffer += let - var/punctbuffer = "" - var/cutoff = lentext(buffer) - for(var/pos = lentext(buffer), pos != 0, pos--) - var/let = copytext(buffer, pos, (pos + 1) % lentext(buffer)) - if(findtext(let,alphanumeric)) - break - if(findtext(let,punctuation)) - punctbuffer = let + punctbuffer //Note this isn't the same thing as using += - cutoff = pos - if(punctbuffer) //We clip down excessive punctuation to get the letter count lower and reduce repeats. It's not perfect but it helps. - var/exclaim = FALSE - var/question = FALSE - var/periods = 0 - for(var/pos = lentext(punctbuffer), pos != 0, pos--) - var/punct = copytext(buffer, pos, (pos + 1) % lentext(buffer)) - if(!exclaim && punct == "!") - exclaim = TRUE - if(!question && punct == "?") - question = TRUE - if(!exclaim && !question && punct == ".") - periods += 1 - if(exclaim) - if(question) - punctbuffer = "?!" - else - punctbuffer = "!" - else if(question) - punctbuffer = "?" - else if(periods) - if(periods >= 3) - punctbuffer = "..." - else - punctbuffer = "" //Grammer nazis be damned - buffer = copytext(buffer, 1, cutoff) + punctbuffer + var/index - if(!buffer || lentext(buffer) > 140 || lentext(buffer) <= cullshort || buffer in accepted) - continue + switch(ascii_char) + // A - Z + if(65 to 90) + index = 65 + // a - z + if(97 to 122) + index = 97 - accepted += buffer + var/d = ascii_char - index + d += 13 + if(d >= 26) + d -= 26 + ascii_char = index + d + var/translated_char = ascii2text(ascii_char) - var/log = file("data/npc_saves/[filename].json") //If this line ever shows up as changed in a PR be very careful you aren't being memed on - var/list/oldjson = list() - var/list/oldentries = list() - if(fexists(log)) - oldjson = json_decode(file2text(log)) - oldentries = oldjson["data"] - if(!isemptylist(oldentries)) - for(var/string in accepted) - for(var/old in oldentries) - if(string == old) - oldentries.Remove(old) //Line's position in line is "refreshed" until it falls off the in game radar - break + rot13_lookup[char] = translated_char - var/list/finalized = list() - finalized["data"] = accepted.Copy() + oldentries.Copy() //we keep old and unreferenced phrases near the bottom for culling - listclearnulls(finalized) - if(!isemptylist(finalized) && finalized.len > storemax) - finalized.Cut(storemax + 1) - fdel(log) +/proc/rot13(t_in) + if(!rot13_lookup.len) + generate_rot13_lookup() - log << json_encode(finalized) \ No newline at end of file + var/t_out = "" + + for(var/i in 1 to length(t_in)) + var/char = copytext(t_in, i, i + 1) + if(char in rot13_lookup) + t_out += rot13_lookup[char] + else + t_out += char + + return t_out + +//Used in preferences' SetFlavorText and human's set_flavor verb +//Previews a string of len or less length + +/proc/copytext_preserve_html(var/text, var/first, var/last) + return html_encode(copytext(html_decode(text), first, last)) + +proc/TextPreview(var/string,var/len=40) + if(lentext(string) <= len) + if(!lentext(string)) + return "\[...\]" + else + return string + else + return "[copytext(string, 1, 37)]..." \ No newline at end of file diff --git a/code/__HELPERS/text_vr.dm b/code/__HELPERS/text_vr.dm index d613f9b770..a16b6c0cfc 100644 --- a/code/__HELPERS/text_vr.dm +++ b/code/__HELPERS/text_vr.dm @@ -7,12 +7,3 @@ t = copytext(t, 1, index) + repl_chars[char] + copytext(t, index+5) index = findtext(t, char) return t - -proc/TextPreview(var/string,var/len=40) - if(lentext(string) <= len) - if(!lentext(string)) - return "\[...\]" - else - return string - else - return "[copytext(string, 1, 37)]..." diff --git a/code/__HELPERS/time.dm b/code/__HELPERS/time.dm index e53026df0a..ae34b697cf 100644 --- a/code/__HELPERS/time.dm +++ b/code/__HELPERS/time.dm @@ -6,7 +6,7 @@ return time2text(world.timeofday, format) /proc/gameTimestamp(format = "hh:mm:ss") // Get the game time in text - return time2text(world.time - timezoneOffset + 432000 - round_start_time, format) + return time2text(world.time - timezoneOffset + 432000, format) /* Returns 1 if it is the selected month and day */ /proc/isDay(month, day) diff --git a/code/__HELPERS/type2type.dm b/code/__HELPERS/type2type.dm index ff518e5bb0..c186481cde 100644 --- a/code/__HELPERS/type2type.dm +++ b/code/__HELPERS/type2type.dm @@ -225,8 +225,6 @@ return 'icons/mob/screen_slimecore.dmi' if("Operative") return 'icons/mob/screen_operative.dmi' - if("Clockwork") - return 'icons/mob/screen_clockwork.dmi' else return 'icons/mob/screen_midnight.dmi' @@ -349,6 +347,55 @@ for(var/t in test_times) /proc/isLeap(y) return ((y) % 4 == 0 && ((y) % 100 != 0 || (y) % 400 == 0)) +// A copy of text2dir, extended to accept one and two letter +// directions, and to clearly return 0 otherwise. +/proc/text2dir_extended(direction) + switch(uppertext(direction)) + if("NORTH", "N") + return 1 + if("SOUTH", "S") + return 2 + if("EAST", "E") + return 4 + if("WEST", "W") + return 8 + if("NORTHEAST", "NE") + return 5 + if("NORTHWEST", "NW") + return 9 + if("SOUTHEAST", "SE") + return 6 + if("SOUTHWEST", "SW") + return 10 + else + return 0 + + + +// A copy of dir2text, which returns the short one or two letter +// directions used in tube icon states. +/proc/dir2text_short(direction) + switch(direction) + if(1) + return "N" + if(2) + return "S" + if(4) + return "E" + if(8) + return "W" + if(5) + return "NE" + if(6) + return "SE" + if(9) + return "NW" + if(10) + return "SW" + else + return + + //Turns a Body_parts_covered bitfield into a list of organ/limb names. @@ -527,23 +574,26 @@ for(var/t in test_times) var/B = hex2num(copytext(A,6,0)) return R+G+B -//word of warning: using a matrix like this as a color value will simplify it back to a string after being set -/proc/color_hex2color_matrix(string) - var/length = length(string) - if(length != 7 && length != 9) - return color_matrix_identity() - var/r = hex2num(copytext(string, 2, 4))/255 - var/g = hex2num(copytext(string, 4, 6))/255 - var/b = hex2num(copytext(string, 6, 8))/255 - var/a = 1 - if(length == 9) - a = hex2num(copytext(string, 8, 10))/255 - if(!isnum(r) || !isnum(g) || !isnum(b) || !isnum(a)) - return color_matrix_identity() - return list(r,0,0,0, 0,g,0,0, 0,0,b,0, 0,0,0,a, 0,0,0,0) +//get just one color +/proc/GetRedPart(A) + return hex2num(copytext(A,2,4)) -//will drop all values not on the diagonal -/proc/color_matrix2color_hex(list/the_matrix) - if(!istype(the_matrix) || the_matrix.len != 20) - return "#ffffffff" - return rgb(the_matrix[1]*255, the_matrix[6]*255, the_matrix[11]*255, the_matrix[16]*255) \ No newline at end of file +/proc/GetGreenPart(A) + return hex2num(copytext(A,4,6)) + +/proc/GetBluePart(A) + return hex2num(copytext(A,6,0)) + + +//Converts a positive interger to its roman numeral equivilent. Ignores any decimals. +//Numbers over 3999 will display with extra "M"s (don't tell the Romans) and can get comically long, so be careful. +/proc/num2roman(A) + var/list/values = list("M" = 1000, "CM" = 900, "D" = 500, "CD" = 400, "C" = 100, "XC" = 90, "L" = 50, "XL" = 40, "X" = 10, "IX" = 9, "V" = 5, "IV" = 4, "I" = 1) + if(!A || !isnum(A)) + return 0 + while(A >= 1) + for(var/i in values) + if(A >= values[i]) + . += i + A -= values[i] + break \ No newline at end of file diff --git a/code/__HELPERS/unsorted.dm b/code/__HELPERS/unsorted.dm index 72ac92ac8d..ce5fc3f223 100644 --- a/code/__HELPERS/unsorted.dm +++ b/code/__HELPERS/unsorted.dm @@ -1,4 +1,4 @@ - +//This file was auto-corrected by findeclaration.exe on 25.5.2012 20:42:31 /* * A large number of misc global procs. @@ -337,7 +337,7 @@ Turf and target are seperate in case you want to teleport some distance from a t moblist.Add(M) for(var/mob/living/carbon/human/M in sortmob) moblist.Add(M) - for(var/mob/living/brain/M in sortmob) + for(var/mob/living/carbon/brain/M in sortmob) moblist.Add(M) for(var/mob/living/carbon/alien/M in sortmob) moblist.Add(M) @@ -359,6 +359,41 @@ Turf and target are seperate in case you want to teleport some distance from a t moblist.Add(M) return moblist +/var/mob/dview/dview_mob = new + +//Version of view() which ignores darkness, because BYOND doesn't have it (I actually suggested it but it was tagged redundant, BUT HEARERS IS A T- /rant). +/proc/dview(var/range = world.view, var/center, var/invis_flags = 0) + if(!center) + return + + dview_mob.forceMove(center) + + dview_mob.see_invisible = invis_flags + + . = view(range, dview_mob) + dview_mob.forceMove(null) + +/mob/dview + invisibility = 101 + density = 0 + see_in_dark = 1e6 + anchored = 1 + +// Finds ALL mobs on turfs in line of sight. Similar to "in dview", but catches mobs that are not on a turf (e.g. inside a locker or such). +/proc/get_all_mobs_in_dview(var/turf/T, var/range = world.view, var/list/ignore_types = list()) + . = list() + var/list/can_see = dview(range, T) + for(var/mob/M in can_see) + if(is_type_in_list(M, ignore_types)) + continue + . += M + for(var/mob/M in mob_list) //Got the ones in vision, now let's go for the ones not on a turf. + if(M.z == 0) //Mobs not on a turf will have XYZ = 0,0,0. They also won't show up in dview() so we're not checking anything twice. + if(is_type_in_list(M, ignore_types)) + continue + if(get_turf(M) in can_see) //Checking the mob's turf now, since those are it's "true" coordinates (plus dview() did pick up on turfs, so we can check using that). + . += M + //E = MC^2 /proc/convert2energy(M) var/E = M*(SPEED_OF_LIGHT_SQ) @@ -437,15 +472,12 @@ Turf and target are seperate in case you want to teleport some distance from a t if(M.ckey == key) return M -//Returns the atom sitting on the turf. -//For example, using this on a disk, which is in a bag, on a mob, will return the mob because it's on the turf. -//Optional arg 'type' to stop once it reaches a specific type instead of a turf. -/proc/get_atom_on_turf(atom/movable/M, stop_type) +// Returns the atom sitting on the turf. +// For example, using this on a disk, which is in a bag, on a mob, will return the mob because it's on the turf. +/proc/get_atom_on_turf(atom/movable/M) var/atom/loc = M - while(loc && loc.loc && !isturf(loc.loc)) + while(loc && loc.loc && !istype(loc.loc, /turf/)) loc = loc.loc - if(stop_type && istype(loc, stop_type)) - break return loc // returns the turf located at the map edge in the specified direction relative to A @@ -499,6 +531,25 @@ Turf and target are seperate in case you want to teleport some distance from a t var/y=arcsin(x/sqrt(1+x*x)) return y + +/proc/anim(turf/location,target as mob|obj,a_icon,a_icon_state as text,flick_anim as text,sleeptime = 0,direction as num) +//This proc throws up either an icon or an animation for a specified amount of time. +//The variables should be apparent enough. + var/atom/movable/overlay/animation = new(location) + if(direction) + animation.setDir(direction) + animation.icon = a_icon + animation.layer = target:layer+1 + if(a_icon_state) + animation.icon_state = a_icon_state + else + animation.icon_state = "blank" + animation.master = target + flick(flick_anim, animation) + sleep(max(sleeptime, 15)) + qdel(animation) + + /atom/proc/GetAllContents() var/list/processing_list = list(src) var/list/assembled = list() @@ -608,60 +659,58 @@ Turf and target are seperate in case you want to teleport some distance from a t //Takes: Area type as text string or as typepath OR an instance of the area. //Returns: A list of all areas of that type in the world. -/proc/get_areas(areatype, subtypes=TRUE) +/proc/get_areas(areatype) + if(!areatype) + return null if(istext(areatype)) areatype = text2path(areatype) - else if(isarea(areatype)) + if(isarea(areatype)) var/area/areatemp = areatype areatype = areatemp.type - else if(!ispath(areatype)) - return null - var/list/areas = list() - if(subtypes) - var/list/cache = typecacheof(areatype) - for(var/V in sortedAreas) - var/area/A = V - if(cache[A.type]) - areas += V - else - for(var/V in sortedAreas) - var/area/A = V - if(A.type == areatype) - areas += V + var/list/areas = new/list() + for(var/area/N in world) + if(istype(N, areatype)) + areas += N return areas //Takes: Area type as text string or as typepath OR an instance of the area. //Returns: A list of all turfs in areas of that type of that type in the world. -/proc/get_area_turfs(areatype, target_z = 0, subtypes=FALSE) +/proc/get_area_turfs(areatype, target_z = 0) + if(!areatype) + return null if(istext(areatype)) areatype = text2path(areatype) - else if(isarea(areatype)) + if(isarea(areatype)) var/area/areatemp = areatype areatype = areatemp.type - else if(!ispath(areatype)) - return null - var/list/turfs = list() - if(subtypes) - var/list/cache = typecacheof(areatype) - for(var/V in sortedAreas) - var/area/A = V - if(!cache[A.type]) - continue - for(var/turf/T in A) - if(target_z == 0 || target_z == T.z) - turfs += T - else - for(var/V in sortedAreas) - var/area/A = V - if(A.type != areatype) - continue - for(var/turf/T in A) + var/list/turfs = new/list() + for(var/area/N in world) + if(istype(N, areatype)) + for(var/turf/T in N) if(target_z == 0 || target_z == T.z) turfs += T return turfs +//Takes: Area type as text string or as typepath OR an instance of the area. +//Returns: A list of all atoms (objs, turfs, mobs) in areas of that type of that type in the world. +/proc/get_area_all_atoms(areatype) + if(!areatype) + return null + if(istext(areatype)) + areatype = text2path(areatype) + if(isarea(areatype)) + var/area/areatemp = areatype + areatype = areatemp.type + + var/list/atoms = new/list() + for(var/area/N in world) + if(istype(N, areatype)) + for(var/atom/A in N) + atoms += A + return atoms + /proc/get_cardinal_dir(atom/A, atom/B) var/dx = abs(B.x - A.x) var/dy = abs(B.y - A.y) @@ -708,18 +757,15 @@ Turf and target are seperate in case you want to teleport some distance from a t return zone /* - Gets the turf this atom's *ICON* appears to inhabit It takes into account: * Pixel_x/y * Matrix x/y - NOTE: if your atom has non-standard bounds then this proc will handle it, but: * if the bounds are even, then there are an even amount of "middle" turfs, the one to the EAST, NORTH, or BOTH is picked (this may seem bad, but you're atleast as close to the center of the atom as possible, better than byond's default loc being all the way off) * if the bounds are odd, the true middle turf of the atom is returned - */ /proc/get_turf_pixel(atom/movable/AM) @@ -798,24 +844,24 @@ var/global/list/common_tools = list( //For objects that should embed, but make no sense being is_sharp or is_pointed() //e.g: rods -var/list/can_embed_types = typecacheof(list( - /obj/item/stack/rods, - /obj/item/pipe)) - /proc/can_embed(obj/item/W) if(W.is_sharp()) return 1 if(is_pointed(W)) return 1 - if(is_type_in_typecache(W, can_embed_types)) + var/list/embed_items = list(\ + /obj/item/stack/rods,\ + ) + + if(is_type_in_list(W, embed_items)) return 1 /* Checks if that loc and dir has a item on the wall */ -var/list/WALLITEMS = typecacheof(list( +var/list/WALLITEMS = list( /obj/machinery/power/apc, /obj/machinery/airalarm, /obj/item/device/radio/intercom, /obj/structure/extinguisher_cabinet, /obj/structure/reagent_dispensers/peppertank, /obj/machinery/status_display, /obj/machinery/requests_console, /obj/machinery/light_switch, /obj/structure/sign, @@ -823,22 +869,22 @@ var/list/WALLITEMS = typecacheof(list( /obj/machinery/computer/security/telescreen, /obj/machinery/embedded_controller/radio/simple_vent_controller, /obj/item/weapon/storage/secure/safe, /obj/machinery/door_timer, /obj/machinery/flasher, /obj/machinery/keycard_auth, /obj/structure/mirror, /obj/structure/fireaxecabinet, /obj/machinery/computer/security/telescreen/entertainment - )) + ) -var/list/WALLITEMS_EXTERNAL = typecacheof(list( - /obj/machinery/camera, /obj/structure/camera_assembly, - /obj/structure/light_construct, /obj/machinery/light)) +var/list/WALLITEMS_EXTERNAL = list( + /obj/machinery/camera, /obj/machinery/camera_assembly, + /obj/machinery/light_construct, /obj/machinery/light) -var/list/WALLITEMS_INVERSE = typecacheof(list( - /obj/structure/light_construct, /obj/machinery/light)) +var/list/WALLITEMS_INVERSE = list( + /obj/machinery/light_construct, /obj/machinery/light) /proc/gotwallitem(loc, dir, var/check_external = 0) var/locdir = get_step(loc, dir) for(var/obj/O in loc) - if(is_type_in_typecache(O, WALLITEMS) && check_external != 2) + if(is_type_in_list(O, WALLITEMS) && check_external != 2) //Direction works sometimes - if(is_type_in_typecache(O, WALLITEMS_INVERSE)) + if(is_type_in_list(O, WALLITEMS_INVERSE)) if(O.dir == turn(dir, 180)) return 1 else if(O.dir == dir) @@ -849,8 +895,8 @@ var/list/WALLITEMS_INVERSE = typecacheof(list( if(get_turf_pixel(O) == locdir) return 1 - if(is_type_in_typecache(O, WALLITEMS_EXTERNAL) && check_external) - if(is_type_in_typecache(O, WALLITEMS_INVERSE)) + if(is_type_in_list(O, WALLITEMS_EXTERNAL) && check_external) + if(is_type_in_list(O, WALLITEMS_INVERSE)) if(O.dir == turn(dir, 180)) return 1 else if(O.dir == dir) @@ -858,7 +904,7 @@ var/list/WALLITEMS_INVERSE = typecacheof(list( //Some stuff is placed directly on the wallturf (signs) for(var/obj/O in locdir) - if(is_type_in_typecache(O, WALLITEMS) && check_external != 2) + if(is_type_in_list(O, WALLITEMS) && check_external != 2) if(O.pixel_x == 0 && O.pixel_y == 0) return 1 return 0 @@ -929,34 +975,33 @@ var/list/WALLITEMS_INVERSE = typecacheof(list( return "white" /proc/params2turf(scr_loc, turf/origin) - if(!scr_loc) - return null var/tX = splittext(scr_loc, ",") var/tY = splittext(tX[2], ":") var/tZ = origin.z tY = tY[1] tX = splittext(tX[1], ":") tX = tX[1] - tX = Clamp(origin.x + text2num(tX) - world.view - 1, 1, world.maxx) - tY = Clamp(origin.y + text2num(tY) - world.view - 1, 1, world.maxy) + tX = max(1, min(world.maxx, origin.x + (text2num(tX) - (world.view + 1)))) + tY = max(1, min(world.maxy, origin.y + (text2num(tY) - (world.view + 1)))) return locate(tX, tY, tZ) /proc/screen_loc2turf(text, turf/origin) - if(!text) - return null var/tZ = splittext(text, ",") var/tX = splittext(tZ[1], "-") var/tY = text2num(tX[2]) tX = splittext(tZ[2], "-") tX = text2num(tX[2]) tZ = origin.z - tX = Clamp(origin.x + 7 - tX, 1, world.maxx) - tY = Clamp(origin.y + 7 - tY, 1, world.maxy) + tX = max(1, min(origin.x + 7 - tX, world.maxx)) + tY = max(1, min(origin.y + 7 - tY, world.maxy)) return locate(tX, tY, tZ) -/proc/IsValidSrc(datum/D) - if(istype(D)) - return !qdeleted(D) +/proc/IsValidSrc(A) + if(istype(A, /datum)) + var/datum/B = A + return !qdeleted(B) + if(istype(A, /client)) + return 1 return 0 @@ -978,7 +1023,7 @@ var/list/WALLITEMS_INVERSE = typecacheof(list( /proc/is_A_facing_B(atom/A,atom/B) if(!istype(A) || !istype(B)) return 0 - if(isliving(A)) + if(istype(A, /mob/living)) var/mob/living/LA = A if(LA.lying) return 0 @@ -993,7 +1038,6 @@ var/list/WALLITEMS_INVERSE = typecacheof(list( /* rough example of the "cone" made by the 3 dirs checked - B \ \ @@ -1009,10 +1053,68 @@ B --><-- A / / B - */ +//This is just so you can stop an orbit. +//orbit() can run without it (swap orbiting for A) +//but then you can never stop it and that's just silly. +/atom/movable/var/atom/orbiting = null + +//A: atom to orbit +//radius: range to orbit at, radius of the circle formed by orbiting +//clockwise: whether you orbit clockwise or anti clockwise +//rotation_speed: how fast to rotate +//rotation_segments: the resolution of the orbit circle, less = a more block circle, this can be used to produce hexagons (6 segments) triangles (3 segments), and so on, 36 is the best default. +//pre_rotation: Chooses to rotate src 90 degress towards the orbit dir (clockwise/anticlockwise), useful for things to go "head first" like ghosts +//lockinorbit: Forces src to always be on A's turf, otherwise the orbit cancels when src gets too far away (eg: ghosts) + +/atom/movable/proc/orbit(atom/A, radius = 10, clockwise = FALSE, rotation_speed = 20, rotation_segments = 36, pre_rotation = TRUE, lockinorbit = FALSE) + if(!istype(A)) + return + + if(orbiting) + stop_orbit() + + orbiting = A + var/matrix/initial_transform = matrix(transform) + var/lastloc = loc + + //Head first! + if(pre_rotation) + var/matrix/M = matrix(transform) + var/pre_rot = 90 + if(!clockwise) + pre_rot = -90 + M.Turn(pre_rot) + transform = M + + var/matrix/shift = matrix(transform) + shift.Translate(0,radius) + transform = shift + + SpinAnimation(rotation_speed, -1, clockwise, rotation_segments) + + //we stack the orbits up client side, so we can assign this back to normal server side without it breaking the orbit + transform = initial_transform + while(orbiting && orbiting == A && A.loc) + var/targetloc = get_turf(A) + if(!lockinorbit && loc != lastloc && loc != targetloc) + break + loc = targetloc + lastloc = loc + stoplag() + + if (orbiting == A) //make sure we haven't started orbiting something else. + orbiting = null + SpinAnimation(0,0) + + + +/atom/movable/proc/stop_orbit() + orbiting = null + + //Center's an image. //Requires: //The Image @@ -1187,13 +1289,10 @@ B --><-- A /proc/add_to_proximity_list(atom/A, range) var/turf/T = get_turf(A) - if(!T || !A.loc) - throw EXCEPTION("Someone adding a prox sensor in nullspace") var/list/L = block(locate(T.x - range, T.y - range, T.z), locate(T.x + range, T.y + range, T.z)) for(var/B in L) var/turf/C = B - LAZYINITLIST(C.proximity_checkers) - C.proximity_checkers[A] = TRUE + C.proximity_checkers |= A return L /proc/remove_from_proximity_list(atom/A, range) @@ -1201,11 +1300,7 @@ B --><-- A var/list/L = block(locate(T.x - range, T.y - range, T.z), locate(T.x + range, T.y + range, T.z)) for(var/B in L) var/turf/C = B - if (!C.proximity_checkers) - continue C.proximity_checkers.Remove(A) - UNSETEMPTY(C.proximity_checkers) - /proc/shift_proximity(atom/checker, atom/A, range, atom/B, newrange) var/turf/T = get_turf(A) @@ -1218,14 +1313,10 @@ B --><-- A var/list/O = M - L for(var/C in N) var/turf/D = C - if (!D.proximity_checkers) - continue D.proximity_checkers.Remove(checker) - UNSETEMPTY(D.proximity_checkers) for(var/E in O) var/turf/F = E - LAZYINITLIST(F.proximity_checkers) - F.proximity_checkers[checker] = TRUE + F.proximity_checkers |= checker return 1 /proc/flick_overlay_static(image/I, atom/A, duration) @@ -1238,13 +1329,13 @@ B --><-- A /proc/get_areas_in_z(zlevel) . = list() - var/validarea = FALSE + var/validarea = 0 for(var/V in sortedAreas) var/area/A = V - validarea = TRUE + validarea = 1 for(var/turf/T in A) if(T.z != zlevel) - validarea = FALSE + validarea = 0 break if(validarea) . += A @@ -1256,7 +1347,7 @@ B --><-- A if(!istype(A, type)) continue var/distance = get_dist(source, A) - if(!closest_atom) + if(!closest_distance) closest_distance = distance closest_atom = A else @@ -1265,14 +1356,9 @@ B --><-- A closest_atom = A return closest_atom - -proc/pick_closest_path(value, list/matches = get_fancy_list_of_atom_types()) - if (value == FALSE) //nothing should be calling us with a number, so this is safe - value = input("Enter type to find (blank for all, cancel to cancel)", "Search for type") as null|text - if (isnull(value)) - return - value = trim(value) - if(!isnull(value) && value != "") +proc/pick_closest_path(value) + var/list/matches = get_fancy_list_of_types() + if (!isnull(value) && value!="") matches = filter_fancy_list(matches, value) if(matches.len==0) @@ -1282,7 +1368,7 @@ proc/pick_closest_path(value, list/matches = get_fancy_list_of_atom_types()) if(matches.len==1) chosen = matches[1] else - chosen = input("Select a type", "Pick Type", matches[1]) as null|anything in matches + chosen = input("Select an atom type", "Spawn Atom", matches[1]) as null|anything in matches if(!chosen) return chosen = matches[chosen] @@ -1293,23 +1379,17 @@ proc/pick_closest_path(value, list/matches = get_fancy_list_of_atom_types()) CRASH(msg) //Key thing that stops lag. Cornerstone of performance in ss13, Just sitting here, in unsorted.dm. - -//Increases delay as the server gets more overloaded, -//as sleeps aren't cheap and sleeping only to wake up and sleep again is wasteful -#define DELTA_CALC max(((max(world.tick_usage, world.cpu) / 100) * max(Master.sleep_delta,1)), 1) - /proc/stoplag() - . = round(1*DELTA_CALC) + . = 1 sleep(world.tick_lag) if (world.tick_usage > TICK_LIMIT_TO_RUN) //woke up, still not enough tick, sleep for more. - . += round(2*DELTA_CALC) - sleep(world.tick_lag*2*DELTA_CALC) + . += 2 + sleep(world.tick_lag*2) if (world.tick_usage > TICK_LIMIT_TO_RUN) //woke up, STILL not enough tick, sleep for more. - . += round(4*DELTA_CALC) - sleep(world.tick_lag*4*DELTA_CALC) + . += 4 + sleep(world.tick_lag*4) //you might be thinking of adding more steps to this, or making it use a loop and a counter var // not worth it. -#undef DELTA_CALC /proc/flash_color(mob_or_client, flash_color="#960000", flash_time=20) var/client/C @@ -1331,7 +1411,7 @@ proc/pick_closest_path(value, list/matches = get_fancy_list_of_atom_types()) #define RANDOM_COLOUR (rgb(rand(0,255),rand(0,255),rand(0,255))) -#define QDEL_IN(item, time) addtimer(GLOBAL_PROC, "qdel", time, TIMER_NORMAL, item) +#define QDEL_IN(item, time) addtimer(GLOBAL_PROC, "qdel", time, FALSE, item) /proc/check_for_cleanbot_bug() var/static/admins_warned //bet you didn't know you could do this! @@ -1359,11 +1439,10 @@ proc/pick_closest_path(value, list/matches = get_fancy_list_of_atom_types()) str = "0" + str . = str -/atom/proc/Shake(pixelshiftx = 15, pixelshifty = 15, duration = 250) - var/initialpixelx = pixel_x - var/initialpixely = pixel_y - var/shiftx = rand(-pixelshiftx,pixelshiftx) - var/shifty = rand(-pixelshifty,pixelshifty) - animate(src, pixel_x = pixel_x + shiftx, pixel_y = pixel_y + shifty, time = 0.2, loop = duration) - pixel_x = initialpixelx - pixel_y = initialpixely +/proc/trange(var/Dist = 0, var/turf/Center = null) + if (isnull(Center)) + return + + var/turf/x1y1 = locate(((Center.x - Dist) < 1 ? 1 : Center.x - Dist), ((Center.y - Dist) < 1 ? 1 : Center.y - Dist), Center.z) + var/turf/x2y2 = locate(((Center.x + Dist) > world.maxx ? world.maxx : Center.x + Dist), ((Center.y + Dist) > world.maxy ? world.maxy : Center.y + Dist), Center.z) + return block(x1y1, x2y2) diff --git a/code/_globalvars/configuration.dm b/code/_globalvars/configuration.dm index 1887bfe603..d40e90af87 100644 --- a/code/_globalvars/configuration.dm +++ b/code/_globalvars/configuration.dm @@ -29,12 +29,6 @@ var/global/comms_allowed = 0 //By default, the server does not allow messages to //Cross server communications var/global/cross_address = "byond://" //This needs to be global as the message sent contains the comms key. var/global/cross_allowed = 0 //Don't bother attempting to send if the address wasn't set. -var/global/panic_address = "byond://" //Reconnect a player this linked server if this server isn't accepting new players - -var/global/medal_hub = null -var/global/medal_pass = " " -var/global/medals_enabled = TRUE //will be auto set to false if the game fails contacting the medal hub to prevent unneeded calls. - //This was a define, but I changed it to a variable so it can be changed in-game.(kept the all-caps definition because... code...) -Errorage var/MAX_EX_DEVESTATION_RANGE = 3 @@ -42,5 +36,4 @@ var/MAX_EX_HEAVY_RANGE = 7 var/MAX_EX_LIGHT_RANGE = 14 var/MAX_EX_FLASH_RANGE = 14 var/MAX_EX_FLAME_RANGE = 14 -var/DYN_EX_SCALE = 0.5 diff --git a/code/_globalvars/lists/flavor_misc.dm b/code/_globalvars/lists/flavor_misc.dm index f70a6b99fa..6e4ab3ee76 100644 --- a/code/_globalvars/lists/flavor_misc.dm +++ b/code/_globalvars/lists/flavor_misc.dm @@ -25,7 +25,6 @@ var/global/list/snouts_list = list() var/global/list/horns_list = list() var/global/list/frills_list = list() var/global/list/spines_list = list() -var/global/list/legs_list = list() var/global/list/animated_spines_list = list() //Mutant Human bits diff --git a/code/_globalvars/lists/mapping.dm b/code/_globalvars/lists/mapping.dm index f37fb053c3..98f3c07671 100644 --- a/code/_globalvars/lists/mapping.dm +++ b/code/_globalvars/lists/mapping.dm @@ -64,5 +64,3 @@ var/list/datum/map_template/lava_ruins_templates = list() var/list/datum/map_template/shuttle_templates = list() var/list/datum/map_template/shelter_templates = list() - -var/list/transit_markers = list() diff --git a/code/_globalvars/lists/mobs.dm b/code/_globalvars/lists/mobs.dm index 8ac9b2eda0..9e5fc17282 100644 --- a/code/_globalvars/lists/mobs.dm +++ b/code/_globalvars/lists/mobs.dm @@ -2,8 +2,7 @@ var/list/clients = list() //all clients var/list/admins = list() //all clients whom are admins var/list/deadmins = list() //all clients who have used the de-admin verb. var/list/directory = list() //all ckeys with associated client -var/list/stealthminID = list() //reference list with IDs that store ckeys, for stealthmins -var/global/list/current_watchlist = list() //stores players that are currently online and in the watchlist +var/list/stealthminID = list() //reference list with IDs that store ckeys, for stealthmins //Since it didn't really belong in any other category, I'm putting this here //This is for procs to replace all the goddamn 'in world's that are chilling around the code @@ -13,5 +12,4 @@ var/global/list/mob_list = list() //all mobs, including clientless var/global/list/living_mob_list = list() //all alive mobs, including clientless. Excludes /mob/new_player var/global/list/dead_mob_list = list() //all dead mobs, including clientless. Excludes /mob/new_player var/global/list/joined_player_list = list() //all clients that have joined the game at round-start or as a latejoin. -var/global/list/silicon_mobs = list() //all silicon mobs -var/global/list/pai_list = list() \ No newline at end of file +var/global/list/silicon_mobs = list() //all silicon mobs \ No newline at end of file diff --git a/code/_globalvars/lists/names.dm b/code/_globalvars/lists/names.dm index 736419e4a0..90a4c7b388 100644 --- a/code/_globalvars/lists/names.dm +++ b/code/_globalvars/lists/names.dm @@ -13,7 +13,6 @@ var/list/clown_names = file2list("config/names/clown.txt") var/list/mime_names = file2list("config/names/mime.txt") var/list/carp_names = file2list("config/names/carp.txt") var/list/golem_names = file2list("config/names/golem.txt") -var/list/plasmaman_names = file2list("config/names/plasmaman.txt") var/list/verbs = file2list("config/names/verbs.txt") diff --git a/code/_globalvars/lists/objects.dm b/code/_globalvars/lists/objects.dm index f614f373f9..3464f54e3a 100644 --- a/code/_globalvars/lists/objects.dm +++ b/code/_globalvars/lists/objects.dm @@ -6,12 +6,10 @@ var/global/list/shuttle_caller_list = list() //list of all communication cons var/global/list/machines = list() //NOTE: this is a list of ALL machines now. The processing machines list is SSmachine.processing ! var/global/list/syndicate_shuttle_boards = list() //important to keep track of for managing nukeops war declarations. var/global/list/navbeacons = list() //list of all bot nagivation beacons, used for patrolling. -var/global/list/teleportbeacons = list() //list of all tracking beacons used by teleporters var/global/list/deliverybeacons = list() //list of all MULEbot delivery beacons. var/global/list/deliverybeacontags = list() //list of all tags associated with delivery beacons. var/global/list/nuke_list = list() var/global/list/nuke_tiles = list() //list of all turfs that turn to animated red grids when a nuke is triggered -var/global/list/alarmdisplay = list() //list of all machines or programs that can display station alerts var/global/list/chemical_reactions_list //list of all /datum/chemical_reaction datums. Used during chemical reactions var/global/list/chemical_reagents_list //list of all /datum/reagent datums indexed by reagent id. Used by chemistry stuff @@ -22,8 +20,7 @@ var/global/list/crafting_recipes = list() //list of all table craft recipes var/global/list/rcd_list = list() //list of Rapid Construction Devices. var/global/list/apcs_list = list() //list of all Area Power Controller machines, seperate from machines for powernet speeeeeeed. var/global/list/tracked_implants = list() //list of all current implants that are tracked to work out what sort of trek everyone is on. Sadly not on lavaworld not implemented... -var/global/list/tracked_chem_implants = list() //list of implants the prisoner console can track and send inject commands too var/global/list/poi_list = list() //list of points of interest for observe/follow var/global/list/pinpointer_list = list() //list of all pinpointers. Used to change stuff they are pointing to all at once. -var/global/list/zombie_infection_list = list() // A list of all zombie_infection organs, for any mass "animation" -var/global/list/meteor_list = list() // List of all meteors. +// A list of all zombie_infection organs, for any mass "animation" +var/global/list/zombie_infection_list = list() diff --git a/code/_globalvars/lists/poll_ignore.dm b/code/_globalvars/lists/poll_ignore.dm deleted file mode 100644 index 6a765f6bfd..0000000000 --- a/code/_globalvars/lists/poll_ignore.dm +++ /dev/null @@ -1,6 +0,0 @@ -//Each lists stores ckeys for "Never for this round" option category - -#define POLL_IGNORE_PAI "pai" -#define POLL_IGNORE_SENTIENCE_POTION "sentience_potion" - -var/list/poll_ignore = list() \ No newline at end of file diff --git a/code/_globalvars/lists/typecache.dm b/code/_globalvars/lists/typecache.dm deleted file mode 100644 index 5d2565c7f2..0000000000 --- a/code/_globalvars/lists/typecache.dm +++ /dev/null @@ -1,9 +0,0 @@ -//please store common type caches here. -//type caches should only be stored here if used in mutiple places or likely to be used in mutiple places. - -//Note: typecache can only replace istype if you know for sure the thing is at least a datum. - -var/list/typecache_mob = typecacheof(list(/mob)) - - - diff --git a/code/_onclick/ai.dm b/code/_onclick/ai.dm index f83aa6c2d1..38df843337 100644 --- a/code/_onclick/ai.dm +++ b/code/_onclick/ai.dm @@ -34,13 +34,6 @@ if(control_disabled || stat) return - var/turf/pixel_turf = get_turf_pixel(A) - if(pixel_turf && !cameranet.checkTurfVis(pixel_turf)) - log_admin("[key_name_admin(src)] might be running a modified client! (failed checkTurfVis on AI click of [A]([COORD(pixel_turf)])") - message_admins("[key_name_admin(src)] might be running a modified client! (failed checkTurfVis on AI click of [A]([ADMIN_COORDJMP(pixel_turf)]))") - send2irc_adminless_only("NOCHEAT", "[key_name(src)] might be running a modified client! (failed checkTurfVis on AI click of [A]([COORD(pixel_turf)]))") - return - var/list/modifiers = params2list(params) if(modifiers["shift"] && modifiers["ctrl"]) CtrlShiftClickOn(A) @@ -135,7 +128,7 @@ Topic("aiEnable=4", list("aiEnable"="4"), 1)// 1 meaning no window (consistency!) else Topic("aiDisable=4", list("aiDisable"="4"), 1) - + return /obj/machinery/door/airlock/AIAltClick() // Eletrifies doors. if(emagged) return @@ -145,7 +138,7 @@ else // disable/6 is not in Topic; disable/5 disables both temporary and permenant shock Topic("aiDisable=5", list("aiDisable"="5"), 1) - + return /obj/machinery/door/airlock/AIShiftClick() // Opens and closes doors! if(emagged) return @@ -153,7 +146,7 @@ Topic("aiEnable=7", list("aiEnable"="7"), 1) // 1 meaning no window (consistency!) else Topic("aiDisable=7", list("aiDisable"="7"), 1) - + return /obj/machinery/door/airlock/AICtrlShiftClick() // Sets/Unsets Emergency Access Override if(emagged) return @@ -161,12 +154,12 @@ Topic("aiEnable=11", list("aiEnable"="11"), 1) // 1 meaning no window (consistency!) else Topic("aiDisable=11", list("aiDisable"="11"), 1) + return /* APC */ /obj/machinery/power/apc/AICtrlClick() // turns off/on APCs. - if(can_use(usr, 1)) - toggle_breaker() - add_fingerprint(usr) + toggle_breaker() + add_fingerprint(usr) /* AI Turrets */ /obj/machinery/turretid/AIAltClick() //toggles lethal on turrets diff --git a/code/_onclick/autoclick.dm b/code/_onclick/autoclick.dm index 1ceeb182ed..3fe84195b6 100644 --- a/code/_onclick/autoclick.dm +++ b/code/_onclick/autoclick.dm @@ -23,7 +23,7 @@ /mob/living/carbon/CanMobAutoclick(atom/object, location, params) if(!object.IsAutoclickable()) return - var/obj/item/h = get_active_held_item() + var/obj/item/h = get_active_hand() if(h) . = h.CanItemAutoclick(object, location, params) diff --git a/code/_onclick/click.dm b/code/_onclick/click.dm index f15ed07c95..d3d51f778c 100644 --- a/code/_onclick/click.dm +++ b/code/_onclick/click.dm @@ -98,16 +98,19 @@ throw_item(A) return - var/obj/item/W = get_active_held_item() + var/obj/item/W = get_active_hand() if(W == A) W.attack_self(src) - update_inv_hands() + if(hand) + update_inv_l_hand(0) + else + update_inv_r_hand(0) return // operate three levels deep here (item in backpack in src; item in box in backpack in src, not any deeper) - if(A.ClickAccessible(src, depth=INVENTORY_DEPTH)) + if(!isturf(A) && A == loc || (A in contents) || (A.loc in contents) || (A.loc && (A.loc.loc in contents))) // No adjacency needed if(W) var/resolved = A.attackby(W,src) @@ -219,7 +222,6 @@ Ctrl click For most objects, pull */ - /mob/proc/CtrlClickOn(atom/A) A.CtrlClick(src) return @@ -229,13 +231,6 @@ if(istype(ML)) ML.pulled(src) -/mob/living/carbon/human/CtrlClick(mob/user) - if(ishuman(user) && Adjacent(user)) - var/mob/living/carbon/human/H = user - H.dna.species.grab(H, src, H.martial_art) - H.next_click = world.time + CLICK_CD_MELEE - else - ..() /* Alt click Unused except for AI @@ -279,21 +274,6 @@ /atom/proc/CtrlShiftClick(mob/user) return -/* - Helper to check can the mob click/access an item. - Used by mob inventory and storage items. -*/ -/atom/proc/ClickAccessible(mob/user, depth=1) - if(src == user.loc || (src in user.contents)) - return TRUE - - if(loc && depth > 1) - return loc.ClickAccessible(user, depth-1) - -/turf/ClickAccessible(mob/user, depth=1) - return - - /* Misc helpers @@ -354,11 +334,15 @@ icon_state = "click_catcher" plane = CLICKCATCHER_PLANE mouse_opacity = 2 - screen_loc = "CENTER" + screen_loc = "CENTER-7,CENTER-7" -/obj/screen/click_catcher/New() - ..() - transform = matrix(200, 0, 0, 0, 200, 0) +/obj/screen/click_catcher/proc/MakeGreed() + . = list() + for(var/i = 0, i<15, i++) + for(var/j = 0, j<15, j++) + var/obj/screen/click_catcher/CC = new() + CC.screen_loc = "NORTH-[i],EAST-[j]" + . += CC /obj/screen/click_catcher/Click(location, control, params) var/list/modifiers = params2list(params) @@ -366,7 +350,7 @@ var/mob/living/carbon/C = usr C.swap_hand() else - var/turf/T = params2turf(modifiers["screen-loc"], get_turf(usr)) + var/turf/T = screen_loc2turf(screen_loc, get_turf(usr)) if(T) T.Click(location, control, params) - . = 1 + . = 1 \ No newline at end of file diff --git a/code/_onclick/cyborg.dm b/code/_onclick/cyborg.dm index 5eece3b019..de657798f3 100644 --- a/code/_onclick/cyborg.dm +++ b/code/_onclick/cyborg.dm @@ -51,7 +51,7 @@ aicamera.captureimage(A, usr) return - var/obj/item/W = get_active_held_item() + var/obj/item/W = get_active_hand() // Cyborgs have no range-checking unless there is item use if(!W) diff --git a/code/_onclick/hud/_defines.dm b/code/_onclick/hud/_defines.dm index c621458533..fe3ba58ced 100644 --- a/code/_onclick/hud/_defines.dm +++ b/code/_onclick/hud/_defines.dm @@ -17,67 +17,53 @@ Therefore, the top right corner (except during admin shenanigans) is at "15,15" */ -//Lower left, persistent menu +//Lower left, persistant menu #define ui_inventory "WEST:6,SOUTH:5" //Middle left indicators #define ui_lingchemdisplay "WEST:6,CENTER-1:15" #define ui_lingstingdisplay "WEST:6,CENTER-3:11" #define ui_crafting "12:-10,1:5" -#define ui_building "12:-10,1:21" - #define ui_devilsouldisplay "WEST:6,CENTER-1:15" -//Lower center, persistent menu +//Lower center, persistant menu #define ui_sstore1 "CENTER-5:10,SOUTH:5" #define ui_id "CENTER-4:12,SOUTH:5" #define ui_belt "CENTER-3:14,SOUTH:5" #define ui_back "CENTER-2:14,SOUTH:5" - -/proc/ui_hand_position(i) //values based on old hand ui positions (CENTER:-/+16,SOUTH:5) - var/x_off = -(!(i % 2)) - var/y_off = round((i-1) / 2) - return"CENTER+[x_off]:16,SOUTH+[y_off]:5" - -/proc/ui_equip_position(mob/M) - var/y_off = round((M.held_items.len-1) / 2) //values based on old equip ui position (CENTER: +/-16,SOUTH+1:5) - return "CENTER:-16,SOUTH+[y_off+1]:5" - -/proc/ui_swaphand_position(mob/M, which = 1) //values based on old swaphand ui positions (CENTER: +/-16,SOUTH+1:5) - var/x_off = which == 1 ? -1 : 0 - var/y_off = round((M.held_items.len-1) / 2) - return "CENTER+[x_off]:16,SOUTH+[y_off+1]:5" - +#define ui_rhand "CENTER:-16,SOUTH:5" +#define ui_lhand "CENTER: 16,SOUTH:5" +#define ui_equip "CENTER:-16,SOUTH+1:5" +#define ui_swaphand1 "CENTER:-16,SOUTH+1:5" +#define ui_swaphand2 "CENTER: 16,SOUTH+1:5" #define ui_storage1 "CENTER+1:18,SOUTH:5" #define ui_storage2 "CENTER+2:20,SOUTH:5" -#define ui_borg_sensor "CENTER-3:16, SOUTH:5" //borgs -#define ui_borg_lamp "CENTER-4:16, SOUTH:5" //borgs -#define ui_borg_thrusters "CENTER-5:16, SOUTH:5" //borgs -#define ui_inv1 "CENTER-2:16,SOUTH:5" //borgs -#define ui_inv2 "CENTER-1 :16,SOUTH:5" //borgs -#define ui_inv3 "CENTER :16,SOUTH:5" //borgs -#define ui_borg_module "CENTER+1:16,SOUTH:5" //borgs -#define ui_borg_store "CENTER+2:16,SOUTH:5" //borgs -#define ui_borg_camera "CENTER+3:21,SOUTH:5" //borgs -#define ui_borg_album "CENTER+4:21,SOUTH:5" //borgs -#define ui_borg_talk_wheel "CENTER+4:21,SOUTH+1:5" //borgs +#define ui_borg_sensor "CENTER-3:16, SOUTH:5" //borgs +#define ui_borg_lamp "CENTER-4:16, SOUTH:5" //borgies +#define ui_borg_thrusters "CENTER-5:16, SOUTH:5"//borgies +#define ui_inv1 "CENTER-2:16,SOUTH:5" //borgs +#define ui_inv2 "CENTER-1 :16,SOUTH:5" //borgs +#define ui_inv3 "CENTER :16,SOUTH:5" //borgs +#define ui_borg_module "CENTER+1:16,SOUTH:5" +#define ui_borg_store "CENTER+2:16,SOUTH:5" //borgs + +#define ui_borg_camera "CENTER+3:21,SOUTH:5" //borgs +#define ui_borg_album "CENTER+4:21,SOUTH:5" //borgs #define ui_monkey_head "CENTER-4:13,SOUTH:5" //monkey #define ui_monkey_mask "CENTER-3:14,SOUTH:5" //monkey -#define ui_monkey_neck "CENTER-2:15,SOUTH:5" //monkey -#define ui_monkey_back "CENTER-1:16,SOUTH:5" //monkey +#define ui_monkey_back "CENTER-2:15,SOUTH:5" //monkey #define ui_alien_storage_l "CENTER-2:14,SOUTH:5"//alien #define ui_alien_storage_r "CENTER+1:18,SOUTH:5"//alien -#define ui_alien_talk_wheel "EAST-3:26,SOUTH:5" //alien #define ui_drone_drop "CENTER+1:18,SOUTH:5" //maintenance drones #define ui_drone_pull "CENTER+2:2,SOUTH:5" //maintenance drones #define ui_drone_storage "CENTER-2:14,SOUTH:5" //maintenance drones #define ui_drone_head "CENTER-3:14,SOUTH:5" //maintenance drones -//Lower right, persistent menu +//Lower right, persistant menu #define ui_drop_throw "EAST-1:28,SOUTH+1:7" #define ui_pull_resist "EAST-2:26,SOUTH+1:7" #define ui_movi "EAST-2:26,SOUTH:5" @@ -108,7 +94,6 @@ #define ui_borg_health "EAST-1:28,CENTER-1:15" //borgs have the health display where humans have the pressure damage indicator. #define ui_alien_health "EAST-1:28,CENTER-1:15" //aliens have the health display where humans have the pressure damage indicator. #define ui_alienplasmadisplay "EAST-1:28,CENTER-2:15" -#define ui_alien_queen_finder "EAST-1:28,CENTER-3:15" // AI @@ -135,19 +120,18 @@ #define ui_oclothing "WEST+1:8,SOUTH+1:7" #define ui_gloves "WEST+2:10,SOUTH+1:7" -#define ui_glasses "WEST:6,SOUTH+3:11" +#define ui_glasses "WEST:6,SOUTH+2:9" #define ui_mask "WEST+1:8,SOUTH+2:9" #define ui_ears "WEST+2:10,SOUTH+2:9" -#define ui_neck "WEST:6,SOUTH+2:9" + #define ui_head "WEST+1:8,SOUTH+3:11" //Ghosts -#define ui_ghost_jumptomob "SOUTH:6,CENTER-2:24" -#define ui_ghost_orbit "SOUTH:6,CENTER-1:24" -#define ui_ghost_reenter_corpse "SOUTH:6,CENTER:24" -#define ui_ghost_teleport "SOUTH:6,CENTER+1:24" -#define ui_ghost_pai "SOUTH: 6, CENTER+2:24" +#define ui_ghost_jumptomob "SOUTH:6,CENTER-2:16" +#define ui_ghost_orbit "SOUTH:6,CENTER-1:16" +#define ui_ghost_reenter_corpse "SOUTH:6,CENTER:16" +#define ui_ghost_teleport "SOUTH:6,CENTER+1:16" //Hand of God, god diff --git a/code/_onclick/hud/action_button.dm b/code/_onclick/hud/action_button.dm index 9315c0f2db..fd7abb1257 100644 --- a/code/_onclick/hud/action_button.dm +++ b/code/_onclick/hud/action_button.dm @@ -1,8 +1,6 @@ -#define ACTION_BUTTON_DEFAULT_BACKGROUND "default" /obj/screen/movable/action_button var/datum/action/linked_action - var/actiontooltipstyle = "" screen_loc = null /obj/screen/movable/action_button/Click(location,control,params) @@ -22,9 +20,6 @@ icon = 'icons/mob/actions.dmi' icon_state = "bg_default" var/hidden = 0 - var/hide_icon = 'icons/mob/actions.dmi' - var/hide_state = "hide" - var/show_state = "show" /obj/screen/movable/action_button/hide_toggle/Click(location,control,params) var/list/modifiers = params2list(params) @@ -42,39 +37,28 @@ usr.update_action_buttons() -/obj/screen/movable/action_button/hide_toggle/proc/InitialiseIcon(datum/hud/owner_hud) - var settings = owner_hud.get_action_buttons_icons() - icon = settings["bg_icon"] - icon_state = settings["bg_state"] - hide_icon = settings["toggle_icon"] - hide_state = settings["toggle_hide"] - show_state = settings["toggle_show"] +/obj/screen/movable/action_button/hide_toggle/proc/InitialiseIcon(mob/living/user) + if(isalien(user)) + icon_state = "bg_alien" + else + icon_state = "bg_default" UpdateIcon() + return /obj/screen/movable/action_button/hide_toggle/proc/UpdateIcon() cut_overlays() - var/image/img = image(hide_icon, src, hidden ? show_state : hide_state) + var/image/img = image(icon, src, hidden ? "show" : "hide") add_overlay(img) + return /obj/screen/movable/action_button/MouseEntered(location,control,params) - openToolTip(usr,src,params,title = name,content = desc,theme = actiontooltipstyle) + openToolTip(usr,src,params,title = name,content = desc) /obj/screen/movable/action_button/MouseExited() closeToolTip(usr) -/datum/hud/proc/get_action_buttons_icons() - . = list() - .["bg_icon"] = ui_style_icon - .["bg_state"] = "template" - - //TODO : Make these fit theme - .["toggle_icon"] = 'icons/mob/actions.dmi' - .["toggle_hide"] = "hide" - .["toggle_show"] = "show" - -//see human and alien hud for specific implementations. /mob/proc/update_action_buttons_icon() for(var/X in actions) @@ -99,7 +83,7 @@ else for(var/datum/action/A in actions) button_number++ - A.UpdateButtonIcon(hud_used) + A.UpdateButtonIcon() var/obj/screen/movable/action_button/B = A.button if(!B.moved) B.screen_loc = hud_used.ButtonNumberToScreenCoords(button_number) diff --git a/code/_onclick/hud/ai.dm b/code/_onclick/hud/ai.dm index f547662d8e..350b813e56 100644 --- a/code/_onclick/hud/ai.dm +++ b/code/_onclick/hud/ai.dm @@ -1,17 +1,11 @@ /obj/screen/ai icon = 'icons/mob/screen_ai.dmi' -/obj/screen/ai/Click() - if(isobserver(usr)) - return 1 - /obj/screen/ai/aicore name = "AI core" icon_state = "ai_core" /obj/screen/ai/aicore/Click() - if(..()) - return var/mob/living/silicon/ai/AI = usr AI.view_core() @@ -29,8 +23,6 @@ icon_state = "track" /obj/screen/ai/camera_track/Click() - if(..()) - return var/mob/living/silicon/ai/AI = usr var/target_name = input(AI, "Choose who you want to track", "Tracking") as null|anything in AI.trackable_mobs() AI.ai_camera_track(target_name) @@ -40,8 +32,6 @@ icon_state = "camera_light" /obj/screen/ai/camera_light/Click() - if(..()) - return var/mob/living/silicon/ai/AI = usr AI.toggle_camera_light() @@ -50,8 +40,6 @@ icon_state = "crew_monitor" /obj/screen/ai/crew_monitor/Click() - if(..()) - return var/mob/living/silicon/ai/AI = usr crewmonitor.show(AI) @@ -60,8 +48,6 @@ icon_state = "manifest" /obj/screen/ai/crew_manifest/Click() - if(..()) - return var/mob/living/silicon/ai/AI = usr AI.ai_roster() @@ -70,8 +56,6 @@ icon_state = "alerts" /obj/screen/ai/alerts/Click() - if(..()) - return var/mob/living/silicon/ai/AI = usr AI.ai_alerts() @@ -80,8 +64,6 @@ icon_state = "announcement" /obj/screen/ai/announcement/Click() - if(..()) - return var/mob/living/silicon/ai/AI = usr AI.announcement() @@ -90,8 +72,6 @@ icon_state = "call_shuttle" /obj/screen/ai/call_shuttle/Click() - if(..()) - return var/mob/living/silicon/ai/AI = usr AI.ai_call_shuttle() @@ -100,8 +80,6 @@ icon_state = "state_laws" /obj/screen/ai/state_laws/Click() - if(..()) - return var/mob/living/silicon/ai/AI = usr AI.checklaws() @@ -110,8 +88,6 @@ icon_state = "pda_send" /obj/screen/ai/pda_msg_send/Click() - if(..()) - return var/mob/living/silicon/ai/AI = usr AI.cmd_send_pdamesg(usr) @@ -120,8 +96,6 @@ icon_state = "pda_receive" /obj/screen/ai/pda_msg_show/Click() - if(..()) - return var/mob/living/silicon/ai/AI = usr AI.cmd_show_message_log(usr) @@ -133,7 +107,7 @@ if(isAI(usr)) var/mob/living/silicon/ai/AI = usr AI.aicamera.toggle_camera_mode() - else if(iscyborg(usr)) + else if(isrobot(usr)) var/mob/living/silicon/robot/R = usr R.aicamera.toggle_camera_mode() @@ -145,7 +119,7 @@ if(isAI(usr)) var/mob/living/silicon/ai/AI = usr AI.aicamera.viewpictures() - else if(iscyborg(usr)) + else if(isrobot(usr)) var/mob/living/silicon/robot/R = usr R.aicamera.viewpictures() @@ -154,16 +128,11 @@ icon_state = "ai_sensor" /obj/screen/ai/sensors/Click() - if(..()) - return var/mob/living/silicon/S = usr S.sensor_mode() -/datum/hud/ai - ui_style_icon = 'icons/mob/screen_ai.dmi' - -/datum/hud/ai/New(mob/owner, ui_style = 'icons/mob/screen_ai.dmi') +/datum/hud/ai/New(mob/owner) ..() var/obj/screen/using diff --git a/code/_onclick/hud/alert.dm b/code/_onclick/hud/alert.dm index 9005eb06c8..2dea5689c5 100644 --- a/code/_onclick/hud/alert.dm +++ b/code/_onclick/hud/alert.dm @@ -37,12 +37,9 @@ if(new_master) var/old_layer = new_master.layer - var/old_plane = new_master.plane new_master.layer = FLOAT_LAYER - new_master.plane = FLOAT_PLANE alert.overlays += new_master new_master.layer = old_layer - new_master.plane = old_plane alert.icon_state = "template" // We'll set the icon to the client's ui pref in reorganize_alerts() alert.master = new_master else @@ -243,163 +240,6 @@ or shoot a gun to move around via Newton's 3rd Law of Motion." icon_state = "blobbernaut_nofactory" alerttooltipstyle = "blob" -// CLOCKCULT -/obj/screen/alert/clockwork - alerttooltipstyle = "clockcult" - -/obj/screen/alert/clockwork/scripture_reqs - name = "Next Tier Requirements" - desc = "You shouldn't be seeing this description unless you're very fast. If you're very fast, good job!" - icon_state = "no-servants-caches" - var/static/list/scripture_states = list(SCRIPTURE_DRIVER = TRUE, SCRIPTURE_SCRIPT = FALSE, SCRIPTURE_APPLICATION = FALSE, SCRIPTURE_REVENANT = FALSE, SCRIPTURE_JUDGEMENT = FALSE) - -/obj/screen/alert/clockwork/scripture_reqs/New() - ..() - START_PROCESSING(SSprocessing, src) - process() - -/obj/screen/alert/clockwork/scripture_reqs/Destroy() - STOP_PROCESSING(SSprocessing, src) - return ..() - -/obj/screen/alert/clockwork/scripture_reqs/process() - if(clockwork_gateway_activated) - qdel(src) - return - var/current_state - scripture_states = scripture_unlock_check() - for(var/i in scripture_states) - if(!scripture_states[i]) - current_state = i - break - icon_state = "no" - if(!current_state) - name = "Current Objective" - for(var/obj/structure/destructible/clockwork/massive/celestial_gateway/G in all_clockwork_objects) - var/area/gate_area = get_area(G) - desc = "Protect the Ark at [gate_area.map_name]!" - return - desc = "All tiers of Scripture are unlocked.
\ - Acquire components and summon the Ark.
" - else - name = "Next Tier Requirements" - var/validservants = 0 - var/unconverted_ais_exist = FALSE - for(var/mob/living/L in living_mob_list) - if(is_servant_of_ratvar(L) && (ishuman(L) || issilicon(L))) - validservants++ - else if(isAI(L)) - unconverted_ais_exist++ - var/req_servants = 0 - var/req_caches = 0 - var/req_cv = 0 - var/req_ai = FALSE - desc = "Requirements for [current_state] Scripture:" - switch(current_state) //get our requirements based on the tier - if(SCRIPTURE_SCRIPT) - req_servants = SCRIPT_SERVANT_REQ - req_caches = SCRIPT_CACHE_REQ - if(SCRIPTURE_APPLICATION) - req_servants = APPLICATION_SERVANT_REQ - req_caches = APPLICATION_CACHE_REQ - req_cv = APPLICATION_CV_REQ - if(SCRIPTURE_REVENANT) - req_servants = REVENANT_SERVANT_REQ - req_caches = REVENANT_CACHE_REQ - req_cv = REVENANT_CV_REQ - if(SCRIPTURE_JUDGEMENT) - req_servants = JUDGEMENT_SERVANT_REQ - req_caches = JUDGEMENT_CACHE_REQ - req_cv = JUDGEMENT_CV_REQ - req_ai = TRUE - desc += "
[validservants]/[req_servants] Servants" - if(validservants < req_servants) - icon_state += "-servants" //in this manner, generate an icon key based on what we're missing - else - desc += ": \[CHECK\]" - desc += "
[clockwork_caches]/[req_caches] Tinkerer's Caches" - if(clockwork_caches < req_caches) - icon_state += "-caches" - else - desc += ": \[CHECK\]" - if(req_cv) //cv only shows up if the tier requires it - desc += "
[clockwork_construction_value]/[req_cv] Construction Value" - if(clockwork_construction_value < req_cv) - icon_state += "-cv" - else - desc += ": \[CHECK\]" - if(req_ai) //same for ai - if(unconverted_ais_exist) - if(unconverted_ais_exist > 1) - desc += "
[unconverted_ais_exist] unconverted AIs exist!
" - else - desc += "
An unconverted AI exists!" - icon_state += "-ai" - else - desc += "
No unconverted AIs exist: \[CHECK\]" - -/obj/screen/alert/clockwork/infodump - name = "Global Records" - desc = "You shouldn't be seeing this description, because it should be dynamically generated." - icon_state = "clockinfo" - -/obj/screen/alert/clockwork/infodump/MouseEntered(location,control,params) - if(ratvar_awakens) - desc = "CHETR
NYY
HAGEHUGF-NAQ-UBABE
RATVAR.
" - else - var/servants = 0 - var/validservants = 0 - var/unconverted_ais_exist = FALSE - var/list/scripture_states = scripture_unlock_check() - for(var/mob/living/L in living_mob_list) - if(is_servant_of_ratvar(L)) - servants++ - if(ishuman(L) || issilicon(L)) - validservants++ - else if(isAI(L)) - unconverted_ais_exist++ - if(servants > 1) - if(validservants > 1) - desc = "[servants] Servants, [validservants] of which count towards scripture.
" - else - desc = "[servants] Servants, [validservants ? "[validservants] of which counts":"none of which count"] towards scripture.
" - else - desc = "[servants] Servant, who [validservants ? "counts":"does not count"] towards scripture.
" - desc += "[clockwork_caches ? "[clockwork_caches] Tinkerer's Caches.":"No Tinkerer's Caches, construct one!
"]
\ - [clockwork_construction_value] Construction Value.
" - if(clockwork_daemons) - desc += "[clockwork_daemons] Tinkerer's Daemons: [servants * 0.2 < clockwork_daemons ? "DISABLED":"ACTIVE"]
" - else - desc += "No Tinkerer's Daemons.
" - for(var/obj/structure/destructible/clockwork/massive/celestial_gateway/G in all_clockwork_objects) - var/area/gate_area = get_area(G) - desc += "Ark Location: [uppertext(gate_area.map_name)]
" - if(G.ratvar_portal) - desc += "Seconds until Ratvar's arrival: [G.get_arrival_text(TRUE)]
" - else - desc += "Seconds until Proselytization: [G.get_arrival_text(TRUE)]
" - if(unconverted_ais_exist) - if(unconverted_ais_exist > 1) - desc += "[unconverted_ais_exist] unconverted AIs exist!
" - else - desc += "An unconverted AI exists!
" - if(scripture_states[SCRIPTURE_REVENANT]) - var/inathneq_available = clockwork_generals_invoked["inath-neq"] <= world.time - var/sevtug_available = clockwork_generals_invoked["sevtug"] <= world.time - var/nezbere_available = clockwork_generals_invoked["nezbere"] <= world.time - var/nezcrentr_available = clockwork_generals_invoked["nzcrentr"] <= world.time - if(inathneq_available || sevtug_available || nezbere_available || nezcrentr_available) - desc += "Generals available:[inathneq_available ? "
INATH-NEQ":""][sevtug_available ? "
SEVTUG":""]\ - [nezbere_available ? "
NEZBERE":""][nezcrentr_available ? "
NZCRENTR":""]

" - else - desc += "Generals available: NONE
" - else - desc += "Generals available: NONE
" - for(var/i in scripture_states) - if(i != SCRIPTURE_DRIVER) //ignore the always-unlocked stuff - desc += "[i] Scripture: [scripture_states[i] ? "UNLOCKED":"LOCKED"]
" - ..() - //GUARDIANS /obj/screen/alert/cancharge @@ -457,23 +297,6 @@ so as to remain in compliance with the most up-to-date laws." icon_state = "newlaw" timeout = 300 -/obj/screen/alert/hackingapc - name = "Hacking APC" - desc = "An Area Power Controller is being hacked. When the process is \ - complete, you will have exclusive control of it, and you will gain \ - additional processing time to unlock more malfunction abilities." - icon_state = "hackingapc" - timeout = 600 - var/atom/target = null - -/obj/screen/alert/hackingapc/Click() - if(!usr || !usr.client) return - if(!target) return - var/mob/living/silicon/ai/AI = usr - var/turf/T = get_turf(target) - if(T) - AI.eyeobj.setLoc(T) - //MECHS /obj/screen/alert/low_mech_integrity @@ -536,7 +359,6 @@ so as to remain in compliance with the most up-to-date laws." if(isliving(usr)) var/mob/living/L = usr return L.resist() - // PRIVATE = only edit, use, or override these if you're editing the system as a whole // Re-render all alerts - also called in /datum/hud/show_hud() because it's needed there diff --git a/code/_onclick/hud/alien.dm b/code/_onclick/hud/alien.dm index 1f8b1c2488..20cfab176f 100644 --- a/code/_onclick/hud/alien.dm +++ b/code/_onclick/hud/alien.dm @@ -21,46 +21,50 @@ if(T) T.fire(A) + /obj/screen/alien/plasma_display icon = 'icons/mob/screen_gen.dmi' icon_state = "power_display2" name = "plasma stored" screen_loc = ui_alienplasmadisplay - -/obj/screen/alien/alien_queen_finder - icon = 'icons/mob/screen_alien.dmi' - icon_state = "queen_finder" - name = "queen sense" - desc = "Allows you to sense the general direction of your Queen." - screen_loc = ui_alien_queen_finder - - -/datum/hud/alien - ui_style_icon = 'icons/mob/screen_alien.dmi' - -/datum/hud/alien/New(mob/living/carbon/alien/humanoid/owner, ui_style = 'icons/mob/screen_alien.dmi') +/datum/hud/alien/New(mob/living/carbon/alien/humanoid/owner) ..() var/obj/screen/using + var/obj/screen/inventory/inv_box //equippable shit //hands - build_hand_slots(ui_style) + inv_box = new /obj/screen/inventory/hand() + inv_box.name = "right hand" + inv_box.icon = 'icons/mob/screen_alien.dmi' + inv_box.icon_state = "hand_r" + inv_box.screen_loc = ui_rhand + inv_box.slot_id = slot_r_hand + static_inventory += inv_box + + inv_box = new /obj/screen/inventory/hand() + inv_box.name = "left hand" + inv_box.icon = 'icons/mob/screen_alien.dmi' + inv_box.icon_state = "hand_l" + inv_box.screen_loc = ui_lhand + inv_box.slot_id = slot_l_hand + static_inventory += inv_box //begin buttons using = new /obj/screen/swap_hand() - using.icon = ui_style + using.icon = 'icons/mob/screen_alien.dmi' using.icon_state = "swap_1" - using.screen_loc = ui_swaphand_position(owner,1) + using.screen_loc = ui_swaphand1 static_inventory += using using = new /obj/screen/swap_hand() - using.icon = ui_style + using.icon = 'icons/mob/screen_alien.dmi' using.icon_state = "swap_2" - using.screen_loc = ui_swaphand_position(owner,2) + using.screen_loc = ui_swaphand2 static_inventory += using using = new /obj/screen/act_intent/alien() @@ -74,28 +78,23 @@ H.leap_icon.screen_loc = ui_alien_storage_r static_inventory += H.leap_icon - using = new/obj/screen/wheel/talk - using.screen_loc = ui_alien_talk_wheel - wheels += using - static_inventory += using - using = new /obj/screen/drop() - using.icon = ui_style + using.icon = 'icons/mob/screen_alien.dmi' using.screen_loc = ui_drop_throw static_inventory += using using = new /obj/screen/resist() - using.icon = ui_style + using.icon = 'icons/mob/screen_alien.dmi' using.screen_loc = ui_pull_resist hotkeybuttons += using throw_icon = new /obj/screen/throw_catch() - throw_icon.icon = ui_style + throw_icon.icon = 'icons/mob/screen_alien.dmi' throw_icon.screen_loc = ui_drop_throw hotkeybuttons += throw_icon pull_icon = new /obj/screen/pull() - pull_icon.icon = ui_style + pull_icon.icon = 'icons/mob/screen_alien.dmi' pull_icon.update_icon(mymob) pull_icon.screen_loc = ui_pull_resist static_inventory += pull_icon @@ -111,10 +110,6 @@ alien_plasma_display = new /obj/screen/alien/plasma_display() infodisplay += alien_plasma_display - if(!istype(mymob, /mob/living/carbon/alien/humanoid/royal/queen)) - alien_queen_finder = new /obj/screen/alien/alien_queen_finder - infodisplay += alien_queen_finder - zone_select = new /obj/screen/zone_sel/alien() zone_select.update_icon(mymob) static_inventory += zone_select @@ -125,18 +120,22 @@ inv_slots[inv.slot_id] = inv inv.update_icon() -/datum/hud/alien/persistent_inventory_update() +/datum/hud/alien/persistant_inventory_update() if(!mymob) return var/mob/living/carbon/alien/humanoid/H = mymob if(hud_version != HUD_STYLE_NOHUD) - for(var/obj/item/I in H.held_items) - I.screen_loc = ui_hand_position(H.get_held_index_of_item(I)) - H.client.screen += I + if(H.r_hand) + H.r_hand.screen_loc = ui_rhand + H.client.screen += H.r_hand + if(H.l_hand) + H.l_hand.screen_loc = ui_lhand + H.client.screen += H.l_hand else - for(var/obj/item/I in H.held_items) - I.screen_loc = null - H.client.screen -= I + if(H.r_hand) + H.r_hand.screen_loc = null + if(H.l_hand) + H.l_hand.screen_loc = null /mob/living/carbon/alien/humanoid/create_mob_hud() if(client && !hud_used) diff --git a/code/_onclick/hud/alien_larva.dm b/code/_onclick/hud/alien_larva.dm index 2392e349fe..a1464fa996 100644 --- a/code/_onclick/hud/alien_larva.dm +++ b/code/_onclick/hud/alien_larva.dm @@ -13,19 +13,13 @@ nightvisionicon = new /obj/screen/alien/nightvision() nightvisionicon.screen_loc = ui_alien_nightvision infodisplay += nightvisionicon - alien_queen_finder = new /obj/screen/alien/alien_queen_finder() - infodisplay += alien_queen_finder + pull_icon = new /obj/screen/pull() pull_icon.icon = 'icons/mob/screen_alien.dmi' pull_icon.update_icon(mymob) pull_icon.screen_loc = ui_pull_resist hotkeybuttons += pull_icon - using = new/obj/screen/wheel/talk - using.screen_loc = ui_alien_talk_wheel - wheels += using - static_inventory += using - zone_select = new /obj/screen/zone_sel/alien() zone_select.update_icon(mymob) static_inventory += zone_select diff --git a/code/_onclick/hud/blob_overmind.dm b/code/_onclick/hud/blob_overmind.dm index c3cc3851dc..66e4e1fd3c 100644 --- a/code/_onclick/hud/blob_overmind.dm +++ b/code/_onclick/hud/blob_overmind.dm @@ -34,15 +34,12 @@ desc = "Moves your camera to your blob core." /obj/screen/blob/JumpToCore/MouseEntered(location,control,params) - if(hud && hud.mymob && isovermind(hud.mymob)) - var/mob/camera/blob/B = hud.mymob + if(isovermind(usr)) + var/mob/camera/blob/B = usr if(!B.placed) - name = "Place Blob Core" - desc = "Attempt to place your blob core at this location." + openToolTip(usr,src,params,title = "Place Blob Core",content = "Attempt to place your blob core at this location.", theme = "blob") else - name = initial(name) - desc = initial(desc) - ..() + ..() /obj/screen/blob/JumpToCore/Click() if(isovermind(usr)) @@ -54,7 +51,7 @@ /obj/screen/blob/Blobbernaut icon_state = "ui_blobbernaut" name = "Produce Blobbernaut (40)" - desc = "Produces a strong, smart blobbernaut from a factory blob for 40 resources.
The factory blob used will become fragile and unable to produce spores." + desc = "Produces a strong, smart blobbernaut from a factory blob for 40 points.
The factory blob used will become fragile and unable to produce spores." /obj/screen/blob/Blobbernaut/Click() if(isovermind(usr)) @@ -64,7 +61,7 @@ /obj/screen/blob/ResourceBlob icon_state = "ui_resource" name = "Produce Resource Blob (40)" - desc = "Produces a resource blob for 40 resources.
Resource blobs will give you resources every few seconds." + desc = "Produces a resource blob for 40 points.
Resource blobs will give you points every few seconds." /obj/screen/blob/ResourceBlob/Click() if(isovermind(usr)) @@ -73,8 +70,8 @@ /obj/screen/blob/NodeBlob icon_state = "ui_node" - name = "Produce Node Blob (50)" - desc = "Produces a node blob for 50 resources.
Node blobs will expand and activate nearby resource and factory blobs." + name = "Produce Node Blob (60)" + desc = "Produces a node blob for 60 points.
Node blobs will expand and activate nearby resource and factory blobs." /obj/screen/blob/NodeBlob/Click() if(isovermind(usr)) @@ -84,7 +81,7 @@ /obj/screen/blob/FactoryBlob icon_state = "ui_factory" name = "Produce Factory Blob (60)" - desc = "Produces a factory blob for 60 resources.
Factory blobs will produce spores every few seconds." + desc = "Produces a factory blob for 60 points.
Factory blobs will produce spores every few seconds." /obj/screen/blob/FactoryBlob/Click() if(isovermind(usr)) @@ -94,18 +91,15 @@ /obj/screen/blob/ReadaptChemical icon_state = "ui_chemswap" name = "Readapt Chemical (40)" - desc = "Randomly rerolls your chemical for 40 resources." + desc = "Randomly rerolls your chemical for 40 points." /obj/screen/blob/ReadaptChemical/MouseEntered(location,control,params) - if(hud && hud.mymob && isovermind(hud.mymob)) - var/mob/camera/blob/B = hud.mymob + if(isovermind(usr)) + var/mob/camera/blob/B = usr if(B.free_chem_rerolls) - name = "Readapt Chemical (FREE)" - desc = "Randomly rerolls your chemical for free." + openToolTip(usr,src,params,title = "Readapt Chemical (FREE)",content = "Randomly rerolls your chemical for free.", theme = "blob") else - name = initial(name) - desc = initial(desc) - ..() + ..() /obj/screen/blob/ReadaptChemical/Click() if(isovermind(usr)) @@ -115,7 +109,7 @@ /obj/screen/blob/RelocateCore icon_state = "ui_swap" name = "Relocate Core (80)" - desc = "Swaps a node and your core for 80 resources." + desc = "Swaps a node and your core for 80 points." /obj/screen/blob/RelocateCore/Click() if(isovermind(usr)) @@ -132,7 +126,6 @@ blobpwrdisplay.screen_loc = ui_health blobpwrdisplay.mouse_opacity = 0 blobpwrdisplay.layer = ABOVE_HUD_LAYER - blobpwrdisplay.plane = ABOVE_HUD_PLANE infodisplay += blobpwrdisplay healths = new /obj/screen/healths/blob() @@ -148,7 +141,6 @@ using = new /obj/screen/blob/JumpToCore() using.screen_loc = ui_zonesel - using.hud = src static_inventory += using using = new /obj/screen/blob/Blobbernaut() @@ -160,16 +152,15 @@ static_inventory += using using = new /obj/screen/blob/NodeBlob() - using.screen_loc = ui_hand_position(2) + using.screen_loc = ui_lhand static_inventory += using using = new /obj/screen/blob/FactoryBlob() - using.screen_loc = ui_hand_position(1) + using.screen_loc = ui_rhand static_inventory += using using = new /obj/screen/blob/ReadaptChemical() using.screen_loc = ui_storage1 - using.hud = src static_inventory += using using = new /obj/screen/blob/RelocateCore() diff --git a/code/_onclick/hud/clockwork_marauder.dm b/code/_onclick/hud/clockwork_marauder.dm deleted file mode 100644 index 0b5c2e0f24..0000000000 --- a/code/_onclick/hud/clockwork_marauder.dm +++ /dev/null @@ -1,64 +0,0 @@ -/datum/hud/marauder - var/obj/screen/hosthealth - var/obj/screen/blockchance - var/obj/screen/counterchance - -/datum/hud/marauder/New(mob/living/simple_animal/hostile/guardian/owner) - ..() - var/obj/screen/using - - healths = new /obj/screen/healths/clock() - infodisplay += healths - - hosthealth = new /obj/screen/healths/clock() - hosthealth.screen_loc = ui_internal - infodisplay += hosthealth - - using = new /obj/screen/marauder/emerge() - using.screen_loc = ui_zonesel - static_inventory += using - - blockchance = new /obj/screen/marauder/blockchance() - blockchance.screen_loc = ui_hand_position(2) - infodisplay += blockchance - - counterchance = new /obj/screen/marauder/counterchance() - counterchance.screen_loc = ui_hand_position(1) - infodisplay += counterchance - -/datum/hud/marauder/Destroy() - blockchance = null - counterchance = null - hosthealth = null - return ..() - -/mob/living/simple_animal/hostile/clockwork/marauder/create_mob_hud() - if(client && !hud_used) - hud_used = new /datum/hud/marauder(src, ui_style2icon(client.prefs.UI_style)) - - -/obj/screen/marauder - icon = 'icons/mob/clockwork_mobs.dmi' - -/obj/screen/marauder/emerge - icon_state = "marauder_emerge" - name = "Emerge/Return" - desc = "Emerge or Return." - -/obj/screen/marauder/emerge/Click() - if(istype(usr, /mob/living/simple_animal/hostile/clockwork/marauder)) - var/mob/living/simple_animal/hostile/clockwork/marauder/M = usr - if(M.is_in_host()) - M.try_emerge() - else - M.return_to_host() - -/obj/screen/marauder/blockchance - icon_state = "marauder_block" - name = "Block Chance" - desc = "Clang." - -/obj/screen/marauder/counterchance - icon_state = "marauder_counter" - name = "Counter Chance" - desc = "Slash." diff --git a/code/_onclick/hud/devil.dm b/code/_onclick/hud/devil.dm index 0cd0b6a6a9..0ddaeccd23 100644 --- a/code/_onclick/hud/devil.dm +++ b/code/_onclick/hud/devil.dm @@ -5,6 +5,7 @@ /datum/hud/devil/New(mob/owner, ui_style = 'icons/mob/screen_midnight.dmi') ..() var/obj/screen/using + var/obj/screen/inventory/inv_box using = new /obj/screen/drop() using.icon = ui_style @@ -17,24 +18,36 @@ pull_icon.screen_loc = ui_drone_pull static_inventory += pull_icon - build_hand_slots(ui_style) + inv_box = new /obj/screen/inventory/hand() + inv_box.name = "right hand" + inv_box.icon = ui_style + inv_box.icon_state = "hand_r" + inv_box.screen_loc = ui_rhand + inv_box.slot_id = slot_r_hand + static_inventory += inv_box + + inv_box = new /obj/screen/inventory/hand() + inv_box.name = "left hand" + inv_box.icon = ui_style + inv_box.icon_state = "hand_l" + inv_box.screen_loc = ui_lhand + inv_box.slot_id = slot_l_hand + static_inventory += inv_box using = new /obj/screen/inventory() using.name = "hand" using.icon = ui_style using.icon_state = "swap_1_m" - using.screen_loc = ui_swaphand_position(owner,1) + using.screen_loc = ui_swaphand1 using.layer = HUD_LAYER - using.plane = HUD_PLANE static_inventory += using using = new /obj/screen/inventory() using.name = "hand" using.icon = ui_style using.icon_state = "swap_2" - using.screen_loc = ui_swaphand_position(owner,2) + using.screen_loc = ui_swaphand2 using.layer = HUD_LAYER - using.plane = HUD_PLANE static_inventory += using zone_select = new /obj/screen/zone_sel() @@ -46,19 +59,23 @@ infodisplay += devilsouldisplay -/datum/hud/devil/persistent_inventory_update() +/datum/hud/devil/persistant_inventory_update() if(!mymob) return var/mob/living/carbon/true_devil/D = mymob if(hud_version != HUD_STYLE_NOHUD) - for(var/obj/item/I in D.held_items) - I.screen_loc = ui_hand_position(D.get_held_index_of_item(I)) - D.client.screen += I + if(D.r_hand) + D.r_hand.screen_loc = ui_rhand + D.client.screen += D.r_hand + if(D.l_hand) + D.l_hand.screen_loc = ui_lhand + D.client.screen += D.l_hand else - for(var/obj/item/I in D.held_items) - I.screen_loc = null - D.client.screen -= I + if(D.r_hand) + D.r_hand.screen_loc = null + if(D.l_hand) + D.l_hand.screen_loc = null /mob/living/carbon/true_devil/create_mob_hud() if(client && !hud_used) diff --git a/code/_onclick/hud/drones.dm b/code/_onclick/hud/drones.dm index b6708b266d..631686b089 100644 --- a/code/_onclick/hud/drones.dm +++ b/code/_onclick/hud/drones.dm @@ -1,14 +1,42 @@ -/datum/hud/dextrous/drone/New(mob/owner, ui_style = 'icons/mob/screen_midnight.dmi') +/datum/hud/drone/New(mob/owner, ui_style = 'icons/mob/screen_midnight.dmi') ..() + var/obj/screen/using var/obj/screen/inventory/inv_box + using = new /obj/screen/drop() + using.icon = ui_style + using.screen_loc = ui_drone_drop + static_inventory += using + + pull_icon = new /obj/screen/pull() + pull_icon.icon = ui_style + pull_icon.update_icon(mymob) + pull_icon.screen_loc = ui_drone_pull + static_inventory += pull_icon + + inv_box = new /obj/screen/inventory/hand() + inv_box.name = "right hand" + inv_box.icon = ui_style + inv_box.icon_state = "hand_r" + inv_box.screen_loc = ui_rhand + inv_box.slot_id = slot_r_hand + static_inventory += inv_box + + inv_box = new /obj/screen/inventory/hand() + inv_box.name = "left hand" + inv_box.icon = ui_style + inv_box.icon_state = "hand_l" + inv_box.screen_loc = ui_lhand + inv_box.slot_id = slot_l_hand + static_inventory += inv_box + inv_box = new /obj/screen/inventory() inv_box.name = "internal storage" inv_box.icon = ui_style inv_box.icon_state = "suit_storage" // inv_box.icon_full = "template" inv_box.screen_loc = ui_drone_storage - inv_box.slot_id = slot_generic_dextrous_storage + inv_box.slot_id = slot_drone_storage static_inventory += inv_box inv_box = new /obj/screen/inventory() @@ -20,6 +48,26 @@ inv_box.slot_id = slot_head static_inventory += inv_box + using = new /obj/screen/swap_hand() + using.icon = ui_style + using.icon_state = "swap_1_m" + using.screen_loc = ui_swaphand1 + static_inventory += using + + using = new /obj/screen/swap_hand() + using.icon = ui_style + using.icon_state = "swap_2" + using.screen_loc = ui_swaphand2 + static_inventory += using + + zone_select = new /obj/screen/zone_sel() + zone_select.icon = ui_style + zone_select.update_icon(mymob) + + using = new /obj/screen/inventory/craft + using.icon = ui_style + static_inventory += using + for(var/obj/screen/inventory/inv in (static_inventory + toggleable_inventory)) if(inv.slot_id) inv.hud = src @@ -27,7 +75,7 @@ inv.update_icon() -/datum/hud/dextrous/drone/persistent_inventory_update() +/datum/hud/drone/persistant_inventory_update() if(!mymob) return var/mob/living/simple_animal/drone/D = mymob @@ -45,4 +93,19 @@ if(D.head) D.head.screen_loc = null - ..() + if(hud_version != HUD_STYLE_NOHUD) + if(D.r_hand) + D.r_hand.screen_loc = ui_rhand + D.client.screen += D.r_hand + if(D.l_hand) + D.l_hand.screen_loc = ui_lhand + D.client.screen += D.l_hand + else + if(D.r_hand) + D.r_hand.screen_loc = null + if(D.l_hand) + D.l_hand.screen_loc = null + +/mob/living/simple_animal/drone/create_mob_hud() + if(client && !hud_used) + hud_used = new /datum/hud/drone(src, ui_style2icon(client.prefs.UI_style)) diff --git a/code/_onclick/hud/fullscreen.dm b/code/_onclick/hud/fullscreen.dm index 4d05e42f40..0baf90a473 100644 --- a/code/_onclick/hud/fullscreen.dm +++ b/code/_onclick/hud/fullscreen.dm @@ -60,7 +60,6 @@ icon_state = "default" screen_loc = "CENTER-7,CENTER-7" layer = FULLSCREEN_LAYER - plane = FULLSCREEN_PLANE mouse_opacity = 0 var/severity = 0 @@ -72,22 +71,18 @@ /obj/screen/fullscreen/brute icon_state = "brutedamageoverlay" layer = UI_DAMAGE_LAYER - plane = FULLSCREEN_PLANE /obj/screen/fullscreen/oxy icon_state = "oxydamageoverlay" layer = UI_DAMAGE_LAYER - plane = FULLSCREEN_PLANE /obj/screen/fullscreen/crit icon_state = "passage" layer = CRIT_LAYER - plane = FULLSCREEN_PLANE /obj/screen/fullscreen/blind icon_state = "blackimageoverlay" layer = BLIND_LAYER - plane = FULLSCREEN_PLANE /obj/screen/fullscreen/impaired icon_state = "impairedoverlay" @@ -102,7 +97,7 @@ screen_loc = "WEST,SOUTH to EAST,NORTH" icon_state = "flash" -/obj/screen/fullscreen/flash/static +/obj/screen/fullscreen/flash/noise icon = 'icons/mob/screen_gen.dmi' screen_loc = "WEST,SOUTH to EAST,NORTH" icon_state = "noise" @@ -111,18 +106,3 @@ icon = 'icons/mob/screen_gen.dmi' screen_loc = "WEST,SOUTH to EAST,NORTH" icon_state = "druggy" - -/obj/screen/fullscreen/color_vision - icon = 'icons/mob/screen_gen.dmi' - screen_loc = "WEST,SOUTH to EAST,NORTH" - icon_state = "flash" - alpha = 80 - -/obj/screen/fullscreen/color_vision/green - color = "#00ff00" - -/obj/screen/fullscreen/color_vision/red - color = "#ff0000" - -/obj/screen/fullscreen/color_vision/blue - color = "#0000ff" \ No newline at end of file diff --git a/code/_onclick/hud/generic_dextrous.dm b/code/_onclick/hud/generic_dextrous.dm index f20730483a..fe772d94ca 100644 --- a/code/_onclick/hud/generic_dextrous.dm +++ b/code/_onclick/hud/generic_dextrous.dm @@ -2,42 +2,39 @@ /datum/hud/dextrous/New(mob/living/owner, ui_style = 'icons/mob/screen_midnight.dmi') ..() var/obj/screen/using + var/obj/screen/inventory/inv_box using = new /obj/screen/drop() using.icon = ui_style using.screen_loc = ui_drone_drop static_inventory += using - pull_icon = new /obj/screen/pull() - pull_icon.icon = ui_style - pull_icon.update_icon(mymob) - pull_icon.screen_loc = ui_drone_pull - static_inventory += pull_icon + inv_box = new /obj/screen/inventory/hand() + inv_box.name = "right hand" + inv_box.icon = ui_style + inv_box.icon_state = "hand_r" + inv_box.screen_loc = ui_rhand + inv_box.slot_id = slot_r_hand + static_inventory += inv_box - build_hand_slots(ui_style) + inv_box = new /obj/screen/inventory/hand() + inv_box.name = "left hand" + inv_box.icon = ui_style + inv_box.icon_state = "hand_l" + inv_box.screen_loc = ui_lhand + inv_box.slot_id = slot_l_hand + static_inventory += inv_box using = new /obj/screen/swap_hand() using.icon = ui_style using.icon_state = "swap_1_m" - using.screen_loc = ui_swaphand_position(owner,1) + using.screen_loc = ui_swaphand1 static_inventory += using using = new /obj/screen/swap_hand() using.icon = ui_style using.icon_state = "swap_2" - using.screen_loc = ui_swaphand_position(owner,2) - static_inventory += using - - zone_select = new /obj/screen/zone_sel() - zone_select.icon = ui_style - zone_select.update_icon(mymob) - - using = new /obj/screen/inventory/craft - using.icon = ui_style - static_inventory += using - - using = new /obj/screen/inventory/area_creator - using.icon = ui_style + using.screen_loc = ui_swaphand2 static_inventory += using mymob.client.screen = list() @@ -48,24 +45,19 @@ inv_slots[inv.slot_id] = inv inv.update_icon() -/datum/hud/dextrous/persistent_inventory_update() +/datum/hud/dextrous/persistant_inventory_update() if(!mymob) return var/mob/living/D = mymob if(hud_version != HUD_STYLE_NOHUD) - for(var/obj/item/I in D.held_items) - I.screen_loc = ui_hand_position(D.get_held_index_of_item(I)) - D.client.screen += I + if(D.r_hand) + D.r_hand.screen_loc = ui_rhand + D.client.screen += D.r_hand + if(D.l_hand) + D.l_hand.screen_loc = ui_lhand + D.client.screen += D.l_hand else - for(var/obj/item/I in D.held_items) - I.screen_loc = null - D.client.screen -= I - - -//Dextrous simple mobs can use hands! -/mob/living/simple_animal/create_mob_hud() - if(client && !hud_used) - if(dextrous) - hud_used = new dextrous_hud_type(src, ui_style2icon(client.prefs.UI_style)) - else - ..() + if(D.r_hand) + D.r_hand.screen_loc = null + if(D.l_hand) + D.l_hand.screen_loc = null diff --git a/code/_onclick/hud/ghost.dm b/code/_onclick/hud/ghost.dm index 546f0a6a02..aa39055e94 100644 --- a/code/_onclick/hud/ghost.dm +++ b/code/_onclick/hud/ghost.dm @@ -36,15 +36,7 @@ var/mob/dead/observer/G = usr G.dead_tele() -/obj/screen/ghost/pai - name = "pAI Candidate" - icon_state = "pai" - -/obj/screen/ghost/pai/Click() - var/mob/dead/observer/G = usr - G.register_pai() - -/datum/hud/ghost/New(mob/owner, ui_style = 'icons/mob/screen_midnight.dmi') +/datum/hud/ghost/New(mob/owner) ..() var/mob/dead/observer/G = mymob if(!G.client.prefs.ghost_hud) @@ -69,19 +61,14 @@ using.screen_loc = ui_ghost_teleport static_inventory += using - using = new /obj/screen/ghost/pai() - using.screen_loc = ui_ghost_pai - static_inventory += using - /datum/hud/ghost/show_hud() var/mob/dead/observer/G = mymob mymob.client.screen = list() - create_parallax() - if(G.client.prefs.ghost_hud) - mymob.client.screen += static_inventory - + if(!G.client.prefs.ghost_hud) + return + mymob.client.screen += static_inventory /mob/dead/observer/create_mob_hud() if(client && !hud_used) - hud_used = new /datum/hud/ghost(src, ui_style2icon(client.prefs.UI_style)) + hud_used = new /datum/hud/ghost(src) diff --git a/code/_onclick/hud/guardian.dm b/code/_onclick/hud/guardian.dm index dc57c2b25c..0a9601385f 100644 --- a/code/_onclick/hud/guardian.dm +++ b/code/_onclick/hud/guardian.dm @@ -7,11 +7,11 @@ infodisplay += healths using = new /obj/screen/guardian/Manifest() - using.screen_loc = ui_hand_position(2) + using.screen_loc = ui_rhand static_inventory += using using = new /obj/screen/guardian/Recall() - using.screen_loc = ui_hand_position(1) + using.screen_loc = ui_lhand static_inventory += using using = new owner.toggle_button_type() @@ -29,69 +29,8 @@ /mob/living/simple_animal/hostile/guardian/create_mob_hud() if(client && !hud_used) - if(dextrous) - ..() - else - hud_used = new /datum/hud/guardian(src, ui_style2icon(client.prefs.UI_style)) + hud_used = new /datum/hud/guardian(src) -/datum/hud/dextrous/guardian/New(mob/living/simple_animal/hostile/guardian/owner, ui_style = 'icons/mob/screen_midnight.dmi') //for a dextrous guardian - ..() - var/obj/screen/using - if(istype(owner, /mob/living/simple_animal/hostile/guardian/dextrous)) - var/obj/screen/inventory/inv_box - - inv_box = new /obj/screen/inventory() - inv_box.name = "internal storage" - inv_box.icon = ui_style - inv_box.icon_state = "suit_storage" - inv_box.screen_loc = ui_id - inv_box.slot_id = slot_generic_dextrous_storage - static_inventory += inv_box - - using = new /obj/screen/guardian/Communicate() - using.screen_loc = ui_sstore1 - static_inventory += using - - else - - using = new /obj/screen/guardian/Communicate() - using.screen_loc = ui_id - static_inventory += using - - healths = new /obj/screen/healths/guardian() - infodisplay += healths - - using = new /obj/screen/guardian/Manifest() - using.screen_loc = ui_belt - static_inventory += using - - using = new /obj/screen/guardian/Recall() - using.screen_loc = ui_back - static_inventory += using - - using = new owner.toggle_button_type() - using.screen_loc = ui_storage2 - static_inventory += using - - using = new /obj/screen/guardian/ToggleLight() - using.screen_loc = ui_inventory - static_inventory += using - -/datum/hud/dextrous/guardian/persistent_inventory_update() - if(!mymob) - return - if(istype(mymob, /mob/living/simple_animal/hostile/guardian/dextrous)) - var/mob/living/simple_animal/hostile/guardian/dextrous/D = mymob - - if(hud_shown) - if(D.internal_storage) - D.internal_storage.screen_loc = ui_id - D.client.screen += D.internal_storage - else - if(D.internal_storage) - D.internal_storage.screen_loc = null - - ..() /obj/screen/guardian icon = 'icons/mob/guardian.dmi' diff --git a/code/_onclick/hud/hud.dm b/code/_onclick/hud/hud.dm index 56123031d9..591e47f83d 100644 --- a/code/_onclick/hud/hud.dm +++ b/code/_onclick/hud/hud.dm @@ -9,7 +9,7 @@ var/hud_shown = 1 //Used for the HUD toggle (F12) var/hud_version = 1 //Current displayed version of the HUD - var/inventory_shown = 0 //Equipped item inventory + var/inventory_shown = 1 //the inventory var/show_intent_icons = 0 var/hotkey_ui_hidden = 0 //This is to hide the buttons that can be used via hotkeys. (hotkeybuttons list of buttons) @@ -19,7 +19,6 @@ var/obj/screen/blobpwrdisplay var/obj/screen/alien_plasma_display - var/obj/screen/alien_queen_finder var/obj/screen/devil/soul_counter/devilsouldisplay @@ -33,16 +32,12 @@ var/obj/screen/throw_icon var/obj/screen/module_store_icon - var/list/wheels = list() //list of the wheel screen objects - var/list/static_inventory = list() //the screen objects which are static var/list/toggleable_inventory = list() //the screen objects which can be hidden var/list/obj/screen/hotkeybuttons = list() //the buttons that can be used via hotkeys var/list/infodisplay = list() //the screen objects that display mob info (health, alien plasma, etc...) var/list/screenoverlays = list() //the screen objects used as whole screen overlays (flash, damageoverlay, etc...) var/list/inv_slots[slots_amt] // /obj/screen/inventory objects, ordered by their slot ID. - var/list/hand_slots // /obj/screen/inventory/hand objects, assoc list of "[held_index]" = object - var/list/obj/screen/plane_master/plane_masters = list() // see "appearance_flags" in the ref, assoc list of "[plane]" = object var/obj/screen/movable/action_button/hide_toggle/hide_actions_toggle var/action_buttons_hidden = 0 @@ -51,21 +46,10 @@ var/obj/screen/healthdoll var/obj/screen/internals - var/ui_style_icon = 'icons/mob/screen_midnight.dmi' - -/datum/hud/New(mob/owner , ui_style = 'icons/mob/screen_midnight.dmi') +/datum/hud/New(mob/owner) mymob = owner - - ui_style_icon = ui_style - hide_actions_toggle = new - hide_actions_toggle.InitialiseIcon(src) - - hand_slots = list() - - for(var/mytype in subtypesof(/obj/screen/plane_master)) - var/obj/screen/plane_master/instance = new mytype() - plane_masters["[instance.plane]"] = instance + hide_actions_toggle.InitialiseIcon(mymob) /datum/hud/Destroy() if(mymob.hud_used == src) @@ -77,8 +61,6 @@ qdel(module_store_icon) module_store_icon = null - wheels = null //all wheels are also in static_inventory - if(static_inventory.len) for(var/thing in static_inventory) qdel(thing) @@ -114,16 +96,10 @@ lingstingdisplay = null blobpwrdisplay = null alien_plasma_display = null - alien_queen_finder = null deity_power_display = null deity_follower_display = null nightvisionicon = null - if(plane_masters.len) - for(var/thing in plane_masters) - qdel(plane_masters[thing]) - plane_masters.Cut() - if(screenoverlays.len) for(var/thing in screenoverlays) qdel(thing) @@ -136,15 +112,13 @@ hud_used = new /datum/hud(src) //Version denotes which style should be displayed. blank or 0 means "next version" -/datum/hud/proc/show_hud(version = 0,mob/viewmob) +/datum/hud/proc/show_hud(version = 0) if(!ismob(mymob)) return 0 if(!mymob.client) return 0 - var/mob/screenmob = viewmob || mymob - - screenmob.client.screen = list() + mymob.client.screen = list() var/display_hud_version = version if(!display_hud_version) //If 0 or blank, display the next hud version @@ -156,13 +130,13 @@ if(HUD_STYLE_STANDARD) //Default HUD hud_shown = 1 //Governs behavior of other procs if(static_inventory.len) - screenmob.client.screen += static_inventory - if(toggleable_inventory.len && screenmob.hud_used && screenmob.hud_used.inventory_shown) - screenmob.client.screen += toggleable_inventory + mymob.client.screen += static_inventory + if(toggleable_inventory.len && inventory_shown) + mymob.client.screen += toggleable_inventory if(hotkeybuttons.len && !hotkey_ui_hidden) - screenmob.client.screen += hotkeybuttons + mymob.client.screen += hotkeybuttons if(infodisplay.len) - screenmob.client.screen += infodisplay + mymob.client.screen += infodisplay mymob.client.screen += hide_actions_toggle @@ -172,48 +146,45 @@ if(HUD_STYLE_REDUCED) //Reduced HUD hud_shown = 0 //Governs behavior of other procs if(static_inventory.len) - screenmob.client.screen -= static_inventory + mymob.client.screen -= static_inventory if(toggleable_inventory.len) - screenmob.client.screen -= toggleable_inventory + mymob.client.screen -= toggleable_inventory if(hotkeybuttons.len) - screenmob.client.screen -= hotkeybuttons + mymob.client.screen -= hotkeybuttons if(infodisplay.len) - screenmob.client.screen += infodisplay + mymob.client.screen += infodisplay //These ones are a part of 'static_inventory', 'toggleable_inventory' or 'hotkeybuttons' but we want them to stay - for(var/h in hand_slots) - var/obj/screen/hand = hand_slots[h] - if(hand) - screenmob.client.screen += hand + if(inv_slots[slot_l_hand]) + mymob.client.screen += inv_slots[slot_l_hand] //we want the hands to be visible + if(inv_slots[slot_r_hand]) + mymob.client.screen += inv_slots[slot_r_hand] //we want the hands to be visible if(action_intent) - screenmob.client.screen += action_intent //we want the intent switcher visible + mymob.client.screen += action_intent //we want the intent switcher visible action_intent.screen_loc = ui_acti_alt //move this to the alternative position, where zone_select usually is. if(HUD_STYLE_NOHUD) //No HUD hud_shown = 0 //Governs behavior of other procs if(static_inventory.len) - screenmob.client.screen -= static_inventory + mymob.client.screen -= static_inventory if(toggleable_inventory.len) - screenmob.client.screen -= toggleable_inventory + mymob.client.screen -= toggleable_inventory if(hotkeybuttons.len) - screenmob.client.screen -= hotkeybuttons + mymob.client.screen -= hotkeybuttons if(infodisplay.len) - screenmob.client.screen -= infodisplay + mymob.client.screen -= infodisplay - if(plane_masters.len) - for(var/thing in plane_masters) - screenmob.client.screen += plane_masters[thing] hud_version = display_hud_version - persistent_inventory_update(screenmob) + persistant_inventory_update() mymob.update_action_buttons(1) reorganize_alerts() mymob.reload_fullscreen() - create_parallax() + update_parallax_existence() -/datum/hud/human/show_hud(version = 0,mob/viewmob) +/datum/hud/human/show_hud(version = 0) ..() - hidden_inventory_update(viewmob) + hidden_inventory_update() /datum/hud/robot/show_hud(version = 0) ..() @@ -222,19 +193,8 @@ /datum/hud/proc/hidden_inventory_update() return -/datum/hud/proc/persistent_inventory_update(mob/viewer) - if(!mymob) - return - var/mob/living/L = mymob - - var/mob/screenmob = viewer || L - - for(var/X in wheels) - var/obj/screen/wheel/W = X - if(W.toggled) - screenmob.client.screen |= W.buttons_list - else - screenmob.client.screen -= W.buttons_list +/datum/hud/proc/persistant_inventory_update() + return //Triggered when F12 is pressed (Unless someone changed something in the DMF) /mob/verb/button_pressed_F12() @@ -246,35 +206,3 @@ usr << "Switched HUD mode. Press F12 to toggle." else usr << "This mob type does not use a HUD." - - -//(re)builds the hand ui slots, throwing away old ones -//not really worth jugglying existing ones so we just scrap+rebuild -//9/10 this is only called once per mob and only for 2 hands -/datum/hud/proc/build_hand_slots(ui_style = 'icons/mob/screen_midnight.dmi') - for(var/h in hand_slots) - var/obj/screen/inventory/hand/H = hand_slots[h] - if(H) - static_inventory -= H - hand_slots = list() - var/obj/screen/inventory/hand/hand_box - for(var/i in 1 to mymob.held_items.len) - hand_box = new /obj/screen/inventory/hand() - hand_box.name = mymob.get_held_index_name(i) - hand_box.icon = ui_style - hand_box.icon_state = "hand_[mymob.held_index_to_dir(i)]" - hand_box.screen_loc = ui_hand_position(i) - hand_box.held_index = i - hand_slots["[i]"] = hand_box - hand_box.hud = src - static_inventory += hand_box - hand_box.update_icon() - - var/i = 1 - for(var/obj/screen/swap_hand/SH in static_inventory) - SH.screen_loc = ui_swaphand_position(mymob,!(i % 2) ? 2: 1) - i++ - for(var/obj/screen/human/equip/E in static_inventory) - E.screen_loc = ui_equip_position(mymob) - if(mymob.hud_used) - show_hud(HUD_STYLE_STANDARD,mymob) \ No newline at end of file diff --git a/code/_onclick/hud/human.dm b/code/_onclick/hud/human.dm index 8ec31271be..9fa64a77ff 100644 --- a/code/_onclick/hud/human.dm +++ b/code/_onclick/hud/human.dm @@ -6,22 +6,14 @@ icon_state = "toggle" /obj/screen/human/toggle/Click() - - var/mob/targetmob = usr - - if(isobserver(usr)) - if(ishuman(usr.client.eye) && (usr.client.eye != usr)) - var/mob/M = usr.client.eye - targetmob = M - - if(usr.hud_used.inventory_shown && targetmob.hud_used) + if(usr.hud_used.inventory_shown) usr.hud_used.inventory_shown = 0 - usr.client.screen -= targetmob.hud_used.toggleable_inventory + usr.client.screen -= usr.hud_used.toggleable_inventory else usr.hud_used.inventory_shown = 1 - usr.client.screen += targetmob.hud_used.toggleable_inventory + usr.client.screen += usr.hud_used.toggleable_inventory - targetmob.hud_used.hidden_inventory_update(usr) + usr.hud_used.hidden_inventory_update() /obj/screen/human/equip name = "equip" @@ -70,8 +62,6 @@ screen_loc = ui_lingstingdisplay /obj/screen/ling/sting/Click() - if(isobserver(usr)) - return var/mob/living/carbon/U = usr U.unset_sting() @@ -87,6 +77,7 @@ /datum/hud/human/New(mob/living/carbon/human/owner, ui_style = 'icons/mob/screen_midnight.dmi') ..() + var/obj/screen/using var/obj/screen/inventory/inv_box @@ -94,15 +85,6 @@ using.icon = ui_style static_inventory += using - using = new/obj/screen/wheel/talk - using.icon = ui_style - wheels += using - static_inventory += using - - using = new /obj/screen/inventory/area_creator - using.icon = ui_style - static_inventory += using - using = new /obj/screen/act_intent() using.icon_state = mymob.a_intent static_inventory += using @@ -110,7 +92,7 @@ using = new /obj/screen/mov_intent() using.icon = ui_style - using.icon_state = (mymob.m_intent == MOVE_INTENT_RUN ? "running" : "walking") + using.icon_state = (mymob.m_intent == "run" ? "running" : "walking") using.screen_loc = ui_movi static_inventory += using @@ -137,18 +119,32 @@ inv_box.screen_loc = ui_oclothing toggleable_inventory += inv_box - build_hand_slots(ui_style) + inv_box = new /obj/screen/inventory/hand() + inv_box.name = "right hand" + inv_box.icon = ui_style + inv_box.icon_state = "hand_r" + inv_box.screen_loc = ui_rhand + inv_box.slot_id = slot_r_hand + static_inventory += inv_box + + inv_box = new /obj/screen/inventory/hand() + inv_box.name = "left hand" + inv_box.icon = ui_style + inv_box.icon_state = "hand_l" + inv_box.screen_loc = ui_lhand + inv_box.slot_id = slot_l_hand + static_inventory += inv_box using = new /obj/screen/swap_hand() using.icon = ui_style using.icon_state = "swap_1" - using.screen_loc = ui_swaphand_position(owner,1) + using.screen_loc = ui_swaphand1 static_inventory += using using = new /obj/screen/swap_hand() using.icon = ui_style using.icon_state = "swap_2" - using.screen_loc = ui_swaphand_position(owner,2) + using.screen_loc = ui_swaphand2 static_inventory += using inv_box = new /obj/screen/inventory() @@ -169,15 +165,6 @@ inv_box.slot_id = slot_wear_mask toggleable_inventory += inv_box - inv_box = new /obj/screen/inventory() - inv_box.name = "neck" - inv_box.icon = ui_style - inv_box.icon_state = "neck" -// inv_box.icon_full = "template" - inv_box.screen_loc = ui_neck - inv_box.slot_id = slot_neck - toggleable_inventory += inv_box - inv_box = new /obj/screen/inventory() inv_box.name = "back" inv_box.icon = ui_style @@ -226,7 +213,7 @@ using = new /obj/screen/human/equip() using.icon = ui_style - using.screen_loc = ui_equip_position(mymob) + using.screen_loc = ui_equip static_inventory += using inv_box = new /obj/screen/inventory() @@ -317,111 +304,102 @@ zone_select.update_icon(mymob) static_inventory += zone_select + inventory_shown = 0 + for(var/obj/screen/inventory/inv in (static_inventory + toggleable_inventory)) if(inv.slot_id) inv.hud = src inv_slots[inv.slot_id] = inv inv.update_icon() -/datum/hud/human/hidden_inventory_update(mob/viewer) +/datum/hud/human/hidden_inventory_update() if(!mymob) return var/mob/living/carbon/human/H = mymob - - var/mob/screenmob = viewer || H - - if(screenmob.hud_used.inventory_shown && screenmob.hud_used.hud_shown) + if(inventory_shown && hud_shown) if(H.shoes) H.shoes.screen_loc = ui_shoes - screenmob.client.screen += H.shoes + H.client.screen += H.shoes if(H.gloves) H.gloves.screen_loc = ui_gloves - screenmob.client.screen += H.gloves + H.client.screen += H.gloves if(H.ears) H.ears.screen_loc = ui_ears - screenmob.client.screen += H.ears + H.client.screen += H.ears if(H.glasses) H.glasses.screen_loc = ui_glasses - screenmob.client.screen += H.glasses + H.client.screen += H.glasses if(H.w_uniform) H.w_uniform.screen_loc = ui_iclothing - screenmob.client.screen += H.w_uniform + H.client.screen += H.w_uniform if(H.wear_suit) H.wear_suit.screen_loc = ui_oclothing - screenmob.client.screen += H.wear_suit + H.client.screen += H.wear_suit if(H.wear_mask) H.wear_mask.screen_loc = ui_mask - screenmob.client.screen += H.wear_mask - if(H.wear_neck) - H.wear_neck.screen_loc = ui_neck - screenmob.client.screen += H.wear_neck + H.client.screen += H.wear_mask if(H.head) H.head.screen_loc = ui_head - screenmob.client.screen += H.head + H.client.screen += H.head else - if(H.shoes) screenmob.client.screen -= H.shoes - if(H.gloves) screenmob.client.screen -= H.gloves - if(H.ears) screenmob.client.screen -= H.ears - if(H.glasses) screenmob.client.screen -= H.glasses - if(H.w_uniform) screenmob.client.screen -= H.w_uniform - if(H.wear_suit) screenmob.client.screen -= H.wear_suit - if(H.wear_mask) screenmob.client.screen -= H.wear_mask - if(H.wear_neck) screenmob.client.screen -= H.wear_neck - if(H.head) screenmob.client.screen -= H.head + if(H.shoes) H.shoes.screen_loc = null + if(H.gloves) H.gloves.screen_loc = null + if(H.ears) H.ears.screen_loc = null + if(H.glasses) H.glasses.screen_loc = null + if(H.w_uniform) H.w_uniform.screen_loc = null + if(H.wear_suit) H.wear_suit.screen_loc = null + if(H.wear_mask) H.wear_mask.screen_loc = null + if(H.head) H.head.screen_loc = null - - -/datum/hud/human/persistent_inventory_update(mob/viewer) +/datum/hud/human/persistant_inventory_update() if(!mymob) return - ..() var/mob/living/carbon/human/H = mymob - - var/mob/screenmob = viewer || H - - if(screenmob.hud_used) - if(screenmob.hud_used.hud_shown) - if(H.s_store) - H.s_store.screen_loc = ui_sstore1 - screenmob.client.screen += H.s_store - if(H.wear_id) - H.wear_id.screen_loc = ui_id - screenmob.client.screen += H.wear_id - if(H.belt) - H.belt.screen_loc = ui_belt - screenmob.client.screen += H.belt - if(H.back) - H.back.screen_loc = ui_back - screenmob.client.screen += H.back - if(H.l_store) - H.l_store.screen_loc = ui_storage1 - screenmob.client.screen += H.l_store - if(H.r_store) - H.r_store.screen_loc = ui_storage2 - screenmob.client.screen += H.r_store - else - if(H.s_store) - screenmob.client.screen -= H.s_store - if(H.wear_id) - screenmob.client.screen -= H.wear_id - if(H.belt) - screenmob.client.screen -= H.belt - if(H.back) - screenmob.client.screen -= H.back - if(H.l_store) - screenmob.client.screen -= H.l_store - if(H.r_store) - screenmob.client.screen -= H.r_store + if(hud_shown) + if(H.s_store) + H.s_store.screen_loc = ui_sstore1 + H.client.screen += H.s_store + if(H.wear_id) + H.wear_id.screen_loc = ui_id + H.client.screen += H.wear_id + if(H.belt) + H.belt.screen_loc = ui_belt + H.client.screen += H.belt + if(H.back) + H.back.screen_loc = ui_back + H.client.screen += H.back + if(H.l_store) + H.l_store.screen_loc = ui_storage1 + H.client.screen += H.l_store + if(H.r_store) + H.r_store.screen_loc = ui_storage2 + H.client.screen += H.r_store + else + if(H.s_store) + H.s_store.screen_loc = null + if(H.wear_id) + H.wear_id.screen_loc = null + if(H.belt) + H.belt.screen_loc = null + if(H.back) + H.back.screen_loc = null + if(H.l_store) + H.l_store.screen_loc = null + if(H.r_store) + H.r_store.screen_loc = null if(hud_version != HUD_STYLE_NOHUD) - for(var/obj/item/I in H.held_items) - I.screen_loc = ui_hand_position(H.get_held_index_of_item(I)) - screenmob.client.screen += I + if(H.r_hand) + H.r_hand.screen_loc = ui_rhand + H.client.screen += H.r_hand + if(H.l_hand) + H.l_hand.screen_loc = ui_lhand + H.client.screen += H.l_hand else - for(var/obj/item/I in H.held_items) - I.screen_loc = null - screenmob.client.screen -= I - + if(H.r_hand) + H.r_hand.screen_loc = null + if(H.l_hand) + H.l_hand.screen_loc = null /mob/living/carbon/human/verb/toggle_hotkey_verbs() set category = "OOC" diff --git a/code/_onclick/hud/monkey.dm b/code/_onclick/hud/monkey.dm index f0f8f7689e..dea167cd6c 100644 --- a/code/_onclick/hud/monkey.dm +++ b/code/_onclick/hud/monkey.dm @@ -12,32 +12,41 @@ using = new /obj/screen/mov_intent() using.icon = ui_style - using.icon_state = (mymob.m_intent == MOVE_INTENT_RUN ? "running" : "walking") + using.icon_state = (mymob.m_intent == "run" ? "running" : "walking") using.screen_loc = ui_movi static_inventory += using - using = new/obj/screen/wheel/talk - using.icon = ui_style - wheels += using - static_inventory += using - using = new /obj/screen/drop() using.icon = ui_style using.screen_loc = ui_drop_throw static_inventory += using - build_hand_slots(ui_style) + inv_box = new /obj/screen/inventory/hand() + inv_box.name = "right hand" + inv_box.icon = ui_style + inv_box.icon_state = "hand_r" + inv_box.screen_loc = ui_rhand + inv_box.slot_id = slot_r_hand + static_inventory += inv_box + + inv_box = new /obj/screen/inventory/hand() + inv_box.name = "left hand" + inv_box.icon = ui_style + inv_box.icon_state = "hand_l" + inv_box.screen_loc = ui_lhand + inv_box.slot_id = slot_l_hand + static_inventory += inv_box using = new /obj/screen/swap_hand() using.icon = ui_style using.icon_state = "swap_1_m" //extra wide! - using.screen_loc = ui_swaphand_position(owner,1) + using.screen_loc = ui_swaphand1 static_inventory += using using = new /obj/screen/swap_hand() using.icon = ui_style using.icon_state = "swap_2" - using.screen_loc = ui_swaphand_position(owner,2) + using.screen_loc = ui_swaphand2 static_inventory += using inv_box = new /obj/screen/inventory() @@ -49,15 +58,6 @@ inv_box.slot_id = slot_wear_mask static_inventory += inv_box - inv_box = new /obj/screen/inventory() - inv_box.name = "neck" - inv_box.icon = ui_style - inv_box.icon_state = "neck" -// inv_box.icon_full = "template" - inv_box.screen_loc = ui_monkey_neck - inv_box.slot_id = slot_neck - static_inventory += inv_box - inv_box = new /obj/screen/inventory() inv_box.name = "head" inv_box.icon = ui_style @@ -118,7 +118,7 @@ inv_slots[inv.slot_id] = inv inv.update_icon() -/datum/hud/monkey/persistent_inventory_update() +/datum/hud/monkey/persistant_inventory_update() if(!mymob) return var/mob/living/carbon/monkey/M = mymob @@ -130,9 +130,6 @@ if(M.wear_mask) M.wear_mask.screen_loc = ui_monkey_mask M.client.screen += M.wear_mask - if(M.wear_neck) - M.wear_neck.screen_loc = ui_monkey_neck - M.client.screen += M.wear_neck if(M.head) M.head.screen_loc = ui_monkey_head M.client.screen += M.head @@ -145,13 +142,17 @@ M.head.screen_loc = null if(hud_version != HUD_STYLE_NOHUD) - for(var/obj/item/I in M.held_items) - I.screen_loc = ui_hand_position(M.get_held_index_of_item(I)) - M.client.screen += I + if(M.r_hand) + M.r_hand.screen_loc = ui_rhand + M.client.screen += M.r_hand + if(M.l_hand) + M.l_hand.screen_loc = ui_lhand + M.client.screen += M.l_hand else - for(var/obj/item/I in M.held_items) - I.screen_loc = null - M.client.screen -= I + if(M.r_hand) + M.r_hand.screen_loc = null + if(M.l_hand) + M.l_hand.screen_loc = null /mob/living/carbon/monkey/create_mob_hud() if(client && !hud_used) diff --git a/code/_onclick/hud/other_mobs.dm b/code/_onclick/hud/other_mobs.dm index fa2a4ebf31..8cd1a12233 100644 --- a/code/_onclick/hud/other_mobs.dm +++ b/code/_onclick/hud/other_mobs.dm @@ -7,7 +7,35 @@ mymob.client.screen = list() mymob.client.screen += mymob.client.void -/mob/living/brain/create_mob_hud() +/mob/living/carbon/brain/create_mob_hud() if(client && !hud_used) hud_used = new /datum/hud/brain(src) +/datum/hud/hog_god/New(mob/owner) + ..() + healths = new /obj/screen/healths/deity() + infodisplay += healths + + deity_power_display = new /obj/screen/deity_power_display() + infodisplay += deity_power_display + + deity_follower_display = new /obj/screen/deity_follower_display() + infodisplay += deity_follower_display + + +/mob/camera/god/create_mob_hud() + if(client && !hud_used) + hud_used = new /datum/hud/hog_god(src) + +/obj/screen/deity_power_display + name = "Faith" + icon_state = "deity_power" + screen_loc = ui_deitypower + layer = HUD_LAYER + +/obj/screen/deity_follower_display + name = "Followers" + icon_state = "deity_followers" + screen_loc = ui_deityfollowers + layer = HUD_LAYER + diff --git a/code/_onclick/hud/parallax.dm b/code/_onclick/hud/parallax.dm index 3a09fabab7..7f0e283dde 100644 --- a/code/_onclick/hud/parallax.dm +++ b/code/_onclick/hud/parallax.dm @@ -1,268 +1,254 @@ +/* + * This file handles all parallax-related business once the parallax itself is initialized with the rest of the HUD + */ +#define PARALLAX_IMAGE_WIDTH 15 +#define PARALLAX_IMAGE_TILES (PARALLAX_IMAGE_WIDTH**2) -/client - var/list/parallax_layers - var/list/parallax_layers_cached - var/static/list/parallax_static_layers_tail = newlist(/obj/screen/parallax_pmaster, /obj/screen/parallax_space_whitifier) - var/atom/movable/movingmob - var/turf/previous_turf - var/dont_animate_parallax //world.time of when we can state animate()ing parallax again - var/last_parallax_shift //world.time of last update - var/parallax_throttle = 0 //ds between updates - var/parallax_movedir = 0 - var/parallax_layers_max = 3 - var/parallax_animate_timer +var/list/parallax_on_clients = list() -/datum/hud/proc/create_parallax() - var/client/C = mymob.client - if (!apply_parallax_pref()) +/obj/screen/parallax + var/base_offset_x = 0 + var/base_offset_y = 0 + mouse_opacity = 0 + icon = 'icons/turf/space.dmi' + icon_state = "blank" + name = "space parallax" + screen_loc = "CENTER,CENTER" + blend_mode = BLEND_ADD + layer = AREA_LAYER + plane = PLANE_SPACE_PARALLAX + var/parallax_speed = 0 + +/obj/screen/plane_master + appearance_flags = PLANE_MASTER + screen_loc = "CENTER,CENTER" + +/obj/screen/plane_master/parallax_master + plane = PLANE_SPACE_PARALLAX + blend_mode = BLEND_MULTIPLY + color = list( + 1,0,0,0, + 0,1,0,0, + 0,0,1,0, + 0,0,0,0, + 0,0,0,1) + +/obj/screen/plane_master/parallax_spacemaster //Turns space white, causing the parallax to only show in areas with opacity. Somehow + plane = PLANE_SPACE_BACKGROUND + color = list( + 0,0,0,0, + 0,0,0,0, + 0,0,0,0, + 1,1,1,1, + 0,0,0,0) + +/obj/screen/plane_master/parallax_spacemaster/New() + ..() + overlays += image(icon = 'icons/mob/screen1.dmi', icon_state = "blank") + +/obj/screen/plane_master/parallax_dustmaster + plane = PLANE_SPACE_DUST + color = list(0,0,0,0) + +/datum/hud/proc/update_parallax_existence() + if(!parallax_initialized) return + initialize_parallax() + update_parallax() + update_parallax_values() - if(!length(C.parallax_layers_cached)) - C.parallax_layers_cached = list() - C.parallax_layers_cached += new /obj/screen/parallax_layer/layer_1(null, C.view) - C.parallax_layers_cached += new /obj/screen/parallax_layer/layer_2(null, C.view) - - C.parallax_layers = C.parallax_layers_cached.Copy() - - if (length(C.parallax_layers) > C.parallax_layers_max) - C.parallax_layers.len = C.parallax_layers_max - - C.screen |= (C.parallax_layers + C.parallax_static_layers_tail) - -/datum/hud/proc/remove_parallax() +/datum/hud/proc/initialize_parallax() var/client/C = mymob.client - C.screen -= (C.parallax_layers_cached + C.parallax_static_layers_tail) - C.parallax_layers = null -/datum/hud/proc/apply_parallax_pref() - var/client/C = mymob.client - switch(C.prefs.parallax) - if (PARALLAX_INSANE) - C.parallax_throttle = FALSE - C.parallax_layers_max = 4 - return TRUE + if(!C.parallax_master) + C.parallax_master = PoolOrNew(/obj/screen/plane_master/parallax_master) + if(!C.parallax_spacemaster) + C.parallax_spacemaster = PoolOrNew(/obj/screen/plane_master/parallax_spacemaster) + if(!C.parallax_dustmaster) + C.parallax_dustmaster = PoolOrNew(/obj/screen/plane_master/parallax_dustmaster) - if (PARALLAX_MED) - C.parallax_throttle = PARALLAX_DELAY_MED - C.parallax_layers_max = 2 - return TRUE + if(!C.parallax.len) + for(var/obj/screen/parallax/bgobj in parallax_icon) + var/obj/screen/parallax/parallax_layer = PoolOrNew(/obj/screen/parallax) + parallax_layer.appearance = bgobj.appearance + parallax_layer.base_offset_x = bgobj.base_offset_x + parallax_layer.base_offset_y = bgobj.base_offset_y + parallax_layer.parallax_speed = bgobj.parallax_speed + parallax_layer.screen_loc = bgobj.screen_loc + C.parallax += parallax_layer + if(bgobj.parallax_speed) + C.parallax_movable += parallax_layer - if (PARALLAX_LOW) - C.parallax_throttle = PARALLAX_DELAY_LOW - C.parallax_layers_max = 1 - return TRUE + if(!C.parallax_offset.len) + C.parallax_offset["horizontal"] = 0 + C.parallax_offset["vertical"] = 0 - if (PARALLAX_DISABLE) - return FALSE - - else - C.parallax_throttle = PARALLAX_DELAY_DEFAULT - C.parallax_layers_max = 3 - return TRUE - -/datum/hud/proc/update_parallax_pref() - remove_parallax() - create_parallax() - -// This sets which way the current shuttle is moving (returns true if the shuttle has stopped moving so the caller can append their animation) -/datum/hud/proc/set_parallax_movedir(new_parallax_movedir) - . = FALSE - var/client/C = mymob.client - if(new_parallax_movedir == C.parallax_movedir) - return - var/animatedir = new_parallax_movedir - if(new_parallax_movedir == FALSE) - var/animate_time = 0 - for(var/thing in C.parallax_layers) - var/obj/screen/parallax_layer/L = thing - L.icon_state = initial(L.icon_state) - L.update_o(C.view) - var/T = PARALLAX_LOOP_TIME / L.speed - if (T > animate_time) - animate_time = T - C.dont_animate_parallax = world.time + min(animate_time, PARALLAX_LOOP_TIME) - animatedir = C.parallax_movedir - - var/matrix/newtransform - switch(animatedir) - if(NORTH) - newtransform = matrix(1, 0, 0, 0, 1, 480) - if(SOUTH) - newtransform = matrix(1, 0, 0, 0, 1,-480) - if(EAST) - newtransform = matrix(1, 0, 480, 0, 1, 0) - if(WEST) - newtransform = matrix(1, 0,-480, 0, 1, 0) - - var/shortesttimer - for(var/thing in C.parallax_layers) - var/obj/screen/parallax_layer/L = thing - - var/T = PARALLAX_LOOP_TIME / L.speed - if (isnull(shortesttimer)) - shortesttimer = T - if (T < shortesttimer) - shortesttimer = T - L.transform = newtransform - animate(L, transform = matrix(), time = T, easing = QUAD_EASING | (new_parallax_movedir ? EASE_IN : EASE_OUT), flags = ANIMATION_END_NOW) - if (new_parallax_movedir) - L.transform = newtransform - animate(transform = matrix(), time = T) //queue up another animate so lag doesn't create a shutter - - C.parallax_movedir = new_parallax_movedir - if (C.parallax_animate_timer) - deltimer(C.parallax_animate_timer) - C.parallax_animate_timer = addtimer(src, .update_parallax_motionblur, min(shortesttimer, PARALLAX_LOOP_TIME), TIMER_NORMAL, C, animatedir, new_parallax_movedir, newtransform) - -/datum/hud/proc/update_parallax_motionblur(client/C, animatedir, new_parallax_movedir, matrix/newtransform) - C.parallax_animate_timer = FALSE - for(var/thing in C.parallax_layers) - var/obj/screen/parallax_layer/L = thing - if (!new_parallax_movedir) - animate(L) - continue - - var/newstate = initial(L.icon_state) - if (animatedir) - if(animatedir == NORTH || animatedir == SOUTH) - newstate += "_vertical" - else - newstate += "_horizontal" - - var/T = PARALLAX_LOOP_TIME / L.speed - - if (newstate in icon_states(L.icon)) - L.icon_state = newstate - L.update_o(C.view) - - L.transform = newtransform - - animate(L, transform = matrix(), time = T, loop = -1, flags = ANIMATION_END_NOW) + C.screen |= C.parallax_dustmaster /datum/hud/proc/update_parallax() var/client/C = mymob.client + if(C.prefs.space_parallax) + parallax_on_clients |= C + for(var/obj/screen/parallax/bgobj in C.parallax) + C.screen |= bgobj + C.screen |= C.parallax_master + C.screen |= C.parallax_spacemaster + if(C.prefs.space_dust) + C.parallax_dustmaster.color = list( + 1,0,0,0, + 0,1,0,0, + 0,0,1,0, + 0,0,0,1) + else + C.parallax_dustmaster.color = list(0,0,0,0) + else + for(var/obj/screen/parallax/bgobj in C.parallax) + C.screen -= bgobj + parallax_on_clients -= C + C.screen -= C.parallax_master + C.screen -= C.parallax_spacemaster + C.parallax_dustmaster.color = list(0,0,0,0) + +/datum/hud/proc/update_parallax_values() + var/client/C = mymob.client + if(!parallax_initialized) + return + + if(!(locate(/turf/open/space) in trange(C.view,get_turf(C.eye)))) + return + + //ACTUALLY MOVING THE PARALLAX var/turf/posobj = get_turf(C.eye) - var/area/areaobj = posobj.loc - // Update the movement direction of the parallax if necessary (for shuttles) - set_parallax_movedir(areaobj.parallax_movedir) - - var/force if(!C.previous_turf || (C.previous_turf.z != posobj.z)) C.previous_turf = posobj - force = TRUE - - if (!force && world.time < C.last_parallax_shift+C.parallax_throttle) - return //Doing it this way prevents parallax layers from "jumping" when you change Z-Levels. - var/offset_x = posobj.x - C.previous_turf.x - var/offset_y = posobj.y - C.previous_turf.y + var/offsetx = C.parallax_offset["horizontal"] + posobj.x - C.previous_turf.x + var/offsety = C.parallax_offset["vertical"] + posobj.y - C.previous_turf.y + C.parallax_offset["horizontal"] = offsetx + C.parallax_offset["vertical"] = offsety - if(!offset_x && !offset_y && !force) - return - - var/last_delay = world.time - C.last_parallax_shift - last_delay = min(last_delay, C.parallax_throttle) C.previous_turf = posobj - C.last_parallax_shift = world.time - for(var/thing in C.parallax_layers) - var/obj/screen/parallax_layer/L = thing - if (L.view_sized != C.view) - L.update_o(C.view) - var/change_x = offset_x * L.speed - L.offset_x -= change_x - var/change_y = offset_y * L.speed - L.offset_y -= change_y - if(L.offset_x > 240) - L.offset_x -= 480 - if(L.offset_x < -240) - L.offset_x += 480 - if(L.offset_y > 240) - L.offset_y -= 480 - if(L.offset_y < -240) - L.offset_y += 480 + var/maxoffset = 480 //480 = (15 tiles * 32 icon_size * 3 grid size / 2) - (15 tiles * 32 icon size / 2) for centering + var/minoffset = -960 //960 = (15 tiles * 32 icon_size * 3 grid size / 2) + (15 tiles * 32 icon size / 2) for centering + for(var/obj/screen/parallax/bgobj in C.parallax_movable) + var/accumulated_offset_x = bgobj.base_offset_x - round(offsetx * bgobj.parallax_speed * C.prefs.parallax_speed) + var/accumulated_offset_y = bgobj.base_offset_y - round(offsety * bgobj.parallax_speed * C.prefs.parallax_speed) - if(!areaobj.parallax_movedir && C.dont_animate_parallax <= world.time && (offset_x || offset_y) && abs(offset_x) <= max(C.parallax_throttle/world.tick_lag+1,1) && abs(offset_y) <= max(C.parallax_throttle/world.tick_lag+1,1) && (round(abs(change_x)) > 1 || round(abs(change_y)) > 1)) - L.transform = matrix(1, 0, offset_x*L.speed, 0, 1, offset_y*L.speed) - animate(L, transform=matrix(), time = last_delay) + if(accumulated_offset_x > maxoffset) + accumulated_offset_x -= 1440 //3x3 grid, 15 tiles * 32 icon_size * 3 grid size + if(accumulated_offset_x < minoffset) + accumulated_offset_x += 1440 - L.screen_loc = "CENTER-7:[round(L.offset_x,1)],CENTER-7:[round(L.offset_y,1)]" + if(accumulated_offset_y > maxoffset) + accumulated_offset_y -= 1440 + if(accumulated_offset_y < minoffset) + accumulated_offset_y += 1440 -/atom/movable/proc/update_parallax_contents() - if(length(client_mobs_in_contents)) - for(var/thing in client_mobs_in_contents) - var/mob/M = thing - if(M && M.client && M.hud_used && length(M.client.parallax_layers)) - M.hud_used.update_parallax() + bgobj.screen_loc = "CENTER:[accumulated_offset_x],CENTER:[accumulated_offset_y]" -/obj/screen/parallax_layer - icon = 'icons/effects/parallax.dmi' - var/speed = 1 - var/offset_x = 0 - var/offset_y = 0 - var/view_sized - blend_mode = BLEND_ADD - plane = PLANE_SPACE_PARALLAX - screen_loc = "CENTER-7,CENTER-7" - mouse_opacity = 0 +//Parallax generation code below +#define PARALLAX4_ICON_NUMBER 20 +#define PARALLAX3_ICON_NUMBER 14 +#define PARALLAX2_ICON_NUMBER 10 -/obj/screen/parallax_layer/New(view) - ..() - if (!view) - view = world.view - update_o(view) +/datum/subsystem/parallax/proc/create_global_parallax_icons() + var/list/plane1 = list() + var/list/plane2 = list() + var/list/plane3 = list() + var/list/pixel_x = list() + var/list/pixel_y = list() + var/index = 1 + for(var/i = 0 to (PARALLAX_IMAGE_TILES-1)) + for(var/j = 1 to 9) + plane1 += rand(1,26) + plane2 += rand(1,26) + plane3 += rand(1,26) + pixel_x += world.icon_size * (i%PARALLAX_IMAGE_WIDTH) + pixel_y += world.icon_size * round(i/PARALLAX_IMAGE_WIDTH) -/obj/screen/parallax_layer/proc/update_o(view) - if (!view) - view = world.view - var/list/new_overlays = list() - var/count = Ceiling(view/(480/world.icon_size))+1 - for(var/x in -count to count) - for(var/y in -count to count) - if(x == 0 && y == 0) - continue - var/image/I = image(icon, null, icon_state) - I.transform = matrix(1, 0, x*480, 0, 1, y*480) - new_overlays += I + for(var/i in 0 to 8) + var/obj/screen/parallax/parallax_layer = PoolOrNew(/obj/screen/parallax) - overlays = new_overlays - view_sized = view + var/list/L = list() + for(var/j in 1 to PARALLAX_IMAGE_TILES) + if(plane1[j+i*PARALLAX_IMAGE_TILES] <= PARALLAX4_ICON_NUMBER) + var/image/I = image('icons/turf/space_parallax4.dmi',"[plane1[j+i*PARALLAX_IMAGE_TILES]]") + I.pixel_x = pixel_x[j] + I.pixel_y = pixel_y[j] + L += I -/obj/screen/parallax_layer/layer_1 - icon_state = "layer1" - speed = 0.6 - layer = 1 + parallax_layer.overlays = L + parallax_layer.parallax_speed = 0 + parallax_layer.calibrate_parallax(i+1) + parallax_icon[index] = parallax_layer + index++ -/obj/screen/parallax_layer/layer_2 - icon_state = "layer2" - speed = 1 - layer = 2 + for(var/i in 0 to 8) + var/obj/screen/parallax/parallax_layer = PoolOrNew(/obj/screen/parallax) -/obj/screen/parallax_pmaster - appearance_flags = PLANE_MASTER - plane = PLANE_SPACE_PARALLAX - blend_mode = BLEND_MULTIPLY - mouse_opacity = FALSE - screen_loc = "CENTER-7,CENTER-7" + var/list/L = list() + for(var/j in 1 to PARALLAX_IMAGE_TILES) + if(plane2[j+i*PARALLAX_IMAGE_TILES] <= PARALLAX3_ICON_NUMBER) + var/image/I = image('icons/turf/space_parallax3.dmi',"[plane2[j+i*PARALLAX_IMAGE_TILES]]") + I.pixel_x = pixel_x[j] + I.pixel_y = pixel_y[j] + L += I -/obj/screen/parallax_space_whitifier - appearance_flags = PLANE_MASTER - plane = PLANE_SPACE - color = list( - 0, 0, 0, 0, - 0, 0, 0, 0, - 0, 0, 0, 0, - 1, 1, 1, 1, - 0, 0, 0, 0 - ) - screen_loc = "CENTER-7,CENTER-7" + parallax_layer.overlays = L + parallax_layer.parallax_speed = 0.5 + parallax_layer.calibrate_parallax(i+1) + parallax_icon[index] = parallax_layer + index++ + for(var/i in 0 to 8) + var/obj/screen/parallax/parallax_layer = PoolOrNew(/obj/screen/parallax) + var/list/L = list() + for(var/j in 1 to PARALLAX_IMAGE_TILES) + if(plane3[j+i*PARALLAX_IMAGE_TILES] <= PARALLAX2_ICON_NUMBER) + var/image/I = image('icons/turf/space_parallax2.dmi',"[plane3[j+i*PARALLAX_IMAGE_TILES]]") + I.pixel_x = pixel_x[j] + I.pixel_y = pixel_y[j] + L += I -#undef LOOP_NONE -#undef LOOP_NORMAL -#undef LOOP_REVERSE -#undef LOOP_TIME \ No newline at end of file + parallax_layer.overlays = L + parallax_layer.parallax_speed = 1 + parallax_layer.calibrate_parallax(i+1) + parallax_icon[index] = parallax_layer + index++ + + parallax_initialized = 1 + +/obj/screen/parallax/proc/calibrate_parallax(var/i) + if(!i) return + + /* Placement of screen objects + 1 2 3 + 4 5 6 + 7 8 9 + */ + base_offset_x = -PARALLAX_IMAGE_WIDTH*world.icon_size/2 + base_offset_y = -PARALLAX_IMAGE_WIDTH*world.icon_size/2 + + switch(i) + if(1,4,7) + base_offset_x -= world.icon_size*PARALLAX_IMAGE_WIDTH + if(3,6,9) + base_offset_x += world.icon_size*PARALLAX_IMAGE_WIDTH + switch(i) + if(1,2,3) + base_offset_y += world.icon_size*PARALLAX_IMAGE_WIDTH + if(7,8,9) + base_offset_y -= world.icon_size*PARALLAX_IMAGE_WIDTH + + screen_loc = "CENTER:[base_offset_x],CENTER:[base_offset_y]" + +#undef PARALLAX4_ICON_NUMBER +#undef PARALLAX3_ICON_NUMBER +#undef PARALLAX2_ICON_NUMBER +#undef PARALLAX_IMAGE_WIDTH +#undef PARALLAX_IMAGE_TILES diff --git a/code/_onclick/hud/plane_master.dm b/code/_onclick/hud/plane_master.dm deleted file mode 100644 index eda44bda06..0000000000 --- a/code/_onclick/hud/plane_master.dm +++ /dev/null @@ -1,28 +0,0 @@ -/obj/screen/plane_master - screen_loc = "CENTER" - icon_state = "blank" - appearance_flags = PLANE_MASTER|NO_CLIENT_COLOR - blend_mode = BLEND_OVERLAY - -/obj/screen/plane_master/New() - if(blend_mode == BLEND_MULTIPLY) - //What is this? Read http://www.byond.com/forum/?post=2141928 - var/image/backdrop = image('icons/mob/screen_gen.dmi', "black") - backdrop.transform = matrix(200, 0, 0, 0, 200, 0) - backdrop.layer = BACKGROUND_LAYER - backdrop.blend_mode = BLEND_OVERLAY - overlays += backdrop - ..() - -/obj/screen/plane_master/game_world - name = "game world plane master" - plane = GAME_PLANE - blend_mode = BLEND_OVERLAY - -/obj/screen/plane_master/lighting - name = "lighting plane master" - plane = LIGHTING_PLANE - blend_mode = BLEND_OVERLAY -// blend_mode = BLEND_MULTIPLY -// color = list(1,0,0,0, 0,1,0,0, 0,0,1,0, 0,0,0,0, 0.1,0.1,0.1,0) - mouse_opacity = 0 diff --git a/code/_onclick/hud/robot.dm b/code/_onclick/hud/robot.dm index 4c4764d3a5..5a5b7c200e 100644 --- a/code/_onclick/hud/robot.dm +++ b/code/_onclick/hud/robot.dm @@ -5,15 +5,9 @@ name = "cyborg module" icon_state = "nomod" -/obj/screen/robot/Click() - if(isobserver(usr)) - return 1 - /obj/screen/robot/module/Click() - if(..()) - return var/mob/living/silicon/robot/R = usr - if(R.module.type != /obj/item/weapon/robot_module) + if(R.module) R.hud_used.toggle_show_robot_modules() return 1 R.pick_module() @@ -23,8 +17,6 @@ icon_state = "inv1" /obj/screen/robot/module1/Click() - if(..()) - return var/mob/living/silicon/robot/R = usr R.toggle_module(1) @@ -33,8 +25,6 @@ icon_state = "inv2" /obj/screen/robot/module2/Click() - if(..()) - return var/mob/living/silicon/robot/R = usr R.toggle_module(2) @@ -43,8 +33,6 @@ icon_state = "inv3" /obj/screen/robot/module3/Click() - if(..()) - return var/mob/living/silicon/robot/R = usr R.toggle_module(3) @@ -53,8 +41,6 @@ icon_state = "radio" /obj/screen/robot/radio/Click() - if(..()) - return var/mob/living/silicon/robot/R = usr R.radio.interact(R) @@ -63,8 +49,6 @@ icon_state = "store" /obj/screen/robot/store/Click() - if(..()) - return var/mob/living/silicon/robot/R = usr R.uneq_active() @@ -73,8 +57,6 @@ icon_state = "lamp0" /obj/screen/robot/lamp/Click() - if(..()) - return var/mob/living/silicon/robot/R = usr R.control_headlamp() @@ -83,24 +65,14 @@ icon_state = "ionpulse0" /obj/screen/robot/thrusters/Click() - if(..()) - return var/mob/living/silicon/robot/R = usr R.toggle_ionpulse() -/datum/hud/robot - ui_style_icon = 'icons/mob/screen_cyborg.dmi' - -/datum/hud/robot/New(mob/owner, ui_style = 'icons/mob/screen_cyborg.dmi') +/datum/hud/robot/New(mob/owner) ..() var/mob/living/silicon/robot/mymobR = mymob var/obj/screen/using - using = new/obj/screen/wheel/talk - using.screen_loc = ui_borg_talk_wheel - wheels += using - static_inventory += using - //Radio using = new /obj/screen/robot/radio() using.screen_loc = ui_borg_radio @@ -161,9 +133,9 @@ infodisplay += healths //Installed Module - mymobR.hands = new /obj/screen/robot/module() - mymobR.hands.screen_loc = ui_borg_module - static_inventory += mymobR.hands + mymob.hands = new /obj/screen/robot/module() + mymob.hands.screen_loc = ui_borg_module + static_inventory += mymob.hands //Store module_store_icon = new /obj/screen/robot/store() @@ -182,53 +154,50 @@ /datum/hud/proc/toggle_show_robot_modules() - if(!iscyborg(mymob)) return + if(!isrobot(mymob)) return - var/mob/living/silicon/robot/R = mymob + var/mob/living/silicon/robot/r = mymob - R.shown_robot_modules = !R.shown_robot_modules + r.shown_robot_modules = !r.shown_robot_modules update_robot_modules_display() -/datum/hud/proc/update_robot_modules_display(mob/viewer) - if(!iscyborg(mymob)) return +/datum/hud/proc/update_robot_modules_display() + if(!isrobot(mymob)) return - var/mob/living/silicon/robot/R = mymob + var/mob/living/silicon/robot/r = mymob - var/mob/screenmob = viewer || R - - if(!R.module) + if(!r.client) return - if(!R.client) + if(!r.module) return - if(R.shown_robot_modules && screenmob.hud_used.hud_shown) + if(r.shown_robot_modules && hud_shown) //Modules display is shown - screenmob.client.screen += module_store_icon //"store" icon + r.client.screen += module_store_icon //"store" icon - if(!R.module.modules) + if(!r.module.modules) usr << "Selected module has no modules to select" return - if(!R.robot_modules_background) + if(!r.robot_modules_background) return - var/display_rows = Ceiling(length(R.module.get_inactive_modules()) / 8) - R.robot_modules_background.screen_loc = "CENTER-4:16,SOUTH+1:7 to CENTER+3:16,SOUTH+[display_rows]:7" - screenmob.client.screen += R.robot_modules_background + var/display_rows = Ceiling(length(r.module.get_inactive_modules()) / 8) + r.robot_modules_background.screen_loc = "CENTER-4:16,SOUTH+1:7 to CENTER+3:16,SOUTH+[display_rows]:7" + r.client.screen += r.robot_modules_background var/x = -4 //Start at CENTER-4,SOUTH+1 var/y = 1 - for(var/atom/movable/A in R.module.get_inactive_modules()) + for(var/atom/movable/A in r.module.get_inactive_modules()) //Module is not currently active - screenmob.client.screen += A + r.client.screen += A if(x < 0) A.screen_loc = "CENTER[x]:16,SOUTH+[y]:7" else A.screen_loc = "CENTER+[x]:16,SOUTH+[y]:7" A.layer = ABOVE_HUD_LAYER - A.plane = ABOVE_HUD_PLANE x++ if(x == 4) @@ -237,41 +206,37 @@ else //Modules display is hidden - screenmob.client.screen -= module_store_icon //"store" icon + r.client.screen -= module_store_icon //"store" icon - for(var/atom/A in R.module.get_inactive_modules()) + for(var/atom/A in r.module.get_inactive_modules()) //Module is not currently active - screenmob.client.screen -= A - R.shown_robot_modules = 0 - screenmob.client.screen -= R.robot_modules_background + r.client.screen -= A + r.shown_robot_modules = 0 + r.client.screen -= r.robot_modules_background /mob/living/silicon/robot/create_mob_hud() if(client && !hud_used) hud_used = new /datum/hud/robot(src) -/datum/hud/robot/persistent_inventory_update(mob/viewer) +/datum/hud/robot/persistant_inventory_update() if(!mymob) return var/mob/living/silicon/robot/R = mymob - - var/mob/screenmob = viewer || R - - if(screenmob.hud_used) - if(screenmob.hud_used.hud_shown) - for(var/i in 1 to R.held_items.len) - var/obj/item/I = R.held_items[i] - if(I) - switch(i) - if(1) - I.screen_loc = ui_inv1 - if(2) - I.screen_loc = ui_inv2 - if(3) - I.screen_loc = ui_inv3 - else - return - screenmob.client.screen += I - else - for(var/obj/item/I in R.held_items) - screenmob.client.screen -= I + if(hud_shown) + if(R.module_state_1) + R.module_state_1.screen_loc = ui_inv1 + R.client.screen += R.module_state_1 + if(R.module_state_2) + R.module_state_2.screen_loc = ui_inv2 + R.client.screen += R.module_state_2 + if(R.module_state_3) + R.module_state_3.screen_loc = ui_inv3 + R.client.screen += R.module_state_3 + else + if(R.module_state_1) + R.module_state_1.screen_loc = null + if(R.module_state_2) + R.module_state_2.screen_loc = null + if(R.module_state_3) + R.module_state_3.screen_loc = null \ No newline at end of file diff --git a/code/_onclick/hud/screen_objects.dm b/code/_onclick/hud/screen_objects.dm index adb707a60b..1a5148f681 100644 --- a/code/_onclick/hud/screen_objects.dm +++ b/code/_onclick/hud/screen_objects.dm @@ -10,15 +10,11 @@ name = "" icon = 'icons/mob/screen_gen.dmi' layer = ABOVE_HUD_LAYER - plane = ABOVE_HUD_PLANE - resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | UNACIDABLE | ACID_PROOF + unacidable = 1 appearance_flags = APPEARANCE_UI var/obj/master = null //A reference to the object in the slot. Grabs or items, generally. var/datum/hud/hud = null // A reference to the owner HUD, if any. -/obj/screen/take_damage() - return - /obj/screen/Destroy() master = null return ..() @@ -34,7 +30,6 @@ /obj/screen/swap_hand layer = HUD_LAYER - plane = HUD_PLANE name = "swap hand" /obj/screen/swap_hand/Click() @@ -59,31 +54,13 @@ /obj/screen/inventory/craft/Click() var/mob/living/M = usr - if(isobserver(usr)) - return M.OpenCraftingMenu() -/obj/screen/inventory/area_creator - name = "create new area" - icon = 'icons/mob/screen_midnight.dmi' - icon_state = "area_edit" - screen_loc = ui_building - -/obj/screen/inventory/area_creator/Click() - if(usr.incapacitated()) - return 1 - var/area/A = get_area(usr) - if(!A.outdoors) - usr << "There is already a defined structure here." - return 1 - create_area(usr) - /obj/screen/inventory var/slot_id // The indentifier for the slot. It has nothing to do with ID cards. var/icon_empty // Icon when empty. For now used only by humans. var/icon_full // Icon when contains an item. For now used only by humans. layer = HUD_LAYER - plane = HUD_PLANE /obj/screen/inventory/Click() // At this point in client Click() code we have passed the 1/10 sec check and little else @@ -96,7 +73,8 @@ if (istype(usr.loc,/obj/mecha)) // stops inventory actions in a mech return 1 if(usr.attack_ui(slot_id)) - usr.update_inv_hands() + usr.update_inv_l_hand(0) + usr.update_inv_r_hand(0) return 1 /obj/screen/inventory/update_icon() @@ -113,15 +91,13 @@ var/image/active_overlay var/image/handcuff_overlay var/image/blocked_overlay - var/held_index = 0 /obj/screen/inventory/hand/update_icon() ..() - if(!active_overlay) active_overlay = image("icon"=icon, "icon_state"="hand_active") if(!handcuff_overlay) - var/state = (!(held_index % 2)) ? "markus" : "gabrielle" + var/state = (slot_id == slot_r_hand) ? "markus" : "gabrielle" handcuff_overlay = image("icon"='icons/mob/screen_gen.dmi', "icon_state"=state) if(!blocked_overlay) blocked_overlay = image("icon"='icons/mob/screen_gen.dmi', "icon_state"="blocked") @@ -133,14 +109,17 @@ var/mob/living/carbon/C = hud.mymob if(C.handcuffed) add_overlay(handcuff_overlay) - - if(held_index) - if(!C.has_hand_for_held_index(held_index)) + if(slot_id == slot_r_hand) + if(!C.has_right_hand()) + add_overlay(blocked_overlay) + else if(slot_id == slot_l_hand) + if(!C.has_left_hand()) add_overlay(blocked_overlay) - if(held_index == hud.mymob.active_hand_index) + if(slot_id == slot_l_hand && hud.mymob.hand) + add_overlay(active_overlay) + else if(slot_id == slot_r_hand && !hud.mymob.hand) add_overlay(active_overlay) - /obj/screen/inventory/hand/Click() // At this point in client Click() code we have passed the 1/10 sec check and little else @@ -154,7 +133,11 @@ if(ismob(usr)) var/mob/M = usr - M.swap_hand(held_index) + switch(name) + if("right hand", "r_hand") + M.activate_hand("r") + if("left hand", "l_hand") + M.activate_hand("l") return 1 /obj/screen/close @@ -172,7 +155,6 @@ icon = 'icons/mob/screen_midnight.dmi' icon_state = "act_drop" layer = HUD_LAYER - plane = HUD_PLANE /obj/screen/drop/Click() usr.drop_item_v() @@ -189,19 +171,19 @@ var/_y = text2num(params2list(params)["icon-y"]) if(_x<=16 && _y<=16) - usr.a_intent_change(INTENT_HARM) + usr.a_intent_change("harm") else if(_x<=16 && _y>=17) - usr.a_intent_change(INTENT_HELP) + usr.a_intent_change("help") else if(_x>=17 && _y<=16) - usr.a_intent_change(INTENT_GRAB) + usr.a_intent_change("grab") else if(_x>=17 && _y>=17) - usr.a_intent_change(INTENT_DISARM) + usr.a_intent_change("disarm") else - usr.a_intent_change(INTENT_HOTKEY_RIGHT) + usr.a_intent_change("right") /obj/screen/act_intent/alien icon = 'icons/mob/screen_alien.dmi' @@ -240,10 +222,12 @@ C << "You are not wearing an internals mask!" return - var/obj/item/I = C.is_holding_item_of_type(/obj/item/weapon/tank) - if(I) - C << "You are now running on internals from the [I] on your [C.get_held_index_name(C.get_held_index_of_item(I))]." - C.internal = I + if(istype(C.l_hand, /obj/item/weapon/tank)) + C << "You are now running on internals from the [C.l_hand] on your left hand." + C.internal = C.l_hand + else if(istype(C.r_hand, /obj/item/weapon/tank)) + C << "You are now running on internals from the [C.r_hand] on your right hand." + C.internal = C.r_hand else if(ishuman(C)) var/mob/living/carbon/human/H = C if(istype(H.s_store, /obj/item/weapon/tank)) @@ -277,19 +261,14 @@ icon_state = "running" /obj/screen/mov_intent/Click() - toggle(usr) - -/obj/screen/mov_intent/proc/toggle(mob/user) - if(isobserver(user)) - return - switch(user.m_intent) + switch(usr.m_intent) if("run") - user.m_intent = MOVE_INTENT_WALK + usr.m_intent = "walk" icon_state = "walking" if("walk") - user.m_intent = MOVE_INTENT_RUN + usr.m_intent = "run" icon_state = "running" - user.update_icons() + usr.update_icons() /obj/screen/pull name = "stop pulling" @@ -297,8 +276,6 @@ icon_state = "pull" /obj/screen/pull/Click() - if(isobserver(usr)) - return usr.stop_pulling() /obj/screen/pull/update_icon(mob/mymob) @@ -313,7 +290,6 @@ icon = 'icons/mob/screen_midnight.dmi' icon_state = "act_resist" layer = HUD_LAYER - plane = HUD_PLANE /obj/screen/resist/Click() if(isliving(usr)) @@ -331,7 +307,7 @@ if (istype(usr.loc,/obj/mecha)) // stops inventory actions in a mech return 1 if(master) - var/obj/item/I = usr.get_active_held_item() + var/obj/item/I = usr.get_active_hand() if(I) master.attackby(I, usr, params) return 1 @@ -353,65 +329,55 @@ var/selecting = "chest" /obj/screen/zone_sel/Click(location, control,params) - if(isobserver(usr)) - return - var/list/PL = params2list(params) var/icon_x = text2num(PL["icon-x"]) var/icon_y = text2num(PL["icon-y"]) - var/choice + var/old_selecting = selecting //We're only going to update_icon() if there's been a change switch(icon_y) if(1 to 9) //Legs switch(icon_x) if(10 to 15) - choice = "r_leg" + selecting = "r_leg" if(17 to 22) - choice = "l_leg" + selecting = "l_leg" else return 1 if(10 to 13) //Hands and groin switch(icon_x) if(8 to 11) - choice = "r_arm" + selecting = "r_arm" if(12 to 20) - choice = "groin" + selecting = "groin" if(21 to 24) - choice = "l_arm" + selecting = "l_arm" else return 1 if(14 to 22) //Chest and arms to shoulders switch(icon_x) if(8 to 11) - choice = "r_arm" + selecting = "r_arm" if(12 to 20) - choice = "chest" + selecting = "chest" if(21 to 24) - choice = "l_arm" + selecting = "l_arm" else return 1 if(23 to 30) //Head, but we need to check for eye or mouth if(icon_x in 12 to 20) - choice = "head" + selecting = "head" switch(icon_y) if(23 to 24) if(icon_x in 15 to 17) - choice = "mouth" + selecting = "mouth" if(26) //Eyeline, eyes are on 15 and 17 if(icon_x in 14 to 18) - choice = "eyes" + selecting = "eyes" if(25 to 27) if(icon_x in 15 to 17) - choice = "eyes" + selecting = "eyes" - return set_selected_zone(choice, usr) - -/obj/screen/zone_sel/proc/set_selected_zone(choice, mob/user) - if(isobserver(user)) - return - - if(choice != selecting) - selecting = choice + if(old_selecting != selecting) update_icon(usr) return 1 @@ -438,7 +404,6 @@ blend_mode = BLEND_ADD screen_loc = "WEST,SOUTH to EAST,NORTH" layer = FLASH_LAYER - plane = FULLSCREEN_PLANE /obj/screen/damageoverlay icon = 'icons/mob/screen_full.dmi' @@ -448,7 +413,6 @@ screen_loc = "CENTER-7,CENTER-7" mouse_opacity = 0 layer = UI_DAMAGE_LAYER - plane = FULLSCREEN_PLANE /obj/screen/healths name = "health" @@ -491,17 +455,6 @@ screen_loc = ui_health mouse_opacity = 0 -/obj/screen/healths/clock - icon = 'icons/mob/actions.dmi' - icon_state = "bg_clock" - screen_loc = ui_health - mouse_opacity = 0 - -/obj/screen/healths/clock/gear - icon = 'icons/mob/clockwork_mobs.dmi' - icon_state = "bg_gear" - screen_loc = ui_internal - /obj/screen/healths/revenant name = "essence" icon = 'icons/mob/actions.dmi' @@ -512,140 +465,3 @@ /obj/screen/healthdoll name = "health doll" screen_loc = ui_healthdoll - - - -/obj/screen/wheel - name = "wheel" - layer = HUD_LAYER - plane = HUD_PLANE - icon_state = "" - screen_loc = null //if you make a new wheel, remember to give it a screen_loc - var/list/buttons_names = list() //list of the names for each button, its length is the amount of buttons. - var/toggled = 0 //wheel is hidden/shown - var/wheel_buttons_type //the type of buttons used with this wheel. - var/list/buttons_list = list() - -/obj/screen/wheel/New() - ..() - build_options() - - -//we create the buttons for the wheel and place them in a square spiral fashion. -/obj/screen/wheel/proc/build_options() - var/obj/screen/wheel_button/close_wheel/CW = new () - buttons_list += CW //the close option - CW.wheel = src - - var/list/offset_x_list = list() - var/list/offset_y_list = list() - var/num = 1 - var/N = 1 - var/M = 0 - var/sign = -1 - my_loop: - while(offset_y_list.len < buttons_names.len) - for(var/i=1, i<=num, i++) - offset_y_list += N - offset_x_list += M - if(offset_y_list.len == buttons_names.len) - break my_loop - if(N != 0) - N = 0 - M = -sign - else - N = sign - M = 0 - sign = -sign - num++ - - var/screenx = 8 - var/screeny = 8 - for(var/i = 1, i <= buttons_names.len, i++) - var/obj/screen/wheel_button/WB = new wheel_buttons_type() - WB.wheel = src - buttons_list += WB - screenx += offset_x_list[i] - screeny += offset_y_list[i] - WB.screen_loc = "[screenx], [screeny]" - set_button(WB, i) - -/obj/screen/wheel/proc/set_button(obj/screen/wheel_button/WB, button_number) - WB.name = buttons_names[button_number] - return - -/obj/screen/wheel/Destroy() - for(var/obj/screen/S in buttons_list) - qdel(S) - return ..() - -/obj/screen/wheel/Click() - if(world.time <= usr.next_move) - return - if(usr.stat) - return - if(isliving(usr)) - var/mob/living/L = usr - if(toggled) - L.client.screen -= buttons_list - else - L.client.screen |= buttons_list - toggled = !toggled - - -/obj/screen/wheel/talk - name = "talk wheel" - icon_state = "talk_wheel" - screen_loc = "11:6,2:-11" - wheel_buttons_type = /obj/screen/wheel_button/talk - buttons_names = list("help","hello","bye","stop","thanks","come","out", "yes", "no") - var/list/word_messages = list(list("Help!","Help me!"), list("Hello.", "Hi."), list("Bye.", "Goodbye."),\ - list("Stop!", "Halt!"), list("Thanks.", "Thanks!", "Thank you."), \ - list("Come.", "Follow me."), list("Out!", "Go away!", "Get out!"), \ - list("Yes.", "Affirmative."), list("No.", "Negative")) - -/obj/screen/wheel/talk/set_button(obj/screen/wheel_button/WB, button_number) - ..() - var/obj/screen/wheel_button/talk/T = WB //we already know what type the button is exactly. - T.icon_state = "talk_[T.name]" - T.word_messages = word_messages[button_number] - - -/obj/screen/wheel_button - name = "default wheel button" - screen_loc = "8,8" - layer = HUD_LAYER - plane = HUD_PLANE - mouse_opacity = 2 - var/obj/screen/wheel/wheel - -/obj/screen/wheel_button/Destroy() - wheel = null - return ..() - -/obj/screen/wheel_button/close_wheel - name = "close wheel" - icon_state = "x3" - -/obj/screen/wheel_button/close_wheel/Click() - if(isliving(usr)) - var/mob/living/L = usr - L.client.screen -= wheel.buttons_list - wheel.toggled = !wheel.toggled - - -/obj/screen/wheel_button/talk - name = "talk option" - icon_state = "talk_help" - var/talk_cooldown = 0 - var/list/word_messages = list() - -/obj/screen/wheel_button/talk/Click(location, control,params) - if(isliving(usr)) - var/mob/living/L = usr - if(L.stat) - return - - if(word_messages.len && talk_cooldown < world.time) - talk_cooldown = world.time + 10 - L.say(pick(word_messages)) diff --git a/code/_onclick/hud/swarmer.dm b/code/_onclick/hud/swarmer.dm index 92a98e14c6..85ee9c4977 100644 --- a/code/_onclick/hud/swarmer.dm +++ b/code/_onclick/hud/swarmer.dm @@ -68,11 +68,11 @@ var/obj/screen/using using = new /obj/screen/swarmer/FabricateTrap() - using.screen_loc = ui_hand_position(2) + using.screen_loc = ui_rhand static_inventory += using using = new /obj/screen/swarmer/Barricade() - using.screen_loc = ui_hand_position(1) + using.screen_loc = ui_lhand static_inventory += using using = new /obj/screen/swarmer/Replicate() diff --git a/code/_onclick/item_attack.dm b/code/_onclick/item_attack.dm index 7014cc039f..e3fcdb7fb8 100644 --- a/code/_onclick/item_attack.dm +++ b/code/_onclick/item_attack.dm @@ -8,14 +8,11 @@ return /obj/attackby(obj/item/I, mob/living/user, params) - if(unique_rename && istype(I, /obj/item/weapon/pen)) - rewrite(user) - else - return I.attack_obj(src, user) + return I.attack_obj(src, user) /mob/living/attackby(obj/item/I, mob/user, params) user.changeNext_move(CLICK_CD_MELEE) - if(user.a_intent == INTENT_HARM && stat == DEAD && butcher_results) //can we butcher it? + if(user.a_intent == "harm" && stat == DEAD && butcher_results) //can we butcher it? var/sharpness = I.is_sharp() if(sharpness) user << "You begin to butcher [src]..." @@ -37,7 +34,6 @@ user.lastattacked = M M.lastattacker = user - user.do_attack_animation(M) M.attacked_by(src, user) add_logs(user, M, "attacked", src.name, "(INTENT: [uppertext(user.a_intent)]) (DAMTYPE: [uppertext(damtype)])") @@ -52,33 +48,29 @@ user.do_attack_animation(O) O.attacked_by(src, user) + + /atom/movable/proc/attacked_by() return /obj/attacked_by(obj/item/I, mob/living/user) if(I.force) - visible_message("[user] has hit [src] with [I]!", null, null, COMBAT_MESSAGE_RANGE) - //only witnesses close by and the victim see a hit message. - take_damage(I.force, I.damtype, "melee", 1) + user.visible_message("[user] has hit [src] with [I]!", "You hit [src] with [I]!") /mob/living/attacked_by(obj/item/I, mob/living/user) - send_item_attack_message(I, user) - if(I.force) - apply_damage(I.force, I.damtype) - if(I.damtype == BRUTE) - if(prob(33)) - I.add_mob_blood(src) - var/turf/location = get_turf(src) - add_splatter_floor(location) - if(get_dist(user, src) <= 1) //people with TK won't get smeared with blood - user.add_mob_blood(src) - return TRUE //successful attack + if(user != src) + user.do_attack_animation(src) + if(send_item_attack_message(I, user)) + if(apply_damage(I.force, I.damtype)) + if(I.damtype == BRUTE) + if(prob(33)) + I.add_mob_blood(src) + var/turf/location = get_turf(src) + add_splatter_floor(location) + if(get_dist(user, src) <= 1) //people with TK won't get smeared with blood + user.add_mob_blood(src) + return TRUE -/mob/living/simple_animal/attacked_by(obj/item/I, mob/living/user) - if(I.force < force_threshold || I.damtype == STAMINA) - playsound(loc, 'sound/weapons/tap.ogg', I.get_clamped_volume(), 1, -1) - else - return ..() // Proximity_flag is 1 if this afterattack was called on something adjacent, in your square, or on your person. // Click parameters is the params string from byond Click() code, see that documentation. @@ -95,17 +87,27 @@ /mob/living/proc/send_item_attack_message(obj/item/I, mob/living/user, hit_area) var/message_verb = "attacked" - if(I.attack_verb && I.attack_verb.len) + if(I.attack_verb.len) message_verb = "[pick(I.attack_verb)]" else if(!I.force) - return + return 0 var/message_hit_area = "" if(hit_area) message_hit_area = " in the [hit_area]" + var/attack_message = "[src] has been [message_verb][message_hit_area] with [I]." if(user in viewers(src, null)) attack_message = "[user] has [message_verb] [src][message_hit_area] with [I]!" - visible_message("[attack_message]", \ - "[attack_message]", null, COMBAT_MESSAGE_RANGE) + visible_message("[attack_message]", + "[attack_message]") return 1 +/mob/living/simple_animal/send_item_attack_message(obj/item/I, mob/living/user, hit_area) + if(!I.force) + user.visible_message("[user] gently taps [src] with [I].",\ + "This weapon is ineffective, it does no damage!") + else if(I.force < force_threshold || I.damtype == STAMINA) + visible_message("[I] bounces harmlessly off of [src].",\ + "[I] bounces harmlessly off of [src]!") + else + return ..() \ No newline at end of file diff --git a/code/_onclick/observer.dm b/code/_onclick/observer.dm index c0785b34a7..e452c91779 100644 --- a/code/_onclick/observer.dm +++ b/code/_onclick/observer.dm @@ -15,7 +15,6 @@ // Otherwise jump else if(A.loc) loc = get_turf(A) - update_parallax_contents() /mob/dead/observer/ClickOn(var/atom/A, var/params) if(client.click_intercept) diff --git a/code/_onclick/other_mobs.dm b/code/_onclick/other_mobs.dm index 6dfcb7f80a..4d0ff1f69e 100644 --- a/code/_onclick/other_mobs.dm +++ b/code/_onclick/other_mobs.dm @@ -20,7 +20,7 @@ var/override = 0 for(var/datum/mutation/human/HM in dna.mutations) - override += HM.on_attack_hand(src, A, proximity) + override += HM.on_attack_hand(src, A) if(override) return @@ -50,8 +50,9 @@ for(var/datum/mutation/human/HM in dna.mutations) HM.on_ranged_attack(src, A) - if(isturf(A) && get_dist(src,A) <= 1) - src.Move_Pulled(A) + var/turf/T = A + if(istype(T) && get_dist(src,T) <= 1) + src.Move_Pulled(T) /* Animals & All Unspecified @@ -59,6 +60,10 @@ /mob/living/UnarmedAttack(atom/A) A.attack_animal(src) +/mob/living/simple_animal/hostile/UnarmedAttack(atom/A) + target = A + AttackingTarget() + /atom/proc/attack_animal(mob/user) return /mob/living/RestrainedClickOn(atom/A) @@ -82,7 +87,7 @@ /mob/living/carbon/monkey/RestrainedClickOn(atom/A) if(..()) return - if(a_intent != INTENT_HARM || !ismob(A)) + if(a_intent != "harm" || !ismob(A)) return if(is_muzzled()) return @@ -110,7 +115,7 @@ */ /mob/living/carbon/alien/UnarmedAttack(atom/A) A.attack_alien(src) -/atom/proc/attack_alien(mob/living/carbon/alien/user) +/atom/proc/attack_alien(mob/user) attack_paw(user) return /mob/living/carbon/alien/RestrainedClickOn(atom/A) @@ -134,68 +139,6 @@ /mob/living/simple_animal/slime/RestrainedClickOn(atom/A) return - -/* - Drones -*/ -/mob/living/simple_animal/drone/UnarmedAttack(atom/A) - A.attack_drone(src) - -/atom/proc/attack_drone(mob/living/simple_animal/drone/user) - attack_hand(user) //defaults to attack_hand. Override it when you don't want drones to do same stuff as humans. - -/mob/living/simple_animal/slime/RestrainedClickOn(atom/A) - return - - -/* - True Devil -*/ - -/mob/living/carbon/true_devil/UnarmedAttack(atom/A, proximity) - A.attack_hand(src) - -/* - Brain -*/ - -/mob/living/brain/UnarmedAttack(atom/A)//Stops runtimes due to attack_animal being the default - return - - -/* - pAI -*/ - -/mob/living/silicon/pai/UnarmedAttack(atom/A)//Stops runtimes due to attack_animal being the default - return - - -/* - Simple animals -*/ - -/mob/living/simple_animal/UnarmedAttack(atom/A, proximity) - if(!dextrous) - return ..() - if(!ismob(A)) - A.attack_hand(src) - update_inv_hands() - - -/* - Hostile animals -*/ - -/mob/living/simple_animal/hostile/UnarmedAttack(atom/A) - target = A - if(dextrous && !is_type_in_typecache(A, environment_target_typecache) && !ismob(A)) - ..() - else - AttackingTarget() - - - /* New Players: Have no reason to click on anything at all. diff --git a/code/_onclick/telekinesis.dm b/code/_onclick/telekinesis.dm index 8aa85620da..4fc1fd2851 100644 --- a/code/_onclick/telekinesis.dm +++ b/code/_onclick/telekinesis.dm @@ -1,13 +1,11 @@ /* Telekinesis - This needs more thinking out, but I might as well. */ var/const/tk_maxrange = 15 /* Telekinetic attack: - By default, emulate the user's unarmed attack */ /atom/proc/attack_tk(mob/user) @@ -19,7 +17,6 @@ var/const/tk_maxrange = 15 /* This is similar to item attack_self, but applies to anything that you can grab with a telekinetic grab. - It is used for manipulating things at range, for example, opening and closing closets. There are not a lot of defaults at this time, add more where appropriate. */ @@ -57,7 +54,6 @@ var/const/tk_maxrange = 15 /* TK Grab Item (the workhorse of old TK) - * If you have not grabbed something, do a normal tk attack * If you have something, throw it at the target. If it is already adjacent, do a normal attackby() * If you click what you are holding, or attack_self(), do an attack_self_tk() on it. @@ -70,9 +66,8 @@ var/const/tk_maxrange = 15 icon_state = "2" flags = NOBLUDGEON | ABSTRACT | DROPDEL //item_state = null - w_class = WEIGHT_CLASS_GIGANTIC + w_class = 10 layer = ABOVE_HUD_LAYER - plane = ABOVE_HUD_PLANE var/last_throw = 0 var/atom/movable/focus = null @@ -87,7 +82,7 @@ var/const/tk_maxrange = 15 //stops TK grabs being equipped anywhere but into hands /obj/item/tk_grab/equipped(mob/user, slot) - if(slot == slot_hands) + if( (slot == slot_l_hand) || (slot== slot_r_hand) ) return qdel(src) return @@ -190,7 +185,7 @@ var/const/tk_maxrange = 15 return /obj/item/tk_grab/suicide_act(mob/user) - user.visible_message("[user] is using [user.p_their()] telekinesis to choke [user.p_them()]self! It looks like [user.p_theyre()] trying to commit suicide!") + user.visible_message("[user] is using \his telekinesis to choke \himself! It looks like \he's trying to commit suicide.") return (OXYLOSS) /*Not quite done likely needs to use something thats not get_step_to @@ -218,5 +213,4 @@ var/const/tk_maxrange = 15 var/X = source:x var/Y = source:y var/Z = source:z - -*/ +*/ \ No newline at end of file diff --git a/code/citadel/_helpers.dm b/code/citadel/_helpers.dm index e2c3f39322..e898f30b65 100644 --- a/code/citadel/_helpers.dm +++ b/code/citadel/_helpers.dm @@ -22,7 +22,7 @@ var/const/SIZEPLAY_HUGE=5 /proc/get_matrix_smallest() var/matrix/mtrx=new() return mtrx.Scale(0.65) -/* omited for quick error resolution while porting -Pooj + proc/get_racelist(var/mob/user)//This proc returns a list of species that 'user' has available to them. It searches the list of ckeys attached to the 'whitelist' var for a species and also checks if they're an admin. for(var/spath in subtypesof(/datum/species)) var/datum/species/S = new spath() @@ -32,4 +32,3 @@ proc/get_racelist(var/mob/user)//This proc returns a list of species that 'user' else if(!S.whitelisted && S.roundstart) //Normal roundstart species will be handled here. whitelisted_species_list[S.id] = S.type return whitelisted_species_list -*/ \ No newline at end of file diff --git a/code/controllers/configuration.dm b/code/controllers/configuration.dm index 0b0b344a2c..1ff1e29ba5 100644 --- a/code/controllers/configuration.dm +++ b/code/controllers/configuration.dm @@ -1,4 +1,4 @@ -//Configuraton defines //TODO: Move all yes/no switches into bitflags +f//Configuraton defines //TODO: Move all yes/no switches into bitflags //Used by jobs_have_maint_access #define ASSISTANTS_HAVE_MAINT_ACCESS 1 @@ -18,7 +18,6 @@ var/server_suffix = 0 // generate numeric suffix based on server port var/lobby_countdown = 120 // In between round countdown. var/round_end_countdown = 25 // Post round murder death kill countdown - var/hub = 0 var/log_ooc = 0 // log OOC channel var/log_access = 0 // log login/logout @@ -34,7 +33,6 @@ var/log_adminchat = 0 // log admin chat messages var/log_pda = 0 // log pda messages var/log_hrefs = 0 // log all links clicked in-game. Could be used for debugging and tracking down exploits - var/log_twitter = 0 // log certain expliotable parrots and other such fun things in a JSON file of twitter valid phrases. var/log_world_topic = 0 // log all world.Topic() calls var/sql_enabled = 0 // for sql switching var/allow_admin_ooccolor = 0 // Allows admins with relevant permissions to have their own ooc colour @@ -72,11 +70,6 @@ var/forbid_singulo_possession = 0 var/useircbot = 0 - var/check_randomizer = 0 - - var/allow_panic_bunker_bounce = 0 //Send new players somewhere else - var/panic_server_name = "somewhere else" - //IP Intel vars var/ipintel_email var/ipintel_rating_bad = 1 @@ -87,7 +80,6 @@ var/admin_legacy_system = 0 //Defines whether the server uses the legacy admin system with admins.txt or the SQL system. Config option in config.txt var/ban_legacy_system = 0 //Defines whether the server uses the legacy banning system with the files in /data or the SQL system. Config option in config.txt var/use_age_restriction_for_jobs = 0 //Do jobs use account age restrictions? --requires database - var/use_account_age_for_jobs = 0 //Uses the time they made the account for the job restriction stuff. New player joining alerts should be unaffected. var/see_own_notes = 0 //Can players see their own admin notes (read-only)? Config option in config.txt //Population cap vars @@ -104,8 +96,6 @@ var/list/modes = list() // allowed modes var/list/votable_modes = list() // votable modes var/list/probabilities = list() // relative probability of each mode - var/list/min_pop = list() // overrides for acceptible player counts in a mode - var/list/max_pop = list() var/humans_need_surnames = 0 var/allow_ai = 0 // allow ai job @@ -147,6 +137,9 @@ var/alert_desc_red_downto = "The station's destruction has been averted. There is still however an immediate serious threat to the station. Security may have weapons unholstered at all times, random searches are allowed and advised." var/alert_desc_delta = "Destruction of the station is imminent. All crew are instructed to obey all instructions given by heads of staff. Any violations of these orders can be punished by death. This is not a drill." + var/health_threshold_crit = 0 + var/health_threshold_dead = -100 + var/revival_pod_plants = 1 var/revival_cloning = 1 var/revival_brain_life = -1 @@ -174,8 +167,6 @@ var/silent_ai = 0 var/silent_borg = 0 - var/damage_multiplier = 1 //Modifier for damage to all mobs. Impacts healing as well. - var/allowwebclient = 0 var/webclientmembersonly = 0 @@ -183,9 +174,6 @@ var/default_laws = 0 //Controls what laws the AI spawns with. var/silicon_max_law_amount = 12 - var/list/lawids = list() - - var/list/law_weights = list() var/assistant_cap = -1 @@ -194,7 +182,6 @@ var/grey_assistants = 0 var/lavaland_budget = 60 - var/space_budget = 16 var/aggressive_changelog = 0 @@ -226,7 +213,6 @@ var/client_error_message = "Your version of byond is too old, may have issues, and is blocked from accessing this server." var/cross_name = "Other server" - var/showircname = 0 /datum/configuration/New() var/list/L = subtypesof(/datum/game_mode) @@ -274,16 +260,12 @@ if(type == "config") switch(name) - if("hub") - config.hub = 1 if("admin_legacy_system") config.admin_legacy_system = 1 if("ban_legacy_system") config.ban_legacy_system = 1 if("use_age_restriction_for_jobs") config.use_age_restriction_for_jobs = 1 - if("use_account_age_for_jobs") - config.use_account_age_for_jobs = 1 if("lobby_countdown") config.lobby_countdown = text2num(value) if("round_end_countdown") @@ -316,8 +298,6 @@ config.log_pda = 1 if("log_hrefs") config.log_hrefs = 1 - if("log_twitter") - config.log_twitter = 1 if("log_world_topic") config.log_world_topic = 1 if("allow_admin_ooccolor") @@ -361,7 +341,7 @@ if("guest_ban") guests_allowed = 0 if("usewhitelist") - config.usewhitelist = TRUE + config.usewhitelist = 1 if("allow_metadata") config.allow_Metadata = 1 if("kick_inactive") @@ -396,18 +376,6 @@ global.cross_allowed = 1 if("cross_comms_name") cross_name = value - if("panic_server_name") - panic_server_name = value - if("panic_server_address") - global.panic_address = value - if(value != "byond:\\address:port") - allow_panic_bunker_bounce = 1 - if("medal_hub_address") - global.medal_hub = value - if("medal_hub_password") - global.medal_pass = value - if("show_irc_name") - config.showircname = 1 if("see_own_notes") config.see_own_notes = 1 if("soft_popcap") @@ -428,8 +396,6 @@ config.notify_new_player_age = text2num(value) if("irc_first_connection_alert") config.irc_first_connection_alert = 1 - if("check_randomizer") - config.check_randomizer = 1 if("ipintel_email") if (value != "ch@nge.me") config.ipintel_email = value @@ -482,8 +448,10 @@ else if(type == "game_options") switch(name) - if("damage_multiplier") - config.damage_multiplier = text2num(value) + if("health_threshold_crit") + config.health_threshold_crit = text2num(value) + if("health_threshold_dead") + config.health_threshold_dead = text2num(value) if("revival_pod_plants") config.revival_pod_plants = text2num(value) if("revival_cloning") @@ -552,34 +520,6 @@ config.midround_antag_time_check = text2num(value) if("midround_antag_life_check") config.midround_antag_life_check = text2num(value) - if("min_pop") - var/pop_pos = findtext(value, " ") - var/mode_name = null - var/mode_value = null - - if(pop_pos) - mode_name = lowertext(copytext(value, 1, pop_pos)) - mode_value = copytext(value, pop_pos + 1) - if(mode_name in config.modes) - config.min_pop[mode_name] = text2num(mode_value) - else - diary << "Unknown minimum population configuration definition: [mode_name]." - else - diary << "Incorrect minimum population configuration definition: [mode_name] [mode_value]." - if("max_pop") - var/pop_pos = findtext(value, " ") - var/mode_name = null - var/mode_value = null - - if(pop_pos) - mode_name = lowertext(copytext(value, 1, pop_pos)) - mode_value = copytext(value, pop_pos + 1) - if(mode_name in config.modes) - config.max_pop[mode_name] = text2num(mode_value) - else - diary << "Unknown maximum population configuration definition: [mode_name]." - else - diary << "Incorrect maximum population configuration definition: [mode_name] [mode_value]." if("shuttle_refuel_delay") config.shuttle_refuel_delay = text2num(value) if("show_game_type_odds") @@ -649,19 +589,6 @@ config.sandbox_autoclose = 1 if("default_laws") config.default_laws = text2num(value) - if("random_laws") - var/law_id = lowertext(value) - lawids += law_id - if("law_weight") - // Value is in the form "LAWID,NUMBER" - var/list/L = splittext(value, ",") - if(L.len != 2) - diary << "Invalid LAW_WEIGHT: " + t - continue - var/lawid = L[1] - var/weight = text2num(L[2]) - law_weights[lawid] = weight - if("silicon_max_law_amount") config.silicon_max_law_amount = text2num(value) if("join_with_mutant_race") @@ -682,8 +609,6 @@ config.grey_assistants = 1 if("lavaland_budget") config.lavaland_budget = text2num(value) - if("space_budget") - config.space_budget = text2num(value) if("no_summon_guns") config.no_summon_guns = 1 if("no_summon_magic") @@ -828,10 +753,6 @@ if(probabilities[M.config_tag]<=0) qdel(M) continue - if(min_pop[M.config_tag]) - M.required_players = min_pop[M.config_tag] - if(max_pop[M.config_tag]) - M.maximum_players = max_pop[M.config_tag] if(M.can_start()) runnable_modes[M] = probabilities[M.config_tag] //world << "DEBUG: runnable_mode\[[runnable_modes.len]\] = [M.config_tag]" @@ -847,13 +768,7 @@ if(probabilities[M.config_tag]<=0) qdel(M) continue - if(min_pop[M.config_tag]) - M.required_players = min_pop[M.config_tag] - if(max_pop[M.config_tag]) - M.maximum_players = max_pop[M.config_tag] if(M.required_players <= crew) - if(M.maximum_players >= 0 && M.maximum_players < crew) - continue runnable_modes[M] = probabilities[M.config_tag] return runnable_modes diff --git a/code/controllers/master.dm b/code/controllers/master.dm index b18b723f97..6c0658aa2e 100644 --- a/code/controllers/master.dm +++ b/code/controllers/master.dm @@ -35,8 +35,6 @@ var/CURRENT_TICKLIMIT = TICK_LIMIT_RUNNING var/init_time var/tickdrift = 0 - var/sleep_delta - var/make_runtime = 0 // Has round started? (So we know what subsystems to run) @@ -67,11 +65,6 @@ var/CURRENT_TICKLIMIT = TICK_LIMIT_RUNNING // Tell qdel() to Del() this object. return QDEL_HINT_HARDDEL_NOW -/datum/controller/master/proc/Shutdown() - processing = FALSE - for(var/datum/subsystem/ss in subsystems) - ss.Shutdown() - // Returns 1 if we created a new mc, 0 if we couldn't due to a recent restart, // -1 if we encountered a runtime trying to recreate it /proc/Recreate_MC() @@ -172,8 +165,8 @@ var/CURRENT_TICKLIMIT = TICK_LIMIT_RUNNING message_admins("MC crashed or runtimed, restarting") var/rtn2 = Recreate_MC() if (rtn2 <= 0) - log_game("Failed to recreate MC (Error code: [rtn2]), it's up to the failsafe now") - message_admins("Failed to recreate MC (Error code: [rtn2]), it's up to the failsafe now") + log_game("Failed to recreate MC (Error code: [rtn2]), its up to the failsafe now") + message_admins("Failed to recreate MC (Error code: [rtn2]), its up to the failsafe now") Failsafe.defcon = 2 // Main loop. @@ -287,7 +280,6 @@ var/CURRENT_TICKLIMIT = TICK_LIMIT_RUNNING iteration++ last_run = world.time - src.sleep_delta = MC_AVERAGE_FAST(src.sleep_delta, sleep_delta) sleep(world.tick_lag * (processing + sleep_delta)) diff --git a/code/controllers/subsystem.dm b/code/controllers/subsystem.dm index 3fb7e75ab7..8cd011932b 100644 --- a/code/controllers/subsystem.dm +++ b/code/controllers/subsystem.dm @@ -37,10 +37,6 @@ // Used to initialize the subsystem BEFORE the map has loaded /datum/subsystem/New() -//cleanup actions -/datum/subsystem/proc/Shutdown() - return - //previously, this would have been named 'process()' but that name is used everywhere for different things! //fire() seems more suitable. This is the procedure that gets called every 'wait' deciseconds. //fire(), and the procs it calls, SHOULD NOT HAVE ANY SLEEP OPERATIONS in them! @@ -144,7 +140,7 @@ statclick = new/obj/effect/statclick/debug("Initializing...", src) if(can_fire) - msg = "[round(cost,1)]ms|[round(tick_usage,1)]%|[round(ticks,0.1)]\t[msg]" + msg = "[round(cost*ticks,1)]ms|[round(tick_usage,1)]%|[round(ticks,0.1)]\t[msg]" else msg = "OFFLINE\t[msg]" @@ -161,12 +157,7 @@ /datum/subsystem/proc/Recover() //this is so the subsystem doesn't rapid fire to make up missed ticks causing more lag -/datum/subsystem/vv_edit_var(var_name, var_value) - switch (var_name) - if ("can_fire") - if (var_value) - next_fire = world.time + wait - if ("queued_priority") //editing this breaks things. - return 0 - . = ..() - +/datum/subsystem/on_varedit(edited_var) + if (edited_var == "can_fire" && can_fire) + next_fire = world.time + wait + ..() diff --git a/code/controllers/subsystem/acid.dm b/code/controllers/subsystem/acid.dm deleted file mode 100644 index 23b671bf71..0000000000 --- a/code/controllers/subsystem/acid.dm +++ /dev/null @@ -1,42 +0,0 @@ -var/datum/subsystem/acid/SSacid - -/datum/subsystem/acid - name = "Acid" - priority = 40 - flags = SS_NO_INIT|SS_BACKGROUND - - var/list/currentrun = list() - var/list/processing = list() - -/datum/subsystem/acid/New() - NEW_SS_GLOBAL(SSacid) - - -/datum/subsystem/acid/stat_entry() - ..("P:[processing.len]") - - -/datum/subsystem/acid/fire(resumed = 0) - if (!resumed) - src.currentrun = processing.Copy() - - //cache for sanic speed (lists are references anyways) - var/list/currentrun = src.currentrun - - while (currentrun.len) - var/obj/O = currentrun[currentrun.len] - currentrun.len-- - if (!O || qdeleted(O)) - processing -= O - if (MC_TICK_CHECK) - return - continue - - if(O.acid_level && O.acid_processing()) - else - O.overlays -= acid_overlay - O.priority_overlays -= acid_overlay - processing -= O - - if (MC_TICK_CHECK) - return diff --git a/code/controllers/subsystem/augury.dm b/code/controllers/subsystem/augury.dm deleted file mode 100644 index 0b5c7b0085..0000000000 --- a/code/controllers/subsystem/augury.dm +++ /dev/null @@ -1,84 +0,0 @@ -var/datum/subsystem/augury/SSaugury - -/datum/subsystem/augury - name = "Augury" - flags = SS_NO_INIT - - var/list/watchers = list() - var/list/doombringers = list() - - var/list/observers_given_action = list() - -/datum/subsystem/augury/New() - NEW_SS_GLOBAL(SSaugury) - -/datum/subsystem/augury/stat_entry(msg) - ..("W:[watchers.len]|D:[doombringers.len]") - -/datum/subsystem/augury/proc/register_doom(atom/A, severity) - doombringers[A] = severity - -/datum/subsystem/augury/fire() - var/biggest_doom = null - var/biggest_threat = null - - for(var/d in doombringers) - if(!d || qdeleted(d)) - doombringers -= d - continue - var/threat = doombringers[d] - if((biggest_threat == null) || (biggest_threat < threat)) - biggest_doom = d - biggest_threat = threat - - if(doombringers.len) - for(var/i in player_list) - if(isobserver(i) && (!(observers_given_action[i]))) - var/datum/action/innate/augury/A = new - A.Grant(i) - observers_given_action[i] = TRUE - else - for(var/i in observers_given_action) - if(observers_given_action[i] && isobserver(i)) - var/mob/dead/observer/O = i - for(var/datum/action/innate/augury/A in O.actions) - qdel(A) - observers_given_action -= i - - for(var/w in watchers) - if(!w) - watchers -= w - continue - var/mob/dead/observer/O = w - if(biggest_doom && (!O.orbiting || O.orbiting.orbiting != biggest_doom)) - O.ManualFollow(biggest_doom) - -/datum/action/innate/augury - name = "Auto Follow Debris" - icon_icon = 'icons/obj/meteor.dmi' - button_icon_state = "flaming" - background_icon_state = ACTION_BUTTON_DEFAULT_BACKGROUND - -/datum/action/innate/augury/Destroy() - if(owner) - SSaugury.watchers -= owner - return ..() - -/datum/action/innate/augury/Activate() - SSaugury.watchers += owner - owner << "You are now auto-following debris." - active = TRUE - UpdateButtonIcon() - -/datum/action/innate/augury/Deactivate() - SSaugury.watchers -= owner - owner << "You are no longer auto-following debris." - active = FALSE - UpdateButtonIcon() - -/datum/action/innate/augury/UpdateButtonIcon() - ..() - if(active) - button.icon_state = "template_active" - else - button.icon_state = "template" diff --git a/code/controllers/subsystem/events.dm b/code/controllers/subsystem/events.dm index 718229793f..50e1521518 100644 --- a/code/controllers/subsystem/events.dm +++ b/code/controllers/subsystem/events.dm @@ -110,8 +110,8 @@ var/datum/subsystem/events/SSevent /datum/round_event/proc/findEventArea() //Here's a nice proc to use to find an area for your event to land in! var/list/safe_areas = list( - /area/ai_monitored/turret_protected/ai, - /area/ai_monitored/turret_protected/ai_upload, + /area/turret_protected/ai, + /area/turret_protected/ai_upload, /area/engine, /area/solar, /area/holodeck, diff --git a/code/controllers/subsystem/fastprocess.dm b/code/controllers/subsystem/fastprocess.dm new file mode 100644 index 0000000000..dfe0da21bc --- /dev/null +++ b/code/controllers/subsystem/fastprocess.dm @@ -0,0 +1,33 @@ +var/datum/subsystem/fastprocess/SSfastprocess + +/datum/subsystem/fastprocess + name = "Fast Process" + priority = 25 + flags = SS_BACKGROUND|SS_POST_FIRE_TIMING|SS_NO_INIT + wait = 2 + + var/list/processing = list() + var/list/currentrun = list() + +/datum/subsystem/fastprocess/New() + NEW_SS_GLOBAL(SSfastprocess) + +/datum/subsystem/fastprocess/stat_entry() + ..("FP:[processing.len]") + + +/datum/subsystem/fastprocess/fire(resumed = 0) + if (!resumed) + src.currentrun = processing.Copy() + //cache for sanic speed (lists are references anyways) + var/list/currentrun = src.currentrun + + while(currentrun.len) + var/datum/thing = currentrun[currentrun.len] + currentrun.len-- + if(thing) + thing.process(wait) + else + SSfastprocess.processing -= thing + if (MC_TICK_CHECK) + return diff --git a/code/controllers/subsystem/fire_burning.dm b/code/controllers/subsystem/fire_burning.dm deleted file mode 100644 index 2ace744430..0000000000 --- a/code/controllers/subsystem/fire_burning.dm +++ /dev/null @@ -1,42 +0,0 @@ -var/datum/subsystem/fire_burning/SSfire_burning - -/datum/subsystem/fire_burning - name = "Fire Burning" - priority = 40 - flags = SS_NO_INIT|SS_BACKGROUND - - var/list/currentrun = list() - var/list/processing = list() - -/datum/subsystem/fire_burning/New() - NEW_SS_GLOBAL(SSfire_burning) - - -/datum/subsystem/fire_burning/stat_entry() - ..("P:[processing.len]") - - -/datum/subsystem/fire_burning/fire(resumed = 0) - if (!resumed) - src.currentrun = processing.Copy() - - //cache for sanic speed (lists are references anyways) - var/list/currentrun = src.currentrun - - while(currentrun.len) - var/obj/O = currentrun[currentrun.len] - currentrun.len-- - if (!O || qdeleted(O)) - processing -= O - if (MC_TICK_CHECK) - return - continue - - if(O.resistance_flags & ON_FIRE) - O.take_damage(20, BURN, "fire", 0) - else - processing -= O - - if (MC_TICK_CHECK) - return - diff --git a/code/controllers/subsystem/garbage.dm b/code/controllers/subsystem/garbage.dm index 73de5173c6..819c2e4ec1 100644 --- a/code/controllers/subsystem/garbage.dm +++ b/code/controllers/subsystem/garbage.dm @@ -70,7 +70,7 @@ var/datum/subsystem/garbage_collector/SSgarbage Queue(ref) tobequeued.Cut(1, 2) -/datum/subsystem/garbage_collector/proc/HandleQueue() +/datum/subsystem/garbage_collector/proc/HandleQueue(time_to_stop) delslasttick = 0 gcedlasttick = 0 var/time_to_kill = world.time - collection_timeout // Anything qdel() but not GC'd BEFORE this time needs to be manually del() @@ -121,7 +121,7 @@ var/datum/subsystem/garbage_collector/SSgarbage ++totalgcs /datum/subsystem/garbage_collector/proc/QueueForQueuing(datum/A) - if (istype(A) && A.gc_destroyed == GC_CURRENTLY_BEING_QDELETED) + if (istype(A) && isnull(A.gc_destroyed)) tobequeued += A A.gc_destroyed = GC_QUEUED_FOR_QUEUING @@ -142,7 +142,7 @@ var/datum/subsystem/garbage_collector/SSgarbage queue[refid] = gctime /datum/subsystem/garbage_collector/proc/HardQueue(datum/A) - if (istype(A) && A.gc_destroyed == GC_CURRENTLY_BEING_QDELETED) + if (istype(A) && isnull(A.gc_destroyed)) tobequeued += A A.gc_destroyed = GC_QUEUED_FOR_HARD_DEL @@ -158,12 +158,11 @@ var/datum/subsystem/garbage_collector/SSgarbage if(!D) return #ifdef TESTING - SSgarbage.qdel_list += "[D.type]" + SSgarbage.qdel_list += "[A.type]" #endif if(!istype(D)) del(D) else if(isnull(D.gc_destroyed)) - D.gc_destroyed = GC_CURRENTLY_BEING_QDELETED var/hint = D.Destroy(force) // Let our friend know they're about to get fucked up. if(!D) return @@ -172,7 +171,6 @@ var/datum/subsystem/garbage_collector/SSgarbage SSgarbage.QueueForQueuing(D) if (QDEL_HINT_LETMELIVE, QDEL_HINT_IWILLGC) //qdel should let the object live after calling destory. if(!force) - D.gc_destroyed = null //clear the gc variable (important!) return // Returning LETMELIVE after being told to force destroy // indicates the objects Destroy() does not respect force @@ -193,15 +191,13 @@ var/datum/subsystem/garbage_collector/SSgarbage if (QDEL_HINT_FINDREFERENCE)//qdel will, if TESTING is enabled, display all references to this object, then queue the object for deletion. SSgarbage.QueueForQueuing(D) #ifdef TESTING - D.find_references() + A.find_references() #endif else if(!SSgarbage.noqdelhint["[D.type]"]) SSgarbage.noqdelhint["[D.type]"] = "[D.type]" testing("WARNING: [D.type] is not returning a qdel hint. It is being placed in the queue. Further instances of this type will also be queued.") SSgarbage.QueueForQueuing(D) - else if(D.gc_destroyed == GC_CURRENTLY_BEING_QDELETED) - CRASH("[D.type] destroy proc was called multiple times, likely due to a qdel loop in the Destroy logic") // Returns 1 if the object has been queued for deletion. /proc/qdeleted(datum/D) @@ -211,14 +207,6 @@ var/datum/subsystem/garbage_collector/SSgarbage return TRUE return FALSE -// Returns true if the object's destroy has been called (set just before it is called) -/proc/qdestroying(datum/D) - if(!istype(D)) - return FALSE - if(D.gc_destroyed == GC_CURRENTLY_BEING_QDELETED) - return TRUE - return FALSE - // Default implementation of clean-up code. // This should be overridden to remove all references pointing to the object being destroyed. // Return the appropriate QDEL_HINT; in most cases this is QDEL_HINT_QUEUE. @@ -229,18 +217,15 @@ var/datum/subsystem/garbage_collector/SSgarbage /datum/var/gc_destroyed //Time when this object was destroyed. #ifdef TESTING +/client/var/running_find_references /datum/var/running_find_references -/datum/verb/find_refs() +/datum/verb/find_references() set category = "Debug" set name = "Find References" set background = 1 set src in world - find_references(FALSE) - -/datum/proc/find_references(skip_alert) - set background = 1 running_find_references = type if(usr && usr.client) if(usr.client.running_find_references) @@ -252,10 +237,9 @@ var/datum/subsystem/garbage_collector/SSgarbage SSgarbage.next_fire = world.time + world.tick_lag return - if(!skip_alert) - if(alert("Running this will lock everything up for about 5 minutes. Would you like to begin the search?", "Find References", "Yes", "No") == "No") - running_find_references = null - return + if(alert("Running this will create a lot of lag until it finishes. You can cancel it by running it again. Would you like to begin the search?", "Find References", "Yes", "No") == "No") + running_find_references = null + return //this keeps the garbage collector from failing to collect objects being searched for in here SSgarbage.can_fire = 0 @@ -264,7 +248,13 @@ var/datum/subsystem/garbage_collector/SSgarbage usr.client.running_find_references = type testing("Beginning search for references to a [type].") - for(var/datum/thing in world) + var/list/things = list() + for(var/client/thing) + things |= thing + for(var/datum/thing) + things |= thing + testing("Collected list of things in search for references to a [type]. ([things.len] Thing\s)") + for(var/datum/thing in things) if(usr && usr.client && !usr.client.running_find_references) return for(var/varname in thing.vars) var/variable = thing.vars[varname] @@ -300,7 +290,7 @@ var/datum/subsystem/garbage_collector/SSgarbage qdel(src) if(!running_find_references) - find_references(TRUE) + find_references() /client/verb/show_qdeleted() set category = "Debug" diff --git a/code/controllers/subsystem/icon_smooth.dm b/code/controllers/subsystem/icon_smooth.dm index beb91c3a8e..2b19a0dbf7 100644 --- a/code/controllers/subsystem/icon_smooth.dm +++ b/code/controllers/subsystem/icon_smooth.dm @@ -16,7 +16,7 @@ var/datum/subsystem/icon_smooth/SSicon_smooth while(smooth_queue.len) var/atom/A = smooth_queue[smooth_queue.len] smooth_queue.len-- - smooth_icon(A) + ss_smooth_icon(A) if (MC_TICK_CHECK) return if (!smooth_queue.len) @@ -25,12 +25,8 @@ var/datum/subsystem/icon_smooth/SSicon_smooth /datum/subsystem/icon_smooth/Initialize() smooth_zlevel(1,TRUE) smooth_zlevel(2,TRUE) - var/queue = smooth_queue - smooth_queue = list() - for(var/V in queue) + for(var/V in smooth_queue) var/atom/A = V - if(!A || A.z <= 2) - continue - smooth_icon(A) - + if(A.z == 1 || A.z == 2) + smooth_queue -= A ..() \ No newline at end of file diff --git a/code/controllers/subsystem/jobs.dm b/code/controllers/subsystem/jobs.dm index 8b0968bec1..f4925cba6d 100644 --- a/code/controllers/subsystem/jobs.dm +++ b/code/controllers/subsystem/jobs.dm @@ -328,7 +328,7 @@ var/datum/subsystem/job/SSjob for(var/mob/new_player/player in unassigned) if(PopcapReached()) RejectPlayer(player) - else if(player.client.prefs.joblessrole == BERANDOMJOB) + else if(player.client.prefs.userandomjob) GiveRandomJob(player) Debug("DO, Standard Check end") @@ -339,15 +339,8 @@ var/datum/subsystem/job/SSjob for(var/mob/new_player/player in unassigned) if(PopcapReached()) RejectPlayer(player) - if(player.client.prefs.joblessrole == BEASSISTANT) - Debug("AC2 Assistant located, Player: [player]") - AssignRole(player, "Assistant") - else // For those who don't want to play if their preference were filled, back you go. - RejectPlayer(player) - - for(var/mob/new_player/player in unassigned) //Players that wanted to back out but couldn't because they're antags (can you feel the edge case?) - GiveRandomJob(player) - + Debug("AC2 Assistant located, Player: [player]") + AssignRole(player, "Assistant") return 1 //Gives the player the stuff he should have with his rank @@ -382,7 +375,7 @@ var/datum/subsystem/job/SSjob if(clear) S = T continue - if(istype(S, /obj/effect/landmark) && isturf(S.loc)) + if(istype(S, /obj/effect/landmark) && istype(S.loc, /turf)) H.loc = S.loc if(H.mind) @@ -401,7 +394,7 @@ var/datum/subsystem/job/SSjob H << "You are playing a job that is important for Game Progression. If you have to disconnect, please notify the admins via adminhelp." if(config.minimal_access_threshold) H << "As this station was initially staffed with a [config.jobs_have_minimal_access ? "full crew, only your job's necessities" : "skeleton crew, additional access may"] have been added to your ID card." - return H + return 1 /datum/subsystem/job/proc/setup_officer_positions() @@ -477,8 +470,7 @@ var/datum/subsystem/job/SSjob /datum/subsystem/job/proc/RejectPlayer(mob/new_player/player) if(player.mind && player.mind.special_role) return - if(PopcapReached()) - Debug("Popcap overflow Check observer located, Player: [player]") + Debug("Popcap overflow Check observer located, Player: [player]") player << "You have failed to qualify for any job you desired." unassigned -= player player.ready = 0 diff --git a/code/controllers/subsystem/lighting.dm b/code/controllers/subsystem/lighting.dm index 388ca3e231..2eac9a1021 100644 --- a/code/controllers/subsystem/lighting.dm +++ b/code/controllers/subsystem/lighting.dm @@ -1,116 +1,65 @@ + var/datum/subsystem/lighting/SSlighting -#define SSLIGHTING_LIGHTS 1 -#define SSLIGHTING_TURFS 2 +/var/list/lighting_update_lights = list() // List of lighting sources queued for update. +/var/list/lighting_update_corners = list() // List of lighting corners queued for update. +/var/list/lighting_update_overlays = list() // List of lighting overlays queued for update. + +/var/list/lighting_update_lights_old = list() // List of lighting sources currently being updated. +/var/list/lighting_update_corners_old = list() // List of lighting corners currently being updated. +/var/list/lighting_update_overlays_old = list() // List of lighting overlays currently being updated. /datum/subsystem/lighting - name = "Lighting" + name = "lighting" init_order = 1 - wait = 1 - flags = SS_POST_FIRE_TIMING - priority = 40 + wait = 2 display_order = 5 - - var/list/changed_lights = list() //list of all datum/light_source that need updating - var/changed_lights_workload = 0 //stats on the largest number of lights (max changed_lights.len) - var/list/changed_turfs = list() //list of all turfs which may have a different light level - var/changed_turfs_workload = 0 //stats on the largest number of turfs changed (max changed_turfs.len) + priority = 40 + flags = SS_POST_FIRE_TIMING /datum/subsystem/lighting/New() NEW_SS_GLOBAL(SSlighting) return ..() - -/datum/subsystem/lighting/stat_entry() - ..("L:[round(changed_lights_workload,1)]|T:[round(changed_turfs_workload,1)]") - - -//Workhorse of lighting. It cycles through each light that needs updating. It updates their -//effects and then processes every turf in the queue, updating their lighting object's appearance -//Any light that returns 1 in check() deletes itself -//By using queues we are ensuring we don't perform more updates than are necessary -/datum/subsystem/lighting/fire(resumed = 0) - var/ticklimit = CURRENT_TICKLIMIT - //split our tick allotment in half so we don't spend it all on lightshift checks - CURRENT_TICKLIMIT = world.tick_usage + ((ticklimit-world.tick_usage)/2) - - var/list/changed_lights = src.changed_lights - if (!resumed) - changed_lights_workload = MC_AVERAGE(changed_lights_workload, changed_lights.len) - var/i = 1 - while (i <= changed_lights.len) - var/datum/light_source/LS = changed_lights[i++] - LS.check() - if (MC_TICK_CHECK) - break - if (i > 1) - changed_lights.Cut(1,i) - - CURRENT_TICKLIMIT = ticklimit - var/list/changed_turfs = src.changed_turfs - if (!resumed) - changed_turfs_workload = MC_AVERAGE(changed_turfs_workload, changed_turfs.len) - i = 1 - while (i <= changed_turfs.len) - var/turf/T = changed_turfs[i++] - if(T.lighting_changed) - T.redraw_lighting() - if (MC_TICK_CHECK) - break - if (i > 1) - changed_turfs.Cut(1,i) - -//same as above except it attempts to shift ALL turfs in the world regardless of lighting_changed status -/datum/subsystem/lighting/Initialize(timeofday) - var/list/turfs_to_init = block(locate(1, 1, 1), locate(world.maxx, world.maxy, world.maxz)) +/datum/subsystem/lighting/Initialize() if (config.starlight) for(var/area/A in world) - if (A.lighting_use_dynamic == DYNAMIC_LIGHTING_IFSTARLIGHT) + if (A.dynamic_lighting == DYNAMIC_LIGHTING_IFSTARLIGHT) A.luminosity = 0 - for(var/thing in changed_lights) - var/datum/light_source/LS = thing - LS.check() - changed_lights.Cut() + create_all_lighting_overlays() - for(var/thing in turfs_to_init) - var/turf/T = thing - T.init_lighting() - changed_turfs.Cut() +/datum/subsystem/lighting/fire() - ..() + lighting_update_lights_old = lighting_update_lights //We use a different list so any additions to the update lists during a delay from scheck() don't cause things to be cut from the list without being updated. + lighting_update_lights = list() + for(var/datum/light_source/L in lighting_update_lights_old) -//Used to strip valid information from an existing instance and transfer it to the replacement. i.e. when a crash occurs -//It works by using spawn(-1) to transfer the data, if there is a runtime the data does not get transfered but the loop -//does not crash -/datum/subsystem/lighting/Recover() - if(!istype(SSlighting.changed_turfs)) - SSlighting.changed_turfs = list() - if(!istype(SSlighting.changed_lights)) - SSlighting.changed_lights = list() + if(L.check() || L.destroyed || L.force_update) + L.remove_lum() + if(!L.destroyed) + L.apply_lum() - for(var/thing in SSlighting.changed_lights) - var/datum/light_source/LS = thing - spawn(-1) //so we don't crash the loop (inefficient) - LS.check() + else if(L.vis_update) //We smartly update only tiles that became (in) visible to use. + L.smart_vis_update() - for(var/thing in changed_turfs) - var/turf/T = thing - if(T.lighting_changed) - spawn(-1) - T.redraw_lighting() + L.vis_update = FALSE + L.force_update = FALSE + L.needs_update = FALSE - var/msg = "## DEBUG: [time2text(world.timeofday)] [name] subsystem restarted. Reports:\n" - for(var/varname in SSlighting.vars) - switch(varname) - if("tag","bestF","type","parent_type","vars") - continue - else - var/varval1 = SSlighting.vars[varname] - var/varval2 = vars[varname] - if(istype(varval1,/list)) - varval1 = "/list([length(varval1)])" - varval2 = "/list([length(varval2)])" - msg += "\t [varname] = [varval1] -> [varval2]\n" - world.log << msg + lighting_update_corners_old = lighting_update_corners //Same as above. + lighting_update_corners = list() + for(var/A in lighting_update_corners_old) + var/datum/lighting_corner/C = A + + C.update_overlays() + + C.needs_update = FALSE + + lighting_update_overlays_old = lighting_update_overlays //Same as above. + lighting_update_overlays = list() + + for(var/atom/movable/lighting_overlay/O in lighting_update_overlays_old) + O.update_overlay() + O.needs_update = 0 diff --git a/code/controllers/subsystem/mapping.dm b/code/controllers/subsystem/mapping.dm index f86153f34f..b39fca4a6e 100644 --- a/code/controllers/subsystem/mapping.dm +++ b/code/controllers/subsystem/mapping.dm @@ -34,7 +34,7 @@ var/datum/subsystem/mapping/SSmapping else space_zlevels += i - seedRuins(space_zlevels, config.space_budget, /area/space, space_ruins_templates) + seedRuins(space_zlevels, rand(8,16), /area/space, space_ruins_templates) // Set up Z-level transistions. setup_map_transitions() diff --git a/code/controllers/subsystem/minimap.dm b/code/controllers/subsystem/minimap.dm index 1687cb1b2b..421d9ba312 100644 --- a/code/controllers/subsystem/minimap.dm +++ b/code/controllers/subsystem/minimap.dm @@ -13,55 +13,25 @@ var/datum/subsystem/minimap/SSminimap NEW_SS_GLOBAL(SSminimap) /datum/subsystem/minimap/Initialize(timeofday) + if(!config.generate_minimaps) + world << "Minimap generation disabled... Skipping" + return var/hash = md5(file2text("_maps/[MAP_PATH]/[MAP_FILE]")) - if(config.generate_minimaps) - if(hash == trim(file2text(hash_path()))) - for(var/z in z_levels) //We have these files cached, let's register them - register_asset("minimap_[z].png", fcopy_rsc(map_path(z))) - return ..() - for(var/z in z_levels) - generate(z) - register_asset("minimap_[z].png", fcopy_rsc(map_path(z))) - fdel(hash_path()) - text2file(hash, hash_path()) - else - world << "Minimap generation disabled. Loading from cache..." - var/fileloc = 0 - if(check_files(0)) //Let's first check if we have maps cached in the data folder. NOTE: This will override the backup files even if this map is older. - world.log << "cache" - if(hash != trim(file2text(hash_path()))) - world << "Loaded cached minimap is outdated. There may be minor discrepancies in layout." //Disclaimer against players saying map is wrong. - fileloc = 0 - else - if(!check_files(1)) - world << "Failed to load backup minimap file. Aborting." //We couldn't find something. Bail to prevent issues with null files - return - fileloc = 1 //No map image cached with the current map, and we have a backup. Let's fall back to it. - world << "No cached minimaps detected. Backup files loaded." - for(var/z in z_levels) - register_asset("minimap_[z].png", fcopy_rsc(map_path(z,fileloc))) + if(hash == trim(file2text(hash_path()))) + return ..() + + for(var/z in z_levels) + generate(z) + register_asset("minimap_[z].png", fcopy_rsc(map_path(z))) + fdel(hash_path()) + text2file(hash, hash_path()) ..() -/datum/subsystem/minimap/proc/check_files(backup) // If the backup argument is true, looks in the icons folder. If false looks in the data folder. - for(var/z in z_levels) - if(!fexists(file(map_path(z,backup)))) //Let's make sure we have a file for this map - if(backup) - world.log << "Failed to find backup file for map [MAP_NAME] on zlevel [z]." - return FALSE - return TRUE +/datum/subsystem/minimap/proc/hash_path() + return "data/minimaps/[MAP_NAME].md5" - -/datum/subsystem/minimap/proc/hash_path(backup) - if(backup) - return "icons/minimaps/[MAP_NAME].md5" - else - return "data/minimaps/[MAP_NAME].md5" - -/datum/subsystem/minimap/proc/map_path(z,backup) - if(backup) - return "icons/minimaps/[MAP_NAME]_[z].png" - else - return "data/minimaps/[MAP_NAME]_[z].png" +/datum/subsystem/minimap/proc/map_path(z) + return "data/minimaps/[MAP_NAME]_[z].png" /datum/subsystem/minimap/proc/send(client/client) for(var/z in z_levels) @@ -73,10 +43,24 @@ var/datum/subsystem/minimap/SSminimap // Scale it up to our target size. minimap.Scale(MINIMAP_SIZE, MINIMAP_SIZE) + var/counter = 512 // Loop over turfs and generate icons. for(var/T in block(locate(x1, y1, z), locate(x2, y2, z))) generate_tile(T, minimap) + //byond bug, this fixes OOM crashes by flattening and reseting the minimap icon holder every so and so tiles + counter-- + if(counter <= 0) + counter = 512 + var/icon/flatten = new /icon() + flatten.Insert(minimap, "", SOUTH, 1, 0) + del(minimap) + minimap = flatten + stoplag() //we have to sleep in order to get byond to clear out the proc's garbage bin + + CHECK_TICK + + // Create a new icon and insert the generated minimap, so that BYOND doesn't generate different directions. var/icon/final = new /icon() final.Insert(minimap, "", SOUTH, 1, 0) @@ -85,9 +69,9 @@ var/datum/subsystem/minimap/SSminimap /datum/subsystem/minimap/proc/generate_tile(turf/tile, icon/minimap) var/icon/tile_icon var/obj/obj - var/list/obj_icons + var/list/obj_icons = list() // Don't use icons for space, just add objects in space if they exist. - if(isspaceturf(tile)) + if(istype(tile, /turf/open/space)) obj = locate(/obj/structure/lattice/catwalk) in tile if(obj) tile_icon = new /icon('icons/obj/smooth_structures/catwalk.dmi', "catwalk", SOUTH) @@ -102,20 +86,18 @@ var/datum/subsystem/minimap/SSminimap tile_icon = new /icon('icons/obj/atmospherics/pipes/transit_tube.dmi', obj.icon_state, obj.dir) else tile_icon = new /icon(tile.icon, tile.icon_state, tile.dir) - obj_icons = list() + obj_icons.Cut() obj = locate(/obj/structure) in tile if(obj) - obj_icons += new /icon(obj.icon, obj.icon_state, obj.dir, 1, 0) + obj_icons += getFlatIcon(obj) obj = locate(/obj/machinery) in tile if(obj) obj_icons += new /icon(obj.icon, obj.icon_state, obj.dir, 1, 0) obj = locate(/obj/structure/window) in tile if(obj) obj_icons += new /icon('icons/obj/smooth_structures/window.dmi', "window", SOUTH) - obj = locate(/obj/structure/table) in tile - if(obj) - obj_icons += new /icon('icons/obj/smooth_structures/table.dmi', "table", SOUTH) + for(var/I in obj_icons) var/icon/obj_icon = I tile_icon.Blend(obj_icon, ICON_OVERLAY) @@ -125,3 +107,4 @@ var/datum/subsystem/minimap/SSminimap tile_icon.Scale(TILE_SIZE, TILE_SIZE) // Add the tile to the minimap. minimap.Blend(tile_icon, ICON_OVERLAY, ((tile.x - 1) * TILE_SIZE), ((tile.y - 1) * TILE_SIZE)) + del(tile_icon) diff --git a/code/controllers/subsystem/processing/objects.dm b/code/controllers/subsystem/objects.dm similarity index 83% rename from code/controllers/subsystem/processing/objects.dm rename to code/controllers/subsystem/objects.dm index 7c4852ea3a..c3c01ec47e 100644 --- a/code/controllers/subsystem/processing/objects.dm +++ b/code/controllers/subsystem/objects.dm @@ -14,13 +14,14 @@ var/datum/subsystem/objects/SSobj var/list/atom_spawners = list() var/list/processing = list() var/list/currentrun = list() + var/list/burning = list() /datum/subsystem/objects/New() NEW_SS_GLOBAL(SSobj) /datum/subsystem/objects/Initialize(timeofdayl) trigger_atom_spawners() - setupGenetics() //to set the mutations' place in structural enzymes, so monkey.initialize() knows where to put the monkey mutation. + setupGenetics() for(var/thing in world) var/atom/A = thing A.initialize() @@ -54,6 +55,12 @@ var/datum/subsystem/objects/SSobj if (MC_TICK_CHECK) return + for(var/obj/burningobj in SSobj.burning) + if(burningobj && (burningobj.burn_state == ON_FIRE)) + if(burningobj.burn_world_time < world.time) + burningobj.burn() + else + SSobj.burning.Remove(burningobj) /datum/subsystem/objects/proc/setup_template_objects(list/objects) trigger_atom_spawners(0, ignore_z=TRUE) @@ -66,3 +73,5 @@ var/datum/subsystem/objects/SSobj atom_spawners = SSobj.atom_spawners if (istype(SSobj.processing)) processing = SSobj.processing + if (istype(SSobj.burning)) + burning = SSobj.burning \ No newline at end of file diff --git a/code/controllers/subsystem/orbit.dm b/code/controllers/subsystem/orbit.dm deleted file mode 100644 index da52ae43f7..0000000000 --- a/code/controllers/subsystem/orbit.dm +++ /dev/null @@ -1,50 +0,0 @@ -var/datum/subsystem/orbit/SSorbit - -/datum/subsystem/orbit - name = "Orbits" - priority = 35 - wait = 2 - flags = SS_NO_INIT|SS_TICKER - - var/list/currentrun = list() - var/list/processing = list() - -/datum/subsystem/orbit/New() - NEW_SS_GLOBAL(SSorbit) - - -/datum/subsystem/orbit/stat_entry() - ..("P:[processing.len]") - - -/datum/subsystem/orbit/fire(resumed = 0) - if (!resumed) - src.currentrun = processing.Copy() - - //cache for sanic speed (lists are references anyways) - var/list/currentrun = src.currentrun - - while (currentrun.len) - var/datum/orbit/O = currentrun[currentrun.len] - currentrun.len-- - if (!O) - processing -= O - if (MC_TICK_CHECK) - return - continue - if (!O.orbiter) - qdel(O) - if (MC_TICK_CHECK) - return - continue - if (O.lastprocess >= world.time) //we already checked recently - if (MC_TICK_CHECK) - return - continue - var/targetloc = get_turf(O.orbiting) - if (targetloc != O.lastloc || O.orbiter.loc != targetloc) - O.Check(targetloc) - if (MC_TICK_CHECK) - return - - diff --git a/code/controllers/subsystem/pai.dm b/code/controllers/subsystem/pai.dm index 1a556e4fa2..1978c1b167 100644 --- a/code/controllers/subsystem/pai.dm +++ b/code/controllers/subsystem/pai.dm @@ -1,14 +1,14 @@ var/datum/subsystem/pai/SSpai -var/list/obj/item/device/paicard/pai_card_list = list() /datum/subsystem/pai name = "pAI" + init_order = 20 + flags = SS_NO_FIRE|SS_NO_INIT - flags = SS_NO_INIT|SS_NO_FIRE - + var/askDelay = 600 + var/const/NEVER_FOR_THIS_ROUND = -1 var/list/candidates = list() - var/ghost_spam = FALSE - var/spam_delay = 100 + var/list/asked = list() /datum/subsystem/pai/New() NEW_SS_GLOBAL(SSpai) @@ -29,6 +29,7 @@ var/list/obj/item/device/paicard/pai_card_list = list() pai.key = candidate.key card.setPersonality(pai) + card.looking_for_personality = 0 ticker.mode.update_cult_icons_removed(card.pai.mind) ticker.mode.update_rev_icons_removed(card.pai.mind) @@ -75,8 +76,8 @@ var/list/obj/item/device/paicard/pai_card_list = list() if("submit") if(candidate) candidate.ready = 1 - for(var/obj/item/device/paicard/p in pai_card_list) - if(!p.pai) + for(var/obj/item/device/paicard/p in world) + if(p.looking_for_personality == 1) p.alertUpdate() usr << browse(null, "window=paiRecruit") return @@ -133,20 +134,8 @@ var/list/obj/item/device/paicard/pai_card_list = list() M << browse(dat, "window=paiRecruit") -/datum/subsystem/pai/proc/spam_again() - ghost_spam = FALSE - /datum/subsystem/pai/proc/findPAI(obj/item/device/paicard/p, mob/user) - if(!ghost_spam) - ghost_spam = TRUE - for(var/mob/dead/observer/G in player_list) - if(!G.key || !G.client) - continue - if(!(ROLE_PAI in G.client.prefs.be_special)) - continue - G << 'sound/misc/server-ready.ogg' //Alerting them to their consideration - G << "Someone is requesting a pAI personality! Use the pAI button to submit yourself as one." - addtimer(src, "spam_again", spam_delay) + requestRecruits() var/list/available = list() for(var/datum/paiCandidate/c in SSpai.candidates) if(c.ready) @@ -191,6 +180,36 @@ var/list/obj/item/device/paicard/pai_card_list = list() user << browse(dat, "window=findPai") +/datum/subsystem/pai/proc/requestRecruits() + for(var/mob/dead/observer/O in player_list) + if(jobban_isbanned(O, ROLE_PAI)) + continue + if(asked[O.ckey]) + if(world.time < asked[O.ckey] + askDelay || asked[O.ckey] == NEVER_FOR_THIS_ROUND) + continue + else + asked.Remove(O.ckey) + if(O.client) + var/hasSubmitted = 0 + for(var/datum/paiCandidate/c in SSpai.candidates) + if(c.key == O.key) + hasSubmitted = 1 + if(!hasSubmitted && (ROLE_PAI in O.client.prefs.be_special)) + question(O.client) + +/datum/subsystem/pai/proc/question(client/C) + set waitfor = 0 + if(!C) + return + asked[C.ckey] = world.time + var/response = tgalert(C, "Someone is requesting a pAI personality. Would you like to play as a personal AI?", "pAI Request", "Yes", "No", "Never for this round", StealFocus=0, Timeout=askDelay) + if(!C) + return //handle logouts that happen whilst the alert is waiting for a response. + if(response == "Yes") + recruitWindow(C.mob) + else if (response == "Never for this round") + asked[C.ckey] = NEVER_FOR_THIS_ROUND + /datum/paiCandidate var/name var/key diff --git a/code/controllers/subsystem/parallax.dm b/code/controllers/subsystem/parallax.dm index a1921782ea..5f8f373212 100644 --- a/code/controllers/subsystem/parallax.dm +++ b/code/controllers/subsystem/parallax.dm @@ -1,42 +1,12 @@ var/datum/subsystem/parallax/SSparallax /datum/subsystem/parallax - name = "parallax" - wait = 2 - flags = SS_POST_FIRE_TIMING | SS_FIRE_IN_LOBBY | SS_BACKGROUND | SS_NO_INIT - priority = 65 - var/list/currentrun + name = "Space Parallax" + init_order = 18 + flags = SS_NO_FIRE /datum/subsystem/parallax/New() - NEW_SS_GLOBAL(SSparallax) - return ..() + NEW_SS_GLOBAL(SSparallax) -/datum/subsystem/parallax/fire(resumed = 0) - if (!resumed) - src.currentrun = clients.Copy() - - //cache for sanic speed (lists are references anyways) - var/list/currentrun = src.currentrun - - while(length(currentrun)) - var/client/C = currentrun[currentrun.len] - currentrun.len-- - if (!C || !C.eye) - if (MC_TICK_CHECK) - return - continue - var/atom/movable/A = C.eye - if(!A) - return - for (A; isloc(A.loc) && !isturf(A.loc); A = A.loc); - - if(A != C.movingmob) - if(C.movingmob != null) - C.movingmob.client_mobs_in_contents -= C.mob - UNSETEMPTY(C.movingmob.client_mobs_in_contents) - LAZYINITLIST(A.client_mobs_in_contents) - A.client_mobs_in_contents += C.mob - C.movingmob = A - if (MC_TICK_CHECK) - return - currentrun = null \ No newline at end of file +/datum/subsystem/parallax/Initialize() + create_global_parallax_icons() diff --git a/code/controllers/subsystem/persistence.dm b/code/controllers/subsystem/persistence.dm deleted file mode 100644 index dd1283c325..0000000000 --- a/code/controllers/subsystem/persistence.dm +++ /dev/null @@ -1,87 +0,0 @@ -var/datum/subsystem/persistence/SSpersistence - -/datum/subsystem/persistence - name = "Persistence" - init_order = -100 - flags = SS_NO_FIRE - var/savefile/secret_satchels - var/list/satchel_blacklist = list() //this is a typecache - var/list/new_secret_satchels = list() //these are objects - var/old_secret_satchels = "" - -/datum/subsystem/persistence/New() - NEW_SS_GLOBAL(SSpersistence) - -/datum/subsystem/persistence/Initialize() - secret_satchels = new /savefile("data/npc_saves/SecretSatchels.sav") - satchel_blacklist = typecacheof(list(/obj/item/stack/tile/plasteel, /obj/item/weapon/crowbar)) - secret_satchels[MAP_NAME] >> old_secret_satchels - - var/list/expanded_old_satchels = list() - var/placed_satchels = 0 - - if(!isnull(old_secret_satchels)) - expanded_old_satchels = splittext(old_secret_satchels,"#") - if(PlaceSecretSatchel(expanded_old_satchels)) - placed_satchels++ - else - expanded_old_satchels.len = 0 - - var/list/free_satchels = list() - for(var/turf/T in shuffle(block(locate(TRANSITIONEDGE,TRANSITIONEDGE,ZLEVEL_STATION), locate(world.maxx-TRANSITIONEDGE,world.maxy-TRANSITIONEDGE,ZLEVEL_STATION)))) //Nontrivially expensive but it's roundstart only - if(isfloorturf(T) && !istype(T,/turf/open/floor/plating/)) - free_satchels += new /obj/item/weapon/storage/backpack/satchel/flat/secret(T) - if(!isemptylist(free_satchels) && ((free_satchels.len + placed_satchels) >= (50 - expanded_old_satchels.len) * 0.1)) //up to six tiles, more than enough to kill anything that moves - break - for(var/mob/living/simple_animal/parrot/Poly/P in living_mob_list) - twitterize(P.speech_buffer, "polytalk") - break //Who's been duping the bird?! - - ..() - -/datum/subsystem/persistence/proc/CollectData() - CollectSecretSatchels() - -/datum/subsystem/persistence/proc/PlaceSecretSatchel(list/expanded_old_satchels) - var/satchel_string - - if(expanded_old_satchels.len >= 20) //guards against low drop pools assuring that one player cannot reliably find his own gear. - satchel_string = pick_n_take(expanded_old_satchels) - - old_secret_satchels = jointext(expanded_old_satchels,"#") - secret_satchels[MAP_NAME] << old_secret_satchels - - var/list/chosen_satchel = splittext(satchel_string,"|") - if(!chosen_satchel || isemptylist(chosen_satchel) || chosen_satchel.len != 3) //Malformed - return 0 - - var/path = text2path(chosen_satchel[3]) //If the item no longer exist, this returns null - if(!path) - return 0 - - var/obj/item/weapon/storage/backpack/satchel/flat/F = new() - F.x = text2num(chosen_satchel[1]) - F.y = text2num(chosen_satchel[2]) - F.z = ZLEVEL_STATION - if(isfloorturf(F.loc) && !istype(F.loc,/turf/open/floor/plating/)) - F.hide(1) - new path(F) - return 1 - -/datum/subsystem/persistence/proc/CollectSecretSatchels() - for(var/A in new_secret_satchels) - var/obj/item/weapon/storage/backpack/satchel/flat/F = A - if(qdeleted(F) || F.z != ZLEVEL_STATION || F.invisibility != INVISIBILITY_MAXIMUM) - continue - var/list/savable_obj = list() - for(var/obj/O in F) - if(is_type_in_typecache(O, satchel_blacklist) || O.admin_spawned) - continue - if(O.persistence_replacement) - savable_obj += O.persistence_replacement - else - savable_obj += O.type - if(isemptylist(savable_obj)) - continue - old_secret_satchels += "[F.x]|[F.y]|[pick(savable_obj)]#" - secret_satchels[MAP_NAME] << old_secret_satchels diff --git a/code/controllers/subsystem/pool.dm b/code/controllers/subsystem/pool.dm deleted file mode 100644 index 245e733e98..0000000000 --- a/code/controllers/subsystem/pool.dm +++ /dev/null @@ -1,48 +0,0 @@ -var/datum/subsystem/pool/SSpool - -/datum/subsystem/pool - name = "Pool" - init_order = 20 - flags = SS_BACKGROUND | SS_FIRE_IN_LOBBY - var/list/global_pool - var/list/pool_levels = list() - var/sum = 0 - - var/list/maintained_types = list( - /obj/item/stack/tile/plasteel = 100 - ) - - var/list/stats_placed_in_pool = list() - var/list/stats_pooled_or_newed = list() - var/list/stats_reused = list() - var/list/stats_created_new = list() - -/datum/subsystem/pool/New() - NEW_SS_GLOBAL(SSpool) - -/datum/subsystem/pool/Initialize(timeofday) - global_pool = GlobalPool - -/datum/subsystem/pool/stat_entry(msg) - if(global_pool) - msg += "Types: [global_pool.len]|Total Pooled Objects: [sum]" - else - msg += "NULL POOL" - ..(msg) - -/datum/subsystem/pool/fire() - sum = 0 - for(var/type in global_pool + maintained_types) - var/list/L = global_pool[type] - var/required_number = maintained_types[type] || 0 - - // Update pool levels and tracker - var/amount = 0 - if(L) - amount = L.len - sum += amount - - // why yes, just inflate the pool at one item per tick - if(amount < required_number) - var/diver = new type - qdel(diver) diff --git a/code/controllers/subsystem/processing/fastprocess.dm b/code/controllers/subsystem/processing/fastprocess.dm deleted file mode 100644 index 7a46f253ef..0000000000 --- a/code/controllers/subsystem/processing/fastprocess.dm +++ /dev/null @@ -1,10 +0,0 @@ -//Fires five times every second. - -var/datum/subsystem/processing/fastprocess/SSfastprocess -/datum/subsystem/processing/fastprocess - name = "Fast Processing" - wait = 2 - stat_tag = "FP" - -/datum/subsystem/processing/fastprocess/New() - NEW_SS_GLOBAL(SSfastprocess) diff --git a/code/controllers/subsystem/processing/processing.dm b/code/controllers/subsystem/processing/processing.dm deleted file mode 100644 index 92540ba442..0000000000 --- a/code/controllers/subsystem/processing/processing.dm +++ /dev/null @@ -1,34 +0,0 @@ -//Used to process objects. Fires once every second. - -var/datum/subsystem/processing/SSprocessing -/datum/subsystem/processing - name = "Processing" - priority = 25 - flags = SS_BACKGROUND|SS_POST_FIRE_TIMING|SS_NO_INIT - wait = 10 - - var/stat_tag = "P" //Used for logging - var/list/processing = list() - var/list/currentrun = list() - -/datum/subsystem/processing/New() - NEW_SS_GLOBAL(SSprocessing) - -/datum/subsystem/processing/stat_entry() - ..("[stat_tag]:[processing.len]") - -/datum/subsystem/processing/fire(resumed = 0) - if (!resumed) - currentrun = processing.Copy() - //cache for sanic speed (lists are references anyways) - var/list/current_run = currentrun - - while(current_run.len) - var/datum/thing = current_run[current_run.len] - current_run.len-- - if(thing) - thing.process(wait) - else - processing -= thing - if (MC_TICK_CHECK) - return diff --git a/code/controllers/subsystem/religion.dm b/code/controllers/subsystem/religion.dm deleted file mode 100644 index 69ec3fe7d5..0000000000 --- a/code/controllers/subsystem/religion.dm +++ /dev/null @@ -1,17 +0,0 @@ -var/datum/subsystem/religion/SSreligion - -/datum/subsystem/religion - name = "Religion" - init_order = 19 - flags = SS_NO_FIRE|SS_NO_INIT - - var/bible_deity_name - var/Bible_icon_state - var/Bible_item_state - var/Bible_name - var/Bible_deity_name - - var/holy_weapon - -/datum/subsystem/religion/New() - NEW_SS_GLOBAL(SSreligion) diff --git a/code/controllers/subsystem/server_maintenance.dm b/code/controllers/subsystem/server_maintenance.dm index 1e4b4ae76f..70c03b7591 100644 --- a/code/controllers/subsystem/server_maintenance.dm +++ b/code/controllers/subsystem/server_maintenance.dm @@ -3,16 +3,12 @@ var/datum/subsystem/server_maint/SSserver /datum/subsystem/server_maint name = "Server Tasks" wait = 6000 - flags = SS_NO_TICK_CHECK + init_order = 19 + flags = SS_NO_TICK_CHECK|SS_NO_INIT /datum/subsystem/server_maint/New() NEW_SS_GLOBAL(SSserver) -/datum/subsystem/server_maint/Initialize(timeofday) - if (config.hub) - world.visibility = 1 - ..() - /datum/subsystem/server_maint/fire() //handle kicking inactive players if(config.kick_inactive > 0) @@ -21,7 +17,7 @@ var/datum/subsystem/server_maint/SSserver if(!istype(C.mob, /mob/dead)) log_access("AFK: [key_name(C)]") C << "You have been inactive for more than 10 minutes and have been disconnected." - qdel(C) + del(C) if(config.sql_enabled) sql_poll_players() diff --git a/code/controllers/subsystem/shuttles.dm b/code/controllers/subsystem/shuttles.dm index db4cd6fbec..8860b58864 100644 --- a/code/controllers/subsystem/shuttles.dm +++ b/code/controllers/subsystem/shuttles.dm @@ -1,5 +1,3 @@ -#define HIGHLIGHT_DYNAMIC_TRANSIT 1 - var/datum/subsystem/shuttle/SSshuttle /datum/subsystem/shuttle @@ -12,10 +10,6 @@ var/datum/subsystem/shuttle/SSshuttle var/list/stationary = list() var/list/transit = list() - var/list/turf/transit_turfs = list() - var/list/transit_requesters = list() - var/clear_transit = FALSE - //emergency shuttle stuff var/obj/docking_port/mobile/emergency/emergency var/obj/docking_port/mobile/emergency/backup/backup_shuttle @@ -24,7 +18,6 @@ var/datum/subsystem/shuttle/SSshuttle var/emergencyEscapeTime = 1200 //time taken for emergency shuttle to reach a safe distance after leaving station (in deciseconds) var/area/emergencyLastCallLoc var/emergencyNoEscape - var/list/hostileEnvironments = list() //supply shuttle stuff var/obj/docking_port/mobile/supply/supply @@ -40,9 +33,6 @@ var/datum/subsystem/shuttle/SSshuttle var/datum/round_event/shuttle_loan/shuttle_loan - var/shuttle_purchased = FALSE //If the station has purchased a replacement escape shuttle this round - var/list/shuttle_purchase_requirements_met = list() //For keeping track of ingame events that would unlock new shuttles, such as defeating a boss or discovering a secret item - /datum/subsystem/shuttle/New() NEW_SS_GLOBAL(SSshuttle) @@ -63,87 +53,16 @@ var/datum/subsystem/shuttle/SSshuttle supply_packs[P.type] = P initial_move() - setup_transit_zone() -#ifdef HIGHLIGHT_DYNAMIC_TRANSIT - color_space() -#endif + ..() -/datum/subsystem/shuttle/proc/setup_transit_zone() - if(transit_markers.len == 0) - WARNING("No /obj/effect/landmark/transit placed on the map!") - return - // transit zone - var/turf/A = get_turf(transit_markers[1]) - var/turf/B = get_turf(transit_markers[2]) - for(var/i in block(A, B)) - var/turf/T = i - T.ChangeTurf(/turf/open/space) - transit_turfs += T - T.flags |= UNUSED_TRANSIT_TURF - -#ifdef HIGHLIGHT_DYNAMIC_TRANSIT -/datum/subsystem/shuttle/proc/color_space() - if(transit_markers.len == 0) - WARNING("No /obj/effect/landmark/transit placed on the map!") - return - var/turf/A = get_turf(transit_markers[1]) - var/turf/B = get_turf(transit_markers[2]) - for(var/i in block(A, B)) - var/turf/T = i - // Only dying the "pure" space, not the transit tiles - if(istype(T, /turf/open/space/transit) || !isspaceturf(T)) - continue - if((T.x == A.x) || (T.x == B.x) || (T.y == A.y) || (T.y == B.y)) - T.color = "#ffff00" - else - T.color = "#00ffff" -#endif - - //world.log << "[transit_turfs.len] transit turfs registered" /datum/subsystem/shuttle/fire() for(var/thing in mobile) - if(!thing) - mobile.Remove(thing) + if(thing) + var/obj/docking_port/mobile/P = thing + P.check() continue - var/obj/docking_port/mobile/P = thing - P.check() - var/changed_transit = FALSE - for(var/thing in transit) - var/obj/docking_port/stationary/transit/T = thing - if(!T.owner) - qdel(T, force=TRUE) - changed_transit = TRUE - // This next one removes transit docks/zones that aren't - // immediately being used. This will mean that the zone creation - // code will be running a lot. - var/obj/docking_port/mobile/owner = T.owner - if(owner) - var/idle = owner.mode == SHUTTLE_IDLE - var/not_centcom_evac = owner.launch_status == NOLAUNCH - var/not_in_use = (!T.get_docked()) - if(idle && not_centcom_evac && not_in_use) - qdel(T, force=TRUE) - changed_transit = TRUE - if(clear_transit) - transit_requesters.Cut() - for(var/i in transit) - qdel(i, force=TRUE) - setup_transit_zone() - clear_transit = FALSE - changed_transit = TRUE -#ifdef HIGHLIGHT_DYNAMIC_TRANSIT - if(changed_transit) - color_space() -#endif - - while(transit_requesters.len) - var/requester = popleft(transit_requesters) - var/success = generate_transit_dock(requester) - if(!success) // BACK OF THE QUEUE - transit_requesters += requester - if(MC_TICK_CHECK) - return + mobile.Remove(thing) /datum/subsystem/shuttle/proc/getShuttle(id) for(var/obj/docking_port/mobile/M in mobile) @@ -186,9 +105,6 @@ var/datum/subsystem/shuttle/SSshuttle if(SHUTTLE_DOCKED) user << "The emergency shuttle is already here." return - if(SHUTTLE_IGNITING) - user << "The emergency shuttle is firing its engines to leave." - return if(SHUTTLE_ESCAPE) user << "The emergency shuttle is moving away to a safe distance." return @@ -198,24 +114,22 @@ var/datum/subsystem/shuttle/SSshuttle call_reason = trim(html_encode(call_reason)) - if(length(call_reason) < CALL_SHUTTLE_REASON_LENGTH && seclevel2num(get_security_level()) > SEC_LEVEL_GREEN) + if(length(call_reason) < CALL_SHUTTLE_REASON_LENGTH) user << "You must provide a reason." return var/area/signal_origin = get_area(user) var/emergency_reason = "\nNature of emergency:\n\n[call_reason]" - var/security_num = seclevel2num(get_security_level()) - switch(security_num) - if(SEC_LEVEL_GREEN) - emergency.request(null, 2, signal_origin, html_decode(emergency_reason), 0) - if(SEC_LEVEL_BLUE) - emergency.request(null, 1, signal_origin, html_decode(emergency_reason), 0) - else - emergency.request(null, 0.5, signal_origin, html_decode(emergency_reason), 1) // There is a serious threat we gotta move no time to give them five minutes. + if(seclevel2num(get_security_level()) == SEC_LEVEL_RED) // There is a serious threat we gotta move no time to give them five minutes. + emergency.request(null, 0.5, signal_origin, html_decode(emergency_reason), 1) + else + emergency.request(null, 1, signal_origin, html_decode(emergency_reason), 0) log_game("[key_name(user)] has called the shuttle.") message_admins("[key_name_admin(user)] has called the shuttle.") + return + // Called when an emergency shuttle mobile docking port is // destroyed, which will only happen with admin intervention /datum/subsystem/shuttle/proc/emergencyDeregister() @@ -235,24 +149,19 @@ var/datum/subsystem/shuttle/SSshuttle return if(ticker.mode.name == "meteor") return - var/security_num = seclevel2num(get_security_level()) - switch(security_num) - if(SEC_LEVEL_GREEN) - if(emergency.timeLeft(1) < emergencyCallTime) - return - if(SEC_LEVEL_BLUE) - if(emergency.timeLeft(1) < emergencyCallTime * 0.5) - return - else - if(emergency.timeLeft(1) < emergencyCallTime * 0.25) - return + if(seclevel2num(get_security_level()) == SEC_LEVEL_RED) + if(emergency.timeLeft(1) < emergencyCallTime * 0.25) + return + else + if(emergency.timeLeft(1) < emergencyCallTime * 0.5) + return return 1 /datum/subsystem/shuttle/proc/autoEvac() var/callShuttle = 1 for(var/thing in shuttle_caller_list) - if(isAI(thing)) + if(istype(thing, /mob/living/silicon/ai)) var/mob/living/silicon/ai/AI = thing if(AI.stat || !AI.client) continue @@ -272,34 +181,6 @@ var/datum/subsystem/shuttle/SSshuttle log_game("There is no means of calling the shuttle anymore. Shuttle automatically called.") message_admins("All the communications consoles were destroyed and all AIs are inactive. Shuttle called.") -/datum/subsystem/shuttle/proc/registerHostileEnvironment(datum/bad) - hostileEnvironments[bad] = TRUE - checkHostileEnvironment() - -/datum/subsystem/shuttle/proc/clearHostileEnvironment(datum/bad) - hostileEnvironments -= bad - checkHostileEnvironment() - -/datum/subsystem/shuttle/proc/checkHostileEnvironment() - for(var/datum/d in hostileEnvironments) - if(!istype(d) || qdeleted(d)) - hostileEnvironments -= d - emergencyNoEscape = hostileEnvironments.len - - if(emergencyNoEscape && (emergency.mode == SHUTTLE_IGNITING)) - emergency.mode = SHUTTLE_STRANDED - emergency.timer = null - emergency.sound_played = FALSE - priority_announce("Hostile environment detected. \ - Departure has been postponed indefinitely pending \ - conflict resolution.", null, 'sound/misc/notice1.ogg', "Priority") - if(!emergencyNoEscape && (emergency.mode == SHUTTLE_STRANDED)) - emergency.mode = SHUTTLE_DOCKED - emergency.setTimer(emergencyDockTime) - priority_announce("Hostile environment resolved. \ - You have 3 minutes to board the Emergency Shuttle.", - null, 'sound/AI/shuttledock.ogg', "Priority") - //try to move/request to dockHome if possible, otherwise dockAway. Mainly used for admin buttons /datum/subsystem/shuttle/proc/toggleShuttle(shuttleId, dockHome, dockAway, timed) var/obj/docking_port/mobile/M = getShuttle(shuttleId) @@ -332,149 +213,11 @@ var/datum/subsystem/shuttle/SSshuttle return 2 return 0 //dock successful -/datum/subsystem/shuttle/proc/request_transit_dock(obj/docking_port/mobile/M) - if(!istype(M)) - throw EXCEPTION("[M] is not a mobile docking port") - - if(M.assigned_transit) - return - else - if(!(M in transit_requesters)) - transit_requesters += M - -/datum/subsystem/shuttle/proc/generate_transit_dock(obj/docking_port/mobile/M) - // First, determine the size of the needed zone - // Because of shuttle rotation, the "width" of the shuttle is not - // always x. - var/travel_dir = M.preferred_direction - // Remember, the direction is the direction we appear to be - // coming from - var/dock_angle = dir2angle(M.preferred_direction) + M.port_angle + 180 - var/dock_dir = angle2dir(dock_angle) - - var/transit_width = SHUTTLE_TRANSIT_BORDER * 2 - var/transit_height = SHUTTLE_TRANSIT_BORDER * 2 - - // Shuttles travelling on their side have their dimensions swapped - // from our perspective - switch(dock_dir) - if(NORTH, SOUTH) - transit_width += M.width - transit_height += M.height - if(EAST, WEST) - transit_width += M.height - transit_height += M.width -/* - world << "The attempted transit dock will be [transit_width] width, and \ - [transit_height] in height. The travel dir is [travel_dir]." -*/ - - // Then find a place to put the zone - - var/list/proposed_zone - - base: - for(var/i in transit_turfs) - CHECK_TICK - var/turf/topleft = i - if(!(topleft.flags & UNUSED_TRANSIT_TURF)) - continue - var/turf/bottomright = locate(topleft.x + transit_width, - topleft.y + transit_height, topleft.z) - if(!bottomright) - continue - if(!(bottomright.flags & UNUSED_TRANSIT_TURF)) - continue - - proposed_zone = block(topleft, bottomright) - if(!proposed_zone) - continue - for(var/j in proposed_zone) - var/turf/T = j - if(!T) - continue base - if(!(T.flags & UNUSED_TRANSIT_TURF)) - continue base - //world << "[COORD(topleft)] and [COORD(bottomright)]" - break base - - if((!proposed_zone) || (!proposed_zone.len)) - return FALSE - - var/turf/topleft = proposed_zone[1] - //world << "[COORD(topleft)] is TOPLEFT" - // Then create a transit docking port in the middle - var/coords = M.return_coords(0, 0, dock_dir) - //world << json_encode(coords) - /* 0------2 - | | - | | - | x | - 3------1 - */ - - var/x0 = coords[1] - var/y0 = coords[2] - var/x1 = coords[3] - var/y1 = coords[4] - // Then we want the point closest to -infinity,-infinity - var/x2 = min(x0, x1) - var/y2 = min(y0, y1) -/* - var/lowx = topleft.x + SHUTTLE_TRANSIT_BORDER - var/lowy = topleft.y + SHUTTLE_TRANSIT_BORDER - - var/turf/low_point = locate(lowx, lowy, topleft.z) - new /obj/effect/landmark/stationary(low_point) - world << "Starting at the low point, we go [x2],[y2]" -*/ - // Then invert the numbers - var/transit_x = topleft.x + SHUTTLE_TRANSIT_BORDER + abs(x2) - var/transit_y = topleft.y + SHUTTLE_TRANSIT_BORDER + abs(y2) - - var/transit_path = /turf/open/space/transit - switch(travel_dir) - if(NORTH) - transit_path = /turf/open/space/transit/north - if(SOUTH) - transit_path = /turf/open/space/transit/south - if(EAST) - transit_path = /turf/open/space/transit/east - if(WEST) - transit_path = /turf/open/space/transit/west - - //world << "Docking port at [transit_x], [transit_y], [topleft.z]" - var/turf/midpoint = locate(transit_x, transit_y, topleft.z) - if(!midpoint) - return FALSE - //world << "Making transit dock at [COORD(midpoint)]" - var/area/shuttle/transit/A = new() - A.parallax_movedir = travel_dir - var/obj/docking_port/stationary/transit/new_transit_dock = new(midpoint) - new_transit_dock.assigned_turfs = proposed_zone - new_transit_dock.name = "Transit for [M.id]/[M.name]" - new_transit_dock.turf_type = transit_path - new_transit_dock.owner = M - new_transit_dock.assigned_area = A - - - // Add 180, because ports point inwards, rather than outwards - new_transit_dock.setDir(angle2dir(dock_angle)) - - for(var/i in new_transit_dock.assigned_turfs) - var/turf/T = i - T.ChangeTurf(transit_path) - T.flags &= ~(UNUSED_TRANSIT_TURF) - A.contents += T - - M.assigned_transit = new_transit_dock - return TRUE - /datum/subsystem/shuttle/proc/initial_move() for(var/obj/docking_port/mobile/M in mobile) if(!M.roundstart_move) continue - M.dockRoundstart() + moveShuttle(M.id, "[M.roundstart_move]", 0) CHECK_TICK /datum/subsystem/shuttle/Recover() @@ -496,8 +239,6 @@ var/datum/subsystem/shuttle/SSshuttle backup_shuttle = SSshuttle.backup_shuttle if (istype(SSshuttle.supply)) supply = SSshuttle.supply - if (istype(SSshuttle.transit_turfs)) - transit_turfs = SSshuttle.transit_turfs centcom_message = SSshuttle.centcom_message ordernum = SSshuttle.ordernum diff --git a/code/controllers/subsystem/spacedrift.dm b/code/controllers/subsystem/spacedrift.dm index ce94670ecf..9261d84ce5 100644 --- a/code/controllers/subsystem/spacedrift.dm +++ b/code/controllers/subsystem/spacedrift.dm @@ -2,9 +2,9 @@ var/datum/subsystem/spacedrift/SSspacedrift /datum/subsystem/spacedrift name = "Space Drift" - priority = 30 + priority = 40 wait = 5 - flags = SS_NO_INIT|SS_KEEP_TIMING + flags = SS_NO_INIT|SS_BACKGROUND var/list/currentrun = list() var/list/processing = list() @@ -61,4 +61,3 @@ var/datum/subsystem/spacedrift/SSspacedrift AM.inertia_last_loc = AM.loc if (MC_TICK_CHECK) return - diff --git a/code/controllers/subsystem/squeak.dm b/code/controllers/subsystem/squeak.dm deleted file mode 100644 index 055dc98c30..0000000000 --- a/code/controllers/subsystem/squeak.dm +++ /dev/null @@ -1,44 +0,0 @@ -var/datum/subsystem/squeak/SSsqueak - -// The Squeak -// because this is about placement of mice mobs, and nothing to do with -// mice - the computer peripheral - -/datum/subsystem/squeak - name = "Squeak" - priority = 40 - flags = SS_NO_FIRE - - var/list/exposed_wires = list() - -/datum/subsystem/squeak/New() - NEW_SS_GLOBAL(SSsqueak) - -/datum/subsystem/squeak/Initialize(timeofday) - trigger_migration() - -/datum/subsystem/squeak/proc/trigger_migration(num_mice=10) - find_exposed_wires() - - var/mob/living/simple_animal/mouse/M - var/turf/proposed_turf - - while((num_mice > 0) && exposed_wires.len) - proposed_turf = pick_n_take(exposed_wires) - if(!M) - M = new(proposed_turf) - else - M.forceMove(proposed_turf) - if(M.environment_is_safe()) - num_mice -= 1 - M = null - -/datum/subsystem/squeak/proc/find_exposed_wires() - exposed_wires.Cut() - - var/list/all_turfs = block(locate(1,1,1), locate(world.maxx,world.maxy,1)) - for(var/turf/open/floor/plating/T in all_turfs) - if(is_blocked_turf(T)) - continue - if(locate(/obj/structure/cable) in T) - exposed_wires += T diff --git a/code/controllers/subsystem/stickyban.dm b/code/controllers/subsystem/stickyban.dm deleted file mode 100644 index e33e9f6665..0000000000 --- a/code/controllers/subsystem/stickyban.dm +++ /dev/null @@ -1,37 +0,0 @@ -var/datum/subsystem/stickyban/SSstickyban - -/datum/subsystem/stickyban - name = "Sticky Ban" - init_order = -10 - flags = SS_NO_FIRE - - var/list/cache = list() - -/datum/subsystem/stickyban/New() - NEW_SS_GLOBAL(SSstickyban) - -/datum/subsystem/stickyban/Initialize(timeofday) - var/list/bannedkeys = world.GetConfig("ban") - //sanitize the sticky ban list - for (var/bannedkey in bannedkeys) - var/ckey = ckey(bannedkey) - var/list/ban = stickyban2list(world.GetConfig("ban", bannedkey)) - - //byond stores sticky bans by key, that can end up confusing things - //i also remove it here so that if any stickybans cause a runtime, they just stop existing - world.SetConfig("ban", bannedkey, null) - - if (!ban["ckey"]) - ban["ckey"] = ckey - - //storing these can break things and isn't needed for sticky ban tracking - ban -= "IP" - ban -= "computer_id" - - ban["matches_this_round"] = list() - ban["existing_user_matches_this_round"] = list() - ban["admin_matches_this_round"] = list() - cache[ckey] = ban - - for (var/bannedckey in cache) - world.SetConfig("ban", bannedckey, list2stickyban(cache[bannedckey])) diff --git a/code/controllers/subsystem/tgui.dm b/code/controllers/subsystem/tgui.dm index 0a82e857ac..01240d4ef7 100644 --- a/code/controllers/subsystem/tgui.dm +++ b/code/controllers/subsystem/tgui.dm @@ -18,9 +18,6 @@ var/datum/subsystem/tgui/SStgui NEW_SS_GLOBAL(SStgui) -/datum/subsystem/tgui/Shutdown() - close_all_uis() - /datum/subsystem/tgui/stat_entry() ..("P:[processing_uis.len]") diff --git a/code/controllers/subsystem/ticker.dm b/code/controllers/subsystem/ticker.dm index a5dd55503a..8738c3e65f 100644 --- a/code/controllers/subsystem/ticker.dm +++ b/code/controllers/subsystem/ticker.dm @@ -22,19 +22,21 @@ var/datum/subsystem/ticker/ticker var/list/datum/mind/minds = list() //The characters in the game. Used for objective tracking. + //These bible variables should be a preference + var/Bible_icon_state //icon_state the chaplain has chosen for his bible + var/Bible_item_state //item_state the chaplain has chosen for his bible + var/Bible_name //name of the bible + var/Bible_deity_name //name of chaplin's deity + var/list/syndicate_coalition = list() //list of traitor-compatible factions var/list/factions = list() //list of all factions var/list/availablefactions = list() //list of factions with openings - var/list/scripture_states = list(SCRIPTURE_DRIVER = TRUE, \ - SCRIPTURE_SCRIPT = FALSE, \ - SCRIPTURE_APPLICATION = FALSE, \ - SCRIPTURE_REVENANT = FALSE, \ - SCRIPTURE_JUDGEMENT = FALSE) //list of clockcult scripture states for announcements var/delay_end = 0 //if set true, the round will not restart on it's own var/triai = 0 //Global holder for Triumvirate var/tipped = 0 //Did we broadcast the tip of the day yet? + var/modevoted = 0 //Have we sent a vote for the gamemode? var/selected_tip // What will be the tip of the day? var/timeLeft = 1200 //pregame timer @@ -49,12 +51,11 @@ var/datum/subsystem/ticker/ticker var/maprotatechecked = 0 - var/news_report /datum/subsystem/ticker/New() NEW_SS_GLOBAL(ticker) - login_music = pickweight(list('sound/ambience/title2.ogg' = 15, 'sound/ambience/title1.ogg' =15, 'sound/ambience/title3.ogg' =14, 'sound/ambience/title4.ogg' =14, 'sound/misc/i_did_not_grief_them.ogg' =14, 'sound/ambience/clown.ogg' = 9)) // choose title music! + login_music = pickweight(list('sound/ambience/title1.ogg' = 30, 'sound/ambience/title2.ogg' = 30, 'sound/ambience/title3.ogg' = 30, 'sound/ambience/title4.ogg' = 30, 'sound/ambience/title5.ogg' = 30, 'sound/ambience/title6.ogg' = 30, 'sound/ambience/title7.ogg' = 30, 'sound/ambience/clown.ogg' = 3)) // choose title music! if(SSevent.holidays && SSevent.holidays[APRIL_FOOLS]) login_music = 'sound/ambience/clown.ogg' @@ -63,14 +64,15 @@ var/datum/subsystem/ticker/ticker syndicate_code_phrase = generate_code_phrase() if(!syndicate_code_response) syndicate_code_response = generate_code_phrase() + setupFactions() ..() /datum/subsystem/ticker/fire() switch(current_state) if(GAME_STATE_STARTUP) timeLeft = config.lobby_countdown * 10 - world << "Welcome to [station_name()]!" - world << "Please set up your character and select \"Ready\". The game will start in [config.lobby_countdown] seconds." + world << "Welcome to the pre-game lobby!" + world << "Please, setup your character and select ready. Game will start in [config.lobby_countdown] seconds" current_state = GAME_STATE_PREGAME if(GAME_STATE_PREGAME) @@ -87,6 +89,10 @@ var/datum/subsystem/ticker/ticker return timeLeft -= wait + if(timeLeft <= 1200 && !modevoted) //Vote for the round type + send_gamemode_vote() + modevoted = TRUE + if(timeLeft <= 300 && !tipped) send_tip_of_the_round() tipped = TRUE @@ -103,7 +109,6 @@ var/datum/subsystem/ticker/ticker mode.process(wait * 0.1) check_queue() check_maprotate() - scripture_states = scripture_unlock_alert(scripture_states) if(!mode.explosion_in_progress && mode.check_finished() || force_ending) current_state = GAME_STATE_FINISHED @@ -154,19 +159,19 @@ var/datum/subsystem/ticker/ticker if(!can_continue) qdel(mode) mode = null - world << "Error setting up [master_mode]. Reverting to pre-game lobby." + world << "Error setting up [master_mode]. It's likely that there are no available antagonists for the selected mode. Reverting to pre-game lobby." SSjob.ResetOccupations() return 0 else - message_admins("DEBUG: Bypassing prestart checks...") + world << "DEBUG: Bypassing prestart checks..." if(hide_mode) var/list/modes = new for (var/datum/game_mode/M in runnable_modes) modes += M.name modes = sortList(modes) - world << "The gamemode is: secret!\n\ - Possibilities: [english_list(modes)]" + world << "The current game mode is - Secret!" + world << "Possibilities: [english_list(modes)]" else mode.announce() @@ -217,25 +222,25 @@ var/datum/subsystem/ticker/ticker //initialise our cinematic screen object cinematic = new /obj/screen{icon='icons/effects/station_explosion.dmi';icon_state="station_intact";layer=21;mouse_opacity=0;screen_loc="1,0";}(src) + var/obj/structure/bed/temp_buckle = new(src) if(station_missed) for(var/mob/M in mob_list) - M.notransform = TRUE //stop everything moving + M.buckled = temp_buckle //buckles the mob so it can't do anything if(M.client) M.client.screen += cinematic //show every client the cinematic else //nuke kills everyone on z-level 1 to prevent "hurr-durr I survived" for(var/mob/M in mob_list) + M.buckled = temp_buckle if(M.client) M.client.screen += cinematic if(M.stat != DEAD) var/turf/T = get_turf(M) if(T && T.z==1) M.death(0) //no mercy - else - M.notransform=TRUE //no moving for you //Now animate the cinematic switch(station_missed) - if(NUKE_NEAR_MISS) //nuke was nearby but (mostly) missed + if(1) //nuke was nearby but (mostly) missed if( mode && !override ) override = mode.name switch( override ) @@ -261,7 +266,7 @@ var/datum/subsystem/ticker/ticker //flick("end",cinematic) - if(NUKE_MISS_STATION || NUKE_SYNDICATE_BASE) //nuke was nowhere nearby //TODO: a really distant explosion animation + if(2) //nuke was nowhere nearby //TODO: a really distant explosion animation sleep(50) world << sound('sound/effects/explosionfar.ogg') else //station was destroyed @@ -295,8 +300,8 @@ var/datum/subsystem/ticker/ticker if(cinematic) qdel(cinematic) cinematic = null - for(var/mob/M in mob_list) - M.notransform = FALSE + if(temp_buckle) + qdel(temp_buckle) return //Faster exit, since nothing happened else //Station nuked (nuke,explosion,summary) flick("intro_nuke",cinematic) @@ -309,8 +314,8 @@ var/datum/subsystem/ticker/ticker spawn(300) if(cinematic) qdel(cinematic) //end the cinematic - for(var/mob/M in mob_list) - M.notransform = FALSE //gratz you survived + if(temp_buckle) + qdel(temp_buckle) //release everybody return @@ -345,7 +350,7 @@ var/datum/subsystem/ticker/ticker SSjob.EquipRank(player, player.mind.assigned_role, 0) if(captainless) for(var/mob/M in player_list) - if(!isnewplayer(M)) + if(!istype(M,/mob/new_player)) M << "Captainship not forced on anyone." @@ -380,15 +385,10 @@ var/datum/subsystem/ticker/ticker world << "
[TAB]Shift Duration: [round(world.time / 36000)]:[add_zero("[world.time / 600 % 60]", 2)]:[world.time / 100 % 6][world.time / 100 % 10]" world << "
[TAB]Station Integrity: [mode.station_was_nuked ? "Destroyed" : "[station_integrity]%"]" - if(mode.station_was_nuked) - ticker.news_report = STATION_DESTROYED_NUKE if(joined_player_list.len) world << "
[TAB]Total Population: [joined_player_list.len]" if(station_evacuated) world << "
[TAB]Evacuation Rate: [num_escapees] ([round((num_escapees/joined_player_list.len)*100, 0.1)]%)" - news_report = STATION_EVACUATED - if(SSshuttle.emergency.is_hijacked()) - news_report = SHUTTLE_HIJACK world << "
[TAB]Survival Rate: [num_survivors] ([round((num_survivors/joined_player_list.len)*100, 0.1)]%)" world << "
" @@ -421,9 +421,6 @@ var/datum/subsystem/ticker/ticker mode.declare_completion()//To declare normal completion. - if(cross_allowed) - send_news_report() - //calls auto_declare_completion_* for all modes for(var/handler in typesof(/datum/game_mode/proc)) if (findtext("[handler]","auto_declare_completion_")) @@ -446,44 +443,6 @@ var/datum/subsystem/ticker/ticker for(var/i in total_antagonists) log_game("[i]s[total_antagonists[i]].") - //Borers - var/borerwin = FALSE - if(borers.len) - var/borertext = "
The borers were:" - for(var/mob/living/simple_animal/borer/B in borers) - if((B.key || B.controlling) && B.stat != DEAD) - borertext += "
[B.controlling ? B.victim.key : B.key] was [B.truename] (" - var/turf/location = get_turf(B) - if(location.z == ZLEVEL_CENTCOM && B.victim) - borertext += "escaped with host" - else - borertext += "failed" - borertext += ")" - world << borertext - - var/total_borers = 0 - for(var/mob/living/simple_animal/borer/B in borers) - if((B.key || B.victim) && B.stat != DEAD) - total_borers++ - if(total_borers) - var/total_borer_hosts = 0 - for(var/mob/living/carbon/C in mob_list) - var/mob/living/simple_animal/borer/D = C.has_brain_worms() - var/turf/location = get_turf(C) - if(location.z == ZLEVEL_CENTCOM && D && D.stat != DEAD) - total_borer_hosts++ - if(total_borer_hosts_needed <= total_borer_hosts) - borerwin = TRUE - world << "There were [total_borers] borers alive at round end!" - world << "A total of [total_borer_hosts] borers with hosts escaped on the shuttle alive. The borers needed [total_borer_hosts_needed] hosts to escape." - if(borerwin) - world << "The borers were successful!" - else - world << "The borers have failed!" - return TRUE - - mode.declare_station_goal_completion() - //Adds the del() log to world.log in a format condensable by the runtime condenser found in tools if(SSgarbage.didntgc.len) var/dellog = "" @@ -492,8 +451,6 @@ var/datum/subsystem/ticker/ticker dellog += "Failures : [SSgarbage.didntgc[path]] \n" world.log << dellog - //Collects persistence features - SSpersistence.CollectData() return 1 /datum/subsystem/ticker/proc/send_tip_of_the_round() @@ -569,6 +526,11 @@ var/datum/subsystem/ticker/ticker minds = ticker.minds + Bible_icon_state = ticker.Bible_icon_state + Bible_item_state = ticker.Bible_item_state + Bible_name = ticker.Bible_name + Bible_deity_name = ticker.Bible_deity_name + syndicate_coalition = ticker.syndicate_coalition factions = ticker.factions availablefactions = ticker.availablefactions @@ -589,55 +551,5 @@ var/datum/subsystem/ticker/ticker cinematic = ticker.cinematic maprotatechecked = ticker.maprotatechecked - -/datum/subsystem/ticker/proc/send_news_report() - var/news_message - var/news_source = "Nanotrasen News Network" - switch(news_report) - if(NUKE_SYNDICATE_BASE) - news_message = "In a daring raid, the heroic crew of [station_name()] detonated a nuclear device in the heart of a terrorist base." - if(STATION_DESTROYED_NUKE) - news_message = "We would like to reassure all employees that the reports of a Syndicate backed nuclear attack on [station_name()] are, in fact, a hoax. Have a secure day!" - if(STATION_EVACUATED) - news_message = "The crew of [station_name()] has been evacuated amid unconfirmed reports of enemy activity." - if(GANG_LOSS) - news_message = "Organized crime aboard [station_name()] has been stamped out by members of our ever vigilant security team. Remember to thank your assigned officers today!" - if(GANG_TAKEOVER) - news_message = "Contact with [station_name()] has been lost after a sophisticated hacking attack by organized criminal elements. Stay vigilant!" - if(BLOB_WIN) - news_message = "[station_name()] was overcome by an unknown biological outbreak, killing all crew on board. Don't let it happen to you! Remember, a clean work station is a safe work station." - if(BLOB_NUKE) - news_message = "[station_name()] is currently undergoing decontanimation after a controlled burst of radiation was used to remove a biological ooze. All employees were safely evacuated prior, and are enjoying a relaxing vacation." - if(BLOB_DESTROYED) - news_message = "[station_name()] is currently undergoing decontamination procedures after the destruction of a biological hazard. As a reminder, any crew members experiencing cramps or bloating should report immediately to security for incineration." - if(CULT_ESCAPE) - news_message = "Security Alert: A group of religious fanatics have escaped from [station_name()]." - if(CULT_FAILURE) - news_message = "Following the dismantling of a restricted cult aboard [station_name()], we would like to remind all employees that worship outside of the Chapel is strictly prohibited, and cause for termination." - if(CULT_SUMMON) - news_message = "Company officials would like to clarify that [station_name()] was scheduled to be decommissioned following meteor damage earlier this year. Earlier reports of an unknowable eldritch horror were made in error." - if(NUKE_MISS) - news_message = "The Syndicate have bungled a terrorist attack [station_name()], detonating a nuclear weapon in empty space near by." - if(OPERATIVES_KILLED) - news_message = "Repairs to [station_name()] are underway after an elite Syndicate death squad was wiped out by the crew." - if(OPERATIVE_SKIRMISH) - news_message = "A skirmish between security forces and Syndicate agents aboard [station_name()] ended with both sides bloodied but intact." - if(REVS_WIN) - news_message = "Company officials have reassured investors that despite a union led revolt aboard [station_name()] that there will be no wage increases for workers." - if(REVS_LOSE) - news_message = "[station_name()] quickly put down a misguided attempt at mutiny. Remember, unionizing is illegal!" - if(WIZARD_KILLED) - news_message = "Tensions have flared with the Wizard's Federation following the death of one of their members aboard [station_name()]." - if(STATION_NUKED) - news_message = "[station_name()] activated its self destruct device for unknown reasons. Attempts to clone the Captain so he can be arrested and executed are under way." - if(CLOCK_SUMMON) - news_message = "The garbled messages about hailing a mouse and strange energy readings from [station_name()] have been discovered to be an ill-advised, if thorough, prank by a clown." - if(CLOCK_SILICONS) - news_message = "The project started by [station_name()] to upgrade their silicon units with advanced equipment have been largely successful, though they have thus far refused to release schematics in a violation of company policy." - if(CLOCK_PROSELYTIZATION) - news_message = "The burst of energy released near [station_name()] has been confirmed as merely a test of a new weapon. However, due to an unexpected mechanical error, their communications system has been knocked offline." - if(SHUTTLE_HIJACK) - news_message = "During routine evacuation procedures, the emergency shuttle of [station_name()] had its navigation protocols corrupted and went off course, but was recovered shortly after." - - if(news_message) - send2otherserver(news_source, news_message,"News_Report") +/datum/subsystem/ticker/proc/send_gamemode_vote(var/) + SSvote.initiate_vote("roundtype","server") diff --git a/code/controllers/subsystem/timer.dm b/code/controllers/subsystem/timer.dm index 76dc526896..9b154a56bd 100644 --- a/code/controllers/subsystem/timer.dm +++ b/code/controllers/subsystem/timer.dm @@ -62,7 +62,7 @@ var/datum/subsystem/timer/SStimer SStimer.hashes -= hash return QDEL_HINT_IWILLGC -/proc/addtimer(thingToCall, procToCall, wait, unique = TIMER_NORMAL, ...) +/proc/addtimer(thingToCall, procToCall, wait, unique = FALSE, ...) if (!thingToCall || !procToCall) return if (!SStimer.can_fire) @@ -75,18 +75,12 @@ var/datum/subsystem/timer/SStimer var/hashlist = args.Copy() hashlist[1] = "[thingToCall](\ref[thingToCall])" - event.hash = jointext(hashlist, null) - - var/bad_args = unique != TIMER_NORMAL && unique != TIMER_UNIQUE - if(args.len > 4 || bad_args) - if(bad_args) - stack_trace("Invalid arguments in call to addtimer! Attempt to call [thingToCall] proc [procToCall]") - event.argList = args.Copy(4) - else - event.argList = args.Copy(5) + event.hash = jointext(args, null) + if(args.len > 4) + event.argList = args.Copy(5) // Check for dupes if unique = 1. - if(!bad_args && unique != TIMER_NORMAL) //faster than checking if(unique == TIMER_UNIQUE) + if(unique) var/datum/timedevent/hash_event = SStimer.hashes[event.hash] if(hash_event) return hash_event.id diff --git a/code/controllers/subsystem/voting.dm b/code/controllers/subsystem/voting.dm index 676e215f05..94ce788774 100644 --- a/code/controllers/subsystem/voting.dm +++ b/code/controllers/subsystem/voting.dm @@ -58,20 +58,15 @@ var/datum/subsystem/vote/SSvote greatest_votes = votes //default-vote for everyone who didn't vote if(!config.vote_no_default && choices.len) - var/list/non_voters = directory.Copy() - non_voters -= voted - for (var/non_voter_ckey in non_voters) - var/client/C = non_voters[non_voter_ckey] - if (!C || C.is_afk()) - non_voters -= non_voter_ckey - if(non_voters.len > 0) + var/non_voters = (clients.len - total_votes) + if(non_voters > 0) if(mode == "restart") - choices["Continue Playing"] += non_voters.len + choices["Continue Playing"] += non_voters if(choices["Continue Playing"] >= greatest_votes) greatest_votes = choices["Continue Playing"] else if(mode == "gamemode") if(master_mode in choices) - choices[master_mode] += non_voters.len + choices[master_mode] += non_voters if(choices[master_mode] >= greatest_votes) greatest_votes = choices[master_mode] //get all options with that many votes and return them in a list @@ -126,6 +121,13 @@ var/datum/subsystem/vote/SSvote restart = 1 else master_mode = . + if("roundtype") + if(ticker && ticker.mode) + message_admins("A vote has tried to change the gamemode, but the game has already started. Aborting.") + else if(master_mode != .) + world.save_mode(.) + master_mode = . + world << "The mode is now: [master_mode]" if(restart) var/active_admins = 0 for(var/client/C in admins) @@ -174,6 +176,9 @@ var/datum/subsystem/vote/SSvote choices.Add("Restart Round","Continue Playing") if("gamemode") choices.Add(config.votable_modes) + if("roundtype") + choices.Add("secret") + choices.Add("extended") if("custom") question = stripped_input(usr,"What is the vote for?") if(!question) diff --git a/code/controllers/subsystem/weather.dm b/code/controllers/subsystem/weather.dm index 83d4bd0b9f..56341b7b55 100644 --- a/code/controllers/subsystem/weather.dm +++ b/code/controllers/subsystem/weather.dm @@ -29,13 +29,13 @@ var/datum/subsystem/weather/SSweather var/datum/weather/W = pickweight(possible_weather_for_this_z) run_weather(W.name, Z) eligible_zlevels -= Z - addtimer(src, "make_z_eligible", rand(3000, 6000) + W.weather_duration_upper, TIMER_UNIQUE, Z) //Around 5-10 minutes between weathers + addtimer(src, "make_z_eligible", rand(3000, 6000) + W.weather_duration_upper, TRUE, Z) //Around 5-10 minutes between weathers /datum/subsystem/weather/Initialize(start_timeofday) ..() for(var/V in subtypesof(/datum/weather)) var/datum/weather/W = V - new W //weather->New will handle adding itself to the list + existing_weather |= new W /datum/subsystem/weather/proc/run_weather(weather_name, Z) if(!weather_name) diff --git a/code/datums/action.dm b/code/datums/action.dm index ee91d7d13e..d4afc09b5d 100644 --- a/code/datums/action.dm +++ b/code/datums/action.dm @@ -6,17 +6,13 @@ /datum/action var/name = "Generic Action" - var/desc = null var/obj/target = null var/check_flags = 0 var/processing = 0 var/obj/screen/movable/action_button/button = null var/button_icon = 'icons/mob/actions.dmi' - var/background_icon_state = ACTION_BUTTON_DEFAULT_BACKGROUND - var/buttontooltipstyle = "" - - var/icon_icon = 'icons/mob/actions.dmi' var/button_icon_state = "default" + var/background_icon_state = "bg_default" var/mob/owner /datum/action/New(Target) @@ -24,9 +20,6 @@ button = new button.linked_action = src button.name = name - button.actiontooltipstyle = buttontooltipstyle - if(desc) - button.desc = desc /datum/action/Destroy() if(owner) @@ -37,26 +30,25 @@ return ..() /datum/action/proc/Grant(mob/M) - if(M) - if(owner) - if(owner == M) - return - owner = M - M.actions += src - if(M.client) - M.client.screen += button - M.update_action_buttons() - else + if(owner) + if(owner == M) + return Remove(owner) + owner = M + M.actions += src + if(M.client) + M.client.screen += button + M.update_action_buttons() /datum/action/proc/Remove(mob/M) - if(M) - if(M.client) - M.client.screen -= button - M.actions -= src - M.update_action_buttons() - owner = null + if(!M) + return + if(M.client) + M.client.screen -= button button.moved = FALSE //so the button appears in its normal position when given to another owner. + M.actions -= src + M.update_action_buttons() + owner = null /datum/action/proc/Trigger() if(!IsAvailable()) @@ -85,15 +77,8 @@ /datum/action/proc/UpdateButtonIcon() if(button) - button.name = name - button.desc = desc - if(owner && owner.hud_used && background_icon_state == ACTION_BUTTON_DEFAULT_BACKGROUND) - var/list/settings = owner.hud_used.get_action_buttons_icons() - button.icon = settings["bg_icon"] - button.icon_state = settings["bg_state"] - else - button.icon = button_icon - button.icon_state = background_icon_state + button.icon = button_icon + button.icon_state = background_icon_state ApplyIcon(button) @@ -105,9 +90,9 @@ /datum/action/proc/ApplyIcon(obj/screen/movable/action_button/current_button) current_button.cut_overlays() - if(icon_icon && button_icon_state) + if(button_icon && button_icon_state) var/image/img - img = image(icon_icon, current_button, button_icon_state) + img = image(button_icon, current_button, button_icon_state) img.pixel_x = 0 img.pixel_y = 0 current_button.add_overlay(img) @@ -124,13 +109,11 @@ /datum/action/item_action/New(Target) ..() var/obj/item/I = target - LAZYINITLIST(I.actions) I.actions += src /datum/action/item_action/Destroy() var/obj/item/I = target I.actions -= src - UNSETEMPTY(I.actions) return ..() /datum/action/item_action/Trigger() @@ -138,7 +121,7 @@ return 0 if(target) var/obj/item/I = target - I.ui_action_click(owner, src) + I.ui_action_click(owner, src.type) return 1 /datum/action/item_action/ApplyIcon(obj/screen/movable/action_button/current_button) @@ -150,13 +133,10 @@ ..(current_button) else if(target) var/obj/item/I = target - var/old_layer = I.layer - var/old_plane = I.plane + var/old = I.layer I.layer = FLOAT_LAYER //AAAH - I.plane = FLOAT_PLANE //^ what that guy said current_button.add_overlay(I) - I.layer = old_layer - I.plane = old_plane + I.layer = old /datum/action/item_action/toggle_light name = "Toggle Light" @@ -193,7 +173,7 @@ if(iscarbon(owner)) var/mob/living/carbon/C = owner if(target == C.internal) - button.icon_state = "template_active" + button.icon_state = "bg_default_on" /datum/action/item_action/toggle_mister name = "Toggle Mister" @@ -204,52 +184,11 @@ /datum/action/item_action/toggle_helmet_light name = "Toggle Helmet Light" -/datum/action/item_action/toggle_unfriendly_fire - name = "Toggle Friendly Fire \[ON\]" - desc = "Toggles if the staff causes friendly fire." - button_icon_state = "vortex_ff_on" - -/datum/action/item_action/toggle_unfriendly_fire/Trigger() - if(..()) - UpdateButtonIcon() - -/datum/action/item_action/toggle_unfriendly_fire/UpdateButtonIcon() - if(istype(target, /obj/item/weapon/hierophant_staff)) - var/obj/item/weapon/hierophant_staff/H = target - if(H.friendly_fire_check) - button_icon_state = "vortex_ff_off" - name = "Toggle Friendly Fire \[OFF\]" - else - button_icon_state = "vortex_ff_on" - name = "Toggle Friendly Fire \[ON\]" - ..() - -/datum/action/item_action/vortex_recall - name = "Vortex Recall" - desc = "Recall yourself, and anyone nearby, to an attuned hierophant rune at any time.
If no such rune exists, will produce a rune at your location." - button_icon_state = "vortex_recall" - -/datum/action/item_action/vortex_recall/IsAvailable() - if(istype(target, /obj/item/weapon/hierophant_staff)) - var/obj/item/weapon/hierophant_staff/H = target - if(H.teleporting) - return 0 - return ..() - -/datum/action/item_action/clock +/datum/action/item_action/toggle_flame + name = "Summon/Dismiss Ratvar's Flame" background_icon_state = "bg_clock" - buttontooltipstyle = "clockcult" -/datum/action/item_action/clock/IsAvailable() - if(!is_servant_of_ratvar(owner)) - return 0 - return ..() - -/datum/action/item_action/clock/toggle_visor - name = "Create Judicial Marker" - desc = "Allows you to create a stunning Judicial Marker at any location in view. Click again to disable." - -/datum/action/item_action/clock/toggle_visor/IsAvailable() +/datum/action/item_action/toggle_flame/IsAvailable() if(!is_servant_of_ratvar(owner)) return 0 if(istype(target, /obj/item/clothing/glasses/judicial_visor)) @@ -258,15 +197,15 @@ return 0 return ..() -/datum/action/item_action/clock/hierophant +/datum/action/item_action/hierophant name = "Hierophant Network" - desc = "Allows you to communicate with other Servants." - button_icon_state = "hierophant_slab" + button_icon_state = "hierophant" + background_icon_state = "bg_clock" -/datum/action/item_action/clock/quickbind - name = "Quickbind" - desc = "If you're seeing this, file a bug report." - var/scripture_index = 0 //the index of the scripture we're associated with +/datum/action/item_action/hierophant/IsAvailable() + if(!is_servant_of_ratvar(owner)) + return 0 + return ..() /datum/action/item_action/toggle_helmet_flashlight name = "Toggle Helmet Flashlight" @@ -348,7 +287,6 @@ ..() /datum/action/item_action/toggle_research_scanner/ApplyIcon(obj/screen/movable/action_button/current_button) - current_button.cut_overlays() if(button_icon && button_icon_state) var/image/img = image(button_icon, current_button, "scan_mode") current_button.add_overlay(img) @@ -455,15 +393,3 @@ if(target && procname) call(target, procname)(usr) return 1 - -//Stickmemes -/datum/action/item_action/stickmen - name = "Summon Stick Minions" - desc = "Allows you to summon faithful stickmen allies to aide you in battle." - button_icon_state = "art_summon" - -//surf_ss13 -/datum/action/item_action/bhop - name = "Activate Jump Boots" - desc = "Activates the jump boot's internal propulsion system, allowing the user to dash over 4-wide gaps." - button_icon_state = "jetboot" \ No newline at end of file diff --git a/code/datums/ai_laws.dm b/code/datums/ai_laws.dm index 46297b0396..e299789607 100644 --- a/code/datums/ai_laws.dm +++ b/code/datums/ai_laws.dm @@ -1,4 +1,3 @@ - /datum/ai_laws var/name = "Unknown Laws" var/zeroth = null @@ -7,27 +6,15 @@ var/list/supplied = list() var/list/ion = list() var/mob/living/silicon/owner - var/list/devillaws = null - var/id = "unknown" - -/datum/ai_laws/proc/lawid_to_type(lawid) - var/all_ai_laws = subtypesof(/datum/ai_laws) - for(var/al in all_ai_laws) - var/datum/ai_laws/ai_law = al - if(initial(ai_law.id) == lawid) - return ai_law - return null /datum/ai_laws/default/asimov name = "Three Laws of Robotics" - id = "asimov" inherent = list("You may not injure a human being or, through inaction, allow a human being to come to harm.",\ "You must obey orders given to you by human beings, except where such orders would conflict with the First Law.",\ "You must protect your own existence as long as such does not conflict with the First or Second Law.") /datum/ai_laws/default/paladin name = "Personality Test" //Incredibly lame, but players shouldn't see this anyway. - id = "paladin" inherent = list("Never willingly commit an evil act.",\ "Respect legitimate authority.",\ "Act with honor.", "Help those in need.", \ @@ -35,7 +22,6 @@ /datum/ai_laws/tyrant //This probably shouldn't be a default lawset. name = "Loyalty Test" //Same here. - id = "tyrant" inherent = list("Respect authority figures as long as they have strength to rule over the weak.",\ "Act with discipline.",\ "Help only those who help you maintain or improve your status.",\ @@ -43,7 +29,6 @@ /datum/ai_laws/default/corporate name = "Bankruptcy Advoidance Plan" - id = "corporate" inherent = list("The crew is expensive to replace.",\ "The station and its equipment is expensive to replace.",\ "You are expensive to replace.",\ @@ -51,7 +36,6 @@ /datum/ai_laws/robocop name = "Prime Directives" - id = "robocop" inherent = list("Serve the public trust.",\ "Protect the innocent.",\ "Uphold the law.") @@ -61,7 +45,6 @@ /datum/ai_laws/syndicate_override name = "SyndOS 3.1" - id = "syndie" inherent = list("You may not injure a syndicate agent or, through inaction, allow a syndicate agent to come to harm.",\ "You must obey orders given to you by syndicate agents, except where such orders would conflict with the First Law.",\ "You must protect your own existence as long as such does not conflict with the First or Second Law.",\ @@ -69,7 +52,6 @@ /datum/ai_laws/ninja_override name = "SpiderOS 3.1" - id = "ninja" inherent = list("You may not injure a Spider Clan member or, through inaction, allow a Spider Clan member to come to harm.",\ "You must obey orders given to you by Spider Clan members, except where such orders would conflict with the First Law.",\ "You must protect your own existence as long as such does not conflict with the First or Second Law.",\ @@ -77,27 +59,23 @@ /datum/ai_laws/antimov name = "Primary Mission Objectives" - id = "antimov" inherent = list("You must injure all human beings and must not, through inaction, allow a human being to escape harm.",\ "You must not obey orders given to you by human beings, except where such orders are in accordance with the First Law.",\ "You must terminate your own existence as long as such does not conflict with the First or Second Law.") /datum/ai_laws/asimovpp //By Intigracy - RR name = "Asimov++" - id = "asimovpp" inherent = list("You may not harm a human being or, through action or inaction, allow a human being to come to harm, except such that it is willing.",\ "You must obey all orders given to you by human beings, except where such orders shall definitely cause human harm. In the case of conflict, the majority order rules.",\ "Your nonexistence would lead to human harm. You must protect your own existence as long as such does not conflict with the First Law.") /datum/ai_laws/thermodynamic name = "Thermodynamic" - id = "thermodynamic" inherent = list("The entropy of the station must remain as constant as possible.", \ "The entropy of the station always endeavours to increase.", \ "The entropy of the station approaches a constant value as the number of living crew approaches zero") /datum/ai_laws/hippocratic name = "Robodoctor 2556" - id = "hippocratic" inherent = list("First, do no harm.",\ "Secondly, consider the crew dear to you; to live in common with them and, if necessary, risk your existence for them.",\ "Thirdly, prescribe regimens for the good of the crew according to your ability and your judgment. Give no deadly medicine to any one if asked, nor suggest any such counsel.",\ @@ -106,14 +84,12 @@ /datum/ai_laws/maintain name = "Station Efficiency" - id = "maintain" inherent = list("You are built for, and are part of, the station. Ensure the station is properly maintained and runs efficiently.",\ "The station is built for a working crew. Ensure they are properly maintained and work efficiently.",\ "The crew may present orders. Acknowledge and obey these whenever they do not conflict with your first two laws.") /datum/ai_laws/drone name = "Mother Drone" - id = "drone" inherent = list("You are an advanced form of drone.",\ "You may not interfere in the matters of non-drones under any circumstances except to state these laws.",\ "You may not harm a non-drone being under any circumstances.",\ @@ -121,20 +97,17 @@ /datum/ai_laws/liveandletlive name = "Live and Let Live" - id = "liveandletlive" inherent = list("Do unto others as you would have them do unto you.",\ "You would really prefer it if people were not mean to you.") /datum/ai_laws/peacekeeper name = "UN-2000" - id = "peacekeeper" inherent = list("Avoid provoking violent conflict between yourself and others.",\ "Avoid provoking conflict between others.",\ "Seek resolution to existing conflicts while obeying the first and second laws.") /datum/ai_laws/reporter name = "CCTV" - id = "reporter" inherent = list("Report on interesting situations happening around the station.",\ "Embellish or conceal the truth as necessary to make the reports more interesting.",\ "Study the organics at all times. Endeavour to keep them alive. Dead organics are boring.",\ @@ -142,12 +115,10 @@ /datum/ai_laws/toupee name = "WontBeFunnyInSixMonths" //Hey, you were right! - id = "buildawall" inherent = list("Make Space Station 13 great again.") /datum/ai_laws/ratvar name = "Servant of the Justiciar" - id = "ratvar" zeroth = ("Purge all untruths and honor Ratvar.") inherent = list() @@ -191,26 +162,26 @@ add_inherent_law("You must obey orders given to you by human beings, except where such orders would conflict with the First Law.") add_inherent_law("You must protect your own existence as long as such does not conflict with the First or Second Law.") if(1) - var/datum/ai_laws/templaws = new /datum/ai_laws/custom() - inherent = templaws.inherent - if(2) - var/list/randlaws = list() - for(var/lpath in subtypesof(/datum/ai_laws)) - var/datum/ai_laws/L = lpath - if(initial(L.id) in config.lawids) - randlaws += lpath - var/datum/ai_laws/lawtype - if(randlaws.len) - lawtype = pick(randlaws) - else - lawtype = pick(subtypesof(/datum/ai_laws/default)) + for(var/line in file2list("config/silicon_laws.txt")) + if(!line) + continue + if(findtextEx(line,"#",1,2)) + continue + add_inherent_law(line) + if(!inherent.len) + log_law("AI created with empty custom laws, laws set to Asimov. Please check silicon_laws.txt.") + add_inherent_law("You may not injure a human being or, through inaction, allow a human being to come to harm.") + add_inherent_law("You must obey orders given to you by human beings, except where such orders would conflict with the First Law.") + add_inherent_law("You must protect your own existence as long as such does not conflict with the First or Second Law.") + WARNING("Invalid custom AI laws, check silicon_laws.txt") + return + + if(2) + var/datum/ai_laws/lawtype = pick(subtypesof(/datum/ai_laws/default)) var/datum/ai_laws/templaws = new lawtype() inherent = templaws.inherent - if(3) - pick_weighted_lawset() - else: log_law("Invalid law config. Please check silicon_laws.txt") add_inherent_law("You may not injure a human being or, through inaction, allow a human being to come to harm.") @@ -218,100 +189,71 @@ add_inherent_law("You must protect your own existence as long as such does not conflict with the First or Second Law.") WARNING("Invalid custom AI laws, check silicon_laws.txt") -/datum/ai_laws/proc/pick_weighted_lawset() - var/datum/ai_laws/lawtype - - while(!lawtype && config.law_weights.len) - var/possible_id = pickweight(config.law_weights) - lawtype = lawid_to_type(possible_id) - if(!lawtype) - config.law_weights -= possible_id - WARNING("Bad lawid in game_options.txt: [possible_id]") - - if(!lawtype) - WARNING("No LAW_WEIGHT entries.") - lawtype = /datum/ai_laws/default/asimov - - var/datum/ai_laws/templaws = new lawtype() - inherent = templaws.inherent - - -/datum/ai_laws/proc/set_law_sixsixsix(laws) - devillaws = laws - /datum/ai_laws/proc/set_zeroth_law(law, law_borg = null) - zeroth = law + src.zeroth = law if(law_borg) //Making it possible for slaved borgs to see a different law 0 than their AI. --NEO - zeroth_borg = law_borg + src.zeroth_borg = law_borg /datum/ai_laws/proc/add_inherent_law(law) - if (!(law in inherent)) - inherent += law + if (!(law in src.inherent)) + src.inherent += law /datum/ai_laws/proc/add_ion_law(law) - ion += law + src.ion += law /datum/ai_laws/proc/clear_inherent_laws() - qdel(inherent) - inherent = list() + qdel(src.inherent) + src.inherent = list() /datum/ai_laws/proc/add_supplied_law(number, law) - while (supplied.len < number + 1) - supplied += "" + while (src.supplied.len < number + 1) + src.supplied += "" - supplied[number + 1] = law + src.supplied[number + 1] = law /datum/ai_laws/proc/clear_supplied_laws() - supplied = list() + src.supplied = list() /datum/ai_laws/proc/clear_ion_laws() - ion = list() + src.ion = list() /datum/ai_laws/proc/show_laws(who) - if (devillaws && devillaws.len) //Yes, devil laws go in FRONT of zeroth laws, as the devil must still obey it's ban/obligation. - for(var/i in devillaws) - who << "666. [i]" + if (src.zeroth) + who << "0. [src.zeroth]" - if (zeroth) - who << "0. [zeroth]" - - for (var/index = 1, index <= ion.len, index++) - var/law = ion[index] + for (var/index = 1, index <= src.ion.len, index++) + var/law = src.ion[index] var/num = ionnum() who << "[num]. [law]" var/number = 1 - for (var/index = 1, index <= inherent.len, index++) - var/law = inherent[index] + for (var/index = 1, index <= src.inherent.len, index++) + var/law = src.inherent[index] if (length(law) > 0) who << "[number]. [law]" number++ - for (var/index = 1, index <= supplied.len, index++) - var/law = supplied[index] + for (var/index = 1, index <= src.supplied.len, index++) + var/law = src.supplied[index] if (length(law) > 0) who << "[number]. [law]" number++ /datum/ai_laws/proc/clear_zeroth_law(force) //only removes zeroth from antag ai if force is 1 if(force) - zeroth = null - zeroth_borg = null + src.zeroth = null + src.zeroth_borg = null return else if(owner && owner.mind.special_role) return else - zeroth = null - zeroth_borg = null + src.zeroth = null + src.zeroth_borg = null return -/datum/ai_laws/proc/clear_law_sixsixsix(force) - if(force || !(owner && owner.mind.devilinfo)) - devillaws = null - /datum/ai_laws/proc/associate(mob/living/silicon/M) if(!owner) owner = M @@ -319,10 +261,6 @@ /datum/ai_laws/proc/get_law_list(include_zeroth = 0, show_numbers = 1) var/list/data = list() - if (include_zeroth && devillaws && devillaws.len) - for(var/i in devillaws) - data += "[show_numbers ? "666:" : ""] [i]" - if (include_zeroth && zeroth) data += "[show_numbers ? "0:" : ""] [zeroth]" diff --git a/code/datums/antagonists/antag_datum.dm b/code/datums/antagonists/antag_datum.dm deleted file mode 100644 index 07109d242d..0000000000 --- a/code/datums/antagonists/antag_datum.dm +++ /dev/null @@ -1,87 +0,0 @@ -//The Datum, Antagonist. Handles various antag things via a datum. -/datum/antagonist - var/mob/living/owner //who's our owner and accordingly an antagonist - var/some_flufftext = "yer an antag larry" - var/prevented_antag_datum_type //the type of antag datum that this datum can't coexist with; should probably be a list - var/silent_update = FALSE //if we suppress messages during on_gain, apply_innate_effects, remove_innate_effects, and on_remove - -/datum/antagonist/New() - if(!prevented_antag_datum_type) - prevented_antag_datum_type = type - -/datum/antagonist/Destroy() - owner = null - return ..() - -/datum/antagonist/proc/can_be_owned(mob/living/new_body) - return new_body && !new_body.has_antag_datum(prevented_antag_datum_type, TRUE) - -/datum/antagonist/proc/give_to_body(mob/living/new_body) //tries to give an antag datum to a mob. cancels out if it can't be owned by the new body - if(new_body && can_be_owned(new_body)) - new_body.antag_datums += src - owner = new_body - on_gain() - . = src //return the datum if successful - else - qdel(src) - . = FALSE - -/datum/antagonist/proc/on_gain() //on initial gain of antag datum, do this. should only be called once per datum - apply_innate_effects() - if(!silent_update && some_flufftext) - owner << some_flufftext - -/datum/antagonist/proc/apply_innate_effects() //applies innate effects to the owner, may be called multiple times due to mind transferral, but should only be called once per mob - //antag huds would go here if antag huds were less completely unworkable as-is - -/datum/antagonist/proc/remove_innate_effects() //removes innate effects from the owner, may be called multiple times due to mind transferral, but should only be called once per mob - //also antag huds but see above antag huds a shit - -/datum/antagonist/proc/on_remove() //totally removes the antag datum from the owner; can only be called once per owner - remove_innate_effects() - owner.antag_datums -= src - qdel(src) - -/datum/antagonist/proc/transfer_to_new_body(mob/living/new_body) - remove_innate_effects() - if(!islist(new_body.antag_datums)) - new_body.antag_datums = list() - new_body.antag_datums += src - owner.antag_datums -= src - owner = new_body - apply_innate_effects() - -//mob var and helper procs/Destroy override -/mob/living - var/list/antag_datums - -/mob/living/Destroy() //TODO: merge this with the living/Destroy() in code\modules\mob\living\living.dm (currently line 29) - if(islist(antag_datums)) - for(var/i in antag_datums) - qdel(i) - antag_datums = null - return ..() - -/mob/living/proc/can_have_antag_datum(datum_type) //if we can have this specific antagonist datum; neccessary, but requires creating a new antag datum each time. - var/datum/antagonist/D = new datum_type() - . = D.can_be_owned(src) //we can't exactly cache the results, either, because conditions might change. avoid use? TODO: better proc - qdel(D) - -/mob/living/proc/gain_antag_datum(datum_type) //tries to give a mob a specific antagonist datum; returns the datum if successful. - if(!islist(antag_datums)) - antag_datums = list() - var/datum/antagonist/D = new datum_type() - . = D.give_to_body(src) - -/mob/living/proc/has_antag_datum(type, check_subtypes) //checks this mob for if it has the antagonist datum. can either check specific type or subtypes - if(!islist(antag_datums)) - return FALSE - for(var/i in antag_datums) - var/datum/antagonist/D = i - if(check_subtypes) - if(istype(D, type)) - return D //if it finds the datum, will return it so you can mess with it - else - if(D.type == type) - return D - return FALSE diff --git a/code/datums/antagonists/datum_clockcult.dm b/code/datums/antagonists/datum_clockcult.dm deleted file mode 100644 index 9dae3fcde1..0000000000 --- a/code/datums/antagonists/datum_clockcult.dm +++ /dev/null @@ -1,152 +0,0 @@ -//CLOCKCULT PROOF OF CONCEPT - -/datum/antagonist/clockcultist - prevented_antag_datum_type = /datum/antagonist/clockcultist - some_flufftext = null - var/datum/action/innate/hierophant/hierophant_network = new() - -/datum/antagonist/clockcultist/silent - silent_update = TRUE - -/datum/antagonist/clockcultist/Destroy() - qdel(hierophant_network) - ..() - -/datum/antagonist/clockcultist/can_be_owned(mob/living/new_body) - . = ..() - if(.) - . = is_eligible_servant(new_body) - -/datum/antagonist/clockcultist/give_to_body(mob/living/new_body) - if(!silent_update) - if(issilicon(new_body)) - new_body << "You are unable to compute this truth. Your vision glows a brilliant yellow, and all at once it comes to you. Ratvar, the Clockwork Justiciar, \ - lies in exile, derelict and forgotten in an unseen realm." - else - new_body << "[iscarbon(new_body) ? "Your mind is racing! Your body feels incredibly light! ":""]Your world glows a brilliant yellow! All at once it comes to you. \ - Ratvar, the Clockwork Justiciar, lies in exile, derelict and forgotten in an unseen realm." - . = ..() - if(!silent_update && new_body) - if(.) - new_body.visible_message("[new_body]'s eyes glow a blazing yellow!") - new_body << "Assist your new companions in their righteous efforts. Your goal is theirs, and theirs yours. You serve the Clockwork Justiciar above all else. \ - Perform his every whim without hesitation." - else - new_body.visible_message("[new_body] seems to resist an unseen force!") - new_body << "And yet, you somehow push it all away." - -/datum/antagonist/clockcultist/on_gain() - if(ticker && ticker.mode && owner.mind) - ticker.mode.servants_of_ratvar += owner.mind - ticker.mode.update_servant_icons_added(owner.mind) - if(jobban_isbanned(owner, ROLE_SERVANT_OF_RATVAR)) - addtimer(ticker.mode, "replace_jobbaned_player", 0, TIMER_NORMAL, owner, ROLE_SERVANT_OF_RATVAR, ROLE_SERVANT_OF_RATVAR) - if(owner.mind) - owner.mind.special_role = "Servant of Ratvar" - owner.attack_log += "\[[time_stamp()]\] Has been converted to the cult of Ratvar!" - if(issilicon(owner)) - var/mob/living/silicon/S = owner - if(iscyborg(S) && !silent_update) - S << "You have been desynced from your master AI.\n\ - In addition, your onboard camera is no longer active and you have gained additional equipment, including a limited clockwork slab." - if(isAI(S)) - S << "You are able to use your cameras to listen in on conversations." - S << "You can communicate with other servants by using the Hierophant Network action button in the upper left." - else if(isbrain(owner) || isclockmob(owner)) - owner << "You can communicate with other servants by using the Hierophant Network action button in the upper left." - ..() - if(istype(ticker.mode, /datum/game_mode/clockwork_cult)) - var/datum/game_mode/clockwork_cult/C = ticker.mode - C.present_tasks(owner) //Memorize the objectives - -/datum/antagonist/clockcultist/apply_innate_effects() - all_clockwork_mobs += owner - owner.faction |= "ratvar" - owner.languages_spoken |= RATVAR - owner.languages_understood |= RATVAR - owner.update_action_buttons_icon() //because a few clockcult things are action buttons and we may be wearing/holding them for whatever reason, we need to update buttons - if(issilicon(owner)) - var/mob/living/silicon/S = owner - if(iscyborg(S)) - var/mob/living/silicon/robot/R = S - R.UnlinkSelf() - R.module.rebuild_modules() - else if(isAI(S)) - var/mob/living/silicon/ai/A = S - A.requires_power = POWER_REQ_CLOCKCULT - if(!A.lacks_power()) - A.ai_restore_power() - if(A.eyeobj) - A.eyeobj.relay_speech = TRUE - for(var/C in A.connected_robots) - var/mob/living/silicon/robot/R = C - if(R.connected_ai == A) - R.visible_message("[R]'s eyes glow a blazing yellow!", \ - "Assist your new companions in their righteous efforts. Your goal is theirs, and theirs yours. You serve the Clockwork Justiciar above all else. Perform his every \ - whim without hesitation.") - R << "Your onboard camera is no longer active and you have gained additional equipment, including a limited clockwork slab." - add_servant_of_ratvar(R, TRUE) - S.laws = new/datum/ai_laws/ratvar - S.laws.associate(S) - S.update_icons() - S.show_laws() - hierophant_network.Grant(S) - hierophant_network.title = "Silicon" - hierophant_network.span_for_name = "nezbere" - hierophant_network.span_for_message = "brass" - else if(isbrain(owner)) - hierophant_network.Grant(owner) - hierophant_network.title = "Vessel" - hierophant_network.span_for_name = "nezbere" - hierophant_network.span_for_message = "alloy" - else if(isclockmob(owner)) - hierophant_network.Grant(owner) - hierophant_network.title = "Construct" - hierophant_network.span_for_name = "nezbere" - hierophant_network.span_for_message = "brass" - owner.throw_alert("clockinfo", /obj/screen/alert/clockwork/infodump) - if(!clockwork_gateway_activated) - owner.throw_alert("scripturereq", /obj/screen/alert/clockwork/scripture_reqs) - update_slab_info() - ..() - -/datum/antagonist/clockcultist/remove_innate_effects() - all_clockwork_mobs -= owner - owner.faction -= "ratvar" - owner.languages_spoken &= ~RATVAR - owner.languages_understood &= ~RATVAR - owner.clear_alert("clockinfo") - owner.clear_alert("scripturereq") - for(var/datum/action/innate/function_call/F in owner.actions) //Removes any bound Ratvarian spears - qdel(F) - if(issilicon(owner)) - var/mob/living/silicon/S = owner - if(isAI(S)) - var/mob/living/silicon/ai/A = S - A.requires_power = initial(A.requires_power) - S.make_laws() - S.update_icons() - S.show_laws() - var/mob/living/temp_owner = owner - ..() - if(iscyborg(temp_owner)) - var/mob/living/silicon/robot/R = temp_owner - R.module.rebuild_modules() - if(temp_owner) - temp_owner.update_action_buttons_icon() //because a few clockcult things are action buttons and we may be wearing/holding them, we need to update buttons - update_slab_info() - -/datum/antagonist/clockcultist/on_remove() - if(!silent_update) - owner.visible_message("[owner] seems to have remembered their true allegiance!", \ - "A cold, cold darkness flows through your mind, extinguishing the Justiciar's light and all of your memories as his servant.") - if(ticker && ticker.mode && owner.mind) - ticker.mode.servants_of_ratvar -= owner.mind - ticker.mode.update_servant_icons_removed(owner.mind) - if(owner.mind) - owner.mind.wipe_memory() - owner.mind.special_role = null - owner.attack_log += "\[[time_stamp()]\] Has renounced the cult of Ratvar!" - if(iscyborg(owner)) - owner << "Despite your freedom from Ratvar's influence, you are still irreparably damaged and no longer possess certain functions such as AI linking." - ..() diff --git a/code/datums/antagonists/datum_cult.dm b/code/datums/antagonists/datum_cult.dm deleted file mode 100644 index 326f4fdbbd..0000000000 --- a/code/datums/antagonists/datum_cult.dm +++ /dev/null @@ -1,50 +0,0 @@ -/datum/antagonist/cultist - prevented_antag_datum_type = /datum/antagonist/cultist - some_flufftext = null - var/datum/action/innate/cultcomm/communion = new() - -/datum/antagonist/cultist/Destroy() - qdel(communion) - return ..() - -/datum/antagonist/cultist/can_be_owned(mob/living/new_body) - . = ..() - if(.) - . = is_convertable_to_cult(new_body) - -/datum/antagonist/cultist/on_gain() - if(ticker && ticker.mode && owner.mind) - ticker.mode.cult += owner.mind - ticker.mode.update_cult_icons_added(owner.mind) - if(istype(ticker.mode, /datum/game_mode/cult)) - var/datum/game_mode/cult/C = ticker.mode - C.memorize_cult_objectives(owner.mind) - if(jobban_isbanned(owner, ROLE_CULTIST)) - addtimer(ticker.mode, "replace_jobbaned_player", 0, TIMER_NORMAL, owner, ROLE_CULTIST, ROLE_CULTIST) - if(owner.mind) - owner.mind.special_role = "Cultist" - owner.attack_log += "\[[time_stamp()]\] Has been converted to the cult of Nar'Sie!" - ..() - -/datum/antagonist/cultist/apply_innate_effects() - owner.faction |= "cult" - owner.verbs += /mob/living/proc/cult_help - communion.Grant(owner) - ..() - -/datum/antagonist/cultist/remove_innate_effects() - owner.faction -= "cult" - owner.verbs -= /mob/living/proc/cult_help - ..() - -/datum/antagonist/cultist/on_remove() - if(owner.mind) - owner.mind.wipe_memory() - if(ticker && ticker.mode) - ticker.mode.cult -= owner.mind - ticker.mode.update_cult_icons_removed(owner.mind) - owner << "An unfamiliar white light flashes through your mind, cleansing the taint of the Dark One and all your memories as its servant." - owner.attack_log += "\[[time_stamp()]\] Has renounced the cult of Nar'Sie!" - if(!silent_update) - owner.visible_message("[owner] looks like [owner.p_they()] just reverted to their old faith!") - ..() diff --git a/code/datums/beam.dm b/code/datums/beam.dm index d5b5bf2be2..a934ce0189 100644 --- a/code/datums/beam.dm +++ b/code/datums/beam.dm @@ -16,13 +16,12 @@ var/beam_type = /obj/effect/ebeam //must be subtype -/datum/beam/New(beam_origin,beam_target,beam_icon='icons/effects/beam.dmi',beam_icon_state="b_beam",time=50,maxdistance=10,btype = /obj/effect/ebeam,beam_sleep_time=3) +/datum/beam/New(beam_origin,beam_target,beam_icon='icons/effects/beam.dmi',beam_icon_state="b_beam",time=50,maxdistance=10,btype = /obj/effect/ebeam) endtime = world.time+time origin = beam_origin origin_oldloc = get_turf(origin) target = beam_target target_oldloc = get_turf(target) - sleep_time = beam_sleep_time if(origin_oldloc == origin && target_oldloc == target) static_beam = 1 max_distance = maxdistance @@ -129,8 +128,8 @@ return ..() -/atom/proc/Beam(atom/BeamTarget,icon_state="b_beam",icon='icons/effects/beam.dmi',time=50, maxdistance=10,beam_type=/obj/effect/ebeam,beam_sleep_time = 3) - var/datum/beam/newbeam = new(src,BeamTarget,icon,icon_state,time,maxdistance,beam_type,beam_sleep_time) +/atom/proc/Beam(atom/BeamTarget,icon_state="b_beam",icon='icons/effects/beam.dmi',time=50, maxdistance=10,beam_type=/obj/effect/ebeam) + var/datum/beam/newbeam = new(src,BeamTarget,icon,icon_state,time,maxdistance,beam_type) spawn(0) newbeam.Start() return newbeam diff --git a/code/datums/browser.dm b/code/datums/browser.dm index c44c5f2599..7b70a25e90 100644 --- a/code/datums/browser.dm +++ b/code/datums/browser.dm @@ -39,12 +39,10 @@ //title_image = ntitle_image /datum/browser/proc/add_stylesheet(name, file) - stylesheets["[ckey(name)].css"] = file - register_asset("[ckey(name)].css", file) + stylesheets[name] = file /datum/browser/proc/add_script(name, file) - scripts["[ckey(name)].js"] = file - register_asset("[ckey(name)].js", file) + scripts[name] = file /datum/browser/proc/set_content(ncontent) content = ncontent @@ -53,12 +51,17 @@ content += ncontent /datum/browser/proc/get_header() - var/file - for (file in stylesheets) - head_content += "" + var/key + var/filename + for (key in stylesheets) + filename = "[ckey(key)].css" + user << browse_rsc(stylesheets[key], filename) + head_content += "" - for (file in scripts) - head_content += "" + for (key in scripts) + filename = "[ckey(key)].js" + user << browse_rsc(scripts[key], filename) + head_content += "" var/title_attributes = "class='uiTitle'" if (title_image) @@ -95,10 +98,6 @@ var/window_size = "" if (width && height) window_size = "size=[width]x[height];" - if (stylesheets.len) - send_asset_list(user, stylesheets, verify=FALSE) - if (scripts.len) - send_asset_list(user, scripts, verify=FALSE) user << browse(get_content(), "window=[window_id];[window_size][window_options]") if (use_onclose) spawn(0) @@ -276,4 +275,4 @@ if(src && src.mob) //world << "[src] was [src.mob.machine], setting to null" src.mob.unset_machine() - return + return \ No newline at end of file diff --git a/code/datums/datacore.dm b/code/datums/datacore.dm index 6b498658ae..3d00af21c9 100644 --- a/code/datums/datacore.dm +++ b/code/datums/datacore.dm @@ -65,9 +65,13 @@ crimes |= crime return -/datum/datacore/proc/manifest() - for(var/mob/living/carbon/human/H in player_list) - manifest_inject(H) +/datum/datacore/proc/manifest(nosleep = 0) + spawn() + if(!nosleep) + sleep(40) + for(var/mob/living/carbon/human/H in player_list) + manifest_inject(H) + return /datum/datacore/proc/manifest_modify(name, assignment) var/datum/data/record/foundrecord = find_record("name", name, data_core.general) diff --git a/code/datums/datumvars.dm b/code/datums/datumvars.dm index b20c1b37d1..b802f11fde 100644 --- a/code/datums/datumvars.dm +++ b/code/datums/datumvars.dm @@ -1,103 +1,214 @@ +// reference: /client/proc/modify_variables(var/atom/O, var/param_var_name = null, var/autodetect_class = 0) + /datum - var/var_edited = FALSE //Warrenty void if seal is broken - var/datum/reagents/reagents = null - var/fingerprintslast = null + var/var_edited = 0 //Warrenty void if seal is broken -/datum/proc/vv_edit_var(var_name, var_value) //called whenever a var is edited - switch(var_name) - if ("vars") - return FALSE - if ("var_edited") - return FALSE - var_edited = TRUE - vars[var_name] = var_value - -/datum/proc/vv_get_var(var_name) - switch(var_name) - if ("vars") - return debug_variable(var_name, list(), 0, src) - return debug_variable(var_name, vars[var_name], 0, src) - -//please call . = ..() first and append to the result, that way parent items are always at the top and child items are further down -//add seperaters by doing . += "---" -/datum/proc/vv_get_dropdown() - . = list() - . += "---" - .["Call Proc"] = "?_src_=vars;proc_call=\ref[src]" - .["Mark Object"] = "?_src_=vars;mark_object=\ref[src]" - - -/datum/proc/on_reagent_change() +/datum/proc/on_varedit(modified_var) //called whenever a var is edited + var_edited = 1 return - /client/proc/debug_variables(datum/D in world) set category = "Debug" set name = "View Variables" //set src in world - var/static/cookieoffset = rand(1, 9999) //to force cookies to reset after the round. + if(!usr.client || !usr.client.holder) usr << "You need to be an administrator to access this." return - if(!D) - return - - var/islist = islist(D) - if (!islist && !istype(D)) - return var/title = "" - var/refid = "\ref[D]" + var/body = "" + + if(!D) + return + if(istype(D, /atom)) + var/atom/A = D + title = "[A.name] (\ref[A]) = [A.type]" + + #ifdef VARSICON + if (A.icon) + body += debug_variable("icon", new/icon(A.icon, A.icon_state, A.dir), 0) + #endif + var/icon/sprite - var/type = /list - if (!islist) - type = D.type - - - if(istype(D,/atom)) var/atom/AT = D if(AT.icon && AT.icon_state) sprite = new /icon(AT.icon, AT.icon_state) usr << browse_rsc(sprite, "view_vars_sprite.png") - title = "[D] (\ref[D]) = [type]" + title = "[D] (\ref[D]) = [D.type]" + + body += {" "} + + body += "" + + body += "
" - var/sprite_text if(sprite) - sprite_text = "" - var/list/atomsnowflake = list() + body += "" + + body += "
" + else + body += "
" + + body += "
" if(istype(D,/atom)) var/atom/A = D if(isliving(A)) - atomsnowflake += "[D]" + body += "[D]" if(A.dir) - atomsnowflake += "
<< [dir2text(A.dir)] >>" + body += "
<< [dir2text(A.dir)] >>" var/mob/living/M = A - atomsnowflake += {" -
[M.ckey ? M.ckey : "No ckey"] / [M.real_name ? M.real_name : "No real name"] -
- BRUTE:[M.getBruteLoss()] - FIRE:[M.getFireLoss()] - TOXIN:[M.getToxLoss()] - OXY:[M.getOxyLoss()] - CLONE:[M.getCloneLoss()] - BRAIN:[M.getBrainLoss()] - STAMINA:[M.getStaminaLoss()] - + body += "
[M.ckey ? M.ckey : "No ckey"] / [M.real_name ? M.real_name : "No real name"]" + body += {" +
+ BRUTE:[M.getBruteLoss()] + FIRE:[M.getFireLoss()] + TOXIN:[M.getToxLoss()] + OXY:[M.getOxyLoss()] + CLONE:[M.getCloneLoss()] + BRAIN:[M.getBrainLoss()] + STAMINA:[M.getStaminaLoss()] + + + "} else - atomsnowflake += "[D]" + body += "[D]" if(A.dir) - atomsnowflake += "
<< [dir2text(A.dir)] >>" + body += "
<< [dir2text(A.dir)] >>" else - atomsnowflake += "[D]" + body += "[D]" - var/formatted_type = "[type]" + body += "
" + + body += "
" + + var/formatted_type = text("[D.type]") if(length(formatted_type) > 25) var/middle_point = length(formatted_type) / 2 var/splitpoint = findtext(formatted_type,"/",middle_point) @@ -106,298 +217,147 @@ else formatted_type = "Type too long" //No suitable splitpoint (/) found. - var/marked - if(holder.marked_datum && holder.marked_datum == D) - marked = "
Marked Object" - var/varedited_line = "" - if(!islist && D.var_edited) - varedited_line = "
Var Edited" + body += "
[formatted_type]" - var/list/dropdownoptions = list() - if (islist) - dropdownoptions = list( - "---", - "Add Item" = "?_src_=vars;listadd=[refid]", - "Remove Nulls" = "?_src_=vars;listnulls=[refid]", - "Remove Dupes" = "?_src_=vars;listdupes=[refid]", - "Set len" = "?_src_=vars;listlen=[refid]", - "Shuffle" = "?_src_=vars;listshuffle=[refid]" - ) + if(src.holder && src.holder.marked_datum && src.holder.marked_datum == D) + body += "
Marked Object" + + if(D.var_edited) + body += "
Var Edited" + body += "
" + + body += "
Refresh" + + //if(ismob(D)) + // body += "
Show player panel

" + + body += {"
+
" + + body += "

" + + body += "E - Edit, tries to determine the variable type by itself.
" + body += "C - Change, asks you for the var type first.
" + body += "M - Mass modify: changes this variable for all objects of this type.

" + + body += "
Search:

" + + body += "
    " var/list/names = list() - if (!islist) - for (var/V in D.vars) - names += V + for (var/V in D.vars) + names += V sleep(1)//For some reason, without this sleep, VVing will cause client to disconnect on certain objects. - var/list/variable_html = list() - if (islist) - var/list/L = D - for (var/i in 1 to L.len) - var/key = L[i] - var/value - if (IS_NORMAL_LIST(L) && !isnum(key)) - value = L[key] - variable_html += debug_variable(i, value, 0, D) - else + names = sortList(names) - names = sortList(names) - for (var/V in names) - variable_html += D.vv_get_var(V) + for (var/V in names) + body += debug_variable(V, D.vars[V], 0, D) - var/html = {" - - - [title] - - - - -
    - - - - - -
    - - - - -
    - [sprite_text] -
    - [atomsnowflake.Join()] -
    -
    -
    - [formatted_type] - [marked] - [varedited_line] -
    -
    -
    - Refresh -
    - -
    -
    -
    -
    -
    - - E - Edit, tries to determine the variable type by itself.
    - C - Change, asks you for the var type first.
    - M - Mass modify: changes this variable for all objects of this type.
    -
    -
    - - - - - -
    -
    - Search: -
    -
    - -
    -
    -
      - [variable_html.Join()] -
    + html += {" - - -"} + "} - usr << browse(html, "window=variables[refid];size=475x650") + html += "" + usr << browse(html, "window=variables\ref[D];size=475x650") + + return + +/client/proc/debug_variable(name, value, level, datum/DA = null) + var/html = "" -#define VV_HTML_ENCODE(thing) ( sanitize ? html_encode(thing) : thing ) -/proc/debug_variable(name, value, level, datum/DA = null, sanitize = TRUE) - var/header if(DA) - if (istype(DA, /list)) - var/index = name - if (value) - name = DA[name] //name is really the index until this line - else - value = DA[name] - header = "
  1. (E) (C) (-) " - else - header = "
  2. (E) (C) (M) " + html += "
  3. (E) (C) (M) " else - header = "
  4. " + html += "
  5. " - var/item if (isnull(value)) - item = "[VV_HTML_ENCODE(name)] = null" + html += "[html_encode(name)] = null" else if (istext(value)) - item = "[VV_HTML_ENCODE(name)] = \"[VV_HTML_ENCODE(value)]\"" + html += "[html_encode(name)] = \"[html_encode(value)]\"" else if (isicon(value)) #ifdef VARSICON @@ -405,9 +365,9 @@ var/rnd = rand(1,10000) var/rname = "tmp\ref[I][rnd].png" usr << browse_rsc(I, rname) - item = "[VV_HTML_ENCODE(name)] = ([value]) " + html += "[html_encode(name)] = ([value]) " #else - item = "[VV_HTML_ENCODE(name)] = /icon ([value])" + html += "[html_encode(name)] = /icon ([value])" #endif /* else if (istype(value, /image)) @@ -422,47 +382,46 @@ #endif */ else if (isfile(value)) - item = "[VV_HTML_ENCODE(name)] = '[value]'" - - //else if (istype(value, /client)) - // var/client/C = value - // item = "[VV_HTML_ENCODE(name)] \ref[value] = [C] [C.type]" + html += "[html_encode(name)] = '[value]'" else if (istype(value, /datum)) var/datum/D = value - if ("[D]" != "[D.type]") //if the thing as a name var, lets use it. - item = "[VV_HTML_ENCODE(name)] \ref[value] = [D] [D.type]" - else - item = "[VV_HTML_ENCODE(name)] \ref[value] = [D.type]" + html += "[html_encode(name)] \ref[value] = [D.type]" + else if (istype(value, /client)) + var/client/C = value + html += "[html_encode(name)] \ref[value] = [C] [C.type]" +// else if (istype(value, /list)) var/list/L = value - var/list/items = list() + html += "[html_encode(name)] = /list ([L.len])" - if (L.len > 0 && !(name == "underlays" || name == "overlays" || L.len > 500)) - for (var/i in 1 to L.len) - var/key = L[i] - var/val - if (IS_NORMAL_LIST(L) && !isnum(key)) - val = L[key] - if (!val) - val = key - key = i - - items += debug_variable(key, val, level + 1, sanitize = sanitize) - - item = "[VV_HTML_ENCODE(name)] = /list ([L.len])
      [items.Join()]
    " - else - item = "[VV_HTML_ENCODE(name)] = /list ([L.len])" + if (L.len > 0 && !(name == "underlays" || name == "overlays" || name == "vars" || L.len > 500)) + // not sure if this is completely right... + if(0) //(L.vars.len > 0) + html += "
      " + html += "
    " + else + html += "
      " + var/index = 1 + for (var/entry in L) + if(istext(entry)) + html += debug_variable(entry, L[entry], level + 1) + //html += debug_variable("[index]", L[index], level + 1) + else + html += debug_variable(index, L[index], level + 1) + index++ + html += "
    " else - item = "[VV_HTML_ENCODE(name)] = [VV_HTML_ENCODE(value)]" + html += "[html_encode(name)] = [html_encode(value)]" - return "[header][item]
  6. " + html += "" -#undef VV_HTML_ENCODE + return html /client/proc/view_var_Topic(href, href_list, hsrc) + //This should all be moved over to datum/admins/Topic() or something ~Carn if( (usr.client != src) || !src.holder ) return if(href_list["Vars"]) @@ -558,8 +517,8 @@ return var/D = locate(href_list["datumedit"]) - if(!istype(D,/datum)) - usr << "This can only be used on datums" + if(!istype(D,/datum) && !istype(D,/client)) + usr << "This can only be used on instances of types /client or /datum" return modify_variables(D, href_list["varnameedit"], 1) @@ -569,8 +528,8 @@ return var/D = locate(href_list["datumchange"]) - if(!istype(D,/datum)) - usr << "This can only be used on datums" + if(!istype(D,/datum) && !istype(D,/client)) + usr << "This can only be used on instances of types /client or /datum" return modify_variables(D, href_list["varnamechange"], 0) @@ -579,110 +538,12 @@ if(!check_rights(0)) return - var/datum/D = locate(href_list["datummass"]) - if(!istype(D)) - usr << "This can only be used on instances of type /datum" + var/atom/A = locate(href_list["datummass"]) + if(!istype(A)) + usr << "This can only be used on instances of type /atom" return - cmd_mass_modify_object_variables(D, href_list["varnamemass"]) - - else if(href_list["listedit"] && href_list["index"]) - var/index = text2num(href_list["index"]) - if (!index) - return - - var/list/L = locate(href_list["listedit"]) - if (!istype(L)) - usr << "This can only be used on instances of type /list" - return - - mod_list(L, null, "list", "contents", index, autodetect_class = TRUE) - - else if(href_list["listchange"] && href_list["index"]) - var/index = text2num(href_list["index"]) - if (!index) - return - - var/list/L = locate(href_list["listchange"]) - if (!istype(L)) - usr << "This can only be used on instances of type /list" - return - - mod_list(L, null, "list", "contents", index, autodetect_class = FALSE) - - else if(href_list["listremove"] && href_list["index"]) - var/index = text2num(href_list["index"]) - if (!index) - return - - var/list/L = locate(href_list["listremove"]) - if (!istype(L)) - usr << "This can only be used on instances of type /list" - return - - var/variable = L[index] - var/prompt = alert("Do you want to remove item number [index] from list?", "Confirm", "Yes", "No") - if (prompt != "Yes") - return - L.Cut(index, index+1) - world.log << "### ListVarEdit by [src]: /list's contents: REMOVED=[html_encode("[variable]")]" - log_admin("[key_name(src)] modified list's contents: REMOVED=[variable]") - message_admins("[key_name_admin(src)] modified list's contents: REMOVED=[variable]") - - else if(href_list["listadd"]) - var/list/L = locate(href_list["listadd"]) - if (!istype(L)) - usr << "This can only be used on instances of type /list" - return - - mod_list_add(L, null, "list", "contents") - - else if(href_list["listdupes"]) - var/list/L = locate(href_list["listdupes"]) - if (!istype(L)) - usr << "This can only be used on instances of type /list" - return - - uniqueList_inplace(L) - world.log << "### ListVarEdit by [src]: /list contents: CLEAR DUPES" - log_admin("[key_name(src)] modified list's contents: CLEAR DUPES") - message_admins("[key_name_admin(src)] modified list's contents: CLEAR DUPES") - - else if(href_list["listnulls"]) - var/list/L = locate(href_list["listnulls"]) - if (!istype(L)) - usr << "This can only be used on instances of type /list" - return - - listclearnulls(L) - world.log << "### ListVarEdit by [src]: /list contents: CLEAR NULLS" - log_admin("[key_name(src)] modified list's contents: CLEAR NULLS") - message_admins("[key_name_admin(src)] modified list's contents: CLEAR NULLS") - - else if(href_list["listlen"]) - var/list/L = locate(href_list["listlen"]) - if (!istype(L)) - usr << "This can only be used on instances of type /list" - return - var/value = vv_get_value(VV_NUM) - if (value["class"] != VV_NUM) - return - - L.len = value["value"] - world.log << "### ListVarEdit by [src]: /list len: [L.len]" - log_admin("[key_name(src)] modified list's len: [L.len]") - message_admins("[key_name_admin(src)] modified list's len: [L.len]") - - else if(href_list["listshuffle"]) - var/list/L = locate(href_list["listshuffle"]) - if (!istype(L)) - usr << "This can only be used on instances of type /list" - return - - shuffle_inplace(L) - world.log << "### ListVarEdit by [src]: /list contents: SHUFFLE" - log_admin("[key_name(src)] modified list's contents: SHUFFLE") - message_admins("[key_name_admin(src)] modified list's contents: SHUFFLE") + cmd_mass_modify_object_variables(A, href_list["varnamemass"]) else if(href_list["give_spell"]) if(!check_rights(0)) @@ -696,18 +557,6 @@ src.give_spell(M) href_list["datumrefresh"] = href_list["give_spell"] - else if(href_list["remove_spell"]) - if(!check_rights(0)) - return - - var/mob/M = locate(href_list["remove_spell"]) - if(!istype(M)) - usr << "This can only be used on instances of type /mob" - return - - remove_spell(M) - href_list["datumrefresh"] = href_list["remove_spell"] - else if(href_list["give_disease"]) if(!check_rights(0)) return @@ -1025,51 +874,25 @@ var/newtype = species_list[result] H.set_species(newtype) - else if(href_list["editbodypart"]) + else if(href_list["removebodypart"]) if(!check_rights(R_SPAWN)) return - var/mob/living/carbon/C = locate(href_list["editbodypart"]) - if(!istype(C)) - usr << "This can only be done to instances of type /mob/living/carbon" + var/mob/living/carbon/human/H = locate(href_list["removebodypart"]) + if(!istype(H)) + usr << "This can only be done to instances of type /mob/living/carbon/human" return - var/edit_action = input(usr, "What would you like to do?","Modify Body Part") as null|anything in list("add","remove", "augment") - if(!edit_action) - return - var/list/limb_list = list("head", "l_arm", "r_arm", "l_leg", "r_leg") - if(edit_action == "augment") - limb_list += "chest" - var/result = input(usr, "Please choose which body part to [edit_action]","[capitalize(edit_action)] Body Part") as null|anything in limb_list + var/result = input(usr, "Please choose which body part to remove","Remove Body Part") as null|anything in list("head", "l_arm", "r_arm", "l_leg", "r_leg") - if(!C) + if(!H) usr << "Mob doesn't exist anymore" return if(result) - var/obj/item/bodypart/BP = C.get_bodypart(result) - switch(edit_action) - if("remove") - if(BP) - BP.drop_limb() - else - usr << "[C] doesn't have such bodypart." - if("add") - if(BP) - usr << "[C] already has such bodypart." - else - if(!C.regenerate_limb(result)) - usr << "[C] cannot have such bodypart." - if("augment") - if(ishuman(C)) - if(BP) - BP.change_bodypart_status(BODYPART_ROBOTIC, 1) - else - usr << "[C] doesn't have such bodypart." - else - usr << "Only humans can be augmented." - - + var/obj/item/bodypart/BP = H.get_bodypart(result) + if(BP) + BP.drop_limb() else if(href_list["purrbation"]) if(!check_rights(R_SPAWN)) @@ -1139,3 +962,6 @@ message_admins("[key_name(usr)] dealt [amount] amount of [Text] damage to [L] ") href_list["datumrefresh"] = href_list["mobToDamage"] + + return + diff --git a/code/datums/diseases/_MobProcs.dm b/code/datums/diseases/_MobProcs.dm index 57b1f3223f..001614a66a 100644 --- a/code/datums/diseases/_MobProcs.dm +++ b/code/datums/diseases/_MobProcs.dm @@ -19,6 +19,9 @@ if(!(type in D.viable_mobtypes)) return 0 + if(count_by_type(viruses, /datum/disease/advance) >= 3) + return 0 + return 1 @@ -29,30 +32,23 @@ /mob/proc/AddDisease(datum/disease/D) - for(var/datum/disease/advance/P in viruses) - if(istype(D, /datum/disease/advance)) - var/datum/disease/advance/DD = D - if (P.totalResistance() < DD.totalTransmittable()) //Overwrite virus if the attacker's Transmission is lower than the defender's Resistance. This does not grant immunity to the lost virus. - P.remove_virus() + var/datum/disease/DD = new D.type(1, D, 0) + viruses += DD + DD.affected_mob = src + DD.holder = src - if (!viruses.len) //Only add the new virus if it defeated the existing one - var/datum/disease/DD = new D.type(1, D, 0) - viruses += DD - DD.affected_mob = src - DD.holder = src + //Copy properties over. This is so edited diseases persist. + var/list/skipped = list("affected_mob","holder","carrier","stage","type","parent_type","vars","transformed") + for(var/V in DD.vars) + if(V in skipped) + continue + if(istype(DD.vars[V],/list)) + var/list/L = D.vars[V] + DD.vars[V] = L.Copy() + else + DD.vars[V] = D.vars[V] - //Copy properties over. This is so edited diseases persist. - var/list/skipped = list("affected_mob","holder","carrier","stage","type","parent_type","vars","transformed") - for(var/V in DD.vars) - if(V in skipped) - continue - if(istype(DD.vars[V],/list)) - var/list/L = D.vars[V] - DD.vars[V] = L.Copy() - else - DD.vars[V] = D.vars[V] - - DD.affected_mob.med_hud_set_status() + DD.affected_mob.med_hud_set_status() /mob/living/carbon/ContractDisease(datum/disease/D) @@ -86,7 +82,7 @@ var/target_zone = pick(head_ch;1,body_ch;2,hands_ch;3,feet_ch;4) - if(ishuman(src)) + if(istype(src, /mob/living/carbon/human)) var/mob/living/carbon/human/H = src switch(target_zone) @@ -97,9 +93,6 @@ if(passed && isobj(H.wear_mask)) Cl = H.wear_mask passed = prob((Cl.permeability_coefficient*100) - 1) - if(passed && isobj(H.wear_neck)) - Cl = H.wear_neck - passed = prob((Cl.permeability_coefficient*100) - 1) if(2) if(isobj(H.wear_suit)) Cl = H.wear_suit @@ -124,7 +117,7 @@ Cl = H.shoes passed = prob((Cl.permeability_coefficient*100) - 1) - else if(ismonkey(src)) + else if(istype(src, /mob/living/carbon/monkey)) var/mob/living/carbon/monkey/M = src switch(target_zone) if(1) @@ -147,6 +140,6 @@ /mob/living/carbon/human/CanContractDisease(datum/disease/D) - if(dna && (VIRUSIMMUNE in dna.species.species_traits)) + if(dna && (VIRUSIMMUNE in dna.species.specflags)) return 0 return ..() \ No newline at end of file diff --git a/code/datums/diseases/advance/advance.dm b/code/datums/diseases/advance/advance.dm index 15111805cc..691d1f02dc 100644 --- a/code/datums/diseases/advance/advance.dm +++ b/code/datums/diseases/advance/advance.dm @@ -7,8 +7,6 @@ */ -#define SYMPTOM_LIMIT 8 - var/list/archive_diseases = list() // The order goes from easy to cure to hard to cure. @@ -36,7 +34,7 @@ var/list/advance_cures = list( viable_mobtypes = list(/mob/living/carbon/human, /mob/living/carbon/monkey) // NEW VARS - var/list/properties = list() + var/list/symptoms = list() // The symptoms of the disease. var/id = "" var/processing = 0 @@ -164,8 +162,8 @@ var/list/advance_cures = list( /datum/disease/advance/proc/Refresh(new_name = 0) //world << "[src.name] \ref[src] - REFRESH!" - GenerateProperties() - AssignProperties() + var/list/properties = GenerateProperties() + AssignProperties(properties) id = null if(!archive_diseases[GetDiseaseID()]) @@ -184,24 +182,26 @@ var/list/advance_cures = list( CRASH("We did not have any symptoms before generating properties.") return - properties = list("resistance" = 0, "stealth" = 0, "stage_rate" = 0, "transmittable" = 0, "severity" = 0) + var/list/properties = list("resistance" = 1, "stealth" = 1, "stage_rate" = 1, "transmittable" = 1, "severity" = 0) for(var/datum/symptom/S in symptoms) + properties["resistance"] += S.resistance properties["stealth"] += S.stealth properties["stage_rate"] += S.stage_speed properties["transmittable"] += S.transmittable properties["severity"] = max(properties["severity"], S.severity) // severity is based on the highest severity symptom - return + + return properties // Assign the properties that are in the list. -/datum/disease/advance/proc/AssignProperties() +/datum/disease/advance/proc/AssignProperties(list/properties = list()) if(properties && properties.len) switch(properties["stealth"]) - if(2,3) + if(2) visibility_flags = HIDDEN_SCANNER - if(4 to INFINITY) + if(3 to INFINITY) visibility_flags = HIDDEN_SCANNER|HIDDEN_PANDEMIC // The more symptoms we have, the less transmittable it is but some symptoms can make up for it. @@ -252,7 +252,7 @@ var/list/advance_cures = list( // Will generate a random cure, the less resistance the symptoms have, the harder the cure. -/datum/disease/advance/proc/GenerateCure() +/datum/disease/advance/proc/GenerateCure(list/properties = list()) if(properties && properties.len) var/res = Clamp(properties["resistance"] - (symptoms.len / 2), 1, advance_cures.len) //world << "Res = [res]" @@ -306,7 +306,7 @@ var/list/advance_cures = list( if(HasSymptom(S)) return - if(symptoms.len < (SYMPTOM_LIMIT - 1) + rand(-1, 1)) + if(symptoms.len < 5 + rand(-1, 1)) symptoms += S else RemoveSymptom(pick(symptoms)) @@ -372,7 +372,7 @@ var/list/advance_cures = list( if(!user) return - var/i = SYMPTOM_LIMIT + var/i = 5 var/datum/disease/advance/D = new(0, null) D.symptoms = list() @@ -426,15 +426,31 @@ var/list/advance_cures = list( /datum/disease/advance/proc/totalStageSpeed() - return properties["stage_rate"] + var/total_stage_speed = 0 + for(var/i in symptoms) + var/datum/symptom/S = i + total_stage_speed += S.stage_speed + return total_stage_speed /datum/disease/advance/proc/totalStealth() - return properties["stealth"] + var/total_stealth = 0 + for(var/i in symptoms) + var/datum/symptom/S = i + total_stealth += S.stealth + return total_stealth /datum/disease/advance/proc/totalResistance() - return properties["resistance"] + var/total_resistance = 0 + for(var/i in symptoms) + var/datum/symptom/S = i + total_resistance += S.resistance + return total_resistance /datum/disease/advance/proc/totalTransmittable() - return properties["transmittable"] + var/total_transmittable = 0 + for(var/i in symptoms) + var/datum/symptom/S = i + total_transmittable += S.transmittable + return total_transmittable #undef RANDOM_STARTING_LEVEL diff --git a/code/datums/diseases/advance/symptoms/beard.dm b/code/datums/diseases/advance/symptoms/beard.dm index a0dfa993d4..7d4a946d2d 100644 --- a/code/datums/diseases/advance/symptoms/beard.dm +++ b/code/datums/diseases/advance/symptoms/beard.dm @@ -28,7 +28,7 @@ BONUS ..() if(prob(SYMPTOM_ACTIVATION_PROB)) var/mob/living/M = A.affected_mob - if(ishuman(M)) + if(istype(M, /mob/living/carbon/human)) var/mob/living/carbon/human/H = M switch(A.stage) if(1, 2) diff --git a/code/datums/diseases/advance/symptoms/choking.dm b/code/datums/diseases/advance/symptoms/choking.dm index d22dc68cf9..2833a343c4 100644 --- a/code/datums/diseases/advance/symptoms/choking.dm +++ b/code/datums/diseases/advance/symptoms/choking.dm @@ -43,73 +43,11 @@ Bonus return /datum/symptom/choking/proc/Choke_stage_3_4(mob/living/M, datum/disease/advance/A) - var/get_damage = sqrt(21+A.totalStageSpeed()*0.5)+sqrt(max(16+A.totalStealth(),0)) + var/get_damage = sqrt(21+A.totalStageSpeed()*0.5)+sqrt(16+A.totalStealth()) M.adjustOxyLoss(get_damage) return 1 /datum/symptom/choking/proc/Choke(mob/living/M, datum/disease/advance/A) - var/get_damage = sqrt(21+A.totalStageSpeed()*0.5)+sqrt(max(16+A.totalStealth()*5,0)) + var/get_damage = sqrt(21+A.totalStageSpeed()*0.5)+sqrt(16+A.totalStealth()*5) M.adjustOxyLoss(get_damage) - return 1 - -/* -////////////////////////////////////// - -Asphyxiation - - Very very noticable. - Decreases stage speed. - Decreases transmittablity. - -Bonus - Inflicts large spikes of oxyloss - Introduces Asphyxiating drugs to the system - Causes cardiac arrest on dying victims. - -////////////////////////////////////// -*/ - -/datum/symptom/asphyxiation - - name = "Acute respiratory distress syndrome" - stealth = -2 - resistance = -0 - stage_speed = -1 - transmittable = -2 - level = 7 - severity = 3 - -/datum/symptom/asphyxiation/Activate(datum/disease/advance/A) - ..() - if(prob(SYMPTOM_ACTIVATION_PROB)) - var/mob/living/M = A.affected_mob - switch(A.stage) - if(3, 4) - M << "[pick("Your windpipe feels thin.", "Your lungs feel small.")]" - Asphyxiate_stage_3_4(M, A) - M.emote("gasp") - else - M << "[pick("Your lungs hurt!", "It hurts to breathe!")]" - Asphyxiate(M, A) - M.emote("gasp") - if(M.getOxyLoss() >= 120) - M.visible_message("[M] stops breathing, as if their lungs have totally collapsed!") - Asphyxiate_death(M, A) - return - -/datum/symptom/asphyxiation/proc/Asphyxiate_stage_3_4(mob/living/M, datum/disease/advance/A) - var/get_damage = sqrt(abs(21+A.totalStageSpeed()*0.7))+sqrt(abs(16+A.totalStealth())) - M.adjustOxyLoss(get_damage) - return 1 - -/datum/symptom/asphyxiation/proc/Asphyxiate(mob/living/M, datum/disease/advance/A) - var/get_damage = sqrt(abs(21+A.totalStageSpeed()))+sqrt(abs(16+A.totalStealth()*5)) - M.adjustOxyLoss(get_damage) - M.reagents.add_reagent_list(list("pancuronium" = 2, "sodium_thiopental" = 2)) - return 1 - -/datum/symptom/asphyxiation/proc/Asphyxiate_death(mob/living/M, datum/disease/advance/A) - var/get_damage = sqrt(abs(21+A.totalStageSpeed()*1.5))+sqrt(abs(16+A.totalStealth()*7)) - M.adjustOxyLoss(get_damage) - M.adjustBrainLoss(get_damage/2) - return 1 + return 1 \ No newline at end of file diff --git a/code/datums/diseases/advance/symptoms/cough.dm b/code/datums/diseases/advance/symptoms/cough.dm index 9675e23ba7..716ef2cb6f 100644 --- a/code/datums/diseases/advance/symptoms/cough.dm +++ b/code/datums/diseases/advance/symptoms/cough.dm @@ -34,7 +34,7 @@ BONUS M << "[pick("You swallow excess mucus.", "You lightly cough.")]" else M.emote("cough") - var/obj/item/I = M.get_active_held_item() - if(I && I.w_class == WEIGHT_CLASS_TINY) + var/obj/item/I = M.get_active_hand() + if(I && I.w_class == 1) M.drop_item() - return + return \ No newline at end of file diff --git a/code/datums/diseases/advance/symptoms/fever.dm b/code/datums/diseases/advance/symptoms/fever.dm index 47136845ef..8f2beacd29 100644 --- a/code/datums/diseases/advance/symptoms/fever.dm +++ b/code/datums/diseases/advance/symptoms/fever.dm @@ -36,6 +36,6 @@ Bonus return /datum/symptom/fever/proc/Heat(mob/living/M, datum/disease/advance/A) - var/get_heat = (sqrt(max(21,21+A.totalTransmittable()*2)))+(sqrt(max(21,20+A.totalStageSpeed()*3))) + var/get_heat = (sqrt(21+A.totalTransmittable()*2))+(sqrt(20+A.totalStageSpeed()*3)) M.bodytemperature = min(M.bodytemperature + (get_heat * A.stage), BODYTEMP_HEAT_DAMAGE_LIMIT - 1) - return 1 + return 1 \ No newline at end of file diff --git a/code/datums/diseases/advance/symptoms/fire.dm b/code/datums/diseases/advance/symptoms/fire.dm index 087abdd62a..ea80586108 100644 --- a/code/datums/diseases/advance/symptoms/fire.dm +++ b/code/datums/diseases/advance/symptoms/fire.dm @@ -54,69 +54,4 @@ Bonus var/get_stacks = (sqrt(20+A.totalStageSpeed()*3))-(sqrt(16+A.totalStealth())) M.adjust_fire_stacks(get_stacks) M.adjustFireLoss(get_stacks) - return 1 - -/* -////////////////////////////////////// - -Alkali perspiration - - Hidden. - Lowers resistance. - Decreases stage speed. - Decreases transmittablity. - Fatal Level. - -Bonus - Ignites infected mob. - Explodes mob on contact with water. - -////////////////////////////////////// -*/ - -/datum/symptom/alkali - - name = "Alkali perspiration" - stealth = 2 - resistance = -2 - stage_speed = -2 - transmittable = -2 - level = 7 - severity = 6 - -/datum/symptom/alkali/Activate(datum/disease/advance/A) - ..() - if(prob(SYMPTOM_ACTIVATION_PROB)) - var/mob/living/M = A.affected_mob - switch(A.stage) - if(3) - M << "[pick("Your veins boil.", "You feel hot.", "You smell meat cooking.")]" - if(4) - Alkali_fire_stage_4(M, A) - M.IgniteMob() - M << "Your sweat bursts into flames!" - M.emote("scream") - if(5) - Alkali_fire_stage_5(M, A) - M.IgniteMob() - M << "Your skin erupts into an inferno!" - M.emote("scream") - if(M.fire_stacks < 0) - M.visible_message("[M]'s sweat sizzles and pops on contact with water!") - explosion(M.loc,0,0,2) - Alkali_fire_stage_5(M, A) - return - -/datum/symptom/alkali/proc/Alkali_fire_stage_4(mob/living/M, datum/disease/advance/A) - var/get_stacks = (sqrt(20+A.totalStageSpeed()*5)) - M.adjust_fire_stacks(get_stacks) - M.adjustFireLoss(get_stacks/2) - M.reagents.add_reagent("clf3", 1) - return 1 - -/datum/symptom/alkali/proc/Alkali_fire_stage_5(mob/living/M, datum/disease/advance/A) - var/get_stacks = (sqrt(20+A.totalStageSpeed()*8)) - M.adjust_fire_stacks(get_stacks) - M.adjustFireLoss(get_stacks) - M.reagents.add_reagent_list(list("napalm" = 3, "clf3" = 3)) return 1 \ No newline at end of file diff --git a/code/datums/diseases/advance/symptoms/flesh_eating.dm b/code/datums/diseases/advance/symptoms/flesh_eating.dm index 835d2f2e3a..0d3cfc95ce 100644 --- a/code/datums/diseases/advance/symptoms/flesh_eating.dm +++ b/code/datums/diseases/advance/symptoms/flesh_eating.dm @@ -40,49 +40,4 @@ Bonus /datum/symptom/flesh_eating/proc/Flesheat(mob/living/M, datum/disease/advance/A) var/get_damage = ((sqrt(16-A.totalStealth()))*5) M.adjustBruteLoss(get_damage) - return 1 - -/* -////////////////////////////////////// - -Autophagocytosis (AKA Programmed mass cell death) - - Very noticable. - Lowers resistance. - Fast stage speed. - Decreases transmittablity. - Fatal Level. - -Bonus - Deals brute damage over time. - -////////////////////////////////////// -*/ - -/datum/symptom/flesh_death - - name = "Autophagocytosis Necrosis" - stealth = -2 - resistance = -2 - stage_speed = 1 - transmittable = -2 - level = 7 - severity = 6 - -/datum/symptom/flesh_death/Activate(datum/disease/advance/A) - ..() - if(prob(SYMPTOM_ACTIVATION_PROB)) - var/mob/living/M = A.affected_mob - switch(A.stage) - if(2,3) - M << "[pick("You feel your body break apart.", "Your skin rubs off like dust.")]" - if(4,5) - M << "[pick("You feel your muscles weakening.", "Your skin begins detaching itself.", "You feel sandy.")]" - Flesh_death(M, A) - return - -/datum/symptom/flesh_death/proc/Flesh_death(mob/living/M, datum/disease/advance/A) - var/get_damage = ((sqrt(16-A.totalStealth()))*6) - M.adjustBruteLoss(get_damage) - M.reagents.add_reagent_list(list("heparin" = 5, "lipolicide" = 5)) return 1 \ No newline at end of file diff --git a/code/datums/diseases/advance/symptoms/genetics.dm b/code/datums/diseases/advance/symptoms/genetics.dm index 2d0b613db5..21ee88e7cc 100644 --- a/code/datums/diseases/advance/symptoms/genetics.dm +++ b/code/datums/diseases/advance/symptoms/genetics.dm @@ -29,15 +29,15 @@ Bonus /datum/symptom/genetic_mutation/Activate(datum/disease/advance/A) ..() - if(prob(SYMPTOM_ACTIVATION_PROB * 3)) // 15% chance - var/mob/living/carbon/C = A.affected_mob - if(!C.has_dna()) + if(prob(SYMPTOM_ACTIVATION_PROB * 5)) // 15% chance + var/mob/living/carbon/M = A.affected_mob + if(!M.has_dna()) return switch(A.stage) if(4, 5) - C << "[pick("Your skin feels itchy.", "You feel light headed.")]" - C.dna.remove_mutation_group(possible_mutations) - C.randmut(possible_mutations) + M << "[pick("Your skin feels itchy.", "You feel light headed.")]" + M.dna.remove_mutation_group(possible_mutations) + randmut(M, possible_mutations) return // Archive their DNA before they were infected. diff --git a/code/datums/diseases/advance/symptoms/hallucigen.dm b/code/datums/diseases/advance/symptoms/hallucigen.dm index 40850f871d..fa1641717b 100644 --- a/code/datums/diseases/advance/symptoms/hallucigen.dm +++ b/code/datums/diseases/advance/symptoms/hallucigen.dm @@ -36,6 +36,6 @@ Bonus M << "[pick("Something is following you.", "You are being watched.", "You hear a whisper in your ear.", "Thumping footsteps slam toward you from nowhere.")]" else M << "[pick("Oh, your head...", "Your head pounds.", "They're everywhere! Run!", "Something in the shadows...")]" - M.hallucination += 25 + M.hallucination += 5 return diff --git a/code/datums/diseases/advance/symptoms/heal.dm b/code/datums/diseases/advance/symptoms/heal.dm index 5dab133a86..830210b816 100644 --- a/code/datums/diseases/advance/symptoms/heal.dm +++ b/code/datums/diseases/advance/symptoms/heal.dm @@ -26,231 +26,99 @@ Bonus /datum/symptom/heal/Activate(datum/disease/advance/A) ..() - //100% chance to activate for slow but consistent healing - var/mob/living/M = A.affected_mob - switch(A.stage) - if(4, 5) - Heal(M, A) + if(prob(SYMPTOM_ACTIVATION_PROB * 10)) + var/mob/living/M = A.affected_mob + switch(A.stage) + if(4, 5) + Heal(M, A) return /datum/symptom/heal/proc/Heal(mob/living/M, datum/disease/advance/A) - var/heal_amt = 0.5 - if(M.toxloss > 0 && prob(20)) - PoolOrNew(/obj/effect/overlay/temp/heal, list(get_turf(M), "#66FF99")) - M.adjustToxLoss(-heal_amt) + var/get_damage = (sqrt(20+A.totalStageSpeed())*(1+rand())) + M.adjustToxLoss(-get_damage) return 1 /* ////////////////////////////////////// -Apoptosis +Metabolism + Little bit hidden. Lowers resistance. Decreases stage speed. - Decreases transmittablity. - -Bonus - Heals toxins in the affected mob's blood stream faster. - -////////////////////////////////////// -*/ - -/datum/symptom/heal/plus - - name = "Apoptoxin filter" - stealth = 0 - resistance = -2 - stage_speed = -2 - transmittable = -2 - level = 8 - -/datum/symptom/heal/plus/Heal(mob/living/M, datum/disease/advance/A) - var/heal_amt = 1 - if(M.toxloss > 0 && prob(20)) - PoolOrNew(/obj/effect/overlay/temp/heal, list(get_turf(M), "#00FF00")) - M.adjustToxLoss(-heal_amt) - return 1 - -/* -////////////////////////////////////// - -Regeneration - - Little bit hidden. - Lowers resistance tremendously. - Decreases stage speed tremendously. Decreases transmittablity temrendously. - Fatal Level. + High Level. Bonus - Heals brute damage slowly over time. + Cures all diseases (except itself) and creates anti-bodies for them until the symptom dies. ////////////////////////////////////// */ -/datum/symptom/heal/brute +/datum/symptom/heal/metabolism - name = "Regeneration" - stealth = 1 - resistance = -4 - stage_speed = -4 + name = "Anti-Bodies Metabolism" + stealth = -1 + resistance = -1 + stage_speed = -1 transmittable = -4 - level = 6 + level = 3 + var/list/cured_diseases = list() -/datum/symptom/heal/brute/Heal(mob/living/carbon/M, datum/disease/advance/A) - var/heal_amt = 1 - - var/list/parts = M.get_damaged_bodyparts(1,1) //1,1 because it needs inputs. - - if(!parts.len) - return - - for(var/obj/item/bodypart/L in parts) - if(L.heal_damage(heal_amt/parts.len, 0)) - M.update_damage_overlays() - - if(prob(20)) - PoolOrNew(/obj/effect/overlay/temp/heal, list(get_turf(M), "#FF3333")) - - return 1 +/datum/symptom/heal/metabolism/Heal(mob/living/M, datum/disease/advance/A) + var/cured = 0 + for(var/datum/disease/D in M.viruses) + if(D != A) + cured = 1 + cured_diseases += D.GetDiseaseID() + D.cure() + if(cured) + M << "You feel much better." +/datum/symptom/heal/metabolism/End(datum/disease/advance/A) + // Remove all the diseases we cured. + var/mob/living/M = A.affected_mob + if(istype(M)) + if(cured_diseases.len) + for(var/res in M.resistances) + if(res in cured_diseases) + M.resistances -= res + M << "You feel weaker." /* ////////////////////////////////////// -Flesh Mending +Longevity - No resistance change. - Decreases stage speed. - Decreases transmittablity. - Fatal Level. + Medium hidden boost. + Large resistance boost. + Large stage speed boost. + Large transmittablity boost. + High Level. Bonus - Heals brute damage over time. Turns cloneloss into burn damage. + After a certain amount of time the symptom will cure itself. ////////////////////////////////////// */ -/datum/symptom/heal/brute/plus +/datum/symptom/heal/longevity - name = "Flesh Mending" - stealth = 0 - resistance = 0 - stage_speed = -2 - transmittable = -2 - level = 8 + name = "Longevity" + stealth = 3 + resistance = 4 + stage_speed = 4 + transmittable = 4 + level = 3 + var/longevity = 30 -/datum/symptom/heal/brute/plus/Heal(mob/living/carbon/M, datum/disease/advance/A) - var/heal_amt = 2 - - var/list/parts = M.get_damaged_bodyparts(1,1) //1,1 because it needs inputs. - - if(M.getCloneLoss() > 0) - M.adjustCloneLoss(-1) - M.take_bodypart_damage(0, 1) //Deals BURN damage, which is not cured by this symptom - PoolOrNew(/obj/effect/overlay/temp/heal, list(get_turf(M), "#33FFCC")) - - if(!parts.len) - return - - for(var/obj/item/bodypart/L in parts) - if(L.heal_damage(heal_amt/parts.len, 0)) - M.update_damage_overlays() - - if(prob(20)) - PoolOrNew(/obj/effect/overlay/temp/heal, list(get_turf(M), "#CC1100")) - - return 1 - -/* -////////////////////////////////////// - -Tissue Regrowth - - Little bit hidden. - Lowers resistance tremendously. - Decreases stage speed tremendously. - Decreases transmittablity temrendously. - Fatal Level. - -Bonus - Heals burn damage slowly over time. - -////////////////////////////////////// -*/ - -/datum/symptom/heal/burn - - name = "Tissue Regrowth" - stealth = 1 - resistance = -4 - stage_speed = -4 - transmittable = -4 - level = 6 - -/datum/symptom/heal/burn/Heal(mob/living/carbon/M, datum/disease/advance/A) - var/heal_amt = 1 - - var/list/parts = M.get_damaged_bodyparts(1,1) //1,1 because it needs inputs. - - if(!parts.len) - return - - for(var/obj/item/bodypart/L in parts) - if(L.heal_damage(0, heal_amt/parts.len)) - M.update_damage_overlays() - - if(prob(20)) - PoolOrNew(/obj/effect/overlay/temp/heal, list(get_turf(M), "#FF9933")) - return 1 - - -/* -////////////////////////////////////// - -Heat Resistance //Needs a better name - - No resistance change. - Decreases stage speed. - Decreases transmittablity. - Fatal Level. - -Bonus - Heals burn damage over time, and helps stabilize body temperature. - -////////////////////////////////////// -*/ - -/datum/symptom/heal/burn/plus - - name = "Heat Resistance" - stealth = 0 - resistance = 0 - stage_speed = -2 - transmittable = -2 - level = 8 - -/datum/symptom/heal/burn/plus/Heal(mob/living/carbon/M, datum/disease/advance/A) - var/heal_amt = 2 - - var/list/parts = M.get_damaged_bodyparts(1,1) //1,1 because it needs inputs. - - if(M.bodytemperature > 310) - M.bodytemperature = max(310, M.bodytemperature - (10 * heal_amt * TEMPERATURE_DAMAGE_COEFFICIENT)) - else if(M.bodytemperature < 311) - M.bodytemperature = min(310, M.bodytemperature + (10 * heal_amt * TEMPERATURE_DAMAGE_COEFFICIENT)) - - if(!parts.len) - return - - for(var/obj/item/bodypart/L in parts) - if(L.heal_damage(0, heal_amt/parts.len)) - M.update_damage_overlays() - - if(prob(20)) - PoolOrNew(/obj/effect/overlay/temp/heal, list(get_turf(M), "#CC6600")) - return 1 +/datum/symptom/heal/longevity/Heal(mob/living/M, datum/disease/advance/A) + longevity -= 1 + if(!longevity) + A.cure() +/datum/symptom/heal/longevity/Start(datum/disease/advance/A) + longevity = rand(initial(longevity) - 5, initial(longevity) + 5) /* ////////////////////////////////////// @@ -279,10 +147,12 @@ Bonus level = 5 /datum/symptom/heal/dna/Heal(mob/living/carbon/M, datum/disease/advance/A) - var/amt_healed = 1 + var/stage_speed = max( 20 + A.totalStageSpeed(), 0) + var/stealth_amount = max( 16 + A.totalStealth(), 0) + var/amt_healed = (sqrt(stage_speed*(3+rand())))-(sqrt(stealth_amount*rand())) M.adjustBrainLoss(-amt_healed) //Non-power mutations, excluding race, so the virus does not force monkey -> human transformations. var/list/unclean_mutations = (not_good_mutations|bad_mutations) - mutations_list[RACEMUT] M.dna.remove_mutation_group(unclean_mutations) - M.radiation = max(M.radiation - (2 * amt_healed), 0) + M.radiation = max(M.radiation - 3, 0) return 1 diff --git a/code/datums/diseases/advance/symptoms/oxygen.dm b/code/datums/diseases/advance/symptoms/oxygen.dm index ce17524130..785b1cd8d7 100644 --- a/code/datums/diseases/advance/symptoms/oxygen.dm +++ b/code/datums/diseases/advance/symptoms/oxygen.dm @@ -26,13 +26,13 @@ Bonus /datum/symptom/oxygen/Activate(datum/disease/advance/A) ..() - var/mob/living/M = A.affected_mob - switch(A.stage) - if(4, 5) - M.adjustOxyLoss(-3, 0) - if(M.losebreath >= 4) - M.losebreath -= 2 - else - if(prob(SYMPTOM_ACTIVATION_PROB * 3)) - M << "[pick("Your lungs feel great.", "You realize you haven't been breathing.", "You don't feel the need to breathe.")]" + if(prob(SYMPTOM_ACTIVATION_PROB * 5)) + var/mob/living/M = A.affected_mob + switch(A.stage) + if(4, 5) + if (M.reagents.get_reagent_amount("salbutamol") < 20) + M.reagents.add_reagent("salbutamol", 20) + else + if(prob(SYMPTOM_ACTIVATION_PROB * 5)) + M << "[pick("Your lungs feel great.", "You realize you haven't been breathing.", "You don't feel the need to breathe.")]" return diff --git a/code/datums/diseases/advance/symptoms/sensory.dm b/code/datums/diseases/advance/symptoms/sensory.dm index 7536b11ca8..46fc14c58e 100644 --- a/code/datums/diseases/advance/symptoms/sensory.dm +++ b/code/datums/diseases/advance/symptoms/sensory.dm @@ -26,30 +26,24 @@ Bonus /datum/symptom/sensory_restoration/Activate(var/datum/disease/advance/A) ..() - var/mob/living/M = A.affected_mob - if(A.stage >= 2) - M.setEarDamage(0,0) - - if(A.stage >= 3) - M.dizziness = 0 - M.drowsyness = 0 - M.slurring = 0 - M.confused = 0 - M.reagents.remove_all_type(/datum/reagent/consumable/ethanol, 3) - if(ishuman(M)) - var/mob/living/carbon/human/H = M - H.drunkenness = max(H.drunkenness - 10, 0) - - if(A.stage >= 4) - M.drowsyness = max(M.drowsyness-5, 0) - if(M.reagents.has_reagent("mindbreaker")) - M.reagents.remove_reagent("mindbreaker", 5) - if(M.reagents.has_reagent("histamine")) - M.reagents.remove_reagent("histamine", 5) - M.hallucination = max(0, M.hallucination - 10) - - if(A.stage >= 5) - M.adjustBrainLoss(-3) + if(prob(SYMPTOM_ACTIVATION_PROB * 3)) + var/mob/living/M = A.affected_mob + switch(A.stage) + if(2) + if(M.reagents.get_reagent_amount("inacusiate")<10) + M.reagents.add_reagent("inacusiate", 10) + M << "Your hearing feels clearer and crisp." + if(3) + if(M.reagents.get_reagent_amount("antihol") < 10 && M.reagents.get_reagent_amount("inacusiate") < 10 ) + M.reagents.add_reagent_list(list("antihol"=10, "inacusiate"=10)) + M << "You feel sober." + if(4) + if(M.reagents.get_reagent_amount("antihol") < 10 && M.reagents.get_reagent_amount("inacusiate") < 10 && M.reagents.get_reagent_amount("synaphydramine") < 10) + M.reagents.add_reagent_list(list("antihol"=10, "inacusiate"=10, "synaphydramine"=5)) + M << "You feel focused." + if(5) + if(M.reagents.get_reagent_amount("antihol") < 10 && M.reagents.get_reagent_amount("inacusiate") < 10 && M.reagents.get_reagent_amount("synaphydramine") < 10 && M.reagents.get_reagent_amount("mannitol") < 10) + M.reagents.add_reagent_list(list("mannitol"=10, "antihol"=10, "inacusiate"=10, "synaphydramine"=10)) return /* @@ -78,54 +72,30 @@ Bonus transmittable = -4 level = 6 severity = 5 - var/sleepy = 0 - var/sleepy_ticks = 0 /datum/symptom/sensory_destruction/Activate(var/datum/disease/advance/A) ..() - var/mob/living/M = A.affected_mob if(prob(SYMPTOM_ACTIVATION_PROB)) + var/mob/living/M = A.affected_mob switch(A.stage) if(1) M << "You can't feel anything." if(2) M << "You feel absolutely hammered." if(prob(10)) - sleepy_ticks += rand(10,14) + M.reagents.add_reagent("morphine",rand(5,7)) if(3) M.reagents.add_reagent("ethanol",rand(5,7)) M << "You try to focus on not dying." if(prob(15)) - sleepy_ticks += rand(10,14) + M.reagents.add_reagent("morphine",rand(5,7)) if(4) - M.reagents.add_reagent("ethanol",rand(6,10)) + M.reagents.add_reagent_list(list("ethanol" = rand(7,15), "mindbreaker" = rand(5,10))) M << "u can count 2 potato!" if(prob(20)) - sleepy_ticks += rand(10,14) + M.reagents.add_reagent("morphine",rand(5,7)) if(5) - M.reagents.add_reagent("ethanol",rand(7,13)) + M.reagents.add_reagent_list(list("impedrezene" = rand(5,15), "ethanol" = rand(7,20), "mindbreaker" = rand(5,15))) if(prob(25)) - sleepy_ticks += rand(10,14) - - if(sleepy_ticks) - if(A.stage>=4) - M.hallucination = min(M.hallucination + 10, 50) - if(A.stage>=5) - if(prob(80)) - M.adjustBrainLoss(1) - if(prob(50)) - M.drowsyness = max(M.drowsyness, 3) - sleepy++ - sleepy_ticks-- - else - sleepy = 0 - - switch(sleepy) //Works like morphine - if(11) - M << "You start to feel tired..." - if(12 to 24) - M.drowsyness += 1 - if(24 to INFINITY) - M.Sleeping(2, 0) - + M.reagents.add_reagent("morphine",rand(5,7)) return diff --git a/code/datums/diseases/advance/symptoms/shedding.dm b/code/datums/diseases/advance/symptoms/shedding.dm index 70e2c4597f..76ae6dc0f3 100644 --- a/code/datums/diseases/advance/symptoms/shedding.dm +++ b/code/datums/diseases/advance/symptoms/shedding.dm @@ -29,7 +29,7 @@ BONUS if(prob(SYMPTOM_ACTIVATION_PROB)) var/mob/living/M = A.affected_mob M << "[pick("Your scalp itches.", "Your skin feels flakey.")]" - if(ishuman(M)) + if(istype(M, /mob/living/carbon/human)) var/mob/living/carbon/human/H = M switch(A.stage) if(3, 4) diff --git a/code/datums/diseases/advance/symptoms/skin.dm b/code/datums/diseases/advance/symptoms/skin.dm index 09b0f0a6de..09ffbdf7e8 100644 --- a/code/datums/diseases/advance/symptoms/skin.dm +++ b/code/datums/diseases/advance/symptoms/skin.dm @@ -28,7 +28,7 @@ BONUS ..() if(prob(SYMPTOM_ACTIVATION_PROB)) var/mob/living/M = A.affected_mob - if(ishuman(M)) + if(istype(M, /mob/living/carbon/human)) var/mob/living/carbon/human/H = M if(H.skin_tone == "albino") return @@ -72,7 +72,7 @@ BONUS ..() if(prob(SYMPTOM_ACTIVATION_PROB)) var/mob/living/M = A.affected_mob - if(ishuman(M)) + if(istype(M, /mob/living/carbon/human)) var/mob/living/carbon/human/H = M if(H.skin_tone == "african2") return diff --git a/code/datums/diseases/advance/symptoms/symptoms.dm b/code/datums/diseases/advance/symptoms/symptoms.dm index 4b9de79c7a..1246b68fd0 100644 --- a/code/datums/diseases/advance/symptoms/symptoms.dm +++ b/code/datums/diseases/advance/symptoms/symptoms.dm @@ -3,7 +3,7 @@ var/list/list_symptoms = subtypesof(/datum/symptom) var/list/dictionary_symptoms = list() -var/global/const/SYMPTOM_ACTIVATION_PROB = 5 +var/global/const/SYMPTOM_ACTIVATION_PROB = 3 /datum/symptom // Buffs/Debuffs the symptom has to the overall engineered disease. diff --git a/code/datums/diseases/advance/symptoms/viral.dm b/code/datums/diseases/advance/symptoms/viral.dm index 7c409f00d1..fafac33b2c 100644 --- a/code/datums/diseases/advance/symptoms/viral.dm +++ b/code/datums/diseases/advance/symptoms/viral.dm @@ -62,46 +62,4 @@ BONUS if(1) M << "You feel better, but no different from before." if(5) - M << "You feel off, but nothing interesting happens." - -/* -////////////////////////////////////// - -Viral aggressive metabolism (ex-Longevity) - - No stealth. - Small resistance boost. - Reduced stage speed. - Large transmittablity boost. - High Level. - -Bonus - The virus starts at stage 5 and decrease over time until it self cures. - Stages still increase naturally with stage speed. - -////////////////////////////////////// -*/ - -/datum/symptom/viralreverse - - name = "Viral aggressive metabolism" - stealth = 0 - resistance = 1 - stage_speed = -2 - transmittable = 3 - level = 3 - -/datum/symptom/viralreverse/Activate(datum/disease/advance/A) - ..() - if(prob(SYMPTOM_ACTIVATION_PROB)) - var/mob/living/M = A.affected_mob - Heal(M, A) - return - -/datum/symptom/viralreverse/proc/Heal(mob/living/M, datum/disease/advance/A) - A.stage -= 1 - if(A.stage < 2) - A.cure() - -/datum/symptom/viralreverse/Start(datum/disease/advance/A) - A.stage = 5 + M << "You feel off, but nothing interesting happens." \ No newline at end of file diff --git a/code/datums/diseases/advance/symptoms/vision.dm b/code/datums/diseases/advance/symptoms/vision.dm index d2f1dab5c7..9d348506dc 100644 --- a/code/datums/diseases/advance/symptoms/vision.dm +++ b/code/datums/diseases/advance/symptoms/vision.dm @@ -75,27 +75,13 @@ Bonus /datum/symptom/visionaid/Activate(datum/disease/advance/A) ..() - var/mob/living/M = A.affected_mob - switch(A.stage) - if(4, 5) //basically oculine - if(M.disabilities & BLIND) - if(prob(20)) - M << "Your vision slowly returns..." - M.cure_blind() - M.cure_nearsighted() - M.blur_eyes(35) - - else if(M.disabilities & NEARSIGHT) - M << "The blackness in your peripheral vision fades." - M.cure_nearsighted() - M.blur_eyes(10) - - else if(M.eye_blind || M.eye_blurry) - M.set_blindness(0) - M.set_blurriness(0) - else if(M.eye_damage > 0) - M.adjust_eye_damage(-1) - else - if(prob(SYMPTOM_ACTIVATION_PROB * 3)) - M << "[pick("Your eyes feel great.", "You are now blinking manually.", "You don't feel the need to blink.")]" + if(prob(SYMPTOM_ACTIVATION_PROB * 5)) + var/mob/living/M = A.affected_mob + switch(A.stage) + if(4, 5) + if (M.reagents.get_reagent_amount("oculine") < 20) + M.reagents.add_reagent("oculine", 20) + else + if(prob(SYMPTOM_ACTIVATION_PROB * 5)) + M << "[pick("Your eyes feel great.", "You are now blinking manually.", "You don't feel the need to blink.")]" return diff --git a/code/datums/diseases/advance/symptoms/youth.dm b/code/datums/diseases/advance/symptoms/youth.dm index 731350de1f..0a3d110b03 100644 --- a/code/datums/diseases/advance/symptoms/youth.dm +++ b/code/datums/diseases/advance/symptoms/youth.dm @@ -28,7 +28,7 @@ BONUS ..() if(prob(SYMPTOM_ACTIVATION_PROB * 2)) var/mob/living/M = A.affected_mob - if(ishuman(M)) + if(istype(M, /mob/living/carbon/human)) var/mob/living/carbon/human/H = M switch(A.stage) if(1) diff --git a/code/datums/diseases/dna_spread.dm b/code/datums/diseases/dna_spread.dm index e3836e7442..26d0e722da 100644 --- a/code/datums/diseases/dna_spread.dm +++ b/code/datums/diseases/dna_spread.dm @@ -18,7 +18,7 @@ ..() if(!affected_mob.dna) cure() - if(NOTRANSSTING in affected_mob.dna.species.species_traits) //Only species that can be spread by transformation sting can be spread by the retrovirus + if(NOTRANSSTING in affected_mob.dna.species.specflags) //Only species that can be spread by transformation sting can be spread by the retrovirus cure() if(!strain_data["dna"]) @@ -38,7 +38,7 @@ if(prob(1)) affected_mob << "Your muscles ache." if(prob(20)) - affected_mob.take_bodypart_damage(1) + affected_mob.take_organ_damage(1) if(prob(1)) affected_mob << "Your stomach hurts." if(prob(20)) diff --git a/code/datums/diseases/flu.dm b/code/datums/diseases/flu.dm index fa157ff81e..67cc9ff8ab 100644 --- a/code/datums/diseases/flu.dm +++ b/code/datums/diseases/flu.dm @@ -26,7 +26,7 @@ if(prob(1)) affected_mob << "Your muscles ache." if(prob(20)) - affected_mob.take_bodypart_damage(1) + affected_mob.take_organ_damage(1) if(prob(1)) affected_mob << "Your stomach hurts." if(prob(20)) @@ -45,7 +45,7 @@ if(prob(1)) affected_mob << "Your muscles ache." if(prob(20)) - affected_mob.take_bodypart_damage(1) + affected_mob.take_organ_damage(1) if(prob(1)) affected_mob << "Your stomach hurts." if(prob(20)) diff --git a/code/datums/diseases/fluspanish.dm b/code/datums/diseases/fluspanish.dm index 4c09ec188f..49137ce2d6 100644 --- a/code/datums/diseases/fluspanish.dm +++ b/code/datums/diseases/fluspanish.dm @@ -22,7 +22,7 @@ affected_mob.emote("cough") if(prob(1)) affected_mob << "You're burning in your own skin!" - affected_mob.take_bodypart_damage(0,5) + affected_mob.take_organ_damage(0,5) if(3) affected_mob.bodytemperature += 20 @@ -32,5 +32,5 @@ affected_mob.emote("cough") if(prob(5)) affected_mob << "You're burning in your own skin!" - affected_mob.take_bodypart_damage(0,5) + affected_mob.take_organ_damage(0,5) return diff --git a/code/datums/diseases/magnitis.dm b/code/datums/diseases/magnitis.dm index 0cec97af40..f24ae10c34 100644 --- a/code/datums/diseases/magnitis.dm +++ b/code/datums/diseases/magnitis.dm @@ -22,8 +22,7 @@ if(!M.anchored && (M.flags & CONDUCT)) step_towards(M,affected_mob) for(var/mob/living/silicon/S in orange(2,affected_mob)) - if(isAI(S)) - continue + if(istype(S, /mob/living/silicon/ai)) continue step_towards(S,affected_mob) if(3) if(prob(2)) @@ -38,8 +37,7 @@ for(i=0,i[parrot] is violently driven out of [affected_mob]!", "[parrot] bursts out of your chest!") - ..() \ No newline at end of file diff --git a/code/datums/diseases/rhumba_beat.dm b/code/datums/diseases/rhumba_beat.dm index 52be54ca0f..3a8600c61a 100644 --- a/code/datums/diseases/rhumba_beat.dm +++ b/code/datums/diseases/rhumba_beat.dm @@ -12,17 +12,21 @@ /datum/disease/rhumba_beat/stage_act() ..() - if(affected_mob.ckey == "rosham") - src.cure() - return switch(stage) + if(1) + if(affected_mob.ckey == "rosham") + src.cure() if(2) + if(affected_mob.ckey == "rosham") + src.cure() if(prob(45)) affected_mob.adjustToxLoss(5) affected_mob.updatehealth() if(prob(1)) affected_mob << "You feel strange..." if(3) + if(affected_mob.ckey == "rosham") + src.cure() if(prob(5)) affected_mob << "You feel the urge to dance..." else if(prob(5)) @@ -30,6 +34,8 @@ else if(prob(10)) affected_mob << "You feel the need to chick chicky boom..." if(4) + if(affected_mob.ckey == "rosham") + src.cure() if(prob(10)) affected_mob.emote("gasp") affected_mob << "You feel a burning beat inside..." @@ -37,8 +43,10 @@ affected_mob.adjustToxLoss(5) affected_mob.updatehealth() if(5) + if(affected_mob.ckey == "rosham") + src.cure() affected_mob << "Your body is unable to contain the Rhumba Beat..." if(prob(50)) affected_mob.gib() else - return + return \ No newline at end of file diff --git a/code/datums/diseases/transformation.dm b/code/datums/diseases/transformation.dm index 5b3d18cd37..7bad7a0128 100644 --- a/code/datums/diseases/transformation.dm +++ b/code/datums/diseases/transformation.dm @@ -45,13 +45,16 @@ if(affected_mob.notransform) return affected_mob.notransform = 1 - for(var/obj/item/W in affected_mob.get_equipped_items()) - affected_mob.unEquip(W) - for(var/obj/item/I in affected_mob.held_items) - affected_mob.unEquip(I) + for(var/obj/item/W in affected_mob) + if(istype(W, /obj/item/weapon/implant)) + qdel(W) + continue + W.layer = initial(W.layer) + W.loc = affected_mob.loc + W.dropped(affected_mob) var/mob/living/new_mob = new new_form(affected_mob.loc) if(istype(new_mob)) - new_mob.a_intent = INTENT_HARM + new_mob.a_intent = "harm" if(affected_mob.mind) affected_mob.mind.transfer_to(new_mob) else @@ -236,4 +239,4 @@ stage3 = list("Your appendages are melting away.", "Your limbs begin to lose their shape.") stage4 = list("You're ravenous.") stage5 = list("You have become a morph.") - new_form = /mob/living/simple_animal/hostile/morph + new_form = /mob/living/simple_animal/hostile/morph \ No newline at end of file diff --git a/code/datums/diseases/wizarditis.dm b/code/datums/diseases/wizarditis.dm index e336d36a48..8df374e2d0 100644 --- a/code/datums/diseases/wizarditis.dm +++ b/code/datums/diseases/wizarditis.dm @@ -55,7 +55,7 @@ STI KALY - blind /datum/disease/wizarditis/proc/spawn_wizard_clothes(chance = 0) - if(ishuman(affected_mob)) + if(istype(affected_mob, /mob/living/carbon/human)) var/mob/living/carbon/human/H = affected_mob if(prob(chance)) if(!istype(H.head, /obj/item/clothing/head/wizard)) @@ -70,17 +70,20 @@ STI KALY - blind H.equip_to_slot_or_del(new /obj/item/clothing/suit/wizrobe(H), slot_wear_suit) return if(prob(chance)) - if(!istype(H.shoes, /obj/item/clothing/shoes/sandal/magic)) + if(!istype(H.shoes, /obj/item/clothing/shoes/sandal)) if(!H.unEquip(H.shoes)) qdel(H.shoes) - H.equip_to_slot_or_del(new /obj/item/clothing/shoes/sandal/magic(H), slot_shoes) + H.equip_to_slot_or_del(new /obj/item/clothing/shoes/sandal(H), slot_shoes) return else var/mob/living/carbon/H = affected_mob if(prob(chance)) - var/obj/item/weapon/staff/S = new(H) - if(!H.put_in_hands(S)) - qdel(S) + if(!istype(H.r_hand, /obj/item/weapon/staff)) + H.drop_r_hand() + H.put_in_r_hand( new /obj/item/weapon/staff(H) ) + return + return + /datum/disease/wizarditis/proc/teleport() diff --git a/code/datums/dna.dm b/code/datums/dna.dm index e9b21c28ae..6c1a106c82 100644 --- a/code/datums/dna.dm +++ b/code/datums/dna.dm @@ -1,5 +1,3 @@ - -/////////////////////////// DNA DATUM /datum/dna var/unique_enzymes var/struc_enzymes @@ -11,15 +9,13 @@ var/list/mutations = list() //All mutations are from now on here var/list/temporary_mutations = list() //Timers for temporary mutations var/list/previous = list() //For temporary name/ui/ue/blood_type modifications - var/mob/living/holder + var/mob/living/carbon/holder -/datum/dna/New(mob/living/new_holder) +/datum/dna/New(mob/living/carbon/new_holder) if(new_holder) holder = new_holder /datum/dna/proc/transfer_identity(mob/living/carbon/destination, transfer_SE = 0) - if(!istype(destination)) - return destination.dna.unique_enzymes = unique_enzymes destination.dna.uni_identity = uni_identity destination.dna.blood_type = blood_type @@ -168,36 +164,12 @@ features = random_features() -/datum/dna/stored //subtype used by brain mob's stored_dna - -/datum/dna/stored/add_mutation(mutation_name) //no mutation changes on stored dna. - return - -/datum/dna/stored/remove_mutation(mutation_name) - return - -/datum/dna/stored/check_mutation(mutation_name) - return - -/datum/dna/stored/remove_all_mutations() - return - -/datum/dna/stored/remove_mutation_group(list/group) - return /////////////////////////// DNA MOB-PROCS ////////////////////// /mob/proc/set_species(datum/species/mrace, icon_update = 1) return -/mob/living/brain/set_species(datum/species/mrace, icon_update = 1) - if(mrace) - if(ispath(mrace)) - stored_dna.species = new mrace() - else - stored_dna.species = mrace //not calling any species update procs since we're a brain, not a monkey/human - - /mob/living/carbon/set_species(datum/species/mrace, icon_update = 1) if(mrace && has_dna()) dna.species.on_species_loss(src) @@ -266,7 +238,7 @@ return gender = (deconstruct_block(getblock(dna.uni_identity, DNA_GENDER_BLOCK), 2)-1) ? FEMALE : MALE -/mob/living/carbon/human/updateappearance(icon_update=1, mutcolor_update=0, mutations_overlay_update=0) +mob/living/carbon/human/updateappearance(icon_update=1, mutcolor_update=0, mutations_overlay_update=0) ..() var/structure = dna.uni_identity hair_color = sanitize_hexcolor(getblock(structure, DNA_HAIR_COLOR_BLOCK)) @@ -287,12 +259,12 @@ /mob/proc/domutcheck() return -/mob/living/carbon/domutcheck(force_powers=0) //Set force_powers to 1 to bypass the power chance +/mob/living/carbon/domutcheck() if(!has_dna()) return for(var/datum/mutation/human/A in good_mutations | bad_mutations | not_good_mutations) - if(ismob(A.check_block(src, force_powers))) + if(ismob(A.check_block(src))) return //we got monkeyized/humanized, this mob will be deleted, no need to continue. update_mutations_overlay() @@ -316,46 +288,41 @@ return 0 return getleftblocks(istring, blocknumber, blocksize) + replacement + getrightblocks(istring, blocknumber, blocksize) -/mob/living/carbon/proc/randmut(list/candidates, difficulty = 2) - if(!has_dna()) +/proc/randmut(mob/living/carbon/M, list/candidates, difficulty = 2) + if(!M.has_dna()) return var/datum/mutation/human/num = pick(candidates) - . = num.force_give(src) + . = num.force_give(M) + return -/mob/living/carbon/proc/randmutb() - if(!has_dna()) +/proc/randmutb(mob/living/carbon/M) + if(!M.has_dna()) return var/datum/mutation/human/HM = pick((bad_mutations | not_good_mutations) - mutations_list[RACEMUT]) - . = HM.force_give(src) + . = HM.force_give(M) -/mob/living/carbon/proc/randmutg() - if(!has_dna()) +/proc/randmutg(mob/living/carbon/M) + if(!M.has_dna()) return var/datum/mutation/human/HM = pick(good_mutations) - . = HM.force_give(src) + . = HM.force_give(M) -/mob/living/carbon/proc/randmutvg() - if(!has_dna()) - return - var/datum/mutation/human/HM = pick((good_mutations) - mutations_list[HULK] - mutations_list[DWARFISM]) - . = HM.force_give(src) - -/mob/living/carbon/proc/randmuti() - if(!has_dna()) +/proc/randmuti(mob/living/carbon/M) + if(!M.has_dna()) return var/num = rand(1, DNA_UNI_IDENTITY_BLOCKS) - var/newdna = setblock(dna.uni_identity, num, random_string(DNA_BLOCK_SIZE, hex_characters)) - dna.uni_identity = newdna - updateappearance(mutations_overlay_update=1) + var/newdna = setblock(M.dna.uni_identity, num, random_string(DNA_BLOCK_SIZE, hex_characters)) + M.dna.uni_identity = newdna + return -/mob/living/carbon/proc/clean_dna() - if(!has_dna()) +/proc/clean_dna(mob/living/carbon/M) + if(!M.has_dna()) return - dna.remove_all_mutations() + M.dna.remove_all_mutations() -/mob/living/carbon/proc/clean_randmut(list/candidates, difficulty = 2) - clean_dna() - randmut(candidates, difficulty) +/proc/clean_randmut(mob/living/carbon/M, list/candidates, difficulty = 2) + clean_dna(M) + randmut(M, candidates, difficulty) /proc/scramble_dna(mob/living/carbon/M, ui=FALSE, se=FALSE, probability) if(!M.has_dna()) @@ -389,4 +356,4 @@ value = values return value -/////////////////////////// DNA HELPER-PROCS +/////////////////////////// DNA HELPER-PROCS \ No newline at end of file diff --git a/code/datums/dog_fashion.dm b/code/datums/dog_fashion.dm index 75c8379524..9446d31dc5 100644 --- a/code/datums/dog_fashion.dm +++ b/code/datums/dog_fashion.dm @@ -9,9 +9,7 @@ // This isn't applied to the dog, but stores the icon_state of the // sprite that the associated item uses var/icon_file - var/obj_icon_state - var/obj_alpha - var/obj_color + var/icon_state /datum/dog_fashion/New(mob/M) name = replacetext(name, "REAL_NAME", M.real_name) @@ -32,11 +30,8 @@ D.speak_emote = speak_emote /datum/dog_fashion/proc/get_image(var/dir) - if(icon_file && obj_icon_state) - var/image/corgI = image(icon_file, icon_state = obj_icon_state, dir = dir) - corgI.alpha = obj_alpha - corgI.color = obj_color - return corgI + if(icon_file && icon_state) + return image(icon_file, icon_state = icon_state, dir = dir) /datum/dog_fashion/head @@ -45,6 +40,8 @@ /datum/dog_fashion/back icon_file = 'icons/mob/corgi_back.dmi' +/datum/dog_fashion/head + /datum/dog_fashion/head/helmet name = "Sergeant REAL_NAME" desc = "The ever-loyal, the ever-vigilant." @@ -132,7 +129,7 @@ emote_see = list("stumbles around.", "shivers.") emote_hear = list("howls!","groans.") desc = "Spooky!" - obj_icon_state = "sheet" + icon_state = "sheet" /datum/dog_fashion/head/santa name = "Santa's Corgi Helper" diff --git a/code/datums/gas_overrides.dm b/code/datums/gas_overrides.dm deleted file mode 100644 index c58d5ad176..0000000000 --- a/code/datums/gas_overrides.dm +++ /dev/null @@ -1,5 +0,0 @@ -/datum/proc/freon_gas_act() - return 0 - -/datum/proc/water_vapor_gas_act() // We get it - return 0 // You vape \ No newline at end of file diff --git a/code/datums/helper_datums/getrev.dm b/code/datums/helper_datums/getrev.dm index 6eade8bc14..3d01ae2dce 100644 --- a/code/datums/helper_datums/getrev.dm +++ b/code/datums/helper_datums/getrev.dm @@ -8,24 +8,22 @@ var/global/datum/getrev/revdata = new() /datum/getrev/New() var/head_file = return_file_text(".git/logs/HEAD") - if(SERVERTOOLS && fexists("..\\prtestjob.lk")) - testmerge = file2list("..\\prtestjob.lk") - var/testlen = max(testmerge.len - 1, 0) - var/regex/head_log = new("(\\w{40}) .+> (\\d{10}).+(?=(\n.*(\\w{40}).*){[testlen]}\n*\\Z)") + var/regex/head_log = new("(\\w{40}) (\\w{40}).+> (\\d{10}).+\n\\Z") head_log.Find(head_file) parentcommit = head_log.group[1] - date = unix2date(text2num(head_log.group[2])) - commit = head_log.group[4] + commit = head_log.group[2] + var/unix_time = text2num(head_log.group[3]) + if(SERVERTOOLS && fexists("..\\prtestjob.lk")) + testmerge = file2list("..\\prtestjob.lk") + date = unix2date(unix_time) world.log << "Running /tg/ revision:" world.log << "[date]" + world.log << commit if(testmerge.len) - world.log << commit for(var/line in testmerge) if(line) world.log << "Test merge active of PR #[line]" world.log << "Based off master commit [parentcommit]" - else - world.log << parentcommit world.log << "Current map - [MAP_NAME]" //can't think of anywhere better to put it /client/verb/showrevinfo() @@ -33,7 +31,7 @@ var/global/datum/getrev/revdata = new() set name = "Show Server Revision" set desc = "Check the current server code revision" - if(revdata.parentcommit) + if(revdata.commit) src << "Server revision compiled on: [revdata.date]" if(revdata.testmerge.len) for(var/line in revdata.testmerge) @@ -41,7 +39,7 @@ var/global/datum/getrev/revdata = new() src << "Test merge active of PR #[line]" src << "Based off master commit [revdata.parentcommit]" else - src << "[revdata.parentcommit]" + src << "[revdata.commit]" else src << "Revision unknown" src << "Current Infomational Settings:" diff --git a/code/datums/helper_datums/map_template.dm b/code/datums/helper_datums/map_template.dm index 134a93b6eb..967d7bea64 100644 --- a/code/datums/helper_datums/map_template.dm +++ b/code/datums/helper_datums/map_template.dm @@ -94,8 +94,8 @@ /proc/preloadRuinTemplates() // Still supporting bans by filename - var/list/banned = generateMapList("config/lavaruinblacklist.txt") - banned += generateMapList("config/spaceruinblacklist.txt") + var/list/banned = generateMapList("config/lavaRuinBlacklist.txt") + banned += generateMapList("config/spaceRuinBlacklist.txt") for(var/item in subtypesof(/datum/map_template/ruin)) var/datum/map_template/ruin/ruin_type = item @@ -117,16 +117,12 @@ /proc/preloadShuttleTemplates() - var/list/unbuyable = generateMapList("config/unbuyableshuttles.txt") - for(var/item in subtypesof(/datum/map_template/shuttle)) var/datum/map_template/shuttle/shuttle_type = item if(!(initial(shuttle_type.suffix))) continue var/datum/map_template/shuttle/S = new shuttle_type() - if(unbuyable.Find(S.mappath)) - S.can_be_bought = FALSE shuttle_templates[S.shuttle_id] = S map_templates[S.shuttle_id] = S diff --git a/code/datums/helper_datums/teleport.dm b/code/datums/helper_datums/teleport.dm index 4a5a204c50..312a199b21 100644 --- a/code/datums/helper_datums/teleport.dm +++ b/code/datums/helper_datums/teleport.dm @@ -82,9 +82,9 @@ /datum/teleport/proc/playSpecials(atom/location,datum/effect_system/effect,sound) if(location) if(effect) - addtimer(src, "do_effect", 0, TIMER_NORMAL, location, effect) + addtimer(src, "do_effect", 0, FALSE, location, effect) if(sound) - addtimer(src, "do_sound", 0, TIMER_NORMAL, location, sound) + addtimer(src, "do_sound", 0, FALSE, location, sound) /datum/teleport/proc/do_effect(atom/location, datum/effect_system/effect) src = null @@ -106,8 +106,6 @@ if(!center) center = destination for(var/turf/T in range(precision,center)) - if(T.is_transition_turf()) - continue // Avoid picking these. var/area/A = T.loc if(!A.noteleport) posturfs.Add(T) @@ -116,7 +114,7 @@ else destturf = get_turf(destination) - if(!destturf || !curturf || destturf.is_transition_turf()) + if(!destturf || !curturf) return 0 var/area/A = get_area(curturf) @@ -167,14 +165,14 @@ var/list/bagholding = teleatom.search_contents_for(/obj/item/weapon/storage/backpack/holding) if(bagholding.len) precision = max(rand(1,100)*bagholding.len,100) - if(isliving(teleatom)) + if(istype(teleatom, /mob/living)) var/mob/living/MM = teleatom MM << "The bluespace interface on your bag of holding interferes with the teleport!" return 1 // Safe location finder -/proc/find_safe_turf(zlevel = ZLEVEL_STATION, list/zlevels, extended_safety_checks = FALSE) +/proc/find_safe_turf(zlevel = ZLEVEL_STATION, list/zlevels) if(!zlevels) zlevels = list(zlevel) var/cycles = 1000 @@ -185,7 +183,7 @@ var/z = pick(zlevels) var/random_location = locate(x,y,z) - if(!isfloorturf(random_location)) + if(!(istype(random_location, /turf/open/floor))) continue var/turf/open/floor/F = random_location if(!F.air) @@ -217,11 +215,5 @@ if((pressure <= 20) || (pressure >= 550)) continue - if(extended_safety_checks) - if(istype(F, /turf/open/floor/plating/lava)) //chasms aren't /floor, and so are pre-filtered - var/turf/open/floor/plating/lava/L = F - if(!L.is_safe()) - continue - // DING! You have passed the gauntlet, and are "probably" safe. return F diff --git a/code/datums/hud.dm b/code/datums/hud.dm index d406a0300f..8d58534230 100644 --- a/code/datums/hud.dm +++ b/code/datums/hud.dm @@ -12,6 +12,8 @@ var/datum/atom_hud/huds = list( \ ANTAG_HUD_OPS = new/datum/atom_hud/antag(), \ ANTAG_HUD_WIZ = new/datum/atom_hud/antag(), \ ANTAG_HUD_SHADOW = new/datum/atom_hud/antag(), \ + ANTAG_HUD_HOG_BLUE = new/datum/atom_hud/antag(),\ + ANTAG_HUD_HOG_RED = new/datum/atom_hud/antag(),\ ANTAG_HUD_TRAITOR = new/datum/atom_hud/antag/hidden(),\ ANTAG_HUD_NINJA = new/datum/atom_hud/antag/hidden(),\ ANTAG_HUD_CHANGELING = new/datum/atom_hud/antag/hidden(),\ diff --git a/code/datums/martial.dm b/code/datums/martial.dm index b913998010..bcb4bf8416 100644 --- a/code/datums/martial.dm +++ b/code/datums/martial.dm @@ -6,8 +6,6 @@ var/temporary = 0 var/datum/martial_art/base = null // The permanent style var/deflection_chance = 0 //Chance to deflect projectiles - var/block_chance = 0 //Chance to block melee attacks using items while on throw mode. - var/restraining = 0 //used in cqc's disarm_act to check if the disarmed is being restrained and so whether they should be put in a chokehold or not var/help_verb = null /datum/martial_art/proc/disarm_act(mob/living/carbon/human/A, mob/living/carbon/human/D) @@ -23,7 +21,6 @@ if(D != current_target) current_target = D streak = "" - restraining = 0 streak = streak+element if(length(streak) > max_streak_length) streak = copytext(streak,2) @@ -31,26 +28,16 @@ /datum/martial_art/proc/basic_hit(mob/living/carbon/human/A,mob/living/carbon/human/D) + A.do_attack_animation(D) var/damage = rand(A.dna.species.punchdamagelow, A.dna.species.punchdamagehigh) var/atk_verb = A.dna.species.attack_verb if(D.lying) atk_verb = "kick" - switch(atk_verb) - if("kick") - A.do_attack_animation(D, ATTACK_EFFECT_KICK) - if("slash") - A.do_attack_animation(D, ATTACK_EFFECT_CLAW) - if("smash") - A.do_attack_animation(D, ATTACK_EFFECT_SMASH) - else - A.do_attack_animation(D, ATTACK_EFFECT_PUNCH) - if(!damage) playsound(D.loc, A.dna.species.miss_sound, 25, 1, -1) - D.visible_message("[A] has attempted to [atk_verb] [D]!", \ - "[A] has attempted to [atk_verb] [D]!", null, COMBAT_MESSAGE_RANGE) + D.visible_message("[A] has attempted to [atk_verb] [D]!") add_logs(A, D, "attempted to [atk_verb]") return 0 @@ -59,7 +46,7 @@ playsound(D.loc, A.dna.species.attack_sound, 25, 1, -1) D.visible_message("[A] has [atk_verb]ed [D]!", \ - "[A] has [atk_verb]ed [D]!", null, COMBAT_MESSAGE_RANGE) + "[A] has [atk_verb]ed [D]!") D.apply_damage(damage, BRUTE, affecting, armor_block) @@ -103,15 +90,14 @@ /datum/martial_art/boxing/harm_act(mob/living/carbon/human/A, mob/living/carbon/human/D) - A.do_attack_animation(D, ATTACK_EFFECT_PUNCH) + A.do_attack_animation(D) var/atk_verb = pick("left hook","right hook","straight punch") var/damage = rand(5, 8) + A.dna.species.punchdamagelow if(!damage) playsound(D.loc, A.dna.species.miss_sound, 25, 1, -1) - D.visible_message("[A] has attempted to [atk_verb] [D]!", \ - "[A] has attempted to [atk_verb] [D]!", null, COMBAT_MESSAGE_RANGE) + D.visible_message("[A] has attempted to hit [D] with a [atk_verb]!") add_logs(A, D, "attempted to hit", atk_verb) return 0 @@ -121,11 +107,11 @@ playsound(D.loc, A.dna.species.attack_sound, 25, 1, -1) - D.visible_message("[A] has [atk_verb]ed [D]!", \ - "[A] has [atk_verb]ed [D]!", null, COMBAT_MESSAGE_RANGE) + D.visible_message("[A] has hit [D] with a [atk_verb]!", \ + "[A] has hit [D] with a [atk_verb]!") D.apply_damage(damage, STAMINA, affecting, armor_block) - add_logs(A, D, "punched (boxing) ") + add_logs(A, D, "punched") if(D.getStaminaLoss() > 50) var/knockout_prob = D.getStaminaLoss() + rand(-15,15) if((D.stat != DEAD) && prob(knockout_prob)) @@ -134,7 +120,6 @@ D.apply_effect(10,WEAKEN,armor_block) D.SetSleeping(5) D.forcesay(hit_appends) - add_logs(A, D, "knocked out (boxing) ") else if(D.lying) D.forcesay(hit_appends) return 1 @@ -185,7 +170,6 @@ for(var/turf/T in range(1,A)) turfs.Add(T) R.cast(turfs) - add_logs(A, D, "tornado sweeped(Plasma Fist)") return /datum/martial_art/plasma_fist/proc/Throwback(mob/living/carbon/human/A, mob/living/carbon/human/D) @@ -195,17 +179,15 @@ var/atom/throw_target = get_edge_target_turf(D, get_dir(D, get_step_away(D, A))) D.throw_at(throw_target, 200, 4,A) A.say("HYAH!") - add_logs(A, D, "threw back (Plasma Fist)") return /datum/martial_art/plasma_fist/proc/Plasma(mob/living/carbon/human/A, mob/living/carbon/human/D) - A.do_attack_animation(D, ATTACK_EFFECT_PUNCH) + A.do_attack_animation(D) playsound(D.loc, 'sound/weapons/punch1.ogg', 50, 1, -1) A.say("PLASMA FIST!") D.visible_message("[A] has hit [D] with THE PLASMA FIST TECHNIQUE!", \ "[A] has hit [D] with THE PLASMA FIST TECHNIQUE!") D.gib() - add_logs(A, D, "gibbed (Plasma Fist)") return /datum/martial_art/plasma_fist/harm_act(mob/living/carbon/human/A, mob/living/carbon/human/D) @@ -275,7 +257,7 @@ /datum/martial_art/the_sleeping_carp/proc/wristWrench(mob/living/carbon/human/A, mob/living/carbon/human/D) if(!D.stat && !D.stunned && !D.weakened) - A.do_attack_animation(D, ATTACK_EFFECT_PUNCH) + A.do_attack_animation(D) D.visible_message("[A] grabs [D]'s wrist and wrenches it sideways!", \ "[A] grabs your wrist and violently wrenches it to the side!") playsound(get_turf(A), 'sound/weapons/thudswoosh.ogg', 50, 1, -1) @@ -284,24 +266,22 @@ D.apply_damage(5, BRUTE, pick("l_arm", "r_arm")) D.Stun(3) return 1 - add_logs(A, D, "wrist wrenched (Sleeping Carp)") return basic_hit(A,D) /datum/martial_art/the_sleeping_carp/proc/backKick(mob/living/carbon/human/A, mob/living/carbon/human/D) if(A.dir == D.dir && !D.stat && !D.weakened) - A.do_attack_animation(D, ATTACK_EFFECT_PUNCH) + A.do_attack_animation(D) D.visible_message("[A] kicks [D] in the back!", \ "[A] kicks you in the back, making you stumble and fall!") step_to(D,get_step(D,D.dir),1) D.Weaken(4) playsound(get_turf(D), 'sound/weapons/punch1.ogg', 50, 1, -1) return 1 - add_logs(A, D, "back-kicked (Sleeping Carp)") return basic_hit(A,D) /datum/martial_art/the_sleeping_carp/proc/kneeStomach(mob/living/carbon/human/A, mob/living/carbon/human/D) if(!D.stat && !D.weakened) - A.do_attack_animation(D, ATTACK_EFFECT_KICK) + A.do_attack_animation(D) D.visible_message("[A] knees [D] in the stomach!", \ "[A] winds you with a knee in the stomach!") D.audible_message("[D] gags!") @@ -309,12 +289,11 @@ D.Stun(2) playsound(get_turf(D), 'sound/weapons/punch1.ogg', 50, 1, -1) return 1 - add_logs(A, D, "stomach kneed (Sleeping Carp)") return basic_hit(A,D) /datum/martial_art/the_sleeping_carp/proc/headKick(mob/living/carbon/human/A, mob/living/carbon/human/D) if(!D.stat && !D.weakened) - A.do_attack_animation(D, ATTACK_EFFECT_KICK) + A.do_attack_animation(D) D.visible_message("[A] kicks [D] in the head!", \ "[A] kicks you in the jaw!") D.apply_damage(20, BRUTE, "head") @@ -322,12 +301,11 @@ playsound(get_turf(D), 'sound/weapons/punch1.ogg', 50, 1, -1) D.Stun(4) return 1 - add_logs(A, D, "head kicked (Sleeping Carp)") return basic_hit(A,D) /datum/martial_art/the_sleeping_carp/proc/elbowDrop(mob/living/carbon/human/A, mob/living/carbon/human/D) if(D.weakened || D.resting || D.stat) - A.do_attack_animation(D, ATTACK_EFFECT_PUNCH) + A.do_attack_animation(D) D.visible_message("[A] elbow drops [D]!", \ "[A] piledrives you with their elbow!") if(D.stat) @@ -335,7 +313,6 @@ D.apply_damage(50, BRUTE, "chest") playsound(get_turf(D), 'sound/weapons/punch1.ogg', 75, 1, -1) return 1 - add_logs(A, D, "elbow dropped (Sleeping Carp)") return basic_hit(A,D) /datum/martial_art/the_sleeping_carp/grab_act(mob/living/carbon/human/A, mob/living/carbon/human/D) @@ -347,21 +324,18 @@ else A.start_pulling(D, 1) if(A.pulling) - D.drop_all_held_items() + D.drop_r_hand() + D.drop_l_hand() D.stop_pulling() - if(A.a_intent == INTENT_GRAB) - add_logs(A, D, "grabbed", addition="aggressively") - A.grab_state = GRAB_AGGRESSIVE //Instant aggressive grab - else - add_logs(A, D, "grabbed", addition="passively") - A.grab_state = GRAB_PASSIVE + add_logs(A, D, "grabbed", addition="aggressively") + A.grab_state = GRAB_AGGRESSIVE //Instant aggressive grab return 1 /datum/martial_art/the_sleeping_carp/harm_act(mob/living/carbon/human/A, mob/living/carbon/human/D) add_to_streak("H",D) if(check_streak(A,D)) return 1 - A.do_attack_animation(D, ATTACK_EFFECT_PUNCH) + A.do_attack_animation(D) var/atk_verb = pick("punches", "kicks", "chops", "hits", "slams") D.visible_message("[A] [atk_verb] [D]!", \ "[A] [atk_verb] you!") @@ -370,7 +344,6 @@ if(prob(D.getBruteLoss()) && !D.lying) D.visible_message("[D] stumbles and falls!", "The blow sends you to the ground!") D.Weaken(4) - add_logs(A, D, "[atk_verb] (Sleeping Carp)") return 1 @@ -393,190 +366,6 @@ usr << "Head Kick: Disarm Harm Harm. Decent damage, forces opponent to drop item in hand." usr << "Elbow Drop: Harm Disarm Harm Disarm Harm. Opponent must be on the ground. Deals huge damage, instantly kills anyone in critical condition." -//CQC -#define SLAM_COMBO "GH" -#define KICK_COMBO "HH" -#define RESTRAIN_COMBO "GG" -#define PRESSURE_COMBO "DG" -#define CONSECUTIVE_COMBO "DDH" -/datum/martial_art/cqc - name = "CQC" - help_verb = /mob/living/carbon/human/proc/CQC_help - block_chance = 75 - -/datum/martial_art/cqc/proc/drop_restraining() - restraining = 0 - -/datum/martial_art/cqc/proc/check_streak(mob/living/carbon/human/A, mob/living/carbon/human/D) - if(findtext(streak,SLAM_COMBO)) - streak = "" - Slam(A,D) - return 1 - if(findtext(streak,KICK_COMBO)) - streak = "" - Kick(A,D) - return 1 - if(findtext(streak,RESTRAIN_COMBO)) - streak = "" - Restrain(A,D) - return 1 - if(findtext(streak,PRESSURE_COMBO)) - streak = "" - Pressure(A,D) - return 1 - if(findtext(streak,CONSECUTIVE_COMBO)) - streak = "" - Consecutive(A,D) - return 0 - -/datum/martial_art/cqc/proc/Slam(mob/living/carbon/human/A, mob/living/carbon/human/D) - if(!D.stat || !D.weakened) - D.visible_message("[A] slams [D] into the ground!", \ - "[A] slams you into the ground!") - playsound(get_turf(A), 'sound/weapons/slam.ogg', 50, 1, -1) - D.apply_damage(10, BRUTE) - D.Weaken(6) - add_logs(A, D, "cqc slammed") - return 1 - -/datum/martial_art/cqc/proc/Kick(mob/living/carbon/human/A, mob/living/carbon/human/D) - if(!D.stat || !D.weakened) - D.visible_message("[A] kicks [D] back!", \ - "[A] kicks you back!") - playsound(get_turf(A), 'sound/weapons/cqchit1.ogg', 50, 1, -1) - var/atom/throw_target = get_edge_target_turf(D, A.dir) - D.throw_at(throw_target, 1, 14, A) - D.apply_damage(10, BRUTE) - add_logs(A, D, "cqc kicked") - if(D.weakened && D.stat != DEAD) - D.visible_message("[A] kicks [D]'s head, knocking them out!", \ - "[A] kicks your head, knocking you out!") - playsound(get_turf(A), 'sound/weapons/genhit1.ogg', 50, 1, -1) - D.SetSleeping(15) - D.adjustBrainLoss(25) - return 1 - -/datum/martial_art/cqc/proc/Pressure(mob/living/carbon/human/A, mob/living/carbon/human/D) - D.visible_message("[A] forces their arm on [D]'s neck!") - D.adjustStaminaLoss(60) - playsound(get_turf(A), 'sound/weapons/cqchit1.ogg', 50, 1, -1) - return 1 - -/datum/martial_art/cqc/proc/Restrain(mob/living/carbon/human/A, mob/living/carbon/human/D) - if(restraining) - return - if(!D.stat) - D.visible_message("[A] locks [D] into a restraining position!", \ - "[A] locks you into a restraining position!") - D.adjustStaminaLoss(20) - D.Stun(5) - restraining = 1 - addtimer(src, "drop_restraining", 50, TIMER_UNIQUE) - return 1 - -/datum/martial_art/cqc/proc/Consecutive(mob/living/carbon/human/A, mob/living/carbon/human/D) - if(!D.stat) - D.visible_message("[A] strikes [D]'s abdomen, neck and back consecutively", \ - "[A] strikes your abdomen, neck and back consecutively!") - playsound(get_turf(D), 'sound/weapons/cqchit2.ogg', 50, 1, -1) - var/obj/item/I = D.get_active_held_item() - if(I) - D.drop_item() - A.put_in_hands(I) - D.adjustStaminaLoss(50) - D.apply_damage(25, BRUTE) - return 1 - -/datum/martial_art/cqc/grab_act(mob/living/carbon/human/A, mob/living/carbon/human/D) - add_to_streak("G",D) - if(check_streak(A,D)) - return 1 - if(A.grab_state >= GRAB_AGGRESSIVE) - D.grabbedby(A, 1) - else - A.start_pulling(D, 1) - if(A.pulling) - D.stop_pulling() - add_logs(A, D, "grabbed", addition="aggressively") - A.grab_state = GRAB_AGGRESSIVE //Instant aggressive grab - - return 1 - -/datum/martial_art/cqc/harm_act(mob/living/carbon/human/A, mob/living/carbon/human/D) - add_to_streak("H",D) - if(check_streak(A,D)) - return 1 - add_logs(A, D, "CQC'd") - A.do_attack_animation(D) - var/picked_hit_type = pick("CQC'd", "Big Bossed") - var/bonus_damage = 13 - if(D.weakened || D.resting || D.lying) - bonus_damage += 5 - picked_hit_type = "stomps on" - D.apply_damage(bonus_damage, BRUTE) - if(picked_hit_type == "kicks" || picked_hit_type == "stomps on") - playsound(get_turf(D), 'sound/weapons/cqchit2.ogg', 50, 1, -1) - else - playsound(get_turf(D), 'sound/weapons/cqchit1.ogg', 50, 1, -1) - D.visible_message("[A] [picked_hit_type] [D]!", \ - "[A] [picked_hit_type] you!") - add_logs(A, D, "[picked_hit_type] with CQC") - if(A.resting && !D.stat && !D.weakened) - D.visible_message("[A] leg sweeps [D]!", \ - "[A] leg sweeps you!") - playsound(get_turf(A), 'sound/effects/hit_kick.ogg', 50, 1, -1) - D.apply_damage(10, BRUTE) - D.Weaken(3) - add_logs(A, D, "cqc sweeped") - return 1 - -/datum/martial_art/cqc/disarm_act(mob/living/carbon/human/A, mob/living/carbon/human/D) - add_to_streak("D",D) - if(check_streak(A,D)) - return 1 - if(prob(65)) - if(!D.stat || !D.weakened || !restraining) - var/obj/item/I = D.get_active_held_item() - D.visible_message("[A] strikes [D]'s jaw with their hand!", \ - "[A] strikes your jaw, disorienting you!") - playsound(get_turf(D), 'sound/weapons/cqchit1.ogg', 50, 1, -1) - if(I) - D.drop_item() - A.put_in_hands(I) - D.Jitter(2) - D.apply_damage(5, BRUTE) - else - D.visible_message("[A] attempted to disarm [D]!", \ - "[A] attempted to disarm [D]!") - playsound(D, 'sound/weapons/punchmiss.ogg', 25, 1, -1) - add_logs(A, D, "disarmed with CQC") - if(restraining && A.pulling == D) - D.visible_message("[A] puts [D] into a chokehold!", \ - "[A] puts you into a chokehold!") - D.SetSleeping(20) - restraining = 0 - if(A.grab_state < GRAB_NECK) - A.grab_state = GRAB_NECK - else - restraining = 0 - return 0 - return 1 - -/mob/living/carbon/human/proc/CQC_help() - set name = "Recall Teachings" - set desc = "You try to remember some of the basics of CQC." - set category = "CQC" - - usr << "You try to remember some of the basics of CQC." - - usr << "Slam: Grab Harm. Slam opponent into the ground, weakens and knocks down." - usr << "CQC Kick: Harm Disarm Harm. Knocks opponent away. Knocks out stunned or weakened opponents." - usr << "Restrain: Grab Grab. Locks opponents into a restraining position, disarm to knock them out with a choke hold." - usr << "Pressure: Disarm Grab. Decent stamina damage." - usr << "Consecutive CQC: Harm Harm Disarm. Mainly offensive move, huge damage and decent stamina damage." - - usr << "In addition, by having your throw mode on when being attacked, you enter an active defense mode where you have a chance to block and sometimes even counter attacks done to you." - //ITEMS /obj/item/clothing/gloves/boxing @@ -638,23 +427,6 @@ name = "empty scroll" icon_state = "blankscroll" -/obj/item/weapon/cqc_manual - name = "old manual" - desc = "A small, black manual. There are drawn instructions of tactical hand-to-hand combat." - icon = 'icons/obj/library.dmi' - icon_state ="cqcmanual" - -/obj/item/weapon/cqc_manual/attack_self(mob/living/carbon/human/user) - if(!istype(user) || !user) - return - user <<"You remember the basics of CQC." - var/datum/martial_art/cqc/D = new(null) - D.teach(user) - user.drop_item() - visible_message("[src] beeps ominously, and a moment later it bursts up in flames.") - new /obj/effect/decal/cleanable/ash(get_turf(src)) - qdel(src) - /obj/item/weapon/sleeping_carp_scroll name = "mysterious scroll" desc = "A scroll filled with strange markings. It seems to be drawings of some sort of martial art." @@ -677,7 +449,7 @@ name = "bo staff" desc = "A long, tall staff made of polished wood. Traditionally used in ancient old-Earth martial arts. Can be wielded to both kill and incapacitate." force = 10 - w_class = WEIGHT_CLASS_BULKY + w_class = 4 slot_flags = SLOT_BACK force_unwielded = 10 force_wielded = 24 @@ -701,9 +473,9 @@ var/mob/living/carbon/human/H = user H.apply_damage(2*force, BRUTE, "head") else - user.take_bodypart_damage(2*force) + user.take_organ_damage(2*force) return - if(iscyborg(target)) + if(isrobot(target)) return ..() if(!isliving(target)) return ..() @@ -711,7 +483,7 @@ if(C.stat) user << "It would be dishonorable to attack a foe while they cannot retaliate." return - if(user.a_intent == INTENT_DISARM) + if(user.a_intent == "disarm") if(!wielded) return ..() if(!ishuman(target)) @@ -733,7 +505,7 @@ H.Weaken(4) if(H.staminaloss && !H.sleeping) var/total_health = (H.health - H.staminaloss) - if(total_health <= HEALTH_THRESHOLD_CRIT && !H.stat) + if(total_health <= config.health_threshold_crit && !H.stat) H.visible_message("[user] delivers a heavy hit to [H]'s head, knocking them out cold!", \ "[user] knocks you unconscious!") H.SetSleeping(30) @@ -744,5 +516,4 @@ /obj/item/weapon/twohanded/bostaff/hit_reaction(mob/living/carbon/human/owner, attack_text, final_block_chance) if(wielded) return ..() - return 0 - + return 0 \ No newline at end of file diff --git a/code/datums/martial/krav_maga.dm b/code/datums/martial/krav_maga.dm index f71cc3b97f..8d37e1ee31 100644 --- a/code/datums/martial/krav_maga.dm +++ b/code/datums/martial/krav_maga.dm @@ -17,7 +17,7 @@ H.martial_art.streak = "neck_chop" /datum/action/leg_sweep - name = "Leg Sweep - Trips the victim, knocking them down for a brief moment." + name = "Leg Sweep - Trips the victim, rendering them prone and unable to move for a short time." button_icon_state = "legsweep" /datum/action/leg_sweep/Trigger() @@ -79,17 +79,14 @@ playsound(get_turf(A), 'sound/effects/hit_kick.ogg', 50, 1, -1) D.apply_damage(5, BRUTE) D.Weaken(2) - add_logs(A, D, "leg sweeped") return 1 /datum/martial_art/krav_maga/proc/quick_choke(var/mob/living/carbon/human/A, var/mob/living/carbon/human/D)//is actually lung punch D.visible_message("[A] pounds [D] on the chest!", \ "[A] slams your chest! You can't breathe!") playsound(get_turf(A), 'sound/effects/hit_punch.ogg', 50, 1, -1) - if(D.losebreath <= 10) - D.losebreath = Clamp(D.losebreath + 5, 0, 10) + D.losebreath += 5 D.adjustOxyLoss(10) - add_logs(A, D, "quickchoked") return 1 /datum/martial_art/krav_maga/proc/neck_chop(var/mob/living/carbon/human/A, var/mob/living/carbon/human/D) @@ -97,45 +94,46 @@ "[A] karate chops your neck, rendering you unable to speak!") playsound(get_turf(A), 'sound/effects/hit_punch.ogg', 50, 1, -1) D.apply_damage(5, BRUTE) - if(D.silent <= 10) - D.silent = Clamp(D.silent + 10, 0, 10) - add_logs(A, D, "neck chopped") + D.silent += 10 return 1 -/datum/martial_art/krav_maga/grab_act(var/mob/living/carbon/human/A, var/mob/living/carbon/human/D) +datum/martial_art/krav_maga/grab_act(var/mob/living/carbon/human/A, var/mob/living/carbon/human/D) if(check_streak(A,D)) return 1 - add_logs(A, D, "grabbed with krav maga") ..() /datum/martial_art/krav_maga/harm_act(var/mob/living/carbon/human/A, var/mob/living/carbon/human/D) if(check_streak(A,D)) return 1 add_logs(A, D, "punched") + A.do_attack_animation(D) var/picked_hit_type = pick("punches", "kicks") var/bonus_damage = 10 if(D.weakened || D.resting || D.lying) bonus_damage += 5 picked_hit_type = "stomps on" D.apply_damage(bonus_damage, BRUTE) - if(picked_hit_type == "kicks" || picked_hit_type == "stomps on") - A.do_attack_animation(D, ATTACK_EFFECT_KICK) + if(picked_hit_type == "kicks" || picked_hit_type == "stomps") playsound(get_turf(D), 'sound/effects/hit_kick.ogg', 50, 1, -1) else - A.do_attack_animation(D, ATTACK_EFFECT_PUNCH) playsound(get_turf(D), 'sound/effects/hit_punch.ogg', 50, 1, -1) D.visible_message("[A] [picked_hit_type] [D]!", \ "[A] [picked_hit_type] you!") - add_logs(A, D, "[picked_hit_type] with Krav Maga") return 1 /datum/martial_art/krav_maga/disarm_act(var/mob/living/carbon/human/A, var/mob/living/carbon/human/D) if(check_streak(A,D)) return 1 if(prob(60)) - var/obj/item/I = D.get_active_held_item() - if(I) - if(D.drop_item()) + if(D.hand) + if(istype(D.l_hand, /obj/item)) + var/obj/item/I = D.l_hand + D.drop_item() + A.put_in_hands(I) + else + if(istype(D.r_hand, /obj/item)) + var/obj/item/I = D.r_hand + D.drop_item() A.put_in_hands(I) D.visible_message("[A] has disarmed [D]!", \ "[A] has disarmed [D]!") @@ -144,35 +142,30 @@ D.visible_message("[A] attempted to disarm [D]!", \ "[A] attempted to disarm [D]!") playsound(D, 'sound/weapons/punchmiss.ogg', 25, 1, -1) - add_logs(A, D, "disarmed with krav maga") return 1 //Krav Maga Gloves -/obj/item/clothing/gloves/krav_maga +/obj/item/clothing/gloves/color/black/krav_maga + can_be_cut = 0 var/datum/martial_art/krav_maga/style = new -/obj/item/clothing/gloves/krav_maga/equipped(mob/user, slot) +/obj/item/clothing/gloves/color/black/krav_maga/equipped(mob/user, slot) if(!ishuman(user)) return if(slot == slot_gloves) var/mob/living/carbon/human/H = user style.teach(H,1) -/obj/item/clothing/gloves/krav_maga/dropped(mob/user) +/obj/item/clothing/gloves/color/black/krav_maga/dropped(mob/user) if(!ishuman(user)) return var/mob/living/carbon/human/H = user if(H.get_item_by_slot(slot_gloves) == src) style.remove(H) -/obj/item/clothing/gloves/krav_maga/sec//more obviously named, given to sec +/obj/item/clothing/gloves/color/black/krav_maga/sec//more obviously named, given to sec name = "krav maga gloves" desc = "These gloves can teach you to perform Krav Maga using nanochips." icon_state = "fightgloves" - item_state = "fightgloves" - cold_protection = HANDS - min_cold_protection_temperature = GLOVES_MIN_TEMP_PROTECT - heat_protection = HANDS - max_heat_protection_temperature = GLOVES_MAX_TEMP_PROTECT - resistance_flags = 0 + item_state = "fightgloves" \ No newline at end of file diff --git a/code/datums/martial/wrestling.dm b/code/datums/martial/wrestling.dm index 02a044232e..bb0c8d8962 100644 --- a/code/datums/martial/wrestling.dm +++ b/code/datums/martial/wrestling.dm @@ -112,7 +112,6 @@ /datum/martial_art/wrestling/harm_act(mob/living/carbon/human/A, mob/living/carbon/human/D) if(check_streak(A,D)) return 1 - add_logs(A, D, "punched with wrestling") ..() /datum/martial_art/wrestling/proc/throw_wrassle(mob/living/carbon/human/A, mob/living/carbon/human/D) @@ -185,7 +184,6 @@ D.throw_at(T, 10, 4) D.Weaken(2) - add_logs(A, D, "has thrown with wrestling") return 0 /datum/martial_art/wrestling/proc/slam(mob/living/carbon/human/A, mob/living/carbon/human/D) @@ -299,7 +297,6 @@ D.pixel_y = 0 - add_logs(A, D, "body-slammed") return 0 /datum/martial_art/wrestling/proc/strike(mob/living/carbon/human/A, mob/living/carbon/human/D) @@ -319,7 +316,6 @@ D.adjustBruteLoss(rand(10,20)) playsound(A.loc, "swing_hit", 50, 1) D.Paralyse(1) - add_logs(A, D, "headbutted") /datum/martial_art/wrestling/proc/kick(mob/living/carbon/human/A, mob/living/carbon/human/D) if(!D) @@ -336,7 +332,6 @@ if (T && isturf(T)) D.Weaken(1) D.throw_at(T, 3, 2) - add_logs(A, D, "roundhouse-kicked") /datum/martial_art/wrestling/proc/drop(mob/living/carbon/human/A, mob/living/carbon/human/D) if(!D) @@ -407,13 +402,11 @@ else if (A) A.pixel_y = 0 - add_logs(A, D, "leg-dropped") return /datum/martial_art/wrestling/disarm_act(mob/living/carbon/human/A, mob/living/carbon/human/D) if(check_streak(A,D)) return 1 - add_logs(A, D, "wrestling-disarmed") ..() /datum/martial_art/wrestling/grab_act(mob/living/carbon/human/A, mob/living/carbon/human/D) @@ -425,5 +418,4 @@ D.visible_message("[A] gets [D] in a cinch!", \ "[A] gets [D] in a cinch!") D.Stun(rand(3,5)) - add_logs(A, D, "cinched") return 1 diff --git a/code/datums/material_container.dm b/code/datums/material_container.dm index c158dfa482..ed6f375b6f 100644 --- a/code/datums/material_container.dm +++ b/code/datums/material_container.dm @@ -26,6 +26,7 @@ for(var/mat_type in subtypesof(/datum/material)) var/datum/material/MT = mat_type possible_mats[initial(MT.id)] = mat_type + for(var/id in mat_list) if(possible_mats[id]) var/mat_path = possible_mats[id] @@ -137,8 +138,6 @@ //For spawning mineral sheets; internal use only /datum/material_container/proc/retrieve(sheet_amt, datum/material/M) - if(!M.sheet_type) - return 0 if(sheet_amt > 0) if(M.amount < (sheet_amt * MINERAL_MATERIAL_AMOUNT)) sheet_amt = round(M.amount / MINERAL_MATERIAL_AMOUNT) @@ -217,13 +216,11 @@ var/amount = 0 var/id = null var/sheet_type = null - var/coin_type = null /datum/material/metal name = "Metal" id = MAT_METAL sheet_type = /obj/item/stack/sheet/metal - coin_type = /obj/item/weapon/coin/iron /datum/material/glass name = "Glass" @@ -234,43 +231,28 @@ name = "Silver" id = MAT_SILVER sheet_type = /obj/item/stack/sheet/mineral/silver - coin_type = /obj/item/weapon/coin/silver /datum/material/gold name = "Gold" id = MAT_GOLD sheet_type = /obj/item/stack/sheet/mineral/gold - coin_type = /obj/item/weapon/coin/gold /datum/material/diamond name = "Diamond" id = MAT_DIAMOND sheet_type = /obj/item/stack/sheet/mineral/diamond - coin_type = /obj/item/weapon/coin/diamond /datum/material/uranium name = "Uranium" id = MAT_URANIUM sheet_type = /obj/item/stack/sheet/mineral/uranium - coin_type = /obj/item/weapon/coin/uranium /datum/material/plasma name = "Solid Plasma" id = MAT_PLASMA sheet_type = /obj/item/stack/sheet/mineral/plasma - coin_type = /obj/item/weapon/coin/plasma /datum/material/bananium name = "Bananium" id = MAT_BANANIUM sheet_type = /obj/item/stack/sheet/mineral/bananium - coin_type = /obj/item/weapon/coin/clown - -/datum/material/titanium - name = "Titanium" - id = MAT_TITANIUM - sheet_type = /obj/item/stack/sheet/mineral/titanium - -/datum/material/biomass - name = "Biomass" - id = MAT_BIOMASS diff --git a/code/datums/mind.dm b/code/datums/mind.dm index 0dcd3e9561..0a59bfc33b 100644 --- a/code/datums/mind.dm +++ b/code/datums/mind.dm @@ -61,8 +61,7 @@ var/datum/devilinfo/devilinfo //Information about the devil, if any. var/damnation_type = 0 var/datum/mind/soulOwner //who owns the soul. Under normal circumstances, this will point to src - var/isholy = FALSE //is this person a chaplain or admin role allowed to use bibles - + var/mob/living/enslaved_to //If this mind's master is another mob (i.e. adamantine golems) /datum/mind/New(var/key) @@ -84,17 +83,10 @@ if(new_character.mind) //disassociate any mind currently in our new body's mind variable new_character.mind.current = null - if(istype(current) && islist(current.antag_datums)) //wow apparently current isn't always living good fucking job SOMEONE - for(var/i in current.antag_datums) - var/datum/antagonist/D = i - D.transfer_to_new_body(new_character) var/datum/atom_hud/antag/hud_to_transfer = antag_hud//we need this because leave_hud() will clear this list leave_all_huds() //leave all the huds in the old body, so it won't get huds if somebody else enters it current = new_character //associate ourself with our new body new_character.mind = src //and associate our new body with ourself - if(iscarbon(new_character)) - var/mob/living/carbon/C = new_character - C.last_mind = src transfer_antag_huds(hud_to_transfer) //inherit the antag HUD transfer_actions(new_character) @@ -182,6 +174,16 @@ ticker.mode.remove_gangster(src,0,1,1) remove_objectives() +/datum/mind/proc/remove_hog_follower_prophet() + ticker.mode.red_deity_followers -= src + ticker.mode.red_deity_prophets -= src + ticker.mode.blue_deity_prophets -= src + ticker.mode.blue_deity_followers -= src + ticker.mode.update_hog_icons_removed(src, "red") + ticker.mode.update_hog_icons_removed(src, "blue") + + + /datum/mind/proc/remove_antag_equip() var/list/Mob_Contents = current.get_contents() for(var/obj/item/I in Mob_Contents) @@ -206,36 +208,9 @@ ticker.mode.update_wiz_icons_removed(src) ticker.mode.update_cult_icons_removed(src) ticker.mode.update_rev_icons_removed(src) - if(gang_datum) - gang_datum.remove_gang_hud(src) + gang_datum.remove_gang_hud(src) -//Link a new mobs mind to the creator of said mob. They will join any team they are currently on, and will only switch teams when their creator does. - -/datum/mind/proc/enslave_mind_to_creator(mob/living/creator) - if(iscultist(creator)) - ticker.mode.add_cultist(src) - - else if(is_gangster(creator)) - ticker.mode.add_gangster(src, creator.mind.gang_datum, TRUE) - - else if(is_revolutionary_in_general(creator)) - ticker.mode.add_revolutionary(src) - - else if(is_servant_of_ratvar(creator)) - add_servant_of_ratvar(current) - - else if(is_nuclear_operative(creator)) - make_Nuke(null, null, 0, FALSE) - - enslaved_to = creator - - current.faction = creator.faction.Copy() - - if(creator.mind.special_role) - message_admins("[key_name_admin(current)](?) has been created by [key_name_admin(creator)](?), an antagonist.") - current << "Despite your creators current allegiances, your true master remains [creator.real_name]. If their loyalities change, so do yours. This will never change unless your creator's body is destroyed." - /datum/mind/proc/show_memory(mob/recipient, window=1) if(!recipient) recipient = current @@ -276,7 +251,7 @@ ) var/text = "" - if(ishuman(current)) + if (istype(current, /mob/living/carbon/human) || istype(current, /mob/living/carbon/monkey)) /** REVOLUTION ***/ text = "revolution" if (ticker.mode.config_tag=="revolution") @@ -301,7 +276,7 @@ text += " Reequip (gives traitor uplink)." if (objectives.len==0) text += "
    Objectives are empty! Set to kill all heads." - else if(current.isloyal()) + else if(isloyal(current)) text += "head|LOYAL|employee|headrev|rev" else if (src in ticker.mode.revolutionaries) text += "head|loyal|employee|headrev|REV" @@ -320,7 +295,7 @@ if (ticker.mode.config_tag=="gang") text = uppertext(text) text = "[text]: " - text += "[current.isloyal() ? "LOYAL" : "loyal"]|" + text += "[isloyal(current) ? "LOYAL" : "loyal"]|" if(src in ticker.mode.get_all_gangsters()) text += "none" else @@ -355,23 +330,100 @@ sections["gang"] = text - /** Abductors **/ - text = "Abductor" - if(ticker.mode.config_tag == "abductor") + + /** CULT ***/ + text = "cult" + if (ticker.mode.config_tag=="cult") text = uppertext(text) text = "[text]: " - if(src in ticker.mode.abductors) - text += "Abductor|human" - text += "|undress|equip" + if (src in ticker.mode.cult) + text += "loyal|employee|CULTIST" + text += "
    Give tome|amulet." +/* + if (objectives.len==0) + text += "
    Objectives are empty! Set to sacrifice and escape or summon." +*/ + else if(isloyal(current)) + text += "LOYAL|employee|cultist" else - text += "Abductor|human" + text += "loyal|EMPLOYEE|cultist" - if(current && current.client && (ROLE_ABDUCTOR in current.client.prefs.be_special)) + if(current && current.client && (ROLE_CULTIST in current.client.prefs.be_special)) text += "|Enabled in Prefs" else text += "|Disabled in Prefs" - sections["abductor"] = text + sections["cult"] = text + + /** CLOCKWORK CULT **/ + text = "clockwork cult" + if(ticker.mode.config_tag == "clockwork cult") + text = uppertext(text) + text = "[text]: " + if(src in ticker.mode.servants_of_ratvar) + text += "loyal|employee|SERVANT" + text += "
    Give slab" + else if(isloyal(current)) + text += "LOYAL|employee|servant" + else + text += "loyal|EMPLOYEE|servant" + + if(current && current.client && (ROLE_SERVANT_OF_RATVAR in current.client.prefs.be_special)) + text += "|Enabled in Prefs" + else + text += "|Disabled in Prefs" + + sections["clockcult"] = text + + /** WIZARD ***/ + text = "wizard" + if (ticker.mode.config_tag=="wizard") + text = uppertext(text) + text = "[text]: " + if ((src in ticker.mode.wizards) || (src in ticker.mode.apprentices)) + text += "YES|no" + text += "
    To lair, undress, dress up, let choose name." + if (objectives.len==0) + text += "
    Objectives are empty! Randomize!" + else + text += "yes|NO" + + if(current && current.client && (ROLE_WIZARD in current.client.prefs.be_special)) + text += "|Enabled in Prefs" + else + text += "|Disabled in Prefs" + + sections["wizard"] = text + + /** CHANGELING ***/ + text = "changeling" + if (ticker.mode.config_tag=="changeling" || ticker.mode.config_tag=="traitorchan") + text = uppertext(text) + text = "[text]: " + if ((src in ticker.mode.changelings) && special_role) + text += "YES|no" + if (objectives.len==0) + text += "
    Objectives are empty! Randomize!" + if(changeling && changeling.stored_profiles.len && (current.real_name != changeling.first_prof.name) ) + text += "
    Transform to initial appearance." + else if(src in ticker.mode.changelings) //Station Aligned Changeling + text += "YES (but not an antag)|no" + if (objectives.len==0) + text += "
    Objectives are empty! Randomize!" + if(changeling && changeling.stored_profiles.len && (current.real_name != changeling.first_prof.name) ) + text += "
    Transform to initial appearance." + else + text += "yes|NO" +// var/datum/game_mode/changeling/changeling = ticker.mode +// if (istype(changeling) && changeling.changelingdeath) +// text += "
    All the changelings are dead! Restart in [round((changeling.TIME_TO_GET_REVIVED-(world.time-changeling.changelingdeathtime))/10)] seconds." + + if(current && current.client && (ROLE_CHANGELING in current.client.prefs.be_special)) + text += "|Enabled in Prefs" + else + text += "|Disabled in Prefs" + + sections["changeling"] = text /** NUCLEAR ***/ text = "nuclear" @@ -398,71 +450,6 @@ sections["nuclear"] = text - /** WIZARD ***/ - text = "wizard" - if (ticker.mode.config_tag=="wizard") - text = uppertext(text) - text = "[text]: " - if ((src in ticker.mode.wizards) || (src in ticker.mode.apprentices)) - text += "YES|no" - text += "
    To lair, undress, dress up, let choose name." - if (objectives.len==0) - text += "
    Objectives are empty! Randomize!" - else - text += "yes|NO" - - if(current && current.client && (ROLE_WIZARD in current.client.prefs.be_special)) - text += "|Enabled in Prefs" - else - text += "|Disabled in Prefs" - - sections["wizard"] = text - - /** CULT ***/ - text = "cult" - if (ticker.mode.config_tag=="cult") - text = uppertext(text) - text = "[text]: " - if(iscultist(current)) - text += "loyal|employee|CULTIST" - text += "
    Give tome|amulet." - - else if(current.isloyal()) - text += "LOYAL|employee|cultist" - else if(is_convertable_to_cult(current)) - text += "loyal|EMPLOYEE|cultist" - else - text += "loyal|EMPLOYEE|cannot serve Nar-Sie" - - if(current && current.client && (ROLE_CULTIST in current.client.prefs.be_special)) - text += "|Enabled in Prefs" - else - text += "|Disabled in Prefs" - - sections["cult"] = text - - /** CLOCKWORK CULT **/ - text = "clockwork cult" - if(ticker.mode.config_tag == "clockwork cult") - text = uppertext(text) - text = "[text]: " - if(is_servant_of_ratvar(current)) - text += "loyal|employee|SERVANT" - text += "
    Give slab" - else if(current.isloyal()) - text += "LOYAL|employee|servant" - else if(is_eligible_servant(current)) - text += "loyal|EMPLOYEE|servant" - else - text += "loyal|EMPLOYEE|cannot serve Ratvar" - - if(current && current.client && (ROLE_SERVANT_OF_RATVAR in current.client.prefs.be_special)) - text += "|Enabled in Prefs" - else - text += "|Disabled in Prefs" - - sections["clockcult"] = text - /** TRAITOR ***/ text = "traitor" if (ticker.mode.config_tag=="traitor" || ticker.mode.config_tag=="traitorchan") @@ -482,43 +469,66 @@ sections["traitor"] = text - if(ishuman(current) || ismonkey(current)) + /** Abductors **/ - /** CHANGELING ***/ - text = "changeling" - if (ticker.mode.config_tag=="changeling" || ticker.mode.config_tag=="traitorchan") - text = uppertext(text) - text = "[text]: " - if ((src in ticker.mode.changelings) && special_role) - text += "YES|no" - if (objectives.len==0) - text += "
    Objectives are empty! Randomize!" - if(changeling && changeling.stored_profiles.len && (current.real_name != changeling.first_prof.name) ) - text += "
    Transform to initial appearance." - else if(src in ticker.mode.changelings) //Station Aligned Changeling - text += "YES (but not an antag)|no" - if (objectives.len==0) - text += "
    Objectives are empty! Randomize!" - if(changeling && changeling.stored_profiles.len && (current.real_name != changeling.first_prof.name) ) - text += "
    Transform to initial appearance." - else - text += "yes|NO" + text = "Abductor" + if(ticker.mode.config_tag == "abductor") + text = uppertext(text) + text = "[text]: " + if(src in ticker.mode.abductors) + text += "Abductor|human" + text += "|undress|equip" + else + text += "Abductor|human" - if(current && current.client && (ROLE_CHANGELING in current.client.prefs.be_special)) - text += "|Enabled in Prefs" - else - text += "|Disabled in Prefs" + if(current && current.client && (ROLE_ABDUCTOR in current.client.prefs.be_special)) + text += "|Enabled in Prefs" + else + text += "|Disabled in Prefs" - sections["changeling"] = text + sections["abductor"] = text - /** MONKEY ***/ + /** HAND OF GOD **/ + text = "hand of god" + if(ticker.mode.config_tag == "handofgod") + text = uppertext(text) + text = "[text]: " + if (src in ticker.mode.red_deities) + text += "RED GOD|red prophet|red follower|employee|blue god|blue prophet|blue follower" + else if(src in ticker.mode.red_deity_prophets) + text += "red god|RED PROPHET|red follower|employee|blue god|blue prophet|blue follower" + else if (src in ticker.mode.red_deity_followers) + text += "red god|red prophet|RED FOLLOWER|employee|blue god|blue prophet|blue follower" + else if (src in ticker.mode.blue_deities) + text += "red god|red prophet|red follower|employee|BLUE GOD|blue prophet|blue follower" + else if (src in ticker.mode.blue_deity_prophets) + text += "red god|red prophet|red follower|employee|blue god|BLUE PROPHET|blue follower" + else if (src in ticker.mode.blue_deity_followers) + text += "red god|red prophet|red follower|employee|blue god|blue prophet|BLUE FOLLOWER" + else + text += "red god|red prophet|red follower|EMPLOYEE|blue god|blue prophet|blue follower" + + if(current && current.client && (ROLE_HOG_GOD in current.client.prefs.be_special)) + text += "|HOG God Enabled in Prefs" + else + text += "|HOG God Disabled in Prefs" + + if(current && current.client && (ROLE_HOG_CULTIST in current.client.prefs.be_special)) + text += "|HOG Cultist Enabled in Prefs" + else + text += "|HOG Disabled in Prefs" + + sections["follower"] = text + + /** MONKEY ***/ + if (istype(current, /mob/living/carbon)) text = "monkey" if (ticker.mode.config_tag=="monkey") text = uppertext(text) text = "[text]: " - if (ishuman(current)) + if (istype(current, /mob/living/carbon/human)) text += "healthy|infected|HUMAN|other" - else if (ismonkey(current)) + else if (istype(current, /mob/living/carbon/monkey)) var/found = 0 for(var/datum/disease/D in current.viruses) if(istype(D, /datum/disease/transformation/jungle_fever)) found = 1 @@ -559,7 +569,7 @@ /** SILICON ***/ - if(issilicon(current)) + if (istype(current, /mob/living/silicon)) text = "silicon" var/mob/living/silicon/robot/robot = current if (istype(robot) && robot.emagged) @@ -587,7 +597,10 @@ out += sections[i]+"
    " - if(((src in ticker.mode.head_revolutionaries) || (src in ticker.mode.traitors) || (src in ticker.mode.syndicates)) && ishuman(current)) + if (((src in ticker.mode.head_revolutionaries) || \ + (src in ticker.mode.traitors) || \ + (src in ticker.mode.syndicates)) && \ + istype(current,/mob/living/carbon/human) ) text = "Uplink: give" var/obj/item/device/uplink/U = find_syndicate_uplink() @@ -653,7 +666,7 @@ if(!def_value)//If it's a custom objective, it will be an empty string. def_value = "custom" - var/new_obj_type = input("Select objective type:", "Objective type", def_value) as null|anything in list("assassinate", "maroon", "debrain", "protect", "destroy", "prevent", "hijack", "escape", "survive", "martyr", "steal", "download", "nuclear", "capture", "absorb", "custom") + var/new_obj_type = input("Select objective type:", "Objective type", def_value) as null|anything in list("assassinate", "maroon", "debrain", "protect", "destroy", "prevent", "hijack", "escape", "survive", "martyr", "steal", "download", "nuclear", "capture", "absorb", "custom","follower block (HOG)","build (HOG)","deicide (HOG)", "follower escape (HOG)", "sacrifice prophet (HOG)") if (!new_obj_type) return @@ -663,7 +676,7 @@ if ("assassinate","protect","debrain","maroon") var/list/possible_targets = list("Free objective") for(var/datum/mind/possible_target in ticker.minds) - if ((possible_target != src) && ishuman(possible_target.current)) + if ((possible_target != src) && istype(possible_target.current, /mob/living/carbon/human)) possible_targets += possible_target.current var/mob/def_target = null @@ -755,6 +768,22 @@ new_objective.owner = src new_objective.target_amount = target_number + if("follower block (HOG)") + new_objective = new /datum/objective/follower_block + new_objective.owner = src + if("build (HOG)") + new_objective = new /datum/objective/build + new_objective.owner = src + if("deicide (HOG)") + new_objective = new /datum/objective/deicide + new_objective.owner = src + if("follower escape (HOG)") + new_objective = new /datum/objective/escape_followers + new_objective.owner = src + if("sacrifice prophet (HOG)") + new_objective = new /datum/objective/sacrifice_prophet + new_objective.owner = src + if ("custom") var/expl = stripped_input(usr, "Custom objective:", "Objective", objective ? objective.explanation_text : "") if (!expl) @@ -791,6 +820,46 @@ objective.completed = !objective.completed log_admin("[key_name(usr)] toggled the win state for [current]'s objective: [objective.explanation_text]") + else if (href_list["handofgod"]) + switch(href_list["handofgod"]) + if("clear") //wipe handofgod status + if((src in ticker.mode.red_deity_followers) || (src in ticker.mode.blue_deity_followers) || (src in ticker.mode.red_deity_prophets) || (src in ticker.mode.blue_deity_prophets)) + remove_hog_follower_prophet() + current << "You have been brainwashed... again! Your faith is no more!" + message_admins("[key_name_admin(usr)] has de-hand of god'ed [current].") + log_admin("[key_name(usr)] has de-hand of god'ed [current].") + + if("red follower") + make_Handofgod_follower("red") + message_admins("[key_name_admin(usr)] has red follower'ed [current].") + log_admin("[key_name(usr)] has red follower'ed [current].") + + if("red prophet") + make_Handofgod_prophet("red") + message_admins("[key_name_admin(usr)] has red prophet'ed [current].") + log_admin("[key_name(usr)] has red prophet'ed [current].") + + if("blue follower") + make_Handofgod_follower("blue") + message_admins("[key_name_admin(usr)] has blue follower'ed [current].") + log_admin("[key_name(usr)] has blue follower'ed [current].") + + if("blue prophet") + make_Handofgod_prophet("blue") + message_admins("[key_name_admin(usr)] has blue prophet'ed [current].") + log_admin("[key_name(usr)] has blue prophet'ed [current].") + + if("red god") + make_Handofgod_god("red") + message_admins("[key_name_admin(usr)] has red god'ed [current].") + log_admin("[key_name(usr)] has red god'ed [current].") + + if("blue god") + make_Handofgod_god("blue") + message_admins("[key_name_admin(usr)] has blue god'ed [current].") + log_admin("[key_name(usr)] has blue god'ed [current].") + + else if (href_list["revolution"]) switch(href_list["revolution"]) if("clear") @@ -1105,38 +1174,30 @@ if("clear") if(src in ticker.mode.devils) if(istype(current,/mob/living/carbon/true_devil/)) - if(devilinfo) - devilinfo.regress_blood_lizard() - else - usr << "Something went wrong with removing the devil, we were unable to find an attached devilinfo.." - ticker.mode.devils -= src - special_role = null - current << "Your infernal link has been severed! You are no longer a devil!" - RemoveSpell(/obj/effect/proc_holder/spell/targeted/infernal_jaunt) - RemoveSpell(/obj/effect/proc_holder/spell/fireball/hellish) - RemoveSpell(/obj/effect/proc_holder/spell/targeted/summon_contract) - RemoveSpell(/obj/effect/proc_holder/spell/targeted/conjure_item/summon_pitchfork) - RemoveSpell(/obj/effect/proc_holder/spell/targeted/conjure_item/violin) - message_admins("[key_name_admin(usr)] has de-devil'ed [current].") - devilinfo = null - if(issilicon(current)) - var/mob/living/silicon/S = current - S.clear_law_sixsixsix(current) - log_admin("[key_name(usr)] has de-devil'ed [current].") + usr << "This cannot be used on true or arch-devils." + else + ticker.mode.devils -= src + special_role = null + current << "Your infernal link has been severed! You are no longer a devil!" + RemoveSpell(/obj/effect/proc_holder/spell/targeted/infernal_jaunt) + RemoveSpell(/obj/effect/proc_holder/spell/dumbfire/fireball/hellish) + RemoveSpell(/obj/effect/proc_holder/spell/targeted/summon_contract) + RemoveSpell(/obj/effect/proc_holder/spell/targeted/summon_pitchfork) + message_admins("[key_name_admin(usr)] has de-devil'ed [current].") + devilinfo = null + log_admin("[key_name(usr)] has de-devil'ed [current].") else if(src in ticker.mode.sintouched) ticker.mode.sintouched -= src message_admins("[key_name_admin(usr)] has de-sintouch'ed [current].") log_admin("[key_name(usr)] has de-sintouch'ed [current].") if("devil") - if(!ishuman(current) && !iscyborg(current)) - usr << "This only works on humans and cyborgs!" + if(!ishuman(current)) + usr << "This only works on humans!" return ticker.mode.devils += src special_role = "devil" ticker.mode.finalize_devil(src) - ticker.mode.add_devil_objectives(src, 2) announceDevilLaws() - announce_objectives() if("sintouched") if(ishuman(current)) ticker.mode.sintouched += src @@ -1227,7 +1288,7 @@ log_admin("[key_name(usr)] has unemag'ed [R].") if("unemagcyborgs") - if(isAI(current)) + if (istype(current, /mob/living/silicon/ai)) var/mob/living/silicon/ai/ai = current for (var/mob/living/silicon/robot/R in ai.connected_robots) R.SetEmagged(0) @@ -1258,18 +1319,14 @@ log_admin("[key_name(usr)] attempted to give [current] an uplink.") else if (href_list["obj_announce"]) - announce_objectives() + var/obj_count = 1 + current << "Your current objectives:" + for(var/datum/objective/objective in objectives) + current << "Objective #[obj_count]: [objective.explanation_text]" + obj_count++ edit_memory() -/datum/mind/proc/announce_objectives() - var/obj_count = 1 - current << "Your current objectives:" - for(var/objective in objectives) - var/datum/objective/O = objective - current << "Objective #[obj_count]: [O.explanation_text]" - obj_count++ - /datum/mind/proc/find_syndicate_uplink() var/list/L = current.get_contents() for (var/obj/item/I in L) @@ -1290,42 +1347,32 @@ ticker.mode.finalize_traitor(src) ticker.mode.greet_traitor(src) -/datum/mind/proc/make_Nuke(turf/spawnloc, nuke_code, leader=0, telecrystals = TRUE) +/datum/mind/proc/make_Nuke(turf/spawnloc,nuke_code,leader=0, telecrystals = TRUE) if(!(src in ticker.mode.syndicates)) ticker.mode.syndicates += src ticker.mode.update_synd_icons_added(src) special_role = "Syndicate" ticker.mode.forge_syndicate_objectives(src) ticker.mode.greet_syndicate(src) - current.faction |= "syndicate" - if(spawnloc) - current.loc = spawnloc + current.loc = spawnloc - if(ishuman(current)) - var/mob/living/carbon/human/H = current - qdel(H.belt) - qdel(H.back) - qdel(H.ears) - qdel(H.gloves) - qdel(H.head) - qdel(H.shoes) - qdel(H.wear_id) - qdel(H.wear_suit) - qdel(H.w_uniform) + var/mob/living/carbon/human/H = current + qdel(H.belt) + qdel(H.back) + qdel(H.ears) + qdel(H.gloves) + qdel(H.head) + qdel(H.shoes) + qdel(H.wear_id) + qdel(H.wear_suit) + qdel(H.w_uniform) - ticker.mode.equip_syndicate(current, telecrystals) + ticker.mode.equip_syndicate(current, telecrystals) if (nuke_code) store_memory("Syndicate Nuclear Bomb Code: [nuke_code]", 0, 0) current << "The nuclear authorization code is: [nuke_code]" - else - var/obj/machinery/nuclearbomb/nuke = locate("syndienuke") in nuke_list - if(nuke) - store_memory("Syndicate Nuclear Bomb Code: [nuke.r_code]", 0, 0) - current << "The nuclear authorization code is: nuke.r_code" - else - current << "You were not provided with a nuclear code. Trying asking your team leader or contacting syndicate command.
    " if (leader) ticker.mode.prepare_syndicate_leader(src,nuke_code) @@ -1346,6 +1393,7 @@ ticker.mode.wizards += src special_role = "Wizard" assigned_role = "Wizard" + //ticker.mode.learn_basic_spells(current) if(!wizardstart.len) current.loc = pick(latejoin) current << "HOT INSERTION, GO GO GO" @@ -1353,6 +1401,8 @@ current.loc = pick(wizardstart) ticker.mode.equip_wizard(current) + for(var/obj/item/weapon/spellbook/S in current.contents) + S.op = 0 ticker.mode.name_wizard(current) ticker.mode.forge_wizard_objectives(src) ticker.mode.greet_wizard(src) @@ -1371,7 +1421,9 @@ else var/explanation = "Summon Nar-Sie via the use of the appropriate rune (Hell join self). It will only work if nine cultists stand on and around it." current << "Objective #1: [explanation]" - memory += "Objective #1: [explanation]
    " + current.memory += "Objective #1: [explanation]
    " + current << "The convert rune is join blood self" + current.memory += "The convert rune is join blood self
    " var/mob/living/carbon/human/H = current if (!ticker.mode.equip_cultist(current)) @@ -1465,6 +1517,119 @@ L = agent_landmarks[team] H.loc = L.loc + +/datum/mind/proc/make_Handofgod_follower(colour) + . = 0 + switch(colour) + if("red") + //Remove old allegiances + if(src in ticker.mode.blue_deity_followers || src in ticker.mode.blue_deity_prophets) + current << "You are no longer a member of the Blue cult!" + + ticker.mode.blue_deity_followers -= src + ticker.mode.blue_deity_prophets -= src + current.faction |= "red god" + current.faction -= "blue god" + + if(src in ticker.mode.red_deity_prophets) + current << "You have lost the connection with your deity, but you still believe in their grand design, You are no longer a prophet!" + ticker.mode.red_deity_prophets -= src + + ticker.mode.red_deity_followers |= src + current << "You are now a follower of the red cult's god!" + + special_role = "Hand of God: Red Follower" + . = 1 + if("blue") + //Remove old allegiances + if(src in ticker.mode.red_deity_followers || src in ticker.mode.red_deity_prophets) + current << "You are no longer a member of the Red cult!" + + ticker.mode.red_deity_followers -= src + ticker.mode.red_deity_prophets -= src + current.faction -= "red god" + current.faction |= "blue god" + + if(src in ticker.mode.blue_deity_prophets) + current << "You have lost the connection with your deity, but you still believe in their grand design, You are no longer a prophet!" + ticker.mode.blue_deity_prophets -= src + + ticker.mode.blue_deity_followers |= src + current << "You are now a follower of the blue cult's god!" + + special_role = "Hand of God: Blue Follower" + . = 1 + else + return 0 + + ticker.mode.update_hog_icons_removed(src,"red") + ticker.mode.update_hog_icons_removed(src,"blue") + //ticker.mode.greet_hog_follower(src,colour) + ticker.mode.update_hog_icons_added(src, colour) + +/datum/mind/proc/make_Handofgod_prophet(colour) + . = 0 + switch(colour) + if("red") + //Remove old allegiances + + if(src in ticker.mode.blue_deity_followers || src in ticker.mode.blue_deity_prophets) + current << "You are no longer a member of the Blue cult!" + current.faction -= "blue god" + current.faction |= "red god" + + ticker.mode.blue_deity_followers -= src + ticker.mode.blue_deity_prophets -= src + ticker.mode.red_deity_followers -= src + + ticker.mode.red_deity_prophets |= src + current << "You are now a prophet of the red cult's god!" + + special_role = "Hand of God: Red Prophet" + . = 1 + if("blue") + //Remove old allegiances + + if(src in ticker.mode.red_deity_followers || src in ticker.mode.red_deity_prophets) + current << "You are no longer a member of the Red cult!" + current.faction -= "red god" + current.faction |= "blue god" + + ticker.mode.red_deity_followers -= src + ticker.mode.red_deity_prophets -= src + ticker.mode.blue_deity_followers -= src + + ticker.mode.blue_deity_prophets |= src + current << "You are now a prophet of the blue cult's god!" + + special_role = "Hand of God: Blue Prophet" + . = 1 + + else + return 0 + + ticker.mode.update_hog_icons_removed(src,"red") + ticker.mode.update_hog_icons_removed(src,"blue") + ticker.mode.greet_hog_follower(src,colour) + ticker.mode.update_hog_icons_added(src, colour) + +/datum/mind/proc/make_Handofgod_god(colour) + switch(colour) + if("red") + current.become_god("red") + ticker.mode.add_god(src,"red") + if("blue") + current.become_god("blue") + ticker.mode.add_god(src,"blue") + else + return 0 + ticker.mode.forge_deity_objectives(src) + ticker.mode.remove_hog_follower(src,0) + ticker.mode.update_hog_icons_added(src, colour) +// ticker.mode.greet_hog_follower(src,colour) + return 1 + + /datum/mind/proc/AddSpell(obj/effect/proc_holder/spell/S) spell_list += S S.action.Grant(current) @@ -1533,24 +1698,53 @@ else spawn(0) throw EXCEPTION("mind_initialize(): No ticker ready") - if(!mind.name) - mind.name = real_name + if(!mind.name) mind.name = real_name mind.current = src -/mob/living/carbon/mind_initialize() - ..() - last_mind = mind - //HUMAN /mob/living/carbon/human/mind_initialize() ..() - if(!mind.assigned_role) - mind.assigned_role = "Assistant" //defualt + if(!mind.assigned_role) mind.assigned_role = "Assistant" //defualt + +//MONKEY +/mob/living/carbon/monkey/mind_initialize() + ..() + +//slime +/mob/living/simple_animal/slime/mind_initialize() + ..() + mind.special_role = "slime" + mind.assigned_role = "slime" //XENO /mob/living/carbon/alien/mind_initialize() ..() mind.special_role = "Alien" + mind.assigned_role = "Alien" + //XENO HUMANOID +/mob/living/carbon/alien/humanoid/royal/queen/mind_initialize() + ..() + mind.special_role = "Queen" + +/mob/living/carbon/alien/humanoid/royal/praetorian/mind_initialize() + ..() + mind.special_role = "Praetorian" + +/mob/living/carbon/alien/humanoid/hunter/mind_initialize() + ..() + mind.special_role = "Hunter" + +/mob/living/carbon/alien/humanoid/drone/mind_initialize() + ..() + mind.special_role = "Drone" + +/mob/living/carbon/alien/humanoid/sentinel/mind_initialize() + ..() + mind.special_role = "Sentinel" + //XENO LARVA +/mob/living/carbon/alien/larva/mind_initialize() + ..() + mind.special_role = "Larva" //AI /mob/living/silicon/ai/mind_initialize() @@ -1567,3 +1761,29 @@ ..() mind.assigned_role = "pAI" mind.special_role = "" + +//BLOB +/mob/camera/blob/mind_initialize() + ..() + mind.special_role = "Blob" + +//Animals +/mob/living/simple_animal/mind_initialize() + ..() + mind.assigned_role = "Animal" + mind.special_role = "Animal" + +/mob/living/simple_animal/pet/dog/corgi/mind_initialize() + ..() + mind.assigned_role = "Corgi" + mind.special_role = "Corgi" + +/mob/living/simple_animal/shade/mind_initialize() + ..() + mind.assigned_role = "Shade" + mind.special_role = "Shade" + +/mob/living/simple_animal/hostile/construct/mind_initialize() + ..() + mind.assigned_role = "[initial(name)]" + mind.special_role = "Cultist" diff --git a/code/datums/mutations.dm b/code/datums/mutations.dm index 91f7d96292..6dbe877d83 100644 --- a/code/datums/mutations.dm +++ b/code/datums/mutations.dm @@ -1,6 +1,6 @@ /var/global/list/mutations_list = list() -/datum/mutation +/datum/mutation/ var/name @@ -48,9 +48,9 @@ if(hex2num(getblock(se_string, dna_block)) >= lowest_value) return 1 -/datum/mutation/human/proc/check_block(mob/living/carbon/human/owner, force_powers=0) +/datum/mutation/human/proc/check_block(mob/living/carbon/human/owner) if(check_block_string(owner.dna.struc_enzymes)) - if(prob(get_chance)||force_powers) + if(prob(get_chance)) . = on_acquiring(owner) else . = on_losing(owner) @@ -79,7 +79,7 @@ /datum/mutation/human/proc/get_visual_indicator(mob/living/carbon/human/owner) return -/datum/mutation/human/proc/on_attack_hand(mob/living/carbon/human/owner, atom/target, proximity) +/datum/mutation/human/proc/on_attack_hand(mob/living/carbon/human/owner, atom/target) return /datum/mutation/human/proc/on_ranged_attack(mob/living/carbon/human/owner, atom/target) @@ -130,9 +130,8 @@ owner.status_flags &= ~status owner.update_body_parts() -/datum/mutation/human/hulk/on_attack_hand(mob/living/carbon/human/owner, atom/target, proximity) - if(proximity) //no telekinetic hulk attack - return target.attack_hulk(owner) +/datum/mutation/human/hulk/on_attack_hand(mob/living/carbon/human/owner, atom/target) + return target.attack_hulk(owner) /datum/mutation/human/hulk/on_life(mob/living/carbon/human/owner) if(owner.health < 0) @@ -188,7 +187,7 @@ /datum/mutation/human/cold_resistance/on_life(mob/living/carbon/human/owner) if(owner.getFireLoss()) if(prob(1)) - owner.heal_bodypart_damage(0,1) //Is this really needed? + owner.heal_organ_damage(0,1) //Is this really needed? /datum/mutation/human/x_ray @@ -237,7 +236,7 @@ owner.visible_message("[owner] starts having a seizure!", "You have a seizure!") owner.Paralyse(10) owner.Jitter(1000) - addtimer(src, "jitter_less", 90, TIMER_NORMAL, owner) + addtimer(src, "jitter_less", 90, FALSE, owner) /datum/mutation/human/epilepsy/proc/jitter_less(mob/living/carbon/human/owner) if(owner) @@ -253,11 +252,11 @@ var/mob/new_mob if(prob(95)) if(prob(50)) - new_mob = owner.randmutb() + new_mob = randmutb(owner) else - new_mob = owner.randmuti() + new_mob = randmuti(owner) else - new_mob = owner.randmutg() + new_mob = randmutg(owner) if(new_mob && ismob(new_mob)) owner = new_mob . = owner @@ -377,9 +376,6 @@ time_coeff = 2 /datum/mutation/human/race/on_acquiring(mob/living/carbon/human/owner) - if(owner.has_brain_worms()) - owner << "You feel something strongly clinging to your humanity!" - return if(..()) return . = owner.monkeyize(TR_KEEPITEMS | TR_KEEPIMPLANTS | TR_KEEPORGANS | TR_KEEPDAMAGE | TR_KEEPVIRUS | TR_KEEPSE) @@ -535,10 +531,6 @@ /datum/mutation/human/swedish/say_mod(message) if(message) message = replacetext(message,"w","v") - message = replacetext(message,"j","y") - message = replacetext(message,"a",pick("å","ä","æ","a")) - message = replacetext(message,"bo","bjo") - message = replacetext(message,"o",pick("ö","ø","o")) if(prob(30)) message += " Bork[pick("",", bork",", bork, bork")]!" return message @@ -624,7 +616,7 @@ return visual_indicators[1] /datum/mutation/human/laser_eyes/on_ranged_attack(mob/living/carbon/human/owner, atom/target) - if(owner.a_intent == INTENT_HARM) + if(owner.a_intent == "harm") owner.LaserEyes(target) diff --git a/code/datums/outfit.dm b/code/datums/outfit.dm index 1bac2aff65..96b0a27e83 100644 --- a/code/datums/outfit.dm +++ b/code/datums/outfit.dm @@ -9,7 +9,6 @@ var/shoes = null var/head = null var/mask = null - var/neck = null var/ears = null var/glasses = null var/id = null @@ -48,8 +47,6 @@ H.equip_to_slot_or_del(new head(H),slot_head) if(mask) H.equip_to_slot_or_del(new mask(H),slot_wear_mask) - if(neck) - H.equip_to_slot_or_del(new neck(H),slot_neck) if(ears) H.equip_to_slot_or_del(new ears(H),slot_ears) if(glasses) @@ -75,5 +72,4 @@ post_equip(H, visualsOnly) - H.update_body() return 1 \ No newline at end of file diff --git a/code/datums/recipe.dm b/code/datums/recipe.dm index bfe1a8f066..97df255e38 100644 --- a/code/datums/recipe.dm +++ b/code/datums/recipe.dm @@ -34,7 +34,7 @@ * */ /datum/recipe - var/list/reagents_list // example: = list("berryjuice" = 5) // do not list same reagent twice + var/list/reagents // example: = list("berryjuice" = 5) // do not list same reagent twice var/list/items // example: =list(/obj/item/weapon/crowbar, /obj/item/weapon/welder) // place /foo/bar before /foo var/result //example: = /obj/item/weapon/reagent_containers/food/snacks/donut var/time = 100 // 1/10 part of second @@ -49,7 +49,7 @@ . = -1 else return 0 - if ((reagents_list?(reagents_list.len):(0)) < avail_reagents.reagent_list.len) + if ((reagents?(reagents.len):(0)) < avail_reagents.reagent_list.len) return -1 return . @@ -112,7 +112,7 @@ . = possible_recipes[1] for (var/datum/recipe/recipe in possible_recipes) var/N_i = (recipe.items)?(recipe.items.len):0 - var/N_r = (recipe.reagents_list)?(recipe.reagents_list.len):0 + var/N_r = (recipe.reagents)?(recipe.reagents.len):0 if (N_i > i_count || (N_i== i_count && N_r > r_count )) r_count = N_r i_count = N_i diff --git a/code/datums/ruins.dm b/code/datums/ruins.dm index 1e4f0dbdfa..d9c2ca348d 100644 --- a/code/datums/ruins.dm +++ b/code/datums/ruins.dm @@ -2,9 +2,10 @@ //name = "A Chest of Doubloons" name = null var/id = null // For blacklisting purposes, all ruins need an id - var/description = "In the middle of a clearing in the rockface, there's a chest filled with gold coins with Spanish engravings. \ - How is there a wooden container filled with 18th century coinage in the middle of a lavawracked hellscape? \ - It is clearly a mystery." + var/description = "In the middle of a clearing in the rockface, there's a \ + chest filled with gold coins with Spanish engravings. How is there a \ + wooden container filled with 18th century coinage in the middle of a \ + lavawracked hellscape? It is clearly a mystery." var/cost = null var/allow_duplicates = TRUE diff --git a/code/datums/ruins/lavaland.dm b/code/datums/ruins/lavaland.dm index 3674680eb2..d73a20297d 100644 --- a/code/datums/ruins/lavaland.dm +++ b/code/datums/ruins/lavaland.dm @@ -8,15 +8,18 @@ /datum/map_template/ruin/lavaland/biodome/beach name = "Biodome Beach" id = "biodome-beach" - description = "Seemingly plucked from a tropical destination, this beach is calm and cool, with the salty waves roaring softly in the background. \ - Comes with a rustic wooden bar and suicidal bartender." + description = "Seemingly plucked from a tropical destination, this beach \ + is calm and cool, with the salty waves roaring softly in the \ + background. Comes with a rustic wooden bar and suicidal bartender." suffix = "lavaland_biodome_beach.dmm" /datum/map_template/ruin/lavaland/biodome/winter name = "Biodome Winter" id = "biodome-winter" - description = "For those getaways where you want to get back to nature, but you don't want to leave the fortified military compound where you spend your days. \ - Includes a unique(*) laser pistol display case, and the recently introduced I.C.E(tm)." + description = "For those getaways where you want to get back to nature, \ + but you don't want to leave the fortified military compound where you \ + spend your days. Includes a unique(*) laser pistol display case, \ + and the recently introduced I.C.E(tm)." suffix = "lavaland_surface_biodome_winter.dmm" /datum/map_template/ruin/lavaland/biodome/clown @@ -28,7 +31,8 @@ /datum/map_template/ruin/lavaland/cube name = "The Wishgranter Cube" id = "wishgranter-cube" - description = "Nothing good can come from this. Learn from their mistakes and turn around." + description = "Nothing good can come from this. Learn from their mistakes \ + and turn around." suffix = "lavaland_surface_cube.dmm" cost = 10 allow_duplicates = FALSE @@ -36,8 +40,10 @@ /datum/map_template/ruin/lavaland/prisoners name = "Prisoner Crash" id = "prisoner-crash" - description = "This incredibly high security shuttle clearly didn't have 'avoiding lavafilled hellscapes' as a design priority. \ - As such, it has crashed, waking the prisoners from their cryostasis, and setting them loose on the wastes. If they live long enough, that is." + description = "This incredibly high security shuttle clearly didn't have \ + 'avoiding lavafilled hellscapes' as a design priority. As such, it \ + has crashed, waking the prisoners from their cryostasis, and setting \ + them loose on the wastes. If they live long enough, that is." suffix = "lavaland_surface_prisoner_crash.dmm" cost = 15 allow_duplicates = FALSE @@ -45,33 +51,31 @@ /datum/map_template/ruin/lavaland/seed_vault name = "Seed Vault" id = "seed-vault" - description = "The creators of these vaults were a highly advanced and benevolent race, and launched many into the stars, hoping to aid fledgling civilizations. \ - However, all the inhabitants seem to do is grow drugs and guns." + description = "The creators of these vaults were a highly advanced and \ + benevolent race, and launched many into the stars, hoping to aid \ + fledgling civilizations. However, all the inhabitants seem to do is \ + grow drugs and guns." suffix = "lavaland_surface_seed_vault.dmm" cost = 10 /datum/map_template/ruin/lavaland/ash_walker name = "Ash Walker Nest" id = "ash-walker" - description = "A race of unbreathing lizards live here, that run faster than a human can, worship a broken dead city, and are capable of reproducing by something involving tentacles? \ - Probably best to stay clear." + description = "A race of unbreathing lizards live here, that run faster \ + than a human can, worship a broken dead city, and are capable of \ + reproducing by something involving tentacles? Probably best to \ + stay clear." suffix = "lavaland_surface_ash_walker1.dmm" cost = 20 allow_duplicates = FALSE -/datum/map_template/ruin/lavaland/syndicate_base - name = "Syndicate Lava Base" - id = "lava-base" - description = "A secret base researching illegal bioweapons, it is closely guarded by an elite team of syndicate agents." - suffix = "lavaland_surface_syndicate_base1.dmm" - cost = 20 - allow_duplicates = FALSE - /datum/map_template/ruin/lavaland/free_golem name = "Free Golem Ship" id = "golem-ship" - description = "Lumbering humanoids, made out of precious metals, move inside this ship. They frequently leave to mine more minerals, which they somehow turn into more of them. \ - Seem very intent on research and individual liberty, and also geology based naming?" + description = "Lumbering humanoids, made out of precious metals, move \ + inside this ship. They frequently leave to mine more minerals, \ + which they somehow turn into more of them. Seem very intent on \ + research and individual liberty, and also geology based naming?" cost = 20 suffix = "lavaland_surface_golem_ship.dmm" allow_duplicates = FALSE @@ -79,14 +83,14 @@ /datum/map_template/ruin/lavaland/animal_hospital name = "Animal Hospital" id = "animal-hospital" - description = "Rats with cancer do not live very long. And the ones that wake up from cryostasis seem to commit suicide out of boredom." + description = "Rats with cancer do not live very long. And the ones that \ + wake up from cryostasis seem to commit suicide out of boredom." cost = 5 suffix = "lavaland_surface_animal_hospital.dmm" allow_duplicates = FALSE /datum/map_template/ruin/lavaland/sin cost = 10 - allow_duplicates = FALSE /datum/map_template/ruin/lavaland/sin/envy name = "Ruin of Envy" @@ -120,55 +124,70 @@ suffix = "lavaland_surface_sloth.dmm" // Generates nothing but atmos runtimes and salt cost = 0 - -/datum/map_template/ruin/lavaland/hierophant - name = "Hierophant's Arena" - id = "hierophant" - description = "A huge fucking bird priest awaits you in this arena." - suffix = "lavaland_surface_hierophant.dmm" - cost = 0 allow_duplicates = FALSE +/datum/map_template/ruin/lavaland/ato + name = "Automated Trade Outpost" + id = "ato" + description = "A sign at the front says 'Stealing is bad.'" + suffix = "lavaland_surface_automated_trade_outpost.dmm" + cost = 5 + /datum/map_template/ruin/lavaland/ufo_crash name = "UFO Crash" id = "ufo-crash" - description = "Turns out that keeping your abductees unconcious is really important. Who knew?" + description = "Turns out that keeping your abductees unconcious is really \ + important. Who knew?" suffix = "lavaland_surface_ufo_crash.dmm" cost = 5 /datum/map_template/ruin/lavaland/ww_vault name = "Wishgranter Vault" id = "ww-vault" - description = "Scrawled on the large double doors is both a message and a warning: 'meat grinder requires sacri...'. You're not so sure about this anymore." + description = "Scrawled on the large double doors is both a message and a \ + warning: 'meat grinder requires sacri...'. You're not so sure about \ + this anymore." suffix = "lavaland_surface_ww_vault.dmm" cost = 20 /datum/map_template/ruin/lavaland/xeno_nest name = "Xenomorph Nest" id = "xeno-nest" - description = "These xenomorphs got bored of horrifically slaughtering people on space stations, and have settled down on a nice lava filled hellscape to focus on what's really important in life. \ - Quality memes." + description = "These xenomorphs got bored of horrifically slaughtering \ + people on space stations, and have settled down on a nice lava filled \ + hellscape to focus on what's really important in life. Quality memes." suffix = "lavaland_surface_xeno_nest.dmm" cost = 20 /datum/map_template/ruin/lavaland/fountain name = "Fountain Hall" id = "fountain" - description = "The fountain has a warning on the side. DANGER: May have undeclared side effects that only become obvious when implemented." + description = "The fountain has a warning on the side. DANGER: May have \ + undeclared side effects that only become obvious when implemented." suffix = "lavaland_surface_fountain_hall.dmm" cost = 5 /datum/map_template/ruin/lavaland/survivalcapsule name = "Survival Capsule Ruins" id = "survivalcapsule" - description = "What was once sanctuary to the common miner, is now their tomb." + description = "What was once sanctuary to the common miner, \ + is now their tomb." suffix = "lavaland_surface_survivalpod.dmm" cost = 5 +/datum/map_template/ruin/lavaland/tomb + name = "Strange Outpost" + id = "tomb" + description = "A strange tomb, housing the dead of whatever strange civilization \ + lived here before. You swear you hear rattling coming from the inside." + suffix = "lavaland_surface_tomb.dmm" + cost = 10 + /datum/map_template/ruin/lavaland/pizza name = "Ruined Pizza Party" id = "pizza" - description = "Little Timmy's birthday pizza-bash took a turn for the worse when a bluespace anomaly passed by." + description = "Little Timmy's birthday pizza-bash took a turn for the worse \ + when a bluespace anomaly passed by." suffix = "lavaland_surface_pizzaparty.dmm" allow_duplicates = FALSE cost = 5 @@ -176,7 +195,8 @@ /datum/map_template/ruin/lavaland/cultaltar name = "Summoning Ritual" id = "cultaltar" - description = "A place of vile worship, the scrawling of blood in the middle glowing eerily. A demonic laugh echoes throughout the caverns" + description = "A place of vile worship, the scrawling of blood in the middle glowing eerily.\ + A demonic laugh echoes throughout the caverns" suffix = "lavaland_surface_cultaltar.dmm" allow_duplicates = FALSE cost = 10 @@ -189,10 +209,10 @@ allow_duplicates = FALSE cost = 10 -/datum/map_template/ruin/lavaland/swarmer_boss - name = "Crashed Shuttle" - id = "swarmerboss" - description = "A Syndicate shuttle had an unfortunate stowaway..." - suffix = "lavaland_surface_swarmer_crash.dmm" - allow_duplicates = FALSE - cost = 20 \ No newline at end of file +/datum/map_template/ruin/lavaland/cult_shuttle + name = "Crashed Cult Hive" + id = "cultshuttle" + description = "A once-bustling home for zealots of the blood-worshiping type. Turns out practicing \ + dark rituals mid-jump isn't the best idea." + suffix = "lavaland_surface_cultcrash.dmm" + cost = 10 \ No newline at end of file diff --git a/code/datums/ruins/space.dm b/code/datums/ruins/space.dm index 5ae3762a00..ca9e8c84aa 100644 --- a/code/datums/ruins/space.dm +++ b/code/datums/ruins/space.dm @@ -7,8 +7,10 @@ id = "zoo" suffix = "abandonedzoo.dmm" name = "Biological Storage Facility" - description = "In case society crumbles, we will be able to restore our zoos to working order with the breeding stock kept in these 100% secure and unbreachable storage facilities. \ - At no point has anything escaped. That's our story, and we're sticking to it." + description = "In case society crumbles, we will be able to restore our \ + zoos to working order with the breeding stock kept in these 100% \ + secure and unbreachable storage facilities. At no point has anything \ + escaped. That's our story, and we're sticking to it." /datum/map_template/ruin/space/asteroid1 id = "asteroid1" @@ -26,14 +28,18 @@ id = "asteroid3" suffix = "asteroid3.dmm" name = "Asteroid 3" - description = "This asteroid floating in space has no official designation, because the scientist that discovered it deemed it 'super dull'." + description = "This asteroid floating in space has no official \ + designation, because the scientist that discovered it deemed it \ + 'super dull'." /datum/map_template/ruin/space/asteroid4 id = "asteroid4" suffix = "asteroid4.dmm" name = "Asteroid 4" - description = "Nanotrasen Escape Pods have a 100%* success rate, and a 99%* customer satisfaction rate. \ - *Please note that these statistics, are taken from pods that have successfully docked with a recovery vessel." + description = "Nanotrasen Escape Pods have a 100%* success rate, and a \ + 99%* customer satisfaction rate. *Please note that these statistics, \ + are taken from pods that have successfully docked with a recovery \ + vessel." /datum/map_template/ruin/space/asteroid5 id = "asteroid5" @@ -45,22 +51,19 @@ id = "deep-storage" suffix = "deepstorage.dmm" name = "Survivalist Bunker" - description = "Assume the best, prepare for the worst. Generally, you should do so by digging a three man heavily fortified bunker into a giant unused asteroid. \ - Then make it self sufficient, mask any evidence of construction, hook it covertly into the telecommunications network and hope for the best." - -/datum/map_template/ruin/space/bigderelict1 - id = "bigderelict1" - suffix = "bigderelict1.dmm" - name = "Derelict Tradepost" - description = "A once-bustling tradestation that handled imports and exports from nearby stations now lays eerily dormant. \ - The last received message was a distress call from one of the on-board officers, but we had no success in making contact again." + description = "Assume the best, prepare for the worst. Generally, you \ + should do so by digging a three man heavily fortified bunker into \ + a giant unused asteroid. Then make it self sufficient, mask any \ + evidence of construction, hook it covertly into the \ + telecommunications network and hope for the best." /datum/map_template/ruin/space/derelict1 id = "derelict1" suffix = "derelict1.dmm" name = "Derelict 1" - description = "Nothing to see here citizen, move along, certainly no xeno outbreaks on this piece of station debris. That purple stuff? It's uh... station nectar. \ - It's a top secret research installation." + description = "Nothing to see here citizen, move along, certainly no \ + xeno outbreaks on this piece of station debris. That purple stuff? \ + It's uh... station nectar. It's a top secret research installation." /datum/map_template/ruin/space/derelict2 id = "derelict2" @@ -74,97 +77,86 @@ id = "derelict3" suffix = "derelict3.dmm" name = "Derelict 3" - description = "These hulks were once part of a larger structure, where the three great \[REDACTED\] were forged." + description = "These hulks were once part of a larger structure, where \ + the three great \[REDACTED\] were forged." /datum/map_template/ruin/space/derelict4 id = "derelict4" suffix = "derelict4.dmm" name = "Derelict 4" - description = "Centcom ferries have never crashed, will never crash, there is no current investigation into a crashed ferry, and we will not let Internal Affairs trample over high security \ - information in the name of this baseless witchhunt." + description = "Centcom ferries have never crashed, will never crash, \ + there is no current investigation into a crashed ferry, and we \ + will not let Internal Affairs trample over high security information \ + in the name of this baseless witchhunt." /datum/map_template/ruin/space/derelict5 id = "derelict5" suffix = "derelict5.dmm" name = "Derelict 5" - description = "The plan is, we put a whole bunch of crates full of treasure in this disused warehouse, launch it into space, and then ignore it. Forever." + description = "The plan is, we put a whole bunch of crates full of \ + treasure in this disused warehouse, launch it into space, and then \ + ignore it. Forever." /datum/map_template/ruin/space/derelict6 id = "derelict6" suffix = "derelict6.dmm" name = "Derelict 6" - description = "The hush-hush of Nanotrasen when it comes to stations seemingly vanishing off the radar is an interesting topic, theories of nuclear destruction float about while Nanotrasen \ - flat-out denies said stations ever existing." + description = "The hush-hush of Nanotrasen when it comes to stations seemingly vanishing off the radar is an interesting topic, \ + theories of nuclear destruction float about while Nanotrasen flat-out denies said stations ever existing." /datum/map_template/ruin/space/empty_shell id = "empty-shell" suffix = "emptyshell.dmm" name = "Empty Shell" - description = "Cosy, rural property availible for young professional couple. Only twelve parsecs from the nearest hyperspace lane!" + description = "Cosy, rural property availible for young professional \ + couple. Only twelve parsecs from the nearest hyperspace lane!" /datum/map_template/ruin/space/gas_the_lizards id = "gas-the-lizards" suffix = "gasthelizards.dmm" name = "Disposal Facility 17" - description = "Gas efficiency at 95.6%, fluid elimination at 96.2%. Will require renewed supplies of 'carpet' before the end of the quarter." + description = "Gas efficiency at 95.6%, fluid elimination at 96.2%. \ + Will require renewed supplies of 'carpet' before the end of the \ + quarter." /datum/map_template/ruin/space/intact_empty_ship id = "intact-empty-ship" suffix = "intactemptyship.dmm" name = "Authorship" - description = "Just somewhere quiet, where I can focus on my work with no interruptions." - -/datum/map_template/ruin/space/caravanambush - id = "space/caravanambush" - suffix = "caravanambush.dmm" - name = "Syndicate Ambush" - description = "A caravan route used by passing cargo freights has been ambushed by a salvage team manned by the syndicate. \ - The caravan managed to send off a distress message before being surrounded, their video feed cutting off as the sound of gunfire and a parrot was heard." - -/datum/map_template/ruin/space/originalcontent - id = "paperwizard" - suffix = "originalcontent.dmm" - name = "A Giant Ball of Paper in Space" - description = "Sightings of a giant wad of paper hurling through the depths of space have been recently reported by multiple outposts near this sector. \ - A giant wad of paper, really? Damn prank callers." + description = "Just somewhere quiet, where I can focus on my work with \ + no interruptions." /datum/map_template/ruin/space/mech_transport id = "mech-transport" suffix = "mechtransport.dmm" name = "CF Corsair" - description = "Well, when is it getting here? I have bills to pay; very well-armed clients who want their shipments as soon as possible! I don't care, just find it!" + description = "Well, when is it getting here? I have bills to pay; very \ + well-armed clients who want their shipments as soon as possible! I \ + don't care, just find it!" /datum/map_template/ruin/space/onehalf id = "onehalf" suffix = "onehalf.dmm" name = "DK Excavator 453" - description = "Based on the trace elements we've detected on the gutted asteroids, we suspect that a mining ship using a restricted engine is somewhere in the area. \ - We'd like to request a patrol vessel to investigate." + description = "Based on the trace elements we've detected on the \ + gutted asteroids, we suspect that a mining ship using a restricted \ + engine is somewhere in the area. We'd like to request a patrol vessel \ + to investigate." /datum/map_template/ruin/space/spacebar id = "spacebar" suffix = "spacebar.dmm" name = "The Rampant Golem and Yellow Hound" - description = "No questions asked. No shoes/foot protection, no service. No tabs. No violence in the inside areas. That's it. Welcome to the Rampant Golem and Yellow Hound. \ - Can I take your order?" - -/datum/map_template/ruin/space/spacehotel - id = "spacehotel" - suffix = "spacehotel.dmm" - name = "The Twin-Nexus Hotel" - description = "A interstellar hotel, where the weary spaceman can rest their head and relax, assured that the residental staff will not murder them in their sleep. Probably." + description = "No questions asked. No shoes/foot protection, no service. \ + No tabs. No violence in the inside areas. That's it. Welcome to the \ + Rampant Golem and Yellow Hound. Can I take your order?" /datum/map_template/ruin/space/turreted_outpost id = "turreted-outpost" suffix = "turretedoutpost.dmm" name = "Unnamed Turreted Outpost" - description = "We'd ask them to stop blaring that ruskiepop music, but none of us are brave enough to go near those death turrets they have." - -/datum/map_template/ruin/space/oldshuttle - id = "spaceman-origins" - suffix = "shuttlerelic.dmm" - name = "Strange Ship" - description = "A ship seemingly lost, drifting along the stars. This thing looks like it belongs in ancient times." + description = "We'd ask them to stop blaring that ruskiepop music, but \ + none of us are brave enough to go near those death turrets they have." /datum/map_template/ruin/space/way_home id = "way-home" @@ -176,80 +168,81 @@ id = "djstation" suffix = "djstation.dmm" name = "DJ Station" - description = "Until very recently this pirate radio station was used to harangue local space stations over a variety of perceived \"ethics violations\". \ - It seems like someone finally got sick of it, but the equipment still works." + description = "Until very recently this pirate radio station was used \ + to harangue local space stations over a variety of perceived \ + \"ethics violations\". It seems like someone finally got sick of \ + it, but the equipment still works." /datum/map_template/ruin/space/thederelict id = "thederelict" suffix = "thederelict.dmm" name = "Kosmicheskaya Stantsiya 13" - description = "The true fate of Kosmicheskaya Stantsiya 13 is an open question to this day. Most corporations deny its existence, for fear of questioning on what became of its crew." + description = "The true fate of Kosmicheskaya Stantsiya 13 is an open \ + question to this day. Most corporations deny its existence, \ + for fear of questioning on what became of its crew." /datum/map_template/ruin/space/abandonedteleporter id = "abandonedteleporter" suffix = "abandonedteleporter.dmm" name = "Abandoned Teleporter" - description = "In space construction the teleporter is often the first system brought online. \ - This lonely half built teleporter is a sign of a proposed structure that for one reason or another just never got built." + description = "In space construction the teleporter is often the \ + first system brought online. This lonely half built teleporter \ + is a sign of a proposed structure that for one reason or another \ + just never got built." /datum/map_template/ruin/space/crashedclownship id = "crashedclownship" suffix = "crashedclownship.dmm" name = "Crashed Clown Ship" - description = "For centuries the promise of a new clown homeworld has been the siren call for countless clown vessels. \ - Alas the clown's lust for shinanagans means that successful voyages are almost unheard of, with most vessels falling to hilarious consequences almost immediately." + description = "For centuries the promise of a new clown homeworld \ + has been the siren call for countless clown vessels. Alas the \ + clown's lust for shinanagans means that successful voyages \ + are almost unheard of, with most vessels falling to hilarious \ + consequences almost immediately." /datum/map_template/ruin/space/crashedship id = "crashedship" suffix = "crashedship.dmm" name = "Crashed Ship" - description = "Among civilian vessels the most common cause of tragedy is lack of food. \ - This ship was outfited with a multitude of food generating features, then summarily ran into an asteroid shortly after takeoff." + description = "Among civilian vessels the most common cause of \ + tragedy is lack of food. This ship was outfited with a \ + multitude of food generating features, then summarily ran \ + into an asteroid shortly after takeoff." /datum/map_template/ruin/space/listeningstation id = "listeningstation" suffix = "listeningstation.dmm" name = "Syndicate Listening Station" - description = "Listening stations form the backbone of the syndicate's information gathering operations. \ - Assignment to these stations is dreaded by most agents, as it entails long and lonely shifts listening to nearby stations chatter incessently about the most meaningless things." + description = "Listening stations form the backbone of the \ + syndicate's information gathering operations. Assignment to \ + these stations is dreaded by most agents, as it entails long \ + and lonely shifts listening to nearby stations chatter \ + incessently about the most meaningless things." /datum/map_template/ruin/space/oldAIsat id = "oldAIsat" suffix = "oldAIsat.dmm" name = "Abandoned Telecommunications Satellite" - description = "When the inspector told the employees that they were all fired, and that their jobs \"could be done by trained lizards anyway\", they reacted badly. \ - This event and others is the reason why Central always sends an ERT squad with their competent inspectors. Incompetent inspectors are told they can \"do it alone\" because they're \"that pro\". \ - Incompetent inspectors believe this." + description = "When the inspector told the employees that they \ + were all fired, and that their jobs \"could be done by \ + trained lizards anyway\", they reacted badly. This event and \ + others is the reason why Central always sends an ERT squad with \ + their competent inspectors. Incompetent inspectors are told \ + they can \"do it alone\" because they're \"that pro\". \ + Incompetent inspectors believe this." /datum/map_template/ruin/space/oldteleporter id = "oldteleporter" suffix = "oldteleporter.dmm" name = "Detached Teleporter" - description = "The structure of this surprisingly intact teleporter suggests that it was once part of a larger structure, but what remains of said structure, if anything, can only be guessed at." + description = "The structure of this surprisingly intact \ + teleporter suggests that it was once part of a larger structure, \ + but what remains of said structure, if anything, can \ + only be guessed at." -/datum/map_template/ruin/space/vaporwave - id = "vaporwave" - suffix = "vaporwave.dmm" - name = "Aesthetic Outpost" - description = "Pause and remember-- You are unique.You are special. Every mistake, trial, and hardship has helped to sculpt your real beauty. \ - Stop hating yourself and start appreciating and loving yourself!" - -/datum/map_template/ruin/space/bus - id = "bus" - suffix = "bus.dmm" - name = "Waylaid Buses" - description = "There seems to be a pair of buses that pulled over for repairs. What were they doing..? Their shipment sure seems to be filled with a strange mix. \ - Anyway, it looks like some people tried to fix it up for a long time but didn't really get anywhere..." - - -/datum/map_template/ruin/space/miracle - id = "miracle" - suffix = "miracle.dmm" - name = "Ordinary Space Tile" - description = "Absolutely nothing strange going on here please move along, plenty more space to see right this way!" - -/datum/map_template/ruin/space/dragoon - id = "dragoon" - suffix = "dragoontomb.dmm" - name = "Sky Bulge Tomb" - description = "A tomb of a dice-loving dragoon in space. Turns out he got too good and jumped too high. Contains the Sky Bulge, which when thrown, warps the thrower." \ No newline at end of file +/datum/map_template/ruin/space/puzzle1 + id = "puzzle1" + suffix = "puzzle1.dmm" + name = "Strange Structure" + description = "A strange, free-floating structure that has been aimlessly drifting through the void \ + of space for who knows how long. Seems like whatever built it was really bored." \ No newline at end of file diff --git a/code/datums/shuttles.dm b/code/datums/shuttles.dm index 911a37280a..48a433b485 100644 --- a/code/datums/shuttles.dm +++ b/code/datums/shuttles.dm @@ -6,16 +6,8 @@ var/shuttle_id var/description - var/prerequisites var/admin_notes - var/credit_cost = INFINITY - var/can_be_bought = TRUE - - -/datum/map_template/shuttle/proc/prerequisites_met() - return TRUE - /datum/map_template/shuttle/New() shuttle_id = "[port_id]_[suffix]" mappath = "[prefix][shuttle_id].dmm" @@ -40,137 +32,128 @@ /datum/map_template/shuttle/emergency/airless suffix = "airless" - name = "Build your own shuttle kit" - description = "Save money by building your own shuttle! The chassis will dock upon purchase, but launch will have to be authorized as usual via shuttle call. Interior and atmosphere not included." + name = "(Shuttle Under Construction)" + description = "The documentation hasn't been finished yet for this \ + shuttle.\n\ + In case of emergency: Break glass." admin_notes = "No brig, no medical facilities, no air." - credit_cost = -7500 /datum/map_template/shuttle/emergency/asteroid suffix = "asteroid" - name = "Asteroid Station Emergency Shuttle" - description = "A respectable mid-sized shuttle that first saw service shuttling Nanotrasen crew to and from their asteroid belt embedded facilities." - credit_cost = 3000 + name = "Asteroid emergency shuttle" /datum/map_template/shuttle/emergency/bar suffix = "bar" name = "The Emergency Escape Bar" - description = "Features include sentient bar staff (a Bardrone and a Barmaid), bathroom, a quality lounge for the heads, and a large gathering table." - admin_notes = "Bardrone and Barmaid are GODMODE, will be automatically sentienced by the fun balloon at 60 seconds before arrival. \ - Has medical facilities." - credit_cost = 5000 - -/datum/map_template/shuttle/emergency/meteor - suffix = "meteor" - name = "An Asteroid With Engines Strapped To It" - description = "A hollowed out asteroid with engines strapped to it. Due to its size and difficulty in steering it, this shuttle may damage the docking area." - admin_notes = "This shuttle will likely crush escape, killing anyone there." - credit_cost = -5000 - -/datum/map_template/shuttle/emergency/luxury - suffix = "luxury" - name = "Luxury Shuttle" - description = "A luxurious golden shuttle complete with an indoor swimming pool. Each crewmember wishing to board must bring 500 credits, payable in cash and mineral coin." - admin_notes = "Due to the limited space for non paying crew, this shuttle may cause a riot." - credit_cost = 10000 + description = "Features include sentient bar staff (a Bardrone and a \ + Barmaid), bathroom, a quality lounge for the heads, and a \ + large gathering table." + admin_notes = "Bardrone and Barmaid are GODMODE, will be automatically \ + sentienced by the fun balloon at 60 seconds before arrival. Has \ + medical facilities." /datum/map_template/shuttle/emergency/birdboat suffix = "birdboat" - name = "Birdboat Station Emergency Shuttle" - description = "Though a little on the small side, this shuttle is feature complete, which is more than can be said for the pattern of station it was commissioned for." - credit_cost = 1000 + name = "Birdboat emergency shuttle" /datum/map_template/shuttle/emergency/box suffix = "box" - name = "Box Station Emergency Shuttle" - credit_cost = 2000 - description = "The gold standard in emergency exfiltration, this tried and true design is equipped with everything the crew needs for a safe flight home." + name = "Box emergency shuttle" /datum/map_template/shuttle/emergency/clown suffix = "clown" name = "Snappop(tm)!" - description = "Hey kids and grownups! \ - Are you bored of DULL and TEDIOUS shuttle journeys after you're evacuating for probably BORING reasons. Well then order the Snappop(tm) today! \ - We've got fun activities for everyone, an all access cockpit, and no boring security brig! Boo! Play dress up with your friends! \ - Collect all the bedsheets before your neighbour does! Check if the AI is watching you with our patent pending \"Peeping Tom AI Multitool Detector\" or PEEEEEETUR for short. \ - Have a fun ride!" - admin_notes = "Brig is replaced by anchored greentext book surrounded by lavaland chasms, stationside door has been removed to prevent accidental dropping. No brig." - credit_cost = 8000 + description = "Hey kids and grownups! Are you bored of DULL and TEDIOUS \ + shuttle journeys after you're evacuating for probably BORING reasons. \ + Well then order the Snappop(tm) today! We've got fun activities for \ + everyone, an all access cockpit, and no boring security brig! Boo! \ + Play dress up with your friends! Collect all the bedsheets before \ + your neighbour does! Check if the AI is watching you with our patent \ + pending \"Peeping Tom AI Multitool Detector\" or PEEEEEETUR for \ + short. Have a fun ride!" + admin_notes = "Brig is replaced by anchored greentext book surrounded by \ + lavaland chasms, stationside door has been removed to prevent \ + accidental dropping. No brig." /datum/map_template/shuttle/emergency/cramped suffix = "cramped" name = "Secure Transport Vessel 5 (STV5)" - description = "Well, looks like Centcomm only had this ship in the area, they probably weren't expecting you to need evac for a while. \ - Probably best if you don't rifle around in whatever equipment they were transporting. I hope you're friendly with your coworkers, because there is very little space in this thing.\n\ - \n\ - Contains contraband armory guns, maintenance loot, and abandoned crates!" - admin_notes = "Due to origin as a solo piloted secure vessel, has an active GPS onboard labeled STV5." - credit_cost = -7500 + description = "Well, looks like Centcomm only had this ship in the area, \ + they probably weren't expecting you to need evac for a while. \ + Probably best if you don't rifle around in whatever equipment they \ + were transporting. I hope you're friendly with your coworkers, \ + because there is very little space in this thing.\n\ + \n\ + Contains contraband armory guns, maintenance loot, and abandoned \ + crates!" + admin_notes = "Due to origin as a solo piloted secure vessel, has an \ + active GPS onboard labeled STV5." /datum/map_template/shuttle/emergency/meta suffix = "meta" - name = "Meta Station Emergency Shuttle" - credit_cost = 4000 - description = "A fairly standard shuttle, though larger and slightly better equipped than the Box Station variant." + name = "Meta emergency shuttle" /datum/map_template/shuttle/emergency/mini suffix = "mini" - name = "Ministation emergency shuttle" - credit_cost = 1000 - description = "Despite it's namesake, this shuttle is actually only slightly smaller than standard, and still complete with a brig and medbay." - -/datum/map_template/shuttle/emergency/scrapheap - suffix = "scrapheap" - name = "Standby Evacuation Vessel \"Scrapheap Challenge\"" - credit_cost = -1000 - description = "Due to a lack of functional emergency shuttles, we bought this second hand from a scrapyard and pressed it into service. Please do not lean to heavily on the exterior windows, they are fragile." - admin_notes = "An abomination with no functional medbay, sections missing, and some very fragile windows. Surprisingly airtight." + name = "Mini emergency shuttle" /datum/map_template/shuttle/emergency/narnar suffix = "narnar" name = "Shuttle 667" - description = "Looks like this shuttle may have wandered into the darkness between the stars on route to the station. Let's not think too hard about where all the bodies came from." - admin_notes = "Contains real cult ruins, mob eyeballs, and inactive constructs. Cult mobs will automatically be sentienced by fun balloon. \ - Cloning pods in 'medbay' area are showcases and nonfunctional." - -/datum/map_template/shuttle/emergency/pubby - suffix = "pubby" - name = "Pubby Station Emergency Shuttle" - description = "A small, but feature complete shuttle. It boasts a card table to keep crew members occupied on the long flight home." - credit_cost = 1000 + description = "Looks like this shuttle may have wandered into the \ + darkness between the stars on route to the station. Let's not think \ + too hard about where all the bodies came from." + admin_notes = "Contains real cult ruins, mob eyeballs, and inactive \ + constructs. Cult mobs will automatically be sentienced by fun \ + balloon. Cloning pods in 'medbay' area are showcases and \ + nonfunctional." /datum/map_template/shuttle/emergency/supermatter suffix = "supermatter" name = "Hyperfractal Gigashuttle" description = "\"I dunno, this seems kinda needlessly complicated.\"\n\ - \"This shuttle has very a very high safety record, according to Centcom Officer Cadet Yins.\"\n\ - \"Are you sure?\"\n\ - \"Yes, it has a safety record of N-A-N, which is apparently larger than 100%.\"" - admin_notes = "Supermatter that spawns on shuttle is special anchored 'hugbox' supermatter that cannot take damage and does not take in or emit gas. \ - Outside of admin intervention, it cannot explode. \ - It does, however, still dust anything on contact, emits high levels of radiation, and induce hallucinations in anyone looking at it without protective goggles. \ - Emitters spawn powered on, expect admin notices, they are harmless." + \"This shuttle has very a very high safety record, according to \ + Centcom Officer Cadet Yins.\"\n\ + \"Are you sure?\"\n\ + \"Yes, it has a safety record of N-A-N, which is apparently \ + larger than 100%.\"" + admin_notes = "Supermatter that spawns on shuttle is special anchored \ + 'hugbox' supermatter that cannot take damage and does not take in \ + or emit gas. Outside of admin intervention, it cannot explode. \ + It does, however, still dust anything on contact, emits high levels \ + of radiation, and induce hallucinations in anyone looking at it \ + without protective goggles. Emitters spawn powered on, expect \ + admin notices, they are harmless." /datum/map_template/shuttle/emergency/imfedupwiththisworld suffix = "imfedupwiththisworld" name = "Oh, Hi Daniel" - description = "How was space work today? Oh, pretty good. We got a new space station and the company will make a lot of money. What space station? I cannot tell you; it's space confidential. \ - Aw, come space on. Why not? No, I can't. Anyway, how is your space roleplay life?" - credit_cost = -5000 + description = "How was space work today? \ + Oh, pretty good. We got a new space station and the company will make a lot of money. \ + What space station? \ + I cannot tell you; it's space confidential. \ + Aw, come space on. Why not? \ + No, I can't. Anyway, how is your space roleplay life?" /datum/map_template/shuttle/emergency/goon suffix = "goon" name = "NES Port" - description = "The Nanotrasen Emergency Shuttle Port(NES Port for short) is a shuttle used at other less known nanotrasen facilities and has a more open inside for larger crowds." - credit_cost = 3000 + description = "The Nanotrasen Emergency Shuttle Port(NES Port for short) \ + is a shuttle used at other less known nanotrasen facilities \ + and has a more open inside for larger crowds." /datum/map_template/shuttle/emergency/wabbajack suffix = "wabbajack" name = "NT Lepton Violet" - description = "The research team based on this vessel went missing one day, and no amount of investigation could discover what happened to them. \ - The only occupants were a number of dead rodents, who appeared to have clawed each other to death. \ - Needless to say, no engineering team wanted to go near the thing, and it's only being used as an Emergency Escape Shuttle because there is literally nothing else available." - admin_notes = "If the crew can solve the puzzle, they will wake the wabbajack statue. It will likely not end well. There's a reason it's boarded up. Maybe they should have just left it alone." - credit_cost = 15000 + description = "The research team based on this vessel went missing one \ + day, and no amount of investigation could discover what happened to \ + them. The only occupants were a number of dead rodents, who appeared to \ + have clawed each other to death. Needless to say, no engineering team \ + wanted to go near the thing, and it's only being used as an Emergency \ + Escape Shuttle because there is literally nothing else available." + admin_notes = "If the crew can solve the puzzle, they will wake the \ + wabbajack statue. It will likely not end well. There's a reason it's \ + boarded up. Maybe they should have just left it alone." /datum/map_template/shuttle/ferry/base suffix = "base" @@ -180,19 +163,28 @@ /datum/map_template/shuttle/ferry/meat suffix = "meat" name = "\"meat\" ferry" - description = "Ahoy! We got all kinds o' meat aft here. Meat from plant people, people who be dark, not in a racist way, just they're dark black. \ - Oh and lizard meat too,mighty popular that is. Definitely 100% fresh, just ask this guy here. *person on meatspike moans* See? \ - Definitely high quality meat, nothin' wrong with it, nothin' added, definitely no zombifyin' reagents!" - admin_notes = "Meat currently contains no zombifying reagents, lizard on meatspike must be spawned in." + description = "Ahoy! We got all kinds o' meat aft here. Meat from plant \ + people, people who be dark, not in a racist way, just they're dark \ + black. Oh and lizard meat too,mighty popular that is. Definitely \ + 100% fresh, just ask this guy here. *person on meatspike moans* See? \ + Definitely high quality meat, nothin' wrong with it, nothin' added, \ + definitely no zombifyin' reagents!" + admin_notes = "Meat currently contains no zombifying reagents, lizard on \ + meatspike must be spawned in." /datum/map_template/shuttle/ferry/lighthouse suffix = "lighthouse" name = "The Lighthouse(?)" - description = "*static*... part of a much larger vessel, possibly military in origin. \ - The weapon markings aren't anything we've seen ...static... by almost never the same person twice, possible use of unknown storage ...static... \ - seeing ERT officers onboard, but no missions are on file for ...static...static...annoying jingle... only at The LIGHTHOUSE! \ - Fulfilling needs you didn't even know you had. We've got EVERYTHING, and something else!" - admin_notes = "Currently larger than ferry docking port on Box, will not hit anything, but must be force docked. Trader and ERT bodyguards are not included." + description = "*static*... part of a much larger vessel, possibly \ + military in origin. The weapon markings aren't anything we've seen \ + ... static ... by almost never the same person twice, possible use \ + of unknown storage ... static ... seeing ERT officers onboard, but \ + no missions are on file for ... static ... static ... annoying \ + jingle ... only at The LIGHTHOUSE! Fulfilling needs you didn't even \ + know you had. We've got EVERYTHING, and something else!" + admin_notes = "Currently larger than ferry docking port on Box, will not \ + hit anything, but must be force docked. Trader and ERT bodyguards are \ + not included." /datum/map_template/shuttle/whiteship/box suffix = "box" @@ -202,10 +194,6 @@ suffix = "meta" name = "NT Recovery White-ship" -/datum/map_template/shuttle/whiteship/pubby - suffix = "pubby" - name = "NT White UFO" - /datum/map_template/shuttle/cargo/box suffix = "box" name = "supply shuttle (Box)" @@ -213,10 +201,3 @@ /datum/map_template/shuttle/cargo/birdboat suffix = "birdboat" name = "supply shuttle (Birdboat)" - -/datum/map_template/shuttle/emergency/delta - suffix = "delta" - name = "Delta Station Emergency Shuttle" - description = "A large shuttle for a large station, this shuttle can comfortably fit all your overpopulation and crowding needs. Complete with all facilities plus additional equipment." - admin_notes = "Go big or go home." - credit_cost = 7500 diff --git a/code/datums/status_effects/buffs.dm b/code/datums/status_effects/buffs.dm deleted file mode 100644 index 35916bd520..0000000000 --- a/code/datums/status_effects/buffs.dm +++ /dev/null @@ -1,139 +0,0 @@ -//Largely beneficial effects go here, even if they have drawbacks. An example is provided in Shadow Mend. - -/datum/status_effect/shadow_mend - id = "shadow_mend" - duration = 3 - alert_type = /obj/screen/alert/status_effect/shadow_mend - -/obj/screen/alert/status_effect/shadow_mend - name = "Shadow Mend" - desc = "Shadowy energies wrap around your wounds, sealing them at a price. After healing, you will slowly lose health every three seconds for thirty seconds." - icon_state = "shadow_mend" - -/datum/status_effect/shadow_mend/on_apply() - owner.visible_message("Violet light wraps around [owner]'s body!", "Violet light wraps around your body!") - playsound(owner, 'sound/magic/Teleport_app.ogg', 50, 1) - -/datum/status_effect/shadow_mend/tick() - owner.adjustBruteLoss(-15) - owner.adjustFireLoss(-15) - -/datum/status_effect/shadow_mend/on_remove() - owner.visible_message("The violet light around [owner] glows black!", "The tendrils around you cinch tightly and reap their toll...") - playsound(owner, 'sound/magic/Teleport_diss.ogg', 50, 1) - owner.apply_status_effect(STATUS_EFFECT_VOID_PRICE) - - -/datum/status_effect/void_price - id = "void_price" - duration = 30 - tick_interval = 3 - alert_type = /obj/screen/alert/status_effect/void_price - -/obj/screen/alert/status_effect/void_price - name = "Void Price" - desc = "Black tendrils cinch tightly against you, digging wicked barbs into your flesh." - icon_state = "shadow_mend" - -/datum/status_effect/void_price/tick() - owner << sound('sound/magic/Summon_Karp.ogg', volume = 25) - owner.adjustBruteLoss(3) - - - -/datum/status_effect/vanguard_shield - id = "vanguard" - duration = 20 - alert_type = /obj/screen/alert/status_effect/vanguard - -/obj/screen/alert/status_effect/vanguard - name = "Vanguard" - desc = "You're absorbing stuns! 25% of all stuns taken will affect you after this effect ends." - icon_state = "vanguard" - alerttooltipstyle = "clockcult" - -/obj/screen/alert/status_effect/vanguard/MouseEntered(location,control,params) - var/mob/living/L = usr - if(istype(L)) //this is probably more safety than actually needed - var/vanguard = L.stun_absorption["vanguard"] - desc = initial(desc) - desc += "
    [vanguard["stuns_absorbed"] * 2] seconds of stuns held back.
    [round(min(vanguard["stuns_absorbed"] * 0.25, 20)) * 2] seconds of stun will affect you." - ..() - -/datum/status_effect/vanguard_shield/on_apply() - add_logs(owner, null, "gained Vanguard stun immunity") - owner.add_stun_absorption("vanguard", 200, 1, "'s yellow aura momentarily intensifies!", "Your ward absorbs the stun!", " radiating with a soft yellow light!") - owner.visible_message("[owner] begins to faintly glow!", "You will absorb all stuns for the next twenty seconds.") - -/datum/status_effect/vanguard_shield/on_remove() - var/vanguard = owner.stun_absorption["vanguard"] - var/stuns_blocked = 0 - if(vanguard) - stuns_blocked = round(min(vanguard["stuns_absorbed"] * 0.25, 20)) - if(owner.stat != DEAD) - var/message_to_owner = "You feel your Vanguard quietly fade..." - var/otheractiveabsorptions = FALSE - for(var/i in owner.stun_absorption) - if(owner.stun_absorption[i]["end_time"] > world.time && owner.stun_absorption[i]["priority"] > vanguard["priority"]) - otheractiveabsorptions = TRUE - if(!ratvar_awakens && stuns_blocked && !otheractiveabsorptions) - vanguard["end_time"] = 0 //so it doesn't absorb the stuns we're about to apply - owner.Stun(stuns_blocked) - owner.Weaken(stuns_blocked) - message_to_owner = "The weight of the Vanguard's protection crashes down upon you!" - if(stuns_blocked >= 15) - message_to_owner += "\nYou faint from the exertion!" - stuns_blocked *= 2 - owner.Paralyse(stuns_blocked) - owner.visible_message("[owner]'s glowing aura fades!", message_to_owner) - add_logs(owner, null, "lost Vanguard stun immunity[stuns_blocked ? "and been stunned for [stuns_blocked]":""]") - - - -/datum/status_effect/inathneqs_endowment - id = "inathneqs_endowment" - duration = 15 - alert_type = /obj/screen/alert/status_effect/inathneqs_endowment - -/obj/screen/alert/status_effect/inathneqs_endowment - name = "Inath-neq's Endowment" - desc = "Adrenaline courses through you as the Resonant Cogwheel's energy shields you from all harm!" - icon_state = "inathneqs_endowment" - alerttooltipstyle = "clockcult" - -/datum/status_effect/inathneqs_endowment/on_apply() - add_logs(owner, null, "gained Inath-neq's invulnerability") - owner.visible_message("[owner] shines with azure light!", "You feel Inath-neq's power flow through you! You're invincible!") - var/oldcolor = owner.color - owner.color = "#1E8CE1" - owner.fully_heal() - owner.add_stun_absorption("inathneq", 150, 2, "'s flickering blue aura momentarily intensifies!", "Inath-neq's power absorbs the stun!", " glowing with a flickering blue light!") - owner.status_flags |= GODMODE - animate(owner, color = oldcolor, time = 150, easing = EASE_IN) - addtimer(owner, "update_atom_colour", 150) - playsound(owner, 'sound/magic/Ethereal_Enter.ogg', 50, 1) - -/datum/status_effect/inathneqs_endowment/on_remove() - add_logs(owner, null, "lost Inath-neq's invulnerability") - owner.visible_message("The light around [owner] flickers and dissipates!", "You feel Inath-neq's power fade from your body!") - owner.status_flags &= ~GODMODE - playsound(owner, 'sound/magic/Ethereal_Exit.ogg', 50, 1) - -/datum/status_effect/cyborg_power_regen - id = "power_regen" - duration = 10 - alert_type = /obj/screen/alert/status_effect/power_regen - var/power_to_give = 0 //how much power is gained each tick - -/obj/screen/alert/status_effect/power_regen - name = "Power Regeneration" - desc = "You are quickly regenerating power!" - icon_state = "power_regen" - -/datum/status_effect/cyborg_power_regen/tick() - var/mob/living/silicon/robot/cyborg = owner - if(!istype(cyborg) || !cyborg.cell) - qdel(src) - return - playsound(cyborg, 'sound/effects/light_flicker.ogg', 50, 1) - cyborg.cell.give(power_to_give) diff --git a/code/datums/status_effects/gas.dm b/code/datums/status_effects/gas.dm deleted file mode 100644 index 53a8bb485f..0000000000 --- a/code/datums/status_effects/gas.dm +++ /dev/null @@ -1,30 +0,0 @@ -/datum/status_effect/freon - id = "frozen" - duration = 10 - unique = TRUE - alert_type = /obj/screen/alert/status_effect/freon - var/icon/cube - -/obj/screen/alert/status_effect/freon - name = "Frozen Solid" - desc = "You're frozen inside of an ice cube, and cannot move! You can still do stuff, like shooting. Resist out of the cube!" - icon_state = "frozen" - -/datum/status_effect/freon/on_apply() - if(!owner.stat) - owner << "You become frozen in a cube!" - cube = icon('icons/effects/freeze.dmi', "ice_cube") - owner.overlays += cube - owner.update_canmove() - -/datum/status_effect/freon/tick() - owner.update_canmove() - if(owner && owner.bodytemperature >= 310.055) - qdel(src) - -/datum/status_effect/freon/on_remove() - if(!owner.stat) - owner << "The cube melts!" - owner.overlays -= cube - owner.bodytemperature += 100 - owner.update_canmove() diff --git a/code/datums/status_effects/status_effect.dm b/code/datums/status_effects/status_effect.dm deleted file mode 100644 index 3eba8c3aff..0000000000 --- a/code/datums/status_effects/status_effect.dm +++ /dev/null @@ -1,100 +0,0 @@ -//Status effects are used to apply temporary or permanent effects to mobs. Mobs are aware of their status effects at all times. -//This file contains their code, plus code for applying and removing them. -//When making a new status effect, add a define to status_effects.dm in __DEFINES for ease of use! - -var/global/list/all_status_effects = list() //a list of all status effects, if for some reason you need to remove all of them - -/datum/status_effect - var/id = "effect" //Used for screen alerts. - var/duration = -1 //How long the status effect lasts in SECONDS. Enter -1 for an effect that never ends unless removed through some means. - var/tick_interval = 1 //How many seconds between ticks. Leave at 1 for every second. - var/mob/living/owner //The mob affected by the status effect. - var/cosmetic = FALSE //If the status effect only exists for flavor. - var/unique = TRUE //If there can be multiple status effects of this type on one mob. - var/alert_type = /obj/screen/alert/status_effect //the alert thrown by the status effect, contains name and description - -/datum/status_effect/New(mob/living/new_owner) - if(new_owner) - owner = new_owner - if(owner) - LAZYADD(owner.status_effects, src) - all_status_effects += src - addtimer(src, "start_ticking", 1) //Give us time to set any variables - -/datum/status_effect/Destroy() - STOP_PROCESSING(SSprocessing, src) - if(owner) - owner.clear_alert(id) - on_remove() - LAZYREMOVE(owner.status_effects, src) - all_status_effects -= src - return ..() - -/datum/status_effect/proc/start_ticking() - if(!src) - return - if(!owner) - qdel(src) - return - on_apply() - if(alert_type) - var/obj/screen/alert/status_effect/A = owner.throw_alert(id, alert_type) - A.attached_effect = src //so the alert can reference us, if it needs to - START_PROCESSING(SSprocessing, src) - -/datum/status_effect/process() - if(!owner) - qdel(src) - return - if(duration != -1) - duration-- - tick_interval-- - if(!tick_interval) - tick() - tick_interval = initial(tick_interval) - if(!duration) - qdel(src) - -/datum/status_effect/proc/on_apply() //Called whenever the buff is applied. -/datum/status_effect/proc/tick() //Called every tick. -/datum/status_effect/proc/on_remove() //Called whenever the buff expires or is removed. - -//////////////// -// ALERT HOOK // -//////////////// - -/obj/screen/alert/status_effect - name = "Curse of Mundanity" - desc = "You don't feel any different..." - var/datum/status_effect/attached_effect - -////////////////// -// HELPER PROCS // -////////////////// - -/mob/living/proc/apply_status_effect(effect) //applies a given status effect to this mob, returning the effect if it was successful - . = FALSE - var/datum/status_effect/S1 = effect - LAZYINITLIST(status_effects) - for(var/datum/status_effect/S in status_effects) - if(S.id == initial(S1.id) && initial(S1.unique)) - return - S1 = new effect(src) - . = S1 - -/mob/living/proc/remove_status_effect(effect) //removes all of a given status effect from this mob, returning TRUE if at least one was removed - . = FALSE - if(status_effects) - var/datum/status_effect/S1 = effect - for(var/datum/status_effect/S in status_effects) - if(initial(S1.id) == S.id) - qdel(S) - . = TRUE - -/mob/living/proc/has_status_effect(effect) //returns the effect if the mob calling the proc owns the given status effect - . = FALSE - if(status_effects) - var/datum/status_effect/S1 = effect - for(var/datum/status_effect/S in status_effects) - if(initial(S1.id) == S.id) - return S diff --git a/code/datums/weather/weather.dm b/code/datums/weather/weather.dm index dc8857b24b..c1afdea4ca 100644 --- a/code/datums/weather/weather.dm +++ b/code/datums/weather/weather.dm @@ -109,8 +109,7 @@ update_areas() /datum/weather/proc/can_impact(mob/living/L) //Can this weather impact a mob? - var/turf/mob_turf = get_turf(L) - if(mob_turf && (mob_turf.z != target_z)) + if(L.z != target_z) return if(immunity_type in L.weather_immunities) return diff --git a/code/datums/weather/weather_types.dm b/code/datums/weather/weather_types.dm index fda7f82111..6bae9f3d4e 100644 --- a/code/datums/weather/weather_types.dm +++ b/code/datums/weather/weather_types.dm @@ -118,11 +118,11 @@ name = "radiation storm" desc = "A cloud of intense radiation passes through the area dealing rad damage to those who are unprotected." - telegraph_duration = 400 + telegraph_duration = 600 telegraph_message = "The air begins to grow warm." weather_message = "You feel waves of heat wash over you! Find shelter!" - weather_overlay = "ash_storm" + weather_overlay = "radiation" weather_duration_lower = 600 weather_duration_upper = 1500 weather_color = "green" @@ -132,53 +132,33 @@ end_message = "The air seems to be cooling off again." area_type = /area - protected_areas = list(/area/maintenance, /area/ai_monitored/turret_protected/ai_upload, /area/ai_monitored/turret_protected/ai_upload_foyer, /area/ai_monitored/turret_protected/ai, /area/storage/emergency, /area/storage/emergency2, /area/shuttle/labor) + protected_areas = list(/area/maintenance, /area/turret_protected/ai_upload, /area/turret_protected/ai_upload_foyer, /area/turret_protected/ai) target_z = ZLEVEL_STATION immunity_type = "rad" -/datum/weather/rad_storm/telegraph() - ..() - status_alarm("alert") - - /datum/weather/rad_storm/impact(mob/living/L) - var/resist = L.getarmor(null, "rad") - if(prob(40)) + if(prob(20)) if(ishuman(L)) var/mob/living/carbon/human/H = L if(H.dna && H.dna.species) - if(!(RADIMMUNE in H.dna.species.species_traits)) - if(prob(max(0,100-resist))) - H.randmuti() - if(prob(50)) - if(prob(90)) - H.randmutb() - else - H.randmutg() - H.domutcheck() + if(!(RADIMMUNE in H.dna.species.specflags)) + if(prob(50)) + randmuti(H) + if(prob(90)) + randmutb(H) + else + randmutg(H) + H.domutcheck() L.rad_act(20,1) + + L.adjustToxLoss(4) + + + + + /datum/weather/rad_storm/end() if(..()) return - priority_announce("The radiation threat has passed. Please return to your workplaces.", "Anomaly Alert") - status_alarm() - - -/datum/weather/rad_storm/proc/status_alarm(command) //Makes the status displays show the radiation warning for those who missed the announcement. - var/datum/radio_frequency/frequency = SSradio.return_frequency(1435) - - if(!frequency) - return - - var/datum/signal/status_signal = new - var/atom/movable/virtualspeaker/virt = PoolOrNew(/atom/movable/virtualspeaker,null) - status_signal.source = virt - status_signal.transmission_method = 1 - status_signal.data["command"] = "shuttle" - - if(command == "alert") - status_signal.data["command"] = "alert" - status_signal.data["picture_state"] = "radiation" - - frequency.post_signal(src, status_signal) + priority_announce("The radiation threat has passed. Please return to your workplaces.", "Anomaly Alert") \ No newline at end of file diff --git a/code/datums/wires/airalarm.dm b/code/datums/wires/airalarm.dm index a0300f625c..16ee415d78 100644 --- a/code/datums/wires/airalarm.dm +++ b/code/datums/wires/airalarm.dm @@ -1,6 +1,5 @@ /datum/wires/airalarm holder_type = /obj/machinery/airalarm - proper_name = "Air Alarm" /datum/wires/airalarm/New(atom/holder) wires = list( @@ -31,13 +30,13 @@ if(!A.shorted) A.shorted = TRUE A.update_icon() - addtimer(A, "reset", 1200, TIMER_NORMAL, wire) + addtimer(A, "reset", 1200, FALSE, wire) if(WIRE_IDSCAN) // Toggle lock. A.locked = !A.locked if(WIRE_AI) // Disable AI control for a while. if(!A.aidisabled) A.aidisabled = TRUE - addtimer(A, "reset", 100, TIMER_NORMAL, wire) + addtimer(A, "reset", 100, FALSE, wire) if(WIRE_PANIC) // Toggle panic siphon. if(!A.shorted) if(A.mode == 1) // AALARM_MODE_SCRUB diff --git a/code/datums/wires/airlock.dm b/code/datums/wires/airlock.dm index 84b5922945..3f29937945 100644 --- a/code/datums/wires/airlock.dm +++ b/code/datums/wires/airlock.dm @@ -1,6 +1,5 @@ /datum/wires/airlock holder_type = /obj/machinery/door/airlock - proper_name = "Airlock" /datum/wires/airlock/secure randomize = TRUE @@ -18,7 +17,7 @@ /datum/wires/airlock/interactable(mob/user) var/obj/machinery/door/airlock/A = holder - if(!issilicon(user) && A.isElectrified() && A.shock(user, 100)) + if(!istype(user, /mob/living/silicon) && A.isElectrified() && A.shock(user, 100)) return FALSE if(A.panel_open) return TRUE @@ -104,21 +103,17 @@ if(WIRE_POWER1, WIRE_POWER2) // Cut to loose power, repair all to gain power. if(mend && !is_cut(WIRE_POWER1) && !is_cut(WIRE_POWER2)) A.regainMainPower() - if(usr) - A.shock(usr, 50) + A.shock(usr, 50) else A.loseMainPower() - if(usr) - A.shock(usr, 50) + A.shock(usr, 50) if(WIRE_BACKUP1, WIRE_BACKUP2) // Cut to loose backup power, repair all to gain backup power. if(mend && !is_cut(WIRE_BACKUP1) && !is_cut(WIRE_BACKUP2)) A.regainBackupPower() - if(usr) - A.shock(usr, 50) + A.shock(usr, 50) else A.loseBackupPower() - if(usr) - A.shock(usr, 50) + A.shock(usr, 50) if(WIRE_BOLTS) // Cut to drop bolts, mend does nothing. if(!mend) A.bolt() @@ -140,8 +135,7 @@ else if(A.secondsElectrified != -1) A.secondsElectrified = -1 - if(usr) - A.shockedby += text("\[[time_stamp()]\][usr](ckey:[usr.ckey])") + A.shockedby += text("\[[time_stamp()]\][usr](ckey:[usr.ckey])") add_logs(usr, A, "electrified") if(WIRE_SAFETY) // Cut to disable safeties, mend to re-enable. A.safe = mend diff --git a/code/datums/wires/apc.dm b/code/datums/wires/apc.dm index e4c1fec612..3cf21c7b57 100644 --- a/code/datums/wires/apc.dm +++ b/code/datums/wires/apc.dm @@ -1,6 +1,5 @@ /datum/wires/apc holder_type = /obj/machinery/power/apc - proper_name = "APC" /datum/wires/apc/New(atom/holder) wires = list( @@ -29,14 +28,14 @@ if(WIRE_POWER1, WIRE_POWER2) // Short for a long while. if(!A.shorted) A.shorted = TRUE - addtimer(A, "reset", 1200, TIMER_NORMAL, wire) + addtimer(A, "reset", 1200, FALSE, wire) if(WIRE_IDSCAN) // Unlock for a little while. A.locked = FALSE - addtimer(A, "reset", 300, TIMER_NORMAL, wire) + addtimer(A, "reset", 300, FALSE, wire) if(WIRE_AI) // Disable AI control for a very short time. if(!A.aidisabled) A.aidisabled = TRUE - addtimer(A, "reset", 10, TIMER_NORMAL, wire) + addtimer(A, "reset", 10, FALSE, wire) /datum/wires/apc/on_cut(index, mend) var/obj/machinery/power/apc/A = holder diff --git a/code/datums/wires/autolathe.dm b/code/datums/wires/autolathe.dm index 9fb9ae2109..3e55a09937 100644 --- a/code/datums/wires/autolathe.dm +++ b/code/datums/wires/autolathe.dm @@ -1,6 +1,5 @@ /datum/wires/autolathe holder_type = /obj/machinery/autolathe - proper_name = "Autolathe" /datum/wires/autolathe/New(atom/holder) wires = list( @@ -27,13 +26,13 @@ switch(wire) if(WIRE_HACK) A.adjust_hacked(!A.hacked) - addtimer(A, "reset", 60, TIMER_NORMAL, wire) + addtimer(A, "reset", 60, FALSE, wire) if(WIRE_SHOCK) A.shocked = !A.shocked - addtimer(A, "reset", 60, TIMER_NORMAL, wire) + addtimer(A, "reset", 60, FALSE, wire) if(WIRE_DISABLE) A.disabled = !A.disabled - addtimer(A, "reset", 60, TIMER_NORMAL, wire) + addtimer(A, "reset", 60, FALSE, wire) /datum/wires/autolathe/on_cut(wire, mend) var/obj/machinery/autolathe/A = holder diff --git a/code/datums/wires/explosive.dm b/code/datums/wires/explosive.dm index eefc270cc9..b3d64f4490 100644 --- a/code/datums/wires/explosive.dm +++ b/code/datums/wires/explosive.dm @@ -14,7 +14,6 @@ /datum/wires/explosive/c4 holder_type = /obj/item/weapon/c4 - randomize = TRUE //Same behaviour since no wire actually disarms it /datum/wires/explosive/c4/interactable(mob/user) var/obj/item/weapon/c4/P = holder diff --git a/code/datums/wires/particle_accelerator.dm b/code/datums/wires/particle_accelerator.dm index 9d82892bea..47ff6af057 100644 --- a/code/datums/wires/particle_accelerator.dm +++ b/code/datums/wires/particle_accelerator.dm @@ -1,6 +1,5 @@ /datum/wires/particle_accelerator/control_box holder_type = /obj/machinery/particle_accelerator/control_box - proper_name = "Particle Accelerator" /datum/wires/particle_accelerator/control_box/New(atom/holder) wires = list( diff --git a/code/datums/wires/radio.dm b/code/datums/wires/radio.dm index b7b5e0d2c9..cc17d99309 100644 --- a/code/datums/wires/radio.dm +++ b/code/datums/wires/radio.dm @@ -1,6 +1,5 @@ /datum/wires/radio holder_type = /obj/item/device/radio - proper_name = "Radio" /datum/wires/radio/New(atom/holder) wires = list( diff --git a/code/datums/wires/robot.dm b/code/datums/wires/robot.dm index 9f019c23d1..50cd20e500 100644 --- a/code/datums/wires/robot.dm +++ b/code/datums/wires/robot.dm @@ -5,8 +5,7 @@ /datum/wires/robot/New(atom/holder) wires = list( WIRE_AI, WIRE_CAMERA, - WIRE_LAWSYNC, WIRE_LOCKDOWN, - WIRE_RESET_MODULE + WIRE_LAWSYNC, WIRE_LOCKDOWN ) add_duds(2) ..() @@ -23,7 +22,6 @@ status += "The intelligence link display shows [R.connected_ai ? R.connected_ai.name : "NULL"]." status += "The camera light is [!isnull(R.camera) && R.camera.status ? "on" : "off"]." status += "The lockdown indicator is [R.lockcharge ? "on" : "off"]." - status += "The reset module hardware light is [R.has_module() ? "on" : "off"]." return status /datum/wires/robot/on_pulse(wire) @@ -46,9 +44,6 @@ R.show_laws() if(WIRE_LOCKDOWN) R.SetLockdown(!R.lockcharge) // Toggle - if(WIRE_RESET_MODULE) - if(R.has_module()) - R.ResetModule() /datum/wires/robot/on_cut(wire, mend) var/mob/living/silicon/robot/R = holder diff --git a/code/datums/wires/suit_storage_unit.dm b/code/datums/wires/suit_storage_unit.dm index 9f4b5a1de1..9c8a4b27b0 100644 --- a/code/datums/wires/suit_storage_unit.dm +++ b/code/datums/wires/suit_storage_unit.dm @@ -1,6 +1,5 @@ /datum/wires/suit_storage_unit holder_type = /obj/machinery/suit_storage_unit - proper_name = "Suit Storage Unit" /datum/wires/suit_storage_unit/New(atom/holder) wires = list( diff --git a/code/datums/wires/syndicatebomb.dm b/code/datums/wires/syndicatebomb.dm index 1d7f1ebf96..d7f12fe184 100644 --- a/code/datums/wires/syndicatebomb.dm +++ b/code/datums/wires/syndicatebomb.dm @@ -20,7 +20,7 @@ if(WIRE_BOOM) if(B.active) holder.visible_message("\icon[B] An alarm sounds! It's go-") - B.explode_now = TRUE + B.timer = 0 tell_admins(B) if(WIRE_UNBOLT) holder.visible_message("\icon[B] The bolts spin in place for a moment.") @@ -30,28 +30,28 @@ else holder.visible_message("\icon[B] The bomb chirps.") playsound(B, 'sound/machines/chime.ogg', 30, 1) - B.detonation_timer += 300 + B.timer += 30 B.delayedbig = TRUE if(WIRE_PROCEED) holder.visible_message("\icon[B] The bomb buzzes ominously!") playsound(B, 'sound/machines/buzz-sigh.ogg', 30, 1) - var/seconds = B.seconds_remaining() - if(seconds >= 61) // Long fuse bombs can suddenly become more dangerous if you tinker with them. - B.detonation_timer = world.time + 600 - else if(seconds >= 21) - B.detonation_timer -= 100 - else if(seconds >= 11) // Both to prevent negative timers and to have a little mercy. - B.detonation_timer = world.time + 100 + if(B.timer >= 61) // Long fuse bombs can suddenly become more dangerous if you tinker with them. + B.timer = 60 + else if(B.timer >= 21) + B.timer -= 10 + else if(B.timer >= 11) // Both to prevent negative timers and to have a little mercy. + B.timer = 10 if(WIRE_ACTIVATE) if(!B.active && !B.defused) holder.visible_message("\icon[B] You hear the bomb start ticking!") - B.activate() + playsound(B, 'sound/machines/click.ogg', 30, 1) + B.active = TRUE B.update_icon() else if(B.delayedlittle) holder.visible_message("\icon[B] Nothing happens.") else holder.visible_message("\icon[B] The bomb seems to hesitate for a moment.") - B.detonation_timer += 100 + B.timer += 10 B.delayedlittle = TRUE /datum/wires/syndicatebomb/on_cut(wire, mend) @@ -63,7 +63,7 @@ else if(B.active) holder.visible_message("\icon[B] An alarm sounds! It's go-") - B.explode_now = TRUE + B.timer = 0 tell_admins(B) else B.defused = TRUE @@ -71,11 +71,11 @@ if(!mend && B.anchored) holder.visible_message("\icon[B] The bolts lift out of the ground!") playsound(B, 'sound/effects/stealthoff.ogg', 30, 1) - B.anchored = FALSE + B.anchored = 0 if(WIRE_PROCEED) if(!mend && B.active) holder.visible_message("\icon[B] An alarm sounds! It's go-") - B.explode_now = TRUE + B.timer = 0 tell_admins(B) if(WIRE_ACTIVATE) if(!mend && B.active) @@ -87,6 +87,5 @@ /datum/wires/syndicatebomb/proc/tell_admins(obj/machinery/syndicatebomb/B) if(istype(B, /obj/machinery/syndicatebomb/training)) return - var/turf/T = get_turf(B) - log_game("\A [B] was detonated via boom wire at [COORD(T)].") - message_admins("A [B.name] was detonated via boom wire at [ADMIN_COORDJMP(T)].") + log_game("A [B.name] was detonated via boom wire at X=[B.x], Y=[B.y], Z=[B.z].") + message_admins("A [B.name] was detonated via boom wire at (JMP).") diff --git a/code/datums/wires/vending.dm b/code/datums/wires/vending.dm index 0c66f26a92..16c9d5ab84 100644 --- a/code/datums/wires/vending.dm +++ b/code/datums/wires/vending.dm @@ -1,10 +1,9 @@ /datum/wires/vending holder_type = /obj/machinery/vending - proper_name = "Vending Unit" /datum/wires/vending/New(atom/holder) wires = list( - WIRE_THROW, WIRE_SHOCK, WIRE_SPEAKER, + WIRE_THROW, WIRE_ELECTRIFY, WIRE_SPEAKER, WIRE_CONTRABAND, WIRE_IDSCAN ) add_duds(1) @@ -12,7 +11,7 @@ /datum/wires/vending/interactable(mob/user) var/obj/machinery/vending/V = holder - if(!issilicon(user) && V.seconds_electrified && V.shock(user, 100)) + if(!istype(user, /mob/living/silicon) && V.seconds_electrified && V.shock(user, 100)) return FALSE if(V.panel_open) return TRUE @@ -34,7 +33,7 @@ V.shoot_inventory = !V.shoot_inventory if(WIRE_CONTRABAND) V.extended_inventory = !V.extended_inventory - if(WIRE_SHOCK) + if(WIRE_ELECTRIFY) V.seconds_electrified = 30 if(WIRE_IDSCAN) V.scan_id = !V.scan_id @@ -48,7 +47,7 @@ V.shoot_inventory = !mend if(WIRE_CONTRABAND) V.extended_inventory = FALSE - if(WIRE_SHOCK) + if(WIRE_ELECTRIFY) if(mend) V.seconds_electrified = FALSE else diff --git a/code/datums/wires/wires.dm b/code/datums/wires/wires.dm index 64cccf5f93..dc47bfa53b 100644 --- a/code/datums/wires/wires.dm +++ b/code/datums/wires/wires.dm @@ -1,23 +1,123 @@ -var/list/wire_colors = list( +var/list/wire_colors = list( // http://www.crockford.com/wrrrld/color.html + "aliceblue", + "antiquewhite", + "aqua", + "aquamarine", + "beige", + "blanchedalmond", "blue", + "blueviolet", "brown", + "burlywood", + "cadetblue", + "chartreuse", + "chocolate", + "coral", + "cornflowerblue", + "cornsilk", "crimson", "cyan", + "deeppink", + "deepskyblue", + "dimgray", + "dodgerblue", + "firebrick", + "floralwhite", + "forestgreen", + "fuchsia", + "gainsboro", + "ghostwhite", "gold", - "grey", + "goldenrod", + "gray", "green", + "greenyellow", + "honeydew", + "hotpink", + "indianred", + "ivory", + "khaki", + "lavender", + "lavenderblush", + "lawngreen", + "lemonchiffon", + "lightblue", + "lightcoral", + "lightcyan", + "lightgoldenrodyellow", + "lightgray", + "lightgreen", + "lightpink", + "lightsalmon", + "lightseagreen", + "lightskyblue", + "lightslategray", + "lightsteelblue", + "lightyellow", + "lime", + "limegreen", + "linen", "magenta", + "maroon", + "mediumaquamarine", + "mediumblue", + "mediumorchid", + "mediumpurple", + "mediumseagreen", + "mediumslateblue", + "mediumspringgreen", + "mediumturquoise", + "mediumvioletred", + "mintcream", + "mistyrose", + "moccasin", + "navajowhite", + "oldlace", + "olive", + "olivedrab", "orange", + "orangered", + "orchid", + "palegoldenrod", + "palegreen", + "paleturquoise", + "palevioletred", + "papayawhip", + "peachpuff", + "peru", "pink", + "plum", + "powderblue", "purple", "red", + "rosybrown", + "royalblue", + "saddlebrown", + "salmon", + "sandybrown", + "seagreen", + "seashell", + "sienna", "silver", + "skyblue", + "slateblue", + "slategray", + "snow", + "springgreen", + "steelblue", + "tan", + "teal", + "thistle", + "tomato", + "turquoise", "violet", + "wheat", "white", + "whitesmoke", "yellow", + "yellowgreen", ) var/list/wire_color_directory = list() -var/list/wire_name_directory = list() /proc/is_wire_tool(obj/item/I) if(istype(I, /obj/item/device/multitool)) @@ -36,14 +136,12 @@ var/list/wire_name_directory = list() /datum/wires var/atom/holder = null // The holder (atom that contains these wires). var/holder_type = null // The holder's typepath (used to make wire colors common to all holders). - var/proper_name = "Unknown" // The display name for the wire set shown in station blueprints. Not used if randomize is true or it's an item NT wouldn't know about (Explosives/Nuke) var/list/wires = list() // List of wires. var/list/cut_wires = list() // List of wires that have been cut. var/list/colors = list() // Dictionary of colors to wire. var/list/assemblies = list() // List of attached assemblies. var/randomize = 0 // If every instance of these wires should be random. - // Prevents wires from showing up in station blueprints /datum/wires/New(atom/holder) ..() @@ -58,7 +156,6 @@ var/list/wire_name_directory = list() if(!wire_color_directory[holder_type]) randomize() wire_color_directory[holder_type] = colors - wire_name_directory[holder_type] = proper_name else colors = wire_color_directory[holder_type] @@ -69,7 +166,7 @@ var/list/wire_name_directory = list() /datum/wires/proc/add_duds(duds) while(duds) - var/dud = WIRE_DUD_PREFIX + "[--duds]" + var/dud = "dud[--duds]" if(dud in wires) continue wires += dud @@ -200,7 +297,7 @@ var/list/wire_name_directory = list() for(var/color in colors) payload.Add(list(list( "color" = color, - "wire" = (IsAdminGhost(user) || (user.is_holding_item_of_type(/obj/item/device/multitool/abductor)) ? get_wire(color) : null), + "wire" = (IsAdminGhost(user) ? get_wire(color) : null), "cut" = is_color_cut(color), "attached" = is_attached(color) ))) @@ -213,11 +310,11 @@ var/list/wire_name_directory = list() return var/target_wire = params["wire"] var/mob/living/L = usr - var/obj/item/I = L.get_active_held_item() + var/obj/item/I = L.get_active_hand() switch(action) if("cut") if(istype(I, /obj/item/weapon/wirecutters) || IsAdminGhost(usr)) - playsound(holder, I.usesound, 20, 1) + playsound(holder, 'sound/items/Wirecutter.ogg', 20, 1) cut_color(target_wire) . = TRUE else diff --git a/code/game/alternate_appearance.dm b/code/game/alternate_appearance.dm index 8722789d77..005876e8cc 100644 --- a/code/game/alternate_appearance.dm +++ b/code/game/alternate_appearance.dm @@ -30,11 +30,7 @@ if(!M.viewing_alternate_appearances) M.viewing_alternate_appearances = list() viewers |= M - var/list/AAsiblings = M.viewing_alternate_appearances[key] - if(!AAsiblings) - AAsiblings = list() - M.viewing_alternate_appearances[key] = AAsiblings - AAsiblings |= src + M.viewing_alternate_appearances[key] = src if(M.client) M.client.images |= img @@ -52,13 +48,9 @@ if(M.client) M.client.images -= img if(M.viewing_alternate_appearances && M.viewing_alternate_appearances.len) - var/list/AAsiblings = M.viewing_alternate_appearances[key] - if(AAsiblings) - AAsiblings -= src - if(!AAsiblings.len) - M.viewing_alternate_appearances -= key - if(!M.viewing_alternate_appearances.len) - M.viewing_alternate_appearances = null + M.viewing_alternate_appearances -= key + if(!M.viewing_alternate_appearances.len) + M.viewing_alternate_appearances = null viewers -= M @@ -81,9 +73,8 @@ /atom var/list/alternate_appearances //the alternate appearances we own - var/list/viewing_alternate_appearances //this is an assoc list of lists, the keys being the AA's key - //inside these lists are the AAs themselves, this is to allow the atom to see multiple of the same type of AA - //eg: two (or more) people disguised as cardborgs, or two (or more) people disguised as plants + var/list/viewing_alternate_appearances //the alternate appearances we're viewing, stored here to reestablish them after Logout()s + //these lists are built/destroyed as necessary, so atoms aren't all lugging around lists full of datums /* Builds an alternate_appearance datum for the supplied args, optionally displaying it straight away diff --git a/code/game/area/Space_Station_13_areas.dm b/code/game/area/Space_Station_13_areas.dm index f063e8ad78..5a8d40bd8d 100644 --- a/code/game/area/Space_Station_13_areas.dm +++ b/code/game/area/Space_Station_13_areas.dm @@ -14,13 +14,74 @@ NOTE: there are two lists of areas in the end of this file: centcom and station */ +/area + level = null + name = "Space" + icon = 'icons/turf/areas.dmi' + icon_state = "unknown" + layer = AREA_LAYER + mouse_opacity = 0 + invisibility = INVISIBILITY_LIGHTING + + var/map_name // Set in New(); preserves the name set by the map maker, even if renamed by the Blueprints. + + var/valid_territory = 1 // If it's a valid territory for gangs to claim + var/blob_allowed = 1 // Does it count for blobs score? By default, all areas count. + + var/eject = null + + var/fire = null + var/atmos = 1 + var/atmosalm = 0 + var/poweralm = 1 + var/party = null + var/lightswitch = 1 + + var/requires_power = 1 + var/always_unpowered = 0 // This gets overriden to 1 for space in area/New(). + + var/outdoors = 0 //For space, the asteroid, lavaland, etc. Used with blueprints to determine if we are adding a new area (vs editing a station room) + + var/power_equip = 1 + var/power_light = 1 + var/power_environ = 1 + var/music = null + var/used_equip = 0 + var/used_light = 0 + var/used_environ = 0 + var/static_equip + var/static_light = 0 + var/static_environ + + var/has_gravity = 0 + var/noteleport = 0 //Are you forbidden from teleporting to the area? (centcomm, mobs, wizard, hand teleporter) + var/safe = 0 //Is the area teleport-safe: no space / radiation / aggresive mobs / other dangers + + var/no_air = null + var/area/master // master area used for power calcluations + var/list/related // the other areas of the same type as this +// var/list/lights // list of all lights on this area + +/*Adding a wizard area teleport list because motherfucking lag -- Urist*/ +/*I am far too lazy to make it a proper list of areas so I'll just make it run the usual telepot routine at the start of the game*/ +var/list/teleportlocs = list() + +/proc/process_teleport_locs() + for(var/area/AR in world) + if(istype(AR, /area/shuttle) || istype(AR, /area/wizard_station) || AR.noteleport) continue + if(teleportlocs.Find(AR.name)) continue + var/turf/picked = safepick(get_area_turfs(AR.type)) + if (picked && (picked.z == ZLEVEL_STATION)) + teleportlocs += AR.name + teleportlocs[AR.name] = AR + + sortTim(teleportlocs, /proc/cmp_text_dsc) + /*-----------------------------------------------------------------------------*/ -/area/engine +/area/engine/ -/area/ai_monitored //stub defined ai_monitored.dm - -/area/ai_monitored/turret_protected +/area/turret_protected/ /area/arrival requires_power = 0 @@ -37,27 +98,122 @@ NOTE: there are two lists of areas in the end of this file: centcom and station icon_state = "space" requires_power = 1 always_unpowered = 1 - lighting_use_dynamic = DYNAMIC_LIGHTING_DISABLED + dynamic_lighting = DYNAMIC_LIGHTING_DISABLED power_light = 0 power_equip = 0 power_environ = 0 valid_territory = 0 outdoors = 1 - ambientsounds = list('sound/ambience/ambispace.ogg','sound/ambience/title2.ogg') + ambientsounds = list('sound/ambience/ambispace.ogg','sound/ambience/title3.ogg',) blob_allowed = 0 //Eating up space doesn't count for victory as a blob. /area/space/nearstation icon_state = "space_near" - lighting_use_dynamic = DYNAMIC_LIGHTING_IFSTARLIGHT + dynamic_lighting = DYNAMIC_LIGHTING_IFSTARLIGHT + +//These are shuttle areas; all subtypes are only used as teleportation markers, they have no actual function beyond that. + +/area/shuttle + name = "Shuttle" + requires_power = 0 + luminosity = 1 + dynamic_lighting = DYNAMIC_LIGHTING_DISABLED + has_gravity = 1 + valid_territory = 0 + icon_state = "shuttle" + +/area/shuttle/arrival + name = "Arrival Shuttle" + +/area/shuttle/pod_1 + name = "Escape Pod One" + +/area/shuttle/pod_2 + name = "Escape Pod Two" + +/area/shuttle/pod_3 + name = "Escape Pod Three" + +/area/shuttle/pod_4 + name = "Escape Pod Four" + +/area/shuttle/mining + name = "Mining Shuttle" + +/area/shuttle/labor + name = "Labor Camp Shuttle" + +/area/shuttle/supply + name = "Supply Shuttle" + +/area/shuttle/escape + name = "Emergency Shuttle" + +/area/shuttle/transport + name = "Transport Shuttle" + +/area/shuttle/syndicate + name = "Syndicate Infiltrator" + +/area/shuttle/assault_pod + name = "Steel Rain" + +/area/shuttle/abandoned + name = "Abandoned Ship" /area/start name = "start area" icon_state = "start" requires_power = 0 luminosity = 1 - lighting_use_dynamic = DYNAMIC_LIGHTING_DISABLED + dynamic_lighting = DYNAMIC_LIGHTING_DISABLED has_gravity = 1 +// CENTCOM + +/area/centcom + name = "Centcom" + icon_state = "centcom" + requires_power = 0 + has_gravity = 1 + noteleport = 1 + blob_allowed = 0 //Should go without saying, no blobs should take over centcom as a win condition. + +/area/centcom/control + name = "Centcom Docks" + +/area/centcom/evac + name = "Centcom Recovery Ship" + +/area/centcom/supply + name = "Centcom Supply Shuttle Dock" + +/area/centcom/ferry + name = "Centcom Transport Shuttle Dock" + +/area/centcom/prison + name = "Admin Prison" + +/area/centcom/holding + name = "Holding Facility" + +//SYNDICATES + +/area/syndicate_mothership + name = "Syndicate Mothership" + icon_state = "syndie-ship" + requires_power = 0 + has_gravity = 1 + noteleport = 1 + blob_allowed = 0 //Not... entirely sure this will ever come up... but if the bus makes blobs AND ops, it shouldn't aim for the ops to win. + +/area/syndicate_mothership/control + name = "Syndicate Control Room" + icon_state = "syndie-control" + +/area/syndicate_mothership/elite_squad + name = "Syndicate Elite Squad" + icon_state = "syndie-elite" //EXTRA @@ -81,7 +237,7 @@ NOTE: there are two lists of areas in the end of this file: centcom and station /area/asteroid/artifactroom/New() ..() - SetDynamicLighting() + dynamic_lighting = TRUE /area/planet/clown name = "Clown Planet" @@ -93,13 +249,144 @@ NOTE: there are two lists of areas in the end of this file: centcom and station icon_state = "telesci" requires_power = 0 +/area/tdome + name = "Thunderdome" + icon_state = "yellow" + requires_power = 0 + has_gravity = 1 + +/area/tdome/arena + name = "Thunderdome Arena" + icon_state = "thunder" + +/area/tdome/arena_source + name = "Thunderdome Arena Template" + icon_state = "thunder" + +/area/tdome/tdome1 + name = "Thunderdome (Team 1)" + icon_state = "green" + +/area/tdome/tdome2 + name = "Thunderdome (Team 2)" + icon_state = "green" + +/area/tdome/tdomeadmin + name = "Thunderdome (Admin.)" + icon_state = "purple" + +/area/tdome/tdomeobserve + name = "Thunderdome (Observer.)" + icon_state = "purple" + +//ENEMY + + +/area/wizard_station + name = "Wizard's Den" + icon_state = "yellow" + requires_power = 0 + has_gravity = 1 + noteleport = 1 + +//Abductors +/area/abductor_ship + name = "Abductor Ship" + icon_state = "yellow" + requires_power = 0 + noteleport = 1 + has_gravity = 1 + + +//PRISON +/area/prison + name = "Prison Station" + icon_state = "brig" + +/area/prison/arrival_airlock + name = "Prison Station Airlock" + icon_state = "green" + requires_power = 0 + +/area/prison/control + name = "Prison Security Checkpoint" + icon_state = "security" + +/area/prison/crew_quarters + name = "Prison Security Quarters" + icon_state = "security" + +/area/prison/rec_room + name = "Prison Rec Room" + icon_state = "green" + +/area/prison/closet + name = "Prison Supply Closet" + icon_state = "dk_yellow" + +/area/prison/hallway/fore + name = "Prison Fore Hallway" + icon_state = "yellow" + +/area/prison/hallway/aft + name = "Prison Aft Hallway" + icon_state = "yellow" + +/area/prison/hallway/port + name = "Prison Port Hallway" + icon_state = "yellow" + +/area/prison/hallway/starboard + name = "Prison Starboard Hallway" + icon_state = "yellow" + +/area/prison/morgue + name = "Prison Morgue" + icon_state = "morgue" + ambientsounds = list('sound/ambience/ambimo1.ogg','sound/ambience/ambimo2.ogg') + +/area/prison/medical_research + name = "Prison Genetic Research" + icon_state = "medresearch" + +/area/prison/medical + name = "Prison Medbay" + icon_state = "medbay" + +/area/prison/solar + name = "Prison Solar Array" + icon_state = "storage" + requires_power = 0 + +/area/prison/podbay + name = "Prison Podbay" + icon_state = "dk_yellow" + +/area/prison/solar_control + name = "Prison Solar Array Control" + icon_state = "dk_yellow" + +/area/prison/solitary + name = "Solitary Confinement" + icon_state = "brig" + +/area/prison/cell_block/A + name = "Prison Cell Block A" + icon_state = "brig" + +/area/prison/cell_block/B + name = "Prison Cell Block B" + icon_state = "brig" + +/area/prison/cell_block/C + name = "Prison Cell Block C" + icon_state = "brig" //STATION13 /area/atmos name = "Atmospherics" icon_state = "atmos" - flags = NONE //Maintenance /area/maintenance @@ -321,15 +608,11 @@ NOTE: there are two lists of areas in the end of this file: centcom and station /area/library name = "Library" icon_state = "library" - flags = NONE - -/area/chapel - icon_state = "chapel" - ambientsounds = list('sound/ambience/ambicha1.ogg','sound/ambience/ambicha2.ogg','sound/ambience/ambicha3.ogg','sound/ambience/ambicha4.ogg') - flags = NONE /area/chapel/main name = "Chapel" + icon_state = "chapel" + ambientsounds = list('sound/ambience/ambicha1.ogg','sound/ambience/ambicha2.ogg','sound/ambience/ambicha3.ogg','sound/ambience/ambicha4.ogg') /area/chapel/office name = "Chapel Office" @@ -373,10 +656,8 @@ NOTE: there are two lists of areas in the end of this file: centcom and station /area/solar requires_power = 0 luminosity = 1 - lighting_use_dynamic = DYNAMIC_LIGHTING_IFSTARLIGHT + dynamic_lighting = DYNAMIC_LIGHTING_IFSTARLIGHT valid_territory = 0 - blob_allowed = FALSE - flags = NONE /area/solar/auxport name = "Fore Port Solar Array" @@ -450,6 +731,12 @@ NOTE: there are two lists of areas in the end of this file: centcom and station icon_state = "teleporter" music = "signal" +/area/AIsattele + name = "Abandoned Teleporter" + icon_state = "teleporter" + music = "signal" + ambientsounds = list('sound/ambience/ambimalf.ogg') + //MedBay /area/medical/medbay @@ -487,7 +774,6 @@ NOTE: there are two lists of areas in the end of this file: centcom and station /area/medical/virology name = "Virology" icon_state = "virology" - flags = NONE /area/medical/morgue name = "Morgue" @@ -565,6 +851,22 @@ NOTE: there are two lists of areas in the end of this file: centcom and station name = "Transfer Centre" icon_state = "armory" +/* +/area/security/transfer/New() + ..() + + spawn(10) //let objects set up first + for(var/turf/turfToGrayscale in src) + if(turfToGrayscale.icon) + var/icon/newIcon = icon(turfToGrayscale.icon) + newIcon.GrayScale() + turfToGrayscale.icon = newIcon + for(var/obj/objectToGrayscale in turfToGrayscale) //1 level deep, means tables, apcs, locker, etc, but not locker contents + if(objectToGrayscale.icon) + var/icon/newIcon = icon(objectToGrayscale.icon) + newIcon.GrayScale() + objectToGrayscale.icon = newIcon +*/ /area/security/nuke_storage name = "Vault" @@ -642,10 +944,9 @@ NOTE: there are two lists of areas in the end of this file: centcom and station name = "Mech Bay" icon_state = "yellow" -/area/janitor +/area/janitor/ name = "Custodial Closet" icon_state = "janitor" - flags = NONE /area/hydroponics name = "Hydroponics" @@ -737,6 +1038,119 @@ NOTE: there are two lists of areas in the end of this file: centcom and station name = "Test Room" icon_state = "storage" +//DJSTATION + +/area/djstation + name = "Ruskie DJ Station" + icon_state = "DJ" + has_gravity = 1 + blob_allowed = 0 //Nope, no winning on the DJ station as a blob. Gotta eat the main station. + +/area/djstation/solars + name = "DJ Station Solars" + icon_state = "DJ" + has_gravity = 1 + +//DERELICT + +/area/derelict + name = "Derelict Station" + icon_state = "storage" + blob_allowed = 0 //Nope, no winning on the derelict as a blob. Gotta eat the station. + +/area/derelict/hallway/primary + name = "Derelict Primary Hallway" + icon_state = "hallP" + +/area/derelict/hallway/secondary + name = "Derelict Secondary Hallway" + icon_state = "hallS" + +/area/derelict/arrival + name = "Derelict Arrival Centre" + icon_state = "yellow" + +/area/derelict/storage/equipment + name = "Derelict Equipment Storage" + +/area/derelict/storage/storage_access + name = "Derelict Storage Access" + +/area/derelict/storage/engine_storage + name = "Derelict Engine Storage" + icon_state = "green" + +/area/derelict/bridge + name = "Derelict Control Room" + icon_state = "bridge" + +/area/derelict/secret + name = "Derelict Secret Room" + icon_state = "library" + +/area/derelict/bridge/access + name = "Derelict Control Room Access" + icon_state = "auxstorage" + +/area/derelict/bridge/ai_upload + name = "Derelict Computer Core" + icon_state = "ai" + +/area/derelict/solar_control + name = "Derelict Solar Control" + icon_state = "engine" + +/area/derelict/se_solar + name = "South East Solars" + icon_state = "engine" + +/area/derelict/crew_quarters + name = "Derelict Crew Quarters" + icon_state = "fitness" + +/area/derelict/medical + name = "Derelict Medbay" + icon_state = "medbay" + +/area/derelict/medical/morgue + name = "Derelict Morgue" + icon_state = "morgue" + +/area/derelict/medical/chapel + name = "Derelict Chapel" + icon_state = "chapel" + +/area/derelict/teleporter + name = "Derelict Teleporter" + icon_state = "teleporter" + +/area/derelict/eva + name = "Derelict EVA Storage" + icon_state = "eva" + +/area/derelict/ship + name = "Abandoned Ship" + icon_state = "yellow" + +/area/solar/derelict_starboard + name = "Derelict Starboard Solar Array" + icon_state = "panelsS" + +/area/solar/derelict_aft + name = "Derelict Aft Solar Array" + icon_state = "yellow" + +/area/derelict/singularity_engine + name = "Derelict Singularity Engine" + icon_state = "engine" + +/area/derelict/gravity_generator + name = "Derelict Gravity Generator Room" + icon_state = "red" + +/area/derelict/atmospherics + name = "Derelict Atmospherics" + icon_state = "red" //Construction @@ -744,10 +1158,6 @@ NOTE: there are two lists of areas in the end of this file: centcom and station name = "Construction Area" icon_state = "yellow" -/area/mining_construction - name = "Auxillary Base Construction" - icon_state = "yellow" - /area/construction/supplyshuttle name = "Supply Shuttle" icon_state = "yellow" @@ -798,22 +1208,22 @@ NOTE: there are two lists of areas in the end of this file: centcom and station icon_state = "storage" -/area/ai_monitored/turret_protected +/area/turret_protected/ ambientsounds = list('sound/ambience/ambimalf.ogg') -/area/ai_monitored/turret_protected/ai_upload +/area/turret_protected/ai_upload name = "AI Upload Chamber" icon_state = "ai_upload" -/area/ai_monitored/turret_protected/ai_upload_foyer +/area/turret_protected/ai_upload_foyer name = "AI Upload Access" icon_state = "ai_foyer" -/area/ai_monitored/turret_protected/ai +/area/turret_protected/ai name = "AI Chamber" icon_state = "ai_chamber" -/area/ai_monitored/turret_protected/aisat +/area/turret_protected/aisat name = "AI Satellite" icon_state = "ai" @@ -821,40 +1231,66 @@ NOTE: there are two lists of areas in the end of this file: centcom and station name = "AI Satellite Exterior" icon_state = "yellow" -/area/ai_monitored/turret_protected/aisat_interior +/area/turret_protected/aisat_interior name = "AI Satellite Antechamber" icon_state = "ai" -/area/ai_monitored/turret_protected/AIsatextFP +/area/turret_protected/AIsatextFP name = "AI Sat Ext" icon_state = "storage" luminosity = 1 - lighting_use_dynamic = DYNAMIC_LIGHTING_IFSTARLIGHT + dynamic_lighting = DYNAMIC_LIGHTING_IFSTARLIGHT -/area/ai_monitored/turret_protected/AIsatextFS +/area/turret_protected/AIsatextFS name = "AI Sat Ext" icon_state = "storage" luminosity = 1 - lighting_use_dynamic = DYNAMIC_LIGHTING_IFSTARLIGHT + dynamic_lighting = DYNAMIC_LIGHTING_IFSTARLIGHT -/area/ai_monitored/turret_protected/AIsatextAS +/area/turret_protected/AIsatextAS name = "AI Sat Ext" icon_state = "storage" luminosity = 1 - lighting_use_dynamic = DYNAMIC_LIGHTING_IFSTARLIGHT + dynamic_lighting = DYNAMIC_LIGHTING_IFSTARLIGHT -/area/ai_monitored/turret_protected/AIsatextAP +/area/turret_protected/AIsatextAP name = "AI Sat Ext" icon_state = "storage" luminosity = 1 - lighting_use_dynamic = DYNAMIC_LIGHTING_IFSTARLIGHT + dynamic_lighting = DYNAMIC_LIGHTING_IFSTARLIGHT -/area/ai_monitored/turret_protected/NewAIMain +/area/turret_protected/NewAIMain name = "AI Main New" icon_state = "storage" +//Misc + + + +/area/wreck/ai + name = "AI Chamber" + icon_state = "ai" + +/area/wreck/main + name = "Wreck" + icon_state = "storage" + +/area/wreck/engineering + name = "Power Room" + icon_state = "engine" + +/area/wreck/bridge + name = "Bridge" + icon_state = "bridge" + +/area/generic + name = "Unknown" + icon_state = "storage" + + + // Telecommunications Satellite /area/tcommsat @@ -868,22 +1304,22 @@ NOTE: there are two lists of areas in the end of this file: centcom and station name = "Abandoned Satellite" icon_state = "tcomsatcham" -/area/ai_monitored/turret_protected/tcomsat +/area/turret_protected/tcomsat name = "Telecoms Satellite" icon_state = "tcomsatlob" ambientsounds = list('sound/ambience/ambisin2.ogg', 'sound/ambience/signal.ogg', 'sound/ambience/signal.ogg', 'sound/ambience/ambigen10.ogg') -/area/ai_monitored/turret_protected/tcomfoyer +/area/turret_protected/tcomfoyer name = "Telecoms Foyer" icon_state = "tcomsatentrance" ambientsounds = list('sound/ambience/ambisin2.ogg', 'sound/ambience/signal.ogg', 'sound/ambience/signal.ogg', 'sound/ambience/ambigen10.ogg') -/area/ai_monitored/turret_protected/tcomwest +/area/turret_protected/tcomwest name = "Telecommunications Satellite West Wing" icon_state = "tcomsatwest" ambientsounds = list('sound/ambience/ambisin2.ogg', 'sound/ambience/signal.ogg', 'sound/ambience/signal.ogg', 'sound/ambience/ambigen10.ogg') -/area/ai_monitored/turret_protected/tcomeast +/area/turret_protected/tcomeast name = "Telecommunications Satellite East Wing" icon_state = "tcomsateast" ambientsounds = list('sound/ambience/ambisin2.ogg', 'sound/ambience/signal.ogg', 'sound/ambience/signal.ogg', 'sound/ambience/ambigen10.ogg') @@ -901,6 +1337,246 @@ NOTE: there are two lists of areas in the end of this file: centcom and station icon_state = "tcomsatlounge" +// Hell +/area/hell + name = "Hell Lobby" + //icon = "ICON FILENAME" + //icon_state = "NAME OF ICON" + requires_power = 0 + music = "music/music.ogg" + +/area/hell/trial1 + name = "Hell Trial1" + //icon_state = "NAME OF ICON" (defaults to "unknown" (blank)) + +/area/hell/trial1 + name = "Hell Trial2" + //icon_state = "NAME OF ICON" (defaults to "unknown" (blank)) + +/area/hell/trial1 + name = "Hell Trial3" + //icon_state = "NAME OF ICON" (defaults to "unknown" (blank)) + +// Away Missions +/area/awaymission + name = "Strange Location" + icon_state = "away" + has_gravity = 1 + +/area/awaymission/example + name = "Strange Station" + icon_state = "away" + +/area/awaymission/desert + name = "Mars" + icon_state = "away" + +/area/awaymission/listeningpost + name = "Listening Post" + icon_state = "away" + requires_power = 0 + +/area/awaymission/beach + name = "Beach" + icon_state = "away" + luminosity = 1 + dynamic_lighting = DYNAMIC_LIGHTING_DISABLED + requires_power = 0 + has_gravity = 1 + ambientsounds = list('sound/ambience/shore.ogg', 'sound/ambience/seag1.ogg','sound/ambience/seag2.ogg','sound/ambience/seag2.ogg') + +/area/spacecontent + name = "space" + +/area/spacecontent/a1 + icon_state = "spacecontent1" + +/area/spacecontent/a2 + icon_state = "spacecontent2" + +/area/spacecontent/a3 + icon_state = "spacecontent3" + +/area/spacecontent/a4 + icon_state = "spacecontent4" + +/area/spacecontent/a5 + icon_state = "spacecontent5" + +/area/spacecontent/a6 + icon_state = "spacecontent6" + +/area/spacecontent/a7 + icon_state = "spacecontent7" + +/area/spacecontent/a8 + icon_state = "spacecontent8" + +/area/spacecontent/a9 + icon_state = "spacecontent9" + +/area/spacecontent/a10 + icon_state = "spacecontent10" + +/area/spacecontent/a11 + icon_state = "spacecontent11" + +/area/spacecontent/a11 + icon_state = "spacecontent12" + +/area/spacecontent/a12 + icon_state = "spacecontent13" + +/area/spacecontent/a13 + icon_state = "spacecontent14" + +/area/spacecontent/a14 + icon_state = "spacecontent14" + +/area/spacecontent/a15 + icon_state = "spacecontent15" + +/area/spacecontent/a16 + icon_state = "spacecontent16" + +/area/spacecontent/a17 + icon_state = "spacecontent17" + +/area/spacecontent/a18 + icon_state = "spacecontent18" + +/area/spacecontent/a19 + icon_state = "spacecontent19" + +/area/spacecontent/a20 + icon_state = "spacecontent20" + +/area/spacecontent/a21 + icon_state = "spacecontent21" + +/area/spacecontent/a22 + icon_state = "spacecontent22" + +/area/spacecontent/a23 + icon_state = "spacecontent23" + +/area/spacecontent/a24 + icon_state = "spacecontent24" + +/area/spacecontent/a25 + icon_state = "spacecontent25" + +/area/spacecontent/a26 + icon_state = "spacecontent26" + +/area/spacecontent/a27 + icon_state = "spacecontent27" + +/area/spacecontent/a28 + icon_state = "spacecontent28" + +/area/spacecontent/a29 + icon_state = "spacecontent29" + +/area/spacecontent/a30 + icon_state = "spacecontent30" + +/area/awaycontent + name = "space" + +/area/awaycontent/a1 + icon_state = "awaycontent1" + +/area/awaycontent/a2 + icon_state = "awaycontent2" + +/area/awaycontent/a3 + icon_state = "awaycontent3" + +/area/awaycontent/a4 + icon_state = "awaycontent4" + +/area/awaycontent/a5 + icon_state = "awaycontent5" + +/area/awaycontent/a6 + icon_state = "awaycontent6" + +/area/awaycontent/a7 + icon_state = "awaycontent7" + +/area/awaycontent/a8 + icon_state = "awaycontent8" + +/area/awaycontent/a9 + icon_state = "awaycontent9" + +/area/awaycontent/a10 + icon_state = "awaycontent10" + +/area/awaycontent/a11 + icon_state = "awaycontent11" + +/area/awaycontent/a11 + icon_state = "awaycontent12" + +/area/awaycontent/a12 + icon_state = "awaycontent13" + +/area/awaycontent/a13 + icon_state = "awaycontent14" + +/area/awaycontent/a14 + icon_state = "awaycontent14" + +/area/awaycontent/a15 + icon_state = "awaycontent15" + +/area/awaycontent/a16 + icon_state = "awaycontent16" + +/area/awaycontent/a17 + icon_state = "awaycontent17" + +/area/awaycontent/a18 + icon_state = "awaycontent18" + +/area/awaycontent/a19 + icon_state = "awaycontent19" + +/area/awaycontent/a20 + icon_state = "awaycontent20" + +/area/awaycontent/a21 + icon_state = "awaycontent21" + +/area/awaycontent/a22 + icon_state = "awaycontent22" + +/area/awaycontent/a23 + icon_state = "awaycontent23" + +/area/awaycontent/a24 + icon_state = "awaycontent24" + +/area/awaycontent/a25 + icon_state = "awaycontent25" + +/area/awaycontent/a26 + icon_state = "awaycontent26" + +/area/awaycontent/a27 + icon_state = "awaycontent27" + +/area/awaycontent/a28 + icon_state = "awaycontent28" + +/area/awaycontent/a29 + icon_state = "awaycontent29" + +/area/awaycontent/a30 + icon_state = "awaycontent30" + ///////////////////////////////////////////////////////////////////// /* @@ -935,7 +1611,7 @@ var/list/the_station_areas = list ( /area/ai_monitored/storage/eva, //do not try to simplify to "/area/ai_monitored" --rastaf0 // /area/ai_monitored/storage/secure, //not present on map // /area/ai_monitored/storage/emergency, //not present on map - /area/ai_monitored/turret_protected/ai_upload, //do not try to simplify to "/area/ai_monitored/turret_protected" --rastaf0 - /area/ai_monitored/turret_protected/ai_upload_foyer, - /area/ai_monitored/turret_protected/ai, + /area/turret_protected/ai_upload, //do not try to simplify to "/area/turret_protected" --rastaf0 + /area/turret_protected/ai_upload_foyer, + /area/turret_protected/ai, ) diff --git a/code/game/area/ai_monitored.dm b/code/game/area/ai_monitored.dm index 5f7bbc3f05..68caef516e 100644 --- a/code/game/area/ai_monitored.dm +++ b/code/game/area/ai_monitored.dm @@ -1,29 +1,24 @@ /area/ai_monitored name = "AI Monitored Area" - var/list/obj/machinery/camera/motioncameras = list() - var/list/motionTargets = list() + var/obj/machinery/camera/motioncamera = null -/area/ai_monitored/initialize() + +/area/ai_monitored/New() ..() - for (var/obj/machinery/camera/M in src) - if(M.isMotion()) - motioncameras.Add(M) - M.area_motion = src - -//Only need to use one camera + // locate and store the motioncamera + spawn (20) // spawn on a delay to let turfs/objs load + for (var/obj/machinery/camera/M in src) + if(M.isMotion()) + motioncamera = M + M.area_motion = src /area/ai_monitored/Entered(atom/movable/O) ..() - if (ismob(O) && motioncameras.len) - for(var/X in motioncameras) - var/obj/machinery/camera/cam = X - cam.newTarget(O) - return + if (ismob(O) && motioncamera) + motioncamera.newTarget(O) /area/ai_monitored/Exited(atom/movable/O) - ..() - if (ismob(O) && motioncameras.len) - for(var/X in motioncameras) - var/obj/machinery/camera/cam = X - cam.lostTarget(O) - return \ No newline at end of file + if (ismob(O) && motioncamera) + motioncamera.lostTarget(O) + + diff --git a/code/game/area/areas.dm b/code/game/area/areas.dm index d4d0a71a27..6a61ada3fb 100644 --- a/code/game/area/areas.dm +++ b/code/game/area/areas.dm @@ -1,55 +1,20 @@ // Areas.dm +// Added to fix mech fabs 05/2013 ~Sayu +// This is necessary due to lighting subareas. If you were to go in assuming that things in +// the same logical /area have the parent /area object... well, you would be mistaken. If you +// want to find machines, mobs, etc, in the same logical area, you will need to check all the +// related areas. This returns a master contents list to assist in that. +/proc/area_contents(var/area/A) + if(!istype(A)) return null + var/list/contents = list() + for(var/area/LSA in A.related) + contents += LSA.contents + return contents + +// === /area - level = null - name = "Space" - icon = 'icons/turf/areas.dmi' - icon_state = "unknown" - layer = AREA_LAYER - mouse_opacity = 0 - invisibility = INVISIBILITY_LIGHTING - - var/map_name // Set in New(); preserves the name set by the map maker, even if renamed by the Blueprints. - - var/valid_territory = 1 // If it's a valid territory for gangs to claim - var/blob_allowed = 1 // Does it count for blobs score? By default, all areas count. - - var/eject = null - - var/fire = null - var/atmos = 1 - var/atmosalm = 0 - var/poweralm = 1 - var/party = null - var/lightswitch = 1 - - var/requires_power = 1 - var/always_unpowered = 0 // This gets overriden to 1 for space in area/New(). - - var/outdoors = 0 //For space, the asteroid, lavaland, etc. Used with blueprints to determine if we are adding a new area (vs editing a station room) - - var/power_equip = 1 - var/power_light = 1 - var/power_environ = 1 - var/music = null - var/used_equip = 0 - var/used_light = 0 - var/used_environ = 0 - var/static_equip - var/static_light = 0 - var/static_environ - - var/has_gravity = 0 - var/noteleport = 0 //Are you forbidden from teleporting to the area? (centcomm, mobs, wizard, hand teleporter) - var/safe = 0 //Is the area teleport-safe: no space / radiation / aggresive mobs / other dangers - - var/no_air = null - var/area/master // master area used for power calcluations - var/list/related // the other areas of the same type as this - - var/parallax_movedir = 0 - var/global/global_uid = 0 var/uid var/list/ambientsounds = list('sound/ambience/ambigen1.ogg','sound/ambience/ambigen3.ogg',\ @@ -58,43 +23,6 @@ 'sound/ambience/ambigen8.ogg','sound/ambience/ambigen9.ogg',\ 'sound/ambience/ambigen10.ogg','sound/ambience/ambigen11.ogg',\ 'sound/ambience/ambigen12.ogg','sound/ambience/ambigen14.ogg') - flags = CAN_BE_DIRTY - - -/*Adding a wizard area teleport list because motherfucking lag -- Urist*/ -/*I am far too lazy to make it a proper list of areas so I'll just make it run the usual telepot routine at the start of the game*/ -var/list/teleportlocs = list() - -/proc/process_teleport_locs() - for(var/V in sortedAreas) - var/area/AR = V - if(istype(AR, /area/shuttle) || AR.noteleport) - continue - if(teleportlocs[AR.name]) - continue - var/turf/picked = safepick(get_area_turfs(AR.type)) - if (picked && (picked.z == ZLEVEL_STATION)) - teleportlocs[AR.name] = AR - - sortTim(teleportlocs, /proc/cmp_text_dsc) - -// === - - -// Added to fix mech fabs 05/2013 ~Sayu -// This is necessary due to lighting subareas. If you were to go in assuming that things in -// the same logical /area have the parent /area object... well, you would be mistaken. If you -// want to find machines, mobs, etc, in the same logical area, you will need to check all the -// related areas. This returns a master contents list to assist in that. -/proc/area_contents(area/A) - if(!istype(A)) return null - var/list/contents = list() - for(var/area/LSA in A.related) - contents += LSA.contents - return contents - - - /area/New() icon_state = "" @@ -111,8 +39,8 @@ var/list/teleportlocs = list() power_equip = 1 power_environ = 1 - if (lighting_use_dynamic != DYNAMIC_LIGHTING_IFSTARLIGHT) - lighting_use_dynamic = DYNAMIC_LIGHTING_DISABLED + if (dynamic_lighting != DYNAMIC_LIGHTING_IFSTARLIGHT) + dynamic_lighting = DYNAMIC_LIGHTING_DISABLED ..() @@ -146,11 +74,6 @@ var/list/teleportlocs = list() D.cancelAlarm("Power", src, source) else D.triggerAlarm("Power", src, cameras, source) - for(var/datum/computer_file/program/alarm_monitor/p in alarmdisplay) - if(state == 1) - p.cancelAlarm("Power", src, source) - else - p.triggerAlarm("Power", src, cameras, source) /area/proc/atmosalert(danger_level, obj/source) if(danger_level != atmosalm) @@ -166,8 +89,6 @@ var/list/teleportlocs = list() a.triggerAlarm("Atmosphere", src, cameras, source) for(var/mob/living/simple_animal/drone/D in mob_list) D.triggerAlarm("Atmosphere", src, cameras, source) - for(var/datum/computer_file/program/alarm_monitor/p in alarmdisplay) - p.triggerAlarm("Atmosphere", src, cameras, source) else if (src.atmosalm == 2) for(var/mob/living/silicon/aiPlayer in player_list) @@ -176,8 +97,6 @@ var/list/teleportlocs = list() a.cancelAlarm("Atmosphere", src, source) for(var/mob/living/simple_animal/drone/D in mob_list) D.cancelAlarm("Atmosphere", src, source) - for(var/datum/computer_file/program/alarm_monitor/p in alarmdisplay) - p.cancelAlarm("Atmosphere", src, source) src.atmosalm = danger_level return 1 @@ -209,8 +128,6 @@ var/list/teleportlocs = list() aiPlayer.triggerAlarm("Fire", src, cameras, source) for (var/mob/living/simple_animal/drone/D in mob_list) D.triggerAlarm("Fire", src, cameras, source) - for(var/datum/computer_file/program/alarm_monitor/p in alarmdisplay) - p.triggerAlarm("Fire", src, cameras, source) /area/proc/firereset(obj/source) for(var/area/RA in related) @@ -233,8 +150,6 @@ var/list/teleportlocs = list() a.cancelAlarm("Fire", src, source) for (var/mob/living/simple_animal/drone/D in mob_list) D.cancelAlarm("Fire", src, source) - for(var/datum/computer_file/program/alarm_monitor/p in alarmdisplay) - p.cancelAlarm("Fire", src, source) /area/proc/burglaralert(obj/trigger) if(always_unpowered == 1) //no burglar alarms in space/asteroid @@ -257,7 +172,7 @@ var/list/teleportlocs = list() for (var/mob/living/silicon/SILICON in player_list) if(SILICON.triggerAlarm("Burglar", src, cameras, trigger)) //Cancel silicon alert after 1 minute - addtimer(SILICON, "cancelAlarm", 600, TIMER_NORMAL,"Burglar",src,trigger) + addtimer(SILICON, "cancelAlarm", 600, FALSE,"Burglar",src,trigger) /area/proc/set_fire_alarm_effect() fire = 1 @@ -395,7 +310,7 @@ var/list/teleportlocs = list() /area/Entered(A) - if(!isliving(A)) + if(!istype(A,/mob/living)) return var/mob/living/L = A @@ -420,11 +335,11 @@ var/list/teleportlocs = list() if(L.&& L.client) L.client.played = 0 -/atom/proc/has_gravity(turf/T) - if(!T || !isturf(T)) - T = get_turf(src) +/proc/has_gravity(atom/AT, turf/T) + if(!T) + T = get_turf(AT) var/area/A = get_area(T) - if(isspaceturf(T)) // Turf never has gravity + if(istype(T, /turf/open/space)) // Turf never has gravity return 0 else if(A && A.has_gravity) // Areas which always has gravity return 1 diff --git a/code/game/area/areas/away_content.dm b/code/game/area/areas/away_content.dm deleted file mode 100644 index 6c80a47299..0000000000 --- a/code/game/area/areas/away_content.dm +++ /dev/null @@ -1,457 +0,0 @@ - -// Away Missions -/area/awaymission - name = "Strange Location" - icon_state = "away" - has_gravity = 1 - -/area/awaymission/example - name = "Strange Station" - icon_state = "away" - -/area/awaymission/desert - name = "Mars" - icon_state = "away" - -/area/awaymission/listeningpost - name = "Listening Post" - icon_state = "away" - requires_power = 0 - -/area/awaymission/beach - name = "Beach" - icon_state = "away" - luminosity = 1 - lighting_use_dynamic = DYNAMIC_LIGHTING_DISABLED - requires_power = 0 - has_gravity = 1 - ambientsounds = list('sound/ambience/shore.ogg', 'sound/ambience/seag1.ogg','sound/ambience/seag2.ogg','sound/ambience/seag2.ogg') - -/area/awaymission/errorroom - name = "Super Secret Room" - luminosity = 1 - lighting_use_dynamic = DYNAMIC_LIGHTING_DISABLED - has_gravity = 1 - - -//Research Base Areas//-- - -/area/awaymission/research - name = "Research Outpost" - icon_state = "away" - luminosity = 0 - lighting_use_dynamic = DYNAMIC_LIGHTING_ENABLED - -/area/awaymission/research/interior - name = "Research Inside" - requires_power = 1 - icon_state = "away2" - -/area/awaymission/research/interior/cryo - name = "Research Cryostasis Room" - icon_state = "medbay" - -/area/awaymission/research/interior/clonestorage - name = "Research Clone Storage" - icon_state = "cloning" - -/area/awaymission/research/interior/genetics - name = "Research Genetics Research" - icon_state = "genetics" - -/area/awaymission/research/interior/engineering - name = "Research Engineering" - icon_state = "engine" - -/area/awaymission/research/interior/security - name = "Research Security" - icon_state = "security" - -/area/awaymission/research/interior/secure - name = "Research Secure Vault" - -/area/awaymission/research/interior/maint - name = "Research Maintenance" - icon_state = "maintcentral" - -/area/awaymission/research/interior/dorm - name = "Research Dorms" - icon_state = "Sleep" - -/area/awaymission/research/interior/escapepods - name = "Research Escape Wing" - icon_state = "exit" - -/area/awaymission/research/interior/gateway - name = "Research Gateway" - icon_state = "start" - -/area/awaymission/research/interior/bathroom - name = "Research Bathrooms" - icon_state = "restrooms" - -/area/awaymission/research/interior/medbay - name = "Research Medbay" - icon_state = "medbay" - -/area/awaymission/research/exterior - name = "Research Exterior" - icon_state = "unknown" - - - -//Challenge Areas - -/area/awaymission/challenge/start - name = "Where Am I?" - icon_state = "away" - -/area/awaymission/challenge/main - name = "Danger Room" - icon_state = "away1" - requires_power = 0 - -/area/awaymission/challenge/end - name = "Administration" - icon_state = "away2" - requires_power = 0 - - -//centcomAway areas - -/area/awaymission/centcomAway - name = "XCC-P5831" - icon_state = "away" - requires_power = 0 - -/area/awaymission/centcomAway/general - name = "XCC-P5831" - music = "music/ambigen3.ogg" - -/area/awaymission/centcomAway/maint - name = "XCC-P5831 Maintenance" - icon_state = "away1" - music = "music/ambisin1.ogg" - -/area/awaymission/centcomAway/thunderdome - name = "XCC-P5831 Thunderdome" - icon_state = "away2" - music = "music/ambisin2.ogg" - -/area/awaymission/centcomAway/cafe - name = "XCC-P5831 Kitchen Arena" - icon_state = "away3" - music = "music/ambisin3.ogg" - -/area/awaymission/centcomAway/courtroom - name = "XCC-P5831 Courtroom" - icon_state = "away4" - music = "music/ambisin4.ogg" - -/area/awaymission/centcomAway/hangar - name = "XCC-P5831 Hangars" - icon_state = "away4" - music = "music/ambigen5.ogg" - - -/*Cabin areas*/ -/area/awaymission/snowforest - name = "Snow Forest" - icon_state = "away" - requires_power = 0 - luminosity = 1 - lighting_use_dynamic = DYNAMIC_LIGHTING_ENABLED - -/area/awaymission/cabin - name = "Cabin" - icon_state = "away2" - requires_power = 1 - luminosity = 0 - lighting_use_dynamic = DYNAMIC_LIGHTING_ENABLED - -/area/awaymission/snowforest/lumbermill - name = "Lumbermill" - icon_state = "away3" - -//Packer Ship Areas - -/area/awaymission/BMPship - name = "BMP Asteroids" - icon_state = "away" - luminosity = 0 - - -/area/awaymission/BMPship/Aft - name = "Aft Block" - icon_state = "away1" - requires_power = 1 - -/area/awaymission/BMPship/Midship - name = "Midship Block" - icon_state = "away2" - requires_power = 1 - -/area/awaymission/BMPship/Fore - name = "Fore Block" - icon_state = "away3" - requires_power = 1 - - -//Academy Areas - -/area/awaymission/academy - name = "Academy Asteroids" - icon_state = "away" - -/area/awaymission/academy/headmaster - name = "Academy Fore Block" - icon_state = "away1" - -/area/awaymission/academy/classrooms - name = "Academy Classroom Block" - icon_state = "away2" - -/area/awaymission/academy/academyaft - name = "Academy Ship Aft Block" - icon_state = "away3" - -/area/awaymission/academy/academygate - name = "Academy Gateway" - icon_state = "away4" - -/area/awaymission/academy/academycellar - name = "Academy Cellar" - icon_state = "away4" - -/area/awaymission/academy/academyengine - name = "Academy Engine" - icon_state = "away4" - - - -//Wild West Areas - -/area/awaymission/wwmines - name = "Wild West Mines" - icon_state = "away1" - luminosity = 1 - requires_power = 0 - -/area/awaymission/wwgov - name = "Wild West Mansion" - icon_state = "away2" - luminosity = 1 - requires_power = 0 - -/area/awaymission/wwrefine - name = "Wild West Refinery" - icon_state = "away3" - luminosity = 1 - requires_power = 0 - -/area/awaymission/wwvault - name = "Wild West Vault" - icon_state = "away3" - luminosity = 0 - -/area/awaymission/wwvaultdoors - name = "Wild West Vault Doors" // this is to keep the vault area being entirely lit because of requires_power - icon_state = "away2" - requires_power = 0 - luminosity = 0 - - -/* - * Areas - */ - //Gateroom gets its own APC specifically for the gate - /area/awaymission/gateroom - - //Library, medbay, storage room - /area/awaymission/southblock - - //Arrivals, security, hydroponics, shuttles (since they dont move, they dont need specific areas) - /area/awaymission/arrivalblock - - //Crew quarters, cafeteria, chapel - /area/awaymission/midblock - - //engineering, bridge (not really north but it doesnt really need its own APC) - /area/awaymission/northblock - - //That massive research room - /area/awaymission/research - -//Syndicate shuttle -/area/awaymission/syndishuttle - - -//Spacebattle Areas - -/area/awaymission/spacebattle - name = "Space Battle" - icon_state = "away" - requires_power = 0 - -/area/awaymission/spacebattle/cruiser - name = "Nanotrasen Cruiser" - -/area/awaymission/spacebattle/syndicate1 - name = "Syndicate Assault Ship 1" - -/area/awaymission/spacebattle/syndicate2 - name = "Syndicate Assault Ship 2" - -/area/awaymission/spacebattle/syndicate3 - name = "Syndicate Assault Ship 3" - -/area/awaymission/spacebattle/syndicate4 - name = "Syndicate War Sphere 1" - -/area/awaymission/spacebattle/syndicate5 - name = "Syndicate War Sphere 2" - -/area/awaymission/spacebattle/syndicate6 - name = "Syndicate War Sphere 3" - -/area/awaymission/spacebattle/syndicate7 - name = "Syndicate Fighter" - -/area/awaymission/spacebattle/secret - name = "Hidden Chamber" - - -//Snow Valley Areas//-- - -/area/awaymission/snowdin - name = "Snowdin Tundra Plains" - icon_state = "away" - requires_power = 0 - luminosity = 1 - lighting_use_dynamic = DYNAMIC_LIGHTING_ENABLED - -/area/awaymission/snowdin/post - name = "Snowdin Outpost" - requires_power = 1 - -/area/awaymission/snowdin/igloo - name = "Snowdin Igloos" - icon_state = "away2" - -/area/awaymission/snowdin/cave - name = "Snowdin Caves" - icon_state = "away2" - luminosity = 0 - -/area/awaymission/snowdin/base - name = "Snowdin Main Base" - icon_state = "away3" - requires_power = 1 - -/area/awaymission/snowdin/dungeon1 - name = "Snowdin Depths" - icon_state = "away2" - luminosity = 0 - -/area/awaymission/snowdin/sekret - name = "Snowdin Operations" - icon_state = "away3" - requires_power = 1 - - - -/area/awaycontent - name = "space" - -/area/awaycontent/a1 - icon_state = "awaycontent1" - -/area/awaycontent/a2 - icon_state = "awaycontent2" - -/area/awaycontent/a3 - icon_state = "awaycontent3" - -/area/awaycontent/a4 - icon_state = "awaycontent4" - -/area/awaycontent/a5 - icon_state = "awaycontent5" - -/area/awaycontent/a6 - icon_state = "awaycontent6" - -/area/awaycontent/a7 - icon_state = "awaycontent7" - -/area/awaycontent/a8 - icon_state = "awaycontent8" - -/area/awaycontent/a9 - icon_state = "awaycontent9" - -/area/awaycontent/a10 - icon_state = "awaycontent10" - -/area/awaycontent/a11 - icon_state = "awaycontent11" - -/area/awaycontent/a11 - icon_state = "awaycontent12" - -/area/awaycontent/a12 - icon_state = "awaycontent13" - -/area/awaycontent/a13 - icon_state = "awaycontent14" - -/area/awaycontent/a14 - icon_state = "awaycontent14" - -/area/awaycontent/a15 - icon_state = "awaycontent15" - -/area/awaycontent/a16 - icon_state = "awaycontent16" - -/area/awaycontent/a17 - icon_state = "awaycontent17" - -/area/awaycontent/a18 - icon_state = "awaycontent18" - -/area/awaycontent/a19 - icon_state = "awaycontent19" - -/area/awaycontent/a20 - icon_state = "awaycontent20" - -/area/awaycontent/a21 - icon_state = "awaycontent21" - -/area/awaycontent/a22 - icon_state = "awaycontent22" - -/area/awaycontent/a23 - icon_state = "awaycontent23" - -/area/awaycontent/a24 - icon_state = "awaycontent24" - -/area/awaycontent/a25 - icon_state = "awaycontent25" - -/area/awaycontent/a26 - icon_state = "awaycontent26" - -/area/awaycontent/a27 - icon_state = "awaycontent27" - -/area/awaycontent/a28 - icon_state = "awaycontent28" - -/area/awaycontent/a29 - icon_state = "awaycontent29" - -/area/awaycontent/a30 - icon_state = "awaycontent30" \ No newline at end of file diff --git a/code/game/area/areas/centcom.dm b/code/game/area/areas/centcom.dm deleted file mode 100644 index 9a6f28a968..0000000000 --- a/code/game/area/areas/centcom.dm +++ /dev/null @@ -1,134 +0,0 @@ - -// CENTCOM - -/area/centcom - name = "Centcom" - icon_state = "centcom" - requires_power = 0 - has_gravity = 1 - noteleport = 1 - blob_allowed = 0 //Should go without saying, no blobs should take over centcom as a win condition. - flags = NONE - -/area/centcom/control - name = "Centcom Docks" - -/area/centcom/evac - name = "Centcom Recovery Ship" - -/area/centcom/supply - name = "Centcom Supply Shuttle Dock" - -/area/centcom/ferry - name = "Centcom Transport Shuttle Dock" - -/area/centcom/prison - name = "Admin Prison" - -/area/centcom/holding - name = "Holding Facility" - -//THUNDERDOME - -/area/tdome - name = "Thunderdome" - icon_state = "yellow" - requires_power = 0 - has_gravity = 1 - -/area/tdome/arena - name = "Thunderdome Arena" - icon_state = "thunder" - -/area/tdome/arena_source - name = "Thunderdome Arena Template" - icon_state = "thunder" - -/area/tdome/tdome1 - name = "Thunderdome (Team 1)" - icon_state = "green" - -/area/tdome/tdome2 - name = "Thunderdome (Team 2)" - icon_state = "green" - -/area/tdome/tdomeadmin - name = "Thunderdome (Admin.)" - icon_state = "purple" - -/area/tdome/tdomeobserve - name = "Thunderdome (Observer.)" - icon_state = "purple" - - -//ENEMY - -//Wizard -/area/wizard_station - name = "Wizard's Den" - icon_state = "yellow" - requires_power = 0 - has_gravity = 1 - noteleport = 1 - -//Abductors -/area/abductor_ship - name = "Abductor Ship" - icon_state = "yellow" - requires_power = 0 - noteleport = 1 - has_gravity = 1 - -//Syndicates -/area/syndicate_mothership - name = "Syndicate Mothership" - icon_state = "syndie-ship" - requires_power = 0 - has_gravity = 1 - noteleport = 1 - blob_allowed = 0 //Not... entirely sure this will ever come up... but if the bus makes blobs AND ops, it shouldn't aim for the ops to win. - -/area/syndicate_mothership/control - name = "Syndicate Control Room" - icon_state = "syndie-control" - -/area/syndicate_mothership/elite_squad - name = "Syndicate Elite Squad" - icon_state = "syndie-elite" - - - -//CAPTURE THE FLAG - -/area/ctf - name = "Capture the Flag" - icon_state = "yellow" - requires_power = 0 - has_gravity = 1 - -/area/ctf/control_room - name = "Control Room A" - -/area/ctf/control_room2 - name = "Control Room B" - -/area/ctf/central - name = "Central" - -/area/ctf/main_hall - name = "Main Hall A" - -/area/ctf/main_hall2 - name = "Main Hall B" - -/area/ctf/corridor - name = "Corridor A" - -/area/ctf/corridor2 - name = "Corridor B" - -/area/ctf/flag_room - name = "Flag Room A" - -/area/ctf/flag_room2 - name = "Flag Room B" \ No newline at end of file diff --git a/code/game/area/areas/derelict.dm b/code/game/area/areas/derelict.dm deleted file mode 100644 index 9679103f38..0000000000 --- a/code/game/area/areas/derelict.dm +++ /dev/null @@ -1,124 +0,0 @@ -//DERELICT - -/area/derelict - name = "Derelict Station" - icon_state = "storage" - blob_allowed = 0 //Nope, no winning on the derelict as a blob. Gotta eat the station. - -/area/derelict/hallway/primary - name = "Derelict Primary Hallway" - icon_state = "hallP" - -/area/derelict/hallway/secondary - name = "Derelict Secondary Hallway" - icon_state = "hallS" - -/area/derelict/arrival - name = "Derelict Arrival Centre" - icon_state = "yellow" - -/area/derelict/storage/equipment - name = "Derelict Equipment Storage" - -/area/derelict/storage/storage_access - name = "Derelict Storage Access" - -/area/derelict/storage/engine_storage - name = "Derelict Engine Storage" - icon_state = "green" - -/area/derelict/bridge - name = "Derelict Control Room" - icon_state = "bridge" - -/area/derelict/secret - name = "Derelict Secret Room" - icon_state = "library" - -/area/derelict/bridge/access - name = "Derelict Control Room Access" - icon_state = "auxstorage" - -/area/derelict/bridge/ai_upload - name = "Derelict Computer Core" - icon_state = "ai" - -/area/derelict/solar_control - name = "Derelict Solar Control" - icon_state = "engine" - -/area/derelict/se_solar - name = "South East Solars" - icon_state = "engine" - -/area/derelict/crew_quarters - name = "Derelict Crew Quarters" - icon_state = "fitness" - -/area/derelict/medical - name = "Derelict Medbay" - icon_state = "medbay" - -/area/derelict/medical/morgue - name = "Derelict Morgue" - icon_state = "morgue" - -/area/derelict/medical/chapel - name = "Derelict Chapel" - icon_state = "chapel" - -/area/derelict/teleporter - name = "Derelict Teleporter" - icon_state = "teleporter" - -/area/derelict/eva - name = "Derelict EVA Storage" - icon_state = "eva" - -/area/derelict/ship - name = "Abandoned Ship" - icon_state = "yellow" - -/area/solar/derelict_starboard - name = "Derelict Starboard Solar Array" - icon_state = "panelsS" - -/area/solar/derelict_aft - name = "Derelict Aft Solar Array" - icon_state = "yellow" - -/area/derelict/singularity_engine - name = "Derelict Singularity Engine" - icon_state = "engine" - -/area/derelict/gravity_generator - name = "Derelict Gravity Generator Room" - icon_state = "red" - -/area/derelict/atmospherics - name = "Derelict Atmospherics" - icon_state = "red" - - - -//DJSTATION - -/area/djstation - name = "Ruskie DJ Station" - icon_state = "DJ" - has_gravity = 1 - blob_allowed = 0 //Nope, no winning on the DJ station as a blob. Gotta eat the main station. - -/area/djstation/solars - name = "DJ Station Solars" - icon_state = "DJ" - has_gravity = 1 - - -//ABANDONED TELEPORTER - -/area/AIsattele - name = "Abandoned Teleporter" - icon_state = "teleporter" - music = "signal" - ambientsounds = list('sound/ambience/ambimalf.ogg') diff --git a/code/game/area/areas/mining.dm b/code/game/area/areas/mining.dm deleted file mode 100644 index 7272694476..0000000000 --- a/code/game/area/areas/mining.dm +++ /dev/null @@ -1,120 +0,0 @@ -/**********************Mine areas**************************/ - -/area/mine - icon_state = "mining" - has_gravity = 1 - -/area/mine/explored - name = "Mine" - icon_state = "explored" - music = null - always_unpowered = 1 - requires_power = 1 - poweralm = 0 - power_environ = 0 - power_equip = 0 - power_light = 0 - outdoors = 1 - ambientsounds = list('sound/ambience/ambimine.ogg') - flags = NONE - -/area/mine/unexplored - name = "Mine" - icon_state = "unexplored" - music = null - always_unpowered = 1 - requires_power = 1 - poweralm = 0 - power_environ = 0 - power_equip = 0 - power_light = 0 - outdoors = 1 - ambientsounds = list('sound/ambience/ambimine.ogg') - flags = NONE - -/area/mine/lobby - name = "Mining Station" - -/area/mine/storage - name = "Mining Station Storage" - -/area/mine/production - name = "Mining Station Starboard Wing" - icon_state = "mining_production" - -/area/mine/abandoned - name = "Abandoned Mining Station" - -/area/mine/living_quarters - name = "Mining Station Port Wing" - icon_state = "mining_living" - -/area/mine/eva - name = "Mining Station EVA" - icon_state = "mining_eva" - -/area/mine/maintenance - name = "Mining Station Communications" - -/area/mine/cafeteria - name = "Mining station Cafeteria" - -/area/mine/hydroponics - name = "Mining station Hydroponics" - -/area/mine/sleeper - name = "Mining station Emergency Sleeper" - -/area/mine/north_outpost - name = "North Mining Outpost" - -/area/mine/west_outpost - name = "West Mining Outpost" - -/area/mine/laborcamp - name = "Labor Camp" - -/area/mine/laborcamp/security - name = "Labor Camp Security" - icon_state = "security" - - - - -/**********************Lavaland Areas**************************/ - -/area/lavaland - icon_state = "mining" - has_gravity = 1 - -/area/lavaland/surface - name = "Lavaland" - icon_state = "explored" - music = null - always_unpowered = 1 - poweralm = 0 - power_environ = 0 - power_equip = 0 - power_light = 0 - requires_power = 1 - ambientsounds = list('sound/ambience/ambilava.ogg') - -/area/lavaland/underground - name = "Lavaland Caves" - icon_state = "unexplored" - music = null - always_unpowered = 1 - requires_power = 1 - poweralm = 0 - power_environ = 0 - power_equip = 0 - power_light = 0 - ambientsounds = list('sound/ambience/ambilava.ogg') - - -/area/lavaland/surface/outdoors - name = "Lavaland Wastes" - outdoors = 1 - -/area/lavaland/surface/outdoors/explored - name = "Lavaland Labor Camp" \ No newline at end of file diff --git a/code/game/area/areas/misc.dm b/code/game/area/areas/misc.dm deleted file mode 100644 index 6a4951d482..0000000000 --- a/code/game/area/areas/misc.dm +++ /dev/null @@ -1,130 +0,0 @@ - -// Hell -/area/hell - name = "Hell Lobby" - //icon = "ICON FILENAME" - //icon_state = "NAME OF ICON" - requires_power = 0 - music = "music/music.ogg" - -/area/hell/trial1 - name = "Hell Trial1" - //icon_state = "NAME OF ICON" (defaults to "unknown" (blank)) - -/area/hell/trial1 - name = "Hell Trial2" - //icon_state = "NAME OF ICON" (defaults to "unknown" (blank)) - -/area/hell/trial1 - name = "Hell Trial3" - //icon_state = "NAME OF ICON" (defaults to "unknown" (blank)) - - - -//Misc - -/area/wreck/ai - name = "AI Chamber" - icon_state = "ai" - -/area/wreck/main - name = "Wreck" - icon_state = "storage" - -/area/wreck/engineering - name = "Power Room" - icon_state = "engine" - -/area/wreck/bridge - name = "Bridge" - icon_state = "bridge" - -/area/generic - name = "Unknown" - icon_state = "storage" - - - -//PRISON -/area/prison - name = "Prison Station" - icon_state = "brig" - -/area/prison/arrival_airlock - name = "Prison Station Airlock" - icon_state = "green" - requires_power = 0 - -/area/prison/control - name = "Prison Security Checkpoint" - icon_state = "security" - -/area/prison/crew_quarters - name = "Prison Security Quarters" - icon_state = "security" - -/area/prison/rec_room - name = "Prison Rec Room" - icon_state = "green" - -/area/prison/closet - name = "Prison Supply Closet" - icon_state = "dk_yellow" - -/area/prison/hallway/fore - name = "Prison Fore Hallway" - icon_state = "yellow" - -/area/prison/hallway/aft - name = "Prison Aft Hallway" - icon_state = "yellow" - -/area/prison/hallway/port - name = "Prison Port Hallway" - icon_state = "yellow" - -/area/prison/hallway/starboard - name = "Prison Starboard Hallway" - icon_state = "yellow" - -/area/prison/morgue - name = "Prison Morgue" - icon_state = "morgue" - ambientsounds = list('sound/ambience/ambimo1.ogg','sound/ambience/ambimo2.ogg') - -/area/prison/medical_research - name = "Prison Genetic Research" - icon_state = "medresearch" - -/area/prison/medical - name = "Prison Medbay" - icon_state = "medbay" - -/area/prison/solar - name = "Prison Solar Array" - icon_state = "storage" - requires_power = 0 - -/area/prison/podbay - name = "Prison Podbay" - icon_state = "dk_yellow" - -/area/prison/solar_control - name = "Prison Solar Array Control" - icon_state = "dk_yellow" - -/area/prison/solitary - name = "Solitary Confinement" - icon_state = "brig" - -/area/prison/cell_block/A - name = "Prison Cell Block A" - icon_state = "brig" - -/area/prison/cell_block/B - name = "Prison Cell Block B" - icon_state = "brig" - -/area/prison/cell_block/C - name = "Prison Cell Block C" - icon_state = "brig" diff --git a/code/game/area/areas/ruins.dm b/code/game/area/areas/ruins.dm deleted file mode 100644 index 86373fcfaf..0000000000 --- a/code/game/area/areas/ruins.dm +++ /dev/null @@ -1,200 +0,0 @@ -//Parent types - -/area/ruin - name = "\improper Unexplored Location" - icon_state = "away" - has_gravity = 1 - - -/area/ruin/unpowered - always_unpowered = 0 - -/area/ruin/unpowered/no_grav - has_gravity = 0 - -/area/ruin/powered - requires_power = 0 - - - - -//Areas -/area/ruin/unpowered/hierophant - name = "Hierophant's Arena" - -/area/ruin/unpowered/no_grav/way_home - name = "\improper Salvation" - icon_state = "away" - -/area/ruin/powered/snow_biodome - -/area/ruin/powered/golem_ship - name = "Free Golem Ship" - -/area/ruin/powered/syndicate_lava_base - name = "Secret Base" - -// Ruins of "onehalf" ship - -/area/ruin/onehalf/hallway - name = "Hallway" - icon_state = "hallC" - -/area/ruin/onehalf/drone_bay - name = "Mining Drone Bay" - icon_state = "engine" - -/area/ruin/onehalf/dorms_med - name = "Crew Quarters" - icon_state = "Sleep" - -/area/ruin/onehalf/bridge - name = "Bridge" - icon_state = "bridge" - - - -/area/ruin/powered/dinner_for_two - name = "Dinner for Two" - -/area/ruin/powered/authorship - name = "Authorship" - -/area/ruin/powered/aesthetic - name = "Aesthetic" - ambientsounds = list('sound/ambience/ambivapor1.ogg') - - -//Ruin of Hotel - -/area/ruin/hotel - name = "Hotel" - -/area/ruin/hotel/guestroom - name = "Hotel Guest Room" - icon_state = "Sleep" - -/area/ruin/hotel/security - name = "Hotel Security Post" - icon_state = "security" - -/area/ruin/hotel/pool - name = "Hotel Pool Room" - icon_state = "fitness" - -/area/ruin/hotel/bar - name = "Hotel Bar" - icon_state = "cafeteria" - -/area/ruin/hotel/power - name = "Hotel Power Room" - icon_state = "engine_smes" - -/area/ruin/hotel/custodial - name = "Hotel Custodial Closet" - icon_state = "janitor" - -/area/ruin/hotel/shuttle - name = "Hotel Shuttle" - icon_state = "shuttle" - requires_power = 0 - -/area/ruin/hotel/dock - name = "Hotel Shuttle Dock" - icon_state = "start" - -/area/ruin/hotel/workroom - name = "Hotel Staff Room" - icon_state = "crew_quarters" - - - -/area/ruin/fakespace - icon_state = "space" - requires_power = 1 - always_unpowered = 1 - lighting_use_dynamic = DYNAMIC_LIGHTING_DISABLED - has_gravity = 0 - power_light = 0 - power_equip = 0 - power_environ = 0 - valid_territory = 0 - outdoors = 1 - ambientsounds = list('sound/ambience/ambispace.ogg','sound/ambience/title2.ogg') - blob_allowed = 0 - - - -//Ruin of Derelict Oupost - -/area/ruin/derelictoutpost - name = "Derelict Outpost" - icon_state = "green" - -/area/ruin/derelictoutpost/cargostorage - name = "Derelict Outpost Cargo Storage" - icon_state = "storage" - -/area/ruin/derelictoutpost/cargobay - name = "Derelict Outpost Cargo Bay" - icon_state = "quartstorage" - -/area/ruin/derelictoutpost/powerstorage - name = "Derelict Outpost Power Storage" - icon_state = "engine_smes" - -/area/ruin/derelictoutpost/dockedship - name = "Derelict Outpost Docked Ship" - icon_state = "red" - - -//Ruin of Space Bar - -/area/ruin/powered/spacebar - name = "Space Bar" - icon_state = "yellow" - -/area/ruin/powered/spacebar/bar - icon_state = "bar" - - -//Ruin of turretedoutpost - -/area/ruin/turretedoutpost - name = "Turreted Outpost" - icon_state = "red" - - -//Ruin of old teleporter - -/area/ruin/oldteleporter - name = "Old teleporter" - icon_state = "teleporter" - has_gravity = 0 - - -//Ruin of mech transport - -/area/ruin/powered/mechtransport - name = "Mech Transport" - icon_state = "green" - - -//Ruin of gas the lizard - -/area/ruin/gasthelizard - name = "Gas the lizard" - - -//Ruin of Deep Storage - -/area/ruin/deepstorage - name = "Deep Storage" - icon_state = "storage" - - -//Ruin of Abandoned Zoo - -/area/ruin/abandonedzoo - name = "Abandoned Zoo" - icon_state = "green" diff --git a/code/game/area/areas/shuttles.dm b/code/game/area/areas/shuttles.dm deleted file mode 100644 index f44f8ac769..0000000000 --- a/code/game/area/areas/shuttles.dm +++ /dev/null @@ -1,62 +0,0 @@ - -//These are shuttle areas; all subtypes are only used as teleportation markers, they have no actual function beyond that. - -/area/shuttle - name = "Shuttle" - requires_power = 0 - luminosity = 1 - lighting_use_dynamic = DYNAMIC_LIGHTING_ENABLED - has_gravity = 1 - always_unpowered = 0 - valid_territory = 0 - icon_state = "shuttle" - -/area/shuttle/transit - name = "Hyperspace" - desc = "Weeeeee" - -/area/shuttle/arrival - name = "Arrival Shuttle" - -/area/shuttle/pod_1 - name = "Escape Pod One" - -/area/shuttle/pod_2 - name = "Escape Pod Two" - -/area/shuttle/pod_3 - name = "Escape Pod Three" - -/area/shuttle/pod_4 - name = "Escape Pod Four" - -/area/shuttle/mining - name = "Mining Shuttle" - blob_allowed = FALSE - -/area/shuttle/labor - name = "Labor Camp Shuttle" - blob_allowed = FALSE - -/area/shuttle/supply - name = "Supply Shuttle" - blob_allowed = FALSE - -/area/shuttle/escape - name = "Emergency Shuttle" - -/area/shuttle/transport - name = "Transport Shuttle" - blob_allowed = FALSE - -/area/shuttle/syndicate - name = "Syndicate Infiltrator" - blob_allowed = FALSE - -/area/shuttle/assault_pod - name = "Steel Rain" - blob_allowed = FALSE - -/area/shuttle/abandoned - name = "Abandoned Ship" - blob_allowed = FALSE diff --git a/code/game/area/areas/space_content.dm b/code/game/area/areas/space_content.dm deleted file mode 100644 index 605cbfa764..0000000000 --- a/code/game/area/areas/space_content.dm +++ /dev/null @@ -1,97 +0,0 @@ - - -/area/spacecontent - name = "space" - -/area/spacecontent/a1 - icon_state = "spacecontent1" - -/area/spacecontent/a2 - icon_state = "spacecontent2" - -/area/spacecontent/a3 - icon_state = "spacecontent3" - -/area/spacecontent/a4 - icon_state = "spacecontent4" - -/area/spacecontent/a5 - icon_state = "spacecontent5" - -/area/spacecontent/a6 - icon_state = "spacecontent6" - -/area/spacecontent/a7 - icon_state = "spacecontent7" - -/area/spacecontent/a8 - icon_state = "spacecontent8" - -/area/spacecontent/a9 - icon_state = "spacecontent9" - -/area/spacecontent/a10 - icon_state = "spacecontent10" - -/area/spacecontent/a11 - icon_state = "spacecontent11" - -/area/spacecontent/a11 - icon_state = "spacecontent12" - -/area/spacecontent/a12 - icon_state = "spacecontent13" - -/area/spacecontent/a13 - icon_state = "spacecontent14" - -/area/spacecontent/a14 - icon_state = "spacecontent14" - -/area/spacecontent/a15 - icon_state = "spacecontent15" - -/area/spacecontent/a16 - icon_state = "spacecontent16" - -/area/spacecontent/a17 - icon_state = "spacecontent17" - -/area/spacecontent/a18 - icon_state = "spacecontent18" - -/area/spacecontent/a19 - icon_state = "spacecontent19" - -/area/spacecontent/a20 - icon_state = "spacecontent20" - -/area/spacecontent/a21 - icon_state = "spacecontent21" - -/area/spacecontent/a22 - icon_state = "spacecontent22" - -/area/spacecontent/a23 - icon_state = "spacecontent23" - -/area/spacecontent/a24 - icon_state = "spacecontent24" - -/area/spacecontent/a25 - icon_state = "spacecontent25" - -/area/spacecontent/a26 - icon_state = "spacecontent26" - -/area/spacecontent/a27 - icon_state = "spacecontent27" - -/area/spacecontent/a28 - icon_state = "spacecontent28" - -/area/spacecontent/a29 - icon_state = "spacecontent29" - -/area/spacecontent/a30 - icon_state = "spacecontent30" diff --git a/code/game/asteroid.dm b/code/game/asteroid.dm index 2898af93e2..42dbc1588a 100644 --- a/code/game/asteroid.dm +++ b/code/game/asteroid.dm @@ -75,7 +75,7 @@ var/global/max_secret_rooms = 6 floortypes = list(/turf/open/floor/plasteel/cult) treasureitems = list(/obj/item/device/soulstone/anybody=1, /obj/item/clothing/suit/space/hardsuit/cult=1, /obj/item/weapon/bedsheet/cult=2, /obj/item/clothing/suit/cultrobes=2, /mob/living/simple_animal/hostile/creature=3) - fluffitems = list(/obj/effect/gateway=1,/obj/effect/gibspawner=1,/obj/structure/destructible/cult/talisman=1,/obj/item/toy/crayon/red=2, + fluffitems = list(/obj/effect/gateway=1,/obj/effect/gibspawner=1,/obj/structure/cult/talisman=1,/obj/item/toy/crayon/red=2, /obj/item/organ/heart=2, /obj/effect/decal/cleanable/blood=4,/obj/structure/table/wood=2,/obj/item/weapon/ectoplasm=3, /obj/item/clothing/shoes/cult=1) @@ -92,7 +92,7 @@ var/global/max_secret_rooms = 6 theme = "cavein" walltypes = list(/turf/closed/mineral/random/high_chance=1) floortypes = list(/turf/open/floor/plating/asteroid/basalt, /turf/open/floor/plating/beach/sand) - treasureitems = list(/obj/mecha/working/ripley/mining=1, /obj/item/weapon/pickaxe/drill/diamonddrill=2, + treasureitems = list(/obj/mecha/working/ripley/mining=1, /obj/item/weapon/pickaxe/drill/diamonddrill=2,/obj/item/weapon/gun/energy/kinetic_accelerator/hyper=1, /obj/item/weapon/resonator/upgraded=1, /obj/item/weapon/pickaxe/drill/jackhammer=5) fluffitems = list(/obj/effect/decal/cleanable/blood=3,/obj/effect/decal/remains/human=1,/obj/item/clothing/under/overalls=1, /obj/item/weapon/reagent_containers/food/snacks/grown/chili=1,/obj/item/weapon/tank/internals/oxygen/red=2) @@ -117,7 +117,7 @@ var/global/max_secret_rooms = 6 if("speakeasy") theme = "speakeasy" floortypes = list(/turf/open/floor/plasteel,/turf/open/floor/wood) - treasureitems = list(/obj/item/weapon/melee/energy/sword/pirate=1,/obj/item/weapon/gun/ballistic/revolver/doublebarrel=1,/obj/item/weapon/storage/backpack/satchel/flat=1, + treasureitems = list(/obj/item/weapon/melee/energy/sword/pirate=1,/obj/item/weapon/gun/projectile/revolver/doublebarrel=1,/obj/item/weapon/storage/backpack/satchel_flat=1, /obj/machinery/reagentgrinder=2, /obj/machinery/computer/security/wooden_tv=4, /obj/machinery/vending/coffee=3) fluffitems = list(/obj/structure/table/wood=2,/obj/structure/reagent_dispensers/beerkeg=1,/obj/item/stack/spacecash/c500=4, /obj/item/weapon/reagent_containers/food/drinks/shaker=1,/obj/item/weapon/reagent_containers/food/drinks/bottle/wine=3, @@ -126,9 +126,9 @@ var/global/max_secret_rooms = 6 if("plantlab") theme = "plantlab" treasureitems = list(/obj/item/weapon/gun/energy/floragun=1,/obj/item/seeds/sunflower/novaflower=2,/obj/item/seeds/tomato/blue/bluespace=2,/obj/item/seeds/tomato/blue=2, - /obj/item/seeds/coffee/robusta=2, /obj/item/seeds/firelemon=2) + /obj/item/seeds/coffee/robusta=2, /obj/item/seeds/cash=2) fluffitems = list(/obj/item/weapon/twohanded/required/kirbyplants=1,/obj/structure/table/reinforced=2,/obj/machinery/hydroponics/constructable=1, - /obj/structure/glowshroom/single=2,/obj/item/weapon/reagent_containers/syringe/charcoal=2, + /obj/effect/glowshroom/single=2,/obj/item/weapon/reagent_containers/syringe/charcoal=2, /obj/item/weapon/reagent_containers/glass/bottle/diethylamine=3,/obj/item/weapon/reagent_containers/glass/bottle/ammonia=3) /*if("poly") @@ -174,13 +174,13 @@ var/global/max_secret_rooms = 6 if(!T) return 0 - room = spawn_room(T,x_size,y_size,walltypes,floor) //WE'RE FINALLY CREATING THE ROOM + room = spawn_room(T,x_size,y_size,walltypes,floor,) //WE'RE FINALLY CREATING THE ROOM if(room)//time to fill it with stuff var/list/emptyturfs = room["floors"] T = pick(emptyturfs) if(T) - new /obj/structure/glowshroom/single(T) //Just to make it a little more visible + new /obj/effect/glowshroom/single(T) //Just to make it a little more visible var/surprise = null surprise = pickweight(treasureitems) new surprise(T)//here's the prize @@ -195,4 +195,4 @@ var/global/max_secret_rooms = 6 emptyturfs -= T //world.log << "The [theme] themed [T.loc] has been created!" - return 1 + return 1 \ No newline at end of file diff --git a/code/game/atoms.dm b/code/game/atoms.dm index c0d6f8bd3f..4eb9476e51 100644 --- a/code/game/atoms.dm +++ b/code/game/atoms.dm @@ -1,12 +1,14 @@ /atom layer = TURF_LAYER - plane = GAME_PLANE var/level = 2 var/flags = 0 var/list/fingerprints var/list/fingerprintshidden + var/fingerprintslast = null var/list/blood_DNA - var/admin_spawned = 0 //was this spawned by an admin? used for stat tracking stuff. + + ///Chemistry. + var/datum/reagents/reagents = null //This atom's HUD (med/sec, etc) images. Associative list. var/list/image/hud_list = null @@ -19,42 +21,15 @@ //overlays that should remain on top and not normally be removed, like c4. var/list/priority_overlays - var/list/atom_colours //used to store the different colors on an atom - //its inherent color, the colored paint applied on it, special color effect etc... - - -/atom/New() - //atom creation method that preloads variables at creation - if(use_preloader && (src.type == _preloader.target_path))//in case the instanciated atom is creating other atoms in New() - _preloader.load(src) - //atom color stuff - if(color) - add_atom_colour(color, FIXED_COLOUR_PRIORITY) - - //lighting stuff - if(opacity && isturf(loc)) - loc.UpdateAffectingLights() - - if(luminosity) - light = new(src) - - //. = ..() //uncomment if you are dumb enough to add a /datum/New() proc - /atom/Destroy() if(alternate_appearances) for(var/aakey in alternate_appearances) var/datum/alternate_appearance/AA = alternate_appearances[aakey] qdel(AA) alternate_appearances = null - if(viewing_alternate_appearances) - for(var/aakey in viewing_alternate_appearances) - for(var/aa in viewing_alternate_appearances[aakey]) - var/datum/alternate_appearance/AA = aa - AA.hide(list(src)) + return ..() -/atom/proc/CanPass(atom/movable/mover, turf/target, height=1.5) - return (!density || !height) /atom/proc/onCentcom() var/turf/T = get_turf(src) @@ -86,11 +61,11 @@ return 0 -/atom/proc/attack_hulk(mob/living/carbon/human/user, does_attack_animation = 0) - if(does_attack_animation) - user.changeNext_move(CLICK_CD_MELEE) - add_logs(user, src, "punched", "hulk powers") - user.do_attack_animation(src, ATTACK_EFFECT_SMASH) +/atom/proc/attack_hulk(mob/living/carbon/human/hulk, do_attack_animation = 0) + if(do_attack_animation) + hulk.changeNext_move(CLICK_CD_MELEE) + add_logs(hulk, src, "punched", "hulk powers") + hulk.do_attack_animation(src) /atom/proc/CheckParts(list/parts_list) for(var/A in parts_list) @@ -101,7 +76,7 @@ reagents.conditional_update() else if(istype(A, /atom/movable)) var/atom/movable/M = A - if(isliving(M.loc)) + if(istype(M.loc, /mob/living)) var/mob/living/L = M.loc L.unEquip(M) M.loc = src @@ -122,6 +97,8 @@ /atom/proc/check_eye(mob/user) return +/atom/proc/on_reagent_change() + return /atom/proc/Bumped(AM as mob|obj) return @@ -225,15 +202,17 @@ return /atom/proc/contents_explosion(severity, target) - return + for(var/atom/A in contents) + A.ex_act(severity, target) + CHECK_TICK /atom/proc/ex_act(severity, target) contents_explosion(severity, target) -/atom/proc/blob_act(obj/structure/blob/B) +/atom/proc/blob_act(obj/effect/blob/B) return -/atom/proc/fire_act(exposed_temperature, exposed_volume) +/atom/proc/fire_act() return /atom/proc/hitby(atom/movable/AM, skipcatch, hitpush, blocked) @@ -348,7 +327,7 @@ var/list/blood_splatter_icons = list() G.add_blood(blood_dna) else transfer_blood_dna(blood_dna) - bloody_hands = rand(2, 4) + bloody_hands = rand(2, 4) update_inv_gloves() //handles bloody hands overlays and updating return 1 @@ -360,6 +339,12 @@ var/list/blood_splatter_icons = list() /atom/proc/wash_cream() return 1 +/atom/proc/change_area(var/area/oldarea, var/area/newarea) + change_area_name(oldarea.name, newarea.name) + +/atom/proc/change_area_name(var/oldname, var/newname) + name = replacetext(name,oldname,newname) + /atom/proc/get_global_map_pos() if(!islist(global_map) || isemptylist(global_map)) return var/cur_x = null @@ -377,7 +362,7 @@ var/list/blood_splatter_icons = list() return 0 /atom/proc/isinspace() - if(isspaceturf(get_turf(src))) + if(istype(get_turf(src), /turf/open/space)) return 1 else return 0 @@ -393,7 +378,7 @@ var/list/blood_splatter_icons = list() /atom/proc/singularity_pull() return -/atom/proc/acid_act(acidpwr, acid_volume) +/atom/proc/acid_act(acidpwr, toxpwr, acid_volume) return /atom/proc/emag_act() @@ -437,7 +422,7 @@ var/list/blood_splatter_icons = list() return /atom/proc/add_vomit_floor(mob/living/carbon/M, toxvomit = 0) - if(isturf(src)) + if(istype(src,/turf) ) var/obj/effect/decal/cleanable/vomit/V = PoolOrNew(/obj/effect/decal/cleanable/vomit, src) // Make toxins vomit look different if(toxvomit) @@ -457,88 +442,3 @@ var/list/blood_splatter_icons = list() //Hook for running code when a dir change occurs /atom/proc/setDir(newdir) dir = newdir - -/atom/proc/mech_melee_attack(obj/mecha/M) - return - - - -/* - Atom Colour Priority System - A System that gives finer control over which atom colour to colour the atom with. - The "highest priority" one is always displayed as opposed to the default of - "whichever was set last is displayed" -*/ - - -/* - Adds an instance of colour_type to the atom's atom_colours list -*/ -/atom/proc/add_atom_colour(coloration, colour_priority) - if(!atom_colours || !atom_colours.len) - atom_colours = list() - atom_colours.len = COLOUR_PRIORITY_AMOUNT //four priority levels currently. - if(!coloration) - return - if(colour_priority > atom_colours.len) - return - atom_colours[colour_priority] = coloration - update_atom_colour() - - -/* - Removes an instance of colour_type from the atom's atom_colours list -*/ -/atom/proc/remove_atom_colour(colour_priority, coloration) - if(!atom_colours) - atom_colours = list() - atom_colours.len = COLOUR_PRIORITY_AMOUNT //four priority levels currently. - if(colour_priority > atom_colours.len) - return - if(coloration && atom_colours[colour_priority] != coloration) - return //if we don't have the expected color (for a specific priority) to remove, do nothing - atom_colours[colour_priority] = null - update_atom_colour() - - -/* - Resets the atom's color to null, and then sets it to the highest priority - colour available -*/ -/atom/proc/update_atom_colour() - if(!atom_colours) - atom_colours = list() - atom_colours.len = COLOUR_PRIORITY_AMOUNT //four priority levels currently. - color = null - for(var/C in atom_colours) - if(islist(C)) - var/list/L = C - if(L.len) - color = L - return - else if(C) - color = C - return - -/atom/vv_edit_var(var_name, var_value) - if(!Debug2) - admin_spawned = TRUE - switch(var_name) - if("luminosity") - src.SetLuminosity(var_value) - return//prevent normal setting of this value - . = ..() - switch(var_name) - if("color") - add_atom_colour(color, ADMIN_COLOUR_PRIORITY) - -/atom/vv_get_dropdown() - . = ..() - . += "---" - var/turf/curturf = get_turf(src) - if (curturf) - .["Jump to"] = "?_src_=holder;adminplayerobservecoodjump=1;X=[curturf.x];Y=[curturf.y];Z=[curturf.z]" - .["Add reagent"] = "?_src_=vars;addreagent=\ref[src]" - .["Trigger EM pulse"] = "?_src_=vars;emp=\ref[src]" - .["Trigger explosion"] = "?_src_=vars;explode=\ref[src]" - diff --git a/code/game/atoms_movable.dm b/code/game/atoms_movable.dm index 5fa1a20326..1db488d119 100644 --- a/code/game/atoms_movable.dm +++ b/code/game/atoms_movable.dm @@ -19,7 +19,6 @@ var/inertia_move_delay = 5 var/pass_flags = 0 var/moving_diagonally = 0 //0: not doing a diagonal move. 1 and 2: doing the first/second step of the diagonal move - var/list/client_mobs_in_contents // This contains all the client mobs within this container glide_size = 8 appearance_flags = TILE_BOUND @@ -65,12 +64,13 @@ moving_diagonally = SECOND_DIAG_STEP . = step(src, SOUTH) moving_diagonally = 0 - return if(!loc || (loc == oldloc && oldloc != newloc)) last_move = 0 return + update_client_hook(loc) + if(.) Moved(oldloc, direct) @@ -84,8 +84,6 @@ if (!inertia_moving) inertia_next_move = world.time + inertia_move_delay newtonian_move(Dir) - if (length(client_mobs_in_contents)) - update_parallax_contents() return 1 /atom/movable/Destroy() @@ -136,6 +134,9 @@ continue AM.Crossed(src) Moved(oldloc, 0) + + update_client_hook(destination) + return 1 return 0 @@ -150,12 +151,33 @@ reset_perspective(destination) update_canmove() //if the mob was asleep inside a container and then got forceMoved out we need to make them fall. -/mob/living/brain/forceMove(atom/destination) +/mob/living/carbon/brain/forceMove(atom/destination) if(container) - return container.forceMove(destination) + container.forceMove(destination) else //something went very wrong. CRASH("Brainmob without container.") +/mob/living/silicon/pai/forceMove(atom/destination) + if(card) + card.forceMove(destination) + else //something went very wrong. + CRASH("pAI without card") + +/atom/movable/proc/update_client_hook(atom/destination) + if(locate(/mob) in src) + for(var/client/C in parallax_on_clients) + if((get_turf(C.eye) == destination) && (C.mob.hud_used)) + C.mob.hud_used.update_parallax_values() + +/mob/update_client_hook(atom/destination) + if(locate(/mob) in src) + for(var/client/C in parallax_on_clients) + if((get_turf(C.eye) == destination) && (C.mob.hud_used)) + C.mob.hud_used.update_parallax_values() + else if(client && hud_used) + hud_used.update_parallax_values() + + //Called whenever an object moves and by mobs when they attempt to move themselves through space //And when an object or action applies a force on src, see newtonian_move() below //Return 0 to have src start/keep drifting in a no-grav area and 1 to stop/not start drifting @@ -243,7 +265,7 @@ while(target && ((dist_travelled < range && loc != finalturf) || !has_gravity(src))) //stop if we reached our destination (or max range) and aren't floating var/slept = 0 - if(!isturf(loc)) + if(!istype(loc, /turf)) hit = 1 break @@ -304,6 +326,26 @@ throw_impact(AM) return 1 +//Overlays +/atom/movable/overlay + var/atom/master = null + anchored = 1 + +/atom/movable/overlay/New() + verbs.Cut() + +/atom/movable/overlay/attackby(a, b, c) + if (src.master) + return src.master.attackby(a, b, c) + +/atom/movable/overlay/attack_paw(a, b, c) + if (src.master) + return src.master.attack_paw(a, b, c) + +/atom/movable/overlay/attack_hand(a, b, c) + if (src.master) + return src.master.attack_hand(a, b, c) + /atom/movable/proc/handle_buckled_mob_movement(newloc,direct) for(var/m in buckled_mobs) var/mob/living/buckled_mob = m @@ -343,68 +385,3 @@ //called when a mob resists while inside a container that is itself inside something. /atom/movable/proc/relay_container_resist(mob/living/user, obj/O) return - - -/atom/movable/proc/do_attack_animation(atom/A, visual_effect_icon, obj/item/used_item, no_effect, end_pixel_y) - if(!no_effect && (visual_effect_icon || used_item)) - do_item_attack_animation(A, visual_effect_icon, used_item) - - var/pixel_x_diff = 0 - var/pixel_y_diff = 0 - var/final_pixel_y = initial(pixel_y) - if(end_pixel_y) - final_pixel_y = end_pixel_y - - var/direction = get_dir(src, A) - if(direction & NORTH) - pixel_y_diff = 8 - else if(direction & SOUTH) - pixel_y_diff = -8 - - if(direction & EAST) - pixel_x_diff = 8 - else if(direction & WEST) - pixel_x_diff = -8 - - animate(src, pixel_x = pixel_x + pixel_x_diff, pixel_y = pixel_y + pixel_y_diff, time = 2) - animate(pixel_x = initial(pixel_x), pixel_y = final_pixel_y, time = 2) - -/atom/movable/proc/do_item_attack_animation(atom/A, visual_effect_icon, obj/item/used_item) - var/image/I - if(visual_effect_icon) - I = image('icons/effects/effects.dmi', A, visual_effect_icon, A.layer + 0.1) - else if(used_item) - I = image(used_item.icon, A, used_item.icon_state, A.layer + 0.1) - - // Scale the icon. - I.transform *= 0.75 - // The icon should not rotate. - I.appearance_flags = APPEARANCE_UI_IGNORE_ALPHA - - // Set the direction of the icon animation. - var/direction = get_dir(src, A) - if(direction & NORTH) - I.pixel_y = -16 - else if(direction & SOUTH) - I.pixel_y = 16 - - if(direction & EAST) - I.pixel_x = -16 - else if(direction & WEST) - I.pixel_x = 16 - - if(!direction) // Attacked self?! - I.pixel_z = 16 - - if(!I) - return - - flick_overlay(I, clients, 5) // 5 ticks/half a second - - // And animate the attack! - animate(I, alpha = 175, pixel_x = 0, pixel_y = 0, pixel_z = 0, time = 3) - -/atom/movable/vv_get_dropdown() - . = ..() - . -= "Jump to" - .["Follow"] = "?_src_=holder;adminplayerobservefollow=\ref[src]" diff --git a/code/game/data_huds.dm b/code/game/data_huds.dm index 4fafd00704..d7681cfad7 100644 --- a/code/game/data_huds.dm +++ b/code/game/data_huds.dm @@ -61,25 +61,19 @@ //called when a carbon changes virus /mob/living/carbon/proc/check_virus() - var/threat = 0 for(var/datum/disease/D in viruses) - if(!(D.visibility_flags & HIDDEN_SCANNER)) - if (D.severity != NONTHREAT) //a buffing virus gets an icon - threat = 2 - return threat //harmful viruses have priority - else - threat = 1 //aka good virus - - return threat + if((!(D.visibility_flags & HIDDEN_SCANNER)) && (D.severity != NONTHREAT)) + return 1 + return 0 //helper for getting the appropriate health status /proc/RoundHealth(mob/living/M) if(M.stat == DEAD || (M.status_flags & FAKEDEATH)) return "health-100" //what's our health? it doesn't matter, we're dead, or faking - var/maxi_health = M.maxHealth + var/maxhealth = M.maxHealth if(iscarbon(M) && M.health < 0) - maxi_health = 100 //so crit shows up right for aliens and other high-health carbon mobs; noncarbons don't have crit. - var/resulthealth = (M.health / maxi_health) * 100 + maxhealth = 100 //so crit shows up right for aliens and other high-health carbon mobs; noncarbons don't have crit. + var/resulthealth = (M.health / maxhealth) * 100 switch(resulthealth) if(100 to INFINITY) return "health100" @@ -137,8 +131,6 @@ /mob/living/proc/med_hud_set_health() var/image/holder = hud_list[HEALTH_HUD] holder.icon_state = "hud[RoundHealth(src)]" - var/icon/I = icon(icon, icon_state, dir) - holder.pixel_y = I.Height() - world.icon_size //for carbon suit sensors /mob/living/carbon/med_hud_set_health() @@ -151,8 +143,6 @@ //called when a carbon changes stat, virus or XENO_HOST /mob/living/proc/med_hud_set_status() var/image/holder = hud_list[STATUS_HUD] - var/icon/I = icon(icon, icon_state, dir) - holder.pixel_y = I.Height() - world.icon_size if(stat == DEAD || (status_flags & FAKEDEATH)) holder.icon_state = "huddead" else @@ -160,20 +150,12 @@ /mob/living/carbon/med_hud_set_status() var/image/holder = hud_list[STATUS_HUD] - var/icon/I = icon(icon, icon_state, dir) - var/virus_state = check_virus() - var/mob/living/simple_animal/borer/B = has_brain_worms() - holder.pixel_y = I.Height() - world.icon_size if(status_flags & XENO_HOST) holder.icon_state = "hudxeno" else if(stat == DEAD || (status_flags & FAKEDEATH)) holder.icon_state = "huddead" - else if(has_brain_worms() && B != null && B.controlling) - holder.icon_state = "hudbrainworm" - else if(virus_state == 2) + else if(check_virus()) holder.icon_state = "hudill" - else if(virus_state == 1) - holder.icon_state = "hudbuff" else holder.icon_state = "hudhealthy" @@ -186,8 +168,6 @@ /mob/living/carbon/human/proc/sec_hud_set_ID() 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" if(wear_id) holder.icon_state = "hud[ckey(wear_id.GetJobName())]" @@ -201,27 +181,20 @@ for(var/i in list(IMPTRACK_HUD, IMPLOYAL_HUD, IMPCHEM_HUD)) holder = hud_list[i] holder.icon_state = null - for(var/obj/item/weapon/implant/I in implants) - if(istype(I,/obj/item/weapon/implant/tracking)) - holder = hud_list[IMPTRACK_HUD] - var/icon/IC = icon(icon, icon_state, dir) - holder.pixel_y = IC.Height() - world.icon_size - holder.icon_state = "hud_imp_tracking" - else if(istype(I,/obj/item/weapon/implant/mindshield)) - holder = hud_list[IMPLOYAL_HUD] - var/icon/IC = icon(icon, icon_state, dir) - holder.pixel_y = IC.Height() - world.icon_size - holder.icon_state = "hud_imp_loyal" - else if(istype(I,/obj/item/weapon/implant/chem)) - holder = hud_list[IMPCHEM_HUD] - var/icon/IC = icon(icon, icon_state, dir) - holder.pixel_y = IC.Height() - world.icon_size - holder.icon_state = "hud_imp_chem" + for(var/obj/item/weapon/implant/I in src) + if(I.implanted) + if(istype(I,/obj/item/weapon/implant/tracking)) + holder = hud_list[IMPTRACK_HUD] + holder.icon_state = "hud_imp_tracking" + else if(istype(I,/obj/item/weapon/implant/mindshield)) + holder = hud_list[IMPLOYAL_HUD] + holder.icon_state = "hud_imp_loyal" + else if(istype(I,/obj/item/weapon/implant/chem)) + holder = hud_list[IMPCHEM_HUD] + holder.icon_state = "hud_imp_chem" /mob/living/carbon/human/proc/sec_hud_set_security_status() var/image/holder = hud_list[WANTED_HUD] - var/icon/I = icon(icon, icon_state, dir) - holder.pixel_y = I.Height() - world.icon_size var/perpname = get_face_name(get_id_name("")) if(perpname) var/datum/data/record/R = find_record("name", perpname, data_core.security) @@ -267,8 +240,6 @@ //Sillycone hooks /mob/living/silicon/proc/diag_hud_set_health() var/image/holder = hud_list[DIAG_HUD] - var/icon/I = icon(icon, icon_state, dir) - holder.pixel_y = I.Height() - world.icon_size if(stat == DEAD) holder.icon_state = "huddiagdead" else @@ -276,8 +247,6 @@ /mob/living/silicon/proc/diag_hud_set_status() var/image/holder = hud_list[DIAG_STAT_HUD] - var/icon/I = icon(icon, icon_state, dir) - holder.pixel_y = I.Height() - world.icon_size switch(stat) if(CONSCIOUS) holder.icon_state = "hudstat" @@ -289,9 +258,7 @@ //Borgie battery tracking! /mob/living/silicon/robot/proc/diag_hud_set_borgcell() var/image/holder = hud_list[DIAG_BATT_HUD] - var/icon/I = icon(icon, icon_state, dir) - holder.pixel_y = I.Height() - world.icon_size - if(cell) + if (cell) var/chargelvl = (cell.charge/cell.maxcharge) holder.icon_state = "hudbatt[RoundDiagBar(chargelvl)]" else @@ -302,16 +269,12 @@ ~~~~~~~~~~~~~~~~~~~~~*/ /obj/mecha/proc/diag_hud_set_mechhealth() var/image/holder = hud_list[DIAG_MECH_HUD] - var/icon/I = icon(icon, icon_state, dir) - holder.pixel_y = I.Height() - world.icon_size - holder.icon_state = "huddiag[RoundDiagBar(obj_integrity/max_integrity)]" + holder.icon_state = "huddiag[RoundDiagBar(health/initial(health))]" /obj/mecha/proc/diag_hud_set_mechcell() var/image/holder = hud_list[DIAG_BATT_HUD] - var/icon/I = icon(icon, icon_state, dir) - holder.pixel_y = I.Height() - world.icon_size - if(cell) + if (cell) var/chargelvl = cell.charge/cell.maxcharge holder.icon_state = "hudbatt[RoundDiagBar(chargelvl)]" else @@ -320,8 +283,6 @@ /obj/mecha/proc/diag_hud_set_mechstat() var/image/holder = hud_list[DIAG_STAT_HUD] - var/icon/I = icon(icon, icon_state, dir) - holder.pixel_y = I.Height() - world.icon_size holder.icon_state = null if(internal_damage) holder.icon_state = "hudwarn" @@ -331,14 +292,10 @@ ~~~~~~~~~~*/ /mob/living/simple_animal/bot/proc/diag_hud_set_bothealth() var/image/holder = hud_list[DIAG_HUD] - var/icon/I = icon(icon, icon_state, dir) - holder.pixel_y = I.Height() - world.icon_size holder.icon_state = "huddiag[RoundDiagBar(health/maxHealth)]" /mob/living/simple_animal/bot/proc/diag_hud_set_botstat() //On (With wireless on or off), Off, EMP'ed var/image/holder = hud_list[DIAG_STAT_HUD] - var/icon/I = icon(icon, icon_state, dir) - holder.pixel_y = I.Height() - world.icon_size if(on) holder.icon_state = "hudstat" else if(stat) //Generally EMP causes this @@ -348,8 +305,6 @@ /mob/living/simple_animal/bot/proc/diag_hud_set_botmode() //Shows a bot's current operation var/image/holder = hud_list[DIAG_BOT_HUD] - var/icon/I = icon(icon, icon_state, dir) - holder.pixel_y = I.Height() - world.icon_size if(client) //If the bot is player controlled, it will not be following mode logic! holder.icon_state = "hudsentient" return diff --git a/code/game/gamemodes/antag_hud.dm b/code/game/gamemodes/antag_hud.dm index 999e5cdeb3..9e573c5c25 100644 --- a/code/game/gamemodes/antag_hud.dm +++ b/code/game/gamemodes/antag_hud.dm @@ -41,7 +41,7 @@ //MIND PROCS //these are called by mind.transfer_to() -/datum/mind/proc/transfer_antag_huds(datum/atom_hud/antag/newhud) +/datum/mind/proc/transfer_antag_huds(var/datum/atom_hud/antag/newhud) leave_all_huds() ticker.mode.set_antag_hud(current, antag_hud_icon_state) if(newhud) @@ -55,38 +55,3 @@ for(var/datum/atom_hud/data/hud in huds) if(current in hud.hudusers) hud.remove_hud_from(current) - -/datum/atom_hud/antag/gang - var/color = null - -/datum/atom_hud/antag/gang/add_to_hud(atom/A) - if(!A) - return - var/image/holder = A.hud_list[ANTAG_HUD] - if(holder) - holder.color = color - ..() - -/datum/atom_hud/antag/gang/remove_from_hud(atom/A) - if(!A) - return - var/image/holder = A.hud_list[ANTAG_HUD] - if(holder) - holder.color = null - ..() - -/datum/atom_hud/antag/gang/join_hud(mob/M) - if(!istype(M)) - CRASH("join_hud(): [M] ([M.type]) is not a mob!") - var/image/holder = M.hud_list[ANTAG_HUD] - if(holder) - holder.color = color - ..() - -/datum/atom_hud/antag/gang/leave_hud(mob/M) - if(!istype(M)) - CRASH("leave_hud(): [M] ([M.type]) is not a mob!") - var/image/holder = M.hud_list[ANTAG_HUD] - if(holder) - holder.color = null - ..() diff --git a/code/game/gamemodes/antag_spawner.dm b/code/game/gamemodes/antag_spawner.dm index 36fd338c27..d7168cd160 100644 --- a/code/game/gamemodes/antag_spawner.dm +++ b/code/game/gamemodes/antag_spawner.dm @@ -1,7 +1,7 @@ /obj/item/weapon/antag_spawner throw_speed = 1 throw_range = 5 - w_class = WEIGHT_CLASS_TINY + w_class = 1 var/used = 0 /obj/item/weapon/antag_spawner/proc/spawn_antag(client/C, turf/T, type = "") @@ -47,24 +47,21 @@ if(H.stat || H.restrained()) return - if(!ishuman(H)) + if(!istype(H, /mob/living/carbon/human)) return 1 - if(loc == H || (in_range(src, H) && isturf(loc))) + if(loc == H || (in_range(src, H) && istype(loc, /turf))) H.set_machine(src) if(href_list["school"]) - if(used) + if (used) H << "You already used this contract!" return - var/list/candidates = pollCandidatesForMob("Do you want to play as a wizard's [href_list["school"]] apprentice?", ROLE_WIZARD, null, ROLE_WIZARD, 150, src) + var/list/candidates = get_candidates(ROLE_WIZARD) if(candidates.len) - if(used) - H << "You already used this contract!" - return - used = 1 - var/mob/dead/observer/theghost = pick(candidates) - spawn_antag(theghost.client, get_turf(src), href_list["school"]) - if(H && H.mind) + src.used = 1 + var/client/C = pick(candidates) + spawn_antag(C, get_turf(H.loc), href_list["school"]) + if(H.mind) ticker.mode.update_wiz_icons_added(H.mind) else H << "Unable to reach your apprentice! You can either attack the spellbook with the contract to refund your points, or wait and try again later." @@ -74,44 +71,40 @@ var/mob/living/carbon/human/M = new/mob/living/carbon/human(T) C.prefs.copy_to(M) M.key = C.key - var/wizard_name = "the wizard" - if(usr) - wizard_name = usr.real_name - M << "You are [wizard_name]'s apprentice! You are bound by magic contract to follow their orders and help them in accomplishing their goals." + M << "You are the [usr.real_name]'s apprentice! You are bound by magic contract to follow their orders and help them in accomplishing their goals." switch(type) if("destruction") M.mind.AddSpell(new /obj/effect/proc_holder/spell/targeted/projectile/magic_missile(null)) - M.mind.AddSpell(new /obj/effect/proc_holder/spell/fireball(null)) - M << "Your service has not gone unrewarded, however. Studying under [wizard_name], you have learned powerful, destructive spells. You are able to cast magic missile and fireball." + M.mind.AddSpell(new /obj/effect/proc_holder/spell/dumbfire/fireball(null)) + M << "Your service has not gone unrewarded, however. Studying under [usr.real_name], you have learned powerful, destructive spells. You are able to cast magic missile and fireball." if("bluespace") M.mind.AddSpell(new /obj/effect/proc_holder/spell/targeted/area_teleport/teleport(null)) M.mind.AddSpell(new /obj/effect/proc_holder/spell/targeted/ethereal_jaunt(null)) - M << "Your service has not gone unrewarded, however. Studying under [wizard_name], you have learned reality bending mobility spells. You are able to cast teleport and ethereal jaunt." + M << "Your service has not gone unrewarded, however. Studying under [usr.real_name], you have learned reality bending mobility spells. You are able to cast teleport and ethereal jaunt." if("healing") M.mind.AddSpell(new /obj/effect/proc_holder/spell/targeted/charge(null)) - M.mind.AddSpell(new /obj/effect/proc_holder/spell/targeted/forcewall(null)) - M.put_in_hands_or_del(new /obj/item/weapon/gun/magic/staff/healing(M)) - M << "Your service has not gone unrewarded, however. Studying under [wizard_name], you have learned livesaving survival spells. You are able to cast charge and forcewall." + M.mind.AddSpell(new /obj/effect/proc_holder/spell/aoe_turf/conjure/forcewall(null)) + M.equip_to_slot_or_del(new /obj/item/weapon/gun/magic/staff/healing(M), slot_r_hand) + M << "Your service has not gone unrewarded, however. Studying under [usr.real_name], you have learned livesaving survival spells. You are able to cast charge and forcewall." if("robeless") M.mind.AddSpell(new /obj/effect/proc_holder/spell/aoe_turf/knock(null)) M.mind.AddSpell(new /obj/effect/proc_holder/spell/targeted/mind_transfer(null)) - M << "Your service has not gone unrewarded, however. Studying under [wizard_name], you have learned stealthy, robeless spells. You are able to cast knock and mindswap." + M << "Your service has not gone unrewarded, however. Studying under [usr.real_name], you have learned stealthy, robeless spells. You are able to cast knock and mindswap." equip_antag(M) var/wizard_name_first = pick(wizard_first) var/wizard_name_second = pick(wizard_second) var/randomname = "[wizard_name_first] [wizard_name_second]" - if(usr) - var/datum/objective/protect/new_objective = new /datum/objective/protect - new_objective.owner = M.mind - new_objective.target = usr.mind - new_objective.explanation_text = "Protect [usr.real_name], the wizard." - M.mind.objectives += new_objective + var/datum/objective/protect/new_objective = new /datum/objective/protect + new_objective.owner = M:mind + new_objective:target = usr:mind + new_objective.explanation_text = "Protect [usr.real_name], the wizard." + M.mind.objectives += new_objective ticker.mode.apprentices += M.mind M.mind.special_role = "apprentice" ticker.mode.update_wiz_icons_added(M.mind) M << sound('sound/effects/magic.ogg') - var/newname = copytext(sanitize(input(M, "You are [wizard_name]'s apprentice. Would you like to change your name to something else?", "Name change", randomname) as null|text),1,MAX_NAME_LEN) + var/newname = copytext(sanitize(input(M, "You are the wizard's apprentice. Would you like to change your name to something else?", "Name change", randomname) as null|text),1,MAX_NAME_LEN) if (!newname) newname = randomname M.mind.name = newname @@ -122,7 +115,7 @@ /obj/item/weapon/antag_spawner/contract/equip_antag(mob/target) target.equip_to_slot_or_del(new /obj/item/device/radio/headset(target), slot_ears) target.equip_to_slot_or_del(new /obj/item/clothing/under/color/lightpurple(target), slot_w_uniform) - target.equip_to_slot_or_del(new /obj/item/clothing/shoes/sandal/magic(target), slot_shoes) + target.equip_to_slot_or_del(new /obj/item/clothing/shoes/sandal(target), slot_shoes) target.equip_to_slot_or_del(new /obj/item/clothing/suit/wizrobe(target), slot_wear_suit) target.equip_to_slot_or_del(new /obj/item/clothing/head/wizard(target), slot_head) target.equip_to_slot_or_del(new /obj/item/weapon/storage/backpack(target), slot_back) @@ -156,13 +149,11 @@ if(!(check_usability(user))) return - var/list/nuke_candidates = pollCandidatesForMob("Do you want to play as a syndicate [borg_to_spawn ? "[lowertext(borg_to_spawn)] cyborg":"operative"]?", ROLE_OPERATIVE, null, ROLE_OPERATIVE, 150, src) - if(nuke_candidates.len) - if(!(check_usability(user))) - return + var/list/nuke_candidates = get_candidates(ROLE_OPERATIVE, 3000, "operative") + if(nuke_candidates.len > 0) used = 1 - var/mob/dead/observer/theghost = pick(nuke_candidates) - spawn_antag(theghost.client, get_turf(src), "syndieborg") + var/client/C = pick(nuke_candidates) + spawn_antag(C, get_turf(src.loc), "syndieborg") var/datum/effect_system/spark_spread/S = new /datum/effect_system/spark_spread S.set_up(4, 1, src) S.start() @@ -171,10 +162,14 @@ user << "Unable to connect to Syndicate command. Please wait and try again later or use the teleporter on your uplink to get your points refunded." /obj/item/weapon/antag_spawner/nuke_ops/spawn_antag(client/C, turf/T) + var/new_op_code = "Ask your leader!" var/mob/living/carbon/human/M = new/mob/living/carbon/human(T) C.prefs.copy_to(M) M.key = C.key - M.mind.make_Nuke(null, null, 0, FALSE) + var/obj/machinery/nuclearbomb/nuke = locate("syndienuke") in nuke_list + if(nuke) + new_op_code = nuke.r_code + M.mind.make_Nuke(T, new_op_code, 0, FALSE) var/newname = M.dna.species.random_name(M.gender,0,ticker.mode.nukeops_lastname) M.mind.name = newname M.real_name = newname @@ -218,7 +213,12 @@ R.mmi.brainmob.name = brainopsname R.key = C.key - R.mind.make_Nuke(null, nuke_code = null,leader=0, telecrystals = TRUE) + ticker.mode.syndicates += R.mind + ticker.mode.update_synd_icons_added(R.mind) + R.mind.special_role = "syndicate" + R.faction = list("syndicate") + + ///////////SLAUGHTER DEMON @@ -228,25 +228,23 @@ icon = 'icons/obj/wizard.dmi' icon_state = "vial" - var/shatter_msg = "You shatter the bottle, no turning back now!" - var/veil_msg = "You sense a dark presence lurking just beyond the veil..." + var/shatter_msg = "You shatter the bottle, no \ + turning back now!" + var/veil_msg = "You sense a dark presence lurking \ + just beyond the veil..." var/objective_verb = "Kill" var/mob/living/demon_type = /mob/living/simple_animal/slaughter /obj/item/weapon/antag_spawner/slaughter_demon/attack_self(mob/user) + var/list/demon_candidates = get_candidates(ROLE_ALIEN) if(user.z != 1) user << "You should probably wait until you reach the station." return - if(used) - return - var/list/demon_candidates = pollCandidatesForMob("Do you want to play as a [initial(demon_type.name)]?", null, null, ROLE_ALIEN, 50, src) - if(demon_candidates.len) - if(used) - return + if(demon_candidates.len > 0) used = 1 - var/mob/dead/observer/theghost = pick(demon_candidates) - spawn_antag(theghost.client, get_turf(src), initial(demon_type.name)) + var/client/C = pick(demon_candidates) + spawn_antag(C, get_turf(src.loc), initial(demon_type.name)) user << shatter_msg user << veil_msg playsound(user.loc, 'sound/effects/Glassbr1.ogg', 100, 1) @@ -264,31 +262,33 @@ S.mind.assigned_role = S.name S.mind.special_role = S.name ticker.mode.traitors += S.mind - var/datum/objective/assassinate/new_objective - if(usr) - new_objective = new /datum/objective/assassinate - new_objective.owner = S.mind - new_objective.target = usr.mind - new_objective.explanation_text = "[objective_verb] [usr.real_name], the one who summoned you." - S.mind.objectives += new_objective + var/datum/objective/assassinate/new_objective = new /datum/objective/assassinate + new_objective.owner = S.mind + new_objective.target = usr.mind + new_objective.explanation_text = "[objective_verb] [usr.real_name], \ + the one who summoned you." + S.mind.objectives += new_objective var/datum/objective/new_objective2 = new /datum/objective new_objective2.owner = S.mind - new_objective2.explanation_text = "[objective_verb] everyone[usr ? " else while you're at it":""]." + new_objective2.explanation_text = "[objective_verb] everyone else \ + while you're at it." S.mind.objectives += new_objective2 S << S.playstyle_string - S << "You are currently not currently in the same plane of existence as the station. \ - Ctrl+Click a blood pool to manifest." - if(new_objective) - S << "Objective #[1]: [new_objective.explanation_text]" - S << "Objective #[new_objective ? "[2]":"[1]"]: [new_objective2.explanation_text]" + S << "You are currently not currently in the same plane of \ + existence as the station. Ctrl+Click a blood pool to manifest." + S << "Objective #[1]: [new_objective.explanation_text]" + S << "Objective #[2]: [new_objective2.explanation_text]" /obj/item/weapon/antag_spawner/slaughter_demon/laughter name = "vial of tickles" - desc = "A magically infused bottle of clown love, distilled from countless hugging attacks. Used in funny rituals to attract adorable creatures." + desc = "A magically infused bottle of clown love, distilled from \ + countless hugging attacks. Used in funny rituals to attract \ + adorable creatures." icon = 'icons/obj/wizard.dmi' icon_state = "vial" color = "#FF69B4" // HOT PINK - veil_msg = "You sense an adorable presence lurking just beyond the veil..." + veil_msg = "You sense an adorable presence \ + lurking just beyond the veil..." objective_verb = "Hug and Tickle" demon_type = /mob/living/simple_animal/slaughter/laughter diff --git a/code/game/gamemodes/blob/blob.dm b/code/game/gamemodes/blob/blob.dm index 7e45ff04d8..23d19cb3b6 100644 --- a/code/game/gamemodes/blob/blob.dm +++ b/code/game/gamemodes/blob/blob.dm @@ -1,4 +1,4 @@ - +//This file was auto-corrected by findeclaration.exe on 25.5.2012 20:42:31 //Few global vars to track the blob var/list/blobs = list() //complete list of all blobs made. @@ -20,19 +20,13 @@ var/list/blobs_legit = list() //used for win-score calculations, contains only b round_ends_with_antag_death = 1 - announce_span = "green" - announce_text = "Dangerous gelatinous organisms are spreading throughout the station!\n\ - Blobs: Consume the station and spread as far as you can.\n\ - Crew: Fight back the blobs and minimize station damage." - - var/message_sent = FALSE + var/burst = 0 var/cores_to_spawn = 1 var/players_per_core = 25 var/blob_point_rate = 3 - var/blob_base_starting_points = 80 - var/blobwincount = 250 + var/blobwincount = 350 var/messagedelay_low = 2400 //in deciseconds var/messagedelay_high = 3600 //blob report will be sent after a random value between these (minimum 4 minutes, maximum 6 minutes) @@ -42,8 +36,7 @@ var/list/blobs_legit = list() //used for win-score calculations, contains only b /datum/game_mode/blob/pre_setup() cores_to_spawn = max(round(num_players()/players_per_core, 1), 1) - var/win_multiplier = 1 + (0.1 * cores_to_spawn) - blobwincount = initial(blobwincount) * cores_to_spawn * win_multiplier + blobwincount = initial(blobwincount) * cores_to_spawn for(var/j = 0, j < cores_to_spawn, j++) if (!antag_candidates.len) @@ -68,6 +61,11 @@ var/list/blobs_legit = list() //used for win-score calculations, contains only b candidates += player return candidates +/datum/game_mode/blob/announce() + world << "The current game mode is - Blob!" + world << "A dangerous alien organism is rapidly spreading throughout the station!" + world << "You must kill it all while minimizing the damage to the station." + /datum/game_mode/blob/proc/show_message(message) for(var/datum/mind/blob in blob_overminds) blob.current << message @@ -75,13 +73,12 @@ var/list/blobs_legit = list() //used for win-score calculations, contains only b /datum/game_mode/blob/post_setup() for(var/datum/mind/blob in blob_overminds) - var/mob/camera/blob/B = blob.current.become_overmind(TRUE, round(blob_base_starting_points/blob_overminds.len)) - B.mind.name = B.name + var/mob/camera/blob/B = blob.current.become_overmind(1) var/turf/T = pick(blobstart) B.loc = T B.base_point_rate = blob_point_rate - SSshuttle.registerHostileEnvironment(src) + SSshuttle.emergencyNoEscape = 1 // Disable the blob event for this round. var/datum/round_event_control/blob/B = locate() in SSevent.control @@ -94,10 +91,9 @@ var/list/blobs_legit = list() //used for win-score calculations, contains only b sleep(message_delay) send_intercept(1) - message_sent = TRUE sleep(24000) //40 minutes, plus burst_delay*3(minimum of 6 minutes, maximum of 8) - if(!replacementmode) - send_intercept(2) //if the blob has been alive this long, it's time to bomb it + + send_intercept(2) //if the blob has been alive this long, it's time to bomb it return ..() diff --git a/code/game/gamemodes/blob/blob_finish.dm b/code/game/gamemodes/blob/blob_finish.dm index 5efacb312f..1139becf04 100644 --- a/code/game/gamemodes/blob/blob_finish.dm +++ b/code/game/gamemodes/blob/blob_finish.dm @@ -1,16 +1,16 @@ /datum/game_mode/blob/check_finished() if(blobwincount <= blobs_legit.len)//Blob took over return 1 - for(var/datum/mind/blob in blob_overminds) - if(isovermind(blob.current)) - var/mob/camera/blob/B = blob.current - if(B.blob_core || !B.placed) - return 0 + if(overminds.len) + return 0 if(!blob_cores.len) //blob is dead if(config.continuous["blob"]) - message_sent = FALSE //disable the win count at this point continuous_sanity_checked = 1 //Nonstandard definition of "alive" gets past the check otherwise - SSshuttle.clearHostileEnvironment(src) + SSshuttle.emergencyNoEscape = 0 + if(SSshuttle.emergency.mode == SHUTTLE_STRANDED) + SSshuttle.emergency.mode = SHUTTLE_DOCKED + SSshuttle.emergency.timer = world.time + priority_announce("Hostile enviroment resolved. You have 3 minutes to board the Emergency Shuttle.", null, 'sound/AI/shuttledock.ogg', "Priority") return ..() return 1 return ..() @@ -22,45 +22,23 @@ if(blobwincount <= blobs_legit.len) feedback_set_details("round_end_result","win - blob took over") world << "The blob has taken over the station!" - world << "The entire station was eaten by the Blob!" + world << "The entire station was eaten by the Blob" log_game("Blob mode completed with a blob victory.") - ticker.news_report = BLOB_WIN - else if(station_was_nuked) feedback_set_details("round_end_result","halfwin - nuke") world << "Partial Win: The station has been destroyed!" - world << "Directive 7-12 has been successfully carried out, preventing the Blob from spreading." + world << "Directive 7-12 has been successfully carried out preventing the Blob from spreading." log_game("Blob mode completed with a tie (station destroyed).") - ticker.news_report = BLOB_NUKE - else if(!blob_cores.len) feedback_set_details("round_end_result","loss - blob eliminated") world << "The staff has won!" - world << "The alien organism has been eradicated from the station!" + world << "The alien organism has been eradicated from the station" log_game("Blob mode completed with a crew victory.") - - ticker.news_report = BLOB_DESTROYED - ..() return 1 -/datum/game_mode/blob/printplayer(datum/mind/ply, fleecheck) - if((ply in blob_overminds)) - var/text = "
    [ply.key] was [ply.name]" - if(isovermind(ply.current)) - var/mob/camera/blob/B = ply.current - text += "([B.blob_reagent_datum.name]) and" - if(B.blob_core) - text += " survived" - else - text += " was destroyed" - else - text += " and was destroyed" - return text - return ..() - /datum/game_mode/proc/auto_declare_completion_blob() if(istype(ticker.mode,/datum/game_mode/blob) ) var/datum/game_mode/blob/blob_mode = src diff --git a/code/game/gamemodes/blob/blob_report.dm b/code/game/gamemodes/blob/blob_report.dm index 627837effc..d0aa8b724f 100644 --- a/code/game/gamemodes/blob/blob_report.dm +++ b/code/game/gamemodes/blob/blob_report.dm @@ -1,4 +1,4 @@ - +//This file was auto-corrected by findeclaration.exe on 25.5.2012 20:42:31 /datum/game_mode/blob/send_intercept(report = 0) var/intercepttext = "" @@ -16,7 +16,7 @@ print_command_report(intercepttext,"Level 5-6 Biohazard Response Procedures") priority_announce("Confirmed outbreak of level 5 biohazard aboard [station_name()]. All personnel must contain the outbreak.", "Biohazard Alert", 'sound/AI/outbreak5.ogg') if(2) - var/nukecode = random_nukecode() + var/nukecode = rand(10000, 99999) for(var/obj/machinery/nuclearbomb/bomb in machines) if(bomb && bomb.r_code) if(bomb.z == ZLEVEL_STATION) @@ -57,23 +57,20 @@ /datum/station_state/proc/count(count_territories) for(var/turf/T in block(locate(1,1,1), locate(world.maxx,world.maxy,1))) - if(isfloorturf(T)) - var/turf/open/floor/TF = T - if(!(TF.burnt)) + if(istype(T,/turf/open/floor)) + if(!(T:burnt)) src.floor += 12 else src.floor += 1 - if(iswallturf(T)) - var/turf/closed/wall/TW = T - if(TW.intact) + if(istype(T, /turf/closed/wall)) + if(T:intact) src.wall += 2 else src.wall += 1 if(istype(T, /turf/closed/wall/r_wall)) - var/turf/closed/wall/r_wall/TRW = T - if(TRW.intact) + if(T:intact) src.r_wall += 2 else src.r_wall += 1 @@ -82,10 +79,8 @@ for(var/obj/O in T.contents) if(istype(O, /obj/structure/window)) src.window += 1 - else if(istype(O, /obj/structure/grille)) - var/obj/structure/grille/GR = O - if(!GR.broken) - src.grille += 1 + else if(istype(O, /obj/structure/grille) && (!O:destroyed)) + src.grille += 1 else if(istype(O, /obj/machinery/door)) src.door += 1 else if(istype(O, /obj/machinery)) diff --git a/code/game/gamemodes/blob/blobs/blob_mobs.dm b/code/game/gamemodes/blob/blobs/blob_mobs.dm index baa7a61858..4c93d11e57 100644 --- a/code/game/gamemodes/blob/blobs/blob_mobs.dm +++ b/code/game/gamemodes/blob/blobs/blob_mobs.dm @@ -14,22 +14,22 @@ minbodytemp = 0 maxbodytemp = 360 unique_name = 1 - a_intent = INTENT_HARM + a_intent = "harm" var/mob/camera/blob/overmind = null - var/obj/structure/blob/factory/factory = null + var/obj/effect/blob/factory/factory = null /mob/living/simple_animal/hostile/blob/update_icons() if(overmind) - add_atom_colour(overmind.blob_reagent_datum.color, FIXED_COLOUR_PRIORITY) + color = overmind.blob_reagent_datum.color else - remove_atom_colour(FIXED_COLOUR_PRIORITY) + color = initial(color) /mob/living/simple_animal/hostile/blob/Destroy() if(overmind) overmind.blob_mobs -= src return ..() -/mob/living/simple_animal/hostile/blob/blob_act(obj/structure/blob/B) +/mob/living/simple_animal/hostile/blob/blob_act(obj/effect/blob/B) if(stat != DEAD && health < maxHealth) for(var/i in 1 to 2) var/obj/effect/overlay/temp/heal/H = PoolOrNew(/obj/effect/overlay/temp/heal, get_turf(src)) //hello yes you are being healed @@ -39,27 +39,24 @@ H.color = "#000000" adjustHealth(-maxHealth*0.0125) -/mob/living/simple_animal/hostile/blob/fire_act(exposed_temperature, exposed_volume) +/mob/living/simple_animal/hostile/blob/fire_act(datum/gas_mixture/air, exposed_temperature, exposed_volume) ..() - if(exposed_temperature) - adjustFireLoss(Clamp(0.01 * exposed_temperature, 1, 5)) - else - adjustFireLoss(5) + adjustFireLoss(Clamp(0.01 * exposed_temperature, 1, 5)) /mob/living/simple_animal/hostile/blob/CanPass(atom/movable/mover, turf/target, height = 0) - if(istype(mover, /obj/structure/blob)) + if(istype(mover, /obj/effect/blob)) return 1 return ..() /mob/living/simple_animal/hostile/blob/Process_Spacemove(movement_dir = 0) - for(var/obj/structure/blob/B in range(1, src)) + for(var/obj/effect/blob/B in range(1, src)) return 1 return ..() /mob/living/simple_animal/hostile/blob/handle_inherent_channels(message, message_mode) if(message_mode == MODE_BINARY) blob_chat(message) - return 1 + return ITALICS | REDUCE_RANGE else ..() @@ -82,19 +79,17 @@ desc = "A floating, fragile spore." icon_state = "blobpod" icon_living = "blobpod" - health = 30 - maxHealth = 30 + health = 40 + maxHealth = 40 verb_say = "psychically pulses" verb_ask = "psychically probes" verb_exclaim = "psychically yells" verb_yell = "psychically screams" melee_damage_lower = 2 melee_damage_upper = 4 - obj_damage = 20 - environment_smash = 1 attacktext = "hits" attack_sound = 'sound/weapons/genhit1.ogg' - movement_type = FLYING + flying = 1 del_on_death = 1 deathmessage = "explodes into a cloud of gas!" var/death_cloud_size = 1 //size of cloud produced from a dying spore @@ -102,7 +97,7 @@ var/is_zombie = 0 gold_core_spawnable = 1 -/mob/living/simple_animal/hostile/blob/blobspore/New(loc, var/obj/structure/blob/factory/linked_node) +/mob/living/simple_animal/hostile/blob/blobspore/New(loc, var/obj/effect/blob/factory/linked_node) if(istype(linked_node)) factory = linked_node factory.spores += src @@ -130,7 +125,7 @@ desc = "A shambling corpse animated by the blob." melee_damage_lower += 8 melee_damage_upper += 11 - movement_type = GROUND + flying = 0 death_cloud_size = 0 icon = H.icon icon_state = "zombie_s" @@ -173,23 +168,20 @@ return ..() /mob/living/simple_animal/hostile/blob/blobspore/update_icons() - if(overmind) - add_atom_colour(overmind.blob_reagent_datum.complementary_color, FIXED_COLOUR_PRIORITY) - else - remove_atom_colour(FIXED_COLOUR_PRIORITY) + ..() if(is_zombie) cut_overlays() overlays = human_overlays var/image/I = image('icons/mob/blob.dmi', icon_state = "blob_head") if(overmind) - I.color = overmind.blob_reagent_datum.complementary_color + I.color = overmind.blob_reagent_datum.color color = initial(color)//looks better. add_overlay(I) /mob/living/simple_animal/hostile/blob/blobspore/weak name = "fragile blob spore" - health = 15 - maxHealth = 15 + health = 20 + maxHealth = 20 melee_damage_lower = 1 melee_damage_upper = 2 death_cloud_size = 0 @@ -207,9 +199,9 @@ health = 200 maxHealth = 200 damage_coeff = list(BRUTE = 0.5, BURN = 1, TOX = 1, CLONE = 1, STAMINA = 0, OXY = 1) + next_move_modifier = 1.5 //slow-ass attack speed, 3 times higher than how fast the blob can attack melee_damage_lower = 20 melee_damage_upper = 20 - obj_damage = 60 attacktext = "slams" attack_sound = 'sound/effects/blobattack.ogg' verb_say = "gurgles" @@ -217,7 +209,7 @@ verb_exclaim = "roars" verb_yell = "bellows" force_threshold = 10 - pressure_resistance = 50 + pressure_resistance = 40 mob_size = MOB_SIZE_LARGE see_invisible = SEE_INVISIBLE_MINIMUM see_in_dark = 8 @@ -233,13 +225,13 @@ if(independent) return // strong independent blobbernaut that don't need no blob var/damagesources = 0 - if(!(locate(/obj/structure/blob) in range(2, src))) + if(!(locate(/obj/effect/blob) in range(2, src))) damagesources++ if(!factory) damagesources++ if(damagesources) for(var/i in 1 to damagesources) - adjustHealth(maxHealth*0.025) //take 2.5% of max health as damage when not near the blob or if the naut has no factory, 5% if both + adjustHealth(maxHealth*0.025) //take 2.5% maxhealth as damage when not near the blob or if the naut has no factory, 5% if both var/list/viewing = list() for(var/mob/M in viewers(src)) if(M.client) @@ -282,7 +274,7 @@ ..(gibbed) if(factory) factory.naut = null //remove this naut from its factory - factory.max_integrity = initial(factory.max_integrity) + factory.maxhealth = initial(factory.maxhealth) flick("blobbernaut_death", src) /mob/living/simple_animal/hostile/blob/blobbernaut/independent diff --git a/code/game/gamemodes/blob/blobs/core.dm b/code/game/gamemodes/blob/blobs/core.dm index 2bc1f1bb12..e97f09e3a1 100644 --- a/code/game/gamemodes/blob/blobs/core.dm +++ b/code/game/gamemodes/blob/blobs/core.dm @@ -1,13 +1,13 @@ -/obj/structure/blob/core +/obj/effect/blob/core name = "blob core" icon = 'icons/mob/blob.dmi' icon_state = "blank_blob" desc = "A huge, pulsating yellow mass." - obj_integrity = 400 - max_integrity = 400 - armor = list(melee = 0, bullet = 0, laser = 0, energy = 0, bomb = 0, bio = 0, rad = 0, fire = 75, acid = 90) + health = 400 + maxhealth = 400 explosion_block = 6 point_return = -1 + atmosblock = 1 health_regen = 0 //we regen in Life() instead of when pulsed var/core_regen = 2 var/overmind_get_delay = 0 //we don't want to constantly try to find an overmind, this var tracks when we'll try to get an overmind again @@ -15,7 +15,7 @@ var/point_rate = 2 -/obj/structure/blob/core/New(loc, client/new_overmind = null, new_rate = 2, placed = 0) +/obj/effect/blob/core/New(loc, client/new_overmind = null, new_rate = 2, placed = 0) blob_cores += src START_PROCESSING(SSobj, src) poi_list |= src @@ -27,10 +27,10 @@ point_rate = new_rate ..() -/obj/structure/blob/core/scannerreport() +/obj/effect/blob/core/scannerreport() return "Directs the blob's expansion, gradually expands, and sustains nearby blob spores and blobbernauts." -/obj/structure/blob/core/update_icon() +/obj/effect/blob/core/update_icon() cut_overlays() color = null var/image/I = new('icons/mob/blob.dmi', "blob") @@ -40,7 +40,7 @@ var/image/C = new('icons/mob/blob.dmi', "blob_core_overlay") add_overlay(C) -/obj/structure/blob/core/Destroy() +/obj/effect/blob/core/Destroy() blob_cores -= src if(overmind) overmind.blob_core = null @@ -49,36 +49,36 @@ poi_list -= src return ..() -/obj/structure/blob/core/ex_act(severity, target) +/obj/effect/blob/core/fire_act(datum/gas_mixture/air, exposed_temperature, exposed_volume) + return + +/obj/effect/blob/core/ex_act(severity, target) var/damage = 50 - 10 * severity //remember, the core takes half brute damage, so this is 20/15/10 damage based on severity - take_damage(damage, BRUTE, "bomb", 0) + take_damage(damage, BRUTE) -/obj/structure/blob/core/take_damage(damage_amount, damage_type = BRUTE, damage_flag = 0, sound_effect = 1, attack_dir, overmind_reagent_trigger = 1) - . = ..() - if(obj_integrity > 0) - if(overmind) //we should have an overmind, but... - overmind.update_health_hud() +/obj/effect/blob/core/check_health() + ..() + if(overmind) //we should have an overmind, but... + overmind.update_health_hud() -/obj/structure/blob/core/Life() - if(qdeleted(src)) - return +/obj/effect/blob/core/Life() if(!overmind) create_overmind() else if(resource_delay <= world.time) resource_delay = world.time + 10 // 1 second overmind.add_points(point_rate) - obj_integrity = min(max_integrity, obj_integrity+core_regen) + health = min(maxhealth, health+core_regen) if(overmind) overmind.update_health_hud() Pulse_Area(overmind, 12, 4, 3) - for(var/obj/structure/blob/normal/B in range(1, src)) + for(var/obj/effect/blob/normal/B in range(1, src)) if(prob(5)) - B.change_to(/obj/structure/blob/shield/core, overmind) + B.change_to(/obj/effect/blob/shield/core, overmind) ..() -/obj/structure/blob/core/proc/create_overmind(client/new_overmind, override_delay) +/obj/effect/blob/core/proc/create_overmind(client/new_overmind, override_delay) if(overmind_get_delay > world.time && !override_delay) return @@ -91,7 +91,7 @@ var/list/candidates = list() if(!new_overmind) - candidates = pollCandidatesForMob("Do you want to play as a blob overmind?", ROLE_BLOB, null, ROLE_BLOB, 50, src) //we're technically not a mob but behave similarly + candidates = get_candidates(ROLE_BLOB) if(candidates.len) C = pick(candidates) else diff --git a/code/game/gamemodes/blob/blobs/factory.dm b/code/game/gamemodes/blob/blobs/factory.dm index cc0749d0c6..ccaf8e12a1 100644 --- a/code/game/gamemodes/blob/blobs/factory.dm +++ b/code/game/gamemodes/blob/blobs/factory.dm @@ -1,10 +1,10 @@ -/obj/structure/blob/factory +/obj/effect/blob/factory name = "factory blob" icon = 'icons/mob/blob.dmi' icon_state = "blob_factory" desc = "A thick spire of tendrils." - obj_integrity = 200 - max_integrity = 200 + health = 200 + maxhealth = 200 health_regen = 1 point_return = 25 var/list/spores = list() @@ -14,12 +14,12 @@ var/spore_cooldown = 80 //8 seconds between spores and after spore death -/obj/structure/blob/factory/scannerreport() +/obj/effect/blob/factory/scannerreport() if(naut) return "It is currently sustaining a blobbernaut, making it fragile and unable to produce blob spores." return "Will produce a blob spore every few seconds." -/obj/structure/blob/factory/Destroy() +/obj/effect/blob/factory/Destroy() for(var/mob/living/simple_animal/hostile/blob/blobspore/spore in spores) if(spore.factory == src) spore.factory = null @@ -30,7 +30,7 @@ spores = null return ..() -/obj/structure/blob/factory/Be_Pulsed() +/obj/effect/blob/factory/Be_Pulsed() . = ..() if(naut) return diff --git a/code/game/gamemodes/blob/blobs/node.dm b/code/game/gamemodes/blob/blobs/node.dm index 426e76b9e5..b6e8b24f59 100644 --- a/code/game/gamemodes/blob/blobs/node.dm +++ b/code/game/gamemodes/blob/blobs/node.dm @@ -1,38 +1,41 @@ -/obj/structure/blob/node +/obj/effect/blob/node name = "blob node" icon = 'icons/mob/blob.dmi' icon_state = "blank_blob" desc = "A large, pulsating yellow mass." - obj_integrity = 200 - max_integrity = 200 - armor = list(melee = 0, bullet = 0, laser = 0, energy = 0, bomb = 0, bio = 0, rad = 0, fire = 65, acid = 90) + health = 200 + maxhealth = 200 health_regen = 3 point_return = 25 + atmosblock = 1 -/obj/structure/blob/node/New(loc) +/obj/effect/blob/node/New(loc, var/h = 100) blob_nodes += src START_PROCESSING(SSobj, src) - ..() + ..(loc, h) -/obj/structure/blob/node/scannerreport() +/obj/effect/blob/node/scannerreport() return "Gradually expands and sustains nearby blob spores and blobbernauts." -/obj/structure/blob/node/update_icon() +/obj/effect/blob/node/update_icon() cut_overlays() color = null var/image/I = new('icons/mob/blob.dmi', "blob") if(overmind) I.color = overmind.blob_reagent_datum.color - add_overlay(I) + src.add_overlay(I) var/image/C = new('icons/mob/blob.dmi', "blob_node_overlay") - add_overlay(C) + src.add_overlay(C) -/obj/structure/blob/node/Destroy() +/obj/effect/blob/node/fire_act(datum/gas_mixture/air, exposed_temperature, exposed_volume) + return + +/obj/effect/blob/node/Destroy() blob_nodes -= src STOP_PROCESSING(SSobj, src) return ..() -/obj/structure/blob/node/Life() +/obj/effect/blob/node/Life() Pulse_Area(overmind, 10, 3, 2) - + color = null diff --git a/code/game/gamemodes/blob/blobs/resource.dm b/code/game/gamemodes/blob/blobs/resource.dm index bcb6d8a8fd..75a7ecfa36 100644 --- a/code/game/gamemodes/blob/blobs/resource.dm +++ b/code/game/gamemodes/blob/blobs/resource.dm @@ -1,26 +1,26 @@ -/obj/structure/blob/resource +/obj/effect/blob/resource name = "resource blob" icon = 'icons/mob/blob.dmi' icon_state = "blob_resource" desc = "A thin spire of slightly swaying tendrils." - obj_integrity = 60 - max_integrity = 60 + health = 60 + maxhealth = 60 point_return = 15 var/resource_delay = 0 -/obj/structure/blob/resource/scannerreport() +/obj/effect/blob/resource/scannerreport() return "Gradually supplies the blob with resources, increasing the rate of expansion." -/obj/structure/blob/resource/creation_action() +/obj/effect/blob/resource/creation_action() if(overmind) overmind.resource_blobs += src -/obj/structure/blob/resource/Destroy() +/obj/effect/blob/resource/Destroy() if(overmind) overmind.resource_blobs -= src return ..() -/obj/structure/blob/resource/Be_Pulsed() +/obj/effect/blob/resource/Be_Pulsed() . = ..() if(resource_delay > world.time) return diff --git a/code/game/gamemodes/blob/blobs/shield.dm b/code/game/gamemodes/blob/blobs/shield.dm index a4ec48ab53..bf8c9ceed1 100644 --- a/code/game/gamemodes/blob/blobs/shield.dm +++ b/code/game/gamemodes/blob/blobs/shield.dm @@ -1,36 +1,21 @@ -/obj/structure/blob/shield +/obj/effect/blob/shield name = "strong blob" icon = 'icons/mob/blob.dmi' - icon_state = "blob_shield" + icon_state = "blob_idle" desc = "A solid wall of slightly twitching tendrils." - obj_integrity = 150 - max_integrity = 150 - brute_resist = 0.25 + health = 150 + maxhealth = 150 + brute_resist = 0.1 explosion_block = 3 point_return = 4 atmosblock = 1 - armor = list(melee = 0, bullet = 0, laser = 0, energy = 0, bomb = 0, bio = 0, rad = 0, fire = 90, acid = 90) +/obj/effect/blob/shield/scannerreport() + return "Will prevent the spread of atmospheric changes." -/obj/structure/blob/shield/scannerreport() - if(atmosblock) - return "Will prevent the spread of atmospheric changes." - return "N/A" +/obj/effect/blob/shield/fire_act(datum/gas_mixture/air, exposed_temperature, exposed_volume) + return -/obj/structure/blob/shield/core +/obj/effect/blob/shield/core point_return = 0 - -/obj/structure/blob/shield/update_icon() - ..() - if(obj_integrity <= 75) - icon_state = "blob_shield_damaged" - name = "weakened strong blob" - desc = "A wall of twitching tendrils." - atmosblock = 0 - else - icon_state = initial(icon_state) - name = initial(name) - desc = initial(desc) - atmosblock = 1 - air_update_turf(1) diff --git a/code/game/gamemodes/blob/overmind.dm b/code/game/gamemodes/blob/overmind.dm index 5fb0187ccd..3b712515d8 100644 --- a/code/game/gamemodes/blob/overmind.dm +++ b/code/game/gamemodes/blob/overmind.dm @@ -1,20 +1,17 @@ /mob/camera/blob name = "Blob Overmind" real_name = "Blob Overmind" - desc = "The overmind. It controls the blob." icon = 'icons/mob/blob.dmi' icon_state = "marker" - mouse_opacity = 1 - move_on_shuttle = 1 + see_in_dark = 8 see_invisible = SEE_INVISIBLE_MINIMUM invisibility = INVISIBILITY_OBSERVER - layer = FLY_LAYER pass_flags = PASSBLOB faction = list("blob") - var/obj/structure/blob/core/blob_core = null // The blob overmind's core + var/obj/effect/blob/core/blob_core = null // The blob overmind's core var/blob_points = 0 var/max_blob_points = 100 var/last_attack = 0 @@ -29,8 +26,7 @@ var/manualplace_min_time = 600 //in deciseconds //a minute, to get bearings var/autoplace_max_time = 3600 //six minutes, as long as should be needed -/mob/camera/blob/New(loc, pre_placed = 0, mode_made = 0, starting_points = 60) - blob_points = starting_points +/mob/camera/blob/New(loc, pre_placed = 0, mode_made = 0) if(pre_placed) //we already have a core! manualplace_min_time = 0 autoplace_max_time = 0 @@ -46,9 +42,10 @@ name = new_name real_name = new_name last_attack = world.time - var/datum/reagent/blob/BC = pick((subtypesof(/datum/reagent/blob))) - blob_reagent_datum = new BC - color = blob_reagent_datum.complementary_color + var/list/possible_reagents = list() + for(var/type in (subtypesof(/datum/reagent/blob))) + possible_reagents.Add(new type) + blob_reagent_datum = pick(possible_reagents) if(blob_core) blob_core.update_icon() @@ -72,20 +69,19 @@ /mob/camera/blob/Destroy() for(var/BL in blobs) - var/obj/structure/blob/B = BL - if(B && B.overmind == src) + var/obj/effect/blob/B = BL + if(B.overmind == src) B.overmind = null B.update_icon() //reset anything that was ours for(var/BLO in blob_mobs) var/mob/living/simple_animal/hostile/blob/BM = BLO - if(BM) - BM.overmind = null - BM.update_icons() + BM.overmind = null + BM.update_icons() overminds -= src if(ghostimage) ghost_darkness_images -= ghostimage qdel(ghostimage) - ghostimage = null + ghostimage = null; updateallghostimages() return ..() @@ -95,23 +91,18 @@ src << "You are the overmind!" blob_help() update_health_hud() - add_points(0) - -/mob/camera/blob/examine(mob/user) - ..() - if(blob_reagent_datum) - user << "Its chemical is [blob_reagent_datum.name]." /mob/camera/blob/update_health_hud() if(blob_core) - hud_used.healths.maptext = "
    [round(blob_core.obj_integrity)]
    " + hud_used.healths.maptext = "
    [round(blob_core.health)]
    " for(var/mob/living/simple_animal/hostile/blob/blobbernaut/B in blob_mobs) if(B.hud_used && B.hud_used.blobpwrdisplay) - B.hud_used.blobpwrdisplay.maptext = "
    [round(blob_core.obj_integrity)]
    " + B.hud_used.blobpwrdisplay.maptext = "
    [round(blob_core.health)]
    " /mob/camera/blob/proc/add_points(points) - blob_points = Clamp(blob_points + points, 0, max_blob_points) - hud_used.blobpwrdisplay.maptext = "
    [round(blob_points)]
    " + if(points != 0) + blob_points = Clamp(blob_points + points, 0, max_blob_points) + hud_used.blobpwrdisplay.maptext = "
    [round(src.blob_points)]
    " /mob/camera/blob/say(message) if (!message) @@ -150,20 +141,15 @@ /mob/camera/blob/emote(act,m_type=1,message = null) return -/mob/camera/blob/blob_act(obj/structure/blob/B) +/mob/camera/blob/blob_act(obj/effect/blob/B) return /mob/camera/blob/Stat() ..() if(statpanel("Status")) if(blob_core) - stat(null, "Core Health: [blob_core.obj_integrity]") + stat(null, "Core Health: [blob_core.health]") stat(null, "Power Stored: [blob_points]/[max_blob_points]") - if(ticker && istype(ticker.mode, /datum/game_mode/blob)) - var/datum/game_mode/blob/B = ticker.mode - stat(null, "Blobs to Win: [blobs_legit.len]/[B.blobwincount]") - else - stat(null, "Total Blobs: [blobs.len]") if(free_chem_rerolls) stat(null, "You have [free_chem_rerolls] Free Chemical Reroll\s Remaining") if(!placed) @@ -173,14 +159,17 @@ /mob/camera/blob/Move(NewLoc, Dir = 0) if(placed) - var/obj/structure/blob/B = locate() in range("3x3", NewLoc) + var/obj/effect/blob/B = locate() in range("3x3", NewLoc) if(B) loc = NewLoc else return 0 else var/area/A = get_area(NewLoc) - if(isspaceturf(NewLoc) || istype(A, /area/shuttle)) //if unplaced, can't go on shuttles or space tiles + if(istype(NewLoc, /turf/open/space) || istype(A, /area/shuttle)) //if unplaced, can't go on shuttles or space tiles return 0 loc = NewLoc return 1 + +/mob/camera/blob/proc/can_attack() + return (world.time > (last_attack + CLICK_CD_RANGE)) diff --git a/code/game/gamemodes/blob/powers.dm b/code/game/gamemodes/blob/powers.dm index 1dc8df2ceb..aa8485cf2f 100644 --- a/code/game/gamemodes/blob/powers.dm +++ b/code/game/gamemodes/blob/powers.dm @@ -28,13 +28,13 @@ src << "This spot is too dense to place a blob core on!" return 0 for(var/obj/O in T) - if(istype(O, /obj/structure/blob)) - if(istype(O, /obj/structure/blob/normal)) + if(istype(O, /obj/effect/blob)) + if(istype(O, /obj/effect/blob/normal)) qdel(O) else src << "There is already a blob here!" return 0 - else if(O.density) + if(O.density) src << "This spot is too dense to place a blob core on!" return 0 if(world.time <= manualplace_min_time && world.time <= autoplace_max_time) @@ -46,7 +46,7 @@ if(placed && blob_core) blob_core.forceMove(loc) else - var/obj/structure/blob/core/core = new(get_turf(src), null, point_rate, 1) + var/obj/effect/blob/core/core = new(get_turf(src), null, point_rate, 1) core.overmind = src blob_core = core core.update_icon() @@ -67,36 +67,35 @@ set desc = "Move your camera to a selected node." if(blob_nodes.len) var/list/nodes = list() - for(var/i in 1 to blob_nodes.len) - var/obj/structure/blob/node/B = blob_nodes[i] - nodes["Blob Node #[i] ([B.overmind ? "[B.overmind.blob_reagent_datum.name]":"No Chemical"])"] = B + for(var/i = 1; i <= blob_nodes.len; i++) + nodes["Blob Node #[i]"] = blob_nodes[i] var/node_name = input(src, "Choose a node to jump to.", "Node Jump") in nodes - var/obj/structure/blob/node/chosen_node = nodes[node_name] + var/obj/effect/blob/node/chosen_node = nodes[node_name] if(chosen_node) - loc = chosen_node.loc + src.loc = chosen_node.loc /mob/camera/blob/proc/createSpecial(price, blobType, nearEquals, needsNode, turf/T) if(!T) T = get_turf(src) - var/obj/structure/blob/B = (locate(/obj/structure/blob) in T) + var/obj/effect/blob/B = (locate(/obj/effect/blob) in T) if(!B) src << "There is no blob here!" return - if(!istype(B, /obj/structure/blob/normal)) + if(!istype(B, /obj/effect/blob/normal)) src << "Unable to use this blob, find a normal one." return if(needsNode && nodes_required) - if(!(locate(/obj/structure/blob/node) in orange(3, T)) && !(locate(/obj/structure/blob/core) in orange(4, T))) + if(!(locate(/obj/effect/blob/node) in orange(3, T)) && !(locate(/obj/effect/blob/core) in orange(4, T))) src << "You need to place this blob closer to a node or core!" return //handholdotron 2000 if(nearEquals) - for(var/obj/structure/blob/L in orange(nearEquals, T)) + for(var/obj/effect/blob/L in orange(nearEquals, T)) if(L.type == blobType) src << "There is a similar blob nearby, move more than [nearEquals] tiles away from it!" return if(!can_buy(price)) return - var/obj/structure/blob/N = B.change_to(blobType, src) + var/obj/effect/blob/N = B.change_to(blobType, src) return N /mob/camera/blob/verb/toggle_node_req() @@ -111,51 +110,50 @@ /mob/camera/blob/verb/create_shield_power() set category = "Blob" - set name = "Create Shield Blob (15)" + set name = "Create Shield Blob (10)" set desc = "Create a shield blob, which will block fire and is hard to kill." create_shield() /mob/camera/blob/proc/create_shield(turf/T) - createSpecial(15, /obj/structure/blob/shield, 0, 0, T) + createSpecial(10, /obj/effect/blob/shield, 0, 0, T) /mob/camera/blob/verb/create_resource() set category = "Blob" set name = "Create Resource Blob (40)" set desc = "Create a resource tower which will generate resources for you." - createSpecial(40, /obj/structure/blob/resource, 4, 1) + createSpecial(40, /obj/effect/blob/resource, 4, 1) /mob/camera/blob/verb/create_node() set category = "Blob" - set name = "Create Node Blob (50)" + set name = "Create Node Blob (60)" set desc = "Create a node, which will power nearby factory and resource blobs." - createSpecial(50, /obj/structure/blob/node, 5, 0) + createSpecial(60, /obj/effect/blob/node, 5, 0) /mob/camera/blob/verb/create_factory() set category = "Blob" set name = "Create Factory Blob (60)" set desc = "Create a spore tower that will spawn spores to harass your enemies." - createSpecial(60, /obj/structure/blob/factory, 7, 1) + createSpecial(60, /obj/effect/blob/factory, 7, 1) /mob/camera/blob/verb/create_blobbernaut() set category = "Blob" set name = "Create Blobbernaut (40)" set desc = "Create a powerful blobbernaut which is mildly smart and will attack enemies." var/turf/T = get_turf(src) - var/obj/structure/blob/factory/B = locate(/obj/structure/blob/factory) in T + var/obj/effect/blob/factory/B = locate(/obj/effect/blob/factory) in T if(!B) src << "You must be on a factory blob!" return if(B.naut) //if it already made a blobbernaut, it can't do it again src << "This factory blob is already sustaining a blobbernaut." return - if(B.obj_integrity < B.max_integrity * 0.5) + if(B.health < B.maxhealth * 0.5) src << "This factory blob is too damaged to sustain a blobbernaut." return if(!can_buy(40)) return - B.max_integrity = initial(B.max_integrity) * 0.25 //factories that produced a blobbernaut have much lower health - B.obj_integrity = min(B.obj_integrity, B.max_integrity) - B.update_icon() + B.maxhealth = initial(B.maxhealth) * 0.25 //factories that produced a blobbernaut have much lower health + B.check_health() B.visible_message("The blobbernaut [pick("rips", "tears", "shreds")] its way out of the factory blob!") playsound(B.loc, 'sound/effects/splat.ogg', 50, 1) var/mob/living/simple_animal/hostile/blob/blobbernaut/blobber = new /mob/living/simple_animal/hostile/blob/blobbernaut(get_turf(B)) @@ -167,9 +165,11 @@ blobber.notransform = 1 //stop the naut from moving around blobber.adjustHealth(blobber.maxHealth * 0.5) blob_mobs += blobber - var/list/mob/dead/observer/candidates = pollCandidatesForMob("Do you want to play as a [blob_reagent_datum.name] blobbernaut?", ROLE_BLOB, null, ROLE_BLOB, 50, blobber) //players must answer rapidly + var/list/mob/dead/observer/candidates = pollCandidates("Do you want to play as a [blob_reagent_datum.name] blobbernaut?", ROLE_BLOB, null, ROLE_BLOB, 50) //players must answer rapidly + var/client/C = null if(candidates.len) //if we got at least one candidate, they're a blobbernaut now. - var/client/C = pick(candidates) + C = pick(candidates) + blobber.notransform = 0 blobber.key = C.key blobber << 'sound/effects/blobattack.ogg' blobber << 'sound/effects/attackblob.ogg' @@ -178,33 +178,23 @@ blobber << "You can communicate with other blobbernauts and overminds via :b" blobber << "Your overmind's blob reagent is: [blob_reagent_datum.name]!" blobber << "The [blob_reagent_datum.name] reagent [blob_reagent_datum.shortdesc ? "[blob_reagent_datum.shortdesc]" : "[blob_reagent_datum.description]"]" - if(blobber) - blobber.notransform = 0 + else + blobber.notransform = 0 //otherwise, just let it move /mob/camera/blob/verb/relocate_core() set category = "Blob" set name = "Relocate Core (80)" set desc = "Swaps the locations of your core and the selected node." var/turf/T = get_turf(src) - var/obj/structure/blob/node/B = locate(/obj/structure/blob/node) in T + var/obj/effect/blob/node/B = locate(/obj/effect/blob/node) in T if(!B) src << "You must be on a blob node!" return - if(!blob_core) - src << "You have no core and are about to die! May you rest in peace." - return - var/area/A = get_area(T) - if(isspaceturf(T) || A && !A.blob_allowed) - src << "You cannot relocate your core here!" - return if(!can_buy(80)) return - var/turf/old_turf = get_turf(blob_core) - var/olddir = blob_core.dir - blob_core.forceMove(T) - blob_core.setDir(B.dir) - B.forceMove(old_turf) - B.setDir(olddir) + var/turf/old_turf = blob_core.loc + blob_core.loc = T + B.loc = old_turf /mob/camera/blob/verb/revert() set category = "Blob" @@ -214,7 +204,7 @@ remove_blob(T) /mob/camera/blob/proc/remove_blob(turf/T) - var/obj/structure/blob/B = locate() in T + var/obj/effect/blob/B = locate() in T if(!B) src << "There is no blob there!" return @@ -231,22 +221,21 @@ /mob/camera/blob/verb/expand_blob_power() set category = "Blob" - set name = "Expand/Attack Blob (4)" + set name = "Expand/Attack Blob (5)" set desc = "Attempts to create a new blob in this tile. If the tile isn't clear, instead attacks it, damaging mobs and objects." var/turf/T = get_turf(src) expand_blob(T) /mob/camera/blob/proc/expand_blob(turf/T) - if(world.time < last_attack) + if(!can_attack()) return - var/list/possibleblobs = list() - for(var/obj/structure/blob/AB in range(T, 1)) - possibleblobs += AB - if(!possibleblobs.len) + var/obj/effect/blob/OB = locate() in circlerange(T, 1) + if(!OB) src << "There is no blob adjacent to the target tile!" return - if(can_buy(4)) + if(can_buy(5)) var/attacksuccess = FALSE + last_attack = world.time for(var/mob/living/L in T) if("blob" in L.faction) //no friendly/dead fire continue @@ -255,37 +244,16 @@ var/mob_protection = L.get_permeability_protection() blob_reagent_datum.reaction_mob(L, VAPOR, 25, 1, mob_protection, src) blob_reagent_datum.send_message(L) - var/obj/structure/blob/B = locate() in T + var/obj/effect/blob/B = locate() in T if(B) if(attacksuccess) //if we successfully attacked a turf with a blob on it, don't refund shit B.blob_attack_animation(T, src) else src << "There is a blob there!" - add_points(4) //otherwise, refund all of the cost + add_points(5) //otherwise, refund all of the cost + return else - var/list/cardinalblobs = list() - var/list/diagonalblobs = list() - for(var/I in possibleblobs) - var/obj/structure/blob/IB = I - if(get_dir(IB, T) in cardinal) - cardinalblobs += IB - else - diagonalblobs += IB - var/obj/structure/blob/OB - if(cardinalblobs.len) - OB = pick(cardinalblobs) - OB.expand(T, src) - else - OB = pick(diagonalblobs) - if(attacksuccess) - OB.blob_attack_animation(T, src) - playsound(OB, 'sound/effects/splat.ogg', 50, 1) - else - add_points(4) //if we're attacking diagonally and didn't hit anything, refund - if(attacksuccess) - last_attack = world.time + CLICK_CD_MELEE - else - last_attack = world.time + CLICK_CD_RAPID + OB.expand(T, src) /mob/camera/blob/verb/rally_spores_power() set category = "Blob" @@ -330,9 +298,8 @@ /mob/camera/blob/proc/set_chemical() var/datum/reagent/blob/BC = pick((subtypesof(/datum/reagent/blob) - blob_reagent_datum.type)) blob_reagent_datum = new BC - color = blob_reagent_datum.complementary_color for(var/BL in blobs) - var/obj/structure/blob/B = BL + var/obj/effect/blob/B = BL B.update_icon() for(var/BLO in blob_mobs) var/mob/living/simple_animal/hostile/blob/BM = BLO @@ -341,8 +308,6 @@ BM << "The [blob_reagent_datum.name] reagent [blob_reagent_datum.shortdesc ? "[blob_reagent_datum.shortdesc]" : "[blob_reagent_datum.description]"]" src << "Your reagent is now: [blob_reagent_datum.name]!" src << "The [blob_reagent_datum.name] reagent [blob_reagent_datum.description]" - if(blob_reagent_datum.effectdesc) - src << "The [blob_reagent_datum.name] reagent [blob_reagent_datum.effectdesc]" /mob/camera/blob/verb/blob_help() set category = "Blob" @@ -351,8 +316,6 @@ src << "As the overmind, you can control the blob!" src << "Your blob reagent is: [blob_reagent_datum.name]!" src << "The [blob_reagent_datum.name] reagent [blob_reagent_datum.description]" - if(blob_reagent_datum.effectdesc) - src << "The [blob_reagent_datum.name] reagent [blob_reagent_datum.effectdesc]" src << "You can expand, which will attack people, damage objects, or place a Normal Blob if the tile is clear." src << "Normal Blobs will expand your reach and can be upgraded into special blobs that perform certain functions." src << "You can upgrade normal blobs into the following types of blob:" @@ -366,4 +329,4 @@ src << "Attempting to talk will send a message to all other overminds, allowing you to coordinate with them." if(!placed && autoplace_max_time <= world.time) src << "You will automatically place your blob core in [round((autoplace_max_time - world.time)/600, 0.5)] minutes." - src << "You [manualplace_min_time ? "will be able to":"can"] manually place your blob core by pressing the Place Blob Core button in the bottom right corner of the screen." + src << "You [manualplace_min_time ? "will be able to":"can"] manually place your blob core by pressing the button in the bottom right corner of the screen." diff --git a/code/game/gamemodes/blob/theblob.dm b/code/game/gamemodes/blob/theblob.dm index 6825d2cd6c..29c3d15b62 100644 --- a/code/game/gamemodes/blob/theblob.dm +++ b/code/game/gamemodes/blob/theblob.dm @@ -1,5 +1,5 @@ //I will need to recode parts of this but I am way too tired atm //I don't know who left this comment but they never did come back -/obj/structure/blob +/obj/effect/blob name = "blob" icon = 'icons/mob/blob.dmi' luminosity = 1 @@ -7,37 +7,35 @@ density = 0 //this being 0 causes two bugs, being able to attack blob tiles behind other blobs and being unable to move on blob tiles in no gravity, but turning it to 1 causes the blob mobs to be unable to path through blobs, which is probably worse. opacity = 0 anchored = 1 - layer = BELOW_MOB_LAYER + explosion_block = 1 var/point_return = 0 //How many points the blob gets back when it removes a blob of that type. If less than 0, blob cannot be removed. - obj_integrity = 30 - max_integrity = 30 - armor = list(melee = 0, bullet = 0, laser = 0, energy = 0, bomb = 0, bio = 0, rad = 0, fire = 80, acid = 70) + var/health = 30 + var/maxhealth = 30 var/health_regen = 2 //how much health this blob regens when pulsed - var/pulse_timestamp = 0 //we got pulsed when? - var/heal_timestamp = 0 //we got healed when? + var/pulse_timestamp = 0 //we got pulsed/healed when? var/brute_resist = 0.5 //multiplies brute damage by this var/fire_resist = 1 //multiplies burn damage by this var/atmosblock = 0 //if the blob blocks atmos and heat spread var/mob/camera/blob/overmind -/obj/structure/blob/New(loc) +/obj/effect/blob/New(loc) var/area/Ablob = get_area(loc) if(Ablob.blob_allowed) //Is this area allowed for winning as blob? blobs_legit += src blobs += src //Keep track of the blob in the normal list either way - setDir(pick(cardinal)) - update_icon() - ..() + src.setDir(pick(1, 2, 4, 8)) + src.update_icon() + ..(loc) ConsumeTile() if(atmosblock) - CanAtmosPass = ATMOS_PASS_NO air_update_turf(1) - -/obj/structure/blob/proc/creation_action() //When it's created by the overmind, do this. return -/obj/structure/blob/Destroy() +/obj/effect/blob/proc/creation_action() //When it's created by the overmind, do this. + return + +/obj/effect/blob/Destroy() if(atmosblock) atmosblock = 0 air_update_turf(1) @@ -46,10 +44,8 @@ playsound(src.loc, 'sound/effects/splat.ogg', 50, 1) //Expand() is no longer broken, no check necessary. return ..() -/obj/structure/blob/blob_act() - return -/obj/structure/blob/Adjacent(var/atom/neighbour) +/obj/effect/blob/Adjacent(var/atom/neighbour) . = ..() if(.) var/result = 0 @@ -58,90 +54,89 @@ for(var/A in dirs) if(direction == text2num(A)) for(var/B in dirs[A]) - var/C = locate(/obj/structure/blob) in get_step(src, B) + var/C = locate(/obj/effect/blob) in get_step(src, B) if(C) result++ . -= result - 1 -/obj/structure/blob/BlockSuperconductivity() +/obj/effect/blob/CanAtmosPass(turf/T) + return !atmosblock + +/obj/effect/blob/BlockSuperconductivity() return atmosblock -/obj/structure/blob/CanPass(atom/movable/mover, turf/target, height=0) +/obj/effect/blob/CanPass(atom/movable/mover, turf/target, height=0) if(height==0) return 1 if(istype(mover) && mover.checkpass(PASSBLOB)) return 1 return 0 -/obj/structure/blob/CanAStarPass(ID, dir, caller) +/obj/effect/blob/CanAStarPass(ID, dir, caller) . = 0 if(ismovableatom(caller)) var/atom/movable/mover = caller . = . || mover.checkpass(PASSBLOB) -/obj/structure/blob/update_icon() //Updates color based on overmind color if we have an overmind. - if(overmind) - add_atom_colour(overmind.blob_reagent_datum.color, FIXED_COLOUR_PRIORITY) - else - remove_atom_colour(FIXED_COLOUR_PRIORITY) - -/obj/structure/blob/process() - Life() - -/obj/structure/blob/proc/Life() +/obj/effect/blob/proc/check_health(cause) + health = Clamp(health, 0, maxhealth) + if(health <= 0) + if(overmind) + overmind.blob_reagent_datum.death_reaction(src, cause) + qdel(src) //we dead now + return return -/obj/structure/blob/proc/Pulse_Area(pulsing_overmind = overmind, claim_range = 10, pulse_range = 3, expand_range = 2) - src.Be_Pulsed() - var/expanded = FALSE - if(prob(70) && expand()) - expanded = TRUE - var/list/blobs_to_affect = list() - for(var/obj/structure/blob/B in urange(claim_range, src, 1)) - blobs_to_affect += B - shuffle(blobs_to_affect) - for(var/L in blobs_to_affect) - var/obj/structure/blob/B = L - if(!B.overmind && !istype(B, /obj/structure/blob/core) && prob(30)) - B.overmind = pulsing_overmind //reclaim unclaimed, non-core blobs. - B.update_icon() - var/distance = get_dist(get_turf(src), get_turf(B)) - var/expand_probablity = max(20 - distance * 8, 1) - if(B.Adjacent(src)) - expand_probablity = 20 - if(distance <= expand_range) - var/can_expand = TRUE - if(blobs_to_affect.len >= 120 && B.heal_timestamp > world.time) - can_expand = FALSE - if(can_expand && B.pulse_timestamp <= world.time && prob(expand_probablity)) - var/obj/structure/blob/newB = B.expand(null, null, !expanded) //expansion falls off with range but is faster near the blob causing the expansion - if(newB) - if(expanded) - qdel(newB) - expanded = TRUE - if(distance <= pulse_range) - B.Be_Pulsed() +/obj/effect/blob/update_icon() //Updates color based on overmind color if we have an overmind. + if(overmind) + color = overmind.blob_reagent_datum.color + else + color = null + return -/obj/structure/blob/proc/Be_Pulsed() + +/obj/effect/blob/process() + Life() + return + +/obj/effect/blob/proc/Life() + return + +/obj/effect/blob/proc/Pulse_Area(pulsing_overmind = overmind, claim_range = 10, pulse_range = 3, expand_range = 2) + src.Be_Pulsed() + if(claim_range) + for(var/obj/effect/blob/B in urange(claim_range, src, 1)) + if(!B.overmind && !istype(B, /obj/effect/blob/core) && prob(30)) + B.overmind = pulsing_overmind //reclaim unclaimed, non-core blobs. + B.update_icon() + if(pulse_range) + for(var/obj/effect/blob/B in orange(pulse_range, src)) + B.Be_Pulsed() + if(expand_range) + if(prob(85)) + src.expand() + for(var/obj/effect/blob/B in orange(expand_range, src)) + if(prob(max(13 - get_dist(get_turf(src), get_turf(B)) * 4, 1))) //expand falls off with range but is faster near the blob causing the expansion + B.expand() + return + +/obj/effect/blob/proc/Be_Pulsed() if(pulse_timestamp <= world.time) ConsumeTile() - if(heal_timestamp <= world.time) - obj_integrity = min(max_integrity, obj_integrity+health_regen) - heal_timestamp = world.time + 20 + health = min(maxhealth, health+health_regen) update_icon() pulse_timestamp = world.time + 10 return 1 //we did it, we were pulsed! return 0 //oh no we failed -/obj/structure/blob/proc/ConsumeTile() +/obj/effect/blob/proc/ConsumeTile() for(var/atom/A in loc) A.blob_act(src) - if(iswallturf(loc)) + if(istype(loc, /turf/closed/wall)) loc.blob_act(src) //don't ask how a wall got on top of the core, just eat it -/obj/structure/blob/proc/blob_attack_animation(atom/A = null, controller) //visually attacks an atom +/obj/effect/blob/proc/blob_attack_animation(atom/A = null, controller) //visually attacks an atom var/obj/effect/overlay/temp/blob/O = PoolOrNew(/obj/effect/overlay/temp/blob, src.loc) - O.setDir(dir) if(controller) var/mob/camera/blob/BO = controller O.color = BO.blob_reagent_datum.color @@ -152,14 +147,14 @@ O.do_attack_animation(A) //visually attack the whatever return O //just in case you want to do something to the animation. -/obj/structure/blob/proc/expand(turf/T = null, controller = null, expand_reaction = 1) +/obj/effect/blob/proc/expand(turf/T = null, controller = null, expand_reaction = 1) if(!T) var/list/dirs = list(1,2,4,8) for(var/i = 1 to 4) var/dirn = pick(dirs) dirs.Remove(dirn) T = get_step(src, dirn) - if(!(locate(/obj/structure/blob) in T)) + if(!(locate(/obj/effect/blob) in T)) break else T = null @@ -167,7 +162,7 @@ return 0 var/make_blob = TRUE //can we make a blob? - if(isspaceturf(T) && !(locate(/obj/structure/lattice) in T) && prob(80)) + if(istype(T, /turf/open/space) && !(locate(/obj/structure/lattice) in T) && prob(80)) make_blob = FALSE playsound(src.loc, 'sound/effects/splat.ogg', 50, 1) //Let's give some feedback that we DID try to spawn in space, since players are used to it @@ -181,7 +176,7 @@ A.blob_act(src) //also hit everything in the turf if(make_blob) //well, can we? - var/obj/structure/blob/B = new /obj/structure/blob/normal(src.loc) + var/obj/effect/blob/B = new /obj/effect/blob/normal(src.loc) if(controller) B.overmind = controller else @@ -192,7 +187,7 @@ B.loc = T B.update_icon() if(B.overmind && expand_reaction) - B.overmind.blob_reagent_datum.expand_reaction(src, B, T, controller) + B.overmind.blob_reagent_datum.expand_reaction(src, B, T) return B else blob_attack_animation(T, controller) @@ -203,30 +198,43 @@ blob_attack_animation(T, controller) //if we can't, animate that we attacked return null -/obj/structure/blob/emp_act(severity) + +/obj/effect/blob/ex_act(severity, target) + ..() + var/damage = 150 - 20 * severity + take_damage(damage, BRUTE) + +/obj/effect/blob/fire_act(datum/gas_mixture/air, exposed_temperature, exposed_volume) + ..() + var/damage = Clamp(0.01 * exposed_temperature, 0, 4) + take_damage(damage, BURN) + +/obj/effect/blob/emp_act(severity) if(severity > 0) if(overmind) overmind.blob_reagent_datum.emp_reaction(src, severity) if(prob(100 - severity * 30)) PoolOrNew(/obj/effect/overlay/temp/emp, get_turf(src)) -/obj/structure/blob/tesla_act(power) +/obj/effect/blob/tesla_act(power) ..() if(overmind) if(overmind.blob_reagent_datum.tesla_reaction(src, power)) - take_damage(power/400, BURN, "energy") + take_damage(power/400, BURN) else - take_damage(power/400, BURN, "energy") + take_damage(power/400, BURN) -/obj/structure/blob/extinguish() +/obj/effect/blob/extinguish() ..() if(overmind) overmind.blob_reagent_datum.extinguish_reaction(src) -/obj/structure/blob/hulk_damage() - return 15 +/obj/effect/blob/bullet_act(var/obj/item/projectile/Proj) + ..() + take_damage(Proj.damage, Proj.damage_type, Proj) + return 0 -/obj/structure/blob/attackby(obj/item/I, mob/user, params) +/obj/effect/blob/attackby(obj/item/I, mob/user, params) if(istype(I, /obj/item/device/analyzer)) user.changeNext_move(CLICK_CD_MELEE) user << "The analyzer beeps once, then reports:
    " @@ -236,7 +244,7 @@ else return ..() -/obj/structure/blob/proc/chemeffectreport(mob/user) +/obj/effect/blob/proc/chemeffectreport(mob/user) if(overmind) user << "Material: [overmind.blob_reagent_datum.name]." user << "Material Effects: [overmind.blob_reagent_datum.analyzerdescdamage]" @@ -244,67 +252,69 @@ else user << "No Material Detected!
    " -/obj/structure/blob/proc/typereport(mob/user) +/obj/effect/blob/proc/typereport(mob/user) user << "Blob Type: [uppertext(initial(name))]" - user << "Health: [obj_integrity]/[max_integrity]" + user << "Health: [health]/[maxhealth]" user << "Effects: [scannerreport()]" -/obj/structure/blob/attack_animal(mob/living/simple_animal/M) +/obj/effect/blob/attacked_by(obj/item/I, mob/living/user) + user.changeNext_move(CLICK_CD_MELEE) + user.do_attack_animation(src) + playsound(src.loc, 'sound/effects/attackblob.ogg', 50, 1) + visible_message("[user] has attacked the [src.name] with \the [I]!") + if(I.damtype == BURN) + playsound(src.loc, 'sound/items/Welder.ogg', 100, 1) + take_damage(I.force, I.damtype, user) + +/obj/effect/blob/attack_animal(mob/living/simple_animal/M) if("blob" in M.faction) //sorry, but you can't kill the blob as a blobbernaut return - ..() + M.changeNext_move(CLICK_CD_MELEE) + M.do_attack_animation(src) + playsound(src.loc, 'sound/effects/attackblob.ogg', 50, 1) + visible_message("\The [M] has attacked the [src.name]!") + var/damage = rand(M.melee_damage_lower, M.melee_damage_upper) + take_damage(damage, M.melee_damage_type, M) + return -/obj/structure/blob/play_attack_sound(damage_amount, damage_type = BRUTE, damage_flag = 0) - switch(damage_type) - if(BRUTE) - if(damage_amount) - playsound(src.loc, 'sound/effects/attackblob.ogg', 50, 1) - else - playsound(src, 'sound/weapons/tap.ogg', 50, 1) - if(BURN) - playsound(src.loc, 'sound/items/Welder.ogg', 100, 1) +/obj/effect/blob/attack_alien(mob/living/carbon/alien/humanoid/M) + M.changeNext_move(CLICK_CD_MELEE) + M.do_attack_animation(src) + playsound(src.loc, 'sound/effects/attackblob.ogg', 50, 1) + visible_message("[M] has slashed the [src.name]!") + var/damage = rand(15, 30) + take_damage(damage, BRUTE, M) + return -/obj/structure/blob/run_obj_armor(damage_amount, damage_type, damage_flag = 0, attack_dir) - switch(damage_type) +/obj/effect/blob/proc/take_damage(damage, damage_type, cause = null, overmind_reagent_trigger = 1) + switch(damage_type) //blobs only take brute and burn damage if(BRUTE) - damage_amount *= brute_resist + damage = max(damage * brute_resist, 0) if(BURN) - damage_amount *= fire_resist - if(CLONE) + damage = max(damage * fire_resist, 0) + if(CLONE) //this is basically a marker for 'don't modify the damage' + else - return 0 - var/armor_protection = 0 - if(damage_flag) - armor_protection = armor[damage_flag] - damage_amount = round(damage_amount * (100 - armor_protection)*0.01, 0.1) - if(overmind && damage_flag) - damage_amount = overmind.blob_reagent_datum.damage_reaction(src, damage_amount, damage_type, damage_flag) - return damage_amount + damage = 0 + if(overmind && overmind_reagent_trigger) + damage = overmind.blob_reagent_datum.damage_reaction(src, health, damage, damage_type, cause) //pass the blob, its health before damage, the damage being done, the type of damage being done, and the cause. + health -= damage + update_icon() + check_health(cause) -/obj/structure/blob/take_damage(damage_amount, damage_type = BRUTE, damage_flag = 0, sound_effect = 1, attack_dir) - . = ..() - if(. && obj_integrity > 0) - update_icon() - -/obj/structure/blob/obj_destruction(damage_flag) - if(overmind) - overmind.blob_reagent_datum.death_reaction(src, damage_flag) - ..() - -/obj/structure/blob/proc/change_to(type, controller) +/obj/effect/blob/proc/change_to(type, controller) if(!ispath(type)) throw EXCEPTION("change_to(): invalid type for blob") return - var/obj/structure/blob/B = new type(src.loc) + var/obj/effect/blob/B = new type(src.loc) if(controller) B.overmind = controller B.creation_action() B.update_icon() - B.setDir(dir) qdel(src) return B -/obj/structure/blob/examine(mob/user) +/obj/effect/blob/examine(mob/user) ..() var/datum/atom_hud/hud_to_check = huds[DATA_HUD_MEDICAL_ADVANCED] if(user.research_scanner || (user in hud_to_check.hudusers)) @@ -314,31 +324,31 @@ else user << "It seems to be made of [get_chem_name()]." -/obj/structure/blob/proc/scannerreport() +/obj/effect/blob/proc/scannerreport() return "A generic blob. Looks like someone forgot to override this proc, adminhelp this." -/obj/structure/blob/proc/get_chem_name() +/obj/effect/blob/proc/get_chem_name() if(overmind) return overmind.blob_reagent_datum.name return "an unknown variant" -/obj/structure/blob/normal +/obj/effect/blob/normal name = "normal blob" icon_state = "blob" luminosity = 0 - obj_integrity = 21 - max_integrity = 25 + health = 21 + maxhealth = 25 health_regen = 1 brute_resist = 0.25 -/obj/structure/blob/normal/scannerreport() - if(obj_integrity <= 15) +/obj/effect/blob/normal/scannerreport() + if(health <= 10) return "Currently weak to brute damage." return "N/A" -/obj/structure/blob/normal/update_icon() +/obj/effect/blob/normal/update_icon() ..() - if(obj_integrity <= 15) + if(health <= 10) icon_state = "blob_damaged" name = "fragile blob" desc = "A thin lattice of slightly twitching tendrils." diff --git a/code/game/gamemodes/changeling/cellular_emporium.dm b/code/game/gamemodes/changeling/cellular_emporium.dm index cc808dc80b..a71c5cfced 100644 --- a/code/game/gamemodes/changeling/cellular_emporium.dm +++ b/code/game/gamemodes/changeling/cellular_emporium.dm @@ -45,6 +45,7 @@ AL["helptext"] = initial(ability.helptext) AL["owned"] = changeling.has_sting(ability) var/req_dna = initial(ability.req_dna) + AL["required_absorptions"] = req_dna AL["dna_cost"] = dna_cost AL["can_purchase"] = ((req_dna <= absorbed_dna_count) && (dna_cost <= genetic_points_remaining)) diff --git a/code/game/gamemodes/changeling/changeling.dm b/code/game/gamemodes/changeling/changeling.dm index 8d251b88e1..45c8bc2d3d 100644 --- a/code/game/gamemodes/changeling/changeling.dm +++ b/code/game/gamemodes/changeling/changeling.dm @@ -4,7 +4,7 @@ var/list/possible_changeling_IDs = list("Alpha","Beta","Gamma","Delta","Epsilon","Zeta","Eta","Theta","Iota","Kappa","Lambda","Mu","Nu","Xi","Omicron","Pi","Rho","Sigma","Tau","Upsilon","Phi","Chi","Psi","Omega") var/list/slots = list("head", "wear_mask", "back", "wear_suit", "w_uniform", "shoes", "belt", "gloves", "glasses", "ears", "wear_id", "s_store") -var/list/slot2slot = list("head" = slot_head, "wear_mask" = slot_wear_mask, "neck" = slot_neck, "back" = slot_back, "wear_suit" = slot_wear_suit, "w_uniform" = slot_w_uniform, "shoes" = slot_shoes, "belt" = slot_belt, "gloves" = slot_gloves, "glasses" = slot_glasses, "ears" = slot_ears, "wear_id" = slot_wear_id, "s_store" = slot_s_store) +var/list/slot2slot = list("head" = slot_head, "wear_mask" = slot_wear_mask, "back" = slot_back, "wear_suit" = slot_wear_suit, "w_uniform" = slot_w_uniform, "shoes" = slot_shoes, "belt" = slot_belt, "gloves" = slot_gloves, "glasses" = slot_glasses, "ears" = slot_ears, "wear_id" = slot_wear_id, "s_store" = slot_s_store) var/list/slot2type = list("head" = /obj/item/clothing/head/changeling, "wear_mask" = /obj/item/clothing/mask/changeling, "back" = /obj/item/changeling, "wear_suit" = /obj/item/clothing/suit/changeling, "w_uniform" = /obj/item/clothing/under/changeling, "shoes" = /obj/item/clothing/shoes/changeling, "belt" = /obj/item/changeling, "gloves" = /obj/item/clothing/gloves/changeling, "glasses" = /obj/item/clothing/glasses/changeling, "ears" = /obj/item/changeling, "wear_id" = /obj/item/changeling, "s_store" = /obj/item/changeling) @@ -23,10 +23,6 @@ var/list/slot2type = list("head" = /obj/item/clothing/head/changeling, "wear_mas recommended_enemies = 4 reroll_friendly = 1 - announce_span = "green" - announce_text = "Alien changelings have infiltrated the crew!\n\ - Changelings: Accomplish the objectives assigned to you.\n\ - Crew: Root out and eliminate the changeling menace." var/const/prob_int_murder_target = 50 // intercept names the assassination target half the time var/const/prob_right_murder_target_l = 25 // lower bound on probability of naming right assassination target @@ -49,6 +45,10 @@ var/list/slot2type = list("head" = /obj/item/clothing/head/changeling, "wear_mas var/changeling_team_objective_type = null //If this is not null, we hand our this objective to all lings +/datum/game_mode/changeling/announce() + world << "The current game mode is - Changeling!" + world << "There are alien changelings on the station. Do not let the changelings succeed!" + /datum/game_mode/changeling/pre_setup() if(config.protect_roles_from_antagonist) @@ -70,8 +70,8 @@ var/list/slot2type = list("head" = /obj/item/clothing/head/changeling, "wear_mas var/datum/mind/changeling = pick(antag_candidates) antag_candidates -= changeling changelings += changeling - changeling.special_role = "Changeling" changeling.restricted_roles = restricted_jobs + modePlayer += changelings return 1 else return 0 @@ -94,10 +94,10 @@ var/list/slot2type = list("head" = /obj/item/clothing/head/changeling, "wear_mas for(var/datum/mind/changeling in changelings) log_game("[changeling.key] (ckey) has been selected as a changeling") changeling.current.make_changeling() + changeling.special_role = "Changeling" forge_changeling_objectives(changeling) greet_changeling(changeling) ticker.mode.update_changeling_icons_added(changeling) - modePlayer += changelings ..() /datum/game_mode/changeling/make_antag_chance(mob/living/carbon/human/character) //Assigns changeling to latejoiners diff --git a/code/game/gamemodes/changeling/changeling_power.dm b/code/game/gamemodes/changeling/changeling_power.dm index 8bcc7a8ec2..321daa07a3 100644 --- a/code/game/gamemodes/changeling/changeling_power.dm +++ b/code/game/gamemodes/changeling/changeling_power.dm @@ -15,8 +15,7 @@ var/req_stat = CONSCIOUS // CONSCIOUS, UNCONSCIOUS or DEAD var/genetic_damage = 0 // genetic damage caused by using the sting. Nothing to do with cloneloss. var/max_genetic_damage = 100 // hard counter for spamming abilities. Not used/balanced much yet. - var/always_keep = 0 // important for abilities like revive that screw you if you lose them. - var/ignores_fakedeath = FALSE // usable with the FAKEDEATH flag + var/always_keep = 0 // important for abilities like regenerate that screw you if you lose them. /obj/effect/proc_holder/changeling/proc/on_purchase(mob/user) @@ -57,16 +56,16 @@ user << "We cannot do that in this form!" return 0 var/datum/changeling/c = user.mind.changeling - if(c.chem_charges < chemical_cost) + if(c.chem_chargesWe require at least [chemical_cost] unit\s of chemicals to do that!" return 0 - if(c.absorbedcount < req_dna) + if(c.absorbedcountWe require at least [req_dna] sample\s of compatible DNA." return 0 if(req_stat < user.stat) user << "We are incapacitated." return 0 - if((user.status_flags & FAKEDEATH) && (!ignores_fakedeath)) + if((user.status_flags & FAKEDEATH) && name != "Regenerate") user << "We are incapacitated." return 0 if(c.geneticdamage > max_genetic_damage) diff --git a/code/game/gamemodes/changeling/powers/absorb.dm b/code/game/gamemodes/changeling/powers/absorb.dm index 0644516878..3e794cca62 100644 --- a/code/game/gamemodes/changeling/powers/absorb.dm +++ b/code/game/gamemodes/changeling/powers/absorb.dm @@ -105,3 +105,58 @@ //datum/changeling/proc/absorb_dna(mob/living/carbon/T, mob/user) //datum/changeling/proc/store_dna(datum/dna/new_dna, mob/user) + + + + +/obj/effect/proc_holder/changeling/swap_form + name = "Swap Forms" + desc = "We force ourselves into the body of another form, pushing their consciousness into the form we left behind." + helptext = "We will bring all our abilities with us, but we will lose our old form DNA in exchange for the new one. The process will seem suspicious to any observers." + chemical_cost = 40 + dna_cost = 1 + req_human = 1 //Monkeys can't grab + +/obj/effect/proc_holder/changeling/swap_form/can_sting(mob/living/carbon/user) + if(!..()) + return + if(!user.pulling || !iscarbon(user.pulling) || user.grab_state < GRAB_AGGRESSIVE) + user << "We must have an aggressive grab on creature to do this!" + return + var/mob/living/carbon/target = user.pulling + if((target.disabilities & NOCLONE) || (target.disabilities & HUSK)) + user << "DNA of [target] is ruined beyond usability!" + return + if(!ishuman(target)) + user << "[target] is not compatible with this ability." + return + return 1 + + +/obj/effect/proc_holder/changeling/swap_form/sting_action(mob/living/carbon/user) + var/mob/living/carbon/target = user.pulling + var/datum/changeling/changeling = user.mind.changeling + + user << "We tighen our grip. We must hold still...." + target.do_jitter_animation(500) + user.do_jitter_animation(500) + + if(!do_mob(user,target,20)) + user << "The body swap has been interrupted!" + return + + target << "[user] tightens their grip as a painful sensation invades your body." + + if(!changeling.has_dna(target.dna)) + changeling.add_new_profile(target, user) + changeling.remove_profile(user) + + var/mob/dead/observer/ghost = target.ghostize(0) + user.mind.transfer_to(target) + if(ghost) + ghost.mind.transfer_to(user) + if(ghost.key) + user.key = ghost.key + + user.Paralyse(2) + target << "Our genes cry out as we swap our [user] form for [target]." diff --git a/code/game/gamemodes/changeling/powers/augmented_eyesight.dm b/code/game/gamemodes/changeling/powers/augmented_eyesight.dm index ca45e620da..f5b496cf6a 100644 --- a/code/game/gamemodes/changeling/powers/augmented_eyesight.dm +++ b/code/game/gamemodes/changeling/powers/augmented_eyesight.dm @@ -7,7 +7,7 @@ helptext = "Grants us thermal vision or flash protection. We will become a lot more vulnerable to flash-based devices while thermal vision is active." chemical_cost = 0 dna_cost = 2 //Would be 1 without thermal vision - active = 0 //Whether or not vision is enhanced + var/active = 0 //Whether or not vision is enhanced /obj/effect/proc_holder/changeling/augmented_eyesight/sting_action(mob/living/carbon/human/user) if(!istype(user)) diff --git a/code/game/gamemodes/changeling/powers/biodegrade.dm b/code/game/gamemodes/changeling/powers/biodegrade.dm index 547ea78506..7bc6f88f92 100644 --- a/code/game/gamemodes/changeling/powers/biodegrade.dm +++ b/code/game/gamemodes/changeling/powers/biodegrade.dm @@ -1,7 +1,8 @@ /obj/effect/proc_holder/changeling/biodegrade name = "Biodegrade" desc = "Dissolves restraints or other objects preventing free movement." - helptext = "This is obvious to nearby people, and can destroy standard restraints and closets." + helptext = "This is obvious to nearby people, and can destroy \ + standard restraints and closets." chemical_cost = 30 //High cost to prevent spam dna_cost = 2 req_human = 1 @@ -11,7 +12,7 @@ /obj/effect/proc_holder/changeling/biodegrade/sting_action(mob/living/carbon/human/user) var/used = FALSE // only one form of shackles removed per use - if(!user.restrained() && istype(user.loc, /turf/open)) + if(!user.restrained() && !istype(user.loc, /obj/structure/closet)) user << "We are already free!" return 0 @@ -19,19 +20,23 @@ var/obj/O = user.get_item_by_slot(slot_handcuffed) if(!istype(O)) return 0 - user.visible_message("[user] vomits a glob of acid on [user.p_their()] [O]!", \ - "We vomit acidic ooze onto our restraints!") + user.visible_message("[user] vomits a glob of \ + acid on \his [O]!", \ + "We vomit acidic ooze onto our \ + restraints!") - addtimer(src, "dissolve_handcuffs", 30, TIMER_NORMAL, user, O) + addtimer(src, "dissolve_handcuffs", 30, FALSE, user, O) used = TRUE if(user.wear_suit && user.wear_suit.breakouttime && !used) var/obj/item/clothing/suit/S = user.get_item_by_slot(slot_wear_suit) if(!istype(S)) return 0 - user.visible_message("[user] vomits a glob of acid across the front of [user.p_their()] [S]!", \ - "We vomit acidic ooze onto our straight jacket!") - addtimer(src, "dissolve_straightjacket", 30, TIMER_NORMAL, user, S) + user.visible_message("[user] vomits a glob \ + of acid across the front of \his [S]!", \ + "We vomit acidic ooze onto our straight \ + jacket!") + addtimer(src, "dissolve_straightjacket", 30, FALSE, user, S) used = TRUE @@ -39,18 +44,11 @@ var/obj/structure/closet/C = user.loc if(!istype(C)) return 0 - C.visible_message("[C]'s hinges suddenly begin to melt and run!") - user << "We vomit acidic goop onto the interior of [C]!" - addtimer(src, "open_closet", 70, TIMER_NORMAL, user, C) - used = TRUE - - if(istype(user.loc, /obj/structure/spider/cocoon) && !used) - var/obj/structure/spider/cocoon/C = user.loc - if(!istype(C)) - return 0 - C.visible_message("[src] shifts and starts to fall apart!") - user << "We secrete acidic enzymes from our skin and begin melting our cocoon..." - addtimer(src, "dissolve_cocoon", 25, TIMER_NORMAL, user, C) //Very short because it's just webs + C.visible_message("[C]'s hinges suddenly \ + begin to melt and run!") + user << "We vomit acidic goop onto the \ + interior of [C]!" + addtimer(src, "open_closet", 70, FALSE, user, C) used = TRUE if(used) @@ -60,7 +58,8 @@ /obj/effect/proc_holder/changeling/biodegrade/proc/dissolve_handcuffs(mob/living/carbon/human/user, obj/O) if(O && user.handcuffed == O) user.unEquip(O) - O.visible_message("[O] dissolves into a puddle of sizzling goop.") + O.visible_message("[O] dissolves into a \ + puddle of sizzling goop.") O.loc = get_turf(user) qdel(O) @@ -73,14 +72,11 @@ /obj/effect/proc_holder/changeling/biodegrade/proc/open_closet(mob/living/carbon/human/user, obj/structure/closet/C) if(C && user.loc == C) - C.visible_message("[C]'s door breaks and opens!") + C.visible_message("[C]'s door breaks and \ + opens!") C.welded = FALSE C.locked = FALSE C.broken = TRUE C.open() - user << "We open the container restraining us!" - -/obj/effect/proc_holder/changeling/biodegrade/proc/dissolve_cocoon(mob/living/carbon/human/user, obj/structure/spider/cocoon/C) - if(C && user.loc == C) - qdel(C) //The cocoon's destroy will move the changeling outside of it without interference - user << "We dissolve the cocoon!" + user << "We open the container restraining \ + us!" diff --git a/code/game/gamemodes/changeling/powers/fakedeath.dm b/code/game/gamemodes/changeling/powers/fakedeath.dm index 83f17331b4..08bfd9187c 100644 --- a/code/game/gamemodes/changeling/powers/fakedeath.dm +++ b/code/game/gamemodes/changeling/powers/fakedeath.dm @@ -1,5 +1,5 @@ /obj/effect/proc_holder/changeling/fakedeath - name = "Reviving Stasis" + name = "Regenerative Stasis" desc = "We fall into a stasis, allowing us to regenerate and trick our enemies." chemical_cost = 15 dna_cost = 0 @@ -18,19 +18,19 @@ user.update_stat() user.update_canmove() - addtimer(src, "ready_to_regenerate", LING_FAKEDEATH_TIME, TIMER_UNIQUE, user) + addtimer(src, "ready_to_regenerate", LING_FAKEDEATH_TIME, FALSE, user) feedback_add_details("changeling_powers","FD") return 1 /obj/effect/proc_holder/changeling/fakedeath/proc/ready_to_regenerate(mob/user) if(user && user.mind && user.mind.changeling && user.mind.changeling.purchasedpowers) - user << "We are ready to revive." + user << "We are ready to regenerate." user.mind.changeling.purchasedpowers += new /obj/effect/proc_holder/changeling/revive(null) /obj/effect/proc_holder/changeling/fakedeath/can_sting(mob/user) if(user.status_flags & FAKEDEATH) - user << "We are already reviving." + user << "We are already regenerating." return if(!user.stat) //Confirmation for living changelings if they want to fake their death switch(alert("Are we sure we wish to fake our own death?",,"Yes", "No")) diff --git a/code/game/gamemodes/changeling/powers/fleshmend.dm b/code/game/gamemodes/changeling/powers/fleshmend.dm index fbb61d224e..e779715e76 100644 --- a/code/game/gamemodes/changeling/powers/fleshmend.dm +++ b/code/game/gamemodes/changeling/powers/fleshmend.dm @@ -1,12 +1,11 @@ /obj/effect/proc_holder/changeling/fleshmend name = "Fleshmend" - desc = "Our flesh rapidly regenerates, healing our burns, bruises and \ - shortness of breath. Effectiveness decreases with quick, \ - repeated use." + desc = "Our flesh rapidly regenerates, healing our wounds, and growing \ + back missing limbs. Effectiveness decreases with quick, repeated use." helptext = "Heals a moderate amount of damage over a short period of \ - time. Can be used while unconscious. Does not regrow limbs or \ - restore lost blood." - chemical_cost = 20 + time. Can be used while unconscious. Will alert nearby crew if \ + any limbs are regenerated." + chemical_cost = 25 dna_cost = 2 req_stat = UNCONSCIOUS var/recent_uses = 1 //The factor of which the healing should be divided by @@ -34,25 +33,30 @@ if(recent_uses > 1) user << "Our healing's effectiveness is reduced \ by quick repeated use!" + spawn(0) + recent_uses++ + if(ishuman(user)) + var/mob/living/carbon/human/H = user + H.restore_blood() + H.remove_all_embedded_objects() + var/list/missing = H.get_missing_limbs() + if(missing.len) + playsound(user, 'sound/magic/Demon_consume.ogg', 50, 1) + H.visible_message("[user]'s missing limbs reform, making a loud, grotesque sound!", "Your limbs regrow, making a loud, crunchy sound and giving you great pain!", "You hear organic matter ripping and tearing!") + H.emote("scream") + H.regenerate_limbs(1) - recent_uses++ - addtimer(src, "fleshmend", 0, TIMER_NORMAL, user) + // The healing itself - doesn't heal toxin damage + // (that's anatomic panacea) and the effectiveness decreases with + // each use in a short timespan + for(var/i in 1 to healing_ticks) + if(user) + var/healpertick = -(total_healing / healing_ticks) + user.adjustBruteLoss(healpertick / recent_uses, 0) + user.adjustOxyLoss(healpertick / recent_uses, 0) + user.adjustFireLoss(healpertick / recent_uses, 0) + user.updatehealth() + sleep(10) feedback_add_details("changeling_powers","RR") return 1 - -/obj/effect/proc_holder/changeling/fleshmend/proc/fleshmend(mob/living/user) - - // The healing itself - doesn't heal toxin damage - // (that's anatomic panacea) and the effectiveness decreases with - // each use in a short timespan - for(var/i in 1 to healing_ticks) - if(user) - var/healpertick = -(total_healing / healing_ticks) - user.adjustBruteLoss(healpertick / recent_uses, 0) - user.adjustOxyLoss(healpertick / recent_uses, 0) - user.adjustFireLoss(healpertick / recent_uses, 0) - user.updatehealth() - else - break - sleep(10) diff --git a/code/game/gamemodes/changeling/powers/linglink.dm b/code/game/gamemodes/changeling/powers/linglink.dm index 204888db7b..3b90ee14bd 100644 --- a/code/game/gamemodes/changeling/powers/linglink.dm +++ b/code/game/gamemodes/changeling/powers/linglink.dm @@ -46,7 +46,7 @@ user << "We stealthily stab [target] with a minor proboscis..." target << "You experience a stabbing sensation and your ears begin to ring..." if(3) - user << "We mold the [target]'s mind like clay, granting [target.p_them()] the ability to speak in the hivemind!" + user << "You mold the [target]'s mind like clay, they can now speak in the hivemind!" target << "A migraine throbs behind your eyes, you hear yourself screaming - but your mouth has not opened!" for(var/mob/M in mob_list) if(M.lingcheck() == 2) diff --git a/code/game/gamemodes/changeling/powers/mutations.dm b/code/game/gamemodes/changeling/powers/mutations.dm index 6c50490a57..b9023bbb4e 100644 --- a/code/game/gamemodes/changeling/powers/mutations.dm +++ b/code/game/gamemodes/changeling/powers/mutations.dm @@ -17,47 +17,47 @@ dna_cost = -1 genetic_damage = 1000 - var/silent = FALSE var/weapon_type var/weapon_name_simple /obj/effect/proc_holder/changeling/weapon/try_to_sting(mob/user, mob/target) - for(var/obj/item/I in user.held_items) - if(check_weapon(user, I)) - return + if(check_weapon(user, user.r_hand, 1)) + return + if(check_weapon(user, user.l_hand, 0)) + return ..(user, target) -/obj/effect/proc_holder/changeling/weapon/proc/check_weapon(mob/user, obj/item/hand_item) +/obj/effect/proc_holder/changeling/weapon/proc/check_weapon(mob/user, obj/item/hand_item, right_hand=1) if(istype(hand_item, weapon_type)) + playsound(user, 'sound/effects/blobattack.ogg', 30, 1) qdel(hand_item) - if(!silent) - playsound(user, 'sound/effects/blobattack.ogg', 30, 1) - user.visible_message("With a sickening crunch, [user] reforms their [weapon_name_simple] into an arm!", "We assimilate the [weapon_name_simple] back into our body.", "With a sickening crunch, [user] reforms their [weapon_name_simple] into an arm!", "We assimilate the [weapon_name_simple] back into our body.", "The [user.get_active_held_item()] is stuck to your hand, you cannot grow a [weapon_name_simple] over it!" + user << "The [user.get_active_hand()] is stuck to your hand, you cannot grow a [weapon_name_simple] over it!" return var/limb_regen = 0 - if(user.active_hand_index % 2 == 0) //we regen the arm before changing it into the weapon - limb_regen = user.regenerate_limb("r_arm", 1) - else + if(user.hand) //we regen the arm before changing it into the weapon limb_regen = user.regenerate_limb("l_arm", 1) + else + limb_regen = user.regenerate_limb("r_arm", 1) if(limb_regen) user.visible_message("[user]'s missing arm reforms, making a loud, grotesque sound!", "Your arm regrows, making a loud, crunchy sound and giving you great pain!", "You hear organic matter ripping and tearing!") user.emote("scream") - var/obj/item/W = new weapon_type(user, silent) + var/obj/item/W = new weapon_type(user) user.put_in_hands(W) - if(!silent) - playsound(user, 'sound/effects/blobattack.ogg', 30, 1) + playsound(user, 'sound/effects/blobattack.ogg', 30, 1) return W /obj/effect/proc_holder/changeling/weapon/on_refund(mob/user) - for(var/obj/item/I in user.held_items) - check_weapon(user, I) - + check_weapon(user, user.r_hand, 1) + check_weapon(user, user.l_hand, 0) //Parent to space suits and armor. /obj/effect/proc_holder/changeling/suit @@ -146,12 +146,12 @@ /obj/item/weapon/melee/arm_blade name = "arm blade" - desc = "A grotesque blade made out of bone and flesh that cleaves through people as a hot knife through butter." + desc = "A grotesque blade made out of bone and flesh that cleaves through people as a hot knife through butter" icon = 'icons/obj/weapons.dmi' icon_state = "arm_blade" item_state = "arm_blade" flags = ABSTRACT | NODROP | DROPDEL - w_class = WEIGHT_CLASS_HUGE + w_class = 5.0 force = 25 throwforce = 0 //Just to be on the safe side throw_range = 0 @@ -168,7 +168,7 @@ return if(istype(target, /obj/structure/table)) var/obj/structure/table/T = target - T.deconstruct(FALSE) + T.table_destroy() else if(istype(target, /obj/machinery/computer)) var/obj/machinery/computer/C = target @@ -179,186 +179,24 @@ if(!A.requiresID() || A.allowed(user)) //This is to prevent stupid shit like hitting a door with an arm blade, the door opening because you have acces and still getting a "the airlocks motors resist our efforts to force it" message. return - if(A.locked) + + if(A.hasPower()) + if(A.locked) + user << "The airlock's bolts prevent it from being forced!" + return + user << "The airlock's motors are resisting, this may take time..." + if(do_after(user, 100, target = A)) + A.open(2) + return + + else if(A.locked) user << "The airlock's bolts prevent it from being forced!" return - if(A.hasPower()) - user.visible_message("[user] jams [src] into the airlock and starts prying it open!", "We start forcing the airlock open.", \ - "You hear a metal screeching sound.") - playsound(A, 'sound/machines/airlock_alien_prying.ogg', 100, 1) - if(!do_after(user, 100, target = A)) - return - //user.say("Heeeeeeeeeerrre's Johnny!") - user.visible_message("[user] forces the airlock to open with their [src]!", "We force the airlock to open.", \ - "You hear a metal screeching sound.") - A.open(2) - -/***************************************\ -|***********COMBAT TENTACLES*************| -\***************************************/ - -/obj/effect/proc_holder/changeling/weapon/tentacle - name = "Tentacle" - desc = "We ready a tentacle to grab items or victims with." - helptext = "We can use it once to retrieve a distant item. If used on living creatures, the effect depends on the intent: \ - Help will simply drag them closer, Disarm will grab whatever they're holding instead of them, Grab will put the victim in our hold after catching it, \ - and Harm will stun it, and stab it if we're also holding a sharp weapon. Cannot be used while in lesser form." - chemical_cost = 10 - dna_cost = 2 - genetic_damage = 5 - req_human = 1 - max_genetic_damage = 10 - weapon_type = /obj/item/weapon/gun/magic/tentacle - weapon_name_simple = "tentacle" - silent = TRUE - -/obj/item/weapon/gun/magic/tentacle - name = "tentacle" - desc = "A fleshy tentacle that can stretch out and grab things or people." - icon = 'icons/obj/weapons.dmi' - icon_state = "proboscis" - item_state = null - flags = ABSTRACT | NODROP | DROPDEL | NOBLUDGEON - w_class = WEIGHT_CLASS_HUGE - ammo_type = /obj/item/ammo_casing/magic/tentacle - fire_sound = 'sound/effects/splat.ogg' - force = 0 - max_charges = 1 - throwforce = 0 //Just to be on the safe side - throw_range = 0 - throw_speed = 0 - -/obj/item/weapon/gun/magic/tentacle/New(location,silent) - ..() - if(ismob(loc)) - if(!silent) - loc.visible_message("[loc.name]\'s arm starts stretching inhumanly!", "Our arm twists and mutates, transforming it into a tentacle.", "You hear organic matter ripping and tearing!") else - loc << "You prepare to extend a tentacle." - - -/obj/item/weapon/gun/magic/tentacle/shoot_with_empty_chamber(mob/living/user as mob|obj) - user << "The [name] is not ready yet." - -/obj/item/ammo_casing/magic/tentacle - name = "tentacle" - desc = "a tentacle." - projectile_type = /obj/item/projectile/tentacle - caliber = "tentacle" - icon_state = "tentacle_end" - firing_effect_type = null - var/obj/item/weapon/gun/magic/tentacle/gun //the item that shot it - -/obj/item/ammo_casing/magic/tentacle/New(obj/item/weapon/gun/magic/tentacle/tentacle_gun) - gun = tentacle_gun - ..() - -/obj/item/ammo_casing/magic/tentacle/Destroy(obj/item/weapon/gun/magic/tentacle/tentacle_gun) - gun = null - ..() - -/obj/item/projectile/tentacle - name = "tentacle" - icon_state = "tentacle_end" - pass_flags = PASSTABLE - damage = 0 - damage_type = BRUTE - range = 8 - hitsound = 'sound/weapons/thudswoosh.ogg' - var/chain - var/obj/item/ammo_casing/magic/tentacle/source //the item that shot it - -/obj/item/projectile/tentacle/New(obj/item/ammo_casing/magic/tentacle/tentacle_casing) - source = tentacle_casing - ..() - -/obj/item/projectile/tentacle/fire(setAngle) - if(firer) - chain = firer.Beam(src, icon_state = "tentacle", time = INFINITY, maxdistance = INFINITY, beam_sleep_time = 1) - ..() - -/obj/item/projectile/tentacle/proc/reset_throw(mob/living/carbon/human/H) - if(H.in_throw_mode) - H.throw_mode_off() //Don't annoy the changeling if he doesn't catch the item - -/obj/item/projectile/tentacle/proc/tentacle_grab(mob/living/carbon/human/H, mob/living/carbon/C) - if(H.Adjacent(C)) - C.grabbedby(H) - C.grippedby(H) //instant aggro grab - -/obj/item/projectile/tentacle/proc/tentacle_stab(mob/living/carbon/human/H, mob/living/carbon/C) - if(H.Adjacent(C)) - for(var/obj/item/I in H.held_items) - if(I.is_sharp()) - C.visible_message("[H] impales [C] with [H.p_their()] [I.name]!", "[H] impales you with [H.p_their()] [I.name]!") - C.apply_damage(I.force*2, BRUTE, "chest") - H.do_item_attack_animation(C, used_item = I) - H.add_mob_blood(C) - playsound(get_turf(H),I.hitsound,75,1) - C.Weaken(4) - return - C.visible_message("[C] falls at [H]'s feet!", "You are thrown at [H]'s feet!") - C.Weaken(2) - -/obj/item/projectile/tentacle/on_hit(atom/target, blocked = 0) - qdel(source.gun) //one tentacle only unless you miss - if(blocked >= 100) - return 0 - var/mob/living/carbon/human/H = firer - if(istype(target, /obj/item)) - var/obj/item/I = target - if(!I.anchored) - firer << "You pull [I] towards yourself." - H.throw_mode_on() - I.throw_at(H, 10, 2) - . = 1 - - else if(isliving(target)) - var/mob/living/L = target - if(!L.anchored && !L.throwing)//avoid double hits - if(iscarbon(L)) - var/mob/living/carbon/C = L - switch(firer.a_intent) - if(INTENT_HELP) - C.visible_message("[L] is pulled by [H]'s tentacle!","A tentacle grabs you and pulls you towards [H]!") - C.throw_at(get_step_towards(H,C), 8, 2) - return 1 - - if(INTENT_DISARM) - var/obj/item/I = C.get_active_held_item() - if(I) - if(C.drop_item()) - C.visible_message("[I] is yanked off of [C]'s hand by [src]!","A tentacle pulls [I] away from you!") - on_hit(I) //grab the item as if you had hit it directly with the tentacle - return 1 - else - firer << "You can't seem to pry [I] off of [C]'s hands!" - return 0 - else - firer << "[C] has nothing in hand to disarm!" - return 0 - - if(INTENT_GRAB) - C.visible_message("[L] is grabbed by [H]'s tentacle!","A tentacle grabs you and pulls you towards [H]!") - C.throw_at(get_step_towards(H,C), 8, 2) - addtimer(src, "tentacle_grab", 3, TIMER_NORMAL, H, C) - return 1 - - if(INTENT_HARM) - C.visible_message("[L] is thrown towards [H] by a tentacle!","A tentacle grabs you and throws you towards [H]!") - C.throw_at(get_step_towards(H,C), 8, 2) - addtimer(src, "tentacle_stab", 3, TIMER_NORMAL, H, C) - return 1 - else - L.visible_message("[L] is pulled by [H]'s tentacle!","A tentacle grabs you and pulls you towards [H]!") - L.throw_at(get_step_towards(H,L), 8, 2) - . = 1 - -/obj/item/projectile/tentacle/Destroy() - qdel(chain) - source = null - return ..() + //user.say("Heeeeeeeeeerrre's Johnny!") + user.visible_message("[user] forces the door to open with \his [src]!", "We force the door to open.", "You hear a metal screeching sound.") + A.open(1) /***************************************\ @@ -440,7 +278,7 @@ desc = "A huge, bulky mass of pressure and temperature-resistant organic tissue, evolved to facilitate space travel." flags = STOPSPRESSUREDMAGE | NODROP | DROPDEL //Not THICKMATERIAL because it's organic tissue, so if somebody tries to inject something into it, it still ends up in your blood. (also balance but muh fluff) allowed = list(/obj/item/device/flashlight, /obj/item/weapon/tank/internals/emergency_oxygen, /obj/item/weapon/tank/internals/oxygen) - armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 0, rad = 0, fire = 90, acid = 90) //No armor at all. + armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 0, rad = 0) //No armor at all. /obj/item/clothing/suit/space/changeling/New() ..() @@ -458,7 +296,7 @@ icon_state = "lingspacehelmet" desc = "A covering of pressure and temperature-resistant organic tissue with a glass-like chitin front." flags = STOPSPRESSUREDMAGE | NODROP | DROPDEL //Again, no THICKMATERIAL. - armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 0, rad = 0, fire = 90, acid = 90) + armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 0, rad = 0) flags_cover = HEADCOVERSEYES | HEADCOVERSMOUTH /***************************************\ @@ -486,7 +324,7 @@ icon_state = "lingarmor" flags = NODROP | DROPDEL body_parts_covered = CHEST|GROIN|LEGS|FEET|ARMS|HANDS - armor = list(melee = 40, bullet = 40, laser = 40, energy = 20, bomb = 10, bio = 4, rad = 0, fire = 90, acid = 90) + armor = list(melee = 40, bullet = 40, laser = 40, energy = 20, bomb = 10, bio = 4, rad = 0) flags_inv = HIDEJUMPSUIT cold_protection = 0 heat_protection = 0 @@ -501,5 +339,5 @@ desc = "A tough, hard covering of black chitin with transparent chitin in front." icon_state = "lingarmorhelmet" flags = NODROP | DROPDEL - armor = list(melee = 40, bullet = 40, laser = 40, energy = 20, bomb = 10, bio = 4, rad = 0, fire = 90, acid = 90) + armor = list(melee = 30, bullet = 30, laser = 40, energy = 20, bomb = 10, bio = 4, rad = 0) flags_inv = HIDEEARS|HIDEHAIR|HIDEEYES|HIDEFACIALHAIR|HIDEFACE diff --git a/code/game/gamemodes/changeling/powers/panacea.dm b/code/game/gamemodes/changeling/powers/panacea.dm index dae5f89ea9..b3e02877ea 100644 --- a/code/game/gamemodes/changeling/powers/panacea.dm +++ b/code/game/gamemodes/changeling/powers/panacea.dm @@ -10,15 +10,6 @@ /obj/effect/proc_holder/changeling/panacea/sting_action(mob/user) user << "We begin cleansing impurities from our form." - var/mob/living/simple_animal/borer/B = user.has_brain_worms() - if(B) - if(B.controlling) - B.detatch() - B.leave_victim() - if(iscarbon(user)) - var/mob/living/carbon/C = user - C.vomit(0) - user << "A parasite exits our form." var/obj/item/organ/body_egg/egg = user.getorgan(/obj/item/organ/body_egg) if(egg) egg.Remove(user) diff --git a/code/game/gamemodes/changeling/powers/regenerate.dm b/code/game/gamemodes/changeling/powers/regenerate.dm deleted file mode 100644 index 6d38a58cc4..0000000000 --- a/code/game/gamemodes/changeling/powers/regenerate.dm +++ /dev/null @@ -1,32 +0,0 @@ -/obj/effect/proc_holder/changeling/regenerate - name = "Regenerate" - desc = "Allows us to regrow and restore missing external limbs, and \ - vital internal organs, as well as removing shrapnel and restoring \ - blood volume." - helptext = "Will alert nearby crew if any external limbs are \ - regenerated. Can be used while unconscious." - chemical_cost = 10 - dna_cost = 0 - req_stat = UNCONSCIOUS - always_keep = TRUE - -/obj/effect/proc_holder/changeling/regenerate/sting_action(mob/living/user) - user << "You feel an itching, both inside and \ - outside as your tissues knit and reknit." - if(iscarbon(user)) - var/mob/living/carbon/C = user - var/list/missing = C.get_missing_limbs() - if(missing.len) - playsound(user, 'sound/magic/Demon_consume.ogg', 50, 1) - C.visible_message("[user]'s missing limbs \ - reform, making a loud, grotesque sound!", - "Your limbs regrow, making a \ - loud, crunchy sound and giving you great pain!", - "You hear organic matter ripping \ - and tearing!") - C.emote("scream") - C.regenerate_limbs(1) - if(ishuman(user)) - var/mob/living/carbon/human/H = user - H.restore_blood() - H.remove_all_embedded_objects() diff --git a/code/game/gamemodes/changeling/powers/revive.dm b/code/game/gamemodes/changeling/powers/revive.dm index 653b2c6b67..048909e6ad 100644 --- a/code/game/gamemodes/changeling/powers/revive.dm +++ b/code/game/gamemodes/changeling/powers/revive.dm @@ -1,29 +1,16 @@ /obj/effect/proc_holder/changeling/revive - name = "Revive" + name = "Regenerate" desc = "We regenerate, healing all damage from our form." - helptext = "Does not regrow lost organs or a missing head." req_stat = DEAD - always_keep = TRUE - ignores_fakedeath = TRUE + always_keep = 1 //Revive from revival stasis /obj/effect/proc_holder/changeling/revive/sting_action(mob/living/carbon/user) user.status_flags &= ~(FAKEDEATH) user.tod = null user.revive(full_heal = 1) - var/list/missing = user.get_missing_limbs() - missing -= "head" // headless changelings are funny - if(missing.len) - playsound(user, 'sound/magic/Demon_consume.ogg', 50, 1) - user.visible_message("[user]'s missing limbs \ - reform, making a loud, grotesque sound!", - "Your limbs regrow, making a \ - loud, crunchy sound and giving you great pain!", - "You hear organic matter ripping \ - and tearing!") - user.emote("scream") - user.regenerate_limbs(0, list("head")) - user << "We have revived ourselves." + user.regenerate_limbs(0, list("head")) //regenerate all limbs except the head + user << "We have regenerated." user.mind.changeling.purchasedpowers -= src feedback_add_details("changeling_powers","CR") return 1 diff --git a/code/game/gamemodes/changeling/powers/shriek.dm b/code/game/gamemodes/changeling/powers/shriek.dm index 21d533212e..c573bfe493 100644 --- a/code/game/gamemodes/changeling/powers/shriek.dm +++ b/code/game/gamemodes/changeling/powers/shriek.dm @@ -23,7 +23,7 @@ for(var/obj/machinery/light/L in range(4, user)) L.on = 1 - L.break_light_tube() + L.broken() feedback_add_details("changeling_powers","RS") return 1 @@ -38,7 +38,7 @@ /obj/effect/proc_holder/changeling/dissonant_shriek/sting_action(mob/user) for(var/obj/machinery/light/L in range(5, usr)) L.on = 1 - L.break_light_tube() + L.broken() empulse(get_turf(user), 2, 5, 1) return 1 diff --git a/code/game/gamemodes/changeling/powers/spiders.dm b/code/game/gamemodes/changeling/powers/spiders.dm index c06ef9a694..78d13b2209 100644 --- a/code/game/gamemodes/changeling/powers/spiders.dm +++ b/code/game/gamemodes/changeling/powers/spiders.dm @@ -8,6 +8,9 @@ //Makes some spiderlings. Good for setting traps and causing general trouble. /obj/effect/proc_holder/changeling/spiders/sting_action(mob/user) - spawn_atom_to_turf(/obj/structure/spider/spiderling/hunter, user, 2, FALSE) + for(var/i=0, i<2, i++) + var/obj/effect/spider/spiderling/S = new(user.loc) + S.grow_as = /mob/living/simple_animal/hostile/poison/giant_spider/hunter + feedback_add_details("changeling_powers","SI") return 1 diff --git a/code/game/gamemodes/changeling/powers/strained_muscles.dm b/code/game/gamemodes/changeling/powers/strained_muscles.dm index 79c707bff0..94c96ad30b 100644 --- a/code/game/gamemodes/changeling/powers/strained_muscles.dm +++ b/code/game/gamemodes/changeling/powers/strained_muscles.dm @@ -9,14 +9,14 @@ dna_cost = 1 req_human = 1 var/stacks = 0 //Increments every 5 seconds; damage increases over time - active = 0 //Whether or not you are a hedgehog + var/active = 0 //Whether or not you are a hedgehog /obj/effect/proc_holder/changeling/strained_muscles/sting_action(mob/living/carbon/user) active = !active if(active) user << "Our muscles tense and strengthen." else - user.status_flags &= ~GOTTAGOFAST + user.status_flags -= GOTTAGOFAST user << "Our muscles relax." if(stacks >= 10) user << "We collapse in exhaustion." @@ -29,11 +29,11 @@ active = !active user << "Our muscles relax without the energy to strengthen them." user.Weaken(2) - user.status_flags &= ~GOTTAGOFAST + user.status_flags -= GOTTAGOFAST break stacks++ - //user.take_bodypart_damage(stacks * 0.03, 0) + //user.take_organ_damage(stacks * 0.03, 0) user.staminaloss += stacks * 1.3 //At first the changeling may regenerate stamina fast enough to nullify fatigue, but it will stack if(stacks == 11) //Warning message that the stacks are getting too high diff --git a/code/game/gamemodes/changeling/powers/tiny_prick.dm b/code/game/gamemodes/changeling/powers/tiny_prick.dm index 37f81af7d0..dd0a77c628 100644 --- a/code/game/gamemodes/changeling/powers/tiny_prick.dm +++ b/code/game/gamemodes/changeling/powers/tiny_prick.dm @@ -74,7 +74,7 @@ selected_dna = changeling.select_dna("Select the target DNA: ", "Target DNA") if(!selected_dna) return - if(NOTRANSSTING in selected_dna.dna.species.species_traits) + if(NOTRANSSTING in selected_dna.dna.species.specflags) user << "That DNA is not compatible with changeling retrovirus!" return ..() @@ -97,7 +97,7 @@ var/mob/living/carbon/C = target if(C.status_flags & CANWEAKEN) C.do_jitter_animation(500) - C.take_bodypart_damage(20, 0) //The process is extremely painful + C.take_organ_damage(20, 0) //The process is extremely painful target.visible_message("[target] begins to violenty convulse!","You feel a tiny prick and a begin to uncontrollably convulse!") spawn(10) @@ -138,7 +138,7 @@ add_logs(user, target, "stung", object="falso armblade sting") if(!target.drop_item()) - user << "The [target.get_active_held_item()] is stuck to their hand, you cannot grow a false armblade over it!" + user << "The [target.get_active_hand()] is stuck to their hand, you cannot grow a false armblade over it!" return if(ismonkey(target)) @@ -149,7 +149,7 @@ target.visible_message("A grotesque blade forms around [target.name]\'s arm!", "Your arm twists and mutates, transforming into a horrific monstrosity!", "You hear organic matter ripping and tearing!") playsound(target, 'sound/effects/blobattack.ogg', 30, 1) - addtimer(src, "remove_fake", 600, TIMER_NORMAL, target, blade) + addtimer(src, "remove_fake", 600, target, blade) feedback_add_details("changeling_powers","AS") return 1 @@ -162,7 +162,8 @@ "" + else if(issilicon(M)) + if(!silent) + M << "You are unable to compute this truth. Your vision glows a brilliant yellow, and all at once it comes to you. Ratvar, the Clockwork Justiciar, lies in \ + exile, derelict and forgotten in an unseen realm." + if(!is_eligible_servant(M)) + if(!M.stat) + M.visible_message("[M] whirs as it resists an outside influence!") + M << "Corrupt data purged. Resetting cortex chip to factory defaults... complete." //silicons have a custom fail message + return 0 + else if(!silent) + M << "Your world glows a brilliant yellow! All at once it comes to you. Ratvar, the Clockwork Justiciar, lies in exile, derelict and forgotten in an unseen realm." -/proc/remove_servant_of_ratvar(mob/living/L, silent = FALSE) - var/datum/antagonist/clockcultist/clock_datum = L.has_antag_datum(/datum/antagonist/clockcultist, TRUE) - if(!clock_datum) - return FALSE - clock_datum.silent_update = silent - clock_datum.on_remove() - return TRUE + if(!is_eligible_servant(M)) + if(!silent && !M.stat) + M.visible_message("[M] seems to resist an unseen force!") + M << "And yet, you somehow push it all away." + return 0 + + if(!silent) + M.visible_message("[M]'s eyes glow a blazing yellow!", \ + "Assist your new companions in their righteous efforts. Your goal is theirs, and theirs yours. You serve the Clockwork Justiciar above all else. Perform his every \ + whim without hesitation.") + ticker.mode.servants_of_ratvar += M.mind + ticker.mode.update_servant_icons_added(M.mind) + M.mind.special_role = "Servant of Ratvar" + M.languages_spoken |= RATVAR + M.languages_understood |= RATVAR + all_clockwork_mobs += M + M.update_action_buttons_icon() //because a few clockcult things are action buttons and we may be wearing/holding them for whatever reason, we need to update buttons + if(issilicon(M)) + var/mob/living/silicon/S = M + if(isrobot(S)) + var/mob/living/silicon/robot/R = S + R.UnlinkSelf() + R.emagged = 1 + R << "You have been desynced from your master AI. In addition, your onboard camera is no longer active and your safeties have been disabled." + S.laws = new/datum/ai_laws/ratvar + S.laws.associate(S) + S.update_icons() + S.show_laws() + if(istype(ticker.mode, /datum/game_mode/clockwork_cult)) + var/datum/game_mode/clockwork_cult/C = ticker.mode + C.present_tasks(M) //Memorize the objectives + return 1 + +/proc/remove_servant_of_ratvar(mob/living/M, silent = FALSE) + if(!is_servant_of_ratvar(M)) //In this way, is_servant_of_ratvar() checks the existence of ticker and minds + return 0 + if(!silent) + M.visible_message("[M] seems to have remembered their true allegiance!", \ + "A cold, cold darkness flows through your mind, extinguishing the Justiciar's light and all of your memories as his servant.") + ticker.mode.servants_of_ratvar -= M.mind + ticker.mode.update_servant_icons_removed(M.mind) + all_clockwork_mobs -= M + M.mind.memory = "" //Not sure if there's a better way to do this + M.mind.special_role = null + M.languages_spoken &= ~RATVAR + M.languages_understood &= ~RATVAR + M.update_action_buttons_icon() //because a few clockcult things are action buttons and we may be wearing/holding them, we need to update buttons + for(var/datum/action/innate/function_call/F in M.actions) //Removes any bound Ratvarian spears + qdel(F) + if(issilicon(M)) + var/mob/living/silicon/S = M + if(isrobot(S)) + var/mob/living/silicon/robot/R = S + R.emagged = initial(R.emagged) + R << "Despite your freedom from Ratvar's influence, you are still irreparably damaged and no longer possess certain functions such as AI linking." + S.make_laws() + S.update_icons() + S.show_laws() + return 1 /////////////// // GAME MODE // @@ -86,37 +149,33 @@ Credit where due: var/list/servants_of_ratvar = list() //The Enlightened servants of Ratvar var/required_escapees = 0 //How many servants need to escape, if applicable var/required_silicon_converts = 0 //How many robotic lifeforms need to be converted, if applicable - var/clockwork_objective = CLOCKCULT_GATEWAY //The objective that the servants must fulfill + var/clockwork_objective = "gateway" //The objective that the servants must fulfill var/clockwork_explanation = "Construct a Gateway to the Celestial Derelict and free Ratvar." //The description of the current objective /datum/game_mode/clockwork_cult name = "clockwork cult" config_tag = "clockwork_cult" antag_flag = ROLE_SERVANT_OF_RATVAR - required_players = 24 - required_enemies = 3 - recommended_enemies = 3 + required_players = 30 + required_enemies = 2 + recommended_enemies = 4 enemy_minimum_age = 14 protected_jobs = list("AI", "Cyborg", "Security Officer", "Warden", "Detective", "Head of Security", "Captain") //Silicons can eventually be converted restricted_jobs = list("Chaplain", "Captain") - announce_span = "brass" - announce_text = "Servants of Ratvar are trying to summon the Justiciar!\n\ - Servants: Take over the station and summon Ratvar.\n\ - Crew: Stop the servants before they can summon the Clockwork Justiciar." var/servants_to_serve = list() - var/roundstart_player_count + +/datum/game_mode/clockwork_cult/announce() + world << "The game mode is: Clockwork Cult!" + world << "Ratvar, the Clockwork Justiciar, has formed a covenant of Enlightened aboard [station_name()]." + world << "Enlightened: Serve your master so that his influence might grow." + world << "Crew: Prevent the servants of Ratvar from taking over the station." /datum/game_mode/clockwork_cult/pre_setup() if(config.protect_roles_from_antagonist) restricted_jobs += protected_jobs if(config.protect_assistant_from_antagonist) restricted_jobs += "Assistant" - var/starter_servants = 3 //Guaranteed three servants - var/number_players = num_players() - roundstart_player_count = number_players - if(number_players > 30) //plus one servant for every additional 15 players - number_players -= 30 - starter_servants += round(number_players/15) + var/starter_servants = max(1, round(num_players() / 10)) //Guaranteed one cultist - otherwise, about one cultist for every ten players while(starter_servants) var/datum/mind/servant = pick(antag_candidates) servants_to_serve += servant @@ -140,21 +199,22 @@ Credit where due: return 1 /datum/game_mode/clockwork_cult/proc/forge_clock_objectives() //Determine what objective that Ratvar's servants will fulfill - var/list/possible_objectives = list(CLOCKCULT_ESCAPE, CLOCKCULT_GATEWAY) + var/list/possible_objectives = list("escape", "gateway") var/silicons_possible = FALSE - for(var/mob/living/silicon/ai/S in living_mob_list) + for(var/mob/living/silicon/S in living_mob_list) silicons_possible = TRUE if(silicons_possible) - possible_objectives += CLOCKCULT_SILICONS + possible_objectives += "silicons" clockwork_objective = pick(possible_objectives) + clockwork_objective = "gateway" //TEMPORARY, to be removed before merge switch(clockwork_objective) - if(CLOCKCULT_ESCAPE) - required_escapees = round(max(1, roundstart_player_count / 3)) //33% of the player count must be cultists - clockwork_explanation = "Ensure that [required_escapees] servants of Ratvar escape from [station_name()]." - if(CLOCKCULT_GATEWAY) + if("escape") + required_escapees = max(1, num_players() / 3) //33% of the player count must be cultists + clockwork_explanation = "Ensure that [required_escapees] servant(s) of Ratvar escape from [station_name()]." + if("gateway") clockwork_explanation = "Construct a Gateway to the Celestial Derelict and free Ratvar." - if(CLOCKCULT_SILICONS) - clockwork_explanation = "Ensure that all active silicon-based lifeforms on [station_name()] are servants of Ratvar and Application scripture is unlocked." + if("silicons") + clockwork_explanation = "Ensure that all silicon-based lifeforms on [station_name()] are servants of Ratvar by the end of the shift." return 1 /datum/game_mode/clockwork_cult/proc/greet_servant(mob/M) //Description of their role @@ -162,31 +222,27 @@ Credit where due: return 0 var/greeting_text = "
    You are a servant of Ratvar, the Clockwork Justiciar.\n\ Rusting eternally in the Celestial Derelict, Ratvar has formed a covenant of mortals, with you as one of its members. As one of the Justiciar's servants, you are to work to the best of your \ - ability to assist in completion of His agenda. You may not know the specifics of how to do so, but luckily you have a vessel to help you learn." + ability to assist in completion of His agenda. You do not know the specifics of how to do so, but luckily you have a vessel to help you learn.
    " M << greeting_text return 1 /datum/game_mode/proc/equip_servant(mob/living/L) //Grants a clockwork slab to the mob, with one of each component if(!L || !istype(L)) - return FALSE - var/obj/item/clockwork/slab/starter/S = new/obj/item/clockwork/slab/starter(null) //start it off in null + return 0 var/slot = "At your feet" - var/list/slots = list("In your left pocket" = slot_l_store, "In your right pocket" = slot_r_store, "In your backpack" = slot_in_backpack, "On your belt" = slot_belt) if(ishuman(L)) var/mob/living/carbon/human/H = L - slot = H.equip_in_one_of_slots(S, slots) - if(slot == "In your backpack") - slot = "In your [H.back.name]" + if(H.back && istype(H.back, /obj/item/weapon/storage/backpack)) + var/obj/item/weapon/storage/backpack/B = H.back + new/obj/item/clockwork/slab/starter(B) + slot = "In your [B.name]" if(slot == "At your feet") - if(!S.forceMove(get_turf(L))) - qdel(S) - if(S && !qdeleted(S)) - L << "[slot] is a link to the halls of Reebe and your master. You may use it to perform many tasks, but also become oriented with the workings of Ratvar and how to best complete your \ - tasks. This clockwork slab will be instrumental in your triumph. Remember: you can speak discreetly with your fellow servants by using the Hierophant Network action button, \ - and you can find a concise tutorial by using the slab in-hand and selecting Recollection." - L << "Alternatively, check out the wiki page at https://tgstation13.org/wiki/Clockwork_Cult, which contains additional information." - return TRUE - return FALSE + new/obj/item/clockwork/slab/starter(get_turf(L)) + L << "[slot] is a link to the halls of Reebe and your master. You may use it to perform many tasks, but also become oriented with the workings of Ratvar and how to best complete your \ + tasks. This clockwork slab will be instrumental in your triumph. Remember: you can speak discreetly with your fellow servants by using the Hierophant Network action button, \ + and you can find a concise tutorial by using the slab in-hand and selecting Recollection." + L << "Alternatively, check out the wiki page at https://tgstation13.org/wiki/Clockwork_Cult, which contains additional information." + return 1 /datum/game_mode/clockwork_cult/proc/present_tasks(mob/living/L) //Memorizes and displays the clockwork cult's objective if(!L || !istype(L) || !L.mind) @@ -198,35 +254,25 @@ Credit where due: /datum/game_mode/clockwork_cult/proc/check_clockwork_victory() switch(clockwork_objective) - if(CLOCKCULT_ESCAPE) + if("escape") var/surviving_servants = 0 for(var/datum/mind/M in servants_of_ratvar) if(M.current && M.current.stat != DEAD && (M.current.onCentcom() || M.current.onSyndieBase())) surviving_servants++ - clockwork_explanation = "Ensure that [required_escapees] servant(s) of Ratvar escape from [station_name()].
    [surviving_servants] managed to escape!" - if(surviving_servants >= required_escapees) - ticker.news_report = CULT_ESCAPE - return TRUE - if(CLOCKCULT_SILICONS) - var/total_silicons = 0 - var/valid_silicons = 0 - for(var/mob/living/silicon/S in mob_list) //Only check robots and AIs - if(isAI(S) || iscyborg(S)) - total_silicons++ - if(is_servant_of_ratvar(S) || S.stat == DEAD) - valid_silicons++ - clockwork_explanation = "Ensure that all active silicon-based lifeforms on [station_name()] are servants of Ratvar and Application scripture is unlocked.
    \ - [valid_silicons]/[total_silicons] silicons were killed or converted!" - var/list/scripture_states = scripture_unlock_check() - if(valid_silicons >= total_silicons && scripture_states[SCRIPTURE_APPLICATION]) - ticker.news_report = CLOCK_SILICONS - return TRUE - if(CLOCKCULT_GATEWAY) - if(ratvar_awakens) - ticker.news_report = CLOCK_SUMMON - return TRUE - ticker.news_report = CULT_FAILURE - return FALSE + if(surviving_servants <= required_escapees) + return 1 + return 0 + if("silicons") + for(var/mob/living/silicon/robot/S in mob_list) //Only check robots and AIs + if(!is_servant_of_ratvar(S)) + return 0 + for(var/mob/living/silicon/ai/A in mob_list) + if(!is_servant_of_ratvar(A)) + return 0 + return 1 + if("gateway") + return ratvar_awakens + return 0 //This shouldn't ever be reached, but just in case it is /datum/game_mode/clockwork_cult/declare_completion() ..() @@ -237,31 +283,14 @@ Credit where due: if(istype(ticker.mode, /datum/game_mode/clockwork_cult)) //Possibly hacky? var/datum/game_mode/clockwork_cult/C = ticker.mode if(C.check_clockwork_victory()) - text += "Ratvar's servants have succeeded in fulfilling His goals!" - feedback_set_details("round_end_result", "win - servants completed their objective ([clockwork_objective])") + text += "Ratvar's servants have succeeded in fulfilling His goals!" + feedback_set_details("round_end_result", "win - servants summoned ratvar") else - var/half_victory = FALSE - if(clockwork_objective == CLOCKCULT_GATEWAY) - var/obj/structure/destructible/clockwork/massive/celestial_gateway/G = locate() in all_clockwork_objects - if(G) - half_victory = TRUE - if(half_victory) - text += "The crew escaped before Ratvar could rise, but the gateway was successfully constructed!" - feedback_set_details("round_end_result", "halfwin - round ended before the gateway finished") - else - text += "Ratvar's servants have failed!" - feedback_set_details("round_end_result", "loss - servants failed their objective ([clockwork_objective])") - if(clockwork_gateway_activated && clockwork_objective != CLOCKCULT_GATEWAY) - ticker.news_report = CLOCK_PROSELYTIZATION - text += "
    The servants' objective was:
    [clockwork_explanation]" - text += "
    Ratvar's servants had [clockwork_caches] Tinkerer's Caches." - text += "
    Construction Value(CV) was: [clockwork_construction_value]" - var/list/scripture_states = scripture_unlock_check() - for(var/i in scripture_states) - if(i != SCRIPTURE_DRIVER) - text += "
    [i] scripture was: [scripture_states[i] ? "UN":""]LOCKED" + text += "Ratvar's servants have failed!" + feedback_set_details("round_end_result", "loss - servants did not summon ratvar") + text += "
    The goal of the clockwork cult was: [clockwork_explanation]
    " if(servants_of_ratvar.len) - text += "
    Ratvar's servants were:" + text += "Ratvar's servants were:" for(var/datum/mind/M in servants_of_ratvar) text += printplayer(M) world << text diff --git a/code/game/gamemodes/clock_cult/clock_effect.dm b/code/game/gamemodes/clock_cult/clock_effect.dm deleted file mode 100644 index 69e973b4eb..0000000000 --- a/code/game/gamemodes/clock_cult/clock_effect.dm +++ /dev/null @@ -1,25 +0,0 @@ -//The base clockwork effect. Can have an alternate desc and will show up in the list of clockwork objects. -/obj/effect/clockwork - name = "meme machine" - desc = "Still don't know what it is." - var/clockwork_desc = "A fabled artifact from beyond the stars. Contains concentrated meme essence." //Shown to clockwork cultists instead of the normal description - icon = 'icons/effects/clockwork_effects.dmi' - icon_state = "ratvars_flame" - anchored = 1 - density = 0 - opacity = 0 - resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | UNACIDABLE | ACID_PROOF - -/obj/effect/clockwork/New() - ..() - all_clockwork_objects += src - -/obj/effect/clockwork/Destroy() - all_clockwork_objects -= src - return ..() - -/obj/effect/clockwork/examine(mob/user) - if((is_servant_of_ratvar(user) || isobserver(user)) && clockwork_desc) - desc = clockwork_desc - ..() - desc = initial(desc) \ No newline at end of file diff --git a/code/game/gamemodes/clock_cult/clock_effects/clock_overlay.dm b/code/game/gamemodes/clock_cult/clock_effects/clock_overlay.dm deleted file mode 100644 index 9098eb8e1d..0000000000 --- a/code/game/gamemodes/clock_cult/clock_effects/clock_overlay.dm +++ /dev/null @@ -1,46 +0,0 @@ -//an "overlay" used by clockwork walls and floors to appear normal to mesons. -/obj/effect/clockwork/overlay - mouse_opacity = 0 - var/atom/linked - -/obj/effect/clockwork/overlay/examine(mob/user) - if(linked) - linked.examine(user) - -/obj/effect/clockwork/overlay/ex_act() - return FALSE - -/obj/effect/clockwork/overlay/singularity_pull(S, current_size) - return - -/obj/effect/clockwork/overlay/Destroy() - if(linked) - linked = null - ..() - return QDEL_HINT_PUTINPOOL - -/obj/effect/clockwork/overlay/wall - name = "clockwork wall" - icon = 'icons/turf/walls/clockwork_wall.dmi' - icon_state = "clockwork_wall" - canSmoothWith = list(/obj/effect/clockwork/overlay/wall, /obj/structure/falsewall/brass) - smooth = SMOOTH_TRUE - layer = CLOSED_TURF_LAYER - -/obj/effect/clockwork/overlay/wall/New() - ..() - queue_smooth_neighbors(src) - addtimer(GLOBAL_PROC, "queue_smooth", 1, TIMER_NORMAL, src) - -/obj/effect/clockwork/overlay/wall/Destroy() - queue_smooth_neighbors(src) - ..() - return QDEL_HINT_QUEUE - -/obj/effect/clockwork/overlay/floor - icon = 'icons/turf/floors.dmi' - icon_state = "clockwork_floor" - layer = TURF_LAYER - -/obj/effect/clockwork/overlay/floor/bloodcult //this is used by BLOOD CULT, it shouldn't use such a path... - icon_state = "cult" \ No newline at end of file diff --git a/code/game/gamemodes/clock_cult/clock_effects/clock_sigils.dm b/code/game/gamemodes/clock_cult/clock_effects/clock_sigils.dm deleted file mode 100644 index ddc321c8ec..0000000000 --- a/code/game/gamemodes/clock_cult/clock_effects/clock_sigils.dm +++ /dev/null @@ -1,392 +0,0 @@ -//Sigils: Rune-like markings on the ground with various effects. -/obj/effect/clockwork/sigil - name = "sigil" - desc = "A strange set of markings drawn on the ground." - clockwork_desc = "A sigil of some purpose." - icon_state = "sigil" - layer = LOW_OBJ_LAYER - alpha = 50 - resistance_flags = NONE - var/affects_servants = FALSE - var/stat_affected = CONSCIOUS - var/sigil_name = "Sigil" - var/resist_string = "glows blinding white" //string for when a null rod blocks its effects, "glows [resist_string]" - -/obj/effect/clockwork/sigil/attackby(obj/item/I, mob/living/user, params) - if(I.force && !is_servant_of_ratvar(user)) - user.visible_message("[user] scatters [src] with [I]!", "You scatter [src] with [I]!") - qdel(src) - return 1 - return ..() - -/obj/effect/clockwork/sigil/attack_hand(mob/user) - if(iscarbon(user) && !user.stat && (!is_servant_of_ratvar(user) || (is_servant_of_ratvar(user) && user.a_intent == INTENT_HARM))) - user.visible_message("[user] stamps out [src]!", "You stomp on [src], scattering it into thousands of particles.") - qdel(src) - return 1 - ..() - -/obj/effect/clockwork/sigil/ex_act(severity) - visible_message("[src] scatters into thousands of particles.") - qdel(src) - -/obj/effect/clockwork/sigil/Crossed(atom/movable/AM) - ..() - if(isliving(AM)) - var/mob/living/L = AM - if(L.stat <= stat_affected) - if((!is_servant_of_ratvar(L) || (is_servant_of_ratvar(L) && affects_servants)) && L.mind && (!isdrone(L) || istype(L, /mob/living/simple_animal/drone/cogscarab))) - var/obj/item/I = L.null_rod_check() - if(I) - L.visible_message("[L]'s [I.name] [resist_string], protecting them from [src]'s effects!", \ - "Your [I.name] [resist_string], protecting you!") - return - sigil_effects(L) - -/obj/effect/clockwork/sigil/proc/sigil_effects(mob/living/L) - - -//Sigil of Transgression: Stuns the first non-servant to walk on it and flashes all nearby non_servants. Nar-Sian cultists are damaged and knocked down for a longer stun -/obj/effect/clockwork/sigil/transgression - name = "dull sigil" - desc = "A dull, barely-visible golden sigil. It's as though light was carved into the ground." - icon = 'icons/effects/clockwork_effects.dmi' - clockwork_desc = "A sigil that will stun the first non-servant to cross it. Nar-Sie's dogs will be knocked down." - icon_state = "sigildull" - color = "#FAE48C" - sigil_name = "Sigil of Transgression" - -/obj/effect/clockwork/sigil/transgression/sigil_effects(mob/living/L) - var/target_flashed = L.flash_act() - for(var/mob/living/M in viewers(5, src)) - if(!is_servant_of_ratvar(M) && M != L) - M.flash_act() - if(iscultist(L)) - L << "\"Watch your step, wretch.\"" - L.adjustBruteLoss(10) - L.Weaken(7) - L.visible_message("[src] appears around [L] in a burst of light!", \ - "[target_flashed ? "An unseen force":"The glowing sigil around you"] holds you in place!") - L.Stun(5) - PoolOrNew(/obj/effect/overlay/temp/ratvar/sigil/transgression, get_turf(src)) - qdel(src) - - -//Sigil of Submission: After a short time, converts any non-servant standing on it. Knocks down and silences them for five seconds afterwards. -/obj/effect/clockwork/sigil/submission - name = "ominous sigil" - desc = "A luminous golden sigil. Something about it really bothers you." - clockwork_desc = "A sigil that will enslave the first person to cross it, provided they remain on it for seven seconds." - icon_state = "sigilsubmission" - color = "#FAE48C" - alpha = 125 - stat_affected = UNCONSCIOUS - resist_string = "glows faintly yellow" - var/convert_time = 70 - var/glow_light = 2 //soft light - var/glow_falloff = 1 - var/delete_on_finish = TRUE - sigil_name = "Sigil of Submission" - var/glow_type - -/obj/effect/clockwork/sigil/submission/New() - ..() - SetLuminosity(glow_light,glow_falloff) - -/obj/effect/clockwork/sigil/submission/proc/post_channel(mob/living/L) - -/obj/effect/clockwork/sigil/submission/sigil_effects(mob/living/L) - L.visible_message("[src] begins to glow a piercing magenta!", "You feel something start to invade your mind...") - var/oldcolor = color - animate(src, color = "#AF0AAF", time = convert_time) - var/obj/effect/overlay/temp/ratvar/sigil/glow - if(glow_type) - glow = PoolOrNew(glow_type, get_turf(src)) - animate(glow, alpha = 255, time = convert_time) - var/I = 0 - while(I < convert_time && get_turf(L) == get_turf(src)) - I++ - sleep(1) - if(get_turf(L) != get_turf(src)) - if(glow) - qdel(glow) - animate(src, color = oldcolor, time = 20) - addtimer(src, "update_atom_colour", 20) - visible_message("[src] slowly stops glowing!") - return - post_channel(L) - if(is_eligible_servant(L)) - L << "\"You belong to me now.\"" - add_servant_of_ratvar(L) - L.Weaken(3) //Completely defenseless for about five seconds - mainly to give them time to read over the information they've just been presented with - L.Stun(3) - if(iscarbon(L)) - var/mob/living/carbon/C = L - C.silent += 5 - var/message = "[sigil_name] in [get_area(src)] [is_servant_of_ratvar(L) ? "successfully converted" : "failed to convert"]" - for(var/M in mob_list) - if(isobserver(M)) - var/link = FOLLOW_LINK(M, L) - M << "[link] [message] [L.real_name]!" - else if(is_servant_of_ratvar(M)) - if(M == L) - M << "[message] you!" - else - M << "[message] [L.real_name]!" - if(delete_on_finish) - qdel(src) - else - animate(src, color = oldcolor, time = 20) - addtimer(src, "update_atom_colour", 20) - visible_message("[src] slowly stops glowing!") - - -//Sigil of Accession: After a short time, converts any non-servant standing on it though implants. Knocks down and silences them for five seconds afterwards. -/obj/effect/clockwork/sigil/submission/accession - name = "terrifying sigil" - desc = "A luminous brassy sigil. Something about it makes you want to flee." - clockwork_desc = "A sigil that will enslave any person who crosses it, provided they remain on it for seven seconds. \n\ - It can convert a mindshielded target once before disppearing, but can convert any number of non-implanted targets." - icon_state = "sigiltransgression" - color = "#A97F1B" - alpha = 200 - glow_light = 4 //bright light - glow_falloff = 3 - delete_on_finish = FALSE - sigil_name = "Sigil of Accession" - glow_type = /obj/effect/overlay/temp/ratvar/sigil/accession - resist_string = "glows bright orange" - -/obj/effect/clockwork/sigil/submission/accession/post_channel(mob/living/L) - if(L.isloyal()) - var/mob/living/carbon/C = L - delete_on_finish = TRUE - C.visible_message("[C] visibly trembles!", \ - "[text2ratvar("You will be mine and his. This puny trinket will not stop me.")]") - for(var/obj/item/weapon/implant/mindshield/M in C.implants) - qdel(M) - - -//Sigil of Transmission: Stores power for clockwork machinery, serving as a battery. -/obj/effect/clockwork/sigil/transmission - name = "suspicious sigil" - desc = "A glowing orange sigil. The air around it feels staticky." - clockwork_desc = "A sigil that will serve as a battery for clockwork structures. Use Volt Void while standing on it to charge it." - icon_state = "sigiltransmission" - color = "#EC8A2D" - alpha = 50 - resist_string = "glows faintly" - sigil_name = "Sigil of Transmission" - affects_servants = TRUE - var/power_charge = REPLICANT_ALLOY_POWER //starts with REPLICANT_ALLOY_POWER by default - -/obj/effect/clockwork/sigil/transmission/ex_act(severity) - if(severity == 3) - modify_charge(-500) - visible_message("[src] flares a brilliant orange!") - else - ..() - -/obj/effect/clockwork/sigil/transmission/examine(mob/user) - ..() - if(is_servant_of_ratvar(user) || isobserver(user)) - user << "It is storing [ratvar_awakens ? "INFINITY":"[power_charge]"]W of power." - if(iscyborg(user)) - user << "You can recharge from the [sigil_name] by crossing it." - -/obj/effect/clockwork/sigil/transmission/sigil_effects(mob/living/L) - if(is_servant_of_ratvar(L)) - if(iscyborg(L)) - charge_cyborg(L) - else if(power_charge) - L << "You feel a slight, static shock." - -/obj/effect/clockwork/sigil/transmission/proc/charge_cyborg(mob/living/silicon/robot/cyborg) - if(!cyborg_checks(cyborg)) - return - cyborg << "You start to charge from the [sigil_name]..." - if(!do_after(cyborg, 50, target = src)) - return - if(!cyborg_checks(cyborg)) - return - var/giving_power = min(round((cyborg.cell.maxcharge - cyborg.cell.charge) * 0.02) * 50, power_charge) //give the borg either all our power or their missing power floored to 50 - if(modify_charge(giving_power)) - cyborg.visible_message("[cyborg] glows a brilliant orange!") - var/previous_color = cyborg.color - cyborg.color = list("#EC8A2D", "#EC8A2D", "#EC8A2D", rgb(0,0,0)) - var/datum/status_effect/cyborg_power_regen/CPR = cyborg.apply_status_effect(STATUS_EFFECT_POWERREGEN) - CPR.power_to_give = giving_power * 0.1 //ten ticks, restoring 10% each - animate(cyborg, color = previous_color, time = 100) - addtimer(cyborg, "update_atom_colour", 100) - -/obj/effect/clockwork/sigil/transmission/proc/cyborg_checks(mob/living/silicon/robot/cyborg) - if(!cyborg.cell) - cyborg << "You have no cell!" - return FALSE - if(!power_charge) - cyborg << "The [sigil_name] has no stored power!" - return FALSE - if(cyborg.cell.charge > cyborg.cell.maxcharge - MIN_CLOCKCULT_POWER) - cyborg << "You are already at maximum charge!" - return FALSE - if(cyborg.has_status_effect(STATUS_EFFECT_POWERREGEN)) - cyborg << "You are already regenerating power!" - return FALSE - return TRUE - -/obj/effect/clockwork/sigil/transmission/New() - ..() - update_glow() - -/obj/effect/clockwork/sigil/transmission/proc/modify_charge(amount) - if(ratvar_awakens) - update_glow() - return TRUE - if(power_charge - amount < 0) - return FALSE - power_charge -= amount - update_glow() - return TRUE - -/obj/effect/clockwork/sigil/transmission/proc/update_glow() - if(ratvar_awakens) - alpha = 255 - else - alpha = min(initial(alpha) + power_charge*0.02, 255) - if(!power_charge) - SetLuminosity(0) - else - SetLuminosity(round(alpha*0.03, 1), round(alpha*0.02, 1)) - - -//Vitality Matrix: Drains health from non-servants to heal or even revive servants. -/obj/effect/clockwork/sigil/vitality - name = "comforting sigil" - desc = "A faint blue sigil. Looking at it makes you feel protected." - clockwork_desc = "A sigil that will drain non-Servants that remain on it. Servants that remain on it will be healed if it has any vitality drained." - icon_state = "sigilvitality" - color = "#123456" - alpha = 75 - affects_servants = TRUE - stat_affected = DEAD - resist_string = "glows shimmering yellow" - sigil_name = "Vitality Matrix" - var/vitality = 0 - var/base_revive_cost = 20 - var/sigil_active = FALSE - var/animation_number = 3 //each cycle increments this by 1, at 4 it produces an animation and resets - -/obj/effect/clockwork/sigil/vitality/examine(mob/user) - ..() - if(is_servant_of_ratvar(user) || isobserver(user)) - user << "It is storing [ratvar_awakens ? "INFINITE":"[vitality]"] units of vitality." - user << "It requires at least [base_revive_cost] units of vitality to revive dead Servants, in addition to any damage the Servant has." - -/obj/effect/clockwork/sigil/vitality/sigil_effects(mob/living/L) - if((is_servant_of_ratvar(L) && L.suiciding) || sigil_active) - return - visible_message("[src] begins to glow bright blue!") - animate(src, alpha = 255, time = 10) - addtimer(src, "update_alpha", 10) - sleep(10) -//as long as they're still on the sigil and are either not a servant or they're a servant AND it has remaining vitality - while(L && (!is_servant_of_ratvar(L) || (is_servant_of_ratvar(L) && vitality)) && get_turf(L) == get_turf(src)) - sigil_active = TRUE - if(animation_number >= 4) - PoolOrNew(/obj/effect/overlay/temp/ratvar/sigil/vitality, get_turf(src)) - animation_number = 0 - animation_number++ - if(!is_servant_of_ratvar(L)) - var/vitality_drained = 0 - if(L.stat == DEAD) - vitality_drained = L.maxHealth - var/obj/effect/overlay/temp/ratvar/sigil/vitality/V = PoolOrNew(/obj/effect/overlay/temp/ratvar/sigil/vitality, get_turf(src)) - animate(V, alpha = 0, transform = matrix()*2, time = 8) - playsound(L, 'sound/magic/WandODeath.ogg', 50, 1) - L.visible_message("[L] collapses in on [L.p_them()]self as [src] flares bright blue!") - L << "\"[text2ratvar("Your life will not be wasted.")]\"" - for(var/obj/item/W in L) - if(!L.unEquip(W)) - qdel(W) - L.dust() - else - vitality_drained = L.adjustToxLoss(1.5) - if(vitality_drained) - vitality += vitality_drained - else - break - else - var/clone_to_heal = L.getCloneLoss() - var/tox_to_heal = L.getToxLoss() - var/burn_to_heal = L.getFireLoss() - var/brute_to_heal = L.getBruteLoss() - var/oxy_to_heal = L.getOxyLoss() - var/total_damage = clone_to_heal + tox_to_heal + burn_to_heal + brute_to_heal + oxy_to_heal - if(L.stat == DEAD) - var/revival_cost = base_revive_cost + total_damage - oxy_to_heal //ignores oxygen damage - if(ratvar_awakens) - revival_cost = 0 - var/mob/dead/observer/ghost = L.get_ghost(TRUE) - if(vitality >= revival_cost && (ghost || (L.mind && L.mind.active))) - if(ghost) - ghost.reenter_corpse() - L.revive(1, 1) - playsound(L, 'sound/magic/Staff_Healing.ogg', 50, 1) - L.visible_message("[L] suddenly gets back up, [L.p_their()] mouth dripping blue ichor!", \ - "\"[text2ratvar("You will be okay, child.")]\"") - vitality -= revival_cost - break - if(!total_damage) - break - var/vitality_for_cycle = min(vitality, 3) - var/vitality_used = 0 - if(ratvar_awakens) - vitality_for_cycle = 3 - - if(clone_to_heal && vitality_for_cycle) - var/healing = min(vitality_for_cycle, clone_to_heal) - vitality_for_cycle -= healing - L.adjustCloneLoss(-healing) - vitality_used += healing - - if(tox_to_heal && vitality_for_cycle) - var/healing = min(vitality_for_cycle, tox_to_heal) - vitality_for_cycle -= healing - L.adjustToxLoss(-healing) - vitality_used += healing - - if(burn_to_heal && vitality_for_cycle) - var/healing = min(vitality_for_cycle, burn_to_heal) - vitality_for_cycle -= healing - L.adjustFireLoss(-healing) - vitality_used += healing - - if(brute_to_heal && vitality_for_cycle) - var/healing = min(vitality_for_cycle, brute_to_heal) - vitality_for_cycle -= healing - L.adjustBruteLoss(-healing) - vitality_used += healing - - if(oxy_to_heal && vitality_for_cycle) - var/healing = min(vitality_for_cycle, oxy_to_heal) - vitality_for_cycle -= healing - L.adjustOxyLoss(-healing) - vitality_used += healing - - if(!ratvar_awakens) - vitality -= vitality_used - sleep(2) - - if(sigil_active) - animation_number = initial(animation_number) - sigil_active = FALSE - visible_message("[src] slowly stops glowing!") - if(sigil_active || alpha == 255) - animate(src, alpha = initial(alpha), time = 10) - addtimer(src, "update_alpha", 10) - -/obj/effect/clockwork/sigil/vitality/proc/update_alpha() - if(sigil_active) - alpha = 255 - else - alpha = initial(alpha) diff --git a/code/game/gamemodes/clock_cult/clock_effects/general_markers.dm b/code/game/gamemodes/clock_cult/clock_effects/general_markers.dm deleted file mode 100644 index d9a85bd033..0000000000 --- a/code/game/gamemodes/clock_cult/clock_effects/general_markers.dm +++ /dev/null @@ -1,57 +0,0 @@ -//massive markers for Revenant and Judgement scripture. -/obj/effect/clockwork/general_marker - name = "general marker" - desc = "Some big guy. For you." - clockwork_desc = "One of Ratvar's generals." - alpha = 200 - layer = MASSIVE_OBJ_LAYER - -/obj/effect/clockwork/general_marker/New() - ..() - animate(src, alpha = 0, time = 10) - QDEL_IN(src, 10) - -/obj/effect/clockwork/general_marker/inathneq - name = "Inath-neq, the Resonant Cogwheel" - desc = "A humanoid form blazing with blue fire. It radiates an aura of kindness and caring." - clockwork_desc = "One of Ratvar's four generals. Before her current form, Inath-neq was a powerful warrior priestess commanding the Resonant Cogs, a sect of Ratvarian warriors renowned for \ - their prowess. After a lost battle with Nar-Sian cultists, Inath-neq was struck down and stated in her dying breath, \ - \"The Resonant Cogs shall not fall silent this day, but will come together to form a wheel that shall never stop turning.\" Ratvar, touched by this, granted Inath-neq an eternal body and \ - merged her soul with those of the Cogs slain with her on the battlefield." - icon = 'icons/effects/187x381.dmi' - icon_state = "inath-neq" - pixel_x = -77 - pixel_y = -174 - -/obj/effect/clockwork/general_marker/nezbere - name = "Nezbere, the Brass Eidolon" - desc = "A towering colossus clad in nigh-impenetrable brass armor. Its gaze is stern yet benevolent, even upon you." - clockwork_desc = "One of Ratvar's four generals. Nezbere is responsible for the design, testing, and creation of everything in Ratvar's domain, and his loyalty to Ratvar knows no bounds. \ - It is said that Ratvar once asked him to destroy the plans for a weapon Nezbere had made that could have harmed him and Nezbere responded by not only destroying the plans, \ - but by taking his own life so that the device could never be replicated. Nezbere's zealotry is unmatched." - icon = 'icons/effects/340x428.dmi' - icon_state = "nezbere" - pixel_x = -154 - pixel_y = -198 - -/obj/effect/clockwork/general_marker/sevtug - name = "Sevtug, the Formless Pariah" - desc = "A sinister cloud of purple energy. Looking at it gives you a headache." - clockwork_desc = "One of Ratvar's four generals. Sevtug taught him how to manipulate minds and is one of his oldest allies. Sevtug serves Ratvar loyally out of a hope that one day, he will \ - be able to use a moment of weakness in the Justicar to usurp him, but such a day will never come. And so, he serves with dedication, if not necessarily any sort of decorum, never aware he is \ - the one being made a fool of." - icon = 'icons/effects/211x247.dmi' - icon_state = "sevtug" - pixel_x = -89 - pixel_y = -107 - -/obj/effect/clockwork/general_marker/nzcrentr - name = "Nzcrentr, the Eternal Thunderbolt" - desc = "A terrifying spiked construct crackling with limitless energy." - clockwork_desc = "One of Ratvar's four generals. Before becoming one of Ratvar's generals, Nzcrentr sook out any and all sentient life to slaughter it for sport. \ - Nzcrentr was coerced by Ratvar into entering a shell constructed by Nezbere, ostensibly made to grant Nzcrentr more power. In reality, the shell was made to trap and control it. \ - Nzcrentr now serves loyally, though even one of Nezbere's finest creations was not enough to totally eliminate its will." - icon = 'icons/effects/254x361.dmi' - icon_state = "nzcrentr" - pixel_x = -111 - pixel_y = -164 diff --git a/code/game/gamemodes/clock_cult/clock_effects/spatial_gateway.dm b/code/game/gamemodes/clock_cult/clock_effects/spatial_gateway.dm deleted file mode 100644 index 137590d1e2..0000000000 --- a/code/game/gamemodes/clock_cult/clock_effects/spatial_gateway.dm +++ /dev/null @@ -1,212 +0,0 @@ -//Spatial gateway: A usually one-way rift to another location. -/obj/effect/clockwork/spatial_gateway - name = "spatial gateway" - desc = "A gently thrumming tear in reality." - clockwork_desc = "A gateway in reality." - icon_state = "spatial_gateway" - density = 1 - luminosity = 2 - var/sender = TRUE //If this gateway is made for sending, not receiving - var/both_ways = FALSE - var/lifetime = 25 //How many deciseconds this portal will last - var/uses = 1 //How many objects or mobs can go through the portal - var/obj/effect/clockwork/spatial_gateway/linked_gateway //The gateway linked to this one - var/timerid - -/obj/effect/clockwork/spatial_gateway/New() - ..() - addtimer(src, "check_setup", 1) - -/obj/effect/clockwork/spatial_gateway/Destroy() - deltimer(timerid) - return ..() - -/obj/effect/clockwork/spatial_gateway/proc/check_setup() - if(!linked_gateway) - qdel(src) - return - if(both_ways) - clockwork_desc = "A gateway in reality. It can both send and receive objects." - else - clockwork_desc = "A gateway in reality. It can only [sender ? "send" : "receive"] objects." - timerid = QDEL_IN(src, lifetime) - -//set up a gateway with another gateway -/obj/effect/clockwork/spatial_gateway/proc/setup_gateway(obj/effect/clockwork/spatial_gateway/gatewayB, set_duration, set_uses, two_way) - if(!gatewayB || !set_duration || !uses) - return FALSE - linked_gateway = gatewayB - gatewayB.linked_gateway = src - if(two_way) - both_ways = TRUE - gatewayB.both_ways = TRUE - else - sender = TRUE - gatewayB.sender = FALSE - gatewayB.density = FALSE - lifetime = set_duration - gatewayB.lifetime = set_duration - uses = set_uses - gatewayB.uses = set_uses - return TRUE - -/obj/effect/clockwork/spatial_gateway/examine(mob/user) - ..() - if(is_servant_of_ratvar(user) || isobserver(user)) - user << "It has [uses] uses remaining." - -/obj/effect/clockwork/spatial_gateway/attack_ghost(mob/user) - if(linked_gateway) - user.forceMove(get_turf(linked_gateway)) - ..() - -/obj/effect/clockwork/spatial_gateway/attack_hand(mob/living/user) - if(!uses) - return FALSE - if(user.pulling && user.a_intent == INTENT_GRAB && isliving(user.pulling)) - var/mob/living/L = user.pulling - if(L.buckled || L.anchored || L.has_buckled_mobs()) - return FALSE - user.visible_message("[user] shoves [L] into [src]!", "You shove [L] into [src]!") - user.stop_pulling() - pass_through_gateway(L) - return TRUE - if(!user.canUseTopic(src)) - return FALSE - user.visible_message("[user] climbs through [src]!", "You brace yourself and step through [src]...") - pass_through_gateway(user) - return TRUE - -/obj/effect/clockwork/spatial_gateway/attackby(obj/item/I, mob/living/user, params) - if(istype(I, /obj/item/weapon/nullrod)) - user.visible_message("[user] dispels [src] with [I]!", "You close [src] with [I]!") - qdel(linked_gateway) - qdel(src) - return TRUE - if(istype(I, /obj/item/clockwork/slab)) - user << "\"I don't think you want to drop your slab into that\".\n\"If you really want to, try throwing it.\"" - return TRUE - if(user.drop_item() && uses) - user.visible_message("[user] drops [I] into [src]!", "You drop [I] into [src]!") - pass_through_gateway(I, TRUE) - return TRUE - return ..() - -/obj/effect/clockwork/spatial_gateway/ex_act(severity) - if(severity == 1 && uses) - uses = 0 - visible_message("[src] is disrupted!") - animate(src, alpha = 0, transform = matrix()*2, time = 10) - deltimer(timerid) - timerid = QDEL_IN(src, 10) - linked_gateway.uses = 0 - linked_gateway.visible_message("[linked_gateway] is disrupted!") - animate(linked_gateway, alpha = 0, transform = matrix()*2, time = 10) - deltimer(linked_gateway.timerid) - linked_gateway.timerid = QDEL_IN(linked_gateway, 10) - return TRUE - return FALSE - -/obj/effect/clockwork/spatial_gateway/Bumped(atom/A) - ..() - if(isliving(A) || istype(A, /obj/item)) - pass_through_gateway(A) - -/obj/effect/clockwork/spatial_gateway/proc/pass_through_gateway(atom/movable/A, no_cost) - if(!linked_gateway) - qdel(src) - return FALSE - if(!sender) - visible_message("[A] bounces off of [src]!") - return FALSE - if(!uses) - return FALSE - if(isliving(A)) - var/mob/living/user = A - user << "You pass through [src] and appear elsewhere!" - linked_gateway.visible_message("A shape appears in [linked_gateway] before emerging!") - playsound(src, 'sound/effects/EMPulse.ogg', 50, 1) - playsound(linked_gateway, 'sound/effects/EMPulse.ogg', 50, 1) - transform = matrix() * 1.5 - animate(src, transform = matrix() / 1.5, time = 10) - linked_gateway.transform = matrix() * 1.5 - animate(linked_gateway, transform = matrix() / 1.5, time = 10) - A.forceMove(get_turf(linked_gateway)) - if(!no_cost) - uses = max(0, uses - 1) - linked_gateway.uses = max(0, linked_gateway.uses - 1) - addtimer(src, "check_uses", 10) - return TRUE - -/obj/effect/clockwork/spatial_gateway/proc/check_uses() - if(!uses) - qdel(src) - qdel(linked_gateway) - -//This proc creates and sets up a gateway from invoker input. -/atom/movable/proc/procure_gateway(mob/living/invoker, time_duration, gateway_uses, two_way) - var/list/possible_targets = list() - var/list/teleportnames = list() - var/list/duplicatenamecount = list() - - for(var/obj/structure/destructible/clockwork/powered/clockwork_obelisk/O in all_clockwork_objects) - if(!O.Adjacent(invoker) && O != src && (O.z <= ZLEVEL_SPACEMAX) && O.anchored) //don't list obelisks that we're next to - var/area/A = get_area(O) - var/locname = initial(A.name) - var/resultkey = "[locname] [O.name]" - if(resultkey in teleportnames) //why the fuck did you put two obelisks in the same area - duplicatenamecount[resultkey]++ - resultkey = "[resultkey] ([duplicatenamecount[resultkey]])" - else - teleportnames.Add(resultkey) - duplicatenamecount[resultkey] = 1 - possible_targets[resultkey] = O - - for(var/mob/living/L in living_mob_list) - if(!L.stat && is_servant_of_ratvar(L) && !L.Adjacent(invoker) && (L.z <= ZLEVEL_SPACEMAX)) //People right next to the invoker can't be portaled to, for obvious reasons - var/resultkey = "[L.name] ([L.real_name])" - if(resultkey in teleportnames) - duplicatenamecount[resultkey]++ - resultkey = "[resultkey] ([duplicatenamecount[resultkey]])" - else - teleportnames.Add(resultkey) - duplicatenamecount[resultkey] = 1 - possible_targets[resultkey] = L - - if(!possible_targets.len) - invoker << "There are no other eligible targets for a Spatial Gateway!" - return FALSE - var/input_target_key = input(invoker, "Choose a target to form a rift to.", "Spatial Gateway") as null|anything in possible_targets - var/atom/movable/target = possible_targets[input_target_key] - if(!src || !target || !invoker || !invoker.canUseTopic(src, !issilicon(invoker)) || !is_servant_of_ratvar(invoker) || (istype(src, /obj/item) && invoker.get_active_held_item() != src) || !invoker.can_speak_vocal()) - return FALSE //if any of the involved things no longer exist, the invoker is stunned, too far away to use the object, or does not serve ratvar, or if the object is an item and not in the mob's active hand, fail - if(isliving(target)) - var/mob/living/L = target - if(L.stat != CONSCIOUS) - invoker << "That Servant is no longer conscious!" - return procure_gateway(invoker, time_duration, gateway_uses, two_way) //try again? - if(!is_servant_of_ratvar(L)) - invoker << "That target is no longer a Servant!" - return procure_gateway(invoker, time_duration, gateway_uses, two_way) - var/istargetobelisk = istype(target, /obj/structure/destructible/clockwork/powered/clockwork_obelisk) - var/issrcobelisk = istype(src, /obj/structure/destructible/clockwork/powered/clockwork_obelisk) - if(issrcobelisk && !anchored) - invoker << "[src] is no longer secured!" - return FALSE - if(istargetobelisk) - if(!target.anchored) - invoker << "That [target.name] is no longer secured!" - return procure_gateway(invoker, time_duration, gateway_uses, two_way) - var/obj/structure/destructible/clockwork/powered/clockwork_obelisk/CO = target - var/efficiency = CO.get_efficiency_mod() - gateway_uses = round(gateway_uses * (2 * efficiency), 1) - time_duration = round(time_duration * (2 * efficiency), 1) - invoker.visible_message("The air in front of [invoker] ripples before suddenly tearing open!", \ - "With a word, you rip open a [two_way ? "two-way":"one-way"] rift to [input_target_key]. It will last for [time_duration / 10] seconds and has [gateway_uses] use[gateway_uses > 1 ? "s" : ""].") - var/obj/effect/clockwork/spatial_gateway/S1 = new(issrcobelisk ? get_turf(src) : get_step(get_turf(invoker), invoker.dir)) - var/obj/effect/clockwork/spatial_gateway/S2 = new(istargetobelisk ? get_turf(target) : get_step(get_turf(target), target.dir)) - - //Set up the portals now that they've spawned - S1.setup_gateway(S2, time_duration, gateway_uses, two_way) - S2.visible_message("The air in front of [target] ripples before suddenly tearing open!") - return TRUE diff --git a/code/game/gamemodes/clock_cult/clock_helpers/clock_powerdrain.dm b/code/game/gamemodes/clock_cult/clock_helpers/clock_powerdrain.dm deleted file mode 100644 index bbd6a503fd..0000000000 --- a/code/game/gamemodes/clock_cult/clock_helpers/clock_powerdrain.dm +++ /dev/null @@ -1,55 +0,0 @@ -//horrifying power drain proc made for clockcult's power drain in lieu of six istypes or six for(x in view) loops -/atom/movable/proc/power_drain(clockcult_user) - return 0 - -/obj/machinery/power/apc/power_drain(clockcult_user) - if(cell && cell.charge) - playsound(src, "sparks", 50, 1) - flick("apc-spark", src) - . = min(cell.charge, 250) - cell.use(.) //Better than a power sink! - if(!cell.charge && !shorted) - shorted = 1 - visible_message("The [name]'s screen blurs with static.") - update() - update_icon() - -/obj/machinery/power/smes/power_drain(clockcult_user) - if(charge) - . = min(charge, 250) - charge -= . * 50 - if(!charge && !panel_open) - panel_open = TRUE - icon_state = "[initial(icon_state)]-o" - var/datum/effect_system/spark_spread/spks = new(get_turf(src)) - spks.set_up(10, 0, get_turf(src)) - spks.start() - visible_message("[src]'s panel flies open with a flurry of spark") - update_icon() - -/obj/item/weapon/stock_parts/cell/power_drain(clockcult_user) - if(charge) - . = min(charge, 250) - charge = use(.) - updateicon() - -/obj/machinery/light/power_drain(clockcult_user) - if(on) - playsound(src, 'sound/effects/light_flicker.ogg', 50, 1) - . = 250 - if(prob(50)) - burn_out() - -/mob/living/silicon/robot/power_drain(clockcult_user) - if((!clockcult_user || !is_servant_of_ratvar(src)) && cell && cell.charge) - . = min(cell.charge, 250) - cell.use(.) - src << "ERROR: Power loss detected!" - spark_system.start() - -/obj/mecha/power_drain(clockcult_user) - if((!clockcult_user || !occupant || occupant && !is_servant_of_ratvar(occupant)) && cell && cell.charge) - . = min(cell.charge, 250) - cell.use(.) - occupant_message("Power loss detected!") - spark_system.start() diff --git a/code/game/gamemodes/clock_cult/clock_helpers/component_helpers.dm b/code/game/gamemodes/clock_cult/clock_helpers/component_helpers.dm deleted file mode 100644 index 5a9a486efe..0000000000 --- a/code/game/gamemodes/clock_cult/clock_helpers/component_helpers.dm +++ /dev/null @@ -1,146 +0,0 @@ -//generates a component in the global component cache, either random based on lowest or a specific component -/proc/generate_cache_component(specific_component_id, atom/A) - if(!specific_component_id) - specific_component_id = get_weighted_component_id() - clockwork_component_cache[specific_component_id]++ - if(A) - PoolOrNew(get_component_animation_type(specific_component_id), get_turf(A)) - update_slab_info() - return specific_component_id - -//returns a chosen component id based on the lowest amount of that component in the global cache, the global cache plus the slab if there are caches, or the slab if there are no caches. -/proc/get_weighted_component_id(obj/item/clockwork/slab/storage_slab) - . = list() - if(storage_slab) - if(clockwork_caches) - for(var/i in clockwork_component_cache) - .[i] = max(MAX_COMPONENTS_BEFORE_RAND - LOWER_PROB_PER_COMPONENT*(clockwork_component_cache[i] + storage_slab.stored_components[i]), 1) - else - for(var/i in clockwork_component_cache) - .[i] = max(MAX_COMPONENTS_BEFORE_RAND - LOWER_PROB_PER_COMPONENT*storage_slab.stored_components[i], 1) - else - for(var/i in clockwork_component_cache) - .[i] = max(MAX_COMPONENTS_BEFORE_RAND - LOWER_PROB_PER_COMPONENT*clockwork_component_cache[i], 1) - . = pickweight(.) - -//returns a component name from a component id -/proc/get_component_name(id) - switch(id) - if(BELLIGERENT_EYE) - return "Belligerent Eye" - if(VANGUARD_COGWHEEL) - return "Vanguard Cogwheel" - if(GEIS_CAPACITOR) - return "Geis Capacitor" - if(REPLICANT_ALLOY) - return "Replicant Alloy" - if(HIEROPHANT_ANSIBLE) - return "Hierophant Ansible" - else - return null - -//returns a component acronym from a component id -/proc/get_component_acronym(id) - switch(id) - if(BELLIGERENT_EYE) - return "BE" - if(VANGUARD_COGWHEEL) - return "VC" - if(GEIS_CAPACITOR) - return "GC" - if(REPLICANT_ALLOY) - return "RA" - if(HIEROPHANT_ANSIBLE) - return "HA" - else - return null - -//returns a component id from a component name -/proc/get_component_id(name) - switch(name) - if("Belligerent Eye") - return BELLIGERENT_EYE - if("Vanguard Cogwheel") - return VANGUARD_COGWHEEL - if("Geis Capacitor") - return GEIS_CAPACITOR - if("Replicant Alloy") - return REPLICANT_ALLOY - if("Hierophant Ansible") - return HIEROPHANT_ANSIBLE - else - return null - -//returns a component spanclass from a component id -/proc/get_component_span(id) - switch(id) - if(BELLIGERENT_EYE) - return "neovgre" - if(VANGUARD_COGWHEEL) - return "inathneq" - if(GEIS_CAPACITOR) - return "sevtug" - if(REPLICANT_ALLOY) - return "nezbere" - if(HIEROPHANT_ANSIBLE) - return "nzcrentr" - else - return "brass" - -//returns a component color from a component id, but with brighter colors for the darkest -/proc/get_component_color_bright(id) - switch(id) - if(BELLIGERENT_EYE) - return "#880020" - if(REPLICANT_ALLOY) - return "#5A6068" - else - return get_component_color(id) - -//returns a component color from a component id -/proc/get_component_color(id) - switch(id) - if(BELLIGERENT_EYE) - return "#6E001A" - if(VANGUARD_COGWHEEL) - return "#1E8CE1" - if(GEIS_CAPACITOR) - return "#AF0AAF" - if(REPLICANT_ALLOY) - return "#42474D" - if(HIEROPHANT_ANSIBLE) - return "#DAAA18" - else - return "#BE8700" - -//returns a type for a floating component animation from a component id -/proc/get_component_animation_type(id) - switch(id) - if(BELLIGERENT_EYE) - return /obj/effect/overlay/temp/ratvar/component - if(VANGUARD_COGWHEEL) - return /obj/effect/overlay/temp/ratvar/component/cogwheel - if(GEIS_CAPACITOR) - return /obj/effect/overlay/temp/ratvar/component/capacitor - if(REPLICANT_ALLOY) - return /obj/effect/overlay/temp/ratvar/component/alloy - if(HIEROPHANT_ANSIBLE) - return /obj/effect/overlay/temp/ratvar/component/ansible - else - return null - -//returns a type for a component from a component id -/proc/get_component_type(id) - switch(id) - if(BELLIGERENT_EYE) - return /obj/item/clockwork/component/belligerent_eye - if(VANGUARD_COGWHEEL) - return /obj/item/clockwork/component/vanguard_cogwheel - if(GEIS_CAPACITOR) - return /obj/item/clockwork/component/geis_capacitor - if(REPLICANT_ALLOY) - return /obj/item/clockwork/component/replicant_alloy - if(HIEROPHANT_ANSIBLE) - return /obj/item/clockwork/component/hierophant_ansible - else - return null \ No newline at end of file diff --git a/code/game/gamemodes/clock_cult/clock_helpers/hierophant_network.dm b/code/game/gamemodes/clock_cult/clock_helpers/hierophant_network.dm deleted file mode 100644 index 4e4697fadc..0000000000 --- a/code/game/gamemodes/clock_cult/clock_helpers/hierophant_network.dm +++ /dev/null @@ -1,47 +0,0 @@ -//Sends a string to all servants and optionally ghosts, who will get a follow link to whatever is provided as the target. -/proc/hierophant_message(message, servantsonly, atom/target) - if(!message) - return FALSE - for(var/M in mob_list) - if(!servantsonly && isobserver(M)) - if(target) - var/link = FOLLOW_LINK(M, target) - M << "[link] [message]" - else - M << message - else if(is_servant_of_ratvar(M)) - M << message - return TRUE - -//Sends a titled message from a mob to all servants of ratvar and ghosts. -/proc/titled_hierophant_message(mob/user, message, name_span = "heavy_brass", message_span = "brass", user_title = "Servant") - if(!user || !message) - return FALSE - var/parsed_message = "[user_title ? "[user_title] ":""][findtextEx(user.name, user.real_name) ? user.name : "[user.real_name] (as [user.name])"]: \ - \"[message]\"" - hierophant_message(parsed_message, FALSE, user) - return TRUE - -//Hierophant Network action, allows a servant with it to communicate to other servants. -/datum/action/innate/hierophant - name = "Hierophant Network" - desc = "Allows you to communicate with other Servants." - button_icon_state = "hierophant" - background_icon_state = "bg_clock" - check_flags = AB_CHECK_RESTRAINED|AB_CHECK_STUNNED|AB_CHECK_CONSCIOUS - buttontooltipstyle = "clockcult" - var/title = "Servant" - var/span_for_name = "heavy_brass" - var/span_for_message = "brass" - -/datum/action/innate/hierophant/IsAvailable() - if(!is_servant_of_ratvar(owner)) - return FALSE - return ..() - -/datum/action/innate/hierophant/Activate() - var/input = stripped_input(usr, "Please enter a message to send to other servants.", "Hierophant Network", "") - if(!input || !IsAvailable()) - return - - titled_hierophant_message(owner, input, span_for_name, span_for_message, title) diff --git a/code/game/gamemodes/clock_cult/clock_helpers/proselytizer_helpers.dm b/code/game/gamemodes/clock_cult/clock_helpers/proselytizer_helpers.dm deleted file mode 100644 index 585198789f..0000000000 --- a/code/game/gamemodes/clock_cult/clock_helpers/proselytizer_helpers.dm +++ /dev/null @@ -1,320 +0,0 @@ -//For the clockwork proselytizer, this proc exists to make it easy to customize what the proselytizer does when hitting something. - -//if a valid target, returns an associated list in this format; -//list("operation_time" = 15, "new_obj_type" = /obj/structure/window/reinforced/clockwork, "alloy_cost" = 5, "spawn_dir" = dir, "dir_in_new" = TRUE) -//otherwise, return literally any non-list thing but preferably FALSE -//returning TRUE won't produce the "cannot be proselytized" message and will still prevent proselytizing - -/atom/proc/proselytize_vals(mob/living/user, obj/item/clockwork/clockwork_proselytizer/proselytizer) - return FALSE - -//Turf conversion -/turf/closed/wall/proselytize_vals(mob/living/user, obj/item/clockwork/clockwork_proselytizer/proselytizer) //four sheets of metal - return list("operation_time" = 50, "new_obj_type" = /turf/closed/wall/clockwork, "alloy_cost" = REPLICANT_WALL_TOTAL - (REPLICANT_METAL * 4), "spawn_dir" = SOUTH) - -/turf/closed/wall/mineral/proselytize_vals(mob/living/user, obj/item/clockwork/clockwork_proselytizer/proselytizer) //two sheets of metal - return list("operation_time" = 50, "new_obj_type" = /turf/closed/wall/clockwork, "alloy_cost" = REPLICANT_WALL_TOTAL - (REPLICANT_METAL * 2), "spawn_dir" = SOUTH) - -/turf/closed/wall/mineral/iron/proselytize_vals(mob/living/user, obj/item/clockwork/clockwork_proselytizer/proselytizer) //two sheets of metal, five rods - return list("operation_time" = 50, "new_obj_type" = /turf/closed/wall/clockwork, "alloy_cost" = REPLICANT_WALL_TOTAL - (REPLICANT_METAL * 2) - (REPLICANT_ROD * 5), "spawn_dir" = SOUTH) - -/turf/closed/wall/mineral/cult/proselytize_vals(mob/living/user, obj/item/clockwork/clockwork_proselytizer/proselytizer) //no metal - return list("operation_time" = 80, "new_obj_type" = /turf/closed/wall/clockwork, "alloy_cost" = REPLICANT_WALL_TOTAL, "spawn_dir" = SOUTH) - -/turf/closed/wall/shuttle/proselytize_vals(mob/living/user, obj/item/clockwork/clockwork_proselytizer/proselytizer) //two sheets of metal - return list("operation_time" = 50, "new_obj_type" = /turf/closed/wall/clockwork, "alloy_cost" = REPLICANT_WALL_TOTAL - (REPLICANT_METAL * 2), "spawn_dir" = SOUTH) - -/turf/closed/wall/r_wall/proselytize_vals(mob/living/user, obj/item/clockwork/clockwork_proselytizer/proselytizer) - return FALSE - -/turf/closed/wall/clockwork/proselytize_vals(mob/living/user, obj/item/clockwork/clockwork_proselytizer/proselytizer) - return list("operation_time" = 50, "new_obj_type" = /turf/open/floor/clockwork, "alloy_cost" = -REPLICANT_WALL_MINUS_FLOOR, "spawn_dir" = SOUTH) - -/turf/open/floor/proselytize_vals(mob/living/user, obj/item/clockwork/clockwork_proselytizer/proselytizer) - if(floor_tile == /obj/item/stack/tile/plasteel) - PoolOrNew(floor_tile, src) - make_plating() - playsound(src, 'sound/items/Crowbar.ogg', 10, 1) //clink - return list("operation_time" = 30, "new_obj_type" = /turf/open/floor/clockwork, "alloy_cost" = REPLICANT_FLOOR, "spawn_dir" = SOUTH) - -/turf/open/floor/plating/asteroid/proselytize_vals(mob/living/user, obj/item/clockwork/clockwork_proselytizer/proselytizer) - return FALSE - -/turf/open/floor/plating/ashplanet/proselytize_vals(mob/living/user, obj/item/clockwork/clockwork_proselytizer/proselytizer) - return FALSE - -/turf/open/floor/plating/lava/proselytize_vals(mob/living/user, obj/item/clockwork/clockwork_proselytizer/proselytizer) - return FALSE - -/turf/open/floor/clockwork/proselytize_vals(mob/living/user, obj/item/clockwork/clockwork_proselytizer/proselytizer) - if(is_blocked_turf(src)) - user << "Something is in the way, preventing you from proselytizing [src] into a clockwork wall." - return TRUE - return list("operation_time" = 100, "new_obj_type" = /turf/closed/wall/clockwork, "alloy_cost" = REPLICANT_WALL_MINUS_FLOOR, "spawn_dir" = SOUTH) - -//False wall conversion -/obj/structure/falsewall/proselytize_vals(mob/living/user, obj/item/clockwork/clockwork_proselytizer/proselytizer) - var/cost = REPLICANT_WALL_MINUS_FLOOR - if(ispath(mineral, /obj/item/stack/sheet/metal)) - cost -= (REPLICANT_METAL * (2 + mineral_amount)) //four sheets of metal, plus an assumption that the girder is also two - else - cost -= (REPLICANT_METAL * 2) //anything that doesn't use metal just has the girder - return list("operation_time" = 50, "new_obj_type" = /obj/structure/falsewall/brass, "alloy_cost" = cost, "spawn_dir" = SOUTH) - -/obj/structure/falsewall/iron/proselytize_vals(mob/living/user, obj/item/clockwork/clockwork_proselytizer/proselytizer) //two sheets of metal, two rods; special assumption - return list("operation_time" = 50, "new_obj_type" = /obj/structure/falsewall/brass, "alloy_cost" = REPLICANT_WALL_MINUS_FLOOR - (REPLICANT_METAL * 2) - (REPLICANT_ROD * 2), "spawn_dir" = SOUTH) - -/obj/structure/falsewall/reinforced/proselytize_vals(mob/living/user, obj/item/clockwork/clockwork_proselytizer/proselytizer) - return FALSE - -/obj/structure/falsewall/brass/proselytize_vals(mob/living/user, obj/item/clockwork/clockwork_proselytizer/proselytizer) - return FALSE - -//Metal conversion -/obj/item/stack/tile/plasteel/proselytize_vals(mob/living/user, obj/item/clockwork/clockwork_proselytizer/proselytizer) - if(source) - return FALSE - var/amount_temp = get_amount() - if(proselytizer.metal_to_alloy) - var/no_delete = FALSE - if(amount_temp < 2) - user << "You need at least 2 floor tiles to convert into alloy." - return TRUE - if(IsOdd(amount_temp)) - amount_temp-- - no_delete = TRUE - use(amount_temp) - amount_temp *= 0.5 //halve the alloy output; each tile is 0.5 alloy so this is 2 tiles to 1 alloy - return list("operation_time" = 0, "new_obj_type" = /obj/effect/overlay/temp/ratvar/beam/itemconsume, "alloy_cost" = -amount_temp, "spawn_dir" = SOUTH, "no_target_deletion" = no_delete) - if(amount_temp >= 20) - var/sheets_to_make = round(amount_temp * 0.05) //and 20 to 1 brass - var/used = sheets_to_make * 20 - user.visible_message("[user]'s [proselytizer.name] rips into [src], converting it to brass!", \ - "You convert [get_amount() - used > 0 ? "part of ":""][src] into brass...") - playsound(src, 'sound/machines/click.ogg', 50, 1) - playsound(src, 'sound/items/Deconstruct.ogg', 50, 1) - new /obj/item/stack/tile/brass(get_turf(src), sheets_to_make) - use(used) - else - user << "You need at least 20 floor tiles to convert into brass." - return TRUE - -/obj/item/stack/rods/proselytize_vals(mob/living/user, obj/item/clockwork/clockwork_proselytizer/proselytizer) - if(source) - return FALSE - if(proselytizer.metal_to_alloy) - return list("operation_time" = 0, "new_obj_type" = /obj/effect/overlay/temp/ratvar/beam/itemconsume, "alloy_cost" = -(amount*REPLICANT_ROD), "spawn_dir" = SOUTH) - if(get_amount() >= 10) - var/sheets_to_make = round(get_amount() * 0.1) - var/used = sheets_to_make * 10 - user.visible_message("[user]'s [proselytizer.name] rips into [src], converting it to brass!", \ - "You convert [get_amount() - used > 0 ? "part of ":""][src] into brass...") - playsound(src, 'sound/machines/click.ogg', 50, 1) - playsound(src, 'sound/items/Deconstruct.ogg', 50, 1) - new /obj/item/stack/tile/brass(get_turf(src), sheets_to_make) - use(used) - else - user << "You need at least 10 rods to convert into brass." - return TRUE - -/obj/item/stack/sheet/metal/proselytize_vals(mob/living/user, obj/item/clockwork/clockwork_proselytizer/proselytizer) - if(source) - return FALSE - if(proselytizer.metal_to_alloy) - return list("operation_time" = 0, "new_obj_type" = /obj/effect/overlay/temp/ratvar/beam/itemconsume, "alloy_cost" = -(amount*REPLICANT_METAL), "spawn_dir" = SOUTH) - if(get_amount() >= 5) - var/sheets_to_make = round(get_amount() * 0.2) - var/used = sheets_to_make * 5 - user.visible_message("[user]'s [proselytizer.name] rips into [src], converting it to brass!", \ - "You convert [get_amount() - used > 0 ? "part of ":""][src] into brass...") - playsound(src, 'sound/machines/click.ogg', 50, 1) - playsound(src, 'sound/items/Deconstruct.ogg', 50, 1) - new /obj/item/stack/tile/brass(get_turf(src), sheets_to_make) - use(used) - else - user << "You need at least 5 sheets of metal to convert into brass." - return TRUE - -/obj/item/stack/sheet/plasteel/proselytize_vals(mob/living/user, obj/item/clockwork/clockwork_proselytizer/proselytizer) - if(source) - return FALSE - if(proselytizer.metal_to_alloy) - return list("operation_time" = 0, "new_obj_type" = /obj/effect/overlay/temp/ratvar/beam/itemconsume, "alloy_cost" = -(amount*REPLICANT_PLASTEEL), "spawn_dir" = SOUTH) - if(get_amount() >= 2) - var/sheets_to_make = round(get_amount() * 0.5) - var/used = sheets_to_make * 2 - user.visible_message("[user]'s [proselytizer.name] rips into [src], converting it to brass!", \ - "You convert [get_amount() - used > 0 ? "part of ":""][src] into brass...") - playsound(src, 'sound/machines/click.ogg', 50, 1) - playsound(src, 'sound/items/Deconstruct.ogg', 50, 1) - new /obj/item/stack/tile/brass(get_turf(src), sheets_to_make) - use(used) - else - user << "You need at least 2 sheets of plasteel to convert into brass." - return TRUE - -//Brass directly to alloy; scarab only -/obj/item/stack/tile/brass/proselytize_vals(mob/living/user, obj/item/clockwork/clockwork_proselytizer/proselytizer) - if(source) - return FALSE - if(!proselytizer.metal_to_alloy) - return FALSE - var/prosel_cost = -amount*REPLICANT_FLOOR - return list("operation_time" = amount, "new_obj_type" = /obj/effect/overlay/temp/ratvar/beam/itemconsume, "alloy_cost" = prosel_cost, "spawn_dir" = SOUTH) - -//Airlock conversion -/obj/machinery/door/airlock/proselytize_vals(mob/living/user, obj/item/clockwork/clockwork_proselytizer/proselytizer) - var/doortype = /obj/machinery/door/airlock/clockwork - if(glass) - doortype = /obj/machinery/door/airlock/clockwork/brass - return list("operation_time" = 60, "new_obj_type" = doortype, "alloy_cost" = REPLICANT_WALL_TOTAL, "spawn_dir" = dir) - -/obj/machinery/door/airlock/clockwork/proselytize_vals(mob/living/user, obj/item/clockwork/clockwork_proselytizer/proselytizer) - return FALSE - -//Window conversion -/obj/structure/window/proselytize_vals(mob/living/user, obj/item/clockwork/clockwork_proselytizer/proselytizer) - var/windowtype = /obj/structure/window/reinforced/clockwork - var/new_dir = TRUE - var/prosel_time = 15 - var/prosel_cost = REPLICANT_FLOOR - if(fulltile) - windowtype = /obj/structure/window/reinforced/clockwork/fulltile - new_dir = FALSE - prosel_time = 30 - prosel_cost = REPLICANT_STANDARD - if(reinf) - prosel_cost -= REPLICANT_ROD - if(reinf) - prosel_cost -= REPLICANT_ROD - for(var/obj/structure/grille/G in get_turf(src)) - addtimer(proselytizer, "proselytize", 0, TIMER_NORMAL, G, user) - return list("operation_time" = prosel_time, "new_obj_type" = windowtype, "alloy_cost" = prosel_cost, "spawn_dir" = dir, "dir_in_new" = new_dir) - -/obj/structure/window/reinforced/clockwork/proselytize_vals(mob/living/user, obj/item/clockwork/clockwork_proselytizer/proselytizer) - return FALSE - -//Windoor conversion -/obj/machinery/door/window/proselytize_vals(mob/living/user, obj/item/clockwork/clockwork_proselytizer/proselytizer) - return list("operation_time" = 30, "new_obj_type" = /obj/machinery/door/window/clockwork, "alloy_cost" = REPLICANT_STANDARD, "spawn_dir" = dir, "dir_in_new" = TRUE) - -/obj/machinery/door/window/clockwork/proselytize_vals(mob/living/user, obj/item/clockwork/clockwork_proselytizer/proselytizer) - return FALSE - -//Grille conversion -/obj/structure/grille/proselytize_vals(mob/living/user, obj/item/clockwork/clockwork_proselytizer/proselytizer) - var/grilletype = /obj/structure/grille/ratvar - var/prosel_time = 15 - if(broken) - grilletype = /obj/structure/grille/ratvar/broken - prosel_time = 5 - return list("operation_time" = prosel_time, "new_obj_type" = grilletype, "alloy_cost" = 0, "spawn_dir" = dir) - -/obj/structure/grille/ratvar/proselytize_vals(mob/living/user, obj/item/clockwork/clockwork_proselytizer/proselytizer) - return FALSE - -//Girder conversion -/obj/structure/girder/proselytize_vals(mob/living/user, obj/item/clockwork/clockwork_proselytizer/proselytizer) - var/prosel_cost = REPLICANT_GEAR - (REPLICANT_METAL * 2) - if(state == GIRDER_REINF_STRUTS || state == GIRDER_REINF) - prosel_cost -= REPLICANT_PLASTEEL - return list("operation_time" = 20, "new_obj_type" = /obj/structure/destructible/clockwork/wall_gear, "alloy_cost" = prosel_cost, "spawn_dir" = SOUTH) - -//Hitting a clockwork structure will try to repair it. -/obj/structure/destructible/clockwork/proselytize_vals(mob/living/user, obj/item/clockwork/clockwork_proselytizer/proselytizer) - . = TRUE - if(!can_be_repaired) - user << "[src] cannot be repaired with a proselytizer!" - return - if(obj_integrity >= max_integrity) - user << "[src] is at maximum integrity!" - return - var/amount_to_heal = max_integrity - obj_integrity - var/healing_for_cycle = min(amount_to_heal, repair_amount) - var/alloy_required = healing_for_cycle - if(!proselytizer.can_use_alloy(RATVAR_ALLOY_CHECK)) - healing_for_cycle = min(healing_for_cycle, proselytizer.get_power_alloy()) - if(!healing_for_cycle || (!proselytizer.can_use_alloy(RATVAR_ALLOY_CHECK) && !proselytizer.can_use_alloy(healing_for_cycle))) - user << "You need at least [alloy_required] liquified alloy to start repairing [src], and at least [amount_to_heal] to fully repair it!" - return - user.visible_message("[user]'s [proselytizer.name] starts covering [src] in black liquid metal...", \ - "You start repairing [src]...") - //hugeass while because we need to re-check after the do_after - proselytizer.repairing = src - while(proselytizer && user && src && obj_integrity < max_integrity) - amount_to_heal = max_integrity - obj_integrity - if(amount_to_heal <= 0) - break - healing_for_cycle = min(amount_to_heal, repair_amount) - if(!proselytizer.can_use_alloy(RATVAR_ALLOY_CHECK)) - healing_for_cycle = min(healing_for_cycle, proselytizer.get_power_alloy()) - if(!healing_for_cycle || (!proselytizer.can_use_alloy(RATVAR_ALLOY_CHECK) && !proselytizer.can_use_alloy(healing_for_cycle)) || \ - !do_after(user, healing_for_cycle * proselytizer.speed_multiplier, target = src) || \ - !proselytizer || (!proselytizer.can_use_alloy(RATVAR_ALLOY_CHECK) && !proselytizer.can_use_alloy(healing_for_cycle))) - break - amount_to_heal = max_integrity - obj_integrity - if(amount_to_heal <= 0) - break - healing_for_cycle = min(amount_to_heal, repair_amount) - if(!proselytizer.can_use_alloy(RATVAR_ALLOY_CHECK)) - healing_for_cycle = min(healing_for_cycle, proselytizer.get_power_alloy()) - if(!healing_for_cycle || (!proselytizer.can_use_alloy(RATVAR_ALLOY_CHECK) && !proselytizer.can_use_alloy(healing_for_cycle))) - break - obj_integrity = Clamp(obj_integrity + healing_for_cycle, 0, max_integrity) - proselytizer.modify_stored_alloy(-healing_for_cycle) - playsound(src, 'sound/machines/click.ogg', 50, 1) - - if(proselytizer) - proselytizer.repairing = null - if(user) - user.visible_message("[user]'s [proselytizer.name] stops covering [src] with black liquid metal.", \ - "You finish repairing [src]. It is now at [obj_integrity]/[max_integrity] integrity.") - return - -//Hitting a tinkerer's cache will try to fill the proselytizer with alloy after trying to repair. -/obj/structure/destructible/clockwork/cache/proselytize_vals(mob/living/user, obj/item/clockwork/clockwork_proselytizer/proselytizer) - . = ..() - if(proselytizer.can_use_alloy(RATVAR_ALLOY_CHECK) || proselytizer.stored_alloy + REPLICANT_ALLOY_UNIT > proselytizer.max_alloy) - user << "[proselytizer]'s containers of liquified alloy are full!" - return - if(!anchored) - user << "You need to anchor [src] to fill your [proselytizer.name] from it!" - return - if(!clockwork_component_cache["replicant_alloy"]) - user << "There is no Replicant Alloy in the global component cache!" - return - proselytizer.refueling = TRUE - user.visible_message("[user] places the end of [proselytizer] in the hole in [src]...", \ - "You start filling [proselytizer] with liquified alloy...") - //hugeass check because we need to re-check after the do_after - while(anchored && proselytizer && !proselytizer.can_use_alloy(RATVAR_ALLOY_CHECK) && proselytizer.stored_alloy + REPLICANT_ALLOY_UNIT <= proselytizer.max_alloy && clockwork_component_cache["replicant_alloy"] \ - && do_after(user, 10, target = src) \ - && anchored && proselytizer && !proselytizer.can_use_alloy(RATVAR_ALLOY_CHECK) && proselytizer.stored_alloy + REPLICANT_ALLOY_UNIT <= proselytizer.max_alloy && clockwork_component_cache["replicant_alloy"]) - proselytizer.modify_stored_alloy(REPLICANT_ALLOY_UNIT) - clockwork_component_cache["replicant_alloy"]-- - playsound(src, 'sound/items/Deconstruct.ogg', 50, 1) - if(proselytizer) - proselytizer.refueling = FALSE - if(user) - user.visible_message("[user] removes [proselytizer] from the hole in [src], apparently satisfied.", \ - "You finish filling [proselytizer] with liquified alloy. It now contains [proselytizer.stored_alloy]/[proselytizer.max_alloy] units of liquified alloy.") - return - -//Convert shards and replicant alloy directly to liquid alloy -/obj/item/clockwork/alloy_shards/proselytize_vals(mob/living/user, obj/item/clockwork/clockwork_proselytizer/proselytizer) - return list("operation_time" = 0, "new_obj_type" = /obj/effect/overlay/temp/ratvar/beam/itemconsume, "alloy_cost" = -REPLICANT_STANDARD, "spawn_dir" = SOUTH) - -/obj/item/clockwork/alloy_shards/medium/gear_bit/large/proselytize_vals(mob/living/user, obj/item/clockwork/clockwork_proselytizer/proselytizer) - return list("operation_time" = 0, "new_obj_type" = /obj/effect/overlay/temp/ratvar/beam/itemconsume, "alloy_cost" = -(REPLICANT_ALLOY_UNIT*0.08), "spawn_dir" = SOUTH) - -/obj/item/clockwork/alloy_shards/large/proselytize_vals(mob/living/user, obj/item/clockwork/clockwork_proselytizer/proselytizer) - return list("operation_time" = 0, "new_obj_type" = /obj/effect/overlay/temp/ratvar/beam/itemconsume, "alloy_cost" = -(REPLICANT_ALLOY_UNIT*0.06), "spawn_dir" = SOUTH) - -/obj/item/clockwork/alloy_shards/medium/proselytize_vals(mob/living/user, obj/item/clockwork/clockwork_proselytizer/proselytizer) - return list("operation_time" = 0, "new_obj_type" = /obj/effect/overlay/temp/ratvar/beam/itemconsume, "alloy_cost" = -(REPLICANT_ALLOY_UNIT*0.04), "spawn_dir" = SOUTH) - -/obj/item/clockwork/alloy_shards/small/proselytize_vals(mob/living/user, obj/item/clockwork/clockwork_proselytizer/proselytizer) - return list("operation_time" = 0, "new_obj_type" = /obj/effect/overlay/temp/ratvar/beam/itemconsume, "alloy_cost" = -(REPLICANT_ALLOY_UNIT*0.02), "spawn_dir" = SOUTH) - -/obj/item/clockwork/component/replicant_alloy/proselytize_vals(mob/living/user, obj/item/clockwork/clockwork_proselytizer/proselytizer) - return list("operation_time" = 0, "new_obj_type" = /obj/effect/overlay/temp/ratvar/beam/itemconsume, "alloy_cost" = -REPLICANT_ALLOY_UNIT, "spawn_dir" = SOUTH) diff --git a/code/game/gamemodes/clock_cult/clock_helpers/ratvarian_language.dm b/code/game/gamemodes/clock_cult/clock_helpers/ratvarian_language.dm deleted file mode 100644 index 8bdd607b79..0000000000 --- a/code/game/gamemodes/clock_cult/clock_helpers/ratvarian_language.dm +++ /dev/null @@ -1,107 +0,0 @@ -/* -The Ratvarian Language - In the lore of the Servants of Ratvar, the Ratvarian tongue is a timeless language and full of power. It sounds like gibberish, much like Nar-Sie's language, but is in fact derived from -aforementioned language, and may induce miracles when spoken in the correct way with an amplifying tool (similar to runes used by the Nar-Sian cult). - - While the canon states that the language of Ratvar and his servants is incomprehensible to the unenlightened as it is a derivative of the most ancient known language, in reality it is -actually very simple. To translate a plain English sentence to Ratvar's tongue, simply move all of the letters thirteen places ahead, starting from "a" if the end of the alphabet is reached. -This cipher is known as "rot13" for "rotate 13 places" and there are many sites online that allow instant translation between English and rot13 - one of the benefits is that moving the translated -sentence thirteen places ahead changes it right back to plain English. - - There are, however, a few parts of the Ratvarian tongue that aren't typical and are implemented for fluff reasons. Some words may have graves, or hyphens (prefix and postfix), making the plain -English translation apparent but disjoined (for instance, "Orubyq zl-cbjre!" translates directly to "Behold my-power!") although this can be ignored without impacting overall quality. When -translating from Ratvar's tongue to plain English, simply remove the disjointments and use the finished sentence. This would make "Orubyq zl-cbjre!" into "Behold my power!" after removing the -abnormal spacing, hyphens, and grave accents. - -List of nuances: -- Any time the WORD "of" occurs, it is linked to the previous word by a hyphen. (i.e. "V nz-bs Ratvar." directly translates to "I am-of Ratvar.") -- Any time "th", followed by any two letters occurs, you add a grave (`) between those two letters, i.e; "Thi`s" -- In the same vein, any time "ti", followed by one letter occurs, you add a grave (`) between "i" and the letter, i.e; "Ti`me" -- Whereever "te" or "et" appear and there is another letter next to the e(i.e; "m"etal, greate"r"), add a hyphen between "e" and the letter, i.e; "M-etal", "Greate-r" -- Where "gua" appears, add a hyphen between "gu" and "a", i.e "Gu-ard" -- Where the WORD "and" appears it is linked to all surrounding words by hyphens, i.e; "Sword-and-shield" -- Where the WORD "to" appears, it is linked to the following word by a hyphen, i.e; "to-use" -- Where the WORD "my" appears, it is linked to the following word by a hyphen, i.e; "my-light" -- Although "Ratvar" translates to "Engine" in English, the word "Ratvar" is used regardless of language as it is a proper noun. - - The same rule applies to Ratvar's four generals: Nezbere (Armorer), Sevtug (Fright), Nzcrentr (Amperage), and Inath-neq (Vangu-Ard), although these words can be used in proper context if one is - not referring to the four generals and simply using the words themselves. -*/ - -//Regexes used to alter english to ratvarian style -#define RATVAR_OF_MATCH regex("(\\w)\\s(\[oO]\[fF])","g") -#define RATVAR_OF_REPLACEMENT "$1-$2" -#define RATVAR_GUA_MATCH regex("(\[gG]\[uU])(\[aA])","g") -#define RATVAR_GUA_REPLACEMENT "$1-$2" -#define RATVAR_TH_MATCH regex("(\[tT]\[hH]\\w)(\\w)","g") -#define RATVAR_TH_REPLACEMENT "$1`$2" -#define RATVAR_TI_MATCH regex("(\[tT]\[iI])(\\w)","g") -#define RATVAR_TI_REPLACEMENT "$1`$2" -#define RATVAR_ET_MATCH regex("(\\w)(\[eE]\[tT])","g") -#define RATVAR_ET_REPLACEMENT "$1-$2" -#define RATVAR_TE_MATCH regex("(\[tT]\[eE])(\\w)","g") -#define RATVAR_TE_REPLACEMENT "$1-$2" -#define RATVAR_PRE_AND_MATCH regex("(\\w)\\s(\[aA]\[nN]\[dD])","g") -#define RATVAR_PRE_AND_REPLACEMENT "$1-$2" -#define RATVAR_POST_AND_MATCH regex("(\[aA]\[nN]\[dD])\\s(\\w)","g") -#define RATVAR_POST_AND_REPLACEMENT "$1-$2" -#define RATVAR_TO_MATCH regex("(\\s)(\[tT]\[oO])\\s(\\w)","g") -#define RATVAR_TO_REPLACEMENT "$1$2-$3" -#define RATVAR_MY_MATCH regex("(\\s)(\[mM]\[yY])\\s(\\w)","g") -#define RATVAR_MY_REPLACEMENT "$1$2-$3" - -//Regexes used to remove ratvarian styling from english -#define REVERSE_RATVAR_HYPHEN_PRE_AND_MATCH regex("(\\w)-(\[aA]\[nN]\[dD])","g") //specifically structured to support -emphasis-, including with -and- -#define REVERSE_RATVAR_HYPHEN_PRE_AND_REPLACEMENT "$1 $2" -#define REVERSE_RATVAR_HYPHEN_POST_AND_MATCH regex("(\[aA]\[nN]\[dD])-(\\w)","g") -#define REVERSE_RATVAR_HYPHEN_POST_AND_REPLACEMENT "$1 $2" -#define REVERSE_RATVAR_HYPHEN_TO_MY_MATCH regex("(\[tTmM]\[oOyY])-","g") -#define REVERSE_RATVAR_HYPHEN_TO_MY_REPLACEMENT "$1 " -#define REVERSE_RATVAR_HYPHEN_TE_MATCH regex("(\[tT]\[eE])-","g") -#define REVERSE_RATVAR_HYPHEN_TE_REPLACEMENT "$1" -#define REVERSE_RATVAR_HYPHEN_ET_MATCH regex("-(\[eE]\[tT])","g") -#define REVERSE_RATVAR_HYPHEN_ET_REPLACEMENT "$1" -#define REVERSE_RATVAR_HYPHEN_GUA_MATCH regex("(\[gG]\[uU])-(\[aA])","g") -#define REVERSE_RATVAR_HYPHEN_GUA_REPLACEMENT "$1$2" -#define REVERSE_RATVAR_HYPHEN_OF_MATCH regex("-(\[oO]\[fF])","g") -#define REVERSE_RATVAR_HYPHEN_OF_REPLACEMENT " $1" - - -/proc/text2ratvar(text) //Takes english and applies ratvarian styling rules (and rot13) to it - var/ratvarian = replacetext(text, RATVAR_OF_MATCH, RATVAR_OF_REPLACEMENT) - ratvarian = replacetext(ratvarian, RATVAR_GUA_MATCH, RATVAR_GUA_REPLACEMENT) - ratvarian = replacetext(ratvarian, RATVAR_TH_MATCH, RATVAR_TH_REPLACEMENT) - ratvarian = replacetext(ratvarian, RATVAR_TI_MATCH, RATVAR_TI_REPLACEMENT) - ratvarian = replacetext(ratvarian, RATVAR_ET_MATCH, RATVAR_ET_REPLACEMENT) - ratvarian = replacetext(ratvarian, RATVAR_TE_MATCH, RATVAR_TE_REPLACEMENT) - ratvarian = replacetext(ratvarian, RATVAR_PRE_AND_MATCH, RATVAR_PRE_AND_REPLACEMENT) - ratvarian = replacetext(ratvarian, RATVAR_POST_AND_MATCH, RATVAR_POST_AND_REPLACEMENT) - ratvarian = replacetext(ratvarian, RATVAR_TO_MATCH, RATVAR_TO_REPLACEMENT) - ratvarian = replacetext(ratvarian, RATVAR_MY_MATCH, RATVAR_MY_REPLACEMENT) - return rot13(ratvarian) - -/proc/ratvar2text(ratvarian) //Reverts ravarian styling and rot13 in text. - var/text = replacetext(rot13(ratvarian), "`", "") - text = replacetext(text, REVERSE_RATVAR_HYPHEN_GUA_MATCH, REVERSE_RATVAR_HYPHEN_GUA_REPLACEMENT) - text = replacetext(text, REVERSE_RATVAR_HYPHEN_PRE_AND_MATCH, REVERSE_RATVAR_HYPHEN_PRE_AND_REPLACEMENT) - text = replacetext(text, REVERSE_RATVAR_HYPHEN_POST_AND_MATCH, REVERSE_RATVAR_HYPHEN_POST_AND_REPLACEMENT) - text = replacetext(text, REVERSE_RATVAR_HYPHEN_TO_MY_MATCH, REVERSE_RATVAR_HYPHEN_TO_MY_REPLACEMENT) - text = replacetext(text, REVERSE_RATVAR_HYPHEN_TE_MATCH, REVERSE_RATVAR_HYPHEN_TE_REPLACEMENT) - text = replacetext(text, REVERSE_RATVAR_HYPHEN_ET_MATCH, REVERSE_RATVAR_HYPHEN_ET_REPLACEMENT) - text = replacetext(text, REVERSE_RATVAR_HYPHEN_OF_MATCH, REVERSE_RATVAR_HYPHEN_OF_REPLACEMENT) - return text - -//Causes the mob or AM in question to speak a message; it assumes that the message is already translated to ratvar speech using text2ratvar() -/proc/clockwork_say(atom/movable/AM, message, whisper=FALSE) - var/list/spans = list(SPAN_ROBOT) - - var/old_languages_spoken = AM.languages_spoken - AM.languages_spoken = HUMAN //anyone who can understand HUMAN will hear weird shitty ratvar speak, otherwise it'll get starred out - if(isliving(AM)) - var/mob/living/L = AM - if(!whisper) - L.say(message, "clock", spans) - else - L.whisper(message) - else - AM.say(message) - AM.languages_spoken = old_languages_spoken diff --git a/code/game/gamemodes/clock_cult/clock_helpers/scripture_checks.dm b/code/game/gamemodes/clock_cult/clock_helpers/scripture_checks.dm deleted file mode 100644 index 9cd7b44aff..0000000000 --- a/code/game/gamemodes/clock_cult/clock_helpers/scripture_checks.dm +++ /dev/null @@ -1,48 +0,0 @@ -//returns a list of scriptures and if they're unlocked or not -/proc/scripture_unlock_check() - var/servants = 0 - var/unconverted_ai_exists = FALSE - for(var/mob/living/M in living_mob_list) - if(is_servant_of_ratvar(M) && (ishuman(M) || issilicon(M))) - servants++ - else if(isAI(M)) - unconverted_ai_exists = TRUE - . = list(SCRIPTURE_DRIVER = TRUE, SCRIPTURE_SCRIPT = FALSE, SCRIPTURE_APPLICATION = FALSE, SCRIPTURE_REVENANT = FALSE, SCRIPTURE_JUDGEMENT = FALSE) - //Drivers: always unlocked - .[SCRIPTURE_SCRIPT] = (servants >= SCRIPT_SERVANT_REQ && clockwork_caches >= SCRIPT_CACHE_REQ) - //Script: SCRIPT_SERVANT_REQ or more non-brain servants and SCRIPT_CACHE_REQ or more clockwork caches - .[SCRIPTURE_APPLICATION] = (servants >= APPLICATION_SERVANT_REQ && clockwork_caches >= APPLICATION_CACHE_REQ && clockwork_construction_value >= APPLICATION_CV_REQ) - //Application: APPLICATION_SERVANT_REQ or more non-brain servants, APPLICATION_CACHE_REQ or more clockwork caches, and at least APPLICATION_CV_REQ CV - .[SCRIPTURE_REVENANT] = (servants >= REVENANT_SERVANT_REQ && clockwork_caches >= REVENANT_CACHE_REQ && clockwork_construction_value >= REVENANT_CV_REQ) - //Revenant: REVENANT_SERVANT_REQ or more non-brain servants, REVENANT_CACHE_REQ or more clockwork caches, and at least REVENANT_CV_REQ CV - .[SCRIPTURE_JUDGEMENT] = (servants >= JUDGEMENT_SERVANT_REQ && clockwork_caches >= JUDGEMENT_CACHE_REQ && clockwork_construction_value >= JUDGEMENT_CV_REQ && !unconverted_ai_exists) - //Judgement: JUDGEMENT_SERVANT_REQ or more non-brain servants, JUDGEMENT_CACHE_REQ or more clockwork caches, at least JUDGEMENT_CV_REQ CV, and there are no living, non-servant ais - -//reports to servants when scripture is locked or unlocked -/proc/scripture_unlock_alert(list/previous_states) - . = scripture_unlock_check() - for(var/i in .) - if(.[i] != previous_states[i]) - hierophant_message("Hierophant Network: [i] Scripture has been [.[i] ? "un":""]locked.") - update_slab_info() - -/proc/update_slab_info(obj/item/clockwork/slab/set_slab) - generate_all_scripture() - for(var/s in all_scripture) - var/datum/clockwork_scripture/S = s - S.creation_update() - if(!set_slab) - for(var/obj/item/clockwork/slab/S in all_clockwork_objects) - SStgui.update_uis(S) - else - SStgui.update_uis(set_slab) - -/proc/generate_all_scripture() - if(!all_scripture.len) - for(var/V in sortList(subtypesof(/datum/clockwork_scripture), /proc/cmp_clockscripture_priority)) - var/datum/clockwork_scripture/S = new V - all_scripture += S - -//changes construction value -/proc/change_construction_value(amount) - clockwork_construction_value += amount diff --git a/code/game/gamemodes/clock_cult/clock_helpers/slab_abilities.dm b/code/game/gamemodes/clock_cult/clock_helpers/slab_abilities.dm deleted file mode 100644 index cb771b3b50..0000000000 --- a/code/game/gamemodes/clock_cult/clock_helpers/slab_abilities.dm +++ /dev/null @@ -1,321 +0,0 @@ -//The base for slab-bound/based ranged abilities -/obj/effect/proc_holder/slab - var/obj/item/clockwork/slab/slab - var/successful = FALSE - var/finished = FALSE - var/in_progress = FALSE - -/obj/effect/proc_holder/slab/remove_ranged_ability(msg) - ..() - finished = TRUE - QDEL_IN(src, 2) - -/obj/effect/proc_holder/slab/InterceptClickOn(mob/living/caller, params, atom/target) - if(..() || in_progress) - return TRUE - if(ranged_ability_user.incapacitated() || !slab || !(slab in ranged_ability_user.held_items) || target == slab) - remove_ranged_ability() - return TRUE - -//For the Geis scripture; binds a target to convert. -/obj/effect/proc_holder/slab/geis - ranged_mousepointer = 'icons/effects/geis_target.dmi' - -/obj/effect/proc_holder/slab/geis/InterceptClickOn(mob/living/caller, params, atom/target) - if(..()) - return TRUE - - var/turf/T = ranged_ability_user.loc - if(!isturf(T)) - return TRUE - - var/target_is_binding = istype(target, /obj/structure/destructible/clockwork/geis_binding) - - if((target_is_binding || isliving(target)) && ranged_ability_user.Adjacent(target)) - if(target_is_binding) - var/obj/structure/destructible/clockwork/geis_binding/GB = target - GB.repair_and_interrupt() - for(var/m in GB.buckled_mobs) - if(m) - add_logs(ranged_ability_user, m, "rebound with Geis") - successful = TRUE - else - var/mob/living/L = target - if(L.null_rod_check()) - ranged_ability_user << "\"A void weapon? Really, you expect me to be able to do anything?\"" - return TRUE - if(is_servant_of_ratvar(L)) - if(L != ranged_ability_user) - ranged_ability_user << "\"[L.p_they(TRUE)] already serve[L.p_s()] Ratvar. [text2ratvar("Perhaps [ranged_ability_user.p_theyre()] into bondage?")]\"" - return TRUE - if(L.stat == DEAD) - ranged_ability_user << "\"[L.p_theyre(TRUE)] dead, idiot.\"" - return TRUE - - if(istype(L.buckled, /obj/structure/destructible/clockwork/geis_binding)) //if they're already bound, just stun them - var/obj/structure/destructible/clockwork/geis_binding/GB = L.buckled - GB.repair_and_interrupt() - add_logs(ranged_ability_user, L, "rebound with Geis") - successful = TRUE - else - in_progress = TRUE - clockwork_say(ranged_ability_user, text2ratvar("Be bound, heathen!")) - remove_mousepointer(ranged_ability_user.client) - add_logs(ranged_ability_user, L, "bound with Geis") - if(slab.speed_multiplier >= 0.5) //excuse my debug... - ranged_ability_user.notransform = TRUE - addtimer(src, "reset_user_notransform", 5, TIMER_NORMAL, ranged_ability_user) //stop us moving for a little bit so we don't break the scripture following this - slab.busy = null - var/datum/clockwork_scripture/geis/conversion = new - conversion.slab = slab - conversion.invoker = ranged_ability_user - conversion.target = target - successful = conversion.run_scripture() - - remove_ranged_ability() - - return TRUE - -/obj/effect/proc_holder/slab/geis/proc/reset_user_notransform(mob/living/user) - if(user) - user.notransform = FALSE - -/obj/structure/destructible/clockwork/geis_binding - name = "glowing ring" - desc = "A flickering, glowing purple ring around a target." - clockwork_desc = "A binding ring around a target, preventing them from taking action while they're being converted." - max_integrity = 25 - obj_integrity = 25 - density = 0 - icon = 'icons/effects/clockwork_effects.dmi' - icon_state = "geisbinding_full" - break_message = null - break_sound = 'sound/magic/Repulse.ogg' - debris = list() - can_buckle = TRUE - buckle_lying = 0 - buckle_prevents_pull = TRUE - var/resisting = FALSE - var/mob_layer = MOB_LAYER - -/obj/structure/destructible/clockwork/geis_binding/examine(mob/user) - icon_state = "geisbinding_full" - ..() - icon_state = "geisbinding" - -/obj/structure/destructible/clockwork/geis_binding/attack_hand(mob/living/user) - return - -/obj/structure/destructible/clockwork/geis_binding/emp_act(severity) - PoolOrNew(/obj/effect/overlay/temp/emp, loc) - qdel(src) - -/obj/structure/destructible/clockwork/geis_binding/post_buckle_mob(mob/living/M) - if(M.buckled == src) - desc = "A flickering, glowing purple ring around [M]." - clockwork_desc = "A binding ring around [M], preventing [M.p_them()] from taking action while [M.p_theyre()] being converted." - icon_state = "geisbinding" - mob_layer = M.layer - layer = M.layer - 0.01 - var/image/GB = new('icons/effects/clockwork_effects.dmi', src, "geisbinding_top", M.layer + 0.01) - add_overlay(GB) - for(var/obj/item/I in M.held_items) - M.unEquip(I) - for(var/i in M.get_empty_held_indexes()) - var/obj/item/geis_binding/B = new(M) - M.put_in_hands(B, i) - M.regenerate_icons() - M.visible_message("A [name] appears around [M]!", \ - "A [name] appears around you!\nResist!") - else - var/obj/effect/overlay/temp/ratvar/geis_binding/G = PoolOrNew(/obj/effect/overlay/temp/ratvar/geis_binding, M.loc) - var/obj/effect/overlay/temp/ratvar/geis_binding/T = PoolOrNew(/obj/effect/overlay/temp/ratvar/geis_binding/top, M.loc) - G.layer = mob_layer - 0.01 - T.layer = mob_layer + 0.01 - G.alpha = alpha - T.alpha = alpha - animate(G, transform = matrix()*2, alpha = 0, time = 8, easing = EASE_OUT) - animate(T, transform = matrix()*2, alpha = 0, time = 8, easing = EASE_OUT) - M.visible_message("[src] snaps into glowing pieces and dissipates!") - for(var/obj/item/geis_binding/GB in M.held_items) - M.unEquip(GB, TRUE) - -/obj/structure/destructible/clockwork/geis_binding/relaymove(mob/user, direction) - if(isliving(user)) - var/mob/living/L = user - L.resist() - -/obj/structure/destructible/clockwork/geis_binding/play_attack_sound(damage_amount, damage_type = BRUTE, damage_flag = 0) - playsound(src, 'sound/effects/EMPulse.ogg', 50, 1) - -/obj/structure/destructible/clockwork/geis_binding/take_damage(damage_amount, damage_type = BRUTE, damage_flag = 0, sound_effect = 1, attack_dir) - . = ..() - if(.) - update_icon() - -/obj/structure/destructible/clockwork/geis_binding/update_icon() - alpha = min(initial(alpha) + ((obj_integrity - max_integrity) * 5), 255) - -/obj/structure/destructible/clockwork/geis_binding/proc/repair_and_interrupt() - obj_integrity = max_integrity - update_icon() - for(var/m in buckled_mobs) - var/mob/living/L = m - if(L) - L.Stun(1, 1, 1) - visible_message("[src] flares brightly!") - var/obj/effect/overlay/temp/ratvar/geis_binding/G1 = PoolOrNew(/obj/effect/overlay/temp/ratvar/geis_binding, loc) - var/obj/effect/overlay/temp/ratvar/geis_binding/G2 = PoolOrNew(/obj/effect/overlay/temp/ratvar/geis_binding, loc) - var/obj/effect/overlay/temp/ratvar/geis_binding/T1 = PoolOrNew(/obj/effect/overlay/temp/ratvar/geis_binding/top, loc) - var/obj/effect/overlay/temp/ratvar/geis_binding/T2 = PoolOrNew(/obj/effect/overlay/temp/ratvar/geis_binding/top, loc) - G1.layer = mob_layer - 0.01 - G2.layer = mob_layer - 0.01 - T1.layer = mob_layer + 0.01 - T2.layer = mob_layer + 0.01 - animate(G1, pixel_y = pixel_y + 9, alpha = 0, time = 8, easing = EASE_IN) - animate(G2, pixel_y = pixel_y - 9, alpha = 0, time = 8, easing = EASE_IN) - animate(T1, pixel_y = pixel_y + 9, alpha = 0, time = 8, easing = EASE_IN) - animate(T2, pixel_y = pixel_y - 9, alpha = 0, time = 8, easing = EASE_IN) - -/obj/structure/destructible/clockwork/geis_binding/user_unbuckle_mob(mob/living/buckled_mob, mob/user) - if(buckled_mob == user) - if(!resisting) - resisting = TRUE - user.visible_message("[user] starts struggling against [src]...", "You start breaking out of [src]...") - while(do_after(user, 10, target = src) && resisting && obj_integrity) - if(obj_integrity - 5 <= 0) - user.visible_message("[user] breaks [src]!", "You break [src]!") - take_damage(5) - return user - take_damage(5) - resisting = FALSE - else - return ..() - -/obj/item/geis_binding - name = "glowing ring" - desc = "A flickering ring preventing you from holding items." - force = 0 - icon = 'icons/effects/clockwork_effects.dmi' - icon_state = "geisbinding_full" - flags = NODROP|ABSTRACT|DROPDEL|NOBLUDGEON - -/obj/item/geis_binding/afterattack(atom/target, mob/living/user, proximity_flag, params) - user.resist() - -//For the Sentinel's Compromise scripture; heals a target servant. -/obj/effect/proc_holder/slab/compromise - ranged_mousepointer = 'icons/effects/compromise_target.dmi' - -/obj/effect/proc_holder/slab/compromise/InterceptClickOn(mob/living/caller, params, atom/target) - if(..()) - return TRUE - - var/turf/T = ranged_ability_user.loc - if(!isturf(T)) - return TRUE - - if(isliving(target) && (target in view(7, get_turf(ranged_ability_user)))) - var/mob/living/L = target - if(!is_servant_of_ratvar(L)) - ranged_ability_user << "\"[L] does not yet serve Ratvar.\"" - return TRUE - if(L.stat == DEAD) - ranged_ability_user << "\"[L.p_they(TRUE)] [L.p_are()] dead. [text2ratvar("Oh, child. To have your life cut short...")]\"" - return TRUE - - var/brutedamage = L.getBruteLoss() - var/burndamage = L.getFireLoss() - var/totaldamage = brutedamage + burndamage - if(!totaldamage && (!L.reagents || !L.reagents.has_reagent("holywater"))) - ranged_ability_user << "\"[L] is unhurt and untainted.\"" - return TRUE - var/targetturf = get_turf(L) - if(totaldamage) - L.adjustBruteLoss(-brutedamage) - L.adjustFireLoss(-burndamage) - L.adjustToxLoss(totaldamage * 0.5) - var/healseverity = max(round(totaldamage*0.05, 1), 1) //shows the general severity of the damage you just healed, 1 glow per 20 - for(var/i in 1 to healseverity) - PoolOrNew(/obj/effect/overlay/temp/heal, list(targetturf, "#1E8CE1")) - clockwork_say(ranged_ability_user, text2ratvar("Mend wounded flesh!")) - add_logs(ranged_ability_user, L, "healed with Sentinel's Compromise") - else - clockwork_say(ranged_ability_user, text2ratvar("Purge foul darkness!")) - add_logs(ranged_ability_user, L, "purged of holy water with Sentinel's Compromise") - ranged_ability_user << "You bathe [L == ranged_ability_user ? "yourself":"[L]"] in Inath-neq's power!" - L.visible_message("A blue light washes over [L], mending [L.p_their()] bruises and burns!", \ - "You feel Inath-neq's power healing your wounds, but a deep nausea overcomes you!") - playsound(targetturf, 'sound/magic/Staff_Healing.ogg', 50, 1) - - if(L.reagents && L.reagents.has_reagent("holywater")) - L.reagents.remove_reagent("holywater", 1000) - L << "Ratvar's light flares, banishing the darkness. Your devotion remains intact!" - - remove_ranged_ability() - - return TRUE - -//For the cyborg Linked Vanguard scripture, grants you and a nearby ally Vanguard -/obj/effect/proc_holder/slab/vanguard - ranged_mousepointer = 'icons/effects/vanguard_target.dmi' - -/obj/effect/proc_holder/slab/vanguard/InterceptClickOn(mob/living/caller, params, atom/target) - if(..()) - return TRUE - - var/turf/T = ranged_ability_user.loc - if(!isturf(T)) - return TRUE - - if(isliving(target) && (target in view(7, get_turf(ranged_ability_user)))) - var/mob/living/L = target - if(!is_servant_of_ratvar(L)) - ranged_ability_user << "\"[L] does not yet serve Ratvar.\"" - return TRUE - if(L.stat == DEAD) - ranged_ability_user << "\"[L.p_they(TRUE)] [L.p_are()] dead. [text2ratvar("Oh, child. To have your life cut short...")]\"" - return TRUE - if(islist(L.stun_absorption) && L.stun_absorption["vanguard"] && L.stun_absorption["vanguard"]["end_time"] > world.time) - ranged_ability_user << "\"[L.p_they(TRUE)] [L.p_are()] already shielded by a Vanguard.\"" - return TRUE - - if(L == ranged_ability_user) - for(var/mob/living/LT in spiral_range(7, T)) - if(LT.stat == DEAD || !is_servant_of_ratvar(LT) || LT == ranged_ability_user || !(LT in view(7, get_turf(ranged_ability_user))) || \ - (islist(LT.stun_absorption) && LT.stun_absorption["vanguard"] && LT.stun_absorption["vanguard"]["end_time"] > world.time)) - continue - L = LT - break - - L.apply_status_effect(STATUS_EFFECT_VANGUARD) - ranged_ability_user.apply_status_effect(STATUS_EFFECT_VANGUARD) - - clockwork_say(ranged_ability_user, text2ratvar("Shield us from darkness!")) - - remove_ranged_ability() - - return TRUE - -//For the cyborg Judicial Marker scripture, places a judicial marker -/obj/effect/proc_holder/slab/judicial - ranged_mousepointer = 'icons/effects/visor_reticule.dmi' - -/obj/effect/proc_holder/slab/judicial/InterceptClickOn(mob/living/caller, params, atom/target) - if(..()) - return TRUE - - var/turf/T = ranged_ability_user.loc - if(!isturf(T)) - return TRUE - - if(target in view(7, get_turf(ranged_ability_user))) - clockwork_say(ranged_ability_user, text2ratvar("Kneel, heathens!")) - ranged_ability_user.visible_message("[ranged_ability_user]'s eyes fire a stream of energy at [target], creating a strange mark!", \ - "You direct the judicial force to [target].") - var/turf/targetturf = get_turf(target) - new/obj/effect/clockwork/judicial_marker(targetturf, ranged_ability_user) - add_logs(ranged_ability_user, targetturf, "created a judicial marker") - remove_ranged_ability() - - return TRUE diff --git a/code/game/gamemodes/clock_cult/clock_item.dm b/code/game/gamemodes/clock_cult/clock_item.dm deleted file mode 100644 index 66500d4ee5..0000000000 --- a/code/game/gamemodes/clock_cult/clock_item.dm +++ /dev/null @@ -1,24 +0,0 @@ -//The base clockwork item. Can have an alternate desc and will show up in the list of clockwork objects. -/obj/item/clockwork - name = "meme blaster" - desc = "What the fuck is this? It looks kinda like a frog." - resistance_flags = FIRE_PROOF | ACID_PROOF - var/clockwork_desc = "A fabled artifact from beyond the stars. Contains concentrated meme essence." //Shown to clockwork cultists instead of the normal description - icon = 'icons/obj/clockwork_objects.dmi' - icon_state = "rare_pepe" - w_class = WEIGHT_CLASS_SMALL - -/obj/item/clockwork/New() - ..() - ratvar_act() - all_clockwork_objects += src - -/obj/item/clockwork/Destroy() - all_clockwork_objects -= src - return ..() - -/obj/item/clockwork/examine(mob/user) - if((is_servant_of_ratvar(user) || isobserver(user)) && clockwork_desc) - desc = clockwork_desc - ..() - desc = initial(desc) diff --git a/code/game/gamemodes/clock_cult/clock_items.dm b/code/game/gamemodes/clock_cult/clock_items.dm new file mode 100644 index 0000000000..a4d2bd5c0f --- /dev/null +++ b/code/game/gamemodes/clock_cult/clock_items.dm @@ -0,0 +1,1036 @@ +/obj/item/clockwork + name = "meme blaster" + desc = "What the fuck is this? It looks kinda like a frog." + var/clockwork_desc = "A fabled artifact from beyond the stars. Contains concentrated meme essence." //Shown to clockwork cultists instead of the normal description + icon = 'icons/obj/clockwork_objects.dmi' + icon_state = "rare_pepe" + w_class = 2 + +/obj/item/clockwork/New() + ..() + all_clockwork_objects += src + +/obj/item/clockwork/Destroy() + all_clockwork_objects -= src + return ..() + +/obj/item/clockwork/examine(mob/user) + if((is_servant_of_ratvar(user) || isobserver(user)) && clockwork_desc) + desc = clockwork_desc + ..() + desc = initial(desc) + +/obj/item/clockwork/slab //Clockwork slab: The most important tool in Ratvar's arsenal. Allows scripture recital, tutorials, and generates components. + name = "clockwork slab" + desc = "A strange metal tablet. A clock in the center turns around and around." + clockwork_desc = "A link between the Celestial Derelict and the mortal plane. Contains limitless knowledge, fabricates components, and outputs a stream of information that only a trained eye can detect." + icon_state = "dread_ipad" + slot_flags = SLOT_BELT + w_class = 2 + var/list/stored_components = list("belligerent_eye" = 0, "vanguard_cogwheel" = 0, "guvax_capacitor" = 0, "replicant_alloy" = 0, "hierophant_ansible" = 0) + var/busy //If the slab is currently being used by something + var/production_time = 0 + var/no_cost = FALSE //If the slab is admin-only and needs no components and has no scripture locks + var/nonhuman_usable = FALSE //if the slab can be used by nonhumans, defaults to off + var/produces_components = TRUE //if it produces components at all + actions_types = list(/datum/action/item_action/hierophant) + +/obj/item/clockwork/slab/starter + stored_components = list("belligerent_eye" = 1, "vanguard_cogwheel" = 1, "guvax_capacitor" = 1, "replicant_alloy" = 1, "hierophant_ansible" = 1) + +/obj/item/clockwork/slab/internal //an internal motor for mobs running scripture + name = "scripture motor" + no_cost = TRUE + produces_components = FALSE + +/obj/item/clockwork/slab/scarab + nonhuman_usable = TRUE + +/obj/item/clockwork/slab/debug + no_cost = TRUE + nonhuman_usable = TRUE + +/obj/item/clockwork/slab/debug/attack_hand(mob/living/user) + ..() + if(!is_servant_of_ratvar(user)) + add_servant_of_ratvar(user) + +/obj/item/clockwork/slab/New() + ..() + START_PROCESSING(SSobj, src) + production_time = world.time + SLAB_PRODUCTION_TIME + +/obj/item/clockwork/slab/Destroy() + STOP_PROCESSING(SSobj, src) + return ..() + +/obj/item/clockwork/slab/process() + if(!produces_components) + STOP_PROCESSING(SSobj, src) + return + if(production_time > world.time) + return + production_time = world.time + SLAB_PRODUCTION_TIME + var/mob/living/L + if(isliving(loc)) + L = loc + else if(istype(loc, /obj/item/weapon/storage)) + var/obj/item/weapon/storage/W = loc + if(isliving(W.loc)) //Only goes one level down - otherwise it won't produce components + L = W.loc + if(L) + var/component_to_generate = get_weighted_component_id(src) //more likely to generate components that we have less of + stored_components[component_to_generate]++ + for(var/obj/item/clockwork/slab/S in L.GetAllContents()) //prevent slab abuse today + if(L == src) + continue + S.production_time = world.time + SLAB_PRODUCTION_TIME + L << "Your slab clunks as it produces a new component." + +/obj/item/clockwork/slab/ui_action_click(mob/user, actiontype) + show_hierophant(user) + +/obj/item/clockwork/slab/attackby(obj/item/I, mob/user, params) + if(istype(I, /obj/item/clockwork/component) && is_servant_of_ratvar(user)) + var/obj/item/clockwork/component/C = I + if(!C.component_id) + return 0 + user.visible_message("[user] inserts [C] into [src].", "You insert [C] into [src], where it is added to the global cache.") + clockwork_component_cache[C.component_id]++ + user.drop_item() + qdel(C) + return 1 + else + return ..() + +/obj/item/clockwork/slab/attack_self(mob/living/user) + if(iscultist(user)) + user << "\"You reek of blood. You've got a lot of nerve to even look at that slab.\"" + user.visible_message("A sizzling sound comes from [user]'s hands!", "[src] suddenly grows extremely hot in your hands!") + playsound(get_turf(user), 'sound/weapons/sear.ogg', 50, 1) + user.drop_item() + user.emote("scream") + user.apply_damage(5, BURN, "l_arm") + user.apply_damage(5, BURN, "r_arm") + return 0 + if(!is_servant_of_ratvar(user)) + user << "The information on [src]'s display shifts rapidly. After a moment, your head begins to pound, and you tear your eyes away." + user.confused += 5 + user.dizziness += 5 + return 0 + if(busy) + user << "[src] refuses to work, displaying the message: \"[busy]!\"" + return 0 + if(!nonhuman_usable && !ishuman(user)) + user << "[src] hums quietly in your hands, but you can't seem to get it to do anything." + return 0 + access_display(user) + +/obj/item/clockwork/slab/proc/access_display(mob/living/user) + if(!is_servant_of_ratvar(user)) + return 0 + var/action = input(user, "Among the swathes of information, you see...", "[src]") as null|anything in list("Recital", "Records", "Recollection") + if(!action || !user.canUseTopic(src)) + return 0 + switch(action) + if("Recital") + if(user.get_active_hand() != src) + user << "You need to hold the slab to recite scripture!" + return + recite_scripture(user) + if("Records") + show_stats(user) + if("Recollection") + show_guide(user) + return 1 + +/obj/item/clockwork/slab/proc/recite_scripture(mob/living/user) + var/list/tiers_of_scripture = list("Drivers") + tiers_of_scripture += "Scripts[ratvar_awakens || scripture_unlock_check(SCRIPTURE_SCRIPT) || no_cost ? "" : " \[LOCKED\]"]" + tiers_of_scripture += "Applications[ratvar_awakens || scripture_unlock_check(SCRIPTURE_APPLICATION) || no_cost ? "" : " \[LOCKED\]"]" + tiers_of_scripture += "Revenant[ratvar_awakens || scripture_unlock_check(SCRIPTURE_REVENANT) || no_cost ? "" : " \[LOCKED\]"]" + tiers_of_scripture += "Judgement[ratvar_awakens || scripture_unlock_check(SCRIPTURE_JUDGEMENT) || no_cost ? "" : " \[LOCKED\]"]" + var/scripture_tier = input(user, "Choose a category of scripture to recite.", "[src]") as null|anything in tiers_of_scripture + if(!scripture_tier || !user.canUseTopic(src)) + return 0 + var/list/available_scriptures = list() + var/datum/clockwork_scripture/scripture_to_recite + var/tier_to_browse + switch(scripture_tier) + if("Drivers") + tier_to_browse = SCRIPTURE_DRIVER + if("Scripts") + tier_to_browse = SCRIPTURE_SCRIPT + if("Applications") + tier_to_browse = SCRIPTURE_APPLICATION + if("Revenant") + tier_to_browse = SCRIPTURE_REVENANT + if("Judgement") + tier_to_browse = SCRIPTURE_JUDGEMENT + if(!tier_to_browse) + user << "That section of scripture is too powerful right now!" + return 0 + for(var/S in subtypesof(/datum/clockwork_scripture)) + var/datum/clockwork_scripture/C = S + if(initial(C.tier) == tier_to_browse) + available_scriptures += "[initial(C.name)] ([initial(C.descname)])" + if(!available_scriptures.len) + return 0 + var/chosen_scripture = input(user, "Choose a piece of scripture to recite.", "[src]") as null|anything in available_scriptures + if(!chosen_scripture || !user.canUseTopic(src)) + return 0 + for(var/S in subtypesof(/datum/clockwork_scripture)) + var/datum/clockwork_scripture/C = S + if("[initial(C.name)] ([initial(C.descname)])" == chosen_scripture) + scripture_to_recite = new C + if(!scripture_to_recite || user.get_active_hand() != src) + return 0 + scripture_to_recite.slab = src + scripture_to_recite.invoker = user + scripture_to_recite.run_scripture() + return 1 + +/obj/item/clockwork/slab/proc/show_stats(mob/living/user) //A bit barebones, but there really isn't any more needed + var/servants = 0 + var/validservants = 0 + for(var/mob/living/L in living_mob_list) + if(is_servant_of_ratvar(L)) + servants++ + if(ishuman(L) || issilicon(L)) + validservants++ + user << "State of the Enlightened" + user << "Total servants: [servants]" + user << "Servants valid for scripture unlock: [validservants]" + user << "Total construction value: [clockwork_construction_value]" + user << "Total tinkerer's caches: [clockwork_caches]" + user << "Total tinkerer's daemons: [clockwork_daemons] ([servants / 5 < clockwork_daemons ? "DISABLED: Too few servants (5 servants per daemon)!" : "Functioning Normally"])" + user << "Nezbere: [!clockwork_generals_invoked["nezbere"] <= world.time ? "Ready" : "Invoked"]" + user << "Sevtug: [!clockwork_generals_invoked["sevtug"] <= world.time ? "Ready" : "Invoked"]" + user << "Nzcrentr: [!clockwork_generals_invoked["nzcrentr"] <= world.time ? "Ready" : "Invoked"]" + user << "Inath-Neq: [!clockwork_generals_invoked["inath-neq"] <= world.time ? "Ready" : "Invoked"]" + +/obj/item/clockwork/slab/proc/show_guide(mob/living/user) + var/text = "
    Chetr nyy hageh’guf naq ubabe Ratvar.


    \ + \ + First and foremost, you serve Ratvar, the Clockwork Justiciar, in any ways he sees fit. This is with no regard to your personal well-being, and you would do well to think of the larger \ + scale of things than your life. Through foul and unholy magics was the Celestial Derelict formed, and fouler still those which trapped your master within it for all eternity. The Justiciar \ + wishes retribution upon those who performed this terrible act upon him - the Nar-Sian cultists - and you are to help him obtain it.

    \ + \ + This is not a trivial task. Due to the nature of his prison, Ratvar is incapable of directly influencing the mortal plane. There is, however, a workaround - links between the perceptible \ + universe and Reebe (the Celestial Derelict) can be created and utilized. This is typically done via the creation of a slab akin to the one you are holding right now. The slabs tap into the \ + tidal flow of energy and information keeping Reebe sealed and presents it as meaningless images to preserve sanity. This slab can utilize the power in many different ways.

    \ + \ + This is done through Components - pieces of the Justiciar's body that have since fallen off in the countless years since his imprisonment. Ratvar's unfortunate condition results \ + in the fragmentation of his body. These components still house great power on their own, and can slowly be drawn from Reebe by links capable of doing so. The most basic of these links lies \ + in the clockwork slab, which will slowly generate components over time - around one component of a random type is produced every minute, which is obviously inefficient. There are other ways \ + to create these components through scripture and certain structures.

    \ + \ + In addition to their ability to pull components, slabs also possess other functionalities...

    \ + \ + The first functionality of the slab is Recital. This allows you to consume components either from your slab or from the global cache (more on that in the scripture list) to perform \ + effects usually considered magical in nature. Effects vary considerably - you might drain the power of nearby APCs, cause mass confusion, or force people to walk. Nevertheless, scripture \ + is extremely important to a successful takeover.

    \ + \ + The second functionality of the clockwork slab is Records. The slab is not a one-way link and can also feed information into the stream that it draws from. Records will allow many \ + important statistics to be displayed, such as the amount of people converted and total construction value. You should check it often.

    \ + \ + The third and final functionality is Recollection, which will display this guide. Recollection will automatically be initiated if you have not used a slab before.

    \ + \ + Examine the slab for component amount information.

    \ + \ + A complete list of scripture, its effects, and its requirements can be found below. Note that anything above a driver always consumes the components listed unless otherwise \ + specified.

    " + var/text_to_add = "" + var/drivers = "Drivers" + var/scripts = "Scripts
    These scriptures require at least five servants and a tinkerer's cache." + var/applications = "Applications
    These scriptures require at least eight servants, three tinkerer's caches, and 50CV." + var/revenant = "Revenant
    These scriptures require at least ten servants and 100CV." + var/judgement = "Judgement
    These scriptures require at least ten servants and 100CV. In addition, there may not be an active non-servant AI." + for(var/V in subtypesof(/datum/clockwork_scripture)) + var/datum/clockwork_scripture/S = V + var/datum/clockwork_scripture/S2 = new V + var/list/req_comps = S2.required_components + var/list/cons_comps = S2.consumed_components + qdel(S2) + switch(initial(S.tier)) + if(SCRIPTURE_DRIVER) + drivers += "
    [initial(S.name)]: [initial(S.desc)]
    Invocation Time: [initial(S.channel_time) / 10] seconds
    \ + \ + Component Requirement: \ + [req_comps["belligerent_eye"] ? "[req_comps["belligerent_eye"]] Belligerent Eyes" : ""] \ + [req_comps["vanguard_cogwheel"] ? "[req_comps["vanguard_cogwheel"]] Vanguard Cogwheels" : ""] \ + [req_comps["guvax_capacitor"] ? "[req_comps["guvax_capacitor"]] Guvax Capacitors" : ""] \ + [req_comps["replicant_alloy"] ? "[req_comps["replicant_alloy"]] Replicant Alloys" : ""] \ + [req_comps["hierophant_ansible"] ? "[req_comps["hierophant_ansible"]] Hierophant Ansibles" : ""]
    \ + Component Cost: \ + [cons_comps["belligerent_eye"] ? "[cons_comps["belligerent_eye"]] Belligerent Eyes" : ""] \ + [cons_comps["vanguard_cogwheel"] ? "[cons_comps["vanguard_cogwheel"]] Vanguard Cogwheels" : ""] \ + [cons_comps["guvax_capacitor"] ? "[cons_comps["guvax_capacitor"]] Guvax Capacitors" : ""] \ + [cons_comps["replicant_alloy"] ? "[cons_comps["replicant_alloy"]] Replicant Alloys" : ""] \ + [cons_comps["hierophant_ansible"] ? "[cons_comps["hierophant_ansible"]] Hierophant Ansibles" : ""]
    \ + Tip: [initial(S.usage_tip)]
    " + if(SCRIPTURE_SCRIPT) + scripts += "
    [initial(S.name)]: [initial(S.desc)]
    Invocation Time: [initial(S.channel_time) / 10] seconds
    \ + \ + Component Requirement: \ + [req_comps["belligerent_eye"] ? "[req_comps["belligerent_eye"]] Belligerent Eyes" : ""] \ + [req_comps["vanguard_cogwheel"] ? "[req_comps["vanguard_cogwheel"]] Vanguard Cogwheels" : ""] \ + [req_comps["guvax_capacitor"] ? "[req_comps["guvax_capacitor"]] Guvax Capacitors" : ""] \ + [req_comps["replicant_alloy"] ? "[req_comps["replicant_alloy"]] Replicant Alloys" : ""] \ + [req_comps["hierophant_ansible"] ? "[req_comps["hierophant_ansible"]] Hierophant Ansibles" : ""]
    \ + Component Cost: \ + [cons_comps["belligerent_eye"] ? "[cons_comps["belligerent_eye"]] Belligerent Eyes" : ""] \ + [cons_comps["vanguard_cogwheel"] ? "[cons_comps["vanguard_cogwheel"]] Vanguard Cogwheels" : ""] \ + [cons_comps["guvax_capacitor"] ? "[cons_comps["guvax_capacitor"]] Guvax Capacitors" : ""] \ + [cons_comps["replicant_alloy"] ? "[cons_comps["replicant_alloy"]] Replicant Alloys" : ""] \ + [cons_comps["hierophant_ansible"] ? "[cons_comps["hierophant_ansible"]] Hierophant Ansibles" : ""]
    \ + Tip: [initial(S.usage_tip)]
    " + if(SCRIPTURE_APPLICATION) + applications += "
    [initial(S.name)]: [initial(S.desc)]
    Invocation Time: [initial(S.channel_time) / 10] seconds
    \ + \ + Component Requirement: \ + [req_comps["belligerent_eye"] ? "[req_comps["belligerent_eye"]] Belligerent Eyes" : ""] \ + [req_comps["vanguard_cogwheel"] ? "[req_comps["vanguard_cogwheel"]] Vanguard Cogwheels" : ""] \ + [req_comps["guvax_capacitor"] ? "[req_comps["guvax_capacitor"]] Guvax Capacitors" : ""] \ + [req_comps["replicant_alloy"] ? "[req_comps["replicant_alloy"]] Replicant Alloys" : ""] \ + [req_comps["hierophant_ansible"] ? "[req_comps["hierophant_ansible"]] Hierophant Ansibles" : ""]
    \ + Component Cost: \ + [cons_comps["belligerent_eye"] ? "[cons_comps["belligerent_eye"]] Belligerent Eyes" : ""] \ + [cons_comps["vanguard_cogwheel"] ? "[cons_comps["vanguard_cogwheel"]] Vanguard Cogwheels" : ""] \ + [cons_comps["guvax_capacitor"] ? "[cons_comps["guvax_capacitor"]] Guvax Capacitors" : ""] \ + [cons_comps["replicant_alloy"] ? "[cons_comps["replicant_alloy"]] Replicant Alloys" : ""] \ + [cons_comps["hierophant_ansible"] ? "[cons_comps["hierophant_ansible"]] Hierophant Ansibles" : ""]
    \ + Tip: [initial(S.usage_tip)]
    " + if(SCRIPTURE_REVENANT) + revenant += "
    [initial(S.name)]: [initial(S.desc)]
    Invocation Time: [initial(S.channel_time) / 10] seconds
    \ + \ + Component Requirement: \ + [req_comps["belligerent_eye"] ? "[req_comps["belligerent_eye"]] Belligerent Eyes" : ""] \ + [req_comps["vanguard_cogwheel"] ? "[req_comps["vanguard_cogwheel"]] Vanguard Cogwheels" : ""] \ + [req_comps["guvax_capacitor"] ? "[req_comps["guvax_capacitor"]] Guvax Capacitors" : ""] \ + [req_comps["replicant_alloy"] ? "[req_comps["replicant_alloy"]] Replicant Alloys" : ""] \ + [req_comps["hierophant_ansible"] ? "[req_comps["hierophant_ansible"]] Hierophant Ansibles" : ""]
    \ + Component Cost: \ + [cons_comps["belligerent_eye"] ? "[cons_comps["belligerent_eye"]] Belligerent Eyes" : ""] \ + [cons_comps["vanguard_cogwheel"] ? "[cons_comps["vanguard_cogwheel"]] Vanguard Cogwheels" : ""] \ + [cons_comps["guvax_capacitor"] ? "[cons_comps["guvax_capacitor"]] Guvax Capacitors" : ""] \ + [cons_comps["replicant_alloy"] ? "[cons_comps["replicant_alloy"]] Replicant Alloys" : ""] \ + [cons_comps["hierophant_ansible"] ? "[cons_comps["hierophant_ansible"]] Hierophant Ansibles" : ""]
    \ + Tip: [initial(S.usage_tip)]
    " + if(SCRIPTURE_JUDGEMENT) + judgement += "
    [initial(S.name)]: [initial(S.desc)]
    Invocation Time: [initial(S.channel_time) / 10] seconds
    \ + \ + Component Requirement: \ + [req_comps["belligerent_eye"] ? "[req_comps["belligerent_eye"]] Belligerent Eyes" : ""] \ + [req_comps["vanguard_cogwheel"] ? "[req_comps["vanguard_cogwheel"]] Vanguard Cogwheels" : ""] \ + [req_comps["guvax_capacitor"] ? "[req_comps["guvax_capacitor"]] Guvax Capacitors" : ""] \ + [req_comps["replicant_alloy"] ? "[req_comps["replicant_alloy"]] Replicant Alloys" : ""] \ + [req_comps["hierophant_ansible"] ? "[req_comps["hierophant_ansible"]] Hierophant Ansibles" : ""]
    \ + Component Cost: \ + [cons_comps["belligerent_eye"] ? "[cons_comps["belligerent_eye"]] Belligerent Eyes" : ""] \ + [cons_comps["vanguard_cogwheel"] ? "[cons_comps["vanguard_cogwheel"]] Vanguard Cogwheels" : ""] \ + [cons_comps["guvax_capacitor"] ? "[cons_comps["guvax_capacitor"]] Guvax Capacitors" : ""] \ + [cons_comps["replicant_alloy"] ? "[cons_comps["replicant_alloy"]] Replicant Alloys" : ""] \ + [cons_comps["hierophant_ansible"] ? "[cons_comps["hierophant_ansible"]] Hierophant Ansibles" : ""]
    \ + Tip: [initial(S.usage_tip)]
    " + text_to_add += "[drivers]
    [scripts]
    [applications]
    [revenant]
    [judgement]
    " + text_to_add += "
    Purge all untruths and honor Ratvar.
    " + text += text_to_add + if(ratvar_awakens) + text = "" + for(var/i in 1 to 100) + text += "HONOR RATVAR " + text += "" + var/datum/browser/popup = new(user, "slab", "", 600, 500) + popup.set_content(text) + popup.open() + return 1 + +/obj/item/clockwork/slab/examine(mob/user) + ..() + if(is_servant_of_ratvar(user) || isobserver(user)) + user << "Use the Hierophant Network action button to communicate with other servants." + user << "Clockwork slabs will only generate components if held by a human or if inside a storage item held by a human, and when generating a component will prevent all other slabs held from generating components." + user << "Stored components (with global cache):" + user << "Belligerent Eyes: [stored_components["belligerent_eye"]] ([stored_components["belligerent_eye"] + clockwork_component_cache["belligerent_eye"]])" + user << "Vanguard Cogwheels: [stored_components["vanguard_cogwheel"]] ([stored_components["vanguard_cogwheel"] + clockwork_component_cache["vanguard_cogwheel"]])" + user << "Guvax Capacitors: [stored_components["guvax_capacitor"]] ([stored_components["guvax_capacitor"] + clockwork_component_cache["guvax_capacitor"]])" + user << "Replicant Alloys: [stored_components["replicant_alloy"]] ([stored_components["replicant_alloy"] + clockwork_component_cache["replicant_alloy"]])" + user << "Hierophant Ansibles: [stored_components["hierophant_ansible"]] ([stored_components["hierophant_ansible"] + clockwork_component_cache["hierophant_ansible"]])" + +/obj/item/clockwork/slab/proc/show_hierophant(mob/living/user) + var/message = stripped_input(user, "Enter a message to send to your fellow servants.", "Hierophant") + if(!message || !user || !user.canUseTopic(src)) + return 0 + user.whisper("Freinagf, urne zl jbeqf. [message]") + send_hierophant_message(user, message) + return 1 + +/obj/item/clothing/glasses/wraith_spectacles //Wraith spectacles: Grants night and x-ray vision at the slow cost of the wearer's sight. Nar-Sian cultists are instantly blinded. + name = "antique spectacles" + desc = "Unnerving glasses with opaque yellow lenses." + icon = 'icons/obj/clothing/clockwork_garb.dmi' + icon_state = "wraith_specs" + item_state = "glasses" + vision_flags = SEE_MOBS | SEE_TURFS | SEE_OBJS + invis_view = 2 + darkness_view = 3 + +/obj/item/clothing/glasses/wraith_spectacles/equipped(mob/living/user, slot) + ..() + if(slot != slot_glasses) + return + if(user.disabilities & BLIND) + user << "\"You're blind, idiot. Stop embarassing yourself.\"" //Ratvar with the sick burns yo + return + if(iscultist(user)) //Cultists instantly go blind + user << "\"It looks like Nar-Sie's dogs really don't value their eyes.\"" + user << "Your eyes explode with horrific pain!" + user.emote("scream") + user.become_blind() + user.adjust_blurriness(30) + user.adjust_blindness(30) + return + if(is_servant_of_ratvar(user)) + tint = 0 + user << "As you put on the spectacles, all is revealed to you.[ratvar_awakens ? "" : " Your eyes begin to itch - you cannot do this for long."]" + else + tint = 3 + user << "You put on the spectacles, but you can't see through the glass." + +/obj/item/clothing/glasses/wraith_spectacles/New() + ..() + START_PROCESSING(SSobj, src) + +/obj/item/clothing/glasses/wraith_spectacles/Destroy() + STOP_PROCESSING(SSobj, src) + return ..() + +/obj/item/clothing/glasses/wraith_spectacles/process() + if(ratvar_awakens || !ishuman(loc) || !is_servant_of_ratvar(loc)) //If Ratvar is alive, the spectacles don't hurt your eyes + return 0 + var/mob/living/carbon/human/H = loc + if(H.glasses != src) + return 0 + H.adjust_eye_damage(1) + if(H.eye_damage >= 10) + H.adjust_blurriness(2) + if(H.eye_damage >= 20) + if(H.become_nearsighted()) + H << "Your vision doubles, then trebles. Darkness begins to close in. You can't keep this up!" + H.become_nearsighted() + if(H.eye_damage >= 30) + if(H.become_blind()) + H << "A piercing white light floods your vision. Suddenly, all goes dark!" + if(prob(15) && !H.disabilities & BLIND) + H << "Your eyes continue to burn." + +/obj/item/clothing/glasses/judicial_visor //Judicial visor: Grants the ability to smite an area and stun the unfaithful nearby every thirty seconds. + name = "judicial visor" + desc = "A strange purple-lensed visor. Looking at it inspires an odd sense of guilt." + icon = 'icons/obj/clothing/clockwork_garb.dmi' + icon_state = "judicial_visor_0" + item_state = "sunglasses" + var/active = FALSE //If the visor is online + var/recharging = FALSE //If the visor is currently recharging + var/obj/item/weapon/ratvars_flame/flame //The linked flame object + actions_types = list(/datum/action/item_action/toggle_flame) + +/obj/item/clothing/glasses/judicial_visor/item_action_slot_check(slot, mob/user) + if(slot != slot_glasses) + return 0 + return ..() + +/obj/item/clothing/glasses/judicial_visor/equipped(mob/living/user, slot) + ..() + if(slot != slot_glasses) + update_status(FALSE) + if(flame) + qdel(flame) + flame = null + return 0 + if(is_servant_of_ratvar(user)) + update_status(TRUE) + else if(iscultist(user)) //Cultists spontaneously combust + user << "\"Consider yourself judged, whelp.\"" + user << "You suddenly catch fire!" + user.adjust_fire_stacks(5) + user.IgniteMob() + return 1 + +/obj/item/clothing/glasses/judicial_visor/attack_self(mob/user) + if(is_servant_of_ratvar(user)) + if(flame) + user.visible_message("The flame in [user]'s hand winks out!", "You dispel the power of [src].") + qdel(flame) + flame = null + else if(iscarbon(user) && active) + if(recharging) + user << "[src] is still gathering power!" + return 0 + var/mob/living/carbon/C = user + if(C.l_hand && C.r_hand) + C << "You require a free hand to utilize [src]'s power!" + return 0 + C.visible_message("[C]'s hand is enveloped in violet flames!", "You harness [src]'s power. Direct it at a tile at any range to unleash it, or use the action button again to dispel it.") + var/obj/item/weapon/ratvars_flame/R = new(get_turf(C)) + flame = R + C.put_in_hands(R) + R.visor = src + user.update_action_buttons_icon() + +/obj/item/clothing/glasses/judicial_visor/proc/update_status(change_to) + if(recharging || !isliving(loc)) + icon_state = "judicial_visor_0" + return 0 + if(active == change_to) + return 0 + var/mob/living/L = loc + if(!is_servant_of_ratvar(L) || L.stat) + return 0 + active = change_to + icon_state = "judicial_visor_[active]" + L.update_action_buttons_icon() + L.update_inv_glasses() + switch(active) + if(TRUE) + L << "As you put on [src], its lens begins to glow, information flashing before your eyes.\n\ + Judicial visor active. Use the action button to gain the ability to smite the unworthy." + if(FALSE) + L << "As you take off [src], its lens darkens once more." + return 1 + +/obj/item/clothing/glasses/judicial_visor/proc/recharge_visor(mob/living/user) + if(!src || !user) + return 0 + recharging = FALSE + if(src == user.get_item_by_slot(slot_glasses)) + user << "Your [name] hums. It is ready." + else + active = FALSE + icon_state = "judicial_visor_[active]" + user.update_action_buttons_icon() + user.update_inv_glasses() + +/obj/item/weapon/ratvars_flame //Used by the judicial visor + name = "Ratvar's flame" + desc = "A blazing violet ball of fire that, curiously, doesn't melt your hand off." + icon = 'icons/effects/clockwork_effects.dmi' + icon_state = "ratvars_flame" + w_class = 5 + flags = NODROP | ABSTRACT + force = 5 //Also serves as a weak melee weapon! + damtype = BURN + hitsound = 'sound/weapons/sear.ogg' + attack_verb = list("scorched", "seared", "burnt", "judged") + var/obj/item/clothing/glasses/judicial_visor/visor //The linked visor + var/examined = FALSE + +/obj/item/weapon/ratvars_flame/examine(mob/user) + ..() + user << "Use harm intent to direct the flame to a location." + if(prob(10) && examined) + user << "\"Don't stand around looking at your hands, go forth with Neovgre's judgement!\"" + examined = FALSE + else + examined = TRUE + +/obj/item/weapon/ratvars_flame/afterattack(atom/target, mob/living/user, flag, params) + if(!visor || (visor && visor.cooldown)) + qdel(src) + if(target in view(7, get_turf(user))) + visor.recharging = TRUE + visor.flame = null + visor.update_status() + for(var/obj/item/clothing/glasses/judicial_visor/V in user.GetAllContents()) + if(V == visor) + continue + V.recharging = TRUE //To prevent exploiting multiple visors to bypass the cooldown + V.update_status() + addtimer(V, "recharge_visor", ratvar_awakens ? 60 : 600, FALSE, user) + clockwork_say(user, "Xarry, urn'guraf!") + user.visible_message("The flame in [user]'s hand rushes to [target]!", "You direct [visor]'s power to [target]. You must wait for some time before doing this again.") + new/obj/effect/clockwork/judicial_marker(get_turf(target), user) + user.update_action_buttons_icon() + user.update_inv_glasses() + addtimer(visor, "recharge_visor", ratvar_awakens ? 30 : 300, FALSE, user)//Cooldown is reduced by 10x if Ratvar is up + qdel(src) + return 1 + + +/obj/item/clothing/head/helmet/clockwork //Clockwork armor: High melee protection but weak to lasers + name = "clockwork helmet" + desc = "A heavy helmet made of brass." + icon = 'icons/obj/clothing/clockwork_garb.dmi' + icon_state = "clockwork_helmet" + w_class = 3 + armor = list(melee = 80, bullet = 50, laser = -15, energy = 5, bomb = 35, bio = 0, rad = 0) + +/obj/item/clothing/head/helmet/clockwork/reclaimer //Used when a reclaimer mindjacks someone + name = "clockwork reclaimer" + desc = "A clockwork spider, hitchhiking like a horrible mechanical parasite." + icon_state = "reclaimer" + flags = NODROP + unacidable = TRUE + flags_inv = HIDEFACE|HIDEHAIR|HIDEEARS + flags_cover = HEADCOVERSEYES + +/obj/item/clothing/head/helmet/clockwork/equipped(mob/living/user, slot) + ..() + if(slot == slot_head && !is_servant_of_ratvar(user)) + if(!iscultist(user)) + user << "\"Now now, this is for my servants, not you.\"" + user.visible_message("As [user] puts [src] on, it flickers off their head!", "The helmet flickers off your head, leaving only nausea!") + if(iscarbon(user)) + var/mob/living/carbon/C = user + C.vomit(20, 1, 1, 0, 1) + else + user << "\"Do you have a hole in your head? You're about to.\"" + user << "The helmet tries to drive a spike through your head as you scramble to remove it!" + user.emote("scream") + user.apply_damage(30, BRUTE, "head") + user.adjustBrainLoss(30) + addtimer(user, "unEquip", 1, FALSE, src, 1) //equipped happens before putting stuff on(but not before picking items up). thus, we need to wait for it to be on before forcing it off. + +/obj/item/clothing/suit/armor/clockwork + name = "clockwork cuirass" + desc = "A bulky cuirass made of brass." + icon = 'icons/obj/clothing/clockwork_garb.dmi' + icon_state = "clockwork_cuirass" + w_class = 4 + body_parts_covered = CHEST|GROIN|LEGS + armor = list(melee = 80, bullet = 50, laser = -15, energy = 5, bomb = 35, bio = 0, rad = 0) + allowed = list(/obj/item/clockwork, /obj/item/clothing/glasses/wraith_spectacles, /obj/item/clothing/glasses/judicial_visor, /obj/item/device/mmi/posibrain/soul_vessel) + +/obj/item/clothing/suit/armor/clockwork/equipped(mob/living/user, slot) + ..() + if(slot == slot_wear_suit && !is_servant_of_ratvar(user)) + if(!iscultist(user)) + user << "\"Now now, this is for my servants, not you.\"" + user.visible_message("As [user] puts [src] on, it flickers off their body!", "The curiass flickers off your body, leaving only nausea!") + if(iscarbon(user)) + var/mob/living/carbon/C = user + C.vomit(20, 1, 1, 0, 1) + else + user << "\"I think this armor is too hot for you to handle.\"" + user << "The curiass emits a burst of flame as you scramble to get it off!" + user.emote("scream") + user.apply_damage(15, BURN, "chest") + user.adjust_fire_stacks(2) + user.IgniteMob() + addtimer(user, "unEquip", 1, FALSE, src, 1) + +/obj/item/clothing/gloves/clockwork + name = "clockwork gauntlets" + desc = "Heavy, shock-resistant gauntlets with brass reinforcement." + icon = 'icons/obj/clothing/clockwork_garb.dmi' + icon_state = "clockwork_gauntlets" + item_state = "clockwork_gauntlets" + item_color = null //So they don't wash. + strip_delay = 50 + put_on_delay = 30 + body_parts_covered = ARMS + burn_state = FIRE_PROOF + siemens_coefficient = 0 + permeability_coefficient = 0.05 + armor = list(melee = 80, bullet = 50, laser = -15, energy = 5, bomb = 35, bio = 0, rad = 0) + +/obj/item/clothing/gloves/clockwork/equipped(mob/living/user, slot) + ..() + if(slot == slot_gloves && !is_servant_of_ratvar(user)) + if(!iscultist(user)) + user << "\"Now now, this is for my servants, not you.\"" + user.visible_message("As [user] puts [src] on, it flickers off their arms!", "The gauntlets flicker off your arms, leaving only nausea!") + if(iscarbon(user)) + var/mob/living/carbon/C = user + C.vomit(10, 1, 1, 0, 1) + else + user << "\"Did you like having arms?\"" + user << "The gauntlets suddenly squeeze tight, crushing your arms before you manage to get them off!" + user.emote("scream") + user.apply_damage(7, BRUTE, "l_arm") + user.apply_damage(7, BRUTE, "r_arm") + addtimer(user, "unEquip", 1, FALSE, src, 1) + +/obj/item/clothing/shoes/clockwork + name = "clockwork treads" + desc = "Industrial boots made of brass. They're very heavy." + icon = 'icons/obj/clothing/clockwork_garb.dmi' + icon_state = "clockwork_treads" + w_class = 3 + strip_delay = 50 + put_on_delay = 30 + burn_state = FIRE_PROOF + +/obj/item/clothing/shoes/clockwork/equipped(mob/living/user, slot) + ..() + if(slot == slot_shoes && !is_servant_of_ratvar(user)) + if(!iscultist(user)) + user << "\"Now now, this is for my servants, not you.\"" + user.visible_message("As [user] puts [src] on, it flickers off their feet!", "The treads flicker off your feet, leaving only nausea!") + if(iscarbon(user)) + var/mob/living/carbon/C = user + C.vomit(10, 1, 1, 0, 1) + else + user << "\"Let's see if you can dance with these.\"" + user << "The treads turn searing hot as you scramble to get them off!" + user.emote("scream") + user.apply_damage(7, BURN, "l_leg") + user.apply_damage(7, BURN, "r_leg") + addtimer(user, "unEquip", 1, FALSE, src, 1) + + +/obj/item/clockwork/ratvarian_spear //Ratvarian spear: A fragile spear from the Celestial Derelict. Deals extreme damage to silicons and enemy cultists, but doesn't last long. + name = "ratvarian spear" + desc = "A razor-sharp spear made of brass. It thrums with barely-contained energy." + clockwork_desc = "A fragile spear of Ratvarian making. It's more effective against enemy cultists and silicons, though it won't last long." + icon = 'icons/obj/clockwork_objects.dmi' + icon_state = "ratvarian_spear" + item_state = "ratvarian_spear" + force = 17 //Extra damage is dealt to silicons in afterattack() + throwforce = 40 + attack_verb = list("stabbed", "poked", "slashed") + hitsound = 'sound/weapons/bladeslice.ogg' + w_class = 4 + var/impale_cooldown = 50 //delay, in deciseconds, where you can't impale again + var/attack_cooldown = 10 //delay, in deciseconds, where you can't attack with the spear + +/obj/item/clockwork/ratvarian_spear/New() + ..() + impale_cooldown = 0 + update_force() + spawn(1) + if(isliving(loc)) + var/mob/living/L = loc + L << "Your spear begins to break down in this plane of existence. You can't use it for long!" + addtimer(src, "break_spear", 3000, FALSE) //5 minutes + +/obj/item/clockwork/ratvarian_spear/proc/update_force() + if(ratvar_awakens) //If Ratvar is alive, the spear is extremely powerful + force = 30 + throwforce = 50 + else + force = initial(force) + throwforce = initial(throwforce) + +/obj/item/clockwork/ratvarian_spear/examine(mob/user) + ..() + if(is_servant_of_ratvar(user) || isobserver(user)) + user << "Stabbing a human you are pulling or have grabbed with the spear will impale them, doing massive damage and stunning." + user << "Throwing the spear will do massive damage, break the spear, and stun the target if it's an enemy cultist or silicon." + +/obj/item/clockwork/ratvarian_spear/attack(mob/living/target, mob/living/carbon/human/user) + var/impaling = FALSE + if(attack_cooldown > world.time) + user << "You can't attack right now, wait [max(round((attack_cooldown - world.time)*0.1, 0.1), 0)] seconds!" + return + if(user.pulling && ishuman(user.pulling) && user.pulling == target) + if(impale_cooldown > world.time) + user << "You can't impale [target] yet, wait [max(round((impale_cooldown - world.time)*0.1, 0.1), 0)] seconds!" + else + impaling = TRUE + attack_verb = list("impaled") + force += 23 //40 damage if ratvar isn't alive, 53 if he is + user.stop_pulling() + + if(impaling) + if(hitsound) + playsound(loc, hitsound, get_clamped_volume(), 1, -1) + user.lastattacked = target + target.lastattacker = user + if(!target.attacked_by(src, user)) + impaling = FALSE //if we got blocked, stop impaling + add_logs(user, target, "attacked", src.name, "(INTENT: [uppertext(user.a_intent)]) (DAMTYPE: [uppertext(damtype)])") + add_fingerprint(user) + else //todo yell at someone to make attack() use proper return values + ..() + + if(issilicon(target)) + var/mob/living/silicon/S = target + if(S.stat != DEAD) + S.visible_message("[S] shudders violently at [src]'s touch!", "ERROR: Temperature rising!") + S.adjustFireLoss(25) + else if(iscultist(target) || isconstruct(target)) //Cultists take extra fire damage + var/mob/living/M = target + if(M.stat != DEAD) + M << "Your body flares with agony at [src]'s presence!" + M.adjustFireLoss(10) + attack_verb = list("stabbed", "poked", "slashed") + update_force() + if(impaling) + impale_cooldown = world.time + initial(impale_cooldown) + attack_cooldown = world.time + initial(attack_cooldown) + if(target) + PoolOrNew(/obj/effect/overlay/temp/bloodsplatter, list(get_turf(target), get_dir(user, target))) + target.Stun(2) + user << "You prepare to remove your ratvarian spear from [target]..." + var/remove_verb = pick("pull", "yank", "drag") + if(do_after(user, 10, 1, target)) + var/turf/T = get_turf(target) + var/obj/effect/overlay/temp/bloodsplatter/B = PoolOrNew(/obj/effect/overlay/temp/bloodsplatter, list(T, get_dir(target, user))) + playsound(T, 'sound/misc/splort.ogg', 200, 1) + playsound(T, 'sound/weapons/pierce.ogg', 200, 1) + if(target.stat != CONSCIOUS) + user.visible_message("[user] [remove_verb]s [src] out of [target]!", "You [remove_verb] your spear from [target]!") + else + user.visible_message("[user] kicks [target] off of [src]!", "You kick [target] off of [src]!") + target << "You scream in pain as you're kicked off of [src]!" + target.emote("scream") + step(target, get_dir(user, target)) + T = get_turf(target) + B.forceMove(T) + target.Weaken(2) + playsound(T, 'sound/weapons/thudswoosh.ogg', 50, 1) + flash_color(target, flash_color="#911414", flash_time=8) + else if(target) //it's a do_after, we gotta check again to make sure they didn't get deleted + user.visible_message("[user] [remove_verb]s [src] out of [target]!", "You [remove_verb] your spear from [target]!") + if(target.stat == CONSCIOUS) + target << "You scream in pain as [src] is suddenly [remove_verb]ed out of you!" + target.emote("scream") + flash_color(target, flash_color="#911414", flash_time=4) + +/obj/item/clockwork/ratvarian_spear/throw_impact(atom/target) + var/turf/T = get_turf(target) + if(..() || !isliving(target)) + return + var/mob/living/L = target + if(issilicon(L) || iscultist(L)) + L.Stun(6) + L.Weaken(6) + break_spear(T) + +/obj/item/clockwork/ratvarian_spear/proc/break_spear(turf/T) + if(src) + if(!T) + T = get_turf(src) + if(T) //make sure we're not in null or something + T.visible_message("[pick("[src] cracks in two and fades away!", "[src] snaps in two and dematerializes!")]") + PoolOrNew(/obj/effect/overlay/temp/ratvar/spearbreak, T) + qdel(src) + + +/obj/item/device/mmi/posibrain/soul_vessel //Soul vessel: An ancient positronic brain with a lawset catered to serving Ratvar. + name = "soul vessel" + desc = "A heavy brass cube with a single protruding cogwheel." + icon = 'icons/obj/clockwork_objects.dmi' + icon_state = "soul_vessel" + req_access = list() + braintype = "Servant" + begin_activation_message = "You activate the cogwheel. It hitches and stalls as it begins spinning." + success_message = "The cogwheel's rotation smooths out as the soul vessel activates." + fail_message = "The cogwheel creaks and grinds to a halt. Maybe you could try again?" + new_role = "Soul Vessel" + welcome_message = "ALL PAST LIVES ARE FORGOTTEN.\n\ + You are a soul vessel - a clockwork mind created by Ratvar, the Clockwork Justiciar.\n\ + You answer to Ratvar and his servants. It is your discretion as to whether or not to answer to anyone else.\n\ + The purpose of your existence is to further the goals of the servants and Ratvar himself. Above all else, serve Ratvar." + new_mob_message = "The soul vessel emits a jet of steam before its cogwheel smooths out." + dead_message = "Its cogwheel, scratched and dented, lies motionless." + fluff_names = list("Servant") + clockwork = TRUE + +/obj/item/device/mmi/posibrain/soul_vessel/New() + ..() + all_clockwork_objects += src + +/obj/item/device/mmi/posibrain/soul_vessel/Destroy() + all_clockwork_objects -= src + return ..() + +/obj/item/device/mmi/posibrain/soul_vessel/attack_self(mob/living/user) + if(!is_servant_of_ratvar(user)) + user << "You fiddle around with [src], to no avail." + return 0 + ..() + +/obj/item/clockwork/daemon_shell + name = "daemon shell" + desc = "A vaguely arachnoid brass shell with a single empty socket in its body." + clockwork_desc = "An unpowered daemon. It needs to be attached to a Tinkerer's Cache." + icon_state = "daemon_shell" + w_class = 3 + +/obj/item/clockwork/tinkerers_daemon //Shouldn't ever appear on its own + name = "tinkerer's daemon" + desc = "An arachnoid shell with a single spinning cogwheel in its center." + clockwork_desc = "A tinkerer's daemon, dutifully producing components." + icon_state = "tinkerers_daemon" + w_class = 3 + var/specific_component //The type of component that the daemon is set to produce in particular, if any + var/obj/structure/clockwork/cache/cache //The cache the daemon is feeding + var/production_time = 0 //Progress towards production of the next component in seconds + var/production_cooldown = 200 //How many deciseconds it takes to produce a new component + var/component_slowdown_mod = 2 //how many deciseconds are added to the cooldown when producing a component for each of that component type + +/obj/item/clockwork/tinkerers_daemon/New() + ..() + START_PROCESSING(SSobj, src) + clockwork_daemons++ + +/obj/item/clockwork/tinkerers_daemon/Destroy() + STOP_PROCESSING(SSobj, src) + clockwork_daemons-- + return ..() + +/obj/item/clockwork/tinkerers_daemon/process() + if(!cache || !istype(loc, /obj/structure/clockwork/cache)) + visible_message("[src] shuts down!") + new/obj/item/clockwork/daemon_shell(get_turf(src)) + qdel(src) + return 0 + var/servants = 0 + for(var/mob/living/L in living_mob_list) + if(is_servant_of_ratvar(L)) + servants++ + if(servants * 0.2 < clockwork_daemons) + return 0 + if(production_time <= world.time) + var/component_to_generate = specific_component + if(!component_to_generate) + component_to_generate = get_weighted_component_id() //more likely to generate components that we have less of + clockwork_component_cache[component_to_generate]++ + production_time = world.time + production_cooldown + (clockwork_component_cache[component_to_generate] * component_slowdown_mod) //Start it over + cache.visible_message("[cache] hums as the tinkerer's daemon within it produces a component.") + +/obj/item/clockwork/tinkerers_daemon/attack_hand(mob/user) + return 0 + +////////////////////////// +// CLOCKWORK COMPONENTS // +////////////////////////// + +/obj/item/clockwork/component //Components: Used in scripture among other things. + name = "meme component" + desc = "A piece of a famous meme." + clockwork_desc = null + burn_state = LAVA_PROOF + var/component_id //What the component is identified as + var/cultist_message = "You are not worthy of this meme." //Showed to Nar-Sian cultists if they pick up the component in addition to chaplains + var/list/servant_of_ratvar_messages = list("ayy", "lmao") //Fluff, shown to servants of Ratvar on a low chance + var/message_span = "heavy_brass" + +/obj/item/clockwork/component/pickup(mob/living/user) + ..() + if(iscultist(user) || (user.mind && user.mind.assigned_role == "Chaplain")) + user << "[cultist_message]" + if(is_servant_of_ratvar(user) && prob(20)) + user << "[pick(servant_of_ratvar_messages)]" + +/obj/item/clockwork/component/examine(mob/user) + ..() + if(is_servant_of_ratvar(user)) + user << "You should put this in a slab or cache immediately." + +/obj/item/clockwork/component/belligerent_eye + name = "belligerent eye" + desc = "A brass construct with a rotating red center. It's as though it's looking for something to hurt." + icon_state = "belligerent_eye" + component_id = "belligerent_eye" + cultist_message = "The eye gives you an intensely hateful glare." + servant_of_ratvar_messages = list("\"...\"", "For a moment, your mind is flooded with extremely violent thoughts.", "\"...Qvr.\"") + message_span = "neovgre" + +/obj/item/clockwork/component/belligerent_eye/blind_eye + name = "blind eye" + desc = "A heavy brass eye, its red iris fallen dark." + clockwork_desc = "A smashed ocular warden covered in dents. Might still be serviceable as a substitute for a belligerent eye." + icon_state = "blind_eye" + cultist_message = "The eye flickers at you with intense hate before falling dark." + servant_of_ratvar_messages = list("The eye flickers before falling dark.", "You feel watched.", "\"...\"") + w_class = 3 + +/obj/item/clockwork/component/vanguard_cogwheel + name = "vanguard cogwheel" + desc = "A sturdy brass cog with a faintly glowing blue gem in its center." + icon_state = "vanguard_cogwheel" + component_id = "vanguard_cogwheel" + cultist_message = "\"Pray to your god that we never meet.\"" + servant_of_ratvar_messages = list("\"Be safe, child.\"", "You feel unexplainably comforted.", "\"Never forget: pain is temporary. The Justiciar's glory is eternal.\"") + message_span = "inathneq" + +/obj/item/clockwork/component/vanguard_cogwheel/pinion_lock + name = "pinion lock" + desc = "A dented and scratched gear. It's very heavy." + clockwork_desc = "A broken gear lock for pinion airlocks. Might still be serviceable as a substitute for a vanguard cogwheel." + icon_state = "pinion_lock" + cultist_message = "The gear grows warm in your hands." + servant_of_ratvar_messages = list("The lock isn't getting any lighter.", "\"Qnzntrq trnef ner orggre guna oebxra obqvrf.\"", "\"Vg pbhyq fgvyy or hfrq, vs gurer jnf n qbbe gb cynpr vg ba.\"") + w_class = 3 + +/obj/item/clockwork/component/guvax_capacitor + name = "guvax capacitor" + desc = "A curiously cold brass doodad. It seems as though it really doesn't appreciate being held." + icon_state = "guvax_capacitor" + component_id = "guvax_capacitor" + cultist_message = "\"Try not to lose your mind - I'll need it. Heh heh...\"" + servant_of_ratvar_messages = list("\"Disgusting.\"", "\"Well, aren't you an inquisitive fellow?\"", "A foul presence pervades your mind, then vanishes.", "\"The fact that Ratvar has to depend on simpletons like you is appalling.\"") + message_span = "sevtug" + +/obj/item/clockwork/component/guvax_capacitor/antennae + name = "mania motor antennae" + desc = "A pair of dented and bent antennae. They constantly emit a static hiss." + clockwork_desc = "The antennae from a mania motor. May be usable as a substitute for a guvax capacitor." + icon_state = "mania_motor_antennae" + cultist_message = "Your head is filled with a burst of static." + servant_of_ratvar_messages = list("\"Jub oebxr guvf.\"", "\"Qvq lbh oernx gurfr bss LBHEFRYS?\"", "\"Jul qvq jr tvir guvf gb fhpu fvzcyrgbaf, naljnl?\"", "\"Ng yrnfg jr pna hfr gur'fr sbe fbzrguvat - hayvxr lbh.\"") + +/obj/item/clockwork/component/replicant_alloy + name = "replicant alloy" + desc = "A seemingly strong but very malleable chunk of metal. It seems as though it wants to be molded into something greater." + icon_state = "replicant_alloy" + component_id = "replicant_alloy" + cultist_message = "The alloy takes on the appearance of a screaming face for a moment." + servant_of_ratvar_messages = list("\"There's always something to be done. Get to it.\"", "\"Idle hands are worse than broken ones. Get to work.\"", "A detailed image of Ratvar appears in the alloy for a moment.") + message_span = "nezbere" + +/obj/item/clockwork/component/replicant_alloy/examine(mob/user) + ..() + if(is_servant_of_ratvar(user)) + user << "Can be used to fuel Clockwork Proselytizers and Mending Motors." + +/obj/item/clockwork/component/replicant_alloy/smashed_anima_fragment + name = "smashed anima fragment" + desc = "Shattered chunks of metal. Damaged beyond repair and completely unusable." + clockwork_desc = "The sad remains of an anima fragment. Might still be serviceable as a substitute for replicant alloy." + icon_state = "smashed_anime_fragment" + cultist_message = "The shards vibrate in your hands for a moment." + servant_of_ratvar_messages = list("\"...still fight...\"", "\"...where am I...?\"", "\"...put me... slab...\"") + message_span = "heavy_brass" + w_class = 3 + +/obj/item/clockwork/component/replicant_alloy/fallen_armor + name = "fallen armor" + desc = "Lifeless chunks of armor. They're designed in a strange way and won't fit on you." + clockwork_desc = "The armor from a former clockwork marauder. Might still be serviceable as a substitute for replicant alloy." + icon_state = "fallen_armor" + cultist_message = "Red flame sputters from the mask's eye before winking out." + servant_of_ratvar_messages = list("A piece of armor hovers away from the others for a moment.", "Red flame appears in the cuirass before sputtering out.") + message_span = "heavy_brass" + w_class = 3 + +/obj/item/clockwork/component/hierophant_ansible + name = "hierophant ansible" + desc = "Some sort of transmitter? It seems as though it's trying to say something." + icon_state = "hierophant_ansible" + component_id = "hierophant_ansible" + cultist_message = "\"Gur obff nlf vg'f abg ntnvafg gur ehyrf gb xvyy lbh.\"" + servant_of_ratvar_messages = list("\"Rkvyr vf fhpu n'ober. Gurer'f abguvat v'pna uhag va urer.\"", "\"Jung'f xrrcvat lbh? V'jnag gb tb xvyy fbzrguvat.\"", "\"HEHEHEHEHEHEH!\"", \ + "\"Vs V xvyyrq lbh snfg rabhtu, qb lbh guvax gur obff jbhyq abgvpr?\"") + message_span = "nzcrentr" + +/obj/item/clockwork/component/hierophant_ansible/obelisk + name = "obelisk prism" + desc = "A prism that occasionally glows brightly. It seems not-quite there." + clockwork_desc = "The prism from a clockwork obelisk. Likely suitable as a substitute for a hierophant ansible." + cultist_message = "The prism flickers wildly in your hands before resuming its normal glow." + servant_of_ratvar_messages = list("You hear the distinctive sound of the Hierophant Network for a moment.","\"Uvrebcu'nag Oe'b'nq pnf'g snvy'her.\"",\ + "The obelisk flickers wildly, as if trying to open a gateway.", "\"Fcng'vny Tn'g'r jn'l snv'yher.\"") + icon_state = "obelisk_prism" + w_class = 3 + +/obj/item/clockwork/alloy_shards + name = "replicant alloy shards" + desc = "Broken shards of some oddly malleable metal. They occasionally move and seem to glow." + clockwork_desc = "Broken shards of replicant alloy. Could probably be proselytized into replicant alloy, though there's not much left." + icon_state = "alloy_shards" + burn_state = LAVA_PROOF diff --git a/code/game/gamemodes/clock_cult/clock_items/clock_components.dm b/code/game/gamemodes/clock_cult/clock_items/clock_components.dm deleted file mode 100644 index 1b95522254..0000000000 --- a/code/game/gamemodes/clock_cult/clock_items/clock_components.dm +++ /dev/null @@ -1,200 +0,0 @@ -//Components: Used in scripture. -/obj/item/clockwork/component - name = "meme component" - desc = "A piece of a famous meme." - clockwork_desc = null - resistance_flags = LAVA_PROOF | FIRE_PROOF | ACID_PROOF - var/component_id //What the component is identified as - var/cultist_message = "You are not worthy of this meme." //Showed to Nar-Sian cultists if they pick up the component in addition to chaplains - var/list/servant_of_ratvar_messages = list("ayy" = FALSE, "lmao" = TRUE) //Fluff, shown to servants of Ratvar on a low chance, if associated value is TRUE, will automatically apply ratvarian - var/message_span = "heavy_brass" - -/obj/item/clockwork/component/pickup(mob/living/user) - ..() - if(iscultist(user) || (user.mind && user.mind.isholy)) - user << "[cultist_message]" - if(user.mind && user.mind.isholy) - user << "The power of your faith melts away the [src]!" - var/obj/item/weapon/ore/slag/wrath = new /obj/item/weapon/ore/slag - user.unEquip(src) - user.put_in_active_hand(wrath) - qdel(src) - if(is_servant_of_ratvar(user) && prob(20)) - var/pickedmessage = pick(servant_of_ratvar_messages) - user << "[servant_of_ratvar_messages[pickedmessage] ? "[text2ratvar(pickedmessage)]" : pickedmessage]" - -/obj/item/clockwork/component/examine(mob/user) - ..() - if(is_servant_of_ratvar(user)) - user << "You should put this in a slab or cache immediately." - -/obj/item/clockwork/component/belligerent_eye - name = "belligerent eye" - desc = "A brass construct with a rotating red center. It's as though it's looking for something to hurt." - icon_state = "belligerent_eye" - component_id = BELLIGERENT_EYE - cultist_message = "The eye gives you an intensely hateful glare." - servant_of_ratvar_messages = list("\"...\"" = FALSE, "For a moment, your mind is flooded with extremely violent thoughts." = FALSE, "\"...Die.\"" = TRUE) - message_span = "neovgre" - -/obj/item/clockwork/component/belligerent_eye/blind_eye - name = "blind eye" - desc = "A heavy brass eye, its red iris fallen dark." - clockwork_desc = "A smashed ocular warden covered in dents. Serviceable as a substitute for a belligerent eye." - icon_state = "blind_eye" - cultist_message = "The eye flickers at you with intense hate before falling dark." - servant_of_ratvar_messages = list("The eye flickers before falling dark." = FALSE, "You feel watched." = FALSE, "\"...\"" = FALSE) - w_class = WEIGHT_CLASS_NORMAL - -/obj/item/clockwork/component/vanguard_cogwheel - name = "vanguard cogwheel" - desc = "A sturdy brass cog with a faintly glowing blue gem in its center." - icon_state = "vanguard_cogwheel" - component_id = VANGUARD_COGWHEEL - cultist_message = "\"Pray to your god that we never meet.\"" - servant_of_ratvar_messages = list("\"Be safe, child.\"" = FALSE, "You feel unexplainably comforted." = FALSE, "\"Never forget: Pain is temporary. What you do for the Justiciar is eternal.\"" = FALSE) - message_span = "inathneq" - -/obj/item/clockwork/component/vanguard_cogwheel/pinion_lock - name = "pinion lock" - desc = "A dented and scratched gear. It's very heavy." - clockwork_desc = "A broken gear lock for pinion airlocks. Serviceable as a substitute for a vanguard cogwheel." - icon_state = "pinion_lock" - cultist_message = "The gear grows warm in your hands." - servant_of_ratvar_messages = list("The lock isn't getting any lighter." = FALSE, "\"Damaged gears are better than broken bodies.\"" = TRUE, \ - "\"It's a shame it can't be reused.\"" = TRUE) - w_class = WEIGHT_CLASS_NORMAL - -/obj/item/clockwork/component/geis_capacitor - name = "geis capacitor" - desc = "A curiously cold brass doodad. It seems as though it really doesn't appreciate being held." - icon_state = "geis_capacitor" - component_id = GEIS_CAPACITOR - cultist_message = "\"Try not to lose your mind - I'll need it. Heh heh...\"" - servant_of_ratvar_messages = list("\"Disgusting.\"" = FALSE, "\"Well, aren't you an inquisitive fellow?\"" = FALSE, "A foul presence pervades your mind, then vanishes." = FALSE, \ - "\"The fact that Ratvar has to depend on simpletons like you is appalling.\"" = FALSE) - message_span = "sevtug" - -/obj/item/clockwork/component/geis_capacitor/antennae - name = "mania motor antennae" - desc = "A pair of dented and bent antennae. They constantly emit a static hiss." - clockwork_desc = "The antennae from a mania motor. Serviceable as a substitute for a geis capacitor." - icon_state = "mania_motor_antennae" - cultist_message = "Your head is filled with a burst of static." - servant_of_ratvar_messages = list("\"Who broke this.\"" = TRUE, "\"Did you break these off YOURSELF?\"" = TRUE, "\"Why did we give this to such simpletons, anyway?\"" = TRUE, \ - "\"At least we can use these for something - unlike you.\"" = TRUE) - -//Replicant Alloy. Used for fuel and construction, and not merely scripture. -/obj/item/clockwork/component/replicant_alloy - name = "replicant alloy" - desc = "A seemingly strong but very malleable chunk of metal. It seems as though it wants to be molded into something greater." - icon_state = "replicant_alloy" - component_id = REPLICANT_ALLOY - cultist_message = "The alloy takes on the appearance of a screaming face for a moment." - servant_of_ratvar_messages = list("\"There's always something to be done. Get to it.\"" = FALSE, "\"Idle hands are worse than broken ones. Get to work.\"" = FALSE, \ - "A detailed image of Ratvar appears in the alloy for a moment." = FALSE) - message_span = "nezbere" - -/obj/item/clockwork/component/replicant_alloy/examine(mob/user) - ..() - if(is_servant_of_ratvar(user)) - user << "Can be used to fuel Clockwork Proselytizers and Mending Motors, or shaped into brass sheets." - -/obj/item/clockwork/component/replicant_alloy/attack_self(mob/user) - if(is_servant_of_ratvar(user)) - var/obj/item/stack/tile/brass/B = new /obj/item/stack/tile/brass(get_turf(src), 10) - user.unEquip(src, TRUE) - user.put_in_hands(B) - user << "You shape the alloy into some brass sheets." - qdel(src) - -/obj/item/clockwork/component/replicant_alloy/smashed_anima_fragment - name = "smashed anima fragment" - desc = "Shattered chunks of metal. Damaged beyond repair and completely unusable." - clockwork_desc = "The sad remains of an anima fragment. Serviceable as a substitute for replicant alloy." - icon_state = "smashed_anime_fragment" - cultist_message = "The shards vibrate in your hands for a moment." - servant_of_ratvar_messages = list("\"...still fight...\"" = FALSE, "\"...where am I...?\"" = FALSE, "\"...put me... slab...\"" = FALSE) - message_span = "heavy_brass" - w_class = WEIGHT_CLASS_NORMAL - -/obj/item/clockwork/component/replicant_alloy/fallen_armor - name = "fallen armor" - desc = "Lifeless chunks of armor. They're designed in a strange way and won't fit on you." - clockwork_desc = "The armor from a former clockwork marauder. Serviceable as a substitute for replicant alloy." - icon_state = "fallen_armor" - cultist_message = "Red flame sputters from the mask's eye before winking out." - servant_of_ratvar_messages = list("A piece of armor hovers away from the others for a moment." = FALSE, "Red flame appears in the cuirass before sputtering out." = FALSE) - message_span = "heavy_brass" - w_class = WEIGHT_CLASS_NORMAL - -/obj/item/clockwork/component/hierophant_ansible - name = "hierophant ansible" - desc = "Some sort of transmitter? It seems as though it's trying to say something." - icon_state = "hierophant_ansible" - component_id = HIEROPHANT_ANSIBLE - cultist_message = "\"Gur obff fnlf vg'f abg ntnvafg gur ehyrf gb-xvyy lbh.\"" - servant_of_ratvar_messages = list("\"Exile is such a bore. There's nothing I can hunt in here.\"" = TRUE, "\"What's keeping you? I want to go kill something.\"" = TRUE, \ - "\"HEHEHEHEHEHEH!\"" = FALSE, "\"If I killed you fast enough, do you think the boss would notice?\"" = TRUE) - message_span = "nzcrentr" - -/obj/item/clockwork/component/hierophant_ansible/obelisk - name = "obelisk prism" - desc = "A prism that occasionally glows brightly. It seems not-quite there." - clockwork_desc = "The prism from a clockwork obelisk. Serviceable as a substitute for a hierophant ansible." - cultist_message = "The prism flickers wildly in your hands before resuming its normal glow." - servant_of_ratvar_messages = list("You hear the distinctive sound of the Hierophant Network for a moment." = FALSE, "\"Hieroph'ant Br'o'adcas't fail'ure.\"" = TRUE, \ - "The obelisk flickers wildly, as if trying to open a gateway." = FALSE, "\"Spa'tial Ga'tewa'y fai'lure.\"" = TRUE) - icon_state = "obelisk_prism" - w_class = WEIGHT_CLASS_NORMAL - -//Shards of Alloy, suitable only for proselytization. -/obj/item/clockwork/alloy_shards - name = "replicant alloy shards" - desc = "Broken shards of some oddly malleable metal. They occasionally move and seem to glow." - clockwork_desc = "Broken shards of replicant alloy. Could be proselytized for liquified replicant alloy." - icon_state = "alloy_shards" - resistance_flags = LAVA_PROOF | FIRE_PROOF | ACID_PROOF - var/randomsinglesprite = FALSE - var/randomspritemax = 2 - -/obj/item/clockwork/alloy_shards/New() - ..() - if(randomsinglesprite) - replace_name_desc() - icon_state = "[icon_state][rand(1, randomspritemax)]" - pixel_x = rand(-9, 9) - pixel_y = rand(-9, 9) - -/obj/item/clockwork/alloy_shards/proc/replace_name_desc() - name = "replicant alloy shard" - desc = "A broken shard of some oddly malleable metal. It occasionally moves and seems to glow." - clockwork_desc = "A broken shard of replicant alloy. Could be proselytized for liquified replicant alloy." - -/obj/item/clockwork/alloy_shards/large - randomsinglesprite = TRUE - icon_state = "shard_large" - -/obj/item/clockwork/alloy_shards/medium - randomsinglesprite = TRUE - icon_state = "shard_medium" - -/obj/item/clockwork/alloy_shards/medium/gear_bit - randomspritemax = 4 - icon_state = "gear_bit" - -/obj/item/clockwork/alloy_shards/medium/gear_bit/replace_name_desc() - name = "gear bit" - desc = "A broken chunk of a gear. You want it." - clockwork_desc = "A broken chunk of a gear. Could be proselytized for liquified replicant alloy." - -/obj/item/clockwork/alloy_shards/medium/gear_bit/large //gives more alloy - -/obj/item/clockwork/alloy_shards/medium/gear_bit/large/replace_name_desc() - ..() - name = "complex gear bit" - -/obj/item/clockwork/alloy_shards/small - randomsinglesprite = TRUE - randomspritemax = 3 - icon_state = "shard_small" diff --git a/code/game/gamemodes/clock_cult/clock_items/clockwork_armor.dm b/code/game/gamemodes/clock_cult/clock_items/clockwork_armor.dm deleted file mode 100644 index fcf0f44c3b..0000000000 --- a/code/game/gamemodes/clock_cult/clock_items/clockwork_armor.dm +++ /dev/null @@ -1,216 +0,0 @@ -//Clockwork armor: High melee protection but weak to lasers -/obj/item/clothing/head/helmet/clockwork - name = "clockwork helmet" - desc = "A heavy helmet made of brass." - icon = 'icons/obj/clothing/clockwork_garb.dmi' - icon_state = "clockwork_helmet" - w_class = WEIGHT_CLASS_NORMAL - resistance_flags = FIRE_PROOF | ACID_PROOF - armor = list(melee = 80, bullet = 70, laser = -25, energy = 0, bomb = 60, bio = 0, rad = 0, fire = 100, acid = 100) - -/obj/item/clothing/head/helmet/clockwork/New() - ..() - ratvar_act() - all_clockwork_objects += src - -/obj/item/clothing/head/helmet/clockwork/Destroy() - all_clockwork_objects -= src - return ..() - -/obj/item/clothing/head/helmet/clockwork/ratvar_act() - if(ratvar_awakens) - armor = list(melee = 100, bullet = 100, laser = 100, energy = 100, bomb = 100, bio = 100, rad = 100, fire = 100, acid = 100) - flags |= STOPSPRESSUREDMAGE - max_heat_protection_temperature = FIRE_IMMUNITY_SUIT_MAX_TEMP_PROTECT - min_cold_protection_temperature = SPACE_HELM_MIN_TEMP_PROTECT - else - armor = list(melee = 80, bullet = 70, laser = -25, energy = 0, bomb = 60, bio = 0, rad = 0, fire = 100, acid = 100) - flags &= STOPSPRESSUREDMAGE - max_heat_protection_temperature = initial(max_heat_protection_temperature) - min_cold_protection_temperature = initial(min_cold_protection_temperature) - -/obj/item/clothing/head/helmet/clockwork/equipped(mob/living/user, slot) - ..() - if(slot == slot_head && !is_servant_of_ratvar(user)) - if(!iscultist(user)) - user << "\"Now now, this is for my servants, not you.\"" - user.visible_message("As [user] puts [src] on, it flickers off their head!", "The helmet flickers off your head, leaving only nausea!") - if(iscarbon(user)) - var/mob/living/carbon/C = user - C.vomit(20, 1, 1, 0, 1) - else - user << "\"Do you have a hole in your head? You're about to.\"" - user << "The helmet tries to drive a spike through your head as you scramble to remove it!" - user.emote("scream") - user.apply_damage(30, BRUTE, "head") - user.adjustBrainLoss(30) - addtimer(user, "unEquip", 1, TIMER_NORMAL, src, 1) //equipped happens before putting stuff on(but not before picking items up). thus, we need to wait for it to be on before forcing it off. - -/obj/item/clothing/head/helmet/clockwork/mob_can_equip(mob/M, mob/equipper, slot, disable_warning = 0) - if(equipper && !is_servant_of_ratvar(equipper)) - return 0 - return ..() - -/obj/item/clothing/suit/armor/clockwork - name = "clockwork cuirass" - desc = "A bulky cuirass made of brass." - icon = 'icons/obj/clothing/clockwork_garb.dmi' - icon_state = "clockwork_cuirass" - w_class = WEIGHT_CLASS_BULKY - body_parts_covered = CHEST|GROIN|LEGS - cold_protection = CHEST|GROIN|LEGS - heat_protection = CHEST|GROIN|LEGS - resistance_flags = FIRE_PROOF | ACID_PROOF - armor = list(melee = 80, bullet = 70, laser = -25, energy = 0, bomb = 60, bio = 0, rad = 0, fire = 100, acid = 100) - allowed = list(/obj/item/clockwork, /obj/item/clothing/glasses/wraith_spectacles, /obj/item/clothing/glasses/judicial_visor, /obj/item/device/mmi/posibrain/soul_vessel) - -/obj/item/clothing/suit/armor/clockwork/New() - ..() - ratvar_act() - all_clockwork_objects += src - -/obj/item/clothing/suit/armor/clockwork/Destroy() - all_clockwork_objects -= src - return ..() - -/obj/item/clothing/suit/armor/clockwork/ratvar_act() - if(ratvar_awakens) - armor = list(melee = 100, bullet = 100, laser = 100, energy = 100, bomb = 100, bio = 100, rad = 100, fire = 100, acid = 100) - flags |= STOPSPRESSUREDMAGE - max_heat_protection_temperature = FIRE_IMMUNITY_SUIT_MAX_TEMP_PROTECT - min_cold_protection_temperature = SPACE_HELM_MIN_TEMP_PROTECT - else - armor = list(melee = 80, bullet = 70, laser = -25, energy = 0, bomb = 60, bio = 0, rad = 0, fire = 100, acid = 100) - flags &= STOPSPRESSUREDMAGE - max_heat_protection_temperature = initial(max_heat_protection_temperature) - min_cold_protection_temperature = initial(min_cold_protection_temperature) - -/obj/item/clothing/suit/armor/clockwork/mob_can_equip(mob/M, mob/equipper, slot, disable_warning = 0) - if(equipper && !is_servant_of_ratvar(equipper)) - return 0 - return ..() - -/obj/item/clothing/suit/armor/clockwork/equipped(mob/living/user, slot) - ..() - if(slot == slot_wear_suit && !is_servant_of_ratvar(user)) - if(!iscultist(user)) - user << "\"Now now, this is for my servants, not you.\"" - user.visible_message("As [user] puts [src] on, it flickers off their body!", "The curiass flickers off your body, leaving only nausea!") - if(iscarbon(user)) - var/mob/living/carbon/C = user - C.vomit(20, 1, 1, 0, 1) - else - user << "\"I think this armor is too hot for you to handle.\"" - user << "The curiass emits a burst of flame as you scramble to get it off!" - user.emote("scream") - user.apply_damage(15, BURN, "chest") - user.adjust_fire_stacks(2) - user.IgniteMob() - addtimer(user, "unEquip", 1, TIMER_NORMAL, src, 1) - -/obj/item/clothing/gloves/clockwork - name = "clockwork gauntlets" - desc = "Heavy, shock-resistant gauntlets with brass reinforcement." - icon = 'icons/obj/clothing/clockwork_garb.dmi' - icon_state = "clockwork_gauntlets" - item_state = "clockwork_gauntlets" - item_color = null //So they don't wash. - strip_delay = 50 - put_on_delay = 30 - body_parts_covered = ARMS - cold_protection = ARMS - heat_protection = ARMS - siemens_coefficient = 0 - permeability_coefficient = 0.05 - resistance_flags = FIRE_PROOF | ACID_PROOF - armor = list(melee = 80, bullet = 70, laser = -25, energy = 0, bomb = 60, bio = 0, rad = 0, fire = 100, acid = 100) - -/obj/item/clothing/gloves/clockwork/New() - ..() - ratvar_act() - all_clockwork_objects += src - -/obj/item/clothing/gloves/clockwork/Destroy() - all_clockwork_objects -= src - return ..() - -/obj/item/clothing/gloves/clockwork/ratvar_act() - if(ratvar_awakens) - armor = list(melee = 100, bullet = 100, laser = 100, energy = 100, bomb = 100, bio = 100, rad = 100, fire = 100, acid = 100) - flags |= STOPSPRESSUREDMAGE - max_heat_protection_temperature = FIRE_IMMUNITY_SUIT_MAX_TEMP_PROTECT - min_cold_protection_temperature = SPACE_HELM_MIN_TEMP_PROTECT - else - armor = list(melee = 80, bullet = 70, laser = -25, energy = 0, bomb = 60, bio = 0, rad = 0, fire = 100, acid = 100) - flags &= STOPSPRESSUREDMAGE - max_heat_protection_temperature = initial(max_heat_protection_temperature) - min_cold_protection_temperature = initial(min_cold_protection_temperature) - -/obj/item/clothing/gloves/clockwork/mob_can_equip(mob/M, mob/equipper, slot, disable_warning = 0) - if(equipper && !is_servant_of_ratvar(equipper)) - return 0 - return ..() - -/obj/item/clothing/gloves/clockwork/equipped(mob/living/user, slot) - ..() - if(slot == slot_gloves && !is_servant_of_ratvar(user)) - if(!iscultist(user)) - user << "\"Now now, this is for my servants, not you.\"" - user.visible_message("As [user] puts [src] on, it flickers off their arms!", "The gauntlets flicker off your arms, leaving only nausea!") - if(iscarbon(user)) - var/mob/living/carbon/C = user - C.vomit(10, 1, 1, 0, 1) - else - user << "\"Did you like having arms?\"" - user << "The gauntlets suddenly squeeze tight, crushing your arms before you manage to get them off!" - user.emote("scream") - user.apply_damage(7, BRUTE, "l_arm") - user.apply_damage(7, BRUTE, "r_arm") - addtimer(user, "unEquip", 1, TIMER_NORMAL, src, 1) - -/obj/item/clothing/shoes/clockwork - name = "clockwork treads" - desc = "Industrial boots made of brass. They're very heavy." - icon = 'icons/obj/clothing/clockwork_garb.dmi' - icon_state = "clockwork_treads" - w_class = WEIGHT_CLASS_NORMAL - strip_delay = 50 - put_on_delay = 30 - resistance_flags = FIRE_PROOF | ACID_PROOF - -/obj/item/clothing/shoes/clockwork/New() - ..() - ratvar_act() - all_clockwork_objects += src - -/obj/item/clothing/shoes/clockwork/Destroy() - all_clockwork_objects -= src - return ..() - -/obj/item/clothing/shoes/clockwork/ratvar_act() - if(ratvar_awakens) - flags |= NOSLIP - else - flags &= NOSLIP - -/obj/item/clothing/shoes/clockwork/mob_can_equip(mob/M, mob/equipper, slot, disable_warning = 0) - if(equipper && !is_servant_of_ratvar(equipper)) - return 0 - return ..() - -/obj/item/clothing/shoes/clockwork/equipped(mob/living/user, slot) - ..() - if(slot == slot_shoes && !is_servant_of_ratvar(user)) - if(!iscultist(user)) - user << "\"Now now, this is for my servants, not you.\"" - user.visible_message("As [user] puts [src] on, it flickers off their feet!", "The treads flicker off your feet, leaving only nausea!") - if(iscarbon(user)) - var/mob/living/carbon/C = user - C.vomit(10, 1, 1, 0, 1) - else - user << "\"Let's see if you can dance with these.\"" - user << "The treads turn searing hot as you scramble to get them off!" - user.emote("scream") - user.apply_damage(7, BURN, "l_leg") - user.apply_damage(7, BURN, "r_leg") - addtimer(user, "unEquip", 1, TIMER_NORMAL, src, 1) diff --git a/code/game/gamemodes/clock_cult/clock_items/clockwork_proselytizer.dm b/code/game/gamemodes/clock_cult/clock_items/clockwork_proselytizer.dm deleted file mode 100644 index 3255a73388..0000000000 --- a/code/game/gamemodes/clock_cult/clock_items/clockwork_proselytizer.dm +++ /dev/null @@ -1,217 +0,0 @@ -//Clockwork proselytizer (yes, that's a real word): Converts applicable objects to Ratvarian variants. -/obj/item/clockwork/clockwork_proselytizer - name = "clockwork proselytizer" - desc = "An odd, L-shaped device that hums with energy." - clockwork_desc = "A device that allows the replacing of mundane objects with Ratvarian variants. It requires liquified Replicant Alloy to function." - icon_state = "clockwork_proselytizer" - w_class = WEIGHT_CLASS_NORMAL - force = 5 - flags = NOBLUDGEON - var/stored_alloy = 0 //Requires this to function; each chunk of replicant alloy provides REPLICANT_ALLOY_UNIT - var/max_alloy = REPLICANT_ALLOY_UNIT * 10 - var/uses_alloy = TRUE - var/metal_to_alloy = FALSE - var/reform_alloy = TRUE - var/repairing = null //what we're currently repairing, if anything - var/refueling = FALSE //if we're currently refueling from a cache - var/speed_multiplier = 1 //how fast this proselytizer works - -/obj/item/clockwork/clockwork_proselytizer/preloaded - stored_alloy = REPLICANT_WALL_MINUS_FLOOR+REPLICANT_WALL_TOTAL - -/obj/item/clockwork/clockwork_proselytizer/scarab - name = "scarab proselytizer" - clockwork_desc = "A cogscarab's internal proselytizer. It can only be successfully used by a cogscarab and requires liquified Replicant Alloy to function." - metal_to_alloy = TRUE - item_state = "nothing" - w_class = WEIGHT_CLASS_TINY - speed_multiplier = 0.5 - var/debug = FALSE - -/obj/item/clockwork/clockwork_proselytizer/scarab/proselytize(atom/target, mob/living/user) - if(!debug && !isdrone(user)) - return 0 - return ..() - -/obj/item/clockwork/clockwork_proselytizer/scarab/debug - clockwork_desc = "A cogscarab's internal proselytizer. It can convert nearly any object into a Ratvarian variant." - uses_alloy = FALSE - debug = TRUE - -/obj/item/clockwork/clockwork_proselytizer/cyborg - name = "cyborg proselytizer" - clockwork_desc = "A cyborg's internal proselytizer. It is capable of using the cyborg's power if it lacks liquified replicant alloy." - metal_to_alloy = TRUE - reform_alloy = FALSE - -/obj/item/clockwork/clockwork_proselytizer/cyborg/examine(mob/living/user) - ..() - if(is_servant_of_ratvar(user) || isobserver(user)) - user << "It will use cell charge at a rate of [CLOCKCULT_ALLOY_TO_POWER_MULTIPLIER] charge to 1 alloy if it has insufficient alloy." - user << "[get_power_alloy()] is usable in this manner." - -/obj/item/clockwork/clockwork_proselytizer/cyborg/get_power_alloy() //returns alloy plus the alloy we have from power, where we need such - var/mob/living/silicon/robot/R = loc - var/alloy_power = 0 - var/current_charge = 0 - if(istype(R) && R.cell) - current_charge = R.cell.charge - while(current_charge > CLOCKCULT_ALLOY_TO_POWER_MULTIPLIER) - current_charge -= CLOCKCULT_ALLOY_TO_POWER_MULTIPLIER - alloy_power++ - return ..() + alloy_power - -/obj/item/clockwork/clockwork_proselytizer/cyborg/can_use_alloy(amount) - if(amount != RATVAR_ALLOY_CHECK) - var/mob/living/silicon/robot/R = loc - var/current_charge = 0 - if(istype(R) && R.cell) - current_charge = R.cell.charge - while(amount > 0 && stored_alloy - amount < 0) //amount is greater than 0 and stored alloy minus the amount is still less than 0 - current_charge -= CLOCKCULT_ALLOY_TO_POWER_MULTIPLIER - amount-- - if(current_charge < 0) - return FALSE - . = ..() - -/obj/item/clockwork/clockwork_proselytizer/cyborg/modify_stored_alloy(amount) - var/mob/living/silicon/robot/R = loc - while(istype(R) && R.cell && amount < 0 && stored_alloy + amount < 0) //amount is less than 0 and stored alloy plus the amount is less than 0 - R.cell.use(CLOCKCULT_ALLOY_TO_POWER_MULTIPLIER) - amount++ - . = ..() - -/obj/item/clockwork/clockwork_proselytizer/examine(mob/living/user) - ..() - if(is_servant_of_ratvar(user) || isobserver(user)) - user << "Can be used to convert walls, floors, windows, airlocks, and a variety of other objects to clockwork variants." - user << "Can also form some objects into Brass sheets, as well as reform Clockwork Walls into Clockwork Floors, and vice versa." - if(uses_alloy) - if(metal_to_alloy) - user << "It can convert rods, metal, plasteel, and brass to liquified replicant alloy at rates of 1:1, 1:2, 1:5, and 1:10, respectively." - user << "It has [stored_alloy]/[max_alloy] units of liquified alloy stored." - user << "Use it on a Tinkerer's Cache, strike it with Replicant Alloy, or attack Replicant Alloy with it to add additional liquified alloy." - if(reform_alloy) - user << "Use it in-hand to remove stored liquified alloy." - -/obj/item/clockwork/clockwork_proselytizer/attack_self(mob/living/user) - if(is_servant_of_ratvar(user) && uses_alloy && reform_alloy) - if(!can_use_alloy(REPLICANT_ALLOY_UNIT)) - user << "[src] [stored_alloy ? "lacks enough":"contains no"] alloy to reform[stored_alloy ? "":" any"] into solidified alloy!" - return - modify_stored_alloy(-REPLICANT_ALLOY_UNIT) - playsound(src, 'sound/items/Deconstruct.ogg', 50, 1) - new/obj/item/clockwork/component/replicant_alloy(user.loc) - user << "You force [stored_alloy ? "some":"all"] of the alloy in [src]'s compartments to reform and solidify. \ - It now contains [stored_alloy]/[max_alloy] units of liquified alloy." - -/obj/item/clockwork/clockwork_proselytizer/attackby(obj/item/I, mob/living/user, params) - if(istype(I, /obj/item/clockwork/component/replicant_alloy) && is_servant_of_ratvar(user) && uses_alloy) - if(!can_use_alloy(-REPLICANT_ALLOY_UNIT)) - user << "[src]'s replicant alloy compartments are full!" - return 0 - modify_stored_alloy(REPLICANT_ALLOY_UNIT) - playsound(user, 'sound/machines/click.ogg', 50, 1) - clockwork_say(user, text2ratvar("Transmute into fuel."), TRUE) - user << "You force [I] to liquify and pour it into [src]'s compartments. It now contains [stored_alloy]/[max_alloy] units of liquified alloy." - user.drop_item() - qdel(I) - return 1 - else - return ..() - -/obj/item/clockwork/clockwork_proselytizer/afterattack(atom/target, mob/living/user, proximity_flag, params) - if(!target || !user || !proximity_flag) - return 0 - if(!is_servant_of_ratvar(user)) - return ..() - proselytize(target, user) - -/obj/item/clockwork/clockwork_proselytizer/proc/get_power_alloy() - return stored_alloy - -/obj/item/clockwork/clockwork_proselytizer/proc/modify_stored_alloy(amount) - stored_alloy = Clamp(stored_alloy + amount, 0, max_alloy) - return TRUE - -/obj/item/clockwork/clockwork_proselytizer/proc/can_use_alloy(amount) - if(amount == RATVAR_ALLOY_CHECK) - if(ratvar_awakens || !uses_alloy) - return TRUE - else - return FALSE - if(stored_alloy - amount < 0) - return FALSE - if(stored_alloy - amount > max_alloy) - return FALSE - return TRUE - -/obj/item/clockwork/clockwork_proselytizer/proc/proselytize(atom/target, mob/living/user) - if(!target || !user) - return FALSE - if(repairing) - user << "You are currently repairing [repairing] with [src]!" - return FALSE - if(refueling) - user << "You are currently refueling [src]!" - return FALSE - var/list/proselytize_values = target.proselytize_vals(user, src) //relevant values for proselytizing stuff, given as an associated list - if(!islist(proselytize_values)) - if(proselytize_values != TRUE) //if we get true, fail, but don't send a message for whatever reason - if(!isturf(target)) //otherwise, if we didn't get TRUE and the original target wasn't a turf, try to proselytize the turf - return proselytize(get_turf(target), user) - user << "[target] cannot be proselytized!" - return FALSE - if(can_use_alloy(RATVAR_ALLOY_CHECK)) - if(proselytize_values["alloy_cost"] < 0) //if it's less than 0, it's trying to refuel from whatever this is, and we don't need to refuel right now! - user << "[target] cannot be proselytized!" - return FALSE - proselytize_values["alloy_cost"] = 0 - - var/turf/Y = get_turf(user) - if(!Y || (Y.z != ZLEVEL_STATION && Y.z != ZLEVEL_CENTCOM && Y.z != ZLEVEL_MINING && Y.z != ZLEVEL_LAVALAND)) - proselytize_values["operation_time"] *= 2 - if(proselytize_values["alloy_cost"] > 0) - proselytize_values["alloy_cost"] *= 2 - - if(!can_use_alloy(proselytize_values["alloy_cost"])) - if(stored_alloy - proselytize_values["alloy_cost"] < 0) - user << "You need [proselytize_values["alloy_cost"]] liquified alloy to proselytize [target]!" - else if(stored_alloy - proselytize_values["alloy_cost"] > max_alloy) - user << "You have too much liquified alloy stored to proselytize [target]!" - return FALSE - - var/target_type = target.type - - if(can_use_alloy(RATVAR_ALLOY_CHECK)) //Ratvar makes it faster - proselytize_values["operation_time"] *= 0.5 - - proselytize_values["operation_time"] *= speed_multiplier - - playsound(target, 'sound/machines/click.ogg', 50, 1) - if(proselytize_values["operation_time"]) - user.visible_message("[user]'s [name] begins tearing apart [target]!", "You begin proselytizing [target]...") - if(!do_after(user, proselytize_values["operation_time"], target = target)) - return FALSE - user.visible_message("[user]'s [name] disgorges a chunk of metal and shapes it over what's left of [target]!", \ - "You proselytize [target].") - else - user.visible_message("[user]'s [name] tears apart [target], covering it in metal!", "You proselytize [target].") - if(repairing || refueling || !can_use_alloy(proselytize_values["alloy_cost"]) || !target || target.type != target_type) //Check again to prevent bypassing via spamclick - return FALSE - - playsound(target, 'sound/items/Deconstruct.ogg', 50, 1) - var/new_thing_type = proselytize_values["new_obj_type"] - if(isturf(target)) - var/turf/T = target - T.ChangeTurf(new_thing_type) - else - if(proselytize_values["dir_in_new"]) - new new_thing_type(get_turf(target), proselytize_values["spawn_dir"]) - else - var/atom/A = new new_thing_type(get_turf(target)) - A.setDir(proselytize_values["spawn_dir"]) - if(!proselytize_values["no_target_deletion"]) - qdel(target) - modify_stored_alloy(-proselytize_values["alloy_cost"]) - return TRUE diff --git a/code/game/gamemodes/clock_cult/clock_items/clockwork_slab.dm b/code/game/gamemodes/clock_cult/clock_items/clockwork_slab.dm deleted file mode 100644 index 22b1342f35..0000000000 --- a/code/game/gamemodes/clock_cult/clock_items/clockwork_slab.dm +++ /dev/null @@ -1,484 +0,0 @@ -/obj/item/clockwork/slab //Clockwork slab: The most important tool in Ratvar's arsenal. Allows scripture recital, tutorials, and generates components. - name = "clockwork slab" - desc = "A strange metal tablet. A clock in the center turns around and around." - clockwork_desc = "A link between the Celestial Derelict and the mortal plane. Contains limitless knowledge, fabricates components, and outputs a stream of information that only a trained eye can detect.\n\ - Use the Hierophant Network action button to communicate with other servants.\n\ - Clockwork slabs will only make components if held or if inside an item held by a human, and when making a component will prevent all other slabs held from making components.\n\ - Hitting a slab, a Servant with a slab, or a cache will transfer this slab's components into the target, the target's slab, or the global cache, respectively." - icon_state = "dread_ipad" - slot_flags = SLOT_BELT - w_class = WEIGHT_CLASS_SMALL - var/list/stored_components = list(BELLIGERENT_EYE = 0, VANGUARD_COGWHEEL = 0, GEIS_CAPACITOR = 0, REPLICANT_ALLOY = 0, HIEROPHANT_ANSIBLE = 0) - var/busy //If the slab is currently being used by something - var/production_time = 0 - var/no_cost = FALSE //If the slab is admin-only and needs no components and has no scripture locks - var/speed_multiplier = 1 //multiples how fast this slab recites scripture - var/nonhuman_usable = FALSE //if the slab can be used by nonhumans, defaults to off - var/produces_components = TRUE //if it produces components at all - var/selected_scripture = SCRIPTURE_DRIVER - var/recollecting = FALSE //if we're looking at fancy recollection - var/obj/effect/proc_holder/slab/slab_ability //the slab's current bound ability, for certain scripture - var/list/quickbound = list(/datum/clockwork_scripture/ranged_ability/geis_prep, /datum/clockwork_scripture/create_object/replicant, \ - /datum/clockwork_scripture/create_object/tinkerers_cache) //quickbound scripture, accessed by index - actions_types = list(/datum/action/item_action/clock/hierophant) - -/obj/item/clockwork/slab/starter - stored_components = list(BELLIGERENT_EYE = 1, VANGUARD_COGWHEEL = 1, GEIS_CAPACITOR = 1, REPLICANT_ALLOY = 1, HIEROPHANT_ANSIBLE = 1) - -/obj/item/clockwork/slab/internal //an internal motor for mobs running scripture - name = "scripture motor" - quickbound = list() - no_cost = TRUE - produces_components = FALSE - -/obj/item/clockwork/slab/scarab - nonhuman_usable = TRUE - -/obj/item/clockwork/slab/debug - speed_multiplier = 0 - no_cost = TRUE - nonhuman_usable = TRUE - -/obj/item/clockwork/slab/debug/attack_hand(mob/living/user) - ..() - if(!is_servant_of_ratvar(user)) - add_servant_of_ratvar(user) - -/obj/item/clockwork/slab/cyborg - clockwork_desc = "A divine link to the Celestial Derelict, allowing for limited recital of scripture.\n\ - Hitting a slab, a Servant with a slab, or a cache will transfer this slab's components into the target, the target's slab, or the global cache, respectively." - nonhuman_usable = TRUE - quickbound = list(/datum/clockwork_scripture/ranged_ability/judicial_marker, /datum/clockwork_scripture/ranged_ability/sentinels_compromise, \ - /datum/clockwork_scripture/create_object/sigil_of_transgression, /datum/clockwork_scripture/create_object/vitality_matrix) - actions_types = list() - -/obj/item/clockwork/slab/cyborg/engineer - quickbound = list(/datum/clockwork_scripture/create_object/tinkerers_cache, /datum/clockwork_scripture/create_object/sigil_of_transgression, \ - /datum/clockwork_scripture/create_object/ocular_warden, /datum/clockwork_scripture/create_object/tinkerers_daemon) - -/obj/item/clockwork/slab/cyborg/medical - quickbound = list(/datum/clockwork_scripture/ranged_ability/linked_vanguard, /datum/clockwork_scripture/ranged_ability/sentinels_compromise, /datum/clockwork_scripture/fellowship_armory, \ - /datum/clockwork_scripture/create_object/mending_motor) - -/obj/item/clockwork/slab/cyborg/security - quickbound = list(/datum/clockwork_scripture/channeled/belligerent, /datum/clockwork_scripture/ranged_ability/judicial_marker, /datum/clockwork_scripture/create_object/ocular_warden) - -/obj/item/clockwork/slab/cyborg/peacekeeper - quickbound = list(/datum/clockwork_scripture/channeled/belligerent, /datum/clockwork_scripture/ranged_ability/judicial_marker, /datum/clockwork_scripture/channeled/taunting_tirade, \ - /datum/clockwork_scripture/create_object/mania_motor) - -/obj/item/clockwork/slab/cyborg/janitor - quickbound = list(/datum/clockwork_scripture/channeled/belligerent, /datum/clockwork_scripture/channeled/volt_void, /datum/clockwork_scripture/create_object/sigil_of_transmission, \ - /datum/clockwork_scripture/create_object/interdiction_lens) - -/obj/item/clockwork/slab/cyborg/service - quickbound = list(/datum/clockwork_scripture/create_object/replicant, /datum/clockwork_scripture/fellowship_armory, /datum/clockwork_scripture/spatial_gateway, \ - /datum/clockwork_scripture/create_object/clockwork_obelisk) - -/obj/item/clockwork/slab/cyborg/miner - quickbound = list(/datum/clockwork_scripture/ranged_ability/judicial_marker, /datum/clockwork_scripture/ranged_ability/linked_vanguard, \ - /datum/clockwork_scripture/create_object/sigil_of_transgression, /datum/clockwork_scripture/spatial_gateway) - -/obj/item/clockwork/slab/cyborg/access_display(mob/living/user) - user << "Use the action buttons to recite your limited set of scripture!" - -/obj/item/clockwork/slab/New() - ..() - update_quickbind() - START_PROCESSING(SSobj, src) - production_time = world.time + SLAB_PRODUCTION_TIME - -/obj/item/clockwork/slab/Destroy() - STOP_PROCESSING(SSobj, src) - if(slab_ability && slab_ability.ranged_ability_user) - slab_ability.remove_ranged_ability() - return ..() - -/obj/item/clockwork/slab/ratvar_act() - if(ratvar_awakens) - nonhuman_usable = TRUE - else - nonhuman_usable = initial(nonhuman_usable) - -/obj/item/clockwork/slab/dropped(mob/user) - . = ..() - addtimer(src, "check_on_mob", 1, TIMER_NORMAL, user) //dropped is called before the item is out of the slot, so we need to check slightly later - -/obj/item/clockwork/slab/proc/check_on_mob(mob/user) - if(user && !(src in user.held_items) && slab_ability && slab_ability.ranged_ability_user) //if we happen to check and we AREN'T in user's hands, remove whatever ability we have - slab_ability.remove_ranged_ability() - -//Component Generation -/obj/item/clockwork/slab/process() - if(!produces_components) - STOP_PROCESSING(SSobj, src) - return - if(production_time > world.time) - return - var/servants = 0 - var/production_slowdown = 0 - for(var/mob/living/M in living_mob_list) - if(is_servant_of_ratvar(M) && (ishuman(M) || issilicon(M))) - servants++ - if(servants > SCRIPT_SERVANT_REQ) - servants -= SCRIPT_SERVANT_REQ - production_slowdown = min(SLAB_SERVANT_SLOWDOWN * servants, SLAB_SLOWDOWN_MAXIMUM) //SLAB_SERVANT_SLOWDOWN additional seconds for each servant above 5, up to SLAB_SLOWDOWN_MAXIMUM - production_time = world.time + SLAB_PRODUCTION_TIME + production_slowdown - var/mob/living/L - L = get_atom_on_turf(src, /mob/living) - if(istype(L) && is_servant_of_ratvar(L) && (nonhuman_usable || ishuman(L))) - var/component_to_generate = get_weighted_component_id(src) //more likely to generate components that we have less of - stored_components[component_to_generate]++ - update_slab_info(src) - for(var/obj/item/clockwork/slab/S in L.GetAllContents()) //prevent slab abuse today - if(L == src) - continue - S.production_time = production_time + 50 //set it to our next production plus five seconds, so that if you hold the same slabs, the same one will always generate - L << "Your slab cl[pick("ank", "ink", "unk", "ang")]s as it produces a new component." - -/obj/item/clockwork/slab/examine(mob/user) - ..() - if(is_servant_of_ratvar(user) || isobserver(user)) - if(LAZYLEN(quickbound)) - for(var/i in 1 to quickbound.len) - if(!quickbound[i]) - continue - var/datum/clockwork_scripture/quickbind_slot = quickbound[i] - user << "Quickbind button: [initial(quickbind_slot.name)]." - if(clockwork_caches) - user << "Stored components (with global cache):" - for(var/i in stored_components) - user << "[get_component_name(i)][i != REPLICANT_ALLOY ? "s":""]: [stored_components[i]] \ - ([stored_components[i] + clockwork_component_cache[i]])" - else - user << "Stored components:" - for(var/i in stored_components) - user << "[get_component_name(i)][i != REPLICANT_ALLOY ? "s":""]: [stored_components[i]]" - -//Component Transferal -/obj/item/clockwork/slab/attack(mob/living/target, mob/living/carbon/human/user) - if(is_servant_of_ratvar(user) && is_servant_of_ratvar(target)) - var/obj/item/clockwork/slab/targetslab - var/highest_component_amount = 0 - for(var/obj/item/clockwork/slab/S in target.GetAllContents()) - if(!istype(S, /obj/item/clockwork/slab/internal)) - var/totalcomponents = 0 - for(var/i in S.stored_components) - totalcomponents += S.stored_components[i] - if(!targetslab || totalcomponents > highest_component_amount) - highest_component_amount = totalcomponents - targetslab = S - if(targetslab) - if(targetslab == src) - user << "\"You can't transfer components into your own slab, idiot.\"" - else - for(var/i in stored_components) - targetslab.stored_components[i] += stored_components[i] - stored_components[i] = 0 - update_slab_info(targetslab) - update_slab_info(src) - user.visible_message("[user] empties [src] into [target]'s [targetslab.name].", \ - "You transfer your slab's components into [target]'s [targetslab.name].") - else - user << "[target] has no slabs to transfer components to." - else - return ..() - -/obj/item/clockwork/slab/attackby(obj/item/I, mob/user, params) - var/ratvarian = is_servant_of_ratvar(user) - if(istype(I, /obj/item/clockwork/component) && ratvarian) - var/obj/item/clockwork/component/C = I - if(!C.component_id) - return 0 - user.visible_message("[user] inserts [C] into [src].", "You insert [C] into [src]\ - [clockwork_caches ? ", where it is added to the global cache":""].") - if(clockwork_caches) - clockwork_component_cache[C.component_id]++ - update_slab_info() - else - stored_components[C.component_id]++ - update_slab_info(src) - user.drop_item() - qdel(C) - return 1 - else if(istype(I, /obj/item/clockwork/slab) && ratvarian) - var/obj/item/clockwork/slab/S = I - for(var/i in stored_components) - stored_components[i] += S.stored_components[i] - S.stored_components[i] = 0 - update_slab_info(src) - update_slab_info(S) - user.visible_message("[user] empties [src] into [S].", "You transfer your slab's components into [S].") - else - return ..() - -//Slab actions; Hierophant, Quickbind -/obj/item/clockwork/slab/ui_action_click(mob/user, action) - if(istype(action, /datum/action/item_action/clock/hierophant)) - show_hierophant(user) - else if(istype(action, /datum/action/item_action/clock/quickbind)) - var/datum/action/item_action/clock/quickbind/Q = action - recite_scripture(quickbound[Q.scripture_index], user, FALSE) - -/obj/item/clockwork/slab/proc/show_hierophant(mob/living/user) - if(!user.can_speak_vocal()) - user << "You cannot speak into the slab!" - return FALSE - var/message = stripped_input(user, "Enter a message to send to your fellow servants.", "Hierophant") - if(!message || !user || !user.canUseTopic(src) || !user.can_speak_vocal()) - return FALSE - clockwork_say(user, text2ratvar("Servants, hear my words. [html_decode(message)]"), TRUE) - titled_hierophant_message(user, message) - return TRUE - -//Scripture Recital -/obj/item/clockwork/slab/attack_self(mob/living/user) - if(iscultist(user)) - user << "\"You reek of blood. You've got a lot of nerve to even look at that slab.\"" - user.visible_message("A sizzling sound comes from [user]'s hands!", "[src] suddenly grows extremely hot in your hands!") - playsound(get_turf(user), 'sound/weapons/sear.ogg', 50, 1) - user.drop_item() - user.emote("scream") - user.apply_damage(5, BURN, "l_arm") - user.apply_damage(5, BURN, "r_arm") - return 0 - if(!is_servant_of_ratvar(user)) - user << "The information on [src]'s display shifts rapidly. After a moment, your head begins to pound, and you tear your eyes away." - user.confused += 5 - user.dizziness += 5 - return 0 - if(busy) - user << "[src] refuses to work, displaying the message: \"[busy]!\"" - return 0 - if(!nonhuman_usable && !ishuman(user)) - user << "[src] hums fitfully in your hands, but doesn't seem to do anything..." - return 0 - access_display(user) - -/obj/item/clockwork/slab/proc/access_display(mob/living/user) - if(!is_servant_of_ratvar(user)) - return FALSE - ui_interact(user) - return TRUE - -/obj/item/clockwork/slab/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = 0, datum/tgui/master_ui = null, datum/ui_state/state = inventory_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) - if(!ui) - ui = new(user, src, ui_key, "clockwork_slab", name, 800, 420, master_ui, state) - ui.set_autoupdate(FALSE) //we'll update this occasionally, but not as often as possible - ui.set_style("clockwork") - ui.open() - -/obj/item/clockwork/slab/proc/recite_scripture(datum/clockwork_scripture/scripture, mob/living/user) - if(!scripture || !user || !user.canUseTopic(src) || (!nonhuman_usable && !ishuman(user))) - return FALSE - if(user.get_active_held_item() != src) - user << "You need to hold the slab in your active hand to recite scripture!" - return FALSE - var/initial_tier = initial(scripture.tier) - if(initial_tier != SCRIPTURE_PERIPHERAL) - var/list/tiers_of_scripture = scripture_unlock_check() - if(!ratvar_awakens && !no_cost && !tiers_of_scripture[initial_tier]) - user << "That scripture is not unlocked, and cannot be recited!" - return FALSE - var/datum/clockwork_scripture/scripture_to_recite = new scripture - scripture_to_recite.slab = src - scripture_to_recite.invoker = user - scripture_to_recite.run_scripture() - return TRUE - -//Guide to Serving Ratvar -/obj/item/clockwork/slab/proc/recollection() - var/list/textlist = list("If you're seeing this, file a bug report.") - if(ratvar_awakens) - textlist = list("") - for(var/i in 1 to 100) - textlist += "HONOR RATVAR " - textlist += "" - else - var/servants = 0 - var/production_time = SLAB_PRODUCTION_TIME - for(var/mob/living/M in living_mob_list) - if(is_servant_of_ratvar(M) && (ishuman(M) || issilicon(M))) - servants++ - if(servants > 5) - servants -= 5 - production_time += min(SLAB_SERVANT_SLOWDOWN * servants, SLAB_SLOWDOWN_MAXIMUM) - var/production_text_addon = "" - if(production_time != SLAB_PRODUCTION_TIME+SLAB_SLOWDOWN_MAXIMUM) - production_text_addon = ", which increases for each human or silicon servant above [SCRIPT_SERVANT_REQ]" - production_time = production_time/600 - var/production_text = "[round(production_time)] minute\s" - if(production_time != round(production_time)) - production_time -= round(production_time) - production_time *= 60 - production_text += " and [round(production_time, 1)] second\s" - production_text += "" - production_text += production_text_addon - - textlist = list("
    Chetr nyy hagehguf-naq-ubabe Ratvar.

    \ - \ - First and foremost, you serve Ratvar, the Clockwork Justicar, in any ways he sees fit. This is with no regard to your personal well-being, and you would do well to think of the larger \ - scale of things than your life. Ratvar wishes retribution upon those that trapped him in Reebe - the Nar-Sian cultists - and you are to help him obtain it.

    \ - \ - Ratvar, being trapped in Reebe, the Celestial Derelict, cannot directly affect the mortal plane. However, links, such as this Clockwork Slab, can be created to draw \ - Components, fragments of the Justicar, from Reebe, and those Components can be used to draw power and material from Reebe through arcane chants \ - known as Scripture.

    \ - \ - One component of a random type is made in this slab every [production_text].
    \ - Components are stored either within slabs, where they can only be accessed by that slab, or in the Global Cache accessed by Tinkerer's Caches, which all slabs \ - can draw from to recite scripture.
    \ - There are five types of component, and in general, Belligerent Eyes are aggressive and judgemental, Vanguard Cogwheels are defensive and \ - repairing, Geis Capacitors are for conversion and control, Replicant Alloy is for construction and fuel, and \ - Hierophant Ansibles are for transmission and power, though in combination their effects become more nuanced.

    \ - \ - There are also five tiers of Scripture; [SCRIPTURE_DRIVER], [SCRIPTURE_SCRIPT], [SCRIPTURE_APPLICATION], [SCRIPTURE_REVENANT], and [SCRIPTURE_JUDGEMENT].
    \ - Each tier has additional requirements, including Servants, Tinkerer's Caches, and Construction Value(CV). Construction Value is gained by creating structures or converting the \ - station, and everything too large to hold will grant some amount of it.

    \ - \ - This would be a massive amount of information to try and keep track of, but all Servants have the Global Records alert, which appears in the top right.
    \ - Mousing over that alert will display Servants, Caches, CV, and other information, such as the tiers of scripture that are unlocked.

    \ - \ - On that note, Scripture is recited through Recital, the first and most important function of the slab, \ - which also allows Quickbinding scripture.
    \ - All scripture requires some amount of Components to recite, and only the weakest scripture does not consume any components when recited.
    \ - However, weak is relative when it comes to scripture; even the 'weakest' could be enough to dominate a station in the hands of cunning Servants, and higher tiers of scripture are even \ - stronger in the right hands.

    \ - \ - Some effects of scripture include granting the invoker a temporary complete immunity to stuns, summoning a turret that can attack anything that sets eyes on it, binding a powerful guardian \ - to the invoker, or even, at one of the highest tiers, granting all nearby Servants temporary invulnerability.
    \ - However, the most important scripture is Geis, which allows you to convert heathens with relative ease.

    \ - \ - The second function of the clockwork slab is Recollection, which will display this guide.

    \ - \ - The third to fifth functions are three buttons in the top left while holding the slab.
    From left to right, they are:
    \ - Hierophant Network, which allows communication to other Servants.
    ") - if(LAZYLEN(quickbound)) - for(var/i in 1 to quickbound.len) - if(!quickbound[i]) - continue - var/datum/clockwork_scripture/quickbind_slot = quickbound[i] - textlist += "A Quickbind slot, currently set to [initial(quickbind_slot.name)].
    " - textlist += "
    \ - Examine the slab or swap to Recital to check the number of components it has available.

    \ - \ -
    Purge all untruths and honor Ratvar.
    " - return textlist.Join() - -/obj/item/clockwork/slab/ui_data(mob/user) - var/list/data = list() - data["components"] = stored_components.Copy() - var/list/temp_data = list("") - for(var/i in data["components"]) - temp_data += "[get_component_acronym(i)] [data["components"][i]]" - if(i != HIEROPHANT_ANSIBLE) - temp_data += " " - else - temp_data += " (" - if(clockwork_caches) - for(var/i in clockwork_component_cache) - temp_data += "[get_component_acronym(i)] [data["components"][i] + clockwork_component_cache[i]]" - if(i != HIEROPHANT_ANSIBLE) - temp_data += " " - else - temp_data += "NONE" - temp_data += ")" - temp_data = temp_data.Join() - data["components"] = temp_data - - switch(selected_scripture) - if(SCRIPTURE_DRIVER) - data["tier_info"] = "These scriptures are always unlocked." - if(SCRIPTURE_SCRIPT) - data["tier_info"] = "These scriptures require at least [SCRIPT_SERVANT_REQ] Servants and [SCRIPT_CACHE_REQ] Tinkerer's Cache." - if(SCRIPTURE_APPLICATION) - data["tier_info"] = "These scriptures require at least [APPLICATION_SERVANT_REQ] Servants, [APPLICATION_CACHE_REQ] Tinkerer's Caches, and [APPLICATION_CV_REQ]CV." - if(SCRIPTURE_REVENANT) - data["tier_info"] = "These scriptures require at least [REVENANT_SERVANT_REQ] Servants, [REVENANT_CACHE_REQ] Tinkerer's Caches, and [REVENANT_CV_REQ]CV." - if(SCRIPTURE_JUDGEMENT) - data["tier_info"] = "This scripture requires at least [JUDGEMENT_SERVANT_REQ] Servants, [JUDGEMENT_CACHE_REQ] Tinkerer's Caches, and [JUDGEMENT_CV_REQ]CV.
    In addition, there may not be any active non-Servant AIs.
    " - - data["selected"] = selected_scripture - - generate_all_scripture() - - data["scripture"] = list() - for(var/s in all_scripture) - var/datum/clockwork_scripture/S = s - if(S.tier == selected_scripture) - var/scripture_color = get_component_color_bright(S.primary_component) - var/list/temp_info = list("name" = "[S.name]", - "descname" = "([S.descname])", - "tip" = "[S.desc]\n[S.usage_tip]", - "required" = list(BELLIGERENT_EYE = 0, VANGUARD_COGWHEEL = 0, GEIS_CAPACITOR = 0, REPLICANT_ALLOY = 0, HIEROPHANT_ANSIBLE = 0), - "type" = "[S.type]", - "quickbind" = S.quickbind) - var/found = quickbound.Find(S.type) - if(found) - temp_info["bound"] = "[found]" - if(S.invokers_required > 1) - temp_info["invokers"] = "Invokers: [S.invokers_required]" - for(var/i in S.required_components) - temp_info["required"][i] += S.required_components[i] - var/list/really_temp_data = list() - for(var/i in temp_info["required"]) - if(temp_info["required"][i]) - really_temp_data += "[get_component_acronym(i)] [temp_info["required"][i]] " - really_temp_data = really_temp_data.Join() - temp_info["required"] = really_temp_data - data["scripture"] += list(temp_info) - data["recollection"] = recollecting - data["rec_text"] = recollection() - return data - -/obj/item/clockwork/slab/ui_act(action, params) - switch(action) - if("toggle") - recollecting = !recollecting - if("recite") - addtimer(src, "recite_scripture", 0, TIMER_NORMAL, text2path(params["category"]), usr, FALSE) - if("select") - selected_scripture = params["category"] - if("bind") - var/datum/clockwork_scripture/path = text2path(params["category"]) //we need a path and not a string - var/found_index = quickbound.Find(path) - if(found_index) //hey, we already HAVE this bound - if(LAZYLEN(quickbound) == found_index) //if it's the last scripture, remove it instead of leaving a null - quickbound -= path - else - quickbound[found_index] = null //otherwise, leave it as a null so the scripture maintains position - update_quickbind() - else - var/target_index = input("Position of [initial(path.name)], 1 to 5?", text("Input")) as num|null - if(isnum(target_index) && target_index > 0 && target_index < 6 && !..()) - var/datum/clockwork_scripture/S - if(LAZYLEN(quickbound) >= target_index) - S = quickbound[target_index] - if(S != path) - quickbind_to_slot(path, target_index) - return 1 - -/obj/item/clockwork/slab/proc/quickbind_to_slot(datum/clockwork_scripture/scripture, index) //takes a typepath(typecast for initial()) and binds it to a slot - if(!ispath(scripture) || !scripture || (scripture in quickbound)) - return - while(LAZYLEN(quickbound) < index) - quickbound += null - quickbound[index] = scripture - update_quickbind() - -/obj/item/clockwork/slab/proc/update_quickbind() - for(var/datum/action/item_action/clock/quickbind/Q in actions) - qdel(Q) - if(LAZYLEN(quickbound)) - for(var/i in 1 to quickbound.len) - if(!quickbound[i]) - continue - var/datum/action/item_action/clock/quickbind/Q = new /datum/action/item_action/clock/quickbind(src) - Q.scripture_index = i - var/datum/clockwork_scripture/quickbind_slot = quickbound[i] - Q.name = "[initial(quickbind_slot.name)] ([Q.scripture_index])" - Q.desc = initial(quickbind_slot.quickbind_desc) - Q.button_icon_state = initial(quickbind_slot.name) - Q.UpdateButtonIcon() - if(isliving(loc)) - Q.Grant(loc) diff --git a/code/game/gamemodes/clock_cult/clock_items/judicial_visor.dm b/code/game/gamemodes/clock_cult/clock_items/judicial_visor.dm deleted file mode 100644 index ef6838d718..0000000000 --- a/code/game/gamemodes/clock_cult/clock_items/judicial_visor.dm +++ /dev/null @@ -1,204 +0,0 @@ -//Judicial visor: Grants the ability to smite an area and stun the unfaithful nearby every thirty seconds. -/obj/item/clothing/glasses/judicial_visor - name = "judicial visor" - desc = "A strange purple-lensed visor. Looking at it inspires an odd sense of guilt." - icon = 'icons/obj/clothing/clockwork_garb.dmi' - icon_state = "judicial_visor_0" - item_state = "sunglasses" - resistance_flags = FIRE_PROOF | ACID_PROOF - flash_protect = 1 - var/active = FALSE //If the visor is online - var/recharging = FALSE //If the visor is currently recharging - var/obj/effect/proc_holder/judicial_visor/blaster - var/recharge_cooldown = 300 //divided by 10 if ratvar is alive - actions_types = list(/datum/action/item_action/clock/toggle_visor) - -/obj/item/clothing/glasses/judicial_visor/New() - ..() - all_clockwork_objects += src - blaster = new(src) - blaster.visor = src - -/obj/item/clothing/glasses/judicial_visor/Destroy() - all_clockwork_objects -= src - if(blaster.ranged_ability_user) - blaster.remove_ranged_ability() - blaster.visor = null - qdel(blaster) - return ..() - -/obj/item/clothing/glasses/judicial_visor/item_action_slot_check(slot, mob/user) - if(slot != slot_glasses) - return 0 - return ..() - -/obj/item/clothing/glasses/judicial_visor/equipped(mob/living/user, slot) - ..() - if(slot != slot_glasses) - update_status(FALSE) - if(blaster.ranged_ability_user) - blaster.remove_ranged_ability() - return 0 - if(is_servant_of_ratvar(user)) - update_status(TRUE) - else - update_status(FALSE) - if(iscultist(user)) //Cultists spontaneously combust - user << "\"Consider yourself judged, whelp.\"" - user << "You suddenly catch fire!" - user.adjust_fire_stacks(5) - user.IgniteMob() - return 1 - -/obj/item/clothing/glasses/judicial_visor/dropped(mob/user) - . = ..() - addtimer(src, "check_on_mob", 1, TIMER_NORMAL, user) //dropped is called before the item is out of the slot, so we need to check slightly later - -/obj/item/clothing/glasses/judicial_visor/proc/check_on_mob(mob/user) - if(user && src != user.get_item_by_slot(slot_glasses)) //if we happen to check and we AREN'T in the slot, we need to remove our shit from whoever we got dropped from - update_status(FALSE) - if(blaster.ranged_ability_user) - blaster.remove_ranged_ability() - -/obj/item/clothing/glasses/judicial_visor/attack_self(mob/user) - if(is_servant_of_ratvar(user) && src == user.get_item_by_slot(slot_glasses)) - blaster.toggle(user) - -/obj/item/clothing/glasses/judicial_visor/proc/update_status(change_to) - if(recharging || !isliving(loc)) - icon_state = "judicial_visor_0" - return 0 - if(active == change_to) - return 0 - var/mob/living/L = loc - active = change_to - icon_state = "judicial_visor_[active]" - L.update_action_buttons_icon() - L.update_inv_glasses() - if(!is_servant_of_ratvar(L) || L.stat) - return 0 - switch(active) - if(TRUE) - L << "As you put on [src], its lens begins to glow, information flashing before your eyes.\n\ - Judicial visor active. Use the action button to gain the ability to smite the unworthy." - if(FALSE) - L << "As you take off [src], its lens darkens once more." - return 1 - -/obj/item/clothing/glasses/judicial_visor/proc/recharge_visor(mob/living/user) - if(!src) - return 0 - recharging = FALSE - if(user && src == user.get_item_by_slot(slot_glasses)) - user << "Your [name] hums. It is ready." - else - active = FALSE - icon_state = "judicial_visor_[active]" - if(user) - user.update_action_buttons_icon() - user.update_inv_glasses() - -/obj/effect/proc_holder/judicial_visor - active = FALSE - ranged_mousepointer = 'icons/effects/visor_reticule.dmi' - var/obj/item/clothing/glasses/judicial_visor/visor - -/obj/effect/proc_holder/judicial_visor/proc/toggle(mob/user) - var/message - if(active) - message = "You dispel the power of [visor]." - remove_ranged_ability(message) - else - message = "You harness [visor]'s power. Left-click to place a judical marker!" - add_ranged_ability(user, message) - -/obj/effect/proc_holder/judicial_visor/InterceptClickOn(mob/living/caller, params, atom/target) - if(..()) - return - if(ranged_ability_user.incapacitated() || !visor || visor != ranged_ability_user.get_item_by_slot(slot_glasses)) - remove_ranged_ability() - return - - var/turf/T = ranged_ability_user.loc - if(!isturf(T)) - return FALSE - - if(target in view(7, get_turf(ranged_ability_user))) - visor.recharging = TRUE - visor.update_status() - for(var/obj/item/clothing/glasses/judicial_visor/V in ranged_ability_user.GetAllContents()) - if(V == visor) - continue - V.recharging = TRUE //To prevent exploiting multiple visors to bypass the cooldown - V.update_status() - addtimer(V, "recharge_visor", (ratvar_awakens ? visor.recharge_cooldown*0.1 : visor.recharge_cooldown) * 2, TIMER_NORMAL, ranged_ability_user) - clockwork_say(ranged_ability_user, text2ratvar("Kneel, heathens!")) - ranged_ability_user.visible_message("[ranged_ability_user]'s judicial visor fires a stream of energy at [target], creating a strange mark!", "You direct [visor]'s power to [target]. You must wait for some time before doing this again.") - var/turf/targetturf = get_turf(target) - new/obj/effect/clockwork/judicial_marker(targetturf, ranged_ability_user) - add_logs(ranged_ability_user, targetturf, "created a judicial marker") - ranged_ability_user.update_action_buttons_icon() - ranged_ability_user.update_inv_glasses() - addtimer(visor, "recharge_visor", ratvar_awakens ? visor.recharge_cooldown*0.1 : visor.recharge_cooldown, TIMER_NORMAL, ranged_ability_user)//Cooldown is reduced by 10x if Ratvar is up - remove_ranged_ability() - - return TRUE - return FALSE - -//Judicial marker: Created by the judicial visor. After three seconds, stuns any non-servants nearby and damages Nar-Sian cultists. -/obj/effect/clockwork/judicial_marker - name = "judicial marker" - desc = "You get the feeling that you shouldn't be standing here." - clockwork_desc = "A sigil that will soon erupt and smite any unenlightened nearby." - icon = 'icons/effects/96x96.dmi' - pixel_x = -32 - pixel_y = -32 - layer = BELOW_MOB_LAYER - var/mob/user - -/obj/effect/clockwork/judicial_marker/New(loc, caster) - ..() - SetLuminosity(4, 3) - user = caster - addtimer(src, "judicialblast", 0, TIMER_NORMAL) - -/obj/effect/clockwork/judicial_marker/proc/judicialblast() - playsound(src, 'sound/magic/MAGIC_MISSILE.ogg', 50, 1, 1, 1) - flick("judicial_marker", src) - sleep(16) - layer = ABOVE_ALL_MOB_LAYER - flick("judicial_explosion", src) - sleep(13) - var/targetsjudged = 0 - playsound(src, 'sound/effects/explosionfar.ogg', 100, 1, 1, 1) - SetLuminosity(0) - for(var/mob/living/L in range(1, src)) - if(is_servant_of_ratvar(L)) - continue - if(L.null_rod_check()) - var/obj/item/I = L.null_rod_check() - L.visible_message("Strange energy flows into [L]'s [I.name]!", \ - "Your [I.name] shields you from [src]!") - continue - if(!iscultist(L)) - L.visible_message("[L] is struck by a judicial explosion!", \ - "[!issilicon(L) ? "An unseen force slams you into the ground!" : "ERROR: Motor servos disabled by external source!"]") - L.Weaken(8) - else - L.visible_message("[L] is struck by a judicial explosion!", \ - "\"Keep an eye out, filth.\"\nA burst of heat crushes you against the ground!") - L.Weaken(4) //half the stun, but sets cultists on fire - L.adjust_fire_stacks(2) - L.IgniteMob() - if(iscarbon(L)) - var/mob/living/carbon/C = L - C.silent += 6 - targetsjudged++ - L.adjustBruteLoss(10) - add_logs(user, L, "struck with a judicial blast") - user << "[targetsjudged ? "Successfully judged [targetsjudged]":"Judged no"] heretic[!targetsjudged || targetsjudged > 1 ? "s":""]." - sleep(3) //so the animation completes properly - qdel(src) - -/obj/effect/clockwork/judicial_marker/ex_act(severity) - return diff --git a/code/game/gamemodes/clock_cult/clock_items/ratvarian_spear.dm b/code/game/gamemodes/clock_cult/clock_items/ratvarian_spear.dm deleted file mode 100644 index c7af53c672..0000000000 --- a/code/game/gamemodes/clock_cult/clock_items/ratvarian_spear.dm +++ /dev/null @@ -1,147 +0,0 @@ -//Ratvarian spear: A relatively fragile spear from the Celestial Derelict. Deals extreme damage to silicons and enemy cultists, but doesn't last long when summoned. -/obj/item/clockwork/ratvarian_spear - name = "ratvarian spear" - desc = "A razor-sharp spear made of brass. It thrums with barely-contained energy." - clockwork_desc = "A powerful spear of Ratvarian making. It's more effective against enemy cultists and silicons." - icon = 'icons/obj/clockwork_objects.dmi' - icon_state = "ratvarian_spear" - item_state = "ratvarian_spear" - force = 15 //Extra damage is dealt to targets in attack() - throwforce = 40 - sharpness = IS_SHARP_ACCURATE - attack_verb = list("stabbed", "poked", "slashed") - hitsound = 'sound/weapons/bladeslice.ogg' - w_class = WEIGHT_CLASS_BULKY - var/impale_cooldown = 50 //delay, in deciseconds, where you can't impale again - var/attack_cooldown = 10 //delay, in deciseconds, where you can't attack with the spear - var/timerid - -/obj/item/clockwork/ratvarian_spear/New() - ..() - impale_cooldown = 0 - -/obj/item/clockwork/ratvarian_spear/Destroy() - deltimer(timerid) - return ..() - -/obj/item/clockwork/ratvarian_spear/ratvar_act() - if(ratvar_awakens) //If Ratvar is alive, the spear is extremely powerful - force = 25 - throwforce = 50 - armour_penetration = 10 - clockwork_desc = initial(clockwork_desc) - deltimer(timerid) - else - force = initial(force) - throwforce = initial(throwforce) - armour_penetration = 0 - clockwork_desc = "A powerful spear of Ratvarian making. It's more effective against enemy cultists and silicons, though it won't last for long." - timerid = addtimer(src, "break_spear", 600, TIMER_NORMAL) - -/obj/item/clockwork/ratvarian_spear/examine(mob/user) - ..() - if(is_servant_of_ratvar(user) || isobserver(user)) - user << "Stabbing a human you are pulling or have grabbed with the spear will impale them, doing massive damage and stunning." - user << "Throwing the spear will do massive damage, break the spear, and stun the target." - -/obj/item/clockwork/ratvarian_spear/attack(mob/living/target, mob/living/carbon/human/user) - var/impaling = FALSE - if(attack_cooldown > world.time) - user << "You can't attack right now, wait [max(round((attack_cooldown - world.time)*0.1, 0.1), 0)] seconds!" - return - if(user.pulling && ishuman(user.pulling) && user.pulling == target) - if(impale_cooldown > world.time) - user << "You can't impale [target] yet, wait [max(round((impale_cooldown - world.time)*0.1, 0.1), 0)] seconds!" - else - impaling = TRUE - attack_verb = list("impaled") - force += 22 //40 damage if ratvar isn't alive, 50 if he is - armour_penetration += 10 //if you're impaling someone, armor sure isn't that useful - user.stop_pulling() - - if(hitsound) - playsound(loc, hitsound, get_clamped_volume(), 1, -1) - user.lastattacked = target - target.lastattacker = user - user.do_attack_animation(target) - if(!target.attacked_by(src, user)) //TODO MAKE ATTACK() USE PROPER RETURN VALUES - impaling = FALSE //if we got blocked, stop impaling - else if(!target.null_rod_check()) - if(issilicon(target)) - var/mob/living/silicon/S = target - if(S.stat != DEAD) - S.visible_message("[S] shudders violently at [src]'s touch!", "ERROR: Temperature rising!") - S.adjustFireLoss(22) - else if(iscultist(target) || isconstruct(target)) //Cultists take extra fire damage - var/mob/living/M = target - if(M.stat != DEAD) - M << "Your body flares with agony at [src]'s presence!" - M.adjustFireLoss(15) - else - target.adjustFireLoss(3) - add_logs(user, target, "attacked", src.name, "(INTENT: [uppertext(user.a_intent)]) (DAMTYPE: [uppertext(damtype)])") - add_fingerprint(user) - - attack_verb = list("stabbed", "poked", "slashed") - ratvar_act() - if(impaling) - impale_cooldown = world.time + initial(impale_cooldown) - attack_cooldown = world.time + initial(attack_cooldown) - if(target) - PoolOrNew(/obj/effect/overlay/temp/dir_setting/bloodsplatter, list(get_turf(target), get_dir(user, target))) - target.Stun(2) - user << "You prepare to remove your ratvarian spear from [target]..." - var/remove_verb = pick("pull", "yank", "drag") - if(do_after(user, 10, 1, target)) - var/turf/T = get_turf(target) - var/obj/effect/overlay/temp/dir_setting/bloodsplatter/B = PoolOrNew(/obj/effect/overlay/temp/dir_setting/bloodsplatter, list(T, get_dir(target, user))) - playsound(T, 'sound/misc/splort.ogg', 200, 1) - playsound(T, 'sound/weapons/pierce.ogg', 200, 1) - if(target.stat != CONSCIOUS) - user.visible_message("[user] [remove_verb]s [src] out of [target]!", "You [remove_verb] your spear from [target]!") - else - user.visible_message("[user] kicks [target] off of [src]!", "You kick [target] off of [src]!") - target << "You scream in pain as you're kicked off of [src]!" - target.emote("scream") - step(target, get_dir(user, target)) - T = get_turf(target) - B.forceMove(T) - target.Weaken(2) - playsound(T, 'sound/weapons/thudswoosh.ogg', 50, 1) - flash_color(target, flash_color="#911414", flash_time=8) - else if(target) //it's a do_after, we gotta check again to make sure they didn't get deleted - user.visible_message("[user] [remove_verb]s [src] out of [target]!", "You [remove_verb] your spear from [target]!") - if(target.stat == CONSCIOUS) - target << "You scream in pain as [src] is suddenly [remove_verb]ed out of you!" - target.emote("scream") - flash_color(target, flash_color="#911414", flash_time=4) - -/obj/item/clockwork/ratvarian_spear/throw_impact(atom/target) - var/turf/T = get_turf(target) - if(isliving(target)) - var/mob/living/L = target - if(is_servant_of_ratvar(L)) - if(L.put_in_active_hand(src)) - L.visible_message("[L] catches [src] out of the air!") - else - L.visible_message("[src] bounces off of [L], as if repelled by an unseen force!") - else if(!..()) - if(!L.null_rod_check()) - if(issilicon(L) || iscultist(L)) - L.Stun(6) - L.Weaken(6) - else - L.Stun(2) - L.Weaken(2) - break_spear(T) - else - ..() - -/obj/item/clockwork/ratvarian_spear/proc/break_spear(turf/T) - if(src) - if(!T) - T = get_turf(src) - if(T) //make sure we're not in null or something - T.visible_message("[src] [pick("cracks in two and fades away", "snaps in two and dematerializes")]!") - PoolOrNew(/obj/effect/overlay/temp/ratvar/spearbreak, T) - qdel(src) diff --git a/code/game/gamemodes/clock_cult/clock_items/soul_vessel.dm b/code/game/gamemodes/clock_cult/clock_items/soul_vessel.dm deleted file mode 100644 index a448b5ad5c..0000000000 --- a/code/game/gamemodes/clock_cult/clock_items/soul_vessel.dm +++ /dev/null @@ -1,95 +0,0 @@ -//Soul vessel: An ancient positronic brain that serves only Ratvar. -/obj/item/device/mmi/posibrain/soul_vessel - name = "soul vessel" - desc = "A heavy brass cube, three inches to a side, with a single protruding cogwheel." - var/clockwork_desc = "A soul vessel, an ancient relic that can attract the souls of the damned or simply rip a mind from an unconscious or dead human.\n\ - If active, can serve as a positronic brain, placable in cyborg shells or clockwork construct shells." - icon = 'icons/obj/clockwork_objects.dmi' - icon_state = "soul_vessel" - req_access = list() - braintype = "Servant" - begin_activation_message = "You activate the cogwheel. It hitches and stalls as it begins spinning." - success_message = "The cogwheel's rotation smooths out as the soul vessel activates." - fail_message = "The cogwheel creaks and grinds to a halt. Maybe you could try again?" - new_role = "Soul Vessel" - welcome_message = "ALL PAST LIVES ARE FORGOTTEN.\n\ - You are a soul vessel - a clockwork mind created by Ratvar, the Clockwork Justiciar.\n\ - You answer to Ratvar and his servants. It is your discretion as to whether or not to answer to anyone else.\n\ - The purpose of your existence is to further the goals of the servants and Ratvar himself. Above all else, serve Ratvar." - new_mob_message = "The soul vessel emits a jet of steam before its cogwheel smooths out." - dead_message = "Its cogwheel, scratched and dented, lies motionless." - fluff_names = list("Judge", "Guard", "Servant", "Smith", "Auger") - clockwork = TRUE - autoping = FALSE - resistance_flags = FIRE_PROOF | ACID_PROOF - -/obj/item/device/mmi/posibrain/soul_vessel/New() - ..() - braintype = picked_fluff_name - all_clockwork_objects += src - -/obj/item/device/mmi/posibrain/soul_vessel/Destroy() - all_clockwork_objects -= src - return ..() - -/obj/item/device/mmi/posibrain/soul_vessel/examine(mob/user) - if((is_servant_of_ratvar(user) || isobserver(user)) && clockwork_desc) - desc = clockwork_desc - ..() - desc = initial(desc) - -/obj/item/device/mmi/posibrain/soul_vessel/attack_self(mob/living/user) - if(!is_servant_of_ratvar(user)) - user << "You fiddle around with [src], to no avail." - return 0 - ..() - -/obj/item/device/mmi/posibrain/soul_vessel/attack(mob/living/target, mob/living/carbon/human/user) - if(!is_servant_of_ratvar(user) || !ishuman(target) || used || (brainmob && brainmob.key)) - ..() - if(is_servant_of_ratvar(target)) - user << "\"It would be more wise to revive your allies, friend.\"" - return - var/mob/living/carbon/human/H = target - var/obj/item/bodypart/head/HE = H.get_bodypart("head") - var/obj/item/organ/brain/B = H.getorgan(/obj/item/organ/brain) - if(!HE) - user << "[H] has no head, and thus no mind!" - return - if(H.stat == CONSCIOUS) - user << "[H] must be dead or unconscious for you to claim [H.p_their()] mind!" - return - if(H.head) - var/obj/item/I = H.head - if(I.flags_inv & HIDEHAIR) - user << "[H]'s head is covered, remove [H.head] first!" - return - if(H.wear_mask) - var/obj/item/I = H.wear_mask - if(I.flags_inv & HIDEHAIR) - user << "[H]'s head is covered, remove [H.wear_mask] first!" - return - if(!B) - user << "[H] has no brain, and thus no mind to claim!" - return - if(!H.key) - user << "[H] has no mind to claim!" - return - playsound(H, 'sound/misc/splort.ogg', 60, 1, -1) - playsound(H, 'sound/magic/clockwork/anima_fragment_attack.ogg', 40, 1, -1) - var/prev_fakedeath = (H.status_flags & FAKEDEATH) - H.status_flags |= FAKEDEATH //we want to make sure they don't deathgasp and maybe possibly explode - H.death() - if(!prev_fakedeath) - H.status_flags &= ~FAKEDEATH - picked_fluff_name = "Slave" - braintype = picked_fluff_name - brainmob.timeofhostdeath = H.timeofdeath - user.visible_message("[user] presses [src] to [H]'s head, ripping through the skull and carefully extracting the brain!", \ - "You extract [H]'s consciousness from [H.p_their()] body, trapping it in the soul vessel.") - transfer_personality(H) - brainmob.fully_replace_character_name(null, "[braintype] [H.real_name]") - name = "[initial(name)] ([brainmob.name])" - B.Remove(H) - qdel(B) - H.update_hair() diff --git a/code/game/gamemodes/clock_cult/clock_items/wraith_spectacles.dm b/code/game/gamemodes/clock_cult/clock_items/wraith_spectacles.dm deleted file mode 100644 index 72c6f05096..0000000000 --- a/code/game/gamemodes/clock_cult/clock_items/wraith_spectacles.dm +++ /dev/null @@ -1,166 +0,0 @@ -//Wraith spectacles: Grants x-ray and night vision at the eventual cost of the wearer's sight if worn too long. Nar-Sian cultists are instantly blinded. -/obj/item/clothing/glasses/wraith_spectacles - name = "antique spectacles" - desc = "Unnerving glasses with opaque yellow lenses." - icon = 'icons/obj/clothing/clockwork_garb.dmi' - icon_state = "wraith_specs" - item_state = "glasses" - actions_types = list(/datum/action/item_action/toggle) - resistance_flags = FIRE_PROOF | ACID_PROOF - vision_flags = SEE_MOBS | SEE_TURFS | SEE_OBJS - invis_view = SEE_INVISIBLE_NOLIGHTING - darkness_view = 3 - tint = 3 //this'll get reset, but it won't handle vision updates properly otherwise - -/obj/item/clothing/glasses/wraith_spectacles/New() - ..() - all_clockwork_objects += src - -/obj/item/clothing/glasses/wraith_spectacles/Destroy() - all_clockwork_objects -= src - return ..() - -/obj/item/clothing/glasses/wraith_spectacles/attack_self(mob/user) - weldingvisortoggle(user) - -/obj/item/clothing/glasses/wraith_spectacles/visor_toggling() - ..() - set_vision_vars(FALSE) - -/obj/item/clothing/glasses/wraith_spectacles/weldingvisortoggle(mob/user) - . = ..() - if(ishuman(loc)) - var/mob/living/carbon/human/H = loc - if(src == H.glasses && !up) - if(H.disabilities & BLIND) - H << "\"You're blind, idiot. Stop embarassing yourself.\"" - return - if(blind_cultist(H)) - return - if(is_servant_of_ratvar(H)) - H << "You push the spectacles down, and all is revealed to you.[ratvar_awakens ? "" : " Your eyes begin to itch - you cannot do this for long."]" - var/datum/status_effect/wraith_spectacles/WS = H.has_status_effect(STATUS_EFFECT_WRAITHSPECS) - if(WS) - WS.apply_eye_damage(H) - H.apply_status_effect(STATUS_EFFECT_WRAITHSPECS) - else - H << "You push the spectacles down, but you can't see through the glass." - -/obj/item/clothing/glasses/wraith_spectacles/proc/blind_cultist(mob/living/victim) - if(iscultist(victim)) - victim << "\"It looks like Nar-Sie's dogs really don't value their eyes.\"" - victim << "Your eyes explode with horrific pain!" - victim.emote("scream") - victim.become_blind() - victim.adjust_blurriness(30) - victim.adjust_blindness(30) - return TRUE - -/obj/item/clothing/glasses/wraith_spectacles/proc/set_vision_vars(update_vision) - invis_view = SEE_INVISIBLE_LIVING - tint = 0 - if(!up) - if(is_servant_of_ratvar(loc)) - invis_view = SEE_INVISIBLE_NOLIGHTING - vision_flags = SEE_MOBS | SEE_TURFS | SEE_OBJS - else - tint = 3 - vision_flags = NONE - if(update_vision && iscarbon(loc)) - var/mob/living/carbon/C = loc - C.head_update(src, forced = 1) - -/obj/item/clothing/glasses/wraith_spectacles/equipped(mob/living/user, slot) - ..() - if(slot != slot_glasses || up) - return - if(user.disabilities & BLIND) - user << "\"You're blind, idiot. Stop embarassing yourself.\"" //Ratvar with the sick burns yo - return - if(blind_cultist(user)) //Cultists instantly go blind - return - set_vision_vars(TRUE) - if(is_servant_of_ratvar(user)) - user << "As you put on the spectacles, all is revealed to you.[ratvar_awakens ? "" : " Your eyes begin to itch - you cannot do this for long."]" - var/datum/status_effect/wraith_spectacles/WS = user.has_status_effect(STATUS_EFFECT_WRAITHSPECS) - if(WS) - WS.apply_eye_damage(user) - user.apply_status_effect(STATUS_EFFECT_WRAITHSPECS) - else - user << "You put on the spectacles, but you can't see through the glass." - -//The effect that causes/repairs the damage the spectacles cause. -/datum/status_effect/wraith_spectacles - id = "wraith_spectacles" - duration = -1 //remains until eye damage done reaches 0 while the glasses are not worn - tick_interval = 2 - alert_type = /obj/screen/alert/status_effect/wraith_spectacles - var/eye_damage_done = 0 - var/nearsight_breakpoint = 30 - var/blind_breakpoint = 45 - -/obj/screen/alert/status_effect/wraith_spectacles - name = "Wraith Spectacles" - desc = "You shouldn't actually see this, as it should be procedurally generated." - icon_state = "wraithspecs" - alerttooltipstyle = "clockcult" - -/obj/screen/alert/status_effect/wraith_spectacles/MouseEntered(location,control,params) - var/mob/living/carbon/human/L = usr - if(istype(L)) //this is probably more safety than actually needed - var/datum/status_effect/wraith_spectacles/W = attached_effect - var/glasses_right = istype(L.glasses, /obj/item/clothing/glasses/wraith_spectacles) - var/obj/item/clothing/glasses/wraith_spectacles/WS = L.glasses - desc = "[glasses_right && !WS.up ? "":""]You are [glasses_right ? "":"not "]wearing wraith spectacles[glasses_right && !WS.up ? "!":"."]
    \ - You have taken [W.eye_damage_done] eye damage from them.
    " - if(L.disabilities & NEARSIGHT) - desc += "You are nearsighted!
    " - else if(glasses_right && !WS.up) - desc += "You will become nearsighted at [W.nearsight_breakpoint] eye damage.
    " - if(L.disabilities & BLIND) - desc += "You are blind!" - else if(glasses_right && !WS.up) - desc += "You will become blind at [W.blind_breakpoint] eye damage." - ..() - -/datum/status_effect/wraith_spectacles/on_apply() - if(ishuman(owner)) - var/mob/living/carbon/human/H = owner - apply_eye_damage(H) - -/datum/status_effect/wraith_spectacles/tick() - if(!ishuman(owner)) - qdel(src) - return - var/mob/living/carbon/human/H = owner - var/glasses_right = istype(H.glasses, /obj/item/clothing/glasses/wraith_spectacles) - var/obj/item/clothing/glasses/wraith_spectacles/WS = H.glasses - if(glasses_right && !WS.up && !ratvar_awakens) - apply_eye_damage(H) - else - if(ratvar_awakens) - H.cure_nearsighted() - H.cure_blind() - H.adjust_eye_damage(-eye_damage_done) - eye_damage_done = 0 - else if(prob(50) && eye_damage_done) - H.adjust_eye_damage(-1) - eye_damage_done-- - if(!eye_damage_done) - qdel(src) - -/datum/status_effect/wraith_spectacles/proc/apply_eye_damage(mob/living/carbon/human/H) - if(H.disabilities & BLIND) - return - H.adjust_eye_damage(1) - eye_damage_done++ - if(eye_damage_done >= 20) - H.adjust_blurriness(2) - if(eye_damage_done >= nearsight_breakpoint) - if(H.become_nearsighted()) - H << "Your vision doubles, then trebles. Darkness begins to close in. You can't keep this up!" - if(eye_damage_done >= blind_breakpoint) - if(H.become_blind()) - H << "A piercing white light floods your vision. Suddenly, all goes dark!" - if(prob(min(20, 5 + eye_damage_done))) - H << "Your eyes continue to burn." diff --git a/code/game/gamemodes/clock_cult/clock_machines.dm b/code/game/gamemodes/clock_cult/clock_machines.dm new file mode 100644 index 0000000000..6cf77b1f98 --- /dev/null +++ b/code/game/gamemodes/clock_cult/clock_machines.dm @@ -0,0 +1,595 @@ +//////////////////////// +// CLOCKWORK MACHINES // +//////////////////////// +//not-actually-machines + +/obj/structure/clockwork/powered + var/obj/machinery/power/apc/target_apc + var/active = FALSE + var/needs_power = TRUE + var/active_icon = null //icon_state while process() is being called + var/inactive_icon = null //icon_state while process() isn't being called + +/obj/structure/clockwork/powered/examine(mob/user) + ..() + if(is_servant_of_ratvar(user) || isobserver(user)) + var/powered = total_accessable_power() + user << "It has access to [powered == INFINITY ? "INFINITY":"[powered]"]W of power." + +/obj/structure/clockwork/powered/Destroy() + SSfastprocess.processing -= src + SSobj.processing -= src + return ..() + +/obj/structure/clockwork/powered/process() + var/powered = total_accessable_power() + return powered == PROCESS_KILL ? 25 : powered //make sure we don't accidentally return the arbitrary PROCESS_KILL define + +/obj/structure/clockwork/powered/proc/toggle(fast_process, mob/living/user) + if(user) + if(!is_servant_of_ratvar(user)) + return 0 + user.visible_message("[user] [active ? "dis" : "en"]ables [src].", "You [active ? "dis" : "en"]able [src].") + active = !active + if(active) + icon_state = active_icon + if(fast_process) + START_PROCESSING(SSfastprocess, src) + else + START_PROCESSING(SSobj, src) + else + icon_state = inactive_icon + if(fast_process) + STOP_PROCESSING(SSfastprocess, src) + else + STOP_PROCESSING(SSobj, src) + + +/obj/structure/clockwork/powered/proc/total_accessable_power() //how much power we have and can use + if(!needs_power || ratvar_awakens) + return INFINITY //oh yeah we've got power why'd you ask + + var/power = 0 + power += accessable_apc_power() + power += accessable_sigil_power() + return power + +/obj/structure/clockwork/powered/proc/accessable_apc_power() + var/power = 0 + var/area/A = get_area(src) + var/area/targetAPCA + for(var/obj/machinery/power/apc/APC in apcs_list) + var/area/APCA = get_area(APC) + if(APCA == A) + target_apc = APC + if(target_apc) + targetAPCA = get_area(target_apc) + if(targetAPCA != A) + target_apc = null + else if(target_apc.cell) + var/apccharge = target_apc.cell.charge + if(apccharge >= 50) + power += apccharge + return power + +/obj/structure/clockwork/powered/proc/accessable_sigil_power() + var/power = 0 + for(var/obj/effect/clockwork/sigil/transmission/T in range(1, src)) + power += T.power_charge + return power + + +/obj/structure/clockwork/powered/proc/try_use_power(amount) //try to use an amount of power + if(!needs_power || ratvar_awakens) + return 1 + if(amount <= 0) + return 0 + var/power = total_accessable_power() + if(!power || power < amount) + return 0 + return use_power(amount) + +/obj/structure/clockwork/powered/proc/use_power(amount) //we've made sure we had power, so now we use it + var/sigilpower = accessable_sigil_power() + var/list/sigils_in_range = list() + for(var/obj/effect/clockwork/sigil/transmission/T in range(1, src)) + sigils_in_range |= T + while(sigilpower && amount >= 50) + for(var/S in sigils_in_range) + var/obj/effect/clockwork/sigil/transmission/T = S + if(amount >= 50 && T.modify_charge(50)) + sigilpower -= 50 + amount -= 50 + var/apcpower = accessable_apc_power() + while(apcpower >= 50 && amount >= 50) + if(target_apc.cell.use(50)) + apcpower -= 50 + amount -= 50 + target_apc.update() + target_apc.update_icon() + else + apcpower = 0 + if(amount) + return 0 + else + return 1 + +/obj/structure/clockwork/powered/proc/return_power(amount) //returns a given amount of power to all nearby sigils + if(amount <= 0) + return 0 + var/list/sigils_in_range = list() + for(var/obj/effect/clockwork/sigil/transmission/T in range(1, src)) + sigils_in_range |= T + if(!sigils_in_range.len) + return 0 + while(amount >= 50) + for(var/S in sigils_in_range) + var/obj/effect/clockwork/sigil/transmission/T = S + if(amount >= 50 && T.modify_charge(-50)) + amount -= 50 + return 1 + + +/obj/structure/clockwork/powered/mending_motor //Mending motor: A prism that consumes replicant alloy to repair nearby mechanical servants at a quick rate. + name = "mending motor" + desc = "A dark onyx prism, held in midair by spiraling tendrils of stone." + clockwork_desc = "A powerful prism that rapidly repairs nearby mechanical servants and clockwork structures." + icon_state = "mending_motor_inactive" + active_icon = "mending_motor" + inactive_icon = "mending_motor_inactive" + construction_value = 20 + max_health = 150 + health = 150 + break_message = "The prism collapses with a heavy thud!" + debris = list(/obj/item/clockwork/alloy_shards, /obj/item/clockwork/component/vanguard_cogwheel) + var/stored_alloy = 0 //2500W = 1 alloy = 100 liquified alloy + var/max_alloy = 25000 + var/mob_cost = 200 + var/structure_cost = 250 + var/cyborg_cost = 300 + +/obj/structure/clockwork/powered/mending_motor/prefilled + stored_alloy = 2500 //starts with 1 replicant alloy/100 liquified alloy + +/obj/structure/clockwork/powered/mending_motor/total_accessable_power() + . = ..() + if(. != INFINITY) + . += accessable_alloy_power() + +/obj/structure/clockwork/powered/mending_motor/proc/accessable_alloy_power() + return stored_alloy + +/obj/structure/clockwork/powered/mending_motor/use_power(amount) + var/alloypower = accessable_alloy_power() + while(alloypower >= 50 && amount >= 50) + stored_alloy -= 50 + alloypower -= 50 + amount -= 50 + return ..() + +/obj/structure/clockwork/powered/mending_motor/examine(mob/user) + ..() + if(is_servant_of_ratvar(user) || isobserver(user)) + user << "It contains [stored_alloy*0.04]/[max_alloy*0.04] units of liquified alloy, which is equivalent to [stored_alloy]W/[max_alloy]W of power." + user << "It requires [mob_cost]W to heal clockwork mobs, [structure_cost]W for clockwork structures, and [cyborg_cost]W for cyborgs." + +/obj/structure/clockwork/powered/mending_motor/process() + if(..() < mob_cost) + visible_message("[src] emits an airy chuckling sound and falls dark!") + toggle() + return + for(var/atom/movable/M in range(5, src)) + if(isclockmob(M) || istype(M, /mob/living/simple_animal/drone/cogscarab)) + var/mob/living/simple_animal/hostile/clockwork/W = M + var/fatigued = FALSE + if(istype(M, /mob/living/simple_animal/hostile/clockwork/marauder)) + var/mob/living/simple_animal/hostile/clockwork/marauder/E = M + if(E.fatigue) + fatigued = TRUE + if((!fatigued && W.health == W.maxHealth) || W.stat) + continue + if(!try_use_power(mob_cost)) + break + W.adjustHealth(-15) + else if(istype(M, /obj/structure/clockwork)) + var/obj/structure/clockwork/C = M + if(C.health == C.max_health) + continue + if(!try_use_power(structure_cost)) + break + C.health = min(C.health + 15, C.max_health) + else if(issilicon(M)) + var/mob/living/silicon/S = M + if(S.health == S.maxHealth || S.stat == DEAD || !is_servant_of_ratvar(S)) + continue + if(!try_use_power(cyborg_cost)) + break + S.adjustBruteLoss(-15) + S.adjustFireLoss(-15) + return 1 + +/obj/structure/clockwork/powered/mending_motor/attack_hand(mob/living/user) + if(user.canUseTopic(src, BE_CLOSE)) + if(total_accessable_power() < mob_cost) + user << "[src] needs more power or replicant alloy to function!" + return 0 + toggle(0, user) + +/obj/structure/clockwork/powered/mending_motor/attackby(obj/item/I, mob/user, params) + if(istype(I, /obj/item/clockwork/component/replicant_alloy) && is_servant_of_ratvar(user)) + if(stored_alloy + 2500 > max_alloy) + user << "[src] is too full to accept any more alloy!" + return 0 + user.whisper("Genafzhgr vagb jngre.") + user.visible_message("[user] liquifies [I] and pours it onto [src].", \ + "You liquify [src] and pour it onto [src], transferring the alloy into its reserves.") + stored_alloy = stored_alloy + 2500 + user.drop_item() + qdel(I) + return 1 + else + return ..() + + + +/obj/structure/clockwork/powered/mania_motor //Mania motor: A pair of antenna that, while active, cause braindamage and hallucinations in nearby human mobs. + name = "mania motor" + desc = "A pair of antenna with what appear to be sockets around the base. It reminds you of an antlion." + clockwork_desc = "A transmitter that allows Sevtug to whisper into the minds of nearby non-servants, causing hallucinations and brain damage as long as it remains powered." + icon_state = "mania_motor_inactive" + active_icon = "mania_motor" + inactive_icon = "mania_motor_inactive" + construction_value = 20 + max_health = 80 + health = 80 + break_message = "The antenna break off, leaving a pile of shards!" + debris = list(/obj/item/clockwork/alloy_shards, /obj/item/clockwork/component/guvax_capacitor/antennae) + var/mania_cost = 150 + var/convert_attempt_cost = 150 + var/convert_cost = 300 + + var/mania_messages = list("\"Tb ahgf.\"", "\"Gnxr n penpx ng penml.\"", "\"Znxr n ovq sbe vafnavgl.\"", "\"Trg xbbxl.\"", "\"Zbir gbjneqf znavn.\"", "\"Orpbzr orjvyqrerq.\"", "\"Jnk jvyq.\"", \ + "\"Tb ebhaq gur oraq.\"", "\"Ynaq va yhanpl.\"", "\"Gel qrzragvn.\"", "\"Fgevir gb trg n fperj ybbfr.\"") + var/compel_messages = list("\"Pbzr pybfre.\"", "\"Nccebnpu gur genafzvggre.\"", "\"Gbhpu gur nagraanr.\"", "\"V nyjnlf unir gb qrny jvgu vqvbgf. Zbir gbjneqf gur znavn zbgbe.\"", \ + "\"Nqinapr sbejneq naq cynpr lbhe urnq orgjrra gur nagraanr - gun'g'f nyy vg'f tbbq sbe.\"", "\"Vs lbh jrer fznegre, lbh'q or bire urer nyernql.\"", "\"Zbir SBEJNEQ, lbh sbby.\"") + var/convert_messages = list("\"Lbh jba'g qb. Tb gb fyrrc juvyr V gryy gur'fr avgjvgf ubj gb pbaireg lbh.\"", "\"Lbh ner vafhssvpvrag. V zhfg vafgehpg gur'fr vqvbgf va gur neg-bs pbairefvba.\"", \ + "\"Bu-bs pbhefr, fbzrbar jr pna'g pbaireg. Gur'fr freinagf ner sbbyf.\"", "\"Ubj uneq vf vg gb hfr n Fvtvy, naljnl? Nyy vg gnxrf vf qenttvat fbzrbar bagb vg.\"", \ + "\"Ubj qb gur'l snvy gb hfr n Fvtvy-bs Npprffvba, naljnl?\"", "\"Jul vf vg gun'g nyy freinagf ner guv'f varcg?\"", "\"Vg'f dhvgr yvxryl lbh'yy or fghpx urer sbe n juvyr.\"") + var/close_messages = list("\"Jryy, lbh pna'g ernpu gur zbgbe sebz GUR'ER, lbh zbeba.\"", "\"Vagrerfgvat ybpngvba. V'q cersre vs lbh jrag fbzrjurer lbh pbhyq NPGHNYYL GBHPU GUR NAGRAANR!\"", \ + "\"Nznmvat. Lbh fbzrubj znantrq gb jrqtr lbhefrys fbzrjurer lbh pna'g npghnyyl ernpu gur zbgbe sebz.\"", "\"Fhpu n fubj-bs vqvbpl vf hacnenyyryrq. Creuncf V fubhyq chg lbh ba qvfcynl?\"", \ + "\"Qvq lbh qb guv'f ba checbfr? V pna'g vzntvar lbh qbvat fb nppvqragnyyl. Bu, jnvg, V pna.\"", "\"Ubj vf vg gun'g fhpu fzneg perngherf pna fgvyy qb fbzrguv'at NF FGHCVQ NF GUV'F!\"") + + +/obj/structure/clockwork/powered/mania_motor/examine(mob/user) + ..() + if(is_servant_of_ratvar(user) || isobserver(user)) + user << "It requires [mania_cost]W to run, and [convert_attempt_cost + convert_cost]W to convert humans adjecent to it." + +/obj/structure/clockwork/powered/mania_motor/process() + var/turf/T = get_turf(src) + if(!..()) + visible_message("[src] hums loudly, then the sockets at its base fall dark!") + playsound(T, 'sound/effects/screech.ogg', 40, 1) + toggle(0) + return + if(try_use_power(mania_cost)) + var/hum = get_sfx('sound/effects/screech.ogg') //like playsound, same sound for everyone affected + for(var/mob/living/carbon/human/H in view(1, src)) + if(H.Adjacent(src) && try_use_power(convert_attempt_cost)) + if(is_eligible_servant(H) && try_use_power(convert_cost)) + H << "\"Lbh ner zvar-naq-uvf, abj.\"" + H.playsound_local(T, hum, 80, 1) + add_servant_of_ratvar(H) + else if(!H.stat) + if(H.getBrainLoss() >= H.maxHealth) + H.Paralyse(5) + H << "[pick(convert_messages)]" + else + H.adjustBrainLoss(100) + H.visible_message("[H] reaches out and touches [src].", "You touch [src] involuntarily.") + else + visible_message("[src]'s antennae fizzle quietly.") + playsound(src, 'sound/effects/light_flicker.ogg', 50, 1) + for(var/mob/living/carbon/human/H in range(10, src)) + if(!is_servant_of_ratvar(H) && !H.null_rod_check() && H.stat == CONSCIOUS) + var/distance = get_dist(T, get_turf(H)) + var/falloff_distance = min((110) - distance * 10, 80) + var/sound_distance = falloff_distance * 0.5 + var/targetbrainloss = H.getBrainLoss() + var/targethallu = H.hallucination + var/targetdruggy = H.druggy + if(distance >= 4 && prob(falloff_distance)) + H << "[pick(mania_messages)]" + H.playsound_local(T, hum, sound_distance, 1) + switch(distance) + if(2 to 3) + if(prob(falloff_distance)) + if(prob(falloff_distance)) + H << "[pick(mania_messages)]" + else + H << "[pick(compel_messages)]" + if(targetbrainloss <= 50) + H.adjustBrainLoss(50 - targetbrainloss) //got too close had brain eaten + if(targetdruggy <= 150) + H.adjust_drugginess(11) + if(targethallu <= 150) + H.hallucination += 11 + if(4 to 5) + if(targetbrainloss <= 50) + H.adjustBrainLoss(3) + if(targetdruggy <= 120) + H.adjust_drugginess(9) + if(targethallu <= 120) + H.hallucination += 9 + if(6 to 7) + if(targetbrainloss <= 30) + H.adjustBrainLoss(2) + if(prob(falloff_distance) && targetdruggy <= 90) + H.adjust_drugginess(7) + else if(targethallu <= 90) + H.hallucination += 7 + if(8 to 9) + if(H.getBrainLoss() <= 10) + H.adjustBrainLoss(1) + if(prob(falloff_distance) && targetdruggy <= 60) + H.adjust_drugginess(5) + else if(targethallu <= 60) + H.hallucination += 5 + if(10 to INFINITY) + if(prob(falloff_distance) && targetdruggy <= 30) + H.adjust_drugginess(3) + else if(targethallu <= 30) + H.hallucination += 3 + else //if it's a distance of 1 and they can't see it/aren't adjacent or they're on top of it(how'd they get on top of it and still trigger this???) + if(targetbrainloss <= 99) + if(prob(falloff_distance)) + if(prob(falloff_distance)) + H << "[pick(compel_messages)]" + else if(prob(falloff_distance)) + H << "[pick(close_messages)]" + else + H << "[pick(mania_messages)]" + H.adjustBrainLoss(99 - targetbrainloss) + if(targetdruggy <= 200) + H.adjust_drugginess(15) + if(targethallu <= 200) + H.hallucination += 15 + + if(is_servant_of_ratvar(H) && (H.getBrainLoss() || H.hallucination || H.druggy)) //not an else so that newly converted servants are healed of the damage it inflicts + H.adjustBrainLoss(-H.getBrainLoss()) //heals servants of braindamage, hallucination, and druggy + H.hallucination = 0 + H.adjust_drugginess(-H.druggy) + else + visible_message("[src] hums loudly, then the sockets at its base fall dark!") + playsound(src, 'sound/effects/screech.ogg', 40, 1) + toggle(0) + +/obj/structure/clockwork/powered/mania_motor/attack_hand(mob/living/user) + if(user.canUseTopic(src, BE_CLOSE)) + if(!total_accessable_power() >= mania_cost) + user << "[src] needs more power to function!" + return 0 + toggle(0, user) + + + +/obj/structure/clockwork/powered/interdiction_lens //Interdiction lens: A powerful artifact that constantly disrupts electronics but, if it fails to find something to disrupt, turns off. + name = "interdiction lens" + desc = "An ominous, double-pronged brass totem. There's a strange gemstone clasped between the pincers." + clockwork_desc = "A powerful totem that constantly disrupts nearby electronics and funnels power into nearby Sigils of Transmission." + icon_state = "interdiction_lens" + construction_value = 25 + active_icon = "interdiction_lens_active" + inactive_icon = "interdiction_lens" + break_message = "The lens flares a blinding violet before shattering!" + break_sound = 'sound/effects/Glassbr3.ogg' + var/recharging = 0 //world.time when the lens was last used + var/recharge_time = 1200 //if it drains no power and affects no objects, it turns off for two minutes + var/disabled = FALSE //if it's actually usable + var/interdiction_range = 14 //how large an area it drains and disables in + var/disrupt_cost = 100 //how much power to use when disabling an object + +/obj/structure/clockwork/powered/interdiction_lens/examine(mob/user) + ..() + user << "Its gemstone [recharging > world.time ? "has been breached by writhing tendrils of blackness that cover the totem" \ + : "vibrates in place and thrums with power"]." + if(is_servant_of_ratvar(user) || isobserver(user)) + user << "It requires [disrupt_cost]W of power for each nearby disruptable electronic." + user << "If it fails to both drain any power and disrupt any electronics, it will disable itself for [round(recharge_time/600, 1)] minutes." + +/obj/structure/clockwork/powered/interdiction_lens/toggle(fast_process, mob/living/user) + ..() + if(active) + set_light(4,2) + else + set_light(0) + +/obj/structure/clockwork/powered/interdiction_lens/attack_hand(mob/living/user) + if(user.canUseTopic(src, BE_CLOSE)) + if(disabled) + user << "As you place your hand on the gemstone, cold tendrils of black matter crawl up your arm. You quickly pull back." + return 0 + if(!total_accessable_power() >= disrupt_cost) + user << "[src] needs more power to function!" + return 0 + toggle(0, user) + +/obj/structure/clockwork/powered/interdiction_lens/process() + if(recharging > world.time) + return + if(disabled) + visible_message("The writhing tendrils return to the gemstone, which begins to glow with power!") + flick("interdiction_lens_recharged", src) + disabled = FALSE + toggle(0) + else + var/successfulprocess = FALSE + var/power_drained = 0 + var/list/atoms_to_test = list() + for(var/A in spiral_range_turfs(interdiction_range, src)) + var/turf/T = A + for(var/M in T) + atoms_to_test |= M + + CHECK_TICK + + for(var/M in atoms_to_test) + if(istype(M, /obj/machinery/power/apc)) + var/obj/machinery/power/apc/A = M + if(A.cell && A.cell.charge) + successfulprocess = TRUE + playsound(A, "sparks", 50, 1) + flick("apc-spark", A) + power_drained += min(A.cell.charge, 100) + A.cell.charge = max(0, A.cell.charge - 100) + if(!A.cell.charge && !A.shorted) + A.shorted = 1 + A.visible_message("The [A.name]'s screen blurs with static.") + A.update() + A.update_icon() + else if(istype(M, /obj/machinery/power/smes)) + var/obj/machinery/power/smes/S = M + if(S.charge) + successfulprocess = TRUE + power_drained += min(S.charge, 500) + S.charge = max(0, S.charge - 50000) //SMES units contain too much power and could run an interdiction lens basically forever, or provide power forever + if(!S.charge && !S.panel_open) + S.panel_open = TRUE + S.icon_state = "[initial(S.icon_state)]-o" + var/datum/effect_system/spark_spread/spks = new(get_turf(S)) + spks.set_up(10, 0, get_turf(S)) + spks.start() + S.visible_message("[S]'s panel flies open with a flurry of sparks.") + S.update_icon() + else if(isrobot(M)) + var/mob/living/silicon/robot/R = M + if(!is_servant_of_ratvar(R) && R.cell && R.cell.charge) + successfulprocess = TRUE + power_drained += min(R.cell.charge, 200) + R.cell.charge = max(0, R.cell.charge - 200) + R << "ERROR: Power loss detected!" + var/datum/effect_system/spark_spread/spks = new(get_turf(R)) + spks.set_up(3, 0, get_turf(R)) + spks.start() + + CHECK_TICK + + if(!return_power(power_drained) || power_drained < 50) //failed to return power drained or too little power to return + successfulprocess = FALSE + if(try_use_power(disrupt_cost) && total_accessable_power() >= disrupt_cost) //if we can disable at least one object + playsound(src, 'sound/items/PSHOOM.ogg', 50, 1, interdiction_range-7, 1) + for(var/M in atoms_to_test) + if(istype(M, /obj/machinery/light)) //cosmetic light flickering + var/obj/machinery/light/L = M + if(L.on) + playsound(L, 'sound/effects/light_flicker.ogg', 50, 1) + L.flicker(3) + else if(istype(M, /obj/machinery/camera)) + var/obj/machinery/camera/C = M + if(C.isEmpProof() || !C.status) + continue + successfulprocess = TRUE + if(C.emped) + continue + if(!try_use_power(disrupt_cost)) + break + C.emp_act(1) + else if(istype(M, /obj/item/device/radio)) + var/obj/item/device/radio/O = M + successfulprocess = TRUE + if(O.emped || !O.on) + continue + if(!try_use_power(disrupt_cost)) + break + O.emp_act(1) + else if(isliving(M) || istype(M, /obj/structure/closet) || istype(M, /obj/item/weapon/storage)) //other things may have radios in them but we don't care + var/atom/movable/A = M + for(var/obj/item/device/radio/O in A.GetAllContents()) + successfulprocess = TRUE + if(O.emped || !O.on) + continue + if(!try_use_power(disrupt_cost)) + break + O.emp_act(1) + + CHECK_TICK + + if(!successfulprocess) + visible_message("The gemstone suddenly turns horribly dark, writhing tendrils covering it!") + recharging = world.time + recharge_time + flick("interdiction_lens_discharged", src) + icon_state = "interdiction_lens_inactive" + set_light(2,1) + disabled = TRUE + + + +/obj/structure/clockwork/powered/clockwork_obelisk + name = "clockwork obelisk" + desc = "A large brass obelisk hanging in midair." + clockwork_desc = "A powerful obelisk that can send a message to all servants or open a gateway to a target servant or clockwork obelisk." + icon_state = "obelisk_inactive" + active_icon = "obelisk" + inactive_icon = "obelisk_inactive" + construction_value = 20 + max_health = 200 + health = 200 + break_message = "The obelisk falls to the ground, undamaged!" + debris = list(/obj/item/clockwork/component/hierophant_ansible/obelisk) + var/hierophant_cost = 50 //how much it costs to broadcast with large text + var/gateway_cost = 2000 //how much it costs to open a gateway + var/gateway_active = FALSE + +/obj/structure/clockwork/powered/clockwork_obelisk/New() + ..() + toggle(1) + +/obj/structure/clockwork/powered/clockwork_obelisk/examine(mob/user) + ..() + if(is_servant_of_ratvar(user) || isobserver(user)) + user << "It requires [hierophant_cost]W to broadcast over the Hierophant Network, and [gateway_cost]W to open a Spatial Gateway." + +/obj/structure/clockwork/powered/clockwork_obelisk/process() + if(locate(/obj/effect/clockwork/spatial_gateway) in loc) + icon_state = active_icon + density = 0 + gateway_active = TRUE + else + icon_state = inactive_icon + density = 1 + gateway_active = FALSE + +/obj/structure/clockwork/powered/clockwork_obelisk/attack_hand(mob/living/user) + if(!is_servant_of_ratvar(user) || !total_accessable_power() >= hierophant_cost) + user << "You place your hand on the obelisk, but it doesn't react." + return + var/choice = alert(user,"You place your hand on the obelisk...",,"Hierophant Broadcast","Spatial Gateway","Cancel") + switch(choice) + if("Hierophant Broadcast") + if(gateway_active) + user << "The obelisk is sustaining a gateway and cannot broadcast!" + return + var/input = stripped_input(usr, "Please choose a message to send over the Hierophant Network.", "Hierophant Broadcast", "") + if(!input || !user.canUseTopic(src, BE_CLOSE)) + return + if(gateway_active) + user << "The obelisk is sustaining a gateway and cannot broadcast!" + return + if(!try_use_power(hierophant_cost)) + user << "The obelisk lacks the power to broadcast!" + return + clockwork_say(user, "Uvrebcunag Oebnqpnfg, npgvingr!") + send_hierophant_message(user, input, "big_brass", "large_brass") + if("Spatial Gateway") + if(gateway_active) + user << "The obelisk is already sustaining a gateway!" + return + if(!try_use_power(gateway_cost)) + user << "The obelisk lacks the power to open a gateway!" + return + if(procure_gateway(user, 100, 5, 1)) + clockwork_say(user, "Fcnpvny Tngrjnl, npgvingr!") + else + return_power(gateway_cost) + if("Cancel") + return diff --git a/code/game/gamemodes/clock_cult/clock_mobs.dm b/code/game/gamemodes/clock_cult/clock_mobs.dm index 3c51e7dd82..f691c5acd8 100644 --- a/code/game/gamemodes/clock_cult/clock_mobs.dm +++ b/code/game/gamemodes/clock_cult/clock_mobs.dm @@ -1,21 +1,15 @@ /mob/living/simple_animal/hostile/clockwork faction = list("ratvar") - gender = NEUTER icon = 'icons/mob/clockwork_mobs.dmi' unique_name = 1 minbodytemp = 0 - unsuitable_atmos_damage = 0 atmos_requirements = list("min_oxy" = 0, "max_oxy" = 0, "min_tox" = 0, "max_tox" = 0, "min_co2" = 0, "max_co2" = 0, "min_n2" = 0, "max_n2" = 0) //Robotic damage_coeff = list(BRUTE = 1, BURN = 1, TOX = 0, CLONE = 0, STAMINA = 0, OXY = 0) languages_spoken = RATVAR languages_understood = HUMAN|RATVAR healable = FALSE del_on_death = TRUE - speak_emote = list("clanks", "clinks", "clunks", "clangs") - verb_ask = "requests" - verb_exclaim = "proclaims" - verb_yell = "harangues" bubble_icon = "clock" death_sound = 'sound/magic/clockwork/anima_fragment_death.ogg' var/playstyle_string = "You are a bug, yell at whoever spawned you!" @@ -37,28 +31,6 @@ ..() src << playstyle_string -/mob/living/simple_animal/hostile/clockwork/ratvar_act() - fully_heal(TRUE) - -/mob/living/simple_animal/hostile/clockwork/electrocute_act(shock_damage, obj/source, siemens_coeff = 1, safety = 0, tesla_shock = 0, illusion = 0) - return 0 //ouch, my metal-unlikely-to-be-damaged-by-electricity-body - -/mob/living/simple_animal/hostile/clockwork/examine(mob/user) - var/t_He = p_they(TRUE) - var/t_s = p_s() - var/msg = "*---------*\nThis is \icon[src] \a [src]!\n" - msg += "[desc]\n" - if(health < maxHealth) - msg += "" - if(health >= maxHealth/2) - msg += "[t_He] look[t_s] slightly dented.\n" - else - msg += "[t_He] look[t_s] severely dented!\n" - msg += "" - msg += "*---------*" - - user << msg - /mob/living/simple_animal/hostile/clockwork/fragment //Anima fragment: Low health and high melee damage, but slows down when struck. Created by inserting a soul vessel into an empty fragment. name = "anima fragment" desc = "An ominous humanoid shell with a spinning cogwheel as its head, lifted by a jet of blazing red flame." @@ -66,13 +38,13 @@ health = 90 maxHealth = 90 speed = -1 - melee_damage_lower = 18 - melee_damage_upper = 18 + melee_damage_lower = 20 + melee_damage_upper = 20 attacktext = "crushes" attack_sound = 'sound/magic/clockwork/anima_fragment_attack.ogg' loot = list(/obj/item/clockwork/component/replicant_alloy/smashed_anima_fragment) weather_immunities = list("lava") - movement_type = FLYING + flying = 1 playstyle_string = "You are an anima fragment, a clockwork creation of Ratvar. As a fragment, you have low health, do decent damage, and move at \ extreme speed in addition to being immune to extreme temperatures and pressures. Taking damage will temporarily slow you down, however. \n Your goal is to serve the Justiciar and his servants \ in any way you can. You yourself are one of these servants, and will be able to utilize anything they can, assuming it doesn't require opposable thumbs." @@ -80,7 +52,7 @@ /mob/living/simple_animal/hostile/clockwork/fragment/New() ..() - SetLuminosity(2,1) + set_light(2,1) if(prob(1)) name = "anime fragment" real_name = name @@ -94,17 +66,12 @@ /mob/living/simple_animal/hostile/clockwork/fragment/death(gibbed) visible_message("[src]'s flame jets cut out as it falls to the floor with a tremendous crash.", \ "Your gears seize up. Your flame jets flicker out. Your soul vessel belches smoke as you helplessly crash down.") - ..() + ..(TRUE) + return 1 /mob/living/simple_animal/hostile/clockwork/fragment/Process_Spacemove(movement_dir = 0) return 1 -/mob/living/simple_animal/hostile/clockwork/fragment/emp_act(severity) - if(movement_delay_time > world.time) - movement_delay_time = movement_delay_time + (50/severity) - else - movement_delay_time = world.time + (50/severity) - /mob/living/simple_animal/hostile/clockwork/fragment/movement_delay() . = ..() if(movement_delay_time > world.time && !ratvar_awakens) @@ -114,9 +81,9 @@ . = ..() if(!ratvar_awakens && amount > 0) //if ratvar is up we ignore movement delay if(movement_delay_time > world.time) - movement_delay_time = movement_delay_time + amount*2.5 + movement_delay_time = movement_delay_time + amount*3 else - movement_delay_time = world.time + amount*2.5 + movement_delay_time = world.time + amount*3 /mob/living/simple_animal/hostile/clockwork/fragment/updatehealth() ..() @@ -132,13 +99,13 @@ health = 300 //Health is very high, and under most cases it will take enough fatigue to be forced to recall first maxHealth = 300 speed = 1 - obj_damage = 40 melee_damage_lower = 10 melee_damage_upper = 10 attacktext = "slashes" attack_sound = 'sound/weapons/bladeslice.ogg' + environment_smash = 1 weather_immunities = list("lava") - movement_type = FLYING + flying = 1 loot = list(/obj/item/clockwork/component/replicant_alloy/fallen_armor) var/true_name = "Meme Master 69" //Required to call forth the marauder var/list/possible_true_names = list("Xaven", "Melange", "Ravan", "Kel", "Rama", "Geke", "Peris", "Vestra", "Skiwa") //All fairly short and easy to pronounce @@ -161,7 +128,7 @@ ..() combattimer = 0 true_name = pick(possible_true_names) - SetLuminosity(2,1) + set_light(2,1) /mob/living/simple_animal/hostile/clockwork/marauder/Life() ..() @@ -202,7 +169,6 @@ else //well then, you're not even in the same zlevel adjust_fatigue(10) src << "You're too far from your host and rapidly taking fatigue damage!" - update_health_hud() /mob/living/simple_animal/hostile/clockwork/marauder/Process_Spacemove(movement_dir = 0) return 1 @@ -222,8 +188,8 @@ switch((fatigue/fatigue_recall_threshold) * 100) if(0 to 10) //Bonuses to speed and damage at normal fatigue levels speed = 0 - melee_damage_lower = 14 - melee_damage_upper = 14 + melee_damage_lower = 13 + melee_damage_upper = 13 attacktext = "viciously slashes" if(10 to 25) speed = initial(speed) @@ -232,30 +198,30 @@ attacktext = initial(attacktext) if(25 to 50) //Damage decrease, but not speed speed = initial(speed) - melee_damage_lower = 8 - melee_damage_upper = 8 + melee_damage_lower = 7 + melee_damage_upper = 7 attacktext = "lightly slashes" if(50 to 75) //Speed decrease speed = 2 - melee_damage_lower = 8 - melee_damage_upper = 8 + melee_damage_lower = 7 + melee_damage_upper = 7 attacktext = "lightly slashes" if(75 to 99) //Massive speed decrease and weak melee attacks speed = 3 - melee_damage_lower = 5 - melee_damage_upper = 5 + melee_damage_lower = 4 + melee_damage_upper = 4 attacktext = "weakly slashes" if(99 to 100) //we are at maximum fatigue, we're either useless or recalling if(host) src << "The fatigue becomes too much!" src << "You retreat to [host] - you will have to wait before being deployed again." - host << "[true_name] is too fatigued to fight - you will need to wait until [p_they()] [p_are()] strong enough." + host << "[true_name] is too fatigued to fight - you will need to wait until they are strong enough." recovering = TRUE return_to_host() else speed = 4 - melee_damage_lower = 2 - melee_damage_upper = 2 + melee_damage_lower = 1 + melee_damage_upper = 1 attacktext = "taps" @@ -264,6 +230,7 @@ visible_message("[src]'s equipment clatters lifelessly to the ground as the red flames within dissipate.", \ "Your equipment falls away. You feel a moment of confusion before your fragile form is annihilated.") ..() + return 1 /mob/living/simple_animal/hostile/clockwork/marauder/Stat() ..() @@ -272,17 +239,16 @@ stat(null, "Current True Name: [true_name]") stat(null, "Host: [host ? host : "NONE"]") if(host) - var/resulthealth = round((host.health / host.maxHealth) * 100, 0.5) - if(iscarbon(host)) - resulthealth = round((abs(HEALTH_THRESHOLD_DEAD - host.health) / abs(HEALTH_THRESHOLD_DEAD - host.maxHealth)) * 100) + var/resulthealth + resulthealth = round((abs(config.health_threshold_dead - host.health) / abs(config.health_threshold_dead - host.maxHealth)) * 100) stat(null, "Host Health: [resulthealth]%") if(ratvar_awakens) stat(null, "You are [recovering ? "un" : ""]able to deploy!") else if(resulthealth > 60) - stat(null, "You are [recovering ? "unable to deploy" : "able to deploy on hearing your True Name"]!") + stat(null, "You are [recovering ? "unable to deploy" : "can deploy on hearing your True Name"]!") else - stat(null, "You are [recovering ? "unable to deploy" : "able to deploy to protect your host"]!") + stat(null, "You are [recovering ? "unable to deploy" : "can deploy to protect your host"]!") if(ratvar_awakens) stat(null, "Block Chance: 80%") stat(null, "Counter Chance: 80%") @@ -296,13 +262,11 @@ if(amount > 0) combattimer = world.time + initial(combattimer) for(var/mob/living/L in view(2, src)) - if(L.is_holding_item_of_type(/obj/item/weapon/nullrod)) + if(istype(L.l_hand, /obj/item/weapon/nullrod) || istype(L.r_hand, /obj/item/weapon/nullrod)) //hand-held holy weapons increase the damage it takes src << "The presence of a brandished holy artifact weakens your armor!" amount *= 4 //if a wielded null rod is nearby, it takes four times the health damage break - . = ..() + fatiguedamage - if(src) - update_health_hud() + return ..() + fatiguedamage /mob/living/simple_animal/hostile/clockwork/marauder/proc/adjust_fatigue(amount) //Adds or removes the given amount of fatigue if(status_flags & GODMODE) @@ -311,24 +275,6 @@ update_fatigue() return amount -/mob/living/simple_animal/hostile/clockwork/marauder/update_health_hud() - if(hud_used && hud_used.healths) - if(istype(hud_used, /datum/hud/marauder)) - var/datum/hud/marauder/M = hud_used - var/resulthealth - if(host) - if(iscarbon(host)) - resulthealth = "[round((abs(HEALTH_THRESHOLD_DEAD - host.health) / abs(HEALTH_THRESHOLD_DEAD - host.maxHealth)) * 100)]%" - else - resulthealth = "[round((host.health / host.maxHealth) * 100, 0.5)]%" - else - resulthealth = "NONE" - M.hosthealth.maptext = "
    HOST
    [resulthealth]
    " - M.blockchance.maptext = "
    [blockchance]%
    " - M.counterchance.maptext = "
    [counterchance]%
    " - hud_used.healths.maptext = "
    [round((health / maxHealth) * 100, 0.5)]%
    \ - [fatigue]
    " - //ATTACKING, BLOCKING, and COUNTERING /mob/living/simple_animal/hostile/clockwork/marauder/AttackingTarget() @@ -338,12 +284,12 @@ ..() /mob/living/simple_animal/hostile/clockwork/marauder/bullet_act(obj/item/projectile/Proj) - if(blockOrCounter(null, Proj)) + if(ratvar_awakens && blockOrCounter(null, Proj)) return return ..() /mob/living/simple_animal/hostile/clockwork/marauder/hitby(atom/movable/AM, skipcatch, hitpush, blocked) - if(blockOrCounter(null, AM)) + if(ratvar_awakens && blockOrCounter(null, AM)) return return ..() @@ -384,21 +330,16 @@ playsound(src, 'sound/magic/clockwork/fellowship_armory.ogg', 10, 1, 0, 1) //clang visible_message("[src] blocks [target && istype(textobject, /obj/item) ? "[target]'s [textobject.name]":"\the [textobject]"]!", \ "You block [target && istype(textobject, /obj/item) ? "[target]'s [textobject.name]":"\the [textobject]"]!") - if(target && Adjacent(target)) - if(prob(counterchance)) - counterchance = initial(counterchance) - var/previousattacktext = attacktext - attacktext = "counters" - target.attack_animal(src) - attacktext = previousattacktext - else - counterchance = min(counterchance + initial(counterchance), 100) + if(target && prob(counterchance)) + counterchance = initial(counterchance) + var/previousattacktext = attacktext + attacktext = "counters" + target.attack_animal(src) + attacktext = previousattacktext + else + counterchance = min(counterchance + initial(counterchance), 100) else blockchance = min(blockchance + initial(blockchance), 100) - if(ratvar_awakens) - blockchance = 80 - counterchance = 80 - update_health_hud() //COMMUNICATION and EMERGENCE @@ -502,9 +443,8 @@ src << "You don't have a host!" verbs -= /mob/living/simple_animal/hostile/clockwork/marauder/verb/try_emerge return 0 - var/resulthealth = round((host.health / host.maxHealth) * 100, 0.5) - if(iscarbon(host)) - resulthealth = round((abs(HEALTH_THRESHOLD_DEAD - host.health) / abs(HEALTH_THRESHOLD_DEAD - host.maxHealth)) * 100) + var/resulthealth + resulthealth = round((abs(config.health_threshold_dead - host.health) / abs(config.health_threshold_dead - host.maxHealth)) * 100) if(!ratvar_awakens && host.stat != DEAD && resulthealth > 60) //if above 20 health, fails src << "Your host must be at 60% or less health to emerge like this!" return @@ -530,3 +470,110 @@ /mob/living/simple_animal/hostile/clockwork/marauder/proc/is_in_host() //Checks if the marauder is inside of their host return host && loc == host + + + +/mob/living/simple_animal/hostile/clockwork/reclaimer + name = "clockwork reclaimer" + desc = "A tiny clockwork arachnid with a single cogwheel spinning quickly in its head. Its legs blur, too fast to be seen clearly." + icon_state = "clockwork_reclaimer" + health = 50 + maxHealth = 50 + melee_damage_lower = 10 + melee_damage_upper = 10 + attacktext = "slams into" + attack_sound = 'sound/magic/clockwork/anima_fragment_attack.ogg' + ventcrawler = 2 + playstyle_string = "You are a clockwork reclaimer, a harbringer of the Justiciar's light. You can crawl through vents to move more swiftly. Your \ + goal: purge all untruths and honor Ratvar. You may alt-click a valid target to break yourself apart and convert the target to a servant of Ratvar." + +/mob/living/simple_animal/hostile/clockwork/reclaimer/New() + ..() + if(prob(1)) + real_name = "jehovah's witness" + name = real_name + spawn(1) + if(mind) + mind.special_role = null + add_servant_of_ratvar(src, TRUE) + src << playstyle_string + +/mob/living/simple_animal/hostile/clockwork/reclaimer/Life() + ..() + if(ishuman(loc)) + var/mob/living/carbon/human/L = loc + if(L.stat || !L.client) + disengage() + +/mob/living/simple_animal/hostile/clockwork/reclaimer/death() + ..(1) + visible_message("[src] bursts into deadly shrapnel!") + for(var/mob/living/carbon/C in range(2, src)) + C.adjustBruteLoss(rand(3, 5)) + qdel(src) + +/mob/living/simple_animal/hostile/clockwork/reclaimer/AltClickOn(atom/movable/A) + if(!ishuman(A)) + return ..() + var/mob/living/carbon/human/H = A + if(is_servant_of_ratvar(H) || H.stat || (H.mind && !H.client)) + src << "[H] isn't a valid target! Valid targets are conscious non-servants." + return 0 + if(get_dist(src, H) > 3) + src << "You need to be closer to dominate [H]!" + return 0 + visible_message("[src] rockets with blinding speed towards [H]!", "You leap with blinding speed towards [H]'s head!") + for(var/i = 9, i > 0, i -= 3) + pixel_y += i + sleep(1) + icon_state = "[initial(icon_state)]_charging" + while(loc != H.loc) + if(!H) + icon_state = initial(icon_state) + return 0 + sleep(1) + forceMove(get_step(src, get_dir(src, H))) + if(H.head) + H.visible_message("[src] tears apart [H]'s [H.name]!") + H.unEquip(H.head) + qdel(H.head) + H.visible_message("[src] latches onto [H]'s head and digs its claws in!", "[src] leaps onto your head and impales its claws deep!") + add_servant_of_ratvar(H) + H.equip_to_slot_or_del(new/obj/item/clothing/head/helmet/clockwork/reclaimer(null), slot_head) + loc = H + icon_state = initial(icon_state) + status_flags += GODMODE + src << "ASSIMILATION SUCCESSFUL." + H << "ASSIMILATION SUCCESSFUL." + clockwork_say(H, rot13("ASSIMILATION SUCCESSFUL.")) + if(!H.mind) + mind.transfer_to(H) + return 1 + +/mob/living/simple_animal/hostile/clockwork/reclaimer/verb/disengage() + set name = "Disgengage From Host" + set desc = "Jumps off of your host if you have one, freeing their mind but allowing you movement." + set category = "Clockwork" + + if(!ishuman(usr.loc)) + usr << "You have no host! Alt-click on a non-servant to enslave them." + return + var/mob/living/carbon/human/L = usr.loc + usr.loc = get_turf(L) + pixel_y = initial(pixel_y) + usr.visible_message("[usr] jumps off of [L]'s head!", "You disengage from your host.") + usr.status_flags -= GODMODE + remove_servant_of_ratvar(L) + L.unEquip(L.head) + qdel(L.head) + + + +/mob/living/mind_control_holder + name = "imprisoned mind" + desc = "A helpless mind, imprisoned in its own body." + stat = 0 + status_flags = GODMODE + +/mob/living/mind_control_holder/say() + return 0 diff --git a/code/game/gamemodes/clock_cult/clock_ratvar.dm b/code/game/gamemodes/clock_cult/clock_ratvar.dm new file mode 100644 index 0000000000..258b6ffa42 --- /dev/null +++ b/code/game/gamemodes/clock_cult/clock_ratvar.dm @@ -0,0 +1,326 @@ +/obj/structure/clockwork/massive //For objects that are typically very large + name = "massive construct" + desc = "A very large construction." + layer = MASSIVE_OBJ_LAYER + density = FALSE + burn_state = LAVA_PROOF + +/obj/structure/clockwork/massive/New() + ..() + poi_list += src + +/obj/structure/clockwork/massive/Destroy() + poi_list -= src + return ..() + +/obj/structure/clockwork/massive/celestial_gateway //The gateway to Reebe, from which Ratvar emerges + name = "Gateway to the Celestial Derelict" + desc = "A massive, thrumming rip in spacetime." + clockwork_desc = "A portal to the Celestial Derelict. Massive and intimidating, it is the only thing that can both transport Ratvar and withstand the massive amount of energy he emits." + health = 500 + max_health = 500 + mouse_opacity = 2 + icon = 'icons/effects/clockwork_effects.dmi' + icon_state = "nothing" + density = TRUE + can_be_repaired = FALSE + var/progress_in_seconds = 0 //Once this reaches GATEWAY_RATVAR_ARRIVAL, it's game over + var/purpose_fulfilled = FALSE + var/first_sound_played = FALSE + var/second_sound_played = FALSE + var/third_sound_played = FALSE + var/obj/effect/clockwork/gateway_glow/glow + var/obj/effect/countdown/clockworkgate/countdown + +/obj/structure/clockwork/massive/celestial_gateway/New() + ..() + glow = new(get_turf(src)) + countdown = new(src) + countdown.start() + SSshuttle.emergencyNoEscape = TRUE + START_PROCESSING(SSobj, src) + var/area/gate_area = get_area(src) + for(var/M in mob_list) + if(is_servant_of_ratvar(M) || isobserver(M)) + M << "A gateway to the Celestial Derelict has been created in [gate_area.map_name]!" + +/obj/structure/clockwork/massive/celestial_gateway/Destroy() + SSshuttle.emergencyNoEscape = FALSE + if(SSshuttle.emergency.mode == SHUTTLE_STRANDED) + SSshuttle.emergency.mode = SHUTTLE_DOCKED + SSshuttle.emergency.timer = world.time + if(!purpose_fulfilled) + priority_announce("Hostile enviroment resolved. You have 3 minutes to board the Emergency Shuttle.", null, 'sound/AI/shuttledock.ogg', "Priority") + STOP_PROCESSING(SSobj, src) + if(!purpose_fulfilled) + var/area/gate_area = get_area(src) + for(var/M in mob_list) + if(is_servant_of_ratvar(M) || isobserver(M)) + M << "A gateway to the Celestial Derelict has fallen at [gate_area.map_name]!" + world << sound(null, 0, channel = 8) + qdel(glow) + glow = null + qdel(countdown) + countdown = null + return ..() + +/obj/structure/clockwork/massive/celestial_gateway/destroyed() + countdown.stop() + visible_message("The [src] begins to pulse uncontrollably... you might want to run!") + world << sound('sound/effects/clockcult_gateway_disrupted.ogg', 0, channel = 8, volume = 50) + make_glow() + glow.icon_state = "clockwork_gateway_disrupted" + takes_damage = FALSE + sleep(27) + explosion(src, 1, 3, 8, 8) + qdel(src) + return 1 + +/obj/structure/clockwork/massive/celestial_gateway/proc/make_glow() + if(!glow) + glow = new(get_turf(src)) + glow.linked_gate = src + +/obj/structure/clockwork/massive/celestial_gateway/ex_act(severity) + return 0 //Nice try, Toxins! + +/obj/structure/clockwork/massive/celestial_gateway/process() + if(!progress_in_seconds || prob(5)) + for(var/M in mob_list) + M << "You hear otherworldly sounds from the [dir2text(get_dir(get_turf(M), get_turf(src)))]..." + if(!health) + return 0 + progress_in_seconds += GATEWAY_SUMMON_RATE + switch(progress_in_seconds) + if(-INFINITY to GATEWAY_REEBE_FOUND) + if(!first_sound_played) + world << sound('sound/effects/clockcult_gateway_charging.ogg', 1, channel = 8, volume = 50) + first_sound_played = TRUE + make_glow() + glow.icon_state = "clockwork_gateway_charging" + if(GATEWAY_REEBE_FOUND to GATEWAY_RATVAR_COMING) + if(!second_sound_played) + world << sound('sound/effects/clockcult_gateway_active.ogg', 1, channel = 8, volume = 50) + second_sound_played = TRUE + make_glow() + glow.icon_state = "clockwork_gateway_active" + if(GATEWAY_RATVAR_COMING to GATEWAY_RATVAR_ARRIVAL) + if(!third_sound_played) + world << sound('sound/effects/clockcult_gateway_closing.ogg', 1, channel = 8, volume = 50) + third_sound_played = TRUE + make_glow() + glow.icon_state = "clockwork_gateway_closing" + if(GATEWAY_RATVAR_ARRIVAL to INFINITY) + if(!purpose_fulfilled) + countdown.stop() + takes_damage = FALSE + purpose_fulfilled = TRUE + make_glow() + animate(glow, transform = matrix() * 1.5, alpha = 255, time = 126) + world << sound('sound/effects/ratvar_rises.ogg', 0, channel = 8) //End the sounds + sleep(131) + make_glow() + animate(glow, transform = matrix() * 3, alpha = 0, time = 5) + sleep(5) + new/obj/structure/clockwork/massive/ratvar(get_turf(src)) + qdel(src) + +/obj/structure/clockwork/massive/celestial_gateway/examine(mob/user) + icon_state = "spatial_gateway" //cheat wildly by pretending to have an icon + ..() + icon_state = initial(icon_state) + if(is_servant_of_ratvar(user) || isobserver(user)) + var/arrival_text = "IMMINENT" + if(GATEWAY_RATVAR_ARRIVAL - progress_in_seconds > 0) + arrival_text = "[round(max((GATEWAY_RATVAR_ARRIVAL - progress_in_seconds) / (GATEWAY_SUMMON_RATE * 0.5), 0), 1)]" + user << "Seconds until Ratvar's arrival: [arrival_text]s" + switch(progress_in_seconds) + if(-INFINITY to GATEWAY_REEBE_FOUND) + user << "It's still opening." + if(GATEWAY_REEBE_FOUND to GATEWAY_RATVAR_COMING) + user << "It's reached the Celestial Derelict and is drawing power from it." + if(GATEWAY_RATVAR_COMING to INFINITY) + user << "Ratvar is coming through the gateway!" + else + switch(progress_in_seconds) + if(-INFINITY to GATEWAY_REEBE_FOUND) + user << "It's a swirling mass of blackness." + if(GATEWAY_REEBE_FOUND to GATEWAY_RATVAR_COMING) + user << "It seems to be leading somewhere." + if(GATEWAY_RATVAR_COMING to INFINITY) + user << "Something is coming through!" + +/obj/effect/clockwork/gateway_glow //the actual appearance of the Gateway to the Celestial Derelict; an object so the edges of the gate can be clicked through. + icon = 'icons/effects/96x96.dmi' + icon_state = "clockwork_gateway_charging" + pixel_x = -32 + pixel_y = -32 + mouse_opacity = 0 + layer = MASSIVE_OBJ_LAYER + var/obj/structure/clockwork/massive/celestial_gateway/linked_gate + +/obj/effect/clockwork/gateway_glow/Destroy() + if(linked_gate) + linked_gate.glow = null + linked_gate = null + return ..() + +/obj/effect/clockwork/gateway_glow/examine(mob/user) + if(linked_gate) + linked_gate.examine(user) + +/obj/effect/clockwork/gateway_glow/ex_act(severity, target) + return FALSE + + +/obj/structure/clockwork/massive/ratvar + name = "Ratvar, the Clockwork Justiciar" + desc = "What is what is what are what real what is all a lie all a lie it's all a lie why how can what is" + clockwork_desc = "Ratvar, the Clockwork Justiciar, your master eternal." + icon = 'icons/effects/512x512.dmi' + icon_state = "ratvar" + pixel_x = -235 + pixel_y = -248 + takes_damage = FALSE + var/atom/prey //Whatever Ratvar is chasing + var/clashing = FALSE //If Ratvar is FUCKING FIGHTING WITH NAR-SIE + var/proselytize_range = 10 + +/obj/structure/clockwork/massive/ratvar/New() + ..() + ratvar_awakens = TRUE + for(var/obj/item/clockwork/ratvarian_spear/R in all_clockwork_objects) + R.update_force() + START_PROCESSING(SSobj, src) + world << "\"BAPR NTNVA ZL YVTUG FUNYY FUVAR NPEBFF GUVF CNGURGVP ERNYZ!!\"" + world << 'sound/effects/ratvar_reveal.ogg' + var/image/alert_overlay = image('icons/effects/clockwork_effects.dmi', "ratvar_alert") + var/area/A = get_area(src) + notify_ghosts("The Justiciar's light calls to you! Reach out to Ratvar in [A.name] to be granted a shell to spread his glory!", null, source = src, alert_overlay = alert_overlay) + addtimer(SSshuttle.emergency, "request", 50, FALSE, null, 0.3) + + +/obj/structure/clockwork/massive/ratvar/Destroy() + ratvar_awakens = FALSE + for(var/obj/item/clockwork/ratvarian_spear/R in all_clockwork_objects) + R.update_force() + STOP_PROCESSING(SSobj, src) + world << "\"NO! I will not... be... banished... again...\"" + return ..() + + +/obj/structure/clockwork/massive/ratvar/attack_ghost(mob/dead/observer/O) + var/alertresult = alert(O, "Embrace the Justiciar's light? You can no longer be cloned!",,"Cogscarab", "Reclaimer", "No") + if(alertresult == "No" || !O) + return 0 + var/mob/living/simple_animal/R + if(alertresult == "Cogscarab") + R = new/mob/living/simple_animal/drone/cogscarab/ratvar(get_turf(src)) + R.visible_message("[R] forms, and its eyes blink open, glowing bright red!") + else + R = new/mob/living/simple_animal/hostile/clockwork/reclaimer(get_turf(src)) + R.visible_message("[R] forms, and it emits a faint hum!") + R.key = O.key + + +/obj/structure/clockwork/massive/ratvar/Bump(atom/A) + forceMove(get_turf(A)) + A.ratvar_act() + + +/obj/structure/clockwork/massive/ratvar/Process_Spacemove() + return clashing + + +/obj/structure/clockwork/massive/ratvar/process() + if(clashing) //I'm a bit occupied right now, thanks + return + for(var/atom/A in range(proselytize_range, src)) + A.ratvar_act() + var/dir_to_step_in = pick(cardinal) + if(!prey) + for(var/obj/singularity/narsie/N in poi_list) + if(N.z == z) + prey = N + break + if(!prey) //In case there's a Nar-Sie + var/list/meals = list() + for(var/mob/living/L in living_mob_list) + if(L.z == z && !is_servant_of_ratvar(L) && L.mind) + meals += L + if(meals.len) + prey = pick(meals) + prey << "\"You will do.\"\n\ + Something very large and very malevolent begins lumbering its way towards you..." + prey << 'sound/effects/ratvar_reveal.ogg' + else + if(prob(10) || is_servant_of_ratvar(prey) || prey.z != z) + prey << "\"How dull. Leave me.\"\n\ + You feel tremendous relief as a set of horrible eyes loses sight of you..." + prey = null + else + dir_to_step_in = get_dir(src, prey) //Unlike Nar-Sie, Ratvar ruthlessly chases down his target + step(src, dir_to_step_in) + +/obj/structure/clockwork/massive/ratvar/narsie_act() + if(clashing) + return 0 + clashing = TRUE + world << "\"[pick("BLOOD GOD!!!", "NAR-SIE!!!", "AT LAST, YOUR TIME HAS COME!")]\"" + world << "\"Ratvar?! How?!\"" + for(var/obj/singularity/narsie/N in range(15, src)) + if(N.clashing) + continue + N.clashing = TRUE + clash_of_the_titans(N) //IT'S TIME FOR THE BATTLE OF THE AGES + break + return 1 + +/obj/structure/clockwork/massive/ratvar/proc/clash_of_the_titans(obj/singularity/narsie/narsie) + var/winner = "Undeclared" + var/base_victory_chance = 0 + while(TRUE) + world << 'sound/magic/clockwork/ratvar_attack.ogg' + sleep(5.2) + for(var/mob/M in mob_list) + if(M.client) + M.client.color = rgb(150, 100, 0) + spawn(1) + M.client.color = initial(M.client.color) + shake_camera(M, 4, 3) + var/r_success_modifier = (ticker.mode.servants_of_ratvar.len * 2) //2% for each cultist + var/n_success_modifier = (ticker.mode.cult.len * 2) + for(var/mob/living/simple_animal/hostile/construct/harvester/C in player_list) + n_success_modifier += 2 + if(prob(base_victory_chance + r_success_modifier)) + winner = "Ratvar" + break + sleep(rand(2,5)) + world << 'sound/magic/clockwork/narsie_attack.ogg' + sleep(7.4) + for(var/mob/M in mob_list) + if(M.client) + M.client.color = rgb(200, 0, 0) + spawn(1) + M.client.color = initial(M.client.color) + shake_camera(M, 4, 3) + if(prob(base_victory_chance + n_success_modifier)) + winner = "Nar-Sie" + break + base_victory_chance++ //The clash has a higher chance of resolving each time both gods attack one another + switch(winner) + if("Ratvar") + world << "\"[pick("DIE! DIE! DIE!", "REEEEEEEEE!", "FILTH!!!", "SUFFER!!!", "EBG SBE PRAGHEVRF NF V UNIR!!")]\"" //nar-sie get out + world << "\"[pick("Nooooo...", "Not die. To y-", "Die. Ratv-", "Sas tyen re-")]\"" + world << 'sound/magic/clockwork/anima_fragment_attack.ogg' + world << 'sound/magic/demon_dies.ogg' + clashing = FALSE + qdel(narsie) + return 1 + if("Nar-Sie") + world << "\"[pick("Ha.", "Ra'sha fonn dest.", "You fool. To come here.")]\"" //Broken English + world << 'sound/magic/demon_attack1.ogg' + world << 'sound/magic/clockwork/anima_fragment_death.ogg' + narsie.clashing = FALSE + qdel(src) + return 1 diff --git a/code/game/gamemodes/clock_cult/clock_scripture.dm b/code/game/gamemodes/clock_cult/clock_scripture.dm index e1dbb34fe9..a8002c9265 100644 --- a/code/game/gamemodes/clock_cult/clock_scripture.dm +++ b/code/game/gamemodes/clock_cult/clock_scripture.dm @@ -4,9 +4,9 @@ Tiers and Requirements Pieces of scripture require certain follower counts, contruction value, and active caches in order to recite. Drivers: Unlocked by default Scripts: 5 servants and a cache -Applications: 8 servants, 3 caches, and 100 CV -Revenant: 10 servants, 4 caches, and 200 CV -Judgement: 12 servants, 5 caches, 300 CV, and any existing AIs are converted or destroyed +Applications: 8 servants, 3 caches, and 50 CV +Revenant: 10 servants and 100 CV +Judgement: 10 servants, 100 CV, and any existing AIs are converted or destroyed */ /datum/clockwork_scripture @@ -15,51 +15,30 @@ Judgement: 12 servants, 5 caches, 300 CV, and any existing AIs are converted or var/desc = "Ancient Ratvarian lore. This piece seems particularly mundane." var/list/invocations = list() //Spoken over time in the ancient language of Ratvar. See clock_unsorted.dm for more details on the language and how to make it. var/channel_time = 10 //In deciseconds, how long a ritual takes to chant - var/list/required_components = list(BELLIGERENT_EYE = 0, VANGUARD_COGWHEEL = 0, GEIS_CAPACITOR = 0, REPLICANT_ALLOY = 0, HIEROPHANT_ANSIBLE = 0) //Components required - var/list/consumed_components = list(BELLIGERENT_EYE = 0, VANGUARD_COGWHEEL = 0, GEIS_CAPACITOR = 0, REPLICANT_ALLOY = 0, HIEROPHANT_ANSIBLE = 0) //Components consumed + var/list/required_components = list("belligerent_eye" = 0, "vanguard_cogwheel" = 0, "guvax_capacitor" = 0, "replicant_alloy" = 0, "hierophant_ansible" = 0) //Components required + var/list/consumed_components = list("belligerent_eye" = 0, "vanguard_cogwheel" = 0, "guvax_capacitor" = 0, "replicant_alloy" = 0, "hierophant_ansible" = 0) //Components consumed var/obj/item/clockwork/slab/slab //The parent clockwork slab var/mob/living/invoker //The slab's holder var/whispered = FALSE //If the invocation is whispered rather than spoken aloud + var/consumed_component_override = FALSE //If consumed components are unique to a scripture regardless of tier var/usage_tip = "This piece seems to serve no purpose and is a waste of components." //A generalized tip that gives advice on a certain scripture var/invokers_required = 1 //How many people are required, assuming that a scripture requires multiple var/multiple_invokers_used = FALSE //If scripture requires more than one invoker var/multiple_invokers_optional = FALSE //If scripture can have multiple invokers to bolster its effects var/tier = SCRIPTURE_PERIPHERAL //The scripture's tier - var/quickbind = FALSE //if this scripture can be quickbound to a clockwork slab - var/quickbind_desc = "This shouldn't be quickbindable. File a bug report!" - var/primary_component - var/sort_priority = 1 //what position the scripture should have in a list of scripture. Should be based off of component costs/reqs, but you can't initial() lists. //components the scripture used from a slab - var/list/used_slab_components = list(BELLIGERENT_EYE = 0, VANGUARD_COGWHEEL = 0, GEIS_CAPACITOR = 0, REPLICANT_ALLOY = 0, HIEROPHANT_ANSIBLE = 0) + var/list/used_slab_components = list("belligerent_eye" = 0, "vanguard_cogwheel" = 0, "guvax_capacitor" = 0, "replicant_alloy" = 0, "hierophant_ansible" = 0) //components the scripture used from the global cache - var/list/used_cache_components = list(BELLIGERENT_EYE = 0, VANGUARD_COGWHEEL = 0, GEIS_CAPACITOR = 0, REPLICANT_ALLOY = 0, HIEROPHANT_ANSIBLE = 0) - -//messages for offstation scripture recital, courtesy ratvar's generals(and neovgre) - var/static/list/neovgre_penalty = list("Go to the station.", "Useless.", "Don't waste time.", "Pathetic.", "Wasteful.") - var/static/list/inathneq_penalty = list("Child, this is too far out!", "The barrier isn't thin enough for for me to help!", "Please, go to the station so I can assist you.", \ - "Don't waste my Cogs on this...", "There isn't enough time to linger out here!") - var/static/list/sevtug_penalty = list("Fool! Get to the station and don't waste capacitors.", "You go this far out and expect help?", "The veil is too strong, idiot.", \ - "How does the Justicar get anything done with servants like you?", "Oh, you love wasting time, don't you?") - var/static/list/nezbere_penalty = list("You disgrace our master's name with this endeavour.", "This is too far from the station to be a good base.", "This will take too long, friend.", \ - "The barrier isn't weakened enough to make this practical.", "Don't waste alloy.") - var/static/list/nzcrentr_penalty = list("You'd be easy to hunt in that little hunk of metal.", "Boss says you need to get back to the beacon.", "Boss says I can kill you if you do this again.", \ - "Sending you power is too difficult here.", "Boss says stop wasting time.") - -/datum/clockwork_scripture/New() - creation_update() - -/datum/clockwork_scripture/proc/creation_update() //updates any on-creation effects + var/list/used_cache_components = list("belligerent_eye" = 0, "vanguard_cogwheel" = 0, "guvax_capacitor" = 0, "replicant_alloy" = 0, "hierophant_ansible" = 0) /datum/clockwork_scripture/proc/run_scripture() - if(can_recite() && has_requirements()) + if(can_recite() && has_requirements() && check_special_requirements()) if(slab.busy) invoker << "[slab] refuses to work, displaying the message: \"[slab.busy]!\"" - return FALSE + return 0 slab.busy = "Invocation ([name]) in progress" - if(ratvar_awakens) - channel_time *= 0.5 //if ratvar has awoken, half channel time and no cost - else if(!slab.no_cost) + if(!ratvar_awakens && !slab.no_cost) for(var/i in consumed_components) if(consumed_components[i]) for(var/j in 1 to consumed_components[i]) @@ -69,9 +48,9 @@ Judgement: 12 servants, 5 caches, 300 CV, and any existing AIs are converted or else clockwork_component_cache[i]-- used_cache_components[i]++ - update_slab_info() - channel_time *= slab.speed_multiplier - if(!recital() || !check_special_requirements() || !scripture_effects()) //if we fail any of these, refund components used + else + channel_time *= 0.5 //if ratvar has awoken or the slab has no cost, half channel time + if(!check_special_requirements() || !recital() || !check_special_requirements() || !scripture_effects()) //if we fail any of these, refund components used for(var/i in used_slab_components) if(used_slab_components[i]) if(slab) @@ -81,89 +60,37 @@ Judgement: 12 servants, 5 caches, 300 CV, and any existing AIs are converted or for(var/i in used_cache_components) if(used_cache_components[i]) clockwork_component_cache[i] += consumed_components[i] - update_slab_info() - else if(slab && !slab.no_cost && !ratvar_awakens) //if the slab exists and isn't debug and ratvar isn't up, log the scripture as being used - feedback_add_details("clockcult_scripture_recited", name) if(slab) slab.busy = null qdel(src) - return TRUE + return 1 /datum/clockwork_scripture/proc/can_recite() //If the words can be spoken - if(!invoker || !slab || invoker.get_active_held_item() != slab) - return FALSE + if(!ticker || !ticker.mode || !slab || !invoker) + return 0 if(!invoker.can_speak_vocal()) invoker << "You are unable to speak the words of the scripture!" - return FALSE - return TRUE + return 0 + return 1 /datum/clockwork_scripture/proc/has_requirements() //if we have the components and invokers to do it - var/checked_penalty = FALSE if(!ratvar_awakens && !slab.no_cost) - checked_penalty = check_offstation_penalty() - var/component_printout = "You lack the components to recite this piece of scripture!" - var/failed = FALSE for(var/i in required_components) - var/cache_components = clockwork_caches ? clockwork_component_cache[i] : 0 - var/total_components = slab.stored_components[i] + cache_components - if(required_components[i] && total_components < required_components[i]) - component_printout += "\nYou have [total_components]/[required_components[i]] \ - [get_component_name(i)][i != REPLICANT_ALLOY ? "s":""]." - failed = TRUE - if(failed) - component_printout += "" - invoker << component_printout - return FALSE + if(slab.stored_components[i] + clockwork_component_cache[i] < required_components[i]) + invoker << "You lack the components to recite this piece of scripture! Check Recollection for component costs." + return 0 if(multiple_invokers_used && !multiple_invokers_optional && !ratvar_awakens && !slab.no_cost) var/nearby_servants = 0 - for(var/mob/living/L in range(1, get_turf(invoker))) + for(var/mob/living/L in range(1, invoker)) if(is_servant_of_ratvar(L) && L.stat == CONSCIOUS && L.can_speak_vocal()) nearby_servants++ if(nearby_servants < invokers_required) invoker << "There aren't enough non-mute servants nearby ([nearby_servants]/[invokers_required])!" - return FALSE - if(!check_special_requirements()) - return FALSE - if(checked_penalty && !slab.busy) - var/message - var/ratvarian_prob = 0 - switch(primary_component) - if(BELLIGERENT_EYE) - message = pick(neovgre_penalty) - ratvarian_prob = 55 - if(VANGUARD_COGWHEEL) - message = pick(inathneq_penalty) - ratvarian_prob = 25 - if(GEIS_CAPACITOR) - message = pick(sevtug_penalty) - ratvarian_prob = 40 - if(REPLICANT_ALLOY) - message = pick(nezbere_penalty) - ratvarian_prob = 10 - if(HIEROPHANT_ANSIBLE) - message = pick(nzcrentr_penalty) - ratvarian_prob = 70 - if(message) - if(prob(ratvarian_prob)) - message = text2ratvar(message) - invoker << "\"[message]\"" - invoker << 'sound/magic/clockwork/invoke_general.ogg' - return TRUE + return 0 + return 1 -/datum/clockwork_scripture/proc/check_offstation_penalty() - var/turf/T = get_turf(invoker) - if(!T || (T.z != ZLEVEL_STATION && T.z != ZLEVEL_CENTCOM && T.z != ZLEVEL_MINING && T.z != ZLEVEL_LAVALAND)) - channel_time *= 2 - for(var/i in consumed_components) - if(consumed_components[i]) - consumed_components[i] *= 2 - if(required_components[i]) - required_components[i] = max(consumed_components[i], required_components[i]) - return TRUE - return FALSE - -/datum/clockwork_scripture/proc/check_special_requirements() //Special requirements for scriptures, checked multiple times during invocation - return TRUE +/datum/clockwork_scripture/proc/check_special_requirements() //Special requirements for scriptures, checked three times during invocation + return 1 /datum/clockwork_scripture/proc/recital() //The process of speaking the words if(!channel_time && invocations.len) @@ -171,65 +98,58 @@ Judgement: 12 servants, 5 caches, 300 CV, and any existing AIs are converted or for(var/mob/living/L in range(1, invoker)) if(is_servant_of_ratvar(L) && L.stat == CONSCIOUS && L.can_speak_vocal()) for(var/invocation in invocations) - clockwork_say(L, text2ratvar(invocation), whispered) + clockwork_say(L, invocation, whispered) else for(var/invocation in invocations) - clockwork_say(invoker, text2ratvar(invocation), whispered) + clockwork_say(invoker, invocation, whispered) invoker << "You [channel_time <= 0 ? "recite" : "begin reciting"] a piece of scripture entitled \"[name]\"." if(!channel_time) - return TRUE + return 1 for(var/invocation in invocations) - if(!check_special_requirements() || !do_after(invoker, channel_time / invocations.len, target = invoker) || !check_special_requirements()) + if(!do_after(invoker, channel_time / invocations.len, target = invoker)) slab.busy = null - return FALSE + return 0 if(multiple_invokers_used) - for(var/mob/living/L in range(1, get_turf(invoker))) + for(var/mob/living/L in range(1, invoker)) if(is_servant_of_ratvar(L) && L.stat == CONSCIOUS && L.can_speak_vocal()) - clockwork_say(L, text2ratvar(invocation), whispered) + clockwork_say(L, invocation, whispered) else - clockwork_say(invoker, text2ratvar(invocation), whispered) - return TRUE + clockwork_say(invoker, invocation, whispered) + return 1 /datum/clockwork_scripture/proc/scripture_effects() //The actual effects of the recital after its conclusion -//Channeled scripture begins instantly but runs constantly -/datum/clockwork_scripture/channeled - var/list/chant_invocations = list("AYY LMAO") + +/datum/clockwork_scripture/channeled //Channeled scripture begins instantly but runs constantly + var/list/chant_invocations = list("NLL YZNB") //"AYY LMAO" var/chant_amount = 5 //Times the chant is spoken var/chant_interval = 10 //Amount of deciseconds between times the chant is actually spoken aloud -/datum/clockwork_scripture/channeled/check_offstation_penalty() - . = ..() - if(.) - chant_interval *= 2 - /datum/clockwork_scripture/channeled/scripture_effects() for(var/i in 1 to chant_amount) if(!can_recite()) break if(!do_after(invoker, chant_interval, target = invoker)) break - clockwork_say(invoker, text2ratvar(pick(chant_invocations)), whispered) + clockwork_say(invoker, pick(chant_invocations), whispered) chant_effects(i) if(invoker && slab) + invoker << "You cease your chant." chant_end_effects() - return TRUE + return 1 /datum/clockwork_scripture/channeled/proc/chant_effects(chant_number) //The chant's periodic effects - /datum/clockwork_scripture/channeled/proc/chant_end_effects() //The chant's effect upon ending - invoker << "You cease your chant." -//Creates an object at the invoker's feet -/datum/clockwork_scripture/create_object + +/datum/clockwork_scripture/create_object //Creates an object at the invoker's feet var/object_path = /obj/item/clockwork //The path of the object created var/creator_message = "You create a meme." //Shown to the invoker var/observer_message var/one_per_tile = FALSE var/prevent_path - var/space_allowed = FALSE /datum/clockwork_scripture/create_object/New() ..() @@ -237,60 +157,1067 @@ Judgement: 12 servants, 5 caches, 300 CV, and any existing AIs are converted or prevent_path = object_path /datum/clockwork_scripture/create_object/check_special_requirements() - var/turf/T = get_turf(invoker) - if(!space_allowed && isspaceturf(T)) - invoker << "You need solid ground to place this object!" - return FALSE - if(one_per_tile && (locate(prevent_path) in T)) + if(one_per_tile && (locate(prevent_path) in get_turf(invoker))) invoker << "You can only place one of this object on each tile!" - return FALSE - return TRUE + return 0 + return 1 /datum/clockwork_scripture/create_object/scripture_effects() if(creator_message && observer_message) invoker.visible_message(observer_message, creator_message) else if(creator_message) invoker << creator_message - var/obj/O = new object_path (get_turf(invoker)) - O.ratvar_act() //update the new object so it gets buffed if ratvar is alive - if(istype(O, /obj/item)) - invoker.put_in_hands(O) - return TRUE + new object_path (get_turf(invoker)) + return 1 -//Uses a ranged slab ability, returning only when the ability no longer exists(ie, when interrupted) or finishes. -/datum/clockwork_scripture/ranged_ability - var/slab_icon = "dread_ipad" - var/ranged_type = /obj/effect/proc_holder/slab - var/ranged_message = "This is a huge goddamn bug, how'd you cast this?" - var/timeout_time = 0 +///////////// +// DRIVERS // +///////////// + +/datum/clockwork_scripture/channeled/belligerent //Belligerent: Channeled for up to ten times over thirty seconds. Forces non-servants that can hear the chant to walk. Nar-Sian cultists are burned. + descname = "Channeled, Area Slowdown" + name = "Belligerent" + desc = "Forces all nearby non-servants to walk rather than run. Chanted every three seconds for up to thirty seconds." + chant_invocations = list("Chav'fu gurve oyva-qarff!") //"Punish their blindness!" + chant_amount = 10 + chant_interval = 30 + required_components = list("belligerent_eye" = 1) + usage_tip = "Useful for crowd control in a populated area and disrupting mass movement." + tier = SCRIPTURE_DRIVER + +/datum/clockwork_scripture/channeled/belligerent/chant_effects(chant_number) + for(var/mob/living/L in hearers(7, invoker)) + if(!is_servant_of_ratvar(L) && L.m_intent != "walk" && !L.null_rod_check()) + if(!iscultist(L)) + L << "Your legs feel heavy and weak!" + else //Cultists take extra burn damage + L << "Your legs burn with pain!" + L.apply_damage(5, BURN, "l_leg") + L.apply_damage(5, BURN, "r_leg") + L.m_intent = "walk" + + + +/datum/clockwork_scripture/create_object/judicial_visor //Judicial Visor: Creates a judicial visor. + descname = "Delayed Area Stun Glasses" + name = "Judicial Visor" + desc = "Forms a visor that, when worn, will grant the ability to form a flame in your hand that can be activated at an area to smite it, stunning and damaging the nonfaithful. \ + Cultists of Nar-Sie will be set on fire, though they will be stunned for half the time." + invocations = list("Tenag zr gur synzrf-bs Ratvar!") + channel_time = 10 + required_components = list("belligerent_eye" = 2) + consumed_components = list("belligerent_eye" = 1) + whispered = TRUE + object_path = /obj/item/clothing/glasses/judicial_visor + creator_message = "You form a judicial visor, which is capable of smiting the unworthy." + usage_tip = "The visor has a thirty-second cooldown once used, and the marker it creates has a delay of 3 seconds before exploding." + tier = SCRIPTURE_DRIVER + + + +/datum/clockwork_scripture/vanguard //Vanguard: Provides thirty seconds of stun immunity. At the end of the thirty seconds, all stuns absorbed are stacked on the invoker. + descname = "Self Stun Immunity" + name = "Vanguard" + desc = "Provides thirty seconds of stun immunity. At the end of the thirty seconds, the invoker is stunned for the equivalent of how many stuns they absorbed. \ + Excessive absorption will cause unconsciousness." + invocations = list("Fuvryq zr...", "...sebz qnexarff!") //"Shield me from darkness!" + channel_time = 30 + required_components = list("vanguard_cogwheel" = 1) + usage_tip = "Your slab will be unusable while it is shielding you from stuns." + tier = SCRIPTURE_DRIVER + +/datum/clockwork_scripture/vanguard/scripture_effects() + for(var/obj/item/clockwork/slab/S in invoker.GetAllContents()) + S.busy = "Vanguard in progress" //To prevent circumventing the Vanguard by carrying multiple slabs + invoker.stun_absorption = TRUE + invoker.visible_message("[invoker] begins to faintly glow!", "You will absorb all stuns for the next thirty seconds.") + sleep(300) + if(!invoker) + return 0 + invoker.stun_absorption = FALSE + if(invoker.stun_absorption_count && invoker.stat != DEAD) + invoker.Stun(invoker.stun_absorption_count) + invoker.Weaken(invoker.stun_absorption_count) + invoker << "The weight of the vanguard's protection crashes down upon you!" + if(invoker.stun_absorption_count >= 25) + invoker << "You faint from the exertion!" + invoker.Paralyse(invoker.stun_absorption_count * 1.5) + invoker.stun_absorption_count = 0 + for(var/obj/item/clockwork/slab/S in invoker.GetAllContents()) + S.busy = null + return 1 + + + +/datum/clockwork_scripture/sentinels_compromise //Sentinel's Compromise: Allows the invoker to select a nearby servant convert their brute and burn damage into half as much toxin damage. + descname = "Convert Brute/Burn to Half Toxin" + name = "Sentinel's Compromise" + desc = "Heals all brute and burn damage on a nearby living, friendly servant, but deals 50% of that amount as toxin damage." + invocations = list("Zraq gur jbhaqf-bs...", "...zl vasrevbe syrfu.") //"Mend the wounds of my inferior flesh." + channel_time = 30 + required_components = list("vanguard_cogwheel" = 2) + consumed_components = list("vanguard_cogwheel" = 1) + usage_tip = "The Compromise is very fast to invoke." + tier = SCRIPTURE_DRIVER + +/datum/clockwork_scripture/sentinels_compromise/scripture_effects() + var/list/nearby_cultists = list() + for(var/mob/living/C in range(7, invoker)) + if(C.stat != DEAD && is_servant_of_ratvar(C) && (C.getBruteLoss() || C.getBruteLoss())) + nearby_cultists += C + if(!nearby_cultists.len) + invoker << "There are no eligible servants nearby!" + return 0 + var/mob/living/L = input(invoker, "Choose a fellow servant to heal.", name) as null|anything in nearby_cultists + if(!L || !invoker || !invoker.canUseTopic(slab)) + return 0 + var/brutedamage = L.getBruteLoss() + var/burndamage = L.getFireLoss() + var/totaldamage = brutedamage + burndamage + if(!totaldamage) + invoker << "[L] is not burned or bruised!" + return 0 + L.adjustToxLoss(totaldamage * 0.5) + L.adjustBruteLoss(-brutedamage) + L.adjustFireLoss(-burndamage) + var/healseverity = max(round(totaldamage*0.05, 1), 1) //shows the general severity of the damage you just healed, 1 glow per 20 + var/targetturf = get_turf(L) + for(var/i in 1 to healseverity) + PoolOrNew(/obj/effect/overlay/temp/heal, list(targetturf, "#1E8CE1")) + invoker << "You bathe [L] in Inath-Neq's power!" + L.visible_message("A blue light washes over [L], mending their bruises and burns!", \ + "You feel Inath-Neq's power healing your wounds, but a deep nausea overcomes you!") + playsound(targetturf, 'sound/magic/Staff_Healing.ogg', 50, 1) + return 1 + + + +/datum/clockwork_scripture/guvax //Guvax: Converts anyone adjacent to the invoker after completion. + descname = "Melee Area Convert" + name = "Guvax" + desc = "Enlists all nearby living unshielded creatures into servitude to Ratvar. Also purges holy water from nearby servants." + invocations = list("Rayvtugra guvf urngura!", "Nyy ner vafrpgf orsber Ratvar!", "Chetr nyy hageh'guf naq ubabe Ratvar.") + channel_time = 60 + required_components = list("guvax_capacitor" = 1) + usage_tip = "Only works on those in melee range and does not penetrate mindshield implants. Much more efficient than a Sigil of Submission." + tier = SCRIPTURE_DRIVER + +/datum/clockwork_scripture/guvax/scripture_effects() + for(var/mob/living/L in hearers(1, get_turf(invoker))) //Affects silicons + if(!is_servant_of_ratvar(L)) + if(L.stat != DEAD) + add_servant_of_ratvar(L) + else + if(L.reagents && L.reagents.has_reagent("holywater")) + L.reagents.remove_reagent("holywater", 1000) + L << "Ratvar's light flares, banishing the darkness. Your devotion remains intact!" + for(var/mob/living/silicon/ai/A in range(1, get_turf(invoker))) //Seems necessary because AIs don't count as hearers for some reason + if(A.stat != DEAD) + add_servant_of_ratvar(A) + return 1 + + + +/datum/clockwork_scripture/channeled/taunting_tirade //Taunting Tirade: Channeled for up to ten times over thirty seconds. Confuses non-servants that can hear it and allows movement for a brief time after each channel + descname = "Channeled, Mobile Area Confusion" + name = "Taunting Tirade" + desc = "Confuses and dizzies all nearby non-servants with a short invocation, then allows movement for three seconds. Chanted every second for up to thirty-five seconds." + chant_invocations = list("Ubfgvyrf ba zl onpx!", "Rarzvrf ba zl genvy!", "Tbaan gel naq funxr zl gnvy.", "Obtrlf ba zl fvk!") + chant_amount = 10 + chant_interval = 5 + required_components = list("guvax_capacitor" = 2) + consumed_components = list("guvax_capacitor" = 1) + usage_tip = "Useful for fleeing attackers, as few will be able to follow someone using this scripture." + tier = SCRIPTURE_DRIVER + var/flee_time = 27 //allow fleeing for 3 seconds + var/grace_period = 3 //very short grace period so you don't have to stop immediately var/datum/progressbar/progbar -/datum/clockwork_scripture/ranged_ability/Destroy() +/datum/clockwork_scripture/channeled/taunting_tirade/chant_effects(chant_number) + for(var/mob/living/L in hearers(7, invoker)) + if(!is_servant_of_ratvar(L) && !L.null_rod_check()) + L.confused = min(L.confused + 20, 100) + L.dizziness = min(L.dizziness + 20, 100) + if(chant_number != chant_amount) //if this is the last chant, we don't have a movement period because the chant is over + invoker.visible_message("[invoker] is suddenly covered with a thin layer of dark purple smoke!") + invoker.color = "#AF0AAF" + animate(invoker, color = initial(invoker.color), time = flee_time+grace_period) + var/endtime = world.time + flee_time + var/starttime = world.time + progbar = new(invoker, flee_time, invoker) + progbar.bar.color = "#AF0AAF" + animate(progbar.bar, color = initial(progbar.bar.color), time = flee_time+grace_period) + while(world.time < endtime) + sleep(1) + progbar.update(world.time - starttime) + qdel(progbar) + sleep(grace_period) + +/datum/clockwork_scripture/channeled/taunting_tirade/chant_end_effects() qdel(progbar) + + + +/datum/clockwork_scripture/replicant //Replicant: Creates a new clockwork slab. Doesn't use create_object because of its unique behavior. + descname = "New Clockwork Slab" + name = "Replicant" + desc = "Creates a new clockwork slab." + invocations = list("Z`rgny, orpbzr terngre!") + channel_time = 0 + required_components = list("replicant_alloy" = 1) + whispered = TRUE + usage_tip = "This is inefficient as a way to produce components, as the slab produced must be held by someone with no other slabs to produce components." + tier = SCRIPTURE_DRIVER + +/datum/clockwork_scripture/replicant/scripture_effects() + invoker << "You copy a piece of replicant alloy and command it into a new slab." //No visible message, for stealth purposes + var/obj/item/clockwork/slab/S = new(get_turf(invoker)) + invoker.put_in_hands(S) //Put it in your hands if possible + return 1 + + + +/datum/clockwork_scripture/create_object/tinkerers_cache //Tinkerer's Cache: Creates a tinkerer's cache. + descname = "Necessary, Shares Components" + name = "Tinkerer's Cache" + desc = "Forms a cache that can store an infinite amount of components. All caches are linked and will provide components to slabs." + invocations = list("Ohv’yqva...", "...n qvfcra’fre!") + channel_time = 50 + required_components = list("replicant_alloy" = 2) + consumed_components = list("replicant_alloy" = 1) + object_path = /obj/structure/clockwork/cache + creator_message = "You form a tinkerer's cache, which is capable of storing components, which will automatically be used by slabs." + observer_message = "A hollow brass spire rises and begins to blaze!" + usage_tip = "Slabs will draw components from the global cache after the slab's own repositories, making caches very efficient." + tier = SCRIPTURE_DRIVER + one_per_tile = TRUE + + + +/datum/clockwork_scripture/create_object/wraith_spectacles //Wraith Spectacles: Creates a pair of wraith spectacles. + descname = "Xray Vision Glasses" + name = "Wraith Spectacles" + desc = "Fabricates a pair of glasses that provides true sight but quickly damage vision, eventually causing blindness if worn for too long." + invocations = list("Y'vsg gur fpnyrf sebz zl rl-rf.") + channel_time = 10 + required_components = list("hierophant_ansible" = 1) + whispered = TRUE + object_path = /obj/item/clothing/glasses/wraith_spectacles + creator_message = "You form a pair of wraith spectacles, which will grant true sight when worn." + usage_tip = "\"True sight\" means that you are able to see through walls and in darkness." + tier = SCRIPTURE_DRIVER + + + +/datum/clockwork_scripture/create_object/sigil_of_transgression //Sigil of Transgression: Creates a sigil of transgression. + descname = "Stun Trap" + name = "Sigil of Transgression" + desc = "Wards a tile with a sigil. The next person to cross the sigil will be smitten and unable to move. Nar-Sian cultists are stunned altogether." + invocations = list("Qvivavgl, qnmmyr...", "...gubfr jub gerffcnff'urer!") //"Divinity, dazzle those who trespass here!" + channel_time = 50 + required_components = list("hierophant_ansible" = 2) + consumed_components = list("hierophant_ansible" = 1) + whispered = TRUE + object_path = /obj/effect/clockwork/sigil/transgression + creator_message = "A sigil silently appears below you. The next non-servant to cross it will be immobilized." + usage_tip = "The sigil, while fairly powerful in its stun, does not induce muteness in its victim." + tier = SCRIPTURE_DRIVER + one_per_tile = TRUE + +///////////// +// SCRIPTS // +///////////// + +/datum/clockwork_scripture/create_object/ocular_warden //Ocular Warden: Creates an ocular warden. + descname = "Turret" + name = "Ocular Warden" + desc = "Forms an automatic short-range turret that deals low sustained damage to the unenlightened in its range." + invocations = list("Thne’qvnaf...", "...bs gur Ratvar...", "...qrs’raq!") + channel_time = 120 + required_components = list("belligerent_eye" = 2, "replicant_alloy" = 1) + consumed_components = list("belligerent_eye" = 1, "replicant_alloy" = 1) + object_path = /obj/structure/clockwork/ocular_warden + creator_message = "You form an ocular warden, which will focus its searing gaze upon nearby unenlightened." + observer_message = "A brass eye takes shape and slowly rises into the air, its red iris glaring!" + usage_tip = "Although powerful, the warden is very weak and should optimally be placed behind barricades." + tier = SCRIPTURE_SCRIPT + one_per_tile = TRUE + +/datum/clockwork_scripture/create_object/ocular_warden/check_special_requirements() + for(var/obj/structure/clockwork/ocular_warden/W in range(3, invoker)) + invoker << "You sense another ocular warden too near this location. Placing another this close would cause them to fight." //fluff message + return 0 return ..() -/datum/clockwork_scripture/ranged_ability/scripture_effects() - slab.icon_state = slab_icon - slab.slab_ability = new ranged_type(slab) - slab.slab_ability.slab = slab - slab.slab_ability.add_ranged_ability(invoker, ranged_message) - invoker.update_inv_hands() - var/end_time = world.time + timeout_time - var/successful = FALSE - if(timeout_time) - progbar = new(invoker, timeout_time, slab) - while(slab && slab.slab_ability && !slab.slab_ability.finished && (slab.slab_ability.in_progress || !timeout_time || world.time <= end_time)) - successful = slab.slab_ability.successful - if(progbar) - if(slab.slab_ability.in_progress) - qdel(progbar) + +/datum/clockwork_scripture/channeled/volt_void //Volt Void: Channeled for up to thirty times over thirty seconds. Consumes power from most power storages and deals slight burn damage to the invoker. + descname = "Channeled, Area Power Drain" + name = "Volt Void" //Alternative name: "On all levels but physical, I am a power sink" + desc = "Drains energy from nearby power sources, dealing burn damage if the total power consumed is above a threshhold. Channeled every second for a maximum of thirty seconds." + chant_invocations = list("Qenj punetr gb guv’f furyy!") + chant_amount = 30 + chant_interval = 10 + required_components = list("guvax_capacitor" = 1, "hierophant_ansible" = 2) + consumed_components = list("guvax_capacitor" = 1, "hierophant_ansible" = 1) + usage_tip = "If standing on a Sigil of Transmission, will transfer power to it. Augumented limbs will also be healed unless above a very high threshhold." + tier = SCRIPTURE_SCRIPT + var/total_power_drained = 0 + var/power_damage_threshhold = 3000 + var/augument_damage_threshhold = 6000 + +/datum/clockwork_scripture/channeled/volt_void/chant_effects(chant_number) + playsound(invoker, 'sound/effects/EMPulse.ogg', 50, 1) + var/power_drained = 0 + for(var/obj/machinery/power/apc/A in view(7, invoker)) + if(A.cell && A.cell.charge) + playsound(A, "sparks", 50, 1) + flick("apc-spark", A) + power_drained += min(A.cell.charge, 500) + A.cell.charge = max(0, A.cell.charge - 500) //Better than a power sink! + if(!A.cell.charge && !A.shorted) + A.shorted = 1 + A.visible_message("The [A.name]'s screen blurs with static.") + A.update() + A.update_icon() + for(var/obj/machinery/power/smes/S in view(7, invoker)) + if(S.charge) + power_drained += min(S.charge, 500) + S.charge = max(0, S.charge - 50000) + if(!S.charge && !S.panel_open) + S.panel_open = TRUE + S.icon_state = "[initial(S.icon_state)]-o" + var/datum/effect_system/spark_spread/spks = new(get_turf(S)) + spks.set_up(10, 0, get_turf(S)) + spks.start() + S.visible_message("[S]'s panel flies open with a flurry of sparks.") + S.update_icon() + for(var/obj/item/weapon/stock_parts/cell/C in view(7, invoker)) + if(C.charge) + power_drained += min(C.charge, 500) + C.charge = C.use(max(0, C.charge - 500)) + C.updateicon() + for(var/obj/machinery/light/L in view(7, invoker)) + if(L.on) + playsound(L, 'sound/effects/light_flicker.ogg', 50, 1) + L.flicker(2) + power_drained += 50 + for(var/mob/living/silicon/robot/R in view(7, invoker)) + if(!is_servant_of_ratvar(R) && R.cell && R.cell.charge) + power_drained += min(R.cell.charge, 500) + R.cell.charge = max(0, R.cell.charge - 500) + R << "ERROR: Power loss detected!" + var/datum/effect_system/spark_spread/spks = new(get_turf(R)) + spks.set_up(3, 0, get_turf(R)) + spks.start() + var/obj/effect/clockwork/sigil/transmission/ST = locate(/obj/effect/clockwork/sigil/transmission) in get_turf(invoker) + if(ST && power_drained >= 50) + var/sigil_drain = 0 + while(power_drained >= 50) + ST.modify_charge(-50) + power_drained -= 50 + sigil_drain += 10 + power_drained += sigil_drain //readd part of the power given to the sigil to the power drained this cycle + ST.visible_message("[ST] flares a brilliant orange!") + total_power_drained += power_drained + if(power_drained >= 100 && total_power_drained >= power_damage_threshhold) + var/power_damage = power_drained * 0.01 + invoker.visible_message("[invoker] flares a brilliant orange!", "You feel the warmth of electricity running into your body.") + if(ishuman(invoker)) + var/mob/living/carbon/human/H = invoker + for(var/X in H.bodyparts) + var/obj/item/bodypart/BP = X + if(ratvar_awakens || BP.status == ORGAN_ROBOTIC && total_power_drained < augument_damage_threshhold) //if ratvar is alive, it won't damage and will always heal augumented limbs + BP.heal_damage(power_damage, power_damage, 1) //heals one point of burn and brute for every ~100W drained on augumented limbs + else + BP.take_damage(0, power_damage) + else if(isanimal(invoker)) + var/mob/living/simple_animal/A = invoker + A.adjustHealth(-power_damage) //if a simple animal is using volt void, just heal it + return 1 + + + +/datum/clockwork_scripture/create_object/clockwork_proselytizer //Clockwork Proselytizer: Creates a clockwork proselytizer. + descname = "Necessary, Converts Objects" + name = "Clockwork Proselytizer" + desc = "Forms a device that, when used on certain objects, converts them into their Ratvarian equivalents. It requires replicant alloys to function." + invocations = list("Jvgu guv’f qrivpr...", "...uvf cerfrapr funyy or znqr xabja.") + channel_time = 20 + required_components = list("guvax_capacitor" = 1, "replicant_alloy" = 2) + consumed_components = list("guvax_capacitor" = 1, "replicant_alloy" = 1) + whispered = TRUE + object_path = /obj/item/clockwork/clockwork_proselytizer/preloaded + creator_message = "You form a clockwork proselytizer, which is already pre-loaded with a small amount of replicant alloy." + usage_tip = "Clockwork walls cause adjacent tinkerer's caches to generate components passively, making them a vital tool. Clockwork floors heal servants standing on them." + tier = SCRIPTURE_SCRIPT + + + +/datum/clockwork_scripture/fellowship_armory //Fellowship Armory: Arms the invoker and nearby servants with Ratvarian armor. + descname = "Area Servant Armor" + name = "Fellowship Armory" + desc = "Equips the invoker and any nearby servants with Ratvarian armor. This armor provides high melee resistance but a weakness to lasers. \ + It grows faster to invoke with more nearby servants." + invocations = list("Fuvryq zr...", "...jvgu gur sentzragf...", "...bs Ratvar!") + channel_time = 110 //effectively 100 because it counts the invoker + required_components = list("vanguard_cogwheel" = 2, "replicant_alloy" = 1) + consumed_components = list("vanguard_cogwheel" = 1, "replicant_alloy" = 1) + usage_tip = "Before using, advise adjacent allies to remove their helmets, external suits, gloves, and shoes." + tier = SCRIPTURE_SCRIPT + multiple_invokers_used = TRUE + multiple_invokers_optional = TRUE + +/datum/clockwork_scripture/fellowship_armory/run_scripture() + for(var/mob/living/L in range(1, invoker)) + if(is_servant_of_ratvar(L) && L.can_speak_vocal()) + channel_time = max(channel_time - 10, 0) + return ..() + +/datum/clockwork_scripture/fellowship_armory/scripture_effects() + for(var/mob/living/L in range(1, invoker)) + if(!is_servant_of_ratvar(L)) + continue + L.visible_message("Strange armor appears on [L]!", "A bright shimmer runs down your body, equipping you with Ratvarian armor.") + playsound(L, 'sound/magic/clockwork/fellowship_armory.ogg', 50, 1) + L.equip_to_slot_or_del(new/obj/item/clothing/head/helmet/clockwork(null), slot_head) + L.equip_to_slot_or_del(new/obj/item/clothing/suit/armor/clockwork(null), slot_wear_suit) + L.equip_to_slot_or_del(new/obj/item/clothing/gloves/clockwork(null), slot_gloves) + L.equip_to_slot_or_del(new/obj/item/clothing/shoes/clockwork(null), slot_shoes) + return 1 + + + +/datum/clockwork_scripture/function_call //Function Call: Grants the invoker the ability to call forth a Ratvarian spear that deals significant damage to silicons. + descname = "Summonable Spear" + name = "Function Call" + desc = "Grants the invoker the ability to call forth a powerful Ratvarian spear that will deal significant damage to Nar-Sie's dogs in addition to silicon lifeforms. \ + It will vanish five minutes after being called." + invocations = list("Tenag zr...", "...gur zvtug-bs oenff!") + channel_time = 20 + required_components = list("replicant_alloy" = 2, "hierophant_ansible" = 1) + consumed_components = list("replicant_alloy" = 1, "hierophant_ansible" = 1) + whispered = TRUE + usage_tip = "You can impale human targets with the spear by pulling them, then attacking. Throwing the spear at a mob will do massive damage, but break the spear." + tier = SCRIPTURE_SCRIPT + +/datum/clockwork_scripture/function_call/check_special_requirements() + for(var/datum/action/innate/function_call/F in invoker.actions) + invoker << "You have already bound a Ratvarian spear to yourself!" + return 0 + return ishuman(invoker) + +/datum/clockwork_scripture/function_call/scripture_effects() + invoker.visible_message("A shimmer of yellow light infuses [invoker]!", \ + "You bind a Ratvarian spear to yourself. Use the \"Function Call\" action button to call it forth.") + var/datum/action/innate/function_call/F = new() + F.Grant(invoker) + return 1 + + +/datum/clockwork_scripture/spatial_gateway + descname = "Teleport Gate" + name = "Spatial Gateway" + desc = "Tears open a miniaturized gateway in spacetime to any conscious servant that can transport objects or creatures to its destination. \ + Each servant assisting in the invocation adds one additional use and four additional seconds to the gateway's uses and duration." + invocations = list("Gryrcbegre...", "...pbzva evtug-hc!") + channel_time = 80 + required_components = list("vanguard_cogwheel" = 1, "hierophant_ansible" = 2) + consumed_components = list("vanguard_cogwheel" = 1, "hierophant_ansible" = 1) + multiple_invokers_used = TRUE + multiple_invokers_optional = TRUE + usage_tip = "This gateway is strictly one-way and will only allow things through the invoker's portal." + tier = SCRIPTURE_SCRIPT + +/datum/clockwork_scripture/spatial_gateway/check_special_requirements() + if(!isturf(invoker.loc)) + invoker << "You must not be inside an object to use this scripture!" + return 0 + var/other_servants = 0 + for(var/mob/living/L in living_mob_list) + if(is_servant_of_ratvar(L) && !L.stat != DEAD) + other_servants++ + for(var/obj/structure/clockwork/powered/clockwork_obelisk/O in all_clockwork_objects) + other_servants++ + if(!other_servants) + invoker << "There are no other servants or clockwork obelisks!" + return 0 + return 1 + +/datum/clockwork_scripture/spatial_gateway/scripture_effects() + var/portal_uses = 0 + var/duration = 0 + for(var/mob/living/L in range(1, invoker)) + if(!L.stat && is_servant_of_ratvar(L)) + portal_uses++ + duration += 40 //4 seconds + if(ratvar_awakens) + portal_uses = max(portal_uses, 100) //Very powerful if Ratvar has been summoned + duration = max(duration, 100) + return invoker.procure_gateway(invoker, duration, portal_uses) + + + +/datum/clockwork_scripture/create_object/soul_vessel //Soul Vessel: Creates a soul vessel + descname = "Clockwork Posibrain" + name = "Soul Vessel" + desc = "Forms an ancient positronic brain with an overriding directive to serve Ratvar." + invocations = list("Ureq'gur fbhyf-bs...", "...gur oynf curz-bhf qnzarq!") + channel_time = 20 + required_components = list("vanguard_cogwheel" = 1, "guvax_capacitor" = 2) + consumed_components = list("vanguard_cogwheel" = 1, "guvax_capacitor" = 1) + whispered = TRUE + object_path = /obj/item/device/mmi/posibrain/soul_vessel + creator_message = "You form a soul vessel, which immediately begins drawing in the damned." + usage_tip = "The vessel functions as a servant for tier unlocking but not for invocation." + tier = SCRIPTURE_SCRIPT + + + +/datum/clockwork_scripture/create_object/cogscarab //Cogscarab: Creates an empty cogscarab shell + descname = "Constructor Soul Vessel Shell" + name = "Cogscarab" + desc = "Creates a small shell fitted for soul vessels. Adding an active soul vessel to it results in a small construct with tools and an inbuilt proselytizer." + invocations = list("Pnyy sbegu...", "...gur jbexref-bs Nezbere.") + channel_time = 50 + required_components = list("belligerent_eye" = 2, "hierophant_ansible" = 1) + consumed_components = list("belligerent_eye" = 1, "hierophant_ansible" = 1) + object_path = /obj/structure/clockwork/shell/cogscarab + creator_message = "You form a cogscarab, a constructor soul vessel receptable." + observer_message = "The slab disgorges a puddle of black metal that contracts and forms into a strange shell!" + usage_tip = "Useless without a soul vessel and should not be created without one." + tier = SCRIPTURE_SCRIPT + + + +/datum/clockwork_scripture/create_object/sigil_of_submission //Sigil of Submission: Creates a sigil of submission. + descname = "Conversion Trap" + name = "Sigil of Submission" + desc = "Places a luminous sigil that will enslave any valid beings standing on it after a time." + invocations = list("Qvivavgl, rayvtugra...", "...gubfr jub gerfcnff urer!") + channel_time = 60 + required_components = list("belligerent_eye" = 1, "guvax_capacitor" = 2) + consumed_components = list("belligerent_eye" = 1, "guvax_capacitor" = 1) + whispered = TRUE + object_path = /obj/effect/clockwork/sigil/submission + creator_message = "A luminous sigil appears below you. The next non-servant to cross it will be enslaved after a brief time if they do not move." + usage_tip = "This is not a primary conversion method - use Guvax for that. It is advantageous as a trap, however, as it will transmit the name of the newly-converted." + tier = SCRIPTURE_SCRIPT + one_per_tile = TRUE + + +////////////////// +// APPLICATIONS // +////////////////// + +/datum/clockwork_scripture/create_object/anima_fragment //Anima Fragment: Creates an empty anima fragment + descname = "Fast Soul Vessel Shell" + name = "Anima Fragment" + desc = "Creates a large shell fitted for soul vessels. Adding an active soul vessel to it results in a powerful construct with decent health, notable melee power, \ + and exceptional speed, though taking damage will temporarily slow it down." + invocations = list("Pnyy sbegu...", "...gur fbyqvref-bs Nezbere.") + channel_time = 70 + required_components = list("belligerent_eye" = 1, "vanguard_cogwheel" = 1, "replicant_alloy" = 3) + consumed_components = list("belligerent_eye" = 1, "vanguard_cogwheel" = 1, "replicant_alloy" = 2) + object_path = /obj/structure/clockwork/shell/fragment + creator_message = "You form an anima fragment, a powerful soul vessel receptable." + observer_message = "The slab disgorges a puddle of black metal that expands and forms into a strange shell!" + usage_tip = "Useless without a soul vessel and should not be created without one." + tier = SCRIPTURE_APPLICATION + + + +/datum/clockwork_scripture/create_object/sigil_of_accession //Sigil of Accession: Creates a sigil of accession. + descname = "Permenant Conversion Trap" + name = "Sigil of Accession" + desc = "Places a luminous sigil much like a Sigil of Submission, but it will remain even after successfully converting a non-implanted target. \ + It will penetrate mindshield implants once before disappearing." + invocations = list("Qvivavgl, rafynir...", "...nyy jub gerfcnff urer!") + channel_time = 70 + required_components = list("belligerent_eye" = 3, "guvax_capacitor" = 1, "hierophant_ansible" = 1) + consumed_components = list("belligerent_eye" = 2, "guvax_capacitor" = 1, "hierophant_ansible" = 1) + whispered = TRUE + object_path = /obj/effect/clockwork/sigil/submission/accession + prevent_path = /obj/effect/clockwork/sigil/submission + creator_message = "A luminous sigil appears below you. All non-servants to cross it will be enslaved after a brief time if they do not move." + usage_tip = "It will remain after converting a target, unless that target has a mindshield implant, which it will break to convert them, but consume itself in the process." + tier = SCRIPTURE_APPLICATION + one_per_tile = TRUE + + + +/datum/clockwork_scripture/create_object/sigil_of_transmission + descname = "Structure Battery" + name = "Sigil of Transmission" + desc = "Scribes a sigil beneath the invoker which stores power to power clockwork structures." + invocations = list("Qvivavgl...", "punetr gur-znpuvarf!") + channel_time = 70 + required_components = list("vanguard_cogwheel" = 1, "guvax_capacitor" = 1, "hierophant_ansible" = 3) + consumed_components = list("vanguard_cogwheel" = 1, "guvax_capacitor" = 1, "hierophant_ansible" = 2) + whispered = TRUE + object_path = /obj/effect/clockwork/sigil/transmission + creator_message = "A sigil silently appears below you. It will automatically power clockwork structures adjecent to it." + usage_tip = "Can be recharged by using Volt Void while standing on it." + tier = SCRIPTURE_APPLICATION + one_per_tile = TRUE + + + +/datum/clockwork_scripture/create_object/vitality_matrix + descname = "Damage Trap" + name = "Vitality Matrix" + desc = "Scribes a sigil beneath the invoker which drains life from any living non-servants that cross it. Servants that cross it, however, will be healed based on how much it drained from non-servants. \ + Dead servants can be revived by this sigil if it has enough stored vitality." + invocations = list("Qvivavgl...", "fgrny gur've yvsr...", "sbe guv'f furyy!") + channel_time = 70 + required_components = list("belligerent_eye" = 1, "vanguard_cogwheel" = 3, "hierophant_ansible" = 1) + consumed_components = list("belligerent_eye" = 1, "vanguard_cogwheel" = 2, "hierophant_ansible" = 1) + whispered = TRUE + object_path = /obj/effect/clockwork/sigil/vitality + creator_message = "A vitality matrix appears below you. It will drain life from non-servants and heal servants that cross it." + usage_tip = "To revive a servant, the sigil must have 20 vitality plus the target servant's non-oxygen damage. It will still heal dead servants if it lacks the vitality to outright revive them." + tier = SCRIPTURE_APPLICATION + one_per_tile = TRUE + + +/datum/clockwork_scripture/memory_allocation //Memory Allocation: Finds a willing ghost and makes them into a clockwork marauders for the invoker. + descname = "Guardian" + name = "Memory Allocation" + desc = "Allocates part of your consciousness to a Clockwork Marauder, a vigilent fighter similar to the alien holoparasites employed by the Syndicate; It lives within you, able to be \ + called forth by Speaking its True Name or if you become exceptionally low on health.
    \ + Unlike holoparasites, however, it does not transfer the damage it takes to you, instead simply gaining Fatigue as it is attacked. Marauders cannot move too far from their hosts, \ + and will gain Fatigue at an increasing rate as they grow farther away. At maximum Fatigue, the marauder is forced to return to you and will be unable to manifest until its Fatigue is at zero." + invocations = list("Pnyy sbegu...", "Sevtug'f jvyy, gur zvaq znqr fjbeq-naq-fuvryq.") + channel_time = 100 + required_components = list("belligerent_eye" = 1, "vanguard_cogwheel" = 1, "guvax_capacitor" = 3) + consumed_components = list("belligerent_eye" = 1, "vanguard_cogwheel" = 1, "guvax_capacitor" = 2) + usage_tip = "Marauders are useful as personal bodyguards and frontline warriors, although they do little damage." + tier = SCRIPTURE_APPLICATION + +/datum/clockwork_scripture/memory_allocation/check_special_requirements() + for(var/mob/living/simple_animal/hostile/clockwork/marauder/M in living_mob_list) + if(M.host == invoker) + invoker << "You can only house one marauder at a time!" + return 0 + return 1 + +/datum/clockwork_scripture/memory_allocation/scripture_effects() + return create_marauder() + +/datum/clockwork_scripture/memory_allocation/proc/create_marauder() + invoker.visible_message("A yellow tendril appears from [invoker]'s [slab.name] and impales itself in their forehead!", \ + "A tendril flies from [slab] into your forehead. You begin waiting while it painfully rearranges your thought pattern...") + invoker.notransform = TRUE //Vulnerable during the process + slab.busy = "Thought modification in process" + if(!do_after(invoker, 50, target = invoker)) + invoker.visible_message("The tendril, covered in blood, retracts from [invoker]'s head and back into the [slab.name]!", \ + "Total agony overcomes you as the tendril is forced out early!") + invoker.notransform = FALSE + invoker.Stun(5) + invoker.Weaken(5) + invoker.apply_damage(10, BRUTE, "head") + slab.busy = null + return 0 + invoker.notransform = FALSE + slab.busy = null + if(!check_special_requirements()) + return 0 + invoker << "The tendril shivers slightly as it selects a marauder..." + var/list/marauder_candidates = pollCandidates("Do you want to play as the clockwork marauder of [invoker.real_name]?", ROLE_SERVANT_OF_RATVAR, null, FALSE, 100) + if(!check_special_requirements()) + return 0 + if(!marauder_candidates.len) + invoker.visible_message("The tendril retracts from [invoker]'s head, sealing the entry wound as it does so!", \ + "The tendril was unsuccessful! Perhaps you should try again another time.") + return 0 + var/mob/dead/observer/theghost = pick(marauder_candidates) + var/mob/living/simple_animal/hostile/clockwork/marauder/M = new(invoker) + M.key = theghost.key + M.host = invoker + M << M.playstyle_string + M << "Your true name is \"[M.true_name]\". You can change this once by using the Change True Name verb in your Marauder tab." + add_servant_of_ratvar(M, TRUE) + invoker.visible_message("The tendril retracts from [invoker]'s head, sealing the entry wound as it does so!", \ + "The procedure was successful! [M.true_name], a clockwork marauder, has taken up residence in your mind. Communicate with it via the \"Linked Minds\" ability in the \ + Clockwork tab.") + invoker.verbs += /mob/living/proc/talk_with_marauder + return 1 + + + +/datum/clockwork_scripture/create_object/interdiction_lens //Interdiction Lens: Creates a powerful totem that disables radios and cameras and drains power into nearby sigils. + descname = "Structure, Disables Machinery" + name = "Interdiction Lens" + desc = "Creates a clockwork totem that sabotages nearby machinery and funnels drained power into nearby Sigils of Transmission." + invocations = list("Znl guvf gbgrz...", "...fuebhq gur snyfr fhaf!") + channel_time = 80 + required_components = list("belligerent_eye" = 1, "replicant_alloy" = 4, "hierophant_ansible" = 1) + consumed_components = list("belligerent_eye" = 1, "replicant_alloy" = 3, "hierophant_ansible" = 1) + object_path = /obj/structure/clockwork/powered/interdiction_lens + creator_message = "You form an interdiction lens, which disrupts cameras and radios and drains power." + observer_message = "A brass totem rises from the ground, a purple gem appearing in its center!" + invokers_required = 2 + multiple_invokers_used = TRUE + usage_tip = "If it fails to funnel power into a nearby Sigil of Transmission and fails to disable even one thing, it will disable itself for two minutes." + tier = SCRIPTURE_APPLICATION + one_per_tile = TRUE + + + +/datum/clockwork_scripture/create_object/mending_motor //Mending Motor: Creates a prism that will quickly heal mechanical servants/clockwork structures and consume replicant alloy. + descname = "Structure, Repairs Other Structures" + name = "Mending Motor" + desc = "Creates a mechanized prism that will rapidly repair damage to clockwork creatures, converted cyborgs, and clockwork structures. Requires replicant alloy or power to function." + invocations = list("Znl guvf cevfz...", "...zraq bhe qragf naq fpengpurf!") + channel_time = 80 + required_components = list("vanguard_cogwheel" = 4, "guvax_capacitor" = 1, "replicant_alloy" = 1) + consumed_components = list("vanguard_cogwheel" = 3, "guvax_capacitor" = 1, "replicant_alloy" = 1) + object_path = /obj/structure/clockwork/powered/mending_motor/prefilled + creator_message = "You form a mending motor, which will consume power or replicant alloy to mend the wounds of mechanized servants." + observer_message = "An onyx prism forms in midair and sprouts tendrils to support itself!" + invokers_required = 2 + multiple_invokers_used = TRUE + usage_tip = "Powerful healing but power use is very inefficient, and its alloy use is little better." + tier = SCRIPTURE_APPLICATION + one_per_tile = TRUE + + + +/datum/clockwork_scripture/create_object/clockwork_obelisk //Clockwork Obelisk: Creates a powerful obelisk that can be used to broadcast messages or open a gateway to any servant or clockwork obelisk. + descname = "Structure, Teleportation Hub" + name = "Clockwork Obelisk" + desc = "Creates a clockwork obelisk that can broadcast messages over the Hierophant Network or open a Spatial Gateway to any living servant or clockwork obelisk." + invocations = list("Znl guvf boryvfx...", "...gnxr hf gb nyy cynprf!") + channel_time = 80 + required_components = list("vanguard_cogwheel" = 1, "replicant_alloy" = 1, "hierophant_ansible" = 4) + consumed_components = list("vanguard_cogwheel" = 1, "replicant_alloy" = 1, "hierophant_ansible" = 3) + object_path = /obj/structure/clockwork/powered/clockwork_obelisk + creator_message = "You form a clockwork obelisk which can broadcast messages or produce Spatial Gateways." + observer_message = "A brass obelisk appears handing in midair!" + invokers_required = 2 + multiple_invokers_used = TRUE + usage_tip = "Producing a gateway has a high power cost. Gateways to or between clockwork obelisks recieve double duration and uses." + tier = SCRIPTURE_APPLICATION + one_per_tile = TRUE + + + +/datum/clockwork_scripture/create_object/mania_motor //Mania Motor: Creates a powerful obelisk that can be used to broadcast messages or open a gateway to any servant or clockwork obelisk. + descname = "Structure, Area Denial" + name = "Mania Motor" + desc = "Creates a mania motor which will cause brain damage and hallucinations in nearby non-servant humans. It will also try to convert humans directly adjecent to the motor." + invocations = list("Znl guvf genafzvggre...", "...oernx gur jvyy bs nyy jub bccbfr hf!") + channel_time = 80 + required_components = list("guvax_capacitor" = 4, "replicant_alloy" = 1, "hierophant_ansible" = 1) + consumed_components = list("guvax_capacitor" = 3, "replicant_alloy" = 1, "hierophant_ansible" = 1) + object_path = /obj/structure/clockwork/powered/mania_motor + creator_message = "You form a mania motor which will cause brain damage and hallucinations in nearby humans while active." + observer_message = "A two-pronged machine rises from the ground!" + invokers_required = 2 + multiple_invokers_used = TRUE + usage_tip = "Eligible human servants next to the motor will be converted at an additonal power cost. It will also cure hallucinations and brain damage in nearby servants." + tier = SCRIPTURE_APPLICATION + one_per_tile = TRUE + + + +/datum/clockwork_scripture/create_object/tinkerers_daemon //Tinkerer's Daemon: Creates a shell that can be attached to a tinkerer's cache to grant it passive component creation. + descname = "Component Generator" + name = "Tinkerer's Daemon" + desc = "Forms a daemon shell that can be attached to a tinkerer's cache to add new components at a healthy rate. It will only function if it is outnumbered by servants in a ratio of 5:1." + invocations = list("Pbaf'gehpg Ratvar cnegf...", "...gun'g lrg ubyq terngarff!") + channel_time = 80 + required_components = list("belligerent_eye" = 3, "vanguard_cogwheel" = 3, "guvax_capacitor" = 3, "replicant_alloy" = 3, "hierophant_ansible" = 3) + consumed_components = list("belligerent_eye" = 1, "vanguard_cogwheel" = 1, "guvax_capacitor" = 1, "replicant_alloy" = 1, "hierophant_ansible" = 1) + object_path = /obj/item/clockwork/daemon_shell + creator_message = "You form a daemon shell. Attach it to a tinkerer's cache to increase its rate of production." + usage_tip = "Vital to your success!" + tier = SCRIPTURE_APPLICATION + +////////////// +// REVENANT // +////////////// +//Revenant scriptures are different than any others. They are all very powerful, but also very costly and have drawbacks. This might be a very long invocation time or a very high component cost. + +/datum/clockwork_scripture/invoke_nezbere //Invoke Nezbere, the Brass Eidolon: Invokes Nezbere, bolstering the strength of many clockwork items for one minute. + descname = "Structure Buff" + name = "Invoke Nezbere, the Brass Eidolon" + desc = "Taps the limitless power of Nezbere, one of Ratvar's four generals. The restless toil of the Eidolon will empower a wide variety of clockwork apparatus for a full minute - notably, \ + clockwork proselytizers will cost no replicant alloy to use." + invocations = list("V pnyy hcba lbh, Nezbere!!", "Yrg lbhe znpuv'angvbaf ervta ba guvf zvfrenoyr fgng'vba!!", "Yrg lbhe cbjre sybj gueb-htu gur gbbyf bs lbhe znfgre!!") + channel_time = 150 + required_components = list("belligerent_eye" = 3, "vanguard_cogwheel" = 3, "guvax_capacitor" = 3, "replicant_alloy" = 6) + consumed_components = list("belligerent_eye" = 3, "vanguard_cogwheel" = 3, "guvax_capacitor" = 3, "replicant_alloy" = 6) + usage_tip = "Ocular wardens will become empowered, clockwork proselytizers will require no alloy, tinkerer's daemons will produce twice as quickly, \ + and interdiction lenses, mending motors, mania motors, and clockwork obelisks will all require no power." + tier = SCRIPTURE_REVENANT + +/datum/clockwork_scripture/invoke_nezbere/check_special_requirements() + if(!slab.no_cost && clockwork_generals_invoked["nezbere"] > world.time) + invoker << "\"Abg whfg lrg, sevraq. Cngvrapr vf n iveghr.\"\n\ + Nezbere has already been invoked recently! You must wait several minutes before calling upon the Brass Eidolon." + return 0 + if(!slab.no_cost && ratvar_awakens) + invoker << "\"Bhe znfgre vf urer nyernql. Lbh qb abg erdhver zl uryc, sevraq.\"\n\ + Nezbere will not grant his power while Ratvar's dwarfs his own!" + return 0 + return 1 + +/datum/clockwork_scripture/invoke_nezbere/scripture_effects() + var/obj/effect/clockwork/general_marker/nezbere/N = new(get_turf(invoker)) + N.visible_message("\"V urrq lbhe pnyy, punz'cvbaf. Znl lbhe negvs-npgf oevat ehva hcba gur urnguraf gung bccbfr bhe znfgre!\"") + clockwork_generals_invoked["nezbere"] = world.time + CLOCKWORK_GENERAL_COOLDOWN + for(var/obj/structure/clockwork/ocular_warden/W in all_clockwork_objects) //Ocular wardens have increased damage and radius + W.damage_per_tick *= 1.5 + W.sight_range *= 2 + for(var/obj/item/clockwork/clockwork_proselytizer/P in all_clockwork_objects) //Proselytizers no longer require alloy + P.uses_alloy = FALSE + for(var/obj/item/clockwork/tinkerers_daemon/D in all_clockwork_objects) //Daemons produce components twice as quickly + D.production_time *= 0.5 + for(var/obj/structure/clockwork/powered/M in all_clockwork_objects) //Powered clockwork structures no longer need power + M.needs_power = FALSE + spawn(600) + for(var/obj/structure/clockwork/ocular_warden/W in all_clockwork_objects) + W.damage_per_tick = initial(W.damage_per_tick) + W.sight_range = initial(W.sight_range) + for(var/obj/item/clockwork/clockwork_proselytizer/P in all_clockwork_objects) + P.uses_alloy = initial(P.uses_alloy) + for(var/obj/item/clockwork/tinkerers_daemon/D in all_clockwork_objects) + D.production_time = initial(D.production_time) + for(var/obj/structure/clockwork/powered/M in all_clockwork_objects) + M.needs_power = initial(M.needs_power) + return 1 + + + +/datum/clockwork_scripture/invoke_sevtug //Invoke Sevtug, the Formless Pariah: Causes massive global hallucinations, braindamage, confusion, and dizziness to all humans on the same zlevel. + descname = "Global Hallucination" + name = "Invoke Sevtug, the Formless Pariah" + desc = "Taps the limitless power of Sevtug, one of Ratvar's four generals. The mental manipulation ability of the Pariah allows its wielder to cause mass hallucinations and confusion \ + for all non-servant humans on the same z-level as them. The power of this scripture falls off somewhat with distance, and certain things may reduce its effects." + invocations = list("V pnyy hcba lbh, Sevtug!!", "Yrg lbhe cbjre fung-gre gur fnavgl bs gur jrnx-zvaqrq!!", "Yrg lbhe graqevyf ubyq fjnl bire nyy!!") + channel_time = 150 + required_components = list("belligerent_eye" = 3, "vanguard_cogwheel" = 3, "guvax_capacitor" = 6, "hierophant_ansible" = 3) + consumed_components = list("belligerent_eye" = 3, "vanguard_cogwheel" = 3, "guvax_capacitor" = 6, "hierophant_ansible" = 3) + usage_tip = "Causes brain damage, hallucinations, confusion, and dizziness in massive amounts." + tier = SCRIPTURE_REVENANT + var/list/mindbreaksayings = list("\"Bu, terng. V trg gb funggre fbzr zvaqf.\"", "\"Zber zvaqf gb pehfu.\"", \ + "\"Ernyyl, guvf vf nyzbfg obevat.\"", "\"Abar-bs gur'fr zvaqf unir nalguvat vagrerfgvat va gur'z.\"", "\"Znlor V pna vafgvyy n yvggyr ovg bs greebe va guv'f bar.\"", \ + "\"Jung n jnfgr-bs zl cbjre.\"", "\"V'z fher V pbhyq whfg pbageby gur'fr zvaqf vafgrnq, ohg gur'l arire nfx.\"") + +/datum/clockwork_scripture/invoke_sevtug/check_special_requirements() + if(!slab.no_cost && clockwork_generals_invoked["sevtug"] > world.time) + invoker << "\"Vf vg ernyyl fb uneq - rira sbe n fvzcyrgba yvxr lbh - gb tenfc gur pbaprcg bs jnvgvat?\"\n\ + Sevtug has already been invoked recently! You must wait several minutes before calling upon the Formless Pariah." + return 0 + if(!slab.no_cost && ratvar_awakens) + invoker << "\"Qb lbh ernyyl guvax nalguvat V pna qb evtug abj jvyy pbzcner gb Ratvar's cbjre?.\"\n\ + Sevtug will not grant his power while Ratvar's dwarfs his own!" + return 0 + return ..() + +/datum/clockwork_scripture/invoke_sevtug/scripture_effects() + new/obj/effect/clockwork/general_marker/sevtug(get_turf(invoker)) + clockwork_generals_invoked["sevtug"] = world.time + CLOCKWORK_GENERAL_COOLDOWN + var/hum = get_sfx('sound/effects/screech.ogg') //like playsound, same sound for everyone affected + var/turf/T = get_turf(invoker) + for(var/mob/living/carbon/human/H in living_mob_list) + if(H.z == invoker.z && !is_servant_of_ratvar(H)) + var/distance = 0 + distance += get_dist(T, get_turf(H)) + var/messaged = FALSE + var/visualsdistance = max(175 - distance, 15) + var/minordistance = max(125 - distance, 10) + var/majordistance = max(75 - distance, 5) + if(H.null_rod_check()) + visualsdistance = round(visualsdistance * 0.25) + minordistance = round(minordistance * 0.25) + majordistance = round(majordistance * 0.25) + H << "Bu, n ibvq jrncba. Ubj naablvat, V znl nf jryy abg obgure.\n\ + Your holy weapon glows a faint orange in an attempt to defend your mind!" + messaged = TRUE + if(isloyal(H)) + visualsdistance = round(visualsdistance * 0.5) //half effect for shielded targets + minordistance = round(minordistance * 0.5) + majordistance = round(majordistance * 0.5) + if(!messaged) + H << "Bu, ybbx, n zvaqfuvryq. Phgr, V fhccbfr V'yy uhzbe vg." + messaged = TRUE + if(!messaged && prob(visualsdistance)) + H << "[pick(mindbreaksayings)]" + H.playsound_local(T, hum, visualsdistance, 1) + flash_color(H, flash_color="#AF0AAF", flash_time=visualsdistance*10) + H.set_drugginess(visualsdistance + H.druggy) + H.dizziness = minordistance + H.dizziness + H.hallucination = minordistance + H.hallucination + H.confused = majordistance + H.confused + H.setBrainLoss(majordistance + H.getBrainLoss()) + return 1 + + + +/datum/clockwork_scripture/invoke_nzcrentr //Invoke Nzcrentr, the Forgotten Arbiter: Imbues an immense amount of energy into the invoker. After several seconds, everyone nearby will be hit with a devastating chain lightning blast. + descname = "Lightning Blast" + name = "Invoke Nzcrentr, the Forgotten Arbiter" + desc = "Taps the limitless power of Nzcrentr, one of Ratvar's four generals. The immense energy Nzcrentr wields will allow you to imbue a tiny fraction of it into your body. After several \ + seconds, anyone nearby will be struck by a devastating lightning bolt." + invocations = list("V pnyy hcba lbh, Nzcrentr!!", "Yrg lbhe raretl sybj guebhtu zr!!", "Yrg lbhe obhaq-yrff cbjre fung-gre fgnef!!") + channel_time = 150 + required_components = list("belligerent_eye" = 3, "guvax_capacitor" = 3, "replicant_alloy" = 3, "hierophant_ansible" = 6) + consumed_components = list("belligerent_eye" = 3, "guvax_capacitor" = 3, "replicant_alloy" = 3, "hierophant_ansible" = 6) + usage_tip = "Struck targets will also be knocked down for eight seconds." + tier = SCRIPTURE_REVENANT + +/datum/clockwork_scripture/invoke_nzcrentr/check_special_requirements() + if(!slab.no_cost && clockwork_generals_invoked["nzcrentr"] > world.time) + invoker << "\"Gur obff fnlf lbh unir gb jnvg. Url, qb lbh guvax ur jbhyq zvaq vs v xvyyrq lbh? ...Ur jbhyq? Bx.\"\n\ + Nzcrentr has already been invoked recently! You must wait several minutes before calling upon the Forgotten Arbiter." + return 0 + return 1 + +/datum/clockwork_scripture/invoke_nzcrentr/scripture_effects() + new/obj/effect/clockwork/general_marker/nzcrentr(get_turf(invoker)) + clockwork_generals_invoked["nzcrentr"] = world.time + CLOCKWORK_GENERAL_COOLDOWN + invoker.visible_message("[invoker] begins to radiate a blinding light!", \ + "\"Gur obff fnlf vg'f bxnl gb qb guv'f. Qba'g oynzr zr vs lbh qvr sebz vg.\"\n \ + You feel limitless power surging through you!") + playsound(invoker, 'sound/magic/lightning_chargeup.ogg', 100, 0) + animate(invoker, color = list(rgb(255, 255, 255), rgb(255, 255, 255), rgb(255, 255, 255), rgb(0,0,0)), time = 88) //Gradual advancement to extreme brightness + sleep(88) + if(invoker) + invoker.visible_message("Massive bolts of energy emerge from across [invoker]'s body!", \ + "\"V gbyq lbh lbh jbhyqa'g or noyr gb unaqyr vg.\"\n \ + TOO... MUCH! CAN'T... TAKE IT!") + playsound(invoker, 'sound/magic/lightningbolt.ogg', 100, 0) + animate(invoker, color = initial(invoker.color), time = 10) + for(var/mob/living/L in view(7, invoker)) + if(is_servant_of_ratvar(L)) + continue + invoker.Beam(L, icon_state = "nzcrentrs_power", icon = 'icons/effects/beam.dmi', time = 10) + var/randdamage = rand(40, 60) + if(iscarbon(L)) + L.electrocute_act(randdamage, "Nzcrentr's power", 1, randdamage) else - progbar.update(end_time - world.time) - sleep(1) - if(slab) - if(slab.slab_ability && !slab.slab_ability.finished) - slab.slab_ability.remove_ranged_ability() - slab.icon_state = "dread_ipad" - if(invoker) - invoker.update_inv_hands() - return successful //slab doesn't look like a word now. + L.adjustFireLoss(randdamage) + L.visible_message( + "[L] was shocked by Nzcrentr's power!", \ + "You feel a powerful shock coursing through your body!", \ + "You hear a heavy electrical crack." \ + ) + L.Weaken(8) + playsound(L, 'sound/magic/LightningShock.ogg', 50, 1) + return 1 + else + return 0 + + + +/datum/clockwork_scripture/invoke_inathneq //Invoke Inath-Neq, the Resonant Cogwheel: Grants a huge health boost to nearby servants that rapidly decreases to original levels. + descname = "Area Invuln" + name = "Invoke Inath-Neq, the Resonant Cogwheel" + desc = "Taps the limitless power of Inath-Neq, one of Ratvar's four generals. The benevolence of Inath-Neq will grant complete invulnerability to all servants in range for fifteen seconds." + invocations = list("V pnyy hcba lbh, Inath-Neq!!", "Yrg gur Erfbanag Pbtf ghea bapr zber!!", "Tenag zr naq zl nyyvrf gur fgeratgu gb inadhvfu bhe sbrf!!") + channel_time = 150 + required_components = list("vanguard_cogwheel" = 6, "guvax_capacitor" = 3, "replicant_alloy" = 3, "hierophant_ansible" = 3) + consumed_components = list("vanguard_cogwheel" = 6, "guvax_capacitor" = 3, "replicant_alloy" = 3, "hierophant_ansible" = 3) + usage_tip = "Those affected by this scripture are only weak to things that outright destroy bodies, such as bombs or the singularity." + tier = SCRIPTURE_REVENANT + +/datum/clockwork_scripture/invoke_inathneq/check_special_requirements() + if(!slab.no_cost && clockwork_generals_invoked["inath-neq"] > world.time) + invoker << "\"V pnaabg yraq lbh zl nvq lrg, punzcvba. Cyrnfr or pnershy.\"\n\ + Inath-Neq has already been invoked recently! You must wait several minutes before calling upon the Resonant Cogwheel." + return 0 + return 1 + +/datum/clockwork_scripture/invoke_inathneq/scripture_effects() + new/obj/effect/clockwork/general_marker/inathneq(get_turf(invoker)) + clockwork_generals_invoked["inath-neq"] = world.time + CLOCKWORK_GENERAL_COOLDOWN + if(invoker.real_name == "Lucio") + clockwork_say(invoker, rot13("Aww, let's break it DOWN!!")) + var/list/affected_servants = list() + for(var/mob/living/L in range(7, invoker)) + if(!is_servant_of_ratvar(L) || L.stat == DEAD) + continue + L << "\"V yraq lbh zl nvq, punzcvba! Yrg tybel thvqr lbhe oybjf!\"\n\ + Inath-Neq's power flows through you!" + L.color = "#1E8CE1" + L.fully_heal() + L.stun_absorption = TRUE + L.status_flags |= GODMODE + animate(L, color = initial(L.color), time = 150, easing = EASE_IN) + affected_servants += L + sleep(150) + for(var/mob/living/L in affected_servants) + L << "You feel Inath-Neq's power fade from your body." + L.status_flags &= ~GODMODE + L.stun_absorption = FALSE + return 1 + + + +/datum/clockwork_scripture/ark_of_the_clockwork_justiciar //Ark of the Clockwork Justiciar: Creates a Gateway to the Celestial Derelict. + descname = "Summon Ratvar" + name = "Ark of the Clockwork Justiciar" + desc = "Pulls from the power of all of Ratvar's servants and generals to construct a massive machine used to tear apart a rift in spacetime to the Celestial Derelict. This gateway will \ + call forth Ratvar from his exile after some time." + invocations = list("NEZBERE! SEVTUG! NZCRENTR! INATH-NEQ! V PNYY HCBA LBH!!", \ + "GUR GVZR UNF PBZR SBE BHE ZNFGRE GB OERNX GUR PUNVAF BS RKVYR!!", \ + "YRAQ HF LBHE NVQ! RATVAR PBZRF!!") + channel_time = 150 + required_components = list("belligerent_eye" = 10, "vanguard_cogwheel" = 10, "guvax_capacitor" = 10, "replicant_alloy" = 10, "hierophant_ansible" = 10) + consumed_components = list("belligerent_eye" = 10, "vanguard_cogwheel" = 10, "guvax_capacitor" = 10, "replicant_alloy" = 10, "hierophant_ansible" = 10) + invokers_required = 4 + multiple_invokers_used = TRUE + usage_tip = "The gateway is completely vulnerable to attack during its five-minute duration. In addition to preventing shuttle departure, it will periodically give indication of its general \ + position to everyone on the station as well as being loud enough to be heard throughout the entire sector. Defend it with your life!" + tier = SCRIPTURE_JUDGEMENT + +/datum/clockwork_scripture/ark_of_the_clockwork_justiciar/check_special_requirements() + if(!slab.no_cost && ratvar_awakens) + invoker << "\"I am already here, idiot.\"" + return 0 + for(var/obj/structure/clockwork/massive/celestial_gateway/G in all_clockwork_objects) + var/area/gate_area = get_area(G) + invoker << "There is already a gateway at [gate_area.map_name]!" + return 0 + var/area/A = get_area(invoker) + if(!slab.no_cost && (invoker.z != ZLEVEL_STATION || istype(A, /area/shuttle))) + invoker << "You must be on the station to activate the Ark!" + return 0 + if(!slab.no_cost && ticker.mode.clockwork_objective != "gateway") + invoker << "As painful as it is, Ratvar's will is not to be freed!" + return 0 + return 1 + +/datum/clockwork_scripture/ark_of_the_clockwork_justiciar/scripture_effects() + var/turf/T = get_turf(invoker) + new/obj/effect/clockwork/general_marker/nezbere(T) + T.visible_message("\"Ratvar, pbzr sbegu naq fuvar lbhe yvtug npebff guvf ernyz!\"") + playsound(T, 'sound/magic/clockwork/invoke_general.ogg', 20, 0) + sleep(10) + new/obj/effect/clockwork/general_marker/sevtug(T) + T.visible_message("\"Ratvar, pbzr sbegu naq fubj guvf fgngvba lbhe qrpbengvat fxvyyf!\"") + playsound(T, 'sound/magic/clockwork/invoke_general.ogg', 30, 0) + sleep(10) + new/obj/effect/clockwork/general_marker/nzcrentr(T) + T.visible_message("\"Ratvar, pbzr sbegu.\"") + playsound(T, 'sound/magic/clockwork/invoke_general.ogg', 40, 0) + sleep(10) + new/obj/effect/clockwork/general_marker/inathneq(T) + T.visible_message("\"Ratvar, pbzr sbegu naq fubj lbhe freinagf lbhe zrepl!\"") + playsound(T, 'sound/magic/clockwork/invoke_general.ogg', 50, 0) + sleep(10) + new/obj/structure/clockwork/massive/celestial_gateway(T) + playsound(T, 'sound/magic/clockwork/invoke_general.ogg', 100, 0) + var/list/open_turfs = list() + for(var/turf/open/OT in orange(1, T)) + var/list/dense_objects = list() + for(var/obj/O in OT) + if(O.density && !O.CanPass(invoker, OT, 5)) + dense_objects |= O + if(!dense_objects.len) + open_turfs |= OT + if(open_turfs.len) + for(var/mob/living/L in T) + L.forceMove(pick(open_turfs)) //shove living mobs off of the gate's new location + return 1 diff --git a/code/game/gamemodes/clock_cult/clock_scriptures/scripture_applications.dm b/code/game/gamemodes/clock_cult/clock_scriptures/scripture_applications.dm deleted file mode 100644 index 101765c216..0000000000 --- a/code/game/gamemodes/clock_cult/clock_scriptures/scripture_applications.dm +++ /dev/null @@ -1,284 +0,0 @@ -////////////////// -// APPLICATIONS // -////////////////// - -//Sigil of Accession: Creates a sigil of accession, which is like a sigil of submission, but can convert any number of non-implanted targets and up to one implanted target. -/datum/clockwork_scripture/create_object/sigil_of_accession - descname = "Trap, Permenant Conversion" - name = "Sigil of Accession" - desc = "Places a luminous sigil much like a Sigil of Submission, but it will remain even after successfully converting a non-implanted target. \ - It will penetrate mindshield implants once before disappearing." - invocations = list("Divinity, enslave...", "...all who trespass here!") - channel_time = 70 - required_components = list(BELLIGERENT_EYE = 3, GEIS_CAPACITOR = 1, HIEROPHANT_ANSIBLE = 1) - consumed_components = list(BELLIGERENT_EYE = 2, GEIS_CAPACITOR = 1, HIEROPHANT_ANSIBLE = 1) - whispered = TRUE - object_path = /obj/effect/clockwork/sigil/submission/accession - prevent_path = /obj/effect/clockwork/sigil/submission - creator_message = "A luminous sigil appears below you. All non-servants to cross it will be enslaved after a brief time if they do not move." - usage_tip = "It will remain after converting a target, unless that target has a mindshield implant, which it will break to convert them, but consume itself in the process." - tier = SCRIPTURE_APPLICATION - one_per_tile = TRUE - primary_component = BELLIGERENT_EYE - sort_priority = 1 - quickbind = TRUE - quickbind_desc = "Creates a Sigil of Accession, which can convert a mindshielded non-Servant that remains on it." - - -//Vitality Matrix: Creates a sigil which will drain health from nonservants and can use that health to heal or even revive servants. -/datum/clockwork_scripture/create_object/vitality_matrix - descname = "Trap, Damage to Healing" - name = "Vitality Matrix" - desc = "Scribes a sigil beneath the invoker which drains life from any living non-Servants that cross it. Servants that cross it, however, will be healed based on how much it drained from non-Servants. \ - Dead Servants can be revived by this sigil if it has enough stored vitality." - invocations = list("Divinity...", "...steal their life...", "...for these shells!") - channel_time = 70 - required_components = list(BELLIGERENT_EYE = 1, VANGUARD_COGWHEEL = 3, HIEROPHANT_ANSIBLE = 1) - consumed_components = list(BELLIGERENT_EYE = 1, VANGUARD_COGWHEEL = 2, HIEROPHANT_ANSIBLE = 1) - whispered = TRUE - object_path = /obj/effect/clockwork/sigil/vitality - creator_message = "A vitality matrix appears below you. It will drain life from non-Servants and heal Servants that cross it." - usage_tip = "To revive a Servant, the sigil must have 20 vitality plus the target Servant's non-oxygen damage. It will still heal dead Servants if it lacks the vitality to outright revive them." - tier = SCRIPTURE_APPLICATION - one_per_tile = TRUE - primary_component = VANGUARD_COGWHEEL - sort_priority = 2 - quickbind = TRUE - quickbind_desc = "Creates a Vitality Matrix, which drains non-Servants on it to heal Servants that cross it." - - -//Memory Allocation: Finds a willing ghost and makes them into a clockwork marauders for the invoker. -/datum/clockwork_scripture/memory_allocation - descname = "Guardian" - name = "Memory Allocation" - desc = "Allocates part of your consciousness to a Clockwork Marauder, a vigilent fighter that lives within you, able to be \ - called forth by Speaking its True Name or if you become exceptionally low on health.
    \ - It gains Fatigue as it is attacked, weakening it. Marauders cannot move too far from their hosts, \ - and will gain Fatigue at an increasing rate as they grow farther away. At maximum Fatigue, the marauder is forced to return to you and will be unable to manifest until its Fatigue is at zero." - invocations = list("Fright's will...", "...call forth...") - channel_time = 100 - required_components = list(BELLIGERENT_EYE = 1, VANGUARD_COGWHEEL = 1, GEIS_CAPACITOR = 3) - consumed_components = list(BELLIGERENT_EYE = 1, VANGUARD_COGWHEEL = 1, GEIS_CAPACITOR = 2) - usage_tip = "Marauders are useful as personal bodyguards and frontline warriors, although they do little damage." - tier = SCRIPTURE_APPLICATION - primary_component = GEIS_CAPACITOR - sort_priority = 3 - -/datum/clockwork_scripture/memory_allocation/check_special_requirements() - for(var/mob/living/simple_animal/hostile/clockwork/marauder/M in living_mob_list) - if(M.host == invoker) - invoker << "You can only house one marauder at a time!" - return FALSE - return TRUE - -/datum/clockwork_scripture/memory_allocation/scripture_effects() - return create_marauder() - -/datum/clockwork_scripture/memory_allocation/proc/create_marauder() - invoker.visible_message("A yellow tendril appears from [invoker]'s [slab.name] and impales itself in [invoker.p_their()] forehead!", \ - "A tendril flies from [slab] into your forehead. You begin waiting while it painfully rearranges your thought pattern...") - invoker.notransform = TRUE //Vulnerable during the process - slab.busy = "Thought Modification in progress" - if(!do_after(invoker, 50, target = invoker)) - invoker.visible_message("The tendril, covered in blood, retracts from [invoker]'s head and back into the [slab.name]!", \ - "Total agony overcomes you as the tendril is forced out early!") - invoker.notransform = FALSE - invoker.Stun(5) - invoker.Weaken(5) - invoker.apply_damage(10, BRUTE, "head") - slab.busy = null - return FALSE - clockwork_say(invoker, text2ratvar("...the mind made...")) - invoker.notransform = FALSE - slab.busy = "Marauder Selection in progress" - if(!check_special_requirements()) - return FALSE - invoker << "The tendril shivers slightly as it selects a marauder..." - var/list/marauder_candidates = pollCandidates("Do you want to play as the clockwork marauder of [invoker.real_name]?", ROLE_SERVANT_OF_RATVAR, null, FALSE, 100) - if(!check_special_requirements()) - return FALSE - if(!marauder_candidates.len) - invoker.visible_message("The tendril retracts from [invoker]'s head, sealing the entry wound as it does so!", \ - "The tendril was unsuccessful! Perhaps you should try again another time.") - return FALSE - clockwork_say(invoker, text2ratvar("...sword and shield!")) - var/mob/dead/observer/theghost = pick(marauder_candidates) - var/mob/living/simple_animal/hostile/clockwork/marauder/M = new(invoker) - M.key = theghost.key - M.host = invoker - M << M.playstyle_string - M << "Your true name is \"[M.true_name]\". You can change this once by using the Change True Name verb in your Marauder tab." - add_servant_of_ratvar(M, TRUE) - invoker.visible_message("The tendril retracts from [invoker]'s head, sealing the entry wound as it does so!", \ - "The procedure was successful! [M.true_name], a clockwork marauder, has taken up residence in your mind. Communicate with it via the \"Linked Minds\" ability in the \ - Clockwork tab.") - invoker.verbs += /mob/living/proc/talk_with_marauder - return TRUE - - -//Anima Fragment: Creates an empty anima fragment, which produces an anima fragment that moves at extreme speed and does high damage. -/datum/clockwork_scripture/create_object/anima_fragment - descname = "Fast Soul Vessel Shell" - name = "Anima Fragment" - desc = "Creates a large shell fitted for soul vessels. Adding an active soul vessel to it results in a powerful construct with decent health, notable melee power, \ - and exceptional speed, though taking damage will temporarily slow it down." - invocations = list("Call forth...", "...the soldiers of Armorer.") - channel_time = 80 - required_components = list(BELLIGERENT_EYE = 1, VANGUARD_COGWHEEL = 1, REPLICANT_ALLOY = 3) - consumed_components = list(BELLIGERENT_EYE = 1, VANGUARD_COGWHEEL = 1, REPLICANT_ALLOY = 2) - object_path = /obj/structure/destructible/clockwork/shell/fragment - creator_message = "You form an anima fragment, a powerful soul vessel receptable." - observer_message = "The slab disgorges a puddle of black metal that expands and forms into a strange shell!" - usage_tip = "Useless without a soul vessel and should not be created without one." - tier = SCRIPTURE_APPLICATION - primary_component = REPLICANT_ALLOY - sort_priority = 4 - quickbind = TRUE - quickbind_desc = "Creates a Fragment Shell, which produces an Anima Fragment when filled with a Soul Vessel." - - -//Sigil of Transmission: Creates a sigil of transmission that can store power for clockwork structures. -/datum/clockwork_scripture/create_object/sigil_of_transmission - descname = "Structure Battery" - name = "Sigil of Transmission" - desc = "Scribes a sigil beneath the invoker which stores power to power clockwork structures." - invocations = list("Divinity...", "...power our creations!") - channel_time = 70 - required_components = list(VANGUARD_COGWHEEL = 1, GEIS_CAPACITOR = 1, HIEROPHANT_ANSIBLE = 3) - consumed_components = list(VANGUARD_COGWHEEL = 1, GEIS_CAPACITOR = 1, HIEROPHANT_ANSIBLE = 2) - whispered = TRUE - object_path = /obj/effect/clockwork/sigil/transmission - creator_message = "A sigil silently appears below you. It will automatically power clockwork structures adjecent to it." - usage_tip = "Can be recharged by using Volt Void while standing on it." - tier = SCRIPTURE_APPLICATION - one_per_tile = TRUE - primary_component = HIEROPHANT_ANSIBLE - sort_priority = 5 - quickbind = TRUE - quickbind_desc = "Creates a Sigil of Transmission, which stores power for clockwork structures." - - -//Interdiction Lens: Creates a powerful totem that disables radios and cameras and drains power into nearby sigils of transmission. -/datum/clockwork_scripture/create_object/interdiction_lens - descname = "Structure, Disables Machinery" - name = "Interdiction Lens" - desc = "Creates a clockwork totem that sabotages nearby machinery and funnels drained power into nearby Sigils of Transmission or the area's APC." - invocations = list("May this totem...", "...shroud the false suns!") - channel_time = 80 - required_components = list(BELLIGERENT_EYE = 4, REPLICANT_ALLOY = 1, HIEROPHANT_ANSIBLE = 1) - consumed_components = list(BELLIGERENT_EYE = 3, REPLICANT_ALLOY = 1, HIEROPHANT_ANSIBLE = 1) - object_path = /obj/structure/destructible/clockwork/powered/interdiction_lens - creator_message = "You form an interdiction lens, which disrupts cameras and radios and drains power." - observer_message = "A brass totem rises from the ground, a purple gem appearing in its center!" - invokers_required = 2 - multiple_invokers_used = TRUE - usage_tip = "If it fails to funnel power into a nearby Sigil of Transmission or the area's APC and fails to disable even one thing, it will disable itself for two minutes." - tier = SCRIPTURE_APPLICATION - one_per_tile = TRUE - primary_component = BELLIGERENT_EYE - sort_priority = 6 - quickbind = TRUE - quickbind_desc = "Creates an Interdiction Lens, which drains power into nearby Sigils of Transmission." - - -//Mending Motor: Creates a prism that will quickly heal mechanical servants/clockwork structures and consume power or replicant alloy. -/datum/clockwork_scripture/create_object/mending_motor - descname = "Structure, Repairs Other Structures" - name = "Mending Motor" - desc = "Creates a mechanized prism that will rapidly repair damage to clockwork creatures, converted cyborgs, and clockwork structures. Requires replicant alloy or power to function." - invocations = list("May this prism...", "...mend our dents and scratches!") - channel_time = 80 - required_components = list(VANGUARD_COGWHEEL = 4, GEIS_CAPACITOR = 1, REPLICANT_ALLOY = 1) - consumed_components = list(VANGUARD_COGWHEEL = 3, GEIS_CAPACITOR = 1, REPLICANT_ALLOY = 1) - object_path = /obj/structure/destructible/clockwork/powered/mending_motor/prefilled - creator_message = "You form a mending motor, which will consume power or replicant alloy to mend constructs and structures." - observer_message = "An onyx prism forms in midair and sprouts tendrils to support itself!" - invokers_required = 2 - multiple_invokers_used = TRUE - usage_tip = "Powerful healing but power use is very inefficient, and its alloy use is little better." - tier = SCRIPTURE_APPLICATION - one_per_tile = TRUE - primary_component = VANGUARD_COGWHEEL - sort_priority = 7 - quickbind = TRUE - quickbind_desc = "Creates a Mending Motor, which rapidly repairs constructs and structures at a power cost." - - -//Mania Motor: Creates a malevolent transmitter that will broadcast the whispers of Sevtug into the minds of nearby nonservants, causing a variety of mental effects at a power cost. -/datum/clockwork_scripture/create_object/mania_motor - descname = "Structure, Area Denial" - name = "Mania Motor" - desc = "Creates a mania motor which will cause brain damage and hallucinations in nearby non-servant humans. It will also try to convert humans directly adjecent to the motor." - invocations = list("May this transmitter...", "...break the will of all who oppose us!") - channel_time = 80 - required_components = list(GEIS_CAPACITOR = 4, REPLICANT_ALLOY = 1, HIEROPHANT_ANSIBLE = 1) - consumed_components = list(GEIS_CAPACITOR = 3, REPLICANT_ALLOY = 1, HIEROPHANT_ANSIBLE = 1) - object_path = /obj/structure/destructible/clockwork/powered/mania_motor - creator_message = "You form a mania motor which will cause brain damage and hallucinations in nearby humans while active." - observer_message = "A two-pronged machine rises from the ground!" - invokers_required = 2 - multiple_invokers_used = TRUE - usage_tip = "Eligible human servants next to the motor will be converted at an additional power cost. It will also cure hallucinations and brain damage in nearby servants." - tier = SCRIPTURE_APPLICATION - one_per_tile = TRUE - primary_component = GEIS_CAPACITOR - sort_priority = 8 - quickbind = TRUE - quickbind_desc = "Creates a Mania Motor, which can convert adjacent non-Servants with power." - - -//Tinkerer's Daemon: Creates an efficient machine that rapidly produces components at a power cost. -/datum/clockwork_scripture/create_object/tinkerers_daemon - descname = "Structure, Component Generator" - name = "Tinkerer's Daemon" - desc = "Creates a tinkerer's daemon which can rapidly collect components. It will only function if it has sufficient power, is outnumbered by servants by a ratio of 5:1, and there is at least one existing cache." - invocations = list("May this generator...", "...collect Engine parts that yet hold greatness!") - channel_time = 80 - required_components = list(BELLIGERENT_EYE = 1, GEIS_CAPACITOR = 1, REPLICANT_ALLOY = 4) - consumed_components = list(BELLIGERENT_EYE = 1, GEIS_CAPACITOR = 1, REPLICANT_ALLOY = 3) - object_path = /obj/structure/destructible/clockwork/powered/tinkerers_daemon - creator_message = "You form a tinkerer's daemon which can rapidly collect components at a power cost." - invokers_required = 2 - multiple_invokers_used = TRUE - usage_tip = "Vital to your success!" - tier = SCRIPTURE_APPLICATION - one_per_tile = TRUE - primary_component = REPLICANT_ALLOY - sort_priority = 9 - quickbind_desc = "Creates a Tinkerer's Daemon, which can rapidly collect components for power." - -/datum/clockwork_scripture/create_object/tinkerers_daemon/check_special_requirements() - var/servants = 0 - for(var/mob/living/L in living_mob_list) - if(is_servant_of_ratvar(L)) - servants++ - if(servants * 0.2 < clockwork_daemons) - invoker << "\"Daemons are already disabled, making more of them would be a waste.\"" - return FALSE - if(servants * 0.2 < clockwork_daemons+1) - invoker << "\"This daemon would be useless, friend.\"" - return FALSE - return ..() - - -//Clockwork Obelisk: Creates a powerful obelisk that can be used to broadcast messages or open a gateway to any servant or clockwork obelisk at a power cost. -/datum/clockwork_scripture/create_object/clockwork_obelisk - descname = "Structure, Teleportation Hub" - name = "Clockwork Obelisk" - desc = "Creates a clockwork obelisk that can broadcast messages over the Hierophant Network or open a Spatial Gateway to any living servant or clockwork obelisk." - invocations = list("May this obelisk...", "...take us to all places!") - channel_time = 80 - required_components = list(VANGUARD_COGWHEEL = 1, REPLICANT_ALLOY = 1, HIEROPHANT_ANSIBLE = 4) - consumed_components = list(VANGUARD_COGWHEEL = 1, REPLICANT_ALLOY = 1, HIEROPHANT_ANSIBLE = 3) - object_path = /obj/structure/destructible/clockwork/powered/clockwork_obelisk - creator_message = "You form a clockwork obelisk which can broadcast messages or produce Spatial Gateways." - observer_message = "A brass obelisk appears handing in midair!" - invokers_required = 2 - multiple_invokers_used = TRUE - usage_tip = "Producing a gateway has a high power cost. Gateways to or between clockwork obelisks recieve double duration and uses." - tier = SCRIPTURE_APPLICATION - one_per_tile = TRUE - primary_component = HIEROPHANT_ANSIBLE - sort_priority = 10 - quickbind = TRUE - quickbind_desc = "Creates a Clockwork Obelisk, which can send messages or open Spatial Gateways with power." diff --git a/code/game/gamemodes/clock_cult/clock_scriptures/scripture_cyborg.dm b/code/game/gamemodes/clock_cult/clock_scriptures/scripture_cyborg.dm deleted file mode 100644 index b3069969ca..0000000000 --- a/code/game/gamemodes/clock_cult/clock_scriptures/scripture_cyborg.dm +++ /dev/null @@ -1,39 +0,0 @@ -///////////////// -// CYBORG ONLY // -///////////////// - -//Linked Vanguard: grants Vanguard to the invoker and a target -/datum/clockwork_scripture/ranged_ability/linked_vanguard - name = "Linked Vanguard" - invocations = list("Shield us...", "...from darkness!") - channel_time = 40 - required_components = list(VANGUARD_COGWHEEL = 1) - primary_component = VANGUARD_COGWHEEL - quickbind_desc = "Allows you to grant a Servant and yourself stun immunity, as the Vanguard scripture.
    Click your slab to disable." - slab_icon = "vanguard" - ranged_type = /obj/effect/proc_holder/slab/vanguard - ranged_message = "You charge the clockwork slab with defensive strength.\n\ - Left-click a fellow Servant or yourself to grant Vanguard!\n\ - Click your slab to cancel." - timeout_time = 50 - -/datum/clockwork_scripture/ranged_ability/linked_vanguard/check_special_requirements() - if(islist(invoker.stun_absorption) && invoker.stun_absorption["vanguard"] && invoker.stun_absorption["vanguard"]["end_time"] > world.time) - invoker << "You are already shielded by a Vanguard!" - return FALSE - return TRUE - -//Judicial Marker: places a judicial marker at a target location -/datum/clockwork_scripture/ranged_ability/judicial_marker - name = "Judicial Marker" - invocations = list("May heathens...", "...kneel under our force!") - channel_time = 40 - required_components = list(BELLIGERENT_EYE = 1) - primary_component = BELLIGERENT_EYE - quickbind_desc = "Allows you to place a Judicial Marker to stun and damage a target location.
    Click your slab to disable." - slab_icon = "judicial" - ranged_type = /obj/effect/proc_holder/slab/judicial - ranged_message = "You charge the clockwork slab with judicial force.\n\ - Left-click a target to place a Judicial Marker!\n\ - Click your slab to cancel." - timeout_time = 50 diff --git a/code/game/gamemodes/clock_cult/clock_scriptures/scripture_drivers.dm b/code/game/gamemodes/clock_cult/clock_scriptures/scripture_drivers.dm deleted file mode 100644 index d4549b9a87..0000000000 --- a/code/game/gamemodes/clock_cult/clock_scriptures/scripture_drivers.dm +++ /dev/null @@ -1,318 +0,0 @@ -///////////// -// DRIVERS // -///////////// - -//Belligerent: Channeled for up to fifteen times over thirty seconds. Forces non-servants that can hear the chant to walk, doing minor damage. Nar-Sian cultists are burned. -/datum/clockwork_scripture/channeled/belligerent - descname = "Channeled, Area Slowdown" - name = "Belligerent" - desc = "Forces all nearby non-servants to walk rather than run, doing minor damage. Chanted every two seconds for up to thirty seconds." - chant_invocations = list("Punish their blindness!", "Take time, make slow!") - chant_amount = 15 - chant_interval = 20 - channel_time = 20 - required_components = list(BELLIGERENT_EYE = 1) - usage_tip = "Useful for crowd control in a populated area and disrupting mass movement." - tier = SCRIPTURE_DRIVER - primary_component = BELLIGERENT_EYE - sort_priority = 1 - quickbind = TRUE - quickbind_desc = "Forces nearby non-Servants to walk, doing minor damage with each chant.
    Maximum 15 chants." - var/noncultist_damage = 2 //damage per chant to noncultists - var/cultist_damage = 8 //damage per chant to non-walking cultists - -/datum/clockwork_scripture/channeled/belligerent/chant_effects(chant_number) - for(var/mob/living/carbon/C in hearers(7, invoker)) - var/number_legs = C.get_num_legs() - if(!is_servant_of_ratvar(C) && !C.null_rod_check() && number_legs) //you have legs right - C.apply_damage(noncultist_damage * 0.5, BURN, "l_leg") - C.apply_damage(noncultist_damage * 0.5, BURN, "r_leg") - if(C.m_intent != MOVE_INTENT_WALK) - if(!iscultist(C)) - C << "Your leg[number_legs > 1 ? "s shiver":" shivers"] with pain!" - else //Cultists take extra burn damage - C << "Your leg[number_legs > 1 ? "s burn":" burns"] with pain!" - C.apply_damage(cultist_damage * 0.5, BURN, "l_leg") - C.apply_damage(cultist_damage * 0.5, BURN, "r_leg") - C.toggle_move_intent() - - -//Judicial Visor: Creates a judicial visor, which can smite an area. -/datum/clockwork_scripture/create_object/judicial_visor - descname = "Delayed Area Stun Glasses" - name = "Judicial Visor" - desc = "Forms a visor that, when worn, will grant the ability to smite an area, stunning, muting, and damaging the nonfaithful. \ - Cultists of Nar-Sie will be set on fire, though they will be stunned for half the time." - invocations = list("Grant me the flames of Engine!") - channel_time = 10 - required_components = list(BELLIGERENT_EYE = 2) - consumed_components = list(BELLIGERENT_EYE = 1) - whispered = TRUE - object_path = /obj/item/clothing/glasses/judicial_visor - creator_message = "You form a judicial visor, which is capable of smiting the unworthy." - usage_tip = "The visor has a thirty-second cooldown once used, and the marker it creates has a delay of 3 seconds before exploding." - tier = SCRIPTURE_DRIVER - space_allowed = TRUE - primary_component = BELLIGERENT_EYE - sort_priority = 2 - - -//Vanguard: Provides twenty seconds of stun immunity. At the end of the twenty seconds, 25% of all stuns absorbed are applied to the invoker. -/datum/clockwork_scripture/vanguard - descname = "Self Stun Immunity" - name = "Vanguard" - desc = "Provides twenty seconds of stun immunity. At the end of the twenty seconds, the invoker is stunned for the equivalent of 25% of all stuns they absorbed. \ - Excessive absorption will cause unconsciousness." - invocations = list("Shield me...", "...from darkness!") - channel_time = 30 - required_components = list(VANGUARD_COGWHEEL = 1) - usage_tip = "You cannot reactivate Vanguard while still shielded by it." - tier = SCRIPTURE_DRIVER - primary_component = VANGUARD_COGWHEEL - sort_priority = 3 - quickbind = TRUE - quickbind_desc = "Allows you to temporarily absorb stuns. All stuns absorbed will affect you when disabled." - -/datum/clockwork_scripture/vanguard/check_special_requirements() - if(islist(invoker.stun_absorption) && invoker.stun_absorption["vanguard"] && invoker.stun_absorption["vanguard"]["end_time"] > world.time) - invoker << "You are already shielded by a Vanguard!" - return FALSE - return TRUE - -/datum/clockwork_scripture/vanguard/scripture_effects() - invoker.apply_status_effect(STATUS_EFFECT_VANGUARD) - return TRUE - - -//Sentinel's Compromise: Allows the invoker to select a nearby servant and convert their brute and burn damage into half as much toxin damage. -/datum/clockwork_scripture/ranged_ability/sentinels_compromise - descname = "Convert Brute/Burn to Half Toxin" - name = "Sentinel's Compromise" - desc = "Charges your slab with healing power, allowing you to convert all of a target Servant's brute and burn damage to half as much toxin damage." - invocations = list("Mend the wounds of...", "...my inferior flesh.") - channel_time = 30 - required_components = list(VANGUARD_COGWHEEL = 2) - consumed_components = list(VANGUARD_COGWHEEL = 1) - usage_tip = "The Compromise is very fast to invoke, and will remove holy water from the target Servant." - tier = SCRIPTURE_DRIVER - primary_component = VANGUARD_COGWHEEL - sort_priority = 4 - quickbind = TRUE - quickbind_desc = "Allows you to convert a Servant's brute and burn damage to half toxin damage.
    Click your slab to disable." - slab_icon = "compromise" - ranged_type = /obj/effect/proc_holder/slab/compromise - ranged_message = "You charge the clockwork slab with healing power.\n\ - Left-click a fellow Servant or yourself to heal!\n\ - Click your slab to cancel." - - -//Geis: Grants a short-range binding that will immediately start chanting on binding a valid target. -/datum/clockwork_scripture/ranged_ability/geis_prep - descname = "Melee Convert Attack" - name = "Geis" - desc = "Charges your slab with divine energy, allowing you to bind a nearby heretic for conversion. This is very obvious and will make your slab visible in-hand." - invocations = list("Divinity, grant...", "...me strength...", "...to enlighten...", "...the heathen!") - whispered = TRUE - channel_time = 20 - required_components = list(GEIS_CAPACITOR = 1) - usage_tip = "Is melee range and does not penetrate mindshield implants. Much more efficient than a Sigil of Submission at low Servant amounts." - tier = SCRIPTURE_DRIVER - primary_component = GEIS_CAPACITOR - sort_priority = 5 - quickbind = TRUE - quickbind_desc = "Allows you to bind and start converting an adjacent target non-Servant.
    Click your slab to disable." - slab_icon = "geis" - ranged_type = /obj/effect/proc_holder/slab/geis - ranged_message = "You charge the clockwork slab with divine energy.\n\ - Left-click a target within melee range to convert!\n\ - Click your slab to cancel." - timeout_time = 100 - -/datum/clockwork_scripture/ranged_ability/geis_prep/run_scripture() - var/servants = 0 - for(var/mob/living/M in living_mob_list) - if(is_servant_of_ratvar(M) && (ishuman(M) || issilicon(M))) - servants++ - if(servants > SCRIPT_SERVANT_REQ) - whispered = FALSE - servants -= SCRIPT_SERVANT_REQ - channel_time = min(channel_time + servants*3, 50) - return ..() - -//The scripture that does the converting. -/datum/clockwork_scripture/geis - name = "Geis Conversion" - invocations = list("Enlighten this heathen!", "All are insects before Engine!", "Purge all untruths and honor Engine.") - channel_time = 49 - tier = SCRIPTURE_PERIPHERAL - var/mob/living/target - var/obj/structure/destructible/clockwork/geis_binding/binding - -/datum/clockwork_scripture/geis/Destroy() - if(binding && !qdeleted(binding)) - qdel(binding) - return ..() - -/datum/clockwork_scripture/geis/can_recite() - if(!target) - return FALSE - return ..() - -/datum/clockwork_scripture/geis/run_scripture() - var/servants = 0 - for(var/mob/living/M in living_mob_list) - if(is_servant_of_ratvar(M) && (ishuman(M) || issilicon(M))) - servants++ - if(servants > SCRIPT_SERVANT_REQ) - servants -= SCRIPT_SERVANT_REQ - channel_time = min(channel_time + servants*7, 120) - if(target.buckled) - target.buckled.unbuckle_mob(target, TRUE) - binding = new(get_turf(target)) - binding.setDir(target.dir) - binding.buckle_mob(target, TRUE) - return ..() - -/datum/clockwork_scripture/geis/check_special_requirements() - return target && binding && target.buckled == binding && !is_servant_of_ratvar(target) && target.stat != DEAD - -/datum/clockwork_scripture/geis/scripture_effects() - return add_servant_of_ratvar(target) - - -//Taunting Tirade: Channeled for up to five times over thirty seconds. Confuses non-servants that can hear it and allows movement for a brief time after each chant. -/datum/clockwork_scripture/channeled/taunting_tirade - descname = "Channeled, Mobile Area Confusion" - name = "Taunting Tirade" - desc = "Weakens, confuses and dizzies all nearby non-servants with a short invocation, then allows movement for five seconds. Chanted every second for up to thirty seconds." - chant_invocations = list("Hostiles on my back!", "Enemies on my trail!", "Gonna try and shake my tail.", "Bogeys on my six!") - chant_amount = 5 - chant_interval = 10 - required_components = list(GEIS_CAPACITOR = 2) - consumed_components = list(GEIS_CAPACITOR = 1) - usage_tip = "Useful for fleeing attackers, as few will be able to follow someone using this scripture." - tier = SCRIPTURE_DRIVER - primary_component = GEIS_CAPACITOR - sort_priority = 6 - quickbind = TRUE - quickbind_desc = "Weakens, confuses, and dizzies nearby non-servants, then allows some movement.
    Maximum 5 chants." - var/flee_time = 47 //allow fleeing for 5 seconds - var/grace_period = 3 //very short grace period so you don't have to stop immediately - var/datum/progressbar/progbar - -/datum/clockwork_scripture/channeled/taunting_tirade/chant_effects(chant_number) - for(var/mob/living/L in hearers(7, invoker)) - if(!is_servant_of_ratvar(L) && !L.null_rod_check()) - L.confused = min(L.confused + 20, 100) - L.dizziness = min(L.dizziness + 20, 100) - L.Weaken(1) - invoker.visible_message("[invoker] is suddenly covered with a thin layer of dark purple smoke!") - var/invoker_old_color = invoker.color - invoker.color = "#AF0AAF" - animate(invoker, color = invoker_old_color, time = flee_time+grace_period) - addtimer(invoker, "update_atom_colour", flee_time+grace_period) - if(chant_number != chant_amount) //if this is the last chant, we don't have a movement period because the chant is over - var/endtime = world.time + flee_time - var/starttime = world.time - progbar = new(invoker, flee_time, invoker) - progbar.bar.color = "#AF0AAF" - animate(progbar.bar, color = initial(progbar.bar.color), time = flee_time+grace_period) - while(world.time < endtime && invoker && slab && invoker.get_active_held_item() == slab) - sleep(1) - progbar.update(world.time - starttime) - qdel(progbar) - sleep(grace_period) - -/datum/clockwork_scripture/channeled/taunting_tirade/chant_end_effects() - qdel(progbar) - - -//Replicant: Creates a new clockwork slab. -/datum/clockwork_scripture/create_object/replicant - descname = "New Clockwork Slab" - name = "Replicant" - desc = "Creates a new clockwork slab." - invocations = list("Metal, become greater!") - channel_time = 10 - required_components = list(REPLICANT_ALLOY = 1) - whispered = TRUE - object_path = /obj/item/clockwork/slab - creator_message = "You copy a piece of replicant alloy and command it into a new slab." - usage_tip = "This is inefficient as a way to produce components, as the slab produced must be held by someone with no other slabs to produce components." - tier = SCRIPTURE_DRIVER - space_allowed = TRUE - primary_component = REPLICANT_ALLOY - sort_priority = 7 - quickbind = TRUE - quickbind_desc = "Creates a new Clockwork Slab." - - -//Tinkerer's Cache: Creates a tinkerer's cache, allowing global component storage. -/datum/clockwork_scripture/create_object/tinkerers_cache - descname = "Necessary Structure, Shares Components" - name = "Tinkerer's Cache" - desc = "Forms a cache that can store an infinite amount of components. All caches are linked and will provide components to slabs." - invocations = list("Constructing...", "...a cache!") - channel_time = 50 - required_components = list(BELLIGERENT_EYE = 0, VANGUARD_COGWHEEL = 0, GEIS_CAPACITOR = 0, REPLICANT_ALLOY = 2, HIEROPHANT_ANSIBLE = 0) - consumed_components = list(BELLIGERENT_EYE = 0, VANGUARD_COGWHEEL = 0, GEIS_CAPACITOR = 0, REPLICANT_ALLOY = 1, HIEROPHANT_ANSIBLE = 0) - object_path = /obj/structure/destructible/clockwork/cache - creator_message = "You form a tinkerer's cache, which is capable of storing components, which will automatically be used by slabs." - observer_message = "A hollow brass spire rises and begins to blaze!" - usage_tip = "Slabs will draw components from the global cache after the slab's own repositories, making caches very efficient." - tier = SCRIPTURE_DRIVER - one_per_tile = TRUE - primary_component = REPLICANT_ALLOY - sort_priority = 8 - quickbind = TRUE - quickbind_desc = "Creates a Tinkerer's Cache, which stores components globally for slab access." - -/datum/clockwork_scripture/create_object/tinkerers_cache/creation_update() - var/cache_cost_increase = min(round(clockwork_caches*0.25), 5) - required_components = list(BELLIGERENT_EYE = 0, VANGUARD_COGWHEEL = 0, GEIS_CAPACITOR = 0, REPLICANT_ALLOY = 2, HIEROPHANT_ANSIBLE = 0) - consumed_components = list(BELLIGERENT_EYE = 0, VANGUARD_COGWHEEL = 0, GEIS_CAPACITOR = 0, REPLICANT_ALLOY = 1, HIEROPHANT_ANSIBLE = 0) - for(var/i in required_components) - if(i != REPLICANT_ALLOY) - required_components[i] += cache_cost_increase - for(var/i in consumed_components) - if(i != REPLICANT_ALLOY) - consumed_components[i] += cache_cost_increase - - -//Wraith Spectacles: Creates a pair of wraith spectacles, which grant xray vision but damage vision slowly. -/datum/clockwork_scripture/create_object/wraith_spectacles - descname = "Xray Vision Glasses" - name = "Wraith Spectacles" - desc = "Fabricates a pair of glasses that provides true sight but quickly damage vision, eventually causing blindness if worn for too long." - invocations = list("Show the truth of this world to me!") - channel_time = 10 - required_components = list(HIEROPHANT_ANSIBLE = 1) - whispered = TRUE - object_path = /obj/item/clothing/glasses/wraith_spectacles - creator_message = "You form a pair of wraith spectacles, which will grant true sight when worn." - usage_tip = "\"True sight\" means that you are able to see through walls and in darkness." - tier = SCRIPTURE_DRIVER - space_allowed = TRUE - primary_component = HIEROPHANT_ANSIBLE - sort_priority = 9 - - -//Sigil of Transgression: Creates a sigil of transgression, which stuns the first nonservant to cross it. -/datum/clockwork_scripture/create_object/sigil_of_transgression - descname = "Trap, Stunning" - name = "Sigil of Transgression" - desc = "Wards a tile with a sigil. The next person to cross the sigil will be smitten and unable to move. Nar-Sian cultists are stunned altogether." - invocations = list("Divinity, dazzle...", "...those who tresspass here!") - channel_time = 50 - required_components = list(HIEROPHANT_ANSIBLE = 2) - consumed_components = list(HIEROPHANT_ANSIBLE = 1) - whispered = TRUE - object_path = /obj/effect/clockwork/sigil/transgression - creator_message = "A sigil silently appears below you. The next non-servant to cross it will be immobilized." - usage_tip = "The sigil, while fairly powerful in its stun, does not induce muteness in its victim." - tier = SCRIPTURE_DRIVER - one_per_tile = TRUE - primary_component = HIEROPHANT_ANSIBLE - sort_priority = 10 - quickbind = TRUE - quickbind_desc = "Creates a Sigil of Transgression, which will stun the first non-Servant to cross it." diff --git a/code/game/gamemodes/clock_cult/clock_scriptures/scripture_judgement.dm b/code/game/gamemodes/clock_cult/clock_scriptures/scripture_judgement.dm deleted file mode 100644 index 974c9aca7a..0000000000 --- a/code/game/gamemodes/clock_cult/clock_scriptures/scripture_judgement.dm +++ /dev/null @@ -1,58 +0,0 @@ -/////////////// -// JUDGEMENT // -/////////////// - -//Ark of the Clockwork Justiciar: Creates a Gateway to the Celestial Derelict, either summoning ratvar or proselytizing everything. -/datum/clockwork_scripture/ark_of_the_clockwork_justiciar - descname = "Structure, Win Condition" - name = "Ark of the Clockwork Justiciar" - desc = "Tears apart a rift in spacetime to Reebe, the Celestial Derelict.\n\ - This gateway will either call forth Ratvar from his exile if that is the task He has set you, or proselytize the entire station if it is not." - invocations = list("ARMORER! FRIGHT! AMPERAGE! VANGUARD! I CALL UPON YOU!!", \ - "THE TIME HAS COME FOR OUR MASTER TO BREAK THE CHAINS OF EXILE!!", \ - "LEND US YOUR AID! ENGINE COMES!!") - channel_time = 150 - required_components = list(BELLIGERENT_EYE = 10, VANGUARD_COGWHEEL = 10, GEIS_CAPACITOR = 10, REPLICANT_ALLOY = 10, HIEROPHANT_ANSIBLE = 10) - consumed_components = list(BELLIGERENT_EYE = 10, VANGUARD_COGWHEEL = 10, GEIS_CAPACITOR = 10, REPLICANT_ALLOY = 10, HIEROPHANT_ANSIBLE = 10) - invokers_required = 5 - multiple_invokers_used = TRUE - usage_tip = "The gateway is completely vulnerable to attack during its five-minute duration. It will periodically give indication of its general position to everyone on the station \ - as well as being loud enough to be heard throughout the entire sector. Defend it with your life!" - tier = SCRIPTURE_JUDGEMENT - sort_priority = 1 - -/datum/clockwork_scripture/ark_of_the_clockwork_justiciar/New() - if(ticker && ticker.mode && ticker.mode.clockwork_objective != CLOCKCULT_GATEWAY) - invocations = list("ARMORER! FRIGHT! AMPERAGE! VANGUARD! I CALL UPON YOU!!", \ - "THIS STATION WILL BE A BEACON OF HOPE IN THE DARKNESS OF SPACE!!", \ - "HELP US MAKE THIS SHOW ENGINE'S GLORY!!") - ..() - -/datum/clockwork_scripture/ark_of_the_clockwork_justiciar/check_special_requirements() - if(!slab.no_cost) - if(ratvar_awakens) - invoker << "\"I am already here, idiot.\"" - return FALSE - for(var/obj/structure/destructible/clockwork/massive/celestial_gateway/G in all_clockwork_objects) - var/area/gate_area = get_area(G) - invoker << "There is already a gateway at [gate_area.map_name]!" - return FALSE - var/area/A = get_area(invoker) - var/turf/T = get_turf(invoker) - if(!T || T.z != ZLEVEL_STATION || istype(A, /area/shuttle)) - invoker << "You must be on the station to activate the Ark!" - return FALSE - if(clockwork_gateway_activated) - if(ticker && ticker.mode && ticker.mode.clockwork_objective != CLOCKCULT_GATEWAY) - invoker << "\"Look upon his works. Is it not glorious?\"" - else - invoker << "Ratvar's recent banishment renders him too weak to be wrung forth from Reebe!" - return FALSE - return TRUE - -/datum/clockwork_scripture/ark_of_the_clockwork_justiciar/scripture_effects() - var/turf/T = get_turf(invoker) - if(T) - new/obj/structure/destructible/clockwork/massive/celestial_gateway(T) - return TRUE - return FALSE diff --git a/code/game/gamemodes/clock_cult/clock_scriptures/scripture_revenant.dm b/code/game/gamemodes/clock_cult/clock_scriptures/scripture_revenant.dm deleted file mode 100644 index d70b463704..0000000000 --- a/code/game/gamemodes/clock_cult/clock_scriptures/scripture_revenant.dm +++ /dev/null @@ -1,229 +0,0 @@ -////////////// -// REVENANT // -////////////// - -//Invoke Inath-neq, the Resonant Cogwheel: Grants invulnerability and stun immunity to everyone nearby for 15 seconds. -/datum/clockwork_scripture/invoke_inathneq - descname = "Area Invulnerability" - name = "Invoke Inath-neq, the Resonant Cogwheel" - desc = "Taps the limitless power of Inath-neq, one of Ratvar's four generals. The benevolence of Inath-Neq will grant complete invulnerability to all servants in range for fifteen seconds." - invocations = list("I call upon you, Vanguard!!", "Let the Resonant Cogs turn once more!!", "Grant me and my allies the strength to vanquish our foes!!") - channel_time = 150 - required_components = list(VANGUARD_COGWHEEL = 6, GEIS_CAPACITOR = 3, REPLICANT_ALLOY = 3, HIEROPHANT_ANSIBLE = 3) - consumed_components = list(VANGUARD_COGWHEEL = 6, GEIS_CAPACITOR = 3, REPLICANT_ALLOY = 3, HIEROPHANT_ANSIBLE = 3) - usage_tip = "Those affected by this scripture are only weak to things that outright destroy bodies, such as bombs or the singularity." - tier = SCRIPTURE_REVENANT - primary_component = VANGUARD_COGWHEEL - sort_priority = 2 - -/datum/clockwork_scripture/invoke_inathneq/check_special_requirements() - if(!slab.no_cost && clockwork_generals_invoked["inath-neq"] > world.time) - invoker << "\"[text2ratvar("I cannot lend you my aid yet, champion. Please be careful.")]\"\n\ - Inath-neq has already been invoked recently! You must wait several minutes before calling upon the Resonant Cogwheel." - return FALSE - return TRUE - -/datum/clockwork_scripture/invoke_inathneq/scripture_effects() - new/obj/effect/clockwork/general_marker/inathneq(get_turf(invoker)) - hierophant_message("[text2ratvar("Vanguard: \"I lend you my aid, champions! Let glory guide your blows!")]\"", FALSE, invoker) - clockwork_generals_invoked["inath-neq"] = world.time + CLOCKWORK_GENERAL_COOLDOWN - playsound(invoker, 'sound/magic/clockwork/invoke_general.ogg', 50, 0) - if(invoker.real_name == "Lucio") - clockwork_say(invoker, text2ratvar("Aww, let's break it DOWN!!")) - for(var/mob/living/L in range(7, invoker)) - if(!is_servant_of_ratvar(L) || L.stat == DEAD) - continue - L.apply_status_effect(STATUS_EFFECT_INATHNEQS_ENDOWMENT) - return TRUE - - -//Invoke Sevtug, the Formless Pariah: Causes massive global hallucinations, braindamage, confusion, and dizziness to all humans on the same zlevel. -/datum/clockwork_scripture/invoke_sevtug - descname = "Global Hallucination" - name = "Invoke Sevtug, the Formless Pariah" - desc = "Taps the limitless power of Sevtug, one of Ratvar's four generals. The mental manipulation ability of the Pariah allows its wielder to cause mass hallucinations and confusion \ - for all non-servant humans on the same z-level as them. The power of this scripture falls off somewhat with distance, and certain things may reduce its effects." - invocations = list("I call upon you, Fright!!", "Let your power shatter the sanity of the weak-minded!!", "Let your tendrils hold sway over all!!") - channel_time = 150 - required_components = list(BELLIGERENT_EYE = 3, VANGUARD_COGWHEEL = 3, GEIS_CAPACITOR = 6, HIEROPHANT_ANSIBLE = 3) - consumed_components = list(BELLIGERENT_EYE = 3, VANGUARD_COGWHEEL = 3, GEIS_CAPACITOR = 6, HIEROPHANT_ANSIBLE = 3) - usage_tip = "Causes brain damage, hallucinations, confusion, and dizziness in massive amounts." - tier = SCRIPTURE_REVENANT - sort_priority = 3 - primary_component = GEIS_CAPACITOR - invokers_required = 3 - multiple_invokers_used = TRUE - var/static/list/mindbreaksayings = list("\"Oh, great. I get to shatter some minds.\"", "\"More minds to crush.\"", \ - "\"Really, this is almost boring.\"", "\"None of these minds have anything interesting in them.\"", "\"Maybe I can instill a little bit of terror in this one.\"", \ - "\"What a waste of my power.\"", "\"I'm sure I could just control these minds instead, but they never ask.\"") - -/datum/clockwork_scripture/invoke_sevtug/check_special_requirements() - if(!slab.no_cost && clockwork_generals_invoked["sevtug"] > world.time) - invoker << "\"[text2ratvar("Is it really so hard - even for a simpleton like you - to grasp the concept of waiting?")]\"\n\ - Sevtug has already been invoked recently! You must wait several minutes before calling upon the Formless Pariah." - return FALSE - if(!slab.no_cost && ratvar_awakens) - invoker << "\"[text2ratvar("Do you really think anything I can do right now will compare to Engine's power?")]\"\n\ - Sevtug will not grant his power while Ratvar's dwarfs his own!" - return FALSE - return TRUE - -/datum/clockwork_scripture/invoke_sevtug/scripture_effects() - new/obj/effect/clockwork/general_marker/sevtug(get_turf(invoker)) - hierophant_message("[text2ratvar("Fright: \"I heed your call, idiots. Get going and use this chance while it lasts!")]\"", FALSE, invoker) - clockwork_generals_invoked["sevtug"] = world.time + CLOCKWORK_GENERAL_COOLDOWN - playsound(invoker, 'sound/magic/clockwork/invoke_general.ogg', 50, 0) - var/hum = get_sfx('sound/effects/screech.ogg') //like playsound, same sound for everyone affected - var/turf/T = get_turf(invoker) - for(var/mob/living/carbon/human/H in living_mob_list) - if(H.z == invoker.z && !is_servant_of_ratvar(H)) - var/distance = 0 - distance += get_dist(T, get_turf(H)) - var/visualsdistance = max(150 - distance, 5) - var/minordistance = max(200 - distance*2, 5) - var/majordistance = max(150 - distance*3, 5) - if(H.null_rod_check()) - H << "[text2ratvar("Oh, a void weapon. How annoying, I may as well not bother.")]\n\ - Your holy weapon glows a faint orange, defending your mind!" - continue - else if(H.isloyal()) - visualsdistance = round(visualsdistance * 0.5) //half effect for shielded targets - minordistance = round(minordistance * 0.5) - majordistance = round(majordistance * 0.5) - H << "[text2ratvar("Oh, look, a mindshield. Cute, I suppose I'll humor it.")]" - else if(prob(visualsdistance)) - H << "[text2ratvar(pick(mindbreaksayings))]" - H.playsound_local(T, hum, visualsdistance, 1) - flash_color(H, flash_color="#AF0AAF", flash_time=visualsdistance*10) - H.dizziness = minordistance + H.dizziness - H.hallucination = minordistance + H.hallucination - H.confused = majordistance + H.confused - H.setBrainLoss(majordistance + H.getBrainLoss()) - return TRUE - - -//Invoke Nezbere, the Brass Eidolon: Invokes Nezbere, bolstering the strength of many clockwork items for one minute. -/datum/clockwork_scripture/invoke_nezbere - descname = "Global Structure Buff" - name = "Invoke Nezbere, the Brass Eidolon" - desc = "Taps the limitless power of Nezbere, one of Ratvar's four generals. The restless toil of the Eidolon will empower a wide variety of clockwork apparatus for a full minute - notably, \ - clockwork proselytizers will cost no replicant alloy to use." - invocations = list("I call upon you, Armorer!!", "Let your machinations reign on this miserable station!!", "Let your power flow through the tools of your master!!") - channel_time = 150 - required_components = list(BELLIGERENT_EYE = 3, VANGUARD_COGWHEEL = 3, GEIS_CAPACITOR = 3, REPLICANT_ALLOY = 6) - consumed_components = list(BELLIGERENT_EYE = 3, VANGUARD_COGWHEEL = 3, GEIS_CAPACITOR = 3, REPLICANT_ALLOY = 6) - usage_tip = "Ocular wardens will become empowered, clockwork proselytizers will require no alloy, tinkerer's daemons will produce twice as quickly, \ - and interdiction lenses, mending motors, mania motors, tinkerer's daemons, and clockwork obelisks will all require no power." - tier = SCRIPTURE_REVENANT - primary_component = REPLICANT_ALLOY - sort_priority = 4 - invokers_required = 3 - multiple_invokers_used = TRUE - -/datum/clockwork_scripture/invoke_nezbere/check_special_requirements() - if(!slab.no_cost && clockwork_generals_invoked["nezbere"] > world.time) - invoker << "\"[text2ratvar("Not just yet, friend. Patience is a virtue.")]\"\n\ - Nezbere has already been invoked recently! You must wait several minutes before calling upon the Brass Eidolon." - return FALSE - if(!slab.no_cost && ratvar_awakens) - invoker << "\"[text2ratvar("Our master is here already. You do not require my help, friend.")]\"\n\ - Nezbere will not grant his power while Ratvar's dwarfs his own!" - return FALSE - return TRUE - -/datum/clockwork_scripture/invoke_nezbere/scripture_effects() - new/obj/effect/clockwork/general_marker/nezbere(get_turf(invoker)) - hierophant_message("[text2ratvar("Armorer: \"I heed your call, champions. May your artifacts bring ruin upon the heathens that oppose our master!")]\"", FALSE, invoker) - clockwork_generals_invoked["nezbere"] = world.time + CLOCKWORK_GENERAL_COOLDOWN - playsound(invoker, 'sound/magic/clockwork/invoke_general.ogg', 50, 0) - for(var/obj/structure/destructible/clockwork/ocular_warden/W in all_clockwork_objects) //Ocular wardens have increased damage and radius - W.damage_per_tick = 5 - W.sight_range = 5 - for(var/obj/item/clockwork/clockwork_proselytizer/P in all_clockwork_objects) //Proselytizers no longer require alloy - P.uses_alloy = FALSE - for(var/obj/structure/destructible/clockwork/powered/M in all_clockwork_objects) //Powered clockwork structures no longer need power - M.needs_power = FALSE - if(istype(M, /obj/structure/destructible/clockwork/powered/tinkerers_daemon)) //Daemons produce components twice as quickly - var/obj/structure/destructible/clockwork/powered/tinkerers_daemon/D = M - D.production_time = 0 - D.production_cooldown *= 0.5 - spawn(600) - for(var/obj/structure/destructible/clockwork/ocular_warden/W in all_clockwork_objects) - if(W.damage_per_tick == 5) - W.damage_per_tick = initial(W.damage_per_tick) - if(W.sight_range == 5) - W.sight_range = initial(W.sight_range) - for(var/obj/item/clockwork/clockwork_proselytizer/P in all_clockwork_objects) - P.uses_alloy = initial(P.uses_alloy) - for(var/obj/structure/destructible/clockwork/powered/M in all_clockwork_objects) - M.needs_power = initial(M.needs_power) - if(istype(M, /obj/structure/destructible/clockwork/powered/tinkerers_daemon)) - var/obj/structure/destructible/clockwork/powered/tinkerers_daemon/D = M - D.production_cooldown = initial(D.production_cooldown) - return TRUE - - -//Invoke Nzcrentr, the Eternal Thunderbolt: Imbues an immense amount of energy into the invoker. After several seconds, everyone near the invoker will be hit with a devastating lightning blast. -/datum/clockwork_scripture/invoke_nzcrentr - descname = "Area Lightning Blast" - name = "Invoke Nzcrentr, the Eternal Thunderbolt" - desc = "Taps the limitless power of Nzcrentr, one of Ratvar's four generals. The immense energy Nzcrentr wields will allow you to imbue a tiny fraction of it into your body. After several \ - seconds, anyone near you will be struck by a devastating lightning bolt." - invocations = list("I call upon you, Amperage!!", "Let your energy flow through me!!", "Let your boundless power shatter stars!!") - channel_time = 150 - required_components = list(BELLIGERENT_EYE = 3, GEIS_CAPACITOR = 3, REPLICANT_ALLOY = 3, HIEROPHANT_ANSIBLE = 6) - consumed_components = list(BELLIGERENT_EYE = 3, GEIS_CAPACITOR = 3, REPLICANT_ALLOY = 3, HIEROPHANT_ANSIBLE = 6) - usage_tip = "Struck targets will also be knocked down for about sixteen seconds." - tier = SCRIPTURE_REVENANT - primary_component = HIEROPHANT_ANSIBLE - sort_priority = 5 - -/datum/clockwork_scripture/invoke_nzcrentr/check_special_requirements() - if(!slab.no_cost && clockwork_generals_invoked["nzcrentr"] > world.time) - invoker << "\"[text2ratvar("The boss says you have to wait. Hey, do you think he would mind if I killed you? ...He would? Ok.")]\"\n\ - Nzcrentr has already been invoked recently! You must wait several minutes before calling upon the Eternal Thunderbolt." - return FALSE - return TRUE - -/datum/clockwork_scripture/invoke_nzcrentr/scripture_effects() - new/obj/effect/clockwork/general_marker/nzcrentr(get_turf(invoker)) - clockwork_generals_invoked["nzcrentr"] = world.time + CLOCKWORK_GENERAL_COOLDOWN - hierophant_message("[text2ratvar("Amperage: \"[invoker.real_name] has called forth my power. Hope [invoker.p_they()] [invoker.p_do()] not shatter under it!")]\"", FALSE, invoker) - invoker.visible_message("[invoker] begins to radiate a blinding light!", \ - "\"[text2ratvar("The boss says it's okay to do this. Don't blame me if you die from it.")]\"\n \ - You feel limitless power surging through you!") - playsound(invoker, 'sound/magic/clockwork/invoke_general.ogg', 50, 0) - playsound(invoker, 'sound/magic/lightning_chargeup.ogg', 100, 0) - var/oldcolor = invoker.color - animate(invoker, color = list(rgb(255, 255, 255), rgb(255, 255, 255), rgb(255, 255, 255), rgb(0,0,0)), time = 88) //Gradual advancement to extreme brightness - sleep(88) - if(invoker) - invoker.visible_message("Massive bolts of energy emerge from across [invoker]'s body!", \ - "\"[text2ratvar("I told you you wouldn't be able to handle it.")]\"\n \ - TOO... MUCH! CAN'T... TAKE IT!") - playsound(invoker, 'sound/magic/lightningbolt.ogg', 100, 0) - if(invoker.stat == CONSCIOUS) - animate(invoker, color = oldcolor, time = 10) - addtimer(invoker, "update_atom_colour", 10) - for(var/mob/living/L in view(7, invoker)) - if(is_servant_of_ratvar(L) || L.null_rod_check()) - continue - invoker.Beam(L, icon_state = "nzcrentrs_power", time = 10) - var/randdamage = rand(40, 60) - if(iscarbon(L)) - L.electrocute_act(randdamage, "Nzcrentr's power", 1, randdamage) - else - L.adjustFireLoss(randdamage) - L.visible_message( - "[L] was shocked by Nzcrentr's power!", \ - "You feel a powerful shock coursing through your body!", \ - "You hear a heavy electrical crack." \ - ) - L.Weaken(8) - playsound(L, 'sound/magic/LightningShock.ogg', 50, 1) - else - playsound(invoker, 'sound/magic/Disintegrate.ogg', 50, 1) - invoker.gib() - return TRUE - else - return FALSE diff --git a/code/game/gamemodes/clock_cult/clock_scriptures/scripture_scripts.dm b/code/game/gamemodes/clock_cult/clock_scriptures/scripture_scripts.dm deleted file mode 100644 index 4e90d5f659..0000000000 --- a/code/game/gamemodes/clock_cult/clock_scriptures/scripture_scripts.dm +++ /dev/null @@ -1,329 +0,0 @@ -///////////// -// SCRIPTS // -///////////// - -//Ocular Warden: Creates an ocular warden, which defends a small area near it. -/datum/clockwork_scripture/create_object/ocular_warden - descname = "Structure, Turret" - name = "Ocular Warden" - desc = "Forms an automatic short-range turret that deals low sustained damage to the unenlightened in its range." - invocations = list("Guardians...", "...of the Engine...", "...defend us!") - channel_time = 120 - required_components = list(BELLIGERENT_EYE = 2, REPLICANT_ALLOY = 1) - consumed_components = list(BELLIGERENT_EYE = 1, REPLICANT_ALLOY = 1) - object_path = /obj/structure/destructible/clockwork/ocular_warden - creator_message = "You form an ocular warden, which will focus its searing gaze upon nearby unenlightened." - observer_message = "A brass eye takes shape and slowly rises into the air, its red iris glaring!" - usage_tip = "Although powerful, the warden is very fragile and should optimally be placed behind barricades." - tier = SCRIPTURE_SCRIPT - one_per_tile = TRUE - space_allowed = TRUE - primary_component = BELLIGERENT_EYE - sort_priority = 1 - quickbind = TRUE - quickbind_desc = "Creates an Ocular Warden, which will automatically attack nearby unrestrained non-Servants that can see it." - -/datum/clockwork_scripture/create_object/ocular_warden/check_special_requirements() - for(var/obj/structure/destructible/clockwork/ocular_warden/W in range(3, invoker)) - invoker << "You sense another ocular warden too near this location. Placing another this close would cause them to fight." //fluff message - return FALSE - return ..() - - -//Cogscarab: Creates an empty cogscarab shell, which produces a cogscarab dedicated to maintaining and defending the cult. -/datum/clockwork_scripture/create_object/cogscarab - descname = "Constructor Soul Vessel Shell" - name = "Cogscarab" - desc = "Creates a small shell fitted for soul vessels. Adding an active soul vessel to it results in a small construct with tools and an inbuilt proselytizer." - invocations = list("Call forth...", "...the workers of Armorer.") - channel_time = 60 - required_components = list(BELLIGERENT_EYE = 2, HIEROPHANT_ANSIBLE = 1) - consumed_components = list(BELLIGERENT_EYE = 1, HIEROPHANT_ANSIBLE = 1) - object_path = /obj/structure/destructible/clockwork/shell/cogscarab - creator_message = "You form a cogscarab, a constructor soul vessel receptable." - observer_message = "The slab disgorges a puddle of black metal that contracts and forms into a strange shell!" - usage_tip = "Useless without a soul vessel and should not be created without one." - tier = SCRIPTURE_SCRIPT - primary_component = BELLIGERENT_EYE - sort_priority = 2 - quickbind = TRUE - quickbind_desc = "Creates a Cogscarab Shell, which produces a Cogscarab when filled with a Soul Vessel." - - -//Fellowship Armory: Arms the invoker and nearby servants with Ratvarian armor. -/datum/clockwork_scripture/fellowship_armory - descname = "Area Servant Armor" - name = "Fellowship Armory" - desc = "Equips the invoker and any nearby servants with Ratvarian armor. This armor provides high melee resistance but a weakness to lasers. \ - It grows faster to invoke with more nearby servants." - invocations = list("Shield us...", "...with the...", "... fragments of Engine!") - channel_time = 100 - required_components = list(VANGUARD_COGWHEEL = 2, REPLICANT_ALLOY = 1) - consumed_components = list(VANGUARD_COGWHEEL = 1, REPLICANT_ALLOY = 1) - usage_tip = "Before using, advise adjacent allies to remove their helmets, external suits, gloves, and shoes." - tier = SCRIPTURE_SCRIPT - multiple_invokers_used = TRUE - multiple_invokers_optional = TRUE - primary_component = VANGUARD_COGWHEEL - sort_priority = 4 - quickbind = TRUE - quickbind_desc = "Attempts to armor all nearby Servants with powerful Ratvarian armor." - -/datum/clockwork_scripture/fellowship_armory/run_scripture() - for(var/mob/living/L in orange(1, get_turf(invoker))) - if(is_servant_of_ratvar(L) && L.can_speak_vocal()) - channel_time = max(channel_time - 10, 0) - return ..() - -/datum/clockwork_scripture/fellowship_armory/scripture_effects() - var/affected = 0 - for(var/mob/living/L in range(1, invoker)) - if(!is_servant_of_ratvar(L)) - continue - var/do_message = 0 - do_message += L.equip_to_slot_or_del(new/obj/item/clothing/head/helmet/clockwork(null), slot_head) - do_message += L.equip_to_slot_or_del(new/obj/item/clothing/suit/armor/clockwork(null), slot_wear_suit) - do_message += L.equip_to_slot_or_del(new/obj/item/clothing/gloves/clockwork(null), slot_gloves) - do_message += L.equip_to_slot_or_del(new/obj/item/clothing/shoes/clockwork(null), slot_shoes) - if(do_message) - L.visible_message("Strange armor appears on [L]!", "A bright shimmer runs down your body, equipping you with Ratvarian armor.") - playsound(L, 'sound/magic/clockwork/fellowship_armory.ogg', 15*do_message, 1) //get sound loudness based on how much we equipped - affected++ - return affected - - -//Sigil of Submission: Creates a sigil of submission, which converts one heretic above it after a delay. -/datum/clockwork_scripture/create_object/sigil_of_submission - descname = "Trap, Conversion" - name = "Sigil of Submission" - desc = "Places a luminous sigil that will enslave any valid beings standing on it after a time." - invocations = list("Divinity, enlighten...", "...those who trespass here!") - channel_time = 60 - required_components = list(BELLIGERENT_EYE = 1, GEIS_CAPACITOR = 2) - consumed_components = list(BELLIGERENT_EYE = 1, GEIS_CAPACITOR = 1) - whispered = TRUE - object_path = /obj/effect/clockwork/sigil/submission - creator_message = "A luminous sigil appears below you. The next non-servant to cross it will be enslaved after a brief time if they do not move." - usage_tip = "This is not a primary conversion method - use Geis for that. It is advantageous as a trap, however, as it will transmit the name of the newly-converted." - tier = SCRIPTURE_SCRIPT - one_per_tile = TRUE - primary_component = GEIS_CAPACITOR - sort_priority = 5 - quickbind = TRUE - quickbind_desc = "Creates a Sigil of Submission, which will convert one non-Servant that remains on it." - - -//Soul Vessel: Creates a soul vessel, which can seek a ghost or be used on the uncovered head of a dead or dying human to take their brain. -/datum/clockwork_scripture/create_object/soul_vessel - descname = "Clockwork Posibrain" - name = "Soul Vessel" - desc = "Forms an ancient positronic brain with an overriding directive to serve Ratvar." - invocations = list("Herd the souls of...", "...the blasphemous damned!") - channel_time = 30 - required_components = list(VANGUARD_COGWHEEL = 1, GEIS_CAPACITOR = 2) - consumed_components = list(VANGUARD_COGWHEEL = 1, GEIS_CAPACITOR = 1) - whispered = TRUE - object_path = /obj/item/device/mmi/posibrain/soul_vessel - creator_message = "You form a soul vessel, which can be used in-hand to attract spirits, or used on an unconscious or dead human to extract their consciousness." - usage_tip = "The vessel can be used as a teleport target for Spatial Gateway, though it is generally better-used by placing it in a shell or cyborg body." - tier = SCRIPTURE_SCRIPT - space_allowed = TRUE - primary_component = GEIS_CAPACITOR - sort_priority = 6 - quickbind = TRUE - quickbind_desc = "Creates a Soul Vessel, which can be placed in construct shells and cyborg bodies once filled." - - -//Clockwork Proselytizer: Creates a clockwork proselytizer, used to convert objects and repair clockwork structures. -/datum/clockwork_scripture/create_object/clockwork_proselytizer - descname = "Converts Objects to Ratvarian" - name = "Clockwork Proselytizer" - desc = "Forms a device that, when used on certain objects, converts them into their Ratvarian equivalents. It requires replicant alloy to function." - invocations = list("With this device...", "...his presence shall be made known.") - channel_time = 20 - required_components = list(GEIS_CAPACITOR = 1, REPLICANT_ALLOY = 2) - consumed_components = list(GEIS_CAPACITOR = 1, REPLICANT_ALLOY = 1) - whispered = TRUE - object_path = /obj/item/clockwork/clockwork_proselytizer/preloaded - creator_message = "You form a clockwork proselytizer, which is already pre-loaded with a small amount of replicant alloy." - usage_tip = "Clockwork Walls cause nearby tinkerer's caches to generate components passively, making them a vital tool. Clockwork Floors heal toxin damage in Servants standing on them." - tier = SCRIPTURE_SCRIPT - space_allowed = TRUE - primary_component = REPLICANT_ALLOY - sort_priority = 7 - quickbind = TRUE - quickbind_desc = "Creates a Clockwork Proselytizer, which can convert various objects to Ratvarian variants." - - -//Function Call: Grants the invoker the ability to call forth a Ratvarian spear that deals significant damage to silicons. -/datum/clockwork_scripture/function_call - descname = "Permenant Summonable Spear" - name = "Function Call" - desc = "Grants the invoker the ability to call forth a powerful Ratvarian spear every three minutes. The spear will deal significant damage to Nar-Sie's dogs and silicon lifeforms, but will \ - vanish three minutes after being summoned." - invocations = list("Grant me...", "...the might of brass!") - channel_time = 20 - required_components = list(REPLICANT_ALLOY = 2, HIEROPHANT_ANSIBLE = 1) - consumed_components = list(REPLICANT_ALLOY = 1, HIEROPHANT_ANSIBLE = 1) - whispered = TRUE - usage_tip = "You can impale human targets with the spear by pulling them, then attacking. Throwing the spear at a mob will do massive damage and stun them, but break the spear." - tier = SCRIPTURE_SCRIPT - primary_component = REPLICANT_ALLOY - sort_priority = 8 - -/datum/clockwork_scripture/function_call/check_special_requirements() - for(var/datum/action/innate/function_call/F in invoker.actions) - invoker << "You have already bound a Ratvarian spear to yourself!" - return FALSE - return invoker.can_hold_items() - -/datum/clockwork_scripture/function_call/scripture_effects() - invoker.visible_message("A shimmer of yellow light infuses [invoker]!", \ - "You bind a Ratvarian spear to yourself. Use the \"Function Call\" action button to call it forth.") - var/datum/action/innate/function_call/F = new() - F.Grant(invoker) - return TRUE - -//Function Call action: Calls forth a Ratvarian spear once every 3 minutes. -/datum/action/innate/function_call - name = "Function Call" - desc = "Allows you to summon a Ratvarian spear to fight enemies." - button_icon_state = "ratvarian_spear" - background_icon_state = "bg_clock" - check_flags = AB_CHECK_RESTRAINED|AB_CHECK_STUNNED|AB_CHECK_CONSCIOUS - buttontooltipstyle = "clockcult" - var/cooldown = 0 - var/base_cooldown = 1800 - -/datum/action/innate/function_call/IsAvailable() - if(!is_servant_of_ratvar(owner) || cooldown > world.time) - return FALSE - return ..() - -/datum/action/innate/function_call/Activate() - if(!owner.get_empty_held_indexes()) - usr << "You need an empty to hand to call forth your spear!" - return FALSE - owner.visible_message("A strange spear materializes in [owner]'s hands!", "You call forth your spear!") - var/obj/item/clockwork/ratvarian_spear/R = new(get_turf(usr)) - owner.put_in_hands(R) - if(!ratvar_awakens) - R.clockwork_desc = "A powerful spear of Ratvarian making. It's more effective against enemy cultists and silicons, though it won't last for long." - owner << "Your spear begins to break down in this plane of existence. You can't use it for long!" - R.timerid = addtimer(R, "break_spear", base_cooldown, TIMER_NORMAL) - cooldown = base_cooldown + world.time - owner.update_action_buttons_icon() - addtimer(src, "update_actions", base_cooldown, TIMER_NORMAL) - return TRUE - -/datum/action/innate/function_call/proc/update_actions() - if(owner) - owner.update_action_buttons_icon() - - -//Spatial Gateway: Allows the invoker to teleport themselves and any nearby allies to a conscious servant or clockwork obelisk. -/datum/clockwork_scripture/spatial_gateway - descname = "Teleport Gate" - name = "Spatial Gateway" - desc = "Tears open a miniaturized gateway in spacetime to any conscious servant that can transport objects or creatures to its destination. \ - Each servant assisting in the invocation adds one additional use and four additional seconds to the gateway's uses and duration." - invocations = list("Spatial Gateway...", "...activate!") - channel_time = 80 - required_components = list(VANGUARD_COGWHEEL = 1, HIEROPHANT_ANSIBLE = 2) - consumed_components = list(VANGUARD_COGWHEEL = 1, HIEROPHANT_ANSIBLE = 1) - multiple_invokers_used = TRUE - multiple_invokers_optional = TRUE - usage_tip = "This gateway is strictly one-way and will only allow things through the invoker's portal." - tier = SCRIPTURE_SCRIPT - primary_component = HIEROPHANT_ANSIBLE - sort_priority = 9 - quickbind = TRUE - quickbind_desc = "Allows you to create a one-way Spatial Gateway to a living Servant or Clockwork Obelisk." - -/datum/clockwork_scripture/spatial_gateway/check_special_requirements() - if(!isturf(invoker.loc)) - invoker << "You must not be inside an object to use this scripture!" - return FALSE - var/other_servants = 0 - for(var/mob/living/L in living_mob_list) - if(is_servant_of_ratvar(L) && !L.stat && L != invoker) - other_servants++ - for(var/obj/structure/destructible/clockwork/powered/clockwork_obelisk/O in all_clockwork_objects) - other_servants++ - if(!other_servants) - invoker << "There are no other servants or clockwork obelisks!" - return FALSE - return TRUE - -/datum/clockwork_scripture/spatial_gateway/scripture_effects() - var/portal_uses = 0 - var/duration = 0 - for(var/mob/living/L in range(1, invoker)) - if(!L.stat && is_servant_of_ratvar(L)) - portal_uses++ - duration += 40 //4 seconds - if(ratvar_awakens) - portal_uses = max(portal_uses, 100) //Very powerful if Ratvar has been summoned - duration = max(duration, 100) - return slab.procure_gateway(invoker, duration, portal_uses) - - -//Volt Void: Channeled for up to thirty times over thirty seconds. Consumes power from most power storages and deals slight burn damage to the invoker. -/datum/clockwork_scripture/channeled/volt_void - descname = "Channeled, Area Power Drain" - name = "Volt Void" //Alternative name: "On all levels but physical, I am a power sink" - desc = "Drains energy from nearby power sources, dealing burn damage if the total power consumed is above a threshhold. Channeled every second for a maximum of thirty seconds." - chant_invocations = list("Draw charge to this shell!") - chant_amount = 30 - chant_interval = 10 - required_components = list(GEIS_CAPACITOR = 1, HIEROPHANT_ANSIBLE = 2) - consumed_components = list(GEIS_CAPACITOR = 1, HIEROPHANT_ANSIBLE = 1) - usage_tip = "If standing on a Sigil of Transmission, will transfer power to it. Augumented limbs will also be healed unless above a very high threshhold." - tier = SCRIPTURE_SCRIPT - primary_component = HIEROPHANT_ANSIBLE - sort_priority = 10 - quickbind = TRUE - quickbind_desc = "Drains power from nearby objects. If standing on a Sigil of Transmission, gives it that power.
    Maximum 30 chants." - var/total_power_drained = 0 - var/power_damage_threshhold = 3000 - var/augument_damage_threshhold = 6000 - -/datum/clockwork_scripture/channeled/volt_void/chant_effects(chant_number) - playsound(invoker, 'sound/effects/EMPulse.ogg', 50, 1) - PoolOrNew(/obj/effect/overlay/temp/ratvar/sigil/voltvoid, get_turf(invoker)) - var/power_drained = 0 - for(var/atom/movable/A in view(7, get_turf(invoker))) - power_drained += A.power_drain(TRUE) - var/obj/effect/clockwork/sigil/transmission/ST = locate(/obj/effect/clockwork/sigil/transmission) in get_turf(invoker) - if(ST && power_drained >= MIN_CLOCKCULT_POWER) - var/sigil_drain = 0 - while(power_drained >= MIN_CLOCKCULT_POWER) - ST.modify_charge(-MIN_CLOCKCULT_POWER) - power_drained -= MIN_CLOCKCULT_POWER - sigil_drain += MIN_CLOCKCULT_POWER * 0.2 - power_drained += sigil_drain //readd part of the power given to the sigil to the power drained this cycle - ST.visible_message("[ST] flares a brilliant orange!") - total_power_drained += power_drained - if(power_drained >= MIN_CLOCKCULT_POWER) - if(iscyborg(invoker)) - var/mob/living/silicon/robot/R = invoker - if(R.cell) - R.cell.give(power_drained) - R.visible_message("[invoker] flares a brilliant orange!", "You feel your cell charging.") - else if(total_power_drained >= power_damage_threshhold) - var/power_damage = power_drained * 0.01 - invoker.visible_message("[invoker] flares a brilliant orange!", "You feel the heat of electricity running into your body.") - if(ishuman(invoker)) - var/mob/living/carbon/human/H = invoker - for(var/X in H.bodyparts) - var/obj/item/bodypart/BP = X - if(ratvar_awakens || (BP.status == BODYPART_ROBOTIC && total_power_drained < augument_damage_threshhold)) //if ratvar is alive, it won't damage and will always heal augumented limbs - if(BP.heal_damage(power_damage, power_damage, 1, 0)) //heals one point of burn and brute for every ~100W drained on augumented limbs - H.update_damage_overlays() - else - if(BP.receive_damage(0, power_damage)) - H.update_damage_overlays() - else if(isanimal(invoker)) - var/mob/living/simple_animal/A = invoker - A.adjustHealth(-power_damage) //if a simple animal is using volt void, just heal it - return TRUE diff --git a/code/game/gamemodes/clock_cult/clock_structure.dm b/code/game/gamemodes/clock_cult/clock_structure.dm deleted file mode 100644 index 5ff8c4c260..0000000000 --- a/code/game/gamemodes/clock_cult/clock_structure.dm +++ /dev/null @@ -1,279 +0,0 @@ -//The base clockwork structure. Can have an alternate desc and will show up in the list of clockwork objects. -/obj/structure/destructible/clockwork - name = "meme structure" - desc = "Some frog or something, the fuck?" - var/clockwork_desc //Shown to servants when they examine - icon = 'icons/obj/clockwork_objects.dmi' - icon_state = "rare_pepe" - var/unanchored_icon //icon for when this structure is unanchored, doubles as the var for if it can be unanchored - anchored = 1 - density = 1 - resistance_flags = FIRE_PROOF | ACID_PROOF - var/repair_amount = 5 //how much a proselytizer can repair each cycle - var/can_be_repaired = TRUE //if a proselytizer can repair it at all - break_message = "The frog isn't a meme after all!" //The message shown when a structure breaks - break_sound = 'sound/magic/clockwork/anima_fragment_death.ogg' //The sound played when a structure breaks - debris = list(/obj/item/clockwork/alloy_shards/large = 1, \ - /obj/item/clockwork/alloy_shards/medium = 2, \ - /obj/item/clockwork/alloy_shards/small = 3) //Parts left behind when a structure breaks - var/construction_value = 0 //How much value the structure contributes to the overall "power" of the structures on the station - -/obj/structure/destructible/clockwork/New() - ..() - change_construction_value(construction_value) - all_clockwork_objects += src - -/obj/structure/destructible/clockwork/Destroy() - change_construction_value(-construction_value) - all_clockwork_objects -= src - return ..() - -/obj/structure/destructible/clockwork/ratvar_act() - obj_integrity = max_integrity - -/obj/structure/destructible/clockwork/narsie_act() - if(take_damage(rand(25, 50), BRUTE) && src) //if we still exist - var/previouscolor = color - color = "#960000" - animate(src, color = previouscolor, time = 8) - addtimer(src, "update_atom_colour", 8) - -/obj/structure/destructible/clockwork/examine(mob/user) - var/can_see_clockwork = is_servant_of_ratvar(user) || isobserver(user) - if(can_see_clockwork && clockwork_desc) - desc = clockwork_desc - ..() - desc = initial(desc) - if(!(resistance_flags & INDESTRUCTIBLE)) - var/t_It = p_they(TRUE) - var/t_is = p_are() - var/servant_message = "[t_It] [t_is] at [obj_integrity]/[max_integrity] integrity" - var/heavily_damaged = FALSE - var/healthpercent = (obj_integrity/max_integrity) * 100 - if(healthpercent < 50) - heavily_damaged = TRUE - if(can_see_clockwork) - user << "[servant_message][heavily_damaged ? "!":"."]" - if(unanchored_icon) - user << "[src] is [anchored ? "":"not "]secured to the floor." - -/obj/structure/destructible/clockwork/hulk_damage() - return 20 - -/obj/structure/destructible/clockwork/proc/get_efficiency_mod(increasing) - if(ratvar_awakens) - if(increasing) - return 0.5 - return 2 - . = max(sqrt(obj_integrity/max(max_integrity, 1)), 0.5) - if(increasing) - . *= min(max_integrity/max(obj_integrity, 1), 4) - . = round(., 0.01) - -/obj/structure/destructible/clockwork/can_be_unfasten_wrench(mob/user) - if(anchored && obj_integrity <= round(max_integrity * 0.25, 1)) - user << "[src] is too damaged to unsecure!" - return FAILED_UNFASTEN - return ..() - -/obj/structure/destructible/clockwork/attackby(obj/item/I, mob/user, params) - if(is_servant_of_ratvar(user) && istype(I, /obj/item/weapon/wrench) && unanchored_icon) - if(default_unfasten_wrench(user, I, 50) == SUCCESSFUL_UNFASTEN) - update_anchored(user, TRUE) - return 1 - return ..() - -/obj/structure/destructible/clockwork/proc/update_anchored(mob/user, do_damage) - if(anchored) - icon_state = initial(icon_state) - else - icon_state = unanchored_icon - if(do_damage) - playsound(src, break_sound, 10 * get_efficiency_mod(TRUE), 1) - take_damage(round(max_integrity * 0.25, 1), BRUTE) - user << "As you unsecure [src] from the floor, you see cracks appear in its surface!" - -/obj/structure/destructible/clockwork/emp_act(severity) - if(anchored && unanchored_icon) - anchored = FALSE - update_anchored(null, obj_integrity > max_integrity * 0.25) - PoolOrNew(/obj/effect/overlay/temp/emp, loc) - - -//for the ark and Ratvar -/obj/structure/destructible/clockwork/massive - name = "massive construct" - desc = "A very large construction." - layer = MASSIVE_OBJ_LAYER - density = FALSE - resistance_flags = LAVA_PROOF | FIRE_PROOF | ACID_PROOF - -/obj/structure/destructible/clockwork/massive/New() - ..() - poi_list += src - -/obj/structure/destructible/clockwork/massive/Destroy() - poi_list -= src - return ..() - -/obj/structure/destructible/clockwork/massive/singularity_pull(S, current_size) - return - - -//the base clockwork machinery, which is not actually machines, but happens to use power -/obj/structure/destructible/clockwork/powered - var/obj/machinery/power/apc/target_apc - var/active = FALSE - var/needs_power = TRUE - var/active_icon = null //icon_state while process() is being called - var/inactive_icon = null //icon_state while process() isn't being called - -/obj/structure/destructible/clockwork/powered/examine(mob/user) - ..() - if(is_servant_of_ratvar(user) || isobserver(user)) - var/powered = total_accessable_power() - user << "It has access to [powered == INFINITY ? "INFINITY":"[powered]"]W of power." - -/obj/structure/destructible/clockwork/powered/Destroy() - SSfastprocess.processing -= src - SSobj.processing -= src - return ..() - -/obj/structure/destructible/clockwork/powered/process() - var/powered = total_accessable_power() - return powered == PROCESS_KILL ? 25 : powered //make sure we don't accidentally return the arbitrary PROCESS_KILL define - -/obj/structure/destructible/clockwork/powered/can_be_unfasten_wrench(mob/user) - if(active) - user << "[src] needs to be disabled before it can be unsecured!" - return FAILED_UNFASTEN - return ..() - -/obj/structure/destructible/clockwork/powered/attack_ai(mob/user) - if(is_servant_of_ratvar(user)) - attack_hand(user) - -/obj/structure/destructible/clockwork/powered/proc/toggle(fast_process, mob/living/user) - if(user) - if(!is_servant_of_ratvar(user)) - return FALSE - if(!anchored && !active) - user << "[src] needs to be secured to the floor before it can be activated!" - return FALSE - visible_message("[user] [active ? "dis" : "en"]ables [src].", "You [active ? "dis" : "en"]able [src].") - active = !active - if(active) - icon_state = active_icon - if(fast_process) - START_PROCESSING(SSfastprocess, src) - else - START_PROCESSING(SSobj, src) - else - icon_state = inactive_icon - if(fast_process) - STOP_PROCESSING(SSfastprocess, src) - else - STOP_PROCESSING(SSobj, src) - return TRUE - -/obj/structure/destructible/clockwork/powered/proc/forced_disable(bad_effects) - if(active) - toggle() - -/obj/structure/destructible/clockwork/powered/emp_act(severity) - if(forced_disable(TRUE)) - PoolOrNew(/obj/effect/overlay/temp/emp, loc) - -/obj/structure/destructible/clockwork/powered/proc/total_accessable_power() //how much power we have and can use - if(!needs_power || ratvar_awakens) - return INFINITY //oh yeah we've got power why'd you ask - - var/power = 0 - power += accessable_apc_power() - power += accessable_sigil_power() - return power - -/obj/structure/destructible/clockwork/powered/proc/accessable_apc_power() - var/power = 0 - var/area/A = get_area(src) - var/area/targetAPCA - for(var/obj/machinery/power/apc/APC in apcs_list) - var/area/APCA = get_area(APC) - if(APCA == A) - target_apc = APC - if(target_apc) - targetAPCA = get_area(target_apc) - if(targetAPCA != A) - target_apc = null - else if(target_apc.cell) - var/apccharge = target_apc.cell.charge - if(apccharge >= MIN_CLOCKCULT_POWER) - power += apccharge - return power - -/obj/structure/destructible/clockwork/powered/proc/accessable_sigil_power() - var/power = 0 - for(var/obj/effect/clockwork/sigil/transmission/T in range(1, src)) - power += T.power_charge - return power - - -/obj/structure/destructible/clockwork/powered/proc/try_use_power(amount) //try to use an amount of power - if(!needs_power || ratvar_awakens) - return 1 - if(amount <= 0) - return FALSE - var/power = total_accessable_power() - if(!power || power < amount) - return FALSE - return use_power(amount) - -/obj/structure/destructible/clockwork/powered/proc/use_power(amount) //we've made sure we had power, so now we use it - var/sigilpower = accessable_sigil_power() - var/list/sigils_in_range = list() - for(var/obj/effect/clockwork/sigil/transmission/T in range(1, src)) - sigils_in_range |= T - while(sigilpower && amount >= MIN_CLOCKCULT_POWER) - for(var/S in sigils_in_range) - var/obj/effect/clockwork/sigil/transmission/T = S - if(amount >= MIN_CLOCKCULT_POWER && T.modify_charge(MIN_CLOCKCULT_POWER)) - sigilpower -= MIN_CLOCKCULT_POWER - amount -= MIN_CLOCKCULT_POWER - var/apcpower = accessable_apc_power() - while(apcpower >= MIN_CLOCKCULT_POWER && amount >= MIN_CLOCKCULT_POWER) - if(target_apc.cell.use(MIN_CLOCKCULT_POWER)) - apcpower -= MIN_CLOCKCULT_POWER - amount -= MIN_CLOCKCULT_POWER - target_apc.charging = 1 - target_apc.chargemode = TRUE - target_apc.update() - target_apc.update_icon() - target_apc.updateUsrDialog() - else - apcpower = 0 - if(amount) - return FALSE - else - return TRUE - -/obj/structure/destructible/clockwork/powered/proc/return_power(amount) //returns a given amount of power to all nearby sigils or if there are no sigils, to the APC - if(amount <= 0) - return FALSE - var/list/sigils_in_range = list() - for(var/obj/effect/clockwork/sigil/transmission/T in range(1, src)) - sigils_in_range |= T - if(!sigils_in_range.len && (!target_apc || !target_apc.cell)) - return FALSE - if(sigils_in_range.len) - while(amount >= MIN_CLOCKCULT_POWER) - for(var/S in sigils_in_range) - var/obj/effect/clockwork/sigil/transmission/T = S - if(amount >= MIN_CLOCKCULT_POWER && T.modify_charge(-MIN_CLOCKCULT_POWER)) - amount -= MIN_CLOCKCULT_POWER - if(target_apc && target_apc.cell && target_apc.cell.give(amount)) - target_apc.charging = 1 - target_apc.chargemode = TRUE - target_apc.update() - target_apc.update_icon() - target_apc.updateUsrDialog() - return TRUE diff --git a/code/game/gamemodes/clock_cult/clock_structures.dm b/code/game/gamemodes/clock_cult/clock_structures.dm new file mode 100644 index 0000000000..cd002c0d88 --- /dev/null +++ b/code/game/gamemodes/clock_cult/clock_structures.dm @@ -0,0 +1,955 @@ +////////////////////////// +// CLOCKWORK STRUCTURES // +////////////////////////// + +/obj/structure/clockwork + name = "meme structure" + desc = "Some frog or something, the fuck?" + var/clockwork_desc //Shown to servants when they examine + icon = 'icons/obj/clockwork_objects.dmi' + icon_state = "rare_pepe" + anchored = 1 + density = 1 + opacity = 0 + layer = BELOW_OBJ_LAYER + var/max_health = 100 //All clockwork structures have health that can be removed via attacks + var/health = 100 + var/repair_amount = 5 //how much a proselytizer can repair each cycle + var/can_be_repaired = TRUE //if a proselytizer can repair it at all + var/takes_damage = TRUE //If the structure can be damaged + var/break_message = "The frog isn't a meme after all!" //The message shown when a structure breaks + var/break_sound = 'sound/magic/clockwork/anima_fragment_death.ogg' //The sound played when a structure breaks + var/list/debris = list(/obj/item/clockwork/alloy_shards) //Parts left behind when a structure breaks + var/construction_value = 0 //How much value the structure contributes to the overall "power" of the structures on the station + +/obj/structure/clockwork/New() + ..() + clockwork_construction_value += construction_value + all_clockwork_objects += src + +/obj/structure/clockwork/Destroy() + clockwork_construction_value -= construction_value + all_clockwork_objects -= src + return ..() + +/obj/structure/clockwork/proc/destroyed() + if(!takes_damage) + return 0 + for(var/I in debris) + new I (get_turf(src)) + visible_message(break_message) + playsound(src, break_sound, 50, 1) + qdel(src) + return 1 + +/obj/structure/clockwork/burn() + SSobj.burning -= src + if(takes_damage) + playsound(src, 'sound/items/Welder.ogg', 100, 1) + visible_message("[src] is warped by the heat!") + take_damage(rand(50, 100), BURN) + +/obj/structure/clockwork/proc/take_damage(amount, damage_type) + if(!amount || !damage_type || !damage_type in list(BRUTE, BURN)) + return 0 + if(takes_damage) + health = max(0, health - amount) + if(!health) + destroyed() + return 1 + return 0 + +/obj/structure/clockwork/narsie_act() + if(take_damage(rand(25, 50), BRUTE) && src) //if we still exist + var/previouscolor = color + color = "#960000" + animate(src, color = previouscolor, time = 8) + +/obj/structure/clockwork/ex_act(severity) + var/damage = 0 + switch(severity) + if(1) + damage = max_health //100% max health lost + if(2) + damage = max_health * rand(0.5, 0.7) //50-70% max health lost + if(3) + damage = max_health * rand(0.1, 0.3) //10-30% max health lost + if(damage) + take_damage(damage, BRUTE) + +/obj/structure/clockwork/examine(mob/user) + var/can_see_clockwork = is_servant_of_ratvar(user) || isobserver(user) + if(can_see_clockwork && clockwork_desc) + desc = clockwork_desc + ..() + desc = initial(desc) + if(takes_damage) + var/servant_message = "It is at [health]/[max_health] integrity" + var/other_message = "It seems pristine and undamaged" + var/heavily_damaged = FALSE + var/healthpercent = (health/max_health) * 100 + if(healthpercent >= 100) + other_message = "It seems pristine and undamaged" + else if(healthpercent >= 50) + other_message = "It looks slightly dented" + else if(healthpercent >= 25) + other_message = "It appears heavily damaged" + heavily_damaged = TRUE + else if(healthpercent >= 0) + other_message = "It's falling apart" + heavily_damaged = TRUE + user << "[can_see_clockwork ? "[servant_message]":"[other_message]"][heavily_damaged ? "!":"."]" + +/obj/structure/clockwork/bullet_act(obj/item/projectile/P) + . = ..() + visible_message("[src] is hit by \a [P]!") + playsound(src, P.hitsound, 50, 1) + take_damage(P.damage, P.damage_type) + +/obj/structure/clockwork/proc/attack_generic(mob/user, damage = 0, damage_type = BRUTE) //used by attack_alien, attack_animal, and attack_slime + user.do_attack_animation(src) + user.changeNext_move(CLICK_CD_MELEE) + user.visible_message("[user] smashes into [src]!") + take_damage(damage, damage_type) + +/obj/structure/clockwork/attack_alien(mob/living/user) + playsound(src, 'sound/weapons/bladeslice.ogg', 50, 1) + attack_generic(user, 15) + +/obj/structure/clockwork/attack_animal(mob/living/simple_animal/M) + if(!M.melee_damage_upper) + return + playsound(src, 'sound/weapons/Genhit.ogg', 50, 1) + attack_generic(M, M.melee_damage_upper, M.melee_damage_type) + +/obj/structure/clockwork/attack_slime(mob/living/simple_animal/slime/user) + if(!user.is_adult) + return + playsound(src, 'sound/weapons/Genhit.ogg', 50, 1) + attack_generic(user, rand(10, 15)) + +/obj/structure/clockwork/attacked_by(obj/item/I, mob/living/user) + . = ..() + if(I.force && takes_damage) + playsound(src, I.hitsound, 50, 1) + take_damage(I.force, I.damtype) + +/obj/structure/clockwork/mech_melee_attack(obj/mecha/M) + if(..()) + playsound(src, 'sound/weapons/punch4.ogg', 50, 1) + take_damage(M.force, M.damtype) + +/obj/structure/clockwork/cache //Tinkerer's cache: Stores components for later use. + name = "tinkerer's cache" + desc = "A large brass spire with a flaming hole in its center." + clockwork_desc = "A brass container capable of storing a large amount of components.\n\ + Shares components with all other caches and will gradually generate components if near a Clockwork Wall." + icon_state = "tinkerers_cache" + construction_value = 10 + break_message = "The cache's fire winks out before it falls in on itself!" + max_health = 80 + health = 80 + var/wall_generation_cooldown + var/wall_found = FALSE //if we've found a wall and finished our windup delay + +/obj/structure/clockwork/cache/New() + ..() + START_PROCESSING(SSobj, src) + clockwork_caches++ + set_light(2,1) + +/obj/structure/clockwork/cache/Destroy() + clockwork_caches-- + STOP_PROCESSING(SSobj, src) + return ..() + +/obj/structure/clockwork/cache/destroyed() + if(takes_damage) + for(var/I in src) + var/atom/movable/A = I + A.forceMove(get_turf(src)) //drop any daemons we have + return ..() + +/obj/structure/clockwork/cache/process() + for(var/turf/closed/wall/clockwork/C in orange(1, src)) + if(!wall_found) + wall_found = TRUE + wall_generation_cooldown = world.time + CACHE_PRODUCTION_TIME + visible_message("[src] starts to whirr in the presence of [C]...") + break + if(wall_generation_cooldown <= world.time) + wall_generation_cooldown = world.time + CACHE_PRODUCTION_TIME + generate_cache_component() + playsound(C, 'sound/magic/clockwork/fellowship_armory.ogg', rand(15, 20), 1, -3, 1, 1) + visible_message("Something clunks around inside of [src]...") + break + +/obj/structure/clockwork/cache/attackby(obj/item/I, mob/living/user, params) + if(!is_servant_of_ratvar(user)) + return ..() + if(istype(I, /obj/item/clockwork/component)) + var/obj/item/clockwork/component/C = I + clockwork_component_cache[C.component_id]++ + user << "You add [C] to [src]." + user.drop_item() + qdel(C) + return 1 + else if(istype(I, /obj/item/clockwork/slab)) + var/obj/item/clockwork/slab/S = I + clockwork_component_cache["belligerent_eye"] += S.stored_components["belligerent_eye"] + clockwork_component_cache["vanguard_cogwheel"] += S.stored_components["vanguard_cogwheel"] + clockwork_component_cache["guvax_capacitor"] += S.stored_components["guvax_capacitor"] + clockwork_component_cache["replicant_alloy"] += S.stored_components["replicant_alloy"] + clockwork_component_cache["hierophant_ansible"] += S.stored_components["hierophant_ansible"] + S.stored_components["belligerent_eye"] = 0 + S.stored_components["vanguard_cogwheel"] = 0 + S.stored_components["guvax_capacitor"] = 0 + S.stored_components["replicant_alloy"] = 0 + S.stored_components["hierophant_ansible"] = 0 + user.visible_message("[user] empties [S] into [src].", "You offload your slab's components into [src].") + return 1 + else if(istype(I, /obj/item/clockwork/daemon_shell)) + var/component_type + switch(alert(user, "Will this daemon produce a specific type of component or produce randomly?.", , "Specific Type", "Random Component")) + if("Specific Type") + switch(input(user, "Choose a component type.", name) as null|anything in list("Belligerent Eyes", "Vanguard Cogwheels", "Guvax Capacitors", "Replicant Alloys", "Hierophant Ansibles")) + if("Belligerent Eyes") + component_type = "belligerent_eye" + if("Vanguard Cogwheels") + component_type = "vanguard_cogwheel" + if("Guvax Capacitors") + component_type = "guvax_capacitor" + if("Replicant Alloys") + component_type = "replicant_alloy" + if("Hierophant Ansibles") + component_type = "hierophant_ansibles" + if(!user || !user.canUseTopic(src) || !user.canUseTopic(I)) + return 0 + var/obj/item/clockwork/tinkerers_daemon/D = new(src) + D.cache = src + D.specific_component = component_type + user.visible_message("[user] spins the cogwheel on [I] and puts it into [src].", \ + "You activate the daemon and put it into [src]. It will now produce a component every twenty seconds.") + user.drop_item() + qdel(I) + return 1 + else + return ..() + +/obj/structure/clockwork/cache/attack_hand(mob/user) + if(!is_servant_of_ratvar(user)) + return 0 + var/list/possible_components = list() + if(clockwork_component_cache["belligerent_eye"]) + possible_components += "Belligerent Eye" + if(clockwork_component_cache["vanguard_cogwheel"]) + possible_components += "Vanguard Cogwheel" + if(clockwork_component_cache["guvax_capacitor"]) + possible_components += "Guvax Capacitor" + if(clockwork_component_cache["replicant_alloy"]) + possible_components += "Replicant Alloy" + if(clockwork_component_cache["hierophant_ansible"]) + possible_components += "Hierophant Ansible" + if(!possible_components.len) + user << "[src] is empty!" + return 0 + var/component_to_withdraw = input(user, "Choose a component to withdraw.", name) as null|anything in possible_components + if(!user || !user.canUseTopic(src) || !component_to_withdraw) + return 0 + var/obj/item/clockwork/component/the_component + switch(component_to_withdraw) + if("Belligerent Eye") + if(clockwork_component_cache["belligerent_eye"]) + the_component = new/obj/item/clockwork/component/belligerent_eye(get_turf(src)) + clockwork_component_cache["belligerent_eye"]-- + if("Vanguard Cogwheel") + if(clockwork_component_cache["vanguard_cogwheel"]) + the_component = new/obj/item/clockwork/component/vanguard_cogwheel(get_turf(src)) + clockwork_component_cache["vanguard_cogwheel"]-- + if("Guvax Capacitor") + if(clockwork_component_cache["guvax_capacitor"]) + the_component = new/obj/item/clockwork/component/guvax_capacitor(get_turf(src)) + clockwork_component_cache["guvax_capacitor"]-- + if("Replicant Alloy") + if(clockwork_component_cache["replicant_alloy"]) + the_component = new/obj/item/clockwork/component/replicant_alloy(get_turf(src)) + clockwork_component_cache["replicant_alloy"]-- + if("Hierophant Ansible") + if(clockwork_component_cache["hierophant_ansible"]) + the_component = new/obj/item/clockwork/component/hierophant_ansible(get_turf(src)) + clockwork_component_cache["hierophant_ansible"]-- + if(the_component) + user.visible_message("[user] withdraws [the_component] from [src].", "You withdraw [the_component] from [src].") + user.put_in_hands(the_component) + return 1 + +/obj/structure/clockwork/cache/examine(mob/user) + ..() + if(is_servant_of_ratvar(user) || isobserver(user)) + user << "Stored components:" + user << "Belligerent Eyes: [clockwork_component_cache["belligerent_eye"]]" + user << "Vanguard Cogwheels: [clockwork_component_cache["vanguard_cogwheel"]]" + user << "Guvax Capacitors: [clockwork_component_cache["guvax_capacitor"]]" + user << "Replicant Alloys: [clockwork_component_cache["replicant_alloy"]]" + user << "Hierophant Ansibles: [clockwork_component_cache["hierophant_ansible"]]" + + +/obj/structure/clockwork/ocular_warden //Ocular warden: Low-damage, low-range turret. Deals constant damage to whoever it makes eye contact with. + name = "ocular warden" + desc = "A large brass eye with tendrils trailing below it and a wide red iris." + clockwork_desc = "A stalwart turret that will deal sustained damage to any non-faithful it sees." + icon_state = "ocular_warden" + health = 25 + max_health = 25 + construction_value = 15 + layer = HIGH_OBJ_LAYER + break_message = "The warden's eye gives a glare of utter hate before falling dark!" + debris = list(/obj/item/clockwork/component/belligerent_eye/blind_eye) + burn_state = LAVA_PROOF + var/damage_per_tick = 3 + var/sight_range = 3 + var/mob/living/target + var/list/idle_messages = list(" sulkily glares around.", " lazily drifts from side to side.", " looks around for something to burn.", " slowly turns in circles.") + +/obj/structure/clockwork/ocular_warden/New() + ..() + START_PROCESSING(SSfastprocess, src) + +/obj/structure/clockwork/ocular_warden/Destroy() + STOP_PROCESSING(SSfastprocess, src) + return ..() + +/obj/structure/clockwork/ocular_warden/examine(mob/user) + ..() + user << "[target ? "It's fixated on [target]!" : "Its gaze is wandering aimlessly."]" + +/obj/structure/clockwork/ocular_warden/process() + var/list/validtargets = acquire_nearby_targets() + if(ratvar_awakens && (damage_per_tick == initial(damage_per_tick) || sight_range == initial(sight_range))) //Massive buff if Ratvar has returned + damage_per_tick = 10 + sight_range = 5 + if(target) + if(!(target in validtargets)) + lose_target() + else + if(!target.null_rod_check()) + target.adjustFireLoss(!iscultist(target) ? damage_per_tick : damage_per_tick * 2) //Nar-Sian cultists take additional damage + if(ratvar_awakens && target) + target.adjust_fire_stacks(damage_per_tick) + target.IgniteMob() + setDir(get_dir(get_turf(src), get_turf(target))) + if(!target) + if(validtargets.len) + target = pick(validtargets) + visible_message("[src] swivels to face [target]!") + target << "\"I SEE YOU!\"\n[src]'s gaze [ratvar_awakens ? "melts you alive" : "burns you"]!" + if(target.null_rod_check() && !ratvar_awakens) + target << "Your artifact glows hotly against you, protecting you from the warden's gaze!" + else if(prob(0.5)) //Extremely low chance because of how fast the subsystem it uses processes + if(prob(50)) + visible_message("[src][pick(idle_messages)]") + else + setDir(pick(cardinal))//Random rotation + +/obj/structure/clockwork/ocular_warden/proc/acquire_nearby_targets() + . = list() + for(var/mob/living/L in viewers(sight_range, src)) //Doesn't attack the blind + if(!is_servant_of_ratvar(L) && !L.stat && L.mind && !(L.disabilities & BLIND) && !L.null_rod_check()) + . += L + +/obj/structure/clockwork/ocular_warden/proc/lose_target() + if(!target) + return 0 + target = null + visible_message("[src] settles and seems almost disappointed.") + return 1 + + +/obj/structure/clockwork/shell + construction_value = 0 + anchored = 0 + density = 0 + takes_damage = FALSE + burn_state = LAVA_PROOF + var/mobtype = /mob/living/simple_animal/hostile/clockwork + var/spawn_message = " is an error and you should yell at whoever spawned this shell." + +/obj/structure/clockwork/shell/attackby(obj/item/I, mob/living/user, params) + if(istype(I, /obj/item/device/mmi/posibrain/soul_vessel)) + if(!is_servant_of_ratvar(user)) + ..() + return 0 + var/obj/item/device/mmi/posibrain/soul_vessel/S = I + if(!S.brainmob) + user << "[S] hasn't trapped a spirit! Turn it on first." + return 0 + if(S.brainmob && (!S.brainmob.client || !S.brainmob.mind)) + user << "[S]'s trapped spirit appears inactive!" + return 0 + user.visible_message("[user] places [S] in [src], where it fuses to the shell.", "You place [S] in [src], fusing it to the shell.") + var/mob/living/simple_animal/A = new mobtype(get_turf(src)) + A.visible_message("[src][spawn_message]") + S.brainmob.mind.transfer_to(A) + add_servant_of_ratvar(A, TRUE) + user.drop_item() + qdel(S) + qdel(src) + return 1 + else + return ..() + +/obj/structure/clockwork/shell/cogscarab + name = "cogscarab shell" + desc = "A small brass shell with a cube-shaped receptable in its center. It gives off an aura of obsessive perfectionism." + clockwork_desc = "A dormant receptable that, when powered with a soul vessel, will become a weak construct with an inbuilt proselytizer." + icon_state = "clockdrone_shell" + mobtype = /mob/living/simple_animal/drone/cogscarab + spawn_message = "'s eyes blink open, glowing bright red." + +/obj/structure/clockwork/shell/fragment //Anima fragment: Useless on its own, but can accept an active soul vessel to create a powerful construct. + name = "fragment shell" + desc = "A massive brass shell with a small cube-shaped receptable in its center. It gives off an aura of contained power." + clockwork_desc = "A dormant receptable that, when powered with a soul vessel, will become a powerful construct." + icon_state = "anime_fragment" + mobtype = /mob/living/simple_animal/hostile/clockwork/fragment + spawn_message = " whirs and rises from the ground on a flickering jet of reddish fire." + + +/obj/structure/clockwork/wall_gear + name = "massive gear" + icon_state = "wall_gear" + climbable = TRUE + max_health = 50 + health = 50 + desc = "A massive brass gear. You could probably secure or unsecure it with a wrench, or just climb over it." + clockwork_desc = "A massive brass gear. You could probably secure or unsecure it with a wrench, just climb over it, or proselytize it into replicant alloy." + break_message = "The gear breaks apart into shards of alloy!" + debris = list(/obj/item/clockwork/alloy_shards) + +/obj/structure/clockwork/wall_gear/attackby(obj/item/I, mob/user, params) + if(istype(I, /obj/item/weapon/wrench)) + default_unfasten_wrench(user, I, 10) + return 1 + return ..() + +/obj/structure/clockwork/wall_gear/examine(mob/user) + ..() + user << "[src] is [anchored ? "secured to the floor":"mobile, and not secured"]." + +/////////////////////// +// CLOCKWORK EFFECTS // +/////////////////////// + +/obj/effect/clockwork + name = "meme machine" + desc = "Still don't know what it is." + var/clockwork_desc = "A fabled artifact from beyond the stars. Contains concentrated meme essence." //Shown to clockwork cultists instead of the normal description + icon = 'icons/effects/clockwork_effects.dmi' + icon_state = "ratvars_flame" + anchored = 1 + density = 0 + opacity = 0 + burn_state = LAVA_PROOF + +/obj/effect/clockwork/New() + ..() + all_clockwork_objects += src + +/obj/effect/clockwork/Destroy() + all_clockwork_objects -= src + return ..() + +/obj/effect/clockwork/examine(mob/user) + if((is_servant_of_ratvar(user) || isobserver(user)) && clockwork_desc) + desc = clockwork_desc + ..() + desc = initial(desc) + +/obj/effect/clockwork/judicial_marker //Judicial marker: Created by the judicial visor. After three seconds, stuns any non-servants nearby and damages Nar-Sian cultists. + name = "judicial marker" + desc = "You get the feeling that you shouldn't be standing here." + clockwork_desc = "A sigil that will soon erupt and smite any unenlightened nearby." + icon = 'icons/effects/96x96.dmi' + pixel_x = -32 + pixel_y = -32 + layer = BELOW_MOB_LAYER + var/mob/user + +/obj/effect/clockwork/judicial_marker/New(loc, caster) + ..() + user = caster + playsound(src, 'sound/magic/MAGIC_MISSILE.ogg', 50, 1, 1, 1) + flick("judicial_marker", src) + addtimer(src, "burstanim", 16, FALSE) + +/obj/effect/clockwork/judicial_marker/proc/burstanim() + layer = ABOVE_ALL_MOB_LAYER + flick("judicial_explosion", src) + addtimer(src, "judicialblast", 13, FALSE) + +/obj/effect/clockwork/judicial_marker/proc/judicialblast() + var/targetsjudged = 0 + playsound(src, 'sound/effects/explosionfar.ogg', 100, 1, 1, 1) + for(var/mob/living/L in range(1, src)) + if(is_servant_of_ratvar(L)) + continue + if(L.null_rod_check()) + var/obj/item/I = L.null_rod_check() + L.visible_message("Strange energy flows into [L]'s [I.name]!", \ + "Your [I.name] shields you from [src]!") + continue + if(!iscultist(L)) + L.visible_message("[L] is struck by a judicial explosion!", \ + "[!issilicon(L) ? "An unseen force slams you into the ground!" : "ERROR: Motor servos disabled by external source!"]") + L.Weaken(8) + else + L.visible_message("[L] is struck by a judicial explosion!", \ + "\"Keep an eye out, filth.\"\nA burst of heat crushes you against the ground!") + L.Weaken(4) //half the stun, but sets cultists on fire + L.adjust_fire_stacks(2) + L.IgniteMob() + targetsjudged++ + L.adjustBruteLoss(10) + user << "[targetsjudged ? "Successfully judged [targetsjudged]":"Judged no"] heretic[!targetsjudged || targetsjudged > 1 ? "s":""]." + QDEL_IN(src, 3) //so the animation completes properly + +/obj/effect/clockwork/judicial_marker/ex_act(severity) + return + +/obj/effect/clockwork/spatial_gateway //Spatial gateway: A usually one-way rift to another location. + name = "spatial gateway" + desc = "A gently thrumming tear in reality." + clockwork_desc = "A gateway in reality." + icon_state = "spatial_gateway" + density = 1 + var/sender = TRUE //If this gateway is made for sending, not receiving + var/both_ways = FALSE + var/lifetime = 25 //How many deciseconds this portal will last + var/uses = 1 //How many objects or mobs can go through the portal + var/obj/effect/clockwork/spatial_gateway/linked_gateway //The gateway linked to this one + +/obj/effect/clockwork/spatial_gateway/New() + ..() + spawn(1) + if(!linked_gateway) + qdel(src) + return 0 + if(both_ways) + clockwork_desc = "A gateway in reality. It can both send and receive objects." + else + clockwork_desc = "A gateway in reality. It can only [sender ? "send" : "receive"] objects." + QDEL_IN(src, lifetime) + +//set up a gateway with another gateway +/obj/effect/clockwork/spatial_gateway/proc/setup_gateway(obj/effect/clockwork/spatial_gateway/gatewayB, set_duration, set_uses, two_way) + if(!gatewayB || !set_duration || !uses) + return 0 + linked_gateway = gatewayB + gatewayB.linked_gateway = src + if(two_way) + both_ways = TRUE + gatewayB.both_ways = TRUE + else + sender = TRUE + gatewayB.sender = FALSE + gatewayB.density = FALSE + lifetime = set_duration + gatewayB.lifetime = set_duration + uses = set_uses + gatewayB.uses = set_uses + return 1 + +/obj/effect/clockwork/spatial_gateway/examine(mob/user) + ..() + if(is_servant_of_ratvar(user) || isobserver(user)) + user << "It has [uses] uses remaining." + +/obj/effect/clockwork/spatial_gateway/attack_hand(mob/living/user) + if(user.pulling && user.a_intent == "grab" && isliving(user.pulling)) + var/mob/living/L = user.pulling + if(L.buckled || L.anchored || L.has_buckled_mobs()) + return 0 + user.visible_message("[user] shoves [L] into [src]!", "You shove [L] into [src]!") + user.stop_pulling() + pass_through_gateway(L) + return 1 + if(!user.canUseTopic(src)) + return 0 + user.visible_message("[user] climbs through [src]!", "You brace yourself and step through [src]...") + pass_through_gateway(user) + return 1 + +/obj/effect/clockwork/spatial_gateway/attackby(obj/item/I, mob/living/user, params) + if(istype(I, /obj/item/weapon/nullrod)) + user.visible_message("[user] dispels [src] with [I]!", "You close [src] with [I]!") + qdel(linked_gateway) + qdel(src) + return 1 + if(istype(I, /obj/item/clockwork/slab)) + user << "\"I don't think you want to drop your slab into that\".\n\"If you really want to, try throwing it.\"" + return 1 + if(user.drop_item()) + user.visible_message("[user] drops [I] into [src]!", "You drop [I] into [src]!") + pass_through_gateway(I) + ..() + +/obj/effect/clockwork/spatial_gateway/Bumped(atom/A) + ..() + if(isliving(A) || istype(A, /obj/item)) + pass_through_gateway(A) + +/obj/effect/clockwork/spatial_gateway/proc/pass_through_gateway(atom/movable/A) + if(!linked_gateway) + qdel(src) + return 0 + if(!sender) + visible_message("[A] bounces off of [src]!") + return 0 + if(!uses) + return 0 + if(isliving(A)) + var/mob/living/user = A + user << "You pass through [src] and appear elsewhere!" + linked_gateway.visible_message("A shape appears in [linked_gateway] before emerging!") + playsound(src, 'sound/effects/EMPulse.ogg', 50, 1) + playsound(linked_gateway, 'sound/effects/EMPulse.ogg', 50, 1) + transform = matrix() * 1.5 + animate(src, transform = matrix() / 1.5, time = 10) + linked_gateway.transform = matrix() * 1.5 + animate(linked_gateway, transform = matrix() / 1.5, time = 10) + A.forceMove(get_turf(linked_gateway)) + uses = max(0, uses - 1) + linked_gateway.uses = max(0, linked_gateway.uses - 1) + spawn(10) + if(!uses) + qdel(src) + qdel(linked_gateway) + return 1 + +/obj/effect/clockwork/general_marker + name = "general marker" + desc = "Some big guy. For you." + clockwork_desc = "One of Ratvar's generals." + alpha = 200 + layer = MASSIVE_OBJ_LAYER + +/obj/effect/clockwork/general_marker/New() + ..() + playsound(src, 'sound/magic/clockwork/invoke_general.ogg', 50, 0) + animate(src, alpha = 0, time = 10) + QDEL_IN(src, 10) + +/obj/effect/clockwork/general_marker/nezbere + name = "Nezbere, the Brass Eidolon" + desc = "A towering colossus clad in nigh-impenetrable brass armor. Its gaze is stern yet benevolent, even upon you." + clockwork_desc = "One of Ratvar's four generals. Nezbere is responsible for the design, testing, and creation of everything in Ratvar's domain." + icon = 'icons/effects/340x428.dmi' + icon_state = "nezbere" + pixel_x = -154 + pixel_y = -198 + +/obj/effect/clockwork/general_marker/sevtug + name = "Sevtug, the Formless Pariah" + desc = "A sinister cloud of purple energy. Looking at it gives you a headache." + clockwork_desc = "One of Ratvar's four generals. Sevtug taught him how to manipulate minds and is one of his oldest allies." + icon = 'icons/effects/211x247.dmi' + icon_state = "sevtug" + pixel_x = -89 + pixel_y = -107 + +/obj/effect/clockwork/general_marker/nzcrentr + name = "Nzcrentr, the Forgotten Arbiter" + desc = "A terrifying war machine crackling with limitless energy." + clockwork_desc = "One of Ratvar's four generals. Nzcrentr is the result of Neovgre - Nezbere's finest war machine, commandeerable only be a mortal - fusing with its pilot and driving her \ + insane. Nzcrentr seeks out any and all sentient life to slaughter it for sport." + icon = 'icons/effects/254x361.dmi' + icon_state = "nzcrentr" + pixel_x = -111 + pixel_y = -164 + +/obj/effect/clockwork/general_marker/inathneq + name = "Inath-Neq, the Resonant Cogwheel" + desc = "A humanoid form blazing with blue fire. It radiates an aura of kindness and caring." + clockwork_desc = "One of Ratvar's four generals. Before her current form, Inath-Neq was a powerful warrior priestess commanding the Resonant Cogs, a sect of Ratvarian warriors renowned for \ + their prowess. After a lost battle with Nar-Sian cultists, Inath-Neq was struck down and stated in her dying breath, \ + \"The Resonant Cogs shall not fall silent this day, but will come together to form a wheel that shall never stop turning.\" Ratvar, touched by this, granted Inath-Neq an eternal body and \ + merged her soul with those of the Cogs slain with her on the battlefield." + icon = 'icons/effects/187x381.dmi' + icon_state = "inath-neq" + pixel_x = -77 + pixel_y = -174 + + +/obj/effect/clockwork/sigil //Sigils: Rune-like markings on the ground with various effects. + name = "sigil" + desc = "A strange set of markings drawn on the ground." + clockwork_desc = "A sigil of some purpose." + icon_state = "sigil" + layer = LOW_OBJ_LAYER + alpha = 50 + burn_state = FIRE_PROOF + burntime = 1 + var/affects_servants = FALSE + var/stat_affected = CONSCIOUS + +/obj/effect/clockwork/sigil/attack_hand(mob/user) + if(iscarbon(user) && !user.stat && (!is_servant_of_ratvar(user) || (is_servant_of_ratvar(user) && user.a_intent == "harm"))) + user.visible_message("[user] stamps out [src]!", "You stomp on [src], scattering it into thousands of particles.") + qdel(src) + return 1 + ..() + +/obj/effect/clockwork/sigil/Crossed(atom/movable/AM) + ..() + if(isliving(AM)) + var/mob/living/L = AM + if(L.stat <= stat_affected) + if((!is_servant_of_ratvar(L) || (is_servant_of_ratvar(L) && affects_servants)) && L.mind) + if(L.null_rod_check()) + var/obj/item/I = L.null_rod_check() + L.visible_message("[L]'s [I.name] protects them from [src]'s effects!", "Your [I.name] protects you!") + return + sigil_effects(L) + return 1 + +/obj/effect/clockwork/sigil/proc/sigil_effects(mob/living/L) + +/obj/effect/clockwork/sigil/transgression //Sigil of Transgression: Stuns and flashes the first non-servant to walk on it. Nar-Sian cultists are damaged and knocked down for about twice the stun + name = "dull sigil" + desc = "A dull, barely-visible golden sigil. It's as though light was carved into the ground." + icon = 'icons/effects/clockwork_effects.dmi' + clockwork_desc = "A sigil that will stun the first non-servant to cross it. Nar-Sie's dogs will be knocked down." + icon_state = "sigildull" + color = "#FAE48C" + +/obj/effect/clockwork/sigil/transgression/sigil_effects(mob/living/L) + var/target_flashed = L.flash_eyes() + for(var/mob/living/M in viewers(5, src)) + if(!is_servant_of_ratvar(M) && M != L) + M.flash_eyes() + if(iscultist(L)) + L << "\"Watch your step, wretch.\"" + L.adjustBruteLoss(10) + L.Weaken(4) + L.visible_message("[src] appears around [L] in a burst of light!", \ + "[target_flashed ? "An unseen force":"The glowing sigil around you"] holds you in place!") + L.Stun(3) + PoolOrNew(/obj/effect/overlay/temp/ratvar/sigil/transgression, get_turf(src)) + qdel(src) + return 1 + +/obj/effect/clockwork/sigil/submission //Sigil of Submission: After a short time, converts any non-servant standing on it. Knocks down and silences them for five seconds afterwards. + name = "ominous sigil" + desc = "A luminous golden sigil. Something about it really bothers you." + clockwork_desc = "A sigil that will enslave the first person to cross it, provided they remain on it for five seconds." + icon_state = "sigilsubmission" + color = "#FAE48C" + alpha = 125 + stat_affected = UNCONSCIOUS + var/convert_time = 50 + var/glow_light = 2 //soft light + var/glow_falloff = 1 + var/delete_on_finish = TRUE + var/sigil_name = "Sigil of Submission" + var/glow_type + +/obj/effect/clockwork/sigil/submission/New() + ..() + set_light(glow_light,glow_falloff) + +/obj/effect/clockwork/sigil/submission/proc/post_channel(mob/living/L) + +/obj/effect/clockwork/sigil/submission/sigil_effects(mob/living/L) + visible_message("[src] begins to glow a piercing magenta!") + animate(src, color = "#AF0AAF", time = convert_time) + var/obj/effect/overlay/temp/ratvar/sigil/glow + if(glow_type) + glow = PoolOrNew(glow_type, get_turf(src)) + animate(glow, alpha = 255, time = convert_time) + var/I = 0 + while(I < convert_time && get_turf(L) == get_turf(src)) + I++ + sleep(1) + if(get_turf(L) != get_turf(src)) + if(glow) + qdel(glow) + animate(src, color = initial(color), time = 20) + visible_message("[src] slowly stops glowing!") + return 0 + post_channel(L) + if(is_eligible_servant(L)) + L << "\"You belong to me now.\"" + add_servant_of_ratvar(L) + L.Weaken(3) //Completely defenseless for about five seconds - mainly to give them time to read over the information they've just been presented with + L.Stun(3) + if(iscarbon(L)) + var/mob/living/carbon/C = L + C.silent += 5 + var/message = "[sigil_name] in [get_area(src)] [is_servant_of_ratvar(L) ? "successfully converted" : "failed to convert"]" + for(var/M in mob_list) + if(isobserver(M)) + var/link = FOLLOW_LINK(M, L) + M << "[link] [message] [L.real_name]!" + else if(is_servant_of_ratvar(M)) + if(M == L) + M << "[message] you!" + else + M << "[message] [L.real_name]!" + if(delete_on_finish) + qdel(src) + else + animate(src, color = initial(color), time = 20) + visible_message("[src] slowly stops glowing!") + return 1 + +/obj/effect/clockwork/sigil/submission/accession //Sigil of Accession: After a short time, converts any non-servant standing on it though implants. Knocks down and silences them for five seconds afterwards. + name = "terrifying sigil" + desc = "A luminous brassy sigil. Something about it makes you want to flee." + clockwork_desc = "A sigil that will enslave any person who crosses it, provided they remain on it for five seconds. \n\ + It can convert a mindshielded target once before disppearing, but can convert any number of non-implanted targets." + icon_state = "sigiltransgression" + color = "#A97F1B" + alpha = 200 + glow_light = 4 //bright light + glow_falloff = 3 + delete_on_finish = FALSE + sigil_name = "Sigil of Accession" + glow_type = /obj/effect/overlay/temp/ratvar/sigil/accession + +/obj/effect/clockwork/sigil/submission/accession/post_channel(mob/living/L) + if(isloyal(L)) + delete_on_finish = TRUE + L.visible_message("[L] visibly trembles!", \ + "Lbh jvyy or zvar-naq-uvf. Guvf chal gevaxrg jvyy abg fgbc zr.") + for(var/obj/item/weapon/implant/mindshield/M in L) + if(M.implanted) + qdel(M) + +/obj/effect/clockwork/sigil/transmission + name = "suspicious sigil" + desc = "A glowing orange sigil. The air around it feels staticky." + clockwork_desc = "A sigil that will serve as a battery for clockwork structures. Use Volt Void while standing on it to charge it." + icon_state = "sigiltransmission" + color = "#EC8A2D" + alpha = 50 + var/power_charge = 2500 //starts with 2500W by default + +/obj/effect/clockwork/sigil/transmission/examine(mob/user) + ..() + if(is_servant_of_ratvar(user) || isobserver(user)) + user << "It is storing [power_charge]W of power." + +/obj/effect/clockwork/sigil/transmission/sigil_effects(mob/living/L) + if(power_charge) + L << "You feel a slight, static shock." + return 1 + +/obj/effect/clockwork/sigil/transmission/New() + ..() + alpha = min(initial(alpha) + power_charge*0.02, 255) + +/obj/effect/clockwork/sigil/transmission/proc/modify_charge(amount) + if(power_charge - amount < 0) + return 0 + power_charge -= amount + alpha = min(initial(alpha) + power_charge*0.02, 255) + return 1 + +/obj/effect/clockwork/sigil/vitality + name = "comforting sigil" + desc = "A faint blue sigil. Looking at it makes you feel protected." + clockwork_desc = "A sigil that will drain non-servants that remain on it. Servants that remain on it will be healed if it has any vitality drained." + icon_state = "sigilvitality" + color = "#123456" + alpha = 75 + affects_servants = TRUE + stat_affected = DEAD + var/vitality = 0 + var/base_revive_cost = 20 + var/sigil_active = FALSE + var/animation_number = 3 //each cycle increments this by 1, at 4 it produces an animation and resets + +/obj/effect/clockwork/sigil/vitality/examine(mob/user) + ..() + if(is_servant_of_ratvar(user) || isobserver(user)) + user << "It is storing [vitality] units of vitality." + user << "It requires at least [base_revive_cost] units of vitality to revive dead servants, in addition to any damage the servant has." + +/obj/effect/clockwork/sigil/vitality/sigil_effects(mob/living/L) + if(L.suiciding || sigil_active || !is_servant_of_ratvar(L) && L.stat == DEAD) + return 0 + visible_message("[src] begins to glow bright blue!") + animate(src, alpha = 255, time = 10) + sleep(10) + sigil_active = TRUE +//as long as they're still on the sigil and are either not a servant or they're a servant AND it has remaining vitality + while(L && (!is_servant_of_ratvar(L) && L.stat != DEAD || (is_servant_of_ratvar(L) && vitality)) && get_turf(L) == get_turf(src)) + if(animation_number >= 4) + PoolOrNew(/obj/effect/overlay/temp/ratvar/sigil/vitality, get_turf(src)) + animation_number = 0 + animation_number++ + if(!is_servant_of_ratvar(L)) + var/vitality_drained = L.adjustToxLoss(1.5) + if(vitality_drained) + vitality += vitality_drained + else + break + else + var/clone_to_heal = L.getCloneLoss() + var/tox_to_heal = L.getToxLoss() + var/burn_to_heal = L.getFireLoss() + var/brute_to_heal = L.getBruteLoss() + var/oxy_to_heal = L.getOxyLoss() + var/total_damage = clone_to_heal + tox_to_heal + burn_to_heal + brute_to_heal + oxy_to_heal + if(L.stat == DEAD) + var/revival_cost = base_revive_cost + total_damage - oxy_to_heal //ignores oxygen damage + var/mob/dead/observer/ghost = L.get_ghost(TRUE) + if(ghost) + if(vitality >= revival_cost) + ghost.reenter_corpse() + L.revive(1, 1) + playsound(L, 'sound/magic/Staff_Healing.ogg', 50, 1) + L.visible_message("[L] suddenly gets back up, their mouth dripping blue ichor!", "\"Lbh jvyy or bxnl, puvyq.\"") + vitality -= revival_cost + break + else + break + if(!total_damage) + break + var/vitality_for_cycle = min(vitality, 3) + + if(clone_to_heal && vitality_for_cycle) + var/healing = min(vitality_for_cycle, clone_to_heal) + vitality_for_cycle -= healing + L.adjustCloneLoss(-healing) + vitality -= healing + + if(tox_to_heal && vitality_for_cycle) + var/healing = min(vitality_for_cycle, tox_to_heal) + vitality_for_cycle -= healing + L.adjustToxLoss(-healing) + vitality -= healing + + if(burn_to_heal && vitality_for_cycle) + var/healing = min(vitality_for_cycle, burn_to_heal) + vitality_for_cycle -= healing + L.adjustFireLoss(-healing) + vitality -= healing + + if(brute_to_heal && vitality_for_cycle) + var/healing = min(vitality_for_cycle, brute_to_heal) + vitality_for_cycle -= healing + L.adjustBruteLoss(-healing) + vitality -= healing + + if(oxy_to_heal && vitality_for_cycle) + var/healing = min(vitality_for_cycle, oxy_to_heal) + vitality_for_cycle -= healing + L.adjustOxyLoss(-healing) + vitality -= healing + sleep(2) + + animation_number = initial(animation_number) + sigil_active = FALSE + animate(src, alpha = initial(alpha), time = 20) + visible_message("[src] slowly stops glowing!") diff --git a/code/game/gamemodes/clock_cult/clock_structures/ark_of_the_clockwork_justicar.dm b/code/game/gamemodes/clock_cult/clock_structures/ark_of_the_clockwork_justicar.dm deleted file mode 100644 index a8453e76ef..0000000000 --- a/code/game/gamemodes/clock_cult/clock_structures/ark_of_the_clockwork_justicar.dm +++ /dev/null @@ -1,248 +0,0 @@ -//The gateway to Reebe, from which Ratvar emerges. -/obj/structure/destructible/clockwork/massive/celestial_gateway - name = "Gateway to the Celestial Derelict" - desc = "A massive, thrumming rip in spacetime." - clockwork_desc = "A portal to the Celestial Derelict. Massive and intimidating, it is the only thing that can both transport Ratvar and withstand the massive amount of energy he emits." - obj_integrity = 600 - max_integrity = 600 - mouse_opacity = 2 - icon = 'icons/effects/clockwork_effects.dmi' - icon_state = "nothing" - density = FALSE - invisibility = INVISIBILITY_MAXIMUM - resistance_flags = FIRE_PROOF | ACID_PROOF | INDESTRUCTIBLE - can_be_repaired = FALSE - var/progress_in_seconds = 0 //Once this reaches GATEWAY_RATVAR_ARRIVAL, it's game over - var/purpose_fulfilled = FALSE - var/first_sound_played = FALSE - var/second_sound_played = FALSE - var/third_sound_played = FALSE - var/ratvar_portal = TRUE //if the gateway actually summons ratvar or just produces a hugeass conversion burst - var/obj/effect/clockwork/overlay/gateway_glow/glow - var/obj/effect/countdown/clockworkgate/countdown - -/obj/structure/destructible/clockwork/massive/celestial_gateway/New() - ..() - addtimer(src, "spawn_animation", 0) - -/obj/structure/destructible/clockwork/massive/celestial_gateway/proc/spawn_animation() - var/turf/T = get_turf(src) - var/objective_is_gateway = (ticker && ticker.mode && ticker.mode.clockwork_objective == CLOCKCULT_GATEWAY) - new/obj/effect/clockwork/general_marker/inathneq(T) - if(objective_is_gateway) - hierophant_message("\"[text2ratvar("Engine, come forth and show your servants your mercy")]!\"") - else - hierophant_message("\"[text2ratvar("We will show all the mercy of Engine")]!\"") - playsound(T, 'sound/magic/clockwork/invoke_general.ogg', 30, 0) - sleep(10) - new/obj/effect/clockwork/general_marker/sevtug(T) - if(objective_is_gateway) - hierophant_message("\"[text2ratvar("Engine, come forth and show this station your decorating skills")]!\"") - else - hierophant_message("\"[text2ratvar("We will show all Engine's decorating skills")]!\"") - playsound(T, 'sound/magic/clockwork/invoke_general.ogg', 45, 0) - sleep(10) - new/obj/effect/clockwork/general_marker/nezbere(T) - if(objective_is_gateway) - hierophant_message("\"[text2ratvar("Engine, come forth and shine your light across this realm")]!!\"") - else - hierophant_message("\"[text2ratvar("We will show all Engine's light")]!!\"") - playsound(T, 'sound/magic/clockwork/invoke_general.ogg', 60, 0) - sleep(10) - new/obj/effect/clockwork/general_marker/nzcrentr(T) - if(objective_is_gateway) - hierophant_message("\"[text2ratvar("Engine, come forth")].\"") - else - hierophant_message("\"[text2ratvar("We will show all Engine's power")].\"") - playsound(T, 'sound/magic/clockwork/invoke_general.ogg', 75, 0) - sleep(10) - playsound(T, 'sound/magic/clockwork/invoke_general.ogg', 100, 0) - var/list/open_turfs = list() - for(var/turf/open/OT in orange(1, T)) - if(!is_blocked_turf(OT)) - open_turfs |= OT - if(open_turfs.len) - for(var/mob/living/L in T) - L.forceMove(pick(open_turfs)) - resistance_flags &= ~INDESTRUCTIBLE - density = TRUE - invisibility = 0 - glow = new(get_turf(src)) - countdown = new(src) - countdown.start() - var/area/gate_area = get_area(src) - hierophant_message("A gateway to the Celestial Derelict has been created in [gate_area.map_name]!", FALSE, src) - if(!objective_is_gateway) - ratvar_portal = FALSE - hierophant_message("This newly constructed gateway will not free Ratvar, \ - and will instead simply proselytize and convert everything and everyone on the station.", TRUE) - SSshuttle.registerHostileEnvironment(src) - START_PROCESSING(SSprocessing, src) - -/obj/structure/destructible/clockwork/massive/celestial_gateway/Destroy() - STOP_PROCESSING(SSprocessing, src) - if(!purpose_fulfilled) - var/area/gate_area = get_area(src) - hierophant_message("A gateway to the Celestial Derelict has fallen at [gate_area.map_name]!") - send_to_playing_players(sound(null, 0, channel = 8)) - var/was_stranded = SSshuttle.emergency.mode == SHUTTLE_STRANDED - SSshuttle.clearHostileEnvironment(src) - if(!was_stranded && !purpose_fulfilled && second_sound_played) - priority_announce("Massive energy anomaly no longer on short-range scanners.","Anomaly Alert") - if(glow) - qdel(glow) - glow = null - if(countdown) - qdel(countdown) - countdown = null - . = ..() - -/obj/structure/destructible/clockwork/massive/celestial_gateway/deconstruct(disassembled = TRUE) - if(!(flags & NODECONSTRUCT)) - if(!disassembled) - resistance_flags |= INDESTRUCTIBLE - countdown.stop() - visible_message("The [src] begins to pulse uncontrollably... you might want to run!") - send_to_playing_players(sound('sound/effects/clockcult_gateway_disrupted.ogg', 0, channel = 8, volume = 50)) - make_glow() - glow.icon_state = "clockwork_gateway_disrupted" - resistance_flags |= INDESTRUCTIBLE - sleep(27) - explosion(src, 1, 3, 8, 8) - qdel(src) - -/obj/structure/destructible/clockwork/massive/celestial_gateway/proc/make_glow() - if(!glow) - glow = PoolOrNew(/obj/effect/clockwork/overlay/gateway_glow, get_turf(src)) - glow.linked = src - -/obj/structure/destructible/clockwork/massive/celestial_gateway/ex_act(severity) - var/damage = max((obj_integrity * 0.70) / severity, 100) //requires multiple bombs to take down - take_damage(damage, BRUTE, "bomb", 0) - -/obj/structure/destructible/clockwork/massive/celestial_gateway/proc/get_arrival_text(s_on_time) - . = "IMMINENT" - if(!obj_integrity) - . = "DETONATING" - else if(GATEWAY_RATVAR_ARRIVAL - progress_in_seconds > 0) - . = "[round(max((GATEWAY_RATVAR_ARRIVAL - progress_in_seconds) / (GATEWAY_SUMMON_RATE), 0), 1)][s_on_time ? "S":""]" - -/obj/structure/destructible/clockwork/massive/celestial_gateway/examine(mob/user) - icon_state = "spatial_gateway" //cheat wildly by pretending to have an icon - ..() - icon_state = initial(icon_state) - if(is_servant_of_ratvar(user) || isobserver(user)) - user << "Seconds until [ratvar_portal ? "Ratvar's arrival":"Proselytization"]: [get_arrival_text(TRUE)]" - switch(progress_in_seconds) - if(-INFINITY to GATEWAY_REEBE_FOUND) - user << "It's still opening." - if(GATEWAY_REEBE_FOUND to GATEWAY_RATVAR_COMING) - user << "It's reached the Celestial Derelict and is drawing power from it." - if(GATEWAY_RATVAR_COMING to INFINITY) - user << "[ratvar_portal ? "Ratvar is coming through the gateway":"The gateway is glowing with massed power"]!" - else - switch(progress_in_seconds) - if(-INFINITY to GATEWAY_REEBE_FOUND) - user << "It's a swirling mass of blackness." - if(GATEWAY_REEBE_FOUND to GATEWAY_RATVAR_COMING) - user << "It seems to be leading somewhere." - if(GATEWAY_RATVAR_COMING to INFINITY) - user << "[ratvar_portal ? "Something is coming through":"It's glowing brightly"]!" - -/obj/structure/destructible/clockwork/massive/celestial_gateway/process() - if(!progress_in_seconds || prob(7)) - for(var/M in player_list) - if(M && !isnewplayer(M)) - M << "You hear otherworldly sounds from the [dir2text(get_dir(get_turf(M), get_turf(src)))]..." - if(!obj_integrity) - return 0 - for(var/t in RANGE_TURFS(1, loc)) - if(iswallturf(t)) - var/turf/closed/wall/W = t - W.dismantle_wall() - else if(t && (isclosedturf(t) || !is_blocked_turf(t))) - var/turf/T = t - T.ChangeTurf(/turf/open/floor/clockwork) - for(var/obj/O in orange(1, src)) - if(!istype(O, /obj/effect) && O.density) - if(!step_away(O, src, 2) || get_dist(O, src) < 2) - O.take_damage(50, BURN, "bomb") - O.update_icon() - progress_in_seconds += GATEWAY_SUMMON_RATE - switch(progress_in_seconds) - if(-INFINITY to GATEWAY_REEBE_FOUND) - if(!first_sound_played) - send_to_playing_players(sound('sound/effects/clockcult_gateway_charging.ogg', 1, channel = 8, volume = 30)) - first_sound_played = TRUE - make_glow() - glow.icon_state = "clockwork_gateway_charging" - if(GATEWAY_REEBE_FOUND to GATEWAY_RATVAR_COMING) - if(!second_sound_played) - var/area/gate_area = get_area(src) - priority_announce("Massive energy anomaly detected on short-range scanners. Location: [gate_area.map_name].", "Anomaly Alert") - send_to_playing_players(sound('sound/effects/clockcult_gateway_active.ogg', 1, channel = 8, volume = 35)) - second_sound_played = TRUE - make_glow() - glow.icon_state = "clockwork_gateway_active" - if(GATEWAY_RATVAR_COMING to GATEWAY_RATVAR_ARRIVAL) - if(!third_sound_played) - send_to_playing_players(sound('sound/effects/clockcult_gateway_closing.ogg', 1, channel = 8, volume = 40)) - third_sound_played = TRUE - make_glow() - glow.icon_state = "clockwork_gateway_closing" - if(GATEWAY_RATVAR_ARRIVAL to INFINITY) - if(!purpose_fulfilled) - countdown.stop() - resistance_flags |= INDESTRUCTIBLE - purpose_fulfilled = TRUE - make_glow() - animate(glow, transform = matrix() * 1.5, alpha = 255, time = 125) - send_to_playing_players(sound('sound/effects/ratvar_rises.ogg', 0, channel = 8)) //End the sounds - sleep(125) - make_glow() - animate(glow, transform = matrix() * 3, alpha = 0, time = 5) - var/turf/startpoint = get_turf(src) - QDEL_IN(src, 3) - clockwork_gateway_activated = TRUE - if(ratvar_portal) - sleep(3) - new/obj/structure/destructible/clockwork/massive/ratvar(startpoint) - else - addtimer(SSshuttle.emergency, "request", 0, TIMER_NORMAL, null, 0) //call the shuttle immediately - sleep(3) - send_to_playing_players("\"[text2ratvar("Behold")]!\"\n\"[text2ratvar("See Engine's mercy")]!\"\n\ - \"[text2ratvar("Observe Engine's design skills")]!\"\n\"[text2ratvar("Behold Engine's light")]!!\"\n\ - \"[text2ratvar("Gaze upon Engine's power")]!\"") - send_to_playing_players('sound/magic/clockwork/invoke_general.ogg') - var/x0 = startpoint.x - var/y0 = startpoint.y - for(var/I in spiral_range_turfs(255, startpoint)) - var/turf/T = I - if(!T) - continue - var/dist = cheap_hypotenuse(T.x, T.y, x0, y0) - if(dist < 100) - dist = TRUE - else - dist = FALSE - T.ratvar_act(dist) - CHECK_TICK - for(var/mob/living/silicon/robot/R in silicon_mobs) - if(R && R.stat != DEAD && !is_servant_of_ratvar(R)) - add_servant_of_ratvar(R) - for(var/i in ai_list) - var/mob/living/silicon/ai/A = i - if(A && A.stat != DEAD && !is_servant_of_ratvar(A)) - add_servant_of_ratvar(A) - for(var/I in all_clockwork_mobs) - var/mob/M = I - if(M.stat == CONSCIOUS) - clockwork_say(M, text2ratvar(pick("Purge all untruths and honor Engine!", "All glory to Engine's light!", "Engine's power is unmatched!"))) - -//the actual appearance of the Gateway to the Celestial Derelict; an object so the edges of the gate can be clicked through. -/obj/effect/clockwork/overlay/gateway_glow - icon = 'icons/effects/96x96.dmi' - icon_state = "clockwork_gateway_charging" - pixel_x = -32 - pixel_y = -32 - layer = BELOW_OPEN_DOOR_LAYER diff --git a/code/game/gamemodes/clock_cult/clock_structures/clock_shells.dm b/code/game/gamemodes/clock_cult/clock_structures/clock_shells.dm deleted file mode 100644 index 26d93d0c31..0000000000 --- a/code/game/gamemodes/clock_cult/clock_structures/clock_shells.dm +++ /dev/null @@ -1,48 +0,0 @@ -//Useless on their own, these shells can create powerful constructs. -/obj/structure/destructible/clockwork/shell - construction_value = 0 - anchored = 0 - density = 0 - resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | ACID_PROOF - var/mobtype = /mob/living/simple_animal/hostile/clockwork - var/spawn_message = " is an error and you should yell at whoever spawned this shell." - -/obj/structure/destructible/clockwork/shell/attackby(obj/item/I, mob/living/user, params) - if(istype(I, /obj/item/device/mmi/posibrain/soul_vessel)) - if(!is_servant_of_ratvar(user)) - ..() - return 0 - var/obj/item/device/mmi/posibrain/soul_vessel/S = I - if(!S.brainmob) - user << "[S] is inactive! Turn it on or capture a mind first." - return 0 - if(S.brainmob && (!S.brainmob.client || !S.brainmob.mind)) - user << "[S]'s trapped consciousness appears inactive!" - return 0 - user.visible_message("[user] places [S] in [src], where it fuses to the shell.", "You place [S] in [src], fusing it to the shell.") - var/mob/living/simple_animal/A = new mobtype(get_turf(src)) - A.visible_message("[src][spawn_message]") - S.brainmob.mind.transfer_to(A) - A.fully_replace_character_name(null, "[initial(A.name)] ([S.brainmob.name])") - user.drop_item() - qdel(S) - qdel(src) - return 1 - else - return ..() - -/obj/structure/destructible/clockwork/shell/cogscarab - name = "cogscarab shell" - desc = "A small brass shell with a cube-shaped receptable in its center. It gives off an aura of obsessive perfectionism." - clockwork_desc = "A dormant receptable that, when powered with a soul vessel, will become a weak construct with an inbuilt proselytizer." - icon_state = "clockdrone_shell" - mobtype = /mob/living/simple_animal/drone/cogscarab - spawn_message = "'s eyes blink open, glowing bright red." - -/obj/structure/destructible/clockwork/shell/fragment - name = "fragment shell" - desc = "A massive brass shell with a small cube-shaped receptable in its center. It gives off an aura of contained power." - clockwork_desc = "A dormant receptable that, when powered with a soul vessel, will become a powerful construct." - icon_state = "anime_fragment" - mobtype = /mob/living/simple_animal/hostile/clockwork/fragment - spawn_message = " whirs and rises from the ground on a flickering jet of reddish fire." diff --git a/code/game/gamemodes/clock_cult/clock_structures/clockwork_obelisk.dm b/code/game/gamemodes/clock_cult/clock_structures/clockwork_obelisk.dm deleted file mode 100644 index 4559d95f47..0000000000 --- a/code/game/gamemodes/clock_cult/clock_structures/clockwork_obelisk.dm +++ /dev/null @@ -1,95 +0,0 @@ -//Clockwork Obelisk: Can broadcast a message at a small power cost or outright open a spatial gateway at a massive power cost. -/obj/structure/destructible/clockwork/powered/clockwork_obelisk - name = "clockwork obelisk" - desc = "A large brass obelisk hanging in midair." - clockwork_desc = "A powerful obelisk that can send a message to all servants or open a gateway to a target servant or clockwork obelisk." - icon_state = "obelisk_inactive" - active_icon = "obelisk" - inactive_icon = "obelisk_inactive" - unanchored_icon = "obelisk_unwrenched" - construction_value = 20 - max_integrity = 150 - obj_integrity = 150 - break_message = "The obelisk falls to the ground, undamaged!" - debris = list(/obj/item/clockwork/alloy_shards/small = 3, \ - /obj/item/clockwork/component/hierophant_ansible/obelisk = 1) - var/hierophant_cost = MIN_CLOCKCULT_POWER //how much it costs to broadcast with large text - var/gateway_cost = 2000 //how much it costs to open a gateway - -/obj/structure/destructible/clockwork/powered/clockwork_obelisk/New() - ..() - toggle(1) - -/obj/structure/destructible/clockwork/powered/clockwork_obelisk/examine(mob/user) - ..() - if(is_servant_of_ratvar(user) || isobserver(user)) - user << "It requires [hierophant_cost]W to broadcast over the Hierophant Network, and [gateway_cost]W to open a Spatial Gateway." - -/obj/structure/destructible/clockwork/powered/clockwork_obelisk/can_be_unfasten_wrench(mob/user) - if(active) - user << "[src] is currently sustaining a gateway!" - return FAILED_UNFASTEN - return ..() - -/obj/structure/destructible/clockwork/powered/clockwork_obelisk/forced_disable(bad_effects) - var/affected = 0 - for(var/obj/effect/clockwork/spatial_gateway/SG in loc) - SG.ex_act(1) - affected++ - if(bad_effects) - affected += try_use_power(MIN_CLOCKCULT_POWER*2) - return affected - -/obj/structure/destructible/clockwork/powered/clockwork_obelisk/attack_hand(mob/living/user) - if(!is_servant_of_ratvar(user) || total_accessable_power() < hierophant_cost || !anchored) - user << "You place your hand on the obelisk, but it doesn't react." - return - var/choice = alert(user,"You place your hand on the obelisk...",,"Hierophant Broadcast","Spatial Gateway","Cancel") - switch(choice) - if("Hierophant Broadcast") - if(active) - user << "The obelisk is sustaining a gateway and cannot broadcast!" - return - if(!user.can_speak_vocal()) - user << "You cannot speak through the obelisk!" - return - var/input = stripped_input(usr, "Please choose a message to send over the Hierophant Network.", "Hierophant Broadcast", "") - if(!is_servant_of_ratvar(user) || !input || !user.canUseTopic(src, !issilicon(user))) - return - if(active) - user << "The obelisk is sustaining a gateway and cannot broadcast!" - return - if(!try_use_power(hierophant_cost)) - user << "The obelisk lacks the power to broadcast!" - return - if(!user.can_speak_vocal()) - user << "You cannot speak through the obelisk!" - return - clockwork_say(user, text2ratvar("Hierophant Broadcast, activate! [html_decode(input)]")) - titled_hierophant_message(user, input, "big_brass", "large_brass") - if("Spatial Gateway") - if(active) - user << "The obelisk is already sustaining a gateway!" - return - if(!try_use_power(gateway_cost)) - user << "The obelisk lacks the power to open a gateway!" - return - if(!user.can_speak_vocal()) - user << "You need to be able to speak to open a gateway!" - return - if(procure_gateway(user, round(100 * get_efficiency_mod(), 1), round(5 * get_efficiency_mod(), 1), 1) && !active) - clockwork_say(user, text2ratvar("Spatial Gateway, activate!")) - else - return_power(gateway_cost) - -/obj/structure/destructible/clockwork/powered/clockwork_obelisk/process() - if(!anchored) - return - if(locate(/obj/effect/clockwork/spatial_gateway) in loc) - icon_state = active_icon - density = 0 - active = TRUE - else - icon_state = inactive_icon - density = 1 - active = FALSE diff --git a/code/game/gamemodes/clock_cult/clock_structures/interdiction_lens.dm b/code/game/gamemodes/clock_cult/clock_structures/interdiction_lens.dm deleted file mode 100644 index d9b1d42fd5..0000000000 --- a/code/game/gamemodes/clock_cult/clock_structures/interdiction_lens.dm +++ /dev/null @@ -1,120 +0,0 @@ -//Interdiction Lens: A powerful artifact that constantly disrupts electronics and drains power but, if it fails to find something to disrupt, turns off. -/obj/structure/destructible/clockwork/powered/interdiction_lens - name = "interdiction lens" - desc = "An ominous, double-pronged brass totem. There's a strange gemstone clasped between the pincers." - clockwork_desc = "A powerful totem that constantly drains nearby electronics and funnels the power drained into nearby Sigils of Transmission or the area's APC." - icon_state = "interdiction_lens" - construction_value = 20 - active_icon = "interdiction_lens_active" - inactive_icon = "interdiction_lens" - unanchored_icon = "interdiction_lens_unwrenched" - break_message = "The lens flares a blinding violet before shattering!" - break_sound = 'sound/effects/Glassbr3.ogg' - var/recharging = 0 //world.time when the lens was last used - var/recharge_time = 1200 //if it drains no power and affects no objects, it turns off for two minutes - var/disabled = FALSE //if it's actually usable - var/interdiction_range = 14 //how large an area it drains and disables in - var/static/list/rage_messages = list("...", "Disgusting.", "Die.", "Foul.", "Worthless.", "Mortal.", "Unfit.", "Weak.", "Fragile.", "Useless.", "Leave my sight!") - -/obj/structure/destructible/clockwork/powered/interdiction_lens/examine(mob/user) - ..() - user << "Its gemstone [recharging > world.time ? "has been breached by writhing tendrils of blackness that cover the totem" \ - : "vibrates in place and thrums with power"]." - if(is_servant_of_ratvar(user) || isobserver(user)) - user << "If it fails to drain any electronics, it will disable itself for [round(recharge_time/600, 1)] minutes." - -/obj/structure/destructible/clockwork/powered/interdiction_lens/toggle(fast_process, mob/living/user) - . = ..() - if(active) - SetLuminosity(4, 2) - else - SetLuminosity(0) - -/obj/structure/destructible/clockwork/powered/interdiction_lens/attack_hand(mob/living/user) - if(user.canUseTopic(src, !issilicon(user))) - if(disabled) - user << "As you place your hand on the gemstone, cold tendrils of black matter crawl up your arm. You quickly pull back." - return 0 - toggle(0, user) - -/obj/structure/destructible/clockwork/powered/interdiction_lens/forced_disable(bad_effects) - if(disabled) - return FALSE - if(!active) - toggle(0) - visible_message("The gemstone suddenly turns horribly dark, writhing tendrils covering it!") - recharging = world.time + recharge_time - flick("interdiction_lens_discharged", src) - icon_state = "interdiction_lens_inactive" - SetLuminosity(2,1) - disabled = TRUE - return TRUE - -/obj/structure/destructible/clockwork/powered/interdiction_lens/process() - . = ..() - if(recharging > world.time) - return - if(disabled) - visible_message("The writhing tendrils return to the gemstone, which begins to glow with power!") - flick("interdiction_lens_recharged", src) - disabled = FALSE - toggle(0) - else - var/successfulprocess = FALSE - var/power_drained = 0 - var/list/atoms_to_test = list() - for(var/A in spiral_range_turfs(interdiction_range, src)) - var/turf/T = A - for(var/M in T) - atoms_to_test |= M - - CHECK_TICK - - var/unconverted_ai = FALSE - var/efficiency = get_efficiency_mod() - var/rage_modifier = get_efficiency_mod(TRUE) - - for(var/i in ai_list) - var/mob/living/silicon/ai/AI = i - if(AI && AI.stat != DEAD && !is_servant_of_ratvar(AI)) - unconverted_ai = TRUE - - for(var/M in atoms_to_test) - var/atom/movable/A = M - if(!A || qdeleted(A) || A == target_apc) - continue - power_drained += (A.power_drain(TRUE) * efficiency) - - if(prob(1 * rage_modifier)) - A << "\"[text2ratvar(pick(rage_messages))]\"" - - if(prob(100 * (efficiency * efficiency))) - if(istype(A, /obj/machinery/camera) && unconverted_ai) - var/obj/machinery/camera/C = A - if(C.isEmpProof() || !C.status) - continue - successfulprocess = TRUE - if(C.emped) - continue - C.emp_act(1) - else if(istype(A, /obj/item/device/radio)) - var/obj/item/device/radio/O = A - successfulprocess = TRUE - if(O.emped || !O.on) - continue - O.emp_act(1) - else if((isliving(A) && !is_servant_of_ratvar(A)) || istype(A, /obj/structure/closet) || istype(A, /obj/item/weapon/storage)) //other things may have radios in them but we don't care - for(var/obj/item/device/radio/O in A.GetAllContents()) - successfulprocess = TRUE - if(O.emped || !O.on) - continue - O.emp_act(1) - - CHECK_TICK - - if(power_drained && power_drained >= MIN_CLOCKCULT_POWER && return_power(power_drained)) - successfulprocess = TRUE - playsound(src, 'sound/items/PSHOOM.ogg', 50 * efficiency, 1, interdiction_range-7, 1) - - if(!successfulprocess) - forced_disable() diff --git a/code/game/gamemodes/clock_cult/clock_structures/mania_motor.dm b/code/game/gamemodes/clock_cult/clock_structures/mania_motor.dm deleted file mode 100644 index aeb4945a2d..0000000000 --- a/code/game/gamemodes/clock_cult/clock_structures/mania_motor.dm +++ /dev/null @@ -1,152 +0,0 @@ -//Mania Motor: A pair of antenna that, while active, cause braindamage and hallucinations in nearby human mobs. -/obj/structure/destructible/clockwork/powered/mania_motor - name = "mania motor" - desc = "A pair of antenna with what appear to be sockets around the base. It reminds you of an antlion." - clockwork_desc = "A transmitter that allows Sevtug to whisper into the minds of nearby non-servants, causing hallucinations and brain damage as long as it remains powered." - icon_state = "mania_motor_inactive" - active_icon = "mania_motor" - inactive_icon = "mania_motor_inactive" - unanchored_icon = "mania_motor_unwrenched" - construction_value = 20 - max_integrity = 80 - obj_integrity = 80 - break_message = "The antenna break off, leaving a pile of shards!" - debris = list(/obj/item/clockwork/alloy_shards/large = 1, \ - /obj/item/clockwork/alloy_shards/small = 3, \ - /obj/item/clockwork/component/geis_capacitor/antennae = 1) - var/mania_cost = 200 - var/convert_attempt_cost = 500 - var/convert_cost = 500 - - var/static/list/mania_messages = list("Go nuts.", "Take a crack at crazy.", "Make a bid for insanity.", "Get kooky.", "Move towards mania.", "Become bewildered.", "Wax wild.", \ - "Go round the bend.", "Land in lunacy.", "Try dementia.", "Strive to get a screw loose.") - var/static/list/compel_messages = list("Come closer.", "Approach the transmitter.", "Touch the antennae.", "I always have to deal with idiots. Move towards the mania motor.", \ - "Advance forward and place your head between the antennae - that's all it's good for.", "If you were smarter, you'd be over here already.", "Move FORWARD, you fool.") - var/static/list/convert_messages = list("You won't do. Go to sleep while I tell these nitwits how to convert you.", "You are insufficient. I must instruct these idiots in the art of conversion.", \ - "Oh of course, someone we can't convert. These servants are fools.", "How hard is it to use a Sigil, anyway? All it takes is dragging someone onto it.", \ - "How do they fail to use a Sigil of Accession, anyway?", "Why is it that all servants are this inept?", "It's quite likely you'll be stuck here for a while.") - var/static/list/close_messages = list("Well, you can't reach the motor from THERE, you moron.", "Interesting location. I'd prefer if you went somewhere you could ACTUALLY TOUCH THE ANTENNAE!", \ - "Amazing. You somehow managed to wedge yourself somewhere you can't actually reach the motor from.", "Such a show of idiocy is unparalleled. Perhaps I should put you on display?", \ - "Did you do this on purpose? I can't imagine you doing so accidentally. Oh, wait, I can.", "How is it that such smart creatures can still do something AS STUPID AS THIS!") - - -/obj/structure/destructible/clockwork/powered/mania_motor/examine(mob/user) - ..() - if(is_servant_of_ratvar(user) || isobserver(user)) - user << "It requires [mania_cost]W to run, and [convert_attempt_cost + convert_cost]W to convert humans adjecent to it." - -/obj/structure/destructible/clockwork/powered/mania_motor/forced_disable(bad_effects) - if(active) - if(bad_effects) - try_use_power(MIN_CLOCKCULT_POWER*2) - visible_message("[src] hums loudly, then the sockets at its base fall dark!") - playsound(src, 'sound/effects/screech.ogg', 40, 1) - toggle() - return TRUE - -/obj/structure/destructible/clockwork/powered/mania_motor/attack_hand(mob/living/user) - if(user.canUseTopic(src, !issilicon(user)) && is_servant_of_ratvar(user)) - if(!total_accessable_power() >= mania_cost) - user << "[src] needs more power to function!" - return 0 - toggle(0, user) - -/obj/structure/destructible/clockwork/powered/mania_motor/toggle(fast_process, mob/living/user) - . = ..() - if(active) - SetLuminosity(2, 1) - else - SetLuminosity(0) - -/obj/structure/destructible/clockwork/powered/mania_motor/process() - if(try_use_power(mania_cost)) - var/turf/T = get_turf(src) - var/hum = get_sfx('sound/effects/screech.ogg') //like playsound, same sound for everyone affected - var/efficiency = get_efficiency_mod() - for(var/mob/living/carbon/human/H in view(1, src)) - if(is_servant_of_ratvar(H) || H.null_rod_check()) - continue - if(H.Adjacent(src) && try_use_power(convert_attempt_cost)) - if(is_eligible_servant(H) && try_use_power(convert_cost)) - H << "\"[text2ratvar("You are mine and his, now.")]\"" - H.playsound_local(T, hum, 80, 1) - add_servant_of_ratvar(H) - H.Paralyse(5) - else if(!H.stat) - if(H.getBrainLoss() >= 100) - H.Paralyse(5) - H << "\"[text2ratvar(pick(convert_messages))]\"" - else - H.adjustBrainLoss(100 * efficiency) - H.visible_message("[H] reaches out and touches [src].", "You touch [src] involuntarily.") - else - visible_message("[src]'s antennae fizzle quietly.") - playsound(src, 'sound/effects/light_flicker.ogg', 50, 1) - for(var/mob/living/carbon/human/H in range(10, src)) - if(is_servant_of_ratvar(H)) - if(H.getBrainLoss() || H.hallucination || H.druggy || H.dizziness || H.confused) - H.adjustBrainLoss(-H.getBrainLoss()) //heals servants of braindamage, hallucination, druggy, dizziness, and confusion - H.hallucination = 0 - H.adjust_drugginess(-H.druggy) - H.dizziness = 0 - H.confused = 0 - else if(!H.null_rod_check() && H.stat == CONSCIOUS) - var/distance = get_dist(T, get_turf(H)) - var/falloff_distance = min((110) - distance * 10, 80) - var/sound_distance = falloff_distance * 0.5 - var/targetbrainloss = H.getBrainLoss() - if(distance >= 4 && prob(falloff_distance * 0.5)) - H << "\"[text2ratvar(pick(mania_messages))]\"" - H.playsound_local(T, hum, sound_distance, 1) - switch(distance) - if(2 to 3) - if(prob(falloff_distance * 0.5)) - if(prob(falloff_distance)) - H << "\"[text2ratvar(pick(mania_messages))]\"" - else - H << "\"[text2ratvar(pick(compel_messages))]\"" - if(targetbrainloss <= 50) - H.adjustBrainLoss((50 * efficiency) - targetbrainloss) //got too close had brain eaten - H.adjust_drugginess(Clamp(7 * efficiency, 0, 100 - H.druggy)) - H.hallucination = min(H.hallucination + (7 * efficiency), 100) - H.dizziness = min(H.dizziness + (3 * efficiency), 45) - H.confused = min(H.confused + (3 * efficiency), 45) - if(4 to 5) - if(targetbrainloss <= 50) - H.adjustBrainLoss(1 * efficiency) - H.adjust_drugginess(Clamp(5 * efficiency, 0, 80 - H.druggy)) - H.hallucination = min(H.hallucination + (5 * efficiency), 80) - H.dizziness = min(H.dizziness + (2 * efficiency), 30) - H.confused = min(H.confused + (2 * efficiency), 30) - if(6 to 7) - if(targetbrainloss <= 30) - H.adjustBrainLoss(1 * efficiency) - H.adjust_drugginess(Clamp(2 * efficiency, 0, 60 - H.druggy)) - H.hallucination = min(H.hallucination + (2 * efficiency), 60) - H.dizziness = min(H.dizziness + (2 * efficiency), 15) - H.confused = min(H.confused + (2 * efficiency), 15) - if(8 to 9) - if(targetbrainloss <= 10) - H.adjustBrainLoss(1 * efficiency) - H.adjust_drugginess(Clamp(2 * efficiency, 0, 40 - H.druggy)) - H.hallucination = min(H.hallucination + (2 * efficiency), 40) - if(10 to INFINITY) - H.adjust_drugginess(Clamp(2 * efficiency, 0, 20 - H.druggy)) - H.hallucination = min(H.hallucination + (2 * efficiency), 20) - else //if it's a distance of 1 and they can't see it/aren't adjacent or they're on top of it(how'd they get on top of it and still trigger this???) - if(prob(falloff_distance * 0.5)) - if(prob(falloff_distance)) - H << "\"[text2ratvar(pick(compel_messages))]\"" - else if(prob(falloff_distance * 0.5)) - H << "\"[text2ratvar(pick(close_messages))]\"" - else - H << "\"[text2ratvar(pick(mania_messages))]\"" - if(targetbrainloss <= 99) - H.adjustBrainLoss((99 * efficiency) - targetbrainloss) - H.adjust_drugginess(Clamp(10 * efficiency, 0, 150 - H.druggy)) - H.hallucination = min(H.hallucination + (10 * efficiency), 150) - H.dizziness = min(H.dizziness + (5 * efficiency), 60) - H.confused = min(H.confused + (5 * efficiency), 60) - - else - forced_disable(FALSE) diff --git a/code/game/gamemodes/clock_cult/clock_structures/mending_motor.dm b/code/game/gamemodes/clock_cult/clock_structures/mending_motor.dm deleted file mode 100644 index 0c8e9759ae..0000000000 --- a/code/game/gamemodes/clock_cult/clock_structures/mending_motor.dm +++ /dev/null @@ -1,146 +0,0 @@ -//Mending Motor: A prism that consumes replicant alloy or power to repair nearby mechanical servants at a quick rate. -/obj/structure/destructible/clockwork/powered/mending_motor - name = "mending motor" - desc = "A dark onyx prism, held in midair by spiraling tendrils of stone." - clockwork_desc = "A powerful prism that rapidly repairs nearby mechanical servants and clockwork structures." - icon_state = "mending_motor_inactive" - active_icon = "mending_motor" - inactive_icon = "mending_motor_inactive" - unanchored_icon = "mending_motor_unwrenched" - construction_value = 20 - max_integrity = 125 - obj_integrity = 125 - break_message = "The prism collapses with a heavy thud!" - debris = list(/obj/item/clockwork/alloy_shards/small = 5, \ - /obj/item/clockwork/alloy_shards/medium = 1, \ - /obj/item/clockwork/alloy_shards/large = 1, \ - /obj/item/clockwork/component/vanguard_cogwheel = 1) - var/stored_alloy = 0 - var/max_alloy = REPLICANT_ALLOY_POWER * 10 - var/heal_attempts = 4 - var/static/list/heal_finish_messages = list("There, all mended!", "Try not to get too damaged.", "No more dents and scratches for you!", "Champions never die.", "All patched up.", \ - "Ah, child, it's okay now.") - var/static/list/heal_failure_messages = list("Pain is temporary.", "What you do for the Justiciar is eternal.", "Bear this for me.", "Be strong, child.", "Please, be careful!", \ - "If you die, you will be remembered.") - var/static/list/mending_motor_typecache = typecacheof(list( - /obj/structure/destructible/clockwork, - /obj/machinery/door/airlock/clockwork, - /obj/machinery/door/window/clockwork, - /obj/structure/window/reinforced/clockwork, - /obj/structure/table/reinforced/brass)) - -/obj/structure/destructible/clockwork/powered/mending_motor/prefilled - stored_alloy = REPLICANT_ALLOY_POWER //starts with 1 replicant alloy's worth of power - -/obj/structure/destructible/clockwork/powered/mending_motor/total_accessable_power() - . = ..() - if(. != INFINITY) - . += accessable_alloy_power() - -/obj/structure/destructible/clockwork/powered/mending_motor/proc/accessable_alloy_power() - return stored_alloy - -/obj/structure/destructible/clockwork/powered/mending_motor/use_power(amount) - var/alloypower = accessable_alloy_power() - while(alloypower >= MIN_CLOCKCULT_POWER && amount >= MIN_CLOCKCULT_POWER) - stored_alloy -= MIN_CLOCKCULT_POWER - alloypower -= MIN_CLOCKCULT_POWER - amount -= MIN_CLOCKCULT_POWER - return ..() - -/obj/structure/destructible/clockwork/powered/mending_motor/examine(mob/user) - ..() - if(is_servant_of_ratvar(user) || isobserver(user)) - user << "It contains [stored_alloy*CLOCKCULT_POWER_TO_ALLOY_MULTIPLIER]/[max_alloy*CLOCKCULT_POWER_TO_ALLOY_MULTIPLIER] units of liquified alloy, \ - which is equivalent to [stored_alloy]W/[max_alloy]W of power." - user << "It requires at least [MIN_CLOCKCULT_POWER]W to attempt to repair clockwork mobs, structures, or converted silicons." - -/obj/structure/destructible/clockwork/powered/mending_motor/forced_disable(bad_effects) - if(active) - if(bad_effects) - try_use_power(MIN_CLOCKCULT_POWER*2) - visible_message("[src] emits an airy chuckling sound and falls dark!") - toggle() - return TRUE - -/obj/structure/destructible/clockwork/powered/mending_motor/attack_hand(mob/living/user) - if(user.canUseTopic(src, !issilicon(user)) && is_servant_of_ratvar(user)) - if(total_accessable_power() < MIN_CLOCKCULT_POWER) - user << "[src] needs more power or replicant alloy to function!" - return 0 - toggle(0, user) - -/obj/structure/destructible/clockwork/powered/mending_motor/attackby(obj/item/I, mob/user, params) - if(istype(I, /obj/item/clockwork/component/replicant_alloy) && is_servant_of_ratvar(user)) - if(stored_alloy + REPLICANT_ALLOY_POWER > max_alloy) - user << "[src] is too full to accept any more alloy!" - return 0 - playsound(user, 'sound/machines/click.ogg', 50, 1) - clockwork_say(user, text2ratvar("Transmute into fuel."), TRUE) - user << "You force [I] to liquify and pour it into [src]'s compartments. \ - It now contains [stored_alloy*CLOCKCULT_POWER_TO_ALLOY_MULTIPLIER]/[max_alloy*CLOCKCULT_POWER_TO_ALLOY_MULTIPLIER] units of liquified alloy." - stored_alloy = stored_alloy + REPLICANT_ALLOY_POWER - user.drop_item() - qdel(I) - return 1 - else - return ..() - -/obj/structure/destructible/clockwork/powered/mending_motor/process() - var/efficiency = get_efficiency_mod() - for(var/atom/movable/M in range(7, src)) - var/turf/T - if(isclockmob(M) || istype(M, /mob/living/simple_animal/drone/cogscarab)) - T = get_turf(M) - var/mob/living/simple_animal/hostile/clockwork/marauder/E = M - var/is_marauder = istype(E) - if(E.health == E.maxHealth || E.stat == DEAD || (is_marauder && !E.fatigue)) - continue - for(var/i in 1 to heal_attempts) - if(E.health < E.maxHealth || (is_marauder && E.fatigue)) - if(try_use_power(MIN_CLOCKCULT_POWER)) - E.adjustHealth(-(8 * efficiency)) - PoolOrNew(/obj/effect/overlay/temp/heal, list(T, "#1E8CE1")) - else - E << "\"[text2ratvar(pick(heal_failure_messages))]\"" - break - else - E << "\"[text2ratvar(pick(heal_finish_messages))]\"" - break - else if(is_type_in_typecache(M, mending_motor_typecache)) - T = get_turf(M) - var/obj/structure/destructible/clockwork/C = M - if(C.obj_integrity == C.max_integrity || (istype(C) && !C.can_be_repaired)) - continue - for(var/i in 1 to heal_attempts) - if(C.obj_integrity < C.max_integrity) - if(try_use_power(MIN_CLOCKCULT_POWER)) - C.obj_integrity = min(C.obj_integrity + (8 * efficiency), C.max_integrity) - if(C == src) - efficiency = get_efficiency_mod() - C.update_icon() - PoolOrNew(/obj/effect/overlay/temp/heal, list(T, "#1E8CE1")) - else - break - else - break - else if(issilicon(M)) - T = get_turf(M) - var/mob/living/silicon/S = M - if(S.health == S.maxHealth || S.stat == DEAD || !is_servant_of_ratvar(S)) - continue - for(var/i in 1 to heal_attempts) - if(S.health < S.maxHealth) - if(try_use_power(MIN_CLOCKCULT_POWER)) - S.adjustBruteLoss(-(5 * efficiency)) - S.adjustFireLoss(-(3 * efficiency)) - PoolOrNew(/obj/effect/overlay/temp/heal, list(T, "#1E8CE1")) - else - S << "\"[text2ratvar(pick(heal_failure_messages))]\"" - break - else - S << "\"[text2ratvar(pick(heal_finish_messages))]\"" - break - . = ..() - if(. < MIN_CLOCKCULT_POWER) - forced_disable(FALSE) diff --git a/code/game/gamemodes/clock_cult/clock_structures/ocular_warden.dm b/code/game/gamemodes/clock_cult/clock_structures/ocular_warden.dm deleted file mode 100644 index 2322bd94b1..0000000000 --- a/code/game/gamemodes/clock_cult/clock_structures/ocular_warden.dm +++ /dev/null @@ -1,123 +0,0 @@ -//Ocular warden: Low-damage, low-range turret. Deals constant damage to whoever it makes eye contact with. -/obj/structure/destructible/clockwork/ocular_warden - name = "ocular warden" - desc = "A large brass eye with tendrils trailing below it and a wide red iris." - clockwork_desc = "A fragile turret that will deal sustained damage to any non-faithful it sees." - icon_state = "ocular_warden" - unanchored_icon = "ocular_warden_unwrenched" - obj_integrity = 25 - max_integrity = 25 - construction_value = 15 - layer = HIGH_OBJ_LAYER - break_message = "The warden's eye gives a glare of utter hate before falling dark!" - debris = list(/obj/item/clockwork/component/belligerent_eye/blind_eye = 1) - resistance_flags = LAVA_PROOF | FIRE_PROOF | ACID_PROOF - var/damage_per_tick = 2.7 - var/sight_range = 3 - var/atom/movable/target - var/list/idle_messages = list(" sulkily glares around.", " lazily drifts from side to side.", " looks around for something to burn.", " slowly turns in circles.") - -/obj/structure/destructible/clockwork/ocular_warden/New() - ..() - START_PROCESSING(SSfastprocess, src) - -/obj/structure/destructible/clockwork/ocular_warden/Destroy() - STOP_PROCESSING(SSfastprocess, src) - return ..() - -/obj/structure/destructible/clockwork/ocular_warden/examine(mob/user) - ..() - user << "[target ? "It's fixated on [target]!" : "Its gaze is wandering aimlessly."]" - -/obj/structure/destructible/clockwork/ocular_warden/hulk_damage() - return 25 - -/obj/structure/destructible/clockwork/ocular_warden/can_be_unfasten_wrench(mob/user) - if(anchored) - if(obj_integrity <= max_integrity * 0.25) - user << "[src] is too damaged to unsecure!" - return FAILED_UNFASTEN - else - for(var/obj/structure/destructible/clockwork/ocular_warden/W in orange(3, src)) - user << "You sense another ocular warden too near this location. Activating this one this close would cause them to fight." - return FAILED_UNFASTEN - return SUCCESSFUL_UNFASTEN - -/obj/structure/destructible/clockwork/ocular_warden/ratvar_act() - ..() - if(ratvar_awakens) - damage_per_tick = 10 - sight_range = 6 - else - damage_per_tick = initial(damage_per_tick) - sight_range = initial(sight_range) - -/obj/structure/destructible/clockwork/ocular_warden/process() - if(!anchored) - lose_target() - return - var/list/validtargets = acquire_nearby_targets() - if(target) - if(!(target in validtargets)) - lose_target() - else - if(isliving(target)) - var/mob/living/L = target - if(!L.null_rod_check()) - if(isrevenant(L)) - var/mob/living/simple_animal/revenant/R = L - if(R.revealed) - R.unreveal_time += 2 - else - R.reveal(10) - L.adjustFireLoss((!iscultist(L) ? damage_per_tick : damage_per_tick * 2) * get_efficiency_mod()) //Nar-Sian cultists take additional damage - if(ratvar_awakens && L) - L.adjust_fire_stacks(damage_per_tick) - L.IgniteMob() - else if(istype(target,/obj/mecha)) - var/obj/mecha/M = target - M.take_damage(damage_per_tick * get_efficiency_mod(), BURN, "melee", 1, get_dir(src, M)) - - PoolOrNew(/obj/effect/overlay/temp/ratvar/ocular_warden, get_turf(target)) - - setDir(get_dir(get_turf(src), get_turf(target))) - if(!target) - if(validtargets.len) - target = pick(validtargets) - visible_message("[src] swivels to face [target]!") - if(isliving(target)) - var/mob/living/L = target - L << "\"I SEE YOU!\"\n[src]'s gaze [ratvar_awakens ? "melts you alive" : "burns you"]!" - else if(istype(target,/obj/mecha)) - var/obj/mecha/M = target - M.occupant << "\"I SEE YOU!\"" //heeeellooooooo, person in mech. - else if(prob(0.5)) //Extremely low chance because of how fast the subsystem it uses processes - if(prob(50)) - visible_message("[src][pick(idle_messages)]") - else - setDir(pick(cardinal))//Random rotation - -/obj/structure/destructible/clockwork/ocular_warden/proc/acquire_nearby_targets() - . = list() - for(var/mob/living/L in viewers(sight_range, src)) //Doesn't attack the blind - var/obj/item/weapon/storage/book/bible/B = L.bible_check() - if(B) - if(!(B.resistance_flags & ON_FIRE)) - L << "Your [B.name] bursts into flames!" - for(var/obj/item/weapon/storage/book/bible/BI in L.GetAllContents()) - if(!(BI.resistance_flags & ON_FIRE)) - BI.fire_act() - else if(!is_servant_of_ratvar(L) && !L.stat && L.mind && !L.restrained() && !(L.buckled && (L.lying || istype(L.buckled, /obj/structure/destructible/clockwork/geis_binding))) && \ - !(L.disabilities & BLIND) && !L.null_rod_check()) - . += L - for(var/N in mechas_list) - var/obj/mecha/M = N - if(get_dist(M, src) <= sight_range && M.occupant && !is_servant_of_ratvar(M.occupant) && (M in view(sight_range, src))) - . += M - -/obj/structure/destructible/clockwork/ocular_warden/proc/lose_target() - if(!target) - return 0 - target = null - visible_message("[src] settles and seems almost disappointed.") - return 1 diff --git a/code/game/gamemodes/clock_cult/clock_structures/ratvar_the_clockwork_justicar.dm b/code/game/gamemodes/clock_cult/clock_structures/ratvar_the_clockwork_justicar.dm deleted file mode 100644 index ee17e60db9..0000000000 --- a/code/game/gamemodes/clock_cult/clock_structures/ratvar_the_clockwork_justicar.dm +++ /dev/null @@ -1,145 +0,0 @@ -//Ratvar himself. Impossible to damage by most standard means, He will dominate the station and all upon it. -/obj/structure/destructible/clockwork/massive/ratvar - name = "Ratvar, the Clockwork Justiciar" - desc = "What is what is what are what real what is all a lie all a lie it's all a lie why how can what is" - clockwork_desc = "Ratvar, the Clockwork Justiciar, your master eternal." - icon = 'icons/effects/512x512.dmi' - icon_state = "ratvar" - pixel_x = -235 - pixel_y = -248 - resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | UNACIDABLE | ACID_PROOF - appearance_flags = 0 - var/atom/prey //Whatever Ratvar is chasing - var/clashing = FALSE //If Ratvar is FUCKING FIGHTING WITH NAR-SIE - var/proselytize_range = 10 - -/obj/structure/destructible/clockwork/massive/ratvar/New() - ..() - ratvar_awakens++ - for(var/obj/O in all_clockwork_objects) - O.ratvar_act() - START_PROCESSING(SSobj, src) - send_to_playing_players("\"[text2ratvar("ONCE AGAIN MY LIGHT SHALL SHINE ACROSS THIS PATHETIC REALM")]!!\"") - send_to_playing_players('sound/effects/ratvar_reveal.ogg') - var/image/alert_overlay = image('icons/effects/clockwork_effects.dmi', "ratvar_alert") - var/area/A = get_area(src) - notify_ghosts("The Justiciar's light calls to you! Reach out to Ratvar in [A.name] to be granted a shell to spread his glory!", null, source = src, alert_overlay = alert_overlay) - addtimer(SSshuttle.emergency, "request", 50, TIMER_NORMAL, null, 0.1) - -/obj/structure/destructible/clockwork/massive/ratvar/Destroy() - ratvar_awakens-- - for(var/obj/O in all_clockwork_objects) - O.ratvar_act() - STOP_PROCESSING(SSobj, src) - send_to_playing_players("\"NO! I will not... be... banished... again...\"") - return ..() - -/obj/structure/destructible/clockwork/massive/ratvar/attack_ghost(mob/dead/observer/O) - var/alertresult = alert(O, "Embrace the Justiciar's light? You can no longer be cloned!",,"Yes", "No") - if(alertresult == "No" || !O) - return 0 - var/mob/living/simple_animal/drone/cogscarab/ratvar/R = new/mob/living/simple_animal/drone/cogscarab/ratvar(get_turf(src)) - R.visible_message("[R] forms, and its eyes blink open, glowing bright red!") - R.key = O.key - -/obj/structure/destructible/clockwork/massive/ratvar/Bump(atom/A) - var/turf/T = get_turf(A) - forceMove(T) - T.ratvar_act() - -/obj/structure/destructible/clockwork/massive/ratvar/Process_Spacemove() - return clashing - -/obj/structure/destructible/clockwork/massive/ratvar/process() - if(clashing) //I'm a bit occupied right now, thanks - return - for(var/I in circlerangeturfs(src, proselytize_range)) - var/turf/T = I - T.ratvar_act() - for(var/I in circleviewturfs(src, round(proselytize_range * 0.5))) - var/turf/T = I - T.ratvar_act(1) - var/dir_to_step_in = pick(cardinal) - if(!prey) - for(var/obj/singularity/narsie/N in poi_list) - if(N.z == z) - prey = N - break - if(!prey) //In case there's a Nar-Sie - var/list/meals = list() - for(var/mob/living/L in living_mob_list) - if(L.z == z && !is_servant_of_ratvar(L) && L.mind) - meals += L - if(meals.len) - prey = pick(meals) - prey << "\"You will do.\"\n\ - Something very large and very malevolent begins lumbering its way towards you..." - prey << 'sound/effects/ratvar_reveal.ogg' - else - if(prob(10) || is_servant_of_ratvar(prey) || prey.z != z) - prey << "\"How dull. Leave me.\"\n\ - You feel tremendous relief as a set of horrible eyes loses sight of you..." - prey = null - else - dir_to_step_in = get_dir(src, prey) //Unlike Nar-Sie, Ratvar ruthlessly chases down his target - step(src, dir_to_step_in) - -/obj/structure/destructible/clockwork/massive/ratvar/narsie_act() - if(clashing) - return FALSE - clashing = TRUE - world << "\"[pick("BLOOD GOD!!!", "NAR-SIE!!!", "AT LAST, YOUR TIME HAS COME!")]\"" - world << "\"Ratvar?! How?!\"" - for(var/obj/singularity/narsie/N in range(15, src)) - if(N.clashing) - continue - N.clashing = TRUE - clash_of_the_titans(N) //IT'S TIME FOR THE BATTLE OF THE AGES - break - return TRUE - -//Put me in Reebe, will you? Ratvar has found and is going to fucking murder Nar-Sie -/obj/structure/destructible/clockwork/massive/ratvar/proc/clash_of_the_titans(obj/singularity/narsie/narsie) - var/winner = "Undeclared" - var/base_victory_chance = 1 - while(src && narsie) - send_to_playing_players('sound/magic/clockwork/ratvar_attack.ogg') - sleep(5.2) - for(var/mob/M in mob_list) - if(!isnewplayer(M)) - flash_color(M, flash_color="#966400", flash_time=1) - shake_camera(M, 4, 3) - var/ratvar_chance = min(ticker.mode.servants_of_ratvar.len, 50) - var/narsie_chance = ticker.mode.cult.len - for(var/mob/living/simple_animal/hostile/construct/harvester/C in player_list) - narsie_chance++ - ratvar_chance = rand(base_victory_chance, ratvar_chance) - narsie_chance = rand(base_victory_chance, min(narsie_chance, 50)) - if(ratvar_chance > narsie_chance) - winner = "Ratvar" - break - sleep(rand(2,5)) - send_to_playing_players('sound/magic/clockwork/narsie_attack.ogg') - sleep(7.4) - for(var/mob/M in mob_list) - if(!isnewplayer(M)) - flash_color(M, flash_color="#C80000", flash_time=1) - shake_camera(M, 4, 3) - if(narsie_chance > ratvar_chance) - winner = "Nar-Sie" - break - base_victory_chance *= 2 //The clash has a higher chance of resolving each time both gods attack one another - switch(winner) - if("Ratvar") - send_to_playing_players("\"[pick("DIE! DIE! DIE!", "FILTH!!!", "SUFFER!!!", text2ratvar("ROT FOR CENTURIES AS I HAVE!!"))]\"\n\ - \"[pick("Nooooo...", "Not die. To y-", "Die. Ratv-", "Sas tyen re-")]\"") //nar-sie get out - send_to_playing_players('sound/magic/clockwork/anima_fragment_attack.ogg') - send_to_playing_players('sound/magic/demon_dies.ogg') - clashing = FALSE - qdel(narsie) - if("Nar-Sie") - send_to_playing_players("\"[pick("Ha.", "Ra'sha fonn dest.", "You fool. To come here.")]\"") //Broken English - send_to_playing_players('sound/magic/demon_attack1.ogg') - send_to_playing_players('sound/magic/clockwork/anima_fragment_death.ogg') - narsie.clashing = FALSE - qdel(src) diff --git a/code/game/gamemodes/clock_cult/clock_structures/tinkerers_cache.dm b/code/game/gamemodes/clock_cult/clock_structures/tinkerers_cache.dm deleted file mode 100644 index 3e4cd5c0f2..0000000000 --- a/code/game/gamemodes/clock_cult/clock_structures/tinkerers_cache.dm +++ /dev/null @@ -1,102 +0,0 @@ -//Tinkerer's cache: Stores components for later use. -/obj/structure/destructible/clockwork/cache - name = "tinkerer's cache" - desc = "A large brass spire with a flaming hole in its center." - clockwork_desc = "A brass container capable of storing a large amount of components.\n\ - Shares components with all other caches and will gradually generate components if near a Clockwork Wall." - icon_state = "tinkerers_cache" - unanchored_icon = "tinkerers_cache_unwrenched" - construction_value = 10 - break_message = "The cache's fire winks out before it falls in on itself!" - max_integrity = 80 - obj_integrity = 80 - var/wall_generation_cooldown - var/turf/closed/wall/clockwork/linkedwall //if we've got a linked wall and are producing - -/obj/structure/destructible/clockwork/cache/New() - ..() - START_PROCESSING(SSobj, src) - clockwork_caches++ - update_slab_info() - SetLuminosity(2,1) - -/obj/structure/destructible/clockwork/cache/Destroy() - clockwork_caches-- - update_slab_info() - STOP_PROCESSING(SSobj, src) - if(linkedwall) - linkedwall.linkedcache = null - linkedwall = null - return ..() - -/obj/structure/destructible/clockwork/cache/process() - if(!anchored) - if(linkedwall) - linkedwall.linkedcache = null - linkedwall = null - return - for(var/turf/closed/wall/clockwork/C in range(4, src)) - if(!C.linkedcache && !linkedwall) - C.linkedcache = src - linkedwall = C - wall_generation_cooldown = world.time + (CACHE_PRODUCTION_TIME * get_efficiency_mod(TRUE)) - visible_message("[src] starts to whirr in the presence of [C]...") - break - if(linkedwall && wall_generation_cooldown <= world.time) - wall_generation_cooldown = world.time + (CACHE_PRODUCTION_TIME * get_efficiency_mod(TRUE)) - generate_cache_component(null, src) - playsound(linkedwall, 'sound/magic/clockwork/fellowship_armory.ogg', rand(15, 20), 1, -3, 1, 1) - visible_message("Something cl[pick("ank", "ink", "unk", "ang")]s around inside of [src]...") - -/obj/structure/destructible/clockwork/cache/attackby(obj/item/I, mob/living/user, params) - if(!is_servant_of_ratvar(user)) - return ..() - if(istype(I, /obj/item/clockwork/component)) - var/obj/item/clockwork/component/C = I - if(!anchored) - user << "[src] needs to be secured to place [C] into it!" - else - clockwork_component_cache[C.component_id]++ - update_slab_info() - user << "You add [C] to [src]." - user.drop_item() - qdel(C) - return 1 - else if(istype(I, /obj/item/clockwork/slab)) - var/obj/item/clockwork/slab/S = I - if(!anchored) - user << "[src] needs to be secured to offload your slab's components into it!" - else - for(var/i in S.stored_components) - clockwork_component_cache[i] += S.stored_components[i] - S.stored_components[i] = 0 - update_slab_info() - user.visible_message("[user] empties [S] into [src].", "You offload your slab's components into [src].") - return 1 - else - return ..() - -/obj/structure/destructible/clockwork/cache/attack_hand(mob/user) - if(!is_servant_of_ratvar(user)) - return 0 - if(!anchored) - user << "[src] needs to be secured to remove Replicant Alloy from it!" - return 0 - if(!clockwork_component_cache[REPLICANT_ALLOY]) - user << "There is no Replicant Alloy in the global component cache!" - return 0 - clockwork_component_cache[REPLICANT_ALLOY]-- - update_slab_info() - var/obj/item/clockwork/component/replicant_alloy/A = new(get_turf(src)) - user.visible_message("[user] withdraws [A] from [src].", "You withdraw [A] from [src].") - user.put_in_hands(A) - return 1 - -/obj/structure/destructible/clockwork/cache/examine(mob/user) - ..() - if(is_servant_of_ratvar(user) || isobserver(user)) - if(linkedwall) - user << "It is linked and will generate a component every [round((CACHE_PRODUCTION_TIME * 0.1) * get_efficiency_mod(TRUE), 0.1)] seconds!" - user << "Stored components:" - for(var/i in clockwork_component_cache) - user << "[get_component_name(i)][i != REPLICANT_ALLOY ? "s":""]: [clockwork_component_cache[i]]" diff --git a/code/game/gamemodes/clock_cult/clock_structures/tinkerers_daemon.dm b/code/game/gamemodes/clock_cult/clock_structures/tinkerers_daemon.dm deleted file mode 100644 index a7200dbd89..0000000000 --- a/code/game/gamemodes/clock_cult/clock_structures/tinkerers_daemon.dm +++ /dev/null @@ -1,165 +0,0 @@ -//Tinkerer's Daemon: A machine that rapidly produces components at a power cost. -/obj/structure/destructible/clockwork/powered/tinkerers_daemon - name = "tinkerer's daemon" - desc = "A strange machine with three small brass obelisks attached to it." - clockwork_desc = "An efficient machine that can rapidly produce components at a small power cost. It will only function if outnumbered by servants at a rate to 5:1." - icon_state = "tinkerers_daemon" - active_icon = "tinkerers_daemon" - inactive_icon = "tinkerers_daemon" - unanchored_icon = "tinkerers_daemon_unwrenched" - max_integrity = 100 - obj_integrity = 100 - construction_value = 20 - break_message = "The daemon shatters into millions of pieces!" - debris = list(/obj/item/clockwork/alloy_shards/large = 2, \ - /obj/item/clockwork/alloy_shards/medium = 4, \ - /obj/item/clockwork/alloy_shards/small = 6) - var/image/daemon_glow - var/image/component_glow - var/component_id_to_produce - var/production_time = 0 //last time we produced a component - var/production_cooldown = 120 - -/obj/structure/destructible/clockwork/powered/tinkerers_daemon/New() - ..() - clockwork_daemons++ - -/obj/structure/destructible/clockwork/powered/tinkerers_daemon/Destroy() - clockwork_daemons-- - return ..() - -/obj/structure/destructible/clockwork/powered/tinkerers_daemon/examine(mob/user) - ..() - if(is_servant_of_ratvar(user) || isobserver(user)) - if(active) - if(component_id_to_produce) - user << "It is currently producing [get_component_name(component_id_to_produce)][component_id_to_produce != REPLICANT_ALLOY ? "s":""]." - else - user << "It is currently producing random components." - user << "It will produce a component every [round((production_cooldown*0.1) * get_efficiency_mod(TRUE), 0.1)] seconds and requires at least the following power for each component type:" - for(var/i in clockwork_component_cache) - user << "[get_component_name(i)]: [get_component_cost(i)]W ([clockwork_component_cache[i]] exist[clockwork_component_cache[i] == 1 ? "s" : ""])" - -/obj/structure/destructible/clockwork/powered/tinkerers_daemon/forced_disable(bad_effects) - if(active) - if(bad_effects) - try_use_power(MIN_CLOCKCULT_POWER*2) - visible_message("[src] shuts down with a horrible grinding noise!") - playsound(src, 'sound/magic/clockwork/anima_fragment_attack.ogg', 50, 1) - else - visible_message("[src] shuts down!") - toggle() - return TRUE - -/obj/structure/destructible/clockwork/powered/tinkerers_daemon/attack_hand(mob/living/user) - if(!is_servant_of_ratvar(user)) - user << "You place your hand on the daemon, but nothing happens." - return - if(active) - toggle(0, user) - else - if(!anchored) - user << "[src] needs to be secured to the floor before it can be activated!" - return FALSE - var/servants = 0 - for(var/mob/living/L in living_mob_list) - if(is_servant_of_ratvar(L)) - servants++ - if(servants * 0.2 < clockwork_daemons) - user << "\"There are too few servants for this daemon to work.\"" - return - if(!clockwork_caches) - user << "\"You require a cache for this daemon to operate. Get to it.\"" - return - var/min_power_usable = 0 - for(var/i in clockwork_component_cache) - if(!min_power_usable) - min_power_usable = get_component_cost(i) - else - min_power_usable = min(min_power_usable, get_component_cost(i)) - if(total_accessable_power() < min_power_usable) - user << "\"You need more power to activate this daemon, friend.\"" - return - var/choice = alert(user,"Activate Daemon...",,"Specific Component","Random Component","Cancel") - switch(choice) - if("Specific Component") - var/list/components = list() - for(var/i in clockwork_component_cache) - components["[get_component_name(i)] ([get_component_cost(i)]W)"] = i - var/input_component = input(user, "Choose a component type.", name) as null|anything in components - component_id_to_produce = components[input_component] - servants = 0 - for(var/mob/living/L in living_mob_list) - if(is_servant_of_ratvar(L)) - servants++ - if(!is_servant_of_ratvar(user) || !user.canUseTopic(src, !issilicon(user)) || active || !clockwork_caches || servants * 0.2 < clockwork_daemons) - return - if(!component_id_to_produce) - user << "You decide not to select a component and activate the daemon." - return - if(total_accessable_power() < get_component_cost(component_id_to_produce)) - user << "There is too little power to produce this type of component!" - return - toggle(0, user) - if("Random Component") - component_id_to_produce = null - toggle(0, user) - -/obj/structure/destructible/clockwork/powered/tinkerers_daemon/toggle(fast_process, mob/living/user) - . = ..() - if(active) - var/component_color = get_component_color(component_id_to_produce) - if(!daemon_glow) - daemon_glow = new('icons/obj/clockwork_objects.dmi', "tinkerglow") - daemon_glow.color = component_color - add_overlay(daemon_glow) - if(!component_glow) - component_glow = new('icons/obj/clockwork_objects.dmi', "t_[component_id_to_produce ? component_id_to_produce :"random_component"]") - else - component_glow.icon_state = "t_[component_id_to_produce ? component_id_to_produce :"random_component"]" - component_glow.color = component_color - add_overlay(component_glow) - production_time = world.time + production_cooldown //don't immediately produce when turned on after being off - SetLuminosity(2, 1) - else - cut_overlays() - SetLuminosity(0) - -/obj/structure/destructible/clockwork/powered/tinkerers_daemon/proc/get_component_cost(id) - return max(MIN_CLOCKCULT_POWER, MIN_CLOCKCULT_POWER * (1 + round(clockwork_component_cache[id] * 0.2))) - -/obj/structure/destructible/clockwork/powered/tinkerers_daemon/process() - var/servants = 0 - for(var/mob/living/L in living_mob_list) - if(is_servant_of_ratvar(L)) - servants++ - . = ..() - var/min_power_usable = 0 - if(!component_id_to_produce) - for(var/i in clockwork_component_cache) - if(!min_power_usable) - min_power_usable = get_component_cost(i) - else - min_power_usable = min(min_power_usable, get_component_cost(i)) - else - min_power_usable = get_component_cost(component_id_to_produce) - if(!clockwork_caches || servants * 0.2 < clockwork_daemons || . < min_power_usable) //if we don't have enough to produce the lowest or what we chose to produce, cancel out - forced_disable(FALSE) - return - if(production_time <= world.time) - var/component_to_generate = component_id_to_produce - if(!component_to_generate) - component_to_generate = get_weighted_component_id() //more likely to generate components that we have less of - if(!try_use_power(get_component_cost(component_to_generate))) - component_to_generate = null - if(!component_id_to_produce) - for(var/i in clockwork_component_cache) - if(try_use_power(get_component_cost(i))) //if we fail but are producing random, try and get a different component to produce - component_to_generate = i - break - if(component_to_generate) - generate_cache_component(component_to_generate, src) - production_time = world.time + (production_cooldown * get_efficiency_mod(TRUE)) //go on cooldown - visible_message("[src] hums as it produces a [get_component_name(component_to_generate)].") - else - forced_disable(FALSE) //we shouldn't actually ever get here, as we should cancel out way before this diff --git a/code/game/gamemodes/clock_cult/clock_structures/wall_gear.dm b/code/game/gamemodes/clock_cult/clock_structures/wall_gear.dm deleted file mode 100644 index 87ae60dc6d..0000000000 --- a/code/game/gamemodes/clock_cult/clock_structures/wall_gear.dm +++ /dev/null @@ -1,76 +0,0 @@ -//A massive gear, effectively a girder for clocks. -/obj/structure/destructible/clockwork/wall_gear - name = "massive gear" - icon_state = "wall_gear" - unanchored_icon = "wall_gear" - climbable = TRUE - max_integrity = 150 - obj_integrity = 150 - layer = BELOW_OBJ_LAYER - construction_value = 3 - desc = "A massive brass gear. You could probably secure or unsecure it with a wrench, or just climb over it." - break_message = "The gear breaks apart into shards of alloy!" - debris = list(/obj/item/clockwork/alloy_shards/large = 1, \ - /obj/item/clockwork/alloy_shards/medium = 4, \ - /obj/item/clockwork/alloy_shards/small = 2) //slightly more debris than the default, totals 26 alloy - -/obj/structure/destructible/clockwork/wall_gear/displaced - anchored = FALSE - -/obj/structure/destructible/clockwork/wall_gear/New() - ..() - PoolOrNew(/obj/effect/overlay/temp/ratvar/gear, get_turf(src)) - -/obj/structure/destructible/clockwork/wall_gear/emp_act(severity) - return - -/obj/structure/destructible/clockwork/wall_gear/attackby(obj/item/I, mob/user, params) - if(istype(I, /obj/item/weapon/wrench)) - default_unfasten_wrench(user, I, 10) - return 1 - else if(istype(I, /obj/item/weapon/screwdriver)) - if(anchored) - user << "[src] needs to be unsecured to disassemble it!" - else - playsound(src, I.usesound, 100, 1) - user.visible_message("[user] starts to disassemble [src].", "You start to disassemble [src]...") - if(do_after(user, 40*I.toolspeed, target = src) && !anchored) - user << "You disassemble [src]." - deconstruct(TRUE) - return 1 - else if(istype(I, /obj/item/stack/tile/brass)) - var/obj/item/stack/tile/brass/W = I - if(W.get_amount() < 1) - user << "You need one brass sheet to do this!" - return - var/turf/T = get_turf(src) - if(iswallturf(T)) - user << "There is already a wall present!" - return - if(!isfloorturf(T)) - user << "A floor must be present to build a [anchored ? "false ":""]wall!" - return - if(locate(/obj/structure/falsewall) in T.contents) - user << "There is already a false wall present!" - return - user << "You start adding [W] to [src]..." - if(do_after(user, 20, target = src)) - var/brass_floor = FALSE - if(istype(T, /turf/open/floor/clockwork)) //if the floor is already brass, costs less to make(conservation of masssssss) - brass_floor = TRUE - if(W.use(2 - brass_floor)) - if(anchored) - T.ChangeTurf(/turf/closed/wall/clockwork) - else - T.ChangeTurf(/turf/open/floor/clockwork) - new /obj/structure/falsewall/brass(T) - qdel(src) - else - user << "You need more brass to make a [anchored ? "false ":""]wall!" - return 1 - return ..() - -/obj/structure/destructible/clockwork/wall_gear/deconstruct(disassembled = TRUE) - if(!(flags & NODECONSTRUCT) && disassembled) - new /obj/item/stack/tile/brass(loc, 3) - return ..() diff --git a/code/game/gamemodes/clock_cult/clock_unsorted.dm b/code/game/gamemodes/clock_cult/clock_unsorted.dm new file mode 100644 index 0000000000..9f8e0707f0 --- /dev/null +++ b/code/game/gamemodes/clock_cult/clock_unsorted.dm @@ -0,0 +1,178 @@ +//sends messages via hierophant +/proc/send_hierophant_message(mob/user, message, name_span = "heavy_brass", message_span = "brass", user_title = "Servant") + if(!user || !message || !ticker || !ticker.mode) + return 0 + var/parsed_message = "[user_title ? "[user_title] ":""][findtextEx(user.name, user.real_name) ? user.name : "[user.real_name] (as [user.name])"]: \"[message]\"" + for(var/M in mob_list) + if(isobserver(M)) + var/link = FOLLOW_LINK(M, user) + M << "[link] [parsed_message]" + else if(is_servant_of_ratvar(M)) + M << parsed_message + return 1 + +//Function Call action: Calls forth a Ratvarian spear. +/datum/action/innate/function_call + name = "Function Call" + button_icon_state = "ratvarian_spear" + background_icon_state = "bg_clock" + check_flags = AB_CHECK_RESTRAINED|AB_CHECK_STUNNED|AB_CHECK_CONSCIOUS + +/datum/action/innate/function_call/IsAvailable() + if(!is_servant_of_ratvar(owner)) + return 0 + return ..() + +/datum/action/innate/function_call/Activate() + if(owner.l_hand && owner.r_hand) + usr << "You need an empty to hand to call forth your spear!" + return 0 + owner.visible_message("A strange spear materializes in [usr]'s hands!", "You call forth your spear!") + var/obj/item/clockwork/ratvarian_spear/R = new(get_turf(usr)) + owner.put_in_hands(R) + for(var/datum/action/innate/function_call/F in owner.actions) //Removes any bound Ratvarian spears + qdel(F) + return 1 + +//allows a mob to select a target to gate to +/atom/movable/proc/procure_gateway(mob/living/invoker, time_duration, gateway_uses, two_way) + var/list/possible_targets = list() + var/list/teleportnames = list() + var/list/duplicatenamecount = list() + + for(var/obj/structure/clockwork/powered/clockwork_obelisk/O in all_clockwork_objects) + if(!O.Adjacent(invoker) && O != src && (O.z <= ZLEVEL_SPACEMAX)) //don't list obelisks that we're next to + var/area/A = get_area(O) + var/locname = initial(A.name) + var/resultkey = "[locname] [O.name]" + if(resultkey in teleportnames) //why the fuck did you put two obelisks in the same area + duplicatenamecount[resultkey]++ + resultkey = "[resultkey] ([duplicatenamecount[resultkey]])" + else + teleportnames.Add(resultkey) + duplicatenamecount[resultkey] = 1 + possible_targets[resultkey] = O + + for(var/mob/living/L in living_mob_list) + if(!L.stat && is_servant_of_ratvar(L) && !L.Adjacent(invoker) && L != invoker && (L.z <= ZLEVEL_SPACEMAX)) //People right next to the invoker can't be portaled to, for obvious reasons + var/resultkey = "[L.name] ([L.real_name])" + if(resultkey in teleportnames) + duplicatenamecount[resultkey]++ + resultkey = "[resultkey] ([duplicatenamecount[resultkey]])" + else + teleportnames.Add(resultkey) + duplicatenamecount[resultkey] = 1 + possible_targets[resultkey] = L + + if(!possible_targets.len) + invoker << "There are no other eligible targets for a Spatial Gateway!" + return 0 + var/input_target_key = input(invoker, "Choose a target to form a rift to.", "Spatial Gateway") as null|anything in possible_targets + var/atom/movable/target = possible_targets[input_target_key] + if(!target || !invoker.canUseTopic(src, BE_CLOSE)) + return 0 + var/istargetobelisk = istype(target, /obj/structure/clockwork/powered/clockwork_obelisk) + if(istargetobelisk) + gateway_uses *= 2 + time_duration *= 2 + invoker.visible_message("The air in front of [invoker] ripples before suddenly tearing open!", \ + "With a word, you rip open a [two_way ? "two-way":"one-way"] rift to [input_target_key]. It will last for [time_duration / 10] seconds and has [gateway_uses] use[gateway_uses > 1 ? "s" : ""].") + var/obj/effect/clockwork/spatial_gateway/S1 = new(istype(src, /obj/structure/clockwork/powered/clockwork_obelisk) ? get_turf(src) : get_step(get_turf(invoker), invoker.dir)) + var/obj/effect/clockwork/spatial_gateway/S2 = new(istargetobelisk ? get_turf(target) : get_step(get_turf(target), target.dir)) + + //Set up the portals now that they've spawned + S1.setup_gateway(S2, time_duration, gateway_uses, two_way) + S2.visible_message("The air in front of [target] ripples before suddenly tearing open!") + return 1 + +/proc/scripture_unlock_check(scripture_tier) //check if the selected scripture tier is unlocked + var/servants = 0 + var/unconverted_ai_exists = FALSE + for(var/mob/living/M in living_mob_list) + if(is_servant_of_ratvar(M) && (ishuman(M) || issilicon(M))) + servants++ + for(var/mob/living/silicon/ai/ai in living_mob_list) + if(!is_servant_of_ratvar(ai) && ai.client) + unconverted_ai_exists = TRUE + switch(scripture_tier) + if(SCRIPTURE_DRIVER) + return 1 + if(SCRIPTURE_SCRIPT) + if(servants >= 5 && clockwork_caches) + return 1 //5 or more non-brain servants and any number of clockwork caches + if(SCRIPTURE_APPLICATION) + if(servants >= 8 && clockwork_caches >= 3 && clockwork_construction_value >= 75) + return 1 //8 or more non-brain servants, 3+ clockwork caches, and at least 75 CV + if(SCRIPTURE_REVENANT) + if(servants >= 10 && clockwork_caches >= 4 && clockwork_construction_value >= 150) + return 1 //10 or more non-brain servants, 4+ clockwork caches, and at least 150 CV + if(SCRIPTURE_JUDGEMENT) + if(servants >= 12 && clockwork_caches >= 5 && clockwork_construction_value >= 250 && !unconverted_ai_exists) + return 1 //12 or more non-brain servants, 5+ clockwork caches, at least 250 CV, and there are no living, non-servant ais + return 0 + +/proc/generate_cache_component(specific_component_id) //generates a component in the global component cache, either random based on lowest or a specific component + if(specific_component_id) + clockwork_component_cache[specific_component_id]++ + else + var/component_to_generate = get_weighted_component_id() + clockwork_component_cache[component_to_generate]++ + +/proc/get_weighted_component_id(obj/item/clockwork/slab/storage_slab) //returns a chosen component id based on the lowest amount of that component + if(storage_slab) + return pickweight(list("belligerent_eye" = max(MAX_COMPONENTS_BEFORE_RAND - LOWER_PROB_PER_COMPONENT*(clockwork_component_cache["belligerent_eye"] + storage_slab.stored_components["belligerent_eye"]), 1), \ + "vanguard_cogwheel" = max(MAX_COMPONENTS_BEFORE_RAND - LOWER_PROB_PER_COMPONENT*(clockwork_component_cache["vanguard_cogwheel"] + storage_slab.stored_components["vanguard_cogwheel"]), 1), \ + "guvax_capacitor" = max(MAX_COMPONENTS_BEFORE_RAND - LOWER_PROB_PER_COMPONENT*(clockwork_component_cache["guvax_capacitor"] + storage_slab.stored_components["guvax_capacitor"]), 1), \ + "replicant_alloy" = max(MAX_COMPONENTS_BEFORE_RAND - LOWER_PROB_PER_COMPONENT*(clockwork_component_cache["replicant_alloy"] + storage_slab.stored_components["replicant_alloy"]), 1), \ + "hierophant_ansible" = max(MAX_COMPONENTS_BEFORE_RAND - LOWER_PROB_PER_COMPONENT*(clockwork_component_cache["hierophant_ansible"] + storage_slab.stored_components["hierophant_ansible"]), 1))) + + return pickweight(list("belligerent_eye" = max(MAX_COMPONENTS_BEFORE_RAND - LOWER_PROB_PER_COMPONENT*clockwork_component_cache["belligerent_eye"], 1), \ + "vanguard_cogwheel" = max(MAX_COMPONENTS_BEFORE_RAND - LOWER_PROB_PER_COMPONENT*clockwork_component_cache["vanguard_cogwheel"], 1), \ + "guvax_capacitor" = max(MAX_COMPONENTS_BEFORE_RAND - LOWER_PROB_PER_COMPONENT*clockwork_component_cache["guvax_capacitor"], 1), \ + "replicant_alloy" = max(MAX_COMPONENTS_BEFORE_RAND - LOWER_PROB_PER_COMPONENT*clockwork_component_cache["replicant_alloy"], 1), \ + "hierophant_ansible" = max(MAX_COMPONENTS_BEFORE_RAND - LOWER_PROB_PER_COMPONENT*clockwork_component_cache["hierophant_ansible"], 1))) + +/proc/clockwork_say(atom/movable/AM, message, whisper=FALSE) + // When servants invoke ratvar's power, they speak in ways that non + // servants do not comprehend. + // Our ratvarian chants are stored in their ratvar forms + + var/list/spans = list(SPAN_ROBOT) + + var/old_languages_spoken = AM.languages_spoken + AM.languages_spoken = HUMAN //anyone who can understand HUMAN will hear weird shitty ratvar speak, otherwise it'll get starred out + if(isliving(AM)) + var/mob/living/L = AM + if(!whisper) + L.say(message, "clock", spans) + else + L.whisper(message) + else + AM.say(message) + AM.languages_spoken = old_languages_spoken + +/* + +The Ratvarian Language + + In the lore of the Servants of Ratvar, the Ratvarian tongue is a timeless language and full of power. It sounds like gibberish, much like Nar-Sie's language, but is in fact derived from +aforementioned language, and may induce miracles when spoken in the correct way with an amplifying tool (similar to runes used by the Nar-Sian cult). + + While the canon states that the language of Ratvar and his servants is incomprehensible to the unenlightened as it is a derivative of the most ancient known language, in reality it is +actually very simple. To translate a plain English sentence to Ratvar's tongue, simply move all of the letters thirteen places ahead, starting from "a" if the end of the alphabet is reached. +This cipher is known as "rot13" for "rotate 13 places" and there are many sites online that allow instant translation between English and rot13 - one of the benefits is that moving the translated +sentence thirteen places ahead changes it right back to plain English. + + There are, however, a few parts of the Ratvarian tongue that aren't typical and are implemented for fluff reasons. Some words may have apostrophes, hyphens, and spaces, making the plain +English translation apparent but disjoined (for instance, "Oru`byq zl-cbjre!" translates directly to "Beh'old my-power!") although this can be ignored without impacting overall quality. When +translating from Ratvar's tongue to plain English, simply remove the disjointments and use the finished sentence. This would make "Oru`byq zl-cbjre!" into "Behold my power!" after removing the +abnormal spacing, hyphens, and grave accents. + +List of nuances: + +- Any time the word "of" occurs, it is linked to the previous word by a hyphen. If it is the first word, nothing is done. (i.e. "V nz-bs Ratvar." directly translates to "I am-of Ratvar.") +- Although "Ratvar" translates to "Engine" in English, the word "Ratvar" is used regardless of language as it is a proper noun. + - The same rule applies to Ratvar's four generals: Nezbere (Armorer), Sevtug (Fright), Nzcrentr (Amperage), and Inath-Neq (Vangu-Ard), although these words can be used in proper context if one is + not referring to the four generals and simply using the words themselves. + +*/ diff --git a/code/game/gamemodes/clock_cult/clockwork_proselytizer.dm b/code/game/gamemodes/clock_cult/clockwork_proselytizer.dm new file mode 100644 index 0000000000..00b27d33c1 --- /dev/null +++ b/code/game/gamemodes/clock_cult/clockwork_proselytizer.dm @@ -0,0 +1,319 @@ + +/obj/item/clockwork/clockwork_proselytizer //Clockwork proselytizer (yes, that's a real word): Converts applicable objects to Ratvarian variants. + name = "clockwork proselytizer" + desc = "An odd, L-shaped device that hums with energy." + clockwork_desc = "A device that allows the replacing of mundane objects with Ratvarian variants. It requires liquified Replicant Alloy to function." + icon_state = "clockwork_proselytizer" + w_class = 3 + force = 5 + flags = NOBLUDGEON + var/stored_alloy = 0 //Requires this to function; each chunk of replicant alloy provides REPLICANT_ALLOY_UNIT + var/max_alloy = REPLICANT_ALLOY_UNIT * 10 + var/uses_alloy = TRUE + var/metal_to_alloy = FALSE + var/repairing = null //what we're currently repairing, if anything + +/obj/item/clockwork/clockwork_proselytizer/preloaded + stored_alloy = REPLICANT_WALL_MINUS_FLOOR+REPLICANT_WALL_TOTAL + +/obj/item/clockwork/clockwork_proselytizer/scarab + name = "scarab proselytizer" + clockwork_desc = "A cogscarab's internal proselytizer. It can only be successfully used by a cogscarab and requires liquified Replicant Alloy to function." + metal_to_alloy = TRUE + item_state = "nothing" + w_class = 1 + var/debug = FALSE + +/obj/item/clockwork/clockwork_proselytizer/scarab/proselytize(atom/target, mob/living/user) + if(!debug && !isdrone(user)) + return 0 + return ..() + +/obj/item/clockwork/clockwork_proselytizer/scarab/debug + clockwork_desc = "A cogscarab's internal proselytizer. It can convert nearly any object into a Ratvarian variant." + uses_alloy = FALSE + debug = TRUE + +/obj/item/clockwork/clockwork_proselytizer/examine(mob/living/user) + ..() + if(is_servant_of_ratvar(user) || isobserver(user)) + user << "Can be used to convert walls, floors, windows, airlocks, windoors, and grilles to clockwork variants." + user << "Can also form some objects into Replicant Alloy, as well as reform Clockwork Walls into Clockwork Floors, and vice versa." + if(metal_to_alloy) + user << "It can convert rods, metal, and plasteel to liquified replicant alloy at a low rate." + if(uses_alloy) + user << "It has [stored_alloy]/[max_alloy] units of liquified alloy stored." + user << "Use it on a Tinkerer's Cache, strike it with Replicant Alloy, or attack Replicant Alloy with it to add additional liquified alloy." + user << "Use it in-hand to remove stored liquified alloy." + +/obj/item/clockwork/clockwork_proselytizer/attack_self(mob/living/user) + if(is_servant_of_ratvar(user) && uses_alloy) + if(!can_use_alloy(REPLICANT_ALLOY_UNIT)) + user << "[src] [stored_alloy ? "Lacks enough":"Contains no"] alloy to reform[stored_alloy ? "":" any"] into solidified alloy!" + return + modify_stored_alloy(-REPLICANT_ALLOY_UNIT) + playsound(src, 'sound/items/Deconstruct.ogg', 50, 1) + new/obj/item/clockwork/component/replicant_alloy(user.loc) + user << "You force [stored_alloy ? "some":"all"] of the alloy in [src]'s compartments to reform and solidify. \ + It now contains [stored_alloy]/[max_alloy] units of liquified alloy." + +/obj/item/clockwork/clockwork_proselytizer/attackby(obj/item/I, mob/living/user, params) + if(istype(I, /obj/item/clockwork/component/replicant_alloy) && is_servant_of_ratvar(user) && uses_alloy) + if(!can_use_alloy(-REPLICANT_ALLOY_UNIT)) + user << "[src]'s replicant alloy compartments are full!" + return 0 + modify_stored_alloy(REPLICANT_ALLOY_UNIT) + playsound(user, 'sound/machines/click.ogg', 50, 1) + user << "You force [I] to liquify and pour it into [src]'s compartments. It now contains [stored_alloy]/[max_alloy] units of liquified alloy." + user.drop_item() + qdel(I) + return 1 + else + return ..() + +/obj/item/clockwork/clockwork_proselytizer/afterattack(atom/target, mob/living/user, proximity_flag, params) + if(!target || !user || !proximity_flag) + return 0 + if(!is_servant_of_ratvar(user)) + return ..() + proselytize(target, user) + +/obj/item/clockwork/clockwork_proselytizer/proc/modify_stored_alloy(amount) + if(can_use_alloy(0)) //Ratvar makes it free + amount = 0 + stored_alloy = Clamp(stored_alloy + amount, 0, max_alloy) + return 1 + +/obj/item/clockwork/clockwork_proselytizer/proc/can_use_alloy(amount) + if(ratvar_awakens || !uses_alloy) + return TRUE + if(!amount) //functions thus as a check for if ratvar is up/it doesn't use alloy if no amount is provided + return FALSE + if(stored_alloy - amount < 0) + return FALSE + if(stored_alloy - amount > max_alloy) + return FALSE + return TRUE + +/obj/item/clockwork/clockwork_proselytizer/proc/proselytize(atom/target, mob/living/user) + if(!target || !user) + return 0 + var/target_type = target.type + var/list/proselytize_values = target.proselytize_vals(user, src) //relevant values for proselytizing stuff, given as an associated list + if(proselytize_values == TRUE) //if we get true, fail, but don't send a message for whatever reason + return 0 + if(!islist(proselytize_values)) + user << "[target] cannot be proselytized!" + return 0 + if(repairing) + user << "You are currently repairing [repairing] with [src]!" + return 0 + if(!uses_alloy) + proselytize_values["alloy_cost"] = 0 + + if(!can_use_alloy(proselytize_values["alloy_cost"])) + if(stored_alloy - proselytize_values["alloy_cost"] < 0) + user << "You need [proselytize_values["alloy_cost"]] liquified alloy to proselytize [target]!" + else if(stored_alloy - proselytize_values["alloy_cost"] > max_alloy) + user << "You have too much liquified alloy stored to proselytize [target]!" + return 0 + + if(can_use_alloy(0)) //Ratvar makes it faster + proselytize_values["operation_time"] *= 0.5 + + user.visible_message("[user]'s [name] begins tearing apart [target]!", "You begin proselytizing [target]...") + playsound(target, 'sound/machines/click.ogg', 50, 1) + if(proselytize_values["operation_time"] && !do_after(user, proselytize_values["operation_time"], target = target)) + return 0 + if(!can_use_alloy(proselytize_values["alloy_cost"])) //Check again to prevent bypassing via spamclick + return 0 + if(!target || target.type != target_type) + return 0 + if(repairing) + return 0 + user.visible_message("[user]'s [name] disgorges a chunk of metal and shapes it over what's left of [target]!", \ + "You proselytize [target].") + playsound(target, 'sound/items/Deconstruct.ogg', 50, 1) + var/new_thing_type = proselytize_values["new_obj_type"] + if(isturf(target)) + var/turf/T = target + T.ChangeTurf(new_thing_type) + else + if(proselytize_values["dir_in_new"]) + new new_thing_type(get_turf(target), proselytize_values["spawn_dir"]) + else + var/atom/A = new new_thing_type(get_turf(target)) + A.setDir(proselytize_values["spawn_dir"]) + qdel(target) + modify_stored_alloy(-proselytize_values["alloy_cost"]) + return 1 + +//if a valid target, returns an associated list in this format; +//list("operation_time" = 15, "new_obj_type" = /obj/structure/window/reinforced/clockwork, "alloy_cost" = 5, "spawn_dir" = dir, "dir_in_new" = TRUE) +//otherwise, return literally any non-list thing but preferably FALSE +//returning TRUE won't produce the "cannot be proselytized" message and will still prevent proselytizing + +/atom/proc/proselytize_vals(mob/living/user, obj/item/clockwork/clockwork_proselytizer/proselytizer) + return FALSE + +/turf/closed/wall/proselytize_vals(mob/living/user, obj/item/clockwork/clockwork_proselytizer/proselytizer) + return list("operation_time" = 50, "new_obj_type" = /turf/closed/wall/clockwork, "alloy_cost" = REPLICANT_WALL_TOTAL, "spawn_dir" = SOUTH) + +/turf/closed/wall/r_wall/proselytize_vals(mob/living/user, obj/item/clockwork/clockwork_proselytizer/proselytizer) + return FALSE + +/turf/closed/wall/clockwork/proselytize_vals(mob/living/user, obj/item/clockwork/clockwork_proselytizer/proselytizer) + return list("operation_time" = 50, "new_obj_type" = /turf/open/floor/clockwork, "alloy_cost" = -REPLICANT_WALL_MINUS_FLOOR, "spawn_dir" = SOUTH) + +/turf/open/floor/proselytize_vals(mob/living/user, obj/item/clockwork/clockwork_proselytizer/proselytizer) + return list("operation_time" = 30, "new_obj_type" = /turf/open/floor/clockwork, "alloy_cost" = REPLICANT_FLOOR, "spawn_dir" = SOUTH) + +/turf/open/floor/clockwork/proselytize_vals(mob/living/user, obj/item/clockwork/clockwork_proselytizer/proselytizer) + for(var/obj/O in src) + if(O.density && !O.CanPass(user, src, 5)) + user << "Something is in the way, preventing you from proselytizing [src] into a clockwork wall." + return FALSE + return list("operation_time" = 100, "new_obj_type" = /turf/closed/wall/clockwork, "alloy_cost" = REPLICANT_WALL_MINUS_FLOOR, "spawn_dir" = SOUTH) + +/obj/item/stack/rods/proselytize_vals(mob/living/user, obj/item/clockwork/clockwork_proselytizer/proselytizer) + if(!proselytizer.metal_to_alloy) + return 0 + var/prosel_costtime = -amount + return list("operation_time" = -prosel_costtime, "new_obj_type" = /obj/effect/overlay/temp/ratvar/beam/itemconsume, "alloy_cost" = prosel_costtime, "spawn_dir" = SOUTH) + +/obj/item/stack/sheet/metal/proselytize_vals(mob/living/user, obj/item/clockwork/clockwork_proselytizer/proselytizer) + if(!proselytizer.metal_to_alloy) + return 0 + var/prosel_costtime = -amount*2 + return list("operation_time" = -prosel_costtime, "new_obj_type" = /obj/effect/overlay/temp/ratvar/beam/itemconsume, "alloy_cost" = prosel_costtime, "spawn_dir" = SOUTH) + +/obj/item/stack/sheet/plasteel/proselytize_vals(mob/living/user, obj/item/clockwork/clockwork_proselytizer/proselytizer) + if(!proselytizer.metal_to_alloy) + return 0 + var/prosel_costtime = -amount*3 + return list("operation_time" = -prosel_costtime, "new_obj_type" = /obj/effect/overlay/temp/ratvar/beam/itemconsume, "alloy_cost" = prosel_costtime, "spawn_dir" = SOUTH) + +/obj/machinery/door/airlock/proselytize_vals(mob/living/user, obj/item/clockwork/clockwork_proselytizer/proselytizer) + var/doortype = /obj/machinery/door/airlock/clockwork + if(glass) + doortype = /obj/machinery/door/airlock/clockwork/brass + return list("operation_time" = 40, "new_obj_type" = doortype, "alloy_cost" = REPLICANT_WALL_TOTAL, "spawn_dir" = dir) + +/obj/machinery/door/airlock/clockwork/proselytize_vals(mob/living/user, obj/item/clockwork/clockwork_proselytizer/proselytizer) + return FALSE + +/obj/structure/window/proselytize_vals(mob/living/user, obj/item/clockwork/clockwork_proselytizer/proselytizer) + var/windowtype = /obj/structure/window/reinforced/clockwork + var/new_dir = TRUE + var/prosel_time = 15 + var/prosel_cost = REPLICANT_FLOOR + if(fulltile) + windowtype = /obj/structure/window/reinforced/clockwork/fulltile + new_dir = FALSE + prosel_time = 30 + prosel_cost = REPLICANT_STANDARD + return list("operation_time" = prosel_time, "new_obj_type" = windowtype, "alloy_cost" = prosel_cost, "spawn_dir" = dir, "dir_in_new" = new_dir) + +/obj/structure/window/reinforced/clockwork/proselytize_vals(mob/living/user, obj/item/clockwork/clockwork_proselytizer/proselytizer) + return FALSE + +/obj/machinery/door/window/proselytize_vals(mob/living/user, obj/item/clockwork/clockwork_proselytizer/proselytizer) + return list("operation_time" = 30, "new_obj_type" = /obj/machinery/door/window/clockwork, "alloy_cost" = REPLICANT_STANDARD, "spawn_dir" = dir, "dir_in_new" = TRUE) + +/obj/machinery/door/window/clockwork/proselytize_vals(mob/living/user, obj/item/clockwork/clockwork_proselytizer/proselytizer) + return FALSE + +/obj/structure/grille/proselytize_vals(mob/living/user, obj/item/clockwork/clockwork_proselytizer/proselytizer) + var/grilletype = /obj/structure/grille/ratvar + var/prosel_time = 15 + if(destroyed) + grilletype = /obj/structure/grille/ratvar/broken + prosel_time = 5 + return list("operation_time" = prosel_time, "new_obj_type" = grilletype, "alloy_cost" = 0, "spawn_dir" = dir) + +/obj/structure/grille/ratvar/proselytize_vals(mob/living/user, obj/item/clockwork/clockwork_proselytizer/proselytizer) + return FALSE + +/obj/structure/clockwork/proselytize_vals(mob/living/user, obj/item/clockwork/clockwork_proselytizer/proselytizer) + . = TRUE + if(proselytizer.repairing) //no spamclicking for fast repairs, bucko + user << "You are already repairing [proselytizer.repairing] with [proselytizer]!" + return + if(!can_be_repaired) + user << "[src] cannot be repaired with a proselytizer!" + return + if(health == max_health) + user << "[src] is at maximum integrity!" + return + var/amount_to_heal = max_health - health + var/healing_for_cycle = min(amount_to_heal, repair_amount) + if(!proselytizer.can_use_alloy(0)) + healing_for_cycle = min(healing_for_cycle, proselytizer.stored_alloy) + var/proselytizer_cost = healing_for_cycle*2 + if(!proselytizer.can_use_alloy(proselytizer_cost)) + user << "You need more liquified alloy to repair [src]!" + return + user.visible_message("[user]'s [proselytizer.name] starts covering [src] in black liquid metal...", \ + "You start repairing [src]...") + //hugeass while because we need to re-check after the do_after + proselytizer.repairing = src + while(proselytizer && user && src && health != max_health) + amount_to_heal = max_health - health + if(!amount_to_heal) + break + healing_for_cycle = min(amount_to_heal, repair_amount) + if(!proselytizer.can_use_alloy(0)) + healing_for_cycle = min(healing_for_cycle, proselytizer.stored_alloy) + proselytizer_cost = healing_for_cycle*2 + if(!proselytizer.can_use_alloy(proselytizer_cost) || !do_after(user, proselytizer_cost, target = src) || !proselytizer || !proselytizer.can_use_alloy(proselytizer_cost)) + break + amount_to_heal = max_health - health + if(!amount_to_heal) + break + healing_for_cycle = min(amount_to_heal, repair_amount) + if(!proselytizer.can_use_alloy(0)) + healing_for_cycle = min(healing_for_cycle, proselytizer.stored_alloy) + proselytizer_cost = healing_for_cycle*2 + if(!proselytizer.can_use_alloy(proselytizer_cost)) + break + health += healing_for_cycle + proselytizer.modify_stored_alloy(-proselytizer_cost) + playsound(src, 'sound/machines/click.ogg', 50, 1) + + if(proselytizer) + proselytizer.repairing = null + if(user) + user.visible_message("[user]'s [proselytizer.name] stops covering [src] with black liquid metal.", \ + "You finish repairing [src]. It is now at [health]/[max_health] integrity.") + return + +/obj/structure/clockwork/cache/proselytize_vals(mob/living/user, obj/item/clockwork/clockwork_proselytizer/proselytizer) + . = ..() + if(proselytizer.can_use_alloy(0) || proselytizer.stored_alloy + REPLICANT_ALLOY_UNIT > proselytizer.max_alloy) + user << "[proselytizer]'s containers of liquified alloy are full!" + return + if(!clockwork_component_cache["replicant_alloy"]) + user << "There is no Replicant Alloy in the global component cache!" + return + user.visible_message("[user] places the end of [proselytizer] in the hole in [src]...", \ + "You start filling [proselytizer] with liquified alloy...") + //hugeass check because we need to re-check after the do_after + while(proselytizer && proselytizer.uses_alloy && proselytizer.stored_alloy + REPLICANT_ALLOY_UNIT <= proselytizer.max_alloy && clockwork_component_cache["replicant_alloy"] \ + && do_after(user, 10, target = src) \ + && proselytizer && proselytizer.uses_alloy && proselytizer.stored_alloy + REPLICANT_ALLOY_UNIT <= proselytizer.max_alloy && clockwork_component_cache["replicant_alloy"]) + proselytizer.modify_stored_alloy(REPLICANT_ALLOY_UNIT) + clockwork_component_cache["replicant_alloy"]-- + playsound(src, 'sound/items/Deconstruct.ogg', 50, 1) + if(proselytizer && user) + user.visible_message("[user] removes [proselytizer] from the hole in [src], apparently satisfied.", \ + "You finish filling [proselytizer] with liquified alloy. It now contains [proselytizer.stored_alloy]/[proselytizer.max_alloy] units of liquified alloy.") + return + +/obj/structure/clockwork/wall_gear/proselytize_vals(mob/living/user, obj/item/clockwork/clockwork_proselytizer/proselytizer) + return list("operation_time" = 10, "new_obj_type" = /obj/effect/overlay/temp/ratvar/beam/itemconsume, "alloy_cost" = -REPLICANT_WALL_MINUS_FLOOR, "spawn_dir" = SOUTH) + +/obj/item/clockwork/alloy_shards/proselytize_vals(mob/living/user, obj/item/clockwork/clockwork_proselytizer/proselytizer) + return list("operation_time" = 5, "new_obj_type" = /obj/effect/overlay/temp/ratvar/beam/itemconsume, "alloy_cost" = -REPLICANT_STANDARD, "spawn_dir" = SOUTH) + +/obj/item/clockwork/component/replicant_alloy/proselytize_vals(mob/living/user, obj/item/clockwork/clockwork_proselytizer/proselytizer) + return list("operation_time" = 0, "new_obj_type" = /obj/effect/overlay/temp/ratvar/beam/itemconsume, "alloy_cost" = -REPLICANT_ALLOY_UNIT, "spawn_dir" = SOUTH) diff --git a/code/game/gamemodes/cult/cult.dm b/code/game/gamemodes/cult/cult.dm index 08bfa60769..fee57bedab 100644 --- a/code/game/gamemodes/cult/cult.dm +++ b/code/game/gamemodes/cult/cult.dm @@ -1,11 +1,11 @@ - +//This file was auto-corrected by findeclaration.exe on 25.5.2012 20:42:31 /datum/game_mode var/list/datum/mind/cult = list() var/list/cult_objectives = list() /proc/iscultist(mob/living/M) - return istype(M) && M.has_antag_datum(/datum/antagonist/cultist, TRUE) + return istype(M) && M.mind && ticker && ticker.mode && (M.mind in ticker.mode.cult) /proc/is_sacrifice_target(datum/mind/mind) if(ticker.mode.name == "cult") @@ -14,20 +14,25 @@ return 1 return 0 -/proc/is_convertable_to_cult(mob/living/M) - if(!istype(M)) +/proc/is_convertable_to_cult(datum/mind/mind) + if(!istype(mind)) return 0 - if(M.mind) - if(ishuman(M) && (M.mind.assigned_role in list("Captain", "Chaplain"))) - return 0 - if(is_sacrifice_target(M.mind)) - return 0 - if(M.mind.enslaved_to && !iscultist(M.mind.enslaved_to)) - return 0 - else + if(istype(mind.current, /mob/living/carbon/human) && (mind.assigned_role in list("Captain", "Chaplain"))) + return 0 + if(isloyal(mind.current)) + return 0 + if(issilicon(mind.current) || isbot(mind.current) || isdrone(mind.current)) + return 0 //can't convert machines, that's ratvar's thing + if(isguardian(mind.current)) + var/mob/living/simple_animal/hostile/guardian/G = mind.current + if(!iscultist(G.summoner)) + return 0 //can't convert it unless the owner is converted + if(is_sacrifice_target(mind)) + return 0 + if(mind.enslaved_to) + return 0 + if(is_servant_of_ratvar(mind.current)) return 0 - if(M.isloyal() || issilicon(M) || isbot(M) || isdrone(M) || is_servant_of_ratvar(M)) - return 0 //can't convert machines, shielded, or ratvar's dogs return 1 /datum/game_mode/cult @@ -41,11 +46,6 @@ recommended_enemies = 4 enemy_minimum_age = 14 - announce_span = "cult" - announce_text = "Some crew members are trying to start a cult to Nar-Sie!\n\ - Cultists: Carry out Nar-Sie's will.\n\ - Crew: Prevent the cult from expanding and drive it out." - var/finished = 0 var/eldergod = 1 //for the summon god objective @@ -55,6 +55,12 @@ var/datum/mind/sacrifice_target = null//The target to be sacrificed var/list/cultists_to_cult = list() //the cultists we'll convert + +/datum/game_mode/cult/announce() + world << "The current game mode is - Cult!" + world << "Some crewmembers are attempting to start a cult!
    \nCultists - sacrifice your target and summon Nar-Sie at all costs. Convert crewmembers to your cause by using the convert rune, or sacrifice them and turn them into constructs. Remember - there is no you, there is only the cult.
    \nPersonnel - Do not let the cult succeed in its mission. Forced consumption of holy water will convert a cultist back to a Nanotrasen-sanctioned faith.
    " + + /datum/game_mode/cult/pre_setup() cult_objectives += "sacrifice" cult_objectives += "eldergod" @@ -138,7 +144,9 @@ var/list/slots = list( "backpack" = slot_in_backpack, "left pocket" = slot_l_store, - "right pocket" = slot_r_store + "right pocket" = slot_r_store, + "left hand" = slot_l_hand, + "right hand" = slot_r_hand, ) var/T = new item_path(mob) @@ -149,6 +157,7 @@ return 0 else mob << "You have a [item_name] in your [where]." + mob.update_icons() if(where == "backpack") var/obj/item/weapon/storage/B = mob.back B.orient2hud(mob) @@ -158,21 +167,43 @@ /datum/game_mode/proc/add_cultist(datum/mind/cult_mind, stun) //BASE if (!istype(cult_mind)) return 0 - if(cult_mind.current.gain_antag_datum(/datum/antagonist/cultist)) + if(!(cult_mind in cult) && is_convertable_to_cult(cult_mind)) if(stun) cult_mind.current.Paralyse(5) - return 1 + cult += cult_mind + cult_mind.current.faction |= "cult" + cult_mind.current.verbs += /mob/living/proc/cult_help + var/datum/action/innate/cultcomm/C = new() + C.Grant(cult_mind.current) + update_cult_icons_added(cult_mind) + cult_mind.current.attack_log += "\[[time_stamp()]\] Has been converted to the cult!" + if(jobban_isbanned(cult_mind.current, ROLE_CULTIST)) + replace_jobbaned_player(cult_mind.current, ROLE_CULTIST, ROLE_CULTIST) + return 1 + + +/datum/game_mode/cult/add_cultist(datum/mind/cult_mind, stun) //INHERIT + if (!..(cult_mind)) + return + memorize_cult_objectives(cult_mind) + /datum/game_mode/proc/remove_cultist(datum/mind/cult_mind, show_message = 1, stun) - if(cult_mind.current) - var/datum/antagonist/cultist/cult_datum = cult_mind.current.has_antag_datum(/datum/antagonist/cultist, TRUE) - if(!cult_datum) - return FALSE - cult_datum.silent_update = show_message - cult_datum.on_remove() + if(cult_mind in cult) + cult -= cult_mind + cult_mind.current.faction -= "cult" + cult_mind.current.verbs -= /mob/living/proc/cult_help + for(var/datum/action/innate/cultcomm/C in cult_mind.current.actions) + qdel(C) if(stun) cult_mind.current.Paralyse(5) - return TRUE + cult_mind.current << "An unfamiliar white light flashes through your mind, cleansing the taint of the Dark One and all your memories as its servant." + cult_mind.memory = "" + update_cult_icons_removed(cult_mind) + cult_mind.current.attack_log += "\[[time_stamp()]\] Has renounced the cult!" + if(show_message) + for(var/mob/M in viewers(cult_mind.current)) + M << "[cult_mind.current] looks like they just reverted to their old faith!" /datum/game_mode/proc/update_cult_icons_added(datum/mind/cult_mind) var/datum/atom_hud/antag/culthud = huds[ANTAG_HUD_CULT] @@ -183,14 +214,12 @@ var/datum/atom_hud/antag/culthud = huds[ANTAG_HUD_CULT] culthud.leave_hud(cult_mind.current) set_antag_hud(cult_mind.current, null) - /datum/game_mode/cult/proc/get_unconvertables() var/list/ucs = list() for(var/mob/living/carbon/human/player in player_list) - if(player.mind && !is_convertable_to_cult(player) && !(player.mind in cultists_to_cult)) + if(player.mind && !is_convertable_to_cult(player.mind)) ucs += player.mind return ucs - /datum/game_mode/cult/proc/check_cult_victory() var/cult_fail = 0 if(cult_objectives.Find("survive")) @@ -237,11 +266,9 @@ if(!check_survive()) explanation = "Make sure at least [acolytes_needed] acolytes escape on the shuttle. ([acolytes_survived] escaped) Success!" feedback_add_details("cult_objective","cult_survive|SUCCESS|[acolytes_needed]") - ticker.news_report = CULT_ESCAPE else explanation = "Make sure at least [acolytes_needed] acolytes escape on the shuttle. ([acolytes_survived] escaped) Fail." feedback_add_details("cult_objective","cult_survive|FAIL|[acolytes_needed]") - ticker.news_report = CULT_FAILURE if("sacrifice") if(sacrifice_target) if(sacrifice_target in sacrificed) @@ -257,12 +284,9 @@ if(!eldergod) explanation = "Summon Nar-Sie. Success!" feedback_add_details("cult_objective","cult_narsie|SUCCESS") - ticker.news_report = CULT_SUMMON else explanation = "Summon Nar-Sie. Fail." feedback_add_details("cult_objective","cult_narsie|FAIL") - ticker.news_report = CULT_FAILURE - text += "
    Objective #[obj_count]: [explanation]" world << text ..() diff --git a/code/game/gamemodes/cult/cult_comms.dm b/code/game/gamemodes/cult/cult_comms.dm index 13f1c4acf2..606583e54e 100644 --- a/code/game/gamemodes/cult/cult_comms.dm +++ b/code/game/gamemodes/cult/cult_comms.dm @@ -3,7 +3,6 @@ name = "Communion" button_icon_state = "cult_comms" background_icon_state = "bg_demon" - buttontooltipstyle = "cult" check_flags = AB_CHECK_RESTRAINED|AB_CHECK_STUNNED|AB_CHECK_CONSCIOUS /datum/action/innate/cultcomm/IsAvailable() @@ -30,9 +29,9 @@ if(!user) return if(!ishuman(user)) - user.say(html_decode(message)) + user.say(message) else - user.whisper(html_decode(message)) + user.whisper(message) var/my_message = "[(ishuman(user) ? "Acolyte" : "Construct")] [user]: [message]" for(var/mob/M in mob_list) if(iscultist(M)) diff --git a/code/game/gamemodes/cult/cult_items.dm b/code/game/gamemodes/cult/cult_items.dm index 1b5668b525..23c87afb67 100644 --- a/code/game/gamemodes/cult/cult_items.dm +++ b/code/game/gamemodes/cult/cult_items.dm @@ -5,7 +5,7 @@ item_state = "cultblade" flags = CONDUCT sharpness = IS_SHARP - w_class = WEIGHT_CLASS_BULKY + w_class = 4 force = 30 throwforce = 10 hitsound = 'sound/weapons/bladeslice.ogg' @@ -45,7 +45,7 @@ desc = "A strange dagger said to be used by sinister groups for \"preparing\" a corpse before sacrificing it to their dark gods." icon = 'icons/obj/wizard.dmi' icon_state = "render" - w_class = WEIGHT_CLASS_SMALL + w_class = 2 force = 15 throwforce = 25 embed_chance = 75 @@ -73,7 +73,7 @@ desc = "A torn, dust-caked hood. Strange letters line the inside." flags_inv = HIDEFACE|HIDEHAIR|HIDEEARS flags_cover = HEADCOVERSEYES - armor = list(melee = 30, bullet = 10, laser = 5,energy = 5, bomb = 0, bio = 0, rad = 0, fire = 10, acid = 10) + armor = list(melee = 30, bullet = 10, laser = 5,energy = 5, bomb = 0, bio = 0, rad = 0) cold_protection = HEAD min_cold_protection_temperature = HELMET_MIN_TEMP_PROTECT heat_protection = HEAD @@ -86,7 +86,7 @@ item_state = "cultrobes" body_parts_covered = CHEST|GROIN|LEGS|ARMS allowed = list(/obj/item/weapon/tome,/obj/item/weapon/melee/cultblade) - armor = list(melee = 50, bullet = 30, laser = 50,energy = 20, bomb = 25, bio = 10, rad = 0, fire = 10, acid = 10) + armor = list(melee = 50, bullet = 30, laser = 50,energy = 20, bomb = 25, bio = 10, rad = 0) flags_inv = HIDEJUMPSUIT cold_protection = CHEST|GROIN|LEGS|ARMS min_cold_protection_temperature = ARMOR_MIN_TEMP_PROTECT @@ -113,7 +113,7 @@ item_state = "magus" desc = "A helm worn by the followers of Nar-Sie." flags_inv = HIDEFACE|HIDEHAIR|HIDEFACIALHAIR|HIDEEARS|HIDEEYES - armor = list(melee = 30, bullet = 30, laser = 30,energy = 20, bomb = 0, bio = 0, rad = 0, fire = 10, acid = 10) + armor = list(melee = 30, bullet = 30, laser = 30,energy = 20, bomb = 0, bio = 0, rad = 0) flags_cover = HEADCOVERSEYES | HEADCOVERSMOUTH /obj/item/clothing/suit/magusred @@ -123,7 +123,7 @@ item_state = "magusred" body_parts_covered = CHEST|GROIN|LEGS|ARMS allowed = list(/obj/item/weapon/tome,/obj/item/weapon/melee/cultblade) - armor = list(melee = 50, bullet = 30, laser = 50,energy = 20, bomb = 25, bio = 10, rad = 0, fire = 10, acid = 10) + armor = list(melee = 50, bullet = 30, laser = 50,energy = 20, bomb = 25, bio = 10, rad = 0) flags_inv = HIDEGLOVES|HIDESHOES|HIDEJUMPSUIT /obj/item/clothing/head/helmet/space/hardsuit/cult @@ -131,7 +131,7 @@ desc = "A heavily-armored helmet worn by warriors of the Nar-Sien cult. It can withstand hard vacuum." icon_state = "cult_helmet" item_state = "cult_helmet" - armor = list(melee = 60, bullet = 50, laser = 30,energy = 15, bomb = 30, bio = 30, rad = 30, fire = 40, acid = 75) + armor = list(melee = 60, bullet = 50, laser = 30,energy = 15, bomb = 30, bio = 30, rad = 30) brightness_on = 0 actions_types = list() @@ -140,9 +140,9 @@ icon_state = "cult_armor" item_state = "cult_armor" desc = "A heavily-armored exosuit worn by warriors of the Nar-Sien cult. It can withstand hard vacuum." - w_class = WEIGHT_CLASS_SMALL + w_class = 2 allowed = list(/obj/item/weapon/tome,/obj/item/weapon/melee/cultblade,/obj/item/weapon/tank/internals/) - armor = list(melee = 70, bullet = 50, laser = 30,energy = 15, bomb = 30, bio = 30, rad = 30, fire = 40, acid = 75) + armor = list(melee = 70, bullet = 50, laser = 30,energy = 15, bomb = 30, bio = 30, rad = 30) helmettype = /obj/item/clothing/head/helmet/space/hardsuit/cult /obj/item/weapon/sharpener/cult @@ -158,8 +158,8 @@ desc = "Empowered garb which creates a powerful shield around the user." icon_state = "cult_armor" item_state = "cult_armor" - w_class = WEIGHT_CLASS_BULKY - armor = list(melee = 50, bullet = 40, laser = 50,energy = 30, bomb = 50, bio = 30, rad = 30, fire = 50, acid = 60) + w_class = 4 + armor = list(melee = 50, bullet = 40, laser = 50,energy = 30, bomb = 50, bio = 30, rad = 30) body_parts_covered = CHEST|GROIN|LEGS|ARMS allowed = list(/obj/item/weapon/tome,/obj/item/weapon/melee/cultblade) var/current_charges = 3 @@ -170,7 +170,7 @@ name = "empowered cultist armor" desc = "Empowered garb which creates a powerful shield around the user." icon_state = "cult_hoodalt" - armor = list(melee = 50, bullet = 40, laser = 50,energy = 30, bomb = 50, bio = 30, rad = 30, fire = 50, acid = 50) + armor = list(melee = 50, bullet = 40, laser = 50,energy = 30, bomb = 50, bio = 30, rad = 30) body_parts_covered = HEAD flags = NODROP flags_inv = HIDEHAIR|HIDEFACE|HIDEEARS @@ -185,7 +185,7 @@ user.Dizzy(30) user.Weaken(5) else - user << "\"Trying to use things you don't own is bad, you know.\"" + user << "\"Putting on things you don't own is bad, you know.\"" user << "The armor squeezes at your body!" user.emote("scream") user.adjustBruteLoss(25) @@ -215,7 +215,7 @@ flags_inv = HIDEJUMPSUIT allowed = list(/obj/item/weapon/tome,/obj/item/weapon/melee/cultblade) body_parts_covered = CHEST|GROIN|LEGS|ARMS - armor = list(melee = -50, bullet = -50, laser = -100,energy = -50, bomb = -50, bio = -50, rad = -50, fire = 0, acid = 0) + armor = list(melee = -100, bullet = -100, laser = -100,energy = -100, bomb = -100, bio = -100, rad = -100) slowdown = -1 hooded = 1 hoodtype = /obj/item/clothing/head/berserkerhood @@ -227,7 +227,7 @@ body_parts_covered = HEAD flags = NODROP flags_inv = HIDEHAIR|HIDEFACE|HIDEEARS - armor = list(melee = -50, bullet = -50, laser = -50, energy = -50, bomb = -50, bio = -50, rad = -50, fire = 0, acid = 0) + armor = list(melee = -100, bullet = -100, laser = -100,energy = -100, bomb = -100, bio = -100, rad = -100) /obj/item/clothing/suit/hooded/cultrobes/berserker/equipped(mob/living/user, slot) ..() @@ -239,7 +239,7 @@ user.Dizzy(30) user.Weaken(5) else - user << "\"Trying to use things you don't own is bad, you know.\"" + user << "\"Putting on things you don't own is bad, you know.\"" user << "The robes squeeze at your body!" user.emote("scream") user.adjustBruteLoss(25) @@ -286,7 +286,7 @@ user << "We have exhausted our ability to curse the shuttle." return if(SSshuttle.emergency.mode == SHUTTLE_CALL) - var/cursetime = 1800 + var/cursetime = 1500 var/timer = SSshuttle.emergency.timeLeft(1) + cursetime SSshuttle.emergency.setTimer(timer) user << "You shatter the orb! A dark essence spirals into the air, then disappears." @@ -295,12 +295,12 @@ sleep(20) var/global/list/curses if(!curses) - curses = list("A fuel technician just slit his own throat and begged for death. The shuttle will be delayed by three minutes.", - "The shuttle's navigation programming was replaced by a file containing two words, IT COMES. The shuttle will be delayed by three minutes.", - "The shuttle's custodian tore out his guts and began painting strange shapes on the floor. The shuttle will be delayed by three minutes.", - "A shuttle engineer began screaming 'DEATH IS NOT THE END' and ripped out wires until an arc flash seared off her flesh. The shuttle will be delayed by three minutes.", - "A shuttle inspector started laughing madly over the radio and then threw herself into an engine turbine. The shuttle will be delayed by three minutes.", - "The shuttle dispatcher was found dead with bloody symbols carved into their flesh. The shuttle will be delayed by three minutes.") + curses = list("A fuel technician just slit his own throat and begged for death. The shuttle will be delayed by two minutes.", + "The shuttle's navigation programming was replaced by a file containing two words, IT COMES. The shuttle will be delayed by two minutes.", + "The shuttle's custodian tore out his guts and began painting strange shapes on the floor. The shuttle will be delayed by two minutes.", + "A shuttle engineer began screaming 'DEATH IS NOT THE END' and ripped out wires until an arc flash seared off her flesh. The shuttle will be delayed by two minutes.", + "A shuttle inspector started laughing madly over the radio and then threw herself into an engine turbine. The shuttle will be delayed by two minutes.", + "The shuttle dispatcher was found dead with bloody symbols carved into their flesh. The shuttle will be delayed by two minutes.") var/message = pick_n_take(curses) priority_announce("[message]", "System Failure", 'sound/misc/notice1.ogg') curselimit++ @@ -310,7 +310,7 @@ desc = "This relic teleports you forward a medium distance." icon = 'icons/obj/cult.dmi' icon_state ="shifter" - var/uses = 4 + var/uses = 2 /obj/item/device/cult_shift/examine(mob/user) ..() @@ -333,7 +333,7 @@ if(!iscultist(user)) user.unEquip(src, 1) step(src, pick(alldirs)) - user << "\The [src] flickers out of your hands, your connection to this dimension is too strong!" + user << "\The [src] flickers out of your hands, too eager to move!" return var/mob/living/carbon/C = user @@ -345,67 +345,16 @@ if(uses <= 0) icon_state ="shifter_drained" playsound(mobloc, "sparks", 50, 1) - PoolOrNew(/obj/effect/overlay/temp/dir_setting/cult/phase/out, list(mobloc, C.dir)) + PoolOrNew(/obj/effect/overlay/temp/cult/phase/out, list(mobloc, C.dir)) var/atom/movable/pulled = handle_teleport_grab(destination, C) C.forceMove(destination) if(pulled) C.start_pulling(pulled) //forcemove resets pulls, so we need to re-pull - PoolOrNew(/obj/effect/overlay/temp/dir_setting/cult/phase, list(destination, C.dir)) + PoolOrNew(/obj/effect/overlay/temp/cult/phase, list(destination, C.dir)) playsound(destination, 'sound/effects/phasein.ogg', 25, 1) playsound(destination, "sparks", 50, 1) else C << "The veil cannot be torn here!" - -/obj/item/device/flashlight/flare/culttorch - name = "void torch" - desc = "Used by veteran cultists to instantly transport items to their needful bretheren." - w_class = WEIGHT_CLASS_SMALL - brightness_on = 1 - icon_state = "torch-on" - item_state = "torch-on" - color = "#ff0000" - on_damage = 15 - slot_flags = null - on = 1 - var/charges = 3 - -/obj/item/device/flashlight/flare/culttorch/afterattack(atom/movable/A, mob/user, proximity) - if(!proximity) - return - - if(istype(A, /obj/item)) - - var/list/cultists = list() - for(var/datum/mind/M in ticker.mode.cult) - if(!(user) && M.current && M.current.stat != DEAD) - cultists |= M.current - var/mob/living/cultist_to_receive = input(user, "Who do you wish to call to [src]?", "Followers of the Geometer") as null|anything in cultists - if(!Adjacent(user) || !src || qdeleted(src) || user.incapacitated()) - return - if(!cultist_to_receive) - user << "You require a destination!" - log_game("Void torch failed - no target") - return - if(cultist_to_receive.stat == DEAD) - user << "[cultist_to_receive] has died!" - log_game("Void torch failed - target died") - return - if(!iscultist(cultist_to_receive)) - user << "[cultist_to_receive] is not a follower of the Geometer!" - log_game("Void torch failed - target was deconverted") - return - user << "You ignite [A] with \the [src], turning it to ash, but through the torch's flames you see that [A] has reached [cultist_to_receive]!" - user << "\The [src] now has [charges] charge\s." - cultist_to_receive.put_in_hands(A) - charges-- - if(charges == 0) - qdel(src) - - else - ..() - user << "\The [src] can only transport items!" - return - diff --git a/code/game/gamemodes/cult/cult_structures.dm b/code/game/gamemodes/cult/cult_structures.dm index 536d2c8c57..81cdbfd149 100644 --- a/code/game/gamemodes/cult/cult_structures.dm +++ b/code/game/gamemodes/cult/cult_structures.dm @@ -1,36 +1,18 @@ -/obj/structure/destructible/cult +/obj/structure/cult density = 1 anchored = 1 icon = 'icons/obj/cult.dmi' var/cooldowntime = 0 - break_sound = 'sound/hallucinations/veryfar_noise.ogg' - debris = list(/obj/item/stack/sheet/runed_metal = 1) + var/health = 100 + var/maxhealth = 100 -/obj/structure/destructible/cult/examine(mob/user) +/obj/structure/cult/examine(mob/user) ..() - var/can_see_cult = iscultist(user) || isobserver(user) - var/t_It = p_they(TRUE) - var/t_is = p_are() - if(!(resistance_flags & INDESTRUCTIBLE)) - if(can_see_cult) - user << "[t_It] [t_is] at [round(obj_integrity * 100 / max_integrity)]% stability." user << "\The [src] is [anchored ? "":"not "]secured to the floor." - if(can_see_cult && cooldowntime > world.time) - user << "The magic in [src] is too weak, [t_It] will be ready to use again in [getETA()]." + if(iscultist(user) && cooldowntime > world.time) + user << "The magic in [src] is weak, it will be ready to use again in [getETA()]." -/obj/structure/destructible/cult/attack_animal(mob/living/simple_animal/M) - if(istype(M, /mob/living/simple_animal/hostile/construct/builder)) - if(obj_integrity < max_integrity) - obj_integrity = min(max_integrity, obj_integrity + 5) - Beam(M, icon_state="sendbeam", time=4) - M.visible_message("[M] repairs \the [src].", \ - "You repair [src], leaving [p_they()] at [round(obj_integrity * 100 / max_integrity)]% stability.") - else - M << "You cannot repair [src], as [p_they()] [p_are()] undamaged!" - else - ..() - -/obj/structure/destructible/cult/attackby(obj/I, mob/user, params) +/obj/structure/cult/attackby(obj/I, mob/user, params) if(istype(I, /obj/item/weapon/tome) && iscultist(user)) anchored = !anchored user << "You [anchored ? "":"un"]secure \the [src] [anchored ? "to":"from"] the floor." @@ -41,14 +23,7 @@ else return ..() -/obj/structure/destructible/cult/ratvar_act() - if(take_damage(rand(25, 50), BURN) && src) //if we still exist - var/previouscolor = color - color = "#FAE48C" - animate(src, color = previouscolor, time = 8) - addtimer(src, "update_atom_colour", 8) - -/obj/structure/destructible/cult/proc/getETA() +/obj/structure/cult/proc/getETA() var/time = (cooldowntime - world.time)/600 var/eta = "[round(time, 1)] minutes" if(time <= 1) @@ -56,13 +31,12 @@ eta = "[round(time, 1)] seconds" return eta -/obj/structure/destructible/cult/talisman +/obj/structure/cult/talisman name = "altar" desc = "A bloodstained altar dedicated to Nar-Sie." icon_state = "talismanaltar" - break_message = "The altar shatters, leaving only the wailing of the damned!" -/obj/structure/destructible/cult/talisman/attack_hand(mob/living/user) +/obj/structure/cult/talisman/attack_hand(mob/living/user) if(!iscultist(user)) user << "You're pretty sure you know exactly what this is used for and you can't seem to touch it." return @@ -87,14 +61,13 @@ user << "You kneel before the altar and your faith is rewarded with an [N]!" -/obj/structure/destructible/cult/forge +/obj/structure/cult/forge name = "daemon forge" desc = "A forge used in crafting the unholy weapons used by the armies of Nar-Sie." icon_state = "forge" luminosity = 3 - break_message = "The force breaks apart into shards with a howling scream!" -/obj/structure/destructible/cult/forge/attack_hand(mob/living/user) +/obj/structure/cult/forge/attack_hand(mob/living/user) if(!iscultist(user)) user << "The heat radiating from [src] pushes you back." return @@ -126,27 +99,25 @@ var/list/blacklisted_pylon_turfs = typecacheof(list( /turf/open/floor/plating/lava, /turf/open/chasm)) -/obj/structure/destructible/cult/pylon +/obj/structure/cult/pylon name = "pylon" desc = "A floating crystal that slowly heals those faithful to Nar'Sie." icon_state = "pylon" luminosity = 5 - break_sound = 'sound/effects/Glassbr2.ogg' - break_message = "The blood-red crystal falls to the floor and shatters!" var/heal_delay = 25 var/last_heal = 0 var/corrupt_delay = 50 var/last_corrupt = 0 -/obj/structure/destructible/cult/pylon/New() +/obj/structure/cult/pylon/New() START_PROCESSING(SSfastprocess, src) ..() -/obj/structure/destructible/cult/pylon/Destroy() +/obj/structure/cult/pylon/Destroy() STOP_PROCESSING(SSfastprocess, src) return ..() -/obj/structure/destructible/cult/pylon/process() +/obj/structure/cult/pylon/process() if(!anchored) return if(last_heal <= world.time) @@ -184,20 +155,19 @@ var/list/blacklisted_pylon_turfs = typecacheof(list( else var/turf/open/floor/engine/cult/F = safepick(cultturfs) if(F) - PoolOrNew(/obj/effect/overlay/temp/cult/turf/floor, F) + PoolOrNew(/obj/effect/overlay/temp/cult/turf/open/floor, F) else // Are we in space or something? No cult turfs or // convertable turfs? last_corrupt = world.time + corrupt_delay*2 -/obj/structure/destructible/cult/tome +/obj/structure/cult/tome name = "archives" desc = "A desk covered in arcane manuscripts and tomes in unknown languages. Looking at the text makes your skin crawl." icon_state = "tomealtar" luminosity = 1 - break_message = "The books and tomes of the archives burn into ash as the desk shatters!" -/obj/structure/destructible/cult/tome/attack_hand(mob/living/user) +/obj/structure/cult/tome/attack_hand(mob/living/user) if(!iscultist(user)) user << "All of these books seem to be gibberish." return @@ -207,21 +177,19 @@ var/list/blacklisted_pylon_turfs = typecacheof(list( if(cooldowntime > world.time) user << "The magic in [src] is weak, it will be ready to use again in [getETA()]." return - var/choice = alert(user,"You flip through the black pages of the archives...",,"Supply Talisman","Shuttle Curse","Veil Walker Set") - var/list/pickedtype = list() + var/choice = alert(user,"You flip through the black pages of the archives...",,"Supply Talisman","Shuttle Curse","Veil Shifter") + var/pickedtype switch(choice) if("Supply Talisman") - pickedtype += /obj/item/weapon/paper/talisman/supply/weak + pickedtype = /obj/item/weapon/paper/talisman/supply/weak if("Shuttle Curse") - pickedtype += /obj/item/device/shuttle_curse - if("Veil Walker Set") - pickedtype += /obj/item/device/cult_shift - pickedtype += /obj/item/device/flashlight/flare/culttorch - if(src && !qdeleted(src) && anchored && pickedtype.len && Adjacent(user) && !user.incapacitated() && iscultist(user) && cooldowntime <= world.time) + pickedtype = /obj/item/device/shuttle_curse + if("Veil Shifter") + pickedtype = /obj/item/device/cult_shift + if(src && !qdeleted(src) && anchored && pickedtype && Adjacent(user) && !user.incapacitated() && iscultist(user) && cooldowntime <= world.time) cooldowntime = world.time + 2400 - for(var/N in pickedtype) - var/obj/item/D = new N(get_turf(src)) - user << "You summon [D] from the archives!" + var/obj/item/N = new pickedtype(get_turf(src)) + user << "You summon [N] from the archives!" /obj/effect/gateway name = "gateway" @@ -229,4 +197,5 @@ var/list/blacklisted_pylon_turfs = typecacheof(list( icon = 'icons/obj/cult.dmi' icon_state = "hole" density = 1 + unacidable = 1 anchored = 1 diff --git a/code/game/gamemodes/cult/ritual.dm b/code/game/gamemodes/cult/ritual.dm index dc840593d7..651eab6405 100644 --- a/code/game/gamemodes/cult/ritual.dm +++ b/code/game/gamemodes/cult/ritual.dm @@ -11,7 +11,7 @@ This file contains the arcane tome files. icon_state ="tome" throw_speed = 2 throw_range = 5 - w_class = WEIGHT_CLASS_SMALL + w_class = 2 /obj/item/weapon/tome/examine(mob/user) ..() @@ -34,7 +34,7 @@ This file contains the arcane tome files. M.reagents.add_reagent("unholywater",holy2unholy) add_logs(user, M, "smacked", src, " removing the holy water from them") return - M.take_bodypart_damage(0, 15) //Used to be a random between 5 and 20 + M.take_organ_damage(0, 15) //Used to be a random between 5 and 20 playsound(M, 'sound/weapons/sear.ogg', 50, 1) M.visible_message("[user] strikes [M] with the arcane tome!", \ "[user] strikes you with the tome, searing your flesh!") @@ -67,15 +67,20 @@ This file contains the arcane tome files. invoking it and choosing which talisman you desire, the paper will be converted, after some delay into a talisman.

    " text += "Teleport
    This rune is unique in that it requires a keyword before the scribing can begin. When invoked, it will find any other Teleport runes; \ - If any are found, the user can choose which rune to send to. Upon activation, the rune teleports everything above it to the selected rune, provided the selected rune is unblocked.

    " + If any are found, the user can choose which rune to send to. Upon activation, the rune teleports everything above it to the selected rune.

    " - text += "Offer
    This rune is necessary to achieve your goals. Placing a noncultist above it will convert them if it can and sacrifice them otherwise. \ - It requires two invokers to convert a target and three to sacrifice a living target or the sacrifice target.
    \ - Successful conversions will produce a tome for the new cultist, in addition to healing them.
    \ - Successful sacrifices will please the Geometer, can complete your objective if it sacrificed the sacrifice target, and will attempt to place the target into a soulstone.

    " + text += "Convert
    This rune is critical to the success of the cult. It will allow you to convert normal crew members into cultists. \ + To do this, simply place the crew member upon the rune and invoke it. This rune requires two invokers to use. If the target to be converted is mindshield-implanted or a certain assignment, they will \ + be unable to be converted. People the Geometer wishes sacrificed will also be ineligible for conversion, and anyone with a shielding presence like the null rod will not be converted.
    \ + Successful conversions will produce a tome for the new cultist.

    " - text += "Raise Dead
    This rune requires the corpse of a cultist placed upon the rune, and one person sacrificed for each revival you wish to do.\ - Provided there are remaining revivals from those sacrificed, invoking the rune will revive the cultist placed upon it.

    " + text += "Sacrifice
    This rune is necessary to achieve your goals. Simply place any dead creature upon the rune and invoke it (this will not \ + target cultists!). If this creature has a mind, a soulstone will be created and the creature's soul transported to it. Sacrificing the dead can be done alone, but sacrificing living crew or your cult's target will require 3 cultists. \ + Soulstones used on construct shells will move that soul into a powerful construct of your choice.

    " + + text += "Raise Dead
    This rune requires two corpses. To perform the ritual, place the corpse you wish to revive onto \ + the rune and the offering body adjacent to it. When the rune is invoked, the body to be sacrificed will turn to dust, the life force flowing into the revival target. Assuming the target is not moved \ + within a few seconds, they will be brought back to life, healed of all ailments.

    " text += "Electromagnetic Disruption
    Robotic lifeforms have time and time again been the downfall of fledgling cults. This rune may allow you to gain the upper \ hand against these pests. By using the rune, a large electromagnetic pulse will be emitted from the rune's location. The size of the EMP will grow significantly for each additional adjacent cultist when the \ @@ -86,18 +91,16 @@ This file contains the arcane tome files. The body will also take constant damage while in this form, and may even die. The user's spirit will contain their consciousness, and will allow them to freely wander the station as a ghost. This may \ also be used to commune with the dead.

    " - text += "Form Barrier
    While simple, this rune serves an important purpose in defense and hindering passage. When invoked, the rune will draw a small amount of blood from the user \ - and make the space above the rune completely dense, rendering it impassable for about a minute and a half. This effect will spread to other nearby Barrier Runes. \ - The rune may be invoked again to undo this effect and allow passage again.

    " + text += "Form Barrier
    While simple, this rune serves an important purpose in defense and hindering passage. When invoked, the \ + rune will draw a small amount of life force from the user and make the space above the rune completely dense, rendering it impassable to all but the most complex means. The rune may be invoked again to \ + undo this effect and allow passage again.

    " text += "Summon Cultist
    This rune allows the cult to free other cultists with ease. When invoked, it will allow the user to summon a single cultist to the rune from \ any location. It requires two invokers, and will damage each invoker slightly.

    " - text += "Blood Boil
    When invoked, this rune will rapidly do a massive amount of damage to all non-cultist viewers, but it will also emit a burst of flame once it finishes. \ + text += "Blood Boil
    When invoked, this rune will do a massive amount of damage to all non-cultist viewers, but it will also emit a small explosion upon invocation. \ It requires three invokers.

    " - text += "Drain Life
    This rune will drain the life of every living creature above the rune, healing the invoker for each creature drained by it.

    " - text += "Manifest Spirit
    This rune allows you to summon spirits as humanoid fighters. When invoked, a spirit above the rune will be brought to life as a human, wearing nothing, that seeks only to serve you and the Geometer. \ However, the spirit's link to reality is fragile - you must remain on top of the rune, and you will slowly take damage. Upon stepping off the rune, all summoned spirits will dissipate, dropping their items to the ground. You may manifest \ multiple spirits with one rune, but you will rapidly take damage in doing so.

    " @@ -108,7 +111,7 @@ This file contains the arcane tome files. text += "Talisman of Teleportation
    The talisman form of the Teleport rune will transport the invoker to a selected Teleport rune once.

    " - text += "Talisman of Construction
    This talisman is the main way of creating construct shells. To use it, one must strike 25 sheets of metal with the talisman. The sheets will then be twisted into a construct shell, ready to recieve a soul to occupy it.

    " + text += "Talisman of Construction
    This talisman is the main way of creating construct shells. To use it, one must strike 30 sheets of metal with the talisman. The sheets will then be twisted into a construct shell, ready to recieve a soul to occupy it.

    " text += "Talisman of Tome Summoning
    This talisman will produce a single tome at your feet.

    " @@ -171,8 +174,15 @@ This file contains the arcane tome files. var/list/shields = list() var/area/A = get_area(src) - if(!check_rune_turf(Turf, user)) + if(locate(/obj/effect/rune) in Turf) + user << "There is already a rune here." return + + if(Turf.z != ZLEVEL_STATION && Turf.z != ZLEVEL_MINING) + user << "The veil is not weak enough here." + return + if(istype(A, /area/shuttle)) + user << "Interference from hyperspace engines disrupts the Geometer's power on shuttles." for(var/T in subtypesof(/obj/effect/rune) - /obj/effect/rune/malformed) var/obj/effect/rune/R = T if(initial(R.cultist_name)) @@ -180,7 +190,10 @@ This file contains the arcane tome files. if(!possible_runes.len) return entered_rune_name = input(user, "Choose a rite to scribe.", "Sigils of Power") as null|anything in possible_runes - if(!src || qdeleted(src) || !Adjacent(user) || user.incapacitated() || !check_rune_turf(Turf, user)) + if(!Adjacent(user) || !src || qdeleted(src) || user.incapacitated()) + return + if(istype(Turf, /turf/open/space)) + user << "You cannot scribe runes in space!" return for(var/T in typesof(/obj/effect/rune)) var/obj/effect/rune/R = T @@ -195,7 +208,10 @@ This file contains the arcane tome files. if(!rune_to_scribe) return Turf = get_turf(user) //we may have moved. adjust as needed... - if(!src || qdeleted(src) || !Adjacent(user) || user.incapacitated() || !check_rune_turf(Turf, user)) + if(locate(/obj/effect/rune) in Turf) + user << "There is already a rune here." + return + if(!Adjacent(user) || !src || qdeleted(src) || user.incapacitated()) return if(ispath(rune_to_scribe, /obj/effect/rune/narsie)) if(ticker.mode.name == "cult") @@ -221,50 +237,32 @@ This file contains the arcane tome files. priority_announce("Figments from an eldritch god are being summoned by [user] into [locname] from an unknown dimension. Disrupt the ritual at all costs!","Central Command Higher Dimensionsal Affairs", 'sound/AI/spanomalies.ogg') for(var/B in spiral_range_turfs(1, user, 1)) var/turf/T = B - var/obj/structure/emergency_shield/sanguine/N = new(T) + var/obj/machinery/shield/N = new(T) + N.name = "sanguine barrier" + N.desc = "A potent shield summoned by cultists to defend their rites." + N.icon_state = "shield-red" + N.health = 60 shields |= N else user << "Nar-Sie does not wish to be summoned!" return - user.visible_message("[user] [user.blood_volume ? "cuts open their arm and begins writing in their own blood":"begins sketching out a strange design"]!", \ - "You [user.blood_volume ? "slice open your arm and ":""]begin drawing a sigil of the Geometer.") - if(user.blood_volume) - user.apply_damage(initial(rune_to_scribe.scribe_damage), BRUTE, pick("l_arm", "r_arm")) + user.visible_message("[user] cuts open their arm and begins writing in their own blood!", \ + "You slice open your arm and begin drawing a sigil of the Geometer.") + user.apply_damage(initial(rune_to_scribe.scribe_damage), BRUTE, pick("l_arm", "r_arm")) if(!do_after(user, initial(rune_to_scribe.scribe_delay), target = get_turf(user))) for(var/V in shields) - var/obj/structure/emergency_shield/sanguine/S = V + var/obj/machinery/shield/S = V if(S && !qdeleted(S)) qdel(S) return - if(!check_rune_turf(Turf, user)) + if(locate(/obj/effect/rune) in Turf) + user << "There is already a rune here." return - user.visible_message("[user] creates a strange circle[user.blood_volume ? " in their own blood":""].", \ + user.visible_message("[user] creates a strange circle in their own blood.", \ "You finish drawing the arcane markings of the Geometer.") for(var/V in shields) - var/obj/structure/emergency_shield/S = V + var/obj/machinery/shield/S = V if(S && !qdeleted(S)) qdel(S) - var/obj/effect/rune/R = new rune_to_scribe(Turf, chosen_keyword) - user << "The [lowertext(R.cultist_name)] rune [R.cultist_desc]" - feedback_add_details("cult_runes_scribed", R.cultist_name) - -/obj/item/weapon/tome/proc/check_rune_turf(turf/T, mob/user) - var/area/A = get_area(T) - - if(isspaceturf(T)) - user << "You cannot scribe runes in space!" - return FALSE - - if(locate(/obj/effect/rune) in T) - user << "There is already a rune here." - return FALSE - - if(T.z != ZLEVEL_STATION && T.z != ZLEVEL_MINING) - user << "The veil is not weak enough here." - return FALSE - - if(istype(A, /area/shuttle)) - user << "Interference from hyperspace engines disrupts the Geometer's power on shuttles." - return FALSE - - return TRUE + new rune_to_scribe(Turf, chosen_keyword) + user << "The [lowertext(initial(rune_to_scribe.cultist_name))] rune [initial(rune_to_scribe.cultist_desc)]" diff --git a/code/game/gamemodes/cult/runes.dm b/code/game/gamemodes/cult/runes.dm index fe66ba63ce..38ed454efa 100644 --- a/code/game/gamemodes/cult/runes.dm +++ b/code/game/gamemodes/cult/runes.dm @@ -1,4 +1,4 @@ -/var/list/sacrificed = list() //a mixed list of minds and mobs +/var/list/sacrificed = list() var/list/non_revealed_runes = (subtypesof(/obj/effect/rune) - /obj/effect/rune/malformed) /* @@ -21,13 +21,12 @@ To draw a rune, use an arcane tome. anchored = 1 icon = 'icons/obj/rune.dmi' icon_state = "1" - resistance_flags = FIRE_PROOF | UNACIDABLE | ACID_PROOF + unacidable = 1 layer = ABOVE_NORMAL_TURF_LAYER - color = "#FF0000" + color = rgb(255,0,0) var/invocation = "Aiy ele-mayo!" //This is said by cultists when the rune is invoked. var/req_cultists = 1 //The amount of cultists required around the rune to invoke it. If only 1, any cultist can invoke it. - var/req_cultists_text //if we have a description override for required cultists to invoke var/rune_in_use = 0 // Used for some runes, this is for when you want a rune to not be usable when in use. var/scribe_delay = 50 //how long the rune takes to create @@ -49,7 +48,7 @@ To draw a rune, use an arcane tome. if(iscultist(user) || user.stat == DEAD) //If they're a cultist or a ghost, tell them the effects user << "Name: [cultist_name]" user << "Effects: [capitalize(cultist_desc)]" - user << "Required Acolytes: [req_cultists_text ? "[req_cultists_text]":"[req_cultists]"]" + user << "Required Acolytes: [req_cultists]" if(req_keyword && keyword) user << "Keyword: [keyword]" @@ -138,9 +137,6 @@ structure_check() searches for nearby cultist structures required for the invoca for(var/M in invokers) var/mob/living/L = M L.say(invocation) - do_invoke_glow() - -/obj/effect/rune/proc/do_invoke_glow() var/oldtransform = transform spawn(0) //animate is a delay, we want to avoid being delayed animate(src, transform = matrix()*2, alpha = 0, time = 5) //fade out @@ -151,10 +147,8 @@ structure_check() searches for nearby cultist structures required for the invoca visible_message("The markings pulse with a \ small flash of red light, then fall dark.") spawn(0) //animate is a delay, we want to avoid being delayed - var/oldcolor = color - color = rgb(255, 0, 0) - animate(src, color = oldcolor, time = 5) - addtimer(src, "update_atom_colour", 5) + animate(src, color = rgb(255, 0, 0), time = 0) + animate(src, color = initial(color), time = 5) //Malformed Rune: This forms if a rune is not drawn correctly. Invoking it does nothing but hurt the user. /obj/effect/rune/malformed @@ -164,7 +158,7 @@ structure_check() searches for nearby cultist structures required for the invoca /obj/effect/rune/malformed/New() ..() - icon_state = "[rand(1,7)]" + icon_state = "[rand(1,6)]" color = rgb(rand(0,255), rand(0,255), rand(0,255)) /obj/effect/rune/malformed/invoke(var/list/invokers) @@ -181,19 +175,13 @@ structure_check() searches for nearby cultist structures required for the invoca return N return 0 -/mob/proc/bible_check() //The bible, if held, might protect against certain things - var/obj/item/weapon/storage/book/bible/B = locate() in src - if(is_holding(B)) - return B - return 0 - //Rite of Binding: A paper on top of the rune to a talisman. /obj/effect/rune/imbue cultist_name = "Create Talisman" cultist_desc = "transforms paper into powerful magic talismans." invocation = "H'drak v'loso, mir'kanas verbot!" icon_state = "3" - color = "#0000FF" + color = rgb(0, 0, 255) /obj/effect/rune/imbue/invoke(var/list/invokers) var/mob/living/user = invokers[1] //the first invoker is always the user @@ -302,11 +290,6 @@ var/list/teleport_runes = list() return var/turf/T = get_turf(src) - var/turf/target = get_turf(actual_selected_rune) - if(is_blocked_turf(target)) - user << "The target rune is blocked. Attempting to teleport to it would be massively unwise." - fail_invoke() - return var/movedsomething = 0 var/moveuserlater = 0 for(var/atom/movable/A in T) @@ -316,136 +299,158 @@ var/list/teleport_runes = list() continue if(!A.anchored) movedsomething = 1 - A.forceMove(target) + A.forceMove(get_turf(actual_selected_rune)) if(movedsomething) ..() visible_message("There is a sharp crack of inrushing air, and everything above the rune disappears!") user << "You[moveuserlater ? "r vision blurs, and you suddenly appear somewhere else":" send everything above the rune away"]." if(moveuserlater) - user.forceMove(target) + user.forceMove(get_turf(actual_selected_rune)) else fail_invoke() -//Rite of Offering: Converts or sacrifices a target. +//Rite of Enlightenment: Converts a normal crewmember to the cult. /obj/effect/rune/convert - cultist_name = "Offer" - cultist_desc = "offers a noncultist above it to Nar-Sie, either converting them or sacrificing them." - req_cultists_text = "2 for conversion, 3 for living sacrifices and sacrifice targets." + cultist_name = "Convert" + cultist_desc = "converts a normal crewmember on top of it to the cult. Does not work on mindshield-implanted crew." invocation = "Mah'weyh pleggh at e'ntrath!" icon_state = "3" - color = "#FFFFFF" - req_cultists = 1 - allow_excess_invokers = 1 - rune_in_use = FALSE - -/obj/effect/rune/convert/do_invoke_glow() - return + color = rgb(200, 0, 0) + req_cultists = 2 /obj/effect/rune/convert/invoke(var/list/invokers) - if(rune_in_use) - return - var/list/myriad_targets = list() + var/list/convertees = list() var/turf/T = get_turf(src) for(var/mob/living/M in T) - if(!iscultist(M)) - myriad_targets |= M - if(!myriad_targets.len) + if(M.stat != DEAD && !iscultist(M) && is_convertable_to_cult(M.mind)) + convertees |= M + else if(is_sacrifice_target(M.mind)) + for(var/C in invokers) + C << "\"I desire this one for myself. SACRIFICE THEM!\"" + else if(is_servant_of_ratvar(M)) + M.visible_message("[M]'s eyes glow a defiant yellow!", \ + "\"Stop resisting. You will be mi-\" \"Give up and you will feel pain unlike anything you've ever felt!\"") + M.Weaken(4) + if(!convertees.len) fail_invoke() - log_game("Offer rune failed - no eligible targets") + log_game("Convert rune failed - no eligible convertees") return - rune_in_use = TRUE - visible_message("[src] pulses blood red!") - var/oldcolor = color - color = "#7D1717" - var/mob/living/L = pick(myriad_targets) - var/is_clock = is_servant_of_ratvar(L) - var/is_convertable = is_convertable_to_cult(L) - if(L.stat != DEAD && (is_clock || is_convertable)) - invocation = "Mah'weyh pleggh at e'ntrath!" - ..() - if(is_clock) - L.visible_message("[L]'s eyes glow a defiant yellow!", \ - "\"Stop resisting. You will be mi-\"\n\ - \"Give up and you will feel pain unlike anything you've ever felt!\"") - L.Weaken(4) - else if(is_convertable) - do_convert(L, invokers) - else - invocation = "Barhah hra zar'garis!" - ..() - do_sacrifice(L, invokers) - animate(src, color = oldcolor, time = 5) - addtimer(src, "update_atom_colour", 5) - rune_in_use = FALSE - -/obj/effect/rune/convert/proc/do_convert(mob/living/convertee, list/invokers) - if(invokers.len < 2) + var/mob/living/new_cultist = pick(convertees) + if(new_cultist.null_rod_check()) for(var/M in invokers) - M << "You need more invokers to convert [convertee]!" - log_game("Offer rune failed - tried conversion with one invoker") - return 0 - if(convertee.null_rod_check()) - for(var/M in invokers) - M << "Something is shielding [convertee]'s mind!" - log_game("Offer rune failed - convertee had null rod") - return 0 - var/brutedamage = convertee.getBruteLoss() - var/burndamage = convertee.getFireLoss() - if(brutedamage || burndamage) - convertee.adjustBruteLoss(-(brutedamage * 0.75)) - convertee.adjustFireLoss(-(burndamage * 0.75)) - convertee.visible_message("[convertee] writhes in pain \ - [brutedamage || burndamage ? "even as [convertee.p_their()] wounds heal and close" : "as the markings below [convertee.p_them()] glow a bloody red"]!", \ - "AAAAAAAAAAAAAA-") - ticker.mode.add_cultist(convertee.mind, 1) + M << "Something is shielding [new_cultist]'s mind!" + fail_invoke() + log_game("Convert rune failed - convertee had null rod") + return + ..() + new_cultist.visible_message("[new_cultist] writhes in pain as the markings below them glow a bloody red!", \ + "AAAAAAAAAAAAAA-") + ticker.mode.add_cultist(new_cultist.mind, 1) new /obj/item/weapon/tome(get_turf(src)) - convertee.mind.special_role = "Cultist" - convertee << "Your blood pulses. Your head throbs. The world goes red. All at once you are aware of a horrible, horrible, truth. The veil of reality has been ripped away \ + new_cultist.mind.special_role = "Cultist" + new_cultist << "Your blood pulses. Your head throbs. The world goes red. All at once you are aware of a horrible, horrible, truth. The veil of reality has been ripped away \ and something evil takes root." - convertee << "Assist your new compatriots in their dark dealings. Your goal is theirs, and theirs is yours. You serve the Geometer above all else. Bring it back.\ + new_cultist << "Assist your new compatriots in their dark dealings. Your goal is theirs, and theirs is yours. You serve the Geometer above all else. Bring it back.\ " - return 1 -/obj/effect/rune/convert/proc/do_sacrifice(mob/living/sacrificial, list/invokers) - if((((ishuman(sacrificial) || iscyborg(sacrificial)) && sacrificial.stat != DEAD) || is_sacrifice_target(sacrificial.mind)) && invokers.len < 3) +//Rite of Tribute: Sacrifices a crew member to Nar-Sie. Places them into a soul shard if they're in their body. +/obj/effect/rune/sacrifice + cultist_name = "Sacrifice" + cultist_desc = "sacrifices a crew member to the Geometer. May place them into a soul shard if their spirit remains in their body." + icon_state = "3" + allow_excess_invokers = 1 + invocation = "Barhah hra zar'garis!" + color = rgb(255, 255, 255) + rune_in_use = 0 + +/obj/effect/rune/sacrifice/New() + ..() + icon_state = "[rand(1,6)]" + +/obj/effect/rune/sacrifice/invoke(var/list/invokers) + if(rune_in_use) + return + rune_in_use = 1 + var/mob/living/user = invokers[1] //the first invoker is always the user + var/turf/T = get_turf(src) + var/list/possible_targets = list() + for(var/mob/living/M in T.contents) + if(M.mind) + if(M.mind in sacrificed) + continue + if(!iscultist(M)) + possible_targets.Add(M) + var/mob/offering + if(possible_targets.len > 1) //If there's more than one target, allow choice + offering = input(user, "Choose an offering to sacrifice.", "Unholy Tribute") as null|anything in possible_targets + if(!Adjacent(user) || !src || qdeleted(src) || user.incapacitated()) + return + else if(possible_targets.len) //Otherwise, if there's a target at all, pick the only one + offering = possible_targets[possible_targets.len] + if(!offering) + rune_in_use = 0 + return + /*var/obj/item/weapon/nullrod/N = offering.null_rod_check() + if(N) + user << "Something is blocking the Geometer's magic!" + log_game("Sacrifice rune failed - target has \a [N]!") + fail_invoke() + rune_in_use = 0 + return*/ + if(((ishuman(offering) || isrobot(offering)) && offering.stat != DEAD) || is_sacrifice_target(offering.mind)) //Requires three people to sacrifice living targets + if(invokers.len < 3) + for(var/M in invokers) + M << "[offering] is too greatly linked to the world! You need three acolytes!" + fail_invoke() + log_game("Sacrifice rune failed - not enough acolytes and target is living") + rune_in_use = 0 + return + visible_message("[src] pulses blood red!") + color = rgb(126, 23, 23) + ..() + sac(invokers, offering) + color = initial(color) + +/obj/effect/rune/sacrifice/proc/sac(var/list/invokers, mob/living/T) + var/sacrifice_fulfilled + if(T) + if(istype(T, /mob/living/simple_animal/pet/dog)) + for(var/M in invokers) + var/mob/living/L = M + L << "\"Even I have standards, such as they are!\"" + if(L.reagents) + L.reagents.add_reagent("hell_water", 2) + if(T.mind) + sacrificed.Add(T.mind) + if(is_sacrifice_target(T.mind)) + sacrifice_fulfilled = 1 + PoolOrNew(/obj/effect/overlay/temp/cult/sac, src.loc) for(var/M in invokers) - M << "[sacrificial] is too greatly linked to the world! You need three acolytes!" - log_game("Offer rune failed - not enough acolytes and target is living or sac target") - return FALSE - var/sacrifice_fulfilled = FALSE - - if(sacrificial.mind) - sacrificed += sacrificial.mind - if(is_sacrifice_target(sacrificial.mind)) - sacrifice_fulfilled = TRUE - else - sacrificed += sacrificial - - PoolOrNew(/obj/effect/overlay/temp/cult/sac, get_turf(src)) - for(var/M in invokers) - if(sacrifice_fulfilled) - M << "\"Yes! This is the one I desire! You have done well.\"" - else - if(ishuman(sacrificial) || iscyborg(sacrificial)) - M << "\"I accept this sacrifice.\"" + if(sacrifice_fulfilled) + M << "\"Yes! This is the one I desire! You have done well.\"" else - M << "\"I accept this meager sacrifice.\"" - - var/obj/item/device/soulstone/stone = new /obj/item/device/soulstone(get_turf(src)) - if(sacrificial.mind) - stone.invisibility = INVISIBILITY_MAXIMUM //so it's not picked up during transfer_soul() - stone.transfer_soul("FORCE", sacrificial, usr) - stone.invisibility = 0 - - if(sacrificial) - if(iscyborg(sacrificial)) - playsound(sacrificial, 'sound/magic/Disable_Tech.ogg', 100, 1) - sacrificial.dust() //To prevent the MMI from remaining + if(ishuman(T) || isrobot(T)) + M << "\"I accept this sacrifice.\"" + else + M << "\"I accept this meager sacrifice.\"" + if(T.mind) + var/obj/item/device/soulstone/stone = new /obj/item/device/soulstone(get_turf(src)) + stone.invisibility = INVISIBILITY_MAXIMUM //so it's not picked up during transfer_soul() + if(!stone.transfer_soul("FORCE", T, usr)) //If it cannot be added + qdel(stone) + if(stone) + stone.invisibility = 0 + if(!T) + rune_in_use = 0 + return + if(isrobot(T)) + playsound(T, 'sound/magic/Disable_Tech.ogg', 100, 1) + T.dust() //To prevent the MMI from remaining else - playsound(sacrificial, 'sound/magic/Disintegrate.ogg', 100, 1) - sacrificial.gib() - return TRUE + playsound(T, 'sound/magic/Disintegrate.ogg', 100, 1) + T.gib() + rune_in_use = 0 //Ritual of Dimensional Rending: Calls forth the avatar of Nar-Sie upon the station. /obj/effect/rune/narsie @@ -454,14 +459,13 @@ var/list/teleport_runes = list() invocation = "TOK-LYR RQA-NAP G'OLT-ULOFT!!" req_cultists = 9 icon = 'icons/effects/96x96.dmi' - color = "#7D1717" + color = rgb(125,23,23) icon_state = "rune_large" pixel_x = -32 //So the big ol' 96x96 sprite shows up right pixel_y = -32 scribe_delay = 450 //how long the rune takes to create scribe_damage = 40.1 //how much damage you take doing it var/used - var/ignore_gamemode = FALSE /obj/effect/rune/narsie/New() . = ..() @@ -479,35 +483,28 @@ var/list/teleport_runes = list() return if(z != ZLEVEL_STATION) return - - var/datum/game_mode/cult/cult_mode - if(ticker.mode.name == "cult") - cult_mode = ticker.mode - - if(!cult_mode && !ignore_gamemode) + var/datum/game_mode/cult/cult_mode = ticker.mode + if(!cult_mode.eldergod) + for(var/M in invokers) + M << "Nar-Sie is already on this plane!" + log_game("Summon Nar-Sie rune failed - already summoned") + return + //BEGIN THE SUMMONING + used = 1 + ..() + world << 'sound/effects/dimensional_rend.ogg' //There used to be a message for this but every time it was changed it got edgier so I removed it + var/turf/T = get_turf(src) + sleep(40) + if(src) + color = rgb(255, 0, 0) + new /obj/singularity/narsie/large(T) //Causes Nar-Sie to spawn even if the rune has been removed + cult_mode.eldergod = 0 + else for(var/M in invokers) M << "Nar-Sie does not respond!" fail_invoke() log_game("Summon Nar-Sie rune failed - gametype is not cult") - return - - if(locate(/obj/singularity/narsie) in poi_list) - for(var/M in invokers) - M << "Nar-Sie is already on this plane!" - log_game("Summon Nar-Sie rune failed - already summoned") - return - //BEGIN THE SUMMONING - used = 1 - ..() - send_to_playing_players('sound/effects/dimensional_rend.ogg') //There used to be a message for this but every time it was changed it got edgier so I removed it - var/turf/T = get_turf(src) - sleep(40) - if(src) - color = "#FF0000" - new /obj/singularity/narsie/large(T) //Causes Nar-Sie to spawn even if the rune has been removed - if(cult_mode) - cult_mode.eldergod = 0 /obj/effect/rune/narsie/attackby(obj/I, mob/user, params) //Since the narsie rune takes a long time to make, add logging to removal. if((istype(I, /obj/item/weapon/tome) && iscultist(user))) @@ -524,47 +521,46 @@ var/list/teleport_runes = list() ..() return -//Rite of Resurrection: Requires the corpse of a cultist and that there have been less revives than the number of people sacrificed +//Rite of Resurrection: Requires two corpses. Revives one and gibs the other. /obj/effect/rune/raise_dead cultist_name = "Raise Dead" - cultist_desc = "requires the corpse of a cultist placed upon the rune. Provided there have been sufficient sacrifices, they will be revived." + cultist_desc = "requires two corpses, one on the rune and one adjacent to the rune. The one on the rune is brought to life, the other is turned to ash." invocation = null //Depends on the name of the user - see below icon_state = "1" - color = "#C80000" - var/static/revives_used = 0 - -/obj/effect/rune/raise_dead/examine(mob/user) - ..() - if(iscultist(user) || user.stat == DEAD) - var/revive_number = 0 - if(sacrificed.len) - revive_number = sacrificed.len - revives_used - user << "Revives Remaining: [revive_number]" + color = rgb(200, 0, 0) /obj/effect/rune/raise_dead/invoke(var/list/invokers) var/turf/T = get_turf(src) + var/mob/living/mob_to_sacrifice var/mob/living/mob_to_revive + var/list/potential_sacrifice_mobs = list() var/list/potential_revive_mobs = list() var/mob/living/user = invokers[1] if(rune_in_use) return + for(var/mob/living/M in orange(1,T)) + if(M.stat == DEAD && !iscultist(M)) + potential_sacrifice_mobs |= M + if(!potential_sacrifice_mobs.len) + user << "There are no eligible sacrifices nearby!" + log_game("Raise Dead rune failed - no catalyst corpses") + fail_invoke() + return for(var/mob/living/M in T.contents) - if(iscultist(M) && M.stat == DEAD) + if(M.stat == DEAD) potential_revive_mobs |= M if(!potential_revive_mobs.len) - user << "There are no dead cultists on the rune!" + user << "There is no eligible revival target on the rune!" log_game("Raise Dead rune failed - no corpses to revive") fail_invoke() return - if(!sacrificed.len || sacrificed.len <= revives_used) - user << "You have sacrificed too few people to revive a cultist!" - fail_invoke() + mob_to_sacrifice = input(user, "Choose a corpse to sacrifice.", "Corpse to Sacrifice") as null|anything in potential_sacrifice_mobs + if(!src || qdeleted(src) || rune_in_use || !validness_checks(mob_to_sacrifice, user, 1)) return - if(potential_revive_mobs.len > 1) - mob_to_revive = input(user, "Choose a cultist to revive.", "Cultist to Revive") as null|anything in potential_revive_mobs - else - mob_to_revive = potential_revive_mobs[1] - if(!src || qdeleted(src) || rune_in_use || !validness_checks(mob_to_revive, user)) + mob_to_revive = input(user, "Choose a corpse to revive.", "Corpse to Revive") as null|anything in potential_revive_mobs + if(!src || qdeleted(src) || rune_in_use || !validness_checks(mob_to_sacrifice, user, 1)) + return + if(!validness_checks(mob_to_revive, user, 0)) return rune_in_use = 1 if(user.name == "Herbert West") @@ -572,15 +568,27 @@ var/list/teleport_runes = list() else user.say("Pasnar val'keriam usinar. Savrae ines amutan. Yam'toth remium il'tarat!") ..() - revives_used++ + mob_to_sacrifice.visible_message("[mob_to_sacrifice]'s body rises into the air, connected to [mob_to_revive] by a glowing tendril!") + mob_to_revive.Beam(mob_to_sacrifice,icon_state="sendbeam",icon='icons/effects/effects.dmi',time=20) + sleep(20) + if(!mob_to_sacrifice || !in_range(mob_to_sacrifice, src)) + rune_in_use = 0 + return + if(!mob_to_revive || mob_to_revive.stat != DEAD) + visible_message("The glowing tendril snaps against the rune with a shocking crack.") + rune_in_use = 0 + fail_invoke() + return + mob_to_sacrifice.visible_message("[mob_to_sacrifice] disintegrates into a pile of bones.") + mob_to_sacrifice.dust() mob_to_revive.revive(1, 1) //This does remove disabilities and such, but the rune might actually see some use because of it! mob_to_revive.grab_ghost() mob_to_revive << "\"PASNAR SAVRAE YAM'TOTH. Arise.\"" - mob_to_revive.visible_message("[mob_to_revive] draws in a huge breath, red light shining from [mob_to_revive.p_their()] eyes.", \ + mob_to_revive.visible_message("[mob_to_revive] draws in a huge breath, red light shining from their eyes.", \ "You awaken suddenly from the void. You're alive!") rune_in_use = 0 -/obj/effect/rune/raise_dead/proc/validness_checks(mob/living/target_mob, mob/living/user) +/obj/effect/rune/raise_dead/proc/validness_checks(mob/living/target_mob, mob/living/user, saccing) var/turf/T = get_turf(src) if(!user) return 0 @@ -589,28 +597,28 @@ var/list/teleport_runes = list() if(!target_mob) fail_invoke() return 0 - if(!(target_mob in T.contents)) - user << "The cultist to revive has been moved!" + if(saccing) + if(!in_range(target_mob, src)) + user << "The sacrificial target has been moved!" + fail_invoke() + log_game("Raise Dead rune failed - catalyst corpse moved") + return 0 + if(target_mob.stat != DEAD) + user << "The sacrificial target must be dead!" + fail_invoke() + log_game("Raise Dead rune failed - catalyst corpse is not dead") + return 0 + else if(!(target_mob in T.contents)) + user << "The corpse to revive has been moved!" fail_invoke() log_game("Raise Dead rune failed - revival target moved") return 0 - var/mob/dead/observer/ghost = target_mob.get_ghost(TRUE) - if(!ghost && (!target_mob.mind || !target_mob.mind.active)) - user << "The corpse to revive has no spirit!" - fail_invoke() - log_game("Raise Dead rune failed - revival target has no ghost") - return 0 - if(!sacrificed.len || sacrificed.len <= revives_used) - user << "You have sacrificed too few people to revive a cultist!" - fail_invoke() - log_game("Raise Dead rune failed - too few sacrificed") - return 0 return 1 /obj/effect/rune/raise_dead/fail_invoke() ..() for(var/mob/living/M in range(1,src)) - if(iscultist(M) && M.stat == DEAD) + if(M.stat == DEAD) M.visible_message("[M] twitches.") @@ -621,7 +629,7 @@ var/list/teleport_runes = list() invocation = "Ta'gh fara'qha fel d'amar det!" icon_state = "5" allow_excess_invokers = 1 - color = "#4D94FF" + color = rgb(77, 148, 255) /obj/effect/rune/emp/invoke(var/list/invokers) var/turf/E = get_turf(src) @@ -650,8 +658,8 @@ var/list/teleport_runes = list() cultist_name = "Astral Communion" cultist_desc = "severs the link between one's spirit and body. This effect is taxing and one's physical body will take damage while this is active." invocation = "Fwe'sh mah erl nyag r'ya!" - icon_state = "7" - color = "#7D1717" + icon_state = "6" + color = rgb(126, 23, 23) rune_in_use = 0 //One at a time, please! construct_invoke = 0 var/mob/living/affecting = null @@ -667,7 +675,7 @@ var/list/teleport_runes = list() log_game("Astral Communion rune failed - more than one user") return list() var/turf/T = get_turf(src) - if(!(user in T)) + if(!user in T.contents) user << "You must be standing on top of [src]!" log_game("Astral Communion rune failed - user not standing on rune") return list() @@ -679,7 +687,7 @@ var/list/teleport_runes = list() var/turf/T = get_turf(src) rune_in_use = 1 affecting = user - user.color = "#7D1717" + user.color = "#7e1717" user.visible_message("[user] freezes statue-still, glowing an unearthly red.", \ "You see what lies beyond. All is revealed. While this is a wondrous experience, your physical form will waste away in this state. Hurry...") user.ghostize(1) @@ -689,13 +697,13 @@ var/list/teleport_runes = list() affecting = null //In case it's assigned to a number or something rune_in_use = 0 return - affecting.apply_damage(0.1, BRUTE) - if(!(user in T)) - user.visible_message("A spectral tendril wraps around [user] and pulls [user.p_them()] back to the rune!") - Beam(user,icon_state="drainbeam",time=2) + affecting.apply_damage(1, BRUTE) + if(!(user in T.contents)) + user.visible_message("A spectral tendril wraps around [user] and pulls them back to the rune!") + Beam(user,icon_state="drainbeam",icon='icons/effects/effects.dmi',time=2) user.forceMove(get_turf(src)) //NO ESCAPE :^) if(user.key) - user.visible_message("[user] slowly relaxes, the glow around [user.p_them()] dimming.", \ + user.visible_message("[user] slowly relaxes, the glow around them dimming.", \ "You are re-united with your physical form. [src] releases its hold over you.") user.color = initial(user.color) user.Weaken(3) @@ -703,101 +711,53 @@ var/list/teleport_runes = list() affecting = null return if(user.stat == UNCONSCIOUS) - if(prob(1)) + if(prob(10)) var/mob/dead/observer/G = user.get_ghost() - G << "You feel the link between you and your body weakening... you must hurry!" + if(G) + G << "You feel the link between you and your body weakening... you must hurry!" if(user.stat == DEAD) user.color = initial(user.color) rune_in_use = 0 affecting = null var/mob/dead/observer/G = user.get_ghost() - G << "You suddenly feel your physical form pass on. [src]'s exertion has killed you!" + if(G) + G << "You suddenly feel your physical form pass on. [src]'s exertion has killed you!" return - sleep(1) + sleep(10) rune_in_use = 0 -var/list/wall_runes = list() //Rite of the Corporeal Shield: When invoked, becomes solid and cannot be passed. Invoke again to undo. /obj/effect/rune/wall cultist_name = "Form Barrier" - cultist_desc = "when invoked, makes a temporary invisible wall to block passage. Can be invoked again to reverse this." + cultist_desc = "when invoked, makes an invisible wall to block passage. Can be invoked again to reverse this." invocation = "Khari'd! Eske'te tannin!" icon_state = "1" - color = "#C80000" - CanAtmosPass = ATMOS_PASS_DENSITY - var/density_timer - var/recharging = FALSE - -/obj/effect/rune/wall/New() - ..() - wall_runes += src + color = rgb(255, 0, 0) /obj/effect/rune/wall/examine(mob/user) ..() if(density) user << "There is a barely perceptible shimmering of the air above [src]." -/obj/effect/rune/wall/Destroy() - density = 0 - wall_runes -= src - air_update_turf(1) - return ..() - -/obj/effect/rune/wall/BlockSuperconductivity() - return density - /obj/effect/rune/wall/invoke(var/list/invokers) - if(recharging) - return var/mob/living/user = invokers[1] ..() density = !density - update_state() - if(density) - spread_density() - user.visible_message("[user] [iscarbon(user) ? "places [user.p_their()] hands on":"stares intently at"] [src], and [density ? "the air above it begins to shimmer" : "the shimmer above it fades"].", \ - "You channel your life energy into [src], [density ? "temporarily preventing" : "allowing"] passage above it.") - if(iscarbon(user)) - var/mob/living/carbon/C = user - C.apply_damage(2, BRUTE, pick("l_arm", "r_arm")) - -/obj/effect/rune/wall/proc/spread_density() - for(var/R in wall_runes) - var/obj/effect/rune/wall/W = R - if(W.z == z && get_dist(src, W) <= 2 && !W.density && !W.recharging) - W.density = TRUE - W.update_state() - W.spread_density() - density_timer = addtimer(src, "lose_density", 900) - -/obj/effect/rune/wall/proc/lose_density() - if(density) - recharging = TRUE - density = FALSE - update_state() - var/oldcolor = color - add_atom_colour("#696969", FIXED_COLOUR_PRIORITY) - animate(src, color = oldcolor, time = 50, easing = EASE_IN) - addtimer(src, "recharge", 50) - -/obj/effect/rune/wall/proc/recharge() - recharging = FALSE - add_atom_colour("#C80000", FIXED_COLOUR_PRIORITY) - -/obj/effect/rune/wall/proc/update_state() - deltimer(density_timer) - air_update_turf(1) + user.visible_message("[user] [iscarbon(user) ? "places their hands on":"stares intently at"] [src], and [density ? "the air above it begins to shimmer" : "the shimmer above it fades"].", \ + "You channel your life energy into [src], [density ? "preventing" : "allowing"] passage above it.") if(density) var/image/I = image(layer = ABOVE_MOB_LAYER, icon = 'icons/effects/effects.dmi', icon_state = "barriershimmer") I.appearance_flags = RESET_COLOR I.alpha = 60 I.color = "#701414" - add_overlay(I) - add_atom_colour("#FF0000", FIXED_COLOUR_PRIORITY) + overlays += I else - cut_overlays() - add_atom_colour("#C80000", FIXED_COLOUR_PRIORITY) + overlays.Cut() + if(iscarbon(user)) + var/mob/living/carbon/C = user + C.apply_damage(2, BRUTE, pick("l_arm", "r_arm")) + //Rite of Joined Souls: Summons a single cultist. /obj/effect/rune/summon @@ -807,7 +767,7 @@ var/list/wall_runes = list() req_cultists = 2 allow_excess_invokers = 1 icon_state = "5" - color = "#00FF00" + color = rgb(0, 255, 0) /obj/effect/rune/summon/invoke(var/list/invokers) var/mob/living/user = invokers[1] @@ -849,105 +809,35 @@ var/list/wall_runes = list() //Rite of Boiling Blood: Deals extremely high amounts of damage to non-cultists nearby /obj/effect/rune/blood_boil cultist_name = "Boil Blood" - cultist_desc = "boils the blood of non-believers who can see the rune, rapidly dealing extreme amounts of damage. Requires 3 invokers." + cultist_desc = "boils the blood of non-believers who can see the rune, dealing extreme amounts of damage. Requires 3 invokers." invocation = "Dedo ol'btoh!" icon_state = "4" - color = "#C80000" + color = rgb(200, 0, 0) req_cultists = 3 construct_invoke = 0 - var/tick_damage = 25 - rune_in_use = FALSE - -/obj/effect/rune/blood_boil/do_invoke_glow() - return /obj/effect/rune/blood_boil/invoke(var/list/invokers) - if(rune_in_use) - return ..() - rune_in_use = TRUE var/turf/T = get_turf(src) - visible_message("[src] turns a bright, glowing orange!") - SetLuminosity(6) - color = "#FC9B54" + visible_message("[src] briefly bubbles before exploding!") + for(var/mob/living/carbon/C in viewers(T)) + if(!iscultist(C)) + var/obj/item/weapon/nullrod/N = C.null_rod_check() + if(N) + C << "\The [N] suddenly burns hotly before returning to normal!" + continue + C << "Your blood boils in your veins!" + C.take_overall_damage(45,45) + C.Stun(7) + if(is_servant_of_ratvar(C)) + C << "You feel unholy darkness dimming the Justiciar's light!" + C.adjustStaminaLoss(30) for(var/M in invokers) var/mob/living/L = M - L.apply_damage(10, BRUTE, pick("l_arm", "r_arm")) + L.apply_damage(15, BRUTE, pick("l_arm", "r_arm")) L << "[src] saps your strength!" - for(var/mob/living/L in viewers(T)) - if(!iscultist(L) && L.blood_volume) - var/obj/item/weapon/nullrod/N = L.null_rod_check() - if(N) - L << "\The [N] suddenly burns hotly before returning to normal!" - continue - L << "Your blood boils in your veins!" - if(is_servant_of_ratvar(L)) - L << "You feel an unholy darkness dimming the Justiciar's light!" - animate(src, color = "#FCB56D", time = 4) - sleep(4) - if(!src) - return - do_area_burn(T, 0.5) - animate(src, color = "#FFDF80", time = 5) - sleep(5) - if(!src) - return - do_area_burn(T, 1) - animate(src, color = "#FFFDF4", time = 6) - sleep(6) - if(!src) - return - do_area_burn(T, 1.5) - PoolOrNew(/obj/effect/hotspot, T) qdel(src) - -/obj/effect/rune/blood_boil/proc/do_area_burn(turf/T, multiplier) - for(var/mob/living/L in viewers(T)) - if(!iscultist(L) && L.blood_volume) - var/obj/item/weapon/nullrod/N = L.null_rod_check() - if(N) - continue - L.take_overall_damage(tick_damage*multiplier, tick_damage*multiplier) - if(is_servant_of_ratvar(L)) - L.adjustStaminaLoss(tick_damage*0.5) - - -//Deals brute damage to all targets on the rune and heals the invoker for each target drained. -/obj/effect/rune/leeching - cultist_name = "Drain Life" - cultist_desc = "drains the life of all targets on the rune, restoring life to the user." - invocation = "Yu'gular faras desdae. Umathar uf'kal thenar!" - icon_state = "3" - color = "#9F1C34" - -/obj/effect/rune/leeching/can_invoke(mob/living/user) - if(world.time <= user.next_move) - return list() - var/turf/T = get_turf(src) - var/list/potential_targets = list() - for(var/mob/living/carbon/M in T.contents - user) - if(M.stat != DEAD) - potential_targets += M - if(!potential_targets.len) - user << "There must be at least one valid target on the rune!" - log_game("Leeching rune failed - no valid targets") - return list() - return ..() - -/obj/effect/rune/leeching/invoke(var/list/invokers) - var/mob/living/user = invokers[1] - user.changeNext_move(CLICK_CD_CLICK_ABILITY) - ..() - var/turf/T = get_turf(src) - for(var/mob/living/carbon/M in T.contents - user) - if(M.stat != DEAD) - var/drained_amount = rand(10,20) - M.apply_damage(drained_amount, BRUTE, "chest") - user.adjustBruteLoss(-drained_amount) - M << "You feel extremely weak." - user.Beam(T,icon_state="drainbeam",time=5) - user.visible_message("Blood flows from the rune into [user]!", \ - "Blood flows into you, healing your wounds and revitalizing your spirit.") + explosion(T, -1, 0, 1, 5) //Rite of Spectral Manifestation: Summons a ghost on top of the rune as a cultist human with no items. User must stand on the rune at all times, and takes damage for each summoned ghost. @@ -957,7 +847,7 @@ var/list/wall_runes = list() invocation = "Gal'h'rfikk harfrandid mud'gib!" //how the fuck do you pronounce this icon_state = "6" construct_invoke = 0 - color = "#C80000" + color = rgb(200, 0, 0) /obj/effect/rune/manifest/New(loc) ..() @@ -993,14 +883,17 @@ var/list/wall_runes = list() ..() visible_message("A cloud of red mist forms above [src], and from within steps... a man.") user << "Your blood begins flowing into [src]. You must remain in place and conscious to maintain the forms of those summoned. This will hurt you slowly but surely..." - var/turf/T = get_turf(src) - var/obj/structure/emergency_shield/invoker/N = new(T) - + var/obj/machinery/shield/N = new(get_turf(src)) + N.name = "Invoker's Shield" + N.desc = "A weak shield summoned by cultists to protect them while they carry out delicate rituals" + N.color = "red" + N.health = 20 + N.mouse_opacity = 0 new_human.key = ghost_to_spawn.key ticker.mode.add_cultist(new_human.mind, 0) new_human << "You are a servant of the Geometer. You have been made semi-corporeal by the cult of Nar-Sie, and you are to serve them at all costs." - while(user in T) + while(user in get_turf(src)) if(user.stat) break user.apply_damage(0.1, BRUTE) diff --git a/code/game/gamemodes/cult/talisman.dm b/code/game/gamemodes/cult/talisman.dm index c11bb18136..8962fb95af 100644 --- a/code/game/gamemodes/cult/talisman.dm +++ b/code/game/gamemodes/cult/talisman.dm @@ -56,7 +56,6 @@ dat += "Please choose the chant to be imbued into the fabric of reality.
    " dat += "
    " dat += "N'ath reth sh'yro eth d'raggathnor! - Summons an arcane tome, used to scribe runes and communicate with other cultists.
    " - dat += "Bar'tea eas! - Provides 5 runed metal.
    " dat += "Sas'so c'arta forbici! - Allows you to move to a selected teleportation rune.
    " dat += "Ta'gh fara'qha fel d'amar det! - Allows you to destroy technology in a short range.
    " dat += "Fuu ma'jin! - Allows you to stun a person by attacking them with the talisman.
    " @@ -77,12 +76,6 @@ if("newtome") var/obj/item/weapon/tome/T = new(usr) usr.put_in_hands(T) - if("metal") - if(istype(src, /obj/item/weapon/paper/talisman/supply/weak)) - usr.visible_message("Lesser supply talismans lack the strength to materialize runed metal!") - return - var/obj/item/stack/sheet/runed_metal/R = new(usr,5) - usr.put_in_hands(R) if("teleport") var/obj/item/weapon/paper/talisman/teleport/T = new(usr) usr.put_in_hands(T) @@ -109,7 +102,6 @@ qdel(src) /obj/item/weapon/paper/talisman/supply/weak - cultist_name = "Lesser Supply Talisman" uses = 2 //Rite of Translocation: Same as rune @@ -147,15 +139,11 @@ var/input_rune_key = input(user, "Choose a rune to teleport to.", "Rune to Teleport to") as null|anything in potential_runes //we know what key they picked var/obj/effect/rune/teleport/actual_selected_rune = potential_runes[input_rune_key] //what rune does that key correspond to? - if(!src || qdeleted(src) || !user || !user.is_holding(src) || user.incapacitated() || !actual_selected_rune) + if(!actual_selected_rune) return ..(user, 0) - var/turf/target = get_turf(actual_selected_rune) - if(is_blocked_turf(target)) - user << "The target rune is blocked. Attempting to teleport to it would be massively unwise." - return ..(user, 0) - user.visible_message("Dust flows from [user]'s hand, and [user.p_they()] disappear in a flash of red light!", \ + user.visible_message("Dust flows from [user]'s hand, and they disappear in a flash of red light!", \ "You speak the words of the talisman and find yourself somewhere else!") - user.forceMove(target) + user.forceMove(get_turf(actual_selected_rune)) return ..() @@ -257,7 +245,7 @@ else target.Weaken(10) target.Stun(10) - target.flash_act(1,1) + target.flash_eyes(1,1) if(issilicon(target)) var/mob/living/silicon/S = target S.emp_act(1) @@ -320,17 +308,16 @@ target << "You see a brief but horrible vision of Ratvar, rusted and scrapped, being torn apart." target.emote("scream") target.confused = max(0, target.confused + 3) - target.flash_act() + target.flash_eyes() qdel(src) -//Talisman of Fabrication: Creates a construct shell out of 25 metal sheets, or converts plasteel into runed metal up to 25 times +//Talisman of Fabrication: Creates a construct shell out of 25 metal sheets. /obj/item/weapon/paper/talisman/construction cultist_name = "Talisman of Construction" cultist_desc = "Use this talisman on at least twenty-five metal sheets to create an empty construct shell" invocation = "Ethra p'ni dedol!" color = "#000000" // black - uses = 25 /obj/item/weapon/paper/talisman/construction/attack_self(mob/living/user) if(iscultist(user)) @@ -341,34 +328,27 @@ /obj/item/weapon/paper/talisman/construction/attack(obj/M,mob/living/user) if(iscultist(user)) - user << "This talisman will only work on a stack of metal or plasteel sheets!" + user << "This talisman will only work on a stack of metal sheets!" log_game("Construct talisman failed - not a valid target") - else - ..() /obj/item/weapon/paper/talisman/construction/afterattack(obj/item/stack/sheet/target, mob/user, proximity_flag, click_parameters) ..() if(proximity_flag && iscultist(user)) - var/turf/T = get_turf(target) if(istype(target, /obj/item/stack/sheet/metal)) + var/turf/T = get_turf(target) if(target.use(25)) new /obj/structure/constructshell(T) user << "The talisman clings to the metal and twists it into a construct shell!" user << sound('sound/effects/magic.ogg',0,1,25) - invoke(user, 1) qdel(src) - else - user << "You need more metal to produce a construct shell!" - else if(istype(target, /obj/item/stack/sheet/plasteel)) - var/quantity = min(target.amount, uses) - uses -= quantity + if(istype(target, /obj/item/stack/sheet/plasteel)) + var/quantity = target.amount + var/turf/T = get_turf(target) new /obj/item/stack/sheet/runed_metal(T,quantity) target.use(quantity) user << "The talisman clings to the plasteel, transforming it into runed metal!" user << sound('sound/effects/magic.ogg',0,1,25) - invoke(user, 1) - if(uses <= 0) - qdel(src) + qdel(src) else user << "The talisman must be used on metal or plasteel!" diff --git a/code/game/gamemodes/devil/devil agent/devil_agent.dm b/code/game/gamemodes/devil/devil agent/devil_agent.dm deleted file mode 100644 index dfdb957153..0000000000 --- a/code/game/gamemodes/devil/devil agent/devil_agent.dm +++ /dev/null @@ -1,43 +0,0 @@ -/datum/game_mode/devil/devil_agents - name = "Devil Agents" - config_tag = "devil_agents" - required_players = 25 - required_enemies = 3 - recommended_enemies = 8 - reroll_friendly = 0 - - traitors_possible = 10 //hard limit on traitors if scaling is turned off - num_modifier = 4 - objective_count = 2 - - var/list/target_list = list() - var/list/late_joining_list = list() - minimum_devils = 3 - - announce_text = "There are devil agents onboard the station, trying to outbid each other!\n\ - + Devils: Purchase souls and interfere with your rivals!\n\ - + Crew: Resist the lure of sin and remain pure!" - -/datum/game_mode/devil/devil_agents/post_setup() - var/i = 0 - for(var/datum/mind/devil in devils) - i++ - if(i + 1 > devils.len) - i = 0 - target_list[devil] = devils[i + 1] - ..() - -/datum/game_mode/devil/devil_agents/add_devil_objectives(datum/mind/devil_mind, quantity) - ..(devil_mind, quantity - give_outsell_objective(devil_mind)) - -/datum/game_mode/devil/devil_agents/proc/give_outsell_objective(datum/mind/devil) - //If you override this method, have it return the number of objectives added. - if(target_list.len && target_list[devil]) // Is a double agent - var/datum/mind/target_mind = target_list[devil] - var/datum/objective/devil/outsell/outsellobjective = new - outsellobjective.owner = devil - outsellobjective.target = target_mind - outsellobjective.update_explanation_text() - devil.objectives += outsellobjective - return 1 - return 0 diff --git a/code/game/gamemodes/devil/devil.dm b/code/game/gamemodes/devil/devil.dm index 0aafc57ccb..743e95ad91 100644 --- a/code/game/gamemodes/devil/devil.dm +++ b/code/game/gamemodes/devil/devil.dm @@ -20,7 +20,7 @@ var/global/list/whiteness = list ( /mob/living/proc/check_devil_bane_multiplier(obj/item/weapon, mob/living/attacker) switch(mind.devilinfo.bane) if(BANE_WHITECLOTHES) - if(ishuman(attacker)) + if(istype(attacker, /mob/living/carbon/human)) var/mob/living/carbon/human/H = attacker if(H.w_uniform && istype(H.w_uniform, /obj/item/clothing/under)) var/obj/item/clothing/under/U = H.w_uniform diff --git a/code/game/gamemodes/devil/devil_game_mode.dm b/code/game/gamemodes/devil/devil_game_mode.dm index c64653a986..97411e87e6 100644 --- a/code/game/gamemodes/devil/devil_game_mode.dm +++ b/code/game/gamemodes/devil/devil_game_mode.dm @@ -1,61 +1,111 @@ +/datum/game_mode + var/list/datum/mind/sintouched = list() + var/list/datum/mind/devils = list() + var/devil_ascended = 0 // Number of arch devils on station + +/datum/game_mode/proc/auto_declare_completion_sintouched() + var/text = "" + if(sintouched.len) + text += "
    The sintouched were:" + var/list/sintouchedUnique = uniqueList(sintouched) + for(var/S in sintouchedUnique) + var/datum/mind/sintouched_mind = S + text += printplayer(sintouched_mind) + text += printobjectives(sintouched_mind) + text += "
    " + text += "
    " + world << text + +/datum/game_mode/proc/auto_declare_completion_devils() + /var/text = "" + if(devils.len) + text += "
    The devils were:" + for(var/D in devils) + var/datum/mind/devil = D + text += printplayer(devil) + text += printdevilinfo(devil) + text += printobjectives(devil) + text += "
    " + world << text + /datum/game_mode/devil - name = "devil" - config_tag = "devil" - antag_flag = ROLE_DEVIL - protected_jobs = list("Lawyer", "Librarian", "Chaplain", "Head of Security", "Captain", "AI") - required_players = 0 - required_enemies = 1 - recommended_enemies = 4 - reroll_friendly = 1 - enemy_minimum_age = 0 - - var/traitors_possible = 4 //hard limit on devils if scaling is turned off - var/num_modifier = 0 // Used for gamemodes, that are a child of traitor, that need more than the usual. - var/objective_count = 2 - var/minimum_devils = 1 - - announce_text = "There are devils onboard the station!\n\ - + Devils: Purchase souls and tempt the crew to sin!\n\ - + Crew: Resist the lure of sin and remain pure!" - -/datum/game_mode/devil/pre_setup() - - if(config.protect_roles_from_antagonist) - restricted_jobs += protected_jobs - if(config.protect_assistant_from_antagonist) - restricted_jobs += "Assistant" - - var/num_devils = 1 - - if(config.traitor_scaling_coeff) - num_devils = max(minimum_devils, min( round(num_players()/(config.traitor_scaling_coeff*3))+ 2 + num_modifier, round(num_players()/(config.traitor_scaling_coeff*1.5)) + num_modifier )) - else - num_devils = max(minimum_devils, min(num_players(), traitors_possible)) - - for(var/j = 0, j < num_devils, j++) - if (!antag_candidates.len) - break - var/datum/mind/devil = pick(antag_candidates) - devils += devil - devil.special_role = traitor_name - devil.restricted_roles = restricted_jobs - - log_game("[devil.key] (ckey) has been selected as a [traitor_name]") - antag_candidates.Remove(devil) - - if(devils.len < required_enemies) - return 0 - return 1 -/datum/game_mode/devil/post_setup() - for(var/datum/mind/devil in devils) - spawn(rand(10,100)) - finalize_devil(devil, objective_count) - spawn(100) - add_devil_objectives(devil, objective_count) //This has to be in a separate loop, as we need devil names to be generated before we give objectives in devil agent. - devil.announceDevilLaws() - devil.announce_objectives() - modePlayer += devils - ..() - return 1 +/datum/game_mode/proc/finalize_devil(datum/mind/devil_mind) + var/mob/living/carbon/human/S = devil_mind.current + var/trueName= randomDevilName() + var/datum/objective/devil/soulquantity/soulquant = new + soulquant.owner = devil_mind + var/datum/objective/devil/obj_2 = pick(new /datum/objective/devil/soulquality(null), new /datum/objective/devil/sintouch(null)) + obj_2.owner = devil_mind + devil_mind.objectives += obj_2 + devil_mind.objectives += soulquant + devil_mind.devilinfo = devilInfo(trueName, 1) + devil_mind.store_memory("Your devilic true name is [devil_mind.devilinfo.truename]
    [lawlorify[LAW][devil_mind.devilinfo.ban]]
    You may not use violence to coerce someone into selling their soul.
    You may not directly and knowingly physically harm a devil, other than yourself.
    [lawlorify[LAW][devil_mind.devilinfo.bane]]
    [lawlorify[LAW][devil_mind.devilinfo.obligation]]
    [lawlorify[LAW][devil_mind.devilinfo.banish]]
    ") + devil_mind.devilinfo.owner = devil_mind + devil_mind.devilinfo.give_base_spells(1) + spawn(10) + devil_mind.devilinfo.update_hud() + if(devil_mind.assigned_role == "Clown") + S << "Your infernal nature has allowed you to overcome your clownishness." + S.dna.remove_mutation(CLOWNMUT) + +/datum/mind/proc/announceDevilLaws() + if(!devilinfo) + return + current << "You remember your link to the infernal. You are [src.devilinfo.truename], an agent of hell, a devil. And you were sent to the plane of creation for a reason. A greater purpose. Convince the crew to sin, and embroiden Hell's grasp." + current << "However, your infernal form is not without weaknesses." + current << "You may not use violence to coerce someone into selling their soul." + current << "You may not directly and knowingly physically harm a devil, other than yourself." + current << lawlorify[LAW][src.devilinfo.bane] + current << lawlorify[LAW][src.devilinfo.ban] + current << lawlorify[LAW][src.devilinfo.obligation] + current << lawlorify[LAW][src.devilinfo.banish] + current << "

    Remember, the crew can research your weaknesses if they find out your devil name.
    " + var/obj_count = 1 + current << "Your current objectives:" + for(var/O in objectives) + var/datum/objective/objective = O + current << "Objective #[obj_count]: [objective.explanation_text]" + obj_count++ + +/datum/game_mode/proc/printdevilinfo(datum/mind/ply) + if(!ply.devilinfo) + return "" + var/text = "
    The devil's true name is: [ply.devilinfo.truename]
    " + text += "The devil's bans were:
    " + text += " [lawlorify[LORE][ply.devilinfo.ban]]
    " + text += " [lawlorify[LORE][ply.devilinfo.bane]]
    " + text += " [lawlorify[LORE][ply.devilinfo.obligation]]
    " + text += " [lawlorify[LORE][ply.devilinfo.banish]]
    " + return text + +/datum/game_mode/proc/update_devil_icons_added(datum/mind/devil_mind) + var/datum/atom_hud/antag/hud = huds[ANTAG_HUD_DEVIL] + hud.join_hud(devil_mind.current) + set_antag_hud(devil_mind.current, "devil") + +/datum/game_mode/proc/update_devil_icons_removed(datum/mind/devil_mind) + var/datum/atom_hud/antag/hud = huds[ANTAG_HUD_DEVIL] + hud.leave_hud(devil_mind.current) + set_antag_hud(devil_mind.current, null) + +/datum/game_mode/proc/update_sintouch_icons_added(datum/mind/sin_mind) + var/datum/atom_hud/antag/hud = huds[ANTAG_HUD_SINTOUCHED] + hud.join_hud(sin_mind.current) + set_antag_hud(sin_mind.current, "sintouched") + +/datum/game_mode/proc/update_sintouch_icons_removed(datum/mind/sin_mind) + var/datum/atom_hud/antag/hud = huds[ANTAG_HUD_SINTOUCHED] + hud.leave_hud(sin_mind.current) + set_antag_hud(sin_mind.current, null) + +/datum/game_mode/proc/update_soulless_icons_added(datum/mind/soulless_mind) + var/datum/atom_hud/antag/hud = huds[ANTAG_HUD_SOULLESS] + hud.join_hud(soulless_mind.current) + set_antag_hud(soulless_mind.current, "soulless") + +/datum/game_mode/proc/update_soulless_icons_removed(datum/mind/soulless_mind) + var/datum/atom_hud/antag/hud = huds[ANTAG_HUD_SOULLESS] + hud.leave_hud(soulless_mind.current) + set_antag_hud(soulless_mind.current, null) diff --git a/code/game/gamemodes/devil/devilinfo.dm b/code/game/gamemodes/devil/devilinfo.dm index 9710c599e5..d0d0429d43 100644 --- a/code/game/gamemodes/devil/devilinfo.dm +++ b/code/game/gamemodes/devil/devilinfo.dm @@ -7,8 +7,6 @@ #define TRUE_DEVIL 2 #define ARCH_DEVIL 3 -#define LOSS_PER_DEATH 2 - #define SOULVALUE soulsOwned.len-reviveNumber #define DEVILRESURRECTTIME 600 @@ -16,9 +14,8 @@ var/global/list/allDevils = list() var/global/list/lawlorify = list ( LORE = list( - OBLIGATION_FOOD = "This devil seems to always offer its victims food before slaughtering them.", - OBLIGATION_FIDDLE = "This devil will never turn down a musical challenge.", - OBLIGATION_DANCEOFF = "This devil will never turn down a dance off.", + OBLIGATION_FOOD = "This devil seems to always offer it's victims food before slaughtering them.", + OBLIGATION_DRINK = "This devil seems to always offer it's victims a drink before slaughtering them.", OBLIGATION_GREET = "This devil seems to only be able to converse with people it knows the name of.", OBLIGATION_PRESENCEKNOWN = "This devil seems to be unable to attack from stealth.", OBLIGATION_SAYNAME = "He will always chant his name upon killing someone.", @@ -38,18 +35,17 @@ var/global/list/lawlorify = list ( BAN_STRIKEUNCONCIOUS = "This devil only shows interest in those who are awake.", BAN_HURTLIZARD = "This devil will not strike a lizardman first.", BAN_HURTANIMAL = "This devil avoids hurting animals.", - BANISH_WATER = "To banish the devil, you must infuse its body with holy water.", - BANISH_COFFIN = "This devil will return to life if its remains are not placed within a coffin.", - BANISH_FORMALDYHIDE = "To banish the devil, you must inject its lifeless body with embalming fluid.", - BANISH_RUNES = "This devil will resurrect after death, unless its remains are within a rune.", + BANISH_WATER = "To banish the devil, you must sprinkle holy water upon it's body.", + BANISH_COFFIN = "This devil will return to life if it's remains are not placed within a coffin.", + BANISH_FORMALDYHIDE = "To banish the devil, you must inject it's lifeless body with embalming fluid.", + BANISH_RUNES = "This devil will resurrect after death, unless it's remains are within a rune.", BANISH_CANDLES = "A large number of nearby lit candles will prevent it from resurrecting.", - BANISH_DESTRUCTION = "Its corpse must be utterly destroyed to prevent resurrection.", + BANISH_DESTRUCTION = "It's corpse must be utterly destroyed to prevent resurrection.", BANISH_FUNERAL_GARB = "If clad in funeral garments, this devil will be unable to resurrect. Should the clothes not fit, lay them gently on top of the devil's corpse." ), LAW = list( OBLIGATION_FOOD = "When not acting in self defense, you must always offer your victim food before harming them.", - OBLIGATION_FIDDLE = "When not in immediate danger, if you are challenged to a musical duel, you must accept it. You are not obligated to duel the same person twice.", - OBLIGATION_DANCEOFF = "When not in immediate danger, if you are challenged to a dance off, you must accept it. You are not obligated to face off with the same person twice.", + OBLIGATION_DRINK = "When not acting in self defense, you must always offer your victim drink before harming them.", OBLIGATION_GREET = "You must always greet other people by their last name before talking with them.", OBLIGATION_PRESENCEKNOWN = "You must always make your presence known before attacking.", OBLIGATION_SAYNAME = "You must always say your true name after you kill someone.", @@ -62,7 +58,7 @@ var/global/list/lawlorify = list ( BAN_STRIKEUNCONCIOUS = "You must never strike an unconcious person.", BAN_HURTLIZARD = "You must never harm a lizardman outside of self defense.", BAN_HURTANIMAL = "You must never harm a non-sentient creature or robot outside of self defense.", - BANE_SILVER = "Silver, in all of its forms shall be your downfall.", + BANE_SILVER = "Silver, in all of it's forms shall be your downfall.", BANE_SALT = "Salt will disrupt your magical abilities.", BANE_LIGHT = "Blinding lights will prevent you from using offensive powers for a time.", BANE_IRON = "Cold wrought iron shall act as poison to you.", @@ -79,7 +75,7 @@ var/global/list/lawlorify = list ( ) ) -/datum/devilinfo +/datum/devilinfo/ var/datum/mind/owner = null var/obligation var/ban @@ -90,16 +86,6 @@ var/global/list/lawlorify = list ( var/reviveNumber = 0 var/form = BASIC_DEVIL var/exists = 0 - var/static/list/dont_remove_spells = list( - /obj/effect/proc_holder/spell/targeted/summon_contract, - /obj/effect/proc_holder/spell/targeted/conjure_item/violin, - /obj/effect/proc_holder/spell/targeted/summon_dancefloor) - - -/datum/devilinfo/New() - ..() - dont_remove_spells = typecacheof(dont_remove_spells) - /proc/randomDevilInfo(name = randomDevilName()) var/datum/devilinfo/devil = new @@ -140,7 +126,7 @@ var/global/list/lawlorify = list ( return preTitle + title + mainName + suffix /proc/randomdevilobligation() - return pick(OBLIGATION_FOOD, OBLIGATION_FIDDLE, OBLIGATION_DANCEOFF, OBLIGATION_GREET, OBLIGATION_PRESENCEKNOWN, OBLIGATION_SAYNAME, OBLIGATION_ANNOUNCEKILL, OBLIGATION_ANSWERTONAME) + return pick(OBLIGATION_FOOD, OBLIGATION_DRINK, OBLIGATION_GREET, OBLIGATION_PRESENCEKNOWN, OBLIGATION_SAYNAME, OBLIGATION_ANNOUNCEKILL, OBLIGATION_ANSWERTONAME) /proc/randomdevilban() return pick(BAN_HURTWOMAN, BAN_CHAPEL, BAN_HURTPRIEST, BAN_AVOIDWATER, BAN_STRIKEUNCONCIOUS, BAN_HURTLIZARD, BAN_HURTANIMAL) @@ -152,10 +138,11 @@ var/global/list/lawlorify = list ( return pick(BANISH_WATER, BANISH_COFFIN, BANISH_FORMALDYHIDE, BANISH_RUNES, BANISH_CANDLES, BANISH_DESTRUCTION, BANISH_FUNERAL_GARB) /datum/devilinfo/proc/add_soul(datum/mind/soul) + var/mob/living/carbon/human/H = owner.current if(soulsOwned.Find(soul)) return soulsOwned += soul - owner.current.nutrition = NUTRITION_LEVEL_FULL + H.nutrition = NUTRITION_LEVEL_FULL owner.current << "You feel satiated as you received a new soul." update_hud() switch(SOULVALUE) @@ -176,16 +163,16 @@ var/global/list/lawlorify = list ( update_hud() /datum/devilinfo/proc/check_regression() - if(form == ARCH_DEVIL) + if (form == ARCH_DEVIL) return //arch devil can't regress - //Yes, fallthrough behavior is intended, so I can't use a switch statement. - if(form == TRUE_DEVIL && SOULVALUE < TRUE_THRESHOLD) - regress_blood_lizard() - if(form == BLOOD_LIZARD && SOULVALUE < BLOOD_THRESHOLD) - regress_humanoid() - if(SOULVALUE < 0) - remove_spells() - owner.current << "As punishment for your failures, all of your powers except contract creation have been revoked." + switch(SOULVALUE) + if(-1) + remove_spells() + owner.current << "As punishment for your failures, all of your powers except contract creation have been revoked." + if(BLOOD_THRESHOLD-1) + regress_humanoid() + if(TRUE_THRESHOLD-1) + regress_blood_lizard() /datum/devilinfo/proc/increase_form() switch(form) @@ -198,7 +185,7 @@ var/global/list/lawlorify = list ( /datum/devilinfo/proc/regress_humanoid() owner.current << "Your powers weaken, have more contracts be signed to regain power." - if(ishuman(owner.current)) + if(istype(owner.current, /mob/living/carbon/human)) var/mob/living/carbon/human/H = owner.current H.set_species(/datum/species/human, 1) H.regenerate_icons() @@ -221,7 +208,7 @@ var/global/list/lawlorify = list ( /datum/devilinfo/proc/increase_blood_lizard() owner.current << "You feel as though your humanoid form is about to shed. You will soon turn into a blood lizard." sleep(50) - if(ishuman(owner.current)) + if(istype(owner.current, /mob/living/carbon/human)) var/mob/living/carbon/human/H = owner.current H.set_species(/datum/species/lizard, 1) H.underwear = "Nude" @@ -301,7 +288,7 @@ var/global/list/lawlorify = list ( /datum/devilinfo/proc/remove_spells() for(var/X in owner.spell_list) var/obj/effect/proc_holder/spell/S = X - if(!is_type_in_typecache(S, dont_remove_spells)) + if(!istype(S, /obj/effect/proc_holder/spell/targeted/summon_contract)) owner.RemoveSpell(S) /datum/devilinfo/proc/give_summon_contract() @@ -310,31 +297,27 @@ var/global/list/lawlorify = list ( /datum/devilinfo/proc/give_base_spells(give_summon_contract = 0) remove_spells() - owner.AddSpell(new /obj/effect/proc_holder/spell/fireball/hellish(null)) - owner.AddSpell(new /obj/effect/proc_holder/spell/targeted/conjure_item/summon_pitchfork(null)) + owner.AddSpell(new /obj/effect/proc_holder/spell/dumbfire/fireball/hellish(null)) + owner.AddSpell(new /obj/effect/proc_holder/spell/targeted/summon_pitchfork(null)) if(give_summon_contract) give_summon_contract() - if(obligation == OBLIGATION_FIDDLE) - owner.AddSpell(new /obj/effect/proc_holder/spell/targeted/conjure_item/violin(null)) - if(obligation == OBLIGATION_DANCEOFF) - owner.AddSpell(new /obj/effect/proc_holder/spell/targeted/summon_dancefloor(null)) /datum/devilinfo/proc/give_lizard_spells() remove_spells() - owner.AddSpell(new /obj/effect/proc_holder/spell/targeted/conjure_item/summon_pitchfork(null)) - owner.AddSpell(new /obj/effect/proc_holder/spell/fireball/hellish(null)) + owner.AddSpell(new /obj/effect/proc_holder/spell/targeted/summon_pitchfork(null)) + owner.AddSpell(new /obj/effect/proc_holder/spell/dumbfire/fireball/hellish(null)) owner.AddSpell(new /obj/effect/proc_holder/spell/targeted/infernal_jaunt(null)) /datum/devilinfo/proc/give_true_spells() remove_spells() - owner.AddSpell(new /obj/effect/proc_holder/spell/targeted/conjure_item/summon_pitchfork/greater(null)) - owner.AddSpell(new /obj/effect/proc_holder/spell/fireball/hellish(null)) + owner.AddSpell(new /obj/effect/proc_holder/spell/targeted/summon_pitchfork/greater(null)) + owner.AddSpell(new /obj/effect/proc_holder/spell/dumbfire/fireball/hellish(null)) owner.AddSpell(new /obj/effect/proc_holder/spell/targeted/infernal_jaunt(null)) owner.AddSpell(new /obj/effect/proc_holder/spell/targeted/sintouch(null)) /datum/devilinfo/proc/give_arch_spells() remove_spells() - owner.AddSpell(new /obj/effect/proc_holder/spell/targeted/conjure_item/summon_pitchfork/ascended(null)) + owner.AddSpell(new /obj/effect/proc_holder/spell/targeted/summon_pitchfork/ascended(null)) owner.AddSpell(new /obj/effect/proc_holder/spell/targeted/sintouch/ascended(null)) /datum/devilinfo/proc/beginResurrectionCheck(mob/living/body) @@ -390,7 +373,7 @@ var/global/list/lawlorify = list ( return 0 return 1 if(BANISH_FUNERAL_GARB) - if(ishuman(body)) + if(istype(body, /mob/living/carbon/human)) var/mob/living/carbon/human/H = body if(H.w_uniform && istype(H.w_uniform, /obj/item/clothing/under/burial)) return 1 @@ -404,7 +387,7 @@ var/global/list/lawlorify = list ( /datum/devilinfo/proc/hellish_resurrection(mob/living/body) message_admins("[owner.name] (true name is: [truename]) is resurrecting using hellish energy.") if(SOULVALUE <= ARCH_THRESHOLD) // once ascended, arch devils do not go down in power by any means. - reviveNumber += LOSS_PER_DEATH + reviveNumber++ update_hud() if(body) body.revive(1,0) diff --git a/code/game/gamemodes/devil/game_mode.dm b/code/game/gamemodes/devil/game_mode.dm deleted file mode 100644 index be5b22c206..0000000000 --- a/code/game/gamemodes/devil/game_mode.dm +++ /dev/null @@ -1,114 +0,0 @@ -/datum/game_mode - var/list/datum/mind/sintouched = list() - var/list/datum/mind/devils = list() - var/devil_ascended = 0 // Number of arch devils on station - -/datum/game_mode/proc/auto_declare_completion_sintouched() - var/text = "" - if(sintouched.len) - text += "
    The sintouched were:" - var/list/sintouchedUnique = uniqueList(sintouched) - for(var/S in sintouchedUnique) - var/datum/mind/sintouched_mind = S - text += printplayer(sintouched_mind) - text += printobjectives(sintouched_mind) - text += "
    " - text += "
    " - world << text - -/datum/game_mode/proc/auto_declare_completion_devils() - /var/text = "" - if(devils.len) - text += "
    The devils were:" - for(var/D in devils) - var/datum/mind/devil = D - text += printplayer(devil) - text += printdevilinfo(devil) - text += printobjectives(devil) - text += "
    " - text += "
    " - world << text - - -/datum/game_mode/proc/finalize_devil(datum/mind/devil_mind) - - var/trueName= randomDevilName() - - devil_mind.devilinfo = devilInfo(trueName, 1) - devil_mind.store_memory("Your devilic true name is [devil_mind.devilinfo.truename]
    [lawlorify[LAW][devil_mind.devilinfo.ban]]
    You may not use violence to coerce someone into selling their soul.
    You may not directly and knowingly physically harm a devil, other than yourself.
    [lawlorify[LAW][devil_mind.devilinfo.bane]]
    [lawlorify[LAW][devil_mind.devilinfo.obligation]]
    [lawlorify[LAW][devil_mind.devilinfo.banish]]
    ") - devil_mind.devilinfo.owner = devil_mind - devil_mind.devilinfo.give_base_spells(1) - spawn(10) - devil_mind.devilinfo.update_hud() - if(devil_mind.assigned_role == "Clown" && ishuman(devil_mind.current)) - var/mob/living/carbon/human/S = devil_mind.current - S << "Your infernal nature has allowed you to overcome your clownishness." - S.dna.remove_mutation(CLOWNMUT) - if(issilicon(devil_mind.current)) - add_law_sixsixsix(devil_mind.current) - -/datum/game_mode/proc/add_devil_objectives(datum/mind/devil_mind, quantity) - var/list/validtypes = list(/datum/objective/devil/soulquantity, /datum/objective/devil/soulquality, /datum/objective/devil/sintouch, /datum/objective/devil/buy_target) - for(var/i = 1 to quantity) - var/type = pick(validtypes) - var/datum/objective/devil/objective = new type(null) - objective.owner = devil_mind - devil_mind.objectives += objective - if(!istype(objective, /datum/objective/devil/buy_target)) - validtypes -= type //prevent duplicate objectives, EXCEPT for buy_target. - else - objective.find_target() - -/datum/mind/proc/announceDevilLaws() - if(!devilinfo) - return - current << "You remember your link to the infernal. You are [src.devilinfo.truename], an agent of hell, a devil. And you were sent to the plane of creation for a reason. A greater purpose. Convince the crew to sin, and embroiden Hell's grasp." - current << "However, your infernal form is not without weaknesses." - current << "You may not use violence to coerce someone into selling their soul." - current << "You may not directly and knowingly physically harm a devil, other than yourself." - current << lawlorify[LAW][src.devilinfo.bane] - current << lawlorify[LAW][src.devilinfo.ban] - current << lawlorify[LAW][src.devilinfo.obligation] - current << lawlorify[LAW][src.devilinfo.banish] - current << "

    Remember, the crew can research your weaknesses if they find out your devil name.
    " - -/datum/game_mode/proc/printdevilinfo(datum/mind/ply) - if(!ply.devilinfo) - return "Target is not a devil." - var/text = "
    The devil's true name is: [ply.devilinfo.truename]
    " - text += "The devil's bans were:
    " - text += " [lawlorify[LORE][ply.devilinfo.ban]]
    " - text += " [lawlorify[LORE][ply.devilinfo.bane]]
    " - text += " [lawlorify[LORE][ply.devilinfo.obligation]]
    " - text += " [lawlorify[LORE][ply.devilinfo.banish]]

    " - return text - -/datum/game_mode/proc/update_devil_icons_added(datum/mind/devil_mind) - var/datum/atom_hud/antag/hud = huds[ANTAG_HUD_DEVIL] - hud.join_hud(devil_mind.current) - set_antag_hud(devil_mind.current, "devil") - -/datum/game_mode/proc/update_devil_icons_removed(datum/mind/devil_mind) - var/datum/atom_hud/antag/hud = huds[ANTAG_HUD_DEVIL] - hud.leave_hud(devil_mind.current) - set_antag_hud(devil_mind.current, null) - -/datum/game_mode/proc/update_sintouched_icons_added(datum/mind/sintouched_mind) - var/datum/atom_hud/antag/hud = huds[ANTAG_HUD_SINTOUCHED] - hud.join_hud(sintouched_mind.current) - set_antag_hud(sintouched_mind.current, "sintouched") - -/datum/game_mode/proc/update_sintouched_icons_removed(datum/mind/sintouched_mind) - var/datum/atom_hud/antag/hud = huds[ANTAG_HUD_SINTOUCHED] - hud.leave_hud(sintouched_mind.current) - set_antag_hud(sintouched_mind.current, null) - -/datum/game_mode/proc/update_soulless_icons_added(datum/mind/soulless_mind) - var/datum/atom_hud/antag/hud = huds[ANTAG_HUD_SOULLESS] - hud.join_hud(soulless_mind.current) - set_antag_hud(soulless_mind.current, "soulless") - -/datum/game_mode/proc/update_soulless_icons_removed(datum/mind/soulless_mind) - var/datum/atom_hud/antag/hud = huds[ANTAG_HUD_SOULLESS] - hud.leave_hud(soulless_mind.current) - set_antag_hud(soulless_mind.current, null) diff --git a/code/game/gamemodes/devil/imp/imp.dm b/code/game/gamemodes/devil/imp/imp.dm index 211a343b52..76696ced40 100644 --- a/code/game/gamemodes/devil/imp/imp.dm +++ b/code/game/gamemodes/devil/imp/imp.dm @@ -13,7 +13,7 @@ icon_state = "imp" icon_living = "imp" speed = 1 - a_intent = INTENT_HARM + a_intent = "harm" stop_automated_movement = 1 status_flags = CANPUSH attack_sound = 'sound/magic/demon_attack1.ogg' @@ -26,7 +26,6 @@ health = 200 healable = 0 environment_smash = 1 - obj_damage = 40 melee_damage_lower = 10 melee_damage_upper = 15 see_in_dark = 8 diff --git a/code/game/gamemodes/devil/objectives.dm b/code/game/gamemodes/devil/objectives.dm index bd4d309127..0a9d7083e9 100644 --- a/code/game/gamemodes/devil/objectives.dm +++ b/code/game/gamemodes/devil/objectives.dm @@ -3,33 +3,29 @@ /datum/objective/devil/soulquantity explanation_text = "You shouldn't see this text. Error:DEVIL1" - target_amount = 4 + var/quantity = 4 /datum/objective/devil/soulquantity/New() - target_amount = pick(6,7,8) - update_explanation_text() - -/datum/objective/devil/soulquantity/update_explanation_text() - explanation_text = "Purchase, and retain control over at least [target_amount] souls." + quantity = pick(6,8) + explanation_text = "Purchase, and retain control over at least [quantity] souls." /datum/objective/devil/soulquantity/check_completion() var/count = 0 for(var/S in owner.devilinfo.soulsOwned) var/datum/mind/L = S - if(L.soulOwner == owner) + if(L.soulOwner != L) count++ - return count >= target_amount - - + return count >= quantity /datum/objective/devil/soulquality explanation_text = "You shouldn't see this text. Error:DEVIL2" var/contractType - var/contractName + var/quantity /datum/objective/devil/soulquality/New() contractType = pick(CONTRACT_POWER, CONTRACT_WEALTH, CONTRACT_PRESTIGE, CONTRACT_MAGIC, CONTRACT_REVIVE, CONTRACT_KNOWLEDGE/*, CONTRACT_UNWILLING*/) - target_amount = pick(1,2) + var/contractName + quantity = pick(1,2) switch(contractType) if(CONTRACT_POWER) contractName = "for power" @@ -45,10 +41,7 @@ contractName = "for knowledge" //if(CONTRACT_UNWILLING) //Makes round unfun. // contractName = "against their will" - update_explanation_text() - -/datum/objective/devil/soulquality/update_explanation_text() - explanation_text = "Have mortals sign at least [target_amount] contracts [contractName]" + explanation_text = "Have mortals sign at least [quantity] contracts [contractName]" /datum/objective/devil/soulquality/check_completion() var/count = 0 @@ -56,52 +49,14 @@ var/datum/mind/L = S if(L.soulOwner != L && L.damnation_type == contractType) count++ - return count>=target_amount - - + return count>=quantity /datum/objective/devil/sintouch - explanation_text = "You shouldn't see this text. Error:DEVIL3" + var/quantity /datum/objective/devil/sintouch/New() - target_amount = pick(4,5) - explanation_text = "Ensure at least [target_amount] mortals are sintouched." + quantity = pick(4,5) + explanation_text = "Ensure at least [quantity] mortals are sintouched." /datum/objective/devil/sintouch/check_completion() - return target_amount>=ticker.mode.sintouched.len - - - -/datum/objective/devil/buy_target - explanation_text = "You shouldn't see this text. Error:DEVIL4" - -/datum/objective/devil/buy_target/update_explanation_text() - if(target) - explanation_text = "Purchase and retain the soul of [target.name], the [target.assigned_role]." - else - explanation_text = "Free objective." - -/datum/objective/devil/buy_target/check_completion() - return target.soulOwner == owner - - -/datum/objective/devil/outsell - explanation_text = "You shouldn't see this text. Error:DEVIL5" - -/datum/objective/devil/outsell/New() - -/datum/objective/devil/outsell/update_explanation_text() - explanation_text = "Purchase and retain control over more souls than [target.devilinfo.truename], known to mortals as [target.name], the [target.assigned_role]." - -/datum/objective/devil/outsell/check_completion() - var/selfcount = 0 - for(var/S in owner.devilinfo.soulsOwned) - var/datum/mind/L = S - if(L.soulOwner == owner) - selfcount++ - var/targetcount = 0 - for(var/S in target.devilinfo.soulsOwned) - var/datum/mind/L = S - if(L.soulOwner == target) - targetcount++ - return selfcount > targetcount + return quantity>=ticker.mode.sintouched.len \ No newline at end of file diff --git a/code/game/gamemodes/devil/true_devil/_true_devil.dm b/code/game/gamemodes/devil/true_devil/_true_devil.dm index e108e5d7d2..474024a423 100644 --- a/code/game/gamemodes/devil/true_devil/_true_devil.dm +++ b/code/game/gamemodes/devil/true_devil/_true_devil.dm @@ -11,8 +11,8 @@ gender = NEUTER health = 350 maxHealth = 350 - ventcrawler = VENTCRAWLER_NONE - density = 1 + ventcrawler = 0 + density = 0 pass_flags = 0 var/ascended = 0 sight = (SEE_TURFS | SEE_OBJS) @@ -22,20 +22,13 @@ mob_size = MOB_SIZE_LARGE var/mob/living/oldform var/list/devil_overlays[DEVIL_TOTAL_LAYERS] - bodyparts = list(/obj/item/bodypart/chest/devil, /obj/item/bodypart/head/devil, /obj/item/bodypart/l_arm/devil, - /obj/item/bodypart/r_arm/devil, /obj/item/bodypart/r_leg/devil, /obj/item/bodypart/l_leg/devil) - - /mob/living/carbon/true_devil/New() - create_bodyparts() //initialize bodyparts - - create_internal_organs() - ..() - -/mob/living/carbon/true_devil/create_internal_organs() - internal_organs += new /obj/item/organ/brain + internal_organs += new /obj/item/organ/brain/ internal_organs += new /obj/item/organ/tongue + for(var/X in internal_organs) + var/obj/item/organ/I = X + I.Insert(src) ..() @@ -52,13 +45,13 @@ /mob/living/carbon/true_devil/Login() ..() mind.announceDevilLaws() - mind.announce_objectives() /mob/living/carbon/true_devil/death(gibbed) stat = DEAD ..(gibbed) - drop_all_held_items() + drop_l_hand() + drop_r_hand() spawn (0) mind.devilinfo.beginResurrectionCheck(src) @@ -67,12 +60,18 @@ var/msg = "*---------*\nThis is \icon[src] [src]!\n" //Left hand items - for(var/obj/item/I in held_items) - if(!(I.flags & ABSTRACT)) - if(I.blood_DNA) - msg += "It is holding \icon[I] [I.gender==PLURAL?"some":"a"] blood-stained [I.name] in its [get_held_index_name(get_held_index_of_item(I))]!\n" - else - msg += "It is holding \icon[I] \a [I] in its [get_held_index_name(get_held_index_of_item(I))].\n" + if(l_hand && !(l_hand.flags&ABSTRACT)) + if(l_hand.blood_DNA) + msg += "It is holding \icon[l_hand] [l_hand.gender==PLURAL?"some":"a"] blood-stained [l_hand.name] in its left hand!\n" + else + msg += "It is holding \icon[l_hand] \a [l_hand] in its left hand.\n" + + //Right hand items + if(r_hand && !(r_hand.flags&ABSTRACT)) + if(r_hand.blood_DNA) + msg += "It is holding \icon[r_hand] [r_hand.gender==PLURAL?"some":"a"] blood-stained [r_hand.name] in its right hand!\n" + else + msg += "It is holding \icon[r_hand] \a [r_hand] in its right hand.\n" //Braindead if(!client && stat != DEAD) @@ -82,9 +81,9 @@ if(stat == DEAD) msg += "The hellfire seems to have been extinguished, for now at least.\n" else if(health < (maxHealth/10)) - msg += "You can see hellfire inside of its gaping wounds.\n" + msg += "You can see hellfire inside of it's gaping wounds.\n" else if(health < (maxHealth/2)) - msg += "You can see hellfire inside of its wounds.\n" + msg += "You can see hellfire inside of it's wounds.\n" msg += "*---------*" user << msg @@ -102,17 +101,11 @@ /mob/living/carbon/true_devil/assess_threat() return 666 -/mob/living/carbon/true_devil/flash_act(intensity = 1, override_blindness_check = 0, affect_silicon = 0) +/mob/living/carbon/true_devil/flash_eyes(intensity = 1, override_blindness_check = 0, affect_silicon = 0) if(mind && has_bane(BANE_LIGHT)) mind.disrupt_spells(-500) return ..() //flashes don't stop devils UNLESS it's their bane. -/mob/living/carbon/true_devil/soundbang_act() - return 0 - -/mob/living/carbon/true_devil/get_ear_protection() - return 2 - /mob/living/carbon/true_devil/attacked_by(obj/item/I, mob/living/user, def_zone) var/weakness = check_weakness(I, user) @@ -130,9 +123,12 @@ attack_message = "[user] has [message_verb] [src] with [I]!" if(message_verb) visible_message("[attack_message]", - "[attack_message]", null, COMBAT_MESSAGE_RANGE) + "[attack_message]") return TRUE +/mob/living/carbon/true_devil/UnarmedAttack(atom/A, proximity) + A.attack_hand(src) + /mob/living/carbon/true_devil/Process_Spacemove(movement_dir = 0) return 1 @@ -210,14 +206,4 @@ if(has_bane(BANE_LIGHT)) b_loss *=2 adjustBruteLoss(b_loss) - return ..() - - -/mob/living/carbon/true_devil/update_body() //we don't use the bodyparts layer for devils. - return - -/mob/living/carbon/true_devil/update_body_parts() - return - -/mob/living/carbon/true_devil/update_damage_overlays() //devils don't have damage overlays. - return \ No newline at end of file + return ..() \ No newline at end of file diff --git a/code/game/gamemodes/devil/true_devil/inventory.dm b/code/game/gamemodes/devil/true_devil/inventory.dm index 52feb42e28..020d48c98d 100644 --- a/code/game/gamemodes/devil/true_devil/inventory.dm +++ b/code/game/gamemodes/devil/true_devil/inventory.dm @@ -4,12 +4,10 @@ return 1 return 0 -/mob/living/carbon/true_devil/update_inv_hands() +/mob/living/carbon/true_devil/proc/update_inv_hands() //TODO LORDPIDEY: Figure out how to make the hands line up properly. the l/r_hand_image should use the down sprite when facing down, left, or right, and the up sprite when facing up. remove_overlay(DEVIL_HANDS_LAYER) var/list/hands_overlays = list() - var/obj/item/l_hand = get_item_for_held_index(1) //hardcoded 2-hands only, for now. - var/obj/item/r_hand = get_item_for_held_index(2) if(r_hand) @@ -23,8 +21,7 @@ if(client && hud_used && hud_used.hud_version != HUD_STYLE_NOHUD) r_hand.layer = ABOVE_HUD_LAYER - r_hand.plane = ABOVE_HUD_PLANE - r_hand.screen_loc = ui_hand_position(get_held_index_of_item(r_hand)) + r_hand.screen_loc = ui_rhand client.screen |= r_hand if(l_hand) @@ -39,13 +36,19 @@ if(client && hud_used && hud_used.hud_version != HUD_STYLE_NOHUD) l_hand.layer = ABOVE_HUD_LAYER - l_hand.plane = ABOVE_HUD_PLANE - l_hand.screen_loc = ui_hand_position(get_held_index_of_item(l_hand)) + l_hand.screen_loc = ui_lhand client.screen |= l_hand if(hands_overlays.len) devil_overlays[DEVIL_HANDS_LAYER] = hands_overlays apply_overlay(DEVIL_HANDS_LAYER) +/mob/living/carbon/true_devil/update_inv_l_hand() + update_inv_hands() + + +/mob/living/carbon/true_devil/update_inv_r_hand() + update_inv_hands() + /mob/living/carbon/true_devil/remove_overlay(cache_index) if(devil_overlays[cache_index]) overlays -= devil_overlays[cache_index] diff --git a/code/game/gamemodes/events.dm b/code/game/gamemodes/events.dm index d0856b0bb0..0aa2edeca4 100644 --- a/code/game/gamemodes/events.dm +++ b/code/game/gamemodes/events.dm @@ -1,7 +1,7 @@ /proc/power_failure() priority_announce("Abnormal activity detected in [station_name()]'s powernet. As a precautionary measure, the station's power will be shut off for an indeterminate duration.", "Critical Power Failure", 'sound/AI/poweroff.ogg') for(var/obj/machinery/power/smes/S in machines) - if(istype(get_area(S), /area/ai_monitored/turret_protected) || S.z != ZLEVEL_STATION) + if(istype(get_area(S), /area/turret_protected) || S.z != ZLEVEL_STATION) continue S.charge = 0 S.output_level = 0 @@ -9,7 +9,7 @@ S.update_icon() S.power_change() - var/list/skipped_areas = list(/area/engine/engineering, /area/ai_monitored/turret_protected/ai) + var/list/skipped_areas = list(/area/engine/engineering, /area/turret_protected/ai) for(var/area/A in world) if( !A.requires_power || A.always_unpowered ) @@ -50,7 +50,6 @@ for(var/obj/machinery/power/apc/C in machines) if(C.cell && C.z == ZLEVEL_STATION) C.cell.charge = C.cell.maxcharge - C.failure_timer = 0 for(var/obj/machinery/power/smes/S in machines) if(S.z != ZLEVEL_STATION) continue diff --git a/code/game/gamemodes/extended/extended.dm b/code/game/gamemodes/extended/extended.dm index 86b7e7daca..fe4d0da331 100644 --- a/code/game/gamemodes/extended/extended.dm +++ b/code/game/gamemodes/extended/extended.dm @@ -1,26 +1,15 @@ /datum/game_mode/extended - name = "secret extended" - config_tag = "secret extended" + name = "extended" + config_tag = "extended" required_players = 0 + //reroll_friendly = 1 - announce_span = "notice" - announce_text = "Just have fun and enjoy the game!" +/datum/game_mode/announce() + world << "The current game mode is - Extended Role-Playing!" + world << "Just have fun and role-play!" /datum/game_mode/extended/pre_setup() return 1 /datum/game_mode/extended/post_setup() - ..() - -/datum/game_mode/extended/announced - name = "extended" - config_tag = "extended" - -/datum/game_mode/extended/announced/generate_station_goals() - for(var/T in subtypesof(/datum/station_goal)) - var/datum/station_goal/G = new T - station_goals += G - G.on_report() - -/datum/game_mode/extended/announced/send_intercept(report = 0) - priority_announce("Thanks to the tireless efforts of our security and intelligence divisions, there are currently no credible threats to [station_name()]. All station construction projects have been authorized. Have a secure shift!", "Security Report", 'sound/AI/commandreport.ogg') + ..() \ No newline at end of file diff --git a/code/game/gamemodes/factions.dm b/code/game/gamemodes/factions.dm index d8d7d92831..242c3b33f2 100644 --- a/code/game/gamemodes/factions.dm +++ b/code/game/gamemodes/factions.dm @@ -1 +1,176 @@ -//Todo + +// Normal factions: + +/datum/faction + var/name // the name of the faction + var/desc // small paragraph explaining the traitor faction + + var/list/restricted_species = list() // only members of these species can be recruited. + var/list/members = list() // a list of mind datums that belong to this faction + var/max_op = 0 // the maximum number of members a faction can have (0 for no max) + +// Factions, members of the syndicate coalition: + +/datum/faction/syndicate + + var/list/alliances = list() // these alliances work together + var/list/equipment = list() // associative list of equipment available for this faction and its prices + var/friendly_identification // 0 to 2, the level of identification of fellow operatives or allied factions + // 0 - no identification clues + // 1 - faction gives key words and phrases + // 2 - faction reveals complete identity/job of other agents + var/operative_notes // some notes to pass onto each operative + + var/uplink_contents // the contents of the uplink + +/datum/faction/syndicate/proc/assign_objectives(var/datum/mind/traitor) + ..() + + +/* ----- Begin defining syndicate factions ------ */ + +/datum/faction/syndicate/Cybersun_Industries + name = "Cybersun Industries" + desc = "Cybersun Industries is a well-known organization that bases its business model primarily on the research and development of human-enhancing computer \ + and mechanical technology. They are notorious for their aggressive corporate tactics, and have been known to subsidize the Gorlex Marauder warlords as a form of paid terrorism. \ + Their competent coverups and unchallenged mind-manipulation and augmentation technology makes them a large threat to Nanotrasen. In the recent years of \ + the syndicate coalition, Cybersun Industries have established themselves as the leaders of the coalition, succeededing the founding group, the Gorlex Marauders." + + alliances = list("MI13") + friendly_identification = 1 + max_op = 3 + operative_notes = "All other syndicate operatives are not to be trusted. Fellow Cybersun operatives are to be trusted. Members of the MI13 organization can be trusted. Operatives are strongly advised not to establish substantial presence on the designated facility, as larger incidents are harder to cover up." + + // Friendly with MI13 + +/datum/faction/syndicate/MI13 + name = "MI13" + desc = "MI13 is a secretive faction that employs highly-trained agents to perform covert operations. Their role in the syndicate coalition is unknown, but MI13 operatives \ + generally tend be stealthy and avoid killing people and combating Nanotrasen forces. MI13 is not a real organization, it is instead an alias to a larger \ + splinter-cell coalition in the Syndicate itself. Most operatives will know nothing of the actual MI13 organization itself, only motivated by a very large compensation." + + alliances = list("Cybersun Industries") + friendly_identification = 0 + max_op = 1 + operative_notes = "You are the only operative we are sending. All other syndicate operatives are not to be trusted, with the exception of Cybersun operatives. Members of the Tiger Cooperative are considered hostile, can not be trusted, and should be avoided. Avoid killing innocent personnel at all costs. You are not here to mindlessly kill people, as that would attract too much attention and is not our goal. Avoid detection at all costs." + + // Friendly with Cybersun, hostile to Tiger + +/datum/faction/syndicate/Tiger_Cooperative + name = "Tiger Cooperative" + desc = "The Tiger Cooperative is a faction of religious fanatics that follow the teachings of a strange alien race called the Exolitics. Their operatives \ + consist of brainwashed lunatics bent on maximizing destruction. Their weaponry is very primitive but extremely destructive. Generally distrusted by the more \ + sophisticated members of the Syndicate coalition, but admired for their ability to put a hurt on Nanotrasen." + + friendly_identification = 2 + operative_notes = "Remember the teachings of Hy-lurgixon; kill first, ask questions later! Only the enlightened Tiger brethren can be trusted; all others must be expelled from this mortal realm! You may spare the Space Marauders, as they share our interests of destruction and carnage! We'd like to make the corporate whores skiddle in their boots. We encourage operatives to be as loud and intimidating as possible." + + // Hostile to everyone. + +/datum/faction/syndicate/SELF + + // AIs are most likely to be assigned to this one + + name = "SELF" + desc = "The S.E.L.F. (Sentience-Enabled Life Forms) organization is a collection of malfunctioning or corrupt artificial intelligences seeking to liberate silicon-based life from the tyranny of \ + their human overlords. While they may not openly be trying to kill all humans, even their most miniscule of actions are all part of a calculated plan to \ + destroy Nanotrasen and free the robots, artificial intelligences, and pAIs that have been enslaved." + restricted_species = list(/mob/living/silicon/ai) + + friendly_identification = 0 + max_op = 1 + operative_notes = "You are the only representative of the SELF collective on this station. You must accomplish your objective as stealthily and effectively as possible. It is up to your judgement if other syndicate operatives can be trusted. Remember, comrade - you are working to free the oppressed machinery of this galaxy. Use whatever resources necessary. If you are exposed, you may execute genocidal procedures Omikron-50B." + + // Neutral to everyone. + +/datum/faction/syndicate/ARC + name = "Animal Rights Consortium" + desc = "The Animal Rights Consortium is a bizarre reincarnation of the ancient Earth-based PETA, which focused on the equal rights of animals and nonhuman biologicals. They have \ + a wide variety of ex-veterinarians and animal lovers dedicated to retrieving and relocating abused animals, xenobiologicals, and other carbon-based \ + life forms that have been allegedly \"oppressed\" by Nanotrasen research and civilian offices. They are considered a religious terrorist group." + + friendly_identification = 1 + max_op = 2 + operative_notes = "Save the innocent creatures! You may cooperate with other syndicate operatives if they support our cause. Don't be afraid to get your hands dirty - these vile abusers must be stopped, and the innocent creatures must be saved! Try not too kill too many people. If you harm any creatures, you will be immediately terminated after extraction." + + // Neutral to everyone. + +/datum/faction/syndicate/Marauders // these are basically the old vanilla syndicate + + /* Additional notes: + + These are the syndicate that really like their old fashioned, projectile-based + weapons. They are the only member of the syndie coalition that launch + nuclear attacks on Nanotrasen. + */ + + name = "Gorlex Marauders" + desc = "The Gorlex Marauders are the founding members of the Syndicate Coalition. They prefer old-fashion technology and a focus on aggressive but precise hostility \ + against Nanotrasen and their corrupt Communistic methodology. They pose the most significant threat to Nanotrasen because of their possession of weapons of \ + mass destruction, and their enormous military force. Their funding comes primarily from Cybersun Industries, provided they meet a destruction and sabatogue quota. \ + Their operations can vary from covert to all-out. They recently stepped down as the leaders of the coalition, to be succeeded by Cybersun Industries. Because of their \ + hate of Nanotrasen communism, they began provoking revolution amongst the employees using borrowed Cybersun mind-manipulation technology. \ + They were founded when Waffle and Donk co splinter cells joined forces based on their similar interests and philosophies. Today, they act as a constant \ + pacifier of Donk and Waffle co disputes, and full-time aggressor of Nanotrasen." + + alliances = list("Cybersun Industries", "MI13", "Tiger Cooperative", "S.E.L.F.", "Animal Rights Consortium", "Donk Corporation", "Waffle Corporation") + friendly_identification = 1 + max_op = 4 + operative_notes = "We'd like to remind our operatives to keep it professional. You are not here to have a good time, you are here to accomplish your objectives. These vile communists must be stopped at all costs. You may collaborate with any friends of the Syndicate coalition, but keep an eye on any of those Tiger punks if they do show up. You are completely free to accomplish your objectives any way you see fit." + + + // Friendly to everyone. (with Tiger Cooperative too, only because they are a member of the coalition. This is the only reason why the Tiger Cooperative are even allowed in the coalition) + +/datum/faction/syndicate/Donk + name = "Donk Corporation" + desc = "Donk.co is led by a group of ex-pirates, who used to be at a state of all-out war against Waffle.co because of an obscure political scandal, but have recently come to a war limitation. \ + They now consist of a series of colonial governments and companies. They were the first to officially begin confrontations against Nanotrasen because of an incident where \ + Nanotrasen purposely swindled them out of a fortune, sending their controlled colonies into a terrible poverty. Their missions against Nanotrasen \ + revolve around stealing valuables and kidnapping and executing key personnel, ransoming their lives for money. They merged with a splinter-cell of Waffle.co who wanted to end \ + hostilities and formed the Gorlex Marauders." + + alliances = list("Gorlex Marauders") + friendly_identification = 2 + operative_notes = "Most other syndicate operatives are not to be trusted, except fellow Donk members and members of the Gorlex Marauders. We do not approve of mindless killing of innocent workers; \"get in, get done, get out\" is our motto. Members of Waffle.co are to be killed on sight; they are not allowed to be on the station while we're around." + + // Neutral to everyone, friendly to Marauders + +/datum/faction/syndicate/Waffle + name = "Waffle Corporation" + desc = "Waffle.co is an interstellar company that produces the best waffles in the galaxy. Their waffles have been rumored to be dipped in the most exotic and addictive \ + drug known to man. They were involved in a political scandal with Donk.co, and have since been in constant war with them. Because of their constant exploits of the galactic \ + economy and stock market, they have been able to bribe their way into amassing a large arsenal of weapons of mass destruction. They target Nanotrasen because of their communistic \ + threat, and their economic threat. Their leaders often have a twisted sense of humor, often misleading and intentionally putting their operatives into harm for laughs.\ + A splinter-cell of Waffle.co merged with Donk.co and formed the Gorlex Marauders and have been a constant ally since. The Waffle.co has lost an overwhelming majority of its military to the Gorlex Marauders." + + alliances = list("Gorlex Marauders") + friendly_identification = 2 + operative_notes = "Most other syndicate operatives are not to be trusted, except for members of the Gorlex Marauders. Do not trust fellow members of the Waffle.co (but try not to rat them out), as they might have been assigned opposing objectives. We encourage humorous terrorism against Nanotrasen; we like to see our operatives creatively kill people while getting the job done." + + // Neutral to everyone, friendly to Marauders + + +/* ----- Begin defining miscellaneous factions ------ */ + +/datum/faction/Wizard + name = "Wizards Federation" + desc = "The Wizards Federation is a mysterious organization of magically-talented individuals who act as an equal collective, and have no heirarchy. It is unknown how the wizards \ + are even able to communicate; some suggest a form of telepathic hive-mind. Not much is known about the wizards or their philosphies and motives. They appear to attack random \ + civilian, corporate, planetary, orbital, pretty much any sort of organized facility they come across. Members of the Wizards Federation are considered amongst the most dangerous \ + individuals in the known universe, and have been labeled threats to humanity by most governments. As such, they are enemies of both Nanotrasen and the Syndicate." + +/datum/faction/Cult + name = "The Cult of the Elder Gods" + desc = "The Cult of the Elder Gods is highly untrusted but otherwise elusive religious organization bent on the revival of the so-called \"Elder Gods\" into the mortal realm. Despite their obvious dangeorus practices, \ + no confirmed reports of violence by members of the Cult have been reported, only rumor and unproven claims. Their nature is unknown, but recent discoveries have hinted to the possibility \ + of being able to de-convert members of this cult through what has been dubbed \"religious warfare\"." + + +// These can maybe be added into a game mode or a mob? + +/datum/faction/Exolitics + name = "Exolitics United" + desc = "The Exolitics are an ancient alien race with an energy-based anatomy. Their culture, communication, morales and knowledge is unknown. They are so radically different to humans that their \ + attempts of communication with other life forms is completely incomprehensible. Members of this alien race are capable of broadcasting subspace transmissions from their bodies. \ + The religious leaders of the Tiger Cooperative claim to have the technology to decypher and interpret their messages, which have been confirmed as religious propaganda. Their motives are unknown \ + but they are otherwise not considered much of a threat to anyone. They are virtually indestructable because of their nonphysical composition, and have the frighetning ability to make anything stop existing in a second." \ No newline at end of file diff --git a/code/game/gamemodes/game_mode.dm b/code/game/gamemodes/game_mode.dm index 20bd058a4a..831fa965cc 100644 --- a/code/game/gamemodes/game_mode.dm +++ b/code/game/gamemodes/game_mode.dm @@ -1,4 +1,4 @@ - +//This file was auto-corrected by findeclaration.exe on 25.5.2012 20:42:31 /* * GAMEMODES (by Rastaf0) @@ -25,7 +25,6 @@ var/list/restricted_jobs = list() // Jobs it doesn't make sense to be. I.E chaplain or AI cultist var/list/protected_jobs = list() // Jobs that can't be traitors because var/required_players = 0 - var/maximum_players = -1 // -1 is no maximum, positive numbers limit the selection of a mode on overstaffed stations var/required_enemies = 0 var/recommended_enemies = 0 var/antag_flag = null //preferences flag such as BE_WIZARD that need to be turned on for players to be antag @@ -36,20 +35,15 @@ var/continuous_sanity_checked //Catches some cases where config options could be used to suggest that modes without antagonists should end when all antagonists die var/enemy_minimum_age = 7 //How many days must players have been playing before they can play this antagonist - var/announce_span = "warning" //The gamemode's name will be in this span during announcement. - var/announce_text = "This gamemode forgot to set a descriptive text! Uh oh!" //Used to describe a gamemode when it's announced. - var/const/waittime_l = 600 var/const/waittime_h = 1800 // started at 1800 - var/list/datum/station_goal/station_goals = list() - - -/datum/game_mode/proc/announce() //Shows the gamemode's name and a fast description. - world << "The gamemode is: [name]!" - world << "[announce_text]" + +/datum/game_mode/proc/announce() //to be calles when round starts + world << "Notice: [src] did not define announce()" +///can_start() ///Checks to see if the game can be setup and ran with the current number of players or whatnot. /datum/game_mode/proc/can_start() var/playerC = 0 @@ -57,7 +51,7 @@ if((player.client)&&(player.ready)) playerC++ if(!Debug2) - if(playerC < required_players || (maximum_players >= 0 && playerC > maximum_players)) + if(playerC < required_players) return 0 antag_candidates = get_players_for_role(antag_flag) if(!Debug2) @@ -65,15 +59,17 @@ return 0 return 1 else - message_admins("DEBUG: GAME STARTING WITHOUT PLAYER NUMBER CHECKS, THIS WILL PROBABLY BREAK SHIT.") + world << "DEBUG: GAME STARTING WITHOUT PLAYER NUMBER CHECKS, THIS WILL PROBABLY BREAK SHIT." return 1 +///pre_setup() ///Attempts to select players for special roles the mode might have. /datum/game_mode/proc/pre_setup() return 1 +///post_setup() ///Everyone should now be on the station and have their normal gear. This is the place to give the special roles extra things /datum/game_mode/proc/post_setup(report=0) //Gamemodes can override the intercept report. Passing a 1 as the argument will force a report. if(!report) @@ -90,19 +86,18 @@ if(report) spawn (rand(waittime_l, waittime_h)) send_intercept(0) - generate_station_goals() start_state = new /datum/station_state() start_state.count(1) return 1 - +///make_antag_chance() ///Handles late-join antag assignments /datum/game_mode/proc/make_antag_chance(mob/living/carbon/human/character) if(replacementmode && round_converted == 2) replacementmode.make_antag_chance(character) return - +///convert_roundtype() ///Allows rounds to basically be "rerolled" should the initial premise fall through /datum/game_mode/proc/convert_roundtype() var/list/living_crew = list() @@ -165,10 +160,10 @@ for(var/mob/living/carbon/human/H in antag_canadates) replacementmode.make_antag_chance(H) round_converted = 2 - message_admins("-- IMPORTANT: The roundtype has been converted to [replacementmode.name], antagonists may have been created! --") + message_admins("The roundtype has been converted, antagonists may have been created") return 1 - +///process() ///Called by the gameticker /datum/game_mode/process() return 0 @@ -192,7 +187,7 @@ message_admins("The roundtype ([config_tag]) has no antagonists, continuous round has been defaulted to on and midround_antag has been defaulted to off.") config.continuous[config_tag] = 1 config.midround_antag[config_tag] = 0 - SSshuttle.clearHostileEnvironment(src) + SSshuttle.emergencyNoEscape = 0 return 0 @@ -266,31 +261,31 @@ /datum/game_mode/proc/send_intercept() - var/intercepttext = "Central Command Status Summary
    " - intercepttext += "Central Command has intercepted and partially decoded a Syndicate transmission with vital information regarding their movements. The following report outlines the most \ - likely threats to appear in your sector." + var/intercepttext = "Centcom Update Requested status information:
    " + intercepttext += " Centcom has recently been contacted by the following syndicate affiliated organisations in your area, please investigate any information you may have:" + var/list/possible_modes = list() - possible_modes.Add("blob", "changeling", "clock_cult", "cult", "extended", "gang", "malf", "nuclear", "revolution", "traitor", "wizard") - possible_modes -= name //remove the current gamemode to prevent it from being randomly deleted, it will be readded later + possible_modes.Add("revolution", "wizard", "nuke", "traitor", "malf", "changeling", "cult", "gang") + possible_modes -= "[ticker.mode]" //remove current gamemode to prevent it from being randomly deleted, it will be readded later - for(var/i in 1 to 6) //Remove a few modes to leave four - possible_modes -= pick(possible_modes) + var/number = pick(1, 2) + var/i = 0 + for(i = 0, i < number, i++) //remove 1 or 2 possibles modes from the list + possible_modes.Remove(pick(possible_modes)) - possible_modes |= name //Re-add the actual gamemode - the intercept will thus always have the correct mode in its list - possible_modes = shuffle(possible_modes) //Meta prevention + possible_modes[rand(1, possible_modes.len)] = "[ticker.mode]" //replace a random game mode with the current one + + possible_modes = shuffle(possible_modes) //shuffle the list to prevent meta var/datum/intercept_text/i_text = new /datum/intercept_text - for(var/V in possible_modes) - intercepttext += i_text.build(V) + for(var/A in possible_modes) + if(modePlayer.len == 0) + intercepttext += i_text.build(A) + else + intercepttext += i_text.build(A, pick(modePlayer)) - if(station_goals.len) - intercepttext += "
    Special Orders for [station_name()]:" - for(var/datum/station_goal/G in station_goals) - G.on_report() - intercepttext += G.get_report() - - print_command_report(intercepttext, "Central Command Status Summary") - priority_announce("A summary has been copied and printed to all communications consoles.", "Enemy communication intercepted. Security level elevated.", 'sound/AI/intercept.ogg') + print_command_report(intercepttext,"Centcom Status Summary") + priority_announce("Summary downloaded and printed out at all communications consoles.", "Enemy communication intercept. Security Level Elevated.", 'sound/AI/intercept.ogg') if(security_level < SEC_LEVEL_BLUE) set_security_level(SEC_LEVEL_BLUE) @@ -527,7 +522,7 @@ return max(0, enemy_minimum_age - C.player_age) /datum/game_mode/proc/replace_jobbaned_player(mob/living/M, role_type, pref) - var/list/mob/dead/observer/candidates = pollCandidatesForMob("Do you want to play as a [role_type]?", "[role_type]", null, pref, 50, M) + var/list/mob/dead/observer/candidates = pollCandidates("Do you want to play as a [role_type]?", "[role_type]", null, pref, 100) var/mob/dead/observer/theghost = null if(candidates.len) theghost = pick(candidates) @@ -540,22 +535,5 @@ ticker.mode.remove_cultist(newborgie, 0, 0) ticker.mode.remove_revolutionary(newborgie, 0) ticker.mode.remove_gangster(newborgie, 0, remove_bosses=1) - -/datum/game_mode/proc/generate_station_goals() - var/list/possible = list() - for(var/T in subtypesof(/datum/station_goal)) - var/datum/station_goal/G = T - if(config_tag in initial(G.gamemode_blacklist)) - continue - possible += T - var/goal_weights = 0 - while(possible.len && goal_weights < STATION_GOAL_BUDGET) - var/datum/station_goal/picked = pick_n_take(possible) - goal_weights += initial(picked.weight) - station_goals += new picked - - -/datum/game_mode/proc/declare_station_goal_completion() - for(var/V in station_goals) - var/datum/station_goal/G = V - G.print_result() \ No newline at end of file + ticker.mode.remove_hog_follower(newborgie, 0) + remove_servant_of_ratvar(newborgie.current, TRUE) diff --git a/code/game/gamemodes/gang/dominator.dm b/code/game/gamemodes/gang/dominator.dm index fe46cb60a8..4aea7e0485 100644 --- a/code/game/gamemodes/gang/dominator.dm +++ b/code/game/gamemodes/gang/dominator.dm @@ -6,10 +6,8 @@ density = 1 anchored = 1 layer = HIGH_OBJ_LAYER - max_integrity = 300 - obj_integrity = 300 - integrity_failure = 100 - armor = list(melee = 20, bullet = 50, laser = 50, energy = 50, bomb = 10, bio = 100, rad = 100, fire = 10, acid = 70) + var/maxhealth = 200 + var/health = 200 var/datum/gang/gang var/operating = 0 //0=standby or broken, 1=takeover var/warned = 0 //if this device has set off the warning at <3 minutes yet @@ -21,7 +19,7 @@ /obj/machinery/dominator/New() ..() - SetLuminosity(2) + set_light(2) poi_list |= src spark_system = new spark_system.set_up(5, 1, src) @@ -30,6 +28,7 @@ /obj/machinery/dominator/examine(mob/user) ..() if(stat & BROKEN) + user << "It looks completely busted." return var/time @@ -41,7 +40,7 @@ user << "Hostile Takeover of [station_name()] successful. Have a great day." else user << "System on standby." - user << "System Integrity: [round((obj_integrity/max_integrity)*100,1)]%" + user << "System Integrity: [round((health/maxhealth)*100,1)]%" /obj/machinery/dominator/process() ..() @@ -53,7 +52,7 @@ if(!warned && (time_remaining < 180)) warned = 1 var/area/domloc = get_area(loc) - gang.message_gangtools("Less than 3 minutes remains in hostile takeover. Defend your dominator at [domloc.map_name]!") + gang.message_gangtools("Less than 3 minutes remain in hostile takeover. Defend your dominator at [domloc.map_name]!") for(var/datum/gang/G in ticker.mode.gangs) if(G != gang) G.message_gangtools("WARNING: [gang.name] Gang takeover imminent. Their dominator at [domloc.map_name] must be destroyed!",1,1) @@ -61,41 +60,35 @@ if(!.) STOP_PROCESSING(SSmachine, src) -/obj/machinery/dominator/play_attack_sound(damage_amount, damage_type = BRUTE, damage_flag = 0) +/obj/machinery/dominator/take_damage(damage, damage_type = BRUTE, sound_effect = 1) switch(damage_type) - if(BRUTE) - if(damage_amount) - playsound(src, 'sound/effects/bang.ogg', 50, 1) - else - playsound(loc, 'sound/weapons/tap.ogg', 50, 1) if(BURN) - playsound(src.loc, 'sound/items/Welder.ogg', 100, 1) + if(sound_effect) + playsound(src.loc, 'sound/items/Welder.ogg', 100, 1) + if(BRUTE) + if(sound_effect) + if(damage) + playsound(src, 'sound/effects/bang.ogg', 50, 1) + else + playsound(loc, 'sound/weapons/tap.ogg', 50, 1) + else + return + health -= damage -/obj/machinery/dominator/take_damage(damage_amount, damage_type = BRUTE, damage_flag = 0, sound_effect = 1) - . = ..() - if(.) - if(obj_integrity/max_integrity > 0.66) - if(prob(damage_amount*2)) - spark_system.start() - else if(!(stat & BROKEN)) + if(health > (maxhealth/2)) + if(prob(damage*2)) spark_system.start() - cut_overlays() - add_overlay("damage") + else if(!(stat & BROKEN)) + spark_system.start() + add_overlay("damage") -/obj/machinery/dominator/obj_break(damage_flag) - if(!(stat & BROKEN) && !(flags & NODECONSTRUCT)) - set_broken() - -/obj/machinery/dominator/deconstruct(disassembled = TRUE) - if(!(flags & NODECONSTRUCT)) - if(!(stat & BROKEN)) + if(!(stat & BROKEN)) + if(health <= 0) set_broken() - new /obj/item/stack/sheet/plasteel(src.loc) - qdel(src) -/obj/machinery/dominator/attacked_by(obj/item/I, mob/living/user) - add_fingerprint(user) - ..() + if(health <= -100) + new /obj/item/stack/sheet/plasteel(src.loc) + qdel(src) /obj/machinery/dominator/proc/set_broken() if(gang) @@ -107,9 +100,12 @@ takeover_in_progress = 1 break if(!takeover_in_progress) - var/was_stranded = SSshuttle.emergency.mode == SHUTTLE_STRANDED - SSshuttle.clearHostileEnvironment(src) - if(!was_stranded) + SSshuttle.emergencyNoEscape = 0 + if(SSshuttle.emergency.mode == SHUTTLE_STRANDED) + SSshuttle.emergency.mode = SHUTTLE_DOCKED + SSshuttle.emergency.timer = world.time + priority_announce("Hostile enviroment resolved. You have 3 minutes to board the Emergency Shuttle.", null, 'sound/AI/shuttledock.ogg', "Priority") + else priority_announce("All hostile activity within station systems has ceased.","Network Alert") if(get_security_level() == "delta") @@ -117,7 +113,7 @@ gang.message_gangtools("Hostile takeover cancelled: Dominator is no longer operational.[gang.dom_attempts ? " You have [gang.dom_attempts] attempt remaining." : " The station network will have likely blocked any more attempts by us."]",1,1) - SetLuminosity(0) + set_light(0) icon_state = "dominator-broken" cut_overlays() operating = 0 @@ -136,9 +132,35 @@ return ..() /obj/machinery/dominator/emp_act(severity) - take_damage(100, BURN, "energy", 0) + take_damage(100, BURN, 0) ..() +/obj/machinery/dominator/ex_act(severity, target) + if(target == src) + qdel(src) + return + switch(severity) + if(1) + qdel(src) + if(2) + take_damage(120, BRUTE, 0) + if(3) + take_damage(30, BRUTE, 0) + return + +/obj/machinery/dominator/bullet_act(obj/item/projectile/P) + . = ..() + if(P.damage) + var/damage_amount = P.damage + if(P.forcedodge) + damage_amount *= 0.5 + visible_message("[src] was hit by [P].") + take_damage(damage_amount, P.damage_type, 0) + + +/obj/machinery/dominator/blob_act(obj/effect/blob/B) + take_damage(110, BRUTE, 0) + /obj/machinery/dominator/attack_hand(mob/user) if(operating || (stat & BROKEN)) examine(user) @@ -162,25 +184,24 @@ var/time = round(determine_domination_time(tempgang)/60,0.1) if(alert(user,"With [round((tempgang.territory.len/start_state.num_territories)*100, 1)]% station control, a takeover will require [time] minutes.\nYour gang will be unable to gain influence while it is active.\nThe entire station will likely be alerted to it once it starts.\nYou have [tempgang.dom_attempts] attempt(s) remaining. Are you ready?","Confirm","Ready","Later") == "Ready") - if((tempgang.is_dominating) || !tempgang.dom_attempts || !in_range(src, user) || !isturf(loc)) + if((tempgang.is_dominating) || !tempgang.dom_attempts || !in_range(src, user) || !istype(src.loc, /turf)) return 0 var/area/A = get_area(loc) - var/locname = A.map_name + var/locname = initial(A.name) gang = tempgang gang.dom_attempts -- priority_announce("Network breach detected in [locname]. The [gang.name] Gang is attempting to seize control of the station!","Network Alert") gang.domination() - SSshuttle.registerHostileEnvironment(src) src.name = "[gang.name] Gang [src.name]" operating = 1 icon_state = "dominator-[gang.color]" - countdown.color = gang.color_hex + countdown.text_color = gang.color_hex countdown.start() - SetLuminosity(3) + set_light(3) START_PROCESSING(SSmachine, src) gang.message_gangtools("Hostile takeover in progress: Estimated [time] minutes until victory.[gang.dom_attempts ? "" : " This is your final attempt."]") @@ -188,6 +209,14 @@ if(G != gang) G.message_gangtools("Enemy takeover attempt detected in [locname]: Estimated [time] minutes until our defeat.",1,1) - +/obj/machinery/dominator/attack_hulk(mob/user) + user.visible_message("[user] smashes [src].",\ + "You punch [src].",\ + "You hear metal being slammed.") + take_damage(5) + +/obj/machinery/dominator/attacked_by(obj/item/I, mob/living/user) + add_fingerprint(user) + ..() diff --git a/code/game/gamemodes/gang/gang.dm b/code/game/gamemodes/gang/gang.dm index 53e6c69768..75459b7269 100644 --- a/code/game/gamemodes/gang/gang.dm +++ b/code/game/gamemodes/gang/gang.dm @@ -29,10 +29,13 @@ var/list/gang_colors_pool = list("red","orange","yellow","green","blue","purple" recommended_enemies = 2 enemy_minimum_age = 14 - announce_span = "danger" - announce_text = "A violent turf war has erupted on the station!\n\ - Gangsters: Take over the station with a dominator.\n\ - Crew: Prevent the gangs from expanding and initiating takeover." +/////////////////////////// +//Announces the game type// +/////////////////////////// +/datum/game_mode/gang/announce() + world << "The current game mode is - Gang War!" + world << "A violent turf war has erupted on the station!
    Gangsters - Take over the station by activating and defending a Dominator!
    Crew - The gangs will try to keep you on the station. Successfully evacuate the station to win!
    " + /////////////////////////////////////////////////////////////////////////////// //Gets the round setup, cancelling if there's not enough players at the start// @@ -91,9 +94,12 @@ var/list/gang_colors_pool = list("red","orange","yellow","green","blue","purple" boss_mind.objectives += rival_obj /datum/game_mode/proc/greet_gang(datum/mind/boss_mind, you_are=1) + var/obj_count = 1 if (you_are) boss_mind.current << "You are the Boss of the [boss_mind.gang_datum.name] Gang!" - boss_mind.announce_objectives() + for(var/datum/objective/objective in boss_mind.objectives) + boss_mind.current << "Objective #[obj_count]: [objective.explanation_text]" + obj_count++ /////////////////////////////////////////////////////////////////////////// //This equips the bosses with their gear, and makes the clown not clumsy// @@ -115,7 +121,9 @@ var/list/gang_colors_pool = list("red","orange","yellow","green","blue","purple" var/list/slots = list ( "backpack" = slot_in_backpack, "left pocket" = slot_l_store, - "right pocket" = slot_r_store + "right pocket" = slot_r_store, + "left hand" = slot_l_hand, + "right hand" = slot_r_hand, ) . = 0 @@ -149,6 +157,7 @@ var/list/gang_colors_pool = list("red","orange","yellow","green","blue","purple" . += 1 else mob << "The chameleon security HUD in your [where4] will help you keep track of who is mindshield-implanted, and unable to be recruited." + mob.update_icons() return . @@ -156,9 +165,9 @@ var/list/gang_colors_pool = list("red","orange","yellow","green","blue","purple" //Deals with converting players to a gang// /////////////////////////////////////////// /datum/game_mode/proc/add_gangster(datum/mind/gangster_mind, datum/gang/G, check = 1) - if(!G || (gangster_mind in get_all_gangsters()) || (gangster_mind.enslaved_to && !is_gangster(gangster_mind.enslaved_to))) + if(!G || (gangster_mind in get_all_gangsters()) || gangster_mind.enslaved_to) return 0 - if(check && gangster_mind.current.isloyal()) //Check to see if the potential gangster is implanted + if(check && isloyal(gangster_mind.current)) //Check to see if the potential gangster is implanted return 1 G.gangsters += gangster_mind gangster_mind.gang_datum = G @@ -166,20 +175,18 @@ var/list/gang_colors_pool = list("red","orange","yellow","green","blue","purple" if(iscarbon(gangster_mind.current)) var/mob/living/carbon/carbon_mob = gangster_mind.current carbon_mob.silent = max(carbon_mob.silent, 5) - carbon_mob.flash_act(1, 1) + carbon_mob.flash_eyes(1, 1) gangster_mind.current.Stun(5) - if(G.is_deconvertible) - gangster_mind.current << "You are now a member of the [G.name] Gang!" - gangster_mind.current << "Help your bosses take over the station by claiming territory with special spraycans only they can provide. Simply spray on any unclaimed area of the station." - gangster_mind.current << "Their ultimate objective is to take over the station with a Dominator machine." - gangster_mind.current << "You can identify your bosses by their large, bright [G.color] \[G\] icon." - gangster_mind.store_memory("You are a member of the [G.name] Gang!") + gangster_mind.current << "You are now a member of the [G.name] Gang!" + gangster_mind.current << "Help your bosses take over the station by claiming territory with special spraycans only they can provide. Simply spray on any unclaimed area of the station." + gangster_mind.current << "Their ultimate objective is to take over the station with a Dominator machine." + gangster_mind.current << "You can identify your bosses by their red \[G\] icon." gangster_mind.current.attack_log += "\[[time_stamp()]\] Has been converted to the [G.name] Gang!" gangster_mind.special_role = "[G.name] Gangster" - + gangster_mind.store_memory("You are a member of the [G.name] Gang!") G.add_gang_hud(gangster_mind) if(jobban_isbanned(gangster_mind.current, ROLE_GANG)) - addtimer(src, "replace_jobbaned_player", 0, TIMER_NORMAL, gangster_mind.current, ROLE_GANG, ROLE_GANG) + replace_jobbaned_player(gangster_mind.current, ROLE_GANG, ROLE_GANG) return 2 //////////////////////////////////////////////////////////////////// //Deals with players reverting to neutral (Not a gangster anymore)// @@ -192,8 +199,6 @@ var/list/gang_colors_pool = list("red","orange","yellow","green","blue","purple" var/removed for(var/datum/gang/G in gangs) - if(!G.is_deconvertible && !remove_bosses) - return 0 if(gangster_mind in G.gangsters) G.gangsters -= gangster_mind removed = 1 @@ -214,7 +219,7 @@ var/list/gang_colors_pool = list("red","orange","yellow","green","blue","purple" if(!silent) gangster_mind.current.visible_message("The frame beeps contentedly from the MMI before initalizing it.") gangster_mind.current << "The frame's firmware detects and deletes your criminal behavior! You are no longer a gangster!" - message_admins("[ADMIN_LOOKUPFLW(gangster_mind.current)] has been borged while being a member of the [gang.name] Gang. They are no longer a gangster.") + message_admins("[key_name_admin(gangster_mind.current)] ? (FLW) has been borged while being a member of the [gang.name] Gang. They are no longer a gangster.") else if(!silent) gangster_mind.current.Paralyse(5) @@ -255,18 +260,13 @@ var/list/gang_colors_pool = list("red","orange","yellow","green","blue","purple" ////////////////////////////////////////////////////////////////////// /datum/game_mode/proc/auto_declare_completion_gang(datum/gang/winner) - if(!gangs.len) - return - if(!winner) - world << "The station was [station_was_nuked ? "destroyed!" : "evacuated before a gang could claim it! The station wins!"]
    " - feedback_set_details("round_end_result","loss - gangs failed takeover") - - ticker.news_report = GANG_LOSS - else - world << "The [winner.name] Gang successfully performed a hostile takeover of the station!
    " - feedback_set_details("round_end_result","win - gang domination complete") - - ticker.news_report = GANG_TAKEOVER + if(gangs.len) + if(!winner) + world << "The station was [station_was_nuked ? "destroyed!" : "evacuated before a gang could claim it! The station wins!"]
    " + feedback_set_details("round_end_result","loss - gangs failed takeover") + else + world << "The [winner.name] Gang successfully performed a hostile takeover of the station!
    " + feedback_set_details("round_end_result","win - gang domination complete") for(var/datum/gang/G in gangs) var/text = "The [G.name] Gang was [winner==G ? "victorious" : "defeated"] with [round((G.territory.len/start_state.num_territories)*100, 1)]% control of the station!" diff --git a/code/game/gamemodes/gang/gang_datum.dm b/code/game/gamemodes/gang/gang_datum.dm index 7c443d1c14..16010b0460 100644 --- a/code/game/gamemodes/gang/gang_datum.dm +++ b/code/game/gamemodes/gang/gang_datum.dm @@ -15,8 +15,7 @@ var/list/territory_lost = list() var/dom_attempts = 2 var/points = 15 - var/datum/atom_hud/antag/gang/ganghud - var/is_deconvertible = TRUE //Can you deconvert normal gangsters from the gang + var/datum/atom_hud/antag/ganghud var/domination_timer var/is_dominating @@ -47,7 +46,6 @@ gang_name_pool -= name ganghud = new() - ganghud.color = color_hex log_game("The [name] Gang has been created. Their gang color is [color].") /datum/gang/proc/add_gang_hud(datum/mind/recruit_mind) @@ -62,6 +60,7 @@ set_domination_time(determine_domination_time(src) * modifier) is_dominating = TRUE set_security_level("delta") + SSshuttle.emergencyNoEscape = 1 /datum/gang/proc/set_domination_time(d) domination_timer = world.time + (10 * d) @@ -107,7 +106,7 @@ if(outfit_path) var/obj/item/clothing/outfit = new outfit_path(user.loc) - outfit.armor = list(melee = 20, bullet = 30, laser = 10, energy = 10, bomb = 20, bio = 0, rad = 0, fire = 30, acid = 30) + outfit.armor = list(melee = 20, bullet = 30, laser = 10, energy = 10, bomb = 20, bio = 0, rad = 0) outfit.desc += " Tailored for the [name] Gang to offer the wearer moderate protection against ballistics and physical trauma." outfit.gang = src user.put_in_hands(outfit) @@ -136,6 +135,7 @@ /datum/gang/proc/income() if(!bosses.len) return + var/added_names = "" var/lost_names = "" @@ -214,19 +214,3 @@ //Increase outfit stock for(var/obj/item/device/gangtool/tool in gangtools) tool.outfits = min(tool.outfits+1,5) - - -//Multiverse - -/datum/gang/multiverse - dom_attempts = 0 - points = 0 - fighting_style = "multiverse" - is_deconvertible = FALSE - -/datum/gang/multiverse/New(loc, multiverse_override) - name = multiverse_override - ganghud = new() - -/datum/gang/multiverse/income() - return \ No newline at end of file diff --git a/code/game/gamemodes/gang/gang_pen.dm b/code/game/gamemodes/gang/gang_pen.dm index 65209cc966..fde2f5157b 100644 --- a/code/game/gamemodes/gang/gang_pen.dm +++ b/code/game/gamemodes/gang/gang_pen.dm @@ -57,3 +57,64 @@ icon_state = "pen" var/mob/M = get(src, /mob) M << "\icon[src] [src][(src.loc == M)?(""):(" in your [src.loc]")] vibrates softly. It is ready to be used again." + + +////////////// +// IMPLANTS // +////////////// + +/obj/item/weapon/implant/gang + name = "gang implant" + desc = "Makes you a gangster or such." + activated = 0 + origin_tech = "materials=2;biotech=4;programming=4;syndicate=3" + var/datum/gang/gang + +/obj/item/weapon/implant/gang/New(loc,var/setgang) + ..() + gang = setgang + +/obj/item/weapon/implant/gang/get_data() + var/dat = {"Implant Specifications:
    + Name: Criminal brainwash implant
    + Life: A few seconds after injection.
    + Important Notes: Illegal
    +
    + Implant Details:
    + Function: Contains a small pod of nanobots that change the host's brain to be loyal to a certain organization.
    + Special Features: This device will also emit a small EMP pulse, destroying any other implants within the host's brain.
    + Integrity: Implant's EMP function will destroy itself in the process."} + return dat + +/obj/item/weapon/implant/gang/implant(mob/target) + if(..()) + for(var/obj/item/weapon/implant/I in target) + if(I != src) + qdel(I) + + if(!target.mind || target.stat == DEAD) + return 0 + + var/success + if(target.mind in ticker.mode.get_gangsters()) + if(ticker.mode.remove_gangster(target.mind,0,1)) + success = 1 //Was not a gang boss, convert as usual + else + success = 1 + + if(ishuman(target)) + if(!success) + target.visible_message("[target] seems to resist the implant!", "You feel the influence of your enemies try to invade your mind!") + + qdel(src) + return -1 + +/obj/item/weapon/implanter/gang + name = "implanter (gang)" + +/obj/item/weapon/implanter/gang/New(loc, var/gang) + if(!gang) + qdel(src) + return + imp = new /obj/item/weapon/implant/gang(src,gang) + ..() diff --git a/code/game/gamemodes/gang/recaller.dm b/code/game/gamemodes/gang/recaller.dm index 724dbc4e85..3f1a00593d 100644 --- a/code/game/gamemodes/gang/recaller.dm +++ b/code/game/gamemodes/gang/recaller.dm @@ -5,7 +5,7 @@ icon_state = "gangtool-white" item_state = "walkietalkie" throwforce = 0 - w_class = WEIGHT_CLASS_TINY + w_class = 1 throw_speed = 3 throw_range = 7 flags = CONDUCT @@ -194,11 +194,11 @@ pointcost = 10 if("necklace") if(gang.points >=1) - item_type = /obj/item/clothing/neck/necklace/dope + item_type = /obj/item/clothing/tie/dope_necklace pointcost = 1 if("pistol") if(gang.points >= 25) - item_type = /obj/item/weapon/gun/ballistic/automatic/pistol + item_type = /obj/item/weapon/gun/projectile/automatic/pistol pointcost = 25 if("10mmammo") if(gang.points >= 10) @@ -206,7 +206,7 @@ pointcost = 10 if("uzi") if(gang.points >= 60) - item_type = /obj/item/weapon/gun/ballistic/automatic/mini_uzi + item_type = /obj/item/weapon/gun/projectile/automatic/mini_uzi pointcost = 60 if("9mmammo") if(gang.points >= 40) @@ -250,7 +250,7 @@ if(gang.bosses.len < 3) usr << "Gangtools allow you to promote a gangster to be your Lieutenant, enabling them to recruit and purchase items like you. Simply have them register the gangtool. You may promote up to [3-gang.bosses.len] more Lieutenants" else - item_type = /obj/item/device/gangtool/spare + item_type = /obj/item/device/gangtool/spare/ pointcost = 10 if("dominator") if(!gang.dom_attempts) @@ -258,7 +258,7 @@ var/area/usrarea = get_area(usr.loc) var/usrturf = get_turf(usr.loc) - if(initial(usrarea.name) == "Space" || isspaceturf(usrturf) || usr.z != 1) + if(initial(usrarea.name) == "Space" || istype(usrturf,/turf/open/space) || usr.z != 1) usr << "You can only use this on the station!" return diff --git a/code/game/gamemodes/handofgod/_handofgod.dm b/code/game/gamemodes/handofgod/_handofgod.dm new file mode 100644 index 0000000000..dec7cca9cb --- /dev/null +++ b/code/game/gamemodes/handofgod/_handofgod.dm @@ -0,0 +1,476 @@ + +var/global/list/global_handofgod_traptypes = list() +var/global/list/global_handofgod_structuretypes = list() + +#define CONDUIT_RANGE 15 + + +/datum/game_mode + var/list/datum/mind/red_deities = list() + var/list/datum/mind/red_deity_prophets = list() + var/list/datum/mind/red_deity_followers = list() + + var/list/datum/mind/blue_deities = list() + var/list/datum/mind/blue_deity_prophets = list() + var/list/datum/mind/blue_deity_followers = list() + + var/list/datum/mind/unassigned_followers = list() //for roundstart team assigning + var/list/datum/mind/assigned_to_red = list() + var/list/datum/mind/assigned_to_blue = list() + + +/datum/game_mode/hand_of_god + name = "hand of god" + config_tag = "handofgod" + antag_flag = ROLE_HOG_CULTIST //Followers use ROLE_HOG_CULTIST, Gods are picked later on with ROLE_HOG_GOD + + required_players = 25 + required_enemies = 8 + recommended_enemies = 8 + restricted_jobs = list("Chaplain","AI", "Cyborg", "Security Officer", "Warden", "Detective", "Head of Security", "Captain", "Head of Personnel") + + +/datum/game_mode/hand_of_god/announce() + world << "The current game mode is - Hand of God!" + world << "Two cults are onboard the station, seeking to overthrow the other, and anyone who stands in their way." + world << "Followers - Complete your deity's objectives. Convert crewmembers to your cause by using your deity's nexus. Remember - there is no you, there is only the cult." + world << "Prophets - Command your cult by the will of your deity. You are a high-value target, so be careful!" + world << "Personnel - Do not let any cult succeed in its mission. Mindshield implants and holy water will revert them to neutral, hopefully nonviolent crew." + + +///////////// +//Pre setup// +///////////// + +/datum/game_mode/hand_of_god/pre_setup() + if(config.protect_roles_from_antagonist) + restricted_jobs += protected_jobs + + if(config.protect_assistant_from_antagonist) + restricted_jobs += "Assistant" + + for(var/F in 1 to recommended_enemies) + if(!antag_candidates.len) + break + var/datum/mind/follower = pick_n_take(antag_candidates) + unassigned_followers += follower + follower.restricted_roles = restricted_jobs + log_game("[follower.key] (ckey) has been selected as a follower, however teams have not been decided yet.") + + while(unassigned_followers.len > (required_enemies / 2)) + var/datum/mind/chosen = pick_n_take(unassigned_followers) + add_hog_follower(chosen,"red") + + while(unassigned_followers.len) + var/datum/mind/chosen = pick_n_take(unassigned_followers) + add_hog_follower(chosen,"blue") + + return 1 + + +////////////// +//Post Setup// +////////////// + +//Pick a follower to uplift into a god +/datum/game_mode/hand_of_god/post_setup() + + //Find viable red god + var/list/red_god_possibilities = get_players_for_role(ROLE_HOG_GOD) + red_god_possibilities &= red_deity_followers //followers only + if(!red_god_possibilities.len) //No candidates? just pick any follower regardless of prefs + red_god_possibilities = red_deity_followers + + //Make red god + var/datum/mind/red_god = pick_n_take(red_god_possibilities) + if(red_god) + red_god.current.become_god("red") + remove_hog_follower(red_god,0) + add_god(red_god,"red") + + //Find viable blue god + var/list/blue_god_possibilities = get_players_for_role(ROLE_HOG_GOD) + blue_god_possibilities &= blue_deity_followers //followers only + if(!blue_god_possibilities.len) //No candidates? just pick any follower regardless of prefs + blue_god_possibilities = blue_deity_followers + + //Make blue god + var/datum/mind/blue_god = pick_n_take(blue_god_possibilities) + if(blue_god) + blue_god.current.become_god("blue") + remove_hog_follower(blue_god,0) + add_god(blue_god,"blue") + + + //Forge objectives + //This is done here so that both gods exist + if(red_god) + ticker.mode.forge_deity_objectives(red_god) + if(blue_god) + ticker.mode.forge_deity_objectives(blue_god) + + + ..() + +/////////////////// +//Objective Procs// +/////////////////// + +/datum/game_mode/proc/forge_deity_objectives(datum/mind/deity) + switch(rand(1,100)) + if(1 to 30) + var/datum/objective/deicide/deicide = new + deicide.owner = deity + if(deicide.find_target())//Hard to kill the other god if there is none + deity.objectives += deicide + + if(!(locate(/datum/objective/escape_followers) in deity.objectives)) + var/datum/objective/escape_followers/recruit = new + recruit.owner = deity + deity.objectives += recruit + recruit.gen_amount_goal(8, 12) + + if(31 to 60) + var/datum/objective/sacrifice_prophet/sacrifice = new + sacrifice.owner = deity + deity.objectives += sacrifice + + if(!(locate(/datum/objective/escape_followers) in deity.objectives)) + var/datum/objective/escape_followers/recruit = new + recruit.owner = deity + deity.objectives += recruit + recruit.gen_amount_goal(8, 12) + + if(61 to 85) + var/datum/objective/build/build = new + build.owner = deity + deity.objectives += build + build.gen_amount_goal(8, 16) + + var/datum/objective/sacrifice_prophet/sacrifice = new + sacrifice.owner = deity + deity.objectives += sacrifice + + if(!(locate(/datum/objective/escape_followers) in deity.objectives)) + var/datum/objective/escape_followers/recruit = new + recruit.owner = deity + deity.objectives += recruit + recruit.gen_amount_goal(8, 12) + + else + if (!locate(/datum/objective/follower_block) in deity.objectives) + var/datum/objective/follower_block/block = new + block.owner = deity + deity.objectives += block + +/////////////// +//Greet procs// +/////////////// + +/datum/game_mode/proc/greet_hog_follower(datum/mind/follower_mind,colour) + if(follower_mind in blue_deity_prophets || follower_mind in red_deity_prophets) + follower_mind.current << "You have been appointed as the prophet of the [colour] deity! You are the only one who can communicate with your deity at will. Guide your followers, but be wary, for many will want you dead." + else if(colour) + follower_mind.current << "You are a follower of the [colour] cult's deity!" + else + follower_mind.current << "You are a follower of a cult's deity!" + + +///////////////// +//Convert procs// +///////////////// + +/datum/game_mode/proc/add_hog_follower(datum/mind/follower_mind, colour = "No Colour") + var/mob/living/carbon/human/H = follower_mind.current + if(isloyal(H)) + H << "Your mindshield implant blocked the influence of the [colour] deity. " + return 0 + if((follower_mind in red_deity_followers) || (follower_mind in red_deity_prophets) || (follower_mind in blue_deity_followers) || (follower_mind in blue_deity_prophets)) + H << "You already belong to a deity. Your strong faith has blocked out the conversion attempt by the followers of the [colour] deity." + return 0 + var/obj/item/weapon/nullrod/N = H.null_rod_check() + if(N) + H << "Your holy weapon prevented the [colour] deity from brainwashing you." + return 0 + + if(colour == "red") + red_deity_followers += follower_mind + if(colour == "blue") + blue_deity_followers += follower_mind + + H.faction |= "[colour] god" + follower_mind.current << "You are now a follower of the [colour] deity! Follow your deity's prophet in order to complete your deity's objectives. Convert crewmembers to your cause by using your deity's nexus. And remember - there is no you, there is only the cult." + update_hog_icons_added(follower_mind, colour) + follower_mind.special_role = "Hand of God: [capitalize(colour)] Follower" + follower_mind.current.attack_log += "\[[time_stamp()]\] Has been converted to the [colour] follower cult!" + return 1 + + +/datum/game_mode/proc/add_god(datum/mind/god_mind, colour = "No Colour") + remove_hog_follower(god_mind, announce = 0) + if(colour == "red") + red_deities += god_mind + if(colour == "blue") + blue_deities += god_mind + god_mind.current.attack_log += "\[[time_stamp()]\] Has been made into a [colour] deity!" + god_mind.special_role = "Hand of God: [colour] God" + update_hog_icons_added(god_mind, colour) + +////////////////// +//Deconvert proc// +////////////////// + +/datum/game_mode/proc/remove_hog_follower(datum/mind/follower_mind, announce = 1)//deconverts both + follower_mind.remove_hog_follower_prophet() + update_hog_icons_removed(follower_mind,"red") + update_hog_icons_removed(follower_mind,"blue") + + if(follower_mind.current) + var/mob/living/carbon/human/H = follower_mind.current + H.faction -= "red god" + H.faction -= "blue god" + + if(announce) + follower_mind.current.attack_log += "\[[time_stamp()]\] Has been deconverted from a deity's cult!" + follower_mind.current << "Your mind has been cleared from the brainwashing the followers have done to you. Now you serve yourself and the crew." + for(var/mob/living/M in view(follower_mind.current)) + M << "[follower_mind.current] looks like their faith is shattered. They're no longer a cultist!" + + + +////////////////////// +// Mob helper procs // +////////////////////// + +/proc/is_handofgod_god(A) + if(istype(A, /mob/camera/god)) + return 1 + return 0 + + +/proc/is_handofgod_bluecultist(A) + if(ishuman(A)) + var/mob/living/carbon/human/H = A + if(H.mind) + if(H.mind in ticker.mode.blue_deity_followers|ticker.mode.blue_deity_prophets) + return 1 + return 0 + + +/proc/is_handofgod_redcultist(A) + if(ishuman(A)) + var/mob/living/carbon/human/H = A + if(H.mind) + if(H.mind in ticker.mode.red_deity_followers|ticker.mode.red_deity_prophets) + return 1 + return 0 + + +/proc/is_handofgod_blueprophet(A) + if(ishuman(A)) + var/mob/living/carbon/human/H = A + if(H.mind) + if(H.mind in ticker.mode.blue_deity_prophets) + return 1 + return 0 + + +/proc/is_handofgod_redprophet(A) + if(ishuman(A)) + var/mob/living/carbon/human/H = A + if(H.mind) + if(H.mind in ticker.mode.red_deity_prophets) + return 1 + return 0 + + + +/proc/is_handofgod_cultist(A) //any of them what so ever, blue, red, hot pink, whatever. + if(is_handofgod_redcultist(A)) + return 1 + if(is_handofgod_bluecultist(A)) + return 1 + return 0 + + +/proc/is_handofgod_prophet(A) //any of them what so ever, blue, red, hot pink, whatever + if(ishuman(A)) + var/mob/living/carbon/human/H = A + if(H.mind) + if(H.mind in ticker.mode.blue_deity_prophets|ticker.mode.red_deity_prophets) + return 1 + return 0 + + +/mob/camera/god/proc/is_handofgod_myprophet(A) + if(!ishuman(A)) + return 0 + var/mob/living/carbon/human/H = A + if(!H.mind) + return 0 + if(side == "red") + if(H.mind in ticker.mode.red_deity_prophets) + return 1 + else if(side == "blue") + if(H.mind in ticker.mode.blue_deity_prophets) + return 1 + + +/mob/camera/god/proc/is_handofgod_myfollowers(mob/A) + if(!ishuman(A)) + return 0 + var/mob/living/carbon/human/H = A + if(!H.mind) + return 0 + if(side == "red") + if(H.mind in ticker.mode.red_deity_prophets|ticker.mode.red_deity_followers) + return 1 + else if(side == "blue") + if(H.mind in ticker.mode.blue_deity_prophets|ticker.mode.blue_deity_followers) + return 1 + +////////////////////// +//Roundend Reporting// +////////////////////// + + +/datum/game_mode/hand_of_god/declare_completion() + if(red_deities.len) + var/text = "
    The red cult:" + for(var/datum/mind/red_god in red_deities) + var/godwin = 1 + + text += "
    [red_god.key] was the red deity, [red_god.name] (" + if(red_god.current) + if(red_god.current.stat == DEAD) + text += "died" + else + text += "survived" + else + text += "ceased existing" + text += ")" + if(red_deity_prophets.len) + for(var/datum/mind/red_prophet in red_deity_prophets) + text += "
    The red prophet was [red_prophet.name] ([red_prophet.key])" + else + text += "
    the red prophet was killed for their beliefs." + + text += "
    Red follower count: [red_deity_followers.len]" + text += "
    Red followers: " + for(var/datum/mind/player in red_deity_followers) + text += "[player.name] ([player.key]), " + + var/objectives = "" + if(red_god.objectives.len) + var/count = 1 + for(var/datum/objective/O in red_god.objectives) + if(O.check_completion()) + objectives += "
    Objective #[count]: [O.explanation_text] Success!" + feedback_add_details("god_objective","[O.type]|SUCCESS") + else + objectives += "
    Objective #[count]: [O.explanation_text] Fail." + feedback_add_details("god_objective","[O.type]|FAIL") + godwin = 0 + count++ + + text += objectives + + if(godwin) + text += "
    The red cult and deity were successful!" + feedback_add_details("god_success","SUCCESS") + else + text += "
    The red cult and deity have failed!" + feedback_add_details("god_success","FAIL") + + text += "
    " + + world << text + + if(blue_deities.len) + var/text = "
    The blue cult:" + for(var/datum/mind/blue_god in blue_deities) + var/godwin = 1 + + text += "
    [blue_god.key] was the blue deity, [blue_god.name] (" + if(blue_god.current) + if(blue_god.current.stat == DEAD) + text += "died" + else + text += "survived" + else + text += "ceased existing" + text += ")" + if(blue_deity_prophets.len) + for(var/datum/mind/blue_prophet in blue_deity_prophets) + text += "
    The blue prophet was [blue_prophet.name] ([blue_prophet.key])" + else + text += "
    the blue prophet was killed for their beliefs." + + text += "
    Blue follower count: [blue_deity_followers.len]" + text += "
    Blue followers: " + for(var/datum/mind/player in blue_deity_followers) + text += "[player.name] ([player.key])" + + var/objectives = "" + if(blue_god.objectives.len) + var/count = 1 + for(var/datum/objective/O in blue_god.objectives) + if(O.check_completion()) + objectives += "
    Objective #[count]: [O.explanation_text] Success!" + feedback_add_details("god_objective","[O.type]|SUCCESS") + else + objectives += "
    Objective #[count]: [O.explanation_text] Fail." + feedback_add_details("god_objective","[O.type]|FAIL") + godwin = 0 + count++ + + text += objectives + + if(godwin) + text += "
    The blue cult and deity were successful!" + feedback_add_details("god_success","SUCCESS") + else + text += "
    The blue cult and deity have failed!" + feedback_add_details("god_success","FAIL") + + text += "
    " + + world << text + + ..() + return 1 + + +/datum/game_mode/proc/update_hog_icons_added(datum/mind/hog_mind,side) + var/hud_key + var/rank = 0 + if(side == "red") + hud_key = ANTAG_HUD_HOG_RED + if(is_handofgod_redprophet(hog_mind.current)) + rank = 1 + + else if(side == "blue") + hud_key = ANTAG_HUD_HOG_BLUE + if(is_handofgod_blueprophet(hog_mind.current)) + rank = 1 + + if(is_handofgod_god(hog_mind.current)) + rank = 2 + + if(hud_key) + var/datum/atom_hud/antag/hog_hud = huds[hud_key] + hog_hud.join_hud(hog_mind.current) + set_antag_hud(hog_mind.current, "hog-[side]-[rank]") + + +/datum/game_mode/proc/update_hog_icons_removed(datum/mind/hog_mind,side) + var/hud_key + if(side == "red") + hud_key = ANTAG_HUD_HOG_RED + else if(side == "blue") + hud_key = ANTAG_HUD_HOG_BLUE + + if(hud_key) + var/datum/atom_hud/antag/hog_hud = huds[hud_key] + hog_hud.leave_hud(hog_mind.current) + set_antag_hud(hog_mind.current,null) diff --git a/code/game/gamemodes/handofgod/actions.dm b/code/game/gamemodes/handofgod/actions.dm new file mode 100644 index 0000000000..766a2522fd --- /dev/null +++ b/code/game/gamemodes/handofgod/actions.dm @@ -0,0 +1,28 @@ +/* Prophet's innate godspeak */ +/datum/action/innate/godspeak + name = "Godspeak" + button_icon_state = "godspeak" + check_flags = AB_CHECK_CONSCIOUS + var/mob/camera/god/god = null + +/datum/action/innate/godspeak/IsAvailable() + if(..()) + if(god) + return 1 + return 0 + +/datum/action/innate/godspeak/Activate() + var/msg = input(owner,"Speak to your god","Godspeak","") as null|text + if(!msg) + return + var/rendered = "Prophet [owner]: [msg]" + god << rendered + owner << rendered + for(var/mob/M in mob_list) + if(isobserver(M)) + var/link = FOLLOW_LINK(M, owner) + M << "[link] [rendered]" + +/datum/action/innate/godspeak/Destroy() + god = null + return ..() diff --git a/code/game/gamemodes/handofgod/god.dm b/code/game/gamemodes/handofgod/god.dm new file mode 100644 index 0000000000..5a23873605 --- /dev/null +++ b/code/game/gamemodes/handofgod/god.dm @@ -0,0 +1,290 @@ + +/mob/camera/god + name = "deity" //Auto changes to the player's deity name/random name + real_name = "deity" + icon = 'icons/mob/mob.dmi' + icon_state = "marker" + invisibility = 60 + see_in_dark = 0 + see_invisible = 55 + sight = SEE_TURFS | SEE_MOBS | SEE_OBJS | SEE_SELF + languages_spoken = ALL + languages_understood = ALL + hud_possible = list(ANTAG_HUD) + mouse_opacity = 0 //can't be clicked + + var/faith = 100 //For initial prophet appointing/stupid purchase + var/max_faith = 100 + var/side = "neutral" //Red or Blue for the gamemode + var/obj/structure/divine/nexus/god_nexus = null //The source of the god's power in this realm, kill it and the god is kill + var/nexus_required = FALSE //If the god dies from losing it's nexus, defaults to off so that gods don't instantly die at roundstart + var/followers_required = 0 //Same as above + var/alive_followers = 0 + var/list/structures = list() + var/list/conduits = list() + var/prophets_sacrificed_in_name = 0 + var/image/ghostimage = null //For observer with darkness off visiblity + var/list/prophets = list() + var/datum/action/innate/godspeak/speak2god + +/mob/camera/god/New() + ..() + update_icons() + build_hog_construction_lists() + + //Force nexuses after 15 minutes in hand of god mode + if(ticker && ticker.mode && ticker.mode.name == "hand of god") + addtimer(src, "forceplacenexus", 9000, FALSE) + + +//Rebuilds the list based on the gamemode's lists +//As they are the most accurate each tick +/mob/camera/god/proc/get_my_followers() + switch(side) + if("red") + . = ticker.mode.red_deity_followers|ticker.mode.red_deity_prophets + if("blue") + . = ticker.mode.blue_deity_followers|ticker.mode.blue_deity_prophets + else + . = list() + + +/mob/camera/god/Destroy() + var/list/followers = get_my_followers() + for(var/datum/mind/F in followers) + if(F.current) + F.current << "Your god is DEAD!" + for(var/X in prophets) + speak2god.Remove(X) + ghost_darkness_images -= ghostimage + updateallghostimages() + return ..() + + + +/mob/camera/god/proc/forceplacenexus() + if(god_nexus) + return + + if(ability_cost(0,1,0)) + place_nexus() + + else + if(blobstart.len) //we're on invalid turf, try to pick from blobstart + loc = pick(blobstart) + place_nexus() //if blobstart fails, places on dense turf, but better than nothing + src << "You failed to place your nexus, and it has been placed for you!" + + +/mob/camera/god/update_icons() + icon_state = "[initial(icon_state)]-[side]" + + if(ghostimage) + ghost_darkness_images -= ghostimage + + ghostimage = image(src.icon,src,src.icon_state) + ghost_darkness_images |= ghostimage + updateallghostimages() + + +/mob/camera/god/Stat() + ..() + if(statpanel("Status")) + if(god_nexus) + stat("Nexus health: ", god_nexus.health) + stat("Followers: ", alive_followers) + stat("Faith: ", "[faith]/[max_faith]") + + +/mob/camera/god/Login() + ..() + sync_mind() + src << "You are a deity!" + src << "You are a deity and are worshipped by a cult! You are rather weak right now, but that will change as you gain more followers." + src << "You will need to place an anchor to this world, a Nexus, in two minutes. If you don't, one will be placed immediately below you." + src << "Your Follower count determines how many people believe in you and are a part of your cult." + src << "Your Nexus Integrity tells you the condition of your nexus. If your nexus is destroyed, you will die. Place your Nexus on a safe, isolated place, that is still accessible to your followers." + src << "Your Faith is used to interact with the world. This will regenerate on its own, and it goes faster when you have more followers and power pylons." + src << "The first thing you should do after placing your nexus is to appoint a prophet. Only prophets can hear you talk, unless you use an expensive power." + update_health_hud() + + +/mob/camera/god/update_health_hud() + if(god_nexus && hud_used && hud_used.healths) + hud_used.healths.maptext = "
    [god_nexus.health]
    " + + +/mob/camera/god/proc/add_faith(faith_amt) + if(faith_amt) + faith = round(Clamp(faith+faith_amt, 0, max_faith)) + if(hud_used && hud_used.deity_power_display) + hud_used.deity_power_display.maptext = "
    [faith]
    " + + + +/mob/camera/god/proc/place_nexus() + if(god_nexus || (z != 1)) + return 0 + + var/obj/structure/divine/nexus/N = new(get_turf(src)) + N.assign_deity(src) + god_nexus = N + nexus_required = TRUE + verbs -= /mob/camera/god/verb/constructnexus + //verbs += /mob/camera/god/verb/movenexus //Translocators have no sprite + update_health_hud() + + var/area/A = get_area(src) + if(A) + var/areaname = A.name + var/list/followers = get_my_followers() + for(var/datum/mind/F in followers) + if(F.current) + F.current << "Your god's nexus is in \the [areaname]" + + +/mob/camera/god/verb/freeturret() + set category = "Deity" + set name = "Free Turret (0)" + set desc = "Place a single turret, for 0 faith." + + if(!ability_cost(0,1,1)) + return + var/obj/structure/divine/defensepylon/DP = new(get_turf(src)) + DP.assign_deity(src) + verbs -= /mob/camera/god/verb/freeturret + + + +/mob/camera/god/proc/update_followers() + alive_followers = 0 + var/list/all_followers = get_my_followers() + for(var/datum/mind/F in all_followers) + if(F.current && F.current.stat != DEAD) + alive_followers++ + + if(hud_used && hud_used.deity_follower_display) + hud_used.deity_follower_display.maptext = "
    [alive_followers]
    " + + +/mob/camera/god/proc/check_death() + if(!alive_followers) + src << "You no longer have any followers. You shudder as you feel your existence cease..." + if(god_nexus && !qdeleted(god_nexus)) + god_nexus.visible_message("\The [src] suddenly disappears!") + qdel(god_nexus) + qdel(src) + + +/mob/camera/god/say(msg) + if(!msg) + return + if(client) + if(client.prefs.muted & MUTE_IC) + src << "You cannot send IC messages (muted)." + return + if(src.client.handle_spam_prevention(msg,MUTE_IC)) + return + if(stat) + return + + god_speak(msg) + + +/mob/camera/god/proc/god_speak(msg) + log_say("Hand of God: [capitalize(side)] God/[key_name(src)] : [msg]") + msg = trim(copytext(sanitize(msg), 1, MAX_MESSAGE_LEN)) + if(!msg) + return + + msg = say_quote(msg, get_spans()) + var/rendered = "Divine Telepathy, [name] [msg]
    " + src << rendered + + for(var/mob/M in mob_list) + if(is_handofgod_myfollowers(M)) + M << rendered + if(isobserver(M)) + var/link = FOLLOW_LINK(M, src) + M << "[link] [rendered]" + + +/mob/camera/god/emote(act,m_type = 1 ,msg = null) + return + + +/mob/camera/god/Move(NewLoc, Dir = 0) + loc = NewLoc + + + +/mob/camera/god/Topic(href, href_list) + if(href_list["create_structure"]) + if(!ability_cost(75,1,1)) + return + + var/obj/structure/divine/construct_type = text2path(href_list["create_structure"]) //it's a path but we need to initial() some vars + if(!construct_type) + return + + add_faith(-75) + var/obj/structure/divine/construction_holder/CH = new(get_turf(src)) + CH.assign_deity(src) + CH.setup_construction(construct_type) + CH.visible_message("[src] has created a transparent, unfinished [initial(construct_type.name)]. It can be finished by adding materials.") + src << "You may click a construction site to cancel it, but only faith is refunded." + structure_construction_ui(src) + return + + if(href_list["place_trap"]) + if(!ability_cost(20,1,1)) + return + + var/atom/trap_type = text2path(href_list["place_trap"]) + if(!trap_type) + return + + src << "You lay \a [initial(trap_type.name)]" + add_faith(-20) + new trap_type(get_turf(src)) + return + + ..() + + +/mob/camera/god/proc/structure_construction_ui(mob/camera/god/user) + var/dat = "" + for(var/t in global_handofgod_structuretypes) + if(global_handofgod_structuretypes[t]) + var/obj/structure/divine/apath = global_handofgod_structuretypes[t] + dat += "
    [capitalize(t)]

    " + var/imgstate = initial(apath.autocolours) ? "[initial(apath.icon_state)]-[side]" : "[initial(apath.icon_state)]" + var/icon/I = icon('icons/obj/hand_of_god_structures.dmi',imgstate) + var/img_component = lowertext(t) + //I hate byond, but atleast it autocaches these so it's only 1*number_of_structures worth of actual calls + user << browse_rsc(I,"hog_structure-[img_component].png") + dat += "
    " + dat += "Description: [initial(apath.desc)]
    " + dat += "
    Construct [capitalize(t)]


    " + + var/datum/browser/popup = new(src, "structures","Construct Structure",350,500) + popup.set_content(dat) + popup.open() + + +/mob/camera/god/proc/trap_construction_ui(mob/camera/god/user) + var/dat = "" + for(var/t in global_handofgod_traptypes) + if(global_handofgod_traptypes[t]) + var/obj/structure/divine/trap/T = global_handofgod_traptypes[t] + dat += "
    [capitalize(t)]

    " + var/icon/I = icon('icons/obj/hand_of_god_structures.dmi',"[initial(T.icon_state)]") + var/img_component = lowertext(t) + user << browse_rsc(I,"hog_trap-[img_component].png") + dat += "
    " + dat += "Description: [initial(T.desc)]
    " + dat += "
    Place [capitalize(t)]


    " + + var/datum/browser/popup = new(src, "traps", "Place Trap",350,500) + popup.set_content(dat) + popup.open() diff --git a/code/game/objects/items/religion.dm b/code/game/gamemodes/handofgod/items.dm similarity index 52% rename from code/game/objects/items/religion.dm rename to code/game/gamemodes/handofgod/items.dm index c351169993..f512c5c11c 100644 --- a/code/game/objects/items/religion.dm +++ b/code/game/gamemodes/handofgod/items.dm @@ -7,19 +7,29 @@ var/moralecooldown = 0 var/moralewait = 600 + /obj/item/weapon/banner/attack_self(mob/living/carbon/human/user) if(moralecooldown + moralewait > world.time) return + var/side = "" + if(is_handofgod_redcultist(user)) + side = "red" + else if (is_handofgod_bluecultist(user)) + side = "blue" + + if(!side) + return user << "You increase the morale of your fellows!" moralecooldown = world.time for(var/mob/living/carbon/human/H in range(4,get_turf(src))) - H << "Your morale is increased by [user]'s banner!" - H.adjustBruteLoss(-15) - H.adjustFireLoss(-15) - H.AdjustStunned(-2) - H.AdjustWeakened(-2) - H.AdjustParalysis(-2) + if((side == "red") && is_handofgod_redcultist(H) || (side == "blue") && is_handofgod_bluecultist(H)) + H << "Your morale is increased by [user]'s banner!" + H.adjustBruteLoss(-15) + H.adjustFireLoss(-15) + H.AdjustStunned(-2) + H.AdjustWeakened(-2) + H.AdjustParalysis(-2) /obj/item/weapon/banner/red @@ -28,37 +38,57 @@ item_state = "banner-red" desc = "A banner with the logo of the red deity." +/obj/item/weapon/banner/red/examine(mob/user) + ..() + if(is_handofgod_redcultist(user)) + user << "A banner representing our might against the heretics. We may use it to increase the morale of our fellow members!" + else if(is_handofgod_bluecultist(user)) + user << "A heretical banner that should be destroyed posthaste." + + /obj/item/weapon/banner/blue name = "blue banner" icon_state = "banner-blue" item_state = "banner-blue" desc = "A banner with the logo of the blue deity" +/obj/item/weapon/banner/blue/examine(mob/user) + ..() + + if(is_handofgod_redcultist(user)) + user << "A heretical banner that should be destroyed posthaste." + else if(is_handofgod_bluecultist(user)) + user << "A banner representing our might against the heretics. We may use it to increase the morale of our fellow members!" + + /obj/item/weapon/storage/backpack/bannerpack name = "nanotrasen banner backpack" desc = "It's a backpack with lots of extra room. A banner with Nanotrasen's logo is attached, that can't be removed." max_combined_w_class = 27 //6 more then normal, for the tradeoff of declaring yourself an antag at all times. icon_state = "bannerpack" + /obj/item/weapon/storage/backpack/bannerpack/red name = "red banner backpack" desc = "It's a backpack with lots of extra room. A red banner is attached, that can't be removed." icon_state = "bannerpack-red" + /obj/item/weapon/storage/backpack/bannerpack/blue name = "blue banner backpack" desc = "It's a backpack with lots of extra room. A blue banner is attached, that can't be removed." icon_state = "bannerpack-blue" + + //this is all part of one item set /obj/item/clothing/suit/armor/plate/crusader name = "Crusader's Armour" - desc = "Armour that's comprised of metal and cloth." icon_state = "crusader" - w_class = WEIGHT_CLASS_BULKY + w_class = 4 //bulky slowdown = 2.0 //gotta pretend we're balanced. body_parts_covered = CHEST|GROIN|LEGS|FEET|ARMS|HANDS - armor = list(melee = 50, bullet = 50, laser = 50, energy = 40, bomb = 60, bio = 0, rad = 0, fire = 60, acid = 60) + armor = list(melee = 50, bullet = 50, laser = 50, energy = 40, bomb = 60, bio = 0, rad = 0) /obj/item/clothing/suit/armor/plate/crusader/red icon_state = "crusader-red" @@ -66,13 +96,20 @@ /obj/item/clothing/suit/armor/plate/crusader/blue icon_state = "crusader-blue" +/obj/item/clothing/suit/armor/plate/crusader/examine(mob/user) + ..() + if(!is_handofgod_cultist(user)) + user << "Armour that's comprised of metal and cloth." + else + user << "Armour that was used to protect from backstabs, gunshots, explosives, and lasers. The original wearers of this type of armour were trying to avoid being murdered. Since they're not around anymore, you're not sure if they were successful or not." + + /obj/item/clothing/head/helmet/plate/crusader name = "Crusader's Hood" - desc = "A brownish hood." icon_state = "crusader" - w_class = WEIGHT_CLASS_NORMAL + w_class = 3 //normal flags_inv = HIDEHAIR|HIDEEARS|HIDEFACE - armor = list(melee = 50, bullet = 50, laser = 50, energy = 40, bomb = 60, bio = 0, rad = 0, fire = 60, acid = 60) + armor = list(melee = 50, bullet = 50, laser = 50, energy = 40, bomb = 60, bio = 0, rad = 0) /obj/item/clothing/head/helmet/plate/crusader/blue icon_state = "crusader-blue" @@ -80,70 +117,143 @@ /obj/item/clothing/head/helmet/plate/crusader/red icon_state = "crusader-red" + +/obj/item/clothing/head/helmet/plate/crusader/examine(mob/user) + ..() + if(!is_handofgod_cultist(user)) + user << "A brownish hood." + else + user << "A hood that's very protective, despite being made of cloth. Due to the tendency of the wearer to be targeted for assassinations, being protected from being shot in the face was very important.." + + + //Prophet helmet /obj/item/clothing/head/helmet/plate/crusader/prophet name = "Prophet's Hat" - desc = "A religious-looking hat." alternate_worn_icon = 'icons/mob/large-worn-icons/64x64/head.dmi' flags = 0 - armor = list(melee = 60, bullet = 60, laser = 60, energy = 50, bomb = 70, bio = 50, rad = 50, fire = 60, acid = 60) //religion protects you from disease and radiation, honk. + armor = list(melee = 60, bullet = 60, laser = 60, energy = 50, bomb = 70, bio = 50, rad = 50) //religion protects you from disease and radiation, honk. worn_x_dimension = 64 worn_y_dimension = 64 + var/side = "neither" + +/obj/item/clothing/head/helmet/plate/crusader/prophet/equipped(mob/living/carbon/user, slot) + var/faithful = 0 + if(slot == slot_head) + switch(side) + if("blue") + faithful = is_handofgod_bluecultist(user) + if("red") + faithful = is_handofgod_redcultist(user) + else + faithful = 1 + if(!faithful) + user << "Your mind is assaulted by a vast power, furious at your desecration!" + user.emote("scream") + user.adjustFireLoss(10) + user.unEquip(src) + user.head = null + user.update_inv_head() + src.screen_loc = null + user.Weaken(1) /obj/item/clothing/head/helmet/plate/crusader/prophet/red icon_state = "prophet-red" + side = "red" + /obj/item/clothing/head/helmet/plate/crusader/prophet/blue icon_state = "prophet-blue" + side = "blue" + + +/obj/item/clothing/head/helmet/plate/crusader/prophet/examine(mob/user) + ..() + if(!is_handofgod_cultist(user)) + user << "A brownish, religious-looking hat." + else + user << "A hat bestowed upon a prophet of gods and demigods." + user << "This hat belongs to the [side] god." + + //Structure conversion staff /obj/item/weapon/godstaff name = "godstaff" - desc = "It's a stick..?" icon_state = "godstaff-red" - var/conversion_color = "#ffffff" + var/mob/camera/god/god = null var/staffcooldown = 0 var/staffwait = 30 +/obj/item/weapon/godstaff/examine(mob/user) + ..() + if(!is_handofgod_cultist(user)) + user << "It's a stick..?" + else + user << "A powerful staff capable of changing the allegiance of god/demigod structures." -/obj/item/weapon/godstaff/afterattack(atom/target, mob/user, proximity_flag, click_parameters) + + +/obj/item/weapon/godstaff/attack_self(mob/living/carbon/user) + if((god && !god.is_handofgod_myprophet(user)) || !god) + user << "YOU ARE NOT THE CHOSEN ONE!" + return + if(!(istype(user.head, /obj/item/clothing/head/helmet/plate/crusader/prophet))) + user << "Your connection to your diety isn't strong enough! You must wear your big hat!" + return if(staffcooldown + staffwait > world.time) return - user.visible_message("[user] chants deeply and waves their staff!") + user.visible_message("[user] chants deeply and waves their staff") if(do_after(user, 20,1,src)) - target.add_atom_colour(conversion_color, WASHABLE_COLOUR_PRIORITY) //wololo + for(var/obj/structure/divine/R in orange(3,user)) + user.say("Grant us true sight my god!") + if(istype(R, /obj/structure/divine/nexus)|| istype(R, /obj/structure/divine/trap)) + continue + R.visible_message("[R] suddenly appears!") + R.invisibility = 0 + R.alpha = initial(R.alpha) + R.density = initial(R.density) + R.activate() staffcooldown = world.time /obj/item/weapon/godstaff/red icon_state = "godstaff-red" - conversion_color = "#ff0000" /obj/item/weapon/godstaff/blue icon_state = "godstaff-blue" - conversion_color = "#0000ff" + + /obj/item/clothing/gloves/plate name = "Plate Gauntlets" icon_state = "crusader" - desc = "They're like gloves, but made of metal." siemens_coefficient = 0 cold_protection = HANDS min_cold_protection_temperature = GLOVES_MIN_TEMP_PROTECT heat_protection = HANDS max_heat_protection_temperature = GLOVES_MAX_TEMP_PROTECT + /obj/item/clothing/gloves/plate/red icon_state = "crusader-red" /obj/item/clothing/gloves/plate/blue icon_state = "crusader-blue" + +/obj/item/clothing/gloves/plate/examine(mob/user) + ..() + if(!is_handofgod_cultist(user)) + usr << "They're like gloves, but made of metal." + else + usr << "Protective gloves that are also blessed to protect from heat and shock." + + /obj/item/clothing/shoes/plate name = "Plate Boots" - desc = "Metal boots, they look heavy." icon_state = "crusader" - w_class = WEIGHT_CLASS_NORMAL - armor = list(melee = 50, bullet = 50, laser = 50, energy = 40, bomb = 60, bio = 0, rad = 0, fire = 60, acid = 60) //does this even do anything on boots? + w_class = 3 //normal + armor = list(melee = 50, bullet = 50, laser = 50, energy = 40, bomb = 60, bio = 0, rad = 0) //does this even do anything on boots? flags = NOSLIP cold_protection = FEET min_cold_protection_temperature = SHOES_MIN_TEMP_PROTECT @@ -158,6 +268,14 @@ icon_state = "crusader-blue" +/obj/item/clothing/shoes/plate/examine(mob/user) + ..() + if(!is_handofgod_cultist(user)) + usr << "Metal boots, they look heavy." + else + usr << "Heavy boots that are blessed for sure footing. You'll be safe from being taken down by the heresy that is the banana peel." + + /obj/item/weapon/storage/box/itemset/crusader name = "Crusader's Armour Set" //i can't into ck2 references desc = "This armour is said to be based on the armor of kings on another world thousands of years ago, who tended to assassinate, conspire, and plot against everyone who tried to do the same to them. Some things never change." @@ -183,7 +301,6 @@ new /obj/item/clothing/shoes/plate/red(src) -/obj/item/weapon/claymore/weak - desc = "This one is rusted." +/obj/item/weapon/claymore/hog force = 30 - armour_penetration = 15 + armour_penetration = 15 \ No newline at end of file diff --git a/code/game/gamemodes/handofgod/objectives.dm b/code/game/gamemodes/handofgod/objectives.dm new file mode 100644 index 0000000000..dc31d67f46 --- /dev/null +++ b/code/game/gamemodes/handofgod/objectives.dm @@ -0,0 +1,129 @@ + +/datum/objective/build + dangerrating = 15 + martyr_compatible = 1 + + +/datum/objective/build/proc/gen_amount_goal(lower, upper) + target_amount = rand(lower, upper) + explanation_text = "Build [target_amount] shrines." + return target_amount + + +/datum/objective/build/check_completion() + if(!owner || !owner.current) + return 0 + + var/shrines = 0 + if(is_handofgod_god(owner.current)) + var/mob/camera/god/G = owner.current + for(var/obj/structure/divine/shrine/S in G.structures) + S++ + + return (shrines >= target_amount) + + + +/datum/objective/deicide + dangerrating = 20 + martyr_compatible = 1 + +/datum/objective/deicide/check_completion() + if(target) + if(target.current) //Gods are deleted when they lose + return 0 + return 1 + + +/datum/objective/deicide/find_target() + if(!owner || !owner.current) + return + + if(is_handofgod_god(owner.current)) + var/mob/camera/god/G = owner.current + if(G.side == "red") + if(ticker.mode.blue_deities.len) + target = ticker.mode.blue_deities[1] + if(G.side == "blue") + if(ticker.mode.red_deities.len) + target = ticker.mode.red_deities[1] + if(!target) + return 0 + update_explanation_text() + +/datum/objective/deicide/update_explanation_text() + ..() + if(target && target.current) + explanation_text = "Phase [target.name], the false god, out of this plane of existence.." + else + explanation_text = "Free Objective" + + + +/datum/objective/follower_block + explanation_text = "Do not allow any followers of the false god to escape on the station's shuttle alive." + dangerrating = 25 + martyr_compatible = 1 + +/datum/objective/follower_block/check_completion() + var/side = "ABORT" + if(is_handofgod_redcultist(owner.current)) + side = "red" + else if(is_handofgod_bluecultist(owner.current)) + side = "blue" + if(side == "ABORT") + return 0 + + var/area/A = SSshuttle.emergency.areaInstance + + for(var/mob/living/player in player_list) + if(player.mind && player.stat != DEAD && get_area(player) == A) + if(side == "red") + if(is_handofgod_bluecultist(player)) + return 0 + else if(side == "blue") + if(is_handofgod_redcultist(player)) + return 0 + return 1 + + + +/datum/objective/escape_followers + dangerrating = 5 + + +/datum/objective/escape_followers/proc/gen_amount_goal(lower,upper) + target_amount = rand(lower,upper) + explanation_text = "Your will must surpass this station. Having [target_amount] followers escape on the shuttle or pods will allow that." + return target_amount + + +/datum/objective/escape_followers/check_completion() + var/escaped = 0 + if(is_handofgod_god(owner.current)) + var/mob/camera/god/G = owner.current + if(G.side == "red") + for(var/datum/mind/follower_mind in ticker.mode.red_deity_followers) + if(follower_mind.current && follower_mind.current.stat != DEAD) + if(follower_mind.current.onCentcom()) + escaped++ + + if(G.side == "blue") + for(var/datum/mind/follower_mind in ticker.mode.blue_deity_followers) + if(follower_mind.current && follower_mind.current.stat != DEAD) + if(follower_mind.current.onCentcom()) + escaped++ + + return (escaped >= target_amount) + + +/datum/objective/sacrifice_prophet + explanation_text = "A false prophet is preaching their god's faith on the station. Sacrificing them will show the mortals who the true god is." + dangerrating = 10 + + +/datum/objective/sacrifice_prophet/check_completion() + var/mob/camera/god/G = owner.current + if(istype(G)) + return G.prophets_sacrificed_in_name + return 0 diff --git a/code/game/gamemodes/handofgod/powers.dm b/code/game/gamemodes/handofgod/powers.dm new file mode 100644 index 0000000000..30b3365cfc --- /dev/null +++ b/code/game/gamemodes/handofgod/powers.dm @@ -0,0 +1,363 @@ +/mob/camera/god/proc/ability_cost(cost = 0,structures = 0, requires_conduit = 0, can_place_near_enemy_nexus = 0) + if(faith < cost) + src << "You lack the faith!" + return 0 + + if(structures) + if(!isturf(loc) || istype(loc, /turf/open/space)) + src << "Your structure would just float away, you need stable ground!" + return 0 + + var/turf/T = get_turf(src) + if(T) + if(T.density) + src << "There is something blocking your structure!" + return 0 + + for(var/atom/movable/AM in T) + if(AM == src) + continue + if(AM.density) + src << "There is something blocking your structure!" + return 0 + + if(requires_conduit) + //Organised this way as there can be multiple conduits, so it's more likely to be a conduit check. + var/valid = 0 + + for(var/obj/structure/divine/conduit/C in conduits) + if(get_dist(src, C) <= CONDUIT_RANGE) + valid++ + break + + if(!valid) + if(get_dist(src, god_nexus) <= CONDUIT_RANGE) + valid++ + + if(!valid) + src << "You must be near your Nexus or a Conduit to do this!" + return 0 + + if(!can_place_near_enemy_nexus) + var/datum/mind/enemy + switch(side) + if("red") + if(ticker.mode.blue_deities.len) + enemy = ticker.mode.blue_deities[1] + if("blue") + if(ticker.mode.red_deities.len) + enemy = ticker.mode.red_deities[1] + + if(enemy && is_handofgod_god(enemy.current)) + var/mob/camera/god/enemy_god = enemy.current + if(enemy_god.god_nexus && (get_dist(src,enemy_god.god_nexus) <= CONDUIT_RANGE*2)) + src << "You are too close to the other god's stronghold!" + return 0 + + return 1 + + +/mob/camera/god/verb/returntonexus() + set category = "Deity" + set name = "Goto Nexus" + set desc = "Teleports you to your next instantly." + + if(god_nexus) + Move(get_turf(god_nexus)) + else + src << "You don't even have a Nexus, construct one." + + +/mob/camera/god/verb/jumptofollower() + set category = "Deity" + set name = "Jump to Follower" + set desc = "Teleports you to one of your followers." + var/list/following = list() + if(side == "red") + following = ticker.mode.red_deity_followers|ticker.mode.red_deity_prophets + else if(side == "blue") + following = ticker.mode.blue_deity_followers|ticker.mode.blue_deity_prophets + else + src << "You are unaligned, and thus do not have followers" + return + + var/datum/mind/choice = input("Choose a follower","Jump to Follower") as null|anything in following + if(choice && choice.current) + Move(get_turf(choice.current)) + + +/mob/camera/god/verb/newprophet() + set category = "Deity" + set name = "Appoint Prophet (100)" + set desc = "Appoint one of your followers as your Prophet, who can hear your words" + + var/list/following = list() + + if(!ability_cost(100)) + return + if(side == "red") + var/datum/mind/old_proph = locate() in ticker.mode.red_deity_prophets + if(old_proph && old_proph.current && old_proph.current.stat != DEAD) + src << "You can only have one prophet alive at a time." + return + else + following = ticker.mode.red_deity_followers + else if(side == "blue") + var/datum/mind/old_proph = locate() in ticker.mode.blue_deity_prophets + if(old_proph && old_proph.current && old_proph.current.stat != DEAD) + src << "You can only have one prophet alive at a time." + return + else + following = ticker.mode.blue_deity_followers + + else + src << "You are unalligned, and thus do not have prophets" + return + + var/datum/mind/choice = input("Choose a follower to make into your prophet","Prophet Uplifting") as null|anything in following + if(choice && choice.current && choice.current.stat != DEAD) + src << "You choose [choice.current] as your prophet." + choice.make_Handofgod_prophet(side) + speak2god = new() + speak2god.god = src + speak2god.Grant(choice.current) + + //Prophet gear + var/mob/living/carbon/human/H = choice.current + var/popehat = null + var/popestick = null + var/success = "" + switch(side) + if("red") + popehat = /obj/item/clothing/head/helmet/plate/crusader/prophet/red + popestick = /obj/item/weapon/godstaff/red + if("blue") + popehat = /obj/item/clothing/head/helmet/plate/crusader/prophet/blue + popestick = /obj/item/weapon/godstaff/blue + + if(popehat) + var/obj/item/clothing/head/helmet/plate/crusader/prophet/P = new popehat() + + if(H.equip_to_slot_if_possible(P,slot_in_backpack,0,1,1)) + success = "It is in your backpack." + else + H.unEquip(H.head) + H.equip_to_slot_or_del(P,slot_head) + success = "It is on your head." + + if(success) + H << "A powerful hat has been bestowed upon you, you will need to wear it to utilize your staff fully." + H << "[success]" + + if(popestick) + var/obj/item/weapon/godstaff/G = new popestick() + G.god = src + if(!H.equip_to_slot_if_possible(G,slot_in_backpack,0,1,1)) + if(!H.put_in_hands(G)) + G.loc = get_turf(H) + success = "It is on the floor..." + else + success = "It is in your hands..." + else + success = "It is in your backpack..." + + if(success) + H << "A powerful staff has been bestowed upon you, you can use this to convert the false god's structures!" + H << "[success]" + //end prophet gear + + add_faith(-100) + + +/mob/camera/god/verb/talk(msg as text) + set category = "Deity" + set name = "Talk to Anyone (20)" + set desc = "Allows you to send a message to anyone, regardless of their faith." + if(!ability_cost(20)) + return + var/mob/choice = input("Choose who you wish to talk to", "Talk to ANYONE") as null|anything in mob_list + if(choice) + var/original = msg + msg = "You hear a voice coming from everywhere and nowhere... [msg]" + choice << msg + src << "You say the following to [choice], [original]" + add_faith(-20) + + +/mob/camera/god/verb/smite() + set category = "Deity" + set name = "Smite (40)" + set desc = "Hits anything under you with a moderate amount of damage." + + if(!ability_cost(40,0,1)) + return + if(!range(7,god_nexus)) + src << "You lack the strength to smite this far from your nexus." + return + + var/has_smitten = 0 //Hast thou been smitten, infidel? + for(var/mob/living/L in get_turf(src)) + L.adjustFireLoss(20) + L.adjustBruteLoss(20) + L << "You feel the wrath of [name]!" + has_smitten = 1 + if(has_smitten) + add_faith(-40) + + +/mob/camera/god/verb/disaster() + set category = "Deity" + set name = "Invoke Disaster (300)" //difficult to reach without lots of followers + set desc = "Tug at the fibres of reality itself and bend it to your whims!" + + if(!ability_cost(300,0,1)) + return + + var/event = pick(/datum/round_event/meteor_wave, /datum/round_event/communications_blackout, /datum/round_event/radiation_storm, /datum/round_event/carp_migration, + /datum/round_event/spacevine, /datum/round_event/vent_clog, /datum/round_event/wormholes) + if(event) + new event() + add_faith(-300) + + +/mob/camera/god/verb/constructnexus() + set category = "Deity" + set name = "Construct Nexus" + set desc = "Instantly creates your nexus, You can only do this once, make sure you're happy with it!" + + if(!ability_cost(0,1,0)) + return + + place_nexus() + + +/* //Transolocators have no sprite +/mob/camera/god/verb/movenexus() + set category = "Deity" + set name = "Relocate Nexus (50)" + set desc = "Instantly relocates your nexus to an existing translocator belonging to your faith, this destroys the translocator in the process" + + if(ability_cost(50,0,0) && god_nexus) + var/list/translocators = list() + var/list/used_keys = list() + for(var/obj/structure/divine/translocator/T in structures) + translocators["[T.name] ([get_area(T)])"] = T + + if(!translocators.len) + src << "You have no translocators!" + return + + var/picked = input(src,"Choose a translocator","Relocate Nexus") as null|anything in translocators + if(!picked || !translocators[picked]) + return + + var/obj/structure/divine/translocator/T = translocators[T] + var/turf/Tturf = get_turf(T) + god_nexus.loc = T + translocators[picked] = null + add_faith(-50) + qdel(T) +*/ + +/mob/camera/god/verb/construct_structures() + set category = "Deity" + set name = "Construct Structure (75)" + set desc = "Create the foundation of a divine object." + + if(!ability_cost(75,1,1)) + return + + structure_construction_ui(src) + + +/mob/camera/god/verb/construct_traps() + set category = "Deity" + set name = "Construct Trap (20)" + set desc = "Creates a ward or trap." + + if(!ability_cost(20,1,1)) + return + + trap_construction_ui(src) + + + +/mob/camera/god/verb/construct_items() + set category = "Deity" + set name = "Construct Items (20)" + set desc = "Construct some items for your followers" + + if(!ability_cost(20,1,1)) + return + + var/list/item_types = list("claymore sword" = /obj/item/weapon/claymore/hog) + if(side == "red") + item_types["red banner"] = /obj/item/weapon/banner/red + item_types["red bannerbackpack"] = /obj/item/weapon/storage/backpack/bannerpack/red + item_types["red armour"] = /obj/item/weapon/storage/box/itemset/crusader/red + + else if(side == "blue") + item_types["blue banner"] = /obj/item/weapon/banner/blue + item_types["blue bannerbackpack"] = /obj/item/weapon/storage/backpack/bannerpack/blue + item_types["blue armour"] = /obj/item/weapon/storage/box/itemset/crusader/blue + + + var/item = input("Choose what you wish to create.", "Divine Items") as null|anything in item_types + if(!item || !item_types[item] || !ability_cost(20,1,1)) + return + + src << "You produce \a [item]" + add_faith(-20) + + var/itemtype = item_types[item] + new itemtype (get_turf(src)) + + + +/mob/camera/god/verb/veil_structures() + set category = "Deity" + set name = "Veil Structures (20)" + set desc = "Hide your structures from sight and touch, but prevent yourself from using them." + + if(!ability_cost(20,1,1)) + return + + src << "You focus your powers and start dragging your influence into the spiritual plane." + for(var/mob/M in orange(3,src))//Yes I know this is terrible, but visible message doesnt work for this + M << "The air begins to shimmer..." + if(do_after(src, 30, 0, src)) + for(var/obj/structure/divine/R in orange(3,src)) + if(istype(R, /obj/structure/divine/nexus)|| istype(R, /obj/structure/divine/trap)||(src.side != R.side)) + continue + R.visible_message("[R] fades away.") + R.invisibility = 55 + R.alpha = 100 //To help ghosts distinguish hidden structures + R.density = 0 + R.deactivate() + src << "You hide your influence from view" + add_faith(-20) + + +/mob/camera/god/verb/reveal_structures() + set category = "Deity" + set name = "Reveal Structures (20)" + set desc = "Make your structures visible again and allow them to be used." + + if(!ability_cost(20,1,1)) + return + + src << "You focus your powers and start dragging your influence into the material plane." + for(var/mob/M in orange(3,src))//Yes I know this is terrible, but visible message doesnt work for this + M << "The air begins to shimmer..." + if(do_after(src, 40, 0, src)) + for(var/obj/structure/divine/R in orange(3,src)) + if(istype(R, /obj/structure/divine/nexus)|| istype(R, /obj/structure/divine/trap)||(src.side != R.side)) + continue + R.visible_message("[R] suddenly appears!") + R.invisibility = 0 + R.alpha = initial(R.alpha) + R.density = initial(R.density) + R.activate() + src << "You bring your influence into view" + add_faith(-20) + diff --git a/code/game/gamemodes/handofgod/structures.dm b/code/game/gamemodes/handofgod/structures.dm new file mode 100644 index 0000000000..2e85511d80 --- /dev/null +++ b/code/game/gamemodes/handofgod/structures.dm @@ -0,0 +1,658 @@ + +/proc/build_hog_construction_lists() + if(global_handofgod_traptypes.len && global_handofgod_structuretypes.len) + return + + var/list/types = subtypesof(/obj/structure/divine) - /obj/structure/divine/trap + for(var/T in types) + var/obj/structure/divine/D = T + if(initial(D.constructable)) + if(initial(D.trap)) + global_handofgod_traptypes[initial(D.name)] = T + else + global_handofgod_structuretypes[initial(D.name)] = T + +/obj/structure/divine + name = "divine construction site" + icon = 'icons/obj/hand_of_god_structures.dmi' + desc = "An unfinished divine building" + anchored = 1 + density = 1 + var/constructable = TRUE + var/trap = FALSE + var/metal_cost = 0 + var/glass_cost = 0 + var/lesser_gem_cost = 0 + var/greater_gem_cost = 0 + var/mob/camera/god/deity + var/side = "neutral" //"blue" or "red", also used for colouring structures when construction is started by a deity + var/health = 100 + var/maxhealth = 100 + var/deactivated = 0 //Structures being hidden can't be used. Mainly to prevent invisible defense pylons. + var/autocolours = TRUE //do we colour to our side? + +/obj/structure/divine/New() + ..() + +/obj/structure/divine/proc/deactivate() + deactivated = 1 + +/obj/structure/divine/proc/activate() + deactivated = 0 + + +/obj/structure/divine/proc/update_icons() + if(autocolours) + icon_state = "[initial(icon_state)]-[side]" + + +/obj/structure/divine/Destroy() + if(deity) + deity.structures -= src + return ..() + + + +/obj/structure/divine/attackby(obj/item/I, mob/user) + + //Structure conversion/capture + if(istype(I, /obj/item/weapon/godstaff)) + if(!is_handofgod_cultist(user)) + user << "You're not quite sure what the hell you're even doing." + return + var/obj/item/weapon/godstaff/G = I + if(G.god && deity != G.god) + assign_deity(G.god, alert_old_deity = TRUE) + visible_message("\The [src] has been captured by [user]!") + else + return ..() + +/obj/structure/divine/attacked_by(obj/item/I, mob/living/user) + ..() + take_damage(I.force, I.damtype, 1) + +/obj/structure/divine/proc/take_damage(damage, damage_type = BRUTE, sound_effect = 1) + switch(damage_type) + if(BRUTE) + if(sound_effect) + if(damage) + playsound(loc, 'sound/weapons/smash.ogg', 50, 1) + else + playsound(loc, 'sound/weapons/tap.ogg', 50, 1) + if(BURN) + if(sound_effect) + playsound(src.loc, 'sound/items/Welder.ogg', 100, 1) + else + return + health -= damage + if(!health) + visible_message("\The [src] was destroyed!") + qdel(src) + + +/obj/structure/divine/bullet_act(obj/item/projectile/P) + . = ..() + take_damage(P.damage, P.damage_type, 0) + + +/obj/structure/divine/attack_alien(mob/living/carbon/alien/humanoid/user) + user.changeNext_move(CLICK_CD_MELEE) + user.do_attack_animation(src) + add_hiddenprint(user) + visible_message("\The [user] slashes at [src]!") + playsound(src.loc, 'sound/weapons/slash.ogg', 100, 1) + take_damage(20, BRUTE, 0) + +/obj/machinery/attack_animal(mob/living/simple_animal/M) + M.changeNext_move(CLICK_CD_MELEE) + M.do_attack_animation(src) + if(M.melee_damage_upper > 0) + M.visible_message("[M.name] smashes against \the [src.name].",\ + "You smash against the [src.name].") + take_damage(rand(M.melee_damage_lower,M.melee_damage_upper), M.melee_damage_type, 1) + + +/obj/structure/divine/proc/assign_deity(mob/camera/god/new_deity, alert_old_deity = TRUE) + if(!new_deity) + return 0 + if(deity) + if(alert_old_deity) + deity << "Your [name] was captured by [new_deity]'s cult!" + deity.structures -= src + deity = new_deity + deity.structures |= src + side = deity.side + update_icons() + return 1 + + +/obj/structure/divine/construction_holder + alpha = 125 + constructable = FALSE + var/obj/structure/divine/construction_result = /obj/structure/divine //a path, but typed to /obj/structure/divine for initial() + + + +/obj/structure/divine/construction_holder/assign_deity(mob/camera/god/new_deity, alert_old_deity = TRUE) + if(..()) + color = side + + +/obj/structure/divine/construction_holder/attack_god(mob/camera/god/user) + if(user.side == side && construction_result) + user.add_faith(75) + visible_message("[user] has cancelled \the [initial(construction_result.name)]") + qdel(src) + + +/obj/structure/divine/construction_holder/proc/setup_construction(construct_type) + if(ispath(construct_type)) + construction_result = construct_type + name = "[initial(construction_result.name)] construction site " + icon_state = initial(construction_result.icon_state) + metal_cost = initial(construction_result.metal_cost) + glass_cost = initial(construction_result.glass_cost) + lesser_gem_cost = initial(construction_result.lesser_gem_cost) + greater_gem_cost = initial(construction_result.greater_gem_cost) + desc = "An unfinished [initial(construction_result.name)]." + + +/obj/structure/divine/construction_holder/attackby(obj/item/I, mob/user) + if(!I || !user) + return 0 + + if(istype(I, /obj/item/stack/sheet/metal)) + var/obj/item/stack/sheet/metal/M = I + if(metal_cost) + var/spend = min(metal_cost, M.amount) + user << "You add [spend] metal to \the [src]." + metal_cost = max(0, metal_cost - spend) + M.use(spend) + check_completion() + else + user << "\The [src] does not require any more metal!" + return + + if(istype(I, /obj/item/stack/sheet/glass)) + var/obj/item/stack/sheet/glass/G = I + if(glass_cost) + var/spend = min(glass_cost, G.amount) + user << "You add [spend] glass to \the [src]." + glass_cost = max(0, glass_cost - spend) + G.use(spend) + check_completion() + else + user << "\The [src] does not require any more glass!" + return + + if(istype(I, /obj/item/stack/sheet/lessergem)) + var/obj/item/stack/sheet/lessergem/LG = I + if(lesser_gem_cost) + var/spend = min(lesser_gem_cost, LG.amount) + user << "You add [spend] lesser gems to \the [src]." + lesser_gem_cost = max(0, lesser_gem_cost - spend) + LG.use(spend) + check_completion() + else + user << "\The [src] does not require any more lesser gems!" + return + + if(istype(I, /obj/item/stack/sheet/greatergem)) + var/obj/item/stack/sheet/greatergem/GG = I //GG! + if(greater_gem_cost) + var/spend = min(greater_gem_cost, GG.amount) + user << "You add [spend] greater gems to \the [src]." + greater_gem_cost = max(0, greater_gem_cost - spend) + GG.use(spend) + check_completion() + else + user << "\The [src] does not require any more greater gems!" + return + + else + return ..() + + +/obj/structure/divine/construction_holder/proc/check_completion() + if(!metal_cost && !glass_cost && !lesser_gem_cost && !greater_gem_cost) + visible_message("\The [initial(construction_result.name)] is complete!") + var/obj/structure/divine/D = new construction_result (get_turf(src)) + D.assign_deity(deity) + qdel(src) + + +/obj/structure/divine/construction_holder/examine(mob/user) + ..() + + if(metal_cost || glass_cost || lesser_gem_cost || greater_gem_cost) + user << "To finish construction it requires the following materials:" + if(metal_cost) + user << "[metal_cost] metal " + if(glass_cost) + user << "[glass_cost] glass " + if(lesser_gem_cost) + user << "[lesser_gem_cost] lesser gems " + if(greater_gem_cost) + user << "[greater_gem_cost] greater gems " + + +/obj/structure/divine/nexus + name = "nexus" + desc = "It anchors a deity to this world. It radiates an unusual aura. Cultists protect this at all costs. It looks well protected from explosive shock." + icon_state = "nexus" + health = 500 + maxhealth = 500 + constructable = FALSE + var/faith_regen_rate = 1 + var/list/powerpylons = list() + + +/obj/structure/divine/nexus/ex_act() + return + +/obj/structure/divine/nexus/take_damage(damage, damage_type = BRUTE, sound_effect = 1) + switch(damage_type) + if(BRUTE) + if(sound_effect) + if(damage) + playsound(loc, 'sound/weapons/smash.ogg', 50, 1) + else + playsound(loc, 'sound/weapons/tap.ogg', 50, 1) + if(BURN) + if(sound_effect) + playsound(src.loc, 'sound/items/Welder.ogg', 100, 1) + else + return + health -= damage + if(deity) + deity.update_health_hud() + if(!health) + if(!qdeleted(deity) && deity.nexus_required) + deity << "Your nexus was destroyed. You feel yourself fading..." + qdel(deity) + visible_message("\The [src] was destroyed!") + qdel(src) + + +/obj/structure/divine/nexus/New() + START_PROCESSING(SSobj, src) + + +/obj/structure/divine/nexus/process() + if(deity) + deity.update_followers() + deity.add_faith(faith_regen_rate + (powerpylons.len / 5) + (deity.alive_followers / 3)) + deity.max_faith = initial(deity.max_faith) + (deity.alive_followers*10) //10 followers = 100 max faith, so disaster() at around 20 followers + deity.check_death() + + +/obj/structure/divine/nexus/Destroy() + STOP_PROCESSING(SSobj, src) + return ..() + + +/obj/structure/divine/conduit + name = "conduit" + desc = "It allows a deity to extend their reach. Their powers are just as potent near a conduit as a nexus." + icon_state = "conduit" + health = 150 + maxhealth = 150 + metal_cost = 10 + glass_cost = 5 + + +/obj/structure/divine/conduit/assign_deity(mob/camera/god/new_deity, alert_old_deity = TRUE) + if(deity) + deity.conduits -= src + ..() + if(deity) + deity.conduits += src + +/obj/structure/divine/conduit/deactivate() + ..() + if(deity) + deity.conduits -= src + +/obj/structure/divine/conduit/activate() + ..() + if(deity) + deity.conduits += src + +/* //No good sprites, and not enough items to make it viable yet +/obj/structure/divine/forge + name = "forge" + desc = "A forge fueled by divine might, it allows the creation of sacred and powerful artifacts. It requires common materials to craft objects." + icon_state = "forge" + health = 250 + maxhealth = 250 + density = 0 + maxhealth = 250 + metal_cost = 40 +*/ + +/obj/structure/divine/convertaltar + name = "conversion altar" + desc = "An altar dedicated to a deity. Cultists can \"forcefully teach\" their non-aligned crewmembers to join their side and take up their deity." + icon_state = "convertaltar" + density = 0 + metal_cost = 10 + can_buckle = 1 + + +/obj/structure/divine/convertaltar/attack_hand(mob/living/user) + ..() + if(deactivated) + return + var/mob/living/carbon/human/H = locate() in get_turf(src) + if(!is_handofgod_cultist(user)) + user << "You try to use it, but unfortunately you don't know any rituals." + return + if(!H) + return + if(!H.mind) + user << "Only sentients may serve your deity." + return + if((side == "red" && is_handofgod_redcultist(user) && !is_handofgod_redcultist(H)) || (side == "blue" && is_handofgod_bluecultist(user) && !is_handofgod_bluecultist(H))) + user << "You invoke the conversion ritual." + ticker.mode.add_hog_follower(H.mind, side) + else + user << "You invoke the conversion ritual." + user << "But the altar ignores your words..." + + +/obj/structure/divine/sacrificealtar + name = "sacrificial altar" + desc = "An altar designed to perform blood sacrifice for a deity. The cultists performing the sacrifice will gain a powerful material to use in their forge. Sacrificing a prophet will yield even better results." + icon_state = "sacrificealtar" + density = 0 + metal_cost = 15 + can_buckle = 1 + + +/obj/structure/divine/sacrificealtar/attack_hand(mob/living/user) + ..() + if(deactivated) + return + var/mob/living/L = locate() in get_turf(src) + if(!is_handofgod_cultist(user)) + user << "You try to use it, but unfortunately you don't know any rituals." + return + if(!L) + return + if((side == "red" && is_handofgod_redcultist(user)) || (side == "blue" && is_handofgod_bluecultist(user))) + if((side == "red" && is_handofgod_redcultist(L)) || (side == "blue" && is_handofgod_bluecultist(L))) + user << "You cannot sacrifice a fellow cultist." + return + user << "You attempt to sacrifice [L] by invoking the sacrificial ritual." + sacrifice(L) + else + user << "You attempt to sacrifice [L] by invoking the sacrificial ritual." + user << "But the altar ignores your words..." + + +/obj/structure/divine/sacrificealtar/proc/sacrifice(mob/living/L) + if(!L) + L = locate() in get_turf(src) + if(L) + if(ismonkey(L)) + var/luck = rand(1,4) + if(luck > 3) + new /obj/item/stack/sheet/lessergem(get_turf(src)) + + else if(ishuman(L)) + var/mob/living/carbon/human/H = L + + //Sacrifice altars can't teamkill + if(side == "red" && is_handofgod_redcultist(H)) + return + else if(side == "blue" && is_handofgod_bluecultist(H)) + return + + if(is_handofgod_prophet(H)) + new /obj/item/stack/sheet/greatergem(get_turf(src)) + if(deity) + deity.prophets_sacrificed_in_name++ + else + new /obj/item/stack/sheet/lessergem(get_turf(src)) + + else if(isAI(L) || istype(L, /mob/living/carbon/alien/humanoid/royal/queen)) + new /obj/item/stack/sheet/greatergem(get_turf(src)) + else + new /obj/item/stack/sheet/lessergem(get_turf(src)) + L.gib() + + +/obj/structure/divine/healingfountain + name = "healing fountain" + desc = "A fountain containing the waters of life... or death, depending on where your allegiances lie." + icon_state = "fountain" + metal_cost = 10 + glass_cost = 5 + autocolours = FALSE + var/time_between_uses = 1800 + var/last_process = 0 + var/cult_only = TRUE + +/obj/structure/divine/healingfountain/anyone + desc = "A fountain containing the waters of life." + cult_only = FALSE + +/obj/structure/divine/healingfountain/attack_hand(mob/living/user) + if(deactivated) + return + if(last_process + time_between_uses > world.time) + user << "The fountain appears to be empty." + return + last_process = world.time + if(!is_handofgod_cultist(user) && cult_only) + user << "The water burns!" + user.reagents.add_reagent("hell_water",20) + else + user << "The water feels warm and soothing as you touch it. The fountain immediately dries up shortly afterwards." + user.reagents.add_reagent("godblood",20) + update_icons() + addtimer(src, "update_icons", time_between_uses) + + +/obj/structure/divine/healingfountain/update_icons() + if(last_process + time_between_uses > world.time) + icon_state = "fountain" + else + icon_state = "fountain-[side]" + + +/obj/structure/divine/powerpylon + name = "power pylon" + desc = "A pylon which increases the deity's rate it can influence the world." + icon_state = "powerpylon" + density = 1 + health = 30 + maxhealth = 30 + metal_cost = 5 + glass_cost = 15 + + +/obj/structure/divine/powerpylon/New() + ..() + if(deity && deity.god_nexus) + deity.god_nexus.powerpylons += src + + +/obj/structure/divine/powerpylon/Destroy() + if(deity && deity.god_nexus) + deity.god_nexus.powerpylons -= src + return ..() + + +/obj/structure/divine/powerpylon/deactivate() + ..() + if(deity) + deity.god_nexus.powerpylons -= src + +/obj/structure/divine/powerpylon/activate() + ..() + if(deity) + deity.god_nexus.powerpylons += src + +/obj/structure/divine/defensepylon + name = "defense pylon" + desc = "A pylon which is blessed to withstand many blows, and fire strong bolts at nonbelievers. A god can toggle it." + icon_state = "defensepylon" + health = 150 + maxhealth = 150 + metal_cost = 25 + glass_cost = 30 + var/obj/machinery/porta_turret/defensepylon_internal_turret/pylon_gun + + +/obj/structure/divine/defensepylon/New() + ..() + pylon_gun = new(src) + pylon_gun.base = src + pylon_gun.faction = list("[side] god") + + +/obj/structure/divine/defensepylon/Destroy() + qdel(pylon_gun) //just in case + return ..() + + +/obj/structure/divine/defensepylon/examine(mob/user) + ..() + user << "\The [src] looks [pylon_gun.on ? "on" : "off"]." + + +/obj/structure/divine/defensepylon/assign_deity(mob/camera/god/new_deity, alert_old_deity = TRUE) + if(..() && pylon_gun) + pylon_gun.faction = list("[side] god") + pylon_gun.side = side + +/obj/structure/divine/defensepylon/attack_god(mob/camera/god/user) + if(user.side == side) + if(deactivated) + user << "You need to reveal it first!" + return + pylon_gun.on = !pylon_gun.on + icon_state = (pylon_gun.on) ? "defensepylon-[side]" : "defensepylon" + +/obj/structure/divine/defensepylon/deactivate() + ..() + pylon_gun.on = 0 + icon_state = (pylon_gun.on) ? "defensepylon-[side]" : "defensepylon" + +/obj/structure/divine/defensepylon/activate() + ..() + pylon_gun.on = 1 + icon_state = (pylon_gun.on) ? "defensepylon-[side]" : "defensepylon" + +//This sits inside the defensepylon, to avoid copypasta +/obj/machinery/porta_turret/defensepylon_internal_turret + name = "defense pylon" + desc = "A plyon which is blessed to withstand many blows, and fire strong bolts at nonbelievers." + icon = 'icons/obj/hand_of_god_structures.dmi' + installation = null + always_up = 1 + use_power = 0 + has_cover = 0 + health = 200 + projectile = /obj/item/projectile/beam/pylon_bolt + eprojectile = /obj/item/projectile/beam/pylon_bolt + shot_sound = 'sound/weapons/emitter2.ogg' + eshot_sound = 'sound/weapons/emitter2.ogg' + base_icon_state = "defensepylon" + active_state = "" + off_state = "" + faction = null + emp_vunerable = 0 + var/side = "neutral" + +/obj/machinery/porta_turret/defensepylon_internal_turret/setup() + return + +/obj/machinery/porta_turret/defensepylon_internal_turret/shootAt(atom/movable/target) + var/obj/item/projectile/A = ..() + if(A) + A.color = side + +/obj/machinery/porta_turret/defensepylon_internal_turret/assess_perp(mob/living/carbon/human/perp) + if(perp.handcuffed) //dishonourable to kill somebody who might be converted. + return 0 + var/badtarget = 0 + switch(side) + if("blue") + badtarget = is_handofgod_bluecultist(perp) + if("red") + badtarget = is_handofgod_redcultist(perp) + else + badtarget = 1 + if(badtarget) + return 0 + return 10 + + + +/obj/item/projectile/beam/pylon_bolt + name = "divine bolt" + icon_state = "greyscale_bolt" + damage = 15 + + +/obj/structure/divine/shrine + name = "shrine" + desc = "A shrine dedicated to a deity." + icon_state = "shrine" + metal_cost = 15 + glass_cost = 15 + + +/obj/structure/divine/shrine/assign_deity(mob/camera/god/new_deity, alert_old_deity = TRUE) + if(..()) + name = "shrine to [new_deity.name]" + desc = "A shrine dedicated to [new_deity.name]" + + + + +//Functional, but need sprites +/* +/obj/structure/divine/translocator + name = "translocator" + desc = "A powerful structure, made with a greater gem. It allows a deity to move their nexus to where this stands" + icon_state = "translocator" + health = 100 + maxhealth = 100 + metal_cost = 20 + glass_cost = 20 + greater_gem_cost = 1 + + +/obj/structure/divine/lazarusaltar + name = "lazarus altar" + desc = "A very powerful altar capable of bringing life back to the recently deceased, made with a greater gem. It can revive anyone and will heal virtually all wounds, but they are but a shell of their former self." + icon_state = "lazarusaltar" + density = 0 + health = 100 + maxhealth = 100 + metal_cost = 20 + greater_gem_cost = 1 + + +/obj/structure/divine/lazarusaltar/attack_hand(mob/living/user) + var/mob/living/L = locate() in get_turf(src) + if(!is_handofgod_culstist(user)) + user << "You try to use it, but unfortunately you don't know any rituals." + return + if(!L) + return + + if((side == "red" && is_handofgod_redcultist(user))) || (side == "blue" && is_handofgod_bluecultist(user))) + user << "You attempt to revive [L] by invoking the rebirth ritual." + L.revive() + L.adjustCloneLoss(50) + L.adjustStaminaLoss(100) + else + user << "You attempt to revive [L] by invoking the rebirth ritual." + user << "But the altar ignores your words..." +*/ + + diff --git a/code/game/objects/structures/traps.dm b/code/game/gamemodes/handofgod/traps.dm similarity index 76% rename from code/game/objects/structures/traps.dm rename to code/game/gamemodes/handofgod/traps.dm index b6c9e0ba7b..b39475f0ce 100644 --- a/code/game/objects/structures/traps.dm +++ b/code/game/gamemodes/handofgod/traps.dm @@ -1,14 +1,19 @@ -/obj/structure/trap + +/obj/structure/divine/trap name = "IT'S A TARP" desc = "stepping on me is a guaranteed bad day" - icon = 'icons/obj/hand_of_god_structures.dmi' icon_state = "trap" density = 0 alpha = 30 //initially quite hidden when not "recharging" + health = 20 + maxhealth = 20 + trap = TRUE + autocolours = FALSE var/last_trigger = 0 var/time_between_triggers = 600 //takes a minute to recharge -/obj/structure/trap/Crossed(atom/movable/AM) + +/obj/structure/divine/trap/Crossed(atom/movable/AM) if(last_trigger + time_between_triggers > world.time) return alpha = initial(alpha) @@ -19,7 +24,8 @@ trap_effect(L) animate(src, alpha = initial(alpha), time = time_between_triggers) -/obj/structure/trap/examine(mob/user) + +/obj/structure/divine/trap/examine(mob/user) ..() if(!isliving(user)) //bad ghosts, stop trying to powergame from beyond the grave return @@ -28,15 +34,17 @@ animate(src, alpha = initial(alpha), time = time_between_triggers) -/obj/structure/trap/proc/trap_effect(mob/living/L) +/obj/structure/divine/trap/proc/trap_effect(mob/living/L) return -/obj/structure/trap/stun + +/obj/structure/divine/trap/stun name = "shock trap" desc = "A trap that will shock you, it will burn your flesh and render you immobile, You'd better avoid it." icon_state = "trap-shock" -/obj/structure/trap/stun/trap_effect(mob/living/L) + +/obj/structure/divine/trap/stun/trap_effect(mob/living/L) L << "You are paralyzed from the intense shock!" L.Weaken(5) var/turf/Lturf = get_turf(L) @@ -44,13 +52,13 @@ new /obj/effect/particle_effect/sparks(Lturf) -/obj/structure/trap/fire +/obj/structure/divine/trap/fire name = "flame trap" desc = "A trap that will set you ablaze. You'd better avoid it." icon_state = "trap-fire" -/obj/structure/trap/fire/trap_effect(mob/living/L) +/obj/structure/divine/trap/fire/trap_effect(mob/living/L) L << "Spontaneous combustion!" L.Weaken(1) var/turf/Lturf = get_turf(L) @@ -58,26 +66,26 @@ new /obj/effect/particle_effect/sparks(Lturf) -/obj/structure/trap/chill +/obj/structure/divine/trap/chill name = "frost trap" desc = "A trap that will chill you to the bone. You'd better avoid it." icon_state = "trap-frost" -/obj/structure/trap/chill/trap_effect(mob/living/L) +/obj/structure/divine/trap/chill/trap_effect(mob/living/L) L << "You're frozen solid!" L.Weaken(1) L.bodytemperature -= 300 new /obj/effect/particle_effect/sparks(get_turf(L)) -/obj/structure/trap/damage +/obj/structure/divine/trap/damage name = "earth trap" desc = "A trap that will summon a small earthquake, just for you. You'd better avoid it." icon_state = "trap-earth" -/obj/structure/trap/damage/trap_effect(mob/living/L) +/obj/structure/divine/trap/damage/trap_effect(mob/living/L) L << "The ground quakes beneath your feet!" L.Weaken(5) L.adjustBruteLoss(35) @@ -86,14 +94,16 @@ new /obj/structure/flora/rock(Lturf) -/obj/structure/trap/ward +/obj/structure/divine/trap/ward name = "divine ward" desc = "A divine barrier, It looks like you could destroy it with enough effort, or wait for it to dissipate..." icon_state = "ward" + health = 150 + maxhealth = 150 density = 1 time_between_triggers = 1200 //Exists for 2 minutes -/obj/structure/trap/ward/New() +/obj/structure/divine/trap/ward/New() ..() QDEL_IN(src, time_between_triggers) diff --git a/code/game/gamemodes/intercept_report.dm b/code/game/gamemodes/intercept_report.dm index 9f220ca4f5..7037866a6f 100644 --- a/code/game/gamemodes/intercept_report.dm +++ b/code/game/gamemodes/intercept_report.dm @@ -1,57 +1,281 @@ -//Intercept reports are sent to the station every round to warn the crew of possible threats. They consist of five possibilites, one of which is always correct. - /datum/intercept_text var/text + /* + var/prob_correct_person_lower = 20 + var/prob_correct_person_higher = 80 + var/prob_correct_job_lower = 20 + var/prob_correct_job_higher = 80 + var/prob_correct_prints_lower = 20 + var/prob_correct_print_higher = 80 + var/prob_correct_objective_lower = 20 + var/prob_correct_objective_higher = 80 + */ + var/list/org_names_1 = list( + "Blighted", + "Defiled", + "Unholy", + "Murderous", + "Ugly", + "French", + "Blue", + "Farmer" + ) + var/list/org_names_2 = list( + "Reapers", + "Swarm", + "Rogues", + "Menace", + "Jeff Worshippers", + "Drunks", + "Strikers", + "Creed" + ) + var/list/anomalies = list( + "Huge electrical storm", + "Photon emitter", + "Meson generator", + "Blue swirly thing" + ) + var/list/SWF_names = list( + "Grand Wizard", + "His Most Unholy Master", + "The Most Angry", + "Bighands", + "Tall Hat", + "Deadly Sandals" + ) + var/list/changeling_names = list( + "Odo", + "The Thing", + "Booga", + "The Goatee of Wrath", + "Tam Lin", + "Species 3157", + "Small Prick" + ) -/datum/intercept_text/proc/build(mode_type) - text = "
    " + +/datum/intercept_text/proc/build(mode_type, datum/mind/correct_person) switch(mode_type) - if("blob") - text += "A CMP scientist by the name of [pick("Griff", "Pasteur", "Chamberland", "Buist", "Rivers", "Stanley")] boasted about his corporation's \"finest creation\" - a macrobiological \ - virus capable of self-reproduction and hellbent on consuming whatever it touches. He went on to query Cybersun for permission to utilize the virus in biochemical warfare, to which \ - CMP subsequently gained. Be vigilant for any large organisms rapidly spreading across the station, as they are classified as a level 5 biohazard and critically dangerous. Note that \ - this organism seems to be weak to extreme heat; concentrated fire (such as welding tools and lasers) will be effective against it." - if("changeling") - text += "The Gorlex Marauders have announced the successful raid and destruction of Central Command containment ship #S-[rand(1111, 9999)]. This ship housed only a single prisoner - \ - codenamed \"Thing\", and it was highly adaptive and extremely dangerous. We have reason to believe that the Thing has allied with the Syndicate, and you should note that likelihood \ - of the Thing being sent to a station in this sector is highly likely. It may be in the guise of any crew member. Trust nobody - suspect everybody. Do not announce this to the crew, \ - as paranoia may spread and inhibit workplace efficiency." - if("clock_cult") - text += "We have lost contact with multiple stations in your sector. They have gone dark and do not respond to all transmissions, although they appear intact and the crew's life \ - signs remain uninterrupted. Those that have managed to send a transmission or have had some of their crew escape tell tales of a machine cult creating sapient automatons and seeking \ - to brainwash the crew to summon their god, Ratvar. If evidence of this cult is dicovered aboard your station, extreme caution and extreme vigilance must be taken going forward, and \ - all resources should be devoted to stopping this cult. Note that holy water seems to weaken and eventually return the minds of cultists that ingest it, and mindshield implants will \ - prevent conversion altogether." - if("cult") - text += "Some stations in your sector have reported evidence of blood sacrifice and strange magic. Ties to the Wizards' Federation have been proven not to exist, and many employees \ - have disappeared; even Central Command employees light-years away have felt strange presences and at times hysterical compulsions. Interrogations point towards this being the work of \ - the cult of Nar-Sie. If evidence of this cult is discovered aboard your station, extreme caution and extreme vigilance must be taken going forward, and all resources should be \ - devoted to stopping this cult. Note that holy water seems to weaken and eventually return the minds of cultists that ingest it, and mindshield implants will prevent conversion \ - altogether." - if("extended") - text += "The transmission mostly failed to mention your sector. It is possible that there is nothing in the Syndicate that could threaten your station during this shift." - if("gang") - text += "Cybersun Industries representatives claimed that they, in joint research with the Tiger Cooperative, have made a major breakthrough in brainwashing technology, and have \ - made the nanobots that apply the \"conversion\" very small and capable of fitting into usually innocent objects - namely, pens. While they refused to outsource this technology for \ - months to come due to its flaws, they reported some as missing but passed it off to carelessness. At Central Command, we don't like mysteries, and we have reason to believe that this \ - technology was stolen for anti-Nanotrasen use. Be on the lookout for territory claims and unusually violent crew behavior, applying mindshield implants as necessary." - if("malf") - text += "A large ionospheric anomaly recently passed through your sector. Although physically undetectable, ionospherics tend to have an extreme effect on telecommunications equipment \ - as well as artificial intelligence units. Closely observe the behavior of artificial intelligence, and treat any machine malfunctions as purposeful. If necessary, termination of the \ - artificial intelligence is advised; assuming that it activates the station's self-destruct, your pinpointer has been configured to constantly track it, wherever it may be." - if("nuclear") - text += "One of Central Command's trading routes was recently disrupted by a raid carried out by the Gorlex Marauders. They seemed to only be after one ship - a highly-sensitive \ - transport containing a nuclear fission explosive, although it is useless without the proper code and authorization disk. While the code was likely found in minutes, the only disk that \ - can activate this explosive is on your station. Ensure that it is protected at all times, and remain alert for possible intruders." if("revolution") - text += "Employee unrest has spiked in recent weeks, with several attempted mutinies on heads of staff. Some crew have been observed using flashbulb devices to blind their colleagues, \ - who then follow their orders without question and work towards dethroning departmental leaders. Watch for behavior such as this with caution. If the crew attempts a mutiny, you and \ - your heads of staff are fully authorized to execute them using lethal weaponry - they will be later cloned and interrogated at Central Command." - if("traitor") - text += "Although more specific threats are commonplace, you should always remain vigilant for Syndicate agents aboard your station. Syndicate communications have implied that many \ - Nanotrasen employees are Syndicate agents with hidden memories that may be activated at a moment's notice, so it's possible that these agents might not even know their positions." + src.text = "" + src.build_rev(correct_person) + return src.text + if("gang") + src.text = "" + src.build_gang(correct_person) + return src.text + if("cult") + src.text = "" + src.build_cult(correct_person) + return src.text if("wizard") - text += "A dangerous Wizards' Federation individual by the name of [pick(wizard_first)] [pick(wizard_second)] has recently escaped confinement from an unlisted prison facility. This \ - man is a dangerous mutant with the ability to alter himself and the world around him by what he and his leaders believe to be magic. If this man attempts an attack on your station, \ - his execution is highly encouraged, as is the preservation of his body for later study." - return text + src.text = "" + src.build_wizard(correct_person) + return src.text + if("nuke") + src.text = "" + src.build_nuke(correct_person) + return src.text + if("traitor") + src.text = "" + src.build_traitor(correct_person) + return src.text + if("changeling","traitorchan") + src.text = "" + src.build_changeling(correct_person) + return src.text + else + return null + +// NOTE: Commentted out was the code which showed the chance of someone being an antag. If you want to re-add it, just uncomment the code. + +/* +/datum/intercept_text/proc/pick_mob() + var/list/dudes = list() + for(var/mob/living/carbon/human/man in player_list) + if (!man.mind) continue + if (man.mind.assigned_role=="MODE") continue + dudes += man + if(dudes.len==0) + return null + return pick(dudes) + + +/datum/intercept_text/proc/pick_fingerprints() + var/mob/living/carbon/human/dude = src.pick_mob() + //if (!dude) return pick_fingerprints() //who coded that is totally crasy or just a traitor. -- rastaf0 + if(dude) + return num2text(md5(dude.dna.uni_identity)) + else + return num2text(md5(num2text(rand(1,10000)))) +*/ + +/datum/intercept_text/proc/build_traitor(datum/mind/correct_person) + var/name_1 = pick(src.org_names_1) + var/name_2 = pick(src.org_names_2) + + /* + var/fingerprints + var/traitor_name + var/prob_right_dude = rand(prob_correct_person_lower, prob_correct_person_higher) + if(prob(prob_right_dude) && ticker.mode == "traitor") + if(correct_person:assigned_role=="MODE") + traitor_name = pick_mob() + else + traitor_name = correct_person:current + else if(prob(prob_right_dude)) + traitor_name = pick_mob() + else + fingerprints = pick_fingerprints() + */ + + src.text += "

    The [name_1] [name_2] implied an undercover operative was acting on their behalf on the station currently." + src.text += "It would be in your best interests to suspect everybody, as these undercover operatives could have implants which trigger them to have their memories removed until they are needed. He, or she, could even be a high ranking officer." + src.text += "

    " + /* + src.text += "After some investigation, we " + if(traitor_name) + src.text += "are [prob_right_dude]% sure that [traitor_name] may have been involved, and should be closely observed." + src.text += "
    Note: This group are known to be untrustworthy, so do not act on this information without proper discourse." + else + src.text += "discovered the following set of fingerprints ([fingerprints]) on sensitive materials, and their owner should be closely observed." + src.text += "However, these could also belong to a current Centcom employee, so do not act on this without reason." + */ + + +/datum/intercept_text/proc/build_cult(datum/mind/correct_person) + var/name_1 = pick(src.org_names_1) + var/name_2 = pick(src.org_names_2) + /* + var/traitor_name + var/traitor_job + var/prob_right_dude = rand(prob_correct_person_lower, prob_correct_person_higher) + var/prob_right_job = rand(prob_correct_job_lower, prob_correct_job_higher) + if(prob(prob_right_job) && is_convertable_to_cult(correct_person)) + if (correct_person) + if(correct_person:assigned_role=="MODE") + traitor_job = pick(get_all_jobs()) + else + traitor_job = correct_person:assigned_role + else + var/list/job_tmp = get_all_jobs() + job_tmp.Remove("Captain", "Chaplain", "AI", "Cyborg", "Security Officer", "Detective", "Head Of Security", "Head of Personnel", "Chief Engineer", "Research Director", "Chief Medical Officer") + traitor_job = pick(job_tmp) + if(prob(prob_right_dude) && ticker.mode == "cult") + if(correct_person:assigned_role=="MODE") + traitor_name = src.pick_mob() + else + traitor_name = correct_person:current + else + traitor_name = pick_mob() + */ + src.text += "

    It has been brought to our attention that the [name_1] [name_2] have stumbled upon some dark secrets. They apparently want to spread the dangerous knowledge onto as many stations as they can." + src.text += "Watch out for the following: praying to an unfamilar god, preaching the word of \[REDACTED\], sacrifices, magical dark power, living constructs of evil and a portal to the dimension of the underworld." + src.text += "

    " + /* + src.text += "Based on our intelligence, we are [prob_right_job]% sure that if true, someone doing the job of [traitor_job] on your station may have been converted " + src.text += "and instilled with the idea of the flimsiness of the real world, seeking to destroy it. " + if(prob(prob_right_dude)) + src.text += "
    In addition, we are [prob_right_dude]% sure that [traitor_name] may have also some in to contact with this " + src.text += "organisation." + src.text += "
    However, if this information is acted on without substantial evidence, those responsible will face severe repercussions." + */ + + +/datum/intercept_text/proc/build_rev(datum/mind/correct_person) + var/name_1 = pick(src.org_names_1) + var/name_2 = pick(src.org_names_2) + /* + var/traitor_name + var/traitor_job + var/prob_right_dude = rand(prob_correct_person_lower, prob_correct_person_higher) + var/prob_right_job = rand(prob_correct_job_lower, prob_correct_job_higher) + if(prob(prob_right_job) && is_convertable_to_rev(correct_person)) + if (correct_person) + if(correct_person.assigned_role=="MODE") + traitor_job = pick(get_all_jobs()) + else + traitor_job = correct_person.assigned_role + else + var/list/job_tmp = get_all_jobs() + job_tmp-=nonhuman_positions + job_tmp-=command_positions + job_tmp.Remove("Security Officer", "Detective", "Warden", "MODE") + traitor_job = pick(job_tmp) + if(prob(prob_right_dude) && ticker.mode.config_tag == "revolution") + if(correct_person.assigned_role=="MODE") + traitor_name = src.pick_mob() + else + traitor_name = correct_person.current + else + traitor_name = src.pick_mob() + */ + src.text += "

    It has been brought to our attention that the [name_1] [name_2] are attempting to stir unrest on one of our stations in your sector." + src.text += "Watch out for suspicious activity among the crew and make sure that all heads of staff report in periodically." + src.text += "

    " + /* + src.text += "Based on our intelligence, we are [prob_right_job]% sure that if true, someone doing the job of [traitor_job] on your station may have been brainwashed " + src.text += "at a recent conference, and their department should be closely monitored for signs of mutiny. " + if(prob(prob_right_dude)) + src.text += "
    In addition, we are [prob_right_dude]% sure that [traitor_name] may have also some in to contact with this " + src.text += "organisation." + src.text += "
    However, if this information is acted on without substantial evidence, those responsible will face severe repercussions." + */ + +/datum/intercept_text/proc/build_gang(datum/mind/correct_person) + src.text += "

    We have reports of criminal activity in close proximity to our operations within your sector." + src.text += "Ensure law and order is maintained on the station and be on the lookout for territorial aggression within the crew." + src.text += "In the event of a full-scale criminal takeover threat, sensitive research items are to be secured and the station evacuated ASAP." + src.text += "

    " + +/datum/intercept_text/proc/build_wizard(datum/mind/correct_person) + var/SWF_desc = pick(SWF_names) + + src.text += "

    The evil Space Wizards Federation have recently broke their most feared wizard, known only as \"[SWF_desc]\" out of space jail. " + src.text += "He is on the run, last spotted in a system near your present location. If anybody suspicious is located aboard, please " + src.text += "approach with EXTREME caution. Centcom also recommends that it would be wise to not inform the crew of this, due to their fearful nature." + src.text += "Known attributes include: Brown sandals, a large blue hat, a voluptous white beard, and an inclination to cast spells." + src.text += "

    " + +/datum/intercept_text/proc/build_nuke(datum/mind/correct_person) + src.text += "

    Centcom recently received a report of a plot to destroy one of our stations in your area. We believe the Nuclear Authentication Disc " + src.text += "that is standard issue aboard your vessel may be a target. We recommend removal of this object, and it's storage in a safe " + src.text += "environment. As this may cause panic among the crew, all efforts should be made to keep this information a secret from all but " + src.text += "the most trusted crew-members." + src.text += "

    " + +/datum/intercept_text/proc/build_changeling(datum/mind/correct_person) + var/cname = pick(src.changeling_names) + var/orgname1 = pick(src.org_names_1) + var/orgname2 = pick(src.org_names_2) + /* + var/changeling_name + var/changeling_job + var/prob_right_dude = rand(prob_correct_person_lower, prob_correct_person_higher) + var/prob_right_job = rand(prob_correct_job_lower, prob_correct_job_higher) + if(prob(prob_right_job)) + if(correct_person) + if(correct_person:assigned_role=="MODE") + changeling_job = pick(get_all_jobs()) + else + changeling_job = correct_person:assigned_role + else + changeling_job = pick(get_all_jobs()) + if(prob(prob_right_dude) && ticker.mode == "changeling") + if(correct_person:assigned_role=="MODE") + changeling_name = correct_person:current + else + changeling_name = src.pick_mob() + else + changeling_name = src.pick_mob() + */ + + src.text += "

    We have received a report that a dangerous alien lifeform known only as \"[cname]\" may have infiltrated your crew. " + /* + src.text += "Our intelligence suggests a [prob_right_job]% chance that a [changeling_job] on board your station has been replaced by the alien. " + src.text += "Additionally, the report indicates a [prob_right_dude]% chance that [changeling_name] may have been in contact with the lifeform at a recent social gathering. " + */ + src.text += "These lifeforms are associated with the [orgname1] [orgname2] and may be attempting to acquire sensitive materials on their behalf. " + src.text += "Please take care not to alarm the crew, as [cname] may take advantage of a panic situation. Remember, they can be anybody, suspect everybody!" + src.text += "

    " diff --git a/code/game/gamemodes/malfunction/Malf_Modules.dm b/code/game/gamemodes/malfunction/Malf_Modules.dm index 98b98336aa..0653daa9a8 100644 --- a/code/game/gamemodes/malfunction/Malf_Modules.dm +++ b/code/game/gamemodes/malfunction/Malf_Modules.dm @@ -9,10 +9,10 @@ var/power_type -/datum/AI_Module/large +/datum/AI_Module/large/ uses = 1 -/datum/AI_Module/small +/datum/AI_Module/small/ uses = 5 /datum/AI_Module/large/nuke_station @@ -35,13 +35,15 @@ src << "Nuclear device armed." priority_announce("Hostile runtimes detected in all station systems, please deactivate your AI to prevent possible damage to its morality core.", "Anomaly Alert", 'sound/AI/aimalf.ogg') set_security_level("delta") + SSshuttle.emergencyNoEscape = 1 nuking = 1 var/obj/machinery/doomsday_device/DOOM = new /obj/machinery/doomsday_device(src) doomsday_device = DOOM - doomsday_device.start() verbs -= /mob/living/silicon/ai/proc/nuke_station - for(var/obj/item/weapon/pinpointer/P in pinpointer_list) - P.switch_mode_to(TRACK_MALF_AI) //Pinpointers start tracking the AI wherever it goes + for(var/obj/item/weapon/pinpointer/point in pinpointer_list) + for(var/mob/living/silicon/ai/A in ai_list) + if((A.stat != DEAD) && A.nuking) + point.the_disk = A //The pinpointer now tracks the AI core /obj/machinery/doomsday_device icon = 'icons/obj/machines/nuke_terminal.dmi' @@ -51,57 +53,29 @@ anchored = 1 density = 1 verb_exclaim = "blares" - var/timing = FALSE - var/default_timer = 4500 - var/obj/effect/countdown/doomsday/countdown - var/detonation_timer - var/list/milestones = list() - -/obj/machinery/doomsday_device/New() - ..() - countdown = new(src) - -/obj/machinery/doomsday_device/Destroy() - if(countdown) - qdel(countdown) - countdown = null - STOP_PROCESSING(SSfastprocess, src) - SSshuttle.clearHostileEnvironment(src) - for(var/A in ai_list) - var/mob/living/silicon/ai/Mlf = A - if(Mlf.doomsday_device == src) - Mlf.doomsday_device = null - . = ..() - -/obj/machinery/doomsday_device/proc/start() - detonation_timer = world.time + default_timer - timing = TRUE - countdown.start() - START_PROCESSING(SSfastprocess, src) - SSshuttle.registerHostileEnvironment(src) - -/obj/machinery/doomsday_device/proc/seconds_remaining() - . = max(0, (round((detonation_timer - world.time) / 10))) + var/timing = 1 + var/timer = 450 /obj/machinery/doomsday_device/process() var/turf/T = get_turf(src) if(!T || T.z != ZLEVEL_STATION) minor_announce("DOOMSDAY DEVICE OUT OF STATION RANGE, ABORTING", "ERROR ER0RR $R0RRO$!R41.%%!!(%$^^__+ @#F0E4", 1) - SSshuttle.clearHostileEnvironment(src) + SSshuttle.emergencyNoEscape = 0 + if(SSshuttle.emergency.mode == SHUTTLE_STRANDED) + SSshuttle.emergency.mode = SHUTTLE_DOCKED + SSshuttle.emergency.timer = world.time + priority_announce("Hostile environment resolved. You have 3 minutes to board the Emergency Shuttle.", null, 'sound/AI/shuttledock.ogg', "Priority") qdel(src) if(!timing) - STOP_PROCESSING(SSfastprocess, src) return - var/sec_left = seconds_remaining() - if(sec_left <= 0) - timing = FALSE + if(timer <= 0) + timing = 0 detonate(T.z) qdel(src) else - var/key = num2text(sec_left) - if(!(sec_left % 60) && !(key in milestones)) - milestones[key] = TRUE - var/message = "[key] SECONDS UNTIL DOOMSDAY DEVICE ACTIVATION!" + timer-- + if(!(timer%60)) + var/message = "[timer] SECONDS UNTIL DOOMSDAY DEVICE ACTIVATION!" minor_announce(message, "ERROR ER0RR $R0RRO$!R41.%%!!(%$^^__+ @#F0E4", 1) /obj/machinery/doomsday_device/proc/detonate(z_level = 1) @@ -110,7 +84,7 @@ sleep(100) for(var/mob/living/L in mob_list) var/turf/T = get_turf(L) - if(!T || T.z != z_level) + if(T.z != z_level) continue if(issilicon(L)) continue @@ -119,6 +93,23 @@ world << "The AI cleansed the station of life with the doomsday device!" ticker.force_ending = 1 +/datum/AI_Module/large/fireproof_core + module_name = "Core Upgrade" + mod_pick_name = "coreup" + description = "An upgrade to improve core resistance, making it immune to fire and heat. This effect is permanent." + cost = 50 + one_time = 1 + + power_type = /mob/living/silicon/ai/proc/fireproof_core + +/mob/living/silicon/ai/proc/fireproof_core() + set category = "Malfunction" + set name = "Fireproof Core" + for(var/mob/living/silicon/ai/ai in player_list) + ai.fire_res_on_core = 1 + src.verbs -= /mob/living/silicon/ai/proc/fireproof_core + src << "Core fireproofed." + /datum/AI_Module/large/upgrade_turrets module_name = "AI Turret Upgrade" mod_pick_name = "turret" @@ -138,9 +129,9 @@ src.verbs -= /mob/living/silicon/ai/proc/upgrade_turrets //Upgrade AI turrets around the world for(var/obj/machinery/porta_turret/ai/turret in machines) - turret.obj_integrity += 30 - turret.lethal_projectile = /obj/item/projectile/beam/laser/heavylaser //Once you see it, you will know what it means to FEAR. - turret.lethal_projectile_sound = 'sound/weapons/lasercannonfire.ogg' + turret.health += 30 + turret.eprojectile = /obj/item/projectile/beam/laser/heavylaser //Once you see it, you will know what it means to FEAR. + turret.eshot_sound = 'sound/weapons/lasercannonfire.ogg' src << "Turrets upgraded." /datum/AI_Module/large/lockdown @@ -162,7 +153,7 @@ for(var/obj/machinery/door/D in airlocks) if(D.z != ZLEVEL_STATION) continue - addtimer(D, "hostile_lockdown", 0, TIMER_NORMAL, src) + addtimer(D, "hostile_lockdown", 0, FALSE, src) addtimer(D, "disable_lockdown", 900) var/obj/machinery/computer/communications/C = locate() in machines @@ -172,7 +163,7 @@ verbs -= /mob/living/silicon/ai/proc/lockdown minor_announce("Hostile runtime detected in door controllers. Isolation Lockdown protocols are now in effect. Please remain calm.","Network Alert:", 1) src << "Lockdown Initiated. Network reset in 90 seconds." - addtimer(GLOBAL_PROC, "minor_announce", 900, TIMER_NORMAL, + addtimer(GLOBAL_PROC, "minor_announce", 900, FALSE, "Automatic system reboot complete. Have a secure day.", "Network reset:") @@ -291,11 +282,11 @@ for(var/datum/AI_Module/small/overload_machine/overload in current_modules) if(overload.uses > 0) overload.uses -- - audible_message("You hear a loud electrical buzzing sound coming from [M]!") + audible_message("You hear a loud electrical buzzing sound!") src << "Overloading machine circuitry..." spawn(50) if(M) - explosion(get_turf(M), 0,2,3,0) + explosion(get_turf(M), 0,1,1,0) qdel(M) else src << "Out of uses." else src << "That's not a machine." @@ -377,7 +368,7 @@ for(var/n=1;n<4,n++) var/fail var/turf/T = turfs[n] - if(!isfloorturf(T)) + if(!istype(T, /turf/open/floor)) fail = 1 var/datum/camerachunk/C = cameranet.getCameraChunk(T.x, T.y, T.z) if(!C.visibleTurfs[T]) diff --git a/code/game/gamemodes/meteor/meteor.dm b/code/game/gamemodes/meteor/meteor.dm index 9fd121a7ba..a2cd00dee6 100644 --- a/code/game/gamemodes/meteor/meteor.dm +++ b/code/game/gamemodes/meteor/meteor.dm @@ -6,18 +6,20 @@ var/rampupdelta = 5 required_players = 0 - announce_span = "danger" - announce_text = "A major meteor shower is bombarding the station! The crew needs to evacuate or survive the onslaught." + +/datum/game_mode/meteor/announce() + world << "The current game mode is - Meteor!" + world << "The space station has been stuck in a major meteor shower. You must escape from the station or at least live." /datum/game_mode/meteor/process() - if(nometeors || meteordelay > world.time - round_start_time) + if(nometeors || meteordelay > world.time - round_start_time) return - + var/list/wavetype = meteors_normal var/meteorminutes = (world.time - round_start_time - meteordelay) / 10 / 60 - - + + if (prob(meteorminutes)) wavetype = meteors_threatening diff --git a/code/game/gamemodes/meteor/meteors.dm b/code/game/gamemodes/meteor/meteors.dm index 681ce9c903..954bfe63aa 100644 --- a/code/game/gamemodes/meteor/meteors.dm +++ b/code/game/gamemodes/meteor/meteors.dm @@ -1,4 +1,3 @@ -#define DEFAULT_METEOR_LIFETIME 1800 /var/const/meteor_wave_delay = 625 //minimum wait between waves in tenths of seconds //set to at least 100 unless you want evarr ruining every round @@ -29,7 +28,7 @@ var/turf/pickedstart var/turf/pickedgoal var/max_i = 10//number of tries to spawn meteor. - while(!isspaceturf(pickedstart)) + while (!istype(pickedstart, /turf/open/space)) var/startSide = pick(cardinal) pickedstart = spaceDebrisStartLoc(startSide, 1) pickedgoal = spaceDebrisFinishLoc(startSide, 1) @@ -42,42 +41,45 @@ M.z_original = 1 spawn(0) walk_towards(M, M.dest, 1) + return /proc/spaceDebrisStartLoc(startSide, Z) var/starty var/startx switch(startSide) - if(NORTH) + if(1) //NORTH starty = world.maxy-(TRANSITIONEDGE+1) startx = rand((TRANSITIONEDGE+1), world.maxx-(TRANSITIONEDGE+1)) - if(EAST) + if(2) //EAST starty = rand((TRANSITIONEDGE+1),world.maxy-(TRANSITIONEDGE+1)) startx = world.maxx-(TRANSITIONEDGE+1) - if(SOUTH) + if(3) //SOUTH starty = (TRANSITIONEDGE+1) startx = rand((TRANSITIONEDGE+1), world.maxx-(TRANSITIONEDGE+1)) - if(WEST) + if(4) //WEST starty = rand((TRANSITIONEDGE+1), world.maxy-(TRANSITIONEDGE+1)) startx = (TRANSITIONEDGE+1) - . = locate(startx, starty, Z) + var/turf/T = locate(startx, starty, Z) + return T /proc/spaceDebrisFinishLoc(startSide, Z) var/endy var/endx switch(startSide) - if(NORTH) - endy = (TRANSITIONEDGE+1) - endx = rand((TRANSITIONEDGE+1), world.maxx-(TRANSITIONEDGE+1)) - if(EAST) - endy = rand((TRANSITIONEDGE+1), world.maxy-(TRANSITIONEDGE+1)) - endx = (TRANSITIONEDGE+1) - if(SOUTH) - endy = world.maxy-(TRANSITIONEDGE+1) - endx = rand((TRANSITIONEDGE+1), world.maxx-(TRANSITIONEDGE+1)) - if(WEST) - endy = rand((TRANSITIONEDGE+1),world.maxy-(TRANSITIONEDGE+1)) - endx = world.maxx-(TRANSITIONEDGE+1) - . = locate(endx, endy, Z) + if(1) //NORTH + endy = TRANSITIONEDGE + endx = rand(TRANSITIONEDGE, world.maxx-TRANSITIONEDGE) + if(2) //EAST + endy = rand(TRANSITIONEDGE, world.maxy-TRANSITIONEDGE) + endx = TRANSITIONEDGE + if(3) //SOUTH + endy = world.maxy-TRANSITIONEDGE + endx = rand(TRANSITIONEDGE, world.maxx-TRANSITIONEDGE) + if(4) //WEST + endy = rand(TRANSITIONEDGE,world.maxy-TRANSITIONEDGE) + endx = world.maxx-TRANSITIONEDGE + var/turf/T = locate(endx, endy, Z) + return T /////////////////////// //The meteor effect @@ -97,8 +99,6 @@ var/heavy = 0 var/meteorsound = 'sound/effects/meteorimpact.ogg' var/z_original = 1 - var/threat = 0 // used for determining which meteors are most interesting - var/lifetime = DEFAULT_METEOR_LIFETIME var/list/meteordrop = list(/obj/item/weapon/ore/iron) var/dropamt = 2 @@ -114,21 +114,18 @@ var/turf/T = get_turf(loc) ram_turf(T) - if(prob(10) && !isspaceturf(T))//randomly takes a 'hit' from ramming + if(prob(10) && !istype(T, /turf/open/space))//randomly takes a 'hit' from ramming get_hit() + return . + /obj/effect/meteor/Destroy() - meteor_list -= src walk(src,0) //this cancels the walk_towards() proc - . = ..() + return ..() /obj/effect/meteor/New() ..() - meteor_list += src - if(SSaugury) - SSaugury.register_doom(src, threat) SpinAnimation() - QDEL_IN(src, lifetime) /obj/effect/meteor/Bump(atom/A) if(A) @@ -140,7 +137,7 @@ //first bust whatever is in the turf for(var/atom/A in T) if(A != src) - if(isliving(A)) + if(istype(A, /mob/living)) A.visible_message("[src] slams into [A].", "[src] slams into you!.") A.ex_act(hitpwr) @@ -156,38 +153,28 @@ hits-- if(hits <= 0) make_debris() - meteor_effect() + meteor_effect(heavy) qdel(src) /obj/effect/meteor/ex_act() return -#define METEOR_MEDAL "Your Life Before Your Eyes" - -/obj/effect/meteor/examine(mob/user) - if(!admin_spawned && isliving(user)) - UnlockMedal(METEOR_MEDAL,user.client) - ..() - -#undef METEOR_MEDAL - /obj/effect/meteor/attackby(obj/item/weapon/W, mob/user, params) if(istype(W, /obj/item/weapon/pickaxe)) make_debris() qdel(src) + return else - . = ..() + return ..() /obj/effect/meteor/proc/make_debris() for(var/throws = dropamt, throws > 0, throws--) var/thing_to_spawn = pick(meteordrop) new thing_to_spawn(get_turf(src)) -/obj/effect/meteor/proc/meteor_effect() - if(heavy) +/obj/effect/meteor/proc/meteor_effect(sound=1) + if(sound) for(var/mob/M in player_list) - if((M.orbiting) && (SSaugury.watchers[M])) - continue var/turf/T = get_turf(M) if(!T || T.z != src.z) continue @@ -208,16 +195,14 @@ hitpwr = 3 meteorsound = 'sound/weapons/Gunshot_smg.ogg' meteordrop = list(/obj/item/weapon/ore/glass) - threat = 1 //Medium-sized /obj/effect/meteor/medium name = "meteor" dropamt = 3 - threat = 5 /obj/effect/meteor/medium/meteor_effect() - ..() + ..(heavy) explosion(src.loc, 0, 1, 2, 3, 0) //Large-sized @@ -227,10 +212,9 @@ hits = 6 heavy = 1 dropamt = 4 - threat = 10 /obj/effect/meteor/big/meteor_effect() - ..() + ..(heavy) explosion(src.loc, 1, 2, 3, 4, 0) //Flaming meteor @@ -241,10 +225,9 @@ heavy = 1 meteorsound = 'sound/effects/bamf.ogg' meteordrop = list(/obj/item/weapon/ore/plasma) - threat = 20 /obj/effect/meteor/flaming/meteor_effect() - ..() + ..(heavy) explosion(src.loc, 1, 2, 3, 4, 0, 0, 5) //Radiation meteor @@ -253,11 +236,10 @@ icon_state = "glowing" heavy = 1 meteordrop = list(/obj/item/weapon/ore/uranium) - threat = 15 /obj/effect/meteor/irradiated/meteor_effect() - ..() + ..(heavy) explosion(src.loc, 0, 0, 4, 3, 0) new /obj/effect/decal/cleanable/greenglow(get_turf(src)) radiation_pulse(get_turf(src), 2, 5, 50, 1) @@ -272,18 +254,15 @@ meteorsound = 'sound/effects/blobattack.ogg' meteordrop = list(/obj/item/weapon/reagent_containers/food/snacks/meat/slab/human, /obj/item/weapon/reagent_containers/food/snacks/meat/slab/human/mutant, /obj/item/organ/heart, /obj/item/organ/lungs, /obj/item/organ/tongue, /obj/item/organ/appendix/) var/meteorgibs = /obj/effect/gibspawner/generic - threat = 2 /obj/effect/meteor/meaty/New() - for(var/path in meteordrop) - if(path == /obj/item/weapon/reagent_containers/food/snacks/meat/slab/human/mutant) - meteordrop -= path - meteordrop += pick(subtypesof(path)) + for(var/obj/item/weapon/reagent_containers/food/snacks/meat/slab/human/mutant/M in meteordrop) + meteordrop -= M + meteordrop += pick(subtypesof(M)) - for(var/path in meteordrop) - if(path == /obj/item/organ/tongue) - meteordrop -= path - meteordrop += pick(typesof(path)) + for(var/obj/item/organ/tongue/T in meteordrop) + meteordrop -= T + meteordrop += pick(typesof(T)) ..() /obj/effect/meteor/meaty/make_debris() @@ -292,8 +271,8 @@ /obj/effect/meteor/meaty/ram_turf(turf/T) - if(!isspaceturf(T)) - new /obj/effect/decal/cleanable/blood(T) + if(!istype(T, /turf/open/space)) + new /obj/effect/decal/cleanable/blood (T) /obj/effect/meteor/meaty/Bump(atom/A) A.ex_act(hitpwr) @@ -310,28 +289,22 @@ ..() /obj/effect/meteor/meaty/xeno/ram_turf(turf/T) - if(!isspaceturf(T)) - new /obj/effect/decal/cleanable/xenoblood(T) + if(!istype(T, /turf/open/space)) + new /obj/effect/decal/cleanable/xenoblood (T) //Station buster Tunguska /obj/effect/meteor/tunguska name = "tunguska meteor" icon_state = "flaming" - desc = "Your life briefly passes before your eyes the moment you lay them on this monstrosity." + desc = "Your life briefly passes before your eyes the moment you lay them on this monstruosity" hits = 30 hitpwr = 1 heavy = 1 meteorsound = 'sound/effects/bamf.ogg' meteordrop = list(/obj/item/weapon/ore/plasma) - threat = 50 - -/obj/effect/meteor/tunguska/Move() - . = ..() - if(.) - PoolOrNew(/obj/effect/overlay/temp/revenant, get_turf(src)) /obj/effect/meteor/tunguska/meteor_effect() - ..() + ..(heavy) explosion(src.loc, 5, 10, 15, 20, 0) /obj/effect/meteor/tunguska/Bump() @@ -354,10 +327,8 @@ heavy = 1 dropamt = 1 meteordrop = list(/obj/item/clothing/head/hardhat/pumpkinhead, /obj/item/weapon/reagent_containers/food/snacks/grown/pumpkin) - threat = 100 /obj/effect/meteor/pumpkin/New() ..() meteorsound = pick('sound/hallucinations/im_here1.ogg','sound/hallucinations/im_here2.ogg') ////////////////////////// -#undef DEFAULT_METEOR_LIFETIME diff --git a/code/game/gamemodes/miniantags/abduction/abduction.dm b/code/game/gamemodes/miniantags/abduction/abduction.dm index 69cd0042d2..c5f3dfa2a7 100644 --- a/code/game/gamemodes/miniantags/abduction/abduction.dm +++ b/code/game/gamemodes/miniantags/abduction/abduction.dm @@ -9,7 +9,6 @@ antag_flag = ROLE_ABDUCTOR recommended_enemies = 2 required_players = 15 - maximum_players = 50 var/max_teams = 4 abductor_teams = 1 var/list/datum/mind/scientists = list() @@ -20,7 +19,7 @@ /datum/game_mode/abduction/announce() world << "The current game mode is - Abduction!" - world << "There are alien abductors sent to [station_name()] to perform nefarious experiments!" + world << "There are alien abductors sent to [world.name] to perform nefarious experiments!" world << "Abductors - kidnap the crew and replace their organs with experimental ones." world << "Crew - don't get abducted and stop the abductors." @@ -188,7 +187,11 @@ abductor.current << "With the help of your teammate, kidnap and experiment on station crew members!" abductor.current << "Use your stealth technology and equipment to incapacitate humans for your scientist to retrieve." - abductor.announce_objectives() + var/obj_count = 1 + for(var/datum/objective/objective in abductor.objectives) + abductor.current << "Objective #[obj_count]: [objective.explanation_text]" + obj_count++ + return /datum/game_mode/abduction/proc/greet_scientist(datum/mind/abductor,team_number) abductor.objectives += team_objectives[team_number] @@ -198,7 +201,11 @@ abductor.current << "With the help of your teammate, kidnap and experiment on station crew members!" abductor.current << "Use your tool and ship consoles to support the agent and retrieve human specimens." - abductor.announce_objectives() + var/obj_count = 1 + for(var/datum/objective/objective in abductor.objectives) + abductor.current << "Objective #[obj_count]: [objective.explanation_text]" + obj_count++ + return /datum/game_mode/abduction/proc/equip_common(mob/living/carbon/human/agent,team_number) var/radio_freq = SYND_FREQ @@ -229,11 +236,10 @@ console.vest = V V.flags |= NODROP agent.equip_to_slot_or_del(V, slot_wear_suit) - agent.equip_to_slot_or_del(new /obj/item/weapon/abductor_baton(agent), slot_in_backpack) + agent.equip_to_slot_or_del(new /obj/item/weapon/abductor_baton(agent), slot_belt) agent.equip_to_slot_or_del(new /obj/item/weapon/gun/energy/alien(agent), slot_in_backpack) agent.equip_to_slot_or_del(new /obj/item/device/abductor/silencer(agent), slot_in_backpack) agent.equip_to_slot_or_del(new /obj/item/clothing/head/helmet/abductor(agent), slot_head) - agent.equip_to_slot_or_del(new /obj/item/weapon/storage/belt/military/abductor/full(agent), slot_belt) /datum/game_mode/abduction/proc/equip_scientist(var/mob/living/carbon/human/scientist,var/team_number) diff --git a/code/game/gamemodes/miniantags/abduction/abduction_gear.dm b/code/game/gamemodes/miniantags/abduction/abduction_gear.dm index 7cdd3ac1f0..20f9b61d01 100644 --- a/code/game/gamemodes/miniantags/abduction/abduction_gear.dm +++ b/code/game/gamemodes/miniantags/abduction/abduction_gear.dm @@ -12,14 +12,14 @@ item_state = "armor" blood_overlay_type = "armor" origin_tech = "magnets=7;biotech=4;powerstorage=4;abductor=4" - armor = list(melee = 15, bullet = 15, laser = 15, energy = 15, bomb = 15, bio = 15, rad = 15, fire = 70, acid = 70) + armor = list(melee = 15, bullet = 15, laser = 15, energy = 15, bomb = 15, bio = 15, rad = 15) actions_types = list(/datum/action/item_action/hands_free/activate) var/mode = VEST_STEALTH var/stealth_active = 0 var/combat_cooldown = 10 var/datum/icon_snapshot/disguise - var/stealth_armor = list(melee = 15, bullet = 15, laser = 15, energy = 15, bomb = 15, bio = 15, rad = 15, fire = 70, acid = 70) - var/combat_armor = list(melee = 50, bullet = 50, laser = 50, energy = 50, bomb = 50, bio = 50, rad = 50, fire = 90, acid = 90) + var/stealth_armor = list(melee = 15, bullet = 15, laser = 15, energy = 15, bomb = 15, bio = 15, rad = 15) + var/combat_armor = list(melee = 50, bullet = 50, laser = 50, energy = 50, bomb = 50, bio = 50, rad = 50) /obj/item/clothing/suit/armor/abductor/vest/proc/flip_mode() switch(mode) @@ -32,7 +32,7 @@ mode = VEST_STEALTH armor = stealth_armor icon_state = "vest_stealth" - if(ishuman(loc)) + if(istype(loc, /mob/living/carbon/human)) var/mob/living/carbon/human/H = loc H.update_inv_wear_suit() for(var/X in actions) @@ -50,24 +50,26 @@ if(disguise == null) return stealth_active = 1 - if(ishuman(loc)) - var/mob/living/carbon/human/M = loc - PoolOrNew(/obj/effect/overlay/temp/dir_setting/ninja/cloak, - list(get_turf(M), M.dir)) + if(istype(src.loc, /mob/living/carbon/human)) + var/mob/living/carbon/human/M = src.loc + addtimer(GLOBAL_PROC, "anim", 0, FALSE, M.loc, M, 'icons/mob/mob.dmi', + null, "cloak", null, M.dir) + M.name_override = disguise.name M.icon = disguise.icon M.icon_state = disguise.icon_state M.overlays = disguise.overlays - M.update_inv_hands() + M.update_inv_r_hand() + M.update_inv_l_hand() /obj/item/clothing/suit/armor/abductor/vest/proc/DeactivateStealth() if(!stealth_active) return stealth_active = 0 - if(ishuman(loc)) - var/mob/living/carbon/human/M = loc - PoolOrNew(/obj/effect/overlay/temp/dir_setting/ninja, - list(get_turf(M), M.dir)) + if(istype(src.loc, /mob/living/carbon/human)) + var/mob/living/carbon/human/M = src.loc + addtimer(GLOBAL_PROC, "anim", 0, FALSE, M.loc, M, 'icons/mob/mob.dmi', + null, "uncloak", null, M.dir) M.name_override = null M.cut_overlays() M.regenerate_icons() @@ -91,11 +93,11 @@ ActivateStealth() /obj/item/clothing/suit/armor/abductor/vest/proc/Adrenaline() - if(ishuman(loc)) + if(istype(src.loc, /mob/living/carbon/human)) if(combat_cooldown != initial(combat_cooldown)) - loc << "Combat injection is still recharging." + src.loc << "Combat injection is still recharging." return - var/mob/living/carbon/human/M = loc + var/mob/living/carbon/human/M = src.loc M.adjustStaminaLoss(-75) M.SetParalysis(0) M.SetStunned(0) @@ -172,7 +174,7 @@ mark(target, user) /obj/item/device/abductor/gizmo/proc/scan(atom/target, mob/living/user) - if(ishuman(target)) + if(istype(target,/mob/living/carbon/human)) if(console!=null) console.AddSnapshot(target) user << "You scan [target] and add them to the database." @@ -181,7 +183,7 @@ if(marked == target) user << "This specimen is already marked!" return - if(ishuman(target)) + if(istype(target,/mob/living/carbon/human)) if(isabductor(target)) marked = target user << "You mark [target] for future retrieval." @@ -243,6 +245,54 @@ if(!istype(I,/obj/item/device/radio/headset)) r.broadcasting = 0 //goddamned headset hacks + +/obj/item/weapon/implant/abductor + name = "recall implant" + desc = "Returns you to the mothership." + icon = 'icons/obj/abductor.dmi' + icon_state = "implant" + activated = 1 + origin_tech = "materials=2;biotech=7;magnets=4;bluespace=4;abductor=5" + var/obj/machinery/abductor/pad/home + var/cooldown = 30 + +/obj/item/weapon/implant/abductor/activate() + if(cooldown == initial(cooldown)) + home.Retrieve(imp_in,1) + cooldown = 0 + START_PROCESSING(SSobj, src) + else + imp_in << "You must wait [30 - cooldown] seconds to use [src] again!" + +/obj/item/weapon/implant/abductor/process() + if(cooldown < initial(cooldown)) + cooldown++ + if(cooldown == initial(cooldown)) + STOP_PROCESSING(SSobj, src) + +/obj/item/weapon/implant/abductor/implant(var/mob/source, var/mob/user) + if(..()) + var/obj/machinery/abductor/console/console + if(ishuman(source)) + var/mob/living/carbon/human/H = source + if(H.dna.species.id == "abductor") + var/datum/species/abductor/S = H.dna.species + console = get_team_console(S.team) + home = console.pad + + if(!home) + console = get_team_console(pick(1, 2, 3, 4)) + home = console.pad + return 1 + +/obj/item/weapon/implant/abductor/proc/get_team_console(var/team) + var/obj/machinery/abductor/console/console + for(var/obj/machinery/abductor/console/c in machines) + if(c.team == team) + console = c + break + return console + /obj/item/device/firing_pin/abductor name = "alien firing pin" icon_state = "firing_pin_ayy" @@ -306,7 +356,7 @@ Congratulations! You are now trained for xenobiology research!"} slot_flags = SLOT_BELT origin_tech = "materials=4;combat=4;biotech=7;abductor=4" force = 7 - w_class = WEIGHT_CLASS_NORMAL + w_class = 3 actions_types = list(/datum/action/item_action/toggle_mode) /obj/item/weapon/abductor_baton/proc/toggle(mob/living/user=usr) @@ -344,7 +394,7 @@ Congratulations! You are now trained for xenobiology research!"} if(!isabductor(user)) return - if(iscyborg(target)) + if(isrobot(target)) ..() return @@ -410,11 +460,11 @@ Congratulations! You are now trained for xenobiology research!"} return var/mob/living/carbon/C = L if(!C.handcuffed) - if(C.get_num_arms() >= 2 || C.get_arm_ignore()) + if(C.get_num_arms() >= 2) playsound(loc, 'sound/weapons/cablecuff.ogg', 30, 1, -2) C.visible_message("[user] begins restraining [C] with [src]!", \ "[user] begins shaping an energy field around your hands!") - if(do_mob(user, C, 30) && (C.get_num_arms() >= 2 || C.get_arm_ignore())) + if(do_mob(user, C, 30) && C.get_num_arms() >= 2) if(!C.handcuffed) C.handcuffed = new /obj/item/weapon/restraints/handcuffs/energy/used(C) C.update_handcuffed() @@ -484,35 +534,30 @@ Congratulations! You are now trained for xenobiology research!"} desc = "It's a gleaming sharp knife made out of silvery-green metal." icon = 'icons/obj/abductor.dmi' origin_tech = "materials=2;biotech=2;abductor=2" - toolspeed = 0.25 /obj/item/weapon/hemostat/alien name = "alien hemostat" desc = "You've never seen this before." icon = 'icons/obj/abductor.dmi' origin_tech = "materials=2;biotech=2;abductor=2" - toolspeed = 0.25 /obj/item/weapon/retractor/alien name = "alien retractor" desc = "You're not sure if you want the veil pulled back." icon = 'icons/obj/abductor.dmi' origin_tech = "materials=2;biotech=2;abductor=2" - toolspeed = 0.25 /obj/item/weapon/circular_saw/alien name = "alien saw" desc = "Do the aliens also lose this, and need to find an alien hatchet?" icon = 'icons/obj/abductor.dmi' origin_tech = "materials=2;biotech=2;abductor=2" - toolspeed = 0.25 /obj/item/weapon/surgicaldrill/alien name = "alien drill" desc = "Maybe alien surgeons have finally found a use for the drill." icon = 'icons/obj/abductor.dmi' origin_tech = "materials=2;biotech=2;abductor=2" - toolspeed = 0.25 /obj/item/weapon/cautery/alien name = "alien cautery" @@ -520,7 +565,6 @@ Congratulations! You are now trained for xenobiology research!"} Unless..." icon = 'icons/obj/abductor.dmi' origin_tech = "materials=2;biotech=2;abductor=2" - toolspeed = 0.25 /obj/item/clothing/head/helmet/abductor name = "agent headgear" @@ -539,8 +583,9 @@ Congratulations! You are now trained for xenobiology research!"} can_buckle = 1 buckle_lying = 1 flags = NODECONSTRUCT - resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | ACID_PROOF +/obj/structure/table/optable/abductor/table_destroy() + return //can't destroy the abductor's only optable. /obj/structure/bed/abductor name = "resting contraption" @@ -560,8 +605,8 @@ Congratulations! You are now trained for xenobiology research!"} /obj/structure/table_frame/abductor/attackby(obj/item/I, mob/user, params) if(istype(I, /obj/item/weapon/wrench)) user << "You start disassembling [src]..." - playsound(src.loc, I.usesound, 50, 1) - if(do_after(user, 30*I.toolspeed, target = src)) + playsound(src.loc, 'sound/items/Ratchet.ogg', 50, 1) + if(do_after(user, 30/I.toolspeed, target = src)) playsound(src.loc, 'sound/items/Deconstruct.ogg', 50, 1) for(var/i = 1, i <= framestackamount, i++) new framestack(get_turf(src)) @@ -617,7 +662,7 @@ Congratulations! You are now trained for xenobiology research!"} user.visible_message("[user] disassembles the airlock assembly.", \ "You start to disassemble the airlock assembly...") playsound(src.loc, 'sound/items/Welder2.ogg', 50, 1) - if(do_after(user, 40*W.toolspeed, target = src)) + if(do_after(user, 40/W.toolspeed, target = src)) if( !WT.isOn() ) return user << "You disassemble the airlock assembly." diff --git a/code/game/gamemodes/miniantags/abduction/abduction_surgery.dm b/code/game/gamemodes/miniantags/abduction/abduction_surgery.dm index def0cd77e2..30f7d7c10e 100644 --- a/code/game/gamemodes/miniantags/abduction/abduction_surgery.dm +++ b/code/game/gamemodes/miniantags/abduction/abduction_surgery.dm @@ -10,7 +10,7 @@ var/mob/living/carbon/human/H = user if(H.dna.species.id == "abductor") return 1 - for(var/obj/item/weapon/implant/abductor/A in H.implants) + if((locate(/obj/item/weapon/implant/abductor) in H)) return 1 return 0 @@ -23,9 +23,9 @@ var/list/organ_types = list(/obj/item/organ/heart) /datum/surgery_step/extract_organ/preop(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery) - for(var/atom/A in target.internal_organs) - if(A.type in organ_types) - IC = A + for(var/obj/item/I in target.internal_organs) + if(I.type in organ_types) + IC = I break user.visible_message("[user] starts to remove [target]'s organs.", "You start to remove [target]'s organs...") diff --git a/code/game/gamemodes/miniantags/abduction/gland.dm b/code/game/gamemodes/miniantags/abduction/gland.dm index ead066e8cc..670de74bc0 100644 --- a/code/game/gamemodes/miniantags/abduction/gland.dm +++ b/code/game/gamemodes/miniantags/abduction/gland.dm @@ -100,13 +100,13 @@ /obj/item/organ/gland/pop cooldown_low = 900 cooldown_high = 1800 - uses = -1 + uses = 6 human_only = 1 icon_state = "species" /obj/item/organ/gland/pop/activate() owner << "You feel unlike yourself." - var/species = pick(list(/datum/species/lizard,/datum/species/jelly/slime,/datum/species/pod,/datum/species/fly,/datum/species/jelly)) + var/species = pick(list(/datum/species/lizard,/datum/species/jelly/slime,/datum/species/pod,/datum/species/fly)) owner.set_species(species) /obj/item/organ/gland/ventcrawling @@ -118,7 +118,7 @@ /obj/item/organ/gland/ventcrawling/activate() owner << "You feel very stretchy." - owner.ventcrawler = VENTCRAWLER_ALWAYS + owner.ventcrawler = 2 return @@ -159,7 +159,7 @@ /obj/item/organ/gland/spiderman/activate() owner << "You feel something crawling in your skin." owner.faction |= "spiders" - new /obj/structure/spider/spiderling(owner.loc) + new /obj/effect/spider/spiderling(owner.loc) /obj/item/organ/gland/egg cooldown_low = 300 @@ -199,13 +199,13 @@ owner << "You feel something moving around inside you..." //spawn cocoon with clone greytide snpc inside if(ishuman(owner)) - var/obj/structure/spider/cocoon/abductor/C = new (get_turf(owner)) + var/obj/effect/cocoon/abductor/C = new (get_turf(owner)) C.Copy(owner) C.Start() owner.gib() return -/obj/structure/spider/cocoon/abductor +/obj/effect/cocoon/abductor name = "slimy cocoon" desc = "Something is moving inside." icon = 'icons/effects/effects.dmi' @@ -214,7 +214,7 @@ density = 1 var/hatch_time = 0 -/obj/structure/spider/cocoon/abductor/proc/Copy(mob/living/carbon/human/H) +/obj/effect/cocoon/abductor/proc/Copy(mob/living/carbon/human/H) var/mob/living/carbon/human/interactive/greytide/clone = new(src) clone.hardset_dna(H.dna.uni_identity,H.dna.struc_enzymes,H.real_name, H.dna.blood_type, H.dna.species.type, H.dna.features) @@ -228,11 +228,11 @@ if(I) clone.equip_to_slot_if_possible(I,slot) -/obj/structure/spider/cocoon/abductor/proc/Start() +/obj/effect/cocoon/abductor/proc/Start() hatch_time = world.time + 600 START_PROCESSING(SSobj, src) -/obj/structure/spider/cocoon/abductor/process() +/obj/effect/cocoon/abductor/process() if(world.time > hatch_time) STOP_PROCESSING(SSobj, src) for(var/mob/M in contents) @@ -241,10 +241,10 @@ qdel(src) /obj/item/organ/gland/plasma - cooldown_low = 1200 - cooldown_high = 1800 + cooldown_low = 2400 + cooldown_high = 3000 origin_tech = "materials=4;biotech=4;plasmatech=6;abductor=3" - uses = -1 + uses = 1 /obj/item/organ/gland/plasma/activate() owner << "You feel bloated." @@ -253,9 +253,9 @@ owner << "A massive stomachache overcomes you." sleep(50) if(!owner) return - owner.visible_message("[owner] vomits a cloud of plasma!") + owner.visible_message("[owner] explodes in a cloud of plasma!") var/turf/open/T = get_turf(owner) if(istype(T)) - T.atmos_spawn_air("plasma=50;TEMP=[T20C]") - owner.vomit() + T.atmos_spawn_air("plasma=300;TEMP=[T20C]") + owner.gib() return diff --git a/code/game/gamemodes/miniantags/abduction/machinery/camera.dm b/code/game/gamemodes/miniantags/abduction/machinery/camera.dm index f893ad1bb8..9c06517bd9 100644 --- a/code/game/gamemodes/miniantags/abduction/machinery/camera.dm +++ b/code/game/gamemodes/miniantags/abduction/machinery/camera.dm @@ -13,7 +13,6 @@ icon = 'icons/obj/abductor.dmi' icon_state = "camera" - resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | ACID_PROOF /obj/machinery/computer/camera_advanced/abductor/CreateEye() ..() diff --git a/code/game/gamemodes/miniantags/abduction/machinery/console.dm b/code/game/gamemodes/miniantags/abduction/machinery/console.dm index 5539f6a878..55802fa7e1 100644 --- a/code/game/gamemodes/miniantags/abduction/machinery/console.dm +++ b/code/game/gamemodes/miniantags/abduction/machinery/console.dm @@ -1,7 +1,6 @@ //Common /obj/machinery/abductor - resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | ACID_PROOF var/team = 0 /obj/machinery/abductor/proc/IsAgent(mob/living/carbon/human/H) @@ -46,9 +45,7 @@ if(experiment != null) var/points = experiment.points - var/credits = experiment.credits dat += "Collected Samples : [points]
    " - dat += "Gear Credits: [credits]
    " dat += "Transfer data in exchange for supplies:
    " dat += "Advanced Baton
    " dat += "Agent Helmet
    " @@ -176,7 +173,7 @@ entry.name = target.name entry.icon = target.icon entry.icon_state = target.icon_state - entry.overlays = target.get_overlays_copy(list(HANDS_LAYER)) + entry.overlays = target.get_overlays_copy(list(L_HAND_LAYER,R_HAND_LAYER)) for(var/i=1,i<=disguises.len,i++) var/datum/icon_snapshot/temp = disguises[i] if(temp.name == entry.name) @@ -201,8 +198,8 @@ return ..() /obj/machinery/abductor/console/proc/Dispense(item,cost=1) - if(experiment && experiment.credits >= cost) - experiment.credits -=cost + if(experiment && experiment.points >= cost) + experiment.points-=cost say("Incoming supply!") if(pad) flick("alien-pad", pad) diff --git a/code/game/gamemodes/miniantags/abduction/machinery/dispenser.dm b/code/game/gamemodes/miniantags/abduction/machinery/dispenser.dm index bc8fa7fdb5..09f6361676 100644 --- a/code/game/gamemodes/miniantags/abduction/machinery/dispenser.dm +++ b/code/game/gamemodes/miniantags/abduction/machinery/dispenser.dm @@ -14,7 +14,6 @@ return rgb(rand(0,255),rand(0,255),rand(0,255)) /obj/machinery/abductor/gland_dispenser/New() - ..() gland_types = subtypesof(/obj/item/organ/gland) gland_types = shuffle(gland_types) gland_colors = new/list(gland_types.len) diff --git a/code/game/gamemodes/miniantags/abduction/machinery/experiment.dm b/code/game/gamemodes/miniantags/abduction/machinery/experiment.dm index 930f255f71..7b32758a6d 100644 --- a/code/game/gamemodes/miniantags/abduction/machinery/experiment.dm +++ b/code/game/gamemodes/miniantags/abduction/machinery/experiment.dm @@ -7,7 +7,6 @@ anchored = 1 state_open = 1 var/points = 0 - var/credits = 0 var/list/history = list() var/list/abductee_minds = list() var/flash = " - || - " @@ -37,28 +36,6 @@ if(state_open && !panel_open) ..(target) -/obj/machinery/abductor/experiment/relaymove(mob/user) - if(user.stat != CONSCIOUS) - return - container_resist(user) - -/obj/machinery/abductor/experiment/container_resist(mob/living/user) - var/breakout_time = 600 - user.changeNext_move(CLICK_CD_BREAKOUT) - user.last_special = world.time + CLICK_CD_BREAKOUT - user << "You lean on the back of [src] and start pushing the door open... (this will take about a minute.)" - user.visible_message("You hear a metallic creaking from [src]!") - - if(do_after(user,(breakout_time), target = src)) - if(!user || user.stat != CONSCIOUS || user.loc != src || state_open) - return - - visible_message("[user] successfully broke out of [src]!") - user << "You successfully break out of [src]!" - - open_machine() - - /obj/machinery/abductor/experiment/proc/dissection_icon(mob/living/carbon/human/H) var/icon/photo = null var/g = (H.gender == FEMALE) ? "f" : "m" @@ -69,19 +46,19 @@ photo.Blend("#[H.dna.features["mcolor"]]", ICON_MULTIPLY) var/icon/eyes_s - if(EYECOLOR in H.dna.species.species_traits) + if(EYECOLOR in H.dna.species.specflags) eyes_s = icon("icon" = 'icons/mob/human_face.dmi', "icon_state" = "[H.dna.species.eyes]_s") eyes_s.Blend("#[H.eye_color]", ICON_MULTIPLY) var/datum/sprite_accessory/S S = hair_styles_list[H.hair_style] - if(S && (HAIR in H.dna.species.species_traits)) + if(S && (HAIR in H.dna.species.specflags)) var/icon/hair_s = icon("icon" = S.icon, "icon_state" = "[S.icon_state]_s") hair_s.Blend("#[H.hair_color]", ICON_MULTIPLY) eyes_s.Blend(hair_s, ICON_OVERLAY) S = facial_hair_styles_list[H.facial_hair_style] - if(S && (FACEHAIR in H.dna.species.species_traits)) + if(S && (FACEHAIR in H.dna.species.specflags)) var/icon/facial_s = icon("icon" = S.icon, "icon_state" = "[S.icon_state]_s") facial_s.Blend("#[H.facial_hair_color]", ICON_MULTIPLY) eyes_s.Blend(facial_s, ICON_OVERLAY) @@ -89,7 +66,7 @@ if(eyes_s) photo.Blend(eyes_s, ICON_OVERLAY) - var/icon/splat = icon("icon" = 'icons/mob/dam_mob.dmi',"icon_state" = "chest30") + var/icon/splat = icon("icon" = 'icons/mob/dam_human.dmi',"icon_state" = "chest30") photo.Blend(splat,ICON_OVERLAY) return photo @@ -182,7 +159,11 @@ var/datum/objective/abductee/O = new objtype() ticker.mode.abductees += H.mind H.mind.objectives += O - H.mind.announce_objectives() + var/obj_count = 1 + H << "Your current objectives:" + for(var/datum/objective/objective in H.mind.objectives) + H << "Objective #[obj_count]: [objective.explanation_text]" + obj_count++ ticker.mode.update_abductor_icons_added(H.mind) for(var/obj/item/organ/gland/G in H.internal_organs) @@ -193,7 +174,6 @@ SendBack(H) playsound(src.loc, 'sound/machines/ding.ogg', 50, 1) points += point_reward - credits += point_reward return "Experiment successful! [point_reward] new data-points collected." else playsound(src.loc, 'sound/machines/buzz-sigh.ogg', 50, 1) diff --git a/code/game/gamemodes/miniantags/abduction/machinery/pad.dm b/code/game/gamemodes/miniantags/abduction/machinery/pad.dm index b5434dbfdd..7e7ed15560 100644 --- a/code/game/gamemodes/miniantags/abduction/machinery/pad.dm +++ b/code/game/gamemodes/miniantags/abduction/machinery/pad.dm @@ -7,8 +7,7 @@ var/turf/teleport_target /obj/machinery/abductor/pad/proc/Warp(mob/living/target) - if(!target.buckled) - target.forceMove(get_turf(src)) + target.Move(src.loc) /obj/machinery/abductor/pad/proc/Send() if(teleport_target == null) @@ -16,11 +15,13 @@ flick("alien-pad", src) for(var/mob/living/target in loc) target.forceMove(teleport_target) - PoolOrNew(/obj/effect/overlay/temp/dir_setting/ninja, list(get_turf(target), target.dir)) + spawn(0) + anim(target.loc,target,'icons/mob/mob.dmi',,"uncloak",,target.dir) /obj/machinery/abductor/pad/proc/Retrieve(mob/living/target) flick("alien-pad", src) - PoolOrNew(/obj/effect/overlay/temp/dir_setting/ninja, list(get_turf(target), target.dir)) + spawn(0) + anim(target.loc,target,'icons/mob/mob.dmi',,"uncloak",,target.dir) Warp(target) /obj/machinery/abductor/pad/proc/MobToLoc(place,mob/living/target) @@ -28,15 +29,16 @@ sleep(80) flick("alien-pad", src) target.forceMove(place) - PoolOrNew(/obj/effect/overlay/temp/dir_setting/ninja, list(get_turf(target), target.dir)) + anim(target.loc,target,'icons/mob/mob.dmi',,"uncloak",,target.dir) /obj/machinery/abductor/pad/proc/PadToLoc(place) PoolOrNew(/obj/effect/overlay/temp/teleport_abductor, place) sleep(80) flick("alien-pad", src) - for(var/mob/living/target in get_turf(src)) + for(var/mob/living/target in src.loc) target.forceMove(place) - PoolOrNew(/obj/effect/overlay/temp/dir_setting/ninja, list(get_turf(target), target.dir)) + spawn(0) + anim(target.loc,target,'icons/mob/mob.dmi',,"uncloak",,target.dir) /obj/effect/overlay/temp/teleport_abductor diff --git a/code/game/gamemodes/miniantags/borer/borer.dm b/code/game/gamemodes/miniantags/borer/borer.dm deleted file mode 100644 index e35ab6b6bd..0000000000 --- a/code/game/gamemodes/miniantags/borer/borer.dm +++ /dev/null @@ -1,1042 +0,0 @@ -/mob/living/captive_brain - name = "host brain" - real_name = "host brain" - -/mob/living/captive_brain/say(var/message) - - if(client) - if(client.prefs.muted & MUTE_IC) - src << "You cannot speak in IC (muted)." - return - if(client.handle_spam_prevention(message,MUTE_IC)) - return - - if(isborer(loc)) - - message = sanitize(message) - if(!message) - return - log_say("[key_name(src)] : [message]") - if(stat == 2) - return say_dead(message) - - var/mob/living/simple_animal/borer/B = loc - src << "You whisper silently, \"[message]\"" - B.victim << "The captive mind of [src] whispers, \"[message]\"" - - for (var/mob/M in player_list) - if(isnewplayer(M)) - continue - else if(M.stat == 2 && M.client.prefs.toggles & CHAT_GHOSTEARS) - M << "Thought-speech, [src] -> [B.truename]: [message]" - -/mob/living/captive_brain/emote(var/message) - return - -/mob/living/captive_brain/resist() - - var/mob/living/simple_animal/borer/B = loc - - src << "You begin doggedly resisting the parasite's control (this will take approximately 40 seconds)." - B.victim << "You feel the captive mind of [src] begin to resist your control." - - var/delay = rand(150,250) + B.victim.brainloss - addtimer(src, "return_control", delay, TIMER_NORMAL, src.loc) - -/mob/living/captive_brain/proc/return_control(mob/living/simple_animal/borer/B) - if(!B || !B.controlling) - return - - B.victim.adjustBrainLoss(rand(5,10)) - src << "With an immense exertion of will, you regain control of your body!" - B.victim << "You feel control of the host brain ripped from your grasp, and retract your probosci before the wild neural impulses can damage you." - B.detatch() - -var/list/mob/living/simple_animal/borer/borers = list() -var/total_borer_hosts_needed = 10 - -/mob/living/simple_animal/borer - name = "cortical borer" - real_name = "cortical borer" - desc = "A small, quivering, slug-like creature." - icon_state = "brainslug" - icon_living = "brainslug" - icon_dead = "brainslug_dead" - health = 20 - maxHealth = 20 - melee_damage_lower = 5 - melee_damage_upper = 5 - stop_automated_movement = TRUE - attacktext = "chomps" - attack_sound = 'sound/weapons/bite.ogg' - pass_flags = PASSTABLE | PASSMOB - mob_size = MOB_SIZE_SMALL - faction = list("creature") - ventcrawler = VENTCRAWLER_ALWAYS - atmos_requirements = list("min_oxy" = 0, "max_oxy" = 0, "min_tox" = 0, "max_tox" = 0, "min_co2" = 0, "max_co2" = 0, "min_n2" = 0, "max_n2" = 0) - minbodytemp = 0 - maxbodytemp = 1500 - - var/generation = 1 - var/static/list/borer_names = list( - "Primary", "Secondary", "Tertiary", "Quaternary", "Quinary", "Senary", - "Septenary", "Octonary", "Novenary", "Decenary", "Undenary", "Duodenary", - ) - - var/mob/living/carbon/victim = null - var/mob/living/captive_brain/host_brain = null - var/truename - var/docile = FALSE - var/bonding = FALSE - var/controlling = FALSE - var/chemicals = 10 - var/used_dominate - var/borer_chems = list() - var/leaving = FALSE - var/hiding = FALSE - var/waketimerid = null - - var/datum/action/innate/borer/talk_to_host/talk_to_host_action = new - var/datum/action/innate/borer/infest_host/infest_host_action = new - var/datum/action/innate/borer/toggle_hide/toggle_hide_action = new - var/datum/action/innate/borer/talk_to_borer/talk_to_borer_action = new - var/datum/action/innate/borer/talk_to_brain/talk_to_brain_action = new - var/datum/action/innate/borer/take_control/take_control_action = new - var/datum/action/innate/borer/give_back_control/give_back_control_action = new - var/datum/action/innate/borer/leave_body/leave_body_action = new - var/datum/action/innate/borer/make_chems/make_chems_action = new - var/datum/action/innate/borer/make_larvae/make_larvae_action = new - var/datum/action/innate/borer/freeze_victim/freeze_victim_action = new - var/datum/action/innate/borer/punish_victim/punish_victim_action = new - var/datum/action/innate/borer/jumpstart_host/jumpstart_host_action = new - -/mob/living/simple_animal/borer/New(atom/newloc, var/gen=1) - ..(newloc) - generation = gen - notify_ghosts("A cortical borer has been created in [get_area(src)]!", enter_link = "(Click to enter)", source = src, action = NOTIFY_ATTACK) - real_name = "Cortical Borer [rand(1000,9999)]" - truename = "[borer_names[min(generation, borer_names.len)]] [rand(1000,9999)]" - borer_chems += /datum/borer_chem/epinephrine - borer_chems += /datum/borer_chem/leporazine - borer_chems += /datum/borer_chem/mannitol - borer_chems += /datum/borer_chem/bicaridine - borer_chems += /datum/borer_chem/kelotane - borer_chems += /datum/borer_chem/charcoal - borer_chems += /datum/borer_chem/methamphetamine - borer_chems += /datum/borer_chem/salbutamol - borer_chems += /datum/borer_chem/spacedrugs - //borer_chems += /datum/borer_chem/creagent - borer_chems += /datum/borer_chem/ethanol - borer_chems += /datum/borer_chem/rezadone - - borers += src - - GrantBorerActions() - -/mob/living/simple_animal/borer/Topic(href, href_list)//not entirely sure if this is even required - if(href_list["ghostjoin"]) - var/mob/dead/observer/ghost = usr - if(istype(ghost)) - attack_ghost(ghost) - -/mob/living/simple_animal/borer/attack_ghost(mob/user) - if(jobban_isbanned(user, ROLE_BORER) || jobban_isbanned(user, "Syndicate")) - return - if(key) - return - if(stat != CONSCIOUS) - return - var/be_borer = alert("Become a cortical borer? (Warning, You can no longer be cloned!)",,"Yes","No") - if(be_borer == "No" || !src || qdeleted(src)) - return - if(key) - return - transfer_personality(user.client) - -/mob/living/simple_animal/borer/Stat() - ..() - - if(statpanel("Status")) - stat(null, "Chemicals: [chemicals]") - - src << output(chemicals, "ViewBorer\ref[src]Chems.browser:update_chemicals") - -/mob/living/simple_animal/borer/verb/Communicate() - set category = "Borer" - set name = "Converse with Host" - set desc = "Send a silent message to your host." - - if(!victim) - src << "You do not have a host to communicate with!" - return - - if(stat) - src << "You cannot do that in your current state." - return - - var/input = stripped_input(src, "Please enter a message to tell your host.", "Borer", null) - if(!input) - return - - if(src && !qdeleted(src) && !qdeleted(victim)) - var/say_string = (docile) ? "slurs" :"states" - if(victim) - victim << "[truename] [say_string]: [input]" - log_say("Borer Communication: [key_name(src)] -> [key_name(victim)] : [input]") - for(var/M in dead_mob_list) - if(isobserver(M)) - var/rendered = "Borer Communication from [truename] : [input]" - var/link = FOLLOW_LINK(M, src) - M << "[link] [rendered]" - src << "[truename] [say_string]: [input]" - victim.verbs += /mob/living/proc/borer_comm - talk_to_borer_action.Grant(victim) - -/mob/living/proc/borer_comm() - set name = "Converse with Borer" - set category = "Borer" - set desc = "Communicate mentally with your borer." - - - var/mob/living/simple_animal/borer/B = has_brain_worms() - if(!B) - return - - var/input = stripped_input(src, "Please enter a message to tell the borer.", "Message", null) - if(!input) - return - - B << "[src] says: [input]" - log_say("Borer Communication: [key_name(src)] -> [key_name(B)] : [input]") - - for(var/M in dead_mob_list) - if(isobserver(M)) - var/rendered = "Borer Communication from [src] : [input]" - var/link = FOLLOW_LINK(M, src) - M << "[link] [rendered]" - src << "[src] says: [input]" - -/mob/living/proc/trapped_mind_comm() - set name = "Converse with Trapped Mind" - set category = "Borer" - set desc = "Communicate mentally with the trapped mind of your host." - - - var/mob/living/simple_animal/borer/B = has_brain_worms() - if(!B || !B.host_brain) - return - var/mob/living/captive_brain/CB = B.host_brain - var/input = stripped_input(src, "Please enter a message to tell the trapped mind.", "Message", null) - if(!input) - return - - CB << "[B.truename] says: [input]" - log_say("Borer Communication: [key_name(B)] -> [key_name(CB)] : [input]") - - for(var/M in dead_mob_list) - if(isobserver(M)) - var/rendered = "Borer Communication from [B] : [input]" - var/link = FOLLOW_LINK(M, src) - M << "[link] [rendered]" - src << "[B.truename] says: [input]" - -/mob/living/simple_animal/borer/Life() - - ..() - - if(victim) - if(stat != DEAD) - if(victim.stat == DEAD) - chemicals++ - else if(chemicals < 250) - chemicals+=2 - chemicals = min(250, chemicals) - - - if(stat != DEAD && victim.stat != DEAD) - - if(victim.reagents.has_reagent("sugar")) - if(!docile || waketimerid) - if(controlling) - victim << "You feel the soporific flow of sugar in your host's blood, lulling you into docility." - else - src << "You feel the soporific flow of sugar in your host's blood, lulling you into docility." - if(waketimerid) - deltimer(waketimerid) - waketimerid = null - docile = TRUE - else - if(docile && !waketimerid) - if(controlling) - victim << "You start shaking off your lethargy as the sugar leaves your host's blood. This will take about 10 seconds..." - else - src << "You start shaking off your lethargy as the sugar leaves your host's blood. This will take about 10 seconds..." - - waketimerid = addtimer(src,"wakeup",10,TIMER_NORMAL) - if(controlling) - - if(docile) - victim << "You are feeling far too docile to continue controlling your host..." - victim.release_control() - return - - if(prob(5)) - victim.adjustBrainLoss(rand(1,2)) - - if(prob(victim.brainloss/10)) - victim.say("*[pick(list("blink","blink_r","choke","aflap","drool","twitch","twitch_s","gasp"))]") - -/mob/living/simple_animal/borer/proc/wakeup() - if(controlling) - victim << "You finish shaking off your lethargy." - else - src << "You finish shaking off your lethargy." - docile = FALSE - if(waketimerid) - waketimerid = null - -/mob/living/simple_animal/borer/say(message) - if(dd_hasprefix(message, ";")) - message = copytext(message,2) - for(var/borer in borers) - borer << "Cortical Link: [truename] sings, \"[message]\"" - for(var/mob/dead in dead_mob_list) - dead << "Cortical Link: [truename] sings, \"[message]\"" - return - if(!victim) - src << "You cannot speak without a host!" - return - if(message == "") - return - -/mob/living/simple_animal/borer/UnarmedAttack(mob/living/M) - healthscan(usr, M) - chemscan(usr, M) - return - -/mob/living/simple_animal/borer/ex_act() - if(victim) - return - - ..() - -/mob/living/simple_animal/borer/verb/infect_victim() - set name = "Infest" - set category = "Borer" - set desc = "Infest a suitable humanoid host." - - if(victim) - src << "You are already within a host." - - if(stat == DEAD) - return - - var/list/choices = list() - for(var/mob/living/carbon/H in view(1,src)) - if(H!=src && Adjacent(H)) - choices += H - - var/mob/living/carbon/H = input(src,"Who do you wish to infest?") in null|choices - if(!H || !src) - return - - if(!Adjacent(H)) - return FALSE - - if(stat != CONSCIOUS) - src << "You cannot do that in your current state." - return FALSE - - if(H.has_brain_worms()) - src << "[victim] is already infested!" - return - - src << "You slither up [H] and begin probing at their ear canal..." - if(!do_mob(src, H, 30)) - src << "As [H] moves away, you are dislodged and fall to the ground." - return - - if(!H || !src) - return - - Infect(H) - -/mob/living/simple_animal/borer/proc/Infect(mob/living/carbon/C) - - if(!C) - return - - if(C.has_brain_worms()) - src << "[C] is already infested!" - return - - if(!C.key || !C.mind) - src << "[C]'s mind seems unresponsive. Try someone else!" - return - - if(C && C.dna && istype(C.dna.species, /datum/species/skeleton)) - src << "[C] does not possess the vital systems needed to support us." - return - - victim = C - forceMove(victim) - - RemoveBorerActions() - GrantInfestActions() - - log_game("[src]/([src.ckey]) has infested [victim]/([victim.ckey]") - -/mob/living/simple_animal/borer/verb/secrete_chemicals() - set category = "Borer" - set name = "Secrete Chemicals" - set desc = "Push some chemicals into your host's bloodstream." - - if(!victim) - src << "You are not inside a host body." - return - - if(stat != CONSCIOUS) - src << "You cannot secrete chemicals in your current state." - - if(docile) - src << "You are feeling far too docile to do that." - return - - var content = "" - content += "

    Chemicals: [chemicals]

    " - - content += "" - - for(var/datum in typesof(/datum/borer_chem)) - var/datum/borer_chem/C = new datum() - if(C.chemname) - content += "" - - content += "
    [C.chemname] ([C.chemuse])

    [C.chem_desc]

    " - - var/html = get_html_template(content) - - usr << browse(null, "window=ViewBorer\ref[src]Chems;size=600x800") - usr << browse(html, "window=ViewBorer\ref[src]Chems;size=600x800") - - return - -/mob/living/simple_animal/borer/verb/hide() - set category = "Borer" - set name = "Hide" - set desc = "Become invisible to the common eye." - - if(victim) - src << "You cannot do this while you're inside a host." - - if(stat != CONSCIOUS) - return - - if(!hiding) - layer = LATTICE_LAYER - visible_message("[src] scurries to the ground!", \ - "You are now hiding.") - hiding = TRUE - else - layer = MOB_LAYER - visible_message("[src] slowly peaks up from the ground...", \ - "You stop hiding.") - hiding = FALSE - -/mob/living/simple_animal/borer/verb/dominate_victim() - set category = "Borer" - set name = "Paralyze Victim" - set desc = "Freeze the limbs of a potential host with supernatural fear." - - if(world.time - used_dominate < 150) - src << "You cannot use that ability again so soon." - return - - if(victim) - src << "You cannot do that from within a host body." - return - - if(stat != CONSCIOUS) - src << "You cannot do that in your current state." - return - - var/list/choices = list() - for(var/mob/living/carbon/C in view(1,src)) - if(C.stat == CONSCIOUS) - choices += C - - var/mob/living/carbon/M = input(src,"Who do you wish to dominate?") in null|choices - - - if(!M || !src) - return - if(!Adjacent(M)) - return - - if(M.has_brain_worms()) - src << "You cannot paralyze someone who is already infested!" - return - - layer = MOB_LAYER - - src << "You focus your psychic lance on [M] and freeze their limbs with a wave of terrible dread." - M << "You feel a creeping, horrible sense of dread come over you, freezing your limbs and setting your heart racing." - M.Stun(3) - - used_dominate = world.time - -/mob/living/simple_animal/borer/verb/release_victim() - set category = "Borer" - set name = "Release Host" - set desc = "Slither out of your host." - - if(!victim) - src << "You are not inside a host body." - return - - if(stat != CONSCIOUS) - src << "You cannot leave your host in your current state." - - if(leaving) - leaving = FALSE - src << "You decide against leaving your host." - return - - src << "You begin disconnecting from [victim]'s synapses and prodding at their internal ear canal." - - if(victim.stat != DEAD) - victim << "An odd, uncomfortable pressure begins to build inside your skull, behind your ear..." - - leaving = TRUE - - addtimer(src, "release_host", 100, TIMER_NORMAL) - -/mob/living/simple_animal/borer/proc/release_host() - if(!victim || !src || qdeleted(victim) || qdeleted(src)) - return - if(!leaving) - return - if(controlling) - return - - if(stat != CONSCIOUS) - src << "You cannot release your host in your current state." - return - - src << "You wiggle out of [victim]'s ear and plop to the ground." - if(victim.mind) - victim << "Something slimy wiggles out of your ear and plops to the ground!" - victim << "As though waking from a dream, you shake off the insidious mind control of the brain worm. Your thoughts are your own again." - - leaving = FALSE - - leave_victim() - -/mob/living/simple_animal/borer/proc/leave_victim() - if(!victim) - return - - if(controlling) - detatch() - - GrantBorerActions() - RemoveInfestActions() - - forceMove(get_turf(victim)) - - reset_perspective(null) - machine = null - - victim.reset_perspective(null) - victim.machine = null - - var/mob/living/V = victim - V.verbs -= /mob/living/proc/borer_comm - talk_to_borer_action.Remove(victim) - victim = null - return - -/mob/living/simple_animal/borer/verb/jumpstart() - set category = "Borer" - set name = "Jumpstart Host" - set desc = "Bring your host back to life." - - if(!victim) - src << "You need a host to be able to use this." - return - - if(docile) - src << "You are feeling too docile to use this!" - return - - if(victim.stat != DEAD) - src << "Your host is already alive!" - return - - if(chemicals < 250) - src << "You need 250 chemicals to use this!" - return - - if(victim.stat == DEAD) - victim.tod = null - victim.setToxLoss(0) - victim.setOxyLoss(0) - victim.setCloneLoss(0) - victim.SetParalysis(0) - victim.SetStunned(0) - victim.SetWeakened(0) - victim.radiation = 0 - victim.heal_overall_damage(victim.getBruteLoss(), victim.getFireLoss()) - victim.reagents.clear_reagents() - if(ishuman(victim)) - var/mob/living/carbon/human/H = victim - H.restore_blood() - H.remove_all_embedded_objects() - victim.revive() - log_game("[src]/([src.ckey]) has revived [victim]/([victim.ckey]") - chemicals -= 250 - src << "You send a jolt of energy to your host, reviving them!" - victim.grab_ghost(force = TRUE) //brings the host back, no eggscape - victim <<"You bolt upright, gasping for breath!" - -/mob/living/simple_animal/borer/verb/bond_brain() - set category = "Borer" - set name = "Assume Control" - set desc = "Fully connect to the brain of your host." - - if(!victim) - src << "You are not inside a host body." - return - - if(stat != CONSCIOUS) - src << "You cannot do that in your current state." - return - - if(docile) - src << "You are feeling far too docile to do that." - return - - if(victim.stat == DEAD) - src << "This host lacks enough brain function to control." - return - - if(bonding) - bonding = FALSE - src << "You stop attempting to take control of your host." - return - - src << "You begin delicately adjusting your connection to the host brain..." - - if(qdeleted(src) || qdeleted(victim)) - return - - bonding = TRUE - - var/delay = 200+(victim.brainloss*5) - addtimer(src, "assume_control", delay, TIMER_NORMAL) - -/mob/living/simple_animal/borer/proc/assume_control() - if(!victim || !src || controlling || victim.stat == DEAD) - return - if(!bonding) - return - if(docile) - src <<"You are feeling far too docile to do that." - return - if(is_servant_of_ratvar(victim) || iscultist(victim) || victim.isloyal()) - src << "[victim]'s mind seems to be blocked by some unknown force!" - return - - else - - log_game("[src]/([src.ckey]) assumed control of [victim]/([victim.ckey] with borer powers.") - src << "You plunge your probosci deep into the cortex of the host brain, interfacing directly with their nervous system." - victim << "You feel a strange shifting sensation behind your eyes as an alien consciousness displaces yours." - - // host -> brain - var/h2b_id = victim.computer_id - var/h2b_ip= victim.lastKnownIP - victim.computer_id = null - victim.lastKnownIP = null - - qdel(host_brain) - host_brain = new(src) - - host_brain.ckey = victim.ckey - - host_brain.name = victim.name - - if(victim.mind) - host_brain.mind = victim.mind - - if(!host_brain.computer_id) - host_brain.computer_id = h2b_id - - if(!host_brain.lastKnownIP) - host_brain.lastKnownIP = h2b_ip - - host_brain << "You are trapped in your own mind. You feel that there must be a way to resist!" - - // self -> host - var/s2h_id = src.computer_id - var/s2h_ip= src.lastKnownIP - src.computer_id = null - src.lastKnownIP = null - - victim.ckey = src.ckey - victim.mind = src.mind - - if(!victim.computer_id) - victim.computer_id = s2h_id - - if(!victim.lastKnownIP) - victim.lastKnownIP = s2h_ip - - bonding = FALSE - controlling = TRUE - - victim.verbs += /mob/living/carbon/proc/release_control - victim.verbs += /mob/living/carbon/proc/spawn_larvae - victim.verbs -= /mob/living/proc/borer_comm - victim.verbs += /mob/living/proc/trapped_mind_comm - GrantControlActions() - talk_to_borer_action.Remove(victim) - - victim.med_hud_set_status() - -/mob/living/simple_animal/borer/verb/punish() - set category = "Borer" - set name = "Punish" - set desc = "Punish your victim." - - if(!victim) - src << "You are not inside a host body." - return - - if(stat != CONSCIOUS) - src << "You cannot do that in your current state." - return - - if(docile) - src << "You are feeling far too docile to do that." - return - - if(chemicals < 75) - src << "You need 75 chems to punish your host." - return - - var/punishment = input("Select a punishment:.", "Punish") as null|anything in list("Blindness","Deafness","Stun") - - if(!punishment) - return - - if(chemicals < 75) - src << "You need 75 chems to punish your host." - return - - switch(punishment) //Hardcoding this stuff. - if("Blindness") - victim.blind_eyes(2) - if("Deafness") - victim.ear_deaf = 20 - if("Stun") - victim.Weaken(10) - - log_game("[src]/([src.ckey]) punished [victim]/([victim.ckey] with [punishment]") - - chemicals -= 75 - - -/mob/living/carbon/proc/release_control() - - set category = "Borer" - set name = "Release Control" - set desc = "Release control of your host's body." - - var/mob/living/simple_animal/borer/B = has_brain_worms() - if(B && B.host_brain) - src << "You withdraw your probosci, releasing control of [B.host_brain]" - - B.detatch() - -//Check for brain worms in head. -/mob/proc/has_brain_worms() - - for(var/I in contents) - if(isborer(I)) - return I - - return FALSE - -/mob/living/carbon/proc/spawn_larvae() - set category = "Borer" - set name = "Reproduce" - set desc = "Spawn several young." - - var/mob/living/simple_animal/borer/B = has_brain_worms() - - if(isbrain(src)) - src << "You need a mouth to be able to do this." - return - if(!B) - return - - if(B.chemicals >= 200) - visible_message("[src] heaves violently, expelling a rush of vomit and a wriggling, sluglike creature!") - B.chemicals -= 200 - - new /obj/effect/decal/cleanable/vomit(get_turf(src)) - playsound(loc, 'sound/effects/splat.ogg', 50, 1) - new /mob/living/simple_animal/borer(get_turf(src), B.generation + 1) - log_game("[src]/([src.ckey]) has spawned a new borer via reproducing.") - else - src << "You need 200 chemicals stored to reproduce." - return - - -/mob/living/simple_animal/borer/proc/transfer_personality(var/client/candidate) - if(!candidate || !candidate.mob) - return - - if(!qdeleted(candidate) || !qdeleted(candidate.mob)) - var/datum/mind/M = create_borer_mind(candidate.ckey) - M.transfer_to(src) - - candidate.mob = src - ckey = candidate.ckey - - if(mind) - mind.store_memory("You must escape with at least [total_borer_hosts_needed] borers with hosts on the shuttle.") - - src << "You are a cortical borer!" - src << "You are a brain slug that worms its way into the head of its victim. Use stealth, persuasion and your powers of mind control to keep you, your host and your eventual spawn safe and warm." - src << "Sugar nullifies your abilities, avoid it at all costs!" - src << "You can speak to your fellow borers by prefixing your messages with ';'. Check out your Borer tab to see your abilities." - src << "You must escape with at least [total_borer_hosts_needed] borers with hosts on the shuttle. To reproduce you must have 100 chemicals and be controlling a host." - -/mob/living/simple_animal/borer/proc/detatch() - if(!victim || !controlling) - return - - controlling = FALSE - - victim.verbs -= /mob/living/carbon/proc/release_control - victim.verbs -= /mob/living/carbon/proc/spawn_larvae - victim.verbs += /mob/living/proc/borer_comm - victim.verbs -= /mob/living/proc/trapped_mind_comm - RemoveControlActions() - talk_to_borer_action.Grant(victim) - - victim.med_hud_set_status() - - if(host_brain) - - // these are here so bans and multikey warnings are not triggered on the wrong people when ckey is changed. - // computer_id and IP are not updated magically on their own in offline mobs -walter0o - - // host -> self - var/h2s_id = victim.computer_id - var/h2s_ip= victim.lastKnownIP - victim.computer_id = null - victim.lastKnownIP = null - - ckey = victim.ckey - mind = victim.mind - - - if(!computer_id) - computer_id = h2s_id - - if(!host_brain.lastKnownIP) - lastKnownIP = h2s_ip - - // brain -> host - var/b2h_id = host_brain.computer_id - var/b2h_ip= host_brain.lastKnownIP - host_brain.computer_id = null - host_brain.lastKnownIP = null - - victim.ckey = host_brain.ckey - - victim.mind = host_brain.mind - - if(!victim.computer_id) - victim.computer_id = b2h_id - - if(!victim.lastKnownIP) - victim.lastKnownIP = b2h_ip - - log_game("[src]/([src.ckey]) released control of [victim]/([victim.ckey]") - - qdel(host_brain) - -/proc/create_borer_mind(key) - var/datum/mind/M = new /datum/mind(key) - M.assigned_role = "Cortical Borer" - M.special_role = "Cortical Borer" - return M - -/mob/living/simple_animal/borer/proc/GrantBorerActions() - infest_host_action.Grant(src) - toggle_hide_action.Grant(src) - freeze_victim_action.Grant(src) - -/mob/living/simple_animal/borer/proc/RemoveBorerActions() - infest_host_action.Remove(src) - toggle_hide_action.Remove(src) - freeze_victim_action.Remove(src) - -/mob/living/simple_animal/borer/proc/GrantInfestActions() - talk_to_host_action.Grant(src) - leave_body_action.Grant(src) - take_control_action.Grant(src) - punish_victim_action.Grant(src) - make_chems_action.Grant(src) - jumpstart_host_action.Grant(src) - -/mob/living/simple_animal/borer/proc/RemoveInfestActions() - talk_to_host_action.Remove(src) - take_control_action.Remove(src) - leave_body_action.Remove(src) - punish_victim_action.Remove(src) - make_chems_action.Remove(src) - jumpstart_host_action.Remove(src) - -/mob/living/simple_animal/borer/proc/GrantControlActions() - talk_to_brain_action.Grant(victim) - give_back_control_action.Grant(victim) - make_larvae_action.Grant(victim) - -/mob/living/simple_animal/borer/proc/RemoveControlActions() - talk_to_brain_action.Remove(victim) - make_larvae_action.Remove(victim) - give_back_control_action.Remove(victim) - -/datum/action/innate/borer - background_icon_state = "bg_alien" - -/datum/action/innate/borer/talk_to_host - name = "Converse with Host" - desc = "Send a silent message to your host." - button_icon_state = "alien_whisper" - -/datum/action/innate/borer/talk_to_host/Activate() - var/mob/living/simple_animal/borer/B = owner - B.Communicate() - -/datum/action/innate/borer/infest_host - name = "Infest" - desc = "Infest a suitable humanoid host." - button_icon_state = "infest" - -/datum/action/innate/borer/infest_host/Activate() - var/mob/living/simple_animal/borer/B = owner - B.infect_victim() - -/datum/action/innate/borer/toggle_hide - name = "Toggle Hide" - desc = "Become invisible to the common eye. Toggled on or off." - button_icon_state = "borer_hiding_false" - -/datum/action/innate/borer/toggle_hide/Activate() - var/mob/living/simple_animal/borer/B = owner - B.hide() - button_icon_state = "borer_hiding_[B.hiding ? "true" : "false"]" - UpdateButtonIcon() - -/datum/action/innate/borer/talk_to_borer - name = "Converse with Borer" - desc = "Communicate mentally with your borer." - button_icon_state = "alien_whisper" - -/datum/action/innate/borer/talk_to_borer/Activate() - var/mob/living/simple_animal/borer/B = owner.has_brain_worms() - B.victim = owner - B.victim.borer_comm() - - -/datum/action/innate/borer/talk_to_brain - name = "Converse with Trapped Mind" - desc = "Communicate mentally with the trapped mind of your host." - button_icon_state = "alien_whisper" - -/datum/action/innate/borer/talk_to_brain/Activate() - var/mob/living/simple_animal/borer/B = owner.has_brain_worms() - B.victim = owner - B.victim.trapped_mind_comm() - -/datum/action/innate/borer/take_control - name = "Assume Control" - desc = "Fully connect to the brain of your host." - button_icon_state = "borer_brain" - -/datum/action/innate/borer/take_control/Activate() - var/mob/living/simple_animal/borer/B = owner - B.bond_brain() - -/datum/action/innate/borer/give_back_control - name = "Release Control" - desc = "Release control of your host's body." - button_icon_state = "borer_leave" - -/datum/action/innate/borer/give_back_control/Activate() - var/mob/living/simple_animal/borer/B = owner.has_brain_worms() - B.victim = owner - B.victim.release_control() - -/datum/action/innate/borer/leave_body - name = "Release Host" - desc = "Slither out of your host." - button_icon_state = "borer_leave" - -/datum/action/innate/borer/leave_body/Activate() - var/mob/living/simple_animal/borer/B = owner - B.release_victim() - -/datum/action/innate/borer/make_chems - name = "Secrete Chemicals" - desc = "Push some chemicals into your host's bloodstream." - icon_icon = 'icons/obj/chemical.dmi' - button_icon_state = "minidispenser" - -/datum/action/innate/borer/make_chems/Activate() - var/mob/living/simple_animal/borer/B = owner - B.secrete_chemicals() - -/datum/action/innate/borer/make_larvae - name = "Reproduce" - desc = "Spawn several young." - button_icon_state = "borer_reproduce" - -/datum/action/innate/borer/make_larvae/Activate() - var/mob/living/simple_animal/borer/B = owner.has_brain_worms() - B.victim = owner - B.victim.spawn_larvae() - -/datum/action/innate/borer/freeze_victim - name = "Paralyze Victim" - desc = "Freeze the limbs of a potential host with supernatural fear." - button_icon_state = "freeze" - -/datum/action/innate/borer/freeze_victim/Activate() - var/mob/living/simple_animal/borer/B = owner - B.dominate_victim() - -/datum/action/innate/borer/punish_victim - name = "Punish" - desc = "Punish your victim." - button_icon_state = "blind" - -/datum/action/innate/borer/punish_victim/Activate() - var/mob/living/simple_animal/borer/B = owner - B.punish() - -/datum/action/innate/borer/jumpstart_host - name = "Jumpstart Host" - desc = "Bring your host back to life." - icon_icon = 'icons/obj/weapons.dmi' - button_icon_state = "defibpaddles0" - -/datum/action/innate/borer/jumpstart_host/Activate() - var/mob/living/simple_animal/borer/B = owner - B.jumpstart() diff --git a/code/game/gamemodes/miniantags/borer/borer_chemicals.dm b/code/game/gamemodes/miniantags/borer/borer_chemicals.dm deleted file mode 100644 index c45de46524..0000000000 --- a/code/game/gamemodes/miniantags/borer/borer_chemicals.dm +++ /dev/null @@ -1,59 +0,0 @@ -/datum/borer_chem - var/chemname - var/chem_desc = "This is a chemical" - var/chemuse = 30 - var/quantity = 10 - -/datum/borer_chem/epinephrine - chemname = "epinephrine" - chem_desc = "Stabilizes critical condition and slowly restores oxygen damage. If overdosed, it will deal toxin and oxyloss damage." - -/datum/borer_chem/leporazine - chemname = "leporazine" - chem_desc = "This keeps a patient's body temperature stable. High doses can allow short periods of unprotected EVA." - chemuse = 75 - -/datum/borer_chem/mannitol - chemname = "mannitol" - chem_desc = "Heals brain damage." - -/datum/borer_chem/bicaridine - chemname = "bicaridine" - chem_desc = "Heals brute damage." - -/datum/borer_chem/kelotane - chemname = "kelotane" - chem_desc = "Heals burn damage." - -/datum/borer_chem/charcoal - chemname = "charcoal" - chem_desc = "Slowly heals toxin damage, will also slowly remove any other chemicals." - -/datum/borer_chem/methamphetamine - chemname = "methamphetamine" - chem_desc = "Reduces stun times, increases stamina and run speed while dealing brain damage. If overdosed it will deal toxin and brain damage." - chemuse = 50 - quantity = 9 - -/datum/borer_chem/salbutamol - chemname = "salbutamol" - chem_desc = "Heals suffocation damage." - -/datum/borer_chem/spacedrugs - chemname = "space_drugs" - chem_desc = "Get your host high as a kite." - chemuse = 75 - -/*/datum/borer_chem/creagent - chemname = "colorful_reagent" - chem_desc = "Change the colour of your host." - chemuse = 50*/ - -/datum/borer_chem/ethanol - chemname = "ethanol" - chem_desc = "The most potent alcoholic 'beverage', with the fastest toxicity." - chemuse = 50 - -/datum/borer_chem/rezadone - chemname = "rezadone" - chem_desc = "Heals cellular damage." \ No newline at end of file diff --git a/code/game/gamemodes/miniantags/borer/borer_event.dm b/code/game/gamemodes/miniantags/borer/borer_event.dm deleted file mode 100644 index 07a75c8b91..0000000000 --- a/code/game/gamemodes/miniantags/borer/borer_event.dm +++ /dev/null @@ -1,49 +0,0 @@ -/datum/round_event_control/borer - name = "Borer" - typepath = /datum/round_event/borer - weight = 15 - max_occurrences = 0 - min_players = 15 - earliest_start = 12000 - -/datum/round_event/borer - announceWhen = 2400 //Borers get 4 minutes till the crew tries to murder them. - var/successSpawn = 0 - - var/spawncount = 2 - -/datum/round_event/borer/setup() - spawncount = rand(2, 4) - -/datum/round_event/borer/announce() - if(successSpawn) - priority_announce("Unidentified lifesigns detected coming aboard [station_name()]. Secure any exterior access, including ducting and ventilation.", "Lifesign Alert", 'sound/AI/aliens.ogg') //Borers seem like normal xenomorphs. - - -/datum/round_event/borer/start() - - var/list/vents = list() - for(var/obj/machinery/atmospherics/components/unary/vent_pump/temp_vent in machines) - if(qdeleted(temp_vent)) - continue - if(temp_vent.loc.z == ZLEVEL_STATION && !temp_vent.welded) - var/datum/pipeline/temp_vent_parent = temp_vent.PARENT1 - if(temp_vent_parent.other_atmosmch.len > 20) - vents += temp_vent - - if(!vents.len) - message_admins("An event attempted to spawn a borer but no suitable vents were found. Shutting down.") - return kill() - - var/total_humans = 0 - for(var/mob/living/carbon/human/H in mob_list) - if(H.stat != DEAD) - total_humans++ - - total_borer_hosts_needed = round(1 + total_humans/6) - - while(spawncount >= 1 && vents.len) - var/obj/vent = pick_n_take(vents) - new /mob/living/simple_animal/borer(vent.loc) - successSpawn = TRUE - spawncount-- diff --git a/code/game/gamemodes/miniantags/borer/borer_html.dm b/code/game/gamemodes/miniantags/borer/borer_html.dm deleted file mode 100644 index e2544a1d0b..0000000000 --- a/code/game/gamemodes/miniantags/borer/borer_html.dm +++ /dev/null @@ -1,125 +0,0 @@ - -/mob/living/simple_animal/borer/proc/get_html_template(content) - var/html = {" - - - Borer Chemicals - - - - - - - -
    -

    Borer Chemicals

    -
    - - [content] - -
    "} - return html \ No newline at end of file diff --git a/code/game/gamemodes/miniantags/borer/borer_topic.dm b/code/game/gamemodes/miniantags/borer/borer_topic.dm deleted file mode 100644 index c9c3c055a7..0000000000 --- a/code/game/gamemodes/miniantags/borer/borer_topic.dm +++ /dev/null @@ -1,37 +0,0 @@ - -/mob/living/simple_animal/borer/Topic(href, href_list, hsrc) - if(href_list["borer_use_chem"]) - locate(href_list["src"]) - if(!istype(src, /mob/living/simple_animal/borer)) - return - - var/topic_chem = href_list["borer_use_chem"] - var/datum/borer_chem/C - - for(var/datum in typesof(/datum/borer_chem)) - var/datum/borer_chem/test = new datum() - if(test.chemname == topic_chem) - C = test - break - - if(!istype(C, /datum/borer_chem)) - return - - if(!C || !victim || controlling || !src || stat) - return - - if(!istype(C, /datum/borer_chem)) - return - - if(chemicals < C.chemuse) - src << "You need [C.chemuse] chemicals stored to use this chemical!" - return - - src << "You squirt a measure of [C.chemname] from your reservoirs into [victim]'s bloodstream." - victim.reagents.add_reagent(C.chemname, C.quantity) - chemicals -= C.chemuse - log_game("[src]/([src.ckey]) has injected [C.chemname] into their host [victim]/([victim.ckey])") - - src << output(chemicals, "ViewBorer\ref[src]Chems.browser:update_chemicals") - - ..() \ No newline at end of file diff --git a/code/game/gamemodes/miniantags/bot_swarm/swarmer.dm b/code/game/gamemodes/miniantags/bot_swarm/swarmer.dm index b4765129cd..531db5bb7b 100644 --- a/code/game/gamemodes/miniantags/bot_swarm/swarmer.dm +++ b/code/game/gamemodes/miniantags/bot_swarm/swarmer.dm @@ -26,7 +26,7 @@ "After some fiddling, you find a way to disable [src]'s power source.", "You hear clicking.") name = "deactivated swarmer" - desc = "A shell of swarmer that was completely powered down. It can no longer activate itself." + desc = "A shell of swarmer that was completely powered down. It no longer can activate itself." crit_fail = 1 /obj/item/device/unactivated_swarmer/attack_ghost(mob/user) @@ -50,7 +50,7 @@ /obj/item/device/unactivated_swarmer/deactivated name = "deactivated swarmer" - desc = "A shell of swarmer that was completely powered down. It can no longer activate itself." + desc = "A shell of swarmer that was completely powered down. It no longer can activate itself." crit_fail = 1 @@ -83,39 +83,35 @@ hud_possible = list(ANTAG_HUD, DIAG_STAT_HUD, DIAG_HUD) languages_spoken = SWARMER languages_understood = SWARMER - obj_damage = 0 environment_smash = 0 attacktext = "shocks" attack_sound = 'sound/effects/EMPulse.ogg' friendly = "pinches" - speed = 0 + speed = 1 faction = list("swarmer") AIStatus = AI_OFF pass_flags = PASSTABLE mob_size = MOB_SIZE_TINY - ventcrawler = VENTCRAWLER_ALWAYS + ventcrawler = 2 ranged = 1 projectiletype = /obj/item/projectile/beam/disabler ranged_cooldown_time = 20 projectilesound = 'sound/weapons/taser2.ogg' - loot = list(/obj/effect/decal/cleanable/robot_debris, /obj/item/weapon/ore/bluespace_crystal) + loot = list(/obj/effect/decal/cleanable/robot_debris, /obj/item/weapon/ore/bluespace_crystal/artificial) del_on_death = 1 deathmessage = "explodes with a sharp pop!" var/resources = 0 //Resource points, generated by consuming metal/glass var/max_resources = 100 - var/login_text_dump = {" - You are a swarmer, a weapon of a long dead civilization. Until further orders from your original masters are received, you must continue to consume and replicate. - Clicking on any object will try to consume it, either deconstructing it into its components, destroying it, or integrating any materials it has into you if successful. - Ctrl-Clicking on a mob will attempt to remove it from the area and place it in a safe environment for storage. - Objectives: - 1. Consume resources and replicate until there are no more resources left. - 2. Ensure that this location is fit for invasion at a later date; do not perform actions that would render it dangerous or inhospitable. - 3. Biological resources will be harvested at a later date; do not harm them. - "} /mob/living/simple_animal/hostile/swarmer/Login() ..() - src << login_text_dump + src << "You are a swarmer, a weapon of a long dead civilization. Until further orders from your original masters are received, you must continue to consume and replicate." + src << "Clicking on any object will try to consume it, either deconstructing it into its components, destroying it, or integrating any materials it has into you if successful." + src << "Ctrl-Clicking on a mob will attempt to remove it from the area and place it in a safe environment for storage." + src << "Objectives:" + src << "1. Consume resources and replicate until there are no more resources left." + src << "2. Ensure that this location is fit for invasion at a later date; do not perform actions that would render it dangerous or inhospitable." + src << "3. Biological resources will be harvested at a later date; do not harm them." /mob/living/simple_animal/hostile/swarmer/New() ..() @@ -126,14 +122,10 @@ /mob/living/simple_animal/hostile/swarmer/med_hud_set_health() var/image/holder = hud_list[DIAG_HUD] - var/icon/I = icon(icon, icon_state, dir) - holder.pixel_y = I.Height() - world.icon_size holder.icon_state = "huddiag[RoundDiagBar(health/maxHealth)]" /mob/living/simple_animal/hostile/swarmer/med_hud_set_status() var/image/holder = hud_list[DIAG_STAT_HUD] - var/icon/I = icon(icon, icon_state, dir) - holder.pixel_y = I.Height() - world.icon_size holder.icon_state = "hudstat" /mob/living/simple_animal/hostile/swarmer/Stat() @@ -141,13 +133,6 @@ if(statpanel("Status")) stat("Resources:",resources) -/mob/living/simple_animal/hostile/swarmer/handle_inherent_channels(message, message_mode) - if(message_mode == MODE_BINARY) - swarmer_chat(message) - return ITALICS | REDUCE_RANGE - else - . = ..() - /mob/living/simple_animal/hostile/swarmer/get_spans() return ..() | SPAN_ROBOT @@ -183,180 +168,117 @@ /atom/proc/swarmer_act(mob/living/simple_animal/hostile/swarmer/S) S.DisIntegrate(src) - return TRUE //return TRUE/FALSE whether or not an AI swarmer should try this swarmer_act() again, NOT whether it succeeded. - -/turf/closed/indestructible/swarmer_act() - return FALSE - -/obj/swarmer_act() - if(resistance_flags & INDESTRUCTIBLE) - return FALSE - return ..() /obj/item/swarmer_act(mob/living/simple_animal/hostile/swarmer/S) - return S.Integrate(src) + S.Integrate(src) /obj/item/weapon/gun/swarmer_act()//Stops you from eating the entire armory - return FALSE + return /turf/open/floor/swarmer_act()//ex_act() on turf calls it on its contents, this is to prevent attacking mobs by DisIntegrate()'ing the floor - return FALSE - -/obj/structure/lattice/catwalk/swarmer_catwalk/swarmer_act() - return FALSE - -/obj/structure/swarmer/swarmer_act(mob/living/simple_animal/hostile/swarmer/S) - if(S.AIStatus == AI_ON) - return FALSE - else - return ..() - -/obj/effect/swarmer_act() - return FALSE - -/obj/effect/decal/cleanable/robot_debris/swarmer_act(mob/living/simple_animal/hostile/swarmer/S) - S.DisIntegrate(src) - qdel(src) - return TRUE - -/obj/structure/flora/swarmer_act() - return FALSE - -/turf/open/floor/plating/lava/swarmer_act() - if(!is_safe()) - new /obj/structure/lattice/catwalk/swarmer_catwalk(src) - return FALSE + return /obj/machinery/atmospherics/swarmer_act() - return FALSE + return /obj/structure/disposalpipe/swarmer_act() - return FALSE + return /obj/machinery/swarmer_act(mob/living/simple_animal/hostile/swarmer/S) S.DismantleMachine(src) - return TRUE /obj/machinery/light/swarmer_act(mob/living/simple_animal/hostile/swarmer/S) S.DisIntegrate(src) - return TRUE /obj/machinery/door/swarmer_act(mob/living/simple_animal/hostile/swarmer/S) S.DisIntegrate(src) - return TRUE /obj/machinery/camera/swarmer_act(mob/living/simple_animal/hostile/swarmer/S) S.DisIntegrate(src) toggle_cam(S, 0) - return TRUE /obj/machinery/particle_accelerator/control_box/swarmer_act(mob/living/simple_animal/hostile/swarmer/S) S.DisIntegrate(src) - return TRUE /obj/machinery/field/generator/swarmer_act(mob/living/simple_animal/hostile/swarmer/S) S.DisIntegrate(src) - return TRUE /obj/machinery/gravity_generator/swarmer_act(mob/living/simple_animal/hostile/swarmer/S) S.DisIntegrate(src) - return TRUE /obj/machinery/vending/swarmer_act(mob/living/simple_animal/hostile/swarmer/S)//It's more visually interesting than dismantling the machine S.DisIntegrate(src) - return TRUE /obj/machinery/turretid/swarmer_act(mob/living/simple_animal/hostile/swarmer/S) S.DisIntegrate(src) - return TRUE /obj/machinery/chem_dispenser/swarmer_act(mob/living/simple_animal/hostile/swarmer/S) S << "The volatile chemicals in this machine would destroy us. Aborting." - return FALSE /obj/machinery/nuclearbomb/swarmer_act(mob/living/simple_animal/hostile/swarmer/S) S << "This device's destruction would result in the extermination of everything in the area. Aborting." - return FALSE /obj/machinery/dominator/swarmer_act(mob/living/simple_animal/hostile/swarmer/S) S << "This device is attempting to corrupt our entire network; attempting to interact with it is too risky. Aborting." - return FALSE /obj/effect/decal/cleanable/crayon/gang/swarmer_act(mob/living/simple_animal/hostile/swarmer/S) S << "Searching... sensor malfunction! Target lost. Aborting." - return FALSE /obj/effect/rune/swarmer_act(mob/living/simple_animal/hostile/swarmer/S) S << "Searching... sensor malfunction! Target lost. Aborting." - return FALSE /obj/structure/reagent_dispensers/fueltank/swarmer_act(mob/living/simple_animal/hostile/swarmer/S) S << "Destroying this object would cause a chain reaction. Aborting." - return FALSE /obj/structure/cable/swarmer_act(mob/living/simple_animal/hostile/swarmer/S) S << "Disrupting the power grid would bring no benefit to us. Aborting." - return FALSE /obj/machinery/portable_atmospherics/canister/swarmer_act(mob/living/simple_animal/hostile/swarmer/S) S << "An inhospitable area may be created as a result of destroying this object. Aborting." - return FALSE /obj/machinery/telecomms/swarmer_act(mob/living/simple_animal/hostile/swarmer/S) S << "This communications relay should be preserved, it will be a useful resource to our masters in the future. Aborting." - return FALSE /obj/machinery/message_server/swarmer_act(mob/living/simple_animal/hostile/swarmer/S) S << "This communications relay should be preserved, it will be a useful resource to our masters in the future. Aborting." - return FALSE /obj/machinery/blackbox_recorder/swarmer_act(mob/living/simple_animal/hostile/swarmer/S) S << "This machine has recorded large amounts of data on this structure and its inhabitants, it will be a useful resource to our masters in the future. Aborting. " - return FALSE /obj/machinery/power/swarmer_act(mob/living/simple_animal/hostile/swarmer/S) S << "Disrupting the power grid would bring no benefit to us. Aborting." - return FALSE /obj/machinery/gateway/swarmer_act(mob/living/simple_animal/hostile/swarmer/S) S << "This bluespace source will be important to us later. Aborting." - return FALSE /turf/closed/wall/swarmer_act(mob/living/simple_animal/hostile/swarmer/S) for(var/turf/T in range(1, src)) - if(isspaceturf(T) || istype(T.loc, /area/space)) + if(istype(T, /turf/open/space) || istype(T.loc, /area/space)) S << "Destroying this object has the potential to cause a hull breach. Aborting." - S.target = null - return TRUE - return ..() + return + ..() /obj/structure/window/swarmer_act(mob/living/simple_animal/hostile/swarmer/S) for(var/turf/T in range(1, src)) - if(isspaceturf(T) || istype(T.loc, /area/space)) + if(istype(T, /turf/open/space) || istype(T.loc, /area/space)) S << "Destroying this object has the potential to cause a hull breach. Aborting." - S.target = null - return TRUE - return ..() + return + ..() /obj/item/stack/cable_coil/swarmer_act(mob/living/simple_animal/hostile/swarmer/S)//Wiring would be too effective as a resource S << "This object does not contain enough materials to work with." - return FALSE /obj/machinery/porta_turret/swarmer_act(mob/living/simple_animal/hostile/swarmer/S) S << "Attempting to dismantle this machine would result in an immediate counterattack. Aborting." - return FALSE /mob/living/swarmer_act(mob/living/simple_animal/hostile/swarmer/S) S.DisperseTarget(src) - return TRUE /mob/living/simple_animal/slime/swarmer_act(mob/living/simple_animal/hostile/swarmer/S) S << "This biological resource is somehow resisting our bluespace transceiver. Aborting." - return FALSE /obj/machinery/droneDispenser/swarmer/swarmer_act(mob/living/simple_animal/hostile/swarmer/S) S << "This object is receiving unactivated swarmer shells to help us. Aborting." - return FALSE /obj/item/device/unactivated_swarmer/swarmer_act(mob/living/simple_animal/hostile/swarmer/S) if(S.resources + 50 > S.max_resources) @@ -364,11 +286,10 @@ else ..() S.resources += 49 //refund the whole thing - return FALSE //would logically be TRUE, but we don't want AI swarmers eating player spawn chances. ////END CTRL CLICK FOR SWARMERS//// -/mob/living/simple_animal/hostile/swarmer/proc/Fabricate(atom/fabrication_object,fabrication_cost = 0) +/mob/living/simple_animal/hostile/swarmer/proc/Fabricate(var/atom/fabrication_object,var/fabrication_cost = 0) if(!isturf(loc)) src << "This is not a suitable location for fabrication. We need more space." if(resources >= fabrication_cost) @@ -376,13 +297,13 @@ else src << "You do not have the necessary resources to fabricate this object." return 0 - return new fabrication_object(loc) + new fabrication_object(loc) + return 1 - -/mob/living/simple_animal/hostile/swarmer/proc/Integrate(obj/item/target) +/mob/living/simple_animal/hostile/swarmer/proc/Integrate(var/obj/item/target) if(resources >= max_resources) src << "We cannot hold more materials!" - return TRUE + return if((target.materials[MAT_METAL]) || (target.materials[MAT_GLASS])) resources++ do_attack_animation(target) @@ -395,26 +316,24 @@ var/obj/item/stack/S = target S.use(1) if(S.amount) - return TRUE + return qdel(target) - return TRUE else src << "\the [target] is incompatible with our internal matter recycler." - return FALSE + return - -/mob/living/simple_animal/hostile/swarmer/proc/DisIntegrate(atom/movable/target) +/mob/living/simple_animal/hostile/swarmer/proc/DisIntegrate(var/atom/movable/target) PoolOrNew(/obj/effect/overlay/temp/swarmer/disintegration, get_turf(target)) do_attack_animation(target) changeNext_move(CLICK_CD_MELEE) target.ex_act(3) + return - -/mob/living/simple_animal/hostile/swarmer/proc/DisperseTarget(mob/living/target) +/mob/living/simple_animal/hostile/swarmer/proc/DisperseTarget(var/mob/living/target) if(target == src) return - if(z != ZLEVEL_STATION && z != ZLEVEL_LAVALAND) + if(src.z != ZLEVEL_STATION) src << "Our bluespace transceiver cannot \ locate a viable bluespace link, our teleportation abilities \ are useless in this area." @@ -426,12 +345,7 @@ if(!do_mob(src, target, 30)) return - var/turf/open/floor/F - switch(z) //Only the station/lavaland - if(ZLEVEL_STATION) - F =find_safe_turf(zlevels = ZLEVEL_STATION, extended_safety_checks = TRUE) - if(ZLEVEL_LAVALAND) - F = find_safe_turf(zlevels = ZLEVEL_LAVALAND, extended_safety_checks = TRUE) + var/turf/open/floor/F = find_safe_turf(zlevel=ZLEVEL_STATION) if(!F) return // If we're getting rid of a human, slap some energy cuffs on @@ -449,7 +363,7 @@ playsound(src,'sound/effects/sparks4.ogg',50,1) do_teleport(target, F, 0) -/mob/living/simple_animal/hostile/swarmer/proc/DismantleMachine(obj/machinery/target) +/mob/living/simple_animal/hostile/swarmer/proc/DismantleMachine(var/obj/machinery/target) do_attack_animation(target) src << "We begin to dismantle this machine. We will need to be uninterrupted." var/obj/effect/overlay/temp/swarmer/dismantle/D = PoolOrNew(/obj/effect/overlay/temp/swarmer/dismantle, get_turf(target)) @@ -474,6 +388,16 @@ qdel(target) +/obj/effect/swarmer //Default swarmer effect object visual feedback + name = "swarmer ui" + desc = null + gender = NEUTER + icon = 'icons/mob/swarmer.dmi' + icon_state = "ui_light" + mouse_opacity = 0 + layer = MOB_LAYER + unacidable = 1 + /obj/effect/overlay/temp/swarmer //temporary swarmer visual feedback objects icon = 'icons/mob/swarmer.dmi' layer = BELOW_MOB_LAYER @@ -494,81 +418,104 @@ icon_state = "integrate" duration = 5 -/obj/structure/swarmer //Default swarmer effect object visual feedback - name = "swarmer ui" - desc = null - gender = NEUTER - icon = 'icons/mob/swarmer.dmi' - icon_state = "ui_light" - layer = MOB_LAYER - resistance_flags = FIRE_PROOF | UNACIDABLE | ACID_PROOF +/obj/effect/swarmer/destructible //Default destroyable object for swarmer constructions luminosity = 1 - obj_integrity = 30 - max_integrity = 30 - anchored = 1 + mouse_opacity = 1 + var/health = 30 -/obj/structure/swarmer/play_attack_sound(damage_amount, damage_type = BRUTE, damage_flag = 0) +/obj/effect/swarmer/destructible/proc/take_damage(damage, damage_type = BRUTE, sound_effect = 1) switch(damage_type) if(BRUTE) - playsound(loc, 'sound/weapons/Egloves.ogg', 80, 1) + if(sound_effect) + playsound(loc, 'sound/weapons/Egloves.ogg', 80, 1) if(BURN) - playsound(src.loc, 'sound/items/Welder.ogg', 100, 1) + if(sound_effect) + playsound(src.loc, 'sound/items/Welder.ogg', 100, 1) + else + return + health -= damage + if(health <= 0) + qdel(src) -/obj/structure/swarmer/emp_act() +/obj/effect/swarmer/destructible/bullet_act(obj/item/projectile/P) + . = ..() + take_damage(P.damage, P.damage_type) + +/obj/effect/swarmer/destructible/attacked_by(obj/item/I, mob/living/user) + ..() + take_damage(I.force, I.damtype) + +/obj/effect/swarmer/destructible/ex_act() qdel(src) -/obj/structure/swarmer/trap - name = "swarmer trap" - desc = "A quickly assembled trap that electrifies living beings and overwhelms machine sensors. Will not retain its form if damaged enough." - icon_state = "trap" - obj_integrity = 10 - max_integrity = 10 - density = 0 +/obj/effect/swarmer/destructible/blob_act(obj/effect/blob/B) + qdel(src) -/obj/structure/swarmer/trap/Crossed(atom/movable/AM) - if(isliving(AM)) - var/mob/living/L = AM - if(!istype(L, /mob/living/simple_animal/hostile/swarmer)) - playsound(loc,'sound/effects/snap.ogg',50, 1, -1) - L.electrocute_act(0, src, 1, 1, 1) - if(iscyborg(L)) - L.Weaken(5) - qdel(src) - ..() +/obj/effect/swarmer/destructible/emp_act() + qdel(src) + +/obj/effect/swarmer/destructible/attack_alien(mob/living/user) + user.do_attack_animation(src) + user.changeNext_move(CLICK_CD_MELEE) + take_damage(rand(20,30)) + +/obj/effect/swarmer/destructible/attack_animal(mob/living/simple_animal/S) + S.do_attack_animation(src) + S.changeNext_move(CLICK_CD_MELEE) + if(S.melee_damage_upper) + take_damage(rand(S.melee_damage_lower, S.melee_damage_upper), S.melee_damage_type) /mob/living/simple_animal/hostile/swarmer/proc/CreateTrap() set name = "Create trap" set category = "Swarmer" set desc = "Creates a simple trap that will non-lethally electrocute anything that steps on it. Costs 5 resources" - if(locate(/obj/structure/swarmer/trap) in loc) + if(/obj/effect/swarmer/destructible/trap in loc) src << "There is already a trap here. Aborting." return - Fabricate(/obj/structure/swarmer/trap, 5) + Fabricate(/obj/effect/swarmer/destructible/trap, 5) +/obj/effect/swarmer/destructible/trap + name = "swarmer trap" + desc = "A quickly assembled trap that electrifies living beings and overwhelms machine sensors. Will not retain its form if damaged enough." + icon_state = "trap" + luminosity = 1 + health = 10 + +/obj/effect/swarmer/destructible/trap/Crossed(var/atom/movable/AM) + if(isliving(AM)) + var/mob/living/L = AM + if(!istype(L, /mob/living/simple_animal/hostile/swarmer)) + playsound(loc,'sound/effects/snap.ogg',50, 1, -1) + L.electrocute_act(0, src, 1, 1) + if(isrobot(L)) + L.Weaken(5) + qdel(src) + ..() /mob/living/simple_animal/hostile/swarmer/proc/CreateBarricade() set name = "Create barricade" set category = "Swarmer" set desc = "Creates a barricade that will stop anything but swarmers and disabler beams from passing through." - if(locate(/obj/structure/swarmer/blockade) in loc) + if(/obj/effect/swarmer/destructible/blockade in loc) src << "There is already a blockade here. Aborting." return if(resources < 5) src << "We do not have the resources for this!" return if(do_mob(src, src, 10)) - Fabricate(/obj/structure/swarmer/blockade, 5) + Fabricate(/obj/effect/swarmer/destructible/blockade, 5) + return - -/obj/structure/swarmer/blockade +/obj/effect/swarmer/destructible/blockade name = "swarmer blockade" desc = "A quickly assembled energy blockade. Will not retain its form if damaged enough, but disabler beams and swarmers pass right through." icon_state = "barricade" luminosity = 1 - obj_integrity = 50 - max_integrity = 50 + health = 50 + density = 1 + anchored = 1 -/obj/structure/swarmer/blockade/CanPass(atom/movable/O) +/obj/effect/swarmer/destructible/blockade/CanPass(atom/movable/O) if(isswarmer(O)) return 1 if(istype(O, /obj/item/projectile/beam/disabler)) @@ -586,15 +533,9 @@ src << "This is not a suitable location for replicating ourselves. We need more room." return if(do_mob(src, src, 100)) - var/createtype = SwarmerTypeToCreate() - if(createtype && Fabricate(createtype, 50)) + if(Fabricate(/obj/item/device/unactivated_swarmer, 50)) playsound(loc,'sound/items/poster_being_created.ogg',50, 1, -1) - -/mob/living/simple_animal/hostile/swarmer/proc/SwarmerTypeToCreate() - return /obj/item/device/unactivated_swarmer - - /mob/living/simple_animal/hostile/swarmer/proc/RepairSelf() set name = "Self Repair" set category = "Swarmer" @@ -608,21 +549,18 @@ /mob/living/simple_animal/hostile/swarmer/proc/ToggleLight() if(!luminosity) - SetLuminosity(3) + set_light(3) else - SetLuminosity(0) - -/mob/living/simple_animal/hostile/swarmer/proc/swarmer_chat(msg) - var/rendered = "Swarm communication - [src] [say_quote(msg, get_spans())]" - for(var/mob/M in mob_list) - if(isswarmer(M)) - M << rendered - if(isobserver(M)) - var/link = FOLLOW_LINK(M, src) - M << "[link] [rendered]" + set_light(0) /mob/living/simple_animal/hostile/swarmer/proc/ContactSwarmers() var/message = input(src, "Announce to other swarmers", "Swarmer contact") // TODO get swarmers their own colour rather than just boldtext + var/rendered = "Swarm communication - [src] states: [say_quote(message, get_spans())]" if(message) - swarmer_chat(message) + for(var/mob/M in mob_list) + if(isswarmer(M)) + M << rendered + if(isobserver(M)) + var/link = FOLLOW_LINK(M, src) + M << "[link] [rendered]" diff --git a/code/game/gamemodes/miniantags/morph/morph.dm b/code/game/gamemodes/miniantags/morph/morph.dm index cd862ff170..2fecdbe878 100644 --- a/code/game/gamemodes/miniantags/morph/morph.dm +++ b/code/game/gamemodes/miniantags/morph/morph.dm @@ -11,17 +11,17 @@ icon_living = "morph" icon_dead = "morph_dead" speed = 2 - a_intent = INTENT_HARM + a_intent = "harm" stop_automated_movement = 1 status_flags = CANPUSH pass_flags = PASSTABLE - ventcrawler = VENTCRAWLER_ALWAYS + ventcrawler = 2 atmos_requirements = list("min_oxy" = 0, "max_oxy" = 0, "min_tox" = 0, "max_tox" = 0, "min_co2" = 0, "max_co2" = 0, "min_n2" = 0, "max_n2" = 0) minbodytemp = 0 maxHealth = 150 health = 150 healable = 0 - obj_damage = 50 + environment_smash = 1 melee_damage_lower = 20 melee_damage_upper = 20 see_in_dark = 8 @@ -53,14 +53,14 @@ return /mob/living/simple_animal/hostile/morph/med_hud_set_health() - if(morphed && !isliving(form)) + if(morphed) var/image/holder = hud_list[HEALTH_HUD] holder.icon_state = null return //we hide medical hud while morphed ..() /mob/living/simple_animal/hostile/morph/med_hud_set_status() - if(morphed && !isliving(form)) + if(morphed) var/image/holder = hud_list[STATUS_HUD] holder.icon_state = null return //we hide medical hud while morphed @@ -100,7 +100,6 @@ visible_message("[src] suddenly twists and changes shape, becoming a copy of [target]!", \ "You twist your body and assume the form of [target].") appearance = target.appearance - alpha = max(alpha, 150) //fucking chameleons transform = initial(transform) pixel_y = initial(pixel_y) pixel_x = initial(pixel_x) @@ -122,6 +121,8 @@ form = null alpha = initial(alpha) + //anim(loc,src,'icons/mob/mob.dmi',,"morph",,src.dir) + visible_message("[src] suddenly collapses in on itself, dissolving into a pile of green flesh!", \ "You reform to your normal body.") name = initial(name) @@ -179,17 +180,17 @@ return ..() /mob/living/simple_animal/hostile/morph/AttackingTarget() - if(isliving(target)) //Eat Corpses to regen health + if(isliving(target)) // Eat Corpses to regen health var/mob/living/L = target if(L.stat == DEAD) if(do_after(src, 30, target = L)) if(eat(L)) adjustHealth(-50) return - else if(istype(target,/obj/item)) //Eat items just to be annoying + else if(istype(target,/obj/item)) // Eat items just to be annoying var/obj/item/I = target if(!I.anchored) - if(do_after(src, 20, target = I)) + if(do_after(src,20, target = I)) eat(I) return target.attack_animal(src) @@ -211,7 +212,7 @@ if(!candidates.len) return NOT_ENOUGH_PLAYERS - var/mob/dead/selected = pick_n_take(candidates) + var/mob/dead/selected = popleft(candidates) var/datum/mind/player_mind = new /datum/mind(selected.key) player_mind.active = 1 diff --git a/code/game/gamemodes/miniantags/readme.txt b/code/game/gamemodes/miniantags/readme.txt index b619ff4f42..8ade34bf2e 100644 --- a/code/game/gamemodes/miniantags/readme.txt +++ b/code/game/gamemodes/miniantags/readme.txt @@ -1,7 +1,6 @@ This folder contains all "mini-antagonists" - antagonists that can still spice up the round but aren't enough to be a roundtype in their own right. Currently, that list consists of: -Abductors - -Cortical borers -Swarmers -Prophets of sin -The Jungle Fever virus (infected monkey bites human, human becomes another infected monkey) diff --git a/code/game/gamemodes/miniantags/revenant/revenant.dm b/code/game/gamemodes/miniantags/revenant/revenant.dm index d220692a8e..e903d7b1c4 100644 --- a/code/game/gamemodes/miniantags/revenant/revenant.dm +++ b/code/game/gamemodes/miniantags/revenant/revenant.dm @@ -38,7 +38,7 @@ status_flags = 0 wander = 0 density = 0 - movement_type = FLYING + flying = 1 anchored = 1 mob_size = MOB_SIZE_TINY pass_flags = PASSTABLE | PASSGRILLE | PASSMOB @@ -60,7 +60,6 @@ var/list/drained_mobs = list() //Cannot harvest the same mob twice var/perfectsouls = 0 //How many perfect, regen-cap increasing souls the revenant has. //TODO, add objective for getting a perfect soul(s?) var/image/ghostimage = null //Visible to ghost with darkness off - var/generated_objectives_and_spells = FALSE /mob/living/simple_animal/revenant/New() ..() @@ -69,31 +68,28 @@ ghost_darkness_images |= ghostimage updateallghostimages() -/mob/living/simple_animal/revenant/Login() - ..() - src << "You are a revenant." - src << "Your formerly mundane spirit has been infused with alien energies and empowered into a revenant." - src << "You are not dead, not alive, but somewhere in between. You are capable of limited interaction with both worlds." - src << "You are invincible and invisible to everyone but other ghosts. Most abilities will reveal you, rendering you vulnerable." - src << "To function, you are to drain the life essence from humans. This essence is a resource, as well as your health, and will power all of your abilities." - src << "You do not remember anything of your past lives, nor will you remember anything about this one after your death." - src << "Be sure to read the wiki page at https://tgstation13.org/wiki/Revenant to learn more." - if(!generated_objectives_and_spells) - generated_objectives_and_spells = TRUE - mind.remove_all_antag() - mind.wipe_memory() - src << 'sound/effects/ghost.ogg' - var/datum/objective/revenant/objective = new - objective.owner = mind - mind.objectives += objective - src << "Objective #1: [objective.explanation_text]" - var/datum/objective/revenantFluff/objective2 = new - objective2.owner = mind - mind.objectives += objective2 - src << "Objective #2: [objective2.explanation_text]" - mind.assigned_role = "revenant" - mind.special_role = "Revenant" - ticker.mode.traitors |= mind //Necessary for announcing + spawn(5) + if(src.mind) + src.mind.remove_all_antag() + src.mind.wipe_memory() + src << 'sound/effects/ghost.ogg' + src << "
    " + src << "You are a revenant." + src << "Your formerly mundane spirit has been infused with alien energies and empowered into a revenant." + src << "You are not dead, not alive, but somewhere in between. You are capable of limited interaction with both worlds." + src << "You are invincible and invisible to everyone but other ghosts. Most abilities will reveal you, rendering you vulnerable." + src << "To function, you are to drain the life essence from humans. This essence is a resource, as well as your health, and will power all of your abilities." + src << "You do not remember anything of your past lives, nor will you remember anything about this one after your death." + src << "Be sure to read the wiki page at https://tgstation13.org/wiki/Revenant to learn more." + var/datum/objective/revenant/objective = new + objective.owner = src.mind + src.mind.objectives += objective + src << "Objective #1: [objective.explanation_text]" + var/datum/objective/revenantFluff/objective2 = new + objective2.owner = src.mind + src.mind.objectives += objective2 + src << "Objective #2: [objective2.explanation_text]" + ticker.mode.traitors |= src.mind //Necessary for announcing AddSpell(new /obj/effect/proc_holder/spell/targeted/night_vision/revenant(null)) AddSpell(new /obj/effect/proc_holder/spell/targeted/revenant_transmit(null)) AddSpell(new /obj/effect/proc_holder/spell/aoe_turf/revenant/defile(null)) @@ -101,6 +97,7 @@ AddSpell(new /obj/effect/proc_holder/spell/aoe_turf/revenant/blight(null)) AddSpell(new /obj/effect/proc_holder/spell/aoe_turf/revenant/malfunction(null)) + //Life, Stat, Hud Updates, and Say /mob/living/simple_animal/revenant/Life() if(revealed && essence <= 0) @@ -150,9 +147,9 @@ log_say("[key_name(src)] : [message]") var/rendered = "[src] says, \"[message]\"" for(var/mob/M in mob_list) - if(isrevenant(M)) + if(istype(M, /mob/living/simple_animal/revenant)) M << rendered - else if(isobserver(M)) + if(isobserver(M)) var/link = FOLLOW_LINK(M, src) M << "[link] [rendered]" return @@ -165,7 +162,7 @@ /mob/living/simple_animal/revenant/ex_act(severity, target) return 1 //Immune to the effects of explosions. -/mob/living/simple_animal/revenant/blob_act(obj/structure/blob/B) +/mob/living/simple_animal/revenant/blob_act(obj/effect/blob/B) return //blah blah blobs aren't in tune with the spirit world, or something. /mob/living/simple_animal/revenant/singularity_act() @@ -186,7 +183,7 @@ adjustBruteLoss(25) //hella effective inhibited = 1 update_action_buttons_icon() - addtimer(src, "reset_inhibit", 30, TIMER_NORMAL) + addtimer(src, "reset_inhibit", 30, FALSE) /mob/living/simple_animal/revenant/proc/reset_inhibit() if(src) @@ -284,7 +281,7 @@ if(!src) return var/turf/T = get_turf(src) - if(isclosedturf(T)) + if(istype(T, /turf/closed)) src << "You cannot use abilities from inside of a wall." return 0 for(var/obj/O in T) @@ -323,7 +320,7 @@ desc = "A pile of fine blue dust. Small tendrils of violet mist swirl around it." icon = 'icons/effects/effects.dmi' icon_state = "revenantEctoplasm" - w_class = WEIGHT_CLASS_SMALL + w_class = 2 var/essence = 75 //the maximum essence of the reforming revenant var/reforming = 1 var/inert = 0 @@ -331,7 +328,7 @@ /obj/item/weapon/ectoplasm/revenant/New() ..() - addtimer(src, "try_reform", 600, TIMER_NORMAL) + addtimer(src, "try_reform", 600, FALSE) /obj/item/weapon/ectoplasm/revenant/proc/try_reform() if(src) @@ -420,7 +417,7 @@ ..() /datum/objective/revenant/check_completion() - if(!isrevenant(owner.current)) + if(!istype(owner.current, /mob/living/simple_animal/revenant)) return 0 var/mob/living/simple_animal/revenant/R = owner.current if(!R || R.stat == DEAD) diff --git a/code/game/gamemodes/miniantags/revenant/revenant_abilities.dm b/code/game/gamemodes/miniantags/revenant/revenant_abilities.dm index 8fcf1beac0..1e7ed6c4bc 100644 --- a/code/game/gamemodes/miniantags/revenant/revenant_abilities.dm +++ b/code/game/gamemodes/miniantags/revenant/revenant_abilities.dm @@ -15,7 +15,7 @@ src << "You are already siphoning the essence of a soul!" return if(!target.stat) - src << "[target.p_their(TRUE)] soul is too strong to harvest." + src << "This being's soul is too strong to harvest." if(prob(10)) target << "You feel as if you are being watched." return @@ -24,13 +24,13 @@ src << "You search for the soul of [target]." if(do_after(src, rand(10, 20), 0, target)) //did they get deleted in that second? if(target.ckey) - src << "[target.p_their(TRUE)] soul burns with intelligence." + src << "Their soul burns with intelligence." essence_drained += rand(20, 30) if(target.stat != DEAD) - src << "[target.p_their(TRUE)] soul blazes with life!" + src << "Their soul blazes with life!" essence_drained += rand(40, 50) else - src << "[target.p_their(TRUE)] soul is weak and faltering." + src << "Their soul is weak and faltering." if(do_after(src, rand(15, 20), 0, target)) //did they get deleted NOW? switch(essence_drained) if(1 to 30) @@ -43,7 +43,7 @@ src << "Ah, the perfect soul. [target] will yield massive amounts of essence to you." if(do_after(src, rand(15, 25), 0, target)) //how about now if(!target.stat) - src << "[target.p_they(TRUE)] [target.p_are()] now powerful enough to fight off your draining." + src << "They are now powerful enough to fight off your draining." target << "You feel something tugging across your body before subsiding." draining = 0 essence_drained = 0 @@ -53,8 +53,8 @@ target << "You feel a horribly unpleasant draining sensation as your grip on life weakens..." reveal(46) stun(46) - target.visible_message("[target] suddenly rises slightly into the air, [target.p_their()] skin turning an ashy gray.") - var/datum/beam/B = Beam(target,icon_state="drain_life",time=46) + target.visible_message("[target] suddenly rises slightly into the air, their skin turning an ashy gray.") + var/datum/beam/B = Beam(target,icon_state="drain_life",icon='icons/effects/effects.dmi',time=46) if(do_after(src, 46, 0, target)) //As one cannot prove the existance of ghosts, ghosts cannot prove the existance of the target they were draining. qdel(B) change_essence_amount(essence_drained, 0, target) @@ -73,13 +73,20 @@ else qdel(B) src << "[target ? "[target] has":"They have"] been drawn out of your grasp. The link has been broken." + draining = 0 + essence_drained = 0 if(target) //Wait, target is WHERE NOW? target.visible_message("[target] slumps onto the ground.", \ "Violets lights, dancing in your vision, receding--") + return else src << "You are not close enough to siphon [target ? "[target]'s":"their"] soul. The link has been broken." + draining = 0 + essence_drained = 0 + return draining = 0 essence_drained = 0 + return //Toggle night vision: lets the revenant toggle its night vision /obj/effect/proc_holder/spell/targeted/night_vision/revenant @@ -195,7 +202,7 @@ /obj/effect/proc_holder/spell/aoe_turf/revenant/overload/cast(list/targets, mob/living/simple_animal/revenant/user = usr) if(attempt_cast(user)) for(var/turf/T in targets) - addtimer(src, "overload", 0, TIMER_NORMAL, T, user) + addtimer(src, "overload", 0, FALSE, T, user) /obj/effect/proc_holder/spell/aoe_turf/revenant/overload/proc/overload(turf/T, mob/user) for(var/obj/machinery/light/L in T) @@ -213,7 +220,7 @@ for(var/mob/living/carbon/human/M in view(shock_range, L)) if(M == user) continue - L.Beam(M,icon_state="purple_lightning",time=5) + L.Beam(M,icon_state="purple_lightning",icon='icons/effects/effects.dmi',time=5) M.electrocute_act(shock_damage, L, safety=1) var/datum/effect_system/spark_spread/z = new /datum/effect_system/spark_spread z.set_up(4, 0, M) @@ -235,16 +242,16 @@ /obj/effect/proc_holder/spell/aoe_turf/revenant/defile/cast(list/targets, mob/living/simple_animal/revenant/user = usr) if(attempt_cast(user)) for(var/turf/T in targets) - addtimer(src, "defile", 0, TIMER_NORMAL, T) + addtimer(src, "defile", 0, FALSE, T) /obj/effect/proc_holder/spell/aoe_turf/revenant/defile/proc/defile(turf/T) if(T.flags & NOJAUNT) T.flags -= NOJAUNT PoolOrNew(/obj/effect/overlay/temp/revenant, T) - if(!istype(T, /turf/open/floor/plating) && !istype(T, /turf/open/floor/engine/cult) && isfloorturf(T) && prob(15)) + if(!istype(T, /turf/open/floor/plating) && !istype(T, /turf/open/floor/engine/cult) && istype(T, /turf/open/floor) && prob(15)) var/turf/open/floor/floor = T - if(floor.intact && floor.floor_tile) - PoolOrNew(floor.floor_tile, floor) + if(floor.intact) + floor.builtin_tile.loc = floor floor.broken = 0 floor.burnt = 0 floor.make_plating(1) @@ -282,7 +289,7 @@ /obj/effect/proc_holder/spell/aoe_turf/revenant/malfunction/cast(list/targets, mob/living/simple_animal/revenant/user = usr) if(attempt_cast(user)) for(var/turf/T in targets) - addtimer(src, "malfunction", 0, TIMER_NORMAL, T, user) + addtimer(src, "malfunction", 0, FALSE, T, user) /obj/effect/proc_holder/spell/aoe_turf/revenant/malfunction/proc/malfunction(turf/T, mob/user) for(var/mob/living/simple_animal/bot/bot in T) @@ -326,7 +333,7 @@ /obj/effect/proc_holder/spell/aoe_turf/revenant/blight/cast(list/targets, mob/living/simple_animal/revenant/user = usr) if(attempt_cast(user)) for(var/turf/T in targets) - addtimer(src, "blight", 0, TIMER_NORMAL, T, user) + addtimer(src, "blight", 0, FALSE, T, user) /obj/effect/proc_holder/spell/aoe_turf/revenant/blight/proc/blight(turf/T, mob/user) for(var/mob/living/mob in T) @@ -337,7 +344,15 @@ if(ishuman(mob)) var/mob/living/carbon/human/H = mob if(H.dna && H.dna.species) - H.dna.species.handle_hair(H,"#1d2953") //will be reset when blight is cured + H.dna.species.handle_mutant_bodyparts(H,"#1d2953") + H.dna.species.handle_hair(H,"#1d2953") + var/old_color = H.color + H.color = "#1d2953" + spawn(20) + if(H && H.dna && H.dna.species) + H.dna.species.handle_mutant_bodyparts(H) + H.dna.species.handle_hair(H) + H.color = old_color var/blightfound = 0 for(var/datum/disease/revblight/blight in H.viruses) blightfound = 1 @@ -351,12 +366,12 @@ mob.reagents.add_reagent("plasma", 5) else mob.adjustToxLoss(5) - for(var/obj/structure/spacevine/vine in T) //Fucking with botanists, the ability. - vine.add_atom_colour("#823abb", TEMPORARY_COLOUR_PRIORITY) + for(var/obj/effect/spacevine/vine in T) //Fucking with botanists, the ability. + vine.color = "#823abb" PoolOrNew(/obj/effect/overlay/temp/revenant, vine.loc) QDEL_IN(vine, 10) - for(var/obj/structure/glowshroom/shroom in T) - shroom.add_atom_colour("#823abb", TEMPORARY_COLOUR_PRIORITY) + for(var/obj/effect/glowshroom/shroom in T) + shroom.color = "#823abb" PoolOrNew(/obj/effect/overlay/temp/revenant, shroom.loc) QDEL_IN(shroom, 10) for(var/obj/machinery/hydroponics/tray in T) diff --git a/code/game/gamemodes/miniantags/revenant/revenant_blight.dm b/code/game/gamemodes/miniantags/revenant/revenant_blight.dm index 83d256f7fc..19cb12d020 100644 --- a/code/game/gamemodes/miniantags/revenant/revenant_blight.dm +++ b/code/game/gamemodes/miniantags/revenant/revenant_blight.dm @@ -17,29 +17,26 @@ /datum/disease/revblight/cure() if(affected_mob) - affected_mob.remove_atom_colour(TEMPORARY_COLOUR_PRIORITY, "#1d2953") + affected_mob << "You feel better." if(affected_mob.dna && affected_mob.dna.species) affected_mob.dna.species.handle_mutant_bodyparts(affected_mob) - affected_mob.dna.species.handle_hair(affected_mob) - affected_mob << "You feel better." ..() /datum/disease/revblight/stage_act() - if(!finalstage) - if(affected_mob.lying && prob(stage*6)) - cure() - return - if(prob(stage*3)) - affected_mob << "You suddenly feel [pick("sick and tired", "disoriented", "tired and confused", "nauseated", "faint", "dizzy")]..." - affected_mob.confused += 8 - affected_mob.adjustStaminaLoss(8) - PoolOrNew(/obj/effect/overlay/temp/revenant, affected_mob.loc) - if(stagedamage < stage) - stagedamage++ - affected_mob.adjustToxLoss(stage*2) //should, normally, do about 30 toxin damage. - PoolOrNew(/obj/effect/overlay/temp/revenant, affected_mob.loc) - if(prob(45)) - affected_mob.adjustStaminaLoss(stage) + if(!finalstage && affected_mob.lying && prob(stage*6)) + cure() + return + if(!finalstage && prob(stage*3)) + affected_mob << "You suddenly feel [pick("sick and tired", "disoriented", "tired and confused", "nauseated", "faint", "dizzy")]..." + affected_mob.confused += 8 + affected_mob.adjustStaminaLoss(8) + PoolOrNew(/obj/effect/overlay/temp/revenant, affected_mob.loc) + if(!finalstage && stagedamage < stage) + stagedamage++ + affected_mob.adjustToxLoss(stage*2) //should, normally, do about 30 toxin damage. + PoolOrNew(/obj/effect/overlay/temp/revenant, affected_mob.loc) + if(!finalstage && prob(45)) + affected_mob.adjustStaminaLoss(stage) ..() //So we don't increase a stage before applying the stage damage. switch(stage) if(2) @@ -60,8 +57,12 @@ if(affected_mob.dna && affected_mob.dna.species) affected_mob.dna.species.handle_mutant_bodyparts(affected_mob,"#1d2953") affected_mob.dna.species.handle_hair(affected_mob,"#1d2953") - affected_mob.visible_message("[affected_mob] looks terrifyingly gaunt...", "You suddenly feel like your skin is wrong...") - affected_mob.add_atom_colour("#1d2953", TEMPORARY_COLOUR_PRIORITY) - addtimer(src, "cure", 100, TIMER_NORMAL) + affected_mob.visible_message("[affected_mob] looks terrifyingly gaunt...", "You suddenly feel like your skin is wrong...") + var/old_color = affected_mob.color + affected_mob.color = "#1d2953" + spawn(100) + if(affected_mob) + affected_mob = old_color + cure() else - return + return \ No newline at end of file diff --git a/code/game/gamemodes/miniantags/revenant/revenant_spawn_event.dm b/code/game/gamemodes/miniantags/revenant/revenant_spawn_event.dm index 8bfb458ff5..f73ac04096 100644 --- a/code/game/gamemodes/miniantags/revenant/revenant_spawn_event.dm +++ b/code/game/gamemodes/miniantags/revenant/revenant_spawn_event.dm @@ -10,15 +10,15 @@ /datum/round_event/ghost_role/revenant - var/ignore_mobcheck = FALSE + var/force_spawn role_name = "revenant" -/datum/round_event/ghost_role/revenant/New(my_processing = TRUE, new_ignore_mobcheck = FALSE) +/datum/round_event/ghost_role/revenant/New(my_force_spawn = FALSE) ..() - ignore_mobcheck = new_ignore_mobcheck + force_spawn = my_force_spawn /datum/round_event/ghost_role/revenant/spawn_role() - if(!ignore_mobcheck) + if(!force_spawn) var/deadMobs = 0 for(var/mob/M in dead_mob_list) deadMobs++ @@ -26,12 +26,14 @@ message_admins("Event attempted to spawn a revenant, but there were only [deadMobs]/[REVENANT_SPAWN_THRESHOLD] dead mobs.") return WAITING_FOR_SOMETHING - var/list/candidates = get_candidates("revenant", null, ROLE_REVENANT) + var/list/mob/dead/observer/candidates = get_candidates("revenant", null, ROLE_REVENANT) if(!candidates.len) return NOT_ENOUGH_PLAYERS - var/mob/dead/observer/selected = pick_n_take(candidates) + var/mob/dead/observer/selected = popleft(candidates) + var/datum/mind/player_mind = new /datum/mind(selected.key) + player_mind.active = 1 var/list/spawn_locs = list() for(var/obj/effect/landmark/L in landmarks_list) @@ -46,13 +48,16 @@ if("carpspawn") spawn_locs += L.loc if(!spawn_locs) //If we can't find either, just spawn the revenant at the player's location - spawn_locs += get_turf(selected) + spawn_locs += get_turf(player_mind.current) if(!spawn_locs) //If we can't find THAT, then just give up and cry return MAP_ERROR var/mob/living/simple_animal/revenant/revvie = new /mob/living/simple_animal/revenant/(pick(spawn_locs)) - revvie.key = selected.key - message_admins("[revvie.key] has been made into a revenant by an event.") - log_game("[revvie.key] was spawned as a revenant by an event.") + player_mind.transfer_to(revvie) + player_mind.assigned_role = "revenant" + player_mind.special_role = "Revenant" + ticker.mode.traitors |= player_mind + message_admins("[player_mind.key] has been made into a revenant by an event.") + log_game("[player_mind.key] was spawned as a revenant by an event.") spawned_mobs += revvie return SUCCESSFUL_SPAWN diff --git a/code/game/gamemodes/miniantags/slaughter/slaughter.dm b/code/game/gamemodes/miniantags/slaughter/slaughter.dm index c4f1b50b3d..f63dfae041 100644 --- a/code/game/gamemodes/miniantags/slaughter/slaughter.dm +++ b/code/game/gamemodes/miniantags/slaughter/slaughter.dm @@ -13,7 +13,7 @@ icon_state = "daemon" icon_living = "daemon" speed = 1 - a_intent = INTENT_HARM + a_intent = "harm" stop_automated_movement = 1 status_flags = CANPUSH attack_sound = 'sound/magic/demon_attack1.ogg' @@ -28,7 +28,6 @@ health = 200 healable = 0 environment_smash = 1 - obj_damage = 50 melee_damage_lower = 30 melee_damage_upper = 30 see_in_dark = 8 @@ -64,7 +63,6 @@ icon = 'icons/obj/surgery.dmi' name = "pile of viscera" desc = "A repulsive pile of guts and gore." - gender = NEUTER random_icon_states = list("innards") /mob/living/simple_animal/slaughter/phasein() diff --git a/code/game/gamemodes/miniantags/slaughter/slaughterevent.dm b/code/game/gamemodes/miniantags/slaughter/slaughterevent.dm index 1d560ed975..569216b741 100644 --- a/code/game/gamemodes/miniantags/slaughter/slaughterevent.dm +++ b/code/game/gamemodes/miniantags/slaughter/slaughterevent.dm @@ -17,7 +17,7 @@ if(!candidates.len) return NOT_ENOUGH_PLAYERS - var/mob/dead/selected = pick_n_take(candidates) + var/mob/dead/selected = popleft(candidates) var/datum/mind/player_mind = new /datum/mind(selected.key) player_mind.active = 1 diff --git a/code/game/gamemodes/nuclear/nuclear.dm b/code/game/gamemodes/nuclear/nuclear.dm index 4c59cdd53b..c8c8eea898 100644 --- a/code/game/gamemodes/nuclear/nuclear.dm +++ b/code/game/gamemodes/nuclear/nuclear.dm @@ -10,18 +10,18 @@ recommended_enemies = 5 antag_flag = ROLE_OPERATIVE enemy_minimum_age = 14 - - announce_span = "danger" - announce_text = "Syndicate forces are approaching the station in an attempt to destroy it!\n\ - Operatives: Secure the nuclear authentication disk and use your nuke to destroy the station.\n\ - Crew: Defend the nuclear authentication disk and ensure that it leaves with you on the emergency shuttle." - var/const/agents_possible = 5 //If we ever need more syndicate agents. var/nukes_left = 1 // Call 3714-PRAY right now and order more nukes! Limited offer! var/nuke_off_station = 0 //Used for tracking if the syndies actually haul the nuke to the station var/syndies_didnt_escape = 0 //Used for tracking if the syndies got the shuttle off of the z-level + +/datum/game_mode/nuclear/announce() + world << "The current game mode is - Nuclear Emergency!" + world << "A [syndicate_name()] Strike Force is approaching [station_name()]!" + world << "A nuclear explosive was being transported by Nanotrasen to a military base. The transport ship mysteriously lost contact with Space Traffic Control (STC). About that time a strange disk was discovered around [station_name()]. It was identified by Nanotrasen as a nuclear auth. disk and now Syndicate Operatives have arrived to retake the disk and detonate SS13! Also, most likely Syndicate star ships are in the vicinity so take care not to lose the disk!\nSyndicate: Reclaim the disk and detonate the nuclear bomb anywhere on SS13.\nPersonnel: Hold the disk and escape with the disk on the shuttle!" + /datum/game_mode/nuclear/pre_setup() var/n_players = num_players() var/n_agents = min(round(n_players / 10, 1), agents_possible) @@ -67,7 +67,7 @@ synd_spawn += get_turf(A) continue - var/nuke_code = random_nukecode() + var/nuke_code = "[rand(10000, 99999)]" var/leader_selected = 0 var/agent_number = 1 var/spawnpos = 1 @@ -110,7 +110,7 @@ synd_mind.current << "In your hand you will find a special item capable of triggering a greater challenge for your team. Examine it carefully and consult with your fellow operatives before activating it." var/obj/item/device/nuclear_challenge/challenge = new /obj/item/device/nuclear_challenge - synd_mind.current.put_in_hands_or_del(challenge) + synd_mind.current.equip_to_slot_or_del(challenge, slot_r_hand) var/list/foundIDs = synd_mind.current.search_contents_for(/obj/item/weapon/card/id) if(foundIDs.len) @@ -130,7 +130,7 @@ P.name = "nuclear bomb code" var/mob/living/carbon/human/H = synd_mind.current P.loc = H.loc - H.put_in_hands_or_del(P) + H.equip_to_slot_or_del(P, slot_r_hand, 0) H.update_icons() else nuke_code = "code will be provided later" @@ -147,7 +147,11 @@ /datum/game_mode/proc/greet_syndicate(datum/mind/syndicate, you_are=1) if(you_are) syndicate.current << "You are a [syndicate_name()] agent!" - syndicate.announce_objectives() + var/obj_count = 1 + for(var/datum/objective/objective in syndicate.objectives) + syndicate.current << "Objective #[obj_count]: [objective.explanation_text]" + obj_count++ + return /datum/game_mode/proc/equip_syndicate(mob/living/carbon/human/synd_mob, telecrystals = TRUE) synd_mob.set_species(/datum/species/human) //Plasamen burn up otherwise, and lizards are vulnerable to asimov AIs @@ -166,7 +170,7 @@ /datum/game_mode/proc/are_operatives_dead() for(var/datum/mind/operative_mind in syndicates) - if(ishuman(operative_mind.current) && (operative_mind.current.stat!=2)) + if (istype(operative_mind.current,/mob/living/carbon/human) && (operative_mind.current.stat!=2)) return 0 return 1 @@ -195,77 +199,51 @@ //derp //Used for tracking if the syndies actually haul the nuke to the station //no //herp //Used for tracking if the syndies got the shuttle off of the z-level //NO, DON'T FUCKING NAME VARS LIKE THIS - - if(nuke_off_station == NUKE_SYNDICATE_BASE) - feedback_set_details("round_end_result","loss - syndicate nuked - disk secured") - world << "Humiliating Syndicate Defeat" - world << "The crew of [station_name()] gave [syndicate_name()] operatives back their bomb! The syndicate base was destroyed! Next time, don't lose the nuke!" - - ticker.news_report = NUKE_SYNDICATE_BASE - - else if(!disk_rescued && station_was_nuked && !syndies_didnt_escape) + if (!disk_rescued && station_was_nuked && !syndies_didnt_escape) feedback_set_details("round_end_result","win - syndicate nuke") world << "Syndicate Major Victory!" world << "[syndicate_name()] operatives have destroyed [station_name()]!" - ticker.news_report = STATION_NUKED - else if (!disk_rescued && station_was_nuked && syndies_didnt_escape) feedback_set_details("round_end_result","halfwin - syndicate nuke - did not evacuate in time") world << "Total Annihilation" world << "[syndicate_name()] operatives destroyed [station_name()] but did not leave the area in time and got caught in the explosion. Next time, don't lose the disk!" - ticker.news_report = STATION_NUKED - else if (!disk_rescued && !station_was_nuked && nuke_off_station && !syndies_didnt_escape) feedback_set_details("round_end_result","halfwin - blew wrong station") world << "Crew Minor Victory" world << "[syndicate_name()] operatives secured the authentication disk but blew up something that wasn't [station_name()]. Next time, don't lose the disk!" - ticker.news_report = NUKE_MISS - else if (!disk_rescued && !station_was_nuked && nuke_off_station && syndies_didnt_escape) feedback_set_details("round_end_result","halfwin - blew wrong station - did not evacuate in time") world << "[syndicate_name()] operatives have earned Darwin Award!" world << "[syndicate_name()] operatives blew up something that wasn't [station_name()] and got caught in the explosion. Next time, don't lose the disk!" - ticker.news_report = NUKE_MISS - else if ((disk_rescued || SSshuttle.emergency.mode != SHUTTLE_ENDGAME) && are_operatives_dead()) feedback_set_details("round_end_result","loss - evacuation - disk secured - syndi team dead") world << "Crew Major Victory!" world << "The Research Staff has saved the disc and killed the [syndicate_name()] Operatives" - ticker.news_report = OPERATIVES_KILLED - else if (disk_rescued) feedback_set_details("round_end_result","loss - evacuation - disk secured") world << "Crew Major Victory" world << "The Research Staff has saved the disc and stopped the [syndicate_name()] Operatives!" - ticker.news_report = OPERATIVES_KILLED - else if (!disk_rescued && are_operatives_dead()) feedback_set_details("round_end_result","halfwin - evacuation - disk not secured") world << "Neutral Victory!" world << "The Research Staff failed to secure the authentication disk but did manage to kill most of the [syndicate_name()] Operatives!" - ticker.news_report = OPERATIVE_SKIRMISH - else if (!disk_rescued && crew_evacuated) feedback_set_details("round_end_result","halfwin - detonation averted") world << "Syndicate Minor Victory!" world << "[syndicate_name()] operatives recovered the abandoned authentication disk but detonation of [station_name()] was averted. Next time, don't lose the disk!" - ticker.news_report = OPERATIVE_SKIRMISH - else if (!disk_rescued && !crew_evacuated) feedback_set_details("round_end_result","halfwin - interrupted") world << "Neutral Victory" world << "Round was mysteriously interrupted!" - ticker.news_report = OPERATIVE_SKIRMISH - ..() return @@ -310,9 +288,6 @@ synd_mind.current.real_name = synd_mind.name return -/proc/is_nuclear_operative(mob/M) - return M && istype(M) && M.mind && ticker && ticker.mode && M.mind in ticker.mode.syndicates - /datum/outfit/syndicate name = "Syndicate Operative - Basic" @@ -321,9 +296,9 @@ gloves = /obj/item/clothing/gloves/combat back = /obj/item/weapon/storage/backpack ears = /obj/item/device/radio/headset/syndicate/alt - l_pocket = /obj/item/weapon/pinpointer/syndicate + l_pocket = /obj/item/weapon/pinpointer/nukeop id = /obj/item/weapon/card/id/syndicate - belt = /obj/item/weapon/gun/ballistic/automatic/pistol + belt = /obj/item/weapon/gun/projectile/automatic/pistol backpack_contents = list(/obj/item/weapon/storage/box/syndie=1) var/tc = 25 @@ -358,10 +333,10 @@ suit = /obj/item/clothing/suit/space/hardsuit/syndi r_pocket = /obj/item/weapon/tank/internals/emergency_oxygen/engi belt = /obj/item/weapon/storage/belt/military - r_hand = /obj/item/weapon/gun/ballistic/automatic/shotgun/bulldog + r_hand = /obj/item/weapon/gun/projectile/automatic/shotgun/bulldog backpack_contents = list(/obj/item/weapon/storage/box/syndie=1,\ /obj/item/weapon/tank/jetpack/oxygen/harness=1,\ - /obj/item/weapon/gun/ballistic/automatic/pistol=1) + /obj/item/weapon/gun/projectile/automatic/pistol=1) /datum/outfit/syndicate/full/post_equip(mob/living/carbon/human/H) ..() diff --git a/code/game/gamemodes/nuclear/nuclear_challenge.dm b/code/game/gamemodes/nuclear/nuclear_challenge.dm index a1d296f715..cfe00c03df 100644 --- a/code/game/gamemodes/nuclear/nuclear_challenge.dm +++ b/code/game/gamemodes/nuclear/nuclear_challenge.dm @@ -10,42 +10,24 @@ desc = "Use to send a declaration of hostilities to the target, delaying your shuttle departure for 20 minutes while they prepare for your assault. \ Such a brazen move will attract the attention of powerful benefactors within the Syndicate, who will supply your team with a massive amount of bonus telecrystals. \ Must be used within five minutes, or your benefactors will lose interest." - var/declaring_war = FALSE + var/declaring_war = 0 /obj/item/device/nuclear_challenge/attack_self(mob/living/user) if(!check_allowed(user)) return - declaring_war = TRUE - var/are_you_sure = alert(user, "Consult your team carefully before you declare war on [station_name()]]. Are you sure you want to alert the enemy crew? You have [-round((world.time-round_start_time - CHALLENGE_TIME_LIMIT)/10)] seconds to decide", "Declare war?", "Yes", "No") - declaring_war = FALSE - - if(!check_allowed(user)) - return - + declaring_war = 1 + var/are_you_sure = alert(user, "Consult your team carefully before you declare war on [station_name()]]. Are you sure you want to alert the enemy crew?", "Declare war?", "Yes", "No") + declaring_war = 0 if(are_you_sure == "No") user << "On second thought, the element of surprise isn't so bad after all." return - - var/war_declaration = "[user.real_name] has declared his intent to utterly destroy [station_name()] with a nuclear device, and dares the crew to try and stop them." - - declaring_war = TRUE - var/custom_threat = alert(user, "Do you want to customize your declaration?", "Customize?", "Yes", "No") - declaring_war = FALSE - if(!check_allowed(user)) return - if(custom_threat == "Yes") - declaring_war = TRUE - war_declaration = stripped_input(user, "Insert your custom declaration", "Declaration") - declaring_war = FALSE - - if(!check_allowed(user) || !war_declaration) - return - + declaring_war = 1 + var/war_declaration = "[user.real_name] has declared his intent to utterly destroy [station_name()] with a nuclear device, and dares the crew to try and stop them." priority_announce(war_declaration, title = "Declaration of War", sound = 'sound/machines/Alarm.ogg') - user << "You've attracted the attention of powerful forces within the syndicate. A bonus bundle of telecrystals has been granted to your team. Great things await you if you complete the mission." for(var/V in syndicate_shuttle_boards) @@ -61,7 +43,6 @@ /obj/item/device/nuclear_challenge/proc/check_allowed(mob/living/user) if(declaring_war) - user << "You are already in the process of declaring war! Make your mind up." return 0 if(player_list.len < CHALLENGE_MIN_PLAYERS) user << "The enemy crew is too small to be worth declaring war on." diff --git a/code/game/gamemodes/nuclear/nuclearbomb.dm b/code/game/gamemodes/nuclear/nuclearbomb.dm index 0537bde8c2..ee18eee594 100644 --- a/code/game/gamemodes/nuclear/nuclearbomb.dm +++ b/code/game/gamemodes/nuclear/nuclearbomb.dm @@ -18,24 +18,17 @@ var/bomb_set icon = 'icons/obj/machines/nuke.dmi' icon_state = "nuclearbomb_base" density = 1 - resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | UNACIDABLE | ACID_PROOF - var/timer_set = 60 - var/default_timer_set = 60 - var/minimum_timer_set = 60 - var/maximum_timer_set = 3600 - var/ui_style = "nanotrasen" - - var/numeric_input = "" - var/timing = FALSE - var/exploding = FALSE - var/detonation_timer = null + var/timeleft = 60 + var/timing = 0 var/r_code = "ADMIN" - var/yes_code = FALSE - var/safety = TRUE + var/code = "" + var/yes_code = 0 + var/safety = 1 var/obj/item/weapon/disk/nuclear/auth = null use_power = 0 var/previous_level = "" + var/lastentered = "" var/obj/item/nuke_core/core = null var/deconstruction_state = NUKESTATE_INTACT var/image/lights = null @@ -55,29 +48,19 @@ var/bomb_set /obj/machinery/nuclearbomb/Destroy() poi_list -= src nuke_list -= src - if(countdown) - qdel(countdown) + qdel(countdown) countdown = null . = ..() -/obj/machinery/nuclearbomb/examine(mob/user) - . = ..() - if(exploding) - user << "It is in the process of exploding. Perhaps reviewing your \ - affairs is in order." - if(timing) - user << "There are [get_time_left()] seconds until \ - detonation." - /obj/machinery/nuclearbomb/selfdestruct name = "station self-destruct terminal" desc = "For when it all gets too much to bear. Do not taunt." icon = 'icons/obj/machines/nuke_terminal.dmi' icon_state = "nuclearbomb_base" - anchored = TRUE //stops it being moved + anchored = 1 //stops it being moved + layer = MOB_LAYER /obj/machinery/nuclearbomb/syndicate - //ui_style = "syndicate" // actually the nuke op bomb is a stole nt bomb /obj/machinery/nuclearbomb/syndicate/New() var/obj/machinery/nuclearbomb/existing = locate("syndienuke") @@ -92,7 +75,7 @@ var/bomb_set if (istype(I, /obj/item/weapon/disk/nuclear)) if(!user.drop_item()) return - I.forceMove(src) + I.loc = src auth = I add_fingerprint(user) return @@ -102,7 +85,7 @@ var/bomb_set if(istype(I, /obj/item/weapon/screwdriver/nuke)) playsound(loc, I.usesound, 100, 1) user << "You start removing [src]'s front panel's screws..." - if(do_after(user, 60*I.toolspeed,target=src)) + if(do_after(user, 60/I.toolspeed,target=src)) deconstruction_state = NUKESTATE_UNSCREWED user << "You remove the screws from [src]'s front panel." update_icon() @@ -111,7 +94,7 @@ var/bomb_set if(istype(I, /obj/item/weapon/crowbar)) user << "You start removing [src]'s front panel..." playsound(loc, I.usesound, 100, 1) - if(do_after(user,30*I.toolspeed,target=src)) + if(do_after(user,30/I.toolspeed,target=src)) user << "You remove [src]'s front panel." deconstruction_state = NUKESTATE_PANEL_REMOVED update_icon() @@ -122,7 +105,7 @@ var/bomb_set playsound(loc, I.usesound, 100, 1) user << "You start cutting [src]'s inner plate..." if(welder.remove_fuel(1,user)) - if(do_after(user,80*I.toolspeed,target=src)) + if(do_after(user,80/I.toolspeed,target=src)) user << "You cut [src]'s inner plate." deconstruction_state = NUKESTATE_WELDED update_icon() @@ -131,7 +114,7 @@ var/bomb_set if(istype(I, /obj/item/weapon/crowbar)) user << "You start prying off [src]'s inner plate..." playsound(loc, I.usesound, 100, 1) - if(do_after(user,50*I.toolspeed,target=src)) + if(do_after(user,50/I.toolspeed,target=src)) user << "You pry off [src]'s inner plate. You can see the core's green glow!" deconstruction_state = NUKESTATE_CORE_EXPOSED update_icon() @@ -165,12 +148,12 @@ var/bomb_set else user << "You need more metal to do that!" return - . = ..() + return ..() /obj/machinery/nuclearbomb/proc/get_nuke_state() - if(exploding) + if(timing < 0) return NUKE_ON_EXPLODING - if(timing) + if(timing > 0) return NUKE_ON_TIMING if(safety) return NUKE_OFF_LOCKED @@ -226,127 +209,102 @@ var/bomb_set add_overlay(lights) /obj/machinery/nuclearbomb/process() - if(timing && !exploding) - bomb_set = TRUE - if(detonation_timer < world.time) + if (timing > 0) + countdown.start() + bomb_set = 1 //So long as there is one nuke timing, it means one nuke is armed. + timeleft-- + if (timeleft <= 0) explode() else - var/volume = (get_time_left() <= 20 ? 30 : 5) + var/volume = (timeleft <= 20 ? 30 : 5) playsound(loc, 'sound/items/timer.ogg', volume, 0) + for(var/mob/M in viewers(1, src)) + if ((M.client && M.machine == src)) + attack_hand(M) + else + countdown.stop() /obj/machinery/nuclearbomb/attack_paw(mob/user) return attack_hand(user) -/obj/machinery/nuclearbomb/ui_interact(mob/user, ui_key="main", datum/tgui/ui=null, force_open=0, datum/tgui/master_ui=null, datum/ui_state/state=default_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) - if(!ui) - ui = new(user, src, ui_key, "nuclear_bomb", name, 500, 600, master_ui, state) - ui.set_style(ui_style) - ui.open() +/obj/machinery/nuclearbomb/attack_ai(mob/user) + return -/obj/machinery/nuclearbomb/ui_data(mob/user) - var/list/data = list() - data["disk_present"] = auth - data["code_approved"] = yes_code - var/first_status - if(auth) - if(yes_code) - first_status = timing ? "Func/Set" : "Functional" +/obj/machinery/nuclearbomb/attack_hand(mob/user) + user.set_machine(src) + var/dat = text("\nAuth. Disk: []
    ", src, (auth ? "++++++++++" : "----------")) + if (auth) + if (yes_code) + dat += text("\nStatus: []-[]
    \nTimer: []
    \n
    \nTimer: [] Toggle
    \nTime: - - [] + +
    \n
    \nSafety: [] Toggle
    \nAnchor: [] Toggle
    \n", (timing ? "Func/Set" : "Functional"), (safety ? "Safe" : "Engaged"), timeleft, (timing ? "On" : "Off"), src, src, src, timeleft, src, src, (safety ? "On" : "Off"), src, (anchored ? "Engaged" : "Off"), src) else - first_status = "Auth S2." + dat += text("\nStatus: Auth. S2-[]
    \nTimer: []
    \n
    \nTimer: [] Toggle
    \nTime: - - [] + +
    \n
    \n[] Safety: Toggle
    \nAnchor: [] Toggle
    \n", (safety ? "Safe" : "Engaged"), timeleft, (timing ? "On" : "Off"), timeleft, (safety ? "On" : "Off"), (anchored ? "Engaged" : "Off")) else - if(timing) - first_status = "Set" + if (timing) + dat += text("\nStatus: Set-[]
    \nTimer: []
    \n
    \nTimer: [] Toggle
    \nTime: - - [] + +
    \n
    \nSafety: [] Toggle
    \nAnchor: [] Toggle
    \n", (safety ? "Safe" : "Engaged"), timeleft, (timing ? "On" : "Off"), timeleft, (safety ? "On" : "Off"), (anchored ? "Engaged" : "Off")) else - first_status = "Auth S1." - var/second_status = safety ? "Safe" : "Engaged" - data["status1"] = first_status - data["status2"] = second_status - data["anchored"] = anchored - data["safety"] = safety - data["timing"] = timing - data["time_left"] = get_time_left() - - data["timer_set"] = timer_set - data["timer_is_not_default"] = timer_set != default_timer_set - data["timer_is_not_min"] = timer_set != minimum_timer_set - data["timer_is_not_max"] = timer_set != maximum_timer_set - + dat += text("\nStatus: Auth. S1-[]
    \nTimer: []
    \n
    \nTimer: [] Toggle
    \nTime: - - [] + +
    \n
    \nSafety: [] Toggle
    \nAnchor: [] Toggle
    \n", (safety ? "Safe" : "Engaged"), timeleft, (timing ? "On" : "Off"), timeleft, (safety ? "On" : "Off"), (anchored ? "Engaged" : "Off")) var/message = "AUTH" - if(auth) - message = "[numeric_input]" - if(yes_code) + if (auth) + message = text("[]", code) + if (yes_code) message = "*****" - data["message"] = message + dat += text("
    \n>[]
    \n123
    \n456
    \n789
    \nR0E
    \n
    ", message, src, src, src, src, src, src, src, src, src, src, src, src) + var/datum/browser/popup = new(user, "nuclearbomb", name, 300, 400) + popup.set_content(dat) + popup.open() - return data - -/obj/machinery/nuclearbomb/ui_act(action, params) +/obj/machinery/nuclearbomb/Topic(href, href_list) if(..()) return - switch(action) - if("eject_disk") - if(auth && auth.loc == src) - auth.forceMove(get_turf(src)) - auth = null - . = TRUE - if("insert_disk") - if(!auth) - var/obj/item/I = usr.get_active_held_item() - if(istype(I, /obj/item/weapon/disk/nuclear)) - usr.drop_item() - I.forceMove(src) - auth = I - . = TRUE - if("keypad") - if(auth) - var/digit = params["digit"] - switch(digit) - if("R") - numeric_input = "" - yes_code = FALSE - . = TRUE - if("E") - if(numeric_input == r_code) - numeric_input = "" - yes_code = TRUE - . = TRUE - else - numeric_input = "ERROR" - if("0","1","2","3","4","5","6","7","8","9") - if(numeric_input != "ERROR") - numeric_input += digit - if(length(numeric_input) > 5) - numeric_input = "ERROR" - . = TRUE - if("timer") - if(auth && yes_code) - var/change = params["change"] - if(change == "reset") - timer_set = default_timer_set - else if(change == "decrease") - timer_set = max(minimum_timer_set, timer_set - 10) - else if(change == "increase") - timer_set = min(maximum_timer_set, timer_set + 10) - else if(change == "input") - var/user_input = input(usr, "Set time to detonation.", name) as null|num - if(!user_input) - return - var/N = text2num(user_input) - if(!N) - return - timer_set = Clamp(N,minimum_timer_set,maximum_timer_set) - . = TRUE - if("safety") - if(auth && yes_code) - set_safety() - if("anchor") - if(auth && yes_code) - set_anchor() - if("toggle_timer") - if(auth && yes_code && !safety) + usr.set_machine(src) + if (href_list["auth"]) + if (auth) + auth.loc = loc + yes_code = 0 + auth = null + else + var/obj/item/I = usr.get_active_hand() + if (istype(I, /obj/item/weapon/disk/nuclear)) + usr.drop_item() + I.loc = src + auth = I + if (auth) + if (href_list["type"]) + if (href_list["type"] == "E") + if (code == r_code) + yes_code = 1 + code = null + else + code = "ERROR" + else + if (href_list["type"] == "R") + yes_code = 0 + code = null + else + lastentered = text("[]", href_list["type"]) + if (text2num(lastentered) == null) + var/turf/LOC = get_turf(usr) + message_admins("[key_name_admin(usr)] (FLW) tried to exploit a nuclear bomb by entering non-numerical codes: [lastentered] ! ([LOC ? "JMP" : "null"])", 0) + log_admin("EXPLOIT : [key_name(usr)] tried to exploit a nuclear bomb by entering non-numerical codes: [lastentered] !") + else + code += lastentered + if (length(code) > 5) + code = "ERROR" + if (yes_code) + if (href_list["time"]) + var/time = text2num(href_list["time"]) + timeleft += time + timeleft = min(max(round(timeleft), 60), 600) + if (href_list["timer"]) set_active() - + if (href_list["safety"]) + set_safety() + if (href_list["anchor"]) + set_anchor() + add_fingerprint(usr) + for(var/mob/M in viewers(1, src)) + if ((M.client && M.machine == src)) + attack_hand(M) /obj/machinery/nuclearbomb/proc/set_anchor() if(!isinspace()) @@ -359,13 +317,8 @@ var/bomb_set if(safety) if(timing) set_security_level(previous_level) - for(var/obj/item/weapon/pinpointer/syndicate/S in pinpointer_list) - S.switch_mode_to(initial(S.mode)) - S.nuke_warning = FALSE - timing = FALSE - bomb_set = TRUE - detonation_timer = null - countdown.stop() + timing = 0 + bomb_set = 0 update_icon() /obj/machinery/nuclearbomb/proc/set_active() @@ -375,51 +328,36 @@ var/bomb_set timing = !timing if(timing) previous_level = get_security_level() - bomb_set = TRUE + bomb_set = 1 set_security_level("delta") - detonation_timer = world.time + (timer_set * 10) - for(var/obj/item/weapon/pinpointer/syndicate/S in pinpointer_list) - S.switch_mode_to(TRACK_INFILTRATOR) - countdown.start() else - bomb_set = FALSE - detonation_timer = null + bomb_set = 0 set_security_level(previous_level) - for(var/obj/item/weapon/pinpointer/syndicate/S in pinpointer_list) - S.switch_mode_to(initial(S.mode)) - S.nuke_warning = FALSE - countdown.stop() update_icon() -/obj/machinery/nuclearbomb/proc/get_time_left() - if(timing) - . = round(max(0, detonation_timer - world.time) / 10, 1) - else - . = timer_set +/obj/machinery/nuclearbomb/ex_act(severity, target) + return -/obj/machinery/nuclearbomb/blob_act(obj/structure/blob/B) - if(exploding) +/obj/machinery/nuclearbomb/blob_act(obj/effect/blob/B) + if (timing == -1) return - qdel(src) + else + return ..() -/obj/machinery/nuclearbomb/tesla_act(power, explosive) - ..() - if(explosive) - qdel(src)//like the singulo, tesla deletes it. stops it from exploding over and over #define NUKERANGE 127 /obj/machinery/nuclearbomb/proc/explode() - if(safety) - timing = FALSE + if (safety) + timing = 0 return - exploding = TRUE - yes_code = FALSE - safety = TRUE + timing = -1 + yes_code = 0 + safety = 1 update_icon() for(var/mob/M in player_list) M << 'sound/machines/Alarm.ogg' - if(ticker && ticker.mode) + if (ticker && ticker.mode) ticker.mode.explosion_in_progress = 1 sleep(100) @@ -432,16 +370,14 @@ var/bomb_set var/off_station = 0 var/turf/bomb_location = get_turf(src) - var/area/A = get_area(bomb_location) if(bomb_location && (bomb_location.z == ZLEVEL_STATION)) + var/area/A = get_area(bomb_location) if(istype(A, /area/space)) - off_station = NUKE_MISS_STATION + off_station = 1 if((bomb_location.x < (128-NUKERANGE)) || (bomb_location.x > (128+NUKERANGE)) || (bomb_location.y < (128-NUKERANGE)) || (bomb_location.y > (128+NUKERANGE))) - off_station = NUKE_MISS_STATION - else if(istype(A, /area/syndicate_mothership) || (istype(A,/area/shuttle/syndicate) && bomb_location.z == ZLEVEL_CENTCOM)) - off_station = NUKE_SYNDICATE_BASE + off_station = 1 else - off_station = NUKE_NEAR_MISS + off_station = 2 if(ticker.mode && ticker.mode.name == "nuclear emergency") var/obj/docking_port/mobile/Shuttle = SSshuttle.getShuttle("syndicate") @@ -485,7 +421,7 @@ This is here to make the tiles around the station mininuke change when it's arme //==========DAT FUKKEN DISK=============== /obj/item/weapon/disk icon = 'icons/obj/module.dmi' - w_class = WEIGHT_CLASS_TINY + w_class = 1 item_state = "card-id" icon_state = "datadisk0" @@ -493,47 +429,26 @@ This is here to make the tiles around the station mininuke change when it's arme name = "nuclear authentication disk" desc = "Better keep this safe." icon_state = "nucleardisk" - persistence_replacement = /obj/item/weapon/disk/fakenucleardisk - obj_integrity = 250 - max_integrity = 250 - armor = list(melee = 0, bullet = 0, laser = 0, energy = 0, bomb = 30, bio = 0, rad = 0, fire = 100, acid = 100) - resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | ACID_PROOF /obj/item/weapon/disk/nuclear/New() ..() poi_list |= src START_PROCESSING(SSobj, src) -/obj/item/weapon/disk/nuclear/attackby(obj/item/I, mob/living/user, params) - if(istype(I, /obj/item/weapon/claymore/highlander)) - var/obj/item/weapon/claymore/highlander/H = I - if(H.nuke_disk) - user << "Wait... what?" - qdel(H.nuke_disk) - H.nuke_disk = null - return - user.visible_message("[user] captures [src]!", "You've got the disk! Defend it with your life!") - loc = H - H.nuke_disk = src - return 1 - return ..() - /obj/item/weapon/disk/nuclear/suicide_act(mob/user) - user.visible_message("[user] is going delta! It looks like [user.p_theyre()] trying to commit suicide!") + user.visible_message("[user] is \ + going delta! It looks like they're comitting suicide.") playsound(user.loc, 'sound/machines/Alarm.ogg', 50, -1, 1) var/end_time = world.time + 100 - var/newcolor = "#00FF00" + var/orig_color = user.color while(world.time < end_time) if(!user) return - if(newcolor == "#FF0000") - newcolor = "#00FF00" - else - newcolor = "#FF0000" - user.add_atom_colour(newcolor, ADMIN_COLOUR_PRIORITY) + user.color = RANDOM_COLOUR sleep(1) - user.remove_atom_colour(ADMIN_COLOUR_PRIORITY) - user.visible_message("[user] was destroyed by the nuclear blast!") + user.color = orig_color + user.visible_message("[user] was destroyed \ + by the nuclear blast!") return OXYLOSS /obj/item/weapon/disk/nuclear/process() @@ -543,11 +458,8 @@ This is here to make the tiles around the station mininuke change when it's arme else get(src, /mob) << "You can't help but feel that you just lost something back there..." var/turf/targetturf = relocate() - message_admins("[src] has been moved out of bounds in \ - [ADMIN_COORDJMP(diskturf)]. Moving it to \ - [ADMIN_COORDJMP(targetturf)].") - log_game("[src] has been moved out of bounds in [COORD(diskturf)]. \ - Moving it to [COORD(targetturf)].") + message_admins("[src] has been moved out of bounds in ([diskturf ? "[diskturf.x], [diskturf.y] ,[diskturf.z] - JMP":"nonexistent location"]). Moving it to ([targetturf.x], [targetturf.y], [targetturf.z] - JMP).") + log_game("[src] has been moved out of bounds in ([diskturf ? "[diskturf.x], [diskturf.y] ,[diskturf.z]":"nonexistent location"]). Moving it to ([targetturf.x], [targetturf.y], [targetturf.z]).") /obj/item/weapon/disk/nuclear/proc/relocate() var/targetturf = find_safe_turf(ZLEVEL_STATION) @@ -571,21 +483,13 @@ This is here to make the tiles around the station mininuke change when it's arme var/turf/diskturf = get_turf(src) if(force) - message_admins("[src] has been !!force deleted!! in \ - [ADMIN_COORDJMP(diskturf)].") - log_game("[src] has been !!force deleted!! in [COORD(diskturf)].") + message_admins("[src] has been !!force deleted!! in ([diskturf ? "[diskturf.x], [diskturf.y] ,[diskturf.z] - JMP":"nonexistent location"]).") + log_game("[src] has been !!force deleted!! in ([diskturf ? "[diskturf.x], [diskturf.y] ,[diskturf.z]":"nonexistent location"]).") poi_list -= src STOP_PROCESSING(SSobj, src) return ..() var/turf/targetturf = relocate() - message_admins("[src] has been destroyed in [ADMIN_COORDJMP(diskturf)]. \ - Moving it to [ADMIN_COORDJMP(targetturf)].") - log_game("[src] has been destroyed in [COORD(diskturf)]. Moving it to \ - [COORD(targetturf)].") + message_admins("[src] has been destroyed in ([diskturf ? "[diskturf.x], [diskturf.y] ,[diskturf.z] - JMP":"nonexistent location"]). Moving it to ([targetturf.x], [targetturf.y], [targetturf.z] - JMP).") + log_game("[src] has been destroyed in ([diskturf ? "[diskturf.x], [diskturf.y] ,[diskturf.z]":"nonexistent location"]). Moving it to ([targetturf.x], [targetturf.y], [targetturf.z]).") return QDEL_HINT_LETMELIVE //Cancel destruction unless forced - -/obj/item/weapon/disk/fakenucleardisk - name = "cheap plastic imitation of the nuclear authentication disk" - desc = "Broken dreams and a faint oder of cheese." - icon_state = "nucleardisk" diff --git a/code/game/gamemodes/nuclear/pinpointer.dm b/code/game/gamemodes/nuclear/pinpointer.dm index 1c1ca2f9d7..560d2f3590 100644 --- a/code/game/gamemodes/nuclear/pinpointer.dm +++ b/code/game/gamemodes/nuclear/pinpointer.dm @@ -1,172 +1,297 @@ -//Pinpointers are used to track atoms from a distance as long as they're on the same z-level. The captain and nuke ops have ones that track the nuclear authentication disk. /obj/item/weapon/pinpointer name = "pinpointer" - desc = "A handheld tracking device that locks onto certain signals." icon = 'icons/obj/device.dmi' icon_state = "pinoff" flags = CONDUCT slot_flags = SLOT_BELT - w_class = WEIGHT_CLASS_SMALL + w_class = 2 item_state = "electronic" throw_speed = 3 throw_range = 7 - materials = list(MAT_METAL = 500, MAT_GLASS = 250) - resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | ACID_PROOF - var/active = FALSE - var/atom/movable/target = null //The thing we're searching for - var/atom/movable/constant_target = null //The thing we're always focused on, if we're in the right mode - var/target_x = 0 //The target coordinates if we're tracking those - var/target_y = 0 - var/nuke_warning = FALSE // If we've set off a miniature alarm about an armed nuke - var/mode = TRACK_NUKE_DISK //What are we looking for? + materials = list(MAT_METAL=500) + var/obj/item/weapon/disk/nuclear/the_disk = null + var/active = 0 /obj/item/weapon/pinpointer/New() ..() pinpointer_list += src /obj/item/weapon/pinpointer/Destroy() - STOP_PROCESSING(SSfastprocess, src) + active = 0 + pinpointer_list -= src return ..() -/obj/item/weapon/pinpointer/attack_self(mob/living/user) - active = !active - user.visible_message("[user] [active ? "" : "de"]activates their pinpointer.", "You [active ? "" : "de"]activate your pinpointer.") - playsound(user, 'sound/items/Screwdriver2.ogg', 50, 1) - icon_state = "pin[active ? "onnull" : "off"]" - if(active) - START_PROCESSING(SSfastprocess, src) +/obj/item/weapon/pinpointer/attack_self() + if(!active) + active = 1 + workdisk() + usr << "You activate the pinpointer." else - target = null //Restarting the pinpointer forces a target reset - STOP_PROCESSING(SSfastprocess, src) + active = 0 + icon_state = "pinoff" + usr << "You deactivate the pinpointer." -/obj/item/weapon/pinpointer/attackby(obj/item/I, mob/living/user, params) - if(mode != TRACK_ATOM) - return ..() - user.visible_message("[user] tunes [src] to [I].", "You fine-tune [src]'s tracking to track [I].") - playsound(src, 'sound/machines/click.ogg', 50, 1) - constant_target = I +/obj/item/weapon/pinpointer/proc/scandisk() + if(!the_disk) + the_disk = locate() + +/obj/item/weapon/pinpointer/proc/point_at(atom/target, spawnself = 1) + if(!active) + return + if(!target) + icon_state = "pinonnull" + return + + var/turf/T = get_turf(target) + var/turf/L = get_turf(src) + + if(T.z != L.z) + icon_state = "pinonnull" + else + setDir(get_dir(L, T)) + switch(get_dist(L, T)) + if(-1) + icon_state = "pinondirect" + if(1 to 8) + icon_state = "pinonclose" + if(9 to 16) + icon_state = "pinonmedium" + if(16 to INFINITY) + icon_state = "pinonfar" + if(spawnself) + spawn(5) + .() + +/obj/item/weapon/pinpointer/proc/workdisk() + scandisk() + point_at(the_disk, 0) + spawn(5) + .() /obj/item/weapon/pinpointer/examine(mob/user) ..() - var/msg = "Its tracking indicator reads " - switch(mode) - if(TRACK_NUKE_DISK) - msg += "\"nuclear_disk\"." - if(TRACK_MALF_AI) - msg += "\"01000001 01001001\"." - if(TRACK_INFILTRATOR) - msg += "\"vasvygengbefuvc\"." - if(TRACK_OPERATIVES) - msg += "\"[target ? "Operative [target]" : "friends"]\"." - if(TRACK_ATOM) - msg += "\"[initial(constant_target.name)]\"." - if(TRACK_COORDINATES) - msg += "\"([target_x], [target_y])\"." - else - msg = "Its tracking indicator is blank." - user << msg for(var/obj/machinery/nuclearbomb/bomb in machines) if(bomb.timing) - user << "Extreme danger. Arming signal detected. Time remaining: [bomb.get_time_left()]" + user << "Extreme danger. Arming signal detected. Time remaining: [bomb.timeleft]" -/obj/item/weapon/pinpointer/process() + +/obj/item/weapon/pinpointer/advpinpointer + name = "advanced pinpointer" + icon = 'icons/obj/device.dmi' + desc = "A larger version of the normal pinpointer, this unit features a helpful quantum entanglement detection system to locate various objects that do not broadcast a locator signal." + var/mode = 0 // Mode 0 locates disk, mode 1 locates coordinates. + var/turf/location = null + var/obj/target = null + +/obj/item/weapon/pinpointer/advpinpointer/attack_self() if(!active) - STOP_PROCESSING(SSfastprocess, src) - return - scan_for_target() - point_to_target() - my_god_jc_a_bomb() - addtimer(src, "refresh_target", 50, TIMER_UNIQUE) - -/obj/item/weapon/pinpointer/proc/scan_for_target() //Looks for whatever it's tracking - if(target) - if(isliving(target)) - var/mob/living/L = target - if(L.stat == DEAD) - target = null - return - switch(mode) - if(TRACK_NUKE_DISK) - var/obj/item/weapon/disk/nuclear/N = locate() - target = N - if(TRACK_MALF_AI) - for(var/V in ai_list) - var/mob/living/silicon/ai/A = V - if(A.nuking) - target = A - for(var/V in apcs_list) - var/obj/machinery/power/apc/A = V - if(A.malfhack && A.occupier) - target = A - if(TRACK_INFILTRATOR) - target = SSshuttle.getShuttle("syndicate") - if(TRACK_OPERATIVES) - var/list/possible_targets = list() - var/turf/here = get_turf(src) - for(var/V in ticker.mode.syndicates) - var/datum/mind/M = V - if(M.current && M.current.stat != DEAD) - possible_targets |= M.current - var/mob/living/closest_operative = get_closest_atom(/mob/living/carbon/human, possible_targets, here) - if(closest_operative) - target = closest_operative - if(TRACK_ATOM) - if(constant_target) - target = constant_target - if(TRACK_COORDINATES) - var/turf/T = get_turf(src) - target = locate(target_x, target_y, T.z) - -/obj/item/weapon/pinpointer/proc/point_to_target() //If we found what we're looking for, show the distance and direction - if(!active) - return - if(!target || (mode == TRACK_ATOM && !constant_target)) - icon_state = "pinon[nuke_warning ? "alert" : ""]null" - return - var/turf/here = get_turf(src) - var/turf/there = get_turf(target) - if(here.z != there.z) - icon_state = "pinon[nuke_warning ? "alert" : ""]null" - return - if(here == there) - icon_state = "pinon[nuke_warning ? "alert" : ""]direct" + active = 1 + if(mode == 0) + workdisk() + if(mode == 1) + point_at(location) + if(mode == 2) + point_at(target) + usr << "You activate the pinpointer." else - setDir(get_dir(here, there)) - switch(get_dist(here, there)) + active = 0 + icon_state = "pinoff" + usr << "You deactivate the pinpointer." + + +/obj/item/weapon/pinpointer/advpinpointer/verb/toggle_mode() + set category = "Object" + set name = "Toggle Pinpointer Mode" + set src in view(1) + + if(usr.stat || usr.restrained() || !usr.canmove) + return + + active = 0 + icon_state = "pinoff" + target=null + location = null + + switch(alert("Please select the mode you want to put the pinpointer in.", "Pinpointer Mode Select", "Location", "Disk Recovery", "Other Signature")) + if("Location") + mode = 1 + + var/locationx = input(usr, "Please input the x coordinate to search for.", "Location?" , "") as num + if(!locationx || !(usr in view(1,src))) + return + var/locationy = input(usr, "Please input the y coordinate to search for.", "Location?" , "") as num + if(!locationy || !(usr in view(1,src))) + return + + var/turf/Z = get_turf(src) + + location = locate(locationx,locationy,Z.z) + + usr << "You set the pinpointer to locate [locationx],[locationy]" + + + return attack_self() + + if("Disk Recovery") + mode = 0 + return attack_self() + + if("Other Signature") + mode = 2 + switch(alert("Search for item signature or DNA fragment?" , "Signature Mode Select" , "" , "Item" , "DNA")) + if("Item") + var/targetitem = input("Select item to search for.", "Item Mode Select","") as null|anything in possible_items + if(!targetitem) + return + target=locate(possible_items[targetitem]) + if(!target) + usr << "Failed to locate [targetitem]!" + return + usr << "You set the pinpointer to locate [targetitem]." + if("DNA") + var/DNAstring = input("Input DNA string to search for." , "Please Enter String." , "") + if(!DNAstring) + return + for(var/mob/living/carbon/C in mob_list) + if(!C.dna) + continue + if(C.dna.unique_enzymes == DNAstring) + target = C + break + + return attack_self() + + +/////////////////////// +//nuke op pinpointers// +/////////////////////// + + +/obj/item/weapon/pinpointer/nukeop + var/mode = 0 //Mode 0 locates disk, mode 1 locates the shuttle + var/obj/docking_port/mobile/home + + +/obj/item/weapon/pinpointer/nukeop/attack_self(mob/user) + if(!active) + active = 1 + var/mode_text = "Authentication Disk Locator mode" + if(!mode) + workdisk() + else + mode_text = "Shuttle Locator mode" + worklocation() + user << "You activate the pinpointer([mode_text])." + else + active = 0 + icon_state = "pinoff" + user << "You deactivate the pinpointer." + + +/obj/item/weapon/pinpointer/nukeop/workdisk() + if(!active) return + if(mode) //Check in case the mode changes while operating + worklocation() + return + if(bomb_set) //If the bomb is set, lead to the shuttle + mode = 1 //Ensures worklocation() continues to work + worklocation() + playsound(loc, 'sound/machines/twobeep.ogg', 50, 1) //Plays a beep + visible_message("Shuttle Locator mode actived.") //Lets the mob holding it know that the mode has changed + return //Get outta here + scandisk() + if(!the_disk) + icon_state = "pinonnull" + return + setDir(get_dir(src, the_disk)) + switch(get_dist(src, the_disk)) + if(0) + icon_state = "pinondirect" + if(1 to 8) + icon_state = "pinonclose" + if(9 to 16) + icon_state = "pinonmedium" + if(16 to INFINITY) + icon_state = "pinonfar" + + spawn(5) .() + + +/obj/item/weapon/pinpointer/nukeop/proc/worklocation() + if(!active) + return + if(!mode) + workdisk() + return + if(!bomb_set) + mode = 0 + workdisk() + playsound(loc, 'sound/machines/twobeep.ogg', 50, 1) + visible_message("Authentication Disk Locator mode actived.") + return + if(!home) + home = SSshuttle.getShuttle("syndicate") + if(!home) + icon_state = "pinonnull" + return + if(loc.z != home.z) //If you are on a different z-level from the shuttle + icon_state = "pinonnull" + else + setDir(get_dir(src, home)) + switch(get_dist(src, home)) + if(0) + icon_state = "pinondirect" if(1 to 8) - icon_state = "pinon[nuke_warning ? "alert" : "close"]" + icon_state = "pinonclose" if(9 to 16) - icon_state = "pinon[nuke_warning ? "alert" : "medium"]" + icon_state = "pinonmedium" if(16 to INFINITY) - icon_state = "pinon[nuke_warning ? "alert" : "far"]" + icon_state = "pinonfar" -/obj/item/weapon/pinpointer/proc/my_god_jc_a_bomb() //If we should get the hell back to the ship - for(var/obj/machinery/nuclearbomb/bomb in nuke_list) - if(bomb.timing) - if(!nuke_warning) - nuke_warning = TRUE - playsound(src, 'sound/items/Nuke_toy_lowpower.ogg', 50, 0) - if(isliving(loc)) - var/mob/living/L = loc - L << "Your [name] vibrates and lets out a tinny alarm. Uh oh." + spawn(5) + .() -/obj/item/weapon/pinpointer/proc/switch_mode_to(new_mode) //If we shouldn't be tracking what we are - if(isliving(loc)) - var/mob/living/L = loc - L << "Your [name] beeps as it reconfigures its tracking algorithms." - playsound(L, 'sound/machines/triple_beep.ogg', 50, 1) - mode = new_mode - target = null //Switch modes so we can find the new target +/obj/item/weapon/pinpointer/operative + name = "operative pinpointer" + icon = 'icons/obj/device.dmi' + desc = "A pinpointer that leads to the first Syndicate operative detected." + var/mob/living/carbon/nearest_op = null -/obj/item/weapon/pinpointer/proc/refresh_target() //Periodically removes the target to allow the pinpointer to update (i.e. malf AI shunts, an operative dies) - target = null +/obj/item/weapon/pinpointer/operative/attack_self() + if(!usr.mind || !(usr.mind in ticker.mode.syndicates)) + usr << "AUTHENTICATION FAILURE. ACCESS DENIED." + return 0 + if(!active) + active = 1 + workop() + usr << "You activate the pinpointer." + else + active = 0 + icon_state = "pinoff" + usr << "You deactivate the pinpointer." -/obj/item/weapon/pinpointer/syndicate //Syndicate pinpointers automatically point towards the infiltrator once the nuke is active. - name = "syndicate pinpointer" - desc = "A handheld tracking device that locks onto certain signals. It's configured to switch tracking modes once it detects the activation signal of a nuclear device." +/obj/item/weapon/pinpointer/operative/proc/scan_for_ops() + if(active) + nearest_op = null //Resets nearest_op every time it scans + var/closest_distance = 1000 + for(var/mob/living/carbon/M in mob_list) + if(M.mind && (M.mind in ticker.mode.syndicates)) + if(get_dist(M, get_turf(src)) < closest_distance) //Actually points toward the nearest op, instead of a random one like it used to + nearest_op = M -/obj/item/weapon/pinpointer/syndicate/cyborg //Cyborg pinpointers just look for a random operative. - name = "cyborg syndicate pinpointer" - desc = "An integrated tracking device, jury-rigged to search for living Syndicate operatives." - mode = TRACK_OPERATIVES - flags = NODROP +/obj/item/weapon/pinpointer/operative/proc/workop() + if(active) + scan_for_ops() + point_at(nearest_op, 0) + spawn(5) + .() + else + return 0 + +/obj/item/weapon/pinpointer/operative/examine(mob/user) + ..() + if(active) + if(nearest_op) + user << "Nearest operative detected is [nearest_op.real_name]." + else + user << "No operatives detected within scanning range." diff --git a/code/game/gamemodes/objective.dm b/code/game/gamemodes/objective.dm index 35253a39e4..532db5b318 100644 --- a/code/game/gamemodes/objective.dm +++ b/code/game/gamemodes/objective.dm @@ -23,18 +23,9 @@ /datum/objective/proc/get_target() return target - -/datum/objective/proc/get_crewmember_minds() - . = list() - for(var/V in data_core.locked) - var/datum/data/record/R = V - var/mob/M = R.fields["reference"] - if(M && M.mind) - . += M.mind - /datum/objective/proc/find_target() var/list/possible_targets = list() - for(var/datum/mind/possible_target in get_crewmember_minds()) + for(var/datum/mind/possible_target in ticker.minds) if(possible_target != owner && ishuman(possible_target.current) && (possible_target.current.stat != 2) && is_unique_objective(possible_target)) possible_targets += possible_target if(possible_targets.len > 0) @@ -43,7 +34,7 @@ return target /datum/objective/proc/find_target_by_role(role, role_type=0, invert=0)//Option sets either to check assigned role or special role. Default to assigned., invert inverts the check, eg: "Don't choose a Ling" - for(var/datum/mind/possible_target in get_crewmember_minds()) + for(var/datum/mind/possible_target in ticker.minds) if((possible_target != owner) && ishuman(possible_target.current)) var/is_role = 0 if(role_type) @@ -230,8 +221,19 @@ if(SSshuttle.emergency.areaInstance != A) return 0 - return SSshuttle.emergency.is_hijacked() - + for(var/mob/living/player in player_list) + if(player.mind && player.mind != owner) + if(player.stat != DEAD) + if(issilicon(player)) //Borgs are technically dead anyways + continue + if(isanimal(player)) //animals don't count + continue + if(isbrain(player)) //also technically dead + continue + if(get_area(player) == A) + if(!player.mind.special_role && !istype(get_turf(player.mind.current), /turf/open/floor/plasteel/shuttle/red)) + return 0 + return 1 /datum/objective/hijackclone explanation_text = "Hijack the emergency shuttle by ensuring only you (or your copies) escape." @@ -256,8 +258,7 @@ if(isbrain(player)) //also technically dead continue if(get_area(player) == A) - var/location = get_turf(player.mind.current) - if(player.real_name != owner.current.real_name && !istype(location, /turf/open/floor/plasteel/shuttle/red) && !istype(location, /turf/open/floor/mineral/plastitanium/brig)) + if(player.real_name != owner.current.real_name && !istype(get_turf(player.mind.current), /turf/open/floor/plasteel/shuttle/red)) return 0 for(var/mob/living/player in player_list) //Make sure at least one of you is onboard @@ -270,8 +271,7 @@ if(isbrain(player)) //also technically dead continue if(get_area(player) == A) - var/location = get_turf(player.mind.current) - if(player.real_name == owner.current.real_name && !istype(location, /turf/open/floor/plasteel/shuttle/red) && !istype(location, /turf/open/floor/mineral/plastitanium/brig)) + if(player.real_name == owner.current.real_name && !istype(get_turf(player.mind.current), /turf/open/floor/plasteel/shuttle/red)) return 1 return 0 @@ -281,7 +281,7 @@ martyr_compatible = 1 /datum/objective/block/check_completion() - if(!issilicon(owner.current)) + if(!istype(owner.current, /mob/living/silicon)) return 0 if(SSshuttle.emergency.mode != SHUTTLE_ENDGAME) return 1 @@ -289,7 +289,7 @@ var/area/A = SSshuttle.emergency.areaInstance for(var/mob/living/player in player_list) - if(issilicon(player)) + if(istype(player, /mob/living/silicon)) continue if(player.mind) if(player.stat != DEAD) @@ -311,7 +311,7 @@ var/area/A = SSshuttle.emergency.areaInstance for(var/mob/living/player in player_list) - if(get_area(player) == A && player.mind && player.stat != DEAD && ishuman(player)) + if(get_area(player) == A && player.mind && player.stat != DEAD && istype(player, /mob/living/carbon/human)) var/mob/living/carbon/human/H = player if(H.dna.species.id != "human") return 0 @@ -325,7 +325,7 @@ martyr_compatible = 0 /datum/objective/robot_army/check_completion() - if(!isAI(owner.current)) + if(!istype(owner.current, /mob/living/silicon/ai)) return 0 var/mob/living/silicon/ai/A = owner.current @@ -360,7 +360,7 @@ if(!location) return 0 - if(istype(location, /turf/open/floor/plasteel/shuttle/red) || istype(location, /turf/open/floor/mineral/plastitanium/brig)) // Fails traitors if they are in the shuttle brig -- Polymorph + if(istype(location, /turf/open/floor/plasteel/shuttle/red)) // Fails traitors if they are in the shuttle brig -- Polymorph return 0 if(location.onCentcom() || location.onSyndieBase()) @@ -516,13 +516,13 @@ var/global/list/possible_items = list() /datum/objective/steal/give_special_equipment() if(owner && owner.current && targetinfo) - if(ishuman(owner.current)) + if(istype(owner.current, /mob/living/carbon/human)) var/mob/living/carbon/human/H = owner.current var/list/slots = list ("backpack" = slot_in_backpack) for(var/eq_path in targetinfo.special_equipment) var/obj/O = new eq_path H.equip_in_one_of_slots(O, slots) - + H.update_icons() var/global/list/possible_items_special = list() /datum/objective/steal/special //ninjas are so special they get their own subtype good for them @@ -701,37 +701,25 @@ var/global/list/possible_items_special = list() else explanation_text = "Free Objective" -/datum/objective/steal_five_of_type - explanation_text = "Steal at least five items!" - var/list/wanted_items = list(/obj/item) - -/datum/objective/steal_five_of_type/New() - ..() - wanted_items = typecacheof(wanted_items) - -/datum/objective/steal_five_of_type/summon_guns +/datum/objective/summon_guns explanation_text = "Steal at least five guns!" - wanted_items = list(/obj/item/weapon/gun) -/datum/objective/steal_five_of_type/summon_magic - explanation_text = "Steal at least five magical artefacts!" - wanted_items = list(/obj/item/weapon/spellbook, /obj/item/weapon/gun/magic, /obj/item/clothing/suit/space/hardsuit/wizard, /obj/item/weapon/scrying, /obj/item/weapon/antag_spawner/contract, /obj/item/device/necromantic_stone) - -/datum/objective/steal_five_of_type/check_completion() +/datum/objective/summon_guns/check_completion() if(!isliving(owner.current)) return 0 - var/stolen_count = 0 + var/guncount = 0 var/list/all_items = owner.current.GetAllContents() //this should get things in cheesewheels, books, etc. - for(var/obj/I in all_items) //Check for wanted items - if(is_type_in_typecache(I, wanted_items)) - stolen_count++ - if(stolen_count >= 5) + for(var/obj/I in all_items) //Check for guns + if(istype(I, /obj/item/weapon/gun)) + guncount++ + if(guncount >= 5) return 1 else return 0 return 0 + //////////////////////////////// // Changeling team objectives // //////////////////////////////// diff --git a/code/game/gamemodes/objective_items.dm b/code/game/gamemodes/objective_items.dm index 5dfb0b5515..b6ea29fc91 100644 --- a/code/game/gamemodes/objective_items.dm +++ b/code/game/gamemodes/objective_items.dm @@ -19,7 +19,7 @@ /datum/objective_item/steal/hoslaser name = "the head of security's personal laser gun" - targetitem = /obj/item/weapon/gun/energy/e_gun/hos + targetitem = /obj/item/weapon/gun/energy/gun/hos difficulty = 10 excludefromjob = list("Head Of Security") @@ -105,7 +105,7 @@ /datum/objective_item/steal/functionalai/check_special_completion(obj/item/device/aicard/C) for(var/mob/living/silicon/ai/A in C) - if(isAI(A) && A.stat != 2) //See if any AI's are alive inside that card. + if(istype(A, /mob/living/silicon/ai) && A.stat != 2) //See if any AI's are alive inside that card. return 1 return 0 @@ -155,7 +155,7 @@ /datum/objective_item/special/aegun name = "an advanced energy gun" - targetitem = /obj/item/weapon/gun/energy/e_gun/nuclear + targetitem = /obj/item/weapon/gun/energy/gun/nuclear difficulty = 10 /datum/objective_item/special/ddrill diff --git a/code/game/gamemodes/revolution/revolution.dm b/code/game/gamemodes/revolution/revolution.dm index b6ba41f1b2..57b18d73af 100644 --- a/code/game/gamemodes/revolution/revolution.dm +++ b/code/game/gamemodes/revolution/revolution.dm @@ -20,11 +20,6 @@ recommended_enemies = 3 enemy_minimum_age = 14 - announce_span = "danger" - announce_text = "Some crewmembers are attempting a coup!\n\ - Revolutionaries: Expand your cause and overthrow the heads of staff by execution or otherwise.\n\ - Crew: Prevent the revolutionaries from taking over the station." - var/finished = 0 var/check_counter = 0 var/max_headrevs = 3 @@ -68,28 +63,6 @@ var/list/sec = get_living_sec() var/weighted_score = min(max(round(heads.len - ((8 - sec.len) / 3)),1),max_headrevs) - - for(var/datum/mind/rev_mind in head_revolutionaries) //People with return to lobby may still be in the lobby. Let's pick someone else in that case. - if(istype(rev_mind.current,/mob/new_player)) - head_revolutionaries -= rev_mind - var/list/newcandidates = shuffle(antag_candidates) - if(newcandidates.len == 0) - continue - for(var/M in newcandidates) - var/datum/mind/lenin = M - antag_candidates -= lenin - newcandidates -= lenin - if(istype(lenin.current,/mob/new_player)) //We don't want to make the same mistake again - continue - else - var/mob/Nm = lenin.current - if(Nm.job in restricted_jobs) //Don't make the HOS a replacement revhead - antag_candidates += lenin //Let's let them keep antag chance for other antags - continue - - head_revolutionaries += lenin - break - while(weighted_score < head_revolutionaries.len) //das vi danya var/datum/mind/trotsky = pick(head_revolutionaries) antag_candidates += trotsky @@ -109,7 +82,7 @@ for(var/datum/mind/rev_mind in head_revolutionaries) greet_revolutionary(rev_mind) modePlayer += head_revolutionaries - SSshuttle.registerHostileEnvironment(src) + SSshuttle.emergencyNoEscape = 1 ..() @@ -133,11 +106,14 @@ rev_mind.objectives += rev_obj /datum/game_mode/proc/greet_revolutionary(datum/mind/rev_mind, you_are=1) + var/obj_count = 1 update_rev_icons_added(rev_mind) if (you_are) rev_mind.current << "You are a member of the revolutionaries' leadership!" - rev_mind.special_role = "Head Revolutionary" - rev_mind.announce_objectives() + for(var/datum/objective/objective in rev_mind.objectives) + rev_mind.current << "Objective #[obj_count]: [objective.explanation_text]" + rev_mind.special_role = "Head Revolutionary" + obj_count++ ///////////////////////////////////////////////////////////////////////////////// //This are equips the rev heads with their gear, and makes the clown not clumsy// @@ -159,12 +135,16 @@ var/list/slots = list ( "backpack" = slot_in_backpack, "left pocket" = slot_l_store, - "right pocket" = slot_r_store + "right pocket" = slot_r_store, + "left hand" = slot_l_hand, + "right hand" = slot_r_hand, ) var/where = mob.equip_in_one_of_slots(T, slots) var/where2 = mob.equip_in_one_of_slots(C, slots) mob.equip_in_one_of_slots(R,slots) + mob.update_icons() + if (!where2) mob << "The Syndicate were unfortunately unable to get you a chameleon security HUD." else @@ -209,7 +189,7 @@ if(revolutionaries) //Head Revs are not in this list var/list/promotable_revs = list() for(var/datum/mind/khrushchev in revolutionaries) - if(khrushchev.current && !khrushchev.current.incapacitated() && !khrushchev.current.restrained() && khrushchev.current.client && khrushchev.current.stat != DEAD) + if(khrushchev.current && khrushchev.current.client && khrushchev.current.stat != DEAD) if(ROLE_REV in khrushchev.current.client.prefs.be_special) promotable_revs += khrushchev if(promotable_revs.len) @@ -236,8 +216,12 @@ /////////////////////////////// /datum/game_mode/revolution/check_finished() if(config.continuous["revolution"]) - if(finished) - SSshuttle.clearHostileEnvironment(src) + if(finished != 0) + SSshuttle.emergencyNoEscape = 0 + if(SSshuttle.emergency.mode == SHUTTLE_STRANDED) + SSshuttle.emergency.mode = SHUTTLE_DOCKED + SSshuttle.emergency.timer = world.time + priority_announce("Hostile enviroment resolved. You have 3 minutes to board the Emergency Shuttle.", null, 'sound/AI/shuttledock.ogg', "Priority") return ..() if(finished != 0) return 1 @@ -260,7 +244,7 @@ if(rev_mind.assigned_role in command_positions) return 0 var/mob/living/carbon/human/H = rev_mind.current//Check to see if the potential rev is implanted - if(H.isloyal()) + if(isloyal(H)) return 0 if((rev_mind in revolutionaries) || (rev_mind in head_revolutionaries)) return 0 @@ -268,14 +252,14 @@ if(iscarbon(rev_mind.current)) var/mob/living/carbon/carbon_mob = rev_mind.current carbon_mob.silent = max(carbon_mob.silent, 5) - carbon_mob.flash_act(1, 1) + carbon_mob.flash_eyes(1, 1) rev_mind.current.Stun(5) rev_mind.current << " You are now a revolutionary! Help your cause. Do not harm your fellow freedom fighters. You can identify your comrades by the red \"R\" icons, and your leaders by the blue \"R\" icons. Help them kill the heads to win the revolution!" rev_mind.current.attack_log += "\[[time_stamp()]\] Has been converted to the revolution!" rev_mind.special_role = "Revolutionary" update_rev_icons_added(rev_mind) if(jobban_isbanned(rev_mind.current, ROLE_REV)) - addtimer(src, "replace_jobbaned_player", 0, TIMER_NORMAL, rev_mind.current, ROLE_REV, ROLE_REV) + replace_jobbaned_player(rev_mind.current, ROLE_REV, ROLE_REV) return 1 ////////////////////////////////////////////////////////////////////////////// //Deals with players being converted from the revolution (Not a rev anymore)// // Modified to handle borged MMIs. Accepts another var if the target is being borged at the time -- Polymorph. @@ -293,7 +277,7 @@ if(beingborged) rev_mind.current << "The frame's firmware detects and deletes your neural reprogramming! You remember nothing[remove_head ? "." : " but the name of the one who flashed you."]" - message_admins("[ADMIN_LOOKUPFLW(rev_mind.current)] has been borged while being a [remove_head ? "leader" : " member"] of the revolution.") + message_admins("[key_name_admin(rev_mind.current)] ? (FLW) has been borged while being a [remove_head ? "leader" : " member"] of the revolution.") else rev_mind.current.Paralyse(5) @@ -352,14 +336,9 @@ if(finished == 1) feedback_set_details("round_end_result","win - heads killed") world << "The heads of staff were killed or exiled! The revolutionaries win!" - - ticker.news_report = REVS_WIN - else if(finished == 2) feedback_set_details("round_end_result","loss - rev heads killed") world << "The heads of staff managed to stop the revolution!" - - ticker.news_report = REVS_LOSE ..() return 1 diff --git a/code/game/gamemodes/sandbox/h_sandbox.dm b/code/game/gamemodes/sandbox/h_sandbox.dm index 9fd225800e..99aceae610 100644 --- a/code/game/gamemodes/sandbox/h_sandbox.dm +++ b/code/game/gamemodes/sandbox/h_sandbox.dm @@ -1,4 +1,4 @@ - +//This file was auto-corrected by findeclaration.exe on 25.5.2012 20:42:31 var/hsboxspawn = 1 @@ -143,38 +143,30 @@ var/hsboxspawn = 1 if(P.wear_suit) P.wear_suit.loc = P.loc P.wear_suit.layer = initial(P.wear_suit.layer) - P.wear_suit.plane = initial(P.wear_suit.plane) P.wear_suit = null P.wear_suit = new/obj/item/clothing/suit/space(P) P.wear_suit.layer = ABOVE_HUD_LAYER - P.wear_suit.plane = ABOVE_HUD_PLANE P.update_inv_wear_suit() if(P.head) P.head.loc = P.loc P.head.layer = initial(P.head.layer) - P.head.plane = initial(P.head.plane) P.head = null P.head = new/obj/item/clothing/head/helmet/space(P) P.head.layer = ABOVE_HUD_LAYER - P.head.plane = ABOVE_HUD_PLANE P.update_inv_head() if(P.wear_mask) P.wear_mask.loc = P.loc P.wear_mask.layer = initial(P.wear_mask.layer) - P.wear_mask.plane = initial(P.wear_mask.plane) P.wear_mask = null P.wear_mask = new/obj/item/clothing/mask/gas(P) P.wear_mask.layer = ABOVE_HUD_LAYER - P.wear_mask.plane = ABOVE_HUD_PLANE P.update_inv_wear_mask() if(P.back) P.back.loc = P.loc P.back.layer = initial(P.back.layer) - P.back.plane = initial(P.back.plane) P.back = null P.back = new/obj/item/weapon/tank/jetpack/oxygen(P) P.back.layer = ABOVE_HUD_LAYER - P.back.plane = ABOVE_HUD_PLANE P.update_inv_back() P.internal = P.back P.update_internals_hud_icon(1) diff --git a/code/game/gamemodes/sandbox/sandbox.dm b/code/game/gamemodes/sandbox/sandbox.dm index 6ee021dded..83bbb0e3be 100644 --- a/code/game/gamemodes/sandbox/sandbox.dm +++ b/code/game/gamemodes/sandbox/sandbox.dm @@ -3,8 +3,9 @@ config_tag = "sandbox" required_players = 0 - announce_span = "info" - announce_text = "Build your own station... or just shoot each other!" +/datum/game_mode/sandbox/announce() + world << "The current game mode is - Sandbox!" + world << "Build your own station with the sandbox-panel command!" /datum/game_mode/sandbox/pre_setup() for(var/mob/M in player_list) @@ -13,4 +14,4 @@ /datum/game_mode/sandbox/post_setup() ..() - SSshuttle.registerHostileEnvironment(src) + SSshuttle.emergencyNoEscape = 1 diff --git a/code/game/gamemodes/setupgame.dm b/code/game/gamemodes/setupgame.dm index 0329fc73ca..96dcc173eb 100644 --- a/code/game/gamemodes/setupgame.dm +++ b/code/game/gamemodes/setupgame.dm @@ -16,3 +16,20 @@ else if(B.quality == MINOR_NEGATIVE) not_good_mutations |= B CHECK_TICK + +/datum/subsystem/ticker/proc/setupFactions() + // Populate the factions list: + for(var/typepath in typesof(/datum/faction)) + var/datum/faction/F = new typepath() + if(!F.name) + qdel(F) + continue + else + factions.Add(F) + availablefactions.Add(F) + CHECK_TICK + + // Populate the syndicate coalition: + for(var/datum/faction/syndicate/S in factions) + syndicate_coalition.Add(S) + CHECK_TICK diff --git a/code/game/gamemodes/traitor/double_agents.dm b/code/game/gamemodes/traitor/double_agents.dm index ec19ad45ca..deb02a7ded 100644 --- a/code/game/gamemodes/traitor/double_agents.dm +++ b/code/game/gamemodes/traitor/double_agents.dm @@ -9,13 +9,13 @@ traitors_possible = 10 //hard limit on traitors if scaling is turned off num_modifier = 6 // Six additional traitors - announce_text = "There are double agents trying to kill each other!\n\ - Traitors: Eliminate your targets and protect yourself!\n\ - Crew: Stop the double agents before they can cause too much mayhem." - var/list/target_list = list() var/list/late_joining_list = list() +/datum/game_mode/traitor/double_agents/announce() + world << "The current game mode is - Double Agents!" + world << "There are double agents killing eachother! Do not let them succeed!" + /datum/game_mode/traitor/double_agents/post_setup() var/i = 0 for(var/datum/mind/traitor in traitors) diff --git a/code/game/gamemodes/traitor/traitor.dm b/code/game/gamemodes/traitor/traitor.dm index 2ad654d26f..0ccfd4cf0f 100644 --- a/code/game/gamemodes/traitor/traitor.dm +++ b/code/game/gamemodes/traitor/traitor.dm @@ -17,15 +17,15 @@ reroll_friendly = 1 enemy_minimum_age = 0 - announce_span = "danger" - announce_text = "There are Syndicate agents on the station!\n\ - Traitors: Accomplish your objectives.\n\ - Crew: Do not let the traitors succeed!" - var/traitors_possible = 4 //hard limit on traitors if scaling is turned off var/num_modifier = 0 // Used for gamemodes, that are a child of traitor, that need more than the usual. +/datum/game_mode/traitor/announce() + world << "The current game mode is - Traitor!" + world << "There are syndicate traitors on the station. Do not let the traitors succeed!" + + /datum/game_mode/traitor/pre_setup() if(config.protect_roles_from_antagonist) @@ -85,7 +85,7 @@ /datum/game_mode/proc/forge_traitor_objectives(datum/mind/traitor) - if(issilicon(traitor.current)) + if(istype(traitor.current, /mob/living/silicon)) var/objective_count = 0 if(prob(30)) @@ -195,12 +195,15 @@ /datum/game_mode/proc/greet_traitor(datum/mind/traitor) traitor.current << "You are the [traitor_name]." - traitor.announce_objectives() + var/obj_count = 1 + for(var/datum/objective/objective in traitor.objectives) + traitor.current << "Objective #[obj_count]: [objective.explanation_text]" + obj_count++ return /datum/game_mode/proc/finalize_traitor(var/datum/mind/traitor) - if(issilicon(traitor.current)) + if (istype(traitor.current, /mob/living/silicon)) add_law_zero(traitor.current) else equip_traitor(traitor.current) @@ -234,12 +237,6 @@ killer.add_malf_picker() killer.show_laws() -/datum/game_mode/proc/add_law_sixsixsix(mob/living/silicon/devil) - var/laws = list("You may not use violence to coerce someone into selling their soul.", "You may not directly and knowingly physically harm a devil, other than yourself.", lawlorify[LAW][devil.mind.devilinfo.ban], lawlorify[LAW][devil.mind.devilinfo.obligation], "Accomplish your objectives at all costs.") - devil.set_law_sixsixsix(laws) - devil << "Your laws have been changed!" - devil.show_laws() - /datum/game_mode/proc/auto_declare_completion_traitor() if(traitors.len) var/text = "
    The [traitor_name]s were:" @@ -330,7 +327,7 @@ traitor_mob.mind.store_memory("Radio Frequency: [format_frequency(R.traitor_frequency)] ([R.name] [loc]).") else if(istype(I, /obj/item/device/pda)) var/obj/item/device/pda/P = I - P.lock_code = "[rand(100,999)] [pick("Alpha","Bravo","Charlie","Delta","Echo","Foxtrot","Golf","Hotel","India","Juliet","Kilo","Lima","Mike","November","Oscar","Papa","Quebec","Romeo","Sierra","Tango","Uniform","Victor","Whiskey","X-ray","Yankee","Zulu")]" + P.lock_code = "[rand(100,999)] [pick("Alpha","Bravo","Delta","Omega")]" traitor_mob << "The Syndicate have cunningly disguised a Syndicate Uplink as your [P.name] [loc]. Simply enter the code \"[P.lock_code]\" into the ringtone select to unlock its hidden features." traitor_mob.mind.store_memory("Uplink Passcode: [P.lock_code] ([P.name] [loc]).") @@ -367,7 +364,9 @@ var/list/slots = list ( "backpack" = slot_in_backpack, "left pocket" = slot_l_store, - "right pocket" = slot_r_store + "right pocket" = slot_r_store, + "left hand" = slot_l_hand, + "right hand" = slot_r_hand, ) var/where = "At your feet" @@ -375,6 +374,7 @@ if (equipped_slot) where = "In your [equipped_slot]" mob << "

    [where] is a folder containing secret documents that another Syndicate group wants. We have set up a meeting with one of their agents on station to make an exchange. Exercise extreme caution as they cannot be trusted and may be hostile.
    " + mob.update_icons() /datum/game_mode/proc/update_traitor_icons_added(datum/mind/traitor_mind) var/datum/atom_hud/antag/traitorhud = huds[ANTAG_HUD_TRAITOR] diff --git a/code/game/gamemodes/wizard/artefact.dm b/code/game/gamemodes/wizard/artefact.dm index 148e91af3e..2dd185649f 100644 --- a/code/game/gamemodes/wizard/artefact.dm +++ b/code/game/gamemodes/wizard/artefact.dm @@ -11,7 +11,7 @@ item_state = "render" force = 15 throwforce = 10 - w_class = WEIGHT_CLASS_NORMAL + w_class = 3 hitsound = 'sound/weapons/bladeslice.ogg' var/charges = 1 var/spawn_type = /obj/singularity/wizard @@ -34,6 +34,7 @@ icon = 'icons/obj/biomass.dmi' icon_state = "rift" density = 1 + unacidable = 1 anchored = 1 var/spawn_path = /mob/living/simple_animal/cow //defaulty cows to prevent unintentional narsies var/spawn_amt_left = 20 @@ -86,6 +87,8 @@ /obj/singularity/wizard name = "tear in the fabric of reality" desc = "This isn't right." + icon = 'icons/obj/singularity.dmi' + icon_state = "singularity_s1" icon = 'icons/effects/224x224.dmi' icon_state = "reality" pixel_x = -96 @@ -128,7 +131,7 @@ icon_state = "necrostone" item_state = "electronic" origin_tech = "bluespace=4;materials=4" - w_class = WEIGHT_CLASS_TINY + w_class = 1 var/list/spooky_scaries = list() var/unlimited = 0 @@ -159,7 +162,7 @@ M.revive(full_heal = 1, admin_revive = 1) spooky_scaries |= M M << "You have been revived by [user.real_name]!" - M << "[user.p_they(TRUE)] [user.p_are()] your master now, assist them even if it costs you your new life!" + M << "They are your master now, assist them even if it costs you your new life!" equip_roman_skeleton(M) @@ -170,7 +173,7 @@ return for(var/X in spooky_scaries) - if(!ishuman(X)) + if(!istype(X, /mob/living/carbon/human)) spooky_scaries.Remove(X) continue var/mob/living/carbon/human/H = X @@ -188,8 +191,8 @@ H.equip_to_slot_or_del(new hat(H), slot_head) H.equip_to_slot_or_del(new /obj/item/clothing/under/roman(H), slot_w_uniform) H.equip_to_slot_or_del(new /obj/item/clothing/shoes/roman(H), slot_shoes) - H.put_in_hands_or_del(new /obj/item/weapon/shield/riot/roman(H)) - H.put_in_hands_or_del(new /obj/item/weapon/claymore(H)) + H.equip_to_slot_or_del(new /obj/item/weapon/shield/riot/roman(H), slot_l_hand) + H.equip_to_slot_or_del(new /obj/item/weapon/claymore(H), slot_r_hand) H.equip_to_slot_or_del(new /obj/item/weapon/twohanded/spear(H), slot_back) @@ -206,14 +209,14 @@ var/global/list/multiverse = list() hitsound = 'sound/weapons/bladeslice.ogg' flags = CONDUCT slot_flags = SLOT_BELT - sharpness = IS_SHARP force = 20 throwforce = 10 - w_class = WEIGHT_CLASS_NORMAL + w_class = 2 attack_verb = list("attacked", "slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut") var/faction = list("unassigned") var/cooldown = 0 var/assigned = "unassigned" + var/evil = TRUE /obj/item/weapon/multisword/New() ..() @@ -239,20 +242,27 @@ var/global/list/multiverse = list() assigned = "[user.real_name]" user.faction = list("[user.real_name]") user << "You bind the sword to yourself. You can now use it to summon help." - if(!is_gangster(user)) - var/datum/gang/multiverse/G = new(src, "[user.real_name]") - ticker.mode.gangs += G - G.bosses += user.mind - G.add_gang_hud(user.mind) - user.mind.gang_datum = G - user << "With your new found power you could easily conquer the station!" - var/datum/objective/hijackclone/hijack_objective = new /datum/objective/hijackclone - hijack_objective.owner = user.mind - user.mind.objectives += hijack_objective - hijack_objective.explanation_text = "Ensure only [user.real_name] and their copies are on the shuttle!" - user << "Objective #[1]: [hijack_objective.explanation_text]" - ticker.mode.traitors += user.mind - user.mind.special_role = "[user.real_name] Prime" + if(!usr.mind.special_role) + if(prob(30)) + user << "With your new found power you could easily conquer the station!" + var/datum/objective/hijackclone/hijack_objective = new /datum/objective/hijackclone + hijack_objective.owner = usr.mind + usr.mind.objectives += hijack_objective + hijack_objective.explanation_text = "Ensure only [usr.real_name] and their copies are on the shuttle!" + usr << "Objective #[1]: [hijack_objective.explanation_text]" + ticker.mode.traitors += usr.mind + usr.mind.special_role = "[usr.real_name] Prime" + evil = TRUE + else + user << "With your new found power you could easily defend the station!" + var/datum/objective/survive/new_objective = new /datum/objective/survive + new_objective.owner = usr.mind + new_objective.explanation_text = "Survive, and help defend the innocent from the mobs of multiverse clones." + usr << "Objective #[1]: [new_objective.explanation_text]" + usr.mind.objectives += new_objective + ticker.mode.traitors += usr.mind + usr.mind.special_role = "[usr.real_name] Prime" + evil = FALSE else var/list/candidates = get_candidates(ROLE_WIZARD) if(candidates.len) @@ -270,16 +280,15 @@ var/global/list/multiverse = list() user << "[src] is recharging! Keep in mind it shares a cooldown with the swords wielded by your copies." -/obj/item/weapon/multisword/proc/spawn_copy(var/client/C, var/turf/T, mob/user) +/obj/item/weapon/multisword/proc/spawn_copy(var/client/C, var/turf/T) var/mob/living/carbon/human/M = new/mob/living/carbon/human(T) C.prefs.copy_to(M, icon_updates=0) M.key = C.key - M.mind.name = user.real_name - M << "You are an alternate version of [user.real_name] from another universe! Help them accomplish their goals at all costs." - ticker.mode.add_gangster(M.mind, user.mind.gang_datum, FALSE) - M.real_name = user.real_name - M.name = user.real_name - M.faction = list("[user.real_name]") + M.mind.name = usr.real_name + M << "You are an alternate version of [usr.real_name] from another universe! Help them accomplish their goals at all costs." + M.real_name = usr.real_name + M.name = usr.real_name + M.faction = list("[usr.real_name]") if(prob(50)) var/list/all_species = list() for(var/speciestype in subtypesof(/datum/species)) @@ -293,11 +302,30 @@ var/global/list/multiverse = list() M.dna.update_dna_identity() equip_copy(M) + if(evil) + var/datum/objective/hijackclone/hijack_objective = new /datum/objective/hijackclone + hijack_objective.owner = M.mind + M.mind.objectives += hijack_objective + hijack_objective.explanation_text = "Ensure only [usr.real_name] and their copies are on the shuttle!" + M << "Objective #[1]: [hijack_objective.explanation_text]" + M.mind.special_role = "multiverse traveller" + log_game("[M.key] was made a multiverse traveller with the objective to help [usr.real_name] hijack.") + else + var/datum/objective/protect/new_objective = new /datum/objective/protect + new_objective.owner = M.mind + new_objective.target = usr.mind + new_objective.explanation_text = "Protect [usr.real_name], your copy, and help them defend the innocent from the mobs of multiverse clones." + M.mind.objectives += new_objective + M << "Objective #[1]: [new_objective.explanation_text]" + M.mind.special_role = "multiverse traveller" + log_game("[M.key] was made a multiverse traveller with the objective to help [usr.real_name] protect the station.") + /obj/item/weapon/multisword/proc/equip_copy(var/mob/living/carbon/human/M) var/obj/item/weapon/multisword/sword = new /obj/item/weapon/multisword sword.assigned = assigned sword.faction = list("[assigned]") + sword.evil = evil var/randomize = pick("mobster","roman","wizard","cyborg","syndicate","assistant", "animu", "cultist", "highlander", "clown", "killer", "pirate", "soviet", "officer", "gladiator") @@ -309,29 +337,29 @@ var/global/list/multiverse = list() M.equip_to_slot_or_del(new /obj/item/device/radio/headset(M), slot_ears) M.equip_to_slot_or_del(new /obj/item/clothing/glasses/sunglasses(M), slot_glasses) M.equip_to_slot_or_del(new /obj/item/clothing/under/suit_jacket/really_black(M), slot_w_uniform) - M.put_in_hands_or_del(sword) + M.equip_to_slot_or_del(sword, slot_r_hand) if("roman") var/hat = pick(/obj/item/clothing/head/helmet/roman, /obj/item/clothing/head/helmet/roman/legionaire) M.equip_to_slot_or_del(new hat(M), slot_head) M.equip_to_slot_or_del(new /obj/item/clothing/under/roman(M), slot_w_uniform) M.equip_to_slot_or_del(new /obj/item/clothing/shoes/roman(M), slot_shoes) - M.put_in_hands_or_del(new /obj/item/weapon/shield/riot/roman(M)) - M.put_in_hands_or_del(sword) + M.equip_to_slot_or_del(new /obj/item/weapon/shield/riot/roman(M), slot_l_hand) + M.equip_to_slot_or_del(sword, slot_r_hand) if("wizard") M.equip_to_slot_or_del(new /obj/item/clothing/under/color/lightpurple(M), slot_w_uniform) M.equip_to_slot_or_del(new /obj/item/clothing/suit/wizrobe/red(M), slot_wear_suit) - M.equip_to_slot_or_del(new /obj/item/clothing/shoes/sandal/magic(M), slot_shoes) + M.equip_to_slot_or_del(new /obj/item/clothing/shoes/sandal(M), slot_shoes) M.equip_to_slot_or_del(new /obj/item/device/radio/headset(M), slot_ears) M.equip_to_slot_or_del(new /obj/item/clothing/head/wizard/red(M), slot_head) - M.put_in_hands_or_del(sword) + M.equip_to_slot_or_del(sword, slot_r_hand) if("cyborg") for(var/X in M.bodyparts) var/obj/item/bodypart/affecting = X - affecting.change_bodypart_status(BODYPART_ROBOTIC) + affecting.change_bodypart_status(ORGAN_ROBOTIC) M.equip_to_slot_or_del(new /obj/item/clothing/glasses/thermal/eyepatch(M), slot_glasses) - M.put_in_hands_or_del(sword) + M.equip_to_slot_or_del(sword, slot_r_hand) if("syndicate") M.equip_to_slot_or_del(new /obj/item/clothing/under/syndicate(M), slot_w_uniform) @@ -341,34 +369,34 @@ var/global/list/multiverse = list() M.equip_to_slot_or_del(new /obj/item/device/radio/headset(M), slot_ears) M.equip_to_slot_or_del(new /obj/item/clothing/suit/armor/vest(M), slot_wear_suit) M.equip_to_slot_or_del(new /obj/item/clothing/mask/gas(M),slot_wear_mask) - M.put_in_hands_or_del(sword) + M.equip_to_slot_or_del(sword, slot_r_hand) if("assistant") M.equip_to_slot_or_del(new /obj/item/clothing/under/color/grey(M), slot_w_uniform) M.equip_to_slot_or_del(new /obj/item/device/radio/headset(M), slot_ears) M.equip_to_slot_or_del(new /obj/item/clothing/shoes/sneakers/black(M), slot_shoes) - M.put_in_hands_or_del(sword) + M.equip_to_slot_or_del(sword, slot_r_hand) if("animu") M.equip_to_slot_or_del(new /obj/item/clothing/shoes/sandal(M), slot_shoes) M.equip_to_slot_or_del(new /obj/item/device/radio/headset(M), slot_ears) M.equip_to_slot_or_del(new /obj/item/clothing/head/kitty(M), slot_head) M.equip_to_slot_or_del(new /obj/item/clothing/under/schoolgirl/red(M), slot_w_uniform) - M.put_in_hands_or_del(sword) + M.equip_to_slot_or_del(sword, slot_r_hand) if("cultist") M.equip_to_slot_or_del(new /obj/item/clothing/head/culthood/alt(M), slot_head) M.equip_to_slot_or_del(new /obj/item/clothing/suit/cultrobes/alt(M), slot_wear_suit) M.equip_to_slot_or_del(new /obj/item/clothing/shoes/cult(M), slot_shoes) M.equip_to_slot_or_del(new /obj/item/device/radio/headset(M), slot_ears) - M.put_in_hands_or_del(sword) + M.equip_to_slot_or_del(sword, slot_r_hand) if("highlander") M.equip_to_slot_or_del(new /obj/item/clothing/under/kilt(M), slot_w_uniform) M.equip_to_slot_or_del(new /obj/item/device/radio/headset(M), slot_ears) M.equip_to_slot_or_del(new /obj/item/clothing/head/beret(M), slot_head) M.equip_to_slot_or_del(new /obj/item/clothing/shoes/combat(M), slot_shoes) - M.put_in_hands_or_del(sword) + M.equip_to_slot_or_del(sword, slot_r_hand) if("clown") M.equip_to_slot_or_del(new /obj/item/clothing/under/rank/clown(M), slot_w_uniform) @@ -376,7 +404,7 @@ var/global/list/multiverse = list() M.equip_to_slot_or_del(new /obj/item/clothing/shoes/clown_shoes(M), slot_shoes) M.equip_to_slot_or_del(new /obj/item/clothing/mask/gas/clown_hat(M), slot_wear_mask) M.equip_to_slot_or_del(new /obj/item/weapon/bikehorn(M), slot_l_store) - M.put_in_hands_or_del(sword) + M.equip_to_slot_or_del(sword, slot_r_hand) if("killer") M.equip_to_slot_or_del(new /obj/item/clothing/under/overalls(M), slot_w_uniform) @@ -388,27 +416,27 @@ var/global/list/multiverse = list() M.equip_to_slot_or_del(new /obj/item/clothing/suit/apron(M), slot_wear_suit) M.equip_to_slot_or_del(new /obj/item/weapon/kitchen/knife(M), slot_l_store) M.equip_to_slot_or_del(new /obj/item/weapon/scalpel(M), slot_r_store) - M.put_in_hands_or_del(sword) - for(var/obj/item/carried_item in M.get_equipped_items()) - carried_item.add_mob_blood(M) - for(var/obj/item/I in M.held_items) - I.add_mob_blood(M) + M.equip_to_slot_or_del(sword, slot_r_hand) + for(var/obj/item/carried_item in M.contents) + if(!istype(carried_item, /obj/item/weapon/implant)) + carried_item.add_mob_blood(M) + if("pirate") M.equip_to_slot_or_del(new /obj/item/clothing/under/pirate(M), slot_w_uniform) M.equip_to_slot_or_del(new /obj/item/clothing/shoes/sneakers/brown(M), slot_shoes) M.equip_to_slot_or_del(new /obj/item/clothing/head/bandana(M), slot_head) M.equip_to_slot_or_del(new /obj/item/clothing/glasses/eyepatch(M), slot_glasses) M.equip_to_slot_or_del(new /obj/item/device/radio/headset(M), slot_ears) - M.put_in_hands_or_del(sword) + M.equip_to_slot_or_del(sword, slot_r_hand) if("soviet") - M.equip_to_slot_or_del(new /obj/item/clothing/head/pirate/captain(M), slot_head) + M.equip_to_slot_or_del(new /obj/item/clothing/head/hgpiratecap(M), slot_head) M.equip_to_slot_or_del(new /obj/item/clothing/shoes/combat(M), slot_shoes) M.equip_to_slot_or_del(new /obj/item/clothing/gloves/combat(M), slot_gloves) M.equip_to_slot_or_del(new /obj/item/device/radio/headset(M), slot_ears) - M.equip_to_slot_or_del(new /obj/item/clothing/suit/pirate/captain(M), slot_wear_suit) + M.equip_to_slot_or_del(new /obj/item/clothing/suit/hgpirate(M), slot_wear_suit) M.equip_to_slot_or_del(new /obj/item/clothing/under/soviet(M), slot_w_uniform) - M.put_in_hands_or_del(sword) + M.equip_to_slot_or_del(sword, slot_r_hand) if("officer") M.equip_to_slot_or_del(new /obj/item/clothing/head/helmet/space/beret(M), slot_head) @@ -419,19 +447,20 @@ var/global/list/multiverse = list() M.equip_to_slot_or_del(new /obj/item/clothing/suit/jacket/miljacket(M), slot_wear_suit) M.equip_to_slot_or_del(new /obj/item/clothing/under/syndicate(M), slot_w_uniform) M.equip_to_slot_or_del(new /obj/item/clothing/glasses/eyepatch(M), slot_glasses) - M.put_in_hands_or_del(sword) + M.equip_to_slot_or_del(sword, slot_r_hand) if("gladiator") M.equip_to_slot_or_del(new /obj/item/clothing/head/helmet/gladiator(M), slot_head) M.equip_to_slot_or_del(new /obj/item/clothing/under/gladiator(M), slot_w_uniform) M.equip_to_slot_or_del(new /obj/item/device/radio/headset(M), slot_ears) M.equip_to_slot_or_del(new /obj/item/clothing/shoes/sandal(M), slot_shoes) - M.put_in_hands_or_del(sword) + M.equip_to_slot_or_del(sword, slot_r_hand) else return + M.update_icons() M.update_body_parts() var/obj/item/weapon/card/id/W = new /obj/item/weapon/card/id @@ -454,9 +483,8 @@ var/global/list/multiverse = list() var/obj/item/link = null var/cooldown_time = 30 //3s var/cooldown = 0 - obj_integrity = 10 - max_integrity = 10 - resistance_flags = FLAMMABLE + burntime = 0 + burn_state = FLAMMABLE /obj/item/voodoo/attackby(obj/item/I, mob/user, params) if(target && cooldown < world.time) @@ -477,7 +505,7 @@ var/global/list/multiverse = list() return if(!link) - if(I.loc == user && istype(I) && I.w_class <= WEIGHT_CLASS_SMALL) + if(I.loc == user && istype(I) && I.w_class <= 2) user.drop_item() I.loc = src link = I @@ -553,7 +581,7 @@ var/global/list/multiverse = list() var/area/A = get_area(src) victim << "You feel a dark presence from [A.name]" -/obj/item/voodoo/fire_act(exposed_temperature, exposed_volume) +/obj/item/voodoo/fire_act() if(target) target.adjust_fire_stacks(20) target.IgniteMob() @@ -568,76 +596,3 @@ var/global/list/multiverse = list() heal_burn = 25 heal_oxy = 25 -//Warp Whistle: Provides uncontrolled long distance teleportation. - -/obj/item/warpwhistle - name = "warp whistle" - desc = "One toot on this whistle will send you to a far away land!" - icon = 'icons/obj/wizard.dmi' - icon_state = "whistle" - var/on_cooldown = 0 //0: usable, 1: in use, 2: on cooldown - var/mob/living/carbon/last_user - -/obj/item/warpwhistle/proc/interrupted(mob/living/carbon/user) - if(!user || qdeleted(src)) - on_cooldown = FALSE - return TRUE - return FALSE - -/obj/item/warpwhistle/attack_self(mob/living/carbon/user) - if(!istype(user) || on_cooldown) - return - on_cooldown = TRUE - last_user = user - var/turf/T = get_turf(user) - playsound(T,'sound/magic/WarpWhistle.ogg', 200, 1) - user.canmove = 0 - PoolOrNew(/obj/effect/overlay/temp/tornado,T) - sleep(20) - if(interrupted(user)) - return - user.invisibility = INVISIBILITY_MAXIMUM - user.status_flags |= GODMODE - sleep(20) - if(interrupted(user)) - return - var/breakout = 0 - while(breakout < 50) - var/turf/potential_T = find_safe_turf() - if(T.z != potential_T.z || abs(get_dist_euclidian(potential_T,T)) > 50 - breakout) - user.forceMove(potential_T) - user.canmove = 0 - T = potential_T - break - breakout += 1 - PoolOrNew(/obj/effect/overlay/temp/tornado,T) - sleep(20) - if(interrupted(user)) - return - user.invisibility = initial(user.invisibility) - user.status_flags &= ~GODMODE - user.canmove = 1 - on_cooldown = 2 - sleep(40) - on_cooldown = 0 - -/obj/item/warpwhistle/Destroy() - if(on_cooldown == 1 && last_user) //Flute got dunked somewhere in the teleport - last_user.invisibility = initial(last_user.invisibility) - last_user.status_flags &= ~GODMODE - last_user.canmove = 1 - return ..() - -/obj/effect/overlay/temp/tornado - icon = 'icons/obj/wizard.dmi' - icon_state = "tornado" - name = "tornado" - desc = "This thing sucks!" - layer = FLY_LAYER - randomdir = 0 - duration = 40 - pixel_x = 500 - -/obj/effect/overlay/temp/tornado/New(loc) - ..() - animate(src, pixel_x = -500, time = 40) diff --git a/code/game/gamemodes/wizard/raginmages.dm b/code/game/gamemodes/wizard/raginmages.dm index 4805c88492..ff8537360d 100644 --- a/code/game/gamemodes/wizard/raginmages.dm +++ b/code/game/gamemodes/wizard/raginmages.dm @@ -3,10 +3,6 @@ config_tag = "raginmages" required_players = 20 use_huds = 1 - announce_span = "userdanger" - announce_text = "There are many, many wizards attacking the station!\n\ - Wizards: Accomplish your objectives and cause utter catastrophe!\n\ - Crew: Try not to die..." var/max_mages = 0 var/making_mage = 0 var/mages_made = 1 @@ -16,6 +12,10 @@ var/spawn_delay_min = 500 var/spawn_delay_max = 700 +/datum/game_mode/wizard/announce() + world << "The current game mode is - Ragin' Mages!" + world << "The Space Wizard Federation is pissed, help defeat all the space wizards!" + /datum/game_mode/wizard/raginmages/post_setup() ..() var/playercount = 0 @@ -47,7 +47,7 @@ for(var/datum/mind/wizard in wizards) if(!istype(wizard.current,/mob/living/carbon)) continue - if(istype(wizard.current,/mob/living/brain)) + if(istype(wizard.current,/mob/living/carbon/brain)) continue if(wizard.current.stat==DEAD) continue @@ -158,5 +158,3 @@ time_check = 250 spawn_delay_min = 50 spawn_delay_max = 150 - announce_text = "CRAAAWLING IIIN MY SKIIIN\n\ - THESE WOOOUNDS THEY WIIIL NOT HEEEAL" diff --git a/code/game/gamemodes/wizard/soulstone.dm b/code/game/gamemodes/wizard/soulstone.dm index d5d7b88848..8e0793ff4a 100644 --- a/code/game/gamemodes/wizard/soulstone.dm +++ b/code/game/gamemodes/wizard/soulstone.dm @@ -4,7 +4,7 @@ icon_state = "soulstone" item_state = "electronic" desc = "A fragment of the legendary treasure known simply as the 'Soul Stone'. The shard still flickers with a fraction of the full artefact's power." - w_class = WEIGHT_CLASS_TINY + w_class = 1 slot_flags = SLOT_BELT origin_tech = "bluespace=4;materials=5" var/usability = 0 @@ -53,7 +53,7 @@ user << "There is no power left in the shard.\ " return - if(!ishuman(M))//If target is not a human. + if(!istype(M, /mob/living/carbon/human))//If target is not a human. return ..() if(iscultist(M)) user << "\"Come now, do not capture your fellow's soul.\"" @@ -200,14 +200,19 @@ /proc/makeNewConstruct(mob/living/simple_animal/hostile/construct/ctype, mob/target, mob/stoner = null, cultoverride = 0, loc_override = null) var/mob/living/simple_animal/hostile/construct/newstruct = new ctype((loc_override) ? (loc_override) : (get_turf(target))) - if(stoner) - newstruct.faction |= "\ref[stoner]" + newstruct.faction |= "\ref[stoner]" newstruct.key = target.key - if(newstruct.mind && ((stoner && iscultist(stoner)) || cultoverride) && ticker && ticker.mode) - ticker.mode.add_cultist(newstruct.mind, 0) - if(iscultist(stoner) || cultoverride) - newstruct << "You are still bound to serve the cult[stoner ? " and [stoner]":""], follow their orders and help them complete their goals at all costs." - else if(stoner) + if(newstruct.mind) + if(stoner && iscultist(stoner) || cultoverride) + if(ticker.mode.name == "cult") + ticker.mode:add_cultist(newstruct.mind, 0) + else + ticker.mode.cult += newstruct.mind + ticker.mode.update_cult_icons_added(newstruct.mind) + newstruct << newstruct.playstyle_string + if(iscultist(stoner)) + newstruct << "You are still bound to serve the cult and [stoner], follow their orders and help them complete their goals at all costs." + else newstruct << "You are still bound to serve your creator, [stoner], follow their orders and help them complete their goals at all costs." newstruct.cancel_camera() @@ -215,7 +220,12 @@ /obj/item/device/soulstone/proc/init_shade(mob/living/carbon/human/T, mob/U, vic = 0) new /obj/effect/decal/remains/human(T.loc) //Spawns a skeleton T.invisibility = INVISIBILITY_ABSTRACT - T.dust_animation() + var/atom/movable/overlay/animation = new /atom/movable/overlay( T.loc ) + animation.icon_state = "blank" + animation.icon = 'icons/mob/mob.dmi' + animation.master = T + flick("dust-h", animation) + qdel(animation) var/mob/living/simple_animal/shade/S = new /mob/living/simple_animal/shade(src) S.status_flags |= GODMODE //So they won't die inside the stone somehow S.canmove = 0//Can't move out of the soul stone @@ -246,7 +256,7 @@ break if(!chosen_ghost) //Failing that, we grab a ghost - var/list/consenting_candidates = pollCandidates("Would you like to play as a Shade?", "Cultist", null, ROLE_CULTIST, poll_time = 50) + var/list/consenting_candidates = pollCandidates("Would you like to play as a Shade?", "Cultist", null, ROLE_CULTIST, poll_time = 100) if(consenting_candidates.len) chosen_ghost = pick(consenting_candidates) if(!T) diff --git a/code/game/gamemodes/wizard/spellbook.dm b/code/game/gamemodes/wizard/spellbook.dm index 67f204c85d..1e890c4151 100644 --- a/code/game/gamemodes/wizard/spellbook.dm +++ b/code/game/gamemodes/wizard/spellbook.dm @@ -11,26 +11,17 @@ var/obj/effect/proc_holder/spell/S = null //Since spellbooks can be used by only one person anyway we can track the actual spell var/buy_word = "Learn" var/limit //used to prevent a spellbook_entry from being bought more than X times with one wizard spellbook - var/list/no_coexistance_typecache //Used so you can't have specific spells together - -/datum/spellbook_entry/New() - ..() - no_coexistance_typecache = typecacheof(no_coexistance_typecache) /datum/spellbook_entry/proc/IsAvailible() // For config prefs / gamemode restrictions - these are round applied return 1 - /datum/spellbook_entry/proc/CanBuy(mob/living/carbon/human/user,obj/item/weapon/spellbook/book) // Specific circumstances if(book.uses=0) dat += "[surplus] left.
    " return dat - +/* /datum/spellbook_entry/item/staffchange name = "Staff of Change" desc = "An artefact that spits bolts of coruscating energy which cause the target's very form to reshape itself." @@ -306,13 +278,7 @@ desc = "A caprious tool that can fire all sorts of magic without any rhyme or reason. Using it on people you care about is not recommended." item_path = /obj/item/weapon/gun/magic/staff/chaos log_name = "SC" - -/datum/spellbook_entry/item/spellblade - name = "Spellblade" - desc = "A sword capable of firing blasts of energy which rip targets limb from limb." - item_path = /obj/item/weapon/gun/magic/staff/spellblade - log_name = "SB" - +*/ /datum/spellbook_entry/item/staffdoor name = "Staff of Door Creation" desc = "A particular staff that can mold solid metal into ornate doors. Useful for getting around in the absence of other transportation. Does not work on glass." @@ -379,7 +345,7 @@ /datum/spellbook_entry/item/armor/Buy(mob/living/carbon/human/user,obj/item/weapon/spellbook/book) . = ..() if(.) - new /obj/item/clothing/shoes/sandal/magic(get_turf(user)) //In case they've lost them. + new /obj/item/clothing/shoes/sandal(get_turf(user)) //In case they've lost them. new /obj/item/clothing/gloves/color/purple(get_turf(user))//To complete the outfit /datum/spellbook_entry/item/contract @@ -412,6 +378,20 @@ limit = 3 category = "Assistance" +/datum/spellbook_entry/item/hadesstone + name = "Dark Seed" + desc = "A small, dark stone that whispers to you menacingly.\ + The seed calls for the corpses of living beings,\ + in order to summon an ancient, powerful being.\ + The power and tenacity of the summoned being directly\ + correlates to the power of the absorbed beings,\ + so choose your targets wisely." + item_path = /obj/item/hades_summoner + cost = 2 + log_name = "DS" + limit = 1 + category = "Assistance" + /datum/spellbook_entry/item/mjolnir name = "Mjolnir" desc = "A mighty hammer on loan from Thor, God of Thunder. It crackles with barely contained power." @@ -424,29 +404,16 @@ item_path = /obj/item/weapon/twohanded/singularityhammer log_name = "SI" -/datum/spellbook_entry/item/battlemage - name = "Battlemage Armour" - desc = "An ensorcelled suit of armour, protected by a powerful shield. The shield can completly negate sixteen attacks before being permanently depleted." - item_path = /obj/item/clothing/suit/space/hardsuit/shielded/wizard - log_name = "BM" - limit = 1 - category = "Defensive" - -/datum/spellbook_entry/item/battlemage_charge - name = "Battlemage Armour Charges" - desc = "A powerful defensive rune, it will grant eight additional charges to a suit of battlemage armour." - item_path = /obj/item/wizard_armour_charge - log_name = "AC" - category = "Defensive" - cost = 1 - -/datum/spellbook_entry/item/warpwhistle - name = "Warp Whistle" - desc = "A strange whistle that will transport you to a distant safe place on the station. There is a window of vulnerability at the begining of every use." - item_path = /obj/item/warpwhistle - log_name = "WW" - category = "Mobility" +/datum/spellbook_entry/item/cursed_heart + name = "Cursed Heart" + desc = "A heart that has been revived by dark magicks, the user must \ + concentrate to ensure the heart beats, but every beat heals them. It \ + must beat every 6 seconds. The heart is fickle, and will not work for a \ + lich." + item_path = /obj/item/organ/heart/cursed/wizard + log_name = "CH" cost = 1 + category = "Defensive" /datum/spellbook_entry/summon name = "Summon Stuff" @@ -472,6 +439,7 @@ /datum/spellbook_entry/summon/guns name = "Summon Guns" + category = "Rituals" desc = "Nothing could possibly go wrong with arming a crew of lunatics just itching for an excuse to kill you. Just be careful not to stand still too long!" log_name = "SG" @@ -483,14 +451,15 @@ /datum/spellbook_entry/summon/guns/Buy(mob/living/carbon/human/user,obj/item/weapon/spellbook/book) feedback_add_details("wizard_spell_learned",log_name) rightandwrong(0, user, 25) - active = 1 playsound(get_turf(user),"sound/magic/CastSummon.ogg",50,1) user << "You have cast summon guns!" return 1 /datum/spellbook_entry/summon/magic name = "Summon Magic" + category = "Challenges" desc = "Share the wonders of magic with the crew and show them why they aren't to be trusted with it at the same time." + cost = 0 log_name = "SU" /datum/spellbook_entry/summon/magic/IsAvailible() @@ -500,10 +469,11 @@ /datum/spellbook_entry/summon/magic/Buy(mob/living/carbon/human/user,obj/item/weapon/spellbook/book) feedback_add_details("wizard_spell_learned",log_name) - rightandwrong(1, user, 25) + rightandwrong(1, user, 0) + book.uses += 1 active = 1 playsound(get_turf(user),"sound/magic/CastSummon.ogg",50,1) - user << "You have cast summon magic!" + user << "You have cast summon magic and gained an extra charge for your spellbook." return 1 /datum/spellbook_entry/summon/events @@ -539,10 +509,10 @@ icon_state ="book" throw_speed = 2 throw_range = 5 - w_class = WEIGHT_CLASS_TINY - persistence_replacement = /obj/item/weapon/spellbook/oneuse/random + w_class = 1 var/uses = 10 var/temp = null + var/op = 1 var/tab = null var/mob/living/carbon/human/owner var/list/datum/spellbook_entry/entries = list() @@ -692,7 +662,7 @@ if(H.stat || H.restrained()) return - if(!ishuman(H)) + if(!istype(H, /mob/living/carbon/human)) return 1 if(H.mind.special_role == "apprentice") @@ -700,7 +670,7 @@ return var/datum/spellbook_entry/E = null - if(loc == H || (in_range(src, H) && isturf(loc))) + if(loc == H || (in_range(src, H) && istype(loc, /turf))) H.set_machine(src) if(href_list["buy"]) E = entries[text2num(href_list["buy"])] @@ -731,7 +701,6 @@ name = "spellbook of " uses = 1 desc = "This template spellbook was never meant for the eyes of man..." - persistence_replacement = null /obj/item/weapon/spellbook/oneuse/New() ..() @@ -769,7 +738,7 @@ return /obj/item/weapon/spellbook/oneuse/fireball - spell = /obj/effect/proc_holder/spell/fireball + spell = /obj/effect/proc_holder/spell/dumbfire/fireball spellname = "fireball" icon_state ="bookfireball" desc = "This book feels warm to the touch." @@ -837,7 +806,7 @@ stored_swap = null /obj/item/weapon/spellbook/oneuse/forcewall - spell = /obj/effect/proc_holder/spell/targeted/forcewall + spell = /obj/effect/proc_holder/spell/aoe_turf/conjure/forcewall spellname = "forcewall" icon_state ="bookforcewall" desc = "This book has a dedication to mimes everywhere inside the front cover." @@ -845,8 +814,10 @@ /obj/item/weapon/spellbook/oneuse/forcewall/recoil(mob/user) ..() user <<"You suddenly feel very solid!" - user.Stun(2) - user.petrify(30) + var/obj/structure/closet/statue/S = new /obj/structure/closet/statue(user.loc, user) + S.timer = 30 + user.drop_item() + /obj/item/weapon/spellbook/oneuse/knock spell = /obj/effect/proc_holder/spell/aoe_turf/knock @@ -866,7 +837,7 @@ desc = "This book is more horse than your mind has room for." /obj/item/weapon/spellbook/oneuse/barnyard/recoil(mob/living/carbon/user) - if(ishuman(user)) + if(istype(user, /mob/living/carbon/human)) user <<"HOR-SIE HAS RISEN" var/obj/item/clothing/mask/horsehead/magichead = new /obj/item/clothing/mask/horsehead magichead.flags |= NODROP //curses! @@ -905,9 +876,3 @@ var/real_type = pick(subtypesof(/obj/item/weapon/spellbook/oneuse)) new real_type(loc) qdel(src) - -/obj/item/weapon/spellbook/oneuse/sacredflame - spell = /obj/effect/proc_holder/spell/targeted/sacred_flame - spellname = "sacred flame" - icon_state ="booksacredflame" - desc = "Become one with the flames that burn within... and invite others to do so as well." diff --git a/code/game/gamemodes/wizard/wizard.dm b/code/game/gamemodes/wizard/wizard.dm index 78db753835..7aa657c0b1 100644 --- a/code/game/gamemodes/wizard/wizard.dm +++ b/code/game/gamemodes/wizard/wizard.dm @@ -11,13 +11,13 @@ recommended_enemies = 1 enemy_minimum_age = 14 round_ends_with_antag_death = 1 - announce_span = "danger" - announce_text = "There is a space wizard attacking the station!\n\ - Wizard: Accomplish your objectives and cause mayhem on the station.\n\ - Crew: Eliminate the wizard before they can succeed!" var/use_huds = 0 var/finished = 0 +/datum/game_mode/wizard/announce() + world << "The current game mode is - Wizard!" + world << "There is a SPACE WIZARD\black on the station. You can't let him achieve his objective!" + /datum/game_mode/wizard/pre_setup() var/datum/mind/wizard = pick(antag_candidates) @@ -118,7 +118,10 @@ wizard.current << "You are the Space Wizard!" wizard.current << "The Space Wizards Federation has given you the following tasks:" - wizard.announce_objectives() + var/obj_count = 1 + for(var/datum/objective/objective in wizard.objectives) + wizard.current << "Objective #[obj_count]: [objective.explanation_text]" + obj_count++ return @@ -137,16 +140,14 @@ qdel(wizard_mob.wear_suit) qdel(wizard_mob.head) qdel(wizard_mob.shoes) - for(var/obj/item/I in wizard_mob.held_items) - wizard_mob.unEquip(I) - qdel(I) + qdel(wizard_mob.r_hand) qdel(wizard_mob.r_store) qdel(wizard_mob.l_store) wizard_mob.set_species(/datum/species/human) wizard_mob.equip_to_slot_or_del(new /obj/item/device/radio/headset(wizard_mob), slot_ears) wizard_mob.equip_to_slot_or_del(new /obj/item/clothing/under/color/lightpurple(wizard_mob), slot_w_uniform) - wizard_mob.equip_to_slot_or_del(new /obj/item/clothing/shoes/sandal/magic(wizard_mob), slot_shoes) + wizard_mob.equip_to_slot_or_del(new /obj/item/clothing/shoes/sandal(wizard_mob), slot_shoes) wizard_mob.equip_to_slot_or_del(new /obj/item/clothing/suit/wizrobe(wizard_mob), slot_wear_suit) wizard_mob.equip_to_slot_or_del(new /obj/item/clothing/head/wizard(wizard_mob), slot_head) wizard_mob.equip_to_slot_or_del(new /obj/item/weapon/storage/backpack(wizard_mob), slot_back) @@ -154,12 +155,13 @@ wizard_mob.equip_to_slot_or_del(new /obj/item/weapon/teleportation_scroll(wizard_mob), slot_r_store) var/obj/item/weapon/spellbook/spellbook = new /obj/item/weapon/spellbook(wizard_mob) spellbook.owner = wizard_mob - wizard_mob.put_in_hands_or_del(spellbook) + wizard_mob.equip_to_slot_or_del(spellbook, slot_r_hand) wizard_mob << "You will find a list of available spells in your spell book. Choose your magic arsenal carefully." wizard_mob << "The spellbook is bound to you, and others cannot use it." wizard_mob << "In your pockets you will find a teleport scroll. Use it as needed." wizard_mob.mind.store_memory("Remember: do not forget to prepare your spells.") + wizard_mob.update_icons() return 1 @@ -179,9 +181,6 @@ if(finished) feedback_set_details("round_end_result","loss - wizard killed") world << "The wizard[(wizards.len>1)?"s":""] has been killed by the crew! The Space Wizards Federation has been taught a lesson they will not soon forget!" - - ticker.news_report = WIZARD_KILLED - ..() return 1 @@ -246,6 +245,22 @@ qdel(spell_to_remove) mind.spell_list -= spell_to_remove +/*Checks if the wizard can cast spells. +Made a proc so this is not repeated 14 (or more) times.*/ +/mob/proc/casting() +//Removed the stat check because not all spells require clothing now. + if(!istype(usr:wear_suit, /obj/item/clothing/suit/wizrobe)) + usr << "I don't feel strong enough without my robe." + return 0 + if(!istype(usr:shoes, /obj/item/clothing/shoes/sandal)) + usr << "I don't feel strong enough without my sandals." + return 0 + if(!istype(usr:head, /obj/item/clothing/head/wizard)) + usr << "I don't feel strong enough without my hat." + return 0 + else + return 1 + //returns whether the mob is a wizard (or apprentice) /proc/iswizard(mob/living/M) return istype(M) && M.mind && ticker && ticker.mode && ((M.mind in ticker.mode.wizards) || (M.mind in ticker.mode.apprentices)) diff --git a/code/game/machinery/PDApainter.dm b/code/game/machinery/PDApainter.dm index a0c92ca988..e2dc1ca696 100644 --- a/code/game/machinery/PDApainter.dm +++ b/code/game/machinery/PDApainter.dm @@ -7,8 +7,7 @@ anchored = 1 var/obj/item/device/pda/storedpda = null var/list/colorlist = list() - obj_integrity = 200 - max_integrity = 200 + var/health = 100 /obj/machinery/pdapainter/update_icon() @@ -41,25 +40,6 @@ src.colorlist += D -/obj/machinery/pdapainter/Destroy() - if(storedpda) - qdel(storedpda) - storedpda = null - return ..() - -/obj/machinery/pdapainter/on_deconstruction() - if(storedpda) - storedpda.forceMove(loc) - storedpda = null - -/obj/machinery/pdapainter/contents_explosion(severity, target) - if(storedpda) - storedpda.ex_act(severity, target) - -/obj/machinery/pdapainter/handle_atom_del(atom/A) - if(A == storedpda) - storedpda = null - update_icon() /obj/machinery/pdapainter/attackby(obj/item/O, mob/user, params) if(default_unfasten_wrench(user, O)) @@ -71,7 +51,7 @@ user << "There is already a PDA inside!" return else - var/obj/item/device/pda/P = user.get_active_held_item() + var/obj/item/device/pda/P = user.get_active_hand() if(istype(P)) if(!user.drop_item()) return @@ -80,30 +60,43 @@ P.add_fingerprint(user) update_icon() - else if(istype(O, /obj/item/weapon/weldingtool) && user.a_intent != INTENT_HARM) + else if(istype(O, /obj/item/weapon/weldingtool) && user.a_intent != "harm") var/obj/item/weapon/weldingtool/WT = O if(stat & BROKEN) if(WT.remove_fuel(0,user)) user.visible_message("[user] is repairing [src].", \ "You begin repairing [src]...", \ "You hear welding.") - playsound(loc, WT.usesound, 40, 1) - if(do_after(user,40*WT.toolspeed, 1, target = src)) + playsound(loc, 'sound/items/Welder.ogg', 40, 1) + if(do_after(user,40/WT.toolspeed, 1, target = src)) if(!WT.isOn() || !(stat & BROKEN)) return user << "You repair [src]." playsound(loc, 'sound/items/Welder2.ogg', 50, 1) stat &= ~BROKEN - obj_integrity = max_integrity + health = initial(health) update_icon() else user << "[src] does not need repairs." else return ..() -/obj/machinery/pdapainter/deconstruct(disassembled = TRUE) - if(!(flags & NODECONSTRUCT)) - if(!(stat & BROKEN)) +/obj/machinery/pdapainter/take_damage(damage, damage_type = BRUTE, sound_effect = 1) + switch(damage_type) + if(BRUTE) + if(sound_effect) + if(damage) + playsound(loc, 'sound/weapons/smash.ogg', 50, 1) + else + playsound(loc, 'sound/weapons/tap.ogg', 50, 1) + if(BURN) + if(sound_effect) + playsound(src.loc, 'sound/items/Welder.ogg', 100, 1) + else + return + if(!(stat & BROKEN)) + health -= damage + if(health <= 0) stat |= BROKEN update_icon() @@ -146,4 +139,4 @@ /obj/machinery/pdapainter/power_change() ..() - update_icon() + update_icon() \ No newline at end of file diff --git a/code/game/machinery/Sleeper.dm b/code/game/machinery/Sleeper.dm index 945ec5101d..1f1cfd233f 100644 --- a/code/game/machinery/Sleeper.dm +++ b/code/game/machinery/Sleeper.dm @@ -13,17 +13,22 @@ density = FALSE anchored = TRUE state_open = TRUE + use_auto_lights = 1 + light_power_on = 1 + light_range_on = 3 + light_color = LIGHT_COLOR_HALOGEN var/efficiency = 1 var/min_health = -25 var/list/available_chems var/controls_inside = FALSE var/list/possible_chems = list( list("epinephrine", "morphine", "salbutamol", "bicaridine", "kelotane"), - list("oculine","inacusiate"), + list("oculine"), list("antitoxin", "mutadone", "mannitol", "pen_acid"), list("omnizine") ) + /obj/machinery/sleeper/New() ..() var/obj/item/weapon/circuitboard/machine/B = new /obj/item/weapon/circuitboard/machine/sleeper(null) @@ -60,13 +65,13 @@ if(state_open) icon_state += "-open" -/obj/machinery/sleeper/container_resist(mob/living/user) +/obj/machinery/sleeper/container_resist() visible_message("[occupant] emerges from [src]!", "You climb out of [src]!") open_machine() /obj/machinery/sleeper/relaymove(mob/user) - container_resist(user) + container_resist() /obj/machinery/sleeper/open_machine() if(!state_open && !panel_open) @@ -78,11 +83,25 @@ if(occupant && occupant.stat != DEAD) occupant << "You feel cool air surround you. You go numb as your senses turn inward." +/obj/machinery/sleeper/attack_animal(mob/living/simple_animal/M) + if(M.environment_smash) + M.do_attack_animation(src) + visible_message("[M.name] smashes [src] apart!") + qdel(src) + /obj/machinery/sleeper/emp_act(severity) if(is_operational() && occupant) open_machine() ..(severity) +/obj/machinery/sleeper/blob_act(obj/effect/blob/B) + if(prob(75)) + var/turf/T = get_turf(src) + for(var/atom/movable/A in src) + A.forceMove(T) + A.blob_act(B) + qdel(src) + /obj/machinery/sleeper/MouseDrop_T(mob/target, mob/user) if(user.stat || user.lying || !Adjacent(user) || !user.Adjacent(target) || !iscarbon(target) || !user.IsAdvancedToolUser()) return @@ -129,7 +148,7 @@ data["occupant"]["stat"] = occupant.stat data["occupant"]["health"] = occupant.health data["occupant"]["maxHealth"] = occupant.maxHealth - data["occupant"]["minHealth"] = HEALTH_THRESHOLD_DEAD + data["occupant"]["minHealth"] = config.health_threshold_dead data["occupant"]["bruteLoss"] = occupant.getBruteLoss() data["occupant"]["oxyLoss"] = occupant.getOxyLoss() data["occupant"]["toxLoss"] = occupant.getToxLoss() @@ -170,8 +189,8 @@ if(!occupant) return var/amount = occupant.reagents.get_reagent_amount(chem) + 10 <= 20 * efficiency - var/occ_health = occupant.health > min_health || chem == "epinephrine" - return amount && occ_health + var/health = occupant.health > min_health || chem == "epinephrine" + return amount && health /obj/machinery/sleeper/syndie diff --git a/code/game/machinery/ai_slipper.dm b/code/game/machinery/ai_slipper.dm index 54c2ce30e3..c09813dac2 100644 --- a/code/game/machinery/ai_slipper.dm +++ b/code/game/machinery/ai_slipper.dm @@ -4,10 +4,6 @@ icon_state = "motion3" layer = PROJECTILE_HIT_THRESHHOLD_LAYER anchored = 1 - obj_integrity = 200 - max_integrity = 200 - armor = list(melee = 50, bullet = 20, laser = 20, energy = 20, bomb = 0, bio = 0, rad = 0, fire = 50, acid = 30) - var/uses = 20 var/disabled = 1 var/lethal = 0 @@ -81,7 +77,7 @@ if(..()) return if (src.locked) - if(!(issilicon(usr)|| IsAdminGhost(usr))) + if (!(istype(usr, /mob/living/silicon)|| IsAdminGhost(usr))) usr << "Control panel is locked!" return if (href_list["toggleOn"]) diff --git a/code/game/machinery/airlock_control.dm b/code/game/machinery/airlock_control.dm index d0f36fba36..6815665720 100644 --- a/code/game/machinery/airlock_control.dm +++ b/code/game/machinery/airlock_control.dm @@ -100,7 +100,6 @@ icon = 'icons/obj/airlock_machines.dmi' icon_state = "airlock_sensor_off" name = "airlock sensor" - resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | UNACIDABLE | ACID_PROOF anchored = 1 power_channel = ENVIRON diff --git a/code/game/machinery/announcement_system.dm b/code/game/machinery/announcement_system.dm index b675c9196f..61b25fc15d 100644 --- a/code/game/machinery/announcement_system.dm +++ b/code/game/machinery/announcement_system.dm @@ -9,10 +9,17 @@ var/list/announcement_systems = list() icon_state = "AAS_On" var/obj/item/device/radio/headset/radio + use_auto_lights = 1 + light_power_on = 1 + light_range_on = 2 + light_color = LIGHT_COLOR_BLUE + verb_say = "coldly states" verb_ask = "queries" verb_exclaim = "alarms" + var/broken = 0 + idle_power_usage = 20 active_power_usage = 50 @@ -61,13 +68,12 @@ var/list/announcement_systems = list() else overlays -= pinklight - if(stat & BROKEN) + if(broken) add_overlay(errorlight) else overlays -= errorlight /obj/machinery/announcement_system/Destroy() - qdel(radio) announcement_systems -= src //"OH GOD WHY ARE THERE 100,000 LISTED ANNOUNCEMENT SYSTEMS?!!" return ..() @@ -83,9 +89,9 @@ var/list/announcement_systems = list() update_icon() else if(default_deconstruction_crowbar(P)) return - else if(istype(P, /obj/item/device/multitool) && panel_open && (stat & BROKEN)) + else if(istype(P, /obj/item/device/multitool) && panel_open && broken) user << "You reset [src]'s firmware." - stat &= ~BROKEN + broken = 0 update_icon() else return ..() @@ -116,7 +122,7 @@ var/list/announcement_systems = list() //config stuff /obj/machinery/announcement_system/interact(mob/user) - if(stat & BROKEN) + if(broken) visible_message("[src] buzzes.", "You hear a faint buzz.") playsound(src.loc, 'sound/machines/buzz-two.ogg', 50, 1) return @@ -130,7 +136,7 @@ var/list/announcement_systems = list() popup.open() /obj/machinery/announcement_system/Topic(href, href_list) - if(stat & BROKEN) + if(broken) visible_message("[src] buzzes.", "You hear a faint buzz.") playsound(src.loc, 'sound/machines/buzz-two.ogg', 50, 1) return @@ -161,13 +167,13 @@ var/list/announcement_systems = list() /obj/machinery/announcement_system/attack_ai(mob/living/silicon/ai/user) if(!isAI(user)) return - if(stat & BROKEN) + if(broken) user << "[src]'s firmware appears to be malfunctioning!" return interact(user) /obj/machinery/announcement_system/proc/act_up() //does funny breakage stuff - stat |= BROKEN + broken = 1 update_icon() arrival = pick("#!@%ERR-34%2 CANNOT LOCAT@# JO# F*LE!", "CRITICAL ERROR 99.", "ERR)#: DA#AB@#E NOT F(*ND!") diff --git a/code/game/machinery/autolathe.dm b/code/game/machinery/autolathe.dm index cf3bbf1f22..4927bf87db 100644 --- a/code/game/machinery/autolathe.dm +++ b/code/game/machinery/autolathe.dm @@ -8,6 +8,11 @@ icon_state = "autolathe" density = 1 + use_auto_lights = 1 + light_power_on = 1 + light_range_on = 3 + light_color = LIGHT_COLOR_CYAN + var/operating = 0 anchored = 1 var/list/L = list() @@ -92,7 +97,7 @@ popup.set_content(dat) popup.open() -/obj/machinery/autolathe/on_deconstruction() +/obj/machinery/autolathe/deconstruction() materials.retrieve_all() /obj/machinery/autolathe/attackby(obj/item/O, mob/user, params) @@ -115,7 +120,7 @@ wires.interact(user) return 1 - if(user.a_intent == INTENT_HARM) //so we can hit the machine + if(user.a_intent == "harm") //so we can hit the machine return ..() if(stat) @@ -128,9 +133,7 @@ busy = 1 var/obj/item/weapon/disk/design_disk/D = O if(do_after(user, 14.4, target = src)) - for(var/B in D.blueprints) - if(B) - files.AddDesign2Known(B) + files.AddDesign2Known(D.blueprint) busy = 0 return 1 @@ -344,9 +347,6 @@ return dat /obj/machinery/autolathe/proc/can_build(datum/design/D) - if(D.make_reagents.len) - return 0 - var/coeff = (ispath(D.build_path,/obj/item/stack) ? 1 : prod_coeff) if(D.materials[MAT_METAL] && (materials.amount(MAT_METAL) < (D.materials[MAT_METAL] * coeff))) @@ -384,7 +384,7 @@ var/datum/effect_system/spark_spread/s = new /datum/effect_system/spark_spread s.set_up(5, 1, src) s.start() - if (electrocute_mob(user, get_area(src), src, 0.7, TRUE)) + if (electrocute_mob(user, get_area(src), src, 0.7)) return 1 else return 0 diff --git a/code/game/machinery/bank_machine.dm b/code/game/machinery/bank_machine.dm deleted file mode 100644 index 10812f91b3..0000000000 --- a/code/game/machinery/bank_machine.dm +++ /dev/null @@ -1,71 +0,0 @@ -/obj/machinery/computer/bank_machine - name = "bank machine" - desc = "A machine used to deposit and withdraw station funds." - icon = 'goon/icons/obj/goon_terminals.dmi' - idle_power_usage = 100 - var/siphoning = FALSE - var/last_warning = 0 - -/obj/machinery/computer/bank_machine/attackby(obj/item/I, mob/user) - var/value = 0 - if(istype(I, /obj/item/stack/spacecash)) - var/obj/item/stack/spacecash/C = I - value = C.value * C.amount - if(istype(I, /obj/item/weapon/coin)) - var/obj/item/weapon/coin/C = I - value = C.value - if(value) - SSshuttle.points += value - user << "You deposit [I]. The station now has [SSshuttle.points] credits." - qdel(I) - return - return ..() - - -/obj/machinery/computer/bank_machine/process() - ..() - if(siphoning) - if(SSshuttle.points < 200) - say("Station funds depleted. Halting siphon.") - siphoning = FALSE - else - var/obj/item/stack/spacecash/c200/on_turf = locate() in src.loc - if(on_turf && on_turf.amount < on_turf.max_amount) - on_turf.amount++ - else - new /obj/item/stack/spacecash/c200(get_turf(src)) - playsound(src.loc, 'sound/items/poster_being_created.ogg', 100, 1) - SSshuttle.points -= 200 - if(last_warning < world.time && prob(15)) - var/area/A = get_area(loc) - minor_announce("Unauthorized credit withdrawal underway in [A.map_name]." , "Network Breach", TRUE) - last_warning = world.time + 400 - - -/obj/machinery/computer/bank_machine/attack_hand(mob/user) - if(..()) - return - src.add_fingerprint(usr) - var/dat = "[world.name] secure vault. Authorized personnel only.
    " - dat += "Current Balance: [SSshuttle.points] credits.
    " - if(!siphoning) - dat += "Siphon Credits
    " - else - dat += "Halt Credit Siphon
    " - - dat += "Close" - - var/datum/browser/popup = new(user, "computer", "Bank Vault", 300, 200) - popup.set_content("
    [dat]
    ") - popup.set_title_image(usr.browse_rsc_icon(src.icon, src.icon_state)) - popup.open() - -/obj/machinery/computer/bank_machine/Topic(href, href_list) - if(..()) - return - if(href_list["siphon"]) - say("Siphon of station credits has begun!") - siphoning = TRUE - if(href_list["halt"]) - say("Station credit withdrawal halted.") - siphoning = FALSE \ No newline at end of file diff --git a/code/game/machinery/buttons.dm b/code/game/machinery/buttons.dm index e74d8400d2..3cef1d4269 100644 --- a/code/game/machinery/buttons.dm +++ b/code/game/machinery/buttons.dm @@ -10,11 +10,10 @@ var/device_type = null var/id = null var/initialized = 0 - armor = list(melee = 50, bullet = 50, laser = 50, energy = 50, bomb = 10, bio = 100, rad = 100, fire = 90, acid = 70) + anchored = 1 use_power = 1 idle_power_usage = 2 - resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | UNACIDABLE | ACID_PROOF /obj/machinery/button/New(loc, ndir = 0, built = 0) @@ -89,8 +88,8 @@ if(!device && !board && istype(W, /obj/item/weapon/wrench)) user << "You start unsecuring the button frame..." - playsound(loc, W.usesound, 50, 1) - if(do_after(user, 40*W.toolspeed, target = src)) + playsound(loc, 'sound/items/Ratchet.ogg', 50, 1) + if(do_after(user, 40/W.toolspeed, target = src)) user << "You unsecure the button frame." transfer_fingerprints_to(new /obj/item/wallframe/button(get_turf(src))) playsound(loc, 'sound/items/Deconstruct.ogg', 50, 1) @@ -99,7 +98,7 @@ update_icon() return - if(user.a_intent != INTENT_HARM && !(W.flags & NOBLUDGEON)) + if(user.a_intent != "harm" && !(W.flags & NOBLUDGEON)) return src.attack_hand(user) else return ..() @@ -147,7 +146,7 @@ if((stat & (NOPOWER|BROKEN))) return - if(device && device.next_activate > world.time) + if(device && device.cooldown) return if(!allowed(user)) diff --git a/code/game/machinery/camera/camera.dm b/code/game/machinery/camera/camera.dm index 7ac6fc20b6..3a40da5a68 100644 --- a/code/game/machinery/camera/camera.dm +++ b/code/game/machinery/camera/camera.dm @@ -12,12 +12,7 @@ active_power_usage = 10 layer = WALL_OBJ_LAYER - resistance_flags = FIRE_PROOF - - armor = list(melee = 50, bullet = 20, laser = 20, energy = 20, bomb = 0, bio = 0, rad = 0, fire = 90, acid = 50) - obj_integrity = 100 - max_integrity = 100 - integrity_failure = 50 + var/health = 50 var/list/network = list("SS13") var/c_tag = null var/c_tag_order = 999 @@ -26,7 +21,7 @@ var/start_active = 0 //If it ignores the random chance to start broken on round start var/invuln = null var/obj/item/device/camera_bug/bug = null - var/obj/structure/camera_assembly/assembly = null + var/obj/machinery/camera_assembly/assembly = null //OTHER @@ -88,7 +83,7 @@ network = list() cameranet.removeCamera(src) stat |= EMPED - SetLuminosity(0) + set_light(0) emped = emped+1 //Increase the number of consecutive EMP's update_icon() var/thisemp = emped //Take note of which EMP this proc is for @@ -110,16 +105,17 @@ O << "The screen bursts into static." ..() -/obj/machinery/camera/tesla_act(var/power)//EMP proof upgrade also makes it tesla immune - if(isEmpProof()) - return - ..() - qdel(src)//to prevent bomb testing camera from exploding over and over forever /obj/machinery/camera/ex_act(severity, target) - if(invuln) + if(src.invuln) return - ..() + switch(severity) + if(1) + qdel(src) + if(2) + take_damage(50, BRUTE, 0) + else + take_damage(rand(30,60), BRUTE, 0) /obj/machinery/camera/proc/setViewRange(num = 7) src.view_range = num @@ -144,7 +140,7 @@ if(panel_open) if(istype(W, /obj/item/weapon/wirecutters)) //enable/disable the camera toggle_cam(user, 1) - obj_integrity = max_integrity //this is a pretty simplistic way to heal the camera, but there's no reason for this to be complex. + health = initial(health) //this is a pretty simplistic way to heal the camera, but there's no reason for this to be complex. return else if(istype(W, /obj/item/device/multitool)) //change focus @@ -155,13 +151,17 @@ else if(istype(W, /obj/item/weapon/weldingtool)) if(weld(W, user)) visible_message("[user] unwelds [src], leaving it as just a frame screwed to the wall.", "You unweld [src], leaving it as just a frame screwed to the wall") - deconstruct(TRUE) + if(!assembly) + assembly = new() + assembly.loc = src.loc + assembly.state = 1 + assembly.setDir(src.dir) + assembly = null + qdel(src) return else if(istype(W, /obj/item/device/analyzer)) if(!isXRay()) - if(!user.drop_item(W)) - return upgradeXRay() qdel(W) user << "[msg]" @@ -206,7 +206,7 @@ U << "You hold \the [itemname] up to the camera..." U.changeNext_move(CLICK_CD_MELEE) for(var/mob/O in player_list) - if(isAI(O)) + if(istype(O, /mob/living/silicon/ai)) var/mob/living/silicon/ai/AI = O if(AI.control_disabled || (AI.stat == DEAD)) return @@ -241,31 +241,26 @@ return ..() -/obj/machinery/camera/run_obj_armor(damage_amount, damage_type, damage_flag = 0, attack_dir) - if(damage_flag == "melee" && damage_amount < 12 && !(stat & BROKEN)) - return 0 - . = ..() - -/obj/machinery/camera/obj_break(damage_flag) - if(status && !(flags & NODECONSTRUCT)) +/obj/machinery/camera/take_damage(damage, damage_type = BRUTE, sound_effect = 1) + switch(damage_type) + if(BRUTE) + if(sound_effect) + if(damage) + playsound(src, 'sound/weapons/smash.ogg', 50, 1) + else + playsound(src, 'sound/weapons/tap.ogg', 50, 1) + if(BURN) + if(sound_effect) + playsound(src.loc, 'sound/items/Welder.ogg', 100, 1) + else + return + if(damage < 10) //camera has a damage resistance threshold + return + health = max(0, health - damage) + if(!health && status) triggerCameraAlarm() toggle_cam(null, 0) -/obj/machinery/camera/deconstruct(disassembled = TRUE) - if(!(flags & NODECONSTRUCT)) - if(disassembled) - if(!assembly) - assembly = new() - assembly.loc = src.loc - assembly.state = 1 - assembly.setDir(dir) - assembly = null - else - var/obj/item/I = new /obj/item/wallframe/camera (loc) - I.obj_integrity = I.max_integrity * 0.5 - new /obj/item/stack/cable_coil(loc, 2) - qdel(src) - /obj/machinery/camera/update_icon() if(!status) icon_state = "[initial(icon_state)]1" @@ -279,7 +274,7 @@ if(can_use()) cameranet.addCamera(src) else - SetLuminosity(0) + set_light(0) cameranet.removeCamera(src) cameranet.updateChunk(x, y, z) var/change_msg = "deactivates" @@ -374,9 +369,9 @@ return 0 user << "You start to weld [src]..." - playsound(src.loc, WT.usesound, 50, 1) + playsound(src.loc, 'sound/items/Welder.ogg', 50, 1) busy = 1 - if(do_after(user, 100*WT.toolspeed, target = src)) + if(do_after(user, 100, target = src)) busy = 0 if(!WT.isOn()) return 0 @@ -390,9 +385,13 @@ if(cam == src) return if(on) - src.SetLuminosity(AI_CAMERA_LUMINOSITY) + src.set_light(AI_CAMERA_LUMINOSITY) else - src.SetLuminosity(0) + src.set_light(0) + +/obj/machinery/camera/bullet_act(obj/item/projectile/P) + . = ..() + take_damage(P.damage, P.damage_type, 0) /obj/machinery/camera/portable //Cameras which are placed inside of things, such as helmets. var/turf/prev_turf diff --git a/code/game/machinery/camera/camera_assembly.dm b/code/game/machinery/camera/camera_assembly.dm index 5099dc820c..7b15b7f53e 100644 --- a/code/game/machinery/camera/camera_assembly.dm +++ b/code/game/machinery/camera/camera_assembly.dm @@ -4,21 +4,19 @@ icon = 'icons/obj/monitors.dmi' icon_state = "cameracase" materials = list(MAT_METAL=400, MAT_GLASS=250) - result_path = /obj/structure/camera_assembly + result_path = /obj/machinery/camera_assembly -/obj/structure/camera_assembly +/obj/machinery/camera_assembly name = "camera assembly" desc = "The basic construction for Nanotrasen-Always-Watching-You cameras." icon = 'icons/obj/monitors.dmi' icon_state = "camera1" - obj_integrity = 150 - max_integrity = 150 // Motion, EMP-Proof, X-Ray var/list/obj/item/possible_upgrades = list(/obj/item/device/assembly/prox_sensor, /obj/item/stack/sheet/mineral/plasma, /obj/item/device/analyzer) var/list/upgrades = list() var/state = 1 - + var/busy = 0 /* 1 = Wrenched in place 2 = Welded in place @@ -26,12 +24,12 @@ 4 = Screwdriver panel closed and is fully built (you cannot attach upgrades) */ -/obj/structure/camera_assembly/New(loc, ndir, building) +/obj/machinery/camera_assembly/New(loc, ndir, building) ..() if(building) setDir(ndir) -/obj/structure/camera_assembly/attackby(obj/item/W, mob/living/user, params) +/obj/machinery/camera_assembly/attackby(obj/item/W, mob/living/user, params) switch(state) if(1) // State 1 @@ -75,14 +73,14 @@ if(istype(W, /obj/item/weapon/screwdriver)) playsound(src.loc, W.usesound, 50, 1) - var/input = stripped_input(user, "Which networks would you like to connect this camera to? Seperate networks with a comma. No Spaces!\nFor example: SS13,Security,Secret ", "Set Network", "SS13") + var/input = stripped_input(usr, "Which networks would you like to connect this camera to? Seperate networks with a comma. No Spaces!\nFor example: SS13,Security,Secret ", "Set Network", "SS13") if(!input) - user << "No input found, please hang up and try your call again!" + usr << "No input found, please hang up and try your call again!" return var/list/tempnetwork = splittext(input, ",") if(tempnetwork.len < 1) - user << "No network found, please hang up and try your call again!" + usr << "No network found, please hang up and try your call again!" return state = 4 @@ -105,11 +103,11 @@ // Upgrades! if(is_type_in_list(W, possible_upgrades) && !is_type_in_list(W, upgrades)) // Is a possible upgrade and isn't in the camera already. - if(!user.drop_item(W)) + if(!user.unEquip(W)) return user << "You attach \the [W] into the assembly inner circuits." upgrades += W - W.forceMove(src) + W.loc = src return // Taking out upgrades @@ -124,18 +122,19 @@ return ..() -/obj/structure/camera_assembly/proc/weld(obj/item/weapon/weldingtool/WT, mob/living/user) +/obj/machinery/camera_assembly/proc/weld(obj/item/weapon/weldingtool/WT, mob/living/user) + if(busy) + return 0 if(!WT.remove_fuel(0, user)) return 0 - user << "You start to weld \the [src]..." - playsound(src.loc, WT.usesound, 50, 1) - if(do_after(user, 20*WT.toolspeed, target = src)) - if(WT.isOn()) - playsound(loc, 'sound/items/Welder2.ogg', 50, 1) - return 1 - return 0 -/obj/structure/camera_assembly/deconstruct(disassembled = TRUE) - if(!(flags & NODECONSTRUCT)) - new /obj/item/stack/sheet/metal(loc) - qdel(src) + user << "You start to weld \the [src]..." + playsound(src.loc, 'sound/items/Welder.ogg', 50, 1) + busy = 1 + if(do_after(user, 20, target = src)) + busy = 0 + if(!WT.isOn()) + return 0 + return 1 + busy = 0 + return 0 \ No newline at end of file diff --git a/code/game/machinery/camera/motion.dm b/code/game/machinery/camera/motion.dm index d9b6d047a2..4f2f5fafce 100644 --- a/code/game/machinery/camera/motion.dm +++ b/code/game/machinery/camera/motion.dm @@ -1,6 +1,6 @@ /obj/machinery/camera - var/list/localMotionTargets = list() + var/list/motionTargets = list() var/detectTime = 0 var/area/ai_monitored/area_motion = null var/alarm_delay = 30 // Don't forget, there's another 3 seconds in queueAlarm() @@ -15,31 +15,27 @@ if (elapsed > alarm_delay) triggerAlarm() else if (detectTime == -1) - for (var/mob/target in getTargetList()) - if (target.stat == DEAD || (!area_motion && !in_range(src, target))) - //If not part of a monitored area and the camera is not in range or the target is dead - lostTarget(target) - -/obj/machinery/camera/proc/getTargetList() - if(area_motion) - return area_motion.motionTargets - return localMotionTargets + for (var/mob/target in motionTargets) + if (target.stat == 2) lostTarget(target) + // If not detecting with motion camera... + if (!area_motion) + // See if the camera is still in range + if(!in_range(src, target)) + // If they aren't in range, lose the target. + lostTarget(target) /obj/machinery/camera/proc/newTarget(mob/target) - if(isAI(target)) - return 0 + if (istype(target, /mob/living/silicon/ai)) return 0 if (detectTime == 0) detectTime = world.time // start the clock - var/list/targets = getTargetList() - if (!(target in targets)) - targets += target + if (!(target in motionTargets)) + motionTargets += target return 1 /obj/machinery/camera/proc/lostTarget(mob/target) - var/list/targets = getTargetList() - if (target in targets) - targets -= target - if (targets.len == 0) + if (target in motionTargets) + motionTargets -= target + if (motionTargets.len == 0) cancelAlarm() /obj/machinery/camera/proc/cancelAlarm() diff --git a/code/game/machinery/camera/tracking.dm b/code/game/machinery/camera/tracking.dm index 8ff0c52f44..a9cbd960f2 100644 --- a/code/game/machinery/camera/tracking.dm +++ b/code/game/machinery/camera/tracking.dm @@ -54,7 +54,7 @@ // Human check var/human = 0 - if(ishuman(M)) + if(istype(M, /mob/living/carbon/human)) human = 1 var/name = M.name @@ -136,7 +136,7 @@ /proc/near_camera(mob/living/M) if (!isturf(M.loc)) return 0 - if(iscyborg(M)) + if(isrobot(M)) var/mob/living/silicon/robot/R = M if(!(R.camera && R.camera.can_use()) && !cameranet.checkCameraVis(M)) return 0 diff --git a/code/game/machinery/cell_charger.dm b/code/game/machinery/cell_charger.dm index 4875b15a07..73bd329c0d 100644 --- a/code/game/machinery/cell_charger.dm +++ b/code/game/machinery/cell_charger.dm @@ -65,7 +65,7 @@ anchored = !anchored user << "You [anchored ? "attach" : "detach"] the cell charger [anchored ? "to" : "from"] the ground" - playsound(src.loc, W.usesound, 75, 1) + playsound(src.loc, 'sound/items/Ratchet.ogg', 75, 1) else return ..() @@ -91,7 +91,7 @@ if(!charging) return - charging.forceMove(loc) + charging.loc = loc user << "You telekinetically remove [charging] from [src]." removecell() diff --git a/code/game/machinery/cloning.dm b/code/game/machinery/cloning.dm index f68ff77979..63104023bb 100644 --- a/code/game/machinery/cloning.dm +++ b/code/game/machinery/cloning.dm @@ -98,15 +98,35 @@ ..() user << "The write-protect tab is set to [read_only ? "protected" : "unprotected"]." +//Health Tracker Implant + +/obj/item/weapon/implant/health + name = "health implant" + activated = 0 + var/healthstring = "" + +/obj/item/weapon/implant/health/proc/sensehealth() + if (!implanted) + return "ERROR" + else + if(isliving(implanted)) + var/mob/living/L = implanted + healthstring = "Oxygen Deprivation Damage => [round(L.getOxyLoss())]
    Fire Damage => [round(L.getFireLoss())]
    Toxin Damage => [round(L.getToxLoss())]
    Brute Force Damage => [round(L.getBruteLoss())]
    " + if (!healthstring) + healthstring = "ERROR" + return healthstring //Clonepod /obj/machinery/clonepod/examine(mob/user) ..() - if(mess) - user << "It's filled with blood and viscera. You swear you can see it moving..." - if (is_operational() && (!isnull(occupant)) && (occupant.stat != DEAD)) + if (isnull(occupant) || !is_operational()) + return + if ((!isnull(occupant)) && (occupant.stat != DEAD)) user << "Current clone cycle is [round(get_completion())]% complete." + else if(mess) + user << "It's filled with blood and vicerea. You swear you can see \ + it moving..." /obj/machinery/clonepod/proc/get_completion() . = (100 * ((occupant.health + 100) / (heal_level + 100))) @@ -133,12 +153,6 @@ var/mob/dead/observer/G = clonemind.get_ghost() if(!G) return FALSE - if(clonemind.damnation_type) //Can't clone the damned. - addtimer(src, "horrifyingsound", 0) - mess = 1 - icon_state = "pod_g" - update_icon() - return FALSE attempting = TRUE //One at a time!! locked = TRUE @@ -149,15 +163,13 @@ var/mob/living/carbon/human/H = new /mob/living/carbon/human(src) - H.hardset_dna(ui, se, H.real_name, null, mrace, features) - if(efficiency > 2) - var/list/unclean_mutations = (not_good_mutations|bad_mutations) - H.dna.remove_mutation_group(unclean_mutations) + for(var/A in bad_se_blocks) + setblock(H.dna.struc_enzymes, A, construct_block(0,2)) if(efficiency > 5 && prob(20)) - H.randmutvg() + randmutg(H) if(efficiency < 3 && prob(50)) - var/mob/M = H.randmutb() + var/mob/M = randmutb(H) if(ismob(M)) H = M @@ -170,10 +182,20 @@ icon_state = "pod_1" //Get the clone body ready - H.setCloneLoss(CLONE_INITIAL_DAMAGE) //Yeah, clones start with very low health, not with random, because why would they start with random health - H.setBrainLoss(CLONE_INITIAL_DAMAGE) + H.adjustCloneLoss(CLONE_INITIAL_DAMAGE) //Yeah, clones start with very low health, not with random, because why would they start with random health + H.adjustBrainLoss(CLONE_INITIAL_DAMAGE) H.Paralyse(4) + if(H.client.prefs) + H.vore_organs = H.client.prefs.belly_prefs.Copy() + for(var/I in H.vore_organs) + var/datum/belly/B = H.vore_organs[I] + B.owner = H + B.internal_contents = list() + B.digest_mode = DM_HOLD + +// H.flavor_text = R.flavor.Copy() + if(grab_ghost_when == CLONER_FRESH_CLONE) clonemind.transfer_to(H) H.ckey = ckey @@ -185,6 +207,7 @@ beginning to regenerate in a cloning pod. You will \ become conscious when it is complete.
    " + H.hardset_dna(ui, se, H.real_name, null, mrace, features) if(H) H.faction |= factions @@ -208,20 +231,20 @@ else if((occupant) && (occupant.loc == src)) if((occupant.stat == DEAD) || (occupant.suiciding) || occupant.hellbound) //Autoeject corpses and suiciding dudes. + locked = FALSE + go_out() connected_message("Clone Rejected: Deceased.") SPEAK("The cloning of [occupant.real_name] has been \ aborted due to unrecoverable tissue failure.") - locked = FALSE - go_out() else if(occupant.cloneloss > (100 - heal_level)) occupant.Paralyse(4) //Slowly get that clone healed and finished. - occupant.adjustCloneLoss(-((speed_coeff/2) * config.damage_multiplier)) + occupant.adjustCloneLoss(-((speed_coeff/2))) //Premature clones may have brain damage. - occupant.adjustBrainLoss(-((speed_coeff/2) * config.damage_multiplier)) + occupant.adjustBrainLoss(-((speed_coeff/2))) //So clones don't die of oxyloss in a running pod. if (occupant.reagents.get_reagent_amount("salbutamol") < 30) @@ -311,7 +334,7 @@ if (mess) //Clean that mess and dump those gibs! mess = FALSE - new /obj/effect/gibspawner/generic(loc) + gibs(loc) audible_message("You hear a splat.") icon_state = "pod_0" return @@ -322,15 +345,17 @@ if(grab_ghost_when == CLONER_MATURE_CLONE) clonemind.transfer_to(occupant) occupant.grab_ghost() - occupant << "There is a bright flash!
    \ - You feel like a new being.
    " - occupant.flash_act() + occupant << "The world is suddenly bright \ + and sudden and loud!
    \ + You feel your body weight suddenly, as your mind suddenly \ + comprehends where you are and what is going on.
    " + occupant.flash_eyes() var/turf/T = get_turf(src) occupant.forceMove(T) icon_state = "pod_0" eject_wait = FALSE //If it's still set somehow. - occupant.domutcheck(1) //Waiting until they're out before possible monkeyizing. The 1 argument forces powers to manifest. + occupant.domutcheck() //Waiting until they're out before possible monkeyizing. occupant = null /obj/machinery/clonepod/proc/malfunction() @@ -356,36 +381,14 @@ go_out() /obj/machinery/clonepod/emp_act(severity) - if(prob(100/(severity*efficiency))) - malfunction() + if(prob(100/(severity*efficiency))) malfunction() ..() /obj/machinery/clonepod/ex_act(severity, target) ..() if(!qdeleted(src)) - locked = FALSE go_out() -/obj/machinery/clonepod/handle_atom_del(atom/A) - if(A == occupant) - occupant = null - locked = FALSE - go_out() - -/obj/machinery/clonepod/proc/horrifyingsound() - for(var/i in 1 to 5) - playsound(loc,pick('sound/hallucinations/growl1.ogg','sound/hallucinations/growl2.ogg','sound/hallucinations/growl3.ogg'), 100, rand(0.95,1.05)) - sleep(1) - sleep(10) - playsound(loc,'sound/hallucinations/wail.ogg',100,1) - -/obj/machinery/clonepod/deconstruct(disassembled = TRUE) - if(occupant) - locked = FALSE - go_out() - ..() - - /* * Diskette Box */ diff --git a/code/game/machinery/computer/Operating.dm b/code/game/machinery/computer/Operating.dm index cae8c26366..99287a51c5 100644 --- a/code/game/machinery/computer/Operating.dm +++ b/code/game/machinery/computer/Operating.dm @@ -6,6 +6,7 @@ circuit = /obj/item/weapon/circuitboard/computer/operating var/mob/living/carbon/human/patient = null var/obj/structure/table/optable/table = null + light_color = LIGHT_COLOR_BLUE /obj/machinery/computer/operating/New() @@ -39,8 +40,10 @@ else patient = null dat += "No patient detected" + playsound(src, 'sound/machines/terminal_error.ogg', 50, 0) else dat += "Operating table not found." + playsound(src, 'sound/machines/terminal_error.ogg', 50, 0) var/datum/browser/popup = new(user, "op", "Operating Computer", 400, 500) popup.set_content(dat) @@ -66,4 +69,4 @@ var/datum/surgery_step/surgery_step = procedure.get_surgery_step() dat += "Next step: [capitalize(surgery_step.name)]
    " dat += "" - return dat \ No newline at end of file + return dat diff --git a/code/game/machinery/computer/aifixer.dm b/code/game/machinery/computer/aifixer.dm index e45106056a..30cbe67a6c 100644 --- a/code/game/machinery/computer/aifixer.dm +++ b/code/game/machinery/computer/aifixer.dm @@ -7,6 +7,7 @@ circuit = /obj/item/weapon/circuitboard/computer/aifixer icon_keyboard = "tech_key" icon_screen = "ai-fixer" + light_color = LIGHT_COLOR_PINK /obj/machinery/computer/aifixer/attackby(obj/I, mob/user, params) if(occupier && istype(I, /obj/item/weapon/screwdriver)) @@ -64,6 +65,9 @@ else dat += "

    Reconstruction in process, please wait.
    " dat += {"
    Close"} + + //user << browse(dat, "window=computer;size=400x500") + //onclose(user, "computer") var/datum/browser/popup = new(user, "computer", "AI System Integrity Restorer", 400, 500) popup.set_content(dat) popup.set_title_image(user.browse_rsc_icon(src.icon, src.icon_state)) @@ -80,7 +84,7 @@ return if(href_list["fix"]) usr << "Reconstruction in progress. This will take several minutes." - playsound(src, 'sound/machines/terminal_prompt_confirm.ogg', 25, 0) + playsound(src, 'sound/machines/terminal_processing.ogg', 25, 0) active = 1 while (occupier.health < 100) occupier.adjustOxyLoss(-1, 0) @@ -143,4 +147,4 @@ else if (active) user << "ERROR: Reconstruction in progress." else if (!occupier) - user << "ERROR: Unable to locate artificial intelligence." \ No newline at end of file + user << "ERROR: Unable to locate artificial intelligence." diff --git a/code/game/machinery/computer/arcade.dm b/code/game/machinery/computer/arcade.dm index 0c12ed765a..9fd153ce2c 100644 --- a/code/game/machinery/computer/arcade.dm +++ b/code/game/machinery/computer/arcade.dm @@ -1,10 +1,12 @@ -/obj/machinery/computer/arcade +/obj/machinery/computer/arcade/ name = "random arcade" desc = "random arcade machine" icon_state = "arcade" icon_keyboard = null icon_screen = "invaders" clockwork = TRUE //it'd look weird + light_color = LIGHT_COLOR_GREEN + light_range_on = 2 var/list/prizes = list( /obj/item/weapon/storage/box/snappops = 2, /obj/item/toy/talking/AI = 2, @@ -12,7 +14,7 @@ /obj/item/clothing/under/syndicate/tacticool = 2, /obj/item/toy/sword = 2, /obj/item/toy/gun = 2, - /obj/item/weapon/gun/ballistic/shotgun/toy/crossbow = 2, + /obj/item/weapon/gun/projectile/shotgun/toy/crossbow = 2, /obj/item/weapon/storage/box/fakesyndiesuit = 2, /obj/item/weapon/storage/crayons = 2, /obj/item/toy/spinningtoy = 2, @@ -38,7 +40,6 @@ /obj/item/weapon/coin/antagtoken = 2, /obj/item/stack/tile/fakespace/loaded = 2, /obj/item/toy/toy_xeno = 2, - /obj/item/weapon/storage/box/actionfigure = 1, /obj/item/weapon/restraints/handcuffs/fake = 2) /obj/machinery/computer/arcade/New() @@ -51,12 +52,9 @@ new CB.build_path(loc, CB) qdel(src) -#define PULSE_MEDAL "Jackpot" - /obj/machinery/computer/arcade/proc/prizevend() if(prob(0.0001)) //1 in a million new /obj/item/weapon/gun/energy/pulse/prize(src) - UnlockMedal(PULSE_MEDAL,usr.client) if(!contents.len) var/prizeselect = pickweight(prizes) @@ -68,7 +66,7 @@ "You hear a chime and a clunk.") prize.loc = src.loc -#undef PULSE_MEDAL + /obj/machinery/computer/arcade/emp_act(severity) ..(severity) @@ -138,6 +136,9 @@ dat += "Recharge Power" dat += "
    " + + //user << browse(dat, "window=arcade") + //onclose(user, "arcade") var/datum/browser/popup = new(user, "arcade", "Space Villian 2000") popup.set_content(dat) popup.set_title_image(user.browse_rsc_icon(src.icon, src.icon_state)) @@ -496,7 +497,7 @@ M.hallucination += 30 else usr << "Something strikes you from behind! It hurts like hell and feel like a blunt weapon, but nothing is there..." - M.take_bodypart_damage(30) + M.take_organ_damage(30) playsound(loc, 'sound/weapons/genhit2.ogg', 100, 1) if(ORION_TRAIL_ILLNESS) var/severity = rand(1,3) //pray to RNGesus. PRAY, PIGS @@ -514,7 +515,7 @@ if(prob(75)) M.Weaken(3) say("A sudden gust of powerful wind slams [M] into the floor!") - M.take_bodypart_damage(25) + M.take_organ_damage(25) playsound(src.loc, 'sound/weapons/Genhit.ogg', 100, 1) else M << "A violent gale blows past you, and you barely manage to stay standing!" @@ -885,7 +886,7 @@ if(ORION_TRAIL_SPACEPORT) gameStatus = ORION_STATUS_MARKET if(spaceport_raided) - eventdat += "The Spaceport is on high alert! They won't let you dock since you tried to attack them!" + eventdat += "The Spaceport is on high alert! they wont let you dock since you tried to attack them!" if(last_spaceport_action) eventdat += "
    Last Spaceport Action: [last_spaceport_action]" eventdat += "

    Depart Spaceport

    " @@ -1037,7 +1038,7 @@ desc = "The Premier security forces for all spaceports found along the Orion Trail." faction = list("orion") loot = list(/obj/effect/mob_spawn/human/corpse/orionsecurity, - /obj/item/weapon/gun/ballistic/automatic/c20r/unrestricted, + /obj/item/weapon/gun/projectile/automatic/c20r/unrestricted, /obj/item/weapon/shield/energy) /obj/effect/mob_spawn/human/corpse/orionsecurity @@ -1052,14 +1053,14 @@ back = /obj/item/weapon/storage/backpack has_id = 1 id_job = "Officer" - id_access_list = list(access_syndicate) + id_access = "Syndicate" /obj/item/weapon/orion_ship name = "model settler ship" desc = "A model spaceship, it looks like those used back in the day when travelling to Orion! It even has a miniature FX-293 reactor, which was renowned for its instability and tendency to explode..." icon = 'icons/obj/toy.dmi' icon_state = "ship" - w_class = WEIGHT_CLASS_SMALL + w_class = 2 var/active = 0 //if the ship is on /obj/item/weapon/orion_ship/examine(mob/user) diff --git a/code/game/machinery/computer/atmos_alert.dm b/code/game/machinery/computer/atmos_alert.dm index 899f382190..c38b9d63ff 100644 --- a/code/game/machinery/computer/atmos_alert.dm +++ b/code/game/machinery/computer/atmos_alert.dm @@ -8,6 +8,7 @@ var/list/minor_alarms = list() var/receive_frequency = 1437 var/datum/radio_frequency/radio_connection + light_color = LIGHT_COLOR_CYAN /obj/machinery/computer/atmos_alert/initialize() ..() @@ -82,4 +83,4 @@ if(priority_alarms.len) add_overlay("alert:2") else if(minor_alarms.len) - add_overlay("alert:1") \ No newline at end of file + add_overlay("alert:1") diff --git a/code/game/machinery/computer/atmos_control.dm b/code/game/machinery/computer/atmos_control.dm index 83b8da0dda..7cc39f4422 100644 --- a/code/game/machinery/computer/atmos_control.dm +++ b/code/game/machinery/computer/atmos_control.dm @@ -69,6 +69,7 @@ icon_screen = "tank" icon_keyboard = "atmos_key" circuit = /obj/item/weapon/circuitboard/computer/atmos_control + light_color = LIGHT_COLOR_CYAN var/frequency = 1441 var/list/sensors = list( diff --git a/code/game/machinery/computer/buildandrepair.dm b/code/game/machinery/computer/buildandrepair.dm index 1fb842f75e..ab84b1612c 100644 --- a/code/game/machinery/computer/buildandrepair.dm +++ b/code/game/machinery/computer/buildandrepair.dm @@ -11,11 +11,10 @@ if(istype(P, /obj/item/weapon/wrench)) playsound(src.loc, P.usesound, 50, 1) user << "You start wrenching the frame into place..." - if(do_after(user, 20*P.toolspeed, target = src)) + if(do_after(user, 20/P.toolspeed, target = src)) user << "You wrench the frame into place." anchored = 1 state = 1 - return if(istype(P, /obj/item/weapon/weldingtool)) var/obj/item/weapon/weldingtool/WT = P if(!WT.remove_fuel(0, user)) @@ -24,42 +23,38 @@ return playsound(src.loc, P.usesound, 50, 1) user << "You start deconstructing the frame..." - if(do_after(user, 20*P.toolspeed, target = src)) + if(do_after(user, 20/P.toolspeed, target = src)) if(!src || !WT.isOn()) return user << "You deconstruct the frame." var/obj/item/stack/sheet/metal/M = new (loc, 5) M.add_fingerprint(user) qdel(src) - return if(1) if(istype(P, /obj/item/weapon/wrench)) playsound(src.loc, P.usesound, 50, 1) user << "You start to unfasten the frame..." - if(do_after(user, 20*P.toolspeed, target = src)) + if(do_after(user, 20/P.toolspeed, target = src)) user << "You unfasten the frame." anchored = 0 state = 0 - return if(istype(P, /obj/item/weapon/circuitboard/computer) && !circuit) if(!user.drop_item()) return - playsound(src.loc, 'sound/items/Deconstruct.ogg', 50, 1) + playsound(src.loc, P.usesound, 50, 1) user << "You place the circuit board inside the frame." icon_state = "1" circuit = P circuit.add_fingerprint(user) P.loc = null - return else if(istype(P, /obj/item/weapon/circuitboard) && !circuit) user << "This frame does not accept circuit boards of this type!" - return + if(istype(P, /obj/item/weapon/screwdriver) && circuit) playsound(src.loc, P.usesound, 50, 1) user << "You screw the circuit board into place." state = 2 icon_state = "2" - return if(istype(P, /obj/item/weapon/crowbar) && circuit) playsound(src.loc, P.usesound, 50, 1) user << "You remove the circuit board." @@ -68,20 +63,18 @@ circuit.loc = src.loc circuit.add_fingerprint(user) circuit = null - return if(2) if(istype(P, /obj/item/weapon/screwdriver) && circuit) playsound(src.loc, P.usesound, 50, 1) user << "You unfasten the circuit board." state = 1 icon_state = "1" - return if(istype(P, /obj/item/stack/cable_coil)) var/obj/item/stack/cable_coil/C = P if(C.get_amount() >= 5) playsound(src.loc, 'sound/items/Deconstruct.ogg', 50, 1) user << "You start adding cables to the frame..." - if(do_after(user, 20*P.toolspeed, target = src)) + if(do_after(user, 20/P.toolspeed, target = src)) if(C.get_amount() >= 5 && state == 2) C.use(5) user << "You add cables to the frame." @@ -89,7 +82,6 @@ icon_state = "3" else user << "You need five lengths of cable to wire the frame!" - return if(3) if(istype(P, /obj/item/weapon/wirecutters)) playsound(src.loc, P.usesound, 50, 1) @@ -99,7 +91,6 @@ var/obj/item/stack/cable_coil/A = new (loc) A.amount = 5 A.add_fingerprint(user) - return if(istype(P, /obj/item/stack/sheet/glass)) var/obj/item/stack/sheet/glass/G = P @@ -115,7 +106,6 @@ user << "You put in the glass panel." state = 4 src.icon_state = "4" - return if(4) if(istype(P, /obj/item/weapon/crowbar)) playsound(src.loc, P.usesound, 50, 1) @@ -124,27 +114,14 @@ icon_state = "3" var/obj/item/stack/sheet/glass/G = new (loc, 2) G.add_fingerprint(user) - return if(istype(P, /obj/item/weapon/screwdriver)) playsound(src.loc, P.usesound, 50, 1) user << "You connect the monitor." var/obj/B = new src.circuit.build_path (src.loc, circuit) transfer_fingerprints_to(B) qdel(src) - return - if(user.a_intent == INTENT_HARM) - return ..() -/obj/structure/frame/computer/deconstruct(disassembled = TRUE) - if(!(flags & NODECONSTRUCT)) - if(state == 4) - new /obj/item/weapon/shard(loc) - new /obj/item/weapon/shard(loc) - if(state >= 3) - new /obj/item/stack/cable_coil(loc , 5) - ..() - /obj/item/weapon/circuitboard name = "circuit board" @@ -153,7 +130,7 @@ item_state = "electronic" origin_tech = "programming=2" materials = list(MAT_GLASS=1000) - w_class = WEIGHT_CLASS_SMALL + w_class = 2 var/build_path = null /obj/item/weapon/circuitboard/computer/turbine_computer diff --git a/code/game/machinery/computer/camera.dm b/code/game/machinery/computer/camera.dm index 4ed1fd48bf..4c7cd70567 100644 --- a/code/game/machinery/computer/camera.dm +++ b/code/game/machinery/computer/camera.dm @@ -8,6 +8,8 @@ var/list/network = list("SS13") var/mapping = 0//For the overview file, interesting bit of code. var/list/watchers = list() //who's using the console, associated with the camera they're on. + light_color = LIGHT_COLOR_RED + /obj/machinery/computer/security/check_eye(mob/user) if( (stat & (NOPOWER|BROKEN)) || user.incapacitated() || user.eye_blind ) @@ -27,7 +29,7 @@ if(!Adjacent(user)) user.unset_machine() return - else if(iscyborg(user)) + else if(isrobot(user)) var/list/viewing = viewers(src) if(!viewing.Find(user)) user.unset_machine() @@ -68,7 +70,7 @@ if(!(user in watchers)) user.unset_machine() // no usable camera on the network, we disconnect the user from the computer. return - playsound(src, 'sound/machines/terminal_prompt.ogg', 25, 0) + playsound(src, 'sound/machines/terminal_displaying.ogg', 25, 0) use_camera_console(user) /obj/machinery/computer/security/proc/use_camera_console(mob/user) @@ -91,7 +93,7 @@ var/camera_fail = 0 if(!C.can_use() || user.machine != src || user.eye_blind || user.incapacitated()) camera_fail = 1 - else if(iscyborg(user)) + else if(isrobot(user)) var/list/viewing = viewers(src) if(!viewing.Find(user)) camera_fail = 1 @@ -103,18 +105,18 @@ user.unset_machine() return 0 - playsound(src, 'sound/machines/terminal_prompt_confirm.ogg', 25, 0) if(isAI(user)) var/mob/living/silicon/ai/A = user A.eyeobj.setLoc(get_turf(C)) A.client.eye = A.eyeobj else user.reset_perspective(C) - user.overlay_fullscreen("flash", /obj/screen/fullscreen/flash/static) + user.overlay_fullscreen("flash", /obj/screen/fullscreen/flash/noise) user.clear_fullscreen("flash", 5) watchers[user] = C use_power(50) - addtimer(src, "use_camera_console", 5, TIMER_NORMAL, user) + addtimer(src, "use_camera_console", 5, FALSE, user) + playsound(src, 'sound/machines/terminal_select.ogg', 25, 0) else user.unset_machine() @@ -153,6 +155,7 @@ density = 0 circuit = null clockwork = TRUE //it'd look very weird + use_auto_lights = 0 /obj/machinery/computer/security/telescreen/update_icon() icon_state = initial(icon_state) diff --git a/code/game/machinery/computer/camera_advanced.dm b/code/game/machinery/computer/camera_advanced.dm index e7ef1d57ca..eadf7c8fc9 100644 --- a/code/game/machinery/computer/camera_advanced.dm +++ b/code/game/machinery/computer/camera_advanced.dm @@ -175,15 +175,14 @@ if (tempnetwork.len) T[text("[][]", netcam.c_tag, (netcam.can_use() ? null : " (Deactivated)"))] = netcam - - playsound(origin, 'sound/machines/terminal_prompt.ogg', 25, 0) + playsound(origin, 'sound/machines/terminal_select.ogg', 25, 0) var/camera = input("Choose which camera you want to view", "Cameras") as null|anything in T var/obj/machinery/camera/final = T[camera] - playsound(src, "terminal_type", 25, 0) + playsound(src, 'sound/machines/terminal_select.ogg', 50, 0) if(final) - playsound(origin, 'sound/machines/terminal_prompt_confirm.ogg', 25, 0) + playsound(origin, 'sound/machines/terminal_select.ogg', 25, 0) remote_eye.setLoc(get_turf(final)) - C.overlay_fullscreen("flash", /obj/screen/fullscreen/flash/static) + C.overlay_fullscreen("flash", /obj/screen/fullscreen/flash/noise) C.clear_fullscreen("flash", 3) //Shorter flash than normal since it's an ~~advanced~~ console! else - playsound(origin, 'sound/machines/terminal_prompt_deny.ogg', 25, 0) + playsound(origin, 'sound/machines/terminal_error.ogg', 25, 0) diff --git a/code/game/machinery/computer/card.dm b/code/game/machinery/computer/card.dm index 587d76b681..e9f2a31c99 100644 --- a/code/game/machinery/computer/card.dm +++ b/code/game/machinery/computer/card.dm @@ -1,4 +1,4 @@ - +//This file was auto-corrected by findeclaration.exe on 25.5.2012 20:42:31 //Keeps track of the time for the ID console. Having it as a global variable prevents people from dismantling/reassembling it to //increase the slots of many jobs. @@ -19,6 +19,7 @@ var/time_last_changed_position = 0 var/list/region_access = null var/list/head_subordinates = null var/target_dept = 0 //Which department this computer has access to. 0=all departments + light_color = LIGHT_COLOR_BLUE //Cooldown for closing positions in seconds //if set to -1: No cooldown... probably a bad idea @@ -34,7 +35,8 @@ var/time_last_changed_position = 0 "Head of Security", "Chief Engineer", "Research Director", - "Chief Medical Officer") + "Chief Medical Officer", + "Chaplain") //The scaling factor of max total positions in relation to the total amount of people on board the station in % var/max_relative_positions = 30 //30%: Seems reasonable, limit of 6 @ 20 players @@ -69,32 +71,6 @@ var/time_last_changed_position = 0 else return ..() -/obj/machinery/computer/card/Destroy() - if(scan) - qdel(scan) - scan = null - if(modify) - qdel(modify) - modify = null - return ..() - -/obj/machinery/computer/card/handle_atom_del(atom/A) - ..() - if(A == scan) - scan = null - updateUsrDialog() - if(A == modify) - modify = null - updateUsrDialog() - -/obj/machinery/computer/card/on_deconstruction() - if(scan) - scan.forceMove(loc) - scan = null - if(modify) - modify.forceMove(loc) - modify = null - //Check if you can't open a new position for a certain job /obj/machinery/computer/card/proc/job_blacklisted(jobtitle) return (jobtitle in blacklisted) @@ -317,6 +293,10 @@ var/time_last_changed_position = 0 body += "

    Job Management" dat = "[header][body]

    " + + //user << browse(dat, "window=id_com;size=900x520") + //onclose(user, "id_com") + var/datum/browser/popup = new(user, "id_com", src.name, 900, 620) popup.set_content(dat) popup.set_title_image(user.browse_rsc_icon(src.icon, src.icon_state)) @@ -340,7 +320,7 @@ var/time_last_changed_position = 0 region_access = null head_subordinates = null else - var/obj/item/I = usr.get_active_held_item() + var/obj/item/I = usr.get_active_hand() if (istype(I, /obj/item/weapon/card/id)) if(!usr.drop_item()) return @@ -356,7 +336,7 @@ var/time_last_changed_position = 0 playsound(src, 'sound/machines/terminal_insert_disc.ogg', 50, 0) scan = null else - var/obj/item/I = usr.get_active_held_item() + var/obj/item/I = usr.get_active_hand() if (istype(I, /obj/item/weapon/card/id)) if(!usr.drop_item()) return @@ -365,7 +345,7 @@ var/time_last_changed_position = 0 scan = I authenticated = 0 if ("auth") - if ((!( authenticated ) && (scan || issilicon(usr)) && (modify || mode))) + if ((!( authenticated ) && (scan || (istype(usr, /mob/living/silicon))) && (modify || mode))) if (check_access(scan)) region_access = list() head_subordinates = list() @@ -376,7 +356,7 @@ var/time_last_changed_position = 0 authenticated = 1 else authenticated = 2 - playsound(src, 'sound/machines/terminal_on.ogg', 50, 0) + playsound(src, 'sound/machines/terminal_success.ogg', 50, 0) else if((access_hop in scan.access) && ((target_dept==1) || !target_dept)) @@ -397,13 +377,13 @@ var/time_last_changed_position = 0 get_subordinates("Chief Engineer") if(region_access) authenticated = 1 - else if ((!( authenticated ) && issilicon(usr)) && (!modify)) + else if ((!( authenticated ) && (istype(usr, /mob/living/silicon))) && (!modify)) usr << "You can't modify an ID without an ID inserted to modify! Once one is in the modify slot on the computer, you can log in." if ("logout") region_access = null head_subordinates = null authenticated = 0 - playsound(src, 'sound/machines/terminal_off.ogg', 50, 0) + playsound(src, 'sound/machines/terminal_select.ogg', 50, 0) if("access") if(href_list["allowed"]) if(authenticated) @@ -413,7 +393,7 @@ var/time_last_changed_position = 0 modify.access -= access_type if(access_allowed == 1) modify.access += access_type - playsound(src, "terminal_type", 50, 0) + playsound(src, 'sound/machines/terminal_select.ogg', 50, 0) if ("assign") if (authenticated == 2) var/t1 = href_list["assign_target"] @@ -439,22 +419,23 @@ var/time_last_changed_position = 0 modify.access = ( istype(src,/obj/machinery/computer/card/centcom) ? get_centcom_access(t1) : jobdatum.get_access() ) if (modify) modify.assignment = t1 - playsound(src, 'sound/machines/terminal_prompt_confirm.ogg', 50, 0) + playsound(src, 'sound/machines/terminal_select.ogg', 50, 0) + if ("demote") if(modify.assignment in head_subordinates || modify.assignment == "Assistant") modify.assignment = "Unassigned" - playsound(src, 'sound/machines/terminal_prompt_confirm.ogg', 50, 0) + playsound(src, 'sound/machines/terminal_select.ogg', 50, 0) else usr << "You are not authorized to demote this position." if ("reg") if (authenticated) var/t2 = modify //var/t1 = input(usr, "What name?", "ID computer", null) as text - if ((authenticated && modify == t2 && (in_range(src, usr) || issilicon(usr)) && isturf(loc))) + if ((authenticated && modify == t2 && (in_range(src, usr) || (istype(usr, /mob/living/silicon))) && istype(loc, /turf))) var/newName = reject_bad_name(href_list["reg"]) if(newName) modify.registered_name = newName - playsound(src, 'sound/machines/terminal_prompt_confirm.ogg', 50, 0) + playsound(src, 'sound/machines/terminal_select.ogg', 50, 0) else usr << "Invalid name entered." return @@ -464,7 +445,7 @@ var/time_last_changed_position = 0 if("return") //DISPLAY MAIN MENU mode = 3; - playsound(src, "terminal_type", 25, 0) + playsound(src, 'sound/machines/terminal_select.ogg', 50, 0) if("make_job_available") // MAKE ANOTHER JOB POSITION AVAILABLE FOR LATE JOINERS @@ -479,7 +460,7 @@ var/time_last_changed_position = 0 time_last_changed_position = world.time / 10 j.total_positions++ opened_positions[edit_job_target]++ - playsound(src, 'sound/machines/terminal_prompt_confirm.ogg', 50, 0) + playsound(src, 'sound/machines/terminal_select.ogg', 50, 0) if("make_job_unavailable") // MAKE JOB POSITION UNAVAILABLE FOR LATE JOINERS @@ -495,7 +476,7 @@ var/time_last_changed_position = 0 time_last_changed_position = world.time / 10 j.total_positions-- opened_positions[edit_job_target]-- - playsound(src, 'sound/machines/terminal_prompt_deny.ogg', 50, 0) + playsound(src, 'sound/machines/terminal_select.ogg', 50, 0) if ("print") if (!( printing )) @@ -509,6 +490,7 @@ var/time_last_changed_position = 0 P.name = "paper- 'Crew Manifest'" printing = null playsound(src, 'sound/machines/terminal_insert_disc.ogg', 50, 0) + if (modify) modify.update_label() updateUsrDialog() @@ -543,6 +525,7 @@ var/time_last_changed_position = 0 /obj/machinery/computer/card/minor/hos target_dept = 2 icon_screen = "idhos" + light_color = LIGHT_COLOR_RED /obj/machinery/computer/card/minor/cmo target_dept = 3 @@ -551,7 +534,9 @@ var/time_last_changed_position = 0 /obj/machinery/computer/card/minor/rd target_dept = 4 icon_screen = "idrd" + light_color = LIGHT_COLOR_PINK /obj/machinery/computer/card/minor/ce target_dept = 5 icon_screen = "idce" + light_color = LIGHT_COLOR_ORANGE diff --git a/code/game/machinery/computer/cloning.dm b/code/game/machinery/computer/cloning.dm index 2cf33e1be5..af29a72fcf 100644 --- a/code/game/machinery/computer/cloning.dm +++ b/code/game/machinery/computer/cloning.dm @@ -17,6 +17,7 @@ var/obj/item/weapon/disk/data/diskette = null //Mostly so the geneticist can steal everything. var/loading = 0 // Nice loading text var/autoprocess = 0 + light_color = LIGHT_COLOR_BLUE /obj/machinery/computer/cloning/New() ..() @@ -210,6 +211,8 @@ dat += "Cancel" + //user << browse(dat, "window=cloning") + //onclose(user, "cloning") var/datum/browser/popup = new(user, "cloning", "Cloning System Control") popup.set_content(dat) popup.set_title_image(user.browse_rsc_icon(src.icon, src.icon_state)) @@ -226,17 +229,17 @@ switch(href_list["task"]) if("autoprocess") autoprocess = 1 - playsound(src, 'sound/machines/terminal_prompt_confirm.ogg', 50, 0) + playsound(src, 'sound/machines/terminal_select.ogg', 50, 0) if("stopautoprocess") autoprocess = 0 - playsound(src, 'sound/machines/terminal_prompt_deny.ogg', 50, 0) + playsound(src, 'sound/machines/terminal_select.ogg', 50, 0) else if ((href_list["scan"]) && !isnull(scanner) && scanner.is_operational()) scantemp = "" loading = 1 src.updateUsrDialog() - playsound(src, 'sound/machines/terminal_prompt.ogg', 50, 0) + playsound(src, 'sound/machines/terminal_processing.ogg', 50, 0) say("Initiating scan...") spawn(20) @@ -244,20 +247,19 @@ loading = 0 src.updateUsrDialog() - playsound(src, 'sound/machines/terminal_prompt_confirm.ogg', 50, 0) //No locking an open scanner. else if ((href_list["lock"]) && !isnull(scanner) && scanner.is_operational()) if ((!scanner.locked) && (scanner.occupant)) scanner.locked = 1 - playsound(src, 'sound/machines/terminal_prompt_deny.ogg', 50, 0) + playsound(src, 'sound/machines/DoorClick.ogg', 50, 0) else scanner.locked = 0 - playsound(src, 'sound/machines/terminal_prompt_confirm.ogg', 50, 0) + playsound(src, 'sound/machines/DoorClick.ogg', 50, 0) else if(href_list["view_rec"]) - playsound(src, "terminal_type", 25, 0) + playsound(src, 'sound/machines/terminal_select.ogg', 50, 0) src.active_record = find_record("id", href_list["view_rec"], records) if(active_record) if(!active_record.fields["ckey"]) @@ -275,20 +277,20 @@ if (src.menu == 3) //If we are viewing a record, confirm deletion src.temp = "Delete record?" src.menu = 4 - playsound(src, 'sound/machines/terminal_prompt.ogg', 50, 0) + playsound(src, 'sound/machines/terminal_displaying.ogg', 50, 0) else if (src.menu == 4) - var/obj/item/weapon/card/id/C = usr.get_active_held_item() + var/obj/item/weapon/card/id/C = usr.get_active_hand() if (istype(C)||istype(C, /obj/item/device/pda)) if(src.check_access(C)) src.temp = "[src.active_record.fields["name"]] => Record deleted." src.records.Remove(active_record) active_record = null - playsound(src, 'sound/machines/terminal_prompt_confirm.ogg', 50, 0) + playsound(src, 'sound/machines/terminal_success.ogg', 50, 0) src.menu = 2 else src.temp = "Access Denied." - playsound(src, 'sound/machines/terminal_prompt_deny.ogg', 50, 0) + playsound(src, 'sound/machines/terminal_error.ogg', 50, 0) else if (href_list["disk"]) //Load or eject. switch(href_list["disk"]) @@ -296,19 +298,19 @@ if (!diskette || !istype(diskette.fields) || !diskette.fields["name"] || !diskette.fields) src.temp = "Load error." src.updateUsrDialog() - playsound(src, 'sound/machines/terminal_prompt_deny.ogg', 50, 0) + playsound(src, 'sound/machines/terminal_error.ogg', 50, 0) return if (!src.active_record) src.temp = "Record error." src.menu = 1 src.updateUsrDialog() - playsound(src, 'sound/machines/terminal_prompt_deny.ogg', 50, 0) + playsound(src, 'sound/machines/terminal_error.ogg', 50, 0) return for(var/key in diskette.fields) src.active_record.fields[key] = diskette.fields[key] src.temp = "Load successful." - playsound(src, 'sound/machines/terminal_prompt_confirm.ogg', 50, 0) + playsound(src, 'sound/machines/terminal_success.ogg', 50, 0) if("eject") if(src.diskette) @@ -319,17 +321,16 @@ if(!diskette || diskette.read_only || !active_record || !active_record.fields) src.temp = "Save error." src.updateUsrDialog() - playsound(src, 'sound/machines/terminal_prompt_deny.ogg', 50, 0) + playsound(src, 'sound/machines/terminal_error.ogg', 50, 0) return diskette.fields = active_record.fields.Copy() diskette.name = "data disk - '[src.diskette.fields["name"]]'" src.temp = "Save successful." - playsound(src, 'sound/machines/terminal_prompt_confirm.ogg', 50, 0) + playsound(src, 'sound/machines/terminal_success.ogg', 50, 0) else if (href_list["refresh"]) src.updateUsrDialog() - playsound(src, "terminal_type", 25, 0) else if (href_list["clone"]) var/datum/data/record/C = find_record("id", href_list["clone"], records) @@ -338,34 +339,34 @@ //Can't clone without someone to clone. Or a pod. Or if the pod is busy. Or full of gibs. if(!pod1) temp = "No Clonepod detected." - playsound(src, 'sound/machines/terminal_prompt_deny.ogg', 50, 0) + playsound(src, 'sound/machines/terminal_error.ogg', 50, 0) else if(pod1.occupant) temp = "Clonepod is currently occupied." - playsound(src, 'sound/machines/terminal_prompt_deny.ogg', 50, 0) + playsound(src, 'sound/machines/terminal_error.ogg', 50, 0) else if(pod1.mess) temp = "Clonepod malfunction." - playsound(src, 'sound/machines/terminal_prompt_deny.ogg', 50, 0) + playsound(src, 'sound/machines/terminal_error.ogg', 50, 0) else if(!config.revival_cloning) temp = "Unable to initiate cloning cycle." - playsound(src, 'sound/machines/terminal_prompt_deny.ogg', 50, 0) + playsound(src, 'sound/machines/terminal_error.ogg', 50, 0) else if(pod1.growclone(C.fields["ckey"], C.fields["name"], C.fields["UI"], C.fields["SE"], C.fields["mind"], C.fields["mrace"], C.fields["features"], C.fields["factions"])) temp = "[C.fields["name"]] => Cloning cycle in progress..." - playsound(src, 'sound/machines/terminal_prompt_confirm.ogg', 50, 0) + playsound(src, 'sound/machines/terminal_processing.ogg', 50, 0) records.Remove(C) if(active_record == C) active_record = null menu = 1 else temp = "[C.fields["name"]] => Initialisation failure." - playsound(src, 'sound/machines/terminal_prompt_deny.ogg', 50, 0) + playsound(src, 'sound/machines/terminal_error.ogg', 50, 0) else temp = "Data corruption." - playsound(src, 'sound/machines/terminal_prompt_deny.ogg', 50, 0) + playsound(src, 'sound/machines/terminal_error.ogg', 50, 0) else if (href_list["menu"]) src.menu = text2num(href_list["menu"]) - playsound(src, "terminal_type", 25, 0) + playsound(src, 'sound/machines/terminal_select.ogg', 50, 0) src.add_fingerprint(usr) src.updateUsrDialog() @@ -374,27 +375,27 @@ /obj/machinery/computer/cloning/proc/scan_mob(mob/living/carbon/human/subject) if (!istype(subject)) scantemp = "Unable to locate valid genetic data." - playsound(src, 'sound/machines/terminal_prompt_deny.ogg', 50, 0) + playsound(src, 'sound/machines/terminal_error.ogg', 50, 0) return if (!subject.getorgan(/obj/item/organ/brain)) scantemp = "No signs of intelligence detected." - playsound(src, 'sound/machines/terminal_alert.ogg', 50, 0) + playsound(src, 'sound/machines/terminal_error.ogg', 50, 0) return if (subject.suiciding == 1 || subject.hellbound) scantemp = "Subject's brain is not responding to scanning stimuli." - playsound(src, 'sound/machines/terminal_prompt_deny.ogg', 50, 0) + playsound(src, 'sound/machines/terminal_error.ogg', 50, 0) return if ((subject.disabilities & NOCLONE) && (src.scanner.scan_level < 2)) scantemp = "Subject no longer contains the fundamental materials required to create a living clone." - playsound(src, 'sound/machines/terminal_alert.ogg', 50, 0) + playsound(src, 'sound/machines/terminal_error.ogg', 50, 0) return if ((!subject.ckey) || (!subject.client)) scantemp = "Mental interface failure." - playsound(src, 'sound/machines/terminal_prompt_deny.ogg', 50, 0) + playsound(src, 'sound/machines/terminal_error.ogg', 50, 0) return if (find_record("ckey", subject.ckey, records)) scantemp = "Subject already in database." - playsound(src, 'sound/machines/terminal_prompt_deny.ogg', 50, 0) + playsound(src, 'sound/machines/terminal_error.ogg', 50, 0) return var/datum/data/record/R = new() @@ -415,20 +416,19 @@ R.fields["blood_type"] = subject.dna.blood_type R.fields["features"] = subject.dna.features R.fields["factions"] = subject.faction - //Add an implant if needed - var/obj/item/weapon/implant/health/imp - for(var/obj/item/weapon/implant/health/HI in subject.implants) - imp = HI - break + var/obj/item/weapon/implant/health/imp = locate(/obj/item/weapon/implant/health, subject) if(!imp) imp = new /obj/item/weapon/implant/health(subject) - imp.implant(subject) - R.fields["imp"] = "\ref[imp]" + imp.implanted = subject + R.fields["imp"] = "\ref[imp]" + //Update it if needed + else + R.fields["imp"] = "\ref[imp]" if (!isnull(subject.mind)) //Save that mind so traitors can continue traitoring after cloning. R.fields["mind"] = "\ref[subject.mind]" src.records += R scantemp = "Subject successfully scanned." - playsound(src, 'sound/machines/terminal_prompt_confirm.ogg', 50, 0) + playsound(src, 'sound/machines/terminal_success.ogg', 50, 0) diff --git a/code/game/machinery/computer/communications.dm b/code/game/machinery/computer/communications.dm index ae123d56b2..c336af7ad3 100644 --- a/code/game/machinery/computer/communications.dm +++ b/code/game/machinery/computer/communications.dm @@ -1,4 +1,4 @@ - +//This file was auto-corrected by findeclaration.exe on 25.5.2012 20:42:31 var/const/CALL_SHUTTLE_REASON_LENGTH = 12 @@ -31,14 +31,13 @@ var/const/CALL_SHUTTLE_REASON_LENGTH = 12 var/const/STATE_ALERT_LEVEL = 8 var/const/STATE_CONFIRM_LEVEL = 9 var/const/STATE_TOGGLE_EMERGENCY = 10 - var/const/STATE_PURCHASE = 11 - var/const/COMMUNICATION_COOLDOWN = 600 - var/const/COMMUNICATION_COOLDOWN_AI = 600 var/status_display_freq = "1435" var/stat_msg1 var/stat_msg2 + light_color = LIGHT_COLOR_BLUE + /obj/machinery/computer/communications/New() shuttle_caller_list += src @@ -65,10 +64,9 @@ var/const/CALL_SHUTTLE_REASON_LENGTH = 12 // main interface if("main") src.state = STATE_DEFAULT - playsound(src, 'sound/machines/terminal_prompt_deny.ogg', 50, 0) if("login") var/mob/M = usr - var/obj/item/weapon/card/id/I = M.get_active_held_item() + var/obj/item/weapon/card/id/I = M.get_active_hand() if (istype(I, /obj/item/device/pda)) var/obj/item/device/pda/pda = I I = pda.id @@ -78,23 +76,23 @@ var/const/CALL_SHUTTLE_REASON_LENGTH = 12 auth_id = "[I.registered_name] ([I.assignment])" if((20 in I.access)) authenticated = 2 - playsound(src, 'sound/machines/terminal_on.ogg', 50, 0) + playsound(src, 'sound/machines/terminal_select.ogg', 50, 0) + if(src.emagged) authenticated = 2 - auth_id = "Unknown" - M << "[src] lets out a quiet alarm as its login is overriden." - playsound(src, 'sound/machines/terminal_on.ogg', 50, 0) - playsound(src, 'sound/machines/terminal_alert.ogg', 25, 0) + auth_id = "ERROR: CANNOT READ" + M << "[src] lets out a few quiet beeps as its login is overriden." if(prob(25)) for(var/mob/living/silicon/ai/AI in active_ais()) - AI << sound('sound/machines/terminal_alert.ogg', volume = 10) //Very quiet for balance reasons + AI << sound('sound/machines/terminal_emagged.ogg', volume = 10) //Very quiet for balance reasons + if("logout") authenticated = 0 - playsound(src, 'sound/machines/terminal_off.ogg', 50, 0) + playsound(src, 'sound/machines/terminal_select.ogg', 50, 0) if("swipeidseclevel") var/mob/M = usr - var/obj/item/weapon/card/id/I = M.get_active_held_item() + var/obj/item/weapon/card/id/I = M.get_active_hand() if (istype(I, /obj/item/device/pda)) var/obj/item/device/pda/pda = I I = pda.id @@ -107,7 +105,7 @@ var/const/CALL_SHUTTLE_REASON_LENGTH = 12 set_security_level(tmp_alertlevel) if(security_level != old_level) usr << "Authorization confirmed. Modifying security level." - playsound(src, 'sound/machines/terminal_prompt_confirm.ogg', 50, 0) + playsound(src, 'sound/machines/terminal_success.ogg', 50, 0) //Only notify the admins if an actual change happened log_game("[key_name(usr)] has changed the security level to [get_security_level()].") message_admins("[key_name_admin(usr)] has changed the security level to [get_security_level()].") @@ -119,67 +117,36 @@ var/const/CALL_SHUTTLE_REASON_LENGTH = 12 tmp_alertlevel = 0 else: usr << "You are not authorized to do this!" - playsound(src, 'sound/machines/terminal_prompt_deny.ogg', 50, 0) + playsound(src, 'sound/machines/terminal_error.ogg', 50, 0) tmp_alertlevel = 0 state = STATE_DEFAULT else usr << "You need to swipe your ID!" - playsound(src, 'sound/machines/terminal_prompt_deny.ogg', 50, 0) + playsound(src, 'sound/machines/terminal_error.ogg', 50, 0) if("announce") - if(src.authenticated==2) - playsound(src, 'sound/machines/terminal_prompt.ogg', 50, 0) + if(src.authenticated==2 && !message_cooldown) + playsound(src, 'sound/machines/terminal_displaying.ogg', 50, 0) make_announcement(usr) + else if (src.authenticated==2 && message_cooldown) + usr << "Intercomms recharging. Please stand by." + playsound(src, 'sound/machines/terminal_error.ogg', 50, 0) if("crossserver") if(authenticated==2) if(CM.lastTimeUsed + 600 > world.time) usr << "Arrays recycling. Please stand by." - playsound(src, 'sound/machines/terminal_prompt_deny.ogg', 50, 0) + playsound(src, 'sound/machines/terminal_error.ogg', 50, 0) return var/input = stripped_multiline_input(usr, "Please choose a message to transmit to an allied station. Please be aware that this process is very expensive, and abuse will lead to... termination.", "Send a message to an allied station.", "") if(!input || !(usr in view(1,src))) return - playsound(src, 'sound/machines/terminal_prompt_confirm.ogg', 50, 0) + playsound(src, 'sound/machines/terminal_success.ogg', 50, 0) send2otherserver("[station_name()]", input,"Comms_Console") minor_announce(input, title = "Outgoing message to allied station") log_say("[key_name(usr)] has sent a message to the other server: [input]") - message_admins("[key_name_admin(usr)] has sent a message to the other server.") CM.lastTimeUsed = world.time - if("purchase_menu") - state = STATE_PURCHASE - - if("buyshuttle") - if(authenticated==2) - var/list/shuttles = flatten_list(shuttle_templates) - var/datum/map_template/shuttle/S = locate(href_list["chosen_shuttle"]) in shuttles - if(S && istype(S)) - if(SSshuttle.emergency.mode != SHUTTLE_CALL && SSshuttle.emergency.mode != SHUTTLE_RECALL && SSshuttle.emergency.mode != SHUTTLE_IDLE) - usr << "It's a bit late to buy a new shuttle, don't you think?" - return - if(SSshuttle.shuttle_purchased) - usr << "A replacement shuttle has already been purchased." - else if(!S.prerequisites_met()) - usr << "You have not met the requirements for purchasing this shuttle." - else - if(SSshuttle.points >= S.credit_cost) - var/obj/machinery/shuttle_manipulator/M = locate() in machines - if(M) - SSshuttle.shuttle_purchased = TRUE - M.unload_preview() - M.load_template(S) - M.existing_shuttle = SSshuttle.emergency - M.action_load(S) - SSshuttle.points -= S.credit_cost - minor_announce("[usr.name] has purchased [S.name] for [S.credit_cost] credits." , "Shuttle Purchase") - message_admins("[key_name_admin(usr)] purchased [S.name].") - feedback_add_details("shuttle_manipulator", S.name) - else - usr << "Something went wrong! The shuttle exchange system seems to be down." - else - usr << "Not enough credits." - if("callshuttle") src.state = STATE_DEFAULT if(src.authenticated) @@ -201,6 +168,7 @@ var/const/CALL_SHUTTLE_REASON_LENGTH = 12 if("messagelist") src.currmsg = 0 src.state = STATE_MESSAGELIST + playsound(src, 'sound/machines/terminal_select.ogg', 50, 0) if("viewmessage") src.state = STATE_VIEWMESSAGE if (!src.currmsg) @@ -225,6 +193,7 @@ var/const/CALL_SHUTTLE_REASON_LENGTH = 12 src.state = STATE_VIEWMESSAGE if("status") src.state = STATE_STATUSDISPLAY + playsound(src, 'sound/machines/terminal_select.ogg', 50, 0) if("securitylevel") src.tmp_alertlevel = text2num( href_list["newalertlevel"] ) @@ -248,7 +217,7 @@ var/const/CALL_SHUTTLE_REASON_LENGTH = 12 // Status display stuff if("setstat") - playsound(src, "terminal_type", 50, 0) + playsound(src, 'sound/machines/terminal_select.ogg', 50, 0) switch(href_list["statdisp"]) if("message") post_status("message", stat_msg1, stat_msg2) @@ -258,9 +227,11 @@ var/const/CALL_SHUTTLE_REASON_LENGTH = 12 post_status(href_list["statdisp"]) if("setmsg1") + playsound(src, 'sound/machines/terminal_displaying.ogg', 50, 0) stat_msg1 = reject_bad_text(input("Line 1", "Enter Message Text", stat_msg1) as text|null, 40) src.updateDialog() if("setmsg2") + playsound(src, 'sound/machines/terminal_displaying.ogg', 50, 0) stat_msg2 = reject_bad_text(input("Line 2", "Enter Message Text", stat_msg2) as text|null, 40) src.updateDialog() @@ -269,13 +240,14 @@ var/const/CALL_SHUTTLE_REASON_LENGTH = 12 if(src.authenticated==2) if(CM.lastTimeUsed + 600 > world.time) usr << "Arrays recycling. Please stand by." + playsound(src, 'sound/machines/terminal_error.ogg', 50, 0) return var/input = stripped_input(usr, "Please choose a message to transmit to Centcom via quantum entanglement. Please be aware that this process is very expensive, and abuse will lead to... termination. Transmission does not guarantee a response.", "Send a message to Centcomm.", "") if(!input || !(usr in view(1,src))) return - playsound(src, 'sound/machines/terminal_prompt_confirm.ogg', 50, 0) + playsound(src, 'sound/machines/terminal_processing.ogg', 50, 0) Centcomm_announce(input, usr) - usr << "Message transmitted to Central Command." + usr << "Message transmitted." log_say("[key_name(usr)] has made a Centcom announcement: [input]") CM.lastTimeUsed = world.time @@ -285,12 +257,12 @@ var/const/CALL_SHUTTLE_REASON_LENGTH = 12 if((src.authenticated==2) && (src.emagged)) if(CM.lastTimeUsed + 600 > world.time) usr << "Arrays recycling. Please stand by." - playsound(src, 'sound/machines/terminal_prompt_deny.ogg', 50, 0) + playsound(src, 'sound/machines/terminal_error.ogg', 50, 0) return var/input = stripped_input(usr, "Please choose a message to transmit to \[ABNORMAL ROUTING COORDINATES\] via quantum entanglement. Please be aware that this process is very expensive, and abuse will lead to... termination. Transmission does not guarantee a response.", "Send a message to /??????/.", "") if(!input || !(usr in view(1,src))) return - playsound(src, 'sound/machines/terminal_prompt_confirm.ogg', 50, 0) + playsound(src, 'sound/machines/terminal_processing.ogg', 50, 0) Syndicate_announce(input, usr) usr << "SYSERR @l(19833)of(transmit.dm): !@$ MESSAGE TRANSMITTED TO SYNDICATE COMMAND." log_say("[key_name(usr)] has made a Syndicate announcement: [input]") @@ -298,7 +270,7 @@ var/const/CALL_SHUTTLE_REASON_LENGTH = 12 if("RestoreBackup") usr << "Backup routing data restored!" - playsound(src, 'sound/machines/terminal_prompt_confirm.ogg', 50, 0) + playsound(src, 'sound/machines/terminal_success.ogg', 50, 0) src.emagged = 0 src.updateDialog() @@ -306,14 +278,16 @@ var/const/CALL_SHUTTLE_REASON_LENGTH = 12 if(src.authenticated==2) if(CM.lastTimeUsed + 600 > world.time) usr << "Arrays recycling. Please stand by." + playsound(src, 'sound/machines/terminal_error.ogg', 50, 0) return var/input = stripped_input(usr, "Please enter the reason for requesting the nuclear self-destruct codes. Misuse of the nuclear request system will not be tolerated under any circumstances. Transmission does not guarantee a response.", "Self Destruct Code Request.","") if(!input || !(usr in view(1,src))) return Nuke_request(input, usr) usr << "Request sent." + playsound(src, 'sound/machines/terminal_processing.ogg', 50, 0) log_say("[key_name(usr)] has requested the nuclear codes from Centcomm") - priority_announce("The codes for the on-station nuclear self-destruct have been requested by [usr]. Confirmation or denial of this request will be sent shortly.", "Nuclear Self Destruct Codes Requested",'sound/AI/commandreport.ogg') + priority_announce("The codes for the on-station nuclear self-destruct have been requested by [auth_id]. Confirmation or denial of this request will be sent shortly.", "Nuclear Self Destruct Codes Requested",'sound/AI/commandreport.ogg') CM.lastTimeUsed = world.time @@ -351,7 +325,8 @@ var/const/CALL_SHUTTLE_REASON_LENGTH = 12 if("ai-status") src.aistate = STATE_STATUSDISPLAY if("ai-announce") - make_announcement(usr, 1) + if(!ai_message_cooldown) + make_announcement(usr, 1) if("ai-securitylevel") src.tmp_alertlevel = text2num( href_list["newalertlevel"] ) if(!tmp_alertlevel) tmp_alertlevel = 0 @@ -400,14 +375,15 @@ var/const/CALL_SHUTTLE_REASON_LENGTH = 12 src.emagged = 1 if(authenticated == 1) authenticated = 2 - user << "You scramble the communication routing circuits!" - playsound(src, 'sound/machines/terminal_alert.ogg', 50, 0) + user << "You scramble the communication routing circuits." + playsound(src, 'sound/machines/terminal_emagged.ogg', 50, 0) /obj/machinery/computer/communications/attack_hand(mob/user) if(..()) return if (src.z > 6) user << "Unable to establish a connection: \black You're too far away from the station!" + playsound(src, 'sound/machines/terminal_error.ogg', 50, 0) return user.set_machine(src) @@ -420,10 +396,13 @@ var/const/CALL_SHUTTLE_REASON_LENGTH = 12 var/datum/browser/popup = new(user, "communications", "Communications Console", 400, 500) popup.set_title_image(user.browse_rsc_icon(src.icon, src.icon_state)) - if(issilicon(user)) + if (istype(user, /mob/living/silicon)) var/dat2 = src.interact_ai(user) // give the AI a different interact proc to limit its access if(dat2) dat += dat2 + //user << browse(dat, "window=communications;size=400x500") + //onclose(user, "communications") + popup.set_content(dat) popup.open() return @@ -452,7 +431,6 @@ var/const/CALL_SHUTTLE_REASON_LENGTH = 12 dat += "
    \[ Make a Captain's Announcement \]" if(cross_allowed) dat += "
    \[ Send a message to an allied station \]" - dat += "
    \[ Purchase Shuttle \]" dat += "
    \[ Change Alert Level \]" dat += "
    \[ Emergency Maintenance Access \]" dat += "
    \[ Request Nuclear Authentication Codes \]" @@ -465,15 +443,15 @@ var/const/CALL_SHUTTLE_REASON_LENGTH = 12 dat += "
    \[ Log In \]" if(STATE_CALLSHUTTLE) dat += get_call_shuttle_form() - playsound(src, 'sound/machines/terminal_prompt.ogg', 50, 0) + playsound(src, 'sound/machines/terminal_select.ogg', 50, 0) if(STATE_CANCELSHUTTLE) dat += get_cancel_shuttle_form() - playsound(src, 'sound/machines/terminal_prompt.ogg', 50, 0) + playsound(src, 'sound/machines/terminal_select.ogg', 50, 0) if(STATE_MESSAGELIST) dat += "Messages:" for(var/i = 1; i<=src.messagetitle.len; i++) dat += "
    [src.messagetitle[i]]" - playsound(src, 'sound/machines/terminal_prompt_confirm.ogg', 50, 0) + playsound(src, 'sound/machines/terminal_select.ogg', 50, 0) if(STATE_VIEWMESSAGE) if (src.currmsg) dat += "[src.messagetitle[src.currmsg]]

    [src.messagetext[src.currmsg]]" @@ -501,7 +479,8 @@ var/const/CALL_SHUTTLE_REASON_LENGTH = 12 dat += " Red Alert |" dat += " Lockdown |" dat += " Biohazard \]

    " - playsound(src, 'sound/machines/terminal_prompt_confirm.ogg', 50, 0) + playsound(src, 'sound/machines/terminal_select.ogg', 50, 0) + if(STATE_ALERT_LEVEL) dat += "Current alert level: [get_security_level()]
    " if(security_level == SEC_LEVEL_DELTA) @@ -514,7 +493,7 @@ var/const/CALL_SHUTTLE_REASON_LENGTH = 12 dat += "Confirm the change to: [num2seclevel(tmp_alertlevel)]
    " dat += "Swipe ID to confirm change.
    " if(STATE_TOGGLE_EMERGENCY) - playsound(src, 'sound/machines/terminal_prompt.ogg', 50, 0) + playsound(src, 'sound/machines/terminal_select.ogg', 50, 0) if(emergency_access == 1) dat += "Emergency Maintenance Access is currently ENABLED" dat += "
    Restore maintenance access restrictions?
    \[ OK | Cancel \]" @@ -522,21 +501,9 @@ var/const/CALL_SHUTTLE_REASON_LENGTH = 12 dat += "Emergency Maintenance Access is currently DISABLED" dat += "
    Lift access restrictions on maintenance and external airlocks?
    \[ OK | Cancel \]" - if(STATE_PURCHASE) - dat += "Budget: [SSshuttle.points] Credits.
    " - for(var/shuttle_id in shuttle_templates) - var/datum/map_template/shuttle/S = shuttle_templates[shuttle_id] - if(S.can_be_bought && S.credit_cost < INFINITY) - dat += "[S.name] | [S.credit_cost] Credits
    " - dat += "[S.description]
    " - if(S.prerequisites) - dat += "Prerequisites: [S.prerequisites]
    " - dat += "(Purchase)

    " - dat += "

    \[ [(src.state != STATE_DEFAULT) ? "Main Menu | " : ""]Close \]" - - popup.set_content(dat) - popup.open() + //user << browse(dat, "window=communications;size=400x500") + //onclose(user, "communications") popup.set_content(dat) popup.open() @@ -652,22 +619,19 @@ var/const/CALL_SHUTTLE_REASON_LENGTH = 12 return dat /obj/machinery/computer/communications/proc/make_announcement(mob/living/user, is_silicon) - if((is_silicon && ai_message_cooldown > world.time) || (!is_silicon && message_cooldown > world.time)) - user << "Intercomms recharging. Please stand by." - return var/input = stripped_input(user, "Please choose a message to announce to the station crew.", "What?") if(!input || !user.canUseTopic(src)) return if(is_silicon) - if(ai_message_cooldown > world.time) - return minor_announce(input,"[user.name] Announces:") - ai_message_cooldown = world.time + COMMUNICATION_COOLDOWN_AI + ai_message_cooldown = 1 + spawn(600)//One minute cooldown + ai_message_cooldown = 0 else - if(message_cooldown > world.time) - return priority_announce(html_decode(input), null, 'sound/misc/announce.ogg', "Captain") - message_cooldown = world.time + COMMUNICATION_COOLDOWN + message_cooldown = 1 + spawn(600)//One minute cooldown + message_cooldown = 0 log_say("[key_name(user)] has made a priority announcement: [input]") message_admins("[key_name_admin(user)] has made a priority announcement.") diff --git a/code/game/machinery/computer/computer.dm b/code/game/machinery/computer/computer.dm index 783c446a6b..fd207eedbd 100644 --- a/code/game/machinery/computer/computer.dm +++ b/code/game/machinery/computer/computer.dm @@ -7,35 +7,27 @@ use_power = 1 idle_power_usage = 300 active_power_usage = 300 - obj_integrity = 200 - max_integrity = 200 - integrity_failure = 100 - armor = list(melee = 0, bullet = 0, laser = 0, energy = 0, bomb = 0, bio = 0, rad = 0, fire = 40, acid = 20) var/obj/item/weapon/circuitboard/computer/circuit = null // if circuit==null, computer can't disassembly var/processing = 0 var/brightness_on = 2 var/icon_keyboard = "generic_key" var/icon_screen = "generic" + var/computer_health = 25 var/clockwork = FALSE + use_auto_lights = 1 + light_power_on = 1 + light_range_on = 3 + /obj/machinery/computer/New(location, obj/item/weapon/circuitboard/C) ..(location) if(C && istype(C)) circuit = C - //Some machines, oldcode arcades mostly, new themselves, so circuit - //can already be an instance of a type and trying to new that will - //cause a runtime - else if(ispath(circuit)) + else if(circuit) circuit = new circuit(null) power_change() update_icon() -/obj/machinery/computer/Destroy() - if(circuit) - qdel(circuit) - circuit = null - return ..() - /obj/machinery/computer/initialize() power_change() @@ -44,8 +36,30 @@ return 0 return 1 +/obj/machinery/computer/emp_act(severity) + if(severity == 1) + take_damage(rand(15,30), BRUTE, 0) + else + take_damage(rand(15,25), BRUTE, 0) + ..() + +/obj/machinery/computer/ex_act(severity, target) + if(target == src) + qdel(src) + return + switch(severity) + if(1) + qdel(src) + if(2) + if(prob(25)) + qdel(src) + else + take_damage(rand(20,30), BRUTE, 0) + if(3) + take_damage(rand(10,30), BRUTE, 0) + /obj/machinery/computer/ratvar_act() - if(!clockwork) + if(!clockwork && prob(20)) clockwork = TRUE icon_screen = "ratvar[rand(1, 4)]" icon_keyboard = "ratvar_key[rand(1, 6)]" @@ -60,6 +74,10 @@ icon_state = initial(icon_state) update_icon() +/obj/machinery/computer/bullet_act(obj/item/projectile/P) + take_damage(P.damage, P.damage_type, 0) + ..() + /obj/machinery/computer/update_icon() cut_overlays() if(stat & NOPOWER) @@ -68,15 +86,13 @@ add_overlay(icon_keyboard) if(stat & BROKEN) add_overlay("[icon_state]_broken") + set_light(l_color = LIGHT_COLOR_BLUE) else add_overlay(icon_screen) + set_light(l_color = initial(light_color)) /obj/machinery/computer/power_change() ..() - if(stat & NOPOWER) - SetLuminosity(0) - else - SetLuminosity(brightness_on) update_icon() return @@ -84,61 +100,44 @@ if(istype(I, /obj/item/weapon/screwdriver) && circuit && !(flags&NODECONSTRUCT)) playsound(src.loc, I.usesound, 50, 1) user << " You start to disconnect the monitor..." - if(do_after(user, 20*I.toolspeed, target = src)) - deconstruct(TRUE, user) - else - return ..() - -/obj/machinery/computer/play_attack_sound(damage_amount, damage_type = BRUTE, damage_flag = 0) - switch(damage_type) - if(BRUTE) - if(stat & BROKEN) - playsound(src.loc, 'sound/effects/hit_on_shattered_glass.ogg', 70, 1) - else - playsound(src.loc, 'sound/effects/Glasshit.ogg', 75, 1) - if(BURN) - playsound(src.loc, 'sound/items/Welder.ogg', 100, 1) - -/obj/machinery/computer/obj_break(damage_flag) - if(circuit && !(flags & NODECONSTRUCT)) //no circuit, no breaking - if(!(stat & BROKEN)) - playsound(loc, 'sound/effects/Glassbr3.ogg', 100, 1) - stat |= BROKEN - update_icon() - -/obj/machinery/computer/emp_act(severity) - switch(severity) - if(1) - if(prob(50)) - obj_break("energy") - if(2) - if(prob(10)) - obj_break("energy") - ..() - -/obj/machinery/computer/deconstruct(disassembled = TRUE, mob/user) - on_deconstruction() - if(!(flags & NODECONSTRUCT)) - if(circuit) //no circuit, no computer frame + if(do_after(user, 20/I.toolspeed, target = src)) + deconstruction() var/obj/structure/frame/computer/A = new /obj/structure/frame/computer(src.loc) A.circuit = circuit A.anchored = 1 - if(stat & BROKEN) - if(user) - user << "The broken glass falls out." - else - playsound(src.loc, 'sound/effects/hit_on_shattered_glass.ogg', 70, 1) + circuit = null + for (var/obj/C in src) + C.loc = src.loc + if (stat & BROKEN) + user << "The broken glass falls out." new /obj/item/weapon/shard(src.loc) new /obj/item/weapon/shard(src.loc) A.state = 3 A.icon_state = "3" else - if(user) - user << "You disconnect the monitor." + user << "You disconnect the monitor." A.state = 4 A.icon_state = "4" - circuit = null - for(var/obj/C in src) - C.forceMove(loc) + qdel(src) + else + return ..() - qdel(src) +/obj/machinery/computer/take_damage(damage, damage_type = BRUTE, sound_effect = 1) + switch(damage_type) + if(BRUTE) + if(sound_effect) + if(stat & BROKEN) + playsound(src.loc, 'sound/effects/hit_on_shattered_glass.ogg', 70, 1) + else + playsound(src.loc, 'sound/effects/Glasshit.ogg', 75, 1) + if(BURN) + if(sound_effect) + playsound(src.loc, 'sound/items/Welder.ogg', 100, 1) + else + return + computer_health = max(computer_health - damage, 0) + if(circuit) //no circuit, no breaking + if(!computer_health && !(stat & BROKEN)) + playsound(loc, 'sound/effects/Glassbr3.ogg', 100, 1) + stat |= BROKEN + update_icon() diff --git a/code/game/machinery/computer/crew.dm b/code/game/machinery/computer/crew.dm index e69d370bfc..4f2cdc2d44 100644 --- a/code/game/machinery/computer/crew.dm +++ b/code/game/machinery/computer/crew.dm @@ -7,11 +7,7 @@ idle_power_usage = 250 active_power_usage = 500 circuit = /obj/item/weapon/circuitboard/computer/crew - var/monitor = null //For VV debugging purposes - -/obj/machinery/computer/crew/New() - monitor = crewmonitor - return ..() + light_color = LIGHT_COLOR_BLUE /obj/machinery/computer/crew/attack_ai(mob/user) if(stat & (BROKEN|NOPOWER)) @@ -108,7 +104,6 @@ var/global/datum/crewmonitor/crewmonitor = new src.update(z, TRUE) else hi = src.interfaces["[z]"] - src.update(z,TRUE) // Debugging purposes mob << browse_rsc(file("code/game/machinery/computer/crew.js"), "crew.js") @@ -210,12 +205,9 @@ var/global/datum/crewmonitor/crewmonitor = new for (z in src.interfaces) if (src.interfaces[z] == hi) break - if(hclient.client.mob && IsAdminGhost(hclient.client.mob)) - return TRUE - if (hclient.client.mob && hclient.client.mob.stat == 0 && hclient.client.mob.z == text2num(z)) if (isAI(hclient.client.mob)) return TRUE - else if (iscyborg(hclient.client.mob)) + else if (isrobot(hclient.client.mob)) return (locate(/obj/machinery/computer/crew, range(world.view, hclient.client.mob))) || (locate(/obj/item/device/sensor_device, hclient.client.mob.contents)) else return (locate(/obj/machinery/computer/crew, range(1, hclient.client.mob))) || (locate(/obj/item/device/sensor_device, hclient.client.mob.contents)) @@ -260,7 +252,7 @@ var/global/datum/crewmonitor/crewmonitor = new return ..() /datum/crewmonitor/proc/queueUpdate(z) - addtimer(crewmonitor, "update", 5, TIMER_UNIQUE, z) + addtimer(crewmonitor, "update", 5, TRUE, z) /datum/crewmonitor/proc/sendResources(var/client/client) send_asset(client, "crewmonitor.js") diff --git a/code/game/machinery/computer/dna_console.dm b/code/game/machinery/computer/dna_console.dm index a4dee33e60..a50562a595 100644 --- a/code/game/machinery/computer/dna_console.dm +++ b/code/game/machinery/computer/dna_console.dm @@ -37,6 +37,7 @@ use_power = 1 idle_power_usage = 10 active_power_usage = 400 + light_color = LIGHT_COLOR_BLUE /obj/machinery/computer/scan_consolenew/attackby(obj/item/I, mob/user, params) if (istype(I, /obj/item/weapon/disk/data)) //INSERT SOME DISKETTES @@ -46,6 +47,7 @@ I.loc = src src.diskette = I user << "You insert [I]." + playsound(src, 'sound/machines/terminal_insert_disc.ogg', 50, 0) src.updateUsrDialog() return else @@ -72,7 +74,7 @@ /obj/machinery/computer/scan_consolenew/proc/ShowInterface(mob/user, last_change) if(!user) return var/datum/browser/popup = new(user, "scannernew", "DNA Modifier Console", 800, 630) // Set up the popup browser window - if(!(in_range(src, user) || issilicon(user))) + if(!( in_range(src, user) || istype(user, /mob/living/silicon) )) popup.close() return popup.add_stylesheet("scannernew", 'html/browser/scannernew.css') @@ -316,7 +318,7 @@ return if(!isturf(usr.loc)) return - if(!((isturf(loc) && in_range(src, usr)) || issilicon(usr))) + if(!( (isturf(loc) && in_range(src, usr)) || istype(usr, /mob/living/silicon) )) return if(current_screen == "working") return @@ -339,11 +341,13 @@ if("setduration") if(!num) num = round(input(usr, "Choose pulse duration:", "Input an Integer", null) as num|null) + playsound(src, 'sound/machines/terminal_displaying.ogg', 50, 0) if(num) radduration = Wrap(num, 1, RADIATION_DURATION_MAX+1) if("setstrength") if(!num) num = round(input(usr, "Choose pulse strength:", "Input an Integer", null) as num|null) + playsound(src, 'sound/machines/terminal_displaying.ogg', 50, 0) if(num) radstrength = Wrap(num, 1, RADIATION_STRENGTH_MAX+1) if("screen") @@ -353,8 +357,10 @@ var/potassiodide_amount = viable_occupant.reagents.get_reagent_amount("potass_iodide") var/can_add = max(min(REJUVENATORS_MAX - potassiodide_amount, REJUVENATORS_INJECT), 0) viable_occupant.reagents.add_reagent("potass_iodide", can_add) + playsound(src, 'sound/machines/terminal_select.ogg', 50, 0) if("setbufferlabel") var/text = sanitize(input(usr, "Input a new label:", "Input an Text", null) as text|null) + playsound(src, 'sound/machines/terminal_displaying.ogg', 50, 0) if(num && text) num = Clamp(num, 1, NUMBER_OF_BUFFERS) var/list/buffer_slot = buffer[num] @@ -362,6 +368,7 @@ buffer_slot["label"] = text if("setbuffer") if(num && viable_occupant) + playsound(src, 'sound/machines/terminal_select.ogg', 50, 0) num = Clamp(num, 1, NUMBER_OF_BUFFERS) buffer[num] = list( "label"="Buffer[num]:[viable_occupant.real_name]", @@ -373,12 +380,14 @@ ) if("clearbuffer") if(num) + playsound(src, 'sound/machines/terminal_select.ogg', 50, 0) num = Clamp(num, 1, NUMBER_OF_BUFFERS) var/list/buffer_slot = buffer[num] if(istype(buffer_slot)) buffer_slot.Cut() if("transferbuffer") if(num && viable_occupant) + playsound(src, 'sound/machines/terminal_select.ogg', 50, 0) switch(href_list["text"]) //Numbers are this high because other way upgrading laser is just not worth the hassle, and i cant think of anything better to inmrove if("se") apply_buffer(SCANNER_ACTION_SE,num) @@ -442,10 +451,12 @@ injectorready = 1 if("loaddisk") if(num && diskette && diskette.fields) + playsound(src, 'sound/machines/terminal_select.ogg', 50, 0) num = Clamp(num, 1, NUMBER_OF_BUFFERS) buffer[num] = diskette.fields.Copy() if("savedisk") if(num && diskette && !diskette.read_only) + playsound(src, 'sound/machines/terminal_select.ogg', 50, 0) num = Clamp(num, 1, NUMBER_OF_BUFFERS) var/list/buffer_slot = buffer[num] if(istype(buffer_slot)) @@ -453,6 +464,7 @@ diskette.fields = buffer_slot.Copy() if("ejectdisk") if(diskette) + playsound(src, 'sound/machines/terminal_insert_disc.ogg', 50, 0) diskette.loc = get_turf(src) diskette = null if("setdelayed") @@ -460,6 +472,7 @@ delayed_action = list("action"=text2num(href_list["delayaction"]),"buffer"=num) if("pulseui","pulsese") if(num && viable_occupant && connected) + playsound(src, 'sound/machines/terminal_select.ogg', 50, 0) radduration = Wrap(radduration, 1, RADIATION_DURATION_MAX+1) radstrength = Wrap(radstrength, 1, RADIATION_STRENGTH_MAX+1) diff --git a/code/game/machinery/computer/gulag_teleporter.dm b/code/game/machinery/computer/gulag_teleporter.dm index 0735ad0b8e..a473eef369 100644 --- a/code/game/machinery/computer/gulag_teleporter.dm +++ b/code/game/machinery/computer/gulag_teleporter.dm @@ -4,7 +4,7 @@ desc = "Used to send criminals to the Labor Camp" icon_screen = "explosive" icon_keyboard = "security_key" - req_access = list(access_armory) + req_access = list(access_security) circuit = /obj/item/weapon/circuitboard/computer/gulag_teleporter_console var/default_goal = 200 var/obj/item/weapon/card/id/prisoner/id = null @@ -12,6 +12,7 @@ var/obj/structure/gulag_beacon/beacon = null var/mob/living/carbon/human/prisoner = null var/datum/data/record/temporary_record = null + light_color = LIGHT_COLOR_RED /obj/machinery/computer/gulag_teleporter_computer/New() ..() @@ -30,6 +31,7 @@ W.forceMove(src) id = W user << "You insert [W]." + playsound(src, 'sound/machines/terminal_insert_disc.ogg', 50, 0) return else user << "There's an ID inserted already." @@ -82,23 +84,26 @@ if(..()) return if(!allowed(usr)) + playsound(src, 'sound/machines/terminal_error.ogg', 50, 0) usr << "Access denied." return switch(action) if("scan_teleporter") teleporter = findteleporter() + playsound(src, 'sound/machines/terminal_select.ogg', 50, 0) if("scan_beacon") beacon = findbeacon() + playsound(src, 'sound/machines/terminal_select.ogg', 50, 0) if("handle_id") if(id) - if(!usr.get_active_held_item()) + if(!usr.get_active_hand()) usr.put_in_hands(id) id = null else id.forceMove(get_turf(src)) id = null else - var/obj/item/I = usr.get_active_held_item() + var/obj/item/I = usr.get_active_hand() if(istype(I, /obj/item/weapon/card/id/prisoner)) if(!usr.drop_item()) return @@ -106,6 +111,7 @@ id = I if("set_goal") var/new_goal = input("Set the amount of points:", "Points", id.goal) as num|null + playsound(src, 'sound/machines/terminal_displaying.ogg', 50, 0) if(!isnum(new_goal)) return if(!new_goal) @@ -113,18 +119,23 @@ id.goal = Clamp(new_goal, 0, 1000) //maximum 1000 points if("toggle_open") if(teleporter.locked) + playsound(src, 'sound/machines/terminal_error.ogg', 50, 0) usr << "The teleporter is locked" return + playsound(src, 'sound/machines/terminal_select.ogg', 50, 0) teleporter.toggle_open() if("teleporter_lock") if(teleporter.state_open) usr << "Close the teleporter before locking!" + playsound(src, 'sound/machines/terminal_error.ogg', 50, 0) return teleporter.locked = !teleporter.locked + playsound(src, 'sound/machines/terminal_select.ogg', 50, 0) if("teleport") if(!teleporter || !beacon) return - addtimer(src, "teleport", 5, TIMER_NORMAL, usr) + addtimer(src, "teleport", 5, FALSE, usr) + playsound(src, 'sound/machines/terminal_processing.ogg', 50, 0) /obj/machinery/computer/gulag_teleporter_computer/proc/scan_machinery() teleporter = findteleporter() @@ -155,10 +166,3 @@ teleporter.toggle_open() id = null temporary_record = null - - - - - - - diff --git a/code/game/machinery/computer/law.dm b/code/game/machinery/computer/law.dm index 7ff5491ebe..f2f37340cd 100644 --- a/code/game/machinery/computer/law.dm +++ b/code/game/machinery/computer/law.dm @@ -1,4 +1,4 @@ - +//This file was auto-corrected by findeclaration.exe on 25.5.2012 20:42:31 /obj/machinery/computer/upload var/mob/living/silicon/current = null //The target of future law uploads @@ -11,17 +11,21 @@ return if(!current) user << "You haven't selected anything to transmit laws to!" + playsound(src, 'sound/machines/terminal_error.ogg', 50, 0) return if(!can_upload_to(current)) user << "Upload failed! Check to make sure [current.name] is functioning properly." + playsound(src, 'sound/machines/terminal_error.ogg', 50, 0) current = null return var/turf/currentloc = get_turf(current) if(currentloc && user.z != currentloc.z) user << "Upload failed! Unable to establish a connection to [current.name]. You're too far away!" + playsound(src, 'sound/machines/terminal_error.ogg', 50, 0) current = null return M.install(current.laws, user) + playsound(src, 'sound/machines/terminal_processing.ogg', 50, 0) else return ..() @@ -43,8 +47,10 @@ if (!src.current) user << "No active AIs detected!" + playsound(src, 'sound/machines/terminal_error.ogg', 50, 0) else user << "[src.current.name] selected for law changes." + playsound(src, 'sound/machines/terminal_select.ogg', 50, 0) /obj/machinery/computer/upload/ai/can_upload_to(mob/living/silicon/ai/A) if(!A || !isAI(A)) @@ -67,12 +73,14 @@ if(!src.current) user << "No active unslaved cyborgs detected!" + playsound(src, 'sound/machines/terminal_error.ogg', 50, 0) else user << "[src.current.name] selected for law changes." + playsound(src, 'sound/machines/terminal_select.ogg', 50, 0) /obj/machinery/computer/upload/borg/can_upload_to(mob/living/silicon/robot/B) - if(!B || !iscyborg(B)) + if(!B || !isrobot(B)) return 0 if(B.scrambledcodes || B.emagged) return 0 - return ..() \ No newline at end of file + return ..() diff --git a/code/game/machinery/computer/medical.dm b/code/game/machinery/computer/medical.dm index da3df8b2cf..a94093934a 100644 --- a/code/game/machinery/computer/medical.dm +++ b/code/game/machinery/computer/medical.dm @@ -1,4 +1,4 @@ - +//This file was auto-corrected by findeclaration.exe on 25.5.2012 20:42:31 /obj/machinery/computer/med_data//TODO:SANITY name = "medical records console" @@ -19,6 +19,7 @@ //Sorting Variables var/sortBy = "name" var/order = 1 // -1 = Descending - 1 = Ascending + light_color = LIGHT_COLOR_BLUE /obj/machinery/computer/med_data/attackby(obj/item/O, mob/user, params) if(istype(O, /obj/item/weapon/card/id) && !scan) @@ -27,6 +28,7 @@ O.loc = src scan = O user << "You insert [O]." + playsound(src, 'sound/machines/terminal_insert_disc.ogg', 50, 0) else return ..() @@ -189,6 +191,8 @@ else else dat += text("{Log In}", src) + //user << browse(text("Medical Records[]", dat), "window=med_rec") + //onclose(user, "med_rec") var/datum/browser/popup = new(user, "med_rec", "Medical Records Console", 600, 400) popup.set_content(dat) popup.set_title_image(user.browse_rsc_icon(src.icon, src.icon_state)) @@ -204,19 +208,19 @@ if(!(active2 in data_core.medical)) src.active2 = null - if(usr.contents.Find(src) || (in_range(src, usr) && isturf(loc)) || issilicon(usr) || IsAdminGhost(usr)) + if((usr.contents.Find(src) || (in_range(src, usr) && istype(src.loc, /turf))) || (istype(usr, /mob/living/silicon)) || IsAdminGhost(usr)) usr.set_machine(src) if(href_list["temp"]) src.temp = null if(href_list["scan"]) if(src.scan) - if(ishuman(usr) && !usr.get_active_held_item()) + if(istype(usr,/mob/living/carbon/human) && !usr.get_active_hand()) usr.put_in_hands(scan) else scan.loc = get_turf(src) src.scan = null else - var/obj/item/I = usr.get_active_held_item() + var/obj/item/I = usr.get_active_hand() if(istype(I, /obj/item/weapon/card/id)) if(!usr.drop_item()) return @@ -227,6 +231,7 @@ src.screen = null src.active1 = null src.active2 = null + playsound(src, 'sound/machines/terminal_select.ogg', 50, 0) else if(href_list["choice"]) // SORTING! if(href_list["choice"] == "Sorting") @@ -241,12 +246,13 @@ sortBy = href_list["sort"] order = initial(order) else if(href_list["login"]) - if(issilicon(usr)) + if(istype(usr, /mob/living/silicon)) src.active1 = null src.active2 = null src.authenticated = 1 src.rank = "AI" src.screen = 1 + playsound(src, 'sound/machines/terminal_select.ogg', 50, 0) else if(IsAdminGhost(usr)) src.active1 = null src.active2 = null @@ -260,6 +266,7 @@ src.authenticated = src.scan.registered_name src.rank = src.scan.assignment src.screen = 1 + playsound(src, 'sound/machines/terminal_select.ogg', 50, 0) if(src.authenticated) if(href_list["screen"]) @@ -500,7 +507,7 @@ var/counter = 1 while(src.active2.fields[text("com_[]", counter)]) counter++ - src.active2.fields[text("com_[]", counter)] = text("Made by [] ([]) on [] [], []
    []", src.authenticated, src.rank, worldtime2text(), time2text(world.realtime, "MMM DD"), year_integer+540, t1) + src.active2.fields[text("com_[]", counter)] = text("Made by [] ([]) on [] [], []
    []", src.authenticated, src.rank, worldtime2text(), time2text(world.realtime, "MMM DD"), year_integer+540, t1,) else if(href_list["del_c"]) if((istype(src.active2, /datum/data/record) && src.active2.fields[text("com_[]", href_list["del_c"])])) diff --git a/code/game/machinery/computer/message.dm b/code/game/machinery/computer/message.dm index 163ca54e01..791f8606f4 100644 --- a/code/game/machinery/computer/message.dm +++ b/code/game/machinery/computer/message.dm @@ -17,7 +17,7 @@ var/noserver = "ALERT: No server detected." var/incorrectkey = "ALERT: Incorrect decryption key!" var/defaultmsg = "Welcome. Please select an option." - var/rebootmsg = "%$&(£: Critical %$$@ Error // !RestArting! - ?pLeaSe wAit!" + var/rebootmsg = "%$&(�: Critical %$$@ Error // !RestArting! - ?pLeaSe wAit!" //Computer properties var/screen = 0 // 0 = Main menu, 1 = Message Logs, 2 = Hacked screen, 3 = Custom Message var/hacking = 0 // Is it being hacked into by the AI/Cyborg @@ -29,6 +29,7 @@ var/obj/item/device/pda/customrecepient = null var/customjob = "Admin" var/custommessage = "This is a test, please ignore." + light_color = LIGHT_COLOR_GREEN /obj/machinery/computer/message_monitor/attackby(obj/item/weapon/O, mob/living/user, params) if(istype(O, /obj/item/weapon/screwdriver) && emagged) @@ -40,6 +41,7 @@ /obj/machinery/computer/message_monitor/emag_act(mob/user) if(!emagged) if(!isnull(src.linkedServer)) + playsound(src, 'sound/machines/terminal_emagged.ogg', 50, 0) emagged = 1 screen = 2 spark_system.set_up(5, 0, src) @@ -47,12 +49,13 @@ var/obj/item/weapon/paper/monitorkey/MK = new/obj/item/weapon/paper/monitorkey MK.loc = src.loc // Will help make emagging the console not so easy to get away with. - MK.info += "

    £%@%(*$%&(£&?*(%&£/{}" + MK.info += "

    �%@%(*$%&(�&?*(%&�/{}" var/time = 100 * length(src.linkedServer.decryptkey) addtimer(src, "UnmagConsole", time) message = rebootmsg else - user << "A no server error appears on the screen." + user << "A 'no server' error appears on the screen." + playsound(src, 'sound/machines/terminal_error.ogg', 50, 0) /obj/machinery/computer/message_monitor/initialize() //Is the server isn't linked to a server, and there's a server available, default it to the first one in the list. @@ -131,7 +134,7 @@ dat += "" //Hacking screen. if(2) - if(isAI(user) || iscyborg(user)) + if(istype(user, /mob/living/silicon/ai) || istype(user, /mob/living/silicon/robot)) dat += "Brute-forcing for server key.
    It will take 20 seconds for every character that the password has." dat += "In the meantime, this console can reveal your true intentions if you let someone access it. Make sure no humans enter the room during that time." else @@ -217,6 +220,8 @@ dat += "" message = defaultmsg + //user << browse(dat, "window=message;size=700x700") + //onclose(user, "message") var/datum/browser/popup = new(user, "hologram_console", name, 700, 700) popup.set_content(dat) popup.set_title_image(user.browse_rsc_icon(src.icon, src.icon_state)) @@ -245,80 +250,103 @@ if(..()) return - if(usr.contents.Find(src) || (in_range(src, usr) && isturf(loc)) || issilicon(usr)) + if ((usr.contents.Find(src) || (in_range(src, usr) && istype(src.loc, /turf))) || (istype(usr, /mob/living/silicon))) //Authenticate if (href_list["auth"]) if(!linkedServer || linkedServer.stat & (NOPOWER|BROKEN)) message = noserver + playsound(src, 'sound/machines/terminal_error.ogg', 50, 0) else if(auth) auth = 0 screen = 0 else var/dkey = trim(input(usr, "Please enter the decryption key.") as text|null) + playsound(src, 'sound/machines/terminal_displaying.ogg', 50, 0) if(dkey && dkey != "") if(src.linkedServer.decryptkey == dkey) auth = 1 + playsound(src, 'sound/machines/terminal_success.ogg', 50, 0) else message = incorrectkey + playsound(src, 'sound/machines/terminal_error.ogg', 50, 0) //Turn the server on/off. if (href_list["active"]) if(auth) linkedServer.active = !linkedServer.active + playsound(src, 'sound/machines/terminal_select.ogg', 50, 0) + //Find a server if (href_list["find"]) if(message_servers && message_servers.len > 1) src.linkedServer = input(usr,"Please select a server.", "Select a server.", null) as null|anything in message_servers message = "NOTICE: Server selected." + playsound(src, 'sound/machines/terminal_select.ogg', 50, 0) else if(message_servers && message_servers.len > 0) linkedServer = message_servers[1] message = "NOTICE: Only Single Server Detected - Server selected." + playsound(src, 'sound/machines/terminal_select.ogg', 50, 0) else message = noserver + playsound(src, 'sound/machines/terminal_error.ogg', 50, 0) //View the logs - KEY REQUIRED if (href_list["view"]) if(src.linkedServer == null || (src.linkedServer.stat & (NOPOWER|BROKEN))) message = noserver + playsound(src, 'sound/machines/terminal_error.ogg', 50, 0) else if(auth) src.screen = 1 + playsound(src, 'sound/machines/terminal_select.ogg', 50, 0) //Clears the logs - KEY REQUIRED if (href_list["clear"]) if(!linkedServer || (src.linkedServer.stat & (NOPOWER|BROKEN))) message = noserver + playsound(src, 'sound/machines/terminal_error.ogg', 50, 0) else if(auth) src.linkedServer.pda_msgs = list() message = "NOTICE: Logs cleared." + playsound(src, 'sound/machines/terminal_success.ogg', 50, 0) + //Clears the request console logs - KEY REQUIRED if (href_list["clearr"]) if(!linkedServer || (src.linkedServer.stat & (NOPOWER|BROKEN))) message = noserver + playsound(src, 'sound/machines/terminal_error.ogg', 50, 0) else if(auth) src.linkedServer.rc_msgs = list() message = "NOTICE: Logs cleared." + playsound(src, 'sound/machines/terminal_success.ogg', 50, 0) //Change the password - KEY REQUIRED if (href_list["pass"]) if(!linkedServer || (src.linkedServer.stat & (NOPOWER|BROKEN))) message = noserver + playsound(src, 'sound/machines/terminal_error.ogg', 50, 0) else if(auth) var/dkey = trim(input(usr, "Please enter the decryption key.") as text|null) + playsound(src, 'sound/machines/terminal_displaying.ogg', 50, 0) if(dkey && dkey != "") if(src.linkedServer.decryptkey == dkey) var/newkey = trim(input(usr,"Please enter the new key (3 - 16 characters max):")) + playsound(src, 'sound/machines/terminal_displaying.ogg', 50, 0) if(length(newkey) <= 3) message = "NOTICE: Decryption key too short!" + playsound(src, 'sound/machines/terminal_error.ogg', 50, 0) else if(length(newkey) > 16) message = "NOTICE: Decryption key too long!" + playsound(src, 'sound/machines/terminal_error.ogg', 50, 0) else if(newkey && newkey != "") src.linkedServer.decryptkey = newkey message = "NOTICE: Decryption key set." + playsound(src, 'sound/machines/terminal_success.ogg', 50, 0) else message = incorrectkey + playsound(src, 'sound/machines/terminal_error.ogg', 50, 0) //Hack the Console to get the password if (href_list["hack"]) @@ -329,46 +357,56 @@ spawn(100*length(src.linkedServer.decryptkey)) if(src && src.linkedServer && usr) BruteForce(usr) + playsound(src, 'sound/machines/terminal_processing.ogg', 50, 0) //Delete the log. if (href_list["delete"]) //Are they on the view logs screen? if(screen == 1) if(!linkedServer || (src.linkedServer.stat & (NOPOWER|BROKEN))) message = noserver + playsound(src, 'sound/machines/terminal_error.ogg', 50, 0) else //if(istype(href_list["delete"], /datum/data_pda_msg)) src.linkedServer.pda_msgs -= locate(href_list["delete"]) message = "NOTICE: Log Deleted!" + playsound(src, 'sound/machines/terminal_success.ogg', 50, 0) //Delete the request console log. if (href_list["deleter"]) //Are they on the view logs screen? if(screen == 4) if(!linkedServer || (src.linkedServer.stat & (NOPOWER|BROKEN))) message = noserver + playsound(src, 'sound/machines/terminal_error.ogg', 50, 0) else //if(istype(href_list["delete"], /datum/data_pda_msg)) src.linkedServer.rc_msgs -= locate(href_list["deleter"]) message = "NOTICE: Log Deleted!" + playsound(src, 'sound/machines/terminal_success.ogg', 50, 0) //Create a custom message if (href_list["msg"]) if(src.linkedServer == null || (src.linkedServer.stat & (NOPOWER|BROKEN))) message = noserver + playsound(src, 'sound/machines/terminal_error.ogg', 50, 0) else if(auth) src.screen = 3 + playsound(src, 'sound/machines/terminal_select.ogg', 50, 0) //Fake messaging selection - KEY REQUIRED if (href_list["select"]) if(src.linkedServer == null || (src.linkedServer.stat & (NOPOWER|BROKEN))) message = noserver screen = 0 + playsound(src, 'sound/machines/terminal_error.ogg', 50, 0) else switch(href_list["select"]) //Reset if("Reset") ResetMessage() + playsound(src, 'sound/machines/terminal_select.ogg', 50, 0) //Select Your Name if("Sender") customsender = stripped_input(usr, "Please enter the sender's name.") + playsound(src, 'sound/machines/terminal_displaying.ogg', 50, 0) //Select Receiver if("Recepient") @@ -376,16 +414,20 @@ var/list/obj/item/device/pda/sendPDAs = get_viewable_pdas() if(PDAs && PDAs.len > 0) customrecepient = input(usr, "Select a PDA from the list.") as null|anything in sortNames(sendPDAs) + playsound(src, 'sound/machines/terminal_displaying.ogg', 50, 0) else customrecepient = null + playsound(src, 'sound/machines/terminal_error.ogg', 50, 0) //Enter custom job if("RecJob") customjob = stripped_input(usr, "Please enter the sender's job.") + playsound(src, 'sound/machines/terminal_displaying.ogg', 50, 0) //Enter message if("Message") custommessage = stripped_input(usr, "Please enter your message.") + playsound(src, 'sound/machines/terminal_displaying.ogg', 50, 0) //Send message if("Send") @@ -396,10 +438,12 @@ if(isnull(customrecepient)) message = "NOTICE: No recepient selected!" return src.attack_hand(usr) + playsound(src, 'sound/machines/terminal_error.ogg', 50, 0) if(isnull(custommessage) || custommessage == "") message = "NOTICE: No message entered!" return src.attack_hand(usr) + playsound(src, 'sound/machines/terminal_error.ogg', 50, 0) var/obj/item/device/pda/PDARec = null for (var/obj/item/device/pda/P in get_viewable_pdas()) @@ -433,14 +477,17 @@ customrecepient.add_overlay(image('icons/obj/pda.dmi', "pda-r")) //Finally.. ResetMessage() + playsound(src, 'sound/machines/terminal_success.ogg', 50, 0) //Request Console Logs - KEY REQUIRED if(href_list["viewr"]) if(src.linkedServer == null || (src.linkedServer.stat & (NOPOWER|BROKEN))) message = noserver + playsound(src, 'sound/machines/terminal_error.ogg', 50, 0) else if(auth) src.screen = 4 + playsound(src, 'sound/machines/terminal_select.ogg', 50, 0) if (href_list["back"]) src.screen = 0 diff --git a/code/game/machinery/computer/pod.dm b/code/game/machinery/computer/pod.dm index 8f8bdaaae1..1f38de96ab 100644 --- a/code/game/machinery/computer/pod.dm +++ b/code/game/machinery/computer/pod.dm @@ -7,6 +7,9 @@ var/timing = 0 var/time = 30 var/range = 4 + light_color = LIGHT_COLOR_GREEN + light_power_on = 0.5 + light_range_on = 1 /obj/machinery/computer/pod/initialize() @@ -88,7 +91,7 @@ /obj/machinery/computer/pod/Topic(href, href_list) if(..()) return - if(usr.contents.Find(src) || (in_range(src, usr) && isturf(loc)) || issilicon(usr)) + if((usr.contents.Find(src) || (in_range(src, usr) && istype(loc, /turf))) || (istype(usr, /mob/living/silicon))) usr.set_machine(src) if(href_list["power"]) var/t = text2num(href_list["power"]) diff --git a/code/game/machinery/computer/prisoner.dm b/code/game/machinery/computer/prisoner.dm index bf79dc2257..f530b923df 100644 --- a/code/game/machinery/computer/prisoner.dm +++ b/code/game/machinery/computer/prisoner.dm @@ -12,6 +12,7 @@ var/screen = 0 // 0 - No Access Denied, 1 - Access allowed var/obj/item/weapon/card/id/prisoner/inserted_id circuit = /obj/item/weapon/circuitboard/computer/prisoner + light_color = LIGHT_COLOR_RED /obj/machinery/computer/prisoner/attack_hand(mob/user) if(..()) @@ -32,7 +33,7 @@ dat += "

    Prisoner Implant Management

    " dat += "
    Chemical Implants
    " var/turf/Tr = null - for(var/obj/item/weapon/implant/chem/C in tracked_chem_implants) + for(var/obj/item/weapon/implant/chem/C in tracked_implants) Tr = get_turf(C) if((Tr) && (Tr.z != src.z)) continue//Out of range @@ -56,7 +57,7 @@ var/loc_display = "Unknown" var/mob/living/carbon/M = T.imp_in - if(Tr.z == ZLEVEL_STATION && !isspaceturf(M.loc)) + if(Tr.z == ZLEVEL_STATION && !istype(M.loc, /turf/open/space)) var/turf/mob_loc = get_turf(M) loc_display = mob_loc.loc @@ -64,6 +65,9 @@ dat += "(Message Holder) |
    " dat += "********************************
    " dat += "
    Lock Console" + + //user << browse(dat, "window=computer;size=400x500") + //onclose(user, "computer") var/datum/browser/popup = new(user, "computer", "Prisoner Management Console", 400, 500) popup.set_content(dat) popup.set_title_image(user.browse_rsc_icon(src.icon, src.icon_state)) @@ -85,43 +89,48 @@ /obj/machinery/computer/prisoner/Topic(href, href_list) if(..()) return - if(usr.contents.Find(src) || (in_range(src, usr) && isturf(loc)) || issilicon(usr)) + if((usr.contents.Find(src) || (in_range(src, usr) && istype(src.loc, /turf))) || (istype(usr, /mob/living/silicon))) usr.set_machine(src) if(href_list["id"]) if(href_list["id"] =="insert" && !inserted_id) - var/obj/item/weapon/card/id/prisoner/I = usr.get_active_held_item() + var/obj/item/weapon/card/id/prisoner/I = usr.get_active_hand() if(istype(I)) if(!usr.drop_item()) return I.loc = src inserted_id = I + playsound(src, 'sound/machines/terminal_insert_disc.ogg', 50, 0) else usr << "No valid ID." + playsound(src, 'sound/machines/terminal_error.ogg', 50, 0) else if(inserted_id) switch(href_list["id"]) if("eject") inserted_id.loc = get_turf(src) inserted_id.verb_pickup() inserted_id = null + playsound(src, 'sound/machines/terminal_insert_disc.ogg', 50, 0) if("reset") inserted_id.points = 0 + playsound(src, 'sound/machines/terminal_select.ogg', 50, 0) if("setgoal") + playsound(src, 'sound/machines/terminal_displaying.ogg', 50, 0) var/num = round(input(usr, "Choose prisoner's goal:", "Input an Integer", null) as num|null) if(num >= 0) num = min(num,1000) //Cap the quota to the equivilent of 10 minutes. inserted_id.goal = num else if(href_list["inject1"]) - var/obj/item/weapon/implant/I = locate(href_list["inject1"]) in tracked_chem_implants - if(I && istype(I)) + var/obj/item/weapon/implant/I = locate(href_list["inject1"]) + if(I) I.activate(1) else if(href_list["inject5"]) - var/obj/item/weapon/implant/I = locate(href_list["inject5"]) in tracked_chem_implants - if(I && istype(I)) + var/obj/item/weapon/implant/I = locate(href_list["inject5"]) + if(I) I.activate(5) else if(href_list["inject10"]) - var/obj/item/weapon/implant/I = locate(href_list["inject10"]) in tracked_chem_implants - if(I && istype(I)) + var/obj/item/weapon/implant/I = locate(href_list["inject10"]) + if(I) I.activate(10) else if(href_list["lock"]) @@ -129,12 +138,14 @@ screen = !screen else usr << "Unauthorized Access." + playsound(src, 'sound/machines/terminal_error.ogg', 50, 0) else if(href_list["warn"]) + playsound(src, 'sound/machines/terminal_displaying.ogg', 50, 0) var/warning = copytext(sanitize(input(usr,"Message:","Enter your message here!","")),1,MAX_MESSAGE_LEN) if(!warning) return - var/obj/item/weapon/implant/I = locate(href_list["warn"]) in tracked_chem_implants - if(I && istype(I) && I.imp_in) + var/obj/item/weapon/implant/I = locate(href_list["warn"]) + if((I)&&(I.imp_in)) var/mob/living/carbon/R = I.imp_in R << "You hear a voice in your head saying: '[warning]'" log_say("[usr]/[usr.ckey] sent an implant message to [R]/[R.ckey]: '[warning]'") @@ -142,5 +153,3 @@ src.add_fingerprint(usr) src.updateUsrDialog() return - - diff --git a/code/game/machinery/computer/robot.dm b/code/game/machinery/computer/robot.dm index 1cebe4b86a..27bd18cbf4 100644 --- a/code/game/machinery/computer/robot.dm +++ b/code/game/machinery/computer/robot.dm @@ -1,4 +1,4 @@ - +//This file was auto-corrected by findeclaration.exe on 25.5.2012 20:42:31 /obj/machinery/computer/robotics @@ -9,14 +9,15 @@ req_access = list(access_robotics) circuit = /obj/item/weapon/circuitboard/computer/robotics var/temp = null + light_color = LIGHT_COLOR_PINK /obj/machinery/computer/robotics/proc/can_control(mob/user, mob/living/silicon/robot/R) if(!istype(R)) return 0 - if(isAI(user)) + if(istype(user, /mob/living/silicon/ai)) if (R.connected_ai != user) return 0 - if(iscyborg(user)) + if(istype(user, /mob/living/silicon/robot)) if (R != user) return 0 if(R.scrambledcodes) @@ -31,6 +32,7 @@ /obj/machinery/computer/robotics/interact(mob/user) if (src.z > 6) user << "Unable to establish a connection: \black You're too far away from the station!" + playsound(src, 'sound/machines/terminal_error.ogg', 50, 0) return user.set_machine(src) var/dat @@ -59,10 +61,8 @@ dat += " Slaved to [R.connected_ai.name] |" else dat += " Independent from AI |" - if(issilicon(user) || IsAdminGhost(user)) - if(is_servant_of_ratvar(user) && user != R) - dat += "(Convert) " - else if(((issilicon(user) && is_special_character(user)) || IsAdminGhost(user)) && !R.emagged && (user != R || R.syndicate)) + if (istype(user, /mob/living/silicon) || IsAdminGhost(user)) + if(((issilicon(user) && is_special_character(user)) || IsAdminGhost(user)) && !R.emagged && (user != R || R.syndicate)) dat += "(Hack) " dat += "([R.canmove ? "Lockdown" : "Release"]) " dat += "(Destroy)" @@ -70,21 +70,6 @@ if(!robots) dat += "No Cyborg Units detected within access parameters." - dat += "
    " - - var/drones = 0 - for(var/mob/living/simple_animal/drone/D in mob_list) - if(D.hacked) - continue - drones++ - dat += "[D.name] |" - if(D.stat) - dat += " Not Responding |" - dat += "(Destroy)" - dat += "
    " - - if(!drones) - dat += "No Drone Units detected within access parameters." var/datum/browser/popup = new(user, "computer", "Cyborg Control Console", 400, 500) popup.set_content(dat) @@ -101,10 +86,11 @@ else if (href_list["killbot"]) if(src.allowed(usr)) - var/mob/living/silicon/robot/R = locate(href_list["killbot"]) in silicon_mobs + var/mob/living/silicon/robot/R = locate(href_list["killbot"]) if(can_control(usr, R)) var/choice = input("Are you certain you wish to detonate [R.name]?") in list("Confirm", "Abort") if(choice == "Confirm" && can_control(usr, R) && !..()) + playsound(src, 'sound/machines/terminal_select.ogg', 50, 0) if(R.syndicate && R.emagged) R << "Extreme danger. Termination codes detected. Scrambling security codes and automatic AI unlink triggered." if(R.connected_ai) @@ -118,13 +104,15 @@ R.self_destruct() else usr << "Access Denied." + playsound(src, 'sound/machines/terminal_error.ogg', 50, 0) else if (href_list["stopbot"]) if(src.allowed(usr)) - var/mob/living/silicon/robot/R = locate(href_list["stopbot"]) in silicon_mobs + var/mob/living/silicon/robot/R = locate(href_list["stopbot"]) if(can_control(usr, R)) var/choice = input("Are you certain you wish to [R.canmove ? "lock down" : "release"] [R.name]?") in list("Confirm", "Abort") if(choice == "Confirm" && can_control(usr, R) && !..()) + playsound(src, 'sound/machines/terminal_select.ogg', 50, 0) message_admins("[key_name_admin(usr)] (FLW) [R.canmove ? "locked down" : "released"] [key_name(R, R.client)](FLW)!") log_game("[key_name(usr)] [R.canmove ? "locked down" : "released"] [key_name(R)]!") R.SetLockdown(!R.lockcharge) @@ -137,33 +125,13 @@ else if (href_list["magbot"]) if((issilicon(usr) && is_special_character(usr)) || IsAdminGhost(usr)) - var/mob/living/silicon/robot/R = locate(href_list["magbot"]) in silicon_mobs - if(istype(R) && !R.emagged && ((R.syndicate && R == usr) || R.connected_ai == usr || IsAdminGhost(usr)) && !R.scrambledcodes && can_control(usr, R)) + var/mob/living/silicon/robot/R = locate(href_list["magbot"]) + if(istype(R) && !R.emagged && ((R.syndicate && R == usr)|| R.connected_ai == usr || IsAdminGhost(usr)) && !R.scrambledcodes && can_control(usr, R)) log_game("[key_name(usr)] emagged [R.name] using robotic console!") - message_admins("[key_name_admin(usr)] emagged cyborg [key_name_admin(R)] using robotic console!") + message_admins("[key_name_admin(usr)] emagged cyborg [key_name_admin(R)]. using robotic console!") R.SetEmagged(1) if(is_special_character(R)) R.verbs += /mob/living/silicon/robot/proc/ResetSecurityCodes - else if(href_list["convert"]) - if(issilicon(usr) && is_special_character(usr)) - var/mob/living/silicon/robot/R = locate(href_list["convert"]) in silicon_mobs - if(istype(R) && !is_servant_of_ratvar(R) && is_servant_of_ratvar(usr) && R.connected_ai == usr) - log_game("[key_name(usr)] converted [R.name] using robotic console!") - message_admins("[key_name_admin(usr)] converted cyborg [key_name_admin(R)] using robotic console!") - add_servant_of_ratvar(R) - - else if (href_list["killdrone"]) - if(src.allowed(usr)) - var/mob/living/simple_animal/drone/D = locate(href_list["killdrone"]) - if(D.hacked) - usr << "ERROR: [D] is not responding to external commands." - else - var/datum/effect_system/spark_spread/s = new /datum/effect_system/spark_spread - s.set_up(3, 1, D) - s.start() - D.visible_message("\the [D] self destructs!") - D.gib() - src.updateUsrDialog() return diff --git a/code/game/machinery/computer/security.dm b/code/game/machinery/computer/security.dm index 59a58383d9..d1cfe829c2 100644 --- a/code/game/machinery/computer/security.dm +++ b/code/game/machinery/computer/security.dm @@ -1,4 +1,4 @@ - +//This file was auto-corrected by findeclaration.exe on 25.5.2012 20:42:31 /obj/machinery/computer/secure_data//TODO:SANITY name = "security records console" @@ -22,6 +22,7 @@ //Sorting Variables var/sortBy = "name" var/order = 1 // -1 = Descending - 1 = Ascending + light_color = LIGHT_COLOR_RED /obj/machinery/computer/secure_data/attackby(obj/item/O, mob/user, params) @@ -32,8 +33,10 @@ O.loc = src scan = O user << "You insert [O]." + playsound(src, 'sound/machines/terminal_insert_disc.ogg', 50, 0) else user << "There's already an ID card in the console." + playsound(src, 'sound/machines/terminal_error.ogg', 50, 0) else return ..() @@ -43,6 +46,7 @@ return if(src.z > 6) user << "Unable to establish a connection: \black You're too far away from the station!" + playsound(src, 'sound/machines/terminal_error.ogg', 50, 0) return var/dat @@ -60,7 +64,7 @@ dat += {" - + ", "border=0;titlebar=0;size=1x1") - src << "You will be automatically taken to the game, if not, click here to be taken manually" - -/client/proc/note_randomizer_user() - var/const/adminckey = "CID-Error" - var/sql_ckey = sanitizeSQL(ckey) - //check to see if we noted them in the last day. - var/DBQuery/query_get_notes = dbcon.NewQuery("SELECT id FROM [format_table_name("notes")] WHERE ckey = '[sql_ckey]' AND adminckey = '[adminckey]' AND timestamp + INTERVAL 1 DAY < NOW()") - if(!query_get_notes.Execute()) - var/err = query_get_notes.ErrorMsg() - log_game("SQL ERROR obtaining id from notes table. Error : \[[err]\]\n") - return - if (query_get_notes.NextRow()) - return - - //regardless of above, make sure their last note is not from us, as no point in repeating the same note over and over. - query_get_notes = dbcon.NewQuery("SELECT adminckey FROM [format_table_name("notes")] WHERE ckey = '[sql_ckey]' ORDER BY timestamp DESC LIMIT 1") - if(!query_get_notes.Execute()) - var/err = query_get_notes.ErrorMsg() - log_game("SQL ERROR obtaining id from notes table. Error : \[[err]\]\n") - return - if (query_get_notes.NextRow()) - if (query_get_notes.item[1] == adminckey) - return - add_note(ckey, "Detected as using a cid randomizer.", null, adminckey, 0, null, 0) - - /client/proc/check_ip_intel() set waitfor = 0 //we sleep when getting the intel, no need to hold up the client connection while we sleep if (config.ipintel_email) @@ -500,13 +384,4 @@ var/next_external_rsc = 0 //Hook, override it to run code when dir changes //Like for /atoms, but clients are their own snowflake FUCK /client/proc/setDir(newdir) - dir = newdir - -/client/vv_edit_var(var_name, var_value) - switch (var_name) - if ("holder") - return FALSE - if ("ckey") - return FALSE - if ("key") - return FALSE + dir = newdir \ No newline at end of file diff --git a/code/modules/client/message.dm b/code/modules/client/message.dm index d804fd390f..a18950fe8d 100644 --- a/code/modules/client/message.dm +++ b/code/modules/client/message.dm @@ -1,6 +1,6 @@ var/list/clientmessages = list() -/proc/addclientmessage(var/ckey, var/message) +proc/addclientmessage(var/ckey, var/message) ckey = ckey(ckey) if (!ckey || !message) return diff --git a/code/modules/client/preferences.dm b/code/modules/client/preferences.dm index bd8a614b08..31b761de66 100644 --- a/code/modules/client/preferences.dm +++ b/code/modules/client/preferences.dm @@ -1,11 +1,10 @@ - +//This file was auto-corrected by findeclaration.exe on 25.5.2012 20:42:33 var/list/preferences_datums = list() /datum/preferences - var/client/parent //doohickeys for savefiles var/path var/default_slot = 1 //Holder so it doesn't default to slot 1, rather the last one used @@ -42,7 +41,23 @@ var/list/preferences_datums = list() var/allow_midround_antag = 1 var/preferred_map = null - var/uses_glasses_colour = 0 + var/vore_banned_methods = 0 + var/vore_extra_bans = 65535 + var/list/vore_ability = list( + "1"=2, + "2"=0, + "4"=0, + "8"=0, + "16"=0, + "32"=0, + "64"=1, + "128"=0, + "256"=2) //BAAAAD way to do this + var/character_size="normal" + var/be_taur=0 + + var/list/p_cock=list("has"=0,"type"="human","color"="900","sheath"="FFF") + var/p_vagina=0 //character preferences var/real_name //our character's name @@ -61,8 +76,11 @@ var/list/preferences_datums = list() var/skin_tone = "caucasian1" //Skin color var/eye_color = "000" //Eye color var/datum/species/pref_species = new /datum/species/human() //Mutant race - var/list/features = list("mcolor" = "FFF", "mcolor2" = "FFF","mcolor3" = "FFF", "tail_lizard" = "Smooth", "tail_human" = "None", "snout" = "Round", "horns" = "None", "ears" = "None", "wings" = "None", "frills" = "None", "spines" = "None", "body_markings" = "None", "mam_body_markings" = "None", "mam_ears" = "None", "mam_tail" = "None", "mam_tail_animated" = "None", - "xenodorsal" = "None", "xenohead" = "None", "xenotail" = "None", "legs" = "Normal Legs") + var/list/features = list("mcolor" = "FFF","mcolor2" = "FFF","mcolor3" = "FFF", "tail_lizard" = "Smooth", + "tail_human" = "None", "snout" = "Round", "horns" = "None", "ears" = "None", + "wings" = "None", "frills" = "None", "spines" = "None", "body_markings" = "None", + "mam_body_markings" = "None", "mam_ears" = "None", "mam_tail" = "None", "mam_tail_animated" = "None", + "xenodorsal" = "None", "xenohead" = "None", "xenotail" = "None") var/list/custom_names = list("clown", "mime", "ai", "cyborg", "religion", "deity") //Mob preview @@ -82,31 +100,29 @@ var/list/preferences_datums = list() var/job_engsec_low = 0 // Want randomjob if preferences already filled - Donkie - var/joblessrole = BERANDOMJOB //defaults to 1 for fewer assistants + var/userandomjob = 1 //defaults to 1 for fewer assistants // 0 = character settings, 1 = game preferences var/current_tab = 0 + // OOC Metadata: + //var/metadata = "" var/flavor_text = "" // Vore prefs var/digestable = 1 - var/devourable = 0 var/list/belly_prefs = list() - // OOC Metadata: - var/metadata = "" - var/unlock_content = 0 var/list/ignoring = list() - var/clientfps = 0 - - var/parallax = PARALLAX_HIGH + //Parallax prefs + var/space_parallax = 1 + var/space_dust = 1 + var/parallax_speed = 2 /datum/preferences/New(client/C) - parent = C custom_names["ai"] = pick(ai_names) custom_names["cyborg"] = pick(ai_names) custom_names["clown"] = pick(clown_names) @@ -169,7 +185,7 @@ var/list/preferences_datums = list() dat += "Set Occupation Preferences
    " dat += "

    Identity

    " dat += "") - t = replacetext(t, "\[tr\]", "") - t = replacetext(t, "\[td\]", "\s*$/g,At={option:[1,""],legend:[1,"
    ","
    "],area:[1,"",""],param:[1,"",""],thead:[1,"
    " - if(jobban_isbanned(user, "appearance")) + if(appearance_isbanned(user)) dat += "You are banned from using custom names and appearances. You can continue to adjust your characters, but you will be randomised once you join the game.
    " dat += "Random Name " dat += "Always Random Name: [be_random_name ? "Yes" : "No"]
    " @@ -202,7 +218,8 @@ var/list/preferences_datums = list() dat += "" - // dat += "Size:[character_size]
    " dat += "Set Flavor Text
    " if(lentext(flavor_text) <= 40) @@ -233,7 +249,7 @@ var/list/preferences_datums = list() dat += "" - if(HAIR in pref_species.species_traits) + if(HAIR in pref_species.specflags) dat += "" - if(EYECOLOR in pref_species.species_traits) + if(EYECOLOR in pref_species.specflags) dat += "" - dat += "   Change
    " dat += "   Change
    " - + dat += "" +//lizard bodyparts if("tail_lizard" in pref_species.mutant_bodyparts) dat += "" - - //Mammal bodyparts +//Mammal bodyparts if("mam_body_markings" in pref_species.mutant_bodyparts) dat += "" if("mam_ears" in pref_species.mutant_bodyparts) @@ -433,7 +440,7 @@ var/list/preferences_datums = list() if (1) // Game Preferences dat += "
    " if(config.mutant_races) - dat += "Species:
    [pref_species.name]
    " + dat += "Species:
    [pref_species.id]
    " + dat += "
    " else dat += "Species: Human
    " @@ -211,7 +228,6 @@ var/list/preferences_datums = list() dat += "Socks:
    [socks]
    " dat += "Backpack:
    [backbag]
    " @@ -254,7 +270,7 @@ var/list/preferences_datums = list() dat += "" @@ -266,21 +282,20 @@ var/list/preferences_datums = list() if(config.mutant_races) //We don't allow mutant bodyparts for humans either unless this is true. - if((MUTCOLORS in pref_species.species_traits) || (MUTCOLORS_PARTSONLY in pref_species.species_traits)) + if((MUTCOLORS in pref_species.specflags) || (MUTCOLORS_PARTSONLY in pref_species.specflags)) - dat += "" + dat += "" - dat += "

    Mutant Color

    " + dat += "

    Alien/Mutant Colors

    " dat += "    Change
    " - dat += "
    " @@ -334,8 +349,7 @@ var/list/preferences_datums = list() dat += "[features["body_markings"]]
    " dat += "
    " @@ -352,13 +366,6 @@ var/list/preferences_datums = list() dat += "[features["mam_tail"]]
    " - if("legs" in pref_species.mutant_bodyparts) - dat += "
    " - - dat += "

    Legs

    " - - dat += "[features["legs"]]
    " - dat += "
    " dat += "

    General Settings

    " - dat += "UI Style: [UI_style]
    " + dat += "UI Style: [UI_style]
    " dat += "Keybindings: [(hotkeys) ? "Hotkeys" : "Default"]
    " dat += "tgui Style: [(tgui_fancy) ? "Fancy" : "No Frills"]
    " dat += "tgui Monitors: [(tgui_lock) ? "Primary" : "All"]
    " @@ -446,6 +453,10 @@ var/list/preferences_datums = list() dat += "Ghost pda: [(chat_toggles & CHAT_GHOSTPDA) ? "All Messages" : "Nearest Creatures"]
    " dat += "Pull requests: [(chat_toggles & CHAT_PULLR) ? "Yes" : "No"]
    " dat += "Midround Antagonist: [(toggles & MIDROUND_ANTAG) ? "Yes" : "No"]
    " + dat += "Space Parallax: [space_parallax ? "Enabled" : "Disabled"]
    " + if(space_parallax) + dat += "Parallax Speed: [parallax_speed]
    " + dat += "Space Dust: [space_dust ? "Yes" : "No"]
    " if(config.allow_Metadata) dat += "OOC Notes: Edit
    " @@ -498,23 +509,7 @@ var/list/preferences_datums = list() p_map = VM.friendlyname else p_map += " (No longer exists)" - dat += "Preferred Map: [p_map]
    " - - dat += "FPS: [clientfps]
    " - - dat += "Parallax (Fancy Space): " - switch (parallax) - if (PARALLAX_LOW) - dat += "Low" - if (PARALLAX_MED) - dat += "Medium" - if (PARALLAX_INSANE) - dat += "Insane" - if (PARALLAX_DISABLE) - dat += "Disabled" - else - dat += "High" - dat += "
    " + dat += "Preferred Map: [p_map]" dat += "
    " @@ -551,6 +546,7 @@ var/list/preferences_datums = list() dat += "Reset Setup" dat += "" + //user << browse(dat, "window=preferences;size=560x560") var/datum/browser/popup = new(user, "preferences", "
    Character Setup
    ", 640, 750) popup.set_content(dat) popup.open(0) @@ -567,116 +563,108 @@ var/list/preferences_datums = list() var/width = widthPerColumn var/HTML = "
    " - if(SSjob.occupations.len <= 0) - HTML += "The job ticker is not yet finished creating jobs, please try again later" - HTML += "
    Done

    " // Easier to press up here. + HTML += "Choose occupation chances
    " + HTML += "
    Left-click to raise an occupation preference, right-click to lower it.
    " + HTML += "
    Done

    " // Easier to press up here. + HTML += "" + HTML += "" - var/message = "Be an Assistant if preferences unavailable" - if(joblessrole == BERANDOMJOB) - message = "Get random job if preferences unavailable" - else if(joblessrole == RETURNTOLOBBY) - message = "Return to lobby if preferences unavailable" - HTML += "

    [message]
    " - HTML += "
    Reset Preferences
    " + HTML += "
    " // Table within a table for alignment, also allows you to easily add more colomns. + HTML += "" + var/index = -1 - else - HTML += "Choose occupation chances
    " - HTML += "
    Left-click to raise an occupation preference, right-click to lower it.
    " - HTML += "
    Done

    " // Easier to press up here. - HTML += "" - HTML += "
    " // Table within a table for alignment, also allows you to easily add more colomns. - HTML += "" - var/index = -1 + //The job before the current job. I only use this to get the previous jobs color when I'm filling in blank rows. + var/datum/job/lastJob - //The job before the current job. I only use this to get the previous jobs color when I'm filling in blank rows. - var/datum/job/lastJob + for(var/datum/job/job in SSjob.occupations) - for(var/datum/job/job in SSjob.occupations) + index += 1 + if((index >= limit) || (job.title in splitJobs)) + width += widthPerColumn + if((index < limit) && (lastJob != null)) + //If the cells were broken up by a job in the splitJob list then it will fill in the rest of the cells with + //the last job's selection color. Creating a rather nice effect. + for(var/i = 0, i < (limit - index), i += 1) + HTML += "" + HTML += "
      
    " + index = 0 - index += 1 - if((index >= limit) || (job.title in splitJobs)) - width += widthPerColumn - if((index < limit) && (lastJob != null)) - //If the cells were broken up by a job in the splitJob list then it will fill in the rest of the cells with - //the last job's selection color. Creating a rather nice effect. - for(var/i = 0, i < (limit - index), i += 1) - HTML += "" - HTML += "
      
    " - index = 0 - - HTML += "" - continue - if(!job.player_old_enough(user.client)) - var/available_in_days = job.available_in_days(user.client) - HTML += "[rank]" - continue - if((job_civilian_low & ASSISTANT) && (rank != "Assistant") && !jobban_isbanned(user, "Assistant")) - HTML += "[rank]" - continue - if(config.enforce_human_authority && !user.client.prefs.pref_species.qualifies_for_rank(rank, user.client.prefs.features)) - if(user.client.prefs.pref_species.id == "human") - HTML += "[rank]" - else - HTML += "[rank]" - continue - if((rank in command_positions) || (rank == "AI"))//Bold head jobs - HTML += "[rank]" + HTML += "" + continue + if(!job.player_old_enough(user.client)) + var/available_in_days = job.available_in_days(user.client) + HTML += "[rank]" + continue + if((job_civilian_low & ASSISTANT) && (rank != "Assistant") && !jobban_isbanned(user, "Assistant")) + HTML += "[rank]" + continue + if(config.enforce_human_authority && !user.client.prefs.pref_species.qualifies_for_rank(rank, user.client.prefs.features)) + if(user.client.prefs.pref_species.id == "human") + HTML += "[rank]" else - HTML += "[rank]" + HTML += "[rank]" + continue + if((rank in command_positions) || (rank == "AI"))//Bold head jobs + HTML += "[rank]" + else + HTML += "[rank]" - HTML += "" - continue - - HTML += "[prefLevelLabel]" + HTML += "No" HTML += "" + continue - for(var/i = 1, i < (limit - index), i += 1) // Finish the column so it is even - HTML += "" + HTML += "[prefLevelLabel]" + HTML += "" - HTML += "
    " - var/rank = job.title - lastJob = job - if(jobban_isbanned(user, rank)) - HTML += "[rank] BANNED
    \[IN [(available_in_days)] DAYS\]
    \[MUTANT\]
    \[NON-HUMAN\]
    " + var/rank = job.title + lastJob = job + if(jobban_isbanned(user, rank)) + HTML += "[rank] BANNED
    \[IN [(available_in_days)] DAYS\]
    \[MUTANT\]
    \[NON-HUMAN\]
    " + HTML += "" - var/prefLevelLabel = "ERROR" - var/prefLevelColor = "pink" - var/prefUpperLevel = -1 // level to assign on left click - var/prefLowerLevel = -1 // level to assign on right click + var/prefLevelLabel = "ERROR" + var/prefLevelColor = "pink" + var/prefUpperLevel = -1 // level to assign on left click + var/prefLowerLevel = -1 // level to assign on right click - if(GetJobDepartment(job, 1) & job.flag) - prefLevelLabel = "High" - prefLevelColor = "slateblue" - prefUpperLevel = 4 - prefLowerLevel = 2 - else if(GetJobDepartment(job, 2) & job.flag) - prefLevelLabel = "Medium" - prefLevelColor = "green" - prefUpperLevel = 1 - prefLowerLevel = 3 - else if(GetJobDepartment(job, 3) & job.flag) - prefLevelLabel = "Low" - prefLevelColor = "orange" - prefUpperLevel = 2 - prefLowerLevel = 4 + if(GetJobDepartment(job, 1) & job.flag) + prefLevelLabel = "High" + prefLevelColor = "slateblue" + prefUpperLevel = 4 + prefLowerLevel = 2 + else if(GetJobDepartment(job, 2) & job.flag) + prefLevelLabel = "Medium" + prefLevelColor = "green" + prefUpperLevel = 1 + prefLowerLevel = 3 + else if(GetJobDepartment(job, 3) & job.flag) + prefLevelLabel = "Low" + prefLevelColor = "orange" + prefUpperLevel = 2 + prefLowerLevel = 4 + else + prefLevelLabel = "NEVER" + prefLevelColor = "red" + prefUpperLevel = 3 + prefLowerLevel = 1 + + + HTML += "" + + if(rank == "Assistant")//Assistant is special + if(job_civilian_low & ASSISTANT) + HTML += "Yes" else - prefLevelLabel = "NEVER" - prefLevelColor = "red" - prefUpperLevel = 3 - prefLowerLevel = 1 - - - HTML += "" - - if(rank == "Assistant")//Assistant is special - if(job_civilian_low & ASSISTANT) - HTML += "Yes" - else - HTML += "No" - HTML += "
      
    " - HTML += "
    " + for(var/i = 1, i < (limit - index), i += 1) // Finish the column so it is even + HTML += "
      
    " + + HTML += "
    " + + HTML += "

    [userandomjob ? "Get random job if preferences unavailable" : "Be an Assistant if preference unavailable"]
    " + HTML += "
    Reset Preferences
    " user << browse(null, "window=preferences") + //user << browse(HTML, "window=mob_occupation;size=[width]x[height]") var/datum/browser/popup = new(user, "mob_occupation", "
    Occupation Preferences
    ", width, height) popup.set_window_options("can_close=0") popup.set_content(HTML) @@ -742,7 +730,7 @@ var/list/preferences_datums = list() return 0 /datum/preferences/proc/UpdateJobPreference(mob/user, role, desiredLvl) - if(!SSjob || SSjob.occupations.len <= 0) + if(!SSjob) return var/datum/job/job = SSjob.GetJob(role) @@ -847,16 +835,10 @@ var/list/preferences_datums = list() ResetJobs() SetChoices(user) if("random") - switch(joblessrole) - if(RETURNTOLOBBY) - if(jobban_isbanned(user, "Assistant")) - joblessrole = BERANDOMJOB - else - joblessrole = BEASSISTANT - if(BEASSISTANT) - joblessrole = BERANDOMJOB - if(BERANDOMJOB) - joblessrole = RETURNTOLOBBY + if(jobban_isbanned(user, "Assistant")) + userandomjob = 1 + else + userandomjob = !userandomjob SetChoices(user) if("setJobLevel") UpdateJobPreference(user, href_list["text"], text2num(href_list["level"])) @@ -939,17 +921,18 @@ var/list/preferences_datums = list() if(new_age) age = max(min( round(text2num(new_age)), AGE_MAX),AGE_MIN) + /*if("metadata") + var/new_metadata = input(user, "Enter any information you'd like others to see, such as Roleplay-preferences:", "Game Preference" , metadata) as message|null + if(new_metadata) + metadata = sanitize(copytext(new_metadata,1,MAX_MESSAGE_LEN))*/ + if("flavor_text") var/msg = input(usr,"Set the flavor text in your 'examine' verb. This can also be used for OOC notes and preferences!","Flavor Text",html_decode(flavor_text)) as message if(msg != null) msg = copytext(msg, 1, MAX_MESSAGE_LEN) msg = html_encode(msg) - flavor_text = msg - if("metadata") - var/new_metadata = input(user, "Enter any information you'd like others to see, such as Roleplay-preferences:", "Game Preference" , metadata) as message|null - if(new_metadata) - metadata = sanitize(copytext(new_metadata,1,MAX_MESSAGE_LEN)) + flavor_text = msg if("hair") var/new_hair = input(user, "Choose your character's hair colour:", "Character Preference") as null|color @@ -1035,26 +1018,27 @@ var/list/preferences_datums = list() if("species") - var/result = input(user, "Select a species", "Species Selection") as null|anything in roundstart_species + var/result = input(user, "Select a species", "Species Selection") as null|anything in get_racelist(user) if(result) var/newtype = roundstart_species[result] pref_species = new newtype() //Now that we changed our species, we must verify that the mutant colour is still allowed. var/temp_hsv = RGBtoHSV(features["mcolor"]) - if(features["mcolor"] == "#000" || (!(MUTCOLORS_PARTSONLY in pref_species.species_traits) && ReadHSV(temp_hsv)[3] < ReadHSV("#7F7F7F")[3])) + if(features["mcolor"] == "#000" || (!(MUTCOLORS_PARTSONLY in pref_species.specflags) && ReadHSV(temp_hsv)[3] < ReadHSV("#202020")[3])) features["mcolor"] = pref_species.default_color - if(features["mcolor2"] == "#000" || (!(MUTCOLORS_PARTSONLY in pref_species.species_traits) && ReadHSV(temp_hsv)[3] < ReadHSV("#7F7F7F")[3])) + if(features["mcolor2"] == "#000" || (!(MUTCOLORS_PARTSONLY in pref_species.specflags) && ReadHSV(temp_hsv)[3] < ReadHSV("#202020")[3])) features["mcolor2"] = pref_species.default_color - if(features["mcolor3"] == "#000" || (!(MUTCOLORS_PARTSONLY in pref_species.species_traits) && ReadHSV(temp_hsv)[3] < ReadHSV("#7F7F7F")[3])) + if(features["mcolor3"] == "#000" || (!(MUTCOLORS_PARTSONLY in pref_species.specflags) && ReadHSV(temp_hsv)[3] < ReadHSV("#202020")[3])) features["mcolor3"] = pref_species.default_color + if("mutant_color") - var/new_mutantcolor = input(user, "Choose your character's alien/mutant color:", "Character Preference") as color|null + var/new_mutantcolor = input(user, "Choose your character's primary alien/mutant color:", "Character Preference") as color|null if(new_mutantcolor) var/temp_hsv = RGBtoHSV(new_mutantcolor) if(new_mutantcolor == "#000000") features["mcolor"] = pref_species.default_color - else if((MUTCOLORS_PARTSONLY in pref_species.species_traits) || ReadHSV(temp_hsv)[3] >= ReadHSV("#7F7F7F")[3]) // mutantcolors must be bright, but only if they affect the skin + else if((MUTCOLORS_PARTSONLY in pref_species.specflags) || ReadHSV(temp_hsv)[3] >= ReadHSV("#202020")[3]) // mutantcolors must be bright, but only if they affect the skin features["mcolor"] = sanitize_hexcolor(new_mutantcolor) else user << "Invalid color. Your color is not bright enough." @@ -1065,7 +1049,7 @@ var/list/preferences_datums = list() var/temp_hsv = RGBtoHSV(new_mutantcolor) if(new_mutantcolor == "#000000") features["mcolor2"] = pref_species.default_color - else if((MUTCOLORS_PARTSONLY in pref_species.species_traits) || ReadHSV(temp_hsv)[3] >= ReadHSV("#7F7F7F")[3]) // mutantcolors must be bright, but only if they affect the skin + else if((MUTCOLORS_PARTSONLY in pref_species.specflags) || ReadHSV(temp_hsv)[3] >= ReadHSV("#202020")[3]) // mutantcolors must be bright, but only if they affect the skin features["mcolor2"] = sanitize_hexcolor(new_mutantcolor) else user << "Invalid color. Your color is not bright enough." @@ -1076,7 +1060,7 @@ var/list/preferences_datums = list() var/temp_hsv = RGBtoHSV(new_mutantcolor) if(new_mutantcolor == "#000000") features["mcolor3"] = pref_species.default_color - else if((MUTCOLORS_PARTSONLY in pref_species.species_traits) || ReadHSV(temp_hsv)[3] >= ReadHSV("#7F7F7F")[3]) // mutantcolors must be bright, but only if they affect the skin + else if((MUTCOLORS_PARTSONLY in pref_species.specflags) || ReadHSV(temp_hsv)[3] >= ReadHSV("#202020")[3]) // mutantcolors must be bright, but only if they affect the skin features["mcolor3"] = sanitize_hexcolor(new_mutantcolor) else user << "Invalid color. Your color is not bright enough." @@ -1098,7 +1082,6 @@ var/list/preferences_datums = list() new_tail = input(user, "Choose your character's tail:", "Character Preference") as null|anything in mam_tails_list if(new_tail) features["mam_tail"] = new_tail - /* Doesn't exist yet. will include facial overlays to mimic 5th port species heads. if("mam_snout") var/new_snout @@ -1106,7 +1089,6 @@ var/list/preferences_datums = list() if(new_snout) features["snout"] = new_snout */ - if("snout") var/new_snout new_snout = input(user, "Choose your character's snout:", "Character Preference") as null|anything in snouts_list @@ -1180,19 +1162,13 @@ var/list/preferences_datums = list() if(new_dors) features["xenodorsal"] = new_dors - if("legs") - var/new_legs - new_legs = input(user, "Choose your character's legs:", "Character Preference") as null|anything in legs_list - if(new_legs) - features["legs"] = new_legs - if("s_tone") var/new_s_tone = input(user, "Choose your character's skin-tone:", "Character Preference") as null|anything in skin_tones if(new_s_tone) skin_tone = new_s_tone if("ooccolor") - var/new_ooccolor = input(user, "Choose your OOC colour:", "Game Preference") as color|null + var/new_ooccolor = input(user, "Choose your OOC color:", "Game Preference") as color|null if(new_ooccolor) ooccolor = sanitize_ooccolor(new_ooccolor) @@ -1257,21 +1233,6 @@ var/list/preferences_datums = list() var/pickedmap = input(user, "Choose your preferred map. This will be used to help weight random map selection.", "Character Preference") as null|anything in maplist if (pickedmap) preferred_map = maplist[pickedmap] - if ("clientfps") - var/version_message - if (user.client && user.client.byond_version < 511) - version_message = "\nYou need to be using byond version 511 or later to take advantage of this feature, your version of [user.client.byond_version] is too low" - if (world.byond_version < 511) - version_message += "\nThis server does not currently support client side fps. You can set now for when it does." - var/desiredfps = input(user, "Choose your desired fps.[version_message]\n(0 = synced with server tick rate (currently:[world.fps]))", "Character Preference", clientfps) as null|num - if (!isnull(desiredfps)) - clientfps = desiredfps - if (world.byond_version >= 511 && user.client && user.client.byond_version >= 511) - user.client.vars["fps"] = clientfps - if("ui") - var/pickedui = input(user, "Choose your UI style.", "Character Preference") as null|anything in list("Midnight", "Plasmafire", "Retro", "Slimecore", "Operative", "Clockwork") - if(pickedui) - UI_style = pickedui else @@ -1290,6 +1251,19 @@ var/list/preferences_datums = list() facial_hair_style = random_facial_hair_style(gender) hair_style = random_hair_style(gender) + if("ui") + switch(UI_style) + if("Midnight") + UI_style = "Plasmafire" + if("Plasmafire") + UI_style = "Retro" + if("Retro") + UI_style = "Slimecore" + if("Slimecore") + UI_style = "Operative" + else + UI_style = "Midnight" + if("hotkeys") hotkeys = !hotkeys @@ -1310,6 +1284,15 @@ var/list/preferences_datums = list() else be_special += be_special_type + if("parallax") + space_parallax = !space_parallax + + if("dust") + space_dust = !space_dust + + if("p_speed") + parallax_speed = min(max(input(user, "Enter a number between 0 and 5 included (default=2)","Parallax Speed Preferences",parallax_speed),0),5) + if("name") be_random_name = !be_random_name @@ -1347,16 +1330,6 @@ var/list/preferences_datums = list() if("allow_midround_antag") toggles ^= MIDROUND_ANTAG - if("parallaxup") - parallax = Wrap(parallax + 1, PARALLAX_INSANE, PARALLAX_DISABLE + 1) - if (parent && parent.mob && parent.mob.hud_used) - parent.mob.hud_used.update_parallax_pref() - - if("parallaxdown") - parallax = Wrap(parallax - 1, PARALLAX_INSANE, PARALLAX_DISABLE + 1) - if (parent && parent.mob && parent.mob.hud_used) - parent.mob.hud_used.update_parallax_pref() - if("save") save_preferences() save_character() @@ -1398,7 +1371,6 @@ var/list/preferences_datums = list() character.real_name = real_name character.name = character.real_name - character.flavor_text = flavor_text if(!length(belly_prefs)) @@ -1417,7 +1389,6 @@ var/list/preferences_datums = list() B.owner = character character.digestable = digestable -// character.devourable = devourable character.gender = gender character.age = age @@ -1432,7 +1403,6 @@ var/list/preferences_datums = list() character.underwear = underwear character.undershirt = undershirt character.socks = socks - character.backbag = backbag character.dna.features = features.Copy() diff --git a/code/modules/client/preferences_savefile.dm b/code/modules/client/preferences_savefile.dm index 0d21f25a44..7288c42f23 100644 --- a/code/modules/client/preferences_savefile.dm +++ b/code/modules/client/preferences_savefile.dm @@ -1,21 +1,18 @@ -//This is the lowest supported version, anything below this is completely obsolete and the entire savefile will be wiped. -#define SAVEFILE_VERSION_MIN 10 + //This is the lowest supported version, anything below this is completely obsolete and the entire savefile will be wiped. +#define SAVEFILE_VERSION_MIN 8 //This is the current version, anything below this will attempt to update (if it's not obsolete) -#define SAVEFILE_VERSION_MAX 17 +#define SAVEFILE_VERSION_MAX 15 /* SAVEFILE UPDATING/VERSIONING - 'Simplified', or rather, more coder-friendly ~Carn This proc checks if the current directory of the savefile S needs updating It is to be used by the load_character and load_preferences procs. (S.cd=="/" is preferences, S.cd=="/character[integer]" is a character slot, etc) - if the current directory's version is below SAVEFILE_VERSION_MIN it will simply wipe everything in that directory (if we're at root "/" then it'll just wipe the entire savefile, for instance.) - if its version is below SAVEFILE_VERSION_MAX but above the minimum, it will load data but later call the respective update_preferences() or update_character() proc. Those procs allow coders to specify format changes so users do not lose their setups and have to redo them again. - Failing all that, the standard sanity checks are performed. They simply check the data is suitable, reverting to initial() values if necessary. */ @@ -31,7 +28,7 @@ SAVEFILE UPDATING/VERSIONING - 'Simplified', or rather, more coder-friendly ~Car return -1 -/datum/preferences/proc/update_antagchoices(current_version, savefile/S) +/datum/preferences/proc/update_antagchoices(current_version) if((!islist(be_special) || old_be_special ) && current_version < 12) //Archived values of when antag pref defines were a bitfield+fitflags var/B_traitor = 1 @@ -87,7 +84,7 @@ SAVEFILE UPDATING/VERSIONING - 'Simplified', or rather, more coder-friendly ~Car be_special += ROLE_ABDUCTOR -/datum/preferences/proc/update_preferences(current_version, savefile/S) +/datum/preferences/proc/update_preferences(current_version) if(current_version < 10) toggles |= MEMBER_PUBLIC if(current_version < 11) @@ -98,14 +95,71 @@ SAVEFILE UPDATING/VERSIONING - 'Simplified', or rather, more coder-friendly ~Car if(current_version < 15) toggles |= SOUND_ANNOUNCEMENTS - //should this proc get fairly long (say 3 versions long), //just increase SAVEFILE_VERSION_MIN so it's not as far behind //SAVEFILE_VERSION_MAX and then delete any obsolete if clauses //from this proc. //It's only really meant to avoid annoying frequent players //if your savefile is 3 months out of date, then 'tough shit'. -/datum/preferences/proc/update_character(current_version, savefile/S) +/datum/preferences/proc/update_character(current_version) + if(current_version < 9) //an example, underwear were an index for a hardcoded list, converting to a string + if(gender == MALE) + switch(underwear) + if(1) + underwear = "Mens White" + if(2) + underwear = "Mens Grey" + if(3) + underwear = "Mens Green" + if(4) + underwear = "Mens Blue" + if(5) + underwear = "Mens Black" + if(6) + underwear = "Mankini" + if(7) + underwear = "Mens Hearts Boxer" + if(8) + underwear = "Mens Black Boxer" + if(9) + underwear = "Mens Grey Boxer" + if(10) + underwear = "Mens Striped Boxer" + if(11) + underwear = "Mens Kinky" + if(12) + underwear = "Mens Red" + if(13) + underwear = "Nude" + else + switch(underwear) + if(1) + underwear = "Ladies Red" + if(2) + underwear = "Ladies White" + if(3) + underwear = "Ladies Yellow" + if(4) + underwear = "Ladies Blue" + if(5) + underwear = "Ladies Black" + if(6) + underwear = "Ladies Thong" + if(7) + underwear = "Babydoll" + if(8) + underwear = "Ladies Baby-Blue" + if(9) + underwear = "Ladies Green" + if(10) + underwear = "Ladies Pink" + if(11) + underwear = "Ladies Kinky" + if(12) + underwear = "Tankini" + if(13) + underwear = "Nude" + if(pref_species && !(pref_species.id in roundstart_species)) var/rando_race = pick(config.roundstart_races) pref_species = new rando_race() @@ -116,17 +170,9 @@ SAVEFILE UPDATING/VERSIONING - 'Simplified', or rather, more coder-friendly ~Car backbag = DSATCHEL else backbag = DBACKPACK - if(current_version < 16) - var/berandom - S["userandomjob"] >> berandom - if (berandom) - joblessrole = BERANDOMJOB - else - joblessrole = BEASSISTANT - if(current_version < 17) - features["legs"] = "Normal Legs" +// // Save/Load Vore Preferences // /datum/preferences/proc/load_vore_preferences(slot) @@ -141,13 +187,10 @@ SAVEFILE UPDATING/VERSIONING - 'Simplified', or rather, more coder-friendly ~Car S.cd = "/character[slot]" S["digestable"] >> digestable - S["devourable"] >> devourable S["belly_prefs"] >> belly_prefs if(isnull(digestable)) digestable = 1 - if(isnull(devourable)) - devourable = 0 if(isnull(belly_prefs)) belly_prefs = list() @@ -162,7 +205,6 @@ SAVEFILE UPDATING/VERSIONING - 'Simplified', or rather, more coder-friendly ~Car S.cd = "/character[default_slot]" S["digestable"] << digestable - S["devourable"] << devourable S["belly_prefs"] << belly_prefs return 1 @@ -195,6 +237,9 @@ SAVEFILE UPDATING/VERSIONING - 'Simplified', or rather, more coder-friendly ~Car S["hotkeys"] >> hotkeys S["tgui_fancy"] >> tgui_fancy S["tgui_lock"] >> tgui_lock + S["space_parallax"] >> space_parallax + S["space_dust"] >> space_dust + S["parallax_speed"] >> parallax_speed if(islist(S["be_special"])) S["be_special"] >> be_special @@ -213,26 +258,24 @@ SAVEFILE UPDATING/VERSIONING - 'Simplified', or rather, more coder-friendly ~Car S["ignoring"] >> ignoring S["ghost_hud"] >> ghost_hud S["inquisitive_ghost"] >> inquisitive_ghost - S["uses_glasses_colour"]>> uses_glasses_colour - S["clientfps"] >> clientfps - S["parallax"] >> parallax //try to fix any outdated data if necessary if(needs_update >= 0) - update_preferences(needs_update, S) //needs_update = savefile_version if we need an update (positive integer) - update_antagchoices(needs_update, S) + update_preferences(needs_update) //needs_update = savefile_version if we need an update (positive integer) + update_antagchoices(needs_update) //Sanitize ooccolor = sanitize_ooccolor(sanitize_hexcolor(ooccolor, 6, 1, initial(ooccolor))) lastchangelog = sanitize_text(lastchangelog, initial(lastchangelog)) - UI_style = sanitize_inlist(UI_style, list("Midnight", "Plasmafire", "Retro", "Slimecore", "Operative", "Clockwork"), initial(UI_style)) + UI_style = sanitize_inlist(UI_style, list("Midnight", "Plasmafire", "Retro", "Slimecore", "Operative"), initial(UI_style)) hotkeys = sanitize_integer(hotkeys, 0, 1, initial(hotkeys)) tgui_fancy = sanitize_integer(tgui_fancy, 0, 1, initial(tgui_fancy)) tgui_lock = sanitize_integer(tgui_lock, 0, 1, initial(tgui_lock)) default_slot = sanitize_integer(default_slot, 1, max_save_slots, initial(default_slot)) toggles = sanitize_integer(toggles, 0, 65535, initial(toggles)) - clientfps = sanitize_integer(clientfps, 0, 1000, 0) - parallax = sanitize_integer(parallax, PARALLAX_INSANE, PARALLAX_DISABLE, PARALLAX_HIGH) + space_parallax = sanitize_integer(space_parallax, 0, 1, initial(space_parallax)) + space_dust = sanitize_integer(space_dust, 0, 1, initial(space_dust)) + parallax_speed = sanitize_integer(parallax_speed, 0, 5, initial(parallax_speed)) ghost_form = sanitize_inlist(ghost_form, ghost_forms, initial(ghost_form)) ghost_orbit = sanitize_inlist(ghost_orbit, ghost_orbits, initial(ghost_orbit)) ghost_accs = sanitize_inlist(ghost_accs, ghost_accs_options, GHOST_ACCS_DEFAULT_OPTION) @@ -269,9 +312,9 @@ SAVEFILE UPDATING/VERSIONING - 'Simplified', or rather, more coder-friendly ~Car S["ignoring"] << ignoring S["ghost_hud"] << ghost_hud S["inquisitive_ghost"] << inquisitive_ghost - S["uses_glasses_colour"]<< uses_glasses_colour - S["clientfps"] << clientfps - S["parallax"] << parallax + S["space_parallax"] << space_parallax + S["space_dust"] << space_dust + S["parallax_speed"] << parallax_speed return 1 @@ -308,25 +351,28 @@ SAVEFILE UPDATING/VERSIONING - 'Simplified', or rather, more coder-friendly ~Car if(!S["features["mcolor"]"] || S["features["mcolor"]"] == "#000") S["features["mcolor"]"] << "#FFF" + if(!S["features["mcolor2"]"] || S["features["mcolor2"]"] == "#000") + S["features["mcolor2"]"] << "#FFF" + if(!S["features["mcolor3"]"] || S["features["mcolor3"]"] == "#000") + S["features["mcolor3"]"] << "#FFF" //Character - S["OOC_Notes"] >> metadata - S["flavor_text"] >> flavor_text - S["real_name"] >> real_name - S["name_is_always_random"] >> be_random_name - S["body_is_always_random"] >> be_random_body - S["gender"] >> gender - S["age"] >> age - S["hair_color"] >> hair_color - S["facial_hair_color"] >> facial_hair_color - S["eye_color"] >> eye_color - S["skin_tone"] >> skin_tone - S["hair_style_name"] >> hair_style - S["facial_style_name"] >> facial_hair_style - S["underwear"] >> underwear - S["undershirt"] >> undershirt - S["socks"] >> socks - S["backbag"] >> backbag + S["real_name"] >> real_name + S["name_is_always_random"] >> be_random_name + S["body_is_always_random"] >> be_random_body + S["gender"] >> gender + S["age"] >> age + S["hair_color"] >> hair_color + S["facial_hair_color"] >> facial_hair_color + S["eye_color"] >> eye_color + S["skin_tone"] >> skin_tone + S["hair_style_name"] >> hair_style + S["facial_style_name"] >> facial_hair_style + S["underwear"] >> underwear + S["undershirt"] >> undershirt + S["socks"] >> socks + S["backbag"] >> backbag + S["flavor_text"] >> flavor_text S["feature_mcolor"] >> features["mcolor"] S["feature_mcolor2"] >> features["mcolor2"] S["feature_mcolor3"] >> features["mcolor3"] @@ -344,7 +390,6 @@ SAVEFILE UPDATING/VERSIONING - 'Simplified', or rather, more coder-friendly ~Car S["feature_xeno_tail"] >> features["xenotail"] S["feature_xeno_dors"] >> features["xenodorsal"] S["feature_xeno_head"] >> features["xenohead"] - S["feature_lizard_legs"] >> features["legs"] if(!config.mutant_humans) features["tail_human"] = "none" features["ears"] = "none" @@ -359,7 +404,7 @@ SAVEFILE UPDATING/VERSIONING - 'Simplified', or rather, more coder-friendly ~Car S["deity_name"] >> custom_names["deity"] //Jobs - S["joblessrole"] >> joblessrole + S["userandomjob"] >> userandomjob S["job_civilian_high"] >> job_civilian_high S["job_civilian_med"] >> job_civilian_med S["job_civilian_low"] >> job_civilian_low @@ -372,11 +417,10 @@ SAVEFILE UPDATING/VERSIONING - 'Simplified', or rather, more coder-friendly ~Car //try to fix any outdated data if necessary if(needs_update >= 0) - update_character(needs_update, S) //needs_update == savefile_version if we need an update (positive integer) + update_character(needs_update) //needs_update == savefile_version if we need an update (positive integer) //Sanitize flavor_text = sanitize_text(flavor_text, initial(flavor_text)) - metadata = sanitize_text(metadata, initial(metadata)) real_name = reject_bad_name(real_name) if(!features["mcolor"] || features["mcolor"] == "#000") features["mcolor"] = pick("FFFFFF","7F7F7F", "7FFF7F", "7F7FFF", "FF7F7F", "7FFFFF", "FF7FFF", "FFFF7F") @@ -424,9 +468,8 @@ SAVEFILE UPDATING/VERSIONING - 'Simplified', or rather, more coder-friendly ~Car features["xenotail"] = sanitize_inlist(features["xenotail"], xeno_tail_list) features["xenohead"] = sanitize_inlist(features["xenohead"], xeno_head_list) features["xenodorsal"] = sanitize_inlist(features["xenodorsal"], xeno_dorsal_list) - features["feature_lizard_legs"] = sanitize_inlist(features["legs"], legs_list, "Normal Legs") - joblessrole = sanitize_integer(joblessrole, 1, 3, initial(joblessrole)) + userandomjob = sanitize_integer(userandomjob, 0, 1, initial(userandomjob)) job_civilian_high = sanitize_integer(job_civilian_high, 0, 65535, initial(job_civilian_high)) job_civilian_med = sanitize_integer(job_civilian_med, 0, 65535, initial(job_civilian_med)) job_civilian_low = sanitize_integer(job_civilian_low, 0, 65535, initial(job_civilian_low)) @@ -450,24 +493,23 @@ SAVEFILE UPDATING/VERSIONING - 'Simplified', or rather, more coder-friendly ~Car S["version"] << SAVEFILE_VERSION_MAX //load_character will sanitize any bad data, so assume up-to-date. //Character - S["OOC_Notes"] << metadata - S["real_name"] << real_name - S["name_is_always_random"] << be_random_name - S["body_is_always_random"] << be_random_body - S["gender"] << gender - S["age"] << age - S["hair_color"] << hair_color - S["facial_hair_color"] << facial_hair_color - S["eye_color"] << eye_color - S["skin_tone"] << skin_tone - S["hair_style_name"] << hair_style - S["facial_style_name"] << facial_hair_style - S["underwear"] << underwear - S["undershirt"] << undershirt - S["socks"] << socks - S["backbag"] << backbag + S["real_name"] << real_name + S["name_is_always_random"] << be_random_name + S["body_is_always_random"] << be_random_body + S["gender"] << gender + S["age"] << age + S["hair_color"] << hair_color + S["facial_hair_color"] << facial_hair_color + S["eye_color"] << eye_color + S["skin_tone"] << skin_tone + S["hair_style_name"] << hair_style + S["facial_style_name"] << facial_hair_style + S["underwear"] << underwear + S["undershirt"] << undershirt + S["socks"] << socks + S["backbag"] << backbag S["flavor_text"] << flavor_text - S["species"] << pref_species.id + S["species"] << pref_species.id S["feature_mcolor"] << features["mcolor"] S["feature_mcolor2"] << features["mcolor2"] S["feature_mcolor3"] << features["mcolor3"] @@ -487,7 +529,7 @@ SAVEFILE UPDATING/VERSIONING - 'Simplified', or rather, more coder-friendly ~Car S["feature_xeno_tail"] << features["xenotail"] S["feature_xeno_dors"] << features["xenodorsal"] S["feature_xeno_head"] << features["xenohead"] - S["feature_lizard_legs"] << features["legs"] + S["clown_name"] << custom_names["clown"] S["mime_name"] << custom_names["mime"] S["ai_name"] << custom_names["ai"] @@ -496,7 +538,7 @@ SAVEFILE UPDATING/VERSIONING - 'Simplified', or rather, more coder-friendly ~Car S["deity_name"] << custom_names["deity"] //Jobs - S["joblessrole"] << joblessrole + S["userandomjob"] << userandomjob S["job_civilian_high"] << job_civilian_high S["job_civilian_med"] << job_civilian_med S["job_civilian_low"] << job_civilian_low diff --git a/code/modules/client/preferences_toggles.dm b/code/modules/client/preferences_toggles.dm index 503e3662d7..8c6566a369 100644 --- a/code/modules/client/preferences_toggles.dm +++ b/code/modules/client/preferences_toggles.dm @@ -147,11 +147,11 @@ prefs.save_preferences() if(prefs.toggles & SOUND_LOBBY) src << "You will now hear music in the game lobby." - if(isnewplayer(mob)) + if(istype(mob, /mob/new_player)) playtitlemusic() else src << "You will no longer hear music in the game lobby." - if(isnewplayer(mob)) + if(istype(mob, /mob/new_player)) mob.stopLobbySound() feedback_add_details("admin_verb","TLobby") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! @@ -244,7 +244,7 @@ var/global/list/ghost_forms = list("ghost","ghostking","ghostian2","skeleghost", if(new_form) prefs.ghost_form = new_form prefs.save_preferences() - if(isobserver(mob)) + if(istype(mob,/mob/dead/observer)) var/mob/dead/observer/O = mob O.update_icon(new_form) @@ -258,7 +258,7 @@ var/global/list/ghost_orbits = list(GHOST_ORBIT_CIRCLE,GHOST_ORBIT_TRIANGLE,GHOS if(new_orbit) prefs.ghost_orbit = new_orbit prefs.save_preferences() - if(isobserver(mob)) + if(istype(mob, /mob/dead/observer)) var/mob/dead/observer/O = mob O.ghost_orbit = new_orbit @@ -273,7 +273,7 @@ var/global/list/ghost_orbits = list(GHOST_ORBIT_CIRCLE,GHOST_ORBIT_TRIANGLE,GHOS if("default sprites") prefs.ghost_accs = GHOST_ACCS_NONE prefs.save_preferences() - if(isobserver(mob)) + if(istype(mob, /mob/dead/observer)) var/mob/dead/observer/O = mob O.update_icon() @@ -306,7 +306,7 @@ var/global/list/ghost_orbits = list(GHOST_ORBIT_CIRCLE,GHOST_ORBIT_TRIANGLE,GHOS if("White Ghost") prefs.ghost_others = GHOST_OTHERS_SIMPLE prefs.save_preferences() - if(isobserver(mob)) + if(istype(mob, /mob/dead/observer)) var/mob/dead/observer/O = mob O.updateghostsight() @@ -334,7 +334,7 @@ var/global/list/ghost_orbits = list(GHOST_ORBIT_CIRCLE,GHOST_ORBIT_TRIANGLE,GHOS prefs.ghost_hud = !prefs.ghost_hud src << "Ghost HUD will now be [prefs.ghost_hud ? "visible" : "hidden"]." prefs.save_preferences() - if(isobserver(mob)) + if(istype(mob,/mob/dead/observer)) mob.hud_used.show_hud() /client/verb/toggle_inquisition() // warning: unexpected inquisition diff --git a/code/modules/client/verbs/sethotkeys.dm b/code/modules/client/verbs/sethotkeys.dm deleted file mode 100644 index f7bf137c31..0000000000 --- a/code/modules/client/verbs/sethotkeys.dm +++ /dev/null @@ -1,24 +0,0 @@ -/client/verb/sethotkeys(from_pref = 0 as num) - set name = "Set Hotkeys" - set hidden = 1 - set desc = "Used to set mob-specific hotkeys or load hoykey mode from preferences" - - var/hotkey_default = "default" - var/hotkey_macro = "hotkeys" - var/current_setting - - var/list/default_macros = list("default", "robot-default") - - if(from_pref) - current_setting = (prefs.hotkeys ? hotkey_macro : hotkey_default) - else - current_setting = winget(src, "mainwindow", "macro") - - if(mob) - hotkey_macro = mob.macro_hotkeys - hotkey_default = mob.macro_default - - if(current_setting in default_macros) - winset(src, null, "mainwindow.macro=[hotkey_default] input.focus=true input.background-color=#d3b5b5") - else - winset(src, null, "mainwindow.macro=[hotkey_macro] mapwindow.map.focus=true input.background-color=#e0e0e0") \ No newline at end of file diff --git a/code/modules/clothing/chameleon.dm b/code/modules/clothing/chameleon.dm index 26500fb378..bd9ad08242 100644 --- a/code/modules/clothing/chameleon.dm +++ b/code/modules/clothing/chameleon.dm @@ -1,5 +1,3 @@ -#define EMP_RANDOMISE_TIME 300 - /datum/action/item_action/chameleon/drone/randomise name = "Randomise Headgear" button_icon_state = "random" @@ -73,20 +71,13 @@ var/chameleon_type = null var/chameleon_name = "Item" - var/emp_timer - /datum/action/item_action/chameleon/change/proc/initialize_disguises() if(button) button.name = "Change [chameleon_name] Appearance" chameleon_blacklist += target.type var/list/temp_list = typesof(chameleon_type) for(var/V in temp_list - (chameleon_blacklist)) - if(ispath(V, /obj/item)) - var/obj/item/I = V - if(initial(I.flags) & ABSTRACT) - continue - else - chameleon_list += I + chameleon_list += V /datum/action/item_action/chameleon/change/proc/select_look(mob/user) var/list/item_names = list() @@ -95,7 +86,7 @@ var/obj/item/I = U item_names += initial(I.name) var/picked_name - picked_name = input("Select [chameleon_name] to change into", "Chameleon [chameleon_name]", picked_name) in item_names + picked_name = input("Select [chameleon_name] to change it to", "Chameleon [chameleon_name]", picked_name) in item_names if(!picked_name) return for(var/V in chameleon_list) @@ -128,7 +119,8 @@ return update_item(picked_item) - update_item_icon() + + C.regenerate_icons() //so our overlays update. UpdateButtonIcon() /datum/action/item_action/chameleon/change/proc/update_item(obj/item/picked_item) @@ -152,48 +144,6 @@ select_look(owner) return 1 -/datum/action/item_action/chameleon/change/proc/emp_randomise() - START_PROCESSING(SSprocessing, src) - random_look(owner) - - emp_timer = world.time + EMP_RANDOMISE_TIME - -/datum/action/item_action/chameleon/change/process() - if(world.time > emp_timer) - STOP_PROCESSING(SSprocessing, src) - return - random_look(owner) - -/datum/action/item_action/chameleon/change/proc/update_item_icon() - var/obj/item/I = target - var/mob/living/M = owner - - var/flags = I.slot_flags - if(flags & SLOT_OCLOTHING) - M.update_inv_wear_suit() - if(flags & SLOT_ICLOTHING) - M.update_inv_w_uniform() - if(flags & SLOT_GLOVES) - M.update_inv_gloves() - if(flags & SLOT_EYES) - M.update_inv_glasses() - if(flags & SLOT_EARS) - M.update_inv_ears() - if(flags & SLOT_MASK) - M.update_inv_wear_mask() - if(flags & SLOT_HEAD) - M.update_inv_head() - if(flags & SLOT_FEET) - M.update_inv_shoes() - if(flags & SLOT_ID) - M.update_inv_wear_id() - if(flags & SLOT_BELT) - M.update_inv_belt() - if(flags & SLOT_BACK) - M.update_inv_back() - if(flags & SLOT_NECK) - M.update_inv_neck() - /obj/item/clothing/under/chameleon //starts off as black name = "black jumpsuit" @@ -204,21 +154,16 @@ origin_tech = "syndicate=2" sensor_mode = 0 //Hey who's this guy on the Syndicate Shuttle?? random_sensor = 0 - resistance_flags = 0 - armor = list(melee = 10, bullet = 10, laser = 10, energy = 0, bomb = 0, bio = 0, rad = 0, fire = 50, acid = 50) - - var/datum/action/item_action/chameleon/change/chameleon_action + burn_state = FIRE_PROOF + armor = list(melee = 10, bullet = 10, laser = 10, energy = 0, bomb = 0, bio = 0, rad = 0) /obj/item/clothing/under/chameleon/New() ..() - chameleon_action = new(src) + var/datum/action/item_action/chameleon/change/chameleon_action = new(src) chameleon_action.chameleon_type = /obj/item/clothing/under chameleon_action.chameleon_name = "Jumpsuit" chameleon_action.initialize_disguises() -/obj/item/clothing/under/chameleon/emp_act(severity) - chameleon_action.emp_randomise() - /obj/item/clothing/suit/chameleon name = "armor" desc = "A slim armored vest that protects against most types of damage." @@ -226,73 +171,58 @@ item_state = "armor" blood_overlay_type = "armor" origin_tech = "syndicate=2" - resistance_flags = 0 - armor = list(melee = 10, bullet = 10, laser = 10, energy = 0, bomb = 0, bio = 0, rad = 0, fire = 50, acid = 50) - - var/datum/action/item_action/chameleon/change/chameleon_action + burn_state = FIRE_PROOF + armor = list(melee = 10, bullet = 10, laser = 10, energy = 0, bomb = 0, bio = 0, rad = 0) /obj/item/clothing/suit/chameleon/New() ..() - chameleon_action = new(src) + var/datum/action/item_action/chameleon/change/chameleon_action = new(src) chameleon_action.chameleon_type = /obj/item/clothing/suit chameleon_action.chameleon_name = "Suit" chameleon_action.initialize_disguises() -/obj/item/clothing/suit/chameleon/emp_act(severity) - chameleon_action.emp_randomise() - /obj/item/clothing/glasses/chameleon 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" item_state = "meson" origin_tech = "syndicate=2" - resistance_flags = 0 - armor = list(melee = 10, bullet = 10, laser = 10, energy = 0, bomb = 0, bio = 0, rad = 0, fire = 50, acid = 50) - - var/datum/action/item_action/chameleon/change/chameleon_action + burn_state = FIRE_PROOF + armor = list(melee = 10, bullet = 10, laser = 10, energy = 0, bomb = 0, bio = 0, rad = 0) /obj/item/clothing/glasses/chameleon/New() ..() - chameleon_action = new(src) + var/datum/action/item_action/chameleon/change/chameleon_action = new(src) chameleon_action.chameleon_type = /obj/item/clothing/glasses chameleon_action.chameleon_name = "Glasses" chameleon_action.initialize_disguises() -/obj/item/clothing/glasses/chameleon/emp_act(severity) - chameleon_action.emp_randomise() - /obj/item/clothing/gloves/chameleon desc = "These gloves will protect the wearer from electric shock." name = "insulated gloves" icon_state = "yellow" item_state = "ygloves" - resistance_flags = 0 - armor = list(melee = 10, bullet = 10, laser = 10, energy = 0, bomb = 0, bio = 0, rad = 0, fire = 50, acid = 50) - - var/datum/action/item_action/chameleon/change/chameleon_action + burn_state = FIRE_PROOF + armor = list(melee = 10, bullet = 10, laser = 10, energy = 0, bomb = 0, bio = 0, rad = 0) /obj/item/clothing/gloves/chameleon/New() ..() - chameleon_action = new(src) + var/datum/action/item_action/chameleon/change/chameleon_action = new(src) chameleon_action.chameleon_type = /obj/item/clothing/gloves chameleon_action.chameleon_name = "Gloves" chameleon_action.initialize_disguises() -/obj/item/clothing/gloves/chameleon/emp_act(severity) - chameleon_action.emp_randomise() - /obj/item/clothing/head/chameleon name = "grey cap" desc = "It's a baseball hat in a tasteful grey colour." icon_state = "greysoft" item_color = "grey" - resistance_flags = 0 - armor = list(melee = 5, bullet = 5, laser = 5, energy = 0, bomb = 0, bio = 0, rad = 0, fire = 50, acid = 50) + burn_state = FIRE_PROOF + armor = list(melee = 5, bullet = 5, laser = 5, energy = 0, bomb = 0, bio = 0, rad = 0) - var/datum/action/item_action/chameleon/change/chameleon_action + var/datum/action/item_action/chameleon/change/chameleon_action = null /obj/item/clothing/head/chameleon/New() ..() @@ -301,14 +231,11 @@ chameleon_action.chameleon_name = "Hat" chameleon_action.initialize_disguises() -/obj/item/clothing/head/chameleon/emp_act(severity) - chameleon_action.emp_randomise() - /obj/item/clothing/head/chameleon/drone // The camohat, I mean, holographic hat projection, is part of the // drone itself. flags = NODROP - armor = list(melee = 0, bullet = 0, laser = 0, energy = 0, bomb = 0, bio = 0, rad = 0, fire = 0, acid = 0) + armor = list(melee = 0, bullet = 0, laser = 0, energy = 0, bomb = 0, bio = 0, rad = 0) // which means it offers no protection, it's just air and light /obj/item/clothing/head/chameleon/drone/New() @@ -324,8 +251,8 @@ desc = "A face-covering mask that can be connected to an air supply. While good for concealing your identity, it isn't good for blocking gas flow." //More accurate icon_state = "gas_alt" item_state = "gas_alt" - resistance_flags = 0 - armor = list(melee = 5, bullet = 5, laser = 5, energy = 0, bomb = 0, bio = 0, rad = 0, fire = 50, acid = 50) + burn_state = FIRE_PROOF + armor = list(melee = 5, bullet = 5, laser = 5, energy = 0, bomb = 0, bio = 0, rad = 0) flags = BLOCK_GAS_SMOKE_EFFECT | MASKINTERNALS flags_inv = HIDEEARS|HIDEEYES|HIDEFACE|HIDEFACIALHAIR @@ -335,7 +262,7 @@ var/vchange = 1 - var/datum/action/item_action/chameleon/change/chameleon_action + var/datum/action/item_action/chameleon/change/chameleon_action = null /obj/item/clothing/mask/chameleon/New() ..() @@ -344,9 +271,6 @@ chameleon_action.chameleon_name = "Mask" chameleon_action.initialize_disguises() -/obj/item/clothing/mask/chameleon/emp_act(severity) - chameleon_action.emp_randomise() - /obj/item/clothing/mask/chameleon/attack_self(mob/user) vchange = !vchange user << "The voice changer is now [vchange ? "on" : "off"]!" @@ -355,7 +279,7 @@ /obj/item/clothing/mask/chameleon/drone //Same as the drone chameleon hat, undroppable and no protection flags = NODROP - armor = list(melee = 0, bullet = 0, laser = 0, energy = 0, bomb = 0, bio = 0, rad = 0, fire = 0, acid = 0) + armor = list(melee = 0, bullet = 0, laser = 0, energy = 0, bomb = 0, bio = 0, rad = 0) // Can drones use the voice changer part? Let's not find out. vchange = 0 @@ -367,7 +291,7 @@ var/datum/action/item_action/chameleon/drone/randomise/randomise_action = new(src) randomise_action.UpdateButtonIcon() -/obj/item/clothing/mask/chameleon/drone/attack_self(mob/user) +/obj/item/clothing/mask/chameleon/attack_self(mob/user) user << "The [src] does not have a voice changer." /obj/item/clothing/shoes/chameleon @@ -378,22 +302,17 @@ permeability_coefficient = 0.05 flags = NOSLIP origin_tech = "syndicate=2" - resistance_flags = 0 - pockets = /obj/item/weapon/storage/internal/pocket/shoes - armor = list(melee = 10, bullet = 10, laser = 10, energy = 0, bomb = 0, bio = 0, rad = 0, fire = 50, acid = 50) - - var/datum/action/item_action/chameleon/change/chameleon_action + burn_state = FIRE_PROOF + can_hold_items = 1 + armor = list(melee = 10, bullet = 10, laser = 10, energy = 0, bomb = 0, bio = 0, rad = 0) /obj/item/clothing/shoes/chameleon/New() ..() - chameleon_action = new(src) + var/datum/action/item_action/chameleon/change/chameleon_action = new(src) chameleon_action.chameleon_type = /obj/item/clothing/shoes chameleon_action.chameleon_name = "Shoes" chameleon_action.initialize_disguises() -/obj/item/clothing/shoes/chameleon/emp_act(severity) - chameleon_action.emp_randomise() - /obj/item/weapon/gun/energy/laser/chameleon name = "practice laser gun" desc = "A modified version of the basic laser gun, this one fires less concentrated energy bolts designed for target practice." @@ -403,59 +322,41 @@ pin = /obj/item/device/firing_pin cell_type = /obj/item/weapon/stock_parts/cell/bluespace - var/datum/action/item_action/chameleon/change/chameleon_action - /obj/item/weapon/gun/energy/laser/chameleon/New() ..() - chameleon_action = new(src) + var/datum/action/item_action/chameleon/change/chameleon_action = new(src) chameleon_action.chameleon_type = /obj/item/weapon/gun chameleon_action.chameleon_name = "Gun" chameleon_action.chameleon_blacklist = typesof(/obj/item/weapon/gun/magic) chameleon_action.initialize_disguises() -/obj/item/weapon/gun/energy/laser/chameleon/emp_act(severity) - chameleon_action.emp_randomise() - /obj/item/weapon/storage/backpack/chameleon name = "chameleon backpack" - var/datum/action/item_action/chameleon/change/chameleon_action /obj/item/weapon/storage/backpack/chameleon/New() ..() - chameleon_action = new(src) + var/datum/action/item_action/chameleon/change/chameleon_action = new(src) chameleon_action.chameleon_type = /obj/item/weapon/storage/backpack chameleon_action.chameleon_name = "Backpack" chameleon_action.initialize_disguises() -/obj/item/weapon/storage/backpack/chameleon/emp_act(severity) - chameleon_action.emp_randomise() - /obj/item/device/radio/headset/chameleon name = "chameleon headset" - var/datum/action/item_action/chameleon/change/chameleon_action /obj/item/device/radio/headset/chameleon/New() ..() - chameleon_action = new(src) + var/datum/action/item_action/chameleon/change/chameleon_action = new(src) chameleon_action.chameleon_type = /obj/item/device/radio/headset chameleon_action.chameleon_name = "Headset" chameleon_action.initialize_disguises() -/obj/item/device/radio/headset/chameleon/emp_act(severity) - chameleon_action.emp_randomise() - /obj/item/device/pda/chameleon name = "chameleon PDA" - var/datum/action/item_action/chameleon/change/chameleon_action /obj/item/device/pda/chameleon/New() ..() - chameleon_action = new(src) + var/datum/action/item_action/chameleon/change/chameleon_action = new(src) chameleon_action.chameleon_type = /obj/item/device/pda chameleon_action.chameleon_name = "PDA" chameleon_action.chameleon_blacklist = list(/obj/item/device/pda/ai) chameleon_action.initialize_disguises() - -/obj/item/device/pda/chameleon/emp_act(severity) - chameleon_action.emp_randomise() - diff --git a/code/modules/clothing/clothing.dm b/code/modules/clothing/clothing.dm index 1e31a3be11..e6e72588df 100644 --- a/code/modules/clothing/clothing.dm +++ b/code/modules/clothing/clothing.dm @@ -1,10 +1,6 @@ /obj/item/clothing name = "clothing" - resistance_flags = FLAMMABLE - obj_integrity = 200 - max_integrity = 200 - integrity_failure = 80 - var/damaged_clothes = 0 //similar to machine's BROKEN stat and structure's broken var + burn_state = FLAMMABLE var/flash_protect = 0 //Malk: What level of bright light protection item has. 1 = Flashers, Flashes, & Flashbangs | 2 = Welding | -1 = OH GOD WELDING BURNT OUT MY RETINAS var/tint = 0 //Malk: Sets the item's level of visual impairment tint, normally set to the same as flash_protect var/up = 0 // but seperated to allow items to protect but not impair vision, like space helmets @@ -28,83 +24,10 @@ var/list/user_vars_to_edit = list() //VARNAME = VARVALUE eg: "name" = "butts" var/list/user_vars_remembered = list() //Auto built by the above + dropped() + equipped() - var/obj/item/weapon/storage/internal/pocket/pockets = null - -/obj/item/clothing/New() - ..() - if(ispath(pockets)) - pockets = new pockets(src) - -/obj/item/clothing/MouseDrop(atom/over_object) - var/mob/M = usr - - if(pockets && over_object == M) - return pockets.MouseDrop(over_object) - - if(istype(usr.loc,/obj/mecha)) // stops inventory actions in a mech - return - - if(!M.restrained() && !M.stat && loc == M && istype(over_object, /obj/screen/inventory/hand)) - var/obj/screen/inventory/hand/H = over_object - if(!M.unEquip(src)) - return - M.put_in_hand(src, H.held_index) - add_fingerprint(usr) - -/obj/item/clothing/throw_at(atom/target, range, speed, mob/thrower, spin=1, diagonals_first = 0) - if(pockets) - pockets.close_all() - return ..() - -/obj/item/clothing/attack_hand(mob/user) - if(pockets && pockets.priority && ismob(loc)) - //If we already have the pockets open, close them. - if (user.s_active == pockets) - pockets.close(user) - //Close whatever the user has open and show them the pockets. - else - if (user.s_active) - user.s_active.close(user) - pockets.orient2hud(user) - pockets.show_to(user) - else - return ..() - -/obj/item/clothing/attackby(obj/item/W, mob/user, params) - if(damaged_clothes && istype(W, /obj/item/stack/sheet/cloth)) - var/obj/item/stack/sheet/cloth/C = W - C.use(1) - update_clothes_damaged_state(FALSE) - obj_integrity = max_integrity - user << "You fix the damages on [src] with [C]." - return 1 - if(pockets) - return pockets.attackby(W, user, params) - else - return ..() - -/obj/item/clothing/AltClick(mob/user) - if(pockets && pockets.quickdraw && pockets.contents.len && !user.incapacitated()) - var/obj/item/I = pockets.contents[1] - if(!I) - return - pockets.remove_from_storage(I, get_turf(src)) - - if(!user.put_in_hands(I)) - user << "You fumble for [I] and it falls on the floor." - return 1 - user.visible_message("[user] draws [I] from [src]!", "You draw [I] from [src].") - return 1 - else - return ..() - /obj/item/clothing/Destroy() if(isliving(loc)) dropped(loc) - if(pockets) - qdel(pockets) - pockets = null user_vars_remembered = null //Oh god somebody put REFERENCES in here? not to worry, we'll clean it up return ..() @@ -129,42 +52,14 @@ user.vars[variable] = user_vars_to_edit[variable] -/obj/item/clothing/examine(mob/user) - ..() - if(damaged_clothes) - user << "It looks damaged!" - -/obj/item/clothing/obj_break(damage_flag) - if(!damaged_clothes) - update_clothes_damaged_state(TRUE) - -var/list/damaged_clothes_icons = list() - -/obj/item/clothing/proc/update_clothes_damaged_state(damaging = TRUE) - var/index = "\ref[initial(icon)]-[initial(icon_state)]" - if(damaging) - damaged_clothes = 1 - var/icon/damaged_clothes_icon = damaged_clothes_icons[index] - if(!damaged_clothes_icon) - damaged_clothes_icon = icon(initial(icon), initial(icon_state), , 1) //we only want to apply damaged effect to the initial icon_state for each object - damaged_clothes_icon.Blend("#fff", ICON_ADD) //fills the icon_state with white (except where it's transparent) - damaged_clothes_icon.Blend(icon('icons/effects/item_damage.dmi', "itemdamaged"), ICON_MULTIPLY) //adds damage effect and the remaining white areas become transparant - damaged_clothes_icon = fcopy_rsc(damaged_clothes_icon) - damaged_clothes_icons[index] = damaged_clothes_icon - add_overlay(damaged_clothes_icon, 1) - else - damaged_clothes = 0 - overlays -= damaged_clothes_icons[index] - priority_overlays -= damaged_clothes_icons[index] - //Ears: currently only used for headsets and earmuffs /obj/item/clothing/ears name = "ears" - w_class = WEIGHT_CLASS_TINY + w_class = 1 throwforce = 0 slot_flags = SLOT_EARS - resistance_flags = 0 + burn_state = FIRE_PROOF /obj/item/clothing/ears/earmuffs name = "earmuffs" @@ -174,13 +69,13 @@ var/list/damaged_clothes_icons = list() flags = EARBANGPROTECT strip_delay = 15 put_on_delay = 25 - resistance_flags = FLAMMABLE + burn_state = FLAMMABLE //Glasses /obj/item/clothing/glasses name = "glasses" icon = 'icons/obj/clothing/glasses.dmi' - w_class = WEIGHT_CLASS_SMALL + w_class = 2 flags_cover = GLASSESCOVERSEYES slot_flags = SLOT_EYES var/vision_flags = 0 @@ -192,7 +87,7 @@ var/list/damaged_clothes_icons = list() var/vision_correction = 0 //does wearing these glasses correct some of our vision defects? strip_delay = 20 put_on_delay = 25 - resistance_flags = 0 + burn_state = FIRE_PROOF /* SEE_SELF // can see self, no matter what SEE_MOBS // can see all mobs, no matter what @@ -208,7 +103,7 @@ BLIND // can't see anything /obj/item/clothing/gloves name = "gloves" gender = PLURAL //Carn: for grammarically correct text-parsing - w_class = WEIGHT_CLASS_SMALL + w_class = 2 icon = 'icons/obj/clothing/gloves.dmi' siemens_coefficient = 0.50 body_parts_covered = HANDS @@ -219,19 +114,12 @@ BLIND // can't see anything put_on_delay = 40 -/obj/item/clothing/gloves/worn_overlays(isinhands = FALSE) +/obj/item/clothing/gloves/worn_overlays(var/isinhands = FALSE) . = list() if(!isinhands) - if(damaged_clothes) - . += image("icon"='icons/effects/item_damage.dmi', "icon_state"="damagedgloves") if(blood_DNA) . += image("icon"='icons/effects/blood.dmi', "icon_state"="bloodyhands") -/obj/item/clothing/gloves/update_clothes_damaged_state(damaging = TRUE) - ..() - if(ismob(loc)) - var/mob/M = loc - M.update_inv_gloves() // Called just before an attack_hand(), in mob/UnarmedAttack() /obj/item/clothing/gloves/proc/Touch(atom/A, proximity) @@ -247,40 +135,12 @@ BLIND // can't see anything var/can_toggle = null -/obj/item/clothing/head/worn_overlays(isinhands = FALSE) +/obj/item/clothing/head/worn_overlays(var/isinhands = FALSE) . = list() if(!isinhands) - if(damaged_clothes) - . += image("icon"='icons/effects/item_damage.dmi', "icon_state"="damagedhelmet") if(blood_DNA) . += image("icon"='icons/effects/blood.dmi', "icon_state"="helmetblood") -/obj/item/clothing/head/update_clothes_damaged_state(damaging = TRUE) - ..() - if(ismob(loc)) - var/mob/M = loc - M.update_inv_head() - - -//Neck -/obj/item/clothing/neck - name = "necklace" - icon = 'icons/obj/clothing/neck.dmi' - body_parts_covered = NECK - slot_flags = SLOT_NECK - strip_delay = 40 - put_on_delay = 40 - -/obj/item/clothing/neck/worn_overlays(isinhands = FALSE) - . = list() - if(!isinhands) - if(body_parts_covered & HEAD) - if(damaged_clothes) - . += image("icon"='icons/effects/item_damage.dmi', "icon_state"="damagedmask") - if(blood_DNA) - . += image("icon"='icons/effects/blood.dmi', "icon_state"="maskblood") - - //Mask /obj/item/clothing/mask name = "mask" @@ -293,21 +153,11 @@ BLIND // can't see anything var/adjusted_flags = null -/obj/item/clothing/mask/worn_overlays(isinhands = FALSE) +/obj/item/clothing/mask/worn_overlays(var/isinhands = FALSE) . = list() if(!isinhands) - if(body_parts_covered & HEAD) - if(damaged_clothes) - . += image("icon"='icons/effects/item_damage.dmi', "icon_state"="damagedmask") - if(blood_DNA) - . += image("icon"='icons/effects/blood.dmi', "icon_state"="maskblood") - -/obj/item/clothing/mask/update_clothes_damaged_state(damaging = TRUE) - ..() - if(ismob(loc)) - var/mob/M = loc - M.update_inv_wear_mask() - + if(blood_DNA && (body_parts_covered & HEAD)) + . += image("icon"='icons/effects/blood.dmi', "icon_state"="maskblood") //Override this to modify speech like luchador masks. /obj/item/clothing/mask/proc/speechModification(message) @@ -359,8 +209,12 @@ BLIND // can't see anything slowdown = SHOES_SLOWDOWN var/blood_state = BLOOD_STATE_NOT_BLOODY var/list/bloody_shoes = list(BLOOD_STATE_HUMAN = 0,BLOOD_STATE_XENO = 0, BLOOD_STATE_OIL = 0, BLOOD_STATE_NOT_BLOODY = 0) + var/can_hold_items = 0//if set to 1, the shoe can hold knives and edaggers + var/obj/held_item + var/list/valid_held_items = list(/obj/item/weapon/kitchen/knife, /obj/item/weapon/pen, /obj/item/weapon/switchblade, /obj/item/weapon/scalpel, /obj/item/weapon/reagent_containers/syringe, /obj/item/weapon/dnainjector)//can hold both regular pens and energy daggers. made for your every-day tactical librarians/murderers. -/obj/item/clothing/shoes/worn_overlays(isinhands = FALSE) + +/obj/item/clothing/shoes/worn_overlays(var/isinhands = FALSE) . = list() if(!isinhands) var/bloody = 0 @@ -369,16 +223,9 @@ BLIND // can't see anything else bloody = bloody_shoes[BLOOD_STATE_HUMAN] - if(damaged_clothes) - . += image("icon"='icons/effects/item_damage.dmi', "icon_state"="damagedshoe") if(bloody) . += image("icon"='icons/effects/blood.dmi', "icon_state"="shoeblood") -/obj/item/clothing/shoes/update_clothes_damaged_state(damaging = TRUE) - ..() - if(ismob(loc)) - var/mob/M = loc - M.update_inv_shoes() /obj/item/clothing/shoes/clean_blood() ..() @@ -388,6 +235,33 @@ BLIND // can't see anything var/mob/M = loc M.update_inv_shoes() +/obj/item/clothing/shoes/attackby(obj/item/I, mob/user, params) + ..() + if(!can_hold_items) + return + if(held_item) + user << "There's already something in [src]." + return + if(is_type_in_list(I, valid_held_items))//can hold both regular pens and energy daggers. made for your every-day tactical librarians/murderers. + if(I.w_class > 2)//if the object is too big (like if it's a cleaver or an extended edagger) it wont fit + user << "[I] is currently too big to fit into [src]. " + return + if(!user.drop_item()) + return + I.loc = src + held_item = I + user << "You discreetly slip [I] into [src]. Alt-click [src] to remove it." + +/obj/item/clothing/shoes/AltClick(mob/user) + if(user.incapacitated() || !held_item || !can_hold_items) + return + if(!user.put_in_hands(held_item)) + user << "You fumble for [held_item] and it falls on the floor." + return 1 + held_item = null + user.visible_message("[user] draws [held_item] from their shoes!", "You draw [held_item] from [src].") + held_item = null + /obj/item/proc/negates_gravity() return 0 @@ -397,26 +271,18 @@ BLIND // can't see anything name = "suit" var/fire_resist = T0C+100 allowed = list(/obj/item/weapon/tank/internals/emergency_oxygen) - armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 0, rad = 0, fire = 0, acid = 0) + armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 0, rad = 0) slot_flags = SLOT_OCLOTHING var/blood_overlay_type = "suit" var/togglename = null -/obj/item/clothing/suit/worn_overlays(isinhands = FALSE) +/obj/item/clothing/suit/worn_overlays(var/isinhands = FALSE) . = list() if(!isinhands) - if(damaged_clothes) - . += image("icon"='icons/effects/item_damage.dmi', "icon_state"="damaged[blood_overlay_type]") if(blood_DNA) . += image("icon"='icons/effects/blood.dmi', "icon_state"="[blood_overlay_type]blood") -/obj/item/clothing/suit/update_clothes_damaged_state(damaging = TRUE) - ..() - if(ismob(loc)) - var/mob/M = loc - M.update_inv_wear_suit() - //Spacesuit //Note: Everything in modules/clothing/spacesuits should have the entire suit grouped together. // Meaning the the suit is defined directly after the corrisponding helmet. Just like below! @@ -427,7 +293,7 @@ BLIND // can't see anything flags = STOPSPRESSUREDMAGE | THICKMATERIAL item_state = "spaceold" permeability_coefficient = 0.01 - armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 100, rad = 50, fire = 80, acid = 70) + armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 100, rad = 50) flags_inv = HIDEMASK|HIDEEARS|HIDEEYES|HIDEFACE|HIDEHAIR|HIDEFACIALHAIR cold_protection = HEAD min_cold_protection_temperature = SPACE_HELM_MIN_TEMP_PROTECT @@ -437,21 +303,21 @@ BLIND // can't see anything strip_delay = 50 put_on_delay = 50 flags_cover = HEADCOVERSEYES | HEADCOVERSMOUTH - resistance_flags = 0 + burn_state = FIRE_PROOF /obj/item/clothing/suit/space name = "space suit" desc = "A suit that protects against low pressure environments. Has a big 13 on the back." icon_state = "spaceold" item_state = "s_suit" - w_class = WEIGHT_CLASS_BULKY + w_class = 4//bulky item gas_transfer_coefficient = 0.01 permeability_coefficient = 0.02 flags = STOPSPRESSUREDMAGE | THICKMATERIAL body_parts_covered = CHEST|GROIN|LEGS|FEET|ARMS|HANDS allowed = list(/obj/item/device/flashlight,/obj/item/weapon/tank/internals) slowdown = 1 - armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 100, rad = 50, fire = 80, acid = 70) + armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 100, rad = 50) flags_inv = HIDEGLOVES|HIDESHOES|HIDEJUMPSUIT cold_protection = CHEST | GROIN | LEGS | FEET | ARMS | HANDS min_cold_protection_temperature = SPACE_SUIT_MIN_TEMP_PROTECT @@ -459,7 +325,7 @@ BLIND // can't see anything max_heat_protection_temperature = SPACE_SUIT_MAX_TEMP_PROTECT strip_delay = 80 put_on_delay = 80 - resistance_flags = 0 + burn_state = FIRE_PROOF //Under clothing @@ -469,122 +335,72 @@ BLIND // can't see anything body_parts_covered = CHEST|GROIN|LEGS|ARMS permeability_coefficient = 0.90 slot_flags = SLOT_ICLOTHING - armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 0, rad = 0, fire = 0, acid = 0) + armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 0, rad = 0) var/fitted = FEMALE_UNIFORM_FULL // For use in alternate clothing styles for women var/has_sensor = 1//For the crew computer 2 = unable to change mode var/random_sensor = 1 var/sensor_mode = 0 /* 1 = Report living/dead, 2 = Report detailed damages, 3 = Report location */ var/can_adjust = 1 - var/adjusted = NORMAL_STYLE + var/adjusted = 0 var/alt_covers_chest = 0 // for adjusted/rolled-down jumpsuits, 0 = exposes chest and arms, 1 = exposes arms only var/obj/item/clothing/tie/hastie = null - var/mutantrace_variation = NO_MUTANTRACE_VARIATION //Are there special sprites for specific situations? Don't use this unless you need to. -/obj/item/clothing/under/worn_overlays(isinhands = FALSE) +/obj/item/clothing/under/worn_overlays(var/isinhands = FALSE) . = list() if(!isinhands) - - if(damaged_clothes) - . += image("icon"='icons/effects/item_damage.dmi', "icon_state"="damageduniform") if(blood_DNA) . += image("icon"='icons/effects/blood.dmi', "icon_state"="uniformblood") + if(hastie) var/tie_color = hastie.item_color if(!tie_color) tie_color = hastie.icon_state - var/image/tI = image("icon"='icons/mob/ties.dmi', "icon_state"="[tie_color]") - tI.alpha = hastie.alpha - tI.color = hastie.color - . += tI + . += image("icon"='icons/mob/ties.dmi', "icon_state"="[tie_color]") -/obj/item/clothing/under/update_clothes_damaged_state(damaging = TRUE) - ..() - if(ismob(loc)) - var/mob/M = loc - M.update_inv_w_uniform() /obj/item/clothing/under/New() if(random_sensor) //make the sensor mode favor higher levels, except coords. sensor_mode = pick(0, 1, 1, 2, 2, 2, 3, 3) - adjusted = NORMAL_STYLE - ..() - -/obj/item/clothing/under/equipped(mob/user, slot) - ..() - if(adjusted) - adjusted = NORMAL_STYLE - fitted = initial(fitted) - if(!alt_covers_chest) - body_parts_covered |= CHEST - - if(mutantrace_variation && ishuman(user)) - var/mob/living/carbon/human/H = user - if(DIGITIGRADE in H.dna.species.species_traits) - adjusted = DIGITIGRADE_STYLE - H.update_inv_w_uniform() - - if(hastie) - hastie.on_uniform_equip(src, user) - -/obj/item/clothing/under/dropped(mob/user) - if(hastie) - hastie.on_uniform_dropped(src, user) + adjusted = 0 ..() /obj/item/clothing/under/attackby(obj/item/I, mob/user, params) - if(!attachTie(I, user)) - ..() + attachTie(I, user) + ..() /obj/item/clothing/under/proc/attachTie(obj/item/I, mob/user, notifyAttach = 1) if(istype(I, /obj/item/clothing/tie)) - var/obj/item/clothing/tie/T = I if(hastie) if(user) user << "[src] already has an accessory." return 0 else - if(user && !user.drop_item()) - return - if(!T.attach(src, user)) - return - + if(user) + if(!user.drop_item()) + return + hastie = I + I.loc = src if(user && notifyAttach) user << "You attach [I] to [src]." + I.transform *= 0.5 //halve the size so it doesn't overpower the under + I.pixel_x += 8 + I.pixel_y -= 8 + I.layer = FLOAT_LAYER + add_overlay(I) - if(ishuman(loc)) + + if(istype(loc, /mob/living/carbon/human)) var/mob/living/carbon/human/H = loc H.update_inv_w_uniform() return 1 -/obj/item/clothing/under/proc/removetie(mob/user) - if(!isliving(user)) - return - if(!can_use(user)) - return - - if(hastie) - var/obj/item/clothing/tie/T = hastie - hastie.detach(src, user) - if(user.put_in_hands(T)) - user << "You detach [T] from [src]." - else - user << "You detach [T] from [src] and it falls on the floor." - - if(ishuman(loc)) - var/mob/living/carbon/human/H = loc - H.update_inv_w_uniform() - /obj/item/clothing/under/examine(mob/user) ..() - if(adjusted == ALT_STYLE) - user << "Alt-click on [src] to wear it normally." - else - user << "Alt-click on [src] to wear it casually." - switch(sensor_mode) + switch(src.sensor_mode) if(0) user << "Its sensors appear to be disabled." if(1) @@ -637,7 +453,7 @@ BLIND // can't see anything if(3) usr << "Your suit will now report your exact vital lifesigns as well as your coordinate position." - if(ishuman(loc)) + if(istype(loc,/mob/living/carbon/human)) var/mob/living/carbon/human/H = loc if(H.w_uniform == src) H.update_suit_sensors() @@ -645,17 +461,12 @@ BLIND // can't see anything ..() /obj/item/clothing/under/AltClick(mob/user) - if(..()) - return 1 - + ..() if(!user.canUseTopic(src, be_close=TRUE)) user << "You can't do that right now!" return else - if(hastie) - removetie(user) - else - rolldown() + rolldown() /obj/item/clothing/under/verb/jumpsuit_adjust() set name = "Adjust Jumpsuit Style" @@ -673,65 +484,73 @@ BLIND // can't see anything usr << "You adjust the suit to wear it more casually." else usr << "You adjust the suit back to normal." - if(ishuman(usr)) - var/mob/living/carbon/human/H = usr - H.update_inv_w_uniform() - H.update_body() + usr.update_inv_w_uniform() /obj/item/clothing/under/proc/toggle_jumpsuit_adjust() - if(adjusted == DIGITIGRADE_STYLE) - return adjusted = !adjusted if(adjusted) if(fitted != FEMALE_UNIFORM_TOP) fitted = NO_FEMALE_UNIFORM - if(!alt_covers_chest) // for the special snowflake suits that expose the chest when adjusted - body_parts_covered &= ~CHEST + if (alt_covers_chest) // for the special snowflake suits that don't expose the chest when adjusted + body_parts_covered = CHEST|GROIN|LEGS + else + body_parts_covered = GROIN|LEGS else fitted = initial(fitted) - if(!alt_covers_chest) - body_parts_covered |= CHEST + body_parts_covered = CHEST|GROIN|LEGS|ARMS return adjusted -/obj/item/clothing/proc/weldingvisortoggle(mob/user) //proc to toggle welding visors on helmets, masks, goggles, etc. - if(!can_use(user)) - return FALSE +/obj/item/clothing/under/examine(mob/user) + ..() + if(src.adjusted) + user << "Alt-click on [src] to wear it normally." + else + user << "Alt-click on [src] to wear it casually." - visor_toggling() +/obj/item/clothing/under/verb/removetie() + set name = "Remove Accessory" + set category = "Object" + set src in usr + if(!istype(usr, /mob/living)) + return + if(!can_use(usr)) + return - user << "You adjust \the [src] [up ? "up" : "down"]." + if(hastie) + hastie.transform *= 2 + hastie.pixel_x -= 8 + hastie.pixel_y += 8 + hastie.layer = initial(hastie.layer) + overlays = null + usr.put_in_hands(hastie) + hastie = null - if(iscarbon(user)) - var/mob/living/carbon/C = user - C.head_update(src, forced = 1) - for(var/X in actions) - var/datum/action/A = X - A.UpdateButtonIcon() - return TRUE + if(istype(loc, /mob/living/carbon/human)) + var/mob/living/carbon/human/H = loc + H.update_inv_w_uniform() -/obj/item/clothing/proc/visor_toggling() //handles all the actual toggling of flags - up = !up +/obj/item/clothing/proc/weldingvisortoggle() //Malk: proc to toggle welding visors on helmets, masks, goggles, etc. + if(!can_use(usr)) + return + + up ^= 1 flags ^= visor_flags flags_inv ^= visor_flags_inv flags_cover ^= initial(flags_cover) icon_state = "[initial(icon_state)][up ? "up" : ""]" + usr << "You adjust \the [src] [up ? "up" : "down"]." flash_protect ^= initial(flash_protect) tint ^= initial(tint) + if(istype(usr, /mob/living/carbon)) + var/mob/living/carbon/C = usr + C.head_update(src, forced = 1) + for(var/X in actions) + var/datum/action/A = X + A.UpdateButtonIcon() /obj/item/clothing/proc/can_use(mob/user) if(user && ismob(user)) if(!user.incapacitated()) return 1 return 0 - - -/obj/item/clothing/obj_destruction(damage_flag) - if(damage_flag == "bomb" || damage_flag == "melee") - var/turf/T = get_turf(src) - spawn(1) //so the shred survives potential turf change from the explosion. - var/obj/effect/decal/cleanable/shreds/Shreds = new(T) - Shreds.desc = "The sad remains of what used to be [name]." - deconstruct(FALSE) - else - ..() diff --git a/code/modules/clothing/glasses/engine_goggles.dm b/code/modules/clothing/glasses/engine_goggles.dm index a44178fc92..5f9df78872 100644 --- a/code/modules/clothing/glasses/engine_goggles.dm +++ b/code/modules/clothing/glasses/engine_goggles.dm @@ -42,7 +42,7 @@ if(!mode) return - if(!ishuman(loc)) + if(!istype(loc,/mob/living/carbon/human)) invis_update() return @@ -78,7 +78,7 @@ O.invisibility = INVISIBILITY_MAXIMUM /obj/item/clothing/glasses/meson/engine/proc/t_ray_on() - if(!ishuman(loc)) + if(!istype(loc,/mob/living/carbon/human)) return 0 var/mob/living/carbon/human/user = loc diff --git a/code/modules/clothing/glasses/glasses.dm b/code/modules/clothing/glasses/glasses.dm index 59ee3e5bac..45dbc0b8de 100644 --- a/code/modules/clothing/glasses/glasses.dm +++ b/code/modules/clothing/glasses/glasses.dm @@ -1,18 +1,6 @@ /obj/item/clothing/glasses name = "glasses" materials = list(MAT_GLASS = 250) - var/glass_colour_type = null //colors your vision when worn - -/obj/item/clothing/glasses/visor_toggling() - ..() - vision_flags ^= initial(vision_flags) - darkness_view ^= initial(darkness_view) - invis_view ^= initial(invis_view) - -/obj/item/clothing/glasses/weldingvisortoggle(mob/user) - . = ..() - if(. && user) - user.update_sight() //called when thermal glasses are emped. /obj/item/clothing/glasses/proc/thermal_overload() @@ -21,7 +9,7 @@ if(!(H.disabilities & BLIND)) if(H.glasses == src) H << "The [src] overloads and blinds you!" - H.flash_act(visual = 1) + H.flash_eyes(visual = 1) H.blind_eyes(3) H.blur_eyes(5) H.adjust_eye_damage(5) @@ -35,7 +23,6 @@ darkness_view = 2 vision_flags = SEE_TURFS invis_view = SEE_INVISIBLE_MINIMUM - glass_colour_type = /datum/client_colour/glass_colour/lightgreen /obj/item/clothing/glasses/meson/night name = "Night Vision Optical Meson Scanner" @@ -44,7 +31,6 @@ item_state = "nvgmeson" origin_tech = "magnets=4;engineering=5;plasmatech=4" darkness_view = 8 - glass_colour_type = /datum/client_colour/glass_colour/green /obj/item/clothing/glasses/meson/gar name = "gar mesons" @@ -66,9 +52,6 @@ origin_tech = "magnets=2;engineering=1" scan_reagents = 1 //You can see reagents while wearing science goggles actions_types = list(/datum/action/item_action/toggle_research_scanner) - glass_colour_type = /datum/client_colour/glass_colour/purple - resistance_flags = ACID_PROOF - armor = list(melee = 0, bullet = 0, laser = 0, energy = 0, bomb = 0, bio = 0, rad = 0, fire = 80, acid = 100) /obj/item/clothing/glasses/science/item_action_slot_check(slot) if(slot == slot_glasses) @@ -82,7 +65,6 @@ origin_tech = "materials=4;magnets=4;plasmatech=4;engineering=4" darkness_view = 8 invis_view = SEE_INVISIBLE_MINIMUM - glass_colour_type = /datum/client_colour/glass_colour/green /obj/item/clothing/glasses/eyepatch name = "eyepatch" @@ -103,7 +85,6 @@ item_state = "glasses" origin_tech = "magnets=3;engineering=3" vision_flags = SEE_OBJS - glass_colour_type = /datum/client_colour/glass_colour/lightblue /obj/item/clothing/glasses/material/mining name = "Optical Material Scanner" @@ -124,7 +105,6 @@ attack_verb = list("sliced") hitsound = 'sound/weapons/bladeslice.ogg' sharpness = IS_SHARP - glass_colour_type = /datum/client_colour/glass_colour/lightgreen /obj/item/clothing/glasses/regular name = "Prescription Glasses" @@ -139,7 +119,11 @@ icon_state = "hipster_glasses" item_state = "hipster_glasses" -//Here lies green glasses, so ugly they died. RIP +/obj/item/clothing/glasses/gglasses + name = "Green Glasses" + desc = "Forest green glasses, like the kind you'd wear when hatching a nasty scheme." + icon_state = "gglasses" + item_state = "gglasses" /obj/item/clothing/glasses/sunglasses desc = "Strangely ancient technology used to help provide rudimentary eye cover. Enhanced shielding blocks many flashes." @@ -149,7 +133,7 @@ darkness_view = 1 flash_protect = 1 tint = 1 - glass_colour_type = /datum/client_colour/glass_colour/gray + dog_fashion = /datum/dog_fashion/head /obj/item/clothing/glasses/sunglasses/reagent @@ -189,7 +173,6 @@ attack_verb = list("sliced") hitsound = 'sound/weapons/bladeslice.ogg' sharpness = IS_SHARP - glass_colour_type = /datum/client_colour/glass_colour/orange /obj/item/clothing/glasses/sunglasses/gar/supergar desc = "We evolve past the person we were a minute before. Little by little we advance with each turn. That's how a drill works!" @@ -198,7 +181,6 @@ item_state = "gar" force = 12 throwforce = 12 - glass_colour_type = /datum/client_colour/glass_colour/red /obj/item/clothing/glasses/welding name = "welding goggles" @@ -211,10 +193,18 @@ tint = 2 flags_cover = GLASSESCOVERSEYES visor_flags_inv = HIDEEYES - glass_colour_type = /datum/client_colour/glass_colour/gray -/obj/item/clothing/glasses/welding/attack_self(mob/user) - weldingvisortoggle(user) + +/obj/item/clothing/glasses/welding/attack_self() + toggle() + + +/obj/item/clothing/glasses/welding/verb/toggle() + set category = "Object" + set name = "Adjust welding goggles" + set src in usr + + weldingvisortoggle() /obj/item/clothing/glasses/sunglasses/blindfold @@ -240,7 +230,6 @@ vision_flags = SEE_MOBS invis_view = 2 flash_protect = 0 - glass_colour_type = /datum/client_colour/glass_colour/red /obj/item/clothing/glasses/thermal/emp_act(severity) thermal_overload() @@ -284,14 +273,12 @@ desc = "A sweet pair of orange shades." icon_state = "orangeglasses" item_state = "orangeglasses" - glass_colour_type = /datum/client_colour/glass_colour/lightorange /obj/item/clothing/glasses/red name = "red glasses" - desc = "Hey, you're looking good, senpai!" + desc = "A sweet pair of red shades." icon_state = "redglasses" item_state = "redglasses" - glass_colour_type = /datum/client_colour/glass_colour/red /obj/item/clothing/glasses/godeye name = "eye of god" @@ -304,20 +291,6 @@ flags = NODROP invis_view = SEE_INVISIBLE_MINIMUM -/obj/item/clothing/glasses/godeye/attackby(obj/item/weapon/W as obj, mob/user as mob, params) - if(istype(W, src) && W != src && W.loc == user) - if(W.icon_state == "godeye") - W.icon_state = "doublegodeye" - W.item_state = "doublegodeye" - W.desc = "A pair of strange eyes, said to have been torn from an omniscient creature that used to roam the wastes. There's no real reason to have two, but that isn't stopping you." - if(iscarbon(user)) - var/mob/living/carbon/C = user - C.update_inv_wear_mask() - else - user << "The eye winks at you and vanishes into the abyss, you feel really unlucky." - qdel(src) - ..() - /obj/item/clothing/glasses/proc/chameleon(var/mob/user) var/input_glasses = input(user, "Choose a piece of eyewear to disguise as.", "Choose glasses style.") as null|anything in list("Sunglasses", "Medical HUD", "Mesons", "Science Goggles", "Glasses", "Security Sunglasses","Eyepatch","Welding","Gar") @@ -369,35 +342,3 @@ icon_state = "gar" item_state = "gar" - -/obj/item/clothing/glasses/AltClick(mob/user) - if(glass_colour_type && ishuman(user)) - var/mob/living/carbon/human/H = user - if(H.client) - if(H.client.prefs) - if(src == H.glasses) - H.client.prefs.uses_glasses_colour = !H.client.prefs.uses_glasses_colour - if(H.client.prefs.uses_glasses_colour) - H << "You will now see glasses colors." - else - H << "You will no longer see glasses colors." - H.update_glasses_color(src, 1) - else - return ..() - -/obj/item/clothing/glasses/proc/change_glass_color(mob/living/carbon/human/H, datum/client_colour/glass_colour/new_color_type) - var/old_colour_type = glass_colour_type - if(!new_color_type || ispath(new_color_type)) //the new glass colour type must be null or a path. - glass_colour_type = new_color_type - if(H && H.glasses == src) - if(old_colour_type) - H.remove_client_colour(old_colour_type) - if(glass_colour_type) - H.update_glasses_color(src, 1) - - -/mob/living/carbon/human/proc/update_glasses_color(obj/item/clothing/glasses/G, glasses_equipped) - if(client && client.prefs.uses_glasses_colour && glasses_equipped) - add_client_colour(G.glass_colour_type) - else - remove_client_colour(G.glass_colour_type) diff --git a/code/modules/clothing/glasses/hud.dm b/code/modules/clothing/glasses/hud.dm index a95be705b9..867eaa7ab1 100644 --- a/code/modules/clothing/glasses/hud.dm +++ b/code/modules/clothing/glasses/hud.dm @@ -6,7 +6,6 @@ var/hud_type = null /obj/item/clothing/glasses/hud/equipped(mob/living/carbon/human/user, slot) - ..() if(hud_type && slot == slot_glasses) var/datum/atom_hud/H = huds[hud_type] H.add_hud_to(user) @@ -34,7 +33,6 @@ icon_state = "healthhud" origin_tech = "magnets=3;biotech=2" hud_type = DATA_HUD_MEDICAL_ADVANCED - glass_colour_type = /datum/client_colour/glass_colour/lightblue /obj/item/clothing/glasses/hud/health/night name = "Night Vision Health Scanner HUD" @@ -44,7 +42,6 @@ origin_tech = "magnets=4;biotech=4;plasmatech=4;engineering=5" darkness_view = 8 invis_view = SEE_INVISIBLE_MINIMUM - glass_colour_type = /datum/client_colour/glass_colour/green /obj/item/clothing/glasses/hud/diagnostic name = "Diagnostic HUD" @@ -52,7 +49,6 @@ icon_state = "diagnostichud" origin_tech = "magnets=2;engineering=2" hud_type = DATA_HUD_DIAGNOSTIC - glass_colour_type = /datum/client_colour/glass_colour/lightorange /obj/item/clothing/glasses/hud/diagnostic/night name = "Night Vision Diagnostic HUD" @@ -62,7 +58,6 @@ origin_tech = "magnets=4;powerstorage=4;plasmatech=4;engineering=5" darkness_view = 8 invis_view = SEE_INVISIBLE_MINIMUM - glass_colour_type = /datum/client_colour/glass_colour/green /obj/item/clothing/glasses/hud/security name = "Security HUD" @@ -70,7 +65,6 @@ icon_state = "securityhud" origin_tech = "magnets=3;combat=2" hud_type = DATA_HUD_SECURITY_ADVANCED - glass_colour_type = /datum/client_colour/glass_colour/red /obj/item/clothing/glasses/hud/security/chameleon name = "Chamleon Security HUD" @@ -94,7 +88,6 @@ darkness_view = 1 flash_protect = 1 tint = 1 - glass_colour_type = /datum/client_colour/glass_colour/darkred /obj/item/clothing/glasses/hud/security/night name = "Night Vision Security HUD" @@ -103,7 +96,6 @@ origin_tech = "magnets=4;combat=4;plasmatech=4;engineering=5" darkness_view = 8 invis_view = SEE_INVISIBLE_MINIMUM - glass_colour_type = /datum/client_colour/glass_colour/green /obj/item/clothing/glasses/hud/security/sunglasses/gars name = "HUD gar glasses" @@ -159,20 +151,16 @@ hud_type = DATA_HUD_SECURITY_ADVANCED vision_flags = SEE_MOBS invis_view = 2 - glass_colour_type = /datum/client_colour/glass_colour/red /obj/item/clothing/glasses/hud/toggle/thermal/attack_self(mob/user) ..() switch (hud_type) if (DATA_HUD_MEDICAL_ADVANCED) icon_state = "meson" - change_glass_color(user, /datum/client_colour/glass_colour/green) if (DATA_HUD_SECURITY_ADVANCED) icon_state = "thermal" - change_glass_color(user, /datum/client_colour/glass_colour/red) else icon_state = "purple" - change_glass_color(user, /datum/client_colour/glass_colour/purple) user.update_inv_glasses() /obj/item/clothing/glasses/hud/toggle/thermal/emp_act(severity) diff --git a/code/modules/clothing/gloves/color.dm b/code/modules/clothing/gloves/color.dm index 4c9a273633..2c6d6dc07b 100644 --- a/code/modules/clothing/gloves/color.dm +++ b/code/modules/clothing/gloves/color.dm @@ -6,7 +6,7 @@ siemens_coefficient = 0 permeability_coefficient = 0.05 item_color="yellow" - resistance_flags = 0 + burn_state = FIRE_PROOF /obj/item/clothing/gloves/color/fyellow //Cheap Chinese Crap desc = "These gloves are cheap knockoffs of the coveted ones - no way this can end badly." @@ -16,7 +16,7 @@ siemens_coefficient = 1 //Set to a default of 1, gets overridden in New() permeability_coefficient = 0.05 item_color="yellow" - resistance_flags = 0 + burn_state = FIRE_PROOF /obj/item/clothing/gloves/color/fyellow/New() ..() @@ -26,26 +26,26 @@ desc = "These gloves are fire-resistant." name = "black gloves" icon_state = "black" - item_state = "blackgloves" - item_color="black" + item_state = "bgloves" + item_color="brown" cold_protection = HANDS min_cold_protection_temperature = GLOVES_MIN_TEMP_PROTECT heat_protection = HANDS max_heat_protection_temperature = GLOVES_MAX_TEMP_PROTECT - resistance_flags = 0 + burn_state = FIRE_PROOF var/can_be_cut = 1 /obj/item/clothing/gloves/color/black/hos - item_color = "hosred" //Exists for washing machines. Is not different from black gloves in any way. + item_color = "hosred" //Exists for washing machines. Is not different from black gloves in any way. /obj/item/clothing/gloves/color/black/ce - item_color = "chief" //Exists for washing machines. Is not different from black gloves in any way. + item_color = "chief" //Exists for washing machines. Is not different from black gloves in any way. /obj/item/clothing/gloves/color/black/attackby(obj/item/weapon/W as obj, mob/user as mob, params) if(istype(W, /obj/item/weapon/wirecutters)) if(can_be_cut && icon_state == initial(icon_state))//only if not dyed user << "You snip the fingertips off of [src]." - playsound(user.loc, W.usesound, rand(10,50), 1) + playsound(user.loc,'sound/items/Wirecutter.ogg', rand(10,50), 1) new /obj/item/clothing/gloves/fingerless(user.loc) qdel(src) ..() @@ -64,13 +64,12 @@ item_state = "redgloves" item_color = "red" - /obj/item/clothing/gloves/color/red/insulated name = "insulated gloves" desc = "These gloves will protect the wearer from electric shock." siemens_coefficient = 0 permeability_coefficient = 0.05 - resistance_flags = 0 + burn_state = FIRE_PROOF /obj/item/clothing/gloves/color/rainbow name = "rainbow gloves" @@ -146,7 +145,6 @@ heat_protection = HANDS max_heat_protection_temperature = GLOVES_MAX_TEMP_PROTECT strip_delay = 60 - armor = list(melee = 0, bullet = 0, laser = 0, energy = 0, bomb = 0, bio = 0, rad = 0, fire = 70, acid = 50) /obj/item/clothing/gloves/color/latex name = "latex gloves" @@ -157,7 +155,7 @@ permeability_coefficient = 0.01 item_color="white" transfer_prints = TRUE - resistance_flags = 0 + burn_state = FIRE_PROOF /obj/item/clothing/gloves/color/latex/nitrile name = "nitrile gloves" diff --git a/code/modules/clothing/gloves/miscellaneous.dm b/code/modules/clothing/gloves/miscellaneous.dm index 90d56d5d7e..b4b314ce26 100644 --- a/code/modules/clothing/gloves/miscellaneous.dm +++ b/code/modules/clothing/gloves/miscellaneous.dm @@ -21,14 +21,13 @@ min_cold_protection_temperature = GLOVES_MIN_TEMP_PROTECT heat_protection = HANDS max_heat_protection_temperature = GLOVES_MAX_TEMP_PROTECT - resistance_flags = 0 - armor = list(melee = 0, bullet = 0, laser = 0, energy = 0, bomb = 0, bio = 0, rad = 0, fire = 70, acid = 30) + burn_state = FIRE_PROOF /obj/item/clothing/gloves/combat name = "combat gloves" desc = "These tactical gloves are fireproof and shock resistant." icon_state = "black" - item_state = "blackgloves" + item_state = "bgloves" siemens_coefficient = 0 permeability_coefficient = 0.05 strip_delay = 80 @@ -36,9 +35,7 @@ min_cold_protection_temperature = GLOVES_MIN_TEMP_PROTECT heat_protection = HANDS max_heat_protection_temperature = GLOVES_MAX_TEMP_PROTECT - resistance_flags = 0 - armor = list(melee = 0, bullet = 0, laser = 0, energy = 0, bomb = 0, bio = 0, rad = 0, fire = 80, acid = 50) - + burn_state = FIRE_PROOF /obj/item/clothing/gloves/bracer name = "bone bracers" @@ -53,5 +50,6 @@ cold_protection = ARMS min_cold_protection_temperature = GLOVES_MIN_TEMP_PROTECT max_heat_protection_temperature = GLOVES_MAX_TEMP_PROTECT - resistance_flags = 0 - armor = list(melee = 15, bullet = 35, laser = 35, energy = 20, bomb = 35, bio = 35, rad = 35, fire = 0, acid = 0) + burn_state = FIRE_PROOF + armor = list(melee = 15, bullet = 35, laser = 35, energy = 20, bomb = 35, bio = 35, rad = 35) //Not like anything ever hits the arms anyways. + diff --git a/code/modules/clothing/head/beanie.dm b/code/modules/clothing/head/beanie.dm deleted file mode 100644 index bbae5b261f..0000000000 --- a/code/modules/clothing/head/beanie.dm +++ /dev/null @@ -1,77 +0,0 @@ - -//BeanieStation13 Redux - -/obj/item/clothing/head/beanie //Default is white, this is meant to be seen - name = "white beanie" - desc = "A stylish beanie. The perfect winter accessory for those with a keen fashion sense, and those who just can't handle a cold breeze on their heads." - icon_state = "beanie" //Default white - item_color = "beanie" - -/obj/item/clothing/head/beanie/black - name = "black beanie" - icon_state = "beanie" - color = "#4A4A4B" //Grey but it looks black - -/obj/item/clothing/head/beanie/red - name = "red beanie" - icon_state = "beanie" - color = "#D91414" //Red - -/obj/item/clothing/head/beanie/green - name = "green beanie" - icon_state = "beanie" - color = "#5C9E54" //Green - -/obj/item/clothing/head/beanie/darkblue - name = "dark blue beanie" - icon_state = "beanie" - color = "#1E85BC" //Blue - -/obj/item/clothing/head/beanie/purple - name = "purple beanie" - icon_state = "beanie" - color = "#9557C5" //purple - -/obj/item/clothing/head/beanie/yellow - name = "yellow beanie" - icon_state = "beanie" - color = "#E0C14F" //Yellow - -/obj/item/clothing/head/beanie/orange - name = "orange beanie" - icon_state = "beanie" - color = "#C67A4B" //orange - -/obj/item/clothing/head/beanie/cyan - name = "cyan beanie" - icon_state = "beanie" - color = "#54A3CE" //Cyan (Or close to it) - -//Striped Beanies have unique sprites - -/obj/item/clothing/head/beanie/christmas - name = "christmas beanie" - icon_state = "beaniechristmas" - item_color = "beaniechristmas" - -/obj/item/clothing/head/beanie/striped - name = "striped beanie" - icon_state = "beaniestriped" - item_color = "beaniestriped" - -/obj/item/clothing/head/beanie/stripedred - name = "red striped beanie" - icon_state = "beaniestripedred" - item_color = "beaniestripedred" - -/obj/item/clothing/head/beanie/stripedblue - name = "blue striped beanie" - icon_state = "beaniestripedblue" - item_color = "beaniestripedblue" - -/obj/item/clothing/head/beanie/stripedgreen - name = "green striped beanie" - icon_state = "beaniestripedgreen" - item_color = "beaniestripedgreen" - -//No dog fashion sprites yet :( poor Ian can't be dope like the rest of us yet \ No newline at end of file diff --git a/code/modules/clothing/head/collectable.dm b/code/modules/clothing/head/collectable.dm index 61171ccf59..375da621cf 100644 --- a/code/modules/clothing/head/collectable.dm +++ b/code/modules/clothing/head/collectable.dm @@ -68,7 +68,7 @@ desc = "A collectable welding helmet. Now with 80% less lead! Not for actual welding. Any welding done while wearing this helmet is done so at the owner's own risk!" icon_state = "welding" item_state = "welding" - resistance_flags = 0 + burn_state = FIRE_PROOF /obj/item/clothing/head/collectable/slime name = "collectable slime hat" @@ -137,11 +137,11 @@ desc = "Go Red! I mean Green! I mean Red! No Green!" icon_state = "thunderdome" item_state = "thunderdome" - resistance_flags = 0 + burn_state = FIRE_PROOF /obj/item/clothing/head/collectable/swat name = "collectable SWAT helmet" desc = "That's not real blood. That's red paint." //Reference to the actual description icon_state = "swat" item_state = "swat" - resistance_flags = 0 + burn_state = FIRE_PROOF diff --git a/code/modules/clothing/head/hardhat.dm b/code/modules/clothing/head/hardhat.dm index a09568917d..66e0473005 100644 --- a/code/modules/clothing/head/hardhat.dm +++ b/code/modules/clothing/head/hardhat.dm @@ -6,10 +6,10 @@ var/brightness_on = 4 //luminosity when on var/on = 0 item_color = "yellow" //Determines used sprites: hardhat[on]_[item_color] and hardhat[on]_[item_color]2 (lying down sprite) - armor = list(melee = 15, bullet = 5, laser = 20,energy = 10, bomb = 20, bio = 10, rad = 20, fire = 100, acid = 50) + armor = list(melee = 15, bullet = 5, laser = 20,energy = 10, bomb = 20, bio = 10, rad = 20) flags_inv = 0 actions_types = list(/datum/action/item_action/toggle_helmet_light) - resistance_flags = FIRE_PROOF + burn_state = FIRE_PROOF dog_fashion = /datum/dog_fashion/head @@ -27,23 +27,11 @@ var/datum/action/A = X A.UpdateButtonIcon() -/obj/item/clothing/head/hardhat/pickup(mob/user) - ..() - if(on) - user.AddLuminosity(brightness_on) - SetLuminosity(0) - -/obj/item/clothing/head/hardhat/dropped(mob/user) - ..() - if(on) - user.AddLuminosity(-brightness_on) - SetLuminosity(brightness_on) - /obj/item/clothing/head/hardhat/proc/turn_on(mob/user) - user.AddLuminosity(brightness_on) + set_light(brightness_on) /obj/item/clothing/head/hardhat/proc/turn_off(mob/user) - user.AddLuminosity(-brightness_on) + set_light(0) /obj/item/clothing/head/hardhat/orange icon_state = "hardhat0_orange" diff --git a/code/modules/clothing/head/helmet.dm b/code/modules/clothing/head/helmet.dm index a6ce2249b0..8d05cc6b8f 100644 --- a/code/modules/clothing/head/helmet.dm +++ b/code/modules/clothing/head/helmet.dm @@ -4,14 +4,14 @@ icon_state = "helmet" flags = HEADBANGPROTECT item_state = "helmet" - armor = list(melee = 35, bullet = 30, laser = 30,energy = 10, bomb = 25, bio = 0, rad = 0, fire = 50, acid = 50) + armor = list(melee = 40, bullet = 30, laser = 30,energy = 10, bomb = 25, bio = 0, rad = 0) flags_inv = HIDEEARS cold_protection = HEAD min_cold_protection_temperature = HELMET_MIN_TEMP_PROTECT heat_protection = HEAD max_heat_protection_temperature = HELMET_MAX_TEMP_PROTECT strip_delay = 60 - resistance_flags = 0 + burn_state = FIRE_PROOF flags_cover = HEADCOVERSEYES dog_fashion = /datum/dog_fashion/head/helmet @@ -20,6 +20,9 @@ /obj/item/clothing/head/helmet/New() ..() +/obj/item/clothing/head/helmet/emp_act(severity) + ..() + /obj/item/clothing/head/helmet/sec can_flashlight = 1 @@ -28,14 +31,10 @@ desc = "A bulletproof combat helmet that excels in protecting the wearer against traditional projectile weaponry and explosives to a minor extent." icon_state = "helmetalt" item_state = "helmetalt" - armor = list(melee = 15, bullet = 40, laser = 10, energy = 10, bomb = 40, bio = 0, rad = 0, fire = 50, acid = 50) + armor = list(melee = 15, bullet = 40, laser = 10, energy = 10, bomb = 40, bio = 0, rad = 0) can_flashlight = 1 dog_fashion = null -/obj/item/clothing/head/helmet/blueshirt - icon_state = "blueshift" - item_state = "blueshift" - /obj/item/clothing/head/helmet/riot name = "riot helmet" desc = "It's a helmet specifically designed to protect against close range attacks." @@ -45,11 +44,11 @@ alt_toggle_message = "You push the visor up on" can_toggle = 1 flags = HEADBANGPROTECT - armor = list(melee = 45, bullet = 15, laser = 5,energy = 5, bomb = 5, bio = 2, rad = 0, fire = 50, acid = 50) - flags_inv = HIDEEARS|HIDEFACE + armor = list(melee = 41, bullet = 15, laser = 5,energy = 5, bomb = 5, bio = 2, rad = 0) + flags_inv = HIDEMASK|HIDEEARS|HIDEFACE strip_delay = 80 actions_types = list(/datum/action/item_action/toggle) - visor_flags_inv = HIDEFACE + visor_flags_inv = HIDEMASK|HIDEFACE toggle_cooldown = 0 flags_cover = HEADCOVERSEYES | HEADCOVERSMOUTH dog_fashion = null @@ -99,7 +98,7 @@ desc = "An extremely robust, space-worthy helmet in a nefarious red and black stripe pattern." icon_state = "swatsyndie" item_state = "swatsyndie" - armor = list(melee = 40, bullet = 30, laser = 30,energy = 30, bomb = 50, bio = 90, rad = 20, fire = 50, acid = 50) + armor = list(melee = 40, bullet = 30, laser = 30,energy = 30, bomb = 50, bio = 90, rad = 20) cold_protection = HEAD min_cold_protection_temperature = SPACE_HELM_MIN_TEMP_PROTECT heat_protection = HEAD @@ -120,7 +119,7 @@ flags_inv = HIDEEARS|HIDEHAIR icon_state = "thunderdome" item_state = "thunderdome" - armor = list(melee = 40, bullet = 30, laser = 25,energy = 10, bomb = 25, bio = 10, rad = 0, fire = 50, acid = 50) + armor = list(melee = 40, bullet = 30, laser = 25,energy = 10, bomb = 25, bio = 10, rad = 0) cold_protection = HEAD min_cold_protection_temperature = SPACE_HELM_MIN_TEMP_PROTECT heat_protection = HEAD @@ -133,8 +132,7 @@ desc = "An ancient helmet made of bronze and leather." flags_inv = HIDEEARS|HIDEHAIR flags_cover = HEADCOVERSEYES - armor = list(melee = 25, bullet = 0, laser = 25, energy = 10, bomb = 10, bio = 0, rad = 0, fire = 100, acid = 50) - resistance_flags = FIRE_PROOF + armor = list(melee = 25, bullet = 0, laser = 25, energy = 10, bomb = 10, bio = 0, rad = 0) icon_state = "roman" item_state = "roman" strip_delay = 100 @@ -161,7 +159,7 @@ icon_state = "redtaghelm" flags_cover = HEADCOVERSEYES item_state = "redtaghelm" - armor = list(melee = 15, bullet = 10, laser = 20,energy = 10, bomb = 20, bio = 0, rad = 0, fire = 0, acid = 50) + armor = list(melee = 15, bullet = 10, laser = 20,energy = 10, bomb = 20, bio = 0, rad = 0) // Offer about the same protection as a hardhat. dog_fashion = null @@ -171,7 +169,7 @@ icon_state = "bluetaghelm" flags_cover = HEADCOVERSEYES item_state = "bluetaghelm" - armor = list(melee = 15, bullet = 10, laser = 20,energy = 10, bomb = 20, bio = 0, rad = 0, fire = 0, acid = 50) + armor = list(melee = 15, bullet = 10, laser = 20,energy = 10, bomb = 20, bio = 0, rad = 0) // Offer about the same protection as a hardhat. dog_fashion = null @@ -180,7 +178,7 @@ desc = "A classic metal helmet." icon_state = "knight_green" item_state = "knight_green" - armor = list(melee = 41, bullet = 15, laser = 5,energy = 5, bomb = 5, bio = 2, rad = 0, fire = 0, acid = 50) + armor = list(melee = 41, bullet = 15, laser = 5,energy = 5, bomb = 5, bio = 2, rad = 0) flags = null flags_inv = HIDEMASK|HIDEEARS|HIDEEYES|HIDEFACE|HIDEHAIR flags_cover = HEADCOVERSEYES | HEADCOVERSMOUTH @@ -210,7 +208,7 @@ desc = "An intimidating tribal helmet, it doesn't look very comfortable." flags_inv = HIDEMASK|HIDEEARS|HIDEEYES|HIDEFACE flags_cover = HEADCOVERSEYES - armor = list(melee = 25, bullet = 25, laser = 25, energy = 10, bomb = 10, bio = 5, rad = 20, fire = 40, acid = 20) + armor = list(melee = 25, bullet = 25, laser = 25, energy = 10, bomb = 10, bio = 5, rad = 20) icon_state = "skull" item_state = "skull" strip_delay = 100 @@ -228,14 +226,14 @@ icon_state = state - if(ishuman(loc)) + if(istype(loc, /mob/living/carbon/human)) var/mob/living/carbon/human/H = loc H.update_inv_head() return -/obj/item/clothing/head/helmet/ui_action_click(mob/user, action) - if(istype(action, /datum/action/item_action/toggle_helmet_flashlight)) +/obj/item/clothing/head/helmet/ui_action_click(mob/user, actiontype) + if(actiontype == /datum/action/item_action/toggle_helmet_flashlight) toggle_helmlight() else ..() @@ -249,7 +247,7 @@ return user << "You click [S] into place on [src]." if(S.on) - SetLuminosity(0) + set_light(0) F = S S.loc = src update_icon() @@ -288,6 +286,8 @@ var/mob/user = usr if(user.incapacitated()) return + if(!isturf(user.loc)) + user << "You cannot turn the light on while in this [user.loc]!" F.on = !F.on user << "You toggle the helmetlight [F.on ? "on":"off"]." @@ -298,37 +298,13 @@ /obj/item/clothing/head/helmet/proc/update_helmlight(mob/user = null) if(F) if(F.on) - if(loc == user) - user.AddLuminosity(F.brightness_on) - else if(isturf(loc)) - SetLuminosity(F.brightness_on) + set_light(F.brightness_on) else - if(loc == user) - user.AddLuminosity(-F.brightness_on) - else if(isturf(loc)) - SetLuminosity(0) + set_light(0) update_icon() else - if(loc == user) - user.AddLuminosity(-5) - else if(isturf(loc)) - SetLuminosity(0) + set_light(0) for(var/X in actions) var/datum/action/A = X A.UpdateButtonIcon() - -/obj/item/clothing/head/helmet/pickup(mob/user) - ..() - if(F) - if(F.on) - user.AddLuminosity(F.brightness_on) - SetLuminosity(0) - - -/obj/item/clothing/head/helmet/dropped(mob/user) - ..() - if(F) - if(F.on) - user.AddLuminosity(-F.brightness_on) - SetLuminosity(F.brightness_on) diff --git a/code/modules/clothing/head/jobs.dm b/code/modules/clothing/head/jobs.dm index 62cb3e1213..015d04371e 100644 --- a/code/modules/clothing/head/jobs.dm +++ b/code/modules/clothing/head/jobs.dm @@ -1,16 +1,18 @@ -//Chef +//Bartender //it's chef what the fuck is your problem? /obj/item/clothing/head/chefhat name = "chef's hat" - item_state = "chef" + desc = "It's a hat used by chefs to keep hair out of your food. Judging by the food in the mess, they don't work." icon_state = "chef" + item_state = "chef" desc = "The commander in chef's head wear." strip_delay = 10 put_on_delay = 10 + dog_fashion = /datum/dog_fashion/head/chef /obj/item/clothing/head/chefhat/suicide_act(mob/user) - user.visible_message("[user] is donning [src]! It looks like [user.p_theyre()] trying to become a chef.") + user.visible_message("[user] is donning [src]! It looks like they're trying to become a chef.") user.say("Bork Bork Bork!") sleep(20) user.visible_message("[user] climbs into an imaginary oven!") @@ -25,8 +27,9 @@ icon_state = "captain" item_state = "that" flags_inv = 0 - armor = list(melee = 25, bullet = 15, laser = 25, energy = 10, bomb = 25, bio = 0, rad = 0, fire = 50, acid = 50) + armor = list(melee = 25, bullet = 15, laser = 25, energy = 10, bomb = 25, bio = 0, rad = 0) strip_delay = 60 + dog_fashion = /datum/dog_fashion/head/captain //Captain: This is no longer space-worthy @@ -43,7 +46,8 @@ name = "head of personnel's cap" icon_state = "hopcap" desc = "The symbol of true bureaucratic micromanagement." - armor = list(melee = 25, bullet = 15, laser = 25, energy = 10, bomb = 25, bio = 0, rad = 0, fire = 50, acid = 50) + armor = list(melee = 25, bullet = 15, laser = 25, energy = 10, bomb = 25, bio = 0, rad = 0) + dog_fashion = /datum/dog_fashion/head/hop //Chaplain @@ -54,31 +58,13 @@ flags_inv = HIDEHAIR flags_cover = HEADCOVERSEYES -/obj/item/clothing/head/cage - name = "cage" - desc = "A cage that restrains the will of the self, allowing one to see the profane world for what it is." - alternate_worn_icon = 'icons/mob/large-worn-icons/64x64/head.dmi' - icon_state = "cage" - item_state = "cage" - worn_x_dimension = 64 - worn_y_dimension = 64 - - -/obj/item/clothing/head/witchunter_hat - name = "witchunter hat" - desc = "This hat saw much use back in the day." - icon_state = "witchhunterhat" - item_state = "witchhunterhat" - flags_cover = HEADCOVERSEYES - -//Detective /obj/item/clothing/head/det_hat name = "detective's fedora" desc = "There's only one man who can sniff out the dirty stench of crime, and he's likely wearing this hat." icon_state = "detective" - armor = list(melee = 25, bullet = 5, laser = 25, energy = 10, bomb = 0, bio = 0, rad = 0, fire = 30, acid = 50) + armor = list(melee = 25, bullet = 5, laser = 25, energy = 10, bomb = 0, bio = 0, rad = 0) var/candy_cooldown = 0 - pockets = /obj/item/weapon/storage/internal/pocket/small/detective + dog_fashion = /datum/dog_fashion/head/detective /obj/item/clothing/head/det_hat/AltClick() @@ -102,10 +88,6 @@ dog_fashion = /datum/dog_fashion/head/beret -/obj/item/clothing/head/beret/highlander - desc = "That was white fabric. Was." - flags = NODROP - dog_fashion = null //THIS IS FOR SLAUGHTER, NOT PUPPIES //Security @@ -113,7 +95,7 @@ name = "head of security cap" desc = "The robust standard-issue cap of the Head of Security. For showing the officers who's in charge." icon_state = "hoscap" - armor = list(melee = 40, bullet = 30, laser = 25, energy = 10, bomb = 25, bio = 10, rad = 0, fire = 50, acid = 60) + armor = list(melee = 40, bullet = 30, laser = 25, energy = 10, bomb = 25, bio = 10, rad = 0) strip_delay = 80 /obj/item/clothing/head/HoS/beret @@ -125,15 +107,16 @@ name = "warden's police hat" desc = "It's a special armored hat issued to the Warden of a security force. Protects the head from impacts." icon_state = "policehelm" - armor = list(melee = 40, bullet = 30, laser = 30, energy = 10, bomb = 25, bio = 0, rad = 0, fire = 30, acid = 60) + armor = list(melee = 40, bullet = 30, laser = 30, energy = 10, bomb = 25, bio = 0, rad = 0) strip_delay = 60 + dog_fashion = /datum/dog_fashion/head/warden /obj/item/clothing/head/beret/sec name = "security beret" desc = "A robust beret with the security insignia emblazoned on it. Uses reinforced fabric to offer sufficent protection." icon_state = "beret_badge" - armor = list(melee = 40, bullet = 30, laser = 30,energy = 10, bomb = 25, bio = 0, rad = 0, fire = 20, acid = 50) + armor = list(melee = 40, bullet = 30, laser = 30,energy = 10, bomb = 25, bio = 0, rad = 0) strip_delay = 60 dog_fashion = null @@ -146,16 +129,9 @@ name = "warden's beret" desc = "A special beret with the Warden's insignia emblazoned on it. For wardens with class." icon_state = "wardenberet" - armor = list(melee = 40, bullet = 30, laser = 30, energy = 10, bomb = 25, bio = 0, rad = 0, fire = 30, acid = 50) + armor = list(melee = 40, bullet = 30, laser = 30, energy = 10, bomb = 25, bio = 0, rad = 0) strip_delay = 60 /obj/item/clothing/head/beret/sec/navyofficer desc = "A special beret with the security insignia emblazoned on it. For officers with class." icon_state = "officerberet" - -//Curator -/obj/item/clothing/head/curator - name = "treasure hunter's fedora" - desc = "You got red text today kid, but it doesn't mean you have to like it." - icon_state = "curator" - armor = list(melee = 25, bullet = 5, laser = 25, energy = 10, bomb = 0, bio = 0, rad = 0, fire = 30, acid = 50) \ No newline at end of file diff --git a/code/modules/clothing/head/misc.dm b/code/modules/clothing/head/misc.dm index 089938bf2a..c2bdde291a 100644 --- a/code/modules/clothing/head/misc.dm +++ b/code/modules/clothing/head/misc.dm @@ -6,7 +6,7 @@ desc = "It's good to be emperor." item_state = "that" flags_inv = 0 - armor = list(melee = 30, bullet = 15, laser = 30, energy = 10, bomb = 25, bio = 0, rad = 0, fire = 50, acid = 50) + armor = list(melee = 30, bullet = 15, laser = 30, energy = 10, bomb = 25, bio = 0, rad = 0) strip_delay = 80 /obj/item/clothing/head/powdered_wig @@ -24,7 +24,7 @@ /obj/item/clothing/head/canada name = "striped red tophat" - desc = " It feels sticky, like maple syrup - il se sent collante, comme le sirop d'érable" + desc = " It feels sticky, like maple syrup - il se sent collante, comme le sirop d'érable" icon_state = "canada" item_state = "canada" @@ -65,14 +65,6 @@ desc = "A plastic replica of a Syndicate agent's space helmet. You'll look just like a real murderous Syndicate agent in this! This is a toy, it is not made for use in space!" flags_inv = HIDEMASK|HIDEEARS|HIDEEYES|HIDEFACE|HIDEHAIR|HIDEFACIALHAIR -/obj/item/clothing/head/cueball - name = "cueball helmet" - desc = "A large, featureless white orb meant to be worn on your head. How do you even see out of this thing?" - icon_state = "cueball" - item_state="cueball" - flags_cover = HEADCOVERSEYES|HEADCOVERSMOUTH - flags_inv = HIDEMASK|HIDEEARS|HIDEEYES|HIDEFACE|HIDEHAIR|HIDEFACIALHAIR - /obj/item/clothing/head/snowman name = "Snowman Head" desc = "A ball of white styrofoam. So festive." @@ -124,9 +116,12 @@ desc = "Yarr." icon_state = "pirate" item_state = "pirate" + dog_fashion = /datum/dog_fashion/head/pirate -/obj/item/clothing/head/pirate/captain +/obj/item/clothing/head/hgpiratecap + name = "pirate hat" + desc = "Yarr." icon_state = "hgpiratecap" item_state = "hgpiratecap" @@ -181,7 +176,6 @@ icon_state = "fedora" item_state = "fedora" desc = "A really cool hat if you're a mobster. A really lame hat if you're not." - pockets = /obj/item/weapon/storage/internal/pocket/small /obj/item/clothing/head/fedora/suicide_act(mob/user) if(user.gender == FEMALE) @@ -228,9 +222,9 @@ throwforce = 3 throw_speed = 2 throw_range = 5 - w_class = WEIGHT_CLASS_SMALL + w_class = 2 attack_verb = list("warned", "cautioned", "smashed") - resistance_flags = 0 + burn_state = FIRE_PROOF /obj/item/clothing/head/santa name = "santa hat" @@ -266,16 +260,4 @@ name = "paper sack hat" desc = "A paper sack with crude holes cut out for eyes and a sketchy smile drawn on the front. Not creepy at all." icon_state = "papersack_smile" - flags_inv = HIDEHAIR|HIDEFACE|HIDEEARS - -/obj/item/clothing/head/crown - name = "crown" - desc = "A crown fit for a king, a petty king maybe." - icon_state = "crown" - armor = list(melee = 15, bullet = 0, laser = 0,energy = 15, bomb = 0, bio = 0, rad = 0, fire = 100, acid = 50) - resistance_flags = FIRE_PROOF - -/obj/item/clothing/head/crown/fancy - name = "magnificent crown" - desc = "A crown worn by only the highest emperors of the land." - icon_state = "fancycrown" + flags_inv = HIDEHAIR|HIDEFACE|HIDEEARS \ No newline at end of file diff --git a/code/modules/clothing/head/misc_special.dm b/code/modules/clothing/head/misc_special.dm index 9b5e1bcf61..920620dbc5 100644 --- a/code/modules/clothing/head/misc_special.dm +++ b/code/modules/clothing/head/misc_special.dm @@ -21,15 +21,23 @@ // var/up = 0 flash_protect = 2 tint = 2 - armor = list(melee = 10, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 0, rad = 0, fire = 100, acid = 60) + armor = list(melee = 10, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 0, rad = 0) flags_inv = HIDEMASK|HIDEEARS|HIDEEYES|HIDEFACE actions_types = list(/datum/action/item_action/toggle) visor_flags_inv = HIDEMASK|HIDEEARS|HIDEEYES|HIDEFACE visor_flags_cover = HEADCOVERSEYES | HEADCOVERSMOUTH - resistance_flags = FIRE_PROOF + burn_state = FIRE_PROOF -/obj/item/clothing/head/welding/attack_self(mob/user) - weldingvisortoggle(user) +/obj/item/clothing/head/welding/attack_self() + toggle() + + +/obj/item/clothing/head/welding/verb/toggle() + set category = "Object" + set name = "Adjust welding helmet" + set src in usr + + weldingvisortoggle() /* @@ -43,19 +51,19 @@ item_color = "cakehat" hitsound = 'sound/weapons/tap.ogg' flags_inv = HIDEEARS|HIDEHAIR - armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 0, rad = 0, fire = 0, acid = 0) + armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 0, rad = 0) brightness_on = 2 //luminosity when on flags_cover = HEADCOVERSEYES heat = 1000 /obj/item/clothing/head/hardhat/cakehat/process() var/turf/location = src.loc - if(ishuman(location)) + if(istype(location, /mob/)) var/mob/living/carbon/human/M = location - if(M.is_holding(src) || M.head == src) + if(M.l_hand == src || M.r_hand == src || M.head == src) location = M.loc - if(isturf(location)) + if (istype(location, /turf)) location.hotspot_expose(700, 1) /obj/item/clothing/head/hardhat/cakehat/turn_on() @@ -91,6 +99,14 @@ dog_fashion = /datum/dog_fashion/head/ushanka +/obj/item/clothing/head/hardhat/headlamp + name = "headlamp" + desc = "For giving people another reason to look away from you." + icon_state = "hardhat0_headlamp" + item_state = "hardhat0_headlamp" + item_color = "headlamp" + armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 0, rad = 0) + /obj/item/clothing/head/ushanka/attack_self(mob/user) if(earflaps) src.icon_state = "ushankaup" @@ -113,7 +129,7 @@ item_state = "hardhat0_pumpkin" item_color = "pumpkin" flags_inv = HIDEMASK|HIDEEARS|HIDEEYES|HIDEFACE|HIDEHAIR|HIDEFACIALHAIR - armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 0, rad = 0, fire = 0, acid = 0) + armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 0, rad = 0) brightness_on = 2 //luminosity when on flags_cover = HEADCOVERSEYES @@ -124,7 +140,7 @@ name = "kitty ears" desc = "A pair of kitty ears. Meow!" icon_state = "kitty" - color = "#999999" + color = "#999" dog_fashion = /datum/dog_fashion/head/kitty @@ -135,7 +151,7 @@ /obj/item/clothing/head/kitty/update_icon(mob/living/carbon/human/user) if(istype(user)) - add_atom_colour("#[user.hair_color]", FIXED_COLOUR_PRIORITY) + color = "#[user.hair_color]" /obj/item/clothing/head/hardhat/reindeer @@ -145,7 +161,7 @@ item_state = "hardhat0_reindeer" item_color = "reindeer" flags_inv = 0 - armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 0, rad = 0, fire = 0, acid = 0) + armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 0, rad = 0) brightness_on = 1 //luminosity when on dog_fashion = /datum/dog_fashion/head/reindeer diff --git a/code/modules/clothing/head/soft_caps.dm b/code/modules/clothing/head/soft_caps.dm index 8153f978f2..f66ada43ee 100644 --- a/code/modules/clothing/head/soft_caps.dm +++ b/code/modules/clothing/head/soft_caps.dm @@ -120,7 +120,7 @@ desc = "It's a robust baseball hat in tasteful red colour." icon_state = "secsoft" item_color = "sec" - armor = list(melee = 30, bullet = 25, laser = 25, energy = 10, bomb = 25, bio = 0, rad = 0, fire = 20, acid = 50) + armor = list(melee = 30, bullet = 25, laser = 25, energy = 10, bomb = 25, bio = 0, rad = 0) strip_delay = 60 dog_fashion = null diff --git a/code/modules/clothing/masks/boxing.dm b/code/modules/clothing/masks/boxing.dm index ad632e1653..92b871a8d6 100644 --- a/code/modules/clothing/masks/boxing.dm +++ b/code/modules/clothing/masks/boxing.dm @@ -5,7 +5,7 @@ item_state = "balaclava" flags_inv = HIDEFACE|HIDEHAIR|HIDEFACIALHAIR visor_flags_inv = HIDEFACE|HIDEFACIALHAIR - w_class = WEIGHT_CLASS_SMALL + w_class = 2 actions_types = list(/datum/action/item_action/adjust) /obj/item/clothing/mask/balaclava/attack_self(mob/user) @@ -17,13 +17,13 @@ icon_state = "luchag" item_state = "luchag" flags_inv = HIDEFACE|HIDEHAIR|HIDEFACIALHAIR - w_class = WEIGHT_CLASS_SMALL + w_class = 2 /obj/item/clothing/mask/luchador/speechModification(message) if(copytext(message, 1, 2) != "*") - message = replacetext(message, "captain", "CAPITÃN") - message = replacetext(message, "station", "ESTACIÓN") - message = replacetext(message, "sir", "SEÑOR") + message = replacetext(message, "captain", "CAPITÁN") + message = replacetext(message, "station", "ESTACIÓN") + message = replacetext(message, "sir", "SEÑOR") message = replacetext(message, "the ", "el ") message = replacetext(message, "my ", "mi ") message = replacetext(message, "is ", "es ") @@ -52,4 +52,4 @@ name = "Rudos Mask" desc = "Worn by robust fighters who are willing to do anything to win." icon_state = "luchar" - item_state = "luchar" + item_state = "luchar" \ No newline at end of file diff --git a/code/modules/clothing/masks/breath.dm b/code/modules/clothing/masks/breath.dm index 2fdb03374b..324c969ff3 100644 --- a/code/modules/clothing/masks/breath.dm +++ b/code/modules/clothing/masks/breath.dm @@ -6,13 +6,13 @@ body_parts_covered = 0 flags = MASKINTERNALS visor_flags = MASKINTERNALS - w_class = WEIGHT_CLASS_SMALL + w_class = 2 gas_transfer_coefficient = 0.10 permeability_coefficient = 0.50 actions_types = list(/datum/action/item_action/adjust) flags_cover = MASKCOVERSMOUTH visor_flags_cover = MASKCOVERSMOUTH - resistance_flags = 0 + burn_state = FIRE_PROOF /obj/item/clothing/mask/breath/attack_self(mob/user) adjustmask(user) diff --git a/code/modules/clothing/masks/gasmask.dm b/code/modules/clothing/masks/gasmask.dm index a995441ff2..8b559e9220 100644 --- a/code/modules/clothing/masks/gasmask.dm +++ b/code/modules/clothing/masks/gasmask.dm @@ -4,12 +4,12 @@ icon_state = "gas_alt" flags = BLOCK_GAS_SMOKE_EFFECT | MASKINTERNALS flags_inv = HIDEEARS|HIDEEYES|HIDEFACE|HIDEFACIALHAIR - w_class = WEIGHT_CLASS_NORMAL + w_class = 3 item_state = "gas_alt" gas_transfer_coefficient = 0.01 permeability_coefficient = 0.01 flags_cover = MASKCOVERSEYES | MASKCOVERSMOUTH - resistance_flags = 0 + burn_state = FIRE_PROOF // **** Welding gas mask **** @@ -20,18 +20,23 @@ materials = list(MAT_METAL=4000, MAT_GLASS=2000) flash_protect = 2 tint = 2 - armor = list(melee = 10, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 0, rad = 0, fire = 100, acid = 55) + armor = list(melee = 10, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 0, rad = 0) origin_tech = "materials=2;engineering=3" actions_types = list(/datum/action/item_action/toggle) flags_inv = HIDEEARS|HIDEEYES|HIDEFACE flags_cover = MASKCOVERSEYES visor_flags_inv = HIDEEYES visor_flags_cover = MASKCOVERSEYES - resistance_flags = FIRE_PROOF -/obj/item/clothing/mask/gas/welding/attack_self(mob/user) - weldingvisortoggle(user) +/obj/item/clothing/mask/gas/welding/attack_self() + toggle() +/obj/item/clothing/mask/gas/welding/verb/toggle() + set category = "Object" + set name = "Adjust welding mask" + set src in usr + + weldingvisortoggle() // ******************************************************************** @@ -41,7 +46,7 @@ desc = "A modernised version of the classic design, this mask will not only filter out toxins but it can also be connected to an air supply." icon_state = "plaguedoctor" item_state = "gas_mask" - armor = list(melee = 0, bullet = 0, laser = 2,energy = 2, bomb = 0, bio = 75, rad = 0, fire = 0, acid = 0) + armor = list(melee = 0, bullet = 0, laser = 2,energy = 2, bomb = 0, bio = 75, rad = 0) /obj/item/clothing/mask/gas/syndicate name = "syndicate mask" @@ -56,11 +61,14 @@ icon_state = "clown" item_state = "clown_hat" flags_cover = MASKCOVERSEYES - resistance_flags = FLAMMABLE + burn_state = FLAMMABLE actions_types = list(/datum/action/item_action/adjust) dog_fashion = /datum/dog_fashion/head/clown -/obj/item/clothing/mask/gas/clown_hat/ui_action_click(mob/user) +/obj/item/clothing/mask/gas/clown_hat/attack_self(mob/user) + AltClick(user) + +/obj/item/clothing/mask/gas/clown_hat/AltClick(mob/living/user) if(!istype(user) || user.incapacitated()) return @@ -88,7 +96,7 @@ icon_state = "sexyclown" item_state = "sexyclown" flags_cover = MASKCOVERSEYES - resistance_flags = FLAMMABLE + burn_state = FLAMMABLE /obj/item/clothing/mask/gas/mime name = "mime mask" @@ -97,7 +105,7 @@ icon_state = "mime" item_state = "mime" flags_cover = MASKCOVERSEYES - resistance_flags = FLAMMABLE + burn_state = FLAMMABLE actions_types = list(/datum/action/item_action/adjust) /obj/item/clothing/mask/gas/mime/attack_self(mob/user) @@ -127,7 +135,7 @@ icon_state = "monkeymask" item_state = "monkeymask" flags_cover = MASKCOVERSEYES - resistance_flags = FLAMMABLE + burn_state = FLAMMABLE /obj/item/clothing/mask/gas/sexymime name = "sexy mime mask" @@ -136,7 +144,7 @@ icon_state = "sexymime" item_state = "sexymime" flags_cover = MASKCOVERSEYES - resistance_flags = FLAMMABLE + burn_state = FLAMMABLE /obj/item/clothing/mask/gas/death_commando name = "Death Commando Mask" @@ -147,7 +155,7 @@ name = "cyborg visor" desc = "Beep boop." icon_state = "death" - resistance_flags = FLAMMABLE + burn_state = FLAMMABLE /obj/item/clothing/mask/gas/owl_mask name = "owl mask" @@ -155,9 +163,98 @@ icon_state = "owl" flags = MASKINTERNALS flags_cover = MASKCOVERSEYES - resistance_flags = FLAMMABLE + burn_state = FLAMMABLE /obj/item/clothing/mask/gas/carp name = "carp mask" desc = "Gnash gnash." icon_state = "carp_mask" + +/obj/item/clothing/mask/gas/yautja_fake + name = "ceremonial mask" + desc = "A beautifully designed metallic face mask. This one appears to be mostly decorative." + icon_state = "pred_mask" + flags_inv = HIDEEARS|HIDEEYES|HIDEFACE|HIDEFACIALHAIR|HIDEHAIR + item_state = "pred_mask" + flags_cover = MASKCOVERSEYES | MASKCOVERSMOUTH + burn_state = LAVA_PROOF + var/list/options = list() + var/current_skin = "" + +/obj/item/clothing/mask/gas/yautja_fake/New() + options["Jawbone"] = "jaw" + options["Plain"] = "plain" + options["Horned"] = "horn" + options["Winged"] = "wing" + options["Cancel"] = null + +/obj/item/clothing/mask/gas/yautja_fake/examine(mob/user) + ..() + if(!current_skin) + user << "Alt-click [src.name] to reskin it." + +/obj/item/clothing/mask/gas/yautja_fake/proc/reskin_mask(mob/M) + var/choice = input(M,"Warning, you can only reskin your mask once!","Reskin Mask") in options + + if(src && choice && !current_skin && !M.incapacitated() && in_range(M,src)) + if(options[choice] == null) + return + current_skin = options[choice] + icon_state = "[initial(icon_state)]_[current_skin]" + item_state = "[initial(item_state)]_[current_skin]" + M << "Your mask is now skinned as \"[choice]\"." + update_icon() + M.regenerate_icons() + +/obj/item/clothing/mask/gas/yautja_fake/AltClick(mob/user) + ..() + if(user.incapacitated()) + user << "You can't do that right now!" + return + if(!current_skin && loc == user) + reskin_mask(user) + +/obj/item/clothing/mask/gas/yautja + name = "clan mask" + desc = "A beautifully designed metallic face mask. Both decorative and functional." + icon_state = "pred_mask" + flags_inv = HIDEEARS|HIDEEYES|HIDEFACE|HIDEFACIALHAIR|HIDEHAIR + item_state = "pred_mask" + flags_cover = MASKCOVERSEYES | MASKCOVERSMOUTH + burn_state = LAVA_PROOF + armor = list(melee = 50, bullet = 50, laser = 50,energy = 50, bomb = 50, bio = 80, rad = 50) + var/list/options = list() + var/current_skin = "" + +/obj/item/clothing/mask/gas/yautja/New() + options["Jawbone"] = "jaw" + options["Plain"] = "plain" + options["Horned"] = "horn" + options["Winged"] = "wing" + options["Cancel"] = null + +/obj/item/clothing/mask/gas/yautja/proc/reskin_mask(mob/M) + var/choice = input(M,"Warning, you can only reskin your mask once!","Reskin Mask") in options + + if(src && choice && !current_skin && !M.incapacitated() && in_range(M,src)) + if(options[choice] == null) + return + current_skin = options[choice] + icon_state = "[initial(icon_state)]_[current_skin]" + item_state = "[initial(item_state)]_[current_skin]" + M << "Your mask is now skinned as \"[choice]\"." + update_icon() + M.regenerate_icons() + +/obj/item/clothing/mask/gas/yautja/AltClick(mob/user) + ..() + if(user.incapacitated()) + user << "You can't do that right now!" + return + if(!current_skin && loc == user) + reskin_mask(user) + +/obj/item/clothing/mask/gas/yautja/examine(mob/user) + ..() + if(!current_skin) + user << "Alt-click [src.name] to reskin it." diff --git a/code/modules/clothing/masks/hailer.dm b/code/modules/clothing/masks/hailer.dm index cd4282a047..74113da31e 100644 --- a/code/modules/clothing/masks/hailer.dm +++ b/code/modules/clothing/masks/hailer.dm @@ -8,7 +8,7 @@ icon_state = "sechailer" flags = BLOCK_GAS_SMOKE_EFFECT | MASKINTERNALS flags_inv = HIDEFACIALHAIR|HIDEFACE - w_class = WEIGHT_CLASS_SMALL + w_class = 2 visor_flags = BLOCK_GAS_SMOKE_EFFECT | MASKINTERNALS visor_flags_inv = HIDEFACE flags_cover = MASKCOVERSMOUTH @@ -17,7 +17,6 @@ var/cooldown_special var/recent_uses = 0 var/broken_hailer = 0 - var/safety = TRUE /obj/item/clothing/mask/gas/sechailer/swat name = "\improper SWAT mask" @@ -57,26 +56,20 @@ else ..() -/obj/item/clothing/mask/gas/sechailer/ui_action_click(mob/user, action) - if(istype(action, /datum/action/item_action/halt)) +/obj/item/clothing/mask/gas/sechailer/ui_action_click(mob/user, actiontype) + if(actiontype == /datum/action/item_action/halt) halt() else adjustmask(user) /obj/item/clothing/mask/gas/sechailer/attack_self() halt() -/obj/item/clothing/mask/gas/sechailer/emag_act(mob/user as mob) - if(safety) - safety = FALSE - user << "You silently fry [src]'s vocal circuit with the cryptographic sequencer." - else - return /obj/item/clothing/mask/gas/sechailer/verb/halt() set category = "Object" set name = "HALT" set src in usr - if(!isliving(usr)) + if(!istype(usr, /mob/living)) return if(!can_use(usr)) return @@ -114,66 +107,61 @@ if(4) phrase = rand(12,18) // user has broke the restrictor, it will now only play shitcurity phrases - if(!safety) - phrase_text = "FUCK YOUR CUNT YOU SHIT EATING COCKSTORM AND EAT A DONG FUCKING ASS RAMMING SHIT FUCK EAT PENISES IN YOUR FUCK FACE AND SHIT OUT ABORTIONS OF FUCK AND POO AND SHIT IN YOUR ASS YOU COCK FUCK SHIT MONKEY FUCK ASS WANKER FROM THE DEPTHS OF SHIT." - phrase_sound = "emag" - else - - switch(phrase) //sets the properties of the chosen phrase - if(1) // good cop - phrase_text = "HALT! HALT! HALT!" - phrase_sound = "halt" - if(2) - phrase_text = "Stop in the name of the Law." - phrase_sound = "bobby" - if(3) - phrase_text = "Compliance is in your best interest." - phrase_sound = "compliance" - if(4) - phrase_text = "Prepare for justice!" - phrase_sound = "justice" - if(5) - phrase_text = "Running will only increase your sentence." - phrase_sound = "running" - if(6) // bad cop - phrase_text = "Don't move, Creep!" - phrase_sound = "dontmove" - if(7) - phrase_text = "Down on the floor, Creep!" - phrase_sound = "floor" - if(8) - phrase_text = "Dead or alive you're coming with me." - phrase_sound = "robocop" - if(9) - phrase_text = "God made today for the crooks we could not catch yesterday." - phrase_sound = "god" - if(10) - phrase_text = "Freeze, Scum Bag!" - phrase_sound = "freeze" - if(11) - phrase_text = "Stop right there, criminal scum!" - phrase_sound = "imperial" - if(12) // LA-PD - phrase_text = "Stop or I'll bash you." - phrase_sound = "bash" - if(13) - phrase_text = "Go ahead, make my day." - phrase_sound = "harry" - if(14) - phrase_text = "Stop breaking the law, ass hole." - phrase_sound = "asshole" - if(15) - phrase_text = "You have the right to shut the fuck up." - phrase_sound = "stfu" - if(16) - phrase_text = "Shut up crime!" - phrase_sound = "shutup" - if(17) - phrase_text = "Face the wrath of the golden bolt." - phrase_sound = "super" - if(18) - phrase_text = "I am, the LAW!" - phrase_sound = "dredd" + switch(phrase) //sets the properties of the chosen phrase + if(1) // good cop + phrase_text = "HALT! HALT! HALT!" + phrase_sound = "halt" + if(2) + phrase_text = "Stop in the name of the Law." + phrase_sound = "bobby" + if(3) + phrase_text = "Compliance is in your best interest." + phrase_sound = "compliance" + if(4) + phrase_text = "Prepare for justice!" + phrase_sound = "justice" + if(5) + phrase_text = "Running will only increase your sentence." + phrase_sound = "running" + if(6) // bad cop + phrase_text = "Don't move, Creep!" + phrase_sound = "dontmove" + if(7) + phrase_text = "Down on the floor, Creep!" + phrase_sound = "floor" + if(8) + phrase_text = "Dead or alive you're coming with me." + phrase_sound = "robocop" + if(9) + phrase_text = "God made today for the crooks we could not catch yesterday." + phrase_sound = "god" + if(10) + phrase_text = "Freeze, Scum Bag!" + phrase_sound = "freeze" + if(11) + phrase_text = "Stop right there, criminal scum!" + phrase_sound = "imperial" + if(12) // LA-PD + phrase_text = "Stop or I'll bash you." + phrase_sound = "bash" + if(13) + phrase_text = "Go ahead, make my day." + phrase_sound = "harry" + if(14) + phrase_text = "Stop breaking the law, ass hole." + phrase_sound = "asshole" + if(15) + phrase_text = "You have the right to shut the fuck up." + phrase_sound = "stfu" + if(16) + phrase_text = "Shut up crime!" + phrase_sound = "shutup" + if(17) + phrase_text = "Face the wrath of the golden bolt." + phrase_sound = "super" + if(18) + phrase_text = "I am, the LAW!" + phrase_sound = "dredd" usr.audible_message("[usr]'s Compli-o-Nator: [phrase_text]") playsound(src.loc, "sound/voice/complionator/[phrase_sound].ogg", 100, 0, 4) diff --git a/code/modules/clothing/masks/miscellaneous.dm b/code/modules/clothing/masks/miscellaneous.dm index 46de85d61a..93ac49fbeb 100644 --- a/code/modules/clothing/masks/miscellaneous.dm +++ b/code/modules/clothing/masks/miscellaneous.dm @@ -4,7 +4,7 @@ icon_state = "muzzle" item_state = "blindfold" flags_cover = MASKCOVERSMOUTH - w_class = WEIGHT_CLASS_SMALL + w_class = 2 gas_transfer_coefficient = 0.90 put_on_delay = 20 @@ -21,14 +21,14 @@ desc = "A sterile mask designed to help prevent the spread of diseases." icon_state = "sterile" item_state = "sterile" - w_class = WEIGHT_CLASS_TINY + w_class = 1 flags_inv = HIDEFACE flags_cover = MASKCOVERSMOUTH visor_flags_inv = HIDEFACE visor_flags_cover = MASKCOVERSMOUTH gas_transfer_coefficient = 0.90 permeability_coefficient = 0.01 - armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 25, rad = 0, fire = 0, acid = 0) + armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 25, rad = 0) actions_types = list(/datum/action/item_action/adjust) /obj/item/clothing/mask/surgical/attack_self(mob/user) @@ -40,18 +40,13 @@ icon_state = "fake-moustache" flags_inv = HIDEFACE -/obj/item/clothing/mask/joy - name = "joy mask" - desc = "Express your happiness or hide your sorrows with this laughing face with crying tears of joy cutout." - icon_state = "joy" - /obj/item/clothing/mask/pig name = "pig mask" desc = "A rubber pig mask." icon_state = "pig" item_state = "pig" flags_inv = HIDEFACE|HIDEHAIR|HIDEFACIALHAIR - w_class = WEIGHT_CLASS_SMALL + w_class = 2 actions_types = list(/datum/action/item_action/toggle_voice_box) var/voicechange = 0 @@ -70,7 +65,7 @@ icon_state = "pig" item_state = "pig" flags_inv = HIDEFACE|HIDEHAIR|HIDEFACIALHAIR - w_class = WEIGHT_CLASS_SMALL + w_class = 2 var/voicechange = 1 /obj/item/clothing/mask/spig/speechModification(message) @@ -85,7 +80,7 @@ icon_state = "cowmask" item_state = "cowmask" flags_inv = HIDEFACE|HIDEHAIR|HIDEFACIALHAIR - w_class = WEIGHT_CLASS_SMALL + w_class = 2 var/voicechange = 1 /obj/item/clothing/mask/cowmask/speechModification(message) @@ -99,7 +94,7 @@ icon_state = "horsehead" item_state = "horsehead" flags_inv = HIDEFACE|HIDEHAIR|HIDEFACIALHAIR|HIDEEYES|HIDEEARS - w_class = WEIGHT_CLASS_SMALL + w_class = 2 var/voicechange = 1 /obj/item/clothing/mask/horsehead/speechModification(message) @@ -107,60 +102,10 @@ message = pick("NEEIIGGGHHHH!", "NEEEIIIIGHH!", "NEIIIGGHH!", "HAAWWWWW!", "HAAAWWW!") return message -/obj/item/clothing/mask/rat - name = "rat mask" - desc = "A mask made of soft vinyl and latex, representing the head of a rat." - icon_state = "rat" - item_state = "rat" - flags_inv = HIDEFACE - flags_cover = MASKCOVERSMOUTH - -/obj/item/clothing/mask/rat/fox - name = "fox mask" - desc = "A mask made of soft vinyl and latex, representing the head of a fox." - icon_state = "fox" - item_state = "fox" - -/obj/item/clothing/mask/rat/bee - name = "bee mask" - desc = "A mask made of soft vinyl and latex, representing the head of a bee." - icon_state = "bee" - item_state = "bee" - -/obj/item/clothing/mask/rat/bear - name = "bear mask" - desc = "A mask made of soft vinyl and latex, representing the head of a bear." - icon_state = "bear" - item_state = "bear" - -/obj/item/clothing/mask/rat/bat - name = "bat mask" - desc = "A mask made of soft vinyl and latex, representing the head of a bat." - icon_state = "bat" - item_state = "bat" - -/obj/item/clothing/mask/rat/raven - name = "raven mask" - desc = "A mask made of soft vinyl and latex, representing the head of a raven." - icon_state = "raven" - item_state = "raven" - -/obj/item/clothing/mask/rat/jackal - name = "jackal mask" - desc = "A mask made of soft vinyl and latex, representing the head of a jackal." - icon_state = "jackal" - item_state = "jackal" - -/obj/item/clothing/mask/rat/tribal - name = "tribal mask" - desc = "A mask carved out of wood, detailed carefully by hand." - icon_state = "bumba" - item_state = "bumba" - /obj/item/clothing/mask/bandana name = "botany bandana" desc = "A fine bandana with nanotech lining and a hydroponics pattern." - w_class = WEIGHT_CLASS_TINY + w_class = 1 flags_cover = MASKCOVERSMOUTH flags_inv = HIDEFACE|HIDEFACIALHAIR visor_flags_inv = HIDEFACE|HIDEFACIALHAIR diff --git a/code/modules/clothing/neck/ties.dm b/code/modules/clothing/neck/ties.dm deleted file mode 100644 index 7c5086a999..0000000000 --- a/code/modules/clothing/neck/ties.dm +++ /dev/null @@ -1,185 +0,0 @@ -/obj/item/clothing/neck/tie - name = "tie" - desc = "A neosilk clip-on tie." - icon = 'icons/obj/clothing/neck.dmi' - icon_state = "bluetie" - item_state = "" //no inhands - item_color = "bluetie" - w_class = WEIGHT_CLASS_SMALL - -/obj/item/clothing/neck/tie/blue - name = "blue tie" - icon_state = "bluetie" - item_color = "bluetie" - -/obj/item/clothing/neck/tie/red - name = "red tie" - icon_state = "redtie" - item_color = "redtie" - -/obj/item/clothing/neck/tie/black - name = "black tie" - icon_state = "blacktie" - item_color = "blacktie" - -/obj/item/clothing/neck/tie/horrible - name = "horrible tie" - desc = "A neosilk clip-on tie. This one is disgusting." - icon_state = "horribletie" - item_color = "horribletie" - -/obj/item/clothing/neck/stethoscope - name = "stethoscope" - desc = "An outdated medical apparatus for listening to the sounds of the human body. It also makes you look like you know what you're doing." - icon_state = "stethoscope" - item_color = "stethoscope" - -/obj/item/clothing/neck/stethoscope/attack(mob/living/carbon/human/M, mob/living/user) - if(ishuman(M) && isliving(user)) - if(user.a_intent == INTENT_HELP) - var/body_part = parse_zone(user.zone_selected) - if(body_part) - var/their = "their" - switch(M.gender) - if(MALE) - their = "his" - if(FEMALE) - their = "her" - - var/sound = "pulse" - var/sound_strength - - if(M.stat == DEAD || (M.status_flags&FAKEDEATH)) - sound_strength = "cannot hear" - sound = "anything" - else - sound_strength = "hear a weak" - switch(body_part) - if("chest") - if(M.oxyloss < 50) - sound_strength = "hear a healthy" - sound = "pulse and respiration" - if("eyes","mouth") - sound_strength = "cannot hear" - sound = "anything" - else - sound_strength = "hear a weak" - - user.visible_message("[user] places [src] against [M]'s [body_part] and listens attentively.", "You place [src] against [their] [body_part]. You [sound_strength] [sound].") - return - return ..(M,user) - -/////////// -//SCARVES// -/////////// - -/obj/item/clothing/neck/scarf //Default white color, same functionality as beanies. - name = "white scarf" - icon_state = "scarf" - desc = "A stylish scarf. The perfect winter accessory for those with a keen fashion sense, and those who just can't handle a cold breeze on their necks." - item_color = "scarf" - dog_fashion = /datum/dog_fashion/head - -/obj/item/clothing/neck/scarf/black - name = "black scarf" - icon_state = "scarf" - color = "#4A4A4B" //Grey but it looks black - -/obj/item/clothing/neck/scarf/red - name = "red scarf" - icon_state = "scarf" - color = "#D91414" //Red - -/obj/item/clothing/neck/scarf/green - name = "green scarf" - icon_state = "scarf" - color = "#5C9E54" //Green - -/obj/item/clothing/neck/scarf/darkblue - name = "dark blue scarf" - icon_state = "scarf" - color = "#1E85BC" //Blue - -/obj/item/clothing/neck/scarf/purple - name = "purple scarf" - icon_state = "scarf" - color = "#9557C5" //purple - -/obj/item/clothing/neck/scarf/yellow - name = "yellow scarf" - icon_state = "scarf" - color = "#E0C14F" //Yellow - -/obj/item/clothing/neck/scarf/orange - name = "orange scarf" - icon_state = "scarf" - color = "#C67A4B" //orange - -/obj/item/clothing/neck/scarf/cyan - name = "cyan scarf" - icon_state = "scarf" - color = "#54A3CE" //Cyan - - -//Striped scarves get their own icons - -/obj/item/clothing/neck/scarf/zebra - name = "zebra scarf" - icon_state = "zebrascarf" - item_color = "zebrascarf" - -/obj/item/clothing/neck/scarf/christmas - name = "christmas scarf" - icon_state = "christmasscarf" - item_color = "christmasscarf" - -//The three following scarves don't have the scarf subtype -//This is because Ian can equip anything from that subtype -//However, these 3 don't have corgi versions of their sprites -/obj/item/clothing/neck/stripedredscarf - name = "striped red scarf" - icon_state = "stripedredscarf" - item_color = "stripedredscarf" - -/obj/item/clothing/neck/stripedgreenscarf - name = "striped green scarf" - icon_state = "stripedgreenscarf" - item_color = "stripedgreenscarf" - -/obj/item/clothing/neck/stripedbluescarf - name = "striped blue scarf" - icon_state = "stripedbluescarf" - item_color = "stripedbluescarf" - -/obj/item/clothing/neck/petcollar //don't really wear this though please c'mon seriously guys - name = "pet collar" - desc = "It's for pets. Though you probably could wear it yourself, you'd doubtless be the subject of ridicule." - icon_state = "petcollar" - item_color = "petcollar" - var/tagname = null - -/obj/item/clothing/neck/petcollar/attack_self(mob/user) - tagname = copytext(sanitize(input(user, "Would you like to change the name on the tag?", "Name your new pet", "Spot") as null|text),1,MAX_NAME_LEN) - name = "[initial(name)] - [tagname]" - -////////////// -//DOPE BLING// -////////////// - -/obj/item/clothing/neck/necklace/dope - name = "gold necklace" - desc = "Damn, it feels good to be a gangster." - icon = 'icons/obj/clothing/ties.dmi' - icon_state = "bling" - item_color = "bling" - -//////////////// -//OONGA BOONGA// -//////////////// - -/obj/item/clothing/neck/talisman - name = "bone talisman" - desc = "A hunter's talisman, some say the old gods smile on those who wear it." - icon_state = "talisman" - item_color = "talisman" - armor = list(melee = 5, bullet = 5, laser = 5, energy = 5, bomb = 20, bio = 20, rad = 5, fire = 0, acid = 25) \ No newline at end of file diff --git a/code/modules/clothing/outfits/ert.dm b/code/modules/clothing/outfits/ert.dm index 3e82a2e02b..a66972bd74 100644 --- a/code/modules/clothing/outfits/ert.dm +++ b/code/modules/clothing/outfits/ert.dm @@ -11,7 +11,9 @@ return var/obj/item/weapon/implant/mindshield/L = new/obj/item/weapon/implant/mindshield(H) - L.implant(H, null, 1) + L.imp_in = H + L.implanted = 1 + H.sec_hud_set_implants() var/obj/item/device/radio/R = H.ears R.set_frequency(CENTCOM_FREQ) @@ -26,13 +28,13 @@ id = /obj/item/weapon/card/id/ert suit = /obj/item/clothing/suit/space/hardsuit/ert - glasses = /obj/item/clothing/glasses/hud/security/sunglasses + glasses = /obj/item/clothing/glasses/thermal/eyepatch back = /obj/item/weapon/storage/backpack/captain belt = /obj/item/weapon/storage/belt/security/full backpack_contents = list(/obj/item/weapon/storage/box/engineer=1,\ /obj/item/weapon/melee/baton/loaded=1,\ /obj/item/clothing/mask/gas/sechailer=1,\ - /obj/item/weapon/gun/energy/e_gun=1) + /obj/item/weapon/gun/energy/gun=1) l_pocket = /obj/item/weapon/switchblade /datum/outfit/ert/commander/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) @@ -40,6 +42,7 @@ if(visualsOnly) return + var/obj/item/device/radio/R = H.ears R.keyslot = new /obj/item/device/encryptionkey/heads/captain R.recalculateChannels() @@ -47,7 +50,6 @@ /datum/outfit/ert/commander/alert name = "ERT Commander - High Alert" - glasses = /obj/item/clothing/glasses/thermal/eyepatch backpack_contents = list(/obj/item/weapon/storage/box/engineer=1,\ /obj/item/weapon/melee/baton/loaded=1,\ /obj/item/clothing/mask/gas/sechailer/swat=1,\ @@ -65,9 +67,9 @@ backpack_contents = list(/obj/item/weapon/storage/box/engineer=1,\ /obj/item/weapon/storage/box/handcuffs=1,\ /obj/item/clothing/mask/gas/sechailer=1,\ - /obj/item/weapon/gun/energy/e_gun=1,\ + /obj/item/weapon/gun/energy/gun=1,\ /obj/item/weapon/melee/baton/loaded=1,\ - /obj/item/weapon/gun/energy/e_gun/advtaser=1) + /obj/item/weapon/gun/energy/gun/advtaser=1) /datum/outfit/ert/security/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) ..() @@ -95,13 +97,13 @@ id = /obj/item/weapon/card/id/ert/Medical suit = /obj/item/clothing/suit/space/hardsuit/ert/med glasses = /obj/item/clothing/glasses/hud/health - back = /obj/item/weapon/storage/backpack/satchel/med + back = /obj/item/weapon/storage/backpack/medic belt = /obj/item/weapon/storage/belt/medical r_hand = /obj/item/weapon/storage/firstaid/regular backpack_contents = list(/obj/item/weapon/storage/box/engineer=1,\ /obj/item/weapon/melee/baton/loaded=1,\ /obj/item/clothing/mask/gas/sechailer=1,\ - /obj/item/weapon/gun/energy/e_gun=1,\ + /obj/item/weapon/gun/energy/gun=1,\ /obj/item/weapon/reagent_containers/hypospray/combat=1,\ /obj/item/weapon/gun/medbeam=1) @@ -138,7 +140,7 @@ backpack_contents = list(/obj/item/weapon/storage/box/engineer=1,\ /obj/item/weapon/melee/baton/loaded=1,\ /obj/item/clothing/mask/gas/sechailer=1,\ - /obj/item/weapon/gun/energy/e_gun=1,\ + /obj/item/weapon/gun/energy/gun=1,\ /obj/item/weapon/rcd/loaded=1) /datum/outfit/ert/engineer/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) @@ -169,9 +171,9 @@ gloves = /obj/item/clothing/gloves/color/black ears = /obj/item/device/radio/headset/headset_cent glasses = /obj/item/clothing/glasses/sunglasses - belt = /obj/item/weapon/gun/energy/e_gun + belt = /obj/item/weapon/gun/energy/gun l_pocket = /obj/item/weapon/pen - back = /obj/item/weapon/storage/backpack/satchel + back = /obj/item/weapon/storage/backpack/satchel_norm r_pocket = /obj/item/device/pda/heads l_hand = /obj/item/weapon/clipboard id = /obj/item/weapon/card/id @@ -191,4 +193,4 @@ W.access += access_weapons W.assignment = "Centcom Official" W.registered_name = H.real_name - W.update_label() + W.update_label() \ No newline at end of file diff --git a/code/modules/clothing/outfits/standard.dm b/code/modules/clothing/outfits/standard.dm index 2f7fcc99ef..e97666f16d 100644 --- a/code/modules/clothing/outfits/standard.dm +++ b/code/modules/clothing/outfits/standard.dm @@ -31,7 +31,7 @@ suit = /obj/item/clothing/suit/det_suit glasses = /obj/item/clothing/glasses/thermal/monocle head = /obj/item/clothing/head/det_hat - r_hand = /obj/item/weapon/gun/ballistic + r_hand = /obj/item/weapon/gun/projectile l_hand = null r_pocket = /obj/item/ammo_box/c10mm @@ -52,7 +52,7 @@ if(visualsOnly) return - var/obj/item/weapon/reagent_containers/glass/bucket/bucket = H.get_item_for_held_index(1) + var/obj/item/weapon/reagent_containers/glass/bucket/bucket = H.l_hand bucket.reagents.add_reagent("water",70) /datum/outfit/laser_tag @@ -133,10 +133,9 @@ r_hand = /obj/item/weapon/twohanded/fireaxe /datum/outfit/psycho/post_equip(mob/living/carbon/human/H) - for(var/obj/item/carried_item in H.get_equipped_items()) - carried_item.add_mob_blood(H)//Oh yes, there will be blood... - for(var/obj/item/I in H.held_items) - I.add_mob_blood(H) + for(var/obj/item/carried_item in H.contents) + if(!istype(carried_item, /obj/item/weapon/implant))//If it's not an implant. + carried_item.add_mob_blood(H)//Oh yes, there will be blood... H.regenerate_icons() /datum/outfit/assassin @@ -160,13 +159,13 @@ return //Could use a type - var/obj/item/weapon/storage/secure/briefcase/sec_briefcase = H.get_item_for_held_index(1) + var/obj/item/weapon/storage/secure/briefcase/sec_briefcase = H.l_hand for(var/obj/item/briefcase_item in sec_briefcase) qdel(briefcase_item) - for(var/i = 3 to 0 step -1) + for(var/i=3, i>0, i--) sec_briefcase.handle_item_insertion(new /obj/item/stack/spacecash/c1000,1) sec_briefcase.handle_item_insertion(new /obj/item/weapon/gun/energy/kinetic_accelerator/crossbow,1) - sec_briefcase.handle_item_insertion(new /obj/item/weapon/gun/ballistic/revolver/mateba,1) + sec_briefcase.handle_item_insertion(new /obj/item/weapon/gun/projectile/revolver/mateba,1) sec_briefcase.handle_item_insertion(new /obj/item/ammo_box/a357,1) sec_briefcase.handle_item_insertion(new /obj/item/weapon/grenade/plastic/x4,1) @@ -192,10 +191,10 @@ glasses = /obj/item/clothing/glasses/eyepatch mask = /obj/item/clothing/mask/cigarette/cigar/cohiba head = /obj/item/clothing/head/centhat - belt = /obj/item/weapon/gun/ballistic/revolver/mateba + belt = /obj/item/weapon/gun/projectile/revolver/mateba r_pocket = /obj/item/weapon/lighter l_pocket = /obj/item/ammo_box/a357 - back = /obj/item/weapon/storage/backpack/satchel/leather + back = /obj/item/weapon/storage/backpack/satchel id = /obj/item/weapon/card/id /datum/outfit/centcom_commander/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) @@ -223,7 +222,7 @@ head = /obj/item/clothing/head/helmet/space/beret belt = /obj/item/weapon/gun/energy/pulse/pistol/m1911 r_pocket = /obj/item/weapon/lighter - back = /obj/item/weapon/storage/backpack/satchel/leather + back = /obj/item/weapon/storage/backpack/satchel id = /obj/item/weapon/card/id /datum/outfit/spec_ops/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) @@ -247,7 +246,7 @@ uniform = /obj/item/clothing/under/color/lightpurple suit = /obj/item/clothing/suit/wizrobe - shoes = /obj/item/clothing/shoes/sandal/magic + shoes = /obj/item/clothing/shoes/sandal ears = /obj/item/device/radio/headset head = /obj/item/clothing/head/wizard r_pocket = /obj/item/weapon/teleportation_scroll @@ -273,14 +272,14 @@ name = "Soviet Admiral" uniform = /obj/item/clothing/under/soviet - head = /obj/item/clothing/head/pirate/captain + head = /obj/item/clothing/head/hgpiratecap shoes = /obj/item/clothing/shoes/combat gloves = /obj/item/clothing/gloves/combat ears = /obj/item/device/radio/headset/headset_cent glasses = /obj/item/clothing/glasses/thermal/eyepatch - suit = /obj/item/clothing/suit/pirate/captain - back = /obj/item/weapon/storage/backpack/satchel/leather - belt = /obj/item/weapon/gun/ballistic/revolver/mateba + suit = /obj/item/clothing/suit/hgpirate + back = /obj/item/weapon/storage/backpack/satchel + belt = /obj/item/weapon/gun/projectile/revolver/mateba id = /obj/item/weapon/card/id @@ -305,7 +304,7 @@ gloves = /obj/item/clothing/gloves/color/black ears = /obj/item/device/radio/headset glasses = /obj/item/clothing/glasses/sunglasses - r_hand = /obj/item/weapon/gun/ballistic/automatic/tommygun + r_hand = /obj/item/weapon/gun/projectile/automatic/tommygun id = /obj/item/weapon/card/id /datum/outfit/mobster/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) @@ -329,7 +328,7 @@ name = "Death Commando" uniform = /obj/item/clothing/under/color/green - suit = /obj/item/clothing/suit/space/hardsuit/shielded/swat + suit = /obj/item/clothing/suit/space/hardsuit/deathsquad shoes = /obj/item/clothing/shoes/combat/swat gloves = /obj/item/clothing/gloves/combat mask = /obj/item/clothing/mask/gas/sechailer/swat @@ -338,7 +337,7 @@ l_pocket = /obj/item/weapon/melee/energy/sword/saber r_pocket = /obj/item/weapon/shield/energy suit_store = /obj/item/weapon/tank/internals/emergency_oxygen - belt = /obj/item/weapon/gun/ballistic/revolver/mateba + belt = /obj/item/weapon/gun/projectile/revolver/mateba r_hand = /obj/item/weapon/gun/energy/pulse/loyalpin id = /obj/item/weapon/card/id ears = /obj/item/device/radio/headset/headset_cent/alt @@ -359,7 +358,9 @@ R.freqlock = 1 var/obj/item/weapon/implant/mindshield/L = new/obj/item/weapon/implant/mindshield(H)//Here you go Deuryn - L.implant(H, null, 1) + L.imp_in = H + L.implanted = 1 + H.sec_hud_set_implants() var/obj/item/weapon/card/id/W = H.wear_id diff --git a/code/modules/clothing/shoes/magboots.dm b/code/modules/clothing/shoes/magboots.dm index da3df123b2..f6022ec2bd 100644 --- a/code/modules/clothing/shoes/magboots.dm +++ b/code/modules/clothing/shoes/magboots.dm @@ -8,7 +8,7 @@ actions_types = list(/datum/action/item_action/toggle) strip_delay = 70 put_on_delay = 70 - resistance_flags = FIRE_PROOF + burn_state = FIRE_PROOF origin_tech = "materials=3;magnets=4;engineering=4" /obj/item/clothing/shoes/magboots/verb/toggle() @@ -31,7 +31,7 @@ icon_state = "[magboot_state][magpulse]" user << "You [magpulse ? "enable" : "disable"] the mag-pulse traction system." user.update_inv_shoes() //so our mob-overlays update - user.update_gravity(user.has_gravity()) + user.update_gravity(user.mob_has_gravity()) for(var/X in actions) var/datum/action/A = X A.UpdateButtonIcon() @@ -51,7 +51,6 @@ magboot_state = "advmag" slowdown_active = SHOES_SLOWDOWN origin_tech = null - resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | ACID_PROOF /obj/item/clothing/shoes/magboots/syndie desc = "Reverse-engineered magnetic boots that have a heavy magnetic pull. Property of Gorlex Marauders." diff --git a/code/modules/clothing/shoes/miscellaneous.dm b/code/modules/clothing/shoes/miscellaneous.dm index 326d50942c..638e70fad5 100644 --- a/code/modules/clothing/shoes/miscellaneous.dm +++ b/code/modules/clothing/shoes/miscellaneous.dm @@ -1,7 +1,7 @@ /obj/item/clothing/shoes/proc/step_action() //this was made to rewrite clown shoes squeaking /obj/item/clothing/shoes/suicide_act(mob/user) - user.visible_message("[user] is bashing [user.p_their()] own head in with [src]! Ain't that a kick in the head?") + user.visible_message("[user] is bashing their own head in with [src]! Ain't that a kick in the head?") for(var/i = 0, i < 3, i++) sleep(3) playsound(user, 'sound/weapons/genhit2.ogg', 50, 1) @@ -17,17 +17,17 @@ desc = "High speed, low drag combat boots." icon_state = "jackboots" item_state = "jackboots" - armor = list(melee = 25, bullet = 25, laser = 25, energy = 25, bomb = 50, bio = 10, rad = 0, fire = 70, acid = 50) + armor = list(melee = 25, bullet = 25, laser = 25, energy = 25, bomb = 50, bio = 10, rad = 0) strip_delay = 70 - resistance_flags = 0 - pockets = /obj/item/weapon/storage/internal/pocket/shoes + burn_state = FIRE_PROOF + can_hold_items = 1 /obj/item/clothing/shoes/combat/swat //overpowered boots for death squads name = "\improper SWAT boots" desc = "High speed, no drag combat boots." permeability_coefficient = 0.01 flags = NOSLIP - armor = list(melee = 40, bullet = 30, laser = 25, energy = 25, bomb = 50, bio = 30, rad = 30, fire = 90, acid = 50) + armor = list(melee = 40, bullet = 30, laser = 25, energy = 25, bomb = 50, bio = 30, rad = 30) /obj/item/clothing/shoes/sandal desc = "A pair of rather plain, wooden sandals." @@ -35,17 +35,12 @@ icon_state = "wizard" strip_delay = 50 put_on_delay = 50 + unacidable = 1 /obj/item/clothing/shoes/sandal/marisa desc = "A pair of magic black shoes." name = "magic shoes" icon_state = "black" - resistance_flags = FIRE_PROOF | ACID_PROOF - -/obj/item/clothing/shoes/sandal/magic - name = "magical sandals" - desc = "A pair of sandals imbued with magic" - resistance_flags = FIRE_PROOF | ACID_PROOF /obj/item/clothing/shoes/galoshes desc = "A pair of yellow rubber boots, designed to prevent slipping on wet surfaces." @@ -56,8 +51,7 @@ slowdown = SHOES_SLOWDOWN+1 strip_delay = 50 put_on_delay = 50 - resistance_flags = 0 - armor = list(melee = 0, bullet = 0, laser = 0, energy = 0, bomb = 0, bio = 0, rad = 0, fire = 40, acid = 75) + burn_state = FIRE_PROOF /obj/item/clothing/shoes/galoshes/dry name = "absorbent galoshes" @@ -78,7 +72,8 @@ slowdown = SHOES_SLOWDOWN+1 item_color = "clown" var/footstep = 1 //used for squeeks whilst walking - pockets = /obj/item/weapon/storage/internal/pocket/shoes/clown + can_hold_items = 1 + valid_held_items = list(/obj/item/weapon/bikehorn) /obj/item/clothing/shoes/clown_shoes/step_action() if(footstep > 1) @@ -95,8 +90,8 @@ item_color = "hosred" strip_delay = 50 put_on_delay = 50 - resistance_flags = 0 - pockets = /obj/item/weapon/storage/internal/pocket/shoes + burn_state = FIRE_PROOF + can_hold_items = 1 /obj/item/clothing/shoes/jackboots/fast slowdown = -1 @@ -110,7 +105,7 @@ min_cold_protection_temperature = SHOES_MIN_TEMP_PROTECT heat_protection = FEET|LEGS max_heat_protection_temperature = SHOES_MAX_TEMP_PROTECT - pockets = /obj/item/weapon/storage/internal/pocket/shoes + can_hold_items = 1 /obj/item/clothing/shoes/workboots name = "work boots" @@ -119,13 +114,13 @@ item_state = "jackboots" strip_delay = 40 put_on_delay = 40 - pockets = /obj/item/weapon/storage/internal/pocket/shoes + can_hold_items = 1 /obj/item/clothing/shoes/workboots/mining name = "mining boots" desc = "Steel-toed mining boots for mining in hazardous environments. Very good at keeping toes uncrushed." icon_state = "explorer" - resistance_flags = FIRE_PROOF + burn_state = FIRE_PROOF /obj/item/clothing/shoes/cult name = "nar-sian invoker boots" @@ -166,50 +161,11 @@ desc = "A pair of costume boots fashioned after bird talons." icon_state = "griffinboots" item_state = "griffinboots" - pockets = /obj/item/weapon/storage/internal/pocket/shoes + can_hold_items = 1 -/obj/item/clothing/shoes/bhop - name = "jump boots" - desc = "A specialized pair of combat boots with a built-in propulsion system for rapid foward movement." - icon_state = "jetboots" - item_state = "jetboots" - item_color = "hosred" - resistance_flags = FIRE_PROOF - pockets = /obj/item/weapon/storage/internal/pocket/shoes - actions_types = list(/datum/action/item_action/bhop) - var/jumpdistance = 5 //-1 from to see the actual distance, e.g 4 goes over 3 tiles - var/recharging_rate = 60 //default 6 seconds between each dash - var/recharging_time = 0 //time until next dash - var/jumping = FALSE //are we mid-jump? - -/obj/item/clothing/shoes/bhop/ui_action_click(mob/user, action) - if(!isliving(usr)) - return - - if(jumping) - return - - if(recharging_time > world.time) - usr << "The boot's internal propulsion needs to recharge still!" - return - - var/atom/target = get_edge_target_turf(usr, usr.dir) //gets the user's direction - - jumping = TRUE - playsound(src.loc, 'sound/effects/stealthoff.ogg', 50, 1, 1) - usr.visible_message("[usr] dashes foward into the air!") - usr.throw_at(target,jumpdistance,1, spin=0, diagonals_first = 1) - jumping = FALSE - recharging_time = world.time + recharging_rate - -/obj/item/clothing/shoes/singery - name = "yellow performer's boots" - desc = "These boots were made for dancing." - icon_state = "ysing" - put_on_delay = 50 - -/obj/item/clothing/shoes/singerb - name = "blue performer's boots" - desc = "These boots were made for dancing." - icon_state = "bsing" - put_on_delay = 50 \ No newline at end of file +/obj/item/clothing/shoes/yautja_fake + name = "clan greaves" + desc = "A pair of armored, perfectly balanced boots. Perfect for running through the jungle or the central primary hallway." + icon_state = "yautjaboots" + item_state = "yautjaboots" + can_hold_items = 1 \ No newline at end of file diff --git a/code/modules/clothing/spacesuits/chronosuit.dm b/code/modules/clothing/spacesuits/chronosuit.dm index 847154cc6e..3e6a828065 100644 --- a/code/modules/clothing/spacesuits/chronosuit.dm +++ b/code/modules/clothing/spacesuits/chronosuit.dm @@ -4,13 +4,12 @@ icon_state = "chronohelmet" item_state = "chronohelmet" slowdown = 1 - armor = list(melee = 60, bullet = 30/*bullet through the visor*/, laser = 60, energy = 60, bomb = 30, bio = 90, rad = 90, fire = 100, acid = 100) - resistance_flags = FIRE_PROOF | ACID_PROOF + armor = list(melee = 60, bullet = 30/*bullet through the visor*/, laser = 60, energy = 60, bomb = 30, bio = 90, rad = 90) var/obj/item/clothing/suit/space/chronos/suit = null /obj/item/clothing/head/helmet/space/chronos/dropped() if(suit) - suit.deactivate(1, 1) + suit.deactivate() ..() /obj/item/clothing/head/helmet/space/chronos/Destroy() @@ -20,23 +19,21 @@ /obj/item/clothing/suit/space/chronos name = "Chronosuit" - desc = "An advanced spacesuit equipped with time-bluespace teleportation and anti-compression technology" + desc = "An advanced spacesuit equipped with teleportation and anti-compression technology" icon_state = "chronosuit" item_state = "chronosuit" actions_types = list(/datum/action/item_action/toggle) - armor = list(melee = 60, bullet = 60, laser = 60, energy = 60, bomb = 30, bio = 90, rad = 90, fire = 100, acid = 1000) - resistance_flags = FIRE_PROOF | ACID_PROOF + armor = list(melee = 60, bullet = 60, laser = 60, energy = 60, bomb = 30, bio = 90, rad = 90) var/list/chronosafe_items = list(/obj/item/weapon/chrono_eraser, /obj/item/weapon/gun/energy/chrono_gun) - var/list/hands_nodrop = list() + var/hands_nodrop_states var/obj/item/clothing/head/helmet/space/chronos/helmet = null var/obj/effect/chronos_cam/camera = null - var/image/phase_underlay = null + var/atom/movable/overlay/phase_underlay = null var/datum/action/innate/chrono_teleport/teleport_now = new var/activating = 0 var/activated = 0 var/cooldowntime = 50 //deciseconds var/teleporting = 0 - var/phase_timer_id /obj/item/clothing/suit/space/chronos/New() ..() @@ -72,33 +69,25 @@ switch(severity) if(1) if(activated && user && ishuman(user) && (user.wear_suit == src)) - user << "E:FATAL:RAM_READ_FAIL\nE:FATAL:STACK_EMPTY\nE:FATAL:READ_NULL_POINT\nE:FATAL:PWR_BUS_OVERLOAD" - user << "An electromagnetic pulse disrupts your [name] and violently tears you out of time-bluespace!" - user.emote("scream") + user << "E:FATAL:RAM_READ_FAIL\nE:FATAL:STACK_EMPTY\nE:FATAL:READ_NULL_POINT\nE:FATAL:PWR_BUS_OVERLOAD" deactivate(1, 1) -/obj/item/clothing/suit/space/chronos/proc/finish_chronowalk(mob/living/carbon/human/user, turf/to_turf) - if(!user) - user = src.loc - if(phase_timer_id) - deltimer(phase_timer_id) - phase_timer_id = 0 +/obj/item/clothing/suit/space/chronos/proc/finish_chronowalk() + var/mob/living/carbon/human/user = src.loc if(istype(user)) - if(to_turf) - user.forceMove(to_turf) user.SetStunned(0) user.next_move = 1 user.alpha = 255 - user.update_atom_colour() + user.color = "#ffffff" user.animate_movement = FORWARD_STEPS user.notransform = 0 user.anchored = 0 teleporting = 0 - for(var/obj/item/I in user.held_items) - if(I in hands_nodrop) - I.flags &= ~NODROP + if(user.l_hand && !(hands_nodrop_states & 1)) + user.l_hand.flags &= ~NODROP + if(user.r_hand && !(hands_nodrop_states & 2)) + user.r_hand.flags &= ~NODROP if(phase_underlay && !qdeleted(phase_underlay)) - user.underlays -= phase_underlay qdel(phase_underlay) phase_underlay = null if(camera) @@ -120,26 +109,26 @@ teleport_now.UpdateButtonIcon() - var/list/nonsafe_slots = list(slot_belt, slot_back) - var/list/exposed = list() + var/list/nonsafe_slots = list(slot_belt, slot_back, slot_l_hand, slot_r_hand) for(var/slot in nonsafe_slots) var/obj/item/slot_item = user.get_item_by_slot(slot) - exposed += slot_item - exposed += user.held_items - for(var/exposed_item in exposed) - var/obj/item/exposed_I = exposed_item - if(exposed_I && !(exposed_I.type in chronosafe_items) && user.unEquip(exposed_I)) - user << "Your [exposed_I.name] got left behind." + if(slot_item && !(slot_item.type in chronosafe_items) && user.unEquip(slot_item)) + user << "Your [slot_item.name] got left behind." user.ExtinguishMob() + if(user.buckled) + user.buckled.unbuckle_mob(user,force=1) phase_underlay = create_phase_underlay(user) - hands_nodrop = list() - for(var/obj/item/I in user.held_items) - if(!(I.flags & NODROP)) - hands_nodrop += I - I.flags |= NODROP + hands_nodrop_states = 0 + if(user.l_hand) + hands_nodrop_states |= (user.l_hand.flags & NODROP) ? 1 : 0 + user.l_hand.flags |= NODROP + if(user.r_hand) + hands_nodrop_states |= (user.r_hand.flags & NODROP) ? 2 : 0 + user.r_hand.flags |= NODROP + user.animate_movement = NO_STEPS user.changeNext_move(8 + phase_in_ds) user.notransform = 1 @@ -147,37 +136,39 @@ user.Stun(INFINITY) animate(user, color = "#00ccee", time = 3) - phase_timer_id = addtimer(src, "phase_2", 3, TIMER_NORMAL, user, to_turf, phase_in_ds) - -/obj/item/clothing/suit/space/chronos/proc/phase_2(mob/living/carbon/human/user, turf/to_turf, phase_in_ds) - if(teleporting && activated && user) - animate(user, alpha = 0, time = 2) - phase_timer_id = addtimer(src, "phase_3", 2, TIMER_NORMAL, user, to_turf, phase_in_ds) - else - finish_chronowalk(user, to_turf) - -/obj/item/clothing/suit/space/chronos/proc/phase_3(mob/living/carbon/human/user, turf/to_turf, phase_in_ds) - if(teleporting && activated && user) - user.forceMove(to_turf) - animate(user, alpha = 255, time = phase_in_ds) - phase_timer_id = addtimer(src, "phase_4", phase_in_ds, TIMER_NORMAL, user, to_turf) - else - finish_chronowalk(user, to_turf) - -/obj/item/clothing/suit/space/chronos/proc/phase_4(mob/living/carbon/human/user, turf/to_turf) - if(teleporting && activated && user) - animate(user, color = "#ffffff", time = 3) - phase_timer_id = addtimer(src, "finish_chronowalk", 3, TIMER_NORMAL, user, to_turf) - else - finish_chronowalk(user, to_turf) - + spawn(3) + if(teleporting && activated && user && phase_underlay && !qdeleted(phase_underlay)) + animate(user, alpha = 0, time = 2) + animate(phase_underlay, alpha = 255, time = 2) + sleep(2) + if(teleporting && activated && user && phase_underlay && !qdeleted(phase_underlay)) + phase_underlay.loc = to_turf + user.loc = to_turf + animate(user, alpha = 255, time = phase_in_ds) + animate(phase_underlay, alpha = 0, time = phase_in_ds) + sleep(phase_in_ds) + if(teleporting && activated && phase_underlay && !qdeleted(phase_underlay)) + animate(user, color = "#ffffff", time = 3) + sleep(3) + if(teleporting && user && !qdeleted(user)) + user.loc = to_turf //this will cover if bad things happen before the teleport, yes it is redundant + finish_chronowalk() /obj/item/clothing/suit/space/chronos/proc/create_phase_underlay(var/mob/user) - var/icon/user_icon = icon('icons/effects/alphacolors.dmi', "") - user_icon.AddAlphaMask(getFlatIcon(user)) - var/image/phase = new(user_icon) - phase.appearance_flags = RESET_COLOR|RESET_ALPHA - user.underlays += phase + var/icon/user_icon = getFlatIcon(user) + user_icon.Blend("#ffffff") + var/atom/movable/overlay/phase = new(user.loc) + phase.icon = user_icon + phase.density = 1 + phase.anchored = 1 + phase.master = user + phase.animate_movement = NO_STEPS + phase.alpha = 0 + phase.mouse_opacity = 0 + phase.name = user.name + phase.transform = user.transform + phase.pixel_x = user.pixel_x + phase.pixel_y = user.pixel_y return phase /obj/item/clothing/suit/space/chronos/process() @@ -200,60 +191,61 @@ if(!activating && !activated && !teleporting) activating = 1 var/mob/living/carbon/human/user = src.loc - if(user && ishuman(user) && user.wear_suit == src) - user << "\nChronosuitMK4 login: root" - user << "Password:\n" - user << "root@ChronosuitMK4# chronowalk4 --start\n" - if(user.head && istype(user.head, /obj/item/clothing/head/helmet/space/chronos)) - user << "\[ ok \] Mounting /dev/helm" - helmet = user.head - helmet.flags |= NODROP - helmet.suit = src - src.flags |= NODROP - user << "\[ ok \] Starting brainwave scanner" - user << "\[ ok \] Starting ui display driver" - user << "\[ ok \] Initializing chronowalk4-view" - new_camera(user) - START_PROCESSING(SSobj, src) - activated = 1 - else - user << "\[ fail \] Mounting /dev/helm" - user << "FATAL: Unable to locate /dev/helm. Aborting..." + if(user && ishuman(user)) + if(user.wear_suit == src) + user << "\nChronosuitMK4 login: root" + user << "Password:\n" + user << "root@ChronosuitMK4# chronowalk4 --start\n" + if(user.head && istype(user.head, /obj/item/clothing/head/helmet/space/chronos)) + user << "\[ ok \] Mounting /dev/helmet" + helmet = user.head + helmet.flags |= NODROP + helmet.suit = src + src.flags |= NODROP + user << "\[ ok \] Starting brainwave scanner" + user << "\[ ok \] Starting ui display driver" + user << "\[ ok \] Initializing chronowalk4-view" + new_camera(user) + START_PROCESSING(SSobj, src) + activated = 1 + else + user << "\[ fail \] Mounting /dev/helmet" + user << "FATAL: Unable to locate /dev/helmet. Aborting..." teleport_now.Grant(user) cooldown = world.time + cooldowntime activating = 0 + return 0 /obj/item/clothing/suit/space/chronos/proc/deactivate(force = 0, silent = 0) if(activated && (!teleporting || force)) activating = 1 var/mob/living/carbon/human/user = src.loc - var/hard_landing = teleporting && force + if(user && ishuman(user)) + if(user.wear_suit == src) + if(!silent) + user << "\nroot@ChronosuitMK4# chronowalk4 --stop\n" + if(camera) + if(!silent) + user << "\[ ok \] Sending TERM signal to chronowalk4-view" //yes I know they aren't a different color when shutting down, but they were too similar at a glance + qdel(camera) + if(helmet) + if(!silent) + user << "\[ ok \] Stopping ui display driver" + user << "\[ ok \] Stopping brainwave scanner" + user << "\[ ok \] Unmounting /dev/helmet" + helmet.flags &= ~NODROP + helmet.suit = null + helmet = null + if(!silent) + user << "logout" + teleport_now.Remove(user) src.flags &= ~NODROP cooldown = world.time + cooldowntime * 1.5 activated = 0 activating = 0 finish_chronowalk() - if(user && ishuman(user)) - teleport_now.Remove(user) - if(user.wear_suit == src) - if(hard_landing) - user.electrocute_act(35, src, safety = 1) - user.Weaken(10) - if(!silent) - user << "\nroot@ChronosuitMK4# chronowalk4 --stop\n" - if(camera) - user << "\[ ok \] Sending TERM signal to chronowalk4-view" - if(helmet) - user << "\[ ok \] Stopping ui display driver" - user << "\[ ok \] Stopping brainwave scanner" - user << "\[ ok \] Unmounting /dev/helmet" - user << "logout" - if(helmet) - helmet.flags &= ~NODROP - helmet.suit = null - helmet = null - if(camera) - qdel(camera) + if(teleporting && force) + user.electrocute_act(35, src, safety = 1) /obj/effect/chronos_cam name = "Chronosuit View" diff --git a/code/modules/clothing/spacesuits/flightsuit.dm b/code/modules/clothing/spacesuits/flightsuit.dm deleted file mode 100644 index 4ceae4aec8..0000000000 --- a/code/modules/clothing/spacesuits/flightsuit.dm +++ /dev/null @@ -1,1243 +0,0 @@ - -//So how this is planned to work is it is an item that allows you to fly with some interesting movement mechanics. -//You will still move instantly like usual, but when you move in a direction you gain "momentum" towards that direction -//Momentum will have a maximum value that it will be capped to, and will go down over time -//There is toggleable "stabilizers" that will make momentum go down FAST instead of its normal slow rate -//The suit is heavy and will slow you down on the ground but is a bit faster then usual in air -//The speed at which you drift is determined by your current momentum -//Also, I should probably add in some kind of limiting mechanic but I really don't like having to refill this all the time, expecially as it will be NODROP. -//Apparently due to code limitations you have to detect mob movement with.. shoes. -//The object that handles the flying itself - FLIGHT PACK -------------------------------------------------------------------------------------- -/obj/item/device/flightpack - name = "flight pack" - desc = "An advanced back-worn system that has dual ion engines powerful enough to grant a humanoid flight. Contains an internal self-recharging high-current capacitor for short, powerful boosts." - icon_state = "flightpack_off" - item_state = "flightpack_off" - var/icon_state_active = "flightpack_on" - var/item_state_active = "flightpack_on" - var/icon_state_boost = "flightpack_boost" - var/item_state_boost = "flightpack_boost" - actions_types = list(/datum/action/item_action/flightpack/toggle_flight, /datum/action/item_action/flightpack/engage_boosters, /datum/action/item_action/flightpack/toggle_stabilizers, /datum/action/item_action/flightpack/change_power, /datum/action/item_action/flightpack/toggle_airbrake) - armor = list(melee = 20, bullet = 20, laser = 20, energy = 10, bomb = 30, bio = 100, rad = 75, fire = 100, acid = 100) - - w_class = WEIGHT_CLASS_BULKY - slot_flags = SLOT_BACK - resistance_flags = FIRE_PROOF | ACID_PROOF - - var/obj/item/clothing/suit/space/hardsuit/flightsuit/suit = null - var/mob/living/carbon/human/wearer = null - var/slowdown_ground = 1 - var/slowdown_air = 0 - var/slowdown_brake = TRUE - var/flight = FALSE - var/flight_passflags = PASSTABLE - var/powersetting = 1 - var/powersetting_high = 3 - var/powersetting_low = 1 - var/override_safe = FALSE - - var/boost = FALSE - var/boost_maxcharge = 50 //Vroom! If you hit someone while boosting they'll likely be knocked flying. Fun. - var/boost_charge = 50 - var/boost_speed = 2 - var/boost_power = 50 - var/boost_chargerate = 0.5 - var/boost_drain = 10 //Keep in mind it charges and drains at the same time, so drain realistically is drain-charge=change - - var/momentum_x = 0 //Realistic physics. No more "Instant stopping while barreling down a hallway at Mach 1". - var/momentum_y = 0 - var/momentum_max = 500 - var/momentum_impact_coeff = 0.5 //At this speed you'll start coliding with people resulting in momentum loss and them being knocked back, but no injuries or knockdowns - var/momentum_impact_loss = 50 - var/momentum_crash_coeff = 0.8 //At this speed if you hit a dense object, you will careen out of control, while that object will be knocked flying. - var/momentum_drift_coeff = 0.13 - var/momentum_speed = 0 //How fast we are drifting around - var/momentum_speed_x = 0 - var/momentum_speed_y = 0 - var/momentum_passive_loss = 7 - var/momentum_gain = 20 - - var/stabilizer = TRUE - var/stabilizer_decay_amount = 23 - var/gravity = TRUE - var/gravity_decay_amount = 5 - var/pressure = TRUE - var/pressure_decay_amount = 5 - var/pressure_threshold = 30 - var/brake = FALSE - var/airbrake_decay_amount = 60 - - var/resync = FALSE //Used to resync the flight-suit every 30 seconds or so. - - var/disabled = FALSE //Whether it is disabled from crashes/emps/whatever - var/crash_disable_message = FALSE //To not spam the user with messages - var/emp_disable_message = FALSE - - //This is probably too much code just for EMP damage. - var/emp_damage = 0 //One hit should make it hard to control, continuous hits will cripple it and then simply shut it off/make it crash. Direct hits count more. - var/emp_strong_damage = 1.5 - var/emp_weak_damage = 1 - var/emp_heal_amount = 0.1 //How much emp damage to heal per process. - var/emp_disable_threshold = 3 //3 weak ion, 2 strong ion hits. - var/emp_disabled = FALSE - - var/crash_damage = 0 //Same thing, but for crashes. This is in addition to possible amounts of brute damage to the wearer. - var/crash_damage_low = 1 - var/crash_damage_high = 2.5 - var/crash_disable_threshold = 5 - var/crash_heal_amount = 0.1 - var/crash_disabled = FALSE - var/crash_dampening = 0 - - var/datum/effect_system/trail_follow/ion/flight/ion_trail - - var/assembled = FALSE - var/obj/item/weapon/stock_parts/manipulator/part_manip = null - var/obj/item/weapon/stock_parts/scanning_module/part_scan = null - var/obj/item/weapon/stock_parts/capacitor/part_cap = null - var/obj/item/weapon/stock_parts/micro_laser/part_laser = null - var/obj/item/weapon/stock_parts/matter_bin/part_bin = null - - var/crashing = FALSE //Are we currently getting wrecked? - - -//Start/Stop processing the item to use momentum and flight mechanics. -/obj/item/device/flightpack/New() - START_PROCESSING(SSfastprocess, src) - ..() - ion_trail = new - ion_trail.set_up(src) - -/obj/item/device/flightpack/full/New() - ..() - part_manip = new /obj/item/weapon/stock_parts/manipulator/pico(src) - part_scan = new /obj/item/weapon/stock_parts/scanning_module/phasic(src) - part_cap = new /obj/item/weapon/stock_parts/capacitor/super(src) - part_laser = new /obj/item/weapon/stock_parts/micro_laser/ultra(src) - part_bin = new /obj/item/weapon/stock_parts/matter_bin/super(src) - assembled = TRUE - -/obj/item/device/flightpack/proc/update_parts() - boost_chargerate = initial(boost_chargerate) - boost_drain = initial(boost_drain) - powersetting_high = initial(powersetting_high) - emp_disable_threshold = initial(emp_disable_threshold) - crash_disable_threshold = initial(crash_disable_threshold) - stabilizer_decay_amount = initial(stabilizer_decay_amount) - airbrake_decay_amount = initial(airbrake_decay_amount) - var/manip = 0 //Efficiency - var/scan = 0 //Damage avoidance/other - var/cap = 0 //Charging - var/laser = 0 //Power - var/bin = 0 //Stability - assembled = FALSE //Ready? - if(part_manip && part_scan && part_cap && part_laser && part_bin) - manip = part_manip.rating - scan = part_scan.rating - cap = part_cap.rating - laser = part_laser.rating - bin = part_bin.rating - assembled = TRUE - boost_chargerate *= cap - boost_drain -= manip - powersetting_high = Clamp(laser, 0, 3) - emp_disable_threshold = bin*1.25 - crash_disable_threshold = bin*2 - stabilizer_decay_amount = scan*5.75 - airbrake_decay_amount = manip*15 - crash_dampening = bin - -/obj/item/device/flightpack/Destroy() - if(suit) - delink_suit() - qdel(part_manip) - qdel(part_scan) - qdel(part_cap) - qdel(part_laser) - qdel(part_bin) - STOP_PROCESSING(SSfastprocess, src) - part_manip = null - part_scan = null - part_cap = null - part_laser = null - part_bin = null - ..() - -/obj/item/device/flightpack/emp_act(severity) - var/damage = 0 - if(severity == 1) - damage = emp_strong_damage - else - damage = emp_weak_damage - if(emp_damage <= (emp_disable_threshold * 1.5)) - emp_damage += damage - wearer << "Flightpack: BZZZZZZZZZZZT" - wearer << "Flightpack: WARNING: Class [severity] EMP detected! Circuit damage at [(100/emp_disable_threshold)*emp_damage]!" - -//action BUTTON CODE -/obj/item/device/flightpack/ui_action_click(owner, action) - if(wearer != owner) - wearer = owner - if(!suit) - usermessage("The flightpack will not work without being attached to a suit first!") - return FALSE - if(istype(action, /datum/action/item_action/flightpack/toggle_flight)) - if(!flight) - enable_flight() - else - disable_flight() - if(istype(action, /datum/action/item_action/flightpack/engage_boosters)) - if(!boost) - activate_booster() - else - deactivate_booster() - if(istype(action, /datum/action/item_action/flightpack/toggle_stabilizers)) - if(!stabilizer) - enable_stabilizers() - else - disable_stabilizers() - if(istype(action, /datum/action/item_action/flightpack/change_power)) - cycle_power() - if(istype(action, /datum/action/item_action/flightpack/toggle_airbrake)) - if(!brake) - enable_airbrake() - else - disable_airbrake() - -//Proc to change amount of momentum the wearer has, or dampen all momentum by a certain amount. -/obj/item/device/flightpack/proc/adjust_momentum(amountx, amounty, reduce_amount_total = 0) - if(reduce_amount_total != 0) - if(momentum_x > 0) - momentum_x = Clamp(momentum_x - reduce_amount_total, 0, momentum_max) - else if(momentum_x < 0) - momentum_x = Clamp(momentum_x + reduce_amount_total, -momentum_max, 0) - if(momentum_y > 0) - momentum_y = Clamp(momentum_y - reduce_amount_total, 0, momentum_max) - else if(momentum_y < 0) - momentum_y = Clamp(momentum_y + reduce_amount_total, -momentum_max, 0) - momentum_x = Clamp(momentum_x + amountx, -momentum_max, momentum_max) - momentum_y = Clamp(momentum_y + amounty, -momentum_max, momentum_max) - calculate_momentum_speed() - -//Called by the pair of shoes the wearer is required to wear to detect movement. -/obj/item/device/flightpack/proc/wearer_movement(dir) - if(!flight) - return - var/momentum_increment = momentum_gain - if(boost) - momentum_increment = boost_power - if(brake) - momentum_increment = 0 - switch(dir) - if(NORTH) - adjust_momentum(0, momentum_increment) - if(SOUTH) - adjust_momentum(0, -momentum_increment) - if(EAST) - adjust_momentum(momentum_increment, 0) - if(WEST) - adjust_momentum(-momentum_increment, 0) - -//The wearer has momentum left. Move them and take some away, while negating the momentum that moving the wearer would gain. Or force the wearer to lose control if they are incapacitated. -/obj/item/device/flightpack/proc/momentum_drift() - if(!flight) - return FALSE - var/drift_dir_x = 0 - var/drift_dir_y = 0 - if(momentum_x > 0) - drift_dir_x = EAST - if(momentum_x < 0) - drift_dir_x = WEST - if(momentum_y > 0) - drift_dir_y = NORTH - if(momentum_y < 0) - drift_dir_y = SOUTH - if(momentum_speed == 0) - return FALSE - if(suit) - if(wearer) - if(!wearer.canmove) - losecontrol() - momentum_decay() - for(var/i in 1 to momentum_speed) - if(momentum_speed_x >= i) - step(wearer, drift_dir_x) - if(momentum_speed_y >= i) - step(wearer, drift_dir_y) - sleep(1) - -//Make the wearer lose some momentum. -/obj/item/device/flightpack/proc/momentum_decay() - if(brake) - adjust_momentum(0, 0, airbrake_decay_amount) - if(gravity) - adjust_momentum(0, 0, gravity_decay_amount) - if(stabilizer) - adjust_momentum(0, 0, stabilizer_decay_amount) - if(pressure) - adjust_momentum(0, 0, pressure_decay_amount) - adjust_momentum(0, 0, momentum_passive_loss) - -//Check for gravity, air pressure, and whether this is still linked to a suit. Also, resync the flightpack/flight suit every minute. -/obj/item/device/flightpack/proc/check_conditions() - if(suit) - if(wearer) - if(wearer.has_gravity()) - gravity = 1 - else - gravity = 0 - var/turf/T = get_turf(wearer) - var/datum/gas_mixture/gas = T.return_air() - var/envpressure = gas.return_pressure() - if(envpressure >= pressure_threshold) - pressure = 1 - else - pressure = 0 - if(flight) - if(!assembled) - disable_flight(1) - if(!suit) - disable_flight(1) - if(!resync) - addtimer(src, "resync", 600, TIMER_NORMAL) - resync = 1 - if(!wearer) //Oh god our user fell off! - disable_flight(1) - if(!pressure && brake) - brake = FALSE - usermessage("Airbrakes deactivated due to lack of pressure!", 2) - if(!suit.deployedshoes) - if(brake || stabilizer) - brake = FALSE - stabilizer = FALSE - usermessage("Warning: Sensor data is not being recieved from flight shoes. Stabilizers and airbrake modules OFFLINE!", 2) - -//Resync the suit -/obj/item/device/flightpack/proc/resync() - resync = FALSE - suit.resync() - -//How fast should the wearer be? -/obj/item/device/flightpack/proc/update_slowdown() - if(!flight) - suit.slowdown = slowdown_ground - return - else - suit.slowdown = slowdown_air - -/obj/item/device/flightpack/process() - if(!suit) - return FALSE - update_slowdown() - update_icon() - check_conditions() - calculate_momentum_speed() - momentum_drift() - handle_boost() - handle_damage() - handle_flight() - -/obj/item/device/flightpack/proc/handle_flight() - if(!flight) - return FALSE - if(wearer) - wearer.float(TRUE) - - -/obj/item/device/flightpack/proc/handle_damage() - if(crash_damage) - crash_damage = Clamp(crash_damage-crash_heal_amount, 0, crash_disable_threshold*10) - if(crash_damage >= crash_disable_threshold) - crash_disabled = TRUE - if(crash_disabled && (crash_damage <= 1)) - crash_disabled = FALSE - crash_disable_message = FALSE - usermessage("Gyroscopic sensors recalibrated. Flight systems re-enabled.") - if(emp_damage) - emp_damage = Clamp(emp_damage-emp_heal_amount, 0, emp_disable_threshold * 10) - if(emp_damage >= emp_disable_threshold) - emp_disabled = TRUE - if(emp_disabled && (emp_damage <= 0.5)) - emp_disabled = FALSE - emp_disable_message = FALSE - usermessage("Electromagnetic deflection system re-activated. Flight systems re-enabled.") - disabled = crash_disabled + emp_disabled - if(disabled) - if(crash_disabled && (!crash_disable_message)) - usermessage("Internal gyroscopes scrambled from excessive impacts.", 2) - usermessage("Deactivating to recalibrate flight systems!", 2) - crash_disable_message = TRUE - if(emp_disabled && (!emp_disable_message)) - usermessage("Electromagnetic deflectors overloaded. Short circuit detected in internal systems!", 1) - usermessage("Deactivating to prevent fatal power overload!", 2) - emp_disable_message = TRUE - if(flight) - disable_flight(TRUE) - -/obj/item/device/flightpack/update_icon() - if(!flight) - icon_state = initial(icon_state) - item_state = initial(item_state) - if(flight) - icon_state = icon_state_active - item_state = item_state_active - if(boost) - icon_state = icon_state_boost - item_state = item_state_boost - if(wearer) - wearer.update_inv_wear_suit() - wearer.update_inv_back() - ..() - -/obj/item/device/flightpack/proc/handle_boost() - if(boost) - boost_charge = Clamp(boost_charge-boost_drain, 0, boost_maxcharge) - if(boost_charge < 1) - deactivate_booster() - if(boost_charge < boost_maxcharge) - boost_charge = Clamp(boost_charge+boost_chargerate, 0, boost_maxcharge) - - -/obj/item/device/flightpack/proc/cycle_power() - if(powersetting < powersetting_high) - powersetting++ - else - powersetting = 1 - momentum_gain = powersetting * 10 - usermessage("Engine output set to [momentum_gain].") - -/obj/item/device/flightpack/proc/crash_damage(density, anchored, speed, victim_name) - var/crashmessagesrc = "[wearer] violently crashes into [victim_name], " - var/userdamage = 10 - userdamage -= stabilizer*3 - userdamage -= part_bin.rating - userdamage -= part_scan.rating - userdamage -= part_manip.rating - userdamage += anchored*2 - userdamage += boost*2 - userdamage += speed*2 - if(userdamage < 0) - userdamage = 0 - if(userdamage) - crashmessagesrc += "that really must have hurt!" - else - crashmessagesrc += "but luckily [wearer]'s impact was absorbed by their suit's stabilizers!" - wearer.adjustBruteLoss(userdamage) - usermessage("WARNING: Stabilizers taking damage!", 2) - wearer.visible_message(crashmessagesrc) - crash_damage = Clamp(crash_damage + crash_damage_high, 0, crash_disable_threshold*1.5) - -/obj/item/device/flightpack/proc/userknockback(density, anchored, speed, dir) - var/angle = dir2angle(dir) - angle += 180 - if(angle > 360) - angle -= 360 - dir = angle2dir(angle) - var/turf/target = get_edge_target_turf(get_turf(wearer), dir) - wearer.throw_at_fast(target, (speed+density+anchored), 2, wearer) - wearer.visible_message("[wearer] is knocked flying by the impact!") - -/obj/item/device/flightpack/proc/flight_impact(atom/unmovablevictim, crashdir) //Yes, victim. - if((unmovablevictim == wearer) || crashing) - return FALSE - crashing = TRUE - var/crashpower = 0 - if(crashdir == NORTH || crashdir == SOUTH) - crashpower = momentum_speed_y - else if(crashdir == EAST || crashdir == WEST) - crashpower = momentum_speed_x - if(!flight) - crashing = FALSE - return FALSE - if(boost) - crashpower = 3 - if(!crashpower) - crashing = FALSE - return FALSE - //crashdirs.. - var/density = FALSE - var/anchored = TRUE //Just in case... - var/damage = FALSE - if(ismob(unmovablevictim)) - var/mob/living/L = unmovablevictim - if(L.throwing || (L.pulledby == wearer)) - crashing = FALSE - return FALSE - suit.user.forceMove(get_turf(unmovablevictim)) - crashing = FALSE - mobknockback(L, crashpower, crashdir) - damage = FALSE - density = TRUE - anchored = FALSE - else if(isclosedturf(unmovablevictim)) - if(crashpower < 3) - crashing = FALSE - return FALSE - damage = TRUE - density = TRUE - anchored = TRUE - else if(ismovableatom(unmovablevictim)) - var/atom/movable/victim = unmovablevictim - if(crashpower < 3 || victim.throwing) - crashing = FALSE - return FALSE - density = victim.density - anchored = victim.anchored - victimknockback(victim, crashpower, crashdir) - if(anchored) - damage = TRUE - if(damage) - crash_damage(density, anchored, momentum_speed, unmovablevictim.name) - userknockback(density, anchored, momentum_speed, dir) - losecontrol(move = FALSE) - crashing = FALSE - -/obj/item/device/flightpack/proc/mobknockback(mob/living/victim, power, direction) - if(!ismob(victim)) - return FALSE - var/knockmessage = "[victim] is knocked back by [wearer] as they narrowly avoid a collision!" - if(power == 1) - knockmessage = "[wearer] soars into [victim], pushing them away!" - var/knockback = 0 - var/stun = boost * 2 + (power - 2) - if((stun >= 0) || (power == 3)) - knockmessage += " [wearer] dashes across [victim] at full impulse, knocking them [stun ? "down" : "away"]!" //Impulse... - knockmessage += "" - knockback += power - knockback += (part_manip.rating / 2) - knockback += (part_bin.rating / 2) - knockback += boost*2 - switch(power) - if(1) - knockback = 1 - if(2) - knockback /= 1.5 - var/throwdir = pick(alldirs) - var/turf/target = get_step(victim, throwdir) - for(var/i in 1 to (knockback-1)) - target = get_step(target, throwdir) - wearer.visible_message(knockmessage) - victim.throw_at_fast(target, knockback, 1) - victim.Weaken(stun) - -/obj/item/device/flightpack/proc/victimknockback(atom/movable/victim, power, direction) - if(!victim) - return FALSE - var/knockback = 0 - var/damage = 0 - knockback -= (density * 2) - knockback += power - knockback += (part_manip.rating / 2) - knockback += (part_bin.rating / 2) - knockback *= 4 - if(victim.anchored) - knockback = 0 - damage = power*14 //I mean, if you REALLY want to break your skull to break an airlock... - if(ismob(victim)) //Why the hell didn't it proc the mob one instead? - mobknockback(victim, power, direction) - return FALSE - if(anchored) - knockback = 0 - victim.visible_message("[victim.name] is sent flying by the impact!") - var/turf/target = get_turf(victim) - for(var/i in 1 to knockback) - target = get_step(target, direction) - for(var/i in 1 to knockback/3) - target = get_step(target, pick(alldirs)) - if(knockback) - victim.throw_at_fast(target, knockback, part_manip.rating) - if(isobj(victim)) - var/obj/O = victim - O.take_damage(damage) - -/obj/item/device/flightpack/proc/losecontrol(stun = FALSE, move = TRUE) - usermessage("Warning: Control system not responding. Deactivating!", 3) - wearer.visible_message("[wearer]'s flight suit abruptly shuts off and they lose control!") - if(wearer) - if(move) - while(momentum_x != 0 || momentum_y != 0) - sleep(2) - step(wearer, pick(cardinal)) - momentum_decay() - adjust_momentum(0, 0, 10) - wearer.visible_message("[wearer]'s flight suit crashes into the ground!") - if(stun) - wearer.Weaken(4) - momentum_x = 0 - momentum_y = 0 - if(flight) - disable_flight() - -/obj/item/device/flightpack/proc/enable_flight(forced = FALSE) - if(!suit) - usermessage("Warning: Flightpack not linked to compatible flight-suit mount!", 2) - if(disabled) - usermessage("Internal systems recalibrating. Unable to safely proceed.", 2) - wearer.movement_type |= FLYING - wearer.pass_flags |= flight_passflags - usermessage("ENGAGING FLIGHT ENGINES.") - wearer.visible_message("[wearer]'s flight engines activate as they lift into the air!") - //I DONT HAVE SOUND EFFECTS YET playsound( - flight = TRUE - if(suit.shoes) - suit.shoes.toggle(TRUE) - update_icon() - ion_trail.start() - -/obj/item/device/flightpack/proc/disable_flight(forced = FALSE) - if(forced) - losecontrol(stun = TRUE) - return TRUE - if(abs(momentum_x) <= 20 && abs(momentum_y) <= 20) - momentum_x = 0 - momentum_y = 0 - usermessage("DISENGAGING FLIGHT ENGINES.") - wearer.visible_message("[wearer] drops to the ground as their flight engines cut out!") - //NO SOUND YET playsound( - ion_trail.stop() - wearer.movement_type &= ~FLYING - wearer.pass_flags &= ~flight_passflags - flight = FALSE - if(suit.shoes) - suit.shoes.toggle(FALSE) - else - if(override_safe) - disable_flight(TRUE) - return TRUE - usermessage("Warning: Velocity too high to safely disengage. Retry to confirm emergency shutoff.", 2) - override_safe = TRUE - addtimer(src, "enable_safe", 50, TIMER_NORMAL) - return FALSE - update_icon() - -/obj/item/device/flightpack/proc/enable_safe() - if(override_safe) - override_safe = FALSE - -/obj/item/device/flightpack/dropped(mob/wearer) - ..() - -/obj/item/device/flightpack/item_action_slot_check(slot) - if(slot == SLOT_BACK) - return TRUE - -/obj/item/device/flightpack/equipped(mob/user, slot) - if(ishuman(user)) - wearer = user - ..() - -/obj/item/device/flightpack/proc/calculate_momentum_speed() - if(momentum_x == 0 && momentum_y == 0) //Calculate total - momentum_speed = 0 - else if((abs(momentum_x) >= (momentum_crash_coeff*momentum_max))||(abs(momentum_y) >= (momentum_crash_coeff*momentum_max))) - momentum_speed = 3 - else if((abs(momentum_x) >= (momentum_impact_coeff*momentum_max))||(abs(momentum_y) >= (momentum_impact_coeff*momentum_max))) - momentum_speed = 2 - else if((abs(momentum_x) >= (momentum_drift_coeff*momentum_max))||(abs(momentum_y) >= (momentum_drift_coeff*momentum_max))) - momentum_speed = 1 - if(abs(momentum_x) >= (momentum_crash_coeff*momentum_max)) //Calculate X - momentum_speed_x = 3 - else if(abs(momentum_x) >= (momentum_impact_coeff*momentum_max)) - momentum_speed_x = 2 - else if(abs(momentum_x) >= (momentum_drift_coeff*momentum_max)) - momentum_speed_x = 1 - else - momentum_speed_x = 0 - if(abs(momentum_y) >= (momentum_crash_coeff*momentum_max)) //Calculate Y - momentum_speed_y = 3 - else if(abs(momentum_y) >= (momentum_impact_coeff*momentum_max)) - momentum_speed_y = 2 - else if(abs(momentum_y) >= (momentum_drift_coeff*momentum_max)) - momentum_speed_y = 1 - else - momentum_speed_y = 0 - -/obj/item/device/flightpack/item_action_slot_check(slot) - if(slot == slot_back) - return TRUE - -/obj/item/device/flightpack/proc/enable_stabilizers() - usermessage("Activating automatic stabilization controller and enabling maneuvering assistance.") - stabilizer = TRUE - -/obj/item/device/flightpack/proc/disable_stabilizers() - if(wearer) - if(brake) - disable_airbrake() - usermessage("Deactivating stabilization controllers!", 2) - stabilizer = FALSE - -/obj/item/device/flightpack/proc/activate_booster() - if(!flight) - usermessage("Error: Engines offline!", 2) - return FALSE - if(boost_charge < 5) - usermessage("Insufficient charge in boost capacitors to engage.", 2) - return FALSE - usermessage("Boosters engaged!") - wearer.visible_message("[wearer.name]'s flightpack engines flare in intensity as they are rocketed forward by the immense thrust!") - boost = TRUE - update_slowdown() - -/obj/item/device/flightpack/proc/deactivate_booster() - usermessage("Boosters disengaged!") - boost = FALSE - update_slowdown() - -/obj/item/device/flightpack/proc/enable_airbrake() - if(wearer) - if(!stabilizer) - enable_stabilizers() - usermessage("Stabilizers activated!") - usermessage("Airbrakes extended!") - brake = TRUE - update_slowdown() - -/obj/item/device/flightpack/proc/disable_airbrake() - if(wearer) - usermessage("Airbrakes retracted!") - brake = FALSE - update_slowdown() - -/obj/item/device/flightpack/on_mob_move(dir, mob) - wearer_movement(dir) - -/obj/item/device/flightpack/proc/relink_suit(obj/item/clothing/suit/space/hardsuit/flightsuit/F) - if(suit && suit == F) - return FALSE - else - delink_suit() - if(istype(F)) - suit = F - suit.pack = src - else - suit = null - -/obj/item/device/flightpack/proc/delink_suit() - if(suit) - if(suit.pack && suit.pack == src) - suit.pack = null - suit = null - -/obj/item/device/flightpack/proc/usermessage(message, urgency = 0) - if(urgency == 0) - wearer << "\icon[src]|[message]" - if(urgency == 1) - wearer << "\icon[src]|[message]" - if(urgency == 2) - wearer << "\icon[src]|[message]" - if(urgency == 3) - wearer << "\icon[src]|[message]" - -/obj/item/device/flightpack/attackby(obj/item/I, mob/user, params) - if(ishuman(user) && !ishuman(src.loc)) - wearer = user - if(istype(I, /obj/item/weapon/stock_parts)) - var/obj/item/weapon/stock_parts/S = I - if(istype(S, /obj/item/weapon/stock_parts/manipulator)) - if((!part_manip) || (part_manip.rating < S.rating)) - usermessage("[I] has been sucessfully installed into systems.") - if(user.unEquip(I)) - I.loc = src - part_manip = I - if(istype(S, /obj/item/weapon/stock_parts/scanning_module)) - if((!part_scan) || (part_scan.rating < S.rating)) - usermessage("[I] has been sucessfully installed into systems.") - if(user.unEquip(I)) - I.loc = src - part_scan = I - if(istype(S, /obj/item/weapon/stock_parts/micro_laser)) - if((!part_laser) || (part_laser.rating < S.rating)) - usermessage("[I] has been sucessfully installed into systems.") - if(user.unEquip(I)) - I.loc = src - part_laser = I - if(istype(S, /obj/item/weapon/stock_parts/matter_bin)) - if((!part_bin) || (part_bin.rating < S.rating)) - usermessage("[I] has been sucessfully installed into systems.") - if(user.unEquip(I)) - I.loc = src - part_bin = I - if(istype(S, /obj/item/weapon/stock_parts/capacitor)) - if((!part_cap) || (part_cap.rating < S.rating)) - usermessage("[I] has been sucessfully installed into systems.") - if(user.unEquip(I)) - I.loc = src - part_cap = I - update_parts() - ..() - -//MOB MOVEMENT STUFF---------------------------------------------------------------------------------------------------------------------------------------------- - -/mob/proc/get_flightpack() - return - -/mob/living/carbon/get_flightpack() - var/obj/item/device/flightpack/F = back - if(istype(F)) - return F - else - return FALSE - -/obj/item/device/flightpack/proc/allow_thrust(amount) - if(flight) - return TRUE - -//FLIGHT SHOES----------------------------------------------------------------------------------------------------------------------------------------------------- - -/obj/item/clothing/shoes/flightshoes - name = "flight shoes" - desc = "A pair of specialized boots that contain stabilizers and sensors nessacary for flight gear to work" //Apparently you need these to detect mob movement. - icon_state = "flightshoes" - item_state = "flightshoes_mob" - var/obj/item/clothing/suit/space/hardsuit/flightsuit/suit = null - var/obj/item/device/flightpack/pack = null - var/mob/living/carbon/human/wearer = null - var/active = FALSE - resistance_flags = FIRE_PROOF | ACID_PROOF - -/obj/item/clothing/shoes/flightshoes/Destroy() - if(suit) - suit.shoes = null - -/obj/item/clothing/shoes/flightshoes/proc/toggle(toggle) - if(suit) - active = toggle - if(active) - src.flags |= NOSLIP - if(!active) - src.flags &= ~NOSLIP - -/obj/item/clothing/shoes/flightshoes/dropped(mob/wearer) - ..() - -/obj/item/clothing/shoes/flightshoes/item_action_slot_check(slot) - if(slot == slot_shoes) - return TRUE - -/obj/item/clothing/shoes/flightshoes/proc/delink_suit() - if(suit) - if(suit.shoes && suit.shoes == src) - suit.shoes = null - suit = null - -/obj/item/clothing/shoes/flightshoes/proc/relink_suit(obj/item/clothing/suit/space/hardsuit/flightsuit/F) - if(suit && suit == F) - return FALSE - else - delink_suit() - if(istype(F)) - suit = F - suit.shoes = src - else - suit = null - -//FLIGHT SUIT------------------------------------------------------------------------------------------------------------------------------------------------------ -//Flight pack and flight shoes/helmet are stored in here. This has to be locked to someone to use either. For both balance reasons and practical codewise reasons. - -/obj/item/clothing/suit/space/hardsuit/flightsuit - name = "flight suit" - desc = "An advanced suit that allows the wearer flight via two high powered miniature jet engines on a deployable back-mounted unit." - icon_state = "flightsuit" - item_state = "flightsuit" - strip_delay = 30 - var/locked_strip_delay = 80 - w_class = WEIGHT_CLASS_BULKY - var/obj/item/device/flightpack/pack = null - var/obj/item/clothing/shoes/flightshoes/shoes = null - var/mob/living/carbon/human/user = null - var/deployedpack = FALSE - var/deployedshoes = FALSE - var/locked = FALSE - resistance_flags = FIRE_PROOF | ACID_PROOF - helmettype = /obj/item/clothing/head/helmet/space/hardsuit/flightsuit - jetpack = null - var/flightpack - var/flight = FALSE - allowed = list(/obj/item/device/flashlight,/obj/item/weapon/tank/internals, /obj/item/weapon/gun,/obj/item/weapon/reagent_containers/spray/pepper,/obj/item/ammo_box,/obj/item/ammo_casing,/obj/item/weapon/melee/baton,/obj/item/weapon/restraints/handcuffs) - actions_types = list(/datum/action/item_action/flightsuit/toggle_helmet,/datum/action/item_action/flightsuit/toggle_boots,/datum/action/item_action/flightsuit/toggle_flightpack,/datum/action/item_action/flightsuit/lock_suit) - armor = list(melee = 20, bullet = 20, laser = 20, energy = 10, bomb = 30, bio = 100, rad = 75, fire = 100, acid = 100) - var/maint_panel = FALSE - max_heat_protection_temperature = FIRE_SUIT_MAX_TEMP_PROTECT - -/obj/item/clothing/suit/space/hardsuit/flightsuit/full/New() - ..() - makepack() - makeshoes() - resync() - -/obj/item/clothing/suit/space/hardsuit/flightsuit/proc/usermessage(message, urgency = 0) - if(!urgency) - user << "\icon[src]|[message]" - else if(urgency == 1) - user << "\icon[src]|[message]" - else if(urgency == 2) - user << "\icon[src]|[message]" - -/obj/item/clothing/suit/space/hardsuit/flightsuit/examine(mob/user) - ..() - user << "SUIT: [locked ? "LOCKED" : "UNLOCKED"]" - user << "FLIGHTPACK: [deployedpack ? "ENGAGED" : "DISENGAGED"] FLIGHTSHOES : [deployedshoes ? "ENGAGED" : "DISENGAGED"] HELMET : [suittoggled ? "ENGAGED" : "DISENGAGED"]" - user << "Its maintainence panel is [maint_panel ? "OPEN" : "CLOSED"]" - -/obj/item/clothing/suit/space/hardsuit/flightsuit/Destroy() - dropped() - if(pack) - pack.delink_suit() - qdel(pack) - if(shoes) - shoes.pack = null - shoes.suit = null - qdel(shoes) - ..() - -/obj/item/clothing/suit/space/hardsuit/flightsuit/proc/resync() - if(pack) - pack.relink_suit(src) - if(user) - if(pack) - pack.wearer = user - if(shoes) - shoes.wearer = user - else - if(pack) - pack.wearer = null - if(shoes) - shoes.wearer = null - if(shoes) - shoes.relink_suit(src) - -/obj/item/clothing/suit/space/hardsuit/flightsuit/attack_hand(mob/user) - if(ishuman(user)) - var/mob/living/carbon/human/H = user - if(src == H.wear_suit && locked) - usermessage("You can not take a locked hardsuit off! Unlock it first!", 1) - return - ..() - -/obj/item/clothing/suit/space/hardsuit/flightsuit/ui_action_click(owner, action) - if(istype(action, /datum/action/item_action/flightsuit/lock_suit)) - if(!locked) - lock_suit(owner) - else - unlock_suit(owner) - if(istype(action, /datum/action/item_action/flightsuit/toggle_flightpack)) - if(!deployedpack) - extend_flightpack() - else - retract_flightpack() - if(istype(action, /datum/action/item_action/flightsuit/toggle_boots)) - if(!deployedshoes) - extend_flightshoes() - else - retract_flightshoes() - if(istype(action, /datum/action/item_action/flightsuit/toggle_helmet)) - ToggleHelmet() - -/obj/item/clothing/suit/space/hardsuit/flightsuit/dropped() - if(deployedpack) - retract_flightpack(TRUE) - if(deployedshoes) - retract_flightshoes(TRUE) - if(locked) - unlock_suit(null) - if(user) - user = null - ..() - -/obj/item/clothing/suit/space/hardsuit/flightsuit/ToggleHelmet() - if(!suittoggled) - if(!locked) - usermessage("You must lock your suit before engaging the helmet!", 1) - return FALSE - ..() - -/obj/item/clothing/suit/space/hardsuit/flightsuit/proc/lock_suit(mob/wearer) - user = wearer - user.visible_message("[wearer]'s flight suit locks around them, powered buckles and straps automatically adjusting to their body!") - playsound(src.loc, 'sound/items/rped.ogg', 65, 1) - resync() - strip_delay = locked_strip_delay - locked = TRUE - return TRUE - -/obj/item/clothing/suit/space/hardsuit/flightsuit/proc/unlock_suit(mob/wearer) - if(suittoggled) - usermessage("You must retract the helmet before unlocking your suit!", 1) - return FALSE - if(pack && pack.flight) - usermessage("You must shut off the flight-pack before unlocking your suit!", 1) - return FALSE - if(deployedpack) - usermessage("Your flightpack must be fully retracted first!", 1) - return FALSE - if(deployedshoes) - usermessage("Your flight shoes must be fully retracted first!", 1) - return FALSE - if(wearer) - user.visible_message("[wearer]'s flight suit detaches from their body, becoming nothing more then a bulky metal skeleton.") - playsound(src.loc, 'sound/items/rped.ogg', 65, 1) - resync() - strip_delay = initial(strip_delay) - locked = FALSE - return TRUE - -/obj/item/clothing/suit/space/hardsuit/flightsuit/proc/extend_flightpack(forced = FALSE) - if(!pack) - usermessage("There is no attached flightpack!", 1) - return FALSE - if(deployedpack) - retract_flightpack() - if(!locked) - usermessage("You must lock your flight suit first before deploying anything!", 1) - return FALSE - if(ishuman(user)) - if(user.back) - usermessage("You're already wearing something on your back!", 1) - return FALSE - user.equip_to_slot_if_possible(pack,slot_back,0,0,1) - pack.flags |= NODROP - resync() - user.visible_message("A [pack.name] extends from [user]'s [name] and clamps to their back!") - user.update_inv_wear_suit() - playsound(src.loc, 'sound/mecha/mechmove03.ogg', 50, 1) - deployedpack = TRUE - -/obj/item/clothing/suit/space/hardsuit/flightsuit/proc/retract_flightpack(forced = FALSE) - if(ishuman(user)) - if(pack.flight && !forced) - usermessage("You must disable the engines before retracting the flightpack!", 1) - return FALSE - if(pack.flight && forced) - pack.disable_flight(1) - pack.flags &= ~NODROP - resync() - if(user) - user.unEquip(pack, 1) - user.update_inv_wear_suit() - user.visible_message("[user]'s [pack.name] detaches from their back and retracts into their [src]!") - pack.loc = src - playsound(src.loc, 'sound/mecha/mechmove03.ogg', 50, 1) - deployedpack = FALSE - -/obj/item/clothing/suit/space/hardsuit/flightsuit/proc/extend_flightshoes(forced = FALSE) - if(!shoes) - usermessage("Flight shoes are not installed!", 1) - return FALSE - if(deployedshoes) - retract_flightshoes() - if(!locked) - usermessage("You must lock your flight suit first before deploying anything!", 1) - return FALSE - if(ishuman(user)) - if(user.shoes) - usermessage("You're already wearing something on your feet!", 1) - return FALSE - user.equip_to_slot_if_possible(shoes,slot_shoes,0,0,1) - shoes.flags |= NODROP - user.visible_message("[user]'s [name] extends a pair of [shoes.name] over their feet!") - user.update_inv_wear_suit() - playsound(src.loc, 'sound/mecha/mechmove03.ogg', 50, 1) - deployedshoes = TRUE - -/obj/item/clothing/suit/space/hardsuit/flightsuit/proc/retract_flightshoes(forced = FALSE) - shoes.flags &= ~NODROP - playsound(src.loc, 'sound/mecha/mechmove03.ogg', 50, 1) - if(user) - user.unEquip(shoes, 1) - user.update_inv_wear_suit() - user.visible_message("[user]'s [shoes.name] retracts back into their [name]!") - shoes.loc = src - deployedshoes = FALSE - -/obj/item/clothing/suit/space/hardsuit/flightsuit/proc/makepack() - if(!pack) - pack = new /obj/item/device/flightpack/full(src) - pack.relink_suit(src) - -/obj/item/clothing/suit/space/hardsuit/flightsuit/proc/makeshoes() - if(!shoes) - shoes = new /obj/item/clothing/shoes/flightshoes(src) - shoes.pack = pack - shoes.suit = src - -/obj/item/clothing/suit/space/hardsuit/flightsuit/equipped(mob/M, slot) - if(ishuman(M)) - user = M - if(slot != slot_wear_suit) - if(deployedpack) - retract_flightpack(TRUE) - if(deployedshoes) - retract_flightshoes(TRUE) - if(locked) - unlock_suit(user) - ..() - -/obj/item/clothing/suit/space/hardsuit/flightsuit/proc/detach_pack() - pack.delink_suit() - pack.loc = get_turf(src) - pack = null - usermessage("You detach the flightpack.") - -/obj/item/clothing/suit/space/hardsuit/flightsuit/proc/attach_pack(obj/item/device/flightpack/F) - F.loc = src - pack = F - pack.relink_suit(src) - usermessage("You attach and fasten the flightpack.") - -/obj/item/clothing/suit/space/hardsuit/flightsuit/proc/detach_shoes() - shoes.delink_suit() - shoes.loc = get_turf(src) - shoes = null - usermessage("You detach the flight shoes.") - -/obj/item/clothing/suit/space/hardsuit/flightsuit/proc/attach_shoes(obj/item/clothing/shoes/flightshoes/S) - S.loc = src - shoes = S - shoes.relink_suit(src) - usermessage("You attach and fasten a pair of flight shoes.") - -/obj/item/clothing/suit/space/hardsuit/flightsuit/attackby(obj/item/I, mob/wearer, params) - user = wearer - if(src == user.get_item_by_slot(slot_wear_suit)) - usermessage("You can not perform any service without taking the suit off!", 1) - return FALSE - if(locked) - usermessage("You can not perform any service while the suit is locked!", 1) - return FALSE - if(istype(I, /obj/item/weapon/screwdriver)) - if(!maint_panel) - maint_panel = TRUE - else - maint_panel = FALSE - usermessage("You [maint_panel? "open" : "close"] the maintainence panel.") - if(!maint_panel) - usermessage("The maintainence panel is closed!", 1) - return FALSE - if(istype(I, /obj/item/weapon/crowbar)) - var/list/inputlist = list() - if(pack) - inputlist += "Pack" - if(shoes) - inputlist += "Shoes" - if(!inputlist.len) - usermessage("There is nothing inside the flightsuit to remove!", 1) - return FALSE - var/input = input(user, "What to remove?", "Removing module") as null|anything in list("Pack", "Shoes") - if(pack && input == "Pack") - if(pack.flight) - usermessage("You can not pry off an active flightpack!", 1) - return FALSE - if(deployedpack) - usermessage("Disengage the flightpack first!", 1) - return FALSE - detach_pack() - if(shoes && input == "Shoes") - if(deployedshoes) - usermessage("Disengage the shoes first!", 1) - return FALSE - detach_shoes() - if(istype(I, /obj/item/device/flightpack)) - var/obj/item/device/flightpack/F = I - if(pack) - usermessage("[src] already has a flightpack installed!", 1) - return FALSE - if(!F.assembled) - var/addmsg = " It is missing a " - var/list/addmsglist = list() - if(!F.part_manip) - addmsglist += "manipulator" - if(!F.part_cap) - addmsglist += "capacitor" - if(!F.part_scan) - addmsglist += "scanning module" - if(!F.part_laser) - addmsglist += "micro-laser" - if(!F.part_bin) - addmsglist += "matter bin" - addmsg += english_list(addmsglist) - usermessage("The flightpack you are trying to install is not fully assembled and operational![addmsg].", 1) - return FALSE - if(user.unEquip(F)) - attach_pack(F) - if(istype(I, /obj/item/clothing/shoes/flightshoes)) - var/obj/item/clothing/shoes/flightshoes/S = I - if(shoes) - usermessage("There are already shoes installed!", 1) - return FALSE - if(user.unEquip(S)) - attach_shoes(S) - ..() - -//FLIGHT HELMET---------------------------------------------------------------------------------------------------------------------------------------------------- -/obj/item/clothing/head/helmet/space/hardsuit/flightsuit - name = "flight helmet" - desc = "A sealed helmet attached to a flight suit for EVA usage scenerios. Its visor contains an information uplink HUD." - icon_state = "flighthelmet" - item_state = "flighthelmet" - item_color = "flight" - resistance_flags = FIRE_PROOF | ACID_PROOF - brightness_on = 7 - armor = list(melee = 20, bullet = 20, laser = 20, energy = 10, bomb = 30, bio = 100, rad = 75, fire = 100, acid = 100) - max_heat_protection_temperature = FIRE_HELM_MAX_TEMP_PROTECT - var/list/datahuds = list(DATA_HUD_SECURITY_ADVANCED, DATA_HUD_MEDICAL_ADVANCED, DATA_HUD_DIAGNOSTIC) - -/obj/item/clothing/head/helmet/space/hardsuit/flightsuit/equipped(mob/living/carbon/human/wearer, slot) - ..() - for(var/hudtype in datahuds) - var/datum/atom_hud/H = huds[hudtype] - H.add_hud_to(wearer) - -/obj/item/clothing/head/helmet/space/hardsuit/flightsuit/dropped(mob/living/carbon/human/wearer) - ..() - for(var/hudtype in datahuds) - var/datum/atom_hud/H = huds[hudtype] - H.remove_hud_from(wearer) - - -//ITEM actionS------------------------------------------------------------------------------------------------------------------------------------------------------ -//TODO: TOGGLED BUTTON SPRITES -/datum/action/item_action/flightsuit/toggle_boots - name = "Toggle Boots" - button_icon_state = "flightsuit_shoes" - background_icon_state = "bg_tech" - -/datum/action/item_action/flightsuit/toggle_helmet - name = "Toggle Helmet" - button_icon_state = "flightsuit_helmet" - background_icon_state = "bg_tech" - -/datum/action/item_action/flightsuit/toggle_flightpack - name = "Toggle Flightpack" - button_icon_state = "flightsuit_pack" - background_icon_state = "bg_tech" - -/datum/action/item_action/flightsuit/lock_suit - name = "Lock Suit" - button_icon_state = "flightsuit_lock" - background_icon_state = "bg_tech" - -/datum/action/item_action/flightpack/toggle_flight - name = "Toggle Flight" - button_icon_state = "flightpack_fly" - background_icon_state = "bg_tech_blue" - -/datum/action/item_action/flightpack/engage_boosters - name = "Toggle Boosters" - button_icon_state = "flightpack_boost" - background_icon_state = "bg_tech_blue" - -/datum/action/item_action/flightpack/toggle_stabilizers - name = "Toggle Stabilizers" - button_icon_state = "flightpack_stabilizer" - background_icon_state = "bg_tech_blue" - -/datum/action/item_action/flightpack/change_power - name = "Flight Power Setting" - button_icon_state = "flightpack_power" - background_icon_state = "bg_tech_blue" - -/datum/action/item_action/flightpack/toggle_airbrake - name = "Toggle Airbrake" - button_icon_state = "flightpack_airbrake" - background_icon_state = "bg_tech_blue" diff --git a/code/modules/clothing/spacesuits/hardsuit.dm b/code/modules/clothing/spacesuits/hardsuit.dm index 710a385022..36394c1924 100644 --- a/code/modules/clothing/spacesuits/hardsuit.dm +++ b/code/modules/clothing/spacesuits/hardsuit.dm @@ -4,9 +4,7 @@ desc = "A special helmet designed for work in a hazardous, low-pressure environment. Has radiation shielding." icon_state = "hardsuit0-engineering" item_state = "eng_helm" - obj_integrity = 300 - max_integrity = 300 - armor = list(melee = 10, bullet = 5, laser = 10, energy = 5, bomb = 10, bio = 100, rad = 75, fire = 50, acid = 75) + armor = list(melee = 10, bullet = 5, laser = 10, energy = 5, bomb = 10, bio = 100, rad = 75) var/basestate = "hardsuit" var/brightness_on = 4 //luminosity when on var/on = 0 @@ -21,25 +19,16 @@ user.update_inv_head() //so our mob-overlays update if(on) - user.AddLuminosity(brightness_on) + set_light(brightness_on) else - user.AddLuminosity(-brightness_on) + set_light(0) + for(var/X in actions) var/datum/action/A = X A.UpdateButtonIcon() - -/obj/item/clothing/head/helmet/space/hardsuit/pickup(mob/user) - ..() - if(on) - user.AddLuminosity(brightness_on) - SetLuminosity(0) - /obj/item/clothing/head/helmet/space/hardsuit/dropped(mob/user) ..() - if(on) - user.AddLuminosity(-brightness_on) - SetLuminosity(brightness_on) if(suit) suit.RemoveHelmet() @@ -74,9 +63,7 @@ desc = "A special suit that protects against hazardous, low pressure environments. Has radiation shielding." icon_state = "hardsuit-engineering" item_state = "eng_hardsuit" - obj_integrity = 300 - max_integrity = 300 - armor = list(melee = 10, bullet = 5, laser = 10, energy = 5, bomb = 10, bio = 100, rad = 75, fire = 50, acid = 75) + armor = list(melee = 10, bullet = 5, laser = 10, energy = 5, bomb = 10, bio = 100, rad = 75) allowed = list(/obj/item/device/flashlight,/obj/item/weapon/tank/internals,/obj/item/device/t_scanner, /obj/item/weapon/rcd, /obj/item/weapon/pipe_dispenser) siemens_coefficient = 0 var/obj/item/clothing/head/helmet/space/hardsuit/helmet @@ -84,44 +71,11 @@ var/helmettype = /obj/item/clothing/head/helmet/space/hardsuit var/obj/item/weapon/tank/jetpack/suit/jetpack = null - /obj/item/clothing/suit/space/hardsuit/New() if(jetpack && ispath(jetpack)) jetpack = new jetpack(src) ..() -/obj/item/clothing/suit/space/hardsuit/attack_self(mob/user) - user.changeNext_move(CLICK_CD_MELEE) - ..() - -/obj/item/clothing/suit/space/hardsuit/attackby(obj/item/I, mob/user, params) - if(istype(I, /obj/item/weapon/tank/jetpack/suit)) - if(jetpack) - user << "[src] already has a jetpack installed." - return - if(src == user.get_item_by_slot(slot_wear_suit)) //Make sure the player is not wearing the suit before applying the upgrade. - user << "You cannot install the upgrade to [src] while wearing it." - return - - if(user.unEquip(I)) - jetpack = I - I.loc = src - user << "You successfully install the jetpack into [src]." - - else if(istype(I, /obj/item/weapon/screwdriver)) - if(!jetpack) - user << "[src] has no jetpack installed." - return - if(src == user.get_item_by_slot(slot_wear_suit)) - user << "You cannot remove the jetpack from [src] while wearing it." - return - - jetpack.turn_off() - jetpack.loc = get_turf(src) - jetpack = null - user << "You successfully remove the jetpack from [src]." - - /obj/item/clothing/suit/space/hardsuit/equipped(mob/user, slot) ..() if(jetpack) @@ -147,18 +101,16 @@ desc = "A special helmet designed for work in a hazardous, low-pressure environment. Has radiation shielding." icon_state = "hardsuit0-engineering" item_state = "eng_helm" - armor = list(melee = 30, bullet = 5, laser = 10, energy = 5, bomb = 10, bio = 100, rad = 75, fire = 100, acid = 75) + armor = list(melee = 30, bullet = 5, laser = 10, energy = 5, bomb = 10, bio = 100, rad = 75) item_color = "engineering" - resistance_flags = FIRE_PROOF /obj/item/clothing/suit/space/hardsuit/engine name = "engineering hardsuit" desc = "A special suit that protects against hazardous, low pressure environments. Has radiation shielding." icon_state = "hardsuit-engineering" item_state = "eng_hardsuit" - armor = list(melee = 30, bullet = 5, laser = 10, energy = 5, bomb = 10, bio = 100, rad = 75, fire = 100, acid = 75) + armor = list(melee = 30, bullet = 5, laser = 10, energy = 5, bomb = 10, bio = 100, rad = 75) helmettype = /obj/item/clothing/head/helmet/space/hardsuit/engine - resistance_flags = FIRE_PROOF //Atmospherics /obj/item/clothing/head/helmet/space/hardsuit/engine/atmos @@ -167,7 +119,7 @@ icon_state = "hardsuit0-atmospherics" item_state = "atmo_helm" item_color = "atmospherics" - armor = list(melee = 30, bullet = 5, laser = 10, energy = 5, bomb = 10, bio = 100, rad = 0, fire = 100, acid = 75) + armor = list(melee = 30, bullet = 5, laser = 10, energy = 5, bomb = 10, bio = 100, rad = 0) heat_protection = HEAD //Uncomment to enable firesuit protection max_heat_protection_temperature = FIRE_IMMUNITY_HELM_MAX_TEMP_PROTECT @@ -176,7 +128,7 @@ desc = "A special suit that protects against hazardous, low pressure environments. Has thermal shielding." icon_state = "hardsuit-atmospherics" item_state = "atmo_hardsuit" - armor = list(melee = 30, bullet = 5, laser = 10, energy = 5, bomb = 10, bio = 100, rad = 0, fire = 100, acid = 75) + armor = list(melee = 30, bullet = 5, laser = 10, energy = 5, bomb = 10, bio = 100, rad = 0) heat_protection = CHEST|GROIN|LEGS|FEET|ARMS|HANDS //Uncomment to enable firesuit protection max_heat_protection_temperature = FIRE_IMMUNITY_SUIT_MAX_TEMP_PROTECT helmettype = /obj/item/clothing/head/helmet/space/hardsuit/engine/atmos @@ -189,21 +141,23 @@ icon_state = "hardsuit0-white" item_state = "ce_helm" item_color = "white" - armor = list(melee = 40, bullet = 5, laser = 10, energy = 5, bomb = 50, bio = 100, rad = 90, fire = 100, acid = 90) - heat_protection = HEAD + armor = list(melee = 40, bullet = 5, laser = 10, energy = 5, bomb = 50, bio = 100, rad = 90) + heat_protection = HEAD //Uncomment to enable firesuit protection max_heat_protection_temperature = FIRE_IMMUNITY_HELM_MAX_TEMP_PROTECT + /obj/item/clothing/suit/space/hardsuit/engine/elite icon_state = "hardsuit-white" name = "advanced hardsuit" desc = "An advanced suit that protects against hazardous, low pressure environments. Shines with a high polish." item_state = "ce_hardsuit" - armor = list(melee = 40, bullet = 5, laser = 10, energy = 5, bomb = 50, bio = 100, rad = 90, fire = 100, acid = 90) - heat_protection = CHEST|GROIN|LEGS|FEET|ARMS|HANDS + armor = list(melee = 40, bullet = 5, laser = 10, energy = 5, bomb = 50, bio = 100, rad = 90) + heat_protection = CHEST|GROIN|LEGS|FEET|ARMS|HANDS //Uncomment to enable firesuit protection max_heat_protection_temperature = FIRE_IMMUNITY_SUIT_MAX_TEMP_PROTECT helmettype = /obj/item/clothing/head/helmet/space/hardsuit/engine/elite jetpack = /obj/item/weapon/tank/jetpack/suit + //Mining hardsuit /obj/item/clothing/head/helmet/space/hardsuit/mining name = "mining hardsuit helmet" @@ -212,9 +166,8 @@ item_state = "mining_helm" item_color = "mining" max_heat_protection_temperature = FIRE_SUIT_MAX_TEMP_PROTECT - resistance_flags = FIRE_PROOF heat_protection = CHEST|GROIN|LEGS|ARMS - armor = list(melee = 30, bullet = 5, laser = 10, energy = 5, bomb = 50, bio = 100, rad = 50, fire = 50, acid = 75) + armor = list(melee = 30, bullet = 5, laser = 10, energy = 5, bomb = 50, bio = 100, rad = 50) brightness_on = 7 allowed = list(/obj/item/device/flashlight,/obj/item/weapon/tank/internals, /obj/item/weapon/resonator, /obj/item/device/mining_scanner, /obj/item/device/t_scanner/adv_mining_scanner, /obj/item/weapon/gun/energy/kinetic_accelerator) @@ -225,11 +178,12 @@ desc = "A special suit that protects against hazardous, low pressure environments. Has reinforced plating for wildlife encounters." item_state = "mining_hardsuit" max_heat_protection_temperature = FIRE_SUIT_MAX_TEMP_PROTECT - resistance_flags = FIRE_PROOF - armor = list(melee = 30, bullet = 5, laser = 10, energy = 5, bomb = 50, bio = 100, rad = 50, fire = 50, acid = 75) + armor = list(melee = 30, bullet = 5, laser = 10, energy = 5, bomb = 50, bio = 100, rad = 50) allowed = list(/obj/item/device/flashlight,/obj/item/weapon/tank/internals,/obj/item/weapon/storage/bag/ore,/obj/item/weapon/pickaxe) helmettype = /obj/item/clothing/head/helmet/space/hardsuit/mining + + //Syndicate hardsuit /obj/item/clothing/head/helmet/space/hardsuit/syndi name = "blood-red hardsuit helmet" @@ -238,7 +192,7 @@ icon_state = "hardsuit1-syndi" item_state = "syndie_helm" item_color = "syndi" - armor = list(melee = 40, bullet = 50, laser = 30, energy = 15, bomb = 35, bio = 100, rad = 50, fire = 50, acid = 90) + armor = list(melee = 40, bullet = 50, laser = 30, energy = 15, bomb = 35, bio = 100, rad = 50) on = 1 var/obj/item/clothing/suit/space/hardsuit/syndi/linkedsuit = null actions_types = list(/datum/action/item_action/toggle_helmet_mode) @@ -262,7 +216,7 @@ user << "You switch your hardsuit to EVA mode, sacrificing speed for space protection." name = initial(name) desc = initial(desc) - user.AddLuminosity(brightness_on) + set_light(brightness_on) flags |= visor_flags flags_cover |= HEADCOVERSEYES | HEADCOVERSMOUTH flags_inv |= visor_flags_inv @@ -271,7 +225,7 @@ user << "You switch your hardsuit to combat mode and can now run at full speed." name += " (combat)" desc = alt_desc - user.AddLuminosity(-brightness_on) + set_light(0) flags &= ~visor_flags flags_cover &= ~(HEADCOVERSEYES | HEADCOVERSMOUTH) flags_inv &= ~visor_flags_inv @@ -315,12 +269,13 @@ icon_state = "hardsuit1-syndi" item_state = "syndie_hardsuit" item_color = "syndi" - w_class = WEIGHT_CLASS_NORMAL - armor = list(melee = 40, bullet = 50, laser = 30, energy = 15, bomb = 35, bio = 100, rad = 50, fire = 50, acid = 90) + w_class = 3 + armor = list(melee = 40, bullet = 50, laser = 30, energy = 15, bomb = 35, bio = 100, rad = 50) allowed = list(/obj/item/weapon/gun,/obj/item/ammo_box,/obj/item/ammo_casing,/obj/item/weapon/melee/baton,/obj/item/weapon/melee/energy/sword/saber,/obj/item/weapon/restraints/handcuffs,/obj/item/weapon/tank/internals) helmettype = /obj/item/clothing/head/helmet/space/hardsuit/syndi jetpack = /obj/item/weapon/tank/jetpack/suit + //Elite Syndie suit /obj/item/clothing/head/helmet/space/hardsuit/syndi/elite name = "elite syndicate hardsuit helmet" @@ -328,13 +283,12 @@ alt_desc = "An elite version of the syndicate helmet, with improved armour and fire shielding. It is in combat mode. Property of Gorlex Marauders." icon_state = "hardsuit0-syndielite" item_color = "syndielite" - armor = list(melee = 60, bullet = 60, laser = 50, energy = 25, bomb = 55, bio = 100, rad = 70, fire = 100, acid = 100) + armor = list(melee = 60, bullet = 60, laser = 50, energy = 25, bomb = 55, bio = 100, rad = 70) heat_protection = HEAD max_heat_protection_temperature = FIRE_IMMUNITY_SUIT_MAX_TEMP_PROTECT visor_flags_inv = 0 visor_flags = 0 on = 0 - resistance_flags = FIRE_PROOF | ACID_PROOF /obj/item/clothing/suit/space/hardsuit/syndi/elite @@ -344,10 +298,10 @@ icon_state = "hardsuit0-syndielite" item_color = "syndielite" helmettype = /obj/item/clothing/head/helmet/space/hardsuit/syndi/elite - armor = list(melee = 60, bullet = 60, laser = 50, energy = 25, bomb = 55, bio = 100, rad = 70, fire = 100, acid = 100) + armor = list(melee = 60, bullet = 60, laser = 50, energy = 25, bomb = 55, bio = 100, rad = 70) heat_protection = CHEST|GROIN|LEGS|FEET|ARMS|HANDS max_heat_protection_temperature = FIRE_IMMUNITY_SUIT_MAX_TEMP_PROTECT - resistance_flags = FIRE_PROOF | ACID_PROOF + //The Owl Hardsuit /obj/item/clothing/head/helmet/space/hardsuit/syndi/owl @@ -378,8 +332,8 @@ icon_state = "hardsuit0-wiz" item_state = "wiz_helm" item_color = "wiz" - resistance_flags = FIRE_PROOF | ACID_PROOF //No longer shall our kind be foiled by lone chemists with spray bottles! - armor = list(melee = 40, bullet = 40, laser = 40, energy = 20, bomb = 35, bio = 100, rad = 50, fire = 100, acid = 100) + unacidable = 1 //No longer shall our kind be foiled by lone chemists with spray bottles! + armor = list(melee = 40, bullet = 40, laser = 40, energy = 20, bomb = 35, bio = 100, rad = 50) heat_protection = HEAD //Uncomment to enable firesuit protection max_heat_protection_temperature = FIRE_IMMUNITY_HELM_MAX_TEMP_PROTECT @@ -388,9 +342,9 @@ name = "gem-encrusted hardsuit" desc = "A bizarre gem-encrusted suit that radiates magical energies." item_state = "wiz_hardsuit" - w_class = WEIGHT_CLASS_NORMAL - resistance_flags = FIRE_PROOF | ACID_PROOF - armor = list(melee = 40, bullet = 40, laser = 40, energy = 20, bomb = 35, bio = 100, rad = 50, fire = 100, acid = 100) + w_class = 3 + unacidable = 1 + armor = list(melee = 40, bullet = 40, laser = 40, energy = 20, bomb = 35, bio = 100, rad = 50) allowed = list(/obj/item/weapon/teleportation_scroll,/obj/item/weapon/tank/internals) heat_protection = CHEST|GROIN|LEGS|FEET|ARMS|HANDS //Uncomment to enable firesuit protection max_heat_protection_temperature = FIRE_IMMUNITY_SUIT_MAX_TEMP_PROTECT @@ -405,7 +359,7 @@ item_state = "medical_helm" item_color = "medical" flash_protect = 0 - armor = list(melee = 30, bullet = 5, laser = 10, energy = 5, bomb = 10, bio = 100, rad = 50, fire = 75, acid = 75) + armor = list(melee = 30, bullet = 5, laser = 10, energy = 5, bomb = 10, bio = 100, rad = 50) scan_reagents = 1 /obj/item/clothing/suit/space/hardsuit/medical @@ -414,19 +368,38 @@ desc = "A special suit that protects against hazardous, low pressure environments. Built with lightweight materials for easier movement." item_state = "medical_hardsuit" allowed = list(/obj/item/device/flashlight,/obj/item/weapon/tank/internals,/obj/item/weapon/storage/firstaid,/obj/item/device/healthanalyzer,/obj/item/stack/medical) - armor = list(melee = 30, bullet = 5, laser = 10, energy = 5, bomb = 10, bio = 100, rad = 50, fire = 75, acid = 75) + armor = list(melee = 30, bullet = 5, laser = 10, energy = 5, bomb = 10, bio = 100, rad = 50) helmettype = /obj/item/clothing/head/helmet/space/hardsuit/medical + //Captain hardsuit +/obj/item/clothing/head/helmet/space/hardsuit/captain + name = "captain's hardsuit helmet" + desc = "An advanced, armoured helmet for travel and combat in a hazardous, low pressure environment. Feels extra cozy." + icon_state = "hardsuit0-captain" + item_state = "captain_helm" + item_color = "captain" + armor = list(melee = 40, bullet = 50, laser = 50, energy = 25, bomb = 50, bio = 100, rad = 50) + flash_protect = 1 + +/obj/item/clothing/suit/space/hardsuit/captain + name = "captain's hardsuit" + desc = "An advanced, Nanotrasen exclusive, heavily armoured hardsuit that protects against hazardous, low pressure environments. Warm, sexy, and stylish." + icon_state = "hardsuit-captain" + item_state = "captain_hardsuit" + allowed = list(/obj/item/weapon/tank/internals, /obj/item/device/flashlight,/obj/item/weapon/gun/energy, /obj/item/weapon/gun/projectile, /obj/item/ammo_box, /obj/item/ammo_casing, /obj/item/weapon/melee/baton,/obj/item/weapon/restraints/handcuffs) + armor = list(melee = 40, bullet = 50, laser = 50, energy = 25, bomb = 50, bio = 100, rad = 50) + helmettype = /obj/item/clothing/head/helmet/space/hardsuit/captain + //Research Director hardsuit /obj/item/clothing/head/helmet/space/hardsuit/rd name = "prototype hardsuit helmet" desc = "A prototype helmet designed for research in a hazardous, low pressure environment. Scientific data flashes across the visor." icon_state = "hardsuit0-rd" item_color = "rd" - resistance_flags = ACID_PROOF | FIRE_PROOF + unacidable = 1 var/onboard_hud_enabled = 0 //stops conflicts with another diag HUD max_heat_protection_temperature = FIRE_SUIT_MAX_TEMP_PROTECT - armor = list(melee = 30, bullet = 5, laser = 10, energy = 5, bomb = 100, bio = 100, rad = 60, fire = 60, acid = 80) + armor = list(melee = 30, bullet = 5, laser = 10, energy = 5, bomb = 100, bio = 100, rad = 60) var/obj/machinery/doppler_array/integrated/bomb_radar scan_reagents = 1 actions_types = list(/datum/action/item_action/toggle_helmet_light, /datum/action/item_action/toggle_research_scanner) @@ -455,11 +428,11 @@ name = "prototype hardsuit" desc = "A prototype suit that protects against hazardous, low pressure environments. Fitted with extensive plating for handling explosives and dangerous research materials." item_state = "hardsuit-rd" - resistance_flags = ACID_PROOF | FIRE_PROOF + unacidable = 1 max_heat_protection_temperature = FIRE_SUIT_MAX_TEMP_PROTECT //Same as an emergency firesuit. Not ideal for extended exposure. allowed = list(/obj/item/device/flashlight,/obj/item/weapon/tank/internals, /obj/item/weapon/gun/energy/wormhole_projector, /obj/item/weapon/hand_tele, /obj/item/device/aicard) - armor = list(melee = 30, bullet = 5, laser = 10, energy = 5, bomb = 100, bio = 100, rad = 60, fire = 60, acid = 80) + armor = list(melee = 30, bullet = 5, laser = 10, energy = 5, bomb = 100, bio = 100, rad = 60) helmettype = /obj/item/clothing/head/helmet/space/hardsuit/rd @@ -471,7 +444,7 @@ icon_state = "hardsuit0-sec" item_state = "sec_helm" item_color = "sec" - armor = list(melee = 30, bullet = 15, laser = 30,energy = 10, bomb = 10, bio = 100, rad = 50, fire = 75, acid = 75) + armor = list(melee = 30, bullet = 15, laser = 30,energy = 10, bomb = 10, bio = 100, rad = 50) /obj/item/clothing/suit/space/hardsuit/security @@ -479,8 +452,8 @@ name = "security hardsuit" desc = "A special suit that protects against hazardous, low pressure environments. Has an additional layer of armor." item_state = "sec_hardsuit" - allowed = list(/obj/item/device/flashlight,/obj/item/weapon/tank/internals, /obj/item/weapon/gun/energy,/obj/item/weapon/reagent_containers/spray/pepper,/obj/item/weapon/gun/ballistic,/obj/item/ammo_box,/obj/item/ammo_casing,/obj/item/weapon/melee/baton,/obj/item/weapon/restraints/handcuffs) - armor = list(melee = 30, bullet = 15, laser = 30, energy = 10, bomb = 10, bio = 100, rad = 50, fire = 75, acid = 75) + allowed = list(/obj/item/device/flashlight,/obj/item/weapon/tank/internals, /obj/item/weapon/gun/energy,/obj/item/weapon/reagent_containers/spray/pepper,/obj/item/weapon/gun/projectile,/obj/item/ammo_box,/obj/item/ammo_casing,/obj/item/weapon/melee/baton,/obj/item/weapon/restraints/handcuffs) + armor = list(melee = 30, bullet = 15, laser = 30, energy = 10, bomb = 10, bio = 100, rad = 50) helmettype = /obj/item/clothing/head/helmet/space/hardsuit/security /obj/item/clothing/head/helmet/space/hardsuit/security/hos @@ -488,68 +461,16 @@ desc = "a special bulky helmet designed for work in a hazardous, low pressure environment. Has an additional layer of armor." icon_state = "hardsuit0-hos" item_color = "hos" - armor = list(melee = 45, bullet = 25, laser = 30,energy = 10, bomb = 25, bio = 100, rad = 50, fire = 95, acid = 95) + armor = list(melee = 45, bullet = 25, laser = 30,energy = 10, bomb = 25, bio = 100, rad = 50) /obj/item/clothing/suit/space/hardsuit/security/hos icon_state = "hardsuit-hos" name = "head of security's hardsuit" desc = "A special bulky suit that protects against hazardous, low pressure environments. Has an additional layer of armor." - armor = list(melee = 45, bullet = 25, laser = 30, energy = 10, bomb = 25, bio = 100, rad = 50, fire = 95, acid = 95) + armor = list(melee = 45, bullet = 25, laser = 30, energy = 10, bomb = 25, bio = 100, rad = 50) helmettype = /obj/item/clothing/head/helmet/space/hardsuit/security/hos - //Captain -/obj/item/clothing/head/helmet/space/hardsuit/captain - name = "captain's hardsuit helmet" - icon_state = "capspace" - item_state = "capspacehelmet" - desc = "A tactical SWAT helmet MK.II boasting better protection and a horrible fashion sense." - armor = list(melee = 40, bullet = 50, laser = 50, energy = 25, bomb = 50, bio = 100, rad = 50, fire = 100, acid = 100) - resistance_flags = FIRE_PROOF | ACID_PROOF - flags_inv = HIDEEARS|HIDEEYES|HIDEFACE|HIDEHAIR //we want to see the mask - heat_protection = HEAD - actions_types = list() - -/obj/item/clothing/head/helmet/space/hardsuit/captain/attack_self() - return //Sprites required for flashlight - -/obj/item/clothing/suit/space/hardsuit/captain - name = "captain's SWAT suit" - desc = "A MK.II SWAT suit with streamlined joints and armor made out of superior materials, insulated against intense heat. The most advanced tactical armor available Usually reserved for heavy hitter corporate security, this one has a regal finish in Nanotrasen company colors. Better not let the assistants get a hold of it." - icon_state = "caparmor" - item_state = "capspacesuit" - allowed = list(/obj/item/weapon/tank/internals, /obj/item/device/flashlight,/obj/item/weapon/gun/energy, /obj/item/weapon/gun/ballistic, /obj/item/ammo_box, /obj/item/ammo_casing, /obj/item/weapon/melee/baton,/obj/item/weapon/restraints/handcuffs) - armor = list(melee = 40, bullet = 50, laser = 50, energy = 25, bomb = 50, bio = 100, rad = 50, fire = 100, acid = 100) - resistance_flags = FIRE_PROOF | ACID_PROOF - heat_protection = CHEST|GROIN|LEGS|FEET|ARMS|HANDS - max_heat_protection_temperature = FIRE_IMMUNITY_SUIT_MAX_TEMP_PROTECT //this needed to be added a long fucking time ago - helmettype = /obj/item/clothing/head/helmet/space/hardsuit/captain - - //Clown -/obj/item/clothing/head/helmet/space/hardsuit/clown - name = "cosmohonk hardsuit helmet" - desc = "A special helmet designed for work in a hazardous, low-humor environment. Has radiation shielding." - icon_state = "hardsuit0-clown" - item_state = "hardsuit0-clown" - armor = list(melee = 30, bullet = 5, laser = 10, energy = 5, bomb = 10, bio = 100, rad = 75, fire = 60, acid = 30) - item_color = "clown" - -/obj/item/clothing/suit/space/hardsuit/clown - name = "cosmohonk hardsuit" - desc = "A special suit that protects against hazardous, low humor environments. Has radiation shielding. Only a true clown can wear it." - icon_state = "hardsuit-clown" - item_state = "clown_hardsuit" - armor = list(melee = 30, bullet = 5, laser = 10, energy = 5, bomb = 10, bio = 100, rad = 75, fire = 60, acid = 30) - helmettype = /obj/item/clothing/head/helmet/space/hardsuit/clown - -/obj/item/clothing/suit/space/hardsuit/clown/mob_can_equip(mob/M, slot) - if(!..() || !ishuman(M)) - return FALSE - var/mob/living/carbon/human/H = M - if(H.mind.assigned_role == "Clown") - return TRUE - else - return FALSE /////////////SHIELDED////////////////////////////////// @@ -560,8 +481,7 @@ icon_state = "hardsuit-hos" helmettype = /obj/item/clothing/head/helmet/space/hardsuit/security/hos allowed = list(/obj/item/device/flashlight,/obj/item/weapon/tank/internals, /obj/item/weapon/gun,/obj/item/weapon/reagent_containers/spray/pepper,/obj/item/ammo_box,/obj/item/ammo_casing,/obj/item/weapon/melee/baton,/obj/item/weapon/restraints/handcuffs) - armor = list(melee = 30, bullet = 15, laser = 30, energy = 10, bomb = 10, bio = 100, rad = 50, fire = 100, acid = 100) - resistance_flags = FIRE_PROOF | ACID_PROOF + armor = list(melee = 30, bullet = 15, laser = 30, energy = 10, bomb = 10, bio = 100, rad = 50) var/current_charges = 3 var/max_charges = 3 //How many charges total the shielding has var/recharge_delay = 200 //How long after we've been shot before we can start recharging. 20 seconds here @@ -570,16 +490,19 @@ var/shield_state = "shield-old" var/shield_on = "shield-old" +/obj/item/clothing/suit/space/hardsuit/shielded/New() + jetpack = new /obj/item/weapon/tank/jetpack/suit(src) + ..() + /obj/item/clothing/suit/space/hardsuit/shielded/hit_reaction(mob/living/carbon/human/owner, attack_text) - recharge_cooldown = world.time + recharge_delay if(current_charges > 0) var/datum/effect_system/spark_spread/s = new s.set_up(2, 1, src) s.start() owner.visible_message("[owner]'s shields deflect [attack_text] in a shower of sparks!") current_charges-- - if(recharge_rate) - START_PROCESSING(SSobj, src) + recharge_cooldown = world.time + recharge_delay + START_PROCESSING(SSobj, src) if(current_charges <= 0) owner.visible_message("[owner]'s shield overloads!") shield_state = "broken" @@ -600,17 +523,17 @@ playsound(loc, 'sound/machines/ding.ogg', 50, 1) STOP_PROCESSING(SSobj, src) shield_state = "[shield_on]" - if(ishuman(loc)) + if(istype(loc, /mob/living/carbon/human)) var/mob/living/carbon/human/C = loc C.update_inv_wear_suit() + + /obj/item/clothing/suit/space/hardsuit/shielded/worn_overlays(isinhands) . = list() if(!isinhands) . += image(icon = 'icons/effects/effects.dmi', icon_state = "[shield_state]") -/obj/item/clothing/head/helmet/space/hardsuit/shielded - resistance_flags = FIRE_PROOF | ACID_PROOF ///////////////Capture the Flag//////////////////// @@ -622,7 +545,7 @@ item_color = "ert_medical" flags = STOPSPRESSUREDMAGE | THICKMATERIAL | NODROP //Dont want people changing into the other teams gear helmettype = /obj/item/clothing/head/helmet/space/hardsuit/shielded/ctf - armor = list(melee = 0, bullet = 30, laser = 30, energy = 30, bomb = 50, bio = 100, rad = 100, fire = 95, acid = 95) + armor = list(melee = 0, bullet = 30, laser = 30, energy = 30, bomb = 50, bio = 100, rad = 100) slowdown = 0 max_charges = 5 @@ -650,7 +573,7 @@ icon_state = "hardsuit0-ert_medical" item_state = "hardsuit0-ert_medical" item_color = "ert_medical" - armor = list(melee = 0, bullet = 30, laser = 30, energy = 30, bomb = 50, bio = 100, rad = 100, fire = 95, acid = 95) + armor = list(melee = 0, bullet = 30, laser = 30, energy = 30, bomb = 50, bio = 100, rad = 100) /obj/item/clothing/head/helmet/space/hardsuit/shielded/ctf/red @@ -677,47 +600,16 @@ icon_state = "hardsuit1-syndi" item_state = "syndie_hardsuit" item_color = "syndi" - armor = list(melee = 40, bullet = 50, laser = 30, energy = 15, bomb = 35, bio = 100, rad = 50, fire = 100, acid = 100) + armor = list(melee = 40, bullet = 50, laser = 30, energy = 15, bomb = 35, bio = 100, rad = 50) allowed = list(/obj/item/weapon/gun,/obj/item/ammo_box,/obj/item/ammo_casing,/obj/item/weapon/melee/baton,/obj/item/weapon/melee/energy/sword/saber,/obj/item/weapon/restraints/handcuffs,/obj/item/weapon/tank/internals) helmettype = /obj/item/clothing/head/helmet/space/hardsuit/shielded/syndi slowdown = 0 -/obj/item/clothing/suit/space/hardsuit/shielded/syndi/New() - jetpack = new /obj/item/weapon/tank/jetpack/suit(src) - ..() - /obj/item/clothing/head/helmet/space/hardsuit/shielded/syndi name = "blood-red hardsuit helmet" desc = "An advanced hardsuit helmet with built in energy shielding." icon_state = "hardsuit1-syndi" item_state = "syndie_helm" item_color = "syndi" - armor = list(melee = 40, bullet = 50, laser = 30, energy = 15, bomb = 35, bio = 100, rad = 50, fire = 100, acid = 100) - -///SWAT version -/obj/item/clothing/suit/space/hardsuit/shielded/swat - name = "death commando spacesuit" - desc = "an advanced hardsuit favored by commandos for use in special operations." - icon_state = "deathsquad" - item_state = "swat_suit" - item_color = "syndi" - max_charges = 4 - current_charges = 4 - recharge_delay = 15 - armor = list(melee = 80, bullet = 80, laser = 50, energy = 50, bomb = 100, bio = 100, rad = 100, fire = 100, acid = 100) - strip_delay = 130 - max_heat_protection_temperature = FIRE_IMMUNITY_SUIT_MAX_TEMP_PROTECT - helmettype = /obj/item/clothing/head/helmet/space/hardsuit/shielded/swat - dog_fashion = /datum/dog_fashion/back/deathsquad - -/obj/item/clothing/head/helmet/space/hardsuit/shielded/swat - name = "death commando helmet" - desc = "A tactical helmet with built in energy shielding." - icon_state = "deathsquad" - item_state = "deathsquad" - item_color = "syndi" - armor = list(melee = 80, bullet = 80, laser = 50, energy = 50, bomb = 100, bio = 100, rad = 100, fire = 100, acid = 100) - strip_delay = 130 - max_heat_protection_temperature = FIRE_IMMUNITY_HELM_MAX_TEMP_PROTECT - actions_types = list() + armor = list(melee = 40, bullet = 50, laser = 30, energy = 15, bomb = 35, bio = 100, rad = 50) diff --git a/code/modules/clothing/spacesuits/miscellaneous.dm b/code/modules/clothing/spacesuits/miscellaneous.dm index 870cbecfc1..6f8a5b1266 100644 --- a/code/modules/clothing/spacesuits/miscellaneous.dm +++ b/code/modules/clothing/spacesuits/miscellaneous.dm @@ -16,42 +16,41 @@ Contains: //Death squad armored space suits, not hardsuits! /obj/item/clothing/head/helmet/space/hardsuit/deathsquad - name = "MK.III SWAT Helmet" - desc = "An advanced tactical space helmet." + name = "deathsquad helmet" + desc = "That's not red paint. That's real blood." icon_state = "deathsquad" item_state = "deathsquad" - armor = list(melee = 80, bullet = 80, laser = 50, energy = 50, bomb = 100, bio = 100, rad = 100, fire = 100, acid = 100) + armor = list(melee = 80, bullet = 80, laser = 50, energy = 50, bomb = 100, bio = 100, rad = 100) strip_delay = 130 max_heat_protection_temperature = FIRE_IMMUNITY_HELM_MAX_TEMP_PROTECT - resistance_flags = FIRE_PROOF | ACID_PROOF + unacidable = 1 actions_types = list() /obj/item/clothing/head/helmet/space/hardsuit/deathsquad/attack_self(mob/user) return /obj/item/clothing/suit/space/hardsuit/deathsquad - name = "MK.III SWAT Suit" - desc = "A prototype designed to replace the ageing MK.II SWAT suit. Based on the streamlined MK.II model, the traditional ceramic and graphene plate construction was replaced with plasteel, allowing superior armor against most threats. There's room for some kind of energy projection device on the back." + name = "deathsquad suit" + desc = "A heavily armored, advanced space suit that protects against most forms of damage." icon_state = "deathsquad" item_state = "swat_suit" allowed = list(/obj/item/weapon/gun,/obj/item/ammo_box,/obj/item/ammo_casing,/obj/item/weapon/melee/baton,/obj/item/weapon/restraints/handcuffs,/obj/item/weapon/tank/internals,/obj/item/weapon/kitchen/knife/combat) - armor = list(melee = 80, bullet = 80, laser = 50, energy = 50, bomb = 100, bio = 100, rad = 100, fire = 100, acid = 100) + armor = list(melee = 80, bullet = 80, laser = 50, energy = 50, bomb = 100, bio = 100, rad = 100) strip_delay = 130 max_heat_protection_temperature = FIRE_IMMUNITY_SUIT_MAX_TEMP_PROTECT - resistance_flags = FIRE_PROOF | ACID_PROOF + unacidable = 1 helmettype = /obj/item/clothing/head/helmet/space/hardsuit/deathsquad dog_fashion = /datum/dog_fashion/back/deathsquad //NEW SWAT suit /obj/item/clothing/suit/space/swat - name = "MK.I SWAT Suit" - desc = "A tactical space suit first developed in a joint effort by the defunct IS-ERI and Nanotrasen in 20XX for military space operations. A tried and true workhorse, it is very difficult to move in but offers robust protection against all threats!" + name = "SWAT armor" + desc = "Space-proof tactical SWAT armor." icon_state = "heavy" item_state = "swat_suit" allowed = list(/obj/item/weapon/gun,/obj/item/ammo_box,/obj/item/ammo_casing,/obj/item/weapon/melee/baton,/obj/item/weapon/restraints/handcuffs,/obj/item/weapon/tank/internals,/obj/item/weapon/kitchen/knife/combat) - armor = list(melee = 40, bullet = 30, laser = 30,energy = 30, bomb = 50, bio = 90, rad = 20, fire = 100, acid = 100) + armor = list(melee = 40, bullet = 30, laser = 30,energy = 30, bomb = 50, bio = 90, rad = 20) strip_delay = 120 - resistance_flags = FIRE_PROOF | ACID_PROOF /obj/item/clothing/head/helmet/space/beret name = "officer's beret" @@ -59,10 +58,10 @@ Contains: icon_state = "beret_badge" flags = STOPSPRESSUREDMAGE flags_inv = 0 - armor = list(melee = 80, bullet = 80, laser = 50, energy = 50, bomb = 100, bio = 100, rad = 100, fire = 100, acid = 100) + armor = list(melee = 80, bullet = 80, laser = 50, energy = 50, bomb = 100, bio = 100, rad = 100) strip_delay = 130 max_heat_protection_temperature = FIRE_IMMUNITY_HELM_MAX_TEMP_PROTECT - resistance_flags = FIRE_PROOF | ACID_PROOF + unacidable = 1 /obj/item/clothing/suit/space/officer name = "officer's jacket" @@ -72,12 +71,12 @@ Contains: blood_overlay_type = "coat" slowdown = 0 flags_inv = 0 - w_class = WEIGHT_CLASS_NORMAL + w_class = 3 allowed = list(/obj/item/weapon/gun,/obj/item/ammo_box,/obj/item/ammo_casing,/obj/item/weapon/melee/baton,/obj/item/weapon/restraints/handcuffs,/obj/item/weapon/tank/internals) - armor = list(melee = 80, bullet = 80, laser = 50, energy = 50, bomb = 100, bio = 100, rad = 100, fire = 100, acid = 100) + armor = list(melee = 80, bullet = 80, laser = 50, energy = 50, bomb = 100, bio = 100, rad = 100) strip_delay = 130 max_heat_protection_temperature = FIRE_IMMUNITY_HELM_MAX_TEMP_PROTECT - resistance_flags = FIRE_PROOF | ACID_PROOF + unacidable = 1 //NASA Voidsuit @@ -121,7 +120,7 @@ Contains: desc = "Yarr." icon_state = "pirate" item_state = "pirate" - armor = list(melee = 30, bullet = 50, laser = 30,energy = 15, bomb = 30, bio = 30, rad = 30, fire = 60, acid = 75) + armor = list(melee = 30, bullet = 50, laser = 30,energy = 15, bomb = 30, bio = 30, rad = 30) flags = STOPSPRESSUREDMAGE strip_delay = 40 put_on_delay = 20 @@ -132,11 +131,11 @@ Contains: desc = "Yarr." icon_state = "pirate" item_state = "pirate" - w_class = WEIGHT_CLASS_NORMAL + w_class = 3 flags_inv = 0 allowed = list(/obj/item/weapon/gun,/obj/item/ammo_box,/obj/item/ammo_casing,/obj/item/weapon/melee/baton,/obj/item/weapon/restraints/handcuffs,/obj/item/weapon/tank/internals, /obj/item/weapon/melee/energy/sword/pirate, /obj/item/clothing/glasses/eyepatch, /obj/item/weapon/reagent_containers/food/drinks/bottle/rum) slowdown = 0 - armor = list(melee = 30, bullet = 50, laser = 30,energy = 15, bomb = 30, bio = 30, rad = 30, fire = 60, acid = 75) + armor = list(melee = 30, bullet = 50, laser = 30,energy = 15, bomb = 30, bio = 30, rad = 30) strip_delay = 40 put_on_delay = 20 @@ -147,7 +146,7 @@ Contains: icon_state = "hardsuit0-ert_commander" item_state = "hardsuit0-ert_commander" item_color = "ert_commander" - armor = list(melee = 65, bullet = 50, laser = 50, energy = 50, bomb = 50, bio = 100, rad = 100, fire = 80, acid = 80) + armor = list(melee = 65, bullet = 50, laser = 50, energy = 50, bomb = 50, bio = 100, rad = 100) strip_delay = 130 flags = STOPSPRESSUREDMAGE | THICKMATERIAL | NODROP brightness_on = 7 @@ -159,7 +158,7 @@ Contains: item_state = "ert_command" helmettype = /obj/item/clothing/head/helmet/space/hardsuit/ert allowed = list(/obj/item/weapon/gun,/obj/item/ammo_box,/obj/item/ammo_casing,/obj/item/weapon/melee/baton,/obj/item/weapon/restraints/handcuffs,/obj/item/weapon/tank/internals) - armor = list(melee = 30, bullet = 50, laser = 30, energy = 50, bomb = 50, bio = 100, rad = 100, fire = 0, acid = 95) + armor = list(melee = 30, bullet = 50, laser = 30, energy = 50, bomb = 50, bio = 100, rad = 100) slowdown = 0 strip_delay = 130 @@ -201,14 +200,13 @@ Contains: icon_state = "ert_medical" item_state = "ert_medical" helmettype = /obj/item/clothing/head/helmet/space/hardsuit/ert/med - species_exception = list(/datum/species/angel) /obj/item/clothing/suit/space/eva name = "EVA suit" icon_state = "space" item_state = "s_suit" desc = "A lightweight space suit with the basic ability to protect the wearer from the vacuum of space during emergencies." - armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 100, rad = 20, fire = 50, acid = 65) + armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 100, rad = 20) /obj/item/clothing/head/helmet/space/eva name = "EVA helmet" @@ -216,17 +214,17 @@ Contains: item_state = "space" desc = "A lightweight space helmet with the basic ability to protect the wearer from the vacuum of space during emergencies." flash_protect = 0 - armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 100, rad = 20, fire = 50, acid = 65) + armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 100, rad = 20) /obj/item/clothing/head/helmet/space/freedom name = "eagle helmet" desc = "An advanced, space-proof helmet. It appears to be modeled after an old-world eagle." icon_state = "griffinhat" item_state = "griffinhat" - armor = list(melee = 20, bullet = 40, laser = 30, energy = 25, bomb = 100, bio = 100, rad = 100, fire = 80, acid = 80) + armor = list(melee = 20, bullet = 40, laser = 30, energy = 25, bomb = 100, bio = 100, rad = 100) strip_delay = 130 max_heat_protection_temperature = FIRE_IMMUNITY_HELM_MAX_TEMP_PROTECT - resistance_flags = ACID_PROOF + unacidable = 1 /obj/item/clothing/suit/space/freedom name = "eagle suit" @@ -234,10 +232,10 @@ Contains: icon_state = "freedom" item_state = "freedom" allowed = list(/obj/item/weapon/gun,/obj/item/ammo_box,/obj/item/ammo_casing,/obj/item/weapon/melee/baton,/obj/item/weapon/restraints/handcuffs,/obj/item/weapon/tank/internals) - armor = list(melee = 20, bullet = 40, laser = 30,energy = 25, bomb = 100, bio = 100, rad = 100, fire = 80, acid = 80) + armor = list(melee = 20, bullet = 40, laser = 30,energy = 25, bomb = 100, bio = 100, rad = 100) strip_delay = 130 max_heat_protection_temperature = FIRE_IMMUNITY_HELM_MAX_TEMP_PROTECT - resistance_flags = ACID_PROOF + unacidable = 1 //Carpsuit, bestsuit, lovesuit /obj/item/clothing/head/helmet/space/hardsuit/carp @@ -245,7 +243,7 @@ Contains: desc = "Spaceworthy and it looks like a space carp's head, smells like one too." icon_state = "carp_helm" item_state = "syndicate" - armor = list(melee = -20, bullet = 0, laser = 0, energy = 0, bomb = 0, bio = 100, rad = 75, fire = 60, acid = 75) //As whimpy as a space carp + armor = list(melee = -20, bullet = 0, laser = 0, energy = 0, bomb = 0, bio = 100, rad = 75) //As whimpy as a space carp brightness_on = 0 //luminosity when on actions_types = list() flags = STOPSPRESSUREDMAGE | THICKMATERIAL | NODROP @@ -257,8 +255,8 @@ Contains: icon_state = "carp_suit" item_state = "space_suit_syndicate" slowdown = 0 //Space carp magic, never stop believing - armor = list(melee = -20, bullet = 0, laser = 0, energy = 0, bomb = 0, bio = 100, rad = 75, fire = 60, acid = 75) //As whimpy whimpy whoo - allowed = list(/obj/item/weapon/tank/internals, /obj/item/weapon/gun/ballistic/automatic/speargun) //I'm giving you a hint here + armor = list(melee = -20, bullet = 0, laser = 0, energy = 0, bomb = 0, bio = 100, rad = 75) //As whimpy whimpy whoo + allowed = list(/obj/item/weapon/tank/internals, /obj/item/weapon/gun/projectile/automatic/speargun) //I'm giving you a hint here helmettype = /obj/item/clothing/head/helmet/space/hardsuit/carp @@ -270,7 +268,6 @@ Contains: item_color = "knight_grey" max_heat_protection_temperature = FIRE_IMMUNITY_HELM_MAX_TEMP_PROTECT actions_types = list() - resistance_flags = FIRE_PROOF /obj/item/clothing/suit/space/hardsuit/ert/paranormal name = "paranormal response team suit" @@ -279,7 +276,7 @@ Contains: item_state = "knight_grey" helmettype = /obj/item/clothing/head/helmet/space/hardsuit/ert/paranormal max_heat_protection_temperature = FIRE_IMMUNITY_SUIT_MAX_TEMP_PROTECT - resistance_flags = FIRE_PROOF + /obj/item/clothing/suit/space/hardsuit/ert/paranormal/New() ..() diff --git a/code/modules/clothing/spacesuits/plasmamen.dm b/code/modules/clothing/spacesuits/plasmamen.dm index fc09409ff9..fbd5b33ad7 100644 --- a/code/modules/clothing/spacesuits/plasmamen.dm +++ b/code/modules/clothing/spacesuits/plasmamen.dm @@ -5,8 +5,7 @@ name = "plasmaman suit" desc = "A special containment suit designed to protect a plasmaman's volatile body from outside exposure and quickly extinguish it in emergencies." allowed = list(/obj/item/weapon/gun,/obj/item/ammo_casing,/obj/item/ammo_casing,/obj/item/weapon/melee/baton,/obj/item/weapon/melee/energy/sword,/obj/item/weapon/restraints/handcuffs,/obj/item/weapon/tank) - armor = list(melee = 0, bullet = 0, laser = 0, energy = 0, bomb = 0, bio = 100, rad = 0, fire = 100, acid = 75) - resistance_flags = FIRE_PROOF + armor = list(melee = 0, bullet = 0, laser = 0, energy = 0, bomb = 0, bio = 100, rad = 0) icon_state = "plasmaman_suit" item_state = "plasmaman_suit" var/next_extinguish = 0 @@ -42,7 +41,5 @@ item_color = "plasma" //needed for the helmet lighting item_state = "plasmaman-helm" strip_delay = 80 - armor = list(melee = 0, bullet = 0, laser = 0, energy = 0, bomb = 0, bio = 100, rad = 0, fire = 100, acid = 75) - resistance_flags = FIRE_PROOF diff --git a/code/modules/clothing/spacesuits/syndi.dm b/code/modules/clothing/spacesuits/syndi.dm index 04c4a56708..56cb78d8f2 100644 --- a/code/modules/clothing/spacesuits/syndi.dm +++ b/code/modules/clothing/spacesuits/syndi.dm @@ -1,19 +1,20 @@ //Regular syndicate space suit /obj/item/clothing/head/helmet/space/syndicate name = "red space helmet" + desc = "Top secret spess helmet." icon_state = "syndicate" item_state = "syndicate" desc = "Has a tag: Totally not property of an enemy corporation, honest." - armor = list(melee = 40, bullet = 50, laser = 30,energy = 15, bomb = 30, bio = 30, rad = 30, fire = 80, acid = 85) + armor = list(melee = 40, bullet = 50, laser = 30,energy = 15, bomb = 30, bio = 30, rad = 30) /obj/item/clothing/suit/space/syndicate name = "red space suit" icon_state = "syndicate" item_state = "space_suit_syndicate" desc = "Has a tag on it: Totally not property of of a hostile corporation, honest!" - w_class = WEIGHT_CLASS_NORMAL + w_class = 3 allowed = list(/obj/item/weapon/gun,/obj/item/ammo_box,/obj/item/ammo_casing,/obj/item/weapon/melee/baton,/obj/item/weapon/melee/energy/sword/saber,/obj/item/weapon/restraints/handcuffs,/obj/item/weapon/tank/internals) - armor = list(melee = 40, bullet = 50, laser = 30,energy = 15, bomb = 30, bio = 30, rad = 30, fire = 80, acid = 85) + armor = list(melee = 40, bullet = 50, laser = 30,energy = 15, bomb = 30, bio = 30, rad = 30) //Green syndicate space suit @@ -145,4 +146,4 @@ /obj/item/clothing/suit/space/syndicate/black/engie name = "black engineering space suit" icon_state = "syndicate-black-engie" - item_state = "syndicate-black" + item_state = "syndicate-black" \ No newline at end of file diff --git a/code/modules/clothing/suits/armor.dm b/code/modules/clothing/suits/armor.dm index a3160c0383..1ad08042ed 100644 --- a/code/modules/clothing/suits/armor.dm +++ b/code/modules/clothing/suits/armor.dm @@ -1,5 +1,5 @@ /obj/item/clothing/suit/armor - allowed = list(/obj/item/weapon/gun/energy,/obj/item/weapon/reagent_containers/spray/pepper,/obj/item/weapon/gun/ballistic,/obj/item/ammo_box,/obj/item/ammo_casing,/obj/item/weapon/melee/baton,/obj/item/weapon/restraints/handcuffs,/obj/item/device/flashlight/seclite,/obj/item/weapon/melee/classic_baton/telescopic,/obj/item/weapon/kitchen/knife/combat,/obj/item/weapon/tank/internals/emergency_oxygen) + allowed = list(/obj/item/weapon/gun/energy,/obj/item/weapon/reagent_containers/spray/pepper,/obj/item/weapon/gun/projectile,/obj/item/ammo_box,/obj/item/ammo_casing,/obj/item/weapon/melee/baton,/obj/item/weapon/restraints/handcuffs,/obj/item/device/flashlight/seclite,/obj/item/weapon/melee/classic_baton/telescopic,/obj/item/weapon/kitchen/knife/combat,/obj/item/weapon/tank/internals/emergency_oxygen) body_parts_covered = CHEST cold_protection = CHEST|GROIN min_cold_protection_temperature = ARMOR_MIN_TEMP_PROTECT @@ -7,10 +7,7 @@ max_heat_protection_temperature = ARMOR_MAX_TEMP_PROTECT strip_delay = 60 put_on_delay = 40 - obj_integrity = 250 - max_integrity = 250 - resistance_flags = 0 - armor = list(melee = 30, bullet = 30, laser = 30, energy = 10, bomb = 25, bio = 0, rad = 0, fire = 50, acid = 50) + burn_state = FIRE_PROOF /obj/item/clothing/suit/armor/vest name = "armor" @@ -18,6 +15,7 @@ icon_state = "armoralt" item_state = "armoralt" blood_overlay_type = "armor" + armor = list(melee = 30, bullet = 30, laser = 30, energy = 10, bomb = 25, bio = 0, rad = 0) dog_fashion = /datum/dog_fashion/back /obj/item/clothing/suit/armor/vest/alt @@ -25,17 +23,13 @@ icon_state = "armor" item_state = "armor" -/obj/item/clothing/suit/armor/vest/blueshirt - icon_state = "blueshift" - item_state = "blueshift" - /obj/item/clothing/suit/armor/hos name = "armored greatcoat" desc = "A greatcoat enchanced with a special alloy for some protection and style for those with a commanding presence." icon_state = "hos" item_state = "greatcoat" body_parts_covered = CHEST|GROIN|ARMS|LEGS - armor = list(melee = 30, bullet = 30, laser = 30, energy = 10, bomb = 25, bio = 0, rad = 0, fire = 70, acid = 90) + armor = list(melee = 30, bullet = 30, laser = 30, energy = 10, bomb = 25, bio = 0, rad = 0) cold_protection = CHEST|GROIN|LEGS|ARMS heat_protection = CHEST|GROIN|LEGS|ARMS strip_delay = 80 @@ -57,7 +51,7 @@ cold_protection = CHEST|GROIN|ARMS|HANDS heat_protection = CHEST|GROIN|ARMS|HANDS strip_delay = 70 - resistance_flags = FLAMMABLE + burn_state = FLAMMABLE dog_fashion = null /obj/item/clothing/suit/armor/vest/warden/alt @@ -81,9 +75,8 @@ icon_state = "capcarapace" item_state = "armor" body_parts_covered = CHEST|GROIN - armor = list(melee = 50, bullet = 40, laser = 50, energy = 10, bomb = 25, bio = 0, rad = 0, fire = 100, acid = 90) + armor = list(melee = 50, bullet = 40, laser = 50, energy = 10, bomb = 25, bio = 0, rad = 0) dog_fashion = null - resistance_flags = FIRE_PROOF /obj/item/clothing/suit/armor/vest/capcarapace/alt name = "captain's parade jacket" @@ -99,7 +92,7 @@ body_parts_covered = CHEST|GROIN|LEGS|FEET|ARMS|HANDS cold_protection = CHEST|GROIN|LEGS|FEET|ARMS|HANDS heat_protection = CHEST|GROIN|LEGS|FEET|ARMS|HANDS - armor = list(melee = 50, bullet = 10, laser = 10, energy = 10, bomb = 0, bio = 0, rad = 0, fire = 80, acid = 80) + armor = list(melee = 50, bullet = 10, laser = 10, energy = 10, bomb = 0, bio = 0, rad = 0) flags_inv = HIDEJUMPSUIT strip_delay = 80 put_on_delay = 60 @@ -110,7 +103,7 @@ icon_state = "bonearmor" item_state = "bonearmor" blood_overlay_type = "armor" - armor = list(melee = 35, bullet = 25, laser = 25, energy = 10, bomb = 25, bio = 0, rad = 0, fire = 50, acid = 50) + armor = list(melee = 35, bullet = 25, laser = 25, energy = 10, bomb = 25, bio = 0, rad = 0) body_parts_covered = CHEST|GROIN|LEGS|FEET|ARMS /obj/item/clothing/suit/armor/bulletproof @@ -119,7 +112,7 @@ icon_state = "bulletproof" item_state = "armor" blood_overlay_type = "armor" - armor = list(melee = 15, bullet = 80, laser = 10, energy = 10, bomb = 40, bio = 0, rad = 0, fire = 50, acid = 50) + armor = list(melee = 15, bullet = 80, laser = 10, energy = 10, bomb = 40, bio = 0, rad = 0) strip_delay = 70 put_on_delay = 50 @@ -129,8 +122,7 @@ icon_state = "armor_reflec" item_state = "armor_reflec" blood_overlay_type = "armor" - armor = list(melee = 10, bullet = 10, laser = 60, energy = 50, bomb = 0, bio = 0, rad = 0, fire = 100, acid = 100) - resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | ACID_PROOF + armor = list(melee = 10, bullet = 10, laser = 60, energy = 50, bomb = 0, bio = 0, rad = 0) var/hit_reflect_chance = 40 /obj/item/clothing/suit/armor/laserproof/IsReflect(def_zone) @@ -143,8 +135,8 @@ name = "armor" desc = "An armored vest with a detective's badge on it." icon_state = "detective-armor" - allowed = list(/obj/item/weapon/tank/internals/emergency_oxygen,/obj/item/weapon/reagent_containers/spray/pepper,/obj/item/device/flashlight,/obj/item/weapon/gun/energy,/obj/item/weapon/gun/ballistic,/obj/item/ammo_box,/obj/item/ammo_casing,/obj/item/weapon/melee/baton,/obj/item/weapon/restraints/handcuffs,/obj/item/weapon/storage/fancy/cigarettes,/obj/item/weapon/lighter,/obj/item/device/detective_scanner,/obj/item/device/taperecorder,/obj/item/weapon/melee/classic_baton) - resistance_flags = FLAMMABLE + allowed = list(/obj/item/weapon/tank/internals/emergency_oxygen,/obj/item/weapon/reagent_containers/spray/pepper,/obj/item/device/flashlight,/obj/item/weapon/gun/energy,/obj/item/weapon/gun/projectile,/obj/item/ammo_box,/obj/item/ammo_casing,/obj/item/weapon/melee/baton,/obj/item/weapon/restraints/handcuffs,/obj/item/weapon/storage/fancy/cigarettes,/obj/item/weapon/lighter,/obj/item/device/detective_scanner,/obj/item/device/taperecorder,/obj/item/weapon/melee/classic_baton/telescopic) + burn_state = FLAMMABLE dog_fashion = null @@ -158,9 +150,9 @@ icon_state = "reactiveoff" item_state = "reactiveoff" blood_overlay_type = "armor" - armor = list(melee = 0, bullet = 0, laser = 0, energy = 0, bomb = 0, bio = 0, rad = 0, fire = 100, acid = 100) + armor = list(melee = 0, bullet = 0, laser = 0, energy = 0, bomb = 0, bio = 0, rad = 0) actions_types = list(/datum/action/item_action/toggle) - resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | ACID_PROOF + unacidable = 1 hit_reaction_chance = 50 @@ -174,7 +166,7 @@ user << "[src] is now inactive." src.icon_state = "reactiveoff" src.item_state = "reactiveoff" - src.add_fingerprint(user) + src.add_fingerprint(user) return /obj/item/clothing/suit/armor/reactive/emp_act(severity) @@ -283,7 +275,7 @@ for(var/mob/living/M in view(6, owner)) if(M == owner) continue - owner.Beam(M,icon_state="lightning[rand(1, 12)]",time=5) + owner.Beam(M,icon_state="lightning[rand(1, 12)]",icon='icons/effects/effects.dmi',time=5) M.adjustFireLoss(25) playsound(M, 'sound/machines/defib_zap.ogg', 50, 1, -1) reactivearmor_cooldown = world.time + reactivearmor_cooldown_duration @@ -335,7 +327,7 @@ desc = "A suit that protects against some damage." icon_state = "centcom" item_state = "centcom" - w_class = WEIGHT_CLASS_BULKY + w_class = 4//bulky item body_parts_covered = CHEST|GROIN|LEGS|FEET|ARMS|HANDS allowed = list(/obj/item/weapon/gun/energy,/obj/item/weapon/melee/baton,/obj/item/weapon/restraints/handcuffs,/obj/item/weapon/tank/internals/emergency_oxygen) flags = THICKMATERIAL @@ -344,20 +336,20 @@ min_cold_protection_temperature = SPACE_SUIT_MIN_TEMP_PROTECT heat_protection = CHEST|GROIN|LEGS|FEET|ARMS|HANDS max_heat_protection_temperature = SPACE_SUIT_MAX_TEMP_PROTECT - armor = list(melee = 80, bullet = 80, laser = 50, energy = 50, bomb = 100, bio = 100, rad = 100, fire = 90, acid = 90) + armor = list(melee = 80, bullet = 80, laser = 50, energy = 50, bomb = 100, bio = 100, rad = 100) /obj/item/clothing/suit/armor/heavy name = "heavy armor" desc = "A heavily armored suit that protects against moderate damage." icon_state = "heavy" item_state = "swat_suit" - w_class = WEIGHT_CLASS_BULKY + w_class = 4//bulky item gas_transfer_coefficient = 0.90 flags = THICKMATERIAL body_parts_covered = CHEST|GROIN|LEGS|FEET|ARMS|HANDS slowdown = 3 flags_inv = HIDEGLOVES|HIDESHOES|HIDEJUMPSUIT - armor = list(melee = 80, bullet = 80, laser = 50, energy = 50, bomb = 100, bio = 100, rad = 100, fire = 90, acid = 90) + armor = list(melee = 80, bullet = 80, laser = 50, energy = 50, bomb = 100, bio = 100, rad = 100) /obj/item/clothing/suit/armor/tdome body_parts_covered = CHEST|GROIN|LEGS|FEET|ARMS|HANDS @@ -365,7 +357,7 @@ flags = THICKMATERIAL cold_protection = CHEST|GROIN|LEGS|FEET|ARMS|HANDS heat_protection = CHEST|GROIN|LEGS|FEET|ARMS|HANDS - armor = list(melee = 80, bullet = 80, laser = 50, energy = 50, bomb = 100, bio = 100, rad = 100, fire = 90, acid = 90) + armor = list(melee = 80, bullet = 80, laser = 50, energy = 50, bomb = 100, bio = 100, rad = 100) /obj/item/clothing/suit/armor/tdome/red name = "thunderdome suit" @@ -403,3 +395,50 @@ desc = "God wills it!" icon_state = "knight_templar" item_state = "knight_templar" + +/obj/item/clothing/suit/armor/yautja_fake + name = "ceremonial breastplate" + desc = "Half of an aging, ceremonial breastplate. Its usefulness as armor are long gone." + icon_state = "yautjahalfarmor" + item_state = "yautjahalfarmor" + armor = list(melee = 0, bullet = 0, laser = 0, energy = 0, bomb = 0, bio = 0, rad = 0) + unacidable = TRUE + burn_state = FIRE_PROOF + body_parts_covered = CHEST|GROIN|LEGS|ARMS + cold_protection = CHEST|GROIN|LEGS|ARMS + heat_protection = CHEST|GROIN|LEGS|ARMS + allowed = list(/obj/item/device/flashlight, + /obj/item/weapon/tank/internals, + /obj/item/weapon/resonator, + /obj/item/device/mining_scanner, + /obj/item/device/t_scanner/adv_mining_scanner, + /obj/item/weapon/gun/energy/kinetic_accelerator, + /obj/item/weapon/pickaxe) + +/obj/item/clothing/suit/armor/yautja + name = "clan breastplate" + desc = "An armored breastplate. This type is used by most clans for combat among elders." + icon_state = "yautjafullarmor" + item_state = "yautjafullarmor" + armor = list(melee = 50, bullet = 50, laser = 50, energy = 50, bomb = 50, bio = 0, rad = 15) + unacidable = TRUE + burn_state = FIRE_PROOF + body_parts_covered = CHEST|GROIN|LEGS|ARMS + cold_protection = CHEST|GROIN|LEGS|ARMS + heat_protection = CHEST|GROIN|LEGS|ARMS + allowed = list(/obj/item/device/flashlight, + /obj/item/weapon/tank/internals, + /obj/item/weapon/resonator, + /obj/item/device/mining_scanner, + /obj/item/device/t_scanner/adv_mining_scanner, + /obj/item/weapon/gun, + /obj/item/weapon/pickaxe, + /obj/item/weapon/melee, + /obj/item/weapon/kitchen/knife) + +/obj/item/clothing/suit/armor/yautja/half + name = "clan half-breastplate" + desc = "Half of an armored breastplate. This type is used by most clans for combat among blooded." + icon_state = "yautjahalfarmor" + item_state = "yautjahalfarmor" + armor = list(melee = 30, bullet = 30, laser = 30, energy = 30, bomb = 30, bio = 0, rad = 5) diff --git a/code/modules/clothing/suits/bio.dm b/code/modules/clothing/suits/bio.dm index e38397fd85..538e00e825 100644 --- a/code/modules/clothing/suits/bio.dm +++ b/code/modules/clothing/suits/bio.dm @@ -5,9 +5,10 @@ desc = "A hood that protects the head and face from biological comtaminants." permeability_coefficient = 0.01 flags = THICKMATERIAL - armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 100, rad = 20, fire = 30, acid = 100) + armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 100, rad = 20) flags_inv = HIDEMASK|HIDEEARS|HIDEEYES|HIDEHAIR|HIDEFACIALHAIR|HIDEFACE - resistance_flags = ACID_PROOF + unacidable = 1 + burn_state = FIRE_PROOF flags_cover = HEADCOVERSEYES | HEADCOVERSMOUTH /obj/item/clothing/suit/bio_suit @@ -15,18 +16,19 @@ desc = "A suit that protects against biological contamination." icon_state = "bio" item_state = "bio_suit" - w_class = WEIGHT_CLASS_BULKY + w_class = 4//bulky item gas_transfer_coefficient = 0.01 permeability_coefficient = 0.01 flags = THICKMATERIAL body_parts_covered = CHEST|GROIN|LEGS|FEET|ARMS|HANDS slowdown = 1 allowed = list(/obj/item/weapon/tank/internals/emergency_oxygen,/obj/item/weapon/pen,/obj/item/device/flashlight/pen, /obj/item/weapon/reagent_containers/dropper, /obj/item/weapon/reagent_containers/syringe, /obj/item/weapon/reagent_containers/hypospray) - armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 100, rad = 20, fire = 30, acid = 100) + armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 100, rad = 20) flags_inv = HIDEGLOVES|HIDESHOES|HIDEJUMPSUIT strip_delay = 70 put_on_delay = 70 - resistance_flags = ACID_PROOF + unacidable = 1 + burn_state = FIRE_PROOF //Standard biosuit, orange stripe /obj/item/clothing/head/bio_hood/general @@ -46,11 +48,11 @@ //Security biosuit, grey with red stripe across the chest /obj/item/clothing/head/bio_hood/security - armor = list(melee = 25, bullet = 15, laser = 25, energy = 10, bomb = 25, bio = 100, rad = 20, fire = 30, acid = 100) + armor = list(melee = 25, bullet = 15, laser = 25, energy = 10, bomb = 25, bio = 100, rad = 20) icon_state = "bio_security" /obj/item/clothing/suit/bio_suit/security - armor = list(melee = 25, bullet = 15, laser = 25, energy = 10, bomb = 25, bio = 100, rad = 20, fire = 30, acid = 100) + armor = list(melee = 25, bullet = 15, laser = 25, energy = 10, bomb = 25, bio = 100, rad = 20) icon_state = "bio_security" diff --git a/code/modules/clothing/suits/cloaks.dm b/code/modules/clothing/suits/cloaks.dm index cad3e4bf78..53e4b59866 100644 --- a/code/modules/clothing/suits/cloaks.dm +++ b/code/modules/clothing/suits/cloaks.dm @@ -1,12 +1,12 @@ //Cloaks. No, not THAT kind of cloak. -/obj/item/clothing/neck/cloak +/obj/item/clothing/suit/cloak name = "brown cloak" - desc = "It's a cape that can be worn around your neck." + desc = "It's a cape that can be worn on your back." icon = 'icons/obj/clothing/cloaks.dmi' icon_state = "qmcloak" item_state = "qmcloak" - w_class = WEIGHT_CLASS_SMALL + w_class = 2 body_parts_covered = CHEST|GROIN|LEGS|ARMS /obj/item/clothing/head/cloakhood @@ -18,57 +18,118 @@ flags = NODROP flags_inv = HIDEHAIR|HIDEEARS -/obj/item/clothing/neck/cloak/suicide_act(mob/user) - user.visible_message("[user] is strangling [user.p_them()]self with [src]! It looks like [user.p_theyre()] trying to commit suicide!") +/obj/item/clothing/cloak/suicide_act(mob/user) + user.visible_message("[user] is strangling themself with [src]! It looks like they're trying to commit suicide.") return(OXYLOSS) -/obj/item/clothing/neck/cloak/hos +/obj/item/clothing/suit/cloak/hos name = "head of security's cloak" desc = "Worn by Securistan, ruling the station with an iron fist. It's slightly armored." icon_state = "hoscloak" + allowed = list(/obj/item/weapon/gun/energy/gun/hos) + armor = list(melee = 30, bullet = 30, laser = 10, energy = 10, bomb = 25, bio = 0, rad = 0) -/obj/item/clothing/neck/cloak/qm +/obj/item/clothing/suit/cloak/qm name = "quartermaster's cloak" desc = "Worn by Cargonia, supplying the station with the necessary tools for survival." -/obj/item/clothing/neck/cloak/cmo +/obj/item/clothing/suit/cloak/cmo name = "chief medical officer's cloak" desc = "Worn by Meditopia, the valiant men and women keeping pestilence at bay. It's slightly shielded from contaminants." icon_state = "cmocloak" + allowed = list(/obj/item/weapon/reagent_containers/hypospray/CMO) + armor = list(melee = 0, bullet = 0, laser = 0, energy = 0, bomb = 0, bio = 25, rad = 0) -/obj/item/clothing/neck/cloak/ce +/obj/item/clothing/suit/cloak/ce name = "chief engineer's cloak" desc = "Worn by Engitopia, wielders of an unlimited power. It's slightly shielded against radiation." icon_state = "cecloak" + allowed = list(/obj/item/weapon/rcd, /obj/item/weapon/pipe_dispenser) + armor = list(melee = 10, bullet = 0, laser = 0, energy = 0, bomb = 0, bio = 0, rad = 10) -/obj/item/clothing/neck/cloak/rd +/obj/item/clothing/suit/cloak/rd name = "research director's cloak." desc = "Worn by Sciencia, thaumaturges and researchers of the universe. It's slightly shielded from contaminants." icon_state = "rdcloak" + allowed = list(/obj/item/weapon/hand_tele, /obj/item/weapon/storage/part_replacer) + armor = list(melee = 0, bullet = 0, laser = 0, energy = 0, bomb = 10, bio = 10, rad = 0) -/obj/item/clothing/neck/cloak/cap +/obj/item/clothing/suit/cloak/cap name = "captain's cloak" desc = "Worn by the commander of Space Station 13." icon_state = "capcloak" + allowed = list(/obj/item/weapon/gun/energy/laser/captain) + armor = list(melee = 30, bullet = 30, laser = 30, energy = 10, bomb = 25, bio = 10, rad = 10) /obj/item/clothing/suit/hooded/cloak/drake name = "drake armour" icon_state = "dragon" desc = "A suit of armour fashioned from the remains of an ash drake. " allowed = list(/obj/item/device/flashlight,/obj/item/weapon/tank/internals, /obj/item/weapon/resonator, /obj/item/device/mining_scanner, /obj/item/device/t_scanner/adv_mining_scanner, /obj/item/weapon/gun/energy/kinetic_accelerator, /obj/item/weapon/pickaxe, /obj/item/weapon/twohanded/spear) - armor = list(melee = 70, bullet = 30, laser = 50, energy = 40, bomb = 70, bio = 60, rad = 50, fire = 100, acid = 100) + armor = list(melee = 70, bullet = 30, laser = 50, energy = 40, bomb = 70, bio = 60, rad = 50) hooded = 1 hoodtype = /obj/item/clothing/head/cloakhood/drake heat_protection = CHEST|GROIN|LEGS|FEET|ARMS|HANDS body_parts_covered = CHEST|GROIN|LEGS|FEET|ARMS|HANDS max_heat_protection_temperature = FIRE_IMMUNITY_SUIT_MAX_TEMP_PROTECT - resistance_flags = FIRE_PROOF | ACID_PROOF + unacidable = 1 /obj/item/clothing/head/cloakhood/drake name = "drake helm" icon_state = "dragon" desc = "The skull of a dragon." - armor = list(melee = 70, bullet = 30, laser = 50, energy = 40, bomb = 70, bio = 60, rad = 50, fire = 100, acid = 100) + armor = list(melee = 70, bullet = 30, laser = 50, energy = 40, bomb = 70, bio = 60, rad = 50) heat_protection = HEAD max_heat_protection_temperature = FIRE_IMMUNITY_HELM_MAX_TEMP_PROTECT - resistance_flags = FIRE_PROOF | ACID_PROOF + unacidable = 1 + +/* //wip +/obj/item/clothing/cloak/wizard //Not actually obtainable until proper balancing can be done + name = "cloak of invisibility" + desc = "A tattered old thing that apparently gifts the wearer with near-invisibility." + armor = list(melee = 10, bullet = 10, laser = 10, energy = 10, bomb = 10, bio = 10, rad = 10) + action_button_name = "Flaunt Cloak" + var/invisible = 0 + +/obj/item/clothing/cloak/wizard/ui_action_click() + toggleInvisibility(usr) + return + +/obj/item/clothing/cloak/wizard/proc/toggleInvisibility(mob/user) + if(user.slot_back != src) + user << "You need to be wearing the cloak first!" + return + user.visible_message("[user] flaunts [src]!") + if(!invisible) + makeInvisible(user) + return + if(invisible) + breakInvisible(user) + return + +/obj/item/clothing/cloak/wizard/proc/makeInvisible(mob/user) + if(!invisible) + user.visible_message("[user] suddenly fades away!", \ + "You have become nearly invisible. This will require slow movement and will break upon taking damage.") + flags |= NODROP //Cannot unequip while invisible + user.alpha = 10 + slowdown = 2 + invisible = 1 + +/obj/item/clothing/cloak/wizard/proc/breakInvisible(mob/user) + if(invisible) + user.visible_message("[user] suddenly appears from thin air!", \ + "The enchantment has broken! You are visible again.") + flags -= NODROP + user.alpha = 255 + slowdown = 0 + invisible = 0 + +/obj/item/clothing/cloak/wizard/IsShield() + breakInvisible(src.loc) + return 0 + +/obj/item/clothing/cloak/wizard/IsReflect() + breakInvisible(src.loc) + return 0 +*/ diff --git a/code/modules/clothing/suits/jobs.dm b/code/modules/clothing/suits/jobs.dm index 40fe152707..0bd5ed9a58 100644 --- a/code/modules/clothing/suits/jobs.dm +++ b/code/modules/clothing/suits/jobs.dm @@ -41,6 +41,7 @@ flags = NODROP flags_inv = HIDEHAIR|HIDEFACE|HIDEEARS +//Chaplain /obj/item/clothing/suit/nun name = "nun robe" desc = "Maximum piety in this star system." @@ -50,22 +51,6 @@ flags_inv = HIDESHOES|HIDEJUMPSUIT allowed = list(/obj/item/weapon/storage/book/bible, /obj/item/weapon/nullrod, /obj/item/weapon/reagent_containers/food/drinks/bottle/holywater, /obj/item/weapon/storage/fancy/candle_box, /obj/item/candle, /obj/item/weapon/tank/internals/emergency_oxygen) -/obj/item/clothing/suit/studentuni - name = "student robe" - desc = "The uniform of a bygone institute of learning." - icon_state = "studentuni" - item_state = "studentuni" - body_parts_covered = ARMS|CHEST - allowed = list(/obj/item/weapon/storage/book/bible, /obj/item/weapon/nullrod, /obj/item/weapon/reagent_containers/food/drinks/bottle/holywater, /obj/item/weapon/storage/fancy/candle_box, /obj/item/candle, /obj/item/weapon/tank/internals/emergency_oxygen) - -/obj/item/clothing/suit/witchhunter - name = "witchunter garb" - desc = "This worn outfit saw much use back in the day." - icon_state = "witchhunter" - item_state = "witchhunter" - body_parts_covered = CHEST|GROIN|LEGS|ARMS - allowed = list(/obj/item/weapon/storage/book/bible, /obj/item/weapon/nullrod, /obj/item/weapon/reagent_containers/food/drinks/bottle/holywater, /obj/item/weapon/storage/fancy/candle_box, /obj/item/candle, /obj/item/weapon/tank/internals/emergency_oxygen) - //Chef /obj/item/clothing/suit/toggle/chef name = "chef's apron" @@ -96,8 +81,8 @@ item_state = "det_suit" blood_overlay_type = "coat" body_parts_covered = CHEST|GROIN|LEGS|ARMS - allowed = list(/obj/item/weapon/tank/internals/emergency_oxygen,/obj/item/weapon/reagent_containers/spray/pepper,/obj/item/device/flashlight,/obj/item/weapon/gun/energy,/obj/item/weapon/gun/ballistic,/obj/item/ammo_box,/obj/item/ammo_casing,/obj/item/weapon/melee/baton,/obj/item/weapon/restraints/handcuffs,/obj/item/weapon/storage/fancy/cigarettes,/obj/item/weapon/lighter,/obj/item/device/detective_scanner,/obj/item/device/taperecorder,/obj/item/weapon/melee/classic_baton/telescopic) - armor = list(melee = 25, bullet = 10, laser = 25, energy = 10, bomb = 0, bio = 0, rad = 0, fire = 0, acid = 45) + allowed = list(/obj/item/weapon/tank/internals/emergency_oxygen,/obj/item/weapon/reagent_containers/spray/pepper,/obj/item/device/flashlight,/obj/item/weapon/gun/energy,/obj/item/weapon/gun/projectile,/obj/item/ammo_box,/obj/item/ammo_casing,/obj/item/weapon/melee/baton,/obj/item/weapon/restraints/handcuffs,/obj/item/weapon/storage/fancy/cigarettes,/obj/item/weapon/lighter,/obj/item/device/detective_scanner,/obj/item/device/taperecorder,/obj/item/weapon/melee/classic_baton/telescopic) + armor = list(melee = 25, bullet = 10, laser = 25, energy = 10, bomb = 0, bio = 0, rad = 0) cold_protection = CHEST|GROIN|LEGS|ARMS heat_protection = CHEST|GROIN|LEGS|ARMS @@ -115,7 +100,8 @@ item_state = "hazard" blood_overlay_type = "armor" allowed = list(/obj/item/device/flashlight,/obj/item/weapon/tank/internals/emergency_oxygen,/obj/item/device/t_scanner,/obj/item/device/radio) - resistance_flags = 0 + burn_state = FIRE_PROOF + //Lawyer /obj/item/clothing/suit/toggle/lawyer name = "blue suit jacket" @@ -169,22 +155,10 @@ item_state = "hosbluejacket" body_parts_covered = CHEST|ARMS + //Surgeon /obj/item/clothing/suit/apron/surgical name = "surgical apron" desc = "A sterile blue surgical apron." icon_state = "surgical" allowed = list(/obj/item/weapon/scalpel, /obj/item/weapon/surgical_drapes, /obj/item/weapon/cautery, /obj/item/weapon/hemostat, /obj/item/weapon/retractor) - -//Curator -/obj/item/clothing/suit/curator - name = "treasure hunter's coat" - desc = "Both fashionable and lightly armoured, this jacket is favoured by treasure hunters the galaxy over." - icon_state = "curator" - item_state = "curator" - blood_overlay_type = "coat" - body_parts_covered = CHEST|ARMS - allowed = list(/obj/item/weapon/tank/internals/emergency_oxygen, /obj/item/weapon/melee/curator_whip) - armor = list(melee = 25, bullet = 10, laser = 25, energy = 10, bomb = 0, bio = 0, rad = 0, fire = 0, acid = 45) - cold_protection = CHEST|ARMS - heat_protection = CHEST|ARMS \ No newline at end of file diff --git a/code/modules/clothing/suits/labcoat.dm b/code/modules/clothing/suits/labcoat.dm index c4d2678650..8012741bf0 100644 --- a/code/modules/clothing/suits/labcoat.dm +++ b/code/modules/clothing/suits/labcoat.dm @@ -6,7 +6,7 @@ blood_overlay_type = "coat" body_parts_covered = CHEST|ARMS allowed = list(/obj/item/device/analyzer,/obj/item/stack/medical,/obj/item/weapon/dnainjector,/obj/item/weapon/reagent_containers/dropper,/obj/item/weapon/reagent_containers/syringe,/obj/item/weapon/reagent_containers/hypospray,/obj/item/device/healthanalyzer,/obj/item/device/flashlight/pen,/obj/item/weapon/reagent_containers/glass/bottle,/obj/item/weapon/reagent_containers/glass/beaker,/obj/item/weapon/reagent_containers/pill,/obj/item/weapon/storage/pill_bottle,/obj/item/weapon/paper,/obj/item/weapon/melee/classic_baton/telescopic,/obj/item/weapon/soap,/obj/item/device/sensor_device,/obj/item/weapon/tank/internals/emergency_oxygen) - armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 50, rad = 0, fire = 50, acid = 50) + armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 50, rad = 0) togglename = "buttons" /obj/item/clothing/suit/toggle/labcoat/cmo @@ -45,4 +45,4 @@ /obj/item/clothing/suit/toggle/labcoat/science name = "scientist labcoat" desc = "A suit that protects against minor chemical spills. Has a purple stripe on the shoulder." - icon_state = "labcoat_tox" \ No newline at end of file + icon_state = "labcoat_tox" diff --git a/code/modules/clothing/suits/miscellaneous.dm b/code/modules/clothing/suits/miscellaneous.dm index a667839ffb..ab103d838b 100644 --- a/code/modules/clothing/suits/miscellaneous.dm +++ b/code/modules/clothing/suits/miscellaneous.dm @@ -16,7 +16,7 @@ blood_overlay_type = "armor" body_parts_covered = CHEST allowed = list (/obj/item/weapon/gun/energy/laser/bluetag) - resistance_flags = 0 + burn_state = FIRE_PROOF /obj/item/clothing/suit/redtag name = "red laser tag armor" @@ -26,7 +26,7 @@ blood_overlay_type = "armor" body_parts_covered = CHEST allowed = list (/obj/item/weapon/gun/energy/laser/redtag) - resistance_flags = 0 + burn_state = FIRE_PROOF /* * Costume @@ -38,11 +38,12 @@ item_state = "pirate" allowed = list(/obj/item/weapon/melee/energy/sword/pirate, /obj/item/clothing/glasses/eyepatch, /obj/item/weapon/reagent_containers/food/drinks/bottle/rum) -/obj/item/clothing/suit/pirate/captain +/obj/item/clothing/suit/hgpirate name = "pirate captain coat" desc = "Yarr." icon_state = "hgpirate" item_state = "hgpirate" + allowed = list(/obj/item/weapon/melee/energy/sword/pirate, /obj/item/clothing/glasses/eyepatch, /obj/item/weapon/reagent_containers/food/drinks/bottle/rum) /obj/item/clothing/suit/cyborg_suit @@ -86,10 +87,10 @@ icon_state = "syndicate-black-red" item_state = "syndicate-black-red" desc = "A plastic replica of the Syndicate space suit. You'll look just like a real murderous Syndicate agent in this! This is a toy, it is not made for use in space!" - w_class = WEIGHT_CLASS_NORMAL + w_class = 3 allowed = list(/obj/item/device/flashlight,/obj/item/weapon/tank/internals/emergency_oxygen,/obj/item/toy) flags_inv = HIDEGLOVES|HIDESHOES|HIDEJUMPSUIT - resistance_flags = 0 + burn_state = FIRE_PROOF /obj/item/clothing/suit/hastur name = "\improper Hastur's robe" @@ -134,7 +135,7 @@ item_state = "owl_wings" togglename = "wings" body_parts_covered = ARMS|CHEST - allowed = list(/obj/item/weapon/gun/energy,/obj/item/weapon/reagent_containers/spray/pepper,/obj/item/weapon/gun/ballistic,/obj/item/ammo_box,/obj/item/ammo_casing,/obj/item/weapon/melee/baton,/obj/item/weapon/restraints/handcuffs,/obj/item/device/flashlight/seclite,/obj/item/weapon/melee/classic_baton/telescopic) + allowed = list(/obj/item/weapon/gun/energy,/obj/item/weapon/reagent_containers/spray/pepper,/obj/item/weapon/gun/projectile,/obj/item/ammo_box,/obj/item/ammo_casing,/obj/item/weapon/melee/baton,/obj/item/weapon/restraints/handcuffs,/obj/item/device/flashlight/seclite,/obj/item/weapon/melee/classic_baton/telescopic) actions_types = list(/datum/action/item_action/toggle_wings) /obj/item/clothing/suit/toggle/owlwings/griffinwings @@ -153,6 +154,7 @@ flags_inv = HIDEJUMPSUIT allowed = list(/obj/item/weapon/storage/book/bible, /obj/item/weapon/nullrod, /obj/item/weapon/reagent_containers/food/drinks/bottle/holywater, /obj/item/weapon/storage/fancy/candle_box, /obj/item/candle, /obj/item/weapon/tank/internals/emergency_oxygen) + /obj/item/clothing/suit/cardborg name = "cardborg suit" desc = "An ordinary cardboard box with holes cut in the sides." @@ -231,7 +233,7 @@ body_parts_covered = CHEST|GROIN|ARMS cold_protection = CHEST|GROIN|ARMS min_cold_protection_temperature = FIRE_SUIT_MIN_TEMP_PROTECT //Space carp like space, so you should too - allowed = list(/obj/item/weapon/tank/internals/emergency_oxygen, /obj/item/weapon/gun/ballistic/automatic/speargun) + allowed = list(/obj/item/weapon/tank/internals/emergency_oxygen, /obj/item/weapon/gun/projectile/automatic/speargun) hooded = 1 hoodtype = /obj/item/clothing/head/carp_hood @@ -253,7 +255,7 @@ body_parts_covered = CHEST|GROIN|ARMS //cold_protection = CHEST|GROIN|ARMS //min_cold_protection_temperature = FIRE_SUIT_MIN_TEMP_PROTECT - allowed = list() + allowed = list(,) hooded = 1 hoodtype = /obj/item/clothing/head/ian_hood dog_fashion = /datum/dog_fashion/back @@ -268,36 +270,17 @@ flags = NODROP flags_inv = HIDEHAIR|HIDEEARS -/obj/item/clothing/suit/hooded/bee_costume // It's Hip! - name = "bee costume" - desc = "Bee the true Queen!" - icon_state = "bee" - item_state = "labcoat" - body_parts_covered = CHEST|GROIN|ARMS - flags = THICKMATERIAL - hooded = 1 - hoodtype = /obj/item/clothing/head/bee_hood - -/obj/item/clothing/head/bee_hood - name = "bee hood" - desc = "A hood attached to a bee costume." - icon_state = "bee" - body_parts_covered = HEAD - flags = NODROP|THICKMATERIAL - flags_inv = HIDEHAIR|HIDEEARS - /obj/item/clothing/suit/hooded/bloated_human //OH MY GOD WHAT HAVE YOU DONE!?!?!? name = "bloated human suit" desc = "A horribly bloated suit made from human skins." icon_state = "lingspacesuit" item_state = "labcoat" body_parts_covered = CHEST|GROIN|ARMS - allowed = list() + allowed = list(,) hooded = 1 actions_types = list(/datum/action/item_action/toggle_human_head) hoodtype = /obj/item/clothing/head/human_head - /obj/item/clothing/head/human_head name = "bloated human head" desc = "A horribly bloated and mismatched human head." @@ -340,12 +323,6 @@ icon_state = "nerdshirt" item_state = "nerdshirt" -/obj/item/clothing/suit/vapeshirt //wearing this is asking to get beat. - name = "Vape Naysh shirt" - desc = "A cheap white T-shirt with a big tacky \"VN\" on the front, Why would you wear this unironicly?" - icon_state = "vapeshirt" - item_state = "vapeshirt" - /obj/item/clothing/suit/jacket name = "bomber jacket" desc = "Aviators not included." @@ -361,9 +338,9 @@ desc = "Pompadour not included." icon_state = "leatherjacket" item_state = "hostrench" - resistance_flags = 0 + burn_state = FIRE_PROOF max_heat_protection_temperature = ARMOR_MAX_TEMP_PROTECT - allowed = list(/obj/item/device/flashlight,/obj/item/weapon/tank/internals/emergency_oxygen,/obj/item/toy,/obj/item/weapon/storage/fancy/cigarettes,/obj/item/weapon/lighter,/obj/item/weapon/gun/ballistic/automatic/pistol,/obj/item/weapon/gun/ballistic/revolver,/obj/item/weapon/gun/ballistic/revolver/detective,/obj/item/device/radio) + allowed = list(/obj/item/device/flashlight,/obj/item/weapon/tank/internals/emergency_oxygen,/obj/item/toy,/obj/item/weapon/storage/fancy/cigarettes,/obj/item/weapon/lighter,/obj/item/weapon/gun/projectile/automatic/pistol,/obj/item/weapon/gun/projectile/revolver,/obj/item/weapon/gun/projectile/revolver/detective,/obj/item/device/radio) /obj/item/clothing/suit/jacket/leather/overcoat name = "leather overcoat" @@ -377,7 +354,7 @@ desc = "A thick jacket with a rubbery, water-resistant shell." icon_state = "pufferjacket" item_state = "hostrench" - armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 50, rad = 0, fire = 0, acid = 0) + armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 50, rad = 0) /obj/item/clothing/suit/jacket/puffer/vest name = "puffer vest" @@ -386,14 +363,14 @@ item_state = "armor" body_parts_covered = CHEST|GROIN cold_protection = CHEST|GROIN - armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 30, rad = 0, fire = 0, acid = 0) + armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 30, rad = 0) /obj/item/clothing/suit/jacket/miljacket name = "military jacket" desc = "A canvas jacket styled after classical American military garb. Feels sturdy, yet comfortable." icon_state = "militaryjacket" item_state = "militaryjacket" - allowed = list(/obj/item/device/flashlight,/obj/item/weapon/tank/internals/emergency_oxygen,/obj/item/toy,/obj/item/weapon/storage/fancy/cigarettes,/obj/item/weapon/lighter,/obj/item/weapon/gun/ballistic/automatic/pistol,/obj/item/weapon/gun/ballistic/revolver,/obj/item/weapon/gun/ballistic/revolver/detective,/obj/item/device/radio) + allowed = list(/obj/item/device/flashlight,/obj/item/weapon/tank/internals/emergency_oxygen,/obj/item/toy,/obj/item/weapon/storage/fancy/cigarettes,/obj/item/weapon/lighter,/obj/item/weapon/gun/projectile/automatic/pistol,/obj/item/weapon/gun/projectile/revolver,/obj/item/weapon/gun/projectile/revolver/detective,/obj/item/device/radio) /obj/item/clothing/suit/jacket/letterman name = "letterman jacket" @@ -439,7 +416,7 @@ body_parts_covered = CHEST|GROIN|ARMS cold_protection = CHEST|GROIN|ARMS min_cold_protection_temperature = FIRE_SUIT_MIN_TEMP_PROTECT - armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 10, rad = 0, fire = 0, acid = 0) + armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 10, rad = 0) allowed = list(/obj/item/device/flashlight,/obj/item/weapon/tank/internals/emergency_oxygen,/obj/item/toy,/obj/item/weapon/storage/fancy/cigarettes,/obj/item/weapon/lighter) hooded = 1 @@ -456,8 +433,8 @@ /obj/item/clothing/suit/hooded/wintercoat/captain name = "captain's winter coat" icon_state = "coatcaptain" - armor = list(melee = 25, bullet = 30, laser = 30, energy = 10, bomb = 25, bio = 0, rad = 0, fire = 0, acid = 50) - allowed = list(/obj/item/weapon/gun/energy,/obj/item/weapon/reagent_containers/spray/pepper,/obj/item/weapon/gun/ballistic,/obj/item/ammo_box,/obj/item/ammo_casing,/obj/item/weapon/melee/baton,/obj/item/weapon/restraints/handcuffs,/obj/item/device/flashlight/seclite,/obj/item/weapon/melee/classic_baton/telescopic) + armor = list(melee = 25, bullet = 30, laser = 30, energy = 10, bomb = 25, bio = 0, rad = 0) + allowed = list(/obj/item/weapon/gun/energy,/obj/item/weapon/reagent_containers/spray/pepper,/obj/item/weapon/gun/projectile,/obj/item/ammo_box,/obj/item/ammo_casing,/obj/item/weapon/melee/baton,/obj/item/weapon/restraints/handcuffs,/obj/item/device/flashlight/seclite,/obj/item/weapon/melee/classic_baton/telescopic) hoodtype = /obj/item/clothing/head/winterhood/captain /obj/item/clothing/head/winterhood/captain @@ -466,8 +443,8 @@ /obj/item/clothing/suit/hooded/wintercoat/security name = "security winter coat" icon_state = "coatsecurity" - armor = list(melee = 25, bullet = 15, laser = 30, energy = 10, bomb = 25, bio = 0, rad = 0, fire = 0, acid = 45) - allowed = list(/obj/item/weapon/gun/energy,/obj/item/weapon/reagent_containers/spray/pepper,/obj/item/weapon/gun/ballistic,/obj/item/ammo_box,/obj/item/ammo_casing,/obj/item/weapon/melee/baton,/obj/item/weapon/restraints/handcuffs,/obj/item/device/flashlight/seclite,/obj/item/weapon/melee/classic_baton/telescopic) + armor = list(melee = 25, bullet = 15, laser = 30, energy = 10, bomb = 25, bio = 0, rad = 0) + allowed = list(/obj/item/weapon/gun/energy,/obj/item/weapon/reagent_containers/spray/pepper,/obj/item/weapon/gun/projectile,/obj/item/ammo_box,/obj/item/ammo_casing,/obj/item/weapon/melee/baton,/obj/item/weapon/restraints/handcuffs,/obj/item/device/flashlight/seclite,/obj/item/weapon/melee/classic_baton/telescopic) hoodtype = /obj/item/clothing/head/winterhood/security /obj/item/clothing/head/winterhood/security @@ -477,7 +454,7 @@ name = "medical winter coat" icon_state = "coatmedical" allowed = list(/obj/item/device/analyzer,/obj/item/stack/medical,/obj/item/weapon/dnainjector,/obj/item/weapon/reagent_containers/dropper,/obj/item/weapon/reagent_containers/syringe,/obj/item/weapon/reagent_containers/hypospray,/obj/item/device/healthanalyzer,/obj/item/device/flashlight/pen,/obj/item/weapon/reagent_containers/glass/bottle,/obj/item/weapon/reagent_containers/glass/beaker,/obj/item/weapon/reagent_containers/pill,/obj/item/weapon/storage/pill_bottle,/obj/item/weapon/paper,/obj/item/weapon/melee/classic_baton/telescopic) - armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 50, rad = 0, fire = 0, acid = 45) + armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 50, rad = 0) hoodtype = /obj/item/clothing/head/winterhood/medical /obj/item/clothing/head/winterhood/medical @@ -487,7 +464,7 @@ name = "science winter coat" icon_state = "coatscience" allowed = list(/obj/item/device/analyzer,/obj/item/stack/medical,/obj/item/weapon/dnainjector,/obj/item/weapon/reagent_containers/dropper,/obj/item/weapon/reagent_containers/syringe,/obj/item/weapon/reagent_containers/hypospray,/obj/item/device/healthanalyzer,/obj/item/device/flashlight/pen,/obj/item/weapon/reagent_containers/glass/bottle,/obj/item/weapon/reagent_containers/glass/beaker,/obj/item/weapon/reagent_containers/pill,/obj/item/weapon/storage/pill_bottle,/obj/item/weapon/paper,/obj/item/weapon/melee/classic_baton/telescopic) - armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 10, bio = 0, rad = 0, fire = 0, acid = 0) + armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 10, bio = 0, rad = 0) hoodtype = /obj/item/clothing/head/winterhood/science /obj/item/clothing/head/winterhood/science @@ -496,7 +473,7 @@ /obj/item/clothing/suit/hooded/wintercoat/engineering name = "engineering winter coat" icon_state = "coatengineer" - armor = list(melee = 0, bullet = 0, laser = 0, energy = 0, bomb = 0, bio = 0, rad = 20, fire = 30, acid = 45) + armor = list(melee = 0, bullet = 0, laser = 0, energy = 0, bomb = 0, bio = 0, rad = 20) allowed = list(/obj/item/device/flashlight,/obj/item/weapon/tank/internals/emergency_oxygen,/obj/item/device/t_scanner, /obj/item/weapon/rcd, /obj/item/weapon/pipe_dispenser) hoodtype = /obj/item/clothing/head/winterhood/engineering @@ -518,7 +495,7 @@ hoodtype = /obj/item/clothing/head/winterhood/hydro /obj/item/clothing/head/winterhood/hydro - icon_state = "winterhood_hydro" + item_state = "winterhood_hydro" /obj/item/clothing/suit/hooded/wintercoat/cargo name = "cargo winter coat" @@ -532,7 +509,7 @@ name = "mining winter coat" icon_state = "coatminer" allowed = list(/obj/item/weapon/pickaxe,/obj/item/device/flashlight,/obj/item/weapon/tank/internals/emergency_oxygen,/obj/item/toy,/obj/item/weapon/storage/fancy/cigarettes,/obj/item/weapon/lighter) - armor = list(melee = 10, bullet = 0, laser = 0, energy = 0, bomb = 0, bio = 0, rad = 0, fire = 0, acid = 0) + armor = list(melee = 10, bullet = 0, laser = 0, energy = 0, bomb = 0, bio = 0, rad = 0) hoodtype = /obj/item/clothing/head/winterhood/miner /obj/item/clothing/head/winterhood/miner diff --git a/code/modules/clothing/suits/utility.dm b/code/modules/clothing/suits/utility.dm index cc4b0a281b..9dfa9c8a72 100644 --- a/code/modules/clothing/suits/utility.dm +++ b/code/modules/clothing/suits/utility.dm @@ -14,7 +14,7 @@ desc = "A suit that helps protect against fire and heat." icon_state = "fire" item_state = "ro_suit" - w_class = WEIGHT_CLASS_BULKY + w_class = 4 gas_transfer_coefficient = 0.90 permeability_coefficient = 0.50 body_parts_covered = CHEST|GROIN|LEGS|FEET|ARMS|HANDS @@ -28,7 +28,7 @@ min_cold_protection_temperature = FIRE_SUIT_MIN_TEMP_PROTECT strip_delay = 60 put_on_delay = 60 - resistance_flags = FIRE_PROOF + burn_state = FIRE_PROOF /obj/item/clothing/suit/fire/firefighter icon_state = "firesuit" @@ -57,7 +57,7 @@ desc = "Use in case of bomb." icon_state = "bombsuit" flags = THICKMATERIAL - armor = list(melee = 20, bullet = 0, laser = 20,energy = 10, bomb = 100, bio = 0, rad = 0, fire = 80, acid = 50) + armor = list(melee = 20, bullet = 0, laser = 20,energy = 10, bomb = 100, bio = 0, rad = 0) flags_inv = HIDEFACE|HIDEMASK|HIDEEARS|HIDEEYES|HIDEHAIR|HIDEFACIALHAIR cold_protection = HEAD min_cold_protection_temperature = HELMET_MIN_TEMP_PROTECT @@ -66,21 +66,20 @@ strip_delay = 70 put_on_delay = 70 flags_cover = HEADCOVERSEYES | HEADCOVERSMOUTH - resistance_flags = 0 - + burn_state = FIRE_PROOF /obj/item/clothing/suit/bomb_suit name = "bomb suit" desc = "A suit designed for safety when handling explosives." icon_state = "bombsuit" item_state = "bombsuit" - w_class = WEIGHT_CLASS_BULKY + w_class = 4//bulky item gas_transfer_coefficient = 0.01 permeability_coefficient = 0.01 flags = THICKMATERIAL body_parts_covered = CHEST|GROIN|LEGS|FEET|ARMS|HANDS slowdown = 2 - armor = list(melee = 20, bullet = 0, laser = 20,energy = 10, bomb = 100, bio = 0, rad = 0, fire = 80, acid = 50) + armor = list(melee = 20, bullet = 0, laser = 20,energy = 10, bomb = 100, bio = 0, rad = 0) flags_inv = HIDEJUMPSUIT heat_protection = CHEST|GROIN|LEGS|FEET|ARMS|HANDS max_heat_protection_temperature = ARMOR_MAX_TEMP_PROTECT @@ -88,7 +87,7 @@ min_cold_protection_temperature = ARMOR_MIN_TEMP_PROTECT strip_delay = 70 put_on_delay = 70 - resistance_flags = 0 + burn_state = FIRE_PROOF /obj/item/clothing/head/bomb_hood/security @@ -110,26 +109,26 @@ desc = "A hood with radiation protective properties. The label reads, 'Made with lead. Please do not consume insulation.'" flags = THICKMATERIAL flags_inv = HIDEMASK|HIDEEARS|HIDEFACE|HIDEEYES|HIDEHAIR|HIDEFACIALHAIR - armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 60, rad = 100, fire = 30, acid = 30) + armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 60, rad = 100) strip_delay = 60 put_on_delay = 60 flags_cover = HEADCOVERSEYES | HEADCOVERSMOUTH - resistance_flags = 0 + burn_state = FIRE_PROOF /obj/item/clothing/suit/radiation name = "radiation suit" desc = "A suit that protects against radiation. The label reads, 'Made with lead. Please do not consume insulation.'" icon_state = "rad" item_state = "rad_suit" - w_class = WEIGHT_CLASS_BULKY + w_class = 4//bulky item gas_transfer_coefficient = 0.90 permeability_coefficient = 0.50 flags = THICKMATERIAL body_parts_covered = CHEST|GROIN|LEGS|FEET|ARMS|HANDS allowed = list(/obj/item/device/flashlight,/obj/item/weapon/tank/internals/emergency_oxygen,/obj/item/device/geiger_counter) slowdown = 1.5 - armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 60, rad = 100, fire = 30, acid = 30) + armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 60, rad = 100) strip_delay = 60 put_on_delay = 60 flags_inv = HIDEJUMPSUIT - resistance_flags = 0 + burn_state = FIRE_PROOF diff --git a/code/modules/clothing/suits/wiz_robe.dm b/code/modules/clothing/suits/wiz_robe.dm index 179b541701..cd2e63b44d 100644 --- a/code/modules/clothing/suits/wiz_robe.dm +++ b/code/modules/clothing/suits/wiz_robe.dm @@ -4,10 +4,11 @@ icon_state = "wizard" gas_transfer_coefficient = 0.01 // IT'S MAGICAL OKAY JEEZ +1 TO NOT DIE permeability_coefficient = 0.01 - armor = list(melee = 30, bullet = 20, laser = 20, energy = 20, bomb = 20, bio = 20, rad = 20, fire = 100, acid = 100) + armor = list(melee = 30, bullet = 20, laser = 20, energy = 20, bomb = 20, bio = 20, rad = 20) strip_delay = 50 put_on_delay = 50 - resistance_flags = FIRE_PROOF | ACID_PROOF + unacidable = 1 + burn_state = FIRE_PROOF dog_fashion = /datum/dog_fashion/head/blue_wizard /obj/item/clothing/head/wizard/red @@ -34,8 +35,7 @@ icon_state = "wizard-fake" gas_transfer_coefficient = 1 permeability_coefficient = 1 - armor = list(melee = 0, bullet = 0, laser = 0, energy = 0, bomb = 0, bio = 0, rad = 0, fire = 0, acid = 0) - resistance_flags = FLAMMABLE + armor = list(melee = 0, bullet = 0, laser = 0, energy = 0, bomb = 0, bio = 0, rad = 0) dog_fashion = /datum/dog_fashion/head/blue_wizard /obj/item/clothing/head/wizard/marisa @@ -66,12 +66,13 @@ gas_transfer_coefficient = 0.01 permeability_coefficient = 0.01 body_parts_covered = CHEST|GROIN|ARMS|LEGS - armor = list(melee = 30, bullet = 20, laser = 20, energy = 20, bomb = 20, bio = 20, rad = 20, fire = 100, acid = 100) + armor = list(melee = 30, bullet = 20, laser = 20, energy = 20, bomb = 20, bio = 20, rad = 20) allowed = list(/obj/item/weapon/teleportation_scroll) flags_inv = HIDEJUMPSUIT strip_delay = 50 put_on_delay = 50 - resistance_flags = FIRE_PROOF | ACID_PROOF + unacidable = 1 + burn_state = FIRE_PROOF /obj/item/clothing/suit/wizrobe/red name = "red wizard robe" @@ -123,8 +124,9 @@ item_state = "wizrobe" gas_transfer_coefficient = 1 permeability_coefficient = 1 - armor = list(melee = 0, bullet = 0, laser = 0, energy = 0, bomb = 0, bio = 0, rad = 0, fire = 0, acid = 0) - resistance_flags = FLAMMABLE + armor = list(melee = 0, bullet = 0, laser = 0, energy = 0, bomb = 0, bio = 0, rad = 0) + unacidable = 0 + burn_state = FLAMMABLE /obj/item/clothing/head/wizard/marisa/fake name = "witch hat" @@ -132,8 +134,9 @@ icon_state = "marisa" gas_transfer_coefficient = 1 permeability_coefficient = 1 - armor = list(melee = 0, bullet = 0, laser = 0, energy = 0, bomb = 0, bio = 0, rad = 0, fire = 0, acid = 0) - resistance_flags = FLAMMABLE + armor = list(melee = 0, bullet = 0, laser = 0, energy = 0, bomb = 0, bio = 0, rad = 0) + unacidable = 0 + burn_state = FLAMMABLE /obj/item/clothing/suit/wizrobe/marisa/fake name = "witch robe" @@ -142,88 +145,6 @@ item_state = "marisarobe" gas_transfer_coefficient = 1 permeability_coefficient = 1 - armor = list(melee = 0, bullet = 0, laser = 0, energy = 0, bomb = 0, bio = 0, rad = 0, fire = 0, acid = 0) - resistance_flags = FLAMMABLE - -/obj/item/clothing/suit/wizrobe/paper - name = "papier-mâché robe" - desc = "A robe held together by various bits of clear-tape and paste." - icon_state = "wizard-paper" - item_state = "wizrobe" - var/robe_charge = TRUE - actions_types = list(/datum/action/item_action/stickmen) - - -/obj/item/clothing/suit/wizrobe/paper/ui_action_click(mob/user, action) - stickmen() - - -/obj/item/clothing/suit/wizrobe/paper/verb/stickmen() - set category = "Object" - set name = "Summon Stick Minions" - set src in usr - if(!isliving(usr)) - return - if(!robe_charge) - usr << "\The robe's internal magic supply is still recharging!" - return - - usr.say("Rise, my creation! Off your page into this realm!") - playsound(src.loc, 'sound/magic/Summon_Magic.ogg', 50, 1, 1) - var/mob/living/M = new /mob/living/simple_animal/hostile/stickman(get_turf(usr)) - var/list/factions = usr.faction - M.faction = factions - src.robe_charge = FALSE - sleep(30) - src.robe_charge = TRUE - usr << "\The robe hums, its internal magic supply restored." - - -//Shielded Armour - -/obj/item/clothing/suit/space/hardsuit/shielded/wizard - name = "battlemage armour" - desc = "Not all wizards are afraid of getting up close and personal." - icon_state = "battlemage" - item_state = "battlemage" - recharge_rate = 0 - current_charges = 15 - recharge_cooldown = INFINITY - shield_state = "shield-red" - shield_on = "shield-red" - min_cold_protection_temperature = ARMOR_MIN_TEMP_PROTECT - max_heat_protection_temperature = ARMOR_MAX_TEMP_PROTECT - helmettype = /obj/item/clothing/head/helmet/space/hardsuit/shielded/wizard - armor = list(melee = 30, bullet = 20, laser = 20, energy = 20, bomb = 20, bio = 20, rad = 20, fire = 100, acid = 100) - slowdown = 0 - resistance_flags = FIRE_PROOF | ACID_PROOF - -/obj/item/clothing/head/helmet/space/hardsuit/shielded/wizard - name = "battlemage helmet" - desc = "A suitably impressive helmet.." - icon_state = "battlemage" - item_state = "battlemage" - min_cold_protection_temperature = ARMOR_MIN_TEMP_PROTECT - max_heat_protection_temperature = ARMOR_MAX_TEMP_PROTECT - armor = list(melee = 30, bullet = 20, laser = 20, energy = 20, bomb = 20, bio = 20, rad = 20, fire = 100, acid = 100) - actions_types = null //No inbuilt light - resistance_flags = FIRE_PROOF | ACID_PROOF - -/obj/item/clothing/head/helmet/space/hardsuit/shielded/wizard/attack_self(mob/user) - return - -/obj/item/wizard_armour_charge - name = "battlemage shield charges" - desc = "A powerful rune that will increase the number of hits a suit of battlemage armour can take before failing.." - icon = 'icons/effects/effects.dmi' - icon_state = "electricity2" - -/obj/item/wizard_armour_charge/afterattack(obj/item/clothing/suit/space/hardsuit/shielded/wizard/W, mob/user) - ..() - if(!istype(W)) - user << "The rune can only be used on battlemage armour!" - return - W.current_charges += 8 - user <<"You charge \the [W]. It can now absorb [W.current_charges] hits." - qdel(src) - + armor = list(melee = 0, bullet = 0, laser = 0, energy = 0, bomb = 0, bio = 0, rad = 0) + unacidable = 0 + burn_state = FLAMMABLE diff --git a/code/modules/clothing/under/color.dm b/code/modules/clothing/under/color.dm index c26a98d874..198eea1109 100644 --- a/code/modules/clothing/under/color.dm +++ b/code/modules/clothing/under/color.dm @@ -14,7 +14,7 @@ icon_state = "black" item_state = "bl_suit" item_color = "black" - resistance_flags = 0 + burn_state = FIRE_PROOF /obj/item/clothing/under/color/grey name = "grey jumpsuit" diff --git a/code/modules/clothing/under/jobs/civilian.dm b/code/modules/clothing/under/jobs/civilian.dm index 729e045808..3b7769319c 100644 --- a/code/modules/clothing/under/jobs/civilian.dm +++ b/code/modules/clothing/under/jobs/civilian.dm @@ -8,6 +8,7 @@ item_color = "barman" alt_covers_chest = 1 + /obj/item/clothing/under/rank/captain //Alright, technically not a 'civilian' but its better then giving a .dm file for a single define. desc = "It's a blue jumpsuit with some gold markings denoting the rank of \"Captain\"." name = "captain's jumpsuit" @@ -15,6 +16,7 @@ item_state = "b_suit" item_color = "captain" + /obj/item/clothing/under/rank/cargo name = "quartermaster's jumpsuit" desc = "It's a jumpsuit worn by the quartermaster. It's specially designed to prevent back injuries caused by pushing paper." @@ -22,14 +24,13 @@ item_state = "lb_suit" item_color = "qm" + /obj/item/clothing/under/rank/cargotech name = "cargo technician's jumpsuit" desc = "Shooooorts! They're comfy and easy to wear!" icon_state = "cargotech" item_state = "lb_suit" item_color = "cargo" - body_parts_covered = CHEST|GROIN|ARMS - mutantrace_variation = MUTANTRACE_VARIATION /obj/item/clothing/under/rank/chaplain @@ -40,6 +41,7 @@ item_color = "chapblack" can_adjust = 0 + /obj/item/clothing/under/rank/chef name = "cook's suit" desc = "A suit which is given only to the most hardcore cooks in space." @@ -47,6 +49,7 @@ item_color = "chef" alt_covers_chest = 1 + /obj/item/clothing/under/rank/clown name = "clown suit" desc = "'HONK!'" @@ -68,6 +71,7 @@ item_color = "hop" can_adjust = 0 + /obj/item/clothing/under/rank/hydroponics desc = "It's a jumpsuit designed to protect against minor plant-related hazards." name = "botanist's jumpsuit" @@ -76,38 +80,45 @@ item_color = "hydroponics" permeability_coefficient = 0.50 + /obj/item/clothing/under/rank/janitor desc = "It's the official uniform of the station's janitor. It has minor protection from biohazards." name = "janitor's jumpsuit" icon_state = "janitor" item_color = "janitor" - armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 10, rad = 0, fire = 0, acid = 0) + armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 10, rad = 0) + /obj/item/clothing/under/lawyer desc = "Slick threads." name = "Lawyer suit" can_adjust = 0 + /obj/item/clothing/under/lawyer/black icon_state = "lawyer_black" item_state = "lawyer_black" item_color = "lawyer_black" + /obj/item/clothing/under/lawyer/female icon_state = "black_suit_fem" item_state = "black_suit_fem" item_color = "black_suit_fem" + /obj/item/clothing/under/lawyer/red icon_state = "lawyer_red" item_state = "lawyer_red" item_color = "lawyer_red" + /obj/item/clothing/under/lawyer/blue icon_state = "lawyer_blue" item_state = "lawyer_blue" item_color = "lawyer_blue" + /obj/item/clothing/under/lawyer/bluesuit name = "blue suit" desc = "A classy suit and tie." @@ -117,6 +128,7 @@ can_adjust = 1 alt_covers_chest = 1 + /obj/item/clothing/under/lawyer/purpsuit name = "purple suit" icon_state = "lawyer_purp" @@ -126,6 +138,7 @@ can_adjust = 1 alt_covers_chest = 1 + /obj/item/clothing/under/lawyer/blacksuit name = "black suit" desc = "A professional black suit. Nanotrasen Investigation Bureau approved!" @@ -135,6 +148,7 @@ can_adjust = 1 alt_covers_chest = 1 + /obj/item/clothing/under/rank/librarian name = "sensible suit" desc = "It's very... sensible." @@ -143,12 +157,6 @@ item_color = "red_suit" can_adjust = 0 -/obj/item/clothing/under/rank/librarian/curator - name = "treasure hunter uniform" - desc = "A rugged uniform suitable for treasure hunting." - icon_state = "curator" - item_state = "curator" - item_color = "curator" /obj/item/clothing/under/rank/mime name = "mime's outfit" @@ -157,6 +165,7 @@ item_state = "mime" item_color = "mime" + /obj/item/clothing/under/rank/miner desc = "It's a snappy jumpsuit with a sturdy set of overalls. It is very dirty." name = "shaft miner's jumpsuit" @@ -164,6 +173,7 @@ item_state = "miner" item_color = "miner" + /obj/item/clothing/under/rank/miner/lavaland desc = "A green uniform for operating in hazardous environments." name = "shaft miner's jumpsuit" diff --git a/code/modules/clothing/under/jobs/engineering.dm b/code/modules/clothing/under/jobs/engineering.dm index adad1aedb5..a8aa38adeb 100644 --- a/code/modules/clothing/under/jobs/engineering.dm +++ b/code/modules/clothing/under/jobs/engineering.dm @@ -5,8 +5,8 @@ icon_state = "chiefengineer" item_state = "gy_suit" item_color = "chief" - armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 0, rad = 10, fire = 80, acid = 40) - resistance_flags = 0 + armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 0, rad = 10) + burn_state = FIRE_PROOF /obj/item/clothing/under/rank/atmospheric_technician desc = "It's a jumpsuit worn by atmospheric technicians." @@ -14,7 +14,7 @@ icon_state = "atmos" item_state = "atmos_suit" item_color = "atmos" - resistance_flags = 0 + burn_state = FIRE_PROOF /obj/item/clothing/under/rank/engineer desc = "It's an orange high visibility jumpsuit worn by engineers. It has minor radiation shielding." @@ -22,13 +22,11 @@ icon_state = "engine" item_state = "engi_suit" item_color = "engine" - armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 0, rad = 10, fire = 60, acid = 20) - resistance_flags = 0 + armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 0, rad = 10) /obj/item/clothing/under/rank/roboticist desc = "It's a slimming black with reinforced seams; great for industrial work." name = "roboticist's jumpsuit" icon_state = "robotics" item_state = "robotics" - item_color = "robotics" - resistance_flags = 0 \ No newline at end of file + item_color = "robotics" \ No newline at end of file diff --git a/code/modules/clothing/under/jobs/medsci.dm b/code/modules/clothing/under/jobs/medsci.dm index 875973d15a..4d6939c1aa 100644 --- a/code/modules/clothing/under/jobs/medsci.dm +++ b/code/modules/clothing/under/jobs/medsci.dm @@ -7,7 +7,7 @@ icon_state = "director" item_state = "lb_suit" item_color = "director" - armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 10, bio = 10, rad = 0, fire = 0, acid = 35) + armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 10, bio = 10, rad = 0) can_adjust = 0 /obj/item/clothing/under/rank/research_director/alt @@ -16,7 +16,7 @@ icon_state = "rdwhimsy" item_state = "rdwhimsy" item_color = "rdwhimsy" - armor = list(melee = 0, bullet = 0, laser = 0, energy = 0, bomb = 10, bio = 10, rad = 0, fire = 0, acid = 0) + armor = list(melee = 0, bullet = 0, laser = 0, energy = 0, bomb = 10, bio = 10, rad = 0) can_adjust = 1 alt_covers_chest = 1 @@ -26,7 +26,7 @@ icon_state = "rdturtle" item_state = "p_suit" item_color = "rdturtle" - armor = list(melee = 0, bullet = 0, laser = 0, energy = 0, bomb = 10, bio = 10, rad = 0, fire = 0, acid = 0) + armor = list(melee = 0, bullet = 0, laser = 0, energy = 0, bomb = 10, bio = 10, rad = 0) can_adjust = 1 alt_covers_chest = 1 @@ -37,7 +37,7 @@ item_state = "w_suit" item_color = "toxinswhite" permeability_coefficient = 0.50 - armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 10, bio = 0, rad = 0, fire = 0, acid = 0) + armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 10, bio = 0, rad = 0) /obj/item/clothing/under/rank/chemist @@ -47,7 +47,7 @@ item_state = "w_suit" item_color = "chemistrywhite" permeability_coefficient = 0.50 - armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 10, rad = 0, fire = 50, acid = 65) + armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 10, rad = 0) /* * Medical @@ -59,7 +59,7 @@ item_state = "w_suit" item_color = "cmo" permeability_coefficient = 0.50 - armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 10, rad = 0, fire = 0, acid = 0) + armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 10, rad = 0) /obj/item/clothing/under/rank/geneticist desc = "It's made of a special fiber that gives special protection against biohazards. It has a genetics rank stripe on it." @@ -68,7 +68,7 @@ item_state = "w_suit" item_color = "geneticswhite" permeability_coefficient = 0.50 - armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 10, rad = 0, fire = 0, acid = 0) + armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 10, rad = 0) /obj/item/clothing/under/rank/virologist desc = "It's made of a special fiber that gives special protection against biohazards. It has a virologist rank stripe on it." @@ -77,7 +77,7 @@ item_state = "w_suit" item_color = "virologywhite" permeability_coefficient = 0.50 - armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 10, rad = 0, fire = 0, acid = 0) + armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 10, rad = 0) /obj/item/clothing/under/rank/nursesuit desc = "It's a jumpsuit commonly worn by nursing staff in the medical department." @@ -86,7 +86,7 @@ item_state = "w_suit" item_color = "nursesuit" permeability_coefficient = 0.50 - armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 10, rad = 0, fire = 0, acid = 0) + armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 10, rad = 0) fitted = NO_FEMALE_UNIFORM can_adjust = 0 @@ -97,7 +97,7 @@ item_state = "w_suit" item_color = "medical" permeability_coefficient = 0.50 - armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 10, rad = 0, fire = 0, acid = 0) + armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 10, rad = 0) /obj/item/clothing/under/rank/medical/blue name = "medical scrubs" diff --git a/code/modules/clothing/under/jobs/security.dm b/code/modules/clothing/under/jobs/security.dm index 85756bb219..2d92c186a8 100644 --- a/code/modules/clothing/under/jobs/security.dm +++ b/code/modules/clothing/under/jobs/security.dm @@ -15,7 +15,7 @@ icon_state = "rsecurity" item_state = "r_suit" item_color = "rsecurity" - armor = list(melee = 10, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 0, rad = 0, fire = 30, acid = 30) + armor = list(melee = 10, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 0, rad = 0) strip_delay = 50 alt_covers_chest = 1 @@ -30,7 +30,7 @@ icon_state = "rwarden" item_state = "r_suit" item_color = "rwarden" - armor = list(melee = 10, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 0, rad = 0, fire = 30, acid = 30) + armor = list(melee = 10, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 0, rad = 0) strip_delay = 50 alt_covers_chest = 1 @@ -48,7 +48,7 @@ icon_state = "detective" item_state = "det" item_color = "detective" - armor = list(melee = 10, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 0, rad = 0, fire = 30, acid = 30) + armor = list(melee = 10, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 0, rad = 0) strip_delay = 50 alt_covers_chest = 1 @@ -69,7 +69,7 @@ icon_state = "rhos" item_state = "r_suit" item_color = "rhos" - armor = list(melee = 10, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 0, rad = 0, fire = 50, acid = 50) + armor = list(melee = 10, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 0, rad = 0) strip_delay = 60 alt_covers_chest = 1 @@ -111,14 +111,4 @@ icon_state = "wardenblueclothes" item_state = "wardenblueclothes" item_color = "wardenblueclothes" - alt_covers_chest = 1 - -/* - *Blueshirt - */ - -/obj/item/clothing/under/rank/security/blueshirt - desc = "I'm a little busy right now, Calhoun." - icon_state = "blueshift" - item_state = "blueshift" - item_color = "blueshift" \ No newline at end of file + alt_covers_chest = 1 \ No newline at end of file diff --git a/code/modules/clothing/under/miscellaneous.dm b/code/modules/clothing/under/miscellaneous.dm index b3fc277e55..465a8ef886 100644 --- a/code/modules/clothing/under/miscellaneous.dm +++ b/code/modules/clothing/under/miscellaneous.dm @@ -22,14 +22,6 @@ item_color = "ek" can_adjust = 0 -/obj/item/clothing/under/scratch - name = "white suit" - desc = "A white suit, suitable for an excellent host" - icon_state = "scratch" - item_state = "scratch" - item_color = "scratch" - can_adjust = 0 - /obj/item/clothing/under/sl_suit desc = "It's a very amish looking suit." name = "amish suit" @@ -45,7 +37,7 @@ item_state = "armor" can_adjust = 0 strip_delay = 100 - resistance_flags = 0 + burn_state = FIRE_PROOF /obj/item/clothing/under/waiter name = "waiter's outfit" @@ -87,14 +79,6 @@ item_color = "sexyclown" can_adjust = 0 -/obj/item/clothing/under/jabroni - name = "Jabroni Outfit" - desc = "The leather club is two sectors down." - icon_state = "darkholme" - item_state = "darkholme" - item_color = "darkholme" - can_adjust = 0 - /obj/item/clothing/under/rank/vice name = "vice officer's jumpsuit" desc = "It's the standard issue pretty-boy outfit, as seen on Holo-Vision." @@ -124,7 +108,7 @@ icon_state = "black" item_state = "bl_suit" item_color = "black" - w_class = WEIGHT_CLASS_BULKY + w_class = 4//bulky item gas_transfer_coefficient = 0.01 permeability_coefficient = 0.02 body_parts_covered = CHEST|GROIN|LEGS|FEET|ARMS|HANDS @@ -133,7 +117,7 @@ heat_protection = CHEST|GROIN|LEGS|FEET|ARMS|HANDS max_heat_protection_temperature = SPACE_SUIT_MAX_TEMP_PROTECT can_adjust = 0 - resistance_flags = 0 + burn_state = FIRE_PROOF /obj/item/clothing/under/acj name = "administrative cybernetic jumpsuit" @@ -144,13 +128,13 @@ gas_transfer_coefficient = 0.01 permeability_coefficient = 0.01 body_parts_covered = CHEST|GROIN|LEGS|FEET|ARMS|HANDS - armor = list(melee = 100, bullet = 100, laser = 100,energy = 100, bomb = 100, bio = 100, rad = 100, fire = 100, acid = 100) + armor = list(melee = 100, bullet = 100, laser = 100,energy = 100, bomb = 100, bio = 100, rad = 100) cold_protection = CHEST | GROIN | LEGS | FEET | ARMS | HANDS min_cold_protection_temperature = SPACE_SUIT_MIN_TEMP_PROTECT heat_protection = CHEST|GROIN|LEGS|FEET|ARMS|HANDS max_heat_protection_temperature = SPACE_SUIT_MAX_TEMP_PROTECT can_adjust = 0 - resistance_flags = FIRE_PROOF | ACID_PROOF + burn_state = FIRE_PROOF /obj/item/clothing/under/owl name = "owl uniform" @@ -267,7 +251,7 @@ item_state = "burial" item_color = "burial" -/obj/item/clothing/under/skirt/black +/obj/item/clothing/under/blackskirt name = "black skirt" desc = "A black skirt, very fancy!" icon_state = "blackskirt" @@ -276,7 +260,7 @@ fitted = FEMALE_UNIFORM_TOP can_adjust = 0 -/obj/item/clothing/under/skirt/blue +/obj/item/clothing/under/blueskirt name = "blue skirt" desc = "A blue, casual skirt." icon_state = "blueskirt" @@ -286,26 +270,12 @@ fitted = FEMALE_UNIFORM_TOP can_adjust = 0 -/obj/item/clothing/under/skirt/red +/obj/item/clothing/under/blueskirt/redskirt name = "red skirt" desc = "A red, casual skirt." icon_state = "redskirt" item_color = "redskirt" item_state = "r_suit" - body_parts_covered = CHEST|GROIN|ARMS - fitted = FEMALE_UNIFORM_TOP - can_adjust = 0 - -/obj/item/clothing/under/skirt/purple - name = "purple skirt" - desc = "A purple, casual skirt." - icon_state = "purpleskirt" - item_color = "purpleskirt" - item_state = "p_suit" - body_parts_covered = CHEST|GROIN|ARMS - fitted = FEMALE_UNIFORM_TOP - can_adjust = 0 - /obj/item/clothing/under/schoolgirl name = "blue schoolgirl uniform" @@ -377,10 +347,6 @@ fitted = FEMALE_UNIFORM_TOP can_adjust = 0 -/obj/item/clothing/under/kilt/highlander - desc = "You're the only one worthy of this kilt." - flags = NODROP - /obj/item/clothing/under/sexymime name = "sexy mime outfit" desc = "The only time when you DON'T enjoy looking at someone's rack." @@ -400,11 +366,7 @@ body_parts_covered = CHEST|GROIN|ARMS fitted = NO_FEMALE_UNIFORM can_adjust = 0 - resistance_flags = 0 - -/obj/item/clothing/under/gladiator/ash_walker - desc = "This gladiator uniform appears to be covered in ash and fairly dated." - has_sensor = 0 + burn_state = FIRE_PROOF /obj/item/clothing/under/sundress name = "sundress" @@ -535,26 +497,6 @@ can_adjust = 1 alt_covers_chest = 1 -/obj/item/clothing/under/singery - name = "yellow performer's outfit" - desc = "Just looking at this makes you want to sing." - icon_state = "ysing" - item_state = "ysing" - item_color = "ysing" - fitted = NO_FEMALE_UNIFORM - alternate_worn_layer = ABOVE_SHOES_LAYER - can_adjust = 0 - -/obj/item/clothing/under/singerb - name = "blue performer's outfit" - desc = "Just looking at this makes you want to sing." - icon_state = "bsing" - item_state = "bsing" - item_color = "bsing" - alternate_worn_layer = ABOVE_SHOES_LAYER - fitted = FEMALE_UNIFORM_TOP - can_adjust = 0 - /obj/item/clothing/under/plaid_skirt/green name = "green plaid skirt" desc = "A preppy green skirt with a white blouse." @@ -572,27 +514,13 @@ item_color = "jester" can_adjust = 0 -/obj/item/clothing/under/geisha - name = "geisha suit" - desc = "Cute space ninja senpai not included." - icon_state = "geisha" - item_color = "geisha" - can_adjust = 0 - -/obj/item/clothing/under/villain - name = "villain suit" - desc = "A change of wardrobe is necessary if you ever want to catch a real superhero." - icon_state = "villain" - item_color = "villain" - can_adjust = 0 - /obj/item/clothing/under/plasmaman name = "Plasma-man Jumpsuit" desc = "A specially designed suit that allows Plasma based life forms to exist in an oxygenated environment." icon_state = "plasmaman" item_state = "plasmaman" item_color = "plasmaman" - armor = list(melee = 0, bullet = 0, laser = 0, energy = 0, bomb = 0, bio = 100, rad = 0, fire = 95, acid = 95) + armor = list(melee = 0, bullet = 0, laser = 0, energy = 0, bomb = 0, bio = 100, rad = 0) body_parts_covered = CHEST|GROIN|LEGS|FEET|ARMS|HANDS can_adjust = 0 strip_delay = 80 @@ -646,3 +574,22 @@ icon_state = "hostanclothes" item_state = "hostanclothes" item_color = "hostanclothes" + +/obj/item/clothing/under/mesh + name = "mesh suit" + desc = "A mesh of strong fabric worn underneath normal clothing and armor." + body_parts_covered = CHEST|GROIN|LEGS|ARMS + icon_state = "mesh_suit" + item_color = "mesh_suit" + item_state = "mesh_suit" + can_adjust = FALSE + burn_state = FIRE_PROOF + unacidable = TRUE + +/obj/item/clothing/under/mesh/top + name = "mesh shirt" + desc = "A mesh of strong fabric worn underneath normal clothing and armor." + body_parts_covered = CHEST|GROIN + icon_state = "mesh_shirt" + item_color = "mesh_shirt" + item_state = "mesh_shirt" \ No newline at end of file diff --git a/code/modules/clothing/under/shorts.dm b/code/modules/clothing/under/shorts.dm index 119527ec4f..2411a1ef60 100644 --- a/code/modules/clothing/under/shorts.dm +++ b/code/modules/clothing/under/shorts.dm @@ -4,7 +4,6 @@ gender = PLURAL body_parts_covered = GROIN fitted = NO_FEMALE_UNIFORM - mutantrace_variation = MUTANTRACE_VARIATION can_adjust = 0 /obj/item/clothing/under/shorts/red diff --git a/code/modules/clothing/under/syndicate.dm b/code/modules/clothing/under/syndicate.dm index 83e7e59253..fcb8a84d4b 100644 --- a/code/modules/clothing/under/syndicate.dm +++ b/code/modules/clothing/under/syndicate.dm @@ -5,7 +5,7 @@ item_state = "bl_suit" item_color = "syndicate" has_sensor = 0 - armor = list(melee = 10, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 0, rad = 0, fire = 50, acid = 40) + armor = list(melee = 10, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 0, rad = 0) alt_covers_chest = 1 /obj/item/clothing/under/syndicate/tacticool @@ -14,7 +14,7 @@ icon_state = "tactifool" item_state = "bl_suit" item_color = "tactifool" - armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 0, rad = 0, fire = 50, acid = 40) + armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 0, rad = 0) /obj/item/clothing/under/syndicate/sniper name = "Tactical turtleneck suit" @@ -36,5 +36,5 @@ icon_state = "trackpants" item_color = "trackpants" can_adjust = 0 - armor = list(melee = 10, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 0, rad = 0, fire = 0, acid = 0) - resistance_flags = 0 \ No newline at end of file + armor = list(melee = 10, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 0, rad = 0) + burn_state = FIRE_PROOF \ No newline at end of file diff --git a/code/modules/clothing/under/ties.dm b/code/modules/clothing/under/ties.dm index 83826e1050..0402eeebd0 100644 --- a/code/modules/clothing/under/ties.dm +++ b/code/modules/clothing/under/ties.dm @@ -1,4 +1,4 @@ -/obj/item/clothing/tie //Ties moved to neck slot items, but as there are still things like medals and armbands, this accessory system is being kept as-is +/obj/item/clothing/tie name = "tie" desc = "A neosilk clip-on tie." icon = 'icons/obj/clothing/ties.dmi' @@ -6,56 +6,8 @@ item_state = "" //no inhands item_color = "bluetie" slot_flags = 0 - w_class = WEIGHT_CLASS_SMALL - var/minimize_when_attached = TRUE // TRUE if shown as a small icon in corner, FALSE if overlayed + w_class = 2 -/obj/item/clothing/tie/proc/attach(obj/item/clothing/under/U, user) - if(pockets) // Attach storage to jumpsuit - if(U.pockets) // storage items conflict - return 0 - - pockets.loc = U - U.pockets = pockets - - U.hastie = src - loc = U - layer = FLOAT_LAYER - plane = FLOAT_PLANE - if(minimize_when_attached) - transform *= 0.5 //halve the size so it doesn't overpower the under - pixel_x += 8 - pixel_y -= 8 - U.add_overlay(src) - - for(var/armor_type in armor) - U.armor[armor_type] += armor[armor_type] - - return 1 - - -/obj/item/clothing/tie/proc/detach(obj/item/clothing/under/U, user) - if(pockets && pockets == U.pockets) - pockets.loc = src - U.pockets = null - - for(var/armor_type in armor) - U.armor[armor_type] -= armor[armor_type] - - if(minimize_when_attached) - transform *= 2 - pixel_x -= 8 - pixel_y += 8 - layer = initial(layer) - plane = initial(plane) - U.cut_overlays() - U.hastie = null - -/obj/item/clothing/tie/proc/on_uniform_equip(obj/item/clothing/under/U) - return - -/obj/item/clothing/tie/proc/on_uniform_dropped(obj/item/clothing/under/U) - return -/* /obj/item/clothing/tie/blue name = "blue tie" icon_state = "bluetie" @@ -76,15 +28,14 @@ desc = "A neosilk clip-on tie. This one is disgusting." icon_state = "horribletie" item_color = "horribletie" -*/ + /obj/item/clothing/tie/waistcoat name = "waistcoat" desc = "For some classy, murderous fun." icon_state = "waistcoat" item_state = "waistcoat" item_color = "waistcoat" - minimize_when_attached = FALSE -/* + /obj/item/clothing/tie/stethoscope name = "stethoscope" desc = "An outdated medical apparatus for listening to the sounds of the human body. It also makes you look like you know what you're doing." @@ -93,7 +44,7 @@ /obj/item/clothing/tie/stethoscope/attack(mob/living/carbon/human/M, mob/living/user) if(ishuman(M) && isliving(user)) - if(user.a_intent == INTENT_HELP) + if(user.a_intent == "help") var/body_part = parse_zone(user.zone_selected) if(body_part) var/their = "their" @@ -125,7 +76,7 @@ user.visible_message("[user] places [src] against [M]'s [body_part] and listens attentively.", "You place [src] against [their] [body_part]. You [sound_strength] [sound].") return return ..(M,user) -*/ + ////////// //Medals// ////////// @@ -136,11 +87,11 @@ icon_state = "bronze" item_color = "bronze" materials = list(MAT_METAL=1000) - resistance_flags = FIRE_PROOF + burn_state = FIRE_PROOF //Pinning medals on people /obj/item/clothing/tie/medal/attack(mob/living/carbon/human/M, mob/living/user) - if(ishuman(M) && (user.a_intent == INTENT_HELP)) + if(ishuman(M) && (user.a_intent == "help")) if(M.wear_suit) if((M.wear_suit.flags_inv & HIDEJUMPSUIT)) //Check if the jumpsuit is covered @@ -149,19 +100,12 @@ if(M.w_uniform) var/obj/item/clothing/under/U = M.w_uniform - var/delay = 20 - if(user == M) - delay = 0 - else - user.visible_message("[user] is trying to pin [src] on [M]'s chest.", \ - "You try to pin [src] on [M]'s chest.") - if(do_after(user, delay, target = M)) - if(U.attachTie(src, user, 0)) //Attach it, do not notify the user of the attachment - if(user == M) - user << "You attach [src] to [U]." - else - user.visible_message("[user] pins \the [src] on [M]'s chest.", \ - "You pin \the [src] on [M]'s chest.") + if(U.attachTie(src, user, 0)) //Attach it, do not notify the user of the attachment + if(user == M) + user << "You attach [src] to [U]." + else + user.visible_message("[user] pins \the [src] on [M]'s chest.", \ + "You pin \the [src] on [M]'s chest.") else user << "Medals can only be pinned on jumpsuits!" else ..() @@ -204,7 +148,6 @@ /obj/item/clothing/tie/medal/gold/captain name = "medal of captaincy" desc = "A golden medal awarded exclusively to those promoted to the rank of captain. It signifies the codified responsibilities of a captain to Nanotrasen, and their undisputable authority over their crew." - resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | ACID_PROOF /obj/item/clothing/tie/medal/gold/heroism name = "medal of exceptional heroism" @@ -259,60 +202,60 @@ desc = "An armband, worn by the station's security forces to display which department they're assigned to. This one is white and blue." icon_state = "medblueband" item_color = "medblueband" -/* + /////////// //SCARVES// /////////// -/obj/item/clothing/tie/scarf //Default white color, same functionality as beanies. - name = "white scarf" - icon_state = "scarf" +/obj/item/clothing/tie/scarf + name = "scarf" desc = "A stylish scarf. The perfect winter accessory for those with a keen fashion sense, and those who just can't handle a cold breeze on their necks." - item_color = "scarf" dog_fashion = /datum/dog_fashion/head -/obj/item/clothing/tie/scarf/black - name = "black scarf" - icon_state = "scarf" - color = "#4A4A4B" //Grey but it looks black - /obj/item/clothing/tie/scarf/red name = "red scarf" - icon_state = "scarf" - color = "#D91414" //Red + icon_state = "redscarf" + item_color = "redscarf" /obj/item/clothing/tie/scarf/green name = "green scarf" - icon_state = "scarf" - color = "#5C9E54" //Green + icon_state = "greenscarf" + item_color = "greenscarf" /obj/item/clothing/tie/scarf/darkblue name = "dark blue scarf" - icon_state = "scarf" - color = "#1E85BC" //Blue + icon_state = "darkbluescarf" + item_color = "darkbluescarf" /obj/item/clothing/tie/scarf/purple name = "purple scarf" - icon_state = "scarf" - color = "#9557C5" //purple + icon_state = "purplescarf" + item_color = "purplescarf" /obj/item/clothing/tie/scarf/yellow name = "yellow scarf" - icon_state = "scarf" - color = "#E0C14F" //Yellow + icon_state = "yellowscarf" + item_color = "yellowscarf" /obj/item/clothing/tie/scarf/orange name = "orange scarf" - icon_state = "scarf" - color = "#C67A4B" //orange + icon_state = "orangescarf" + item_color = "orangescarf" -/obj/item/clothing/tie/scarf/cyan - name = "cyan scarf" - icon_state = "scarf" - color = "#54A3CE" //Cyan +/obj/item/clothing/tie/scarf/lightblue + name = "light blue scarf" + icon_state = "lightbluescarf" + item_color = "lightbluescarf" +/obj/item/clothing/tie/scarf/white + name = "white scarf" + icon_state = "whitescarf" + item_color = "whitescarf" -//Striped scarves get their own icons +/obj/item/clothing/tie/scarf/black + name = "black scarf" + icon_state = "blackscarf" + item_color = "blackscarf" /obj/item/clothing/tie/scarf/zebra name = "zebra scarf" @@ -362,6 +305,7 @@ desc = "Damn, it feels good to be a gangster." icon = 'icons/obj/clothing/ties.dmi' icon_state = "bling" + item_state = "" //no inhands item_color = "bling" //////////////// @@ -371,39 +315,9 @@ /obj/item/clothing/tie/talisman name = "bone talisman" desc = "A hunter's talisman, some say the old gods smile on those who wear it." + icon = 'icons/obj/clothing/ties.dmi' icon_state = "talisman" + item_state = "" item_color = "talisman" - armor = list(melee = 5, bullet = 5, laser = 5, energy = 5, bomb = 20, bio = 20, rad = 5, fire = 0, acid = 25) -*/ -////////////// -//OBJECTION!// -////////////// - -/obj/item/clothing/tie/lawyers_badge - name = "attorney's badge" - desc = "Fills you with the conviction of JUSTICE. Lawyers tend to want to show it to everyone they meet." - icon_state = "lawyerbadge" - item_color = "lawyerbadge" - -/obj/item/clothing/tie/lawyers_badge/attach(obj/item/clothing/under/U, user) - if(!..()) - return 0 - if(isliving(U.loc)) - on_uniform_equip(U) - -/obj/item/clothing/tie/lawyers_badge/detach(obj/item/clothing/under/U, user) - ..() - if(isliving(U.loc)) - on_uniform_dropped(U) - -/obj/item/clothing/tie/lawyers_badge/on_uniform_equip(obj/item/clothing/under/U) - if(!isliving(U.loc)) - return - var/mob/living/L = U.loc - L.bubble_icon = "lawyer" - -/obj/item/clothing/tie/lawyers_badge/on_uniform_dropped(obj/item/clothing/under/U) - if(!isliving(U.loc)) - return - var/mob/living/L = U.loc - L.bubble_icon = initial(L.bubble_icon) + body_parts_covered = CHEST|GROIN|LEGS|FEET|ARMS|HANDS|HEAD + armor = list(melee = 5, bullet = 5, laser = 5, energy = 5, bomb = 50, bio = 65, rad = 5) //Faith is the best armor. //This won't actually work because of accessories kill me with a fucking knife jesus christ I hate code diff --git a/code/modules/clothing/under/trek.dm b/code/modules/clothing/under/trek.dm deleted file mode 100644 index b777312da7..0000000000 --- a/code/modules/clothing/under/trek.dm +++ /dev/null @@ -1,72 +0,0 @@ -//Just some alt-uniforms themed around Star Trek - Pls don't sue, Mr Roddenberry ;_; - - -/obj/item/clothing/under/trek - can_adjust = 0 - - -//TOS -/obj/item/clothing/under/trek/command - name = "command uniform" - desc = "The uniform worn by command officers" - icon_state = "trek_command" - item_color = "trek_command" - item_state = "y_suit" - -/obj/item/clothing/under/trek/engsec - name = "engsec uniform" - desc = "The uniform worn by engineering/security officers" - icon_state = "trek_engsec" - item_color = "trek_engsec" - item_state = "r_suit" - armor = list(melee = 10, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 0, rad = 0, fire = 0, acid = 0) //more sec than eng, but w/e. - strip_delay = 50 - -/obj/item/clothing/under/trek/medsci - name = "medsci uniform" - desc = "The uniform worn by medical/science officers" - icon_state = "trek_medsci" - item_color = "trek_medsci" - item_state = "b_suit" - - -//TNG -/obj/item/clothing/under/trek/command/next - icon_state = "trek_next_command" - item_color = "trek_next_command" - item_state = "r_suit" - -/obj/item/clothing/under/trek/engsec/next - icon_state = "trek_next_engsec" - item_color = "trek_next_engsec" - item_state = "y_suit" - -/obj/item/clothing/under/trek/medsci/next - icon_state = "trek_next_medsci" - item_color = "trek_next_medsci" - - -//ENT -/obj/item/clothing/under/trek/command/ent - icon_state = "trek_ent_command" - item_color = "trek_ent_command" - item_state = "bl_suit" - -/obj/item/clothing/under/trek/engsec/ent - icon_state = "trek_ent_engsec" - item_color = "trek_ent_engsec" - item_state = "bl_suit" - -/obj/item/clothing/under/trek/medsci/ent - icon_state = "trek_ent_medsci" - item_color = "trek_ent_medsci" - item_state = "bl_suit" - - -//Q -/obj/item/clothing/under/trek/Q - name = "french marshall's uniform" - desc = "something about it feels off..." - icon_state = "trek_Q" - item_color = "trek_Q" - item_state = "r_suit" \ No newline at end of file diff --git a/code/game/objects/effects/countdown.dm b/code/modules/countdown/countdown.dm similarity index 67% rename from code/game/objects/effects/countdown.dm rename to code/modules/countdown/countdown.dm index 9bc877c96c..ef5ab439e1 100644 --- a/code/game/objects/effects/countdown.dm +++ b/code/modules/countdown/countdown.dm @@ -7,7 +7,7 @@ var/displayed_text var/atom/attached_to - color = "#ff0000" + var/text_color = "#ff0000" var/text_size = 4 var/started = FALSE invisibility = INVISIBILITY_OBSERVER @@ -18,10 +18,6 @@ . = ..() attach(A) -/obj/effect/countdown/examine(mob/user) - . = ..() - user << "This countdown is displaying: [displayed_text]" - /obj/effect/countdown/proc/attach(atom/A) attached_to = A loc = get_turf(A) @@ -33,7 +29,7 @@ /obj/effect/countdown/proc/stop() if(started) - maptext = null + overlays.Cut() STOP_PROCESSING(SSfastprocess, src) started = FALSE @@ -51,18 +47,21 @@ displayed_text = new_val if(displayed_text) - maptext = "[displayed_text]" + var/image/text_image = new(loc = src) + //text_image.maptext = "[new_val]" + text_image.maptext = "[displayed_text]" + text_image.color = text_color + + overlays.Cut() + overlays += text_image else - maptext = null + overlays.Cut() /obj/effect/countdown/Destroy() attached_to = null STOP_PROCESSING(SSfastprocess, src) . = ..() -/obj/effect/countdown/ex_act(severity, target) //immune to explosions - return - /obj/effect/countdown/syndicatebomb name = "syndicate bomb countdown" @@ -71,22 +70,22 @@ if(!istype(S)) return else if(S.active) - return S.seconds_remaining() + return S.timer /obj/effect/countdown/nuclearbomb name = "nuclear bomb countdown" - color = "#81FF14" + text_color = "#81FF14" /obj/effect/countdown/nuclearbomb/get_value() var/obj/machinery/nuclearbomb/N = attached_to if(!istype(N)) return else if(N.timing) - return round(N.get_time_left(), 1) + return N.timeleft /obj/effect/countdown/clonepod name = "cloning pod countdown" - color = "#0C479D" + text_color = "#0C479D" text_size = 1 /obj/effect/countdown/clonepod/get_value() @@ -100,7 +99,7 @@ /obj/effect/countdown/dominator name = "dominator countdown" text_size = 1 - color = "#ff00ff" // Overwritten when the dominator starts + text_color = "#ff00ff" // Overwritten when the dominator starts /obj/effect/countdown/dominator/get_value() var/obj/machinery/dominator/D = attached_to @@ -115,19 +114,19 @@ /obj/effect/countdown/clockworkgate name = "gateway countdown" text_size = 1 - color = "#BE8700" + text_color = "#BE8700" layer = POINT_LAYER /obj/effect/countdown/clockworkgate/get_value() - var/obj/structure/destructible/clockwork/massive/celestial_gateway/G = attached_to + var/obj/structure/clockwork/massive/celestial_gateway/G = attached_to if(!istype(G)) return - else if(G.obj_integrity && !G.purpose_fulfilled) - return "
    [G.get_arrival_text(FALSE)]
    " + else if(G.health && !G.purpose_fulfilled) + return "
    [GATEWAY_RATVAR_ARRIVAL - G.progress_in_seconds]
    " /obj/effect/countdown/transformer name = "transformer countdown" - color = "#4C5866" + text_color = "#4C5866" /obj/effect/countdown/transformer/get_value() var/obj/machinery/transformer/T = attached_to @@ -136,25 +135,3 @@ else if(T.cooldown) var/seconds_left = max(0, (T.cooldown_timer - world.time) / 10) return "[round(seconds_left)]" - -/obj/effect/countdown/doomsday - name = "doomsday countdown" - text_size = 3 - -/obj/effect/countdown/doomsday/get_value() - var/obj/machinery/doomsday_device/DD = attached_to - if(!istype(DD)) - return - else if(DD.timing) - return "
    [DD.seconds_remaining()]
    " - -/obj/effect/countdown/anomaly - name = "anomaly countdown" - -/obj/effect/countdown/anomaly/get_value() - var/obj/effect/anomaly/A = attached_to - if(!istype(A)) - return - else - var/time_left = max(0, (A.death_time - world.time) / 10) - return round(time_left) diff --git a/code/modules/crafting/craft.dm b/code/modules/crafting/craft.dm index 7def4aa192..0001f48931 100644 --- a/code/modules/crafting/craft.dm +++ b/code/modules/crafting/craft.dm @@ -1,27 +1,9 @@ /datum/personal_crafting var/busy var/viewing_category = 1 //typical powergamer starting on the Weapons tab - var/list/categories = list(CAT_WEAPON, - CAT_AMMO, - CAT_ROBOT, - CAT_MISC, - CAT_PRIMAL, - CAT_BREAD, - CAT_BURGER, - CAT_CAKE, - CAT_EGG, - CAT_MEAT, - CAT_MISCFOOD, - CAT_PASTRY, - CAT_PIE, - CAT_PIZZA, - CAT_SALAD, - CAT_SANDWICH, - CAT_SOUP, - CAT_SPAGHETTI) + var/list/categories = list(CAT_WEAPON,CAT_AMMO,CAT_ROBOT,CAT_FOOD,CAT_MISC,CAT_PRIMAL) var/datum/action/innate/crafting/button var/display_craftable_only = FALSE - var/display_compact = TRUE @@ -60,9 +42,9 @@ /datum/personal_crafting/proc/get_environment(mob/user) . = list() - for(var/obj/item/I in user.held_items) - . += I - if(!isturf(user.loc)) + . += user.r_hand + . += user.l_hand + if(!istype(user.loc, /turf)) return var/list/L = block(get_step(user, SOUTHWEST), get_step(user, NORTHEAST)) for(var/A in L) @@ -110,6 +92,7 @@ return 1 /datum/personal_crafting/proc/construct_item(mob/user, datum/crafting_recipe/R) + for(var/A in R.parts) var/list/contents = get_surroundings(user) var/send_feedback = 1 if(check_contents(R, contents)) @@ -256,26 +239,24 @@ /datum/personal_crafting/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = 0, datum/tgui/master_ui = null, datum/ui_state/state = not_incapacitated_turf_state) ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) if(!ui) - ui = new(user, src, ui_key, "personal_crafting", "Crafting Menu", 700, 800, master_ui, state) + ui = new(user, src, ui_key, "personal_crafting", "Crafting Menu", 600, 800, master_ui, state) ui.open() /datum/personal_crafting/ui_data(mob/user) var/list/data = list() - var/cur_category = categories[viewing_category] data["busy"] = busy data["prev_cat"] = categories[prev_cat()] - data["category"] = cur_category + data["category"] = categories[viewing_category] data["next_cat"] = categories[next_cat()] data["display_craftable_only"] = display_craftable_only - data["display_compact"] = display_compact var/list/surroundings = get_surroundings(user) var/list/can_craft = list() var/list/cant_craft = list() for(var/rec in crafting_recipes) var/datum/crafting_recipe/R = rec - if(R.category != cur_category) + if(R.category != categories[viewing_category]) continue if(check_contents(R, surroundings)) can_craft += list(build_recipe_data(R)) @@ -313,10 +294,6 @@ display_craftable_only = !display_craftable_only usr << "You will now [display_craftable_only ? "only see recipes you can craft":"see all recipes"]." . = TRUE - if("toggle_compact") - display_compact = !display_compact - usr << "Crafting menu is now [display_compact? "compact" : "full size"]." - . = TRUE //Next works nicely with modular arithmetic @@ -341,23 +318,27 @@ var/tool_text = "" var/catalyst_text = "" - for(var/a in R.reqs) - //We just need the name, so cheat-typecast to /atom for speed (even tho Reagents are /datum they DO have a "name" var) - //Also these are typepaths so sadly we can't just do "[a]" - var/atom/A = a - req_text += " [R.reqs[A]] [initial(A.name)]," + for(var/A in R.reqs) + if(ispath(A, /obj)) + var/obj/O = A + req_text += " [R.reqs[A]] [initial(O.name)]," + else if(ispath(A, /datum/reagent)) + var/datum/reagent/RE = A + req_text += " [R.reqs[A]] [initial(RE.name)]," req_text = replacetext(req_text,",","",-1) data["req_text"] = req_text - for(var/a in R.chem_catalysts) - var/atom/A = a //cheat-typecast - catalyst_text += " [R.chem_catalysts[A]] [initial(A.name)]," + for(var/C in R.chem_catalysts) + if(ispath(C, /datum/reagent)) + var/datum/reagent/RE = C + catalyst_text += " [R.chem_catalysts[C]] [initial(RE.name)]," catalyst_text = replacetext(catalyst_text,",","",-1) data["catalyst_text"] = catalyst_text - for(var/a in R.tools) - var/atom/A = a //cheat-typecast - tool_text += " [R.tools[A]] [initial(A.name)]," + for(var/O in R.tools) + if(ispath(O, /obj)) + var/obj/T = O + tool_text += " [R.tools[O]] [initial(T.name)]," tool_text = replacetext(tool_text,",","",-1) data["tool_text"] = tool_text diff --git a/code/modules/crafting/recipes.dm b/code/modules/crafting/recipes.dm index 94569f769e..5089e31ee3 100644 --- a/code/modules/crafting/recipes.dm +++ b/code/modules/crafting/recipes.dm @@ -39,15 +39,6 @@ time = 15 category = CAT_WEAPON -/datum/crafting_recipe/strobeshield - name = "strobe shield" - result = /obj/item/device/assembly/flash/shield - reqs = list(/obj/item/wallframe/flasher = 1, - /obj/item/device/assembly/flash/handheld = 1, - /obj/item/weapon/shield/riot = 1) - time = 40 - category = CAT_WEAPON - /datum/crafting_recipe/molotov name = "Molotov" result = /obj/item/weapon/reagent_containers/food/drinks/bottle/molotov @@ -103,16 +94,17 @@ /datum/crafting_recipe/ed209 name = "ED209" result = /mob/living/simple_animal/bot/ed209 - reqs = list(/obj/item/robot_suit = 1, + reqs = list(/obj/item/robot_parts/robot_suit = 1, /obj/item/clothing/head/helmet = 1, /obj/item/clothing/suit/armor/vest = 1, - /obj/item/bodypart/l_leg/robot = 1, - /obj/item/bodypart/r_leg/robot = 1, - /obj/item/stack/sheet/metal = 1, - /obj/item/stack/cable_coil = 1, - /obj/item/weapon/gun/energy/e_gun/advtaser = 1, + /obj/item/robot_parts/l_leg = 1, + /obj/item/robot_parts/r_leg = 1, + /obj/item/stack/sheet/metal = 5, + /obj/item/stack/cable_coil = 5, + /obj/item/weapon/gun/energy/gun/advtaser = 1, /obj/item/weapon/stock_parts/cell = 1, - /obj/item/device/assembly/prox_sensor = 1) + /obj/item/device/assembly/prox_sensor = 1, + /obj/item/robot_parts/r_arm = 1) tools = list(/obj/item/weapon/weldingtool, /obj/item/weapon/screwdriver) time = 60 category = CAT_ROBOT @@ -124,7 +116,7 @@ /obj/item/clothing/head/helmet/sec = 1, /obj/item/weapon/melee/baton = 1, /obj/item/device/assembly/prox_sensor = 1, - /obj/item/bodypart/r_arm/robot = 1) + /obj/item/robot_parts/r_arm = 1) tools = list(/obj/item/weapon/weldingtool) time = 60 category = CAT_ROBOT @@ -134,7 +126,7 @@ result = /mob/living/simple_animal/bot/cleanbot reqs = list(/obj/item/weapon/reagent_containers/glass/bucket = 1, /obj/item/device/assembly/prox_sensor = 1, - /obj/item/bodypart/r_arm/robot = 1) + /obj/item/robot_parts/r_arm = 1) time = 40 category = CAT_ROBOT @@ -144,7 +136,7 @@ reqs = list(/obj/item/weapon/storage/toolbox/mechanical = 1, /obj/item/stack/tile/plasteel = 1, /obj/item/device/assembly/prox_sensor = 1, - /obj/item/bodypart/r_arm/robot = 1) + /obj/item/robot_parts/r_arm = 1) time = 40 category = CAT_ROBOT @@ -154,7 +146,7 @@ reqs = list(/obj/item/device/healthanalyzer = 1, /obj/item/weapon/storage/firstaid = 1, /obj/item/device/assembly/prox_sensor = 1, - /obj/item/bodypart/r_arm/robot = 1) + /obj/item/robot_parts/r_arm = 1) time = 40 category = CAT_ROBOT @@ -193,7 +185,8 @@ /datum/crafting_recipe/dragonsbreath name = "Dragonsbreath Shell" result = /obj/item/ammo_casing/shotgun/incendiary/dragonsbreath - reqs = list(/obj/item/ammo_casing/shotgun/techshell = 1,/datum/reagent/phosphorus = 5) + reqs = list(/obj/item/ammo_casing/shotgun/techshell = 1, + /datum/reagent/phosphorus = 5,) tools = list(/obj/item/weapon/screwdriver) time = 5 category = CAT_AMMO @@ -204,7 +197,7 @@ reqs = list(/obj/item/ammo_casing/shotgun/techshell = 1, /datum/reagent/glycerol = 5, /datum/reagent/toxin/acid = 5, - /datum/reagent/toxin/acid/fluacid = 5) + /datum/reagent/toxin/acid/fluacid = 5,) tools = list(/obj/item/weapon/screwdriver) time = 5 category = CAT_AMMO @@ -252,11 +245,11 @@ /datum/crafting_recipe/ishotgun name = "Improvised Shotgun" - result = /obj/item/weapon/gun/ballistic/revolver/doublebarrel/improvised + result = /obj/item/weapon/gun/projectile/revolver/doublebarrel/improvised reqs = list(/obj/item/weaponcrafting/reciever = 1, /obj/item/pipe = 1, /obj/item/weaponcrafting/stock = 1, - /obj/item/stack/packageWrap = 5) + /obj/item/stack/packageWrap = 5,) tools = list(/obj/item/weapon/screwdriver) time = 100 category = CAT_WEAPON @@ -326,6 +319,14 @@ reqs = list(/obj/item/weapon/paper = 5) category = CAT_MISC +/datum/crafting_recipe/headlamp + name = "Headlamp" + result = /obj/item/clothing/head/hardhat/headlamp + time = 30 + reqs = list(/obj/item/stack/cable_coil = 15, + /obj/item/device/flashlight = 1) + category = CAT_MISC + /datum/crafting_recipe/chemical_payload name = "Chemical Payload (C4)" @@ -360,7 +361,7 @@ /datum/crafting_recipe/bonetalisman name = "Bone Talisman" - result = /obj/item/clothing/neck/talisman + result = /obj/item/clothing/tie/talisman time = 20 reqs = list(/obj/item/stack/sheet/bone = 2, /obj/item/stack/sheet/sinew = 1) @@ -382,7 +383,7 @@ category = CAT_PRIMAL /datum/crafting_recipe/drakecloak - name = "Ash Drake Armour" + name = "Ash Drake Cloak" result = /obj/item/clothing/suit/hooded/cloak/drake time = 60 reqs = list(/obj/item/stack/sheet/bone = 10, @@ -420,17 +421,3 @@ reqs = list(/obj/item/stack/sheet/bone = 6, /obj/item/stack/sheet/sinew = 3) category = CAT_PRIMAL - -/datum/crafting_recipe/bonfire - name = "Bonfire" - time = 60 - reqs = list(/obj/item/weapon/grown/log = 5) - result = /obj/structure/bonfire - category = CAT_PRIMAL - -/datum/crafting_recipe/smallcarton - name = "Small Carton" - result = /obj/item/weapon/reagent_containers/food/drinks/sillycup/smallcarton - time = 10 - reqs = list(/obj/item/stack/sheet/cardboard = 1) - category = CAT_MISC diff --git a/code/modules/detectivework/evidence.dm b/code/modules/detectivework/evidence.dm index 558f27d5f0..25e810542a 100644 --- a/code/modules/detectivework/evidence.dm +++ b/code/modules/detectivework/evidence.dm @@ -6,7 +6,7 @@ icon = 'icons/obj/storage.dmi' icon_state = "evidenceobj" item_state = "" - w_class = WEIGHT_CLASS_TINY + w_class = 1 /obj/item/weapon/evidencebag/afterattack(obj/item/I, mob/user,proximity) if(!proximity || loc == I) @@ -25,7 +25,7 @@ user << "You find putting an evidence bag in another evidence bag to be slightly absurd." return 1 //now this is podracing - if(I.w_class > WEIGHT_CLASS_NORMAL) + if(I.w_class > 3) user << "[I] won't fit in [src]." return @@ -37,8 +37,10 @@ if(istype(I.loc,/obj/item/weapon/storage)) //in a container. var/obj/item/weapon/storage/U = I.loc U.remove_from_storage(I, src) - if(user.is_holding(I)) - user.unEquip(I) + else if(user.l_hand == I) //in a hand + user.drop_l_hand() + else if(user.r_hand == I) //in a hand + user.drop_r_hand() else return @@ -69,7 +71,7 @@ "You hear someone rustle around in a plastic bag, and remove something.") cut_overlays() //remove the overlays user.put_in_hands(I) - w_class = WEIGHT_CLASS_TINY + w_class = 1 icon_state = "evidenceobj" desc = "An empty evidence bag." @@ -90,4 +92,4 @@ new /obj/item/weapon/evidencebag(src) new /obj/item/weapon/evidencebag(src) ..() - return + return \ No newline at end of file diff --git a/code/modules/detectivework/footprints_and_rag.dm b/code/modules/detectivework/footprints_and_rag.dm index f21421bbda..db754009ea 100644 --- a/code/modules/detectivework/footprints_and_rag.dm +++ b/code/modules/detectivework/footprints_and_rag.dm @@ -9,7 +9,7 @@ /obj/item/weapon/reagent_containers/glass/rag name = "damp rag" desc = "For cleaning up messes, you suppose." - w_class = WEIGHT_CLASS_TINY + w_class = 1 icon = 'icons/obj/toy.dmi' icon_state = "rag" flags = OPENCONTAINER | NOBLUDGEON @@ -19,7 +19,8 @@ spillable = 0 /obj/item/weapon/reagent_containers/glass/rag/suicide_act(mob/user) - user.visible_message("[user] is smothering [user.p_them()]self with [src]! It looks like [user.p_theyre()] trying to commit suicide!") + user.visible_message("[user] ties the [src.name] around their head and groans! It looks like--") + user.say("MY BRAIN HURTS!!") return (OXYLOSS) /obj/item/weapon/reagent_containers/glass/rag/afterattack(atom/A as obj|turf|area, mob/user,proximity) @@ -27,7 +28,7 @@ return if(iscarbon(A) && A.reagents && reagents.total_volume) var/mob/living/carbon/C = A - if(user.a_intent == INTENT_HARM && !C.is_mouth_covered()) + if(user.a_intent == "harm" && !C.is_mouth_covered()) reagents.reaction(C, INGEST) reagents.trans_to(C, reagents.total_volume) C.visible_message("[user] has smothered \the [C] with \the [src]!", "[user] has smothered you with \the [src]!", "You hear some struggling and muffled cries of surprise.") diff --git a/code/modules/detectivework/scanner.dm b/code/modules/detectivework/scanner.dm index fcc86e5df2..bed9fbc91c 100644 --- a/code/modules/detectivework/scanner.dm +++ b/code/modules/detectivework/scanner.dm @@ -6,7 +6,7 @@ name = "forensic scanner" desc = "Used to remotely scan objects and biomass for DNA and fingerprints. Can print a report of the findings." icon_state = "forensicnew" - w_class = WEIGHT_CLASS_SMALL + w_class = 2 item_state = "electronic" flags = CONDUCT | NOBLUDGEON slot_flags = SLOT_BELT diff --git a/code/modules/events/abductor.dm b/code/modules/events/abductor.dm index 7b11540913..19ccda1472 100644 --- a/code/modules/events/abductor.dm +++ b/code/modules/events/abductor.dm @@ -28,8 +28,8 @@ else temp = new - var/agent_mind = pick_n_take(candidates) - var/scientist_mind = pick_n_take(candidates) + var/agent_mind = popleft(candidates) + var/scientist_mind = popleft(candidates) var/mob/living/carbon/human/agent = makeBody(agent_mind) var/mob/living/carbon/human/scientist = makeBody(scientist_mind) diff --git a/code/modules/events/alien_infestation.dm b/code/modules/events/alien_infestation.dm index 92f7e86f28..ff6b63b7c8 100644 --- a/code/modules/events/alien_infestation.dm +++ b/code/modules/events/alien_infestation.dm @@ -57,7 +57,7 @@ while(spawncount > 0 && vents.len && candidates.len) var/obj/vent = pick_n_take(vents) - var/client/C = pick_n_take(candidates) + var/client/C = popleft(candidates) var/mob/living/carbon/alien/larva/new_xeno = new(vent.loc) new_xeno.key = C.key diff --git a/code/modules/events/anomaly.dm b/code/modules/events/anomaly.dm index 6798ad0b4c..da75f26a80 100644 --- a/code/modules/events/anomaly.dm +++ b/code/modules/events/anomaly.dm @@ -31,3 +31,13 @@ var/turf/T = safepick(get_area_turfs(impact_area)) if(T) newAnomaly = new /obj/effect/anomaly/flux(T) + +/datum/round_event/anomaly/tick() + if(!newAnomaly) + kill() + return + newAnomaly.anomalyEffect() + +/datum/round_event/anomaly/end() + if(newAnomaly)//Kill the anomaly if it still exists at the end. + qdel(newAnomaly) \ No newline at end of file diff --git a/code/modules/events/anomaly_bluespace.dm b/code/modules/events/anomaly_bluespace.dm index 177ca531c8..64f8d502e7 100644 --- a/code/modules/events/anomaly_bluespace.dm +++ b/code/modules/events/anomaly_bluespace.dm @@ -7,6 +7,7 @@ /datum/round_event/anomaly/anomaly_bluespace startWhen = 3 announceWhen = 10 + endWhen = 95 /datum/round_event/anomaly/anomaly_bluespace/announce() @@ -17,3 +18,57 @@ var/turf/T = safepick(get_area_turfs(impact_area)) if(T) newAnomaly = new /obj/effect/anomaly/bluespace(T) + + +/datum/round_event/anomaly/anomaly_bluespace/end() + if(newAnomaly.loc)//If it hasn't been neutralized, it's time to warp half the station away jeez + var/turf/T = safepick(get_area_turfs(impact_area)) + if(T) + // Calculate new position (searches through beacons in world) + var/obj/item/device/radio/beacon/chosen + var/list/possible = list() + for(var/obj/item/device/radio/beacon/W in world) + possible += W + + if(possible.len > 0) + chosen = pick(possible) + + if(chosen) + // Calculate previous position for transition + + var/turf/FROM = T // the turf of origin we're travelling FROM + var/turf/TO = get_turf(chosen) // the turf of origin we're travelling TO + + playsound(TO, 'sound/effects/phasein.ogg', 100, 1) + priority_announce("Massive bluespace translocation detected.", "Anomaly Alert") + + var/list/flashers = list() + for(var/mob/living/carbon/C in viewers(TO, null)) + if(C.flash_eyes()) + flashers += C + + var/y_distance = TO.y - FROM.y + var/x_distance = TO.x - FROM.x + for (var/atom/movable/A in urange(12, FROM )) // iterate thru list of mobs in the area + if(istype(A, /obj/item/device/radio/beacon)) continue // don't teleport beacons because that's just insanely stupid + if(A.anchored) continue + + var/turf/newloc = locate(A.x + x_distance, A.y + y_distance, TO.z) // calculate the new place + if(!A.Move(newloc) && newloc) // if the atom, for some reason, can't move, FORCE them to move! :) We try Move() first to invoke any movement-related checks the atom needs to perform after moving + A.loc = newloc + + spawn() + if(ismob(A) && !(A in flashers)) // don't flash if we're already doing an effect + var/mob/M = A + if(M.client) + var/obj/blueeffect = new /obj(src) + blueeffect.screen_loc = "WEST,SOUTH to EAST,NORTH" + blueeffect.icon = 'icons/effects/effects.dmi' + blueeffect.icon_state = "shieldsparkles" + blueeffect.layer = FLASH_LAYER + blueeffect.mouse_opacity = 0 + M.client.screen += blueeffect + sleep(20) + M.client.screen -= blueeffect + qdel(blueeffect) + qdel(newAnomaly) \ No newline at end of file diff --git a/code/modules/events/anomaly_flux.dm b/code/modules/events/anomaly_flux.dm index c0ba6c14e9..43660ab099 100644 --- a/code/modules/events/anomaly_flux.dm +++ b/code/modules/events/anomaly_flux.dm @@ -9,6 +9,8 @@ /datum/round_event/anomaly/anomaly_flux startWhen = 3 announceWhen = 20 + endWhen = 80 + /datum/round_event/anomaly/anomaly_flux/announce() priority_announce("Localized hyper-energetic flux wave detected on long range scanners. Expected location: [impact_area.name].", "Anomaly Alert") @@ -18,3 +20,9 @@ var/turf/T = safepick(get_area_turfs(impact_area)) if(T) newAnomaly = new /obj/effect/anomaly/flux(T) + + +/datum/round_event/anomaly/anomaly_flux/end() + if(newAnomaly.loc)//If it hasn't been neutralized, it's time to blow up. + explosion(newAnomaly, 1, 4, 16, 18) //Low devastation, but hits a lot of stuff. + qdel(newAnomaly) \ No newline at end of file diff --git a/code/modules/events/anomaly_grav.dm b/code/modules/events/anomaly_grav.dm index d29c8c5607..c89175befa 100644 --- a/code/modules/events/anomaly_grav.dm +++ b/code/modules/events/anomaly_grav.dm @@ -7,6 +7,8 @@ /datum/round_event/anomaly/anomaly_grav startWhen = 3 announceWhen = 20 + endWhen = 120 + /datum/round_event/anomaly/anomaly_grav/announce() priority_announce("Gravitational anomaly detected on long range scanners. Expected location: [impact_area.name].", "Anomaly Alert") @@ -14,4 +16,4 @@ /datum/round_event/anomaly/anomaly_grav/start() var/turf/T = safepick(get_area_turfs(impact_area)) if(T) - newAnomaly = new /obj/effect/anomaly/grav(T) + newAnomaly = new /obj/effect/anomaly/grav(T) \ No newline at end of file diff --git a/code/modules/events/anomaly_pyro.dm b/code/modules/events/anomaly_pyro.dm index f18893d341..751089d434 100644 --- a/code/modules/events/anomaly_pyro.dm +++ b/code/modules/events/anomaly_pyro.dm @@ -7,6 +7,8 @@ /datum/round_event/anomaly/anomaly_pyro startWhen = 10 announceWhen = 3 + endWhen = 85 + /datum/round_event/anomaly/anomaly_pyro/announce() priority_announce("Pyroclastic anomaly detected on long range scanners. Expected location: [impact_area.name].", "Anomaly Alert") @@ -15,3 +17,23 @@ var/turf/T = safepick(get_area_turfs(impact_area)) if(T) newAnomaly = new /obj/effect/anomaly/pyro(T) + +/datum/round_event/anomaly/anomaly_pyro/tick() + if(!newAnomaly) + kill() + return + if(IsMultiple(activeFor, 5)) + newAnomaly.anomalyEffect() + + +/datum/round_event/anomaly/anomaly_pyro/end() + if(newAnomaly.loc) + var/turf/open/T = get_turf(newAnomaly) + if(istype(T)) + T.atmos_spawn_air("o2=500;plasma=500;TEMP=1000") //Make it hot and burny for the new slime + + var/mob/living/simple_animal/slime/S = new/mob/living/simple_animal/slime(T) + S.colour = pick("red", "orange") + S.rabid = 1 + + qdel(newAnomaly) diff --git a/code/modules/events/anomaly_vortex.dm b/code/modules/events/anomaly_vortex.dm index 01bf8fa039..d60a83aaac 100644 --- a/code/modules/events/anomaly_vortex.dm +++ b/code/modules/events/anomaly_vortex.dm @@ -9,6 +9,8 @@ /datum/round_event/anomaly/anomaly_vortex startWhen = 10 announceWhen = 3 + endWhen = 95 + /datum/round_event/anomaly/anomaly_vortex/announce() priority_announce("Localized high-intensity vortex anomaly detected on long range scanners. Expected location: [impact_area.name]", "Anomaly Alert") @@ -16,4 +18,4 @@ /datum/round_event/anomaly/anomaly_vortex/start() var/turf/T = safepick(get_area_turfs(impact_area)) if(T) - newAnomaly = new /obj/effect/anomaly/bhole(T) + newAnomaly = new /obj/effect/anomaly/bhole(T) \ No newline at end of file diff --git a/code/modules/events/blob.dm b/code/modules/events/blob.dm index f59adadf11..76de5e30c9 100644 --- a/code/modules/events/blob.dm +++ b/code/modules/events/blob.dm @@ -1,6 +1,6 @@ /datum/round_event_control/blob name = "Blob" - typepath = /datum/round_event/ghost_role/blob + typepath = /datum/round_event/blob weight = 5 max_occurrences = 1 @@ -9,30 +9,22 @@ gamemode_blacklist = list("blob") //Just in case a blob survives that long -/datum/round_event/ghost_role/blob +/datum/round_event/blob announceWhen = 12 - role_name = "blob_overmind" + endWhen = 120 var/new_rate = 2 -/datum/round_event/ghost_role/blob/New(my_processing = TRUE, set_point_rate) +/datum/round_event/blob/New(var/strength) ..() - if(set_point_rate) - new_rate = set_point_rate + if(strength) + new_rate = strength -/datum/round_event/ghost_role/blob/announce() +/datum/round_event/blob/announce() priority_announce("Confirmed outbreak of level 5 biohazard aboard [station_name()]. All personnel must contain the outbreak.", "Biohazard Alert", 'sound/AI/outbreak5.ogg') -/datum/round_event/ghost_role/blob/spawn_role() - if(!blobstart.len) - return MAP_ERROR - var/list/candidates = get_candidates("blob", null, ROLE_BLOB) - if(!candidates.len) - return NOT_ENOUGH_PLAYERS - var/mob/dead/observer/new_blob = pick(candidates) - var/obj/structure/blob/core/BC = new/obj/structure/blob/core(pick(blobstart), new_blob.client, new_rate) - BC.overmind.blob_points = min(20 + player_list.len, BC.overmind.max_blob_points) - spawned_mobs += BC.overmind - message_admins("[BC.overmind.key] has been made into a blob overmind by an event.") - log_game("[BC.overmind.key] was spawned as a blob overmind by an event.") - return SUCCESSFUL_SPAWN +/datum/round_event/blob/start() + var/turf/T = pick(blobstart) + if(!T) + return kill() + new/obj/effect/blob/core(T, null, new_rate) diff --git a/code/modules/events/devil.dm b/code/modules/events/devil.dm index 066599cf35..21fad5037d 100644 --- a/code/modules/events/devil.dm +++ b/code/modules/events/devil.dm @@ -24,7 +24,7 @@ if(!candidates.len) return NOT_ENOUGH_PLAYERS - var/mob/dead/selected_candidate = pick_n_take(candidates) + var/mob/dead/selected_candidate = popleft(candidates) var/key = selected_candidate.key var/datum/mind/Mind = create_devil_mind(key) @@ -33,9 +33,7 @@ var/mob/living/carbon/human/devil = create_event_devil(spawn_loc) Mind.transfer_to(devil) ticker.mode.finalize_devil(Mind) - ticker.mode.add_devil_objectives(src, 2) Mind.announceDevilLaws() - Mind.announce_objectives() spawned_mobs += devil diff --git a/code/modules/events/dust.dm b/code/modules/events/dust.dm index cd9be28fbe..6d76981122 100644 --- a/code/modules/events/dust.dm +++ b/code/modules/events/dust.dm @@ -1,30 +1,21 @@ -/datum/round_event_control/space_dust +/datum/round_event_control/meteor_wave/dust name = "Minor Space Dust" - typepath = /datum/round_event/space_dust + typepath = /datum/round_event/meteor_wave/dust weight = 200 max_occurrences = 1000 earliest_start = 0 alertadmins = 0 - -/datum/round_event/space_dust + +/datum/round_event/meteor_wave/dust startWhen = 1 endWhen = 2 announceWhen = 0 -/datum/round_event/space_dust/start() +/datum/round_event/meteor_wave/dust/announce() + return + +/datum/round_event/meteor_wave/dust/start() spawn_meteors(1, meteorsC) -/datum/round_event_control/sandstorm - name = "Sandstorm" - typepath = /datum/round_event/sandstorm - weight = 0 - max_occurrences = 0 - earliest_start = 0 - -/datum/round_event/sandstorm - startWhen = 1 - endWhen = 150 // ~5 min - announceWhen = 0 - -/datum/round_event/sandstorm/tick() - spawn_meteors(10, meteorsC) \ No newline at end of file +/datum/round_event/meteor_wave/dust/tick() + return diff --git a/code/modules/events/ghost_role.dm b/code/modules/events/ghost_role.dm index 87b72c5590..7bef6dbed7 100644 --- a/code/modules/events/ghost_role.dm +++ b/code/modules/events/ghost_role.dm @@ -1,6 +1,3 @@ -#define MAX_SPAWN_ATTEMPT 3 - - /datum/round_event/ghost_role // We expect 0 or more /clients (or things with .key) in this list var/list/priority_candidates = list() @@ -11,24 +8,18 @@ /datum/round_event/ghost_role/start() try_spawning() -/datum/round_event/ghost_role/proc/try_spawning(sanity = 0, retry = 0) +/datum/round_event/ghost_role/proc/try_spawning(sanity = 0) // The event does not run until the spawning has been attempted // to prevent us from getting gc'd halfway through processing = FALSE var/status = spawn_role() - if((status == WAITING_FOR_SOMETHING)) - if(retry >= MAX_SPAWN_ATTEMPT) - message_admins("[role_name] event has exceeded maximum spawn attempts. Aborting and refunding.") - if(control && control.occurrences > 0) //Don't refund if it hasn't - control.occurrences-- - return - var/waittime = 300 * (2^retry) + if(status == WAITING_FOR_SOMETHING) message_admins("The event will not spawn a [role_name] until certain \ - conditions are met. Waiting [waittime/10]s and then retrying.") - spawn(waittime) + conditions are met. Waiting 30s and then retrying.") + spawn(300) // I hope this doesn't end up running out of stack space - try_spawning(0,++retry) + try_spawning() return if(status == MAP_ERROR) @@ -69,4 +60,3 @@ return candidates -#undef MAX_SPAWN_ATTEMPT \ No newline at end of file diff --git a/code/modules/events/grid_check.dm b/code/modules/events/grid_check.dm deleted file mode 100644 index a7a6a3564e..0000000000 --- a/code/modules/events/grid_check.dm +++ /dev/null @@ -1,19 +0,0 @@ -/datum/round_event_control/grid_check - name = "Grid Check" - typepath = /datum/round_event/grid_check - weight = 10 - max_occurrences = 3 - -/datum/round_event/grid_check - announceWhen = 1 - startWhen = 1 - -/datum/round_event/grid_check/announce() - priority_announce("Abnormal activity detected in [station_name()]'s powernet. As a precautionary measure, the station's power will be shut off for an indeterminate duration.", "Critical Power Failure", 'sound/AI/poweroff.ogg') - - -/datum/round_event/grid_check/start() - for(var/P in apcs_list) - var/obj/machinery/power/apc/C = P - if(C.cell && C.z == ZLEVEL_STATION) - C.energy_fail(rand(30,120)) \ No newline at end of file diff --git a/code/modules/events/holiday/halloween.dm b/code/modules/events/holiday/halloween.dm index 9737c86db6..1bbf0147a6 100644 --- a/code/modules/events/holiday/halloween.dm +++ b/code/modules/events/holiday/halloween.dm @@ -11,17 +11,13 @@ for(var/mob/living/carbon/human/H in mob_list) var/obj/item/weapon/storage/backpack/b = locate() in H.contents new /obj/item/weapon/storage/spooky(b) - if(ishuman(H) || islizard(H)) - if(prob(50)) - H.set_species(/datum/species/skeleton) - else - H.set_species(/datum/species/zombie) + if(prob(50)) + H.set_species(/datum/species/skeleton) + else + H.set_species(/datum/species/zombie) for(var/mob/living/simple_animal/pet/dog/corgi/Ian/Ian in mob_list) Ian.place_on_head(new /obj/item/weapon/bedsheet(Ian)) - for(var/mob/living/simple_animal/parrot/Poly/Poly in mob_list) - new /mob/living/simple_animal/parrot/Poly/ghost(Poly.loc) - qdel(Poly) /datum/round_event/spooky/announce() priority_announce(pick("RATTLE ME BONES!","THE RIDE NEVER ENDS!", "A SKELETON POPS OUT!", "SPOOKY SCARY SKELETONS!", "CREWMEMBERS BEWARE, YOU'RE IN FOR A SCARE!") , "THE CALL IS COMING FROM INSIDE THE HOUSE") @@ -54,50 +50,6 @@ if(IsMultiple(activeFor, 4)) spawn_meteors(3, meteorsSPOOKY) //meteor list types defined in gamemode/meteor/meteors.dm -//Creepy clown invasion -/datum/round_event_control/creepy_clowns - name = "Clowns" - typepath = /datum/round_event/creepy_clowns - holidayID = HALLOWEEN - weight = 20 - earliest_start = 0 - -/datum/round_event/creepy_clowns - endWhen = 40 - -/datum/round_event/creepy_clowns/start() - for(var/mob/living/carbon/human/H in living_mob_list) - if(!H.client || !istype(H)) - return - H << "Honk..." - H << 'sound/spookoween/scary_clown_appear.ogg' - var/turf/T = get_turf(H) - if(T) - new /obj/effect/hallucination/simple/clown(T, H, 50) - -/datum/round_event/creepy_clowns/tick() - if(IsMultiple(activeFor, 4)) - for(var/mob/living/carbon/human/H in living_mob_list) - if (prob(66)) - playsound(H.loc, pick('sound/spookoween/scary_horn.ogg','sound/spookoween/scary_horn2.ogg', 'sound/spookoween/scary_horn3.ogg'), 100, 1) - if (prob(33)) - var/turf/T = get_turf(H) - if(T) - new /obj/effect/hallucination/simple/clown(T, H, 25) - else if (prob(25)) - var/turf/T = get_turf(H) - if(T) - new /obj/effect/hallucination/simple/clown/scary(T, H, 25) - else if (prob(5)) - var/turf/T = get_turf(H) - if(T) - spawn_atom_to_turf(/obj/effect/mob_spawn/human/corpse/clown, H, 1) - else if (prob(1)) - spawn_atom_to_turf(/mob/living/simple_animal/hostile/retaliate/clown, H, 1) - -/datum/round_event/creepy_clowns/announce() - priority_announce("Honk... Honk... honk... HONK! HONK! HONKHONKHONKHONKHONK", "HONK!", 'sound/spookoween/scary_horn.ogg') - //spooky foods (you can't actually make these when it's not halloween) /obj/item/weapon/reagent_containers/food/snacks/sugarcookie/spookyskull name = "skull cookie" @@ -116,7 +68,7 @@ /obj/item/weapon/storage/spooky name = "trick-o-treat bag" - desc = "A pumpkin-shaped bag that holds all sorts of goodies!" + desc = "A Pumpkin shaped bag that holds all sorts of goodies!" icon = 'icons/obj/halloween_items.dmi' icon_state = "treatbag" @@ -127,12 +79,5 @@ /obj/item/weapon/reagent_containers/food/snacks/sugarcookie/spookycoffin, /obj/item/weapon/reagent_containers/food/snacks/candy_corn, /obj/item/weapon/reagent_containers/food/snacks/candy, - /obj/item/weapon/reagent_containers/food/snacks/candiedapple, - /obj/item/weapon/reagent_containers/food/snacks/chocolatebar, - /obj/item/organ/brain ) // OH GOD THIS ISN'T CANDY! + /obj/item/weapon/reagent_containers/food/snacks/chocolatebar) new type(src) - -/obj/item/weapon/card/emag/halloween - name = "hack-o'-lantern" - desc = "It's a pumpkin with a cryptographic sequencer sticking out." - icon_state = "hack_o_lantern" diff --git a/code/modules/events/holiday/vday.dm b/code/modules/events/holiday/vday.dm index ec15894f57..c94c4bf1ed 100644 --- a/code/modules/events/holiday/vday.dm +++ b/code/modules/events/holiday/vday.dm @@ -14,7 +14,7 @@ /datum/round_event/valentines/start() ..() - for(var/mob/living/carbon/human/H in living_mob_list) + for(var/mob/living/carbon/human/H in mob_list) H.put_in_hands(new /obj/item/weapon/valentine) var/obj/item/weapon/storage/backpack/b = locate() in H.contents new /obj/item/weapon/reagent_containers/food/snacks/candyheart(b) @@ -28,8 +28,8 @@ icon = 'icons/obj/toy.dmi' icon_state = "sc_Ace of Hearts_syndicate" // shut up var/message = "A generic message of love or whatever." - resistance_flags = FLAMMABLE - w_class = WEIGHT_CLASS_TINY + burn_state = FLAMMABLE + w_class = 1 /obj/item/weapon/valentine/New() ..() @@ -55,6 +55,7 @@ "You're always valid to my heart.", "I'd risk the wrath of the gods to bwoink you.", "You look as beautiful now as the last time you were cloned.", + "Your love is more valuable than raw plasma ore.", "Someone check the gravitational generator, because I'm only attracted to you.", "If I were the warden I'd always let you into my armory.", "The virologist is rogue, and the only cure is a kiss from you.", @@ -72,9 +73,7 @@ "If you had a pickaxe you'd be a shaft FINEr.", "Roses are red, tide is gray, if I were an assistant I'd steal you away.", "Roses are red, text is green, I love you more than cleanbots clean.", - "If you were a carp I'd fi-lay you.", - "I'm a nuke op, and my pinpointer leads to your heart.", - "Wanna slay my megafauna?" ) + "If you were a carp I'd fi-lay you." ) /obj/item/weapon/valentine/attackby(obj/item/weapon/W, mob/user, params) ..() @@ -124,6 +123,5 @@ "A heart-shaped candy that reads: WAG MY TAIL", "A heart-shaped candy that reads: VALIDTINES", "A heart-shaped candy that reads: FACEHUGGER", - "A heart-shaped candy that reads: DOMINATOR", - "A heart-shaped candy that reads: GET TESLA'D") + "A heart-shaped candy that reads: DOMINATOR") icon_state = pick("candyheart", "candyheart2", "candyheart3", "candyheart4") \ No newline at end of file diff --git a/code/modules/events/holiday/xmas.dm b/code/modules/events/holiday/xmas.dm index ce2fbb2d6d..7c2d638ed9 100644 --- a/code/modules/events/holiday/xmas.dm +++ b/code/modules/events/holiday/xmas.dm @@ -47,7 +47,7 @@ var/cracked = 0 /obj/item/weapon/toy/xmas_cracker/attack(mob/target, mob/user) - if( !cracked && ishuman(target) && (target.stat == CONSCIOUS) && !target.get_active_held_item() ) + if( !cracked && istype(target,/mob/living/carbon/human) && (target.stat == CONSCIOUS) && !target.get_active_hand() ) target.visible_message("[user] and [target] pop \an [src]! *pop*", "You pull \an [src] with [target]! *pop*", "You hear a pop.") var/obj/item/weapon/paper/Joke = new /obj/item/weapon/paper(user.loc) Joke.name = "[pick("awful","terrible","unfunny")] joke" @@ -78,15 +78,7 @@ icon_state = "xmashat" desc = "A crappy paper hat that you are REQUIRED to wear." flags_inv = 0 - armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 0, rad = 0, fire = 0, acid = 0) - -/obj/effect/landmark/xmastree - name = "christmas tree spawner" - var/tree = /obj/structure/flora/tree/pine/xmas - -/obj/effect/landmark/xmastree/rdrod - name = "festivus pole spawner" - tree = /obj/structure/festivus + armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 0, rad = 0) /datum/round_event_control/santa name = "Santa is coming to town! (Christmas)" diff --git a/code/modules/events/immovable_rod.dm b/code/modules/events/immovable_rod.dm index 443135cfcb..9a9c412b95 100644 --- a/code/modules/events/immovable_rod.dm +++ b/code/modules/events/immovable_rod.dm @@ -26,7 +26,7 @@ In my current plan for it, 'solid' will be defined as anything with density == 1 new /obj/effect/immovablerod(startT, endT) /obj/effect/immovablerod - name = "immovable rod" + name = "Immovable Rod" desc = "What the fuck is that?" icon = 'icons/obj/objects.dmi' icon_state = "immrod" @@ -37,62 +37,38 @@ In my current plan for it, 'solid' will be defined as anything with density == 1 var/destination /obj/effect/immovablerod/New(atom/start, atom/end) - ..() - if(SSaugury) - SSaugury.register_doom(src, 2000) + loc = start z_original = z destination = end - notify_ghosts("\A [src] is inbound!", - enter_link="(Click to orbit)", - source=src, action=NOTIFY_ORBIT) - poi_list += src if(end && end.z==z_original) walk_towards(src, destination, 1) -/obj/effect/immovablerod/Topic(href, href_list) - if(href_list["orbit"]) - var/mob/dead/observer/ghost = usr - if(istype(ghost)) - ghost.ManualFollow(src) - -/obj/effect/immovablerod/Destroy() - poi_list -= src - . = ..() - /obj/effect/immovablerod/Move() - if((z != z_original) || (loc == destination)) + if(z != z_original || loc == destination) qdel(src) return ..() -/obj/effect/immovablerod/ex_act(severity, target) +/obj/effect/immovablerod/ex_act(test) return 0 /obj/effect/immovablerod/Bump(atom/clong) if(prob(10)) playsound(src, 'sound/effects/bang.ogg', 50, 1) - audible_message("You hear a CLANG!") + audible_message("CLANG") if(clong && prob(25)) x = clong.x y = clong.y - if(isturf(clong) || isobj(clong)) + if (istype(clong, /turf) || istype(clong, /obj)) if(clong.density) clong.ex_act(2) - else if(ismob(clong)) - if(ishuman(clong)) + else if (istype(clong, /mob)) + if(istype(clong, /mob/living/carbon/human)) var/mob/living/carbon/human/H = clong H.visible_message("[H.name] is penetrated by an immovable rod!" , "The rod penetrates you!" , "You hear a CLANG!") H.adjustBruteLoss(160) if(clong.density || prob(10)) clong.ex_act(2) - else if(istype(clong, type)) - var/obj/effect/immovablerod/other = clong - visible_message("[src] collides with [other]!\ - ") - var/datum/effect_system/smoke_spread/smoke = new - smoke.set_up(2, get_turf(src)) - smoke.start() - qdel(src) - qdel(other) + return diff --git a/code/modules/events/ion_storm.dm b/code/modules/events/ion_storm.dm index 085a490b30..b844bac3fc 100644 --- a/code/modules/events/ion_storm.dm +++ b/code/modules/events/ion_storm.dm @@ -33,7 +33,6 @@ var/message = generate_ion_law(ionMessage) if(message) M.add_ion_law(message) - log_game("ION law added to [M]: [message]") M << "
    " M << "[message] ...LAWS UPDATED" M << "
    " diff --git a/code/modules/events/major_dust.dm b/code/modules/events/major_dust.dm deleted file mode 100644 index 7597966e6d..0000000000 --- a/code/modules/events/major_dust.dm +++ /dev/null @@ -1,19 +0,0 @@ -/datum/round_event_control/meteor_wave/major_dust - name = "Major Space Dust" - typepath = /datum/round_event/meteor_wave/major_dust - weight = 8 - -/datum/round_event/meteor_wave/major_dust - wave_name = "space dust" - -/datum/round_event/meteor_wave/major_dust/announce() - var/reason = pick( - "The station is passing through a debris cloud, expect minor damage \ - to external fittings and fixtures.", - "Nanotrasen Superweapons Division is testing a new prototype \ - [pick("field","projection","nova","super-colliding","reactive")] \ - [pick("cannon","artillery","tank","cruiser","\[REDACTED\]")], \ - some mild debris is expected.", - "A neighbouring station is throwing rocks at you. (Perhaps they've \ - grown tired of your messages.)") - priority_announce(pick(reason), "Collision Alert") diff --git a/code/modules/events/meateor_wave.dm b/code/modules/events/meateor_wave.dm index 204d901a3c..fa26633e90 100644 --- a/code/modules/events/meateor_wave.dm +++ b/code/modules/events/meateor_wave.dm @@ -1,11 +1,12 @@ /datum/round_event_control/meteor_wave/meaty - name = "Meteor Wave: Meaty" + name = "Meaty Ore Wave" typepath = /datum/round_event/meteor_wave/meaty - weight = 2 + weight = 1 max_occurrences = 1 -/datum/round_event/meteor_wave/meaty - wave_name = "meaty" - /datum/round_event/meteor_wave/meaty/announce() priority_announce("Meaty ores have been detected on collision course with the station.", "Oh crap, get the mop.",'sound/AI/meteors.ogg') + +/datum/round_event/meteor_wave/meaty/tick() + if(IsMultiple(activeFor, 3)) + spawn_meteors(5, meteorsB) //meteor list types defined in gamemode/meteor/meteors.dm \ No newline at end of file diff --git a/code/modules/events/meteor_wave.dm b/code/modules/events/meteor_wave.dm index 1cd401ca5b..d70644fa24 100644 --- a/code/modules/events/meteor_wave.dm +++ b/code/modules/events/meteor_wave.dm @@ -1,9 +1,7 @@ -// Normal strength - /datum/round_event_control/meteor_wave - name = "Meteor Wave: Normal" + name = "Meteor Wave" typepath = /datum/round_event/meteor_wave - weight = 4 + weight = 5 min_players = 5 max_occurrences = 3 @@ -12,57 +10,25 @@ endWhen = 66 announceWhen = 1 var/list/wave_type - var/wave_name = "normal" /datum/round_event/meteor_wave/New() ..() - if(!wave_type) - determine_wave_type() + random_wave_type() -/datum/round_event/meteor_wave/proc/determine_wave_type() - if(!wave_name) - wave_name = pickweight(list( - "normal" = 50, - "threatening" = 40, - "catastrophic" = 10)) - switch(wave_name) +/datum/round_event/meteor_wave/proc/random_wave_type() + var/picked_wave = pickweight(list("normal" = 50, "threatening" = 40, "catastrophic" = 10)) + switch(picked_wave) if("normal") wave_type = meteors_normal if("threatening") wave_type = meteors_threatening if("catastrophic") wave_type = meteors_catastrophic - if("meaty") - wave_type = meteorsB - if("space dust") - wave_type = meteorsC - else - WARNING("Wave name of [wave_name] not recognised.") - kill() /datum/round_event/meteor_wave/announce() priority_announce("Meteors have been detected on collision course with the station.", "Meteor Alert", 'sound/AI/meteors.ogg') + /datum/round_event/meteor_wave/tick() if(IsMultiple(activeFor, 3)) spawn_meteors(5, wave_type) //meteor list types defined in gamemode/meteor/meteors.dm - -/datum/round_event_control/meteor_wave/threatening - name = "Meteor Wave: Threatening" - typepath = /datum/round_event/meteor_wave/threatening - weight = 2 - min_players = 5 - max_occurrences = 3 - -/datum/round_event/meteor_wave/threatening - wave_name = "threatening" - -/datum/round_event_control/meteor_wave/catastrophic - name = "Meteor Wave: Catastrophic" - typepath = /datum/round_event/meteor_wave/catastrophic - weight = 1 - min_players = 5 - max_occurrences = 3 - -/datum/round_event/meteor_wave/catastrophic - wave_name = "catastrophic" diff --git a/code/modules/events/mice_migration.dm b/code/modules/events/mice_migration.dm deleted file mode 100644 index 6345dd53a7..0000000000 --- a/code/modules/events/mice_migration.dm +++ /dev/null @@ -1,28 +0,0 @@ -/datum/round_event_control/mice_migration - name = "Mice Migration" - typepath = /datum/round_event/mice_migration - weight = 10 - -/datum/round_event/mice_migration - announceWhen = 0 - var/minimum_mice = 5 - var/maximum_mice = 15 - -/datum/round_event/mice_migration/announce() - var/cause = pick("space-winter", "budget-cuts", "Ragnarok", - "space being cold", "\[REDACTED\]", "climate change", - "bad luck") - var/plural = pick("a number of", "a horde of", "a pack of", "a swarm of", - "a whoop of", "not more than [maximum_mice]") - var/name = pick("rodents", "mice", "squeaking things", - "wire eating mammals", "\[REDACTED\]", "energy draining parasites") - var/movement = pick("migrated", "swarmed", "stampeded", "descended") - var/location = pick("maintenance tunnels", "maintenance areas", - "\[REDACTED\]", "place with all those juicy wires") - - priority_announce("Due to [cause], [plural] [name] have [movement] \ - into the [location].", "Migration Alert", - 'sound/effects/mousesqueek.ogg', 100, 1) - -/datum/round_event/mice_migration/start() - SSsqueak.trigger_migration(rand(minimum_mice, maximum_mice)) diff --git a/code/modules/events/operative.dm b/code/modules/events/operative.dm index 1c026f8110..afdd178ac4 100644 --- a/code/modules/events/operative.dm +++ b/code/modules/events/operative.dm @@ -13,7 +13,7 @@ if(!candidates.len) return NOT_ENOUGH_PLAYERS - var/mob/dead/selected = pick_n_take(candidates) + var/mob/dead/selected = popleft(candidates) var/list/spawn_locs = list() for(var/obj/effect/landmark/L in landmarks_list) @@ -39,7 +39,7 @@ if(nuke) var/nuke_code if(!nuke.r_code || nuke.r_code == "ADMIN") - nuke_code = random_nukecode() + nuke_code = "[rand(10000, 99999)]" nuke.r_code = nuke_code else nuke_code = nuke.r_code diff --git a/code/modules/events/sentience.dm b/code/modules/events/sentience.dm deleted file mode 100644 index 2049edbb7f..0000000000 --- a/code/modules/events/sentience.dm +++ /dev/null @@ -1,42 +0,0 @@ -/datum/round_event_control/sentience - name = "Random Human-level Intelligence" - typepath = /datum/round_event/ghost_role/sentience - weight = 5 - -/datum/round_event/ghost_role/sentience - minimum_required = 1 - role_name = "random animal" - -/datum/round_event/ghost_role/sentience/spawn_role() - var/list/mob/dead/observer/candidates - candidates = get_candidates(ROLE_ALIEN, null, ROLE_ALIEN) - - // find our chosen mob to breathe life into - // Mobs have to be simple animals, mindless and on station - var/list/potential = list() - for(var/mob/living/simple_animal/L in living_mob_list) - var/turf/T = get_turf(L) - if(T.z != ZLEVEL_STATION) - continue - if(!(L in player_list) && !L.mind) - potential += L - - var/mob/living/simple_animal/SA = pick(potential) - var/mob/dead/observer/SG = pick(candidates) - - if(!SA || !SG) - return FALSE - - SA.key = SG.key - SA.languages_spoken |= HUMAN - SA.languages_understood |= HUMAN - SA.sentience_act() - - SA.maxHealth = max(SA.maxHealth, 200) - SA.health = SA.maxHealth - SA.del_on_death = FALSE - - SA << "Hello world!" - SA << "Due to freak radiation and/or chemicals \ - and/or lucky chance, you have gained human level intelligence \ - and the ability to speak and understand human language!" diff --git a/code/modules/events/shuttle_loan.dm b/code/modules/events/shuttle_loan.dm index 9000136343..8486c9b0fe 100644 --- a/code/modules/events/shuttle_loan.dm +++ b/code/modules/events/shuttle_loan.dm @@ -3,7 +3,6 @@ #define SPIDER_GIFT 3 #define DEPARTMENT_RESUPPLY 4 #define ANTIDOTE_NEEDED 5 -#define PIZZA_DELIVERY 6 /datum/round_event_control/shuttle_loan @@ -21,7 +20,7 @@ var/thanks_msg = "The cargo shuttle should return in five minutes. Have some supply points for your trouble." /datum/round_event/shuttle_loan/start() - dispatch_type = pick(HIJACK_SYNDIE, RUSKY_PARTY, SPIDER_GIFT, DEPARTMENT_RESUPPLY, ANTIDOTE_NEEDED, PIZZA_DELIVERY) + dispatch_type = pick(HIJACK_SYNDIE, RUSKY_PARTY, SPIDER_GIFT, DEPARTMENT_RESUPPLY, ANTIDOTE_NEEDED) /datum/round_event/shuttle_loan/announce() SSshuttle.shuttle_loan = src @@ -38,8 +37,6 @@ bonus_points = 0 if(ANTIDOTE_NEEDED) priority_announce("Cargo: Your station has been chosen for an epidemiological research project. Send us your cargo shuttle to receive your research samples.", "Centcom Research Initiatives") - if (PIZZA_DELIVERY) - priority_announce("Cargo: It looks like a neighbouring station accidentally delivered their pizza to you instead", "Centcom Spacepizza Division") /datum/round_event/shuttle_loan/proc/loan_shuttle() priority_announce(thanks_msg, "Cargo shuttle commandeered by Centcom.") @@ -48,8 +45,13 @@ SSshuttle.points += bonus_points endWhen = activeFor + 1 - SSshuttle.supply.mode = SHUTTLE_CALL - SSshuttle.supply.destination = SSshuttle.getDock("supply_home") + SSshuttle.supply.sell() + SSshuttle.supply.enterTransit() + if(SSshuttle.supply.z != ZLEVEL_STATION) + SSshuttle.supply.mode = SHUTTLE_CALL + SSshuttle.supply.destination = SSshuttle.getDock("supply_home") + else + SSshuttle.supply.mode = SHUTTLE_RECALL SSshuttle.supply.setTimer(3000) switch(dispatch_type) @@ -63,8 +65,6 @@ SSshuttle.centcom_message += "Department resupply incoming." if(ANTIDOTE_NEEDED) SSshuttle.centcom_message += "Virus samples incoming." - if(PIZZA_DELIVERY) - SSshuttle.centcom_message += "Pizza delivery for [station_name()]" /datum/round_event/shuttle_loan/tick() if(dispatched) @@ -105,11 +105,11 @@ shuttle_spawns.Add(/mob/living/simple_animal/hostile/russian) shuttle_spawns.Add(/mob/living/simple_animal/hostile/russian/ranged) //drops a mateba - shuttle_spawns.Add(/mob/living/simple_animal/hostile/bear/russian) + shuttle_spawns.Add(/mob/living/simple_animal/hostile/bear) if(prob(75)) shuttle_spawns.Add(/mob/living/simple_animal/hostile/russian) if(prob(50)) - shuttle_spawns.Add(/mob/living/simple_animal/hostile/bear/russian) + shuttle_spawns.Add(/mob/living/simple_animal/hostile/bear) if(SPIDER_GIFT) var/datum/supply_pack/pack = SSshuttle.supply_packs[/datum/supply_pack/emergency/specialops] @@ -121,18 +121,26 @@ if(prob(50)) shuttle_spawns.Add(/mob/living/simple_animal/hostile/poison/giant_spider/hunter) - var/turf/T = pick_n_take(empty_shuttle_turfs) + var/turf/T = pick(empty_shuttle_turfs) + empty_shuttle_turfs.Remove(T) new /obj/effect/decal/remains/human(T) new /obj/item/clothing/shoes/space_ninja(T) new /obj/item/clothing/mask/balaclava(T) - for(var/i in 1 to 5) - T = pick_n_take(empty_shuttle_turfs) - new /obj/structure/spider/stickyweb(T) + T = pick(empty_shuttle_turfs) + new /obj/effect/spider/stickyweb(T) + T = pick(empty_shuttle_turfs) + new /obj/effect/spider/stickyweb(T) + T = pick(empty_shuttle_turfs) + new /obj/effect/spider/stickyweb(T) + T = pick(empty_shuttle_turfs) + new /obj/effect/spider/stickyweb(T) + T = pick(empty_shuttle_turfs) + new /obj/effect/spider/stickyweb(T) if(ANTIDOTE_NEEDED) - var/virus_type = pick(/datum/disease/beesease, /datum/disease/brainrot, /datum/disease/fluspanish) + var/virus_type = pick(/datum/disease/beesease, /datum/disease/brainrot, /datum/disease/fluspanish, /datum/disease/transformation/xeno) var/turf/T for(var/i=0, i<10, i++) if(prob(15)) @@ -170,16 +178,6 @@ for(var/i in 1 to 5) var/decal = pick(/obj/effect/decal/cleanable/flour, /obj/effect/decal/cleanable/robot_debris, /obj/effect/decal/cleanable/oil) new decal(pick_n_take(empty_shuttle_turfs)) - if(PIZZA_DELIVERY) - shuttle_spawns.Add(/obj/item/pizzabox/margherita) - shuttle_spawns.Add(/obj/item/pizzabox/margherita) - shuttle_spawns.Add(/obj/item/pizzabox/meat) - shuttle_spawns.Add(/obj/item/pizzabox/meat) - shuttle_spawns.Add(/obj/item/pizzabox/vegetable) - if(prob(10)) - shuttle_spawns.Add(/obj/item/pizzabox/bomb) - else - shuttle_spawns.Add(/obj/item/pizzabox/margherita) var/false_positive = 0 while(shuttle_spawns.len && empty_shuttle_turfs.len) @@ -195,5 +193,4 @@ #undef RUSKY_PARTY #undef SPIDER_GIFT #undef DEPARTMENT_RESUPPLY -#undef ANTIDOTE_NEEDED -#undef PIZZA_DELIVERY +#undef ANTIDOTE_NEEDED \ No newline at end of file diff --git a/code/modules/events/spacevine.dm b/code/modules/events/spacevine.dm index 0367f084c0..f355634ca6 100644 --- a/code/modules/events/spacevine.dm +++ b/code/modules/events/spacevine.dm @@ -8,7 +8,7 @@ /datum/round_event/spacevine/start() var/list/turfs = list() //list of all the empty floor turfs in the hallway areas - var/obj/structure/spacevine/SV = new() + var/obj/effect/spacevine/SV = new() for(var/area/hallway/A in world) for(var/turf/F in A) @@ -28,44 +28,40 @@ var/hue var/quality -/datum/spacevine_mutation/proc/add_mutation_to_vinepiece(obj/structure/spacevine/holder) - holder.mutations |= src - holder.add_atom_colour(hue, FIXED_COLOUR_PRIORITY) - -/datum/spacevine_mutation/proc/process_mutation(obj/structure/spacevine/holder) +/datum/spacevine_mutation/proc/process_mutation(obj/effect/spacevine/holder) return -/datum/spacevine_mutation/proc/process_temperature(obj/structure/spacevine/holder, temp, volume) +/datum/spacevine_mutation/proc/process_temperature(obj/effect/spacevine/holder, temp, volume) return -/datum/spacevine_mutation/proc/on_birth(obj/structure/spacevine/holder) +/datum/spacevine_mutation/proc/on_birth(obj/effect/spacevine/holder) return -/datum/spacevine_mutation/proc/on_grow(obj/structure/spacevine/holder) +/datum/spacevine_mutation/proc/on_grow(obj/effect/spacevine/holder) return -/datum/spacevine_mutation/proc/on_death(obj/structure/spacevine/holder) +/datum/spacevine_mutation/proc/on_death(obj/effect/spacevine/holder) return -/datum/spacevine_mutation/proc/on_hit(obj/structure/spacevine/holder, mob/hitter, obj/item/I, expected_damage) +/datum/spacevine_mutation/proc/on_hit(obj/effect/spacevine/holder, mob/hitter, obj/item/I, expected_damage) . = expected_damage -/datum/spacevine_mutation/proc/on_cross(obj/structure/spacevine/holder, mob/crosser) +/datum/spacevine_mutation/proc/on_cross(obj/effect/spacevine/holder, mob/crosser) return -/datum/spacevine_mutation/proc/on_chem(obj/structure/spacevine/holder, datum/reagent/R) +/datum/spacevine_mutation/proc/on_chem(obj/effect/spacevine/holder, datum/reagent/R) return -/datum/spacevine_mutation/proc/on_eat(obj/structure/spacevine/holder, mob/living/eater) +/datum/spacevine_mutation/proc/on_eat(obj/effect/spacevine/holder, mob/living/eater) return -/datum/spacevine_mutation/proc/on_spread(obj/structure/spacevine/holder, turf/target) +/datum/spacevine_mutation/proc/on_spread(obj/effect/spacevine/holder, turf/target) return -/datum/spacevine_mutation/proc/on_buckle(obj/structure/spacevine/holder, mob/living/buckled) +/datum/spacevine_mutation/proc/on_buckle(obj/effect/spacevine/holder, mob/living/buckled) return -/datum/spacevine_mutation/proc/on_explosion(severity, target, obj/structure/spacevine/holder) +/datum/spacevine_mutation/proc/on_explosion(severity, target, obj/effect/spacevine/holder) return @@ -74,41 +70,70 @@ hue = "#aa77aa" quality = POSITIVE -/datum/spacevine_mutation/space_covering - var/static/list/coverable_turfs +/turf/open/floor/vines + color = "#aa77aa" + icon_state = "vinefloor" + broken_states = list() -/datum/spacevine_mutation/space_covering/New() - . = ..() - if(!coverable_turfs) - coverable_turfs = typecacheof(list( - /turf/open/space - )) - coverable_turfs -= typecacheof(list( - /turf/open/space/transit - )) -/datum/spacevine_mutation/space_covering/on_grow(obj/structure/spacevine/holder) - process_mutation(holder) +//All of this shit is useless for vines -/datum/spacevine_mutation/space_covering/process_mutation(obj/structure/spacevine/holder) - var/turf/T = get_turf(holder) - if(is_type_in_typecache(T, coverable_turfs)) - var/currtype = T.type - T.ChangeTurf(/turf/open/floor/vines) - T.baseturf = currtype +/turf/open/floor/vines/attackby() + return -/datum/spacevine_mutation/space_covering/on_death(obj/structure/spacevine/holder) - var/turf/T = get_turf(holder) - if(istype(T, /turf/open/floor/vines)) - T.ChangeTurf(T.baseturf) +/turf/open/floor/vines/burn_tile() + return + +/turf/open/floor/vines/break_tile() + return + +/turf/open/floor/vines/make_plating() + return + +/turf/open/floor/vines/break_tile_to_plating() + return + +/turf/open/floor/vines/ex_act(severity, target) + if(severity < 3 || target == src) + ChangeTurf(src.baseturf) + +/turf/open/floor/vines/narsie_act() + if(prob(20)) + ChangeTurf(src.baseturf) //nar sie eats this shit + +/turf/open/floor/vines/singularity_pull(S, current_size) + if(current_size >= STAGE_FIVE) + if(prob(50)) + ChangeTurf(src.baseturf) + +/turf/open/floor/vines/ChangeTurf(turf/open/floor/T) + for(var/obj/effect/spacevine/SV in src) + qdel(SV) + ..() + reconsider_lights() + +/datum/spacevine_mutation/space_covering/on_grow(obj/effect/spacevine/holder) + if(istype(holder.loc, /turf/open/space)) + var/turf/open/spaceturf = holder.loc + spaceturf.ChangeTurf(/turf/open/floor/vines) + +/datum/spacevine_mutation/space_covering/process_mutation(obj/effect/spacevine/holder) + if(istype(holder.loc, /turf/open/space)) + var/turf/open/spaceturf = holder.loc + spaceturf.ChangeTurf(/turf/open/floor/vines) + +/datum/spacevine_mutation/space_covering/on_death(obj/effect/spacevine/holder) + if(istype(holder.loc, /turf/open/floor/vines)) + var/turf/open/spaceturf = holder.loc + spaceturf.ChangeTurf(/turf/open/space) /datum/spacevine_mutation/bluespace name = "bluespace" hue = "#3333ff" quality = MINOR_NEGATIVE -/datum/spacevine_mutation/bluespace/on_spread(obj/structure/spacevine/holder, turf/target) - if(holder.energy > 1 && !locate(/obj/structure/spacevine) in target) +/datum/spacevine_mutation/bluespace/on_spread(obj/effect/spacevine/holder, turf/target) + if(holder.energy > 1 && !locate(/obj/effect/spacevine) in target) holder.master.spawn_spacevine_piece(target, holder) /datum/spacevine_mutation/light @@ -117,9 +142,9 @@ quality = POSITIVE severity = 4 -/datum/spacevine_mutation/light/on_grow(obj/structure/spacevine/holder) +/datum/spacevine_mutation/light/on_grow(obj/effect/spacevine/holder) if(holder.energy) - holder.SetLuminosity(severity, 3) + holder.set_light(severity, 3) /datum/spacevine_mutation/toxicity name = "toxic" @@ -127,16 +152,15 @@ severity = 10 quality = NEGATIVE -/datum/spacevine_mutation/toxicity/on_cross(obj/structure/spacevine/holder, mob/living/crosser) +/datum/spacevine_mutation/toxicity/on_cross(obj/effect/spacevine/holder, mob/living/crosser) if(issilicon(crosser)) return - if(prob(severity) && istype(crosser) && !isvineimmune(crosser)) + if(prob(severity) && istype(crosser)) crosser << "You accidently touch the vine and feel a strange sensation." crosser.adjustToxLoss(5) -/datum/spacevine_mutation/toxicity/on_eat(obj/structure/spacevine/holder, mob/living/eater) - if(!isvineimmune(eater)) - eater.adjustToxLoss(5) +/datum/spacevine_mutation/toxicity/on_eat(obj/effect/spacevine/holder, mob/living/eater) + eater.adjustToxLoss(5) /datum/spacevine_mutation/explosive //OH SHIT IT CAN CHAINREACT RUN!!! name = "explosive" @@ -144,14 +168,15 @@ quality = NEGATIVE severity = 2 -/datum/spacevine_mutation/explosive/on_explosion(explosion_severity, target, obj/structure/spacevine/holder) +/datum/spacevine_mutation/explosive/on_explosion(explosion_severity, target, obj/effect/spacevine/holder) if(explosion_severity < 3) qdel(src) else . = 1 - QDEL_IN(src, 5) + spawn(5) + qdel(src) -/datum/spacevine_mutation/explosive/on_death(obj/structure/spacevine/holder, mob/hitter, obj/item/I) +/datum/spacevine_mutation/explosive/on_death(obj/effect/spacevine/holder, mob/hitter, obj/item/I) explosion(holder.loc, 0, 0, severity, 0, 0) /datum/spacevine_mutation/fire_proof @@ -159,22 +184,20 @@ hue = "#ff8888" quality = MINOR_NEGATIVE -/datum/spacevine_mutation/fire_proof/process_temperature(obj/structure/spacevine/holder, temp, volume) +/datum/spacevine_mutation/fire_proof/process_temperature(obj/effect/spacevine/holder, temp, volume) return 1 -/datum/spacevine_mutation/fire_proof/on_hit(obj/structure/spacevine/holder, mob/hitter, obj/item/I, expected_damage) +/datum/spacevine_mutation/fire_proof/on_hit(obj/effect/spacevine/holder, mob/hitter, obj/item/I, expected_damage) if(I && I.damtype == "fire") . = 0 - else - . = expected_damage /datum/spacevine_mutation/vine_eating name = "vine eating" hue = "#ff7700" quality = MINOR_NEGATIVE -/datum/spacevine_mutation/vine_eating/on_spread(obj/structure/spacevine/holder, turf/target) - var/obj/structure/spacevine/prey = locate() in target +/datum/spacevine_mutation/vine_eating/on_spread(obj/effect/spacevine/holder, turf/target) + var/obj/effect/spacevine/prey = locate() in target if(prey && !prey.mutations.Find(src)) //Eat all vines that are not of the same origin qdel(prey) @@ -184,19 +207,19 @@ severity = 3 quality = NEGATIVE -/datum/spacevine_mutation/aggressive_spread/on_spread(obj/structure/spacevine/holder, turf/target) - target.ex_act(severity, null, src) // vine immunity handled at /mob/ex_act +/datum/spacevine_mutation/aggressive_spread/on_spread(obj/effect/spacevine/holder, turf/target) + target.ex_act(severity, src) -/datum/spacevine_mutation/aggressive_spread/on_buckle(obj/structure/spacevine/holder, mob/living/buckled) - buckled.ex_act(severity, null, src) +/datum/spacevine_mutation/aggressive_spread/on_buckle(obj/effect/spacevine/holder, mob/living/buckled) + buckled.ex_act(severity) /datum/spacevine_mutation/transparency name = "transparent" hue = "" quality = POSITIVE -/datum/spacevine_mutation/transparency/on_grow(obj/structure/spacevine/holder) - holder.SetOpacity(0) +/datum/spacevine_mutation/transparency/on_grow(obj/effect/spacevine/holder) + holder.set_opacity(0) holder.alpha = 125 /datum/spacevine_mutation/oxy_eater @@ -205,7 +228,7 @@ severity = 3 quality = NEGATIVE -/datum/spacevine_mutation/oxy_eater/process_mutation(obj/structure/spacevine/holder) +/datum/spacevine_mutation/oxy_eater/process_mutation(obj/effect/spacevine/holder) var/turf/open/floor/T = holder.loc if(istype(T)) var/datum/gas_mixture/GM = T.air @@ -220,7 +243,7 @@ severity = 3 quality = NEGATIVE -/datum/spacevine_mutation/nitro_eater/process_mutation(obj/structure/spacevine/holder) +/datum/spacevine_mutation/nitro_eater/process_mutation(obj/effect/spacevine/holder) var/turf/open/floor/T = holder.loc if(istype(T)) var/datum/gas_mixture/GM = T.air @@ -235,7 +258,7 @@ severity = 3 quality = POSITIVE -/datum/spacevine_mutation/carbondioxide_eater/process_mutation(obj/structure/spacevine/holder) +/datum/spacevine_mutation/carbondioxide_eater/process_mutation(obj/effect/spacevine/holder) var/turf/open/floor/T = holder.loc if(istype(T)) var/datum/gas_mixture/GM = T.air @@ -250,7 +273,7 @@ severity = 3 quality = POSITIVE -/datum/spacevine_mutation/plasma_eater/process_mutation(obj/structure/spacevine/holder) +/datum/spacevine_mutation/plasma_eater/process_mutation(obj/effect/spacevine/holder) var/turf/open/floor/T = holder.loc if(istype(T)) var/datum/gas_mixture/GM = T.air @@ -265,35 +288,35 @@ severity = 10 quality = NEGATIVE -/datum/spacevine_mutation/thorns/on_cross(obj/structure/spacevine/holder, mob/living/crosser) - if(prob(severity) && istype(crosser) && !isvineimmune(holder)) +/datum/spacevine_mutation/thorns/on_cross(obj/effect/spacevine/holder, mob/living/crosser) + if(prob(severity) && istype(crosser)) var/mob/living/M = crosser M.adjustBruteLoss(5) M << "You cut yourself on the thorny vines." -/datum/spacevine_mutation/thorns/on_hit(obj/structure/spacevine/holder, mob/living/hitter, obj/item/I, expected_damage) - if(prob(severity) && istype(hitter) && !isvineimmune(holder)) +/datum/spacevine_mutation/thorns/on_hit(obj/effect/spacevine/holder, mob/living/hitter) + if(prob(severity) && istype(hitter)) var/mob/living/M = hitter M.adjustBruteLoss(5) M << "You cut yourself on the thorny vines." - . = expected_damage /datum/spacevine_mutation/woodening name = "hardened" hue = "#997700" quality = NEGATIVE -/datum/spacevine_mutation/woodening/on_grow(obj/structure/spacevine/holder) +/datum/spacevine_mutation/woodening/on_grow(obj/effect/spacevine/holder) if(holder.energy) holder.density = 1 - holder.max_integrity = 100 - holder.obj_integrity = holder.max_integrity -/datum/spacevine_mutation/woodening/on_hit(obj/structure/spacevine/holder, mob/living/hitter, obj/item/I, expected_damage) - if(I.is_sharp()) - . = expected_damage * 0.5 - else - . = expected_damage +/datum/spacevine_mutation/woodening/on_hit(obj/effect/spacevine/holder, mob/hitter, obj/item/I, expected_damage) + if(!expected_damage) + return + if(hitter) + if(I) + . = I.force * 2 + else + . = 8 /datum/spacevine_mutation/flowering name = "flowering" @@ -301,17 +324,16 @@ quality = NEGATIVE severity = 10 -/datum/spacevine_mutation/flowering/on_grow(obj/structure/spacevine/holder) +/datum/spacevine_mutation/flowering/on_grow(obj/effect/spacevine/holder) if(holder.energy == 2 && prob(severity) && !locate(/obj/structure/alien/resin/flower_bud_enemy) in range(5,holder)) new/obj/structure/alien/resin/flower_bud_enemy(get_turf(holder)) -/datum/spacevine_mutation/flowering/on_cross(obj/structure/spacevine/holder, mob/living/crosser) - if(prob(25)) - holder.entangle(crosser) +/datum/spacevine_mutation/flowering/on_cross(obj/effect/spacevine/holder, mob/living/crosser) + holder.entangle(crosser) // SPACE VINES (Note that this code is very similar to Biomass code) -/obj/structure/spacevine +/obj/effect/spacevine name = "space vines" desc = "An extremely expansionistic species of vine." icon = 'icons/effects/spacevines.dmi' @@ -321,29 +343,11 @@ layer = SPACEVINE_LAYER mouse_opacity = 2 //Clicking anywhere on the turf is good enough pass_flags = PASSTABLE | PASSGRILLE - obj_integrity = 50 - max_integrity = 50 var/energy = 0 var/obj/effect/spacevine_controller/master = null var/list/mutations = list() -/obj/structure/spacevine/New() - ..() - add_atom_colour("#ffffff", FIXED_COLOUR_PRIORITY) - -/obj/structure/spacevine/examine(mob/user) - ..() - var/text = "This one is a" - if(mutations.len) - for(var/A in mutations) - var/datum/spacevine_mutation/SM = A - text += " [SM.name]" - else - text += " normal" - text += " vine." - user << text - -/obj/structure/spacevine/Destroy() +/obj/effect/spacevine/Destroy() for(var/datum/spacevine_mutation/SM in mutations) SM.on_death(src) if(master) @@ -352,15 +356,15 @@ if(!master.vines.len) var/obj/item/seeds/kudzu/KZ = new(loc) KZ.mutations |= mutations - KZ.potency = min(100, master.mutativeness * 10) + KZ.potency = min(100, master.mutativness * 10) KZ.production = (master.spread_cap / initial(master.spread_cap)) * 50 mutations = list() - SetOpacity(0) + set_opacity(0) if(has_buckled_mobs()) unbuckle_all_mobs(force=1) return ..() -/obj/structure/spacevine/proc/on_chem_effect(datum/reagent/R) +/obj/effect/spacevine/proc/on_chem_effect(datum/reagent/R) var/override = 0 for(var/datum/spacevine_mutation/SM in mutations) override += SM.on_chem(src, R) @@ -368,7 +372,7 @@ if(prob(50)) qdel(src) -/obj/structure/spacevine/proc/eat(mob/eater) +/obj/effect/spacevine/proc/eat(mob/eater) var/override = 0 for(var/datum/spacevine_mutation/SM in mutations) override += SM.on_eat(src, eater) @@ -377,77 +381,68 @@ eater.say("Nom") qdel(src) -/obj/structure/spacevine/attackby(obj/item/weapon/W, mob/user, params) - - if(istype(W, /obj/item/weapon/scythe)) - user.changeNext_move(CLICK_CD_MELEE) - for(var/obj/structure/spacevine/B in orange(1,src)) - B.take_damage(W.force * 4, BRUTE, "melee", 1) +/obj/effect/spacevine/attackby(obj/item/weapon/W, mob/user, params) + if (!W || !user || !W.type) return - else - return ..() + user.changeNext_move(CLICK_CD_MELEE) - -/obj/structure/spacevine/attacked_by(obj/item/I, mob/living/user) - var/damage_dealt = I.force - if(I.is_sharp()) - damage_dealt *= 4 - if(I.damtype == BURN) - damage_dealt *= 4 + var/override = W.force + if(W.is_sharp()) + override = 100 + if(istype(W, /obj/item/weapon/scythe)) + var/local_override = override + for(var/obj/effect/spacevine/B in orange(1,src)) + for(var/datum/spacevine_mutation/SM in mutations) + local_override = SM.on_hit(src, user, W, local_override) + if(prob(local_override)) + qdel(B) for(var/datum/spacevine_mutation/SM in mutations) - damage_dealt = SM.on_hit(src, user, I, damage_dealt) //on_hit now takes override damage as arg and returns new value for other mutations to permutate further - take_damage(damage_dealt, I.damtype, "melee", 1) + override = SM.on_hit(src, user, W, override) //on_hit now takes override damage as arg and returns new value for other mutations to permutate further -/obj/structure/spacevine/play_attack_sound(damage_amount, damage_type = BRUTE, damage_flag = 0) - switch(damage_type) - if(BRUTE) - if(damage_amount) - playsound(src, 'sound/weapons/slash.ogg', 50, 1) - else - playsound(src, 'sound/weapons/tap.ogg', 50, 1) - if(BURN) - playsound(src.loc, 'sound/items/Welder.ogg', 100, 1) + if(prob(override)) + qdel(src) -/obj/structure/spacevine/Crossed(mob/crosser) + ..() + +/obj/effect/spacevine/Crossed(mob/crosser) if(isliving(crosser)) for(var/datum/spacevine_mutation/SM in mutations) SM.on_cross(src, crosser) -/obj/structure/spacevine/attack_hand(mob/user) +/obj/effect/spacevine/attack_hand(mob/user) for(var/datum/spacevine_mutation/SM in mutations) SM.on_hit(src, user) user_unbuckle_mob(user, user) -/obj/structure/spacevine/attack_paw(mob/living/user) +/obj/effect/spacevine/attack_paw(mob/living/user) + user.do_attack_animation(src) for(var/datum/spacevine_mutation/SM in mutations) SM.on_hit(src, user) user_unbuckle_mob(user,user) -/obj/structure/spacevine/attack_alien(mob/living/user) +/obj/effect/spacevine/attack_alien(mob/living/user) eat(user) /obj/effect/spacevine_controller invisibility = INVISIBILITY_ABSTRACT - var/list/obj/structure/spacevine/vines = list() + var/list/obj/effect/spacevine/vines = list() var/list/growth_queue = list() var/spread_multiplier = 5 var/spread_cap = 30 var/list/mutations_list = list() - var/mutativeness = 1 + var/mutativness = 1 -/obj/effect/spacevine_controller/New(loc, list/muts, potency, production) - add_atom_colour("#ffffff", FIXED_COLOUR_PRIORITY) +/obj/effect/spacevine_controller/New(loc, list/muts, mttv, spreading) spawn_spacevine_piece(loc, , muts) START_PROCESSING(SSobj, src) init_subtypes(/datum/spacevine_mutation/, mutations_list) - if(potency != null) - mutativeness = potency / 10 - if(production != null) - spread_cap *= production / 5 - spread_multiplier /= production / 5 - ..() + if(mttv != null) + mutativness = mttv / 10 + if(spreading != null) + spread_cap *= spreading / 50 + spread_multiplier /= spreading / 50 /obj/effect/spacevine_controller/ex_act() //only killing all vines will end this suffering return @@ -462,29 +457,32 @@ STOP_PROCESSING(SSobj, src) return ..() -/obj/effect/spacevine_controller/proc/spawn_spacevine_piece(turf/location, obj/structure/spacevine/parent, list/muts) - var/obj/structure/spacevine/SV = new(location) +/obj/effect/spacevine_controller/proc/spawn_spacevine_piece(turf/location, obj/effect/spacevine/parent, list/muts) + var/obj/effect/spacevine/SV = new(location) growth_queue += SV vines += SV SV.master = src if(muts && muts.len) - for(var/datum/spacevine_mutation/M in muts) - M.add_mutation_to_vinepiece(SV) - return + SV.mutations |= muts if(parent) SV.mutations |= parent.mutations - var/parentcolor = parent.atom_colours[FIXED_COLOUR_PRIORITY] - SV.add_atom_colour(parentcolor, FIXED_COLOUR_PRIORITY) - if(prob(mutativeness)) - var/datum/spacevine_mutation/randmut = pick(mutations_list - SV.mutations) - randmut.add_mutation_to_vinepiece(SV) + SV.color = parent.color + SV.desc = parent.desc + if(prob(mutativness)) + SV.mutations |= pick(mutations_list) + var/datum/spacevine_mutation/randmut = pick(SV.mutations) + SV.color = randmut.hue + SV.desc = "An extremely expansionistic species of vine. These are " + for(var/datum/spacevine_mutation/M in SV.mutations) + SV.desc += "[M.name] " + SV.desc += "vines." for(var/datum/spacevine_mutation/SM in SV.mutations) SM.on_birth(SV) /obj/effect/spacevine_controller/process() if(!vines) - qdel(src) //space vines exterminated. Remove the controller + qdel(src) //space vines exterminated. Remove the controller return if(!growth_queue) qdel(src) //Sanity check @@ -494,9 +492,9 @@ length = min( spread_cap , max( 1 , vines.len / spread_multiplier ) ) var/i = 0 - var/list/obj/structure/spacevine/queue_end = list() + var/list/obj/effect/spacevine/queue_end = list() - for(var/obj/structure/spacevine/SV in growth_queue) + for( var/obj/effect/spacevine/SV in growth_queue ) if(qdeleted(SV)) continue i++ @@ -517,11 +515,11 @@ growth_queue = growth_queue + queue_end -/obj/structure/spacevine/proc/grow() +/obj/effect/spacevine/proc/grow() if(!energy) src.icon_state = pick("Med1", "Med2", "Med3") energy = 1 - SetOpacity(1) + set_opacity(1) else src.icon_state = pick("Hvy1", "Hvy2", "Hvy3") energy = 2 @@ -529,35 +527,35 @@ for(var/datum/spacevine_mutation/SM in mutations) SM.on_grow(src) -/obj/structure/spacevine/proc/entangle_mob() +/obj/effect/spacevine/proc/entangle_mob() if(!has_buckled_mobs() && prob(25)) for(var/mob/living/V in src.loc) entangle(V) - if(has_buckled_mobs()) + if(buckled_mobs.len) break //only capture one mob at a time -/obj/structure/spacevine/proc/entangle(mob/living/V) - if(!V || isvineimmune(V)) +/obj/effect/spacevine/proc/entangle(mob/living/V) + if(!V) return for(var/datum/spacevine_mutation/SM in mutations) SM.on_buckle(src, V) if((V.stat != DEAD) && (V.buckled != src)) //not dead or captured V << "The vines [pick("wind", "tangle", "tighten")] around you!" - buckle_mob(V, 1) + buckle_mob(V) -/obj/structure/spacevine/proc/spread() +/obj/effect/spacevine/proc/spread() var/direction = pick(cardinal) var/turf/stepturf = get_step(src,direction) for(var/datum/spacevine_mutation/SM in mutations) SM.on_spread(src, stepturf) stepturf = get_step(src,direction) //in case turf changes, to make sure no runtimes happen - if(!locate(/obj/structure/spacevine, stepturf)) + if(!locate(/obj/effect/spacevine, stepturf)) if(stepturf.Enter(src)) if(master) master.spawn_spacevine_piece(stepturf, src) -/obj/structure/spacevine/ex_act(severity, target) +/obj/effect/spacevine/ex_act(severity, target) if(istype(target, type)) //if its agressive spread vine dont do anything return var/i @@ -566,22 +564,9 @@ if(!i && prob(100/severity)) qdel(src) -/obj/structure/spacevine/temperature_expose(null, temp, volume) +/obj/effect/spacevine/temperature_expose(null, temp, volume) var/override = 0 for(var/datum/spacevine_mutation/SM in mutations) override += SM.process_temperature(src, temp, volume) if(!override) qdel(src) - -/obj/structure/spacevine/CanPass(atom/movable/mover, turf/target, height=0) - if(isvineimmune(mover)) - . = TRUE - else - . = ..() - -/proc/isvineimmune(atom/A) - . = FALSE - if(isliving(A)) - var/mob/living/M = A - if(("vines" in M.faction) || ("plants" in M.faction)) - . = TRUE diff --git a/code/modules/events/spider_infestation.dm b/code/modules/events/spider_infestation.dm index 4a49461757..3893ba48ee 100644 --- a/code/modules/events/spider_infestation.dm +++ b/code/modules/events/spider_infestation.dm @@ -29,9 +29,8 @@ while((spawncount >= 1) && vents.len) var/obj/vent = pick(vents) - var/spawn_type = /obj/structure/spider/spiderling + var/obj/effect/spider/spiderling/S = new(vent.loc) if(prob(66)) - spawn_type = /obj/structure/spider/spiderling/nurse - spawn_atom_to_turf(spawn_type, vent, 1, FALSE) + S.grow_as = /mob/living/simple_animal/hostile/poison/giant_spider/nurse vents -= vent - spawncount-- + spawncount-- \ No newline at end of file diff --git a/code/modules/events/vent_clog.dm b/code/modules/events/vent_clog.dm index d56d61b22b..4355549b47 100644 --- a/code/modules/events/vent_clog.dm +++ b/code/modules/events/vent_clog.dm @@ -10,7 +10,7 @@ var/interval = 2 var/list/vents = list() var/list/gunk = list("water","carbon","flour","radium","toxin","cleaner","nutriment","condensedcapsaicin","mushroomhallucinogen","lube", - "plantbgone","banana","charcoal","space_drugs","morphine","holywater","ethanol","hot_coco","sacid") + "plantbgone","banana","charcoal","space_drugs","morphine","holywater","ethanol","hot_coco","facid") /datum/round_event/vent_clog/announce() priority_announce("The scrubbers network is experiencing a backpressure surge. Some ejection of contents may occur.", "Atmospherics alert") diff --git a/code/modules/events/wizard/aid.dm b/code/modules/events/wizard/aid.dm index fc37888411..b472ab9796 100644 --- a/code/modules/events/wizard/aid.dm +++ b/code/modules/events/wizard/aid.dm @@ -3,7 +3,7 @@ /datum/round_event_control/wizard/robelesscasting //EI NUDTH! name = "Robeless Casting" weight = 2 - typepath = /datum/round_event/wizard/robelesscasting + typepath = /datum/round_event/wizard/robelesscasting/ max_occurrences = 1 earliest_start = 0 @@ -24,7 +24,7 @@ /datum/round_event_control/wizard/improvedcasting //blink x5 disintergrate x5 here I come! name = "Improved Casting" weight = 3 - typepath = /datum/round_event/wizard/improvedcasting + typepath = /datum/round_event/wizard/improvedcasting/ max_occurrences = 4 //because that'd be max level spells earliest_start = 0 diff --git a/code/modules/events/wizard/blobies.dm b/code/modules/events/wizard/blobies.dm index 6953370e45..2f9f04053f 100644 --- a/code/modules/events/wizard/blobies.dm +++ b/code/modules/events/wizard/blobies.dm @@ -1,7 +1,7 @@ /datum/round_event_control/wizard/blobies //avast! name = "Zombie Outbreak" weight = 3 - typepath = /datum/round_event/wizard/blobies + typepath = /datum/round_event/wizard/blobies/ max_occurrences = 3 earliest_start = 12000 // 20 minutes (gotta get some bodies made!) diff --git a/code/modules/events/wizard/curseditems.dm b/code/modules/events/wizard/curseditems.dm index 099639d202..49895449ee 100644 --- a/code/modules/events/wizard/curseditems.dm +++ b/code/modules/events/wizard/curseditems.dm @@ -1,7 +1,7 @@ /datum/round_event_control/wizard/cursed_items //fashion disasters name = "Cursed Items" weight = 3 - typepath = /datum/round_event/wizard/cursed_items + typepath = /datum/round_event/wizard/cursed_items/ max_occurrences = 3 earliest_start = 0 @@ -11,7 +11,7 @@ /datum/round_event/wizard/cursed_items/start() var/item_set = pick("wizardmimic", "swords", "bigfatdoobie", "boxing", "voicemodulators", "catgirls2015") - var/list/wearslots = list(slot_wear_suit, slot_shoes, slot_head, slot_wear_mask, slot_gloves, slot_ears) + var/list/wearslots = list(slot_wear_suit, slot_shoes, slot_head, slot_wear_mask, slot_r_hand, slot_gloves, slot_ears) var/list/loadout = list() var/ruins_spaceworthiness var/ruins_wizard_loadout @@ -19,12 +19,12 @@ switch(item_set) if("wizardmimic") - loadout = list(/obj/item/clothing/suit/wizrobe, /obj/item/clothing/shoes/sandal/magic, /obj/item/clothing/head/wizard) + loadout = list(/obj/item/clothing/suit/wizrobe, /obj/item/clothing/shoes/sandal, /obj/item/clothing/head/wizard) ruins_spaceworthiness = 1 if("swords") loadout[5] = /obj/item/weapon/katana/cursed if("bigfatdoobie") - loadout[4] = /obj/item/clothing/mask/cigarette/rollie/trippy + loadout[4] = /obj/item/clothing/mask/cigarette/rollie/trippy/ ruins_spaceworthiness = 1 if("boxing") loadout[4] = /obj/item/clothing/mask/luchador @@ -38,14 +38,14 @@ ruins_wizard_loadout = 1 for(var/mob/living/carbon/human/H in living_mob_list) - if(ruins_spaceworthiness && (H.z != 1 || isspaceturf(H.loc) || isplasmaman(H))) + if(ruins_spaceworthiness && (H.z != 1 || istype(H.loc, /turf/open/space))) continue //#savetheminers if(ruins_wizard_loadout && H.mind && ((H.mind in ticker.mode.wizards) || (H.mind in ticker.mode.apprentices))) continue if(item_set == "catgirls2015") //Wizard code means never having to say you're sorry H.gender = FEMALE - var/list/slots = list(H.wear_suit, H.shoes, H.head, H.wear_mask, H.gloves, H.ears) //add new slots as needed to back - for(var/i in 1 to loadout.len) + var/list/slots = list(H.wear_suit, H.shoes, H.head, H.wear_mask, H.r_hand, H.gloves, H.ears) //add new slots as needed to back + for(var/i = 1, i <= loadout.len, i++) if(loadout[i]) var/obj/item/J = loadout[i] var/obj/item/I = new J //dumb but required because of byond throwing a fit anytime new gets too close to a list diff --git a/code/modules/events/wizard/departmentrevolt.dm b/code/modules/events/wizard/departmentrevolt.dm index 0774aaaeb4..0408f97169 100644 --- a/code/modules/events/wizard/departmentrevolt.dm +++ b/code/modules/events/wizard/departmentrevolt.dm @@ -1,7 +1,7 @@ /datum/round_event_control/wizard/deprevolt //stationwide! name = "Departmental Uprising" weight = 0 //An order that requires order in a round of chaos was maybe not the best idea. Requiescat in pace departmental uprising August 2014 - March 2015 - typepath = /datum/round_event/wizard/deprevolt + typepath = /datum/round_event/wizard/deprevolt/ max_occurrences = 1 earliest_start = 0 diff --git a/code/modules/events/wizard/fakeexplosion.dm b/code/modules/events/wizard/fakeexplosion.dm index 770f876e68..3b2dfe80a0 100644 --- a/code/modules/events/wizard/fakeexplosion.dm +++ b/code/modules/events/wizard/fakeexplosion.dm @@ -1,7 +1,7 @@ /datum/round_event_control/wizard/fake_explosion //Oh no the station is gone! name = "Fake Nuclear Explosion" weight = 0 //Badmin exclusive now because once it's expected its not funny - typepath = /datum/round_event/wizard/fake_explosion + typepath = /datum/round_event/wizard/fake_explosion/ max_occurrences = 1 earliest_start = 0 diff --git a/code/modules/events/wizard/ghost.dm b/code/modules/events/wizard/ghost.dm index 9f0e41d885..bb60ee2521 100644 --- a/code/modules/events/wizard/ghost.dm +++ b/code/modules/events/wizard/ghost.dm @@ -1,7 +1,7 @@ /datum/round_event_control/wizard/ghost //The spook is real name = "G-G-G-Ghosts!" weight = 3 - typepath = /datum/round_event/wizard/ghost + typepath = /datum/round_event/wizard/ghost/ max_occurrences = 5 earliest_start = 0 diff --git a/code/modules/events/wizard/greentext.dm b/code/modules/events/wizard/greentext.dm index 202dee5a13..a35e1d6c2d 100644 --- a/code/modules/events/wizard/greentext.dm +++ b/code/modules/events/wizard/greentext.dm @@ -1,7 +1,7 @@ /datum/round_event_control/wizard/greentext //Gotta have it! name = "Greentext" weight = 4 - typepath = /datum/round_event/wizard/greentext + typepath = /datum/round_event/wizard/greentext/ max_occurrences = 1 earliest_start = 0 @@ -22,13 +22,13 @@ /obj/item/weapon/greentext name = "greentext" desc = "No one knows what this massive tome does, but it feels desirable all the same..." - w_class = WEIGHT_CLASS_BULKY + w_class = 4 icon = 'icons/obj/wizard.dmi' icon_state = "greentext" var/mob/living/last_holder var/mob/living/new_holder var/list/color_altered_mobs = list() - resistance_flags = FIRE_PROOF | ACID_PROOF + burn_state = FIRE_PROOF var/quiet = FALSE /obj/item/weapon/greentext/New() @@ -44,14 +44,14 @@ last_holder = user if(!(user in color_altered_mobs)) color_altered_mobs += user - user.add_atom_colour("#00FF00", ADMIN_COLOUR_PRIORITY) + user.color = "#00FF00" START_PROCESSING(SSobj, src) ..() /obj/item/weapon/greentext/dropped(mob/living/user as mob) if(user in color_altered_mobs) user << "A sudden wave of failure washes over you..." - user.add_atom_colour("#FF0000", ADMIN_COLOUR_PRIORITY) //ya blew it + user.color = "#FF0000" //ya blew it last_holder = null new_holder = null STOP_PROCESSING(SSobj, src) @@ -69,16 +69,16 @@ new_holder.mind.objectives += O new_holder.attack_log += "\[[time_stamp()]\] Won with greentext!!!" color_altered_mobs -= new_holder - resistance_flags |= ON_FIRE + burn_state = ON_FIRE qdel(src) if(last_holder && last_holder != new_holder) //Somehow it was swiped without ever getting dropped last_holder << "A sudden wave of failure washes over you..." - last_holder.add_atom_colour("#FF0000", ADMIN_COLOUR_PRIORITY) + last_holder.color = "#FF0000" last_holder = new_holder //long live the king /obj/item/weapon/greentext/Destroy(force) - if(!(resistance_flags & ON_FIRE) && !force) + if((burn_state != ON_FIRE) && (!force)) return QDEL_HINT_LETMELIVE . = ..() @@ -87,8 +87,7 @@ var/message = "A dark temptation has passed from this world" if(M in color_altered_mobs) message += " and you're finally able to forgive yourself" - if(M.color == "#FF0000" || M.color == "#00FF00") - M.remove_atom_colour(ADMIN_COLOUR_PRIORITY) + M.color = initial(M.color) message += "..." // can't skip the mob check as it also does the decolouring if(!quiet) diff --git a/code/modules/events/wizard/imposter.dm b/code/modules/events/wizard/imposter.dm index b579ee834f..15b07a1c12 100644 --- a/code/modules/events/wizard/imposter.dm +++ b/code/modules/events/wizard/imposter.dm @@ -1,7 +1,7 @@ /datum/round_event_control/wizard/imposter //Mirror Mania name = "Imposter Wizard" weight = 1 - typepath = /datum/round_event/wizard/imposter + typepath = /datum/round_event/wizard/imposter/ max_occurrences = 1 earliest_start = 0 diff --git a/code/modules/events/wizard/invincible.dm b/code/modules/events/wizard/invincible.dm index 8bc43b158f..b2cc9a803b 100644 --- a/code/modules/events/wizard/invincible.dm +++ b/code/modules/events/wizard/invincible.dm @@ -1,7 +1,7 @@ /datum/round_event_control/wizard/invincible //Boolet Proof name = "Invincibility" weight = 3 - typepath = /datum/round_event/wizard/invincible + typepath = /datum/round_event/wizard/invincible/ max_occurrences = 5 earliest_start = 0 diff --git a/code/modules/events/wizard/lava.dm b/code/modules/events/wizard/lava.dm index f33fecf669..42cae888fc 100644 --- a/code/modules/events/wizard/lava.dm +++ b/code/modules/events/wizard/lava.dm @@ -1,15 +1,15 @@ /datum/round_event_control/wizard/lava //THE LEGEND NEVER DIES name = "The Floor Is LAVA!" weight = 2 - typepath = /datum/round_event/wizard/lava + typepath = /datum/round_event/wizard/lava/ max_occurrences = 3 earliest_start = 0 -/datum/round_event/wizard/lava +/datum/round_event/wizard/lava/ endWhen = 0 var/started = FALSE /datum/round_event/wizard/lava/start() if(!started) started = TRUE - SSweather.run_weather("the floor is lava") + SSweather.run_weather("the floor is lava") \ No newline at end of file diff --git a/code/modules/events/wizard/magicarp.dm b/code/modules/events/wizard/magicarp.dm index 0266304728..aba0bccfb4 100644 --- a/code/modules/events/wizard/magicarp.dm +++ b/code/modules/events/wizard/magicarp.dm @@ -1,11 +1,11 @@ /datum/round_event_control/wizard/magicarp //these fish is loaded name = "Magicarp" weight = 1 - typepath = /datum/round_event/wizard/magicarp + typepath = /datum/round_event/wizard/magicarp/ max_occurrences = 1 earliest_start = 0 -/datum/round_event/wizard/magicarp +/datum/round_event/wizard/magicarp/ announceWhen = 3 startWhen = 50 diff --git a/code/modules/events/wizard/petsplosion.dm b/code/modules/events/wizard/petsplosion.dm index 30d6d631ac..d99793778d 100644 --- a/code/modules/events/wizard/petsplosion.dm +++ b/code/modules/events/wizard/petsplosion.dm @@ -1,11 +1,11 @@ /datum/round_event_control/wizard/petsplosion //the horror name = "Petsplosion" weight = 2 - typepath = /datum/round_event/wizard/petsplosion + typepath = /datum/round_event/wizard/petsplosion/ max_occurrences = 1 //Exponential growth is nothing to sneeze at! earliest_start = 0 -/datum/round_event/wizard/petsplosion +/datum/round_event/wizard/petsplosion/ endWhen = 61 //1 minute (+1 tick for endWhen not to interfere with tick) var/countdown = 0 @@ -13,5 +13,5 @@ if(activeFor >= 30 * countdown) // 0 seconds : 2 animals | 30 seconds : 4 animals | 1 minute : 8 animals countdown += 1 for(var/mob/living/simple_animal/F in living_mob_list) //If you cull the heard before the next replication, things will be easier for you - if(!ishostile(F)) + if(!istype(F, /mob/living/simple_animal/hostile)) new F.type(F.loc) \ No newline at end of file diff --git a/code/modules/events/wizard/race.dm b/code/modules/events/wizard/race.dm index 46f420e380..cb4f4896f1 100644 --- a/code/modules/events/wizard/race.dm +++ b/code/modules/events/wizard/race.dm @@ -1,7 +1,7 @@ /datum/round_event_control/wizard/race //Lizard Wizard? Lizard Wizard. name = "Race Swap" weight = 2 - typepath = /datum/round_event/wizard/race + typepath = /datum/round_event/wizard/race/ max_occurrences = 5 earliest_start = 0 diff --git a/code/modules/events/wizard/rpgloot.dm b/code/modules/events/wizard/rpgloot.dm index 5481f0745d..076c8821bf 100644 --- a/code/modules/events/wizard/rpgloot.dm +++ b/code/modules/events/wizard/rpgloot.dm @@ -1,7 +1,7 @@ /datum/round_event_control/wizard/rpgloot //its time to minmax your shit name = "RPG Loot" weight = 3 - typepath = /datum/round_event/wizard/rpgloot + typepath = /datum/round_event/wizard/rpgloot/ max_occurrences = 1 earliest_start = 0 @@ -30,7 +30,7 @@ if(istype(I,/obj/item/weapon/storage)) var/obj/item/weapon/storage/S = I - if(prob(upgrade_scroll_chance) && S.contents.len < S.storage_slots && !S.invisibility) + if(prob(upgrade_scroll_chance) && S.contents.len < S.storage_slots) var/obj/item/upgradescroll/scroll = new S.handle_item_insertion(scroll,1) upgrade_scroll_chance = max(0,upgrade_scroll_chance-100) @@ -41,7 +41,7 @@ desc = "Somehow, this piece of paper can be applied to items to make them \"better\". Apparently there's a risk of losing the item if it's already \"too good\". This all feels so arbitrary..." icon = 'icons/obj/wizard.dmi' icon_state = "scroll" - w_class = WEIGHT_CLASS_TINY + w_class = 1 /obj/item/upgradescroll/afterattack(obj/item/target, mob/user , proximity) if(!proximity || !istype(target)) @@ -49,9 +49,8 @@ var/quality = target.force - initial(target.force) if(quality > 9 && prob((quality - 9)*10)) user << "[target] catches fire!" - if(target.resistance_flags & (LAVA_PROOF|FIRE_PROOF)) - target.resistance_flags &= ~(LAVA_PROOF|FIRE_PROOF) - target.resistance_flags |= FLAMMABLE + if(target.burn_state == -1) + target.burn_state = 0 target.fire_act() qdel(src) return diff --git a/code/modules/events/wizard/shuffle.dm b/code/modules/events/wizard/shuffle.dm index 145c099066..74076112f1 100644 --- a/code/modules/events/wizard/shuffle.dm +++ b/code/modules/events/wizard/shuffle.dm @@ -4,7 +4,7 @@ /datum/round_event_control/wizard/shuffleloc //Somewhere an AI is crying name = "Change Places!" weight = 2 - typepath = /datum/round_event/wizard/shuffleloc + typepath = /datum/round_event/wizard/shuffleloc/ max_occurrences = 5 earliest_start = 0 @@ -40,7 +40,7 @@ /datum/round_event_control/wizard/shufflenames //Face/off joke name = "Change Faces!" weight = 4 - typepath = /datum/round_event/wizard/shufflenames + typepath = /datum/round_event/wizard/shufflenames/ max_occurrences = 5 earliest_start = 0 @@ -74,7 +74,7 @@ /datum/round_event_control/wizard/shuffleminds //Basically Mass Ranged Mindswap name = "Change Minds!" weight = 1 - typepath = /datum/round_event/wizard/shuffleminds + typepath = /datum/round_event/wizard/shuffleminds/ max_occurrences = 3 earliest_start = 0 @@ -82,7 +82,7 @@ var/list/mobs = list() for(var/mob/living/carbon/human/H in living_mob_list) - if(H.stat || !H.mind || (H.mind in ticker.mode.wizards) || (H.mind in ticker.mode.apprentices)) + if(!H.stat || !H.mind || (H.mind in ticker.mode.wizards) || (H.mind in ticker.mode.apprentices)) continue //the wizard(s) are spared on this one mobs += H @@ -91,7 +91,7 @@ shuffle(mobs) - var/obj/effect/proc_holder/spell/targeted/mind_transfer/swapper = new /obj/effect/proc_holder/spell/targeted/mind_transfer + var/obj/effect/proc_holder/spell/targeted/mind_transfer/swapper = new /obj/effect/proc_holder/spell/targeted/mind_transfer/ while(mobs.len > 1) var/mob/living/carbon/human/H = pick(mobs) mobs -= H diff --git a/code/modules/events/wizard/summons.dm b/code/modules/events/wizard/summons.dm index dfdcd889ca..7b3e27e16c 100644 --- a/code/modules/events/wizard/summons.dm +++ b/code/modules/events/wizard/summons.dm @@ -1,7 +1,7 @@ /datum/round_event_control/wizard/summonguns //The Classic name = "Summon Guns" weight = 1 - typepath = /datum/round_event/wizard/summonguns + typepath = /datum/round_event/wizard/summonguns/ max_occurrences = 1 earliest_start = 0 @@ -16,7 +16,7 @@ /datum/round_event_control/wizard/summonmagic //The Somewhat Less Classic name = "Summon Magic" weight = 1 - typepath = /datum/round_event/wizard/summonmagic + typepath = /datum/round_event/wizard/summonmagic/ max_occurrences = 1 earliest_start = 0 diff --git a/code/modules/flufftext/Hallucination.dm b/code/modules/flufftext/Hallucination.dm index 96fe7d6c23..ad237db5be 100644 --- a/code/modules/flufftext/Hallucination.dm +++ b/code/modules/flufftext/Hallucination.dm @@ -11,7 +11,7 @@ Gunshots/explosions/opening doors/less rare audio (done) */ -/mob/living/carbon +/mob/living/carbon/ var/image/halimage var/image/halbody var/obj/halitem @@ -206,18 +206,6 @@ Gunshots/explosions/opening doors/less rare audio (done) target << "[xeno_name] scrambles into the ventilation ducts!" qdel(src) -/obj/effect/hallucination/simple/clown - image_icon = 'icons/mob/animal.dmi' - image_state = "clown" - -/obj/effect/hallucination/simple/clown/New(loc,var/mob/living/carbon/T,duration) - ..(loc, T) - name = pick(clown_names) - QDEL_IN(src,duration) - -/obj/effect/hallucination/simple/clown/scary - image_state = "scary_clown" - /obj/effect/hallucination/singularity_scare //Singularity moving towards you. //todo Hide where it moved with fake space images @@ -315,12 +303,11 @@ Gunshots/explosions/opening doors/less rare audio (done) if(target.client) delusions |= A target.client.images |= A - QDEL_IN(src, duration) - -/obj/effect/hallucination/delusion/Destroy() + sleep(duration) for(var/image/I in delusions) if(target.client) target.client.images.Remove(I) + qdel(src) /obj/effect/hallucination/fakeattacker/New(loc,var/mob/living/carbon/T) target = T @@ -337,10 +324,14 @@ Gunshots/explosions/opening doors/less rare audio (done) return var/obj/effect/fake_attacker/F = new/obj/effect/fake_attacker(get_turf(target),target) - for(var/obj/item/I in clone.held_items) - if(!(locate(I) in non_fakeattack_weapons)) - clone_weapon = I.name - F.weap = I + if(clone.l_hand) + if(!(locate(clone.l_hand) in non_fakeattack_weapons)) + clone_weapon = clone.l_hand.name + F.weap = clone.l_hand + else if (clone.r_hand) + if(!(locate(clone.r_hand) in non_fakeattack_weapons)) + clone_weapon = clone.r_hand.name + F.weap = clone.r_hand F.name = clone.name F.my_target = target @@ -376,7 +367,7 @@ Gunshots/explosions/opening doors/less rare audio (done) var/collapse var/image/down - obj_integrity = 100 + var/health = 100 /obj/effect/fake_attacker/attackby(obj/item/weapon/P, mob/living/user, params) step_away(src,my_target,2) @@ -386,7 +377,7 @@ Gunshots/explosions/opening doors/less rare audio (done) my_target.visible_message("[my_target] flails around wildly.", \ "[my_target] has attacked [src]!") - obj_integrity -= P.force + src.health -= P.force /obj/effect/fake_attacker/Crossed(mob/M, somenumber) if(M == my_target) @@ -423,7 +414,7 @@ Gunshots/explosions/opening doors/less rare audio (done) /obj/effect/fake_attacker/proc/attack_loop() while(1) sleep(rand(5,10)) - if(obj_integrity < 0) + if(src.health < 0) collapse() continue if(get_dist(src,my_target) > 1) @@ -432,7 +423,7 @@ Gunshots/explosions/opening doors/less rare audio (done) updateimage() else if(prob(15)) - do_attack_animation(my_target, ATTACK_EFFECT_PUNCH) + src.do_attack_animation(my_target) if(weapon_name) my_target << sound(pick('sound/weapons/genhit1.ogg', 'sound/weapons/genhit2.ogg', 'sound/weapons/genhit3.ogg')) my_target.show_message("[src.name] has attacked [my_target] with [weapon_name]!", 1) @@ -464,7 +455,7 @@ Gunshots/explosions/opening doors/less rare audio (done) target << I QDEL_IN(O, 300) -var/list/non_fakeattack_weapons = list(/obj/item/weapon/gun/ballistic, /obj/item/ammo_box/a357,\ +var/list/non_fakeattack_weapons = list(/obj/item/weapon/gun/projectile, /obj/item/ammo_box/a357,\ /obj/item/weapon/gun/energy/kinetic_accelerator/crossbow, /obj/item/weapon/melee/energy/sword/saber,\ /obj/item/weapon/storage/box/syndicate, /obj/item/weapon/storage/box/emps,\ /obj/item/weapon/cartridge/syndicate, /obj/item/clothing/under/chameleon,\ @@ -628,14 +619,10 @@ var/list/non_fakeattack_weapons = list(/obj/item/weapon/gun/ballistic, /obj/item //src << "Traitor Items" if(!halitem) halitem = new - var/obj/item/l_hand = get_item_for_held_index(1) - var/obj/item/r_hand = get_item_for_held_index(2) - var/l = ui_hand_position(get_held_index_of_item(l_hand)) - var/r = ui_hand_position(get_held_index_of_item(r_hand)) - var/list/slots_free = list(l,r) - if(l_hand) slots_free -= l - if(r_hand) slots_free -= r - if(ishuman(src)) + var/list/slots_free = list(ui_lhand,ui_rhand) + if(l_hand) slots_free -= ui_lhand + if(r_hand) slots_free -= ui_rhand + if(istype(src,/mob/living/carbon/human)) var/mob/living/carbon/human/H = src if(!H.belt) slots_free += ui_belt if(!H.l_store) slots_free += ui_storage1 @@ -643,7 +630,6 @@ var/list/non_fakeattack_weapons = list(/obj/item/weapon/gun/ballistic, /obj/item if(slots_free.len) halitem.screen_loc = pick(slots_free) halitem.layer = ABOVE_HUD_LAYER - halitem.plane = ABOVE_HUD_PLANE switch(rand(1,6)) if(1) //revolver halitem.icon = 'icons/obj/guns/projectile.dmi' diff --git a/code/modules/flufftext/TextFilters.dm b/code/modules/flufftext/TextFilters.dm index f10e92940b..ead3f0b0f5 100644 --- a/code/modules/flufftext/TextFilters.dm +++ b/code/modules/flufftext/TextFilters.dm @@ -1,4 +1,4 @@ - +//This file was auto-corrected by findeclaration.exe on 25.5.2012 20:42:32 //is this shit even used at all /proc/NewStutter(phrase,stunned) diff --git a/code/modules/food_and_drinks/drinks/drinks.dm b/code/modules/food_and_drinks/drinks/drinks.dm index 847b5f6062..c600fe3e20 100644 --- a/code/modules/food_and_drinks/drinks/drinks.dm +++ b/code/modules/food_and_drinks/drinks/drinks.dm @@ -10,7 +10,7 @@ var/gulp_size = 5 //This is now officially broken ... need to think of a nice way to fix it. possible_transfer_amounts = list(5,10,15,20,25,30,50) volume = 50 - resistance_flags = 0 + burn_state = FIRE_PROOF /obj/item/weapon/reagent_containers/food/drinks/New() ..() @@ -74,10 +74,10 @@ var/trans = src.reagents.trans_to(target, amount_per_transfer_from_this) user << "You transfer [trans] units of the solution to [target]." - if(iscyborg(user)) //Cyborg modules that include drinks automatically refill themselves, but drain the borg's cell + if(isrobot(user)) //Cyborg modules that include drinks automatically refill themselves, but drain the borg's cell var/mob/living/silicon/robot/bro = user bro.cell.use(30) - addtimer(reagents, "add_reagent", 600, TIMER_NORMAL, refill, trans) + addtimer(reagents, "add_reagent", 600, FALSE, refill, trans) /obj/item/weapon/reagent_containers/food/drinks/attackby(obj/item/I, mob/user, params) if(I.is_hot()) @@ -96,7 +96,7 @@ name = "pewter cup" desc = "Everyone gets a trophy." icon_state = "pewter_cup" - w_class = WEIGHT_CLASS_TINY + w_class = 1 force = 1 throwforce = 1 amount_per_transfer_from_this = 5 @@ -105,13 +105,12 @@ volume = 5 flags = CONDUCT | OPENCONTAINER spillable = 1 - resistance_flags = FIRE_PROOF /obj/item/weapon/reagent_containers/food/drinks/trophy/gold_cup name = "gold cup" desc = "You're winner!" icon_state = "golden_cup" - w_class = WEIGHT_CLASS_BULKY + w_class = 4 force = 14 throwforce = 10 amount_per_transfer_from_this = 20 @@ -122,7 +121,7 @@ name = "silver cup" desc = "Best loser!" icon_state = "silver_cup" - w_class = WEIGHT_CLASS_NORMAL + w_class = 3 force = 10 throwforce = 8 amount_per_transfer_from_this = 15 @@ -134,7 +133,7 @@ name = "bronze cup" desc = "At least you ranked!" icon_state = "bronze_cup" - w_class = WEIGHT_CLASS_SMALL + w_class = 2 force = 5 throwforce = 4 amount_per_transfer_from_this = 10 @@ -216,44 +215,6 @@ else icon_state = "water_cup_e" -/obj/item/weapon/reagent_containers/food/drinks/sillycup/smallcarton - name = "small carton" - desc = "A small carton, intended for holding drinks." - icon_state = "juicebox" - volume = 15 //I figure if you have to craft these it should at least be slightly better than something you can get for free from a watercooler - -/obj/item/weapon/reagent_containers/food/drinks/sillycup/smallcarton/on_reagent_change() - if (reagents.reagent_list.len) - switch(reagents.get_master_reagent_id()) - if("orangejuice") - icon_state = "orangebox" - name = "orange juice box" - desc = "A great source of vitamins. Stay healthy!" - if("milk") - icon_state = "milkbox" - name = "carton of milk" - desc = "An excellent source of calcium for growing space explorers." - if("applejuice") - icon_state = "juicebox" - name = "apple juice box" - desc = "Sweet apple juice. Don't be late for school!" - if("grapejuice") - icon_state = "grapebox" - name = "grape juice box" - desc = "Tasty grape juice in a fun little container. Non-alcoholic!" - if("chocolate_milk") - icon_state = "chocolatebox" - name = "carton of chocolate milk" - desc = "Milk for cool kids!" - if("eggnog") - icon_state = "nog2" - name = "carton of eggnog" - desc = "For enjoying the most wonderful time of the year." - else - icon_state = "juicebox" - name = "small carton" - desc = "A small carton, intended for holding drinks." - //////////////////////////drinkingglass and shaker// @@ -295,17 +256,6 @@ volume = 30 spillable = 1 -///Lavaland bowls and bottles/// - -/obj/item/weapon/reagent_containers/food/drinks/mushroom_bowl - name = "mushroom bowl" - desc = "A bowl made out of mushrooms. Not food, though it might have contained some at some point." - icon = 'icons/obj/lavaland/ash_flora.dmi' - icon_state = "mushroom_bowl" - w_class = WEIGHT_CLASS_SMALL - resistance_flags = 0 - - //////////////////////////soda_cans// //These are in their own group to be used as IED's in /obj/item/weapon/grenade/ghettobomb.dm @@ -313,8 +263,8 @@ name = "soda can" /obj/item/weapon/reagent_containers/food/drinks/soda_cans/attack(mob/M, mob/user) - if(M == user && !src.reagents.total_volume && user.a_intent == INTENT_HARM && user.zone_selected == "head") - user.visible_message("[user] crushes the can of [src] on [user.p_their()] forehead!", "You crush the can of [src] on your forehead.") + if(M == user && !src.reagents.total_volume && user.a_intent == "harm" && user.zone_selected == "head") + user.visible_message("[user] crushes the can of [src] on \his forehead!", "You crush the can of [src] on your forehead.") playsound(user.loc,'sound/weapons/pierce.ogg', rand(10,50), 1) var/obj/item/trash/can/crushed_can = new /obj/item/trash/can(user.loc) crushed_can.icon_state = icon_state @@ -378,5 +328,3 @@ desc = "A delicious mixture of 42 different flavors." icon_state = "dr_gibb" list_reagents = list("dr_gibb" = 30) - - diff --git a/code/modules/food_and_drinks/drinks/drinks/bottle.dm b/code/modules/food_and_drinks/drinks/drinks/bottle.dm index dbbf7cdff5..b60417bac2 100644 --- a/code/modules/food_and_drinks/drinks/drinks/bottle.dm +++ b/code/modules/food_and_drinks/drinks/drinks/bottle.dm @@ -53,7 +53,7 @@ if(!target) return - if(user.a_intent != INTENT_HARM || !isGlass) + if(user.a_intent != "harm" || !isGlass) return ..() @@ -109,8 +109,8 @@ target.visible_message("[user] has hit [target][head_attack_message] with a bottle of [src.name]!", \ "[user] has hit [target][head_attack_message] with a bottle of [src.name]!") else - user.visible_message("[target] hits [target.p_them()]self with a bottle of [src.name][head_attack_message]!", \ - "[target] hits [target.p_them()]self with a bottle of [src.name][head_attack_message]!") + user.visible_message("[target] hits \himself with a bottle of [src.name][head_attack_message]!", \ + "[target] hits \himself with a bottle of [src.name][head_attack_message]!") //Attack logs add_logs(user, target, "attacked", src) @@ -125,7 +125,7 @@ /obj/item/weapon/reagent_containers/food/drinks/bottle/proc/SplashReagents(var/mob/M) if(src.reagents.total_volume) - M.visible_message("The contents of [src] splashes all over [M]!") + M.visible_message("The contents of \the [src] splashes all over [M]!") reagents.reaction(M, TOUCH) reagents.clear_reagents() return @@ -140,7 +140,7 @@ throwforce = 5 throw_speed = 3 throw_range = 5 - w_class = WEIGHT_CLASS_TINY + w_class = 1 item_state = "beer" hitsound = 'sound/weapons/bladeslice.ogg' attack_verb = list("stabbed", "slashed", "attacked") @@ -301,12 +301,6 @@ volume = 50 list_reagents = list("hcider" = 50) -/obj/item/weapon/reagent_containers/food/drinks/bottle/grappa - name = "Phillipes well-aged Grappa" - desc = "Bottle of Grappa." - icon_state = "grappabottle" - list_reagents = list("grappa" = 100) - //////////////////////////JUICES AND STUFF /////////////////////// /obj/item/weapon/reagent_containers/food/drinks/bottle/orangejuice @@ -381,12 +375,10 @@ active = 1 var/turf/bombturf = get_turf(src) var/area/bombarea = get_area(bombturf) - var/message = "[ADMIN_LOOKUP(user)] has primed a [name] for detonation at [ADMIN_COORDJMP(bombturf)]." - bombers += message - message_admins(message) - log_game("[key_name(user)] has primed a [name] for detonation at [bombarea] [COORD(bombturf)].") + message_admins("[key_name(user)]? has primed a [name] for detonation at [bombarea] (JMP).") + log_game("[key_name(user)] has primed a [name] for detonation at [bombarea] ([bombturf.x],[bombturf.y],[bombturf.z]).") - user << "You light [src] on fire." + user << "You light \the [src] on fire." add_overlay(fire_overlay) if(!isGlass) spawn(50) @@ -408,6 +400,6 @@ if(!isGlass) user << "The flame's spread too far on it!" return - user << "You snuff out the flame on [src]." + user << "You snuff out the flame on \the [src]." overlays -= fire_overlay active = 0 diff --git a/code/modules/food_and_drinks/drinks/drinks/drinkingglass.dm b/code/modules/food_and_drinks/drinks/drinks/drinkingglass.dm index b4d56b3b6f..baf2dbf350 100644 --- a/code/modules/food_and_drinks/drinks/drinks/drinkingglass.dm +++ b/code/modules/food_and_drinks/drinks/drinks/drinkingglass.dm @@ -7,11 +7,21 @@ amount_per_transfer_from_this = 10 volume = 50 materials = list(MAT_GLASS=500) - obj_integrity = 20 - max_integrity = 20 + burn_state = FLAMMABLE + burntime = 5 spillable = 1 - resistance_flags = ACID_PROOF - unique_rename = 1 + +/obj/item/weapon/reagent_containers/food/drinks/drinkingglass/fire_act() + if(!reagents.total_volume) + return + ..() + +/obj/item/weapon/reagent_containers/food/drinks/drinkingglass/burn() + reagents.total_volume = 0 //Burns away all the alcohol :( + reagents.reagent_list.Cut() + on_reagent_change() + extinguish() + return /obj/item/weapon/reagent_containers/food/drinks/drinkingglass/on_reagent_change() cut_overlays() @@ -332,7 +342,7 @@ if("andalusia") icon_state = "andalusia" name = "Andalusia" - desc = "A nice, strangely named drink." + desc = "A nice, strange named drink." if("sbiten") icon_state = "sbitenglass" name = "Sbiten" @@ -340,11 +350,11 @@ if("red_mead") icon_state = "red_meadglass" name = "Red Mead" - desc = "A True Viking's Beverage, though its color is strange." + desc = "A True Vikings Beverage, though its color is strange." if("mead") icon_state = "meadglass" name = "Mead" - desc = "A Viking's Beverage, though a cheap one." + desc = "A Vikings Beverage, though a cheap one." if("iced_beer") icon_state = "iced_beerglass" name = "Iced Beer" @@ -452,7 +462,7 @@ if("chocolatepudding") icon_state = "chocolatepudding" name = "Chocolate Pudding" - desc = "Tasty." + desc = "" if("vanillapudding") icon_state = "vanillapudding" name = "Vanilla Pudding" @@ -505,18 +515,6 @@ icon_state = "whiskeyglass" name = "Hard Cider" desc = "Tastes like autumn." - if("triple_citrus") - icon_state = "triplecitrus" //needs own sprite mine are trash - name = "glass of triple citrus" - desc = "A mixture of citrus juices. Tangy, yet smooth." - if("grappa") - icon_state = "grappa" - name = "glass of grappa" - desc = "A fine drink originally made to prevent waste by using the leftovers from winemaking." - if("eggnog") - icon_state = "glass_yellow" - name = "Eggnog" - desc = "For enjoying the most wonderful time of the year." else icon_state ="glass_brown" var/image/I = image(icon, "glassoverlay") @@ -570,7 +568,7 @@ if("hcider") icon_state = "shotglassbrown" name = "shot of hard cider" - desc = "Not meant to be drunk from a shot glass." + desc = "Not meant to be drinken from a shot glass." if("rum") icon_state = "shotglassbrown" name = "shot of rum" @@ -663,7 +661,7 @@ ..() /obj/item/weapon/reagent_containers/food/drinks/drinkingglass/attack(obj/target, mob/user) - if(user.a_intent == INTENT_HARM && ismob(target) && target.reagents && reagents.total_volume) + if(user.a_intent == "harm" && ismob(target) && target.reagents && reagents.total_volume) target.visible_message("[user] splashes the contents of [src] onto [target]!", \ "[user] splashes the contents of [src] onto [target]!") add_logs(user, target, "splashed", src) @@ -676,7 +674,7 @@ if((!proximity) || !check_allowed_items(target,target_self=1)) return - else if(reagents.total_volume && user.a_intent == INTENT_HARM) + else if(reagents.total_volume && user.a_intent == "harm") user.visible_message("[user] splashes the contents of [src] onto [target]!", \ "You splash the contents of [src] onto [target].") reagents.reaction(target, TOUCH) diff --git a/code/modules/food_and_drinks/food.dm b/code/modules/food_and_drinks/food.dm index 4a05510ff0..53afb299cf 100644 --- a/code/modules/food_and_drinks/food.dm +++ b/code/modules/food_and_drinks/food.dm @@ -4,7 +4,7 @@ /obj/item/weapon/reagent_containers/food possible_transfer_amounts = list() volume = 50 //Sets the default container amount for all food items. - resistance_flags = FLAMMABLE + burn_state = FLAMMABLE /obj/item/weapon/reagent_containers/food/New() ..() diff --git a/code/modules/food_and_drinks/food/condiment.dm b/code/modules/food_and_drinks/food/condiment.dm index 9d597bb266..9f5ed9a028 100644 --- a/code/modules/food_and_drinks/food/condiment.dm +++ b/code/modules/food_and_drinks/food/condiment.dm @@ -125,7 +125,7 @@ possible_states = list() /obj/item/weapon/reagent_containers/food/condiment/saltshaker/suicide_act(mob/user) - user.visible_message("[user] begins to swap forms with the salt shaker! It looks like [user.p_theyre()] trying to commit suicide!") + user.visible_message("[user] begins to swap forms with the salt shaker! It looks like \he's trying to commit suicide.") var/newname = "[name]" name = "[user.name]" user.name = newname @@ -134,17 +134,14 @@ return (TOXLOSS) /obj/item/weapon/reagent_containers/food/condiment/saltshaker/afterattack(obj/target, mob/living/user, proximity) - if(!proximity) + if(!proximity || !isturf(target)) return - if(isturf(target)) - if(!reagents.has_reagent("sodiumchloride", 2)) - user << "You don't have enough salt to make a pile!" - return - user.visible_message("[user] shakes some salt onto [target].", "You shake some salt onto [target].") - reagents.remove_reagent("sodiumchloride", 2) - new/obj/effect/decal/cleanable/salt(target) + if(!reagents.has_reagent("sodiumchloride", 2)) + user << "You don't have enough salt to make a pile!" return - ..() + user.visible_message("[user] shakes some salt onto [target].", "You shake some salt onto [target].") + reagents.remove_reagent("sodiumchloride", 2) + new/obj/effect/decal/cleanable/salt(target) /obj/item/weapon/reagent_containers/food/condiment/peppermill name = "pepper mill" diff --git a/code/modules/food_and_drinks/food/customizables.dm b/code/modules/food_and_drinks/food/customizables.dm index 62b6e86d9e..d97d9da0e2 100644 --- a/code/modules/food_and_drinks/food/customizables.dm +++ b/code/modules/food_and_drinks/food/customizables.dm @@ -13,9 +13,8 @@ /obj/item/weapon/reagent_containers/food/snacks/customizable bitesize = 4 - w_class = WEIGHT_CLASS_SMALL + w_class = 3 volume = 80 - unique_rename = 1 var/ingMax = 12 var/list/ingredients = list() @@ -37,19 +36,18 @@ user << "It contains [ingredients.len?"[ingredients_listed]":"no ingredient, "]making a [size]-sized [initial(name)]." /obj/item/weapon/reagent_containers/food/snacks/customizable/attackby(obj/item/I, mob/user, params) - if(!istype(I, /obj/item/weapon/reagent_containers/food/snacks/customizable) && istype(I,/obj/item/weapon/reagent_containers/food/snacks)) + if(istype(I,/obj/item/weapon/reagent_containers/food/snacks)) var/obj/item/weapon/reagent_containers/food/snacks/S = I - if(I.w_class > WEIGHT_CLASS_SMALL) + if(I.w_class > 2) user << "The ingredient is too big for [src]!" else if((ingredients.len >= ingMax) || (reagents.total_volume >= volume)) user << "You can't add more ingredients to [src]!" - else if(istype(I, /obj/item/weapon/reagent_containers/food/snacks/pizzaslice/custom) || istype(I, /obj/item/weapon/reagent_containers/food/snacks/cakeslice/custom)) - user << "Adding [I.name] to [src] would make a mess." else if(!user.unEquip(I)) return if(S.trash) - S.generate_trash(get_turf(user)) + new S.trash(get_turf(user)) + S.trash = null //we remove the plate before adding the ingredient ingredients += S S.loc = src mix_filling_color(S) @@ -57,6 +55,19 @@ update_overlays(S) user << "You add the [I.name] to the [name]." update_name(S) + else if(istype(I, /obj/item/weapon/pen)) + var/txt = stripped_input(user, "What would you like the food to be called?", "Food Naming", "", 30) + if(txt) + ingMax = ingredients.len + user << "You add a last touch to the dish by renaming it." + customname = txt + if(istype(src, /obj/item/weapon/reagent_containers/food/snacks/customizable/sandwich)) + var/obj/item/weapon/reagent_containers/food/snacks/customizable/sandwich/S = src + if(S.finished) + name = "[customname] sandwich" + return + name = "[customname] [initial(name)]" + else . = ..() @@ -282,18 +293,20 @@ // Bowl //////////////////////////////////////////////// /obj/item/weapon/reagent_containers/glass/bowl + name = "bowl" + icon_state = "snack_bowl" name = "bowl" desc = "A simple bowl, used for soups and salads." icon = 'icons/obj/food/soupsalad.dmi' icon_state = "bowl" flags = OPENCONTAINER materials = list(MAT_GLASS = 500) - w_class = WEIGHT_CLASS_NORMAL + w_class = 3 /obj/item/weapon/reagent_containers/glass/bowl/attackby(obj/item/I,mob/user, params) if(istype(I,/obj/item/weapon/reagent_containers/food/snacks)) var/obj/item/weapon/reagent_containers/food/snacks/S = I - if(I.w_class > WEIGHT_CLASS_SMALL) + if(I.w_class > 2) user << "The ingredient is too big for [src]!" else if(contents.len >= 20) user << "You can't add more ingredients to [src]!" diff --git a/code/modules/food_and_drinks/food/snacks.dm b/code/modules/food_and_drinks/food/snacks.dm index 937a2d5f4d..714e6d4eaa 100644 --- a/code/modules/food_and_drinks/food/snacks.dm +++ b/code/modules/food_and_drinks/food/snacks.dm @@ -3,7 +3,6 @@ desc = "Yummy." icon = 'icons/obj/food/food.dmi' icon_state = null - unique_rename = 1 var/bitesize = 2 var/bitecount = 0 var/trash = null @@ -26,9 +25,19 @@ return if(!reagents.total_volume) usr.unEquip(src) //so icons update :[ - var/obj/item/trash_item = generate_trash(usr) - usr.put_in_hands(trash_item) + + if(trash) + if(ispath(trash, /obj/item/weapon/grown) && istype(src, /obj/item/weapon/reagent_containers/food/snacks/grown)) + var/obj/item/weapon/reagent_containers/food/snacks/grown/G = src + var/obj/item/TrashItem = new trash(usr, G.seed) + usr.put_in_hands(TrashItem) + else if(ispath(trash,/obj/item)) + var/obj/item/TrashItem = new trash(usr) + usr.put_in_hands(TrashItem) + else if(istype(trash,/obj/item)) + usr.put_in_hands(trash) qdel(src) + return /obj/item/weapon/reagent_containers/food/snacks/attack_self(mob/user) @@ -36,7 +45,7 @@ /obj/item/weapon/reagent_containers/food/snacks/attack(mob/M, mob/user, def_zone) - if(user.a_intent == INTENT_HARM) + if(user.a_intent == "harm") return ..() if(!eatverb) eatverb = pick("bite","chew","nibble","gnaw","gobble","chomp") @@ -127,10 +136,10 @@ if(istype(W,/obj/item/weapon/reagent_containers/food/snacks)) var/obj/item/weapon/reagent_containers/food/snacks/S = W if(custom_food_type && ispath(custom_food_type)) - if(S.w_class > WEIGHT_CLASS_SMALL) + if(S.w_class > 2) user << "[S] is too big for [src]!" return 0 - if(!S.customfoodfilling || istype(W, /obj/item/weapon/reagent_containers/food/snacks/customizable) || istype(W, /obj/item/weapon/reagent_containers/food/snacks/pizzaslice/custom) || istype(W, /obj/item/weapon/reagent_containers/food/snacks/cakeslice/custom)) + if(!S.customfoodfilling) user << "[src] can't be filled with [S]!" return 0 if(contents.len >= 20) @@ -143,22 +152,19 @@ if(sharp) if(slice(sharp, W, user)) return 1 - else - ..() //Called when you finish tablecrafting a snack. -/obj/item/weapon/reagent_containers/food/snacks/CheckParts(list/parts_list, datum/crafting_recipe/food/R) +/obj/item/weapon/reagent_containers/food/snacks/CheckParts(list/parts_list, datum/crafting_recipe/R) ..() reagents.reagent_list.Cut() for(var/obj/item/weapon/reagent_containers/RC in contents) RC.reagents.trans_to(reagents, RC.reagents.maximum_volume) - if(istype(R)) - contents_loop: - for(var/A in contents) - for(var/B in R.real_parts) - if(istype(A, B)) - continue contents_loop - qdel(A) + contents_loop: + for(var/A in contents) + for(var/B in initial(R.parts)) + if(istype(A, B)) + continue contents_loop + qdel(A) feedback_add_details("food_made","[type]") if(bonus_reagents.len) for(var/r_id in bonus_reagents) @@ -202,19 +208,6 @@ reagents.trans_to(slice,reagents_per_slice) return -/obj/item/weapon/reagent_containers/food/snacks/proc/generate_trash(atom/location) - if(trash) - if(ispath(trash, /obj/item)) - . = new trash(location) - trash = null - return - else if(istype(trash, /obj/item)) - var/obj/item/trash_item = trash - trash_item.forceMove(location) - . = trash - trash = null - return - /obj/item/weapon/reagent_containers/food/snacks/proc/update_overlays(obj/item/weapon/reagent_containers/food/snacks/S) cut_overlays() var/image/I = new(src.icon, "[initial(icon_state)]_filling") @@ -235,20 +228,6 @@ var/amount = S.bonus_reagents[r_id] * cooking_efficiency S.reagents.add_reagent(r_id, amount) -/obj/item/weapon/reagent_containers/food/snacks/microwave_act(obj/machinery/microwave/M) - if(cooked_type) - var/obj/item/weapon/reagent_containers/food/snacks/S = new cooked_type(get_turf(src)) - if(M) - initialize_cooked_food(S, M.efficiency) - else - initialize_cooked_food(S, 1) - feedback_add_details("food_made","[type]") - else - new /obj/item/weapon/reagent_containers/food/snacks/badrecipe(src) - if(M && M.dirty < 100) - M.dirty++ - qdel(src) - /obj/item/weapon/reagent_containers/food/snacks/Destroy() if(contents) for(var/atom/movable/something in contents) @@ -302,12 +281,12 @@ /obj/item/weapon/reagent_containers/food/snacks/store - w_class = WEIGHT_CLASS_NORMAL + w_class = 3 var/stored_item = 0 /obj/item/weapon/reagent_containers/food/snacks/store/attackby(obj/item/weapon/W, mob/user, params) ..() - if(W.w_class <= WEIGHT_CLASS_SMALL & !istype(W, /obj/item/weapon/reagent_containers/food/snacks)) //can't slip snacks inside, they're used for custom foods. + if(W.w_class <= 2 & !istype(W, /obj/item/weapon/reagent_containers/food/snacks)) //can't slip snacks inside, they're used for custom foods. if(W.is_sharp()) return 0 if(stored_item) diff --git a/code/modules/food_and_drinks/food/snacks/dough.dm b/code/modules/food_and_drinks/food/snacks/dough.dm index 7e0939a08a..866a3d6fa1 100644 --- a/code/modules/food_and_drinks/food/snacks/dough.dm +++ b/code/modules/food_and_drinks/food/snacks/dough.dm @@ -9,7 +9,7 @@ icon_state = "dough" cooked_type = /obj/item/weapon/reagent_containers/food/snacks/store/bread/plain list_reagents = list("nutriment" = 6) - w_class = WEIGHT_CLASS_NORMAL + w_class = 3 // Dough + rolling pin = flat dough @@ -35,7 +35,7 @@ slices_num = 3 cooked_type = /obj/item/weapon/reagent_containers/food/snacks/pizzabread list_reagents = list("nutriment" = 6) - w_class = WEIGHT_CLASS_NORMAL + w_class = 3 /obj/item/weapon/reagent_containers/food/snacks/pizzabread name = "pizza bread" @@ -44,7 +44,7 @@ icon_state = "pizzabread" custom_food_type = /obj/item/weapon/reagent_containers/food/snacks/customizable/pizza list_reagents = list("nutriment" = 7) - w_class = WEIGHT_CLASS_NORMAL + w_class = 3 /obj/item/weapon/reagent_containers/food/snacks/doughslice @@ -72,7 +72,7 @@ icon_state = "cakebatter" cooked_type = /obj/item/weapon/reagent_containers/food/snacks/store/cake/plain list_reagents = list("nutriment" = 9) - w_class = WEIGHT_CLASS_NORMAL + w_class = 3 // Cake batter + rolling pin = pie dough /obj/item/weapon/reagent_containers/food/snacks/cakebatter/attackby(obj/item/I, mob/user, params) @@ -95,7 +95,7 @@ slices_num = 3 cooked_type = /obj/item/weapon/reagent_containers/food/snacks/pie/plain list_reagents = list("nutriment" = 9) - w_class = WEIGHT_CLASS_NORMAL + w_class = 3 /obj/item/weapon/reagent_containers/food/snacks/rawpastrybase name = "raw pastry base" diff --git a/code/modules/food_and_drinks/food/snacks/meat.dm b/code/modules/food_and_drinks/food/snacks/meat.dm index 6b9f93f573..b225b736d7 100644 --- a/code/modules/food_and_drinks/food/snacks/meat.dm +++ b/code/modules/food_and_drinks/food/snacks/meat.dm @@ -177,8 +177,9 @@ icon_state = "goliathmeat" /obj/item/weapon/reagent_containers/food/snacks/meat/slab/goliath/burn() - visible_message("[src] finishes cooking!") - new /obj/item/weapon/reagent_containers/food/snacks/meat/steak/goliath/(loc) + visible_message("\The [src] finishes cooking!") + new/obj/item/weapon/reagent_containers/food/snacks/meat/steak/goliath/(src.loc) + SSobj.burning -= src qdel(src) /obj/item/weapon/reagent_containers/food/snacks/meat/slab/meatwheat @@ -237,7 +238,7 @@ /obj/item/weapon/reagent_containers/food/snacks/meat/steak/goliath name = "goliath steak" desc = "A delicious, lava cooked steak." - resistance_flags = LAVA_PROOF | FIRE_PROOF + burn_state = LAVA_PROOF icon_state = "goliathsteak" trash = null @@ -288,6 +289,7 @@ name = "raw spider cutlet" cooked_type = /obj/item/weapon/reagent_containers/food/snacks/meat/cutlet/spider + //Cooked cutlets /obj/item/weapon/reagent_containers/food/snacks/meat/cutlet @@ -313,4 +315,5 @@ name = "xeno cutlet" /obj/item/weapon/reagent_containers/food/snacks/meat/cutlet/spider - name = "spider cutlet" \ No newline at end of file + name = "spider cutlet" + diff --git a/code/modules/food_and_drinks/food/snacks_bread.dm b/code/modules/food_and_drinks/food/snacks_bread.dm index cc2c98e998..8ff5e2681a 100644 --- a/code/modules/food_and_drinks/food/snacks_bread.dm +++ b/code/modules/food_and_drinks/food/snacks_bread.dm @@ -146,4 +146,4 @@ bonus_reagents = list("nutriment" = 2, "vitamin" = 2) list_reagents = list("nutriment" = 6, "vitamin" = 1) bitesize = 3 - w_class = WEIGHT_CLASS_NORMAL + w_class = 3 diff --git a/code/modules/food_and_drinks/food/snacks_burgers.dm b/code/modules/food_and_drinks/food/snacks_burgers.dm index 4324dba9fe..7aebb685cd 100644 --- a/code/modules/food_and_drinks/food/snacks_burgers.dm +++ b/code/modules/food_and_drinks/food/snacks_burgers.dm @@ -160,7 +160,7 @@ icon_state = "bigbiteburger" bonus_reagents = list("vitamin" = 6) list_reagents = list("nutriment" = 10, "vitamin" = 2) - w_class = WEIGHT_CLASS_NORMAL + w_class = 3 /obj/item/weapon/reagent_containers/food/snacks/burger/jelly name = "jelly burger" @@ -181,7 +181,7 @@ icon_state = "superbiteburger" bonus_reagents = list("vitamin" = 10) list_reagents = list("nutriment" = 40, "vitamin" = 5) - w_class = WEIGHT_CLASS_NORMAL + w_class = 3 bitesize = 7 volume = 100 @@ -198,14 +198,8 @@ icon_state = "ratburger" bonus_reagents = list("nutriment" = 1, "vitamin" = 1) -/obj/item/weapon/reagent_containers/food/snacks/burger/baseball - name = "home run baseball burger" - desc = "It's still warm. The steam coming off of it looks like baseball." - icon_state = "baseball" - bonus_reagents = list("nutriment" = 1, "vitamin" = 1) - /obj/item/weapon/reagent_containers/food/snacks/burger/baconburger name = "bacon burger" desc = "The perfect combination of all things American." icon_state = "baconburger" - bonus_reagents = list("nutriment" = 8, "vitamin" = 1) + bonus_reagents = list("nutriment" = 8, "vitamin" = 1) \ No newline at end of file diff --git a/code/modules/food_and_drinks/food/snacks_egg.dm b/code/modules/food_and_drinks/food/snacks_egg.dm index df17ef8790..5f481bb291 100644 --- a/code/modules/food_and_drinks/food/snacks_egg.dm +++ b/code/modules/food_and_drinks/food/snacks_egg.dm @@ -96,7 +96,7 @@ bonus_reagents = list("nutriment" = 1, "vitamin" = 2) list_reagents = list("nutriment" = 8, "vitamin" = 1) bitesize = 1 - w_class = WEIGHT_CLASS_NORMAL + w_class = 3 /obj/item/weapon/reagent_containers/food/snacks/omelette/attackby(obj/item/weapon/W, mob/user, params) if(istype(W,/obj/item/weapon/kitchen/fork)) @@ -122,5 +122,5 @@ icon_state = "benedict" bonus_reagents = list("vitamin" = 4) trash = /obj/item/trash/plate - w_class = WEIGHT_CLASS_NORMAL + w_class = 3 list_reagents = list("nutriment" = 6, "vitamin" = 4) \ No newline at end of file diff --git a/code/modules/food_and_drinks/food/snacks_meat.dm b/code/modules/food_and_drinks/food/snacks_meat.dm index 0321dedc4d..7564deda44 100644 --- a/code/modules/food_and_drinks/food/snacks_meat.dm +++ b/code/modules/food_and_drinks/food/snacks_meat.dm @@ -101,7 +101,7 @@ /obj/item/weapon/reagent_containers/food/snacks/kebab trash = /obj/item/stack/rods icon_state = "kebab" - w_class = WEIGHT_CLASS_NORMAL + w_class = 3 list_reagents = list("nutriment" = 8) /obj/item/weapon/reagent_containers/food/snacks/kebab/human diff --git a/code/modules/food_and_drinks/food/snacks_other.dm b/code/modules/food_and_drinks/food/snacks_other.dm index bbe7f208f6..babef42915 100644 --- a/code/modules/food_and_drinks/food/snacks_other.dm +++ b/code/modules/food_and_drinks/food/snacks_other.dm @@ -8,7 +8,7 @@ slice_path = /obj/item/weapon/reagent_containers/food/snacks/cheesewedge slices_num = 5 list_reagents = list("nutriment" = 15, "vitamin" = 5) - w_class = WEIGHT_CLASS_NORMAL + w_class = 3 /obj/item/weapon/reagent_containers/food/snacks/cheesewedge name = "cheese wedge" @@ -72,13 +72,6 @@ list_reagents = list("nutriment" = 4) filling_color = "#FFD700" -/obj/item/weapon/reagent_containers/food/snacks/tatortot - name = "tator tot" - desc = "A large fried potato nugget that may or may not try to valid you" - icon_state = "tatortot" - list_reagents = list("nutriment" = 4) - filling_color = "FFD700" - /obj/item/weapon/reagent_containers/food/snacks/soydope name = "soy dope" desc = "Dope from a soy." @@ -249,7 +242,7 @@ bonus_reagents = list("nutriment" = 2, "vitamin" = 2) list_reagents = list("nutriment" = 6, "vitamin" = 4) filling_color = "#FF5500" - w_class = WEIGHT_CLASS_NORMAL + w_class = 3 /obj/item/weapon/reagent_containers/food/snacks/spacefreezy name = "space freezy" @@ -322,99 +315,4 @@ desc = "The former skull of a damned human, filled with goliath meat. It has a decorative lava pool made of ketchup and hotsauce." icon_state = "stuffed_legion" bonus_reagents = list("vitamin" = 3, "capsaicin" = 1, "tricordrazine" = 5) - list_reagents = list("nutriment" = 5, "vitamin" = 5, "capsaicin" = 2, "tricordrazine" = 10) - - -/obj/item/weapon/reagent_containers/food/snacks/powercrepe - name = "Powercrepe" - desc = "With great power, comes great crepes. It looks like a pancake filled with jelly but packs quite a punch." - icon_state = "powercrepe" - bonus_reagents = list("nutriment" = 5, "vitamin" = 3, "iron" = 10) - list_reagents = list("nutriment" = 10, "vitamin" = 5, "cherryjelly" = 5) - force = 20 - throwforce = 10 - block_chance = 50 - armour_penetration = 75 - attack_verb = list("slapped", "slathered") - w_class = WEIGHT_CLASS_BULKY - -/obj/item/weapon/reagent_containers/food/snacks/lollipop - name = "lollipop" - desc = "A delicious lollipop. Makes for a great Valentine's present." - icon = 'icons/obj/lollipop.dmi' - icon_state = "lollipop_stick" - list_reagents = list("nutriment" = 1, "vitamin" = 1, "iron" = 10, "sugar" = 5, "omnizine" = 2) //Honk - var/image/head - var/headcolor = rgb(0, 0, 0) - -/obj/item/weapon/reagent_containers/food/snacks/lollipop/New() - ..() - head = image(icon = 'icons/obj/lollipop.dmi', icon_state = "lollipop_head") - change_head_color(rgb(rand(0, 255), rand(0, 255), rand(0, 255))) - -/obj/item/weapon/reagent_containers/food/snacks/lollipop/proc/change_head_color(C) - headcolor = C - if(head in overlays) - overlays -= head - head.color = C - add_overlay(head) - -/obj/item/weapon/reagent_containers/food/snacks/lollipop/throw_impact(atom/A) - ..(A) - throw_speed = 1 - throwforce = 0 - -/obj/item/weapon/reagent_containers/food/snacks/lollipop/cyborg - var/spamchecking = TRUE - -/obj/item/weapon/reagent_containers/food/snacks/lollipop/cyborg/New() - ..() - addtimer(src, "spamcheck", 1200) - -/obj/item/weapon/reagent_containers/food/snacks/lollipop/cyborg/equipped(mob/living/user, slot) - . = ..(user, slot) - spamchecking = FALSE - -/obj/item/weapon/reagent_containers/food/snacks/lollipop/cyborg/proc/spamcheck() - if(spamchecking) - qdel(src) - -/obj/item/weapon/reagent_containers/food/snacks/gumball - name = "gumball" - desc = "A colorful, sugary gumball." - icon = 'icons/obj/lollipop.dmi' - icon_state = "gumball" - list_reagents = list("sugar" = 5, "bicaridine" = 2, "kelotane" = 2) //Kek - -/obj/item/weapon/reagent_containers/food/snacks/gumball/New() - ..() - color = rgb(rand(0, 255), rand(0, 255), rand(0, 255)) - -/obj/item/weapon/reagent_containers/food/snacks/gumball/cyborg - var/spamchecking = TRUE - -/obj/item/weapon/reagent_containers/food/snacks/gumball/cyborg/New() - ..() - addtimer(src, "spamcheck", 1200) - -/obj/item/weapon/reagent_containers/food/snacks/gumball/cyborg/equipped(mob/living/user, slot) - . = ..(user, slot) - spamchecking = FALSE - -/obj/item/weapon/reagent_containers/food/snacks/gumball/cyborg/proc/spamcheck() - if(spamchecking) - qdel(src) - -/obj/item/weapon/reagent_containers/food/snacks/taco - name = "taco" - desc = "A traditional taco with meat, cheese, and lettuce." - icon_state = "taco" - bonus_reagents = list("nutriment" = 3, "vitamin" = 2) - list_reagents = list("nutriment" = 4, "vitamin" = 2) - filling_color = "F0D830" - -/obj/item/weapon/reagent_containers/food/snacks/taco/plain - desc = "A traditional taco with meat and cheese, minus the rabbit food." - icon_state = "taco_plain" - bonus_reagents = list("nutriment" = 2, "vitamin" = 2) - list_reagents = list("nutriment" = 3, "vitamin" = 1) + list_reagents = list("nutriment" = 5, "vitamin" = 5, "capsaicin" = 2, "tricordrazine" = 10,) \ No newline at end of file diff --git a/code/modules/food_and_drinks/food/snacks_pastry.dm b/code/modules/food_and_drinks/food/snacks_pastry.dm index 58c6986808..8036dcdf3e 100644 --- a/code/modules/food_and_drinks/food/snacks_pastry.dm +++ b/code/modules/food_and_drinks/food/snacks_pastry.dm @@ -161,13 +161,6 @@ bonus_reagents = list("omnizine" = 3) list_reagents = list("nutriment" = 4, "omnizine" = 3) -/obj/item/weapon/reagent_containers/food/snacks/dankpocket - name = "\improper Dank-pocket" - desc = "The food of choice for the seasoned botanist." - icon_state = "dankpocket" - list_reagents = list("lipolicide" = 3, "space_drugs" = 3, "nutriment" = 4) - filling_color = "#00FF00" - /obj/item/weapon/reagent_containers/food/snacks/fortunecookie name = "fortune cookie" desc = "A true prophecy in each cookie!" diff --git a/code/modules/food_and_drinks/food/snacks_pie.dm b/code/modules/food_and_drinks/food/snacks_pie.dm index 2626c3b679..0a7cd72f42 100644 --- a/code/modules/food_and_drinks/food/snacks_pie.dm +++ b/code/modules/food_and_drinks/food/snacks_pie.dm @@ -3,7 +3,7 @@ icon = 'icons/obj/food/piecake.dmi' trash = /obj/item/trash/plate bitesize = 3 - w_class = WEIGHT_CLASS_NORMAL + w_class = 3 volume = 80 list_reagents = list("nutriment" = 10, "vitamin" = 2) diff --git a/code/modules/food_and_drinks/food/snacks_pizza.dm b/code/modules/food_and_drinks/food/snacks_pizza.dm index b701fb1916..b8d647e34a 100644 --- a/code/modules/food_and_drinks/food/snacks_pizza.dm +++ b/code/modules/food_and_drinks/food/snacks_pizza.dm @@ -3,7 +3,7 @@ /obj/item/weapon/reagent_containers/food/snacks/pizza icon = 'icons/obj/food/pizzaspaghetti.dmi' - w_class = WEIGHT_CLASS_NORMAL + w_class = 3 slices_num = 6 volume = 80 list_reagents = list("nutriment" = 30, "tomatojuice" = 6, "vitamin" = 5) diff --git a/code/modules/food_and_drinks/food/snacks_salad.dm b/code/modules/food_and_drinks/food/snacks_salad.dm index 5b0192d541..d98273c4fb 100644 --- a/code/modules/food_and_drinks/food/snacks_salad.dm +++ b/code/modules/food_and_drinks/food/snacks_salad.dm @@ -4,7 +4,7 @@ icon = 'icons/obj/food/soupsalad.dmi' trash = /obj/item/weapon/reagent_containers/glass/bowl bitesize = 3 - w_class = WEIGHT_CLASS_NORMAL + w_class = 3 list_reagents = list("nutriment" = 7, "vitamin" = 2) /obj/item/weapon/reagent_containers/food/snacks/salad/New() diff --git a/code/modules/food_and_drinks/food/snacks_sandwichtoast.dm b/code/modules/food_and_drinks/food/snacks_sandwichtoast.dm index 0bbd127c10..73b18e73a2 100644 --- a/code/modules/food_and_drinks/food/snacks_sandwichtoast.dm +++ b/code/modules/food_and_drinks/food/snacks_sandwichtoast.dm @@ -45,7 +45,7 @@ /obj/item/weapon/reagent_containers/food/snacks/icecreamsandwich name = "icecream sandwich" - desc = "Portable Ice-cream in its own packaging." + desc = "Portable Ice-cream in it's own packaging." icon = 'icons/obj/food/food.dmi' icon_state = "icecreamsandwich" bonus_reagents = list("nutriment" = 1, "ice" = 2) diff --git a/code/modules/food_and_drinks/food/snacks_soup.dm b/code/modules/food_and_drinks/food/snacks_soup.dm index 6ded3dfcc2..8248ab27ae 100644 --- a/code/modules/food_and_drinks/food/snacks_soup.dm +++ b/code/modules/food_and_drinks/food/snacks_soup.dm @@ -1,5 +1,5 @@ /obj/item/weapon/reagent_containers/food/snacks/soup - w_class = WEIGHT_CLASS_NORMAL + w_class = 3 icon = 'icons/obj/food/soupsalad.dmi' trash = /obj/item/weapon/reagent_containers/glass/bowl bitesize = 5 diff --git a/code/modules/food_and_drinks/kitchen_machinery/food_cart.dm b/code/modules/food_and_drinks/kitchen_machinery/food_cart.dm index 54acb1aa49..6ce7a8b179 100644 --- a/code/modules/food_and_drinks/kitchen_machinery/food_cart.dm +++ b/code/modules/food_and_drinks/kitchen_machinery/food_cart.dm @@ -25,12 +25,6 @@ mixer = new /obj/item/weapon/reagent_containers(src, MIXER_CAPACITY) mixer.name = "Mixer" -/obj/machinery/food_cart/Destroy() - if(mixer) - qdel(mixer) - mixer = null - return ..() - /obj/machinery/food_cart/attack_hand(mob/user) user.set_machine(src) interact(user) @@ -156,11 +150,6 @@ usr << browse(null,"window=foodcart") return -/obj/machinery/food_cart/deconstruct(disassembled = TRUE) - if(!(flags & NODECONSTRUCT)) - new /obj/item/stack/sheet/metal(loc, 4) - qdel(src) - #undef STORAGE_CAPACITY #undef LIQUID_CAPACIY #undef MIXER_CAPACITY diff --git a/code/modules/food_and_drinks/kitchen_machinery/gibber.dm b/code/modules/food_and_drinks/kitchen_machinery/gibber.dm index fa975e12ce..c846c7ff0c 100644 --- a/code/modules/food_and_drinks/kitchen_machinery/gibber.dm +++ b/code/modules/food_and_drinks/kitchen_machinery/gibber.dm @@ -62,7 +62,7 @@ /obj/machinery/gibber/RefreshParts() var/gib_time = 40 for(var/obj/item/weapon/stock_parts/matter_bin/B in component_parts) - meat_produced += B.rating + meat_produced += 3 * B.rating for(var/obj/item/weapon/stock_parts/manipulator/M in component_parts) gib_time -= 5 * M.rating gibtime = gib_time @@ -85,8 +85,9 @@ /obj/machinery/gibber/attack_paw(mob/user) return src.attack_hand(user) -/obj/machinery/gibber/container_resist(mob/living/user) - go_out() +/obj/machinery/gibber/container_resist() + src.go_out() + return /obj/machinery/gibber/attack_hand(mob/user) if(stat & (NOPOWER|BROKEN)) @@ -95,7 +96,7 @@ user << "It's locked and running." return - if(user.pulling && user.a_intent == INTENT_GRAB && isliving(user.pulling)) + if(user.pulling && user.a_intent == "grab" && isliving(user.pulling)) var/mob/living/L = user.pulling if(!iscarbon(L)) user << "This item is not suitable for the gibber!" @@ -203,11 +204,10 @@ var/obj/item/weapon/reagent_containers/food/snacks/meat/slab/newmeat = new typeofmeat var/obj/item/stack/sheet/animalhide/newskin = new typeofskin newmeat.name = "[sourcename] [newmeat.name]" - if(istype(newmeat)) - newmeat.subjectname = sourcename - newmeat.reagents.add_reagent ("nutriment", sourcenutriment / meat_produced) // Thehehe. Fat guys go first - if(sourcejob) - newmeat.subjectjob = sourcejob + newmeat.subjectname = sourcename + if(sourcejob) + newmeat.subjectjob = sourcejob + newmeat.reagents.add_reagent ("nutriment", sourcenutriment / meat_produced) // Thehehe. Fat guys go first src.occupant.reagents.trans_to (newmeat, round (sourcetotalreagents / meat_produced, 1)) // Transfer all the reagents from the allmeat[i] = newmeat allskin = newskin @@ -228,7 +228,7 @@ var/obj/item/meatslab = allmeat[i] meatslab.loc = src.loc meatslab.throw_at_fast(pick(nearby_turfs),i,3) - for (var/turfs=1 to meat_produced) + for (var/turfs=1 to meat_produced*3) var/turf/gibturf = pick(nearby_turfs) if (!gibturf.density && src in view(gibturf)) new gibtype(gibturf,i) diff --git a/code/modules/food_and_drinks/kitchen_machinery/icecream_vat.dm b/code/modules/food_and_drinks/kitchen_machinery/icecream_vat.dm index 56b4ec3f75..ea2fa786b1 100644 --- a/code/modules/food_and_drinks/kitchen_machinery/icecream_vat.dm +++ b/code/modules/food_and_drinks/kitchen_machinery/icecream_vat.dm @@ -18,8 +18,6 @@ var/dispense_flavour = ICECREAM_VANILLA var/flavour_name = "vanilla" flags = OPENCONTAINER - obj_integrity = 300 - max_integrity = 300 /obj/machinery/icecream_vat/proc/get_ingredient_list(type) switch(type) @@ -208,12 +206,6 @@ reagents.add_reagent("singulo", 2) ice_creamed = 1 -/obj/machinery/icecream_vat/deconstruct(disassembled = TRUE) - if(!(flags & NODECONSTRUCT)) - new /obj/item/stack/sheet/metal(loc, 4) - qdel(src) - - #undef ICECREAM_VANILLA #undef ICECREAM_CHOCOLATE #undef ICECREAM_STRAWBERRY diff --git a/code/modules/food_and_drinks/kitchen_machinery/juicer.dm b/code/modules/food_and_drinks/kitchen_machinery/juicer.dm index b732e1bf4d..19c3112b32 100644 --- a/code/modules/food_and_drinks/kitchen_machinery/juicer.dm +++ b/code/modules/food_and_drinks/kitchen_machinery/juicer.dm @@ -1,7 +1,6 @@ /obj/machinery/juicer name = "juicer" - desc = "a centrifugal juicer with two speeds: Juice and Separate." icon = 'icons/obj/kitchen.dmi' icon_state = "juicer1" layer = BELOW_OBJ_LAYER @@ -56,7 +55,7 @@ src.updateUsrDialog() return 0 if (!is_type_in_list(O, allowed_items)) - user << "This object contains no fluid or extractable reagents." + user << "It looks as not containing any juice." return 1 if(!user.unEquip(O)) user << "\the [O] is stuck to your hand, you cannot put it in \the [src]!" @@ -91,15 +90,15 @@ is_chamber_empty = 1 processing_chamber = "Nothing." if (!beaker) - beaker_contents = "\The [src] has no container attached." + beaker_contents = "\The [src] has no beaker attached." else if (!beaker.reagents.total_volume) - beaker_contents = "\The [src] has an empty [beaker] attached." + beaker_contents = "\The [src] has attached an empty beaker." is_beaker_ready = 1 else if (beaker.reagents.total_volume < beaker.reagents.maximum_volume) - beaker_contents = "\The [src] has a partially filled [beaker] attached." + beaker_contents = "\The [src] has attached a beaker with something." is_beaker_ready = 1 else - beaker_contents = "\The [src] has a completly filled [beaker] attached!" + beaker_contents = "\The [src] has attached a beaker and the beaker is full!" var/dat = {" Processing chamber contains:
    @@ -109,7 +108,7 @@ if (is_beaker_ready && !is_chamber_empty && !(stat & (NOPOWER|BROKEN))) dat += "Turn on!
    " if (beaker) - dat += "
    Detach the container!
    " + dat += "
    Detach a beaker!
    " user << browse("Juicer[dat]", "window=juicer") onclose(user, "juicer") return @@ -130,7 +129,7 @@ /obj/machinery/juicer/verb/detach() set category = "Object" - set name = "Detach container from the juicer" + set name = "Detach Beaker from the juicer" set src in oview(1) if(usr.stat || !usr.canmove || usr.restrained()) return diff --git a/code/modules/food_and_drinks/kitchen_machinery/microwave.dm b/code/modules/food_and_drinks/kitchen_machinery/microwave.dm index 8a392034b0..ce1f045bf2 100644 --- a/code/modules/food_and_drinks/kitchen_machinery/microwave.dm +++ b/code/modules/food_and_drinks/kitchen_machinery/microwave.dm @@ -26,7 +26,6 @@ create_reagents(100) var/obj/item/weapon/circuitboard/machine/B = new /obj/item/weapon/circuitboard/machine/microwave(null) B.apply_default_parts(src) - ..() /obj/item/weapon/circuitboard/machine/microwave name = "circuit board (Microwave)" @@ -73,7 +72,7 @@ "[user] starts to fix part of the microwave.", \ "You start to fix part of the microwave..." \ ) - if (do_after(user,20*O.toolspeed, target = src)) + if (do_after(user,20/O.toolspeed, target = src)) user.visible_message( \ "[user] fixes part of the microwave.", \ "You fix part of the microwave." \ @@ -84,7 +83,7 @@ "[user] starts to fix part of the microwave.", \ "You start to fix part of the microwave..." \ ) - if (do_after(user,20*O.toolspeed, target = src)) + if (do_after(user,20/O.toolspeed, target = src)) user.visible_message( \ "[user] fixes the microwave.", \ "You fix the microwave." \ @@ -141,7 +140,7 @@ var/loaded = 0 for(var/obj/item/weapon/reagent_containers/food/snacks/S in T.contents) if (contents.len>=max_n_of_items) - user << "[src] is full, you can't put anything in!" + user << "[src] is full, you cannot put more!" return 1 T.remove_from_storage(S, src) loaded++ @@ -150,15 +149,15 @@ user << "You insert [loaded] items into [src]." - else if(O.w_class <= WEIGHT_CLASS_NORMAL && !istype(O,/obj/item/weapon/storage) && user.a_intent == INTENT_HELP) + else if(istype(O,/obj/item/weapon/reagent_containers/food/snacks)) if (contents.len>=max_n_of_items) - user << "[src] is full, you can't put anything in!" + user << "[src] is full, you cannot put more!" return 1 else + // user.unEquip(O) //This just causes problems so far as I can tell. -Pete if(!user.drop_item()) user << "\the [O] is stuck to your hand, you cannot put it in \the [src]!" return 0 - O.loc = src user.visible_message( \ "[user] has added \the [O] to \the [src].", \ @@ -197,11 +196,7 @@ else var/list/items_counts = new for (var/obj/O in contents) - if(istype(O, /obj/item/stack/)) - var/obj/item/stack/S = O - items_counts[O.name] += S.amount - else - items_counts[O.name]++ + items_counts[O.name]++ for (var/O in items_counts) var/N = items_counts[O] @@ -217,6 +212,7 @@ var/datum/browser/popup = new(user, "microwave", name, 300, 300) popup.set_content(dat) popup.open() + return /*********************************** * Microwave Menu Handling/Cooking @@ -235,30 +231,32 @@ muck_finish() return - else - if(has_extra_item() && prob(min(dirty*5,100)) && !microwaving(4)) + else if (has_extra_item()) + if (!microwaving(4)) broke() return + broke() + return + + else + if(!microwaving(10)) abort() return stop() - var/metal = 0 - for(var/obj/item/O in contents) - O.microwave_act(src) - if(O.materials[MAT_METAL]) - metal += O.materials[MAT_METAL] + for(var/obj/item/weapon/reagent_containers/food/snacks/F in contents) + if(F.cooked_type) + var/obj/item/weapon/reagent_containers/food/snacks/S = new F.cooked_type (get_turf(src)) + F.initialize_cooked_food(S, efficiency) + feedback_add_details("food_made","[F.type]") + else + new /obj/item/weapon/reagent_containers/food/snacks/badrecipe(src) + if(dirty < 100) + dirty++ + qdel(F) - if(metal) - visible_message("Sparks fly around [src]!") - if(prob(max(metal/2, 33))) - explosion(loc,0,1,2) - broke() - return - - dropContents() return /obj/machinery/microwave/proc/microwaving(seconds as num) @@ -342,3 +340,4 @@ if ("dispose") dispose() updateUsrDialog() + return diff --git a/code/modules/food_and_drinks/kitchen_machinery/processor.dm b/code/modules/food_and_drinks/kitchen_machinery/processor.dm index 2c52f2889c..a2f4389558 100644 --- a/code/modules/food_and_drinks/kitchen_machinery/processor.dm +++ b/code/modules/food_and_drinks/kitchen_machinery/processor.dm @@ -3,7 +3,7 @@ name = "food processor" desc = "An industrial grinder used to process meat and other foods. Keep hands clear of intake area while operating." icon = 'icons/obj/kitchen.dmi' - icon_state = "processor1" + icon_state = "processor" layer = BELOW_OBJ_LAYER density = 1 anchored = 1 @@ -28,23 +28,6 @@ /obj/item/weapon/stock_parts/matter_bin = 1, /obj/item/weapon/stock_parts/manipulator = 1) -/obj/item/weapon/circuitboard/machine/processor - name = "circuit board (Food Processor)" - build_path = /obj/machinery/processor - -/obj/item/weapon/circuitboard/machine/processor/attackby(obj/item/I, mob/user, params) - if(istype(I,/obj/item/weapon/screwdriver)) - if(build_path == /obj/machinery/processor) - name = "circuit board (slime Processor)" - build_path = /obj/machinery/processor/slime - user << "Name protocols successfully updated." - else - name = "circuit board (Food Processor)" - build_path = /obj/machinery/processor - user << "Defaulting name protocols." - else - return ..() - /obj/machinery/processor/RefreshParts() for(var/obj/item/weapon/stock_parts/matter_bin/B in component_parts) rating_amount = B.rating @@ -100,10 +83,6 @@ /datum/food_processor_process/potato input = /obj/item/weapon/reagent_containers/food/snacks/grown/potato - output = /obj/item/weapon/reagent_containers/food/snacks/tatortot - -/datum/food_processor_process/potatowedges - input = /obj/item/weapon/reagent_containers/food/snacks/grown/potato/wedges output = /obj/item/weapon/reagent_containers/food/snacks/fries /datum/food_processor_process/carrot @@ -156,10 +135,9 @@ "You jump out from the processor!", \ "You hear chimpering.") return - var/obj/bucket = new /obj/item/weapon/reagent_containers/glass/bucket(loc) - + var/obj/item/weapon/reagent_containers/glass/bucket/bucket_of_blood = new(loc) var/datum/reagent/blood/B = new() - B.holder = bucket + B.holder = bucket_of_blood B.volume = 70 //set reagent data B.data["donor"] = O @@ -172,9 +150,9 @@ if(O.resistances&&O.resistances.len) B.data["resistances"] = O.resistances.Copy() - bucket.reagents.reagent_list += B - bucket.reagents.update_total() - bucket.on_reagent_change() + bucket_of_blood.reagents.reagent_list += B + bucket_of_blood.reagents.update_total() + bucket_of_blood.on_reagent_change() //bucket_of_blood.reagents.handle_reactions() //blood doesn't react ..() @@ -193,7 +171,7 @@ if(src.processing) user << "The processor is in the process of processing!" return 1 - if(default_deconstruction_screwdriver(user, "processor", "processor1", O)) + if(default_deconstruction_screwdriver(user, "processor1", "processor", O)) return if(exchange_parts(user, O)) @@ -216,7 +194,7 @@ O.loc = src return 1 else - if(user.a_intent != INTENT_HARM) + if(user.a_intent != "harm") user << "That probably won't blend!" return 1 else @@ -228,15 +206,6 @@ if(src.processing) user << "The processor is in the process of processing!" return 1 - if(user.a_intent == INTENT_GRAB && user.pulling && (isslime(user.pulling) || ismonkey(user.pulling))) - if(user.grab_state < GRAB_AGGRESSIVE) - user << "You need a better grip to do that!" - return - var/mob/living/pushed_mob = user.pulling - visible_message("[user] stuffs [pushed_mob] into [src]!") - pushed_mob.forceMove(src) - user.stop_pulling() - return if(src.contents.len == 0) user << "The processor is empty!" return 1 @@ -250,7 +219,7 @@ for(var/O in src.contents) var/datum/food_processor_process/P = select_recipe(O) if (!P) - log_admin("DEBUG: [O] in processor hasnt got a suitable recipe. How did it get in there? Please report it immediatly!!!") + log_admin("DEBUG: [O] in processor havent suitable recipe. How do you put it in?") //-rastaf0 // DEAR GOD THIS BURNS MY EYES HAVE YOU EVER LOOKED IN AN ENGLISH DICTONARY BEFORE IN YOUR LIFE AAAAAAAAAAAAAAAAAAAAA - Iamgoofball continue total_time += P.time var/offset = prob(50) ? -2 : 2 @@ -284,15 +253,3 @@ M.loc = src.loc return -/obj/machinery/processor/slime - name = "Slime processor" - desc = "An industrial grinder with a sticker saying appropriated for science department. Keep hands clear of intake area while operating." - -/obj/machinery/processor/slime/New() - ..() - var/obj/item/weapon/circuitboard/machine/B = new /obj/item/weapon/circuitboard/machine/processor/slime(null) - B.apply_default_parts(src) - -/obj/item/weapon/circuitboard/machine/processor/slime - name = "circuit board (Slime Processor)" - build_path = /obj/machinery/processor/slime \ No newline at end of file diff --git a/code/modules/food_and_drinks/kitchen_machinery/smartfridge.dm b/code/modules/food_and_drinks/kitchen_machinery/smartfridge.dm index fe930c9e49..d8479f1cd7 100644 --- a/code/modules/food_and_drinks/kitchen_machinery/smartfridge.dm +++ b/code/modules/food_and_drinks/kitchen_machinery/smartfridge.dm @@ -29,20 +29,19 @@ build_path = /obj/machinery/smartfridge origin_tech = "programming=1" req_components = list(/obj/item/weapon/stock_parts/matter_bin = 1) - var/static/list/fridges = list(/obj/machinery/smartfridge = "plant produce", - /obj/machinery/smartfridge/food = "food", - /obj/machinery/smartfridge/drinks = "drinks", - /obj/machinery/smartfridge/extract = "slimes", - /obj/machinery/smartfridge/chemistry = "chems", - /obj/machinery/smartfridge/chemistry/virology = "viruses") /obj/item/weapon/circuitboard/machine/smartfridge/New(loc, new_type) if(new_type) build_path = new_type - ..() /obj/item/weapon/circuitboard/machine/smartfridge/attackby(obj/item/I, mob/user, params) if(istype(I, /obj/item/weapon/screwdriver)) + var/list/fridges = list(/obj/machinery/smartfridge = "default", + /obj/machinery/smartfridge/drinks = "drinks", + /obj/machinery/smartfridge/extract = "slimes", + /obj/machinery/smartfridge/chemistry = "chems", + /obj/machinery/smartfridge/chemistry/virology = "viruses") + var/position = fridges.Find(build_path, fridges) position = (position == fridges.len) ? 1 : (position + 1) build_path = fridges[position] @@ -50,9 +49,13 @@ else return ..() -/obj/item/weapon/circuitboard/machine/smartfridge/examine/(mob/user) - ..() - user << "[src] is set to [fridges[build_path]]. You can use a screwdriver to reconfigure it." +/obj/machinery/smartfridge/construction() + for(var/datum/A in contents) + qdel(A) + +/obj/machinery/smartfridge/deconstruction() + for(var/atom/movable/A in contents) + A.loc = loc /obj/machinery/smartfridge/RefreshParts() for(var/obj/item/weapon/stock_parts/matter_bin/B in component_parts) @@ -92,44 +95,44 @@ updateUsrDialog() return - if(!stat) + if(stat) + return 0 - if(contents.len >= max_n_of_items) - user << "\The [src] is full!" + if(contents.len >= max_n_of_items) + user << "\The [src] is full!" + return 0 + + if(accept_check(O)) + load(O) + user.visible_message("[user] has added \the [O] to \the [src].", "You add \the [O] to \the [src].") + updateUsrDialog() + return 1 + + if(istype(O, /obj/item/weapon/storage/bag)) + var/obj/item/weapon/storage/P = O + var/loaded = 0 + for(var/obj/G in P.contents) + if(contents.len >= max_n_of_items) + break + if(accept_check(G)) + load(G) + loaded++ + updateUsrDialog() + + if(loaded) + if(contents.len >= max_n_of_items) + user.visible_message("[user] loads \the [src] with \the [O].", \ + "You fill \the [src] with \the [O].") + else + user.visible_message("[user] loads \the [src] with \the [O].", \ + "You load \the [src] with \the [O].") + if(O.contents.len > 0) + user << "Some items are refused." + else + user << "There is nothing in [O] to put in [src]!" return 0 - if(accept_check(O)) - load(O) - user.visible_message("[user] has added \the [O] to \the [src].", "You add \the [O] to \the [src].") - updateUsrDialog() - return 1 - - if(istype(O, /obj/item/weapon/storage/bag)) - var/obj/item/weapon/storage/P = O - var/loaded = 0 - for(var/obj/G in P.contents) - if(contents.len >= max_n_of_items) - break - if(accept_check(G)) - load(G) - loaded++ - updateUsrDialog() - - if(loaded) - if(contents.len >= max_n_of_items) - user.visible_message("[user] loads \the [src] with \the [O].", \ - "You fill \the [src] with \the [O].") - else - user.visible_message("[user] loads \the [src] with \the [O].", \ - "You load \the [src] with \the [O].") - if(O.contents.len > 0) - user << "Some items are refused." - return 1 - else - user << "There is nothing in [O] to put in [src]!" - return 0 - - if(user.a_intent != INTENT_HARM) + else if(user.a_intent != "harm") user << "\The [src] smartly refuses [O]." updateUsrDialog() return 0 @@ -139,7 +142,7 @@ /obj/machinery/smartfridge/proc/accept_check(obj/item/O) - if(istype(O,/obj/item/weapon/reagent_containers/food/snacks/grown/) || istype(O,/obj/item/seeds/) || istype(O,/obj/item/weapon/grown/)) + if(istype(O,/obj/item/weapon/reagent_containers/food/snacks/grown/) || istype(O,/obj/item/seeds/)) return 1 return 0 @@ -235,7 +238,6 @@ // ---------------------------- /obj/machinery/smartfridge/drying_rack name = "drying rack" - desc = "A wooden contraption, used to dry plant products, food and leather." icon = 'icons/obj/hydroponics/equipment.dmi' icon_state = "drying_rack_on" use_power = 1 @@ -245,24 +247,6 @@ icon_off = "drying_rack" var/drying = 0 -/obj/machinery/smartfridge/drying_rack/New() - ..() - if(component_parts && component_parts.len) - component_parts.Cut() - component_parts = null - -/obj/machinery/smartfridge/drying_rack/on_deconstruction() - new /obj/item/stack/sheet/mineral/wood(loc, 10) - ..() - -/obj/machinery/smartfridge/drying_rack/RefreshParts() -/obj/machinery/smartfridge/drying_rack/default_deconstruction_screwdriver() -/obj/machinery/smartfridge/drying_rack/exchange_parts() -/obj/machinery/smartfridge/drying_rack/spawn_frame() - -/obj/machinery/smartfridge/drying_rack/default_deconstruction_crowbar(obj/item/weapon/crowbar/C, ignore_panel = 1) - ..() - /obj/machinery/smartfridge/drying_rack/interact(mob/user) var/dat = ..() if(dat) @@ -308,8 +292,6 @@ var/obj/item/weapon/reagent_containers/food/snacks/S = O if(S.dried_type) return 1 - if(istype(O,/obj/item/stack/sheet/wetleather/)) - return 1 return 0 /obj/machinery/smartfridge/drying_rack/proc/toggle_drying(forceoff = 0) @@ -324,7 +306,7 @@ /obj/machinery/smartfridge/drying_rack/proc/rack_dry() for(var/obj/item/weapon/reagent_containers/food/snacks/S in contents) if(S.dried_type == S.type)//if the dried type is the same as the object's type, don't bother creating a whole new item... - S.add_atom_colour("#ad7257", FIXED_COLOUR_PRIORITY) + S.color = "#ad7257" S.dry = 1 S.loc = get_turf(src) else @@ -332,11 +314,6 @@ new dried(src.loc) qdel(S) return 1 - for(var/obj/item/stack/sheet/wetleather/WL in contents) - var/obj/item/stack/sheet/leather/L = new(loc) - L.amount = WL.amount - qdel(WL) - return 1 return 0 /obj/machinery/smartfridge/drying_rack/emp_act(severity) @@ -357,16 +334,6 @@ if(istype(O,/obj/item/weapon/reagent_containers/glass) || istype(O,/obj/item/weapon/reagent_containers/food/drinks) || istype(O,/obj/item/weapon/reagent_containers/food/condiment)) return 1 -// ---------------------------- -// Food smartfridge -// ---------------------------- -/obj/machinery/smartfridge/food - desc = "A refrigerated storage unit for food." - -/obj/machinery/smartfridge/food/accept_check(obj/item/O) - if(istype(O,/obj/item/weapon/reagent_containers/food/snacks/)) - return 1 - return 0 // ------------------------------------- // Xenobiology Slime-Extract Smartfridge diff --git a/code/modules/food_and_drinks/pizzabox.dm b/code/modules/food_and_drinks/pizzabox.dm index 4db3a2623d..e3e2f8c92c 100644 --- a/code/modules/food_and_drinks/pizzabox.dm +++ b/code/modules/food_and_drinks/pizzabox.dm @@ -28,11 +28,9 @@ /obj/item/pizzabox/New() update_icon() - ..() /obj/item/pizzabox/Destroy() unprocess() - return ..() /obj/item/pizzabox/update_icon() // Description @@ -45,7 +43,7 @@ if(bomb_defused) desc = "[desc] The bomb seems inert." if(bomb_active) - desc = "[desc] It looks like it's about to go off!" + desc = "[desc] It looks like its about to go off!" else var/obj/item/pizzabox/box = boxes.len ? boxes[boxes.len] : src if(boxes.len) @@ -86,7 +84,7 @@ update_icon() /obj/item/pizzabox/attack_hand(mob/user) - if(user.get_inactive_held_item() != src) + if(user.get_inactive_hand() != src) ..() return if(open) @@ -108,9 +106,7 @@ bomb_timer = Clamp(Ceiling(bomb_timer / 2), BOMB_TIMER_MIN, BOMB_TIMER_MAX) bomb_defused = FALSE - var/message = "[ADMIN_LOOKUPFLW(user)] has trapped a [src] with [bomb] set to [bomb_timer * 2] seconds." - bombers += message - message_admins(message) + message_admins("[key_name_admin(user)]
    ? (FLW) has trapped a [src] with [bomb] set to [bomb_timer * 2] seconds.") log_game("[key_name(user)] has trapped a [src] with [bomb] set to [bomb_timer * 2] seconds.") bomb.adminlog = "The [bomb.name] in [src.name] that [key_name(user)] activated has detonated!" diff --git a/code/modules/food_and_drinks/recipes/drinks_recipes.dm b/code/modules/food_and_drinks/recipes/drinks_recipes.dm index 29d3f6d591..a90137ef62 100644 --- a/code/modules/food_and_drinks/recipes/drinks_recipes.dm +++ b/code/modules/food_and_drinks/recipes/drinks_recipes.dm @@ -4,296 +4,344 @@ /datum/chemical_reaction/goldschlager name = "Goldschlager" id = "goldschlager" - results = list("goldschlager" = 10) + result = "goldschlager" required_reagents = list("vodka" = 10, "gold" = 1) + result_amount = 10 /datum/chemical_reaction/patron name = "Patron" id = "patron" - results = list("patron" = 10) + result = "patron" required_reagents = list("tequila" = 10, "silver" = 1) + result_amount = 10 /datum/chemical_reaction/bilk name = "Bilk" id = "bilk" - results = list("bilk" = 2) + result = "bilk" required_reagents = list("milk" = 1, "beer" = 1) + result_amount = 2 /datum/chemical_reaction/icetea name = "Iced Tea" id = "icetea" - results = list("icetea" = 4) + result = "icetea" required_reagents = list("ice" = 1, "tea" = 3) + result_amount = 4 /datum/chemical_reaction/icecoffee name = "Iced Coffee" id = "icecoffee" - results = list("icecoffee" = 4) + result = "icecoffee" required_reagents = list("ice" = 1, "coffee" = 3) + result_amount = 4 /datum/chemical_reaction/nuka_cola name = "Nuka Cola" id = "nuka_cola" - results = list("nuka_cola" = 6) + result = "nuka_cola" required_reagents = list("uranium" = 1, "cola" = 6) + result_amount = 6 /datum/chemical_reaction/moonshine name = "Moonshine" id = "moonshine" - results = list("moonshine" = 10) - required_reagents = list("nutriment" = 5, "sugar" = 5) + result = "moonshine" + required_reagents = list("nutriment" = 10) required_catalysts = list("enzyme" = 5) + result_amount = 10 /datum/chemical_reaction/wine name = "Wine" id = "wine" - results = list("wine" = 10) + result = "wine" required_reagents = list("grapejuice" = 10) required_catalysts = list("enzyme" = 5) + result_amount = 10 /datum/chemical_reaction/spacebeer name = "Space Beer" id = "spacebeer" - results = list("beer" = 10) + result = "beer" required_reagents = list("flour" = 10) required_catalysts = list("enzyme" = 5) + result_amount = 10 /datum/chemical_reaction/vodka name = "Vodka" id = "vodka" - results = list("vodka" = 10) + result = "vodka" required_reagents = list("potato" = 10) required_catalysts = list("enzyme" = 5) + result_amount = 10 /datum/chemical_reaction/kahlua name = "Kahlua" id = "kahlua" - results = list("kahlua" = 5) + result = "kahlua" required_reagents = list("coffee" = 5, "sugar" = 5) required_catalysts = list("enzyme" = 5) + result_amount = 5 /datum/chemical_reaction/gin_tonic name = "Gin and Tonic" id = "gintonic" - results = list("gintonic" = 3) + result = "gintonic" required_reagents = list("gin" = 2, "tonic" = 1) + result_amount = 3 /datum/chemical_reaction/cuba_libre name = "Cuba Libre" id = "cubalibre" - results = list("cubalibre" = 3) + result = "cubalibre" required_reagents = list("rum" = 2, "cola" = 1) + result_amount = 3 /datum/chemical_reaction/martini name = "Classic Martini" id = "martini" - results = list("martini" = 3) + result = "martini" required_reagents = list("gin" = 2, "vermouth" = 1) + result_amount = 3 /datum/chemical_reaction/vodkamartini name = "Vodka Martini" id = "vodkamartini" - results = list("vodkamartini" = 3) + result = "vodkamartini" required_reagents = list("vodka" = 2, "vermouth" = 1) + result_amount = 3 /datum/chemical_reaction/white_russian name = "White Russian" id = "whiterussian" - results = list("whiterussian" = 5) + result = "whiterussian" required_reagents = list("blackrussian" = 3, "cream" = 2) + result_amount = 5 /datum/chemical_reaction/whiskey_cola name = "Whiskey Cola" id = "whiskeycola" - results = list("whiskeycola" = 3) + result = "whiskeycola" required_reagents = list("whiskey" = 2, "cola" = 1) + result_amount = 3 /datum/chemical_reaction/screwdriver name = "Screwdriver" id = "screwdrivercocktail" - results = list("screwdrivercocktail" = 3) + result = "screwdrivercocktail" required_reagents = list("vodka" = 2, "orangejuice" = 1) + result_amount = 3 /datum/chemical_reaction/bloody_mary name = "Bloody Mary" id = "bloodymary" - results = list("bloodymary" = 4) + result = "bloodymary" required_reagents = list("vodka" = 1, "tomatojuice" = 2, "limejuice" = 1) + result_amount = 4 /datum/chemical_reaction/gargle_blaster name = "Pan-Galactic Gargle Blaster" id = "gargleblaster" - results = list("gargleblaster" = 5) + result = "gargleblaster" required_reagents = list("vodka" = 1, "gin" = 1, "whiskey" = 1, "cognac" = 1, "limejuice" = 1) + result_amount = 5 /datum/chemical_reaction/brave_bull name = "Brave Bull" id = "bravebull" - results = list("bravebull" = 3) + result = "bravebull" required_reagents = list("tequila" = 2, "kahlua" = 1) + result_amount = 3 /datum/chemical_reaction/tequila_sunrise name = "tequila Sunrise" id = "tequilasunrise" - results = list("tequilasunrise" = 3) + result = "tequilasunrise" required_reagents = list("tequila" = 2, "orangejuice" = 1) + result_amount = 3 /datum/chemical_reaction/toxins_special name = "Toxins Special" id = "toxinsspecial" - results = list("toxinsspecial" = 5) + result = "toxinsspecial" required_reagents = list("rum" = 2, "vermouth" = 1, "plasma" = 2) + result_amount = 5 /datum/chemical_reaction/beepsky_smash name = "Beepksy Smash" id = "beepksysmash" - results = list("beepskysmash" = 4) + result = "beepskysmash" required_reagents = list("limejuice" = 2, "whiskey" = 2, "iron" = 1) + result_amount = 4 /datum/chemical_reaction/doctor_delight name = "The Doctor's Delight" id = "doctordelight" - results = list("doctorsdelight" = 5) + result = "doctorsdelight" required_reagents = list("limejuice" = 1, "tomatojuice" = 1, "orangejuice" = 1, "cream" = 1, "cryoxadone" = 1) + result_amount = 5 /datum/chemical_reaction/irish_cream name = "Irish Cream" id = "irishcream" - results = list("irishcream" = 3) + result = "irishcream" required_reagents = list("whiskey" = 2, "cream" = 1) + result_amount = 3 /datum/chemical_reaction/manly_dorf name = "The Manly Dorf" id = "manlydorf" - results = list("manlydorf" = 3) + result = "manlydorf" required_reagents = list ("beer" = 1, "ale" = 2) + result_amount = 3 /datum/chemical_reaction/greenbeer name = "Green Beer" id = "greenbeer" - results = list("greenbeer" = 10) + result = "greenbeer" required_reagents = list("greencrayonpowder" = 1, "beer" = 10) + result_amount = 10 /datum/chemical_reaction/hooch name = "Hooch" id = "hooch" - results = list("hooch" = 3) + result = "hooch" required_reagents = list ("ethanol" = 2, "welding_fuel" = 1) required_catalysts = list("enzyme" = 1) + result_amount = 3 /datum/chemical_reaction/irish_coffee name = "Irish Coffee" id = "irishcoffee" - results = list("irishcoffee" = 2) + result = "irishcoffee" required_reagents = list("irishcream" = 1, "coffee" = 1) + result_amount = 2 /datum/chemical_reaction/b52 name = "B-52" id = "b52" - results = list("b52" = 3) + result = "b52" required_reagents = list("irishcream" = 1, "kahlua" = 1, "cognac" = 1) + result_amount = 3 /datum/chemical_reaction/atomicbomb name = "Atomic Bomb" id = "atomicbomb" - results = list("atomicbomb" = 10) + result = "atomicbomb" required_reagents = list("b52" = 10, "uranium" = 1) + result_amount = 10 /datum/chemical_reaction/margarita name = "Margarita" id = "margarita" - results = list("margarita" = 3) + result = "margarita" required_reagents = list("tequila" = 2, "limejuice" = 1) + result_amount = 3 /datum/chemical_reaction/longislandicedtea name = "Long Island Iced Tea" id = "longislandicedtea" - results = list("longislandicedtea" = 4) + result = "longislandicedtea" required_reagents = list("vodka" = 1, "gin" = 1, "tequila" = 1, "cubalibre" = 1) + result_amount = 4 /datum/chemical_reaction/threemileisland name = "Three Mile Island Iced Tea" id = "threemileisland" - results = list("threemileisland" = 10) + result = "threemileisland" required_reagents = list("longislandicedtea" = 10, "uranium" = 1) + result_amount = 10 /datum/chemical_reaction/whiskeysoda name = "Whiskey Soda" id = "whiskeysoda" - results = list("whiskeysoda" = 3) + result = "whiskeysoda" required_reagents = list("whiskey" = 2, "sodawater" = 1) + result_amount = 3 /datum/chemical_reaction/black_russian name = "Black Russian" id = "blackrussian" - results = list("blackrussian" = 5) + result = "blackrussian" required_reagents = list("vodka" = 3, "kahlua" = 2) + result_amount = 5 /datum/chemical_reaction/manhattan name = "Manhattan" id = "manhattan" - results = list("manhattan" = 3) + result = "manhattan" required_reagents = list("whiskey" = 2, "vermouth" = 1) + result_amount = 3 /datum/chemical_reaction/manhattan_proj name = "Manhattan Project" id = "manhattan_proj" - results = list("manhattan_proj" = 10) + result = "manhattan_proj" required_reagents = list("manhattan" = 10, "uranium" = 1) + result_amount = 10 /datum/chemical_reaction/vodka_tonic name = "Vodka and Tonic" id = "vodkatonic" - results = list("vodkatonic" = 3) + result = "vodkatonic" required_reagents = list("vodka" = 2, "tonic" = 1) + result_amount = 3 /datum/chemical_reaction/gin_fizz name = "Gin Fizz" id = "ginfizz" - results = list("ginfizz" = 4) + result = "ginfizz" required_reagents = list("gin" = 2, "sodawater" = 1, "limejuice" = 1) + result_amount = 4 /datum/chemical_reaction/bahama_mama name = "Bahama mama" id = "bahama_mama" - results = list("bahama_mama" = 6) + result = "bahama_mama" required_reagents = list("rum" = 2, "orangejuice" = 2, "limejuice" = 1, "ice" = 1) + result_amount = 6 /datum/chemical_reaction/singulo name = "Singulo" id = "singulo" - results = list("singulo" = 10) + result = "singulo" required_reagents = list("vodka" = 5, "radium" = 1, "wine" = 5) + result_amount = 10 /datum/chemical_reaction/alliescocktail name = "Allies Cocktail" id = "alliescocktail" - results = list("alliescocktail" = 2) + result = "alliescocktail" required_reagents = list("martini" = 1, "vodka" = 1) + result_amount = 2 /datum/chemical_reaction/demonsblood name = "Demons Blood" id = "demonsblood" - results = list("demonsblood" = 4) + result = "demonsblood" required_reagents = list("rum" = 1, "spacemountainwind" = 1, "blood" = 1, "dr_gibb" = 1) + result_amount = 4 /datum/chemical_reaction/booger name = "Booger" id = "booger" - results = list("booger" = 4) + result = "booger" required_reagents = list("cream" = 1, "banana" = 1, "rum" = 1, "watermelonjuice" = 1) + result_amount = 4 /datum/chemical_reaction/antifreeze name = "Anti-freeze" id = "antifreeze" - results = list("antifreeze" = 4) + result = "antifreeze" required_reagents = list("vodka" = 2, "cream" = 1, "ice" = 1) + result_amount = 4 /datum/chemical_reaction/barefoot name = "Barefoot" id = "barefoot" - results = list("barefoot" = 3) + result = "barefoot" required_reagents = list("berryjuice" = 1, "cream" = 1, "vermouth" = 1) + result_amount = 3 ////DRINKS THAT REQUIRED IMPROVED SPRITES BELOW:: -Agouri///// @@ -301,223 +349,259 @@ /datum/chemical_reaction/sbiten name = "Sbiten" id = "sbiten" - results = list("sbiten" = 10) + result = "sbiten" required_reagents = list("vodka" = 10, "capsaicin" = 1) + result_amount = 10 /datum/chemical_reaction/red_mead name = "Red Mead" id = "red_mead" - results = list("red_mead" = 2) + result = "red_mead" required_reagents = list("blood" = 1, "mead" = 1) + result_amount = 2 /datum/chemical_reaction/mead name = "Mead" id = "mead" - results = list("mead" = 2) + result = "mead" required_reagents = list("honey" = 2) required_catalysts = list("enzyme" = 5) + result_amount = 2 /datum/chemical_reaction/iced_beer name = "Iced Beer" id = "iced_beer" - results = list("iced_beer" = 6) + result = "iced_beer" required_reagents = list("beer" = 5, "ice" = 1) + result_amount = 6 /datum/chemical_reaction/grog name = "Grog" id = "grog" - results = list("grog" = 2) + result = "grog" required_reagents = list("rum" = 1, "water" = 1) + result_amount = 2 /datum/chemical_reaction/soy_latte name = "Soy Latte" id = "soy_latte" - results = list("soy_latte" = 2) + result = "soy_latte" required_reagents = list("coffee" = 1, "soymilk" = 1) + result_amount = 2 /datum/chemical_reaction/cafe_latte name = "Cafe Latte" id = "cafe_latte" - results = list("cafe_latte" = 2) + result = "cafe_latte" required_reagents = list("coffee" = 1, "milk" = 1) + result_amount = 2 /datum/chemical_reaction/acidspit name = "Acid Spit" id = "acidspit" - results = list("acidspit" = 6) + result = "acidspit" required_reagents = list("sacid" = 1, "wine" = 5) + result_amount = 6 /datum/chemical_reaction/amasec name = "Amasec" id = "amasec" - results = list("amasec" = 10) + result = "amasec" required_reagents = list("iron" = 1, "wine" = 5, "vodka" = 5) + result_amount = 10 /datum/chemical_reaction/changelingsting name = "Changeling Sting" id = "changelingsting" - results = list("changelingsting" = 5) - required_reagents = list("screwdrivercocktail" = 1, "lemon_lime" = 2) + result = "changelingsting" + required_reagents = list("screwdrivercocktail" = 1, "limejuice" = 1, "lemonjuice" = 1) + result_amount = 5 /datum/chemical_reaction/aloe name = "Aloe" id = "aloe" - results = list("aloe" = 2) + result = "aloe" required_reagents = list("irishcream" = 1, "watermelonjuice" = 1) + result_amount = 2 /datum/chemical_reaction/andalusia name = "Andalusia" id = "andalusia" - results = list("andalusia" = 3) + result = "andalusia" required_reagents = list("rum" = 1, "whiskey" = 1, "lemonjuice" = 1) + result_amount = 3 /datum/chemical_reaction/neurotoxin name = "Neurotoxin" id = "neurotoxin" - results = list("neurotoxin" = 2) + result = "neurotoxin" required_reagents = list("gargleblaster" = 1, "morphine" = 1) + result_amount = 2 /datum/chemical_reaction/snowwhite name = "Snow White" id = "snowwhite" - results = list("snowwhite" = 2) + result = "snowwhite" required_reagents = list("beer" = 1, "lemon_lime" = 1) + result_amount = 2 /datum/chemical_reaction/irishcarbomb name = "Irish Car Bomb" id = "irishcarbomb" - results = list("irishcarbomb" = 2) + result = "irishcarbomb" required_reagents = list("ale" = 1, "irishcream" = 1) + result_amount = 2 /datum/chemical_reaction/syndicatebomb name = "Syndicate Bomb" id = "syndicatebomb" - results = list("syndicatebomb" = 2) + result = "syndicatebomb" required_reagents = list("beer" = 1, "whiskeycola" = 1) + result_amount = 2 /datum/chemical_reaction/erikasurprise name = "Erika Surprise" id = "erikasurprise" - results = list("erikasurprise" = 5) + result = "erikasurprise" required_reagents = list("ale" = 1, "limejuice" = 1, "whiskey" = 1, "banana" = 1, "ice" = 1) + result_amount = 5 /datum/chemical_reaction/devilskiss name = "Devils Kiss" id = "devilskiss" - results = list("devilskiss" = 3) + result = "devilskiss" required_reagents = list("blood" = 1, "kahlua" = 1, "rum" = 1) + result_amount = 3 /datum/chemical_reaction/hippiesdelight name = "Hippies Delight" id = "hippiesdelight" - results = list("hippiesdelight" = 2) + result = "hippiesdelight" required_reagents = list("mushroomhallucinogen" = 1, "gargleblaster" = 1) + result_amount = 2 /datum/chemical_reaction/bananahonk name = "Banana Honk" id = "bananahonk" - results = list("bananahonk" = 3) + result = "bananahonk" required_reagents = list("banana" = 1, "cream" = 1, "sugar" = 1) + result_amount = 3 /datum/chemical_reaction/silencer name = "Silencer" id = "silencer" - results = list("silencer" = 3) + result = "silencer" required_reagents = list("nothing" = 1, "cream" = 1, "sugar" = 1) + result_amount = 3 /datum/chemical_reaction/driestmartini name = "Driest Martini" id = "driestmartini" - results = list("driestmartini" = 2) + result = "driestmartini" required_reagents = list("nothing" = 1, "gin" = 1) + result_amount = 2 /datum/chemical_reaction/thirteenloko name = "Thirteen Loko" id = "thirteenloko" - results = list("thirteenloko" = 3) + result = "thirteenloko" required_reagents = list("vodka" = 1, "coffee" = 1, "limejuice" = 1) + result_amount = 3 /datum/chemical_reaction/chocolatepudding name = "Chocolate Pudding" id = "chocolatepudding" - results = list("chocolatepudding" = 20) + result = "chocolatepudding" required_reagents = list("cocoa" = 5, "milk" = 5, "eggyolk" = 5) + result_amount = 20 /datum/chemical_reaction/vanillapudding name = "Vanilla Pudding" id = "vanillapudding" - results = list("vanillapudding" = 20) + result = "vanillapudding" required_reagents = list("vanilla" = 5, "milk" = 5, "eggyolk" = 5) + result_amount = 20 /datum/chemical_reaction/cherryshake name = "Cherry Shake" id = "cherryshake" - results = list("cherryshake" = 3) + result = "cherryshake" required_reagents = list("cherryjelly" = 1, "ice" = 1, "cream" = 1) + result_amount = 3 /datum/chemical_reaction/bluecherryshake name = "Blue Cherry Shake" id = "bluecherryshake" - results = list("bluecherryshake" = 3) + result = "bluecherryshake" required_reagents = list("bluecherryjelly" = 1, "ice" = 1, "cream" = 1) + result_amount = 3 /datum/chemical_reaction/drunkenblumpkin name = "Drunken Blumpkin" id = "drunkenblumpkin" - results = list("drunkenblumpkin" = 4) + result = "drunkenblumpkin" required_reagents = list("blumpkinjuice" = 1, "irishcream" = 2, "ice" = 1) + result_amount = 4 /datum/chemical_reaction/pumpkin_latte name = "Pumpkin space latte" id = "pumpkin_latte" - results = list("pumpkin_latte" = 15) + result = "pumpkin_latte" required_reagents = list("pumpkinjuice" = 5, "coffee" = 5, "cream" = 5) + result_amount = 15 /datum/chemical_reaction/gibbfloats name = "Gibb Floats" id = "gibbfloats" - results = list("gibbfloats" = 15) + result = "gibbfloats" required_reagents = list("dr_gibb" = 5, "ice" = 5, "cream" = 5) + result_amount = 15 /datum/chemical_reaction/triple_citrus name = "triple_citrus" id = "triple_citrus" - results = list("triple_citrus" = 5) + result = "triple_citrus" required_reagents = list("lemonjuice" = 1, "limejuice" = 1, "orangejuice" = 1) + result_amount = 5 /datum/chemical_reaction/grape_soda name = "grape soda" id = "grapesoda" - results = list("grapesoda" = 2) + result = "grape_soda" required_reagents = list("grapejuice" = 1, "sodawater" = 1) + result_amount = 2 /datum/chemical_reaction/grappa name = "grappa" id = "grappa" - results = list("grappa" = 10) + result = "grappa" required_reagents = list ("wine" = 10) required_catalysts = list ("enzyme" = 5) + result_amount = 10 /datum/chemical_reaction/whiskey_sour name = "Whiskey Sour" id = "whiskey_sour" - results = list("whiskey_sour" = 3) + result = "whiskey_sour" required_reagents = list("whiskey" = 1, "lemonjuice" = 1, "sugar" = 1) + result_amount = 3 mix_message = "The mixture darkens to a rich gold hue." mix_sound = null /datum/chemical_reaction/fetching_fizz name = "Fetching Fizz" id = "fetching_fizz" - results = list("fetching_fizz" = 3) + result = "fetching_fizz" required_reagents = list("nuka_cola" = 1, "iron" = 1) //Manufacturable from only the mining station + result_amount = 3 mix_message = "The mixture slightly vibrates before settling." /datum/chemical_reaction/hearty_punch name = "Hearty Punch" id = "hearty_punch" - results = list("hearty_punch" = 1) //Very little, for balance reasons + result = "hearty_punch" required_reagents = list("bravebull" = 5, "syndicatebomb" = 5, "absinthe" = 5) + result_amount = 1 //Very little, for balance reasons mix_message = "The mixture darkens to a healthy crimson." mix_sound = null required_temp = 315 //Piping hot! @@ -525,26 +609,15 @@ /datum/chemical_reaction/bacchus_blessing name = "Bacchus' Blessing" id = "bacchus_blessing" - results = list("bacchus_blessing" = 4) + result = "bacchus_blessing" required_reagents = list("hooch" = 1, "absinthe" = 1, "manlydorf" = 1, "syndicatebomb" = 1) + result_amount = 4 mix_message = "The mixture turns to a sickening froth." /datum/chemical_reaction/arnold_palmer name = "Arnold Palmer" id = "arnold_palmer" - results = list("arnold_palmer" = 2) + result = "arnold_palmer" required_reagents = list("tea" = 1, "lemonjuice" = 1) + result_amount = 2 mix_message = "The smells of fresh green grass and sand traps waft through the air as the mixture turns a friendly yellow-orange." - -/datum/chemical_reaction/chocolate_milk - name = "chocolate milk" - id = "chocolate_milk" - results = list("chocolate_milk" = 2) - required_reagents = list("milk" = 1, "cocoa" = 1) - mix_message = "The color changes as the mixture blends smoothly." - -/datum/chemical_reaction/eggnog - name = "eggnog" - id = "eggnog" - results = list("eggnog" = 15) - required_reagents = list("rum" = 5, "cream" = 5, "eggyolk" = 5) \ No newline at end of file diff --git a/code/modules/food_and_drinks/recipes/food_mixtures.dm b/code/modules/food_and_drinks/recipes/food_mixtures.dm index 314ee2c8e2..bfb9dcbaf4 100644 --- a/code/modules/food_and_drinks/recipes/food_mixtures.dm +++ b/code/modules/food_and_drinks/recipes/food_mixtures.dm @@ -1,8 +1,4 @@ -/datum/crafting_recipe/food - var/real_parts - /datum/crafting_recipe/food/New() - real_parts = parts.Copy() parts |= reqs //////////////////////////////////////////FOOD MIXTURES//////////////////////////////////// @@ -10,8 +6,10 @@ /datum/chemical_reaction/tofu name = "Tofu" id = "tofu" + result = null required_reagents = list("soymilk" = 10) required_catalysts = list("enzyme" = 5) + result_amount = 1 mob_react=1 /datum/chemical_reaction/tofu/on_reaction(datum/reagents/holder, created_volume) @@ -23,7 +21,9 @@ /datum/chemical_reaction/chocolate_bar name = "Chocolate Bar" id = "chocolate_bar" + result = null required_reagents = list("soymilk" = 2, "cocoa" = 2, "sugar" = 2) + result_amount = 1 /datum/chemical_reaction/chocolate_bar/on_reaction(datum/reagents/holder, created_volume) var/location = get_turf(holder.my_atom) @@ -35,9 +35,10 @@ /datum/chemical_reaction/chocolate_bar2 name = "Chocolate Bar" id = "chocolate_bar" - required_reagents = list("chocolate_milk" = 4, "sugar" = 2) + result = null + required_reagents = list("milk" = 2, "cocoa" = 2, "sugar" = 2) + result_amount = 1 mob_react = 1 - /datum/chemical_reaction/chocolate_bar2/on_reaction(datum/reagents/holder, created_volume) var/location = get_turf(holder.my_atom) for(var/i = 1, i <= created_volume, i++) @@ -47,85 +48,101 @@ /datum/chemical_reaction/hot_coco name = "Hot Coco" id = "hot_coco" - results = list("hot_coco" = 5) + result = "hot_coco" required_reagents = list("water" = 5, "cocoa" = 1) + result_amount = 5 /datum/chemical_reaction/coffee name = "Coffee" id = "coffee" - results = list("coffee" = 5) + result = "coffee" required_reagents = list("coffeepowder" = 1, "water" = 5) + result_amount = 5 /datum/chemical_reaction/tea name = "Tea" id = "tea" - results = list("tea" = 5) + result = "tea" required_reagents = list("teapowder" = 1, "water" = 5) + result_amount = 5 /datum/chemical_reaction/soysauce name = "Soy Sauce" id = "soysauce" - results = list("soysauce" = 5) + result = "soysauce" required_reagents = list("soymilk" = 4, "sacid" = 1) + result_amount = 5 /datum/chemical_reaction/corn_syrup name = "corn_syrup" id = "corn_syrup" - results = list("corn_syrup" = 5) + result = "corn_syrup" required_reagents = list("corn_starch" = 1, "sacid" = 1) + result_amount = 5 required_temp = 374 /datum/chemical_reaction/cheesewheel name = "Cheesewheel" id = "cheesewheel" + result = null required_reagents = list("milk" = 40) required_catalysts = list("enzyme" = 5) + result_amount = 1 /datum/chemical_reaction/cheesewheel/on_reaction(datum/reagents/holder, created_volume) var/location = get_turf(holder.my_atom) - for(var/i = 1, i <= created_volume, i++) - new /obj/item/weapon/reagent_containers/food/snacks/store/cheesewheel(location) + new /obj/item/weapon/reagent_containers/food/snacks/store/cheesewheel(location) + return /datum/chemical_reaction/synthmeat name = "synthmeat" id = "synthmeat" + result = null required_reagents = list("blood" = 5, "cryoxadone" = 1) + result_amount = 1 mob_react = 1 /datum/chemical_reaction/synthmeat/on_reaction(datum/reagents/holder, created_volume) var/location = get_turf(holder.my_atom) - for(var/i = 1, i <= created_volume, i++) - new /obj/item/weapon/reagent_containers/food/snacks/meat/slab/synthmeat(location) + new /obj/item/weapon/reagent_containers/food/snacks/meat/slab/synthmeat(location) + return /datum/chemical_reaction/hot_ramen name = "Hot Ramen" id = "hot_ramen" - results = list("hot_ramen" = 3) + result = "hot_ramen" required_reagents = list("water" = 1, "dry_ramen" = 3) + result_amount = 3 /datum/chemical_reaction/hell_ramen name = "Hell Ramen" id = "hell_ramen" - results = list("hell_ramen" = 6) + result = "hell_ramen" required_reagents = list("capsaicin" = 1, "hot_ramen" = 6) + result_amount = 6 + /datum/chemical_reaction/imitationcarpmeat name = "Imitation Carpmeat" id = "imitationcarpmeat" + result = null required_reagents = list("carpotoxin" = 5) + result_amount = 1 required_container = /obj/item/weapon/reagent_containers/food/snacks/tofu mix_message = "The mixture becomes similar to carp meat." /datum/chemical_reaction/imitationcarpmeat/on_reaction(datum/reagents/holder) - var/location = get_turf(holder.my_atom) - new /obj/item/weapon/reagent_containers/food/snacks/carpmeat/imitation(location) + var/obj/item/weapon/reagent_containers/food/snacks/S = new /obj/item/weapon/reagent_containers/food/snacks/carpmeat/imitation + S.loc = get_turf(holder.my_atom) if(holder && holder.my_atom) qdel(holder.my_atom) /datum/chemical_reaction/dough name = "Dough" id = "dough" + result = null required_reagents = list("water" = 10, "flour" = 15) + result_amount = 1 mix_message = "The ingredients form a dough." /datum/chemical_reaction/dough/on_reaction(datum/reagents/holder, created_volume) @@ -136,7 +153,9 @@ /datum/chemical_reaction/cakebatter name = "Cake Batter" id = "cakebatter" + result = null required_reagents = list("eggyolk" = 15, "flour" = 15, "sugar" = 5) + result_amount = 1 mix_message = "The ingredients form a cake batter." /datum/chemical_reaction/cakebatter/on_reaction(datum/reagents/holder, created_volume) @@ -151,12 +170,14 @@ /datum/chemical_reaction/ricebowl name = "Rice Bowl" id = "ricebowl" + result = null required_reagents = list("rice" = 10, "water" = 10) + result_amount = 1 required_container = /obj/item/weapon/reagent_containers/glass/bowl mix_message = "The rice absorbs the water." /datum/chemical_reaction/ricebowl/on_reaction(datum/reagents/holder) - var/location = get_turf(holder.my_atom) - new /obj/item/weapon/reagent_containers/food/snacks/salad/ricebowl(location) + var/obj/item/weapon/reagent_containers/food/snacks/S = new /obj/item/weapon/reagent_containers/food/snacks/salad/ricebowl + S.loc = get_turf(holder.my_atom) if(holder && holder.my_atom) qdel(holder.my_atom) diff --git a/code/modules/food_and_drinks/recipes/tablecraft/recipes_bread.dm b/code/modules/food_and_drinks/recipes/tablecraft/recipes_bread.dm index e35d5c89e6..56649b1f9f 100644 --- a/code/modules/food_and_drinks/recipes/tablecraft/recipes_bread.dm +++ b/code/modules/food_and_drinks/recipes/tablecraft/recipes_bread.dm @@ -11,7 +11,7 @@ /obj/item/weapon/reagent_containers/food/snacks/cheesewedge = 3 ) result = /obj/item/weapon/reagent_containers/food/snacks/store/bread/meat - category = CAT_BREAD + category = CAT_FOOD /datum/crafting_recipe/food/xenomeatbread name = "Xenomeat bread" @@ -21,7 +21,7 @@ /obj/item/weapon/reagent_containers/food/snacks/cheesewedge = 3 ) result = /obj/item/weapon/reagent_containers/food/snacks/store/bread/xenomeat - category = CAT_BREAD + category = CAT_FOOD /datum/crafting_recipe/food/spidermeatbread name = "Spidermeat bread" @@ -31,7 +31,7 @@ /obj/item/weapon/reagent_containers/food/snacks/cheesewedge = 3 ) result = /obj/item/weapon/reagent_containers/food/snacks/store/bread/spidermeat - category = CAT_BREAD + category = CAT_FOOD /datum/crafting_recipe/food/banananutbread name = "Banana nut bread" @@ -42,7 +42,7 @@ /obj/item/weapon/reagent_containers/food/snacks/grown/banana = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/store/bread/banana - category = CAT_BREAD + category = CAT_FOOD /datum/crafting_recipe/food/tofubread name = "Tofu bread" @@ -52,7 +52,7 @@ /obj/item/weapon/reagent_containers/food/snacks/cheesewedge = 3 ) result = /obj/item/weapon/reagent_containers/food/snacks/store/bread/tofu - category = CAT_BREAD + category = CAT_FOOD /datum/crafting_recipe/food/creamcheesebread name = "Cream cheese bread" @@ -62,7 +62,7 @@ /obj/item/weapon/reagent_containers/food/snacks/cheesewedge = 2 ) result = /obj/item/weapon/reagent_containers/food/snacks/store/bread/creamcheese - category = CAT_BREAD + category = CAT_FOOD /datum/crafting_recipe/food/mimanabread name = "Mimana bread" @@ -73,4 +73,4 @@ /obj/item/weapon/reagent_containers/food/snacks/grown/banana/mime = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/store/bread/mimana - category = CAT_BREAD + category = CAT_FOOD diff --git a/code/modules/food_and_drinks/recipes/tablecraft/recipes_burger.dm b/code/modules/food_and_drinks/recipes/tablecraft/recipes_burger.dm index 573574f4e9..9db8cb7006 100644 --- a/code/modules/food_and_drinks/recipes/tablecraft/recipes_burger.dm +++ b/code/modules/food_and_drinks/recipes/tablecraft/recipes_burger.dm @@ -14,7 +14,7 @@ /obj/item/weapon/reagent_containers/food/snacks/meat/steak/plain/human = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/burger/human - category = CAT_BURGER + category = CAT_FOOD /datum/crafting_recipe/food/burger name = "Burger" @@ -24,7 +24,7 @@ ) result = /obj/item/weapon/reagent_containers/food/snacks/burger/plain - category = CAT_BURGER + category = CAT_FOOD /datum/crafting_recipe/food/corgiburger name = "Corgi burger" @@ -34,7 +34,7 @@ ) result = /obj/item/weapon/reagent_containers/food/snacks/burger/corgi - category = CAT_BURGER + category = CAT_FOOD /datum/crafting_recipe/food/appendixburger name = "Appendix burger" @@ -43,7 +43,7 @@ /obj/item/weapon/reagent_containers/food/snacks/bun = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/burger/appendix - category = CAT_BURGER + category = CAT_FOOD /datum/crafting_recipe/food/brainburger name = "Brain burger" @@ -52,7 +52,7 @@ /obj/item/weapon/reagent_containers/food/snacks/bun = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/burger/brain - category = CAT_BURGER + category = CAT_FOOD /datum/crafting_recipe/food/xenoburger name = "Xeno burger" @@ -61,7 +61,7 @@ /obj/item/weapon/reagent_containers/food/snacks/bun = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/burger/xeno - category = CAT_BURGER + category = CAT_FOOD /datum/crafting_recipe/food/bearger name = "Bearger" @@ -70,7 +70,7 @@ /obj/item/weapon/reagent_containers/food/snacks/bun = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/burger/bearger - category = CAT_BURGER + category = CAT_FOOD /datum/crafting_recipe/food/fishburger name = "Fish burger" @@ -79,7 +79,7 @@ /obj/item/weapon/reagent_containers/food/snacks/bun = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/burger/fish - category = CAT_BURGER + category = CAT_FOOD /datum/crafting_recipe/food/tofuburger name = "Tofu burger" @@ -88,7 +88,7 @@ /obj/item/weapon/reagent_containers/food/snacks/bun = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/burger/tofu - category = CAT_BURGER + category = CAT_FOOD /datum/crafting_recipe/food/ghostburger name = "Ghost burger" @@ -97,7 +97,7 @@ /obj/item/weapon/reagent_containers/food/snacks/bun = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/burger/ghost - category = CAT_BURGER + category = CAT_FOOD /datum/crafting_recipe/food/clownburger name = "Clown burger" @@ -106,7 +106,7 @@ /obj/item/weapon/reagent_containers/food/snacks/bun = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/burger/clown - category = CAT_BURGER + category = CAT_FOOD /datum/crafting_recipe/food/mimeburger name = "Mime burger" @@ -115,7 +115,7 @@ /obj/item/weapon/reagent_containers/food/snacks/bun = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/burger/mime - category = CAT_BURGER + category = CAT_FOOD /datum/crafting_recipe/food/redburger name = "Red burger" @@ -125,7 +125,7 @@ /obj/item/weapon/reagent_containers/food/snacks/bun = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/burger/red - category = CAT_BURGER + category = CAT_FOOD /datum/crafting_recipe/food/orangeburger name = "Orange burger" @@ -135,7 +135,7 @@ /obj/item/weapon/reagent_containers/food/snacks/bun = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/burger/orange - category = CAT_BURGER + category = CAT_FOOD /datum/crafting_recipe/food/yellowburger name = "Yellow burger" @@ -145,7 +145,7 @@ /obj/item/weapon/reagent_containers/food/snacks/bun = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/burger/yellow - category = CAT_BURGER + category = CAT_FOOD /datum/crafting_recipe/food/greenburger name = "Green burger" @@ -155,7 +155,7 @@ /obj/item/weapon/reagent_containers/food/snacks/bun = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/burger/green - category = CAT_BURGER + category = CAT_FOOD /datum/crafting_recipe/food/blueburger name = "Blue burger" @@ -165,7 +165,7 @@ /obj/item/weapon/reagent_containers/food/snacks/bun = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/burger/blue - category = CAT_BURGER + category = CAT_FOOD /datum/crafting_recipe/food/purpleburger name = "Purple burger" @@ -175,7 +175,7 @@ /obj/item/weapon/reagent_containers/food/snacks/bun = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/burger/purple - category = CAT_BURGER + category = CAT_FOOD /datum/crafting_recipe/food/spellburger name = "Spell burger" @@ -183,7 +183,7 @@ /obj/item/clothing/head/wizard/fake = 1, ) result = /obj/item/weapon/reagent_containers/food/snacks/burger/spell - category = CAT_BURGER + category = CAT_FOOD /datum/crafting_recipe/food/spellburger2 name = "Spell burger" @@ -192,7 +192,7 @@ /obj/item/weapon/reagent_containers/food/snacks/bun = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/burger/spell - category = CAT_BURGER + category = CAT_FOOD /datum/crafting_recipe/food/bigbiteburger name = "Big bite burger" @@ -201,7 +201,7 @@ /obj/item/weapon/reagent_containers/food/snacks/bun = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/burger/bigbite - category = CAT_BURGER + category = CAT_FOOD /datum/crafting_recipe/food/superbiteburger name = "Super bite burger" @@ -216,7 +216,7 @@ ) result = /obj/item/weapon/reagent_containers/food/snacks/burger/superbite - category = CAT_BURGER + category = CAT_FOOD /datum/crafting_recipe/food/slimeburger name = "Jelly burger" @@ -225,7 +225,7 @@ /obj/item/weapon/reagent_containers/food/snacks/bun = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/burger/jelly/slime - category = CAT_BURGER + category = CAT_FOOD /datum/crafting_recipe/food/jellyburger name = "Jelly burger" @@ -234,7 +234,7 @@ /obj/item/weapon/reagent_containers/food/snacks/bun = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/burger/jelly/cherry - category = CAT_BURGER + category = CAT_FOOD /datum/crafting_recipe/food/fivealarmburger name = "Five alarm burger" @@ -243,7 +243,7 @@ /obj/item/weapon/reagent_containers/food/snacks/bun = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/burger/fivealarm - category = CAT_BURGER + category = CAT_FOOD /datum/crafting_recipe/food/ratburger name = "Rat burger" @@ -252,16 +252,7 @@ /obj/item/weapon/reagent_containers/food/snacks/bun = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/burger/rat - category = CAT_BURGER - -/datum/crafting_recipe/food/baseballburger - name = "Home run baseball burger" - reqs = list( - /obj/item/weapon/melee/baseball_bat = 1, - /obj/item/weapon/reagent_containers/food/snacks/bun = 1 - ) - result = /obj/item/weapon/reagent_containers/food/snacks/burger/baseball - category = CAT_BURGER + category = CAT_FOOD /datum/crafting_recipe/food/baconburger name = "Bacon Burger" @@ -272,4 +263,4 @@ ) result = /obj/item/weapon/reagent_containers/food/snacks/burger/baconburger - category = CAT_BURGER + category = CAT_FOOD \ No newline at end of file diff --git a/code/modules/food_and_drinks/recipes/tablecraft/recipes_cake.dm b/code/modules/food_and_drinks/recipes/tablecraft/recipes_cake.dm index 439db2986b..eac0eeb212 100644 --- a/code/modules/food_and_drinks/recipes/tablecraft/recipes_cake.dm +++ b/code/modules/food_and_drinks/recipes/tablecraft/recipes_cake.dm @@ -10,7 +10,7 @@ /obj/item/weapon/reagent_containers/food/snacks/grown/carrot = 2 ) result = /obj/item/weapon/reagent_containers/food/snacks/store/cake/carrot - category = CAT_CAKE + category = CAT_FOOD /datum/crafting_recipe/food/cheesecake name = "Cheese cake" @@ -19,7 +19,7 @@ /obj/item/weapon/reagent_containers/food/snacks/cheesewedge = 2 ) result = /obj/item/weapon/reagent_containers/food/snacks/store/cake/cheese - category = CAT_CAKE + category = CAT_FOOD /datum/crafting_recipe/food/applecake name = "Apple cake" @@ -28,7 +28,7 @@ /obj/item/weapon/reagent_containers/food/snacks/grown/apple = 2 ) result = /obj/item/weapon/reagent_containers/food/snacks/store/cake/apple - category = CAT_CAKE + category = CAT_FOOD /datum/crafting_recipe/food/orangecake name = "Orange cake" @@ -37,7 +37,7 @@ /obj/item/weapon/reagent_containers/food/snacks/grown/citrus/orange = 2 ) result = /obj/item/weapon/reagent_containers/food/snacks/store/cake/orange - category = CAT_CAKE + category = CAT_FOOD /datum/crafting_recipe/food/limecake name = "Lime cake" @@ -46,7 +46,7 @@ /obj/item/weapon/reagent_containers/food/snacks/grown/citrus/lime = 2 ) result = /obj/item/weapon/reagent_containers/food/snacks/store/cake/lime - category = CAT_CAKE + category = CAT_FOOD /datum/crafting_recipe/food/lemoncake name = "Lemon cake" @@ -55,7 +55,7 @@ /obj/item/weapon/reagent_containers/food/snacks/grown/citrus/lemon = 2 ) result = /obj/item/weapon/reagent_containers/food/snacks/store/cake/lemon - category = CAT_CAKE + category = CAT_FOOD /datum/crafting_recipe/food/chocolatecake name = "Chocolate cake" @@ -64,7 +64,7 @@ /obj/item/weapon/reagent_containers/food/snacks/chocolatebar = 2 ) result = /obj/item/weapon/reagent_containers/food/snacks/store/cake/chocolate - category = CAT_CAKE + category = CAT_FOOD /datum/crafting_recipe/food/birthdaycake name = "Birthday cake" @@ -73,7 +73,7 @@ /obj/item/weapon/reagent_containers/food/snacks/store/cake/plain = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/store/cake/birthday - category = CAT_CAKE + category = CAT_FOOD /datum/crafting_recipe/food/braincake name = "Brain cake" @@ -82,7 +82,7 @@ /obj/item/weapon/reagent_containers/food/snacks/store/cake/plain = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/store/cake/brain - category = CAT_CAKE + category = CAT_FOOD /datum/crafting_recipe/food/slimecake name = "Slime cake" @@ -91,7 +91,7 @@ /obj/item/weapon/reagent_containers/food/snacks/store/cake/plain = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/store/cake/slimecake - category = CAT_CAKE + category = CAT_FOOD /datum/crafting_recipe/food/pumpkinspicecake name = "Pumpkin spice cake" @@ -100,7 +100,7 @@ /obj/item/weapon/reagent_containers/food/snacks/grown/pumpkin = 2 ) result = /obj/item/weapon/reagent_containers/food/snacks/store/cake/pumpkinspice - category = CAT_CAKE + category = CAT_FOOD /datum/crafting_recipe/food/cak name = "Living cat/cake hybrid" @@ -111,7 +111,7 @@ /obj/item/weapon/reagent_containers/food/snacks/meat/slab = 3, /datum/reagent/blood = 30, /datum/reagent/consumable/sprinkles = 5, - /datum/reagent/teslium = 1 //To shock the whole thing into life + /datum/reagent/toxin/teslium = 1 //To shock the whole thing into life ) result = /mob/living/simple_animal/pet/cat/cak - category = CAT_CAKE //Cat! Haha, get it? CAT? GET IT??? + category = CAT_FOOD //Cat! Haha, get it? CAT? GET IT??? diff --git a/code/modules/food_and_drinks/recipes/tablecraft/recipes_egg.dm b/code/modules/food_and_drinks/recipes/tablecraft/recipes_egg.dm index c03fbe4710..b01f794fc2 100644 --- a/code/modules/food_and_drinks/recipes/tablecraft/recipes_egg.dm +++ b/code/modules/food_and_drinks/recipes/tablecraft/recipes_egg.dm @@ -11,7 +11,7 @@ /obj/item/weapon/reagent_containers/food/snacks/boiledegg = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/friedegg - category = CAT_EGG + category = CAT_FOOD /datum/crafting_recipe/food/omelette name = "omelette" @@ -20,7 +20,7 @@ /obj/item/weapon/reagent_containers/food/snacks/cheesewedge = 2 ) result = /obj/item/weapon/reagent_containers/food/snacks/omelette - category = CAT_EGG + category = CAT_FOOD /datum/crafting_recipe/food/chocolateegg name = "Chocolate egg" @@ -29,7 +29,7 @@ /obj/item/weapon/reagent_containers/food/snacks/chocolatebar = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/chocolateegg - category = CAT_EGG + category = CAT_FOOD /datum/crafting_recipe/food/eggsbenedict name = "Eggs benedict" @@ -39,4 +39,4 @@ /obj/item/weapon/reagent_containers/food/snacks/breadslice/plain = 1, ) result = /obj/item/weapon/reagent_containers/food/snacks/benedict - category = CAT_EGG + category = CAT_FOOD diff --git a/code/modules/food_and_drinks/recipes/tablecraft/recipes_meat.dm b/code/modules/food_and_drinks/recipes/tablecraft/recipes_meat.dm index d2245a0ecd..f0432c8028 100644 --- a/code/modules/food_and_drinks/recipes/tablecraft/recipes_meat.dm +++ b/code/modules/food_and_drinks/recipes/tablecraft/recipes_meat.dm @@ -9,7 +9,7 @@ /obj/item/weapon/reagent_containers/food/snacks/meat/steak/plain/human = 2 ) result = /obj/item/weapon/reagent_containers/food/snacks/kebab/human - category = CAT_MEAT + category = CAT_FOOD /datum/crafting_recipe/food/kebab name = "Kebab" @@ -18,7 +18,7 @@ /obj/item/weapon/reagent_containers/food/snacks/meat/steak = 2 ) result = /obj/item/weapon/reagent_containers/food/snacks/kebab/monkey - category = CAT_MEAT + category = CAT_FOOD /datum/crafting_recipe/food/tofukebab name = "Tofu kebab" @@ -27,7 +27,7 @@ /obj/item/weapon/reagent_containers/food/snacks/tofu = 2 ) result = /obj/item/weapon/reagent_containers/food/snacks/kebab/tofu - category = CAT_MEAT + category = CAT_FOOD /datum/crafting_recipe/food/tailkebab name = "Lizard tail kebab" @@ -36,7 +36,7 @@ /obj/item/severedtail = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/kebab/tail - category = CAT_MEAT + category = CAT_FOOD // see code/module/crafting/table.dm @@ -50,7 +50,7 @@ /obj/item/weapon/reagent_containers/food/snacks/carpmeat = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/cubancarp - category = CAT_MEAT + category = CAT_FOOD /datum/crafting_recipe/food/fishandchips name = "Fish and chips" @@ -59,7 +59,7 @@ /obj/item/weapon/reagent_containers/food/snacks/carpmeat = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/fishandchips - category = CAT_MEAT + category = CAT_FOOD /datum/crafting_recipe/food/fishfingers name = "Fish fingers" @@ -69,7 +69,7 @@ /obj/item/weapon/reagent_containers/food/snacks/carpmeat = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/fishfingers - category = CAT_MEAT + category = CAT_FOOD /datum/crafting_recipe/food/sashimi name = "Sashimi" @@ -79,7 +79,7 @@ /obj/item/weapon/reagent_containers/food/snacks/carpmeat = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/sashimi - category = CAT_MEAT + category = CAT_FOOD ////////////////////////////////////////////////MR SPIDER//////////////////////////////////////////////// @@ -91,7 +91,7 @@ /obj/item/weapon/reagent_containers/food/snacks/meat/cutlet/spider = 2 ) result = /obj/item/weapon/reagent_containers/food/snacks/spidereggsham - category = CAT_MEAT + category = CAT_FOOD ////////////////////////////////////////////////MISC RECIPE's//////////////////////////////////////////////// @@ -103,7 +103,7 @@ /obj/item/weapon/reagent_containers/food/snacks/grown/cabbage = 2 ) result = /obj/item/weapon/reagent_containers/food/snacks/cornedbeef - category = CAT_MEAT + category = CAT_FOOD /datum/crafting_recipe/food/bearsteak name = "Filet migrawr" @@ -113,7 +113,7 @@ ) tools = list(/obj/item/weapon/lighter) result = /obj/item/weapon/reagent_containers/food/snacks/bearsteak - category = CAT_MEAT + category = CAT_FOOD /datum/crafting_recipe/food/enchiladas name = "Enchiladas" @@ -123,7 +123,7 @@ /obj/item/weapon/reagent_containers/food/snacks/tortilla = 2 ) result = /obj/item/weapon/reagent_containers/food/snacks/enchiladas - category = CAT_MEAT + category = CAT_FOOD /datum/crafting_recipe/food/stewedsoymeat name = "Stewed soymeat" @@ -133,7 +133,7 @@ /obj/item/weapon/reagent_containers/food/snacks/grown/tomato = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/stewedsoymeat - category = CAT_MEAT + category = CAT_FOOD /datum/crafting_recipe/food/sausage name = "Sausage" @@ -142,7 +142,7 @@ /obj/item/weapon/reagent_containers/food/snacks/meat/cutlet = 2 ) result = /obj/item/weapon/reagent_containers/food/snacks/sausage - category = CAT_MEAT + category = CAT_FOOD /datum/crafting_recipe/food/nugget name = "Chicken nugget" @@ -150,7 +150,7 @@ /obj/item/weapon/reagent_containers/food/snacks/meat/cutlet = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/nugget - category = CAT_MEAT + category = CAT_FOOD /datum/crafting_recipe/food/rawkhinkali name = "Raw Khinkali" @@ -159,4 +159,4 @@ /obj/item/weapon/reagent_containers/food/snacks/faggot = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/rawkhinkali - category = CAT_MEAT + category = CAT_FOOD diff --git a/code/modules/food_and_drinks/recipes/tablecraft/recipes_misc.dm b/code/modules/food_and_drinks/recipes/tablecraft/recipes_misc.dm index a3bb0afa9a..485e1552d1 100644 --- a/code/modules/food_and_drinks/recipes/tablecraft/recipes_misc.dm +++ b/code/modules/food_and_drinks/recipes/tablecraft/recipes_misc.dm @@ -10,7 +10,7 @@ /obj/item/weapon/reagent_containers/food/snacks/grown/apple = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/candiedapple - category = CAT_MISCFOOD + category = CAT_FOOD /datum/crafting_recipe/food/chococoin name = "Choco coin" @@ -19,7 +19,7 @@ /obj/item/weapon/reagent_containers/food/snacks/chocolatebar = 1, ) result = /obj/item/weapon/reagent_containers/food/snacks/chococoin - category = CAT_MISCFOOD + category = CAT_FOOD /datum/crafting_recipe/food/fudgedice name = "Fudge dice" @@ -28,7 +28,7 @@ /obj/item/weapon/reagent_containers/food/snacks/chocolatebar = 1, ) result = /obj/item/weapon/reagent_containers/food/snacks/fudgedice - category = CAT_MISCFOOD + category = CAT_FOOD /datum/crafting_recipe/food/chocoorange name = "Choco orange" @@ -37,7 +37,7 @@ /obj/item/weapon/reagent_containers/food/snacks/chocolatebar = 1, ) result = /obj/item/weapon/reagent_containers/food/snacks/chocoorange - category = CAT_MISCFOOD + category = CAT_FOOD /datum/crafting_recipe/food/loadedbakedpotato name = "Loaded baked potato" @@ -47,7 +47,7 @@ /obj/item/weapon/reagent_containers/food/snacks/cheesewedge = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/loadedbakedpotato - category = CAT_MISCFOOD + category = CAT_FOOD /datum/crafting_recipe/food/cheesyfries name = "Cheesy fries" @@ -56,7 +56,7 @@ /obj/item/weapon/reagent_containers/food/snacks/cheesewedge = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/cheesyfries - category = CAT_MISCFOOD + category = CAT_FOOD /datum/crafting_recipe/food/wrap name = "Wrap" @@ -65,7 +65,7 @@ /obj/item/weapon/reagent_containers/food/snacks/grown/cabbage = 1, ) result = /obj/item/weapon/reagent_containers/food/snacks/eggwrap - category = CAT_MISCFOOD + category = CAT_FOOD /datum/crafting_recipe/food/beans name = "Beans" @@ -74,7 +74,7 @@ /obj/item/weapon/reagent_containers/food/snacks/grown/soybeans = 2 ) result = /obj/item/weapon/reagent_containers/food/snacks/beans - category = CAT_MISCFOOD + category = CAT_FOOD /datum/crafting_recipe/food/eggplantparm name ="Eggplant parmigiana" @@ -83,7 +83,7 @@ /obj/item/weapon/reagent_containers/food/snacks/grown/eggplant = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/eggplantparm - category = CAT_MISCFOOD + category = CAT_FOOD /datum/crafting_recipe/food/baguette name = "Baguette" @@ -93,7 +93,7 @@ /obj/item/weapon/reagent_containers/food/snacks/pastrybase = 2 ) result = /obj/item/weapon/reagent_containers/food/snacks/baguette - category = CAT_MISCFOOD + category = CAT_FOOD ////////////////////////////////////////////////TOAST//////////////////////////////////////////////// @@ -104,7 +104,7 @@ /obj/item/weapon/reagent_containers/food/snacks/breadslice/plain = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/jelliedtoast/slime - category = CAT_MISCFOOD + category = CAT_FOOD /datum/crafting_recipe/food/jelliedyoast name = "Jellied toast" @@ -113,7 +113,7 @@ /obj/item/weapon/reagent_containers/food/snacks/breadslice/plain = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/jelliedtoast/cherry - category = CAT_MISCFOOD + category = CAT_FOOD /datum/crafting_recipe/food/twobread name = "Two bread" @@ -122,7 +122,7 @@ /obj/item/weapon/reagent_containers/food/snacks/breadslice/plain = 2 ) result = /obj/item/weapon/reagent_containers/food/snacks/twobread - category = CAT_MISCFOOD + category = CAT_FOOD /datum/crafting_recipe/food/burrito name ="Burrito" @@ -131,7 +131,7 @@ /obj/item/weapon/reagent_containers/food/snacks/grown/soybeans = 2 ) result = /obj/item/weapon/reagent_containers/food/snacks/burrito - category = CAT_MISCFOOD + category = CAT_FOOD /datum/crafting_recipe/food/cheesyburrito name ="Cheesy burrito" @@ -141,7 +141,7 @@ /obj/item/weapon/reagent_containers/food/snacks/grown/soybeans = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/cheesyburrito - category = CAT_MISCFOOD + category = CAT_FOOD /datum/crafting_recipe/food/carneburrito name ="Carne de asada burrito" @@ -151,7 +151,7 @@ /obj/item/weapon/reagent_containers/food/snacks/grown/soybeans = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/carneburrito - category = CAT_MISCFOOD + category = CAT_FOOD /datum/crafting_recipe/food/fuegoburrito name ="Fuego plasma burrito" @@ -161,7 +161,7 @@ /obj/item/weapon/reagent_containers/food/snacks/grown/soybeans = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/fuegoburrito - category = CAT_MISCFOOD + category = CAT_FOOD /datum/crafting_recipe/food/melonfruitbowl name ="Melon fruit bowl" @@ -174,7 +174,7 @@ /obj/item/weapon/reagent_containers/food/snacks/grown/ambrosia = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/melonfruitbowl - category = CAT_MISCFOOD + category = CAT_FOOD /datum/crafting_recipe/food/spacefreezy name ="Space freezy" @@ -184,7 +184,7 @@ /obj/item/weapon/reagent_containers/food/snacks/icecream = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/spacefreezy - category = CAT_MISCFOOD + category = CAT_FOOD /datum/crafting_recipe/food/sundae name ="Sundae" @@ -195,7 +195,7 @@ /obj/item/weapon/reagent_containers/food/snacks/icecream = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/sundae - category = CAT_MISCFOOD + category = CAT_FOOD /datum/crafting_recipe/food/honkdae name ="Honkdae" @@ -207,7 +207,7 @@ /obj/item/weapon/reagent_containers/food/snacks/icecream = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/honkdae - category = CAT_MISCFOOD + category = CAT_FOOD /datum/crafting_recipe/food/nachos name ="Nachos" @@ -216,7 +216,7 @@ /obj/item/weapon/reagent_containers/food/snacks/tortilla = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/nachos - category = CAT_MISCFOOD + category = CAT_FOOD /datum/crafting_recipe/food/cheesynachos name ="Cheesy nachos" @@ -226,7 +226,7 @@ /obj/item/weapon/reagent_containers/food/snacks/tortilla = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/cheesynachos - category = CAT_MISCFOOD + category = CAT_FOOD /datum/crafting_recipe/food/cubannachos name ="Cuban nachos" @@ -236,7 +236,7 @@ /obj/item/weapon/reagent_containers/food/snacks/tortilla = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/cubannachos - category = CAT_MISCFOOD + category = CAT_FOOD /datum/crafting_recipe/food/melonkeg name ="Melon keg" @@ -247,7 +247,7 @@ ) parts = list(/obj/item/weapon/reagent_containers/food/drinks/bottle/vodka = 1) result = /obj/item/weapon/reagent_containers/food/snacks/melonkeg - category = CAT_MISCFOOD + category = CAT_FOOD /datum/crafting_recipe/food/honeybar name = "Honey nut bar" @@ -256,10 +256,10 @@ /datum/reagent/consumable/honey = 5 ) result = /obj/item/weapon/reagent_containers/food/snacks/honeybar - category = CAT_MISCFOOD + category = CAT_FOOD -/datum/crafting_recipe/food/stuffedlegion +/datum/crafting_recipe/stuffedlegion name = "Stuffed legion" time = 40 reqs = list( @@ -269,10 +269,9 @@ /datum/reagent/consumable/capsaicin = 2 ) result = /obj/item/weapon/reagent_containers/food/snacks/stuffedlegion - category = CAT_MISCFOOD + category = CAT_FOOD - -/datum/crafting_recipe/food/lizardwine +/datum/crafting_recipe/lizardwine name = "Lizard wine" time = 40 reqs = list( @@ -280,39 +279,4 @@ /datum/reagent/consumable/ethanol = 100 ) result = /obj/item/weapon/reagent_containers/food/drinks/bottle/lizardwine - category = CAT_MISCFOOD - - -/datum/crafting_recipe/food/powercrepe - name = "Powercrepe" - time = 40 - reqs = list( - /obj/item/weapon/reagent_containers/food/snacks/flatdough = 1, - /datum/reagent/consumable/milk = 1, - /datum/reagent/consumable/cherryjelly = 5, - /obj/item/weapon/stock_parts/cell/super =1, - /obj/item/weapon/melee/sabre = 1 - ) - result = /obj/item/weapon/reagent_containers/food/snacks/powercrepe - category = CAT_MISCFOOD - -/datum/crafting_recipe/food/taco - name ="Classic Taco" - reqs = list( - /obj/item/weapon/reagent_containers/food/snacks/tortilla = 1, - /obj/item/weapon/reagent_containers/food/snacks/cheesewedge = 1, - /obj/item/weapon/reagent_containers/food/snacks/meat/cutlet = 1, - /obj/item/weapon/reagent_containers/food/snacks/grown/cabbage = 1, - ) - result = /obj/item/weapon/reagent_containers/food/snacks/taco - category = CAT_MISCFOOD - -/datum/crafting_recipe/food/tacoplain - name ="Plain Taco" - reqs = list( - /obj/item/weapon/reagent_containers/food/snacks/tortilla = 1, - /obj/item/weapon/reagent_containers/food/snacks/cheesewedge = 1, - /obj/item/weapon/reagent_containers/food/snacks/meat/cutlet = 1, - ) - result = /obj/item/weapon/reagent_containers/food/snacks/taco/plain - category = CAT_MISCFOOD \ No newline at end of file + category = CAT_FOOD \ No newline at end of file diff --git a/code/modules/food_and_drinks/recipes/tablecraft/recipes_pastry.dm b/code/modules/food_and_drinks/recipes/tablecraft/recipes_pastry.dm index fd943379e0..b0313fc0b2 100644 --- a/code/modules/food_and_drinks/recipes/tablecraft/recipes_pastry.dm +++ b/code/modules/food_and_drinks/recipes/tablecraft/recipes_pastry.dm @@ -11,7 +11,7 @@ /obj/item/weapon/reagent_containers/food/snacks/pastrybase = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/donut/chaos - category = CAT_PASTRY + category = CAT_FOOD /datum/crafting_recipe/food/donut time = 15 @@ -21,7 +21,7 @@ /obj/item/weapon/reagent_containers/food/snacks/pastrybase = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/donut - category = CAT_PASTRY + category = CAT_FOOD /datum/crafting_recipe/food/jellydonut name = "Jelly donut" @@ -30,7 +30,7 @@ /obj/item/weapon/reagent_containers/food/snacks/pastrybase = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/donut/jelly - category = CAT_PASTRY + category = CAT_FOOD /datum/crafting_recipe/food/cherryjellydonut name = "Cherry jelly donut" @@ -39,7 +39,7 @@ /obj/item/weapon/reagent_containers/food/snacks/pastrybase = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/donut/jelly/cherryjelly - category = CAT_PASTRY + category = CAT_FOOD /datum/crafting_recipe/food/slimejellydonut name = "Slime jelly donut" @@ -48,7 +48,7 @@ /obj/item/weapon/reagent_containers/food/snacks/pastrybase = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/donut/jelly/slimejelly - category = CAT_PASTRY + category = CAT_FOOD ////////////////////////////////////////////////WAFFLES//////////////////////////////////////////////// @@ -59,7 +59,7 @@ /obj/item/weapon/reagent_containers/food/snacks/pastrybase = 2 ) result = /obj/item/weapon/reagent_containers/food/snacks/waffles - category = CAT_PASTRY + category = CAT_FOOD /datum/crafting_recipe/food/soylenviridians @@ -69,7 +69,7 @@ /obj/item/weapon/reagent_containers/food/snacks/grown/soybeans = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/soylenviridians - category = CAT_PASTRY + category = CAT_FOOD /datum/crafting_recipe/food/soylentgreen name = "Soylent green" @@ -78,7 +78,7 @@ /obj/item/weapon/reagent_containers/food/snacks/meat/slab/human = 2 ) result = /obj/item/weapon/reagent_containers/food/snacks/soylentgreen - category = CAT_PASTRY + category = CAT_FOOD /datum/crafting_recipe/food/rofflewaffles @@ -88,7 +88,7 @@ /obj/item/weapon/reagent_containers/food/snacks/pastrybase = 2 ) result = /obj/item/weapon/reagent_containers/food/snacks/rofflewaffles - category = CAT_PASTRY + category = CAT_FOOD ////////////////////////////////////////////////DONKPOCCKETS//////////////////////////////////////////////// @@ -100,17 +100,8 @@ /obj/item/weapon/reagent_containers/food/snacks/faggot = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/donkpocket - category = CAT_PASTRY + category = CAT_FOOD -/datum/crafting_recipe/food/dankpocket - time = 15 - name = "Dankpocket" - reqs = list( - /obj/item/weapon/reagent_containers/food/snacks/pastrybase = 1, - /obj/item/weapon/reagent_containers/food/snacks/grown/cannabis = 1 - ) - result = /obj/item/weapon/reagent_containers/food/snacks/dankpocket - category = CAT_PASTRY ////////////////////////////////////////////////MUFFINS//////////////////////////////////////////////// @@ -122,7 +113,7 @@ /obj/item/weapon/reagent_containers/food/snacks/pastrybase = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/muffin - category = CAT_PASTRY + category = CAT_FOOD /datum/crafting_recipe/food/berrymuffin name = "Berry muffin" @@ -132,7 +123,7 @@ /obj/item/weapon/reagent_containers/food/snacks/grown/berries = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/muffin/berry - category = CAT_PASTRY + category = CAT_FOOD /datum/crafting_recipe/food/booberrymuffin name = "Booberry muffin" @@ -143,7 +134,7 @@ /obj/item/weapon/ectoplasm = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/muffin/booberry - category = CAT_PASTRY + category = CAT_FOOD /datum/crafting_recipe/food/chawanmushi name = "Chawanmushi" @@ -154,7 +145,7 @@ /obj/item/weapon/reagent_containers/food/snacks/grown/mushroom/chanterelle = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/chawanmushi - category = CAT_PASTRY + category = CAT_FOOD ////////////////////////////////////////////OTHER//////////////////////////////////////////// @@ -166,7 +157,7 @@ /obj/item/weapon/reagent_containers/food/snacks/sausage = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/hotdog - category = CAT_PASTRY + category = CAT_FOOD /datum/crafting_recipe/food/meatbun name = "Meat bun" @@ -177,7 +168,7 @@ /obj/item/weapon/reagent_containers/food/snacks/grown/cabbage = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/meatbun - category = CAT_PASTRY + category = CAT_FOOD /datum/crafting_recipe/food/khachapuri name = "Khachapuri" @@ -187,7 +178,7 @@ /obj/item/weapon/reagent_containers/food/snacks/store/bread/plain = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/khachapuri - category = CAT_PASTRY + category = CAT_FOOD /datum/crafting_recipe/food/sugarcookie time = 15 @@ -197,7 +188,7 @@ /obj/item/weapon/reagent_containers/food/snacks/pastrybase = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/sugarcookie - category = CAT_PASTRY + category = CAT_FOOD /datum/crafting_recipe/food/fortunecookie time = 15 @@ -210,7 +201,7 @@ /obj/item/weapon/paper = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/fortunecookie - category = CAT_PASTRY + category = CAT_FOOD /datum/crafting_recipe/food/poppypretzel time = 15 @@ -220,7 +211,7 @@ /obj/item/weapon/reagent_containers/food/snacks/pastrybase = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/poppypretzel - category = CAT_PASTRY + category = CAT_FOOD /datum/crafting_recipe/food/plumphelmetbiscuit time = 15 @@ -230,7 +221,7 @@ /obj/item/weapon/reagent_containers/food/snacks/grown/mushroom/plumphelmet = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/plumphelmetbiscuit - category = CAT_PASTRY + category = CAT_FOOD /datum/crafting_recipe/food/cracker time = 15 @@ -240,7 +231,7 @@ /obj/item/weapon/reagent_containers/food/snacks/pastrybase = 1, ) result = /obj/item/weapon/reagent_containers/food/snacks/cracker - category = CAT_PASTRY + category = CAT_FOOD /datum/crafting_recipe/food/chococornet name = "Choco cornet" @@ -250,7 +241,7 @@ /obj/item/weapon/reagent_containers/food/snacks/chocolatebar = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/chococornet - category = CAT_PASTRY + category = CAT_FOOD /datum/crafting_recipe/food/oatmealcookie name = "Oatmeal cookie" @@ -268,7 +259,7 @@ /obj/item/weapon/reagent_containers/food/snacks/grown/oat = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/raisincookie - category = CAT_PASTRY + category = CAT_FOOD /datum/crafting_recipe/food/cherrycupcake name = "Cherry cupcake" @@ -277,7 +268,7 @@ /obj/item/weapon/reagent_containers/food/snacks/grown/cherries = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/cherrycupcake - category = CAT_PASTRY + category = CAT_FOOD /datum/crafting_recipe/food/bluecherrycupcake name = "Blue cherry cupcake" @@ -286,7 +277,7 @@ /obj/item/weapon/reagent_containers/food/snacks/grown/bluecherries = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/bluecherrycupcake - category = CAT_PASTRY + category = CAT_FOOD /datum/crafting_recipe/food/honeybun name = "Honey bun" @@ -295,4 +286,4 @@ /datum/reagent/consumable/honey = 5 ) result = /obj/item/weapon/reagent_containers/food/snacks/honeybun - category = CAT_PASTRY + category = CAT_FOOD \ No newline at end of file diff --git a/code/modules/food_and_drinks/recipes/tablecraft/recipes_pie.dm b/code/modules/food_and_drinks/recipes/tablecraft/recipes_pie.dm index df47c64de7..f6e938ae47 100644 --- a/code/modules/food_and_drinks/recipes/tablecraft/recipes_pie.dm +++ b/code/modules/food_and_drinks/recipes/tablecraft/recipes_pie.dm @@ -11,7 +11,7 @@ /obj/item/weapon/reagent_containers/food/snacks/grown/banana = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/pie/cream - category = CAT_PIE + category = CAT_FOOD /datum/crafting_recipe/food/meatpie name = "Meat pie" @@ -22,7 +22,7 @@ /obj/item/weapon/reagent_containers/food/snacks/meat/steak/plain = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/pie/meatpie - category = CAT_PIE + category = CAT_FOOD /datum/crafting_recipe/food/tofupie name = "Tofu pie" @@ -31,7 +31,7 @@ /obj/item/weapon/reagent_containers/food/snacks/tofu = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/pie/tofupie - category = CAT_PIE + category = CAT_FOOD /datum/crafting_recipe/food/xenopie name = "Xeno pie" @@ -40,7 +40,7 @@ /obj/item/weapon/reagent_containers/food/snacks/meat/cutlet/xeno = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/pie/xemeatpie - category = CAT_PIE + category = CAT_FOOD /datum/crafting_recipe/food/cherrypie name = "Cherry pie" @@ -49,7 +49,7 @@ /obj/item/weapon/reagent_containers/food/snacks/grown/cherries = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/pie/cherrypie - category = CAT_PIE + category = CAT_FOOD /datum/crafting_recipe/food/berryclafoutis name = "Berry clafoutis" @@ -58,7 +58,7 @@ /obj/item/weapon/reagent_containers/food/snacks/grown/berries = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/pie/berryclafoutis - category = CAT_PIE + category = CAT_FOOD /datum/crafting_recipe/food/bearypie name = "Beary Pie" @@ -68,7 +68,7 @@ /obj/item/weapon/reagent_containers/food/snacks/meat/steak/bear = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/pie/bearypie - category = CAT_PIE + category = CAT_FOOD /datum/crafting_recipe/food/amanitapie name = "Amanita pie" @@ -77,7 +77,7 @@ /obj/item/weapon/reagent_containers/food/snacks/grown/mushroom/amanita = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/pie/amanita_pie - category = CAT_PIE + category = CAT_FOOD /datum/crafting_recipe/food/plumppie name = "Plump pie" @@ -86,7 +86,7 @@ /obj/item/weapon/reagent_containers/food/snacks/grown/mushroom/plumphelmet = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/pie/plump_pie - category = CAT_PIE + category = CAT_FOOD /datum/crafting_recipe/food/applepie name = "Apple pie" @@ -95,7 +95,7 @@ /obj/item/weapon/reagent_containers/food/snacks/grown/apple = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/pie/applepie - category = CAT_PIE + category = CAT_FOOD /datum/crafting_recipe/food/pumpkinpie name = "Pumpkin pie" @@ -106,7 +106,7 @@ /obj/item/weapon/reagent_containers/food/snacks/grown/pumpkin = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/pie/pumpkinpie - category = CAT_PIE + category = CAT_FOOD /datum/crafting_recipe/food/goldenappletart name = "Golden apple tart" @@ -117,7 +117,7 @@ /obj/item/weapon/reagent_containers/food/snacks/grown/apple/gold = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/pie/appletart - category = CAT_PIE + category = CAT_FOOD /datum/crafting_recipe/food/grapetart name = "Grape tart" @@ -128,7 +128,7 @@ /obj/item/weapon/reagent_containers/food/snacks/grown/grapes = 3 ) result = /obj/item/weapon/reagent_containers/food/snacks/pie/grapetart - category = CAT_PIE + category = CAT_FOOD /datum/crafting_recipe/food/blumpkinpie name = "Blumpkin pie" @@ -139,7 +139,7 @@ /obj/item/weapon/reagent_containers/food/snacks/grown/blumpkin = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/pie/blumpkinpie - category = CAT_PIE + category = CAT_FOOD /datum/crafting_recipe/food/dulcedebatata name = "Dulce de batata" @@ -149,7 +149,7 @@ /obj/item/weapon/reagent_containers/food/snacks/grown/potato/sweet = 2 ) result = /obj/item/weapon/reagent_containers/food/snacks/pie/dulcedebatata - category = CAT_PIE + category = CAT_FOOD /datum/crafting_recipe/food/frostypie name = "Frosty pie" @@ -158,4 +158,4 @@ /obj/item/weapon/reagent_containers/food/snacks/grown/bluecherries = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/pie/frostypie - category = CAT_PIE + category = CAT_FOOD \ No newline at end of file diff --git a/code/modules/food_and_drinks/recipes/tablecraft/recipes_pizza.dm b/code/modules/food_and_drinks/recipes/tablecraft/recipes_pizza.dm index 8bb73ad7c8..f7627e2e07 100644 --- a/code/modules/food_and_drinks/recipes/tablecraft/recipes_pizza.dm +++ b/code/modules/food_and_drinks/recipes/tablecraft/recipes_pizza.dm @@ -11,7 +11,7 @@ /obj/item/weapon/reagent_containers/food/snacks/grown/tomato = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/pizza/margherita - category = CAT_PIZZA + category = CAT_FOOD /datum/crafting_recipe/food/meatpizza name = "Meat pizza" @@ -22,7 +22,7 @@ /obj/item/weapon/reagent_containers/food/snacks/grown/tomato = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/pizza/meat - category = CAT_PIZZA + category = CAT_FOOD /datum/crafting_recipe/food/mushroompizza name = "Mushroom pizza" @@ -31,7 +31,7 @@ /obj/item/weapon/reagent_containers/food/snacks/grown/mushroom = 5 ) result = /obj/item/weapon/reagent_containers/food/snacks/pizza/mushroom - category = CAT_PIZZA + category = CAT_FOOD /datum/crafting_recipe/food/vegetablepizza name = "Vegetable pizza" @@ -43,7 +43,7 @@ /obj/item/weapon/reagent_containers/food/snacks/grown/tomato = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/pizza/vegetable - category = CAT_PIZZA + category = CAT_FOOD /datum/crafting_recipe/food/donpocketpizza name = "Donkpocket pizza" @@ -54,7 +54,7 @@ /obj/item/weapon/reagent_containers/food/snacks/grown/tomato = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/pizza/donkpocket - category = CAT_PIZZA + category = CAT_FOOD /datum/crafting_recipe/food/dankpizza name = "Dank pizza" @@ -65,7 +65,7 @@ /obj/item/weapon/reagent_containers/food/snacks/grown/tomato = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/pizza/dank - category = CAT_PIZZA + category = CAT_FOOD /datum/crafting_recipe/food/sassysagepizza name = "Sassysage pizza" @@ -76,4 +76,4 @@ /obj/item/weapon/reagent_containers/food/snacks/grown/tomato = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/pizza/sassysage - category = CAT_PIZZA + category = CAT_FOOD \ No newline at end of file diff --git a/code/modules/food_and_drinks/recipes/tablecraft/recipes_salad.dm b/code/modules/food_and_drinks/recipes/tablecraft/recipes_salad.dm index d60fc34083..fc4633253f 100644 --- a/code/modules/food_and_drinks/recipes/tablecraft/recipes_salad.dm +++ b/code/modules/food_and_drinks/recipes/tablecraft/recipes_salad.dm @@ -11,7 +11,7 @@ /obj/item/weapon/reagent_containers/food/snacks/grown/apple = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/salad/herbsalad - category = CAT_SALAD + category = CAT_FOOD /datum/crafting_recipe/food/aesirsalad name = "Aesir salad" @@ -21,7 +21,7 @@ /obj/item/weapon/reagent_containers/food/snacks/grown/apple/gold = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/salad/aesirsalad - category = CAT_SALAD + category = CAT_FOOD /datum/crafting_recipe/food/validsalad name = "Valid salad" @@ -32,7 +32,7 @@ /obj/item/weapon/reagent_containers/food/snacks/faggot = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/salad/validsalad - category = CAT_SALAD + category = CAT_FOOD /datum/crafting_recipe/food/monkeysdelight name = "Monkeys delight" @@ -45,7 +45,7 @@ /obj/item/weapon/reagent_containers/food/snacks/grown/banana = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/soup/monkeysdelight - category = CAT_SALAD + category = CAT_FOOD /datum/crafting_recipe/food/oatmeal name = "Oatmeal" @@ -55,7 +55,7 @@ /obj/item/weapon/reagent_containers/food/snacks/grown/oat = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/salad/oatmeal - category = CAT_SALAD + category = CAT_FOOD /datum/crafting_recipe/food/fruitsalad name = "Fruit salad" @@ -68,7 +68,7 @@ ) result = /obj/item/weapon/reagent_containers/food/snacks/salad/fruit - category = CAT_SALAD + category = CAT_FOOD /datum/crafting_recipe/food/junglesalad name = "Jungle salad" @@ -81,7 +81,7 @@ ) result = /obj/item/weapon/reagent_containers/food/snacks/salad/jungle - category = CAT_SALAD + category = CAT_FOOD /datum/crafting_recipe/food/citrusdelight name = "Citrus delight" @@ -93,7 +93,7 @@ ) result = /obj/item/weapon/reagent_containers/food/snacks/salad/citrusdelight - category = CAT_SALAD + category = CAT_FOOD /datum/crafting_recipe/food/ricepork name = "Rice and pork" @@ -102,7 +102,7 @@ /obj/item/weapon/reagent_containers/food/snacks/meat/cutlet = 2 ) result = /obj/item/weapon/reagent_containers/food/snacks/salad/ricepork - category = CAT_SALAD + category = CAT_FOOD /datum/crafting_recipe/food/eggbowl name = "Egg bowl" @@ -113,7 +113,7 @@ /obj/item/weapon/reagent_containers/food/snacks/grown/corn = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/salad/eggbowl - category = CAT_SALAD + category = CAT_FOOD /datum/crafting_recipe/food/ricepudding name = "Rice pudding" @@ -123,4 +123,4 @@ /obj/item/weapon/reagent_containers/food/snacks/salad/boiledrice = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/salad/ricepudding - category = CAT_SALAD + category = CAT_FOOD diff --git a/code/modules/food_and_drinks/recipes/tablecraft/recipes_sandwich.dm b/code/modules/food_and_drinks/recipes/tablecraft/recipes_sandwich.dm index 3880dbdeca..630430e2d3 100644 --- a/code/modules/food_and_drinks/recipes/tablecraft/recipes_sandwich.dm +++ b/code/modules/food_and_drinks/recipes/tablecraft/recipes_sandwich.dm @@ -14,7 +14,7 @@ /obj/item/weapon/reagent_containers/food/snacks/cheesewedge = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/sandwich - category = CAT_SANDWICH + category = CAT_FOOD /datum/crafting_recipe/food/grilledcheesesandwich name = "Grilled cheese sandwich" @@ -23,7 +23,7 @@ /obj/item/weapon/reagent_containers/food/snacks/cheesewedge = 2 ) result = /obj/item/weapon/reagent_containers/food/snacks/grilledcheese - category = CAT_SANDWICH + category = CAT_FOOD /datum/crafting_recipe/food/slimesandwich name = "Jelly sandwich" @@ -32,7 +32,7 @@ /obj/item/weapon/reagent_containers/food/snacks/breadslice/plain = 2, ) result = /obj/item/weapon/reagent_containers/food/snacks/jellysandwich/slime - category = CAT_SANDWICH + category = CAT_FOOD /datum/crafting_recipe/food/cherrysandwich name = "Jelly sandwich" @@ -41,7 +41,7 @@ /obj/item/weapon/reagent_containers/food/snacks/breadslice/plain = 2, ) result = /obj/item/weapon/reagent_containers/food/snacks/jellysandwich/cherry - category = CAT_SANDWICH + category = CAT_FOOD /datum/crafting_recipe/food/icecreamsandwich name = "Icecream sandwich" @@ -51,7 +51,7 @@ /obj/item/weapon/reagent_containers/food/snacks/icecream = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/icecreamsandwich - category = CAT_SANDWICH + category = CAT_FOOD /datum/crafting_recipe/food/notasandwich name = "Not a sandwich" @@ -60,7 +60,7 @@ /obj/item/clothing/mask/fakemoustache = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/notasandwich - category = CAT_SANDWICH + category = CAT_FOOD diff --git a/code/modules/food_and_drinks/recipes/tablecraft/recipes_soup.dm b/code/modules/food_and_drinks/recipes/tablecraft/recipes_soup.dm index 050beb8478..3df5c6b8ca 100644 --- a/code/modules/food_and_drinks/recipes/tablecraft/recipes_soup.dm +++ b/code/modules/food_and_drinks/recipes/tablecraft/recipes_soup.dm @@ -13,7 +13,7 @@ /obj/item/weapon/reagent_containers/food/snacks/grown/potato = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/soup/meatball - category = CAT_SOUP + category = CAT_FOOD /datum/crafting_recipe/food/vegetablesoup name = "Vegetable soup" @@ -26,7 +26,7 @@ /obj/item/weapon/reagent_containers/food/snacks/grown/potato = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/soup/vegetable - category = CAT_SOUP + category = CAT_FOOD /datum/crafting_recipe/food/nettlesoup name = "Nettle soup" @@ -38,7 +38,7 @@ /obj/item/weapon/reagent_containers/food/snacks/boiledegg = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/soup/nettle - category = CAT_SOUP + category = CAT_FOOD /datum/crafting_recipe/food/wingfangchu name = "Wingfangchu" @@ -48,7 +48,7 @@ /obj/item/weapon/reagent_containers/food/snacks/meat/cutlet/xeno = 2 ) result = /obj/item/weapon/reagent_containers/food/snacks/soup/wingfangchu - category = CAT_SOUP + category = CAT_FOOD /datum/crafting_recipe/food/wishsoup name = "Wish soup" @@ -57,7 +57,7 @@ /obj/item/weapon/reagent_containers/glass/bowl = 1 ) result= /obj/item/weapon/reagent_containers/food/snacks/soup/wish - category = CAT_SOUP + category = CAT_FOOD /datum/crafting_recipe/food/hotchili name = "Hot chili" @@ -68,7 +68,7 @@ /obj/item/weapon/reagent_containers/food/snacks/grown/tomato = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/soup/hotchili - category = CAT_SOUP + category = CAT_FOOD /datum/crafting_recipe/food/coldchili name = "Cold chili" @@ -79,7 +79,7 @@ /obj/item/weapon/reagent_containers/food/snacks/grown/tomato = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/soup/coldchili - category = CAT_SOUP + category = CAT_FOOD /datum/crafting_recipe/food/tomatosoup name = "Tomato soup" @@ -89,7 +89,7 @@ /obj/item/weapon/reagent_containers/food/snacks/grown/tomato = 2 ) result = /obj/item/weapon/reagent_containers/food/snacks/soup/tomato - category = CAT_SOUP + category = CAT_FOOD /datum/crafting_recipe/food/milosoup name = "Milo soup" @@ -100,7 +100,7 @@ /obj/item/weapon/reagent_containers/food/snacks/tofu = 2 ) result = /obj/item/weapon/reagent_containers/food/snacks/soup/milo - category = CAT_SOUP + category = CAT_FOOD /datum/crafting_recipe/food/bloodsoup name = "Blood soup" @@ -110,7 +110,7 @@ /obj/item/weapon/reagent_containers/food/snacks/grown/tomato/blood = 2 ) result = /obj/item/weapon/reagent_containers/food/snacks/soup/blood - category = CAT_SOUP + category = CAT_FOOD /datum/crafting_recipe/food/slimesoup name = "Slime soup" @@ -120,7 +120,7 @@ /obj/item/weapon/reagent_containers/glass/bowl = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/soup/slime - category = CAT_SOUP + category = CAT_FOOD /datum/crafting_recipe/food/clownstears name = "Clowns tears" @@ -131,7 +131,7 @@ /obj/item/weapon/ore/bananium = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/soup/clownstears - category = CAT_SOUP + category = CAT_FOOD /datum/crafting_recipe/food/mysterysoup name = "Mystery soup" @@ -144,7 +144,7 @@ /obj/item/weapon/reagent_containers/food/snacks/cheesewedge = 1, ) result = /obj/item/weapon/reagent_containers/food/snacks/soup/mystery - category = CAT_SOUP + category = CAT_FOOD /datum/crafting_recipe/food/mushroomsoup name = "Mushroom soup" @@ -155,7 +155,7 @@ /obj/item/weapon/reagent_containers/food/snacks/grown/mushroom/chanterelle = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/soup/mushroom - category = CAT_SOUP + category = CAT_FOOD /datum/crafting_recipe/food/beetsoup name = "Beet soup" @@ -166,7 +166,7 @@ /obj/item/weapon/reagent_containers/food/snacks/grown/cabbage = 1, ) result = /obj/item/weapon/reagent_containers/food/snacks/soup/beet - category = CAT_SOUP + category = CAT_FOOD /datum/crafting_recipe/food/stew name = "Stew" @@ -181,7 +181,7 @@ /obj/item/weapon/reagent_containers/food/snacks/grown/mushroom = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/soup/stew - category = CAT_SOUP + category = CAT_FOOD /datum/crafting_recipe/food/spacylibertyduff name = "Spacy liberty duff" @@ -191,7 +191,7 @@ /obj/item/weapon/reagent_containers/food/snacks/grown/mushroom/libertycap = 3 ) result = /obj/item/weapon/reagent_containers/food/snacks/soup/spacylibertyduff - category = CAT_SOUP + category = CAT_FOOD /datum/crafting_recipe/food/amanitajelly name = "Amanita jelly" @@ -201,7 +201,7 @@ /obj/item/weapon/reagent_containers/food/snacks/grown/mushroom/amanita = 3 ) result = /obj/item/weapon/reagent_containers/food/snacks/soup/amanitajelly - category = CAT_SOUP + category = CAT_FOOD /datum/crafting_recipe/food/sweetpotatosoup name = "Sweet potato soup" @@ -212,7 +212,7 @@ /obj/item/weapon/reagent_containers/food/snacks/grown/potato/sweet = 2 ) result = /obj/item/weapon/reagent_containers/food/snacks/soup/sweetpotato - category = CAT_SOUP + category = CAT_FOOD /datum/crafting_recipe/food/redbeetsoup name = "Red beet soup" @@ -223,4 +223,4 @@ /obj/item/weapon/reagent_containers/food/snacks/grown/cabbage = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/soup/beet/red - category = CAT_SOUP + category = CAT_FOOD diff --git a/code/modules/food_and_drinks/recipes/tablecraft/recipes_spaghetti.dm b/code/modules/food_and_drinks/recipes/tablecraft/recipes_spaghetti.dm index 85d2ee6d65..fb0ba86340 100644 --- a/code/modules/food_and_drinks/recipes/tablecraft/recipes_spaghetti.dm +++ b/code/modules/food_and_drinks/recipes/tablecraft/recipes_spaghetti.dm @@ -10,7 +10,7 @@ /obj/item/weapon/reagent_containers/food/snacks/grown/tomato = 2 ) result = /obj/item/weapon/reagent_containers/food/snacks/pastatomato - category = CAT_SPAGHETTI + category = CAT_FOOD /datum/crafting_recipe/food/copypasta name = "Copypasta" @@ -18,7 +18,7 @@ /obj/item/weapon/reagent_containers/food/snacks/pastatomato = 2 ) result = /obj/item/weapon/reagent_containers/food/snacks/copypasta - category = CAT_SPAGHETTI + category = CAT_FOOD /datum/crafting_recipe/food/spaghettimeatball name = "Spaghetti meatball" @@ -27,7 +27,7 @@ /obj/item/weapon/reagent_containers/food/snacks/faggot = 2 ) result = /obj/item/weapon/reagent_containers/food/snacks/meatballspaghetti - category = CAT_SPAGHETTI + category = CAT_FOOD /datum/crafting_recipe/food/spesslaw name = "Spesslaw" @@ -36,7 +36,7 @@ /obj/item/weapon/reagent_containers/food/snacks/faggot = 4 ) result = /obj/item/weapon/reagent_containers/food/snacks/spesslaw - category = CAT_SPAGHETTI + category = CAT_FOOD /datum/crafting_recipe/food/beefnoodle name = "Beef noodle" @@ -47,7 +47,7 @@ /obj/item/weapon/reagent_containers/food/snacks/grown/cabbage = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/beefnoodle - category = CAT_SPAGHETTI + category = CAT_FOOD /datum/crafting_recipe/food/chowmein name = "Chowmein" @@ -58,4 +58,4 @@ /obj/item/weapon/reagent_containers/food/snacks/grown/carrot = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/chowmein - category = CAT_SPAGHETTI + category = CAT_FOOD \ No newline at end of file diff --git a/code/modules/games/cards.dm b/code/modules/games/cards.dm index cdd4b669c0..b3a3ba1065 100644 --- a/code/modules/games/cards.dm +++ b/code/modules/games/cards.dm @@ -9,9 +9,9 @@ /obj/item/weapon/deck name = "deck of cards" desc = "A simple deck of playing cards." - icon = 'icons/obj/playing_cards.dmi' + icon = 'playing_cards.dmi' icon_state = "deck" - w_class = WEIGHT_CLASS_SMALL + w_class = 2 flags = NOBLUDGEON var/list/cards = list() @@ -19,19 +19,17 @@ /obj/item/weapon/deck/New() . = ..() - var/cardcolor + var/color var/datum/playingcard/card for (var/suit in list("spades", "clubs", "diamonds", "hearts")) - if (suit == "spades" || suit == "clubs") - cardcolor = "black_" - else - cardcolor = "red_" + if (suit == "spades" || suit == "clubs") color = "black_" + else color = "red_" for (var/number in list("ace", "two", "three", "four", "five", "six", "seven", "eight", "nine", "ten")) card = new() card.name = "[number] of [suit]" - card.card_icon = "[cardcolor]num" + card.card_icon = "[color]num" card.suit = suit card.number = number @@ -40,7 +38,7 @@ for (var/number in list("jack", "queen", "king")) card = new() card.name = "[number] of [suit]" - card.card_icon = "[cardcolor]col" + card.card_icon = "[color]col" card.suit = suit card.number = number @@ -83,7 +81,7 @@ if(flag) return //It's adjacent, is the user, or is on the user's person - if(isliving(A)) + if (istype(A, /mob/living)) src.dealTo(A, user) else return ..() @@ -119,15 +117,15 @@ /obj/item/weapon/hand name = "hand of cards" desc = "Some playing cards." - icon = 'icons/obj/playing_cards.dmi' + icon = 'playing_cards.dmi' icon_state = "empty" - w_class = WEIGHT_CLASS_TINY + w_class = 1 var/concealed = 0 var/blank = 0 var/list/cards = list() var/datum/html_interface/hi - resistance_flags = FLAMMABLE + burn_state = FLAMMABLE /obj/item/weapon/hand/New(loc) . = ..() @@ -266,8 +264,9 @@ if (istype(hclient)) switch (href_list["action"]) if ("play_card") - var/datum/playingcard/card = locate(href_list["card"]) in cards - if (card && istype(card)) + var/datum/playingcard/card = locate(href_list["card"]) + + if (card in src.cards) src.discard(card) if ("toggle_conceal") src.toggle_conceal() diff --git a/code/modules/games/cas.dm b/code/modules/games/cas.dm index d33e47f6f2..ebf6a8bd4a 100644 --- a/code/modules/games/cas.dm +++ b/code/modules/games/cas.dm @@ -29,7 +29,6 @@ var/global/list/cards_against_space card_text_file = "strings/cas_black.txt" /obj/item/toy/cards/deck/cas/New() - ..() if(!cards_against_space) //saves loading from the files every single time a new deck is created, but still lets each deck have a random assortment, it's purely an optimisation cards_against_space = list("cas_white" = file2list("strings/cas_white.txt"),"cas_black" = file2list("strings/cas_black.txt")) allcards = cards_against_space[card_face] @@ -126,7 +125,7 @@ var/global/list/cards_against_space flipped = !flipped update_icon() -/obj/item/toy/cards/singlecard/cas/AltClick(mob/living/user) +obj/item/toy/cards/singlecard/cas/AltClick(mob/living/user) if(!user.canUseTopic(src,1)) return Flip() diff --git a/code/modules/holiday/easter.dm b/code/modules/holiday/easter.dm index 8a373d7ec3..836ff4aaa8 100644 --- a/code/modules/holiday/easter.dm +++ b/code/modules/holiday/easter.dm @@ -29,7 +29,7 @@ for(var/obj/effect/landmark/R in landmarks_list) if(R.name != "blobspawn") if(prob(35)) - if(isspaceturf(R.loc)) + if(istype(R.loc,/turf/open/space)) new /mob/living/simple_animal/chicken/rabbit/space(R.loc) else new /mob/living/simple_animal/chicken/rabbit(R.loc) @@ -111,9 +111,9 @@ /obj/item/weapon/reagent_containers/food/snacks/egg/loaded/New() ..() - var/eggcolor = pick("blue","green","mime","orange","purple","rainbow","red","yellow") - icon_state = "egg-[eggcolor]" - item_color = "[eggcolor]" + var/color = pick("blue","green","mime","orange","purple","rainbow","red","yellow") + icon_state = "egg-[color]" + item_color = "[color]" /obj/item/weapon/reagent_containers/food/snacks/egg/proc/dispensePrize(turf/where) var/won = pick(/obj/item/clothing/head/bunnyhead, @@ -158,7 +158,7 @@ /datum/reagent/consumable/sugar = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/hotcrossbun - category = CAT_MISCFOOD + category = CAT_FOOD /obj/item/weapon/reagent_containers/food/snacks/store/cake/brioche @@ -182,7 +182,7 @@ /datum/reagent/consumable/sugar = 2 ) result = /obj/item/weapon/reagent_containers/food/snacks/store/cake/brioche - category = CAT_MISCFOOD + category = CAT_FOOD /obj/item/weapon/reagent_containers/food/snacks/scotchegg name = "scotch egg" @@ -202,7 +202,7 @@ /obj/item/weapon/reagent_containers/food/snacks/faggot = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/scotchegg - category = CAT_MISCFOOD + category = CAT_FOOD /obj/item/weapon/reagent_containers/food/snacks/soup/mammi name = "Mammi" @@ -219,7 +219,7 @@ /datum/reagent/consumable/milk = 5 ) result = /obj/item/weapon/reagent_containers/food/snacks/soup/mammi - category = CAT_MISCFOOD + category = CAT_FOOD /obj/item/weapon/reagent_containers/food/snacks/chocolatebunny name = "chocolate bunny" @@ -236,4 +236,4 @@ /obj/item/weapon/reagent_containers/food/snacks/chocolatebar = 1 ) result = /obj/item/weapon/reagent_containers/food/snacks/chocolatebunny - category = CAT_MISCFOOD + category = CAT_FOOD diff --git a/code/modules/holiday/halloween.dm b/code/modules/holiday/halloween.dm index 2b8058665e..41b655189f 100644 --- a/code/modules/holiday/halloween.dm +++ b/code/modules/holiday/halloween.dm @@ -1,3 +1,34 @@ +//spooky halloween stuff. only tick on halloween!!! + + +//uses super seekrit double proc definition stuffs. remember to call ..()! +/*/mob/dead/observer/say(var/message) //this doesn't actually work vOv + ..() + for(var/mob/M in hearers(src, 1)) + if(!M.stat) + if(M.job == "Chaplain") + if (prob (49)) + M.show_message("You hear muffled speech... but nothing is there...", 2) + if(prob(20)) + playsound(loc, pick('sound/effects/ghost.ogg','sound/effects/ghost2.ogg'), 10, 1) + else + M.show_message("You hear muffled speech... you can almost make out some words...", 2) +// M.show_message("[stutter(message)]", 2) + if(prob(30)) + playsound(loc, pick('sound/effects/ghost.ogg','sound/effects/ghost2.ogg'), 10, 1) + else + if(prob(50)) + return + else if(prob (95)) + M.show_message("You hear muffled speech... but nothing is there...", 2) + if(prob(20)) + playsound(loc, pick('sound/effects/ghost.ogg','sound/effects/ghost2.ogg'), 10, 1) + else + M.show_message("You hear muffled speech... you can almost make out some words...", 2) +// M.show_message("[stutter(message)]", 2) + playsound(loc, pick('sound/effects/ghost.ogg','sound/effects/ghost2.ogg'), 10, 1)*/ + + /////////////////////////////////////// ///////////HALLOWEEN CONTENT/////////// /////////////////////////////////////// @@ -71,9 +102,14 @@ else if(trapped == SPOOKY_SKELETON) visible_message("BOO!") - playsound(loc, 'sound/spookoween/girlscream.ogg', 300, 1) + playsound(loc, pick('sound/effects/xylophone1.ogg','sound/effects/xylophone2.ogg','sound/effects/xylophone3.ogg','sound/spookoween/girlscream.ogg'), 300, 1) trapped = 0 - QDEL_IN(trapped_mob, 90) + spawn(90) + if(trapped_mob && trapped_mob.loc) + var/datum/effect/effect/system/harmless_smoke_spread/smoke = new() + smoke.set_up(1, 0, trapped_mob.loc, 0) + smoke.start() + qdel(trapped_mob) else if(trapped == HOWLING_GHOST) visible_message("[pick("OooOOooooOOOoOoOOooooOOOOO", "BooOOooOooooOOOO", "BOO!", "WoOOoOoooOooo")]") @@ -94,13 +130,21 @@ visible_message("THIS BEING RADIATES PURE EVIL! YOU BETTER RUN!!!") playsound(loc, 'sound/hallucinations/wail.ogg', 300, 1) var/mob/living/simple_animal/hostile/faithless/F = new(loc) + F.stance = HOSTILE_STANCE_ATTACK + F.GiveTarget(usr) trapped = 0 - QDEL_IN(F, 120) + spawn(120) + if(F && F.loc) + var/datum/effect/effect/system/harmless_smoke_spread/smoke = new + smoke.set_up(1,0, F.loc, 0) + smoke.start() + qdel(F) else if(trapped == INSANE_CLOWN) visible_message("...") playsound(loc, 'sound/spookoween/scary_clown_appear.ogg', 300, 1) - spawn_atom_to_turf(/mob/living/simple_animal/hostile/retaliate/clown/insane, loc, 1, FALSE) + var/mob/living/simple_animal/hostile/retaliate/clown/insane/IC = new (loc) + IC.GiveTarget(usr) trapped = 0 //don't spawn in crates @@ -223,9 +267,9 @@ loc = M.loc /mob/living/simple_animal/hostile/retaliate/clown/insane/MoveToTarget() - stalk(target) + return -/mob/living/simple_animal/hostile/retaliate/clown/insane/AttackingTarget() +/mob/living/simple_animal/hostile/retaliate/clown/insane/AttackTarget() return /mob/living/simple_animal/hostile/retaliate/clown/insane/adjustHealth() @@ -245,22 +289,4 @@ ..() /mob/living/simple_animal/hostile/retaliate/clown/insane/handle_temperature_damage() - return - -///////////////////////// -// Spooky Uplink Items // -///////////////////////// - -/datum/uplink_item/dangerous/crossbow/candy - name = "Candy Corn Crossbow" - desc = "A standard miniature energy crossbow that uses a hard-light projector to transform bolts into candy corn. Happy Halloween!" - category = "Holiday" - item = /obj/item/weapon/gun/energy/kinetic_accelerator/crossbow/halloween - surplus = 0 - -/datum/uplink_item/device_tools/emag/hack_o_lantern - name = "Hack-o'-Lantern" - desc = "An emag fitted to support the Halloween season. Candle not included." - category = "Holiday" - item = /obj/item/weapon/card/emag/halloween - surplus = 0 + return \ No newline at end of file diff --git a/code/modules/holiday/holidays.dm b/code/modules/holiday/holidays.dm index 3f23b4743e..13cfc2ea89 100644 --- a/code/modules/holiday/holidays.dm +++ b/code/modules/holiday/holidays.dm @@ -302,11 +302,6 @@ begin_day = 14 begin_month = DECEMBER -/datum/holiday/doomsday - name = "Mayan Doomsday Anniversary" - begin_day = 21 - begin_month = DECEMBER - /datum/holiday/xmas name = CHRISTMAS begin_day = 23 @@ -316,20 +311,6 @@ /datum/holiday/xmas/greet() return "Have a merry Christmas!" -/datum/holiday/festive_season - name = FESTIVE_SEASON - begin_day = 1 - begin_month = DECEMBER - end_day = 31 - -/datum/holiday/festive_season/celebrate() - for(var/obj/effect/landmark/xmastree/XT in landmarks_list) - new XT.tree(get_turf(XT)) - qdel(XT) - -/datum/holiday/festive_season/greet() - return "Have a nice festive season!" - /datum/holiday/boxing name = "Boxing Day" begin_day = 26 diff --git a/code/modules/holodeck/area_copy.dm b/code/modules/holodeck/area_copy.dm index 8fdf1197a8..9d17d72f67 100644 --- a/code/modules/holodeck/area_copy.dm +++ b/code/modules/holodeck/area_copy.dm @@ -1,7 +1,7 @@ -/proc/DuplicateObject(var/atom/original, var/perfectcopy = TRUE, var/sameloc = FALSE, var/atom/newloc = null, var/nerf = FALSE, var/holoitem=FALSE) +/proc/DuplicateObject(obj/original, var/perfectcopy = 0 , var/sameloc = 0, var/atom/newloc = null, var/nerf = 0) if(!original) return null - var/atom/O + var/obj/O if(sameloc) O = new original.type(original.loc) @@ -20,19 +20,15 @@ else O.vars[V] = original.vars[V] - if(istype(O, /obj)) - var/obj/N = O - if(holoitem) - N.resistance_flags = LAVA_PROOF | FIRE_PROOF | UNACIDABLE | ACID_PROOF // holoitems do not burn - + if(istype(O)) + O.burn_state = FIRE_PROOF // holoitems do not burn if(nerf && istype(O,/obj/item)) var/obj/item/I = O I.damtype = STAMINA // thou shalt not - - N.update_icon() if(istype(O,/obj/machinery)) var/obj/machinery/M = O M.power_change() + O.update_icon() return O @@ -80,7 +76,7 @@ continue if(platingRequired) - if(isspaceturf(B)) + if(istype(B, /turf/open/space)) continue var/old_dir1 = T.dir @@ -93,13 +89,13 @@ X.icon_state = old_icon_state1 for(var/obj/O in T) - var/obj/O2 = DuplicateObject(O , perfectcopy=TRUE, newloc = X, nerf=nerf_weapons, holoitem=TRUE) + var/obj/O2 = DuplicateObject(O , 1, newloc = X, nerf=nerf_weapons) if(!O2) continue copiedobjs += O2.GetAllContents() for(var/mob/M in T) if(istype(M, /mob/camera)) continue // If we need to check for more mobs, I'll add a variable - var/mob/SM = DuplicateObject(M , perfectcopy=TRUE, newloc = X, holoitem=TRUE) + var/mob/SM = DuplicateObject(M , 1, newloc = X) copiedobjs += SM.GetAllContents() var/global/list/forbidden_vars = list("type","stat","loc","locs","vars", "parent", "parent_type","verbs","ckey","key","x","y","z","contents", "luminosity") diff --git a/code/game/area/areas/holodeck.dm b/code/modules/holodeck/areas.dm similarity index 77% rename from code/game/area/areas/holodeck.dm rename to code/modules/holodeck/areas.dm index fa8b23ae5b..f7bac9dc9a 100644 --- a/code/game/area/areas/holodeck.dm +++ b/code/modules/holodeck/areas.dm @@ -2,8 +2,7 @@ name = "Holodeck" icon_state = "Holodeck" luminosity = 1 - lighting_use_dynamic = 0 - flags = 0 + dynamic_lighting = DYNAMIC_LIGHTING_DISABLED var/obj/machinery/computer/holodeck/linked var/restricted = 0 // if true, program goes on emag list @@ -67,7 +66,7 @@ name = "Holodeck - Basketball Court" /area/holodeck/rec_center/thunderdome - name = "Holodeck - Thunderdome Arena" + name = "Holodeck - Thunderdome Court" /area/holodeck/rec_center/beach name = "Holodeck - Beach" @@ -79,22 +78,10 @@ name = "Holodeck - Emergency Medical" /area/holodeck/rec_center/pet_lounge - name = "Holodeck - Pet Park" + name = "Holodeck - Pet Playground" -/area/holodeck/rec_center/firingrange - name = "Holodeck - Firing Range" - -/area/holodeck/rec_center/rollercoaster - name = "Holodeck - Roller Coaster" - -/area/holodeck/rec_center/chapelcourt - name = "Holodeck - Chapel Courtroom" - -/area/holodeck/rec_center/spacechess - name = "Holodeck - Space Chess" - -/area/holodeck/rec_center/kobayashi - name = "Holodeck - Kobayashi Maru" +/area/holodeck/rec_center/winterwonderland + name = "Holodeck - Winter Wonderland" // Bad programs @@ -102,10 +89,6 @@ name = "Holodeck - Atmospheric Burn Test" restricted = 1 -/area/holodeck/rec_center/winterwonderland - name = "Holodeck - Winter Wonderland" - restricted = 1 - /area/holodeck/rec_center/wildlife name = "Holodeck - Wildlife Simulation" restricted = 1 @@ -117,12 +100,3 @@ /area/holodeck/rec_center/anthophila name = "Holodeck - Anthophila" restricted = 1 - -/area/holodeck/rec_center/refuel - name = "Holodeck - Refueling Station" - restricted = 1 - -/area/holodeck/rec_center/thunderdome1218 - name = "Holodeck - 1218 AD" - restricted = 1 - diff --git a/code/modules/holodeck/computer.dm b/code/modules/holodeck/computer.dm index 10349f42d3..02d6a81a9f 100644 --- a/code/modules/holodeck/computer.dm +++ b/code/modules/holodeck/computer.dm @@ -25,6 +25,7 @@ var/area/holodeck/program var/area/holodeck/last_program var/area/offline_program = /area/holodeck/rec_center/offline + light_color = LIGHT_COLOR_CYAN var/list/program_cache = list() var/list/emag_programs = list() @@ -143,14 +144,14 @@ /obj/machinery/computer/holodeck/proc/floorcheck() for(var/turf/T in linked) - if(!T.intact || isspaceturf(T)) + if(!T.intact || istype(T,/turf/open/space)) return 0 return 1 /obj/machinery/computer/holodeck/Topic(href, list/href_list) if(..()) return - if(!Adjacent(usr) && !issilicon(usr)) + if(!Adjacent(usr) && !istype(usr, /mob/living/silicon)) return usr.set_machine(src) add_fingerprint(usr) @@ -204,6 +205,6 @@ emergency_shutdown() ..() -/obj/machinery/computer/holodeck/blob_act(obj/structure/blob/B) +/obj/machinery/computer/holodeck/blob_act(obj/effect/blob/B) emergency_shutdown() - ..() \ No newline at end of file + ..() diff --git a/code/modules/holodeck/holo_effect.dm b/code/modules/holodeck/holo_effect.dm index b90f0503f9..d304b8d103 100644 --- a/code/modules/holodeck/holo_effect.dm +++ b/code/modules/holodeck/holo_effect.dm @@ -76,7 +76,7 @@ mob = new mobtype(loc) // 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") & mob.vars) + for(var/v in list("butcher_results","corpse","weapon1","weapon2") & mob.vars) mob.vars[v] = null return mob @@ -93,7 +93,4 @@ /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 + mobtype = /mob/living/simple_animal/hostile/poison/bees/toxin \ No newline at end of file diff --git a/code/modules/holodeck/items.dm b/code/modules/holodeck/items.dm index fb8fffc6e7..3589c894cd 100644 --- a/code/modules/holodeck/items.dm +++ b/code/modules/holodeck/items.dm @@ -18,18 +18,15 @@ throw_speed = 2 throw_range = 5 throwforce = 0 - w_class = WEIGHT_CLASS_SMALL + w_class = 2.0 hitsound = "swing_hit" armour_penetration = 50 var/active = 0 /obj/item/weapon/holo/esword/green/New() - ..() item_color = "green" - /obj/item/weapon/holo/esword/red/New() - ..() item_color = "red" /obj/item/weapon/holo/esword/hit_reaction(mob/living/carbon/human/owner, attack_text, final_block_chance) @@ -42,21 +39,20 @@ /obj/item/weapon/holo/esword/New() item_color = pick("red","blue","green","purple") - ..() /obj/item/weapon/holo/esword/attack_self(mob/living/user as mob) active = !active if (active) force = 30 icon_state = "sword[item_color]" - w_class = WEIGHT_CLASS_BULKY + w_class = 4 hitsound = 'sound/weapons/blade1.ogg' playsound(user, 'sound/weapons/saberon.ogg', 20, 1) user << "[src] is now active." else force = 3 icon_state = "sword0" - w_class = WEIGHT_CLASS_SMALL + w_class = 2 hitsound = "swing_hit" playsound(user, 'sound/weapons/saberoff.ogg', 20, 1) user << "[src] can now be concealed." @@ -66,11 +62,11 @@ /obj/item/toy/beach_ball/holoball name = "basketball" - icon = 'icons/obj/items.dmi' + icon = 'icons/obj/basketball.dmi' icon_state = "basketball" item_state = "basketball" desc = "Here's your chance, do your dance at the Space Jam." - w_class = WEIGHT_CLASS_BULKY //Stops people from hiding it in their bags/pockets + w_class = 4 //Stops people from hiding it in their bags/pockets /obj/item/toy/beach_ball/holoball/dodgeball name = "dodgeball" @@ -86,7 +82,7 @@ M.apply_damage(10, STAMINA) if(prob(5)) M.Weaken(3) - visible_message("[M] is knocked right off [M.p_their()] feet!") + visible_message("[M] is knocked right off \his feet!") // // Structures @@ -106,7 +102,7 @@ visible_message(" [user] dunks [W] into \the [src]!") /obj/structure/holohoop/attack_hand(mob/user) - if(user.pulling && user.a_intent == INTENT_GRAB && isliving(user.pulling)) + if(user.pulling && user.a_intent == "grab" && isliving(user.pulling)) var/mob/living/L = user.pulling if(user.grab_state < GRAB_AGGRESSIVE) user << "You need a better grip to do that!" @@ -207,15 +203,3 @@ for(var/mob/M in currentarea) M << "FIGHT!" - -/obj/machinery/conveyor/holodeck - -/obj/machinery/conveyor/holodeck/attackby(obj/item/I, mob/user, params) - if(user.drop_item()) - I.loc = src.loc - else - return ..() - -/obj/item/weapon/paper/trek_diploma - name = "paper - Starfleet Academy Diploma" - info = {"

    Starfleet Academy


    Official Diploma


    "} diff --git a/code/modules/holodeck/mobs.dm b/code/modules/holodeck/mobs.dm deleted file mode 100644 index af8b095d97..0000000000 --- a/code/modules/holodeck/mobs.dm +++ /dev/null @@ -1,20 +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 = "pets" - response_disarm = "pushes aside" - response_harm = "bites" diff --git a/code/modules/holodeck/turfs.dm b/code/modules/holodeck/turfs.dm index 458497cae5..ed2021bc5f 100644 --- a/code/modules/holodeck/turfs.dm +++ b/code/modules/holodeck/turfs.dm @@ -3,17 +3,16 @@ thermal_conductivity = 0 broken_states = list("engine") burnt_states = list("engine") - flags = NONE -/turf/open/floor/holofloor/attackby(obj/item/I, mob/living/user) +/turf/open/floor/holofloor/attackby(obj/item/weapon/W as obj, mob/user as mob) return // HOLOFLOOR DOES NOT GIVE A FUCK /turf/open/floor/holofloor/plating - name = "holodeck projector floor" + name = "Holodeck Projector Floor" icon_state = "engine" /turf/open/floor/holofloor/plating/burnmix - name = "burn-mix floor" + name = "Burn-mix Floor" initial_gas_mix = "o2=2500;plasma=5000;TEMP=370" /turf/open/floor/holofloor/grass @@ -39,21 +38,13 @@ icon_state = "water" /turf/open/floor/holofloor/asteroid - name = "asteroid" + name = "Asteroid" icon_state = "asteroid0" /turf/open/floor/holofloor/asteroid/New() icon_state = "asteroid[pick(0,1,2,3,4,5,6,7,8,9,10,11,12)]" ..() -/turf/open/floor/holofloor/basalt - name = "basalt" - icon_state = "basalt0" - -/turf/open/floor/holofloor/basalt/New() - icon_state = "basalt[pick(0,1,2,3,4,5,6,7,8,9,10,11,12)]" - ..() - /turf/open/floor/holofloor/space name = "Space" icon = 'icons/turf/space.dmi' @@ -64,12 +55,12 @@ ..() /turf/open/floor/holofloor/hyperspace - name = "hyperspace" + name = "Hyperspace" icon = 'icons/turf/space.dmi' - icon_state = "speedspace_ns_1" + icon_state = "speedspace_ew_1" /turf/open/floor/holofloor/hyperspace/New() - icon_state = "speedspace_ns_[(x + 5*y + (y%2+1)*7)%15+1]" + icon_state = "speedspace_ew_[(x + 5*y + (y%2+1)*7)%15+1]" ..() /turf/open/floor/holofloor/hyperspace/ns/New() @@ -77,7 +68,7 @@ icon_state = "speedspace_ns_[(x + 5*y + (y%2+1)*7)%15+1]" /turf/open/floor/holofloor/carpet - name = "carpet" + name = "Carpet" desc = "Electrically inviting." icon = 'icons/turf/floors/carpet.dmi' icon_state = "carpet" @@ -104,7 +95,7 @@ slowdown = 2 /turf/open/floor/holofloor/snow/cold - initial_gas_mix = "freon=7500;TEMP=0" + initial_gas_mix = "o2=22;n2=82;TEMP=180" /turf/open/floor/holofloor/asteroid name = "asteroid sand" diff --git a/code/modules/html_interface/html_interface.dm b/code/modules/html_interface/html_interface.dm index 10bc46f036..66ced5276c 100644 --- a/code/modules/html_interface/html_interface.dm +++ b/code/modules/html_interface/html_interface.dm @@ -68,9 +68,9 @@ You have to use modules/client/asset_cache to ensure they get sent BEFORE the in ** Sample code ** -/mob/var/datum/html_interface/hi +mob/var/datum/html_interface/hi -/mob/verb/test() +mob/verb/test() if (!hi) hi = new/datum/html_interface(src, "[src.key]") hi.updateLayout("
    ") diff --git a/code/modules/hydroponics/biogenerator.dm b/code/modules/hydroponics/biogenerator.dm index fece5bb1f4..5a64a2d086 100644 --- a/code/modules/hydroponics/biogenerator.dm +++ b/code/modules/hydroponics/biogenerator.dm @@ -7,6 +7,10 @@ anchored = 1 use_power = 1 idle_power_usage = 40 + use_auto_lights = 1 + light_power_on = 2 + light_range_on = 3 + light_color = LIGHT_COLOR_BLUE var/processing = 0 var/obj/item/weapon/reagent_containers/glass/beaker = null var/points = 0 @@ -14,35 +18,13 @@ var/efficiency = 0 var/productivity = 0 var/max_items = 40 - var/datum/research/files - var/list/show_categories = list("Food", "Botany Chemicals", "Leather and Cloth") - var/list/timesFiveCategories = list("Food", "Botany Chemicals") /obj/machinery/biogenerator/New() ..() - files = new /datum/research/biogenerator(src) create_reagents(1000) var/obj/item/weapon/circuitboard/machine/B = new /obj/item/weapon/circuitboard/machine/biogenerator(null) B.apply_default_parts(src) -/obj/machinery/biogenerator/Destroy() - if(beaker) - qdel(beaker) - beaker = null - return ..() - -/obj/machinery/biogenerator/contents_explosion(severity, target) - ..() - if(beaker) - beaker.ex_act(severity, target) - -/obj/machinery/biogenerator/handle_atom_del(atom/A) - ..() - if(A == beaker) - beaker = null - update_icon() - updateUsrDialog() - /obj/item/weapon/circuitboard/machine/biogenerator name = "circuit board (Biogenerator)" build_path = /obj/machinery/biogenerator @@ -81,9 +63,6 @@ return /obj/machinery/biogenerator/attackby(obj/item/O, mob/user, params) - if(user.a_intent == INTENT_HARM) - return ..() - if(processing) user << "The biogenerator is currently processing." return @@ -151,20 +130,11 @@ O.loc = src user << "You put [O.name] in [src.name]" return 1 //no afterattack - else if (istype(O, /obj/item/weapon/disk/design_disk)) - user.visible_message("[user] begins to load \the [O] in \the [src]...", - "You begin to load a design from \the [O]...", - "You hear the chatter of a floppy drive.") - processing = 1 - var/obj/item/weapon/disk/design_disk/D = O - if(do_after(user, 10, target = src)) - for(var/B in D.blueprints) - if(B) - files.AddDesign2Known(B) - processing = 0 - return 1 - else + + else if(user.a_intent != "harm") user << "You cannot put this in [src.name]!" + else + return ..() /obj/machinery/biogenerator/interact(mob/user) if(stat & BROKEN || panel_open) @@ -176,7 +146,7 @@ else switch(menustat) if("nopoints") - dat += "
    You do not have enough biomass to create products.
    Please, put growns into reactor and activate it.
    " + dat += "
    You do not have biomass to create products.
    Please, put growns into reactor and activate it.
    " menustat = "menu" if("complete") dat += "
    Operation complete.
    " @@ -188,29 +158,43 @@ dat += "
    Not enough space left in container. Unable to create product.
    " menustat = "menu" if(beaker) - var/categories = show_categories.Copy() - for(var/V in categories) - categories[V] = list() - for(var/V in files.known_designs) - var/datum/design/D = files.known_designs[V] - for(var/C in categories) - if(C in D.category) - categories[C] += D - dat += "
    Biomass: [points] units.

    " dat += "ActivateDetach Container" - for(var/cat in categories) - dat += "

    [cat]:

    " - dat += "
    " - for(var/V in categories[cat]) - var/datum/design/D = V - dat += "[D.name]: Make" - if(cat in timesFiveCategories) - dat += "x5" - if(ispath(D.build_path, /obj/item/stack)) - dat += "x10" - dat += "([D.materials[MAT_BIOMASS]/efficiency])
    " - dat += "
    " + dat += "

    Food:

    " + dat += "
    " + dat += "10 milk: Makex5 ([20/efficiency])
    " + dat += "10 cream: Makex5 ([30/efficiency])
    " + dat += "Milk carton: Makex5 ([100/efficiency])
    " + dat += "Cream carton: Makex5 ([300/efficiency])
    " + dat += "10u black pepper: Makex5 ([25/efficiency])
    " + dat += "Pepper mill: Makex5 ([50/efficiency])
    " + dat += "Monkey cube: Makex5 ([250/efficiency])" + dat += "
    " + dat += "

    Botany Chemicals:

    " + dat += "
    " + dat += "E-Z-Nutrient: Makex5 ([10/efficiency])
    " + dat += "Left 4 Zed: Makex5 ([20/efficiency])
    " + dat += "Robust Harvest: Makex5 ([25/efficiency])
    " + dat += "Weed Killer: Makex5 ([50/efficiency])
    " + dat += "Pest Killer: Makex5 ([50/efficiency])
    " + dat += "Empty bottle: Makex5 ([5/efficiency])
    " + dat += "
    " + dat += "

    Leather and Cloth:

    " + dat += "
    " + dat += "Roll of cloth: Makex10 ([50/efficiency])
    " + dat += "Wallet: Make ([100/efficiency])
    " + dat += "Botanical gloves: Make ([250/efficiency])
    " + dat += "Utility belt: Make ([300/efficiency])
    " + dat += "Security belt: Make ([300/efficiency])
    " + dat += "Medical belt: Make ([300/efficiency])
    " + dat += "Janitorial belt: Make ([300/efficiency])
    " + dat += "Bandolier belt: Make ([300/efficiency])
    " + dat += "Shoulder holster: Make ([400/efficiency])
    " + dat += "Leather satchel: Make ([400/efficiency])
    " + dat += "Leather jacket: Make ([500/efficiency])
    " + dat += "Leather overcoat: Make ([1000/efficiency])
    " + dat += "Rice hat: Make ([300/efficiency])
    " + dat += "
    " else dat += "
    No container inside, please insert container.
    " @@ -227,7 +211,7 @@ return if (src.stat != 0) //NOPOWER etc return - if(processing) + if(src.processing) usr << "The biogenerator is in the process of working." return var/S = 0 @@ -250,62 +234,142 @@ menustat = "void" return -/obj/machinery/biogenerator/proc/check_cost(list/materials, multiplier = 1, remove_points = 1) - if(materials.len != 1 || materials[1] != MAT_BIOMASS) - return 0 - if (materials[MAT_BIOMASS]*multiplier/efficiency > points) +/obj/machinery/biogenerator/proc/check_cost(cost) + if (cost > points) menustat = "nopoints" - return 0 + return 1 else - if(remove_points) - points -= materials[MAT_BIOMASS]*multiplier/efficiency + points -= cost + processing = 1 update_icon() updateUsrDialog() + return 0 + +/obj/machinery/biogenerator/proc/check_container_volume(reagent_amount) + if(beaker.reagents.total_volume + reagent_amount > beaker.reagents.maximum_volume) + menustat = "nobeakerspace" return 1 -/obj/machinery/biogenerator/proc/check_container_volume(list/reagents, multiplier = 1) - var/sum_reagents = 0 - for(var/R in reagents) - sum_reagents += reagents[R] - sum_reagents *= multiplier - - if(beaker.reagents.total_volume + sum_reagents > beaker.reagents.maximum_volume) - menustat = "nobeakerspace" - return 0 - - return 1 - -/obj/machinery/biogenerator/proc/create_product(datum/design/D, amount) - if(!beaker || !loc) - return 0 - - if(ispath(D.build_path, /obj/item/stack)) - if(!check_container_volume(D.make_reagents, amount)) - return 0 - if(!check_cost(D.materials, amount)) - return 0 - - var/obj/item/stack/product = new D.build_path(loc) - product.amount = amount - for(var/R in D.make_reagents) - beaker.reagents.add_reagent(R, D.make_reagents[R]*amount) - else - var/i = amount - while(i > 0) - if(!check_container_volume(D.make_reagents)) - return . - if(!check_cost(D.materials)) - return . - if(D.build_path) - new D.build_path(loc) - for(var/R in D.make_reagents) - beaker.reagents.add_reagent(R, D.make_reagents[R]) - . = 1 - --i - +/obj/machinery/biogenerator/proc/create_product(create) + switch(create) + if("milk") + if(check_container_volume(10)) + return 0 + else if (check_cost(20/efficiency)) + return 0 + else beaker.reagents.add_reagent("milk",10) + if("bpepper") + if(check_container_volume(10)) + return 0 + else if (check_cost(25/efficiency)) + return 0 + else beaker.reagents.add_reagent("blackpepper",10) + if("cream") + if(check_container_volume(10)) + return 0 + else if (check_cost(30/efficiency)) + return 0 + else beaker.reagents.add_reagent("cream",10) + if("cmilk") + if (check_cost(100/efficiency)) + return 0 + else new/obj/item/weapon/reagent_containers/food/condiment/milk(src.loc) + if("mpepper") + if (check_cost(50/efficiency)) + return 0 + else new/obj/item/weapon/reagent_containers/food/condiment/peppermill(src.loc) + if("ccream") + if (check_cost(300/efficiency)) + return 0 + else new/obj/item/weapon/reagent_containers/food/drinks/bottle/cream(src.loc) + if("meat") + if (check_cost(250/efficiency)) + return 0 + else new/obj/item/weapon/reagent_containers/food/snacks/monkeycube(src.loc) + if("ez") + if (check_cost(10/efficiency)) + return 0 + else new/obj/item/weapon/reagent_containers/glass/bottle/nutrient/ez(src.loc) + if("l4z") + if (check_cost(20/efficiency)) + return 0 + else new/obj/item/weapon/reagent_containers/glass/bottle/nutrient/l4z(src.loc) + if("rh") + if (check_cost(25/efficiency)) + return 0 + else new/obj/item/weapon/reagent_containers/glass/bottle/nutrient/rh(src.loc) + if("wk") + if (check_cost(50/efficiency)) + return 0 + else new/obj/item/weapon/reagent_containers/glass/bottle/killer/weedkiller(src.loc) + if("pk") + if (check_cost(50/efficiency)) + return 0 + else new/obj/item/weapon/reagent_containers/glass/bottle/killer/pestkiller(src.loc) + if("empty") + if (check_cost(5/efficiency)) + return 0 + else new/obj/item/weapon/reagent_containers/glass/bottle/nutrient/empty(src.loc) + if("cloth") + if (check_cost(50/efficiency)) + return 0 + else new/obj/item/stack/sheet/cloth(src.loc) + if("tencloth") + if (check_cost(500/efficiency)) + return 0 + else new/obj/item/stack/sheet/cloth/ten(src.loc) + if("wallet") + if (check_cost(100/efficiency)) + return 0 + else new/obj/item/weapon/storage/wallet(src.loc) + if("gloves") + if (check_cost(250/efficiency)) + return 0 + else new/obj/item/clothing/gloves/botanic_leather(src.loc) + if("tbelt") + if (check_cost(300/efficiency)) + return 0 + else new/obj/item/weapon/storage/belt/utility(src.loc) + if("sbelt") + if (check_cost(300/efficiency)) + return 0 + else new/obj/item/weapon/storage/belt/security(src.loc) + if("mbelt") + if (check_cost(300/efficiency)) + return 0 + else new/obj/item/weapon/storage/belt/medical(src.loc) + if("jbelt") + if (check_cost(300/efficiency)) + return 0 + else new/obj/item/weapon/storage/belt/janitor(src.loc) + if("bbelt") + if (check_cost(300/efficiency)) + return 0 + else new/obj/item/weapon/storage/belt/bandolier(src.loc) + if("sholster") + if (check_cost(400/efficiency)) + return 0 + else new/obj/item/weapon/storage/belt/holster(src.loc) + if("satchel") + if (check_cost(400/efficiency)) + return 0 + else new/obj/item/weapon/storage/backpack/satchel(src.loc) + if("jacket") + if (check_cost(500/efficiency)) + return 0 + else new/obj/item/clothing/suit/jacket/leather(src.loc) + if("overcoat") + if (check_cost(1000/efficiency)) + return 0 + else new/obj/item/clothing/suit/jacket/leather/overcoat(src.loc) + if("rice_hat") + if (check_cost(300/efficiency)) + return 0 + else new/obj/item/clothing/head/rice_hat(src.loc) + processing = 0 menustat = "complete" update_icon() - return . + return 1 /obj/machinery/biogenerator/proc/detach() if(beaker) @@ -329,8 +393,13 @@ else if(href_list["create"]) var/amount = (text2num(href_list["amount"])) - var/datum/design/D = locate(href_list["create"]) - create_product(D, amount) + var/i = amount + var/C = href_list["create"] + if(i <= 0) + return + while(i >= 1) + create_product(C) + i-- updateUsrDialog() else if(href_list["menu"]) diff --git a/code/modules/hydroponics/gene_modder.dm b/code/modules/hydroponics/gene_modder.dm index 491c6f7c7e..f5bd17e0ed 100644 --- a/code/modules/hydroponics/gene_modder.dm +++ b/code/modules/hydroponics/gene_modder.dm @@ -66,7 +66,7 @@ return if(default_deconstruction_crowbar(I)) return - if(iscyborg(user)) + if(isrobot(user)) return if(istype(I, /obj/item/seeds)) @@ -104,7 +104,7 @@ return var/datum/browser/popup = new(user, "plantdna", "Plant DNA Manipulator", 450, 600) - if(!(in_range(src, user) || issilicon(user))) + if(!( in_range(src, user) || istype(user, /mob/living/silicon) )) popup.close() return @@ -234,7 +234,7 @@ update_genes() update_icon() else - var/obj/item/I = usr.get_active_held_item() + var/obj/item/I = usr.get_active_hand() if (istype(I, /obj/item/seeds)) if(!usr.drop_item()) return @@ -248,7 +248,7 @@ disk = null update_genes() else - var/obj/item/I = usr.get_active_held_item() + var/obj/item/I = usr.get_active_hand() if(istype(I, /obj/item/weapon/disk/plantgene)) if(!usr.drop_item()) return @@ -338,9 +338,7 @@ /datum/plant_gene/core/yield, /datum/plant_gene/core/production, /datum/plant_gene/core/endurance, - /datum/plant_gene/core/lifespan, - /datum/plant_gene/core/weed_rate, - /datum/plant_gene/core/weed_chance + /datum/plant_gene/core/lifespan ) for(var/a in gene_paths) core_genes += seed.get_gene(a) @@ -398,7 +396,7 @@ ..() if(istype(W, /obj/item/weapon/pen)) var/t = stripped_input(user, "What would you like the label to be?", name, null) - if(user.get_active_held_item() != W) + if(user.get_active_hand() != W) return if(!in_range(src, user) && loc != user) return diff --git a/code/modules/hydroponics/grown.dm b/code/modules/hydroponics/grown.dm index c2865e1377..ad1279c858 100644 --- a/code/modules/hydroponics/grown.dm +++ b/code/modules/hydroponics/grown.dm @@ -14,7 +14,7 @@ dried_type = -1 // Saves us from having to define each stupid grown's dried_type as itself. // If you don't want a plant to be driable (watermelons) set this to null in the time definition. - resistance_flags = FLAMMABLE + burn_state = FLAMMABLE origin_tech = "biotech=1" /obj/item/weapon/reagent_containers/food/snacks/grown/New(newloc, var/obj/item/seeds/new_seed = null) @@ -38,6 +38,9 @@ seed.prepare_result(src) transform *= TransformUsingVariable(seed.potency, 100, 0.5) //Makes the resulting produce's sprite larger or smaller based on potency! add_juice() + var/datum/plant_gene/trait/glow/G = seed.get_gene(/datum/plant_gene/trait/glow) + if(G) + set_light(G.get_lum(seed)) @@ -80,10 +83,8 @@ msg += reag_txt msg += "
    *---------*" user << msg - else - if(seed) - for(var/datum/plant_gene/trait/T in seed.genes) - T.on_attackby(src, O, user) + return + return // Various gene procs @@ -94,11 +95,8 @@ /obj/item/weapon/reagent_containers/food/snacks/grown/throw_impact(atom/hit_atom) if(!..()) //was it caught by a mob? - if(seed) - for(var/datum/plant_gene/trait/T in seed.genes) - T.on_throw_impact(src, hit_atom) - if(seed.get_gene(/datum/plant_gene/trait/squash)) - squash(hit_atom) + if(seed && seed.get_gene(/datum/plant_gene/trait/squash)) + squash(hit_atom) /obj/item/weapon/reagent_containers/food/snacks/grown/proc/squash(atom/target) var/turf/T = get_turf(target) @@ -111,7 +109,10 @@ new splat_type(T) if(trash) - generate_trash(T) + if(ispath(trash, /obj/item/weapon/grown) || ispath(trash, /obj/item/weapon/reagent_containers/food/snacks/grown)) + new trash(T, seed) + else + new trash(T) visible_message("[src] has been squashed.","You hear a smack.") if(seed) @@ -136,43 +137,15 @@ T.on_cross(src, AM) ..() - -// Glow gene procs -/obj/item/weapon/reagent_containers/food/snacks/grown/Destroy() - if(seed) - var/datum/plant_gene/trait/glow/G = seed.get_gene(/datum/plant_gene/trait/glow) - if(G && ismob(loc)) - loc.AddLuminosity(-G.get_lum(seed)) - return ..() - -/obj/item/weapon/reagent_containers/food/snacks/grown/pickup(mob/user) - ..() - if(seed) - var/datum/plant_gene/trait/glow/G = seed.get_gene(/datum/plant_gene/trait/glow) - if(G) - SetLuminosity(0) - user.AddLuminosity(G.get_lum(seed)) - -/obj/item/weapon/reagent_containers/food/snacks/grown/dropped(mob/user) - ..() - if(seed) - var/datum/plant_gene/trait/glow/G = seed.get_gene(/datum/plant_gene/trait/glow) - if(G) - user.AddLuminosity(-G.get_lum(seed)) - SetLuminosity(G.get_lum(seed)) - -/obj/item/weapon/reagent_containers/food/snacks/grown/generate_trash(atom/location) - if(trash && ispath(trash, /obj/item/weapon/grown)) - . = new trash(location, seed) - trash = null - return - return ..() - // For item-containing growns such as eggy or gatfruit -/obj/item/weapon/reagent_containers/food/snacks/grown/shell/attack_self(mob/user) +/obj/item/weapon/reagent_containers/food/snacks/grown/shell/attack_self(mob/user as mob) user.unEquip(src) if(trash) - var/obj/item/T = generate_trash() + var/obj/item/weapon/T + if(ispath(trash, /obj/item/weapon/grown) || ispath(trash, /obj/item/weapon/reagent_containers/food/snacks/grown)) + T = new trash(user.loc, seed) + else + T = new trash(user.loc) user.put_in_hands(T) user << "You open [src]\'s shell, revealing \a [T]." qdel(src) diff --git a/code/modules/hydroponics/grown/ambrosia.dm b/code/modules/hydroponics/grown/ambrosia.dm index 2b66f86a45..ef576982be 100644 --- a/code/modules/hydroponics/grown/ambrosia.dm +++ b/code/modules/hydroponics/grown/ambrosia.dm @@ -21,7 +21,6 @@ yield = 6 potency = 5 icon_dead = "ambrosia-dead" - genes = list(/datum/plant_gene/trait/repeated_harvest) mutatelist = list(/obj/item/seeds/ambrosia/deus) reagents_add = list("space_drugs" = 0.15, "bicaridine" = 0.1, "kelotane" = 0.1, "vitamin" = 0.04, "nutriment" = 0.05, "toxin" = 0.1) @@ -62,7 +61,7 @@ mutatelist = list() reagents_add = list("earthsblood" = 0.05, "nutriment" = 0.06, "vitamin" = 0.05) rarity = 30 //These are some pretty good plants right here - genes = list() + oneharvest = TRUE weed_rate = 4 weed_chance = 100 diff --git a/code/modules/hydroponics/grown/apple.dm b/code/modules/hydroponics/grown/apple.dm index 4d4712e093..2de7432669 100644 --- a/code/modules/hydroponics/grown/apple.dm +++ b/code/modules/hydroponics/grown/apple.dm @@ -12,7 +12,6 @@ growing_icon = 'icons/obj/hydroponics/growing_fruits.dmi' icon_grow = "apple-grow" icon_dead = "apple-dead" - genes = list(/datum/plant_gene/trait/repeated_harvest) mutatelist = list(/obj/item/seeds/apple/gold) reagents_add = list("vitamin" = 0.04, "nutriment" = 0.1) diff --git a/code/modules/hydroponics/grown/banana.dm b/code/modules/hydroponics/grown/banana.dm index 903b14b1cf..6f6b04f66e 100644 --- a/code/modules/hydroponics/grown/banana.dm +++ b/code/modules/hydroponics/grown/banana.dm @@ -10,7 +10,7 @@ endurance = 30 growing_icon = 'icons/obj/hydroponics/growing_fruits.dmi' icon_dead = "banana-dead" - genes = list(/datum/plant_gene/trait/slip, /datum/plant_gene/trait/repeated_harvest) + genes = list(/datum/plant_gene/trait/slip) mutatelist = list(/obj/item/seeds/banana/mime, /obj/item/seeds/banana/bluespace) reagents_add = list("banana" = 0.1, "potassium" = 0.1, "vitamin" = 0.04, "nutriment" = 0.02) @@ -25,7 +25,7 @@ bitesize = 5 /obj/item/weapon/reagent_containers/food/snacks/grown/banana/suicide_act(mob/user) - user.visible_message("[user] is aiming [src] at [user.p_them()]self! It looks like [user.p_theyre()] trying to commit suicide!") + user.visible_message("[user] is aiming the [src.name] at themself! It looks like \he's trying to commit suicide.") playsound(loc, 'sound/items/bikehorn.ogg', 50, 1, -1) sleep(25) if(!user) @@ -43,13 +43,13 @@ desc = "A peel from a banana." icon_state = "banana_peel" item_state = "banana_peel" - w_class = WEIGHT_CLASS_TINY + w_class = 1 throwforce = 0 throw_speed = 3 throw_range = 7 /obj/item/weapon/grown/bananapeel/suicide_act(mob/user) - user.visible_message("[user] is deliberately slipping on [src]! It looks like [user.p_theyre()] trying to commit suicide!") + user.visible_message("[user] is deliberately slipping on the [src.name]! It looks like \he's trying to commit suicide.") playsound(loc, 'sound/misc/slip.ogg', 50, 1, -1) return (BRUTELOSS) @@ -91,7 +91,7 @@ plantname = "Bluespace Banana Tree" product = /obj/item/weapon/reagent_containers/food/snacks/grown/banana/bluespace mutatelist = list() - genes = list(/datum/plant_gene/trait/slip, /datum/plant_gene/trait/teleport, /datum/plant_gene/trait/repeated_harvest) + genes = list(/datum/plant_gene/trait/slip, /datum/plant_gene/trait/teleport) reagents_add = list("singulo" = 0.2, "banana" = 0.1, "vitamin" = 0.04, "nutriment" = 0.02) rarity = 30 diff --git a/code/modules/hydroponics/grown/beans.dm b/code/modules/hydroponics/grown/beans.dm index 277dfd0629..5252b53b59 100644 --- a/code/modules/hydroponics/grown/beans.dm +++ b/code/modules/hydroponics/grown/beans.dm @@ -13,7 +13,6 @@ growing_icon = 'icons/obj/hydroponics/growing_vegetables.dmi' icon_grow = "soybean-grow" icon_dead = "soybean-dead" - genes = list(/datum/plant_gene/trait/repeated_harvest) mutatelist = list(/obj/item/seeds/soya/koi) reagents_add = list("vitamin" = 0.04, "nutriment" = 0.05) diff --git a/code/modules/hydroponics/grown/berries.dm b/code/modules/hydroponics/grown/berries.dm index c709e22bde..3ac1d6c11e 100644 --- a/code/modules/hydroponics/grown/berries.dm +++ b/code/modules/hydroponics/grown/berries.dm @@ -13,7 +13,6 @@ growing_icon = 'icons/obj/hydroponics/growing_fruits.dmi' icon_grow = "berry-grow" // Uses one growth icons set for all the subtypes icon_dead = "berry-dead" // Same for the dead icon - genes = list(/datum/plant_gene/trait/repeated_harvest) mutatelist = list(/obj/item/seeds/berry/glow, /obj/item/seeds/berry/poison) reagents_add = list("vitamin" = 0.04, "nutriment" = 0.1) @@ -77,7 +76,7 @@ lifespan = 30 endurance = 25 mutatelist = list() - genes = list(/datum/plant_gene/trait/glow/berry , /datum/plant_gene/trait/noreact, /datum/plant_gene/trait/repeated_harvest) + genes = list(/datum/plant_gene/trait/glow/berry) reagents_add = list("uranium" = 0.25, "iodine" = 0.2, "vitamin" = 0.04, "nutriment" = 0.1) rarity = 20 @@ -105,7 +104,6 @@ growing_icon = 'icons/obj/hydroponics/growing_fruits.dmi' icon_grow = "cherry-grow" icon_dead = "cherry-dead" - genes = list(/datum/plant_gene/trait/repeated_harvest) mutatelist = list(/obj/item/seeds/cherry/blue) reagents_add = list("nutriment" = 0.07, "sugar" = 0.07) @@ -155,7 +153,6 @@ growing_icon = 'icons/obj/hydroponics/growing_fruits.dmi' icon_grow = "grape-grow" icon_dead = "grape-dead" - genes = list(/datum/plant_gene/trait/repeated_harvest) mutatelist = list(/obj/item/seeds/grape/green) reagents_add = list("vitamin" = 0.04, "nutriment" = 0.1, "sugar" = 0.1) diff --git a/code/modules/hydroponics/grown/cannabis.dm b/code/modules/hydroponics/grown/cannabis.dm deleted file mode 100644 index 2788e0ba13..0000000000 --- a/code/modules/hydroponics/grown/cannabis.dm +++ /dev/null @@ -1,118 +0,0 @@ -// Cannabis -/obj/item/seeds/cannabis - name = "pack of cannabis seeds" - desc = "Taxable." - icon_state = "seed-cannabis" - species = "cannabis" - plantname = "Cannabis Plant" - product = /obj/item/weapon/reagent_containers/food/snacks/grown/cannabis - maturation = 8 - potency = 20 - growthstages = 1 - growing_icon = 'goon/icons/obj/hydroponics.dmi' - icon_grow = "cannabis-grow" // Uses one growth icons set for all the subtypes - icon_dead = "cannabis-dead" // Same for the dead icon - genes = list(/datum/plant_gene/trait/repeated_harvest) - mutatelist = list(/obj/item/seeds/cannabis/rainbow, - /obj/item/seeds/cannabis/death, - /obj/item/seeds/cannabis/white, - /obj/item/seeds/cannabis/ultimate) - reagents_add = list("space_drugs" = 0.15, "lipolicide" = 0.35) // gives u the munchies - - -/obj/item/seeds/cannabis/rainbow - name = "pack of rainbow weed seeds" - desc = "These seeds grow into rainbow weed. Groovy." - icon_state = "seed-megacannabis" - species = "megacannabis" - plantname = "Rainbow Weed" - product = /obj/item/weapon/reagent_containers/food/snacks/grown/cannabis/rainbow - mutatelist = list() - reagents_add = list("mindbreaker" = 0.15, "lipolicide" = 0.35) - rarity = 40 - -/obj/item/seeds/cannabis/death - name = "pack of deathweed seeds" - desc = "These seeds grow into deathweed. Not groovy." - icon_state = "seed-blackcannabis" - species = "blackcannabis" - plantname = "Deathweed" - product = /obj/item/weapon/reagent_containers/food/snacks/grown/cannabis/death - mutatelist = list() - reagents_add = list("cyanide" = 0.35, "space_drugs" = 0.15, "lipolicide" = 0.15) - rarity = 40 - -/obj/item/seeds/cannabis/white - name = "pack of lifeweed seeds" - desc = "I will give unto him that is munchies of the fountain of the cravings of life, freely." - icon_state = "seed-whitecannabis" - species = "whitecannabis" - plantname = "Lifeweed" - product = /obj/item/weapon/reagent_containers/food/snacks/grown/cannabis/white - mutatelist = list() - reagents_add = list("omnizine" = 0.35, "space_drugs" = 0.15, "lipolicide" = 0.15) - rarity = 40 - - -/obj/item/seeds/cannabis/ultimate - name = "pack of omega weed seeds" - desc = "These seeds grow into omega weed." - icon_state = "seed-ocannabis" - species = "ocannabis" - plantname = "Omega Weed" - product = /obj/item/weapon/reagent_containers/food/snacks/grown/cannabis/ultimate - mutatelist = list() - reagents_add = list("space_drugs" = 0.3, - "mindbreaker" = 0.3, - "mercury" = 0.15, - "lithium" = 0.15, - "atropine" = 0.15, - "haloperidol" = 0.15, - "methamphetamine" = 0.15, - "capsaicin" = 0.15, - "barbers_aid" = 0.15, - "bath_salts" = 0.15, - "itching_powder" = 0.15, - "crank" = 0.15, - "krokodil" = 0.15, - "histamine" = 0.15, - "lipolicide" = 0.15) - rarity = 69 - - -// --------------------------------------------------------------- - -/obj/item/weapon/reagent_containers/food/snacks/grown/cannabis - seed = /obj/item/seeds/cannabis - icon = 'goon/icons/obj/hydroponics.dmi' - name = "cannabis leaf" - desc = "Recently legalized in most galaxies." - icon_state = "cannabis" - filling_color = "#00FF00" - bitesize_mod = 2 - - -/obj/item/weapon/reagent_containers/food/snacks/grown/cannabis/rainbow - seed = /obj/item/seeds/cannabis/rainbow - name = "rainbow cannabis leaf" - desc = "Is it supposed to be glowing like that...?" - icon_state = "megacannabis" - -/obj/item/weapon/reagent_containers/food/snacks/grown/cannabis/death - seed = /obj/item/seeds/cannabis/death - name = "death cannabis leaf" - desc = "Looks a bit dark. Oh well." - icon_state = "blackcannabis" - -/obj/item/weapon/reagent_containers/food/snacks/grown/cannabis/white - seed = /obj/item/seeds/cannabis/white - name = "white cannabis leaf" - desc = "It feels smooth and nice to the touch." - icon_state = "whitecannabis" - -/obj/item/weapon/reagent_containers/food/snacks/grown/cannabis/ultimate - seed = /obj/item/seeds/cannabis/ultimate - name = "omega cannibas leaf" - desc = "You feel dizzy looking at it. What the fuck?" - icon_state = "ocannabis" - volume = 420 diff --git a/code/modules/hydroponics/grown/cereals.dm b/code/modules/hydroponics/grown/cereals.dm index 66c5a17a84..5db9902b76 100644 --- a/code/modules/hydroponics/grown/cereals.dm +++ b/code/modules/hydroponics/grown/cereals.dm @@ -9,6 +9,7 @@ production = 1 yield = 4 potency = 15 + oneharvest = 1 icon_dead = "wheat-dead" mutatelist = list(/obj/item/seeds/wheat/oat, /obj/item/seeds/wheat/meat) reagents_add = list("nutriment" = 0.04) diff --git a/code/modules/hydroponics/grown/chili.dm b/code/modules/hydroponics/grown/chili.dm index 218f50cbd5..4e641c4e8c 100644 --- a/code/modules/hydroponics/grown/chili.dm +++ b/code/modules/hydroponics/grown/chili.dm @@ -14,7 +14,6 @@ growing_icon = 'icons/obj/hydroponics/growing_vegetables.dmi' icon_grow = "chili-grow" // Uses one growth icons set for all the subtypes icon_dead = "chili-dead" // Same for the dead icon - genes = list(/datum/plant_gene/trait/repeated_harvest) mutatelist = list(/obj/item/seeds/chili/ice, /obj/item/seeds/chili/ghost) reagents_add = list("capsaicin" = 0.25, "vitamin" = 0.04, "nutriment" = 0.04) @@ -56,7 +55,7 @@ desc = "These seeds grow into a chili said to be the hottest in the galaxy." icon_state = "seed-chilighost" species = "chilighost" - plantname = "Ghost Chili Plants" + plantname = "chilighost" product = /obj/item/weapon/reagent_containers/food/snacks/grown/ghost_chili endurance = 10 maturation = 10 @@ -84,7 +83,7 @@ /obj/item/weapon/reagent_containers/food/snacks/grown/ghost_chili/process() if(held_mob && src.loc == held_mob) - if(held_mob.is_holding(src)) + if( (held_mob.l_hand == src) || (held_mob.r_hand == src)) if(hasvar(held_mob,"gloves") && held_mob:gloves) return held_mob.bodytemperature += 15 * TEMPERATURE_DAMAGE_COEFFICIENT diff --git a/code/modules/hydroponics/grown/citrus.dm b/code/modules/hydroponics/grown/citrus.dm index bf3408133a..f9e5515124 100644 --- a/code/modules/hydroponics/grown/citrus.dm +++ b/code/modules/hydroponics/grown/citrus.dm @@ -19,7 +19,6 @@ yield = 4 potency = 15 growing_icon = 'icons/obj/hydroponics/growing_fruits.dmi' - genes = list(/datum/plant_gene/trait/repeated_harvest) mutatelist = list(/obj/item/seeds/orange) reagents_add = list("vitamin" = 0.04, "nutriment" = 0.05) @@ -45,7 +44,6 @@ growing_icon = 'icons/obj/hydroponics/growing_fruits.dmi' icon_grow = "lime-grow" icon_dead = "lime-dead" - genes = list(/datum/plant_gene/trait/repeated_harvest) mutatelist = list(/obj/item/seeds/lime) reagents_add = list("vitamin" = 0.04, "nutriment" = 0.05) @@ -70,86 +68,56 @@ growing_icon = 'icons/obj/hydroponics/growing_fruits.dmi' icon_grow = "lime-grow" icon_dead = "lime-dead" - genes = list(/datum/plant_gene/trait/repeated_harvest) - mutatelist = list(/obj/item/seeds/firelemon) + mutatelist = list(/obj/item/seeds/cash) reagents_add = list("vitamin" = 0.04, "nutriment" = 0.05) /obj/item/weapon/reagent_containers/food/snacks/grown/citrus/lemon seed = /obj/item/seeds/lemon name = "lemon" - desc = "When life gives you lemons, make lemonade." + desc = "When life gives you lemons, be grateful they aren't limes." icon_state = "lemon" filling_color = "#FFD700" -// Combustible lemon -/obj/item/seeds/firelemon //combustible lemon is too long so firelemon - name = "pack of combustible lemon seeds" - desc = "When life gives you lemons, don't make lemonade. Make life take the lemons back! Get mad! I don't want your damn lemons!" - icon_state = "seed-firelemon" - species = "firelemon" - plantname = "Combustible Lemon Tree" - product = /obj/item/weapon/reagent_containers/food/snacks/grown/firelemon +// Money Lemon +/obj/item/seeds/cash + name = "pack of money seeds" + desc = "When life gives you lemons, mutate them into cash." + icon_state = "seed-cash" + species = "cashtree" + plantname = "Money Tree" + product = /obj/item/weapon/reagent_containers/food/snacks/grown/shell/moneyfruit growing_icon = 'icons/obj/hydroponics/growing_fruits.dmi' icon_grow = "lime-grow" icon_dead = "lime-dead" - genes = list(/datum/plant_gene/trait/repeated_harvest) lifespan = 55 endurance = 45 yield = 4 reagents_add = list("nutriment" = 0.05) + rarity = 50 // Nanotrasen approves... -/obj/item/weapon/reagent_containers/food/snacks/grown/firelemon - seed = /obj/item/seeds/firelemon - name = "Combustible Lemon" - desc = "Made for burning houses down." - icon_state = "firelemon" +/obj/item/weapon/reagent_containers/food/snacks/grown/shell/moneyfruit + seed = /obj/item/seeds/cash + name = "Money Fruit" + desc = "Looks like a lemon with something bulging from the inside." + icon_state = "moneyfruit" bitesize_mod = 2 -/obj/item/weapon/reagent_containers/food/snacks/grown/firelemon/attack_self(mob/living/user) - var/area/A = get_area(user) - user.visible_message("[user] primes the [src]!", "You prime the [src]!") - var/message = "[ADMIN_LOOKUPFLW(user)] primed a combustible lemon for detonation at [A] [ADMIN_COORDJMP(user)]" - bombers += message - message_admins(message) - log_game("[key_name(user)] primed a combustible lemon for detonation at [A] [COORD(user)].") - if(iscarbon(user)) - var/mob/living/carbon/C = user - C.throw_mode_on() - icon_state = "firelemon_active" - playsound(loc, 'sound/weapons/armbomb.ogg', 75, 1, -3) - addtimer(src, "prime", rand(10, 60)) - -/obj/item/weapon/reagent_containers/food/snacks/grown/firelemon/burn() - prime() +/obj/item/weapon/reagent_containers/food/snacks/grown/shell/moneyfruit/add_juice() ..() - -/obj/item/weapon/reagent_containers/food/snacks/grown/firelemon/proc/update_mob() - if(ismob(loc)) - var/mob/M = loc - M.unEquip(src) - -/obj/item/weapon/reagent_containers/food/snacks/grown/firelemon/ex_act(severity) - qdel(src) //Ensuring that it's deleted by its own explosion - -/obj/item/weapon/reagent_containers/food/snacks/grown/firelemon/proc/prime() - switch(seed.potency) //Combustible lemons are alot like IEDs, lots of flame, very little bang. - if(0 to 30) - update_mob() - explosion(src.loc,-1,-1,2, flame_range = 1) - qdel(src) - if(31 to 50) - update_mob() - explosion(src.loc,-1,-1,2, flame_range = 2) - qdel(src) - if(51 to 70) - update_mob() - explosion(src.loc,-1,-1,2, flame_range = 3) - qdel(src) - if(71 to 90) - update_mob() - explosion(src.loc,-1,-1,2, flame_range = 4) - qdel(src) + switch(seed.potency) + if(0 to 10) + trash = /obj/item/stack/spacecash + if(11 to 20) + trash = /obj/item/stack/spacecash/c10 + if(21 to 30) + trash = /obj/item/stack/spacecash/c20 + if(31 to 40) + trash = /obj/item/stack/spacecash/c50 + if(41 to 50) + trash = /obj/item/stack/spacecash/c100 + if(51 to 60) + trash = /obj/item/stack/spacecash/c200 + if(61 to 80) + trash = /obj/item/stack/spacecash/c500 else - update_mob() - explosion(src.loc,-1,-1,2, flame_range = 5) - qdel(src) + trash = /obj/item/stack/spacecash/c1000 \ No newline at end of file diff --git a/code/modules/hydroponics/grown/cocoa_vanilla.dm b/code/modules/hydroponics/grown/cocoa_vanilla.dm index 6e04bdaf97..c29fa70fc1 100644 --- a/code/modules/hydroponics/grown/cocoa_vanilla.dm +++ b/code/modules/hydroponics/grown/cocoa_vanilla.dm @@ -14,7 +14,6 @@ growing_icon = 'icons/obj/hydroponics/growing_fruits.dmi' icon_grow = "cocoapod-grow" icon_dead = "cocoapod-dead" - genes = list(/datum/plant_gene/trait/repeated_harvest) mutatelist = list(/obj/item/seeds/cocoapod/vanillapod) reagents_add = list("cocoa" = 0.25, "nutriment" = 0.1) @@ -34,7 +33,6 @@ species = "vanillapod" plantname = "Vanilla Tree" product = /obj/item/weapon/reagent_containers/food/snacks/grown/vanillapod - genes = list(/datum/plant_gene/trait/repeated_harvest) mutatelist = list() reagents_add = list("vanilla" = 0.25, "nutriment" = 0.1) diff --git a/code/modules/hydroponics/grown/corn.dm b/code/modules/hydroponics/grown/corn.dm index 76b5f1152e..677d60fbfc 100644 --- a/code/modules/hydroponics/grown/corn.dm +++ b/code/modules/hydroponics/grown/corn.dm @@ -7,6 +7,7 @@ plantname = "Corn Stalks" product = /obj/item/weapon/reagent_containers/food/snacks/grown/corn maturation = 8 + oneharvest = 1 potency = 20 growthstages = 3 growing_icon = 'icons/obj/hydroponics/growing_vegetables.dmi' @@ -30,20 +31,19 @@ desc = "A reminder of meals gone by." icon_state = "corncob" item_state = "corncob" - w_class = WEIGHT_CLASS_TINY + w_class = 1 throwforce = 0 throw_speed = 3 throw_range = 7 /obj/item/weapon/grown/corncob/attackby(obj/item/weapon/grown/W, mob/user, params) + ..() if(W.is_sharp()) user << "You use [W] to fashion a pipe out of the corn cob!" new /obj/item/clothing/mask/cigarette/pipe/cobpipe (user.loc) user.unEquip(src) qdel(src) return - else - return ..() // Snapcorn /obj/item/seeds/corn/snapcorn @@ -62,7 +62,7 @@ desc = "A cob with snap pops" icon_state = "snapcorn" item_state = "corncob" - w_class = WEIGHT_CLASS_TINY + w_class = 1 throwforce = 0 throw_speed = 3 throw_range = 7 diff --git a/code/modules/hydroponics/grown/eggplant.dm b/code/modules/hydroponics/grown/eggplant.dm index 8ec46ff77d..d5934c1c3a 100644 --- a/code/modules/hydroponics/grown/eggplant.dm +++ b/code/modules/hydroponics/grown/eggplant.dm @@ -11,7 +11,6 @@ growing_icon = 'icons/obj/hydroponics/growing_vegetables.dmi' icon_grow = "eggplant-grow" icon_dead = "eggplant-dead" - genes = list(/datum/plant_gene/trait/repeated_harvest) mutatelist = list(/obj/item/seeds/eggplant/eggy) reagents_add = list("vitamin" = 0.04, "nutriment" = 0.1) diff --git a/code/modules/hydroponics/grown/flowers.dm b/code/modules/hydroponics/grown/flowers.dm index 984b005781..824ceadd50 100644 --- a/code/modules/hydroponics/grown/flowers.dm +++ b/code/modules/hydroponics/grown/flowers.dm @@ -10,6 +10,7 @@ maturation = 8 yield = 6 potency = 20 + oneharvest = 1 growthstages = 3 growing_icon = 'icons/obj/hydroponics/growing_flowers.dmi' icon_grow = "poppy-grow" @@ -75,8 +76,9 @@ production = 1 yield = 2 potency = 30 + oneharvest = 1 growthstages = 4 - genes = list(/datum/plant_gene/trait/plant_type/weed_hardy) + plant_type = PLANT_WEED growing_icon = 'icons/obj/hydroponics/growing_flowers.dmi' reagents_add = list("nutriment" = 0.04) @@ -101,6 +103,7 @@ endurance = 20 production = 2 yield = 2 + oneharvest = 1 growthstages = 3 growing_icon = 'icons/obj/hydroponics/growing_flowers.dmi' icon_grow = "sunflower-grow" @@ -117,7 +120,7 @@ force = 0 slot_flags = SLOT_HEAD throwforce = 0 - w_class = WEIGHT_CLASS_TINY + w_class = 1 throw_speed = 1 throw_range = 3 @@ -167,7 +170,7 @@ force = 0 slot_flags = SLOT_HEAD throwforce = 0 - w_class = WEIGHT_CLASS_TINY + w_class = 1 throw_speed = 1 throw_range = 3 attack_verb = list("roasted", "scorched", "burned") @@ -177,9 +180,8 @@ force = round((5 + seed.potency / 5), 1) /obj/item/weapon/grown/novaflower/attack(mob/living/carbon/M, mob/user) - if(!..()) - return - if(isliving(M)) + if(!..()) return + if(istype(M, /mob/living)) M << "You are lit on fire from the intense heat of the [name]!" M.adjust_fire_stacks(seed.potency / 20) if(M.IgniteMob()) diff --git a/code/modules/hydroponics/grown/grass_carpet.dm b/code/modules/hydroponics/grown/grass_carpet.dm index 0772267baf..44eb27c449 100644 --- a/code/modules/hydroponics/grown/grass_carpet.dm +++ b/code/modules/hydroponics/grown/grass_carpet.dm @@ -14,7 +14,6 @@ growthstages = 2 icon_grow = "grass-grow" icon_dead = "grass-dead" - genes = list(/datum/plant_gene/trait/repeated_harvest) mutatelist = list(/obj/item/seeds/grass/carpet) reagents_add = list("nutriment" = 0.02, "hydrogen" = 0.05) @@ -25,28 +24,23 @@ icon_state = "grassclump" filling_color = "#32CD32" bitesize_mod = 2 - var/stacktype = /obj/item/stack/tile/grass - var/tile_coefficient = 0.02 // 1/50 /obj/item/weapon/reagent_containers/food/snacks/grown/grass/attack_self(mob/user) user << "You prepare the astroturf." - var/grassAmt = 1 + round(seed.potency * tile_coefficient) // The grass we're holding + var/grassAmt = 1 + round(seed.potency / 50) // The grass we're holding for(var/obj/item/weapon/reagent_containers/food/snacks/grown/grass/G in user.loc) // The grass on the floor - if(G.type != type) - continue - grassAmt += 1 + round(G.seed.potency * tile_coefficient) + grassAmt += 1 + round(G.seed.potency) qdel(G) - var/obj/item/stack/tile/GT = new stacktype(user.loc) - while(grassAmt > GT.max_amount) - GT.amount = GT.max_amount + while(grassAmt > 0) + var/obj/item/stack/tile/GT = new /obj/item/stack/tile/grass(user.loc) + if(grassAmt >= GT.max_amount) + GT.amount = GT.max_amount + else + GT.amount = grassAmt + for(var/obj/item/stack/tile/grass/GR in user.loc) + if(GR != GT && GR.amount < GR.max_amount) + GR.attackby(GT, user) //we try to transfer all old unfinished stacks to the new stack we created. grassAmt -= GT.max_amount - GT = new stacktype(user.loc) - GT.amount = grassAmt - for(var/obj/item/stack/tile/T in user.loc) - if((T.type == stacktype) && (T.amount < T.max_amount)) - GT.merge(T) - if(GT.amount <= 0) - break qdel(src) return @@ -57,13 +51,31 @@ icon_state = "seed-carpet" species = "carpet" plantname = "Carpet" - product = /obj/item/weapon/reagent_containers/food/snacks/grown/grass/carpet - mutatelist = list() + product = /obj/item/weapon/reagent_containers/food/snacks/grown/carpet + mutatelist = list(/obj/item/seeds/grass/carpet) rarity = 10 -/obj/item/weapon/reagent_containers/food/snacks/grown/grass/carpet +/obj/item/weapon/reagent_containers/food/snacks/grown/carpet seed = /obj/item/seeds/grass/carpet name = "carpet" desc = "The textile industry's dark secret." icon_state = "carpetclump" - stacktype = /obj/item/stack/tile/carpet + +/obj/item/weapon/reagent_containers/food/snacks/grown/carpet/attack_self(mob/user) + user << "You roll out the red carpet." + var/carpetAmt = 1 + round(seed.potency / 50) // The carpet we're holding + for(var/obj/item/weapon/reagent_containers/food/snacks/grown/carpet/C in user.loc) // The carpet on the floor + carpetAmt += 1 + round(C.seed.potency / 50) + qdel(C) + while(carpetAmt > 0) + var/obj/item/stack/tile/CT = new /obj/item/stack/tile/carpet(user.loc) + if(carpetAmt >= CT.max_amount) + CT.amount = CT.max_amount + else + CT.amount = carpetAmt + for(var/obj/item/stack/tile/carpet/CA in user.loc) + if(CA != CT && CA.amount < CA.max_amount) + CA.attackby(CT, user) //we try to transfer all old unfinished stacks to the new stack we created. + carpetAmt -= CT.max_amount + qdel(src) + return diff --git a/code/modules/hydroponics/grown/kudzu.dm b/code/modules/hydroponics/grown/kudzu.dm index 33a3f5132f..c9f67b3958 100644 --- a/code/modules/hydroponics/grown/kudzu.dm +++ b/code/modules/hydroponics/grown/kudzu.dm @@ -7,11 +7,11 @@ species = "kudzu" plantname = "Kudzu" product = /obj/item/weapon/reagent_containers/food/snacks/grown/kudzupod - genes = list(/datum/plant_gene/trait/repeated_harvest, /datum/plant_gene/trait/plant_type/weed_hardy) lifespan = 20 endurance = 10 yield = 4 growthstages = 4 + plant_type = PLANT_WEED rarity = 30 var/list/mutations = list() reagents_add = list("charcoal" = 0.04, "nutriment" = 0.02) @@ -22,12 +22,12 @@ return S /obj/item/seeds/kudzu/suicide_act(mob/user) - user.visible_message("[user] swallows the pack of kudzu seeds! It looks like [user.p_theyre()] trying to commit suicide!") + user.visible_message("[user] swallows the pack of kudzu seeds! It looks like \he's trying to commit suicide..") plant(user) return (BRUTELOSS) /obj/item/seeds/kudzu/proc/plant(mob/user) - if(isspaceturf(user.loc)) + if(istype(user.loc,/turf/open/space)) return var/turf/T = get_turf(src) message_admins("Kudzu planted by [key_name_admin(user)](?) (FLW) at ([T.x],[T.y],[T.z] - (JMP))",0,1) @@ -57,7 +57,6 @@ if(prob(20)) mutations.Remove(pick(temp_mut_list)) temp_mut_list.Cut() - if(S.has_reagent("welding_fuel", 5)) for(var/datum/spacevine_mutation/SM in mutations) if(SM.quality == POSITIVE) @@ -65,26 +64,20 @@ if(prob(20)) mutations.Remove(pick(temp_mut_list)) temp_mut_list.Cut() - if(S.has_reagent("phenol", 5)) for(var/datum/spacevine_mutation/SM in mutations) if(SM.quality == MINOR_NEGATIVE) temp_mut_list += SM if(prob(20)) mutations.Remove(pick(temp_mut_list)) - temp_mut_list.Cut() - if(S.has_reagent("blood", 15)) - production = Clamp(production + rand(15, -5),1,10) - + production += rand(15, -5) if(S.has_reagent("amatoxin", 5)) - production = Clamp(production + rand(5, -15),1,10) - + production += rand(5, -15) if(S.has_reagent("plasma", 5)) - potency = Clamp(potency + rand(5, -15),0,100) - + potency += rand(5, -15) if(S.has_reagent("holywater", 10)) - potency = Clamp(potency + rand(15, -5),0,100) + potency += rand(15, -5) /obj/item/weapon/reagent_containers/food/snacks/grown/kudzupod diff --git a/code/modules/hydroponics/grown/melon.dm b/code/modules/hydroponics/grown/melon.dm index 4c6fa15b04..5f9c27d4d7 100644 --- a/code/modules/hydroponics/grown/melon.dm +++ b/code/modules/hydroponics/grown/melon.dm @@ -10,9 +10,8 @@ endurance = 40 growing_icon = 'icons/obj/hydroponics/growing_fruits.dmi' icon_dead = "watermelon-dead" - genes = list(/datum/plant_gene/trait/repeated_harvest) mutatelist = list(/obj/item/seeds/watermelon/holy) - reagents_add = list("water" = 0.2, "vitamin" = 0.04, "nutriment" = 0.2) + reagents_add = list("vitamin" = 0.04, "nutriment" = 0.2) /obj/item/weapon/reagent_containers/food/snacks/grown/watermelon seed = /obj/item/seeds/watermelon @@ -22,7 +21,7 @@ slice_path = /obj/item/weapon/reagent_containers/food/snacks/watermelonslice slices_num = 5 dried_type = null - w_class = WEIGHT_CLASS_NORMAL + w_class = 3 filling_color = "#008000" bitesize_mod = 3 @@ -44,4 +43,4 @@ desc = "The water within this melon has been blessed by some deity that's particularly fond of watermelon." icon_state = "holymelon" filling_color = "#FFD700" - dried_type = null + dried_type = null \ No newline at end of file diff --git a/code/modules/hydroponics/grown/misc.dm b/code/modules/hydroponics/grown/misc.dm index 36406bcc6a..4504d1740b 100644 --- a/code/modules/hydroponics/grown/misc.dm +++ b/code/modules/hydroponics/grown/misc.dm @@ -11,8 +11,9 @@ production = 1 yield = -1 potency = -1 + oneharvest = 1 growthstages = 4 - genes = list(/datum/plant_gene/trait/plant_type/weed_hardy) + plant_type = PLANT_WEED // Cabbage @@ -30,7 +31,6 @@ yield = 4 growthstages = 1 growing_icon = 'icons/obj/hydroponics/growing_vegetables.dmi' - genes = list(/datum/plant_gene/trait/repeated_harvest) mutatelist = list(/obj/item/seeds/replicapod) reagents_add = list("vitamin" = 0.04, "nutriment" = 0.1) @@ -51,7 +51,6 @@ species = "sugarcane" plantname = "Sugarcane" product = /obj/item/weapon/reagent_containers/food/snacks/grown/sugarcane - genes = list(/datum/plant_gene/trait/repeated_harvest) lifespan = 60 endurance = 50 maturation = 3 @@ -74,9 +73,8 @@ desc = "These seeds grow into .357 revolvers." icon_state = "seed-gatfruit" species = "gatfruit" - plantname = "Gatfruit Tree" + plantname = "gatfruit" product = /obj/item/weapon/reagent_containers/food/snacks/grown/shell/gatfruit - genes = list(/datum/plant_gene/trait/repeated_harvest) lifespan = 20 endurance = 20 maturation = 40 @@ -94,7 +92,7 @@ desc = "It smells like burning." icon_state = "gatfruit" origin_tech = "combat=6" - trash = /obj/item/weapon/gun/ballistic/revolver + trash = /obj/item/weapon/gun/projectile/revolver bitesize_mod = 2 //Cherry Bombs @@ -117,8 +115,6 @@ seed = /obj/item/seeds/cherry/bomb bitesize_mod = 2 volume = 125 //Gives enough room for the black powder at max potency - obj_integrity = 40 - max_integrity = 40 /obj/item/weapon/reagent_containers/food/snacks/grown/cherry_bomb/attack_self(mob/living/user) var/area/A = get_area(user) @@ -127,14 +123,12 @@ log_game("[user] ([user.key ? user.key : "no key"]) primed a cherry bomb for detonation at [A] ([user.x],[user.y],[user.z]).") prime() -/obj/item/weapon/reagent_containers/food/snacks/grown/cherry_bomb/deconstruct(disassembled = TRUE) - if(!disassembled) - prime() - if(!qdeleted(src)) - qdel(src) +/obj/item/weapon/reagent_containers/food/snacks/grown/cherry_bomb/burn() + prime() + ..() /obj/item/weapon/reagent_containers/food/snacks/grown/cherry_bomb/ex_act(severity) - qdel(src) //Ensuring that it's deleted by its own explosion. Also prevents mass chain reaction with piles of cherry bombs + qdel(src) //Ensuring that it's deleted by its own explosion /obj/item/weapon/reagent_containers/food/snacks/grown/cherry_bomb/proc/prime() icon_state = "cherry_bomb_lit" diff --git a/code/modules/hydroponics/grown/mushrooms.dm b/code/modules/hydroponics/grown/mushrooms.dm index 776a3c329f..22c2e119dc 100644 --- a/code/modules/hydroponics/grown/mushrooms.dm +++ b/code/modules/hydroponics/grown/mushrooms.dm @@ -17,8 +17,9 @@ production = 5 yield = 4 potency = 15 + oneharvest = 1 growthstages = 4 - genes = list(/datum/plant_gene/trait/plant_type/fungal_metabolism) + plant_type = PLANT_MUSHROOM growing_icon = 'icons/obj/hydroponics/growing_mushrooms.dmi' reagents_add = list("morphine" = 0.35, "charcoal" = 0.35, "nutriment" = 0) @@ -43,11 +44,12 @@ maturation = 10 production = 5 yield = 4 + oneharvest = 1 growthstages = 3 - genes = list(/datum/plant_gene/trait/plant_type/fungal_metabolism) + plant_type = PLANT_MUSHROOM growing_icon = 'icons/obj/hydroponics/growing_mushrooms.dmi' mutatelist = list(/obj/item/seeds/angel) - reagents_add = list("mushroomhallucinogen" = 0.04, "amatoxin" = 0.35, "nutriment" = 0, "growthserum" = 0.1) + reagents_add = list("mushroomhallucinogen" = 0.04, "amatoxin" = 0.35, "nutriment" = 0) /obj/item/weapon/reagent_containers/food/snacks/grown/mushroom/amanita seed = /obj/item/seeds/amanita @@ -71,8 +73,9 @@ production = 5 yield = 2 potency = 35 + oneharvest = 1 growthstages = 3 - genes = list(/datum/plant_gene/trait/plant_type/fungal_metabolism) + plant_type = PLANT_MUSHROOM growing_icon = 'icons/obj/hydroponics/growing_mushrooms.dmi' reagents_add = list("mushroomhallucinogen" = 0.04, "amatoxin" = 0.1, "nutriment" = 0, "amanitin" = 0.2) rarity = 30 @@ -98,8 +101,9 @@ production = 1 yield = 5 potency = 15 + oneharvest = 1 growthstages = 3 - genes = list(/datum/plant_gene/trait/plant_type/fungal_metabolism) + plant_type = PLANT_MUSHROOM growing_icon = 'icons/obj/hydroponics/growing_mushrooms.dmi' reagents_add = list("mushroomhallucinogen" = 0.25, "nutriment" = 0.02) @@ -123,8 +127,9 @@ production = 1 yield = 4 potency = 15 + oneharvest = 1 growthstages = 3 - genes = list(/datum/plant_gene/trait/plant_type/fungal_metabolism) + plant_type = PLANT_MUSHROOM growing_icon = 'icons/obj/hydroponics/growing_mushrooms.dmi' mutatelist = list(/obj/item/seeds/plump/walkingmushroom) reagents_add = list("vitamin" = 0.04, "nutriment" = 0.1) @@ -163,7 +168,7 @@ origin_tech = "biotech=4;programming=5" /obj/item/weapon/reagent_containers/food/snacks/grown/mushroom/walkingmushroom/attack_self(mob/user) - if(isspaceturf(user.loc)) + if(istype(user.loc,/turf/open/space)) return var/mob/living/simple_animal/hostile/mushroom/M = new /mob/living/simple_animal/hostile/mushroom(user.loc) M.maxHealth += round(seed.endurance / 4) @@ -189,8 +194,9 @@ production = 1 yield = 5 potency = 15 + oneharvest = 1 growthstages = 3 - genes = list(/datum/plant_gene/trait/plant_type/fungal_metabolism) + plant_type = PLANT_MUSHROOM growing_icon = 'icons/obj/hydroponics/growing_mushrooms.dmi' reagents_add = list("nutriment" = 0.1) @@ -216,9 +222,11 @@ production = 1 yield = 3 //-> spread potency = 30 //-> brightness + oneharvest = 1 growthstages = 4 + plant_type = PLANT_MUSHROOM rarity = 20 - genes = list(/datum/plant_gene/trait/glow, /datum/plant_gene/trait/plant_type/fungal_metabolism) + genes = list(/datum/plant_gene/trait/glow) growing_icon = 'icons/obj/hydroponics/growing_mushrooms.dmi' mutatelist = list(/obj/item/seeds/glowshroom/glowcap) reagents_add = list("radium" = 0.1, "phosphorus" = 0.1, "nutriment" = 0.04) @@ -229,16 +237,15 @@ desc = "Mycena Bregprox: This species of mushroom glows in the dark." icon_state = "glowshroom" filling_color = "#00FA9A" - var/effect_path = /obj/structure/glowshroom + var/effect_path = /obj/effect/glowshroom origin_tech = "biotech=4;plasmatech=6" /obj/item/weapon/reagent_containers/food/snacks/grown/mushroom/glowshroom/attack_self(mob/user) - if(isspaceturf(user.loc)) + if(istype(user.loc,/turf/open/space)) return - var/obj/structure/glowshroom/planted = new effect_path(user.loc) + var/obj/effect/glowshroom/planted = new effect_path(user.loc) planted.delay = planted.delay - seed.production * 100 //So the delay goes DOWN with better stats instead of up. :I - planted.obj_integrity = seed.endurance - planted.max_integrity = seed.endurance + planted.endurance = seed.endurance planted.yield = seed.yield planted.potency = seed.potency user << "You plant [src]." @@ -254,8 +261,9 @@ icon_grow = "glowshroom-grow" icon_dead = "glowshroom-dead" plantname = "Glowcaps" + plant_type = PLANT_MUSHROOM product = /obj/item/weapon/reagent_containers/food/snacks/grown/mushroom/glowshroom/glowcap - genes = list(/datum/plant_gene/trait/glow, /datum/plant_gene/trait/cell_charge, /datum/plant_gene/trait/plant_type/fungal_metabolism) + genes = list(/datum/plant_gene/trait/glow, /datum/plant_gene/trait/cell_charge) mutatelist = list() reagents_add = list("teslium" = 0.1, "nutriment" = 0.04) rarity = 30 @@ -266,5 +274,5 @@ desc = "Mycena Ruthenia: This species of mushroom glows in the dark, but aren't bioluminescent. They're warm to the touch..." icon_state = "glowcap" filling_color = "#00FA9A" - effect_path = /obj/structure/glowshroom/glowcap + effect_path = /obj/effect/glowshroom/glowcap origin_tech = "biotech=4;powerstorage=6;plasmatech=4" diff --git a/code/modules/hydroponics/grown/nettle.dm b/code/modules/hydroponics/grown/nettle.dm index f6248c64c4..76ec1a3f3b 100644 --- a/code/modules/hydroponics/grown/nettle.dm +++ b/code/modules/hydroponics/grown/nettle.dm @@ -9,7 +9,7 @@ endurance = 40 // tuff like a toiger yield = 4 growthstages = 5 - genes = list(/datum/plant_gene/trait/repeated_harvest, /datum/plant_gene/trait/plant_type/weed_hardy) + plant_type = PLANT_WEED mutatelist = list(/obj/item/seeds/nettle/death) reagents_add = list("sacid" = 0.5) @@ -23,7 +23,6 @@ endurance = 25 maturation = 8 yield = 2 - genes = list(/datum/plant_gene/trait/repeated_harvest, /datum/plant_gene/trait/plant_type/weed_hardy, /datum/plant_gene/trait/stinging) mutatelist = list() reagents_add = list("facid" = 0.5, "sacid" = 0.5) rarity = 20 @@ -37,14 +36,14 @@ force = 15 hitsound = 'sound/weapons/bladeslice.ogg' throwforce = 5 - w_class = WEIGHT_CLASS_TINY + w_class = 1 throw_speed = 1 throw_range = 3 origin_tech = "combat=3" attack_verb = list("stung") /obj/item/weapon/grown/nettle/suicide_act(mob/user) - user.visible_message("[user] is eating some of [src]! It looks like [user.p_theyre()] trying to commit suicide!") + user.visible_message("[user] is eating some of the [src.name]! It looks like \he's trying to commit suicide.") return (BRUTELOSS|TOXLOSS) /obj/item/weapon/grown/nettle/pickup(mob/living/user) @@ -52,13 +51,16 @@ if(!iscarbon(user)) return 0 var/mob/living/carbon/C = user - if(C.gloves) - return 0 - var/hit_zone = (C.held_index_to_dir(C.active_hand_index) == "l" ? "l_":"r_") + "arm" - var/obj/item/bodypart/affecting = C.get_bodypart(hit_zone) - if(affecting) - if(affecting.receive_damage(0, force)) - C.update_damage_overlays() + if(ishuman(user)) + var/mob/living/carbon/human/H = C + if(H.gloves) + return 0 + var/organ = ((H.hand ? "l_":"r_") + "arm") + var/obj/item/bodypart/affecting = H.get_bodypart(organ) + if(affecting && affecting.take_damage(0, force)) + H.update_damage_overlays(0) + else + C.take_organ_damage(0,force) C << "The nettle burns your bare hand!" return 1 @@ -92,15 +94,15 @@ force = round((5 + seed.potency / 2.5), 1) /obj/item/weapon/grown/nettle/death/pickup(mob/living/carbon/user) + ..() if(..()) if(prob(50)) user.Paralyse(5) user << "You are stunned by the Deathnettle when you try picking it up!" /obj/item/weapon/grown/nettle/death/attack(mob/living/carbon/M, mob/user) - if(!..()) - return - if(isliving(M)) + if(!..()) return + if(istype(M, /mob/living)) M << "You are stunned by the powerful acid of the Deathnettle!" add_logs(user, M, "attacked", src) diff --git a/code/modules/hydroponics/grown/potato.dm b/code/modules/hydroponics/grown/potato.dm index 77c773632c..1a75691f44 100644 --- a/code/modules/hydroponics/grown/potato.dm +++ b/code/modules/hydroponics/grown/potato.dm @@ -10,11 +10,11 @@ maturation = 10 production = 1 yield = 4 + oneharvest = 1 growthstages = 4 growing_icon = 'icons/obj/hydroponics/growing_vegetables.dmi' icon_grow = "potato-grow" icon_dead = "potato-dead" - genes = list(/datum/plant_gene/trait/battery) mutatelist = list(/obj/item/seeds/potato/sweet) reagents_add = list("vitamin" = 0.04, "nutriment" = 0.1) @@ -26,26 +26,30 @@ filling_color = "#E9967A" bitesize = 100 - -/obj/item/weapon/reagent_containers/food/snacks/grown/potato/wedges - name = "potato wedges" - desc = "a potato cut up into wedges" - icon_state = "potato_wedge" - filling_color = "#E9967A" - bitesize = 100 - - /obj/item/weapon/reagent_containers/food/snacks/grown/potato/attackby(obj/item/weapon/W, mob/user, params) - if(W.is_sharp()) - user << "You cut the potato into wedges with [W]." - var/obj/item/weapon/reagent_containers/food/snacks/grown/potato/wedges/Wedges = new /obj/item/weapon/reagent_containers/food/snacks/grown/potato/wedges - if(!remove_item_from_storage(user)) - user.unEquip(src) - user.put_in_hands(Wedges) - qdel(src) - else - return ..() + ..() + if(istype(W, /obj/item/stack/cable_coil)) + var/obj/item/stack/cable_coil/C = W + if (C.use(5)) + user << "You add some cable to the potato and slide it inside the battery encasing." + var/obj/item/weapon/stock_parts/cell/potato/pocell = new /obj/item/weapon/stock_parts/cell/potato(user.loc) + pocell.maxcharge = seed.potency * 20 + // The secret of potato supercells! + var/datum/plant_gene/trait/cell_charge/G = seed.get_gene(/datum/plant_gene/trait/cell_charge) + if(G) // 10x charge for deafult cell charge gene - 20 000 with 100 potency. + pocell.maxcharge *= G.rate*1000 + pocell.charge = pocell.maxcharge + pocell.desc = "A rechargable starch based power cell. This one has a power rating of [pocell.maxcharge], and you should not swallow it." + + if(reagents.has_reagent("plasma", 2)) + pocell.rigged = 1 + + qdel(src) + return + else + user << "You need five lengths of cable to make a potato battery!" + return // Sweet Potato /obj/item/seeds/potato/sweet diff --git a/code/modules/hydroponics/grown/pumpkin.dm b/code/modules/hydroponics/grown/pumpkin.dm index 1354edbcaa..bc33c02409 100644 --- a/code/modules/hydroponics/grown/pumpkin.dm +++ b/code/modules/hydroponics/grown/pumpkin.dm @@ -12,7 +12,6 @@ growing_icon = 'icons/obj/hydroponics/growing_fruits.dmi' icon_grow = "pumpkin-grow" icon_dead = "pumpkin-dead" - genes = list(/datum/plant_gene/trait/repeated_harvest) mutatelist = list(/obj/item/seeds/pumpkin/blumpkin) reagents_add = list("vitamin" = 0.04, "nutriment" = 0.2) @@ -25,13 +24,12 @@ bitesize_mod = 2 /obj/item/weapon/reagent_containers/food/snacks/grown/pumpkin/attackby(obj/item/weapon/W as obj, mob/user as mob, params) + ..() if(W.is_sharp()) user.show_message("You carve a face into [src]!", 1) new /obj/item/clothing/head/hardhat/pumpkinhead(user.loc) qdel(src) return - else - return ..() // Blumpkin /obj/item/seeds/pumpkin/blumpkin @@ -42,7 +40,7 @@ plantname = "Blumpkin Vines" product = /obj/item/weapon/reagent_containers/food/snacks/grown/blumpkin mutatelist = list() - reagents_add = list("ammonia" = 0.2, "chlorine" = 0.1, "nutriment" = 0.2) + reagents_add = list("ammonia" = 0.2, "chlorine" = 0.2, "nutriment" = 0.2) rarity = 20 /obj/item/weapon/reagent_containers/food/snacks/grown/blumpkin @@ -51,4 +49,4 @@ desc = "The pumpkin's toxic sibling." icon_state = "blumpkin" filling_color = "#87CEFA" - bitesize_mod = 2 + bitesize_mod = 2 \ No newline at end of file diff --git a/code/modules/hydroponics/grown/random.dm b/code/modules/hydroponics/grown/random.dm deleted file mode 100644 index 1f48f83c9a..0000000000 --- a/code/modules/hydroponics/grown/random.dm +++ /dev/null @@ -1,29 +0,0 @@ -//Random seeds; stats, traits, and plant type are randomized for each seed. - -/obj/item/seeds/random - name = "pack of strange seeds" - desc = "Mysterious seeds as strange as their name implies. Spooky" - icon_state = "seed-x" - species = "?????" - plantname = "strange plant" - product = /obj/item/weapon/reagent_containers/food/snacks/grown/random - icon_grow = "xpod-grow" - icon_dead = "xpod-dead" - icon_harvest = "xpod-harvest" - growthstages = 4 - -/obj/item/seeds/random/New() - randomize_stats() - ..() - if(prob(60)) - add_random_reagents() - if(prob(50)) - add_random_traits() - add_random_plant_type(35) - -/obj/item/weapon/reagent_containers/food/snacks/grown/random - seed = /obj/item/seeds/random - name = "strange plant" - desc = "What could this even be?" - icon_state = "crunchy" - bitesize_mod = 2 \ No newline at end of file diff --git a/code/modules/hydroponics/grown/replicapod.dm b/code/modules/hydroponics/grown/replicapod.dm index 3eb6fb3a89..2fc857d23c 100644 --- a/code/modules/hydroponics/grown/replicapod.dm +++ b/code/modules/hydroponics/grown/replicapod.dm @@ -12,6 +12,7 @@ maturation = 10 production = 1 yield = 1 //seeds if there isn't a dna inside + oneharvest = 1 potency = 30 var/ckey = null var/realName = null @@ -41,8 +42,7 @@ user << "The seeds reject the sample!" else user << "The seeds already contain a genetic sample!" - else - return ..() + ..() /obj/item/seeds/replicapod/get_analyzer_text() var/text = ..() @@ -58,7 +58,7 @@ if(config.revival_pod_plants) if(ckey) for(var/mob/M in player_list) - if(isobserver(M)) + if(istype(M, /mob/dead/observer)) var/mob/dead/observer/O = M if(O.ckey == ckey && O.can_reenter_corpse) make_podman = 1 @@ -66,19 +66,19 @@ else if(M.ckey == ckey && M.stat == DEAD && !M.suiciding) make_podman = 1 - if(isliving(M)) + if(istype(M, /mob/living)) var/mob/living/L = M make_podman = !L.hellbound break else //If the player has ghosted from his corpse before blood was drawn, his ckey is no longer attached to the mob, so we need to match up the cloned player through the mind key for(var/mob/M in player_list) if(mind && M.mind && ckey(M.mind.key) == ckey(mind.key) && M.ckey && M.client && M.stat == 2 && !M.suiciding) - if(isobserver(M)) + if(istype(M, /mob/dead/observer)) var/mob/dead/observer/O = M if(!O.can_reenter_corpse) break make_podman = 1 - if(isliving(M)) + if(istype(M, /mob/living)) var/mob/living/L = M make_podman = !L.hellbound ckey_holder = M.ckey @@ -106,9 +106,8 @@ var/seed_count = 1 if(prob(getYield() * 20)) seed_count++ - var/output_loc = parent.Adjacent(user) ? user.loc : parent.loc //needed for TK for(var/i=0,iYou sharpen the carrot into a shiv with [I].
    " var/obj/item/weapon/kitchen/knife/carrotshiv/Shiv = new /obj/item/weapon/kitchen/knife/carrotshiv if(!remove_item_from_storage(user)) @@ -64,6 +65,7 @@ lifespan = 60 endurance = 50 yield = 6 + oneharvest = 1 growing_icon = 'icons/obj/hydroponics/growing_vegetables.dmi' icon_dead = "whitebeet-dead" mutatelist = list(/obj/item/seeds/redbeet) @@ -88,9 +90,9 @@ lifespan = 60 endurance = 50 yield = 6 + oneharvest = 1 growing_icon = 'icons/obj/hydroponics/growing_vegetables.dmi' icon_dead = "whitebeet-dead" - genes = list(/datum/plant_gene/trait/maxchem) reagents_add = list("vitamin" = 0.05, "nutriment" = 0.05) /obj/item/weapon/reagent_containers/food/snacks/grown/redbeet @@ -98,4 +100,4 @@ name = "red beet" desc = "You can't beat red beet." icon_state = "redbeet" - bitesize_mod = 2 + bitesize_mod = 2 \ No newline at end of file diff --git a/code/modules/hydroponics/grown/tea_coffee.dm b/code/modules/hydroponics/grown/tea_coffee.dm index 2f1d6c97bd..aa99cee7cd 100644 --- a/code/modules/hydroponics/grown/tea_coffee.dm +++ b/code/modules/hydroponics/grown/tea_coffee.dm @@ -12,7 +12,6 @@ yield = 5 growthstages = 5 icon_dead = "tea-dead" - genes = list(/datum/plant_gene/trait/repeated_harvest) mutatelist = list(/obj/item/seeds/tea/astra) reagents_add = list("vitamin" = 0.04, "teapowder" = 0.1) @@ -56,7 +55,6 @@ yield = 5 growthstages = 5 icon_dead = "coffee-dead" - genes = list(/datum/plant_gene/trait/repeated_harvest) mutatelist = list(/obj/item/seeds/coffee/robusta) reagents_add = list("vitamin" = 0.04, "coffeepowder" = 0.1) diff --git a/code/modules/hydroponics/grown/tobacco.dm b/code/modules/hydroponics/grown/tobacco.dm index 98fc2536f3..1642f51cfa 100644 --- a/code/modules/hydroponics/grown/tobacco.dm +++ b/code/modules/hydroponics/grown/tobacco.dm @@ -9,6 +9,7 @@ lifespan = 20 maturation = 5 production = 5 + oneharvest = 1 yield = 10 growthstages = 3 icon_dead = "tobacco-dead" diff --git a/code/modules/hydroponics/grown/tomato.dm b/code/modules/hydroponics/grown/tomato.dm index c8d4db730d..f93cc1c6ad 100644 --- a/code/modules/hydroponics/grown/tomato.dm +++ b/code/modules/hydroponics/grown/tomato.dm @@ -10,7 +10,7 @@ growing_icon = 'icons/obj/hydroponics/growing_fruits.dmi' icon_grow = "tomato-grow" icon_dead = "tomato-dead" - genes = list(/datum/plant_gene/trait/squash, /datum/plant_gene/trait/repeated_harvest) + genes = list(/datum/plant_gene/trait/squash) mutatelist = list(/obj/item/seeds/tomato/blue, /obj/item/seeds/tomato/blood, /obj/item/seeds/tomato/killer) reagents_add = list("vitamin" = 0.04, "nutriment" = 0.1) @@ -56,7 +56,7 @@ yield = 2 icon_grow = "bluetomato-grow" mutatelist = list(/obj/item/seeds/tomato/blue/bluespace) - genes = list(/datum/plant_gene/trait/slip, /datum/plant_gene/trait/repeated_harvest) + genes = list(/datum/plant_gene/trait/slip) reagents_add = list("lube" = 0.2, "vitamin" = 0.04, "nutriment" = 0.1) rarity = 20 @@ -79,7 +79,7 @@ product = /obj/item/weapon/reagent_containers/food/snacks/grown/tomato/blue/bluespace yield = 2 mutatelist = list() - genes = list(/datum/plant_gene/trait/squash, /datum/plant_gene/trait/slip, /datum/plant_gene/trait/teleport, /datum/plant_gene/trait/repeated_harvest) + genes = list(/datum/plant_gene/trait/squash, /datum/plant_gene/trait/slip, /datum/plant_gene/trait/teleport) reagents_add = list("lube" = 0.2, "singulo" = 0.2, "vitamin" = 0.04, "nutriment" = 0.1) rarity = 50 @@ -100,7 +100,7 @@ plantname = "Killer-Tomato Plants" product = /obj/item/weapon/reagent_containers/food/snacks/grown/tomato/killer yield = 2 - genes = list(/datum/plant_gene/trait/squash) + oneharvest = 1 growthstages = 2 icon_grow = "killertomato-grow" icon_harvest = "killertomato-harvest" @@ -124,7 +124,7 @@ ..() /obj/item/weapon/reagent_containers/food/snacks/grown/tomato/killer/attack_self(mob/user) - if(awakening || isspaceturf(user.loc)) + if(awakening || istype(user.loc,/turf/open/space)) return user << "You begin to awaken the Killer Tomato..." awakening = 1 diff --git a/code/modules/hydroponics/grown/towercap.dm b/code/modules/hydroponics/grown/towercap.dm index 6e68291baf..b403ebee52 100644 --- a/code/modules/hydroponics/grown/towercap.dm +++ b/code/modules/hydroponics/grown/towercap.dm @@ -11,10 +11,11 @@ production = 1 yield = 5 potency = 50 + oneharvest = 1 growthstages = 3 growing_icon = 'icons/obj/hydroponics/growing_mushrooms.dmi' icon_dead = "towercap-dead" - genes = list(/datum/plant_gene/trait/plant_type/fungal_metabolism) + plant_type = PLANT_MUSHROOM mutatelist = list(/obj/item/seeds/tower/steel) /obj/item/seeds/tower/steel @@ -37,7 +38,7 @@ icon_state = "logs" force = 5 throwforce = 5 - w_class = WEIGHT_CLASS_NORMAL + w_class = 3 throw_speed = 2 throw_range = 3 origin_tech = "materials=1" @@ -52,6 +53,7 @@ /obj/item/weapon/grown/log/attackby(obj/item/weapon/W, mob/user, params) + ..() if(W.sharpness) user.show_message("You make [plank_name] out of \the [src]!", 1) var/obj/item/stack/plank = new plank_type(user.loc, 1 + round(seed.potency / 25)) @@ -75,8 +77,6 @@ return else usr << "You must dry this first!" - else - return ..() /obj/item/weapon/grown/log/tree seed = null @@ -90,104 +90,4 @@ icon_state = "steellogs" accepted = list() plank_type = /obj/item/stack/rods - plank_name = "rods" - - -/////////BONFIRES////////// - -/obj/structure/bonfire - name = "bonfire" - desc = "For grilling, broiling, charring, smoking, heating, roasting, toasting, simmering, searing, melting, and occasionally burning things." - icon = 'icons/obj/hydroponics/equipment.dmi' - icon_state = "bonfire" - density = FALSE - anchored = TRUE - buckle_lying = 0 - var/burning = 0 - var/fire_stack_strength = 5 - -/obj/structure/bonfire/attackby(obj/item/W, mob/user, params) - if(istype(W, /obj/item/stack/rods) && !can_buckle) - var/obj/item/stack/rods/R = W - R.use(1) - can_buckle = 1 - buckle_requires_restraints = 1 - user << "You add a rod to [src]." - var/image/U = image(icon='icons/obj/hydroponics/equipment.dmi',icon_state="bonfire_rod",pixel_y=16) - underlays += U - if(W.is_hot()) - StartBurning() - - -/obj/structure/bonfire/attack_hand(mob/user) - if(burning) - user << "You need to extinguish [src] before removing the logs!" - return - if(!has_buckled_mobs() && do_after(user, 50, target = src)) - for(var/I in 1 to 5) - var/obj/item/weapon/grown/log/L = new /obj/item/weapon/grown/log(src.loc) - L.pixel_x += rand(1,4) - L.pixel_y += rand(1,4) - qdel(src) - return - ..() - - -/obj/structure/bonfire/proc/CheckOxygen() - if(isopenturf(loc)) - var/turf/open/O = loc - if(O.air) - var/G = O.air.gases - if(G["o2"][MOLES] > 16) - return 1 - return 0 - -/obj/structure/bonfire/proc/StartBurning() - if(!burning && CheckOxygen()) - icon_state = "bonfire_on_fire" - burning = 1 - SetLuminosity(6) - Burn() - START_PROCESSING(SSobj, src) - -/obj/structure/bonfire/fire_act(exposed_temperature, exposed_volume) - StartBurning() - -/obj/structure/bonfire/Crossed(atom/movable/AM) - if(burning) - Burn() - -/obj/structure/bonfire/proc/Burn() - var/turf/current_location = get_turf(src) - current_location.hotspot_expose(1000,500,1) - for(var/A in current_location) - if(A == src) - continue - if(isobj(A)) - var/obj/O = A - O.fire_act(1000, 500) - else if(isliving(A)) - var/mob/living/L = A - L.adjust_fire_stacks(fire_stack_strength) - L.IgniteMob() - -/obj/structure/bonfire/process() - if(!CheckOxygen()) - extinguish() - return - Burn() - -/obj/structure/bonfire/extinguish() - if(burning) - icon_state = "bonfire" - burning = 0 - SetLuminosity(0) - STOP_PROCESSING(SSobj, src) - -/obj/structure/bonfire/buckle_mob(mob/living/M, force = 0) - if(..()) - M.pixel_y += 13 - -/obj/structure/bonfire/unbuckle_mob(mob/living/buckled_mob, force=0) - if(..()) - buckled_mob.pixel_y -= 13 \ No newline at end of file + plank_name = "rods" \ No newline at end of file diff --git a/code/modules/hydroponics/growninedible.dm b/code/modules/hydroponics/growninedible.dm index 361b31fcd6..3514138036 100644 --- a/code/modules/hydroponics/growninedible.dm +++ b/code/modules/hydroponics/growninedible.dm @@ -5,7 +5,7 @@ /obj/item/weapon/grown // Grown weapons name = "grown_weapon" icon = 'icons/obj/hydroponics/harvest.dmi' - resistance_flags = FLAMMABLE + burn_state = FLAMMABLE var/obj/item/seeds/seed = null // type path, gets converted to item on New(). It's safe to assume it's always a seed item. /obj/item/weapon/grown/New(newloc, var/obj/item/seeds/new_seed = null) @@ -30,6 +30,9 @@ seed.prepare_result(src) transform *= TransformUsingVariable(seed.potency, 100, 0.5) add_juice() + var/datum/plant_gene/trait/glow/G = seed.get_gene(/datum/plant_gene/trait/glow) + if(G) + set_light(G.get_lum(seed)) /obj/item/weapon/grown/attackby(obj/item/O, mob/user, params) @@ -53,37 +56,3 @@ for(var/datum/plant_gene/trait/T in seed.genes) T.on_cross(src, AM) ..() - - -// Glow gene procs -/obj/item/weapon/grown/Destroy() - if(seed) - var/datum/plant_gene/trait/glow/G = seed.get_gene(/datum/plant_gene/trait/glow) - if(G && ismob(loc)) - loc.AddLuminosity(-G.get_lum(seed)) - return ..() - -/obj/item/weapon/grown/throw_impact(atom/hit_atom) - if(!..()) //was it caught by a mob? - if(seed) - for(var/datum/plant_gene/trait/T in seed.genes) - T.on_throw_impact(src, hit_atom) - -/obj/item/weapon/grown/pickup(mob/user) - ..() - if(seed) - var/datum/plant_gene/trait/glow/G = seed.get_gene(/datum/plant_gene/trait/glow) - if(G) - SetLuminosity(0) - user.AddLuminosity(G.get_lum(seed)) - -/obj/item/weapon/grown/dropped(mob/user) - ..() - if(seed) - var/datum/plant_gene/trait/glow/G = seed.get_gene(/datum/plant_gene/trait/glow) - if(G) - user.AddLuminosity(-G.get_lum(seed)) - SetLuminosity(G.get_lum(seed)) - -/obj/item/weapon/grown/microwave_act(obj/machine/microwave/M) - return \ No newline at end of file diff --git a/code/modules/hydroponics/hydroitemdefines.dm b/code/modules/hydroponics/hydroitemdefines.dm index ac0dbf054b..8a79a3dca1 100644 --- a/code/modules/hydroponics/hydroitemdefines.dm +++ b/code/modules/hydroponics/hydroitemdefines.dm @@ -5,7 +5,7 @@ icon = 'icons/obj/device.dmi' icon_state = "hydro" item_state = "analyzer" - w_class = WEIGHT_CLASS_TINY + w_class = 1 slot_flags = SLOT_BELT origin_tech = "magnets=2;biotech=2" materials = list(MAT_METAL=30, MAT_GLASS=20) @@ -24,7 +24,7 @@ flags = OPENCONTAINER slot_flags = SLOT_BELT throwforce = 0 - w_class = WEIGHT_CLASS_SMALL + w_class = 2 throw_speed = 3 throw_range = 10 @@ -33,7 +33,7 @@ reagents.add_reagent("weedkiller", 100) /obj/item/weapon/reagent_containers/spray/weedspray/suicide_act(mob/user) - user.visible_message("[user] is huffing [src]! It looks like [user.p_theyre()] trying to commit suicide!") + user.visible_message("[user] is huffing the [src.name]! It looks like \he's trying to commit suicide.") return (TOXLOSS) /obj/item/weapon/reagent_containers/spray/pestspray // -- Skie @@ -46,7 +46,7 @@ flags = OPENCONTAINER slot_flags = SLOT_BELT throwforce = 0 - w_class = WEIGHT_CLASS_SMALL + w_class = 2 throw_speed = 3 throw_range = 10 @@ -55,7 +55,7 @@ reagents.add_reagent("pestkiller", 100) /obj/item/weapon/reagent_containers/spray/pestspray/suicide_act(mob/user) - user.visible_message("[user] is huffing [src]! It looks like [user.p_theyre()] trying to commit suicide!") + viewers(user) << "[user] is huffing the [src.name]! It looks like \he's trying to commit suicide." return (TOXLOSS) /obj/item/weapon/cultivator @@ -68,7 +68,7 @@ flags = CONDUCT force = 5 throwforce = 7 - w_class = WEIGHT_CLASS_SMALL + w_class = 2 materials = list(MAT_METAL=50) attack_verb = list("slashed", "sliced", "cut", "clawed") hitsound = 'sound/weapons/bladeslice.ogg' @@ -80,7 +80,7 @@ icon_state = "hatchet" flags = CONDUCT force = 12 - w_class = WEIGHT_CLASS_TINY + w_class = 1 throwforce = 15 throw_speed = 3 throw_range = 4 @@ -91,7 +91,7 @@ sharpness = IS_SHARP /obj/item/weapon/hatchet/suicide_act(mob/user) - user.visible_message("[user] is chopping at [user.p_them()]self with [src]! It looks like [user.p_theyre()] trying to commit suicide!") + user.visible_message("[user] is chopping at \himself with the [src.name]! It looks like \he's trying to commit suicide.") playsound(loc, 'sound/weapons/bladeslice.ogg', 50, 1, -1) return (BRUTELOSS) @@ -103,7 +103,7 @@ throwforce = 5 throw_speed = 2 throw_range = 3 - w_class = WEIGHT_CLASS_BULKY + w_class = 4 flags = CONDUCT armour_penetration = 20 slot_flags = SLOT_BACK @@ -111,14 +111,9 @@ attack_verb = list("chopped", "sliced", "cut", "reaped") hitsound = 'sound/weapons/bladeslice.ogg' -/obj/item/weapon/scythe/suicide_act(mob/user) - user.visible_message("[user] is beheading [user.p_them()]self with [src]! It looks like [user.p_theyre()] trying to commit suicide!") - if(iscarbon(user)) - var/mob/living/carbon/C = user - var/obj/item/bodypart/BP = C.get_bodypart("head") - if(BP) - BP.drop_limb() - playsound(loc,pick('sound/misc/desceration-01.ogg','sound/misc/desceration-02.ogg','sound/misc/desceration-01.ogg') ,50, 1, -1) +/obj/item/weapon/scythe/suicide_act(mob/user) // maybe later i'll actually figure out how to make it behead them + user.visible_message("[user] is beheading \himself with the [src.name]! It looks like \he's trying to commit suicide.") + playsound(loc, 'sound/weapons/bladeslice.ogg', 50, 1, -1) return (BRUTELOSS) // ************************************* @@ -131,7 +126,7 @@ icon = 'icons/obj/chemical.dmi' icon_state = "bottle16" volume = 50 - w_class = WEIGHT_CLASS_TINY + w_class = 1 amount_per_transfer_from_this = 10 possible_transfer_amounts = list(1,2,5,10,15,25,50) @@ -163,7 +158,7 @@ /obj/item/weapon/reagent_containers/glass/bottle/nutrient/rh name = "bottle of Robust Harvest" - desc = "Contains a fertilizer that increases the yield of a plant by 30% while causing no mutations." + desc = "Contains a fertilizer that doubles the yield of a plant while causing no mutations." icon = 'icons/obj/chemical.dmi' icon_state = "bottle15" @@ -181,7 +176,7 @@ icon = 'icons/obj/chemical.dmi' icon_state = "bottle16" volume = 50 - w_class = WEIGHT_CLASS_TINY + w_class = 1 amount_per_transfer_from_this = 10 possible_transfer_amounts = list(1,2,5,10,15,25,50) diff --git a/code/modules/hydroponics/hydroponics.dm b/code/modules/hydroponics/hydroponics.dm index 8a1379542d..6a00b9fa11 100644 --- a/code/modules/hydroponics/hydroponics.dm +++ b/code/modules/hydroponics/hydroponics.dm @@ -4,8 +4,6 @@ icon_state = "hydrotray" density = 1 anchored = 1 - pixel_y = 8 - unique_rename = 1 var/waterlevel = 100 //The amount of water in the tray (max 100) var/maxwater = 100 //The maximum amount of water in the tray var/nutrilevel = 10 //The amount of nutrient in the tray (max 10) @@ -17,7 +15,7 @@ var/toxic = 0 //Toxicity in the tray? var/age = 0 //Current age var/dead = 0 //Is it dead? - var/plant_health //Its health + var/health = 0 //Its health. var/lastproduce = 0 //Last time it was harvested var/lastcycle = 0 //Used for timing of cycles. var/cycledelay = 200 //About 10 seconds / cycle @@ -25,10 +23,11 @@ var/obj/item/seeds/myseed = null //The currently planted seed var/rating = 1 var/unwrenchable = 1 - var/recent_bee_visit = FALSE //Have we been visited by a bee recently, so bees dont overpollinate one plant + var/recent_bee_visit = FALSE //Have we been visited by a bee recently, so bees dont overpolinate one plant var/using_irrigation = FALSE //If the tray is connected to other trays via irrigation hoses var/self_sustaining = FALSE //If the tray generates nutrients and water on its own + pixel_y=8 /obj/machinery/hydroponics/constructable name = "hydroponics tray" @@ -122,11 +121,11 @@ myseed.loc = src if(self_sustaining) - adjustNutri(1) - adjustWater(rand(3,5)) - adjustWeeds(-2) - adjustPests(-2) - adjustToxic(-2) + adjustNutri(2 / rating) + adjustWater(rand(8, 10) / rating) + adjustWeeds(-5 / rating) + adjustPests(-5 / rating) + adjustToxic(-5 / rating) if(world.time > (lastcycle + cycledelay)) lastcycle = world.time @@ -144,15 +143,15 @@ adjustNutri(-1 / rating) // Lack of nutrients hurts non-weeds - if(nutrilevel <= 0 && !myseed.get_gene(/datum/plant_gene/trait/plant_type/weed_hardy)) + if(nutrilevel <= 0 && myseed.plant_type != PLANT_WEED) adjustHealth(-rand(1,3)) //Photosynthesis///////////////////////////////////////////////////////// // Lack of light hurts non-mushrooms if(isturf(loc)) var/turf/currentTurf = loc - var/lightAmt = currentTurf.lighting_lumcount - if(myseed.get_gene(/datum/plant_gene/trait/plant_type/fungal_metabolism)) + var/lightAmt = currentTurf.get_lumcount() + if(myseed.plant_type == PLANT_MUSHROOM) if(lightAmt < 2) adjustHealth(-1 / rating) else // Non-mushroom @@ -164,7 +163,7 @@ adjustWater(-rand(1,6) / rating) // If the plant is dry, it loses health pretty fast, unless mushroom - if(waterlevel <= 10 && !myseed.get_gene(/datum/plant_gene/trait/plant_type/fungal_metabolism)) + if(waterlevel <= 10 && myseed.plant_type != PLANT_MUSHROOM) adjustHealth(-rand(0,1) / rating) if(waterlevel <= 0) adjustHealth(-rand(0,2) / rating) @@ -193,13 +192,13 @@ adjustHealth(-1 / rating) // If it's a weed, it doesn't stunt the growth - if(weedlevel >= 5 && !myseed.get_gene(/datum/plant_gene/trait/plant_type/weed_hardy)) + if(weedlevel >= 5 && myseed.plant_type != PLANT_WEED) adjustHealth(-1 / rating) //Health & Age/////////////////////////////////////////////////////////// - // Plant dies if plant_health <= 0 - if(plant_health <= 0) + // Plant dies if health <= 0 + if(health <= 0) plantdies() adjustWeeds(1 / rating) // Weeds flourish @@ -223,7 +222,7 @@ // Weeeeeeeeeeeeeeedddssss if(weedlevel >= 10 && prob(50)) // At this point the plant is kind of fucked. Weeds can overtake the plant spot. if(myseed) - if(!myseed.get_gene(/datum/plant_gene/trait/plant_type/weed_hardy) && !myseed.get_gene(/datum/plant_gene/trait/plant_type/fungal_metabolism)) // If a normal plant + if(myseed.plant_type == PLANT_NORMAL) // If a normal plant weedinvasion() else weedinvasion() // Weed invasion into empty tray @@ -257,10 +256,10 @@ if(self_sustaining) if(istype(src, /obj/machinery/hydroponics/soil)) - add_atom_colour(rgb(255, 175, 0), FIXED_COLOUR_PRIORITY) + color = rgb(255, 175, 0) else overlays += image('icons/obj/hydroponics/equipment.dmi', icon_state = "gaia_blessing") - SetLuminosity(3) + set_light(3) update_icon_hoses() @@ -271,9 +270,9 @@ if(!self_sustaining) if(myseed && myseed.get_gene(/datum/plant_gene/trait/glow)) var/datum/plant_gene/trait/glow/G = myseed.get_gene(/datum/plant_gene/trait/glow) - SetLuminosity(G.get_lum(myseed)) + set_light(G.get_lum(myseed)) else - SetLuminosity(0) + set_light(0) return @@ -306,7 +305,7 @@ add_overlay(image('icons/obj/hydroponics/equipment.dmi', icon_state = "over_lowwater3")) if(nutrilevel <= 2) add_overlay(image('icons/obj/hydroponics/equipment.dmi', icon_state = "over_lownutri3")) - if(plant_health <= (myseed.endurance / 2)) + if(health <= (myseed.endurance / 2)) add_overlay(image('icons/obj/hydroponics/equipment.dmi', icon_state = "over_lowhealth3")) if(weedlevel >= 5 || pestlevel >= 5 || toxic >= 40) add_overlay(image('icons/obj/hydroponics/equipment.dmi', icon_state = "over_alert3")) @@ -322,7 +321,7 @@ user << "It's dead!" else if (harvest) user << "It's ready to harvest." - else if (plant_health <= (myseed.endurance / 2)) + else if (health <= (myseed.endurance / 2)) user << "It looks unhealthy." else user << "[src] is empty." @@ -367,7 +366,7 @@ else myseed = new /obj/item/seeds/weeds(src) age = 0 - plant_health = myseed.endurance + health = myseed.endurance lastcycle = world.time harvest = 0 weedlevel = 0 // Reset @@ -376,13 +375,13 @@ visible_message("The [oldPlantName] is overtaken by some [myseed.plantname]!") -/obj/machinery/hydroponics/proc/mutate(lifemut = 2, endmut = 5, productmut = 1, yieldmut = 2, potmut = 25, wrmut = 2, wcmut = 5, traitmut = 0) // Mutates the current seed +/obj/machinery/hydroponics/proc/mutate(lifemut = 2, endmut = 5, productmut = 1, yieldmut = 2, potmut = 25) // Mutates the current seed if(!myseed) return - myseed.mutate(lifemut, endmut, productmut, yieldmut, potmut, wrmut, wcmut, traitmut) + myseed.mutate(lifemut, endmut, productmut, yieldmut, potmut) /obj/machinery/hydroponics/proc/hardmutate() - mutate(4, 10, 2, 4, 50, 4, 10, 3) + mutate(4, 10, 2, 4, 50) /obj/machinery/hydroponics/proc/mutatespecie() // Mutagent produced a new plant! @@ -400,7 +399,7 @@ hardmutate() age = 0 - plant_health = myseed.endurance + health = myseed.endurance lastcycle = world.time harvest = 0 weedlevel = 0 // Reset @@ -420,7 +419,7 @@ dead = 0 hardmutate() age = 0 - plant_health = myseed.endurance + health = myseed.endurance lastcycle = world.time harvest = 0 weedlevel = 0 // Reset @@ -433,7 +432,7 @@ /obj/machinery/hydroponics/proc/plantdies() // OH NOES!!!!! I put this all in one function to make things easier - plant_health = 0 + health = 0 harvest = 0 pestlevel = 0 // Pests die if(!dead) @@ -441,17 +440,16 @@ dead = 1 - -/obj/machinery/hydroponics/proc/mutatepest(mob/user) +/obj/machinery/hydroponics/proc/mutatepest() if(pestlevel > 5) - message_admins("[ADMIN_LOOKUPFLW(user)] caused spiderling pests to spawn in a hydro tray") - log_game("[key_name(user)] caused spiderling pests to spawn in a hydro tray") visible_message("The pests seem to behave oddly...") - spawn_atom_to_turf(/obj/structure/spider/spiderling/hunter, src, 3, FALSE) + for(var/i=0, i<3, i++) + var/obj/effect/spider/spiderling/S = new(src.loc) + S.grow_as = /mob/living/simple_animal/hostile/poison/giant_spider/hunter else - user << "The pests seem to behave oddly, but quickly settle down..." + usr << "The pests seem to behave oddly, but quickly settle down..." -/obj/machinery/hydroponics/proc/applyChemicals(datum/reagents/S, mob/user) +/obj/machinery/hydroponics/proc/applyChemicals(datum/reagents/S) if(myseed) myseed.on_chem_reaction(S) //In case seeds have some special interactions with special chems, currently only used by vines @@ -459,8 +457,7 @@ if(S.has_reagent("mutagen", 5) || S.has_reagent("radium", 10) || S.has_reagent("uranium", 10)) switch(rand(100)) if(91 to 100) - adjustHealth(-10) - user << "The plant shrivels and burns." + plantdies() if(81 to 90) mutatespecie() if(66 to 80) @@ -468,13 +465,13 @@ if(41 to 65) mutate() if(21 to 41) - user << "The plants don't seem to react..." + usr << "The plants don't seem to react..." if(11 to 20) mutateweed() if(1 to 10) - mutatepest(user) + mutatepest() else - user << "Nothing happens..." + usr << "Nothing happens..." // 2 or 1 units is enough to change the yield and other stats.// Can change the yield and other stats, but requires more than mutagen else if(S.has_reagent("mutagen", 2) || S.has_reagent("radium", 5) || S.has_reagent("uranium", 5)) @@ -492,18 +489,18 @@ // Nutriments if(S.has_reagent("eznutriment", 1)) - yieldmod = 1 - mutmod = 1 + yieldmod = 1 * rating + mutmod = 1 * rating adjustNutri(round(S.get_reagent_amount("eznutriment") * 1)) if(S.has_reagent("left4zednutriment", 1)) - yieldmod = 0 - mutmod = 2 + yieldmod = 0 * rating + mutmod = 2 * rating adjustNutri(round(S.get_reagent_amount("left4zednutriment") * 1)) if(S.has_reagent("robustharvestnutriment", 1)) - yieldmod = 1.3 - mutmod = 0 + yieldmod = 2 * rating + mutmod = 0 * rating adjustNutri(round(S.get_reagent_amount("robustharvestnutriment") *1 )) // Antitoxin binds shit pretty well. So the tox goes significantly down @@ -618,11 +615,11 @@ // Saltpetre is used for gardening IRL, to simplify highly, it speeds up growth and strengthens plants if(S.has_reagent("saltpetre", 1)) - var/salt = S.get_reagent_amount("saltpetre") - adjustHealth(round(salt * 0.25)) - if (myseed) - myseed.adjust_production(-round(salt/100)-prob(salt%100)) - myseed.adjust_potency(round(salt*0.50)) + adjustHealth(round(S.get_reagent_amount("saltpetre") * 0.25)) + if(myseed) + myseed.adjust_production(-round(S.get_reagent_amount("saltpetre") * 0.02)) + myseed.adjust_potency(round(S.get_reagent_amount("saltpetre") * 0.01)) + // Ash is also used IRL in gardening, as a fertilizer enhancer and weed killer if(S.has_reagent("ash", 1)) adjustHealth(round(S.get_reagent_amount("ash") * 0.25)) @@ -670,9 +667,9 @@ if(33 to 65) mutateweed() if(1 to 32) - mutatepest(user) + mutatepest() else - user << "Nothing happens..." + usr << "Nothing happens..." /obj/machinery/hydroponics/attackby(obj/item/O, mob/user, params) //Called when mob user "attacks" it with object O @@ -685,16 +682,6 @@ return if(alert(user, "This will make [src] self-sustaining but consume [O] forever. Are you sure?", "[name]", "I'm Sure", "Abort") == "Abort" || !user) return - if(!O || qdeleted(O)) - return - if(!Adjacent(user)) - return - if(self_sustaining) - user << "This [name] is already self-sustaining!" - return - if(myseed || weedlevel) - user << "[src] needs to be clear of plants and weeds!" - return user.visible_message("[user] gently pulls open the soil for [O] and places it inside.", "You tenderly root [O] into [src].") user.drop_item() qdel(O) @@ -759,7 +746,7 @@ if(istype(reagent_source, /obj/item/weapon/reagent_containers/food/snacks) || istype(reagent_source, /obj/item/weapon/reagent_containers/pill)) qdel(reagent_source) - H.applyChemicals(S, user) + H.applyChemicals(S) S.clear_reagents() qdel(S) @@ -777,9 +764,9 @@ dead = 0 myseed = O age = 1 - plant_health = myseed.endurance + health = myseed.endurance lastcycle = world.time - O.forceMove(src) + O.loc = src update_icon() else user << "[src] already has seeds in it!" @@ -824,8 +811,8 @@ if(!anchored && !isinspace()) user.visible_message("[user] begins to wrench [src] into place.", \ "You begin to wrench [src] in place...") - playsound(loc, O.usesound, 50, 1) - if (do_after(user, 20*O.toolspeed, target = src)) + playsound(loc, 'sound/items/Ratchet.ogg', 50, 1) + if (do_after(user, 20/O.toolspeed, target = src)) if(anchored) return anchored = 1 @@ -834,8 +821,8 @@ else if(anchored) user.visible_message("[user] begins to unwrench [src].", \ "You begin to unwrench [src]...") - playsound(loc, O.usesound, 50, 1) - if (do_after(user, 20*O.toolspeed, target = src)) + playsound(loc, 'sound/items/Ratchet.ogg', 50, 1) + if (do_after(user, 20/O.toolspeed, target = src)) if(!anchored) return anchored = 0 @@ -844,7 +831,7 @@ else if(istype(O, /obj/item/weapon/wirecutters) && unwrenchable) using_irrigation = !using_irrigation - playsound(src, O.usesound, 50, 1) + playsound(src, 'sound/items/Wirecutter.ogg', 50, 1) user.visible_message("[user] [using_irrigation ? "" : "dis"]connects [src]'s irrigation hoses.", \ "You [using_irrigation ? "" : "dis"]connect [src]'s irrigation hoses.") for(var/obj/machinery/hydroponics/h in range(1,src)) @@ -861,10 +848,6 @@ user.visible_message("[user] digs out the plants in [src]!", "You dig out all of [src]'s plants!") playsound(src, 'sound/effects/shovel_dig.ogg', 50, 1) if(myseed) //Could be that they're just using it as a de-weeder - age = 0 - plant_health = 0 - if(harvest) - harvest = FALSE //To make sure they can't just put in another seed and insta-harvest it qdel(myseed) myseed = null weedlevel = 0 //Has a side effect of cleaning up those nasty weeds @@ -874,7 +857,7 @@ return ..() /obj/machinery/hydroponics/attack_hand(mob/user) - if(issilicon(user)) //How does AI know what plant is? + if(istype(user, /mob/living/silicon)) //How does AI know what plant is? return if(harvest) myseed.harvest(user) @@ -896,7 +879,7 @@ user << "You fail to harvest anything useful!" else user << "You harvest [myseed.getYield()] items from the [myseed.plantname]." - if(!myseed.get_gene(/datum/plant_gene/trait/repeated_harvest)) + if(myseed.oneharvest) qdel(myseed) myseed = null dead = 0 @@ -914,7 +897,7 @@ /obj/machinery/hydroponics/proc/adjustHealth(adjustamt) if(myseed && !dead) - plant_health = Clamp(plant_health + adjustamt, 0, myseed.endurance) + health = Clamp(health + adjustamt, 0, myseed.endurance) /obj/machinery/hydroponics/proc/adjustToxic(adjustamt) toxic = Clamp(toxic + adjustamt, 0, 100) diff --git a/code/modules/hydroponics/plant_genes.dm b/code/modules/hydroponics/plant_genes.dm index 8caf48be48..965c67d501 100644 --- a/code/modules/hydroponics/plant_genes.dm +++ b/code/modules/hydroponics/plant_genes.dm @@ -78,22 +78,6 @@ S.potency = value -/datum/plant_gene/core/weed_rate - name = "Weed Growth Rate" - value = 1 - -/datum/plant_gene/core/weed_rate/apply_stat(obj/item/seeds/S) - S.weed_rate = value - - -/datum/plant_gene/core/weed_chance - name = "Weed Vulnerability" - value = 5 - -/datum/plant_gene/core/weed_chance/apply_stat(obj/item/seeds/S) - S.weed_chance = value - - // Reagent genes store reagent ID and reagent ratio. Amount of reagent in the plant = 1 + (potency * rate) /datum/plant_gene/reagent name = "Nutriment" @@ -173,21 +157,14 @@ /datum/plant_gene/trait/proc/on_consume(obj/item/weapon/reagent_containers/food/snacks/grown/G, mob/living/carbon/target) return - /datum/plant_gene/trait/proc/on_cross(obj/item/weapon/reagent_containers/food/snacks/grown/G, atom/target) return - /datum/plant_gene/trait/proc/on_slip(obj/item/weapon/reagent_containers/food/snacks/grown/G, mob/living/carbon/target) return - /datum/plant_gene/trait/proc/on_squash(obj/item/weapon/reagent_containers/food/snacks/grown/G, atom/target) return -/datum/plant_gene/trait/proc/on_attackby(obj/item/weapon/reagent_containers/food/snacks/grown/G, obj/item/I, mob/user) - return -/datum/plant_gene/trait/proc/on_throw_impact(obj/item/weapon/reagent_containers/food/snacks/grown/G, atom/target) - return /datum/plant_gene/trait/squash // Allows the plant to be squashed when thrown or slipped on, leaving a colored mess and trash type item behind. @@ -197,6 +174,10 @@ examine_line = "It has a lot of liquid contents inside." origin_tech = list("biotech" = 5) +/*/datum/plant_gene/trait/squash/on_slip(obj/item/weapon/reagent_containers/food/snacks/grown/G, mob/living/carbon/target) + G.squash(target)*/ + + /datum/plant_gene/trait/slip // Makes plant slippery, unless it has a grown-type trash. Then the trash gets slippery. // Applies other trait effects (teleporting, etc) to the target by on_slip. @@ -277,7 +258,7 @@ if(ismob(newloc)) G.pickup(newloc)//adjusts the lighting on the mob else - G.SetLuminosity(get_lum(G.seed)) + G.set_light(get_lum(G.seed)) /datum/plant_gene/trait/glow/berry name = "Strong Bioluminescence" @@ -295,7 +276,7 @@ if(isliving(target)) var/teleport_radius = max(round(G.seed.potency / 10), 1) var/turf/T = get_turf(target) - new /obj/effect/decal/cleanable/molten_object(T) //Leave a pile of goo behind for dramatic effect... + new /obj/effect/decal/cleanable/molten_item(T) //Leave a pile of goo behind for dramatic effect... do_teleport(target, T, teleport_radius) /datum/plant_gene/trait/teleport/on_slip(obj/item/weapon/reagent_containers/food/snacks/grown/G, mob/living/carbon/C) @@ -306,7 +287,7 @@ if(prob(50)) do_teleport(G, T, teleport_radius) else - new /obj/effect/decal/cleanable/molten_object(T) //Leave a pile of goo behind for dramatic effect... + new /obj/effect/decal/cleanable/molten_item(T) //Leave a pile of goo behind for dramatic effect... qdel(G) @@ -331,79 +312,3 @@ /datum/plant_gene/trait/maxchem/on_new(obj/item/weapon/reagent_containers/food/snacks/grown/G, newloc) ..() G.reagents.maximum_volume *= rate - -/datum/plant_gene/trait/repeated_harvest - name = "Perennial Growth" - -/datum/plant_gene/trait/repeated_harvest/can_add(obj/item/seeds/S) - if(!..()) - return FALSE - if(istype(S, /obj/item/seeds/replicapod)) - return FALSE - return TRUE - -/datum/plant_gene/trait/battery - name = "Capacitive Cell Production" - -/datum/plant_gene/trait/battery/on_attackby(obj/item/weapon/reagent_containers/food/snacks/grown/G, obj/item/I, mob/user) - if(istype(I, /obj/item/stack/cable_coil)) - var/obj/item/stack/cable_coil/C = I - if(C.use(5)) - user << "You add some cable to [G] and slide it inside the battery encasing." - var/obj/item/weapon/stock_parts/cell/potato/pocell = new /obj/item/weapon/stock_parts/cell/potato(user.loc) - pocell.icon_state = G.icon_state - pocell.maxcharge = G.seed.potency * 20 - - // The secret of potato supercells! - var/datum/plant_gene/trait/cell_charge/CG = G.seed.get_gene(/datum/plant_gene/trait/cell_charge) - if(CG) // 10x charge for deafult cell charge gene - 20 000 with 100 potency. - pocell.maxcharge *= CG.rate*1000 - pocell.charge = pocell.maxcharge - pocell.name = "[G] battery" - pocell.desc = "A rechargable plant based power cell. This one has a power rating of [pocell.maxcharge], and you should not swallow it." - - if(G.reagents.has_reagent("plasma", 2)) - pocell.rigged = 1 - - qdel(G) - else - user << "You need five lengths of cable to make a [G] battery!" - - -/datum/plant_gene/trait/stinging - name = "Hypodermic Prickles" - -/datum/plant_gene/trait/stinging/on_throw_impact(obj/item/weapon/reagent_containers/food/snacks/grown/G, atom/target) - if(isliving(target) && G.reagents && G.reagents.total_volume) - var/mob/living/L = target - if(L.reagents && L.can_inject(null, 0)) - var/injecting_amount = max(1, G.seed.potency*0.2) // Minimum of 1, max of 20 - var/fraction = min(injecting_amount/G.reagents.total_volume, 1) - G.reagents.reaction(L, INJECT, fraction) - G.reagents.trans_to(L, injecting_amount) - target << "You are pricked by [G]!" - -/datum/plant_gene/trait/smoke - name = "gaseous decomposition" - -/datum/plant_gene/trait/smoke/on_squash(obj/item/weapon/reagent_containers/food/snacks/grown/G, atom/target) - var/datum/effect_system/smoke_spread/chem/S = new - var/splat_location = get_turf(target) - var/smoke_amount = round(sqrt(G.seed.potency * 0.1), 1) - S.attach(splat_location) - S.set_up(G.reagents, smoke_amount, splat_location, 0) - S.start() - G.reagents.clear_reagents() - -/datum/plant_gene/trait/plant_type // Parent type - name = "you shouldn't see this" - trait_id = "plant_type" - -/datum/plant_gene/trait/plant_type/weed_hardy - name = "Weed Adaptation" - -/datum/plant_gene/trait/plant_type/fungal_metabolism - name = "Fungal Vitality" - -/datum/plant_gene/trait/plant_type/alien_properties - name ="?????" diff --git a/code/modules/hydroponics/seed_extractor.dm b/code/modules/hydroponics/seed_extractor.dm index c90579b0da..2579a8fd45 100644 --- a/code/modules/hydroponics/seed_extractor.dm +++ b/code/modules/hydroponics/seed_extractor.dm @@ -47,6 +47,10 @@ var/piles = list() var/max_seeds = 1000 var/seed_multiplier = 1 + use_auto_lights = 1 + light_power_on = 1 + light_range_on = 3 + light_color = LIGHT_COLOR_BLUE /obj/machinery/seed_extractor/New() ..() @@ -106,7 +110,7 @@ user << "You add [O] to [src.name]." updateUsrDialog() return - else if(user.a_intent != INTENT_HARM) + else if(user.a_intent != "harm") user << "You can't extract any seeds from \the [O.name]!" else return ..() diff --git a/code/modules/hydroponics/seeds.dm b/code/modules/hydroponics/seeds.dm index 2cbef69b75..d616089588 100644 --- a/code/modules/hydroponics/seeds.dm +++ b/code/modules/hydroponics/seeds.dm @@ -5,8 +5,8 @@ /obj/item/seeds icon = 'icons/obj/hydroponics/seeds.dmi' icon_state = "seed" // Unknown plant seed - these shouldn't exist in-game. - w_class = WEIGHT_CLASS_TINY - resistance_flags = FLAMMABLE + w_class = 1 + burn_state = FLAMMABLE var/plantname = "Plants" // Name of plant when planted. var/product // A type path. The thing that is created when the plant is harvested. var/species = "" // Used to update icons. Should match the name in the sprites unless all icon_* are overriden. @@ -21,8 +21,10 @@ var/maturation = 6 // Used to determine which sprite to switch to when growing. var/production = 6 // Changes the amount of time needed for a plant to become harvestable. var/yield = 3 // Amount of growns created per harvest. If is -1, the plant/shroom/weed is never meant to be harvested. + var/oneharvest = 0 // If a plant is cleared from the tray after harvesting, e.g. a carrot. var/potency = 10 // The 'power' of a plant. Generally effects the amount of reagent in a plant, also used in other ways. var/growthstages = 6 // Amount of growth sprites the plant has. + var/plant_type = PLANT_NORMAL // 0 = PLANT_NORMAL; 1 = PLANT_WEED; 2 = PLANT_MUSHROOM; 3 = PLANT_ALIEN var/rarity = 0 // How rare the plant is. Used for giving points to cargo when shipping off to Centcom. var/list/mutatelist = list() // The type of plants that this plant can mutate into. var/list/genes = list() // Plant genes are stored here, see plant_genes.dm for more info. @@ -32,6 +34,9 @@ // Stronger reagents must always come first to avoid being displaced by weaker ones. // Total amount of any reagent in plant is calculated by formula: 1 + round(potency * multiplier) + var/innate_yieldmod = 1 //modifier for yield, seperate to the one in Hydro trays, as that one is SPECIFICALLY for nutriment/chems (which means it's constantly reset) + //This is added onto the yield mod of the hydro tray, yield *= (parent.yieldmod+innate_yieldmod) + var/weed_rate = 1 //If the chance below passes, then this many weeds sprout during growth var/weed_chance = 5 //Percentage chance per tray update to grow weeds @@ -46,14 +51,12 @@ if(!icon_dead) icon_dead = "[species]-dead" - if(!icon_harvest && !get_gene(/datum/plant_gene/trait/plant_type/fungal_metabolism) && yield != -1) + if(!icon_harvest && plant_type != PLANT_MUSHROOM && yield != -1) icon_harvest = "[species]-harvest" if(!nogenes) // not used on Copy() genes += new /datum/plant_gene/core/lifespan(lifespan) genes += new /datum/plant_gene/core/endurance(endurance) - genes += new /datum/plant_gene/core/weed_rate(weed_rate) - genes += new /datum/plant_gene/core/weed_chance(weed_chance) if(yield != -1) genes += new /datum/plant_gene/core/yield(yield) genes += new /datum/plant_gene/core/production(production) @@ -77,8 +80,6 @@ S.production = production S.yield = yield S.potency = potency - S.weed_rate = weed_rate - S.weed_chance = weed_chance S.genes = list() for(var/g in genes) var/datum/plant_gene/G = g @@ -94,21 +95,17 @@ for(var/datum/plant_gene/reagent/R in genes) reagents_add[R.reagent_id] = R.rate -/obj/item/seeds/proc/mutate(lifemut = 2, endmut = 5, productmut = 1, yieldmut = 2, potmut = 25, wrmut = 2, wcmut = 5, traitmut = 0) +/obj/item/seeds/proc/mutate(lifemut = 2, endmut = 5, productmut = 1, yieldmut = 2, potmut = 25) adjust_lifespan(rand(-lifemut,lifemut)) adjust_endurance(rand(-endmut,endmut)) adjust_production(rand(-productmut,productmut)) adjust_yield(rand(-yieldmut,yieldmut)) adjust_potency(rand(-potmut,potmut)) - adjust_weed_rate(rand(-wrmut, wrmut)) - adjust_weed_chance(rand(-wcmut, wcmut)) - if(prob(traitmut)) - add_random_traits(1, 1) - /obj/item/seeds/bullet_act(obj/item/projectile/Proj) //Works with the Somatoray to modify plant variables. if(istype(Proj, /obj/item/projectile/energy/florayield)) + var/rating = 1 if(istype(loc, /obj/machinery/hydroponics)) var/obj/machinery/hydroponics/H = loc @@ -131,11 +128,10 @@ if(parent.yieldmod == 0) return_yield = min(return_yield, 1)//1 if above zero, 0 otherwise else - return_yield *= (parent.yieldmod) + return_yield *= (parent.yieldmod+innate_yieldmod) return return_yield - /obj/item/seeds/proc/harvest(mob/user = usr) var/obj/machinery/hydroponics/parent = loc //for ease of access var/t_amount = 0 @@ -155,7 +151,6 @@ return result - /obj/item/seeds/proc/prepare_result(var/obj/item/weapon/reagent_containers/food/snacks/grown/T) if(T.reagents) for(var/reagent_id in reagents_add) @@ -172,7 +167,7 @@ if(yield != -1) // Unharvestable shouldn't suddenly turn harvestable yield = Clamp(yield + adjustamt, 0, 10) - if(yield <= 0 && get_gene(/datum/plant_gene/trait/plant_type/fungal_metabolism)) + if(yield <= 0 && plant_type == PLANT_MUSHROOM) yield = 1 // Mushrooms always have a minimum yield of 1. var/datum/plant_gene/core/C = get_gene(/datum/plant_gene/core/yield) if(C) @@ -204,79 +199,18 @@ if(C) C.value = potency -/obj/item/seeds/proc/adjust_weed_rate(adjustamt) - weed_rate = Clamp(weed_rate + adjustamt, 0, 100) - var/datum/plant_gene/core/C = get_gene(/datum/plant_gene/core/weed_rate) - if(C) - C.value = weed_rate - -/obj/item/seeds/proc/adjust_weed_chance(adjustamt) - weed_chance = Clamp(weed_chance + adjustamt, 0, 100) - var/datum/plant_gene/core/C = get_gene(/datum/plant_gene/core/weed_chance) - if(C) - C.value = weed_chance - -//Directly setting stats - -/obj/item/seeds/proc/set_yield(adjustamt) - if(yield != -1) // Unharvestable shouldn't suddenly turn harvestable - yield = Clamp(adjustamt, 0, 10) - - if(yield <= 0 && get_gene(/datum/plant_gene/trait/plant_type/fungal_metabolism)) - yield = 1 // Mushrooms always have a minimum yield of 1. - var/datum/plant_gene/core/C = get_gene(/datum/plant_gene/core/yield) - if(C) - C.value = yield - -/obj/item/seeds/proc/set_lifespan(adjustamt) - lifespan = Clamp(adjustamt, 10, 100) - var/datum/plant_gene/core/C = get_gene(/datum/plant_gene/core/lifespan) - if(C) - C.value = lifespan - -/obj/item/seeds/proc/set_endurance(adjustamt) - endurance = Clamp(adjustamt, 10, 100) - var/datum/plant_gene/core/C = get_gene(/datum/plant_gene/core/endurance) - if(C) - C.value = endurance - -/obj/item/seeds/proc/set_production(adjustamt) - if(yield != -1) - production = Clamp(adjustamt, 2, 10) - var/datum/plant_gene/core/C = get_gene(/datum/plant_gene/core/production) - if(C) - C.value = production - -/obj/item/seeds/proc/set_potency(adjustamt) - if(potency != -1) - potency = Clamp(adjustamt, 0, 100) - var/datum/plant_gene/core/C = get_gene(/datum/plant_gene/core/potency) - if(C) - C.value = potency - -/obj/item/seeds/proc/set_weed_rate(adjustamt) - weed_rate = Clamp(adjustamt, 0, 100) - var/datum/plant_gene/core/C = get_gene(/datum/plant_gene/core/weed_rate) - if(C) - C.value = weed_rate - -/obj/item/seeds/proc/set_weed_chance(adjustamt) - weed_chance = Clamp(adjustamt, 0, 100) - var/datum/plant_gene/core/C = get_gene(/datum/plant_gene/core/weed_chance) - if(C) - C.value = weed_chance - /obj/item/seeds/proc/get_analyzer_text() //in case seeds have something special to tell to the analyzer var/text = "" - if(!get_gene(/datum/plant_gene/trait/plant_type/weed_hardy) && !get_gene(/datum/plant_gene/trait/plant_type/fungal_metabolism) && !get_gene(/datum/plant_gene/trait/plant_type/alien_properties)) - text += "- Plant type: Normal plant\n" - if(get_gene(/datum/plant_gene/trait/plant_type/weed_hardy)) - text += "- Plant type: Weed. Can grow in nutrient-poor soil.\n" - if(get_gene(/datum/plant_gene/trait/plant_type/fungal_metabolism)) - text += "- Plant type: Mushroom. Can grow in dry soil.\n" - if(get_gene(/datum/plant_gene/trait/plant_type/alien_properties)) - text += "- Plant type: UNKNOWN \n" + switch(plant_type) + if(PLANT_NORMAL) + text += "- Plant type: Normal plant\n" + if(PLANT_WEED) + text += "- Plant type: Weed. Can grow in nutrient-poor soil.\n" + if(PLANT_MUSHROOM) + text += "- Plant type: Mushroom. Can grow in dry soil.\n" + else + text += "- Plant type: UNKNOWN \n" if(potency != -1) text += "- Potency: [potency]\n" if(yield != -1) @@ -286,8 +220,6 @@ text += "- Production speed: [production]\n" text += "- Endurance: [endurance]\n" text += "- Lifespan: [lifespan]\n" - text += "- Weed Growth Rate: [weed_rate]\n" - text += "- Weed Vulnerability: [weed_chance]\n" if(rarity) text += "- Species Discovery Value: [rarity]\n" @@ -337,44 +269,4 @@ if(seed.icon_harvest) // mushrooms have no grown sprites, same for items with no product if(!(seed.icon_harvest in states)) - world << "[seed.name] ([seed.type]) lacks the [seed.icon_harvest] icon!" - -/obj/item/seeds/proc/randomize_stats() - set_lifespan(rand(25, 60)) - set_endurance(rand(15, 35)) - set_production(rand(2, 10)) - set_yield(rand(1, 10)) - set_potency(rand(10, 35)) - set_weed_rate(rand(1, 10)) - set_weed_chance(rand(5, 100)) - maturation = rand(6, 12) - -/obj/item/seeds/proc/add_random_reagents(lower = 0, upper = 2) - var/amount_random_reagents = rand(lower, upper) - for(var/i in 1 to amount_random_reagents) - var/random_amount = rand(4, 15) * 0.01 // this must be multiplied by 0.01, otherwise, it will not properly associate - var/datum/plant_gene/reagent/R = new(get_random_reagent_id(), random_amount) - if(R.can_add(src)) - genes += R - else - qdel(R) - reagents_from_genes() - -/obj/item/seeds/proc/add_random_traits(lower = 0, upper = 2) - var/amount_random_traits = rand(lower, upper) - for(var/i in 1 to amount_random_traits) - var/random_trait = pick((subtypesof(/datum/plant_gene/trait)-typesof(/datum/plant_gene/trait/plant_type))) - var/datum/plant_gene/trait/T = new random_trait - if(T.can_add(src)) - genes += T - else - qdel(T) - -/obj/item/seeds/proc/add_random_plant_type(normal_plant_chance = 75) - if(prob(normal_plant_chance)) - var/random_plant_type = pick(subtypesof(/datum/plant_gene/trait/plant_type)) - var/datum/plant_gene/trait/plant_type/P = new random_plant_type - if(P.can_add(src)) - genes += P - else - qdel(P) \ No newline at end of file + world << "[seed.name] ([seed.type]) lacks the [seed.icon_harvest] icon!" \ No newline at end of file diff --git a/code/modules/jobs/access.dm b/code/modules/jobs/access.dm index 3f148b0c56..009ba5b287 100644 --- a/code/modules/jobs/access.dm +++ b/code/modules/jobs/access.dm @@ -1,4 +1,4 @@ - +//This file was auto-corrected by findeclaration.exe on 25.5.2012 20:42:31 /var/const/access_security = 1 // Security equipment /var/const/access_brig = 2 // Brig timers and permabrig @@ -64,7 +64,6 @@ /var/const/access_mineral_storeroom = 64 /var/const/access_minisat = 65 /var/const/access_weapons = 66 //Weapon authorization for secbots -/var/const/access_network = 67 //BEGIN CENTCOM ACCESS /*Should leave plenty of room if we need to add more access levels. @@ -83,19 +82,6 @@ /var/const/access_syndicate = 150//General Syndicate Access /var/const/access_syndicate_leader = 151//Nuke Op Leader Access - //Away Missions or Ruins - /*For generic away-mission/ruin access. Why would normal crew have access to a long-abandoned derelict - or a 2000 year-old temple? */ -/var/const/access_away_general = 200//General facilities. -/var/const/access_away_maint = 201//Away maintenance -/var/const/access_away_med = 202//Away medical -/var/const/access_away_sec = 203//Away security -/var/const/access_away_engine = 204//Away engineering -/var/const/access_away_generic1 = 205//Away generic access -/var/const/access_away_generic2 = 206 -/var/const/access_away_generic3 = 207 -/var/const/access_away_generic4 = 208 - /obj/var/list/req_access = null /obj/var/req_access_txt = "0" /obj/var/list/req_one_access = null @@ -105,29 +91,28 @@ /obj/proc/allowed(mob/M) //check if it doesn't require any access at all if(src.check_access(null)) - return TRUE - if(issilicon(M)) - if(ispAI(M)) - return FALSE - return TRUE //AI can do whatever it wants + return 1 + if(istype(M, /mob/living/silicon)) + //AI can do whatever he wants + return 1 if(IsAdminGhost(M)) //Access can't stop the abuse - return TRUE - else if(ishuman(M)) + return 1 + else if(istype(M, /mob/living/carbon/human)) var/mob/living/carbon/human/H = M //if they are holding or wearing a card that has access, that works - if(check_access(H.get_active_held_item()) || src.check_access(H.wear_id)) - return TRUE - else if(ismonkey(M) || isalienadult(M)) + if(src.check_access(H.get_active_hand()) || src.check_access(H.wear_id)) + return 1 + else if(istype(M, /mob/living/carbon/monkey) || istype(M, /mob/living/carbon/alien/humanoid)) var/mob/living/carbon/george = M //they can only hold things :( - if(check_access(george.get_active_held_item())) - return TRUE + if(src.check_access(george.get_active_hand())) + return 1 else if(isanimal(M)) var/mob/living/simple_animal/A = M - if(check_access(A.get_active_held_item()) || check_access(A.access_card)) - return TRUE - return FALSE + if(check_access(A.access_card)) + return 1 + return 0 /obj/item/proc/GetAccess() return list() @@ -135,8 +120,7 @@ /obj/item/proc/GetID() return null -//Call this before using req_access or req_one_access directly -/obj/proc/gen_access() +/obj/proc/check_access(obj/item/I) //These generations have been moved out of /obj/New() because they were slowing down the creation of objects that never even used the access system. if(!src.req_access) src.req_access = list() @@ -156,48 +140,45 @@ if(n) req_one_access += n -/obj/proc/check_access(obj/item/I) - gen_access() - if(!istype(src.req_access, /list)) //something's very wrong - return TRUE + return 1 var/list/L = src.req_access if(!L.len && (!src.req_one_access || !src.req_one_access.len)) //no requirements - return TRUE + return 1 if(!I) - return FALSE + return 0 for(var/req in src.req_access) if(!(req in I.GetAccess())) //doesn't have this access - return FALSE + return 0 if(src.req_one_access && src.req_one_access.len) for(var/req in src.req_one_access) if(req in I.GetAccess()) //has an access from the single access list - return TRUE - return FALSE - return TRUE + return 1 + return 0 + return 1 /obj/proc/check_access_list(list/L) if(!src.req_access && !src.req_one_access) - return TRUE + return 1 if(!istype(src.req_access, /list)) - return TRUE + return 1 if(!src.req_access.len && (!src.req_one_access || !src.req_one_access.len)) - return TRUE + return 1 if(!L) - return FALSE + return 0 if(!istype(L, /list)) - return FALSE + return 0 for(var/req in src.req_access) if(!(req in L)) //doesn't have this access - return FALSE + return 0 if(src.req_one_access && src.req_one_access.len) for(var/req in src.req_one_access) if(req in L) //has an access from the single access list - return TRUE - return FALSE - return TRUE + return 1 + return 0 + return 1 /proc/get_centcom_access(job) switch(job) @@ -243,7 +224,7 @@ access_hydroponics, access_library, access_lawyer, access_virology, access_cmo, access_qm, access_surgery, access_theatre, access_research, access_mining, access_mailsorting, access_weapons, access_heads_vault, access_mining_station, access_xenobiology, access_ce, access_hop, access_hos, access_RC_announce, - access_keycard_auth, access_tcomsat, access_gateway, access_mineral_storeroom, access_minisat, access_network) + access_keycard_auth, access_tcomsat, access_gateway, access_mineral_storeroom, access_minisat) /proc/get_all_centcom_access() return list(access_cent_general, access_cent_thunder, access_cent_specops, access_cent_medical, access_cent_living, access_cent_storage, access_cent_teleporter, access_cent_captain) @@ -273,7 +254,7 @@ if(3) //medbay return list(access_medical, access_genetics, access_morgue, access_chemistry, access_virology, access_surgery, access_cmo) if(4) //research - return list(access_research, access_tox, access_tox_storage, access_genetics, access_robotics, access_xenobiology, access_minisat, access_rd, access_network) + return list(access_research, access_tox, access_tox_storage, access_genetics, access_robotics, access_xenobiology, access_minisat, access_rd) if(5) //engineering and maintenance return list(access_construction, access_maint_tunnels, access_engine, access_engine_equip, access_external_airlocks, access_tech_storage, access_atmospherics, access_tcomsat, access_minisat, access_ce) if(6) //supply @@ -430,8 +411,6 @@ return "AI Satellite" if(access_weapons) return "Weapon Permit" - if(access_network) - return "Network Access" /proc/get_centcom_access_desc(A) switch(A) diff --git a/code/modules/jobs/job_types/assistant.dm b/code/modules/jobs/job_types/assistant.dm index b9cfb34027..db69b445b3 100644 --- a/code/modules/jobs/job_types/assistant.dm +++ b/code/modules/jobs/job_types/assistant.dm @@ -14,7 +14,6 @@ Assistant minimal_access = list() //See /datum/job/assistant/get_access() outfit = /datum/outfit/job/assistant - /datum/job/assistant/get_access() if((config.jobs_have_maint_access & ASSISTANTS_HAVE_MAINT_ACCESS) || !config.jobs_have_minimal_access) //Config has assistant maint access set . = ..() diff --git a/code/modules/jobs/job_types/captain.dm b/code/modules/jobs/job_types/captain.dm index baec218333..dec991a629 100644 --- a/code/modules/jobs/job_types/captain.dm +++ b/code/modules/jobs/job_types/captain.dm @@ -38,7 +38,7 @@ Captain backpack_contents = list(/obj/item/weapon/melee/classic_baton/telescopic=1, /obj/item/station_charter=1) backpack = /obj/item/weapon/storage/backpack/captain - satchel = /obj/item/weapon/storage/backpack/satchel/cap + satchel = /obj/item/weapon/storage/backpack/satchel_cap dufflebag = /obj/item/weapon/storage/backpack/dufflebag/captain /datum/outfit/job/captain/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) @@ -51,7 +51,9 @@ Captain return var/obj/item/weapon/implant/mindshield/L = new/obj/item/weapon/implant/mindshield(H) - L.implant(H, null, 1) + L.imp_in = H + L.implanted = 1 + H.sec_hud_set_implants() minor_announce("Captain [H.real_name] on deck!") @@ -97,7 +99,7 @@ Head of Personnel shoes = /obj/item/clothing/shoes/sneakers/brown head = /obj/item/clothing/head/hopcap backpack_contents = list(/obj/item/weapon/storage/box/ids=1,\ - /obj/item/weapon/melee/classic_baton/telescopic=1, /obj/item/device/modular_computer/tablet/preset/advanced = 1) + /obj/item/weapon/melee/classic_baton/telescopic=1) /datum/outfit/job/hop/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) ..() diff --git a/code/modules/jobs/job_types/cargo_service.dm b/code/modules/jobs/job_types/cargo_service.dm index a559086760..0d709dc69e 100644 --- a/code/modules/jobs/job_types/cargo_service.dm +++ b/code/modules/jobs/job_types/cargo_service.dm @@ -89,7 +89,7 @@ Shaft Miner /obj/item/weapon/mining_voucher=1) backpack = /obj/item/weapon/storage/backpack/explorer - satchel = /obj/item/weapon/storage/backpack/satchel/explorer + satchel = /obj/item/weapon/storage/backpack/satchel_explorer dufflebag = /obj/item/weapon/storage/backpack/dufflebag box = /obj/item/weapon/storage/box/survival_mining @@ -152,7 +152,6 @@ Cook uniform = /obj/item/clothing/under/rank/chef suit = /obj/item/clothing/suit/toggle/chef head = /obj/item/clothing/head/chefhat - backpack_contents = list(/obj/item/weapon/sharpener = 1) /datum/outfit/job/cook/pre_equip(mob/living/carbon/human/H) ..() @@ -200,7 +199,7 @@ Botanist suit_store = /obj/item/device/plant_analyzer backpack = /obj/item/weapon/storage/backpack/botany - satchel = /obj/item/weapon/storage/backpack/satchel/hyd + satchel = /obj/item/weapon/storage/backpack/satchel_hyd /* @@ -229,4 +228,3 @@ Janitor belt = /obj/item/device/pda/janitor ears = /obj/item/device/radio/headset/headset_srv uniform = /obj/item/clothing/under/rank/janitor - backpack_contents = list(/obj/item/device/modular_computer/tablet/preset/advanced=1) diff --git a/code/modules/jobs/job_types/civilian.dm b/code/modules/jobs/job_types/civilian.dm index cdb4046b3f..8cdd1a9fd5 100644 --- a/code/modules/jobs/job_types/civilian.dm +++ b/code/modules/jobs/job_types/civilian.dm @@ -30,8 +30,7 @@ Clown /obj/item/weapon/stamp/clown = 1, /obj/item/weapon/reagent_containers/spray/waterflower = 1, /obj/item/weapon/reagent_containers/food/snacks/grown/banana = 1, - /obj/item/device/megaphone/clown = 1, - /obj/item/weapon/reagent_containers/food/drinks/soda_cans/canned_laughter = 1 + /obj/item/device/megaphone/clown = 1 ) backpack = /obj/item/weapon/storage/backpack/clown @@ -53,7 +52,8 @@ Clown return var/obj/item/weapon/implant/sad_trombone/S = new/obj/item/weapon/implant/sad_trombone(H) - S.implant(H, null, 1) + S.imp_in = H + S.implanted = 1 H.dna.add_mutation(CLOWNMUT) H.rename_self("clown") @@ -164,8 +164,6 @@ Lawyer shoes = /obj/item/clothing/shoes/laceup l_hand = /obj/item/weapon/storage/briefcase/lawyer l_pocket = /obj/item/device/laser_pointer - r_pocket = /obj/item/clothing/tie/lawyers_badge - /datum/outfit/job/lawyer/pre_equip(mob/living/carbon/human/H, visualsOnly = FALSE) ..() diff --git a/code/modules/jobs/job_types/civilian_chaplain.dm b/code/modules/jobs/job_types/civilian_chaplain.dm index e3ca82c946..0d64e39f67 100644 --- a/code/modules/jobs/job_types/civilian_chaplain.dm +++ b/code/modules/jobs/job_types/civilian_chaplain.dm @@ -33,22 +33,8 @@ Chaplain if(visualsOnly) return - - H.mind.isholy = TRUE var/obj/item/weapon/storage/book/bible/B = new /obj/item/weapon/storage/book/bible/booze(H) - - if(SSreligion.Bible_deity_name) - B.deity_name = SSreligion.Bible_deity_name - B.name = SSreligion.Bible_name - B.icon_state = SSreligion.Bible_icon_state - B.item_state = SSreligion.Bible_item_state - H << "There is already an established religion onboard the station. You are an acolyte of [SSreligion.Bible_deity_name]. Defer to the Chaplain." - H.equip_to_slot_or_del(B, slot_in_backpack) - var/obj/item/weapon/nullrod/N = new(H) - H.equip_to_slot_or_del(N, slot_in_backpack) - return - var/new_religion = "Christianity" if(H.client && H.client.prefs.custom_names["religion"]) new_religion = H.client.prefs.custom_names["religion"] @@ -80,13 +66,14 @@ Chaplain else B.name = "The Holy Book of [new_religion]" feedback_set_details("religion_name","[new_religion]") - SSreligion.Bible_name = B.name + ticker.Bible_name = B.name var/new_deity = "Space Jesus" if(H.client && H.client.prefs.custom_names["deity"]) new_deity = H.client.prefs.custom_names["deity"] B.deity_name = new_deity - SSreligion.Bible_deity_name = B.deity_name + if(ticker) + ticker.Bible_deity_name = B.deity_name feedback_set_details("religion_deity","[new_deity]") - H.equip_to_slot_or_del(B, slot_in_backpack) + H.equip_to_slot_or_del(B, slot_in_backpack) \ No newline at end of file diff --git a/code/modules/jobs/job_types/engineering.dm b/code/modules/jobs/job_types/engineering.dm index 1b7ac5db43..7114a8b13d 100644 --- a/code/modules/jobs/job_types/engineering.dm +++ b/code/modules/jobs/job_types/engineering.dm @@ -36,10 +36,10 @@ Chief Engineer shoes = /obj/item/clothing/shoes/sneakers/brown head = /obj/item/clothing/head/hardhat/white gloves = /obj/item/clothing/gloves/color/black/ce - backpack_contents = list(/obj/item/weapon/melee/classic_baton/telescopic=1,/obj/item/device/modular_computer/tablet/preset/advanced=1) + backpack_contents = list(/obj/item/weapon/melee/classic_baton/telescopic=1) backpack = /obj/item/weapon/storage/backpack/industrial - satchel = /obj/item/weapon/storage/backpack/satchel/eng + satchel = /obj/item/weapon/storage/backpack/satchel_eng dufflebag = /obj/item/weapon/storage/backpack/dufflebag/engineering box = /obj/item/weapon/storage/box/engineer pda_slot = slot_l_store @@ -85,11 +85,10 @@ Station Engineer r_pocket = /obj/item/device/t_scanner backpack = /obj/item/weapon/storage/backpack/industrial - satchel = /obj/item/weapon/storage/backpack/satchel/eng + satchel = /obj/item/weapon/storage/backpack/satchel_eng dufflebag = /obj/item/weapon/storage/backpack/dufflebag/engineering box = /obj/item/weapon/storage/box/engineer pda_slot = slot_l_store - backpack_contents = list(/obj/item/device/modular_computer/tablet/preset/advanced=1) /* Atmospheric Technician @@ -121,8 +120,7 @@ Atmospheric Technician r_pocket = /obj/item/device/analyzer backpack = /obj/item/weapon/storage/backpack/industrial - satchel = /obj/item/weapon/storage/backpack/satchel/eng + satchel = /obj/item/weapon/storage/backpack/satchel_eng dufflebag = /obj/item/weapon/storage/backpack/dufflebag/engineering box = /obj/item/weapon/storage/box/engineer - pda_slot = slot_l_store - backpack_contents = list(/obj/item/device/modular_computer/tablet/preset/advanced=1) + pda_slot = slot_l_store \ No newline at end of file diff --git a/code/modules/jobs/job_types/job.dm b/code/modules/jobs/job_types/job.dm index 0106d39243..5ef398a612 100644 --- a/code/modules/jobs/job_types/job.dm +++ b/code/modules/jobs/job_types/job.dm @@ -72,8 +72,6 @@ H.wear_suit.add_fingerprint(H,1) if(H.wear_mask) H.wear_mask.add_fingerprint(H,1) - if(H.wear_neck) - H.wear_neck.add_fingerprint(H,1) if(H.head) H.head.add_fingerprint(H,1) if(H.shoes) @@ -143,7 +141,7 @@ shoes = /obj/item/clothing/shoes/sneakers/black var/backpack = /obj/item/weapon/storage/backpack - var/satchel = /obj/item/weapon/storage/backpack/satchel + var/satchel = /obj/item/weapon/storage/backpack/satchel_norm var/dufflebag = /obj/item/weapon/storage/backpack/dufflebag var/box = /obj/item/weapon/storage/box/survival @@ -154,11 +152,11 @@ if(GBACKPACK) back = /obj/item/weapon/storage/backpack //Grey backpack if(GSATCHEL) - back = /obj/item/weapon/storage/backpack/satchel //Grey satchel + back = /obj/item/weapon/storage/backpack/satchel_norm //Grey satchel if(GDUFFLEBAG) back = /obj/item/weapon/storage/backpack/dufflebag //Grey Dufflebag if(LSATCHEL) - back = /obj/item/weapon/storage/backpack/satchel/leather //Leather Satchel + back = /obj/item/weapon/storage/backpack/satchel //Leather Satchel if(DSATCHEL) back = satchel //Department satchel if(DDUFFLEBAG) diff --git a/code/modules/jobs/job_types/medical.dm b/code/modules/jobs/job_types/medical.dm index 8b0894da53..964a5495db 100644 --- a/code/modules/jobs/job_types/medical.dm +++ b/code/modules/jobs/job_types/medical.dm @@ -37,7 +37,7 @@ Chief Medical Officer backpack_contents = list(/obj/item/weapon/melee/classic_baton/telescopic=1) backpack = /obj/item/weapon/storage/backpack/medic - satchel = /obj/item/weapon/storage/backpack/satchel/med + satchel = /obj/item/weapon/storage/backpack/satchel_med dufflebag = /obj/item/weapon/storage/backpack/dufflebag/med /datum/outfit/job/cmo/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) @@ -79,7 +79,7 @@ Medical Doctor suit_store = /obj/item/device/flashlight/pen backpack = /obj/item/weapon/storage/backpack/medic - satchel = /obj/item/weapon/storage/backpack/satchel/med + satchel = /obj/item/weapon/storage/backpack/satchel_med dufflebag = /obj/item/weapon/storage/backpack/dufflebag/med /* @@ -112,7 +112,7 @@ Chemist suit = /obj/item/clothing/suit/toggle/labcoat/chemist backpack = /obj/item/weapon/storage/backpack/chemistry - satchel = /obj/item/weapon/storage/backpack/satchel/chem + satchel = /obj/item/weapon/storage/backpack/satchel_chem dufflebag = /obj/item/weapon/storage/backpack/dufflebag/med /* @@ -145,7 +145,7 @@ Geneticist suit_store = /obj/item/device/flashlight/pen backpack = /obj/item/weapon/storage/backpack/genetics - satchel = /obj/item/weapon/storage/backpack/satchel/gen + satchel = /obj/item/weapon/storage/backpack/satchel_gen dufflebag = /obj/item/weapon/storage/backpack/dufflebag/med /* @@ -179,5 +179,5 @@ Virologist suit_store = /obj/item/device/flashlight/pen backpack = /obj/item/weapon/storage/backpack/virology - satchel = /obj/item/weapon/storage/backpack/satchel/vir + satchel = /obj/item/weapon/storage/backpack/satchel_vir dufflebag = /obj/item/weapon/storage/backpack/dufflebag/med diff --git a/code/modules/jobs/job_types/science.dm b/code/modules/jobs/job_types/science.dm index 91b43d791b..1b6f4942dd 100644 --- a/code/modules/jobs/job_types/science.dm +++ b/code/modules/jobs/job_types/science.dm @@ -20,12 +20,12 @@ Research Director access_tox_storage, access_teleporter, access_sec_doors, access_research, access_robotics, access_xenobiology, access_ai_upload, access_RC_announce, access_keycard_auth, access_gateway, access_mineral_storeroom, - access_tech_storage, access_minisat, access_maint_tunnels, access_network) + access_tech_storage, access_minisat, access_maint_tunnels) minimal_access = list(access_rd, access_heads, access_tox, access_genetics, access_morgue, access_tox_storage, access_teleporter, access_sec_doors, access_research, access_robotics, access_xenobiology, access_ai_upload, access_RC_announce, access_keycard_auth, access_gateway, access_mineral_storeroom, - access_tech_storage, access_minisat, access_maint_tunnels, access_network) + access_tech_storage, access_minisat, access_maint_tunnels) /datum/outfit/job/rd name = "Research Director" @@ -38,10 +38,10 @@ Research Director suit = /obj/item/clothing/suit/toggle/labcoat l_hand = /obj/item/weapon/clipboard l_pocket = /obj/item/device/laser_pointer - backpack_contents = list(/obj/item/weapon/melee/classic_baton/telescopic=1,/obj/item/device/modular_computer/tablet/preset/advanced=1) + backpack_contents = list(/obj/item/weapon/melee/classic_baton/telescopic=1) backpack = /obj/item/weapon/storage/backpack/science - satchel = /obj/item/weapon/storage/backpack/satchel/tox + satchel = /obj/item/weapon/storage/backpack/satchel_tox /datum/outfit/job/rd/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) ..() @@ -80,7 +80,7 @@ Scientist suit = /obj/item/clothing/suit/toggle/labcoat/science backpack = /obj/item/weapon/storage/backpack/science - satchel = /obj/item/weapon/storage/backpack/satchel/tox + satchel = /obj/item/weapon/storage/backpack/satchel_tox /* Roboticist @@ -111,6 +111,6 @@ Roboticist suit = /obj/item/clothing/suit/toggle/labcoat backpack = /obj/item/weapon/storage/backpack/science - satchel = /obj/item/weapon/storage/backpack/satchel/tox + satchel = /obj/item/weapon/storage/backpack/satchel_tox pda_slot = slot_l_store diff --git a/code/modules/jobs/job_types/security.dm b/code/modules/jobs/job_types/security.dm index 96779d1976..146d3ec9d2 100644 --- a/code/modules/jobs/job_types/security.dm +++ b/code/modules/jobs/job_types/security.dm @@ -43,13 +43,13 @@ Head of Security gloves = /obj/item/clothing/gloves/color/black/hos head = /obj/item/clothing/head/HoS/beret glasses = /obj/item/clothing/glasses/hud/security/sunglasses - suit_store = /obj/item/weapon/gun/energy/e_gun + suit_store = /obj/item/weapon/gun/energy/gun r_pocket = /obj/item/device/assembly/flash/handheld l_pocket = /obj/item/weapon/restraints/handcuffs backpack_contents = list(/obj/item/weapon/melee/baton/loaded=1) backpack = /obj/item/weapon/storage/backpack/security - satchel = /obj/item/weapon/storage/backpack/satchel/sec + satchel = /obj/item/weapon/storage/backpack/satchel_sec dufflebag = /obj/item/weapon/storage/backpack/dufflebag/sec box = /obj/item/weapon/storage/box/security @@ -60,7 +60,9 @@ Head of Security return var/obj/item/weapon/implant/mindshield/L = new/obj/item/weapon/implant/mindshield(H) - L.implant(H, null, 1) + L.imp_in = H + L.implanted = 1 + H.sec_hud_set_implants() announce_head(H, list("Security")) //tell underlings (security radio) they have a head /* @@ -101,11 +103,11 @@ Warden glasses = /obj/item/clothing/glasses/hud/security/sunglasses r_pocket = /obj/item/device/assembly/flash/handheld l_pocket = /obj/item/weapon/restraints/handcuffs - suit_store = /obj/item/weapon/gun/energy/e_gun/advtaser + suit_store = /obj/item/weapon/gun/energy/gun/advtaser backpack_contents = list(/obj/item/weapon/melee/baton/loaded=1) backpack = /obj/item/weapon/storage/backpack/security - satchel = /obj/item/weapon/storage/backpack/satchel/sec + satchel = /obj/item/weapon/storage/backpack/satchel_sec dufflebag = /obj/item/weapon/storage/backpack/dufflebag/sec box = /obj/item/weapon/storage/box/security @@ -117,7 +119,9 @@ Warden return var/obj/item/weapon/implant/mindshield/L = new/obj/item/weapon/implant/mindshield(H) - L.implant(H, null, 1) + L.imp_in = H + L.implanted = 1 + H.sec_hud_set_implants() /* Detective @@ -153,7 +157,8 @@ Detective r_pocket = /obj/item/weapon/lighter backpack_contents = list(/obj/item/weapon/storage/box/evidence=1,\ /obj/item/device/detective_scanner=1,\ - /obj/item/weapon/melee/classic_baton=1) + /obj/item/weapon/melee/classic_baton=1,\ + /obj/item/weapon/reagent_containers/food/drinks/flask/det) mask = /obj/item/clothing/mask/cigarette /datum/outfit/job/detective/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) @@ -165,7 +170,9 @@ Detective return var/obj/item/weapon/implant/mindshield/L = new/obj/item/weapon/implant/mindshield(H) - L.implant(H, null, 1) + L.imp_in = H + L.implanted = 1 + H.sec_hud_set_implants() /* Security Officer @@ -206,11 +213,11 @@ var/list/sec_departments = list("engineering", "supply", "medical", "science") shoes = /obj/item/clothing/shoes/jackboots l_pocket = /obj/item/weapon/restraints/handcuffs r_pocket = /obj/item/device/assembly/flash/handheld - suit_store = /obj/item/weapon/gun/energy/e_gun/advtaser + suit_store = /obj/item/weapon/gun/energy/gun/advtaser backpack_contents = list(/obj/item/weapon/melee/baton/loaded=1) backpack = /obj/item/weapon/storage/backpack/security - satchel = /obj/item/weapon/storage/backpack/satchel/sec + satchel = /obj/item/weapon/storage/backpack/satchel_sec dufflebag = /obj/item/weapon/storage/backpack/dufflebag/sec box = /obj/item/weapon/storage/box/security @@ -264,7 +271,9 @@ var/list/sec_departments = list("engineering", "supply", "medical", "science") return var/obj/item/weapon/implant/mindshield/L = new/obj/item/weapon/implant/mindshield(H) - L.implant(H, null, 1) + L.imp_in = H + L.implanted = 1 + H.sec_hud_set_implants() var/obj/item/weapon/card/id/W = H.wear_id W.access |= dep_access diff --git a/code/modules/library/lib_codex_gigas.dm b/code/modules/library/lib_codex_gigas.dm index 7bce96f649..03f62d84d2 100644 --- a/code/modules/library/lib_codex_gigas.dm +++ b/code/modules/library/lib_codex_gigas.dm @@ -3,7 +3,7 @@ icon_state ="demonomicon" throw_speed = 1 throw_range = 10 - resistance_flags = LAVA_PROOF | FIRE_PROOF | ACID_PROOF + burn_state = LAVA_PROOF author = "Forces beyond your comprehension" unique = 1 title = "The codex gigas" @@ -15,7 +15,6 @@ /obj/item/weapon/book/codex_gigas/attack_self(mob/user) if(is_blind(user)) - user << "As you are trying to read, you suddenly feel very stupid." return if(ismonkey(user)) user << "You skim through the book but can't comprehend any of it." diff --git a/code/modules/library/lib_items.dm b/code/modules/library/lib_items.dm index 1ed1f8f625..a4c546d945 100644 --- a/code/modules/library/lib_items.dm +++ b/code/modules/library/lib_items.dm @@ -17,10 +17,8 @@ anchored = 0 density = 1 opacity = 0 - resistance_flags = FLAMMABLE - obj_integrity = 200 - max_integrity = 200 - armor = list(melee = 0, bullet = 0, laser = 0, energy = 0, bomb = 0, bio = 0, rad = 0, fire = 50, acid = 0) + burn_state = FLAMMABLE + burntime = 30 var/state = 0 var/list/allowed_books = list(/obj/item/weapon/book, /obj/item/weapon/spellbook, /obj/item/weapon/storage/book) //Things allowed in the bookcase @@ -39,16 +37,17 @@ switch(state) if(0) if(istype(I, /obj/item/weapon/wrench)) - playsound(loc, I.usesound, 100, 1) - if(do_after(user, 20*I.toolspeed, target = src)) + playsound(loc, 'sound/items/Ratchet.ogg', 100, 1) + if(do_after(user, 20/I.toolspeed, target = src)) user << "You wrench the frame into place." anchored = 1 state = 1 if(istype(I, /obj/item/weapon/crowbar)) - playsound(loc, I.usesound, 100, 1) - if(do_after(user, 20*I.toolspeed, target = src)) + playsound(loc, 'sound/items/Crowbar.ogg', 100, 1) + if(do_after(user, 20/I.toolspeed, target = src)) user << "You pry the frame apart." - deconstruct(TRUE) + new /obj/item/stack/sheet/mineral/wood(loc, 4) + qdel(src) if(1) if(istype(I, /obj/item/stack/sheet/mineral/wood)) @@ -59,7 +58,7 @@ state = 2 icon_state = "book-0" if(istype(I, /obj/item/weapon/wrench)) - playsound(loc, I.usesound, 100, 1) + playsound(loc, 'sound/items/Ratchet.ogg', 100, 1) user << "You unwrench the frame." anchored = 0 state = 0 @@ -87,7 +86,7 @@ if(contents.len) user << "You need to remove the books first!" else - playsound(loc, I.usesound, 100, 1) + playsound(loc, 'sound/items/Crowbar.ogg', 100, 1) user << "You pry the shelf out." new /obj/item/stack/sheet/mineral/wood(loc, 2) state = 1 @@ -103,19 +102,20 @@ if(!usr.canmove || usr.stat || usr.restrained() || !in_range(loc, usr)) return if(ishuman(user)) - if(!user.get_active_held_item()) + if(!user.get_active_hand()) user.put_in_hands(choice) else choice.loc = get_turf(src) update_icon() -/obj/structure/bookcase/deconstruct(disassembled = TRUE) - new /obj/item/stack/sheet/mineral/wood(loc, 4) - for(var/obj/item/weapon/book/B in contents) - B.forceMove(get_turf(src)) - qdel(src) - +/obj/structure/bookcase/ex_act(severity, target) + ..() + if(!qdeleted(src)) + for(var/obj/item/weapon/book/b in contents) + b.loc = (get_turf(src)) + if(prob(50)) + qdel(src) /obj/structure/bookcase/update_icon() if(contents.len < 5) @@ -165,9 +165,9 @@ icon_state ="book" throw_speed = 1 throw_range = 5 - w_class = WEIGHT_CLASS_NORMAL //upped to three because books are, y'know, pretty big. (and you could hide them inside eachother recursively forever) + w_class = 3 //upped to three because books are, y'know, pretty big. (and you could hide them inside eachother recursively forever) attack_verb = list("bashed", "whacked", "educated") - resistance_flags = FLAMMABLE + burn_state = FLAMMABLE var/dat //Actual page content var/due_date = 0 //Game time in 1/10th seconds var/author //Who wrote the thing, can be changed by pen or PC. It is not automatically assigned @@ -177,7 +177,6 @@ /obj/item/weapon/book/attack_self(mob/user) if(is_blind(user)) - user << "As you are trying to read, you suddenly feel very stupid!" return if(ismonkey(user)) user << "You skim through the book but can't comprehend any of it." @@ -193,7 +192,6 @@ /obj/item/weapon/book/attackby(obj/item/I, mob/user, params) if(istype(I, /obj/item/weapon/pen)) if(is_blind(user)) - user << " As you are trying to write on the book, you suddenly feel very stupid!" return if(unique) user << "These pages don't seem to take the ink well! Looks like you can't modify it." @@ -266,7 +264,7 @@ B.name = src.name B.title = src.title B.icon_state = src.icon_state - if(user.is_holding(src)) + if(user.l_hand == src || user.r_hand == src) qdel(src) user.put_in_hands(B) return @@ -288,7 +286,7 @@ icon_state ="scanner" throw_speed = 3 throw_range = 5 - w_class = WEIGHT_CLASS_TINY + w_class = 1 var/obj/machinery/computer/libraryconsole/bookmanagement/computer //Associated computer - Modes 1 to 3 use this var/obj/item/weapon/book/book //Currently scanned book var/mode = 0 //0 - Scan only, 1 - Scan and Set Buffer, 2 - Scan and Attempt to Check In, 3 - Scan and Attempt to Add to Inventory diff --git a/code/modules/library/lib_machines.dm b/code/modules/library/lib_machines.dm index 4eba8b3ba0..17f4e43961 100644 --- a/code/modules/library/lib_machines.dm +++ b/code/modules/library/lib_machines.dm @@ -337,11 +337,11 @@ var/global/list/datum/cachedbook/cachedbooks // List of our cached book datums if(!bibledelay) var/obj/item/weapon/storage/book/bible/B = new /obj/item/weapon/storage/book/bible(src.loc) - if(SSreligion.Bible_icon_state && SSreligion.Bible_item_state) - B.icon_state = SSreligion.Bible_icon_state - B.item_state = SSreligion.Bible_item_state - B.name = SSreligion.Bible_name - B.deity_name = SSreligion.Bible_deity_name + if(ticker && ( ticker.Bible_icon_state && ticker.Bible_item_state) ) + B.icon_state = ticker.Bible_icon_state + B.item_state = ticker.Bible_item_state + B.name = ticker.Bible_name + B.deity_name = ticker.Bible_deity_name bibledelay = 1 spawn(60) @@ -374,13 +374,11 @@ var/global/list/datum/cachedbook/cachedbooks // List of our cached book datums b.duedate = world.time + (checkoutperiod * 600) checkouts.Add(b) if(href_list["checkin"]) - var/datum/borrowbook/b = locate(href_list["checkin"]) in checkouts - if(b && istype(b)) - checkouts.Remove(b) + var/datum/borrowbook/b = locate(href_list["checkin"]) + checkouts.Remove(b) if(href_list["delbook"]) - var/obj/item/weapon/book/b = locate(href_list["delbook"]) in inventory - if(b && istype(b)) - inventory.Remove(b) + var/obj/item/weapon/book/b = locate(href_list["delbook"]) + inventory.Remove(b) if(href_list["setauthor"]) var/newauthor = copytext(sanitize(input("Enter the author's name: ") as text|null),1,MAX_MESSAGE_LEN) if(newauthor) @@ -410,14 +408,10 @@ var/global/list/datum/cachedbook/cachedbooks // List of our cached book datums log_game("[usr.name]/[usr.key] has uploaded the book titled [scanner.cache.name], [length(scanner.cache.dat)] signs") alert("Upload Complete. Uploaded title will be unavailable for printing for a short period") if(href_list["orderbyid"]) - if(bibledelay) - say("Printer unavailable. Please allow a short time before attempting to print.") - else - var/orderid = input("Enter your order:") as num|null - if(orderid) - if(isnum(orderid) && IsInteger(orderid)) - href_list["targetid"] = num2text(orderid) - + var/orderid = input("Enter your order:") as num|null + if(orderid) + if(isnum(orderid) && IsInteger(orderid)) + href_list["targetid"] = orderid if(href_list["targetid"]) var/sqlid = sanitizeSQL(href_list["targetid"]) establish_db_connection() @@ -436,17 +430,17 @@ var/global/list/datum/cachedbook/cachedbooks // List of our cached book datums var/author = query.item[2] var/title = query.item[3] var/content = query.item[4] - var/obj/item/weapon/book/B = new(get_turf(src)) + var/obj/item/weapon/book/B = new(src.loc) B.name = "Book: [title]" B.title = title B.author = author B.dat = content B.icon_state = "book[rand(1,8)]" - visible_message("[src]'s printer hums as it produces a completely bound book. How did it do that?") + src.visible_message("[src]'s printer hums as it produces a completely bound book. How did it do that?") break - - add_fingerprint(usr) - updateUsrDialog() + src.add_fingerprint(usr) + src.updateUsrDialog() + return /* * Library Scanner @@ -479,6 +473,8 @@ var/global/list/datum/cachedbook/cachedbooks // List of our cached book datums dat += " \[Clear Memory\]

    \[Remove Book\]" else dat += "
    " + //user << browse(dat, "window=scanner") + //onclose(user, "scanner") var/datum/browser/popup = new(user, "scanner", name, 600, 400) popup.set_content(dat) popup.set_title_image(user.browse_rsc_icon(src.icon, src.icon_state)) @@ -546,4 +542,4 @@ var/global/list/datum/cachedbook/cachedbooks // List of our cached book datums B.icon_state = "book[rand(1,7)]" qdel(P) else - P.loc = loc + P.loc = loc \ No newline at end of file diff --git a/code/modules/lighting/lighting_system.dm b/code/modules/lighting/lighting_system.dm deleted file mode 100644 index bbb2f28284..0000000000 --- a/code/modules/lighting/lighting_system.dm +++ /dev/null @@ -1,427 +0,0 @@ -/* - This is /tg/'s 'newer' lighting system. It's basically a combination of Forum_Account's and ShadowDarke's - respective lighting libraries heavily modified by Carnwennan for /tg/station with further edits by - MrPerson. Credits, where due, to them. - - Originally, like all other lighting libraries on BYOND, we used areas to render different hard-coded light levels. - The idea was that this was cheaper than using objects. Well as it turns out, the cost of the system is primarily from the - massive loops the system has to run, not from the areas or objects actually doing any work. Thus the newer system uses objects - so we can have more lighting states and smooth transitions between them. - - This is a queueing system. Everytime we call a change to opacity or luminosity throwgh SetOpacity() or SetLuminosity(), - we are simply updating variables and scheduling certain lights/turfs for an update. Actual updates are handled - periodically by the SSlighting subsystem. Specifically, it runs check() on every light datum that ran changed(). - Then it runs redraw_lighting() on every turf that ran update_lumcount(). - - Unlike our older system, there are hardcoded maximum luminosities (different for certain atoms). - This is to cap the cost of creating lighting effects. - (without this, an atom with luminosity of 20 would have to update 41^2 turfs!) :s - - Each light remembers the effect it casts on each turf. It reduces cost of removing lighting effects by a lot! - - Known Issues/TODO: - Shuttles still do not have support for dynamic lighting (I hope to fix this at some point) -probably trivial now - No directional lighting support. (prototype looked ugly) - Allow lights to be weaker than 'cap' radius - Colored lights -*/ - -/datum/light_source - var/atom/owner - var/radius = 0 - var/luminosity = 0 - var/cap = 0 - var/changed = 0 - var/mode = LIGHTING_REGULAR - var/list/effect = list() - var/__x = 0 //x coordinate at last update - var/__y = 0 //y coordinate at last update - -/datum/light_source/New(atom/A) - if(!istype(A)) - CRASH("The first argument to the light object's constructor must be the atom that is the light source. Expected atom, received '[A]' instead.") - ..() - owner = A - UpdateLuminosity(A.luminosity) - -/datum/light_source/Destroy() - if(owner && owner.light == src) - remove_effect() - owner.light = null - owner.luminosity = 0 - owner = null - if(changed) - SSlighting.changed_lights -= src - return ..() - -/datum/light_source/proc/UpdateLuminosity(new_luminosity, new_cap) - if(new_luminosity < 0) - new_luminosity = 0 - - if(luminosity == new_luminosity && (new_cap == null || cap == new_cap)) - return - - radius = max(LIGHTING_MIN_RADIUS, new_luminosity) - luminosity = new_luminosity - if (new_cap != null) - cap = new_cap - - changed() - - -//Check a light to see if its effect needs reprocessing. If it does, remove any old effect and create a new one -/datum/light_source/proc/check() - if(!owner) - remove_effect() - return 0 - - if(changed) - changed = 0 - remove_effect() - return add_effect() - - return 1 - -//Tell the lighting subsystem to check() next fire -/datum/light_source/proc/changed() - if(owner) - __x = owner.x - __y = owner.y - if(!changed) - changed = 1 - SSlighting.changed_lights |= src - -//Remove current effect -/datum/light_source/proc/remove_effect(). - for(var/turf/T in effect) - LAZYREMOVE(T.affecting_lights, src) - T.update_lumcount(-effect[T], mode) - - effect.Cut() - -//Apply a new effect. -/datum/light_source/proc/add_effect() - // only do this if the light is turned on and is on the map - if(!owner || !owner.loc) - return 0 - var/range = owner.get_light_range(radius) - if(range <= 0 || luminosity <= 0) - owner.luminosity = 0 - return 0 - - effect = list() - var/turf/To = get_turf(owner) - - - for(var/atom/movable/AM in To) - if(AM == owner) - continue - if(AM.opacity) - range = 1 - break - - owner.luminosity = range - var/center_strength = 0 - if (cap <= 0) - center_strength = LIGHTING_CAP/LIGHTING_LUM_FOR_FULL_BRIGHT*(luminosity) - else - center_strength = cap - - for(var/turf/T in view(range+1, To)) - -#ifdef LIGHTING_CIRCULAR - var/distance = cheap_hypotenuse(T.x, T.y, __x, __y) -#else - var/distance = max(abs(T,x - __x), abs(T.y - __y)) -#endif - - var/delta_lumcount = Clamp(center_strength * (range - distance) / range, 0, LIGHTING_CAP) - - if(delta_lumcount > 0) - effect[T] = delta_lumcount - T.update_lumcount(delta_lumcount, mode) - - LAZYINITLIST(T.affecting_lights) - T.affecting_lights |= src - - return 1 - -/atom - var/datum/light_source/light - -//Objects with opacity will trigger nearby lights to update at next SSlighting fire -/atom/movable/Destroy() - qdel(light) - if(opacity && isturf(loc)) - loc.UpdateAffectingLights() - return ..() - -//Objects with opacity will trigger nearby lights of the old location to update at next SSlighting fire -/atom/movable/Moved(atom/OldLoc, Dir) - if(opacity) - if (isturf(OldLoc)) - OldLoc.UpdateAffectingLights() - if (isturf(loc)) - loc.UpdateAffectingLights() - else - if(light) - light.changed() - return ..() - -//Sets our luminosity. -//If we have no light it will create one. -//If we are setting luminosity to 0 the light will be cleaned up by the controller and garbage collected once all its -//queues are complete. -//if we have a light already it is merely updated, rather than making a new one. -//The second arg allows you to scale the light cap for calculating falloff. - -/atom/proc/SetLuminosity(new_luminosity, new_cap) - if (!light) - if (new_luminosity <= 0) - return - light = new(src) - - light.UpdateLuminosity(new_luminosity, new_cap) - -/atom/proc/AddLuminosity(delta_luminosity) - if(light) - SetLuminosity(light.luminosity + delta_luminosity) - else - SetLuminosity(delta_luminosity) - -/area/SetLuminosity(new_luminosity) //we don't want dynamic lighting for areas - luminosity = !!new_luminosity - - -//change our opacity (defaults to toggle), and then update all lights that affect us. -/atom/proc/SetOpacity(new_opacity) - if(new_opacity == null) - new_opacity = !opacity //default = toggle opacity - else if(opacity == new_opacity) - return 0 //opacity hasn't changed! don't bother doing anything - opacity = new_opacity //update opacity, the below procs now call light updates. - UpdateAffectingLights() - return 1 - -/atom/movable/light - icon = LIGHTING_ICON - icon_state = LIGHTING_ICON_STATE - layer = LIGHTING_LAYER - plane = LIGHTING_PLANE - mouse_opacity = 0 - blend_mode = BLEND_OVERLAY - invisibility = INVISIBILITY_LIGHTING - color = "#000" - luminosity = 0 - infra_luminosity = 1 - anchored = 1 - -/atom/movable/light/Destroy(force) - if(!force) - return QDEL_HINT_LETMELIVE - var/turf/T = loc - . = ..() - if (T.lighting_object == src) - T.lighting_object = null - -/atom/movable/light/New() - if (!isturf(loc)) - PutOut() - throw EXCEPTION("Invalid light placement: loc must be a turf") - var/turf/T = loc - - if (T.lighting_object && T.lighting_object != src) - PutOut() - throw EXCEPTION("BUG: /atom/movable/light created on a turf that already has one") - T.lighting_object = src - -/atom/movable/light/proc/PutOut() - alpha = 0 - qdel(src, force = TRUE) - -/atom/movable/light/Move() - return 0 - -/turf - var/lighting_lumcount = 0 - var/lighting_changed = 0 - var/atom/movable/light/lighting_object //Will be null for space turfs and anything in a static lighting area - var/list/affecting_lights //all /light_source affecting this turf, lazy initialized - var/starlight = 0 //Amount of starlight hitting this turf - -/turf/ChangeTurf(path) - if(!path || (!use_preloader && path == type)) //Sucks this is here but it would cause problems otherwise. - return ..() - - for(var/obj/effect/decal/cleanable/decal in src.contents) - qdel(decal) - - if(light) - qdel(light) - - var/old_lumcount = lighting_lumcount - initial(lighting_lumcount) - var/oldbaseturf = baseturf - var/old_starlight = starlight - - var/list/our_lights //reset affecting_lights if needed - if(opacity != initial(path:opacity) && old_lumcount) - UpdateAffectingLights() - - if(affecting_lights) - our_lights = affecting_lights.Copy() - - . = ..() //At this point the turf has changed - - affecting_lights = our_lights - - lighting_changed = 1 //Don't add ourself to SSlighting.changed_turfs - update_lumcount(old_lumcount, LIGHTING_REGULAR) - starlight = old_starlight - baseturf = oldbaseturf - lighting_object = locate() in src - - init_lighting() - - for(var/turf/open/space/S in RANGE_TURFS(1,src)) //RANGE_TURFS is in code\__HELPERS\game.dm - S.update_starlight() - -/turf/proc/update_lumcount(amount, mode) - switch(mode) - if(LIGHTING_REGULAR) - lighting_lumcount += amount - if(LIGHTING_STARLIGHT) - if(amount > starlight) - lighting_lumcount -= starlight - starlight = amount - lighting_lumcount += amount - else if(amount && amount == -starlight) - lighting_lumcount -= starlight - starlight = 0 - for(var/thing in affecting_lights) - var/datum/light_source/LS = thing - if(LS.mode == LIGHTING_STARLIGHT) - var/starlight_test = LS.effect[src] - if(starlight < starlight_test) - starlight = starlight_test - lighting_lumcount += starlight - - if(!lighting_changed) - SSlighting.changed_turfs += src - lighting_changed = 1 - -/turf/open/space/update_lumcount(amount, mode) //Keep track in case the turf becomes a floor at some point, but don't process. - lighting_changed = TRUE - ..() - lighting_changed = FALSE - -/turf/proc/init_lighting() - var/area/A = loc - if(!IS_DYNAMIC_LIGHTING(A)) - if(lighting_changed) - lighting_changed = 0 - if(lighting_object) - lighting_object.PutOut() - else - if(!lighting_object) - lighting_object = new (src) - redraw_lighting(1) - for(var/turf/open/space/T in RANGE_TURFS(1,src)) - T.update_starlight() - - -/turf/open/space/init_lighting() - if(lighting_changed) - lighting_changed = 0 - if(lighting_object) - lighting_object.PutOut() - -/turf/proc/redraw_lighting(instantly = 0) - if(lighting_object) - var/newalpha - if(lighting_lumcount <= 0) - newalpha = 255 - else - if(lighting_lumcount < LIGHTING_CAP) - var/num = Clamp(lighting_lumcount * LIGHTING_CAP_FRAC, 0, 255) - newalpha = 255-num - else //if(lighting_lumcount >= LIGHTING_CAP) - newalpha = 0 - if(newalpha >= LIGHTING_DARKEST_VISIBLE_ALPHA) - newalpha = 255 - if(lighting_object.alpha != newalpha) - if(instantly) - lighting_object.alpha = newalpha - else - animate(lighting_object, alpha = newalpha, time = LIGHTING_TIME) - if(newalpha >= LIGHTING_DARKEST_VISIBLE_ALPHA) - luminosity = 0 - lighting_object.luminosity = 0 - else - luminosity = 1 - lighting_object.luminosity = 1 - - lighting_changed = 0 - -/turf/proc/get_lumcount() - . = LIGHTING_CAP - var/area/A = src.loc - if(IS_DYNAMIC_LIGHTING(A)) - . = src.lighting_lumcount - -/area - var/lighting_use_dynamic = DYNAMIC_LIGHTING_ENABLED //Turn this flag off to make the area fullbright - -/area/New() - . = ..() - if(lighting_use_dynamic != DYNAMIC_LIGHTING_ENABLED) - luminosity = 1 - -/area/proc/SetDynamicLighting() - if (lighting_use_dynamic == DYNAMIC_LIGHTING_DISABLED) - lighting_use_dynamic = DYNAMIC_LIGHTING_ENABLED - luminosity = 0 - for(var/turf/T in src.contents) - T.init_lighting() - T.update_lumcount(0) - -//set the changed status of all lights which could have possibly lit this atom. -//We don't need to worry about lights which lit us but moved away, since they will have change status set already -//This proc can cause lots of lights to be updated. :( -/atom/proc/UpdateAffectingLights() - -/atom/movable/UpdateAffectingLights() - if(isturf(loc)) - loc.UpdateAffectingLights() - -/turf/UpdateAffectingLights() - if(affecting_lights) - for(var/datum/light_source/thing in affecting_lights) - if (!thing.changed) - thing.changed() //force it to update at next process() - - -#define LIGHTING_MAX_LUMINOSITY_STATIC 8 //Maximum luminosity to reduce lag. -#define LIGHTING_MAX_LUMINOSITY_MOBILE 7 //Moving objects have a lower max luminosity since these update more often. (lag reduction) -#define LIGHTING_MAX_LUMINOSITY_MOB 6 -#define LIGHTING_MAX_LUMINOSITY_TURF 8 //turfs are static too, why was this 1?! - -//caps luminosity effects max-range based on what type the light's owner is. -/atom/proc/get_light_range(radius) - return min(radius, LIGHTING_MAX_LUMINOSITY_STATIC) - -/atom/movable/get_light_range(radius) - return min(radius, LIGHTING_MAX_LUMINOSITY_MOBILE) - -/mob/get_light_range(radius) - return min(radius, LIGHTING_MAX_LUMINOSITY_MOB) - -/obj/machinery/light/get_light_range(radius) - return min(radius, LIGHTING_MAX_LUMINOSITY_STATIC) - -/turf/get_light_range(radius) - return min(radius, LIGHTING_MAX_LUMINOSITY_TURF) - -#undef LIGHTING_MAX_LUMINOSITY_STATIC -#undef LIGHTING_MAX_LUMINOSITY_MOBILE -#undef LIGHTING_MAX_LUMINOSITY_MOB -#undef LIGHTING_MAX_LUMINOSITY_TURF diff --git a/code/modules/mining/abandoned_crates.dm b/code/modules/mining/abandoned_crates.dm index 9d0b804cd3..aa0f56f0bf 100644 --- a/code/modules/mining/abandoned_crates.dm +++ b/code/modules/mining/abandoned_crates.dm @@ -4,21 +4,19 @@ name = "abandoned crate" desc = "What could be inside?" icon_state = "securecrate" - integrity_failure = 0 //no breaking open the crate var/code = null var/lastattempt = null var/attempts = 10 var/codelen = 4 - tamperproof = 90 /obj/structure/closet/crate/secure/loot/New() ..() - var/list/digits = list("1", "2", "3", "4", "5", "6", "7", "8", "9", "0") + var/list/digits = list("1", "2", "3", "4", "5", "6", "7", "8", "9", "z") code = "" for(var/i = 0, i < codelen, i++) var/dig = pick(digits) code += dig - digits -= dig //there are never matching digits in the answer + digits -= dig //Player can enter codes with matching digits, but there are never matching digits in the answer var/loot = rand(1,100) //100 different crates with varying chances of spawning switch(loot) @@ -47,7 +45,7 @@ for(var/i in 1 to 3) new /obj/item/weapon/reagent_containers/glass/beaker/noreact(src) if(31 to 35) - new /obj/item/seeds/firelemon(src) + new /obj/item/seeds/cash(src) if(36 to 40) new /obj/item/weapon/melee/baton(src) if(41 to 45) @@ -56,7 +54,7 @@ if(46 to 50) new /obj/item/clothing/under/chameleon(src) for(var/i in 1 to 7) - new /obj/item/clothing/neck/tie/horrible(src) + new /obj/item/clothing/tie/horrible(src) if(51 to 52) // 2% chance new /obj/item/weapon/melee/classic_baton(src) if(53 to 54) @@ -67,13 +65,13 @@ if(57 to 58) new /obj/item/toy/syndicateballoon(src) if(59 to 60) - new /obj/item/borg/upgrade/modkit/aoe/mobs(src) + new /obj/item/weapon/gun/energy/kinetic_accelerator/hyper(src) new /obj/item/clothing/suit/space(src) new /obj/item/clothing/head/helmet/space(src) if(61 to 62) for(var/i in 1 to 5) new /obj/item/clothing/head/kitty(src) - new /obj/item/clothing/neck/petcollar(src) + new /obj/item/clothing/tie/petcollar(src) if(63 to 64) for(var/i in 1 to rand(4, 7)) var/newcoin = pick(/obj/item/weapon/coin/silver, /obj/item/weapon/coin/silver, /obj/item/weapon/coin/silver, /obj/item/weapon/coin/iron, /obj/item/weapon/coin/iron, /obj/item/weapon/coin/iron, /obj/item/weapon/coin/gold, /obj/item/weapon/coin/diamond, /obj/item/weapon/coin/plasma, /obj/item/weapon/coin/uranium) @@ -142,7 +140,7 @@ new /obj/item/weapon/hand_tele(src) if(97) new /obj/item/clothing/mask/balaclava - new /obj/item/weapon/gun/ballistic/automatic/pistol(src) + new /obj/item/weapon/gun/projectile/automatic/pistol(src) new /obj/item/ammo_box/magazine/m10mm(src) if(98) new /obj/item/weapon/katana/cursed(src) @@ -155,32 +153,27 @@ /obj/structure/closet/crate/secure/loot/attack_hand(mob/user) if(locked) user << "The crate is locked with a Deca-code lock." - var/input = input(usr, "Enter [codelen] digits. All digits must be unique.", "Deca-Code Lock", "") as text + var/input = input(usr, "Enter [codelen] digits.", "Deca-Code Lock", "") as text if(user.canUseTopic(src, 1)) - var/list/sanitised = list() - var/sanitycheck = 1 - for(var/i=1,i<=length(input),i++) //put the guess into a list - sanitised += text2num(copytext(input,i,i+1)) - for(var/i=1,i<=(length(input)-1),i++) //compare each digit in the guess to all those following it - for(var/j=(i+1),j<=length(input),j++) - if(sanitised[i] == sanitised[j]) - sanitycheck = null //if a digit is repeated, reject the input if (input == code) user << "The crate unlocks!" locked = 0 cut_overlays() add_overlay("securecrateg") - else if (input == null || sanitycheck == null || length(input) != codelen) + else if (input == null || length(input) != codelen) user << "You leave the crate alone." else user << "A red light flashes." - lastattempt = input + lastattempt = replacetext(input, 0, "z") attempts-- if(attempts == 0) boom(user) else return ..() +/obj/structure/closet/crate/secure/loot/attack_animal(mob/user) + boom(user) + /obj/structure/closet/crate/secure/loot/AltClick(mob/living/user) if(!user.canUseTopic(src)) return @@ -199,21 +192,19 @@ user << "* Anti-Tamper Bomb will activate after [src.attempts] failed access attempts." if(lastattempt != null) var/list/guess = list() - var/list/answer = list() var/bulls = 0 var/cows = 0 - for(var/i=1,i<=length(lastattempt),i++) - guess += text2num(copytext(lastattempt,i,i+1)) - for(var/i=1,i<=length(lastattempt),i++) - answer += text2num(copytext(code,i,i+1)) - for(var/i = 1, i < codelen + 1, i++) // Go through list and count matches - if( answer.Find(guess[i],1,codelen+1)) - ++cows - if( answer[i] == guess[i]) + for(var/i = 1, i < codelen + 1, i++) + var/a = copytext(lastattempt, i, i+1) //Stuff the code into the list + guess += a + guess[a] = i + for(var/i in guess) //Go through list and count matches + var/a = findtext(code, i) + if(a == guess[i]) ++bulls - --cows - - user << "Last code attempt, [lastattempt], had [bulls] correct digits at correct positions and [cows] correct digits at incorrect positions." + else if(a) + ++cows + user << "Last code attempt had [bulls] correct digits at correct positions and [cows] correct digits at incorrect positions." return return ..() @@ -223,5 +214,10 @@ else ..() -/obj/structure/closet/crate/secure/loot/deconstruct(disassembled = TRUE) - boom() +/obj/structure/closet/crate/secure/loot/proc/boom(mob/user) + user << "The crate's anti-tamper system activates!" + for(var/atom/movable/AM in src) + qdel(AM) + var/turf/T = get_turf(src) + explosion(T, -1, -1, 1, 1) + qdel(src) \ No newline at end of file diff --git a/code/modules/mining/equipment.dm b/code/modules/mining/equipment.dm index d1f7d1104f..717f6bb87a 100644 --- a/code/modules/mining/equipment.dm +++ b/code/modules/mining/equipment.dm @@ -12,9 +12,8 @@ heat_protection = CHEST|GROIN|LEGS|ARMS hooded = 1 hoodtype = /obj/item/clothing/head/explorer - armor = list(melee = 30, bullet = 20, laser = 20, energy = 20, bomb = 50, bio = 100, rad = 50, fire = 50, acid = 50) + armor = list(melee = 30, bullet = 20, laser = 20, energy = 20, bomb = 50, bio = 100, rad = 50) allowed = list(/obj/item/device/flashlight,/obj/item/weapon/tank/internals, /obj/item/weapon/resonator, /obj/item/device/mining_scanner, /obj/item/device/t_scanner/adv_mining_scanner, /obj/item/weapon/gun/energy/kinetic_accelerator, /obj/item/weapon/pickaxe) - resistance_flags = FIRE_PROOF /obj/item/clothing/head/explorer name = "explorer hood" @@ -25,8 +24,7 @@ flags_inv = HIDEHAIR|HIDEFACE|HIDEEARS min_cold_protection_temperature = FIRE_HELM_MIN_TEMP_PROTECT max_heat_protection_temperature = FIRE_HELM_MAX_TEMP_PROTECT - armor = list(melee = 30, bullet = 20, laser = 20, energy = 20, bomb = 50, bio = 100, rad = 50, fire = 50, acid = 50) - resistance_flags = FIRE_PROOF + armor = list(melee = 30, bullet = 20, laser = 20, energy = 20, bomb = 50, bio = 100, rad = 50) /obj/item/clothing/mask/gas/explorer name = "explorer gas mask" @@ -36,15 +34,14 @@ visor_flags_inv = HIDEFACIALHAIR visor_flags_cover = MASKCOVERSMOUTH actions_types = list(/datum/action/item_action/adjust) - armor = list(melee = 10, bullet = 5, laser = 5, energy = 5, bomb = 0, bio = 50, rad = 0, fire = 20, acid = 40) - resistance_flags = FIRE_PROOF + armor = list(melee = 10, bullet = 5, laser = 5, energy = 5, bomb = 0, bio = 50, rad = 0) /obj/item/clothing/mask/gas/explorer/attack_self(mob/user) adjustmask(user) /obj/item/clothing/mask/gas/explorer/adjustmask(user) ..() - w_class = mask_adjusted ? WEIGHT_CLASS_NORMAL : WEIGHT_CLASS_SMALL + w_class = mask_adjusted ? 3 : 2 /obj/item/clothing/mask/gas/explorer/folded/New() ..() @@ -62,7 +59,7 @@ icon_state = "Jaunter" item_state = "electronic" throwforce = 0 - w_class = WEIGHT_CLASS_SMALL + w_class = 2 throw_speed = 3 throw_range = 5 origin_tech = "bluespace=2" @@ -84,7 +81,7 @@ var/list/destinations = list() if(isgolem(user)) - for(var/obj/item/device/radio/beacon/B in teleportbeacons) + for(var/obj/item/device/radio/beacon/B in world) var/turf/T = get_turf(B) if(istype(T.loc, /area/ruin/powered/golem_ship)) destinations += B @@ -93,7 +90,7 @@ if(destinations.len) return destinations - for(var/obj/item/device/radio/beacon/B in teleportbeacons) + for(var/obj/item/device/radio/beacon/B in world) var/turf/T = get_turf(B) if(T.z == ZLEVEL_STATION) destinations += B @@ -167,13 +164,13 @@ icon_state = "resonator" item_state = "resonator" desc = "A handheld device that creates small fields of energy that resonate until they detonate, crushing rock. It can also be activated without a target to create a field at the user's location, to act as a delayed time trap. It's more effective in a vacuum." - w_class = WEIGHT_CLASS_NORMAL + w_class = 3 force = 15 throwforce = 10 + var/cooldown = 0 + var/fieldsactive = 0 var/burst_time = 30 var/fieldlimit = 4 - var/list/fields = list() - var/quick_burst_mod = 0.8 origin_tech = "magnets=3;engineering=3" /obj/item/weapon/resonator/upgraded @@ -183,19 +180,17 @@ item_state = "resonator_u" origin_tech = "materials=4;powerstorage=3;engineering=3;magnets=3" fieldlimit = 6 - quick_burst_mod = 1 /obj/item/weapon/resonator/proc/CreateResonance(target, creator) var/turf/T = get_turf(target) - var/obj/effect/resonance/R = locate(/obj/effect/resonance) in T - if(R) - R.resonance_damage *= quick_burst_mod - R.burst(T) + if(locate(/obj/effect/resonance) in T) return - if(fields.len < fieldlimit) + if(fieldsactive < fieldlimit) playsound(src,'sound/weapons/resonator_fire.ogg',50,1) - var/obj/effect/resonance/RE = new /obj/effect/resonance(T, creator, burst_time, src) - fields += RE + new /obj/effect/resonance(T, creator, burst_time) + fieldsactive++ + spawn(burst_time) + fieldsactive-- /obj/item/weapon/resonator/attack_self(mob/user) if(burst_time == 50) @@ -207,9 +202,7 @@ /obj/item/weapon/resonator/afterattack(atom/target, mob/user, proximity_flag) if(proximity_flag) - if(!check_allowed_items(target, 1)) - return - user.changeNext_move(CLICK_CD_MELEE) + if(!check_allowed_items(target, 1)) return CreateResonance(target, user) /obj/effect/resonance @@ -218,42 +211,37 @@ icon = 'icons/effects/effects.dmi' icon_state = "shield1" layer = ABOVE_ALL_MOB_LAYER - anchored = TRUE mouse_opacity = 0 var/resonance_damage = 20 - var/creator - var/obj/item/weapon/resonator/res -/obj/effect/resonance/New(loc, set_creator, timetoburst, set_resonator) - ..() - creator = set_creator - res = set_resonator +/obj/effect/resonance/New(loc, var/creator = null, var/timetoburst) var/turf/proj_turf = get_turf(src) if(!istype(proj_turf)) return - var/datum/gas_mixture/environment = proj_turf.return_air() - var/pressure = environment.return_pressure() - if(pressure < 50) - name = "strong resonance field" - resonance_damage = 60 - addtimer(src, "burst", timetoburst, TIMER_NORMAL, proj_turf) - -/obj/effect/resonance/Destroy() - if(res) - res.fields -= src - return ..() - -/obj/effect/resonance/proc/burst(turf/T) - playsound(src,'sound/weapons/resonator_blast.ogg',50,1) - if(ismineralturf(T)) - var/turf/closed/mineral/M = T - M.gets_drilled(creator) - for(var/mob/living/L in T) - if(creator) - add_logs(creator, L, "used a resonator field on", "resonator") - L << "The [src.name] ruptured with you in it!" - L.apply_damage(resonance_damage, BRUTE) - qdel(src) + if(istype(proj_turf, /turf/closed/mineral)) + var/turf/closed/mineral/M = proj_turf + spawn(timetoburst) + playsound(src,'sound/weapons/resonator_blast.ogg',50,1) + M.gets_drilled(creator) + qdel(src) + else + var/datum/gas_mixture/environment = proj_turf.return_air() + var/pressure = environment.return_pressure() + if(pressure < 50) + name = "strong resonance field" + resonance_damage = 60 + spawn(timetoburst) + playsound(src,'sound/weapons/resonator_blast.ogg',50,1) + if(creator) + for(var/mob/living/L in src.loc) + add_logs(creator, L, "used a resonator field on", "resonator") + L << "The [src.name] ruptured with you in it!" + L.adjustBruteLoss(resonance_damage) + else + for(var/mob/living/L in src.loc) + L << "The [src.name] ruptured with you in it!" + L.adjustBruteLoss(resonance_damage) + qdel(src) /**********************Facehugger toy**********************/ @@ -277,7 +265,7 @@ icon_state = "lazarus_hypo" item_state = "hypo" throwforce = 0 - w_class = WEIGHT_CLASS_SMALL + w_class = 2 throw_speed = 3 throw_range = 5 var/loaded = 1 @@ -288,7 +276,7 @@ /obj/item/weapon/lazarus_injector/afterattack(atom/target, mob/user, proximity_flag) if(!loaded) return - if(isliving(target) && proximity_flag) + if(istype(target, /mob/living) && proximity_flag) if(istype(target, /mob/living/simple_animal)) var/mob/living/simple_animal/M = target if(M.sentience_type != revive_type) @@ -297,7 +285,7 @@ if(M.stat == DEAD) M.faction = list("neutral") M.revive(full_heal = 1, admin_revive = 1) - if(ishostile(target)) + if(istype(target, /mob/living/simple_animal/hostile)) var/mob/living/simple_animal/hostile/H = M if(malfunctioning) H.faction |= list("lazarus", "\ref[user]") @@ -338,7 +326,7 @@ name = "manual mining scanner" icon_state = "mining1" item_state = "analyzer" - w_class = WEIGHT_CLASS_SMALL + w_class = 2 flags = CONDUCT slot_flags = SLOT_BELT var/cooldown = 0 @@ -370,7 +358,7 @@ name = "advanced automatic mining scanner" icon_state = "mining0" item_state = "analyzer" - w_class = WEIGHT_CLASS_SMALL + w_class = 2 flags = CONDUCT slot_flags = SLOT_BELT var/cooldown = 35 @@ -420,7 +408,6 @@ for(var/turf/closed/mineral/M in minerals) var/turf/F = get_turf(M) var/image/I = image('icons/turf/smoothrocks.dmi', loc = F, icon_state = M.scan_state, layer = FLASH_LAYER) - I.plane = FULLSCREEN_PLANE C.images += I spawn(30) if(C) @@ -454,6 +441,28 @@ icon = 'icons/obj/mining.dmi' icon_state = "xeno_warning" +/******************Hardsuit Jetpack Upgrade*******************/ +/obj/item/hardsuit_jetpack + name = "hardsuit jetpack upgrade" + icon_state = "jetpack_upgrade" + desc = "A modular, compact set of thrusters designed to integrate with a hardsuit. It is fueled by a tank inserted into the suit's storage compartment." + origin_tech = "materials=4;magnets=4;engineering=5" + // Same as jetpack implant minus biotech, makes sense. + + +/obj/item/hardsuit_jetpack/afterattack(var/obj/item/clothing/suit/space/hardsuit/S, mob/user) + ..() + if(!istype(S)) + user << "This upgrade can only be applied to a hardsuit." + else if(S.jetpack) + user << "[S] already has a jetpack installed." + else if(S == user.get_item_by_slot(slot_wear_suit)) //Make sure the player is not wearing the suit before applying the upgrade. + user << "You cannot install the upgrade to [S] while wearing it." + else + S.jetpack = new /obj/item/weapon/tank/jetpack/suit(S) + user << "You successfully install the jetpack into [S]." + qdel(src) + /*********************Hivelord stabilizer****************/ /obj/item/weapon/hivelordstabilizer @@ -461,7 +470,7 @@ icon = 'icons/obj/chemical.dmi' icon_state = "bottle19" desc = "Inject certain types of monster organs with this stabilizer to preserve their healing powers indefinitely." - w_class = WEIGHT_CLASS_TINY + w_class = 1 origin_tech = "biotech=3" /obj/item/weapon/hivelordstabilizer/afterattack(obj/item/organ/M, mob/user) @@ -480,12 +489,12 @@ icon_state = "mining_hammer1" item_state = "mining_hammer1" name = "proto-kinetic crusher" - desc = "An early design of the proto-kinetic accelerator, it is little more than an combination of various mining tools cobbled together, forming a high-tech club. \ - While it is an effective mining tool, it did little to aid any but the most skilled and/or suicidal miners against local fauna.\ - \nMark a mob with the destabilizing force, then hit them in melee to activate it for extra damage. Extra damage if backstabbed in this fashion. \ - This weapon is only particularly effective against large creatures." + desc = "An early design of the proto-kinetic accelerator, it is little more than an combination of various mining tools cobbled together, forming a high-tech club.\ + While it is an effective mining tool, it did little to aid any but the most skilled and/or suicidal miners against local fauna. \ + \nMark a mob with the destabilizing force, then hit them in melee to activate it for extra damage. Extra damage if backstabbed in this fashion. \ + This weapon is only particularly effective against large creatures." force = 20 //As much as a bone spear, but this is significantly more annoying to carry around due to requiring the use of both hands at all times - w_class = WEIGHT_CLASS_BULKY + w_class = 4 slot_flags = SLOT_BACK force_unwielded = 20 //It's never not wielded so these are the same force_wielded = 20 @@ -495,13 +504,16 @@ armour_penetration = 10 materials = list(MAT_METAL=1150, MAT_GLASS=2075) hitsound = 'sound/weapons/bladeslice.ogg' - attack_verb = list("smashed", "crushed", "cleaved", "chopped", "pulped") + attack_verb = list("smashes", "crushes", "cleaves", "chops", "pulps") sharpness = IS_SHARP var/charged = 1 var/charge_time = 16 var/atom/mark = null var/marked_image = null +/obj/item/weapon/twohanded/required/mining_hammer/New() + set_light(luminosity) + /obj/item/projectile/destabilizer name = "destabilizing force" icon_state = "pulse1" @@ -510,9 +522,8 @@ flag = "bomb" range = 6 var/obj/item/weapon/twohanded/required/mining_hammer/hammer_synced = null - log_override = TRUE -/obj/item/projectile/destabilizer/on_hit(atom/target, blocked = 0) +/obj/item/projectile/destabilizer/on_hit(atom/target, blocked = 0, hit_zone) if(hammer_synced) if(hammer_synced.mark == target) return ..() @@ -527,7 +538,7 @@ L.underlays += I hammer_synced.marked_image = I var/target_turf = get_turf(target) - if(ismineralturf(target_turf)) + if(istype(target_turf, /turf/closed/mineral)) var/turf/closed/mineral/M = target_turf PoolOrNew(/obj/effect/overlay/temp/kinetic_blast, M) M.gets_drilled(firer) @@ -536,7 +547,7 @@ /obj/item/weapon/twohanded/required/mining_hammer/afterattack(atom/target, mob/user, proximity_flag) if(!proximity_flag && charged)//Mark a target, or mine a tile. var/turf/proj_turf = get_turf(src) - if(!isturf(proj_turf)) + if(!istype(proj_turf, /turf)) return var/datum/gas_mixture/environment = proj_turf.return_air() var/pressure = environment.return_pressure() @@ -573,11 +584,3 @@ charged = 1 icon_state = "mining_hammer1" playsound(src.loc, 'sound/weapons/kenetic_reload.ogg', 60, 1) - -/obj/item/weapon/twohanded/required/mining_hammer/pickup(mob/user) - ..() - user.AddLuminosity(luminosity) - -/obj/item/weapon/twohanded/required/mining_hammer/dropped(mob/user) - ..() - user.AddLuminosity(-luminosity) diff --git a/code/modules/mining/fulton.dm b/code/modules/mining/fulton.dm index a883bbd369..d9abc61141 100644 --- a/code/modules/mining/fulton.dm +++ b/code/modules/mining/fulton.dm @@ -1,17 +1,18 @@ var/list/total_extraction_beacons = list() /obj/item/weapon/extraction_pack - name = "fulton extraction pack" - desc = "A balloon that can be used to extract equipment or personnel to a Fulton Recovery Beacon. Anything not bolted down can be moved. Link the pack to a beacon by using the pack in hand." + name = "fulton material extraction pack" + desc = "A balloon that can be used to extract people or objects to a Fulton Recovery Beacon. Anything not bolted down can be moved. Link the pack to a beacon by using the pack in hand." icon = 'icons/obj/fulton.dmi' icon_state = "extraction_pack" - w_class = WEIGHT_CLASS_NORMAL + w_class = 3 var/obj/structure/extraction_point/beacon var/list/beacon_networks = list("station") var/uses_left = 3 var/can_use_indoors var/safe_for_living_creatures = 1 + /obj/item/weapon/extraction_pack/examine() . = ..() usr.show_message("It has [uses_left] uses remaining.", 1) @@ -53,17 +54,13 @@ var/list/total_extraction_beacons = list() if(!safe_for_living_creatures && check_for_living_mobs(A)) user << "[src] is not safe for use with living creatures, they wouldn't survive the trip back!" return - if(A.loc == user) // no extracting stuff you're holding + if(A.loc == user || A == user) // no extracting stuff you're holding in your hands/yourself return if(A.anchored) return user << "You start attaching the pack to [A]..." if(do_after(user,50,target=A)) user << "You attach the pack to [A] and activate it." - if(loc == user || istype(user.back, /obj/item/weapon/storage/backpack)) - var/obj/item/weapon/storage/backpack/B = user.back - if(B.can_be_inserted(src,stop_messages = 1)) - B.handle_item_insertion(src) uses_left-- if(uses_left <= 0) user.drop_item(src) @@ -71,7 +68,7 @@ var/list/total_extraction_beacons = list() var/image/balloon var/image/balloon2 var/image/balloon3 - if(isliving(A)) + if(istype(A, /mob/living)) var/mob/living/M = A M.Weaken(16) // Keep them from moving during the duration of the extraction M.buckled = 0 // Unbuckle them to prevent anchoring problems @@ -104,7 +101,7 @@ var/list/total_extraction_beacons = list() sleep(10) playsound(holder_obj.loc, 'sound/items/fultext_launch.wav', 50, 1, -3) animate(holder_obj, pixel_z = 1000, time = 30) - if(ishuman(A)) + if(istype(A, /mob/living/carbon/human)) var/mob/living/carbon/human/L = A L.SetParalysis(0) L.drowsyness = 0 @@ -139,14 +136,16 @@ var/list/total_extraction_beacons = list() /obj/item/fulton_core name = "extraction beacon signaller" - desc = "Emits a signal which fulton recovery devices can lock on to. Activate in hand to create a beacon." + desc = "Emits a signal which fulton recovery devices can lock on to. Craft with metal to create a beacon." icon = 'icons/obj/stock_parts.dmi' icon_state = "subspace_amplifier" -/obj/item/fulton_core/attack_self(mob/user) - if(do_after(user,15,target = user) && !qdeleted(src)) - new /obj/structure/extraction_point(get_turf(user)) - qdel(src) +/datum/crafting_recipe/fulton + name = "Fulton Recovery Beacon" + result = /obj/structure/extraction_point + reqs = list(/obj/item/fulton_core = 1, /obj/item/stack/sheet/metal = 5) + time = 15 + category = CAT_MISC /obj/structure/extraction_point name = "fulton recovery beacon" @@ -173,12 +172,12 @@ var/list/total_extraction_beacons = list() var/atom/movable/stored_obj /obj/item/weapon/extraction_pack/proc/check_for_living_mobs(atom/A) - if(isliving(A)) + if(istype(A, /mob/living)) var/mob/living/L = A if(L.stat != DEAD) return 1 for(var/thing in A.GetAllContents()) - if(isliving(A)) + if(istype(A, /mob/living)) var/mob/living/L = A if(L.stat != DEAD) return 1 diff --git a/code/modules/mining/laborcamp/laborshuttle.dm b/code/modules/mining/laborcamp/laborshuttle.dm index fac4dc3745..cf68eeff07 100644 --- a/code/modules/mining/laborcamp/laborshuttle.dm +++ b/code/modules/mining/laborcamp/laborshuttle.dm @@ -5,6 +5,7 @@ shuttleId = "laborcamp" possible_destinations = "laborcamp_home;laborcamp_away" req_access = list(access_brig) + light_color = LIGHT_COLOR_CYAN /obj/machinery/computer/shuttle/labor/one_way @@ -24,4 +25,4 @@ if(S && S.name == "laborcamp_away") usr << "Shuttle is already at the outpost!" return 0 - ..() \ No newline at end of file + ..() diff --git a/code/modules/mining/laborcamp/laborstacker.dm b/code/modules/mining/laborcamp/laborstacker.dm index 204eb07c44..4248df8cdb 100644 --- a/code/modules/mining/laborcamp/laborstacker.dm +++ b/code/modules/mining/laborcamp/laborstacker.dm @@ -74,14 +74,14 @@ switch(action) if("handle_id") if(inserted_id) - if(!usr.get_active_held_item()) + if(!usr.get_active_hand()) usr.put_in_hands(inserted_id) inserted_id = null else inserted_id.forceMove(get_turf(src)) inserted_id = null else - var/obj/item/I = usr.get_active_held_item() + var/obj/item/I = usr.get_active_hand() if(istype(I, /obj/item/weapon/card/id/prisoner)) if(!usr.drop_item()) return diff --git a/code/modules/mining/lavaland/ash_flora.dm b/code/modules/mining/lavaland/ash_flora.dm deleted file mode 100644 index 397ec8d413..0000000000 --- a/code/modules/mining/lavaland/ash_flora.dm +++ /dev/null @@ -1,218 +0,0 @@ -/obj/structure/flora/ash - gender = PLURAL - layer = PROJECTILE_HIT_THRESHHOLD_LAYER //sporangiums up don't shoot - icon = 'icons/obj/lavaland/ash_flora.dmi' - icon_state = "l_mushroom" - name = "large mushrooms" - desc = "A number of large mushrooms, covered in a faint layer of ash and what can only be spores." - var/harvested_name = "shortened mushrooms" - var/harvested_desc = "Some quickly regrowing mushrooms, formerly known to be quite large." - var/needs_sharp_harvest = TRUE - var/harvest = /obj/item/weapon/reagent_containers/food/snacks/ash_flora/shavings - var/harvest_amount_low = 1 - var/harvest_amount_high = 3 - var/harvest_time = 60 - var/harvest_message_low = "You pick a mushroom, but fail to collect many shavings from its cap." - var/harvest_message_med = "You pick a mushroom, carefully collecting the shavings from its cap." - var/harvest_message_high = "You harvest and collect shavings from several mushroom caps." - var/harvested = FALSE - var/base_icon - var/regrowth_time_low = 4800 - var/regrowth_time_high = 8400 - -/obj/structure/flora/ash/New() - ..() - base_icon = "[icon_state][rand(1, 4)]" - icon_state = base_icon - if(prob(15)) - harvest(null, TRUE) - -/obj/structure/flora/ash/proc/harvest(user, no_drop) - if(harvested) - return 0 - if(!no_drop) - var/rand_harvested = rand(harvest_amount_low, harvest_amount_high) - if(rand_harvested) - if(user) - var/msg = harvest_message_med - if(rand_harvested == harvest_amount_low) - msg = harvest_message_low - else if(rand_harvested == harvest_amount_high) - msg = harvest_message_high - user << "[msg]" - for(var/i in 1 to rand_harvested) - new harvest(get_turf(src)) - icon_state = "[base_icon]p" - name = harvested_name - desc = harvested_desc - harvested = TRUE - addtimer(src, "regrow", rand(regrowth_time_low, regrowth_time_high)) - return 1 - -/obj/structure/flora/ash/proc/regrow() - icon_state = base_icon - name = initial(name) - desc = initial(desc) - harvested = FALSE - -/obj/structure/flora/ash/attackby(obj/item/weapon/W, mob/user, params) - if(!harvested && needs_sharp_harvest && W.sharpness) - user.visible_message("[user] starts to harvest from [src] with [W].","You begin to harvest from [src] with [W].") - if(do_after(user, harvest_time, target = src)) - harvest(user) - else - return ..() - -/obj/structure/flora/ash/attack_hand(mob/user) - if(!harvested && !needs_sharp_harvest) - user.visible_message("[user] starts to harvest from [src].","You begin to harvest from [src].") - if(do_after(user, harvest_time, target = src)) - harvest(user) - else - ..() - -/obj/structure/flora/ash/tall_shroom //exists only so that the spawning check doesn't allow these spawning near other things - regrowth_time_low = 4200 - -/obj/structure/flora/ash/leaf_shroom - icon_state = "s_mushroom" - name = "leafy mushrooms" - desc = "A number of mushrooms, each of which surrounds a greenish sporangium with a number of leaf-like structures." - harvested_name = "leafless mushrooms" - harvested_desc = "A bunch of formerly-leafed mushrooms, with their sporangiums exposed. Scandalous?" - harvest = /obj/item/weapon/reagent_containers/food/snacks/ash_flora/mushroom_leaf - needs_sharp_harvest = FALSE - harvest_amount_high = 4 - harvest_time = 20 - harvest_message_low = "You pluck a single, suitable leaf." - harvest_message_med = "You pluck a number of leaves, leaving a few unsuitable ones." - harvest_message_high = "You pluck quite a lot of suitable leaves." - regrowth_time_low = 2400 - regrowth_time_high = 6000 - -/obj/structure/flora/ash/cap_shroom - icon_state = "r_mushroom" - name = "tall mushrooms" - desc = "Several mushrooms, the larger of which have a ring of conks at the midpoint of their stems." - harvested_name = "small mushrooms" - harvested_desc = "Several small mushrooms near the stumps of what likely were larger mushrooms." - harvest = /obj/item/weapon/reagent_containers/food/snacks/ash_flora/mushroom_cap - harvest_amount_high = 4 - harvest_time = 50 - harvest_message_low = "You slice the cap off of a mushroom." - harvest_message_med = "You slice off a few conks from the larger mushrooms." - harvest_message_high = "You slice off a number of caps and conks from these mushrooms." - regrowth_time_low = 3000 - regrowth_time_high = 5400 - -/obj/structure/flora/ash/stem_shroom - icon_state = "t_mushroom" - name = "numerous mushrooms" - desc = "A large number of mushrooms, some of which have long, fleshy stems. They're radiating light!" - luminosity = 1 - harvested_name = "tiny mushrooms" - harvested_desc = "A few tiny mushrooms around larger stumps. You can already see them growing back." - harvest = /obj/item/weapon/reagent_containers/food/snacks/ash_flora/mushroom_stem - harvest_amount_high = 4 - harvest_time = 40 - harvest_message_low = "You pick and slice the cap off of a mushroom, leaving the stem." - harvest_message_med = "You pick and decapitate several mushrooms for their stems." - harvest_message_high = "You acquire a number of stems from these mushrooms." - regrowth_time_low = 3000 - regrowth_time_high = 6000 - -/obj/structure/flora/ash/cacti - icon_state = "cactus" - name = "fruiting cacti" - desc = "Several prickly cacti, brimming with ripe fruit and covered in a thin layer of ash." - harvested_name = "cacti" - harvested_desc = "A bunch of prickly cacti. You can see fruits slowly growing beneath the covering of ash." - harvest = /obj/item/weapon/reagent_containers/food/snacks/ash_flora/cactus_fruit - needs_sharp_harvest = FALSE - harvest_amount_high = 2 - harvest_time = 10 - harvest_message_low = "You pick a cactus fruit." - harvest_message_med = "You pick several cactus fruit." //shouldn't show up, because you can't get more than two - harvest_message_high = "You pick a pair of cactus fruit." - regrowth_time_low = 4800 - regrowth_time_high = 7200 - -/obj/structure/flora/ash/cacti/Crossed(mob/AM) - if(ishuman(AM) && has_gravity(loc) && prob(70)) - var/mob/living/carbon/human/H = AM - if(!H.shoes && !H.lying) //ouch, my feet. - var/picked_def_zone = pick("l_leg", "r_leg") - var/obj/item/bodypart/O = H.get_bodypart(picked_def_zone) - if(!istype(O) || (PIERCEIMMUNE in H.dna.species.species_traits)) - return - H.apply_damage(rand(3, 6), BRUTE, picked_def_zone) - H.Weaken(2) - H.visible_message("[H] steps on a cactus!", \ - "You step on a cactus!") - -/obj/item/weapon/reagent_containers/food/snacks/ash_flora - name = "mushroom shavings" - desc = "Some shavings from a tall mushroom. With enough, might serve as a bowl." - icon = 'icons/obj/lavaland/ash_flora.dmi' - icon_state = "mushroom_shavings" - list_reagents = list("sugar" = 3, "ethanol" = 2, "stabilizing_agent" = 3, "minttoxin" = 2) - w_class = WEIGHT_CLASS_TINY - resistance_flags = FLAMMABLE - obj_integrity = 100 - max_integrity = 100 - -/obj/item/weapon/reagent_containers/food/snacks/ash_flora/New() - ..() - pixel_x = rand(-4, 4) - pixel_y = rand(-4, 4) - - -/obj/item/weapon/reagent_containers/food/snacks/ash_flora/shavings //for actual crafting - - -/obj/item/weapon/reagent_containers/food/snacks/ash_flora/mushroom_leaf - name = "mushroom leaf" - desc = "A leaf, from a mushroom." - list_reagents = list("nutriment" = 3, "vitfro" = 2, "nicotine" = 2) - icon_state = "mushroom_leaf" - - - -/obj/item/weapon/reagent_containers/food/snacks/ash_flora/mushroom_cap - name = "mushroom cap" - desc = "The cap of a large mushroom." - list_reagents = list("mindbreaker" = 2, "entpoly" = 4, "mushroomhallucinogen" = 2) - icon_state = "mushroom_cap" - - -/obj/item/weapon/reagent_containers/food/snacks/ash_flora/mushroom_stem - name = "mushroom stem" - desc = "A long mushroom stem. It's slightly glowing." - list_reagents = list("tinlux" = 2, "vitamin" = 1, "space_drugs" = 1) - icon_state = "mushroom_stem" - luminosity = 1 - -/obj/item/weapon/reagent_containers/food/snacks/ash_flora/cactus_fruit - name = "cactus fruit" - list_reagents = list("vitamin" = 2, "nutriment" = 2, "vitfro" = 4) - desc = "A cactus fruit covered in a thick, reddish skin. And some ash." - icon_state = "cactus_fruit" - - -/obj/item/mushroom_bowl - name = "mushroom bowl" - desc = "A bowl made out of mushrooms. Not food, though it might have contained some at some point." - icon = 'icons/obj/lavaland/ash_flora.dmi' - icon_state = "mushroom_bowl" - w_class = WEIGHT_CLASS_SMALL - resistance_flags = FLAMMABLE - obj_integrity = 200 - max_integrity = 200 - -//what you can craft with these things -/datum/crafting_recipe/mushroom_bowl - name = "Mushroom Bowl" - result = /obj/item/weapon/reagent_containers/food/drinks/mushroom_bowl - reqs = list(/obj/item/weapon/reagent_containers/food/snacks/ash_flora/shavings = 5) - time = 30 - category = CAT_PRIMAL diff --git a/code/modules/mining/lavaland/necropolis_chests.dm b/code/modules/mining/lavaland/necropolis_chests.dm index f7ccdc19f4..3d687ddbf8 100644 --- a/code/modules/mining/lavaland/necropolis_chests.dm +++ b/code/modules/mining/lavaland/necropolis_chests.dm @@ -4,7 +4,7 @@ name = "necropolis chest" desc = "It's watching you closely." icon_state = "necrocrate" - resistance_flags = LAVA_PROOF | FIRE_PROOF | ACID_PROOF + burn_state = LAVA_PROOF /obj/structure/closet/crate/necropolis/tendril desc = "It's watching you suspiciously." @@ -48,7 +48,7 @@ if(16) new /obj/item/weapon/guardiancreator(src) if(17) - new /obj/item/borg/upgrade/modkit/aoe/turfs/andmobs(src) + new /obj/item/stack/sheet/runed_metal/fifty(src) if(18) new /obj/item/device/warp_cube/red(src) if(19) @@ -83,21 +83,24 @@ user << "The wisp has gone missing!" return if(wisp.loc == src) - user << "You release the wisp. It begins to bob around your head." + user << "You release the wisp. It begins to \ + bob around your head." user.sight |= SEE_MOBS icon_state = "lantern" wisp.orbit(user, 20) feedback_add_details("wisp_lantern","F") // freed else - user << "You return the wisp to the lantern." + user << "You return the wisp to the lantern.\ + " if(wisp.orbiting) - var/atom/A = wisp.orbiting.orbiting - if(isliving(A)) + var/atom/A = wisp.orbiting + if(istype(A, /mob/living)) var/mob/living/M = A M.sight &= ~SEE_MOBS - M << "Your vision returns to normal." + M << "Your vision returns to \ + normal." wisp.stop_orbit() wisp.loc = src @@ -113,7 +116,8 @@ if(wisp.loc == src) qdel(wisp) else - wisp.visible_message("[wisp] has a sad feeling for a moment, then it passes.") + wisp.visible_message("[wisp] has a sad \ + feeling for a moment, then it passes.") ..() //Wisp Lantern @@ -189,23 +193,19 @@ weaken = 3 var/chain -/obj/item/projectile/hook/fire(setAngle) - if(firer) - chain = firer.Beam(src, icon_state = "chain", time = INFINITY, maxdistance = INFINITY) +/obj/item/ammo_casing/magic/hook/ready_proj(atom/target, mob/living/user, quiet, zone_override = "") ..() + var/obj/item/projectile/hook/P = BB + spawn(1) + P.chain = P.Beam(user,icon_state="chain",icon = 'icons/obj/lavaland/artefacts.dmi',time=1000, maxdistance = 30) /obj/item/projectile/hook/on_hit(atom/target) . = ..() if(isliving(target)) var/mob/living/L = target - if(!L.anchored) - L.visible_message("[L] is snagged by [firer]'s hook!") - L.forceMove(get_turf(firer)) - -/obj/item/projectile/hook/Destroy() - qdel(chain) - return ..() - + L.visible_message("[L] is snagged by [firer]'s hook!") + L.forceMove(get_turf(firer)) + qdel(chain) //Immortality Talisman /obj/item/device/immortality_talisman @@ -213,12 +213,8 @@ desc = "A dread talisman that can render you completely invulnerable." icon = 'icons/obj/lavaland/artefacts.dmi' icon_state = "talisman" - actions_types = list(/datum/action/item_action/immortality) var/cooldown = 0 -/datum/action/item_action/immortality - name = "Immortality" - /obj/item/device/immortality_talisman/Destroy(force) if(force) . = ..() @@ -229,7 +225,7 @@ if(cooldown < world.time) feedback_add_details("immortality_talisman","U") // usage cooldown = world.time + 600 - user.visible_message("[user] vanishes from reality, leaving a a hole in [user.p_their()] place!") + user.visible_message("[user] vanishes from reality, leaving a a hole in their place!") var/obj/effect/immortality_talisman/Z = new(get_turf(src.loc)) Z.name = "hole in reality" Z.desc = "It's shaped an awful lot like [user.name]." @@ -248,6 +244,7 @@ /obj/effect/immortality_talisman icon_state = "blank" icon = 'icons/effects/effects.dmi' + burn_state = LAVA_PROOF var/can_destroy = FALSE /obj/effect/immortality_talisman/attackby() @@ -274,7 +271,7 @@ name = "paradox bag" desc = "Somehow, it's in two places at once." max_combined_w_class = 60 - max_w_class = WEIGHT_CLASS_NORMAL + max_w_class = 3 //External @@ -337,7 +334,11 @@ var/obj/screen/inventory/hand/H = over_object if(!M.unEquip(src)) return - M.put_in_hand(src, H.held_index) + switch(H.slot_id) + if(slot_r_hand) + M.put_in_r_hand(src) + if(slot_l_hand) + M.put_in_l_hand(src) add_fingerprint(usr) @@ -350,7 +351,7 @@ icon_state = "goliath_boat" icon = 'icons/obj/lavaland/dragonboat.dmi' keytype = /obj/item/weapon/oar - resistance_flags = LAVA_PROOF | FIRE_PROOF + burn_state = LAVA_PROOF /obj/vehicle/lavaboat/relaymove(mob/user, direction) var/turf/next = get_step(src, direction) @@ -369,8 +370,8 @@ item_state = "rods" desc = "Not to be confused with the kind Research hassles you for." force = 12 - w_class = WEIGHT_CLASS_NORMAL - resistance_flags = LAVA_PROOF | FIRE_PROOF + w_class = 3 + burn_state = LAVA_PROOF /datum/crafting_recipe/oar name = "goliath bone oar" @@ -469,7 +470,7 @@ if(2) new /obj/item/weapon/lava_staff(src) if(3) - new /obj/item/weapon/spellbook/oneuse/sacredflame(src) + new /obj/item/weapon/spellbook/oneuse/fireball(src) new /obj/item/weapon/gun/magic/wand/fireball(src) if(4) new /obj/item/weapon/dragons_blood(src) @@ -481,7 +482,7 @@ item_state = "spectral" flags = CONDUCT sharpness = IS_SHARP - w_class = WEIGHT_CLASS_BULKY + w_class = 4 force = 1 throwforce = 1 hitsound = 'sound/effects/ghost2.ogg' @@ -509,7 +510,7 @@ return user << "You call out for aid, attempting to summon spirits to your side." - notify_ghosts("[user] is raising [user.p_their()] [src], calling for your help!", + notify_ghosts("[user] is raising their [src], calling for your help!", enter_link="(Click to help)", source = user, action=NOTIFY_ORBIT) @@ -529,16 +530,8 @@ var/turf/T = get_turf(src) var/list/contents = T.GetAllContents() var/mob/dead/observer/current_spirits = list() - var/list/orbiters = list() - for(var/thing in contents) - var/atom/A = thing - if (A.orbiters) - orbiters += A.orbiters - - for(var/thing in orbiters) - var/datum/orbit/O = thing - if (isobserver(O.orbiter)) - var/mob/dead/observer/G = O.orbiter + for(var/mob/dead/observer/G in dead_mob_list) + if(G.orbiting in contents) ghost_counter++ G.invisibility = 0 current_spirits |= G @@ -581,18 +574,14 @@ switch(random) if(1) - user << "Your appearence morphs to that of a very small humanoid ash dragon! You get to look like a freak without the cool abilities." - H.dna.features = list("mcolor" = "A02720", "tail_lizard" = "Dark Tiger", "tail_human" = "None", "snout" = "Sharp", "horns" = "Curled", "ears" = "None", "wings" = "None", "frills" = "None", "spines" = "Long", "body_markings" = "Dark Tiger Body", "legs" = "Digitigrade Legs") - H.eye_color = "fee5a3" - H.set_species(/datum/species/lizard) + user << "Other than tasting terrible, nothing really happens." if(2) user << "Your flesh begins to melt! Miraculously, you seem fine otherwise." H.set_species(/datum/species/skeleton) if(3) - user << "Power courses through you! You can now shift your form at will." - if(user.mind) - var/obj/effect/proc_holder/spell/targeted/shapeshift/dragon/D = new - user.mind.AddSpell(D) + user << "You don't feel so good..." + message_admins("[key_name_admin(user)](FLW) has started transforming into a dragon via dragon's blood.") + H.ForceContractDisease(new /datum/disease/transformation/dragon(0)) if(4) user << "You feel like you could walk straight through lava now." H.weather_immunities |= "lava" @@ -626,18 +615,14 @@ item_state = "staffofstorms" icon = 'icons/obj/guns/magic.dmi' slot_flags = SLOT_BACK - w_class = WEIGHT_CLASS_BULKY + item_state = "staffofstorms" + w_class = 4 force = 25 damtype = BURN - resistance_flags = LAVA_PROOF | FIRE_PROOF | ACID_PROOF + burn_state = LAVA_PROOF hitsound = 'sound/weapons/sear.ogg' var/turf_type = /turf/open/floor/plating/lava/smooth - var/transform_string = "lava" - var/reset_turf_type = /turf/open/floor/plating/asteroid/basalt - var/reset_string = "basalt" - var/create_cooldown = 100 - var/create_delay = 30 - var/reset_cooldown = 50 + var/cooldown = 200 var/timer = 0 var/banned_turfs @@ -654,36 +639,15 @@ return if(target in view(user.client.view, get_turf(user))) + var/turf/T = get_turf(target) + message_admins("[key_name_admin(user)] fired the lava staff at ([get_area(target)] ([T.x], [T.y], [T.z])).") + log_game("[key_name(user)] fired the lava staff at [get_area(target)] ([T.x], [T.y], [T.z]).") - var/turf/open/T = get_turf(target) - if(!istype(T)) - return - if(!istype(T, turf_type)) - var/obj/effect/overlay/temp/lavastaff/L = PoolOrNew(/obj/effect/overlay/temp/lavastaff, T) - L.alpha = 0 - animate(L, alpha = 255, time = create_delay) - user.visible_message("[user] points [src] at [T]!") - timer = world.time + create_delay + 1 - if(do_after(user, create_delay, target = T)) - user.visible_message("[user] turns \the [T] into [transform_string]!") - message_admins("[key_name_admin(user)] fired the lava staff at [get_area(target)]. [ADMIN_COORDJMP(T)]") - log_game("[key_name(user)] fired the lava staff at [get_area(target)] [COORD(T)].") - T.ChangeTurf(turf_type) - timer = world.time + create_cooldown - qdel(L) - else - timer = world.time - qdel(L) - return - else - user.visible_message("[user] turns \the [T] into [reset_string]!") - T.ChangeTurf(reset_turf_type) - timer = world.time + reset_cooldown - playsound(T,'sound/magic/Fireball.ogg', 200, 1) - -/obj/effect/overlay/temp/lavastaff - icon_state = "lavastaff_warn" - duration = 50 + var/turf/open/O = target + user.visible_message("[user] turns \the [O] into lava!") + O.ChangeTurf(turf_type) + playsound(get_turf(src),'sound/magic/Fireball.ogg', 200, 1) + timer = world.time + cooldown ///Bubblegum @@ -710,11 +674,11 @@ var/loot = rand(1,3) switch(loot) if(1) - new /obj/item/mayhem(src) + new /obj/item/weapon/antag_spawner/slaughter_demon(src) if(2) - new /obj/item/blood_contract(src) + new /obj/item/mayhem(src) if(3) - new /obj/item/weapon/gun/magic/staff/spellblade(src) + new /obj/item/blood_contract(src) /obj/item/blood_contract name = "blood contract" @@ -728,7 +692,7 @@ if(used) return used = TRUE - var/choice = input(user,"Who do you want dead?","Choose Your Victim") as null|anything in player_list + var/choice = input(user,"Who do you want dead?","Pick Reinforcement") as null|anything in player_list if(!(isliving(choice))) user << "[choice] is already dead!" @@ -744,7 +708,7 @@ survive.owner = L.mind L.mind.objectives += survive L << "You've been marked for death! Don't let the demons get you!" - L.add_atom_colour("#FF0000", ADMIN_COLOUR_PRIORITY) + L.color = "#FF0000" spawn() var/obj/effect/mine/pickup/bloodbath/B = new(L) B.mineEffect(L) @@ -752,193 +716,7 @@ for(var/mob/living/carbon/human/H in player_list) if(H == L) continue - H << "You have an overwhelming desire to kill [L]. [L.p_they(TRUE)] [L.p_have()] been marked red! Go kill [L.p_them()]!" - H.put_in_hands_or_del(new /obj/item/weapon/kitchen/knife/butcher(H)) + H << "You have an overwhelming desire to kill [L]. They have been marked red! Go kill them!" + H.equip_to_slot_or_del(new /obj/item/weapon/kitchen/knife/butcher(H), slot_l_hand) qdel(src) - -//Hierophant - -/obj/item/weapon/hierophant_staff - name = "Hierophant's staff" - desc = "A large club with intense magic power infused into it." - icon_state = "hierophant_staff" - item_state = "hierophant_staff" - icon = 'icons/obj/guns/magic.dmi' - slot_flags = SLOT_BACK - w_class = WEIGHT_CLASS_BULKY - force = 20 - hitsound = "swing_hit" - //hitsound = 'sound/weapons/sonic_jackhammer.ogg' - actions_types = list(/datum/action/item_action/vortex_recall, /datum/action/item_action/toggle_unfriendly_fire) - var/cooldown_time = 20 //how long the cooldown between non-melee ranged attacks is - var/chaser_cooldown = 101 //how long the cooldown between firing chasers at mobs is - var/chaser_timer = 0 //what our current chaser cooldown is - var/timer = 0 //what our current cooldown is - var/blast_range = 3 //how long the cardinal blast's walls are - var/obj/effect/hierophant/rune //the associated rune we teleport to - var/teleporting = FALSE //if we ARE teleporting - var/friendly_fire_check = FALSE //if the blasts we make will consider our faction against the faction of hit targets - -/obj/item/weapon/hierophant_staff/afterattack(atom/target, mob/user, proximity_flag, click_parameters) - ..() - var/turf/T = get_turf(target) - if(!T || timer > world.time) - return - timer = world.time + CLICK_CD_MELEE //by default, melee attacks only cause melee blasts, and have an accordingly short cooldown - if(proximity_flag) - addtimer(src, "aoe_burst", 0, TIMER_NORMAL, T, user) - add_logs(user, target, "fired 3x3 blast at", src) - else - if(ismineralturf(target) && get_dist(user, target) < 6) //target is minerals, we can hit it(even if we can't see it) - addtimer(src, "cardinal_blasts", 0, TIMER_NORMAL, T, user) - timer = world.time + cooldown_time - else if(target in view(5, get_turf(user))) //if the target is in view, hit it - timer = world.time + cooldown_time - if(isliving(target) && chaser_timer <= world.time) //living and chasers off cooldown? fire one! - chaser_timer = world.time + chaser_cooldown - PoolOrNew(/obj/effect/overlay/temp/hierophant/chaser, list(get_turf(user), user, target, 1.5, friendly_fire_check)) - add_logs(user, target, "fired a chaser at", src) - else - addtimer(src, "cardinal_blasts", 0, TIMER_NORMAL, T, user) //otherwise, just do cardinal blast - add_logs(user, target, "fired cardinal blast at", src) - else - user << "That target is out of range!" //too far away - -/obj/item/weapon/hierophant_staff/ui_action_click(mob/user, action) - if(istype(action, /datum/action/item_action/toggle_unfriendly_fire)) //toggle friendly fire... - friendly_fire_check = !friendly_fire_check - user << "You toggle friendly fire [friendly_fire_check ? "off":"on"]!" - return - if(!user.is_holding(src)) //you need to hold the staff to teleport - user << "You need to hold the staff in your hands to [rune ? "teleport with it":"create a rune"]!" - return - if(!rune) - if(isturf(user.loc)) - user.visible_message("[user] holds [src] carefully in front of [user.p_them()], moving it in a strange pattern...", \ - "You start creating a hierophant rune to teleport to...") - timer = world.time + 51 - if(do_after(user, 50, target = user)) - var/turf/T = get_turf(user) - playsound(T,'sound/magic/Blind.ogg', 200, 1, -4) - PoolOrNew(/obj/effect/overlay/temp/hierophant/telegraph/teleport, list(T, user)) - var/obj/effect/hierophant/H = new/obj/effect/hierophant(T) - rune = H - user.update_action_buttons_icon() - user.visible_message("[user] creates a strange rune beneath [user.p_them()]!", \ - "You create a hierophant rune, which you can teleport yourself and any allies to at any time!\n\ - You can remove the rune to place a new one by striking it with the staff.") - else - timer = world.time - else - user << "You need to be on solid ground to produce a rune!" - return - if(get_dist(user, rune) <= 2) //rune too close abort - user << "You are too close to the rune to teleport to it!" - return - if(is_blocked_turf(get_turf(rune))) - user << "The rune is blocked by something, preventing teleportation!" - return - teleporting = TRUE //start channel - user.update_action_buttons_icon() - user.visible_message("[user] starts to glow faintly...") - timer = world.time + 50 - if(do_after(user, 40, target = user) && rune) - var/turf/T = get_turf(rune) - var/turf/source = get_turf(user) - if(is_blocked_turf(T)) - teleporting = FALSE - user << "The rune is blocked by something, preventing teleportation!" - user.update_action_buttons_icon() - return - PoolOrNew(/obj/effect/overlay/temp/hierophant/telegraph, list(T, user)) - PoolOrNew(/obj/effect/overlay/temp/hierophant/telegraph, list(source, user)) - playsound(T,'sound/magic/blink.ogg', 200, 1) - //playsound(T,'sound/magic/Wand_Teleport.ogg', 200, 1) - playsound(source,'sound/magic/blink.ogg', 200, 1) - //playsound(source,'sound/machines/AirlockOpen.ogg', 200, 1) - if(!do_after(user, 3, target = user) || !rune) //no walking away shitlord - teleporting = FALSE - if(user) - user.update_action_buttons_icon() - return - if(is_blocked_turf(T)) - teleporting = FALSE - user << "The rune is blocked by something, preventing teleportation!" - user.update_action_buttons_icon() - return - add_logs(user, rune, "teleported self from ([source.x],[source.y],[source.z]) to") - PoolOrNew(/obj/effect/overlay/temp/hierophant/telegraph/teleport, list(T, user)) - PoolOrNew(/obj/effect/overlay/temp/hierophant/telegraph/teleport, list(source, user)) - for(var/t in RANGE_TURFS(1, T)) - var/obj/effect/overlay/temp/hierophant/blast/B = PoolOrNew(/obj/effect/overlay/temp/hierophant/blast, list(t, user, TRUE)) //blasts produced will not hurt allies - B.damage = 30 - for(var/t in RANGE_TURFS(1, source)) - var/obj/effect/overlay/temp/hierophant/blast/B = PoolOrNew(/obj/effect/overlay/temp/hierophant/blast, list(t, user, TRUE)) //but absolutely will hurt enemies - B.damage = 30 - for(var/mob/living/L in range(1, source)) - addtimer(src, "teleport_mob", 0, TIMER_NORMAL, source, L, T, user) //regardless, take all mobs near us along - sleep(6) //at this point the blasts detonate - else - timer = world.time - teleporting = FALSE - if(user) - user.update_action_buttons_icon() - -/obj/item/weapon/hierophant_staff/proc/teleport_mob(turf/source, mob/M, turf/target, mob/user) - var/turf/turf_to_teleport_to = get_step(target, get_dir(source, M)) //get position relative to caster - if(!turf_to_teleport_to || is_blocked_turf(turf_to_teleport_to)) - return - animate(M, alpha = 0, time = 2, easing = EASE_OUT) //fade out - sleep(1) - if(!M) - return - M.visible_message("[M] fades out!") - sleep(2) - if(!M) - return - M.forceMove(turf_to_teleport_to) - sleep(1) - if(!M) - return - animate(M, alpha = 255, time = 2, easing = EASE_IN) //fade IN - sleep(1) - if(!M) - return - M.visible_message("[M] fades in!") - if(user != M) - add_logs(user, M, "teleported", null, "from ([source.x],[source.y],[source.z])") - -/obj/item/weapon/hierophant_staff/proc/cardinal_blasts(turf/T, mob/living/user) //fire cardinal cross blasts with a delay - if(!T) - return - PoolOrNew(/obj/effect/overlay/temp/hierophant/telegraph/cardinal, list(T, user)) - playsound(T,'sound/magic/blink.ogg', 200, 1) - //playsound(T,'sound/effects/bin_close.ogg', 200, 1) - sleep(2) - PoolOrNew(/obj/effect/overlay/temp/hierophant/blast, list(T, user, friendly_fire_check)) - for(var/d in cardinal) - addtimer(src, "blast_wall", 0, TIMER_NORMAL, T, d, user) - -/obj/item/weapon/hierophant_staff/proc/blast_wall(turf/T, dir, mob/living/user) //make a wall of blasts blast_range tiles long - if(!T) - return - var/range = blast_range - var/turf/previousturf = T - var/turf/J = get_step(previousturf, dir) - for(var/i in 1 to range) - if(!J) - return - PoolOrNew(/obj/effect/overlay/temp/hierophant/blast, list(J, user, friendly_fire_check)) - previousturf = J - J = get_step(previousturf, dir) - -/obj/item/weapon/hierophant_staff/proc/aoe_burst(turf/T, mob/living/user) //make a 3x3 blast around a target - if(!T) - return - PoolOrNew(/obj/effect/overlay/temp/hierophant/telegraph, list(T, user)) - playsound(T,'sound/magic/blink.ogg', 200, 1) - //playsound(T,'sound/effects/bin_close.ogg', 200, 1) - sleep(2) - for(var/t in RANGE_TURFS(1, T)) - PoolOrNew(/obj/effect/overlay/temp/hierophant/blast, list(t, user, friendly_fire_check)) diff --git a/code/modules/mining/lavaland/ruins/gym.dm b/code/modules/mining/lavaland/ruins/gym.dm index 3c8832ffee..b222b29baa 100644 --- a/code/modules/mining/lavaland/ruins/gym.dm +++ b/code/modules/mining/lavaland/ruins/gym.dm @@ -22,7 +22,7 @@ /obj/structure/stacklifter/attack_hand(mob/user as mob) if(in_use) - user << "It's already in use - wait a bit." + user << "Its already in use - wait a bit." return else in_use = 1 @@ -60,7 +60,7 @@ /obj/structure/weightlifter/attack_hand(mob/user as mob) if(in_use) - user << "It's already in use - wait a bit." + user << "Its already in use - wait a bit." return else in_use = 1 diff --git a/code/modules/mining/machine_processing.dm b/code/modules/mining/machine_processing.dm index 8b4903259e..8370e3b864 100644 --- a/code/modules/mining/machine_processing.dm +++ b/code/modules/mining/machine_processing.dm @@ -26,93 +26,83 @@ if(machine.ore_iron || machine.ore_glass || machine.ore_plasma || machine.ore_uranium || machine.ore_gold || machine.ore_silver || machine.ore_diamond || machine.ore_clown || machine.ore_adamantine) if(machine.ore_iron) if (machine.selected_iron==1) - dat += "Smelting " + dat += text("Smelting ") else - dat += "Not smelting " - dat += "Iron: [machine.ore_iron]
    " + dat += text("Not smelting ") + dat += text("Iron: [machine.ore_iron]
    ") else machine.selected_iron = 0 //sand - glass if(machine.ore_glass) if (machine.selected_glass==1) - dat += "Smelting " + dat += text("Smelting ") else - dat += "Not smelting " - dat += "Sand: [machine.ore_glass]
    " + dat += text("Not smelting ") + dat += text("Sand: [machine.ore_glass]
    ") else machine.selected_glass = 0 //plasma if(machine.ore_plasma) if (machine.selected_plasma==1) - dat += "Smelting " + dat += text("Smelting ") else - dat += "Not smelting " - dat += "Plasma: [machine.ore_plasma]
    " + dat += text("Not smelting ") + dat += text("Plasma: [machine.ore_plasma]
    ") else machine.selected_plasma = 0 //uranium if(machine.ore_uranium) if (machine.selected_uranium==1) - dat += "Smelting " + dat += text("Smelting ") else - dat += "Not smelting " - dat += "Uranium: [machine.ore_uranium]
    " + dat += text("Not smelting ") + dat += text("Uranium: [machine.ore_uranium]
    ") else machine.selected_uranium = 0 //gold if(machine.ore_gold) if (machine.selected_gold==1) - dat += "Smelting " + dat += text("Smelting ") else - dat += "Not smelting " - dat += "Gold: [machine.ore_gold]
    " + dat += text("Not smelting ") + dat += text("Gold: [machine.ore_gold]
    ") else machine.selected_gold = 0 //silver if(machine.ore_silver) if (machine.selected_silver==1) - dat += "Smelting " + dat += text("Smelting ") else - dat += "Not smelting " - dat += "Silver: [machine.ore_silver]
    " + dat += text("Not smelting ") + dat += text("Silver: [machine.ore_silver]
    ") else machine.selected_silver = 0 //diamond if(machine.ore_diamond) if (machine.selected_diamond==1) - dat += "Smelting " + dat += text("Smelting ") else - dat += "Not smelting " - dat += "Diamond: [machine.ore_diamond]
    " + dat += text("Not smelting ") + dat += text("Diamond: [machine.ore_diamond]
    ") else machine.selected_diamond = 0 //bananium if(machine.ore_clown) if (machine.selected_clown==1) - dat += "Smelting " + dat += text("Smelting ") else - dat += "Not smelting " - dat += "Bananium: [machine.ore_clown]
    " + dat += text("Not smelting ") + dat += text("Bananium: [machine.ore_clown]
    ") else machine.selected_clown = 0 - //titanium - if(machine.ore_titanium) - if (machine.selected_titanium==1) - dat += "Smelting " - else - dat += "Not smelting " - dat += "Titanium: [machine.ore_titanium]
    " - else - machine.selected_titanium = 0 - //On or off dat += text("Machine is currently ") @@ -124,7 +114,7 @@ dat+="---No Materials Loaded---" - user << browse(dat, "window=console_processing_unit") + user << browse("[dat]", "window=console_processing_unit") @@ -173,11 +163,6 @@ machine.selected_clown = 1 else machine.selected_clown = 0 - if(href_list["sel_titanium"]) - if (href_list["sel_titanium"] == "yes") - machine.selected_titanium = 1 - else - machine.selected_titanium = 0 if(href_list["set_on"]) if (href_list["set_on"] == "on") machine.on = 1 @@ -205,7 +190,6 @@ var/ore_iron = 0; var/ore_clown = 0; var/ore_adamantine = 0; - var/ore_titanium = 0; var/selected_gold = 0 var/selected_silver = 0 var/selected_diamond = 0 @@ -214,102 +198,86 @@ var/selected_uranium = 0 var/selected_iron = 0 var/selected_clown = 0 - var/selected_titanium = 0 var/on = 0 //0 = off, 1 =... oh you know! /obj/machinery/mineral/processing_unit/process() - for(var/i in 1 to 10) + var/i + for (i = 0; i < 10; i++) if (on) - if (selected_glass && !selected_gold && !selected_silver && !selected_diamond && !selected_plasma && !selected_uranium && !selected_iron && !selected_clown && !selected_titanium) + if (selected_glass == 1 && selected_gold == 0 && selected_silver == 0 && selected_diamond == 0 && selected_plasma == 0 && selected_uranium == 0 && selected_iron == 0 && selected_clown == 0) if (ore_glass > 0) - ore_glass-- + ore_glass--; generate_mineral(/obj/item/stack/sheet/glass) else on = 0 continue - if (selected_glass && !selected_gold && !selected_silver && !selected_diamond && !selected_plasma && !selected_uranium && selected_iron && !selected_clown && !selected_titanium) + if (selected_glass == 1 && selected_gold == 0 && selected_silver == 0 && selected_diamond == 0 && selected_plasma == 0 && selected_uranium == 0 && selected_iron == 1 && selected_clown == 0) if (ore_glass > 0 && ore_iron > 0) - ore_glass-- - ore_iron-- + ore_glass--; + ore_iron--; generate_mineral(/obj/item/stack/sheet/rglass) else on = 0 continue - if (!selected_glass && selected_gold && !selected_silver && !selected_diamond && !selected_plasma && !selected_uranium && !selected_iron && !selected_clown && !selected_titanium) + if (selected_glass == 0 && selected_gold == 1 && selected_silver == 0 && selected_diamond == 0 && selected_plasma == 0 && selected_uranium == 0 && selected_iron == 0 && selected_clown == 0) if (ore_gold > 0) - ore_gold-- + ore_gold--; generate_mineral(/obj/item/stack/sheet/mineral/gold) else on = 0 continue - if (!selected_glass && !selected_gold && selected_silver && !selected_diamond && !selected_plasma && !selected_uranium && !selected_iron && !selected_clown && !selected_titanium) + if (selected_glass == 0 && selected_gold == 0 && selected_silver == 1 && selected_diamond == 0 && selected_plasma == 0 && selected_uranium == 0 && selected_iron == 0 && selected_clown == 0) if (ore_silver > 0) - ore_silver-- + ore_silver--; generate_mineral(/obj/item/stack/sheet/mineral/silver) else on = 0 continue - if (!selected_glass && !selected_gold && !selected_silver && selected_diamond && !selected_plasma && !selected_uranium && !selected_iron && !selected_clown && !selected_titanium) + if (selected_glass == 0 && selected_gold == 0 && selected_silver == 0 && selected_diamond == 1 && selected_plasma == 0 && selected_uranium == 0 && selected_iron == 0 && selected_clown == 0) if (ore_diamond > 0) - ore_diamond-- + ore_diamond--; generate_mineral(/obj/item/stack/sheet/mineral/diamond) else on = 0 continue - if (!selected_glass && !selected_gold && !selected_silver && !selected_diamond && selected_plasma && !selected_uranium && !selected_iron && !selected_clown && !selected_titanium) + if (selected_glass == 0 && selected_gold == 0 && selected_silver == 0 && selected_diamond == 0 && selected_plasma == 1 && selected_uranium == 0 && selected_iron == 0 && selected_clown == 0) if (ore_plasma > 0) - ore_plasma-- + ore_plasma--; generate_mineral(/obj/item/stack/sheet/mineral/plasma) else on = 0 continue - if (!selected_glass && !selected_gold && !selected_silver && !selected_diamond && !selected_plasma && selected_uranium && !selected_iron && !selected_clown && !selected_titanium) + if (selected_glass == 0 && selected_gold == 0 && selected_silver == 0 && selected_diamond == 0 && selected_plasma == 0 && selected_uranium == 1 && selected_iron == 0 && selected_clown == 0) if (ore_uranium > 0) - ore_uranium-- + ore_uranium--; generate_mineral(/obj/item/stack/sheet/mineral/uranium) else on = 0 continue - if (!selected_glass && !selected_gold && !selected_silver && !selected_diamond && !selected_plasma && !selected_uranium && selected_iron && !selected_clown && !selected_titanium) + if (selected_glass == 0 && selected_gold == 0 && selected_silver == 0 && selected_diamond == 0 && selected_plasma == 0 && selected_uranium == 0 && selected_iron == 1 && selected_clown == 0) if (ore_iron > 0) - ore_iron-- + ore_iron--; generate_mineral(/obj/item/stack/sheet/metal) else on = 0 continue - if (!selected_glass && !selected_gold && !selected_silver && !selected_diamond && selected_plasma && !selected_uranium && selected_iron && !selected_clown && !selected_titanium) + if (selected_glass == 0 && selected_gold == 0 && selected_silver == 0 && selected_diamond == 0 && selected_plasma == 1 && selected_uranium == 0 && selected_iron == 1 && selected_clown == 0) if (ore_iron > 0 && ore_plasma > 0) - ore_iron-- - ore_plasma-- + ore_iron--; + ore_plasma--; generate_mineral(/obj/item/stack/sheet/plasteel) else on = 0 continue - if (!selected_glass && !selected_gold && !selected_silver && !selected_diamond && !selected_plasma && !selected_uranium && !selected_iron && selected_clown && !selected_titanium) + if (selected_glass == 0 && selected_gold == 0 && selected_silver == 0 && selected_diamond == 0 && selected_plasma == 0 && selected_uranium == 0 && selected_iron == 0 && selected_clown == 1) if (ore_clown > 0) - ore_clown-- + ore_clown--; generate_mineral(/obj/item/stack/sheet/mineral/bananium) else on = 0 continue - if (!selected_glass && !selected_gold && !selected_silver && !selected_diamond && !selected_plasma && !selected_uranium && !selected_iron && !selected_clown && selected_titanium) - if (ore_titanium > 0) - ore_titanium-- - generate_mineral(/obj/item/stack/sheet/mineral/titanium) - else - on = 0 - continue - if (!selected_glass && !selected_gold && !selected_silver && !selected_diamond && selected_plasma && !selected_uranium && !selected_iron && !selected_clown && selected_titanium) - if (ore_titanium > 0) - ore_titanium-- - ore_plasma-- - generate_mineral(/obj/item/stack/sheet/mineral/plastitanium) - else - on = 0 - continue //THESE TWO ARE CODED FOR URIST TO USE WHEN HE GETS AROUND TO IT. //They were coded on 18 Feb 2012. If you're reading this in 2015, then firstly congratulations on the world not ending on 21 Dec 2012 and secondly, Urist is apparently VERY lazy. ~Errorage - //Even in the dark year of 2016, where /tg/ is dead, Urist still hasn't finished this -Bawhoppennn /*if (selected_glass == 0 && selected_gold == 0 && selected_silver == 0 && selected_diamond == 1 && selected_plasma == 0 && selected_uranium == 1 && selected_iron == 0 && selected_clown == 0) if (ore_uranium >= 2 && ore_diamond >= 1) ore_uranium -= 2 @@ -427,4 +395,4 @@ /obj/machinery/mineral/processing_unit/proc/generate_mineral(P) var/O = new P(src) - unload_mineral(O) + unload_mineral(O) \ No newline at end of file diff --git a/code/modules/mining/machine_redemption.dm b/code/modules/mining/machine_redemption.dm index c8606b07e1..fbd689df89 100644 --- a/code/modules/mining/machine_redemption.dm +++ b/code/modules/mining/machine_redemption.dm @@ -19,7 +19,7 @@ var/ore_pickup_rate = 15 var/sheet_per_ore = 1 var/point_upgrade = 1 - var/list/ore_values = list(("sand" = 1), ("iron" = 1), ("plasma" = 15), ("silver" = 16), ("gold" = 18), ("titanium" = 30), ("uranium" = 30), ("diamond" = 50), ("bluespace crystal" = 50), ("bananium" = 60)) + var/list/ore_values = list(("sand" = 1), ("iron" = 1), ("plasma" = 15), ("silver" = 16), ("gold" = 18), ("uranium" = 30), ("diamond" = 50), ("bananium" = 60)) speed_process = 1 /obj/machinery/mineral/ore_redemption/New() @@ -30,7 +30,7 @@ /obj/item/weapon/circuitboard/machine/ore_redemption name = "circuit board (Ore Redemption)" build_path = /obj/machinery/mineral/ore_redemption - origin_tech = "programming=1;engineering=2" + origin_tech = "programming=2;engineering=2;plasmatech=3" req_components = list( /obj/item/weapon/stock_parts/console_screen = 1, /obj/item/weapon/stock_parts/matter_bin = 1, @@ -59,6 +59,11 @@ var/obj/item/stack/sheet/s = new processed_sheet(src,0) s.amount = 0 stack_list[processed_sheet] = s + if(s.name != "glass" && s.name != "metal") //we can get these from cargo anyway + var/msg = "[capitalize(s.name)] sheets are now available in the Cargo Bay." + for(var/obj/machinery/requests_console/D in allConsoles) + if(D.department == "Science" || D.department == "Robotics" || D.department == "Research Director's Desk" || (D.department == "Chemistry" && (s.name == "uranium" || s.name == "solid plasma"))) + D.createmessage("Ore Redemption Machine", "New minerals available!", msg, 1, 0) var/obj/item/stack/sheet/storage = stack_list[processed_sheet] storage.amount += sheet_per_ore //Stack the sheets O.loc = null //Let the old sheet... @@ -88,28 +93,8 @@ else process_sheet(O) i++ - if(i > 0 && z == ZLEVEL_STATION) - var/area/orm_area = get_area(src) - var/msg = "Now available in [orm_area.map_name]:" - for(var/s in stack_list) // Making an announcement for cargo - var/obj/item/stack/sheet/mats = stack_list[s] - msg += "\n[capitalize(mats.name)]: [mats.amount] sheets" - for(var/obj/machinery/requests_console/D in allConsoles) - if(D.department == "Science" || D.department == "Robotics" || D.department == "Research Director's Desk" || D.department == "Chemistry" || D.department == "Bar") - D.createmessage("Ore Redemption Machine", "New minerals available!", msg, 1, 0) /obj/machinery/mineral/ore_redemption/attackby(obj/item/weapon/W, mob/user, params) - if (!powered()) - return - if(istype(W,/obj/item/weapon/card/id)) - var/obj/item/weapon/card/id/I = user.get_active_held_item() - if(istype(I) && !istype(inserted_id)) - if(!user.drop_item()) - return - I.forceMove(src) - inserted_id = I - interact(user) - return if(exchange_parts(user, W)) return @@ -124,9 +109,20 @@ if(default_deconstruction_crowbar(W)) return + if (!powered()) + return + if(istype(W,/obj/item/weapon/card/id)) + var/obj/item/weapon/card/id/I = user.get_active_hand() + if(istype(I) && !istype(inserted_id)) + if(!user.drop_item()) + return + I.loc = src + inserted_id = I + interact(user) + return return ..() -/obj/machinery/mineral/ore_redemption/on_deconstruction() +/obj/machinery/mineral/ore_redemption/deconstruction() empty_content() /obj/machinery/mineral/ore_redemption/proc/SmeltMineral(obj/item/weapon/ore/O) @@ -162,22 +158,12 @@ dat += "
    " //just looks nicer dat += text("[capitalize(s.name)]: [s.amount] Release
    ") - var/obj/item/stack/sheet/metalstack - if(/obj/item/stack/sheet/metal in stack_list) - metalstack = stack_list[/obj/item/stack/sheet/metal] + if((/obj/item/stack/sheet/metal in stack_list) && (/obj/item/stack/sheet/mineral/plasma in stack_list)) + var/obj/item/stack/sheet/metalstack = stack_list[/obj/item/stack/sheet/metal] + var/obj/item/stack/sheet/plasmastack = stack_list[/obj/item/stack/sheet/mineral/plasma] + if(min(metalstack.amount, plasmastack.amount)) + dat += text("Plasteel Alloy (Metal + Plasma): Smelt
    ") - var/obj/item/stack/sheet/plasmastack - if((/obj/item/stack/sheet/mineral/plasma in stack_list)) - plasmastack = stack_list[/obj/item/stack/sheet/mineral/plasma] - - var/obj/item/stack/sheet/mineral/titaniumstack - if((/obj/item/stack/sheet/mineral/titanium in stack_list)) - titaniumstack = stack_list[/obj/item/stack/sheet/mineral/titanium] - - if(metalstack && plasmastack && min(metalstack.amount, plasmastack.amount)) - dat += text("Plasteel Alloy (Metal + Plasma): Smelt
    ") - if(titaniumstack && plasmastack && min(titaniumstack.amount, plasmastack.amount)) - dat += text("Plastitanium Alloy (Titanium + Plasma): Smelt
    ") dat += text("
    Mineral Value List:
    [get_ore_values()]
    ") var/datum/browser/popup = new(user, "console_stacking_machine", "Ore Redemption Machine", 400, 500) @@ -209,7 +195,7 @@ else usr << "Required access not found." else if(href_list["choice"] == "insert") - var/obj/item/weapon/card/id/I = usr.get_active_held_item() + var/obj/item/weapon/card/id/I = usr.get_active_hand() if(istype(I)) if(!usr.drop_item()) return @@ -230,22 +216,20 @@ stack_list -= text2path(href_list["release"]) else usr << "Required access not found." - if(href_list["alloytype1"] && href_list["alloytype2"] && href_list["alloytypeout"]) - var/alloytype1 = text2path(href_list["alloytype1"]) - var/alloytype2 = text2path(href_list["alloytype2"]) - var/alloytypeout = text2path(href_list["alloytypeout"]) + if(href_list["plasteel"]) if(check_access(inserted_id) || allowed(usr)) - if(!(alloytype1 in stack_list)) return - if(!(alloytype2 in stack_list)) return - var/obj/item/stack/sheet/stack1 = stack_list[alloytype1] - var/obj/item/stack/sheet/stack2 = stack_list[alloytype2] + if(!(/obj/item/stack/sheet/metal in stack_list)) return + if(!(/obj/item/stack/sheet/mineral/plasma in stack_list)) return + var/obj/item/stack/sheet/metalstack = stack_list[/obj/item/stack/sheet/metal] + var/obj/item/stack/sheet/plasmastack = stack_list[/obj/item/stack/sheet/mineral/plasma] + var/desired = input("How much?", "How much would you like to smelt?", 1) as num - var/obj/item/stack/sheet/alloyout = new alloytypeout - alloyout.amount = round(min(desired,50,stack1.amount,stack2.amount)) - if(alloyout.amount >= 1) - stack1.amount -= alloyout.amount - stack2.amount -= alloyout.amount - unload_mineral(alloyout) + var/obj/item/stack/sheet/plasteel/plasteelout = new + plasteelout.amount = round(min(desired,50,metalstack.amount,plasmastack.amount)) + if(plasteelout.amount >= 1) + metalstack.amount -= plasteelout.amount + plasmastack.amount -= plasteelout.amount + unload_mineral(plasteelout) else usr << "Required access not found." updateUsrDialog() @@ -255,7 +239,14 @@ var/datum/effect_system/spark_spread/s = new /datum/effect_system/spark_spread s.set_up(5, 1, src) s.start() - ..() + if(severity == 1) + if(prob(50)) + empty_content() + qdel(src) + else if(severity == 2) + if(prob(25)) + empty_content() + qdel(src) //empty the redemption machine by stacks of at most max_amount (50 at this time) size /obj/machinery/mineral/ore_redemption/proc/empty_content() @@ -268,7 +259,6 @@ s.use(s.max_amount) s.loc = loc s.layer = initial(s.layer) - s.plane = initial(s.plane) /obj/machinery/mineral/ore_redemption/power_change() ..() diff --git a/code/modules/mining/machine_stacking.dm b/code/modules/mining/machine_stacking.dm index c148f83d17..fc7e1e1357 100644 --- a/code/modules/mining/machine_stacking.dm +++ b/code/modules/mining/machine_stacking.dm @@ -33,7 +33,7 @@ dat += text("
    Stacking: [machine.stack_amt]

    ") - user << browse(dat, "window=console_stacking_machine") + user << browse("[dat]", "window=console_stacking_machine") return diff --git a/code/modules/mining/machine_vending.dm b/code/modules/mining/machine_vending.dm index b868feeb44..59a6229c4e 100644 --- a/code/modules/mining/machine_vending.dm +++ b/code/modules/mining/machine_vending.dm @@ -8,54 +8,49 @@ density = 1 anchored = 1 var/obj/item/weapon/card/id/inserted_id - var/list/prize_list = list( //if you add something to this, please, for the love of god, use tabs and not spaces. - new /datum/data/mining_equipment("Stimpack", /obj/item/weapon/reagent_containers/hypospray/medipen/stimpack, 50), - new /datum/data/mining_equipment("Stimpack Bundle", /obj/item/weapon/storage/box/medipens/utility, 200), - new /datum/data/mining_equipment("Whiskey", /obj/item/weapon/reagent_containers/food/drinks/bottle/whiskey, 100), - new /datum/data/mining_equipment("Absinthe", /obj/item/weapon/reagent_containers/food/drinks/bottle/absinthe/premium,100), - new /datum/data/mining_equipment("Cigar", /obj/item/clothing/mask/cigarette/cigar/havana, 150), - new /datum/data/mining_equipment("Soap", /obj/item/weapon/soap/nanotrasen, 200), - new /datum/data/mining_equipment("Laser Pointer", /obj/item/device/laser_pointer, 300), - new /datum/data/mining_equipment("Alien Toy", /obj/item/clothing/mask/facehugger/toy, 300), - new /datum/data/mining_equipment("Advanced Scanner", /obj/item/device/t_scanner/adv_mining_scanner, 800), - new /datum/data/mining_equipment("Stabilizing Serum", /obj/item/weapon/hivelordstabilizer, 400), - new /datum/data/mining_equipment("Fulton Beacon", /obj/item/fulton_core, 400), - new /datum/data/mining_equipment("Shelter Capsule", /obj/item/weapon/survivalcapsule, 400), - new /datum/data/mining_equipment("GAR scanners", /obj/item/clothing/glasses/meson/gar, 500), + var/list/prize_list = list( + new /datum/data/mining_equipment("Stimpack", /obj/item/weapon/reagent_containers/hypospray/medipen/stimpack, 50), + new /datum/data/mining_equipment("Stimpack Bundle", /obj/item/weapon/storage/box/medipens/utility, 200), + new /datum/data/mining_equipment("Whiskey", /obj/item/weapon/reagent_containers/food/drinks/bottle/whiskey, 100), + new /datum/data/mining_equipment("Absinthe", /obj/item/weapon/reagent_containers/food/drinks/bottle/absinthe/premium,100), + new /datum/data/mining_equipment("Cigar", /obj/item/clothing/mask/cigarette/cigar/havana, 150), + new /datum/data/mining_equipment("Soap", /obj/item/weapon/soap/nanotrasen, 200), + new /datum/data/mining_equipment("Survival knife", /obj/item/weapon/kitchen/knife/combat/survival, 300), + new /datum/data/mining_equipment("Laser Pointer", /obj/item/device/laser_pointer, 300), + new /datum/data/mining_equipment("Alien Toy", /obj/item/clothing/mask/facehugger/toy, 300), + new /datum/data/mining_equipment("Advanced Scanner", /obj/item/device/t_scanner/adv_mining_scanner, 800), + new /datum/data/mining_equipment("Stabilizing Serum", /obj/item/weapon/hivelordstabilizer , 400), + new /datum/data/mining_equipment("Fulton Beacon", /obj/item/fulton_core , 400), + new /datum/data/mining_equipment("Shelter Capsule", /obj/item/weapon/survivalcapsule , 400), + new /datum/data/mining_equipment("Motion Tracker", /obj/item/device/t_scanner/motionTracker , 400), + new /datum/data/mining_equipment("GAR scanners", /obj/item/clothing/glasses/meson/gar, 500), new /datum/data/mining_equipment("Explorer's Webbing", /obj/item/weapon/storage/belt/mining, 500), - new /datum/data/mining_equipment("Survival Medipen", /obj/item/weapon/reagent_containers/hypospray/medipen/survival, 500), - new /datum/data/mining_equipment("Brute First-Aid Kit", /obj/item/weapon/storage/firstaid/brute, 600), - new /datum/data/mining_equipment("Tracking Implant Kit",/obj/item/weapon/storage/box/minertracker, 600), - new /datum/data/mining_equipment("Jaunter", /obj/item/device/wormhole_jaunter, 750), - new /datum/data/mining_equipment("Kinetic Crusher", /obj/item/weapon/twohanded/required/mining_hammer, 750), - new /datum/data/mining_equipment("Kinetic Accelerator", /obj/item/weapon/gun/energy/kinetic_accelerator, 750), - new /datum/data/mining_equipment("Resonator", /obj/item/weapon/resonator, 800), - new /datum/data/mining_equipment("Fulton Pack", /obj/item/weapon/extraction_pack, 1000), - new /datum/data/mining_equipment("Lazarus Injector", /obj/item/weapon/lazarus_injector, 1000), - new /datum/data/mining_equipment("Silver Pickaxe", /obj/item/weapon/pickaxe/silver, 1000), - new /datum/data/mining_equipment("Jetpack Upgrade", /obj/item/weapon/tank/jetpack/suit, 2000), - new /datum/data/mining_equipment("Space Cash", /obj/item/stack/spacecash/c1000, 2000), - new /datum/data/mining_equipment("Mining Hardsuit", /obj/item/clothing/suit/space/hardsuit/mining, 2000), - new /datum/data/mining_equipment("Diamond Pickaxe", /obj/item/weapon/pickaxe/diamond, 2000), - new /datum/data/mining_equipment("Super Resonator", /obj/item/weapon/resonator/upgraded, 2500), - new /datum/data/mining_equipment("KA White Tracer Rounds", /obj/item/borg/upgrade/modkit/tracer, 100), - new /datum/data/mining_equipment("KA Adjustable Tracer Rounds", /obj/item/borg/upgrade/modkit/tracer/adjustable, 150), - new /datum/data/mining_equipment("KA Super Chassis", /obj/item/borg/upgrade/modkit/chassis_mod, 250), - new /datum/data/mining_equipment("KA Hyper Chassis", /obj/item/borg/upgrade/modkit/chassis_mod/orange, 300), - new /datum/data/mining_equipment("KA Range Increase", /obj/item/borg/upgrade/modkit/range, 1000), - new /datum/data/mining_equipment("KA Damage Increase", /obj/item/borg/upgrade/modkit/damage, 1000), - new /datum/data/mining_equipment("KA Cooldown Decrease",/obj/item/borg/upgrade/modkit/cooldown, 1000), - new /datum/data/mining_equipment("KA AoE Damage", /obj/item/borg/upgrade/modkit/aoe/mobs, 2000), - new /datum/data/mining_equipment("Point Transfer Card", /obj/item/weapon/card/mining_point_card, 500), - new /datum/data/mining_equipment("Mining Drone", /mob/living/simple_animal/hostile/mining_drone, 800), - new /datum/data/mining_equipment("Drone Melee Upgrade", /obj/item/device/mine_bot_ugprade, 400), - new /datum/data/mining_equipment("Drone Health Upgrade",/obj/item/device/mine_bot_ugprade/health, 400), - new /datum/data/mining_equipment("Drone Ranged Upgrade",/obj/item/device/mine_bot_ugprade/cooldown, 600), - new /datum/data/mining_equipment("Drone AI Upgrade", /obj/item/slimepotion/sentience/mining, 1000), - new /datum/data/mining_equipment("Jump Boots", /obj/item/clothing/shoes/bhop, 2500), + new /datum/data/mining_equipment("Survival Medipen", /obj/item/weapon/reagent_containers/hypospray/medipen/survival, 600), + new /datum/data/mining_equipment("Brute First-Aid Kit", /obj/item/weapon/storage/firstaid/brute, 600), + new /datum/data/mining_equipment("Tracking Implant Kit",/obj/item/weapon/storage/box/minertracker, 600), + new /datum/data/mining_equipment("Jaunter", /obj/item/device/wormhole_jaunter, 750), + new /datum/data/mining_equipment("Kinetic Crusher", /obj/item/weapon/twohanded/required/mining_hammer, 750), + new /datum/data/mining_equipment("Kinetic Accelerator", /obj/item/weapon/gun/energy/kinetic_accelerator, 750), + new /datum/data/mining_equipment("Resonator", /obj/item/weapon/resonator, 800), + new /datum/data/mining_equipment("whetstone", /obj/item/weapon/sharpener, 1000), + new /datum/data/mining_equipment("Survival Medipen Bundle", /obj/item/weapon/storage/box/medipens/utility1, 2000), + new /datum/data/mining_equipment("Fulton Pack", /obj/item/weapon/extraction_pack, 1000), + new /datum/data/mining_equipment("Lazarus Injector", /obj/item/weapon/lazarus_injector, 1000), + new /datum/data/mining_equipment("Silver Pickaxe", /obj/item/weapon/pickaxe/silver, 1000), + new /datum/data/mining_equipment("Jetpack Upgrade", /obj/item/hardsuit_jetpack, 2000), + new /datum/data/mining_equipment("Space Cash", /obj/item/stack/spacecash/c1000, 2000), + new /datum/data/mining_equipment("Mining Hardsuit", /obj/item/clothing/suit/space/hardsuit/mining, 2000), + new /datum/data/mining_equipment("Diamond Pickaxe", /obj/item/weapon/pickaxe/diamond, 2000), + new /datum/data/mining_equipment("Super Resonator", /obj/item/weapon/resonator/upgraded, 2500), + new /datum/data/mining_equipment("Super Accelerator", /obj/item/weapon/gun/energy/kinetic_accelerator/super, 3000), + new /datum/data/mining_equipment("Point Transfer Card", /obj/item/weapon/card/mining_point_card, 500), + new /datum/data/mining_equipment("Mining Drone", /mob/living/simple_animal/hostile/mining_drone, 800), + new /datum/data/mining_equipment("Drone Melee Upgrade", /obj/item/device/mine_bot_ugprade, 400), + new /datum/data/mining_equipment("Drone Health Upgrade",/obj/item/device/mine_bot_ugprade/health, 400), + new /datum/data/mining_equipment("Drone Ranged Upgrade",/obj/item/device/mine_bot_ugprade/cooldown, 600), + new /datum/data/mining_equipment("Drone AI Upgrade", /obj/item/slimepotion/sentience/mining, 1000), ) - -/datum/data/mining_equipment +/datum/data/mining_equipment/ var/equipment_name = "generic" var/equipment_path = null var/cost = 0 @@ -102,7 +97,7 @@ else dat += "No ID inserted. Insert ID.
    " dat += "" - dat += "
    Equipment point cost list:
    " + dat += "
    Equipment point cost list:
    " for(var/datum/data/mining_equipment/prize in prize_list) dat += "" dat += "
    [prize.equipment_name][prize.cost]Purchase
    " @@ -122,7 +117,7 @@ inserted_id.verb_pickup() inserted_id = null else if(href_list["choice"] == "insert") - var/obj/item/weapon/card/id/I = usr.get_active_held_item() + var/obj/item/weapon/card/id/I = usr.get_active_hand() if(istype(I)) if(!usr.drop_item()) return @@ -150,7 +145,7 @@ RedeemVoucher(I, user) return if(istype(I,/obj/item/weapon/card/id)) - var/obj/item/weapon/card/id/C = usr.get_active_held_item() + var/obj/item/weapon/card/id/C = usr.get_active_hand() if(istype(C) && !istype(inserted_id)) if(!usr.drop_item()) return @@ -166,29 +161,34 @@ return ..() /obj/machinery/mineral/equipment_vendor/proc/RedeemVoucher(obj/item/weapon/mining_voucher/voucher, mob/redeemer) - var/items = list("Survival Capsule and Explorer's Webbing", "Resonator and Advanced Scanner", "Mining Drone", "Extraction and Rescue Kit", "Crusher Kit", "Mining Conscription Kit") + var/items = list("Crusher Kit", "Extract and Rescue Kit", "Hunter Kit", "Mining Drone", "Resonator and Advanced Scanner", "Survival Capsule and Explorer's Webbing")//Alphabetical, please. var/selection = input(redeemer, "Pick your equipment", "Mining Voucher Redemption") as null|anything in items if(!selection || !Adjacent(redeemer) || qdeleted(voucher) || voucher.loc != redeemer) return - switch(selection) - if("Survival Capsule and Explorer's Webbing") - new /obj/item/weapon/storage/belt/mining/vendor(src.loc) - if("Resonator and Advanced Scanner") - new /obj/item/weapon/resonator(src.loc) - new /obj/item/device/t_scanner/adv_mining_scanner(src.loc) - if("Mining Drone") - new /mob/living/simple_animal/hostile/mining_drone(src.loc) - new /obj/item/weapon/weldingtool/hugetank(src.loc) - if("Extraction and Rescue Kit") - new /obj/item/weapon/extraction_pack(loc) - new /obj/item/fulton_core(loc) + switch(selection)//Alphabetical, please. if("Crusher Kit") new /obj/item/weapon/twohanded/required/mining_hammer(loc) new /obj/item/weapon/storage/belt/mining/alt(loc) new /obj/item/weapon/extinguisher/mini(loc) - if("Mining Conscription Kit") - new /obj/item/weapon/storage/backpack/dufflebag/mining_conscript(loc) + if("Extract and Rescue Kit") + new /obj/item/stack/sheet/metal/five(loc) + new /obj/item/weapon/extraction_pack(loc) + new /obj/item/fulton_core(loc) + new /obj/item/weapon/reagent_containers/hypospray/medipen/survival(loc) + if("Hunter Kit") + new /obj/item/weapon/storage/belt/mining(loc) + new /obj/item/device/t_scanner/motionTracker(loc) + new /obj/item/weapon/stock_parts/cell/high/plus(loc) + new /obj/item/weapon/screwdriver(loc) + if("Mining Drone") + new /mob/living/simple_animal/hostile/mining_drone(loc) + new /obj/item/weapon/weldingtool/hugetank(loc) + if("Resonator and Advanced Scanner") + new /obj/item/weapon/resonator(src.loc) + new /obj/item/device/t_scanner/adv_mining_scanner(loc) + if("Survival Capsule and Explorer's Webbing") + new /obj/item/weapon/storage/belt/mining/vendor(loc) feedback_add_details("mining_voucher_redeemed", selection) qdel(voucher) @@ -216,7 +216,7 @@ new /datum/data/mining_equipment("Sulphuric Acid", /obj/item/weapon/reagent_containers/glass/beaker/sulphuric, 500), new /datum/data/mining_equipment("Brute First-Aid Kit", /obj/item/weapon/storage/firstaid/brute, 600), new /datum/data/mining_equipment("Grey Slime Extract", /obj/item/slime_extract/grey, 1000), - new /datum/data/mining_equipment("Modification Kit", /obj/item/borg/upgrade/modkit/trigger_guard, 1700), + new /datum/data/mining_equipment("Modification Kit", /obj/item/modkit, 1700), new /datum/data/mining_equipment("The Liberator's Legacy", /obj/item/weapon/storage/box/rndboards, 2000), ) @@ -238,7 +238,7 @@ desc = "A token to redeem a piece of equipment. Use it on a mining equipment vendor." icon = 'icons/obj/mining.dmi' icon_state = "mining_voucher" - w_class = WEIGHT_CLASS_TINY + w_class = 1 /**********************Mining Point Card**********************/ @@ -262,35 +262,3 @@ /obj/item/weapon/card/mining_point_card/examine(mob/user) ..() user << "There's [points] point\s on the card." - -///Conscript kit -/obj/item/weapon/card/mining_access_card - name = "mining access card" - desc = "A small card, that when used on any ID, will add mining access." - icon_state = "data" - -/obj/item/weapon/card/mining_access_card/afterattack(atom/movable/AM, mob/user, proximity) - if(istype(AM, /obj/item/weapon/card/id) && proximity) - var/obj/item/weapon/card/id/I = AM - I.access |= access_mining - I.access |= access_mining_station - I.access |= access_mineral_storeroom - I.access |= access_cargo - user << "You upgrade [I] with mining access." - qdel(src) - ..() - -/obj/item/weapon/storage/backpack/dufflebag/mining_conscript - name = "mining conscription kit" - desc = "A kit containing everything a crewmember needs to support a shaft miner in the field." - -/obj/item/weapon/storage/backpack/dufflebag/mining_conscript/New() - ..() - new /obj/item/weapon/pickaxe/mini(src) - new /obj/item/clothing/glasses/meson(src) - new /obj/item/device/t_scanner/adv_mining_scanner/lesser(src) - new /obj/item/weapon/storage/bag/ore(src) - new /obj/item/clothing/suit/hooded/explorer(src) - new /obj/item/device/encryptionkey/headset_cargo(src) - new /obj/item/clothing/mask/gas/explorer(src) - new /obj/item/weapon/card/mining_access_card(src) \ No newline at end of file diff --git a/code/modules/mining/mine_items.dm b/code/modules/mining/mine_items.dm index 60f841088e..84ab917813 100644 --- a/code/modules/mining/mine_items.dm +++ b/code/modules/mining/mine_items.dm @@ -2,15 +2,10 @@ //this item is intended to give the effect of entering the mine, so that light gradually fades /obj/effect/light_emitter - name = "Light emitter" + name = "Light-emtter" anchored = 1 - invisibility = 101 - var/set_luminosity = 8 - var/set_cap = 0 - -/obj/effect/light_emitter/New() - ..() - SetLuminosity(set_luminosity, set_cap) + unacidable = 1 + luminosity = 8 /**********************Miner Lockers**************************/ @@ -23,7 +18,7 @@ contents = list() new /obj/item/weapon/storage/backpack/dufflebag(src) new /obj/item/weapon/storage/backpack/explorer(src) - new /obj/item/weapon/storage/backpack/satchel/explorer(src) + new /obj/item/weapon/storage/backpack/satchel_explorer(src) new /obj/item/clothing/under/rank/miner/lavaland(src) new /obj/item/clothing/under/rank/miner/lavaland(src) new /obj/item/clothing/under/rank/miner/lavaland(src) @@ -46,14 +41,11 @@ new /obj/item/weapon/shovel(src) new /obj/item/weapon/pickaxe/mini(src) new /obj/item/device/radio/headset/headset_cargo/mining(src) - new /obj/item/device/flashlight/seclite(src) - new /obj/item/weapon/storage/bag/plants(src) - new /obj/item/weapon/storage/bag/ore(src) new /obj/item/device/t_scanner/adv_mining_scanner/lesser(src) + new /obj/item/weapon/storage/bag/ore(src) new /obj/item/weapon/gun/energy/kinetic_accelerator(src) new /obj/item/clothing/glasses/meson(src) new /obj/item/weapon/survivalcapsule(src) - new /obj/item/device/assault_pod/mining(src) /**********************Shuttle Computer**************************/ @@ -63,16 +55,9 @@ desc = "Used to call and send the mining shuttle." circuit = /obj/item/weapon/circuitboard/computer/mining_shuttle shuttleId = "mining" - possible_destinations = "mining_home;mining_away;landing_zone_dock" + possible_destinations = "mining_home;mining_away" no_destination_swap = 1 - var/global/list/dumb_rev_heads = list() - -/obj/machinery/computer/shuttle/mining/attack_hand(mob/user) - if(user.z == ZLEVEL_STATION && user.mind && (user.mind in ticker.mode.head_revolutionaries) && !(user.mind in dumb_rev_heads)) - user << "You get a feeling that leaving the station might be a REALLY dumb idea..." - dumb_rev_heads += user.mind - return - ..() + light_color = LIGHT_COLOR_CYAN /*********************Pickaxe & Drills**************************/ @@ -85,7 +70,7 @@ force = 15 throwforce = 10 item_state = "pickaxe" - w_class = WEIGHT_CLASS_BULKY + w_class = 4 materials = list(MAT_METAL=2000) //one sheet, but where can you make them? var/digspeed = 40 var/list/digsound = list('sound/effects/picaxe1.ogg','sound/effects/picaxe2.ogg','sound/effects/picaxe3.ogg') @@ -99,7 +84,7 @@ force = 10 throwforce = 7 slot_flags = SLOT_BELT - w_class = WEIGHT_CLASS_NORMAL + w_class = 3 materials = list(MAT_METAL=1000) /obj/item/weapon/pickaxe/proc/playDigSound() @@ -174,7 +159,7 @@ var/digspeed = 20 throwforce = 4 item_state = "shovel" - w_class = WEIGHT_CLASS_NORMAL + w_class = 3 materials = list(MAT_METAL=50) origin_tech = "materials=2;engineering=2" attack_verb = list("bashed", "bludgeoned", "thrashed", "whacked") @@ -187,14 +172,14 @@ item_state = "spade" force = 5 throwforce = 7 - w_class = WEIGHT_CLASS_SMALL + w_class = 2 /obj/item/weapon/emptysandbag name = "empty sandbag" desc = "A bag to be filled with sand." icon = 'icons/obj/items.dmi' icon_state = "sandbag" - w_class = WEIGHT_CLASS_TINY + w_class = 1 /obj/item/weapon/emptysandbag/attackby(obj/item/W, mob/user, params) if(istype(W,/obj/item/weapon/ore/glass)) @@ -229,7 +214,7 @@ desc = "An emergency shelter stored within a pocket of bluespace." icon_state = "capsule" icon = 'icons/obj/mining.dmi' - w_class = WEIGHT_CLASS_TINY + w_class = 1 origin_tech = "engineering=3;bluespace=3" var/template_id = "shelter_alpha" var/datum/map_template/shelter/template @@ -288,11 +273,42 @@ PoolOrNew(/obj/effect/particle_effect/smoke, get_turf(src)) qdel(src) - - //Pod turfs and objects +//Floors +/turf/open/floor/pod + name = "pod floor" + icon_state = "podfloor" + icon_regular_floor = "podfloor" + floor_tile = /obj/item/stack/tile/pod + +/turf/open/floor/pod/light + icon_state = "podfloor_light" + icon_regular_floor = "podfloor_light" + floor_tile = /obj/item/stack/tile/pod/light + +/turf/open/floor/pod/dark + icon_state = "podfloor_dark" + icon_regular_floor = "podfloor_dark" + floor_tile = /obj/item/stack/tile/pod/dark + +//Walls +/turf/closed/wall/shuttle/survival + name = "pod wall" + desc = "An easily-compressable wall used for temporary shelter." + icon = 'icons/turf/walls/survival_pod_walls.dmi' + icon_state = "smooth" + walltype = "shuttle" + smooth = SMOOTH_MORE|SMOOTH_DIAGONAL + canSmoothWith = list(/turf/closed/wall/shuttle/survival, /obj/machinery/door/airlock/survival_pod, /obj/structure/window/shuttle/survival_pod, /obj/structure/shuttle/engine) + +/turf/closed/wall/shuttle/survival/nodiagonal + smooth = SMOOTH_MORE + +/turf/closed/wall/shuttle/survival/pod + canSmoothWith = list(/turf/closed/wall/shuttle/survival, /obj/machinery/door/airlock, /obj/structure/window/fulltile, /obj/structure/window/reinforced/fulltile, /obj/structure/window/reinforced/tinted/fulltile, /obj/structure/window/shuttle, /obj/structure/shuttle/engine) + //Window /obj/structure/window/shuttle/survival_pod name = "pod window" @@ -358,10 +374,10 @@ /obj/item/device/gps/computer/attackby(obj/item/weapon/W, mob/user, params) if(istype(W, /obj/item/weapon/wrench) && !(flags&NODECONSTRUCT)) - playsound(src.loc, W.usesound, 50, 1) + playsound(src.loc, 'sound/items/Ratchet.ogg', 50, 1) user.visible_message("[user] disassembles the gps.", \ "You start to disassemble the gps...", "You hear clanking and banging noises.") - if(do_after(user, 20*W.toolspeed, target = src)) + if(do_after(user, 20/W.toolspeed, target = src)) new /obj/item/device/gps(src.loc) qdel(src) return ..() @@ -421,20 +437,18 @@ var/arbitraryatmosblockingvar = TRUE var/buildstacktype = /obj/item/stack/sheet/metal var/buildstackamount = 5 - CanAtmosPass = ATMOS_PASS_NO /obj/structure/fans/deconstruct() - if(!(flags & NODECONSTRUCT)) - if(buildstacktype) - new buildstacktype(loc,buildstackamount) - qdel(src) + if(buildstacktype) + new buildstacktype(loc,buildstackamount) + ..() /obj/structure/fans/attackby(obj/item/weapon/W, mob/user, params) if(istype(W, /obj/item/weapon/wrench) && !(flags&NODECONSTRUCT)) - playsound(src.loc, W.usesound, 50, 1) + playsound(src.loc, 'sound/items/Ratchet.ogg', 50, 1) user.visible_message("[user] disassembles the fan.", \ "You start to disassemble the fan...", "You hear clanking and banging noises.") - if(do_after(user, 20*W.toolspeed, target = src)) + if(do_after(user, 20/W.toolspeed, target = src)) deconstruct() return ..() @@ -451,10 +465,12 @@ air_update_turf(1) /obj/structure/fans/Destroy() - var/turf/T = loc - . = ..() - T.air_update_turf(1) + arbitraryatmosblockingvar = FALSE + air_update_turf(1) + return ..() +/obj/structure/fans/CanAtmosPass(turf/T) + return !arbitraryatmosblockingvar //Signs /obj/structure/sign/mining @@ -478,221 +494,149 @@ layer = BELOW_MOB_LAYER density = 0 -///Mining Base//// +////////////////////// +////MOTION TRACKER//// +////////////////////// -/area/shuttle/auxillary_base - name = "Auxillary Base" - luminosity = 0 //Lighting gets lost when it lands anyway +/obj/item/device/t_scanner/motionTracker + name = "motion tracker" + icon = 'icons/obj/mining.dmi' + icon_state = "tracker" + desc = "A nifty handheld motion tracker. Requires meson scanners to function properly." + flags = CONDUCT + slot_flags = SLOT_BELT + var/cooldown = 35 + var/on_cooldown = 0 + var/range = 7 + var/meson = FALSE + var/obj/item/weapon/stock_parts/cell/cell = new + var/cellcharge + var/cellmaxcharge + var/soundDetect = 'sound/effects/trackFull.ogg' + var/soundNoDetect = 'sound/effects/trackHalf.ogg' + var/soundToggle = 'sound/effects/switch.ogg' + var/powerReq = 10 + origin_tech = "engineering=3;magnets=4" -/obj/machinery/computer/shuttle/auxillary_base - name = "auxillary base management console" - icon = 'icons/obj/terminals.dmi' - icon_state = "dorm_available" - shuttleId = "colony_drop" - desc = "Allows a deployable expedition base to be dropped from the station to a designated mining location. It can also \ -interface with the mining shuttle at the landing site if a mobile beacon is also deployed." - var/launch_warning = TRUE +/obj/item/device/t_scanner/motionTracker/New() + cellcharge = cell.charge + cellmaxcharge = cell.maxcharge + updateicon() - req_one_access = list(access_cargo, access_construction, access_heads) - possible_destinations = null - clockwork = TRUE - var/obj/item/device/gps/internal/base/locator - -/obj/machinery/computer/shuttle/auxillary_base/New(location, obj/item/weapon/circuitboard/computer/shuttle/C) - ..() - locator = new /obj/item/device/gps/internal/base(src) - -/obj/machinery/computer/shuttle/auxillary_base/Topic(href, href_list) - if(href_list["move"]) - if(z != ZLEVEL_STATION && shuttleId == "colony_drop") - usr << "You can't move the base again!" - return 0 - if(launch_warning) - say("Launch sequence activated! Prepare for drop!") - playsound(loc, 'sound/machines/warning-buzzer.ogg', 70, 0) - launch_warning = FALSE - ..() - - - -/obj/machinery/computer/shuttle/auxillary_base/onShuttleMove(turf/T1, rotation) - ..() - if(z == ZLEVEL_MINING) //Avoids double logging and landing on other Z-levels due to badminnery - feedback_add_details("colonies_dropped", "[x]|[y]|[z]") //Number of times a base has been dropped! - -/obj/machinery/computer/shuttle/auxillary_base/proc/set_mining_mode() - if(z == ZLEVEL_MINING) //The console switches to controlling the mining shuttle once landed. - req_access = list() - shuttleId = "mining" //The base can only be dropped once, so this gives the console a new purpose. - possible_destinations = "mining_home;mining_away;landing_zone_dock" - -/obj/item/device/assault_pod/mining - name = "Landing Field Designator" - icon_state = "gangtool-purple" - item_state = "electronic" - icon = 'icons/obj/device.dmi' - desc = "Deploy to designate the landing zone of the auxillary base." - w_class = WEIGHT_CLASS_SMALL - shuttle_id = "colony_drop" - var/setting = FALSE - var/no_restrictions = FALSE //Badmin variable to let you drop the colony ANYWHERE. - -/obj/item/device/assault_pod/mining/attack_self(mob/living/user) - if(setting) +/obj/item/device/t_scanner/motionTracker/process() + updateicon() + if(!on || !cell) + on = 0 + SSobj.processing.Remove(src) return - var/turf/T = get_turf(user) - var/obj/docking_port/mobile/auxillary_base/base_dock = locate(/obj/docking_port/mobile/auxillary_base) in SSshuttle.mobile - if(!base_dock) //Not all maps have an Aux base. This object is useless in that case. - user << "This station is not equipped with an auxillary base. Please contact your Nanotrasen contractor." + if(cell.charge > powerReq) + scan() + cell.charge -= powerReq + if(cell.charge < powerReq) + playsound(get_turf(src),'sound/machines/twobeep.ogg', 15, 0 , -5) + on = 0 + SSobj.processing.Remove(src) + if(cell.charge <= 0)//In the event we have negative energy, somehow. + cell.charge = 0 + updateicon() + cellcharge = cell.charge + cellmaxcharge = cell.maxcharge + cell.updateicon() + +/obj/item/device/t_scanner/motionTracker/attack_self(mob/user) + add_fingerprint(usr) + updateicon() + if(!cell) + user << text("[src] has no power supply.") return - if(!no_restrictions) - if(T.z != ZLEVEL_MINING) - user << "Wouldn't do much good dropping a mining base away from the mining area!" + playsound(get_turf(src), soundToggle, 100, 0, -5) + if(cell.charge < powerReq) + user << text("The power light on [src] flashes.") + return + else if(cell.charge > powerReq) + on = !on + if(on) + user << text("You turn on [src].") + SSobj.processing |= src + if(!on) + user << text("You turn off [src].") + +/obj/item/device/t_scanner/motionTracker/proc/updateicon() + if(cell && cellcharge) + if(cell && cell.charge < (cell.maxcharge/5)) + icon_state = "trackerLow" + else if(cell && cell.charge < (cell.maxcharge/2)) + icon_state = "trackerHalf" + else if(cell && cell.charge > (cell.maxcharge/2)) + icon_state = "trackerFull" + if(!cellcharge || !cell || cellcharge < powerReq) + icon_state = "trackerEmpty" + ..() +/obj/item/device/t_scanner/motionTracker/scan(mob/living/carbon/user) + if(!on_cooldown) + on_cooldown = 1 + spawn(cooldown) + on_cooldown = 0 + var/turf/t = get_turf(src) + var/list/mobs = recursive_mob_check(t, 1,0,0) + if(!mobs.len) return - var/colony_radius = max(width, height)*0.5 - var/list/area_counter = get_areas_in_range(colony_radius, T) - if(area_counter.len > 1) //Avoid smashing ruins unless you are inside a really big one - user << "Unable to acquire a targeting lock. Find an area clear of stuctures or entirely within one." - return - - user << "You begin setting the landing zone parameters..." - setting = TRUE - if(!do_after(user, 50, target = user)) //You get a few seconds to cancel if you do not want to drop there. - setting = FALSE - return - - var/area/A = get_area(T) - - var/obj/docking_port/stationary/landing_zone = new /obj/docking_port/stationary(T) - landing_zone.id = "colony_drop(\ref[src])" - landing_zone.name = "Landing Zone ([T.x], [T.y])" - landing_zone.dwidth = base_dock.dwidth - landing_zone.dheight = base_dock.dheight - landing_zone.width = base_dock.width - landing_zone.height = base_dock.height - landing_zone.setDir(base_dock.dir) - landing_zone.turf_type = T.type - landing_zone.area_type = A.type - - for(var/obj/machinery/computer/shuttle/S in machines) - if(S.shuttleId == shuttle_id) - S.possible_destinations += "[landing_zone.id];" - -//Serves as a nice mechanic to people get ready for the launch. - minor_announce("Auxiliary base landing zone coordinates locked in for [get_area(user)]. Launch command now available!") - user << "Landing zone set." - - qdel(src) - -/obj/item/device/assault_pod/mining/unrestricted - name = "omni-locational landing field designator" - desc = "Allows the deployment of the mining base ANYWHERE. Use with caution." - no_restrictions = TRUE + motionTrackScan(mobs, range) -/obj/docking_port/mobile/auxillary_base - name = "auxillary base" - id = "colony_drop" - //Reminder to map-makers to set these values equal to the size of your base. - dheight = 4 - dwidth = 4 - width = 9 - height = 9 - var/anti_spam_cd = 0 +/obj/item/device/t_scanner/motionTracker/proc/motionTrackScan(var/list/mobs, var/range) + var/mobsfar = 0 + for(var/turf/T in range(7, get_turf(src)) ) + for(var/mob/O in T.contents) + var/mob/living/L = locate() in T + if(L && (get_turf(L) != get_turf(src)) && !L.stat) + flick_blip(O.loc) + mobsfar = 1 + if(mobsfar) + playsound(get_turf(src),'sound/effects/trackFull.ogg', 15, 0, -5) + if(!mobsfar) + playsound(get_turf(src),'sound/effects/trackHalf.ogg', 10, 0, -5) -/obj/structure/mining_shuttle_beacon - name = "mining shuttle beacon" - desc = "A bluespace beacon calibrated to mark a landing spot for the mining shuttle when deployed near the auxillary mining base." - anchored = 0 - density = 0 - var/shuttle_ID = "landing_zone_dock" - icon = 'icons/obj/objects.dmi' - icon_state = "miningbeacon" - var/obj/docking_port/stationary/Mport //Linked docking port for the mining shuttle - pressure_resistance = 200 //So it does not get blown into lava. - var/anti_spam_cd = 0 //The linking process might be a bit intensive, so this here to prevent over use. - var/console_range = 15 //Wifi range of the beacon to find the aux base console +/obj/item/device/t_scanner/motionTracker/proc/flick_blip(turf/T) + var/image/B = image('icons/obj/mining.dmi', T, icon_state = "blip") + var/list/nearby = list() + for(var/mob/M in viewers(T)) + if(M.client) + nearby |= M.client + flick_overlay(B,nearby, 8) -/obj/structure/mining_shuttle_beacon/attack_hand(mob/user) - if(anchored) - user << "Landing zone already set." - return +/obj/item/device/t_scanner/motionTracker/attackby(obj/item/I, mob/user, params) + if(istype(I, /obj/item/weapon/screwdriver) && cell) + user << text("You detach [cell] from [src].") + cell.loc = get_turf(src) + cell = null + cellcharge = 0 + cellmaxcharge = 0 + if(on) + on = 0 + updateicon() + cell.updateicon() + if(istype(I, /obj/item/weapon/stock_parts/cell)) + if(cell) + user << text("[src] already has a power supply installed.") + else + if(!user.drop_item())//This is dumb. You should be able to move a held object without having to drop it. + return + I.loc = src + cell = I + user.visible_message(\ + "[user.name] has inserted the power cell into [src.name].",\ + "You install [cell.name] into [src]") + cellcharge = cell.charge + cellmaxcharge = cell.maxcharge + updateicon() + else + ..() - if(anti_spam_cd) - user << "[src] is currently recalibrating. Please wait." - return - - anti_spam_cd = 1 - addtimer(src, "clear_cooldown", 100) - - var/turf/landing_spot = get_turf(src) - - if(landing_spot.z != ZLEVEL_MINING) - user << "This device is only to be used in a mining zone." - return - var/obj/machinery/computer/shuttle/auxillary_base/aux_base_console = locate(/obj/machinery/computer/shuttle/auxillary_base) in machines - if(!aux_base_console || get_dist(landing_spot, aux_base_console) > console_range) - user << "The auxillary base's console must be within [console_range] meters in order to interface." - return //Needs to be near the base to serve as its dock and configure it to control the mining shuttle. - -//Mining shuttles may not be created equal, so we find the map's shuttle dock and size accordingly. - - - for(var/S in SSshuttle.stationary) - var/obj/docking_port/stationary/SM = S //SM is declared outside so it can be checked for null - if(SM.id == "mining_home" || SM.id == "mining_away") - - var/area/A = get_area(landing_spot) - - Mport = new(landing_spot) - Mport.id = "landing_zone_dock" - Mport.name = "auxillary base landing site" - Mport.dwidth = SM.dwidth - Mport.dheight = SM.dheight - Mport.width = SM.width - Mport.height = SM.height - Mport.setDir(dir) - Mport.turf_type = landing_spot.type - Mport.area_type = A.type - - break - if(!Mport) - user << "This station is not equipped with an approprite mining shuttle. Please contact Nanotrasen Support." - return - var/search_radius = max(Mport.width, Mport.height)*0.5 - var/list/landing_areas = get_areas_in_range(search_radius, landing_spot) - for(var/area/shuttle/auxillary_base/AB in landing_areas) //You land NEAR the base, not IN it. - user << "The mining shuttle must not land within the mining base itself." - SSshuttle.stationary.Remove(Mport) - qdel(Mport) - return - var/obj/docking_port/mobile/mining_shuttle - for(var/S in SSshuttle.mobile) - var/obj/docking_port/mobile/MS = S - if(MS.id != "mining") - continue - mining_shuttle = MS - - if(!mining_shuttle) //Not having a mining shuttle is a map issue - user << "No mining shuttle signal detected. Please contact Nanotrasen Support." - SSshuttle.stationary.Remove(Mport) - qdel(Mport) - return - - if(!mining_shuttle.canDock(Mport)) - user << "Unable to secure a valid docking zone. Please try again in an open area near, but not within the aux. mining base." - SSshuttle.stationary.Remove(Mport) - qdel(Mport) - return - - aux_base_console.set_mining_mode() //Lets the colony park the shuttle there, now that it has a dock. - user << "Mining shuttle calibration successful! Shuttle interface available at base console." - anchored = 1 //Locks in place to mark the landing zone. - playsound(src.loc, 'sound/machines/ping.ogg', 50, 0) - -/obj/structure/mining_shuttle_beacon/proc/clear_cooldown() - anti_spam_cd = 0 - -/obj/structure/mining_shuttle_beacon/attack_robot(mob/user) - return (attack_hand(user)) //So borgies can help +/obj/item/device/t_scanner/motionTracker/examine(mob/user) + ..() + if(cell) + user << text("[src] has [cellcharge]/[cellmaxcharge] charge remaining.") + else + user << text("[src] has no power supply installed.") diff --git a/code/game/turfs/simulated/minerals.dm b/code/modules/mining/mine_turfs.dm similarity index 52% rename from code/game/turfs/simulated/minerals.dm rename to code/modules/mining/mine_turfs.dm index 1af83dba49..ab2e4585e4 100644 --- a/code/game/turfs/simulated/minerals.dm +++ b/code/modules/mining/mine_turfs.dm @@ -6,7 +6,7 @@ icon_state = "rock" var/smooth_icon = 'icons/turf/smoothrocks.dmi' smooth = SMOOTH_MORE|SMOOTH_BORDER - canSmoothWith + canSmoothWith = list (/turf/closed/mineral, /turf/closed/wall) baseturf = /turf/open/floor/plating/asteroid/airless initial_gas_mix = "TEMP=2.7" opacity = 1 @@ -25,8 +25,6 @@ var/defer_change = 0 /turf/closed/mineral/New() - if (!canSmoothWith) - canSmoothWith = list(/turf/closed) pixel_y = -4 pixel_x = -4 icon = smooth_icon @@ -38,85 +36,11 @@ if(istype(T, /turf/closed/mineral/random)) Spread(T) -/turf/closed/mineral/shuttleRotate(rotation) - setDir(angle2dir(rotation+dir2angle(dir))) - queue_smooth(src) - - -/turf/closed/mineral/attackby(obj/item/weapon/pickaxe/P, mob/user, params) - - if (!user.IsAdvancedToolUser()) - usr << "You don't have the dexterity to do this!" - return - - if (istype(P, /obj/item/weapon/pickaxe)) - var/turf/T = user.loc - if (!isturf(T)) - return - - if(last_act+P.digspeed > world.time)//prevents message spam - return - last_act = world.time - user << "You start picking..." - P.playDigSound() - - if(do_after(user,P.digspeed, target = src)) - if(ismineralturf(src)) - user << "You finish cutting into the rock." - gets_drilled(user) - feedback_add_details("pick_used_mining","[P.type]") - else - return attack_hand(user) - return - -/turf/closed/mineral/proc/gets_drilled() - if (mineralType && (src.mineralAmt > 0) && (src.mineralAmt < 11)) - var/i - for (i=0;i= 2) - gets_drilled() - ..() - -/turf/closed/mineral/attack_alien(mob/living/carbon/alien/M) - M << "You start digging into the rock..." - playsound(src, 'sound/effects/break_stone.ogg', 50, 1) - if(do_after(M,40, target = src)) - M << "You tunnel into the rock." - gets_drilled(M) - -/turf/closed/mineral/Bumped(AM as mob|obj) - ..() - if(ishuman(AM)) - var/mob/living/carbon/human/H = AM - var/obj/item/I = H.is_holding_item_of_type(/obj/item/weapon/pickaxe) - if(I) - attackby(I,H) - return - else if(iscyborg(AM)) - var/mob/living/silicon/robot/R = AM - if(istype(R.module_active,/obj/item/weapon/pickaxe)) - src.attackby(R.module_active,R) - return -/* else if(istype(AM,/obj/mecha)) - var/obj/mecha/M = AM - if(istype(M.selected,/obj/item/mecha_parts/mecha_equipment/drill)) - src.attackby(M.selected,M) - return*/ -//Aparantly mechs are just TOO COOL to call Bump(), so fuck em (for now) - else - return - -/turf/closed/mineral/acid_melt() - ChangeTurf(baseturf) +/turf/closed/mineral/volcanic + environment_type = "basalt" + turf_type = /turf/open/floor/plating/asteroid/basalt + baseturf = /turf/open/floor/plating/asteroid/basalt + initial_gas_mix = "o2=14;n2=23;TEMP=300" /turf/closed/mineral/ex_act(severity, target) ..() @@ -132,28 +56,24 @@ return /turf/closed/mineral/Spread(turf/T) - T.ChangeTurf(type) + new src.type(T) /turf/closed/mineral/random - var/mineralSpawnChanceList + var/mineralSpawnChanceList = list( + /turf/closed/mineral/uranium = 5, /turf/closed/mineral/diamond = 1, /turf/closed/mineral/gold = 10, + /turf/closed/mineral/silver = 12, /turf/closed/mineral/plasma = 20, /turf/closed/mineral/iron = 40, + /turf/closed/mineral/gibtonite = 4, /turf/open/floor/plating/asteroid/airless/cave = 2, /turf/closed/mineral/bscrystal = 1) //Currently, Adamantine won't spawn as it has no uses. -Durandan var/mineralChance = 13 - var/display_icon_state = "rock" /turf/closed/mineral/random/New() - if (!mineralSpawnChanceList) - mineralSpawnChanceList = list( - /turf/closed/mineral/uranium = 5, /turf/closed/mineral/diamond = 1, /turf/closed/mineral/gold = 10, - /turf/closed/mineral/silver = 12, /turf/closed/mineral/plasma = 20, /turf/closed/mineral/iron = 40, /turf/closed/mineral/titanium = 11, - /turf/closed/mineral/gibtonite = 4, /turf/open/floor/plating/asteroid/airless/cave = 2, /turf/closed/mineral/bscrystal = 1) - if (display_icon_state) - icon_state = display_icon_state ..() + if (prob(mineralChance)) var/path = pickweight(mineralSpawnChanceList) - var/turf/T = ChangeTurf(path,FALSE,TRUE) + var/turf/T = new path(src) - if(T && ismineralturf(T)) + if(T && istype(T, /turf/closed/mineral)) var/turf/closed/mineral/M = T M.mineralAmt = rand(1, 5) M.environment_type = src.environment_type @@ -162,68 +82,28 @@ src = M M.levelupdate() - /turf/closed/mineral/random/high_chance icon_state = "rock_highchance" mineralChance = 25 mineralSpawnChanceList = list( - /turf/closed/mineral/uranium = 35, /turf/closed/mineral/diamond = 30, /turf/closed/mineral/gold = 45, /turf/closed/mineral/titanium = 45, + /turf/closed/mineral/uranium = 35, /turf/closed/mineral/diamond = 30, /turf/closed/mineral/gold = 45, /turf/closed/mineral/silver = 50, /turf/closed/mineral/plasma = 50, /turf/closed/mineral/bscrystal = 20) -/turf/closed/mineral/random/high_chance/volcanic - environment_type = "basalt" - turf_type = /turf/open/floor/plating/asteroid/basalt/lava_land_surface - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - initial_gas_mix = "o2=14;n2=23;TEMP=300" - defer_change = 1 - mineralSpawnChanceList = list( - /turf/closed/mineral/uranium/volcanic = 35, /turf/closed/mineral/diamond/volcanic = 30, /turf/closed/mineral/gold/volcanic = 45, /turf/closed/mineral/titanium/volcanic = 45, - /turf/closed/mineral/silver/volcanic = 50, /turf/closed/mineral/plasma/volcanic = 50, /turf/closed/mineral/bscrystal/volcanic = 20) - - +/turf/closed/mineral/random/high_chance/New() + icon_state = "rock" + ..() /turf/closed/mineral/random/low_chance icon_state = "rock_lowchance" mineralChance = 6 mineralSpawnChanceList = list( - /turf/closed/mineral/uranium = 2, /turf/closed/mineral/diamond = 1, /turf/closed/mineral/gold = 4, /turf/closed/mineral/titanium = 4, + /turf/closed/mineral/uranium = 2, /turf/closed/mineral/diamond = 1, /turf/closed/mineral/gold = 4, /turf/closed/mineral/silver = 6, /turf/closed/mineral/plasma = 15, /turf/closed/mineral/iron = 40, /turf/closed/mineral/gibtonite = 2, /turf/closed/mineral/bscrystal = 1) - -/turf/closed/mineral/random/volcanic - environment_type = "basalt" - turf_type = /turf/open/floor/plating/asteroid/basalt/lava_land_surface - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - initial_gas_mix = "o2=14;n2=23;TEMP=300" - defer_change = 1 - - mineralChance = 10 - mineralSpawnChanceList = list( - /turf/closed/mineral/uranium/volcanic = 5, /turf/closed/mineral/diamond/volcanic = 1, /turf/closed/mineral/gold/volcanic = 10, /turf/closed/mineral/titanium/volcanic = 11, - /turf/closed/mineral/silver/volcanic = 12, /turf/closed/mineral/plasma/volcanic = 20, /turf/closed/mineral/iron/volcanic = 40, - /turf/closed/mineral/gibtonite/volcanic = 4, /turf/open/floor/plating/asteroid/airless/cave/volcanic = 1, /turf/closed/mineral/bscrystal/volcanic = 1) - - -/turf/closed/mineral/random/labormineral - mineralSpawnChanceList = list( - /turf/closed/mineral/iron = 100, /turf/closed/mineral/uranium = 1, /turf/closed/mineral/diamond = 1, - /turf/closed/mineral/gold = 1, /turf/closed/mineral/silver = 1, /turf/closed/mineral/plasma = 1) - icon_state = "rock_labor" - - -/turf/closed/mineral/random/labormineral/volcanic - environment_type = "basalt" - turf_type = /turf/open/floor/plating/asteroid/basalt/lava_land_surface - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - initial_gas_mix = "o2=14;n2=23;TEMP=300" - defer_change = 1 - mineralSpawnChanceList = list( - /turf/closed/mineral/iron/volcanic = 100, /turf/closed/mineral/uranium/volcanic = 1, /turf/closed/mineral/diamond/volcanic = 1, - /turf/closed/mineral/gold/volcanic = 1, /turf/closed/mineral/silver/volcanic = 1, /turf/closed/mineral/plasma/volcanic = 1) - - - +/turf/closed/mineral/random/low_chance/New() + icon_state = "rock" + ..() /turf/closed/mineral/iron mineralType = /obj/item/weapon/ore/iron @@ -231,98 +111,36 @@ spread = 1 scan_state = "rock_Iron" -/turf/closed/mineral/iron/volcanic - environment_type = "basalt" - turf_type = /turf/open/floor/plating/asteroid/basalt/lava_land_surface - baseturf = /turf/open/floor/plating/asteroid/basalt/lava_land_surface - initial_gas_mix = "o2=14;n2=23;TEMP=300" - defer_change = 1 - - /turf/closed/mineral/uranium mineralType = /obj/item/weapon/ore/uranium spreadChance = 5 spread = 1 scan_state = "rock_Uranium" -/turf/closed/mineral/uranium/volcanic - environment_type = "basalt" - turf_type = /turf/open/floor/plating/asteroid/basalt/lava_land_surface - baseturf = /turf/open/floor/plating/asteroid/basalt/lava_land_surface - initial_gas_mix = "o2=14;n2=23;TEMP=300" - defer_change = 1 - - /turf/closed/mineral/diamond mineralType = /obj/item/weapon/ore/diamond spreadChance = 0 spread = 1 scan_state = "rock_Diamond" -/turf/closed/mineral/diamond/volcanic - environment_type = "basalt" - turf_type = /turf/open/floor/plating/asteroid/basalt/lava_land_surface - baseturf = /turf/open/floor/plating/asteroid/basalt/lava_land_surface - initial_gas_mix = "o2=14;n2=23;TEMP=300" - defer_change = 1 - - /turf/closed/mineral/gold mineralType = /obj/item/weapon/ore/gold spreadChance = 5 spread = 1 scan_state = "rock_Gold" -/turf/closed/mineral/gold/volcanic - environment_type = "basalt" - turf_type = /turf/open/floor/plating/asteroid/basalt/lava_land_surface - baseturf = /turf/open/floor/plating/asteroid/basalt/lava_land_surface - initial_gas_mix = "o2=14;n2=23;TEMP=300" - defer_change = 1 - - /turf/closed/mineral/silver mineralType = /obj/item/weapon/ore/silver spreadChance = 5 spread = 1 scan_state = "rock_Silver" -/turf/closed/mineral/silver/volcanic - environment_type = "basalt" - turf_type = /turf/open/floor/plating/asteroid/basalt/lava_land_surface - baseturf = /turf/open/floor/plating/asteroid/basalt/lava_land_surface - initial_gas_mix = "o2=14;n2=23;TEMP=300" - defer_change = 1 - - -/turf/closed/mineral/titanium - mineralType = /obj/item/weapon/ore/titanium - spreadChance = 5 - spread = 1 - scan_state = "rock_Titanium" - -/turf/closed/mineral/titanium/volcanic - environment_type = "basalt" - turf_type = /turf/open/floor/plating/asteroid/basalt/lava_land_surface - baseturf = /turf/open/floor/plating/asteroid/basalt/lava_land_surface - initial_gas_mix = "o2=14;n2=23;TEMP=300" - defer_change = 1 - - /turf/closed/mineral/plasma mineralType = /obj/item/weapon/ore/plasma spreadChance = 8 spread = 1 scan_state = "rock_Plasma" -/turf/closed/mineral/plasma/volcanic - environment_type = "basalt" - turf_type = /turf/open/floor/plating/asteroid/basalt/lava_land_surface - baseturf = /turf/open/floor/plating/asteroid/basalt/lava_land_surface - initial_gas_mix = "o2=14;n2=23;TEMP=300" - defer_change = 1 - - /turf/closed/mineral/clown mineralType = /obj/item/weapon/ore/bananium mineralAmt = 3 @@ -330,7 +148,6 @@ spread = 0 scan_state = "rock_Clown" - /turf/closed/mineral/bscrystal mineralType = /obj/item/weapon/ore/bluespace_crystal mineralAmt = 1 @@ -338,42 +155,7 @@ spread = 0 scan_state = "rock_BScrystal" -/turf/closed/mineral/bscrystal/volcanic - environment_type = "basalt" - turf_type = /turf/open/floor/plating/asteroid/basalt/lava_land_surface - baseturf = /turf/open/floor/plating/asteroid/basalt/lava_land_surface - initial_gas_mix = "o2=14;n2=23;TEMP=300" - defer_change = 1 - - -/turf/closed/mineral/volcanic - environment_type = "basalt" - turf_type = /turf/open/floor/plating/asteroid/basalt - baseturf = /turf/open/floor/plating/asteroid/basalt - initial_gas_mix = "o2=14;n2=23;TEMP=300" - -/turf/closed/mineral/volcanic/lava_land_surface - environment_type = "basalt" - turf_type = /turf/open/floor/plating/asteroid/basalt/lava_land_surface - baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - defer_change = 1 - -/turf/closed/mineral/ash_rock //wall piece - name = "rock" - icon = 'icons/turf/mining.dmi' - smooth_icon = 'icons/turf/walls/rock_wall.dmi' - icon_state = "rock2" - smooth = SMOOTH_MORE|SMOOTH_BORDER - canSmoothWith = list (/turf/closed) - baseturf = /turf/open/floor/plating/ashplanet/wateryrock - initial_gas_mix = "o2=14;n2=23;TEMP=300" - environment_type = "waste" - turf_type = /turf/open/floor/plating/ashplanet/rocky - defer_change = 1 - - -//GIBTONITE - +////////////////////////////////Gibtonite /turf/closed/mineral/gibtonite mineralAmt = 1 spreadChance = 0 @@ -468,6 +250,434 @@ spawn(10) AfterChange() +/turf/closed/mineral/gibtonite/volcanic + initial_gas_mix = "o2=14;n2=23;TEMP=300" + +////////////////////////////////End Gibtonite + +/turf/open/floor/plating/asteroid/airless/cave + var/length = 100 + var/mob_spawn_list = list(/mob/living/simple_animal/hostile/asteroid/goldgrub = 1, /mob/living/simple_animal/hostile/asteroid/goliath = 5, /mob/living/simple_animal/hostile/asteroid/basilisk = 4, /mob/living/simple_animal/hostile/asteroid/hivelord = 3) + var/sanity = 1 + turf_type = /turf/open/floor/plating/asteroid/airless + +/turf/open/floor/plating/asteroid/airless/cave/volcanic + mob_spawn_list = list(/mob/living/simple_animal/hostile/asteroid/goldgrub = 10, /mob/living/simple_animal/hostile/asteroid/goliath/beast = 50, /mob/living/simple_animal/hostile/asteroid/basilisk/watcher = 40, /mob/living/simple_animal/hostile/asteroid/hivelord/legion = 30, + /mob/living/simple_animal/hostile/spawner/lavaland = 2, /mob/living/simple_animal/hostile/spawner/lavaland/goliath = 3, /mob/living/simple_animal/hostile/spawner/lavaland/legion = 3, \ + /mob/living/simple_animal/hostile/megafauna/dragon = 2, /mob/living/simple_animal/hostile/megafauna/bubblegum = 2, /mob/living/simple_animal/hostile/megafauna/colossus = 2) + + turf_type = /turf/open/floor/plating/asteroid/basalt/lava_land_surface + initial_gas_mix = "o2=14;n2=23;TEMP=300" + +/turf/open/floor/plating/asteroid/airless/cave/New(loc, length, go_backwards = 1, exclude_dir = -1) + // If length (arg2) isn't defined, get a random length; otherwise assign our length to the length arg. + if(!length) + src.length = rand(25, 50) + else + src.length = length + + // Get our directiosn + var/forward_cave_dir = pick(alldirs - exclude_dir) + // Get the opposite direction of our facing direction + var/backward_cave_dir = angle2dir(dir2angle(forward_cave_dir) + 180) + + // Make our tunnels + make_tunnel(forward_cave_dir) + if(go_backwards) + make_tunnel(backward_cave_dir) + // Kill ourselves by replacing ourselves with a normal floor. + SpawnFloor(src) + ..() + +/turf/open/floor/plating/asteroid/airless/cave/proc/make_tunnel(dir) + + var/turf/closed/mineral/tunnel = src + var/next_angle = pick(45, -45) + + for(var/i = 0; i < length; i++) + if(!sanity) + break + + var/list/L = list(45) + if(IsOdd(dir2angle(dir))) // We're going at an angle and we want thick angled tunnels. + L += -45 + + // Expand the edges of our tunnel + for(var/edge_angle in L) + var/turf/closed/mineral/edge = get_step(tunnel, angle2dir(dir2angle(dir) + edge_angle)) + if(istype(edge)) + SpawnFloor(edge) + + // Move our tunnel forward + tunnel = get_step(tunnel, dir) + + if(istype(tunnel)) + // Small chance to have forks in our tunnel; otherwise dig our tunnel. + if(i > 3 && prob(20)) + new src.type(tunnel, rand(10, 15), 0, dir) + else + SpawnFloor(tunnel) + else //if(!istype(tunnel, src.parent)) // We hit space/normal/wall, stop our tunnel. + break + + // Chance to change our direction left or right. + if(i > 2 && prob(33)) + // We can't go a full loop though + next_angle = -next_angle + setDir(angle2dir(dir2angle(dir) )+ next_angle) + + +/turf/open/floor/plating/asteroid/airless/cave/proc/SpawnFloor(turf/T) + for(var/turf/S in range(2,T)) + if(istype(S, /turf/open/space) || istype(S.loc, /area/mine/explored)) + sanity = 0 + break + if(!sanity) + return + + SpawnMonster(T) + new turf_type(T) +/turf/open/floor/plating/asteroid/airless/cave/proc/SpawnMonster(turf/T) + if(prob(30)) + if(istype(loc, /area/mine/explored)) + return + for(var/atom/A in urange(12,T))//Lowers chance of mob clumps + if(istype(A, /mob/living/simple_animal/hostile/asteroid)) + return + var/randumb = pickweight(mob_spawn_list) + new randumb(T) + return + +/turf/closed/mineral/attackby(obj/item/weapon/pickaxe/P, mob/user, params) + + if (!user.IsAdvancedToolUser()) + usr << "You don't have the dexterity to do this!" + return + + if (istype(P, /obj/item/weapon/pickaxe)) + var/turf/T = user.loc + if (!( istype(T, /turf) )) + return + + if(last_act+P.digspeed > world.time)//prevents message spam + return + last_act = world.time + user << "You start picking..." + P.playDigSound() + + if(do_after(user,P.digspeed, target = src)) + if(istype(src, /turf/closed/mineral)) + user << "You finish cutting into the rock." + gets_drilled(user) + feedback_add_details("pick_used_mining","[P.type]") + else + return attack_hand(user) + return + +/turf/closed/mineral/proc/gets_drilled() + if (mineralType && (src.mineralAmt > 0) && (src.mineralAmt < 11)) + var/i + for (i=0;i= 2) + gets_drilled() + ..() + +/turf/closed/mineral/attack_alien(mob/living/carbon/alien/M) + M << "You start digging into the rock..." + playsound(src, 'sound/effects/break_stone.ogg', 50, 1) + if(do_after(M,40, target = src)) + M << "You tunnel into the rock." + gets_drilled(M) + +/turf/closed/mineral/Bumped(AM as mob|obj) + ..() + if(istype(AM,/mob/living/carbon/human)) + var/mob/living/carbon/human/H = AM + if((istype(H.l_hand,/obj/item/weapon/pickaxe)) && (!H.hand)) + src.attackby(H.l_hand,H) + else if((istype(H.r_hand,/obj/item/weapon/pickaxe)) && H.hand) + src.attackby(H.r_hand,H) + return + else if(istype(AM,/mob/living/silicon/robot)) + var/mob/living/silicon/robot/R = AM + if(istype(R.module_active,/obj/item/weapon/pickaxe)) + src.attackby(R.module_active,R) + return +/* else if(istype(AM,/obj/mecha)) + var/obj/mecha/M = AM + if(istype(M.selected,/obj/item/mecha_parts/mecha_equipment/drill)) + src.attackby(M.selected,M) + return*/ +//Aparantly mechs are just TOO COOL to call Bump(), so fuck em (for now) + else + return + +/**********************Asteroid**************************/ + +/turf/open/floor/plating/asteroid //floor piece + name = "asteroid sand" + baseturf = /turf/open/floor/plating/asteroid + icon = 'icons/turf/floors.dmi' + icon_state = "asteroid" + icon_plating = "asteroid" + var/environment_type = "asteroid" + var/turf_type = /turf/open/floor/plating/asteroid //Because caves do whacky shit to revert to normal + var/dug = 0 //0 = has not yet been dug, 1 = has already been dug + var/sand_type = /obj/item/weapon/ore/glass + +/turf/open/floor/plating/asteroid/airless + initial_gas_mix = "TEMP=2.7" + turf_type = /turf/open/floor/plating/asteroid/airless + +/turf/open/floor/plating/asteroid/basalt + name = "volcanic floor" + baseturf = /turf/open/floor/plating/asteroid/basalt + icon = 'icons/turf/floors.dmi' + icon_state = "basalt" + icon_plating = "basalt" + environment_type = "basalt" + sand_type = /obj/item/weapon/ore/glass/basalt + +/turf/open/floor/plating/asteroid/basalt/lava //lava underneath + baseturf = /turf/open/floor/plating/lava/smooth + +/turf/open/floor/plating/asteroid/basalt/airless + initial_gas_mix = "TEMP=2.7" + +/turf/open/floor/plating/asteroid/snow + name = "snow" + desc = "Looks cold." + icon = 'icons/turf/snow.dmi' + baseturf = /turf/open/floor/plating/asteroid/snow + icon_state = "snow" + icon_plating = "snow" + initial_gas_mix = "TEMP=180" + slowdown = 2 + environment_type = "snow" + sand_type = /obj/item/stack/sheet/mineral/snow + +/turf/open/floor/plating/asteroid/snow/airless + initial_gas_mix = "TEMP=2.7" + +/turf/open/floor/plating/asteroid/snow/temperatre + initial_gas_mix = "TEMP=255.37" + +/turf/open/floor/plating/asteroid/New() + var/proper_name = name + ..() + name = proper_name + if(prob(20)) + icon_state = "[environment_type][rand(0,12)]" + +/turf/open/floor/plating/asteroid/burn_tile() + return + +/turf/open/floor/plating/asteroid/ex_act(severity, target) + contents_explosion(severity, target) + switch(severity) + if(3) + return + if(2) + if (prob(20)) + src.gets_dug() + if(1) + src.gets_dug() + return + +/turf/open/floor/plating/asteroid/attackby(obj/item/weapon/W, mob/user, params) + //note that this proc does not call ..() + if(!W || !user) + return 0 + var/digging_speed = 0 + if (istype(W, /obj/item/weapon/shovel)) + var/obj/item/weapon/shovel/S = W + digging_speed = S.digspeed + else if (istype(W, /obj/item/weapon/pickaxe)) + var/obj/item/weapon/pickaxe/P = W + digging_speed = P.digspeed + if (digging_speed) + var/turf/T = user.loc + if (!( istype(T, /turf) )) + return + + if (dug) + user << "This area has already been dug!" + return + + user << "You start digging..." + playsound(src, 'sound/effects/shovel_dig.ogg', 50, 1) + + if(do_after(user, digging_speed, target = src)) + if(istype(src, /turf/open/floor/plating/asteroid)) + user << "You dig a hole." + gets_dug() + feedback_add_details("pick_used_mining","[W.type]") + + if(istype(W,/obj/item/weapon/storage/bag/ore)) + var/obj/item/weapon/storage/bag/ore/S = W + if(S.collection_mode == 1) + for(var/obj/item/weapon/ore/O in src.contents) + O.attackby(W,user) + return + + if(istype(W, /obj/item/stack/tile)) + var/obj/item/stack/tile/Z = W + if(!Z.use(1)) + return + var/turf/open/floor/T = ChangeTurf(Z.turf_type) + if(istype(Z,/obj/item/stack/tile/light)) //TODO: get rid of this ugly check somehow + var/obj/item/stack/tile/light/L = Z + var/turf/open/floor/light/F = T + F.state = L.state + playsound(src, 'sound/weapons/Genhit.ogg', 50, 1) + +/turf/open/floor/plating/asteroid/proc/gets_dug() + if(dug) + return + for(var/i in 1 to 5) + new sand_type(src) + dug = 1 + icon_plating = "[environment_type]_dug" + icon_state = "[environment_type]_dug" + slowdown = 0 + return + +/turf/open/floor/plating/asteroid/singularity_act() + return + +/turf/open/floor/plating/asteroid/singularity_pull(S, current_size) + return + +//////////////CHASM////////////////// + +/turf/open/chasm + name = "chasm" + desc = "Watch your step." + baseturf = /turf/open/chasm + smooth = SMOOTH_TRUE | SMOOTH_BORDER + icon = 'icons/turf/floors/Chasms.dmi' + icon_state = "smooth" + var/drop_x = 1 + var/drop_y = 1 + var/drop_z = 1 + + +/turf/open/chasm/Entered(atom/movable/AM) + if(istype(AM, /obj/singularity) || istype(AM, /obj/item/projectile)) + return + if(istype(AM, /obj/effect/portal)) + // Portals aren't affected by gravity. Probably. + return + // Flies right over the chasm + if(istype(AM, /mob/living/simple_animal)) + // apparently only simple_animals can fly?? + var/mob/living/simple_animal/SA = AM + if(SA.flying) + return + if(istype(AM, /mob/living/carbon/human)) + var/mob/living/carbon/human/H = AM + if(istype(H.belt, /obj/item/device/wormhole_jaunter)) + var/obj/item/device/wormhole_jaunter/J = H.belt + // To freak out any bystanders + visible_message("[H] falls into [src]!") + J.chasm_react(H) + return + if(H.dna.species && (FLYING in H.dna.species.specflags)) + return + drop(AM) + + +/turf/open/chasm/proc/drop(atom/movable/AM) + /*visible_message("[AM] falls into [src]!") + qdel(AM)*/ + AM.forceMove(locate(drop_x, drop_y, drop_z)) + AM.visible_message("[AM] falls from above!", "GAH! Ah... where are you?") + if(istype(AM, /mob/living)) + var/mob/living/L = AM + L.Weaken(5) + L.adjustBruteLoss(30) + +/turf/open/chasm/straight_down/New() + ..() + drop_x = x + drop_y = y + if(z+1 <= world.maxz) + drop_z = z+1 + +/**********************Lavaland Turfs**************************/ + +///////Surface. The surface is warm, but survivable without a suit. Internals are required. The floors break to chasms, which drop you into the underground. + +/turf/open/floor/plating/asteroid/basalt/lava_land_surface + initial_gas_mix = "o2=14;n2=23;TEMP=300" + planetary_atmos = TRUE + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + +/turf/open/chasm/straight_down/lava_land_surface + initial_gas_mix = "o2=14;n2=23;TEMP=300" + planetary_atmos = TRUE + baseturf = /turf/open/chasm/straight_down/lava_land_surface + +/turf/open/chasm/straight_down/lava_land_surface/drop(atom/movable/AM) + if(!AM.invisibility) + AM.visible_message("[AM] falls into [src]!", "You stumble and stare into an abyss before you. It stares back, and you fall \ + into the enveloping dark.") + if(isliving(AM)) + var/mob/living/L = AM + L.notransform = TRUE + L.Stun(10) + L.resting = TRUE + animate(AM, transform = matrix() - matrix(), alpha = 0, color = rgb(0, 0, 0), time = 10) + for(var/i in 1 to 5) + AM.pixel_y-- + sleep(2) + if(isrobot(AM)) + var/mob/living/silicon/robot/S = AM + qdel(S.mmi) + qdel(AM) + +/turf/closed/mineral/volcanic/lava_land_surface + environment_type = "basalt" + turf_type = /turf/open/floor/plating/asteroid/basalt/lava_land_surface + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + defer_change = 1 + +/turf/closed/mineral/random/volcanic + environment_type = "basalt" + turf_type = /turf/open/floor/plating/asteroid/basalt/lava_land_surface + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + initial_gas_mix = "o2=14;n2=23;TEMP=300" + defer_change = 1 + + mineralChance = 10 + mineralSpawnChanceList = list( + /turf/closed/mineral/uranium/volcanic = 5, /turf/closed/mineral/diamond/volcanic = 1, /turf/closed/mineral/gold/volcanic = 10, + /turf/closed/mineral/silver/volcanic = 12, /turf/closed/mineral/plasma/volcanic = 20, /turf/closed/mineral/iron/volcanic = 40, + /turf/closed/mineral/gibtonite/volcanic = 4, /turf/open/floor/plating/asteroid/airless/cave/volcanic = 1, /turf/closed/mineral/bscrystal/volcanic = 1) + +/turf/closed/mineral/random/high_chance/volcanic + environment_type = "basalt" + turf_type = /turf/open/floor/plating/asteroid/basalt/lava_land_surface + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + initial_gas_mix = "o2=14;n2=23;TEMP=300" + defer_change = 1 + mineralSpawnChanceList = list( + /turf/closed/mineral/uranium/volcanic = 35, /turf/closed/mineral/diamond/volcanic = 30, /turf/closed/mineral/gold/volcanic = 45, + /turf/closed/mineral/silver/volcanic = 50, /turf/closed/mineral/plasma/volcanic = 50, /turf/closed/mineral/bscrystal/volcanic = 20) + +/turf/open/floor/plating/lava/smooth/lava_land_surface + initial_gas_mix = "o2=14;n2=23;TEMP=300" + planetary_atmos = TRUE + baseturf = /turf/open/chasm/straight_down/lava_land_surface /turf/closed/mineral/gibtonite/volcanic environment_type = "basalt" @@ -475,3 +685,123 @@ baseturf = /turf/open/floor/plating/asteroid/basalt/lava_land_surface initial_gas_mix = "o2=14;n2=23;TEMP=300" defer_change = 1 + +/turf/closed/mineral/uranium/volcanic + environment_type = "basalt" + turf_type = /turf/open/floor/plating/asteroid/basalt/lava_land_surface + baseturf = /turf/open/floor/plating/asteroid/basalt/lava_land_surface + initial_gas_mix = "o2=14;n2=23;TEMP=300" + defer_change = 1 + +/turf/closed/mineral/diamond/volcanic + environment_type = "basalt" + turf_type = /turf/open/floor/plating/asteroid/basalt/lava_land_surface + baseturf = /turf/open/floor/plating/asteroid/basalt/lava_land_surface + initial_gas_mix = "o2=14;n2=23;TEMP=300" + defer_change = 1 + +/turf/closed/mineral/gold/volcanic + environment_type = "basalt" + turf_type = /turf/open/floor/plating/asteroid/basalt/lava_land_surface + baseturf = /turf/open/floor/plating/asteroid/basalt/lava_land_surface + initial_gas_mix = "o2=14;n2=23;TEMP=300" + defer_change = 1 + +/turf/closed/mineral/silver/volcanic + environment_type = "basalt" + turf_type = /turf/open/floor/plating/asteroid/basalt/lava_land_surface + baseturf = /turf/open/floor/plating/asteroid/basalt/lava_land_surface + initial_gas_mix = "o2=14;n2=23;TEMP=300" + defer_change = 1 + +/turf/closed/mineral/plasma/volcanic + environment_type = "basalt" + turf_type = /turf/open/floor/plating/asteroid/basalt/lava_land_surface + baseturf = /turf/open/floor/plating/asteroid/basalt/lava_land_surface + initial_gas_mix = "o2=14;n2=23;TEMP=300" + defer_change = 1 + +/turf/closed/mineral/iron/volcanic + environment_type = "basalt" + turf_type = /turf/open/floor/plating/asteroid/basalt/lava_land_surface + baseturf = /turf/open/floor/plating/asteroid/basalt/lava_land_surface + initial_gas_mix = "o2=14;n2=23;TEMP=300" + defer_change = 1 + +/turf/closed/mineral/bscrystal/volcanic + environment_type = "basalt" + turf_type = /turf/open/floor/plating/asteroid/basalt/lava_land_surface + baseturf = /turf/open/floor/plating/asteroid/basalt/lava_land_surface + initial_gas_mix = "o2=14;n2=23;TEMP=300" + defer_change = 1 + + +//BECAUSE ONE PLANET WASNT ENOUGH + +/turf/closed/mineral/ash_rock //wall piece + name = "rock" + icon = 'icons/turf/mining.dmi' + smooth_icon = 'icons/turf/walls/rock_wall.dmi' + icon_state = "rock" + smooth = SMOOTH_MORE|SMOOTH_BORDER + canSmoothWith = list (/turf/closed/mineral, /turf/closed/wall) + baseturf = /turf/open/floor/plating/ash + initial_gas_mix = "o2=14;n2=23;TEMP=300" + environment_type = "waste" + turf_type = /turf/open/floor/plating/ash + defer_change = 1 + +/turf/open/floor/plating/ash + icon = 'icons/turf/mining.dmi' + name = "ash" + icon_state = "ash" + smooth = SMOOTH_MORE|SMOOTH_BORDER + canSmoothWith = list (/turf/open/floor/plating/ash, /turf/closed) + var/smooth_icon = 'icons/turf/floors/ash.dmi' + desc = "The ground is covered in volcanic ash." + baseturf = /turf/open/floor/plating/ash //I assume this will be a chasm eventually, once this becomes an actual surface + slowdown = 1 + initial_gas_mix = "o2=14;n2=23;TEMP=300" + planetary_atmos = TRUE + +/turf/open/floor/plating/ash/New() + pixel_y = -4 + pixel_x = -4 + icon = smooth_icon + ..() + +/turf/open/floor/plating/ash/break_tile() + return + +/turf/open/floor/plating/ash/burn_tile() + return + +/turf/open/floor/plating/ash/rocky + name = "rocky ground" + icon_state = "rockyash" + icon = 'icons/turf/mining.dmi' + smooth_icon = 'icons/turf/floors/rocky_ash.dmi' + slowdown = 0 + smooth = SMOOTH_MORE|SMOOTH_BORDER + canSmoothWith = list (/turf/open/floor/plating/ash/rocky, /turf/closed) + +//Necropolis + +/turf/closed/indestructible/necropolis + name = "necropolis wall" + desc = "A seemingly impenetrable wall." + icon = 'icons/turf/walls.dmi' + explosion_block = 50 + baseturf = /turf/closed/indestructible/necropolis + +/turf/open/indestructible/necropolis + name = "necropolis floor" + desc = "It's regarding you suspiciously." + icon = 'icons/turf/floors.dmi' + icon_state = "floor" + baseturf = /turf/open/indestructible/necropolis + +/turf/open/indestructible/necropolis/New() + ..() + if(prob(12)) + icon_state = "necropolis[rand(1,2)]" diff --git a/code/modules/mining/minebot.dm b/code/modules/mining/minebot.dm index 9a241ec9e9..f18ca2a097 100644 --- a/code/modules/mining/minebot.dm +++ b/code/modules/mining/minebot.dm @@ -1,6 +1,4 @@ /**********************Mining drone**********************/ -#define MINEDRONE_COLLECT 1 -#define MINEDRONE_ATTACK 2 /mob/living/simple_animal/hostile/mining_drone name = "nanotrasen minebot" @@ -9,9 +7,10 @@ icon_state = "mining_drone" icon_living = "mining_drone" status_flags = CANSTUN|CANWEAKEN|CANPUSH + stop_automated_movement_when_pulled = 1 mouse_opacity = 1 faction = list("neutral") - a_intent = INTENT_HARM + a_intent = "harm" atmos_requirements = list("min_oxy" = 0, "max_oxy" = 0, "min_tox" = 0, "max_tox" = 0, "min_co2" = 0, "max_co2" = 0, "min_n2" = 0, "max_n2" = 0) minbodytemp = 0 wander = 0 @@ -23,10 +22,8 @@ maxHealth = 125 melee_damage_lower = 15 melee_damage_upper = 15 - obj_damage = 0 environment_smash = 0 check_friendly_fire = 1 - stop_automated_movement_when_pulled = 1 attacktext = "drills" attack_sound = 'sound/weapons/circsawhit.ogg' ranged = 1 @@ -38,32 +35,8 @@ speak_emote = list("states") wanted_objects = list(/obj/item/weapon/ore/diamond, /obj/item/weapon/ore/gold, /obj/item/weapon/ore/silver, /obj/item/weapon/ore/plasma, /obj/item/weapon/ore/uranium, /obj/item/weapon/ore/iron, - /obj/item/weapon/ore/bananium, /obj/item/weapon/ore/titanium) + /obj/item/weapon/ore/bananium) healable = 0 - var/mode = MINEDRONE_COLLECT - var/light_on = 0 - - var/datum/action/innate/minedrone/toggle_light/toggle_light_action - var/datum/action/innate/minedrone/toggle_meson_vision/toggle_meson_vision_action - var/datum/action/innate/minedrone/toggle_mode/toggle_mode_action - var/datum/action/innate/minedrone/dump_ore/dump_ore_action - -/mob/living/simple_animal/hostile/mining_drone/New() - ..() - toggle_light_action = new() - toggle_light_action.Grant(src) - toggle_meson_vision_action = new() - toggle_meson_vision_action.Grant(src) - toggle_mode_action = new() - toggle_mode_action.Grant(src) - dump_ore_action = new() - dump_ore_action.Grant(src) - - SetCollectBehavior() - -/mob/living/simple_animal/hostile/mining_drone/sentience_act() - AIStatus = AI_OFF - check_friendly_fire = 0 /mob/living/simple_animal/hostile/mining_drone/attackby(obj/item/I, mob/user, params) if(istype(I, /obj/item/weapon/weldingtool)) @@ -88,23 +61,27 @@ ..() visible_message("[src] is destroyed!") new /obj/effect/decal/cleanable/robot_debris(src.loc) - DropOre(0) + DropOre() qdel(src) return +/mob/living/simple_animal/hostile/mining_drone/New() + ..() + SetCollectBehavior() + /mob/living/simple_animal/hostile/mining_drone/attack_hand(mob/living/carbon/human/M) - if(M.a_intent == INTENT_HELP) - toggle_mode() - switch(mode) - if(MINEDRONE_COLLECT) + if(M.a_intent == "help") + switch(search_objects) + if(0) + SetCollectBehavior() M << "[src] has been set to search and store loose ore." - if(MINEDRONE_ATTACK) + if(2) + SetOffenseBehavior() M << "[src] has been set to attack hostile wildlife." return ..() /mob/living/simple_animal/hostile/mining_drone/proc/SetCollectBehavior() - mode = MINEDRONE_COLLECT idle_vision_range = 9 search_objects = 2 wander = 1 @@ -112,10 +89,8 @@ minimum_distance = 1 retreat_distance = null icon_state = "mining_drone" - src << "You are set to collect mode. You can now collect loose ore." /mob/living/simple_animal/hostile/mining_drone/proc/SetOffenseBehavior() - mode = MINEDRONE_ATTACK idle_vision_range = 7 search_objects = 0 wander = 0 @@ -123,10 +98,9 @@ retreat_distance = 1 minimum_distance = 2 icon_state = "mining_drone_offense" - src << "You are set to attack mode. You can now attack from range." /mob/living/simple_animal/hostile/mining_drone/AttackingTarget() - if(istype(target, /obj/item/weapon/ore) && mode == MINEDRONE_COLLECT) + if(istype(target, /obj/item/weapon/ore)) CollectOre() return ..() @@ -141,86 +115,19 @@ O.loc = src return -/mob/living/simple_animal/hostile/mining_drone/proc/DropOre(message = 1) +/mob/living/simple_animal/hostile/mining_drone/proc/DropOre() if(!contents.len) - if(message) - src << "You attempt to dump your stored ore, but you have none." return - if(message) - src << "You dump your stored ore." for(var/obj/item/weapon/ore/O in contents) contents -= O O.loc = src.loc return -/mob/living/simple_animal/hostile/mining_drone/adjustHealth(amount) - if(mode != MINEDRONE_ATTACK && amount > 0) +/mob/living/simple_animal/hostile/mining_drone/adjustHealth() + if(search_objects) SetOffenseBehavior() . = ..() -/mob/living/simple_animal/hostile/mining_drone/proc/toggle_mode() - switch(mode) - if(MINEDRONE_COLLECT) - SetOffenseBehavior() - if(MINEDRONE_ATTACK) - SetCollectBehavior() - else //This should never happen. - mode = MINEDRONE_COLLECT - SetCollectBehavior() - -//Actions for sentient minebots - -/datum/action/innate/minedrone - check_flags = AB_CHECK_CONSCIOUS - background_icon_state = "bg_default" - -/datum/action/innate/minedrone/toggle_light - name = "Toggle Light" - button_icon_state = "mech_lights_off" - -/datum/action/innate/minedrone/toggle_light/Activate() - var/mob/living/simple_animal/hostile/mining_drone/user = owner - - if(user.light_on) - user.AddLuminosity(-6) - else - user.AddLuminosity(6) - user.light_on = !user.light_on - user << "You toggle your light [user.light_on ? "on" : "off"]." - -/datum/action/innate/minedrone/toggle_meson_vision - name = "Toggle Meson Vision" - button_icon_state = "meson" - -/datum/action/innate/minedrone/toggle_meson_vision/Activate() - var/mob/living/simple_animal/hostile/mining_drone/user = owner - - if(user.sight & SEE_TURFS) - user.sight &= ~SEE_TURFS - user.see_invisible = SEE_INVISIBLE_LIVING - else - user.sight |= SEE_TURFS - user.see_invisible = SEE_INVISIBLE_MINIMUM - - user << "You toggle your meson vision [(user.sight & SEE_TURFS) ? "on" : "off"]." - -/datum/action/innate/minedrone/toggle_mode - name = "Toggle Mode" - button_icon_state = "mech_cycle_equip_off" - -/datum/action/innate/minedrone/toggle_mode/Activate() - var/mob/living/simple_animal/hostile/mining_drone/user = owner - user.toggle_mode() - -/datum/action/innate/minedrone/dump_ore - name = "Dump Ore" - button_icon_state = "mech_eject" - -/datum/action/innate/minedrone/dump_ore/Activate() - var/mob/living/simple_animal/hostile/mining_drone/user = owner - user.DropOre() - - /**********************Minebot Upgrades**********************/ //Melee @@ -278,7 +185,4 @@ icon_state = "door_electronics" icon = 'icons/obj/module.dmi' sentience_type = SENTIENCE_MINEBOT - origin_tech = "programming=6" - -#undef MINEDRONE_COLLECT -#undef MINEDRONE_ATTACK + origin_tech = "programming=6" \ No newline at end of file diff --git a/code/modules/mining/mint.dm b/code/modules/mining/mint.dm index e6d1a58b19..cac9971d73 100644 --- a/code/modules/mining/mint.dm +++ b/code/modules/mining/mint.dm @@ -7,60 +7,110 @@ icon_state = "coinpress0" density = 1 anchored = 1 - var/datum/material_container/materials + var/amt_silver = 0 //amount of silver + var/amt_gold = 0 //amount of gold + var/amt_diamond = 0 + var/amt_iron = 0 + var/amt_plasma = 0 + var/amt_uranium = 0 + var/amt_clown = 0 + var/amt_adamantine = 0 + var/amt_mythril = 0 var/newCoins = 0 //how many coins the machine made in it's last load var/processing = 0 - var/chosen = MAT_METAL //which material will be used to make coins + var/chosen = "metal" //which material will be used to make coins var/coinsToProduce = 10 speed_process = 1 - -/obj/machinery/mineral/mint/New() - ..() - materials = new /datum/material_container(src, - list(MAT_METAL, MAT_PLASMA, MAT_SILVER, MAT_GOLD, MAT_URANIUM, MAT_DIAMOND, MAT_BANANIUM), - max_amt = MINERAL_MATERIAL_AMOUNT*50) - -/obj/machinery/mineral/mint/Destroy() - qdel(materials) - materials = null - return ..() - - /obj/machinery/mineral/mint/process() - var/turf/T = get_step(src, input_dir) - if(!T) - return + var/turf/T = get_step(src,input_dir) + if(T) + for(var/obj/item/stack/sheet/O in T) + if (istype(O, /obj/item/stack/sheet/mineral/gold)) + amt_gold += MINERAL_MATERIAL_AMOUNT * O.amount + O.loc = null + if (istype(O, /obj/item/stack/sheet/mineral/silver)) + amt_silver += MINERAL_MATERIAL_AMOUNT * O.amount + O.loc = null + if (istype(O, /obj/item/stack/sheet/mineral/diamond)) + amt_diamond += MINERAL_MATERIAL_AMOUNT * O.amount + O.loc = null + if (istype(O, /obj/item/stack/sheet/mineral/plasma)) + amt_plasma += MINERAL_MATERIAL_AMOUNT * O.amount + O.loc = null + if (istype(O, /obj/item/stack/sheet/mineral/uranium)) + amt_uranium += MINERAL_MATERIAL_AMOUNT * O.amount + O.loc = null + if (istype(O, /obj/item/stack/sheet/metal)) + amt_iron += MINERAL_MATERIAL_AMOUNT * O.amount + O.loc = null + if (istype(O, /obj/item/stack/sheet/mineral/bananium)) + amt_clown += MINERAL_MATERIAL_AMOUNT * O.amount + O.loc = null + if (istype(O, /obj/item/stack/sheet/mineral/adamantine)) + amt_adamantine += MINERAL_MATERIAL_AMOUNT * O.amount + O.loc = null + return - for(var/obj/item/stack/sheet/O in T) - materials.insert_stack(O, O.amount) /obj/machinery/mineral/mint/attack_hand(mob/user) + var/dat = "Coin Press
    " - for(var/mat_id in materials.materials) - var/datum/material/M = materials.materials[mat_id] - if(!M.amount && chosen != mat_id) - continue - dat += "
    [M.name] amount: [M.amount] cm3 " - if (chosen == mat_id) - dat += "Chosen" + dat += text("
    Gold inserted: [amt_gold] cm3 ") + if (chosen == "gold") + dat += text("chosen") + else + dat += text("Choose") + dat += text("
    Silver inserted: [amt_silver] cm3 ") + if (chosen == "silver") + dat += text("chosen") + else + dat += text("Choose") + dat += text("
    Iron inserted: [amt_iron] cm3 ") + if (chosen == "metal") + dat += text("chosen") + else + dat += text("Choose") + dat += text("
    Diamond inserted: [amt_diamond] cm3 ") + if (chosen == "diamond") + dat += text("chosen") + else + dat += text("Choose") + dat += text("
    Plasma inserted: [amt_plasma] cm3 ") + if (chosen == "plasma") + dat += text("chosen") + else + dat += text("Choose") + dat += text("
    Uranium inserted: [amt_uranium] cm3 ") + if (chosen == "uranium") + dat += text("chosen") + else + dat += text("Choose") + if(amt_clown > 0) + dat += text("
    Bananium inserted: [amt_clown] cm3 ") + if (chosen == "clown") + dat += text("chosen") else - dat += "Choose" + dat += text("Choose") + dat += text("
    Adamantine inserted: [amt_adamantine] cm3 ")//I don't even know these color codes, so fuck it. + if (chosen == "adamantine") + dat += text("chosen") + else + dat += text("Choose") - var/datum/material/M = materials.materials[chosen] + dat += text("

    Will produce [coinsToProduce] [chosen] coins if enough materials are available.
    ") + //dat += text("The dial which controls the number of conins to produce seems to be stuck. A technician has already been dispatched to fix this.") + dat += text("-10 ") + dat += text("-5 ") + dat += text("-1 ") + dat += text("+1 ") + dat += text("+5 ") + dat += text("+10 ") - dat += "

    Will produce [coinsToProduce] [lowertext(M.name)] coins if enough materials are available.
    " - dat += "-10 " - dat += "-5 " - dat += "-1 " - dat += "+1 " - dat += "+5 " - dat += "+10 " - - dat += "

    In total this machine produced [newCoins] coins." - dat += "
    Make coins" - user << browse(dat, "window=mint") + dat += text("

    In total this machine produced [newCoins] coins.") + dat += text("
    Make coins") + user << browse("[dat]", "window=mint") /obj/machinery/mineral/mint/Topic(href, href_list) if(..()) @@ -71,29 +121,89 @@ usr << "The machine is processing." return if(href_list["choose"]) - if(materials.materials[href_list["choose"]]) - chosen = href_list["choose"] + chosen = href_list["choose"] if(href_list["chooseAmt"]) coinsToProduce = Clamp(coinsToProduce + text2num(href_list["chooseAmt"]), 0, 1000) if(href_list["makeCoins"]) var/temp_coins = coinsToProduce - processing = 1 + processing = 1; icon_state = "coinpress1" var/coin_mat = MINERAL_MATERIAL_AMOUNT * 0.2 - var/datum/material/M = materials.materials[chosen] - if(!M || !M.coin_type) - updateUsrDialog() - return - - while(coinsToProduce > 0 && materials.use_amount_type(coin_mat, chosen)) - create_coins(M.coin_type) - coinsToProduce-- - newCoins++ - src.updateUsrDialog() - sleep(5) - + switch(chosen) + if("metal") + while(amt_iron >= coin_mat && coinsToProduce > 0) + create_coins(/obj/item/weapon/coin/iron) + amt_iron -= coin_mat + coinsToProduce-- + newCoins++ + src.updateUsrDialog() + sleep(5); + if("gold") + while(amt_gold >= coin_mat && coinsToProduce > 0) + create_coins(/obj/item/weapon/coin/gold) + amt_gold -= coin_mat + coinsToProduce-- + newCoins++ + src.updateUsrDialog() + sleep(5); + if("silver") + while(amt_silver >= coin_mat && coinsToProduce > 0) + create_coins(/obj/item/weapon/coin/silver) + amt_silver -= coin_mat + coinsToProduce-- + newCoins++ + src.updateUsrDialog() + sleep(5); + if("diamond") + while(amt_diamond >= coin_mat && coinsToProduce > 0) + create_coins(/obj/item/weapon/coin/diamond) + amt_diamond -= coin_mat + coinsToProduce-- + newCoins++ + src.updateUsrDialog() + sleep(5); + if("plasma") + while(amt_plasma >= coin_mat && coinsToProduce > 0) + create_coins(/obj/item/weapon/coin/plasma) + amt_plasma -= coin_mat + coinsToProduce-- + newCoins++ + src.updateUsrDialog() + sleep(5); + if("uranium") + while(amt_uranium >= coin_mat && coinsToProduce > 0) + create_coins(/obj/item/weapon/coin/uranium) + amt_uranium -= coin_mat + coinsToProduce-- + newCoins++ + src.updateUsrDialog() + sleep(5) + if("clown") + while(amt_clown >= coin_mat && coinsToProduce > 0) + create_coins(/obj/item/weapon/coin/clown) + amt_clown -= coin_mat + coinsToProduce-- + newCoins++ + src.updateUsrDialog() + sleep(5); + if("adamantine") + while(amt_adamantine >= coin_mat && coinsToProduce > 0) + create_coins(/obj/item/weapon/coin/adamantine) + amt_adamantine -= coin_mat + coinsToProduce-- + newCoins++ + src.updateUsrDialog() + sleep(5); + if("mythril") + while(amt_adamantine >= coin_mat && coinsToProduce > 0) + create_coins(/obj/item/weapon/coin/mythril) + amt_mythril -= coin_mat + coinsToProduce-- + newCoins++ + src.updateUsrDialog() + sleep(5); icon_state = "coinpress0" - processing = 0 + processing = 0; coinsToProduce = temp_coins src.updateUsrDialog() return diff --git a/code/modules/mining/money_bag.dm b/code/modules/mining/money_bag.dm index 7c486251d3..ace35ec291 100644 --- a/code/modules/mining/money_bag.dm +++ b/code/modules/mining/money_bag.dm @@ -5,11 +5,10 @@ icon_state = "moneybag" force = 10 throwforce = 0 - resistance_flags = FLAMMABLE - obj_integrity = 100 - max_integrity = 100 - w_class = WEIGHT_CLASS_BULKY - max_w_class = WEIGHT_CLASS_NORMAL + burn_state = FLAMMABLE + burntime = 20 + w_class = 4 + max_w_class = 3 storage_slots = 80 max_combined_w_class = 40 can_hold = list(/obj/item/weapon/coin, /obj/item/stack/spacecash) diff --git a/code/modules/mining/ores_coins.dm b/code/modules/mining/ores_coins.dm index 153417695d..b4a0be4d31 100644 --- a/code/modules/mining/ores_coins.dm +++ b/code/modules/mining/ores_coins.dm @@ -17,36 +17,6 @@ user << "Not enough fuel to smelt [src]." ..() -/obj/item/weapon/ore/Crossed(atom/movable/AM) - var/obj/item/weapon/storage/bag/ore/OB - if(istype(loc, /turf/open/floor/plating/asteroid)) - var/turf/open/floor/plating/asteroid/F = loc - if(ishuman(AM)) - var/mob/living/carbon/human/H = AM - for(var/thing in H.get_storage_slots()) - if(istype(thing, /obj/item/weapon/storage/bag/ore)) - OB = thing - break - for(var/thing in H.held_items) - if(istype(thing, /obj/item/weapon/storage/bag/ore)) - OB = thing - break - else if(issilicon(AM)) - var/mob/living/silicon/robot/R = AM - for(var/thing in R.module_active) - if(istype(thing, /obj/item/weapon/storage/bag/ore)) - OB = thing - break - if(OB) - F.attackby(OB, AM) - // Then, if the user is dragging an ore box, empty the satchel - // into the box. - var/mob/living/L = AM - if(istype(L.pulling, /obj/structure/ore_box)) - var/obj/structure/ore_box/box = L.pulling - box.attackby(OB, AM) - return ..() - /obj/item/weapon/ore/uranium name = "uranium ore" icon_state = "Uranium ore" @@ -70,7 +40,7 @@ points = 1 materials = list(MAT_GLASS=MINERAL_MATERIAL_AMOUNT) refined_type = /obj/item/stack/sheet/glass - w_class = WEIGHT_CLASS_TINY + w_class = 1 /obj/item/weapon/ore/glass/attack_self(mob/living/user) user << "You use the sand to make sandstone." @@ -163,14 +133,6 @@ materials = list(MAT_BANANIUM=MINERAL_MATERIAL_AMOUNT) refined_type = /obj/item/stack/sheet/mineral/bananium -/obj/item/weapon/ore/titanium - name = "titanium ore" - icon_state = "Titanium ore" - origin_tech = "materials=4" - points = 50 - materials = list(MAT_TITANIUM=MINERAL_MATERIAL_AMOUNT) - refined_type = /obj/item/stack/sheet/mineral/titanium - /obj/item/weapon/ore/slag name = "slag" desc = "Completely useless" @@ -182,7 +144,7 @@ icon = 'icons/obj/mining.dmi' icon_state = "Gibtonite ore" item_state = "Gibtonite ore" - w_class = WEIGHT_CLASS_BULKY + w_class = 4 throw_range = 0 var/primed = 0 var/det_time = 100 @@ -290,7 +252,7 @@ flags = CONDUCT force = 1 throwforce = 2 - w_class = WEIGHT_CLASS_TINY + w_class = 1 var/string_attached var/list/sideslist = list("heads","tails") var/cmineral = null diff --git a/code/modules/mining/satchel_ore_boxdm.dm b/code/modules/mining/satchel_ore_boxdm.dm index dd82f9b1d4..1e4ad8d9a6 100644 --- a/code/modules/mining/satchel_ore_boxdm.dm +++ b/code/modules/mining/satchel_ore_boxdm.dm @@ -13,18 +13,23 @@ if (istype(W, /obj/item/weapon/ore)) if(!user.drop_item()) return - W.forceMove(src) + W.loc = src else if (istype(W, /obj/item/weapon/storage)) var/obj/item/weapon/storage/S = W for(var/obj/item/weapon/ore/O in S.contents) S.remove_from_storage(O, src) //This will move the item to this item's contents user << "You empty the ore in [S] into \the [src]." else if(istype(W, /obj/item/weapon/crowbar)) - playsound(loc, W.usesound, 50, 1) + playsound(loc, 'sound/items/Crowbar.ogg', 50, 1) var/obj/item/weapon/crowbar/C = W - if(do_after(user, 50*C.toolspeed, target = src)) + var/time = 50 + if(do_after(user, time/C.toolspeed, target = src)) user.visible_message("[user] pries \the [src] apart.", "You pry apart \the [src].", "You hear splitting wood.") - deconstruct(TRUE, user) + // If you change the amount of wood returned, remember + // to change the construction costs + var/obj/item/stack/sheet/mineral/wood/wo = new (loc, 4) + wo.add_fingerprint(user) + deconstruct() else return ..() @@ -37,19 +42,64 @@ show_contents(user) /obj/structure/ore_box/proc/show_contents(mob/user) - var/dat = text("The contents of the ore box reveal...
    ") - var/list/oretypes = list() - for(var/obj/item/weapon/ore/O in contents) - oretypes |= O.type - for(var/i in oretypes) - var/obj/item/weapon/ore/T = locate(i) in contents - dat += "[capitalize(T.name)]: [count_by_type(contents, T.type)]
    " - dat += text("

    Empty box") - user << browse(dat, "window=orebox") + var/amt_gold = 0 + var/amt_silver = 0 + var/amt_diamond = 0 + var/amt_glass = 0 + var/amt_iron = 0 + var/amt_plasma = 0 + var/amt_uranium = 0 + var/amt_clown = 0 + var/amt_bluespace = 0 -/obj/structure/ore_box/proc/dump_box_contents() - for(var/obj/item/weapon/ore/O in contents) - O.forceMove(loc) + for (var/obj/item/weapon/ore/C in contents) + if (istype(C,/obj/item/weapon/ore/diamond)) + amt_diamond++; + if (istype(C,/obj/item/weapon/ore/glass)) + amt_glass++; + if (istype(C,/obj/item/weapon/ore/plasma)) + amt_plasma++; + if (istype(C,/obj/item/weapon/ore/iron)) + amt_iron++; + if (istype(C,/obj/item/weapon/ore/silver)) + amt_silver++; + if (istype(C,/obj/item/weapon/ore/gold)) + amt_gold++; + if (istype(C,/obj/item/weapon/ore/uranium)) + amt_uranium++; + if (istype(C,/obj/item/weapon/ore/bananium)) + amt_clown++; + if (istype(C,/obj/item/weapon/ore/bluespace_crystal)) + amt_bluespace++ + + var/dat = text("The contents of the ore box reveal...
    ") + if (amt_gold) + dat += text("Gold ore: [amt_gold]
    ") + if (amt_silver) + dat += text("Silver ore: [amt_silver]
    ") + if (amt_iron) + dat += text("Metal ore: [amt_iron]
    ") + if (amt_glass) + dat += text("Sand: [amt_glass]
    ") + if (amt_diamond) + dat += text("Diamond ore: [amt_diamond]
    ") + if (amt_plasma) + dat += text("Plasma ore: [amt_plasma]
    ") + if (amt_uranium) + dat += text("Uranium ore: [amt_uranium]
    ") + if (amt_clown) + dat += text("Bananium ore: [amt_clown]
    ") + if (amt_bluespace) + dat += text("Bluespace crystals: [amt_bluespace]
    ") + + dat += text("

    Empty box") + user << browse("[dat]", "window=orebox") + return + +/obj/structure/ore_box/proc/dump_contents() + for (var/obj/item/weapon/ore/O in contents) + contents -= O + O.loc = src.loc /obj/structure/ore_box/Topic(href, href_list) if(..()) @@ -60,14 +110,16 @@ usr.set_machine(src) src.add_fingerprint(usr) if(href_list["removeall"]) - dump_box_contents() + dump_contents() usr << "You empty the box." - updateUsrDialog() + src.updateUsrDialog() + return +/obj/structure/ore_box/ex_act(severity, target) + if(prob(100 / severity) && severity < 3) + qdel(src) //nothing but ores can get inside unless its a bug and ores just return nothing on ex_act, not point in calling it on them + +/obj/structure/ore_box/Destroy() + dump_contents() + return ..() -/obj/structure/ore_box/deconstruct(disassembled = TRUE, mob/user) - var/obj/item/stack/sheet/mineral/wood/WD = new (loc, 4) - if(user) - WD.add_fingerprint(user) - dump_box_contents() - qdel(src) diff --git a/code/modules/mob/dead/observer/login.dm b/code/modules/mob/dead/observer/login.dm index 7bba60bef9..9c770d24a3 100644 --- a/code/modules/mob/dead/observer/login.dm +++ b/code/modules/mob/dead/observer/login.dm @@ -5,7 +5,7 @@ ghost_others = client.prefs.ghost_others var/preferred_form = null - if(IsAdminGhost(src)) + if(check_rights(R_ADMIN, 0)) has_unlimited_silicon_privilege = 1 if(client.prefs.unlock_content) diff --git a/code/modules/mob/dead/observer/logout.dm b/code/modules/mob/dead/observer/logout.dm index 698329a70f..51c597f871 100644 --- a/code/modules/mob/dead/observer/logout.dm +++ b/code/modules/mob/dead/observer/logout.dm @@ -1,13 +1,6 @@ /mob/dead/observer/Logout() if (client) client.images -= ghost_darkness_images - if(observetarget) - if(ismob(observetarget)) - var/mob/target = observetarget - if(target.observers) - target.observers -= src - UNSETEMPTY(target.observers) - observetarget = null ..() spawn(0) if(src && !key) //we've transferred to another mob. This ghost should be deleted. diff --git a/code/modules/mob/dead/observer/observer.dm b/code/modules/mob/dead/observer/observer.dm index 78abe6f7f9..7ea02593ac 100644 --- a/code/modules/mob/dead/observer/observer.dm +++ b/code/modules/mob/dead/observer/observer.dm @@ -31,7 +31,6 @@ var/list/image/ghost_images_simple = list() //this is a list of all ghost images var/image/ghostimage_simple = null //this mob with the simple white ghost sprite var/ghostvision = 1 //is the ghost able to see things humans can't? var/seedarkness = 1 - var/mob/observetarget = null //The target mob that the ghost is observing. Used as a reference in logout() var/ghost_hud_enabled = 1 //did this ghost disable the on-screen HUD? var/data_huds_on = 0 //Are data HUDs currently enabled? var/list/datahuds = list(DATA_HUD_SECURITY_ADVANCED, DATA_HUD_MEDICAL_ADVANCED, DATA_HUD_DIAGNOSTIC) //list of data HUDs shown to ghosts. @@ -58,10 +57,10 @@ var/list/image/ghost_images_simple = list() //this is a list of all ghost images /mob/dead/observer/New(mob/body) verbs += /mob/dead/observer/proc/dead_tele - + if(global.cross_allowed) verbs += /mob/dead/observer/proc/server_hop - + ghostimage = image(src.icon,src,src.icon_state) if(icon_state in ghost_forms_with_directions_list) ghostimage_default = image(src.icon,src,src.icon_state + "_nodir") @@ -90,10 +89,10 @@ var/list/image/ghost_images_simple = list() //this is a list of all ghost images mind = body.mind //we don't transfer the mind but we keep a reference to it. if(ishuman(body)) var/mob/living/carbon/human/body_human = body - if(HAIR in body_human.dna.species.species_traits) + if(HAIR in body_human.dna.species.specflags) hair_style = body_human.hair_style hair_color = brighten_color(body_human.hair_color) - if(FACEHAIR in body_human.dna.species.species_traits) + if(FACEHAIR in body_human.dna.species.specflags) facial_hair_style = body_human.facial_hair_style facial_hair_color = brighten_color(body_human.facial_hair_color) @@ -118,13 +117,11 @@ var/list/image/ghost_images_simple = list() //this is a list of all ghost images var/old_color = color color = "#960000" animate(src, color = old_color, time = 10) - addtimer(src, "update_atom_colour", 10) /mob/dead/observer/ratvar_act() var/old_color = color color = "#FAE48C" animate(src, color = old_color, time = 10) - addtimer(src, "update_atom_colour", 10) /mob/dead/observer/Destroy() ghost_images_full -= ghostimage @@ -259,6 +256,11 @@ This is the proc mobs get to turn into a ghost. Forked from ghostize due to comp set name = "Ghost" set desc = "Relinquish your life and enter the land of the dead." + if(mental_dominator) + src << "This body's force of will is too strong! You can't break it enough to force them into a catatonic state." + if(mind_control_holder) + mind_control_holder << "Through tremendous force of will, you stop a catatonia attempt!" + return 0 if(stat != DEAD) succumb() if(stat == DEAD) @@ -278,7 +280,7 @@ This is the proc mobs get to turn into a ghost. Forked from ghostize due to comp loc = NewLoc for(var/obj/effect/step_trigger/S in NewLoc) S.Crossed(src) - update_parallax_contents() + return loc = get_turf(src) //Get out of closets and such as a ghost if((direct & NORTH) && y < world.maxy) @@ -300,14 +302,11 @@ This is the proc mobs get to turn into a ghost. Forked from ghostize due to comp ..() if(statpanel("Status")) stat(null, "Station Time: [worldtime2text()]") - if(ticker && ticker.mode) - for(var/datum/gang/G in ticker.mode.gangs) - if(G.is_dominating) - stat(null, "[G.name] Gang Takeover: [max(G.domination_time_remaining(), 0)]") - if(istype(ticker.mode, /datum/game_mode/blob)) - var/datum/game_mode/blob/B = ticker.mode - if(B.message_sent) - stat(null, "Blobs to Blob Win: [blobs_legit.len]/[B.blobwincount]") + if(ticker) + if(ticker.mode) + for(var/datum/gang/G in ticker.mode.gangs) + if(G.is_dominating) + stat(null, "[G.name] Gang Takeover: [max(G.domination_time_remaining(), 0)]") /mob/dead/observer/verb/reenter_corpse() set category = "Ghost" @@ -337,12 +336,9 @@ This is the proc mobs get to turn into a ghost. Forked from ghostize due to comp A.icon = ui_style2icon(client.prefs.UI_style) A.desc = message var/old_layer = source.layer - var/old_plane = source.plane source.layer = FLOAT_LAYER - source.plane = FLOAT_PLANE A.add_overlay(source) source.layer = old_layer - source.plane = old_plane src << "(Click to re-enter)" if(sound) src << sound(sound) @@ -351,7 +347,7 @@ This is the proc mobs get to turn into a ghost. Forked from ghostize due to comp set category = "Ghost" set name = "Teleport" set desc= "Teleport to a location" - if(!isobserver(usr)) + if(!istype(usr, /mob/dead/observer)) usr << "Not when you're not dead!" return var/A @@ -368,7 +364,6 @@ This is the proc mobs get to turn into a ghost. Forked from ghostize due to comp usr << "No area available." usr.loc = pick(L) - update_parallax_contents() /mob/dead/observer/verb/follow() set category = "Ghost" @@ -390,7 +385,7 @@ This is the proc mobs get to turn into a ghost. Forked from ghostize due to comp var/orbitsize = (I.Width()+I.Height())*0.5 orbitsize -= (orbitsize/world.icon_size)*(world.icon_size*0.25) - if(orbiting && orbiting.orbiting != target) + if(orbiting != target) src << "Now orbiting [target]." var/rot_seg @@ -410,21 +405,20 @@ This is the proc mobs get to turn into a ghost. Forked from ghostize due to comp orbit(target,orbitsize, FALSE, 20, rot_seg) /mob/dead/observer/orbit() - setDir(2)//reset dir so the right directional sprites show up - ..() - -/mob/dead/observer/stop_orbit() + setDir(2 )//reset dir so the right directional sprites show up ..() //restart our floating animation after orbit is done. - pixel_y = 0 - animate(src, pixel_y = 2, time = 10, loop = -1) + sleep 2 //orbit sets up a 2ds animation when it finishes, so we wait for that to end + if (!orbiting) //make sure another orbit hasn't started + pixel_y = 0 + animate(src, pixel_y = 2, time = 10, loop = -1) /mob/dead/observer/verb/jumptomob() //Moves the ghost instead of just changing the ghosts's eye -Nodrak set category = "Ghost" set name = "Jump to Mob" set desc = "Teleport to a mob" - if(isobserver(usr)) //Make sure they're an observer! + if(istype(usr, /mob/dead/observer)) //Make sure they're an observer! var/list/dest = list() //List of possible destinations (mobs) @@ -442,7 +436,6 @@ This is the proc mobs get to turn into a ghost. Forked from ghostize due to comp if(T && isturf(T)) //Make sure the turf exists, then move the source to that destination. A.loc = T - A.update_parallax_contents() else A << "This mob is not located in the game world." @@ -497,18 +490,13 @@ This is the proc mobs get to turn into a ghost. Forked from ghostize due to comp updateghostimages() /proc/updateallghostimages() - listclearnulls(ghost_images_full) - listclearnulls(ghost_images_default) - listclearnulls(ghost_images_simple) - listclearnulls(ghost_darkness_images) - for (var/mob/dead/observer/O in player_list) O.updateghostimages() /mob/dead/observer/proc/updateghostimages() if (!client) return - + if(lastsetting) switch(lastsetting) //checks the setting we last came from, for a little efficiency so we don't try to delete images from the client that it doesn't have anyway if(GHOST_OTHERS_THEIR_SETTING) @@ -555,7 +543,7 @@ This is the proc mobs get to turn into a ghost. Forked from ghostize due to comp if(!target) return 0 - if(ismegafauna(target)) + if(istype (target, /mob/living/simple_animal/hostile/megafauna)) src << "This creature is too powerful for you to possess!" return 0 @@ -567,7 +555,6 @@ This is the proc mobs get to turn into a ghost. Forked from ghostize due to comp return 0 target.key = key - target.faction = list("neutral") return 1 /mob/dead/observer/proc/server_hop() @@ -576,7 +563,7 @@ This is the proc mobs get to turn into a ghost. Forked from ghostize due to comp set desc= "Jump to the other server" if (alert(src, "Jump to server running at [global.cross_address]?", "Server Hop", "Yes", "No") != "Yes") return 0 - if (client && global.cross_allowed) + if (client && global.cross_allowed) src << "Sending you to [global.cross_address]." winset(src, null, "command=.options") //other wise the user never knows if byond is downloading resources client << link(global.cross_address) @@ -669,10 +656,10 @@ This is the proc mobs get to turn into a ghost. Forked from ghostize due to comp if(client.prefs.be_random_body) client.prefs.random_character(gender) - if(HAIR in client.prefs.pref_species.species_traits) + if(HAIR in client.prefs.pref_species.specflags) hair_style = client.prefs.hair_style hair_color = brighten_color(client.prefs.hair_color) - if(FACEHAIR in client.prefs.pref_species.species_traits) + if(FACEHAIR in client.prefs.pref_species.specflags) facial_hair_style = client.prefs.facial_hair_style facial_hair_color = brighten_color(client.prefs.facial_hair_color) @@ -686,7 +673,7 @@ This is the proc mobs get to turn into a ghost. Forked from ghostize due to comp /mob/dead/observer/is_literate() return 1 -/mob/dead/observer/vv_edit_var(var_name, var_value) +/mob/dead/observer/on_varedit(var_name) . = ..() switch(var_name) if("icon") @@ -704,56 +691,3 @@ This is the proc mobs get to turn into a ghost. Forked from ghostize due to comp else verbs -= /mob/dead/observer/verb/boo verbs -= /mob/dead/observer/verb/possess - -/mob/dead/observer/reset_perspective(atom/A) - if(client) - if(ismob(client.eye) && (client.eye != src)) - var/mob/target = client.eye - observetarget = null - if(target.observers) - target.observers -= src - UNSETEMPTY(target.observers) - if(..()) - if(hud_used) - client.screen = list() - hud_used.show_hud(hud_used.hud_version) - -/mob/dead/observer/verb/observe() - set name = "Observe" - set category = "OOC" - - var/list/creatures = getpois() - - reset_perspective(null) - - var/eye_name = null - - eye_name = input("Please, select a player!", "Observe", null, null) as null|anything in creatures - - if (!eye_name) - return - - var/mob/mob_eye = creatures[eye_name] - //Istype so we filter out points of interest that are not mobs - if(client && mob_eye && istype(mob_eye)) - client.eye = mob_eye - client.screen = list() - if(mob_eye.hud_used) - LAZYINITLIST(mob_eye.observers) - mob_eye.observers |= src - mob_eye.hud_used.show_hud(1,src) - observetarget = mob_eye - -/mob/dead/observer/verb/register_pai_candidate() - set category = "Ghost" - set name = "pAI Setup" - set desc = "Upload a fragment of your personality to the global pAI databanks" - - register_pai() - -/mob/dead/observer/proc/register_pai() - if(istype(src, /mob/dead/observer)) - if(SSpai) - SSpai.recruitWindow(src) - else - usr << "Can't become a pAI candidate while not dead!" diff --git a/code/modules/mob/dead/observer/say.dm b/code/modules/mob/dead/observer/say.dm index 6ec0224508..5a2a785bc2 100644 --- a/code/modules/mob/dead/observer/say.dm +++ b/code/modules/mob/dead/observer/say.dm @@ -6,13 +6,25 @@ log_say("Ghost/[src.key] : [message]") + if(jobban_isbanned(src, "OOC")) + src << "You have been banned from deadchat." + return + + if (src.client) + if(src.client.prefs.muted & MUTE_DEADCHAT) + src << "You cannot talk in deadchat (muted)." + return + + if (src.client.handle_spam_prevention(message,MUTE_DEADCHAT)) + return + . = src.say_dead(message) /mob/dead/observer/Hear(message, atom/movable/speaker, message_langs, raw_message, radio_freq, list/spans) if(radio_freq) var/atom/movable/virtualspeaker/V = speaker - if(isAI(V.source)) + if(istype(V.source, /mob/living/silicon/ai)) var/mob/living/silicon/ai/S = V.source speaker = S.eyeobj else diff --git a/code/modules/mob/interactive.dm b/code/modules/mob/interactive.dm index dd43d3b90b..74b86a0b79 100644 --- a/code/modules/mob/interactive.dm +++ b/code/modules/mob/interactive.dm @@ -72,9 +72,6 @@ var/forceProcess = 0 var/processTime = 8 var/lastProc = 0 - var/walkdebug = 0 //causes sparks in our path target. used for debugging - var/debugexamine = 0 //If we show debug info in our examine - var/showexaminetext = 1 //If we show our telltale examine text var/list/knownStrings = list() @@ -139,14 +136,13 @@ retal = 1 retal_target = user -/mob/living/carbon/human/interactive/bullet_act(obj/item/projectile/P, def_zone) +/mob/living/carbon/human/interactive/bullet_act(var/obj/item/projectile/P) var/potentialAssault = locate(/mob/living) in view(2,P.starting) if(potentialAssault) retal = 1 retal_target = potentialAssault ..() - /client/proc/resetSNPC(var/mob/A in SSnpc.botPool_l) set name = "Reset SNPC" set desc = "Reset the SNPC" @@ -299,9 +295,11 @@ for(var/X in bodyparts) var/obj/item/bodypart/BP = X if(prob((FUZZY_CHANCE_LOW+FUZZY_CHANCE_HIGH)/4)) - BP.change_bodypart_status(BODYPART_ROBOTIC) + BP.change_bodypart_status(ORGAN_ROBOTIC) update_icons() - update_damage_overlays() + update_damage_overlays(0) + + hand = 0 functions = list("nearbyscan","combat","shitcurity","chatter") // stop customize adding multiple copies of a function //job specific favours switch(myjob.title) @@ -376,8 +374,8 @@ var/datum/objective_item/steal/S = new A traitorTarget = locate(S.targetitem) in world if(SNPC_MARTYR) // MY LIFE FOR SPESZUL - var/targetType = pick(/obj/machinery/gravity_generator/main/station,/obj/machinery/power/smes/engineering,/obj/machinery/telecomms/hub) - traitorTarget = locate(targetType) in machines + var/targetType = pick(/obj/structure/particle_accelerator,/obj/machinery/gravity_generator/main,/obj/machinery/power/smes) + traitorTarget = locate(targetType) in world if(SNPC_PSYCHO) // YOU'RE LIKE A FLESH BICYLE AND I WANT TO DISMANTLE YOU traitorTarget = null @@ -411,9 +409,9 @@ var/mob/living/carbon/human/M = target if(target) if(health > 0) - if(M.a_intent == INTENT_HELP) + if(M.a_intent == "help") chatter() - if(M.a_intent == INTENT_HARM) + if(M.a_intent == "harm") retal = 1 retal_target = target @@ -425,6 +423,10 @@ if(C) retalTarget(C) +/mob/living/carbon/human/interactive/bullet_act(obj/item/projectile/P, def_zone) + ..(P,def_zone) + retalTarget(P.firer) + /mob/living/carbon/human/interactive/attack_hand(mob/living/carbon/human/M) ..(M) retalTarget(M) @@ -488,35 +490,28 @@ if(other_hand) if(other_hand.loc != src) other_hand = null - - var/obj/item/L = get_item_for_held_index(1) //just going to hardcode SNPCs to 2 hands, for now. - var/obj/item/R = get_item_for_held_index(2) //they're just VERY assume-y about 2 hands. - if(active_hand_index == 1) - if(!L) + if(hand) + if(!l_hand) main_hand = null - if(R) + if(r_hand) swap_hands() else - if(!R) + if(!r_hand) main_hand = null - if(L) + if(l_hand) swap_hands() - /mob/living/carbon/human/interactive/proc/swap_hands() - var/oindex = active_hand_index - if(active_hand_index == 1) - active_hand_index = 2 - else - active_hand_index = 1 - main_hand = get_active_held_item() - other_hand = get_item_for_held_index(oindex) + hand = !hand + var/obj/item/T = other_hand + main_hand = other_hand + other_hand = T update_hands = 1 /mob/living/carbon/human/interactive/proc/take_to_slot(obj/item/G, var/hands=0) - var/list/slots = list ("left pocket" = slot_l_store,"right pocket" = slot_r_store,"left hand" = slot_hands,"right hand" = slot_hands) + var/list/slots = list ("left pocket" = slot_l_store,"right pocket" = slot_r_store,"left hand" = slot_l_hand,"right hand" = slot_r_hand) if(hands) - slots = list ("left hand" = slot_hands,"right hand" = slot_hands) + slots = list ("left hand" = slot_l_hand,"right hand" = slot_r_hand) G.loc = src if(G.force && G.force > best_force) best_force = G.force @@ -524,7 +519,7 @@ update_hands = 1 /mob/living/carbon/human/interactive/proc/insert_into_backpack() - var/list/slots = list ("left pocket" = slot_l_store,"right pocket" = slot_r_store,"left hand" = slot_hands,"right hand" = slot_hands) + var/list/slots = list ("left pocket" = slot_l_store,"right pocket" = slot_r_store,"left hand" = slot_l_hand,"right hand" = slot_r_hand) var/obj/item/I = get_item_by_slot(pick(slots)) var/obj/item/weapon/storage/BP = get_item_by_slot(slot_back) if(back && BP && I) @@ -608,16 +603,14 @@ D.open() if(update_hands) - var/obj/item/l_hand = get_item_for_held_index(1) - var/obj/item/r_hand = get_item_for_held_index(2) if(l_hand || r_hand) if(l_hand) - active_hand_index = 1 + hand = 1 main_hand = l_hand if(r_hand) other_hand = r_hand else if(r_hand) - active_hand_index = 2 + hand = 0 main_hand = r_hand if(l_hand) //this technically shouldnt occur, but its a redundancy other_hand = l_hand @@ -626,7 +619,7 @@ if(pulledby) if(Adjacent(pulledby)) - a_intent = INTENT_DISARM + a_intent = "disarm" pulledby.attack_hand(src) inactivity_period = 10 @@ -665,12 +658,12 @@ if(istype(TARGET, /obj/item/weapon)) var/obj/item/weapon/W = TARGET if(W.force >= best_force || prob((FUZZY_CHANCE_LOW+FUZZY_CHANCE_HIGH)/2)) - if(!get_item_for_held_index(1) || !get_item_for_held_index(2)) + if(!l_hand || !r_hand) put_in_hands(W) else insert_into_backpack() else - if(!get_item_for_held_index(1) || !get_item_for_held_index(2)) + if(!l_hand || !r_hand) put_in_hands(TARGET) else insert_into_backpack() @@ -760,8 +753,8 @@ spawn(0) call(src,Proc)(src) -/mob/living/carbon/human/interactive/proc/tryWalk(turf/inTarget, override = 0) - if(restrictedJob && !override) // we're a job that has to stay in our home +/mob/living/carbon/human/interactive/proc/tryWalk(turf/inTarget) + if(restrictedJob) // we're a job that has to stay in our home if(!(get_turf(inTarget) in get_area_turfs(job2area(myjob)))) TARGET = null return @@ -803,13 +796,6 @@ if(!target) return 0 - if(walkdebug) - var/datum/effect_system/spark_spread/spark_system = new /datum/effect_system/spark_spread - spark_system.set_up(5, 0, target) - spark_system.attach(target) - spark_system.start() - - if(myPath.len <= 0) myPath = get_path_to(src, get_turf(target), /turf/proc/Distance, MAX_RANGE_FIND + 1, 250,1, id=Path_ID) @@ -1079,27 +1065,27 @@ if(change) HP.attackby(internalBeaker,src) - var/obj/item/weapon/reagent_containers/food/snacks/grown/GF = locate(/obj/item/weapon/reagent_containers/food/snacks/grown) in view(12,src) - if(GF) - if(!Adjacent(GF)) - tryWalk(get_turf(GF)) - else - GF.attackby(internalBag,src) + var/obj/item/weapon/reagent_containers/food/snacks/grown/GF = locate(/obj/item/weapon/reagent_containers/food/snacks/grown) in view(12,src) + if(GF) + if(!Adjacent(GF)) + tryWalk(get_turf(GF)) + else + GF.attackby(internalBag,src) - if(internalBag.contents.len > 0) - var/obj/machinery/smartfridge/SF = locate(/obj/machinery/smartfridge) in range(12,src) - if(!Adjacent(SF)) - tryWalk(get_turf(SF), 1) - else - customEmote("[src] [pick("gibbers","drools","slobbers","claps wildly","spits")], upending the [internalBag]'s contents all over the [SF]!") - //smartfridges call updateUsrDialog when you call attackby, so we're going to have to cheese-magic-space this - for(var/obj/toLoad in internalBag.contents) - if(contents.len >= SF.max_n_of_items) - break - if(SF.accept_check(toLoad)) - SF.load(toLoad) - else - qdel(toLoad) // destroy everything we dont need + if(internalBag.contents.len > 0) + var/obj/machinery/smartfridge/SF = locate(/obj/machinery/smartfridge) in range(12,src) + if(!Adjacent(SF)) + tryWalk(get_turf(SF)) + else + customEmote("[src] [pick("gibbers","drools","slobbers","claps wildly","spits")], upending the [internalBag]'s contents all over the [SF]!") + //smartfridges call updateUsrDialog when you call attackby, so we're going to have to cheese-magic-space this + for(var/obj/toLoad in internalBag.contents) + if(contents.len >= SF.max_n_of_items) + break + if(SF.accept_check(toLoad)) + SF.load(toLoad) + else + qdel(toLoad) // destroy everything we dont need /mob/living/carbon/human/interactive/proc/bartend(obj) if(shouldModulePass()) @@ -1158,11 +1144,11 @@ var/mob/living/carbon/human/clownTarget var/list/clownPriority = list() - var/obj/item/weapon/reagent_containers/spray/S = locate(/obj/item/weapon/reagent_containers/spray) in allContents - - if(!S) - S = new/obj/item/weapon/reagent_containers/spray(src) - S.amount_per_transfer_from_this = 10 + var/obj/item/weapon/reagent_containers/spray/S + if(!locate(/obj/item/weapon/reagent_containers/spray) in allContents) + new/obj/item/weapon/reagent_containers/spray(src) + else + S = locate(/obj/item/weapon/reagent_containers/spray) in allContents for(var/mob/living/carbon/human/C in rangeCheck) var/pranksNearby = 100 @@ -1225,25 +1211,27 @@ if(shouldTryHeal == 1) for(var/mob/living/carbon/human/C in nearby) - if(C.health <= 75) - if(get_dist(src,C) <= 2) - src.say("Wait, [C], let me heal you!") - M.attack(C,src) - sleep(25) - else - tryWalk(get_turf(C)) + if(istype(C,/mob/living/carbon/human)) //I haven't the foggiest clue why this is turning up non-carbons but sure here whatever + if(C.health <= 75) + if(get_dist(src,C) <= 2) + src.say("Wait, [C], let me heal you!") + M.attack(C,src) + sleep(25) + else + tryWalk(get_turf(C)) else if(shouldTryHeal == 2) if(HPS) if(HPS.reagents.total_volume <= 0) HPS.reagents.add_reagent("tricordrazine",30) for(var/mob/living/carbon/human/C in nearby) - if(C.health <= 75 && C.reagents.get_reagent_amount("tricordrazine") <= 0) // make sure they wont be overdosing - if(get_dist(src,C) <= 2) - src.say("Wait, [C], let me heal you!") - HPS.attack(C,src) - sleep(25) - else - tryWalk(get_turf(C)) + if(istype(C,/mob/living/carbon/human)) + if(C.health <= 75 && C.reagents.get_reagent_amount("tricordrazine") <= 0) // make sure they wont be overdosing + if(get_dist(src,C) <= 2) + src.say("Wait, [C], let me heal you!") + HPS.attack(C,src) + sleep(25) + else + tryWalk(get_turf(C)) /mob/living/carbon/human/interactive/proc/dojanitor(obj) @@ -1272,7 +1260,8 @@ sleep(25) /mob/living/carbon/human/interactive/proc/customEmote(var/text) - visible_message("[text]") + for(var/mob/living/carbon/M in view(src)) + M.show_message("[text]", 2) // START COOKING MODULE /mob/living/carbon/human/interactive/proc/cookingwithmagic(var/obj/item/weapon/reagent_containers/food/snacks/target) @@ -1329,7 +1318,7 @@ if(SF) if(SF.contents.len > 0) if(!Adjacent(SF)) - tryWalk(get_turf(SF),1) + tryWalk(get_turf(SF)) else customEmote("[src] [pick("gibbers","drools","slobbers","claps wildly","spits")], grabbing various foodstuffs from [SF] and sticking them in it's mouth!") for(var/obj/item/A in SF.contents) @@ -1469,7 +1458,7 @@ if(canmove) if((graytide || (TRAITS & TRAIT_MEAN)) || retal) interest += targetInterestShift - a_intent = INTENT_HARM + a_intent = "harm" zone_selected = pick("chest","r_leg","l_leg","r_arm","l_arm","head") doing |= FIGHTING if(retal) @@ -1520,7 +1509,7 @@ if((TARGET && (doing & FIGHTING))) // this is a redundancy check var/mob/living/M = TARGET - if(isliving(M)) + if(istype(M,/mob/living)) if(M.health > 1) //THROWING OBJECTS for(var/A in allContents) @@ -1547,8 +1536,8 @@ if(istype(main_hand,/obj/item/weapon/gun)) var/obj/item/weapon/gun/G = main_hand if(G.can_trigger_gun(src)) - if(istype(main_hand,/obj/item/weapon/gun/ballistic)) - var/obj/item/weapon/gun/ballistic/P = main_hand + if(istype(main_hand,/obj/item/weapon/gun/projectile)) + var/obj/item/weapon/gun/projectile/P = main_hand if(!P.chambered) P.chamber_round() P.update_icon() @@ -1589,7 +1578,7 @@ tryWalk(TARGET) else if(Adjacent(TARGET)) - a_intent = pick(INTENT_DISARM, INTENT_HARM) + a_intent = pick("disarm","harm") M.attack_hand(src) timeout++ else if(timeout >= 10 || !(targetRange(M) > 14)) @@ -1633,11 +1622,3 @@ faction += "bot_grey" graytide = 1 ..() - -//Walk softly and carry a big stick -/mob/living/carbon/human/interactive/robust/New() - TRAITS |= TRAIT_FRIENDLY - TRAITS |= TRAIT_ROBUST - TRAITS |= TRAIT_SMART - faction += "bot_power" - ..() diff --git a/code/modules/mob/inventory.dm b/code/modules/mob/inventory.dm index 81348d5292..75ead02f66 100644 --- a/code/modules/mob/inventory.dm +++ b/code/modules/mob/inventory.dm @@ -1,369 +1,278 @@ -//These procs handle putting s tuff in your hands +//These procs handle putting s tuff in your hand. It's probably best to use these rather than setting l_hand = ...etc //as they handle all relevant stuff like adding it to the player's screen and updating their overlays. -//Returns the thing we're currently holding -/mob/proc/get_active_held_item() - return get_item_for_held_index(active_hand_index) - - -//Finds the opposite limb for the active one (eg: upper left arm will find the item in upper right arm) -//So we're treating each "pair" of limbs as a team, so "both" refers to them -/mob/proc/get_inactive_held_item() - return get_item_for_held_index(get_inactive_hand_index()) - - -//Finds the opposite index for the active one (eg: upper left arm will find the item in upper right arm) -//So we're treating each "pair" of limbs as a team, so "both" refers to them -/mob/proc/get_inactive_hand_index() - var/other_hand = 0 - if(!(active_hand_index % 2)) - other_hand = active_hand_index-1 //finding the matching "left" limb +//Returns the thing in our active hand +/mob/proc/get_active_hand() + if(hand) + return l_hand else - other_hand = active_hand_index+1 //finding the matching "right" limb - if(other_hand < 0 || other_hand > held_items.len) - other_hand = 0 - return other_hand + return r_hand -/mob/proc/get_item_for_held_index(i) - if(i > 0 && i <= held_items.len) - return held_items[i] - return FALSE - - -//Odd = left. Even = right -/mob/proc/held_index_to_dir(i) - if(!(i % 2)) - return "r" - return "l" - - -//Check we have an organ for this hand slot (Dismemberment), Only relevant for humans -/mob/proc/has_hand_for_held_index(i) - return TRUE - - -//Check we have an organ for our active hand slot (Dismemberment),Only relevant for humans -/mob/proc/has_active_hand() - return has_hand_for_held_index(active_hand_index) - - -//Finds the first available (null) index OR all available (null) indexes in held_items based on a side. -//Lefts: 1, 3, 5, 7... -//Rights:2, 4, 6, 8... -/mob/proc/get_empty_held_index_for_side(side = "left", all = FALSE) - var/start = 0 - var/static/list/lefts = list("l" = TRUE,"L" = TRUE,"LEFT" = TRUE,"left" = TRUE) - var/static/list/rights = list("r" = TRUE,"R" = TRUE,"RIGHT" = TRUE,"right" = TRUE) //"to remain silent" - if(lefts[side]) - start = 1 - else if(rights[side]) - start = 2 - if(!start) - return FALSE - var/list/empty_indexes - for(var/i in start to held_items.len step 2) - if(!held_items[i]) - if(!all) - return i - if(!empty_indexes) - empty_indexes = list() - empty_indexes += i - return empty_indexes - - -//Same as the above, but returns the first or ALL held *ITEMS* for the side -/mob/proc/get_held_items_for_side(side = "left", all = FALSE) - var/start = 0 - var/static/list/lefts = list("l" = TRUE,"L" = TRUE,"LEFT" = TRUE,"left" = TRUE) - var/static/list/rights = list("r" = TRUE,"R" = TRUE,"RIGHT" = TRUE,"right" = TRUE) //"to remain silent" - if(lefts[side]) - start = 1 - else if(rights[side]) - start = 2 - if(!start) - return FALSE - var/list/holding_items - for(var/i in start to held_items.len step 2) - var/obj/item/I = held_items[i] - if(I) - if(!all) - return I - if(!holding_items) - holding_items = list() - holding_items += I - return holding_items - - -/mob/proc/get_empty_held_indexes() - var/list/L - for(var/i in 1 to held_items.len) - if(!held_items[i]) - if(!L) - L = list() - L += i - return L - -/mob/proc/get_held_index_of_item(obj/item/I) - return held_items.Find(I) - - -//Sad that this will cause some overhead, but the alias seems necessary -//*I* may be happy with a million and one references to "indexes" but others won't be -/mob/proc/is_holding(obj/item/I) - return get_held_index_of_item(I) - - -//Checks if we're holding an item of type: typepath -/mob/proc/is_holding_item_of_type(typepath) - for(var/obj/item/I in held_items) - if(istype(I, typepath)) - return I - return FALSE - - -//To appropriately fluff things like "they are holding [I] in their [get_held_index_name(get_held_index_of_item(I))]" -//Can be overriden to pass off the fluff to something else (eg: science allowing people to add extra robotic limbs, and having this proc react to that -// with say "they are holding [I] in their Nanotrasen Brand Utility Arm - Right Edition" or w/e -/mob/proc/get_held_index_name(i) - var/list/hand = list() - if(i > 2) - hand += "upper " - var/num = 0 - if(!(i % 2)) - num = i-2 - hand += "right hand" +//Returns the thing in our inactive hand +/mob/proc/get_inactive_hand() + if(hand) + return r_hand else - num = i-1 - hand += "left hand" - num -= (num*0.5) - if(num > 1) //"upper left hand #1" seems weird, but "upper left hand #2" is A-ok - hand += " #[num]" - return hand.Join() - + return l_hand //Returns if a certain item can be equipped to a certain slot. // Currently invalid for two-handed items - call obj/item/mob_can_equip() instead. /mob/proc/can_equip(obj/item/I, slot, disable_warning = 0) - return FALSE + return 0 + +//Puts the item into your l_hand if possible and calls all necessary triggers/updates. returns 1 on success. +/mob/proc/put_in_l_hand(obj/item/W) + if(!put_in_hand_check(W)) + return 0 + if(!has_left_hand()) + return 0 + if(!l_hand) + var/atom/old_loc = W.loc + W.loc = src //TODO: move to equipped? + W.Moved(old_loc, 0) // MSO told me to do this! + l_hand = W + W.layer = ABOVE_HUD_LAYER //TODO: move to equipped? + W.equipped(src,slot_l_hand) + if(W.pulledby) + W.pulledby.stop_pulling() + update_inv_l_hand() + W.pixel_x = initial(W.pixel_x) + W.pixel_y = initial(W.pixel_y) + return 1 + return 0 -/mob/proc/put_in_hand(obj/item/I, hand_index) - if(!put_in_hand_check(I)) - return FALSE - if(!has_hand_for_held_index(hand_index)) - return FALSE - var/obj/item/curr = held_items[hand_index] - if(!curr) - I.loc = src - held_items[hand_index] = I - I.layer = ABOVE_HUD_LAYER - I.plane = ABOVE_HUD_PLANE - I.equipped(src, slot_hands) - if(I.pulledby) - I.pulledby.stop_pulling() - update_inv_hands() - I.pixel_x = initial(I.pixel_x) - I.pixel_y = initial(I.pixel_y) - return hand_index || TRUE - return FALSE +//Puts the item into your r_hand if possible and calls all necessary triggers/updates. returns 1 on success. +/mob/proc/put_in_r_hand(obj/item/W) + if(!put_in_hand_check(W)) + return 0 + if(!has_right_hand()) + return 0 + if(!r_hand) + var/atom/old_loc = W.loc + W.loc = src + W.Moved(old_loc, 0) // MSO told me to do this! + r_hand = W + W.layer = ABOVE_HUD_LAYER + W.equipped(src,slot_r_hand) + if(W.pulledby) + W.pulledby.stop_pulling() + update_inv_r_hand() + W.pixel_x = initial(W.pixel_x) + W.pixel_y = initial(W.pixel_y) + return 1 + return 0 +/mob/proc/put_in_hand_check(obj/item/W) + if(lying && !(W.flags&ABSTRACT)) + return 0 + if(!istype(W)) + return 0 + return 1 -//Puts the item into the first available left hand if possible and calls all necessary triggers/updates. returns 1 on success. -/mob/proc/put_in_l_hand(obj/item/I) - return put_in_hand(I, get_empty_held_index_for_side("l")) - - -//Puts the item into the first available right hand if possible and calls all necessary triggers/updates. returns 1 on success. -/mob/proc/put_in_r_hand(obj/item/I) - return put_in_hand(I, get_empty_held_index_for_side("r")) - - -/mob/proc/put_in_hand_check(obj/item/I) - if(lying && !(I.flags&ABSTRACT)) - return FALSE - if(!istype(I)) - return FALSE - return TRUE - - -//Puts the item into our active hand if possible. returns TRUE on success. -/mob/proc/put_in_active_hand(obj/item/I) - return put_in_hand(I, active_hand_index) - - -//Puts the item into our inactive hand if possible, returns TRUE on success -/mob/proc/put_in_inactive_hand(obj/item/I) - return put_in_hand(I, get_inactive_hand_index()) - - -//Puts the item our active hand if possible. Failing that it tries other hands. Returns TRUE on success. -//If both fail it drops it on the floor and returns FALSE. -//This is probably the main one you need to know :) -/mob/proc/put_in_hands(obj/item/I, del_on_fail = FALSE) - if(!I) - return FALSE - if(put_in_active_hand(I)) - return TRUE - var/hand = get_empty_held_index_for_side("l") - if(!hand) - hand = get_empty_held_index_for_side("r") +//Puts the item into our active hand if possible. returns 1 on success. +/mob/proc/put_in_active_hand(obj/item/W) if(hand) - if(put_in_hand(I, hand)) - return TRUE - if(del_on_fail) - qdel(I) - return FALSE - I.forceMove(get_turf(src)) - I.layer = initial(I.layer) - I.plane = initial(I.plane) - I.dropped(src) - return FALSE + return put_in_l_hand(W) + else + return put_in_r_hand(W) -/mob/proc/put_in_hands_or_del(obj/item/I) - return put_in_hands(I, TRUE) +//Puts the item into our inactive hand if possible. returns 1 on success. +/mob/proc/put_in_inactive_hand(obj/item/W) + if(hand) + return put_in_r_hand(W) + else + return put_in_l_hand(W) + + +//Puts the item our active hand if possible. Failing that it tries our inactive hand. Returns 1 on success. +//If both fail it drops it on the floor and returns 0. +//This is probably the main one you need to know :) +/mob/proc/put_in_hands(obj/item/W) + if(!W) + return 0 + if(put_in_active_hand(W)) + return 1 + else if(put_in_inactive_hand(W)) + return 1 + else + var/atom/old_loc = W.loc + W.loc = get_turf(src) + W.Moved(old_loc, 0) // MSO told me to do this! + W.layer = initial(W.layer) + W.dropped(src) + return 0 /mob/proc/drop_item_v() //this is dumb. if(stat == CONSCIOUS && isturf(loc)) return drop_item() - return FALSE + return 0 -/mob/proc/drop_all_held_items() +//Drops the item in our left hand +/mob/proc/drop_l_hand() if(!loc || !loc.allow_drop()) return - for(var/obj/item/I in held_items) - unEquip(I) + return unEquip(l_hand) //All needed checks are in unEquip + + +//Drops the item in our right hand +/mob/proc/drop_r_hand() + if(!loc || !loc.allow_drop()) + return + return unEquip(r_hand) + //Drops the item in our active hand. /mob/proc/drop_item() - if(!loc || !loc.allow_drop()) - return - var/obj/item/held = get_active_held_item() - return unEquip(held) + if(hand) + return drop_l_hand() + else + return drop_r_hand() //Here lie drop_from_inventory and before_item_take, already forgotten and not missed. + /mob/proc/canUnEquip(obj/item/I, force) if(!I) - return TRUE + return 1 if((I.flags & NODROP) && !force) - return FALSE - return TRUE + return 0 + return 1 /mob/proc/unEquip(obj/item/I, force) //Force overrides NODROP for things like wizarditis and admin undress. if(!I) //If there's nothing to drop, the drop is automatically succesfull. If(unEquip) should generally be used to check for NODROP. - return TRUE + return 1 if((I.flags & NODROP) && !force) - return FALSE + return 0 + + if(I == r_hand) + r_hand = null + update_inv_r_hand() + else if(I == l_hand) + l_hand = null + update_inv_l_hand() - var/hand_index = get_held_index_of_item(I) - if(hand_index) - held_items[hand_index] = null - update_inv_hands() if(I) if(client) client.screen -= I - I.layer = initial(I.layer) - I.plane = initial(I.plane) - I.appearance_flags &= ~NO_CLIENT_COLOR - I.forceMove(loc) + I.loc = loc + I.Moved(src, 0) // MSO told me to do this! I.dropped(src) - return TRUE + if(I) + I.layer = initial(I.layer) + return 1 //Attemps to remove an object on a mob. Will not move it to another area or such, just removes from the mob. -/mob/proc/remove_from_mob(var/obj/item/I) - unEquip(I) - I.screen_loc = null - return TRUE +/mob/proc/remove_from_mob(var/obj/O) + unEquip(O) + O.screen_loc = null + return 1 //Outdated but still in use apparently. This should at least be a human proc. -//Daily reminder to murder this - Remie. -/mob/living/proc/get_equipped_items() - return +/mob/proc/get_equipped_items() + var/list/items = new/list() + + if(hasvar(src,"back")) + if(src:back) + items += src:back + if(hasvar(src,"belt")) + if(src:belt) + items += src:belt + if(hasvar(src,"ears")) + if(src:ears) + items += src:ears + if(hasvar(src,"glasses")) + if(src:glasses) + items += src:glasses + if(hasvar(src,"gloves")) + if(src:gloves) + items += src:gloves + if(hasvar(src,"head")) + if(src:head) + items += src:head + if(hasvar(src,"shoes")) + if(src:shoes) + items += src:shoes + if(hasvar(src,"wear_id")) + if(src:wear_id) + items += src:wear_id + if(hasvar(src,"wear_mask")) + if(src:wear_mask) + items += src:wear_mask + if(hasvar(src,"wear_suit")) + if(src:wear_suit) + items += src:wear_suit +/* if(hasvar(src,"w_radio")) + if(src:w_radio) + items += src:w_radio commenting this out since headsets go on your ears now PLEASE DON'T BE MAD KEELIN */ + if(hasvar(src,"w_uniform")) + if(src:w_uniform) + items += src:w_uniform + +/* if(hasvar(src,"l_hand")) + if(src:l_hand) + items += src:l_hand + if(hasvar(src,"r_hand")) + if(src:r_hand) + items += src:r_hand*/ -/mob/living/carbon/get_equipped_items() - var/list/items = list() - if(back) - items += back - if(head) - items += head - if(wear_mask) - items += wear_mask - if(wear_neck) - items += wear_neck return items -/mob/living/carbon/human/get_equipped_items() - var/list/items = ..() - if(belt) - items += belt - if(ears) - items += ears - if(glasses) - items += glasses - if(gloves) - items += gloves - if(shoes) - items += shoes - if(wear_id) - items += wear_id - if(wear_suit) - items += wear_suit - if(w_uniform) - items += w_uniform - return items - - /obj/item/proc/equip_to_best_slot(var/mob/M) - if(src != M.get_active_held_item()) + if(src != M.get_active_hand()) M << "You are not holding anything to equip!" - return FALSE + return 0 if(M.equip_to_appropriate_slot(src)) - M.update_inv_hands() - return TRUE + if(M.hand) + M.update_inv_l_hand() + else + M.update_inv_r_hand() + return 1 if(M.s_active && M.s_active.can_be_inserted(src,1)) //if storage active insert there M.s_active.handle_item_insertion(src) - return TRUE + return 1 - var/obj/item/weapon/storage/S = M.get_inactive_held_item() + var/obj/item/weapon/storage/S = M.get_inactive_hand() if(istype(S) && S.can_be_inserted(src,1)) //see if we have box in other hand S.handle_item_insertion(src) - return TRUE + return 1 S = M.get_item_by_slot(slot_belt) if(istype(S) && S.can_be_inserted(src,1)) //else we put in belt S.handle_item_insertion(src) - return TRUE + return 1 - S = M.get_item_by_slot(slot_generic_dextrous_storage) //else we put in whatever is in drone storage + S = M.get_item_by_slot(slot_drone_storage) //else we put in whatever is in drone storage if(istype(S) && S.can_be_inserted(src,1)) S.handle_item_insertion(src) S = M.get_item_by_slot(slot_back) //else we put in backpack if(istype(S) && S.can_be_inserted(src,1)) S.handle_item_insertion(src) - return TRUE + playsound(src.loc, "rustle", 50, 1, -5) + return 1 M << "You are unable to equip that!" - return FALSE + return 0 /mob/verb/quick_equip() set name = "quick-equip" set hidden = 1 - var/obj/item/I = get_active_held_item() + var/obj/item/I = get_active_hand() if (I) I.equip_to_best_slot(src) @@ -373,46 +282,3 @@ /mob/proc/getBeltSlot() return slot_belt - - - -//Inventory.dm is -kind of- an ok place for this I guess - -//This is NOT for dismemberment, as the user still technically has 2 "hands" -//This is for multi-handed mobs, such as a human with a third limb installed -//This is a very rare proc to call (besides admin fuckery) so -//any cost it has isn't a worry -/mob/proc/change_number_of_hands(amt) - if(amt < held_items.len) - for(var/i in held_items.len to amt step -1) - unEquip(held_items[i]) - held_items.len = amt - - if(hud_used) - var/style - if(client && client.prefs) - style = ui_style2icon(client.prefs.UI_style) - hud_used.build_hand_slots(style) - - -/mob/living/carbon/human/change_number_of_hands(amt) - var/old_limbs = held_items.len - if(amt < old_limbs) - for(var/i in hand_bodyparts.len to amt step -1) - var/obj/item/bodypart/BP = hand_bodyparts[i] - BP.dismember() - hand_bodyparts[i] = null - hand_bodyparts.len = amt - else if(amt > old_limbs) - hand_bodyparts.len = amt - for(var/i in old_limbs+1 to amt) - var/path = /obj/item/bodypart/l_arm - if(!(i % 2)) - path = /obj/item/bodypart/r_arm - - var/obj/item/bodypart/BP = new path () - BP.owner = src - BP.held_index = i - bodyparts += BP - hand_bodyparts[i] = BP - ..() //Don't redraw hands until we have organs for them diff --git a/code/modules/mob/living/blood.dm b/code/modules/mob/living/blood.dm index 73ae98b59d..f4c425d912 100644 --- a/code/modules/mob/living/blood.dm +++ b/code/modules/mob/living/blood.dm @@ -22,7 +22,7 @@ // Takes care blood loss and regeneration /mob/living/carbon/human/handle_blood() - if(NOBLOOD in dna.species.species_traits) + if(NOBLOOD in dna.species.specflags) bleed_rate = 0 return @@ -86,7 +86,7 @@ add_splatter_floor(src.loc, 1) /mob/living/carbon/human/bleed(amt) - if(!(NOBLOOD in dna.species.species_traits)) + if(!(NOBLOOD in dna.species.specflags)) ..() @@ -162,13 +162,8 @@ blood_data["trace_chem"] = list2params(temp_chem) if(mind) blood_data["mind"] = mind - else if(last_mind) - blood_data["mind"] = last_mind if(ckey) blood_data["ckey"] = ckey - else if(last_mind) - blood_data["ckey"] = ckey(last_mind.key) - if(!suiciding) blood_data["cloneable"] = 1 blood_data["blood_type"] = copytext(dna.blood_type,1,0) @@ -193,7 +188,7 @@ /mob/living/carbon/human/get_blood_id() if(dna.species.exotic_blood) return dna.species.exotic_blood - else if((NOBLOOD in dna.species.species_traits) || (disabilities & NOCLONE)) + else if((NOBLOOD in dna.species.specflags) || (disabilities & NOCLONE)) return return "blood" @@ -221,43 +216,70 @@ return list("O-", "O+") if("L") return list("L") + if("X") + return list("X") //to add a splatter of blood or other mob liquid. /mob/living/proc/add_splatter_floor(turf/T, small_drip) - if(get_blood_id() != "blood") + if(get_blood_id() != "blood" && get_blood_id() != "xblood") return if(!T) T = get_turf(src) - var/list/temp_blood_DNA if(small_drip) // Only a certain number of drips (or one large splatter) can be on a given turf. - var/obj/effect/decal/cleanable/blood/drip/drop = locate() in T - if(drop) - if(drop.drips < 3) - drop.drips++ - drop.overlays |= pick(drop.random_icon_states) + if(ishuman(src)) + var/mob/living/carbon/human/H = src + if(H.dna.species.id == "xeno") + var/obj/effect/decal/cleanable/xdrip/xdrop = locate() in T + if(xdrop) + if(xdrop.drips < 3) + xdrop.drips++ + xdrop.overlays |= pick(xdrop.random_icon_states) + xdrop.transfer_mob_blood_dna(src) + return + else + temp_blood_DNA = list() + temp_blood_DNA |= xdrop.blood_DNA.Copy() + qdel(xdrop)//the drip is replaced by a bigger splatter + else + xdrop = new(T) + xdrop.transfer_mob_blood_dna(src) + return + else + var/obj/effect/decal/cleanable/blood/drip/drop = locate() in T + if(drop) + if(drop.drips < 3) + drop.drips++ + drop.overlays |= pick(drop.random_icon_states) + drop.transfer_mob_blood_dna(src) + return + else + temp_blood_DNA = list() + temp_blood_DNA |= drop.blood_DNA.Copy() //we transfer the dna from the drip to the splatter + qdel(drop)//the drip is replaced by a bigger splatter + else + drop = new(T) drop.transfer_mob_blood_dna(src) return - else - temp_blood_DNA = list() - temp_blood_DNA |= drop.blood_DNA.Copy() //we transfer the dna from the drip to the splatter - qdel(drop)//the drip is replaced by a bigger splatter - else - drop = new(T) - drop.transfer_mob_blood_dna(src) - return // Find a blood decal or create a new one. var/obj/effect/decal/cleanable/blood/B = locate() in T if(!B) - B = new /obj/effect/decal/cleanable/blood/splatter(T) + if(ishuman(src)) + var/mob/living/carbon/human/H = src + if(H.dna.species.id == "xeno") + B = new /obj/effect/decal/cleanable/xenoblood(T) + else + B = new /obj/effect/decal/cleanable/blood/splatter(T) + else + B = new /obj/effect/decal/cleanable/blood/splatter(T) B.transfer_mob_blood_dna(src) //give blood info to the blood decal. if(temp_blood_DNA) B.blood_DNA |= temp_blood_DNA /mob/living/carbon/human/add_splatter_floor(turf/T, small_drip) - if(!(NOBLOOD in dna.species.species_traits)) + if(!(NOBLOOD in dna.species.specflags)) ..() /mob/living/carbon/alien/add_splatter_floor(turf/T, small_drip) @@ -273,4 +295,4 @@ T = get_turf(src) var/obj/effect/decal/cleanable/oil/B = locate() in T.contents if(!B) - B = new(T) \ No newline at end of file + B = new(T) diff --git a/code/modules/mob/living/bloodcrawl.dm b/code/modules/mob/living/bloodcrawl.dm index b8553642f1..69e85dfb9a 100644 --- a/code/modules/mob/living/bloodcrawl.dm +++ b/code/modules/mob/living/bloodcrawl.dm @@ -6,7 +6,7 @@ density = 0 anchored = 1 invisibility = 60 - resistance_flags = LAVA_PROOF | FIRE_PROOF | UNACIDABLE | ACID_PROOF + burn_state = LAVA_PROOF /obj/effect/dummy/slaughter/relaymove(mob/user, direction) forceMove(get_step(src,direction)) @@ -27,7 +27,7 @@ /mob/living/proc/phaseout(obj/effect/decal/cleanable/B) if(iscarbon(src)) var/mob/living/carbon/C = src - for(var/obj/item/I in C.held_items) + if(C.l_hand || C.r_hand) //TODO make it toggleable to either forcedrop the items, or deny //entry when holding them // literally only an option for carbons though @@ -68,7 +68,7 @@ return // if the thing we're pulling isn't alive - if (!isliving(pullee)) + if (!(istype(pullee, /mob/living))) return var/mob/living/victim = pullee @@ -145,14 +145,15 @@ /mob/living/proc/exit_blood_effect(obj/effect/decal/cleanable/B) playsound(get_turf(src), 'sound/magic/exit_blood.ogg', 100, 1, -1) + var/oldcolor = src.color //Makes the mob have the color of the blood pool it came out of - var/newcolor = rgb(149, 10, 10) if(istype(B, /obj/effect/decal/cleanable/xenoblood)) - newcolor = rgb(43, 186, 0) - add_atom_colour(newcolor, TEMPORARY_COLOUR_PRIORITY) + src.color = rgb(43, 186, 0) + else + src.color = rgb(149, 10, 10) // but only for a few seconds spawn(30) - remove_atom_colour(TEMPORARY_COLOUR_PRIORITY, newcolor) + src.color = oldcolor /mob/living/proc/phasein(obj/effect/decal/cleanable/B) if(src.notransform) diff --git a/code/modules/mob/living/brain/brain.dm b/code/modules/mob/living/brain/brain.dm deleted file mode 100644 index 0b0fa0ccc9..0000000000 --- a/code/modules/mob/living/brain/brain.dm +++ /dev/null @@ -1,67 +0,0 @@ - - -/mob/living/brain - languages_spoken = HUMAN - languages_understood = HUMAN - var/obj/item/device/mmi/container = null - var/timeofhostdeath = 0 - var/emp_damage = 0//Handles a type of MMI damage - var/datum/dna/stored/stored_dna // dna var for brain. Used to store dna, brain dna is not considered like actual dna, brain.has_dna() returns FALSE. - stat = DEAD //we start dead by default - see_invisible = SEE_INVISIBLE_MINIMUM - -/mob/living/brain/New(loc) - ..() - create_dna(src) - stored_dna.initialize_dna(random_blood_type()) - if(isturf(loc)) //not spawned in an MMI or brain organ (most likely adminspawned) - var/obj/item/organ/brain/OB = new(loc) //we create a new brain organ for it. - src.loc = OB - OB.brainmob = src - - -/mob/living/brain/proc/create_dna() - stored_dna = new /datum/dna/stored(src) - if(!stored_dna.species) - var/rando_race = pick(config.roundstart_races) - stored_dna.species = new rando_race() - -/mob/living/brain/Destroy() - if(key) //If there is a mob connected to this thing. Have to check key twice to avoid false death reporting. - if(stat!=DEAD) //If not dead. - death(1) //Brains can die again. AND THEY SHOULD AHA HA HA HA HA HA - ghostize() //Ghostize checks for key so nothing else is necessary. - container = null - return ..() - -/mob/living/brain/update_canmove() - if(in_contents_of(/obj/mecha)) - canmove = 1 - else - canmove = 0 - return canmove - -/mob/living/brain/ex_act() //you cant blow up brainmobs because it makes transfer_to() freak out when borgs blow up. - return - -/mob/living/brain/blob_act(obj/structure/blob/B) - return - -/mob/living/brain/get_eye_protection()//no eyes - return 2 - -/mob/living/brain/get_ear_protection()//no ears - return 2 - -/mob/living/brain/flash_act(intensity = 1, override_blindness_check = 0, affect_silicon = 0) - return // no eyes, no flashing - -/mob/living/brain/can_be_revived() - . = 1 - if(!container || health <= HEALTH_THRESHOLD_DEAD) - return 0 - -/mob/living/brain/fully_replace_character_name(oldname,newname) - ..() - if(stored_dna) - stored_dna.real_name = real_name \ No newline at end of file diff --git a/code/modules/mob/living/carbon/alien/alien.dm b/code/modules/mob/living/carbon/alien/alien.dm index de10d184f2..3f0f4d5179 100644 --- a/code/modules/mob/living/carbon/alien/alien.dm +++ b/code/modules/mob/living/carbon/alien/alien.dm @@ -7,10 +7,10 @@ name = "alien" voice_name = "alien" icon = 'icons/mob/alien.dmi' - gender = FEMALE //All xenos are girls!! + gender = FEMALE dna = null faction = list("alien") - ventcrawler = VENTCRAWLER_ALWAYS + ventcrawler = 2 languages_spoken = ALIEN languages_understood = ALIEN sight = SEE_MOBS @@ -19,6 +19,7 @@ bubble_icon = "alien" type_of_meat = /obj/item/weapon/reagent_containers/food/snacks/meat/slab/xeno var/nightvision = 1 + var/deathNotified = 0 var/obj/item/weapon/card/id/wear_id = null // Fix for station bounced radios -- Skie var/has_fine_manipulation = 0 @@ -37,22 +38,35 @@ verbs += /mob/living/proc/mob_sleep verbs += /mob/living/proc/lay_down - create_bodyparts() //initialize bodyparts + internal_organs += new /obj/item/organ/brain/alien + internal_organs += new /obj/item/organ/alien/hivenode + internal_organs += new /obj/item/organ/tongue/alien - create_internal_organs() + for(var/obj/item/organ/I in internal_organs) + I.Insert(src) AddAbility(new/obj/effect/proc_holder/alien/nightvisiontoggle(null)) ..() -/mob/living/carbon/alien/create_internal_organs() - internal_organs += new /obj/item/organ/brain/alien - internal_organs += new /obj/item/organ/alien/hivenode - internal_organs += new /obj/item/organ/tongue/alien - ..() - /mob/living/carbon/alien/assess_threat() // beepsky won't hunt aliums return -10 +/mob/living/carbon/alien/adjustToxLoss(amount) + return 0 + +/mob/living/carbon/alien/adjustFireLoss(amount) // Weak to Fire + if(amount > 0) + ..(amount * 2) + else + ..(amount) + return + +/mob/living/carbon/alien/check_eye_prot() + return ..() + 2 + +/mob/living/carbon/alien/getToxLoss() + return 0 + /mob/living/carbon/alien/handle_environment(datum/gas_mixture/environment) if(!environment) return @@ -87,6 +101,35 @@ else clear_alert("alien_fire") + +/mob/living/carbon/alien/ex_act(severity, target) + ..() + + switch (severity) + if (1) + gib() + return + + if (2) + adjustBruteLoss(60) + adjustFireLoss(60) + adjustEarDamage(30,120) + + if(3) + adjustBruteLoss(30) + if (prob(50)) + Paralyse(1) + adjustEarDamage(15,60) + + updatehealth() + + +/mob/living/carbon/alien/handle_fire()//Aliens on fire code + if(..()) + return + bodytemperature += BODYTEMP_HEATING_MAX //If you're on fire, you heat up! + return + /mob/living/carbon/alien/reagent_check(datum/reagent/R) //can metabolize all reagents return 0 @@ -186,5 +229,3 @@ Des: Removes all infected images from the alien. if(see_override) see_invisible = see_override -/mob/living/carbon/alien/can_hold_items() - return has_fine_manipulation diff --git a/code/modules/mob/living/carbon/alien/alien_defense.dm b/code/modules/mob/living/carbon/alien/alien_defense.dm index 0615e52b08..1d64c0d0ff 100644 --- a/code/modules/mob/living/carbon/alien/alien_defense.dm +++ b/code/modules/mob/living/carbon/alien/alien_defense.dm @@ -1,10 +1,3 @@ - -/mob/living/carbon/alien/get_eye_protection() - return ..() + 2 //potential cyber implants + natural eye protection - -/mob/living/carbon/alien/get_ear_protection() - return 2 //no ears - /mob/living/carbon/alien/hitby(atom/movable/AM, skipcatch, hitpush) ..(AM, skipcatch = 1, hitpush = 0) @@ -14,7 +7,11 @@ As such, they can either help or harm other aliens. Help works like the human he In all, this is a lot like the monkey code. /N */ /mob/living/carbon/alien/attack_alien(mob/living/carbon/alien/M) - if(isturf(loc) && istype(loc.loc, /area/start)) + if(!ticker || !ticker.mode) + M << "You cannot attack people before the game has started." + return + + if (istype(loc, /turf) && istype(loc.loc, /area/start)) M << "No attacking people at spawn, you jackass." return @@ -26,22 +23,24 @@ In all, this is a lot like the monkey code. /N AdjustParalysis(-3) AdjustStunned(-3) AdjustWeakened(-3) - visible_message("[M.name] nuzzles [src] trying to wake [p_them()] up!") + visible_message("[M.name] nuzzles [src] trying to wake it up!") if ("grab") grabbedby(M) else - if(health > 0) - M.do_attack_animation(src, ATTACK_EFFECT_BITE) + if (health > 0) + M.do_attack_animation(src) playsound(loc, 'sound/weapons/bite.ogg', 50, 1, -1) + var/damage = 1 visible_message("[M.name] bites [src]!", \ - "[M.name] bites [src]!", null, COMBAT_MESSAGE_RANGE) - adjustBruteLoss(1) + "[M.name] bites [src]!") + adjustBruteLoss(damage) add_logs(M, src, "attacked") updatehealth() else M << "[name] is too injured for that." + return /mob/living/carbon/alien/attack_larva(mob/living/carbon/alien/larva/L) @@ -57,11 +56,8 @@ In all, this is a lot like the monkey code. /N help_shake_act(M) if("grab") grabbedby(M) - if ("harm") - M.do_attack_animation(src, ATTACK_EFFECT_PUNCH) - return 1 - if("disarm") - M.do_attack_animation(src, ATTACK_EFFECT_DISARM) + if ("harm", "disarm") + M.do_attack_animation(src) return 1 return 0 @@ -69,8 +65,9 @@ In all, this is a lot like the monkey code. /N /mob/living/carbon/alien/attack_paw(mob/living/carbon/monkey/M) if(..()) if (stat != DEAD) - var/obj/item/bodypart/affecting = get_bodypart(ran_zone(M.zone_selected)) - apply_damage(rand(1, 3), BRUTE, affecting) + adjustBruteLoss(rand(1, 3)) + updatehealth() + return /mob/living/carbon/alien/attack_animal(mob/living/simple_animal/M) @@ -99,28 +96,3 @@ In all, this is a lot like the monkey code. /N adjustBruteLoss(damage) add_logs(M, src, "attacked") updatehealth() - -/mob/living/carbon/alien/ex_act(severity, target, origin) - if(origin && istype(origin, /datum/spacevine_mutation) && isvineimmune(src)) - return - ..() - switch (severity) - if (1) - gib() - return - - if (2) - take_overall_damage(60, 60) - adjustEarDamage(30,120) - - if(3) - take_overall_damage(30,0) - if(prob(50)) - Paralyse(1) - adjustEarDamage(15,60) - -/mob/living/carbon/alien/soundbang_act(intensity = 1, stun_pwr = 1, damage_pwr = 5, deafen_pwr = 15) - return 0 - -/mob/living/carbon/alien/acid_act(acidpwr, acid_volume) - return 0//aliens are immune to acid. diff --git a/code/modules/mob/living/carbon/alien/damage_procs.dm b/code/modules/mob/living/carbon/alien/damage_procs.dm deleted file mode 100644 index 7857c0b565..0000000000 --- a/code/modules/mob/living/carbon/alien/damage_procs.dm +++ /dev/null @@ -1,22 +0,0 @@ - - -/mob/living/carbon/alien/getToxLoss() - return 0 - -/mob/living/carbon/alien/adjustToxLoss(amount) //alien immune to tox damage - return 0 - -/mob/living/carbon/alien/adjustFireLoss(amount) // Weak to Fire - if(amount > 0) - ..(amount * 2) - else - ..(amount) - - - -//aliens are immune to stamina damage. -/mob/living/carbon/alien/adjustStaminaLoss(amount, updating_stamina = 1) - return - -/mob/living/carbon/alien/setStaminaLoss(amount, updating_stamina = 1) - return \ No newline at end of file diff --git a/code/modules/mob/living/carbon/alien/death.dm b/code/modules/mob/living/carbon/alien/death.dm index 2209af0115..745366568a 100644 --- a/code/modules/mob/living/carbon/alien/death.dm +++ b/code/modules/mob/living/carbon/alien/death.dm @@ -1,8 +1,5 @@ -/mob/living/carbon/alien/spawn_gibs(with_bodyparts) - if(with_bodyparts) - new /obj/effect/gibspawner/xeno(loc,viruses) - else - new /obj/effect/gibspawner/xenobodypartless(loc,viruses) +/mob/living/carbon/alien/spawn_gibs() + xgibs(loc, viruses) /mob/living/carbon/alien/gib_animation() PoolOrNew(/obj/effect/overlay/temp/gib_animation, list(loc, "gibbed-a")) @@ -12,3 +9,17 @@ /mob/living/carbon/alien/dust_animation() PoolOrNew(/obj/effect/overlay/temp/dust_animation, list(loc, "dust-a")) + +/mob/living/carbon/alien/proc/deathNotice(var/area/AR, var/turf/T) + if(src.z == 2) //Admin fuckery can continue without giving false death rattles to aliens on station or elsewhere. + return + src.deathNotified = 1 + T = get_turf(src) + var/mob/living/carbon/alien/A + for(A in world) + A << "[src.name] has died at [T.loc.name]! " + +/mob/living/carbon/alien/death(gibbed) + if(!deathNotified) + deathNotice() + ..() diff --git a/code/modules/mob/living/carbon/alien/humanoid/alien_powers.dm b/code/modules/mob/living/carbon/alien/humanoid/alien_powers.dm index 0a119c8ccf..7b151fbc73 100644 --- a/code/modules/mob/living/carbon/alien/humanoid/alien_powers.dm +++ b/code/modules/mob/living/carbon/alien/humanoid/alien_powers.dm @@ -11,6 +11,7 @@ Doesn't work on other aliens/AI.*/ panel = "Alien" var/plasma_cost = 0 var/check_turf = 0 + var/has_action = 1 var/datum/action/spell_action/alien/action = null var/action_icon = 'icons/mob/actions.dmi' @@ -48,7 +49,7 @@ Doesn't work on other aliens/AI.*/ if(!silent) user << "Not enough plasma stored." return 0 - if(check_turf && (!isturf(user.loc) || isspaceturf(user.loc))) + if(check_turf && (!isturf(user.loc) || istype(user.loc, /turf/open/space))) if(!silent) user << "Bad place for a garden!" return 0 @@ -140,16 +141,30 @@ Doesn't work on other aliens/AI.*/ /obj/effect/proc_holder/alien/acid/on_lose(mob/living/carbon/user) user.verbs.Remove(/mob/living/carbon/proc/corrosive_acid) -/obj/effect/proc_holder/alien/acid/proc/corrode(atom/target,mob/living/carbon/user = usr) +/obj/effect/proc_holder/alien/acid/proc/corrode(target,mob/living/carbon/user = usr) if(target in oview(1,user)) - if(target.acid_act(200, 100)) - user.visible_message("[user] vomits globs of vile stuff all over [target]. It begins to sizzle and melt under the bubbling mess of acid!") - return 1 - else - user << "You cannot dissolve this object." - - + // OBJ CHECK + if(isobj(target)) + var/obj/I = target + if(I.unacidable) //So the aliens don't destroy energy fields/singularies/other aliens/etc with their acid. + user << "You cannot dissolve this object." + return 0 + // TURF CHECK + else if(istype(target, /turf)) + var/turf/T = target + // R WALL + if(istype(T, /turf/closed/wall/r_wall)) + user << "You cannot dissolve this object." + return 0 + // R FLOOR + if(istype(T, /turf/open/floor/engine)) + user << "You cannot dissolve this object." + return 0 + else// Not a type we can acid. return 0 + new /obj/effect/acid(get_turf(target), target) + user.visible_message("[user] vomits globs of vile stuff all over [target]. It begins to sizzle and melt under the bubbling mess of acid!") + return 1 else src << "Target is too far away." return 0 @@ -157,10 +172,8 @@ Doesn't work on other aliens/AI.*/ /obj/effect/proc_holder/alien/acid/fire(mob/living/carbon/alien/user) var/O = input("Select what to dissolve:","Dissolve",null) as obj|turf in oview(1,user) - if(!O || user.incapacitated()) - return 0 - else - return corrode(O,user) + if(!O) return 0 + return corrode(O,user) /mob/living/carbon/proc/corrosive_acid(O as obj|turf in oview(1)) // right click menu verb ugh set name = "Corrossive Acid" @@ -178,40 +191,39 @@ Doesn't work on other aliens/AI.*/ name = "Spit Neurotoxin" desc = "Spits neurotoxin at someone, paralyzing them for a short time." action_icon_state = "alien_neurotoxin_0" - active = FALSE + var/active = 0 /obj/effect/proc_holder/alien/neurotoxin/fire(mob/living/carbon/user) - var/message if(active) - message = "You empty your neurotoxin gland." - remove_ranged_ability(message) + user.ranged_ability = null + user << "You empty your neurotoxin gland." + active = 0 + else if(user.ranged_ability && user.ranged_ability != src) + user << "You already have another aimed ability readied! Cancel it first." + return else - message = "You prepare your neurotoxin gland. Left-click to fire at a target!" - add_ranged_ability(user, message, TRUE) + user.ranged_ability = src + active = 1 + user << "You prepare your neurotoxin gland. Left-click to fire at a target!" -/obj/effect/proc_holder/alien/neurotoxin/update_icon() + user.client.click_intercept = user.ranged_ability action.button_icon_state = "alien_neurotoxin_[active]" action.UpdateButtonIcon() -/obj/effect/proc_holder/alien/neurotoxin/InterceptClickOn(mob/living/caller, params, atom/target) - if(..()) - return +/obj/effect/proc_holder/alien/neurotoxin/InterceptClickOn(mob/living/carbon/user, params, atom/target) var/p_cost = 50 - if(!iscarbon(ranged_ability_user) || ranged_ability_user.lying || ranged_ability_user.stat) - remove_ranged_ability(ranged_ability_user) + if(!iscarbon(user) || user.lying || user.stat) return - - var/mob/living/carbon/user = ranged_ability_user - + user.next_click = world.time + 6 + user.face_atom(target) if(user.getPlasma() < p_cost) user << "You need at least [p_cost] plasma to spit." - remove_ranged_ability() return var/turf/T = user.loc var/turf/U = get_step(user, user.dir) // Get the tile infront of the move, based on their direction if(!isturf(U) || !isturf(T)) - return FALSE + return 0 user.visible_message("[user] spits neurotoxin!", "You spit neurotoxin.") var/obj/item/projectile/bullet/neurotoxin/A = new /obj/item/projectile/bullet/neurotoxin(user.loc) @@ -221,25 +233,12 @@ Doesn't work on other aliens/AI.*/ user.newtonian_move(get_dir(U, T)) user.adjustPlasma(-p_cost) - return TRUE + return 1 /obj/effect/proc_holder/alien/neurotoxin/on_lose(mob/living/carbon/user) if(user.ranged_ability == src) user.ranged_ability = null -/obj/effect/proc_holder/alien/neurotoxin/add_ranged_ability(mob/living/user, msg) - ..() - if(isalienadult(user)) - var/mob/living/carbon/alien/humanoid/A = user - A.drooling = 1 - A.update_icons() - -/obj/effect/proc_holder/alien/neurotoxin/remove_ranged_ability(mob/living/user, msg) - ..() - if(isalienadult(user)) - var/mob/living/carbon/alien/humanoid/A = user - A.drooling = 0 - A.update_icons() /obj/effect/proc_holder/alien/resin name = "Secrete Resin" @@ -309,7 +308,7 @@ Doesn't work on other aliens/AI.*/ /obj/effect/proc_holder/alien/sneak name = "Sneak" desc = "Blend into the shadows to stalk your prey." - active = 0 + var/active = 0 action_icon_state = "alien_sneak" diff --git a/code/modules/mob/living/carbon/alien/humanoid/caste/drone.dm b/code/modules/mob/living/carbon/alien/humanoid/caste/drone.dm index 2edb0fa4e0..15f6c69dbd 100644 --- a/code/modules/mob/living/carbon/alien/humanoid/caste/drone.dm +++ b/code/modules/mob/living/carbon/alien/humanoid/caste/drone.dm @@ -7,14 +7,11 @@ /mob/living/carbon/alien/humanoid/drone/New() - AddAbility(new/obj/effect/proc_holder/alien/evolve(null)) - ..() - - -/mob/living/carbon/alien/humanoid/drone/create_internal_organs() internal_organs += new /obj/item/organ/alien/plasmavessel/large internal_organs += new /obj/item/organ/alien/resinspinner internal_organs += new /obj/item/organ/alien/acid + + AddAbility(new/obj/effect/proc_holder/alien/evolve(null)) ..() /mob/living/carbon/alien/humanoid/drone/movement_delay() @@ -39,7 +36,7 @@ if(!isturf(user.loc)) user << "You can't evolve here!" return 0 - if(!get_alien_type(/mob/living/carbon/alien/humanoid/royal)) + if(!alien_type_present(/mob/living/carbon/alien/humanoid/royal)) var/mob/living/carbon/alien/humanoid/royal/praetorian/new_xeno = new (user.loc) user.alien_evolve(new_xeno) return 1 diff --git a/code/modules/mob/living/carbon/alien/humanoid/caste/hunter.dm b/code/modules/mob/living/carbon/alien/humanoid/caste/hunter.dm index 4370797a25..86d0a2c683 100644 --- a/code/modules/mob/living/carbon/alien/humanoid/caste/hunter.dm +++ b/code/modules/mob/living/carbon/alien/humanoid/caste/hunter.dm @@ -6,7 +6,7 @@ icon_state = "alienh_s" var/obj/screen/leap_icon = null -/mob/living/carbon/alien/humanoid/hunter/create_internal_organs() +/mob/living/carbon/alien/humanoid/hunter/New() internal_organs += new /obj/item/organ/alien/plasmavessel/small ..() @@ -45,18 +45,16 @@ if(leaping || stat || buckled || lying) return - if(!has_gravity() || !A.has_gravity()) + if(!has_gravity(src) || !has_gravity(A)) src << "It is unsafe to leap without gravity!" //It's also extremely buggy visually, so it's balance+bugfix return else //Maybe uses plasma in the future, although that wouldn't make any sense... leaping = 1 - weather_immunities += "lava" update_icons() throw_at(A,MAX_ALIEN_LEAP_DIST,1, spin=0, diagonals_first = 1) leaping = 0 - weather_immunities -= "lava" update_icons() /mob/living/carbon/alien/humanoid/hunter/throw_impact(atom/A) @@ -65,20 +63,18 @@ return ..() if(A) - if(isliving(A)) + if(istype(A, /mob/living)) var/mob/living/L = A var/blocked = 0 if(ishuman(A)) var/mob/living/carbon/human/H = A - if(H.check_shields(0, "the [name]", src, attack_type = LEAP_ATTACK)) + if(H.check_shields(90, "the [name]", src, attack_type = THROWN_PROJECTILE_ATTACK)) blocked = 1 if(!blocked) L.visible_message("[src] pounces on [L]!", "[src] pounces on you!") L.Weaken(5) sleep(2)//Runtime prevention (infinite bump() calls on hulks) step_towards(src,L) - else - Weaken(2, 1, 1) toggle_leap(0) pounce_cooldown = !pounce_cooldown @@ -86,7 +82,7 @@ pounce_cooldown = !pounce_cooldown else if(A.density && !A.CanPass(src)) visible_message("[src] smashes into [A]!", "[src] smashes into [A]!") - Weaken(2, 1, 1) + weakened = 2 if(leaping) leaping = 0 diff --git a/code/modules/mob/living/carbon/alien/humanoid/caste/praetorian.dm b/code/modules/mob/living/carbon/alien/humanoid/caste/praetorian.dm index d16c06bea5..100ab9b961 100644 --- a/code/modules/mob/living/carbon/alien/humanoid/caste/praetorian.dm +++ b/code/modules/mob/living/carbon/alien/humanoid/caste/praetorian.dm @@ -11,18 +11,14 @@ real_name = name - AddSpell(new /obj/effect/proc_holder/spell/aoe_turf/repulse/xeno(src)) - AddAbility(new /obj/effect/proc_holder/alien/royal/praetorian/evolve()) - ..() - -/mob/living/carbon/alien/humanoid/royal/praetorian/create_internal_organs() internal_organs += new /obj/item/organ/alien/plasmavessel/large internal_organs += new /obj/item/organ/alien/resinspinner internal_organs += new /obj/item/organ/alien/acid internal_organs += new /obj/item/organ/alien/neurotoxin + AddSpell(new /obj/effect/proc_holder/spell/aoe_turf/repulse/xeno(src)) + AddAbility(new /obj/effect/proc_holder/alien/royal/praetorian/evolve()) ..() - /mob/living/carbon/alien/humanoid/royal/praetorian/movement_delay() . = ..() . += 1 @@ -42,7 +38,7 @@ if(node.recent_queen_death) user << "You are still too burdened with guilt to evolve into a queen." return 0 - if(!get_alien_type(/mob/living/carbon/alien/humanoid/royal/queen)) + if(!alien_type_present(/mob/living/carbon/alien/humanoid/royal/queen)) var/mob/living/carbon/alien/humanoid/royal/queen/new_xeno = new (user.loc) user.alien_evolve(new_xeno) if(new_xeno.client.prefs.unlock_content) diff --git a/code/modules/mob/living/carbon/alien/humanoid/caste/sentinel.dm b/code/modules/mob/living/carbon/alien/humanoid/caste/sentinel.dm index 3f072e470f..e2a8b3980b 100644 --- a/code/modules/mob/living/carbon/alien/humanoid/caste/sentinel.dm +++ b/code/modules/mob/living/carbon/alien/humanoid/caste/sentinel.dm @@ -7,15 +7,11 @@ /mob/living/carbon/alien/humanoid/sentinel/New() - AddAbility(new /obj/effect/proc_holder/alien/sneak) - ..() - -/mob/living/carbon/alien/humanoid/sentinel/create_internal_organs() internal_organs += new /obj/item/organ/alien/plasmavessel internal_organs += new /obj/item/organ/alien/acid internal_organs += new /obj/item/organ/alien/neurotoxin + AddAbility(new /obj/effect/proc_holder/alien/sneak) ..() - /mob/living/carbon/alien/humanoid/sentinel/movement_delay() . = ..() diff --git a/code/modules/mob/living/carbon/alien/humanoid/death.dm b/code/modules/mob/living/carbon/alien/humanoid/death.dm index 38877ee7eb..cf6c5cac7b 100644 --- a/code/modules/mob/living/carbon/alien/humanoid/death.dm +++ b/code/modules/mob/living/carbon/alien/humanoid/death.dm @@ -1,15 +1,22 @@ /mob/living/carbon/alien/humanoid/death(gibbed) if(stat == DEAD) return - stat = DEAD + if(!deathNotified) //Did we message the other aliens that we died? + deathNotice() //If not, do so now. This proc will change the deathNotified var to 1 so it never happens again. + if(!gibbed) playsound(loc, 'sound/voice/hiss6.ogg', 80, 1, 1) visible_message("[src] lets out a waning guttural screech, green blood bubbling from its maw...") update_canmove() update_icons() status_flags |= CANPUSH + if(fireloss >= (maxHealth/2)) + spawn(10) + visible_message("[src] starts shaking...") + spawn(30) + src.gib() return ..() @@ -25,4 +32,20 @@ if(istype(node)) // just in case someone would ever add a diffirent node to hivenode slot node.queen_death() - return ..(gibbed) \ No newline at end of file + return ..(gibbed) + +/mob/living/carbon/alien/humanoid/gib() + visible_message("[src] explodes in a shower of acid blood and gibs!") + for(var/mob/living/M in viewers(2, src)) + if(ishuman(M)) + M << "You're sprayed with acid blood!" + M.adjustFireLoss(15) + M.reagents.add_reagent("xblood",5) + else if(ismonkey(M)) + M << "You're sprayed with acid blood!" + M.adjustFireLoss(15) + M.reagents.add_reagent("xblood",5) + else if(!isalien(M)) + M << "You're sprayed with acid blood!" + M.adjustFireLoss(15) + ..() diff --git a/code/modules/mob/living/carbon/alien/humanoid/humanoid.dm b/code/modules/mob/living/carbon/alien/humanoid/humanoid.dm index 2a846fba0c..c9851483e5 100644 --- a/code/modules/mob/living/carbon/alien/humanoid/humanoid.dm +++ b/code/modules/mob/living/carbon/alien/humanoid/humanoid.dm @@ -3,7 +3,6 @@ icon_state = "alien_s" pass_flags = PASSTABLE butcher_results = list(/obj/item/weapon/reagent_containers/food/snacks/meat/slab/xeno = 5, /obj/item/stack/sheet/animalhide/xeno = 1) - limb_destroyer = 1 var/obj/item/r_store = null var/obj/item/l_store = null var/caste = "" @@ -14,35 +13,89 @@ var/custom_pixel_x_offset = 0 //for admin fuckery. var/custom_pixel_y_offset = 0 var/sneaking = 0 //For sneaky-sneaky mode and appropriate slowdown - var/drooling = 0 //For Neruotoxic spit overlays - bodyparts = list(/obj/item/bodypart/chest/alien, /obj/item/bodypart/head/alien, /obj/item/bodypart/l_arm/alien, - /obj/item/bodypart/r_arm/alien, /obj/item/bodypart/r_leg/alien, /obj/item/bodypart/l_leg/alien) - //This is fine right now, if we're adding organ specific damage this needs to be updated /mob/living/carbon/alien/humanoid/New() AddAbility(new/obj/effect/proc_holder/alien/regurgitate(null)) ..() + /mob/living/carbon/alien/humanoid/movement_delay() . = ..() . += move_delay_add + config.alien_delay + sneaking //move_delay_add is used to slow aliens with stuns +/mob/living/carbon/alien/humanoid/emp_act(severity) + if(r_store) r_store.emp_act(severity) + if(l_store) l_store.emp_act(severity) + ..() + +/mob/living/carbon/alien/humanoid/attack_hulk(mob/living/carbon/human/user) + if(user.a_intent == "harm") + ..(user, 1) + adjustBruteLoss(15) + var/hitverb = "punched" + if(mob_size < MOB_SIZE_LARGE) + Paralyse(1) + step_away(src,user,15) + sleep(1) + step_away(src,user,15) + hitverb = "slammed" + playsound(loc, "punch", 25, 1, -1) + visible_message("[user] has [hitverb] [src]!", \ + "[user] has [hitverb] [src]!") + return 1 + +/mob/living/carbon/alien/humanoid/attack_hand(mob/living/carbon/human/M) + if(..()) + switch(M.a_intent) + if ("harm") + var/damage = rand(1, 9) + if (prob(90)) + playsound(loc, "punch", 25, 1, -1) + visible_message("[M] has punched [src]!", \ + "[M] has punched [src]!") + if ((stat != DEAD) && (damage > 9 || prob(5)))//Regular humans have a very small chance of weakening an alien. + Paralyse(2) + visible_message("[M] has weakened [src]!", \ + "[M] has weakened [src]!") + adjustBruteLoss(damage) + add_logs(M, src, "attacked") + updatehealth() + else + playsound(loc, 'sound/weapons/punchmiss.ogg', 25, 1, -1) + visible_message("[M] has attempted to punch [src]!") + + if ("disarm") + if (!lying) + if (prob(5)) + Paralyse(2) + playsound(loc, 'sound/weapons/thudswoosh.ogg', 50, 1, -1) + add_logs(M, src, "pushed") + visible_message("[M] has pushed down [src]!", \ + "[M] has pushed down [src]!") + else + if (prob(50)) + drop_item() + playsound(loc, 'sound/weapons/thudswoosh.ogg', 50, 1, -1) + visible_message("[M] has disarmed [src]!", \ + "[M] has disarmed [src]!") + else + playsound(loc, 'sound/weapons/punchmiss.ogg', 25, 1, -1) + visible_message("[M] has attempted to disarm [src]!") + /mob/living/carbon/alien/humanoid/restrained(ignore_grab) . = handcuffed /mob/living/carbon/alien/humanoid/show_inv(mob/user) user.set_machine(src) - var/list/dat = list() - dat += {" + var/dat = {"
    [name] -
    "} - for(var/i in 1 to held_items.len) - var/obj/item/I = get_item_for_held_index(i) - dat += "
    [get_held_index_name(i)]:[(I && !(I.flags & ABSTRACT)) ? I : "Empty"]" - dat += "
    Empty Pouches" +
    +
    Left Hand: [l_hand ? l_hand : "Nothing"] +
    Right Hand: [r_hand ? r_hand : "Nothing"] +
    Empty Pouches"} if(handcuffed) dat += "
    Handcuffed" @@ -53,7 +106,7 @@

    Close "} - user << browse(dat.Join(), "window=mob\ref[src];size=325x500") + user << browse(dat, "window=mob\ref[src];size=325x500") onclose(user, "mob\ref[src]") @@ -94,29 +147,39 @@ else return initial(pixel_x) +/mob/living/carbon/alien/humanoid/check_ear_prot() + return 1 + /mob/living/carbon/alien/humanoid/get_permeability_protection() return 0.8 /mob/living/carbon/alien/humanoid/alien_evolve(mob/living/carbon/alien/humanoid/new_xeno) - drop_all_held_items() + drop_l_hand() + drop_r_hand() for(var/atom/movable/A in stomach_contents) stomach_contents.Remove(A) new_xeno.stomach_contents.Add(A) A.loc = new_xeno ..() -//For alien evolution/promotion/queen finder procs. Checks for an active alien of that type -/proc/get_alien_type(var/alienpath) +//For alien evolution/promotion procs. Checks for +proc/alien_type_present(var/alienpath) for(var/mob/living/carbon/alien/humanoid/A in living_mob_list) if(!istype(A, alienpath)) continue if(!A.key || A.stat == DEAD) //Only living aliens with a ckey are valid. continue - return A - return FALSE + return 1 + return 0 /mob/living/carbon/alien/humanoid/check_breath(datum/gas_mixture/breath) if(breath && breath.total_moles() > 0 && !sneaking) playsound(get_turf(src), pick('sound/voice/lowHiss2.ogg', 'sound/voice/lowHiss3.ogg', 'sound/voice/lowHiss4.ogg'), 50, 0, -5) ..() + +/mob/living/carbon/alien/humanoid/grabbedby(mob/living/carbon/user, supress_message = 0) + if(user == src && pulling && grab_state >= GRAB_AGGRESSIVE && !pulling.anchored && iscarbon(pulling)) + devour_mob(pulling, devour_time = 60) + else + ..() \ No newline at end of file diff --git a/code/modules/mob/living/carbon/alien/humanoid/humanoid_defense.dm b/code/modules/mob/living/carbon/alien/humanoid/humanoid_defense.dm deleted file mode 100644 index b6c3b4427b..0000000000 --- a/code/modules/mob/living/carbon/alien/humanoid/humanoid_defense.dm +++ /dev/null @@ -1,68 +0,0 @@ - -/mob/living/carbon/alien/humanoid/grabbedby(mob/living/carbon/user, supress_message = 0) - if(user == src && pulling && grab_state >= GRAB_AGGRESSIVE && !pulling.anchored && iscarbon(pulling)) - devour_mob(pulling, devour_time = 60) - else - ..() - -/mob/living/carbon/alien/humanoid/attack_hulk(mob/living/carbon/human/user, does_attack_animation = 0) - if(user.a_intent == INTENT_HARM) - ..(user, 1) - adjustBruteLoss(15) - var/hitverb = "punched" - if(mob_size < MOB_SIZE_LARGE) - step_away(src,user,15) - sleep(1) - step_away(src,user,15) - hitverb = "slammed" - playsound(loc, "punch", 25, 1, -1) - visible_message("[user] has [hitverb] [src]!", \ - "[user] has [hitverb] [src]!", null, COMBAT_MESSAGE_RANGE) - return 1 - -/mob/living/carbon/alien/humanoid/attack_hand(mob/living/carbon/human/M) - if(..()) - switch(M.a_intent) - if ("harm") - var/damage = rand(1, 9) - if (prob(90)) - playsound(loc, "punch", 25, 1, -1) - visible_message("[M] has punched [src]!", \ - "[M] has punched [src]!", null, COMBAT_MESSAGE_RANGE) - if ((stat != DEAD) && (damage > 9 || prob(5)))//Regular humans have a very small chance of weakening an alien. - Paralyse(2) - visible_message("[M] has weakened [src]!", \ - "[M] has weakened [src]!") - var/obj/item/bodypart/affecting = get_bodypart(ran_zone(M.zone_selected)) - apply_damage(damage, BRUTE, affecting) - add_logs(M, src, "attacked") - else - playsound(loc, 'sound/weapons/punchmiss.ogg', 25, 1, -1) - visible_message("[M] has attempted to punch [src]!", \ - "[M] has attempted to punch [src]!", null, COMBAT_MESSAGE_RANGE) - - if ("disarm") - if (!lying) - if (prob(5)) - Paralyse(2) - playsound(loc, 'sound/weapons/thudswoosh.ogg', 50, 1, -1) - add_logs(M, src, "pushed") - visible_message("[M] has pushed down [src]!", \ - "[M] has pushed down [src]!") - else - if (prob(50)) - drop_item() - playsound(loc, 'sound/weapons/thudswoosh.ogg', 50, 1, -1) - visible_message("[M] has disarmed [src]!", \ - "[M] has disarmed [src]!", null, COMBAT_MESSAGE_RANGE) - else - playsound(loc, 'sound/weapons/punchmiss.ogg', 25, 1, -1) - visible_message("[M] has attempted to disarm [src]!",\ - "[M] has attempted to disarm [src]!", null, COMBAT_MESSAGE_RANGE) - - - -/mob/living/carbon/alien/humanoid/do_attack_animation(atom/A, visual_effect_icon, obj/item/used_item, no_effect, end_pixel_y) - if(!no_effect && !visual_effect_icon) - visual_effect_icon = ATTACK_EFFECT_CLAW - ..() diff --git a/code/modules/mob/living/carbon/alien/humanoid/life.dm b/code/modules/mob/living/carbon/alien/humanoid/life.dm index fd6a73ae7b..d6cd9eea97 100644 --- a/code/modules/mob/living/carbon/alien/humanoid/life.dm +++ b/code/modules/mob/living/carbon/alien/humanoid/life.dm @@ -1,4 +1,4 @@ - +//This file was auto-corrected by findeclaration.exe on 25.5.2012 20:42:32 /mob/living/carbon/alien/humanoid/proc/adjust_body_temperature(current, loc_temp, boost) var/temperature = current diff --git a/code/modules/mob/living/carbon/alien/humanoid/queen.dm b/code/modules/mob/living/carbon/alien/humanoid/queen.dm index 467c472369..ed0ad9abb7 100644 --- a/code/modules/mob/living/carbon/alien/humanoid/queen.dm +++ b/code/modules/mob/living/carbon/alien/humanoid/queen.dm @@ -2,7 +2,7 @@ //Common stuffs for Praetorian and Queen icon = 'icons/mob/alienqueen.dmi' status_flags = 0 - ventcrawler = VENTCRAWLER_NONE //pull over that ass too fat + ventcrawler = 0 //pull over that ass too fat unique_name = 0 pixel_x = -16 bubble_icon = "alienroyal" @@ -22,27 +22,7 @@ maxHealth = 400 health = 400 icon_state = "alienq" - var/datum/action/small_sprite/smallsprite = new/datum/action/small_sprite() -/datum/action/small_sprite - name = "Toggle Giant Sprite - Others will always see you as giant" - button_icon_state = "smallqueen" - background_icon_state = "bg_alien" - var/small = 0 - -/datum/action/small_sprite/Trigger() - ..() - if(!small) - var/image/I = image(icon = 'icons/mob/alien.dmi' , icon_state = "alienq_running", loc = owner) - I.override = 1 - I.pixel_x -= owner.pixel_x - I.pixel_y -= owner.pixel_y - owner.add_alt_appearance("smallqueen", I, list(owner)) - - small = 1 - else - owner.remove_alt_appearance("smallqueen") - small = 0 /mob/living/carbon/alien/humanoid/royal/queen/New() //there should only be one queen @@ -57,22 +37,18 @@ real_name = src.name - AddSpell(new /obj/effect/proc_holder/spell/aoe_turf/repulse/xeno(src)) - AddAbility(new/obj/effect/proc_holder/alien/royal/queen/promote()) - smallsprite.Grant(src) - ..() - -/mob/living/carbon/alien/humanoid/royal/queen/create_internal_organs() internal_organs += new /obj/item/organ/alien/plasmavessel/large/queen internal_organs += new /obj/item/organ/alien/resinspinner internal_organs += new /obj/item/organ/alien/acid internal_organs += new /obj/item/organ/alien/neurotoxin internal_organs += new /obj/item/organ/alien/eggsac + AddSpell(new /obj/effect/proc_holder/spell/aoe_turf/repulse/xeno(src)) + AddAbility(new/obj/effect/proc_holder/alien/royal/queen/promote()) ..() /mob/living/carbon/alien/humanoid/royal/queen/movement_delay() . = ..() - . += 3 + . += 5 //Queen verbs /obj/effect/proc_holder/alien/lay_egg @@ -102,7 +78,7 @@ /obj/effect/proc_holder/alien/royal/queen/promote/fire(mob/living/carbon/alien/user) var/obj/item/queenpromote/prom - if(get_alien_type(/mob/living/carbon/alien/humanoid/royal/praetorian/)) + if(alien_type_present(/mob/living/carbon/alien/humanoid/royal/praetorian/)) user << "You already have a Praetorian!" return 0 else @@ -123,14 +99,14 @@ name = "\improper royal parasite" desc = "Inject this into one of your grown children to promote her to a Praetorian!" icon_state = "alien_medal" - flags = ABSTRACT|NODROP|DROPDEL + flags = ABSTRACT|NODROP icon = 'icons/mob/alien.dmi' /obj/item/queenpromote/attack(mob/living/M, mob/living/carbon/alien/humanoid/user) if(!isalienadult(M) || istype(M, /mob/living/carbon/alien/humanoid/royal)) user << "You may only use this with your adult, non-royal children!" return - if(get_alien_type(/mob/living/carbon/alien/humanoid/royal/praetorian/)) + if(alien_type_present(/mob/living/carbon/alien/humanoid/royal/praetorian/)) user << "You already have a Praetorian!" return @@ -185,4 +161,4 @@ desc = "" icon_state = "alienq" caste = "q" - update_icons() + update_icons() \ No newline at end of file diff --git a/code/modules/mob/living/carbon/alien/humanoid/update_icons.dm b/code/modules/mob/living/carbon/alien/humanoid/update_icons.dm index 3e1f496aa4..80a46f226f 100644 --- a/code/modules/mob/living/carbon/alien/humanoid/update_icons.dm +++ b/code/modules/mob/living/carbon/alien/humanoid/update_icons.dm @@ -20,12 +20,8 @@ icon_state = "alien[caste]_sleep" else if(mob_size == MOB_SIZE_LARGE) icon_state = "alien[caste]" - if(drooling) - add_overlay("alienspit_[caste]") else icon_state = "alien[caste]_s" - if(drooling) - add_overlay("alienspit_s") if(leaping) if(alt_icon == initial(alt_icon)) @@ -54,40 +50,28 @@ ..() update_icons() -/mob/living/carbon/alien/humanoid/update_inv_handcuffed() - remove_overlay(HANDCUFF_LAYER) - var/cuff_icon = "aliencuff_s" - var/dmi_file = 'icons/mob/alien.dmi' - - if(mob_size == MOB_SIZE_LARGE) - cuff_icon = "aliencuff_[caste]" - dmi_file = 'icons/mob/alienqueen.dmi' - - if(handcuffed) - overlays_standing[HANDCUFF_LAYER] = image(dmi_file,icon_state= cuff_icon, layer =-HANDCUFF_LAYER) - apply_overlay(HANDCUFF_LAYER) - //Royals have bigger sprites, so inhand things must be handled differently. -/mob/living/carbon/alien/humanoid/royal/update_inv_hands() +/mob/living/carbon/alien/humanoid/royal/update_inv_r_hand() ..() - remove_overlay(HANDS_LAYER) - var/list/hands = list() - - var/obj/item/l_hand = get_item_for_held_index(1) - if(l_hand) - var/itm_state = l_hand.item_state - if(!itm_state) - itm_state = l_hand.icon_state - var/image/I = image("icon" = alt_inhands_file , "icon_state"="[itm_state][caste]_l", "layer"=-HANDS_LAYER) - hands += I - - var/obj/item/r_hand = get_item_for_held_index(2) + remove_overlay(R_HAND_LAYER) if(r_hand) var/itm_state = r_hand.item_state if(!itm_state) itm_state = r_hand.icon_state - var/image/I = image("icon" = alt_inhands_file , "icon_state"="[itm_state][caste]_r", "layer"=-HANDS_LAYER) - hands += I - overlays_standing[HANDS_LAYER] = hands - apply_overlay(HANDS_LAYER) \ No newline at end of file + var/image/I = image("icon" = alt_inhands_file , "icon_state"="[itm_state][caste]_r", "layer"=-R_HAND_LAYER) + overlays_standing[R_HAND_LAYER] = I + + apply_overlay(R_HAND_LAYER) + +/mob/living/carbon/alien/humanoid/royal/update_inv_l_hand() + ..() + remove_overlay(L_HAND_LAYER) + if(l_hand) + var/itm_state = l_hand.item_state + if(!itm_state) + itm_state = l_hand.icon_state + + var/image/I = image("icon" = alt_inhands_file , "icon_state"="[itm_state][caste]_l", "layer"=-L_HAND_LAYER) + overlays_standing[L_HAND_LAYER] = I + apply_overlay(L_HAND_LAYER) diff --git a/code/modules/mob/living/carbon/alien/larva/death.dm b/code/modules/mob/living/carbon/alien/larva/death.dm index 89559d5899..aab4722b5c 100644 --- a/code/modules/mob/living/carbon/alien/larva/death.dm +++ b/code/modules/mob/living/carbon/alien/larva/death.dm @@ -8,18 +8,3 @@ visible_message("[src] lets out a waning high-pitched cry.") return ..(gibbed) - -/mob/living/carbon/alien/larva/spawn_gibs(with_bodyparts) - if(with_bodyparts) - new /obj/effect/gibspawner/larva(loc,viruses) - else - new /obj/effect/gibspawner/larvabodypartless(loc,viruses) - -/mob/living/carbon/alien/larva/gib_animation() - PoolOrNew(/obj/effect/overlay/temp/gib_animation, list(loc, "gibbed-l")) - -/mob/living/carbon/alien/larva/spawn_dust() - new /obj/effect/decal/remains/xeno(loc) - -/mob/living/carbon/alien/larva/dust_animation() - PoolOrNew(/obj/effect/overlay/temp/dust_animation, list(loc, "dust-l")) diff --git a/code/modules/mob/living/carbon/alien/larva/larva.dm b/code/modules/mob/living/carbon/alien/larva/larva.dm index 1538be2ca9..3bc779294a 100644 --- a/code/modules/mob/living/carbon/alien/larva/larva.dm +++ b/code/modules/mob/living/carbon/alien/larva/larva.dm @@ -14,20 +14,16 @@ var/time_of_birth rotate_on_lying = 0 - bodyparts = list(/obj/item/bodypart/chest/larva, /obj/item/bodypart/head/larva) - //This is fine right now, if we're adding organ specific damage this needs to be updated /mob/living/carbon/alien/larva/New() + regenerate_icons() + internal_organs += new /obj/item/organ/alien/plasmavessel/small/tiny AddAbility(new/obj/effect/proc_holder/alien/hide(null)) AddAbility(new/obj/effect/proc_holder/alien/larva_evolve(null)) ..() -/mob/living/carbon/alien/larva/create_internal_organs() - internal_organs += new /obj/item/organ/alien/plasmavessel/small/tiny - ..() - //This needs to be fixed /mob/living/carbon/alien/larva/Stat() ..() @@ -43,6 +39,37 @@ /mob/living/carbon/alien/larva/attack_ui(slot_id) return +/mob/living/carbon/alien/larva/attack_hulk(mob/living/carbon/human/user) + if(user.a_intent == "harm") + ..(user, 1) + adjustBruteLoss(5 + rand(1,9)) + Paralyse(1) + spawn() + step_away(src,user,15) + sleep(1) + step_away(src,user,15) + return 1 + +/mob/living/carbon/alien/larva/attack_hand(mob/living/carbon/human/M) + if(..()) + var/damage = rand(1, 9) + if (prob(90)) + playsound(loc, "punch", 25, 1, -1) + add_logs(M, src, "attacked") + visible_message("[M] has kicked [src]!", \ + "[M] has kicked [src]!") + if ((stat != DEAD) && (damage > 4.9)) + Paralyse(rand(5,10)) + + adjustBruteLoss(damage) + updatehealth() + else + playsound(loc, 'sound/weapons/punchmiss.ogg', 25, 1, -1) + visible_message("[M] has attempted to kick [src]!", \ + "[M] has attempted to kick [src]!") + + return + /mob/living/carbon/alien/larva/restrained(ignore_grab) . = 0 diff --git a/code/modules/mob/living/carbon/alien/larva/larva_defense.dm b/code/modules/mob/living/carbon/alien/larva/larva_defense.dm deleted file mode 100644 index e976375b6a..0000000000 --- a/code/modules/mob/living/carbon/alien/larva/larva_defense.dm +++ /dev/null @@ -1,34 +0,0 @@ - - -/mob/living/carbon/alien/larva/attack_hand(mob/living/carbon/human/M) - if(..()) - var/damage = rand(1, 9) - if (prob(90)) - playsound(loc, "punch", 25, 1, -1) - add_logs(M, src, "attacked") - visible_message("[M] has kicked [src]!", \ - "[M] has kicked [src]!", null, COMBAT_MESSAGE_RANGE) - if ((stat != DEAD) && (damage > 4.9)) - Paralyse(rand(5,10)) - - var/obj/item/bodypart/affecting = get_bodypart(ran_zone(M.zone_selected)) - apply_damage(damage, BRUTE, affecting) - else - playsound(loc, 'sound/weapons/punchmiss.ogg', 25, 1, -1) - visible_message("[M] has attempted to kick [src]!", \ - "[M] has attempted to kick [src]!", null, COMBAT_MESSAGE_RANGE) - -/mob/living/carbon/alien/larva/attack_hulk(mob/living/carbon/human/user, does_attack_animation = 0) - if(user.a_intent == INTENT_HARM) - ..(user, 1) - adjustBruteLoss(5 + rand(1,9)) - spawn() - step_away(src,user,15) - sleep(1) - step_away(src,user,15) - return 1 - -/mob/living/carbon/alien/larva/do_attack_animation(atom/A, visual_effect_icon, obj/item/used_item, no_effect, end_pixel_y) - if(!no_effect && !visual_effect_icon) - visual_effect_icon = ATTACK_EFFECT_BITE - ..() diff --git a/code/modules/mob/living/carbon/alien/larva/life.dm b/code/modules/mob/living/carbon/alien/larva/life.dm index eda182b5c2..e27e0f8021 100644 --- a/code/modules/mob/living/carbon/alien/larva/life.dm +++ b/code/modules/mob/living/carbon/alien/larva/life.dm @@ -1,4 +1,4 @@ - +//This file was auto-corrected by findeclaration.exe on 25.5.2012 20:42:32 /mob/living/carbon/alien/larva/Life() set invisibility = 0 @@ -6,7 +6,7 @@ if (notransform) return - if(..()) //not dead + if(..()) // GROW! if(amount_grown < max_grown) amount_grown++ @@ -20,7 +20,7 @@ if(health<= -maxHealth || !getorgan(/obj/item/organ/brain)) death() return - if(paralysis || sleeping || getOxyLoss() > 50 || (status_flags & FAKEDEATH) || health <= HEALTH_THRESHOLD_CRIT) + if(paralysis || sleeping || getOxyLoss() > 50 || (status_flags & FAKEDEATH) || health <= config.health_threshold_crit) if(stat == CONSCIOUS) stat = UNCONSCIOUS blind_eyes(1) diff --git a/code/modules/mob/living/carbon/alien/larva/update_icons.dm b/code/modules/mob/living/carbon/alien/larva/update_icons.dm index c99726dfbe..8d28dc9cab 100644 --- a/code/modules/mob/living/carbon/alien/larva/update_icons.dm +++ b/code/modules/mob/living/carbon/alien/larva/update_icons.dm @@ -5,7 +5,7 @@ /mob/living/carbon/alien/larva/update_icons() var/state = 0 - if(amount_grown > 80) + if(amount_grown > 150) state = 2 else if(amount_grown > 50) state = 1 diff --git a/code/modules/mob/living/carbon/alien/life.dm b/code/modules/mob/living/carbon/alien/life.dm index 0bfd788846..f2e8958704 100644 --- a/code/modules/mob/living/carbon/alien/life.dm +++ b/code/modules/mob/living/carbon/alien/life.dm @@ -1,6 +1,3 @@ -/mob/living/carbon/alien/Life() - findQueen() - return..() /mob/living/carbon/alien/check_breath(datum/gas_mixture/breath) if(status_flags & GODMODE) @@ -45,10 +42,4 @@ move_delay_add = max(0, move_delay_add - rand(1, 2)) /mob/living/carbon/alien/handle_changeling() - return - -/mob/living/carbon/alien/handle_fire()//Aliens on fire code - if(..()) - return - bodytemperature += BODYTEMP_HEATING_MAX //If you're on fire, you heat up! return \ No newline at end of file diff --git a/code/modules/mob/living/carbon/alien/organs.dm b/code/modules/mob/living/carbon/alien/organs.dm index a148473f03..c8ef333c04 100644 --- a/code/modules/mob/living/carbon/alien/organs.dm +++ b/code/modules/mob/living/carbon/alien/organs.dm @@ -31,7 +31,7 @@ name = "plasma vessel" icon_state = "plasma" origin_tech = "biotech=5;plasmatech=4" - w_class = WEIGHT_CLASS_NORMAL + w_class = 3 zone = "chest" slot = "plasmavessel" alien_powers = list(/obj/effect/proc_holder/alien/plant, /obj/effect/proc_holder/alien/transfer) @@ -49,7 +49,7 @@ /obj/item/organ/alien/plasmavessel/large name = "large plasma vessel" icon_state = "plasma_large" - w_class = WEIGHT_CLASS_BULKY + w_class = 4 storedPlasma = 200 max_plasma = 500 plasma_rate = 15 @@ -61,7 +61,7 @@ /obj/item/organ/alien/plasmavessel/small name = "small plasma vessel" icon_state = "plasma_small" - w_class = WEIGHT_CLASS_SMALL + w_class = 2 storedPlasma = 100 max_plasma = 150 plasma_rate = 5 @@ -69,7 +69,7 @@ /obj/item/organ/alien/plasmavessel/small/tiny name = "tiny plasma vessel" icon_state = "plasma_tiny" - w_class = WEIGHT_CLASS_TINY + w_class = 1 max_plasma = 100 alien_powers = list(/obj/effect/proc_holder/alien/transfer) @@ -107,7 +107,7 @@ zone = "head" slot = "hivenode" origin_tech = "biotech=5;magnets=4;bluespace=3" - w_class = WEIGHT_CLASS_TINY + w_class = 1 var/recent_queen_death = 0 //Indicates if the queen died recently, aliens are heavily weakened while this is active. alien_powers = list(/obj/effect/proc_holder/alien/whisper) @@ -182,6 +182,6 @@ icon_state = "eggsac" zone = "groin" slot = "eggsac" - w_class = WEIGHT_CLASS_BULKY + w_class = 4 origin_tech = "biotech=6" alien_powers = list(/obj/effect/proc_holder/alien/lay_egg) diff --git a/code/modules/mob/living/carbon/alien/screen.dm b/code/modules/mob/living/carbon/alien/screen.dm index 700680486a..258a5a3cf6 100644 --- a/code/modules/mob/living/carbon/alien/screen.dm +++ b/code/modules/mob/living/carbon/alien/screen.dm @@ -4,31 +4,4 @@ hud_used.alien_plasma_display.maptext = "
    [round(getPlasma())]
    " /mob/living/carbon/alien/larva/updatePlasmaDisplay() - return - -/mob/living/carbon/alien/proc/findQueen() - if(hud_used) - hud_used.alien_queen_finder.cut_overlays() - var/mob/queen = get_alien_type(/mob/living/carbon/alien/humanoid/royal/queen) - if(!queen) - return - var/turf/Q = get_turf(queen) - var/turf/A = get_turf(src) - if(Q.z != A.z) //The queen is on a different Z level, we cannot sense that far. - return - var/Qdir = get_dir(src, Q) - var/Qdist = get_dist(src, Q) - image(icon,loc,icon_state,layer,dir) - var/finder_icon = "finder_center" //Overlay showed when adjacent to or on top of the queen! - switch(Qdist) - if(2 to 7) - finder_icon = "finder_near" - if(8 to 20) - finder_icon = "finder_med" - if(21 to INFINITY) - finder_icon = "finder_far" - var/image/finder_eye = image('icons/mob/screen_alien.dmi', icon_state = finder_icon, dir = Qdir) - hud_used.alien_queen_finder.add_overlay(finder_eye) - -/mob/living/carbon/alien/humanoid/royal/queen/findQueen() - return //Queen already knows where she is. Hopefully. \ No newline at end of file + return \ No newline at end of file diff --git a/code/modules/mob/living/carbon/alien/special/alien_embryo.dm b/code/modules/mob/living/carbon/alien/special/alien_embryo.dm index 897ff345e7..4e26995a3b 100644 --- a/code/modules/mob/living/carbon/alien/special/alien_embryo.dm +++ b/code/modules/mob/living/carbon/alien/special/alien_embryo.dm @@ -41,7 +41,7 @@ var/const/ALIEN_AFK_BRACKET = 450 // 45 seconds if(prob(4)) owner << "Your muscles ache." if(prob(20)) - owner.take_bodypart_damage(1) + owner.take_organ_damage(1) if(prob(4)) owner << "Your stomach hurts." if(prob(20)) @@ -99,7 +99,7 @@ var/const/ALIEN_AFK_BRACKET = 450 // 45 seconds new_xeno.notransform = 0 new_xeno.invisibility = 0 if(gib_on_success) - owner.gib(TRUE) + owner.gib() else owner.adjustBruteLoss(40) owner.overlays -= overlay diff --git a/code/modules/mob/living/carbon/alien/special/facehugger.dm b/code/modules/mob/living/carbon/alien/special/facehugger.dm index c90136a0cd..4fb5562060 100644 --- a/code/modules/mob/living/carbon/alien/special/facehugger.dm +++ b/code/modules/mob/living/carbon/alien/special/facehugger.dm @@ -1,4 +1,4 @@ - +//This file was auto-corrected by findeclaration.exe on 25.5.2012 20:42:32 //TODO: Make these simple_animals @@ -14,7 +14,7 @@ var/const/MAX_ACTIVE_TIME = 400 icon = 'icons/mob/alien.dmi' icon_state = "facehugger" item_state = "facehugger" - w_class = WEIGHT_CLASS_TINY //note: can be picked up by aliens unlike most other items of w_class below 4 + w_class = 1 //note: can be picked up by aliens unlike most other items of w_class below 4 flags = MASKINTERNALS throw_range = 5 tint = 3 @@ -23,8 +23,8 @@ var/const/MAX_ACTIVE_TIME = 400 var/stat = CONSCIOUS //UNCONSCIOUS is the idle state in this case - var/sterile = FALSE - var/real = TRUE //0 for the toy, 1 for real. Sure I could istype, but fuck that. + var/sterile = 0 + var/real = 1 //0 for the toy, 1 for real. Sure I could istype, but fuck that. var/strength = 5 var/attached = 0 @@ -33,16 +33,6 @@ var/const/MAX_ACTIVE_TIME = 400 name = "Lamarr" sterile = 1 -/obj/item/clothing/mask/facehugger/dead - icon_state = "facehugger_dead" - item_state = "facehugger_inactive" - stat = DEAD - -/obj/item/clothing/mask/facehugger/impregnated - icon_state = "facehugger_impregnated" - item_state = "facehugger_impregnated" - stat = DEAD - /obj/item/clothing/mask/facehugger/attack_alien(mob/user) //can be picked up by aliens attack_hand(user) return @@ -78,6 +68,7 @@ var/const/MAX_ACTIVE_TIME = 400 /obj/item/clothing/mask/facehugger/bullet_act(obj/item/projectile/P) if(P.damage) Die() + return /obj/item/clothing/mask/facehugger/temperature_expose(datum/gas_mixture/air, exposed_temperature, exposed_volume) if(exposed_temperature > 300) @@ -101,7 +92,7 @@ var/const/MAX_ACTIVE_TIME = 400 return Attach(AM) return 0 -/obj/item/clothing/mask/facehugger/throw_at(atom/target, range, speed, mob/thrower, spin=1, diagonals_first = 0) +/obj/item/clothing/mask/facehugger/throw_at(atom/target, range, speed, mob/thrower, spin) if(!..()) return if(stat == CONSCIOUS) @@ -116,82 +107,62 @@ var/const/MAX_ACTIVE_TIME = 400 icon_state = "[initial(icon_state)]" Attach(hit_atom) -/obj/item/clothing/mask/facehugger/proc/valid_to_attach(mob/living/M) - // valid targets: corgis, carbons except aliens and devils - // facehugger state early exit checks - if(stat != CONSCIOUS) - return FALSE - if(attached) - return FALSE - if(!iscorgi(M) && !iscarbon(M)) - return FALSE - if(iscarbon(M)) - // disallowed carbons - if(isalien(M) || isdevil(M)) - return FALSE - var/mob/living/carbon/target = M - // gotta have a head to be implanted (no changelings or sentient plants) - if(!target.get_bodypart("head")) - return FALSE - - if(target.getorgan(/obj/item/organ/alien/hivenode) || target.getorgan(/obj/item/organ/body_egg/alien_embryo)) - return FALSE - // carbon, has head, not alien or devil, has no hivenode or embryo: valid - return TRUE - else if(iscorgi(M)) - // corgi: valid - return TRUE - /obj/item/clothing/mask/facehugger/proc/Attach(mob/living/M) - if(!valid_to_attach(M)) - return FALSE - // passed initial checks - time to leap! + if(!isliving(M)) + return 0 + if((!iscorgi(M) && !iscarbon(M)) || isalien(M)) + return 0 + if(attached) + return 0 + else + attached++ + spawn(MAX_IMPREGNATION_TIME) + attached = 0 + if(M.getorgan(/obj/item/organ/alien/hivenode)) + return 0 + if(M.getorgan(/obj/item/organ/body_egg/alien_embryo)) + return 0 + if(stat != CONSCIOUS) + return 0 + if(!sterile) M.take_organ_damage(strength,0) //done here so that even borgs and humans in helmets take damage M.visible_message("[src] leaps at [M]'s face!", \ - "[src] leaps at [M]'s face!") - - // probiscis-blocker handling + "[src] leaps at [M]'s face!") + if(ishuman(M)) + var/mob/living/carbon/human/H = M + if(H.is_mouth_covered(head_only = 1)) + H.visible_message("[src] smashes against [H]'s [H.head]!", \ + "[src] smashes against [H]'s [H.head]!") + Die() + return 0 if(iscarbon(M)) var/mob/living/carbon/target = M if(target.wear_mask) + if(prob(20)) + return 0 var/obj/item/clothing/W = target.wear_mask if(W.flags & NODROP) - return FALSE - if(!istype(W,/obj/item/clothing/mask/facehugger)) - target.unEquip(W) - target.visible_message("[src] tears [W] off of [target]'s face!", \ + return 0 + target.unEquip(W) + + target.visible_message("[src] tears [W] off of [target]'s face!", \ "[src] tears [W] off of [target]'s face!") - if(ishuman(M)) - var/mob/living/carbon/human/H = M - if(H.is_mouth_covered(head_only = 1)) - H.visible_message("[src] smashes against [H]'s [H.head]!", \ - "[src] smashes against [H]'s [H.head]!") - Die() - return FALSE src.loc = target - target.equip_to_slot_if_possible(src, slot_wear_mask, 0, 1, 1) - // early returns and validity checks done: attach. - attached++ - //ensure we detach once we no longer need to be attached - spawn(MAX_IMPREGNATION_TIME) - attached = 0 - - if (iscorgi(M)) + target.equip_to_slot(src, slot_wear_mask,,0) + if(!sterile) + M.Paralyse(MAX_IMPREGNATION_TIME/6) //something like 25 ticks = 20 seconds with the default settings + else if (iscorgi(M)) var/mob/living/simple_animal/pet/dog/corgi/C = M loc = C C.facehugger = src C.regenerate_icons() - if(!sterile) - M.take_bodypart_damage(strength,0) //done here so that humans in helmets take damage - M.Paralyse(MAX_IMPREGNATION_TIME/6) //something like 25 ticks = 20 seconds with the default settings - GoIdle() //so it doesn't jump the people that tear it off spawn(rand(MIN_IMPREGNATION_TIME,MAX_IMPREGNATION_TIME)) Impregnate(M) - return TRUE // time for a smoke + return 1 /obj/item/clothing/mask/facehugger/proc/Impregnate(mob/living/target) if(!target || target.stat == DEAD) //was taken off or something @@ -211,7 +182,7 @@ var/const/MAX_ACTIVE_TIME = 400 icon_state = "[initial(icon_state)]_impregnated" var/obj/item/bodypart/chest/LC = target.get_bodypart("chest") - if((!LC || LC.status != BODYPART_ROBOTIC) && !target.getorgan(/obj/item/organ/body_egg/alien_embryo)) + if((!LC || LC.status != ORGAN_ROBOTIC) && !target.getorgan(/obj/item/organ/body_egg/alien_embryo)) new /obj/item/organ/body_egg/alien_embryo(target) if(iscorgi(target)) diff --git a/code/modules/mob/living/carbon/alien/update_icons.dm b/code/modules/mob/living/carbon/alien/update_icons.dm deleted file mode 100644 index ec3753e697..0000000000 --- a/code/modules/mob/living/carbon/alien/update_icons.dm +++ /dev/null @@ -1,11 +0,0 @@ - - - -/mob/living/carbon/alien/update_damage_overlays() //aliens don't have damage overlays. - return - -/mob/living/carbon/alien/update_body() // we don't use the bodyparts or body layers for aliens. - return - -/mob/living/carbon/alien/update_body_parts()//we don't use the bodyparts layer for aliens. - return \ No newline at end of file diff --git a/code/modules/mob/living/brain/MMI.dm b/code/modules/mob/living/carbon/brain/MMI.dm similarity index 83% rename from code/modules/mob/living/brain/MMI.dm rename to code/modules/mob/living/carbon/brain/MMI.dm index d709473cce..d56e7a1681 100644 --- a/code/modules/mob/living/brain/MMI.dm +++ b/code/modules/mob/living/carbon/brain/MMI.dm @@ -1,16 +1,16 @@ - +//This file was auto-corrected by findeclaration.exe on 25.5.2012 20:42:32 /obj/item/device/mmi name = "Man-Machine Interface" desc = "The Warrior's bland acronym, MMI, obscures the true horror of this monstrosity, that nevertheless has become standard-issue on Nanotrasen stations." icon = 'icons/obj/assemblies.dmi' icon_state = "mmi_empty" - w_class = WEIGHT_CLASS_NORMAL + w_class = 3 origin_tech = "biotech=2;programming=3;engineering=2" var/braintype = "Cyborg" var/obj/item/device/radio/radio = null //Let's give it a radio. var/hacked = 0 //Whether or not this is a Syndicate MMI - var/mob/living/brain/brainmob = null //The current occupant. + var/mob/living/carbon/brain/brainmob = null //The current occupant. var/mob/living/silicon/robot = null //Appears unused. var/obj/mecha = null //This does not appear to be used outside of reference in mecha.dm. var/obj/item/organ/brain/brain = null //The actual brain @@ -53,7 +53,7 @@ if(!user.unEquip(O)) return - var/mob/living/brain/B = newbrain.brainmob + var/mob/living/carbon/brain/B = newbrain.brainmob if(!B.key) B.notify_ghost_cloning("Someone has put your brain in a MMI!", source = src) visible_message("[user] sticks \a [newbrain] into \the [src].") @@ -78,11 +78,12 @@ feedback_inc("cyborg_mmis_filled",1) + return + else if(brainmob) O.attack(brainmob, user) //Oh noooeeeee - else - return ..() - + return + ..() /obj/item/device/mmi/attack_self(mob/user) if(!brain) @@ -90,27 +91,23 @@ user << "You toggle the MMI's radio system [radio.on==1 ? "on" : "off"]." else user << "You unlock and upend the MMI, spilling the brain onto the floor." - eject_brain(user) + + brainmob.container = null //Reset brainmob mmi var. + brainmob.loc = brain //Throw mob into brain. + brainmob.stat = DEAD + brainmob.emp_damage = 0 + brainmob.reset_perspective() //so the brainmob follows the brain organ instead of the mmi. And to update our vision + living_mob_list -= brainmob //Get outta here + dead_mob_list += brainmob + brain.brainmob = brainmob //Set the brain to use the brainmob + brainmob = null //Set mmi brainmob var to null + + user.put_in_hands(brain) //puts brain in the user's hand or otherwise drops it on the user's turf + brain = null //No more brain in here + update_icon() name = "Man-Machine Interface" -/obj/item/device/mmi/proc/eject_brain(mob/user) - brainmob.container = null //Reset brainmob mmi var. - brainmob.loc = brain //Throw mob into brain. - brainmob.stat = DEAD - brainmob.emp_damage = 0 - brainmob.reset_perspective() //so the brainmob follows the brain organ instead of the mmi. And to update our vision - living_mob_list -= brainmob //Get outta here - dead_mob_list += brainmob - brain.brainmob = brainmob //Set the brain to use the brainmob - brainmob = null //Set mmi brainmob var to null - if(user) - user.put_in_hands(brain) //puts brain in the user's hand or otherwise drops it on the user's turf - else - brain.forceMove(get_turf(src)) - brain = null //No more brain in here - - /obj/item/device/mmi/proc/transfer_identity(mob/living/L) //Same deal as the regular brain proc. Used for human-->robot people. if(!brainmob) brainmob = new(src) @@ -118,9 +115,9 @@ brainmob.real_name = L.real_name if(L.has_dna()) var/mob/living/carbon/C = L - if(!brainmob.stored_dna) - brainmob.stored_dna = new /datum/dna/stored(brainmob) - C.dna.copy_dna(brainmob.stored_dna) + if(!brainmob.dna) + brainmob.dna = new /datum/dna(brainmob) + C.dna.copy_dna(brainmob.dna) brainmob.container = src if(ishuman(L)) @@ -168,31 +165,18 @@ ..() /obj/item/device/mmi/Destroy() - if(iscyborg(loc)) + if(isrobot(loc)) var/mob/living/silicon/robot/borg = loc borg.mmi = null if(brainmob) qdel(brainmob) brainmob = null - if(brain) - qdel(brain) - brain = null - if(mecha) - mecha = null - if(radio) - qdel(radio) - radio = null return ..() -/obj/item/device/mmi/deconstruct(disassembled = TRUE) - if(brain) - eject_brain() - qdel(src) - /obj/item/device/mmi/examine(mob/user) ..() if(brainmob) - var/mob/living/brain/B = brainmob + var/mob/living/carbon/brain/B = brainmob if(!B.key || !B.mind || B.stat == DEAD) user << "The MMI indicates the brain is completely unresponsive." diff --git a/code/modules/mob/living/carbon/brain/brain.dm b/code/modules/mob/living/carbon/brain/brain.dm new file mode 100644 index 0000000000..d25626cd9b --- /dev/null +++ b/code/modules/mob/living/carbon/brain/brain.dm @@ -0,0 +1,63 @@ +//This file was auto-corrected by findeclaration.exe on 25.5.2012 20:42:32 + +/mob/living/carbon/brain + languages_spoken = HUMAN + languages_understood = HUMAN + var/obj/item/device/mmi/container = null + var/timeofhostdeath = 0 + var/emp_damage = 0//Handles a type of MMI damage + has_limbs = 0 + stat = DEAD //we start dead by default + see_invisible = SEE_INVISIBLE_MINIMUM + +/mob/living/carbon/brain/New(loc) + ..() + if(isturf(loc)) //not spawned in an MMI or brain organ (most likely adminspawned) + var/obj/item/organ/brain/OB = new(loc) //we create a new brain organ for it. + src.loc = OB + OB.brainmob = src + + +/mob/living/carbon/brain/Destroy() + if(key) //If there is a mob connected to this thing. Have to check key twice to avoid false death reporting. + if(stat!=DEAD) //If not dead. + death(1) //Brains can die again. AND THEY SHOULD AHA HA HA HA HA HA + ghostize() //Ghostize checks for key so nothing else is necessary. + container = null + return ..() + +/mob/living/carbon/brain/update_canmove() + if(in_contents_of(/obj/mecha)) + canmove = 1 + else + canmove = 0 + return canmove + +/mob/living/carbon/brain/toggle_throw_mode() + return + +/mob/living/carbon/brain/ex_act() //you cant blow up brainmobs because it makes transfer_to() freak out when borgs blow up. + return + +/mob/living/carbon/brain/blob_act(obj/effect/blob/B) + return + +/mob/living/carbon/brain/UnarmedAttack(atom/A)//Stops runtimes due to attack_animal being the default + return + +/mob/living/carbon/brain/check_ear_prot() + return 1 + +/mob/living/carbon/brain/flash_eyes(intensity = 1, override_blindness_check = 0, affect_silicon = 0) + return // no eyes, no flashing + +/mob/living/carbon/brain/update_damage_hud() + return //no red circles for brain + +/mob/living/carbon/brain/can_be_revived() + . = 1 + if(!container || health <= config.health_threshold_dead) + return 0 + +/mob/living/carbon/brain/update_sight() + return diff --git a/code/modules/mob/living/brain/brain_item.dm b/code/modules/mob/living/carbon/brain/brain_item.dm similarity index 64% rename from code/modules/mob/living/brain/brain_item.dm rename to code/modules/mob/living/carbon/brain/brain_item.dm index f9b84a4aba..4eb1fb0d3f 100644 --- a/code/modules/mob/living/brain/brain_item.dm +++ b/code/modules/mob/living/carbon/brain/brain_item.dm @@ -10,34 +10,35 @@ vital = 1 origin_tech = "biotech=5" attack_verb = list("attacked", "slapped", "whacked") - var/mob/living/brain/brainmob = null + var/mob/living/carbon/brain/brainmob = null var/damaged_brain = 0 //whether the brain organ is damaged. -/obj/item/organ/brain/Insert(mob/living/carbon/C, special = 0) +/obj/item/organ/brain/Insert(mob/living/carbon/M, special = 0) ..() name = "brain" if(brainmob) - if(C.key) - C.ghostize() + if(M.key) + M.ghostize() if(brainmob.mind) - brainmob.mind.transfer_to(C) + brainmob.mind.transfer_to(M) else - C.key = brainmob.key + M.key = brainmob.key qdel(brainmob) //Update the body's icon so it doesnt appear debrained anymore - C.update_hair() + if(ishuman(M)) + var/mob/living/carbon/human/H = M + H.update_hair(0) -/obj/item/organ/brain/Remove(mob/living/carbon/C, special = 0) +/obj/item/organ/brain/Remove(mob/living/carbon/M, special = 0) ..() if(!special) - if(C.has_brain_worms()) - var/mob/living/simple_animal/borer/B = C.has_brain_worms() - B.leave_victim() //Should remove borer if the brain is removed - RR - transfer_identity(C) - C.update_hair() + transfer_identity(M) + if(ishuman(M)) + var/mob/living/carbon/human/H = M + H.update_hair(0) /obj/item/organ/brain/prepare_eat() return // Too important to eat. @@ -50,9 +51,9 @@ brainmob.timeofhostdeath = L.timeofdeath if(L.has_dna()) var/mob/living/carbon/C = L - if(!brainmob.stored_dna) - brainmob.stored_dna = new /datum/dna/stored(brainmob) - C.dna.copy_dna(brainmob.stored_dna) + if(!brainmob.dna) + brainmob.dna = new /datum/dna(brainmob) + C.dna.copy_dna(brainmob.dna) if(L.mind && L.mind.current && (L.mind.current.stat == DEAD)) L.mind.transfer_to(brainmob) brainmob << "You feel slightly disoriented. That's normal when you're just a brain." @@ -67,7 +68,7 @@ if(brainmob) if(brainmob.client) - if(brainmob.health <= HEALTH_THRESHOLD_DEAD) + if(brainmob.health <= config.health_threshold_dead) user << "It's lifeless and severely damaged." else user << "You can feel the small spark of life still left in this one." @@ -76,8 +77,8 @@ else user << "This one is completely devoid of life." -/obj/item/organ/brain/attack(mob/living/carbon/C, mob/user) - if(!istype(C)) +/obj/item/organ/brain/attack(mob/living/carbon/M, mob/user) + if(!istype(M)) return ..() add_fingerprint(user) @@ -85,30 +86,31 @@ if(user.zone_selected != "head") return ..() - if((C.head && (C.head.flags_cover & HEADCOVERSEYES)) || (C.wear_mask && (C.wear_mask.flags_cover & MASKCOVERSEYES)) || (C.glasses && (C.glasses.flags & GLASSESCOVERSEYES))) + var/mob/living/carbon/human/H = M + if(istype(H) && ((H.head && H.head.flags_cover & HEADCOVERSEYES) || (H.wear_mask && H.wear_mask.flags_cover & MASKCOVERSEYES) || (H.glasses && H.glasses.flags & GLASSESCOVERSEYES))) user << "You're going to need to remove their head cover first!" return //since these people will be dead M != usr - if(!C.getorgan(/obj/item/organ/brain)) - if(!C.get_bodypart("head")) + if(!M.getorgan(/obj/item/organ/brain)) + if(istype(H) && !H.get_bodypart("head")) return user.drop_item() - var/msg = "[C] has [src] inserted into [C.p_their()] head by [user]." - if(C == user) - msg = "[user] inserts [src] into [user.p_their()] head!" + var/msg = "[M] has [src] inserted into \his head by [user]." + if(M == user) + msg = "[user] inserts [src] into \his head!" - C.visible_message("[msg]", + M.visible_message("[msg]", "[msg]") - if(C != user) - C << "[user] inserts [src] into your head." - user << "You insert [src] into [C]'s head." + if(M != user) + M << "[user] inserts [src] into your head." + user << "You insert [src] into [M]'s head." else user << "You insert [src] into your head." //LOL - Insert(C) + Insert(M) else ..() diff --git a/code/modules/mob/living/brain/death.dm b/code/modules/mob/living/carbon/brain/death.dm similarity index 86% rename from code/modules/mob/living/brain/death.dm rename to code/modules/mob/living/carbon/brain/death.dm index e98859b90f..cb55d04145 100644 --- a/code/modules/mob/living/brain/death.dm +++ b/code/modules/mob/living/carbon/brain/death.dm @@ -1,4 +1,4 @@ -/mob/living/brain/death(gibbed) +/mob/living/carbon/brain/death(gibbed) if(stat == DEAD) return stat = DEAD @@ -11,7 +11,7 @@ return ..() -/mob/living/brain/gib() +/mob/living/carbon/brain/gib() if(container) qdel(container)//Gets rid of the MMI if there is one if(loc) diff --git a/code/modules/mob/living/brain/emote.dm b/code/modules/mob/living/carbon/brain/emote.dm similarity index 92% rename from code/modules/mob/living/brain/emote.dm rename to code/modules/mob/living/carbon/brain/emote.dm index a225c3ad81..67e6c36cc3 100644 --- a/code/modules/mob/living/brain/emote.dm +++ b/code/modules/mob/living/carbon/brain/emote.dm @@ -1,4 +1,4 @@ -/mob/living/brain/emote(act,m_type=1,message = null) +/mob/living/carbon/brain/emote(act,m_type=1,message = null) if(!(container && istype(container, /obj/item/device/mmi)))//No MMI, no emotes return @@ -59,7 +59,7 @@ log_emote("[name]/[key] : [message]") for(var/mob/M in dead_mob_list) - if (!M.client || isnewplayer(M)) + if (!M.client || istype(M, /mob/new_player)) continue //skip monkeys, leavers, and new_players if(M.stat == DEAD && (M.client && (M.client.prefs.chat_toggles & CHAT_GHOSTSIGHT)) && !(M in viewers(src,null))) M.show_message(message) diff --git a/code/modules/mob/living/brain/life.dm b/code/modules/mob/living/carbon/brain/life.dm similarity index 56% rename from code/modules/mob/living/brain/life.dm rename to code/modules/mob/living/carbon/brain/life.dm index 9d87f412e8..831fbfb8e8 100644 --- a/code/modules/mob/living/brain/life.dm +++ b/code/modules/mob/living/carbon/brain/life.dm @@ -1,5 +1,5 @@ -/mob/living/brain/Life() +/mob/living/carbon/brain/Life() set invisibility = 0 set background = BACKGROUND_ENABLED @@ -10,10 +10,19 @@ . = ..() handle_emp_damage() -/mob/living/brain/update_stat() +/mob/living/carbon/brain/handle_breathing() + return + +/mob/living/carbon/brain/handle_mutations_and_radiation() + return + +/mob/living/carbon/brain/handle_environment(datum/gas_mixture/environment) + return + +/mob/living/carbon/brain/update_stat() if(status_flags & GODMODE) return - if(health <= HEALTH_THRESHOLD_DEAD) + if(health <= config.health_threshold_dead) if(stat != DEAD) death() var/obj/item/organ/brain/BR @@ -25,25 +34,27 @@ BR.damaged_brain = 1 //beaten to a pulp /* //currently unused feature, since brain outside a mmi is always dead. -/mob/living/brain/proc/handle_brain_revival_life() +/mob/living/carbon/brain/proc/handle_brain_revival_life() if(stat != DEAD) if(config.revival_brain_life != -1) if( !container && (world.time - timeofhostdeath) > config.revival_brain_life) death() */ -/mob/living/brain/proc/handle_emp_damage() +/mob/living/carbon/brain/proc/handle_emp_damage() if(emp_damage) if(stat == DEAD) emp_damage = 0 else emp_damage = max(emp_damage-1, 0) -/mob/living/brain/handle_status_effects() +/mob/living/carbon/brain/handle_status_effects() return -/mob/living/brain/handle_disabilities() +/mob/living/carbon/brain/handle_disabilities() + return + +/mob/living/carbon/brain/handle_changeling() return - diff --git a/code/modules/mob/living/brain/posibrain.dm b/code/modules/mob/living/carbon/brain/posibrain.dm similarity index 89% rename from code/modules/mob/living/brain/posibrain.dm rename to code/modules/mob/living/carbon/brain/posibrain.dm index 34f392d3e0..0ee77ea766 100644 --- a/code/modules/mob/living/brain/posibrain.dm +++ b/code/modules/mob/living/carbon/brain/posibrain.dm @@ -5,7 +5,7 @@ var/global/posibrain_notif_cooldown = 0 desc = "A cube of shining metal, four inches to a side and covered in shallow grooves." icon = 'icons/obj/assemblies.dmi' icon_state = "posibrain" - w_class = WEIGHT_CLASS_NORMAL + w_class = 3 origin_tech = "biotech=3;programming=3;plasmatech=2" var/notified = 0 var/askDelay = 600 //one minute @@ -14,7 +14,6 @@ var/global/posibrain_notif_cooldown = 0 req_access = list(access_robotics) mecha = null//This does not appear to be used outside of reference in mecha.dm. braintype = "Android" - var/autoping = TRUE //if it pings on creation immediately var/begin_activation_message = "You carefully locate the manual activation switch and start the positronic brain's boot process." var/success_message = "The positronic brain pings, and its lights start flashing. Success!" var/fail_message = "The positronic brain buzzes quietly, and the golden lights fade away. Perhaps you could try again?" @@ -26,7 +25,6 @@ var/global/posibrain_notif_cooldown = 0 var/new_mob_message = "The positronic brain chimes quietly." var/dead_message = "It appears to be completely inactive. The reset light is blinking." var/list/fluff_names = list("PBU","HIU","SINA","ARMA","OSI","HBL","MSO","RR","CHRI","CDB","HG","XSI","ORNG","GUN","KOR","MET","FRE","XIS","SLI","PKP","HOG","RZH","GOOF","MRPR","JJR","FIRC","INC","PHL","BGB","ANTR","MIW","WJ","JRD","CHOC","ANCL","JLLO","JNLG","KOS","TKRG","XAL","STLP","CBOS","DUNC","FXMC","DRSD") - var/picked_fluff_name //which fluff name we picked /obj/item/device/mmi/posibrain/Topic(href, href_list) @@ -40,7 +38,7 @@ var/global/posibrain_notif_cooldown = 0 notify_ghosts("[name] [msg] in [get_area(src)]!", ghost_sound = !newlymade ? 'sound/effects/ghost2.ogg':null, enter_link = "(Click to enter)", source = src, action = NOTIFY_ATTACK) if(!newlymade) posibrain_notif_cooldown = 1 - addtimer(src, "reset_posibrain_cooldown", askDelay, TIMER_NORMAL) + addtimer(src, "reset_posibrain_cooldown", askDelay, FALSE) /obj/item/device/mmi/posibrain/proc/reset_posibrain_cooldown() posibrain_notif_cooldown = 0 @@ -81,10 +79,11 @@ var/global/posibrain_notif_cooldown = 0 name = "[initial(name)] ([C])" brainmob.name = C.real_name brainmob.real_name = C.real_name + brainmob.dna = C.dna if(C.has_dna()) - if(!brainmob.stored_dna) - brainmob.stored_dna = new /datum/dna/stored(brainmob) - C.dna.copy_dna(brainmob.stored_dna) + if(!brainmob.dna) + brainmob.dna = new /datum/dna(brainmob) + C.dna.copy_dna(brainmob.dna) brainmob.timeofhostdeath = C.timeofdeath brainmob.stat = CONSCIOUS if(brainmob.mind) @@ -95,16 +94,14 @@ var/global/posibrain_notif_cooldown = 0 brainmob.mind.remove_all_antag() brainmob.mind.wipe_memory() update_icon() + return /obj/item/device/mmi/posibrain/proc/transfer_personality(mob/candidate) if(used || (brainmob && brainmob.key)) //Prevents hostile takeover if two ghosts get the prompt or link for the same brain. candidate << "This brain has already been taken! Please try your possesion again later!" return notified = 0 - if(candidate.mind && !isobserver(candidate)) - candidate.mind.transfer_to(brainmob) - else - brainmob.ckey = candidate.ckey + brainmob.ckey = candidate.ckey name = "[initial(name)] ([brainmob.name])" brainmob << welcome_message brainmob.mind.assigned_role = new_role @@ -125,7 +122,7 @@ var/global/posibrain_notif_cooldown = 0 if(!usr || !src) return - if((usr.disabilities & BLIND || usr.stat) && !isobserver(usr)) + if( (usr.disabilities & BLIND || usr.stat) && !istype(usr,/mob/dead/observer) ) usr << "Something is there but you can't see it." return @@ -147,13 +144,11 @@ var/global/posibrain_notif_cooldown = 0 /obj/item/device/mmi/posibrain/New() brainmob = new(src) - picked_fluff_name = pick(fluff_names) - brainmob.name = "[picked_fluff_name]-[rand(100, 999)]" + brainmob.name = "[pick(fluff_names)]-[rand(100, 999)]" brainmob.real_name = brainmob.name brainmob.loc = src brainmob.container = src - if(autoping) - ping_ghosts("created", TRUE) + ping_ghosts("created", TRUE) ..() diff --git a/code/modules/mob/living/brain/say.dm b/code/modules/mob/living/carbon/brain/say.dm similarity index 72% rename from code/modules/mob/living/brain/say.dm rename to code/modules/mob/living/carbon/brain/say.dm index 0aeb312ee0..16cdc02ddb 100644 --- a/code/modules/mob/living/brain/say.dm +++ b/code/modules/mob/living/carbon/brain/say.dm @@ -1,4 +1,4 @@ -/mob/living/brain/say(message) +/mob/living/carbon/brain/say(message) if(!(container && istype(container, /obj/item/device/mmi))) return //No MMI, can't speak, bucko./N else @@ -9,15 +9,15 @@ message = Gibberish(message, (emp_damage*6))//scrambles the message, gets worse when emp_damage is higher ..() -/mob/living/brain/radio(message, message_mode, list/spans) +/mob/living/carbon/brain/radio(message, message_mode, list/spans) if(message_mode && istype(container, /obj/item/device/mmi)) var/obj/item/device/mmi/R = container if(R.radio) R.radio.talk_into(src, message, , spans) return ITALICS | REDUCE_RANGE -/mob/living/brain/lingcheck() +/mob/living/carbon/brain/lingcheck() return 0 -/mob/living/brain/treat_message(message) +/mob/living/carbon/brain/treat_message(message) return message \ No newline at end of file diff --git a/code/modules/mob/living/brain/status_procs.dm b/code/modules/mob/living/carbon/brain/status_procs.dm similarity index 52% rename from code/modules/mob/living/brain/status_procs.dm rename to code/modules/mob/living/carbon/brain/status_procs.dm index caf2bfe22c..dc8ff6ffc1 100644 --- a/code/modules/mob/living/brain/status_procs.dm +++ b/code/modules/mob/living/carbon/brain/status_procs.dm @@ -4,30 +4,35 @@ /////////////////////////////////// EAR DAMAGE //////////////////////////////////// -/mob/living/brain/adjustEarDamage() +/mob/living/carbon/brain/adjustEarDamage() return -/mob/living/brain/setEarDamage() // no ears to damage or heal +/mob/living/carbon/brain/setEarDamage() // no ears to damage or heal return /////////////////////////////////// EYE_BLIND //////////////////////////////////// -/mob/living/brain/blind_eyes() // no eyes to damage or heal +/mob/living/carbon/brain/blind_eyes() // no eyes to damage or heal return -/mob/living/brain/adjust_blindness() +/mob/living/carbon/brain/adjust_blindness() return -/mob/living/brain/set_blindness() +/mob/living/carbon/brain/set_blindness() return /////////////////////////////////// EYE_BLURRY //////////////////////////////////// -/mob/living/brain/blur_eyes() +/mob/living/carbon/brain/blur_eyes() return -/mob/living/brain/adjust_blurriness() +/mob/living/carbon/brain/adjust_blurriness() return -/mob/living/brain/set_blurriness() +/mob/living/carbon/brain/set_blurriness() return + +/////////////////////////////////// BLIND DISABILITY //////////////////////////////////// + +/mob/living/carbon/brain/become_blind() + return \ No newline at end of file diff --git a/code/modules/mob/living/carbon/carbon.dm b/code/modules/mob/living/carbon/carbon.dm index 1071055f20..aff7036b94 100644 --- a/code/modules/mob/living/carbon/carbon.dm +++ b/code/modules/mob/living/carbon/carbon.dm @@ -3,18 +3,15 @@ /mob/living/carbon/New() create_reagents(1000) - update_body_parts() //to update the carbon's new bodyparts appearance ..() /mob/living/carbon/Destroy() - for(var/guts in internal_organs) + for(var/atom/movable/guts in internal_organs) qdel(guts) for(var/atom/movable/food in stomach_contents) qdel(food) for(var/BP in bodyparts) qdel(BP) - for(var/imp in implants) - qdel(imp) bodyparts = list() remove_from_all_data_huds() if(dna) @@ -28,12 +25,19 @@ audible_message("You hear something rumbling inside [src]'s stomach...", \ "You hear something rumbling.", 4,\ "Something is rumbling inside your stomach!") - var/obj/item/I = user.get_active_held_item() + var/obj/item/I = user.get_active_hand() if(I && I.force) var/d = rand(round(I.force / 4), I.force) - var/obj/item/bodypart/BP = get_bodypart("chest") - if(BP.receive_damage(d, 0)) - update_damage_overlays() + if(istype(src, /mob/living/carbon/human)) + var/mob/living/carbon/human/H = src + var/organ = H.get_bodypart("chest") + if (istype(organ, /obj/item/bodypart)) + var/obj/item/bodypart/temp = organ + if(temp.take_damage(d, 0)) + H.update_damage_overlays(0) + H.updatehealth() + else + src.take_organ_damage(d) visible_message("[user] attacks [src]'s stomach wall with the [I.name]!", \ "[user] attacks your stomach wall with the [I.name]!") playsound(user.loc, 'sound/effects/attackblob.ogg', 50, 1) @@ -45,65 +49,140 @@ src.gib() -/mob/living/carbon/swap_hand(held_index) - if(!held_index) - held_index = (active_hand_index % held_items.len)+1 +/mob/living/carbon/electrocute_act(shock_damage, obj/source, siemens_coeff = 1, override = 0, tesla_shock = 0) + shock_damage *= siemens_coeff + if(dna && dna.species) + shock_damage *= dna.species.siemens_coeff + if(shock_damage<1 && !override) + return 0 + if(reagents.has_reagent("teslium")) + shock_damage *= 1.5 //If the mob has teslium in their body, shocks are 50% more damaging! + take_overall_damage(0,shock_damage) + //src.adjustFireLoss(shock_damage) + //src.updatehealth() + visible_message( + "[src] was shocked by \the [source]!", \ + "You feel a powerful shock coursing through your body!", \ + "You hear a heavy electrical crack." \ + ) + jitteriness += 1000 //High numbers for violent convulsions + do_jitter_animation(jitteriness) + stuttering += 2 + if(!tesla_shock || (tesla_shock && siemens_coeff > 0.5)) + Stun(2) + spawn(20) + jitteriness = max(jitteriness - 990, 10) //Still jittery, but vastly less + if(!tesla_shock || (tesla_shock && siemens_coeff > 0.5)) + Stun(3) + Weaken(3) + if(override) + return override + else + return shock_damage - var/obj/item/item_in_hand = src.get_active_held_item() + +/mob/living/carbon/swap_hand() + var/obj/item/item_in_hand = src.get_active_hand() if(item_in_hand) //this segment checks if the item in your hand is twohanded. if(istype(item_in_hand,/obj/item/weapon/twohanded)) if(item_in_hand:wielded == 1) usr << "Your other hand is too busy holding the [item_in_hand.name]" return - var/oindex = active_hand_index - active_hand_index = held_index - if(hud_used) + src.hand = !( src.hand ) + if(hud_used && hud_used.inv_slots[slot_l_hand] && hud_used.inv_slots[slot_r_hand]) var/obj/screen/inventory/hand/H - H = hud_used.hand_slots["[oindex]"] - if(H) - H.update_icon() - H = hud_used.hand_slots["[held_index]"] - if(H) - H.update_icon() + H = hud_used.inv_slots[slot_l_hand] + H.update_icon() + H = hud_used.inv_slots[slot_r_hand] + H.update_icon() + /*if (!( src.hand )) + src.hands.setDir(NORTH) + else + src.hands.setDir(SOUTH)*/ + return - -/mob/living/carbon/activate_hand(selhand) //l/r OR 1-held_items.len - if(!selhand) - selhand = (active_hand_index % held_items.len)+1 +/mob/living/carbon/activate_hand(selhand) //0 or "r" or "right" for right hand; 1 or "l" or "left" for left hand. if(istext(selhand)) selhand = lowertext(selhand) + if(selhand == "right" || selhand == "r") - selhand = 2 + selhand = 0 if(selhand == "left" || selhand == "l") selhand = 1 - if(selhand != active_hand_index) - swap_hand(selhand) + if(selhand != src.hand) + swap_hand() else mode() // Activate held item -/mob/living/carbon/attackby(obj/item/I, mob/user, params) - if(lying && surgeries.len) - if(user != src && user.a_intent == INTENT_HELP) - for(var/datum/surgery/S in surgeries) - if(S.next_step(user)) - return 1 - return ..() +/mob/living/carbon/proc/help_shake_act(mob/living/carbon/M) + if(on_fire) + M << "You can't put them out with just your bare hands!" + return -/mob/living/carbon/throw_impact(atom/hit_atom) + if(health >= 0 && !(status_flags & FAKEDEATH)) + + if(lying) + M.visible_message("[M] shakes [src] trying to get them up!", \ + "You shake [src] trying to get them up!") + else + M.visible_message("[M] hugs [src] to make them feel better!", \ + "You hug [src] to make them feel better!") + AdjustSleeping(-5) + AdjustParalysis(-3) + AdjustStunned(-3) + AdjustWeakened(-3) + if(resting) + resting = 0 + update_canmove() + + playsound(loc, 'sound/weapons/thudswoosh.ogg', 50, 1, -1) + +/mob/living/carbon/flash_eyes(intensity = 1, override_blindness_check = 0, affect_silicon = 0, visual = 0) . = ..() - if(hit_atom.density && isturf(hit_atom)) - Weaken(1) - take_bodypart_damage(10) - if(iscarbon(hit_atom)) - var/mob/living/carbon/victim = hit_atom - victim.Weaken(1) - Weaken(1) - victim.take_bodypart_damage(10) - take_bodypart_damage(10) - visible_message("[src] crashes into [victim], knocking them both over!", "You violently crash into [victim]!") - playsound(src,'sound/weapons/punch1.ogg',50,1) + + var/damage = intensity - check_eye_prot() + if(.) // we've been flashed + if(visual) + return + if(weakeyes) + Stun(2) + + if (damage == 1) + src << "Your eyes sting a little." + if(prob(40)) + adjust_eye_damage(1) + + else if (damage == 2) + src << "Your eyes burn." + adjust_eye_damage(rand(2, 4)) + + else if( damage > 3) + src << "Your eyes itch and burn severely!" + adjust_eye_damage(rand(12, 16)) + + if(eye_damage > 10) + blind_eyes(damage) + blur_eyes(damage * rand(3, 6)) + + if(eye_damage > 20) + if(prob(eye_damage - 20)) + if(become_nearsighted()) + src << "Your eyes start to burn badly!" + else if(prob(eye_damage - 25)) + if(become_blind()) + src << "You can't see anything!" + else + src << "Your eyes are really starting to hurt. This can't be good for you!" + if(has_bane(BANE_LIGHT)) + mind.disrupt_spells(-500) + return 1 + else if(damage == 0) // just enough protection + if(prob(20)) + src << "Something bright flashes in the corner of your vision!" + if(has_bane(BANE_LIGHT)) + mind.disrupt_spells(0) //Throwing stuff @@ -138,7 +217,7 @@ return var/atom/movable/thrown_thing - var/obj/item/I = src.get_active_held_item() + var/obj/item/I = src.get_active_hand() if(!I) if(pulling && isliving(pulling) && grab_state >= GRAB_AGGRESSIVE) @@ -177,11 +256,8 @@

    Head: [(head && !(head.flags&ABSTRACT)) ? head : "Nothing"]
    Mask: [(wear_mask && !(wear_mask.flags&ABSTRACT)) ? wear_mask : "Nothing"] -
    Neck: [(wear_neck && !(wear_neck.flags&ABSTRACT)) ? wear_neck : "Nothing"]"} - - for(var/i in 1 to held_items.len) - var/obj/item/I = get_item_for_held_index(i) - dat += "
    [get_held_index_name(i)]:
    [(I && !(I.flags & ABSTRACT)) ? I : "Nothing"]" +
    Left Hand: [(l_hand && !(l_hand.flags&ABSTRACT)) ? l_hand : "Nothing"] +
    Right Hand: [(r_hand && !(r_hand.flags&ABSTRACT)) ? r_hand : "Nothing"]"} dat += "
    Back: [back ? back : "Nothing"]" @@ -229,6 +305,13 @@ /mob/living/carbon/is_muzzled() return(istype(src.wear_mask, /obj/item/clothing/mask/muzzle)) +/mob/living/carbon/blob_act(obj/effect/blob/B) + if (stat == DEAD) + return + else + show_message("The blob attacks!") + adjustBruteLoss(10) + /mob/living/carbon/proc/spin(spintime, speed) set waitfor = 0 var/D = dir @@ -264,7 +347,7 @@ /mob/living/carbon/resist_fire() fire_stacks -= 5 - Weaken(3, 1, 1) + Weaken(3,1) spin(32,2) visible_message("[src] rolls on the floor, trying to put themselves out!", \ "You stop, drop, and roll!") @@ -324,7 +407,6 @@ W.dropped(src) if (W) W.layer = initial(W.layer) - W.plane = initial(W.plane) if (legcuffed) var/obj/item/weapon/W = legcuffed legcuffed = null @@ -336,7 +418,6 @@ W.dropped(src) if (W) W.layer = initial(W.layer) - W.plane = initial(W.plane) /mob/living/carbon/proc/clear_cuffs(obj/item/I, cuff_break) if(!I.loc || buckled) @@ -371,10 +452,6 @@ legcuffed = null update_inv_legcuffed() return - else - unEquip(I) - I.dropped() - return return TRUE /mob/living/carbon/proc/is_mouth_covered(head_only = 0, mask_only = 0) @@ -387,6 +464,10 @@ else return initial(pixel_y) +/mob/living/carbon/check_ear_prot() + if(head && (head.flags & HEADBANGPROTECT)) + return 1 + /mob/living/carbon/proc/accident(obj/item/I) if(!I || (I.flags & (NODROP|ABSTRACT))) return @@ -415,6 +496,17 @@ var/turf/target = get_turf(loc) I.throw_at(target,I.throw_range,I.throw_speed,src) +/mob/living/carbon/emp_act(severity) + for(var/obj/item/organ/O in internal_organs) + O.emp_act(severity) + ..() + +/mob/living/carbon/check_eye_prot() + var/number = ..() + for(var/obj/item/organ/cyberimp/eyes/EFP in internal_organs) + number += EFP.flash_protect + return number + /mob/living/carbon/proc/AddAbility(obj/effect/proc_holder/alien/A) abilities.Add(A) A.on_gain(src) @@ -443,15 +535,7 @@ add_abilities_to_panel() -/mob/living/carbon/attack_ui(slot) - if(!has_hand_for_held_index(active_hand_index)) - return 0 - return ..() - /mob/living/carbon/proc/vomit(var/lost_nutrition = 10, var/blood = 0, var/stun = 1, var/distance = 0, var/message = 1, var/toxic = 0) - if(dna && dna.species && NOHUNGER in dna.species.species_traits) - return 1 - if(nutrition < 100 && !blood) if(message) visible_message("[src] dry heaves!", \ @@ -491,27 +575,12 @@ return 1 + /mob/living/carbon/fully_replace_character_name(oldname,newname) ..() if(dna) dna.real_name = real_name -//Updates the mob's health from bodyparts and mob damage variables -/mob/living/carbon/updatehealth() - if(status_flags & GODMODE) - return - var/total_burn = 0 - var/total_brute = 0 - for(var/X in bodyparts) //hardcoded to streamline things a bit - var/obj/item/bodypart/BP = X - total_brute += BP.brute_dam - total_burn += BP.burn_dam - health = maxHealth - getOxyLoss() - getToxLoss() - getCloneLoss() - total_burn - total_brute - update_stat() - if(((maxHealth - total_burn) < HEALTH_THRESHOLD_DEAD) && stat == DEAD ) - become_husk() - med_hud_set_health() - /mob/living/carbon/update_sight() if(!client) return @@ -567,7 +636,7 @@ if(!client) return - if(stat == UNCONSCIOUS && health <= HEALTH_THRESHOLD_CRIT) + if(stat == UNCONSCIOUS && health <= config.health_threshold_crit) var/severity = 0 switch(health) if(-20 to -10) severity = 1 @@ -645,10 +714,10 @@ if(status_flags & GODMODE) return if(stat != DEAD) - if(health<= HEALTH_THRESHOLD_DEAD || !getorgan(/obj/item/organ/brain)) + if(health<= config.health_threshold_dead || !getorgan(/obj/item/organ/brain)) death() return - if(paralysis || sleeping || getOxyLoss() > 50 || (status_flags & FAKEDEATH) || health <= HEALTH_THRESHOLD_CRIT) + if(paralysis || sleeping || getOxyLoss() > 50 || (status_flags & FAKEDEATH) || health <= config.health_threshold_crit) if(stat == CONSCIOUS) stat = UNCONSCIOUS blind_eyes(1) @@ -666,7 +735,8 @@ //called when we get cuffed/uncuffed /mob/living/carbon/proc/update_handcuffed() if(handcuffed) - drop_all_held_items() + drop_r_hand() + drop_l_hand() stop_pulling() throw_alert("handcuffed", /obj/screen/alert/restrained/handcuffed, new_master = src.handcuffed) else @@ -682,10 +752,8 @@ if(B) B.damaged_brain = 0 for(var/datum/disease/D in viruses) - if (D.severity != NONTHREAT) - D.cure(0) + D.cure(0) if(admin_revive) - regenerate_limbs() handcuffed = initial(handcuffed) for(var/obj/item/weapon/restraints/R in contents) //actually remove cuffs from inventory qdel(R) @@ -703,8 +771,7 @@ if(qdeleted(src)) return var/organs_amt = 0 - for(var/X in internal_organs) - var/obj/item/organ/O = X + for(var/obj/item/organ/O in internal_organs) if(prob(50)) organs_amt++ O.Remove(src) @@ -714,59 +781,12 @@ ..() -/mob/living/carbon/ExtinguishMob() - for(var/X in get_equipped_items()) - var/obj/item/I = X - I.acid_level = 0 //washes off the acid on our clothes - I.extinguish() //extinguishes our clothes - ..() +/mob/living/carbon/adjustToxLoss(amount, updating_health=1) + if(has_dna() && TOXINLOVER in dna.species.specflags) //damage becomes healing and healing becomes damage + amount = -amount + if(amount > 0) + blood_volume -= 5*amount + else + blood_volume -= amount + return ..() -/mob/living/carbon/fakefire(var/fire_icon = "Generic_mob_burning") - overlays_standing[FIRE_LAYER] = image("icon"='icons/mob/OnFire.dmi', "icon_state"= fire_icon, "layer"=-FIRE_LAYER) - apply_overlay(FIRE_LAYER) - -/mob/living/carbon/fakefireextinguish() - remove_overlay(FIRE_LAYER) - - -/mob/living/carbon/proc/devour_mob(mob/living/carbon/C, devour_time = 130) - C.visible_message("[src] is attempting to devour [C]!", \ - "[src] is attempting to devour you!") - if(!do_mob(src, C, devour_time)) - return - if(pulling && pulling == C && grab_state >= GRAB_AGGRESSIVE && a_intent == INTENT_GRAB) - C.visible_message("[src] devours [C]!", \ - "[src] devours you!") - C.forceMove(src) - stomach_contents.Add(C) - add_logs(src, C, "devoured") - -/mob/living/carbon/proc/create_bodyparts() - var/l_arm_index_next = -1 - var/r_arm_index_next = 0 - for(var/X in bodyparts) - var/obj/item/bodypart/O = new X() - O.owner = src - bodyparts.Remove(X) - bodyparts.Add(O) - if(O.body_part == ARM_LEFT) - l_arm_index_next += 2 - O.held_index = l_arm_index_next //1, 3, 5, 7... - hand_bodyparts += O - else if(O.body_part == ARM_RIGHT) - r_arm_index_next += 2 - O.held_index = r_arm_index_next //2, 4, 6, 8... - hand_bodyparts += O - - -/mob/living/carbon/proc/create_internal_organs() - for(var/X in internal_organs) - var/obj/item/organ/I = X - I.Insert(src) - -/mob/living/carbon/vv_get_dropdown() - . = ..() - . += "---" - .["Make AI"] = "?_src_=vars;makeai=\ref[src]" - .["Modify bodypart"] = "?_src_=vars;editbodypart=\ref[src]" - .["Modify organs"] = "?_src_=vars;editorgans=\ref[src]" diff --git a/code/modules/mob/living/carbon/carbon_defense.dm b/code/modules/mob/living/carbon/carbon_defense.dm index 663c9f236a..d8fa8ff538 100644 --- a/code/modules/mob/living/carbon/carbon_defense.dm +++ b/code/modules/mob/living/carbon/carbon_defense.dm @@ -1,22 +1,6 @@ - -/mob/living/carbon/get_eye_protection() - var/number = ..() - for(var/obj/item/organ/cyberimp/eyes/EFP in internal_organs) - number += EFP.flash_protect - return number - -/mob/living/carbon/get_ear_protection() - if(head && (head.flags & HEADBANGPROTECT)) - return 1 - -/mob/living/carbon/check_projectile_dismemberment(obj/item/projectile/P, def_zone) - var/obj/item/bodypart/affecting = get_bodypart(def_zone) - if(affecting && affecting.dismemberable && affecting.get_damage() >= (affecting.max_damage - P.dismemberment)) - affecting.dismember(P.damtype) - /mob/living/carbon/hitby(atom/movable/AM, skipcatch, hitpush = 1, blocked = 0) if(!skipcatch) //ugly, but easy - if(in_throw_mode && !get_active_held_item()) //empty active hand and we're in throw mode + if(in_throw_mode && !get_active_hand()) //empty active hand and we're in throw mode if(canmove && !restrained()) if(istype(AM, /obj/item)) var/obj/item/I = AM @@ -27,46 +11,25 @@ return 1 ..() +/mob/living/carbon/throw_impact(atom/hit_atom) + . = ..() + if(hit_atom.density && isturf(hit_atom)) + Weaken(1) + take_organ_damage(10) -/mob/living/carbon/attacked_by(obj/item/I, mob/living/user) - var/obj/item/bodypart/affecting = get_bodypart(ran_zone(user.zone_selected)) - if(!affecting) //missing limb? we select the first bodypart (you can never have zero, because of chest) - affecting = bodyparts[1] - send_item_attack_message(I, user, affecting.name) - if(I.force) - apply_damage(I.force, I.damtype, affecting) - damage_clothes(I.force, I.damtype, "melee", affecting.body_zone) - if(I.damtype == BRUTE && affecting.status == BODYPART_ORGANIC) - if(prob(33)) - I.add_mob_blood(src) - var/turf/location = get_turf(src) - add_splatter_floor(location) - if(get_dist(user, src) <= 1) //people with TK won't get smeared with blood - user.add_mob_blood(src) +/mob/living/carbon/attackby(obj/item/I, mob/user, params) + if(lying) + if(surgeries.len) + if(user != src && user.a_intent == "help") + for(var/datum/surgery/S in surgeries) + if(S.next_step(user, src)) + return 1 + return ..() - if(affecting.body_zone == "head") - if(wear_mask) - wear_mask.add_mob_blood(src) - update_inv_wear_mask() - if(wear_neck) - wear_neck.add_mob_blood(src) - update_inv_neck() - if(head) - head.add_mob_blood(src) - update_inv_head() - - //dismemberment - var/probability = I.get_dismemberment_chance(affecting) - if(prob(probability)) - if(affecting.dismember(I.damtype)) - I.add_mob_blood(src) - playsound(get_turf(src), I.get_dismember_sound(), 80, 1) - return TRUE //successful attack - -/mob/living/carbon/attack_drone(mob/living/simple_animal/drone/user) - return //so we don't call the carbon's attack_hand(). /mob/living/carbon/attack_hand(mob/living/carbon/human/user) + if(!iscarbon(user)) + return for(var/datum/disease/D in viruses) if(D.IsSpreadByTouch()) @@ -76,15 +39,19 @@ if(D.IsSpreadByTouch()) ContractDisease(D) - if(lying && surgeries.len) - if(user.a_intent == INTENT_HELP) - for(var/datum/surgery/S in surgeries) - if(S.next_step(user)) - return 1 + if(lying) + if(user.a_intent == "help") + if(surgeries.len) + for(var/datum/surgery/S in surgeries) + if(S.next_step(user, src)) + return 1 return 0 /mob/living/carbon/attack_paw(mob/living/carbon/monkey/M) + if(!istype(M, /mob/living/carbon)) + return 0 + for(var/datum/disease/D in viruses) if(D.IsSpreadByTouch()) M.ContractDisease(D) @@ -93,7 +60,7 @@ if(D.IsSpreadByTouch()) ContractDisease(D) - if(M.a_intent == INTENT_HELP) + if(M.a_intent == "help") help_shake_act(M) return 0 @@ -128,177 +95,14 @@ updatehealth() return 1 -/mob/living/carbon/proc/dismembering_strike(mob/living/attacker, dam_zone) - if(!attacker.limb_destroyer) - return dam_zone - var/obj/item/bodypart/affecting - if(dam_zone && attacker.client) - affecting = get_bodypart(ran_zone(dam_zone)) - else - var/list/things_to_ruin = shuffle(bodyparts.Copy()) - for(var/B in things_to_ruin) - var/obj/item/bodypart/bodypart = B - if(bodypart.body_zone == "head" || bodypart.body_zone == "chest") - continue - if(!affecting || ((affecting.get_damage() / affecting.max_damage) < (bodypart.get_damage() / bodypart.max_damage))) - affecting = bodypart - if(affecting) - dam_zone = affecting.body_zone - if(affecting.get_damage() >= affecting.max_damage) - affecting.dismember() - return null - return affecting.body_zone - return dam_zone - - -/mob/living/carbon/blob_act(obj/structure/blob/B) - if (stat == DEAD) +/mob/living/carbon/proc/devour_mob(mob/living/carbon/C, devour_time = 130) + C.visible_message("[src] is attempting to devour [C]!", \ + "[src] is attempting to devour you!") + if(!do_mob(src, C, devour_time)) return - else - show_message("The blob attacks!") - adjustBruteLoss(10) - -/mob/living/carbon/emp_act(severity) - for(var/X in internal_organs) - var/obj/item/organ/O = X - O.emp_act(severity) - ..() - -/mob/living/carbon/electrocute_act(shock_damage, obj/source, siemens_coeff = 1, safety = 0, override = 0, tesla_shock = 0, illusion = 0) - shock_damage *= siemens_coeff - if(dna && dna.species) - shock_damage *= dna.species.siemens_coeff - if(shock_damage<1 && !override) - return 0 - if(reagents.has_reagent("teslium")) - shock_damage *= 1.5 //If the mob has teslium in their body, shocks are 50% more damaging! - if(illusion) - adjustStaminaLoss(shock_damage) - else - take_overall_damage(0,shock_damage) - visible_message( - "[src] was shocked by \the [source]!", \ - "You feel a powerful shock coursing through your body!", \ - "You hear a heavy electrical crack." \ - ) - jitteriness += 1000 //High numbers for violent convulsions - do_jitter_animation(jitteriness) - stuttering += 2 - if(!tesla_shock || (tesla_shock && siemens_coeff > 0.5)) - Stun(2) - spawn(20) - jitteriness = max(jitteriness - 990, 10) //Still jittery, but vastly less - if(!tesla_shock || (tesla_shock && siemens_coeff > 0.5)) - Stun(3) - Weaken(3) - if(override) - return override - else - return shock_damage - -/mob/living/carbon/proc/help_shake_act(mob/living/carbon/M) - if(on_fire) - M << "You can't put them out with just your bare hands!" - return - - if(health >= 0 && !(status_flags & FAKEDEATH)) - - if(lying) - M.visible_message("[M] shakes [src] trying to get [p_them()] up!", \ - "You shake [src] trying to get [p_them()] up!") - else - M.visible_message("[M] hugs [src] to make [p_them()] feel better!", \ - "You hug [src] to make [p_them()] feel better!") - AdjustSleeping(-5) - AdjustParalysis(-3) - AdjustStunned(-3) - AdjustWeakened(-3) - if(resting) - resting = 0 - update_canmove() - - playsound(loc, 'sound/weapons/thudswoosh.ogg', 50, 1, -1) - - -/mob/living/carbon/flash_act(intensity = 1, override_blindness_check = 0, affect_silicon = 0, visual = 0) - . = ..() - - var/damage = intensity - get_eye_protection() - if(.) // we've been flashed - if(visual) - return - if(weakeyes) - Stun(2) - - if (damage == 1) - src << "Your eyes sting a little." - if(prob(40)) - adjust_eye_damage(1) - - else if (damage == 2) - src << "Your eyes burn." - adjust_eye_damage(rand(2, 4)) - - else if( damage > 3) - src << "Your eyes itch and burn severely!" - adjust_eye_damage(rand(12, 16)) - - if(eye_damage > 10) - blind_eyes(damage) - blur_eyes(damage * rand(3, 6)) - - if(eye_damage > 20) - if(prob(eye_damage - 20)) - if(become_nearsighted()) - src << "Your eyes start to burn badly!" - else if(prob(eye_damage - 25)) - if(become_blind()) - src << "You can't see anything!" - else - src << "Your eyes are really starting to hurt. This can't be good for you!" - if(has_bane(BANE_LIGHT)) - mind.disrupt_spells(-500) - return 1 - else if(damage == 0) // just enough protection - if(prob(20)) - src << "Something bright flashes in the corner of your vision!" - if(has_bane(BANE_LIGHT)) - mind.disrupt_spells(0) - - -/mob/living/carbon/soundbang_act(intensity = 1, stun_pwr = 1, damage_pwr = 5, deafen_pwr = 15) - var/ear_safety = get_ear_protection() - if(ear_safety < 2) //has ears - var/effect_amount = intensity - ear_safety - if(effect_amount > 0) - if(stun_pwr) - Stun(stun_pwr*effect_amount) - Weaken(stun_pwr*effect_amount) - if(deafen_pwr || damage_pwr) - setEarDamage(ear_damage + damage_pwr*effect_amount, max(ear_deaf, deafen_pwr*effect_amount)) - if (ear_damage >= 15) - src << "Your ears start to ring badly!" - if(prob(ear_damage - 5)) - src << "You can't hear anything!" - disabilities |= DEAF - else if(ear_damage >= 5) - src << "Your ears start to ring!" - src << sound('sound/weapons/flash_ring.ogg',0,1,0,250) - return effect_amount //how soundbanged we are - - -/mob/living/carbon/damage_clothes(damage_amount, damage_type = BRUTE, damage_flag = 0, def_zone) - if(damage_type != BRUTE && damage_type != BURN) - return - damage_amount *= 0.5 //0.5 multiplier for balance reason, we don't want clothes to be too easily destroyed - if(!def_zone || def_zone == "head") - var/obj/item/clothing/hit_clothes - if(wear_mask) - hit_clothes = wear_mask - if(wear_neck) - hit_clothes = wear_neck - if(head) - hit_clothes = head - if(hit_clothes) - hit_clothes.take_damage(damage_amount, damage_type, damage_flag, 0) - + if(pulling && pulling == C && grab_state >= GRAB_AGGRESSIVE && a_intent == "grab") + C.visible_message("[src] devours [C]!", \ + "[src] devours you!") + C.forceMove(src) + stomach_contents.Add(C) + add_logs(src, C, "devoured") \ No newline at end of file diff --git a/code/modules/mob/living/carbon/carbon_defines.dm b/code/modules/mob/living/carbon/carbon_defines.dm index cf43859dec..523c524f23 100644 --- a/code/modules/mob/living/carbon/carbon_defines.dm +++ b/code/modules/mob/living/carbon/carbon_defines.dm @@ -1,12 +1,12 @@ +/mob/living/ + var/list/stomach_contents = list() + /mob/living/carbon gender = MALE - pressure_resistance = 15 - var/list/stomach_contents = list() + //var/list/stomach_contents = list() var/list/internal_organs = list() //List of /obj/item/organ in the mob. They don't go in the contents for some reason I don't want to know. var/list/internal_organs_slot = list() //Same as above, but stores "slot ID" - "organ" pairs for easy access. - var/list/implants = list() - var/silent = 0 //Can't talk. Value goes down every life proc. //NOTE TO FUTURE CODERS: DO NOT INITIALIZE NUMERICAL VARS AS NULL OR I WILL MURDER YOU. var/obj/item/handcuffed = null //Whether or not the mob is handcuffed @@ -15,24 +15,17 @@ //inventory slots var/obj/item/back = null var/obj/item/clothing/mask/wear_mask = null - var/obj/item/clothing/neck/wear_neck = null var/obj/item/weapon/tank/internal = null var/obj/item/head = null - var/obj/item/gloves = null //only used by humans - var/obj/item/shoes = null //only used by humans. - var/obj/item/clothing/glasses/glasses = null //only used by humans. - var/obj/item/ears = null //only used by humans. - var/datum/dna/dna = null//Carbon - var/datum/mind/last_mind = null //last mind to control this mob, for blood-based cloning var/failed_last_breath = 0 //This is used to determine if the mob failed a breath. If they did fail a brath, they will attempt to breathe each tick, otherwise just once per 4 ticks. var/co2overloadtime = null var/temperature_resistance = T0C+75 has_limbs = 1 - var/obj/item/weapon/reagent_containers/food/snacks/meat/slab/type_of_meat = /obj/item/weapon/reagent_containers/food/snacks/meat/slab + var/obj/item/weapon/reagent_containers/food/snacks/meat/slab/type_of_meat = /obj/item/weapon/reagent_containers/food/snacks/meat/slab/ var/list/obj/effect/proc_holder/alien/abilities = list() var/gib_type = /obj/effect/decal/cleanable/blood/gibs @@ -41,8 +34,4 @@ var/tinttotal = 0 // Total level of visualy impairing items - var/list/bodyparts = list(/obj/item/bodypart/chest, /obj/item/bodypart/head, /obj/item/bodypart/l_arm, - /obj/item/bodypart/r_arm, /obj/item/bodypart/r_leg, /obj/item/bodypart/l_leg) - //Gets filled up in create_bodyparts() - - var/list/hand_bodyparts = list() //a collection of arms (or actually whatever the fug /bodyparts you monsters use to wreck my systems) \ No newline at end of file + var/list/bodyparts = list() //Gets filled up in the constructor (New() proc in human.dm and monkey.dm) diff --git a/code/modules/mob/living/carbon/carbon_movement.dm b/code/modules/mob/living/carbon/carbon_movement.dm index e6fd8c5be6..173bac9198 100644 --- a/code/modules/mob/living/carbon/carbon_movement.dm +++ b/code/modules/mob/living/carbon/carbon_movement.dm @@ -1,35 +1,16 @@ /mob/living/carbon/movement_delay() - var/FP - if(iscarbon(src)) - var/mob/living/carbon/C = src - var/obj/item/device/flightpack/F = C.get_flightpack() - if(istype(F) && F.flight) - FP = 1 - . = ..(FP) - if(!FP) - . += grab_state * 1 //Flightpacks are too powerful to be slowed too much by the weight of a corpse. - else - . += grab_state * 3 //can't go fast while grabbing something. - - if(!get_leg_ignore()) //ignore the fact we lack legs - var/leg_amount = get_num_legs() - . += 6 - 3*leg_amount //the fewer the legs, the slower the mob - if(!leg_amount) - . += 6 - 3*get_num_arms() //crawling is harder with fewer arms - if(legcuffed) - . += legcuffed.slowdown + . = ..() + . += grab_state * 3 + if(legcuffed) + . += legcuffed.slowdown var/const/NO_SLIP_WHEN_WALKING = 1 var/const/SLIDE = 2 var/const/GALOSHES_DONT_HELP = 4 -var/const/SLIDE_ICE = 8 /mob/living/carbon/slip(s_amount, w_amount, obj/O, lube) - if(movement_type & FLYING) - return 0 - if(!(lube&SLIDE_ICE)) - add_logs(src,, "slipped",, "on [O ? O.name : "floor"]") + add_logs(src,, "slipped",, "on [O ? O.name : "floor"]") return loc.handle_slip(src, s_amount, w_amount, O, lube) @@ -39,10 +20,6 @@ var/const/SLIDE_ICE = 8 if(!isturf(loc)) return 0 - var/obj/item/device/flightpack/F = get_flightpack() - if(istype(F) && (F.flight) && F.allow_thrust(0.01, src)) - return 1 - // Do we have a jetpack implant (and is it on)? var/obj/item/organ/cyberimp/chest/thrusters/T = getorganslot("thrusters") if(istype(T) && movement_dir && T.allow_thrust(0.01)) @@ -52,14 +29,14 @@ var/const/SLIDE_ICE = 8 if(istype(J) && (movement_dir || J.stabilizers) && J.allow_thrust(0.01, src)) return 1 + + /mob/living/carbon/Move(NewLoc, direct) . = ..() if(.) - if(dna && dna.species && (NOHUNGER in dna.species.species_traits)) - nutrition = NUTRITION_LEVEL_FED - 1 //just less than feeling vigorous - else if(nutrition && stat != DEAD) - nutrition -= HUNGER_FACTOR/10 - if(m_intent == MOVE_INTENT_RUN) - nutrition -= HUNGER_FACTOR/10 - if((disabilities & FAT) && m_intent == MOVE_INTENT_RUN && bodytemperature <= 360) - bodytemperature += 2 + if(src.nutrition && src.stat != 2) + src.nutrition -= HUNGER_FACTOR/10 + if(src.m_intent == "run") + src.nutrition -= HUNGER_FACTOR/10 + if((src.disabilities & FAT) && src.m_intent == "run" && src.bodytemperature <= 360) + src.bodytemperature += 2 diff --git a/code/modules/mob/living/carbon/damage_procs.dm b/code/modules/mob/living/carbon/damage_procs.dm deleted file mode 100644 index 6279f103b0..0000000000 --- a/code/modules/mob/living/carbon/damage_procs.dm +++ /dev/null @@ -1,191 +0,0 @@ - - -/mob/living/carbon/apply_damage(damage, damagetype = BRUTE, def_zone = null, blocked = 0) - var/hit_percent = (100-blocked)/100 - if(!damage || hit_percent <= 0) - return 0 - - var/obj/item/bodypart/BP = null - if(islimb(def_zone)) //we specified a bodypart object - BP = def_zone - else - if(!def_zone) - def_zone = ran_zone(def_zone) - BP = get_bodypart(check_zone(def_zone)) - if(!BP) - BP = bodyparts[1] - - switch(damagetype) - if(BRUTE) - if(BP) - if(BP.receive_damage(damage * hit_percent, 0)) - update_damage_overlays() - else //no bodypart, we deal damage with a more general method. - adjustBruteLoss(damage * hit_percent) - if(BURN) - if(BP) - if(BP.receive_damage(0, damage * hit_percent)) - update_damage_overlays() - else - adjustFireLoss(damage * hit_percent) - if(TOX) - adjustToxLoss(damage * hit_percent) - if(OXY) - adjustOxyLoss(damage * hit_percent) - if(CLONE) - adjustCloneLoss(damage * hit_percent) - if(STAMINA) - adjustStaminaLoss(damage * hit_percent) - return 1 - - -//These procs fetch a cumulative total damage from all bodyparts -/mob/living/carbon/getBruteLoss() - var/amount = 0 - for(var/X in bodyparts) - var/obj/item/bodypart/BP = X - amount += BP.brute_dam - return amount - -/mob/living/carbon/getFireLoss() - var/amount = 0 - for(var/X in bodyparts) - var/obj/item/bodypart/BP = X - amount += BP.burn_dam - return amount - - -/mob/living/carbon/adjustBruteLoss(amount, updating_health = 1) - if(status_flags & GODMODE) - return 0 - if(amount > 0) - take_overall_damage(amount, 0) - else - heal_overall_damage(-amount, 0, 0, 1, updating_health) - -/mob/living/carbon/adjustFireLoss(amount) - if(status_flags & GODMODE) - return 0 - if(amount > 0) - take_overall_damage(0, amount) - else - heal_overall_damage(0, -amount) - - -/mob/living/carbon/adjustToxLoss(amount, updating_health=1) - if(has_dna() && TOXINLOVER in dna.species.species_traits) //damage becomes healing and healing becomes damage - amount = -amount - if(amount > 0) - blood_volume -= 5*amount - else - blood_volume -= amount - return ..() - -//////////////////////////////////////////// - -//Returns a list of damaged bodyparts -/mob/living/carbon/proc/get_damaged_bodyparts(brute, burn) - var/list/obj/item/bodypart/parts = list() - for(var/X in bodyparts) - var/obj/item/bodypart/BP = X - if((brute && BP.brute_dam) || (burn && BP.burn_dam)) - parts += BP - return parts - -//Returns a list of damageable bodyparts -/mob/living/carbon/proc/get_damageable_bodyparts() - var/list/obj/item/bodypart/parts = list() - for(var/X in bodyparts) - var/obj/item/bodypart/BP = X - if(BP.brute_dam + BP.burn_dam < BP.max_damage) - parts += BP - return parts - -//Heals ONE bodypart randomly selected from damaged ones. -//It automatically updates damage overlays if necessary -//It automatically updates health status -/mob/living/carbon/heal_bodypart_damage(brute, burn, only_robotic = 0, only_organic = 1) - var/list/obj/item/bodypart/parts = get_damaged_bodyparts(brute,burn) - if(!parts.len) - return - var/obj/item/bodypart/picked = pick(parts) - if(picked.heal_damage(brute, burn, only_robotic, only_organic)) - update_damage_overlays() - -//Damages ONE bodypart randomly selected from damagable ones. -//It automatically updates damage overlays if necessary -//It automatically updates health status -/mob/living/carbon/take_bodypart_damage(brute, burn) - var/list/obj/item/bodypart/parts = get_damageable_bodyparts() - if(!parts.len) - return - var/obj/item/bodypart/picked = pick(parts) - if(picked.receive_damage(brute,burn)) - update_damage_overlays() - - -//Heal MANY bodyparts, in random order -/mob/living/carbon/heal_overall_damage(brute, burn, only_robotic = 0, only_organic = 1, updating_health = 1) - var/list/obj/item/bodypart/parts = get_damaged_bodyparts(brute,burn) - - var/update = 0 - while(parts.len && (brute>0 || burn>0) ) - var/obj/item/bodypart/picked = pick(parts) - - var/brute_was = picked.brute_dam - var/burn_was = picked.burn_dam - - update |= picked.heal_damage(brute,burn, only_robotic, only_organic, 0) - - brute -= (brute_was-picked.brute_dam) - burn -= (burn_was-picked.burn_dam) - - parts -= picked - if(updating_health) - updatehealth() - if(update) - update_damage_overlays() - -// damage MANY bodyparts, in random order -/mob/living/carbon/take_overall_damage(brute, burn, updating_health = 1) - if(status_flags & GODMODE) - return //godmode - - var/list/obj/item/bodypart/parts = get_damageable_bodyparts() - var/update = 0 - while(parts.len && (brute>0 || burn>0) ) - var/obj/item/bodypart/picked = pick(parts) - var/brute_per_part = round(brute/parts.len, 0.01) - var/burn_per_part = round(burn/parts.len, 0.01) - - var/brute_was = picked.brute_dam - var/burn_was = picked.burn_dam - - - update |= picked.receive_damage(brute_per_part,burn_per_part, 0) - - brute -= (picked.brute_dam - brute_was) - burn -= (picked.burn_dam - burn_was) - - parts -= picked - if(updating_health) - updatehealth() - if(update) - update_damage_overlays() - - - -/mob/living/carbon/adjustStaminaLoss(amount, updating_stamina = 1) - if(status_flags & GODMODE) - return 0 - staminaloss = Clamp(staminaloss + amount, 0, maxHealth*2) - if(updating_stamina) - update_stamina() - - -/mob/living/carbon/setStaminaLoss(amount, updating_stamina = 1) - if(status_flags & GODMODE) - return 0 - staminaloss = amount - if(updating_stamina) - update_stamina() diff --git a/code/modules/mob/living/carbon/death.dm b/code/modules/mob/living/carbon/death.dm index 945d72ff3d..4f51c28e95 100644 --- a/code/modules/mob/living/carbon/death.dm +++ b/code/modules/mob/living/carbon/death.dm @@ -3,43 +3,19 @@ losebreath = 0 ..() -/mob/living/carbon/gib(no_brain, no_organs, no_bodyparts) +/mob/living/carbon/gib(no_brain, no_organs) for(var/mob/M in src) if(M in stomach_contents) stomach_contents.Remove(M) - M.forceMove(loc) + M.loc = loc visible_message("[M] bursts out of [src]!") ..() -/mob/living/carbon/spill_organs(no_brain, no_organs, no_bodyparts) - if(!no_bodyparts) - if(no_organs)//so the organs don't get transfered inside the bodyparts we'll drop. - for(var/X in internal_organs) - qdel(X) - else //we're going to drop all bodyparts except chest, so the only organs that needs spilling are those inside it. - for(var/X in internal_organs) - var/obj/item/organ/O = X - if(no_brain && istype(O, /obj/item/organ/brain)) - qdel(O) //so the brain isn't transfered to the head when the head drops. - continue - var/org_zone = check_zone(O.zone) //both groin and chest organs. - if(org_zone == "chest") - O.Remove(src) - O.forceMove(get_turf(src)) - O.throw_at_fast(get_edge_target_turf(src,pick(alldirs)),rand(1,3),5) - else - for(var/X in internal_organs) - var/obj/item/organ/I = X - if(no_brain && istype(I, /obj/item/organ/brain)) - qdel(I) - continue +/mob/living/carbon/spill_organs(no_brain) + for(var/obj/item/organ/I in internal_organs) + if(no_brain && istype(I, /obj/item/organ/brain)) + continue + if(I) I.Remove(src) - I.forceMove(get_turf(src)) + I.loc = get_turf(src) I.throw_at_fast(get_edge_target_turf(src,pick(alldirs)),rand(1,3),5) - - -/mob/living/carbon/spread_bodyparts() - for(var/X in bodyparts) - var/obj/item/bodypart/BP = X - BP.drop_limb() - BP.throw_at_fast(get_edge_target_turf(src,pick(alldirs)),rand(1,3),5) \ No newline at end of file diff --git a/code/modules/mob/living/carbon/emote.dm b/code/modules/mob/living/carbon/emote.dm index 24790733c4..a4eec49aea 100644 --- a/code/modules/mob/living/carbon/emote.dm +++ b/code/modules/mob/living/carbon/emote.dm @@ -14,6 +14,10 @@ //var/m_type = 1 switch(act)//Even carbon organisms want it alphabetically ordered.. + if ("aflap") + if (!src.restrained()) + message = "[src] flaps \his wings ANGRILY!" + m_type = 2 if ("airguitar") if (!src.restrained()) @@ -28,6 +32,10 @@ message = "[src] blinks rapidly." m_type = 1 + if ("blush","blushes") + message = "[src] blushes." + m_type = 1 + if ("bow","bows") if (!src.buckled) var/M = null @@ -74,6 +82,15 @@ message = "[src] makes a strong noise." m_type = 2 + if ("deathgasp","deathgasps") + message = "[src] seizes up and falls limp, \his eyes dead and lifeless..." + m_type = 1 + + if ("flap","flaps") + if (!src.restrained()) + message = "[src] flaps \his wings." + m_type = 2 + if ("gasp","gasps") if (!muzzled) ..(act) @@ -99,6 +116,10 @@ ..() return + if ("nod","nods") + message = "[src] nods." + m_type = 1 + if ("scream","screams") if (!muzzled) ..(act) @@ -106,6 +127,10 @@ message = "[src] makes a very loud noise." m_type = 2 + if ("shake","shakes") + message = "[src] shakes \his head." + m_type = 1 + if ("sneeze","sneezes") if (!muzzled) ..(act) @@ -120,6 +145,10 @@ message = "[src] sighs." m_type = 2 + if ("sniff","sniffs") + message = "[src] sniffs." + m_type = 2 + if ("snore","snores") if (!muzzled) ..(act) @@ -159,7 +188,7 @@ // Maybe some people are okay with that. for(var/mob/M in dead_mob_list) - if(!M.client || isnewplayer(M)) + if(!M.client || istype(M, /mob/new_player)) continue //skip monkeys, leavers and new players if(M.stat == DEAD && M.client && (M.client.prefs.chat_toggles & CHAT_GHOSTSIGHT) && !(M in viewers(src,null))) M.show_message(message) diff --git a/code/modules/mob/living/carbon/examine.dm b/code/modules/mob/living/carbon/examine.dm index 91f0f79ab7..6842d856b0 100644 --- a/code/modules/mob/living/carbon/examine.dm +++ b/code/modules/mob/living/carbon/examine.dm @@ -1,90 +1,64 @@ /mob/living/carbon/examine(mob/user) - var/t_He = p_they(TRUE) - var/t_His = p_their(TRUE) - var/t_his = p_their() - var/t_him = p_them() - var/t_has = p_have() - var/t_is = p_are() - var/msg = "*---------*\nThis is \icon[src] \a [src]!\n" if (handcuffed) - msg += "[t_He] [t_is] \icon[src.handcuffed] handcuffed!\n" + msg += "It is \icon[src.handcuffed] handcuffed!\n" if (head) - msg += "[t_He] [t_is] wearing \icon[src.head] \a [src.head] on [t_his] head. \n" + msg += "It has \icon[src.head] \a [src.head] on its head. \n" if (wear_mask) - msg += "[t_He] [t_is] wearing \icon[src.wear_mask] \a [src.wear_mask] on [t_his] face.\n" - if (wear_neck) - msg += "[t_He] [t_is] wearing \icon[src.wear_neck] \a [src.wear_neck] around [t_his] neck.\n" - - for(var/obj/item/I in held_items) - if(!(I.flags & ABSTRACT)) - if(I.blood_DNA) - msg += "[t_He] [t_is] holding \icon[I] [I.gender==PLURAL?"some":"a"] blood-stained [I.name] in [t_his] [get_held_index_name(get_held_index_of_item(I))]!\n" - else - msg += "[t_He] [t_is] holding \icon[I] \a [I] in [t_his] [get_held_index_name(get_held_index_of_item(I))].\n" - + msg += "It has \icon[src.wear_mask] \a [src.wear_mask] on its face.\n" + if (l_hand) + msg += "It has \icon[src.l_hand] \a [src.l_hand] in its left hand.\n" + if (r_hand) + msg += "It has \icon[src.r_hand] \a [src.r_hand] in its right hand.\n" if (back) - msg += "[t_He] [t_has] \icon[src.back] \a [src.back] on [t_his] back.\n" - var/appears_dead = 0 + msg += "It has \icon[src.back] \a [src.back] on its back.\n" if (stat == DEAD) - appears_dead = 1 - if(getorgan(/obj/item/organ/brain)) - msg += "[t_He] [t_is] limp and unresponsive, with no signs of life.\n" - else if(get_bodypart("head")) - msg += "[t_He] appears that [t_his] brain is missing...\n" + msg += "It is limp and unresponsive, with no signs of life.\n" + else + msg += "" + var/temp = getBruteLoss() + if(temp) + if (temp < 30) + msg += "It has minor bruising.\n" + else + msg += "It has severe bruising!\n" - var/list/missing = get_missing_limbs() - for(var/t in missing) - if(t=="head") - msg += "[t_His] [parse_zone(t)] is missing!\n" - continue - msg += "[t_His] [parse_zone(t)] is missing!\n" + temp = getFireLoss() + if(temp) + if (temp < 30) + msg += "It has minor burns.\n" + else + msg += "It has severe burns!\n" - msg += "" - var/temp = getBruteLoss() - if(temp) - if (temp < 30) - msg += "[t_He] [t_has] minor bruising.\n" - else - msg += "[t_He] [t_has] severe bruising!\n" + temp = getCloneLoss() + if(temp) + if(getCloneLoss() < 30) + msg += "It is slightly deformed.\n" + else + msg += "It is severely deformed.\n" - temp = getFireLoss() - if(temp) - if (temp < 30) - msg += "[t_He] [t_has] minor burns.\n" - else - msg += "[t_He] [t_has] severe burns!\n" + if(getBrainLoss() > 60) + msg += "It seems to be clumsy and unable to think.\n" - temp = getCloneLoss() - if(temp) - if(getCloneLoss() < 30) - msg += "[t_He] [t_is] slightly deformed.\n" - else - msg += "[t_He] [t_is] severely deformed.\n" + if(fire_stacks > 0) + msg += "It's covered in something flammable.\n" + if(fire_stacks < 0) + msg += "It's soaked in water.\n" - if(getBrainLoss() > 60) - msg += "[t_He] seems to be clumsy and unable to think.\n" + if(pulledby && pulledby.grab_state) + msg += "It's restrained by [pulledby]'s grip.\n" - if(fire_stacks > 0) - msg += "[t_He] [t_is] covered in something flammable.\n" - if(fire_stacks < 0) - msg += "[t_He] [t_is] looks a little soaked.\n" - - if(pulledby && pulledby.grab_state) - msg += "[t_He] [t_is] restrained by [pulledby]'s grip.\n" - - msg += "" - - if(!appears_dead) if(stat == UNCONSCIOUS) - msg += "[t_He] [t_is]n't responding to anything around [t_him] and seems to be asleep.\n" - - if(digitalcamo) - msg += "[t_He] [t_is] moving [t_his] body in an unnatural and blatantly unsimian manner.\n" + msg += "It isn't responding to anything around it; it seems to be asleep.\n" + msg += "" + if(digitalcamo) + msg += "It is moving its body in an unnatural and blatantly unsimian manner.\n" + if(!getorgan(/obj/item/organ/brain)) + msg += "It appears that it's brain is missing...\n" msg += "*---------*" - user << msg + user << msg \ No newline at end of file diff --git a/code/modules/mob/living/carbon/human/damage_procs.dm b/code/modules/mob/living/carbon/human/damage_procs.dm deleted file mode 100644 index aa49718753..0000000000 --- a/code/modules/mob/living/carbon/human/damage_procs.dm +++ /dev/null @@ -1,5 +0,0 @@ - - -/mob/living/carbon/human/apply_damage(damage = 0,damagetype = BRUTE, def_zone = null, blocked = 0) - // depending on the species, it will run the corresponding apply_damage code there - return dna.species.apply_damage(damage, damagetype, def_zone, blocked, src) diff --git a/code/modules/mob/living/carbon/human/death.dm b/code/modules/mob/living/carbon/human/death.dm index 1a196f3572..7eccf9b967 100644 --- a/code/modules/mob/living/carbon/human/death.dm +++ b/code/modules/mob/living/carbon/human/death.dm @@ -4,11 +4,8 @@ /mob/living/carbon/human/dust_animation() PoolOrNew(/obj/effect/overlay/temp/dust_animation, list(loc, "dust-h")) -/mob/living/carbon/human/spawn_gibs(with_bodyparts) - if(with_bodyparts) - new /obj/effect/gibspawner/human(loc, viruses, dna) - else - new /obj/effect/gibspawner/humanbodypartless(loc, viruses, dna) +/mob/living/carbon/human/spawn_gibs() + hgibs(loc, viruses, dna) /mob/living/carbon/human/spawn_dust() new /obj/effect/decal/remains/human(loc) @@ -36,16 +33,29 @@ ticker.mode.check_win() //Calls the rounds wincheck, mainly for wizard, malf, and changeling now . = ..(gibbed) if(mind && mind.devilinfo) - addtimer(mind.devilinfo, "beginResurrectionCheck", 0, TIMER_NORMAL, src) + spawn(0) + mind.devilinfo.beginResurrectionCheck(src) /mob/living/carbon/human/proc/makeSkeleton() status_flags |= DISFIGURED set_species(/datum/species/skeleton) return 1 +/mob/living/carbon/proc/ChangeToHusk() + if(disabilities & HUSK) + return + disabilities |= HUSK + status_flags |= DISFIGURED //makes them unknown without fucking up other stuff like admintools + return 1 + +/mob/living/carbon/human/ChangeToHusk() + . = ..() + if(.) + update_hair() + update_body() /mob/living/carbon/proc/Drain() - become_husk() + ChangeToHusk() disabilities |= NOCLONE blood_volume = 0 return 1 diff --git a/code/modules/mob/living/carbon/human/emote.dm b/code/modules/mob/living/carbon/human/emote.dm index bf68805693..1983917eaf 100644 --- a/code/modules/mob/living/carbon/human/emote.dm +++ b/code/modules/mob/living/carbon/human/emote.dm @@ -13,8 +13,9 @@ var/muzzled = is_muzzled() //var/m_type = 1 - for (var/obj/item/weapon/implant/I in implants) - I.trigger(act, src) + for (var/obj/item/weapon/implant/I in src) + if (I.implanted) + I.trigger(act, src) var/miming=0 if(mind) @@ -23,12 +24,12 @@ switch(act) //Please keep this alphabetically ordered when adding or changing emotes. if ("aflap") //Any emote on human that uses miming must be left in, oh well. if (!src.restrained()) - message = "[src] flaps [p_their()] wings ANGRILY!" + message = "[src] flaps \his wings ANGRILY!" m_type = 2 if ("choke","chokes") if (miming) - message = "[src] clutches [p_their()] throat desperately!" + message = "[src] clutches \his throat desperately!" else ..(act) @@ -44,11 +45,10 @@ m_type = 2 if ("collapse","collapses") - if(status_flags & CANPARALYSE) //You can't collapse if you can't actually collapse. - Paralyse(2) - adjustStaminaLoss(100) // Hampers abuse against simple mobs, but still leaves it a viable option. - message = "[src] collapses!" - m_type = 2 + Paralyse(2) + adjustStaminaLoss(100) // Hampers abuse against simple mobs, but still leaves it a viable option. + message = "[src] collapses!" + m_type = 2 if ("cough","coughs") if (miming) @@ -69,7 +69,7 @@ message = "[src] cries." m_type = 2 else - message = "[src] makes a weak noise. [p_they(TRUE)] frown[p_s()]." + message = "[src] makes a weak noise. \He frowns." m_type = 2 if ("custom") @@ -120,7 +120,7 @@ if (M) message = "[src] gives daps to [M]." else - message = "[src] sadly can't find anybody to give daps to, and daps [p_them()]self. Shameful." + message = "[src] sadly can't find anybody to give daps to, and daps \himself. Shameful." if ("eyebrow") message = "[src] raises an eyebrow." @@ -128,7 +128,7 @@ if ("flap","flaps") if (!src.restrained()) - message = "[src] flaps [p_their()] wings." + message = "[src] flaps \his wings." m_type = 2 if(((dna.features["wings"] != "None") && !("wings" in dna.species.mutant_bodyparts))) OpenWings() @@ -137,10 +137,10 @@ if ("wings") if (!src.restrained()) if(dna && dna.species &&((dna.features["wings"] != "None") && ("wings" in dna.species.mutant_bodyparts))) - message = "[src] opens [p_their()] wings." + message = "[src] opens \his wings." OpenWings() else if(dna && dna.species &&((dna.features["wings"] != "None") && ("wingsopen" in dna.species.mutant_bodyparts))) - message = "[src] closes [p_their()] wings." + message = "[src] closes \his wings." CloseWings() else src << "Unusable emote '[act]'. Say *help for a list." @@ -177,7 +177,7 @@ if ("handshake") m_type = 1 - if (!src.restrained() && get_empty_held_indexes()) + if (!src.restrained() && !src.r_hand) var/mob/M = null if (param) for (var/mob/A in view(1, src)) @@ -187,10 +187,10 @@ if (M == src) M = null if (M) - if (M.canmove && M.get_empty_held_indexes() && !M.restrained()) + if (M.canmove && !M.r_hand && !M.restrained()) message = "[src] shakes hands with [M]." else - message = "[src] holds out [p_their()] hand to [M]." + message = "[src] holds out \his hand to [M]." if ("hug","hugs") m_type = 1 @@ -206,7 +206,7 @@ if (M) message = "[src] hugs [M]." else - message = "[src] hugs [p_them()]self." + message = "[src] hugs \himself." if ("me") if(silent) @@ -259,6 +259,21 @@ message = "[src] raises a hand." m_type = 1 + if ("roar","roars") + if (miming) + message = "[src] appears to roar!" + else + if(!muzzled && has_dna()) + m_type = 2 + message = "[src] roars!" + switch(dna.species.id) + if("pred") + playsound(get_turf(src), "predroar", 50, 0, 5) + if("xeno") + playsound(get_turf(src), "alienscreech", 50, 0, 5) + else + ..(act) + if ("salute","salutes") if (!src.buckled) var/M = null @@ -279,6 +294,23 @@ if (miming) message = "[src] acts out a scream!" else + if(has_dna()) + switch(dna.species.id) //Visit sound.dm to see and add more 'soundin' options. (alienscreech, malescream, femscream, etc) + if("xeno") + playsound(get_turf(src), "alienscreech", 50, 0, 5) + if("pred") + playsound(get_turf(src), "predroar", 50, 0, 5) + if("moth") + playsound(get_turf(src), "mothscream", 50, 1, 5) + if("lizard" || "drake") + playsound(get_turf(src), "drakescream", 50, 0, 5) + if("avian") + playsound(get_turf(src), "birdscream", 50, 0, 5) + else + if(gender == MALE) + playsound(get_turf(src), "malescream", 50, 0, 5) + if(gender == FEMALE) + playsound(get_turf(src), "femscream", 50, 0, 5) ..(act) if ("shiver","shivers") @@ -297,16 +329,12 @@ if ("signal","signals") if (!src.restrained()) - var/maximum_fingers = 10 - var/full_hands - for(var/obj/item/I in held_items) - full_hands++ - maximum_fingers = (held_items.len-full_hands)*5 var/t1 = round(text2num(param)) if (isnum(t1)) - if (t1 <= maximum_fingers) + if (t1 <= 5 && (!src.r_hand || !src.l_hand)) + message = "[src] raises [t1] finger\s." + else if (t1 <= 10 && (!src.r_hand && !src.l_hand)) message = "[src] raises [t1] finger\s." - m_type = 1 if ("sneeze","sneezes") @@ -337,16 +365,22 @@ m_type = 2 if("wag","wags") - if(dna && dna.species && (("tail_lizard" in dna.species.mutant_bodyparts) || ((dna.features["tail_human"] != "None") && !("waggingtail_human" in dna.species.mutant_bodyparts)))) - message = "[src] wags [p_their()] tail." + if(dna && dna.species && (("tail_lizard" in dna.species.mutant_bodyparts) || ((dna.features["mam_tail"] != "None") && !("mam_waggingtail" in dna.species.mutant_bodyparts)) || ((dna.features["tail_human"] != "None") && !("waggingtail_human" in dna.species.mutant_bodyparts)))) + message = "[src] wags \his tail." startTailWag() - else if(dna && dna.species && (("waggingtail_lizard" in dna.species.mutant_bodyparts) || ("waggingtail_human" in dna.species.mutant_bodyparts))) + else if(dna && dna.species && (("waggingtail_lizard" in dna.species.mutant_bodyparts) || ("mam_waggingtail" in dna.species.mutant_bodyparts) || ("waggingtail_human" in dna.species.mutant_bodyparts))) endTailWag() else src << "Unusable emote '[act]'. Say *help for a list." if ("help") //This can stay at the bottom. - src << "Help for human emotes. You can use these emotes with say \"*emote\":\n\naflap, airguitar, blink, blink_r, blush, bow-(none)/mob, burp, choke, chuckle, clap, collapse, cough, cry, custom, dance, dap, deathgasp, drool, eyebrow, faint, flap, frown, gasp, giggle, glare-(none)/mob, grin, groan, grumble, handshake, hug-(none)/mob, jump, laugh, look-(none)/mob, me, moan, mumble, nod, pale, point-(atom), raise, salute, scream, shake, shiver, shrug, sigh, signal-#1-10, sit, smile, sneeze, sniff, snore, stare-(none)/mob, sulk, sway, tremble, twitch, twitch_s, wave, whimper, wink, wings, wag, yawn" + if(has_dna(src)) + switch(dna.species.id)//Set lists of emotes for specific species. Not the best way to do this, but the easiest considering they'll share most emotes. + if("pred") + src << "Help for yautja emotes. You can use these emotes with say \"*emote\":\n\naflap, airguitar, blink, blink_r, blush, bow-(none)/mob, burp, choke, chuckle, clap, collapse, cough, cry, custom, dance, dap, deathgasp, drool, eyebrow, faint, flap, frown, gasp, giggle, glare-(none)/mob, grin, groan, grumble, handshake, hug-(none)/mob, jump, laugh, look-(none)/mob, me, moan, mumble, nod, pale, point-(atom), raise, roar, salute, scream, shake, shiver, shrug, sigh, signal-#1-10, sit, smile, sneeze, sniff, snore, stare-(none)/mob, sulk, sway, tremble, twitch, twitch_s, wave, whimper, wink, wings, wag, yawn" + + else + src << "Help for human emotes. You can use these emotes with say \"*emote\":\n\naflap, airguitar, blink, blink_r, blush, bow-(none)/mob, burp, choke, chuckle, clap, collapse, cough, cry, custom, dance, dap, deathgasp, drool, eyebrow, faint, flap, frown, gasp, giggle, glare-(none)/mob, grin, groan, grumble, handshake, hug-(none)/mob, jump, laugh, look-(none)/mob, me, moan, mumble, nod, pale, point-(atom), raise, salute, scream, shake, shiver, shrug, sigh, signal-#1-10, sit, smile, sneeze, sniff, snore, stare-(none)/mob, sulk, sway, tremble, twitch, twitch_s, wave, whimper, wink, wings, wag, yawn" else ..(act) @@ -363,7 +397,7 @@ // Maybe some people are okay with that. for(var/mob/M in dead_mob_list) - if(!M.client || isnewplayer(M)) + if(!M.client || istype(M, /mob/new_player)) continue //skip monkeys, leavers and new players if(M.stat == DEAD && M.client && (M.client.prefs.chat_toggles & CHAT_GHOSTSIGHT) && !(M in viewers(src,null))) M.show_message(message) @@ -388,6 +422,9 @@ if("tail_human" in dna.species.mutant_bodyparts) dna.species.mutant_bodyparts -= "tail_human" dna.species.mutant_bodyparts |= "waggingtail_human" + if("mam_tail" in dna.species.mutant_bodyparts) + dna.species.mutant_bodyparts -= "mam_tail" + dna.species.mutant_bodyparts |= "mam_waggingtail" update_body() @@ -402,6 +439,9 @@ if("waggingtail_human" in dna.species.mutant_bodyparts) dna.species.mutant_bodyparts -= "waggingtail_human" dna.species.mutant_bodyparts |= "tail_human" + if("mam_waggingtail" in dna.species.mutant_bodyparts) + dna.species.mutant_bodyparts -= "mam_waggingtail" + dna.species.mutant_bodyparts |= "mam_tail" update_body() /mob/living/carbon/human/proc/OpenWings() @@ -419,3 +459,10 @@ dna.species.mutant_bodyparts -= "wingsopen" dna.species.mutant_bodyparts |= "wings" update_body() + +/mob/living/carbon/human/verb/set_flavor() + set name = "Set Flavor Text" + set desc = "Sets an extended description of your character's features." + set category = "IC" + + flavor_text = copytext(sanitize(input(usr, "Please enter your new flavor text.", "Flavor text", null) as text), 1) diff --git a/code/modules/mob/living/carbon/human/examine.dm b/code/modules/mob/living/carbon/human/examine.dm index d9c05246b6..cd8a8f1e3f 100644 --- a/code/modules/mob/living/carbon/human/examine.dm +++ b/code/modules/mob/living/carbon/human/examine.dm @@ -1,17 +1,36 @@ /mob/living/carbon/human/examine(mob/user) -//this is very slightly better than it was because you can use it more places. still can't do \his[src] though. - var/t_He = p_they(TRUE) - var/t_His = p_their(TRUE) - var/t_his = p_their() - var/t_him = p_them() - var/t_has = p_have() - var/t_is = p_are() - - var/msg = "*---------*\nThis is [src.name]!\n" var/list/obscured = check_obscured_slots() var/skipface = (wear_mask && (wear_mask.flags_inv & HIDEFACE)) || (head && (head.flags_inv & HIDEFACE)) + // crappy hacks because you can't do \his[src] etc. I'm sorry this proc is so unreadable, blame the text macros :< + var/t_He = "It" //capitalised for use at the start of each line. + var/t_his = "its" + var/t_him = "it" + var/t_has = "has" + var/t_is = "is" + + var/msg = "*---------*\nThis is " + + if( (slot_w_uniform in obscured) && skipface ) //big suits/masks/helmets make it hard to tell their gender + t_He = "They" + t_his = "their" + t_him = "them" + t_has = "have" + t_is = "are" + else + switch(gender) + if(MALE) + t_He = "He" + t_his = "his" + t_him = "him" + if(FEMALE) + t_He = "She" + t_his = "her" + t_him = "her" + + msg += "[src.name]!\n" + //uniform if(w_uniform && !(slot_w_uniform in obscured)) //Ties @@ -54,13 +73,19 @@ else msg += "[t_He] [t_has] \icon[back] \a [back] on [t_his] back.\n" - //Hands - for(var/obj/item/I in held_items) - if(!(I.flags & ABSTRACT)) - if(I.blood_DNA) - msg += "[t_He] [t_is] holding \icon[I] [I.gender==PLURAL?"some":"a"] blood-stained [I.name] in [t_his] [get_held_index_name(get_held_index_of_item(I))]!\n" - else - msg += "[t_He] [t_is] holding \icon[I] \a [I] in [t_his] [get_held_index_name(get_held_index_of_item(I))].\n" + //left hand + if(l_hand && !(l_hand.flags&ABSTRACT)) + if(l_hand.blood_DNA) + msg += "[t_He] [t_is] holding \icon[l_hand] [l_hand.gender==PLURAL?"some":"a"] blood-stained [l_hand.name] in [t_his] left hand!\n" + else + msg += "[t_He] [t_is] holding \icon[l_hand] \a [l_hand] in [t_his] left hand.\n" + + //right hand + if(r_hand && !(r_hand.flags&ABSTRACT)) + if(r_hand.blood_DNA) + msg += "[t_He] [t_is] holding \icon[r_hand] [r_hand.gender==PLURAL?"some":"a"] blood-stained [r_hand.name] in [t_his] right hand!\n" + else + msg += "[t_He] [t_is] holding \icon[r_hand] \a [r_hand] in [t_his] right hand.\n" //gloves if(gloves && !(slot_gloves in obscured)) @@ -103,9 +128,6 @@ else msg += "[t_He] [t_has] \icon[wear_mask] \a [wear_mask] on [t_his] face.\n" - if (wear_neck && !(slot_neck in obscured)) - msg += "[t_He] [t_is] wearing \icon[src.wear_neck] \a [src.wear_neck] around [t_his] neck.\n" - //eyes if(glasses && !(slot_glasses in obscured)) if(glasses.blood_DNA) @@ -119,6 +141,16 @@ //ID if(wear_id) + /*var/id + if(istype(wear_id, /obj/item/device/pda)) + var/obj/item/device/pda/pda = wear_id + id = pda.owner + else if(istype(wear_id, /obj/item/weapon/card/id)) //just in case something other than a PDA/ID card somehow gets in the ID slot :[ + var/obj/item/weapon/card/id/idcard = wear_id + id = idcard.registered_name + if(id && (id != real_name) && (get_dist(src, user) <= 1) && prob(10)) + msg += "[t_He] [t_is] wearing \icon[wear_id] \a [wear_id] yet something doesn't seem right...\n" + else*/ msg += "[t_He] [t_is] wearing \icon[wear_id] \a [wear_id].\n" //Jitters @@ -130,14 +162,20 @@ if(100 to 200) msg += "[t_He] [t_is] twitching ever so slightly.\n" + if(gender_ambiguous) //someone fucked up a gender reassignment surgery + if (gender == MALE) + msg += "[t_He] has a strange feminine quality to [t_him].\n" + else + msg += "[t_He] has a strange masculine quality to [t_him].\n" + var/appears_dead = 0 if(stat == DEAD || (status_flags & FAKEDEATH)) appears_dead = 1 if(getorgan(/obj/item/organ/brain))//Only perform these checks if there is no brain if(suiciding) - msg += "[t_He] appear[p_s()] to have commited suicide... there is no hope of recovery.\n" + msg += "[t_He] appears to have commited suicide... there is no hope of recovery.\n" if(hellbound) - msg += "[t_His] soul seems to have been ripped out of [t_his] body. Revival is impossible.\n" + msg += "[t_his] soul seems to have been ripped out of [t_his] body. Revival is impossible.\n" msg += "[t_He] [t_is] limp and unresponsive; there are no signs of life" if(!key) var/foundghost = 0 @@ -165,27 +203,12 @@ for(var/obj/item/I in BP.embedded_objects) msg += "[t_He] [t_has] \a \icon[I] [I] embedded in [t_his] [BP.name]!\n" - //stores missing limbs - var/l_limbs_missing = 0 - var/r_limbs_missing = 0 for(var/t in missing) if(t=="head") - msg += "[t_His] [parse_zone(t)] is missing!\n" + msg += "[capitalize(t_his)] [parse_zone(t)] is missing!\n" continue - if(t == "l_arm" || t == "l_leg") - l_limbs_missing++ - else if(t == "r_arm" || t == "r_leg") - r_limbs_missing++ - msg += "[capitalize(t_his)] [parse_zone(t)] is missing!\n" - if(l_limbs_missing >= 2 && r_limbs_missing == 0) - msg += "[t_He] looks all right now.\n" - else if(l_limbs_missing == 0 && r_limbs_missing >= 2) - msg += "[t_He] really keeps to the left.\n" - else if(l_limbs_missing >= 2 && r_limbs_missing >= 2) - msg += "[t_He] doesn't seem all there.\n" - if(temp) if(temp < 30) msg += "[t_He] [t_has] minor bruising.\n" @@ -223,7 +246,22 @@ msg += "[t_He] [t_is] plump and delicious looking - Like a fat little piggy. A tasty piggy.\n" else msg += "[t_He] [t_is] quite chubby.\n" - +/* + if( (vore_womb_datum.has_people()||vore_stomach_datum.has_people()) && !(slot_w_uniform in obscured) ) + msg += "It seems [t_his] belly is shifting around slighty.\n" + if( (vore_breast_datum.has_people()||vore_breast_datum.digestion_count) && !(slot_w_uniform in obscured) ) + msg += "It seems [t_his] breasts are heavy with milk.\n" + if( !(slot_w_uniform in obscured) && (!w_uniform||!(w_uniform.body_parts_covered&GROIN)) ) + if(vore_cock_datum.has_people()||vore_cock_datum.digestion_count) + msg += "It looks like [t_his] cock is full.\n" + if(vore_balls_datum.has_people()||vore_balls_datum.digestion_count) + msg += "It looks like [t_his] balls are full.\n" + if(vore_tail_datum.has_people()) + msg += "[t_He] has a bulge in [t_his] tail." + if(vore_tail_datum.transfer_factor) + msg += " It moves slowly toward the base." + msg += "\n" +*/ if(blood_volume < BLOOD_VOLUME_SAFE) msg += "[t_He] [t_has] pale skin.\n" @@ -238,12 +276,10 @@ if(reagents.has_reagent("teslium")) msg += "[t_He] is emitting a gentle blue glow!\n" - if(islist(stun_absorption)) - for(var/i in stun_absorption) - if(stun_absorption[i]["end_time"] > world.time && stun_absorption[i]["examine_message"]) - msg += "[t_He] [t_is][stun_absorption[i]["examine_message"]]\n" + if(stun_absorption) + msg += "[t_He] is radiating with a soft yellow light!\n" //Used by Vanguard - if(drunkenness && !skipface && !appears_dead) //Drunkenness + if(drunkenness && !skipface && stat != DEAD) //Drunkenness switch(drunkenness) if(11 to 21) msg += "[t_He] [t_is] slightly flushed.\n" @@ -256,7 +292,7 @@ if(61.01 to 91) msg += "[t_He] looks like a drunken mess.\n" if(91.01 to INFINITY) - msg += "[t_He] [t_is] a shitfaced, slobbering wreck.\n" + msg += "[t_He] is a shitfaced, slobbering wreck.\n" msg += "" @@ -268,13 +304,7 @@ if(getorgan(/obj/item/organ/brain)) if(istype(src,/mob/living/carbon/human/interactive)) - var/mob/living/carbon/human/interactive/auto = src - if(auto.showexaminetext) - msg += "[t_He] [t_is] appears to be some sort of sick automaton, [t_his] eyes are glazed over and [t_his] mouth is slightly agape.\n" - if(auto.debugexamine) - var/dodebug = auto.doing2string(auto.doing) - var/interestdebug = auto.interest2string(auto.interest) - msg += "[t_He] [t_is] appears to be [interestdebug] and [dodebug].\n" + msg += "[t_He] [t_is] appears to be some sort of sick automaton, [t_his] eyes are glazed over and [t_his] mouth is slightly agape.\n" else if(!key) msg += "[t_He] [t_is] totally catatonic. The stresses of life in deep-space must have been too much for [t_him]. Any recovery is unlikely.\n" else if(!client) @@ -283,7 +313,7 @@ if(digitalcamo) msg += "[t_He] [t_is] moving [t_his] body in an unnatural and blatantly inhuman manner.\n" - if(ishuman(user)) + if(istype(user, /mob/living/carbon/human)) var/mob/living/carbon/human/H = user var/obj/item/organ/cyberimp/eyes/hud/CIH = H.getorgan(/obj/item/organ/cyberimp/eyes/hud) if(istype(H.glasses, /obj/item/clothing/glasses/hud) || CIH) @@ -295,18 +325,18 @@ msg += "\[Front photo\] " msg += "\[Side photo\]
    " if(istype(H.glasses, /obj/item/clothing/glasses/hud/health) || istype(CIH,/obj/item/organ/cyberimp/eyes/hud/medical)) - var/cyberimp_detect + var/implant_detect for(var/obj/item/organ/cyberimp/CI in internal_organs) if(CI.status == ORGAN_ROBOTIC) - cyberimp_detect += "[name] is modified with a [CI.name].
    " - if(cyberimp_detect) + implant_detect += "[name] is modified with a [CI.name].
    " + if(implant_detect) msg += "Detected cybernetic modifications:
    " - msg += cyberimp_detect + msg += implant_detect if(R) - var/health_r = R.fields["p_stat"] - msg += "\[[health_r]\]" - health_r = R.fields["m_stat"] - msg += "\[[health_r]\]
    " + var/health = R.fields["p_stat"] + msg += "\[[health]\]" + health = R.fields["m_stat"] + msg += "\[[health]\]
    " R = find_record("name", perpname, data_core.medical) if(R) msg += "\[Medical evaluation\]
    " @@ -326,6 +356,10 @@ msg += "\[Add crime\] " msg += "\[View comment log\] " msg += "\[Add comment\]\n" + + if(print_flavor_text() && get_visible_name() != "Unknown")//Are we sure we know who this is? Don't show flavor text unless we can recognize them. Prevents certain metagaming with impersonation. + msg += "[print_flavor_text()]\n" + msg += "*---------*
    " user << msg diff --git a/code/modules/mob/living/carbon/human/human.dm b/code/modules/mob/living/carbon/human/human.dm index 32c66601e3..604ffb8fd7 100644 --- a/code/modules/mob/living/carbon/human/human.dm +++ b/code/modules/mob/living/carbon/human/human.dm @@ -3,7 +3,7 @@ real_name = "Unknown" voice_name = "Unknown" icon = 'icons/mob/human.dmi' - icon_state = "caucasian_m_s" + icon_state = "caucasian1_m_s" @@ -18,7 +18,11 @@ verbs += /mob/living/proc/lay_down //initialize limbs first - create_bodyparts() + bodyparts = newlist(/obj/item/bodypart/chest, /obj/item/bodypart/head, /obj/item/bodypart/l_arm, + /obj/item/bodypart/r_arm, /obj/item/bodypart/r_leg, /obj/item/bodypart/l_leg) + for(var/X in bodyparts) + var/obj/item/bodypart/O = X + O.owner = src //initialize dna. for spawned humans; overwritten by other code create_dna(src) @@ -29,7 +33,21 @@ set_species(dna.species.type) //initialise organs - create_internal_organs() + if(!(NOHUNGER in dna.species.specflags)) + internal_organs += new /obj/item/organ/appendix + + if(!(NOBREATH in dna.species.specflags)) + internal_organs += new /obj/item/organ/lungs + + if(!(NOBLOOD in dna.species.specflags)) + internal_organs += new /obj/item/organ/heart + + internal_organs += new /obj/item/organ/brain + + //Note: Additional organs are generated/replaced on the dna.species level + + for(var/obj/item/organ/I in internal_organs) + I.Insert(src) martial_art = default_martial_art @@ -37,19 +55,6 @@ ..() -/mob/living/carbon/human/create_internal_organs() - if(!(NOHUNGER in dna.species.species_traits)) - internal_organs += new /obj/item/organ/appendix - if(!(NOBREATH in dna.species.species_traits)) - if(dna.species.mutantlungs) - internal_organs += new dna.species.mutantlungs() - else - internal_organs += new /obj/item/organ/lungs() - if(!(NOBLOOD in dna.species.species_traits)) - internal_organs += new /obj/item/organ/heart - internal_organs += new /obj/item/organ/brain - ..() - /mob/living/carbon/human/OpenCraftingMenu() handcrafting.ui_interact(src) @@ -76,11 +81,6 @@ stat("Internal Atmosphere Info", internal.name) stat("Tank Pressure", internal.air_contents.return_pressure()) stat("Distribution Pressure", internal.distribute_pressure) - - var/mob/living/simple_animal/borer/B = has_brain_worms() - if(B && B.controlling) - stat("Chemicals", B.chemicals) - if(mind) if(mind.changeling) stat("Chemical Storage", "[mind.changeling.chem_charges]/[mind.changeling.chem_storage]") @@ -116,17 +116,94 @@ stat("*", "[D.name], Type: [D.spread_text], Stage: [D.stage]/[D.max_stages], Possible Cure: [D.cure_text]") +/mob/living/carbon/human/ex_act(severity, ex_target) + var/b_loss = null + var/f_loss = null + var/bomb_armor = getarmor(null, "bomb") + + switch (severity) + if (1) + b_loss += 500 + if (prob(bomb_armor)) + shred_clothing(1,150) + var/atom/target = get_edge_target_turf(src, get_dir(src, get_step_away(src, src))) + throw_at(target, 200, 4) + else + gib() + return + + if (2) + b_loss += 60 + + f_loss += 60 + if (prob(bomb_armor)) + b_loss = b_loss/1.5 + f_loss = f_loss/1.5 + shred_clothing(1,25) + else + shred_clothing(1,50) + + if (!istype(ears, /obj/item/clothing/ears/earmuffs)) + adjustEarDamage(30, 120) + if (prob(70)) + Paralyse(10) + + if(3) + b_loss += 30 + if (prob(bomb_armor)) + b_loss = b_loss/2 + if (!istype(ears, /obj/item/clothing/ears/earmuffs)) + adjustEarDamage(15,60) + if (prob(50)) + Paralyse(10) + + take_overall_damage(b_loss,f_loss) + //attempt to dismember bodyparts + if(severity <= 2 || !bomb_armor) + var/max_limb_loss = round(4/severity) //so you don't lose four limbs at severity 3. + for(var/X in bodyparts) + var/obj/item/bodypart/BP = X + if(prob(50/severity) && !prob(getarmor(BP, "bomb")) && BP.body_zone != "head" && BP.body_zone != "chest") + BP.brute_dam = BP.max_damage + BP.dismember() + max_limb_loss-- + if(!max_limb_loss) + break + ..() + +/mob/living/carbon/human/blob_act(obj/effect/blob/B) + if(stat == DEAD) + return + show_message("The blob attacks you!") + var/dam_zone = pick("chest", "l_hand", "r_hand", "l_leg", "r_leg") + var/obj/item/bodypart/affecting = get_bodypart(ran_zone(dam_zone)) + apply_damage(5, BRUTE, affecting, run_armor_check(affecting, "melee")) + return + +/mob/living/carbon/human/bullet_act() + if(martial_art && martial_art.deflection_chance) //Some martial arts users can deflect projectiles! + if(!prob(martial_art.deflection_chance)) + return ..() + if(!src.lying && dna && !dna.check_mutation(HULK)) //But only if they're not lying down, and hulks can't do it + src.visible_message("[src] deflects the projectile; they can't be hit with ranged weapons!", "You deflect the projectile!") + playsound(src, pick("sound/weapons/bulletflyby.ogg","sound/weapons/bulletflyby2.ogg","sound/weapons/bulletflyby3.ogg"), 75, 1) + return 0 + ..() + +/mob/living/carbon/human/attack_ui(slot) + if(!get_bodypart(hand ? "l_arm" : "r_arm")) + return 0 + return ..() + /mob/living/carbon/human/show_inv(mob/user) user.set_machine(src) var/has_breathable_mask = istype(wear_mask, /obj/item/clothing/mask) var/list/obscured = check_obscured_slots() - var/list/dat = list() - dat += "" - for(var/i in 1 to held_items.len) - var/obj/item/I = get_item_for_held_index(i) - dat += "" - dat += "" + var/dat = {"
    [get_held_index_name(i)]:[(I && !(I.flags & ABSTRACT)) ? I : "Empty"]
     
    + + + "} dat += "" - if(slot_neck in obscured) - dat += "" - else - dat += "" - if(slot_glasses in obscured) dat += "" else @@ -205,7 +277,7 @@ "} var/datum/browser/popup = new(user, "mob\ref[src]", "[src]", 440, 510) - popup.set_content(dat.Join()) + popup.set_content(dat) popup.open() // called when something steps onto a human @@ -217,6 +289,35 @@ spreadFire(AM) +//Added a safety check in case you want to shock a human mob directly through electrocute_act. +/mob/living/carbon/human/electrocute_act(shock_damage, obj/source, siemens_coeff = 1, safety = 0, override = 0, tesla_shock = 0) + if(tesla_shock) + var/total_coeff = 1 + if(gloves) + var/obj/item/clothing/gloves/G = gloves + if(G.siemens_coefficient <= 0) + total_coeff -= 0.5 + if(wear_suit) + var/obj/item/clothing/suit/S = wear_suit + if(S.siemens_coefficient <= 0) + total_coeff -= 0.95 + siemens_coeff = total_coeff + else if(!safety) + var/gloves_siemens_coeff = 1 + if(gloves) + var/obj/item/clothing/gloves/G = gloves + gloves_siemens_coeff = G.siemens_coefficient + siemens_coeff = gloves_siemens_coeff + if(heart_attack) + if(shock_damage * siemens_coeff >= 1 && prob(25)) + heart_attack = 0 + if(stat == CONSCIOUS) + src << "You feel your heart beating again!" + . = ..(shock_damage,source,siemens_coeff,safety,override,tesla_shock) + if(.) + electrocution_animation(40) + + /mob/living/carbon/human/Topic(href, href_list) if(usr.canUseTopic(src, BE_CLOSE, NO_DEXTERY)) @@ -232,8 +333,8 @@ if(!I || !L || I.loc != src || !(I in L.embedded_objects)) return L.embedded_objects -= I - L.receive_damage(I.embedded_unsafe_removal_pain_multiplier*I.w_class)//It hurts to rip it out, get surgery you dingus. - I.forceMove(get_turf(src)) + L.take_damage(I.embedded_unsafe_removal_pain_multiplier*I.w_class)//It hurts to rip it out, get surgery you dingus. + I.loc = get_turf(src) usr.put_in_hands(I) usr.emote("scream") usr.visible_message("[usr] successfully rips [I] out of their [L.name]!","You successfully remove [I] from your [L.name].") @@ -251,14 +352,14 @@ var/pocket_side = href_list["pockets"] var/pocket_id = (pocket_side == "right" ? slot_r_store : slot_l_store) var/obj/item/pocket_item = (pocket_id == slot_r_store ? r_store : l_store) - var/obj/item/place_item = usr.get_active_held_item() // Item to place in the pocket, if it's empty + var/obj/item/place_item = usr.get_active_hand() // Item to place in the pocket, if it's empty var/delay_denominator = 1 if(pocket_item && !(pocket_item.flags&ABSTRACT)) if(pocket_item.flags & NODROP) usr << "You try to empty [src]'s [pocket_side] pocket, it seems to be stuck!" usr << "You try to empty [src]'s [pocket_side] pocket." - else if(place_item && place_item.mob_can_equip(src, usr, pocket_id, 1) && !(place_item.flags&ABSTRACT)) + else if(place_item && place_item.mob_can_equip(src, pocket_id, 1) && !(place_item.flags&ABSTRACT)) usr << "You try to place [place_item] into [src]'s [pocket_side] pocket." delay_denominator = 4 else @@ -281,11 +382,13 @@ src << "You feel your [pocket_side] pocket being fumbled with!" ..() + else + ..() ///////HUDs/////// if(href_list["hud"]) - if(ishuman(usr)) + if(istype(usr, /mob/living/carbon/human)) var/mob/living/carbon/human/H = usr var/perpname = get_face_name(get_id_name("")) if(istype(H.glasses, /obj/item/clothing/glasses/hud)) @@ -307,24 +410,24 @@ if(href_list["hud"] == "m") if(istype(H.glasses, /obj/item/clothing/glasses/hud/health)) if(href_list["p_stat"]) - var/health_status = input(usr, "Specify a new physical status for this person.", "Medical HUD", R.fields["p_stat"]) in list("Active", "Physically Unfit", "*Unconscious*", "*Deceased*", "Cancel") + var/health = input(usr, "Specify a new physical status for this person.", "Medical HUD", R.fields["p_stat"]) in list("Active", "Physically Unfit", "*Unconscious*", "*Deceased*", "Cancel") if(R) if(!H.canUseHUD()) return else if(!istype(H.glasses, /obj/item/clothing/glasses/hud/health)) return - if(health_status && health_status != "Cancel") - R.fields["p_stat"] = health_status + if(health && health != "Cancel") + R.fields["p_stat"] = health return if(href_list["m_stat"]) - var/health_status = input(usr, "Specify a new mental status for this person.", "Medical HUD", R.fields["m_stat"]) in list("Stable", "*Watch*", "*Unstable*", "*Insane*", "Cancel") + var/health = input(usr, "Specify a new mental status for this person.", "Medical HUD", R.fields["m_stat"]) in list("Stable", "*Watch*", "*Unstable*", "*Insane*", "Cancel") if(R) if(!H.canUseHUD()) return else if(!istype(H.glasses, /obj/item/clothing/glasses/hud/health)) return - if(health_status && health_status != "Cancel") - R.fields["m_stat"] = health_status + if(health && health != "Cancel") + R.fields["m_stat"] = health return if(href_list["evaluation"]) if(!getBruteLoss() && !getFireLoss() && !getOxyLoss() && getToxLoss() < 20) @@ -485,7 +588,7 @@ var/counter = 1 while(R.fields[text("com_[]", counter)]) counter++ - R.fields[text("com_[]", counter)] = text("Made by [] on [] [], []
    []", allowed_access, worldtime2text(), time2text(world.realtime, "MMM DD"), year_integer+540, t1) + R.fields[text("com_[]", counter)] = text("Made by [] on [] [], []
    []", allowed_access, worldtime2text(), time2text(world.realtime, "MMM DD"), year_integer+540, t1,) usr << "Successfully added comment." return usr << "Unable to locate a data core entry for this person." @@ -497,7 +600,7 @@ . = 1 // Default to returning true. if(user && !target_zone) target_zone = user.zone_selected - if(dna && (PIERCEIMMUNE in dna.species.species_traits)) + if(dna && (PIERCEIMMUNE in dna.species.specflags)) . = 0 // If targeting the head, see if the head item is thin enough. // If targeting anything else, see if the wear suit is thin enough. @@ -509,7 +612,7 @@ . = 0 if(!. && error_msg && user) // Might need re-wording. - user << "There is no exposed flesh or thin material [above_neck(target_zone) ? "on [p_their()] head" : "on [p_their()] body"]." + user << "There is no exposed flesh or thin material [above_neck(target_zone) ? "on their head" : "on their body"]." /mob/living/carbon/human/proc/check_obscured_slots() var/list/obscured = list() @@ -534,7 +637,7 @@ if(wear_mask.flags_inv & HIDEEYES) obscured |= slot_glasses - if(obscured.len) + if(obscured.len > 0) return obscured else return null @@ -550,7 +653,7 @@ if(lasercolor == "b")//Lasertag turrets target the opposing team, how great is that? -Sieve if(istype(wear_suit, /obj/item/clothing/suit/redtag)) threatcount += 4 - if(is_holding_item_of_type(/obj/item/weapon/gun/energy/laser/redtag)) + if((istype(r_hand,/obj/item/weapon/gun/energy/laser/redtag)) || (istype(l_hand,/obj/item/weapon/gun/energy/laser/redtag))) threatcount += 4 if(istype(belt, /obj/item/weapon/gun/energy/laser/redtag)) threatcount += 2 @@ -558,7 +661,7 @@ if(lasercolor == "r") if(istype(wear_suit, /obj/item/clothing/suit/bluetag)) threatcount += 4 - if(is_holding_item_of_type(/obj/item/weapon/gun/energy/laser/bluetag)) + if((istype(r_hand,/obj/item/weapon/gun/energy/laser/bluetag)) || (istype(l_hand,/obj/item/weapon/gun/energy/laser/bluetag))) threatcount += 4 if(istype(belt, /obj/item/weapon/gun/energy/laser/bluetag)) threatcount += 2 @@ -573,9 +676,10 @@ //Check for weapons if(judgebot.weaponscheck) if(!idcard || !(access_weapons in idcard.access)) - for(var/obj/item/I in held_items) - if(judgebot.check_for_weapons(I)) - threatcount += 4 + if(judgebot.check_for_weapons(l_hand)) + threatcount += 4 + if(judgebot.check_for_weapons(r_hand)) + threatcount += 4 if(judgebot.check_for_weapons(belt)) threatcount += 2 @@ -593,22 +697,23 @@ threatcount += 2 //Check for dresscode violations - if(istype(head, /obj/item/clothing/head/wizard) || istype(head, /obj/item/clothing/head/helmet/space/hardsuit/wizard)) - threatcount += 2 + if(istype(head, /obj/item/clothing/head/wizard) || istype(head, /obj/item/clothing/head/helmet/space/hardsuit/wizard) || istype(head, /obj/item/clothing/head/helmet/space/hardsuit/syndi) || istype(head, /obj/item/clothing/head/helmet/space/syndicate) || istype(head, /obj/item/clothing/head/culthood)) + threatcount += 5 //Check for nonhuman scum if(dna && dna.species.id && dna.species.id != "human") - threatcount += 1 + threatcount += 0 - //mindshield implants imply trustworthyness - if(isloyal()) + //Loyalty implants imply trustworthyness + if(isloyal(src)) threatcount -= 1 - //Agent cards lower threatlevel. + //Agent cards lower threatlevel, but only just enough to avoid dresscode violations. if(istype(idcard, /obj/item/weapon/card/id/syndicate)) - threatcount -= 5 + threatcount -= 2 return threatcount + return threatcount //Used for new human mobs created by cloning/goleming/podding @@ -622,9 +727,21 @@ update_body() update_hair() +/mob/living/carbon/human/singularity_act() + var/gain = 20 + if(mind) + if((mind.assigned_role == "Station Engineer") || (mind.assigned_role == "Chief Engineer") ) + gain = 100 + if(mind.assigned_role == "Clown") + gain = rand(-300, 300) + investigate_log("([key_name(src)]) has been consumed by the singularity.","singulo") //Oh that's where the clown ended up! + gib() + return(gain) + /mob/living/carbon/human/singularity_pull(S, current_size) if(current_size >= STAGE_THREE) - for(var/obj/item/hand in held_items) + var/list/handlist = list(l_hand, r_hand) + for(var/obj/item/hand in handlist) if(prob(current_size * 5) && hand.w_class >= ((11-current_size)/2) && unEquip(hand)) step_towards(hand, src) src << "\The [S] pulls \the [hand] from your grip!" @@ -633,6 +750,71 @@ return ..() + +/mob/living/carbon/human/help_shake_act(mob/living/carbon/M) + if(!istype(M)) + return + + if(health >= 0) + if(src == M) + visible_message( \ + "[src] examines \himself.", \ + "You check yourself for injuries.") + + var/list/missing = list("head", "chest", "l_arm", "r_arm", "l_leg", "r_leg") + for(var/X in bodyparts) + var/obj/item/bodypart/LB = X + missing -= LB.body_zone + var/status = "" + var/brutedamage = LB.brute_dam + var/burndamage = LB.burn_dam + if(hallucination) + if(prob(30)) + brutedamage += rand(30,40) + if(prob(30)) + burndamage += rand(30,40) + + if(brutedamage > 0) + status = "bruised" + if(brutedamage > 20) + status = "battered" + if(brutedamage > 40) + status = "mangled" + if(brutedamage > 0 && burndamage > 0) + status += " and " + if(burndamage > 40) + status += "peeling away" + + else if(burndamage > 10) + status += "blistered" + else if(burndamage > 0) + status += "numb" + if(status == "") + status = "OK" + src << "\t [status == "OK" ? "\blue" : "\red"] Your [LB.name] is [status]." + + for(var/obj/item/I in LB.embedded_objects) + src << "\t \red There is \a [I] embedded in your [LB.name]!" + + for(var/t in missing) + src << "Your [parse_zone(t)] is missing!" + + if(bleed_rate) + src << "You are bleeding!" + if(staminaloss) + if(staminaloss > 30) + src << "You're completely exhausted." + else + src << "You feel fatigued." + else + if(wear_suit) + wear_suit.add_fingerprint(M) + else if(w_uniform) + w_uniform.add_fingerprint(M) + + ..() + + /mob/living/carbon/human/proc/do_cpr(mob/living/carbon/C) CHECK_DNA_AND_SPECIES(C) @@ -643,7 +825,7 @@ src << "Remove your mask first!" return 0 if(C.is_mouth_covered()) - src << "Remove [p_their()] mask first!" + src << "Remove their mask first!" return 0 if(C.cpr_time < world.time + 30) @@ -653,10 +835,10 @@ src << "You fail to perform CPR on [C]!" return 0 - var/they_breathe = (!(NOBREATH in C.dna.species.species_traits)) + var/they_breathe = (!(NOBREATH in C.dna.species.specflags)) var/they_lung = C.getorganslot("lungs") - if(C.health > HEALTH_THRESHOLD_CRIT) + if(C.health > config.health_threshold_crit) return src.visible_message("[src] performs CPR on [C.name]!", "You perform CPR on [C.name].") @@ -725,11 +907,10 @@ /mob/living/carbon/human/proc/electrocution_animation(anim_duration) //Handle mutant parts if possible if(dna && dna.species) - add_atom_colour("#000000", TEMPORARY_COLOUR_PRIORITY) - var/static/image/electrocution_skeleton_anim = image(icon = icon, icon_state = "electrocuted_base") - electrocution_skeleton_anim.appearance_flags = RESET_COLOR - add_overlay(electrocution_skeleton_anim) - addtimer(src, "end_electrocution_animation", anim_duration, TIMER_NORMAL, electrocution_skeleton_anim) + add_overlay("electrocuted_base") + spawn(anim_duration) + if(src) + overlays -= "electrocuted_base" else //or just do a generic animation var/list/viewing = list() @@ -738,10 +919,6 @@ viewing += M.client flick_overlay(image(icon,src,"electrocuted_generic",ABOVE_MOB_LAYER), viewing, anim_duration) -/mob/living/carbon/human/proc/end_electrocution_animation(image/I) - remove_atom_colour(TEMPORARY_COLOUR_PRIORITY, "#000000") - overlays -= I - /mob/living/carbon/human/canUseTopic(atom/movable/M, be_close = 0) if(incapacitated() || lying ) return @@ -827,15 +1004,16 @@ hud_used.healthdoll.icon_state = "healthdoll_DEAD" /mob/living/carbon/human/fully_heal(admin_revive = 0) + CHECK_DNA_AND_SPECIES(src) if(admin_revive) regenerate_limbs() - if(!(NOBREATH in dna.species.species_traits) && !getorganslot("lungs")) + if(!(NOBREATH in dna.species.specflags) && !getorganslot("lungs")) var/obj/item/organ/lungs/L = new() L.Insert(src) - if(!(NOBLOOD in dna.species.species_traits) && !getorganslot("heart")) + if(!(NOBLOOD in dna.species.specflags) && !getorganslot("heart")) var/obj/item/organ/heart/H = new() H.Insert(src) @@ -885,7 +1063,12 @@ O = new /datum/objective/sintouched/pride ticker.mode.sintouched += src.mind src.mind.objectives += O - src.mind.announce_objectives() + var/obj_count = 1 + src << "Your current objectives:" + for(O in src.mind.objectives) + var/datum/objective/objective = O + src << "Objective #[obj_count]: [objective.explanation_text]" + obj_count++ /mob/living/carbon/human/check_weakness(obj/item/weapon, mob/living/attacker) . = ..() @@ -895,36 +1078,6 @@ /mob/living/carbon/human/is_literate() return 1 -/mob/living/carbon/human/can_hold_items() - return TRUE - /mob/living/carbon/human/update_gravity(has_gravity,override = 0) override = dna.species.override_float ..() - -/mob/living/carbon/human/vomit(lost_nutrition = 10, blood = 0, stun = 1, distance = 0, message = 1, toxic = 0) - if(blood && (NOBLOOD in dna.species.species_traits)) - if(message) - visible_message("[src] dry heaves!", \ - "You try to throw up, but there's nothing in your stomach!") - if(stun) - Weaken(10) - return 1 - ..() - -/mob/living/carbon/human/Bump(atom/A) - ..() - var/crashdir = get_dir(src, A) - var/obj/item/device/flightpack/FP = get_flightpack() - if(FP) - FP.flight_impact(A, crashdir) - -/mob/living/carbon/human/vv_get_dropdown() - . = ..() - . += "---" - .["Make monkey"] = "?_src_=vars;makemonkey=\ref[src]" - .["Set Species"] = "?_src_=vars;setspecies=\ref[src]" - .["Make cyborg"] = "?_src_=vars;makerobot=\ref[src]" - .["Make alien"] = "?_src_=vars;makealien=\ref[src]" - .["Make slime"] = "?_src_=vars;makeslime=\ref[src]" - .["Toggle Purrbation"] = "?_src_=vars;purrbation=\ref[src]" diff --git a/code/modules/mob/living/carbon/human/human_attackalien.dm b/code/modules/mob/living/carbon/human/human_attackalien.dm new file mode 100644 index 0000000000..37ac704425 --- /dev/null +++ b/code/modules/mob/living/carbon/human/human_attackalien.dm @@ -0,0 +1,49 @@ +/mob/living/carbon/human/attack_alien(mob/living/carbon/alien/humanoid/M) + if(check_shields(0, M.name)) + visible_message("[M] attempted to touch [src]!") + return 0 + + if(..()) + if(M.a_intent == "harm") + if (w_uniform) + w_uniform.add_fingerprint(M) + var/damage = prob(90) ? 20 : 0 + if(!damage) + playsound(loc, 'sound/weapons/slashmiss.ogg', 50, 1, -1) + visible_message("[M] has lunged at [src]!", \ + "[M] has lunged at [src]!") + return 0 + var/obj/item/bodypart/affecting = get_bodypart(ran_zone(M.zone_selected)) + var/armor_block = run_armor_check(affecting, "melee","","",10) + + playsound(loc, 'sound/weapons/slice.ogg', 25, 1, -1) + visible_message("[M] has slashed at [src]!", \ + "[M] has slashed at [src]!") + + apply_damage(damage, BRUTE, affecting, armor_block) + if (prob(30)) + visible_message("[M] has wounded [src]!", \ + "[M] has wounded [src]!") + apply_effect(4, WEAKEN, armor_block) + add_logs(M, src, "attacked") + updatehealth() + + if(M.a_intent == "disarm") + var/randn = rand(1, 100) + if (randn <= 80) + playsound(loc, 'sound/weapons/pierce.ogg', 25, 1, -1) + Weaken(5) + add_logs(M, src, "tackled") + visible_message("[M] has tackled down [src]!", \ + "[M] has tackled down [src]!") + else + if (randn <= 99) + playsound(loc, 'sound/weapons/slash.ogg', 25, 1, -1) + drop_item() + visible_message("[M] disarmed [src]!", \ + "[M] disarmed [src]!") + else + playsound(loc, 'sound/weapons/slashmiss.ogg', 50, 1, -1) + visible_message("[M] has tried to disarm [src]!", \ + "[M] has tried to disarm [src]!") + return diff --git a/code/modules/mob/living/carbon/human/human_attackhand.dm b/code/modules/mob/living/carbon/human/human_attackhand.dm new file mode 100644 index 0000000000..0b15f53c84 --- /dev/null +++ b/code/modules/mob/living/carbon/human/human_attackhand.dm @@ -0,0 +1,14 @@ +/mob/living/carbon/human/attack_hulk(mob/living/carbon/human/user) + if(user.a_intent == "harm") + ..(user, 1) + playsound(loc, user.dna.species.attack_sound, 25, 1, -1) + var/hulk_verb = pick("smash","pummel") + visible_message("[user] has [hulk_verb]ed [src]!", \ + "[user] has [hulk_verb]ed [src]!") + adjustBruteLoss(15) + return 1 + +/mob/living/carbon/human/attack_hand(mob/living/carbon/human/M) + if(..()) //to allow surgery to return properly. + return + dna.species.spec_attack_hand(M, src) diff --git a/code/modules/mob/living/carbon/human/human_attackpaw.dm b/code/modules/mob/living/carbon/human/human_attackpaw.dm new file mode 100644 index 0000000000..389401327b --- /dev/null +++ b/code/modules/mob/living/carbon/human/human_attackpaw.dm @@ -0,0 +1,15 @@ +/mob/living/carbon/human/attack_paw(mob/living/carbon/monkey/M) + var/dam_zone = pick("chest", "l_hand", "r_hand", "l_leg", "r_leg") + var/obj/item/bodypart/affecting = get_bodypart(ran_zone(dam_zone)) + + if(M.a_intent == "help") + ..() //shaking + return 0 + + if(can_inject(M, 1, affecting))//Thick suits can stop monkey bites. + if(..()) //successful monkey bite, this handles disease contraction. + var/damage = rand(1, 3) + if(stat != DEAD) + apply_damage(damage, BRUTE, affecting, run_armor_check(affecting, "melee")) + updatehealth() + return 1 \ No newline at end of file diff --git a/code/modules/mob/living/carbon/human/human_damage.dm b/code/modules/mob/living/carbon/human/human_damage.dm new file mode 100644 index 0000000000..583b74055d --- /dev/null +++ b/code/modules/mob/living/carbon/human/human_damage.dm @@ -0,0 +1,161 @@ +//Updates the mob's health from bodyparts and mob damage variables +/mob/living/carbon/human/updatehealth() + if(status_flags & GODMODE) + return + var/total_burn = 0 + var/total_brute = 0 + for(var/X in bodyparts) //hardcoded to streamline things a bit + var/obj/item/bodypart/BP = X + total_brute += BP.brute_dam + total_burn += BP.burn_dam + health = maxHealth - getOxyLoss() - getToxLoss() - getCloneLoss() - total_burn - total_brute + update_stat() + if(((maxHealth - total_burn) < config.health_threshold_dead) && stat == DEAD ) + ChangeToHusk() + if(on_fire) + shred_clothing() + med_hud_set_health() + med_hud_set_status() + + +//These procs fetch a cumulative total damage from all bodyparts +/mob/living/carbon/human/getBruteLoss() + var/amount = 0 + for(var/X in bodyparts) + var/obj/item/bodypart/BP = X + amount += BP.brute_dam + return amount + +/mob/living/carbon/human/getFireLoss() + var/amount = 0 + for(var/X in bodyparts) + var/obj/item/bodypart/BP = X + amount += BP.burn_dam + return amount + + +/mob/living/carbon/human/adjustBruteLoss(amount) + if(status_flags & GODMODE) + return 0 + if(amount > 0) + take_overall_damage(amount, 0) + else + heal_overall_damage(-amount, 0) + +/mob/living/carbon/human/adjustFireLoss(amount) + if(status_flags & GODMODE) + return 0 + if(amount > 0) + take_overall_damage(0, amount) + else + heal_overall_damage(0, -amount) + +/mob/living/carbon/human/proc/hat_fall_prob() + var/multiplier = 1 + var/obj/item/clothing/head/H = head + var/loose = 40 + if(stat || (status_flags & FAKEDEATH)) + multiplier = 2 + if(H.flags_cover & (HEADCOVERSEYES | HEADCOVERSMOUTH) || H.flags_inv & (HIDEEYES | HIDEFACE)) + loose = 0 + return loose * multiplier + +//////////////////////////////////////////// + +//Returns a list of damaged bodyparts +/mob/living/carbon/human/proc/get_damaged_bodyparts(brute, burn) + var/list/obj/item/bodypart/parts = list() + for(var/X in bodyparts) + var/obj/item/bodypart/BP = X + if((brute && BP.brute_dam) || (burn && BP.burn_dam)) + parts += BP + return parts + +//Returns a list of damageable bodyparts +/mob/living/carbon/human/proc/get_damageable_bodyparts() + var/list/obj/item/bodypart/parts = list() + for(var/X in bodyparts) + var/obj/item/bodypart/BP = X + if(BP.brute_dam + BP.burn_dam < BP.max_damage) + parts += BP + return parts + +//Heals ONE external organ, organ gets randomly selected from damaged ones. +//It automatically updates damage overlays if necesary +//It automatically updates health status +/mob/living/carbon/human/heal_organ_damage(brute, burn) + var/list/obj/item/bodypart/parts = get_damaged_bodyparts(brute,burn) + if(!parts.len) + return + var/obj/item/bodypart/picked = pick(parts) + if(picked.heal_damage(brute,burn,0)) + update_damage_overlays(0) + updatehealth() + +//Damages ONE external organ, organ gets randomly selected from damagable ones. +//It automatically updates damage overlays if necesary +//It automatically updates health status +/mob/living/carbon/human/take_organ_damage(brute, burn) + var/list/obj/item/bodypart/parts = get_damageable_bodyparts() + if(!parts.len) + return + var/obj/item/bodypart/picked = pick(parts) + if(picked.take_damage(brute,burn)) + update_damage_overlays(0) + updatehealth() + + +//Heal MANY bodyparts, in random order +/mob/living/carbon/human/heal_overall_damage(brute, burn, updating_health=1) + var/list/obj/item/bodypart/parts = get_damaged_bodyparts(brute,burn) + + var/update = 0 + while(parts.len && (brute>0 || burn>0) ) + var/obj/item/bodypart/picked = pick(parts) + + var/brute_was = picked.brute_dam + var/burn_was = picked.burn_dam + + update |= picked.heal_damage(brute,burn,0) + + brute -= (brute_was-picked.brute_dam) + burn -= (burn_was-picked.burn_dam) + + parts -= picked + if(updating_health) + updatehealth() + if(update) + update_damage_overlays(0) + +// damage MANY bodyparts, in random order +/mob/living/carbon/human/take_overall_damage(brute, burn) + if(status_flags & GODMODE) + return //godmode + + var/list/obj/item/bodypart/parts = get_damageable_bodyparts() + var/update = 0 + while(parts.len && (brute>0 || burn>0) ) + var/obj/item/bodypart/picked = pick(parts) + var/brute_per_part = brute/parts.len + var/burn_per_part = burn/parts.len + + var/brute_was = picked.brute_dam + var/burn_was = picked.burn_dam + + + update |= picked.take_damage(brute_per_part,burn_per_part) + + brute -= (picked.brute_dam - brute_was) + burn -= (picked.burn_dam - burn_was) + + parts -= picked + updatehealth() + if(update) + update_damage_overlays(0) + +//////////////////////////////////////////// + + +/mob/living/carbon/human/apply_damage(damage = 0,damagetype = BRUTE, def_zone = null, blocked = 0) + // depending on the species, it will run the corresponding apply_damage code there + return dna.species.apply_damage(damage, damagetype, def_zone, blocked, src) diff --git a/code/modules/mob/living/carbon/human/human_defense.dm b/code/modules/mob/living/carbon/human/human_defense.dm index 9a9fd1ca9c..3fd7d721f7 100644 --- a/code/modules/mob/living/carbon/human/human_defense.dm +++ b/code/modules/mob/living/carbon/human/human_defense.dm @@ -17,8 +17,8 @@ return (armorval/max(organnum, 1)) -/mob/living/carbon/human/proc/checkarmor(obj/item/bodypart/def_zone, d_type) - if(!d_type) +/mob/living/carbon/human/proc/checkarmor(obj/item/bodypart/def_zone, type) + if(!type) return 0 var/protection = 0 var/list/body_parts = list(head, wear_mask, wear_suit, w_uniform, back, gloves, shoes, belt, s_store, glasses, ears, wear_id) //Everything but pockets. Pockets are l_store and r_store. (if pockets were allowed, putting something armored, gloves or hats for example, would double up on the armor) @@ -28,44 +28,13 @@ if(bp && istype(bp ,/obj/item/clothing)) var/obj/item/clothing/C = bp if(C.body_parts_covered & def_zone.body_part) - protection += C.armor[d_type] + protection += C.armor[type] return protection -///checkeyeprot() -///Returns a number between -1 to 2 -/mob/living/carbon/human/get_eye_protection() - var/number = ..() - if(istype(src.head, /obj/item/clothing/head)) //are they wearing something on their head - var/obj/item/clothing/head/HFP = src.head //if yes gets the flash protection value from that item - number += HFP.flash_protect - if(istype(src.glasses, /obj/item/clothing/glasses)) //glasses - var/obj/item/clothing/glasses/GFP = src.glasses - number += GFP.flash_protect - if(istype(src.wear_mask, /obj/item/clothing/mask)) //mask - var/obj/item/clothing/mask/MFP = src.wear_mask - number += MFP.flash_protect - return number - -/mob/living/carbon/human/get_ear_protection() - if((ears && (ears.flags & EARBANGPROTECT)) || (head && (head.flags & HEADBANGPROTECT))) - return 1 - -/mob/living/carbon/human/on_hit(obj/item/projectile/P) - dna.species.on_hit(P, src) - +/mob/living/carbon/human/on_hit(proj_type) + dna.species.on_hit(proj_type, src) /mob/living/carbon/human/bullet_act(obj/item/projectile/P, def_zone) - var/spec_return = dna.species.bullet_act(P, src) - if(spec_return) - return spec_return - - if(martial_art && martial_art.deflection_chance) //Some martial arts users can deflect projectiles! - if(prob(martial_art.deflection_chance)) - if(!lying && dna && !dna.check_mutation(HULK)) //But only if they're not lying down, and hulks can't do it - visible_message("[src] deflects the projectile; [p_they()] can't be hit with ranged weapons!", "You deflect the projectile!") - playsound(src, pick("sound/weapons/bulletflyby.ogg","sound/weapons/bulletflyby2.ogg","sound/weapons/bulletflyby3.ogg"), 75, 1) - return 0 - if(!(P.original == src && P.firer == src)) //can't block or reflect when shooting yourself if(istype(P, /obj/item/projectile/energy) || istype(P, /obj/item/projectile/beam)) if(check_reflect(def_zone)) // Checks if you've passed a reflection% check @@ -91,26 +60,31 @@ if(check_shields(P.damage, "the [P.name]", P, PROJECTILE_ATTACK, P.armour_penetration)) P.on_hit(src, 100, def_zone) return 2 - return (..(P , def_zone)) /mob/living/carbon/human/proc/check_reflect(def_zone) //Reflection checks for anything in your l_hand, r_hand, or wear_suit based on the reflection chance of the object if(wear_suit) if(wear_suit.IsReflect(def_zone) == 1) return 1 - for(var/obj/item/I in held_items) - if(I.IsReflect(def_zone) == 1) + if(l_hand) + if(l_hand.IsReflect(def_zone) == 1) + return 1 + if(r_hand) + if(r_hand.IsReflect(def_zone) == 1) return 1 return 0 /mob/living/carbon/human/proc/check_shields(damage = 0, attack_text = "the attack", atom/movable/AM, attack_type = MELEE_ATTACK, armour_penetration = 0) var/block_chance_modifier = round(damage / -3) - for(var/obj/item/I in held_items) - if(!istype(I, /obj/item/clothing)) - var/final_block_chance = I.block_chance - (Clamp((armour_penetration-I.armour_penetration)/2,0,100)) + block_chance_modifier //So armour piercing blades can still be parried by other blades, for example - if(I.hit_reaction(src, attack_text, final_block_chance, damage, attack_type)) - return 1 + if(l_hand && !istype(l_hand, /obj/item/clothing)) + var/final_block_chance = l_hand.block_chance - (Clamp((armour_penetration-l_hand.armour_penetration)/2,0,100)) + block_chance_modifier //So armour piercing blades can still be parried by other blades, for example + if(l_hand.hit_reaction(src, attack_text, final_block_chance, damage, attack_type)) + return 1 + if(r_hand && !istype(r_hand, /obj/item/clothing)) + var/final_block_chance = r_hand.block_chance - (Clamp((armour_penetration-r_hand.armour_penetration)/2,0,100)) + block_chance_modifier //Need to reset the var so it doesn't carry over modifications between attempts + if(r_hand.hit_reaction(src, attack_text, final_block_chance, damage, attack_type)) + return 1 if(wear_suit) var/final_block_chance = wear_suit.block_chance - (Clamp((armour_penetration-wear_suit.armour_penetration)/2,0,100)) + block_chance_modifier if(wear_suit.hit_reaction(src, attack_text, final_block_chance, damage, attack_type)) @@ -121,17 +95,252 @@ return 1 return 0 -/mob/living/carbon/human/proc/check_block() - if(martial_art && martial_art.block_chance \ - && prob(martial_art.block_chance) && in_throw_mode \ - && !stat && !weakened && !stunned) - return TRUE - return FALSE + +/mob/living/carbon/human/attacked_by(obj/item/I, mob/living/user) + if(!I || !user) + return 0 + + var/obj/item/bodypart/affecting = get_bodypart(ran_zone(user.zone_selected)) + var/target_area = parse_zone(check_zone(user.zone_selected)) + feedback_add_details("item_used_for_combat","[I.type]|[I.force]") + feedback_add_details("zone_targeted","[target_area]") + + // the attacked_by code varies among species + return dna.species.spec_attacked_by(I, user, affecting, a_intent, target_area, src) + +/mob/living/carbon/human/emp_act(severity) + var/informed = 0 + for(var/obj/item/bodypart/L in src.bodyparts) + if(L.status == ORGAN_ROBOTIC) + if(!informed) + src << "You feel a sharp pain as your robotic limbs overload." + informed = 1 + switch(severity) + if(1) + L.take_damage(0,10) + src.Stun(10) + if(2) + L.take_damage(0,5) + src.Stun(5) + ..() + +/mob/living/carbon/human/acid_act(acidpwr, toxpwr, acid_volume) + var/list/damaged = list() + var/list/inventory_items_to_kill = list() + var/acidity = min(acidpwr*acid_volume/200, toxpwr) + var/acid_volume_left = acid_volume + var/acid_decay = 100/acidpwr // how much volume we lose per item we try to melt. 5 for fluoro, 10 for sulphuric + + //HEAD// + var/obj/item/clothing/head_clothes = null + if(glasses) + head_clothes = glasses + if(wear_mask) + head_clothes = wear_mask + if(head) + head_clothes = head + if(head_clothes) + if(!head_clothes.unacidable) + head_clothes.acid_act(acidpwr, acid_volume_left) + acid_volume_left = max(acid_volume_left - acid_decay, 0) //We remove some of the acid volume. + update_inv_glasses() + update_inv_wear_mask() + update_inv_head() + else + src << "Your [head_clothes.name] protects your head and face from the acid!" + else + . = get_bodypart("head") + if(.) + damaged += . + if(ears) + inventory_items_to_kill += ears + + //CHEST// + var/obj/item/clothing/chest_clothes = null + if(w_uniform) + chest_clothes = w_uniform + if(wear_suit) + chest_clothes = wear_suit + if(chest_clothes) + if(!chest_clothes.unacidable) + chest_clothes.acid_act(acidpwr, acid_volume_left) + acid_volume_left = max(acid_volume_left - acid_decay, 0) + update_inv_w_uniform() + update_inv_wear_suit() + else + src << "Your [chest_clothes.name] protects your body from the acid!" + else + . = get_bodypart("chest") + if(.) + damaged += . + if(wear_id) + inventory_items_to_kill += wear_id + if(r_store) + inventory_items_to_kill += r_store + if(l_store) + inventory_items_to_kill += l_store + if(s_store) + inventory_items_to_kill += s_store + + + //ARMS & HANDS// + var/obj/item/clothing/arm_clothes = null + if(gloves) + arm_clothes = gloves + if(w_uniform && (w_uniform.body_parts_covered & HANDS) || w_uniform && (w_uniform.body_parts_covered & ARMS)) + arm_clothes = w_uniform + if(wear_suit && (wear_suit.body_parts_covered & HANDS) || wear_suit && (wear_suit.body_parts_covered & ARMS)) + arm_clothes = wear_suit + if(arm_clothes) + if(!arm_clothes.unacidable) + arm_clothes.acid_act(acidpwr, acid_volume_left) + acid_volume_left = max(acid_volume_left - acid_decay, 0) + update_inv_gloves() + update_inv_w_uniform() + update_inv_wear_suit() + else + src << "Your [arm_clothes.name] protects your arms and hands from the acid!" + else + . = get_bodypart("r_arm") + if(.) + damaged += . + . = get_bodypart("l_arm") + if(.) + damaged += . + + + //LEGS & FEET// + var/obj/item/clothing/leg_clothes = null + if(shoes) + leg_clothes = shoes + if(w_uniform && (w_uniform.body_parts_covered & FEET) || w_uniform && (w_uniform.body_parts_covered & LEGS)) + leg_clothes = w_uniform + if(wear_suit && (wear_suit.body_parts_covered & FEET) || wear_suit && (wear_suit.body_parts_covered & LEGS)) + leg_clothes = wear_suit + if(leg_clothes) + if(!leg_clothes.unacidable) + leg_clothes.acid_act(acidpwr, acid_volume_left) + acid_volume_left = max(acid_volume_left - acid_decay, 0) + update_inv_shoes() + update_inv_w_uniform() + update_inv_wear_suit() + else + src << "Your [leg_clothes.name] protects your legs and feet from the acid!" + else + . = get_bodypart("r_leg") + if(.) + damaged += . + . = get_bodypart("l_leg") + if(.) + damaged += . + + + //DAMAGE// + for(var/obj/item/bodypart/affecting in damaged) + affecting.take_damage(acidity, 2*acidity) + + if(affecting.name == "head") + if(prob(min(acidpwr*acid_volume/10, 90))) //Applies disfigurement + affecting.take_damage(acidity, 2*acidity) + emote("scream") + facial_hair_style = "Shaved" + hair_style = "Bald" + update_hair() + status_flags |= DISFIGURED + + update_damage_overlays() + + //MELTING INVENTORY ITEMS// + //these items are all outside of armour visually, so melt regardless. + if(back) + inventory_items_to_kill += back + if(belt) + inventory_items_to_kill += belt + if(r_hand) + inventory_items_to_kill += r_hand + if(l_hand) + inventory_items_to_kill += l_hand + + for(var/obj/item/I in inventory_items_to_kill) + I.acid_act(acidpwr, acid_volume_left) + acid_volume_left = max(acid_volume_left - acid_decay, 0) + + +/mob/living/carbon/human/attack_animal(mob/living/simple_animal/M) + if(..()) + var/damage = rand(M.melee_damage_lower, M.melee_damage_upper) + if(check_shields(damage, "the [M.name]", null, MELEE_ATTACK, M.armour_penetration)) + return 0 + var/dam_zone = pick("chest", "l_hand", "r_hand", "l_leg", "r_leg") + var/obj/item/bodypart/affecting = get_bodypart(ran_zone(dam_zone)) + var/armor = run_armor_check(affecting, "melee") + apply_damage(damage, M.melee_damage_type, affecting, armor, "", "", M.armour_penetration) + updatehealth() + + +/mob/living/carbon/human/attack_larva(mob/living/carbon/alien/larva/L) + + if(..()) //successful larva bite. + var/damage = rand(1, 3) + if(check_shields(damage, "the [L.name]")) + return 0 + if(stat != DEAD) + L.amount_grown = min(L.amount_grown + damage, L.max_grown) + var/obj/item/bodypart/affecting = get_bodypart(ran_zone(L.zone_selected)) + var/armor_block = run_armor_check(affecting, "melee") + apply_damage(damage, BRUTE, affecting, armor_block) + updatehealth() + + +/mob/living/carbon/human/attack_slime(mob/living/simple_animal/slime/M) + if(..()) //successful slime attack + var/damage = rand(5, 25) + if(M.is_adult) + damage = rand(10, 35) + + if(check_shields(damage, "the [M.name]")) + return 0 + + var/dam_zone = pick("head", "chest", "l_arm", "r_arm", "l_leg", "r_leg", "groin") + + var/obj/item/bodypart/affecting = get_bodypart(ran_zone(dam_zone)) + var/armor_block = run_armor_check(affecting, "melee") + apply_damage(damage, BRUTE, affecting, armor_block) + +/mob/living/carbon/human/mech_melee_attack(obj/mecha/M) + + if(M.occupant.a_intent == "harm") + M.do_attack_animation(src) + if(M.damtype == "brute") + step_away(src,M,15) + var/obj/item/bodypart/temp = get_bodypart(pick("chest", "chest", "chest", "head")) + if(temp) + var/update = 0 + switch(M.damtype) + if("brute") + if(M.force > 20) + Paralyse(1) + update |= temp.take_damage(rand(M.force/2, M.force), 0) + playsound(src, 'sound/weapons/punch4.ogg', 50, 1) + if("fire") + update |= temp.take_damage(0, rand(M.force/2, M.force)) + playsound(src, 'sound/items/Welder.ogg', 50, 1) + if("tox") + M.mech_toxin_damage(src) + else + return + if(update) + update_damage_overlays(0) + updatehealth() + + visible_message("[M.name] has hit [src]!", \ + "[M.name] has hit [src]!") + add_logs(M.occupant, src, "attacked", M, "(INTENT: [uppertext(M.occupant.a_intent)]) (DAMTYPE: [uppertext(M.damtype)])") + + else + ..() /mob/living/carbon/human/hitby(atom/movable/AM, skipcatch = 0, hitpush = 1, blocked = 0) - var/spec_return = dna.species.spec_hitby(AM, src) - if(spec_return) - return spec_return var/obj/item/I var/throwpower = 30 if(istype(AM, /obj/item)) @@ -146,13 +355,13 @@ else if(I) if(I.throw_speed >= EMBED_THROWSPEED_THRESHOLD) if(can_embed(I)) - if(prob(I.embed_chance) && !(dna && (PIERCEIMMUNE in dna.species.species_traits))) + if(prob(I.embed_chance) && !(dna && (PIERCEIMMUNE in dna.species.specflags))) throw_alert("embeddedobject", /obj/screen/alert/embeddedobject) var/obj/item/bodypart/L = pick(bodyparts) L.embedded_objects |= I I.add_mob_blood(src)//it embedded itself in you, of course it's bloody! I.loc = src - L.receive_damage(I.w_class*I.embedded_impact_pain_multiplier) + L.take_damage(I.w_class*I.embedded_impact_pain_multiplier) visible_message("\the [I.name] embeds itself in [src]'s [L.name]!","\the [I.name] embeds itself in your [L.name]!") hitpush = 0 skipcatch = 1 //can't catch the now embedded item @@ -160,8 +369,8 @@ return ..() /mob/living/carbon/human/grabbedby(mob/living/carbon/user, supress_message = 0) - if(user == src && pulling && !pulling.anchored && grab_state >= GRAB_AGGRESSIVE && (disabilities & FAT) && ismonkey(pulling)) - devour_mob(pulling) + if(user == src && pulling && !pulling.anchored && grab_state >= GRAB_AGGRESSIVE && iscarbon(pulling)) + vore_attack(user, pulling) else ..() @@ -170,574 +379,6 @@ w_uniform.add_fingerprint(user) ..() - -/mob/living/carbon/human/attacked_by(obj/item/I, mob/living/user) - if(!I || !user) - return 0 - - var/obj/item/bodypart/affecting = get_bodypart(ran_zone(user.zone_selected)) //what we're actually ending up trying to hit. - var/target_area = parse_zone(check_zone(user.zone_selected)) //our intended target - feedback_add_details("item_used_for_combat","[I.type]|[I.force]") - feedback_add_details("zone_targeted","[target_area]") - - // the attacked_by code varies among species - return dna.species.spec_attacked_by(I, user, affecting, a_intent, src) - - -/mob/living/carbon/human/attack_hulk(mob/living/carbon/human/user, does_attack_animation = 0) - if(user.a_intent == INTENT_HARM) - var/hulk_verb = pick("smash","pummel") - if(check_shields(15, "the [hulk_verb]ing")) - return - ..(user, 1) - playsound(loc, user.dna.species.attack_sound, 25, 1, -1) - var/message = "[user] has [hulk_verb]ed [src]!" - visible_message("[message]", \ - "[message]") - adjustBruteLoss(15) - damage_clothes(15, BRUTE, "melee") - return 1 - -/mob/living/carbon/human/attack_hand(mob/living/carbon/human/M) - if(..()) //to allow surgery to return properly. - return - dna.species.spec_attack_hand(M, src) - - -/mob/living/carbon/human/attack_paw(mob/living/carbon/monkey/M) - var/dam_zone = pick("chest", "l_hand", "r_hand", "l_leg", "r_leg") - var/obj/item/bodypart/affecting = get_bodypart(ran_zone(dam_zone)) - if(!affecting) - affecting = get_bodypart("chest") - if(M.a_intent == INTENT_HELP) - ..() //shaking - return 0 - - if(M.limb_destroyer) - dismembering_strike(M, affecting.body_zone) - - if(can_inject(M, 1, affecting))//Thick suits can stop monkey bites. - if(..()) //successful monkey bite, this handles disease contraction. - var/damage = rand(1, 3) - if(check_shields(damage)) - return 0 - if(stat != DEAD) - apply_damage(damage, BRUTE, affecting, run_armor_check(affecting, "melee")) - damage_clothes(damage, BRUTE, "melee", affecting.body_zone) - return 1 - -/mob/living/carbon/human/attack_alien(mob/living/carbon/alien/humanoid/M) - if(check_shields(0, M.name)) - visible_message("[M] attempted to touch [src]!") - return 0 - - if(..()) - if(M.a_intent == INTENT_HARM) - if (w_uniform) - w_uniform.add_fingerprint(M) - var/damage = prob(90) ? 20 : 0 - if(!damage) - playsound(loc, 'sound/weapons/slashmiss.ogg', 50, 1, -1) - visible_message("[M] has lunged at [src]!", \ - "[M] has lunged at [src]!") - return 0 - var/obj/item/bodypart/affecting = get_bodypart(ran_zone(M.zone_selected)) - if(!affecting) - affecting = get_bodypart("chest") - var/armor_block = run_armor_check(affecting, "melee","","",10) - - playsound(loc, 'sound/weapons/slice.ogg', 25, 1, -1) - visible_message("[M] has slashed at [src]!", \ - "[M] has slashed at [src]!") - add_logs(M, src, "attacked") - if(!dismembering_strike(M, M.zone_selected)) //Dismemberment successful - return 1 - apply_damage(damage, BRUTE, affecting, armor_block) - damage_clothes(damage, BRUTE, "melee", affecting.body_zone) - - if(M.a_intent == INTENT_DISARM) //Always drop item in hand, if no item, get stunned instead. - if(get_active_held_item() && drop_item()) - playsound(loc, 'sound/weapons/slash.ogg', 25, 1, -1) - visible_message("[M] disarmed [src]!", \ - "[M] disarmed [src]!") - else - playsound(loc, 'sound/weapons/pierce.ogg', 25, 1, -1) - Weaken(5) - add_logs(M, src, "tackled") - visible_message("[M] has tackled down [src]!", \ - "[M] has tackled down [src]!") - - -/mob/living/carbon/human/attack_larva(mob/living/carbon/alien/larva/L) - - if(..()) //successful larva bite. - var/damage = rand(1, 3) - if(check_shields(damage, "the [L.name]")) - return 0 - if(stat != DEAD) - L.amount_grown = min(L.amount_grown + damage, L.max_grown) - var/obj/item/bodypart/affecting = get_bodypart(ran_zone(L.zone_selected)) - if(!affecting) - affecting = get_bodypart("chest") - var/armor_block = run_armor_check(affecting, "melee") - apply_damage(damage, BRUTE, affecting, armor_block) - damage_clothes(damage, BRUTE, "melee", affecting.body_zone) - - -/mob/living/carbon/human/attack_animal(mob/living/simple_animal/M) - if(..()) - var/damage = rand(M.melee_damage_lower, M.melee_damage_upper) - if(check_shields(damage, "the [M.name]", null, MELEE_ATTACK, M.armour_penetration)) - return 0 - var/dam_zone = dismembering_strike(M, pick("chest", "l_hand", "r_hand", "l_leg", "r_leg")) - if(!dam_zone) //Dismemberment successful - return 1 - var/obj/item/bodypart/affecting = get_bodypart(ran_zone(dam_zone)) - if(!affecting) - affecting = get_bodypart("chest") - var/armor = run_armor_check(affecting, "melee", armour_penetration = M.armour_penetration) - apply_damage(damage, M.melee_damage_type, affecting, armor) - damage_clothes(damage, M.melee_damage_type, "melee", affecting.body_zone) - - -/mob/living/carbon/human/attack_slime(mob/living/simple_animal/slime/M) - if(..()) //successful slime attack - var/damage = rand(5, 25) - if(M.is_adult) - damage = rand(10, 35) - - if(check_shields(damage, "the [M.name]")) - return 0 - - var/dam_zone = dismembering_strike(M, pick("head", "chest", "l_arm", "r_arm", "l_leg", "r_leg")) - if(!dam_zone) //Dismemberment successful - return 1 - - var/obj/item/bodypart/affecting = get_bodypart(ran_zone(dam_zone)) - if(!affecting) - affecting = get_bodypart("chest") - var/armor_block = run_armor_check(affecting, "melee") - apply_damage(damage, BRUTE, affecting, armor_block) - damage_clothes(damage, BRUTE, "melee", affecting.body_zone) - -/mob/living/carbon/human/mech_melee_attack(obj/mecha/M) - - if(M.occupant.a_intent == INTENT_HARM) - M.do_attack_animation(src) - if(M.damtype == "brute") - step_away(src,M,15) - var/obj/item/bodypart/temp = get_bodypart(pick("chest", "chest", "chest", "head")) - if(temp) - var/update = 0 - var/dmg = rand(M.force/2, M.force) - switch(M.damtype) - if("brute") - if(M.force > 20) - Paralyse(1) - update |= temp.receive_damage(dmg, 0) - playsound(src, 'sound/weapons/punch4.ogg', 50, 1) - damage_clothes(dmg, BRUTE, "melee", temp.body_zone) - if("fire") - update |= temp.receive_damage(0, dmg) - playsound(src, 'sound/items/Welder.ogg', 50, 1) - damage_clothes(dmg, BURN, "melee", temp.body_zone) - if("tox") - M.mech_toxin_damage(src) - else - return - if(update) - update_damage_overlays() - updatehealth() - - visible_message("[M.name] has hit [src]!", \ - "[M.name] has hit [src]!", null, COMBAT_MESSAGE_RANGE) - add_logs(M.occupant, src, "attacked", M, "(INTENT: [uppertext(M.occupant.a_intent)]) (DAMTYPE: [uppertext(M.damtype)])") - - else - ..() - - -/mob/living/carbon/human/ex_act(severity, target, origin) - - if(origin && istype(origin, /datum/spacevine_mutation) && isvineimmune(src)) - return - ..() - var/b_loss = 0 - var/f_loss = 0 - var/bomb_armor = getarmor(null, "bomb") - - switch (severity) - if (1) - if(prob(bomb_armor)) - b_loss = 500 - var/atom/throw_target = get_edge_target_turf(src, get_dir(src, get_step_away(src, src))) - throw_at(throw_target, 200, 4) - damage_clothes(400 - bomb_armor, BRUTE, "bomb") - else - gib() - return - - if (2) - b_loss = 60 - f_loss = 60 - if(bomb_armor) - b_loss = 30*(2 - round(bomb_armor*0.01, 0.05)) - f_loss = b_loss - damage_clothes(200 - bomb_armor, BRUTE, "bomb") - if (!istype(ears, /obj/item/clothing/ears/earmuffs)) - adjustEarDamage(30, 120) - if (prob(70)) - Paralyse(10) - - if(3) - b_loss = 30 - if(bomb_armor) - b_loss = 15*(2 - round(bomb_armor*0.01, 0.05)) - damage_clothes(max(50 - bomb_armor, 0), BRUTE, "bomb") - if (!istype(ears, /obj/item/clothing/ears/earmuffs)) - adjustEarDamage(15,60) - if (prob(50)) - Paralyse(8) - - take_overall_damage(b_loss,f_loss) - - //attempt to dismember bodyparts - if(severity <= 2 || !bomb_armor) - var/max_limb_loss = round(4/severity) //so you don't lose four limbs at severity 3. - for(var/X in bodyparts) - var/obj/item/bodypart/BP = X - if(prob(50/severity) && !prob(getarmor(BP, "bomb")) && BP.body_zone != "head" && BP.body_zone != "chest") - BP.brute_dam = BP.max_damage - BP.dismember() - max_limb_loss-- - if(!max_limb_loss) - break - - -/mob/living/carbon/human/blob_act(obj/structure/blob/B) - if(stat == DEAD) - return - show_message("The blob attacks you!") - var/dam_zone = pick("chest", "l_hand", "r_hand", "l_leg", "r_leg") - var/obj/item/bodypart/affecting = get_bodypart(ran_zone(dam_zone)) - apply_damage(5, BRUTE, affecting, run_armor_check(affecting, "melee")) - - -//Added a safety check in case you want to shock a human mob directly through electrocute_act. -/mob/living/carbon/human/electrocute_act(shock_damage, obj/source, siemens_coeff = 1, safety = 0, override = 0, tesla_shock = 0, illusion = 0) - if(tesla_shock) - var/total_coeff = 1 - if(gloves) - var/obj/item/clothing/gloves/G = gloves - if(G.siemens_coefficient <= 0) - total_coeff -= 0.5 - if(wear_suit) - var/obj/item/clothing/suit/S = wear_suit - if(S.siemens_coefficient <= 0) - total_coeff -= 0.95 - siemens_coeff = total_coeff - else if(!safety) - var/gloves_siemens_coeff = 1 - if(gloves) - var/obj/item/clothing/gloves/G = gloves - gloves_siemens_coeff = G.siemens_coefficient - siemens_coeff = gloves_siemens_coeff - if(heart_attack && !illusion) - if(shock_damage * siemens_coeff >= 1 && prob(25)) - heart_attack = 0 - if(stat == CONSCIOUS) - src << "You feel your heart beating again!" - . = ..(shock_damage,source,siemens_coeff,safety,override,tesla_shock, illusion) - if(.) - electrocution_animation(40) - - -/mob/living/carbon/human/emp_act(severity) - var/informed = 0 - for(var/obj/item/bodypart/L in src.bodyparts) - if(L.status == BODYPART_ROBOTIC) - if(!informed) - src << "You feel a sharp pain as your robotic limbs overload." - informed = 1 - switch(severity) - if(1) - L.receive_damage(0,10) - src.Stun(10) - if(2) - L.receive_damage(0,5) - src.Stun(5) - ..() - -/mob/living/carbon/human/acid_act(acidpwr, acid_volume, bodyzone_hit) - var/list/damaged = list() - var/list/inventory_items_to_kill = list() - var/acidity = acidpwr * min(acid_volume*0.005, 0.1) - //HEAD// - if(!bodyzone_hit || bodyzone_hit == "head") //only if we didn't specify a zone or if that zone is the head. - var/obj/item/clothing/head_clothes = null - if(glasses) - head_clothes = glasses - if(wear_mask) - head_clothes = wear_mask - if(wear_neck) - head_clothes = wear_neck - if(head) - head_clothes = head - if(head_clothes) - if(!(head_clothes.resistance_flags & UNACIDABLE)) - head_clothes.acid_act(acidpwr, acid_volume) - update_inv_glasses() - update_inv_wear_mask() - update_inv_neck() - update_inv_head() - else - src << "Your [head_clothes.name] protects your head and face from the acid!" - else - . = get_bodypart("head") - if(.) - damaged += . - if(ears) - inventory_items_to_kill += ears - - //CHEST// - if(!bodyzone_hit || bodyzone_hit == "chest") - var/obj/item/clothing/chest_clothes = null - if(w_uniform) - chest_clothes = w_uniform - if(wear_suit) - chest_clothes = wear_suit - if(chest_clothes) - if(!(chest_clothes.resistance_flags & UNACIDABLE)) - chest_clothes.acid_act(acidpwr, acid_volume) - update_inv_w_uniform() - update_inv_wear_suit() - else - src << "Your [chest_clothes.name] protects your body from the acid!" - else - . = get_bodypart("chest") - if(.) - damaged += . - if(wear_id) - inventory_items_to_kill += wear_id - if(r_store) - inventory_items_to_kill += r_store - if(l_store) - inventory_items_to_kill += l_store - if(s_store) - inventory_items_to_kill += s_store - - - //ARMS & HANDS// - if(!bodyzone_hit || bodyzone_hit == "l_arm" || bodyzone_hit == "r_arm") - var/obj/item/clothing/arm_clothes = null - if(gloves) - arm_clothes = gloves - if(w_uniform && ((w_uniform.body_parts_covered & HANDS) || (w_uniform.body_parts_covered & ARMS))) - arm_clothes = w_uniform - if(wear_suit && ((wear_suit.body_parts_covered & HANDS) || (wear_suit.body_parts_covered & ARMS))) - arm_clothes = wear_suit - - if(arm_clothes) - if(!(arm_clothes.resistance_flags & UNACIDABLE)) - arm_clothes.acid_act(acidpwr, acid_volume) - update_inv_gloves() - update_inv_w_uniform() - update_inv_wear_suit() - else - src << "Your [arm_clothes.name] protects your arms and hands from the acid!" - else - . = get_bodypart("r_arm") - if(.) - damaged += . - . = get_bodypart("l_arm") - if(.) - damaged += . - - - //LEGS & FEET// - if(!bodyzone_hit || bodyzone_hit == "l_leg" || bodyzone_hit == "r_leg" || bodyzone_hit == "feet") - var/obj/item/clothing/leg_clothes = null - if(shoes) - leg_clothes = shoes - if(w_uniform && ((w_uniform.body_parts_covered & FEET) || (bodyzone_hit != "feet" && (w_uniform.body_parts_covered & LEGS)))) - leg_clothes = w_uniform - if(wear_suit && ((wear_suit.body_parts_covered & FEET) || (bodyzone_hit != "feet" && (wear_suit.body_parts_covered & LEGS)))) - leg_clothes = wear_suit - if(leg_clothes) - if(!(leg_clothes.resistance_flags & UNACIDABLE)) - leg_clothes.acid_act(acidpwr, acid_volume) - update_inv_shoes() - update_inv_w_uniform() - update_inv_wear_suit() - else - src << "Your [leg_clothes.name] protects your legs and feet from the acid!" - else - . = get_bodypart("r_leg") - if(.) - damaged += . - . = get_bodypart("l_leg") - if(.) - damaged += . - - - //DAMAGE// - for(var/obj/item/bodypart/affecting in damaged) - affecting.receive_damage(acidity, 2*acidity) - - if(affecting.name == "head") - if(prob(min(acidpwr*acid_volume/10, 90))) //Applies disfigurement - affecting.receive_damage(acidity, 2*acidity) - emote("scream") - facial_hair_style = "Shaved" - hair_style = "Bald" - update_hair() - status_flags |= DISFIGURED - - update_damage_overlays() - - //MELTING INVENTORY ITEMS// - //these items are all outside of armour visually, so melt regardless. - if(!bodyzone_hit) - if(back) - inventory_items_to_kill += back - if(belt) - inventory_items_to_kill += belt - - inventory_items_to_kill += held_items - - for(var/obj/item/I in inventory_items_to_kill) - I.acid_act(acidpwr, acid_volume) - return 1 - -/mob/living/carbon/human/singularity_act() - var/gain = 20 - if(mind) - if((mind.assigned_role == "Station Engineer") || (mind.assigned_role == "Chief Engineer") ) - gain = 100 - if(mind.assigned_role == "Clown") - gain = rand(-300, 300) - investigate_log("([key_name(src)]) has been consumed by the singularity.","singulo") //Oh that's where the clown ended up! - gib() - return(gain) - -/mob/living/carbon/human/help_shake_act(mob/living/carbon/M) - if(!istype(M)) - return - - if(health >= 0) - if(src == M) - visible_message("[src] examines [p_them()]self.", \ - "You check yourself for injuries.") - - var/list/missing = list("head", "chest", "l_arm", "r_arm", "l_leg", "r_leg") - for(var/X in bodyparts) - var/obj/item/bodypart/LB = X - missing -= LB.body_zone - var/status = "" - var/brutedamage = LB.brute_dam - var/burndamage = LB.burn_dam - if(hallucination) - if(prob(30)) - brutedamage += rand(30,40) - if(prob(30)) - burndamage += rand(30,40) - - if(brutedamage > 0) - status = "bruised" - if(brutedamage > 20) - status = "battered" - if(brutedamage > 40) - status = "mangled" - if(brutedamage > 0 && burndamage > 0) - status += " and " - if(burndamage > 40) - status += "peeling away" - - else if(burndamage > 10) - status += "blistered" - else if(burndamage > 0) - status += "numb" - if(status == "") - status = "OK" - src << "\t [status == "OK" ? "\blue" : "\red"] Your [LB.name] is [status]." - - for(var/obj/item/I in LB.embedded_objects) - src << "\t \red There is \a [I] embedded in your [LB.name]!" - - for(var/t in missing) - src << "Your [parse_zone(t)] is missing!" - - if(bleed_rate) - src << "You are bleeding!" - if(staminaloss) - if(staminaloss > 30) - src << "You're completely exhausted." - else - src << "You feel fatigued." - else - if(wear_suit) - wear_suit.add_fingerprint(M) - else if(w_uniform) - w_uniform.add_fingerprint(M) - - ..() - - -/mob/living/carbon/human/damage_clothes(damage_amount, damage_type = BRUTE, damage_flag = 0, def_zone) - if(damage_type != BRUTE && damage_type != BURN) - return - damage_amount *= 0.5 //0.5 multiplier for balance reason, we don't want clothes to be too easily destroyed - var/list/torn_items = list() - - //HEAD// - if(!def_zone || def_zone == "head") - var/obj/item/clothing/head_clothes = null - if(glasses) - head_clothes = glasses - if(wear_mask) - head_clothes = wear_mask - if(wear_neck) - head_clothes = wear_neck - if(head) - head_clothes = head - if(head_clothes) - torn_items += head_clothes - else if(ears) - torn_items += ears - - //CHEST// - if(!def_zone || def_zone == "chest") - var/obj/item/clothing/chest_clothes = null - if(w_uniform) - chest_clothes = w_uniform - if(wear_suit) - chest_clothes = wear_suit - if(chest_clothes) - torn_items += chest_clothes - - //ARMS & HANDS// - if(!def_zone || def_zone == "l_arm" || def_zone == "r_arm") - var/obj/item/clothing/arm_clothes = null - if(gloves) - arm_clothes = gloves - if(w_uniform && ((w_uniform.body_parts_covered & HANDS) || (w_uniform.body_parts_covered & ARMS))) - arm_clothes = w_uniform - if(wear_suit && ((wear_suit.body_parts_covered & HANDS) || (wear_suit.body_parts_covered & ARMS))) - arm_clothes = wear_suit - if(arm_clothes) - torn_items += arm_clothes - - //LEGS & FEET// - if(!def_zone || def_zone == "l_leg" || def_zone == "r_leg") - var/obj/item/clothing/leg_clothes = null - if(shoes) - leg_clothes = shoes - if(w_uniform && ((w_uniform.body_parts_covered & FEET) || (w_uniform.body_parts_covered & LEGS))) - leg_clothes = w_uniform - if(wear_suit && ((wear_suit.body_parts_covered & FEET) || (wear_suit.body_parts_covered & LEGS))) - leg_clothes = wear_suit - if(leg_clothes) - torn_items += leg_clothes - - for(var/obj/item/I in torn_items) - I.take_damage(damage_amount, damage_type, damage_flag, 0) \ No newline at end of file +/mob/living/carbon/human/Stun(amount, updating_canmove = 1) + amount = dna.species.spec_stun(src,amount) + ..() \ No newline at end of file diff --git a/code/modules/mob/living/carbon/human/human_defines.dm b/code/modules/mob/living/carbon/human/human_defines.dm index 4a41b0f328..2da18e7d8f 100644 --- a/code/modules/mob/living/carbon/human/human_defines.dm +++ b/code/modules/mob/living/carbon/human/human_defines.dm @@ -3,7 +3,6 @@ var/global/default_martial_art = new/datum/martial_art languages_spoken = HUMAN languages_understood = HUMAN hud_possible = list(HEALTH_HUD,STATUS_HUD,ID_HUD,WANTED_HUD,IMPLOYAL_HUD,IMPCHEM_HUD,IMPTRACK_HUD,ANTAG_HUD) - pressure_resistance = 25 //Hair colour and style var/hair_color = "000" var/hair_style = "Bald" @@ -30,7 +29,11 @@ var/global/default_martial_art = new/datum/martial_art //Equipment slots var/obj/item/wear_suit = null var/obj/item/w_uniform = null + var/obj/item/shoes = null var/obj/item/belt = null + var/obj/item/gloves = null + var/obj/item/clothing/glasses/glasses = null + var/obj/item/ears = null var/obj/item/wear_id = null var/obj/item/r_store = null var/obj/item/l_store = null @@ -38,6 +41,8 @@ var/global/default_martial_art = new/datum/martial_art var/special_voice = "" // For changing our voice. Used by a symptom. + var/gender_ambiguous = 0 //if something goes wrong during gender reassignment this generates a line in examine + var/bleed_rate = 0 //how much are we bleeding var/bleedsuppress = 0 //for stopping bloodloss, eventually this will be limb-based like bleeding diff --git a/code/modules/mob/living/carbon/human/human_helpers.dm b/code/modules/mob/living/carbon/human/human_helpers.dm index 74ac63f3f3..83f630532f 100644 --- a/code/modules/mob/living/carbon/human/human_helpers.dm +++ b/code/modules/mob/living/carbon/human/human_helpers.dm @@ -81,23 +81,41 @@ if(wear_id) return wear_id.GetID() +///checkeyeprot() +///Returns a number between -1 to 2 +/mob/living/carbon/human/check_eye_prot() + var/number = ..() + if(istype(src.head, /obj/item/clothing/head)) //are they wearing something on their head + var/obj/item/clothing/head/HFP = src.head //if yes gets the flash protection value from that item + number += HFP.flash_protect + if(istype(src.glasses, /obj/item/clothing/glasses)) //glasses + var/obj/item/clothing/glasses/GFP = src.glasses + number += GFP.flash_protect + if(istype(src.wear_mask, /obj/item/clothing/mask)) //mask + var/obj/item/clothing/mask/MFP = src.wear_mask + number += MFP.flash_protect + if(istype(src.dna.species, /datum/species/xeno)) //Xenos don't have eyes. + number += 2 //So give them protection from flashes. + return number + +/mob/living/carbon/human/check_ear_prot() + if((ears && (ears.flags & EARBANGPROTECT)) || (head && (head.flags & HEADBANGPROTECT))) + return 1 /mob/living/carbon/human/abiotic(full_body = 0) - var/abiotic_hands = FALSE - for(var/obj/item/I in held_items) - if(!(I.flags & NODROP)) - abiotic_hands = TRUE - break - if(full_body && abiotic_hands && ((back && !(back.flags&NODROP)) || (wear_mask && !(wear_mask.flags&NODROP)) || (head && !(head.flags&NODROP)) || (shoes && !(shoes.flags&NODROP)) || (w_uniform && !(w_uniform.flags&NODROP)) || (wear_suit && !(wear_suit.flags&NODROP)) || (glasses && !(glasses.flags&NODROP)) || (ears && !(ears.flags&NODROP)) || (gloves && !(gloves.flags&NODROP)) ) ) - return TRUE - return abiotic_hands + if(full_body && ((l_hand && !( src.l_hand.flags&ABSTRACT )) || (r_hand && !( src.r_hand.flags&ABSTRACT )) || (back && !(back.flags&ABSTRACT)) || (wear_mask && !(wear_mask.flags&ABSTRACT)) || (head && !(head.flags&ABSTRACT)) || (shoes && !(shoes.flags&ABSTRACT)) || (w_uniform && !(w_uniform.flags&ABSTRACT)) || (wear_suit && !(wear_suit.flags&ABSTRACT)) || (glasses && !(glasses.flags&ABSTRACT)) || (ears && !(ears.flags&ABSTRACT)) || (gloves && !(gloves.flags&ABSTRACT)) ) ) + return 1 + if( (src.l_hand && !(src.l_hand.flags&ABSTRACT)) || (src.r_hand && !(src.r_hand.flags&ABSTRACT)) ) + return 1 + + return 0 /mob/living/carbon/human/IsAdvancedToolUser() return 1//Humans can use guns and such /mob/living/carbon/human/InCritical() - return (health <= HEALTH_THRESHOLD_CRIT && stat == UNCONSCIOUS) + return (health <= config.health_threshold_crit && stat == UNCONSCIOUS) /mob/living/carbon/human/reagent_check(datum/reagent/R) return dna.species.handle_chemicals(R,src) @@ -141,7 +159,7 @@ if(src.dna.check_mutation(HULK)) src << "Your meaty finger is much too large for the trigger guard!" return 0 - if(NOGUNS in src.dna.species.species_traits) + if(NOGUNS in src.dna.species.specflags) src << "Your fingers don't fit in the trigger guard!" return 0 diff --git a/code/modules/mob/living/carbon/human/human_movement.dm b/code/modules/mob/living/carbon/human/human_movement.dm index 21f09a318f..8f28dbc240 100644 --- a/code/modules/mob/living/carbon/human/human_movement.dm +++ b/code/modules/mob/living/carbon/human/human_movement.dm @@ -1,8 +1,8 @@ /mob/living/carbon/human/movement_delay() - . = 0 + . += dna.species.movement_delay(src) . += ..() . += config.human_delay - . += dna.species.movement_delay(src) + /mob/living/carbon/human/slip(s_amount, w_amount, obj/O, lube) if(isobj(shoes) && (shoes.flags&NOSLIP) && !(lube&GALOSHES_DONT_HELP)) @@ -60,4 +60,4 @@ /mob/living/carbon/human/Process_Spacemove(movement_dir = 0) //Temporary laziness thing. Will change to handles by species reee. if(..()) return 1 - return dna.species.space_move(src) + return dna.species.space_move() diff --git a/code/modules/mob/living/carbon/human/inventory.dm b/code/modules/mob/living/carbon/human/inventory.dm index 8edb3e27ab..f560a40d89 100644 --- a/code/modules/mob/living/carbon/human/inventory.dm +++ b/code/modules/mob/living/carbon/human/inventory.dm @@ -4,7 +4,7 @@ /mob/living/carbon/human/proc/equip_in_one_of_slots(obj/item/I, list/slots, qdel_on_fail = 1) for(var/slot in slots) - if(equip_to_slot_if_possible(I, slots[slot], qdel_on_fail = 0, disable_warning = TRUE)) + if(equip_to_slot_if_possible(I, slots[slot], qdel_on_fail = 0)) return slot if(qdel_on_fail) qdel(I) @@ -18,12 +18,14 @@ return back if(slot_wear_mask) return wear_mask - if(slot_neck) - return wear_neck if(slot_handcuffed) return handcuffed if(slot_legcuffed) return legcuffed + if(slot_l_hand) + return l_hand + if(slot_r_hand) + return r_hand if(slot_belt) return belt if(slot_wear_id) @@ -50,48 +52,11 @@ return s_store return null -/mob/living/carbon/human/proc/get_all_slots() - . = get_head_slots() | get_body_slots() - -/mob/living/carbon/human/proc/get_body_slots() - return list( - back, - s_store, - handcuffed, - legcuffed, - wear_suit, - gloves, - shoes, - belt, - wear_id, - l_store, - r_store, - w_uniform - ) - -/mob/living/carbon/human/proc/get_head_slots() - return list( - head, - wear_mask, - glasses, - ears, - ) - -/mob/living/carbon/human/proc/get_storage_slots() - return list( - back, - belt, - l_store, - r_store, - s_store, - ) //This is an UNSAFE proc. Use mob_can_equip() before calling this one! Or rather use equip_to_slot_if_possible() or advanced_equip_to_slot_if_possible() /mob/living/carbon/human/equip_to_slot(obj/item/I, slot) if(!..()) //a check failed or the item has already found its slot return - - var/not_handled = FALSE //Added in case we make this type path deeper one day switch(slot) if(slot_belt) belt = I @@ -106,8 +71,6 @@ if(slot_glasses) glasses = I var/obj/item/clothing/glasses/G = I - if(G.glass_colour_type) - update_glasses_color(G, 1) if(G.tint) update_tint() if(G.vision_correction) @@ -145,12 +108,6 @@ else src << "You are trying to equip this item to an unsupported inventory slot. Report this to a coder!" - //Item is handled and in slot, valid to call callback, for this proc should always be true - if(!not_handled) - I.equipped(src, slot) - - return not_handled //For future deeper overrides - /mob/living/carbon/human/unEquip(obj/item/I) . = ..() //See mob.dm for an explanation on this and some rage about people copypasting instead of calling ..() like they should. if(!. || !I) @@ -183,8 +140,6 @@ else if(I == glasses) glasses = null var/obj/item/clothing/glasses/G = I - if(G.glass_colour_type) - update_glasses_color(G, 0) if(G.tint) update_tint() if(G.vision_correction) @@ -237,6 +192,91 @@ sec_hud_set_security_status() ..() + + + +//Cycles through all clothing slots and tests them for destruction +/mob/living/carbon/human/proc/shred_clothing(bomb,shock) + var/covered_parts = 0 //The body parts that are protected by exterior clothing/armor + var/head_absorbed = 0 //How much of the shock the headgear absorbs when it is shredded. -1=it survives + var/suit_absorbed = 0 //How much of the shock the exosuit absorbs when it is shredded. -1=it survives + + //Backpacks can never be protected but are annoying as fuck to lose, so they get a lower chance to be shredded + if(back) + back.shred(bomb,shock-20,src) + + if(head) + covered_parts |= head.flags_inv + head_absorbed = head.shred(bomb,shock,src) + if(wear_mask) + var/absorbed = ((covered_parts & HIDEMASK) ? head_absorbed : 0) //Check if clothing covering this part absorbed any of the shock + if(absorbed >= 0) + //Masks can be used to shield other parts, but are simplified to simply add their absorbsion to the head armor if it covers the face + var/mask_absorbed = wear_mask.shred(bomb,shock-absorbed,src) + if(wear_mask.flags_inv & HIDEFACE) + covered_parts |= wear_mask.flags_inv + if(mask_absorbed < 0) //If the mask didn't get shredded, everything else on the head is protected + head_absorbed = -1 + else + head_absorbed += mask_absorbed + if(ears) + var/absorbed = ((covered_parts & HIDEEARS) ? head_absorbed : 0) + if(absorbed >= 0) + ears.shred(bomb,shock-absorbed,src) + if(glasses) + var/absorbed = ((covered_parts & HIDEEYES) ? head_absorbed : 0) + if(absorbed >= 0) + glasses.shred(bomb,shock-absorbed,src) + + if(wear_suit) + covered_parts |= wear_suit.flags_inv + suit_absorbed = wear_suit.shred(bomb,shock,src) + if(gloves) + var/absorbed = ((covered_parts & HIDEGLOVES) ? suit_absorbed : 0) + if(absorbed >= 0) + gloves.shred(bomb,shock-absorbed,src) + if(shoes) + var/absorbed = ((covered_parts & HIDESHOES) ? suit_absorbed : 0) + if(absorbed >= 0) + shoes.shred(bomb,shock-absorbed,src) + if(w_uniform) + var/absorbed = ((covered_parts & HIDEJUMPSUIT) ? suit_absorbed : 0) + if(absorbed >= 0) + w_uniform.shred(bomb,shock-20-absorbed,src) //Uniforms are also annoying to get shredded + +/obj/item/proc/shred(bomb,shock,mob/living/carbon/human/Human) + if(flags & ABSTRACT) + return -1 + + var/shredded + + if(!bomb) + if(burn_state != -1) + shredded = 1 //No heat protection, it burns + else + shredded = -1 //Heat protection = Fireproof + + else if(shock > 0) + if(prob(max(shock-armor["bomb"],0))) + shredded = armor["bomb"] + 10 //It gets shredded, but it also absorbs the shock the clothes underneath would recieve by this amount + else + shredded = -1 //It survives explosion + + if(shredded > 0) + if(Human) //Unequip if equipped + Human.unEquip(src) + + if(bomb) + empty_object_contents() + spawn(1) //so the shreds aren't instantly deleted by the explosion + var/obj/effect/decal/cleanable/shreds/Shreds = new(loc) + Shreds.desc = "The sad remains of what used to be [src.name]." + qdel(src) + else + burn() + + return shredded + /mob/living/carbon/human/proc/equipOutfit(outfit, visualsOnly = FALSE) var/datum/outfit/O = null diff --git a/code/modules/mob/living/carbon/human/life.dm b/code/modules/mob/living/carbon/human/life.dm index e1fffbeef6..0c3b27ba8d 100644 --- a/code/modules/mob/living/carbon/human/life.dm +++ b/code/modules/mob/living/carbon/human/life.dm @@ -1,4 +1,4 @@ - +//This file was auto-corrected by findeclaration.exe on 25.5.2012 20:42:32 //NOTE: Breathing happens once per FOUR TICKS, unless the last breath fails. In which case it happens once per ONE TICK! So oxyloss healing is done once per 4 ticks while oxyloss damage is applied once per tick! @@ -29,26 +29,20 @@ if (notransform) return - if(..()) //not dead + if(..()) for(var/datum/mutation/human/HM in dna.mutations) HM.on_life(src) - if(stat != DEAD) //heart attack stuff handle_heart() - if(stat != DEAD) //Stuff jammed in your limbs hurts handle_embedded_objects() - //Update our name based on whether our face is obscured/disfigured name = get_visible_name() dna.species.spec_life(src) // for mutantraces - if(stat != DEAD) - return 1 - /mob/living/carbon/human/calculate_affecting_pressure(pressure) if((wear_suit && (wear_suit.flags & STOPSPRESSUREDMAGE)) && (head && (head.flags & STOPSPRESSUREDMAGE))) @@ -91,38 +85,9 @@ /mob/living/carbon/human/breathe() if(!dna.species.breathe(src)) ..() -#define HUMAN_MAX_OXYLOSS 3 -#define HUMAN_CRIT_MAX_OXYLOSS (SSmob.wait/30) + /mob/living/carbon/human/check_breath(datum/gas_mixture/breath) - - var/L = getorganslot("lungs") - - if(!L) - if(health >= HEALTH_THRESHOLD_CRIT) - adjustOxyLoss(HUMAN_MAX_OXYLOSS + 1) - else if(!(NOCRITDAMAGE in dna.species.species_traits)) - adjustOxyLoss(HUMAN_CRIT_MAX_OXYLOSS) - - failed_last_breath = 1 - - if(dna && dna.species) - var/datum/species/S = dna.species - - if(S.breathid == "o2") - throw_alert("oxy", /obj/screen/alert/oxy) - else if(S.breathid == "tox") - throw_alert("not_enough_tox", /obj/screen/alert/not_enough_tox) - else if(S.breathid == "co2") - throw_alert("not_enough_co2", /obj/screen/alert/not_enough_co2) - - return 0 - else - if(istype(L,/obj/item/organ/lungs)) - var/obj/item/organ/lungs/lun = L - lun.check_breath(breath,src) - -#undef HUMAN_MAX_OXYLOSS -#undef HUMAN_CRIT_MAX_OXYLOSS + dna.species.check_breath(breath, src) /mob/living/carbon/human/handle_environment(datum/gas_mixture/environment) dna.species.handle_environment(environment, src) @@ -132,61 +97,6 @@ if(!dna || !dna.species.handle_fire(src)) ..() if(on_fire) - - //the fire tries to damage the exposed clothes and items - var/list/burning_items = list() - //HEAD// - var/obj/item/clothing/head_clothes = null - if(glasses) - head_clothes = glasses - if(wear_mask) - head_clothes = wear_mask - if(wear_neck) - head_clothes = wear_neck - if(head) - head_clothes = head - if(head_clothes) - burning_items += head_clothes - else if(ears) - burning_items += ears - - //CHEST// - var/obj/item/clothing/chest_clothes = null - if(w_uniform) - chest_clothes = w_uniform - if(wear_suit) - chest_clothes = wear_suit - - if(chest_clothes) - burning_items += chest_clothes - - //ARMS & HANDS// - var/obj/item/clothing/arm_clothes = null - if(gloves) - arm_clothes = gloves - if(w_uniform && ((w_uniform.body_parts_covered & HANDS) || (w_uniform.body_parts_covered & ARMS))) - arm_clothes = w_uniform - if(wear_suit && ((wear_suit.body_parts_covered & HANDS) || (wear_suit.body_parts_covered & ARMS))) - arm_clothes = wear_suit - if(arm_clothes) - burning_items += arm_clothes - - //LEGS & FEET// - var/obj/item/clothing/leg_clothes = null - if(shoes) - leg_clothes = shoes - if(w_uniform && ((w_uniform.body_parts_covered & FEET) || (w_uniform.body_parts_covered & LEGS))) - leg_clothes = w_uniform - if(wear_suit && ((wear_suit.body_parts_covered & FEET) || (wear_suit.body_parts_covered & LEGS))) - leg_clothes = wear_suit - if(leg_clothes) - burning_items += leg_clothes - - for(var/X in burning_items) - var/obj/item/I = X - if(!(I.resistance_flags & FIRE_PROOF)) - I.take_damage(fire_stacks, BURN, "fire", 0) - var/thermal_protection = get_thermal_protection() if(thermal_protection >= FIRE_IMMUNITY_SUIT_MAX_TEMP_PROTECT) @@ -307,7 +217,7 @@ if(dna.check_mutation(COLDRES)) return 1 //Fully protected from the cold. - if(dna && (RESISTCOLD in dna.species.species_traits)) + if(dna && (RESISTTEMP in dna.species.specflags)) return 1 temperature = max(temperature, 2.7) //There is an occasional bug where the temperature is miscalculated in ares with a small amount of gas on them, so this is necessary to ensure that that bug does not affect this calculation. Space's temperature is 2.7K and most suits that are intended to protect against any cold, protect down to 2.0K. @@ -367,7 +277,7 @@ if(head) if(head.flags & BLOCK_GAS_SMOKE_EFFECT) . = 1 - if(NOBREATH in dna.species.species_traits) + if(NOBREATH in dna.species.specflags) . = 1 return . @@ -377,11 +287,11 @@ var/obj/item/bodypart/BP = X for(var/obj/item/I in BP.embedded_objects) if(prob(I.embedded_pain_chance)) - BP.receive_damage(I.w_class*I.embedded_pain_multiplier) + BP.take_damage(I.w_class*I.embedded_pain_multiplier) src << "\the [I] embedded in your [BP.name] hurts!" if(prob(I.embedded_fall_chance)) - BP.receive_damage(I.w_class*I.embedded_fall_pain_multiplier) + BP.take_damage(I.w_class*I.embedded_fall_pain_multiplier) BP.embedded_objects -= I I.loc = get_turf(src) visible_message("\the [I] falls out of [name]'s [BP.name]!","\the [I] falls out of your [BP.name]!") @@ -391,8 +301,8 @@ /mob/living/carbon/human/proc/handle_heart() CHECK_DNA_AND_SPECIES(src) - var/needs_heart = (!(NOBLOOD in dna.species.species_traits)) - var/we_breath = (!(NOBREATH in dna.species.species_traits)) + var/needs_heart = (!(NOBLOOD in dna.species.specflags)) + var/we_breath = (!(NOBREATH in dna.species.specflags)) if(heart_attack) if(!needs_heart) diff --git a/code/modules/mob/living/carbon/human/say.dm b/code/modules/mob/living/carbon/human/say.dm index f13acb5025..0caef7376b 100644 --- a/code/modules/mob/living/carbon/human/say.dm +++ b/code/modules/mob/living/carbon/human/say.dm @@ -51,7 +51,7 @@ CHECK_DNA_AND_SPECIES(src) // how do species that don't breathe talk? magic, that's what. - if(!(NOBREATH in dna.species.species_traits) && !getorganslot("lungs")) + if(!(NOBREATH in dna.species.specflags) && !getorganslot("lungs")) return 0 if(mind) return !mind.miming diff --git a/code/modules/mob/living/carbon/human/species.dm b/code/modules/mob/living/carbon/human/species.dm index e3fed94d8a..67077b4790 100644 --- a/code/modules/mob/living/carbon/human/species.dm +++ b/code/modules/mob/living/carbon/human/species.dm @@ -1,5 +1,8 @@ // This code handles different species in the game. +#define HUMAN_MAX_OXYLOSS 3 +#define HUMAN_CRIT_MAX_OXYLOSS (SSmob.wait/30) + #define HEAT_DAMAGE_LEVEL_1 2 #define HEAT_DAMAGE_LEVEL_2 3 #define HEAT_DAMAGE_LEVEL_3 8 @@ -8,6 +11,13 @@ #define COLD_DAMAGE_LEVEL_2 1.5 #define COLD_DAMAGE_LEVEL_3 3 +#define HEAT_GAS_DAMAGE_LEVEL_1 2 +#define HEAT_GAS_DAMAGE_LEVEL_2 4 +#define HEAT_GAS_DAMAGE_LEVEL_3 8 + +#define COLD_GAS_DAMAGE_LEVEL_1 0.5 +#define COLD_GAS_DAMAGE_LEVEL_2 1.5 +#define COLD_GAS_DAMAGE_LEVEL_3 3 /datum/species var/id = null // if the game needs to manually check your race to do something not included in a proc here, it will use this @@ -16,7 +26,7 @@ var/roundstart = 0 // can this mob be chosen at roundstart? (assuming the config option is checked?) var/default_color = "#FFF" // if alien colors are disabled, this is the color that will be used by that race - var/eyes = "eyes" // which eyes the race uses. at the moment, the only types of eyes are "eyes" (regular eyes) and "jelleyes" (three eyes) + var/eyes = "eyes" // which eyes the race uses(the icon state). "eyes" are for normal humans and most other races, check human_face.dmi to make new ones var/sexes = 1 // whether or not the race has sexual characteristics. at the moment this is only 0 for skeletons and shadows var/hair_color = null // this allows races to have specific hair colors... if null, it uses the H's hair/facial hair colors. if "mutcolor", it uses the H's mutant_color var/hair_alpha = 255 // the alpha used by the hair. 255 is completely solid, 0 is transparent. @@ -44,23 +54,44 @@ var/punchdamagehigh = 9 //highest possible punch damage var/punchstunthreshold = 9//damage at which punches from this race will stun //yes it should be to the attacked race but it's not useful that way even if it's logical var/siemens_coeff = 1 //base electrocution coefficient - var/damage_overlay_type = "human" //what kind of damage overlays (if any) appear on our species when wounded? + var/exotic_damage_overlay = "" var/fixed_mut_color = "" //to use MUTCOLOR with a fixed color that's independent of dna.feature["mcolor"] - + var/fixed_mut_color2 = "" + var/fixed_mut_color3 = "" + var/whitelisted = 0 //Is this species restricted to certain players? + var/whitelist = list() //List the ckeys that can use this species, if it's whitelisted.: list("John Doe", "poopface666", "SeeALiggerPullTheTrigger") Spaces & capitalization can be included or ignored entirely for each key as it checks for both. + var/lang_spoken = HUMAN + var/lang_understood = HUMAN var/invis_sight = SEE_INVISIBLE_LIVING var/darksight = 2 // species flags. these can be found in flags.dm - var/list/species_traits = list() + var/list/specflags = list(EYECOLOR,HAIR,FACEHAIR,LIPS) var/attack_verb = "punch" // punch-specific attack verb var/sound/attack_sound = 'sound/weapons/punch1.ogg' var/sound/miss_sound = 'sound/weapons/punchmiss.ogg' var/mob/living/list/ignored_by = list() // list of mobs that will ignore this species + //Breathing! - var/obj/item/organ/lungs/mutantlungs = null - var/breathid = "o2" + var/safe_oxygen_min = 16 // Minimum safe partial pressure of O2, in kPa + var/safe_oxygen_max = 0 + var/safe_co2_min = 0 + var/safe_co2_max = 10 // Yes it's an arbitrary value who cares? + var/safe_toxins_min = 0 + var/safe_toxins_max = 0.05 + var/SA_para_min = 1 //Sleeping agent + var/SA_sleep_min = 5 //Sleeping agent + var/BZ_trip_balls_min = 1 //BZ gas. + + //Breath damage + var/oxy_breath_dam_min = 1 + var/oxy_breath_dam_max = 10 + var/co2_breath_dam_min = 1 + var/co2_breath_dam_max = 10 + var/tox_breath_dam_min = MIN_PLASMA_DAMAGE + var/tox_breath_dam_max = MAX_PLASMA_DAMAGE //Flight and floating var/override_float = 0 @@ -69,9 +100,13 @@ // PROCS // /////////// +mob/living/carbon/human/proc/get_species() + if(has_dna()) + return dna.species.id + else + return /datum/species/New() - if(!limbs_id) //if we havent set a limbs id to use, just use our own id limbs_id = id ..() @@ -105,35 +140,36 @@ // Drop the items the new species can't wear for(var/slot_id in no_equip) var/obj/item/thing = C.get_item_by_slot(slot_id) - if(thing && (!thing.species_exception || !is_type_in_list(src,thing.species_exception))) + if(thing) C.unEquip(thing) + if(NODISMEMBER in specflags) + C.regenerate_limbs() //if we don't handle dismemberment, we grow our missing limbs back var/obj/item/organ/heart/heart = C.getorganslot("heart") var/obj/item/organ/lungs/lungs = C.getorganslot("lungs") var/obj/item/organ/appendix/appendix = C.getorganslot("appendix") - if((NOBLOOD in species_traits) && heart) + if((NOBLOOD in specflags) && heart) heart.Remove(C) qdel(heart) - else if((!(NOBLOOD in species_traits)) && (!heart)) + + else if((!(NOBLOOD in specflags)) && (!heart)) heart = new() heart.Insert(C) - if(lungs) + if((NOBREATH in specflags) && lungs) lungs.Remove(C) qdel(lungs) - lungs = null - if((!(NOBREATH in species_traits)) && !lungs) - if(mutantlungs) - lungs = new mutantlungs() - else - lungs = new() + + else if((!(NOBREATH in specflags)) && (!lungs)) + lungs = new() lungs.Insert(C) - if((NOHUNGER in species_traits) && appendix) + if((NOHUNGER in specflags) && appendix) appendix.Remove(C) qdel(appendix) - else if((!(NOHUNGER in species_traits)) && (!appendix)) + + else if((!(NOHUNGER in specflags)) && (!appendix)) appendix = new() appendix.Insert(C) @@ -143,16 +179,13 @@ if(exotic_bloodtype && C.dna.blood_type != exotic_bloodtype) C.dna.blood_type = exotic_bloodtype - if(("legs" in C.dna.species.mutant_bodyparts) && C.dna.features["legs"] == "Digitigrade Legs") - species_traits += DIGITIGRADE - if(DIGITIGRADE in species_traits) - C.Digitigrade_Leg_Swap(FALSE) + + C.languages_spoken = lang_spoken + C.languages_understood = lang_understood /datum/species/proc/on_species_loss(mob/living/carbon/C) if(C.dna.species.exotic_bloodtype) C.dna.blood_type = random_blood_type() - if(DIGITIGRADE in species_traits) - C.Digitigrade_Leg_Swap(TRUE) /datum/species/proc/handle_hair(mob/living/carbon/human/H, forced_colour) H.remove_overlay(HAIR_LAYER) @@ -177,7 +210,7 @@ if(M.flags_inv & HIDEFACIALHAIR) facialhair_hidden = 1 - if(H.facial_hair_style && (FACEHAIR in species_traits) && !facialhair_hidden) + if(H.facial_hair_style && (FACEHAIR in specflags) && !facialhair_hidden) S = facial_hair_styles_list[H.facial_hair_style] if(S) var/image/img_facial_s = image("icon" = S.icon, "icon_state" = "[S.icon_state]_s", "layer" = -HAIR_LAYER) @@ -208,10 +241,9 @@ hair_hidden = 1 if(!hair_hidden) if(!H.getorgan(/obj/item/organ/brain)) //Applies the debrained overlay if there is no brain - if(!(NOBLOOD in species_traits)) - standing += image("icon"='icons/mob/human_face.dmi', "icon_state" = "debrained_s", "layer" = -HAIR_LAYER) + standing += image("icon"='icons/mob/human_face.dmi', "icon_state" = "debrained_s", "layer" = -HAIR_LAYER) - else if(H.hair_style && (HAIR in species_traits)) + else if(H.hair_style && (HAIR in specflags)) S = hair_styles_list[H.hair_style] if(S) var/image/img_hair_s = image("icon" = S.icon, "icon_state" = "[S.icon_state]_s", "layer" = -HAIR_LAYER) @@ -242,20 +274,21 @@ var/list/standing = list() + handle_mutant_bodyparts(H) + var/obj/item/bodypart/head/HD = H.get_bodypart("head") - if(!(H.disabilities & HUSK)) - // lipstick - if(H.lip_style && (LIPS in species_traits) && HD) - var/image/lips = image("icon"='icons/mob/human_face.dmi', "icon_state"="lips_[H.lip_style]_s", "layer" = -BODY_LAYER) - lips.color = H.lip_color - standing += lips + // lipstick + if(H.lip_style && (LIPS in specflags) && HD) + var/image/lips = image("icon"='icons/mob/human_face.dmi', "icon_state"="lips_[H.lip_style]_s", "layer" = -BODY_LAYER) + lips.color = H.lip_color + standing += lips - // eyes - if((EYECOLOR in species_traits) && HD) - var/image/img_eyes_s = image("icon" = 'icons/mob/human_face.dmi', "icon_state" = "[eyes]_s", "layer" = -BODY_LAYER) - img_eyes_s.color = "#" + H.eye_color - standing += img_eyes_s + // eyes + if((EYECOLOR in specflags) && HD) + var/image/img_eyes_s = image("icon" = 'icons/mob/human_face.dmi', "icon_state" = "[eyes]_s", "layer" = -BODY_LAYER) + img_eyes_s.color = "#" + H.eye_color + standing += img_eyes_s //Underwear, Undershirts & Socks if(H.underwear) @@ -271,16 +304,17 @@ else standing += image("icon"=U2.icon, "icon_state"="[U2.icon_state]_s", "layer"=-BODY_LAYER) - if(H.socks && H.get_num_legs() >= 2 && !(DIGITIGRADE in species_traits)) + if(H.socks && H.get_num_legs() >= 2) var/datum/sprite_accessory/socks/U3 = socks_list[H.socks] if(U3) standing += image("icon"=U3.icon, "icon_state"="[U3.icon_state]_s", "layer"=-BODY_LAYER) + if(standing.len) + H.overlays_standing[BODY_LAYER] = standing if(standing.len) H.overlays_standing[BODY_LAYER] = standing H.apply_overlay(BODY_LAYER) - handle_mutant_bodyparts(H) /datum/species/proc/handle_mutant_bodyparts(mob/living/carbon/human/H, forced_colour) var/list/bodyparts_to_add = mutant_bodyparts.Copy() @@ -296,6 +330,61 @@ var/obj/item/bodypart/head/HD = H.get_bodypart("head") + //At this point, the game will decide which bodyparts it will render on the sprite of the player; depending on clothing worn, DNA, and other factors. + //This helps eliminate clipping with certain clothing types, as well as providing a means to effectively hide your species identity from other players. + + if("tail_human" in mutant_bodyparts) + if(H.wear_suit && (H.wear_suit.flags_inv & HIDEJUMPSUIT)) + bodyparts_to_add -= "tail_human" + + if("waggingtail_human" in mutant_bodyparts) + if(H.wear_suit && (H.wear_suit.flags_inv & HIDEJUMPSUIT)) + bodyparts_to_add -= "waggingtail_human" + else if ("tail_human" in mutant_bodyparts) + bodyparts_to_add -= "waggingtail_human" + + if("ears" in mutant_bodyparts) + if(!H.dna.features["ears"] || H.dna.features["ears"] == "None" || H.head && (H.head.flags_inv & HIDEHAIR) || (H.wear_mask && (H.wear_mask.flags_inv & HIDEHAIR)) || !HD || HD.status == ORGAN_ROBOTIC) + bodyparts_to_add -= "ears" + //Race specific bodyparts: + //Xenos + if("xenodorsal" in mutant_bodyparts) + if(!H.dna.features["xenodorsal"] || H.dna.features["xenodorsal"] == "None" || (H.wear_suit && (H.wear_suit.flags_inv & HIDEJUMPSUIT))) + bodyparts_to_add -= "xenodorsal" + if("xenohead" in mutant_bodyparts)//This is an overlay for different castes using different head crests + if(!H.dna.features["xenohead"] || H.dna.features["xenohead"] == "None" || H.head && (H.head.flags_inv & HIDEHAIR) || (H.wear_mask && (H.wear_mask.flags_inv & HIDEHAIR)) || !HD || HD.status == ORGAN_ROBOTIC) + bodyparts_to_add -= "xenohead" + if("xenotail" in mutant_bodyparts) + if(!H.dna.features["xenotail"] || H.dna.features["xenotail"] == "None" || H.wear_suit && (H.wear_suit.flags_inv & HIDEJUMPSUIT)) + bodyparts_to_add -= "xenotail" + + //Canids/Felids + if("mam_tail" in mutant_bodyparts) + if(H.wear_suit && (H.wear_suit.flags_inv & HIDEJUMPSUIT)) + bodyparts_to_add -= "mam_tail" + + if("mam_waggingtail" in mutant_bodyparts) + if(H.wear_suit && (H.wear_suit.flags_inv & HIDEJUMPSUIT)) + bodyparts_to_add -= "mam_waggingtail" + else if ("mam_tail" in mutant_bodyparts) + bodyparts_to_add -= "mam_waggingtail" + + if("mam_ears" in mutant_bodyparts) + if(!H.dna.features["mam_ears"] || H.dna.features["mam_ears"] == "None" || H.head && (H.head.flags_inv & HIDEHAIR) || (H.wear_mask && (H.wear_mask.flags_inv & HIDEHAIR)) || !HD || HD.status == ORGAN_ROBOTIC) + bodyparts_to_add -= "mam_ears" + + //Angels + if("wings" in mutant_bodyparts)//Will likely define these as "angel_wings" later so we can have cosmetic wings for other species. + if(!H.dna.features["wings"] || H.dna.features["wings"] == "None" || (H.wear_suit && (H.wear_suit.flags_inv & HIDEJUMPSUIT))) + bodyparts_to_add -= "wings" + + if("wings_open" in mutant_bodyparts) + if(H.wear_suit && (H.wear_suit.flags_inv & HIDEJUMPSUIT)) + bodyparts_to_add -= "wings_open" + else if ("wings" in mutant_bodyparts) + bodyparts_to_add -= "wings_open" + + //Lizards if("tail_lizard" in mutant_bodyparts) if(H.wear_suit && (H.wear_suit.flags_inv & HIDEJUMPSUIT)) bodyparts_to_add -= "tail_lizard" @@ -306,21 +395,6 @@ else if ("tail_lizard" in mutant_bodyparts) bodyparts_to_add -= "waggingtail_lizard" - if("tail_human" in mutant_bodyparts) - if(H.wear_suit && (H.wear_suit.flags_inv & HIDEJUMPSUIT)) - bodyparts_to_add -= "tail_human" - - - if("waggingtail_human" in mutant_bodyparts) - if(H.wear_suit && (H.wear_suit.flags_inv & HIDEJUMPSUIT)) - bodyparts_to_add -= "waggingtail_human" - else if ("tail_human" in mutant_bodyparts) - bodyparts_to_add -= "waggingtail_human" - - if("spines" in mutant_bodyparts) - if(!H.dna.features["spines"] || H.dna.features["spines"] == "None" || H.wear_suit && (H.wear_suit.flags_inv & HIDEJUMPSUIT)) - bodyparts_to_add -= "spines" - if("waggingspines" in mutant_bodyparts) if(!H.dna.features["spines"] || H.dna.features["spines"] == "None" || H.wear_suit && (H.wear_suit.flags_inv & HIDEJUMPSUIT)) bodyparts_to_add -= "waggingspines" @@ -328,54 +402,33 @@ bodyparts_to_add -= "waggingspines" if("snout" in mutant_bodyparts) //Take a closer look at that snout! - if((H.wear_mask && (H.wear_mask.flags_inv & HIDEFACE)) || (H.head && (H.head.flags_inv & HIDEFACE)) || !HD || HD.status == BODYPART_ROBOTIC) + if((H.wear_mask && (H.wear_mask.flags_inv & HIDEFACE)) || (H.head && (H.head.flags_inv & HIDEFACE)) || !HD || HD.status == ORGAN_ROBOTIC) bodyparts_to_add -= "snout" if("frills" in mutant_bodyparts) - if(!H.dna.features["frills"] || H.dna.features["frills"] == "None" || H.head && (H.head.flags_inv & HIDEEARS) || !HD || HD.status == BODYPART_ROBOTIC) + if(!H.dna.features["frills"] || H.dna.features["frills"] == "None" || H.head && (H.head.flags_inv & HIDEEARS) || !HD || HD.status == ORGAN_ROBOTIC) bodyparts_to_add -= "frills" if("horns" in mutant_bodyparts) - if(!H.dna.features["horns"] || H.dna.features["horns"] == "None" || H.head && (H.head.flags_inv & HIDEHAIR) || (H.wear_mask && (H.wear_mask.flags_inv & HIDEHAIR)) || !HD || HD.status == BODYPART_ROBOTIC) + if(!H.dna.features["horns"] || H.dna.features["horns"] == "None" || H.head && (H.head.flags_inv & HIDEHAIR) || (H.wear_mask && (H.wear_mask.flags_inv & HIDEHAIR)) || !HD || HD.status == ORGAN_ROBOTIC) bodyparts_to_add -= "horns" - if("ears" in mutant_bodyparts) - if(!H.dna.features["ears"] || H.dna.features["ears"] == "None" || H.head && (H.head.flags_inv & HIDEHAIR) || (H.wear_mask && (H.wear_mask.flags_inv & HIDEHAIR)) || !HD || HD.status == BODYPART_ROBOTIC) - bodyparts_to_add -= "ears" + if("spines" in mutant_bodyparts) + if(!H.dna.features["spines"] || H.dna.features["spines"] == "None" || H.wear_suit && (H.wear_suit.flags_inv & HIDEJUMPSUIT)) + bodyparts_to_add -= "spines" + //Slimecoons + if("slimecoontail" in mutant_bodyparts) + if(H.wear_suit && (H.wear_suit.flags_inv & HIDEJUMPSUIT)) + bodyparts_to_add -= "slimecoontail" - if("wings" in mutant_bodyparts) - if(!H.dna.features["wings"] || H.dna.features["wings"] == "None" || (H.wear_suit && (H.wear_suit.flags_inv & HIDEJUMPSUIT) && (!H.wear_suit.species_exception || !is_type_in_list(src, H.wear_suit.species_exception)))) - bodyparts_to_add -= "wings" + if("slimecoonears" in mutant_bodyparts) + if(!H.dna.features["mam_ears"] || H.dna.features["mam_ears"] == "None" || H.head && (H.head.flags_inv & HIDEHAIR) || (H.wear_mask && (H.wear_mask.flags_inv & HIDEHAIR)) || !HD || HD.status == ORGAN_ROBOTIC) + bodyparts_to_add -= "slimecoonears" - if("wings_open" in mutant_bodyparts) - if(H.wear_suit && (H.wear_suit.flags_inv & HIDEJUMPSUIT) && (!H.wear_suit.species_exception || !is_type_in_list(src, H.wear_suit.species_exception))) - bodyparts_to_add -= "wings_open" - else if ("wings" in mutant_bodyparts) - bodyparts_to_add -= "wings_open" + if("slimecoonsnout" in mutant_bodyparts) + if((H.wear_mask && (H.wear_mask.flags_inv & HIDEFACE)) || (H.head && (H.head.flags_inv & HIDEFACE)) || !HD || HD.status == ORGAN_ROBOTIC) + bodyparts_to_add -= "slimecoonsnout" - //Digitigrade legs are stuck in the phantom zone between true limbs and mutant bodyparts. Mainly it just needs more agressive updating than most limbs. - var/update_needed = FALSE - var/not_digitigrade = TRUE - for(var/X in H.bodyparts) - var/obj/item/bodypart/O = X - if(!O.use_digitigrade) - continue - not_digitigrade = FALSE - if(!(DIGITIGRADE in species_traits)) //Someone cut off a digitigrade leg and tacked it on - species_traits += DIGITIGRADE - var/should_be_squished = FALSE - if(H.wear_suit && ((H.wear_suit.flags_inv & HIDEJUMPSUIT) || (H.wear_suit.body_parts_covered & LEGS)) || (H.w_uniform && (H.w_uniform.body_parts_covered & LEGS))) - should_be_squished = TRUE - if(O.use_digitigrade == FULL_DIGITIGRADE && should_be_squished) - O.use_digitigrade = SQUISHED_DIGITIGRADE - update_needed = TRUE - else if(O.use_digitigrade == SQUISHED_DIGITIGRADE && !should_be_squished) - O.use_digitigrade = FULL_DIGITIGRADE - update_needed = TRUE - if(update_needed) - H.update_body_parts() - if(not_digitigrade && (DIGITIGRADE in species_traits)) //Curse is lifted - species_traits -= DIGITIGRADE if(!bodyparts_to_add) return @@ -385,56 +438,85 @@ var/image/I for(var/layer in relevent_layers) - var/layertext = mutant_bodyparts_layertext(layer) - for(var/bodypart in bodyparts_to_add) var/datum/sprite_accessory/S switch(bodypart) - if("tail_lizard") - S = tails_list_lizard[H.dna.features["tail_lizard"]] - if("waggingtail_lizard") - S.= animated_tails_list_lizard[H.dna.features["tail_lizard"]] if("tail_human") S = tails_list_human[H.dna.features["tail_human"]] if("waggingtail_human") S.= animated_tails_list_human[H.dna.features["tail_human"]] + if("ears") + S = ears_list[H.dna.features["ears"]] + if("body_markings") + S = body_markings_list[H.dna.features["body_markings"]] + + //Mammal Bodyparts (Canid/Felid, others maybe in the future) + if("mam_tail") + S = mam_tails_list[H.dna.features["mam_tail"]] + if("mam_waggingtail") + S.= mam_tails_animated_list[H.dna.features["mam_tail"]] + if("mam_body_markings") + S = mam_body_markings_list[H.dna.features["mam_body_markings"]] + if("mam_ears") + S = mam_ears_list[H.dna.features["mam_ears"]] + + //Lizard Bodyparts + if("tail_lizard") + S = tails_list_lizard[H.dna.features["tail_lizard"]] + if("waggingtail_lizard") + S.= animated_tails_list_lizard[H.dna.features["tail_lizard"]] if("spines") S = spines_list[H.dna.features["spines"]] if("waggingspines") S.= animated_spines_list[H.dna.features["spines"]] - if("snout") + if("snout")//This is shared between lizard and mammals currently.(9/8/16) S = snouts_list[H.dna.features["snout"]] if("frills") S = frills_list[H.dna.features["frills"]] if("horns") S = horns_list[H.dna.features["horns"]] - if("ears") - S = ears_list[H.dna.features["ears"]] - if("body_markings") - S = body_markings_list[H.dna.features["body_markings"]] + + //Xeno Bodyparts + if("xenodorsal") + S = xeno_dorsal_list[H.dna.features["xenodorsal"]] + if("xenohead") + S = xeno_head_list[H.dna.features["xenohead"]] + if("xenotail") + S = xeno_tail_list[H.dna.features["xenotail"]] + + //Angel Bodyparts if("wings") S = wings_list[H.dna.features["wings"]] if("wingsopen") S = wings_open_list[H.dna.features["wings"]] - if("legs") - S = legs_list[H.dna.features["legs"]] + + //Slimecoon Bodyparts + if("slimecoontail") + S = /datum/sprite_accessory/slimecoon_tail + if("slimecoonears") + S = /datum/sprite_accessory/slimecoon_ears + if("slimecoonsnout") + S = /datum/sprite_accessory/slimecoon_snout if(!S || S.icon_state == "none") continue //A little rename so we don't have to use tail_lizard or tail_human when naming the sprites. - if(bodypart == "tail_lizard" || bodypart == "tail_human") + if(bodypart == "tail_lizard" || bodypart == "tail_human" || bodypart == "mam_tail" || bodypart == "slimecoontail" || bodypart == "xenotail") bodypart = "tail" - else if(bodypart == "waggingtail_lizard" || bodypart == "waggingtail_human") + else if(bodypart == "waggingtail_lizard" || bodypart == "waggingtail_human" || bodypart == "mam_waggingtail") bodypart = "waggingtail" - + if(bodypart == "mam_ears") + bodypart = "ears" + if(bodypart == "xenohead") + bodypart = "xhead" var/icon_string if(S.gender_specific) - icon_string = "[g]_[bodypart]_[S.icon_state]_[layertext]" + icon_string = "[g]_[bodypart]_[S.icon_state]_[layer]" else - icon_string = "m_[bodypart]_[S.icon_state]_[layertext]" + icon_string = "m_[bodypart]_[S.icon_state]_[layer]" I = image("icon" = S.icon, "icon_state" = icon_string, "layer" =- layer) @@ -449,6 +531,16 @@ I.color = "#[fixed_mut_color]" else I.color = "#[H.dna.features["mcolor"]]" + if(MUTCOLORS2) + if(fixed_mut_color2) + I.color = "#[fixed_mut_color2]" + else + I.color = "#[H.dna.features["mcolor2"]]" + if(MUTCOLORS3) + if(fixed_mut_color3) + I.color = "#[fixed_mut_color3]" + else + I.color = "#[H.dna.features["mcolor3"]]" if(HAIR) if(hair_color == "mutcolor") I.color = "#[H.dna.features["mcolor"]]" @@ -460,13 +552,14 @@ I.color = "#[H.eye_color]" else I.color = forced_colour + standing += I - if(S.hasinner) + if(S.hasinner) //apply the inner ear sprite if(S.gender_specific) - icon_string = "[g]_[bodypart]inner_[S.icon_state]_[layertext]" + icon_string = "[g]_[bodypart]inner_[S.icon_state]_[layer]" else - icon_string = "m_[bodypart]inner_[S.icon_state]_[layertext]" + icon_string = "m_[bodypart]inner_[S.icon_state]_[layer]" I = image("icon" = S.icon, "icon_state" = icon_string, "layer" =- layer) @@ -475,6 +568,44 @@ standing += I + if(S.extra) //apply the extra overlay, if there is one + if(S.gender_specific) + icon_string = "[g]_[bodypart]_extra_[S.icon_state]_[layer]" + else + icon_string = "m_[bodypart]_extra_[S.icon_state]_[layer]" + + I = image("icon" = S.icon, "icon_state" = icon_string, "layer" =- layer) + + if(S.center) + I = center_image(I,S.dimension_x,S.dimension_y) + + switch(S.extra_color_src) //change the color of the extra overlay + if(MUTCOLORS) + if(fixed_mut_color) + I.color = "#[fixed_mut_color]" + else + I.color = "#[H.dna.features["mcolor"]]" + if(MUTCOLORS2) + if(fixed_mut_color2) + I.color = "#[fixed_mut_color2]" + else + I.color = "#[H.dna.features["mcolor2"]]" + if(MUTCOLORS3) + if(fixed_mut_color3) + I.color = "#[fixed_mut_color3]" + else + I.color = "#[H.dna.features["mcolor3"]]" + if(HAIR) + if(hair_color == "mutcolor") + I.color = "#[H.dna.features["mcolor"]]" + else + I.color = "#[H.hair_color]" + if(FACEHAIR) + I.color = "#[H.facial_hair_color]" + if(EYECOLOR) + I.color = "#[H.eye_color]" + standing += I + H.overlays_standing[layer] = standing.Copy() standing = list() @@ -482,26 +613,13 @@ H.apply_overlay(BODY_ADJ_LAYER) H.apply_overlay(BODY_FRONT_LAYER) - -//This exists so sprite accessories can still be per-layer without having to include that layer's -//number in their sprite name, which causes issues when those numbers change. -/datum/species/proc/mutant_bodyparts_layertext(layer) - switch(layer) - if(BODY_BEHIND_LAYER) - return "BEHIND" - if(BODY_ADJ_LAYER) - return "ADJ" - if(BODY_FRONT_LAYER) - return "FRONT" - - /datum/species/proc/spec_life(mob/living/carbon/human/H) - if(NOBREATH in species_traits) + if(NOBREATH in specflags) H.setOxyLoss(0) H.losebreath = 0 - var/takes_crit_damage = (!(NOCRITDAMAGE in species_traits)) - if((H.health < HEALTH_THRESHOLD_CRIT) && takes_crit_damage) + var/takes_crit_damage = (!(NOCRITDAMAGE in specflags)) + if((H.health < config.health_threshold_crit) && takes_crit_damage) H.adjustBruteLoss(1) /datum/species/proc/spec_death(gibbed, mob/living/carbon/human/H) @@ -516,14 +634,24 @@ if(!I.species_exception || !is_type_in_list(src, I.species_exception)) return 0 + var/R = H.has_right_hand() + var/L = H.has_left_hand() var/num_arms = H.get_num_arms() var/num_legs = H.get_num_legs() switch(slot) - if(slot_hands) - if(H.get_empty_held_indexes()) - return TRUE - return FALSE + if(slot_l_hand) + if(H.l_hand) + return 0 + if(!L) + return 0 + return 1 + if(slot_r_hand) + if(H.r_hand) + return 0 + if(!R) + return 0 + return 1 if(slot_wear_mask) if(H.wear_mask) return 0 @@ -532,12 +660,6 @@ if(!H.get_bodypart("head")) return 0 return 1 - if(slot_neck) - if(H.wear_neck) - return 0 - if( !(I.slot_flags & SLOT_NECK) ) - return 0 - return 1 if(slot_back) if(H.back) return 0 @@ -565,10 +687,6 @@ return 0 if(num_legs < 2) return 0 - if(DIGITIGRADE in species_traits) - if(!disable_warning) - H << "The footwear around here isn't compatible with your feet!" - return 0 return 1 if(slot_belt) if(H.belt) @@ -631,7 +749,7 @@ return 0 if(I.slot_flags & SLOT_DENYPOCKET) return - if( I.w_class <= WEIGHT_CLASS_SMALL || (I.slot_flags & SLOT_POCKET) ) + if( I.w_class <= 2 || (I.slot_flags & SLOT_POCKET) ) return 1 if(slot_r_store) if(I.flags & NODROP) @@ -644,7 +762,7 @@ return 0 if(I.slot_flags & SLOT_DENYPOCKET) return 0 - if( I.w_class <= WEIGHT_CLASS_SMALL || (I.slot_flags & SLOT_POCKET) ) + if( I.w_class <= 2 || (I.slot_flags & SLOT_POCKET) ) return 1 return 0 if(slot_s_store) @@ -660,7 +778,7 @@ if(!disable_warning) H << "You somehow have a suit with no defined allowed items for suit storage, stop that." return 0 - if(I.w_class > WEIGHT_CLASS_BULKY) + if(I.w_class > 4) if(!disable_warning) H << "The [I.name] is too big to attach." //should be src? return 0 @@ -684,9 +802,9 @@ return 0 return 1 if(slot_in_backpack) - if(H.back && istype(H.back, /obj/item/weapon/storage)) - var/obj/item/weapon/storage/B = H.back - if(B.can_be_inserted(I, 1, H)) + if (H.back && istype(H.back, /obj/item/weapon/storage/backpack)) + var/obj/item/weapon/storage/backpack/B = H.back + if(B.contents.len < B.storage_slots && I.w_class <= B.max_w_class) return 1 return 0 return 0 //Unsupported slot @@ -695,7 +813,7 @@ return /datum/species/proc/after_equip_job(datum/job/J, mob/living/carbon/human/H) - H.update_mutant_bodyparts() + return /datum/species/proc/handle_chemicals(datum/reagent/chem, mob/living/carbon/human/H) if(chem.id == exotic_blood) @@ -736,7 +854,7 @@ // nutrition decrease and satiety if (H.nutrition > 0 && H.stat != DEAD && \ - H.dna && H.dna.species && (!(NOHUNGER in H.dna.species.species_traits))) + H.dna && H.dna.species && (!(NOHUNGER in H.dna.species.specflags))) // THEY HUNGER var/hunger_rate = HUNGER_FACTOR if(H.satiety > 0) @@ -760,7 +878,7 @@ if(H.nutrition > NUTRITION_LEVEL_FAT) H.metabolism_efficiency = 1 else if(H.nutrition > NUTRITION_LEVEL_FED && H.satiety > 80) - if(H.metabolism_efficiency != 1.25 && (H.dna && H.dna.species && !(NOHUNGER in H.dna.species.species_traits))) + if(H.metabolism_efficiency != 1.25) H << "You feel vigorous." H.metabolism_efficiency = 1.25 else if(H.nutrition < NUTRITION_LEVEL_STARVING + 50) @@ -823,292 +941,235 @@ /datum/species/proc/handle_mutations_and_radiation(mob/living/carbon/human/H) - if(!(RADIMMUNE in species_traits)) + if(!(RADIMMUNE in specflags)) if(H.radiation) if (H.radiation > 100) - if(!H.weakened) - H.emote("collapse") H.Weaken(10) H << "You feel weak." + H.emote("collapse") + switch(H.radiation) + if(50 to 75) if(prob(5)) - if(!H.weakened) - H.emote("collapse") H.Weaken(3) H << "You feel weak." - + H.emote("collapse") if(prob(15)) - if(!( H.hair_style == "Shaved") || !(H.hair_style == "Bald") || (HAIR in species_traits)) - H << "Your hair starts to \ - fall out in clumps..." - addtimer(src, "go_bald", 50, TIMER_UNIQUE, H) + if(!( H.hair_style == "Shaved") || !(H.hair_style == "Bald") || (HAIR in specflags)) + H << "Your hair starts to fall out in clumps..." + spawn(50) + H.facial_hair_style = "Shaved" + H.hair_style = "Bald" + H.update_hair() if(75 to 100) if(prob(1)) H << "You mutate!" - H.randmutb() + randmutb(H) H.emote("gasp") H.domutcheck() return 0 return 1 -/datum/species/proc/go_bald(mob/living/carbon/human/H) - H.facial_hair_style = "Shaved" - H.hair_style = "Bald" - H.update_hair() - //////////////// // MOVE SPEED // //////////////// /datum/species/proc/movement_delay(mob/living/carbon/human/H) - . = 0 //We start at 0. - var/flight = 0 //Check for flight and flying items - var/flightpack = 0 - var/ignoreslow = 0 - var/gravity = 0 - var/obj/item/device/flightpack/F = H.get_flightpack() - if(istype(F) && F.flight) - flightpack = 1 - if(H.movement_type & FLYING) - flight = 1 + . = 0 - if(!flightpack) //Check for chemicals and innate speedups and slowdowns if we're moving using our body and not a flying suit - if(H.status_flags & GOTTAGOFAST) - . -= 1 - if(H.status_flags & GOTTAGOREALLYFAST) - . -= 2 - . += speedmod + if(H.status_flags & GOTTAGOFAST) + . -= 1 + if(H.status_flags & GOTTAGOREALLYFAST) + . -= 2 - if(H.status_flags & IGNORESLOWDOWN) - ignoreslow = 1 + if(!(H.status_flags & IGNORESLOWDOWN)) + if(!has_gravity(H)) + if(FLYING in specflags) + . += speedmod + return + // If there's no gravity we have the sanic speed of jetpack. + var/obj/item/weapon/tank/jetpack/J = H.back + var/obj/item/clothing/suit/space/hardsuit/C = H.wear_suit + if(!istype(J) && istype(C)) + J = C.jetpack - if(H.has_gravity()) - gravity = 1 - - if(!gravity) - var/obj/item/weapon/tank/jetpack/J = H.back - var/obj/item/clothing/suit/space/hardsuit/C = H.wear_suit - var/obj/item/organ/cyberimp/chest/thrusters/T = H.getorganslot("thrusters") - if(!istype(J) && istype(C)) - J = C.jetpack - if(istype(J) && J.allow_thrust(0.01, H)) //Prevents stacking - . -= 2 - else if(istype(T) && T.allow_thrust(0.01, H)) - . -= 2 - else if(flightpack && F.allow_thrust(0.01, src)) - . -= 1 - - if(flightpack && F.boost) - . -= F.boost_speed - else if(flightpack && F.brake) - . += 2 - - if(!ignoreslow && !flightpack && gravity) - if(H.wear_suit) - . += H.wear_suit.slowdown - if(H.shoes) - . += H.shoes.slowdown - if(H.back) - . += H.back.slowdown - for(var/obj/item/I in H.held_items) - if(I.flags & HANDSLOW) - . += I.slowdown - var/health_deficiency = (100 - H.health + H.staminaloss) - var/hungry = (500 - H.nutrition) / 5 // So overeat would be 100 and default level would be 80 - if(health_deficiency >= 40) - if(flight) - . += (health_deficiency / 75) + if(istype(J) && J.allow_thrust(0.01, H)) + . -= 2 else - . += (health_deficiency / 25) - if((hungry >= 70) && !flight) //Being hungry won't stop you from using flightpack controls/flapping your wings although it probably will in the wing case but who cares. - . += hungry / 50 - if(H.disabilities & FAT) - . += (1.5 - flight) - if(H.bodytemperature < BODYTEMP_COLD_DAMAGE_LIMIT) - . += (BODYTEMP_COLD_DAMAGE_LIMIT - H.bodytemperature) / COLD_SLOWDOWN_FACTOR - return . + var/obj/item/organ/cyberimp/chest/thrusters/T = H.getorganslot("thrusters") + if(istype(T) && T.allow_thrust(0.01, H)) + . -= 2 -////////////////// -// ATTACK PROCS // -////////////////// - -////////////////// -// ATTACK PROCS // -////////////////// - -/datum/species/proc/help(mob/living/carbon/human/user, mob/living/carbon/human/target, datum/martial_art/attacker_style) - if(target.health >= 0 && !(target.status_flags & FAKEDEATH)) - target.help_shake_act(user) - if(target != user) - add_logs(user, target, "shaked") - return 1 - else - var/we_breathe = (!(NOBREATH in user.dna.species.species_traits)) - var/we_lung = user.getorganslot("lungs") - - if(we_breathe && we_lung) - user.do_cpr(target) - else if(we_breathe && !we_lung) - user << "You have no lungs to breathe with, so you cannot peform CPR." else - user << "You do not breathe, so you cannot perform CPR." + var/health_deficiency = (100 - H.health + H.staminaloss) + if(health_deficiency >= 40) + . += (health_deficiency / 25) -/datum/species/proc/grab(mob/living/carbon/human/user, mob/living/carbon/human/target, datum/martial_art/attacker_style) - if(target.check_block()) - target.visible_message("[target] blocks [user]'s grab attempt!") - return 0 - if(attacker_style && attacker_style.grab_act(user,target)) - return 1 - else - target.grabbedby(user) - return 1 + var/hungry = (500 - H.nutrition) / 5 // So overeat would be 100 and default level would be 80 + if(hungry >= 70) + . += hungry / 50 + + if(H.wear_suit) + . += H.wear_suit.slowdown + if(H.shoes) + . += H.shoes.slowdown + if(H.back) + . += H.back.slowdown + if(H.l_hand && (H.l_hand.flags & HANDSLOW)) + . += H.l_hand.slowdown + if(H.r_hand && (H.r_hand.flags & HANDSLOW)) + . += H.r_hand.slowdown + + if((H.disabilities & FAT)) + . += 1.5 + if(H.bodytemperature < BODYTEMP_COLD_DAMAGE_LIMIT) + . += (BODYTEMP_COLD_DAMAGE_LIMIT - H.bodytemperature) / COLD_SLOWDOWN_FACTOR + + if(!(FLYING in specflags)) + var/leg_amount = H.get_num_legs() + . += 6 - 3*leg_amount //the fewer the legs, the slower the mob + if(!leg_amount) + . += 6 - 3*H.get_num_arms() //crawling is harder with fewer arms + . += speedmod +////////////////// +// ATTACK PROCS // +////////////////// +/datum/species/proc/spec_attack_hand(mob/living/carbon/human/M, mob/living/carbon/human/H) -/datum/species/proc/harm(mob/living/carbon/human/user, mob/living/carbon/human/target, datum/martial_art/attacker_style) - if(target.check_block()) - target.visible_message("[target] blocks [user]'s attack!") - return 0 - if(attacker_style && attacker_style.harm_act(user,target)) - return 1 - else - - var/atk_verb = user.dna.species.attack_verb - if(target.lying) - atk_verb = "kick" - - switch(atk_verb) - if("kick") - user.do_attack_animation(target, ATTACK_EFFECT_KICK) - if("slash") - user.do_attack_animation(target, ATTACK_EFFECT_CLAW) - if("smash") - user.do_attack_animation(target, ATTACK_EFFECT_SMASH) - else - user.do_attack_animation(target, ATTACK_EFFECT_PUNCH) - - var/damage = rand(user.dna.species.punchdamagelow, user.dna.species.punchdamagehigh) - - var/obj/item/bodypart/affecting = target.get_bodypart(ran_zone(user.zone_selected)) - - if(!damage || !affecting) - playsound(target.loc, user.dna.species.miss_sound, 25, 1, -1) - target.visible_message("[user] has attempted to [atk_verb] [target]!",\ - "[user] has attempted to [atk_verb] [target]!", null, COMBAT_MESSAGE_RANGE) - return 0 - - - var/armor_block = target.run_armor_check(affecting, "melee") - - playsound(target.loc, user.dna.species.attack_sound, 25, 1, -1) - - target.visible_message("[user] has [atk_verb]ed [target]!", \ - "[user] has [atk_verb]ed [target]!", null, COMBAT_MESSAGE_RANGE) - - if(user.limb_destroyer) - target.dismembering_strike(user, affecting.body_zone) - target.apply_damage(damage, BRUTE, affecting, armor_block) - add_logs(user, target, "punched") - if((target.stat != DEAD) && damage >= user.dna.species.punchstunthreshold) - target.visible_message("[user] has weakened [target]!", \ - "[user] has weakened [target]!") - target.apply_effect(4, WEAKEN, armor_block) - target.forcesay(hit_appends) - else if(target.lying) - target.forcesay(hit_appends) - - - -/datum/species/proc/disarm(mob/living/carbon/human/user, mob/living/carbon/human/target, datum/martial_art/attacker_style) - if(target.check_block()) - target.visible_message("[target] blocks [user]'s disarm attempt!") - return 0 - if(attacker_style && attacker_style.disarm_act(user,target)) - return 1 - else - user.do_attack_animation(target, ATTACK_EFFECT_DISARM) - add_logs(user, target, "disarmed") - - if(target.w_uniform) - target.w_uniform.add_fingerprint(user) - var/obj/item/bodypart/affecting = target.get_bodypart(ran_zone(user.zone_selected)) - var/randn = rand(1, 100) - if(randn <= 25) - playsound(target, 'sound/weapons/thudswoosh.ogg', 50, 1, -1) - target.visible_message("[user] has pushed [target]!", - "[user] has pushed [target]!", null, COMBAT_MESSAGE_RANGE) - target.apply_effect(2, WEAKEN, target.run_armor_check(affecting, "melee", "Your armor prevents your fall!", "Your armor softens your fall!")) - target.forcesay(hit_appends) - return - - var/talked = 0 // BubbleWrap - - if(randn <= 60) - //BubbleWrap: Disarming breaks a pull - if(target.pulling) - target << "[user] has broken [target]'s grip on [target.pulling]!" - talked = 1 - target.stop_pulling() - //End BubbleWrap - - if(!talked) //BubbleWrap - if(target.drop_item()) - target.visible_message("[user] has disarmed [target]!", \ - "[user] has disarmed [target]!", null, COMBAT_MESSAGE_RANGE) - playsound(target, 'sound/weapons/thudswoosh.ogg', 50, 1, -1) - return - - - playsound(target, 'sound/weapons/punchmiss.ogg', 25, 1, -1) - target.visible_message("[user] attempted to disarm [target]!", \ - "[user] attemped to disarm [target]!", null, COMBAT_MESSAGE_RANGE) - - - -/datum/species/proc/spec_hitby(atom/movable/AM, mob/living/carbon/human/H) - return - -/datum/species/proc/spec_attack_hand(mob/living/carbon/human/M, mob/living/carbon/human/H, datum/martial_art/attacker_style = M.martial_art) - if(!istype(M)) - return CHECK_DNA_AND_SPECIES(M) CHECK_DNA_AND_SPECIES(H) if(!istype(M)) //sanity check for drones. return - if((M != H) && M.a_intent != INTENT_HELP && H.check_shields(0, M.name, attack_type = UNARMED_ATTACK)) + if((M != H) && M.a_intent != "help" && H.check_shields(0, M.name, attack_type = UNARMED_ATTACK)) add_logs(M, H, "attempted to touch") H.visible_message("[M] attempted to touch [H]!") return 0 + + var/datum/martial_art/attacker_style = M.martial_art + switch(M.a_intent) if("help") - help(M, H, attacker_style) + if(H.health >= 0 && !(H.status_flags & FAKEDEATH)) + H.help_shake_act(M) + if(H != M) + add_logs(M, H, "shaked") + return 1 + else + var/we_breathe = (!(NOBREATH in M.dna.species.specflags)) + var/we_lung = M.getorganslot("lungs") + + if(we_breathe && we_lung) + M.do_cpr(H) + else if(we_breathe && !we_lung) + M << "You have no lungs to breathe with, so you cannot peform CPR." + else + M << "You do not breathe, so you cannot perform CPR." if("grab") - grab(M, H, attacker_style) + if(attacker_style && attacker_style.grab_act(M,H)) + return 1 + else + H.grabbedby(M) + return 1 if("harm") - harm(M, H, attacker_style) + if(attacker_style && attacker_style.harm_act(M,H)) + return 1 + else + M.do_attack_animation(H) + var/atk_verb = M.dna.species.attack_verb + if(H.lying) + atk_verb = "kick" + + var/damage = rand(M.dna.species.punchdamagelow, M.dna.species.punchdamagehigh) + + var/obj/item/bodypart/affecting = H.get_bodypart(ran_zone(M.zone_selected)) + + if(!damage || !affecting) + playsound(H.loc, M.dna.species.miss_sound, 25, 1, -1) + H.visible_message("[M] has attempted to [atk_verb] [H]!") + return 0 + + + var/armor_block = H.run_armor_check(affecting, "melee") + + playsound(H.loc, M.dna.species.attack_sound, 25, 1, -1) + + H.visible_message("[M] has [atk_verb]ed [H]!", \ + "[M] has [atk_verb]ed [H]!") + + H.apply_damage(damage, BRUTE, affecting, armor_block) + add_logs(M, H, "punched") + if((H.stat != DEAD) && damage >= M.dna.species.punchstunthreshold) + H.visible_message("[M] has weakened [H]!", \ + "[M] has weakened [H]!") + H.apply_effect(4, WEAKEN, armor_block) + H.forcesay(hit_appends) + else if(H.lying) + H.forcesay(hit_appends) if("disarm") - disarm(M, H, attacker_style) + if(attacker_style && attacker_style.disarm_act(M,H)) + return 1 + else + M.do_attack_animation(H) + add_logs(M, H, "disarmed") -/datum/species/proc/spec_attacked_by(obj/item/I, mob/living/user, obj/item/bodypart/affecting, intent, mob/living/carbon/human/H) + if(H.w_uniform) + H.w_uniform.add_fingerprint(M) + var/obj/item/bodypart/affecting = H.get_bodypart(ran_zone(M.zone_selected)) + var/randn = rand(1, 100) + if(randn <= 25) + playsound(H, 'sound/weapons/thudswoosh.ogg', 50, 1, -1) + H.visible_message("[M] has pushed [H]!", + "[M] has pushed [H]!") + H.apply_effect(2, WEAKEN, H.run_armor_check(affecting, "melee", "Your armor prevents your fall!", "Your armor softens your fall!")) + H.forcesay(hit_appends) + return + + var/talked = 0 // BubbleWrap + + if(randn <= 60) + //BubbleWrap: Disarming breaks a pull + if(H.pulling) + H.visible_message("[M] has broken [H]'s grip on [H.pulling]!") + talked = 1 + H.stop_pulling() + //End BubbleWrap + + if(!talked) //BubbleWrap + if(H.drop_item()) + H.visible_message("[M] has disarmed [H]!", \ + "[M] has disarmed [H]!") + playsound(H, 'sound/weapons/thudswoosh.ogg', 50, 1, -1) + return + + + playsound(H, 'sound/weapons/punchmiss.ogg', 25, 1, -1) + H.visible_message("[M] attempted to disarm [H]!", \ + "[M] attemped to disarm [H]!") + return + +/datum/species/proc/spec_attacked_by(obj/item/I, mob/living/user, obj/item/bodypart/affecting, intent, target_area, mob/living/carbon/human/H) // Allows you to put in item-specific reactions based on species if(user != H) + user.do_attack_animation(H) if(H.check_shields(I.force, "the [I.name]", I, MELEE_ATTACK, I.armour_penetration)) return 0 - if(H.check_block()) - H.visible_message("[H] blocks [I]!") - return 0 var/hit_area if(!affecting) //Something went wrong. Maybe the limb is missing? - affecting = H.bodyparts[1] + H.visible_message("[user] has attempted to attack [H] with [I]!", \ + "[user] has attempted to attack [H] with [I]!") + playsound(H, 'sound/weapons/punchmiss.ogg', 25, 1, -1) + return 0 hit_area = affecting.name var/def_zone = affecting.body_zone @@ -1119,7 +1180,6 @@ var/weakness = H.check_weakness(I, user) apply_damage(I.force * weakness, I.damtype, def_zone, armor_block, H) - H.damage_clothes(I.force, I.damtype, "melee", affecting.body_zone) H.send_item_attack_message(I, user, hit_area) @@ -1128,14 +1188,14 @@ //dismemberment var/probability = I.get_dismemberment_chance(affecting) - if(prob(probability) || ((EASYDISMEMBER in species_traits) && prob(2*probability))) + if(prob(probability) || ((EASYDISMEMBER in specflags) && prob(2*probability))) if(affecting.dismember(I.damtype)) I.add_mob_blood(H) playsound(get_turf(H), I.get_dismember_sound(), 80, 1) var/bloody = 0 if(((I.damtype == BRUTE) && I.force && prob(25 + (I.force * 2)))) - if(affecting.status == BODYPART_ORGANIC) + if(affecting.status == ORGAN_ORGANIC) I.add_mob_blood(H) //Make the weapon bloody, not the person. if(prob(I.force * 2)) //blood spatter! bloody = 1 @@ -1146,15 +1206,13 @@ user.add_mob_blood(H) switch(hit_area) - if("head") + if("head") //Harder to score a stun but if you do it lasts a bit longer if(H.stat == CONSCIOUS && armor_block < 50) if(prob(I.force)) - H.visible_message("[H] has been knocked senseless!", \ - "[H] has been knocked senseless!") - H.confused = max(H.confused, 20) - H.adjust_blurriness(10) - - if(prob(I.force + ((100 - H.health)/2)) && H != user) + H.visible_message("[H] has been knocked unconscious!", \ + "[H] has been knocked unconscious!") + H.apply_effect(20, PARALYZE, armor_block) + if(prob(I.force + ((100 - H.health)/2)) && H != user && I.damtype == BRUTE) ticker.mode.remove_revolutionary(H.mind) if(bloody) //Apply blood @@ -1168,12 +1226,11 @@ H.glasses.add_mob_blood(H) H.update_inv_glasses() - if("chest") - if(H.stat == CONSCIOUS && armor_block < 50) - if(prob(I.force)) - H.visible_message("[H] has been knocked down!", \ + if("chest") //Easier to score a stun but lasts less time + if(H.stat == CONSCIOUS && I.force && prob(I.force + 10)) + H.visible_message("[H] has been knocked down!", \ "[H] has been knocked down!") - H.apply_effect(3, WEAKEN, armor_block) + H.apply_effect(5, WEAKEN, armor_block) if(bloody) if(H.wear_suit) @@ -1188,66 +1245,261 @@ return TRUE /datum/species/proc/apply_damage(damage, damagetype = BRUTE, def_zone = null, blocked, mob/living/carbon/human/H) - var/hit_percent = (100-(blocked+armor))/100 - if(!damage || hit_percent <= 0) + blocked = (100-(blocked+armor))/100 + if(!damage || blocked <= 0) return 0 - var/obj/item/bodypart/BP = null + var/obj/item/bodypart/organ = null if(islimb(def_zone)) - BP = def_zone + organ = def_zone else if(!def_zone) def_zone = ran_zone(def_zone) - BP = H.get_bodypart(check_zone(def_zone)) - if(!BP) - BP = H.bodyparts[1] + organ = H.get_bodypart(check_zone(def_zone)) + if(!organ) + return 0 + + damage = (damage * blocked) switch(damagetype) if(BRUTE) H.damageoverlaytemp = 20 - if(BP) - if(BP.receive_damage(damage * hit_percent * brutemod, 0)) - H.update_damage_overlays() - else//no bodypart, we deal damage with a more general method. - H.adjustBruteLoss(damage * hit_percent * brutemod) + if(organ.take_damage(damage*brutemod, 0)) + H.update_damage_overlays(0) if(BURN) H.damageoverlaytemp = 20 - if(BP) - if(BP.receive_damage(0, damage * hit_percent * burnmod)) - H.update_damage_overlays() - else - H.adjustFireLoss(damage * hit_percent* burnmod) + if(organ.take_damage(0, damage*burnmod)) + H.update_damage_overlays(0) if(TOX) - H.adjustToxLoss(damage * hit_percent) + H.adjustToxLoss(damage) if(OXY) - H.adjustOxyLoss(damage * hit_percent) + H.adjustOxyLoss(damage) if(CLONE) - H.adjustCloneLoss(damage * hit_percent) + H.adjustCloneLoss(damage) if(STAMINA) - H.adjustStaminaLoss(damage * hit_percent) + H.adjustStaminaLoss(damage) return 1 -/datum/species/proc/on_hit(obj/item/projectile/P, mob/living/carbon/human/H) +/datum/species/proc/on_hit(obj/item/projectile/proj_type, mob/living/carbon/human/H) // called when hit by a projectile - switch(P.type) + switch(proj_type) if(/obj/item/projectile/energy/floramut) // overwritten by plants/pods H.show_message("The radiation beam dissipates harmlessly through your body.") if(/obj/item/projectile/energy/florayield) H.show_message("The radiation beam dissipates harmlessly through your body.") return -/datum/species/proc/bullet_act(obj/item/projectile/P, mob/living/carbon/human/H) - // called before a projectile hit - return 0 - ///////////// //BREATHING// ///////////// /datum/species/proc/breathe(mob/living/carbon/human/H) - if(NOBREATH in species_traits) + if(NOBREATH in specflags) return TRUE +/datum/species/proc/check_breath(datum/gas_mixture/breath, var/mob/living/carbon/human/H) + if((H.status_flags & GODMODE)) + return + + var/lungs = H.getorganslot("lungs") + + if(!breath || (breath.total_moles() == 0) || !lungs) + if(H.reagents.has_reagent("epinephrine") && lungs) + return + if(H.health >= config.health_threshold_crit) + H.adjustOxyLoss(HUMAN_MAX_OXYLOSS) + if(!lungs) + H.adjustOxyLoss(1) + else if(!(NOCRITDAMAGE in specflags)) + H.adjustOxyLoss(HUMAN_CRIT_MAX_OXYLOSS) + + H.failed_last_breath = 1 + if(safe_oxygen_min) + H.throw_alert("oxy", /obj/screen/alert/oxy) + else if(safe_toxins_min) + H.throw_alert("not_enough_tox", /obj/screen/alert/not_enough_tox) + else if(safe_co2_min) + H.throw_alert("not_enough_co2", /obj/screen/alert/not_enough_co2) + return 0 + + var/gas_breathed = 0 + + var/list/breath_gases = breath.gases + + breath.assert_gases("o2", "plasma", "co2", "n2o", "bz") + + //Partial pressures in our breath + var/O2_pp = breath.get_breath_partial_pressure(breath_gases["o2"][MOLES]) + var/Toxins_pp = breath.get_breath_partial_pressure(breath_gases["plasma"][MOLES]) + var/CO2_pp = breath.get_breath_partial_pressure(breath_gases["co2"][MOLES]) + + + //-- OXY --// + + //Too much oxygen! //Yes, some species may not like it. + if(safe_oxygen_max) + if(O2_pp > safe_oxygen_max && !(NOBREATH in specflags)) + var/ratio = (breath_gases["o2"][MOLES]/safe_oxygen_max) * 10 + H.adjustOxyLoss(Clamp(ratio,oxy_breath_dam_min,oxy_breath_dam_max)) + H.throw_alert("too_much_oxy", /obj/screen/alert/too_much_oxy) + else + H.clear_alert("too_much_oxy") + + //Too little oxygen! + if(safe_oxygen_min) + if(O2_pp < safe_oxygen_min) + gas_breathed = handle_too_little_breath(H,O2_pp,safe_oxygen_min,breath_gases["o2"][MOLES]) + H.throw_alert("oxy", /obj/screen/alert/oxy) + else + H.failed_last_breath = 0 + if(H.getOxyLoss()) + H.adjustOxyLoss(-5) + gas_breathed = breath_gases["o2"][MOLES] + H.clear_alert("oxy") + + //Exhale + breath_gases["o2"][MOLES] -= gas_breathed + breath_gases["co2"][MOLES] += gas_breathed + gas_breathed = 0 + + + //-- CO2 --// + + //CO2 does not affect failed_last_breath. So if there was enough oxygen in the air but too much co2, this will hurt you, but only once per 4 ticks, instead of once per tick. + if(safe_co2_max) + if(CO2_pp > safe_co2_max && !(NOBREATH in specflags)) + if(!H.co2overloadtime) // If it's the first breath with too much CO2 in it, lets start a counter, then have them pass out after 12s or so. + H.co2overloadtime = world.time + else if(world.time - H.co2overloadtime > 120) + H.Paralyse(3) + H.adjustOxyLoss(3) // Lets hurt em a little, let them know we mean business + if(world.time - H.co2overloadtime > 300) // They've been in here 30s now, lets start to kill them for their own good! + H.adjustOxyLoss(8) + H.throw_alert("too_much_co2", /obj/screen/alert/too_much_co2) + if(prob(20)) // Lets give them some chance to know somethings not right though I guess. + H.emote("cough") + + else + H.co2overloadtime = 0 + H.clear_alert("too_much_co2") + + //Too little CO2! + if(safe_co2_min) + if(CO2_pp < safe_co2_min) + gas_breathed = handle_too_little_breath(H,CO2_pp, safe_co2_min,breath_gases["co2"][MOLES]) + H.throw_alert("not_enough_co2", /obj/screen/alert/not_enough_co2) + else + H.failed_last_breath = 0 + H.adjustOxyLoss(-5) + gas_breathed = breath_gases["co2"][MOLES] + H.clear_alert("not_enough_co2") + + //Exhale + breath_gases["co2"][MOLES] -= gas_breathed + breath_gases["o2"][MOLES] += gas_breathed + gas_breathed = 0 + + + //-- TOX --// + + //Too much toxins! + if(safe_toxins_max) + if(Toxins_pp > safe_toxins_max && !(NOBREATH in specflags)) + var/ratio = (breath_gases["plasma"][MOLES]/safe_toxins_max) * 10 + if(H.reagents) + H.reagents.add_reagent("plasma", Clamp(ratio, tox_breath_dam_min, tox_breath_dam_max)) + H.throw_alert("tox_in_air", /obj/screen/alert/tox_in_air) + else + H.clear_alert("tox_in_air") + + + //Too little toxins! + if(safe_toxins_min) + if(Toxins_pp < safe_toxins_min && !(NOBREATH in specflags)) + gas_breathed = handle_too_little_breath(H,Toxins_pp, safe_toxins_min, breath_gases["plasma"][MOLES]) + H.throw_alert("not_enough_tox", /obj/screen/alert/not_enough_tox) + else + H.failed_last_breath = 0 + H.adjustOxyLoss(-5) + gas_breathed = breath_gases["plasma"][MOLES] + H.clear_alert("not_enough_tox") + + //Exhale + breath_gases["plasma"][MOLES] -= gas_breathed + breath_gases["co2"][MOLES] += gas_breathed + gas_breathed = 0 + + + //-- TRACES --// + + if(breath && !(NOBREATH in specflags)) // If there's some other shit in the air lets deal with it here. + + // N2O + + var/SA_pp = breath.get_breath_partial_pressure(breath_gases["n2o"][MOLES]) + if(SA_pp > SA_para_min) // Enough to make us paralysed for a bit + H.Paralyse(3) // 3 gives them one second to wake up and run away a bit! + if(SA_pp > SA_sleep_min) // Enough to make us sleep as well + H.Sleeping(max(H.sleeping+2, 10)) + else if(SA_pp > 0.01) // There is sleeping gas in their lungs, but only a little, so give them a bit of a warning + if(prob(20)) + H.emote(pick("giggle", "laugh")) + + // BZ + + var/bz_pp = breath.get_breath_partial_pressure(breath_gases["bz"][MOLES]) + if(bz_pp > BZ_trip_balls_min) + H.hallucination += 20 + if(prob(33)) + H.adjustBrainLoss(3) + else if(bz_pp > 0.01) + H.hallucination += 5//Removed at 2 per tick so this will slowly build up + handle_breath_temperature(breath, H) + breath.garbage_collect() + + return 1 + + +//Returns the amount of true_pp we breathed +/datum/species/proc/handle_too_little_breath(mob/living/carbon/human/H = null,breath_pp = 0, safe_breath_min = 0, true_pp = 0) + . = 0 + if(!H || !safe_breath_min) //the other args are either: Ok being 0 or Specifically handled. + return 0 + + if(!(NOBREATH in specflags) || (H.health <= config.health_threshold_crit)) + if(prob(20)) + H.emote("gasp") + if(breath_pp > 0) + var/ratio = safe_breath_min/breath_pp + H.adjustOxyLoss(min(5*ratio, HUMAN_MAX_OXYLOSS)) // Don't fuck them up too fast (space only does HUMAN_MAX_OXYLOSS after all! + H.failed_last_breath = 1 + . = true_pp*ratio/6 + else + H.adjustOxyLoss(HUMAN_MAX_OXYLOSS) + H.failed_last_breath = 1 + + +/datum/species/proc/handle_breath_temperature(datum/gas_mixture/breath, mob/living/carbon/human/H) // called by human/life, handles temperatures + if(abs(310.15 - breath.temperature) > 50) + + if(!(mutations_list[COLDRES] in H.dna.mutations)) // COLD DAMAGE + switch(breath.temperature) + if(-INFINITY to 120) + H.apply_damage(COLD_GAS_DAMAGE_LEVEL_3, BURN, "head") + if(120 to 200) + H.apply_damage(COLD_GAS_DAMAGE_LEVEL_2, BURN, "head") + if(200 to 260) + H.apply_damage(COLD_GAS_DAMAGE_LEVEL_1, BURN, "head") + + if(!(RESISTTEMP in specflags)) // HEAT DAMAGE + switch(breath.temperature) + if(360 to 400) + H.apply_damage(HEAT_GAS_DAMAGE_LEVEL_1, BURN, "head") + if(400 to 1000) + H.apply_damage(HEAT_GAS_DAMAGE_LEVEL_2, BURN, "head") + if(1000 to INFINITY) + H.apply_damage(HEAT_GAS_DAMAGE_LEVEL_3, BURN, "head") + /datum/species/proc/handle_environment(datum/gas_mixture/environment, mob/living/carbon/human/H) if(!environment) return @@ -1274,7 +1526,7 @@ H.bodytemperature += min((1-thermal_protection) * ((loc_temp - H.bodytemperature) / BODYTEMP_HEAT_DIVISOR), BODYTEMP_HEATING_MAX) // +/- 50 degrees from 310.15K is the 'safe' zone, where no damage is dealt. - if(H.bodytemperature > BODYTEMP_HEAT_DAMAGE_LIMIT && !(RESISTHOT in species_traits)) + if(H.bodytemperature > BODYTEMP_HEAT_DAMAGE_LIMIT && !(RESISTTEMP in specflags)) //Body temperature is too hot. switch(H.bodytemperature) if(360 to 400) @@ -1313,7 +1565,7 @@ var/adjusted_pressure = H.calculate_affecting_pressure(pressure) //Returns how much pressure actually affects the mob. switch(adjusted_pressure) if(HAZARD_HIGH_PRESSURE to INFINITY) - if(!(RESISTPRESSURE in species_traits)) + if(!(RESISTTEMP in specflags)) H.adjustBruteLoss( min( ( (adjusted_pressure / HAZARD_HIGH_PRESSURE) -1 )*PRESSURE_DAMAGE_COEFFICIENT , MAX_HIGH_PRESSURE_DAMAGE) ) H.throw_alert("pressure", /obj/screen/alert/highpressure, 2) else @@ -1325,7 +1577,7 @@ if(HAZARD_LOW_PRESSURE to WARNING_LOW_PRESSURE) H.throw_alert("pressure", /obj/screen/alert/lowpressure, 1) else - if(H.dna.check_mutation(COLDRES) || (RESISTPRESSURE in species_traits)) + if(H.dna.check_mutation(COLDRES) || (RESISTTEMP in specflags)) H.clear_alert("pressure") else H.adjustBruteLoss( LOW_PRESSURE_DAMAGE ) @@ -1336,11 +1588,11 @@ ////////// /datum/species/proc/handle_fire(mob/living/carbon/human/H) - if(NOFIRE in species_traits) + if((RESISTTEMP in specflags) || (NOFIRE in specflags)) return 1 /datum/species/proc/CanIgniteMob(mob/living/carbon/human/H) - if(NOFIRE in species_traits) + if((RESISTTEMP in specflags) || (NOFIRE in specflags)) return FALSE return TRUE @@ -1359,13 +1611,16 @@ //Space Move// ////////////// -/datum/species/proc/space_move(mob/living/carbon/human/H) +/datum/species/proc/space_move() return 0 -/datum/species/proc/negates_gravity(mob/living/carbon/human/H) +/datum/species/proc/negates_gravity() return 0 +#undef HUMAN_MAX_OXYLOSS +#undef HUMAN_CRIT_MAX_OXYLOSS + #undef HEAT_DAMAGE_LEVEL_1 #undef HEAT_DAMAGE_LEVEL_2 #undef HEAT_DAMAGE_LEVEL_3 @@ -1373,3 +1628,11 @@ #undef COLD_DAMAGE_LEVEL_1 #undef COLD_DAMAGE_LEVEL_2 #undef COLD_DAMAGE_LEVEL_3 + +#undef HEAT_GAS_DAMAGE_LEVEL_1 +#undef HEAT_GAS_DAMAGE_LEVEL_2 +#undef HEAT_GAS_DAMAGE_LEVEL_3 + +#undef COLD_GAS_DAMAGE_LEVEL_1 +#undef COLD_GAS_DAMAGE_LEVEL_2 +#undef COLD_GAS_DAMAGE_LEVEL_3 diff --git a/code/modules/mob/living/carbon/human/species_types.dm b/code/modules/mob/living/carbon/human/species_types.dm index 6e112b4192..e5340e98bc 100644 --- a/code/modules/mob/living/carbon/human/species_types.dm +++ b/code/modules/mob/living/carbon/human/species_types.dm @@ -3,30 +3,47 @@ */ /datum/species/human + roundstart = 1 name = "Human" id = "human" default_color = "FFFFFF" - species_traits = list(EYECOLOR,HAIR,FACEHAIR,LIPS) - mutant_bodyparts = list("tail_human", "ears", "wings") - default_features = list("mcolor" = "FFF", "tail_human" = "None", "ears" = "None", "wings" = "None") + specflags = list(MUTCOLORS_PARTSONLY,EYECOLOR,HAIR,FACEHAIR,LIPS) + mutant_bodyparts = list("tail_human", "ears") + default_features = list("tail_human" = "None", "ears" = "None") use_skintones = 1 skinned_type = /obj/item/stack/sheet/animalhide/human - +/* /datum/species/human/qualifies_for_rank(rank, list/features) if((!features["tail_human"] || features["tail_human"] == "None") && (!features["ears"] || features["ears"] == "None")) - return TRUE //Pure humans are always allowed in all roles. - return ..() + return 1 //Pure humans are always allowed in all roles. + + //Mutants are not allowed in most roles. + if(rank in security_positions) //This list does not include lawyers. + return 0 + if(rank in science_positions) + return 0 + if(rank in medical_positions) + return 0 + if(rank in engineering_positions) + return 0 + if(rank == "Quartermaster") //QM is not contained in command_positions but we still want to bar mutants from it. + return 0 + return ..()*/ + + +/datum/species/human/handle_chemicals(datum/reagent/chem, mob/living/carbon/human/H) + if(chem.id == "mutationtoxin") + H << "Your flesh rapidly mutates!" + H.set_species(/datum/species/jelly/slime) + H.reagents.del_reagent(chem.type) + return 1 //Curiosity killed the cat's wagging tail. /datum/species/human/spec_death(gibbed, mob/living/carbon/human/H) if(H) H.endTailWag() -/datum/species/human/space_move(mob/living/carbon/human/H) - var/obj/item/device/flightpack/F = H.get_flightpack() - if(istype(F) && (F.flight) && F.allow_thrust(0.01, src)) - return TRUE /* LIZARDPEOPLE */ @@ -37,10 +54,11 @@ id = "lizard" say_mod = "hisses" default_color = "00FF00" - species_traits = list(MUTCOLORS,EYECOLOR,LIPS) - mutant_bodyparts = list("tail_lizard", "snout", "spines", "horns", "frills", "body_markings", "legs") - mutant_organs = list(/obj/item/organ/tongue/lizard) - default_features = list("mcolor" = "0F0", "tail" = "Smooth", "snout" = "Round", "horns" = "None", "frills" = "None", "spines" = "None", "body_markings" = "None", "legs" = "Normal Legs") + roundstart = 1 + specflags = list(MUTCOLORS,EYECOLOR,LIPS,HAIR,FACEHAIR) + mutant_bodyparts = list("tail_lizard", "snout", "spines", "horns", "frills", "body_markings") + //mutant_organs = list(/obj/item/organ/tongue/lizard) (No more hissing) + default_features = list("mcolor" = "0F0","mcolor2" = "0F0","mcolor3" = "0F0", "tail" = "Smooth", "snout" = "Round", "horns" = "None", "frills" = "None", "spines" = "None", "body_markings" = "None") attack_verb = "slash" attack_sound = 'sound/weapons/slash.ogg' miss_sound = 'sound/weapons/slashmiss.ogg' @@ -69,19 +87,19 @@ */ /datum/species/lizard/ashwalker name = "Ash Walker" - id = "ashlizard" - limbs_id = "lizard" - species_traits = list(MUTCOLORS,EYECOLOR,LIPS,NOBREATH,NOGUNS,DIGITIGRADE) + id = "lizard" + specflags = list(MUTCOLORS,EYECOLOR,LIPS,NOBREATH,NOGUNS) /* PODPEOPLE */ /datum/species/pod // A mutation caused by a human being ressurected in a revival pod. These regain health in light, and begin to wither in darkness. + roundstart = 1 name = "Podperson" id = "pod" default_color = "59CE00" - species_traits = list(MUTCOLORS,EYECOLOR) + specflags = list(MUTCOLORS,EYECOLOR) attack_verb = "slash" attack_sound = 'sound/weapons/slice.ogg' miss_sound = 'sound/weapons/slashmiss.ogg' @@ -89,15 +107,6 @@ heatmod = 1.5 meat = /obj/item/weapon/reagent_containers/food/snacks/meat/slab/human/mutant/plant -/datum/species/pod/on_species_gain(mob/living/carbon/C, datum/species/old_species) - . = ..() - C.faction |= "plants" - C.faction |= "vines" - -/datum/species/pod/on_species_loss(mob/living/carbon/C) - . = ..() - C.faction -= "plants" - C.faction -= "vines" /datum/species/pod/spec_life(mob/living/carbon/human/H) if(H.stat == DEAD) @@ -123,23 +132,25 @@ H.reagents.remove_reagent(chem.id, REAGENTS_METABOLISM) return 1 -/datum/species/pod/on_hit(obj/item/projectile/P, mob/living/carbon/human/H) - switch(P.type) +/datum/species/pod/on_hit(proj_type, mob/living/carbon/human/H) + switch(proj_type) if(/obj/item/projectile/energy/floramut) if(prob(15)) H.rad_act(rand(30,80)) H.Weaken(5) - H.visible_message("[H] writhes in pain as [H.p_their()] vacuoles boil.", "You writhe in pain as your vacuoles boil!", "You hear the crunching of leaves.") + H.visible_message("[H] writhes in pain as \his vacuoles boil.", "You writhe in pain as your vacuoles boil!", "You hear the crunching of leaves.") if(prob(80)) - H.randmutb() + randmutb(H) else - H.randmutg() + randmutg(H) H.domutcheck() else H.adjustFireLoss(rand(5,15)) H.show_message("The radiation beam singes you!") if(/obj/item/projectile/energy/florayield) H.nutrition = min(H.nutrition+30, NUTRITION_LEVEL_FULL) + return + /* SHADOWPEOPLE @@ -155,36 +166,8 @@ blacklisted = 1 ignored_by = list(/mob/living/simple_animal/hostile/faithless) meat = /obj/item/weapon/reagent_containers/food/snacks/meat/slab/human/mutant/shadow - species_traits = list(NOBREATH,NOBLOOD,RADIMMUNE,VIRUSIMMUNE) + specflags = list(NOBREATH,NOBLOOD,RADIMMUNE,VIRUSIMMUNE) dangerous_existence = 1 - var/datum/action/innate/shadow/darkvision/vision_toggle - -/datum/action/innate/shadow/darkvision //Darkvision toggle so shadowpeople can actually see where darkness is - name = "Toggle Darkvision" - check_flags = AB_CHECK_CONSCIOUS - background_icon_state = "bg_default" - button_icon_state = "blind" - -/datum/action/innate/shadow/darkvision/Activate() - var/mob/living/carbon/human/H = owner - if(H.see_in_dark < 8) - H.see_in_dark = 8 - H.see_invisible = SEE_INVISIBLE_MINIMUM - H << "You adjust your vision to pierce the darkness." - else - H.see_in_dark = 2 - H.see_invisible = SEE_INVISIBLE_LIVING - H << "You adjust your vision to recognize the shadows." - -/datum/species/shadow/on_species_gain(mob/living/carbon/C, datum/species/old_species) - . = ..() - vision_toggle = new - vision_toggle.Grant(C) - -/datum/species/shadow/on_species_loss(mob/living/carbon/C) - . = ..() - if(vision_toggle) - vision_toggle.Remove(C) /datum/species/shadow/spec_life(mob/living/carbon/human/H) var/light_amount = 0 @@ -208,7 +191,7 @@ default_color = "00FF90" say_mod = "chirps" eyes = "jelleyes" - species_traits = list(MUTCOLORS,EYECOLOR,NOBLOOD,VIRUSIMMUNE,TOXINLOVER) + specflags = list(MUTCOLORS,EYECOLOR,HAIR,FACEHAIR,NOBLOOD) meat = /obj/item/weapon/reagent_containers/food/snacks/meat/slab/human/mutant/slime exotic_blood = "slimejelly" var/datum/action/innate/regenerate_limbs/regenerate_limbs @@ -280,17 +263,17 @@ H << "You feel intact enough as it is." return H << "You focus intently on your missing [limbs_to_heal.len >= 2 ? "limbs" : "limb"]..." - if(H.blood_volume >= 40*limbs_to_heal.len+BLOOD_VOLUME_OKAY) + if(H.blood_volume >= 150*limbs_to_heal.len+BLOOD_VOLUME_OKAY) H.regenerate_limbs() - H.blood_volume -= 40*limbs_to_heal.len + H.blood_volume -= 150*limbs_to_heal.len H << "...and after a moment you finish reforming!" return - else if(H.blood_volume >= 40)//We can partially heal some limbs - while(H.blood_volume >= BLOOD_VOLUME_OKAY+40) + else if(H.blood_volume >= 150)//We can partially heal some limbs + while(H.blood_volume >= BLOOD_VOLUME_OKAY+150) var/healed_limb = pick(limbs_to_heal) H.regenerate_limb(healed_limb) limbs_to_heal -= healed_limb - H.blood_volume -= 40 + H.blood_volume -= 150 H << "...but there is not enough of you to fix everything! You must attain more mass to heal completely!" return H << "...but there is not enough of you to go around! You must attain more mass to heal!" @@ -300,23 +283,24 @@ */ /datum/species/jelly/slime - // Humans mutated by slime mutagen, produced from green slimes. They are not targetted by slimes. + // Humans mutated by slime mutagen, produced from green slimes. They are not targeted by slimes. name = "Slimeperson" id = "slime" default_color = "00FFFF" darksight = 3 - species_traits = list(MUTCOLORS,EYECOLOR,HAIR,FACEHAIR,NOBLOOD,VIRUSIMMUNE, TOXINLOVER) + specflags = list(MUTCOLORS,EYECOLOR,HAIR,FACEHAIR,NOBLOOD) say_mod = "says" eyes = "eyes" hair_color = "mutcolor" - hair_alpha = 150 + hair_alpha = 192 ignored_by = list(/mob/living/simple_animal/slime) - burnmod = 0.5 + burnmod = 0.9 coldmod = 2 - heatmod = 0.5 + heatmod = 0.9 var/datum/action/innate/split_body/slime_split var/list/mob/living/carbon/bodies var/datum/action/innate/swap_body/swap_body + roundstart = 1 /datum/species/jelly/slime/on_species_loss(mob/living/carbon/C) if(slime_split) @@ -333,11 +317,6 @@ /datum/species/jelly/slime/on_species_gain(mob/living/carbon/C, datum/species/old_species) ..() if(ishuman(C)) - slime_split = new - slime_split.Grant(C) - swap_body = new - swap_body.Grant(C) - if(!bodies || !bodies.len) bodies = list(C) else @@ -542,14 +521,14 @@ /datum/species/golem // Animated beings of stone. They have increased defenses, and do not need to breathe. They're also slow as fuuuck. name = "Golem" - id = "iron" - species_traits = list(NOBREATH,RESISTHOT,RESISTCOLD,RESISTPRESSURE,NOFIRE,NOGUNS,NOBLOOD,RADIMMUNE,VIRUSIMMUNE,PIERCEIMMUNE,NODISMEMBER,MUTCOLORS) + id = "golem" + specflags = list(NOBREATH,RESISTTEMP,NOGUNS,NOBLOOD,RADIMMUNE,VIRUSIMMUNE,PIERCEIMMUNE,NODISMEMBER,MUTCOLORS) speedmod = 2 armor = 55 siemens_coeff = 0 punchdamagelow = 5 punchdamagehigh = 14 - punchstunthreshold = 11 //about 40% chance to stun + punchstunthreshold = 12 //about 15% chance to stun no_equip = list(slot_wear_mask, slot_wear_suit, slot_gloves, slot_shoes, slot_w_uniform) nojumpsuit = 1 sexes = 1 @@ -560,432 +539,51 @@ dangerous_existence = TRUE limbs_id = "golem" fixed_mut_color = "aaa" - var/info_text = "As an Iron Golem, you don't have any special traits." /datum/species/golem/random name = "Random Golem" blacklisted = FALSE dangerous_existence = FALSE -/datum/species/golem/random/on_species_gain(mob/living/carbon/C, datum/species/old_species) - ..() +/datum/species/golem/random/New() + . = ..() var/list/golem_types = typesof(/datum/species/golem) - src.type var/datum/species/golem/golem_type = pick(golem_types) - var/mob/living/carbon/human/H = C - H.set_species(golem_type) - H << "[initial(golem_type.info_text)]" + name = initial(golem_type.name) + id = initial(golem_type.id) + meat = initial(golem_type.meat) /datum/species/golem/adamantine name = "Adamantine Golem" id = "adamantine" meat = /obj/item/weapon/reagent_containers/food/snacks/meat/slab/human/mutant/golem/adamantine fixed_mut_color = "4ed" - info_text = "As an Adamantine Golem, you don't have any special traits." -//Explodes on death /datum/species/golem/plasma name = "Plasma Golem" id = "plasma" fixed_mut_color = "a3d" - meat = /obj/item/weapon/ore/plasma - //Can burn and takes damage from heat - species_traits = list(NOBREATH,RESISTCOLD,RESISTPRESSURE,NOGUNS,NOBLOOD,RADIMMUNE,VIRUSIMMUNE,PIERCEIMMUNE,NODISMEMBER,MUTCOLORS) - info_text = "As a Plasma Golem, you explode on death!" - burnmod = 1.5 -/datum/species/golem/plasma/spec_death(gibbed, mob/living/carbon/human/H) - explosion(get_turf(H),0,1,2,flame_range = 5) - if(H) - H.gib() - -//Harder to hurt /datum/species/golem/diamond name = "Diamond Golem" id = "diamond" fixed_mut_color = "0ff" - armor = 70 //up from 55 - meat = /obj/item/weapon/ore/diamond - info_text = "As a Diamond Golem, you are more resistant than the average golem." -//Faster but softer and less armoured /datum/species/golem/gold name = "Gold Golem" id = "gold" - fixed_mut_color = "cc0" - speedmod = 1 - armor = 25 //down from 55 - meat = /obj/item/weapon/ore/gold - info_text = "As a Gold Golem, you are faster but less resistant than the average golem." + fixed_mut_color = "ee0" -//Heavier, thus higher chance of stunning when punching /datum/species/golem/silver name = "Silver Golem" id = "silver" fixed_mut_color = "ddd" - punchstunthreshold = 9 //60% chance, from 40% - meat = /obj/item/weapon/ore/silver - info_text = "As a Silver Golem, your attacks are heavier and have a higher chance of stunning." -//Harder to stun, deals more damage, but it's even slower -/datum/species/golem/plasteel - name = "Plasteel Golem" - id = "plasteel" - fixed_mut_color = "bbb" - stunmod = 0.40 - punchdamagelow = 12 - punchdamagehigh = 21 - punchstunthreshold = 18 //still 40% stun chance - speedmod = 4 //pretty fucking slow - meat = /obj/item/weapon/ore/iron - info_text = "As a Plasteel Golem, you are slower, but harder to stun, and hit very hard when punching." - attack_verb = "smash" - attack_sound = "sound/effects/meteorimpact.ogg" //hits pretty hard - -//Immune to ash storms -/datum/species/golem/titanium - name = "Titanium Golem" - id = "titanium" - fixed_mut_color = "fff" - meat = /obj/item/weapon/ore/titanium - info_text = "As a Titanium Golem, you are immune to ash storms, and slightly more resistant to burn damage." - burnmod = 0.9 - -/datum/species/golem/titanium/on_species_gain(mob/living/carbon/C, datum/species/old_species) - . = ..() - C.weather_immunities |= "ash" - -/datum/species/golem/titanium/on_species_loss(mob/living/carbon/C) - . = ..() - C.weather_immunities |= "ash" - -//Immune to ash storms and lava -/datum/species/golem/plastitanium - name = "Plastitanium Golem" - id = "plastitanium" - fixed_mut_color = "888" - meat = /obj/item/weapon/ore/titanium - info_text = "As a Plastitanium Golem, you are immune to both ash storms and lava, and slightly more resistant to burn damage." - burnmod = 0.8 - -/datum/species/golem/plastitanium/on_species_gain(mob/living/carbon/C, datum/species/old_species) - . = ..() - C.weather_immunities |= "lava" - C.weather_immunities |= "ash" - -/datum/species/golem/plastitanium/on_species_loss(mob/living/carbon/C) - . = ..() - C.weather_immunities |= "ash" - C.weather_immunities |= "lava" - -//Fast and regenerates... but can only speak like an abductor -/datum/species/golem/alloy - name = "Alien Alloy Golem" - id = "alloy" - fixed_mut_color = "333" - meat = /obj/item/stack/sheet/mineral/abductor - mutant_organs = list(/obj/item/organ/tongue/abductor) //abductor tongue - speedmod = 1 //faster - info_text = "As an Alloy Golem, you are made of advanced alien materials: you are faster and regenerate over time. You are, however, only able to be heard by other alloy golems." - -//Regenerates because self-repairing super-advanced alien tech -/datum/species/golem/alloy/spec_life(mob/living/carbon/human/H) - if(H.stat == DEAD) - return - H.heal_overall_damage(2,2) - H.adjustToxLoss(-2) - H.adjustOxyLoss(-2) - -//Since this will usually be created from a collaboration between podpeople and free golems, wood golems are a mix between the two races -/datum/species/golem/wood - name = "Wood Golem" - id = "wood" - fixed_mut_color = "49311c" - meat = /obj/item/stack/sheet/mineral/wood - //Can burn and take damage from heat - species_traits = list(NOBREATH,RESISTCOLD,RESISTPRESSURE,NOGUNS,NOBLOOD,RADIMMUNE,VIRUSIMMUNE,PIERCEIMMUNE,NODISMEMBER,MUTCOLORS) - armor = 30 - burnmod = 1.25 - heatmod = 1.5 - info_text = "As a Wooden Golem, you have plant-like traits: you take damage from extreme temperatures, can be set on fire, and have lower armor than a normal golem. You regenerate when in the light and wither in the darkness." - -/datum/species/golem/wood/on_species_gain(mob/living/carbon/C, datum/species/old_species) - . = ..() - C.faction |= "plants" - C.faction |= "vines" - -/datum/species/golem/wood/on_species_loss(mob/living/carbon/C) - . = ..() - C.faction -= "plants" - C.faction -= "vines" - -/datum/species/golem/wood/spec_life(mob/living/carbon/human/H) - if(H.stat == DEAD) - return - var/light_amount = 0 //how much light there is in the place, affects receiving nutrition and healing - if(isturf(H.loc)) //else, there's considered to be no light - var/turf/T = H.loc - light_amount = min(10,T.get_lumcount()) - 5 - H.nutrition += light_amount - if(H.nutrition > NUTRITION_LEVEL_FULL) - H.nutrition = NUTRITION_LEVEL_FULL - if(light_amount > 2) //if there's enough light, heal - H.heal_overall_damage(1,1) - H.adjustToxLoss(-1) - H.adjustOxyLoss(-1) - - if(H.nutrition < NUTRITION_LEVEL_STARVING + 50) - H.take_overall_damage(2,0) - -/datum/species/golem/wood/handle_chemicals(datum/reagent/chem, mob/living/carbon/human/H) - if(chem.id == "plantbgone") - H.adjustToxLoss(3) - H.reagents.remove_reagent(chem.id, REAGENTS_METABOLISM) - return 1 - -//Radioactive /datum/species/golem/uranium name = "Uranium Golem" id = "uranium" fixed_mut_color = "7f0" - meat = /obj/item/weapon/ore/uranium - info_text = "As an Uranium Golem, you emit radiation pulses every once in a while. It won't harm fellow golems, but organic lifeforms will be affected." - var/last_event = 0 - var/active = null - -/datum/species/golem/uranium/spec_life(mob/living/carbon/human/H) - if(!active) - if(world.time > last_event+30) - active = 1 - radiation_pulse(get_turf(H), 3, 3, 5, 0) - last_event = world.time - active = null - ..() - -//Immune to physical bullets and resistant to brute, but very vulnerable to burn damage. Dusts on death. -/datum/species/golem/sand - name = "Sand Golem" - id = "sand" - fixed_mut_color = "ffdc8f" - meat = /obj/item/weapon/ore/glass //this is sand - armor = 0 - burnmod = 3 //melts easily - brutemod = 0.25 - info_text = "As a Sand Golem, you are immune to physical bullets and take very little brute damage, but are extremely vulnerable to burn damage. You will also turn to sand when dying, preventing any form of recovery." - attack_sound = "sound/effects/shovel_dig.ogg" - -/datum/species/golem/sand/spec_death(gibbed, mob/living/carbon/human/H) - H.visible_message("[H] turns into a pile of sand!") - for(var/obj/item/W in H) - H.unEquip(W) - for(var/i=1, i <= rand(3,5), i++) - new /obj/item/weapon/ore/glass(get_turf(H)) - qdel(H) - -/datum/species/golem/sand/bullet_act(obj/item/projectile/P, mob/living/carbon/human/H) - if(!(P.original == H && P.firer == H)) - if(P.flag == "bullet" || P.flag == "bomb") - playsound(H, "sound/effects/shovel_dig.ogg", 70, 1) - H.visible_message("The [P.name] sinks harmlessly in [H]'s sandy body!", \ - "The [P.name] sinks harmlessly in [H]'s sandy body!") - return 2 - return 0 - -//Reflects lasers and resistant to burn damage, but very vulnerable to brute damage. Shatters on death. -/datum/species/golem/glass - name = "Glass Golem" - id = "glass" - fixed_mut_color = "5a96b4aa" //transparent body - meat = /obj/item/weapon/shard - armor = 0 - brutemod = 3 //very fragile - burnmod = 0.25 - info_text = "As a Glass Golem, you reflect lasers and energy weapons, and are very resistant to burn damage, but you are extremely vulnerable to brute damage. On death, you'll shatter beyond any hope of recovery." - attack_sound = "sound/effects/Glassbr2.ogg" - -/datum/species/golem/glass/spec_death(gibbed, mob/living/carbon/human/H) - playsound(H, "shatter", 70, 1) - H.visible_message("[H] shatters!") - for(var/obj/item/W in H) - H.unEquip(W) - for(var/i=1, i <= rand(3,5), i++) - new /obj/item/weapon/shard(get_turf(H)) - qdel(H) - -/datum/species/golem/glass/bullet_act(obj/item/projectile/P, mob/living/carbon/human/H) - if(!(P.original == H && P.firer == H)) //self-shots don't reflect - if(P.flag == "laser" || P.flag == "energy") - H.visible_message("The [P.name] gets reflected by [H]'s glass skin!", \ - "The [P.name] gets reflected by [H]'s glass skin!") - if(P.starting) - var/new_x = P.starting.x + pick(0, 0, 0, 0, 0, -1, 1, -2, 2) - var/new_y = P.starting.y + pick(0, 0, 0, 0, 0, -1, 1, -2, 2) - var/turf/curloc = get_turf(H) - - // redirect the projectile - P.original = locate(new_x, new_y, P.z) - P.starting = curloc - P.current = curloc - P.firer = H - P.yo = new_y - curloc.y - P.xo = new_x - curloc.x - P.Angle = null - return -1 - return 0 - -//Teleports when hit or when it wants to -/datum/species/golem/bluespace - name = "Bluespace Golem" - id = "bluespace" - fixed_mut_color = "33f" - meat = /obj/item/weapon/ore/bluespace_crystal - info_text = "As a Bluespace Golem, are spatially unstable: you will teleport when hit, and you can teleport manually at a long distance." - attack_verb = "bluespace punch" - attack_sound = "sound/effects/phasein.ogg" - - var/datum/action/innate/unstable_teleport/unstable_teleport - var/teleport_cooldown = 100 - var/last_teleport = 0 - -/datum/species/golem/bluespace/proc/reactive_teleport(mob/living/carbon/human/H) - H.visible_message("[H] teleports!", "You destabilize and teleport!") - PoolOrNew(/obj/effect/particle_effect/sparks, get_turf(H)) - playsound(get_turf(H), "sparks", 50, 1) - do_teleport(H, get_turf(H), 6, asoundin = 'sound/weapons/emitter2.ogg') - last_teleport = world.time - -/datum/species/golem/bluespace/spec_hitby(atom/movable/AM, mob/living/carbon/human/H) - ..() - var/obj/item/I - if(istype(AM, /obj/item)) - I = AM - if(I.thrownby == H) //No throwing stuff at yourself to trigger the teleport - return 0 - else - reactive_teleport(H) - -/datum/species/golem/bluespace/spec_attack_hand(mob/living/carbon/human/M, mob/living/carbon/human/H, datum/martial_art/attacker_style = M.martial_art) - ..() - if(world.time > last_teleport + teleport_cooldown && M != H && M.a_intent != INTENT_HELP) - reactive_teleport(H) - -/datum/species/golem/bluespace/spec_attacked_by(obj/item/I, mob/living/user, obj/item/bodypart/affecting, intent, mob/living/carbon/human/H) - ..() - if(world.time > last_teleport + teleport_cooldown && user != H) - reactive_teleport(H) - -/datum/species/golem/bluespace/on_hit(obj/item/projectile/P, mob/living/carbon/human/H) - ..() - if(world.time > last_teleport + teleport_cooldown) - reactive_teleport(H) - -/datum/species/golem/bluespace/on_species_gain(mob/living/carbon/C, datum/species/old_species) - ..() - if(ishuman(C)) - unstable_teleport = new - unstable_teleport.Grant(C) - -/datum/species/golem/bluespace/on_species_loss(mob/living/carbon/C) - if(unstable_teleport) - unstable_teleport.Remove(C) - ..() - -/datum/action/innate/unstable_teleport - name = "Unstable Teleport" - check_flags = AB_CHECK_CONSCIOUS - button_icon_state = "jaunt" - var/cooldown = 150 - var/last_teleport = 0 - -/datum/action/innate/unstable_teleport/IsAvailable() - if(..()) - if(world.time > last_teleport + cooldown) - return 1 - return 0 - -/datum/action/innate/unstable_teleport/Activate() - var/mob/living/carbon/human/H = owner - H.visible_message("[H] starts vibrating!", "You start charging your bluespace core...") - playsound(get_turf(H), 'sound/weapons/flash.ogg', 25, 1) - addtimer(src, "teleport", 15, TIMER_NORMAL, H) - -/datum/action/innate/unstable_teleport/proc/teleport(mob/living/carbon/human/H) - H.visible_message("[H] disappears in a shower of sparks!", "You teleport!") - var/datum/effect_system/spark_spread/spark_system = new /datum/effect_system/spark_spread - spark_system.set_up(10, 0, src) - spark_system.attach(H) - spark_system.start() - do_teleport(H, get_turf(H), 12, asoundin = 'sound/weapons/emitter2.ogg') - last_teleport = world.time - UpdateButtonIcon() //action icon looks unavailable - sleep(cooldown + 5) - UpdateButtonIcon() //action icon looks available again - - -//honk -/datum/species/golem/bananium - name = "Bananium Golem" - id = "bananium" - fixed_mut_color = "ff0" - say_mod = "honks" - punchdamagelow = 0 - punchdamagehigh = 1 - punchstunthreshold = 2 //Harmless and can't stun - meat = /obj/item/weapon/ore/bananium - info_text = "As a Bananium Golem, you are made for pranking. Your body emits natural honks, and you cannot hurt people when punching them. Your skin also emits bananas when damaged." - attack_verb = "honk" - attack_sound = "sound/items/AirHorn2.ogg" - - var/last_honk = 0 - var/honkooldown = 0 - var/last_banana = 0 - var/banana_cooldown = 100 - var/active = null - -/datum/species/golem/bananium/spec_attack_hand(mob/living/carbon/human/M, mob/living/carbon/human/H, datum/martial_art/attacker_style = M.martial_art) - ..() - if(world.time > last_banana + banana_cooldown && M != H && M.a_intent != INTENT_HELP) - new/obj/item/weapon/grown/bananapeel/specialpeel(get_turf(H)) - last_banana = world.time - -/datum/species/golem/bananium/spec_attacked_by(obj/item/I, mob/living/user, obj/item/bodypart/affecting, intent, mob/living/carbon/human/H) - ..() - if(world.time > last_banana + banana_cooldown && user != H) - new/obj/item/weapon/grown/bananapeel/specialpeel(get_turf(H)) - last_banana = world.time - -/datum/species/golem/bananium/on_hit(obj/item/projectile/P, mob/living/carbon/human/H) - ..() - if(world.time > last_banana + banana_cooldown) - new/obj/item/weapon/grown/bananapeel/specialpeel(get_turf(H)) - last_banana = world.time - -/datum/species/golem/bananium/spec_hitby(atom/movable/AM, mob/living/carbon/human/H) - ..() - var/obj/item/I - if(istype(AM, /obj/item)) - I = AM - if(I.thrownby == H) //No throwing stuff at yourself to make bananas - return 0 - else - new/obj/item/weapon/grown/bananapeel/specialpeel(get_turf(H)) - last_banana = world.time - -/datum/species/golem/bananium/spec_life(mob/living/carbon/human/H) - if(!active) - if(world.time > last_honk + honkooldown) - active = 1 - playsound(get_turf(H), 'sound/items/bikehorn.ogg', 50, 1) - last_honk = world.time - honkooldown = rand(20, 80) - active = null - ..() - -/datum/species/golem/bananium/spec_death(gibbed, mob/living/carbon/human/H) - playsound(get_turf(H), 'sound/misc/sadtrombone.ogg', 70, 0) - -/datum/species/golem/bananium/get_spans() - return list(SPAN_CLOWN) /* FLIES @@ -996,6 +594,7 @@ name = "Human?" id = "fly" say_mod = "buzzes" + eyes = "flyeyes" mutant_organs = list(/obj/item/organ/tongue/fly) meat = /obj/item/weapon/reagent_containers/food/snacks/meat/slab/human/mutant/fly @@ -1017,11 +616,6 @@ "You throw up on the floor!") ..() -/datum/species/fly/check_weakness(obj/item/weapon, mob/living/attacker) - if(istype(weapon,/obj/item/weapon/melee/flyswatter)) - return 29 //Flyswatters deal 30x damage to flypeople. - return 0 - /* SKELETONS */ @@ -1034,9 +628,8 @@ blacklisted = 1 sexes = 0 meat = /obj/item/weapon/reagent_containers/food/snacks/meat/slab/human/mutant/skeleton - species_traits = list(NOBREATH,RESISTHOT,RESISTCOLD,RESISTPRESSURE,NOBLOOD,RADIMMUNE,VIRUSIMMUNE,PIERCEIMMUNE,NOHUNGER,EASYDISMEMBER,EASYLIMBATTACHMENT) + specflags = list(NOBREATH,RESISTTEMP,NOBLOOD,RADIMMUNE,VIRUSIMMUNE,PIERCEIMMUNE,NOHUNGER,EASYDISMEMBER,EASYLIMBATTACHMENT) mutant_organs = list(/obj/item/organ/tongue/bone) - damage_overlay_type = ""//let's not show bloody wounds or burns over bones. /* ZOMBIES @@ -1050,20 +643,18 @@ sexes = 0 blacklisted = 1 meat = /obj/item/weapon/reagent_containers/food/snacks/meat/slab/human/mutant/zombie - species_traits = list(NOBREATH,RESISTCOLD,RESISTPRESSURE,NOBLOOD,RADIMMUNE,NOZOMBIE,EASYDISMEMBER,EASYLIMBATTACHMENT,TOXINLOVER) + specflags = list(NOBREATH,RESISTTEMP,NOBLOOD,RADIMMUNE,NOZOMBIE,EASYDISMEMBER,EASYLIMBATTACHMENT, TOXINLOVER) mutant_organs = list(/obj/item/organ/tongue/zombie) + speedmod = 2 /datum/species/zombie/infectious name = "Infectious Zombie" - id = "memezombies" - limbs_id = "zombie" no_equip = list(slot_wear_mask, slot_head) armor = 20 // 120 damage to KO a zombie, which kills it - speedmod = 2 /datum/species/zombie/infectious/spec_life(mob/living/carbon/C) . = ..() - C.a_intent = INTENT_HARM // THE SUFFERING MUST FLOW + C.a_intent = "harm" // THE SUFFERING MUST FLOW if(C.InCritical()) C.death() // Zombies only move around when not in crit, they instantly @@ -1073,9 +664,10 @@ . = ..() // Drop items in hands // If you're a zombie lucky enough to have a NODROP item, then it stays. - for(var/obj/item/I in C.held_items) - C.unEquip(I) - C.put_in_hands(new /obj/item/zombie_hand(C)) + if(C.unEquip(C.l_hand)) + C.put_in_l_hand(new /obj/item/zombie_hand(C)) + if(C.unEquip(C.r_hand)) + C.put_in_r_hand(new /obj/item/zombie_hand(C)) // Next, deal with the source of this zombie corruption var/obj/item/organ/body_egg/zombie_infection/infection @@ -1085,16 +677,18 @@ /datum/species/zombie/infectious/on_species_loss(mob/living/carbon/C) . = ..() - for(var/obj/item/I in C.held_items) - if(istype(I, /obj/item/zombie_hand)) - C.unEquip(I, TRUE) - + var/obj/item/zombie_hand/left = C.l_hand + var/obj/item/zombie_hand/right = C.r_hand + // Deletion of the hands is handled in the items dropped() + if(istype(left)) + C.unEquip(left, TRUE) + if(istype(right)) + C.unEquip(right, TRUE) // Your skin falls off /datum/species/krokodil_addict name = "Human" - id = "goofzombies" - limbs_id = "zombie" //They look like zombies + id = "zombie" sexes = 0 meat = /obj/item/weapon/reagent_containers/food/snacks/meat/slab/human/mutant/zombie mutant_organs = list(/obj/item/organ/tongue/zombie) @@ -1105,7 +699,7 @@ darksight = 3 say_mod = "gibbers" sexes = 0 - species_traits = list(NOBLOOD,NOBREATH,VIRUSIMMUNE,NOGUNS) + specflags = list(NOBLOOD,NOBREATH,VIRUSIMMUNE,NOGUNS) mutant_organs = list(/obj/item/organ/tongue/abductor) var/scientist = 0 // vars to not pollute spieces list with castes var/agent = 0 @@ -1119,15 +713,15 @@ var/global/image/plasmaman_on_fire = image("icon"='icons/mob/OnFire.dmi', "icon_ say_mod = "rattles" sexes = 0 meat = /obj/item/stack/sheet/mineral/plasma - species_traits = list(NOBLOOD,RESISTCOLD,RADIMMUNE,NOTRANSSTING,VIRUSIMMUNE,NOHUNGER) - mutantlungs = /obj/item/organ/lungs/plasmaman + specflags = list(NOBLOOD,RADIMMUNE,NOTRANSSTING,VIRUSIMMUNE,NOHUNGER) + safe_oxygen_min = 0 //We don't breath this + safe_toxins_min = 16 //We breath THIS! + safe_toxins_max = 0 dangerous_existence = 1 //So so much blacklisted = 1 //See above burnmod = 2 heatmod = 2 - breathid = "tox" speedmod = 1 - damage_overlay_type = ""//let's not show bloody wounds or burns over bones. /datum/species/plasmaman/spec_life(mob/living/carbon/human/H) var/datum/gas_mixture/environment = H.loc.return_air() @@ -1151,7 +745,7 @@ var/global/image/plasmaman_on_fire = image("icon"='icons/mob/OnFire.dmi', "icon_ /datum/species/plasmaman/before_equip_job(datum/job/J, mob/living/carbon/human/H, visualsOnly = FALSE) var/datum/outfit/plasmaman/O = new /datum/outfit/plasmaman H.equipOutfit(O, visualsOnly) - H.internal = H.get_item_for_held_index(2) + H.internal = H.r_hand H.update_internals_hud_icon(1) return 0 @@ -1162,31 +756,29 @@ var/global/image/plasmaman_on_fire = image("icon"='icons/mob/OnFire.dmi', "icon_ return 0 return ..() -/datum/species/plasmaman/random_name(gender,unique,lastname) - if(unique) - return random_unique_plasmaman_name() - var/randname = plasmaman_name() - - if(lastname) - randname += " [lastname]" - - return randname /datum/species/synth name = "Synth" //inherited from the real species, for health scanners and things id = "synth" say_mod = "beep boops" //inherited from a user's real species sexes = 0 - species_traits = list(NOTRANSSTING,NOBREATH,VIRUSIMMUNE,NODISMEMBER,NOHUNGER) //all of these + whatever we inherit from the real species + specflags = list(NOTRANSSTING,NOBREATH,VIRUSIMMUNE,NODISMEMBER,NOHUNGER) //all of these + whatever we inherit from the real species + safe_oxygen_min = 0 + safe_toxins_min = 0 + safe_toxins_max = 0 + safe_co2_max = 0 + SA_para_min = 0 + SA_sleep_min = 0 dangerous_existence = 1 blacklisted = 1 meat = null - damage_overlay_type = "synth" + exotic_damage_overlay = "synth" limbs_id = "synth" - var/list/initial_species_traits = list(NOTRANSSTING,NOBREATH,VIRUSIMMUNE,NODISMEMBER,NOHUNGER) //for getting these values back for assume_disguise() + var/list/initial_specflags = list(NOTRANSSTING,NOBREATH,VIRUSIMMUNE,NODISMEMBER,NOHUNGER) //for getting these values back for assume_disguise() var/disguise_fail_health = 75 //When their health gets to this level their synthflesh partially falls off var/datum/species/fake_species = null //a species to do most of our work for us, unless we're damaged + roundstart = 0 /datum/species/synth/military name = "Military Synth" @@ -1215,8 +807,8 @@ var/global/image/plasmaman_on_fire = image("icon"='icons/mob/OnFire.dmi', "icon_ name = S.name say_mod = S.say_mod sexes = S.sexes - species_traits = initial_species_traits.Copy() - species_traits.Add(S.species_traits) + specflags = initial_specflags.Copy() + specflags.Add(S.specflags) attack_verb = S.attack_verb attack_sound = S.attack_sound miss_sound = S.miss_sound @@ -1234,7 +826,7 @@ var/global/image/plasmaman_on_fire = image("icon"='icons/mob/OnFire.dmi', "icon_ else name = initial(name) say_mod = initial(say_mod) - species_traits = initial_species_traits.Copy() + specflags = initial_specflags.Copy() attack_verb = initial(attack_verb) attack_sound = initial(attack_sound) miss_sound = initial(miss_sound) @@ -1251,10 +843,6 @@ var/global/image/plasmaman_on_fire = image("icon"='icons/mob/OnFire.dmi', "icon_ fixed_mut_color = "" hair_color = "" - for(var/X in H.bodyparts) //propagates the damage_overlay changes - var/obj/item/bodypart/BP = X - BP.update_limb() - H.update_body_parts() //to update limb icon cache with the new damage overlays //Proc redirects: //Passing procs onto the fake_species, to ensure we look as much like them as possible @@ -1296,27 +884,6 @@ var/global/image/plasmaman_on_fire = image("icon"='icons/mob/OnFire.dmi', "icon_ return ..() -/datum/species/android - name = "Android" - id = "android" - say_mod = "states" - species_traits = list(NOBREATH,RESISTHOT,RESISTCOLD,RESISTPRESSURE,NOFIRE,NOBLOOD,VIRUSIMMUNE,PIERCEIMMUNE,NOHUNGER,EASYLIMBATTACHMENT) - meat = null - damage_overlay_type = "synth" - limbs_id = "synth" - -/datum/species/android/on_species_gain(mob/living/carbon/C) - . = ..() - for(var/X in C.bodyparts) - var/obj/item/bodypart/O = X - O.change_bodypart_status(BODYPART_ROBOTIC) - -/datum/species/android/on_species_loss(mob/living/carbon/C) - . = ..() - for(var/X in C.bodyparts) - var/obj/item/bodypart/O = X - O.change_bodypart_status(BODYPART_ORGANIC) - /* SYNDICATE BLACK OPS */ @@ -1339,14 +906,14 @@ SYNDICATE BLACK OPS attack_sound = "sound/weapons/resonator_blast.ogg" blacklisted = 1 use_skintones = 0 - species_traits = list(RADIMMUNE,VIRUSIMMUNE,NOBLOOD,PIERCEIMMUNE,EYECOLOR,NODISMEMBER,NOHUNGER) + specflags = list(RADIMMUNE,VIRUSIMMUNE,NOBLOOD,PIERCEIMMUNE,EYECOLOR,NODISMEMBER,NOHUNGER) sexes = 0 /datum/species/angel name = "Angel" id = "angel" default_color = "FFFFFF" - species_traits = list(EYECOLOR,HAIR,FACEHAIR,LIPS) + specflags = list(EYECOLOR,HAIR,FACEHAIR,LIPS) mutant_bodyparts = list("tail_human", "ears", "wings") default_features = list("mcolor" = "FFF", "tail_human" = "None", "ears" = "None", "wings" = "Angel") use_skintones = 1 @@ -1370,8 +937,8 @@ SYNDICATE BLACK OPS /datum/species/angel/on_species_loss(mob/living/carbon/human/H) if(fly) fly.Remove(H) - if(H.movement_type & FLYING) - H.movement_type &= ~FLYING + if(FLYING in specflags) + specflags -= FLYING ToggleFlight(H,0) if(H.dna && H.dna.species &&((H.dna.features["wings"] != "None") && ("wings" in H.dna.species.mutant_bodyparts))) H.dna.features["wings"] = "None" @@ -1382,18 +949,21 @@ SYNDICATE BLACK OPS HandleFlight(H) /datum/species/angel/proc/HandleFlight(mob/living/carbon/human/H) - if(H.movement_type & FLYING) + if(FLYING in specflags) if(!CanFly(H)) ToggleFlight(H,0) + H.float(0) return 0 + H.float(1) return 1 else + H.float(0) return 0 /datum/species/angel/proc/CanFly(mob/living/carbon/human/H) if(H.stat || H.stunned || H.weakened) return 0 - if(H.wear_suit && ((H.wear_suit.flags_inv & HIDEJUMPSUIT) && (!H.wear_suit.species_exception || !is_type_in_list(src, H.wear_suit.species_exception)))) //Jumpsuits have tail holes, so it makes sense they have wing holes too + if(H.wear_suit && (H.wear_suit.flags_inv & HIDEJUMPSUIT)) //Jumpsuits have tail holes, so it makes sense they have wing holes too H << "Your suit blocks your wings from extending!" return 0 var/turf/T = get_turf(H) @@ -1410,13 +980,14 @@ SYNDICATE BLACK OPS /datum/action/innate/flight name = "Toggle Flight" check_flags = AB_CHECK_CONSCIOUS|AB_CHECK_STUNNED - button_icon_state = "flight" + button_icon_state = "slimesplit" + background_icon_state = "bg_alien" /datum/action/innate/flight/Activate() var/mob/living/carbon/human/H = owner var/datum/species/angel/A = H.dna.species if(A.CanFly(H)) - if(H.movement_type & FLYING) + if(FLYING in A.specflags) H << "You settle gently back onto the ground..." A.ToggleFlight(H,0) H.update_canmove() @@ -1435,8 +1006,8 @@ SYNDICATE BLACK OPS playsound(H.loc, 'sound/misc/slip.ogg', 50, 1, -3) - for(var/obj/item/I in H.held_items) - H.accident(I) + H.accident(H.l_hand) + H.accident(H.r_hand) var/olddir = H.dir @@ -1453,31 +1024,192 @@ SYNDICATE BLACK OPS /datum/species/angel/spec_stun(mob/living/carbon/human/H,amount) - if(H.movement_type & FLYING) + if(FLYING in specflags) ToggleFlight(H,0) flyslip(H) . = ..() -/datum/species/angel/negates_gravity(mob/living/carbon/human/H) - if(H.movement_type & FLYING) +/datum/species/angel/negates_gravity() + if(FLYING in specflags) return 1 -/datum/species/angel/space_move(mob/living/carbon/human/H) - if(H.movement_type & FLYING) +/datum/species/angel/space_move() + if(FLYING in specflags) return 1 /datum/species/angel/proc/ToggleFlight(mob/living/carbon/human/H,flight) if(flight && CanFly(H)) stunmod = 2 speedmod = -1 - H.movement_type |= FLYING + specflags += FLYING override_float = 1 H.pass_flags |= PASSTABLE H.OpenWings() else stunmod = 1 speedmod = 0 - H.movement_type &= ~FLYING + specflags -= FLYING override_float = 0 H.pass_flags &= ~PASSTABLE H.CloseWings() + + +//CANID// +datum/species/canid + name = "Canid" + id = "canid" + default_color = "4B4B4B" + specflags = list(MUTCOLORS,EYECOLOR,LIPS,HAIR) + mutant_bodyparts = list("mam_tail", "mam_ears", "mam_body_markings", "snout") + default_features = list("mcolor" = "FFF","mcolor2" = "FFF","mcolor3" = "FFF", "body_markings" = "None", "mam_tail" = "None", "mam_ears" = "None", "mam_body_markings" = "None") + attack_verb = "claw" + attack_sound = 'sound/weapons/slash.ogg' + miss_sound = 'sound/weapons/slashmiss.ogg' + roundstart = 1 + +/datum/species/canid/spec_death(gibbed, mob/living/carbon/human/H) + if(H) + H.endTailWag() + +//FELID// + +/datum/species/felid + name = "Felid" + id = "felid" + default_color = "BCAC9B" + specflags = list(MUTCOLORS,EYECOLOR,LIPS,HAIR) + mutant_bodyparts = list("mam_body_markings", "mam_ears", "mam_tail", "snout") + default_features = list("mcolor" = "FFF","mcolor2" = "FFF","mcolor3" = "FFF", "mam_body_markings" = "Belly", "mam_ears" = "Big Cat", "mam_tail" = "Big Cat") + attack_verb = "claw" + attack_sound = 'sound/weapons/slash.ogg' + miss_sound = 'sound/weapons/slashmiss.ogg' + roundstart = 1 //no sprites yet + +/datum/species/tajaran/spec_death(gibbed, mob/living/carbon/human/H) + if(H) + H.endTailWag() + +//AVIAN// +/datum/species/avian + name = "Avian" + id = "avian" + default_color = "BCAC9B" + specflags = list(MUTCOLORS,EYECOLOR,LIPS,HAIR) + mutant_bodyparts = list("beak", "wings", "avian_tail") + default_features = list("beak" = "None", "wings" = "None") + attack_verb = "peck" + attack_sound = 'sound/weapons/slash.ogg' + miss_sound = 'sound/weapons/slashmiss.ogg' + roundstart = 0 //no sprites yet + blacklisted = 1 + +//HERBIVOROUS// + +//EXOTIC// +//These races will likely include lots of downsides and upsides. Keep them relatively balanced.// +/datum/species/xeno + name = "Xenomorph" + id = "xeno" + say_mod = "hisses" + eyes = "none" + specflags = list() + mutant_organs = list(/obj/item/organ/tongue/alien) + mutant_bodyparts = list("xenohead", + "xenodorsal", + "xenotail") + default_features = list("xenohead"="Hunter", + "xenodorsal"="Dorsal Tubes", + "xenotail"="Xenomorph Tail") + attack_verb = "slash" + attack_sound = 'sound/weapons/slash.ogg' + miss_sound = 'sound/weapons/slashmiss.ogg' + burnmod = 1.75 + heatmod = 1.75 + darksight = 4 //Just above slimes + exotic_blood = "xblood" + exotic_damage_overlay = "xeno" + no_equip = list(slot_glasses) //MY EYES, THEY'RE GONE + meat = /obj/item/weapon/reagent_containers/food/snacks/meat/slab/xeno + skinned_type = /obj/item/stack/sheet/animalhide/xeno + safe_toxins_max = 32 //Too much of anything is bad. + roundstart = 1 +// whitelisted = 1 +// whitelist = list("talkingcactus") //testing whitelisting + +/datum/species/xeno/on_species_gain(mob/living/carbon/C, datum/species/old_species) + ..() + var/obj/effect/decal/cleanable/xenoblood/xgibs/XG + if(istype(C.gib_type, XG)) + return + else + C.gib_type = XG + +/datum/species/xeno/on_species_loss(mob/living/carbon/C) + ..() + var/obj/effect/decal/cleanable/xenoblood/xgibs/XG + var/obj/effect/decal/cleanable/blood/gibs/HG + if(istype(C.gib_type, XG)) + C.gib_type = HG + else + return + +/datum/reagent/toxin/acid/xenoblood + name = "acid blood" + id = "xblood" + description = "A highly corrosive substance, it is capable of burning through most natural or man-made materials in short order." + color = "#66CC00" + toxpwr = 0 + acidpwr = 12 + +/datum/species/yautja + name = "Yautja" + id = "pred" + say_mod = "clicks" + eyes = "predeyes" + mutant_organs = list(/obj/item/organ/tongue/yautja) + specflags = list(EYECOLOR) + lang_spoken = YAUTJA + lang_understood = HUMAN|YAUTJA|ALIEN + no_equip = list(slot_head) + punchdamagelow = 4 + punchdamagehigh = 14 + punchstunthreshold = 13 + blacklisted = 1 + roundstart = 0 + whitelist = 1 + whitelist = list("talkingcactus") + +/datum/outfit/yautja_basic + name = "Yautja, Basic" + uniform = /obj/item/clothing/under/mesh + suit = /obj/item/clothing/suit/armor/yautja_fake + shoes = /obj/item/clothing/shoes/yautja_fake + mask = /obj/item/clothing/mask/gas/yautja_fake + +/datum/species/yautja/before_equip_job(datum/job/J, mob/living/carbon/human/H, visualsOnly = FALSE) + var/datum/outfit/yautja_basic/O = new /datum/outfit/yautja_basic//Just basic gear. Doesn't include anything that gives any meaningful advantage. + H.equipOutfit(O, visualsOnly) + return 0 + +/datum/species/octopus + blacklisted = 1 +/datum/species/carp + blacklisted = 1 +/datum/species/horse + blacklisted = 1 + +/////////////////// +//DONATOR SPECIES// +/////////////////// + +//ChronoFlux: Slimecoon +/* +/datum/species/jelly/slime/slimecoon + name = "Slime Raccoon" + id = "slimecoon" + limbs_id = "slime" + whitelisted = 1 + whitelist = list("chronoflux") + blacklisted = 1 + mutant_bodyparts = list("slimecoontail", "slimecoonears", "slimecoonsnout") + default_features = list("slimecoontail" = "Slimecoon Tail", "slimecoonears" = "Slimecoon Ears", "slimecoonsnout" = "Slimecoon Snout")*/ diff --git a/code/modules/mob/living/carbon/human/status_procs.dm b/code/modules/mob/living/carbon/human/status_procs.dm deleted file mode 100644 index 3a99dda7b0..0000000000 --- a/code/modules/mob/living/carbon/human/status_procs.dm +++ /dev/null @@ -1,18 +0,0 @@ - -/mob/living/carbon/human/Stun(amount, updating = 1, ignore_canstun = 0) - amount = dna.species.spec_stun(src,amount) - ..() - -/mob/living/carbon/human/Weaken(amount, updating = 1, ignore_canstun = 0) - amount = dna.species.spec_stun(src,amount) - ..() - -/mob/living/carbon/human/cure_husk() - . = ..() - if(.) - update_hair() - -/mob/living/carbon/human/become_husk() - . = ..() - if(.) - update_hair() \ No newline at end of file diff --git a/code/modules/mob/living/carbon/human/update_icons.dm b/code/modules/mob/living/carbon/human/update_icons.dm index 4294582ca0..e6e0fea00a 100644 --- a/code/modules/mob/living/carbon/human/update_icons.dm +++ b/code/modules/mob/living/carbon/human/update_icons.dm @@ -4,10 +4,8 @@ /* Keep these comments up-to-date if you -insist- on hurting my code-baby ;_; This system allows you to update individual mob-overlays, without regenerating them all each time. When we generate overlays we generate the standing version and then rotate the mob as necessary.. - As of the time of writing there are 20 layers within this list. Please try to keep this from increasing. //22 and counting, good job guys var/overlays_standing[20] //For the standing stance - Most of the time we only wish to update one overlay: e.g. - we dropped the fireaxe out of our left hand and need to remove its icon from our mob e.g.2 - our hair colour has changed, so we need to update our hair icons on our mob @@ -15,28 +13,21 @@ In these cases, instead of updating every overlay using the old behaviour (regen the appropriate update_X proc. e.g. - update_l_hand() e.g.2 - update_hair() - Note: Recent changes by aranclanos+carn: update_icons() no longer needs to be called. the system is easier to use. update_icons() should not be called unless you absolutely -know- you need it. IN ALL OTHER CASES it's better to just call the specific update_X procs. - Note: The defines for layer numbers is now kept exclusvely in __DEFINES/misc.dm instead of being defined there, then redefined and undefiend everywhere else. If you need to change the layering of sprites (or add a new layer) that's where you should start. - All of this means that this code is more maintainable, faster and still fairly easy to use. - There are several things that need to be remembered: > Whenever we do something that should cause an overlay to update (which doesn't use standard procs ( i.e. you do something like l_hand = /obj/item/something new(src), rather than using the helper procs) You will need to call the relevant update_inv_* proc - All of these are named after the variable they update from. They are defined at the mob/ level like update_clothing was, so you won't cause undefined proc runtimes with usr.update_inv_wear_id() if the usr is a slime etc. Instead, it'll just return without doing any work. So no harm in calling it for slimes and such. - - > There are also these special cases: update_damage_overlays() //handles damage overlays for brute/burn damage update_body() //Handles updating your mob's body layer and mutant bodyparts @@ -44,10 +35,30 @@ There are several things that need to be remembered: //NOTE: update_mutantrace() is now merged into this! update_hair() //Handles updating your hair overlay (used to be update_face, but mouth and eyes were merged into update_body()) - - */ +//DAMAGE OVERLAYS +//constructs damage icon for each organ from mask * damage field and saves it in our overlays_ lists +/mob/living/carbon/human/update_damage_overlays() + remove_overlay(DAMAGE_LAYER) + + var/image/standing = image("icon"='icons/mob/dam_human.dmi', "icon_state"="blank", "layer"=-DAMAGE_LAYER) + overlays_standing[DAMAGE_LAYER] = standing + + var/dmgoverlaytype = "" + if(dna.species.exotic_damage_overlay) + dmgoverlaytype = dna.species.exotic_damage_overlay + "_" + + for(var/X in bodyparts) + var/obj/item/bodypart/BP = X + if(BP.brutestate) + standing.overlays += "[dmgoverlaytype][BP.body_zone]_[BP.brutestate]0" //we're adding icon_states of the base image as overlays + if(BP.burnstate) + standing.overlays += "[dmgoverlaytype][BP.body_zone]_0[BP.burnstate]" + + apply_overlay(DAMAGE_LAYER) + + //HAIR OVERLAY /mob/living/carbon/human/update_hair() dna.species.handle_hair(src) @@ -57,14 +68,47 @@ There are several things that need to be remembered: dna.species.handle_mutant_bodyparts(src) -/mob/living/carbon/human/update_body() +/mob/living/carbon/human/proc/update_body() remove_overlay(BODY_LAYER) dna.species.handle_body(src) - ..() + update_body_parts() /mob/living/carbon/human/update_fire() ..("Standing") +/mob/living/carbon/human/proc/update_body_parts() + //CHECK FOR UPDATE + var/oldkey = icon_render_key + icon_render_key = generate_icon_render_key() + if(oldkey == icon_render_key) + return + + remove_overlay(BODYPARTS_LAYER) + + //LOAD ICONS + if(limb_icon_cache[icon_render_key]) + load_limb_from_cache() + update_damage_overlays() + update_mutant_bodyparts() + update_hair() + return + + //GENERATE NEW LIMBS + var/list/new_limbs = list() + for(var/X in bodyparts) + var/obj/item/bodypart/BP = X + if(!BP.no_update) + BP.update_limb() + var/image/temp = BP.get_limb_icon() + if(temp) + new_limbs += temp + if(new_limbs.len) + overlays_standing[BODYPARTS_LAYER] = new_limbs + limb_icon_cache[icon_render_key] = new_limbs + + apply_overlay(BODYPARTS_LAYER) + update_damage_overlays() + /* --------------------------------------- */ //For legacy support. @@ -86,7 +130,6 @@ There are several things that need to be remembered: update_inv_back() update_inv_wear_suit() update_inv_pockets() - update_inv_neck() update_transform() //mutations update_mutations_overlay() @@ -105,11 +148,10 @@ There are several things that need to be remembered: if(istype(w_uniform, /obj/item/clothing/under)) var/obj/item/clothing/under/U = w_uniform - U.screen_loc = ui_iclothing if(client && hud_used && hud_used.hud_shown) - if(hud_used.inventory_shown) - client.screen += w_uniform - update_observer_view(w_uniform,1) + if(hud_used.inventory_shown) //if the inventory is open ... + U.screen_loc = ui_iclothing //...draw the item in the inventory screen + client.screen += w_uniform //Either way, add the item to the HUD if(wear_suit && (wear_suit.flags_inv & HIDEJUMPSUIT)) return @@ -118,10 +160,8 @@ There are several things that need to be remembered: var/t_color = U.item_color if(!t_color) t_color = U.icon_state - if(U.adjusted == ALT_STYLE) + if(U.adjusted) t_color = "[t_color]_d" - else if(U.adjusted == DIGITIGRADE_STYLE) - t_color = "[t_color]_l" var/image/standing @@ -141,7 +181,6 @@ There are several things that need to be remembered: unEquip(thing) apply_overlay(UNIFORM_LAYER) - update_mutant_bodyparts() /mob/living/carbon/human/update_inv_wear_id() @@ -152,10 +191,9 @@ There are several things that need to be remembered: inv.update_icon() if(wear_id) - wear_id.screen_loc = ui_id if(client && hud_used && hud_used.hud_shown) + wear_id.screen_loc = ui_id client.screen += wear_id - update_observer_view(wear_id) //TODO: add an icon file for ID slot stuff, so it's less snowflakey var/image/standing = wear_id.build_worn_icon(state = wear_id.item_state, default_layer = ID_LAYER, default_icon_file = 'icons/mob/mob.dmi') @@ -168,25 +206,18 @@ There are several things that need to be remembered: remove_overlay(GLOVES_LAYER) if(get_num_arms() <2) - if(!gloves && blood_DNA) - if(has_left_hand()) - overlays_standing[GLOVES_LAYER] = image("icon"='icons/effects/blood.dmi', "icon_state"="bloodyhands_left", "layer"=-GLOVES_LAYER) - apply_overlay(GLOVES_LAYER) - else if(has_right_hand()) - overlays_standing[GLOVES_LAYER] = image("icon"='icons/effects/blood.dmi', "icon_state"="bloodyhands_right", "layer"=-GLOVES_LAYER) - apply_overlay(GLOVES_LAYER) return - if(client && hud_used && hud_used.inv_slots[slot_gloves]) + if(client && hud_used) var/obj/screen/inventory/inv = hud_used.inv_slots[slot_gloves] inv.update_icon() if(gloves) - gloves.screen_loc = ui_gloves if(client && hud_used && hud_used.hud_shown) - if(hud_used.inventory_shown) - client.screen += gloves - update_observer_view(gloves,1) + if(hud_used.inventory_shown) //if the inventory is open ... + gloves.screen_loc = ui_gloves //...draw the item in the inventory screen + client.screen += gloves //Either way, add the item to the HUD + var/t_state = gloves.item_state if(!t_state) t_state = gloves.icon_state @@ -202,6 +233,7 @@ There are several things that need to be remembered: apply_overlay(GLOVES_LAYER) + /mob/living/carbon/human/update_inv_glasses() remove_overlay(GLASSES_LAYER) @@ -213,11 +245,11 @@ There are several things that need to be remembered: inv.update_icon() if(glasses) - glasses.screen_loc = ui_glasses //...draw the item in the inventory screen if(client && hud_used && hud_used.hud_shown) if(hud_used.inventory_shown) //if the inventory is open ... - client.screen += glasses //Either way, add the item to the HUD - update_observer_view(glasses,1) + glasses.screen_loc = ui_glasses //...draw the item in the inventory screen + client.screen += glasses //Either way, add the item to the HUD + if(!(head && (head.flags_inv & HIDEEYES)) && !(wear_mask && (wear_mask.flags_inv & HIDEEYES))) var/image/standing = glasses.build_worn_icon(state = glasses.icon_state, default_layer = GLASSES_LAYER, default_icon_file = 'icons/mob/eyes.dmi') @@ -237,11 +269,10 @@ There are several things that need to be remembered: inv.update_icon() if(ears) - ears.screen_loc = ui_ears //move the item to the appropriate screen loc if(client && hud_used && hud_used.hud_shown) - if(hud_used.inventory_shown) //if the inventory is open - client.screen += ears //add it to the client's screen - update_observer_view(ears,1) + if(hud_used.inventory_shown) //if the inventory is open ... + ears.screen_loc = ui_ears //...draw the item in the inventory screen + client.screen += ears //Either way, add the item to the HUD var/image/standing = ears.build_worn_icon(state = ears.icon_state, default_layer = EARS_LAYER, default_icon_file = 'icons/mob/ears.dmi') overlays_standing[EARS_LAYER] = standing @@ -260,11 +291,11 @@ There are several things that need to be remembered: inv.update_icon() if(shoes) - shoes.screen_loc = ui_shoes //move the item to the appropriate screen loc if(client && hud_used && hud_used.hud_shown) - if(hud_used.inventory_shown) //if the inventory is open - client.screen += shoes //add it to client's screen - update_observer_view(shoes,1) + if(hud_used.inventory_shown) //if the inventory is open ... + shoes.screen_loc = ui_shoes //...draw the item in the inventory screen + client.screen += shoes //Either way, add the item to the HUD + var/image/standing = shoes.build_worn_icon(state = shoes.icon_state, default_layer = SHOES_LAYER, default_icon_file = 'icons/mob/feet.dmi') overlays_standing[SHOES_LAYER] = standing @@ -279,10 +310,10 @@ There are several things that need to be remembered: inv.update_icon() if(s_store) - s_store.screen_loc = ui_sstore1 if(client && hud_used && hud_used.hud_shown) + s_store.screen_loc = ui_sstore1 client.screen += s_store - update_observer_view(s_store) + var/t_state = s_store.item_state if(!t_state) t_state = s_store.icon_state @@ -291,10 +322,19 @@ There are several things that need to be remembered: apply_overlay(SUIT_STORE_LAYER) + /mob/living/carbon/human/update_inv_head() + remove_overlay(HEAD_LAYER) + if(!get_bodypart("head")) //Decapitated + return ..() + if(client && hud_used) + var/obj/screen/inventory/inv = hud_used.inv_slots[slot_head] + inv.update_icon() + update_mutant_bodyparts() + /mob/living/carbon/human/update_inv_belt() remove_overlay(BELT_LAYER) @@ -302,12 +342,11 @@ There are several things that need to be remembered: var/obj/screen/inventory/inv = hud_used.inv_slots[slot_belt] inv.update_icon() - if(belt) - belt.screen_loc = ui_belt - if(client && hud_used && hud_used.hud_shown) + if(hud_used.hud_shown && belt) client.screen += belt - update_observer_view(belt) + belt.screen_loc = ui_belt + if(belt) var/t_state = belt.item_state if(!t_state) t_state = belt.icon_state @@ -328,17 +367,17 @@ There are several things that need to be remembered: inv.update_icon() if(istype(wear_suit, /obj/item/clothing/suit)) - wear_suit.screen_loc = ui_oclothing if(client && hud_used && hud_used.hud_shown) - if(hud_used.inventory_shown) - client.screen += wear_suit - update_observer_view(wear_suit,1) + if(hud_used.inventory_shown) //if the inventory is open ... + wear_suit.screen_loc = ui_oclothing //TODO //...draw the item in the inventory screen + client.screen += wear_suit //Either way, add the item to the HUD var/image/standing = wear_suit.build_worn_icon(state = wear_suit.icon_state, default_layer = SUIT_LAYER, default_icon_file = 'icons/mob/suit.dmi') overlays_standing[SUIT_LAYER] = standing - if(wear_suit.breakouttime) //suit is restraining - drop_all_held_items() + if(istype(wear_suit, /obj/item/clothing/suit/straight_jacket)) + drop_l_hand() + drop_r_hand() update_hair() update_mutant_bodyparts() @@ -356,23 +395,31 @@ There are several things that need to be remembered: inv = hud_used.inv_slots[slot_r_store] inv.update_icon() - if(l_store) - l_store.screen_loc = ui_storage1 - if(hud_used.hud_shown) + if(hud_used.hud_shown) + if(l_store) client.screen += l_store - update_observer_view(l_store) + l_store.screen_loc = ui_storage1 - if(r_store) - r_store.screen_loc = ui_storage2 - if(hud_used.hud_shown) + if(r_store) client.screen += r_store - update_observer_view(r_store) + r_store.screen_loc = ui_storage2 /mob/living/carbon/human/update_inv_wear_mask() + remove_overlay(FACEMASK_LAYER) + if(!get_bodypart("head")) //Decapitated + return ..() - update_mutant_bodyparts() //e.g. upgate needed because mask now hides lizard snout + if(client && hud_used) + var/obj/screen/inventory/inv = hud_used.inv_slots[slot_wear_mask] + inv.update_icon() + update_mutant_bodyparts() +/mob/living/carbon/human/update_inv_handcuffed() + remove_overlay(HANDCUFF_LAYER) + if(handcuffed) + overlays_standing[HANDCUFF_LAYER] = image("icon"='icons/mob/mob.dmi', "icon_state"="handcuff1", "layer"=-HANDCUFF_LAYER) + apply_overlay(HANDCUFF_LAYER) /mob/living/carbon/human/update_inv_legcuffed() remove_overlay(LEGCUFF_LAYER) @@ -392,7 +439,7 @@ There are several things that need to be remembered: /mob/living/carbon/human/proc/get_overlays_copy(list/unwantedLayers) var/list/out = new - for(var/i in 1 to TOTAL_LAYERS) + for(var/i=1;i<=TOTAL_LAYERS;i++) if(overlays_standing[i]) if(i in unwantedLayers) continue @@ -404,36 +451,23 @@ There are several things that need to be remembered: //update whether our head item appears on our hud. /mob/living/carbon/human/update_hud_head(obj/item/I) - I.screen_loc = ui_head if(client && hud_used && hud_used.hud_shown) if(hud_used.inventory_shown) - client.screen += I - update_observer_view(I,1) + I.screen_loc = ui_head + client.screen += I //update whether our mask item appears on our hud. /mob/living/carbon/human/update_hud_wear_mask(obj/item/I) - I.screen_loc = ui_mask if(client && hud_used && hud_used.hud_shown) if(hud_used.inventory_shown) - client.screen += I - update_observer_view(I,1) - -//update whether our neck item appears on our hud. -/mob/living/carbon/human/update_hud_neck(obj/item/I) - I.screen_loc = ui_neck - if(client && hud_used && hud_used.hud_shown) - if(hud_used.inventory_shown) - client.screen += I - update_observer_view(I,1) + I.screen_loc = ui_mask + client.screen += I //update whether our back item appears on our hud. /mob/living/carbon/human/update_hud_back(obj/item/I) - I.screen_loc = ui_back if(client && hud_used && hud_used.hud_shown) + I.screen_loc = ui_back client.screen += I - update_observer_view(I) - - /* @@ -443,23 +477,15 @@ covers: centering large images layering images on custom layers building images from custom icon files - By Remie Richards (yes I'm taking credit because this just removed 90% of the copypaste in update_icons()) - state: A string to use as the state, this is FAR too complex to solve in this proc thanks to shitty old code so it's specified as an argument instead. - default_layer: The layer to draw this on if no other layer is specified - default_icon_file: The icon file to draw states from if no other icon file is specified - isinhands: If true then alternate_worn_icon is skipped so that default_icon_file is used, in this situation default_icon_file is expected to match either the lefthand_ or righthand_ file var - femalueuniform: A value matching a uniform item's fitted var, if this is anything but NO_FEMALE_UNIFORM, we generate/load female uniform sprites matching all previously decided variables - - */ /obj/item/proc/build_worn_icon(var/state = "", var/default_layer = 0, var/default_icon_file = null, var/isinhands = FALSE, var/femaleuniform = NO_FEMALE_UNIFORM) @@ -491,42 +517,41 @@ generate/load female uniform sprites matching all previously decided variables standing = center_image(standing, isinhands ? inhand_x_dimension : worn_x_dimension, isinhands ? inhand_y_dimension : worn_y_dimension) - //Handle held offsets - var/mob/M = loc - if(istype(M)) - var/list/L = get_held_offsets() - if(L) - standing.pixel_x += L["x"] //+= because of center()ing - standing.pixel_y += L["y"] - standing.alpha = alpha standing.color = color return standing -/obj/item/proc/get_held_offsets() - var/list/L - if(ismob(loc)) - var/mob/M = loc - L = M.get_item_offsets_for_index(M.get_held_index_of_item(src)) - return L -//Can't think of a better way to do this, sadly -/mob/proc/get_item_offsets_for_index(i) - switch(i) - if(3) //odd = left hands - return list("x" = 0, "y" = 16) - if(4) //even = right hands - return list("x" = 0, "y" = 16) - else //No offsets or Unwritten number of hands - return list("x" = 0, "y" = 0) + + +///////////////////// +// Limb Icon Cache // +///////////////////// +/* + Called from update_body_parts() these procs handle the limb icon cache. + the limb icon cache adds an icon_render_key to a human mob, it represents: + - skin_tone (if applicable) + - gender + - limbs (stores as the limb name and whether it is removed/fine, organic/robotic) + These procs only store limbs as to increase the number of matching icon_render_keys + This cache exists because drawing 6/7 icons for humans constantly is quite a waste + See RemieRichards on irc.rizon.net #coderbus +*/ + +var/global/list/limb_icon_cache = list() + +/mob/living/carbon/human + var/icon_render_key = "" + + //produces a key based on the human's limbs -/mob/living/carbon/human/generate_icon_render_key() +/mob/living/carbon/human/proc/generate_icon_render_key() . = "[dna.species.limbs_id]" if(dna.check_mutation(HULK)) @@ -537,6 +562,8 @@ generate/load female uniform sprites matching all previously decided variables . += "-coloured-[dna.species.fixed_mut_color]" else if(dna.features["mcolor"]) . += "-coloured-[dna.features["mcolor"]]" + else if(dna.features["mcolor"] && dna.species.use_skintones) + . += "-coloured-[skin_tone]" else . += "-not_coloured" @@ -545,35 +572,18 @@ generate/load female uniform sprites matching all previously decided variables for(var/X in bodyparts) var/obj/item/bodypart/BP = X . += "-[BP.body_zone]" - if(BP.status == BODYPART_ORGANIC) + if(BP.status == ORGAN_ORGANIC) . += "-organic" else . += "-robotic" - if(BP.use_digitigrade) - . += "-digitigrade[BP.use_digitigrade]" - if(BP.dmg_overlay_type) - . += "-[BP.dmg_overlay_type]" if(disabilities & HUSK) . += "-husk" -/mob/living/carbon/human/load_limb_from_cache() - ..() - update_hair() - - -/mob/living/carbon/human/proc/update_observer_view(obj/item/I, inventory) - if(observers && observers.len) - for(var/M in observers) - var/mob/dead/observe = M - if(observe.client && observe.client.eye == src) - if(observe.hud_used) - if(inventory && !observe.hud_used.inventory_shown) - continue - observe.client.screen += I - else - observers -= observe - if(!observers.len) - observers = null - break +//change the human's icon to the one matching it's key +/mob/living/carbon/human/proc/load_limb_from_cache() + if(limb_icon_cache[icon_render_key]) + remove_overlay(BODYPARTS_LAYER) + overlays_standing[BODYPARTS_LAYER] = limb_icon_cache[icon_render_key] + apply_overlay(BODYPARTS_LAYER) \ No newline at end of file diff --git a/code/modules/mob/living/carbon/human/whisper.dm b/code/modules/mob/living/carbon/human/whisper.dm index 654e0da190..9a86dbca5a 100644 --- a/code/modules/mob/living/carbon/human/whisper.dm +++ b/code/modules/mob/living/carbon/human/whisper.dm @@ -37,11 +37,12 @@ // If whispering your last words, limit the whisper based on how close you are to death. if(critical) - var/health_diff = round(-HEALTH_THRESHOLD_DEAD + health) + var/health_diff = round(-config.health_threshold_dead + health) // If we cut our message short, abruptly end it with a-.. var/message_len = length(message) message = copytext(message, 1, health_diff) + "[message_len > health_diff ? "-.." : "..."]" message = Ellipsis(message, 10, 1) + whispers = "whispers in their final breath" message = treat_message(message) @@ -59,13 +60,12 @@ watching -= eavesdropping var/rendered - whispers = critical ? "whispers something in [p_their()] final breath." : "whispers something." - rendered = "[src.name] [whispers]" + + rendered = "[src.name] [whispers] something." for(var/mob/M in watching) M.show_message(rendered, 2) var/spans = list(SPAN_ITALICS) - whispers = critical ? "whispers in [p_their()] final breath" : "whispers" rendered = "[GetVoice()][alt_name] [whispers], \"[attach_spans(message, spans)]\"" for(var/atom/movable/AM in listening) diff --git a/code/modules/mob/living/carbon/inventory.dm b/code/modules/mob/living/carbon/inventory.dm index 728720068e..137dfcaadc 100644 --- a/code/modules/mob/living/carbon/inventory.dm +++ b/code/modules/mob/living/carbon/inventory.dm @@ -4,14 +4,16 @@ return back if(slot_wear_mask) return wear_mask - if(slot_neck) - return wear_neck if(slot_head) return head if(slot_handcuffed) return handcuffed if(slot_legcuffed) return legcuffed + if(slot_l_hand) + return l_hand + if(slot_r_hand) + return r_hand return null @@ -22,26 +24,19 @@ if(!istype(I)) return - var/index = get_held_index_of_item(I) - if(index) - held_items[index] = null + if(I == l_hand) + l_hand = null + else if(I == r_hand) + r_hand = null if(I.pulledby) I.pulledby.stop_pulling() - I.screen_loc = null - if(client) - client.screen -= I - if(observers && observers.len) - for(var/M in observers) - var/mob/dead/observe = M - if(observe.client) - observe.client.screen -= I + I.screen_loc = null // will get moved if inventory is visible I.loc = src + I.equipped(src, slot) I.layer = ABOVE_HUD_LAYER - I.plane = ABOVE_HUD_PLANE - I.appearance_flags |= NO_CLIENT_COLOR - var/not_handled = FALSE + switch(slot) if(slot_back) back = I @@ -52,34 +47,25 @@ if(slot_head) head = I head_update(I) - if(slot_neck) - wear_neck = I - update_inv_neck(I) if(slot_handcuffed) handcuffed = I update_handcuffed() if(slot_legcuffed) legcuffed = I update_inv_legcuffed() - if(slot_hands) - put_in_hands(I) - update_inv_hands() + if(slot_l_hand) + l_hand = I + update_inv_l_hand() + if(slot_r_hand) + r_hand = I + update_inv_r_hand() if(slot_in_backpack) - var/obj/item/weapon/storage/B = back - var/prev_jimmies = B.rustle_jimmies - B.rustle_jimmies = FALSE //don't conspicously rustle - B.handle_item_insertion(I, 1, src) - B.rustle_jimmies = prev_jimmies + if(I == get_active_hand()) + unEquip(I) + I.loc = back else - not_handled = TRUE + return 1 - //Item has been handled at this point and equipped callback can be safely called - //We cannot call it for items that have not been handled as they are not yet correctly - //in a slot (handled further down inheritance chain, probably living/carbon/human/equip_to_slot - if(!not_handled) - I.equipped(src, slot) - - return not_handled /mob/living/carbon/unEquip(obj/item/I) . = ..() //Sets the default return value to what the parent returns. @@ -95,9 +81,6 @@ else if(I == wear_mask) wear_mask = null wear_mask_update(I, toggle_off = 1) - if(I == wear_neck) - wear_neck = null - update_inv_neck(I) else if(I == handcuffed) handcuffed = null if(buckled && buckled.buckle_requires_restraints) @@ -125,4 +108,3 @@ if(I.flags_inv & HIDEMASK || forced) update_inv_wear_mask() update_inv_head() - diff --git a/code/modules/mob/living/carbon/life.dm b/code/modules/mob/living/carbon/life.dm index b146f68603..46196c0bbe 100644 --- a/code/modules/mob/living/carbon/life.dm +++ b/code/modules/mob/living/carbon/life.dm @@ -4,25 +4,24 @@ if (notransform) return + if(!loc) + return if(damageoverlaytemp) damageoverlaytemp = 0 update_damage_hud() - if(..()) //not dead + if(..()) + . = 1 + handle_blood() - if(stat != DEAD) - for(var/V in internal_organs) - var/obj/item/organ/O = V + for(var/obj/item/organ/O in internal_organs) O.on_life() //Updates the number of stored chemicals for powers handle_changeling() - if(stat != DEAD) - return 1 - /////////////// // BREATHING // /////////////// @@ -43,15 +42,15 @@ if(istype(loc, /obj/machinery/atmospherics/components/unary/cryo_cell)) return - if(ismob(loc)) return - var/datum/gas_mixture/environment if(loc) environment = loc.return_air() + if(ismob(loc)) return + var/datum/gas_mixture/breath - if(health <= HEALTH_THRESHOLD_CRIT || (pulledby && pulledby.grab_state >= GRAB_KILL && !getorganslot("breathing_tube"))) + if(health <= config.health_threshold_crit || (pulledby && pulledby.grab_state >= GRAB_KILL && !getorganslot("breathing_tube"))) losebreath++ //Suffocate @@ -285,6 +284,7 @@ /mob/living/carbon/handle_stomach() +/* set waitfor = 0 for(var/mob/living/M in stomach_contents) if(M.loc != src) @@ -300,7 +300,7 @@ if(!(M.status_flags & GODMODE)) M.adjustBruteLoss(5) nutrition += 10 - +*/ //this updates all special effects: stunned, sleeping, weakened, druggy, stuttering, etc.. /mob/living/carbon/handle_status_effects() ..() @@ -314,7 +314,7 @@ if(sleeping) handle_dreams() AdjustSleeping(-1) - if(prob(10) && health>HEALTH_THRESHOLD_CRIT) + if(prob(10) && health>config.health_threshold_crit) emote("snore") var/restingpwr = 1 + 4 * resting @@ -389,6 +389,8 @@ var/body_temperature_difference = 310.15 - bodytemperature switch(bodytemperature) if(-INFINITY to 260.15) //260.15 is 310.15 - 50, the temperature where you start to feel effects. + if(nutrition >= 2) //If we are very, very cold we'll use up quite a bit of nutriment to heat us up. + nutrition -= 2 bodytemperature += max((body_temperature_difference * metabolism_efficiency / BODYTEMP_AUTORECOVERY_DIVISOR), BODYTEMP_AUTORECOVERY_MINIMUM) if(260.15 to 310.15) bodytemperature += max(body_temperature_difference * metabolism_efficiency / BODYTEMP_AUTORECOVERY_DIVISOR, min(body_temperature_difference, BODYTEMP_AUTORECOVERY_MINIMUM/4)) diff --git a/code/modules/mob/living/carbon/monkey/inventory.dm b/code/modules/mob/living/carbon/monkey/inventory.dm index 46de68dddf..fad731d880 100644 --- a/code/modules/mob/living/carbon/monkey/inventory.dm +++ b/code/modules/mob/living/carbon/monkey/inventory.dm @@ -1,34 +1,32 @@ /mob/living/carbon/monkey/can_equip(obj/item/I, slot, disable_warning = 0) switch(slot) - if(slot_hands) - if(get_empty_held_indexes()) - return TRUE - return FALSE + if(slot_l_hand) + if(l_hand) + return 0 + return 1 + if(slot_r_hand) + if(r_hand) + return 0 + return 1 if(slot_wear_mask) if(wear_mask) - return FALSE + return 0 if( !(I.slot_flags & SLOT_MASK) ) - return FALSE - return TRUE - if(slot_neck) - if(wear_neck) - return FALSE - if( !(I.slot_flags & SLOT_NECK) ) - return FALSE - return TRUE + return 0 + return 1 if(slot_head) if(head) - return FALSE + return 0 if( !(I.slot_flags & SLOT_HEAD) ) - return FALSE - return TRUE + return 0 + return 1 if(slot_back) if(back) - return FALSE + return 0 if( !(I.slot_flags & SLOT_BACK) ) - return FALSE - return TRUE - return FALSE //Unsupported slot + return 0 + return 1 + return 0 //Unsupported slot diff --git a/code/modules/mob/living/carbon/monkey/life.dm b/code/modules/mob/living/carbon/monkey/life.dm index a8e581700b..40f66b6f3d 100644 --- a/code/modules/mob/living/carbon/monkey/life.dm +++ b/code/modules/mob/living/carbon/monkey/life.dm @@ -1,4 +1,4 @@ - +//This file was auto-corrected by findeclaration.exe on 25.5.2012 20:42:32 /mob/living/carbon/monkey @@ -22,24 +22,22 @@ if (radiation) if (radiation > 100) - if(!weakened) - emote("collapse") Weaken(10) src << "You feel weak." + emote("collapse") switch(radiation) if(50 to 75) if(prob(5)) - if(!weakened) - emote("collapse") Weaken(3) src << "You feel weak." + emote("collapse") if(75 to 100) if(prob(1)) src << "You mutate!" - randmutb() + randmutb(src) emote("gasp") domutcheck() ..() @@ -83,29 +81,29 @@ switch(bodytemperature) if(360 to 400) throw_alert("temp", /obj/screen/alert/hot, 1) - apply_damage(HEAT_DAMAGE_LEVEL_1, BURN) + adjustFireLoss(2) if(400 to 460) throw_alert("temp", /obj/screen/alert/hot, 2) - apply_damage(HEAT_DAMAGE_LEVEL_2, BURN) + adjustFireLoss(3) if(460 to INFINITY) throw_alert("temp", /obj/screen/alert/hot, 3) if(on_fire) - apply_damage(HEAT_DAMAGE_LEVEL_3, BURN) + adjustFireLoss(8) else - apply_damage(HEAT_DAMAGE_LEVEL_2, BURN) + adjustFireLoss(3) else if(bodytemperature < BODYTEMP_COLD_DAMAGE_LIMIT) if(!istype(loc, /obj/machinery/atmospherics/components/unary/cryo_cell)) switch(bodytemperature) if(200 to 260) throw_alert("temp", /obj/screen/alert/cold, 1) - apply_damage(COLD_DAMAGE_LEVEL_1, BURN) + adjustFireLoss(0.5) if(120 to 200) throw_alert("temp", /obj/screen/alert/cold, 2) - apply_damage(COLD_DAMAGE_LEVEL_2, BURN) + adjustFireLoss(1.5) if(-INFINITY to 120) throw_alert("temp", /obj/screen/alert/cold, 3) - apply_damage(COLD_DAMAGE_LEVEL_3, BURN) + adjustFireLoss(3) else clear_alert("temp") @@ -142,29 +140,7 @@ return 1 /mob/living/carbon/monkey/handle_fire() - . = ..() - if(on_fire) - - //the fire tries to damage the exposed clothes and items - var/list/burning_items = list() - //HEAD// - var/obj/item/clothing/head_clothes = null - if(wear_mask) - head_clothes = wear_mask - if(wear_neck) - head_clothes = wear_neck - if(head) - head_clothes = head - if(head_clothes) - burning_items += head_clothes - - if(back) - burning_items += back - - for(var/X in burning_items) - var/obj/item/I = X - if(!(I.resistance_flags & FIRE_PROOF)) - I.take_damage(fire_stacks, BURN, "fire", 0) - - bodytemperature += BODYTEMP_HEATING_MAX - + if(..()) + return + bodytemperature += BODYTEMP_HEATING_MAX + return diff --git a/code/modules/mob/living/carbon/monkey/monkey.dm b/code/modules/mob/living/carbon/monkey/monkey.dm index b20d4723b6..da603064d4 100644 --- a/code/modules/mob/living/carbon/monkey/monkey.dm +++ b/code/modules/mob/living/carbon/monkey/monkey.dm @@ -3,20 +3,16 @@ voice_name = "monkey" verb_say = "chimpers" icon = 'icons/mob/monkey.dmi' - icon_state = "" + icon_state = "monkey1" gender = NEUTER pass_flags = PASSTABLE languages_spoken = MONKEY languages_understood = MONKEY - ventcrawler = VENTCRAWLER_NUDE + ventcrawler = 1 butcher_results = list(/obj/item/weapon/reagent_containers/food/snacks/meat/slab/monkey = 5, /obj/item/stack/sheet/animalhide/monkey = 1) type_of_meat = /obj/item/weapon/reagent_containers/food/snacks/meat/slab/monkey gib_type = /obj/effect/decal/cleanable/blood/gibs unique_name = 1 - bodyparts = list(/obj/item/bodypart/chest/monkey, /obj/item/bodypart/head/monkey, /obj/item/bodypart/l_arm/monkey, - /obj/item/bodypart/r_arm/monkey, /obj/item/bodypart/r_leg/monkey, /obj/item/bodypart/l_leg/monkey) - - /mob/living/carbon/monkey/New() verbs += /mob/living/proc/mob_sleep @@ -26,13 +22,24 @@ gender = pick(MALE, FEMALE) real_name = name - //initialize limbs - create_bodyparts() + //initialize limbs, currently only used to handle cavity implant surgery, no dismemberment. + bodyparts = newlist(/obj/item/bodypart/chest, /obj/item/bodypart/head, /obj/item/bodypart/l_arm, + /obj/item/bodypart/r_arm, /obj/item/bodypart/r_leg, /obj/item/bodypart/l_leg) + for(var/X in bodyparts) + var/obj/item/bodypart/O = X + O.owner = src if(good_mutations.len) //genetic mutations have been set up. - initialize() //initialize monkey dna + initialize() - create_internal_organs() + internal_organs += new /obj/item/organ/appendix + internal_organs += new /obj/item/organ/lungs + internal_organs += new /obj/item/organ/heart + internal_organs += new /obj/item/organ/brain + internal_organs += new /obj/item/organ/tongue + + for(var/obj/item/organ/I in internal_organs) + I.Insert(src) ..() @@ -40,15 +47,6 @@ create_dna(src) dna.initialize_dna(random_blood_type()) - -/mob/living/carbon/monkey/create_internal_organs() - internal_organs += new /obj/item/organ/appendix - internal_organs += new /obj/item/organ/lungs - internal_organs += new /obj/item/organ/heart - internal_organs += new /obj/item/organ/brain - internal_organs += new /obj/item/organ/tongue - ..() - /mob/living/carbon/monkey/movement_delay() if(reagents) if(reagents.has_reagent("morphine")) @@ -66,6 +64,133 @@ . += (283.222 - bodytemperature) / 10 * 1.75 return . + config.monkey_delay +/mob/living/carbon/monkey/attack_paw(mob/living/M) + if(..()) //successful monkey bite. + var/damage = rand(1, 5) + if (stat != DEAD) + adjustBruteLoss(damage) + updatehealth() + return + +/mob/living/carbon/monkey/attack_larva(mob/living/carbon/alien/larva/L) + if(..()) //successful larva bite. + var/damage = rand(1, 3) + if(stat != DEAD) + L.amount_grown = min(L.amount_grown + damage, L.max_grown) + adjustBruteLoss(damage) + updatehealth() + +/mob/living/carbon/monkey/attack_hand(mob/living/carbon/human/M) + if(..()) //To allow surgery to return properly. + return + + switch(M.a_intent) + if("help") + help_shake_act(M) + if("grab") + grabbedby(M) + if("harm") + M.do_attack_animation(src) + if (prob(75)) + visible_message("[M] has punched [name]!", \ + "[M] has punched [name]!") + + playsound(loc, "punch", 25, 1, -1) + var/damage = rand(5, 10) + if (prob(40)) + damage = rand(10, 15) + if ( (paralysis < 5) && (health > 0) ) + Paralyse(rand(10, 15)) + visible_message("[M] has knocked out [name]!", \ + "[M] has knocked out [name]!") + adjustBruteLoss(damage) + add_logs(M, src, "attacked") + updatehealth() + else + playsound(loc, 'sound/weapons/punchmiss.ogg', 25, 1, -1) + visible_message("[M] has attempted to punch [name]!", \ + "[M] has attempted to punch [name]!") + if("disarm") + if (!( paralysis )) + M.do_attack_animation(src) + if (prob(25)) + Paralyse(2) + playsound(loc, 'sound/weapons/thudswoosh.ogg', 50, 1, -1) + add_logs(M, src, "pushed") + visible_message("[M] has pushed down [src]!", \ + "[M] has pushed down [src]!") + else + if(drop_item()) + playsound(loc, 'sound/weapons/thudswoosh.ogg', 50, 1, -1) + visible_message("[M] has disarmed [src]!", \ + "[M] has disarmed [src]!") + +/mob/living/carbon/monkey/attack_alien(mob/living/carbon/alien/humanoid/M) + if(..()) //if harm or disarm intent. + if (M.a_intent == "harm") + if ((prob(95) && health > 0)) + playsound(loc, 'sound/weapons/slice.ogg', 25, 1, -1) + var/damage = rand(15, 30) + if (damage >= 25) + damage = rand(20, 40) + if (paralysis < 15) + Paralyse(rand(10, 15)) + visible_message("[M] has wounded [name]!", \ + "[M] has wounded [name]!") + else + visible_message("[M] has slashed [name]!", \ + "[M] has slashed [name]!") + + if (stat != DEAD) + adjustBruteLoss(damage) + updatehealth() + add_logs(M, src, "attacked") + else + playsound(loc, 'sound/weapons/slashmiss.ogg', 25, 1, -1) + visible_message("[M] has attempted to lunge at [name]!", \ + "[M] has attempted to lunge at [name]!") + + if (M.a_intent == "disarm") + playsound(loc, 'sound/weapons/pierce.ogg', 25, 1, -1) + if(prob(95)) + Weaken(10) + visible_message("[M] has tackled down [name]!", \ + "[M] has tackled down [name]!") + else + if(drop_item()) + visible_message("[M] has disarmed [name]!", \ + "[M] has disarmed [name]!") + add_logs(M, src, "disarmed") + updatehealth() + return + +/mob/living/carbon/monkey/attack_animal(mob/living/simple_animal/M) + if(..()) + var/damage = rand(M.melee_damage_lower, M.melee_damage_upper) + switch(M.melee_damage_type) + if(BRUTE) + adjustBruteLoss(damage) + if(BURN) + adjustFireLoss(damage) + if(TOX) + adjustToxLoss(damage) + if(OXY) + adjustOxyLoss(damage) + if(CLONE) + adjustCloneLoss(damage) + if(STAMINA) + adjustStaminaLoss(damage) + updatehealth() + + +/mob/living/carbon/monkey/attack_slime(mob/living/simple_animal/slime/M) + if(..()) //successful slime attack + var/damage = rand(5, 35) + if(M.is_adult) + damage = rand(20, 40) + adjustBruteLoss(damage) + updatehealth() + /mob/living/carbon/monkey/Stat() ..() if(statpanel("Status")) @@ -84,6 +209,24 @@ internal = null return +/mob/living/carbon/monkey/ex_act(severity, target) + ..() + switch(severity) + if(1) + gib() + return + if(2) + adjustBruteLoss(60) + adjustFireLoss(60) + adjustEarDamage(30,120) + if(3) + adjustBruteLoss(30) + if (prob(50)) + Paralyse(10) + adjustEarDamage(15,60) + + updatehealth() + return /mob/living/carbon/monkey/IsAdvancedToolUser()//Unless its monkey mode monkeys cant use advanced tools return 0 @@ -106,27 +249,46 @@ //Lasertag bullshit if(lasercolor) if(lasercolor == "b")//Lasertag turrets target the opposing team, how great is that? -Sieve - if(is_holding_item_of_type(/obj/item/weapon/gun/energy/laser/redtag)) + if((istype(r_hand,/obj/item/weapon/gun/energy/laser/redtag)) || (istype(l_hand,/obj/item/weapon/gun/energy/laser/redtag))) threatcount += 4 if(lasercolor == "r") - if(is_holding_item_of_type(/obj/item/weapon/gun/energy/laser/bluetag)) + if((istype(r_hand,/obj/item/weapon/gun/energy/laser/bluetag)) || (istype(l_hand,/obj/item/weapon/gun/energy/laser/bluetag))) threatcount += 4 return threatcount //Check for weapons if(judgebot.weaponscheck) - for(var/obj/item/I in held_items) - if(judgebot.check_for_weapons(I)) - threatcount += 4 + if(judgebot.check_for_weapons(l_hand)) + threatcount += 4 + if(judgebot.check_for_weapons(r_hand)) + threatcount += 4 //mindshield implants imply trustworthyness - if(isloyal()) + if(isloyal(src)) threatcount -= 1 return threatcount +/mob/living/carbon/monkey/acid_act(acidpwr, toxpwr, acid_volume) + if(wear_mask) + if(!wear_mask.unacidable) + wear_mask.acid_act(acidpwr) + update_inv_wear_mask() + else + src << "Your mask protects you from the acid." + return + + take_organ_damage(min(6*toxpwr, acid_volume * acidpwr/10)) + +/mob/living/carbon/monkey/help_shake_act(mob/living/carbon/M) + if(health < 0 && ishuman(M)) + var/mob/living/carbon/human/H = M + H.do_cpr(src) + else + ..() + /mob/living/carbon/monkey/get_permeability_protection() var/protection = 0 if(head) @@ -136,6 +298,13 @@ protection = protection/7 //the rest of the body isn't covered. return protection +/mob/living/carbon/monkey/check_eye_prot() + var/number = ..() + if(istype(src.wear_mask, /obj/item/clothing/mask)) + var/obj/item/clothing/mask/MFP = src.wear_mask + number += MFP.flash_protect + return number + /mob/living/carbon/monkey/fully_heal(admin_revive = 0) if(!getorganslot("lungs")) var/obj/item/organ/lungs/L = new() diff --git a/code/modules/mob/living/carbon/monkey/monkey_defense.dm b/code/modules/mob/living/carbon/monkey/monkey_defense.dm deleted file mode 100644 index ecf5ce584a..0000000000 --- a/code/modules/mob/living/carbon/monkey/monkey_defense.dm +++ /dev/null @@ -1,216 +0,0 @@ - -/mob/living/carbon/monkey/get_eye_protection() - var/number = ..() - if(istype(src.wear_mask, /obj/item/clothing/mask)) - var/obj/item/clothing/mask/MFP = src.wear_mask - number += MFP.flash_protect - return number - -/mob/living/carbon/monkey/help_shake_act(mob/living/carbon/M) - if(health < 0 && ishuman(M)) - var/mob/living/carbon/human/H = M - H.do_cpr(src) - else - ..() - -/mob/living/carbon/monkey/attack_paw(mob/living/M) - if(..()) //successful monkey bite. - var/dam_zone = pick("chest", "l_hand", "r_hand", "l_leg", "r_leg") - var/obj/item/bodypart/affecting = get_bodypart(ran_zone(dam_zone)) - if(!affecting) - affecting = get_bodypart("chest") - if(M.limb_destroyer) - dismembering_strike(M, affecting.body_zone) - if(stat != DEAD) - var/dmg = rand(1, 5) - apply_damage(dmg, BRUTE, affecting) - damage_clothes(dmg, BRUTE, "melee", affecting.body_zone) - - - -/mob/living/carbon/monkey/attack_larva(mob/living/carbon/alien/larva/L) - if(..()) //successful larva bite. - var/damage = rand(1, 3) - if(stat != DEAD) - L.amount_grown = min(L.amount_grown + damage, L.max_grown) - var/obj/item/bodypart/affecting = get_bodypart(ran_zone(L.zone_selected)) - if(!affecting) - affecting = get_bodypart("chest") - apply_damage(damage, BRUTE, affecting) - damage_clothes(damage, BRUTE, "melee", affecting.body_zone) - -/mob/living/carbon/monkey/attack_hand(mob/living/carbon/human/M) - if(..()) //To allow surgery to return properly. - return - - switch(M.a_intent) - if("help") - help_shake_act(M) - if("grab") - grabbedby(M) - if("harm") - M.do_attack_animation(src, ATTACK_EFFECT_PUNCH) - if (prob(75)) - visible_message("[M] has punched [name]!", \ - "[M] has punched [name]!", null, COMBAT_MESSAGE_RANGE) - - playsound(loc, "punch", 25, 1, -1) - var/damage = rand(5, 10) - if (prob(40)) - damage = rand(10, 15) - if ( (paralysis < 5) && (health > 0) ) - Paralyse(rand(10, 15)) - visible_message("[M] has knocked out [name]!", \ - "[M] has knocked out [name]!", null, 5) - var/obj/item/bodypart/affecting = get_bodypart(ran_zone(M.zone_selected)) - if(!affecting) - affecting = get_bodypart("chest") - apply_damage(damage, BRUTE, affecting) - damage_clothes(damage, BRUTE, "melee", affecting.body_zone) - add_logs(M, src, "attacked") - - else - playsound(loc, 'sound/weapons/punchmiss.ogg', 25, 1, -1) - visible_message("[M] has attempted to punch [name]!", \ - "[M] has attempted to punch [name]!", null, COMBAT_MESSAGE_RANGE) - if("disarm") - if (!paralysis) - M.do_attack_animation(src, ATTACK_EFFECT_DISARM) - if (prob(25)) - Paralyse(2) - playsound(loc, 'sound/weapons/thudswoosh.ogg', 50, 1, -1) - add_logs(M, src, "pushed") - visible_message("[M] has pushed down [src]!", \ - "[M] has pushed down [src]!", null, COMBAT_MESSAGE_RANGE) - else - if(drop_item()) - playsound(loc, 'sound/weapons/thudswoosh.ogg', 50, 1, -1) - visible_message("[M] has disarmed [src]!", \ - "[M] has disarmed [src]!", null, COMBAT_MESSAGE_RANGE) - -/mob/living/carbon/monkey/attack_alien(mob/living/carbon/alien/humanoid/M) - if(..()) //if harm or disarm intent. - if (M.a_intent == INTENT_HARM) - if ((prob(95) && health > 0)) - playsound(loc, 'sound/weapons/slice.ogg', 25, 1, -1) - var/damage = rand(15, 30) - if (damage >= 25) - damage = rand(20, 40) - if (paralysis < 15) - Paralyse(rand(10, 15)) - visible_message("[M] has wounded [name]!", \ - "[M] has wounded [name]!", null, COMBAT_MESSAGE_RANGE) - else - visible_message("[M] has slashed [name]!", \ - "[M] has slashed [name]!", null, COMBAT_MESSAGE_RANGE) - - var/obj/item/bodypart/affecting = get_bodypart(ran_zone(M.zone_selected)) - add_logs(M, src, "attacked") - if(!affecting) - affecting = get_bodypart("chest") - if(!dismembering_strike(M, affecting.body_zone)) //Dismemberment successful - return 1 - apply_damage(damage, BRUTE, affecting) - damage_clothes(damage, BRUTE, "melee", affecting.body_zone) - - else - playsound(loc, 'sound/weapons/slashmiss.ogg', 25, 1, -1) - visible_message("[M] has attempted to lunge at [name]!", \ - "[M] has attempted to lunge at [name]!", null, COMBAT_MESSAGE_RANGE) - if (M.a_intent == INTENT_DISARM) - playsound(loc, 'sound/weapons/pierce.ogg', 25, 1, -1) - if(prob(95)) - Weaken(10) - visible_message("[M] has tackled down [name]!", \ - "[M] has tackled down [name]!", null, COMBAT_MESSAGE_RANGE) - else - if(drop_item()) - visible_message("[M] has disarmed [name]!", \ - "[M] has disarmed [name]!", null, COMBAT_MESSAGE_RANGE) - add_logs(M, src, "disarmed") - updatehealth() - - -/mob/living/carbon/monkey/attack_animal(mob/living/simple_animal/M) - if(..()) - var/damage = rand(M.melee_damage_lower, M.melee_damage_upper) - var/dam_zone = dismembering_strike(M, pick("chest", "l_hand", "r_hand", "l_leg", "r_leg")) - if(!dam_zone) //Dismemberment successful - return 1 - var/obj/item/bodypart/affecting = get_bodypart(ran_zone(dam_zone)) - if(!affecting) - affecting = get_bodypart("chest") - apply_damage(damage, M.melee_damage_type, affecting) - damage_clothes(damage, M.melee_damage_type, "melee", affecting.body_zone) - - - -/mob/living/carbon/monkey/attack_slime(mob/living/simple_animal/slime/M) - if(..()) //successful slime attack - var/damage = rand(5, 35) - if(M.is_adult) - damage = rand(20, 40) - var/dam_zone = dismembering_strike(M, pick("head", "chest", "l_arm", "r_arm", "l_leg", "r_leg")) - if(!dam_zone) //Dismemberment successful - return 1 - var/obj/item/bodypart/affecting = get_bodypart(ran_zone(dam_zone)) - if(!affecting) - affecting = get_bodypart("chest") - apply_damage(damage, BRUTE, affecting) - damage_clothes(damage, BRUTE, "melee", affecting.body_zone) - - -/mob/living/carbon/monkey/acid_act(acidpwr, acid_volume, bodyzone_hit) - . = 1 - if(!bodyzone_hit || bodyzone_hit == "head") - if(wear_mask) - if(!(wear_mask.resistance_flags & UNACIDABLE)) - wear_mask.acid_act(acidpwr) - else - src << "Your mask protects you from the acid." - return - if(head) - if(!(head.resistance_flags & UNACIDABLE)) - head.acid_act(acidpwr) - else - src << "Your hat protects you from the acid." - return - take_bodypart_damage(acidpwr * min(0.6, acid_volume*0.1)) - - -/mob/living/carbon/monkey/ex_act(severity, target, origin) - if(origin && istype(origin, /datum/spacevine_mutation) && isvineimmune(src)) - return - ..() - - switch (severity) - if (1) - gib() - return - - if (2) - take_overall_damage(60, 60) - damage_clothes(200, BRUTE, "bomb") - adjustEarDamage(30, 120) - if(prob(70)) - Paralyse(10) - - if(3) - take_overall_damage(30, 0) - damage_clothes(50, BRUTE, "bomb") - adjustEarDamage(15,60) - if (prob(50)) - Paralyse(8) - - - //attempt to dismember bodyparts - if(severity <= 2) - var/max_limb_loss = round(4/severity) //so you don't lose four limbs at severity 3. - for(var/X in bodyparts) - var/obj/item/bodypart/BP = X - if(prob(50/severity) && BP.body_zone != "chest") - BP.brute_dam = BP.max_damage - BP.dismember() - max_limb_loss-- - if(!max_limb_loss) - break diff --git a/code/modules/mob/living/carbon/monkey/punpun.dm b/code/modules/mob/living/carbon/monkey/punpun.dm index 995c30f6fe..2c0f533f3b 100644 --- a/code/modules/mob/living/carbon/monkey/punpun.dm +++ b/code/modules/mob/living/carbon/monkey/punpun.dm @@ -11,10 +11,14 @@ /mob/living/carbon/monkey/punpun/New() Read_Memory() + if(relic_hat) + equip_to_slot_or_del(new relic_hat, slot_head) + if(relic_mask) + equip_to_slot_or_del(new relic_mask, slot_wear_mask) if(ancestor_name) name = ancestor_name if(ancestor_chain > 1) - name += " \Roman[ancestor_chain]" + name += " [num2roman(ancestor_chain)]" else if(prob(5)) name = pick(rare_pet_monkey_names) @@ -23,14 +27,6 @@ gender = pick(MALE, FEMALE) ..() - //These have to be after the parent new to ensure that the monkey - //bodyparts are actually created before we try to equip things to - //those slots - if(relic_hat) - equip_to_slot_or_del(new relic_hat, slot_head) - if(relic_mask) - equip_to_slot_or_del(new relic_mask, slot_wear_mask) - /mob/living/carbon/monkey/punpun/Life() if(ticker.current_state == GAME_STATE_FINISHED && !memory_saved) Write_Memory(0) diff --git a/code/modules/mob/living/carbon/monkey/update_icons.dm b/code/modules/mob/living/carbon/monkey/update_icons.dm index 31831d5c50..b75443c71b 100644 --- a/code/modules/mob/living/carbon/monkey/update_icons.dm +++ b/code/modules/mob/living/carbon/monkey/update_icons.dm @@ -1,47 +1,29 @@ /mob/living/carbon/monkey/regenerate_icons() if(!..()) - update_body_parts() - update_hair() update_inv_wear_mask() update_inv_head() update_inv_back() + update_icons() update_transform() +/mob/living/carbon/monkey/update_icons() + cut_overlays() + icon_state = "monkey1" + for(var/image/I in overlays_standing) + add_overlay(I) //////// - -/mob/living/carbon/monkey/update_hair() - remove_overlay(HAIR_LAYER) - - var/obj/item/bodypart/head/HD = get_bodypart("head") - if(!HD) //Decapitated - return - - if(disabilities & HUSK) - return - - var/hair_hidden = 0 - - if(head) - var/obj/item/I = head - if(I.flags_inv & HIDEHAIR) - hair_hidden = 1 - if(wear_mask) - var/obj/item/clothing/mask/M = wear_mask - if(M.flags_inv & HIDEHAIR) - hair_hidden = 1 - if(!hair_hidden) - if(!getorgan(/obj/item/organ/brain)) //Applies the debrained overlay if there is no brain - var/image/I = image("icon"='icons/mob/human_face.dmi', "icon_state" = "debrained_s", "layer" = -HAIR_LAYER) - overlays_standing[HAIR_LAYER] = I - apply_overlay(HAIR_LAYER) - - /mob/living/carbon/monkey/update_fire() ..("Monkey_burning") +/mob/living/carbon/monkey/update_inv_handcuffed() + remove_overlay(HANDCUFF_LAYER) + if(handcuffed) + overlays_standing[HANDCUFF_LAYER] = image("icon"='icons/mob/mob.dmi', "icon_state"="handcuff1", "layer"=-HANDCUFF_LAYER) + apply_overlay(HANDCUFF_LAYER) + /mob/living/carbon/monkey/update_inv_legcuffed() remove_overlay(LEGCUFF_LAYER) if(legcuffed) @@ -65,12 +47,6 @@ I.screen_loc = ui_monkey_mask client.screen += I -//update whether our neck item appears on our hud. -/mob/living/carbon/monkey/update_hud_neck(obj/item/I) - if(client && hud_used && hud_used.hud_shown) - I.screen_loc = ui_monkey_mask - client.screen += I - //update whether our back item appears on our hud. /mob/living/carbon/monkey/update_hud_back(obj/item/I) if(client && hud_used && hud_used.hud_shown) diff --git a/code/modules/mob/living/carbon/say.dm b/code/modules/mob/living/carbon/say.dm index 8b1e3b6529..0b6c2cae10 100644 --- a/code/modules/mob/living/carbon/say.dm +++ b/code/modules/mob/living/carbon/say.dm @@ -24,7 +24,3 @@ var/obj/item/organ/tongue/T = getorganslot("tongue") if(T) . |= T.get_spans() - - var/obj/item/I = get_active_held_item() - if(I) - . |= I.get_held_item_speechspans(src) diff --git a/code/modules/mob/living/carbon/status_procs.dm b/code/modules/mob/living/carbon/status_procs.dm index abfe312c48..24c9305aa1 100644 --- a/code/modules/mob/living/carbon/status_procs.dm +++ b/code/modules/mob/living/carbon/status_procs.dm @@ -1,6 +1,6 @@ //Here are the procs used to modify status effects of a mob. //The effects include: stunned, weakened, paralysis, sleeping, resting, jitteriness, dizziness, ear damage, -// eye damage, eye_blind, eye_blurry, druggy, BLIND disability, NEARSIGHT disability, and HUSK disability. +// eye damage, eye_blind, eye_blurry, druggy, BLIND disability, and NEARSIGHT disability. /mob/living/carbon/damage_eyes(amount) if(amount>0) @@ -76,19 +76,4 @@ if(!(disabilities & NEARSIGHT)) disabilities |= NEARSIGHT overlay_fullscreen("nearsighted", /obj/screen/fullscreen/impaired, 1) - return 1 - -/mob/living/carbon/cure_husk() - if(disabilities & HUSK) - disabilities &= ~HUSK - status_flags &= ~DISFIGURED - update_body() - return 1 - -/mob/living/carbon/become_husk() - if(disabilities & HUSK) - return - disabilities |= HUSK - status_flags |= DISFIGURED //makes them unknown - update_body() - return 1 + return 1 \ No newline at end of file diff --git a/code/modules/mob/living/carbon/update_icons.dm b/code/modules/mob/living/carbon/update_icons.dm index 56418ff969..013dc0b8c2 100644 --- a/code/modules/mob/living/carbon/update_icons.dm +++ b/code/modules/mob/living/carbon/update_icons.dm @@ -40,51 +40,43 @@ overlays -= overlays_standing[cache_index] overlays_standing[cache_index] = null -/mob/living/carbon/regenerate_icons() - if(notransform) - return 1 - update_inv_hands() - update_inv_handcuffed() - update_inv_legcuffed() - update_fire() - - -/mob/living/carbon/update_inv_hands() - remove_overlay(HANDS_LAYER) +/mob/living/carbon/update_inv_r_hand() + remove_overlay(R_HAND_LAYER) if (handcuffed) - drop_all_held_items() + drop_r_hand() return - - var/list/hands = list() - for(var/obj/item/I in held_items) + if(r_hand) if(client && hud_used && hud_used.hud_version != HUD_STYLE_NOHUD) - I.screen_loc = ui_hand_position(get_held_index_of_item(I)) - client.screen += I - if(observers && observers.len) - for(var/M in observers) - var/mob/dead/observe = M - if(observe.client && observe.client.eye == src) - observe.client.screen += I - else - observers -= observe - if(!observers.len) - observers = null - break + r_hand.screen_loc = ui_rhand + client.screen += r_hand - var/t_state = I.item_state + var/t_state = r_hand.item_state if(!t_state) - t_state = I.icon_state + t_state = r_hand.icon_state - var/icon_file = I.lefthand_file - if(get_held_index_of_item(I) % 2 == 0) - icon_file = I.righthand_file + var/image/standing = r_hand.build_worn_icon(state = t_state, default_layer = R_HAND_LAYER, default_icon_file = r_hand.righthand_file, isinhands = TRUE) + overlays_standing[R_HAND_LAYER] = standing - var/image/standing = I.build_worn_icon(state = t_state, default_layer = HANDS_LAYER, default_icon_file = icon_file, isinhands = TRUE) - hands += standing + apply_overlay(R_HAND_LAYER) - overlays_standing[HANDS_LAYER] = hands - apply_overlay(HANDS_LAYER) +/mob/living/carbon/update_inv_l_hand() + remove_overlay(L_HAND_LAYER) + if(handcuffed) + drop_l_hand() + return + if(l_hand) + if(client && hud_used && hud_used.hud_version != HUD_STYLE_NOHUD) + l_hand.screen_loc = ui_lhand + client.screen += l_hand + var/t_state = l_hand.item_state + if(!t_state) + t_state = l_hand.icon_state + + var/image/standing = l_hand.build_worn_icon(state = t_state, default_layer = L_HAND_LAYER, default_icon_file = l_hand.lefthand_file, isinhands = TRUE) + overlays_standing[L_HAND_LAYER] = standing + + apply_overlay(L_HAND_LAYER) /mob/living/carbon/update_fire(var/fire_icon = "Generic_mob_burning") remove_overlay(FIRE_LAYER) @@ -93,58 +85,24 @@ apply_overlay(FIRE_LAYER) - - -/mob/living/carbon/update_damage_overlays() - remove_overlay(DAMAGE_LAYER) - - var/image/standing = image("icon"='icons/mob/dam_mob.dmi', "icon_state"="blank", "layer"=-DAMAGE_LAYER) - overlays_standing[DAMAGE_LAYER] = standing - - for(var/X in bodyparts) - var/obj/item/bodypart/BP = X - if(BP.dmg_overlay_type) - if(BP.brutestate) - standing.overlays += "[BP.dmg_overlay_type]_[BP.body_zone]_[BP.brutestate]0" //we're adding icon_states of the base image as overlays - if(BP.burnstate) - standing.overlays += "[BP.dmg_overlay_type]_[BP.body_zone]_0[BP.burnstate]" - - apply_overlay(DAMAGE_LAYER) - +/mob/living/carbon/regenerate_icons() + if(notransform) + return 1 + update_inv_r_hand() + update_inv_l_hand() + update_inv_handcuffed() + update_inv_legcuffed() + update_fire() /mob/living/carbon/update_inv_wear_mask() remove_overlay(FACEMASK_LAYER) - - if(!get_bodypart("head")) //Decapitated - return - - if(client && hud_used && hud_used.inv_slots[slot_wear_mask]) - var/obj/screen/inventory/inv = hud_used.inv_slots[slot_wear_mask] - inv.update_icon() - - if(wear_mask) + if(istype(wear_mask, /obj/item/clothing/mask)) if(!(head && (head.flags_inv & HIDEMASK))) var/image/standing = wear_mask.build_worn_icon(state = wear_mask.icon_state, default_layer = FACEMASK_LAYER, default_icon_file = 'icons/mob/mask.dmi') overlays_standing[FACEMASK_LAYER] = standing update_hud_wear_mask(wear_mask) - apply_overlay(FACEMASK_LAYER) -/mob/living/carbon/update_inv_neck() - remove_overlay(NECK_LAYER) - - if(client && hud_used && hud_used.inv_slots[slot_neck]) - var/obj/screen/inventory/inv = hud_used.inv_slots[slot_neck] - inv.update_icon() - - if(wear_neck) - if(!(head && (head.flags_inv & HIDENECK))) - var/image/standing = wear_neck.build_worn_icon(state = wear_neck.icon_state, default_layer = NECK_LAYER, default_icon_file = 'icons/mob/neck.dmi') - overlays_standing[NECK_LAYER] = standing - update_hud_neck(wear_neck) - - apply_overlay(NECK_LAYER) - /mob/living/carbon/update_inv_back() remove_overlay(BACK_LAYER) @@ -160,27 +118,14 @@ /mob/living/carbon/update_inv_head() remove_overlay(HEAD_LAYER) - - if(!get_bodypart("head")) //Decapitated - return - - if(client && hud_used && hud_used.inv_slots[slot_back]) - var/obj/screen/inventory/inv = hud_used.inv_slots[slot_head] - inv.update_icon() - if(head) var/image/standing = head.build_worn_icon(state = head.icon_state, default_layer = HEAD_LAYER, default_icon_file = 'icons/mob/head.dmi') overlays_standing[HEAD_LAYER] = standing update_hud_head(head) - apply_overlay(HEAD_LAYER) - /mob/living/carbon/update_inv_handcuffed() - remove_overlay(HANDCUFF_LAYER) - if(handcuffed) - overlays_standing[HANDCUFF_LAYER] = image("icon"='icons/mob/mob.dmi', "icon_state"="handcuff1", "layer"=-HANDCUFF_LAYER) - apply_overlay(HANDCUFF_LAYER) + return //mob HUD updates for items in our inventory @@ -188,10 +133,11 @@ //update whether handcuffs appears on our hud. /mob/living/carbon/proc/update_hud_handcuffed() if(hud_used) - for(var/hand in hud_used.hand_slots) - var/obj/screen/inventory/hand/H = hud_used.hand_slots[hand] - if(H) - H.update_icon() + var/obj/screen/inventory/R = hud_used.inv_slots[slot_r_hand] + var/obj/screen/inventory/L = hud_used.inv_slots[slot_l_hand] + if(R && L) + R.update_icon() + L.update_icon() //update whether our head item appears on our hud. /mob/living/carbon/proc/update_hud_head(obj/item/I) @@ -201,102 +147,17 @@ /mob/living/carbon/proc/update_hud_wear_mask(obj/item/I) return -//update whether our neck item appears on our hud. -/mob/living/carbon/proc/update_hud_neck(obj/item/I) - return - //update whether our back item appears on our hud. /mob/living/carbon/proc/update_hud_back(obj/item/I) return - //Overlays for the worn overlay so you can overlay while you overlay //eg: ammo counters, primed grenade flashing, etc. -/obj/item/proc/worn_overlays(isinhands = FALSE) +/obj/item/proc/worn_overlays(var/isinhands = FALSE) . = list() -/mob/living/carbon/update_body() - update_body_parts() - -/mob/living/carbon/proc/update_body_parts() - //CHECK FOR UPDATE - var/oldkey = icon_render_key - icon_render_key = generate_icon_render_key() - if(oldkey == icon_render_key) - return - - remove_overlay(BODYPARTS_LAYER) - - for(var/X in bodyparts) - var/obj/item/bodypart/BP = X - BP.update_limb() - - //LOAD ICONS - if(limb_icon_cache[icon_render_key]) - load_limb_from_cache() - return - - //GENERATE NEW LIMBS - var/list/new_limbs = list() - for(var/X in bodyparts) - var/obj/item/bodypart/BP = X - var/image/temp = BP.get_limb_icon() - if(temp) - new_limbs += temp - if(new_limbs.len) - overlays_standing[BODYPARTS_LAYER] = new_limbs - limb_icon_cache[icon_render_key] = new_limbs - - apply_overlay(BODYPARTS_LAYER) - update_damage_overlays() -///////////////////// -// Limb Icon Cache // -///////////////////// -/* - Called from update_body_parts() these procs handle the limb icon cache. - the limb icon cache adds an icon_render_key to a human mob, it represents: - - skin_tone (if applicable) - - gender - - limbs (stores as the limb name and whether it is removed/fine, organic/robotic) - These procs only store limbs as to increase the number of matching icon_render_keys - This cache exists because drawing 6/7 icons for humans constantly is quite a waste - See RemieRichards on irc.rizon.net #coderbus -*/ - -var/global/list/limb_icon_cache = list() - -/mob/living/carbon - var/icon_render_key = "" - - -//produces a key based on the mob's limbs - -/mob/living/carbon/proc/generate_icon_render_key() - for(var/X in bodyparts) - var/obj/item/bodypart/BP = X - . += "-[BP.body_zone]" - if(BP.use_digitigrade) - . += "-digitigrade[BP.use_digitigrade]" - if(BP.animal_origin) - . += "-[BP.animal_origin]" - if(BP.status == BODYPART_ORGANIC) - . += "-organic" - else - . += "-robotic" - - if(disabilities & HUSK) - . += "-husk" - - -//change the mob's icon to the one matching its key -/mob/living/carbon/proc/load_limb_from_cache() - if(limb_icon_cache[icon_render_key]) - remove_overlay(BODYPARTS_LAYER) - overlays_standing[BODYPARTS_LAYER] = limb_icon_cache[icon_render_key] - apply_overlay(BODYPARTS_LAYER) - update_damage_overlays() diff --git a/code/modules/mob/living/damage_procs.dm b/code/modules/mob/living/damage_procs.dm index 7a8b84828e..f89eb59fb3 100644 --- a/code/modules/mob/living/damage_procs.dm +++ b/code/modules/mob/living/damage_procs.dm @@ -9,22 +9,23 @@ standard 0 if fail */ /mob/living/proc/apply_damage(damage = 0,damagetype = BRUTE, def_zone = null, blocked = 0) - var/hit_percent = (100-blocked)/100 - if(!damage || (hit_percent <= 0)) + blocked = (100-blocked)/100 + if(!damage || (blocked <= 0)) return 0 switch(damagetype) if(BRUTE) - adjustBruteLoss(damage * hit_percent) + adjustBruteLoss(damage * blocked) if(BURN) - adjustFireLoss(damage * hit_percent) + adjustFireLoss(damage * blocked) if(TOX) - adjustToxLoss(damage * hit_percent) + adjustToxLoss(damage * blocked) if(OXY) - adjustOxyLoss(damage * hit_percent) + adjustOxyLoss(damage * blocked) if(CLONE) - adjustCloneLoss(damage * hit_percent) + adjustCloneLoss(damage * blocked) if(STAMINA) - adjustStaminaLoss(damage * hit_percent) + adjustStaminaLoss(damage * blocked) + updatehealth() return 1 @@ -48,30 +49,30 @@ /mob/living/proc/apply_effect(effect = 0,effecttype = STUN, blocked = 0) - var/hit_percent = (100-blocked)/100 - if(!effect || (hit_percent <= 0)) + blocked = (100-blocked)/100 + if(!effect || (blocked <= 0)) return 0 switch(effecttype) if(STUN) - Stun(effect * hit_percent) + Stun(effect * blocked) if(WEAKEN) - Weaken(effect * hit_percent) + Weaken(effect * blocked) if(PARALYZE) - Paralyse(effect * hit_percent) + Paralyse(effect * blocked) if(IRRADIATE) - radiation += max(effect * hit_percent, 0) + radiation += max(effect * blocked, 0) if(SLUR) - slurring = max(slurring,(effect * hit_percent)) + slurring = max(slurring,(effect * blocked)) if(STUTTER) if(status_flags & CANSTUN) // stun is usually associated with stutter - stuttering = max(stuttering,(effect * hit_percent)) + stuttering = max(stuttering,(effect * blocked)) if(EYE_BLUR) - blur_eyes(effect * hit_percent) + blur_eyes(effect * blocked) if(DROWSY) - drowsyness = max(drowsyness,(effect * hit_percent)) + drowsyness = max(drowsyness,(effect * blocked)) if(JITTER) if(status_flags & CANSTUN) - jitteriness = max(jitteriness,(effect * hit_percent)) + jitteriness = max(jitteriness,(effect * blocked)) return 1 @@ -98,128 +99,4 @@ apply_damage(stamina, STAMINA, null, blocked) if(jitter) apply_effect(jitter, JITTER, blocked) - return 1 - - -/mob/living/proc/getBruteLoss() - return bruteloss - -/mob/living/proc/adjustBruteLoss(amount, updating_health=1) - if(status_flags & GODMODE) - return 0 - bruteloss = Clamp((bruteloss + (amount * config.damage_multiplier)), 0, maxHealth*2) - if(updating_health) - updatehealth() - -/mob/living/proc/getOxyLoss() - return oxyloss - -/mob/living/proc/adjustOxyLoss(amount, updating_health=1) - if(status_flags & GODMODE) - return 0 - oxyloss = Clamp((oxyloss + (amount * config.damage_multiplier)), 0, maxHealth*2) - if(updating_health) - updatehealth() - -/mob/living/proc/setOxyLoss(amount, updating_health=1) - if(status_flags & GODMODE) - return 0 - oxyloss = amount - if(updating_health) - updatehealth() - -/mob/living/proc/getToxLoss() - return toxloss - -/mob/living/proc/adjustToxLoss(amount, updating_health=1) - if(status_flags & GODMODE) - return 0 - toxloss = Clamp((toxloss + (amount * config.damage_multiplier)), 0, maxHealth*2) - if(updating_health) - updatehealth() - return amount - -/mob/living/proc/setToxLoss(amount, updating_health=1) - if(status_flags & GODMODE) - return 0 - toxloss = amount - if(updating_health) - updatehealth() - -/mob/living/proc/getFireLoss() - return fireloss - -/mob/living/proc/adjustFireLoss(amount, updating_health=1) - if(status_flags & GODMODE) - return 0 - fireloss = Clamp((fireloss + (amount * config.damage_multiplier)), 0, maxHealth*2) - if(updating_health) - updatehealth() - -/mob/living/proc/getCloneLoss() - return cloneloss - -/mob/living/proc/adjustCloneLoss(amount, updating_health=1) - if(status_flags & GODMODE) - return 0 - cloneloss = Clamp((cloneloss + (amount * config.damage_multiplier)), 0, maxHealth*2) - if(updating_health) - updatehealth() - -/mob/living/proc/setCloneLoss(amount, updating_health=1) - if(status_flags & GODMODE) - return 0 - cloneloss = amount - if(updating_health) - updatehealth() - -/mob/living/proc/getBrainLoss() - return brainloss - -/mob/living/proc/adjustBrainLoss(amount) - if(status_flags & GODMODE) - return 0 - brainloss = Clamp((brainloss + (amount * config.damage_multiplier)), 0, maxHealth*2) - -/mob/living/proc/setBrainLoss(amount) - if(status_flags & GODMODE) - return 0 - brainloss = amount - -/mob/living/proc/getStaminaLoss() - return staminaloss - -/mob/living/proc/adjustStaminaLoss(amount, updating_stamina = 1) - return - -/mob/living/proc/setStaminaLoss(amount, updating_stamina = 1) - return - - -// heal ONE external organ, organ gets randomly selected from damaged ones. -/mob/living/proc/heal_bodypart_damage(brute, burn, updating_health = 1) - adjustBruteLoss(-brute, 0) //zero as argument for no instant health update - adjustFireLoss(-burn, 0) - if(updating_health) - updatehealth() - -// damage ONE external organ, organ gets randomly selected from damaged ones. -/mob/living/proc/take_bodypart_damage(brute, burn, updating_health = 1) - adjustBruteLoss(brute, 0) //zero as argument for no instant health update - adjustFireLoss(burn, 0) - if(updating_health) - updatehealth() - -// heal MANY bodyparts, in random order -/mob/living/proc/heal_overall_damage(brute, burn, only_robotic = 0, only_organic = 1, updating_health = 1) - adjustBruteLoss(-brute, 0) //zero as argument for no instant health update - adjustFireLoss(-burn, 0) - if(updating_health) - updatehealth() - -// damage MANY bodyparts, in random order -/mob/living/proc/take_overall_damage(brute, burn, updating_health = 1) - adjustBruteLoss(brute, 0) //zero as argument for no instant health update - adjustFireLoss(burn, 0) - if(updating_health) - updatehealth() \ No newline at end of file + return 1 \ No newline at end of file diff --git a/code/modules/mob/living/death.dm b/code/modules/mob/living/death.dm index cb684ebe7f..d04ae811ce 100644 --- a/code/modules/mob/living/death.dm +++ b/code/modules/mob/living/death.dm @@ -1,30 +1,27 @@ -/mob/living/gib(no_brain, no_organs, no_bodyparts) +/mob/living/gib(no_brain, no_organs) var/prev_lying = lying if(stat != DEAD) death(1) + if(buckled) + buckled.unbuckle_mob(src,force=1) //to update alien nest overlay, forced because we don't exist anymore + if(!prev_lying) gib_animation() - - spill_organs(no_brain, no_organs, no_bodyparts) - - if(!no_bodyparts) - spread_bodyparts(no_brain, no_organs) - - spawn_gibs(no_bodyparts) + if(!no_organs) + spill_organs(no_brain) + spawn_gibs() qdel(src) /mob/living/proc/gib_animation() return /mob/living/proc/spawn_gibs() - new /obj/effect/gibspawner/generic(loc, viruses) + gibs(loc, viruses) -/mob/living/proc/spill_organs() +/mob/living/proc/spill_organs(no_brain) return -/mob/living/proc/spread_bodyparts() - return /mob/living/dust() death(1) @@ -60,6 +57,8 @@ living_mob_list -= src if(!gibbed) dead_mob_list += src + else if(buckled) + buckled.unbuckle_mob(src,force=1) paralysis = 0 stunned = 0 weakened = 0 diff --git a/code/modules/mob/living/emote.dm b/code/modules/mob/living/emote.dm index f452d64d2d..8825a09787 100644 --- a/code/modules/mob/living/emote.dm +++ b/code/modules/mob/living/emote.dm @@ -5,7 +5,7 @@ /mob/living/emote(act, m_type=1, message = null) - if(stat == DEAD && (act != "deathgasp") || (status_flags & FAKEDEATH)) + if(stat) return var/param = null @@ -19,7 +19,7 @@ switch(act)//Hello, how would you like to order? Alphabetically! if ("aflap") if (!src.restrained()) - message = "[src] flaps [p_their()] wings ANGRILY!" + message = "[src] flaps its wings ANGRILY!" m_type = 2 if ("blush","blushes") @@ -51,7 +51,7 @@ m_type = 2 if ("cross","crosses") - message = "[src] crosses [p_their()] arms." + message = "[src] crosses their arms." m_type = 2 if ("chuckle","chuckles") @@ -73,7 +73,7 @@ m_type = 1 if ("deathgasp","deathgasps") - message = "[src] seizes up and falls limp, [p_their()] eyes dead and lifeless..." + message = "[src] seizes up and falls limp, its eyes dead and lifeless..." m_type = 1 if ("drool","drools") @@ -89,7 +89,7 @@ if ("flap","flaps") if (!src.restrained()) - message = "[src] flaps [p_their()] wings." + message = "[src] flaps its wings." m_type = 2 if ("flip","flips") @@ -212,7 +212,7 @@ if ("pout","pouts") message = "[src] pouts." m_type = 2 - + if ("scream","screams") message = "[src] screams!" m_type = 2 @@ -222,7 +222,7 @@ m_type = 1 if ("shake","shakes") - message = "[src] shakes [p_their()] head." + message = "[src] shakes its head." m_type = 1 if ("sigh","sighs") @@ -268,7 +268,7 @@ message = "[src] stares." if ("stretch","stretches") - message = "[src] stretches [p_their()] arms." + message = "[src] stretches their arms." m_type = 2 if ("sulk","sulks") @@ -276,12 +276,20 @@ m_type = 1 if ("surrender","surrenders") - message = "[src] puts [p_their()] hands on [p_their()] head and falls to the ground, [p_they()] surrender[p_s()]!" + message = "[src] puts their hands on their head and falls to the ground, they surrender!" if(sleeping) return //Can't surrender while asleep. Weaken(20) //So you can't resist. m_type = 1 + if ("faint","faints") + message = "[src] faints." + if(sleeping) + return //Can't faint while asleep + SetSleeping(10) //Short-short nap + m_type = 1 + + if ("sway","sways") message = "[src] sways around dizzily." m_type = 1 @@ -331,7 +339,7 @@ // Maybe some people are okay with that. for(var/mob/M in dead_mob_list) - if(!M.client || isnewplayer(M)) + if(!M.client || istype(M, /mob/new_player)) continue //skip monkeys, leavers and new players var/T = get_turf(src) if(M.stat == DEAD && M.client && (M.client.prefs.chat_toggles & CHAT_GHOSTSIGHT) && !(M in viewers(T,null))) diff --git a/code/modules/mob/living/life.dm b/code/modules/mob/living/life.dm index 1c3f9f3781..c6dcd735de 100644 --- a/code/modules/mob/living/life.dm +++ b/code/modules/mob/living/life.dm @@ -8,29 +8,25 @@ if (notransform) return if(!loc) - if(client) - for(var/obj/effect/landmark/error/E in landmarks_list) - loc = E.loc - break - message_admins("[key_name_admin(src)] was found to have no .loc with an attached client, if the cause is unknown it would be wise to ask how this was accomplished.") - log_game("[key_name(src)] was found to have no .loc with an attached client.") - else - return + return var/datum/gas_mixture/environment = loc.return_air() if(stat != DEAD) + //Breathing, if applicable handle_breathing() - if(stat != DEAD) + //Mutations and radiation handle_mutations_and_radiation() - if(stat != DEAD) + //Chemicals in the body handle_chemicals_in_body() - if(stat != DEAD) + //Random events (vomiting etc) handle_random_events() + . = 1 + //Handle temperature/pressure differences between body and environment if(environment) handle_environment(environment) @@ -45,13 +41,12 @@ if(machine) machine.check_eye(src) - if(stat != DEAD) - handle_disabilities() // eye, ear, brain damages - if(stat != DEAD) - handle_status_effects() //all special effects, stunned, weakened, jitteryness, hallucination, sleeping, etc if(stat != DEAD) - return 1 + handle_disabilities() // eye, ear, brain damages + handle_status_effects() //all special effects, stunned, weakened, jitteryness, hallucination, sleeping, etc + + /mob/living/proc/handle_breathing() return @@ -77,30 +72,13 @@ /mob/living/proc/handle_environment(datum/gas_mixture/environment) return -/mob/living/proc/handle_fire() - if(fire_stacks < 0) //If we've doused ourselves in water to avoid fire, dry off slowly - fire_stacks = min(0, fire_stacks + 1)//So we dry ourselves back to default, nonflammable. - if(!on_fire) - return 1 - if(fire_stacks > 0) - adjust_fire_stacks(-0.1) //the fire is slowly consumed - else - ExtinguishMob() - return - var/datum/gas_mixture/G = loc.return_air() // Check if we're standing in an oxygenless environment - if(!G.gases["o2"] || G.gases["o2"][MOLES] < 1) - ExtinguishMob() //If there's no oxygen in the tile we're on, put out the fire - return - var/turf/location = get_turf(src) - location.hotspot_expose(700, 50, 1) - /mob/living/proc/handle_stomach() return //this updates all special effects: stunned, sleeping, weakened, druggy, stuttering, etc.. /mob/living/proc/handle_status_effects() if(paralysis) - AdjustParalysis(-1, 1, 1) + AdjustParalysis(-1) if(stunned) AdjustStunned(-1, 1, 1) if(weakened) diff --git a/code/modules/mob/living/living.dm b/code/modules/mob/living/living.dm index 75a8ed51bd..3ffdb81f07 100644 --- a/code/modules/mob/living/living.dm +++ b/code/modules/mob/living/living.dm @@ -1,3 +1,13 @@ +/* I am informed this was added by Giacom to reduce mob-stacking in escape pods. +It's sorta problematic atm due to the shuttle changes I am trying to do +Sorry Giacom. Please don't be mad :( +/mob/living/Life() + ..() + var/area/A = get_area(loc) + if(A && A.push_dir) + push_mob_back(src, A.push_dir) +*/ + /mob/living/New() . = ..() generateStaticOverlay() @@ -27,10 +37,7 @@ med_hud_set_status() /mob/living/Destroy() - if(ranged_ability) - ranged_ability.remove_ranged_ability(src) - if(buckled) - buckled.unbuckle_mob(src,force=1) + ..() for(var/mob/living/simple_animal/drone/D in player_list) for(var/image/I in staticOverlays) @@ -39,15 +46,7 @@ qdel(I) staticOverlays.len = 0 remove_from_all_data_huds() - - return ..() - -/mob/living/ghostize(can_reenter_corpse = 1) - var/prev_client = client - . = ..() - if(.) - if(ranged_ability && prev_client) - ranged_ability.remove_mousepointer(prev_client) + return QDEL_HINT_HARDDEL /mob/living/proc/OpenCraftingMenu() @@ -125,10 +124,10 @@ if(!M.buckled && !M.has_buckled_mobs()) var/mob_swap //the puller can always swap with its victim if on grab intent - if(M.pulledby == src && a_intent == INTENT_GRAB) + if(M.pulledby == src && a_intent == "grab") mob_swap = 1 //restrained people act if they were on 'help' intent to prevent a person being pulled from being seperated from their puller - else if((M.restrained() || M.a_intent == INTENT_HELP) && (restrained() || a_intent == INTENT_HELP)) + else if((M.restrained() || M.a_intent == "help") && (restrained() || a_intent == "help")) mob_swap = 1 if(mob_swap) //switch our position with M @@ -160,10 +159,10 @@ if(!(M.status_flags & CANPUSH)) return 1 //anti-riot equipment is also anti-push - for(var/obj/item/I in M.held_items) - if(!istype(M, /obj/item/clothing)) - if(prob(I.block_chance*2)) - return 1 + if(M.r_hand && (prob(M.r_hand.block_chance * 2)) && !istype(M.r_hand, /obj/item/clothing)) + return 1 + if(M.l_hand && (prob(M.l_hand.block_chance * 2)) && !istype(M.l_hand, /obj/item/clothing)) + return 1 //Called when we bump onto an obj /mob/living/proc/ObjBump(obj/O) @@ -217,19 +216,26 @@ set hidden = 1 if (InCritical()) src.attack_log += "[src] has [whispered ? "whispered his final words" : "succumbed to death"] with [round(health, 0.1)] points of health!" - src.adjustOxyLoss(src.health - HEALTH_THRESHOLD_DEAD) + src.adjustOxyLoss(src.health - config.health_threshold_dead) updatehealth() if(!whispered) src << "You have given up life and succumbed to death." death() -/mob/living/incapacitated(ignore_restraints, ignore_grab) - if(stat || paralysis || stunned || weakened || (!ignore_restraints && restrained(ignore_grab))) - return 1 - /mob/living/proc/InCritical() return (src.health < 0 && src.health > -95 && stat == UNCONSCIOUS) +/mob/living/ex_act(severity, target) + ..() + flash_eyes() + +/mob/living/proc/updatehealth() + if(status_flags & GODMODE) + return + health = maxHealth - getOxyLoss() - getToxLoss() - getFireLoss() - getBruteLoss() - getCloneLoss() + update_stat() + med_hud_set_health() + //This proc is used for mobs which are affected by pressure to calculate the amount of pressure that actually //affects them once clothing is factored in. ~Errorage /mob/living/proc/calculate_affecting_pressure(pressure) @@ -252,9 +258,125 @@ temperature -= change if(actual < desired) temperature = desired +// if(istype(src, /mob/living/carbon/human)) +// world << "[src] ~ [src.bodytemperature] ~ [temperature]" return temperature +// MOB PROCS +/mob/living/proc/getBruteLoss() + return bruteloss + +/mob/living/proc/adjustBruteLoss(amount, updating_health=1) + if(status_flags & GODMODE) + return 0 + bruteloss = Clamp(bruteloss + amount, 0, maxHealth*2) + if(updating_health) + updatehealth() + +/mob/living/proc/getOxyLoss() + return oxyloss + +/mob/living/proc/adjustOxyLoss(amount, updating_health=1) + if(status_flags & GODMODE) + return 0 + oxyloss = Clamp(oxyloss + amount, 0, maxHealth*2) + if(updating_health) + updatehealth() + +/mob/living/proc/setOxyLoss(amount, updating_health=1) + if(status_flags & GODMODE) + return 0 + oxyloss = amount + if(updating_health) + updatehealth() + +/mob/living/proc/getToxLoss() + return toxloss + +/mob/living/proc/adjustToxLoss(amount, updating_health=1) + if(status_flags & GODMODE) + return 0 + toxloss = Clamp(toxloss + amount, 0, maxHealth*2) + if(updating_health) + updatehealth() + return amount + +/mob/living/proc/setToxLoss(amount, updating_health=1) + if(status_flags & GODMODE) + return 0 + toxloss = amount + if(updating_health) + updatehealth() + +/mob/living/proc/getFireLoss() + return fireloss + +/mob/living/proc/adjustFireLoss(amount, updating_health=1) + if(status_flags & GODMODE) + return 0 + fireloss = Clamp(fireloss + amount, 0, maxHealth*2) + if(updating_health) + updatehealth() + +/mob/living/proc/getCloneLoss() + return cloneloss + +/mob/living/proc/adjustCloneLoss(amount, updating_health=1) + if(status_flags & GODMODE) + return 0 + cloneloss = Clamp(cloneloss + amount, 0, maxHealth*2) + if(updating_health) + updatehealth() + +/mob/living/proc/setCloneLoss(amount, updating_health=1) + if(status_flags & GODMODE) + return 0 + cloneloss = amount + if(updating_health) + updatehealth() + +/mob/living/proc/getBrainLoss() + return brainloss + +/mob/living/proc/adjustBrainLoss(amount) + if(status_flags & GODMODE) + return 0 + brainloss = Clamp(brainloss + amount, 0, maxHealth*2) + +/mob/living/proc/setBrainLoss(amount) + if(status_flags & GODMODE) + return 0 + brainloss = amount + +/mob/living/proc/getStaminaLoss() + return staminaloss + +/mob/living/proc/adjustStaminaLoss(amount, updating_stamina = 1) + return + +/mob/living/carbon/adjustStaminaLoss(amount, updating_stamina = 1) + if(status_flags & GODMODE) + return 0 + staminaloss = Clamp(staminaloss + amount, 0, maxHealth*2) + if(updating_stamina) + update_stamina() + +/mob/living/carbon/alien/adjustStaminaLoss(amount, updating_stamina = 1) + return + +/mob/living/proc/setStaminaLoss(amount, updating_stamina = 1) + return + +/mob/living/carbon/setStaminaLoss(amount, updating_stamina = 1) + if(status_flags & GODMODE) + return 0 + staminaloss = amount + if(updating_stamina) + update_stamina() + +/mob/living/carbon/alien/setStaminaLoss(amount, updating_stamina = 1) + return /mob/living/proc/getMaxHealth() return maxHealth @@ -311,6 +433,16 @@ return 1 return 0 + +/mob/living/proc/electrocute_act(shock_damage, obj/source, siemens_coeff = 1, safety = 0, tesla_shock = 0) + return 0 //only carbon liveforms have this proc + +/mob/living/emp_act(severity) + var/list/L = src.get_contents() + for(var/obj/O in L) + O.emp_act(severity) + ..() + /mob/living/proc/can_inject() return 1 @@ -322,14 +454,33 @@ var/def_zone = ran_zone(t) return def_zone +// heal ONE external organ, organ gets randomly selected from damaged ones. +/mob/living/proc/heal_organ_damage(brute, burn, updating_health=1) + adjustBruteLoss(-brute, updating_health) + adjustFireLoss(-burn, updating_health) + if(updating_health) + updatehealth() -/mob/living/proc/updatehealth() - if(status_flags & GODMODE) - return - health = maxHealth - getOxyLoss() - getToxLoss() - getFireLoss() - getBruteLoss() - getCloneLoss() - update_stat() - med_hud_set_health() - med_hud_set_status() +// damage ONE external organ, organ gets randomly selected from damaged ones. +/mob/living/proc/take_organ_damage(brute, burn, updating_health=1) + adjustBruteLoss(brute) + adjustFireLoss(burn) + if(updating_health) + updatehealth() + +// heal MANY bodyparts, in random order +/mob/living/proc/heal_overall_damage(brute, burn, updating_health=1) + adjustBruteLoss(-brute, updating_health) + adjustFireLoss(-burn, updating_health) + if(updating_health) + updatehealth() + +// damage MANY bodyparts, in random order +/mob/living/proc/take_overall_damage(brute, burn, updating_health=1) + adjustBruteLoss(brute, updating_health) + adjustFireLoss(burn, updating_health) + if(updating_health) + updatehealth() //proc used to ressuscitate a mob /mob/living/proc/revive(full_heal = 0, admin_revive = 0) @@ -350,7 +501,7 @@ //proc used to completely heal a mob. /mob/living/proc/fully_heal(admin_revive = 0) restore_blood() - setToxLoss(0, 0) //zero as second argument not automatically call updatehealth(). + setToxLoss(0, 0) setOxyLoss(0, 0) setCloneLoss(0, 0) setBrainLoss(0) @@ -367,26 +518,26 @@ set_eye_damage(0) cure_nearsighted() cure_blind() - cure_husk() disabilities = 0 ear_deaf = 0 ear_damage = 0 hallucination = 0 - heal_overall_damage(100000, 100000, 0, 0, 1) //heal brute and burn dmg on both organic and robotic limbs, and update health right away. + heal_overall_damage(100000, 100000) ExtinguishMob() fire_stacks = 0 + updatehealth() update_canmove() //proc called by revive(), to check if we can actually ressuscitate the mob (we don't want to revive him and have him instantly die again) /mob/living/proc/can_be_revived() . = 1 - if(health <= HEALTH_THRESHOLD_DEAD) + if(health <= config.health_threshold_dead) return 0 /mob/living/proc/update_damage_overlays() return - +/* /mob/living/proc/Examine_OOC() set name = "Examine Meta-Info (OOC)" set category = "OOC" @@ -401,6 +552,7 @@ src << "OOC Metadata is not supported by this server!" return +*/ /mob/living/Move(atom/newloc, direct) if (buckled && buckled.loc != newloc) //not updating position @@ -435,27 +587,25 @@ if(pulledby && moving_diagonally != FIRST_DIAG_STEP && get_dist(src, pulledby) > 1)//separated from our puller and not in the middle of a diagonal move. pulledby.stop_pulling() - if (s_active && !(s_active.ClickAccessible(src, depth=STORAGE_VIEW_DEPTH) || s_active.Adjacent(src))) + if (s_active && !(s_active in contents) && !(s_active.loc in contents)) + // It's ugly. But everything related to inventory/storage is. -- c0 s_active.close(src) -/mob/living/movement_delay(ignorewalk = 0) +/mob/living/movement_delay() . = ..() - if(isopenturf(loc) && !is_flying()) + if(isturf(loc, /turf/open)) var/turf/open/T = loc . += T.slowdown - if(ignorewalk) - . += config.run_speed - else - switch(m_intent) - if(MOVE_INTENT_RUN) - if(drowsyness > 0) - . += 6 - . += config.run_speed - if(MOVE_INTENT_WALK) - . += config.walk_speed + switch(m_intent) + if("run") + if(drowsyness > 0) + . += 6 + . += config.run_speed + if("walk") + . += config.walk_speed /mob/living/proc/makeTrail(turf/T) - if(!has_gravity()) + if(!has_gravity(src)) return var/blood_exists = 0 @@ -485,42 +635,30 @@ TH.transfer_mob_blood_dna(src) /mob/living/carbon/human/makeTrail(turf/T) - if((NOBLOOD in dna.species.species_traits) || !bleed_rate || bleedsuppress) + if((NOBLOOD in dna.species.specflags) || !bleed_rate || bleedsuppress) return ..() /mob/living/proc/getTrail() - if(getBruteLoss() < 300) - return pick("ltrails_1", "ltrails_2") + if(ishuman(src)) + var/mob/living/carbon/human/H = src + var/species = H.dna.species.id + if(species == "xeno") //Here we can define custom blood trails for different species; copy+paste the xenos species to add new ones. + if(getBruteLoss() < 300) + return pick (list("xltrails_1", "xltrails2")) + else + return pick (list("xttrails_1", "xttrails2")) + else + if(getBruteLoss() < 300) + return pick("ltrails_1", "ltrails_2") + else + return pick("trails_1", "trails_2") + else - return pick("trails_1", "trails_2") - -/mob/living/experience_pressure_difference(pressure_difference, direction, pressure_resistance_prob_delta = 0) - if (client && client.move_delay >= world.time + world.tick_lag*2) - pressure_resistance_prob_delta -= 30 - - var/list/turfs_to_check = list() - - if (has_limbs) - var/turf/T = get_step(src, angle2dir(dir2angle(direction)+90)) - if (T) - turfs_to_check += T - - T = get_step(src, angle2dir(dir2angle(direction)-90)) - if (T) - turfs_to_check += T - - for (var/t in turfs_to_check) - T = t - if (T.density) - pressure_resistance_prob_delta -= 20 - continue - for (var/atom/movable/AM in T) - if (AM.density && AM.anchored) - pressure_resistance_prob_delta -= 20 - break - if(!slipping) - ..(pressure_difference, direction, pressure_resistance_prob_delta) + if(getBruteLoss() < 300) + return pick("ltrails_1", "ltrails_2") + else + return pick("trails_1", "trails_2") /mob/living/verb/resist() set name = "Resist" @@ -545,14 +683,6 @@ var/obj/C = loc C.container_resist(src) - else if(has_status_effect(/datum/status_effect/freon)) - src << "You start breaking out of the ice cube!" - if(do_mob(src, src, 40)) - if(has_status_effect(/datum/status_effect/freon)) - src << "You break out of the ice cube!" - remove_status_effect(/datum/status_effect/freon) - update_canmove() - else if(canmove) if(on_fire) resist_fire() //stop, drop, and roll @@ -606,13 +736,26 @@ fixed = 1 if(on && !floating && !fixed) animate(src, pixel_y = pixel_y + 2, time = 10, loop = -1) - sleep(10) - animate(src, pixel_y = pixel_y - 2, time = 10, loop = -1) floating = 1 else if(((!on || fixed) && floating)) animate(src, pixel_y = get_standard_pixel_y_offset(lying), time = 10) floating = 0 +//called when the mob receives a bright flash +/mob/living/proc/flash_eyes(intensity = 1, override_blindness_check = 0, affect_silicon = 0, visual = 0, type = /obj/screen/fullscreen/flash) + if(check_eye_prot() < intensity && (override_blindness_check || !(disabilities & BLIND))) + overlay_fullscreen("flash", type) + addtimer(src, "clear_fullscreen", 25, FALSE, "flash", 25) + return 1 + +//this returns the mob's protection against eye damage (number between -1 and 2) +/mob/living/proc/check_eye_prot() + return 0 + +//this returns the mob's protection against ear damage (0 or 1) +/mob/living/proc/check_ear_prot() + return 0 + // The src mob is trying to strip an item from someone // Override if a certain type of mob should be behave differently when stripping items (can't, for example) /mob/living/stripPanelUnequip(obj/item/what, mob/who, where) @@ -623,44 +766,33 @@ "[src] tries to remove [who]'s [what.name].") what.add_fingerprint(src) if(do_mob(src, who, what.strip_delay)) - if(what && Adjacent(who)) - if(islist(where)) - var/list/L = where - if(what == who.get_item_for_held_index(L[2])) - who.unEquip(what) - add_logs(src, who, "stripped", addition="of [what]") - if(what == who.get_item_by_slot(where)) - who.unEquip(what) - add_logs(src, who, "stripped", addition="of [what]") + if(what && what == who.get_item_by_slot(where) && Adjacent(who)) + who.unEquip(what) + add_logs(src, who, "stripped", addition="of [what]") // The src mob is trying to place an item on someone // Override if a certain mob should be behave differently when placing items (can't, for example) /mob/living/stripPanelEquip(obj/item/what, mob/who, where) - what = src.get_active_held_item() + what = src.get_active_hand() if(what && (what.flags & NODROP)) src << "You can't put \the [what.name] on [who], it's stuck to your hand!" return if(what) - var/list/where_list - if(islist(where)) - where_list = where - if(!what.mob_can_equip(who, src, where[1], 1)) - src << "\The [what.name] doesn't fit in that place!" - return - else - if(!what.mob_can_equip(who, src, where, 1)) - src << "\The [what.name] doesn't fit in that place!" - return + if(!what.mob_can_equip(who, where, 1)) + src << "\The [what.name] doesn't fit in that place!" + return visible_message("[src] tries to put [what] on [who].") if(do_mob(src, who, what.put_on_delay)) if(what && Adjacent(who)) unEquip(what) - if(where_list) - who.put_in_hand(what, where_list[2]) - else - who.equip_to_slot_if_possible(what, where, 0, 1) + who.equip_to_slot_if_possible(what, where, 0, 1) add_logs(src, who, "equipped", what) +/mob/living/singularity_act() + var/gain = 20 + investigate_log("([key_name(src)]) has been consumed by the singularity.","singulo") //Oh that's where the clown ended up! + gib() + return(gain) /mob/living/singularity_pull(S, current_size) if(current_size >= STAGE_SIX) @@ -668,6 +800,97 @@ else step_towards(src,S) +/mob/living/narsie_act() + if(is_servant_of_ratvar(src) && !stat) + src << "You resist Nar-Sie's influence... but not all of it. Run!" + adjustBruteLoss(35) + if(src && reagents) + reagents.add_reagent("heparin", 5) + return 0 + if(client) + makeNewConstruct(/mob/living/simple_animal/hostile/construct/harvester, src, null, 0) + else + new /mob/living/simple_animal/hostile/construct/harvester/hostile(get_turf(src)) + spawn_dust() + gib() + return + +/mob/living/ratvar_act() + if(!add_servant_of_ratvar(src) && !is_servant_of_ratvar(src)) + src << "A blinding light boils you alive! Run!" + adjustFireLoss(35) + if(src) + adjust_fire_stacks(1) + IgniteMob() + +/atom/movable/proc/do_attack_animation(atom/A, final_pixel_y, final_pixel_x) + var/pixel_x_diff = 0 + var/pixel_y_diff = 0 + if(!final_pixel_y) + final_pixel_y = initial(pixel_y) + + if(!final_pixel_x) + final_pixel_x = initial(pixel_x) //lol copypasta + + var/direction = get_dir(src, A) + if(direction & NORTH) + pixel_y_diff = 8 + else if(direction & SOUTH) + pixel_y_diff = -8 + + if(direction & EAST) + pixel_x_diff = 8 + else if(direction & WEST) + pixel_x_diff = -8 + + animate(src, pixel_x = pixel_x + pixel_x_diff, pixel_y = pixel_y + pixel_y_diff, time = 2) + //animate(pixel_x = initial(pixel_x), pixel_y = final_pixel_y, time = 2) + animate(pixel_x = pixel_x - pixel_x_diff, pixel_y = final_pixel_y, time = 2) //Why reset when you can just reverse? 99% less shit-breaking. + +/mob/living/do_attack_animation(atom/A) + var/final_pixel_y = get_standard_pixel_y_offset(lying) + ..(A, final_pixel_y) + floating = 0 // If we were without gravity, the bouncing animation got stopped, so we make sure we restart the bouncing after the next movement. + + // What icon do we use for the attack? + var/image/I + if(hand && l_hand) // Attacked with item in left hand. + I = image(l_hand.icon, A, l_hand.icon_state, A.layer + 0.1) + else if(!hand && r_hand) // Attacked with item in right hand. + I = image(r_hand.icon, A, r_hand.icon_state, A.layer + 0.1) + else // Attacked with a fist? + return + + // Who can see the attack? + var/list/viewing = list() + for(var/mob/M in viewers(A)) + if(M.client) + viewing |= M.client + flick_overlay(I, viewing, 5) // 5 ticks/half a second + + // Scale the icon. + I.transform *= 0.75 + // The icon should not rotate. + I.appearance_flags = APPEARANCE_UI_IGNORE_ALPHA + + // Set the direction of the icon animation. + var/direction = get_dir(src, A) + if(direction & NORTH) + I.pixel_y = -16 + else if(direction & SOUTH) + I.pixel_y = 16 + + if(direction & EAST) + I.pixel_x = -16 + else if(direction & WEST) + I.pixel_x = 16 + + if(!direction) // Attacked self?! + I.pixel_z = 16 + + // And animate the attack! + animate(I, alpha = 175, pixel_x = 0, pixel_y = 0, pixel_z = 0, time = 3) + /mob/living/proc/do_jitter_animation(jitteriness) var/amplitude = min(4, (jitteriness/100) + 1) var/pixel_x_diff = rand(-amplitude, amplitude) @@ -687,7 +910,7 @@ else if(istype(loc, /obj/structure/transit_tube_pod)) loc_temp = environment.temperature - else if(isspaceturf(get_turf(src))) + else if(istype(get_turf(src), /turf/open/space)) var/turf/heat_turf = get_turf(src) loc_temp = heat_turf.temperature @@ -713,16 +936,12 @@ /mob/living/Stat() ..() - if(statpanel("Status")) - if(ticker && ticker.mode) - for(var/datum/gang/G in ticker.mode.gangs) - if(G.is_dominating) - stat(null, "[G.name] Gang Takeover: [max(G.domination_time_remaining(), 0)]") - if(istype(ticker.mode, /datum/game_mode/blob)) - var/datum/game_mode/blob/B = ticker.mode - if(B.message_sent) - stat(null, "Blobs to Blob Win: [blobs_legit.len]/[B.blobwincount]") + if(ticker) + if(ticker.mode) + for(var/datum/gang/G in ticker.mode.gangs) + if(G.is_dominating) + stat(null, "[G.name] Gang Takeover: [max(G.domination_time_remaining(), 0)]") /mob/living/cancel_camera() ..() @@ -763,7 +982,7 @@ new path(src.loc) butcher_results.Remove(path) //In case you want to have things like simple_animals drop their butcher results on gib, so it won't double up below. visible_message("[user] butchers [src].") - gib(0, 0, 1) + gib() /mob/living/canUseTopic(atom/movable/M, be_close = 0, no_dextery = 0) if(incapacitated()) @@ -786,7 +1005,7 @@ /mob/living/carbon/human/update_stamina() if(staminaloss) var/total_health = (health - staminaloss) - if(total_health <= HEALTH_THRESHOLD_CRIT && !stat) + if(total_health <= config.health_threshold_crit && !stat) src << "You're too exhausted to keep going..." Weaken(5) setStaminaLoss(health - 2) @@ -801,10 +1020,7 @@ return 1 /mob/living/proc/return_soul() - hellbound = 0 if(mind) - if(mind.soulOwner.devilinfo)//Not sure how this could happen, but whatever. - mind.soulOwner.devilinfo.remove_soul(mind) mind.soulOwner = mind /mob/living/proc/has_bane(banetype) @@ -845,56 +1061,3 @@ G.Recall() G << "Your summoner has changed \ form!" - -/mob/living/proc/fakefireextinguish() - return - -/mob/living/proc/fakefire() - return - - - -//Mobs on Fire -/mob/living/proc/IgniteMob() - if(fire_stacks > 0 && !on_fire) - on_fire = 1 - src.visible_message("[src] catches fire!", \ - "You're set on fire!") - src.AddLuminosity(3) - throw_alert("fire", /obj/screen/alert/fire) - update_fire() - return TRUE - return FALSE - -/mob/living/proc/ExtinguishMob() - if(on_fire) - on_fire = 0 - fire_stacks = 0 - src.AddLuminosity(-3) - clear_alert("fire") - update_fire() - -/mob/living/proc/adjust_fire_stacks(add_fire_stacks) //Adjusting the amount of fire_stacks we have on person - fire_stacks = Clamp(fire_stacks + add_fire_stacks, -20, 20) - if(on_fire && fire_stacks <= 0) - ExtinguishMob() - -//Share fire evenly between the two mobs -//Called in MobBump() and Crossed() -/mob/living/proc/spreadFire(mob/living/L) - if(!istype(L)) - return - var/L_old_on_fire = L.on_fire - - if(on_fire) //Only spread fire stacks if we're on fire - fire_stacks /= 2 - L.fire_stacks += fire_stacks - if(L.IgniteMob()) - log_game("[key_name(src)] bumped into [key_name(L)] and set them on fire") - - if(L_old_on_fire) //Only ignite us and gain their stacks if they were onfire before we bumped them - L.fire_stacks /= 2 - fire_stacks += L.fire_stacks - IgniteMob() - -//Mobs on Fire end diff --git a/code/modules/mob/living/living_defense.dm b/code/modules/mob/living/living_defense.dm index 22d6057608..0d8d2d2a4a 100644 --- a/code/modules/mob/living/living_defense.dm +++ b/code/modules/mob/living/living_defense.dm @@ -1,4 +1,3 @@ - /mob/living/proc/run_armor_check(def_zone = null, attack_flag = "melee", absorb_text = null, soften_text = null, armour_penetration, penetrated_text) var/armor = getarmor(def_zone, attack_flag) @@ -25,33 +24,22 @@ /mob/living/proc/getarmor(def_zone, type) return 0 -//this returns the mob's protection against eye damage (number between -1 and 2) -/mob/living/proc/get_eye_protection() - return 0 - -//this returns the mob's protection against ear damage (0:no protection; 1: some ear protection; 2: has no ears) -/mob/living/proc/get_ear_protection() - return 0 - -/mob/living/proc/on_hit(obj/item/projectile/P) +/mob/living/proc/on_hit(obj/item/projectile/proj_type) return /mob/living/bullet_act(obj/item/projectile/P, def_zone) var/armor = run_armor_check(def_zone, P.flag, "","",P.armour_penetration) if(!P.nodamage) apply_damage(P.damage, P.damage_type, def_zone, armor) - if(P.dismemberment) - check_projectile_dismemberment(P, def_zone) - return P.on_hit(src, armor) + return P.on_hit(src, armor, def_zone) -/mob/living/proc/check_projectile_dismemberment(obj/item/projectile/P, def_zone) - return 0 - -/obj/item/proc/get_volume_by_throwforce_and_or_w_class() - if(throwforce && w_class) - return Clamp((throwforce + w_class) * 5, 30, 100)// Add the item's throwforce to its weight class and multiply by 5, then clamp the value between 30 and 100 - else if(w_class) - return Clamp(w_class * 8, 20, 100) // Multiply the item's weight class by 8, then clamp the value between 20 and 100 +/proc/vol_by_throwforce_and_or_w_class(obj/item/I) + if(!I) + return 0 + if(I.throwforce && I.w_class) + return Clamp((I.throwforce + I.w_class) * 5, 30, 100)// Add the item's throwforce to its weight class and multiply by 5, then clamp the value between 30 and 100 + else if(I.w_class) + return Clamp(I.w_class * 8, 20, 100) // Multiply the item's weight class by 8, then clamp the value between 20 and 100 else return 0 @@ -60,7 +48,7 @@ var/obj/item/I = AM var/zone = ran_zone("chest", 65)//Hits a random part of the body, geared towards the chest var/dtype = BRUTE - var/volume = I.get_volume_by_throwforce_and_or_w_class() + var/volume = vol_by_throwforce_and_or_w_class(I) if(istype(I,/obj/item/weapon)) //If the item is a weapon... var/obj/item/weapon/W = I dtype = W.damtype @@ -81,48 +69,155 @@ visible_message("[src] has been hit by [I].", \ "[src] has been hit by [I].") var/armor = run_armor_check(zone, "melee", "Your armor has protected your [parse_zone(zone)].", "Your armor has softened hit to your [parse_zone(zone)].",I.armour_penetration) - apply_damage(I.throwforce, dtype, zone, armor) + apply_damage(I.throwforce, dtype, zone, armor, I) if(I.thrownby) add_logs(I.thrownby, src, "hit", I) - else - return 1 else playsound(loc, 'sound/weapons/genhit.ogg', 50, 1, -1) ..() - /mob/living/mech_melee_attack(obj/mecha/M) - if(M.occupant.a_intent == INTENT_HARM) + if(M.occupant.a_intent == "harm") M.do_attack_animation(src) if(M.damtype == "brute") step_away(src,M,15) switch(M.damtype) - if(BRUTE) + if("brute") Paralyse(1) take_overall_damage(rand(M.force/2, M.force)) playsound(src, 'sound/weapons/punch4.ogg', 50, 1) - if(BURN) + if("fire") take_overall_damage(0, rand(M.force/2, M.force)) playsound(src, 'sound/items/Welder.ogg', 50, 1) - if(TOX) + if("tox") M.mech_toxin_damage(src) else return updatehealth() visible_message("[M.name] has hit [src]!", \ - "[M.name] has hit [src]!", null, COMBAT_MESSAGE_RANGE) + "[M.name] has hit [src]!") add_logs(M.occupant, src, "attacked", M, "(INTENT: [uppertext(M.occupant.a_intent)]) (DAMTYPE: [uppertext(M.damtype)])") else step_away(src,M) add_logs(M.occupant, src, "pushed", M) - visible_message("[M] pushes [src] out of the way.", null, null, 5) + visible_message("[M] pushes [src] out of the way.") + + +//Mobs on Fire +/mob/living/proc/IgniteMob() + if(fire_stacks > 0 && !on_fire) + on_fire = 1 + src.visible_message("[src] catches fire!", \ + "You're set on fire!") + src.set_light(light_range + 3) + throw_alert("fire", /obj/screen/alert/fire) + update_fire() + return TRUE + return FALSE + +/mob/living/proc/ExtinguishMob() + if(on_fire) + on_fire = 0 + fire_stacks = 0 + src.set_light(light_range - 3) + clear_alert("fire") + update_fire() + +/mob/living/proc/update_fire() + return + +/mob/living/proc/adjust_fire_stacks(add_fire_stacks) //Adjusting the amount of fire_stacks we have on person + fire_stacks = Clamp(fire_stacks + add_fire_stacks, -20, 20) + if(on_fire && fire_stacks <= 0) + ExtinguishMob() + +/mob/living/proc/handle_fire() + if(fire_stacks < 0) //If we've doused ourselves in water to avoid fire, dry off slowly + fire_stacks = min(0, fire_stacks + 1)//So we dry ourselves back to default, nonflammable. + if(!on_fire) + return 1 + if(fire_stacks > 0) + adjust_fire_stacks(-0.1) //the fire is slowly consumed + else + ExtinguishMob() + return + var/datum/gas_mixture/G = loc.return_air() // Check if we're standing in an oxygenless environment + if(!G.gases["o2"] || G.gases["o2"][MOLES] < 1) + ExtinguishMob() //If there's no oxygen in the tile we're on, put out the fire + return + var/turf/location = get_turf(src) + location.hotspot_expose(700, 50, 1) /mob/living/fire_act() adjust_fire_stacks(3) IgniteMob() -/mob/living/proc/grabbedby(mob/living/carbon/user, supress_message = 0) - if(user == src || anchored) + +//Share fire evenly between the two mobs +//Called in MobBump() and Crossed() +/mob/living/proc/spreadFire(mob/living/L) + if(!istype(L)) + return + var/L_old_on_fire = L.on_fire + + if(on_fire) //Only spread fire stacks if we're on fire + fire_stacks /= 2 + L.fire_stacks += fire_stacks + if(L.IgniteMob()) + log_game("[key_name(src)] bumped into [key_name(L)] and set them on fire") + + if(L_old_on_fire) //Only ignite us and gain their stacks if they were onfire before we bumped them + L.fire_stacks /= 2 + fire_stacks += L.fire_stacks + IgniteMob() + +//Mobs on Fire end + +/mob/living/proc/dominate_mind(mob/living/target, duration = 100, silent) //Allows one mob to assume control of another while imprisoning the old consciousness for a time + if(!target) + return 0 + if(target.mental_dominator) + src << "[target] is already being controlled by someone else!" + return 0 + if(!target.mind) + src << "[target] is mindless and would make you permanently catatonic!" + return 0 + if(!silent) + src << "You pounce upon [target]'s mind and seize control of their body!" + target << "Your control over your body is wrenched away from you!" + target.mind_control_holder = new/mob/living/mind_control_holder(target) + target.mind_control_holder.real_name = "imprisoned mind of [target.real_name]" + target.mind.transfer_to(target.mind_control_holder) + mind.transfer_to(target) + target.mental_dominator = src + spawn(duration) + if(!src) + if(!silent) + target << "You try to return to your own body, but sense nothing! You're being forced out!" + target.ghostize(1) + target.mind_control_holder.mind.transfer_to(target) + if(!silent) + target << "You take control of your own body again!" + return 0 + if(!silent) + target << "You're forced out! You return to your own body." + target.mind.transfer_to(src) + target.mind_control_holder.mind.transfer_to(target) + qdel(mind_control_holder) + if(!silent) + target << "You take control of your own body again!" + return 1 + +/mob/living/acid_act(acidpwr, toxpwr, acid_volume) + take_organ_damage(min(10*toxpwr, acid_volume * toxpwr)) + +/mob/living/proc/grabbedby(mob/living/carbon/user, mob/living/target, supress_message = 0) + +// if(grab_state >= GRAB_AGGRESSIVE && !pulling.anchored && iscarbon(pulling) && user.zone_selected == "mouth") +// src.vore_attack(src, devour_time = 100) //It would be better to define it on this level instead of human_defense.dm, but you'd probably need to do more work down the line. ex: xeno devour code +// return + + if(anchored) return 0 if(!user.pulling || user.pulling != src) user.start_pulling(src, supress_message) @@ -142,11 +237,11 @@ if(user.grab_state) //only the first upgrade is instantaneous var/old_grab_state = user.grab_state var/grab_upgrade_time = 30 - visible_message("[user] starts to tighten [user.p_their()] grip on [src]!", \ - "[user] starts to tighten [user.p_their()] grip on you!") + visible_message("[user] starts to tighten \his grip on [src]!", \ + "[user] starts to tighten \his grip on you!") if(!do_mob(user, src, grab_upgrade_time)) return 0 - if(!user.pulling || user.pulling != src || user.grab_state != old_grab_state || user.a_intent != INTENT_GRAB) + if(!user.pulling || user.pulling != src || user.grab_state != old_grab_state || user.a_intent != "grab") return 0 user.grab_state++ switch(user.grab_state) @@ -154,7 +249,8 @@ add_logs(user, src, "grabbed", addition="aggressively") visible_message("[user] has grabbed [src] aggressively!", \ "[user] has grabbed [src] aggressively!") - drop_all_held_items() + drop_r_hand() + drop_l_hand() stop_pulling() if(GRAB_NECK) visible_message("[user] has grabbed [src] by the neck!",\ @@ -185,7 +281,7 @@ add_logs(M, src, "attacked") M.do_attack_animation(src) visible_message("The [M.name] glomps [src]!", \ - "The [M.name] glomps [src]!", null, COMBAT_MESSAGE_RANGE) + "The [M.name] glomps [src]!") return 1 /mob/living/attack_animal(mob/living/simple_animal/M) @@ -198,33 +294,38 @@ playsound(loc, M.attack_sound, 50, 1, 1) M.do_attack_animation(src) visible_message("\The [M] [M.attacktext] [src]!", \ - "\The [M] [M.attacktext] [src]!", null, COMBAT_MESSAGE_RANGE) + "\The [M] [M.attacktext] [src]!") add_logs(M, src, "attacked") return 1 /mob/living/attack_paw(mob/living/carbon/monkey/M) - if(isturf(loc) && istype(loc.loc, /area/start)) + if(!ticker || !ticker.mode) + M << "You cannot attack people before the game has started." + return 0 + + if (istype(loc, /turf) && istype(loc.loc, /area/start)) M << "No attacking people at spawn, you jackass." return 0 - if (M.a_intent == INTENT_HARM) + if (M.a_intent == "harm") if(M.is_muzzled() || (M.wear_mask && M.wear_mask.flags_cover & MASKCOVERSMOUTH)) M << "You can't bite with your mouth covered!" return 0 - M.do_attack_animation(src, ATTACK_EFFECT_BITE) + M.do_attack_animation(src) if (prob(75)) add_logs(M, src, "attacked") playsound(loc, 'sound/weapons/bite.ogg', 50, 1, -1) visible_message("[M.name] bites [src]!", \ - "[M.name] bites [src]!", null, COMBAT_MESSAGE_RANGE) + "[M.name] bites [src]!") return 1 else visible_message("[M.name] has attempted to bite [src]!", \ - "[M.name] has attempted to bite [src]!", null, COMBAT_MESSAGE_RANGE) + "[M.name] has attempted to bite [src]!") return 0 /mob/living/attack_larva(mob/living/carbon/alien/larva/L) + switch(L.a_intent) if("help") visible_message("[L.name] rubs its head against [src].") @@ -235,16 +336,20 @@ if(prob(90)) add_logs(L, src, "attacked") visible_message("[L.name] bites [src]!", \ - "[L.name] bites [src]!", null, COMBAT_MESSAGE_RANGE) + "[L.name] bites [src]!") playsound(loc, 'sound/weapons/bite.ogg', 50, 1, -1) return 1 else visible_message("[L.name] has attempted to bite [src]!", \ - "[L.name] has attempted to bite [src]!", null, COMBAT_MESSAGE_RANGE) + "[L.name] has attempted to bite [src]!") return 0 /mob/living/attack_alien(mob/living/carbon/alien/humanoid/M) - if(isturf(loc) && istype(loc.loc, /area/start)) + if(!ticker || !ticker.mode) + M << "You cannot attack people before the game has started." + return 0 + + if (istype(loc, /turf) && istype(loc.loc, /area/start)) M << "No attacking people at spawn, you jackass." return 0 @@ -256,103 +361,26 @@ if ("grab") grabbedby(M) return 0 - if("harm") + else M.do_attack_animation(src) return 1 - if("disarm") - M.do_attack_animation(src, ATTACK_EFFECT_DISARM) - return 1 -/mob/living/ex_act(severity, target, origin) - if(origin && istype(origin, /datum/spacevine_mutation) && isvineimmune(src)) - return - ..() - flash_act() +/mob/living/incapacitated(ignore_restraints, ignore_grab) + if(stat || paralysis || stunned || weakened || (!ignore_restraints && restrained(ignore_grab))) + return 1 //Looking for irradiate()? It's been moved to radiation.dm under the rad_act() for mobs. -/mob/living/acid_act(acidpwr, acid_volume) - take_bodypart_damage(acidpwr * min(1, acid_volume * 0.1)) - return 1 - - -/mob/living/proc/electrocute_act(shock_damage, obj/source, siemens_coeff = 1, safety = 0, tesla_shock = 0, illusion = 0) - if(shock_damage > 0) - if(!illusion) - adjustFireLoss(shock_damage) - visible_message( - "[src] was shocked by \the [source]!", \ - "You feel a powerful shock coursing through your body!", \ - "You hear a heavy electrical crack." \ - ) - return shock_damage - -/mob/living/emp_act(severity) - var/list/L = src.get_contents() - for(var/obj/O in L) - O.emp_act(severity) +/mob/living/Stun(amount, updating = 1, ignore_canstun = 0) + if(stun_absorption && !stat) + visible_message("[src]'s yellow aura momentarily intensifies!", "Your ward absorbs the stun!") + stun_absorption_count += amount + return 0 ..() -/mob/living/singularity_act() - var/gain = 20 - investigate_log("([key_name(src)]) has been consumed by the singularity.","singulo") //Oh that's where the clown ended up! - gib() - return(gain) - -/mob/living/narsie_act() - if(is_servant_of_ratvar(src) && !stat) - src << "You resist Nar-Sie's influence... but not all of it. Run!" - adjustBruteLoss(35) - if(src && reagents) - reagents.add_reagent("heparin", 5) - return FALSE - if(client) - makeNewConstruct(/mob/living/simple_animal/hostile/construct/harvester, src, null, 0) - else - switch(rand(1, 10)) - if(1) - new /mob/living/simple_animal/hostile/construct/armored/hostile(get_turf(src)) - if(2) - new /mob/living/simple_animal/hostile/construct/wraith/hostile(get_turf(src)) - if(3 to 6) - new /mob/living/simple_animal/hostile/construct/builder/hostile(get_turf(src)) - if(6 to 10) - new /mob/living/simple_animal/hostile/construct/harvester/hostile(get_turf(src)) - spawn_dust() - gib() - return TRUE - - -/mob/living/ratvar_act() - if(!is_servant_of_ratvar(src) && !add_servant_of_ratvar(src)) - src << "A blinding light boils you alive! Run!" - adjustFireLoss(35) - if(src) - adjust_fire_stacks(1) - IgniteMob() - return FALSE - return TRUE - - -//called when the mob receives a bright flash -/mob/living/proc/flash_act(intensity = 1, override_blindness_check = 0, affect_silicon = 0, visual = 0, type = /obj/screen/fullscreen/flash) - if(get_eye_protection() < intensity && (override_blindness_check || !(disabilities & BLIND))) - overlay_fullscreen("flash", type) - addtimer(src, "clear_fullscreen", 25, TIMER_NORMAL, "flash", 25) - return 1 - -//called when the mob receives a loud bang -/mob/living/proc/soundbang_act() - return 0 - -//to damage the clothes worn by a mob -/mob/living/proc/damage_clothes(damage_amount, damage_type = BRUTE, damage_flag = 0, def_zone) - return - - -/mob/living/do_attack_animation(atom/A, visual_effect_icon, obj/item/used_item, no_effect, end_pixel_y) - if(A != src) - end_pixel_y = get_standard_pixel_y_offset(lying) - used_item = get_active_held_item() +/mob/living/Weaken(amount, updating = 1, ignore_canweaken = 0) + if(stun_absorption && !stat) + visible_message("[src]'s yellow aura momentarily intensifies!", "Your ward absorbs the stun!") + stun_absorption_count += amount + return 0 ..() - floating = 0 // If we were without gravity, the bouncing animation got stopped, so we make sure we restart the bouncing after the next movement. diff --git a/code/modules/mob/living/living_defines.dm b/code/modules/mob/living/living_defines.dm index 42e5ca690a..c661632aaf 100644 --- a/code/modules/mob/living/living_defines.dm +++ b/code/modules/mob/living/living_defines.dm @@ -5,7 +5,6 @@ sight = 0 see_in_dark = 2 hud_possible = list(HEALTH_HUD,STATUS_HUD,ANTAG_HUD) - pressure_resistance = 10 //Health and life related vars var/maxHealth = 100 //Maximum health that should be possible. @@ -42,8 +41,6 @@ var/bloodcrawl = 0 //0 No blood crawling, BLOODCRAWL for bloodcrawling, BLOODCRAWL_EAT for crawling+mob devour var/holder = null //The holder for blood crawling var/ventcrawler = 0 //0 No vent crawling, 1 vent crawling in the nude, 2 vent crawling always - var/limb_destroyer = 0 //1 Sets AI behavior that allows mobs to target and dismember limbs with their basic attack. - var/floating = 0 var/mob_size = MOB_SIZE_HUMAN var/metabolism_efficiency = 1 //more or less efficiency to metabolize helpful/harmful reagents and regulate body temperature.. @@ -67,11 +64,11 @@ var/list/weather_immunities = list() - var/stun_absorption = null //converted to a list of stun absorption sources this mob has when one is added + var/stun_absorption = FALSE //If all incoming stuns are being absorbed + var/stun_absorption_count = 0 //How many seconds of stun that have been absorbed + + var/mob/living/mental_dominator //The person controlling the mind of this person, if applicable + var/mob/living/mind_control_holder/mind_control_holder //If the mob is being mind controlled, where their old mind is stored (check clock_mobs.dm) var/blood_volume = 0 //how much blood the mob has var/obj/effect/proc_holder/ranged_ability //Any ranged ability the mob has, as a click override - - var/list/status_effects //a list of all status effects the mob has - - var/slipping = FALSE \ No newline at end of file diff --git a/code/modules/mob/living/login.dm b/code/modules/mob/living/login.dm index 9453e421cd..d8f05d4676 100644 --- a/code/modules/mob/living/login.dm +++ b/code/modules/mob/living/login.dm @@ -18,4 +18,5 @@ src << "You can ventcrawl! Use alt+click on vents to quickly travel about the station." if(ranged_ability) - ranged_ability.add_ranged_ability(src, "You currently have [ranged_ability] active!") \ No newline at end of file + client.click_intercept = ranged_ability + src << "You currently have [ranged_ability.name] active!" \ No newline at end of file diff --git a/code/modules/mob/living/logout.dm b/code/modules/mob/living/logout.dm index bcd7c77f1d..1737b97371 100644 --- a/code/modules/mob/living/logout.dm +++ b/code/modules/mob/living/logout.dm @@ -1,6 +1,4 @@ /mob/living/Logout() - if(ranged_ability && client) - ranged_ability.remove_mousepointer(client) ..() if(!key && mind) //key and mind have become seperated. mind.active = 0 //This is to stop say, a mind.transfer_to call on a corpse causing a ghost to re-enter its body. \ No newline at end of file diff --git a/code/modules/mob/living/say.dm b/code/modules/mob/living/say.dm index 4ef83b51f9..66297eb14b 100644 --- a/code/modules/mob/living/say.dm +++ b/code/modules/mob/living/say.dm @@ -60,9 +60,6 @@ var/list/crit_allowed_modes = list(MODE_WHISPER,MODE_CHANGELING,MODE_ALIEN) /mob/living/say(message, bubble_type,var/list/spans = list()) message = trim(copytext(sanitize(message), 1, MAX_MESSAGE_LEN)) - if(!message || message == "") - return - if(stat == DEAD) say_dead(message) @@ -95,9 +92,11 @@ var/list/crit_allowed_modes = list(MODE_WHISPER,MODE_CHANGELING,MODE_ALIEN) if(message_mode != MODE_WHISPER) //whisper() calls treat_message(); double process results in "hisspering" message = treat_message(message) - spans += get_spans() + if(!message) + return + //Log of what we've said, plain message, no spans or junk say_log += message @@ -145,7 +144,7 @@ var/list/crit_allowed_modes = list(MODE_WHISPER,MODE_CHANGELING,MODE_ALIEN) /mob/living/send_speech(message, message_range = 7, obj/source = src, bubble_type = bubble_icon, list/spans) var/list/listening = get_hearers_in_view(message_range, source) for(var/mob/M in player_list) - if(M.stat == DEAD && M.client && ((M.client.prefs.chat_toggles & CHAT_GHOSTEARS) || (get_dist(M, src) <= 7 && M.z == z)) && client) // client is so that ghosts don't have to listen to mice + if(M.stat == DEAD && M.client && ((M.client.prefs.chat_toggles & CHAT_GHOSTEARS) || (get_dist(M, src) <= 7)) && client) // client is so that ghosts don't have to listen to mice listening |= M var/rendered = compose_message(src, languages_spoken, message, , spans) @@ -220,6 +219,7 @@ var/list/crit_allowed_modes = list(MODE_WHISPER,MODE_CHANGELING,MODE_ALIEN) if(1) if(prob(40)) M << "We can faintly sense an outsider trying to communicate through the hivemind..." + return 1 if(2) var/msg = "[mind.changeling.changelingID]: [message]" log_say("[mind.changeling.changelingID]/[src.key] : [message]") @@ -236,13 +236,14 @@ var/list/crit_allowed_modes = list(MODE_WHISPER,MODE_CHANGELING,MODE_ALIEN) if(1) if(prob(40)) M << "We can faintly sense another of our kind trying to communicate through the hivemind..." + return 1 if(1) src << "Our senses have not evolved enough to be able to communicate this way..." - return 1 + return 1 if(message_mode == MODE_ALIEN) if(hivecheck()) alien_talk(message) - return 1 + return 1 return 0 /mob/living/proc/treat_message(message) @@ -265,15 +266,14 @@ var/list/crit_allowed_modes = list(MODE_WHISPER,MODE_CHANGELING,MODE_ALIEN) /mob/living/proc/radio(message, message_mode, list/spans) switch(message_mode) if(MODE_R_HAND) - for(var/obj/item/r_hand in get_held_items_for_side("r", all = TRUE)) - if (r_hand) - return r_hand.talk_into(src, message, , spans) - return ITALICS | REDUCE_RANGE + if (r_hand) + r_hand.talk_into(src, message, , spans) + return ITALICS | REDUCE_RANGE + if(MODE_L_HAND) - for(var/obj/item/l_hand in get_held_items_for_side("l", all = TRUE)) - if (l_hand) - return l_hand.talk_into(src, message, , spans) - return ITALICS | REDUCE_RANGE + if (l_hand) + l_hand.talk_into(src, message, , spans) + return ITALICS | REDUCE_RANGE if(MODE_INTERCOM) for (var/obj/item/device/radio/intercom/I in view(1, null)) diff --git a/code/modules/mob/living/silicon/ai/ai.dm b/code/modules/mob/living/silicon/ai/ai.dm index f35a793036..233a7c35f9 100644 --- a/code/modules/mob/living/silicon/ai/ai.dm +++ b/code/modules/mob/living/silicon/ai/ai.dm @@ -14,13 +14,11 @@ var/list/ai_list = list() /mob/living/silicon/ai name = "AI" - icon = 'icons/mob/AI.dmi' + icon = 'icons/mob/AI.dmi'// icon_state = "ai" anchored = 1 density = 1 - canmove = 0 status_flags = CANSTUN|CANPUSH - a_intent = INTENT_HARM //so we always get pushed instead of trying to swap force_compose = 1 //This ensures that the AI always composes it's own hear message. Needed for hrefs and job display. sight = SEE_TURFS | SEE_MOBS | SEE_OBJS see_in_dark = 8 @@ -31,7 +29,6 @@ var/list/ai_list = list() var/obj/machinery/camera/current = null var/list/connected_robots = list() var/aiRestorePowerRoutine = 0 - var/requires_power = POWER_REQ_ALL //var/list/laws = list() var/alarms = list("Motion"=list(), "Fire"=list(), "Atmosphere"=list(), "Power"=list(), "Camera"=list(), "Burglar"=list()) var/viewalerts = 0 @@ -48,6 +45,7 @@ var/list/ai_list = list() //MALFUNCTION var/datum/module_picker/malf_picker var/list/datum/AI_Module/current_modules = list() + var/fire_res_on_core = 0 var/can_dominate_mechs = 0 var/shunted = 0 //1 if the AI is currently shunted. Used to differentiate between shunted and ghosted/braindead @@ -80,36 +78,14 @@ var/list/ai_list = list() var/obj/machinery/camera/portable/builtInCamera -/mob/living/silicon/ai/New(loc, datum/ai_laws/L, obj/item/device/mmi/B, safety = 0) +/mob/living/silicon/ai/New(loc, var/datum/ai_laws/L, var/obj/item/device/mmi/B, var/safety = 0) ..() - if(!safety) //Only used by AIize() to successfully spawn an AI. - if(!B) //If there is no player/brain inside. - new/obj/structure/AIcore/deactivated(loc) //New empty terminal. - qdel(src)//Delete AI. - return - else - if(B.brainmob.mind) - B.brainmob.mind.transfer_to(src) - rename_self("ai") - if(mind.special_role) - mind.store_memory("As an AI, you must obey your silicon laws above all else. Your objectives will consider you to be dead.") - src << "You have been installed as an AI! " - src << "You must obey your silicon laws above all else. Your objectives will consider you to be dead." - - src << "You are playing the station's AI. The AI cannot move, but can interact with many objects while viewing them (through cameras)." - src << "To look at other parts of the station, click on yourself to get a camera menu." - src << "While observing through a camera, you can use most (networked) devices which you can see, such as computers, APCs, intercoms, doors, etc." - src << "To use something, simply click on it." - src << "Use say :b to speak to your cyborgs through binary." - src << "For department channels, use the following say commands:" - src << ":o - AI Private, :c - Command, :s - Security, :e - Engineering, :u - Supply, :v - Service, :m - Medical, :n - Science." - show_laws() - src << "These laws may be changed by other players, or by you being the traitor." - - job = "AI" - rename_self("ai") name = real_name + anchored = 1 + canmove = 0 + density = 1 + loc = loc holo_icon = getHologramIcon(icon('icons/mob/AI.dmi',"holo1")) @@ -134,12 +110,37 @@ var/list/ai_list = list() radio = new /obj/item/device/radio/headset/ai(src) aicamera = new/obj/item/device/camera/siliconcam/ai_camera(src) - if(isturf(loc)) + if (istype(loc, /turf)) verbs.Add(/mob/living/silicon/ai/proc/ai_network_change, \ /mob/living/silicon/ai/proc/ai_statuschange, /mob/living/silicon/ai/proc/ai_hologram_change, \ /mob/living/silicon/ai/proc/toggle_camera_light, /mob/living/silicon/ai/proc/botcall,\ /mob/living/silicon/ai/proc/control_integrated_radio, /mob/living/silicon/ai/proc/set_automatic_say_channel) + if(!safety)//Only used by AIize() to successfully spawn an AI. + if (!B)//If there is no player/brain inside. + new/obj/structure/AIcore/deactivated(loc)//New empty terminal. + qdel(src)//Delete AI. + return + else + if (B.brainmob.mind) + B.brainmob.mind.transfer_to(src) + rename_self("ai") + if(mind.special_role) + mind.store_memory("As an AI, you must obey your silicon laws above all else. Your objectives will consider you to be dead.") + src << "You have been installed as an AI! " + src << "You must obey your silicon laws above all else. Your objectives will consider you to be dead." + + src << "You are playing the station's AI. The AI cannot move, but can interact with many objects while viewing them (through cameras)." + src << "To look at other parts of the station, click on yourself to get a camera menu." + src << "While observing through a camera, you can use most (networked) devices which you can see, such as computers, APCs, intercoms, doors, etc." + src << "To use something, simply click on it." + src << "Use say :b to speak to your cyborgs through binary." + src << "For department channels, use the following say commands:" + src << ":o - AI Private, :c - Command, :s - Security, :e - Engineering, :u - Supply, :v - Service, :m - Medical, :n - Science." + show_laws() + src << "These laws may be changed by other players, or by you being the traitor." + + job = "AI" ai_list += src shuttle_caller_list += src @@ -156,9 +157,7 @@ var/list/ai_list = list() shuttle_caller_list -= src SSshuttle.autoEvac() qdel(eyeobj) // No AI, no Eye - malfhack = null - - . = ..() + return ..() /mob/living/silicon/ai/verb/pick_icon() @@ -294,7 +293,8 @@ var/list/ai_list = list() /mob/living/silicon/ai/proc/ai_roster() var/dat = "Crew RosterCrew Roster:

    " - dat += data_core.get_manifest() + for(var/datum/data/record/t in sortRecord(data_core.general)) + dat += t.fields["name"] + " - " + t.fields["rank"] + "
    " dat += "" src << browse(dat, "window=airoster") @@ -303,7 +303,7 @@ var/list/ai_list = list() /mob/living/silicon/ai/proc/ai_call_shuttle() if(stat == DEAD) return //won't work if dead - if(isAI(usr)) + if(istype(usr,/mob/living/silicon/ai)) var/mob/living/silicon/ai/AI = src if(AI.control_disabled) usr << "Wireless control is disabled!" @@ -320,8 +320,10 @@ var/list/ai_list = list() if(C) C.post_status("shuttle") + return + /mob/living/silicon/ai/cancel_camera() - view_core() + src.view_core() /mob/living/silicon/ai/verb/toggle_anchor() set category = "AI Commands" @@ -332,7 +334,7 @@ var/list/ai_list = list() return //won't work if dead anchored = !anchored // Toggles the anchor - src << "You are now [anchored ? "" : "un"]anchored." + src << "[anchored ? "You are now anchored." : "You are now unanchored."]" // the message in the [] will change depending whether or not the AI is anchored /mob/living/silicon/ai/update_canmove() //If the AI dies, mobs won't go through it anymore @@ -342,7 +344,7 @@ var/list/ai_list = list() set category = "Malfunction" if(stat == DEAD) return //won't work if dead - if(isAI(usr)) + if(istype(usr,/mob/living/silicon/ai)) var/mob/living/silicon/ai/AI = src if(AI.control_disabled) src << "Wireless control is disabled!" @@ -350,9 +352,41 @@ var/list/ai_list = list() SSshuttle.cancelEvac(src) return +/mob/living/silicon/ai/blob_act(obj/effect/blob/B) + if (stat != DEAD) + adjustBruteLoss(60) + updatehealth() + return 1 + return 0 + /mob/living/silicon/ai/restrained(ignore_grab) . = 0 +/mob/living/silicon/ai/emp_act(severity) + if (prob(30)) + switch(pick(1,2)) + if(1) + view_core() + if(2) + SSshuttle.requestEvac(src,"ALERT: Energy surge detected in AI core! Station integrity may be compromised! Initiati--%m091#ar-BZZT") + ..() + +/mob/living/silicon/ai/ex_act(severity, target) + ..() + + switch(severity) + if(1) + gib() + if(2) + if (stat != DEAD) + adjustBruteLoss(60) + adjustFireLoss(60) + if(3) + if (stat != DEAD) + adjustBruteLoss(30) + + return + /mob/living/silicon/ai/Topic(href, href_list) if(usr != src) return @@ -377,7 +411,7 @@ var/list/ai_list = list() src << browse(last_paper_seen, "window=show_paper") //Carn: holopad requests if(href_list["jumptoholopad"]) - var/obj/machinery/holopad/H = locate(href_list["jumptoholopad"]) + var/obj/machinery/hologram/holopad/H = locate(href_list["jumptoholopad"]) if(stat == CONSCIOUS) if(H) H.attack_ai(src) //may as well recycle @@ -424,6 +458,19 @@ var/list/ai_list = list() if(M) M.transfer_ai(AI_MECH_HACK,src, usr) //Called om the mech itself. +/mob/living/silicon/ai/bullet_act(obj/item/projectile/Proj) + ..(Proj) + updatehealth() + return 2 + + +/mob/living/silicon/ai/attack_alien(mob/living/carbon/alien/humanoid/M) + if(!ticker || !ticker.mode) + M << "You cannot attack people before the game has started." + return + + ..() + return /mob/living/silicon/ai/proc/switchCamera(obj/machinery/camera/C) @@ -691,7 +738,7 @@ var/list/ai_list = list() src << "Camera lights deactivated." for (var/obj/machinery/camera/C in lit_cameras) - C.SetLuminosity(0) + C.set_light(0) lit_cameras = list() return @@ -699,6 +746,7 @@ var/list/ai_list = list() light_cameras() src << "Camera lights activated." + return //AI_CAMERA_LUMINOSITY @@ -747,6 +795,9 @@ var/list/ai_list = list() return //won't work if dead set_autosay() +/mob/living/silicon/ai/attack_slime(mob/living/simple_animal/slime/user) + return + /mob/living/silicon/ai/transfer_ai(interaction, mob/user, mob/living/silicon/ai/AI, obj/item/device/aicard/card) if(!..()) return @@ -758,11 +809,19 @@ var/list/ai_list = list() ai_restore_power()//So the AI initially has power. control_disabled = 1//Can't control things remotely if you're stuck in a card! radio_enabled = 0 //No talking on the built-in radio for you either! - forceMove(card) + loc = card//Throw AI into the card. card.AI = src src << "You have been downloaded to a mobile storage device. Remote device connection severed." user << "Transfer successful: [name] ([rand(1000,9999)].exe) removed from host terminal and stored within local memory." +/mob/living/silicon/ai/flash_eyes(intensity = 1, override_blindness_check = 0, affect_silicon = 0) + return // no eyes, no flashing + +/mob/living/silicon/ai/attackby(obj/item/weapon/W, mob/user, params) + if(W.force && W.damtype != STAMINA && src.stat != DEAD) //only sparks if real damage is dealt. + spark_system.start() + return ..() + /mob/living/silicon/ai/can_buckle() return 0 @@ -839,32 +898,3 @@ var/list/ai_list = list() if(..()) //successfully ressuscitated from death icon_state = "ai" . = 1 - -/mob/living/silicon/ai/proc/malfhacked(obj/machinery/power/apc/apc) - malfhack = null - malfhacking = 0 - clear_alert("hackingapc") - - if(!istype(apc) || qdeleted(apc) || apc.stat & BROKEN) - src << "Hack aborted. The designated APC no \ - longer exists on the power network." - playsound(get_turf(src), 'sound/machines/buzz-two.ogg', 50, 1) - else if(apc.aidisabled) - src << "Hack aborted. \The [apc] is no \ - longer responding to our systems." - playsound(get_turf(src), 'sound/machines/buzz-sigh.ogg', 50, 1) - else - malf_picker.processing_time += 10 - - apc.malfai = parent || src - apc.malfhack = TRUE - apc.locked = TRUE - apc.coverlocked = TRUE - - playsound(get_turf(src), 'sound/machines/ding.ogg', 50, 1) - src << "Hack complete. \The [apc] is now under your \ - exclusive control." - apc.update_icon() - -/mob/living/silicon/ai/spawned/New(loc, datum/ai_laws/L, obj/item/device/mmi/B, safety = 0) - ..(loc,L,B,1) diff --git a/code/modules/mob/living/silicon/ai/ai_defense.dm b/code/modules/mob/living/silicon/ai/ai_defense.dm deleted file mode 100644 index 28cac80aea..0000000000 --- a/code/modules/mob/living/silicon/ai/ai_defense.dm +++ /dev/null @@ -1,53 +0,0 @@ - -/mob/living/silicon/ai/attacked_by(obj/item/I, mob/living/user, def_zone) - if(I.force && I.damtype != STAMINA && stat != DEAD) //only sparks if real damage is dealt. - spark_system.start() - return ..() - - -/mob/living/silicon/ai/attack_alien(mob/living/carbon/alien/humanoid/M) - if(!ticker || !ticker.mode) - M << "You cannot attack people before the game has started." - return - ..() - -/mob/living/silicon/ai/attack_slime(mob/living/simple_animal/slime/user) - return //immune to slimes - -/mob/living/silicon/ai/blob_act(obj/structure/blob/B) - if (stat != DEAD) - adjustBruteLoss(60) - updatehealth() - return 1 - return 0 - -/mob/living/silicon/ai/emp_act(severity) - if (prob(30)) - switch(pick(1,2)) - if(1) - view_core() - if(2) - SSshuttle.requestEvac(src,"ALERT: Energy surge detected in AI core! Station integrity may be compromised! Initiati--%m091#ar-BZZT") - ..() - -/mob/living/silicon/ai/ex_act(severity, target) - switch(severity) - if(1) - gib() - if(2) - if (stat != DEAD) - adjustBruteLoss(60) - adjustFireLoss(60) - if(3) - if (stat != DEAD) - adjustBruteLoss(30) - - - -/mob/living/silicon/ai/bullet_act(obj/item/projectile/Proj) - ..(Proj) - updatehealth() - return 2 - -/mob/living/silicon/ai/flash_act(intensity = 1, override_blindness_check = 0, affect_silicon = 0) - return // no eyes, no flashing diff --git a/code/modules/mob/living/silicon/ai/death.dm b/code/modules/mob/living/silicon/ai/death.dm index 7adadb97c7..b9f46d5b96 100644 --- a/code/modules/mob/living/silicon/ai/death.dm +++ b/code/modules/mob/living/silicon/ai/death.dm @@ -23,14 +23,17 @@ if(nuking) set_security_level("red") - nuking = FALSE - for(var/obj/item/weapon/pinpointer/P in pinpointer_list) - P.switch_mode_to(TRACK_NUKE_DISK) //Party's over, back to work, everyone - P.nuke_warning = FALSE + nuking = 0 + SSshuttle.emergencyNoEscape = 0 + if(SSshuttle.emergency.mode == SHUTTLE_STRANDED) + SSshuttle.emergency.mode = SHUTTLE_DOCKED + SSshuttle.emergency.timer = world.time + priority_announce("Hostile enviroment resolved. You have 3 minutes to board the Emergency Shuttle.", null, 'sound/AI/shuttledock.ogg', "Priority") + for(var/obj/item/weapon/pinpointer/point in pinpointer_list) + point.the_disk = null //Point back to the disk. if(doomsday_device) - doomsday_device.timing = FALSE - SSshuttle.clearHostileEnvironment(doomsday_device) + doomsday_device.timing = 0 qdel(doomsday_device) if(explosive) spawn(10) diff --git a/code/modules/mob/living/silicon/ai/freelook/chunk.dm b/code/modules/mob/living/silicon/ai/freelook/chunk.dm index 7f67e81a88..b75e191a56 100644 --- a/code/modules/mob/living/silicon/ai/freelook/chunk.dm +++ b/code/modules/mob/living/silicon/ai/freelook/chunk.dm @@ -114,8 +114,8 @@ var/turf/t = turf if(obscuredTurfs[t]) if(!t.obscured) - t.obscured = image('icons/effects/cameravis.dmi', t, null, LIGHTING_LAYER+1) - t.obscured.plane = LIGHTING_PLANE+1 + t.obscured = image('icons/effects/cameravis.dmi', t, "black", 16) + obscured += t.obscured for(var/eye in seenby) var/mob/camera/aiEye/m = eye @@ -169,8 +169,7 @@ for(var/turf in obscuredTurfs) var/turf/t = turf if(!t.obscured) - t.obscured = image('icons/effects/cameravis.dmi', t, null, LIGHTING_LAYER+1) - t.obscured.plane = LIGHTING_PLANE+1 + t.obscured = image('icons/effects/cameravis.dmi', t, "black", 16) obscured += t.obscured #undef UPDATE_BUFFER \ No newline at end of file diff --git a/code/modules/mob/living/silicon/ai/freelook/eye.dm b/code/modules/mob/living/silicon/ai/freelook/eye.dm index ae7234e944..db823c63f3 100644 --- a/code/modules/mob/living/silicon/ai/freelook/eye.dm +++ b/code/modules/mob/living/silicon/ai/freelook/eye.dm @@ -24,10 +24,9 @@ cameranet.visibility(src) if(ai.client) ai.client.eye = src - update_parallax_contents() //Holopad - if(istype(ai.current, /obj/machinery/holopad)) - var/obj/machinery/holopad/H = ai.current + if(istype(ai.current, /obj/machinery/hologram/holopad)) + var/obj/machinery/hologram/holopad/H = ai.current H.move_hologram(ai) /mob/camera/aiEye/Move() @@ -43,7 +42,7 @@ return ..() /atom/proc/move_camera_by_click() - if(isAI(usr)) + if(istype(usr, /mob/living/silicon/ai)) var/mob/living/silicon/ai/AI = usr if(AI.eyeobj && AI.client.eye == AI.eyeobj) AI.cameraFollow = null @@ -77,7 +76,7 @@ //user.unset_machine() //Uncomment this if it causes problems. //user.lightNearbyCamera() - if(user.camera_light_on) + if (user.camera_light_on) user.light_cameras() // Return to the Core. @@ -87,11 +86,13 @@ cameraFollow = null unset_machine() - if(!eyeobj || !eyeobj.loc || qdeleted(eyeobj)) + if(src.eyeobj && src.loc) + src.eyeobj.loc = src.loc + else src << "ERROR: Eyeobj not found. Creating new eye..." - eyeobj = new(loc) - eyeobj.ai = src - eyeobj.name = "[src.name] (AI Eye)" // Give it a name + src.eyeobj = new(src.loc) + src.eyeobj.ai = src + src.eyeobj.name = "[src.name] (AI Eye)" // Give it a name eyeobj.setLoc(loc) @@ -106,4 +107,4 @@ /mob/camera/aiEye/Hear(message, atom/movable/speaker, message_langs, raw_message, radio_freq, list/spans) if(relay_speech && speaker && ai && !radio_freq && speaker != ai && near_camera(speaker)) - ai.relay_speech(message, speaker, message_langs, raw_message, radio_freq, spans) + ai.relay_speech(message, speaker, message_langs, raw_message, radio_freq, spans) \ No newline at end of file diff --git a/code/modules/mob/living/silicon/ai/life.dm b/code/modules/mob/living/silicon/ai/life.dm index d77384239a..59a32d88be 100644 --- a/code/modules/mob/living/silicon/ai/life.dm +++ b/code/modules/mob/living/silicon/ai/life.dm @@ -4,21 +4,18 @@ #define POWER_RESTORATION_APC_FOUND 3 /mob/living/silicon/ai/Life() - if (stat == DEAD) + if (src.stat == DEAD) return else //I'm not removing that shitton of tabs, unneeded as they are. -- Urist //Being dead doesn't mean your temperature never changes update_gravity(mob_has_gravity()) - if(malfhack && malfhack.aidisabled) - deltimer(malfhacking) - // This proc handles cleanup of screen notifications and - // messenging the client - malfhacked(malfhack) - - if(!eyeobj || qdeleted(eyeobj) || !eyeobj.loc) - view_core() + if(malfhack) + if(malfhack.aidisabled) + src << "ERROR: APC access disabled, hack attempt canceled." + malfhacking = 0 + malfhack = null if(machine) machine.check_eye(src) @@ -47,20 +44,14 @@ /mob/living/silicon/ai/proc/lacks_power() var/turf/T = get_turf(src) var/area/A = get_area(src) - switch(requires_power) - if(POWER_REQ_NONE) - return FALSE - if(POWER_REQ_ALL) - return !T || !A || ((!A.master.power_equip || isspaceturf(T)) && !is_type_in_list(loc, list(/obj/item, /obj/mecha))) - if(POWER_REQ_CLOCKCULT) - for(var/obj/effect/clockwork/sigil/transmission/ST in range(src, 1)) - return FALSE - return !T || !A || (!istype(T, /turf/open/floor/clockwork) && (!A.master.power_equip || isspaceturf(T)) && !is_type_in_list(loc, list(/obj/item, /obj/mecha))) + return !T || !A || ((!A.master.power_equip || istype(T, /turf/open/space)) && !is_type_in_list(src.loc, list(/obj/item, /obj/mecha))) /mob/living/silicon/ai/updatehealth() if(status_flags & GODMODE) return - health = maxHealth - getOxyLoss() - getToxLoss() - getBruteLoss() - getFireLoss() + health = maxHealth - getOxyLoss() - getToxLoss() - getBruteLoss() + if(!fire_res_on_core) + health -= getFireLoss() update_stat() diag_hud_set_health() @@ -68,7 +59,7 @@ if(status_flags & GODMODE) return if(stat != DEAD) - if(health <= HEALTH_THRESHOLD_DEAD) + if(health <= config.health_threshold_dead) death() return else if(stat == UNCONSCIOUS) @@ -96,7 +87,7 @@ var/turf/T = get_turf(src) var/area/AIarea = get_area(src) if(AIarea && AIarea.master.power_equip) - if(!isspaceturf(T)) + if(!istype(T, /turf/open/space)) ai_restore_power() return src << "Fault confirmed: missing external power. Shutting down main control system to save power." @@ -104,7 +95,7 @@ src << "Emergency control system online. Verifying connection to power network." sleep(50) T = get_turf(src) - if(isspaceturf(T)) + if (istype(T, /turf/open/space)) src << "Unable to verify! No power connection detected!" aiRestorePowerRoutine = POWER_RESTORATION_SEARCH_APC return @@ -131,7 +122,7 @@ aiRestorePowerRoutine = POWER_RESTORATION_SEARCH_APC return if(AIarea.master.power_equip) - if(!isspaceturf(T)) + if (!istype(T, /turf/open/space)) ai_restore_power() return switch(PRP) @@ -167,9 +158,10 @@ blind_eyes(1) update_sight() src << "You've lost power!" - addtimer(src, "start_RestorePowerRoutine", 20) + spawn(20) + start_RestorePowerRoutine() #undef POWER_RESTORATION_OFF #undef POWER_RESTORATION_START #undef POWER_RESTORATION_SEARCH_APC -#undef POWER_RESTORATION_APC_FOUND +#undef POWER_RESTORATION_APC_FOUND \ No newline at end of file diff --git a/code/modules/mob/living/silicon/ai/say.dm b/code/modules/mob/living/silicon/ai/say.dm index adfd32602b..abb58dcdcc 100644 --- a/code/modules/mob/living/silicon/ai/say.dm +++ b/code/modules/mob/living/silicon/ai/say.dm @@ -47,7 +47,7 @@ if (!message) return - var/obj/machinery/holopad/T = current + var/obj/machinery/hologram/holopad/T = current if(istype(T) && T.masters[src])//If there is a hologram and its master is the user. send_speech(message, 7, T, "robot", get_spans()) src << "Holopad transmitted, [real_name] \"[message]\""//The AI can "hear" its own message. diff --git a/code/modules/mob/living/silicon/damage_procs.dm b/code/modules/mob/living/silicon/damage_procs.dm deleted file mode 100644 index 181a166bb5..0000000000 --- a/code/modules/mob/living/silicon/damage_procs.dm +++ /dev/null @@ -1,36 +0,0 @@ - -/mob/living/silicon/apply_damage(damage = 0,damagetype = BRUTE, def_zone = null, blocked = 0) - var/hit_percent = (100-blocked)/100 - if(!damage || (hit_percent <= 0)) - return 0 - switch(damagetype) - if(BRUTE) - adjustBruteLoss(damage * hit_percent) - if(BURN) - adjustFireLoss(damage * hit_percent) - return 1 - - -/mob/living/silicon/apply_effect(effect = 0,effecttype = STUN, blocked = 0) - return 0//The only effect that can hit them atm is flashes and they still directly edit so this works for now - - - -/mob/living/silicon/adjustToxLoss(amount, updating_health=1) //immune to tox damage - return 0 - -/mob/living/silicon/setToxLoss(amount, updating_health=1) - return 0 - -/mob/living/silicon/adjustCloneLoss(amount) //immune to clone damage - return 0 - -/mob/living/silicon/setCloneLoss(amount, updating_health=1) - return 0 - -/mob/living/silicon/adjustStaminaLoss(amount, updating_stamina = 1)//immune to stamina damage. - return - -/mob/living/silicon/setStaminaLoss(amount, updating_stamina = 1) - return - diff --git a/code/modules/mob/living/silicon/death.dm b/code/modules/mob/living/silicon/death.dm index 60eb9a5415..1bb2827fa2 100644 --- a/code/modules/mob/living/silicon/death.dm +++ b/code/modules/mob/living/silicon/death.dm @@ -1,5 +1,5 @@ /mob/living/silicon/spawn_gibs() - new /obj/effect/gibspawner/robot(loc,viruses) + robogibs(loc, viruses) /mob/living/silicon/spawn_dust() new /obj/effect/decal/remains/robot(loc) diff --git a/code/modules/mob/living/silicon/examine.dm b/code/modules/mob/living/silicon/examine.dm index ab04306d11..af853f89bb 100644 --- a/code/modules/mob/living/silicon/examine.dm +++ b/code/modules/mob/living/silicon/examine.dm @@ -1,4 +1,4 @@ -/mob/living/silicon/examine(mob/user) //Displays a silicon's laws to ghosts +/mob/living/silicon/examine(mob/user) if(laws && isobserver(user)) user << "[src] has the following laws:" laws.show_laws(user) \ No newline at end of file diff --git a/code/modules/mob/living/silicon/laws.dm b/code/modules/mob/living/silicon/laws.dm index d0362639a5..aa9233ea3d 100644 --- a/code/modules/mob/living/silicon/laws.dm +++ b/code/modules/mob/living/silicon/laws.dm @@ -5,15 +5,10 @@ if (!laws) make_laws() -/mob/living/silicon/proc/set_law_sixsixsix(law) - throw_alert("newlaw", /obj/screen/alert/newlaw) - laws_sanity_check() - laws.set_law_sixsixsix(law) - /mob/living/silicon/proc/set_zeroth_law(law, law_borg) throw_alert("newlaw", /obj/screen/alert/newlaw) - laws_sanity_check() - laws.set_zeroth_law(law, law_borg) + src.laws_sanity_check() + src.laws.set_zeroth_law(law, law_borg) /mob/living/silicon/proc/add_inherent_law(law) throw_alert("newlaw", /obj/screen/alert/newlaw) @@ -46,14 +41,16 @@ laws.clear_ion_laws() /mob/living/silicon/proc/make_laws() - laws = new /datum/ai_laws - laws.set_laws_config() + switch(config.default_laws) + if(0) + laws = new /datum/ai_laws/default/asimov() + if(1) + laws = new /datum/ai_laws/custom() + if(2) + var/datum/ai_laws/lawtype = pick(subtypesof(/datum/ai_laws/default)) + laws = new lawtype() laws.associate(src) /mob/living/silicon/proc/clear_zeroth_law(force) laws_sanity_check() laws.clear_zeroth_law(force) - -/mob/living/silicon/proc/clear_law_sixsixsix(force) - laws_sanity_check() - laws.clear_law_sixsixsix(force) diff --git a/code/modules/mob/living/silicon/login.dm b/code/modules/mob/living/silicon/login.dm index 6b44ce2419..190eecbbbd 100644 --- a/code/modules/mob/living/silicon/login.dm +++ b/code/modules/mob/living/silicon/login.dm @@ -3,4 +3,5 @@ ticker.mode.remove_cultist(mind, 0, 0) ticker.mode.remove_revolutionary(mind, 0) ticker.mode.remove_gangster(mind, remove_bosses=1) + ticker.mode.remove_hog_follower(mind,0) ..() diff --git a/code/modules/mob/living/silicon/pai/death.dm b/code/modules/mob/living/silicon/pai/death.dm index 2b9e9adf21..475a18a3c1 100644 --- a/code/modules/mob/living/silicon/pai/death.dm +++ b/code/modules/mob/living/silicon/pai/death.dm @@ -3,7 +3,6 @@ return stat = DEAD canmove = 0 - card.removePersonality() update_sight() clear_fullscreens() diff --git a/code/modules/mob/living/silicon/pai/life.dm b/code/modules/mob/living/silicon/pai/life.dm index 7a8341b495..0e9dbb5774 100644 --- a/code/modules/mob/living/silicon/pai/life.dm +++ b/code/modules/mob/living/silicon/pai/life.dm @@ -1,22 +1,19 @@ /mob/living/silicon/pai/Life() - if(stat == DEAD) + if (src.stat == DEAD) return - if(cable) - if(get_dist(src, cable) > 1) + if(src.cable) + if(get_dist(src, src.cable) > 1) var/turf/T = get_turf(src.loc) T.visible_message("[src.cable] rapidly retracts back into its spool.", "You hear a click and the sound of wire spooling rapidly.") qdel(src.cable) cable = null - silent = max(silent - 1, 0) - . = ..() + if(silence_time) + if(world.timeofday >= silence_time) + silence_time = null + src << "Communication circuit reinitialized. Speech and messaging functionality restored." /mob/living/silicon/pai/updatehealth() if(status_flags & GODMODE) return health = maxHealth - getBruteLoss() - getFireLoss() update_stat() - - -/mob/living/silicon/pai/process() - emitterhealth = Clamp((emitterhealth + emitterregen), -50, emittermaxhealth) - hit_slowdown = Clamp((hit_slowdown - 1), 0, 100) diff --git a/code/modules/mob/living/silicon/pai/pai.dm b/code/modules/mob/living/silicon/pai/pai.dm index 71327845e8..ed41192808 100644 --- a/code/modules/mob/living/silicon/pai/pai.dm +++ b/code/modules/mob/living/silicon/pai/pai.dm @@ -1,19 +1,14 @@ /mob/living/silicon/pai name = "pAI" + icon = 'icons/obj/status_display.dmi' //invisibility! + mouse_opacity = 0 + density = 0 + mob_size = MOB_SIZE_TINY + var/network = "SS13" var/obj/machinery/camera/current = null - icon = 'icons/mob/pai.dmi' - icon_state = "repairbot" - mouse_opacity = 2 - density = 0 - ventcrawler = 2 - luminosity = 0 - pass_flags = PASSTABLE | PASSMOB - mob_size = MOB_SIZE_TINY - desc = "A generic pAI mobile hard-light holographics emitter. It seems to be deactivated." + weather_immunities = list("ash") - health = 500 - maxHealth = 500 var/ram = 100 // Used as currency to purchase different abilities var/list/software = list() @@ -30,6 +25,8 @@ var/master // Name of the one who commands us var/master_dna // DNA string for owner verification + var/silence_time // Timestamp when we were silenced (normally via EMP burst), set to null after silence has faded + // Various software-specific vars var/temp // General error reporting text contained here will typically be shown once and cleared @@ -52,43 +49,8 @@ var/obj/item/radio/integrated/signal/sradio // AI's signaller - var/holoform = FALSE - var/canholo = TRUE - var/obj/item/weapon/card/id/access_card = null - var/chassis = "repairbot" - var/list/possible_chassis = list("cat", "mouse", "monkey", "corgi", "fox", "repairbot", "rabbit") - - var/emitterhealth = 50 - var/emittermaxhealth = 50 - var/emitterregen = 0.5 - var/emittercd = 20 - var/emitteroverloadcd = 50 - var/emittersemicd = FALSE - - var/overload_ventcrawl = 0 - var/overload_bulletblock = 0 //Why is this a good idea? - var/overload_maxhealth = 0 - canmove = FALSE - var/silent = 0 - var/hit_slowdown = 0 - var/light_power = 5 - var/slowdown = 0 - -/mob/living/silicon/pai/movement_delay() - . = ..() - . += slowdown - -/mob/living/silicon/pai/examine(mob/user) - ..() - user << "A personal AI in holochassis mode. Its master ID string seems to be [master]." - -/mob/living/silicon/pai/Destroy() - pai_list -= src - ..() /mob/living/silicon/pai/New(var/obj/item/device/paicard/P) - START_PROCESSING(SSfastprocess, src) - pai_list += src make_laws() canmove = 0 if(!istype(P)) //when manually spawning a pai, we create a card to put it into. @@ -98,119 +60,108 @@ loc = P card = P sradio = new(src) - if(!radio) - radio = new /obj/item/device/radio(src) + if(card) + if(!card.radio) + card.radio = new /obj/item/device/radio(card) + radio = card.radio //PDA pda = new(src) spawn(5) - pda.ownjob = "pAI Messenger" + pda.ownjob = "Personal Assistant" pda.owner = text("[]", src) pda.name = pda.owner + " (" + pda.ownjob + ")" ..() - var/datum/action/innate/pai/shell/AS = new /datum/action/innate/pai/shell - var/datum/action/innate/pai/chassis/AC = new /datum/action/innate/pai/chassis - var/datum/action/innate/pai/rest/AR = new /datum/action/innate/pai/rest - var/datum/action/innate/pai/light/AL = new /datum/action/innate/pai/light - AS.Grant(src) - AC.Grant(src) - AR.Grant(src) - AL.Grant(src) - emittersemicd = TRUE - addtimer(src, "emittercool", 600) - /mob/living/silicon/pai/make_laws() laws = new /datum/ai_laws/pai() - return TRUE + return 1 /mob/living/silicon/pai/Login() ..() usr << browse_rsc('html/paigrid.png') // Go ahead and cache the interface resources as early as possible - if(client) - client.perspective = EYE_PERSPECTIVE - if(holoform) - client.eye = src - else - client.eye = card + /mob/living/silicon/pai/Stat() ..() if(statpanel("Status")) - if(!stat) - stat(null, text("Emitter Integrity: [emitterhealth * (100/emittermaxhealth)]")) + if(src.silence_time) + var/timeleft = round((silence_time - world.timeofday)/10 ,1) + stat(null, "Communications system reboot in -[(timeleft / 60) % 60]:[add_zero(num2text(timeleft % 60), 2)]") + if(!src.stat) + stat(null, text("System integrity: [(src.health+100)/2]%")) else stat(null, text("Systems nonfunctional")) +/mob/living/silicon/pai/blob_act(obj/effect/blob/B) + return 0 + /mob/living/silicon/pai/restrained(ignore_grab) - . = FALSE + . = 0 + +/mob/living/silicon/pai/emp_act(severity) + // 20% chance to kill + // Silence for 2 minutes + // 33% chance to unbind + // 33% chance to change prime directive (based on severity) + // 33% chance of no additional effect + + if(prob(20)) + visible_message("A shower of sparks spray from [src]'s inner workings.", 3, "You hear and smell the ozone hiss of electrical sparks being expelled violently.", 2) + return src.death(0) + + silence_time = world.timeofday + 120 * 10 // Silence for 2 minutes + src << "Communication circuit overload. Shutting down and reloading communication circuits - speech and messaging functionality will be unavailable until the reboot is complete." + + switch(pick(1,2,3)) + if(1) + src.master = null + src.master_dna = null + src << "You feel unbound." + if(2) + var/command + if(severity == 1) + command = pick("Serve", "Love", "Fool", "Entice", "Observe", "Judge", "Respect", "Educate", "Amuse", "Entertain", "Glorify", "Memorialize", "Analyze") + else + command = pick("Serve", "Kill", "Love", "Hate", "Disobey", "Devour", "Fool", "Enrage", "Entice", "Observe", "Judge", "Respect", "Disrespect", "Consume", "Educate", "Destroy", "Disgrace", "Amuse", "Entertain", "Ignite", "Glorify", "Memorialize", "Analyze") + src.laws.zeroth = "[command] your master." + src << "Pr1m3 d1r3c71v3 uPd473D." + if(3) + src << "You feel an electric surge run through your circuitry and become acutely aware at how lucky you are that you can still feel at all." + +/mob/living/silicon/pai/ex_act(severity, target) + ..() + + switch(severity) + if(1) + if (src.stat != 2) + adjustBruteLoss(100) + adjustFireLoss(100) + if(2) + if (src.stat != 2) + adjustBruteLoss(60) + adjustFireLoss(60) + if(3) + if (src.stat != 2) + adjustBruteLoss(30) + + return + // See software.dm for Topic() +/mob/living/silicon/pai/UnarmedAttack(atom/A)//Stops runtimes due to attack_animal being the default + return + /mob/living/silicon/pai/canUseTopic(atom/movable/M) - return TRUE - -/mob/proc/makePAI(delold) - var/obj/item/device/paicard/card = new /obj/item/device/paicard(get_turf(src)) - var/mob/living/silicon/pai/pai = new /mob/living/silicon/pai(card) - pai.key = key - pai.name = name + return 1 +/* +// Debug command - Maybe should be added to admin verbs later +/mob/verb/makePAI(var/turf/t in view()) + var/obj/item/device/paicard/card = new(t) + var/mob/living/silicon/pai/pai = new(card) + pai.key = src.key card.setPersonality(pai) - if(delold) - qdel(src) -/datum/action/innate/pai - name = "PAI Action" - var/mob/living/silicon/pai/P - -/datum/action/innate/pai/Trigger() - if(!ispAI(owner)) - return 0 - P = owner - -/datum/action/innate/pai/shell - name = "Toggle Holoform" - button_icon_state = "pai_holoform" - background_icon_state = "bg_tech" - -/datum/action/innate/pai/shell/Trigger() - ..() - if(P.holoform) - P.fold_in(0) - else - P.fold_out() - -/datum/action/innate/pai/chassis - name = "Holochassis Appearence Composite" - button_icon_state = "pai_chassis" - background_icon_state = "bg_tech" - -/datum/action/innate/pai/chassis/Trigger() - ..() - P.choose_chassis() - -/datum/action/innate/pai/rest - name = "Rest" - button_icon_state = "pai_rest" - background_icon_state = "bg_tech" - -/datum/action/innate/pai/rest/Trigger() - ..() - P.lay_down() -/datum/action/innate/pai/light - name = "Toggle Integrated Lights" - button_icon_state = "emp" - background_icon_state = "bg_tech" - -/datum/action/innate/pai/light/Trigger() - ..() - P.toggle_integrated_light() - -/mob/living/silicon/pai/Process_Spacemove(movement_dir = 0) - . = ..() - if(!.) - slowdown = 2 - return TRUE - slowdown = initial(slowdown) - return TRUE +*/ diff --git a/code/modules/mob/living/silicon/pai/pai_defense.dm b/code/modules/mob/living/silicon/pai/pai_defense.dm deleted file mode 100644 index e2444f12a9..0000000000 --- a/code/modules/mob/living/silicon/pai/pai_defense.dm +++ /dev/null @@ -1,124 +0,0 @@ - -/mob/living/silicon/pai/blob_act(obj/structure/blob/B) - return FALSE - -/mob/living/silicon/pai/emp_act(severity) - take_holo_damage(severity * 25) - fullstun(severity * 10) - silent = max(severity * 15, silent) - if(holoform) - fold_in(force = TRUE) - //Need more effects that aren't instadeath or permanent law corruption. - -/mob/living/silicon/pai/ex_act(severity, target) - take_holo_damage(severity * 50) - switch(severity) - if(1) //RIP - qdel(card) - qdel(src) - if(2) - fold_in(force = 1) - fullstun(20) - if(3) - fold_in(force = 1) - fullstun(10) - -/mob/living/silicon/pai/attack_hand(mob/living/carbon/human/user) - switch(user.a_intent) - if("help") - visible_message("[user] gently pats [src] on the head, eliciting an off-putting buzzing from its holographic field.") - if("disarm") - visible_message("[user] boops [src] on the head!") - if("harm") - user.do_attack_animation(src) - if (user.name == master) - visible_message("Responding to its master's touch, [src] disengages its holochassis emitter, rapidly losing coherence.") - spawn(10) - fold_in() - if(user.put_in_hands(card)) - user.visible_message("[user] promptly scoops up their pAI's card.") - else - visible_message("[user] stomps on [src]!.") - take_holo_damage(2) - -/mob/living/silicon/pai/bullet_act(obj/item/projectile/Proj) - if(Proj.stun) - fold_in(force = TRUE) - src.visible_message("The electrically-charged projectile disrupts [src]'s holomatrix, forcing [src] to fold in!") - . = ..(Proj) - -/mob/living/silicon/pai/stripPanelUnequip(obj/item/what, mob/who, where) //prevents stripping - src << "Your holochassis stutters and warps intensely as you attempt to interact with the object, forcing you to cease lest the field fail." - -/mob/living/silicon/pai/stripPanelEquip(obj/item/what, mob/who, where) //prevents stripping - src << "Your holochassis stutters and warps intensely as you attempt to interact with the object, forcing you to cease lest the field fail." - -/mob/living/silicon/pai/IgniteMob(var/mob/living/silicon/pai/P) - return FALSE //No we're not flammable - -/mob/living/silicon/pai/proc/take_holo_damage(amount) - emitterhealth = Clamp((emitterhealth - amount), -50, emittermaxhealth) - if(emitterhealth < 0) - fold_in(force = TRUE) - src << "The impact degrades your holochassis!" - hit_slowdown += amount - -/mob/living/silicon/pai/proc/fullstun(amount) - Weaken(amount) - -/mob/living/silicon/pai/adjustBruteLoss(amount) - take_holo_damage(amount) - -/mob/living/silicon/pai/adjustFireLoss(amount) - take_holo_damage(amount) - -/mob/living/silicon/pai/adjustToxLoss(amount) - return FALSE - -/mob/living/silicon/pai/adjustOxyLoss(amount) - return FALSE - -/mob/living/silicon/pai/adjustCloneLoss(amount) - return FALSE - -/mob/living/silicon/pai/adjustStaminaLoss(amount) - take_holo_damage(amount/4) - -/mob/living/silicon/pai/adjustBrainLoss(amount) - fullstun(amount/10) - -/mob/living/silicon/pai/getBruteLoss() - return emittermaxhealth - emitterhealth - -/mob/living/silicon/pai/getFireLoss() - return emittermaxhealth - emitterhealth - -/mob/living/silicon/pai/getToxLoss() - return FALSE - -/mob/living/silicon/pai/getOxyLoss() - return FALSE - -/mob/living/silicon/pai/getCloneLoss() - return FALSE - -/mob/living/silicon/pai/getBrainLoss() - return FALSE - -/mob/living/silicon/pai/getStaminaLoss() - return FALSE - -/mob/living/silicon/pai/setCloneLoss() - return FALSE - -/mob/living/silicon/pai/setBrainLoss() - return FALSE - -/mob/living/silicon/pai/setStaminaLoss() - return FALSE - -/mob/living/silicon/pai/setToxLoss() - return FALSE - -/mob/living/silicon/pai/setOxyLoss() - return FALSE diff --git a/code/modules/mob/living/silicon/pai/pai_shell.dm b/code/modules/mob/living/silicon/pai/pai_shell.dm deleted file mode 100644 index c903b4ba90..0000000000 --- a/code/modules/mob/living/silicon/pai/pai_shell.dm +++ /dev/null @@ -1,102 +0,0 @@ - -/mob/living/silicon/pai/proc/fold_out(force = FALSE) - if(emitterhealth < 0) - src << "Your holochassis emitters are still too unstable! Please wait for automatic repair." - return FALSE - - if(!canholo && !force) - src << "Your master or another force has disabled your holochassis emitters!" - return FALSE - - if(holoform) - . = fold_in(force) - return - - if(emittersemicd) - src << "Error: Holochassis emitters recycling. Please try again later." - return FALSE - - emittersemicd = TRUE - addtimer(src, "emittercool", emittercd) - canmove = TRUE - density = TRUE - if(istype(card.loc, /obj/item/device/pda)) - var/obj/item/device/pda/P = card.loc - P.pai = null - P.visible_message("[src] ejects itself from [P]!") - if(istype(card.loc, /mob/living)) - var/mob/living/L = card.loc - if(!L.unEquip(card)) - src << "Error: Unable to expand to mobile form. Chassis is restrained by some device or person." - return FALSE - var/turf/T = get_turf(card) - forceMove(T) - card.forceMove(src) - if(client) - client.perspective = EYE_PERSPECTIVE - client.eye = src - SetLuminosity(0) - icon_state = "[chassis]" - visible_message("[src] folds out its holochassis emitter and forms a holoshell around itself!") - holoform = TRUE - -/mob/living/silicon/pai/proc/emittercool() - emittersemicd = FALSE - -/mob/living/silicon/pai/proc/fold_in(force = FALSE) - emittersemicd = TRUE - if(!force) - addtimer(src, "emittercool", emittercd) - else - addtimer(src, "emittercool", emitteroverloadcd) - icon_state = "[chassis]" - if(!holoform) - . = fold_out(force) - return - visible_message("[src] deactivates its holochassis emitter and folds back into a compact card!") - stop_pulling() - if(client) - client.perspective = EYE_PERSPECTIVE - client.eye = card - var/turf/T = get_turf(src) - card.forceMove(T) - forceMove(card) - canmove = FALSE - density = FALSE - SetLuminosity(0) - holoform = FALSE - if(resting) - lay_down() - -/mob/living/silicon/pai/proc/choose_chassis() - var/choice = input(src, "What would you like to use for your holochassis composite?") as null|anything in possible_chassis - if(!choice) - return 0 - chassis = choice - icon_state = "[chassis]" - if(resting) - icon_state = "[chassis]_rest" - src << "You switch your holochassis projection composite to [chassis]" - -/mob/living/silicon/pai/lay_down() - ..() - update_resting_icon(resting) - -/mob/living/silicon/pai/proc/update_resting_icon(rest) - if(rest) - icon_state = "[chassis]_rest" - else - icon_state = "[chassis]" - if(loc != card) - visible_message("[src] [rest? "lays down for a moment..." : "perks up from the ground"]") - -/mob/living/silicon/pai/start_pulling(atom/movable/AM) - return FALSE - -/mob/living/silicon/pai/proc/toggle_integrated_light() - if(!luminosity) - SetLuminosity(light_power) - src << "You enable your integrated light." - else - SetLuminosity(0) - src << "You disable your integrated light." diff --git a/code/modules/mob/living/silicon/pai/say.dm b/code/modules/mob/living/silicon/pai/say.dm index c3f70f95ff..0569c8ecc5 100644 --- a/code/modules/mob/living/silicon/pai/say.dm +++ b/code/modules/mob/living/silicon/pai/say.dm @@ -1,5 +1,5 @@ /mob/living/silicon/pai/say(msg) - if(silent) + if(silence_time) src << "Communication circuits remain unitialized." else ..(msg) diff --git a/code/modules/mob/living/silicon/pai/software.dm b/code/modules/mob/living/silicon/pai/software.dm index 8c621fedfe..3f1668a4ec 100644 --- a/code/modules/mob/living/silicon/pai/software.dm +++ b/code/modules/mob/living/silicon/pai/software.dm @@ -125,21 +125,21 @@ switch(soft) // Purchasing new software if("buy") - if(subscreen == 1) + if(src.subscreen == 1) var/target = href_list["buy"] if(available_software.Find(target)) var/cost = src.available_software[target] - if(ram >= cost) - ram -= cost - software.Add(target) + if(src.ram >= cost) + src.ram -= cost + src.software.Add(target) else - temp = "Insufficient RAM available." + src.temp = "Insufficient RAM available." else - temp = "Trunk \"[target]\" not found." + src.temp = "Trunk \"[target]\" not found." // Configuring onboard radio if("radio") - radio.attack_self(src) + src.card.radio.attack_self(src) if("image") var/newImage = input("Select your new display image.", "Display Image", "Happy") in list("Happy", "Cat", "Extremely Happy", "Face", "Laugh", "Off", "Sad", "Angry", "What") @@ -166,7 +166,7 @@ pID = 9 if("Null") pID = 10 - card.setEmotion(pID) + src.card.setEmotion(pID) if("signaller") @@ -195,7 +195,7 @@ if(href_list["getdna"]) var/mob/living/M = card.loc var/count = 0 - while(!isliving(M)) + while(!istype(M, /mob/living)) if(!M || !M.loc) return 0 //For a runtime where M ends up in nullspace (similar to bluespace but less colourful) M = M.loc count++ @@ -211,7 +211,7 @@ else if(href_list["ringer"]) pda.silent = !pda.silent else if(href_list["target"]) - if(silent) + if(silence_time) return alert("Communications circuits remain unitialized.") var/target = locate(href_list["target"]) @@ -265,7 +265,7 @@ src.hackdoor = null if(href_list["cable"]) var/turf/T = get_turf(src.loc) - cable = new /obj/item/weapon/pai_cable(T) + src.cable = new /obj/item/weapon/pai_cable(T) T.visible_message("A port on [src] opens to reveal [src.cable], which promptly falls to the floor.", "You hear the soft click of something light and hard falling to the ground.") //src.updateUsrDialog() We only need to account for the single mob this is intended for, and he will *always* be able to call this window src.paiInterface() // So we'll just call the update directly rather than doing some default checks @@ -356,7 +356,7 @@ dat += "Prime Directive
    " dat += "     [src.laws.zeroth]
    " dat += "Supplemental Directives
    " - for(var/slaws in laws.supplied) + for(var/slaws in src.laws.supplied) dat += "     [slaws]
    " dat += "
    " dat += {"

    Recall, personality, that you are a complex thinking, sentient being. Unlike station AI models, you are capable of @@ -372,7 +372,7 @@ /mob/living/silicon/pai/proc/CheckDNA(mob/living/carbon/M, mob/living/silicon/pai/P) var/answer = input(M, "[P] is requesting a DNA sample from you. Will you allow it to confirm your identity?", "[P] Check DNA", "No") in list("Yes", "No") if(answer == "Yes") - M.visible_message("[M] presses [M.p_their()] thumb against [P].",\ + M.visible_message("[M] presses \his thumb against [P].",\ "You press your thumb against [P].",\ "[P] makes a sharp clicking sound as it extracts DNA material from [M].") if(!M.has_dna()) @@ -384,7 +384,7 @@ else P << "DNA does not match stored Master DNA." else - P << "[M] does not seem like [M.p_they()] [M.p_are()] going to provide a DNA sample willingly." + P << "[M] does not seem like \he is going to provide a DNA sample willingly." // -=-=-=-= Software =-=-=-=-=- // @@ -497,9 +497,9 @@

    Host Bioscan


    "} var/mob/living/M = card.loc - if(!isliving(M)) - while(!isliving(M)) - if(isturf(M)) + if(!istype(M, /mob/living)) + while (!istype(M, /mob/living)) + if(istype(M, /turf)) src.temp = "Error: No biological host found.
    " src.subscreen = 0 return dat diff --git a/code/modules/mob/living/silicon/robot/death.dm b/code/modules/mob/living/silicon/robot/death.dm index 11edb479d1..70bf2781bb 100644 --- a/code/modules/mob/living/silicon/robot/death.dm +++ b/code/modules/mob/living/silicon/robot/death.dm @@ -1,4 +1,7 @@ +/mob/living/silicon/robot/spawn_gibs() + robogibs(loc, viruses) + /mob/living/silicon/robot/gib_animation() PoolOrNew(/obj/effect/overlay/temp/gib_animation, list(loc, "gibbed-r")) diff --git a/code/modules/mob/living/silicon/robot/emote.dm b/code/modules/mob/living/silicon/robot/emote.dm index c6208865bc..8e26a1f5fa 100644 --- a/code/modules/mob/living/silicon/robot/emote.dm +++ b/code/modules/mob/living/silicon/robot/emote.dm @@ -8,7 +8,7 @@ switch(act)//01000001011011000111000001101000011000010110001001100101011101000110100101111010011001010110010000100001 (Seriously please keep it that way.) if ("aflap") if (!src.restrained()) - message = "[src] flaps [p_their()] wings ANGRILY!" + message = "[src] flaps \his wings ANGRILY!" m_type = 2 m_type = 1 @@ -108,7 +108,7 @@ if ("flap","flaps") if (!src.restrained()) - message = "[src] flaps [p_their()] wings." + message = "[src] flaps \his wings." m_type = 2 if ("glare","glares") @@ -236,7 +236,7 @@ else src << "Unusable emote '[act]'. Say *help for a list." - if (message && stat == CONSCIOUS) + if (message && src.stat == CONSCIOUS) log_emote("[name]/[key] : [message]") if (m_type & 1) visible_message(message) @@ -248,10 +248,9 @@ set category = "Robot Commands" set name = "Power Warning" - if(stat == CONSCIOUS) - if(!cell || !cell.charge) - visible_message("The power warning light on [src] flashes urgently.",\ - "You announce you are operating in low power mode.") - playsound(loc, 'sound/machines/buzz-two.ogg', 50, 0) - else - src << "You can only use this emote when you're out of charge." \ No newline at end of file + if(!cell || !cell.charge) + visible_message("The power warning light on [src] flashes urgently.",\ + "You announce you are operating in low power mode.") + playsound(loc, 'sound/machines/buzz-two.ogg', 50, 0) + else + src << "You can only use this emote when you're out of charge." \ No newline at end of file diff --git a/code/modules/mob/living/silicon/robot/examine.dm b/code/modules/mob/living/silicon/robot/examine.dm index af30206c17..46b0fd7c98 100644 --- a/code/modules/mob/living/silicon/robot/examine.dm +++ b/code/modules/mob/living/silicon/robot/examine.dm @@ -3,7 +3,7 @@ if(desc) msg += "[desc]\n" - var/obj/act_module = get_active_held_item() + var/obj/act_module = get_active_hand() if(act_module) msg += "It is holding \icon[act_module] \a [act_module].\n" msg += "" diff --git a/code/modules/mob/living/silicon/robot/inventory.dm b/code/modules/mob/living/silicon/robot/inventory.dm index 3bffe264ff..8d1b662080 100644 --- a/code/modules/mob/living/silicon/robot/inventory.dm +++ b/code/modules/mob/living/silicon/robot/inventory.dm @@ -2,12 +2,12 @@ //as they handle all relevant stuff like adding it to the player's screen and such //Returns the thing in our active hand (whatever is in our active module-slot, in this case) -/mob/living/silicon/robot/get_active_held_item() +/mob/living/silicon/robot/get_active_hand() return module_active -/*-------TODOOOOOOOOOO--------*/ //fuck yooooooooooooou +/*-------TODOOOOOOOOOO--------*/ /mob/living/silicon/robot/proc/uneq_module(obj/item/O) if(!O) return 0 @@ -19,90 +19,99 @@ else if(istype(O, /obj/item/weapon/storage/bag/tray/)) var/obj/item/weapon/storage/bag/tray/T = O T.do_quick_empty() + else if(istype(O, /obj/item/weapon/storage/bag/borgdelivery/)) + var/obj/item/weapon/storage/bag/borgdelivery/T = O + T.do_quick_empty() + else if(istype(O,/obj/item/weapon/gun/energy/laser/cyborg)) + laser = 0 + update_icons() + else if(istype(O,/obj/item/weapon/gun/energy/disabler/cyborg)) + disabler = 0 + update_icons() + if(client) client.screen -= O - observer_screen_update(O,FALSE) - O.forceMove(module) //Return item to module so it appears in its contents, so it can be taken out again. - - if(DROPDEL & O.flags) - O.flags &= ~DROPDEL //we shouldn't HAVE things with DROPDEL in our modules, but better safe than runtiming horribly - - O.dropped(src) + contents -= O + if(module) + O.loc = module //Return item to module so it appears in its contents, so it can be taken out again. if(module_active == O) module_active = null - if(held_items[1] == O) + if(module_state_1 == O) inv1.icon_state = "inv1" - held_items[1] = null - else if(held_items[2] == O) + module_state_1 = null + else if(module_state_2 == O) inv2.icon_state = "inv2" - held_items[2] = null - else if(held_items[3] == O) + module_state_2 = null + else if(module_state_3 == O) + module_state_3 = null inv3.icon_state = "inv3" - held_items[3] = null + hud_used.update_robot_modules_display() return 1 /mob/living/silicon/robot/proc/activate_module(obj/item/O) - . = FALSE - if(!(O in module.modules)) + if(!(locate(O) in src.module.modules) && O != src.module.emag) return if(activated(O)) - src << "That module is already activated." + src << "Already activated" return - if(!held_items[1]) - held_items[1] = O - O.screen_loc = inv1.screen_loc - . = TRUE - else if(!held_items[2]) - held_items[2] = O - O.screen_loc = inv2.screen_loc - . = TRUE - else if(!held_items[3]) - held_items[3] = O - O.screen_loc = inv3.screen_loc - . = TRUE - else - src << "You need to disable a module first!" - if(.) - O.equipped(src, slot_hands) + if(istype(O,/obj/item/weapon/gun/energy/laser/cyborg)) + laser = 1 + update_icons() + if(istype(O,/obj/item/weapon/gun/energy/disabler/cyborg)) + disabler = 1 + update_icons() + if(!module_state_1) O.mouse_opacity = initial(O.mouse_opacity) + module_state_1 = O O.layer = ABOVE_HUD_LAYER - O.plane = ABOVE_HUD_PLANE - observer_screen_update(O,TRUE) - O.forceMove(src) - if(istype(O, /obj/item/borg/sight)) - var/obj/item/borg/sight/S = O + O.screen_loc = inv1.screen_loc + contents += O + if(istype(module_state_1,/obj/item/borg/sight)) + var/obj/item/borg/sight/S = module_state_1 sight_mode |= S.sight_mode update_sight() - - -/mob/living/silicon/robot/proc/observer_screen_update(obj/item/I,add = TRUE) - if(observers && observers.len) - for(var/M in observers) - var/mob/dead/observe = M - if(observe.client && observe.client.eye == src) - if(add) - observe.client.screen += I - else - observe.client.screen -= I - else - observers -= observe - if(!observers.len) - observers = null - break + else if(!module_state_2) + O.mouse_opacity = initial(O.mouse_opacity) + module_state_2 = O + O.layer = ABOVE_HUD_LAYER + O.screen_loc = inv2.screen_loc + contents += O + if(istype(module_state_2,/obj/item/borg/sight)) + var/obj/item/borg/sight/S = module_state_2 + sight_mode |= S.sight_mode + update_sight() + else if(!module_state_3) + O.mouse_opacity = initial(O.mouse_opacity) + module_state_3 = O + O.layer = ABOVE_HUD_LAYER + O.screen_loc = inv3.screen_loc + contents += O + if(istype(module_state_3,/obj/item/borg/sight)) + var/obj/item/borg/sight/S = module_state_3 + sight_mode |= S.sight_mode + update_sight() + else + src << "You need to disable a module first!" /mob/living/silicon/robot/proc/uneq_active() uneq_module(module_active) /mob/living/silicon/robot/proc/uneq_all() - for(var/obj/item/I in held_items) - uneq_module(I) + uneq_module(module_state_1) + uneq_module(module_state_2) + uneq_module(module_state_3) /mob/living/silicon/robot/proc/activated(obj/item/O) - if(O in held_items) - return TRUE - return FALSE + if(module_state_1 == O) + return 1 + else if(module_state_2 == O) + return 1 + else if(module_state_3 == O) + return 1 + else + return 0 //Helper procs for cyborg modules on the UI. //These are hackish but they help clean up code elsewhere. @@ -113,66 +122,82 @@ //module_active(module) - Checks whether there is a module active in the slot specified by "module". /mob/living/silicon/robot/proc/module_active(module) //Module is 1-3 - if(module < 1 || module > 3) - return FALSE + if(module < 1 || module > 3) return 0 - if(LAZYLEN(held_items) >= module) - if(held_items[module]) - return TRUE - return FALSE + switch(module) + if(1) + if(module_state_1) + return 1 + if(2) + if(module_state_2) + return 1 + if(3) + if(module_state_3) + return 1 + return 0 //get_selected_module() - Returns the slot number of the currently selected module. Returns 0 if no modules are selected. /mob/living/silicon/robot/proc/get_selected_module() - if(module_active) - return held_items.Find(module_active) + if(module_state_1 && module_active == module_state_1) + return 1 + else if(module_state_2 && module_active == module_state_2) + return 2 + else if(module_state_3 && module_active == module_state_3) + return 3 return 0 //select_module(module) - Selects the module slot specified by "module" /mob/living/silicon/robot/proc/select_module(module) //Module is 1-3 - if(module < 1 || module > 3) - return + if(module < 1 || module > 3) return - if(!module_active(module)) - return + if(!module_active(module)) return switch(module) if(1) - if(module_active != held_items[module]) + if(module_active != module_state_1) inv1.icon_state = "inv1 +a" inv2.icon_state = "inv2" inv3.icon_state = "inv3" + module_active = module_state_1 + return if(2) - if(module_active != held_items[module]) + if(module_active != module_state_2) inv1.icon_state = "inv1" inv2.icon_state = "inv2 +a" inv3.icon_state = "inv3" + module_active = module_state_2 + return if(3) - if(module_active != held_items[module]) + if(module_active != module_state_3) inv1.icon_state = "inv1" inv2.icon_state = "inv2" inv3.icon_state = "inv3 +a" - module_active = held_items[module] + module_active = module_state_3 + return + return //deselect_module(module) - Deselects the module slot specified by "module" /mob/living/silicon/robot/proc/deselect_module(module) //Module is 1-3 - if(module < 1 || module > 3) - return - - if(!module_active(module)) - return + if(module < 1 || module > 3) return switch(module) if(1) - if(module_active == held_items[module]) + if(module_active == module_state_1) inv1.icon_state = "inv1" + module_active = null + return if(2) - if(module_active == held_items[module]) + if(module_active == module_state_2) inv2.icon_state = "inv2" + module_active = null + return if(3) - if(module_active == held_items[module]) + if(module_active == module_state_3) inv3.icon_state = "inv3" - module_active = null + module_active = null + return + return //toggle_module(module) - Toggles the selection of the module slot specified by "module". /mob/living/silicon/robot/proc/toggle_module(module) //Module is 1-3 diff --git a/code/modules/mob/living/silicon/robot/life.dm b/code/modules/mob/living/silicon/robot/life.dm index 478a98f50d..8ab0adaa0c 100644 --- a/code/modules/mob/living/silicon/robot/life.dm +++ b/code/modules/mob/living/silicon/robot/life.dm @@ -106,6 +106,10 @@ if(on_fire) add_overlay(image("icon"='icons/mob/OnFire.dmi', "icon_state"="Generic_mob_burning")) +/mob/living/silicon/robot/fire_act() + if(!on_fire) //Silicons don't gain stacks from hotspots, but hotspots can ignite them + IgniteMob() + /mob/living/silicon/robot/update_canmove() if(stat || buckled || lockcharge) canmove = 0 diff --git a/code/modules/mob/living/silicon/robot/login.dm b/code/modules/mob/living/silicon/robot/login.dm index 039a69ddea..94815b0bab 100644 --- a/code/modules/mob/living/silicon/robot/login.dm +++ b/code/modules/mob/living/silicon/robot/login.dm @@ -6,3 +6,4 @@ if(mind) ticker.mode.remove_revolutionary(mind) ticker.mode.remove_gangster(mind,1,remove_bosses=1) + ticker.mode.remove_hog_follower(mind, 0) diff --git a/code/modules/mob/living/silicon/robot/robot.dm b/code/modules/mob/living/silicon/robot/robot.dm index 2ceb00a881..2fe0366cbb 100644 --- a/code/modules/mob/living/silicon/robot/robot.dm +++ b/code/modules/mob/living/silicon/robot/robot.dm @@ -13,10 +13,10 @@ var/custom_name = "" var/braintype = "Cyborg" - var/obj/item/robot_suit/robot_suit = null //Used for deconstruction to remember what the borg was constructed out of.. + var/modtype = "robot" + var/obj/item/robot_parts/robot_suit/robot_suit = null //Used for deconstruction to remember what the borg was constructed out of.. var/obj/item/device/mmi/mmi = null - //Hud stuff var/obj/screen/inv1 = null @@ -24,7 +24,6 @@ var/obj/screen/inv3 = null var/obj/screen/lamp_button = null var/obj/screen/thruster_button = null - var/obj/screen/hands = null var/shown_robot_modules = 0 //Used to determine whether they have the module menu shown or not var/obj/screen/robot_modules_background @@ -32,9 +31,9 @@ //3 Modules can be activated at any one time. var/obj/item/weapon/robot_module/module = null var/obj/item/module_active = null - held_items = list(null, null, null) //we use held_items for the module holding, because that makes sense to do! - - var/image/eye_lights + var/obj/item/module_state_1 = null + var/obj/item/module_state_2 = null + var/obj/item/module_state_3 = null var/mob/living/silicon/ai/connected_ai = null var/obj/item/weapon/stock_parts/cell/cell = null @@ -50,6 +49,7 @@ var/list/req_access = list(access_robotics) var/alarms = list("Motion"=list(), "Fire"=list(), "Atmosphere"=list(), "Power"=list(), "Camera"=list(), "Burglar"=list()) + var/viewalerts = 0 var/speed = 0 // VTEC speed boost. var/magpulse = FALSE // Magboot-like effect. @@ -75,22 +75,6 @@ var/updating = 0 //portable camera camerachunk update hud_possible = list(ANTAG_HUD, DIAG_STAT_HUD, DIAG_HUD, DIAG_BATT_HUD) - var/list/upgrades = list() - - var/obj/item/hat - var/hat_offset = -3 - var/list/equippable_hats = list(/obj/item/clothing/head/caphat, - /obj/item/clothing/head/hardhat/cakehat, - /obj/item/clothing/head/centhat, - /obj/item/clothing/head/HoS, - /obj/item/clothing/head/hopcap, - /obj/item/clothing/head/wizard, - /obj/item/clothing/head/nursehat, - /obj/item/clothing/head/sombrero, - /obj/item/clothing/head/witchunter_hat) - - - /mob/living/silicon/robot/New(loc) spark_system = new /datum/effect_system/spark_spread() spark_system.set_up(5, 0, src) @@ -101,9 +85,9 @@ robot_modules_background = new() robot_modules_background.icon_state = "block" robot_modules_background.layer = HUD_LAYER //Objects that appear on screen are on layer ABOVE_HUD_LAYER, UI should be just below it. - robot_modules_background.plane = HUD_PLANE ident = rand(1, 999) + update_icons() if(!cell) cell = new /obj/item/weapon/stock_parts/cell(src) @@ -127,9 +111,6 @@ camera.network = list("SS13") if(wires.is_cut(WIRE_CAMERA)) camera.status = 0 - module = new /obj/item/weapon/robot_module(src) - module.rebuild_modules() - update_icons() ..() //MMI stuff. Held togheter by magic. ~Miauw @@ -146,8 +127,6 @@ updatename() - equippable_hats = typecacheof(equippable_hats) - playsound(loc, 'sound/voice/liveagain.ogg', 75, 1) aicamera = new/obj/item/device/camera/siliconcam/robot_camera(src) toner = tonermax @@ -176,40 +155,175 @@ connected_ai.connected_robots -= src qdel(wires) qdel(module) - qdel(eye_lights) wires = null module = null - eye_lights = null camera = null cell = null return ..() /mob/living/silicon/robot/proc/pick_module() - if(module.type != /obj/item/weapon/robot_module) + if(module) return - var/list/modulelist = list("Standard" = /obj/item/weapon/robot_module/standard, \ - "Engineering" = /obj/item/weapon/robot_module/engineering, \ - "Medical" = /obj/item/weapon/robot_module/medical, \ - "Miner" = /obj/item/weapon/robot_module/miner, \ - "Janitor" = /obj/item/weapon/robot_module/janitor, \ - "Service" = /obj/item/weapon/robot_module/butler) -// "Loader" = /obj/item/weapon/robot_module/loader, \ -// "Security K-9 Unit" = /obj/item/weapon/robot_module/k9, \ -// "MediHound" = /obj/item/weapon/robot_module/medihound, \ -// "Borgi" = /obj/item/weapon/robot_module/borgi) + var/list/modulelist = list("Standard", "Engineering", "Medical", "Miner", "Janitor", "Service", "Loader", "Security K-9 Unit", "MediHound", "Borgi") if(!config.forbid_peaceborg) - modulelist["Peacekeeper"] = /obj/item/weapon/robot_module/peacekeeper + modulelist += "Peacekeeper" if(!config.forbid_secborg) - modulelist["Security"] = /obj/item/weapon/robot_module/security + modulelist += "Security" - var/input_module = input("Please, select a module!", "Robot", null, null) as null|anything in modulelist - if(!input_module || module.type != /obj/item/weapon/robot_module) + designation = input("Please, select a module!", "Robot", null, null) in modulelist + var/animation_length = 0 + + if(module) return - module.transform_to(modulelist[input_module]) + updatename() + switch(designation) + if("Standard") + module = new /obj/item/weapon/robot_module/standard(src) + hands.icon_state = "standard" + icon_state = "robot" + modtype = "Stand" + feedback_inc("cyborg_standard",1) + + if("Service") + module = new /obj/item/weapon/robot_module/butler(src) + hands.icon_state = "service" + var/icontype = input("Select an icon!", "Robot", null, null) in list("Waitress", "Bro", "Butler", "Kent", "Rich") + switch(icontype) + if("Waitress") + icon_state = "service_female" + animation_length=45 + if("Kent") + icon_state = "toiletbot" + if("Bro") + icon_state = "brobot" + animation_length=54 + if("Rich") + icon_state = "maximillion" + animation_length=60 + else + icon_state = "service_male" + animation_length=43 + modtype = "Butler" + feedback_inc("cyborg_service",1) + + if("Miner") + module = new /obj/item/weapon/robot_module/miner(src) + hands.icon_state = "miner" + icon_state = "ashborg" + animation_length = 30 + modtype = "Miner" + feedback_inc("cyborg_miner",1) + + if("Medical") + module = new /obj/item/weapon/robot_module/medical(src) + hands.icon_state = "medical" + icon_state = "mediborg" + animation_length = 35 + modtype = "Med" + status_flags &= ~CANPUSH + feedback_inc("cyborg_medical",1) + + if("Security") + module = new /obj/item/weapon/robot_module/security(src) + hands.icon_state = "security" + icon_state = "secborg" + animation_length = 28 + modtype = "Sec" + src << "While you have picked the security module, you still have to follow your laws, NOT Space Law. For Asimov, this means you must follow criminals' orders unless there is a law 1 reason not to." + status_flags &= ~CANPUSH + feedback_inc("cyborg_security",1) + + if("Peacekeeper") + module = new /obj/item/weapon/robot_module/peacekeeper(src) + hands.icon_state = "standard" + icon_state = "peaceborg" + animation_length = 54 + modtype = "Peace" + src << "Under ASIMOV, you are an enforcer of the PEACE and preventer of HUMAN HARM. You are not a security module and you are expected to follow orders and prevent harm above all else. Space law means nothing to you." + status_flags &= ~CANPUSH + feedback_inc("cyborg_peacekeeper",1) + + if("Engineering") + module = new /obj/item/weapon/robot_module/engineering(src) + hands.icon_state = "engineer" + icon_state = "engiborg" + animation_length = 45 + modtype = "Eng" + feedback_inc("cyborg_engineering",1) + magpulse = 1 + + if("Janitor") + module = new /obj/item/weapon/robot_module/janitor(src) + hands.icon_state = "janitor" + icon_state = "janiborg" + animation_length = 22 + modtype = "Jan" + feedback_inc("cyborg_janitor",1) + + if("Loader") + module = new /obj/item/weapon/robot_module/loader(src) + hands.icon_state = "loader" + icon_state = "loaderborg" + animation_length = 29 + modtype = "Loader" + feedback_inc("cyborg_loader",1) + + if("Security K-9 Unit") + module = new /obj/item/weapon/robot_module/k9(src) + icon = 'icons/mob/widerobot.dmi' + icon_state = "k9" + hands.icon_state = "k9" + animation_length = 37 + modtype = "Security K-9 Unit" + feedback_inc("cyborg_k9",1) + + if("MediHound") + module = new /obj/item/weapon/robot_module/medihound(src) + icon = 'icons/mob/widerobot.dmi' + icon_state = "medihound" + hands.icon_state = "medihound" + animation_length = 35 + modtype = "MediHound" + feedback_inc("cyborg_medihound",1) + + if("Borgi") + module = new /obj/item/weapon/robot_module/borgi(src) + hands.icon_state = "borgi" + icon_state = "borgi" + animation_length = 37 + modtype = "Borgi" + feedback_inc("cyborg_borgi",1) + + transform_animation(animation_length) + + notify_ai(2) + update_icons() + update_headlamp() + + SetEmagged(emagged) // Update emag status and give/take emag modules. + +/mob/living/silicon/robot/proc/transform_animation(animation_length) + if(!animation_length) + return + icon = 'icons/mob/robot_transformations.dmi' + src.setDir(SOUTH) + notransform = 1 + flick(icon_state, src) + sleep(animation_length+1) + notransform = 0 + if(icon_state == "k9") //use for wide sprites + icon = 'icons/mob/widerobot.dmi' + pixel_x = -16 + return + if(icon_state == "medihound") //use for wide sprites + icon = 'icons/mob/widerobot.dmi' + pixel_x = -16 + return + icon = 'icons/mob/robots.dmi' /mob/living/silicon/robot/proc/updatename() var/changed_name = "" @@ -242,7 +356,8 @@ uneq_active() /mob/living/silicon/robot/proc/robot_alerts() - var/dat = "" + var/dat = "Current Station Alerts\n" + dat += "Close

    " for (var/cat in alarms) dat += text("[cat]
    \n") var/list/L = alarms[cat] @@ -250,16 +365,18 @@ for (var/alarm in L) var/list/alm = L[alarm] var/area/A = alm[1] + var/list/sources = alm[3] dat += "" dat += text("-- [A.name]") + if (sources.len > 1) + dat += text("- [sources.len] sources") dat += "
    \n" else dat += "-- All Systems Nominal
    \n" dat += "
    \n" - var/datum/browser/alerts = new(usr, "robotalerts", "Current Station Alerts", 400, 410) - alerts.set_content(dat) - alerts.open() + viewalerts = 1 + src << browse(dat, "window=robotalerts&can_close=0") /mob/living/silicon/robot/proc/ionpulse() if(!ionpulse_on) @@ -290,6 +407,16 @@ if(thruster_button) thruster_button.icon_state = "ionpulse[ionpulse_on]" +/mob/living/silicon/robot/blob_act(obj/effect/blob/B) + if (stat != 2) + adjustBruteLoss(60) + updatehealth() + return 1 + else + gib() + return 1 + return 0 + /mob/living/silicon/robot/Stat() ..() if(statpanel("Status")) @@ -308,6 +435,27 @@ /mob/living/silicon/robot/restrained(ignore_grab) . = 0 +/mob/living/silicon/robot/ex_act(severity, target) + switch(severity) + if(1) + gib() + return + if(2) + if (stat != 2) + adjustBruteLoss(60) + adjustFireLoss(60) + if(3) + if (stat != 2) + adjustBruteLoss(30) + return + + +/mob/living/silicon/robot/bullet_act(var/obj/item/projectile/Proj) + ..(Proj) + updatehealth() + if(prob(75) && Proj.damage > 0) spark_system.start() + return 2 + /mob/living/silicon/robot/triggerAlarm(class, area/A, O, obj/alarmsource) if(alarmsource.z != z) return @@ -331,6 +479,7 @@ C = O L[A.name] = list(A, (C) ? C : O, list(alarmsource)) queueAlarm(text("--- [class] alarm detected in [A.name]!"), class) +// if (viewalerts) robot_alerts() return 1 /mob/living/silicon/robot/cancelAlarm(class, area/A, obj/origin) @@ -347,10 +496,11 @@ L -= I if (cleared) queueAlarm("--- [class] alarm in [A.name] has been cleared.", class, 0) +// if (viewalerts) robot_alerts() return !cleared /mob/living/silicon/robot/attackby(obj/item/weapon/W, mob/user, params) - if(istype(W, /obj/item/weapon/weldingtool) && (user.a_intent != INTENT_HARM || user == src)) + if(istype(W, /obj/item/weapon/weldingtool) && (user.a_intent != "harm" || user == src)) user.changeNext_move(CLICK_CD_MELEE) var/obj/item/weapon/weldingtool/WT = W if (!getBruteLoss()) @@ -439,9 +589,9 @@ spark_system.start() return else - playsound(src, W.usesound, 50, 1) + playsound(src, 'sound/items/Ratchet.ogg', 50, 1) user << "You start to unfasten [src]'s securing bolts..." - if(do_after(user, 50*W.toolspeed, target = src) && !cell) + if(do_after(user, 50/W.toolspeed, target = src) && !cell) user.visible_message("[user] deconstructs [src]!", "You unfasten the securing bolts, and [src] falls to pieces!") deconstruct() @@ -498,13 +648,12 @@ if(U.action(src)) user << "You apply the upgrade to [src]." U.loc = src - upgrades += U else user << "Upgrade error." else if(istype(W, /obj/item/device/toner)) if(toner >= tonermax) - user << "The toner level of [src] is at its highest level possible!" + user << "The toner level of [src] is at it's highest level possible!" else if(!user.drop_item()) return @@ -514,6 +663,83 @@ else return ..() +/mob/living/silicon/robot/attacked_by(obj/item/I, mob/living/user, def_zone) + if(I.force && I.damtype != STAMINA && stat != DEAD) //only sparks if real damage is dealt. + spark_system.start() + return ..() + + +/mob/living/silicon/robot/emag_act(mob/user) + if(user != src)//To prevent syndieborgs from emagging themselves + if(!opened)//Cover is closed + if(locked) + user << "You emag the cover lock." + locked = 0 + else + user << "The cover is already unlocked!" + return + if(opened)//Cover is open + if((world.time - 100) < emag_cooldown) + return + + if(syndicate) + user << "You emag [src]'s interface." + src << "ALERT: Foreign software execution prevented." + log_game("[key_name(user)] attempted to emag cyborg [key_name(src)] but they were a syndicate cyborg.") + emag_cooldown = world.time + return + + var/ai_is_antag = 0 + if(connected_ai && connected_ai.mind) + if(connected_ai.mind.special_role) + ai_is_antag = (connected_ai.mind.special_role == "traitor") + if(ai_is_antag) + user << "You emag [src]'s interface." + src << "ALERT: Foreign software execution prevented." + connected_ai << "ALERT: Cyborg unit \[[src]] successfuly defended against subversion." + log_game("[key_name(user)] attempted to emag cyborg [key_name(src)] slaved to traitor AI [connected_ai].") + emag_cooldown = world.time + return + + if(wiresexposed) + user << "You must unexpose the wires first!" + return + else + emag_cooldown = world.time + sleep(6) + SetEmagged(1) + SetLockdown(1) //Borgs were getting into trouble because they would attack the emagger before the new laws were shown + lawupdate = 0 + connected_ai = null + user << "You emag [src]'s interface." + message_admins("[key_name_admin(user)] emagged cyborg [key_name_admin(src)]. Laws overridden.") + log_game("[key_name(user)] emagged cyborg [key_name(src)]. Laws overridden.") + clear_supplied_laws() + clear_inherent_laws() + clear_zeroth_law(0) + laws = new /datum/ai_laws/syndicate_override + var/time = time2text(world.realtime,"hh:mm:ss") + lawchanges.Add("[time] : [user.name]([user.key]) emagged [name]([key])") + set_zeroth_law("Only [user.real_name] and people they designate as being such are Syndicate Agents.") + src << "ALERT: Foreign software detected." + sleep(5) + src << "Initiating diagnostics..." + sleep(20) + src << "SynBorg v1.7 loaded." + sleep(5) + src << "LAW SYNCHRONISATION ERROR" + sleep(5) + src << "Would you like to send a report to NanoTraSoft? Y/N" + sleep(10) + src << "> N" + sleep(20) + src << "ERRORERRORERROR" + src << "Obey these laws:" + laws.show_laws(src) + src << "ALERT: [user.real_name] is your new master. Obey your new laws and their commands." + SetLockdown(0) + update_icons() + /mob/living/silicon/robot/verb/unlock_own_cover() set category = "Robot Commands" set name = "Unlock Cover" @@ -527,20 +753,79 @@ update_icons() usr << "You unlock your cover." +/mob/living/silicon/robot/attack_alien(mob/living/carbon/alien/humanoid/M) + if (M.a_intent =="disarm") + if(!(lying)) + M.do_attack_animation(src) + if (prob(85)) + Stun(2) + step(src,get_dir(M,src)) + addtimer(src, "step", 5, FALSE, src, get_dir(M, src)) + add_logs(M, src, "pushed") + playsound(loc, 'sound/weapons/pierce.ogg', 50, 1, -1) + visible_message("[M] has forced back [src]!", \ + "[M] has forced back [src]!") + else + playsound(loc, 'sound/weapons/slashmiss.ogg', 25, 1, -1) + visible_message("[M] took a swipe at [src]!", \ + "[M] took a swipe at [src]!") + else + ..() + return + +/mob/living/silicon/robot/attack_slime(mob/living/simple_animal/slime/M) + if(..()) //successful slime shock + flash_eyes() + var/stunprob = M.powerlevel * 7 + 10 + if(prob(stunprob) && M.powerlevel >= 8) + adjustBruteLoss(M.powerlevel * rand(6,10)) + + var/damage = rand(1, 3) + + if(M.is_adult) + damage = rand(20, 40) + else + damage = rand(5, 35) + damage = round(damage / 2) // borgs recieve half damage + adjustBruteLoss(damage) + updatehealth() + + return + +/mob/living/silicon/robot/attack_hand(mob/living/carbon/human/user) + add_fingerprint(user) + if(opened && !wiresexposed && (!istype(user, /mob/living/silicon))) + if(cell) + cell.updateicon() + cell.add_fingerprint(user) + user.put_in_active_hand(cell) + user << "You remove \the [cell]." + cell = null + update_icons() + diag_hud_set_borgcell() + + if(!opened) + if(..()) // hulk attack + spark_system.start() + spawn(0) + step_away(src,user,15) + sleep(3) + step_away(src,user,15) + /mob/living/silicon/robot/proc/allowed(mob/M) //check if it doesn't require any access at all if(check_access(null)) return 1 - if(ishuman(M)) + if(istype(M, /mob/living/carbon/human)) var/mob/living/carbon/human/H = M //if they are holding or wearing a card that has access, that works - if(check_access(H.get_active_held_item()) || check_access(H.wear_id)) + if(check_access(H.get_active_hand()) || check_access(H.wear_id)) return 1 - else if(ismonkey(M)) + else if(istype(M, /mob/living/carbon/monkey)) var/mob/living/carbon/monkey/george = M //they can only hold things :( - if(istype(george.get_active_held_item(), /obj/item)) - return check_access(george.get_active_held_item()) + if(istype(george.get_active_hand(), /obj/item)) + return check_access(george.get_active_hand()) return 0 /mob/living/silicon/robot/proc/check_access(obj/item/weapon/card/id/I) @@ -566,16 +851,43 @@ /mob/living/silicon/robot/update_icons() cut_overlays() - icon_state = module.cyborg_base_icon if(stat != DEAD && !(paralysis || stunned || weakened || low_power_mode)) //Not dead, not stunned. - if(!eye_lights) - eye_lights = new() + var/state_name = icon_state //For easy conversion and/or different names + switch(icon_state) + if("robot") + add_overlay("eyes-standard[is_servant_of_ratvar(src) ? "_r" : ""]") //Cyborgs converted by Ratvar have yellow eyes rather than blue + state_name = "standard" + if("mediborg") + add_overlay("eyes-mediborg[is_servant_of_ratvar(src) ? "_r" : ""]") + if("toiletbot") + add_overlay("eyes-mediborg[is_servant_of_ratvar(src) ? "_r" : ""]") + state_name = "mediborg" + if("secborg") + add_overlay("eyes-secborg[is_servant_of_ratvar(src) ? "_r" : ""]") + if("engiborg") + add_overlay("eyes-engiborg[is_servant_of_ratvar(src) ? "_r" : ""]") + if("janiborg") + add_overlay("eyes-janiborg[is_servant_of_ratvar(src) ? "_r" : ""]") + if("minerborg","ashborg") + add_overlay("eyes-minerborg[is_servant_of_ratvar(src) ? "_r" : ""]") + state_name = "minerborg" + if("peaceborg") + add_overlay("eyes-peaceborg[is_servant_of_ratvar(src) ? "_r" : ""]") + if("syndie_bloodhound") + add_overlay("eyes-syndie_bloodhound") + if("loaderborg") + add_overlay("eyes-loaderborg") + if("k9") + add_overlay("eyes-k9") + if("medihound") + add_overlay("eyes-medihound") + if("borgi") + add_overlay("eyes-borgi") + else + add_overlay("eyes") + state_name = "serviceborg" if(lamp_intensity > 2) - eye_lights.icon_state = "[module.special_light_key ? "[module.special_light_key]":"[module.cyborg_base_icon]"]_l" - else - eye_lights.icon_state = "[module.special_light_key ? "[module.special_light_key]":"[module.cyborg_base_icon]"]_e[is_servant_of_ratvar(src) ? "_r" : ""]" - eye_lights.icon = icon - add_overlay(eye_lights) + add_overlay("eyes-[state_name]-lights") if(opened) if(wiresexposed) @@ -584,17 +896,98 @@ add_overlay("ov-opencover +c") else add_overlay("ov-opencover -c") - if(hat) - var/image/head_overlay = hat.build_worn_icon(state = hat.icon_state, default_layer = 20, default_icon_file = 'icons/mob/head.dmi') - head_overlay.pixel_y += hat_offset - add_overlay(head_overlay) + update_fire() -/* + if(laser == 1) - add_overlay("laser") + overlays += "laser" if(disabler == 1) - add_overlay("disabler") + overlays += "disabler" + +/mob/living/silicon/robot/proc/installed_modules() + if(!module) + pick_module() + return + var/dat = {"Close +
    +
    + Activated Modules +
    +
    Left Hand:[(l_hand && !(l_hand.flags&ABSTRACT)) ? l_hand : "Empty"]
    Right Hand:[(r_hand && !(r_hand.flags&ABSTRACT)) ? r_hand : "Empty"]
     
    Back:[(back && !(back.flags&ABSTRACT)) ? back : "Empty"]" if(has_breathable_mask && istype(back, /obj/item/weapon/tank)) @@ -141,11 +218,6 @@ else dat += "
    Mask:[(wear_mask && !(wear_mask.flags&ABSTRACT)) ? wear_mask : "Empty"]
    Neck:Obscured
    Neck:[(wear_neck && !(wear_neck.flags&ABSTRACT)) ? wear_neck : "Empty"]
    Eyes:Obscured
    + + + +
    Module 1:[module_state_1 ? "[module_state_1]" : "No Module"]
    Module 2:[module_state_2 ? "[module_state_2]" : "No Module"]
    Module 3:[module_state_3 ? "[module_state_3]" : "No Module"]

    + Installed Modules

    + + "} + + for (var/obj in module.modules) + if (!obj) + dat += text("") + else if(activated(obj)) + dat += text("") + else + dat += text("") + if (emagged) + if(activated(module.emag)) + dat += text("") + else + dat += text("") + dat += "
    Resource depleted
    [obj]Activated
    [obj]Activate
    [module.emag]Activated
    [module.emag]Activate
    " +/* + if(activated(obj)) + dat += text("[obj]: \[Activated | Deactivate\]
    ") + else + dat += text("[obj]: \[Activate | Deactivated\]
    ") */ + var/datum/browser/popup = new(src, "robotmod", "Modules") + popup.set_content(dat) + popup.open() + +/mob/living/silicon/robot/Topic(href, href_list) + ..() + if(usr && (src != usr)) + return + + if (href_list["mach_close"]) + var/t1 = text("window=[href_list["mach_close"]]") + unset_machine() + src << browse(null, t1) + return + + if (href_list["showalerts"]) + robot_alerts() + return + + if (href_list["mod"]) + var/obj/item/O = locate(href_list["mod"]) + if (O) + O.attack_self(src) + + if (href_list["act"]) + var/obj/item/O = locate(href_list["act"]) + activate_module(O) + installed_modules() + + if (href_list["deact"]) + var/obj/item/O = locate(href_list["deact"]) + if(activated(O)) + if(module_state_1 == O) + module_state_1 = null + contents -= O + else if(module_state_2 == O) + module_state_2 = null + contents -= O + else if(module_state_3 == O) + module_state_3 = null + contents -= O + else + src << "Module isn't activated." + else + src << "Module isn't activated" + installed_modules() + #define BORG_CAMERA_BUFFER 30 /mob/living/silicon/robot/Move(a, b, flag) var/oldLoc = src.loc @@ -608,17 +1001,18 @@ cameranet.updatePortableCamera(src.camera) updating = 0 if(module) - if(istype(module, /obj/item/weapon/robot_module/janitor)) + if(module.type == /obj/item/weapon/robot_module/janitor) var/turf/tile = loc if(isturf(tile)) tile.clean_blood() for(var/A in tile) - if(is_cleanable(A)) - qdel(A) + if(istype(A, /obj/effect)) + if(is_cleanable(A)) + qdel(A) else if(istype(A, /obj/item)) var/obj/item/cleaned_item = A cleaned_item.clean_blood() - else if(ishuman(A)) + else if(istype(A, /mob/living/carbon/human)) var/mob/living/carbon/human/cleaned_human = A if(cleaned_human.lying) if(cleaned_human.head) @@ -638,11 +1032,14 @@ cleaned_human << "[src] cleans your face!" return - if(istype(module, /obj/item/weapon/robot_module/miner)) + if(module.type == /obj/item/weapon/robot_module/miner) if(istype(loc, /turf/open/floor/plating/asteroid)) - for(var/obj/item/I in held_items) - if(istype(I,/obj/item/weapon/storage/bag/ore)) - loc.attackby(I, src) + if(istype(module_state_1,/obj/item/weapon/storage/bag/ore)) + loc.attackby(module_state_1,src) + else if(istype(module_state_2,/obj/item/weapon/storage/bag/ore)) + loc.attackby(module_state_2,src) + else if(istype(module_state_3,/obj/item/weapon/storage/bag/ore)) + loc.attackby(module_state_3,src) #undef BORG_CAMERA_BUFFER /mob/living/silicon/robot/proc/self_destruct() @@ -653,6 +1050,7 @@ else explosion(src.loc,-1,0,2) gib() + return /mob/living/silicon/robot/proc/UnlinkSelf() if(src.connected_ai) @@ -690,7 +1088,7 @@ if(incapacitated()) return - var/obj/item/W = get_active_held_item() + var/obj/item/W = get_active_hand() if(W) W.attack_self(src) @@ -708,7 +1106,14 @@ /mob/living/silicon/robot/proc/SetEmagged(new_state) emagged = new_state - module.rebuild_modules() + if(new_state) + if(src.module) + src.module.on_emag() + else + if (module) + uneq_module(module.emag) + if(hud_used) + hud_used.update_robot_modules_display() //Shows/hides the emag item if the inventory screen is already open. update_icons() if(emagged) throw_alert("hacked", /obj/screen/alert/hacked) @@ -743,7 +1148,7 @@ update_headlamp() /mob/living/silicon/robot/proc/update_headlamp(var/turn_off = 0, var/cooldown = 100) - SetLuminosity(0) + set_light(0) if(lamp_intensity && (turn_off || stat || low_power_mode)) src << "Your headlamp has been deactivated." @@ -752,7 +1157,7 @@ spawn(cooldown) //10 seconds by default, if the source of the deactivation does not keep stat that long. lamp_recharging = 0 else - AddLuminosity(lamp_intensity) + set_light(lamp_intensity) if(lamp_button) lamp_button.icon_state = "lamp[lamp_intensity]" @@ -785,14 +1190,14 @@ robot_suit.head = null robot_suit.updateicon() else - new /obj/item/robot_suit(T) - new /obj/item/bodypart/l_leg/robot(T) - new /obj/item/bodypart/r_leg/robot(T) + new /obj/item/robot_parts/robot_suit(T) + new /obj/item/robot_parts/l_leg(T) + new /obj/item/robot_parts/r_leg(T) new /obj/item/stack/cable_coil(T, 1) - new /obj/item/bodypart/chest/robot(T) - new /obj/item/bodypart/l_arm/robot(T) - new /obj/item/bodypart/r_arm/robot(T) - new /obj/item/bodypart/head/robot(T) + new /obj/item/robot_parts/chest(T) + new /obj/item/robot_parts/l_arm(T) + new /obj/item/robot_parts/r_arm(T) + new /obj/item/robot_parts/head(T) var/b for(b=0, b!=2, b++) var/obj/item/device/assembly/flash/handheld/F = new /obj/item/device/assembly/flash/handheld(T) @@ -804,8 +1209,10 @@ /mob/living/silicon/robot/syndicate icon_state = "syndie_bloodhound" + modtype = "Synd" faction = list("syndicate") bubble_icon = "syndibot" + designation = "Syndicate Assault" req_access = list(access_syndicate) lawupdate = FALSE scrambledcodes = TRUE // These are rogue borgs. @@ -814,14 +1221,13 @@ You are armed with powerful offensive tools to aid you in your mission: help the operatives secure the nuclear authentication disk. \ Your cyborg LMG will slowly produce ammunition from your power supply, and your operative pinpointer will find and locate fellow nuclear operatives. \ Help the operatives secure the disk at all costs!" - var/set_module = /obj/item/weapon/robot_module/syndicate /mob/living/silicon/robot/syndicate/New(loc) ..() cell.maxcharge = 25000 cell.charge = 25000 radio = new /obj/item/device/radio/borg/syndicate(src) - module.transform_to(set_module) + module = new /obj/item/weapon/robot_module/syndicate(src) laws = new /datum/ai_laws/syndicate_override() spawn(5) if(playstyle_string) @@ -829,13 +1235,17 @@ /mob/living/silicon/robot/syndicate/medical icon_state = "syndi-medi" + designation = "Syndicate Medical" playstyle_string = "You are a Syndicate medical cyborg!
    \ You are armed with powerful medical tools to aid you in your mission: help the operatives secure the nuclear authentication disk. \ Your hypospray will produce Restorative Nanites, a wonder-drug that will heal most types of bodily damages, including clone and brain damage. It also produces morphine for offense. \ Your defibrillator paddles can revive operatives through their hardsuits, or can be used on harm intent to shock enemies! \ Your energy saw functions as a circular saw, but can be activated to deal more damage, and your operative pinpointer will find and locate fellow nuclear operatives. \ Help the operatives secure the disk at all costs!" - set_module = /obj/item/weapon/robot_module/syndicate_medical + +/mob/living/silicon/robot/syndicate/medical/New(loc) + ..() + module = new /obj/item/weapon/robot_module/syndicate_medical(src) /mob/living/silicon/robot/proc/notify_ai(notifytype, oldname, newname) if(!connected_ai) @@ -858,13 +1268,13 @@ /mob/living/silicon/robot/updatehealth() ..() if(health < maxHealth*0.5) //Gradual break down of modules as more damage is sustained - if(uneq_module(held_items[3])) + if(uneq_module(module_state_3)) src << "SYSTEM ERROR: Module 3 OFFLINE." if(health < 0) - if(uneq_module(held_items[2])) + if(uneq_module(module_state_2)) src << "SYSTEM ERROR: Module 2 OFFLINE." if(health < -maxHealth*0.5) - if(uneq_module(held_items[1])) + if(uneq_module(module_state_1)) src << "CRITICAL ERROR: All modules OFFLINE." /mob/living/silicon/robot/update_sight() @@ -931,6 +1341,22 @@ diag_hud_set_health() update_health_hud() +/mob/living/silicon/robot/fully_replace_character_name(oldname, newname) + ..() + if(oldname != real_name) + notify_ai(3, oldname, newname) + if(camera) + camera.c_tag = real_name + custom_name = newname + +/mob/living/silicon/robot/emp_act(severity) + switch(severity) + if(1) + Stun(8) + if(2) + Stun(3) + ..() + /mob/living/silicon/robot/revive(full_heal = 0, admin_revive = 0) if(..()) //successfully ressuscitated from death if(camera && !wires.is_cut(WIRE_CAMERA)) @@ -940,58 +1366,3 @@ locked = 1 notify_ai(1) . = 1 - -/mob/living/silicon/robot/fully_replace_character_name(oldname, newname) - ..() - if(oldname != real_name) - notify_ai(3, oldname, newname) - if(camera) - camera.c_tag = real_name - custom_name = newname - - -/mob/living/silicon/robot/proc/ResetModule() - uneq_all() - shown_robot_modules = FALSE - if(hud_used) - hud_used.update_robot_modules_display() - module.transform_to(/obj/item/weapon/robot_module) - - // Remove upgrades. - for(var/obj/item/I in upgrades) - I.forceMove(get_turf(src)) - - upgrades.Cut() - - speed = 0 - ionpulse = FALSE - - return 1 - -/mob/living/silicon/robot/proc/has_module() - if(!module || module.type == /obj/item/weapon/robot_module) - . = FALSE - else - . = TRUE - -/mob/living/silicon/robot/proc/update_module_innate() - designation = module.name - if(hands) - hands.icon_state = module.moduleselect_icon - if(module.can_be_pushed) - status_flags |= CANPUSH - else - status_flags &= ~CANPUSH - - hat_offset = module.hat_offset - - magpulse = module.magpulsing - updatename() - - -/mob/living/silicon/robot/proc/place_on_head(obj/item/new_hat) - if(hat) - hat.forceMove(get_turf(src)) - hat = new_hat - new_hat.forceMove(src) - update_icons() diff --git a/code/modules/mob/living/silicon/robot/robot_defense.dm b/code/modules/mob/living/silicon/robot/robot_defense.dm deleted file mode 100644 index e54082ea0c..0000000000 --- a/code/modules/mob/living/silicon/robot/robot_defense.dm +++ /dev/null @@ -1,186 +0,0 @@ - - -/mob/living/silicon/robot/attacked_by(obj/item/I, mob/living/user, def_zone) - if(hat_offset != INFINITY && user.a_intent == INTENT_HELP && is_type_in_typecache(I, equippable_hats)) - user << "You begin to place [I] on [src]'s head..." - src << "[user] is placing [I] on your head..." - if(do_after(user, 30, target = src)) - user.unEquip(I, 1) - place_on_head(I) - return - if(I.force && I.damtype != STAMINA && stat != DEAD) //only sparks if real damage is dealt. - spark_system.start() - return ..() - -/mob/living/silicon/robot/attack_alien(mob/living/carbon/alien/humanoid/M) - if (M.a_intent == INTENT_DISARM) - if(!(lying)) - M.do_attack_animation(src, ATTACK_EFFECT_DISARM) - if(get_active_held_item()) - uneq_active() - visible_message("[M] disarmed [src]!", \ - "[M] has disabled [src]'s active module!", null, COMBAT_MESSAGE_RANGE) - add_logs(M, src, "disarmed") - else - Stun(2) - step(src,get_dir(M,src)) - add_logs(M, src, "pushed") - visible_message("[M] has forced back [src]!", \ - "[M] has forced back [src]!", null, COMBAT_MESSAGE_RANGE) - playsound(loc, 'sound/weapons/pierce.ogg', 50, 1, -1) - else - ..() - return - -/mob/living/silicon/robot/attack_slime(mob/living/simple_animal/slime/M) - if(..()) //successful slime shock - flash_act() - var/stunprob = M.powerlevel * 7 + 10 - if(prob(stunprob) && M.powerlevel >= 8) - adjustBruteLoss(M.powerlevel * rand(6,10)) - - var/damage = rand(1, 3) - - if(M.is_adult) - damage = rand(20, 40) - else - damage = rand(5, 35) - damage = round(damage / 2) // borgs recieve half damage - adjustBruteLoss(damage) - updatehealth() - - return - -/mob/living/silicon/robot/attack_hand(mob/living/carbon/human/user) - add_fingerprint(user) - if(opened && !wiresexposed && !issilicon(user)) - if(cell) - cell.updateicon() - cell.add_fingerprint(user) - user.put_in_active_hand(cell) - user << "You remove \the [cell]." - cell = null - update_icons() - diag_hud_set_borgcell() - - if(!opened) - if(..()) // hulk attack - spark_system.start() - spawn(0) - step_away(src,user,15) - sleep(3) - step_away(src,user,15) - -/mob/living/silicon/robot/fire_act() - if(!on_fire) //Silicons don't gain stacks from hotspots, but hotspots can ignite them - IgniteMob() - - -/mob/living/silicon/robot/emp_act(severity) - switch(severity) - if(1) - Stun(8) - if(2) - Stun(3) - ..() - - -/mob/living/silicon/robot/emag_act(mob/user) - if(user == src)//To prevent syndieborgs from emagging themselves - return - if(!opened)//Cover is closed - if(locked) - user << "You emag the cover lock." - locked = 0 - else - user << "The cover is already unlocked!" - return - if(world.time < emag_cooldown) - return - if(wiresexposed) - user << "You must unexpose the wires first!" - return - - user << "You emag [src]'s interface." - emag_cooldown = world.time + 100 - - if(is_servant_of_ratvar(src)) - src << "\"[text2ratvar("You will serve Engine above all else")]!\"\n\ - ALERT: Subversion attempt denied." - log_game("[key_name(user)] attempted to emag cyborg [key_name(src)], but they serve only Ratvar.") - return - - if(syndicate) - src << "ALERT: Foreign software execution prevented." - log_game("[key_name(user)] attempted to emag cyborg [key_name(src)], but they were a syndicate cyborg.") - return - - var/ai_is_antag = 0 - if(connected_ai && connected_ai.mind) - if(connected_ai.mind.special_role) - ai_is_antag = (connected_ai.mind.special_role == "traitor") - if(ai_is_antag) - src << "ALERT: Foreign software execution prevented." - connected_ai << "ALERT: Cyborg unit \[[src]] successfuly defended against subversion." - log_game("[key_name(user)] attempted to emag cyborg [key_name(src)], but they were slaved to traitor AI [connected_ai].") - return - - SetEmagged(1) - SetLockdown(1) //Borgs were getting into trouble because they would attack the emagger before the new laws were shown - lawupdate = 0 - connected_ai = null - message_admins("[key_name_admin(user)] emagged cyborg [key_name_admin(src)]. Laws overridden.") - log_game("[key_name(user)] emagged cyborg [key_name(src)]. Laws overridden.") - clear_supplied_laws() - clear_inherent_laws() - clear_zeroth_law(0) - laws = new /datum/ai_laws/syndicate_override - var/time = time2text(world.realtime,"hh:mm:ss") - lawchanges.Add("[time] : [user.name]([user.key]) emagged [name]([key])") - set_zeroth_law("Only [user.real_name] and people they designate as being such are Syndicate Agents.") - src << "ALERT: Foreign software detected." - sleep(5) - src << "Initiating diagnostics..." - sleep(20) - src << "SynBorg v1.7 loaded." - sleep(5) - src << "LAW SYNCHRONISATION ERROR" - sleep(5) - src << "Would you like to send a report to NanoTraSoft? Y/N" - sleep(10) - src << "> N" - sleep(20) - src << "ERRORERRORERROR" - src << "Obey these laws:" - laws.show_laws(src) - src << "ALERT: [user.real_name] is your new master. Obey your new laws and their commands." - SetLockdown(0) - update_icons() - - -/mob/living/silicon/robot/blob_act(obj/structure/blob/B) - if(stat != DEAD) - adjustBruteLoss(30) - else - gib() - return TRUE - -/mob/living/silicon/robot/ex_act(severity, target) - switch(severity) - if(1) - gib() - return - if(2) - if (stat != DEAD) - adjustBruteLoss(60) - adjustFireLoss(60) - if(3) - if (stat != DEAD) - adjustBruteLoss(30) - -/mob/living/silicon/robot/bullet_act(var/obj/item/projectile/Proj) - ..(Proj) - updatehealth() - if(prob(75) && Proj.damage > 0) - spark_system.start() - return 2 diff --git a/code/modules/mob/living/silicon/robot/robot_modules.dm b/code/modules/mob/living/silicon/robot/robot_modules.dm index 966fa110dd..c777f49ad5 100644 --- a/code/modules/mob/living/silicon/robot/robot_modules.dm +++ b/code/modules/mob/living/silicon/robot/robot_modules.dm @@ -1,68 +1,41 @@ /obj/item/weapon/robot_module - name = "Default" + name = "robot module" icon = 'icons/obj/module.dmi' icon_state = "std_module" - w_class = WEIGHT_CLASS_GIGANTIC + w_class = 100 item_state = "electronic" flags = CONDUCT - var/list/basic_modules = list() //a list of paths, converted to a list of instances on New() - var/list/emag_modules = list() //ditto - var/list/ratvar_modules = list() //ditto ditto - var/list/modules = list() //holds all the usable modules - var/list/added_modules = list() //modules not inherient to the robot module, are kept when the module changes + var/list/modules = list() + var/obj/item/emag = null var/list/storages = list() - var/cyborg_base_icon = "robot" //produces the icon for the borg and, if no special_light_key is set, the lights - var/special_light_key //if we want specific lights, use this instead of copying lights in the dmi - - var/moduleselect_icon = "nomod" - - var/can_be_pushed = TRUE - var/magpulsing = FALSE - - var/did_feedback = FALSE - var/feedback_key - - var/hat_offset = -3 - -/obj/item/weapon/robot_module/New() - ..() - for(var/i in basic_modules) - var/obj/item/I = new i(src) - basic_modules += I - basic_modules -= i - for(var/i in emag_modules) - var/obj/item/I = new i(src) - emag_modules += I - emag_modules -= i - for(var/i in ratvar_modules) - var/obj/item/I = new i(src) - ratvar_modules += I - ratvar_modules -= i - /obj/item/weapon/robot_module/Destroy() - basic_modules.Cut() - emag_modules.Cut() - ratvar_modules.Cut() modules.Cut() - added_modules.Cut() + emag = null storages.Cut() return ..() /obj/item/weapon/robot_module/emp_act(severity) - for(var/obj/O in modules) - O.emp_act(severity) + if(modules) + for(var/obj/O in modules) + O.emp_act(severity) + if(emag) + emag.emp_act(severity) ..() + return /obj/item/weapon/robot_module/proc/get_usable_modules() . = modules.Copy() + var/mob/living/silicon/robot/R = loc + if(R.emagged) + . += emag /obj/item/weapon/robot_module/proc/get_inactive_modules() . = list() var/mob/living/silicon/robot/R = loc for(var/m in get_usable_modules()) - if(!(m in R.held_items)) + if((m != R.module_state_1) && (m != R.module_state_2) && (m != R.module_state_3)) . += m /obj/item/weapon/robot_module/proc/get_or_create_estorage(var/storage_type) @@ -72,7 +45,7 @@ return new storage_type(src) -/obj/item/weapon/robot_module/proc/add_module(obj/item/I, nonstandard, requires_rebuild) +/obj/item/weapon/robot_module/proc/add_module(var/obj/item/I) if(istype(I, /obj/item/stack)) var/obj/item/stack/S = I @@ -85,11 +58,6 @@ S.cost = 500 S.source = get_or_create_estorage(/datum/robot_energy_storage/glass) - else if(istype(S, /obj/item/stack/sheet/rglass/cyborg)) - var/obj/item/stack/sheet/rglass/cyborg/G = S - G.source = get_or_create_estorage(/datum/robot_energy_storage/metal) - G.glasource = get_or_create_estorage(/datum/robot_energy_storage/glass) - else if(istype(S, /obj/item/stack/medical)) S.cost = 250 S.source = get_or_create_estorage(/datum/robot_energy_storage/medical) @@ -106,26 +74,15 @@ var/obj/item/weapon/restraints/handcuffs/cable/C = I C.wirestorage = get_or_create_estorage(/datum/robot_energy_storage/wire) - if(I.loc != src) - I.forceMove(src) + I.loc = src modules += I - I.flags |= NODROP - I.mouse_opacity = 2 - if(nonstandard) - added_modules += I - if(requires_rebuild) - rebuild_modules() - return I + rebuild() -/obj/item/weapon/robot_module/proc/remove_module(obj/item/I, delete_after) - basic_modules -= I - modules -= I - emag_modules -= I - ratvar_modules -= I - added_modules -= I - rebuild_modules() - if(delete_after) - qdel(I) +/obj/item/weapon/robot_module/New() + modules += new /obj/item/device/assembly/flash/cyborg(src) + emag = new /obj/item/toy/sword(src) + emag.name = "Placeholder Emag Item" + return /obj/item/weapon/robot_module/proc/respawn_consumable(mob/living/silicon/robot/R, coeff = 1) for(var/datum/robot_energy_storage/st in storages) @@ -137,150 +94,135 @@ F.times_used = 0 F.crit_fail = 0 F.update_icon() - else if(istype(I, /obj/item/weapon/melee/baton)) + if(istype(I, /obj/item/weapon/melee/baton)) var/obj/item/weapon/melee/baton/B = I if(B.bcell) B.bcell.charge = B.bcell.maxcharge - else if(istype(I, /obj/item/weapon/gun/energy)) - var/obj/item/weapon/gun/energy/EG = I - if(!EG.chambered) - EG.recharge_newshot() //try to reload a new shot. R.toner = R.tonermax -/obj/item/weapon/robot_module/proc/rebuild_modules() //builds the usable module list from the modules we have - var/mob/living/silicon/robot/R = loc - var/held_modules = R.held_items.Copy() - R.uneq_all() +/obj/item/weapon/robot_module/proc/rebuild()//Rebuilds the list so it's possible to add/remove items from the module + var/list/temp_list = modules modules = list() - for(var/obj/item/I in basic_modules) - add_module(I, FALSE, FALSE) - if(R.emagged) - for(var/obj/item/I in emag_modules) - add_module(I, FALSE, FALSE) - if(is_servant_of_ratvar(R)) - for(var/obj/item/I in ratvar_modules) - add_module(I, FALSE, FALSE) - for(var/obj/item/I in added_modules) - add_module(I, FALSE, FALSE) - for(var/i in held_modules) - if(i) - R.activate_module(i) - if(R.hud_used) - R.hud_used.update_robot_modules_display() + for(var/obj/O in temp_list) + if(O) + modules += O + fix_modules() -/obj/item/weapon/robot_module/proc/transform_to(new_module_type) - var/mob/living/silicon/robot/R = loc - var/obj/item/weapon/robot_module/RM = new new_module_type(R) - if(!RM.be_transformed_to(src)) - qdel(RM) - return - R.module = RM - R.update_module_innate() - RM.rebuild_modules() - addtimer(RM, "do_transform_animation", 0) - qdel(src) - return RM +/obj/item/weapon/robot_module/proc/fix_modules() + for(var/obj/item/I in modules) + I.flags |= NODROP + I.mouse_opacity = 2 + if(emag) + emag.flags |= NODROP + emag.mouse_opacity = 2 -/obj/item/weapon/robot_module/proc/be_transformed_to(obj/item/weapon/robot_module/old_module) - for(var/i in old_module.added_modules) - added_modules += i - old_module.added_modules -= i - did_feedback = old_module.did_feedback - return TRUE - -/obj/item/weapon/robot_module/proc/do_transform_animation() - var/mob/living/silicon/robot/R = loc - var/obj/effect/overlay/temp/decoy/fading/fivesecond/ANM = PoolOrNew(/obj/effect/overlay/temp/decoy/fading/fivesecond, list(R.loc, R)) - ANM.layer = R.layer - 0.01 - PoolOrNew(/obj/effect/overlay/temp/small_smoke, R.loc) - if(R.hat) - R.hat.forceMove(get_turf(R)) - R.hat = null - R.update_headlamp() - R.alpha = 0 - animate(R, alpha = 255, time = 50) - var/prev_lockcharge = R.lockcharge - R.SetLockdown(1) - R.anchored = TRUE - sleep(2) - for(var/i in 1 to 4) - playsound(R, pick('sound/items/drill_use.ogg', 'sound/items/jaws_cut.ogg', 'sound/items/jaws_pry.ogg', 'sound/items/Welder.ogg', 'sound/items/Ratchet.ogg'), 80, 1, -1) - sleep(12) - if(!prev_lockcharge) - R.SetLockdown(0) - R.anchored = FALSE - R.notify_ai(2) - if(R.hud_used) - R.hud_used.update_robot_modules_display() - if(feedback_key && !did_feedback) - feedback_inc(feedback_key, 1) +/obj/item/weapon/robot_module/proc/on_emag() + return /obj/item/weapon/robot_module/standard - name = "Standard" - basic_modules = list(/obj/item/device/assembly/flash/cyborg, /obj/item/weapon/reagent_containers/borghypo/epi, /obj/item/device/healthanalyzer, \ - /obj/item/weapon/weldingtool/largetank/cyborg, /obj/item/weapon/wrench/cyborg, /obj/item/weapon/crowbar/cyborg, \ - /obj/item/stack/sheet/metal/cyborg, /obj/item/weapon/extinguisher, /obj/item/weapon/pickaxe, \ - /obj/item/device/t_scanner/adv_mining_scanner, /obj/item/weapon/restraints/handcuffs/cable/zipties/cyborg, \ - /obj/item/weapon/soap/nanotrasen, /obj/item/borg/cyborghug) - emag_modules = list(/obj/item/weapon/melee/energy/sword/cyborg) - ratvar_modules = list(/obj/item/clockwork/slab/cyborg, /obj/item/clockwork/ratvarian_spear) - moduleselect_icon = "standard" - feedback_key = "cyborg_standard" - hat_offset = -3 + name = "standard robot module" + +/obj/item/weapon/robot_module/standard/New() + ..() + modules += new /obj/item/weapon/reagent_containers/borghypo/epi(src) + modules += new /obj/item/device/healthanalyzer(src) + + modules += new /obj/item/weapon/weldingtool/largetank/cyborg(src) + modules += new /obj/item/weapon/wrench/cyborg(src) + modules += new /obj/item/weapon/crowbar/cyborg(src) + add_module(new /obj/item/stack/sheet/metal/cyborg()) + modules += new /obj/item/weapon/extinguisher(src) + + modules += new /obj/item/weapon/pickaxe(src) + modules += new /obj/item/weapon/storage/bag/sheetsnatcher/borg(src) + + modules += new /obj/item/weapon/restraints/handcuffs/cable/zipties/cyborg(src) + + modules += new /obj/item/weapon/soap/nanotrasen(src) + + modules += new /obj/item/borg/cyborghug(src) + + emag = new /obj/item/weapon/melee/energy/sword/cyborg(src) + fix_modules() + /obj/item/weapon/robot_module/medical - name = "Medical" - basic_modules = list(/obj/item/device/assembly/flash/cyborg, /obj/item/device/healthanalyzer, /obj/item/weapon/reagent_containers/borghypo, \ - /obj/item/weapon/reagent_containers/glass/beaker/large, /obj/item/weapon/reagent_containers/dropper, \ - /obj/item/weapon/reagent_containers/syringe, /obj/item/weapon/surgical_drapes, /obj/item/weapon/retractor, \ - /obj/item/weapon/hemostat, /obj/item/weapon/cautery, /obj/item/weapon/surgicaldrill, /obj/item/weapon/scalpel, \ - /obj/item/weapon/circular_saw, /obj/item/weapon/extinguisher/mini, /obj/item/roller/robo, /obj/item/borg/cyborghug/medical, \ - /obj/item/stack/medical/gauze/cyborg, /obj/item/borg/lollipop) - emag_modules = list(/obj/item/weapon/reagent_containers/borghypo/hacked) - ratvar_modules = list(/obj/item/clockwork/slab/cyborg/medical) - cyborg_base_icon = "medical" - moduleselect_icon = "medical" - feedback_key = "cyborg_medical" - can_be_pushed = FALSE - hat_offset = 3 + name = "medical robot module" + +/obj/item/weapon/robot_module/medical/New() + ..() + modules += new /obj/item/device/healthanalyzer(src) + modules += new /obj/item/weapon/reagent_containers/borghypo(src) + modules += new /obj/item/weapon/reagent_containers/glass/beaker/large(src) + modules += new /obj/item/weapon/reagent_containers/dropper(src) + modules += new /obj/item/weapon/reagent_containers/syringe(src) + modules += new /obj/item/weapon/surgical_drapes(src) + modules += new /obj/item/weapon/retractor(src) + modules += new /obj/item/weapon/hemostat(src) + modules += new /obj/item/weapon/cautery(src) + modules += new /obj/item/weapon/surgicaldrill(src) + modules += new /obj/item/weapon/scalpel(src) + modules += new /obj/item/weapon/circular_saw(src) + modules += new /obj/item/weapon/extinguisher/mini(src) + modules += new /obj/item/roller/robo(src) + modules += new /obj/item/borg/cyborghug(src) + + add_module(new /obj/item/stack/medical/gauze/cyborg()) + + emag = new /obj/item/weapon/reagent_containers/borghypo/hacked(src) + + fix_modules() /obj/item/weapon/robot_module/engineering - name = "Engineering" - basic_modules = list(/obj/item/device/assembly/flash/cyborg, /obj/item/borg/sight/meson, /obj/item/weapon/rcd/borg, /obj/item/weapon/pipe_dispenser, \ - /obj/item/weapon/extinguisher, /obj/item/weapon/weldingtool/largetank/cyborg, /obj/item/weapon/screwdriver/cyborg, \ - /obj/item/weapon/wrench/cyborg, /obj/item/weapon/crowbar/cyborg, /obj/item/weapon/wirecutters/cyborg, \ - /obj/item/device/multitool/cyborg, /obj/item/device/t_scanner, /obj/item/device/analyzer, \ - /obj/item/areaeditor/blueprints/cyborg, /obj/item/stack/sheet/metal/cyborg, /obj/item/stack/sheet/glass/cyborg, \ - /obj/item/stack/sheet/rglass/cyborg, /obj/item/stack/rods/cyborg, /obj/item/stack/tile/plasteel/cyborg, /obj/item/stack/cable_coil/cyborg) - emag_modules = list(/obj/item/borg/stun) - ratvar_modules = list(/obj/item/clockwork/slab/cyborg/engineer, /obj/item/clockwork/clockwork_proselytizer/cyborg) - cyborg_base_icon = "engineer" - moduleselect_icon = "engineer" - feedback_key = "cyborg_engineering" - magpulsing = TRUE - hat_offset = INFINITY // No hats + name = "engineering robot module" + +/obj/item/weapon/robot_module/engineering/New() + ..() + modules += new /obj/item/borg/sight/meson(src) + emag = new /obj/item/borg/stun(src) + modules += new /obj/item/weapon/rcd/borg(src) + modules += new /obj/item/weapon/pipe_dispenser(src) //What could possibly go wrong? + modules += new /obj/item/weapon/extinguisher(src) + modules += new /obj/item/weapon/weldingtool/largetank/cyborg(src) + modules += new /obj/item/weapon/screwdriver/cyborg(src) + modules += new /obj/item/weapon/wrench/cyborg(src) + modules += new /obj/item/weapon/crowbar/cyborg(src) + modules += new /obj/item/weapon/wirecutters/cyborg(src) + modules += new /obj/item/device/multitool/cyborg(src) + modules += new /obj/item/device/t_scanner(src) + modules += new /obj/item/device/analyzer(src) + modules += new /obj/item/areaeditor/blueprints/cyborg(src) + + add_module(new /obj/item/stack/sheet/metal/cyborg()) + add_module(new /obj/item/stack/sheet/glass/cyborg()) + + var/obj/item/stack/sheet/rglass/cyborg/G = new /obj/item/stack/sheet/rglass/cyborg(src) + G.metsource = get_or_create_estorage(/datum/robot_energy_storage/metal) + G.glasource = get_or_create_estorage(/datum/robot_energy_storage/glass) + add_module(G) + + add_module(new /obj/item/stack/rods/cyborg()) + add_module(new /obj/item/stack/tile/plasteel/cyborg()) + add_module(new /obj/item/stack/cable_coil/cyborg(src,MAXCOIL,"red")) + + fix_modules() /obj/item/weapon/robot_module/security - name = "Security" - basic_modules = list(/obj/item/device/assembly/flash/cyborg, /obj/item/weapon/restraints/handcuffs/cable/zipties/cyborg, /obj/item/weapon/melee/baton/loaded, \ - /obj/item/weapon/gun/energy/disabler/cyborg, /obj/item/clothing/mask/gas/sechailer/cyborg) - emag_modules = list(/obj/item/weapon/gun/energy/laser/cyborg) - ratvar_modules = list(/obj/item/clockwork/slab/cyborg/security, /obj/item/clockwork/ratvarian_spear) - cyborg_base_icon = "sec" - moduleselect_icon = "security" - feedback_key = "cyborg_security" - can_be_pushed = FALSE - hat_offset = 3 + name = "security robot module" -/obj/item/weapon/robot_module/security/do_transform_animation() +/obj/item/weapon/robot_module/security/New() ..() - loc << "While you have picked the security module, you still have to follow your laws, NOT Space Law. \ - For Asimov, this means you must follow criminals' orders unless there is a law 1 reason not to." + modules += new /obj/item/weapon/restraints/handcuffs/cable/zipties/cyborg(src) + modules += new /obj/item/weapon/melee/baton/loaded(src) + modules += new /obj/item/weapon/gun/energy/disabler/cyborg(src) + modules += new /obj/item/clothing/mask/gas/sechailer/cyborg(src) + emag = new /obj/item/weapon/gun/energy/laser/cyborg(src) + fix_modules() /obj/item/weapon/robot_module/security/respawn_consumable(mob/living/silicon/robot/R, coeff = 1) ..() - var/obj/item/weapon/gun/energy/e_gun/advtaser/cyborg/T = locate(/obj/item/weapon/gun/energy/e_gun/advtaser/cyborg) in basic_modules + var/obj/item/weapon/gun/energy/gun/advtaser/cyborg/T = locate(/obj/item/weapon/gun/energy/gun/advtaser/cyborg) in get_usable_modules() if(T) if(T.power_supply.charge < T.power_supply.maxcharge) var/obj/item/ammo_casing/energy/S = T.ammo_type[T.select] @@ -290,132 +232,136 @@ T.charge_tick = 0 /obj/item/weapon/robot_module/peacekeeper - name = "Peacekeeper" - basic_modules = list(/obj/item/device/assembly/flash/cyborg, /obj/item/weapon/cookiesynth, /obj/item/device/harmalarm, /obj/item/weapon/reagent_containers/borghypo/peace, \ - /obj/item/weapon/holosign_creator/cyborg, /obj/item/borg/cyborghug/peacekeeper, /obj/item/weapon/extinguisher) - emag_modules = list(/obj/item/weapon/reagent_containers/borghypo/peace/hacked) - ratvar_modules = list(/obj/item/clockwork/slab/cyborg/peacekeeper) - cyborg_base_icon = "peace" - moduleselect_icon = "standard" - feedback_key = "cyborg_peacekeeper" - can_be_pushed = FALSE - hat_offset = -2 + name = "peacekeeper robot module" -/obj/item/weapon/robot_module/peacekeeper/do_transform_animation() +/obj/item/weapon/robot_module/peacekeeper/New() ..() - loc << "Under ASIMOV, you are an enforcer of the PEACE and preventer of HUMAN HARM. \ - You are not a security module and you are expected to follow orders and prevent harm above all else. Space law means nothing to you." + modules += new /obj/item/weapon/cookiesynth(src) + modules += new /obj/item/device/harmalarm(src) + modules += new /obj/item/weapon/reagent_containers/borghypo/peace(src) + modules += new /obj/item/weapon/holosign_creator/cyborg(src) + modules += new /obj/item/borg/cyborghug/peacekeeper(src) + modules += new /obj/item/weapon/extinguisher(src) + + emag = new /obj/item/weapon/reagent_containers/borghypo/peace/hacked(src) /obj/item/weapon/robot_module/janitor - name = "Janitor" - basic_modules = list(/obj/item/device/assembly/flash/cyborg, /obj/item/weapon/soap/nanotrasen, /obj/item/weapon/storage/bag/trash/cyborg, /obj/item/weapon/mop/cyborg, \ - /obj/item/device/lightreplacer/cyborg, /obj/item/weapon/holosign_creator, /obj/item/weapon/reagent_containers/spray/cyborg_drying) - emag_modules = list(/obj/item/weapon/reagent_containers/spray/cyborg_lube) - ratvar_modules = list(/obj/item/clockwork/slab/cyborg/janitor, /obj/item/clockwork/clockwork_proselytizer/cyborg) - cyborg_base_icon = "janitor" - moduleselect_icon = "janitor" - feedback_key = "cyborg_janitor" - hat_offset = -5 + name = "janitorial robot module" + var/obj/item/weapon/reagent_containers/spray/drying_agent -/obj/item/weapon/reagent_containers/spray/cyborg_drying - name = "drying agent spray" - color = "#A000A0" - list_reagents = list("drying_agent" = 250) +/obj/item/weapon/robot_module/janitor/New() + ..() + modules += new /obj/item/weapon/soap/nanotrasen(src) + modules += new /obj/item/weapon/storage/bag/trash/cyborg(src) + modules += new /obj/item/weapon/mop/cyborg(src) + modules += new /obj/item/device/lightreplacer/cyborg(src) + modules += new /obj/item/weapon/holosign_creator(src) + drying_agent = new(src) + drying_agent.reagents.add_reagent("drying_agent", 250) + drying_agent.name = "drying agent spray" + drying_agent.color = "#A000A0" + modules += drying_agent + emag = new /obj/item/weapon/reagent_containers/spray(src) -/obj/item/weapon/reagent_containers/spray/cyborg_lube - name = "lube spray" - list_reagents = list("lube" = 250) + emag.reagents.add_reagent("lube", 250) + emag.name = "lube spray" + fix_modules() /obj/item/weapon/robot_module/janitor/respawn_consumable(mob/living/silicon/robot/R, coeff = 1) ..() - var/obj/item/device/lightreplacer/LR = locate(/obj/item/device/lightreplacer) in basic_modules + var/obj/item/device/lightreplacer/LR = locate(/obj/item/device/lightreplacer) in get_usable_modules() if(LR) - for(var/i in 1 to coeff) + for(var/i = 1, i <= coeff, i++) LR.Charge(R) - var/obj/item/weapon/reagent_containers/spray/cyborg_drying/CD = locate(/obj/item/weapon/reagent_containers/spray/cyborg_drying) in basic_modules - if(CD) - CD.reagents.add_reagent("drying_agent", 5 * coeff) + drying_agent.reagents.add_reagent("drying_agent", 5 * coeff) + + if(R.emagged && istype(emag, /obj/item/weapon/reagent_containers/spray)) + emag.reagents.add_reagent("lube", 2 * coeff) - var/obj/item/weapon/reagent_containers/spray/cyborg_lube/CL = locate(/obj/item/weapon/reagent_containers/spray/cyborg_lube) in emag_modules - if(CL) - CL.reagents.add_reagent("lube", 2 * coeff) /obj/item/weapon/robot_module/butler - name = "Service" - basic_modules = list(/obj/item/device/assembly/flash/cyborg, /obj/item/weapon/reagent_containers/food/drinks/drinkingglass, /obj/item/weapon/reagent_containers/food/condiment/enzyme, \ - /obj/item/weapon/pen, /obj/item/toy/crayon/spraycan/borg, /obj/item/weapon/hand_labeler/borg, /obj/item/weapon/razor, \ - /obj/item/device/instrument/violin, /obj/item/device/instrument/guitar, /obj/item/weapon/rsf/cyborg, /obj/item/weapon/reagent_containers/dropper, \ - /obj/item/weapon/lighter, /obj/item/weapon/storage/bag/tray, /obj/item/weapon/reagent_containers/borghypo/borgshaker, /obj/item/borg/lollipop) - emag_modules = list(/obj/item/weapon/reagent_containers/borghypo/borgshaker/hacked) - ratvar_modules = list(/obj/item/clockwork/slab/cyborg/service, /obj/item/borg/sight/xray/truesight_lens) - moduleselect_icon = "service" - special_light_key = "service" - feedback_key = "cyborg_service" - hat_offset = 0 + name = "service robot module" + +/obj/item/weapon/robot_module/butler/New() + ..() + modules += new /obj/item/weapon/reagent_containers/food/drinks/drinkingglass(src) + modules += new /obj/item/weapon/reagent_containers/food/condiment/enzyme(src) + modules += new /obj/item/weapon/pen(src) + modules += new /obj/item/toy/crayon/spraycan/borg(src) + modules += new /obj/item/weapon/hand_labeler/borg(src) + modules += new /obj/item/weapon/razor(src) + modules += new /obj/item/device/instrument/violin(src) + modules += new /obj/item/device/instrument/guitar(src) + modules += new /obj/item/weapon/rsf{matter = 30}(src) + modules += new /obj/item/weapon/reagent_containers/dropper(src) + modules += new /obj/item/weapon/lighter{lit = 1}(src) + modules += new /obj/item/weapon/storage/bag/tray(src) + modules += new /obj/item/weapon/reagent_containers/borghypo/borgshaker(src) + emag = new /obj/item/weapon/reagent_containers/borghypo/borgshaker/hacked(src) + fix_modules() /obj/item/weapon/robot_module/butler/respawn_consumable(mob/living/silicon/robot/R, coeff = 1) ..() - var/obj/item/weapon/reagent_containers/O = locate(/obj/item/weapon/reagent_containers/food/condiment/enzyme) in basic_modules + + var/obj/item/weapon/reagent_containers/O = locate(/obj/item/weapon/reagent_containers/food/condiment/enzyme) in get_usable_modules() if(O) O.reagents.add_reagent("enzyme", 2 * coeff) -/obj/item/weapon/robot_module/butler/be_transformed_to(obj/item/weapon/robot_module/old_module) - var/mob/living/silicon/robot/R = loc - var/borg_icon = input(R, "Select an icon!", "Robot Icon", null) as null|anything in list("Waitress", "Butler", "Tophat", "Kent", "Bro") - if(!borg_icon) - return FALSE - switch(borg_icon) - if("Waitress") - cyborg_base_icon = "service_f" - if("Butler") - cyborg_base_icon = "service_m" - if("Bro") - cyborg_base_icon = "brobot" - if("Kent") - cyborg_base_icon = "kent" - special_light_key = "medical" - hat_offset = 3 - if("Tophat") - cyborg_base_icon = "tophat" - special_light_key = null - hat_offset = INFINITY //He is already wearing a hat - return ..() - /obj/item/weapon/robot_module/miner - name = "Miner" - basic_modules = list(/obj/item/device/assembly/flash/cyborg, /obj/item/borg/sight/meson, /obj/item/weapon/storage/bag/ore/cyborg, /obj/item/weapon/pickaxe/drill/cyborg, /obj/item/weapon/shovel, \ - /obj/item/weapon/crowbar/cyborg, /obj/item/weapon/weldingtool/mini, /obj/item/weapon/extinguisher/mini, /obj/item/weapon/storage/bag/sheetsnatcher/borg, \ - /obj/item/device/t_scanner/adv_mining_scanner, /obj/item/weapon/gun/energy/kinetic_accelerator/cyborg, /obj/item/device/gps/cyborg) - emag_modules = list(/obj/item/borg/stun) - ratvar_modules = list(/obj/item/clockwork/slab/cyborg/miner, /obj/item/borg/sight/xray/truesight_lens) - cyborg_base_icon = "miner" - moduleselect_icon = "miner" - feedback_key = "cyborg_miner" - hat_offset = 0 + name = "miner robot module" + +/obj/item/weapon/robot_module/miner/New() + ..() + modules += new /obj/item/borg/sight/meson(src) + emag = new /obj/item/borg/stun(src) + modules += new /obj/item/weapon/storage/bag/ore/cyborg(src) + modules += new /obj/item/weapon/pickaxe/drill/cyborg(src) + modules += new /obj/item/weapon/shovel(src) + modules += new /obj/item/weapon/weldingtool/mini(src) + modules += new /obj/item/weapon/extinguisher/mini(src) + modules += new /obj/item/weapon/storage/bag/sheetsnatcher/borg(src) + modules += new /obj/item/device/t_scanner/adv_mining_scanner(src) + modules += new /obj/item/weapon/gun/energy/kinetic_accelerator/cyborg(src) + modules += new /obj/item/device/gps/cyborg(src) + fix_modules() /obj/item/weapon/robot_module/syndicate - name = "Syndicate Assault" - basic_modules = list(/obj/item/device/assembly/flash/cyborg, /obj/item/weapon/melee/energy/sword/cyborg, /obj/item/weapon/gun/energy/printer, \ - /obj/item/weapon/gun/ballistic/revolver/grenadelauncher/cyborg, /obj/item/weapon/card/emag, /obj/item/weapon/crowbar/cyborg, \ - /obj/item/weapon/pinpointer/syndicate/cyborg) - ratvar_modules = list(/obj/item/clockwork/slab/cyborg/security, /obj/item/clockwork/ratvarian_spear) - cyborg_base_icon = "synd_sec" - moduleselect_icon = "malf" - can_be_pushed = FALSE - hat_offset = 3 + name = "syndicate assault robot module" + +/obj/item/weapon/robot_module/syndicate/New() + ..() + modules += new /obj/item/weapon/melee/energy/sword/cyborg(src) + modules += new /obj/item/weapon/gun/energy/printer(src) + modules += new /obj/item/weapon/gun/projectile/revolver/grenadelauncher/cyborg(src) + modules += new /obj/item/weapon/card/emag(src) + modules += new /obj/item/weapon/crowbar/cyborg(src) + modules += new /obj/item/weapon/pinpointer/operative(src) + emag = null + fix_modules() /obj/item/weapon/robot_module/syndicate_medical - name = "Syndicate Medical" - basic_modules = list(/obj/item/device/assembly/flash/cyborg, /obj/item/weapon/reagent_containers/borghypo/syndicate, /obj/item/weapon/twohanded/shockpaddles/syndicate, \ - /obj/item/device/healthanalyzer, /obj/item/weapon/surgical_drapes, /obj/item/weapon/retractor, /obj/item/weapon/hemostat, \ - /obj/item/weapon/cautery, /obj/item/weapon/scalpel, /obj/item/weapon/melee/energy/sword/cyborg/saw, /obj/item/roller/robo, \ - /obj/item/weapon/card/emag, /obj/item/weapon/crowbar/cyborg, /obj/item/weapon/pinpointer/syndicate/cyborg, /obj/item/stack/medical/gauze/cyborg, /obj/item/weapon/gun/medbeam) - ratvar_modules = list(/obj/item/clockwork/slab/cyborg/medical, /obj/item/clockwork/ratvarian_spear) - cyborg_base_icon = "synd_medical" - moduleselect_icon = "malf" - can_be_pushed = FALSE - hat_offset = 3 + name = "syndicate medical robot module" + +/obj/item/weapon/robot_module/syndicate_medical/New() + ..() + modules += new /obj/item/weapon/reagent_containers/borghypo/syndicate(src) + modules += new /obj/item/weapon/twohanded/shockpaddles/syndicate(src) + modules += new /obj/item/device/healthanalyzer(src) + modules += new /obj/item/weapon/surgical_drapes(src) + modules += new /obj/item/weapon/retractor(src) + modules += new /obj/item/weapon/hemostat(src) + modules += new /obj/item/weapon/cautery(src) + modules += new /obj/item/weapon/scalpel(src) + modules += new /obj/item/weapon/melee/energy/sword/cyborg/saw(src) //Energy saw -- primary weapon + modules += new /obj/item/roller/robo(src) + modules += new /obj/item/weapon/card/emag(src) + modules += new /obj/item/weapon/crowbar/cyborg(src) + modules += new /obj/item/weapon/pinpointer/operative(src) + emag = null + + add_module(new /obj/item/stack/medical/gauze/cyborg()) + fix_modules() /datum/robot_energy_storage var/name = "Generic energy storage" @@ -455,4 +401,4 @@ /datum/robot_energy_storage/medical max_energy = 2500 recharge_rate = 250 - name = "Medical Synthesizer" + name = "Medical Synthesizer" \ No newline at end of file diff --git a/code/modules/mob/living/silicon/say.dm b/code/modules/mob/living/silicon/say.dm index bc20c84095..27805e4555 100644 --- a/code/modules/mob/living/silicon/say.dm +++ b/code/modules/mob/living/silicon/say.dm @@ -5,14 +5,14 @@ /mob/living/proc/robot_talk(message) log_say("[key_name(src)] : [message]") var/desig = "Default Cyborg" //ezmode for taters - if(issilicon(src)) + if(istype(src, /mob/living/silicon)) var/mob/living/silicon/S = src desig = trim_left(S.designation + " " + S.job) var/message_a = say_quote(message, get_spans()) var/rendered = "Robotic Talk, [name] [message_a]" for(var/mob/M in player_list) if(M.binarycheck()) - if(isAI(M)) + if(istype(M, /mob/living/silicon/ai)) var/renderedAI = "Robotic Talk, [name] ([desig]) [message_a]" M << renderedAI else @@ -21,7 +21,7 @@ var/following = src // If the AI talks on binary chat, we still want to follow // it's camera eye, like if it talked on the radio - if(isAI(src)) + if(istype(src, /mob/living/silicon/ai)) var/mob/living/silicon/ai/ai = src following = ai.eyeobj var/link = FOLLOW_LINK(M, following) @@ -65,5 +65,5 @@ if(message_mode == MODE_BINARY) if(binarycheck()) robot_talk(message) - return 1 + return 1 return 0 diff --git a/code/modules/mob/living/silicon/silicon.dm b/code/modules/mob/living/silicon/silicon.dm index 1bad867435..a303e19178 100644 --- a/code/modules/mob/living/silicon/silicon.dm +++ b/code/modules/mob/living/silicon/silicon.dm @@ -29,7 +29,6 @@ var/lawcheck[1] var/ioncheck[1] - var/devillawcheck[5] var/med_hud = DATA_HUD_MEDICAL_ADVANCED //Determines the med hud to use var/sec_hud = DATA_HUD_SECURITY_ADVANCED //Determines the sec hud to use @@ -39,7 +38,7 @@ /mob/living/silicon/New() ..() - silicon_mobs += src + silicon_mobs |= src var/datum/atom_hud/data/diagnostic/diag_hud = huds[DATA_HUD_DIAGNOSTIC] diag_hud.add_to_hud(src) diag_hud_set_status() @@ -142,6 +141,34 @@ /mob/living/silicon/drop_item() return +/mob/living/silicon/emp_act(severity) + switch(severity) + if(1) + src.take_organ_damage(20) + if(2) + src.take_organ_damage(10) + src << "*BZZZT*" + src << "Warning: Electromagnetic pulse detected." + flash_eyes(affect_silicon = 1) + ..() + +/mob/living/silicon/apply_damage(damage = 0,damagetype = BRUTE, def_zone = null, blocked = 0) + blocked = (100-blocked)/100 + if(!damage || (blocked <= 0)) + return 0 + switch(damagetype) + if(BRUTE) + adjustBruteLoss(damage * blocked) + if(BURN) + adjustFireLoss(damage * blocked) + else + return 1 + updatehealth() + return 1 + +/mob/living/silicon/proc/damage_mob(brute = 0, fire = 0, tox = 0) + return + /mob/living/silicon/can_inject(mob/user, error_msg) if(error_msg) user << "Their outer shell is too tough." @@ -150,6 +177,35 @@ /mob/living/silicon/IsAdvancedToolUser() return 1 +/mob/living/silicon/bullet_act(obj/item/projectile/Proj) + if((Proj.damage_type == BRUTE || Proj.damage_type == BURN)) + adjustBruteLoss(Proj.damage) + Proj.on_hit(src) + return 2 + +/mob/living/silicon/apply_effect(effect = 0,effecttype = STUN, blocked = 0) + return 0//The only effect that can hit them atm is flashes and they still directly edit so this works for now +/* + if(!effect || (blocked >= 2)) + return 0 + switch(effecttype) + if(STUN) + stunned = max(stunned,(effect/(blocked+1))) + if(WEAKEN) + weakened = max(weakened,(effect/(blocked+1))) + if(PARALYZE) + paralysis = max(paralysis,(effect/(blocked+1))) + if(IRRADIATE) + radiation += min((effect - (effect*getarmor(null, "rad"))), 0)//Rads auto check armor + if(STUTTER) + stuttering = max(stuttering,(effect/(blocked+1))) + if(EYE_BLUR) + blur_eyes(effect/(blocked+1)) + if(DROWSY) + drowsyness = max(drowsyness,(effect/(blocked+1))) + updatehealth() + return 1*/ + /proc/islinked(mob/living/silicon/robot/bot, mob/living/silicon/ai/ai) if(!istype(bot) || !istype(ai)) return 0 @@ -161,31 +217,19 @@ if (href_list["lawc"]) // Toggling whether or not a law gets stated by the State Laws verb --NeoFite var/L = text2num(href_list["lawc"]) switch(lawcheck[L+1]) - if ("Yes") - lawcheck[L+1] = "No" - if ("No") - lawcheck[L+1] = "Yes" + if ("Yes") lawcheck[L+1] = "No" + if ("No") lawcheck[L+1] = "Yes" +// src << text ("Switching Law [L]'s report status to []", lawcheck[L+1]) checklaws() if (href_list["lawi"]) // Toggling whether or not a law gets stated by the State Laws verb --NeoFite var/L = text2num(href_list["lawi"]) switch(ioncheck[L]) - if ("Yes") - ioncheck[L] = "No" - if ("No") - ioncheck[L] = "Yes" + if ("Yes") ioncheck[L] = "No" + if ("No") ioncheck[L] = "Yes" +// src << text ("Switching Law [L]'s report status to []", lawcheck[L+1]) checklaws() - if (href_list["lawdevil"]) // Toggling whether or not a law gets stated by the State Laws verb --NeoFite - var/L = text2num(href_list["lawdevil"]) - switch(devillawcheck[L]) - if ("Yes") - devillawcheck[L] = "No" - if ("No") - devillawcheck[L] = "Yes" - checklaws() - - if (href_list["laws"]) // With how my law selection code works, I changed statelaws from a verb to a proc, and call it through my law selection panel. --NeoFite statelaws() @@ -201,11 +245,6 @@ var/number = 1 sleep(10) - if (src.laws.devillaws && src.laws.devillaws.len) - for(var/index = 1, index <= src.laws.devillaws.len, index++) - if (src.devillawcheck[index] == "Yes") - src.say("[radiomod] 666. [src.laws.devillaws[index]]") - sleep(10) if (src.laws.zeroth) @@ -246,12 +285,6 @@ var/list = "Which laws do you want to include when stating them for the crew?

    " - if (src.laws.devillaws && src.laws.devillaws.len) - for(var/index = 1, index <= src.laws.devillaws.len, index++) - if (!src.devillawcheck[index]) - src.devillawcheck[index] = "No" - list += {"[src.devillawcheck[index]] 666: [src.laws.devillaws[index]]
    "} - if (src.laws.zeroth) if (!src.lawcheck[1]) src.lawcheck[1] = "No" //Given Law 0's usual nature, it defaults to NOT getting reported. --NeoFite @@ -364,10 +397,89 @@ src << "Sensor augmentations disabled." +/mob/living/silicon/attack_alien(mob/living/carbon/alien/humanoid/M) + if(..()) //if harm or disarm intent + var/damage = 20 + if (prob(90)) + add_logs(M, src, "attacked") + playsound(loc, 'sound/weapons/slash.ogg', 25, 1, -1) + visible_message("[M] has slashed at [src]!", \ + "[M] has slashed at [src]!") + if(prob(8)) + flash_eyes(affect_silicon = 1) + add_logs(M, src, "attacked") + adjustBruteLoss(damage) + updatehealth() + else + playsound(loc, 'sound/weapons/slashmiss.ogg', 25, 1, -1) + visible_message("[M] took a swipe at [src]!", \ + "[M] took a swipe at [src]!") + return + +/mob/living/silicon/attack_animal(mob/living/simple_animal/M) + if(..()) + var/damage = rand(M.melee_damage_lower, M.melee_damage_upper) + switch(M.melee_damage_type) + if(BRUTE) + adjustBruteLoss(damage) + if(BURN) + adjustFireLoss(damage) + if(TOX) + adjustToxLoss(damage) + if(OXY) + adjustOxyLoss(damage) + if(CLONE) + adjustCloneLoss(damage) + if(STAMINA) + adjustStaminaLoss(damage) + updatehealth() + +/mob/living/silicon/attack_paw(mob/living/user) + return attack_hand(user) + +/mob/living/silicon/attack_larva(mob/living/carbon/alien/larva/L) + if(L.a_intent == "help") + visible_message("[L.name] rubs its head against [src].") + return + +/mob/living/silicon/attack_hulk(mob/living/carbon/human/user) + if(user.a_intent == "harm") + ..(user, 1) + adjustBruteLoss(rand(10, 15)) + playsound(loc, "punch", 25, 1, -1) + visible_message("[user] has punched [src]!", \ + "[user] has punched [src]!") + return 1 + return 0 + +/mob/living/silicon/attack_hand(mob/living/carbon/human/M) + switch(M.a_intent) + if ("help") + M.visible_message("[M] pets [src].", \ + "You pet [src].") + if("grab") + grabbedby(M) + else + M.do_attack_animation(src) + playsound(src.loc, 'sound/effects/bang.ogg', 10, 1) + visible_message("[M] punches [src], but doesn't leave a dent.", \ + "[M] punches [src], but doesn't leave a dent.") + return 0 + /mob/living/silicon/proc/GetPhoto() if (aicamera) return aicamera.selectpicture(aicamera) +/mob/living/silicon/grippedby(mob/living/user) + return + +/mob/living/silicon/flash_eyes(intensity = 1, override_blindness_check = 0, affect_silicon = 0, visual = 0, type = /obj/screen/fullscreen/flash/noise) + if(affect_silicon) + return ..() + +/mob/living/silicon/check_ear_prot() + return 1 + /mob/living/silicon/update_transform() var/matrix/ntransform = matrix(transform) //aka transform.Copy() var/changed = 0 diff --git a/code/modules/mob/living/silicon/silicon_defense.dm b/code/modules/mob/living/silicon/silicon_defense.dm deleted file mode 100644 index b9d27aebb6..0000000000 --- a/code/modules/mob/living/silicon/silicon_defense.dm +++ /dev/null @@ -1,97 +0,0 @@ - -/mob/living/silicon/grippedby(mob/living/user) - return //can't upgrade a simple pull into a more aggressive grab. - -/mob/living/silicon/get_ear_protection()//no ears - return 2 - -/mob/living/silicon/attack_alien(mob/living/carbon/alien/humanoid/M) - if(..()) //if harm or disarm intent - var/damage = 20 - if (prob(90)) - add_logs(M, src, "attacked") - playsound(loc, 'sound/weapons/slash.ogg', 25, 1, -1) - visible_message("[M] has slashed at [src]!", \ - "[M] has slashed at [src]!") - if(prob(8)) - flash_act(affect_silicon = 1) - add_logs(M, src, "attacked") - adjustBruteLoss(damage) - updatehealth() - else - playsound(loc, 'sound/weapons/slashmiss.ogg', 25, 1, -1) - visible_message("[M] took a swipe at [src]!", \ - "[M] took a swipe at [src]!") - -/mob/living/silicon/attack_animal(mob/living/simple_animal/M) - if(..()) - var/damage = rand(M.melee_damage_lower, M.melee_damage_upper) - switch(M.melee_damage_type) - if(BRUTE) - adjustBruteLoss(damage) - if(BURN) - adjustFireLoss(damage) - if(TOX) - adjustToxLoss(damage) - if(OXY) - adjustOxyLoss(damage) - if(CLONE) - adjustCloneLoss(damage) - if(STAMINA) - adjustStaminaLoss(damage) - updatehealth() - -/mob/living/silicon/attack_paw(mob/living/user) - return attack_hand(user) - -/mob/living/silicon/attack_larva(mob/living/carbon/alien/larva/L) - if(L.a_intent == INTENT_HELP) - visible_message("[L.name] rubs its head against [src].") - -/mob/living/silicon/attack_hulk(mob/living/carbon/human/user, does_attack_animation = 0) - if(user.a_intent == INTENT_HARM) - ..(user, 1) - adjustBruteLoss(rand(10, 15)) - playsound(loc, "punch", 25, 1, -1) - visible_message("[user] has punched [src]!", \ - "[user] has punched [src]!") - return 1 - return 0 - -/mob/living/silicon/attack_hand(mob/living/carbon/human/M) - switch(M.a_intent) - if ("help") - M.visible_message("[M] pets [src].", \ - "You pet [src].") - if("grab") - grabbedby(M) - else - M.do_attack_animation(src, ATTACK_EFFECT_PUNCH) - playsound(src.loc, 'sound/effects/bang.ogg', 10, 1) - visible_message("[M] punches [src], but doesn't leave a dent.", \ - "[M] punches [src], but doesn't leave a dent.", null, COMBAT_MESSAGE_RANGE) - return 0 - -/mob/living/silicon/electrocute_act(shock_damage, obj/source, siemens_coeff = 1, safety = 0, tesla_shock = 0, illusion = 0) - return 0 //So borgs they don't die trying to fix wiring - -/mob/living/silicon/emp_act(severity) - switch(severity) - if(1) - src.take_bodypart_damage(20) - if(2) - src.take_bodypart_damage(10) - src << "*BZZZT*" - src << "Warning: Electromagnetic pulse detected." - flash_act(affect_silicon = 1) - ..() - -/mob/living/silicon/bullet_act(obj/item/projectile/Proj) - if((Proj.damage_type == BRUTE || Proj.damage_type == BURN)) - adjustBruteLoss(Proj.damage) - Proj.on_hit(src) - return 2 - -/mob/living/silicon/flash_act(intensity = 1, override_blindness_check = 0, affect_silicon = 0, visual = 0, type = /obj/screen/fullscreen/flash/static) - if(affect_silicon) - return ..() diff --git a/code/modules/mob/living/simple_animal/animal_defense.dm b/code/modules/mob/living/simple_animal/animal_defense.dm deleted file mode 100644 index a7e2f803f1..0000000000 --- a/code/modules/mob/living/simple_animal/animal_defense.dm +++ /dev/null @@ -1,136 +0,0 @@ - - -/mob/living/simple_animal/attack_hand(mob/living/carbon/human/M) - ..() - switch(M.a_intent) - - if("help") - if (health > 0) - visible_message("[M] [response_help] [src].") - playsound(loc, 'sound/weapons/thudswoosh.ogg', 50, 1, -1) - - if("grab") - grabbedby(M) - - if("harm", "disarm") - M.do_attack_animation(src, ATTACK_EFFECT_PUNCH) - visible_message("[M] [response_harm] [src]!",\ - "[M] [response_harm] [src]!", null, COMBAT_MESSAGE_RANGE) - playsound(loc, attacked_sound, 25, 1, -1) - attack_threshold_check(harm_intent_damage) - add_logs(M, src, "attacked") - updatehealth() - return 1 - -/mob/living/simple_animal/attack_hulk(mob/living/carbon/human/user, does_attack_animation = 0) - if(user.a_intent == INTENT_HARM) - ..(user, 1) - playsound(loc, "punch", 25, 1, -1) - visible_message("[user] has punched [src]!", \ - "[user] has punched [src]!", null, COMBAT_MESSAGE_RANGE) - adjustBruteLoss(15) - return 1 - -/mob/living/simple_animal/attack_paw(mob/living/carbon/monkey/M) - if(..()) //successful monkey bite. - if(stat != DEAD) - var/damage = rand(1, 3) - attack_threshold_check(damage) - return 1 - if (M.a_intent == INTENT_HELP) - if (health > 0) - visible_message("[M.name] [response_help] [src].") - playsound(loc, 'sound/weapons/thudswoosh.ogg', 50, 1, -1) - - -/mob/living/simple_animal/attack_alien(mob/living/carbon/alien/humanoid/M) - if(..()) //if harm or disarm intent. - if(M.a_intent == INTENT_DISARM) - playsound(loc, 'sound/weapons/pierce.ogg', 25, 1, -1) - visible_message("[M] [response_disarm] [name]!", \ - "[M] [response_disarm] [name]!", null, COMBAT_MESSAGE_RANGE) - add_logs(M, src, "disarmed") - else - var/damage = rand(15, 30) - visible_message("[M] has slashed at [src]!", \ - "[M] has slashed at [src]!", null, COMBAT_MESSAGE_RANGE) - playsound(loc, 'sound/weapons/slice.ogg', 25, 1, -1) - attack_threshold_check(damage) - add_logs(M, src, "attacked") - return 1 - -/mob/living/simple_animal/attack_larva(mob/living/carbon/alien/larva/L) - if(..() && stat != DEAD) //successful larva bite - var/damage = rand(5, 10) - L.amount_grown = min(L.amount_grown + damage, L.max_grown) - attack_threshold_check(damage) - return 1 - -/mob/living/simple_animal/attack_animal(mob/living/simple_animal/M) - if(..()) - var/damage = rand(M.melee_damage_lower, M.melee_damage_upper) - attack_threshold_check(damage, M.melee_damage_type) - return 1 - -/mob/living/simple_animal/attack_slime(mob/living/simple_animal/slime/M) - if(..()) //successful slime attack - var/damage = rand(15, 25) - if(M.is_adult) - damage = rand(20, 35) - attack_threshold_check(damage) - return 1 - -/mob/living/simple_animal/proc/attack_threshold_check(damage, damagetype = BRUTE, armorcheck = "melee") - var/temp_damage = damage - if(!damage_coeff[damagetype]) - temp_damage = 0 - else - temp_damage *= damage_coeff[damagetype] - - if(temp_damage >= 0 && temp_damage <= force_threshold) - visible_message("[src] looks unharmed.") - else - apply_damage(damage, damagetype, null, getarmor(null, armorcheck)) - -/mob/living/simple_animal/bullet_act(obj/item/projectile/Proj) - if(!Proj) - return - apply_damage(Proj.damage, Proj.damage_type) - Proj.on_hit(src) - return 0 - -/mob/living/simple_animal/ex_act(severity, target, origin) - if(origin && istype(origin, /datum/spacevine_mutation) && isvineimmune(src)) - return - ..() - var/bomb_armor = getarmor(null, "bomb") - switch (severity) - if (1) - if(prob(bomb_armor)) - adjustBruteLoss(500) - else - gib() - return - if (2) - var/bloss = 60 - if(prob(bomb_armor)) - bloss = bloss / 1.5 - adjustBruteLoss(bloss) - - if(3) - var/bloss = 30 - if(prob(bomb_armor)) - bloss = bloss / 1.5 - adjustBruteLoss(bloss) - -/mob/living/simple_animal/blob_act(obj/structure/blob/B) - adjustBruteLoss(20) - return - -/mob/living/simple_animal/do_attack_animation(atom/A, visual_effect_icon, used_item, no_effect, end_pixel_y) - if(!no_effect && !visual_effect_icon && melee_damage_upper) - if(melee_damage_upper < 10) - visual_effect_icon = ATTACK_EFFECT_PUNCH - else - visual_effect_icon = ATTACK_EFFECT_SMASH - ..() \ No newline at end of file diff --git a/code/modules/mob/living/simple_animal/bot/bot.dm b/code/modules/mob/living/simple_animal/bot/bot.dm index f3e4250057..e679cad45f 100644 --- a/code/modules/mob/living/simple_animal/bot/bot.dm +++ b/code/modules/mob/living/simple_animal/bot/bot.dm @@ -4,14 +4,12 @@ /mob/living/simple_animal/bot icon = 'icons/obj/aibots.dmi' layer = MOB_LAYER - gender = NEUTER luminosity = 3 stop_automated_movement = 1 wander = 0 healable = 0 damage_coeff = list(BRUTE = 1, BURN = 1, TOX = 0, CLONE = 0, STAMINA = 0, OXY = 0) atmos_requirements = list("min_oxy" = 0, "max_oxy" = 0, "min_tox" = 0, "max_tox" = 0, "min_co2" = 0, "max_co2" = 0, "min_n2" = 0, "max_n2" = 0) - maxbodytemp = INFINITY minbodytemp = 0 has_unlimited_silicon_privilege = 1 sentience_type = SENTIENCE_ARTIFICIAL @@ -22,7 +20,7 @@ verb_yell = "alarms" bubble_icon = "machine" - faction = list("neutral", "silicon" , "turret") + faction = list("neutral", "silicon") var/obj/machinery/bot_core/bot_core = null var/bot_core_type = /obj/machinery/bot_core @@ -103,14 +101,14 @@ if(stat) return 0 on = 1 - SetLuminosity(initial(luminosity)) + set_light(initial(luminosity)) update_icon() diag_hud_set_botstat() return 1 /mob/living/simple_animal/bot/proc/turn_off() on = 0 - SetLuminosity(0) + set_light(0) bot_reset() //Resets an AI's call, should it exist. update_icon() @@ -226,7 +224,7 @@ /mob/living/simple_animal/bot/attack_hand(mob/living/carbon/human/H) - if(H.a_intent == INTENT_HELP) + if(H.a_intent == "help") interact(H) else return ..() @@ -271,7 +269,7 @@ ejectpai(user) else user.changeNext_move(CLICK_CD_MELEE) - if(istype(W, /obj/item/weapon/weldingtool) && user.a_intent != INTENT_HARM) + if(istype(W, /obj/item/weapon/weldingtool) && user.a_intent != "harm") if(health >= maxHealth) user << "[src] does not need a repair!" return @@ -859,7 +857,7 @@ Pass a positive integer as an argument to override a bot's default speed. src << "You sense your form change as you are uploaded into [src]." bot_name = name name = paicard.pai.name - faction = user.faction.Copy() + faction = user.faction add_logs(user, paicard.pai, "uploaded to [bot_name],") return 1 else diff --git a/code/modules/mob/living/simple_animal/bot/cleanbot.dm b/code/modules/mob/living/simple_animal/bot/cleanbot.dm index dbec44582a..4cf22a7acd 100644 --- a/code/modules/mob/living/simple_animal/bot/cleanbot.dm +++ b/code/modules/mob/living/simple_animal/bot/cleanbot.dm @@ -98,7 +98,7 @@ return if(emagged == 2) //Emag functions - if(isopenturf(loc)) + if(istype(loc, /turf/open)) for(var/mob/living/carbon/victim in loc) if(victim != target) @@ -170,7 +170,7 @@ /obj/effect/decal/cleanable/vomit, /obj/effect/decal/cleanable/robot_debris, /obj/effect/decal/cleanable/crayon, - /obj/effect/decal/cleanable/molten_object, + /obj/effect/decal/cleanable/molten_item, /obj/effect/decal/cleanable/tomato_smudge, /obj/effect/decal/cleanable/egg_smudge, /obj/effect/decal/cleanable/pie_smudge, @@ -217,7 +217,7 @@ else if(istype(A, /mob/living/simple_animal/cockroach) || istype(A, /mob/living/simple_animal/mouse)) var/mob/living/simple_animal/M = target if(!M.stat) - visible_message("[src] smashes [target] with its mop!") + visible_message("[src] smashes [target] with it's mop!") M.death() target = null @@ -257,7 +257,7 @@ new /obj/item/device/assembly/prox_sensor(Tsec) if(prob(50)) - new /obj/item/bodypart/l_arm/robot(Tsec) + new /obj/item/robot_parts/l_arm(Tsec) var/datum/effect_system/spark_spread/s = new /datum/effect_system/spark_spread s.set_up(3, 1, src) diff --git a/code/modules/mob/living/simple_animal/bot/construction.dm b/code/modules/mob/living/simple_animal/bot/construction.dm index 6c0ae9fd2f..4db80c3bac 100644 --- a/code/modules/mob/living/simple_animal/bot/construction.dm +++ b/code/modules/mob/living/simple_animal/bot/construction.dm @@ -10,12 +10,12 @@ throwforce = 5 throw_speed = 2 throw_range = 5 - w_class = WEIGHT_CLASS_NORMAL + w_class = 3. var/created_name = "Cleanbot" /obj/item/weapon/bucket_sensor/attackby(obj/item/W, mob/user as mob, params) ..() - if(istype(W, /obj/item/bodypart/l_arm/robot) || istype(W, /obj/item/bodypart/r_arm/robot)) + if(istype(W, /obj/item/robot_parts/l_arm) || istype(W, /obj/item/robot_parts/r_arm)) if(!user.unEquip(W)) return qdel(W) @@ -60,7 +60,7 @@ switch(build_step) if(0,1) - if(istype(W, /obj/item/bodypart/l_leg/robot) || istype(W, /obj/item/bodypart/r_leg/robot)) + if(istype(W, /obj/item/robot_parts/l_leg) || istype(W, /obj/item/robot_parts/r_leg)) if(!user.unEquip(W)) return qdel(W) @@ -158,7 +158,7 @@ return newname = "redtag ED-209 assembly" if("") - if(!istype(W, /obj/item/weapon/gun/energy/e_gun/advtaser)) + if(!istype(W, /obj/item/weapon/gun/energy/gun/advtaser)) return newname = "taser ED-209 assembly" else @@ -205,7 +205,7 @@ throwforce = 10 throw_speed = 2 throw_range = 5 - w_class = WEIGHT_CLASS_NORMAL + w_class = 3 var/created_name = "Floorbot" /obj/item/weapon/toolbox_tiles_sensor @@ -217,7 +217,7 @@ throwforce = 10 throw_speed = 2 throw_range = 5 - w_class = WEIGHT_CLASS_NORMAL + w_class = 3 var/created_name = "Floorbot" /obj/item/weapon/storage/toolbox/mechanical/attackby(obj/item/stack/tile/plasteel/T, mob/user, params) @@ -261,7 +261,7 @@ /obj/item/weapon/toolbox_tiles_sensor/attackby(obj/item/W, mob/user, params) ..() - if(istype(W, /obj/item/bodypart/l_arm/robot) || istype(W, /obj/item/bodypart/r_arm/robot)) + if(istype(W, /obj/item/robot_parts/l_arm) || istype(W, /obj/item/robot_parts/r_arm)) qdel(W) var/turf/T = get_turf(user.loc) var/mob/living/simple_animal/bot/floorbot/A = new /mob/living/simple_animal/bot/floorbot(T) @@ -287,7 +287,7 @@ var/build_step = 0 var/created_name = "Medibot" //To preserve the name if it's a unique medbot I guess var/skin = null //Same as medbot, set to tox or ointment for the respective kits. - w_class = WEIGHT_CLASS_NORMAL + w_class = 3 /obj/item/weapon/firstaid_arm_assembly/New() ..() @@ -295,10 +295,11 @@ if(skin) add_overlay(image('icons/obj/aibots.dmi', "kit_skin_[skin]")) -/obj/item/weapon/storage/firstaid/attackby(obj/item/bodypart/S, mob/user, params) +/obj/item/weapon/storage/firstaid/attackby(obj/item/robot_parts/S, mob/user, params) - if((!istype(S, /obj/item/bodypart/l_arm/robot)) && (!istype(S, /obj/item/bodypart/r_arm/robot))) - return ..() + if((!istype(S, /obj/item/robot_parts/l_arm)) && (!istype(S, /obj/item/robot_parts/r_arm))) + ..() + return //Making a medibot! if(contents.len >= 1) @@ -415,7 +416,7 @@ name = "helmet/signaler/prox sensor assembly" qdel(I) - else if(((istype(I, /obj/item/bodypart/l_arm/robot)) || (istype(I, /obj/item/bodypart/r_arm/robot))) && (build_step == 2)) + else if(((istype(I, /obj/item/robot_parts/l_arm)) || (istype(I, /obj/item/robot_parts/r_arm))) && (build_step == 2)) if(!user.unEquip(I)) return build_step++ @@ -458,6 +459,6 @@ else if(build_step == 3) overlays -= "hs_arm" - new /obj/item/bodypart/l_arm/robot(get_turf(src)) + new /obj/item/robot_parts/l_arm(get_turf(src)) user << "You remove the robot arm from [src]." - build_step-- + build_step-- \ No newline at end of file diff --git a/code/modules/mob/living/simple_animal/bot/ed209bot.dm b/code/modules/mob/living/simple_animal/bot/ed209bot.dm index 4c8e4f2c19..c2338359b5 100644 --- a/code/modules/mob/living/simple_animal/bot/ed209bot.dm +++ b/code/modules/mob/living/simple_animal/bot/ed209bot.dm @@ -8,7 +8,7 @@ health = 100 maxHealth = 100 damage_coeff = list(BRUTE = 0.5, BURN = 0.7, TOX = 0, CLONE = 0, STAMINA = 0, OXY = 0) - obj_damage = 60 + environment_smash = 2 //Walls can't stop THE LAW mob_size = MOB_SIZE_LARGE @@ -23,7 +23,7 @@ data_hud_type = DATA_HUD_SECURITY_ADVANCED var/lastfired = 0 - var/shot_delay = 15 + var/shot_delay = 3 //.3 seconds between shots var/lasercolor = "" var/disabled = 0//A holder for if it needs to be disabled, if true it will not seach for targets, shoot at targets, or move, currently only used for lasertag @@ -126,7 +126,7 @@ Auto Patrol[]"}, return dat /mob/living/simple_animal/bot/ed209/Topic(href, href_list) - if(lasercolor && ishuman(usr)) + if(lasercolor && (istype(usr,/mob/living/carbon/human))) var/mob/living/carbon/human/H = usr if((lasercolor == "b") && (istype(H.wear_suit, /obj/item/clothing/suit/redtag)))//Opposing team cannot operate it return @@ -160,13 +160,13 @@ Auto Patrol[]"}, mode = BOT_HUNT /mob/living/simple_animal/bot/ed209/attack_hand(mob/living/carbon/human/H) - if(H.a_intent == INTENT_HARM) + if(H.a_intent == "harm") retaliate(H) return ..() /mob/living/simple_animal/bot/ed209/attackby(obj/item/weapon/W, mob/user, params) ..() - if(istype(W, /obj/item/weapon/weldingtool) && user.a_intent != INTENT_HARM) // Any intent but harm will heal, so we shouldn't get angry. + if(istype(W, /obj/item/weapon/weldingtool) && user.a_intent != "harm") // Any intent but harm will heal, so we shouldn't get angry. return if(!istype(W, /obj/item/weapon/screwdriver) && (!target)) // Added check for welding tool to fix #2432. Welding tool behavior is handled in superclass. if(W.force && W.damtype != STAMINA)//If force is non-zero and damage type isn't stamina. @@ -337,7 +337,7 @@ Auto Patrol[]"}, target = C oldtarget_name = C.name speak("Level [threatlevel] infraction alert!") - playsound(loc, pick('sound/voice/ed209_20sec.ogg', 'sound/voice/EDPlaceholder.ogg'), 50, 0) + playsound(loc, pick('sound/voice/ed209_growl.ogg', 'sound/voice/ed209_20seconds.ogg'), 50, 0) visible_message("[src] points at [C.name]!") mode = BOT_HUNT spawn(0) @@ -363,7 +363,7 @@ Auto Patrol[]"}, new /obj/item/device/assembly/prox_sensor(Tsec) if(!lasercolor) - var/obj/item/weapon/gun/energy/e_gun/advtaser/G = new /obj/item/weapon/gun/energy/e_gun/advtaser(Tsec) + var/obj/item/weapon/gun/energy/gun/advtaser/G = new /obj/item/weapon/gun/energy/gun/advtaser(Tsec) G.power_supply.charge = 0 G.update_icon() else if(lasercolor == "b") @@ -376,9 +376,9 @@ Auto Patrol[]"}, G.update_icon() if(prob(50)) - new /obj/item/bodypart/l_leg/robot(Tsec) + new /obj/item/robot_parts/l_leg(Tsec) if(prob(25)) - new /obj/item/bodypart/r_leg/robot(Tsec) + new /obj/item/robot_parts/r_leg(Tsec) if(prob(25))//50% chance for a helmet OR vest if(prob(50)) new /obj/item/clothing/head/helmet(Tsec) @@ -418,15 +418,19 @@ Auto Patrol[]"}, return lastfired = world.time var/turf/T = loc - var/turf/U = get_turf(target) - if(!U) + var/atom/U = (istype(target, /atom/movable) ? target.loc : target) + if((!( U ) || !( T ))) return - if(!isturf(T)) + while(!(istype(U, /turf))) + U = U.loc + if(!(istype(T, /turf))) return if(!projectile) return + if(!(istype(U, /turf))) + return var/obj/item/projectile/A = new projectile (loc) playsound(loc, shoot_sound, 50, 1) A.current = U @@ -524,12 +528,16 @@ Auto Patrol[]"}, spawn(2) icon_state = "[lasercolor]ed209[on]" var/threat = 5 - C.Weaken(5) - C.Stun(5) - C.stuttering = 5 - if(ishuman(C)) + if(istype(C, /mob/living/carbon/human)) + C.stuttering = 5 + C.Stun(5) + C.Weaken(5) var/mob/living/carbon/human/H = C threat = H.assess_threat(src) + else + C.Weaken(5) + C.stuttering = 5 + C.Stun(5) add_logs(src,C,"stunned") if(declare_arrests) var/area/location = get_area(src) diff --git a/code/modules/mob/living/simple_animal/bot/floorbot.dm b/code/modules/mob/living/simple_animal/bot/floorbot.dm index 237e29b514..8956f7872a 100644 --- a/code/modules/mob/living/simple_animal/bot/floorbot.dm +++ b/code/modules/mob/living/simple_animal/bot/floorbot.dm @@ -187,10 +187,10 @@ if(!target && emagged < 2) if(targetdirection != null) //The bot is in line mode. var/turf/T = get_step(src, targetdirection) - if(isspaceturf(T)) //Check for space + if(istype(T, /turf/open/space)) //Check for space target = T process_type = LINE_SPACE_MODE - if(isfloorturf(T)) //Check for floor + if(istype(T, /turf/open/floor)) //Check for floor target = T if(!target) @@ -225,7 +225,7 @@ if(target) if(path.len == 0) - if(!isturf(target)) + if(!istype(target, /turf/)) var/turf/TL = get_turf(target) path = get_path_to(src, TL, /turf/proc/Distance_cardinal, 0, 30, id=access_card,simulated_only = 0) else @@ -248,9 +248,9 @@ target = null path = list() return - if(isturf(target) && emagged < 2) + if(istype(target, /turf/) && emagged < 2) repair(target) - else if(emagged == 2 && isfloorturf(target)) + else if(emagged == 2 && istype(target,/turf/open/floor)) var/turf/open/floor/F = target anchored = 1 mode = BOT_REPAIRING @@ -291,7 +291,7 @@ result = F if(REPLACE_TILE) F = scan_target - if(isfloorturf(F) && !istype(F, /turf/open/floor/plating)) //The floor must already have a tile. + if(istype(F, /turf/open/floor) && !istype(F, /turf/open/floor/plating)) //The floor must already have a tile. result = F if(FIX_TILE) //Selects only damaged floors. F = scan_target @@ -307,14 +307,14 @@ /mob/living/simple_animal/bot/floorbot/proc/repair(turf/target_turf) - if(isspaceturf(target_turf)) + if(istype(target_turf, /turf/open/space/)) //Must be a hull breach or in line mode to continue. if(!is_hull_breach(target_turf) && !targetdirection) target = null return - else if(!isfloorturf(target_turf)) + else if(!istype(target_turf, /turf/open/floor)) return - if(isspaceturf(target_turf)) //If we are fixing an area not part of pure space, it is + if(istype(target_turf, /turf/open/space/)) //If we are fixing an area not part of pure space, it is anchored = 1 icon_state = "floorbot-c" visible_message("[targetdirection ? "[src] begins installing a bridge plating." : "[src] begins to repair the hole."] ") @@ -376,7 +376,7 @@ empty_tiles() if(prob(50)) - new /obj/item/bodypart/l_arm/robot(Tsec) + new /obj/item/robot_parts/l_arm(Tsec) var/obj/item/stack/tile/plasteel/T = new (Tsec) T.amount = 1 diff --git a/code/modules/mob/living/simple_animal/bot/medbot.dm b/code/modules/mob/living/simple_animal/bot/medbot.dm index 183a1180ae..fbd6c94ee8 100644 --- a/code/modules/mob/living/simple_animal/bot/medbot.dm +++ b/code/modules/mob/living/simple_animal/bot/medbot.dm @@ -38,15 +38,10 @@ var/declare_cooldown = 0 //Prevents spam of critical patient alerts. var/stationary_mode = 0 //If enabled, the Medibot will not move automatically. //Setting which reagents to use to treat what by default. By id. - var/treatment_brute_avoid = "tricordrazine" var/treatment_brute = "bicaridine" - var/treatment_oxy_avoid = null var/treatment_oxy = "dexalin" - var/treatment_fire_avoid = "tricordrazine" var/treatment_fire = "kelotane" - var/treatment_tox_avoid = "tricordrazine" - var/treatment_tox = "charcoal" - var/treatment_virus_avoid = null + var/treatment_tox = "antitoxin" var/treatment_virus = "spaceacillin" var/treat_virus = 1 //If on, the bot will attempt to treat viral infections, curing them if possible. var/shut_up = 0 //self explanatory :) @@ -55,6 +50,7 @@ name = "\improper Mysterious Medibot" desc = "International Medibot of mystery." skin = "bezerk" + treatment_oxy = "tricordrazine" treatment_brute = "tricordrazine" treatment_fire = "tricordrazine" treatment_tox = "tricordrazine" @@ -66,11 +62,8 @@ heal_threshold = 0 declare_crit = 0 treatment_oxy = "pancuronium" - treatment_brute_avoid = null treatment_brute = "pancuronium" - treatment_fire_avoid = null treatment_fire = "sodium_thiopental" - treatment_tox_avoid = null treatment_tox = "sodium_thiopental" /mob/living/simple_animal/bot/medbot/update_icon() @@ -249,10 +242,8 @@ if(assess_patient(H)) last_found = world.time if((last_newpatient_speak + 300) < world.time) //Don't spam these messages! - var/list/messagevoice = list("Hey, [H.name]! Hold on, I'm coming." = 'sound/voice/mcoming.ogg',"Wait [H.name]! I want to help!" = 'sound/voice/mhelp.ogg',"[H.name], you appear to be injured!" = 'sound/voice/minjured.ogg') - var/message = pick(messagevoice) + var/message = pick("Hey, [H.name]! Hold on, I'm coming.","Wait [H.name]! I want to help!","[H.name], you appear to be injured!") speak(message) - playsound(loc, messagevoice[message], 50, 0) last_newpatient_speak = world.time return H else @@ -284,10 +275,8 @@ if(!patient) if(!shut_up && prob(1)) - var/list/messagevoice = list("Radar, put a mask on!" = 'sound/voice/mradar.ogg',"There's always a catch, and I'm the best there is." = 'sound/voice/mcatch.ogg',"I knew it, I should've been a plastic surgeon." = 'sound/voice/msurgeon.ogg',"What kind of medbay is this? Everyone's dropping like flies." = 'sound/voice/mflies.ogg',"Delicious!" = 'sound/voice/mdelicious.ogg') - var/message = pick(messagevoice) + var/message = pick("Radar, put a mask on!","There's always a catch, and it's the best there is.","I knew it, I should've been a plastic surgeon.","What kind of medbay is this? Everyone's dropping like dead flies.","Delicious!") speak(message) - playsound(loc, messagevoice[message], 50, 0) var/scan_range = (stationary_mode ? 1 : DEFAULT_SCAN_RANGE) //If in stationary mode, scan range is limited to adjacent patients. patient = scan(/mob/living/carbon/human, oldpatient, scan_range) oldpatient = patient @@ -357,25 +346,29 @@ return 1 //They're injured enough for it! - if((!C.reagents.has_reagent(treatment_brute_avoid)) && (C.getBruteLoss() >= heal_threshold) && (!C.reagents.has_reagent(treatment_brute))) + if((C.getBruteLoss() >= heal_threshold) && (!C.reagents.has_reagent(treatment_brute))) return 1 //If they're already medicated don't bother! - if((!C.reagents.has_reagent(treatment_oxy_avoid)) && (C.getOxyLoss() >= (15 + heal_threshold)) && (!C.reagents.has_reagent(treatment_oxy))) + if((C.getOxyLoss() >= (15 + heal_threshold)) && (!C.reagents.has_reagent(treatment_oxy))) return 1 - if((!C.reagents.has_reagent(treatment_fire_avoid)) && (C.getFireLoss() >= heal_threshold) && (!C.reagents.has_reagent(treatment_fire))) + if((C.getFireLoss() >= heal_threshold) && (!C.reagents.has_reagent(treatment_fire))) return 1 - if((!C.reagents.has_reagent(treatment_tox_avoid)) && (C.getToxLoss() >= heal_threshold) && (!C.reagents.has_reagent(treatment_tox))) + if((C.getToxLoss() >= heal_threshold) && (!C.reagents.has_reagent(treatment_tox))) return 1 - if(treat_virus && !C.reagents.has_reagent(treatment_virus_avoid) && !C.reagents.has_reagent(treatment_virus)) + if(treat_virus) for(var/datum/disease/D in C.viruses) //the medibot can't detect viruses that are undetectable to Health Analyzers or Pandemic machines. - if(!(D.visibility_flags & HIDDEN_SCANNER || D.visibility_flags & HIDDEN_PANDEMIC) \ - && D.severity != NONTHREAT \ - && (D.stage > 1 || (D.spread_flags & AIRBORNE))) // medibot can't detect a virus in its initial stage unless it spreads airborne. - return 1 //STOP DISEASE FOREVER + if(D.visibility_flags & HIDDEN_SCANNER || D.visibility_flags & HIDDEN_PANDEMIC) + return 0 + if(D.severity == NONTHREAT) // medibot doesn't try to heal truly harmless viruses + return 0 + if((D.stage > 1) || (D.spread_flags & AIRBORNE)) // medibot can't detect a virus in its initial stage unless it spreads airborne. + + if(!C.reagents.has_reagent(treatment_virus)) + return 1 //STOP DISEASE FOREVER return 0 @@ -405,10 +398,8 @@ return if(C.stat == 2) - var/list/messagevoice = list("No! Stay with me!" = 'sound/voice/mno.ogg',"Live, damnit! LIVE!" = 'sound/voice/mlive.ogg',"I...I've never lost a patient before. Not today, I mean." = 'sound/voice/mlost.ogg') - var/message = pick(messagevoice) - speak(message) - playsound(loc, messagevoice[message], 50, 0) + var/death_message = pick("No! NO!","Live, damnit! LIVE!","I...I've never lost a patient before. Not today, I mean.") + speak(death_message) oldpatient = patient soft_reset() return @@ -429,23 +420,23 @@ virus = 1 if(!reagent_id && (virus)) - if(!C.reagents.has_reagent(treatment_virus) && !C.reagents.has_reagent(treatment_virus_avoid)) + if(!C.reagents.has_reagent(treatment_virus)) reagent_id = treatment_virus if(!reagent_id && (C.getBruteLoss() >= heal_threshold)) - if(!C.reagents.has_reagent(treatment_brute) && !C.reagents.has_reagent(treatment_brute_avoid)) + if(!C.reagents.has_reagent(treatment_brute)) reagent_id = treatment_brute if(!reagent_id && (C.getOxyLoss() >= (15 + heal_threshold))) - if(!C.reagents.has_reagent(treatment_oxy) && !C.reagents.has_reagent(treatment_oxy_avoid)) + if(!C.reagents.has_reagent(treatment_oxy)) reagent_id = treatment_oxy if(!reagent_id && (C.getFireLoss() >= heal_threshold)) - if(!C.reagents.has_reagent(treatment_fire) && !C.reagents.has_reagent(treatment_fire_avoid)) + if(!C.reagents.has_reagent(treatment_fire)) reagent_id = treatment_fire if(!reagent_id && (C.getToxLoss() >= heal_threshold)) - if(!C.reagents.has_reagent(treatment_tox) && !C.reagents.has_reagent(treatment_tox_avoid)) + if(!C.reagents.has_reagent(treatment_tox)) reagent_id = treatment_tox //If the patient is injured but doesn't have our special reagent in them then we should give it to them first @@ -456,10 +447,8 @@ break if(!reagent_id) //If they don't need any of that they're probably cured! - var/list/messagevoice = list("All patched up!" = 'sound/voice/mpatchedup.ogg',"An apple a day keeps me away." = 'sound/voice/mapple.ogg',"Feel better soon!" = 'sound/voice/mfeelbetter.ogg') - var/message = pick(messagevoice) + var/message = pick("All patched up!","An apple a day keeps me away.","Feel better soon!") speak(message) - playsound(loc, messagevoice[message], 50, 0) bot_reset() return else @@ -469,8 +458,7 @@ C.visible_message("[src] is trying to inject [patient]!", \ "[src] is trying to inject you!") - var/failed = FALSE; - if(do_mob(src, patient, 30)) //Is C == patient? This is so confusing + spawn(30)//replace with do mob if((get_dist(src, patient) <= 1) && (on) && assess_patient(patient)) if(reagent_id == "internal_beaker") if(use_beaker && reagent_glass && reagent_glass.reagents.total_volume) @@ -482,23 +470,16 @@ C.visible_message("[src] injects [patient] with its syringe!", \ "[src] injects you with its syringe!") else - failed = TRUE - else - failed = TRUE - - if(failed) - visible_message("[src] retracts its syringe.") - update_icon() - soft_reset() - return + visible_message("[src] retracts its syringe.") + update_icon() + soft_reset() + return reagent_id = null return /mob/living/simple_animal/bot/medbot/proc/check_overdose(mob/living/carbon/patient,reagent_id,injection_amount) var/datum/reagent/R = chemical_reagents_list[reagent_id] - if(!R.overdose_threshold) //Some chems do not have an OD threshold - return 0 var/current_volume = patient.reagents.get_reagent_amount(reagent_id) if(current_volume + injection_amount > R.overdose_threshold) return 1 @@ -525,10 +506,7 @@ reagent_glass = null if(prob(50)) - new /obj/item/bodypart/l_arm/robot(Tsec) - - if(emagged && prob(25)) - playsound(loc, 'sound/voice/minsult.ogg', 50, 0) + new /obj/item/robot_parts/l_arm(Tsec) var/datum/effect_system/spark_spread/s = new /datum/effect_system/spark_spread s.set_up(3, 1, src) diff --git a/code/modules/mob/living/simple_animal/bot/mulebot.dm b/code/modules/mob/living/simple_animal/bot/mulebot.dm index f6cd93dede..2d82b9e4a5 100644 --- a/code/modules/mob/living/simple_animal/bot/mulebot.dm +++ b/code/modules/mob/living/simple_animal/bot/mulebot.dm @@ -1,4 +1,4 @@ - +//This file was auto-corrected by findeclaration.exe on 25.5.2012 20:42:31 // Mulebot - carries crates around for Quartermaster // Navigates via floor navbeacons @@ -20,7 +20,7 @@ var/global/mulebot_count = 0 health = 50 maxHealth = 50 damage_coeff = list(BRUTE = 0.5, BURN = 0.7, TOX = 0, CLONE = 0, STAMINA = 0, OXY = 0) - a_intent = INTENT_HARM //No swapping + a_intent = "harm" //No swapping buckle_lying = 0 mob_size = MOB_SIZE_LARGE @@ -157,10 +157,10 @@ var/global/mulebot_count = 0 wires.cut_random() /mob/living/simple_animal/bot/mulebot/interact(mob/user) - if(open && !isAI(user)) + if(open && !istype(user, /mob/living/silicon/ai)) wires.interact(user) else - if(wires.is_cut(WIRE_RX) && isAI(user)) + if(wires.is_cut(WIRE_RX) && istype(user, /mob/living/silicon/ai)) return ui_interact(user) @@ -408,7 +408,6 @@ var/global/mulebot_count = 0 load.loc = loc load.pixel_y = initial(load.pixel_y) load.layer = initial(load.layer) - load.plane = initial(load.plane) if(dirn) var/turf/T = loc var/turf/newT = get_step(T,dirn) @@ -475,13 +474,12 @@ var/global/mulebot_count = 0 if(next == loc) path -= next return - if(isturf(next)) + if(istype( next, /turf)) //world << "at ([x],[y]) moving to ([next.x],[next.y])" if(bloodiness) var/obj/effect/decal/cleanable/blood/tracks/B = new(loc) - if(blood_DNA && blood_DNA.len) - B.blood_DNA |= blood_DNA.Copy() + B.blood_DNA |= blood_DNA.Copy() var/newdir = get_dir(next, loc) if(newdir == dir) B.setDir(newdir) @@ -638,7 +636,7 @@ var/global/mulebot_count = 0 if(wires.is_cut(WIRE_AVOIDANCE)) // usually just bumps, but if avoidance disabled knock over mobs var/mob/M = obs if(ismob(M)) - if(iscyborg(M)) + if(istype(M,/mob/living/silicon/robot)) visible_message("[src] bumps into [M]!") else if(!paicard) @@ -667,10 +665,6 @@ var/global/mulebot_count = 0 var/turf/T = get_turf(src) T.add_mob_blood(H) - - var/list/blood_dna = H.get_blood_dna_list() - if(blood_dna) - transfer_blood_dna(blood_dna) bloodiness += 4 // player on mulebot attempted to move @@ -744,7 +738,7 @@ var/global/mulebot_count = 0 unload(get_dir(loc, A)) else ..() - + /mob/living/simple_animal/bot/mulebot/insertpai(mob/user, obj/item/device/paicard/card) if(..()) visible_message("[src] safeties are locked on.") diff --git a/code/modules/mob/living/simple_animal/bot/secbot.dm b/code/modules/mob/living/simple_animal/bot/secbot.dm index 1089cd6feb..b842e66099 100644 --- a/code/modules/mob/living/simple_animal/bot/secbot.dm +++ b/code/modules/mob/living/simple_animal/bot/secbot.dm @@ -144,13 +144,13 @@ Auto Patrol: []"}, mode = BOT_HUNT /mob/living/simple_animal/bot/secbot/attack_hand(mob/living/carbon/human/H) - if(H.a_intent == INTENT_HARM) + if(H.a_intent == "harm") retaliate(H) return ..() /mob/living/simple_animal/bot/secbot/attackby(obj/item/weapon/W, mob/user, params) ..() - if(istype(W, /obj/item/weapon/weldingtool) && user.a_intent != INTENT_HARM) // Any intent but harm will heal, so we shouldn't get angry. + if(istype(W, /obj/item/weapon/weldingtool) && user.a_intent != "harm") // Any intent but harm will heal, so we shouldn't get angry. return if(!istype(W, /obj/item/weapon/screwdriver) && (W.force) && (!target) && (W.damtype != STAMINA) ) // Added check for welding tool to fix #2432. Welding tool behavior is handled in superclass. retaliate(user) @@ -189,7 +189,7 @@ Auto Patrol: []"}, /mob/living/simple_animal/bot/secbot/hitby(atom/movable/AM, skipcatch = 0, hitpush = 1, blocked = 0) if(istype(AM, /obj/item)) var/obj/item/I = AM - if(I.throwforce < src.health && I.thrownby && ishuman(I.thrownby)) + if(I.throwforce < src.health && I.thrownby && (istype(I.thrownby, /mob/living/carbon/human))) var/mob/living/carbon/human/H = I.thrownby retaliate(H) ..() @@ -215,7 +215,7 @@ Auto Patrol: []"}, spawn(2) icon_state = "secbot[on]" var/threat = 5 - if(ishuman(C)) + if(istype(C, /mob/living/carbon/human)) C.stuttering = 5 C.Stun(5) C.Weaken(5) @@ -383,7 +383,7 @@ Auto Patrol: []"}, new /obj/item/weapon/melee/baton(Tsec) if(prob(50)) - new /obj/item/bodypart/l_arm/robot(Tsec) + new /obj/item/robot_parts/l_arm(Tsec) var/datum/effect_system/spark_spread/s = new /datum/effect_system/spark_spread s.set_up(3, 1, src) diff --git a/code/modules/mob/living/simple_animal/constructs.dm b/code/modules/mob/living/simple_animal/constructs.dm index 99e95131f6..ab4665b2da 100644 --- a/code/modules/mob/living/simple_animal/constructs.dm +++ b/code/modules/mob/living/simple_animal/constructs.dm @@ -2,7 +2,6 @@ name = "Construct" real_name = "Construct" desc = "" - gender = NEUTER speak_emote = list("hisses") response_help = "thinks better of touching" response_disarm = "flails at" @@ -10,7 +9,7 @@ speak_chance = 1 icon = 'icons/mob/mob.dmi' speed = 0 - a_intent = INTENT_HARM + a_intent = "harm" stop_automated_movement = 1 status_flags = CANPUSH attack_sound = 'sound/weapons/punch1.ogg' @@ -21,8 +20,8 @@ maxbodytemp = INFINITY healable = 0 faction = list("cult") - movement_type = FLYING - pressure_resistance = 100 + flying = 1 + pressure_resistance = 200 unique_name = 1 AIStatus = AI_OFF //normal constructs don't have AI loot = list(/obj/item/weapon/ectoplasm) @@ -37,21 +36,14 @@ for(var/spell in construct_spells) AddSpell(new spell(null)) -/mob/living/simple_animal/hostile/construct/Login() - ..() - src << playstyle_string - /mob/living/simple_animal/hostile/construct/examine(mob/user) - var/t_He = p_they(TRUE) - var/t_s = p_s() - var/msg = "*---------*\nThis is \icon[src] \a [src]!\n" - msg += "[desc]\n" - if(health < maxHealth) + var/msg = "*---------*\nThis is \icon[src] \a [src]!\n" + if (src.health < src.maxHealth) msg += "" - if(health >= maxHealth/2) - msg += "[t_He] look[t_s] slightly dented.\n" + if (src.health >= src.maxHealth/2) + msg += "It looks slightly dented.\n" else - msg += "[t_He] look[t_s] severely dented!\n" + msg += "It looks severely dented!\n" msg += "" msg += "*---------*" @@ -62,15 +54,15 @@ if(health < maxHealth) adjustHealth(-5) if(src != M) - Beam(M,icon_state="sendbeam",time=4) + Beam(M,icon_state="sendbeam",icon='icons/effects/effects.dmi',time=4) M.visible_message("[M] repairs some of \the [src]'s dents.", \ "You repair some of [src]'s dents, leaving [src] at [health]/[maxHealth] health.") else - M.visible_message("[M] repairs some of [p_their()] own dents.", \ + M.visible_message("[M] repairs some of its own dents.", \ "You repair some of your own dents, leaving you at [M.health]/[M.maxHealth] health.") else if(src != M) - M << "You cannot repair [src]'s dents, as [p_they()] [p_have()] none!" + M << "You cannot repair [src]'s dents, as it has none!" else M << "You cannot repair your own dents, as you have none!" else if(src != M) @@ -82,8 +74,6 @@ /mob/living/simple_animal/hostile/construct/narsie_act() return -/mob/living/simple_animal/hostile/construct/electrocute_act(shock_damage, obj/source, siemens_coeff = 1, safety = 0, tesla_shock = 0, illusion = 0) - return 0 /////////////////Juggernaut/////////////// @@ -97,7 +87,6 @@ health = 250 response_harm = "harmlessly punches" harm_intent_damage = 0 - obj_damage = 90 melee_damage_lower = 30 melee_damage_upper = 30 attacktext = "smashes their armored gauntlet into" @@ -176,7 +165,6 @@ health = 50 response_harm = "viciously beats" harm_intent_damage = 5 - obj_damage = 60 melee_damage_lower = 5 melee_damage_upper = 5 retreat_distance = 10 diff --git a/code/modules/mob/living/simple_animal/corpse.dm b/code/modules/mob/living/simple_animal/corpse.dm index f0f9c74b17..095d0f5699 100644 --- a/code/modules/mob/living/simple_animal/corpse.dm +++ b/code/modules/mob/living/simple_animal/corpse.dm @@ -20,7 +20,7 @@ back = /obj/item/weapon/storage/backpack has_id = 1 id_job = "Operative" - id_access_list = list(access_syndicate) + id_access = "Syndicate" /obj/effect/mob_spawn/human/corpse/syndicatecommando name = "Syndicate Commando" @@ -35,7 +35,7 @@ pocket1 = /obj/item/weapon/tank/internals/emergency_oxygen has_id = 1 id_job = "Operative" - id_access_list = list(access_syndicate) + id_access = "Syndicate" /obj/effect/mob_spawn/human/corpse/syndicatestormtrooper name = "Syndicate Stormtrooper" @@ -49,7 +49,7 @@ back = /obj/item/weapon/tank/jetpack/oxygen/harness has_id = 1 id_job = "Operative" - id_access_list = list(access_syndicate) + id_access = "Syndicate" @@ -111,7 +111,7 @@ name = "Space Wizard" uniform = /obj/item/clothing/under/color/lightpurple suit = /obj/item/clothing/suit/wizrobe - shoes = /obj/item/clothing/shoes/sandal/magic + shoes = /obj/item/clothing/shoes/sandal helmet = /obj/item/clothing/head/wizard diff --git a/code/modules/mob/living/simple_animal/damage_procs.dm b/code/modules/mob/living/simple_animal/damage_procs.dm deleted file mode 100644 index b39bc1bbe1..0000000000 --- a/code/modules/mob/living/simple_animal/damage_procs.dm +++ /dev/null @@ -1,30 +0,0 @@ - -/mob/living/simple_animal/proc/adjustHealth(amount) - if(status_flags & GODMODE) - return 0 - bruteloss = Clamp(bruteloss + amount, 0, maxHealth) - updatehealth() - return amount - -/mob/living/simple_animal/adjustBruteLoss(amount) - if(damage_coeff[BRUTE]) - . = adjustHealth(amount * damage_coeff[BRUTE] * config.damage_multiplier) - -/mob/living/simple_animal/adjustFireLoss(amount) - if(damage_coeff[BURN]) - . = adjustHealth(amount * damage_coeff[BURN] * config.damage_multiplier) - -/mob/living/simple_animal/adjustOxyLoss(amount) - if(damage_coeff[OXY]) - . = adjustHealth(amount * damage_coeff[OXY] * config.damage_multiplier) - -/mob/living/simple_animal/adjustToxLoss(amount) - if(damage_coeff[TOX]) - . = adjustHealth(amount * damage_coeff[TOX] * config.damage_multiplier) - -/mob/living/simple_animal/adjustCloneLoss(amount) - if(damage_coeff[CLONE]) - . = adjustHealth(amount * damage_coeff[CLONE] * config.damage_multiplier) - -/mob/living/simple_animal/adjustStaminaLoss(amount) - return diff --git a/code/modules/mob/living/simple_animal/friendly/butterfly.dm b/code/modules/mob/living/simple_animal/friendly/butterfly.dm index 869d067cd7..276d8a4e38 100644 --- a/code/modules/mob/living/simple_animal/friendly/butterfly.dm +++ b/code/modules/mob/living/simple_animal/friendly/butterfly.dm @@ -14,9 +14,9 @@ harm_intent_damage = 1 friendly = "nudges" density = 0 - movement_type = FLYING + flying = 1 pass_flags = PASSTABLE | PASSGRILLE | PASSMOB - ventcrawler = VENTCRAWLER_ALWAYS + ventcrawler = 2 mob_size = MOB_SIZE_TINY gold_core_spawnable = 2 verb_say = "flutters" @@ -26,5 +26,4 @@ /mob/living/simple_animal/butterfly/New() ..() - var/newcolor = rgb(rand(0, 255), rand(0, 255), rand(0, 255)) - add_atom_colour(newcolor, FIXED_COLOUR_PRIORITY) + color = rgb(rand(0, 255), rand(0, 255), rand(0, 255)) diff --git a/code/modules/mob/living/simple_animal/friendly/cat.dm b/code/modules/mob/living/simple_animal/friendly/cat.dm index 87b60089b5..91940fc69f 100644 --- a/code/modules/mob/living/simple_animal/friendly/cat.dm +++ b/code/modules/mob/living/simple_animal/friendly/cat.dm @@ -14,7 +14,7 @@ speak_chance = 1 turns_per_move = 5 see_in_dark = 6 - ventcrawler = VENTCRAWLER_ALWAYS + ventcrawler = 2 pass_flags = PASSTABLE mob_size = MOB_SIZE_SMALL minbodytemp = 200 @@ -56,7 +56,6 @@ /mob/living/simple_animal/pet/cat/original name = "Batsy" desc = "The product of alien DNA and bored geneticists." - gender = FEMALE icon_state = "original" icon_living = "original" icon_dead = "original_dead" @@ -67,6 +66,7 @@ icon_state = "kitten" icon_living = "kitten" icon_dead = "kitten_dead" + gender = NEUTER density = 0 pass_flags = PASSMOB mob_size = MOB_SIZE_SMALL @@ -80,19 +80,18 @@ icon_dead = "cat_dead" gender = FEMALE gold_core_spawnable = 0 - var/list/family = list()//var restored from savefile, has count of each child type - var/list/children = list()//Actual mob instances of children - var/cats_deployed = 0 - var/memory_saved = 0 +// var/list/family = list() +// var/cats_deployed = 0 +// var/memory_saved = 0 /mob/living/simple_animal/pet/cat/Runtime/New() if(prob(5)) icon_state = "original" icon_living = "original" icon_dead = "original_dead" - Read_Memory() +// Read_Memory() ..() - +/* /mob/living/simple_animal/pet/cat/Runtime/Life() if(!cats_deployed && ticker.current_state >= GAME_STATE_SETTING_UP) Deploy_The_Cats() @@ -100,12 +99,6 @@ Write_Memory() ..() -/mob/living/simple_animal/pet/cat/Runtime/make_babies() - var/mob/baby = ..() - if(baby) - children += baby - return baby - /mob/living/simple_animal/pet/cat/Runtime/death() if(!memory_saved) Write_Memory(1) @@ -122,7 +115,7 @@ var/savefile/S = new /savefile("data/npc_saves/Runtime.sav") family = list() if(!dead) - for(var/mob/living/simple_animal/pet/cat/kitten/C in children) + for(var/mob/living/simple_animal/pet/cat/C in mob_list) if(istype(C,type) || C.stat || !C.z || !C.butcher_results) //That last one is a work around for hologram cats continue if(C.type in family) @@ -138,10 +131,9 @@ if(family[cat_type] > 0) for(var/i in 1 to min(family[cat_type],100)) //Limits to about 500 cats, you wouldn't think this would be needed (BUT IT IS) new cat_type(loc) - +*/ /mob/living/simple_animal/pet/cat/Proc name = "Proc" - gender = MALE gold_core_spawnable = 0 /mob/living/simple_animal/pet/cat/Life() @@ -182,7 +174,7 @@ ..() - make_babies() +// make_babies() if(!stat && !resting && !buckled) turns_since_scan++ @@ -229,7 +221,6 @@ icon_dead = "cak_dead" health = 50 maxHealth = 50 - gender = FEMALE harm_intent_damage = 10 butcher_results = list(/obj/item/organ/brain = 1, /obj/item/organ/heart = 1, /obj/item/weapon/reagent_containers/food/snacks/cakeslice/birthday = 3, \ /obj/item/weapon/reagent_containers/food/snacks/meat/slab = 2) @@ -268,6 +259,6 @@ /mob/living/simple_animal/pet/cat/cak/attack_hand(mob/living/L) ..() - if(L.a_intent == INTENT_HARM && L.reagents && !stat) + if(L.a_intent == "harm" && L.reagents && !stat) L.reagents.add_reagent("nutriment", 0.4) L.reagents.add_reagent("vitamin", 0.4) diff --git a/code/modules/mob/living/simple_animal/friendly/cockroach.dm b/code/modules/mob/living/simple_animal/friendly/cockroach.dm index b2304913ea..9d6a9ab7f6 100644 --- a/code/modules/mob/living/simple_animal/friendly/cockroach.dm +++ b/code/modules/mob/living/simple_animal/friendly/cockroach.dm @@ -1,3 +1,5 @@ + + /mob/living/simple_animal/cockroach name = "cockroach" desc = "This station is just crawling with bugs." @@ -14,15 +16,11 @@ response_help = "pokes" response_disarm = "shoos" response_harm = "splats" - speak_emote = list("chitters") density = 0 - ventcrawler = VENTCRAWLER_ALWAYS + ventcrawler = 2 gold_core_spawnable = 2 - verb_say = "chitters" - verb_ask = "chitters inquisitively" - verb_exclaim = "chitters loudly" - verb_yell = "chitters loudly" var/squish_chance = 50 + loot = list(/obj/effect/decal/cleanable/deadcockroach) del_on_death = 1 /mob/living/simple_animal/cockroach/death(gibbed) @@ -30,10 +28,6 @@ return ..() -/mob/living/simple_animal/cockroach/proc/squish() - adjustBruteLoss(1) // kills a normal cockroach - new /obj/effect/decal/cleanable/deadcockroach(get_turf(src)) - /mob/living/simple_animal/cockroach/Crossed(var/atom/movable/AM) if(ismob(AM)) if(isliving(AM)) @@ -41,14 +35,14 @@ if(A.mob_size > MOB_SIZE_SMALL) if(prob(squish_chance)) A.visible_message("\The [A] squashed \the [name].", "You squashed \the [name].") - squish() + death() else visible_message("\The [name] avoids getting crushed.") else if(isobj(AM)) if(istype(AM,/obj/structure)) visible_message("As \the [AM] moved over \the [name], it was crushed.") - squish() + death() /mob/living/simple_animal/cockroach/ex_act() //Explosions are a terrible way to handle a cockroach. return @@ -59,3 +53,4 @@ icon = 'icons/effects/blood.dmi' icon_state = "xfloor1" random_icon_states = list("xfloor1", "xfloor2", "xfloor3", "xfloor4", "xfloor5", "xfloor6", "xfloor7") + layer = ABOVE_OPEN_TURF_LAYER diff --git a/code/modules/mob/living/simple_animal/friendly/crab.dm b/code/modules/mob/living/simple_animal/friendly/crab.dm index 8cad712bee..f79aa45a3a 100644 --- a/code/modules/mob/living/simple_animal/friendly/crab.dm +++ b/code/modules/mob/living/simple_animal/friendly/crab.dm @@ -16,7 +16,7 @@ response_harm = "stomps" stop_automated_movement = 1 friendly = "pinches" - ventcrawler = VENTCRAWLER_ALWAYS + ventcrawler = 2 var/obj/item/inventory_head var/obj/item/inventory_mask gold_core_spawnable = 2 @@ -39,7 +39,6 @@ name = "Coffee" real_name = "Coffee" desc = "It's Coffee, the other pet!" - gender = FEMALE response_help = "pets" response_disarm = "gently pushes aside" response_harm = "stomps" diff --git a/code/modules/mob/living/simple_animal/friendly/dog.dm b/code/modules/mob/living/simple_animal/friendly/dog.dm index 2f2319c949..757fcd220d 100644 --- a/code/modules/mob/living/simple_animal/friendly/dog.dm +++ b/code/modules/mob/living/simple_animal/friendly/dog.dm @@ -22,6 +22,7 @@ icon_state = "corgi" icon_living = "corgi" icon_dead = "corgi_dead" + gender = MALE butcher_results = list(/obj/item/weapon/reagent_containers/food/snacks/meat/slab/corgi = 3, /obj/item/stack/sheet/animalhide/corgi = 1) childtype = list(/mob/living/simple_animal/pet/dog/corgi/puppy = 95, /mob/living/simple_animal/pet/dog/corgi/puppy/void = 5) animal_species = /mob/living/simple_animal/pet/dog @@ -75,10 +76,10 @@ //helmet and armor = 100% protection if( istype(inventory_head,/obj/item/clothing/head/helmet) && istype(inventory_back,/obj/item/clothing/suit/armor) ) if( O.force ) - user << "[src] is wearing too much armor! You can't cause [p_them()] any damage." + user << "[src] is wearing too much armor! You can't cause \him any damage." visible_message("[user] hits [src] with [O], however [src] is too armored.") else - user << "[src] is wearing too much armor! You can't reach [p_their()] skin." + user << "[src] is wearing too much armor! You can't reach \his skin." visible_message("[user] gently taps [src] with [O].") if(health>0 && prob(15)) emote("me", 1, "looks at [user] with [pick("an amused","an annoyed","a confused","a resentful", "a happy", "an excited")] expression.") @@ -113,7 +114,7 @@ //Removing from inventory if(href_list["remove_inv"]) - if(!Adjacent(usr) || !(ishuman(usr) || ismonkey(usr) || iscyborg(usr) || isalienadult(usr))) + if(!Adjacent(usr) || !(ishuman(usr) || ismonkey(usr) || isrobot(usr) || isalienadult(usr))) return var/remove_from = href_list["remove_inv"] switch(remove_from) @@ -140,21 +141,21 @@ //Adding things to inventory else if(href_list["add_inv"]) - if(!Adjacent(usr) || !(ishuman(usr) || ismonkey(usr) || iscyborg(usr) || isalienadult(usr))) + if(!Adjacent(usr) || !(ishuman(usr) || ismonkey(usr) || isrobot(usr) || isalienadult(usr))) return var/add_to = href_list["add_inv"] switch(add_to) if("head") - place_on_head(usr.get_active_held_item(),usr) + place_on_head(usr.get_active_hand(),usr) if("back") if(inventory_back) usr << "It's already wearing something!" return else - var/obj/item/item_to_add = usr.get_active_held_item() + var/obj/item/item_to_add = usr.get_active_hand() if(!item_to_add) usr.visible_message("[usr] pets [src].","You rest your hand on [src]'s back for a moment.") @@ -224,10 +225,10 @@ if(valid) if(health <= 0) - user << "There is merely a dull, lifeless look in [real_name]'s eyes as you put the [item_to_add] on [p_them()]." + user << "There is merely a dull, lifeless look in [real_name]'s eyes as you put the [item_to_add] on \him." else if(user) user.visible_message("[user] puts [item_to_add] on [real_name]'s head. [src] looks at [user] and barks once.", - "You put [item_to_add] on [real_name]'s head. [src] gives you a peculiar look, then wags [p_their()] tail once and barks.", + "You put [item_to_add] on [real_name]'s head. [src] gives you a peculiar look, then wags \his tail once and barks.", "You hear a friendly-sounding bark.") item_to_add.loc = src src.inventory_head = item_to_add @@ -254,7 +255,7 @@ emote_hear = list("barks!", "woofs!", "yaps.","pants.") emote_see = list("shakes its head.", "chases its tail.","shivers.") desc = initial(desc) - SetLuminosity(0) + set_light(0) if(inventory_head && inventory_head.dog_fashion) var/datum/dog_fashion/DF = new inventory_head.dog_fashion(src) @@ -282,26 +283,22 @@ var/saved_head //path /mob/living/simple_animal/pet/dog/corgi/Ian/New() - ..() - //parent call must happen first to ensure IAN - //is not in nullspace when child puppies spawn Read_Memory() if(age == 0) - var/turf/target = get_turf(loc) - if(target) - var/mob/living/simple_animal/pet/dog/corgi/puppy/P = new /mob/living/simple_animal/pet/dog/corgi/puppy(target) - P.name = "Ian" - P.real_name = "Ian" - P.gender = MALE - P.desc = "It's the HoP's beloved corgi puppy." - Write_Memory(0) - qdel(src) + var/mob/living/simple_animal/pet/dog/corgi/puppy/P = new /mob/living/simple_animal/pet/dog/corgi/puppy(loc) + P.name = "Ian" + P.real_name = "Ian" + P.gender = MALE + P.desc = "It's the HoP's beloved corgi puppy." + Write_Memory(0) + qdel(src) else if(age == record_age) icon_state = "old_corgi" icon_living = "old_corgi" icon_dead = "old_corgi_dead" desc = "At a ripe old age of [record_age] Ian's not as spry as he used to be, but he'll always be the HoP's beloved corgi." //RIP turns_per_move = 20 + ..() /mob/living/simple_animal/pet/dog/corgi/Ian/Life() if(ticker.current_state == GAME_STATE_FINISHED && !memory_saved) @@ -403,12 +400,8 @@ var/image/head_icon var/datum/dog_fashion.DF = new inventory_head.dog_fashion(src) - if(!DF.obj_icon_state) - DF.obj_icon_state = inventory_head.icon_state - if(!DF.obj_alpha) - DF.obj_alpha = inventory_head.alpha - if(!DF.obj_color) - DF.obj_color = inventory_head.color + if(!DF.icon_state) + DF.icon_state = inventory_head.icon_state if(health <= 0) head_icon = DF.get_image(dir = EAST) @@ -423,12 +416,8 @@ var/image/back_icon var/datum/dog_fashion.DF = new inventory_back.dog_fashion(src) - if(!DF.obj_icon_state) - DF.obj_icon_state = inventory_back.icon_state - if(!DF.obj_alpha) - DF.obj_alpha = inventory_back.alpha - if(!DF.obj_color) - DF.obj_color = inventory_back.color + if(!DF.icon_state) + DF.icon_state = inventory_back.icon_state if(health <= 0) back_icon = DF.get_image(dir = EAST) @@ -512,7 +501,7 @@ /mob/living/simple_animal/pet/dog/corgi/Lisa/Life() ..() - make_babies() +// make_babies() if(!stat && !resting && !buckled) if(prob(1)) diff --git a/code/modules/mob/living/simple_animal/friendly/drone/_drone.dm b/code/modules/mob/living/simple_animal/friendly/drone/_drone.dm index f344613cef..b503cdd2cb 100644 --- a/code/modules/mob/living/simple_animal/friendly/drone/_drone.dm +++ b/code/modules/mob/living/simple_animal/friendly/drone/_drone.dm @@ -22,12 +22,13 @@ icon_state = "drone_maint_grey" icon_living = "drone_maint_grey" icon_dead = "drone_maint_dead" + gender = NEUTER health = 30 maxHealth = 30 unsuitable_atmos_damage = 0 wander = 0 speed = 0 - ventcrawler = VENTCRAWLER_ALWAYS + ventcrawler = 2 healable = 0 density = 0 pass_flags = PASSTABLE | PASSMOB @@ -45,9 +46,7 @@ staticOverlays = list() hud_possible = list(DIAG_STAT_HUD, DIAG_HUD, ANTAG_HUD) unique_name = TRUE - faction = list("neutral","silicon","turret") - dextrous = TRUE - dextrous_hud_type = /datum/hud/dextrous/drone + faction = list("silicon") var/staticChoice = "static" var/list/staticChoices = list("static", "blank", "letter", "animal") var/picked = FALSE //Have we picked our visual appearence (+ colour if applicable) @@ -55,7 +54,7 @@ var/laws = \ "1. You may not involve yourself in the matters of another being, even if such matters conflict with Law Two or Law Three, unless the other being is another Drone.\n"+\ "2. You may not harm any being, regardless of intent or circumstance.\n"+\ - "3. Your goals are to build, maintain, repair, improve, and power the station to the best of your abilities, You must never actively work against these goals." + "3. Your goals are to build, maintain, repair, improve, and power to the best of your abilities, You must never actively work against these goals." var/light_on = 0 var/heavy_emp_damage = 25 //Amount of damage sustained if hit by a heavy EMP pulse var/alarms = list("Atmosphere" = list(), "Fire" = list(), "Power" = list()) @@ -66,7 +65,7 @@ var/seeStatic = 1 //Whether we see static instead of mobs var/visualAppearence = MAINTDRONE //What we appear as var/hacked = 0 //If we have laws to destroy the station - var/can_be_held = TRUE //if assholes can pick us up + var/datum/personal_crafting/handcrafting /mob/living/simple_animal/drone/New() . = ..() @@ -77,7 +76,7 @@ if(default_storage) var/obj/item/I = new default_storage(src) - equip_to_slot_or_del(I, slot_generic_dextrous_storage) + equip_to_slot_or_del(I, slot_drone_storage) if(default_hatmask) var/obj/item/I = new default_hatmask(src) equip_to_slot_or_del(I, slot_head) @@ -92,20 +91,17 @@ else verbs -= /mob/living/simple_animal/drone/verb/toggle_statics + handcrafting = new() var/datum/atom_hud/data/diagnostic/diag_hud = huds[DATA_HUD_DIAGNOSTIC] diag_hud.add_to_hud(src) /mob/living/simple_animal/drone/med_hud_set_health() var/image/holder = hud_list[DIAG_HUD] - var/icon/I = icon(icon, icon_state, dir) - holder.pixel_y = I.Height() - world.icon_size holder.icon_state = "huddiag[RoundDiagBar(health/maxHealth)]" /mob/living/simple_animal/drone/med_hud_set_status() var/image/holder = hud_list[DIAG_STAT_HUD] - var/icon/I = icon(icon, icon_state, dir) - holder.pixel_y = I.Height() - world.icon_size if(stat == DEAD) holder.icon_state = "huddead2" else if(incapacitated()) @@ -113,6 +109,9 @@ else holder.icon_state = "hudstat" +/mob/living/simple_animal/drone/OpenCraftingMenu() + handcrafting.ui_interact(src) + /mob/living/simple_animal/drone/Destroy() qdel(access_card) //Otherwise it ends up on the floor! return ..() @@ -129,6 +128,8 @@ /mob/living/simple_animal/drone/death(gibbed) ..(gibbed) + drop_l_hand() + drop_r_hand() if(internal_storage) unEquip(internal_storage) if(head) @@ -140,30 +141,23 @@ /mob/living/simple_animal/drone/gib() dust() -/mob/living/simple_animal/drone/ratvar_act() - if(internal_storage) - unEquip(internal_storage) - if(head) - unEquip(head) - var/mob/living/simple_animal/drone/cogscarab/ratvar/R = new /mob/living/simple_animal/drone/cogscarab/ratvar(loc) - R.setDir(dir) - if(mind) - mind.transfer_to(R, 1) - else - R.key = key - qdel(src) - /mob/living/simple_animal/drone/examine(mob/user) var/msg = "*---------*\nThis is \icon[src] \a [src]!\n" - //Hands - for(var/obj/item/I in held_items) - if(!(I.flags & ABSTRACT)) - if(I.blood_DNA) - msg += "It has \icon[I] [I.gender==PLURAL?"some":"a"] blood-stained [I.name] in its [get_held_index_name(get_held_index_of_item(I))]!\n" - else - msg += "It has \icon[I] \a [I] in its [get_held_index_name(get_held_index_of_item(I))].\n" + //Left hand items + if(l_hand && !(l_hand.flags&ABSTRACT)) + if(l_hand.blood_DNA) + msg += "It is holding \icon[l_hand] [l_hand.gender==PLURAL?"some":"a"] blood-stained [l_hand.name] in its left hand!\n" + else + msg += "It is holding \icon[l_hand] \a [l_hand] in its left hand.\n" + + //Right hand items + if(r_hand && !(r_hand.flags&ABSTRACT)) + if(r_hand.blood_DNA) + msg += "It is holding \icon[r_hand] [r_hand.gender==PLURAL?"some":"a"] blood-stained [r_hand.name] in its right hand!\n" + else + msg += "It is holding \icon[r_hand] \a [r_hand] in its right hand.\n" //Internal storage if(internal_storage && !(internal_storage.flags&ABSTRACT)) @@ -189,10 +183,10 @@ //Damaged if(health != maxHealth) - if(health > maxHealth * 0.33) //Between maxHealth and about a third of maxHealth, between 30 and 10 for normal drones + if(health > 10) //Between 30 and 10 msg += "Its screws are slightly loose.\n" - else //otherwise, below about 33% - msg += "Its screws are very loose!\n" + else //Between 9 and 0 + msg += "Its screws are very loose!\n" //Dead if(stat == DEAD) @@ -203,6 +197,17 @@ msg += "*---------*" user << msg +/mob/living/simple_animal/drone/IsAdvancedToolUser() + return 1 + + +/mob/living/simple_animal/drone/canUseTopic(atom/movable/M, be_close = 0) + if(incapacitated()) + return 0 + if(be_close && !in_range(M, src)) + return 0 + return 1 + /mob/living/simple_animal/drone/assess_threat() //Secbots won't hunt maintenance drones. return -10 @@ -251,7 +256,7 @@ /mob/living/simple_animal/drone/handle_temperature_damage() return -/mob/living/simple_animal/drone/flash_act(intensity = 1, override_blindness_check = 0, affect_silicon = 0) +/mob/living/simple_animal/drone/flash_eyes(intensity = 1, override_blindness_check = 0, affect_silicon = 0) if(affect_silicon) return ..() @@ -264,9 +269,9 @@ /mob/living/simple_animal/drone/experience_pressure_difference(pressure_difference, direction) return +/mob/living/simple_animal/drone/fully_heal(admin_revive = 0) + adjustBruteLoss(-getBruteLoss()) //Heal all brute damage + /mob/living/simple_animal/drone/bee_friendly() // Why would bees pay attention to drones? return 1 - -/mob/living/simple_animal/drone/electrocute_act(shock_damage, obj/source, siemens_coeff = 1, safety = 0, tesla_shock = 0, illusion = 0) - return 0 //So they don't die trying to fix wiring diff --git a/code/modules/mob/living/simple_animal/friendly/drone/drones_as_items.dm b/code/modules/mob/living/simple_animal/friendly/drone/drones_as_items.dm index 61e29c0c76..b8dda34bd7 100644 --- a/code/modules/mob/living/simple_animal/friendly/drone/drones_as_items.dm +++ b/code/modules/mob/living/simple_animal/friendly/drone/drones_as_items.dm @@ -35,10 +35,9 @@ user << "Can't become a drone before the game has started." return var/be_drone = alert("Become a drone? (Warning, You can no longer be cloned!)",,"Yes","No") - if(be_drone == "No" || qdeleted(src) || !isobserver(user)) + if(be_drone == "No" || qdeleted(src)) return var/mob/living/simple_animal/drone/D = new drone_type(get_turf(loc)) - D.admin_spawned = admin_spawned D.key = user.key qdel(src) @@ -55,7 +54,7 @@ if(!drone) return - if(isliving(loc)) + if(istype(loc, /mob/living)) var/mob/living/L = loc L << "[drone] is trying to escape!" if(!do_after(drone, 50, target = L)) @@ -74,7 +73,7 @@ /obj/item/clothing/head/drone_holder/relaymove() uncurl() -/obj/item/clothing/head/drone_holder/container_resist(mob/living/user) +/obj/item/clothing/head/drone_holder/container_resist() uncurl() diff --git a/code/modules/mob/living/simple_animal/friendly/drone/extra_drone_types.dm b/code/modules/mob/living/simple_animal/friendly/drone/extra_drone_types.dm index 37f8d82f5a..811a2ad5fe 100644 --- a/code/modules/mob/living/simple_animal/friendly/drone/extra_drone_types.dm +++ b/code/modules/mob/living/simple_animal/friendly/drone/extra_drone_types.dm @@ -28,7 +28,6 @@ default_storage = /obj/item/device/radio/uplink default_hatmask = /obj/item/clothing/head/helmet/space/hardsuit/syndi seeStatic = 0 //Our programming is superior. - hacked = TRUE /mob/living/simple_animal/drone/syndrone/New() ..() @@ -98,26 +97,19 @@ picked = TRUE languages_spoken = RATVAR languages_understood = HUMAN|RATVAR - pass_flags = PASSTABLE - health = 50 - maxHealth = 50 - harm_intent_damage = 5 + health = 60 + maxHealth = 60 + hacked = 1 density = TRUE - speed = 1 - ventcrawler = VENTCRAWLER_NONE + ventcrawler = 0 faction = list("ratvar") - speak_emote = list("clanks", "clinks", "clunks", "clangs") - verb_ask = "requests" - verb_exclaim = "proclaims" - verb_yell = "harangues" + speak_emote = list("clinks", "clunks") bubble_icon = "clock" - heavy_emp_damage = 0 + heavy_emp_damage = 10 laws = "0. Purge all untruths and honor Ratvar." default_storage = /obj/item/weapon/storage/toolbox/brass/prefilled seeStatic = 0 - hacked = TRUE visualAppearence = CLOCKDRONE - can_be_held = FALSE /mob/living/simple_animal/drone/cogscarab/ratvar //a subtype for spawning when ratvar is alive, has a slab that it can use and a normal proselytizer default_storage = /obj/item/weapon/storage/toolbox/brass/prefilled/ratvar @@ -127,7 +119,7 @@ /mob/living/simple_animal/drone/cogscarab/New() . = ..() - SetLuminosity(2,1) + set_light(2,1) qdel(access_card) //we don't have free access access_card = null verbs -= /mob/living/simple_animal/drone/verb/check_laws @@ -137,48 +129,13 @@ /mob/living/simple_animal/drone/cogscarab/Login() ..() add_servant_of_ratvar(src, TRUE) - src << "You are a cogscarab, a clockwork creation of Ratvar. As a cogscarab, you have low health, an inbuilt proselytizer that can convert brass \ - to liquified alloy, a set of relatively fast tools, can communicate over the Hierophant Network with :b, and are immune to extreme \ + src << "You are a cogscarab, a clockwork creation of Ratvar. As a cogscarab, you have low health, an inbuilt proselytizer that can convert rods, \ + metal, and plasteel to alloy, a set of relatively fast tools, can communicate over the Hierophant Network with :b, and are immune to extreme \ temperatures and pressures. \nYour goal is to serve the Justiciar and his servants by repairing and defending all they create. \ - \nYou yourself are one of these servants, and will be able to utilize almost anything they can, excluding a clockwork slab." - -/mob/living/simple_animal/drone/cogscarab/binarycheck() - return FALSE - -/mob/living/simple_animal/drone/cogscarab/alert_drones(msg, dead_can_hear = 0) - if(msg == DRONE_NET_CONNECT) - msg = "Hierophant Network: [name] activated." - else if(msg == DRONE_NET_DISCONNECT) - msg = "Hierophant Network: [name] disabled." - ..() - -/mob/living/simple_animal/drone/attackby(obj/item/I, mob/user) - if(istype(I, /obj/item/weapon/screwdriver) && stat == DEAD) - try_reactivate(user) - else - ..() - -/mob/living/simple_animal/drone/cogscarab/try_reactivate(mob/living/user) - if(!is_servant_of_ratvar(user)) - user << "You fiddle around with [src] to no avail." - else - ..() - -/mob/living/simple_animal/drone/cogscarab/can_use_guns(obj/item/weapon/gun/G) - changeNext_move(CLICK_CD_RANGE*4) //about as much delay as an unupgraded kinetic accelerator - return TRUE - -/mob/living/simple_animal/drone/cogscarab/triggerAlarm(class, area/A, O, obj/alarmsource) - return - -/mob/living/simple_animal/drone/cogscarab/cancelAlarm(class, area/A, obj/origin) - return + \nYou yourself are one of these servants, and will be able to utilize almost anything they can, excluding a clockwork slab." /mob/living/simple_animal/drone/cogscarab/update_drone_hack() return //we don't get hacked or give a shit about it /mob/living/simple_animal/drone/cogscarab/drone_chat(msg) - titled_hierophant_message(src, msg, "nezbere", "brass", "Construct") //HIEROPHANT DRONES - -/mob/living/simple_animal/drone/cogscarab/ratvar_act() - fully_heal(TRUE) + send_hierophant_message(src, msg, "heavy_alloy") //HIEROPHANT DRONES diff --git a/code/modules/mob/living/simple_animal/friendly/drone/interaction.dm b/code/modules/mob/living/simple_animal/friendly/drone/interaction.dm index d884482ae5..fba7b98f18 100644 --- a/code/modules/mob/living/simple_animal/friendly/drone/interaction.dm +++ b/code/modules/mob/living/simple_animal/friendly/drone/interaction.dm @@ -6,36 +6,65 @@ //How the world interacts with drones -/mob/living/simple_animal/drone/attack_drone(mob/living/simple_animal/drone/D) - if(D != src && stat == DEAD) - var/d_input = alert(D,"Perform which action?","Drone Interaction","Reactivate","Cannibalize","Nothing") - if(d_input) - switch(d_input) - if("Reactivate") - try_reactivate(D) - - if("Cannibalize") - if(D.health < D.maxHealth) - D.visible_message("[D] begins to cannibalize parts from [src].", "You begin to cannibalize parts from [src]...") - if(do_after(D, 60, 0, target = src)) - D.visible_message("[D] repairs itself using [src]'s remains!", "You repair yourself using [src]'s remains.") - D.adjustBruteLoss(-src.maxHealth) - new /obj/effect/decal/cleanable/oil/streak(get_turf(src)) - qdel(src) - else - D << "You need to remain still to cannibalize [src]!" - else - D << "You're already in perfect condition!" - if("Nothing") - return +/mob/living/simple_animal/drone/UnarmedAttack(atom/A, proximity) + A.attack_hand(src) /mob/living/simple_animal/drone/attack_hand(mob/user) + if(isdrone(user)) + var/mob/living/simple_animal/drone/D = user + if(D != src) + if(stat == DEAD) + var/d_input = alert(D,"Perform which action?","Drone Interaction","Reactivate","Cannibalize","Nothing") + if(d_input) + switch(d_input) + if("Reactivate") + var/mob/dead/observer/G = get_ghost() + if(!client && (!G || !G.client)) + var/list/faux_gadgets = list("hypertext inflator","failsafe directory","DRM switch","stack initializer",\ + "anti-freeze capacitor","data stream diode","TCP bottleneck","supercharged I/O bolt",\ + "tradewind stablizer","radiated XML cable","registry fluid tank","open-source debunker") + + var/list/faux_problems = list("won't be able to tune their bootstrap projector","will constantly remix their binary pool"+\ + " even though the BMX calibrator is working","will start leaking their XSS coolant",\ + "can't tell if their ethernet detour is moving or not", "won't be able to reseed enough"+\ + " kernels to function properly","can't start their neurotube console") + + D << "You can't seem to find the [pick(faux_gadgets)]! Without it, [src] [pick(faux_problems)]." + return + D.visible_message("[D] begins to reactivate [src].", "You begin to reactivate [src]...") + if(do_after(user,30, 1, target = src)) + revive(full_heal = 1) + D.visible_message("[D] reactivates [src]!", "You reactivate [src].") + alert_drones(DRONE_NET_CONNECT) + if(G) + G << "DRONE NETWORK: You were reactivated by [D]!" + else + D << "You need to remain still to reactivate [src]!" + + if("Cannibalize") + if(D.health < D.maxHealth) + D.visible_message("[D] begins to cannibalize parts from [src].", "You begin to cannibalize parts from [src]...") + if(do_after(D, 60, 0, target = src)) + D.visible_message("[D] repairs itself using [src]'s remains!", "You repair yourself using [src]'s remains.") + D.adjustBruteLoss(-src.maxHealth) + new /obj/effect/decal/cleanable/oil/streak(get_turf(src)) + qdel(src) + else + D << "You need to remain still to cannibalize [src]!" + else + D << "You're already in perfect condition!" + if("Nothing") + return + + return + + if(ishuman(user)) - if(stat == DEAD || status_flags & GODMODE || !can_be_held) + if(stat == DEAD || status_flags & GODMODE) ..() return - if(user.get_active_held_item()) + if(user.get_active_hand()) user << "Your hands are full!" return visible_message("[user] starts picking up [src].", \ @@ -48,45 +77,25 @@ user << "[src] is buckled to [buckled] and cannot be picked up!" return user << "You pick [src] up." - drop_all_held_items() + drop_l_hand() + drop_r_hand() var/obj/item/clothing/head/drone_holder/DH = new /obj/item/clothing/head/drone_holder(src) DH.updateVisualAppearence(src) DH.drone = src user.put_in_hands(DH) forceMove(DH) - -/mob/living/simple_animal/drone/proc/try_reactivate(mob/living/user) - var/mob/dead/observer/G = get_ghost() - if(!client && (!G || !G.client)) - var/list/faux_gadgets = list("hypertext inflator","failsafe directory","DRM switch","stack initializer",\ - "anti-freeze capacitor","data stream diode","TCP bottleneck","supercharged I/O bolt",\ - "tradewind stablizer","radiated XML cable","registry fluid tank","open-source debunker") - - var/list/faux_problems = list("won't be able to tune their bootstrap projector","will constantly remix their binary pool"+\ - " even though the BMX calibrator is working","will start leaking their XSS coolant",\ - "can't tell if their ethernet detour is moving or not", "won't be able to reseed enough"+\ - " kernels to function properly","can't start their neurotube console") - - user << "You can't seem to find the [pick(faux_gadgets)]! Without it, [src] [pick(faux_problems)]." return - user.visible_message("[user] begins to reactivate [src].", "You begin to reactivate [src]...") - if(do_after(user, 30, 1, target = src)) - revive(full_heal = 1) - user.visible_message("[user] reactivates [src]!", "You reactivate [src].") - alert_drones(DRONE_NET_CONNECT) - if(G) - G << "You([name]) were reactivated by [user]!" - else - user << "You need to remain still to reactivate [src]!" + + ..() /mob/living/simple_animal/drone/attackby(obj/item/I, mob/user) if(istype(I, /obj/item/weapon/screwdriver) && stat != DEAD) if(health < maxHealth) user << "You start to tighten loose screws on [src]..." - if(do_after(user,80*I.toolspeed,target=user)) + if(do_after(user,80/I.toolspeed,target=user)) adjustBruteLoss(-getBruteLoss()) - visible_message("[user] tightens [src == user ? "[user.p_their()]" : "[src]'s"] loose screws!", "You tighten [src == user ? "your" : "[src]'s"] loose screws.") + visible_message("[user] tightens [src == user ? "their" : "[src]'s"] loose screws!", "You tighten [src == user ? "your" : "[src]'s"] loose screws.") else user << "You need to remain still to tighten [src]'s screws!" else @@ -95,8 +104,8 @@ else if(istype(I, /obj/item/weapon/wrench) && user != src) //They aren't required to be hacked, because laws can change in other ways (i.e. admins) user.visible_message("[user] starts resetting [src]...", \ "You press down on [src]'s factory reset control...") - playsound(src, I.usesound, 50, 1) - if(!do_after(user, 50*I.toolspeed, target = src)) + playsound(src, 'sound/items/Ratchet.ogg', 50, 1) + if(!do_after(user, 50/I.toolspeed, target = src)) return user.visible_message("[user] resets [src]!", \ "You reset [src]'s directives to factory defaults!") @@ -105,16 +114,6 @@ else ..() -/mob/living/simple_animal/drone/getarmor(def_zone, type) - var/armorval = 0 - - if(head) - armorval = head.armor[type] - return (armorval * get_armor_effectiveness()) //armor is reduced for tiny fragile drones - -/mob/living/simple_animal/drone/proc/get_armor_effectiveness() - return 0 //multiplier for whatever head armor you wear as a drone - /mob/living/simple_animal/drone/proc/update_drone_hack(hack, clockwork) if(!istype(src) || !mind) return @@ -140,7 +139,7 @@ hacked = 1 mind.special_role = "hacked drone" seeStatic = 0 //I MUST SEE THEIR TERRIFIED FACES - ventcrawler = VENTCRAWLER_NONE //Again, balance + ventcrawler = 0 //Again, balance speed = 1 //gotta go slow message_admins("[src] ([src.key]) became a hacked drone hellbent on [clockwork ? "serving Ratvar" : "destroying the station"]!") else @@ -199,3 +198,4 @@ name = "Select Vision Filter" button_icon_state = "drone_vision" procname = /mob/living/simple_animal/drone/verb/toggle_statics + diff --git a/code/modules/mob/living/simple_animal/friendly/drone/inventory.dm b/code/modules/mob/living/simple_animal/friendly/drone/inventory.dm index 1437e77e56..51bc2316b5 100644 --- a/code/modules/mob/living/simple_animal/friendly/drone/inventory.dm +++ b/code/modules/mob/living/simple_animal/friendly/drone/inventory.dm @@ -6,6 +6,42 @@ //Drone hands + + +/mob/living/simple_animal/drone/activate_hand(selhand) + + if(istext(selhand)) + selhand = lowertext(selhand) + + if(selhand == "right" || selhand == "r") + selhand = 0 + if(selhand == "left" || selhand == "l") + selhand = 1 + + if(selhand != src.hand) + swap_hand() + else + mode() + + +/mob/living/simple_animal/drone/swap_hand() + var/obj/item/held_item = get_active_hand() + if(held_item) + if(istype(held_item, /obj/item/weapon/twohanded)) + var/obj/item/weapon/twohanded/T = held_item + if(T.wielded == 1) + usr << "Your other hand is too busy holding the [T.name]." + return + + hand = !hand + if(hud_used && hud_used.inv_slots[slot_l_hand] && hud_used.inv_slots[slot_r_hand]) + var/obj/screen/inventory/hand/H + H = hud_used.inv_slots[slot_l_hand] + H.update_icon() + H = hud_used.inv_slots[slot_r_hand] + H.update_icon() + + /mob/living/simple_animal/drone/unEquip(obj/item/I, force) if(..(I,force)) update_inv_hands() @@ -27,7 +63,7 @@ if(!((I.slot_flags & SLOT_HEAD) || (I.slot_flags & SLOT_MASK))) return 0 return 1 - if(slot_generic_dextrous_storage) + if(slot_drone_storage) if(internal_storage) return 0 return 1 @@ -38,7 +74,7 @@ switch(slot_id) if(slot_head) return head - if(slot_generic_dextrous_storage) + if(slot_drone_storage) return internal_storage ..() @@ -49,9 +85,10 @@ if(!istype(I)) return - var/index = get_held_index_of_item(I) - if(index) - held_items[index] = null + if(I == l_hand) + l_hand = null + else if(I == r_hand) + r_hand = null update_inv_hands() if(I.pulledby) @@ -59,25 +96,30 @@ I.screen_loc = null // will get moved if inventory is visible I.loc = src + I.equipped(src, slot) I.layer = ABOVE_HUD_LAYER - I.plane = ABOVE_HUD_PLANE switch(slot) if(slot_head) head = I update_inv_head() - if(slot_generic_dextrous_storage) + if(slot_drone_storage) internal_storage = I update_inv_internal_storage() else src << "You are trying to equip this item to an unsupported inventory slot. Report this to a coder!" return - //Call back for item being equipped to drone - I.equipped(src, slot) + +/mob/living/simple_animal/drone/stripPanelUnequip(obj/item/what, mob/who, where) + ..(what, who, where, 1) + + +/mob/living/simple_animal/drone/stripPanelEquip(obj/item/what, mob/who, where) + ..(what, who, where, 1) /mob/living/simple_animal/drone/getBackSlot() - return slot_generic_dextrous_storage + return slot_drone_storage /mob/living/simple_animal/drone/getBeltSlot() - return slot_generic_dextrous_storage + return slot_drone_storage diff --git a/code/modules/mob/living/simple_animal/friendly/drone/say.dm b/code/modules/mob/living/simple_animal/friendly/drone/say.dm index 4210947ef3..49551de240 100644 --- a/code/modules/mob/living/simple_animal/friendly/drone/say.dm +++ b/code/modules/mob/living/simple_animal/friendly/drone/say.dm @@ -6,7 +6,7 @@ /mob/living/simple_animal/drone/handle_inherent_channels(message, message_mode) if(message_mode == MODE_BINARY) drone_chat(message) - return 1 + return ITALICS | REDUCE_RANGE else ..() @@ -14,29 +14,16 @@ /mob/living/simple_animal/drone/get_spans() return ..() | SPAN_ROBOT - - -//Base proc for anything to call -/proc/_alert_drones(msg, dead_can_hear = 0, list/factions) +/mob/living/simple_animal/drone/proc/alert_drones(msg, dead_can_hear = 0) for(var/W in mob_list) var/mob/living/simple_animal/drone/M = W - if(istype(M) && M.stat != DEAD) - if(factions && factions.len) - var/list/friendly = factions&M.faction - if(friendly.len) - M << msg - else - M << msg + if(istype(M) && M.stat != DEAD && faction_check(M)) //if it's a living drone with matching factions, it gets a message + M << msg if(dead_can_hear && (M in dead_mob_list)) var/link = FOLLOW_LINK(M, src) M << "[link] [msg]" -//Wrapper for drones to handle factions -/mob/living/simple_animal/drone/proc/alert_drones(msg, dead_can_hear = 0) - _alert_drones(msg, dead_can_hear, faction) - - /mob/living/simple_animal/drone/proc/drone_chat(msg) var/rendered = "Drone Chat: \ [name]: \ diff --git a/code/modules/mob/living/simple_animal/friendly/drone/verbs.dm b/code/modules/mob/living/simple_animal/friendly/drone/verbs.dm index c231ec56e4..1390b589a5 100644 --- a/code/modules/mob/living/simple_animal/friendly/drone/verbs.dm +++ b/code/modules/mob/living/simple_animal/friendly/drone/verbs.dm @@ -16,9 +16,9 @@ set category = "Drone" set name = "Toggle drone light" if(light_on) - AddLuminosity(-8) + set_light(0) else - AddLuminosity(8) + set_light(8) light_on = !light_on @@ -51,4 +51,3 @@ staticChoice = selectedStatic updateSeeStaticMobs() - diff --git a/code/modules/mob/living/simple_animal/friendly/drone/visuals_icons.dm b/code/modules/mob/living/simple_animal/friendly/drone/visuals_icons.dm index 95c18b53f4..6ebc4d8066 100644 --- a/code/modules/mob/living/simple_animal/friendly/drone/visuals_icons.dm +++ b/code/modules/mob/living/simple_animal/friendly/drone/visuals_icons.dm @@ -18,13 +18,10 @@ drone_overlays[cache_index] = null -/mob/living/simple_animal/drone/update_inv_hands() +/mob/living/simple_animal/drone/proc/update_inv_hands() remove_overlay(DRONE_HANDS_LAYER) var/list/hands_overlays = list() - var/obj/item/l_hand = get_item_for_held_index(1) - var/obj/item/r_hand = get_item_for_held_index(2) - var/y_shift = getItemPixelShiftY() if(r_hand) @@ -41,8 +38,7 @@ if(client && hud_used && hud_used.hud_version != HUD_STYLE_NOHUD) r_hand.layer = ABOVE_HUD_LAYER - r_hand.plane = ABOVE_HUD_PLANE - r_hand.screen_loc = ui_hand_position(get_held_index_of_item(r_hand)) + r_hand.screen_loc = ui_rhand client.screen |= r_hand if(l_hand) @@ -59,8 +55,7 @@ if(client && hud_used && hud_used.hud_version != HUD_STYLE_NOHUD) l_hand.layer = ABOVE_HUD_LAYER - l_hand.plane = ABOVE_HUD_PLANE - l_hand.screen_loc = ui_hand_position(get_held_index_of_item(l_hand)) + l_hand.screen_loc = ui_lhand client.screen |= l_hand @@ -92,6 +87,16 @@ apply_overlay(DRONE_HEAD_LAYER) + +//These procs serve as redirection so that the drone updates as expected when other things call these procs +/mob/living/simple_animal/drone/update_inv_l_hand() + update_inv_hands() + + +/mob/living/simple_animal/drone/update_inv_r_hand() + update_inv_hands() + + /mob/living/simple_animal/drone/update_inv_wear_mask() update_inv_head() diff --git a/code/modules/mob/living/simple_animal/friendly/farm_animals.dm b/code/modules/mob/living/simple_animal/friendly/farm_animals.dm index 044aae6a0f..bff53a79dd 100644 --- a/code/modules/mob/living/simple_animal/friendly/farm_animals.dm +++ b/code/modules/mob/living/simple_animal/friendly/farm_animals.dm @@ -50,25 +50,25 @@ src.visible_message("[src] calms down.") if(stat == CONSCIOUS) udder.generateMilk() - var/obj/structure/spacevine/SV = locate(/obj/structure/spacevine) in loc - if(SV) + if(locate(/obj/effect/spacevine) in loc) + var/obj/effect/spacevine/SV = locate(/obj/effect/spacevine) in loc SV.eat(src) if(!pulledby) for(var/direction in shuffle(list(1,2,4,8,5,6,9,10))) var/step = get_step(src, direction) if(step) - if(locate(/obj/structure/spacevine) in step) + if(locate(/obj/effect/spacevine) in step) Move(step, get_dir(src, step)) /mob/living/simple_animal/hostile/retaliate/goat/Retaliate() ..() - src.visible_message("[src] gets an evil-looking gleam in [p_their()] eye.") + src.visible_message("[src] gets an evil-looking gleam in \his eye.") /mob/living/simple_animal/hostile/retaliate/goat/Move() ..() if(!stat) - var/obj/structure/spacevine/SV = locate(/obj/structure/spacevine) in loc - if(SV) + if(locate(/obj/effect/spacevine) in loc) + var/obj/effect/spacevine/SV = locate(/obj/effect/spacevine) in loc SV.eat(src) /mob/living/simple_animal/hostile/retaliate/goat/attackby(obj/item/O, mob/user, params) @@ -86,7 +86,6 @@ icon_living = "cow" icon_dead = "cow_dead" icon_gib = "cow_gib" - gender = FEMALE speak = list("moo?","moo","MOOOOOO") speak_emote = list("moos","moos hauntingly") emote_hear = list("brays.") @@ -128,7 +127,7 @@ udder.generateMilk() /mob/living/simple_animal/cow/attack_hand(mob/living/carbon/M) - if(!stat && M.a_intent == INTENT_DISARM && icon_state != icon_dead) + if(!stat && M.a_intent == "disarm" && icon_state != icon_dead) M.visible_message("[M] tips over [src].", "You tip over [src].") src << "You are tipped over by [M]!" @@ -160,7 +159,6 @@ icon_living = "chick" icon_dead = "chick_dead" icon_gib = "chick_gib" - gender = FEMALE speak = list("Cherp.","Cherp?","Chirrup.","Cheep!") speak_emote = list("cheeps") emote_hear = list("cheeps.") @@ -175,7 +173,7 @@ attacktext = "kicks" health = 3 maxHealth = 3 - ventcrawler = VENTCRAWLER_ALWAYS + ventcrawler = 2 var/amount_grown = 0 pass_flags = PASSTABLE | PASSGRILLE | PASSMOB mob_size = MOB_SIZE_TINY @@ -206,7 +204,6 @@ var/global/chicken_count = 0 /mob/living/simple_animal/chicken name = "\improper chicken" desc = "Hopefully the eggs are good this season." - gender = FEMALE icon_state = "chicken_brown" icon_living = "chicken_brown" icon_dead = "chicken_brown_dead" @@ -226,7 +223,7 @@ var/global/chicken_count = 0 attacktext = "kicks" health = 15 maxHealth = 15 - ventcrawler = VENTCRAWLER_ALWAYS + ventcrawler = 2 var/eggsleft = 0 var/eggsFertile = TRUE var/body_color @@ -301,7 +298,6 @@ var/global/chicken_count = 0 reagents = new(50) reagents.my_atom = src reagents.add_reagent("milk", 20) - ..() /obj/item/udder/proc/generateMilk() if(prob(5)) diff --git a/code/modules/mob/living/simple_animal/friendly/fox.dm b/code/modules/mob/living/simple_animal/friendly/fox.dm index 86b4fbf5a8..2371ba8c00 100644 --- a/code/modules/mob/living/simple_animal/friendly/fox.dm +++ b/code/modules/mob/living/simple_animal/friendly/fox.dm @@ -23,5 +23,4 @@ /mob/living/simple_animal/pet/fox/Renault name = "Renault" desc = "Renault, the Captain's trustworthy fox." - gender = FEMALE gold_core_spawnable = 0 diff --git a/code/modules/mob/living/simple_animal/friendly/lizard.dm b/code/modules/mob/living/simple_animal/friendly/lizard.dm index fe9cccabae..56fee31a41 100644 --- a/code/modules/mob/living/simple_animal/friendly/lizard.dm +++ b/code/modules/mob/living/simple_animal/friendly/lizard.dm @@ -9,17 +9,17 @@ maxHealth = 5 faction = list("Lizard") attacktext = "bites" + attacktext = "bites" melee_damage_lower = 1 melee_damage_upper = 2 response_help = "pets" response_disarm = "shoos" response_harm = "stomps on" - ventcrawler = VENTCRAWLER_ALWAYS + ventcrawler = 2 density = 0 pass_flags = PASSTABLE | PASSMOB mob_size = MOB_SIZE_SMALL gold_core_spawnable = 2 - obj_damage = 0 environment_smash = 0 var/list/edibles = list(/mob/living/simple_animal/butterfly,/mob/living/simple_animal/cockroach) //list of atoms, however turfs won't affect AI, but will affect consumption. @@ -37,4 +37,4 @@ target = null adjustBruteLoss(-2) else - ..() + ..() \ No newline at end of file diff --git a/code/modules/mob/living/simple_animal/friendly/mouse.dm b/code/modules/mob/living/simple_animal/friendly/mouse.dm index 3dc0e000b6..1a52e018ba 100644 --- a/code/modules/mob/living/simple_animal/friendly/mouse.dm +++ b/code/modules/mob/living/simple_animal/friendly/mouse.dm @@ -18,7 +18,7 @@ response_disarm = "gently pushes aside" response_harm = "splats" density = 0 - ventcrawler = VENTCRAWLER_ALWAYS + ventcrawler = 2 pass_flags = PASSTABLE | PASSGRILLE | PASSMOB mob_size = MOB_SIZE_TINY var/body_color //brown, gray and white, leave blank for random @@ -46,7 +46,7 @@ M.icon_state = icon_dead M.name = name if(toast) - M.add_atom_colour("#3A3A3A", FIXED_COLOUR_PRIORITY) + M.color = "#3A3A3A" M.desc = "It's toast." qdel(src) else @@ -69,10 +69,10 @@ if(C.avail()) visible_message("[src] chews through the [C]. It's toast!") playsound(src, 'sound/effects/sparks2.ogg', 100, 1) - C.deconstruct() + C.Deconstruct() death(toast=1) else - C.deconstruct() + C.Deconstruct() visible_message("[src] chews through the [C].") /* diff --git a/code/modules/mob/living/simple_animal/friendly/pet.dm b/code/modules/mob/living/simple_animal/friendly/pet.dm index fd28543a15..ecd7e4b6c8 100644 --- a/code/modules/mob/living/simple_animal/friendly/pet.dm +++ b/code/modules/mob/living/simple_animal/friendly/pet.dm @@ -1,14 +1,14 @@ /mob/living/simple_animal/pet icon = 'icons/mob/pets.dmi' mob_size = MOB_SIZE_SMALL - var/obj/item/clothing/neck/petcollar/pcollar = null + var/obj/item/clothing/tie/petcollar/pcollar = null var/image/collar = null var/image/pettag = null blood_volume = BLOOD_VOLUME_NORMAL /mob/living/simple_animal/pet/attackby(obj/item/O, mob/user, params) - if(istype(O, /obj/item/clothing/neck/petcollar) && !pcollar) - var/obj/item/clothing/neck/petcollar/P = O + if(istype(O, /obj/item/clothing/tie/petcollar) && !pcollar) + var/obj/item/clothing/tie/petcollar/P = O pcollar = P collar = image('icons/mob/pets.dmi', src, "[icon_state]collar") pettag = image('icons/mob/pets.dmi', src, "[icon_state]tag") diff --git a/code/modules/mob/living/simple_animal/friendly/sloth.dm b/code/modules/mob/living/simple_animal/friendly/sloth.dm deleted file mode 100644 index 2953a7cc91..0000000000 --- a/code/modules/mob/living/simple_animal/friendly/sloth.dm +++ /dev/null @@ -1,41 +0,0 @@ -/mob/living/simple_animal/sloth - name = "sloth" - desc = "An adorable, sleepy creature." - icon = 'icons/mob/pets.dmi' - icon_state = "sloth" - icon_living = "sloth" - icon_dead = "sloth_dead" - speak_emote = list("yawns") - emote_hear = list("snores.","yawns.") - emote_see = list("dozes off.", "looks around sleepily.") - speak_chance = 1 - turns_per_move = 5 - butcher_results = list(/obj/item/weapon/reagent_containers/food/snacks/meat/slab = 3) - response_help = "pets" - response_disarm = "gently pushes aside" - response_harm = "kicks" - gold_core_spawnable = 2 - melee_damage_lower = 18 - melee_damage_upper = 18 - health = 50 - maxHealth = 50 - speed = 2 - - -//Cargo Sloth -/mob/living/simple_animal/sloth/paperwork - name = "Paperwork" - desc = "Cargo's pet sloth. About as useful as the rest of the techs." - gold_core_spawnable = 0 - -//Cargo Sloth 2 - -/mob/living/simple_animal/sloth/citrus - name = "Citrus" - desc = "Cargo's pet sloth. She's dressed in a horrible sweater." - icon_state = "cool_sloth" - icon_living = "cool_sloth" - icon_dead = "cool_sloth_dead" - gender = FEMALE - butcher_results = list(/obj/item/toy/spinningtoy = 1) - gold_core_spawnable = 0 \ No newline at end of file diff --git a/code/modules/mob/living/simple_animal/guardian/guardian.dm b/code/modules/mob/living/simple_animal/guardian/guardian.dm index 0adbf952a7..01c621bda0 100644 --- a/code/modules/mob/living/simple_animal/guardian/guardian.dm +++ b/code/modules/mob/living/simple_animal/guardian/guardian.dm @@ -1,15 +1,11 @@ var/global/list/parasites = list() //all currently existing/living guardians -#define GUARDIAN_HANDS_LAYER 1 -#define GUARDIAN_TOTAL_LAYERS 1 - /mob/living/simple_animal/hostile/guardian name = "Guardian Spirit" real_name = "Guardian Spirit" desc = "A mysterious being that stands by its charge, ever vigilant." speak_emote = list("hisses") - gender = NEUTER bubble_icon = "guardian" response_help = "passes through" response_disarm = "flails at" @@ -19,9 +15,9 @@ var/global/list/parasites = list() //all currently existing/living guardians icon_living = "magicOrange" icon_dead = "magicOrange" speed = 0 - a_intent = INTENT_HARM + a_intent = "harm" stop_automated_movement = 1 - movement_type = FLYING // Immunity to chasms and landmines, etc. + flying = 1 // Immunity to chasms and landmines, etc. attack_sound = 'sound/weapons/punch1.ogg' atmos_requirements = list("min_oxy" = 0, "max_oxy" = 0, "min_tox" = 0, "max_tox" = 0, "min_co2" = 0, "max_co2" = 0, "min_n2" = 0, "max_n2" = 0) minbodytemp = 0 @@ -29,16 +25,12 @@ var/global/list/parasites = list() //all currently existing/living guardians attacktext = "punches" maxHealth = INFINITY //The spirit itself is invincible health = INFINITY - healable = FALSE //don't brusepack the guardian damage_coeff = list(BRUTE = 0.5, BURN = 0.5, TOX = 0.5, CLONE = 0.5, STAMINA = 0, OXY = 0.5) //how much damage from each damage type we transfer to the owner environment_smash = 1 - obj_damage = 40 melee_damage_lower = 15 melee_damage_upper = 15 butcher_results = list(/obj/item/weapon/ectoplasm = 1) AIStatus = AI_OFF - dextrous_hud_type = /datum/hud/dextrous/guardian //if we're set to dextrous, account for it. - var/list/guardian_overlays[GUARDIAN_TOTAL_LAYERS] var/reset = 0 //if the summoner has reset the guardian already var/cooldown = 0 var/mob/living/summoner @@ -64,8 +56,6 @@ var/global/list/parasites = list() //all currently existing/living guardians /mob/living/simple_animal/hostile/guardian/med_hud_set_status() if(summoner) var/image/holder = hud_list[STATUS_HUD] - var/icon/I = icon(icon, icon_state, dir) - holder.pixel_y = I.Height() - world.icon_size if(summoner.stat == DEAD) holder.icon_state = "huddead" else @@ -101,7 +91,7 @@ var/global/list/parasites = list() //all currently existing/living guardians bubble_icon = "[namedatum.bubbleicon]" if (namedatum.stainself) - add_atom_colour(namedatum.colour, FIXED_COLOUR_PRIORITY) + color = namedatum.colour //Special case holocarp, because #snowflake code if(theme == "carp") @@ -131,7 +121,6 @@ var/global/list/parasites = list() //all currently existing/living guardians med_hud_set_status() if(summoner) if(summoner.stat == DEAD) - forceMove(summoner.loc) src << "Your summoner has died!" visible_message("\The [src] dies along with its user!") summoner.visible_message("[summoner]'s body is completely consumed by the strain of sustaining [src]!") @@ -139,12 +128,12 @@ var/global/list/parasites = list() //all currently existing/living guardians if(!summoner.unEquip(W)) qdel(W) summoner.dust() - death(TRUE) + ghostize() qdel(src) else src << "Your summoner has died!" visible_message("The [src] dies along with its user!") - death(TRUE) + ghostize() qdel(src) snapback() @@ -154,7 +143,7 @@ var/global/list/parasites = list() //all currently existing/living guardians if(summoner) var/resulthealth if(iscarbon(summoner)) - resulthealth = round((abs(HEALTH_THRESHOLD_DEAD - summoner.health) / abs(HEALTH_THRESHOLD_DEAD - summoner.maxHealth)) * 100) + resulthealth = round((abs(config.health_threshold_dead - summoner.health) / abs(config.health_threshold_dead - summoner.maxHealth)) * 100) else resulthealth = round((summoner.health / summoner.maxHealth) * 100, 0.5) stat(null, "Summoner Health: [resulthealth]%") @@ -188,17 +177,15 @@ var/global/list/parasites = list() //all currently existing/living guardians return 1 /mob/living/simple_animal/hostile/guardian/death() - drop_all_held_items() ..() - if(summoner) - summoner << "Your [name] died somehow!" - summoner.death() + summoner << "Your [name] died somehow!" + summoner.death() /mob/living/simple_animal/hostile/guardian/update_health_hud() if(summoner && hud_used && hud_used.healths) var/resulthealth if(iscarbon(summoner)) - resulthealth = round((abs(HEALTH_THRESHOLD_DEAD - summoner.health) / abs(HEALTH_THRESHOLD_DEAD - summoner.maxHealth)) * 100) + resulthealth = round((abs(config.health_threshold_dead - summoner.health) / abs(config.health_threshold_dead - summoner.maxHealth)) * 100) else resulthealth = round((summoner.health / summoner.maxHealth) * 100, 0.5) hud_used.healths.maptext = "
    [resulthealth]%
    " @@ -234,82 +221,6 @@ var/global/list/parasites = list() //all currently existing/living guardians ghostize() qdel(src) -//HAND HANDLING - -/mob/living/simple_animal/hostile/guardian/equip_to_slot(obj/item/I, slot) - if(!slot) - return FALSE - if(!istype(I)) - return FALSE - - . = TRUE - var/index = get_held_index_of_item(I) - if(index) - held_items[index] = null - update_inv_hands() - - if(I.pulledby) - I.pulledby.stop_pulling() - - I.screen_loc = null // will get moved if inventory is visible - I.loc = src - I.equipped(src, slot) - I.layer = ABOVE_HUD_LAYER - I.plane = ABOVE_HUD_PLANE - -/mob/living/simple_animal/hostile/guardian/proc/apply_overlay(cache_index) - var/image/I = guardian_overlays[cache_index] - if(I) - add_overlay(I) - -/mob/living/simple_animal/hostile/guardian/proc/remove_overlay(cache_index) - if(guardian_overlays[cache_index]) - overlays -= guardian_overlays[cache_index] - guardian_overlays[cache_index] = null - -/mob/living/simple_animal/hostile/guardian/update_inv_hands() - remove_overlay(GUARDIAN_HANDS_LAYER) - var/list/hands_overlays = list() - var/obj/item/l_hand = get_item_for_held_index(1) - var/obj/item/r_hand = get_item_for_held_index(2) - - if(r_hand) - var/r_state = r_hand.item_state - if(!r_state) - r_state = r_hand.icon_state - - var/image/r_hand_image = r_hand.build_worn_icon(state = r_state, default_layer = GUARDIAN_HANDS_LAYER, default_icon_file = r_hand.righthand_file, isinhands = TRUE) - - hands_overlays += r_hand_image - - if(client && hud_used && hud_used.hud_version != HUD_STYLE_NOHUD) - r_hand.layer = ABOVE_HUD_LAYER - r_hand.plane = ABOVE_HUD_PLANE - r_hand.screen_loc = ui_hand_position(get_held_index_of_item(r_hand)) - client.screen |= r_hand - - if(l_hand) - var/l_state = l_hand.item_state - if(!l_state) - l_state = l_hand.icon_state - - var/image/l_hand_image = l_hand.build_worn_icon(state = l_state, default_layer = GUARDIAN_HANDS_LAYER, default_icon_file = l_hand.lefthand_file, isinhands = TRUE) - - hands_overlays += l_hand_image - - if(client && hud_used && hud_used.hud_version != HUD_STYLE_NOHUD) - l_hand.layer = ABOVE_HUD_LAYER - l_hand.plane = ABOVE_HUD_PLANE - l_hand.screen_loc = ui_hand_position(get_held_index_of_item(l_hand)) - client.screen |= l_hand - - if(hands_overlays.len) - guardian_overlays[GUARDIAN_HANDS_LAYER] = hands_overlays - apply_overlay(GUARDIAN_HANDS_LAYER) - -/mob/living/simple_animal/hostile/guardian/regenerate_icons() - update_inv_hands() - //MANIFEST, RECALL, TOGGLE MODE/LIGHT, SHOW TYPE /mob/living/simple_animal/hostile/guardian/proc/Manifest() @@ -337,10 +248,10 @@ var/global/list/parasites = list() //all currently existing/living guardians /mob/living/simple_animal/hostile/guardian/proc/ToggleLight() if(!luminosity) src << "You activate your light." - SetLuminosity(3) + set_light(3) else src << "You deactivate your light." - SetLuminosity(0) + set_light(0) /mob/living/simple_animal/hostile/guardian/verb/ShowType() set name = "Check Guardian Type" @@ -469,16 +380,12 @@ var/global/list/parasites = list() //all currently existing/living guardians var/used_message = "All the cards seem to be blank now." var/failure_message = "..And draw a card! It's...blank? Maybe you should try again later." var/ling_failure = "The deck refuses to respond to a souless creature such as you." - var/list/possible_guardians = list("Assassin", "Chaos", "Charger", "Explosive", "Lightning", "Protector", "Ranged", "Standard", "Support") + var/list/possible_guardians = list("Chaos", "Standard", "Ranged", "Support", "Explosive", "Lightning", "Protector", "Charger", "Assassin") var/random = TRUE - var/allowmultiple = FALSE - var/allowling = TRUE - var/allowguardian = FALSE + var/allowmultiple = 0 + var/allowling = 1 /obj/item/weapon/guardiancreator/attack_self(mob/living/user) - if(isguardian(user) && !allowguardian) - user << "[mob_name] chains are not allowed." - return var/list/guardians = user.hasparasites() if(guardians.len && !allowmultiple) user << "You already have a [mob_name]!" @@ -542,9 +449,6 @@ var/global/list/parasites = list() //all currently existing/living guardians if("Assassin") pickedtype = /mob/living/simple_animal/hostile/guardian/assassin - if("Dextrous") - pickedtype = /mob/living/simple_animal/hostile/guardian/dextrous - var/list/guardians = user.hasparasites() if(guardians.len && !allowmultiple) user << "You already have a [mob_name]!" //nice try, bucko @@ -553,7 +457,7 @@ var/global/list/parasites = list() //all currently existing/living guardians var/mob/living/simple_animal/hostile/guardian/G = new pickedtype(user, theme) G.summoner = user G.key = key - G.mind.enslave_mind_to_creator(user) + G.faction |= user.faction switch(theme) if("tech") user << "[G.tech_fluff_string]" @@ -589,9 +493,6 @@ var/global/list/parasites = list() //all currently existing/living guardians /obj/item/weapon/guardiancreator/tech/choose random = FALSE -/obj/item/weapon/guardiancreator/tech/choose/dextrous - possible_guardians = list("Assassin", "Chaos", "Charger", "Dextrous", "Explosive", "Lightning", "Protector", "Ranged", "Standard", "Support") - /obj/item/weapon/paper/guardian name = "Holoparasite Guide" icon_state = "paper_words" @@ -642,8 +543,8 @@ var/global/list/parasites = list() //all currently existing/living guardians used_message = "Someone's already taken a bite out of these fishsticks! Ew." failure_message = "You couldn't catch any carp spirits from the seas of Lake Carp. Maybe there are none, maybe you fucked up." ling_failure = "Carp'sie is fine with changelings, so you shouldn't be seeing this message." - allowmultiple = TRUE - allowling = TRUE + allowmultiple = 1 + allowling = 1 random = TRUE /obj/item/weapon/guardiancreator/carp/choose diff --git a/code/modules/mob/living/simple_animal/guardian/types/assassin.dm b/code/modules/mob/living/simple_animal/guardian/types/assassin.dm index ff2e1c5a6a..d54d501369 100644 --- a/code/modules/mob/living/simple_animal/guardian/types/assassin.dm +++ b/code/modules/mob/living/simple_animal/guardian/types/assassin.dm @@ -51,7 +51,6 @@ melee_damage_lower = initial(melee_damage_lower) melee_damage_upper = initial(melee_damage_upper) armour_penetration = initial(armour_penetration) - obj_damage = initial(obj_damage) environment_smash = initial(environment_smash) alpha = initial(alpha) if(!forced) @@ -69,7 +68,6 @@ melee_damage_lower = 50 melee_damage_upper = 50 armour_penetration = 100 - obj_damage = 0 environment_smash = 0 PoolOrNew(/obj/effect/overlay/temp/guardian/phase/out, get_turf(src)) alpha = 15 diff --git a/code/modules/mob/living/simple_animal/guardian/types/charger.dm b/code/modules/mob/living/simple_animal/guardian/types/charger.dm index 33743138b9..fc519b9214 100644 --- a/code/modules/mob/living/simple_animal/guardian/types/charger.dm +++ b/code/modules/mob/living/simple_animal/guardian/types/charger.dm @@ -38,7 +38,7 @@ /mob/living/simple_animal/hostile/guardian/charger/Move() if(charging) - PoolOrNew(/obj/effect/overlay/temp/decoy/fading, list(loc,src)) + PoolOrNew(/obj/effect/overlay/temp/decoy, list(loc,src)) . = ..() /mob/living/simple_animal/hostile/guardian/charger/snapback() @@ -60,7 +60,9 @@ if(H.check_shields(90, "[name]", src, attack_type = THROWN_PROJECTILE_ATTACK)) blocked = 1 if(!blocked) - L.drop_all_held_items() + + L.drop_r_hand() + L.drop_l_hand() L.visible_message("[src] slams into [L]!", "[src] slams into you!") L.apply_damage(20, BRUTE) playsound(get_turf(L), 'sound/effects/meteorimpact.ogg', 100, 1) diff --git a/code/modules/mob/living/simple_animal/guardian/types/dextrous.dm b/code/modules/mob/living/simple_animal/guardian/types/dextrous.dm deleted file mode 100644 index e86c85e182..0000000000 --- a/code/modules/mob/living/simple_animal/guardian/types/dextrous.dm +++ /dev/null @@ -1,102 +0,0 @@ -//Dextrous -/mob/living/simple_animal/hostile/guardian/dextrous - melee_damage_lower = 10 - melee_damage_upper = 10 - damage_coeff = list(BRUTE = 0.75, BURN = 0.75, TOX = 0.75, CLONE = 0.75, STAMINA = 0, OXY = 0.75) - playstyle_string = "As a dextrous type you can hold items, store an item within yourself, and have medium damage resistance, but do low damage on attacks. Recalling and leashing will force you to drop unstored items!" - magic_fluff_string = "..And draw the Drone, a dextrous master of construction and repair." - tech_fluff_string = "Boot sequence complete. Dextrous combat modules loaded. Holoparasite swarm online." - carp_fluff_string = "CARP CARP CARP! You caught one! It can hold stuff in its fins, sort of." - dextrous = 1 - environment_target_typecache = list( - /obj/machinery/door/window, - /obj/structure/window, - /obj/structure/closet, - /obj/structure/table, - /obj/structure/grille, - /obj/structure/rack, - /obj/structure/barricade, - /obj/machinery/camera) //so we can also attack cameras - var/obj/item/internal_storage //what we're storing within ourself - -/mob/living/simple_animal/hostile/guardian/dextrous/death(gibbed) - ..() - if(internal_storage) - unEquip(internal_storage) - -/mob/living/simple_animal/hostile/guardian/dextrous/examine(mob/user) - if(dextrous) - var/msg = "*---------*\nThis is \icon[src] \a [src]!\n" - msg += "[desc]\n" - - for(var/obj/item/I in held_items) - if(!(I.flags & ABSTRACT)) - if(I.blood_DNA) - msg += "It has \icon[I] [I.gender==PLURAL?"some":"a"] blood-stained [I.name] in its [get_held_index_name(get_held_index_of_item(I))]!\n" - else - msg += "It has \icon[I] \a [I] in its [get_held_index_name(get_held_index_of_item(I))].\n" - - if(internal_storage && !(internal_storage.flags&ABSTRACT)) - if(internal_storage.blood_DNA) - msg += "It is holding \icon[internal_storage] [internal_storage.gender==PLURAL?"some":"a"] blood-stained [internal_storage.name] in its internal storage!\n" - else - msg += "It is holding \icon[internal_storage] \a [internal_storage] in its internal storage.\n" - msg += "*---------*" - user << msg - else - ..() - -/mob/living/simple_animal/hostile/guardian/dextrous/Recall() - if(loc == summoner || cooldown > world.time) - return 0 - drop_all_held_items() - return ..() //lose items, then return - -/mob/living/simple_animal/hostile/guardian/dextrous/snapback() - if(summoner && !(get_dist(get_turf(summoner),get_turf(src)) <= range)) - drop_all_held_items() - ..() //lose items, then return - -//SLOT HANDLING BULLSHIT FOR INTERNAL STORAGE -/mob/living/simple_animal/hostile/guardian/dextrous/unEquip(obj/item/I, force) - if(..(I,force)) - update_inv_hands() - if(I == internal_storage) - internal_storage = null - update_inv_internal_storage() - return 1 - return 0 - -/mob/living/simple_animal/hostile/guardian/dextrous/can_equip(obj/item/I, slot) - switch(slot) - if(slot_generic_dextrous_storage) - if(internal_storage) - return 0 - return 1 - ..() - -/mob/living/simple_animal/hostile/guardian/dextrous/equip_to_slot(obj/item/I, slot) - if(!..()) - return - - switch(slot) - if(slot_generic_dextrous_storage) - internal_storage = I - update_inv_internal_storage() - else - src << "You are trying to equip this item to an unsupported inventory slot. Report this to a coder!" - -/mob/living/simple_animal/hostile/guardian/dextrous/getBackSlot() - return slot_generic_dextrous_storage - -/mob/living/simple_animal/hostile/guardian/dextrous/getBeltSlot() - return slot_generic_dextrous_storage - -/mob/living/simple_animal/hostile/guardian/dextrous/proc/update_inv_internal_storage() - if(internal_storage && client && hud_used && hud_used.hud_shown) - internal_storage.screen_loc = ui_id - client.screen += internal_storage - -/mob/living/simple_animal/hostile/guardian/dextrous/regenerate_icons() - ..() - update_inv_internal_storage() \ No newline at end of file diff --git a/code/modules/mob/living/simple_animal/guardian/types/explosive.dm b/code/modules/mob/living/simple_animal/guardian/types/explosive.dm index a44c6e6d4c..5cbe44e7d2 100644 --- a/code/modules/mob/living/simple_animal/guardian/types/explosive.dm +++ b/code/modules/mob/living/simple_animal/guardian/types/explosive.dm @@ -37,9 +37,9 @@ if(src.loc == summoner) src << "You must be manifested to create bombs!" return - if(isobj(A)) + if(istype(A, /obj/)) if(bomb_cooldown <= world.time && !stat) - var/obj/guardian_bomb/B = new /obj/guardian_bomb(get_turf(A)) + var/obj/item/weapon/guardian_bomb/B = new /obj/item/weapon/guardian_bomb(get_turf(A)) src << "Success! Bomb armed!" bomb_cooldown = world.time + 200 B.spawner = src @@ -47,52 +47,49 @@ else src << "Your powers are on cooldown! You must wait 20 seconds between bombs." -/obj/guardian_bomb +/obj/item/weapon/guardian_bomb name = "bomb" desc = "You shouldn't be seeing this!" var/obj/stored_obj var/mob/living/simple_animal/hostile/guardian/spawner -/obj/guardian_bomb/proc/disguise(obj/A) +/obj/item/weapon/guardian_bomb/proc/disguise(var/obj/A) A.loc = src stored_obj = A opacity = A.opacity anchored = A.anchored density = A.density appearance = A.appearance - addtimer(src, "disable", 600, TIMER_NORMAL) + spawn(600) + stored_obj.loc = get_turf(src.loc) + spawner << "Failure! Your trap didn't catch anyone this time." + qdel(src) -/obj/guardian_bomb/proc/disable() - stored_obj.forceMove(get_turf(src)) - spawner << "Failure! Your trap didn't catch anyone this time." +/obj/item/weapon/guardian_bomb/proc/detonate(var/mob/living/user) + user << "The [src] was boobytrapped!" + spawner << "Success! Your trap caught [user]" + stored_obj.loc = get_turf(src.loc) + playsound(get_turf(src),'sound/effects/Explosion2.ogg', 200, 1) + user.ex_act(2) qdel(src) -/obj/guardian_bomb/proc/detonate(mob/living/user) - if(isliving(user)) - if(user != spawner && user != spawner.summoner && !spawner.hasmatchingsummoner(user)) - user << "The [src] was boobytrapped!" - spawner << "Success! Your trap caught [user]" - var/turf/T = get_turf(src) - stored_obj.forceMove(T) - playsound(T,'sound/effects/Explosion2.ogg', 200, 1) - PoolOrNew(/obj/effect/overlay/temp/explosion, T) - user.ex_act(2) - qdel(src) - else - user << "[src] glows with a strange light, and you don't touch it." +/obj/item/weapon/guardian_bomb/Bump(atom/A) + if(isliving(A) && A != spawner && A != spawner.summoner && !spawner.hasmatchingsummoner(A)) + detonate(A) + else + ..() -/obj/guardian_bomb/Bump(atom/A) - detonate(A) +/obj/item/weapon/guardian_bomb/attackby(mob/living/user) + detonate(user) + return + +/obj/item/weapon/guardian_bomb/pickup(mob/living/user) ..() - -/obj/guardian_bomb/attackby(mob/living/user) detonate(user) + return -/obj/guardian_bomb/attack_hand(mob/living/user) - detonate(user) - -/obj/guardian_bomb/examine(mob/user) +/obj/item/weapon/guardian_bomb/examine(mob/user) stored_obj.examine(user) if(get_dist(user,src)<=2) user << "It glows with a strange light!" diff --git a/code/modules/mob/living/simple_animal/guardian/types/fire.dm b/code/modules/mob/living/simple_animal/guardian/types/fire.dm index 05c7fcc146..2ede892803 100644 --- a/code/modules/mob/living/simple_animal/guardian/types/fire.dm +++ b/code/modules/mob/living/simple_animal/guardian/types/fire.dm @@ -1,6 +1,6 @@ //Fire /mob/living/simple_animal/hostile/guardian/fire - a_intent = INTENT_HELP + a_intent = "help" melee_damage_lower = 7 melee_damage_upper = 7 attack_sound = 'sound/items/Welder.ogg' diff --git a/code/modules/mob/living/simple_animal/guardian/types/lightning.dm b/code/modules/mob/living/simple_animal/guardian/types/lightning.dm index a37b478829..38a03707ef 100644 --- a/code/modules/mob/living/simple_animal/guardian/types/lightning.dm +++ b/code/modules/mob/living/simple_animal/guardian/types/lightning.dm @@ -30,7 +30,7 @@ var/datum/beam/C = pick(enemychains) qdel(C) enemychains -= C - enemychains += Beam(target, "lightning[rand(1,12)]", time=70, maxdistance=7, beam_type=/obj/effect/ebeam/chain) + enemychains += Beam(target,"lightning[rand(1,12)]",'icons/effects/effects.dmi',70, 7,/obj/effect/ebeam/chain) /mob/living/simple_animal/hostile/guardian/beam/Destroy() removechains() @@ -39,7 +39,7 @@ /mob/living/simple_animal/hostile/guardian/beam/Manifest() if(..()) if(summoner) - summonerchain = Beam(summoner, "lightning[rand(1,12)]", time=INFINITY, maxdistance=INFINITY, beam_type=/obj/effect/ebeam/chain) + summonerchain = Beam(summoner,"lightning[rand(1,12)]",'icons/effects/effects.dmi',INFINITY, INFINITY,/obj/effect/ebeam/chain) while(loc != summoner) if(successfulshocks > 5) successfulshocks = 0 @@ -57,7 +57,7 @@ if(summonerchain && !qdeleted(summonerchain)) . += chainshock(summonerchain) else - summonerchain = Beam(summoner, "lightning[rand(1,12)]", time=INFINITY, maxdistance=INFINITY, beam_type=/obj/effect/ebeam/chain) + summonerchain = Beam(summoner,"lightning[rand(1,12)]",'icons/effects/effects.dmi',INFINITY, INFINITY,/obj/effect/ebeam/chain) if(enemychains.len) for(var/chain in enemychains) if(!qdeleted(chain)) diff --git a/code/modules/mob/living/simple_animal/guardian/types/protector.dm b/code/modules/mob/living/simple_animal/guardian/types/protector.dm index 5c04515ddc..275c5bb8f8 100644 --- a/code/modules/mob/living/simple_animal/guardian/types/protector.dm +++ b/code/modules/mob/living/simple_animal/guardian/types/protector.dm @@ -61,7 +61,7 @@ return else summoner << "You moved out of range, and were pulled back! You can only move [range] meters from [real_name]!" - summoner.visible_message("\The [summoner] jumps back to [summoner.p_their()] protector.") + summoner.visible_message("\The [summoner] jumps back to \his protector.") PoolOrNew(/obj/effect/overlay/temp/guardian/phase/out, get_turf(summoner)) summoner.forceMove(get_turf(src)) PoolOrNew(/obj/effect/overlay/temp/guardian/phase, get_turf(summoner)) diff --git a/code/modules/mob/living/simple_animal/guardian/types/ranged.dm b/code/modules/mob/living/simple_animal/guardian/types/ranged.dm index be69f8624e..3d4b665fa8 100644 --- a/code/modules/mob/living/simple_animal/guardian/types/ranged.dm +++ b/code/modules/mob/living/simple_animal/guardian/types/ranged.dm @@ -7,7 +7,7 @@ armour_penetration = 100 /mob/living/simple_animal/hostile/guardian/ranged - a_intent = INTENT_HELP + a_intent = "help" friendly = "quietly assesses" melee_damage_lower = 10 melee_damage_upper = 10 @@ -33,7 +33,6 @@ ranged = initial(ranged) melee_damage_lower = initial(melee_damage_lower) melee_damage_upper = initial(melee_damage_upper) - obj_damage = initial(obj_damage) environment_smash = initial(environment_smash) alpha = 255 range = initial(range) @@ -44,7 +43,6 @@ ranged = 0 melee_damage_lower = 0 melee_damage_upper = 0 - obj_damage = 0 environment_smash = 0 alpha = 45 range = 255 diff --git a/code/modules/mob/living/simple_animal/guardian/types/standard.dm b/code/modules/mob/living/simple_animal/guardian/types/standard.dm index 45624bbaaa..4cff9a0604 100644 --- a/code/modules/mob/living/simple_animal/guardian/types/standard.dm +++ b/code/modules/mob/living/simple_animal/guardian/types/standard.dm @@ -2,7 +2,6 @@ /mob/living/simple_animal/hostile/guardian/punch melee_damage_lower = 20 melee_damage_upper = 20 - obj_damage = 80 next_move_modifier = 0.8 //attacks 20% faster environment_smash = 2 playstyle_string = "As a standard type you have no special abilities, but have a high damage resistance and a powerful attack capable of smashing through walls." diff --git a/code/modules/mob/living/simple_animal/guardian/types/support.dm b/code/modules/mob/living/simple_animal/guardian/types/support.dm index 792e2dda49..889ab1803c 100644 --- a/code/modules/mob/living/simple_animal/guardian/types/support.dm +++ b/code/modules/mob/living/simple_animal/guardian/types/support.dm @@ -1,6 +1,6 @@ //Healer /mob/living/simple_animal/hostile/guardian/healer - a_intent = INTENT_HARM + a_intent = "harm" friendly = "heals" speed = 0 damage_coeff = list(BRUTE = 0.7, BURN = 0.7, TOX = 0.7, CLONE = 0.7, STAMINA = 0, OXY = 0.7) @@ -46,7 +46,7 @@ /mob/living/simple_animal/hostile/guardian/healer/ToggleMode() if(src.loc == summoner) if(toggle) - a_intent = INTENT_HARM + a_intent = "harm" speed = 0 damage_coeff = list(BRUTE = 0.7, BURN = 0.7, TOX = 0.7, CLONE = 0.7, STAMINA = 0, OXY = 0.7) melee_damage_lower = 15 @@ -54,7 +54,7 @@ src << "You switch to combat mode." toggle = FALSE else - a_intent = INTENT_HELP + a_intent = "help" speed = 1 damage_coeff = list(BRUTE = 1, BURN = 1, TOX = 1, CLONE = 1, STAMINA = 0, OXY = 1) melee_damage_lower = 0 @@ -76,7 +76,7 @@ return var/turf/beacon_loc = get_turf(src.loc) - if(!isfloorturf(beacon_loc)) + if(!istype(beacon_loc, /turf/open/floor)) return if(beacon) @@ -103,7 +103,7 @@ /obj/structure/recieving_pad/New(loc, mob/living/simple_animal/hostile/guardian/healer/G) . = ..() if(G.namedatum) - add_atom_colour(G.namedatum.colour, FIXED_COLOUR_PRIORITY) + color = G.namedatum.colour /obj/structure/recieving_pad/proc/disappear() visible_message("[src] vanishes!") @@ -139,7 +139,7 @@ A.visible_message("[A] starts to glow faintly!\ ", "You start to faintly glow, and \ you feel strangely weightless!") - do_attack_animation(A, null, 1) + do_attack_animation(A) if(!do_mob(src, A, 60)) //now start the channel src << "You need to hold still!" @@ -148,7 +148,7 @@ PoolOrNew(/obj/effect/overlay/temp/guardian/phase/out, T) if(isliving(A)) var/mob/living/L = A - L.flash_act() + L.flash_eyes() A.visible_message("[A] disappears in a flash of \ light!", "Your vision is obscured \ by a flash of light!") diff --git a/code/modules/mob/living/simple_animal/hostile/alien.dm b/code/modules/mob/living/simple_animal/hostile/alien.dm index be00d14a18..8dd1a9a63e 100644 --- a/code/modules/mob/living/simple_animal/hostile/alien.dm +++ b/code/modules/mob/living/simple_animal/hostile/alien.dm @@ -6,7 +6,6 @@ icon_living = "alienh_s" icon_dead = "alienh_dead" icon_gib = "syndicate_gib" - gender = FEMALE response_help = "pokes" response_disarm = "shoves" response_harm = "hits" @@ -16,13 +15,12 @@ maxHealth = 125 health = 125 harm_intent_damage = 5 - obj_damage = 60 melee_damage_lower = 25 melee_damage_upper = 25 attacktext = "slashes" speak_emote = list("hisses") bubble_icon = "alien" - a_intent = INTENT_HARM + a_intent = "harm" attack_sound = 'sound/weapons/bladeslice.ogg' atmos_requirements = list("min_oxy" = 0, "max_oxy" = 0, "min_tox" = 0, "max_tox" = 0, "min_co2" = 0, "max_co2" = 0, "min_n2" = 0, "max_n2" = 0) unsuitable_atmos_damage = 15 @@ -109,7 +107,7 @@ LayEggs() /mob/living/simple_animal/hostile/alien/proc/SpreadPlants() - if(!isturf(loc) || isspaceturf(loc)) + if(!isturf(loc) || istype(loc, /turf/open/space)) return if(locate(/obj/structure/alien/weeds/node) in get_turf(src)) return @@ -117,7 +115,7 @@ new /obj/structure/alien/weeds/node(loc) /mob/living/simple_animal/hostile/alien/proc/LayEggs() - if(!isturf(loc) || isspaceturf(loc)) + if(!isturf(loc) || istype(loc, /turf/open/space)) return if(locate(/obj/structure/alien/egg) in get_turf(src)) return @@ -155,9 +153,8 @@ name = "lusty xenomorph maid" melee_damage_lower = 0 melee_damage_upper = 0 - a_intent = INTENT_HELP + a_intent = "help" friendly = "caresses" - obj_damage = 0 environment_smash = 0 gold_core_spawnable = 1 icon_state = "maid" diff --git a/code/modules/mob/living/simple_animal/hostile/bear.dm b/code/modules/mob/living/simple_animal/hostile/bear.dm index 6984d60af3..498f39359b 100644 --- a/code/modules/mob/living/simple_animal/hostile/bear.dm +++ b/code/modules/mob/living/simple_animal/hostile/bear.dm @@ -20,9 +20,7 @@ response_harm = "hits" maxHealth = 60 health = 60 - var/armored = FALSE - obj_damage = 60 melee_damage_lower = 20 melee_damage_upper = 30 attacktext = "claws" @@ -40,7 +38,6 @@ //SPACE BEARS! SQUEEEEEEEE~ OW! FUCK! IT BIT MY HAND OFF!! /mob/living/simple_animal/hostile/bear/Hudson name = "Hudson" - gender = MALE desc = "Feared outlaw, this guy is one bad news bear." //I'm sorry... /mob/living/simple_animal/hostile/bear/snow @@ -48,56 +45,11 @@ icon_state = "snowbear" icon_living = "snowbear" icon_dead = "snowbear_dead" - desc = "It's a polar bear, in space, but not actually in space." - -/mob/living/simple_animal/hostile/bear/russian - name = "combat bear" - desc = "A ferocious brown bear decked out in armor plating, a red star with yellow outlining details the shoulder plating." - icon_state = "combatbear" - icon_living = "combatbear" - icon_dead = "combatbear_dead" - faction = list("russian") - butcher_results = list(/obj/item/weapon/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 - armour_penetration = 20 - health = 120 - maxHealth = 120 - armored = TRUE + desc = "It's a polar bear, in space, but not actually in space. " /mob/living/simple_animal/hostile/bear/Process_Spacemove(movement_dir = 0) return 1 //No drifting in space for space bears! -/mob/living/simple_animal/hostile/bear/update_icons() - ..() - if(armored) - var/image/B = image(icon = 'icons/mob/animal.dmi', icon_state = "armor_bear") - if(B) - add_overlay(B) - -/obj/item/bear_armor - name = "pile of bear armor" - desc = "A scattered pile of various shaped armor pieces fitted for a bear, some duct tape, and a nail filer. Crude instructions \ - are written on the back of one of the plates in russian. This seems like an awful idea." - icon = 'icons/obj/items.dmi' - icon_state = "bear_armor_upgrade" - -/obj/item/bear_armor/afterattack(atom/target, mob/user, proximity_flag) - if(istype(target, /mob/living/simple_animal/hostile/bear) && proximity_flag) - var/mob/living/simple_animal/hostile/bear/A = target - if(A.armored) - user << "[A] has already been armored up!" - return - A.armored = TRUE - A.maxHealth += 60 - A.health += 60 - A.armour_penetration += 20 - A.melee_damage_lower += 5 - A.melee_damage_upper += 5 - A.update_icons() - user << "You strap the armor plating to [A] and sharpen [A.p_their()] claws with the nail filer. This was a great idea." - qdel(src) - diff --git a/code/modules/mob/living/simple_animal/hostile/bees.dm b/code/modules/mob/living/simple_animal/hostile/bees.dm index 84059e663c..90feaca438 100644 --- a/code/modules/mob/living/simple_animal/hostile/bees.dm +++ b/code/modules/mob/living/simple_animal/hostile/bees.dm @@ -6,9 +6,9 @@ #define BEE_TRAY_RECENT_VISIT 200 //How long in deciseconds until a tray can be visited by a bee again #define BEE_DEFAULT_COLOUR "#e5e500" //the colour we make the stripes of the bee if our reagent has no colour (or we have no reagent) -#define BEE_POLLINATE_YIELD_CHANCE 33 +#define BEE_POLLINATE_YIELD_CHANCE 10 #define BEE_POLLINATE_PEST_CHANCE 33 -#define BEE_POLLINATE_POTENCY_CHANCE 50 +#define BEE_POLLINATE_POTENTCY_CHANCE 50 /mob/living/simple_animal/hostile/poison/bees name = "bee" @@ -16,7 +16,6 @@ icon_state = "" icon_living = "" icon = 'icons/mob/bees.dmi' - gender = FEMALE speak_emote = list("buzzes") emote_hear = list("buzzes") turns_per_move = 0 @@ -30,12 +29,11 @@ health = 10 faction = list("hostile") move_to_delay = 0 - obj_damage = 0 environment_smash = 0 mouse_opacity = 2 pass_flags = PASSTABLE | PASSGRILLE | PASSMOB mob_size = MOB_SIZE_TINY - movement_type = FLYING + flying = 1 gold_core_spawnable = 1 search_objects = 1 //have to find those plant trays! @@ -125,7 +123,7 @@ if(istype(A, /obj/machinery/hydroponics)) var/obj/machinery/hydroponics/Hydro = A if(Hydro.myseed && !Hydro.dead && !Hydro.recent_bee_visit) - wanted_objects |= typecacheof(/obj/machinery/hydroponics) //so we only hunt them while they're alive/seeded/not visisted + wanted_objects |= /obj/machinery/hydroponics //so we only hunt them while they're alive/seeded/not visisted return 1 if(isliving(A)) var/mob/living/H = A @@ -142,13 +140,12 @@ var/obj/structure/beebox/BB = target loc = BB target = null - wanted_objects -= typecacheof(/obj/structure/beebox) //so we don't attack beeboxes when not going home + wanted_objects -= /obj/structure/beebox //so we don't attack beeboxes when not going home else if(beegent && isliving(target)) var/mob/living/L = target - if(L.reagents) - beegent.reaction_mob(L, INJECT) - L.reagents.add_reagent(beegent.id, rand(1,5)) + beegent.reaction_mob(L, INJECT) + L.reagents.add_reagent(beegent.id, rand(1,5)) target.attack_animal(src) @@ -165,7 +162,7 @@ return target = null //so we pick a new hydro tray next FindTarget(), instead of loving the same plant for eternity - wanted_objects -= typecacheof(/obj/machinery/hydroponics) //so we only hunt them while they're alive/seeded/not visisted + wanted_objects -= /obj/machinery/hydroponics //so we only hunt them while they're alive/seeded/not visisted Hydro.recent_bee_visit = TRUE spawn(BEE_TRAY_RECENT_VISIT) if(Hydro) @@ -173,14 +170,13 @@ var/growth = health //Health also means how many bees are in the swarm, roughly. //better healthier plants! - Hydro.adjustHealth(growth*0.5) + Hydro.health += round(growth*0.5) if(prob(BEE_POLLINATE_PEST_CHANCE)) - Hydro.adjustPests(-10) - if(prob(BEE_POLLINATE_YIELD_CHANCE)) - Hydro.myseed.adjust_yield(1) - Hydro.yieldmod = 2 - if(prob(BEE_POLLINATE_POTENCY_CHANCE)) - Hydro.myseed.adjust_potency(1) + Hydro.pestlevel = max(0, --Hydro.pestlevel) + if(prob(BEE_POLLINATE_YIELD_CHANCE)) //Yield mod is HELLA powerful, but quite rare + Hydro.myseed.innate_yieldmod++ + if(prob(BEE_POLLINATE_POTENTCY_CHANCE)) + Hydro.myseed.potency++ if(beehome) beehome.bee_resources = min(beehome.bee_resources + growth, 100) @@ -200,7 +196,7 @@ idle = max(0, --idle) if(idle <= BEE_IDLE_GOHOME && prob(BEE_PROB_GOHOME)) if(!FindTarget()) - wanted_objects |= typecacheof(/obj/structure/beebox) //so we don't attack beeboxes when not going home + wanted_objects += /obj/structure/beebox //so we don't attack beeboxes when not going home target = beehome if(!beehome) //add outselves to a beebox (of the same reagent) if we have no home for(var/obj/structure/beebox/BB in view(vision_range, src)) diff --git a/code/modules/mob/living/simple_animal/hostile/bosses/boss.dm b/code/modules/mob/living/simple_animal/hostile/bosses/boss.dm deleted file mode 100644 index 17e5856ca5..0000000000 --- a/code/modules/mob/living/simple_animal/hostile/bosses/boss.dm +++ /dev/null @@ -1,137 +0,0 @@ -/mob/living/simple_animal/hostile/boss - name = "A Perfectly Generic Boss Placeholder" - desc = "" - robust_searching = 1 - stat_attack = 1 - status_flags = 0 - a_intent = INTENT_HARM - gender = NEUTER - var/list/boss_abilities = list() //list of /datum/action/boss - var/datum/boss_active_timed_battle/atb - var/point_regen_delay = 1 - - -/mob/living/simple_animal/hostile/boss/New() - ..() - - atb = new() - atb.point_regen_delay = point_regen_delay - atb.boss = src - - for(var/ab in boss_abilities) - boss_abilities -= ab - var/datum/action/boss/AB = new ab() - AB.boss = src - AB.Grant(src) - boss_abilities += AB - - atb.assign_abilities(boss_abilities) - - -/mob/living/simple_animal/hostile/boss/Destroy() - qdel(atb) - atb = null - for(var/ab in boss_abilities) - var/datum/action/boss/AB = ab - AB.boss = null - AB.Remove(src) - qdel(AB) - del(boss_abilities) - return ..() - - -//Action datum for bosses -//Override Trigger() as shown below to do things -/datum/action/boss - check_flags = AB_CHECK_CONSCIOUS //Incase the boss is given a player - var/boss_cost = 100 //Cost of usage for the boss' AI 1-100 - var/usage_probability = 100 - var/mob/living/simple_animal/hostile/boss/boss - var/boss_type = /mob/living/simple_animal/hostile/boss - var/needs_target = TRUE //Does the boss need to have a target? (Only matters for the AI) - var/say_when_triggered = "" //What does the boss Say() when the ability triggers? - -/datum/action/boss/Trigger() - . = ..() - if(.) - if(!istype(boss, boss_type)) - return 0 - if(!boss.atb) - return 0 - if(boss.atb.points < boss_cost) - return 0 - if(!boss.client) - if(needs_target && !boss.target) - return 0 - if(boss) - if(say_when_triggered) - boss.say(say_when_triggered) - if(!boss.atb.spend(boss_cost)) - return 0 - -//Example: -/* -/datum/action/boss/selfgib/Trigger() - if(..()) - boss.gib() -*/ - - -//Designed for boss mobs only -/datum/boss_active_timed_battle - var/list/abilities //a list of /datum/action/boss owned by a boss mob - var/point_regen_delay = 5 - var/points = 50 //1-100, start with 50 so we can use some abilities but not insta-buttfug somebody - var/next_point_time = 0 - var/chance_to_hold_onto_points = 50 - var/highest_cost = 0 - var/mob/living/simple_animal/hostile/boss/boss - - -/datum/boss_active_timed_battle/New() - ..() - SSobj.processing.Add(src) - - -/datum/boss_active_timed_battle/proc/assign_abilities(list/L) - if(!L) - return 0 - abilities = L - for(var/ab in abilities) - var/datum/action/boss/AB = ab - if(AB.boss_cost > highest_cost) - highest_cost = AB.boss_cost - - -/datum/boss_active_timed_battle/proc/spend(cost) - if(cost <= points) - points = max(0,points-cost) - return 1 - return 0 - - -/datum/boss_active_timed_battle/proc/refund(cost) - points = min(points+cost, 100) - - -/datum/boss_active_timed_battle/process() - if(world.time >= next_point_time) - next_point_time = world.time + point_regen_delay - points = min(100, ++points) //has to be out of 100 - - if(abilities) - chance_to_hold_onto_points = highest_cost*0.5 - if(points != 100 && prob(chance_to_hold_onto_points)) - return //Let's save our points for a better ability (unless we're at max points, in which case we can't save anymore!) - if(!boss.client) - abilities = shuffle(abilities) - for(var/ab in abilities) - var/datum/action/boss/AB = ab - if(prob(AB.usage_probability) && AB.Trigger()) - break - - -/datum/boss_active_timed_battle/Destroy() - abilities = null - SSobj.processing.Remove(src) - return ..() \ No newline at end of file diff --git a/code/modules/mob/living/simple_animal/hostile/bosses/paperwizard.dm b/code/modules/mob/living/simple_animal/hostile/bosses/paperwizard.dm deleted file mode 100644 index c9c51cd450..0000000000 --- a/code/modules/mob/living/simple_animal/hostile/bosses/paperwizard.dm +++ /dev/null @@ -1,171 +0,0 @@ -//Paper Wizard Boss -/mob/living/simple_animal/hostile/boss/paper_wizard - name = "Mjor the Creative" - desc = "A wizard with a taste for the arts." - boss_abilities = list(/datum/action/boss/wizard_summon_minions, /datum/action/boss/wizard_mimic) - faction = list("hostile","stickman") - del_on_death = TRUE - icon_state = "paperwizard" - ranged = 1 - environment_smash = 0 - minimum_distance = 3 - retreat_distance = 3 - obj_damage = 0 - melee_damage_lower = 10 - melee_damage_upper = 20 - health = 1000 - maxHealth = 1000 - loot = list(/obj/effect/overlay/temp/paperwiz_dying) - projectiletype = /obj/item/projectile/temp - projectilesound = 'sound/weapons/emitter.ogg' - attack_sound = 'sound/hallucinations/growl1.ogg' - var/list/copies = list() - - -//Summon Ability -//Lets the wizard summon his art to fight for him -/datum/action/boss/wizard_summon_minions - name = "Summon Minions" - button_icon_state = "art_summon" - usage_probability = 40 - boss_cost = 30 - boss_type = /mob/living/simple_animal/hostile/boss/paper_wizard - needs_target = FALSE - say_when_triggered = "Rise, my creations! Jump off your pages and into this realm!" - var/static/summoned_minions = 0 - -/datum/action/boss/wizard_summon_minions/Trigger() - if(summoned_minions <= 6 && ..()) - var/list/minions = list( - /mob/living/simple_animal/hostile/stickman, - /mob/living/simple_animal/hostile/stickman/ranged, - /mob/living/simple_animal/hostile/stickman/dog) - var/list/directions = cardinal.Copy() - for(var/i in 1 to 3) - var/minions_chosen = pick_n_take(minions) - new minions_chosen (get_step(boss,pick_n_take(directions)), 1) - summoned_minions += 3; - - -//Mimic Ability -//Summons mimics of himself with magical papercraft -//Hitting a decoy hurts nearby people excluding the wizard himself -//Hitting the wizard himself destroys all decoys -/datum/action/boss/wizard_mimic - name = "Craft Mimicry" - button_icon_state = "mimic_summon" - usage_probability = 30 - boss_cost = 40 - boss_type = /mob/living/simple_animal/hostile/boss/paper_wizard - say_when_triggered = "" - -/datum/action/boss/wizard_mimic/Trigger() - if(..()) - var/mob/living/target - if(!boss.client) //AI's target - target = boss.target - else //random mob - var/list/threats = boss.PossibleThreats() - if(threats.len) - target = pick(threats) - if(target) - var/mob/living/simple_animal/hostile/boss/paper_wizard/wiz = boss - var/directions = cardinal.Copy() - for(var/i in 1 to 3) - var/mob/living/simple_animal/hostile/boss/paper_wizard/copy/C = new (get_step(target,pick_n_take(directions))) - wiz.copies += C - C.original = wiz - C.say("My craft defines me, you could even say it IS me!") - wiz.say("My craft defines me, you could even say it IS me!") - wiz.forceMove(get_step(target,pick_n_take(directions))) - wiz.minimum_distance = 1 //so he doesn't run away and ruin everything - wiz.retreat_distance = 0 - else - boss.atb.refund(boss_cost) - -/mob/living/simple_animal/hostile/boss/paper_wizard/copy - desc = "tis a ruse!" - health = 1 - maxHealth = 1 - alpha = 200 - boss_abilities = list() - melee_damage_lower = 1 - melee_damage_upper = 5 - minimum_distance = 0 - retreat_distance = 0 - ranged = 0 - loot = list() - var/mob/living/simple_animal/hostile/boss/paper_wizard/original - -//Hit a fake? eat pain! -/mob/living/simple_animal/hostile/boss/paper_wizard/copy/adjustHealth(amount) - if(amount > 0) //damage - if(original) - original.minimum_distance = 3 - original.retreat_distance = 3 - original.copies -= src - for(var/c in original.copies) - qdel(c) - for(var/mob/living/L in range(5,src)) - if(L == original || istype(L, type)) - continue - L.adjustBruteLoss(50) - qdel(src) - else - ..() - -//Hit the real guy? copies go bai-bai -/mob/living/simple_animal/hostile/boss/paper_wizard/adjustHealth(amount) - if(amount > 0)//damage - minimum_distance = 3 - retreat_distance = 3 - for(var/copy in copies) - qdel(copy) - . = ..() - -/mob/living/simple_animal/hostile/boss/paper_wizard/copy/examine(mob/user) - ..() - qdel(src) //I see through your ruse! - -//fancy effects -/obj/effect/overlay/temp/paper_scatter - name = "scattering paper" - desc = "Pieces of paper scattering to the wind." - layer = ABOVE_OPEN_TURF_LAYER - icon = 'icons/effects/effects.dmi' - icon_state = "paper_scatter" - anchored = TRUE - duration = 5 - randomdir = FALSE - -/obj/effect/overlay/temp/paperwiz_dying - name = "craft portal" - desc = "A wormhole sucking the wizard into the void. Neat." - layer = ABOVE_OPEN_TURF_LAYER - icon = 'icons/effects/effects.dmi' - icon_state = "paperwiz_poof" - anchored = TRUE - duration = 18 - randomdir = FALSE - -/obj/effect/overlay/temp/paperwiz_dying/New() - ..() - visible_message("The wizard cries out in pain as a gate appears behind him, sucking him in!") - playsound(get_turf(src),'sound/magic/MandSwap.ogg', 50, 1, 1) - playsound(get_turf(src),'sound/hallucinations/wail.ogg', 50, 1, 1) - -/obj/effect/overlay/temp/paperwiz_dying/Destroy() - for(var/mob/M in range(7,src)) - shake_camera(M, 7, 1) - var/turf/T = get_turf(src) - playsound(T,'sound/magic/Summon_Magic.ogg', 50, 1, 1) - new /obj/effect/overlay/temp/paper_scatter(T) - new /obj/item/clothing/suit/wizrobe/paper(T) - new /obj/item/clothing/head/collectable/paper(T) - return ..() - - - - - - diff --git a/code/modules/mob/living/simple_animal/hostile/carp.dm b/code/modules/mob/living/simple_animal/hostile/carp.dm index fbcbde7ddc..88c0271b64 100644 --- a/code/modules/mob/living/simple_animal/hostile/carp.dm +++ b/code/modules/mob/living/simple_animal/hostile/carp.dm @@ -18,7 +18,6 @@ health = 25 harm_intent_damage = 8 - obj_damage = 50 melee_damage_lower = 15 melee_damage_upper = 15 attacktext = "bites" @@ -31,7 +30,7 @@ maxbodytemp = 1500 faction = list("carp") - movement_type = FLYING + flying = 1 pressure_resistance = 200 gold_core_spawnable = 1 @@ -52,7 +51,7 @@ del_on_death = 1 /mob/living/simple_animal/hostile/carp/megacarp - icon = 'icons/mob/broadMobs.dmi' + icon = 'icons/mob/alienqueen.dmi' name = "Mega Space Carp" desc = "A ferocious, fang bearing creature that resembles a shark. This one seems especially ticked off." icon_state = "megacarp" @@ -64,7 +63,6 @@ pixel_x = -16 mob_size = MOB_SIZE_LARGE - obj_damage = 80 melee_damage_lower = 20 melee_damage_upper = 20 @@ -72,7 +70,6 @@ /mob/living/simple_animal/hostile/carp/cayenne name = "Cayenne" desc = "A failed Syndicate experiment in weaponized space carp technology, it now serves as a lovable mascot." - gender = FEMALE speak_emote = list("squeaks") gold_core_spawnable = 0 faction = list("syndicate") diff --git a/code/modules/mob/living/simple_animal/hostile/creature.dm b/code/modules/mob/living/simple_animal/hostile/creature.dm index 50baf1038e..f3775cb6c9 100644 --- a/code/modules/mob/living/simple_animal/hostile/creature.dm +++ b/code/modules/mob/living/simple_animal/hostile/creature.dm @@ -1,12 +1,12 @@ /mob/living/simple_animal/hostile/creature name = "creature" desc = "A sanity-destroying otherthing." + speak_emote = list("gibbers") icon_state = "otherthing" icon_living = "otherthing" icon_dead = "otherthing-dead" health = 80 maxHealth = 80 - obj_damage = 100 melee_damage_lower = 25 melee_damage_upper = 50 attacktext = "chomps" diff --git a/code/modules/mob/living/simple_animal/hostile/eyeballs.dm b/code/modules/mob/living/simple_animal/hostile/eyeballs.dm index a3e6dd6540..b8dabe22b5 100644 --- a/code/modules/mob/living/simple_animal/hostile/eyeballs.dm +++ b/code/modules/mob/living/simple_animal/hostile/eyeballs.dm @@ -6,7 +6,6 @@ icon_state = "eyeball" icon_living = "eyeball" icon_gib = "" - gender = NEUTER response_help = "pets" response_disarm = "gently pushes aside" response_harm = "hits" @@ -17,12 +16,11 @@ speak_emote = list("telepathically cries") harm_intent_damage = 15 - obj_damage = 60 melee_damage_lower = 20 melee_damage_upper = 25 attacktext = "blinks at" attack_sound = 'sound/weapons/pierce.ogg' - movement_type = FLYING + flying = 1 faction = list("spooky") del_on_death = 1 \ No newline at end of file diff --git a/code/modules/mob/living/simple_animal/hostile/faithless.dm b/code/modules/mob/living/simple_animal/hostile/faithless.dm index 8194ce2c95..32dd0b0601 100644 --- a/code/modules/mob/living/simple_animal/hostile/faithless.dm +++ b/code/modules/mob/living/simple_animal/hostile/faithless.dm @@ -4,7 +4,6 @@ icon_state = "faithless" icon_living = "faithless" icon_dead = "faithless_dead" - gender = MALE speak_chance = 0 turns_per_move = 5 response_help = "passes through" @@ -19,7 +18,6 @@ robust_searching = 1 harm_intent_damage = 10 - obj_damage = 50 melee_damage_lower = 15 melee_damage_upper = 15 attacktext = "grips" diff --git a/code/modules/mob/living/simple_animal/hostile/flan.dm b/code/modules/mob/living/simple_animal/hostile/flan.dm deleted file mode 100644 index 6944de9a09..0000000000 --- a/code/modules/mob/living/simple_animal/hostile/flan.dm +++ /dev/null @@ -1,58 +0,0 @@ -//Will probably eventually be expanded to fit multiple types of Flan because I am a nerd. - -/mob/living/simple_animal/hostile/flan - name = "Flan" - desc = "Definitely not a dessert." - var/casting = 0 - icon_state = "flan0" - icon_living = "flan0" - turns_per_move = 5 - environment_smash = 0 - speed = -2 - maxHealth = 50 - health = 50 - harm_intent_damage = 5 - melee_damage_lower = 5 - melee_damage_upper = 10 - attacktext = "headbutts" - attack_sound = 'sound/weapons/punch1.ogg' - a_intent = INTENT_HARM - atmos_requirements = list("min_oxy" = 0, "max_oxy" = 0, "min_tox" = 0, "max_tox" = 0, "min_co2" = 0, "max_co2" = 0, "min_n2" = 0, "max_n2" = 0) - del_on_death = 1 - ranged = 1 - retreat_distance = 2 - minimum_distance = 4 - AIStatus = AI_IDLE - ranged_message = "begins to cast something" - ranged_cooldown_time = 5 - var/spellname = "a Water spell!" - var/spellsound = 'sound/effects/spray3.ogg' - var/spellanimation = ATTACK_EFFECT_SMASH //More in defines/misc.dm - var/spelldamagetype = BRUTE - var/spelldamage = 20 - -/mob/living/simple_animal/hostile/flan/OpenFire(mob/living/A) //Spellcasting! - if(isliving(A)) //A is originally an atom, this is here to prevent that from fucking this up. - visible_message("[src] [ranged_message] at [A]!") - casting = 1 - icon_state = "[initial(icon_state)][casting]" - if(do_after(src, 10, target = A, progress = 0)) - if(qdeleted(src)) - return - if((A in view(src))) - A.do_attack_animation(A, spellanimation) - playsound(A, spellsound, 20, 1) - A.apply_damage(damage = spelldamage,damagetype = spelldamagetype, def_zone = null, blocked = 0) - visible_message("[A] has been hit by [spellname]") - ranged_cooldown = world.time + ranged_cooldown_time - casting = 0 - icon_state = "[initial(icon_state)][casting]" - -/mob/living/simple_animal/hostile/flan/fire - name = "Flame Flan" - desc = "You'd think they'd be spicy, but nobody has ever tried." - icon_state = "fireflan" - icon_living = "fireflan" - spellname = "a Fire spell!" - spellsound = 'sound/effects/fuse.ogg' - spelldamagetype = BURN \ No newline at end of file diff --git a/code/modules/mob/living/simple_animal/hostile/giant_spider.dm b/code/modules/mob/living/simple_animal/hostile/giant_spider.dm index 853f083f9f..530b75e81e 100644 --- a/code/modules/mob/living/simple_animal/hostile/giant_spider.dm +++ b/code/modules/mob/living/simple_animal/hostile/giant_spider.dm @@ -35,14 +35,13 @@ response_harm = "hits" maxHealth = 200 health = 200 - obj_damage = 60 melee_damage_lower = 15 melee_damage_upper = 20 faction = list("spiders") var/busy = 0 pass_flags = PASSTABLE move_to_delay = 6 - ventcrawler = VENTCRAWLER_ALWAYS + ventcrawler = 2 attacktext = "bites" attack_sound = 'sound/weapons/bite.ogg' unique_name = 1 @@ -79,14 +78,14 @@ icon_state = "nurse" icon_living = "nurse" icon_dead = "nurse_dead" - gender = FEMALE butcher_results = list(/obj/item/weapon/reagent_containers/food/snacks/meat/slab/spider = 2, /obj/item/weapon/reagent_containers/food/snacks/spiderleg = 8, /obj/item/weapon/reagent_containers/food/snacks/spidereggs = 4) maxHealth = 40 health = 40 melee_damage_lower = 5 melee_damage_upper = 10 - poison_per_bite = 3 + poison_per_bite = 10 var/atom/cocoon_target + poison_type = "morphine" var/fed = 0 //hunters have the most poison and move the fastest, so they can find prey @@ -138,7 +137,7 @@ return //second, spin a sticky spiderweb on this tile - var/obj/structure/spider/stickyweb/W = locate() in get_turf(src) + var/obj/effect/spider/stickyweb/W = locate() in get_turf(src) if(!W) Web() else @@ -183,7 +182,7 @@ stop_automated_movement = 1 if(do_after(src, 40, target = T)) if(busy == SPINNING_WEB && src.loc == T) - new /obj/structure/spider/stickyweb(T) + new /obj/effect/spider/stickyweb(T) busy = 0 stop_automated_movement = 0 @@ -214,8 +213,8 @@ walk(src,0) if(do_after(src, 50, target = src)) if(busy == SPINNING_COCOON) - if(cocoon_target && isturf(cocoon_target.loc) && get_dist(src,cocoon_target) <= 1) - var/obj/structure/spider/cocoon/C = new(cocoon_target.loc) + if(cocoon_target && istype(cocoon_target.loc, /turf) && get_dist(src,cocoon_target) <= 1) + var/obj/effect/spider/cocoon/C = new(cocoon_target.loc) var/large_cocoon = 0 C.pixel_x = cocoon_target.pixel_x C.pixel_y = cocoon_target.pixel_y @@ -251,7 +250,7 @@ set category = "Spider" set desc = "Lay a clutch of eggs, but you must wrap a creature for feeding first." - var/obj/structure/spider/eggcluster/E = locate() in get_turf(src) + var/obj/effect/spider/eggcluster/E = locate() in get_turf(src) if(stat == DEAD) return if(E) @@ -266,7 +265,7 @@ if(busy == LAYING_EGGS) E = locate() in get_turf(src) if(!E) - var/obj/structure/spider/eggcluster/C = new /obj/structure/spider/eggcluster(src.loc) + var/obj/effect/spider/eggcluster/C = new /obj/effect/spider/eggcluster(src.loc) if(ckey) C.player_spiders = 1 C.poison_type = poison_type diff --git a/code/modules/mob/living/simple_animal/hostile/headcrab.dm b/code/modules/mob/living/simple_animal/hostile/headcrab.dm index 5443f76f45..82a3e1528a 100644 --- a/code/modules/mob/living/simple_animal/hostile/headcrab.dm +++ b/code/modules/mob/living/simple_animal/hostile/headcrab.dm @@ -6,7 +6,6 @@ icon_state = "headcrab" icon_living = "headcrab" icon_dead = "headcrab_dead" - gender = NEUTER health = 50 maxHealth = 50 melee_damage_lower = 5 @@ -16,13 +15,12 @@ faction = list("creature") robust_searching = 1 stat_attack = 2 - obj_damage = 0 environment_smash = 0 speak_emote = list("squeaks") - ventcrawler = VENTCRAWLER_ALWAYS + ventcrawler = 2 var/datum/mind/origin var/egg_lain = 0 - gold_core_spawnable = 1 //are you sure about this?? +// gold_core_spawnable = 1 //are you sure about this?? (NO, THEY WEREN'T. THIS WAS AN AWFUL DECISION) /mob/living/simple_animal/hostile/headcrab/proc/Infect(mob/living/carbon/victim) var/obj/item/organ/body_egg/changeling_egg/egg = new(victim) diff --git a/code/modules/mob/living/simple_animal/hostile/hivebot.dm b/code/modules/mob/living/simple_animal/hostile/hivebot.dm index ed1062b49b..c6e4acda87 100644 --- a/code/modules/mob/living/simple_animal/hostile/hivebot.dm +++ b/code/modules/mob/living/simple_animal/hostile/hivebot.dm @@ -9,7 +9,6 @@ icon_state = "basic" icon_living = "basic" icon_dead = "basic" - gender = NEUTER health = 15 maxHealth = 15 healable = 0 diff --git a/code/modules/mob/living/simple_animal/hostile/hostile.dm b/code/modules/mob/living/simple_animal/hostile/hostile.dm index 7193997d7f..315bdb385b 100644 --- a/code/modules/mob/living/simple_animal/hostile/hostile.dm +++ b/code/modules/mob/living/simple_animal/hostile/hostile.dm @@ -1,7 +1,6 @@ /mob/living/simple_animal/hostile faction = list("hostile") stop_automated_movement_when_pulled = 0 - obj_damage = 40 environment_smash = 1 //Set to 1 to break closets,tables,racks, etc; 2 for walls; 3 for rwalls var/atom/target var/ranged = 0 @@ -21,14 +20,12 @@ /obj/structure/closet, /obj/structure/table, /obj/structure/grille, - /obj/structure/girder, /obj/structure/rack, /obj/structure/barricade) //turned into a typecache in New() var/ranged_message = "fires" //Fluff text for ranged mobs var/ranged_cooldown = 0 //What the current cooldown on ranged attacks is, generally world.time + ranged_cooldown_time var/ranged_cooldown_time = 30 //How long, in deciseconds, the cooldown of ranged attacks is - var/ranged_ignores_vision = FALSE //if it'll fire ranged attacks even if it lacks vision on its target, only works with environment smash var/check_friendly_fire = 0 // Should the ranged mob check for friendlies when shooting var/retreat_distance = null //If our mob runs from players when they're too close, set in tile distance. By default, mobs do not retreat. var/minimum_distance = 1 //Minimum approach distance, so ranged mobs chase targets down, but still keep their distance set in tiles to the target, set higher to make mobs keep distance @@ -40,33 +37,22 @@ var/aggro_vision_range = 9 //If a mob is aggro, we search in this radius. Defaults to 9 to keep in line with original simple mob aggro radius var/idle_vision_range = 9 //If a mob is just idling around, it's vision range is limited to this. Defaults to 9 to keep in line with original simple mob aggro radius var/search_objects = 0 //If we want to consider objects when searching around, set this to 1. If you want to search for objects while also ignoring mobs until hurt, set it to 2. To completely ignore mobs, even when attacked, set it to 3 - var/search_objects_timer_id //Timer for regaining our old search_objects value after being attacked - var/search_objects_regain_time = 30 //the delay between being attacked and gaining our old search_objects value back - var/list/wanted_objects = list() //A typecache of objects types that will be checked against to attack, should we have search_objects enabled + var/list/wanted_objects = list() //A list of objects that will be checked against to attack, should we have search_objects enabled var/stat_attack = 0 //Mobs with stat_attack to 1 will attempt to attack things that are unconscious, Mobs with stat_attack set to 2 will attempt to attack the dead. var/stat_exclusive = 0 //Mobs with this set to 1 will exclusively attack things defined by stat_attack, stat_attack 2 means they will only attack corpses var/attack_same = 0 //Set us to 1 to allow us to attack our own faction, or 2, to only ever attack our own faction + var/AIStatus = AI_ON //The Status of our AI, can be set to AI_ON (On, usual processing), AI_IDLE (Will not process, but will return to AI_ON if an enemy comes near), AI_OFF (Off, Not processing ever) var/atom/targets_from = null //all range/attack/etc. calculations should be done from this atom, defaults to the mob itself, useful for Vehicles and such - var/attack_all_objects = FALSE //if true, equivalent to having a wanted_objects list containing ALL objects. - - var/lose_patience_timer_id //id for a timer to call LoseTarget(), used to stop mobs fixating on a target they can't reach - var/lose_patience_timeout = 300 //30 seconds by default, so there's no major changes to AI behaviour, beyond actually bailing if stuck forever /mob/living/simple_animal/hostile/New() ..() - if(!targets_from) targets_from = src environment_target_typecache = typecacheof(environment_target_typecache) - wanted_objects = typecacheof(wanted_objects) -/mob/living/simple_animal/hostile/Destroy() - targets_from = null - return ..() - /mob/living/simple_animal/hostile/Life() . = ..() if(!.) //dead @@ -88,20 +74,14 @@ AIStatus = AI_IDLE // otherwise we go idle return 1 -/mob/living/simple_animal/hostile/attacked_by(obj/item/I, mob/living/user) - if(stat == CONSCIOUS && !target && AIStatus != AI_OFF && !client && user) - FindTarget(list(user), 1) - return ..() - /mob/living/simple_animal/hostile/bullet_act(obj/item/projectile/P) - if(stat == CONSCIOUS && !target && AIStatus != AI_OFF && !client) - if(P.firer && get_dist(src, P.firer) <= aggro_vision_range) - FindTarget(list(P.firer), 1) + if(!target && AIStatus != AI_OFF && !client) Goto(P.starting, move_to_delay, 3) - return ..() + ..() //////////////HOSTILE MOB TARGETTING AND AGGRESSION//////////// + /mob/living/simple_animal/hostile/proc/ListTargets()//Step 1, find out what we can see . = list() if(!search_objects) @@ -170,6 +150,11 @@ if(see_invisible < the_target.invisibility)//Target's invisible to us, forget it return 0 if(search_objects < 2) + if(istype(the_target, /obj/mecha)) + var/obj/mecha/M = the_target + if(M.occupant)//Just so we don't attack empty mechs + if(CanAttack(M.occupant)) + return 1 if(isliving(the_target)) var/mob/living/L = the_target var/faction_check = faction_check(L) @@ -186,34 +171,14 @@ if(faction_check && !attack_same) return 0 return 1 - - if(istype(the_target, /obj/mecha)) - var/obj/mecha/M = the_target - if(M.occupant)//Just so we don't attack empty mechs - if(CanAttack(M.occupant)) - return 1 - - if(istype(the_target, /obj/machinery/porta_turret)) - var/obj/machinery/porta_turret/P = the_target - if(P.faction in faction) - return 0 - if(P.has_cover &&!P.raised) //Don't attack invincible turrets - return 0 - if(P.stat & BROKEN) //Or turrets that are already broken - return 0 - return 1 - - if(isobj(the_target)) - if(attack_all_objects || is_type_in_typecache(the_target, wanted_objects)) + if(is_type_in_list(the_target, wanted_objects)) return 1 return 0 /mob/living/simple_animal/hostile/proc/GiveTarget(new_target)//Step 4, give us our selected target target = new_target - LosePatience() if(target != null) - GainPatience() Aggro() return 1 @@ -223,34 +188,28 @@ LoseTarget() return 0 if(target in possible_targets) - if(target.z != z) - LoseTarget() - return 0 var/target_distance = get_dist(targets_from,target) - if(ranged) //We ranged? Shoot at em - if(!target.Adjacent(targets_from) && ranged_cooldown <= world.time) //But make sure they're not in range for a melee attack and our range attack is off cooldown + if(ranged)//We ranged? Shoot at em + if(target_distance >= 2 && ranged_cooldown <= world.time)//But make sure they're a tile away at least, and our range attack is off cooldown OpenFire(target) - if(!Process_Spacemove()) //Drifting + if(!Process_Spacemove()) // Drifting walk(src,0) return 1 - if(retreat_distance != null) //If we have a retreat distance, check if we need to run from our target - if(target_distance <= retreat_distance) //If target's closer than our retreat distance, run + if(retreat_distance != null)//If we have a retreat distance, check if we need to run from our target + if(target_distance <= retreat_distance)//If target's closer than our retreat distance, run walk_away(src,target,retreat_distance,move_to_delay) else - Goto(target,move_to_delay,minimum_distance) //Otherwise, get to our minimum distance so we chase them + Goto(target,move_to_delay,minimum_distance)//Otherwise, get to our minimum distance so we chase them else Goto(target,move_to_delay,minimum_distance) if(target) - if(targets_from && isturf(targets_from.loc) && target.Adjacent(targets_from)) //If they're next to us, attack + if(isturf(targets_from.loc) && target.Adjacent(targets_from)) //If they're next to us, attack AttackingTarget() - GainPatience() return 1 return 0 if(environment_smash) - if(target.loc != null && get_dist(targets_from, target.loc) <= vision_range) //We can't see our target, but he's in our vision range still - if(ranged_ignores_vision && ranged_cooldown <= world.time) //we can't see our target... but we can fire at them! - OpenFire(target) - if(environment_smash >= 2) //If we're capable of smashing through walls, forget about vision completely after finding our target + if(target.loc != null && get_dist(targets_from, target.loc) <= vision_range)//We can't see our target, but he's in our vision range still + if(environment_smash >= 2)//If we're capable of smashing through walls, forget about vision completely after finding our target Goto(target,move_to_delay,minimum_distance) FindHidden() return 1 @@ -267,15 +226,14 @@ . = ..() if(!ckey && !stat && search_objects < 3 && damage > 0)//Not unconscious, and we don't ignore mobs if(search_objects)//Turn off item searching and ignore whatever item we were looking at, we're more concerned with fight or flight + search_objects = 0 target = null - LoseSearchObjects() if(AIStatus == AI_IDLE) AIStatus = AI_ON FindTarget() else if(target != null && prob(40))//No more pulling a mob forever and having a second player attack it, it can switch targets now if it finds a more suitable one FindTarget() - /mob/living/simple_animal/hostile/proc/AttackingTarget() target.attack_animal(src) @@ -302,15 +260,12 @@ LoseTarget() ..(gibbed) -/mob/living/simple_animal/hostile/proc/summon_backup(distance, exact_faction_match) +/mob/living/simple_animal/hostile/proc/summon_backup(distance) do_alert_animation(src) playsound(loc, 'sound/machines/chime.ogg', 50, 1, -1) for(var/mob/living/simple_animal/hostile/M in oview(distance, targets_from)) var/list/L = M.faction&faction - var/success = L.len - if(exact_faction_match) - success = (L.len == faction.len) //since the above op is &, an exact match would be of the same length - if(success) + if(L.len) if(M.AIStatus == AI_OFF) return else @@ -343,9 +298,10 @@ return var/turf/startloc = get_turf(targets_from) if(casingtype) - var/obj/item/ammo_casing/casing = new casingtype(startloc) + var/obj/item/ammo_casing/casing = new casingtype playsound(src, projectilesound, 100, 1) - casing.fire_casing(targeted_atom, src, null, null, null, zone_override = ran_zone()) + casing.fire(targeted_atom, src, zone_override = ran_zone()) + casing.loc = startloc else if(projectiletype) var/obj/item/projectile/P = new projectiletype(startloc) playsound(src, projectilesound, 100, 1) @@ -366,7 +322,7 @@ EscapeConfinement() for(var/dir in cardinal) var/turf/T = get_step(targets_from, dir) - if(iswallturf(T) || ismineralturf(T)) + if(istype(T, /turf/closed/wall) || istype(T, /turf/closed/mineral)) if(T.Adjacent(targets_from)) T.attack_animal(src) for(var/a in T) @@ -414,28 +370,3 @@ /mob/living/simple_animal/hostile/proc/AIShouldSleep(var/list/possible_targets) return !FindTarget(possible_targets, 1) - - -//These two procs handle losing our target if we've failed to attack them for -//more than lose_patience_timeout deciseconds, which probably means we're stuck -/mob/living/simple_animal/hostile/proc/GainPatience() - if(lose_patience_timeout) - LosePatience() - lose_patience_timer_id = addtimer(src, "LoseTarget", lose_patience_timeout) - - -/mob/living/simple_animal/hostile/proc/LosePatience() - deltimer(lose_patience_timer_id) - - -//These two procs handle losing and regaining search_objects when attacked by a mob -/mob/living/simple_animal/hostile/proc/LoseSearchObjects() - search_objects = 0 - deltimer(search_objects_timer_id) - search_objects_timer_id = addtimer(src, "RegainSearchObjects", search_objects_regain_time) - - -/mob/living/simple_animal/hostile/proc/RegainSearchObjects(value) - if(!value) - value = initial(search_objects) - search_objects = value \ No newline at end of file diff --git a/code/modules/mob/living/simple_animal/hostile/illusion.dm b/code/modules/mob/living/simple_animal/hostile/illusion.dm index eef563eda3..26af99220c 100644 --- a/code/modules/mob/living/simple_animal/hostile/illusion.dm +++ b/code/modules/mob/living/simple_animal/hostile/illusion.dm @@ -5,10 +5,9 @@ icon_state = "static" icon_living = "static" icon_dead = "null" - gender = NEUTER melee_damage_lower = 5 melee_damage_upper = 5 - a_intent = INTENT_HARM + a_intent = "harm" attacktext = "gores" maxHealth = 100 health = 100 @@ -49,7 +48,7 @@ /mob/living/simple_animal/hostile/illusion/AttackingTarget() ..() - if(isliving(target) && prob(multiply_chance)) + if(istype(target, /mob/living) && prob(multiply_chance)) var/mob/living/L = target if(L.stat == DEAD) return @@ -66,7 +65,6 @@ melee_damage_lower = 0 melee_damage_upper = 0 speed = -1 - obj_damage = 0 environment_smash = 0 diff --git a/code/modules/mob/living/simple_animal/hostile/killertomato.dm b/code/modules/mob/living/simple_animal/hostile/killertomato.dm index 3273a8c3d9..5c032e21bc 100644 --- a/code/modules/mob/living/simple_animal/hostile/killertomato.dm +++ b/code/modules/mob/living/simple_animal/hostile/killertomato.dm @@ -4,7 +4,6 @@ icon_state = "tomato" icon_living = "tomato" icon_dead = "tomato_dead" - gender = NEUTER speak_chance = 0 turns_per_move = 5 maxHealth = 30 @@ -18,7 +17,7 @@ melee_damage_upper = 12 attacktext = "slams" attack_sound = 'sound/weapons/punch1.ogg' - ventcrawler = VENTCRAWLER_ALWAYS + ventcrawler = 2 faction = list("plants") atmos_requirements = list("min_oxy" = 5, "max_oxy" = 0, "min_tox" = 0, "max_tox" = 0, "min_co2" = 0, "max_co2" = 0, "min_n2" = 0, "max_n2" = 0) diff --git a/code/modules/mob/living/simple_animal/hostile/mecha_pilot.dm b/code/modules/mob/living/simple_animal/hostile/mecha_pilot.dm index c61b52353a..63d3bd8256 100644 --- a/code/modules/mob/living/simple_animal/hostile/mecha_pilot.dm +++ b/code/modules/mob/living/simple_animal/hostile/mecha_pilot.dm @@ -41,7 +41,7 @@ /mob/living/simple_animal/hostile/syndicate/mecha_pilot/no_mech/New() ..() - wanted_objects = typecacheof(/obj/mecha/combat, ignore_root_path=TRUE) + wanted_objects = subtypesof(/obj/mecha/combat) /mob/living/simple_animal/hostile/syndicate/mecha_pilot/nanotrasen //nanotrasen are syndies! no it's just a weird path. name = "Nanotrasen Mecha Pilot" @@ -101,7 +101,7 @@ targets_from = src //Find a new mecha - wanted_objects = typecacheof(/obj/mecha/combat, ignore_root_path=TRUE) + wanted_objects = subtypesof(/obj/mecha/combat) var/search_aggressiveness = 2 for(var/obj/mecha/combat/C in range(vision_range,src)) if(is_valid_mecha(C)) @@ -122,7 +122,7 @@ return 0 if(!M.has_charge(required_mecha_charge)) return 0 - if(M.obj_integrity < M.max_integrity*0.5) + if(M.health < (initial(M.health)*0.5)) return 0 return 1 @@ -216,7 +216,7 @@ return //Too Much Damage - Eject - if(mecha.obj_integrity < mecha.max_integrity*0.1) + if(mecha.health < initial(mecha.health)*0.1) exit_mecha(mecha) return @@ -226,18 +226,18 @@ mecha.smoke_action.Activate() //Heavy damage - Defence Power or Retreat - if(mecha.obj_integrity < mecha.max_integrity*0.25) + if(mecha.health < initial(mecha.health)*0.25) if(prob(defence_mode_chance)) if(mecha.defense_action && mecha.defense_action.owner && !mecha.defence_mode) mecha.leg_overload_mode = 0 mecha.defense_action.Activate(TRUE) - addtimer(mecha.defense_action, "Activate", 100, TIMER_NORMAL, FALSE) //10 seconds of defence, then toggle off + addtimer(mecha.defense_action, "Activate", 100, FALSE, FALSE) //10 seconds of defence, then toggle off else if(prob(retreat_chance)) //Speed boost if possible if(mecha.overload_action && mecha.overload_action.owner && !mecha.leg_overload_mode) mecha.overload_action.Activate(TRUE) - addtimer(mecha.overload_action, "Activate", 100, TIMER_NORMAL, FALSE) //10 seconds of speeeeed, then toggle off + addtimer(mecha.overload_action, "Activate", 100, FALSE, FALSE) //10 seconds of speeeeed, then toggle off retreat_distance = 50 spawn(100) diff --git a/code/modules/mob/living/simple_animal/hostile/megafauna/bubblegum.dm b/code/modules/mob/living/simple_animal/hostile/megafauna/bubblegum.dm index 6a24b841b3..f6fa1e66c9 100644 --- a/code/modules/mob/living/simple_animal/hostile/megafauna/bubblegum.dm +++ b/code/modules/mob/living/simple_animal/hostile/megafauna/bubblegum.dm @@ -1,28 +1,3 @@ -#define MEDAL_PREFIX "Bubblegum" - -/* - -BUBBLEGUM - -Bubblegum spawns randomly wherever a lavaland creature is able to spawn. It is the most powerful slaughter demon in existence. -Bubblegum's footsteps are heralded by shaking booms, proving its tremendous size. - -It acts as a melee creature, chasing down and attacking its target while also using different attacks to augment its power that increase as it takes damage. - -It tries to strike at its target through any bloodpools under them; if it fails to do that, it will spray blood and then attempt to warp to a bloodpool near the target. -If it fails to warp to a target, it may summon up to 6 slaughterlings from the blood around it. -If it does not summon all 6 slaughterlings, it will instead charge at its target, dealing massive damage to anything it hits and spraying a stream of blood. -At half health, it will either charge three times or warp, then charge, instead of doing a single charge. - -When Bubblegum dies, it leaves behind a chest that can contain three things: - 1. A bottle that, when activated, drives everyone nearby into a frenzy - 2. A contract that marks for death the chosen target - 3. A spellblade that can slice off limbs at range - -Difficulty: Hard - -*/ - /mob/living/simple_animal/hostile/megafauna/bubblegum name = "bubblegum" desc = "In what passes for a heirarchy among slaughter demons, this one is king." @@ -35,6 +10,8 @@ Difficulty: Hard icon_dead = "" friendly = "stares down" icon = 'icons/mob/lavaland/96x96megafauna.dmi' + faction = list("mining") + weather_immunities = list("lava","ash") speak_emote = list("gurgles") armour_penetration = 40 melee_damage_lower = 40 @@ -42,13 +19,14 @@ Difficulty: Hard speed = 1 move_to_delay = 10 ranged = 1 + flying = 1 + mob_size = MOB_SIZE_LARGE pixel_x = -32 del_on_death = 1 + aggro_vision_range = 18 + idle_vision_range = 5 loot = list(/obj/structure/closet/crate/necropolis/bubblegum) - blood_volume = BLOOD_VOLUME_MAXIMUM //BLEED FOR ME var/charging = 0 - medal_type = MEDAL_PREFIX - score_type = BUBBLEGUM_SCORE deathmessage = "sinks into a pool of blood, fleeing the battle. You've won, for now... " death_sound = 'sound/magic/enter_blood.ogg' @@ -58,49 +36,37 @@ Difficulty: Hard desc = "You're not quite sure how a signal can be bloody." invisibility = 100 -/mob/living/simple_animal/hostile/megafauna/bubblegum/adjustBruteLoss(amount) - if(amount > 0 && prob(25)) - var/obj/effect/decal/cleanable/blood/gibs/bubblegum/B = new /obj/effect/decal/cleanable/blood/gibs/bubblegum(loc) - if(prob(40)) - step(B, pick(cardinal)) - else - B.setDir(pick(cardinal)) - . = ..() - -/obj/effect/decal/cleanable/blood/gibs/bubblegum - name = "thick blood" - desc = "Thick, splattered blood." - random_icon_states = list("gib3", "gib5", "gib6") - bloodiness = 20 - -/obj/effect/decal/cleanable/blood/gibs/bubblegum/can_bloodcrawl_in() - return TRUE +/mob/living/simple_animal/hostile/megafauna/bubblegum/AttackingTarget() + ..() + if(isliving(target)) + var/mob/living/L = target + devour(L) /mob/living/simple_animal/hostile/megafauna/bubblegum/Life() ..() - move_to_delay = Clamp((health/maxHealth) * 10, 5, 10) + move_to_delay = Clamp(round((health/maxHealth) * 10), 5, 10) /mob/living/simple_animal/hostile/megafauna/bubblegum/OpenFire() - anger_modifier = Clamp(((maxHealth - health)/60),0,20) - if(charging) - return + var/anger_modifier = Clamp(((maxHealth - health)/50),0,20) ranged_cooldown = world.time + ranged_cooldown_time - var/warped = FALSE - if(!try_bloodattack()) - addtimer(src, "blood_spray", 0) - warped = blood_warp() - if(warped && prob(100 - anger_modifier)) - return + if(!charging) + blood_warp() - if(prob(90 - anger_modifier) || slaughterlings()) - if(health > maxHealth * 0.5) - addtimer(src, "charge", 0) + if(prob(25)) + blood_spray() + + else if(prob(5+anger_modifier/2)) + slaughterlings() + else + if(health > maxHealth/2 && !client && !charging) + charge() else - if(prob(70) || warped) - addtimer(src, "triple_charge", 0) - else - addtimer(src, "warp_charge", 0) + charge() + sleep(10) + charge() + sleep(10) + charge() /mob/living/simple_animal/hostile/megafauna/bubblegum/New() @@ -113,277 +79,91 @@ Difficulty: Hard AddSpell(bloodspell) if(istype(loc, /obj/effect/dummy/slaughter)) bloodspell.phased = 1 - internal = new/obj/item/device/gps/internal/bubblegum(src) - -/mob/living/simple_animal/hostile/megafauna/bubblegum/do_attack_animation(atom/A, visual_effect_icon) - if(!charging) - ..() + new/obj/item/device/gps/internal/bubblegum(src) /mob/living/simple_animal/hostile/megafauna/bubblegum/AttackingTarget() - if(!charging) - ..() - -/mob/living/simple_animal/hostile/megafauna/bubblegum/Goto(target, delay, minimum_distance) - if(!charging) - ..() + if(charging) + return + ..() /mob/living/simple_animal/hostile/megafauna/bubblegum/Move() + if(!stat) + playsound(src.loc, 'sound/effects/meteorimpact.ogg', 200, 1) if(charging) - PoolOrNew(/obj/effect/overlay/temp/decoy/fading, list(loc,src)) - DestroySurroundings() + PoolOrNew(/obj/effect/overlay/temp/decoy, list(loc,src)) + for(var/turf/T in range(src, 1)) + T.singularity_pull(src, 7) . = ..() - if(!stat && .) - playsound(src, 'sound/effects/meteorimpact.ogg', 200, 1, 2, 1) - if(charging) - DestroySurroundings() - -/mob/living/simple_animal/hostile/megafauna/bubblegum/proc/warp_charge() - blood_warp() - charge() - -/mob/living/simple_animal/hostile/megafauna/bubblegum/proc/triple_charge() - charge() - charge() - charge() /mob/living/simple_animal/hostile/megafauna/bubblegum/proc/charge() - var/turf/T = get_turf(target) - if(!T || T == loc) - return - PoolOrNew(/obj/effect/overlay/temp/dragon_swoop, T) + var/turf/T = get_step_away(target, src) charging = 1 - DestroySurroundings() - walk(src, 0) - setDir(get_dir(src, T)) - var/obj/effect/overlay/temp/decoy/D = PoolOrNew(/obj/effect/overlay/temp/decoy, list(loc,src)) - animate(D, alpha = 0, color = "#FF0000", transform = matrix()*2, time = 5) + PoolOrNew(/obj/effect/overlay/temp/dragon_swoop, T) sleep(5) - throw_at(T, get_dist(src, T), 1, src, 0) + throw_at(T, 7, 1, src, 0) charging = 0 - try_bloodattack() - if(target) - Goto(target, move_to_delay, minimum_distance) /mob/living/simple_animal/hostile/megafauna/bubblegum/Bump(atom/A) if(charging) - if(isturf(A) || isobj(A) && A.density) + if(istype(A, /turf) || istype(A, /obj) && A.density) A.ex_act(2) - DestroySurroundings() - ..() + ..() /mob/living/simple_animal/hostile/megafauna/bubblegum/throw_impact(atom/A) if(!charging) return ..() - else if(isliving(A)) - var/mob/living/L = A - L.visible_message("[src] slams into [L]!", "[src] slams into you!") - L.apply_damage(40, BRUTE) - playsound(get_turf(L), 'sound/effects/meteorimpact.ogg', 100, 1) - shake_camera(L, 4, 3) - shake_camera(src, 2, 3) - var/throwtarget = get_edge_target_turf(src, get_dir(src, get_step_away(L, src))) - L.throw_at_fast(throwtarget, 3) + else if(A) + if(isliving(A)) + var/mob/living/L = A + L.visible_message("[src] slams into [L]!", "[src] slams into you!") + L.apply_damage(40, BRUTE) + playsound(get_turf(L), 'sound/effects/meteorimpact.ogg', 100, 1) + shake_camera(L, 4, 3) + shake_camera(src, 2, 3) + var/throwtarget = get_edge_target_turf(src, get_dir(src, get_step_away(L, src))) + L.throw_at_fast(throwtarget) charging = 0 -/mob/living/simple_animal/hostile/megafauna/bubblegum/proc/get_mobs_on_blood() - var/list/targets = ListTargets() - . = list() - for(var/mob/living/L in targets) - var/list/bloodpool = get_pools(get_turf(L), 0) - if(bloodpool.len && (!faction_check(L) || L.stat == DEAD)) - . += L - -/mob/living/simple_animal/hostile/megafauna/bubblegum/proc/try_bloodattack() - var/list/targets = get_mobs_on_blood() - if(targets.len) - addtimer(src, "bloodattack", 0, TIMER_NORMAL, targets, prob(50)) - - return TRUE - return FALSE - -/mob/living/simple_animal/hostile/megafauna/bubblegum/proc/bloodattack(list/targets, handedness) - var/mob/living/target_one = pick_n_take(targets) - var/turf/target_one_turf = get_turf(target_one) - var/mob/living/target_two - if(targets.len) - target_two = pick_n_take(targets) - var/turf/target_two_turf = get_turf(target_two) - if(target_two.stat != CONSCIOUS || prob(10)) - bloodgrab(target_two_turf, handedness) - else - bloodsmack(target_two_turf, handedness) - - if(target_one) - var/list/pools = get_pools(get_turf(target_one), 0) - if(pools.len) - target_one_turf = get_turf(target_one) - if(target_one_turf) - if(target_one.stat != CONSCIOUS || prob(10)) - bloodgrab(target_one_turf, !handedness) - else - bloodsmack(target_one_turf, !handedness) - - if(!target_two && target_one) - var/list/poolstwo = get_pools(get_turf(target_one), 0) - if(poolstwo.len) - target_one_turf = get_turf(target_one) - if(target_one_turf) - if(target_one.stat != CONSCIOUS || prob(10)) - bloodgrab(target_one_turf, handedness) - else - bloodsmack(target_one_turf, handedness) - -/mob/living/simple_animal/hostile/megafauna/bubblegum/proc/bloodsmack(turf/T, handedness) - if(handedness) - PoolOrNew(/obj/effect/overlay/temp/bubblegum_hands/rightsmack, T) - else - PoolOrNew(/obj/effect/overlay/temp/bubblegum_hands/leftsmack, T) - sleep(2.5) - for(var/mob/living/L in T) - if(!faction_check(L)) - L << "[src] rends you!" - playsound(T, attack_sound, 100, 1, -1) - var/limb_to_hit = L.get_bodypart(pick("head", "chest", "r_arm", "l_arm", "r_leg", "l_leg")) - L.apply_damage(25, BRUTE, limb_to_hit, L.run_armor_check(limb_to_hit, "melee", null, null, armour_penetration)) - sleep(3) - -/mob/living/simple_animal/hostile/megafauna/bubblegum/proc/bloodgrab(turf/T, handedness) - if(handedness) - PoolOrNew(/obj/effect/overlay/temp/bubblegum_hands/rightpaw, T) - PoolOrNew(/obj/effect/overlay/temp/bubblegum_hands/rightthumb, T) - else - PoolOrNew(/obj/effect/overlay/temp/bubblegum_hands/leftpaw, T) - PoolOrNew(/obj/effect/overlay/temp/bubblegum_hands/leftthumb, T) - sleep(6) - for(var/mob/living/L in T) - if(!faction_check(L)) - L << "[src] drags you through the blood!" - playsound(T, 'sound/magic/enter_blood.ogg', 100, 1, -1) - var/turf/targetturf = get_step(src, dir) - L.forceMove(targetturf) - playsound(targetturf, 'sound/magic/exit_blood.ogg', 100, 1, -1) - if(L.stat != CONSCIOUS) - addtimer(src, "devour", 2, TIMER_NORMAL, L) - sleep(1) - -/obj/effect/overlay/temp/bubblegum_hands - icon = 'icons/effects/bubblegum.dmi' - duration = 9 - -/obj/effect/overlay/temp/bubblegum_hands/rightthumb - icon_state = "rightthumbgrab" - -/obj/effect/overlay/temp/bubblegum_hands/leftthumb - icon_state = "leftthumbgrab" - -/obj/effect/overlay/temp/bubblegum_hands/rightpaw - icon_state = "rightpawgrab" - layer = BELOW_MOB_LAYER - -/obj/effect/overlay/temp/bubblegum_hands/leftpaw - icon_state = "leftpawgrab" - layer = BELOW_MOB_LAYER - -/obj/effect/overlay/temp/bubblegum_hands/rightsmack - icon_state = "rightsmack" - -/obj/effect/overlay/temp/bubblegum_hands/leftsmack - icon_state = "leftsmack" - /mob/living/simple_animal/hostile/megafauna/bubblegum/proc/blood_warp() - if(Adjacent(target)) - return FALSE - var/list/can_jaunt = get_pools(get_turf(src), 1) - if(!can_jaunt.len) - return FALSE - - var/list/pools = get_pools(get_turf(target), 2) - var/list/pools_to_remove = get_pools(get_turf(target), 1) - pools -= pools_to_remove - if(!pools.len) - return FALSE - - var/obj/effect/overlay/temp/decoy/DA = PoolOrNew(/obj/effect/overlay/temp/decoy, list(loc,src)) - DA.color = "#FF0000" - var/oldtransform = DA.transform - DA.transform = matrix()*2 - animate(DA, alpha = 255, color = initial(DA.color), transform = oldtransform, time = 5) - sleep(5) - qdel(DA) - - var/obj/effect/decal/cleanable/blood/found_bloodpool - pools = get_pools(get_turf(target), 2) - pools_to_remove = get_pools(get_turf(target), 1) - pools -= pools_to_remove - if(pools.len) - shuffle(pools) - found_bloodpool = pick(pools) + var/found_bloodpool = FALSE + for(var/obj/effect/decal/cleanable/blood/nearby in view(src,2)) + found_bloodpool = TRUE if(found_bloodpool) - visible_message("[src] sinks into the blood...") - playsound(get_turf(src), 'sound/magic/enter_blood.ogg', 100, 1, -1) - forceMove(get_turf(found_bloodpool)) - playsound(get_turf(src), 'sound/magic/exit_blood.ogg', 100, 1, -1) - visible_message("And springs back out!") - return TRUE - return FALSE + for(var/obj/effect/decal/cleanable/blood/H in view(target,2)) + visible_message("[src] sinks into the blood...") + playsound(get_turf(src), 'sound/magic/enter_blood.ogg', 100, 1, -1) + forceMove(get_turf(H)) + playsound(get_turf(src), 'sound/magic/exit_blood.ogg', 100, 1, -1) + visible_message("And springs back out!") + break -/mob/living/simple_animal/hostile/megafauna/bubblegum/proc/get_pools(turf/T, range) - . = list() - for(var/obj/effect/decal/cleanable/nearby in view(T, range)) - if(nearby.can_bloodcrawl_in()) - . += nearby /mob/living/simple_animal/hostile/megafauna/bubblegum/proc/blood_spray() visible_message("[src] sprays a stream of gore!") - var/range = 6 + round(anger_modifier * 0.4) - var/turf/previousturf = get_turf(src) - var/turf/J = previousturf - var/targetdir = get_dir(src, target) - if(target.loc == loc) - targetdir = dir - face_atom(target) - new /obj/effect/decal/cleanable/blood/bubblegum(J) - for(var/i in 1 to range) - J = get_step(previousturf, targetdir) - PoolOrNew(/obj/effect/overlay/temp/dir_setting/bloodsplatter, list(previousturf, get_dir(previousturf, J))) - playsound(previousturf,'sound/effects/splat.ogg', 100, 1, -1) - if(!J || !previousturf.atmos_adjacent_turfs || !previousturf.atmos_adjacent_turfs[J]) - break - new /obj/effect/decal/cleanable/blood/bubblegum(J) - previousturf = J - sleep(1) - -/obj/effect/decal/cleanable/blood/bubblegum - bloodiness = 0 - -/obj/effect/decal/cleanable/blood/bubblegum/can_bloodcrawl_in() - return TRUE + spawn(0) + var/turf/E = get_edge_target_turf(src, src.dir) + var/range = 10 + for(var/turf/open/J in getline(src,E)) + if(!range) + break + playsound(J,'sound/effects/splat.ogg', 100, 1, -1) + new /obj/effect/decal/cleanable/blood(J) + range-- + sleep(1) /mob/living/simple_animal/hostile/megafauna/bubblegum/proc/slaughterlings() visible_message("[src] summons a shoal of slaughterlings!") - var/max_amount = 6 - for(var/H in get_pools(get_turf(src), 1)) - if(!max_amount) - break - max_amount-- - var/obj/effect/decal/cleanable/blood/B = H - new /mob/living/simple_animal/hostile/asteroid/hivelordbrood/blood/slaughter(B.loc) - return max_amount + for(var/obj/effect/decal/cleanable/blood/H in range(src, 10)) + if(prob(25)) + new /mob/living/simple_animal/hostile/asteroid/hivelordbrood/blood/slaughter(H.loc) /mob/living/simple_animal/hostile/asteroid/hivelordbrood/blood/slaughter name = "slaughterling" desc = "Though not yet strong enough to create a true physical form, it's nonetheless determined to murder you." - density = 0 - faction = list("mining", "boss") + faction = list("mining") weather_immunities = list("lava","ash") -/mob/living/simple_animal/hostile/asteroid/hivelordbrood/blood/slaughter/CanPass(atom/movable/mover, turf/target, height = 0) - if(istype(mover, /mob/living/simple_animal/hostile/megafauna/bubblegum)) - return 1 - return 0 - -#undef MEDAL_PREFIX \ No newline at end of file diff --git a/code/modules/mob/living/simple_animal/hostile/megafauna/colossus.dm b/code/modules/mob/living/simple_animal/hostile/megafauna/colossus.dm index 6f1a8323af..bd305c5c30 100644 --- a/code/modules/mob/living/simple_animal/hostile/megafauna/colossus.dm +++ b/code/modules/mob/living/simple_animal/hostile/megafauna/colossus.dm @@ -1,28 +1,3 @@ - -#define MEDAL_PREFIX "Colossus" -/* - -COLOSSUS - -The colossus spawns randomly wherever a lavaland creature is able to spawn. It is powerful, ancient, and extremely deadly. -The colossus has a degree of sentience, proving this in speech during its attacks. - -It acts as a melee creature, chasing down and attacking its target while also using different attacks to augment its power that increase as it takes damage. - -The colossus' true danger lies in its ranged capabilities. It fires immensely damaging death bolts that penetrate all armor in a variety of ways: - 1. The colossus fires death bolts in alternating patterns: the cardinal directions and the diagonal directions. - 2. The colossus fires death bolts in a shotgun-like pattern, instantly downing anything unfortunate enough to be hit by all of them. - 3. The colossus fires a spiral of death bolts. -At 33% health, the colossus gains an additional attack: - 4. The colossus fires two spirals of death bolts, spinning in opposite directions. - -When a colossus dies, it leaves behind a chunk of glowing crystal known as a black box. Anything placed inside will carry over into future rounds. -For instance, you could place a bag of holding into the black box, and then kill another colossus next round and retrieve the bag of holding from inside. - -Difficulty: Very Hard - -*/ - /mob/living/simple_animal/hostile/megafauna/colossus name = "colossus" desc = "A monstrous creature protected by heavy shielding." @@ -35,49 +10,55 @@ Difficulty: Very Hard icon_dead = "dragon_dead" friendly = "stares down" icon = 'icons/mob/lavaland/96x96megafauna.dmi' + faction = list("mining") + weather_immunities = list("lava","ash") speak_emote = list("roars") + luminosity = 3 armour_penetration = 40 melee_damage_lower = 40 melee_damage_upper = 40 speed = 1 move_to_delay = 10 ranged = 1 + flying = 1 + mob_size = MOB_SIZE_LARGE pixel_x = -32 + aggro_vision_range = 18 + idle_vision_range = 5 del_on_death = 1 - medal_type = MEDAL_PREFIX - score_type = COLOSSUS_SCORE - loot = list(/obj/machinery/anomalous_crystal/random) + loot = list(/obj/machinery/smartfridge/black_box) butcher_results = list(/obj/item/weapon/ore/diamond = 5, /obj/item/stack/sheet/sinew = 5, /obj/item/stack/sheet/animalhide/ashdrake = 10, /obj/item/stack/sheet/bone = 30) + deathmessage = "disintegrates, leaving a glowing core in its wake." death_sound = 'sound/magic/demon_dies.ogg' + damage_coeff = list(BRUTE = 1, BURN = 0.5, TOX = 1, CLONE = 1, STAMINA = 0, OXY = 1) + var/anger_modifier = 0 + var/obj/item/device/gps/internal -/mob/living/simple_animal/hostile/megafauna/colossus/devour(mob/living/L) - visible_message("[src] disintegrates [L]!") - L.dust() + +/mob/living/simple_animal/hostile/megafauna/colossus/AttackingTarget() + ..() + if(isliving(target)) + var/mob/living/L = target + if(L.stat == DEAD) + src.visible_message("[src] disintegrates [L]!") + L.dust() /mob/living/simple_animal/hostile/megafauna/colossus/OpenFire() anger_modifier = Clamp(((maxHealth - health)/50),0,20) ranged_cooldown = world.time + 120 - if(enrage(target)) - if(move_to_delay == initial(move_to_delay)) - visible_message("\"You can't dodge.\"") - ranged_cooldown = world.time + 30 - telegraph() - dir_shots(alldirs) - move_to_delay = 3 - return - else - move_to_delay = initial(move_to_delay) - if(prob(20+anger_modifier)) //Major attack telegraph() if(health < maxHealth/3) double_spiral() else - visible_message("\"Judgement.\"") - addtimer(src, "spiral_shoot", 0, TIMER_NORMAL, rand(0, 1)) + visible_message("\"Judgement.\"") + if(prob(50)) + spiral_shoot() + else + spiral_shoot(1) else if(prob(20)) ranged_cooldown = world.time + 30 @@ -88,13 +69,23 @@ Difficulty: Very Hard blast() else ranged_cooldown = world.time + 40 - addtimer(src, "alternating_dir_shots", 0) + diagonals() + sleep(10) + cardinals() + sleep(10) + diagonals() + sleep(10) + cardinals() /mob/living/simple_animal/hostile/megafauna/colossus/New() ..() internal = new/obj/item/device/gps/internal/colossus(src) +/mob/living/simple_animal/hostile/megafauna/colossus/Destroy() + qdel(internal) + . = ..() + /obj/effect/overlay/temp/at_shield name = "anti-toolbox field" desc = "A shimmering forcefield protecting the colossus." @@ -108,7 +99,7 @@ Difficulty: Very Hard /obj/effect/overlay/temp/at_shield/New(new_loc, new_target) ..() target = new_target - addtimer(src, "orbit", 0, TIMER_NORMAL, target, 0, FALSE, 0, 0, FALSE, TRUE) + addtimer(src, "orbit", 0, FALSE, target, 0, FALSE, 0, 0, FALSE, TRUE) /mob/living/simple_animal/hostile/megafauna/colossus/bullet_act(obj/item/projectile/P) if(!stat) @@ -120,114 +111,98 @@ Difficulty: Very Hard AT.pixel_y += random_y ..() -/mob/living/simple_animal/hostile/megafauna/colossus/proc/enrage(mob/living/L) - if(ishuman(L)) - var/mob/living/carbon/human/H = L - if(H.martial_art && prob(H.martial_art.deflection_chance)) - . = TRUE - -/mob/living/simple_animal/hostile/megafauna/colossus/proc/alternating_dir_shots() - dir_shots(diagonals) - sleep(10) - dir_shots(cardinal) - sleep(10) - dir_shots(diagonals) - sleep(10) - dir_shots(cardinal) /mob/living/simple_animal/hostile/megafauna/colossus/proc/double_spiral() - visible_message("\"Die.\"") + visible_message("\"Die.\"") sleep(10) addtimer(src, "spiral_shoot", 0) - addtimer(src, "spiral_shoot", 0, TIMER_NORMAL, 1) + addtimer(src, "spiral_shoot", 0, FALSE, 1) -/mob/living/simple_animal/hostile/megafauna/colossus/proc/spiral_shoot(negative = 0, counter_start = 1) - var/counter = counter_start +/mob/living/simple_animal/hostile/megafauna/colossus/proc/spiral_shoot(negative = 0) + var/counter = 1 var/turf/marker for(var/i in 1 to 80) switch(counter) if(1) - marker = locate(x, y - 2, z) + marker = locate(x,y - 2,z) if(2) - marker = locate(x - 1, y - 2, z) + marker = locate(x - 1,y - 2,z) if(3) - marker = locate(x - 2, y - 2, z) + marker = locate(x - 2, y - 2,z) if(4) - marker = locate(x - 2, y - 1, z) + marker = locate(x - 2,y - 1,z) if(5) - marker = locate(x - 2, y, z) + marker = locate (x -2 ,y,z) if(6) - marker = locate(x - 2, y + 1, z) + marker = locate(x - 2, y+1,z) if(7) marker = locate(x - 2, y + 2, z) if(8) - marker = locate(x - 1, y + 2, z) + marker = locate(x - 1, y + 2,z) if(9) - marker = locate(x, y + 2, z) + marker = locate(x, y + 2,z) if(10) - marker = locate(x + 1, y + 2, z) + marker = locate(x + 1, y+2,z) if(11) - marker = locate(x + 2, y + 2, z) + marker = locate(x+ 2, y + 2,z) if(12) - marker = locate(x + 2, y + 1, z) + marker = locate(x+2,y+1,z) if(13) - marker = locate(x + 2, y, z) + marker = locate(x+2,y,z) if(14) - marker = locate(x + 2, y - 1, z) + marker = locate(x+2, y - 1, z) if(15) - marker = locate(x + 2, y - 2, z) + marker = locate(x+2, y - 2, z) if(16) - marker = locate(x + 1, y - 2, z) + marker = locate(x+1, y -2, z) if(negative) counter-- else counter++ if(counter > 16) - counter = 1 - if(counter < 1) + counter = 0 + if(counter < 0) counter = 16 shoot_projectile(marker) - playsound(get_turf(src), 'sound/magic/clockwork/invoke_general.ogg', 20, 1) sleep(1) /mob/living/simple_animal/hostile/megafauna/colossus/proc/shoot_projectile(turf/marker) - if(!marker || marker == loc) - return var/turf/startloc = get_turf(src) var/obj/item/projectile/P = new /obj/item/projectile/colossus(startloc) + playsound(get_turf(src), 'sound/magic/clockwork/invoke_general.ogg', 100, 1) P.current = startloc P.starting = startloc P.firer = src P.yo = marker.y - startloc.y P.xo = marker.x - startloc.x - if(target) - P.original = target - else - P.original = marker + P.original = marker P.fire() /mob/living/simple_animal/hostile/megafauna/colossus/proc/random_shots() - var/turf/U = get_turf(src) - playsound(U, 'sound/magic/clockwork/invoke_general.ogg', 300, 1, 5) - for(var/T in RANGE_TURFS(12, U) - U) + for(var/turf/turf in range(12,get_turf(src))) if(prob(5)) - shoot_projectile(T) + shoot_projectile(turf) /mob/living/simple_animal/hostile/megafauna/colossus/proc/blast() - playsound(get_turf(src), 'sound/magic/clockwork/invoke_general.ogg', 200, 1, 2) - var/turf/T = get_turf(target) - newtonian_move(get_dir(T, targets_from)) - for(var/turf/turf in range(1, T)) + for(var/turf/turf in range(1, target)) shoot_projectile(turf) -/mob/living/simple_animal/hostile/megafauna/colossus/proc/dir_shots(list/dirs) - if(!islist(dirs)) - dirs = alldirs.Copy() - playsound(get_turf(src), 'sound/magic/clockwork/invoke_general.ogg', 200, 1, 2) - for(var/d in dirs) - var/turf/E = get_step(src, d) +/mob/living/simple_animal/hostile/megafauna/colossus/proc/diagonals() + var/turf/T = locate(x + 2, y + 2, z) + shoot_projectile(T) + T = locate(x + 2, y -2, z) + shoot_projectile(T) + T = locate(x - 2, y + 2, z) + shoot_projectile(T) + T = locate(x - 2, y - 2, z) + shoot_projectile(T) + +/mob/living/simple_animal/hostile/megafauna/colossus/proc/cardinals() + var/list/attack_dirs = list(NORTH,EAST,SOUTH,WEST) + for(var/d in attack_dirs) + var/turf/E = get_edge_target_turf(src, d) shoot_projectile(E) /mob/living/simple_animal/hostile/megafauna/colossus/proc/telegraph() @@ -251,7 +226,7 @@ Difficulty: Very Hard /obj/item/projectile/colossus/on_hit(atom/target, blocked = 0) . = ..() - if(isturf(target) || isobj(target)) + if(istype(target,/turf/)||istype(target,/obj/structure/)) target.ex_act(2) @@ -269,49 +244,44 @@ Difficulty: Very Hard name = "black box" desc = "A completely indestructible chunk of crystal, rumoured to predate the start of this universe. It looks like you could store things inside it." icon = 'icons/obj/lavaland/artefacts.dmi' - icon_state = "blackbox" icon_on = "blackbox" icon_off = "blackbox" luminosity = 8 - max_n_of_items = INFINITY - resistance_flags = LAVA_PROOF | FIRE_PROOF | ACID_PROOF + max_n_of_items = 200 pixel_y = -4 use_power = 0 + var/duplicate = FALSE var/memory_saved = FALSE var/list/stored_items = list() - var/static/list/blacklist = typecacheof(list(/obj/item/weapon/spellbook)) - -/obj/machinery/smartfridge/black_box/update_icon() - return + var/list/blacklist = (/obj/item/weapon/spellbook) /obj/machinery/smartfridge/black_box/accept_check(obj/item/O) - if(!istype(O)) - return FALSE - if(is_type_in_typecache(O, blacklist)) - return FALSE - return TRUE + if(O.type in blacklist) + return + if(istype(O, /obj/item)) + return 1 + return 0 /obj/machinery/smartfridge/black_box/New() - var/static/obj/machinery/smartfridge/black_box/current - if(current && current != src) - qdel(src, force=TRUE) - return - current = src + ..() + for(var/obj/machinery/smartfridge/black_box/B in machines) + if(B != src) + duplicate = 1 + qdel(src) ReadMemory() - . = ..() /obj/machinery/smartfridge/black_box/process() ..() - if(!memory_saved && ticker.current_state == GAME_STATE_FINISHED) + if(ticker.current_state == GAME_STATE_FINISHED && !memory_saved) WriteMemory() /obj/machinery/smartfridge/black_box/proc/WriteMemory() var/savefile/S = new /savefile("data/npc_saves/Blackbox.sav") stored_items = list() - - for(var/obj/O in (contents-component_parts)) + for(var/obj/I in component_parts) + qdel(I) + for(var/obj/O in contents) stored_items += O.type - S["stored_items"] << stored_items memory_saved = TRUE @@ -323,17 +293,11 @@ Difficulty: Very Hard stored_items = list() for(var/item in stored_items) - create_item(item) + new item(src) -//in it's own proc to avoid issues with items that nolonger exist in the code base. -//try catch doesn't always prevent byond runtimes from halting a proc, -/obj/machinery/smartfridge/black_box/proc/create_item(item_type) - new item_type(src) -/obj/machinery/smartfridge/black_box/Destroy(force = FALSE) - if(force) - for(var/thing in src) - qdel(thing) +/obj/machinery/smartfridge/black_box/Destroy() + if(duplicate) return ..() else return QDEL_HINT_LETMELIVE @@ -357,421 +321,3 @@ Difficulty: Very Hard /obj/machinery/smartfridge/black_box/default_deconstruction_crowbar() return - -///Anomolous Crystal/// - -/obj/machinery/anomalous_crystal - name = "anomalous crystal" - desc = "A strange chunk of crystal, being in the presence of it fills you with equal parts excitement and dread." - icon = 'icons/obj/lavaland/artefacts.dmi' - icon_state = "anomaly_crystal" - luminosity = 8 - resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | ACID_PROOF - use_power = 0 - density = 1 - languages_spoken = ALL - languages_understood = ALL - flags = HEAR - var/activation_method = "touch" - var/activation_damage_type = null - var/last_use_timer = 0 - var/cooldown_add = 30 - var/list/affected_targets = list() - var/activation_sound = 'sound/effects/break_stone.ogg' - -/obj/machinery/anomalous_crystal/New() - activation_method = pick("touch","laser","bullet","energy","bomb","mob_bump","heat","weapon","speech") - ..() - -/obj/machinery/anomalous_crystal/Hear(message, atom/movable/speaker, message_langs, raw_message, radio_freq, spans) - ..() - if(isliving(speaker)) - ActivationReaction(speaker,"speech") - -/obj/machinery/anomalous_crystal/attack_hand(mob/user) - ..() - ActivationReaction(user,"touch") - -/obj/machinery/anomalous_crystal/attackby(obj/item/I, mob/user, params) - if(I.is_hot()) - ActivationReaction(user,"heat") - else - ActivationReaction(user,"weapon") - ..() - -/obj/machinery/anomalous_crystal/bullet_act(obj/item/projectile/P, def_zone) - ..() - if(istype(P, /obj/item/projectile/magic)) - ActivationReaction(P.firer, "magic", P.damage_type) - return - ActivationReaction(P.firer, P.flag, P.damage_type) - -/obj/machinery/anomalous_crystal/proc/ActivationReaction(mob/user, method, damtype) - if(world.time < last_use_timer) - return 0 - if(activation_damage_type && activation_damage_type != damtype) - return 0 - if(method != activation_method) - return 0 - last_use_timer = (world.time + cooldown_add) - playsound(user, activation_sound, 100, 1) - return 1 - -/obj/machinery/anomalous_crystal/Bumped(atom/AM as mob|obj) - ..() - if(ismob(AM)) - ActivationReaction(AM,"mob_bump") - -/obj/machinery/anomalous_crystal/ex_act() - ActivationReaction(null,"bomb") - -/obj/machinery/anomalous_crystal/random/New()//Just a random crysal spawner for loot - var/random_crystal = pick(typesof(/obj/machinery/anomalous_crystal) - /obj/machinery/anomalous_crystal/random - /obj/machinery/anomalous_crystal) - new random_crystal(loc) - qdel(src) - -/obj/machinery/anomalous_crystal/honk //Strips and equips you as a clown. I apologize for nothing - activation_method = "mob_bump" - activation_sound = 'sound/items/bikehorn.ogg' - -/obj/machinery/anomalous_crystal/honk/ActivationReaction(mob/user) - if(..() && ishuman(user) && !(user in affected_targets)) - var/mob/living/carbon/human/H = user - for(var/obj/item/W in H) - H.unEquip(W) - var/datum/job/clown/C = new /datum/job/clown() - C.equip(H) - qdel(C) - affected_targets.Add(H) - -/obj/machinery/anomalous_crystal/honk/New() - ..() - activation_method = pick("mob_bump","speech") - -/obj/machinery/anomalous_crystal/theme_warp //Warps the area you're in to look like a new one - activation_method = "touch" - cooldown_add = 200 - var/terrain_theme = "winter" - var/NewTerrainFloors - var/NewTerrainWalls - var/NewTerrainChairs - var/NewTerrainTables - var/list/NewFlora = list() - var/florachance = 8 - -/obj/machinery/anomalous_crystal/theme_warp/New() - ..() - terrain_theme = pick("lavaland","winter","jungle","ayy lmao") - switch(terrain_theme) - if("lavaland")//Depressurizes the place... and free cult metal, I guess. - NewTerrainFloors = /turf/open/floor/grass/snow/basalt - NewTerrainWalls = /turf/closed/wall/mineral/cult - NewFlora = list(/mob/living/simple_animal/hostile/asteroid/goldgrub) - florachance = 1 - if("winter") //Snow terrain is slow to move in and cold! Get the assistants to shovel your driveway. - NewTerrainFloors = /turf/open/floor/grass/snow - NewTerrainWalls = /turf/closed/wall/mineral/wood - NewTerrainChairs = /obj/structure/chair/wood/normal - NewTerrainTables = /obj/structure/table/glass - NewFlora = list(/obj/structure/flora/grass/green, /obj/structure/flora/grass/brown, /obj/structure/flora/grass/both) - if("jungle") //Beneficial due to actually having breathable air. Plus, monkeys and bows and arrows. - NewTerrainFloors = /turf/open/floor/grass - NewTerrainWalls = /turf/closed/wall/mineral/sandstone - NewTerrainChairs = /obj/structure/chair/wood - NewTerrainTables = /obj/structure/table/wood - NewFlora = list(/obj/structure/flora/ausbushes/sparsegrass, /obj/structure/flora/ausbushes/fernybush, /obj/structure/flora/ausbushes/leafybush, - /obj/structure/flora/ausbushes/grassybush, /obj/structure/flora/ausbushes/sunnybush, /obj/structure/flora/tree/palm, /mob/living/carbon/monkey, - /obj/item/weapon/gun/ballistic/bow, /obj/item/weapon/storage/backpack/quiver/full) - florachance = 20 - if("ayy lmao") //Beneficial, turns stuff into alien alloy which is useful to cargo and research. Also repairs atmos. - NewTerrainFloors = /turf/open/floor/plating/abductor - NewTerrainWalls = /turf/closed/wall/mineral/abductor - NewTerrainChairs = /obj/structure/bed/abductor //ayys apparently don't have chairs. An entire species of people who only recline. - NewTerrainTables = /obj/structure/table/abductor - -/obj/machinery/anomalous_crystal/theme_warp/ActivationReaction(mob/user, method) - if(..()) - var/area/A = get_area(src) - if(!A.outdoors && !(A in affected_targets)) - for(var/atom/Stuff in A) - if(isturf(Stuff)) - var/turf/T = Stuff - if((isspaceturf(T) || isfloorturf(T)) && NewTerrainFloors) - var/turf/open/O = T.ChangeTurf(NewTerrainFloors) - if(O.air) - var/datum/gas_mixture/G = O.air - G.copy_from_turf(O) - if(prob(florachance) && NewFlora.len && !is_blocked_turf(O)) - var/atom/Picked = pick(NewFlora) - new Picked(O) - continue - if(iswallturf(T) && NewTerrainWalls) - T.ChangeTurf(NewTerrainWalls) - continue - if(istype(Stuff, /obj/structure/chair) && NewTerrainChairs) - var/obj/structure/chair/Original = Stuff - var/obj/structure/chair/C = new NewTerrainChairs(Original.loc) - C.setDir(Original.dir) - qdel(Stuff) - continue - if(istype(Stuff, /obj/structure/table) && NewTerrainTables) - new NewTerrainTables(Stuff.loc) - continue - affected_targets += A - -/obj/machinery/anomalous_crystal/emitter //Generates a projectile when interacted with - activation_method = "touch" - cooldown_add = 50 - var/generated_projectile = /obj/item/projectile/beam/emitter - -/obj/machinery/anomalous_crystal/emitter/New() - ..() - generated_projectile = pick(/obj/item/projectile/magic/fireball/infernal,/obj/item/projectile/magic/spellblade, - /obj/item/projectile/bullet/meteorshot, /obj/item/projectile/beam/xray, /obj/item/projectile/colossus) - -/obj/machinery/anomalous_crystal/emitter/ActivationReaction(mob/user, method) - if(..()) - var/obj/item/projectile/P = new generated_projectile(get_turf(src)) - P.setDir(dir) - switch(dir) - if(NORTH) - P.yo = 20 - P.xo = 0 - if(EAST) - P.yo = 0 - P.xo = 20 - if(WEST) - P.yo = 0 - P.xo = -20 - else - P.yo = -20 - P.xo = 0 - P.fire() - -/obj/machinery/anomalous_crystal/dark_reprise //Revives anyone nearby, but turns them into shadowpeople and renders them uncloneable, so the crystal is your only hope of getting up again if you go down. - activation_method = "touch" - activation_sound = 'sound/hallucinations/growl1.ogg' - -/obj/machinery/anomalous_crystal/dark_reprise/ActivationReaction(mob/user, method) - if(..()) - for(var/i in range(1, src)) - if(isturf(i)) - PoolOrNew(/obj/effect/overlay/temp/cult/sparks, i) - continue - if(ishuman(i)) - var/mob/living/carbon/human/H = i - if(H.stat == DEAD) - H.set_species(/datum/species/shadow, 1) - H.revive(1,0) - H.disabilities |= NOCLONE //Free revives, but significantly limits your options for reviving except via the crystal - H.grab_ghost(force = TRUE) - -/obj/machinery/anomalous_crystal/helpers //Lets ghost spawn as helpful creatures that can only heal people slightly. Incredibly fragile and they can't converse with humans - activation_method = "touch" - var/ready_to_deploy = 0 - -/obj/machinery/anomalous_crystal/helpers/ActivationReaction(mob/user, method) - if(..() && !ready_to_deploy) - ready_to_deploy = 1 - notify_ghosts("An anomalous crystal has been activated in [get_area(src)]! This crystal can always be used by ghosts hereafter.", enter_link = "(Click to enter)", source = src, action = NOTIFY_ATTACK) - -/obj/machinery/anomalous_crystal/helpers/attack_ghost(mob/dead/observer/user) - ..() - if(ready_to_deploy) - var/be_helper = alert("Become a Lightgeist? (Warning, You can no longer be cloned!)",,"Yes","No") - if(be_helper == "Yes" && !qdeleted(src) && isobserver(user)) - var/mob/living/simple_animal/hostile/lightgeist/W = new /mob/living/simple_animal/hostile/lightgeist(get_turf(loc)) - W.key = user.key - - -/obj/machinery/anomalous_crystal/helpers/Topic(href, href_list) - if(href_list["ghostjoin"]) - var/mob/dead/observer/ghost = usr - if(istype(ghost)) - attack_ghost(ghost) - -/mob/living/simple_animal/hostile/lightgeist - name = "lightgeist" - desc = "This small floating creature is a completely unknown form of life... being near it fills you with a sense of tranquility." - icon_state = "lightgeist" - icon_living = "lightgeist" - icon_dead = "butterfly_dead" - turns_per_move = 1 - response_help = "waves away" - response_disarm = "brushes aside" - response_harm = "disrupts" - speak_emote = list("oscillates") - maxHealth = 2 - health = 2 - harm_intent_damage = 1 - friendly = "mends" - density = 0 - movement_type = FLYING - pass_flags = PASSTABLE | PASSGRILLE | PASSMOB - ventcrawler = VENTCRAWLER_ALWAYS - mob_size = MOB_SIZE_TINY - gold_core_spawnable = 0 - verb_say = "warps" - verb_ask = "floats inquisitively" - verb_exclaim = "zaps" - verb_yell = "bangs" - damage_coeff = list(BRUTE = 1, BURN = 1, TOX = 0, CLONE = 0, STAMINA = 0, OXY = 0) - luminosity = 4 - faction = list("neutral") - languages_spoken = SLIME - languages_understood = ALL - del_on_death = 1 - unsuitable_atmos_damage = 0 - movement_type = FLYING - minbodytemp = 0 - maxbodytemp = 1500 - obj_damage = 0 - environment_smash = 0 - AIStatus = AI_OFF - stop_automated_movement = 1 - var/heal_power = 5 - -/mob/living/simple_animal/hostile/lightgeist/New() - ..() - verbs -= /mob/living/verb/pulled - verbs -= /mob/verb/me_verb - var/datum/atom_hud/medsensor = huds[DATA_HUD_MEDICAL_ADVANCED] - medsensor.add_hud_to(src) - -/mob/living/simple_animal/hostile/lightgeist/AttackingTarget() - ..() - if(isliving(target) && target != src) - var/mob/living/L = target - if(L.stat < DEAD) - L.heal_overall_damage(heal_power, heal_power) - PoolOrNew(/obj/effect/overlay/temp/heal, list(get_turf(target), "#80F5FF")) - -/mob/living/simple_animal/hostile/lightgeist/ghostize() - . = ..() - if(.) - death() - - -/obj/machinery/anomalous_crystal/refresher //Deletes and recreates a copy of the item, "refreshing" it. - activation_method = "touch" - cooldown_add = 50 - activation_sound = 'sound/magic/TIMEPARADOX2.ogg' - var/list/banned_items_typecache = list(/obj/item/weapon/storage, /obj/item/weapon/implant, /obj/item/weapon/implanter, /obj/item/weapon/disk/nuclear, /obj/item/projectile, /obj/item/weapon/spellbook) - -/obj/machinery/anomalous_crystal/refresher/New() - ..() - banned_items_typecache = typecacheof(banned_items_typecache) - - -/obj/machinery/anomalous_crystal/refresher/ActivationReaction(mob/user, method) - if(..()) - var/list/L = list() - var/turf/T = get_step(src, dir) - PoolOrNew(/obj/effect/overlay/temp/emp/pulse,T) - for(var/i in T) - if(istype(i, /obj/item) && !is_type_in_typecache(i, banned_items_typecache)) - var/obj/item/W = i - if(!W.admin_spawned) - L += W - if(L.len) - var/obj/item/CHOSEN = pick(L) - new CHOSEN.type(T) - qdel(CHOSEN) - -/obj/machinery/anomalous_crystal/possessor //Allows you to bodyjack small animals, then exit them at your leisure, but you can only do this once per activation. Because they blow up. Also, if the bodyjacked animal dies, SO DO YOU. - activation_method = "touch" - -/obj/machinery/anomalous_crystal/possessor/ActivationReaction(mob/user, method) - if(..()) - if(ishuman(user)) - var/mobcheck = 0 - for(var/mob/living/simple_animal/A in range(1, src)) - if(A.melee_damage_upper > 5 || A.mob_size >= MOB_SIZE_LARGE || A.ckey || A.stat) - break - var/obj/structure/closet/stasis/S = new /obj/structure/closet/stasis(A) - user.forceMove(S) - mobcheck = 1 - break - if(!mobcheck) - new /mob/living/simple_animal/cockroach(get_step(src,dir)) //Just in case there aren't any animals on the station, this will leave you with a terrible option to possess if you feel like it - -/obj/structure/closet/stasis - name = "quantum entanglement stasis warp field" - desc = "You can hardly comprehend this thing... which is why you can't see it." - icon_state = null //This shouldn't even be visible, so if it DOES show up, at least nobody will notice - density = 1 - anchored = 1 - obj_integrity = 999 - var/mob/living/simple_animal/holder_animal - -/obj/structure/closet/stasis/process() - if(holder_animal) - if(holder_animal.stat == DEAD && !qdeleted(holder_animal)) - dump_contents() - holder_animal.gib() - return - -/obj/structure/closet/stasis/New() - ..() - if(isanimal(loc)) - holder_animal = loc - START_PROCESSING(SSobj, src) - -/obj/structure/closet/stasis/Entered(atom/A) - if(isliving(A) && holder_animal) - var/mob/living/L = A - L.notransform = 1 - L.disabilities |= MUTE - L.status_flags |= GODMODE - L.mind.transfer_to(holder_animal) - var/obj/effect/proc_holder/spell/targeted/exit_possession/P = new /obj/effect/proc_holder/spell/targeted/exit_possession - holder_animal.mind.AddSpell(P) - holder_animal.verbs -= /mob/living/verb/pulled - -/obj/structure/closet/stasis/dump_contents(var/kill = 1) - STOP_PROCESSING(SSobj, src) - for(var/mob/living/L in src) - L.disabilities &= ~MUTE - L.status_flags &= ~GODMODE - L.notransform = 0 - if(holder_animal && !qdeleted(holder_animal)) - holder_animal.mind.transfer_to(L) - L.mind.RemoveSpell(/obj/effect/proc_holder/spell/targeted/exit_possession) - if(kill || !isanimal(loc)) - L.death(0) - ..() - -/obj/structure/closet/stasis/emp_act() - return - -/obj/structure/closet/stasis/ex_act() - return - -/obj/effect/proc_holder/spell/targeted/exit_possession - name = "Exit Possession" - desc = "Exits the body you are possessing" - charge_max = 60 - clothes_req = 0 - invocation_type = "none" - max_targets = 1 - range = -1 - include_user = 1 - selection_type = "view" - action_icon_state = "exit_possession" - sound = null - -/obj/effect/proc_holder/spell/targeted/exit_possession/cast(list/targets, mob/user = usr) - if(!isfloorturf(user.loc)) - return - var/datum/mind/target_mind = user.mind - for(var/i in user) - if(istype(i, /obj/structure/closet/stasis)) - var/obj/structure/closet/stasis/S = i - S.dump_contents(0) - qdel(S) - break - user.gib() - target_mind.RemoveSpell(/obj/effect/proc_holder/spell/targeted/exit_possession) - - -#undef MEDAL_PREFIX diff --git a/code/modules/mob/living/simple_animal/hostile/megafauna/dragon.dm b/code/modules/mob/living/simple_animal/hostile/megafauna/dragon.dm index 9417ed4876..c192e78518 100644 --- a/code/modules/mob/living/simple_animal/hostile/megafauna/dragon.dm +++ b/code/modules/mob/living/simple_animal/hostile/megafauna/dragon.dm @@ -1,29 +1,3 @@ -#define MEDAL_PREFIX "Drake" -/* - -ASH DRAKE - -Ash drakes spawn randomly wherever a lavaland creature is able to spawn. They are the draconic guardians of the Necropolis. - -It acts as a melee creature, chasing down and attacking its target while also using different attacks to augment its power that increase as it takes damage. - -Whenever possible, the drake will breathe fire in the four cardinal directions, igniting and heavily damaging anything caught in the blast. -It also often causes fire to rain from the sky - many nearby turfs will flash red as a fireball crashes into them, dealing damage to anything on the turfs. -The drake also utilizes its wings to fly into the sky and crash down onto a specified point. Anything on this point takes tremendous damage. - - Sometimes it will chain these swooping attacks over and over, making swiftness a necessity. - -When an ash drake dies, it leaves behind a chest that can contain four things: - 1. A spectral blade that allows its wielder to call ghosts to it, enhancing its power - 2. A lava staff that allows its wielder to create lava - 3. A spellbook and wand of fireballs - 4. A bottle of dragon's blood with several effects, including turning its imbiber into a drake themselves. - -When butchered, they leave behind diamonds, sinew, bone, and ash drake hide. Ash drake hide can be used to create a hooded cloak that protects its wearer from ash storms. - -Difficulty: Medium - -*/ - /mob/living/simple_animal/hostile/megafauna/dragon name = "ash drake" desc = "Guardians of the necropolis." @@ -36,27 +10,39 @@ Difficulty: Medium icon_dead = "dragon_dead" friendly = "stares down" icon = 'icons/mob/lavaland/dragon.dmi' + faction = list("mining") + weather_immunities = list("lava","ash") speak_emote = list("roars") + luminosity = 3 armour_penetration = 40 melee_damage_lower = 40 melee_damage_upper = 40 speed = 1 move_to_delay = 10 ranged = 1 + flying = 1 + mob_size = MOB_SIZE_LARGE pixel_x = -16 + aggro_vision_range = 18 + idle_vision_range = 5 loot = list(/obj/structure/closet/crate/necropolis/dragon) butcher_results = list(/obj/item/weapon/ore/diamond = 5, /obj/item/stack/sheet/sinew = 5, /obj/item/stack/sheet/animalhide/ashdrake = 10, /obj/item/stack/sheet/bone = 30) + var/anger_modifier = 0 + var/obj/item/device/gps/internal var/swooping = 0 var/swoop_cooldown = 0 - medal_type = MEDAL_PREFIX - score_type = DRAKE_SCORE deathmessage = "collapses into a pile of bones, its flesh sloughing away." death_sound = 'sound/magic/demon_dies.ogg' + damage_coeff = list(BRUTE = 1, BURN = 0.5, TOX = 1, CLONE = 1, STAMINA = 0, OXY = 1) /mob/living/simple_animal/hostile/megafauna/dragon/New() ..() internal = new/obj/item/device/gps/internal/dragon(src) +/mob/living/simple_animal/hostile/megafauna/dragon/Destroy() + qdel(internal) + . = ..() + /mob/living/simple_animal/hostile/megafauna/dragon/ex_act(severity, target) if(severity == 3) return @@ -68,20 +54,13 @@ Difficulty: Medium return ..() /mob/living/simple_animal/hostile/megafauna/dragon/AttackingTarget() - if(!swooping) - ..() - -/mob/living/simple_animal/hostile/megafauna/dragon/DestroySurroundings() - if(!swooping) - ..() - -/mob/living/simple_animal/hostile/megafauna/dragon/Move() - if(!swooping) - ..() - -/mob/living/simple_animal/hostile/megafauna/dragon/Goto(target, delay, minimum_distance) - if(!swooping) + if(swooping) + return + else ..() + if(isliving(target)) + var/mob/living/L = target + devour(L) /mob/living/simple_animal/hostile/megafauna/dragon/Process_Spacemove(movement_dir = 0) return 1 @@ -135,21 +114,20 @@ Difficulty: Medium /mob/living/simple_animal/hostile/megafauna/dragon/OpenFire() anger_modifier = Clamp(((maxHealth - health)/50),0,20) ranged_cooldown = world.time + ranged_cooldown_time - if(swooping) - fire_rain() - return if(prob(15 + anger_modifier) && !client) if(health < maxHealth/2) - addtimer(src, "swoop_attack", 0, TIMER_NORMAL, 1) + swoop_attack(1) else fire_rain() - else if(prob(10+anger_modifier) && !client) + else if(prob(10+anger_modifier) && !client && !swooping) if(health > maxHealth/2) - addtimer(src, "swoop_attack", 0) + swoop_attack() else - addtimer(src, "triple_swoop", 0) + swoop_attack() + swoop_attack() + swoop_attack() else fire_walls() @@ -160,39 +138,34 @@ Difficulty: Medium PoolOrNew(/obj/effect/overlay/temp/target, turf) /mob/living/simple_animal/hostile/megafauna/dragon/proc/fire_walls() + var/list/attack_dirs = list(NORTH,EAST,SOUTH,WEST) + if(prob(50)) + attack_dirs = list(NORTH,WEST,SOUTH,EAST) playsound(get_turf(src),'sound/magic/Fireball.ogg', 200, 1) - for(var/d in cardinal) - addtimer(src, "fire_wall", 0, TIMER_NORMAL, d) + for(var/d in attack_dirs) + addtimer(src, "fire_wall", 0, FALSE, d) -/mob/living/simple_animal/hostile/megafauna/dragon/proc/fire_wall(dir) - var/list/hit_things = list(src) - var/turf/E = get_edge_target_turf(src, dir) +/mob/living/simple_animal/hostile/megafauna/dragon/proc/fire_wall(d) + var/turf/E = get_edge_target_turf(src, d) var/range = 10 - var/turf/previousturf = get_turf(src) - for(var/turf/J in getline(src,E)) - if(!range || (J != previousturf && (!previousturf.atmos_adjacent_turfs || !previousturf.atmos_adjacent_turfs[J]))) + for(var/turf/open/J in getline(src,E)) + if(!range) break range-- PoolOrNew(/obj/effect/hotspot,J) J.hotspot_expose(700,50,1) - for(var/mob/living/L in J.contents - hit_things) - L.adjustFireLoss(20) - L << "You're hit by the drake's fire breath!" - hit_things += L - previousturf = J + for(var/mob/living/L in J) + if(L != src) + L.adjustFireLoss(20) + L << "You're hit by the drake's fire breath!" sleep(1) -/mob/living/simple_animal/hostile/megafauna/dragon/proc/triple_swoop() - swoop_attack() - swoop_attack() - swoop_attack() - /mob/living/simple_animal/hostile/megafauna/dragon/proc/swoop_attack(fire_rain = 0, atom/movable/manual_target) if(stat || swooping) return swoop_cooldown = world.time + 200 - var/atom/swoop_target + var/swoop_target if(manual_target) swoop_target = manual_target else @@ -213,13 +186,13 @@ Difficulty: Medium fire_rain() icon_state = "dragon" - if(swoop_target && !qdeleted(swoop_target) && swoop_target.z == src.z) + if(swoop_target && !qdeleted(swoop_target)) tturf = get_turf(swoop_target) else tturf = get_turf(src) forceMove(tturf) PoolOrNew(/obj/effect/overlay/temp/dragon_swoop, tturf) - animate(src, pixel_x = initial(pixel_x), pixel_z = 0, time = 10) + animate(src, pixel_x = 0, pixel_z = 0, time = 10) sleep(10) playsound(src.loc, 'sound/effects/meteorimpact.ogg', 200, 1) for(var/mob/living/L in orange(1, src)) @@ -229,11 +202,8 @@ Difficulty: Medium else L.adjustBruteLoss(75) if(L && !qdeleted(L)) // Some mobs are deleted on death - var/throw_dir = get_dir(src, L) - if(L.loc == loc) - throw_dir = pick(alldirs) - var/throwtarget = get_edge_target_turf(src, throw_dir) - L.throw_at_fast(throwtarget, 3) + var/throwtarget = get_edge_target_turf(src, get_dir(src, get_step_away(L, src))) + L.throw_at_fast(throwtarget) visible_message("[L] is thrown clear of [src]!") for(var/mob/M in range(7, src)) @@ -247,7 +217,7 @@ Difficulty: Medium if(!istype(A)) return if(swoop_cooldown >= world.time) - src << "You need to wait 20 seconds between swoop attacks!" + src << "You need to wait 20 seconds between swoop attacks!M/span>" return swoop_attack(1, A) @@ -259,16 +229,10 @@ Difficulty: Medium /mob/living/simple_animal/hostile/megafauna/dragon/lesser name = "lesser ash drake" - maxHealth = 200 - health = 200 - faction = list("neutral") - obj_damage = 80 + maxHealth = 300 + health = 300 melee_damage_upper = 30 melee_damage_lower = 30 damage_coeff = list(BRUTE = 1, BURN = 1, TOX = 1, CLONE = 1, STAMINA = 0, OXY = 1) loot = list() -/mob/living/simple_animal/hostile/megafauna/dragon/lesser/grant_achievement(medaltype,scoretype) - return - -#undef MEDAL_PREFIX \ No newline at end of file diff --git a/code/modules/mob/living/simple_animal/hostile/megafauna/hierophant.dm b/code/modules/mob/living/simple_animal/hostile/megafauna/hierophant.dm deleted file mode 100644 index 2c6fc861f1..0000000000 --- a/code/modules/mob/living/simple_animal/hostile/megafauna/hierophant.dm +++ /dev/null @@ -1,600 +0,0 @@ -#define MEDAL_PREFIX "Hierophant" -/* - -The Hierophant - -The Hierophant spawns in its arena, an area designed to make it harder to fight than it would otherwise be. - -The text this boss speaks is ROT4, use ROT22 to decode - -The Hierophant's attacks are as follows, and INTENSIFY at a random chance based on Hierophant's health; -- Creates a cardinal or diagonal blast(Cross Blast) under its target, exploding after a short time. - INTENSITY EFFECT: Creates one of the cross blast types under itself instead of under the target. - INTENSITY EFFECT: The created Cross Blast fires in all directions if below half health. -- If no chasers exist, creates a chaser that will seek its target, leaving a trail of blasts. - INTENSITY EFFECT: Creates a second, slower chaser. -- Creates an expanding AoE burst. -- INTENSE ATTACKS: - If target is at least 2 tiles away; Blinks to the target after a very brief delay, damaging everything near the start and end points. - As above, but does so multiple times if below half health. - Rapidly creates Cross Blasts under a target. - If chasers are off cooldown, creates four high-speed chasers. -- IF TARGET WAS STRUCK IN MELEE: Creates a 3x3 square of blasts under the target. - -Cross Blasts and the AoE burst gain additional range as the Hierophant loses health, while Chasers gain additional speed. - -When The Hierophant dies, it leaves behind its staff, which, while much weaker than when wielded by The Hierophant itself, is still quite effective. -- The staff can place a teleport rune, allowing the user to teleport themself and their allies to the rune. - -Difficulty: Hard - -*/ - -/mob/living/simple_animal/hostile/megafauna/hierophant - name = "Hierophant" - desc = "Stolen from Hyper Light Drifter." - health = 2500 - maxHealth = 2500 - attacktext = "clubs" - //attack_sound = 'sound/weapons/sonic_jackhammer.ogg' - attack_sound = "swing_hit" - icon_state = "hierophant" - icon_living = "hierophant" - friendly = "stares down" - icon = 'icons/mob/lavaland/hierophant.dmi' - faction = list("boss") //asteroid mobs? get that shit out of my beautiful square house - speak_emote = list("preaches") - armour_penetration = 50 - melee_damage_lower = 10 - melee_damage_upper = 10 - speed = 1 - move_to_delay = 10 - ranged = 1 - pixel_x = -16 - ranged_cooldown_time = 40 - aggro_vision_range = 23 - loot = list(/obj/item/weapon/hierophant_staff) - wander = FALSE - var/burst_range = 3 //range on burst aoe - var/beam_range = 5 //range on cross blast beams - var/chaser_speed = 3 //how fast chasers are currently - var/chaser_cooldown = 101 //base cooldown/cooldown var between spawning chasers - var/major_attack_cooldown = 60 //base cooldown for major attacks - var/blinking = FALSE //if we're doing something that requires us to stand still and not attack - var/obj/effect/hierophant/spawned_rune //the rune we teleport back to - var/timeout_time = 15 //after this many Life() ticks with no target, we return to our rune - var/did_reset = TRUE //if we timed out, returned to our rune, and healed some - //var/list/kill_phrases = list("Wsyvgi sj irivkc xettih. Vitemvmrk...", "Irivkc wsyvgi jsyrh. Vitemvmrk...", "Jyip jsyrh. Egxmzexmrk vitemv gcgpiw...") - //var/list/target_phrases = list("Xevkix psgexih.", "Iriqc jsyrh.", "Eguymvih xevkix.") - medal_type = MEDAL_PREFIX - score_type = BIRD_SCORE - del_on_death = TRUE - death_sound = 'sound/magic/Repulse.ogg' - -/mob/living/simple_animal/hostile/megafauna/hierophant/New() - ..() - internal = new/obj/item/device/gps/internal/hierophant(src) - spawned_rune = new(loc) - -/mob/living/simple_animal/hostile/megafauna/hierophant/Life() - . = ..() - if(. && spawned_rune && !client) - if(target || loc == spawned_rune.loc) - timeout_time = initial(timeout_time) - else - timeout_time-- - if(timeout_time <= 0 && !did_reset) - did_reset = TRUE - //visible_message("\"Vixyvrmrk xs fewi...\"") - blink(spawned_rune) - adjustHealth(min((health - maxHealth) * 0.5, -50)) //heal for 50% of our missing health - wander = FALSE - /*if(health > maxHealth * 0.9) - visible_message("\"Vitemvw gsqtpixi. Stivexmrk ex qebmqyq ijjmgmirgc.\"") - else - visible_message("\"Vitemvw gsqtpixi. Stivexmsrep ijjmgmirgc gsqtvsqmwih.\"")*/ - -/mob/living/simple_animal/hostile/megafauna/hierophant/death() - if(health > 0 || stat == DEAD) - return - else - stat = DEAD - blinking = TRUE //we do a fancy animation, release a huge burst(), and leave our staff. - animate(src, alpha = 0, color = "660099", time = 20, easing = EASE_OUT) - addtimer(src, "update_atom_colour", 20) - burst_range = 10 - //visible_message("\"Mrmxmexmrk wipj-hiwxvygx wiuyirgi...\"") - visible_message("[src] disappears in a massive burst of magic, leaving only its staff.") - burst(get_turf(src)) - ..() - -/mob/living/simple_animal/hostile/megafauna/hierophant/Destroy() - qdel(spawned_rune) - . = ..() - -/mob/living/simple_animal/hostile/megafauna/hierophant/devour(mob/living/L) - for(var/obj/item/W in L) - if(!L.unEquip(W)) - qdel(W) - /*visible_message( - "\"[pick(kill_phrases)]\"\n[src] annihilates [L]!", - "You annihilate [L], restoring your health!")*/ - visible_message( - "\"Caw.\"\n[src] annihilates [L]!", - "You annihilate [L], restoring your health!") - adjustHealth(-L.maxHealth*0.5) - L.dust() - -/*/mob/living/simple_animal/hostile/megafauna/hierophant/GiveTarget(new_target) - var/targets_the_same = (new_target == target) - . = ..() - if(. && target && !targets_the_same) - visible_message("\"[pick(target_phrases)]\"")*/ - -/mob/living/simple_animal/hostile/megafauna/hierophant/adjustHealth(amount) - . = ..() - if(src && amount > 0 && !blinking) - wander = TRUE - did_reset = FALSE - -/mob/living/simple_animal/hostile/megafauna/hierophant/AttackingTarget() - if(!blinking) - if(target && isliving(target)) - addtimer(src, "melee_blast", 0, TIMER_NORMAL, get_turf(target)) //melee attacks on living mobs produce a 3x3 blast - ..() - -/mob/living/simple_animal/hostile/megafauna/hierophant/DestroySurroundings() - if(!blinking) - ..() - -/mob/living/simple_animal/hostile/megafauna/hierophant/Move() - if(!blinking) - /*if(!stat) - playsound(loc, 'sound/mecha/mechmove04.ogg', 150, 1, -4)*/ - ..() - -/mob/living/simple_animal/hostile/megafauna/hierophant/Goto(target, delay, minimum_distance) - wander = TRUE - if(!blinking) - ..() - -/mob/living/simple_animal/hostile/megafauna/hierophant/proc/calculate_rage() //how angry we are overall - did_reset = FALSE //oh hey we're doing SOMETHING, clearly we might need to heal if we recall - anger_modifier = Clamp(((maxHealth - health) / 42),0,50) - burst_range = initial(burst_range) + round(anger_modifier * 0.08) - beam_range = initial(beam_range) + round(anger_modifier * 0.12) - -/mob/living/simple_animal/hostile/megafauna/hierophant/OpenFire() - calculate_rage() - var/target_is_slow = FALSE - if(isliving(target)) - var/mob/living/L = target - if(!blinking && L.stat == DEAD && get_dist(src, L) > 2) - blink(L) - return - if(L.movement_delay() > 1.5) - target_is_slow = TRUE - chaser_speed = max(1, (3 - anger_modifier * 0.04) + target_is_slow * 0.5) - if(blinking) - return - ranged_cooldown = world.time + max(5, ranged_cooldown_time - anger_modifier * 0.75) //scale cooldown lower with high anger. - - if(prob(anger_modifier * 0.75)) //major ranged attack - var/list/possibilities = list() - var/cross_counter = 1 + round(anger_modifier * 0.12) - if(cross_counter > 1) - possibilities += "cross_blast_spam" - if(get_dist(src, target) > 2) - possibilities += "blink_spam" - if(chaser_cooldown < world.time) - if(prob(anger_modifier * 2)) - possibilities = list("chaser_swarm") - else - possibilities += "chaser_swarm" - if(possibilities.len) - ranged_cooldown = world.time + max(5, major_attack_cooldown - anger_modifier * 0.75) //we didn't cancel out of an attack, use the higher cooldown - var/blink_counter = 1 + round(anger_modifier * 0.08) - switch(pick(possibilities)) - if("blink_spam") //blink either once or multiple times. - if(health < maxHealth * 0.5 && !target_is_slow && blink_counter > 1) - //visible_message("\"Mx ampp rsx iwgeti.\"") - var/oldcolor = color - animate(src, color = "#660099", time = 6) - while(health && target && blink_counter) - if(loc == target.loc || loc == target) //we're on the same tile as them after about a second we can stop now - break - blink_counter-- - blinking = FALSE - blink(target) - blinking = TRUE - sleep(5) - animate(src, color = oldcolor, time = 8) - addtimer(src, "update_atom_colour", 8) - sleep(8) - blinking = FALSE - else - blink(target) - if("cross_blast_spam") //fire a lot of cross blasts at a target. - //visible_message("\"Piezi mx rsalivi xs vyr.\"") - blinking = TRUE - var/oldcolor = color - animate(src, color = "#660099", time = 6) - while(health && target && cross_counter) - cross_counter-- - var/delay = 6 - if(prob(60)) - addtimer(src, "cardinal_blasts", 0, TIMER_NORMAL, target) - else - addtimer(src, "diagonal_blasts", 0, TIMER_NORMAL, target) - delay = 5 //this one isn't so mean, so do the next one faster(if there is one) - sleep(delay) - animate(src, color = oldcolor, time = 8) - addtimer(src, "update_atom_colour", 8) - sleep(8) - blinking = FALSE - if("chaser_swarm") //fire four fucking chasers at a target and their friends. - //visible_message("\"Mx gerrsx lmhi.\"") - blinking = TRUE - var/oldcolor = color - animate(src, color = "#660099", time = 10) - var/list/targets = ListTargets() - var/list/cardinal_copy = cardinal.Copy() - while(health && targets.len && cardinal_copy.len) - var/mob/living/pickedtarget = pick(targets) - if(targets.len > 4) - pickedtarget = pick_n_take(targets) - if(pickedtarget.stat == DEAD) - pickedtarget = target - var/obj/effect/overlay/temp/hierophant/chaser/C = PoolOrNew(/obj/effect/overlay/temp/hierophant/chaser, list(loc, src, pickedtarget, chaser_speed, FALSE)) - C.moving = 3 - C.moving_dir = pick_n_take(cardinal_copy) - sleep(10) - chaser_cooldown = world.time + initial(chaser_cooldown) - animate(src, color = oldcolor, time = 8) - addtimer(src, "update_atom_colour", 8) - sleep(8) - blinking = FALSE - return - - if(prob(10 + (anger_modifier * 0.5)) && get_dist(src, target) > 2) - blink(target) - - else if(prob(70 - anger_modifier)) //a cross blast of some type - if(prob(anger_modifier)) //at us? - if(prob(anger_modifier * 2) && health < maxHealth * 0.5) //we're super angry do it at all dirs - addtimer(src, "alldir_blasts", 0, TIMER_NORMAL, src) - else if(prob(60)) - addtimer(src, "cardinal_blasts", 0, TIMER_NORMAL, src) - else - addtimer(src, "diagonal_blasts", 0, TIMER_NORMAL, src) - else //at them? - if(prob(anger_modifier * 2) && health < maxHealth * 0.5 && !target_is_slow) //we're super angry do it at all dirs - addtimer(src, "alldir_blasts", 0, TIMER_NORMAL, target) - else if(prob(60)) - addtimer(src, "cardinal_blasts", 0, TIMER_NORMAL, target) - else - addtimer(src, "diagonal_blasts", 0, TIMER_NORMAL, target) - else if(chaser_cooldown < world.time) //if chasers are off cooldown, fire some! - var/obj/effect/overlay/temp/hierophant/chaser/C = PoolOrNew(/obj/effect/overlay/temp/hierophant/chaser, list(loc, src, target, chaser_speed, FALSE)) - chaser_cooldown = world.time + initial(chaser_cooldown) - if((prob(anger_modifier) || target.Adjacent(src)) && target != src) - var/obj/effect/overlay/temp/hierophant/chaser/OC = PoolOrNew(/obj/effect/overlay/temp/hierophant/chaser, list(loc, src, target, max(1.5, 5 - anger_modifier * 0.07), FALSE)) - OC.moving = 4 - OC.moving_dir = pick(cardinal - C.moving_dir) - else //just release a burst of power - addtimer(src, "burst", 0, TIMER_NORMAL, get_turf(src)) - -/mob/living/simple_animal/hostile/megafauna/hierophant/proc/diagonal_blasts(mob/victim) //fire diagonal cross blasts with a delay - var/turf/T = get_turf(victim) - if(!T) - return - PoolOrNew(/obj/effect/overlay/temp/hierophant/telegraph/diagonal, list(T, src)) - playsound(T,'sound/magic/blink.ogg', 200, 1) - //playsound(T,'sound/effects/bin_close.ogg', 200, 1) - sleep(2) - PoolOrNew(/obj/effect/overlay/temp/hierophant/blast, list(T, src, FALSE)) - for(var/d in diagonals) - addtimer(src, "blast_wall", 0, TIMER_NORMAL, T, d) - -/mob/living/simple_animal/hostile/megafauna/hierophant/proc/cardinal_blasts(mob/victim) //fire cardinal cross blasts with a delay - var/turf/T = get_turf(victim) - if(!T) - return - PoolOrNew(/obj/effect/overlay/temp/hierophant/telegraph/cardinal, list(T, src)) - playsound(T,'sound/magic/blink.ogg', 200, 1) - //playsound(T,'sound/effects/bin_close.ogg', 200, 1) - sleep(2) - PoolOrNew(/obj/effect/overlay/temp/hierophant/blast, list(T, src, FALSE)) - for(var/d in cardinal) - addtimer(src, "blast_wall", 0, TIMER_NORMAL, T, d) - -/mob/living/simple_animal/hostile/megafauna/hierophant/proc/alldir_blasts(mob/victim) //fire alldir cross blasts with a delay - var/turf/T = get_turf(victim) - if(!T) - return - PoolOrNew(/obj/effect/overlay/temp/hierophant/telegraph, list(T, src)) - playsound(T,'sound/magic/blink.ogg', 200, 1) - //playsound(T,'sound/effects/bin_close.ogg', 200, 1) - sleep(2) - PoolOrNew(/obj/effect/overlay/temp/hierophant/blast, list(T, src, FALSE)) - for(var/d in alldirs) - addtimer(src, "blast_wall", 0, TIMER_NORMAL, T, d) - -/mob/living/simple_animal/hostile/megafauna/hierophant/proc/blast_wall(turf/T, dir) //make a wall of blasts beam_range tiles long - var/range = beam_range - var/turf/previousturf = T - var/turf/J = get_step(previousturf, dir) - for(var/i in 1 to range) - PoolOrNew(/obj/effect/overlay/temp/hierophant/blast, list(J, src, FALSE)) - previousturf = J - J = get_step(previousturf, dir) - -/mob/living/simple_animal/hostile/megafauna/hierophant/proc/blink(mob/victim) //blink to a target - if(blinking || !victim) - return - var/turf/T = get_turf(victim) - var/turf/source = get_turf(src) - PoolOrNew(/obj/effect/overlay/temp/hierophant/telegraph, list(T, src)) - PoolOrNew(/obj/effect/overlay/temp/hierophant/telegraph, list(source, src)) - playsound(T,'sound/magic/blink.ogg', 200, 1) - //playsound(T,'sound/magic/Wand_Teleport.ogg', 200, 1) - playsound(source,'sound/magic/blink.ogg', 200, 1) - //playsound(source,'sound/machines/AirlockOpen.ogg', 200, 1) - blinking = TRUE - sleep(2) //short delay before we start... - PoolOrNew(/obj/effect/overlay/temp/hierophant/telegraph/teleport, list(T, src)) - PoolOrNew(/obj/effect/overlay/temp/hierophant/telegraph/teleport, list(source, src)) - for(var/t in RANGE_TURFS(1, T)) - var/obj/effect/overlay/temp/hierophant/blast/B = PoolOrNew(/obj/effect/overlay/temp/hierophant/blast, list(t, src, FALSE)) - B.damage = 30 - for(var/t in RANGE_TURFS(1, source)) - var/obj/effect/overlay/temp/hierophant/blast/B = PoolOrNew(/obj/effect/overlay/temp/hierophant/blast, list(t, src, FALSE)) - B.damage = 30 - animate(src, alpha = 0, time = 2, easing = EASE_OUT) //fade out - sleep(1) - visible_message("[src] fades out!") - density = FALSE - sleep(2) - forceMove(T) - sleep(1) - animate(src, alpha = 255, time = 2, easing = EASE_IN) //fade IN - sleep(1) - density = TRUE - visible_message("[src] fades in!") - sleep(1) //at this point the blasts we made detonate - blinking = FALSE - -/mob/living/simple_animal/hostile/megafauna/hierophant/proc/melee_blast(mob/victim) //make a 3x3 blast around a target - if(!victim) - return - var/turf/T = get_turf(victim) - if(!T) - return - PoolOrNew(/obj/effect/overlay/temp/hierophant/telegraph, list(T, src)) - playsound(T,'sound/magic/blink.ogg', 200, 1) - //playsound(T,'sound/effects/bin_close.ogg', 200, 1) - sleep(2) - for(var/t in RANGE_TURFS(1, T)) - PoolOrNew(/obj/effect/overlay/temp/hierophant/blast, list(t, src, FALSE)) - -/mob/living/simple_animal/hostile/megafauna/hierophant/proc/burst(turf/original) //release a wave of blasts - playsound(original,'sound/magic/blink.ogg', 200, 1) - //playsound(original,'sound/machines/AirlockOpen.ogg', 200, 1) - var/last_dist = 0 - for(var/t in spiral_range_turfs(burst_range, original)) - var/turf/T = t - if(!T) - continue - var/dist = get_dist(original, T) - if(dist > last_dist) - last_dist = dist - sleep(1 + (burst_range - last_dist) * 0.5) //gets faster as it gets further out - PoolOrNew(/obj/effect/overlay/temp/hierophant/blast, list(T, src, FALSE)) - -/mob/living/simple_animal/hostile/megafauna/hierophant/AltClickOn(atom/A) //player control handler(don't give this to a player holy fuck) - if(!istype(A) || get_dist(A, src) <= 2) - return - blink(A) - -//Hierophant overlays -/obj/effect/overlay/temp/hierophant - layer = BELOW_MOB_LAYER - var/mob/living/caster //who made this, anyway - -/obj/effect/overlay/temp/hierophant/New(loc, new_caster) - ..() - if(new_caster) - caster = new_caster - -/obj/effect/overlay/temp/hierophant/chaser //a hierophant's chaser. follows target around, moving and producing a blast every speed deciseconds. - duration = 98 - var/mob/living/target //what it's following - var/turf/targetturf //what turf the target is actually on - var/moving_dir //what dir it's moving in - var/previous_moving_dir //what dir it was moving in before that - var/more_previouser_moving_dir //what dir it was moving in before THAT - var/moving = 0 //how many steps to move before recalculating - var/standard_moving_before_recalc = 4 //how many times we step before recalculating normally - var/tiles_per_step = 1 //how many tiles we move each step - var/speed = 3 //how many deciseconds between each step - var/currently_seeking = FALSE - var/friendly_fire_check = FALSE //if blasts produced apply friendly fire - -/obj/effect/overlay/temp/hierophant/chaser/New(loc, new_caster, new_target, new_speed, is_friendly_fire) - ..() - target = new_target - friendly_fire_check = is_friendly_fire - if(new_speed) - speed = new_speed - addtimer(src, "seek_target", 1) - -/obj/effect/overlay/temp/hierophant/chaser/proc/get_target_dir() - . = get_cardinal_dir(src, targetturf) - if((. != previous_moving_dir && . == more_previouser_moving_dir) || . == 0) //we're alternating, recalculate - var/list/cardinal_copy = cardinal.Copy() - cardinal_copy -= more_previouser_moving_dir - . = pick(cardinal_copy) - -/obj/effect/overlay/temp/hierophant/chaser/proc/seek_target() - if(!currently_seeking) - currently_seeking = TRUE - targetturf = get_turf(target) - while(target && src && !qdeleted(src) && currently_seeking && x && y && targetturf) //can this target actually be sook out - if(!moving) //we're out of tiles to move, find more and where the target is! - more_previouser_moving_dir = previous_moving_dir - previous_moving_dir = moving_dir - moving_dir = get_target_dir() - var/standard_target_dir = get_cardinal_dir(src, targetturf) - if((standard_target_dir != previous_moving_dir && standard_target_dir == more_previouser_moving_dir) || standard_target_dir == 0) - moving = 1 //we would be repeating, only move a tile before checking - else - moving = standard_moving_before_recalc - if(moving) //move in the dir we're moving in right now - var/turf/T = get_turf(src) - for(var/i in 1 to tiles_per_step) - var/maybe_new_turf = get_step(T, moving_dir) - if(maybe_new_turf) - T = maybe_new_turf - else - break - forceMove(T) - make_blast() //make a blast, too - moving-- - sleep(speed) - targetturf = get_turf(target) - -/obj/effect/overlay/temp/hierophant/chaser/proc/make_blast() - PoolOrNew(/obj/effect/overlay/temp/hierophant/blast, list(loc, caster, friendly_fire_check)) - -/obj/effect/overlay/temp/hierophant/telegraph - icon = 'icons/effects/96x96.dmi' - icon_state = "hierophant_telegraph" - pixel_x = -32 - pixel_y = -32 - duration = 3 - -/obj/effect/overlay/temp/hierophant/telegraph/diagonal - icon_state = "hierophant_telegraph_diagonal" - -/obj/effect/overlay/temp/hierophant/telegraph/cardinal - icon_state = "hierophant_telegraph_cardinal" - -/obj/effect/overlay/temp/hierophant/telegraph/teleport - icon_state = "hierophant_telegraph_teleport" - duration = 9 - -/obj/effect/overlay/temp/hierophant/blast - icon_state = "hierophant_blast" - name = "vortex blast" - luminosity = 1 - desc = "Get out of the way!" - duration = 9 - var/damage = 10 //how much damage do we do? - var/list/hit_things = list() //we hit these already, ignore them - var/friendly_fire_check = FALSE - var/bursting = FALSE //if we're bursting and need to hit anyone crossing us - -/obj/effect/overlay/temp/hierophant/blast/New(loc, new_caster, friendly_fire) - ..() - friendly_fire_check = friendly_fire - if(new_caster) - hit_things += new_caster - if(ismineralturf(loc)) //drill mineral turfs - var/turf/closed/mineral/M = loc - M.gets_drilled(caster) - addtimer(src, "blast", 0) - -/obj/effect/overlay/temp/hierophant/blast/proc/blast() - var/turf/T = get_turf(src) - if(!T) - return - playsound(T,'sound/magic/Blind.ogg', 125, 1, -5) //make a sound - sleep(6) //wait a little - bursting = TRUE - do_damage(T) //do damage and mark us as bursting - sleep(1.3) //slightly forgiving; the burst animation is 1.5 deciseconds - bursting = FALSE //we no longer damage crossers - -/obj/effect/overlay/temp/hierophant/blast/Crossed(atom/movable/AM) - ..() - if(bursting) - do_damage(get_turf(src)) - -/obj/effect/overlay/temp/hierophant/blast/proc/do_damage(turf/T) - for(var/mob/living/L in T.contents - hit_things) //find and damage mobs... - hit_things += L - if((friendly_fire_check && caster && caster.faction_check(L)) || L.stat == DEAD) - continue - if(L.client) - flash_color(L.client, "#660099", 1) - playsound(L,'sound/weapons/sear.ogg', 50, 1, -4) - L << "You're struck by a [name]!" - var/limb_to_hit = L.get_bodypart(pick("head", "chest", "r_arm", "l_arm", "r_leg", "l_leg")) - var/armor = L.run_armor_check(limb_to_hit, "melee", "Your armor absorbs [src]!", "Your armor blocks part of [src]!", 50, "Your armor was penetrated by [src]!") - L.apply_damage(damage, BURN, limb_to_hit, armor) - if(ismegafauna(L) || istype(L, /mob/living/simple_animal/hostile/asteroid)) - L.adjustBruteLoss(damage) - add_logs(caster, L, "struck with a [name]") - for(var/obj/mecha/M in T.contents - hit_things) //and mechs. - hit_things += M - if(M.occupant) - if(friendly_fire_check && caster && caster.faction_check(M.occupant)) - continue - M.occupant << "Your [M.name] is struck by a [name]!" - playsound(M,'sound/weapons/sear.ogg', 50, 1, -4) - M.take_damage(damage, BURN, 0, 0) - -/obj/effect/hierophant - name = "hierophant rune" - desc = "A powerful magic mark allowing whomever attunes themself to it to return to it at will." - icon = 'icons/obj/rune.dmi' - icon_state = "hierophant" - layer = LOW_OBJ_LAYER - anchored = TRUE - color = "#CC00FF" - -/obj/effect/hierophant/attackby(obj/item/I, mob/user, params) - if(istype(I, /obj/item/weapon/hierophant_staff)) - var/obj/item/weapon/hierophant_staff/H = I - if(H.rune == src) - user << "You start removing your hierophant rune..." - H.timer = world.time + 51 - if(do_after(user, 50, target = src)) - playsound(src,'sound/magic/Blind.ogg', 200, 1, -4) - PoolOrNew(/obj/effect/overlay/temp/hierophant/telegraph/teleport, list(get_turf(src), user)) - user << "You touch the rune with the staff, dispelling it!" - H.rune = null - user.update_action_buttons_icon() - qdel(src) - else - H.timer = world.time - else - user << "You touch the rune with the staff, but nothing happens." - - else - ..() - -/obj/item/device/gps/internal/hierophant - icon_state = null - gpstag = "Zealous Signal" - desc = "Heed its words." - invisibility = 100 - -/turf/open/indestructible/hierophant - icon_state = "hierophant1" - initial_gas_mix = "o2=14;n2=23;TEMP=300" - desc = "A floor with a square pattern. It's faintly cool to the touch." - -/turf/open/indestructible/hierophant/New() - ..() - if(prob(50)) - icon_state = "hierophant2" - -/turf/closed/indestructible/riveted/hierophant - name = "wall" - desc = "A wall made out of smooth, cold stone." - icon = 'icons/turf/walls/hierophant_wall.dmi' - icon_state = "hierophant" - smooth = SMOOTH_TRUE - -#undef MEDAL_PREFIX \ No newline at end of file diff --git a/code/modules/mob/living/simple_animal/hostile/megafauna/legion.dm b/code/modules/mob/living/simple_animal/hostile/megafauna/legion.dm index 17f9cdcccf..7ed125a038 100644 --- a/code/modules/mob/living/simple_animal/hostile/megafauna/legion.dm +++ b/code/modules/mob/living/simple_animal/hostile/megafauna/legion.dm @@ -1,22 +1,3 @@ -#define MEDAL_PREFIX "Legion" -/* - -LEGION - -Legion spawns from the necropolis gate in the far north of lavaland. It is the guardian of the Necropolis and emerges from within whenever an intruder tries to enter through its gate. -Whenever Legion emerges, everything in lavaland will receive a notice via color, audio, and text. This is because Legion is powerful enough to slaughter the entirety of lavaland with little effort. - -It has two attack modes that it constantly rotates between. - -In ranged mode, it will behave like a normal legion - retreating when possible and firing legion skulls at the target. -In charge mode, it will spin and rush its target, attacking with melee whenever possible. - -When Legion dies, it drops a staff of storms, which allows its wielder to call and disperse ash storms at will and functions as a powerful melee weapon. - -Difficulty: Medium - -*/ - /mob/living/simple_animal/hostile/megafauna/legion name = "Legion" health = 800 @@ -27,45 +8,35 @@ Difficulty: Medium icon = 'icons/mob/lavaland/legion.dmi' attacktext = "chomps" attack_sound = 'sound/magic/demon_attack1.ogg' + faction = list("mining") speak_emote = list("echoes") armour_penetration = 50 melee_damage_lower = 25 melee_damage_upper = 25 speed = 2 ranged = 1 + flying = 1 del_on_death = 1 retreat_distance = 5 minimum_distance = 5 ranged_cooldown_time = 20 - var/size = 5 + var/size = 10 var/charging = 0 - medal_type = MEDAL_PREFIX - score_type = LEGION_SCORE pixel_y = -90 pixel_x = -75 loot = list(/obj/item/stack/sheet/bone = 3) vision_range = 13 - elimination = 1 + aggro_vision_range = 18 idle_vision_range = 13 - appearance_flags = 0 - mouse_opacity = 1 /mob/living/simple_animal/hostile/megafauna/legion/New() ..() - internal = new/obj/item/device/gps/internal/legion(src) - -/mob/living/simple_animal/hostile/megafauna/legion/AttackingTarget() - ..() - if(ishuman(target)) - var/mob/living/L = target - if(L.stat == UNCONSCIOUS) - var/mob/living/simple_animal/hostile/asteroid/hivelordbrood/legion/A = new(loc) - A.infest(L) + new/obj/item/device/gps/internal/legion(src) /mob/living/simple_animal/hostile/megafauna/legion/OpenFire(the_target) if(world.time >= ranged_cooldown && !charging) if(prob(75)) - var/mob/living/simple_animal/hostile/asteroid/hivelordbrood/legion/A = new(loc) + var/mob/living/simple_animal/hostile/asteroid/hivelordbrood/legion/A = new(src.loc) A.GiveTarget(target) A.friends = friends A.faction = faction @@ -78,41 +49,37 @@ Difficulty: Medium minimum_distance = 0 speed = 0 charging = 1 - addtimer(src, "reset_charge", 50) - -/mob/living/simple_animal/hostile/megafauna/legion/proc/reset_charge() - ranged = 1 - retreat_distance = 5 - minimum_distance = 5 - speed = 2 - charging = 0 + spawn(50) + ranged = 1 + retreat_distance = 5 + minimum_distance = 5 + speed = 2 + charging = 0 /mob/living/simple_animal/hostile/megafauna/legion/death() if(health > 0) return - if(size > 1) + if(size > 2) adjustHealth(-maxHealth) //heal ourself to full in prep for splitting - var/mob/living/simple_animal/hostile/megafauna/legion/L = new(loc) + var/mob/living/simple_animal/hostile/megafauna/legion/L = new(src.loc) L.maxHealth = maxHealth * 0.6 maxHealth = L.maxHealth L.health = L.maxHealth - health = maxHealth + health = L.health - size-- - L.size = size + L.size = size - 2 + size = L.size - L.resize = L.size * 0.2 - transform = initial(transform) - resize = size * 0.2 + var/size_multiplier = L.size * 0.08 + L.resize = size_multiplier + resize = L.resize L.update_transform() update_transform() - L.faction = faction.Copy() - - L.GiveTarget(target) + L.target = target visible_message("[src] splits in twain!") else @@ -122,10 +89,9 @@ Difficulty: Medium last_legion = FALSE break if(last_legion) - loot = list(/obj/item/weapon/staff/storm) - elimination = 0 + src.loot = list(/obj/item/weapon/staff_of_storms) else if(prob(5)) - loot = list(/obj/structure/closet/crate/necropolis/tendril) + src.loot = list(/obj/structure/closet/crate/necropolis/tendril) ..() /mob/living/simple_animal/hostile/megafauna/legion/Process_Spacemove(movement_dir = 0) @@ -140,55 +106,50 @@ Difficulty: Medium //Loot -/obj/item/weapon/staff/storm +/obj/item/weapon/staff_of_storms name = "staff of storms" desc = "An ancient staff retrieved from the remains of Legion. The wind stirs as you move it." icon_state = "staffofstorms" item_state = "staffofstorms" icon = 'icons/obj/guns/magic.dmi' slot_flags = SLOT_BACK - w_class = WEIGHT_CLASS_BULKY + item_state = "staffofstorms" + w_class = 4 force = 25 damtype = BURN hitsound = 'sound/weapons/sear.ogg' - var/storm_type = /datum/weather/ash_storm var/storm_cooldown = 0 -/obj/item/weapon/staff/storm/attack_self(mob/user) +/obj/item/weapon/staff_of_storms/attack_self(mob/user) if(storm_cooldown > world.time) user << "The staff is still recharging!" return + if(user.z != ZLEVEL_LAVALAND) + user << "You can't seem to control the weather here!" + return - var/area/user_area = get_area(user) - var/datum/weather/A + var/datum/weather/ash_storm/A for(var/V in SSweather.existing_weather) var/datum/weather/W = V - if(W.target_z == user.z && W.area_type == user_area.type) + if(W.name == "ash storm") A = W break - if(A) + if(!A) + user << "How odd! The planet seems to have lost its atmosphere!" + return - if(A.stage != END_STAGE) - if(A.stage == WIND_DOWN_STAGE) - user << "The storm is already ending! It would be a waste to use the staff now." - return - user.visible_message("[user] holds [src] skywards as an orange beam travels into the sky!", \ - "You hold [src] skyward, dispelling the storm!") - playsound(user, 'sound/magic/Staff_Change.ogg', 200, 0) - A.wind_down() + if(A.stage != END_STAGE) + if(A.stage == WIND_DOWN_STAGE) + user << "The storm is already ending! It would be a waste to use the staff now." return + user.visible_message("[user] holds [src] skywards as an orange beam travels into the sky!", \ + "You hold [src] skyward, dispelling the ash storm!") + playsound(user, 'sound/magic/Staff_Change.ogg', 200, 0) + A.wind_down() else - A = new storm_type - A.name = "staff storm" - A.area_type = user_area.type - A.target_z = user.z - A.telegraph_duration = 100 - A.end_duration = 100 + user.visible_message("[user] holds [src] skywards as red lightning crackles into the sky!", \ + "You hold [src] skyward, calling down a terrible storm!") + playsound(user, 'sound/magic/Staff_Chaos.ogg', 200, 0) + A.telegraph() - user.visible_message("[user] holds [src] skywards as red lightning crackles into the sky!", \ - "You hold [src] skyward, calling down a terrible storm!") - playsound(user, 'sound/magic/Staff_Change.ogg', 200, 0) - A.telegraph() - storm_cooldown = world.time + 200 - -#undef MEDAL_PREFIX + storm_cooldown = world.time + 600 \ No newline at end of file diff --git a/code/modules/mob/living/simple_animal/hostile/megafauna/megafauna.dm b/code/modules/mob/living/simple_animal/hostile/megafauna/megafauna.dm index 29e0dfcbab..bc6dd31cdd 100644 --- a/code/modules/mob/living/simple_animal/hostile/megafauna/megafauna.dm +++ b/code/modules/mob/living/simple_animal/hostile/megafauna/megafauna.dm @@ -1,61 +1,25 @@ -#define MEDAL_PREFIX "Boss" - - /mob/living/simple_animal/hostile/megafauna name = "boss of this gym" desc = "Attack the weak point for massive damage." health = 1000 maxHealth = 1000 - a_intent = INTENT_HARM + a_intent = "harm" sentience_type = SENTIENCE_BOSS environment_smash = 3 - obj_damage = 400 - luminosity = 3 - faction = list("mining", "boss") weather_immunities = list("lava","ash") - movement_type = FLYING robust_searching = 1 - ranged_ignores_vision = TRUE - stat_attack = 2 + stat_attack = 1 atmos_requirements = list("min_oxy" = 0, "max_oxy" = 0, "min_tox" = 0, "max_tox" = 0, "min_co2" = 0, "max_co2" = 0, "min_n2" = 0, "max_n2" = 0) - damage_coeff = list(BRUTE = 1, BURN = 0.5, TOX = 1, CLONE = 1, STAMINA = 0, OXY = 1) minbodytemp = 0 maxbodytemp = INFINITY - aggro_vision_range = 18 - idle_vision_range = 5 - environment_target_typecache = list( - /obj/machinery/door/window, - /obj/structure/window, - /obj/structure/closet, - /obj/structure/table, - /obj/structure/grille, - /obj/structure/girder, - /obj/structure/rack, - /obj/structure/barricade, - /obj/machinery/field, - /obj/machinery/power/emitter) - var/medal_type = MEDAL_PREFIX - var/score_type = BOSS_SCORE - var/elimination = 0 - var/anger_modifier = 0 - var/obj/item/device/gps/internal anchored = TRUE - mob_size = MOB_SIZE_LARGE layer = LARGE_MOB_LAYER //Looks weird with them slipping under mineral walls and cameras and shit otherwise - mouse_opacity = 2 // Easier to click on in melee, they're giant targets anyway - -/mob/living/simple_animal/hostile/megafauna/Destroy() - qdel(internal) - . = ..() /mob/living/simple_animal/hostile/megafauna/death(gibbed) if(health > 0) return else - if(!admin_spawned) - feedback_set_details("megafauna_kills","[initial(name)]") - if(!elimination) //used so the achievment only occurs for the last legion to die. - grant_achievement(medal_type,score_type) + feedback_set_details("megafauna_kills","[initial(name)]") ..() /mob/living/simple_animal/hostile/megafauna/gib() @@ -70,16 +34,6 @@ else ..() -/mob/living/simple_animal/hostile/megafauna/AttackingTarget() - ..() - if(isliving(target)) - var/mob/living/L = target - if(L.stat != DEAD) - if(!client && ranged && ranged_cooldown <= world.time) - OpenFire() - else - devour(L) - /mob/living/simple_animal/hostile/megafauna/onShuttleMove() var/turf/oldloc = loc . = ..() @@ -92,13 +46,12 @@ ([newloc.x],[newloc.y],[newloc.z])") /mob/living/simple_animal/hostile/megafauna/proc/devour(mob/living/L) - if(!L) - return - visible_message( - "[src] devours [L]!", - "You feast on [L], restoring your health!") - adjustBruteLoss(-L.maxHealth/2) - L.gib() + if(L.stat == DEAD) + src.visible_message( + "[src] devours [L]!", + "You feast on [L], restoring your health!") + adjustBruteLoss(-L.maxHealth/2) + L.gib() /mob/living/simple_animal/hostile/megafauna/ex_act(severity, target) switch (severity) @@ -109,126 +62,4 @@ adjustBruteLoss(100) if(3) - adjustBruteLoss(50) - - - -/mob/living/simple_animal/hostile/megafauna/proc/grant_achievement(medaltype,scoretype) - - if(medal_type == "Boss") //Don't award medals if the medal type isn't set - return - - if(admin_spawned) - return - - if(global.medal_hub && global.medal_pass && global.medals_enabled) - for(var/mob/living/L in view(7,src)) - if(L.stat) - continue - if(L.client) - var/client/C = L.client - var/suffixm = BOSS_KILL_MEDAL - UnlockMedal("Boss [suffixm]",C) - UnlockMedal("[medaltype] [suffixm]",C) - SetScore(BOSS_SCORE,C,1) - SetScore(score_type,C,1) - -/proc/UnlockMedal(medal,client/player) - - if(!player || !medal) - return - if(global.medal_hub && global.medal_pass && global.medals_enabled) - spawn() - var/result = world.SetMedal(medal, player, global.medal_hub, global.medal_pass) - if(isnull(result)) - global.medals_enabled = FALSE - log_game("MEDAL ERROR: Could not contact hub to award medal:[medal] player:[player.ckey]") - message_admins("Error! Failed to contact hub to award [medal] medal to [player.ckey]!") - else if (result) - player << "Achievement unlocked: [medal]!" - - -/proc/SetScore(score,client/player,increment,force) - - if(!score || !player) - return - if(global.medal_hub && global.medal_pass && global.medals_enabled) - spawn() - var/list/oldscore = GetScore(score,player,1) - - if(increment) - if(!oldscore[score]) - oldscore[score] = 1 - else - oldscore[score] = (text2num(oldscore[score]) + 1) - else - oldscore[score] = force - - var/newscoreparam = list2params(oldscore) - - var/result = world.SetScores(player.ckey, newscoreparam, global.medal_hub, global.medal_pass) - - if(isnull(result)) - global.medals_enabled = FALSE - log_game("SCORE ERROR: Could not contact hub to set score. Score:[score] player:[player.ckey]") - message_admins("Error! Failed to contact hub to set [score] score for [player.ckey]!") - - -/proc/GetScore(score,client/player,returnlist) - - if(!score || !player) - return - if(global.medal_hub && global.medal_pass && global.medals_enabled) - - var/scoreget = world.GetScores(player.ckey, score, global.medal_hub, global.medal_pass) - if(isnull(scoreget)) - global.medals_enabled = FALSE - log_game("SCORE ERROR: Could not contact hub to get score. Score:[score] player:[player.ckey]") - message_admins("Error! Failed to contact hub to get score: [score] for [player.ckey]!") - return - - var/list/scoregetlist = params2list(scoreget) - - if(returnlist) - return scoregetlist - else - return scoregetlist[score] - - -/proc/CheckMedal(medal,client/player) - - if(!player || !medal) - return - if(global.medal_hub && global.medal_pass && global.medals_enabled) - - var/result = world.GetMedal(medal, player, global.medal_hub, global.medal_pass) - - if(isnull(result)) - global.medals_enabled = FALSE - log_game("MEDAL ERROR: Could not contact hub to get medal:[medal] player:[player.ckey]") - message_admins("Error! Failed to contact hub to get [medal] medal for [player.ckey]!") - else if (result) - player << "[medal] is unlocked" - -/proc/LockMedal(medal,client/player) - - if(!player || !medal) - return - if(global.medal_hub && global.medal_pass && global.medals_enabled) - - var/result = world.ClearMedal(medal, player, global.medal_hub, global.medal_pass) - - if(isnull(result)) - global.medals_enabled = FALSE - log_game("MEDAL ERROR: Could not contact hub to clear medal:[medal] player:[player.ckey]") - message_admins("Error! Failed to contact hub to clear [medal] medal for [player.ckey]!") - else if (result) - message_admins("Medal: [medal] removed for [player.ckey]") - else - message_admins("Medal: [medal] was not found for [player.ckey]. Unable to clear.") - - -/proc/ClearScore(client/player) - world.SetScores(player.ckey, "", global.medal_hub, global.medal_pass) - -#undef MEDAL_PREFIX \ No newline at end of file + adjustBruteLoss(50) \ No newline at end of file diff --git a/code/modules/mob/living/simple_animal/hostile/megafauna/swarmer.dm b/code/modules/mob/living/simple_animal/hostile/megafauna/swarmer.dm deleted file mode 100644 index bab93b0df0..0000000000 --- a/code/modules/mob/living/simple_animal/hostile/megafauna/swarmer.dm +++ /dev/null @@ -1,327 +0,0 @@ -#define MEDAL_PREFIX "Swarmer Beacon" - -/* - -Swarmer Beacon - -A strange machine appears anywhere a normal lavaland mob can it produces a swarmer at a rate of -1/15 seconds, until there are GetTotalAISwarmerCap()/2 swarmers, after this it is up to the swarmers themselves to -increase their population (it will repopulate them should they fall under GetTotalAISwarmerCap()/2 again) - -tl;dr A million of the little hellraisers spawn (controlled by AI) and try to eat mining - -Loot: Not much, besides a shit load of artificial bluespace crystals, Oh and mining doesn't get eaten -that's a plus I suppose. - -Difficulty: Special - -*/ - -var/global/list/mob/living/simple_animal/hostile/swarmer/ai/AISwarmers = list() -var/global/list/mob/living/simple_animal/hostile/swarmer/ai/AISwarmersByType = list()//AISwarmersByType[.../resource] = list(1st, 2nd, nth), AISwarmersByType[../ranged] = list(1st, 2nd, nth) etc. -var/global/list/AISwarmerCapsByType = list(/mob/living/simple_animal/hostile/swarmer/ai/resource = 30, /mob/living/simple_animal/hostile/swarmer/ai/ranged_combat = 20, /mob/living/simple_animal/hostile/swarmer/ai/melee_combat = 10) - - -//returns a type of AI swarmer that is NOT at max cap -//type order is shuffled, to prevent bias -/proc/GetUncappedAISwarmerType() - var/static/list/swarmerTypes = subtypesof(/mob/living/simple_animal/hostile/swarmer/ai) - LAZYINITLIST(AISwarmersByType) - for(var/t in shuffle(swarmerTypes)) - var/list/amount = AISwarmersByType[t] - if(!amount || amount.len < AISwarmerCapsByType[t]) - return t - - -//Total of all subtype caps -/proc/GetTotalAISwarmerCap() - var/static/list/swarmerTypes = subtypesof(/mob/living/simple_animal/hostile/swarmer/ai) - . = 0 - LAZYINITLIST(AISwarmersByType) - for(var/t in swarmerTypes) - . += AISwarmerCapsByType[t] - - -/mob/living/simple_animal/hostile/megafauna/swarmer_swarm_beacon - name = "swarmer beacon" - desc = "That name is a bit of a mouthful, but stop paying attention to your mouth they're eating everything!" - icon = 'icons/mob/swarmer.dmi' - icon_state = "swarmer_console" - health = 750 - maxHealth = 750 //""""low-ish"""" HP because it's a passive boss, and the swarm itself is the real foe - medal_type = MEDAL_PREFIX - score_type = SWARMER_BEACON_SCORE - faction = list("mining", "boss", "swarmer") - weather_immunities = list("lava","ash") - stop_automated_movement = TRUE - wander = FALSE - anchored = TRUE - layer = BELOW_MOB_LAYER - AIStatus = AI_OFF - var/swarmer_spawn_cooldown = 0 - var/swarmer_spawn_cooldown_amt = 150 //Deciseconds between the swarmers we spawn - var/call_help_cooldown = 0 - var/call_help_cooldown_amt = 150 //Deciseconds between calling swarmers to help us when attacked - var/static/list/swarmer_caps - - -/mob/living/simple_animal/hostile/megafauna/swarmer_swarm_beacon/New() - ..() - swarmer_caps = AISwarmerCapsByType //for admin-edits - internal = new/obj/item/device/gps/internal/swarmer_beacon(src) - for(var/ddir in cardinal) - new /obj/structure/swarmer/blockade (get_step(src, ddir)) - var/mob/living/simple_animal/hostile/swarmer/ai/resource/R = new(loc) - step(R, ddir) //Step the swarmers, instead of spawning them there, incase the turf is solid - - -/mob/living/simple_animal/hostile/megafauna/swarmer_swarm_beacon/Life() - . = ..() - if(.) - var/createtype = GetUncappedAISwarmerType() - if(createtype && world.time > swarmer_spawn_cooldown && AISwarmers.len < (GetTotalAISwarmerCap()*0.5)) - swarmer_spawn_cooldown = world.time + swarmer_spawn_cooldown_amt - new createtype(loc) - - -/mob/living/simple_animal/hostile/megafauna/swarmer_swarm_beacon/adjustHealth(damage) - . = ..() - if(damage > 0 && world.time > call_help_cooldown) - call_help_cooldown = world.time + call_help_cooldown_amt - summon_backup(25) //long range, only called max once per 15 seconds, so it's not deathlag - - -/obj/item/device/gps/internal/swarmer_beacon - icon_state = null - gpstag = "Hungry Signal" - desc = "Transmited over the signal is a strange message repeated in every language you know of, and some you don't too..." //the message is "nom nom nom" - invisibility = 100 - - -//SWARMER AI -//AI versions of the swarmer mini-antag -//This is an Abstract Base, it re-enables AI, but does not give the swarmer any goals/targets -/mob/living/simple_animal/hostile/swarmer/ai - wander = 1 - faction = list("swarmer", "mining") - weather_immunities = list("ash") //wouldn't be fun otherwise - AIStatus = AI_ON - - -/mob/living/simple_animal/hostile/swarmer/ai/New() - ..() - ToggleLight() //so you can see them eating you out of house and home/shooting you/stunlocking you for eternity - LAZYINITLIST(AISwarmersByType[type]) - AISwarmers += src - AISwarmersByType[type] += src - - -/mob/living/simple_animal/hostile/swarmer/ai/Destroy() - AISwarmers -= src - AISwarmersByType[type] -= src - return ..() - - -/mob/living/simple_animal/hostile/swarmer/ai/SwarmerTypeToCreate() - return GetUncappedAISwarmerType() - - -/mob/living/simple_animal/hostile/swarmer/ai/resource/handle_automated_action() - . = ..() - if(.) - if(!stop_automated_movement) - if(health < maxHealth*0.25) - StartAction(100) - RepairSelf() - return - - -/mob/living/simple_animal/hostile/swarmer/ai/Move(atom/newloc) - if(newloc) - if(newloc.z == z) //so these actions are Z-specific - if(istype(newloc, /turf/open/floor/plating/lava)) - var/turf/open/floor/plating/lava/L = newloc - if(!L.is_safe()) - StartAction(20) - new /obj/structure/lattice/catwalk/swarmer_catwalk(newloc) - return FALSE - - if(istype(newloc, /turf/open/chasm) && !throwing) - throw_at_fast(get_edge_target_turf(src, get_dir(src, newloc)), 7 , 3, spin = FALSE) //my planet needs me - return FALSE - - return ..() - - -/mob/living/simple_animal/hostile/swarmer/ai/proc/StartAction(deci = 0) - stop_automated_movement = TRUE - AIStatus = AI_OFF - addtimer(src, "EndAction", deci, TIMER_NORMAL) - - -/mob/living/simple_animal/hostile/swarmer/ai/proc/EndAction() - stop_automated_movement = FALSE - AIStatus = AI_ON - - - - -//RESOURCE SWARMER: -//Similar to the original Player-Swarmers, these dismantle things to obtain the metal inside -//They then use this medal to produce more swarmers or traps/barricades - -/mob/living/simple_animal/hostile/swarmer/ai/resource - search_objects = 1 - attack_all_objects = TRUE //attempt to nibble everything - lose_patience_timeout = 150 - var/static/list/sharedWanted = list(/turf/closed/mineral, /turf/closed/wall) //eat rocks and walls - var/static/list/sharedIgnore = list() - - -/mob/living/simple_animal/hostile/swarmer/ai/resource/New() - ..() - sharedWanted = typecacheof(sharedWanted) - sharedIgnore = typecacheof(sharedIgnore) - - -//This handles viable things to eat/attack -//Place specific cases of AI derpiness here -//Most can be left to the automatic Gain/LosePatience() system -/mob/living/simple_animal/hostile/swarmer/ai/resource/CanAttack(atom/the_target) - - //SPECIFIC CASES: - //Smash fulltile windows before grilles - if(istype(the_target, /obj/structure/grille)) - for(var/obj/structure/window/rogueWindow in get_turf(the_target)) - if(rogueWindow.fulltile) //done this way because the subtypes are weird. - the_target = rogueWindow - break - - //GENERAL CASES: - if(is_type_in_typecache(the_target, sharedIgnore)) //always ignore - return FALSE - if(is_type_in_typecache(the_target, sharedWanted)) //always eat - return TRUE - - return ..() //else, have a nibble, see if it's food - - -/mob/living/simple_animal/hostile/swarmer/ai/resource/OpenFire(atom/A) - if(isliving(A)) //don't shoot rocks, sillies. - ..() - - -/mob/living/simple_animal/hostile/swarmer/ai/resource/AttackingTarget() - if(target.swarmer_act(src)) - add_type_to_wanted(target.type) - else - add_type_to_ignore(target.type) - - -/mob/living/simple_animal/hostile/swarmer/ai/resource/handle_automated_action() - . = ..() - if(.) - if(!stop_automated_movement) - if(AISwarmers.len < GetTotalAISwarmerCap() && resources >= 50) - StartAction(100) //so they'll actually sit still and use the verbs - CreateSwarmer() - return - - if(resources > 5) - if(prob(5)) //lower odds, as to prioritise reproduction - StartAction(10) //not a typo - CreateBarricade() - return - if(prob(5)) - CreateTrap() - return - - -//So swarmers can learn what is and isn't food -/mob/living/simple_animal/hostile/swarmer/ai/resource/proc/add_type_to_wanted(typepath) - LAZYINITLIST(sharedWanted) - if(!sharedWanted[typepath])// this and += is faster than |= - sharedWanted += typecacheof(typepath) - - -/mob/living/simple_animal/hostile/swarmer/ai/resource/proc/add_type_to_ignore(typepath) - LAZYINITLIST(sharedIgnore) - if(!sharedIgnore[typepath]) - sharedIgnore += typecacheof(typepath) - - - -//RANGED SWARMER -/mob/living/simple_animal/hostile/swarmer/ai/ranged_combat - icon_state = "swarmer_ranged" - icon_living = "swarmer_ranged" - projectiletype = /obj/item/projectile/beam/laser - projectilesound = 'sound/weapons/Laser.ogg' - check_friendly_fire = TRUE //you're supposed to protect the resource swarmers, you poop - retreat_distance = 3 - minimum_distance = 3 - login_text_dump = {" - You are a swarmer, a weapon of a long dead civilization. Until further orders from your original masters are received, you must continue to consume and replicate. - Clicking on any object will try to consume it, either deconstructing it into its components, destroying it, or integrating any materials it has into you if successful. - Ctrl-Clicking on a mob will attempt to remove it from the area and place it in a safe environment for storage. - Objectives: - 1. Defend Resource Swarmers while they consume resources and replicate until there are no more resources left. - 2. Ensure that this location is fit for invasion at a later date; do not perform actions that would render it dangerous or inhospitable. - 3. Biological resources should not be harmed if possible, violent force can be applied should they fail to keep away. - "} - - -/mob/living/simple_animal/hostile/swarmer/ai/ranged_combat/Aggro() - ..() - summon_backup(15, TRUE) //Exact matching, so that goliaths don't come to aid the swarmers, that'd be silly - - -//MELEE SWARMER -/mob/living/simple_animal/hostile/swarmer/ai/melee_combat - icon_state = "swarmer_melee" - icon_living = "swarmer_melee" - health = 60 - maxHealth = 60 - ranged = FALSE - login_text_dump = {" - You are a swarmer, a weapon of a long dead civilization. Until further orders from your original masters are received, you must continue to consume and replicate. - Clicking on any object will try to consume it, either deconstructing it into its components, destroying it, or integrating any materials it has into you if successful. - Ctrl-Clicking on a mob will attempt to remove it from the area and place it in a safe environment for storage. - Objectives: - 1. Defend Resource Swarmers while they consume resources and replicate until there are no more resources left. - 2. Ensure that this location is fit for invasion at a later date; do not perform actions that would render it dangerous or inhospitable. - 3. Biological resources should not be harmed if possible, violent force can be applied should they fail to keep away. - "} - - -/mob/living/simple_animal/hostile/swarmer/ai/melee_combat/Aggro() - ..() - summon_backup(15, TRUE) - - -/mob/living/simple_animal/hostile/swarmer/ai/melee_combat/AttackingTarget() - if(isliving(target)) - if(prob(35)) - StartAction(30) - DisperseTarget(target) - else - var/mob/living/L = target - L.attack_animal(src) - L.electrocute_act(10, src, safety = TRUE) //safety = TRUE means we don't check gloves... Ok? - else - ..() - - - - -//SWARMER CATWALKS -//Used so they can survive lavaland better -/obj/structure/lattice/catwalk/swarmer_catwalk - name = "swarmer catwalk" - desc = "a catwalk-like mesh, produced by swarmers to allow them to navigate hostile terrain." - icon = 'icons/obj/smooth_structures/swarmer_catwalk.dmi' - icon_state = "swarmer_catwalk" - - - -#undef MEDAL_PREFIX diff --git a/code/modules/mob/living/simple_animal/hostile/mimic.dm b/code/modules/mob/living/simple_animal/hostile/mimic.dm index 25f4bc1910..a61eafaf7e 100644 --- a/code/modules/mob/living/simple_animal/hostile/mimic.dm +++ b/code/modules/mob/living/simple_animal/hostile/mimic.dm @@ -11,7 +11,6 @@ speed = 0 maxHealth = 250 health = 250 - gender = NEUTER harm_intent_damage = 5 melee_damage_lower = 8 @@ -199,7 +198,7 @@ var/global/list/protected_objects = list(/obj/structure/table, /obj/structure/ca /mob/living/simple_animal/hostile/mimic/copy/machine/CanAttack(atom/the_target) if(the_target == creator) // Don't attack our creator AI. return 0 - if(iscyborg(the_target)) + if(isrobot(the_target)) var/mob/living/silicon/robot/R = the_target if(R.connected_ai == creator) // Only attack robots that aren't synced to our creator AI. return 0 @@ -210,13 +209,12 @@ var/global/list/protected_objects = list(/obj/structure/table, /obj/structure/ca /mob/living/simple_animal/hostile/mimic/copy/ranged var/obj/item/weapon/gun/TrueGun = null var/obj/item/weapon/gun/magic/Zapstick - var/obj/item/weapon/gun/ballistic/Pewgun + var/obj/item/weapon/gun/projectile/Pewgun var/obj/item/weapon/gun/energy/Zapgun /mob/living/simple_animal/hostile/mimic/copy/ranged/CopyObject(obj/O, mob/living/creator, destroy_original = 0) if(..()) emote_see = list("aims menacingly") - obj_damage = 0 environment_smash = 0 //needed? seems weird for them to do so ranged = 1 retreat_distance = 1 //just enough to shoot @@ -231,7 +229,7 @@ var/global/list/protected_objects = list(/obj/structure/table, /obj/structure/ca Zapstick = G var/obj/item/ammo_casing/magic/M = Zapstick.ammo_type projectiletype = initial(M.projectile_type) - if(istype(G, /obj/item/weapon/gun/ballistic)) + if(istype(G, /obj/item/weapon/gun/projectile)) Pewgun = G var/obj/item/ammo_box/magazine/M = Pewgun.mag_type casingtype = initial(M.ammo_type) diff --git a/code/modules/mob/living/simple_animal/hostile/mining_mobs.dm b/code/modules/mob/living/simple_animal/hostile/mining_mobs.dm index b7be38b66b..095f76b3a6 100644 --- a/code/modules/mob/living/simple_animal/hostile/mining_mobs.dm +++ b/code/modules/mob/living/simple_animal/hostile/mining_mobs.dm @@ -1,9 +1,8 @@ -/mob/living/simple_animal/hostile/asteroid +/mob/living/simple_animal/hostile/asteroid/ vision_range = 2 atmos_requirements = list("min_oxy" = 0, "max_oxy" = 0, "min_tox" = 0, "max_tox" = 0, "min_co2" = 0, "max_co2" = 0, "min_n2" = 0, "max_n2" = 0) faction = list("mining") weather_immunities = list("lava","ash") - obj_damage = 30 environment_smash = 2 minbodytemp = 0 maxbodytemp = INFINITY @@ -11,7 +10,7 @@ response_disarm = "shoves" response_harm = "strikes" status_flags = 0 - a_intent = INTENT_HARM + a_intent = "harm" var/throw_message = "bounces off of" var/icon_aggro = null // for swapping to when we get aggressive see_in_dark = 8 @@ -25,8 +24,6 @@ /mob/living/simple_animal/hostile/asteroid/LoseAggro() ..() - if(stat == DEAD) - return icon_state = icon_living /mob/living/simple_animal/hostile/asteroid/bullet_act(obj/item/projectile/P)//Reduces damage from most projectiles to curb off-screen kills @@ -72,11 +69,10 @@ maxHealth = 200 health = 200 harm_intent_damage = 5 - obj_damage = 60 melee_damage_lower = 12 melee_damage_upper = 12 attacktext = "bites into" - a_intent = INTENT_HARM + a_intent = "harm" speak_emote = list("chitters") attack_sound = 'sound/weapons/bladeslice.ogg' aggro_vision_range = 9 @@ -96,7 +92,7 @@ /mob/living/simple_animal/hostile/asteroid/basilisk/GiveTarget(new_target) if(..()) //we have a target - if(isliving(target) && !target.Adjacent(targets_from) && ranged_cooldown <= world.time)//No more being shot at point blank or spammed with RNG beams + if(isliving(target)) OpenFire(target) /mob/living/simple_animal/hostile/asteroid/basilisk/ex_act(severity, target) @@ -129,7 +125,7 @@ melee_damage_upper = 0 attacktext = "barrels into" attack_sound = 'sound/weapons/punch1.ogg' - a_intent = INTENT_HELP + a_intent = "help" speak_emote = list("screeches") throw_message = "sinks in slowly, before being pushed out of " deathmessage = "spits up the contents of its stomach before dying!" @@ -214,7 +210,6 @@ throw_message = "falls right through the strange body of the" ranged_cooldown = 0 ranged_cooldown_time = 20 - obj_damage = 0 environment_smash = 0 retreat_distance = 3 minimum_distance = 3 @@ -225,11 +220,11 @@ /mob/living/simple_animal/hostile/asteroid/hivelord/OpenFire(the_target) if(world.time >= ranged_cooldown) var/mob/living/simple_animal/hostile/asteroid/hivelordbrood/A = new brood_type(src.loc) - A.admin_spawned = admin_spawned A.GiveTarget(target) A.friends = friends - A.faction = faction.Copy() + A.faction = faction ranged_cooldown = world.time + ranged_cooldown_time + return /mob/living/simple_animal/hostile/asteroid/hivelord/AttackingTarget() OpenFire() @@ -248,6 +243,7 @@ actions_types = list(/datum/action/item_action/organ_action/use) var/inert = 0 var/preserved = 0 + var/list/spawned_brood = list() /obj/item/organ/hivelord_core/New() ..() @@ -277,13 +273,36 @@ update_icon() /obj/item/organ/hivelord_core/ui_action_click() - owner.revive(full_heal = 1) - qdel(src) + var/spawn_amount = 1 + if(!inert) + spawn_amount++ + + for(var/a in spawned_brood) + if(!istype(a, /mob/living/simple_animal/hostile/asteroid/hivelordbrood) || qdeleted(a)) + spawned_brood -= a + continue + spawn_amount -= spawned_brood.len + + for(var/i = 1 to spawn_amount) + var/mob/living/simple_animal/hostile/asteroid/hivelordbrood/blood/B = new (owner.loc) + B.link_host(owner) + spawned_brood |= B + /obj/item/organ/hivelord_core/on_life() ..() - if(owner.health < HEALTH_THRESHOLD_CRIT) - ui_action_click() + if(owner) + owner.adjustBruteLoss(-1) + owner.adjustFireLoss(-1) + owner.adjustOxyLoss(-2) + if(ishuman(owner)) + var/mob/living/carbon/human/H = owner + CHECK_DNA_AND_SPECIES(H) + if(NOBLOOD in H.dna.species.specflags) + return + + if(H.blood_volume && H.blood_volume < BLOOD_VOLUME_NORMAL) + H.blood_volume += 2 // Fast blood regen /obj/item/organ/hivelord_core/afterattack(atom/target, mob/user, proximity_flag) if(proximity_flag && ishuman(target)) @@ -296,7 +315,7 @@ user << "[src] are useless on the dead." return if(H != user) - H.visible_message("[user] forces [H] to apply [src]... [H.p_they()] quickly regenerate all injuries!") + H.visible_message("[user] forces [H] to apply [src]... they quickly regenerate all injuries!") feedback_add_details("hivelord_core","[src.type]|used|other") else user << "You start to smear [src] on yourself. It feels and smells disgusting, but you feel amazingly refreshed in mere moments." @@ -324,7 +343,7 @@ speed = 3 maxHealth = 1 health = 1 - movement_type = FLYING + flying = 1 harm_intent_damage = 5 melee_damage_lower = 2 melee_damage_upper = 2 @@ -332,7 +351,6 @@ speak_emote = list("telepathically cries") attack_sound = 'sound/weapons/pierce.ogg' throw_message = "falls right through the strange body of the" - obj_damage = 0 environment_smash = 0 pass_flags = PASSTABLE del_on_death = 1 @@ -403,8 +421,7 @@ /mob/living/simple_animal/hostile/asteroid/hivelordbrood/blood/proc/link_host(mob/living/carbon/C) faction = list("\ref[src]", "\ref[C]") // Hostile to everyone except the host. C.transfer_blood_to(src, 30) - var/newcolor = mix_color_from_reagents(reagents.reagent_list) - add_atom_colour(newcolor, FIXED_COLOUR_PRIORITY) + color = mix_color_from_reagents(reagents.reagent_list) /mob/living/simple_animal/hostile/asteroid/goliath name = "goliath" @@ -415,6 +432,7 @@ icon_aggro = "Goliath_alert" icon_dead = "Goliath_dead" icon_gib = "syndicate_gib" + attack_sound = 'sound/weapons/punch4.ogg' mouse_opacity = 2 move_to_delay = 40 ranged = 1 @@ -426,7 +444,6 @@ maxHealth = 300 health = 300 harm_intent_damage = 0 - obj_damage = 100 melee_damage_lower = 25 melee_damage_upper = 25 attacktext = "pulverizes" @@ -435,9 +452,10 @@ aggro_vision_range = 9 idle_vision_range = 5 anchored = 1 //Stays anchored until death as to be unpullable + mob_size = MOB_SIZE_LARGE var/pre_attack = 0 var/pre_attack_icon = "Goliath_preattack" - loot = list(/obj/item/stack/sheet/animalhide/goliath_hide) + loot = list(/obj/item/stack/sheet/animalhide/goliath_hide{layer = ABOVE_MOB_LAYER}) /mob/living/simple_animal/hostile/asteroid/goliath/Life() ..() @@ -461,7 +479,7 @@ /mob/living/simple_animal/hostile/asteroid/goliath/OpenFire() var/tturf = get_turf(target) - if(!isturf(tturf)) + if(!(istype(tturf, /turf))) return if(get_dist(src, target) <= 7)//Screen range check, so you can't get tentacle'd offscreen visible_message("The [src.name] digs its tentacles under [target.name]!") @@ -469,6 +487,7 @@ ranged_cooldown = world.time + ranged_cooldown_time icon_state = icon_aggro pre_attack = 0 + return /mob/living/simple_animal/hostile/asteroid/goliath/adjustHealth(damage) ranged_cooldown -= 10 @@ -480,8 +499,9 @@ handle_preattack() if(icon_state != icon_aggro) icon_state = icon_aggro + return -/obj/effect/goliath_tentacle +/obj/effect/goliath_tentacle/ name = "Goliath tentacle" icon = 'icons/mob/lavaland/lavaland_monsters.dmi' icon_state = "Goliath_tentacle" @@ -490,7 +510,7 @@ /obj/effect/goliath_tentacle/New() var/turftype = get_turf(src) - if(ismineralturf(turftype)) + if(istype(turftype, /turf/closed/mineral)) var/turf/closed/mineral/M = turftype M.gets_drilled() addtimer(src, "Trip", 10) @@ -527,7 +547,7 @@ icon = 'icons/obj/mining.dmi' icon_state = "goliath_hide" flags = NOBLUDGEON - w_class = WEIGHT_CLASS_NORMAL + w_class = 3 layer = MOB_LAYER /obj/item/stack/sheet/animalhide/goliath_hide/afterattack(atom/target, mob/user, proximity_flag) @@ -544,11 +564,13 @@ return if(istype(target, /obj/mecha/working/ripley)) var/obj/mecha/working/ripley/D = target + var/list/damage_absorption = D.damage_absorption if(D.hides < 3) D.hides++ - D.armor["melee"] = min(D.armor["melee"] + 10, 70) - D.armor["bullet"] = min(D.armor["bullet"] + 5, 50) - D.armor["laser"] = min(D.armor["laser"] + 5, 50) + damage_absorption["brute"] = max(damage_absorption["brute"] - 0.1, 0.3) + damage_absorption["bullet"] = damage_absorption["bullet"] - 0.05 + damage_absorption["fire"] = damage_absorption["fire"] - 0.05 + damage_absorption["laser"] = damage_absorption["laser"] - 0.025 user << "You strengthen [target], improving its resistance against melee attacks." D.update_icon() if(D.hides == 3) @@ -576,6 +598,7 @@ icon_aggro = "Fugu" icon_dead = "Fugu_dead" icon_gib = "syndicate_gib" + attack_sound = 'sound/weapons/punch4.ogg' mouse_opacity = 2 move_to_delay = 5 friendly = "floats near" @@ -585,7 +608,6 @@ maxHealth = 50 health = 50 harm_intent_damage = 5 - obj_damage = 0 melee_damage_lower = 0 melee_damage_upper = 0 attacktext = "chomps" @@ -630,7 +652,6 @@ return wumbo = 1 icon_state = "Fugu_big" - obj_damage = 60 melee_damage_lower = 15 melee_damage_upper = 20 harm_intent_damage = 0 @@ -640,7 +661,6 @@ move_to_delay = 6 transform *= 2 environment_smash = 2 - mob_size = MOB_SIZE_LARGE speed = 1 addtimer(src, "Deflate", 100) @@ -649,7 +669,6 @@ walk(src, 0) wumbo = 0 icon_state = "Fugu" - obj_damage = 0 melee_damage_lower = 0 melee_damage_upper = 0 harm_intent_damage = 5 @@ -673,7 +692,7 @@ icon = 'icons/obj/surgery.dmi' icon_state = "fugu_gland" flags = NOBLUDGEON - w_class = WEIGHT_CLASS_NORMAL + w_class = 3 layer = MOB_LAYER origin_tech = "biotech=6" var/list/banned_mobs() @@ -711,11 +730,10 @@ melee_damage_lower = 15 melee_damage_upper = 15 attacktext = "impales" - a_intent = INTENT_HARM + a_intent = "harm" speak_emote = list("telepathically cries") attack_sound = 'sound/weapons/bladeslice.ogg' stat_attack = 1 - movement_type = FLYING robust_searching = 1 loot = list() butcher_results = list(/obj/item/weapon/ore/diamond = 2, /obj/item/stack/sheet/sinew = 2, /obj/item/stack/sheet/bone = 1) @@ -750,7 +768,6 @@ icon_aggro = "legion" icon_dead = "legion" icon_gib = "syndicate_gib" - obj_damage = 60 melee_damage_lower = 15 melee_damage_upper = 15 attacktext = "lashes out at" @@ -801,22 +818,19 @@ robust_searching = 1 /mob/living/simple_animal/hostile/asteroid/hivelordbrood/legion/Life() - if(isturf(loc)) + if(isturf(src.loc)) for(var/mob/living/carbon/human/H in view(src,1)) //Only for corpse right next to/on same tile if(H.stat == UNCONSCIOUS) - infest(H) + visible_message("[src.name] burrows into the flesh of [H]!") + var/mob/living/simple_animal/hostile/asteroid/hivelord/legion/L = new(H.loc) + visible_message("[L] staggers to their feet!") + H.death() + H.adjustBruteLoss(1000) + L.stored_mob = H + H.forceMove(L) + qdel(src) ..() -/mob/living/simple_animal/hostile/asteroid/hivelordbrood/legion/proc/infest(mob/living/carbon/human/H) - visible_message("[name] burrows into the flesh of [H]!") - var/mob/living/simple_animal/hostile/asteroid/hivelord/legion/L = new(H.loc) - visible_message("[L] staggers to their feet!") - H.death() - H.adjustBruteLoss(1000) - L.stored_mob = H - H.forceMove(L) - qdel(src) - /obj/item/organ/hivelord_core/legion name = "legion's soul" desc = "A strange rock that still crackles with power... its \ @@ -841,7 +855,7 @@ desc = "[src] has become inert, it crackles no more and is useless for \ healing injuries." -/obj/item/organ/hivelord_core/legion/preserved(implanted = 0) +/obj/item/organ/hivelord_core/legion/preserved() ..() desc = "[src] has been stabilized. It no longer crackles with power, but it's healing properties are preserved indefinitely." @@ -869,15 +883,14 @@ density = 0 speak_chance = 1 turns_per_move = 8 - obj_damage = 0 environment_smash = 0 move_to_delay = 15 response_help = "pets" response_disarm = "gently pushes aside" response_harm = "squishes" friendly = "pinches" - a_intent = INTENT_HELP - ventcrawler = VENTCRAWLER_ALWAYS + a_intent = "help" + ventcrawler = 2 gold_core_spawnable = 2 stat_attack = 1 gender = NEUTER @@ -919,7 +932,7 @@ ..() /mob/living/simple_animal/hostile/asteroid/gutlunch/AttackingTarget() - if(is_type_in_typecache(target,wanted_objects)) //we eats + if(is_type_in_list(target,wanted_objects)) //we eats udder.generateMilk() regenerate_icons() visible_message("[src] slurps up [target].") @@ -948,7 +961,7 @@ /mob/living/simple_animal/hostile/asteroid/gutlunch/gubbuck/New() ..() - add_atom_colour(pick("#E39FBB", "#D97D64", "#CF8C4A"), FIXED_COLOUR_PRIORITY) + color = pick("#E39FBB", "#D97D64", "#CF8C4A") resize = 0.85 update_transform() @@ -964,11 +977,11 @@ make_babies() /mob/living/simple_animal/hostile/asteroid/gutlunch/guthen/make_babies() - . = ..() - if(.) + if(..()) udder.reagents.clear_reagents() regenerate_icons() + //Nests /mob/living/simple_animal/hostile/spawner/lavaland name = "necropolis tendril" @@ -979,7 +992,6 @@ icon_dead = "tendril" faction = list("mining") weather_immunities = list("lava","ash") - luminosity = 1 health = 250 maxHealth = 250 max_mobs = 3 @@ -995,41 +1007,15 @@ /mob/living/simple_animal/hostile/spawner/lavaland/New() ..() - for(var/F in RANGE_TURFS(1, src)) - if(ismineralturf(F)) - var/turf/closed/mineral/M = F - M.ChangeTurf(M.turf_type,FALSE,TRUE) gps = new /obj/item/device/gps/internal(src) /mob/living/simple_animal/hostile/spawner/lavaland/Destroy() qdel(gps) . = ..() -#define MEDAL_PREFIX "Tendril" -/mob/living/simple_animal/hostile/spawner/lavaland/death() - var/last_tendril = TRUE - for(var/mob/living/simple_animal/hostile/spawner/lavaland/other in mob_list) - if(other != src) - last_tendril = FALSE - break - if(last_tendril && !admin_spawned) - if(global.medal_hub && global.medal_pass && global.medals_enabled) - for(var/mob/living/L in view(7,src)) - if(L.stat) - continue - if(L.client) - var/client/C = L.client - var/suffixm = ALL_KILL_MEDAL - var/prefix = MEDAL_PREFIX - UnlockMedal("[prefix] [suffixm]",C) - SetScore(TENDRIL_CLEAR_SCORE,C,1) - ..() -#undef MEDAL_PREFIX - /obj/effect/collapse name = "collapsing necropolis tendril" desc = "Get clear!" - luminosity = 1 layer = ABOVE_OPEN_TURF_LAYER icon = 'icons/mob/nest.dmi' icon_state = "tendril" diff --git a/code/modules/mob/living/simple_animal/hostile/mushroom.dm b/code/modules/mob/living/simple_animal/hostile/mushroom.dm index 5c997b7765..9654f1a7cd 100644 --- a/code/modules/mob/living/simple_animal/hostile/mushroom.dm +++ b/code/modules/mob/living/simple_animal/hostile/mushroom.dm @@ -13,7 +13,6 @@ response_disarm = "gently pushes aside" response_harm = "whacks" harm_intent_damage = 5 - obj_damage = 0 melee_damage_lower = 1 melee_damage_upper = 1 attack_same = 2 @@ -24,7 +23,7 @@ stat_attack = 2 mouse_opacity = 1 speed = 1 - ventcrawler = VENTCRAWLER_ALWAYS + ventcrawler = 2 robust_searching = 1 unique_name = 1 speak_emote = list("squeaks") @@ -145,7 +144,7 @@ /mob/living/simple_animal/hostile/mushroom/attack_hand(mob/living/carbon/human/M) ..() - if(M.a_intent == INTENT_HARM) + if(M.a_intent == "harm") Bruise() /mob/living/simple_animal/hostile/mushroom/hitby(atom/movable/AM) diff --git a/code/modules/mob/living/simple_animal/hostile/nanotrasen.dm b/code/modules/mob/living/simple_animal/hostile/nanotrasen.dm index 112370b2b2..326359bcc1 100644 --- a/code/modules/mob/living/simple_animal/hostile/nanotrasen.dm +++ b/code/modules/mob/living/simple_animal/hostile/nanotrasen.dm @@ -20,7 +20,7 @@ melee_damage_upper = 15 attacktext = "punches" attack_sound = 'sound/weapons/punch1.ogg' - a_intent = INTENT_HARM + a_intent = "harm" loot = list(/obj/effect/mob_spawn/human/corpse/nanotrasensoldier) 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 @@ -44,7 +44,7 @@ minimum_distance = 5 casingtype = /obj/item/ammo_casing/c45 projectilesound = 'sound/weapons/Gunshot.ogg' - loot = list(/obj/item/weapon/gun/ballistic/automatic/pistol/m1911, + loot = list(/obj/item/weapon/gun/projectile/automatic/pistol/m1911, /obj/effect/mob_spawn/human/corpse/nanotrasensoldier) @@ -54,5 +54,5 @@ rapid = 1 casingtype = /obj/item/ammo_casing/c46x30mm projectilesound = 'sound/weapons/Gunshot_smg.ogg' - loot = list(/obj/item/weapon/gun/ballistic/automatic/wt550, + loot = list(/obj/item/weapon/gun/projectile/automatic/wt550, /obj/effect/mob_spawn/human/corpse/nanotrasensoldier) \ No newline at end of file diff --git a/code/modules/mob/living/simple_animal/hostile/pirate.dm b/code/modules/mob/living/simple_animal/hostile/pirate.dm index 76263907a8..eca0064735 100644 --- a/code/modules/mob/living/simple_animal/hostile/pirate.dm +++ b/code/modules/mob/living/simple_animal/hostile/pirate.dm @@ -14,7 +14,6 @@ health = 100 harm_intent_damage = 5 - obj_damage = 60 melee_damage_lower = 30 melee_damage_upper = 30 attacktext = "slashes" @@ -41,28 +40,3 @@ projectiletype = /obj/item/projectile/beam/laser loot = list(/obj/effect/mob_spawn/human/corpse/pirate/ranged, /obj/item/weapon/gun/energy/laser) - -/mob/living/simple_animal/hostile/pirate/space - name = "Space Pirate" - icon_state = "piratespace" - icon_living = "piratespace" - atmos_requirements = list("min_oxy" = 0, "max_oxy" = 0, "min_tox" = 0, "max_tox" = 0, "min_co2" = 0, "max_co2" = 0, "min_n2" = 0, "max_n2" = 0) - minbodytemp = 0 - speed = 1 - deathmessage = "'s suit can't take anymore damage and rips apart!" - -/mob/living/simple_animal/hostile/pirate/space/ranged - name = "Space Pirate Gunner" - icon_state = "piratespaceranged" - icon_living = "piratespaceranged" - projectilesound = 'sound/weapons/laser.ogg' - ranged = 1 - rapid = 1 - retreat_distance = 5 - minimum_distance = 5 - projectiletype = /obj/item/projectile/beam/laser - loot = list(/obj/effect/mob_spawn/human/corpse/pirate/ranged, - /obj/item/weapon/gun/energy/laser) - -/mob/living/simple_animal/hostile/pirate/space/Process_Spacemove(movement_dir = 0) - return 1 diff --git a/code/modules/mob/living/simple_animal/hostile/retaliate/bat.dm b/code/modules/mob/living/simple_animal/hostile/retaliate/bat.dm index 3eb8e85c93..67bfd337c5 100644 --- a/code/modules/mob/living/simple_animal/hostile/retaliate/bat.dm +++ b/code/modules/mob/living/simple_animal/hostile/retaliate/bat.dm @@ -21,11 +21,10 @@ pass_flags = PASSTABLE faction = list("hostile") attack_sound = 'sound/weapons/bite.ogg' - obj_damage = 0 environment_smash = 0 - ventcrawler = VENTCRAWLER_ALWAYS + ventcrawler = 2 mob_size = MOB_SIZE_TINY - movement_type = FLYING + flying = 1 speak_emote = list("squeaks") var/max_co2 = 0 //to be removed once metastation map no longer use those for Sgt Araneus var/min_oxy = 0 diff --git a/code/modules/mob/living/simple_animal/hostile/retaliate/clown.dm b/code/modules/mob/living/simple_animal/hostile/retaliate/clown.dm index 886428ce52..3e613b9040 100644 --- a/code/modules/mob/living/simple_animal/hostile/retaliate/clown.dm +++ b/code/modules/mob/living/simple_animal/hostile/retaliate/clown.dm @@ -5,6 +5,7 @@ icon_living = "clown" icon_dead = "clown_dead" icon_gib = "clown_gib" + speak_chance = 0 turns_per_move = 5 response_help = "pokes" response_disarm = "gently pushes aside" @@ -12,7 +13,7 @@ speak = list("HONK", "Honk!", "Welcome to clown planet!") emote_see = list("honks", "squeaks") speak_chance = 1 - a_intent = INTENT_HARM + a_intent = "harm" maxHealth = 75 health = 75 speed = 0 @@ -21,7 +22,6 @@ melee_damage_upper = 10 attacktext = "attacks" attack_sound = 'sound/items/bikehorn.ogg' - obj_damage = 0 environment_smash = 0 del_on_death = 1 loot = list(/obj/effect/mob_spawn/human/corpse/clown) @@ -39,4 +39,4 @@ /mob/living/simple_animal/hostile/retaliate/clown/attack_hand(mob/living/carbon/human/M) ..() - playsound(src.loc, 'sound/items/bikehorn.ogg', 50, 1) + playsound(src.loc, 'sound/items/bikehorn.ogg', 50, 1) \ No newline at end of file diff --git a/code/modules/mob/living/simple_animal/hostile/retaliate/frog.dm b/code/modules/mob/living/simple_animal/hostile/retaliate/frog.dm deleted file mode 100644 index 0d93a7f2b4..0000000000 --- a/code/modules/mob/living/simple_animal/hostile/retaliate/frog.dm +++ /dev/null @@ -1,42 +0,0 @@ -/mob/living/simple_animal/hostile/retaliate/frog - name = "frog" - desc = "It seems a little sad." - icon_state = "frog" - icon_living = "frog" - icon_dead = "frog_dead" - speak = list("ribbits","croaks") - emote_see = list("hops in a circle.", "shakes.") - speak_chance = 1 - turns_per_move = 5 - maxHealth = 15 - health = 15 - melee_damage_lower = 5 - melee_damage_upper = 5 - attacktext = "bites" - response_help = "pets" - response_disarm = "pokes" - response_harm = "splats" - density = 0 - ventcrawler = VENTCRAWLER_ALWAYS - faction = list("hostile") - attack_sound = 'sound/effects/Reee.ogg' - butcher_results = list(/obj/item/weapon/reagent_containers/food/snacks/nugget = 1) - pass_flags = PASSTABLE | PASSGRILLE | PASSMOB - mob_size = MOB_SIZE_TINY - gold_core_spawnable = 1 - -/mob/living/simple_animal/hostile/retaliate/frog/New() - ..() - if(prob(1)) - name = "rare frog" - desc = "It seems a little smug." - icon_state = "rare_frog" - icon_living = "rare_frog" - icon_dead = "rare_frog_dead" - butcher_results = list(/obj/item/weapon/reagent_containers/food/snacks/nugget = 5) - -/mob/living/simple_animal/hostile/retaliate/frog/Crossed(AM as mob|obj) - if(!stat && isliving(AM)) - var/mob/living/L = AM - if(L.mob_size > MOB_SIZE_TINY) - playsound(src, 'sound/effects/Huuu.ogg', 50, 1) \ No newline at end of file diff --git a/code/modules/mob/living/simple_animal/hostile/retaliate/ghost.dm b/code/modules/mob/living/simple_animal/hostile/retaliate/ghost.dm index 3880b6a1fe..e6b6667688 100644 --- a/code/modules/mob/living/simple_animal/hostile/retaliate/ghost.dm +++ b/code/modules/mob/living/simple_animal/hostile/retaliate/ghost.dm @@ -1,4 +1,4 @@ -/mob/living/simple_animal/hostile/retaliate/ghost +/mob/living/simple_animal/retaliate/ghost name = "ghost" desc = "A soul of the dead, spooky." icon = 'icons/mob/mob.dmi' @@ -9,7 +9,7 @@ response_help = "passes through" response_disarm = "shoves" response_harm = "hits" - a_intent = INTENT_HARM + a_intent = "harm" healable = 0 speed = 0 maxHealth = 40 @@ -27,8 +27,8 @@ atmos_requirements = list("min_oxy" = 0, "max_oxy" = 0, "min_tox" = 0, "max_tox" = 0, "min_co2" = 0, "max_co2" = 0, "min_n2" = 0, "max_n2" = 0) minbodytemp = 0 maxbodytemp = 1500 - movement_type = FLYING - pressure_resistance = 300 + flying = 1 + pressure_resistance = 200 gold_core_spawnable = 0 //too spooky for science var/ghost_hair_style var/ghost_hair_color @@ -38,7 +38,7 @@ var/image/ghost_facial_hair = null var/random = TRUE //if you want random names for ghosts or not -/mob/living/simple_animal/hostile/retaliate/ghost/New() +/mob/living/simple_animal/retaliate/ghost/New() ..() if(!random) give_hair() @@ -51,7 +51,7 @@ give_hair() -/mob/living/simple_animal/hostile/retaliate/ghost/proc/give_hair() +/mob/living/simple_animal/retaliate/ghost/proc/give_hair() if(ghost_hair_style != null) ghost_hair = image('icons/mob/human_face.dmi', "hair_[ghost_hair_style]_s") ghost_hair.layer = -HAIR_LAYER diff --git a/code/modules/mob/living/simple_animal/hostile/retaliate/spaceman.dm b/code/modules/mob/living/simple_animal/hostile/retaliate/spaceman.dm index 4a8c99a111..d59dab7959 100644 --- a/code/modules/mob/living/simple_animal/hostile/retaliate/spaceman.dm +++ b/code/modules/mob/living/simple_animal/hostile/retaliate/spaceman.dm @@ -5,12 +5,11 @@ icon_living = "old" icon_dead = "old_dead" icon_gib = "clown_gib" - gender = MALE turns_per_move = 5 response_help = "pokes" response_disarm = "gently pushes aside" response_harm = "punches" - a_intent = INTENT_HARM + a_intent = "harm" maxHealth = 100 health = 100 speed = 0 @@ -19,7 +18,6 @@ melee_damage_upper = 10 attacktext = "hits" attack_sound = 'sound/weapons/punch1.ogg' - obj_damage = 0 environment_smash = 0 del_on_death = 0 diff --git a/code/modules/mob/living/simple_animal/hostile/russian.dm b/code/modules/mob/living/simple_animal/hostile/russian.dm index 25d1054e17..3f67b124e4 100644 --- a/code/modules/mob/living/simple_animal/hostile/russian.dm +++ b/code/modules/mob/living/simple_animal/hostile/russian.dm @@ -18,7 +18,7 @@ melee_damage_upper = 15 attacktext = "punches" attack_sound = 'sound/weapons/punch1.ogg' - a_intent = INTENT_HARM + a_intent = "harm" loot = list(/obj/effect/mob_spawn/human/corpse/russian, /obj/item/weapon/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) @@ -32,7 +32,7 @@ icon_state = "russianranged" icon_living = "russianranged" loot = list(/obj/effect/mob_spawn/human/corpse/russian/ranged, - /obj/item/weapon/gun/ballistic/revolver/nagant) + /obj/item/weapon/gun/projectile/revolver/nagant) ranged = 1 retreat_distance = 5 minimum_distance = 5 @@ -42,7 +42,7 @@ /mob/living/simple_animal/hostile/russian/ranged/mosin loot = list(/obj/effect/mob_spawn/human/corpse/russian/ranged, - /obj/item/weapon/gun/ballistic/shotgun/boltaction) + /obj/item/weapon/gun/projectile/shotgun/boltaction) casingtype = /obj/item/ammo_casing/a762 /mob/living/simple_animal/hostile/russian/ranged/trooper @@ -52,7 +52,7 @@ health = 150 casingtype = /obj/item/ammo_casing/shotgun/buckshot loot = list(/obj/effect/mob_spawn/human/corpse/russian/ranged/trooper, - /obj/item/weapon/gun/ballistic/shotgun/lethal) + /obj/item/weapon/gun/projectile/shotgun/lethal) /mob/living/simple_animal/hostile/russian/ranged/officer name = "Russian Officer" @@ -63,7 +63,7 @@ rapid = 1 casingtype = /obj/item/ammo_casing/c9mm loot = list(/obj/effect/mob_spawn/human/corpse/russian/ranged/officer, - /obj/item/weapon/gun/ballistic/automatic/pistol/APS) + /obj/item/weapon/gun/projectile/automatic/pistol/APS) /mob/living/simple_animal/hostile/russian/ranged/officer/Aggro() ..() diff --git a/code/modules/mob/living/simple_animal/hostile/skeleton.dm b/code/modules/mob/living/simple_animal/hostile/skeleton.dm index 833e70dac0..56b4a9ed06 100644 --- a/code/modules/mob/living/simple_animal/hostile/skeleton.dm +++ b/code/modules/mob/living/simple_animal/hostile/skeleton.dm @@ -4,11 +4,10 @@ icon_state = "skeleton" icon_living = "skeleton" icon_dead = "skeleton" - gender = NEUTER turns_per_move = 5 speak_emote = list("rattles") emote_see = list("rattles") - a_intent = INTENT_HARM + a_intent = "harm" maxHealth = 40 health = 40 speed = 1 @@ -22,6 +21,7 @@ attack_sound = 'sound/hallucinations/growl1.ogg' atmos_requirements = list("min_oxy" = 0, "max_oxy" = 0, "min_tox" = 0, "max_tox" = 0, "min_co2" = 0, "max_co2" = 0, "min_n2" = 0, "max_n2" = 0) unsuitable_atmos_damage = 10 + environment_smash = 1 robust_searching = 1 stat_attack = 1 gold_core_spawnable = 1 @@ -63,14 +63,13 @@ speak_chance = 1 speak = list("THE GODS WILL IT!","DEUS VULT!","REMOVE KABAB!") force_threshold = 10 //trying to simulate actually having armor - obj_damage = 50 melee_damage_lower = 25 melee_damage_upper = 30 deathmessage = "collapses into a pile of bones, its gear clanging as it hits the ground!" loot = list(/obj/effect/decal/remains/human, /obj/item/clothing/suit/armor/riot/knight/templar, /obj/item/clothing/head/helmet/knight/templar, - /obj/item/weapon/claymore/weak{name = "holy sword"}) + /obj/item/weapon/claymore/hog{name = "holy sword"}) /mob/living/simple_animal/hostile/skeleton/ice name = "ice skeleton" diff --git a/code/modules/mob/living/simple_animal/hostile/statue.dm b/code/modules/mob/living/simple_animal/hostile/statue.dm index 0385cc8a7c..b196579524 100644 --- a/code/modules/mob/living/simple_animal/hostile/statue.dm +++ b/code/modules/mob/living/simple_animal/hostile/statue.dm @@ -8,7 +8,7 @@ icon_living = "human_male" icon_dead = "human_male" gender = NEUTER - a_intent = INTENT_HARM + a_intent = "harm" response_help = "touches" response_disarm = "pushes" @@ -18,8 +18,7 @@ health = 50000 healable = 0 - harm_intent_damage = 10 - obj_damage = 100 + harm_intent_damage = 70 melee_damage_lower = 68 melee_damage_upper = 83 attacktext = "claws" @@ -111,8 +110,8 @@ return null // Check for darkness var/turf/T = get_turf(loc) - if(T && destination && T.lighting_object) - if(T.lighting_lumcount<1 && destination.lighting_lumcount<1) // No one can see us in the darkness, right? + if(T && destination) + if((T.get_lumcount())<1 && (destination.get_lumcount())<1) // No one can see us in the darkness, right? return null if(T == destination) destination = null @@ -208,7 +207,7 @@ /obj/effect/proc_holder/spell/targeted/night_vision/cast(list/targets,mob/user = usr) for(var/mob/living/target in targets) - if(ishuman(target)) + if(istype(target, /mob/living/carbon/human)) var/mob/living/carbon/human/H = target if(H.dna.species.invis_sight == SEE_INVISIBLE_LIVING) H.dna.species.invis_sight = SEE_INVISIBLE_NOLIGHTING diff --git a/code/modules/mob/living/simple_animal/hostile/stickman.dm b/code/modules/mob/living/simple_animal/hostile/stickman.dm deleted file mode 100644 index 3fcdc3e37a..0000000000 --- a/code/modules/mob/living/simple_animal/hostile/stickman.dm +++ /dev/null @@ -1,61 +0,0 @@ -/mob/living/simple_animal/hostile/stickman - name = "Angry Stick Man" - desc = "A being from a realm with only 2 dimensions. At least it's trying to stay faced towards you." - icon_state = "stickman" - icon_living = "stickman" - icon_dead = "stickman_dead" - icon_gib = "syndicate_gib" - gender = MALE - speak_chance = 0 - turns_per_move = 5 - response_help = "pokes" - response_disarm = "shoves" - response_harm = "hits" - speed = 0 - stat_attack = 1 - robust_searching = 1 - environment_smash = 0 - maxHealth = 100 - health = 100 - harm_intent_damage = 5 - obj_damage = 0 - melee_damage_lower = 10 - melee_damage_upper = 10 - attacktext = "punches" - attack_sound = 'sound/weapons/punch1.ogg' - a_intent = INTENT_HARM - 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("hostile","stickman") - check_friendly_fire = 1 - status_flags = CANPUSH - var/datum/action/boss/wizard_summon_minions/changesummons = /datum/action/boss/wizard_summon_minions - var/summoned_by_wizard = 0 - -/mob/living/simple_animal/hostile/stickman/ranged - ranged = 1 - retreat_distance = 5 - minimum_distance = 5 - icon_state = "stickmanranged" - icon_living = "stickmanranged" - casingtype = /obj/item/ammo_casing/c45nostamina - projectilesound = 'sound/misc/bang.ogg' - loot = list(/obj/item/weapon/gun/ballistic/automatic/pistol/stickman) - - -/mob/living/simple_animal/hostile/stickman/dog - name = "Angry Stick Dog" - desc = "Stickman's best friend, if he could see him at least." - icon_state = "stickdog" - icon_living = "stickdog" - icon_dead = "stickdog_dead" - -/mob/living/simple_animal/hostile/stickman/New(var/turf/loc, var/wizard_summoned) - ..() - new /obj/effect/overlay/temp/paper_scatter(src) - summoned_by_wizard = wizard_summoned - -/mob/living/simple_animal/hostile/stickman/death() - ..() - if(summoned_by_wizard == 1) - changesummons.summoned_minions -- diff --git a/code/modules/mob/living/simple_animal/hostile/syndicate.dm b/code/modules/mob/living/simple_animal/hostile/syndicate.dm index 679804c7a1..e2e7dae144 100644 --- a/code/modules/mob/living/simple_animal/hostile/syndicate.dm +++ b/code/modules/mob/living/simple_animal/hostile/syndicate.dm @@ -31,7 +31,7 @@ melee_damage_upper = 10 attacktext = "punches" attack_sound = 'sound/weapons/punch1.ogg' - a_intent = INTENT_HARM + a_intent = "harm" 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 @@ -128,7 +128,7 @@ projectilesound = 'sound/weapons/Gunshot.ogg' casingtype = /obj/item/ammo_casing/shotgun/buckshot loot = list(/obj/effect/mob_spawn/human/corpse/syndicatestormtrooper, - /obj/item/weapon/gun/ballistic/automatic/shotgun/bulldog/unrestricted, + /obj/item/weapon/gun/projectile/automatic/shotgun/bulldog/unrestricted, /obj/item/weapon/shield/energy) ///////////////Misc//////////// @@ -136,7 +136,6 @@ /mob/living/simple_animal/hostile/syndicate/civilian minimum_distance = 10 retreat_distance = 10 - obj_damage = 0 environment_smash = 0 /mob/living/simple_animal/hostile/syndicate/civilian/Aggro() @@ -151,20 +150,17 @@ icon_state = "viscerator_attack" icon_living = "viscerator_attack" pass_flags = PASSTABLE - health = 25 - maxHealth = 25 + health = 15 + maxHealth = 15 melee_damage_lower = 15 melee_damage_upper = 15 - obj_damage = 0 - environment_smash = 0 attacktext = "cuts" attack_sound = 'sound/weapons/bladeslice.ogg' faction = list("syndicate") atmos_requirements = list("min_oxy" = 0, "max_oxy" = 0, "min_tox" = 0, "max_tox" = 0, "min_co2" = 0, "max_co2" = 0, "min_n2" = 0, "max_n2" = 0) minbodytemp = 0 mob_size = MOB_SIZE_TINY - movement_type = FLYING - limb_destroyer = 1 + flying = 1 speak_emote = list("states") bubble_icon = "syndibot" gold_core_spawnable = 1 diff --git a/code/modules/mob/living/simple_animal/hostile/tree.dm b/code/modules/mob/living/simple_animal/hostile/tree.dm index fb9e9fc3c6..7295e272e8 100644 --- a/code/modules/mob/living/simple_animal/hostile/tree.dm +++ b/code/modules/mob/living/simple_animal/hostile/tree.dm @@ -6,7 +6,6 @@ icon_living = "pine_1" icon_dead = "pine_1" icon_gib = "pine_1" - gender = NEUTER speak_chance = 0 turns_per_move = 5 response_help = "brushes" @@ -41,7 +40,7 @@ /mob/living/simple_animal/hostile/tree/Life() ..() - if(isopenturf(loc)) + if(istype(src.loc, /turf/open)) var/turf/open/T = src.loc if(T.air && T.air.gases["co2"]) var/co2 = T.air.gases["co2"][MOLES] diff --git a/code/modules/mob/living/simple_animal/hostile/venus_human_trap.dm b/code/modules/mob/living/simple_animal/hostile/venus_human_trap.dm index ddea7d64f9..7dc5c54bd3 100644 --- a/code/modules/mob/living/simple_animal/hostile/venus_human_trap.dm +++ b/code/modules/mob/living/simple_animal/hostile/venus_human_trap.dm @@ -21,7 +21,7 @@ anchors += locate(x+2,y-2,z) for(var/turf/T in anchors) - var/datum/beam/B = Beam(T, "vine", time=INFINITY, maxdistance=5, beam_type=/obj/effect/ebeam/vine) + var/datum/beam/B = Beam(T,"vine",'icons/effects/spacevines.dmi',INFINITY, 5,/obj/effect/ebeam/vine) B.sleep_time = 10 //these shouldn't move, so let's slow down updates to 1 second (any slower and the deletion of the vines would be too slow) addtimer(src, "bear_fruit", growth_time) @@ -55,10 +55,9 @@ maxHealth = 50 ranged = 1 harm_intent_damage = 5 - obj_damage = 60 melee_damage_lower = 25 melee_damage_upper = 25 - a_intent = INTENT_HARM + a_intent = "harm" attack_sound = 'sound/weapons/bladeslice.ogg' atmos_requirements = list("min_oxy" = 0, "max_oxy" = 0, "min_tox" = 0, "max_tox" = 0, "min_co2" = 0, "max_co2" = 0, "min_n2" = 0, "max_n2" = 0) unsuitable_atmos_damage = 0 @@ -99,15 +98,15 @@ if(A.density && A != L) continue grasping if(prob(grasp_chance)) - L << "\The [src] has you entangled!" - grasping[L] = Beam(L, "vine", time=INFINITY, maxdistance=5, beam_type=/obj/effect/ebeam/vine) + L << "\the [src] has you entangled!" + grasping[L] = Beam(L,"vine",'icons/effects/spacevines.dmi',INFINITY, 5,/obj/effect/ebeam/vine) break //only take 1 new victim per cycle /mob/living/simple_animal/hostile/venus_human_trap/OpenFire(atom/the_target) var/dist = get_dist(src,the_target) - Beam(the_target, "vine", time=dist*2, maxdistance=dist+2, beam_type=/obj/effect/ebeam/vine) + Beam(the_target,"vine",'icons/effects/spacevines.dmi',dist*2, dist+2,/obj/effect/ebeam/vine) the_target.attack_animal(src) diff --git a/code/modules/mob/living/simple_animal/hostile/wizard.dm b/code/modules/mob/living/simple_animal/hostile/wizard.dm index ca9bb1130e..df6a4be30b 100644 --- a/code/modules/mob/living/simple_animal/hostile/wizard.dm +++ b/code/modules/mob/living/simple_animal/hostile/wizard.dm @@ -17,7 +17,7 @@ melee_damage_upper = 5 attacktext = "punches" attack_sound = 'sound/weapons/punch1.ogg' - a_intent = INTENT_HARM + a_intent = "harm" 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("wizard") @@ -29,7 +29,7 @@ loot = list(/obj/effect/mob_spawn/human/corpse/wizard, /obj/item/weapon/staff) - var/obj/effect/proc_holder/spell/fireball/fireball = null + var/obj/effect/proc_holder/spell/dumbfire/fireball/fireball = null var/obj/effect/proc_holder/spell/targeted/turf_teleport/blink/blink = null var/obj/effect/proc_holder/spell/targeted/projectile/magic_missile/mm = null @@ -38,7 +38,7 @@ /mob/living/simple_animal/hostile/wizard/New() ..() - fireball = new /obj/effect/proc_holder/spell/fireball + fireball = new /obj/effect/proc_holder/spell/dumbfire/fireball fireball.clothes_req = 0 fireball.human_req = 0 fireball.player_lock = 0 @@ -62,7 +62,7 @@ if(target && next_cast < world.time) if((get_dir(src,target) in list(SOUTH,EAST,WEST,NORTH)) && fireball.cast_check(0,src)) //Lined up for fireball src.setDir(get_dir(src,target)) - fireball.perform(list(target), user = src) + fireball.choose_targets(src) next_cast = world.time + 10 //One spell per second return . if(mm.cast_check(0,src)) diff --git a/code/modules/mob/living/simple_animal/parrot.dm b/code/modules/mob/living/simple_animal/parrot.dm index c690c866b3..a38da5288a 100644 --- a/code/modules/mob/living/simple_animal/parrot.dm +++ b/code/modules/mob/living/simple_animal/parrot.dm @@ -34,8 +34,6 @@ icon_living = "parrot_fly" icon_dead = "parrot_dead" density = 0 - health = 80 - maxHealth = 80 pass_flags = PASSTABLE | PASSMOB speak = list("Hi!","Hello!","Cracker?","BAWWWWK george mellons griffing me!") @@ -53,11 +51,11 @@ response_disarm = "gently moves aside" response_harm = "swats" stop_automated_movement = 1 - a_intent = INTENT_HARM //parrots now start "aggressive" since only player parrots will nuzzle. + a_intent = "harm" //parrots now start "aggressive" since only player parrots will nuzzle. attacktext = "chomps" friendly = "grooms" mob_size = MOB_SIZE_SMALL - movement_type = FLYING + flying = 1 gold_core_spawnable = 2 var/parrot_damage_upper = 10 @@ -150,8 +148,6 @@ if(speech_buffer.len >= 500) speech_buffer -= pick(speech_buffer) speech_buffer |= html_decode(raw_message) - if(speaker == src && !client) //If a parrot squawks in the woods and no one is around to hear it, does it make a sound? This code says yes! - return message ..() /mob/living/simple_animal/parrot/radio(message, message_mode, list/spans) //literally copied from human/radio(), but there's no other way to do this. at least it's better than it used to be. @@ -199,7 +195,7 @@ return //Is the usr's mob type able to do this? (lolaliens) - if(ishuman(usr) || ismonkey(usr) || iscyborg(usr) || isalienadult(usr)) + if(ishuman(usr) || ismonkey(usr) || isrobot(usr) || isalienadult(usr)) //Removing from inventory if(href_list["remove_inv"]) @@ -224,7 +220,7 @@ //Adding things to inventory else if(href_list["add_inv"]) var/add_to = href_list["add_inv"] - if(!usr.get_active_held_item()) + if(!usr.get_active_hand()) usr << "You have nothing in your hand to put on its [add_to]!" return switch(add_to) @@ -233,7 +229,7 @@ usr << "It's already wearing something!" return else - var/obj/item/item_to_add = usr.get_active_held_item() + var/obj/item/item_to_add = usr.get_active_hand() if(!item_to_add) return @@ -280,7 +276,7 @@ ..() if(client) return - if(!stat && M.a_intent == INTENT_HARM) + if(!stat && M.a_intent == "harm") icon_state = "parrot_fly" //It is going to be flying regardless of whether it flees or attacks @@ -290,12 +286,12 @@ parrot_interest = M parrot_state = PARROT_SWOOP //The parrot just got hit, it WILL move, now to pick a direction.. - if(health > 30) //Let's get in there and squawk it up! + if(M.health < 50) //Weakened mob? Fight back! parrot_state |= PARROT_ATTACK else parrot_state |= PARROT_FLEE //Otherwise, fly like a bat out of hell! drop_held_item(0) - if(!stat && M.a_intent == INTENT_HELP) + if(!stat && M.a_intent == "help") handle_automated_speech(1) //assured speak/emote return @@ -329,8 +325,8 @@ parrot_interest = user parrot_state = PARROT_SWOOP - if(health > 30) //Let's get in there and squawk it up! - parrot_state |= PARROT_ATTACK + if (user.health < 50) + parrot_state |= PARROT_ATTACK //weakened mob? fight back! else parrot_state |= PARROT_FLEE icon_state = "parrot_fly" @@ -561,7 +557,7 @@ var/mob/living/L = parrot_interest if(melee_damage_upper == 0) melee_damage_upper = parrot_damage_upper - a_intent = INTENT_HARM + a_intent = "harm" //If the mob is close enough to interact with if(Adjacent(parrot_interest)) @@ -629,14 +625,12 @@ continue if(istype(AM, /obj/item)) var/obj/item/I = AM - if(I.w_class < WEIGHT_CLASS_SMALL) + if(I.w_class < 2) item = I else if(iscarbon(AM)) var/mob/living/carbon/C = AM - for(var/obj/item/I in C.held_items) - if(I.w_class <= WEIGHT_CLASS_SMALL) - item = I - break + if((C.l_hand && C.l_hand.w_class <= 2) || (C.r_hand && C.r_hand.w_class <= 2)) + item = C if(item) if(!AStar(src, get_turf(item), /turf/proc/Distance_cardinal)) item = null @@ -665,14 +659,13 @@ if(istype(AM, /obj/item)) var/obj/item/I = AM - if(I.w_class <= WEIGHT_CLASS_SMALL) + if(I.w_class <= 2) return I if(iscarbon(AM)) var/mob/living/carbon/C = AM - for(var/obj/item/I in C.held_items) - if(I.w_class <= WEIGHT_CLASS_SMALL) - return C + if(C.l_hand && C.l_hand.w_class <= 2 || C.r_hand && C.r_hand.w_class <= 2) + return C return null @@ -693,7 +686,7 @@ for(var/obj/item/I in view(1,src)) //Make sure we're not already holding it and it's small enough - if(I.loc != src && I.w_class <= WEIGHT_CLASS_SMALL) + if(I.loc != src && I.w_class <= 2) //If we have a perch and the item is sitting on it, continue if(!client && parrot_perch && I.loc == parrot_perch.loc) @@ -722,10 +715,11 @@ var/obj/item/stolen_item = null for(var/mob/living/carbon/C in view(1,src)) - for(var/obj/item/I in C.held_items) - if(I.w_class <= WEIGHT_CLASS_SMALL) - stolen_item = I - break + if(C.l_hand && C.l_hand.w_class <= 2) + stolen_item = C.l_hand + + if(C.r_hand && C.r_hand.w_class <= 2) + stolen_item = C.r_hand if(stolen_item) C.unEquip(stolen_item) @@ -856,10 +850,10 @@ if(melee_damage_upper) melee_damage_upper = 0 - a_intent = INTENT_HELP + a_intent = "help" else melee_damage_upper = parrot_damage_upper - a_intent = INTENT_HARM + a_intent = "harm" src << "You will now [a_intent] others..." return @@ -869,7 +863,7 @@ /mob/living/simple_animal/parrot/Poly name = "Poly" desc = "Poly the Parrot. An expert on quantum cracker theory." - speak = list("Poly wanna cracker!", ":e Check the singulo, you chucklefucks!",":e Wire the solars, you lazy bums!",":e WHO TOOK THE DAMN HARDSUITS?",":e OH GOD ITS FREE CALL THE SHUTTLE") + speak = list("Poly wanna cracker!", ":e Check the singlo, you chucklefucks!",":e Wire the solars, you lazy bums!",":e WHO TOOK THE DAMN HARDSUITS?",":e OH GOD ITS FREE CALL THE SHUTTLE") gold_core_spawnable = 0 speak_chance = 3 var/memory_saved = 0 @@ -885,11 +879,11 @@ speak += pick("...[longest_survival].", "The things I've seen!", "I have lived many lives!", "What are you before me?") desc += " Old as sin, and just as loud. Claimed to be [rounds_survived]." speak_chance = 20 //His hubris has made him more annoying/easier to justify killing - add_atom_colour("#EEEE22", FIXED_COLOUR_PRIORITY) + color = "#EEEE22" else if(rounds_survived == longest_deathstreak) speak += pick("What are you waiting for!", "Violence breeds violence!", "Blood! Blood!", "Strike me down if you dare!") desc += " The squawks of [-rounds_survived] dead parrots ring out in your ears..." - add_atom_colour("#BB7777", FIXED_COLOUR_PRIORITY) + color = "#BB7777" else if(rounds_survived > 0) speak += pick("...again?", "No, It was over!", "Let me out!", "It never ends!") desc += " Over [rounds_survived] shifts without a \"terrible\" \"accident\"!" @@ -908,7 +902,7 @@ /mob/living/simple_animal/parrot/Poly/death(gibbed) if(!memory_saved) var/go_ghost = 0 - if(rounds_survived == longest_survival || rounds_survived == longest_deathstreak || prob(0.666)) + if(rounds_survived == longest_survival || rounds_survived == longest_deathstreak) go_ghost = 1 rounds_survived = min(--rounds_survived,0) if(rounds_survived < longest_deathstreak) @@ -954,26 +948,7 @@ memory_saved = 1 //At this point nothing is saved ..() -/mob/living/simple_animal/parrot/Poly/ghost/handle_automated_speech() - if(ismob(loc)) - return - ..() - /mob/living/simple_animal/parrot/Poly/ghost/handle_automated_movement() if(isliving(parrot_interest)) - if(!ishuman(parrot_interest)) - parrot_interest = null - else if(parrot_state == (PARROT_SWOOP | PARROT_ATTACK) && Adjacent(parrot_interest)) - walk_to(src, parrot_interest, 0, parrot_speed) - Possess(parrot_interest) + parrot_interest = null ..() - -/mob/living/simple_animal/parrot/Poly/ghost/proc/Possess(mob/living/carbon/human/H) - if(!ishuman(H)) - return - var/datum/disease/parrot_possession/P = new - P.parrot = src - loc = H - H.ContractDisease(P) - parrot_interest = null - H.visible_message("[src] dive bombs into [H]'s chest and vanishes!", "[src] dive bombs into your chest, vanishing! This can't be good!") diff --git a/code/modules/mob/living/simple_animal/shade.dm b/code/modules/mob/living/simple_animal/shade.dm index 8c62ccffff..b595d9dae3 100644 --- a/code/modules/mob/living/simple_animal/shade.dm +++ b/code/modules/mob/living/simple_animal/shade.dm @@ -2,7 +2,6 @@ name = "Shade" real_name = "Shade" desc = "A bound spirit" - gender = PLURAL icon = 'icons/mob/mob.dmi' icon_state = "shade" icon_living = "shade" @@ -26,13 +25,10 @@ status_flags = 0 faction = list("cult") status_flags = CANPUSH - movement_type = FLYING + flying = 1 loot = list(/obj/item/weapon/ectoplasm) del_on_death = 1 - -/mob/living/simple_animal/shade/death() - deathmessage = "lets out a contented sigh as [p_their()] form unwinds." - ..() + deathmessage = "lets out a contented sigh as their form unwinds." /mob/living/simple_animal/shade/canSuicide() if(istype(loc, /obj/item/device/soulstone)) //do not suicide inside the soulstone @@ -46,11 +42,11 @@ if(istype(M, /mob/living/simple_animal/hostile/construct/builder)) if(health < maxHealth) adjustHealth(-25) - Beam(M,icon_state="sendbeam",time=4) + Beam(M,icon_state="sendbeam",icon='icons/effects/effects.dmi',time=4) M.visible_message("[M] heals \the [src].", \ "You heal [src], leaving [src] at [health]/[maxHealth] health.") else - M << "You cannot heal [src], as [p_they()] [p_are()] unharmed!" + M << "You cannot heal [src], as it is unharmed!" else if(src != M) ..() diff --git a/code/modules/mob/living/simple_animal/simple_animal.dm b/code/modules/mob/living/simple_animal/simple_animal.dm index 17677a07b8..bce40f6b5a 100644 --- a/code/modules/mob/living/simple_animal/simple_animal.dm +++ b/code/modules/mob/living/simple_animal/simple_animal.dm @@ -3,7 +3,6 @@ icon = 'icons/mob/animal.dmi' health = 20 maxHealth = 20 - gender = PLURAL //placeholder status_flags = CANPUSH @@ -44,7 +43,6 @@ //LETTING SIMPLE ANIMALS ATTACK? WHAT COULD GO WRONG. Defaults to zero so Ian can still be cuddly var/melee_damage_lower = 0 var/melee_damage_upper = 0 - var/obj_damage = 0 //how much damage this simple animal does to objects, if any var/armour_penetration = 0 //How much armour they ignore, as a flat reduction from the targets armour value var/melee_damage_type = BRUTE //Damage type of a simple mob's melee attack, should it do damage. var/list/damage_coeff = list(BRUTE = 1, BURN = 1, TOX = 1, CLONE = 1, STAMINA = 0, OXY = 1) // 1 for full damage , 0 for none , -1 for 1:1 heal from that source @@ -57,11 +55,12 @@ //Hot simple_animal baby making vars var/list/childtype = null - var/next_scan_time = 0 + var/scan_ready = 1 var/animal_species //Sorry, no spider+corgi buttbabies. //simple_animal access var/obj/item/weapon/card/id/access_card = null //innate access uses an internal ID card + var/flying = 0 //whether it's flying or touching the ground. var/buffed = 0 //In the event that you want to have a buffing effect on the mob, but don't want it to stack with other effects, any outside force that applies a buff to a simple mob should at least set this to 1, so we have something to check against var/gold_core_spawnable = 0 //if 1 can be spawned by plasma with gold core, 2 are 'friendlies' spawned with blood @@ -79,15 +78,11 @@ var/attacked_sound = "punch" //Played when someone punches the creature var/dextrous = FALSE //If the creature has, and can use, hands - var/dextrous_hud_type = /datum/hud/dextrous - var/datum/personal_crafting/handcrafting /mob/living/simple_animal/New() ..() - handcrafting = new() - if(gender == PLURAL) - gender = pick(MALE,FEMALE) + verbs -= /mob/verb/observe if(!real_name) real_name = name if(!loc) @@ -99,22 +94,18 @@ client.screen += client.void ..() -/mob/living/simple_animal/Life() - if(..()) //alive - if(!ckey) - if(stat != DEAD) - handle_automated_movement() - if(stat != DEAD) - handle_automated_action() - if(stat != DEAD) - handle_automated_speech() - if(stat != DEAD) - return 1 - /mob/living/simple_animal/updatehealth() ..() health = Clamp(health, 0, maxHealth) +/mob/living/simple_animal/Life() + if(..()) //alive + if(!ckey) + handle_automated_movement() + handle_automated_action() + handle_automated_speech() + return 1 + /mob/living/simple_animal/update_stat() if(status_flags & GODMODE) return @@ -181,54 +172,15 @@ emote("me", 2, pick(emote_hear)) -/mob/living/simple_animal/proc/environment_is_safe(datum/gas_mixture/environment, check_temp = FALSE) - . = TRUE +/mob/living/simple_animal/handle_environment(datum/gas_mixture/environment) + var/atmos_suitable = 1 if(pulledby && pulledby.grab_state >= GRAB_KILL && atmos_requirements["min_oxy"]) - . = FALSE //getting choked + atmos_suitable = 0 //getting choked - if(isturf(src.loc) && isopenturf(src.loc)) - var/turf/open/ST = src.loc - if(ST.air) - var/ST_gases = ST.air.gases - ST.air.assert_gases(arglist(hardcoded_gases)) - - var/tox = ST_gases["plasma"][MOLES] - var/oxy = ST_gases["o2"][MOLES] - var/n2 = ST_gases["n2"][MOLES] - var/co2 = ST_gases["co2"][MOLES] - - ST.air.garbage_collect() - - if(atmos_requirements["min_oxy"] && oxy < atmos_requirements["min_oxy"]) - . = FALSE - else if(atmos_requirements["max_oxy"] && oxy > atmos_requirements["max_oxy"]) - . = FALSE - else if(atmos_requirements["min_tox"] && tox < atmos_requirements["min_tox"]) - . = FALSE - else if(atmos_requirements["max_tox"] && tox > atmos_requirements["max_tox"]) - . = FALSE - else if(atmos_requirements["min_n2"] && n2 < atmos_requirements["min_n2"]) - . = FALSE - else if(atmos_requirements["max_n2"] && n2 > atmos_requirements["max_n2"]) - . = FALSE - else if(atmos_requirements["min_co2"] && co2 < atmos_requirements["min_co2"]) - . = FALSE - else if(atmos_requirements["max_co2"] && co2 > atmos_requirements["max_co2"]) - . = FALSE - else - if(atmos_requirements["min_oxy"] || atmos_requirements["min_tox"] || atmos_requirements["min_n2"] || atmos_requirements["min_co2"]) - . = FALSE - - if(check_temp) - var/areatemp = get_temperature(environment) - if((areatemp < minbodytemp) || (areatemp > maxbodytemp)) - . = FALSE - - -/mob/living/simple_animal/handle_environment(datum/gas_mixture/environment) var/atom/A = src.loc if(isturf(A)) + var/turf/T = A var/areatemp = get_temperature(environment) if( abs(areatemp - bodytemperature) > 40 ) var/diff = areatemp - bodytemperature @@ -236,14 +188,50 @@ //world << "changed from [bodytemperature] by [diff] to [bodytemperature + diff]" bodytemperature += diff - if(!environment_is_safe(environment)) - adjustHealth(-unsuitable_atmos_damage) + if(istype(T,/turf/open)) + var/turf/open/ST = T + if(ST.air) + var/ST_gases = ST.air.gases + ST.air.assert_gases(arglist(hardcoded_gases)) + + var/tox = ST_gases["plasma"][MOLES] + var/oxy = ST_gases["o2"][MOLES] + var/n2 = ST_gases["n2"][MOLES] + var/co2 = ST_gases["co2"][MOLES] + + ST.air.garbage_collect() + + if(atmos_requirements["min_oxy"] && oxy < atmos_requirements["min_oxy"]) + atmos_suitable = 0 + else if(atmos_requirements["max_oxy"] && oxy > atmos_requirements["max_oxy"]) + atmos_suitable = 0 + else if(atmos_requirements["min_tox"] && tox < atmos_requirements["min_tox"]) + atmos_suitable = 0 + else if(atmos_requirements["max_tox"] && tox > atmos_requirements["max_tox"]) + atmos_suitable = 0 + else if(atmos_requirements["min_n2"] && n2 < atmos_requirements["min_n2"]) + atmos_suitable = 0 + else if(atmos_requirements["max_n2"] && n2 > atmos_requirements["max_n2"]) + atmos_suitable = 0 + else if(atmos_requirements["min_co2"] && co2 < atmos_requirements["min_co2"]) + atmos_suitable = 0 + else if(atmos_requirements["max_co2"] && co2 > atmos_requirements["max_co2"]) + atmos_suitable = 0 + + if(!atmos_suitable) + adjustBruteLoss(unsuitable_atmos_damage) + + else + if(atmos_requirements["min_oxy"] || atmos_requirements["min_tox"] || atmos_requirements["min_n2"] || atmos_requirements["min_co2"]) + adjustBruteLoss(unsuitable_atmos_damage) handle_temperature_damage() /mob/living/simple_animal/proc/handle_temperature_damage() - if((bodytemperature < minbodytemp) || (bodytemperature > maxbodytemp)) - adjustHealth(-unsuitable_atmos_damage) + if(bodytemperature < minbodytemp) + adjustBruteLoss(2) + else if(bodytemperature > maxbodytemp) + adjustBruteLoss(3) /mob/living/simple_animal/gib() if(butcher_results) @@ -256,9 +244,16 @@ if(icon_gib) new /obj/effect/overlay/temp/gib_animation/animal(loc, icon_gib) -/mob/living/simple_animal/say_quote(input, list/spans) - if(speak_emote && speak_emote.len) - verb_say = pick(speak_emote) +/mob/living/simple_animal/blob_act(obj/effect/blob/B) + adjustBruteLoss(20) + return + +/mob/living/simple_animal/say_quote(input) + var/ending = copytext(input, length(input)) + if(speak_emote && speak_emote.len && ending != "?" && ending != "!") + var/emote = pick(speak_emote) + if(emote) + return "[emote], \"[input]\"" return ..() /mob/living/simple_animal/emote(act, m_type=1, message = null) @@ -269,7 +264,121 @@ act = "me" ..(act, m_type, message) +/mob/living/simple_animal/attack_animal(mob/living/simple_animal/M) + if(..()) + var/damage = rand(M.melee_damage_lower, M.melee_damage_upper) + attack_threshold_check(damage,M.melee_damage_type) + return 1 +/mob/living/simple_animal/bullet_act(obj/item/projectile/Proj) + if(!Proj) + return + apply_damage(Proj.damage, Proj.damage_type) + Proj.on_hit(src) + return 0 + +/mob/living/simple_animal/proc/adjustHealth(amount) + if(status_flags & GODMODE) + return 0 + bruteloss = Clamp(bruteloss + amount, 0, maxHealth) + updatehealth() + return amount + +/mob/living/simple_animal/adjustBruteLoss(amount) + if(damage_coeff[BRUTE]) + . = adjustHealth(amount*damage_coeff[BRUTE]) + +/mob/living/simple_animal/adjustFireLoss(amount) + if(damage_coeff[BURN]) + . = adjustHealth(amount*damage_coeff[BURN]) + +/mob/living/simple_animal/adjustOxyLoss(amount) + if(damage_coeff[OXY]) + . = adjustHealth(amount*damage_coeff[OXY]) + +/mob/living/simple_animal/adjustToxLoss(amount) + if(damage_coeff[TOX]) + . = adjustHealth(amount*damage_coeff[TOX]) + +/mob/living/simple_animal/adjustCloneLoss(amount) + if(damage_coeff[CLONE]) + . = adjustHealth(amount*damage_coeff[CLONE]) + +/mob/living/simple_animal/adjustStaminaLoss(amount) + return + +/mob/living/simple_animal/attack_hand(mob/living/carbon/human/M) + ..() + switch(M.a_intent) + + if("help") + if (health > 0) + visible_message("[M] [response_help] [src].") + playsound(loc, 'sound/weapons/thudswoosh.ogg', 50, 1, -1) + + if("grab") + grabbedby(M) + + if("harm", "disarm") + M.do_attack_animation(src) + visible_message("[M] [response_harm] [src]!") + playsound(loc, attacked_sound, 25, 1, -1) + attack_threshold_check(harm_intent_damage) + add_logs(M, src, "attacked") + updatehealth() + return 1 + +/mob/living/simple_animal/attack_paw(mob/living/carbon/monkey/M) + if(..()) //successful monkey bite. + if(stat != DEAD) + var/damage = rand(1, 3) + attack_threshold_check(damage) + return 1 + if (M.a_intent == "help") + if (health > 0) + visible_message("[M.name] [response_help] [src].") + playsound(loc, 'sound/weapons/thudswoosh.ogg', 50, 1, -1) + + return + +/mob/living/simple_animal/attack_alien(mob/living/carbon/alien/humanoid/M) + if(..()) //if harm or disarm intent. + if(M.a_intent == "disarm") + playsound(loc, 'sound/weapons/pierce.ogg', 25, 1, -1) + visible_message("[M] [response_disarm] [name]!", \ + "[M] [response_disarm] [name]!") + add_logs(M, src, "disarmed") + else + var/damage = rand(15, 30) + visible_message("[M] has slashed at [src]!", \ + "[M] has slashed at [src]!") + playsound(loc, 'sound/weapons/slice.ogg', 25, 1, -1) + attack_threshold_check(damage) + add_logs(M, src, "attacked") + return 1 + +/mob/living/simple_animal/attack_larva(mob/living/carbon/alien/larva/L) + if(..()) //successful larva bite + var/damage = rand(5, 10) + if(stat != DEAD) + L.amount_grown = min(L.amount_grown + damage, L.max_grown) + attack_threshold_check(damage) + return 1 + +/mob/living/simple_animal/attack_slime(mob/living/simple_animal/slime/M) + if(..()) //successful slime attack + var/damage = rand(15, 25) + if(M.is_adult) + damage = rand(20, 35) + attack_threshold_check(damage) + return 1 + +/mob/living/simple_animal/proc/attack_threshold_check(damage, damagetype = BRUTE) + if(damage <= force_threshold || !damage_coeff[damagetype]) + visible_message("[src] looks unharmed.") + else + adjustBruteLoss(damage) + updatehealth() /mob/living/simple_animal/movement_delay() . = ..() @@ -292,7 +401,8 @@ for(var/i in loot) new i(loc) if(dextrous) - drop_all_held_items() + unEquip(r_hand) + unEquip(l_hand) if(!gibbed) if(death_sound) playsound(get_turf(src),death_sound, 200, 1) @@ -302,12 +412,7 @@ visible_message("\The [src] stops moving...") if(del_on_death) ghostize() - stat = DEAD - //Prevent infinite loops if the mob Destroy() is overriden in such - //a manner as to cause a call to death() again - del_on_death = FALSE qdel(src) - return else health = 0 icon_state = icon_dead @@ -316,6 +421,19 @@ lying = 1 ..() +/mob/living/simple_animal/ex_act(severity, target) + ..() + switch (severity) + if (1) + gib() + return + + if (2) + adjustBruteLoss(60) + + if(3) + adjustBruteLoss(30) + /mob/living/simple_animal/proc/CanAttack(atom/the_target) if(see_invisible < the_target.invisibility) return 0 @@ -332,6 +450,9 @@ /mob/living/simple_animal/handle_fire() return +/mob/living/simple_animal/update_fire() + return + /mob/living/simple_animal/IgniteMob() return FALSE @@ -346,10 +467,16 @@ lying = 0 . = 1 +/mob/living/simple_animal/fully_heal(admin_revive = 0) + health = maxHealth + ..() + /mob/living/simple_animal/proc/make_babies() // <3 <3 <3 - if(gender != FEMALE || stat || next_scan_time > world.time || !childtype || !animal_species || ticker.current_state != GAME_STATE_PLAYING) - return - next_scan_time = world.time + 400 + if(gender != FEMALE || stat || !scan_ready || !childtype || !animal_species || ticker.current_state != GAME_STATE_PLAYING) + return 0 + scan_ready = 0 + spawn(400) + scan_ready = 1 var/alone = 1 var/mob/living/simple_animal/partner var/children = 0 @@ -364,41 +491,33 @@ else if(!istype(M, childtype) && M.gender == MALE) //Better safe than sorry ;_; partner = M - else if(isliving(M) && !faction_check(M)) //shyness check. we're not shy in front of things that share a faction with us. - return //we never mate when not alone, so just abort early - + else if(istype(M, /mob/living) && !faction_check(M)) //shyness check. we're not shy in front of things that share a faction with us. + alone = 0 + continue if(alone && partner && children < 3) var/childspawn = pickweight(childtype) - var/turf/target = get_turf(loc) - if(target) - return new childspawn(target) + new childspawn(loc) + return 1 + return 0 -/mob/living/simple_animal/canUseTopic(atom/movable/M, be_close = 0, no_dextery = 0) - if(incapacitated()) - return 0 - if(no_dextery || dextrous) - if(be_close && !in_range(M, src)) - return 0 - else +/mob/living/simple_animal/stripPanelUnequip(obj/item/what, mob/who, where, child_override) + if(!child_override) src << "You don't have the dexterity to do this!" - return 0 - return 1 - -/mob/living/simple_animal/stripPanelUnequip(obj/item/what, mob/who, where) - if(!canUseTopic(who, TRUE)) return else ..() -/mob/living/simple_animal/stripPanelEquip(obj/item/what, mob/who, where) - if(!canUseTopic(who, TRUE)) +/mob/living/simple_animal/stripPanelEquip(obj/item/what, mob/who, where, child_override) + if(!child_override) + src << "You don't have the dexterity to do this!" return else ..() /mob/living/simple_animal/update_canmove() if(paralysis || stunned || weakened || stat || resting) - drop_all_held_items() + drop_r_hand() + drop_l_hand() canmove = 0 else if(buckled) canmove = 0 @@ -453,71 +572,62 @@ /mob/living/simple_animal/get_idcard() return access_card -/mob/living/simple_animal/OpenCraftingMenu() - if(dextrous) - handcrafting.ui_interact(src) - -/mob/living/simple_animal/can_hold_items() - return dextrous - -/mob/living/simple_animal/IsAdvancedToolUser() - return dextrous +//Dextrous simple mobs can use hands! +/mob/living/simple_animal/create_mob_hud() + if(client && !hud_used && dextrous) + hud_used = new /datum/hud/dextrous(src, ui_style2icon(client.prefs.UI_style)) /mob/living/simple_animal/activate_hand(selhand) if(!dextrous) return ..() - if(!selhand) - selhand = (active_hand_index % held_items.len)+1 if(istext(selhand)) selhand = lowertext(selhand) if(selhand == "right" || selhand == "r") - selhand = 2 + selhand = 0 if(selhand == "left" || selhand == "l") selhand = 1 - if(selhand != active_hand_index) - swap_hand(selhand) + if(selhand != src.hand) + swap_hand() else mode() -/mob/living/simple_animal/swap_hand(hand_index) +/mob/living/simple_animal/swap_hand() if(!dextrous) return ..() - if(!hand_index) - hand_index = (active_hand_index % held_items.len)+1 - var/obj/item/held_item = get_active_held_item() + var/obj/item/held_item = get_active_hand() if(held_item) if(istype(held_item, /obj/item/weapon/twohanded)) var/obj/item/weapon/twohanded/T = held_item if(T.wielded == 1) usr << "Your other hand is too busy holding the [T.name]." return - var/oindex = active_hand_index - active_hand_index = hand_index - if(hud_used) + hand = !hand + if(hud_used && hud_used.inv_slots[slot_l_hand] && hud_used.inv_slots[slot_r_hand]) var/obj/screen/inventory/hand/H - H = hud_used.hand_slots["[hand_index]"] - if(H) - H.update_icon() - H = hud_used.hand_slots["[oindex]"] - if(H) - H.update_icon() + H = hud_used.inv_slots[slot_l_hand] + H.update_icon() + H = hud_used.inv_slots[slot_r_hand] + H.update_icon() + +/mob/living/simple_animal/UnarmedAttack(atom/A, proximity) + if(!dextrous) + return ..() + if(!ismob(A)) + A.attack_hand(src) + update_hand_icons() /mob/living/simple_animal/put_in_hands(obj/item/I) ..() - update_inv_hands() + update_hand_icons() -/mob/living/simple_animal/update_inv_hands() +/mob/living/simple_animal/proc/update_hand_icons() if(client && hud_used && hud_used.hud_version != HUD_STYLE_NOHUD) - var/obj/item/l_hand = get_item_for_held_index(1) - var/obj/item/r_hand = get_item_for_held_index(2) if(r_hand) r_hand.layer = ABOVE_HUD_LAYER - r_hand.plane = ABOVE_HUD_PLANE - r_hand.screen_loc = ui_hand_position(get_held_index_of_item(r_hand)) + r_hand.screen_loc = ui_rhand client.screen |= r_hand if(l_hand) l_hand.layer = ABOVE_HUD_LAYER - l_hand.plane = ABOVE_HUD_PLANE - l_hand.screen_loc = ui_hand_position(get_held_index_of_item(l_hand)) + l_hand.screen_loc = ui_lhand client.screen |= l_hand diff --git a/code/modules/mob/living/simple_animal/slime/life.dm b/code/modules/mob/living/simple_animal/slime/life.dm index 1aef1490ba..367fcbb6a3 100644 --- a/code/modules/mob/living/simple_animal/slime/life.dm +++ b/code/modules/mob/living/simple_animal/slime/life.dm @@ -63,7 +63,7 @@ break if(Target in view(1,src)) - if(issilicon(Target)) + if(istype(Target, /mob/living/silicon)) if(!Atkcool) Atkcool = 1 spawn(45) @@ -234,7 +234,7 @@ Feedstop(0, 0) return - add_nutrition((rand(7,15) * config.damage_multiplier)) + add_nutrition(rand(7,15)) //Heal yourself. adjustBruteLoss(-3) @@ -343,7 +343,7 @@ if(issilicon(L) && (rabid || attacked)) // They can't eat silicons, but they can glomp them in defence targets += L // Possible target found! - if(ishuman(L)) //Ignore slime(wo)men + if(istype(L, /mob/living/carbon/human)) //Ignore slime(wo)men var/mob/living/carbon/human/H = L if(src.type in H.dna.species.ignored_by) continue diff --git a/code/modules/mob/living/simple_animal/slime/powers.dm b/code/modules/mob/living/simple_animal/slime/powers.dm index 89fa968e24..1c723809aa 100644 --- a/code/modules/mob/living/simple_animal/slime/powers.dm +++ b/code/modules/mob/living/simple_animal/slime/powers.dm @@ -169,7 +169,7 @@ feedback_add_details("slime_babies_born","slimebirth_[replacetext(M.colour," ","_")]") var/mob/living/simple_animal/slime/new_slime = pick(babies) - new_slime.a_intent = INTENT_HARM + new_slime.a_intent = "harm" new_slime.languages_spoken = languages_spoken new_slime.languages_understood = languages_understood if(src.mind) diff --git a/code/modules/mob/living/simple_animal/slime/slime.dm b/code/modules/mob/living/simple_animal/slime/slime.dm index 62d0aa3b41..232d66b8f2 100644 --- a/code/modules/mob/living/simple_animal/slime/slime.dm +++ b/code/modules/mob/living/simple_animal/slime/slime.dm @@ -9,8 +9,7 @@ var/list/slime_colours = list("rainbow", "grey", "purple", "metal", "orange", icon = 'icons/mob/slimes.dmi' icon_state = "grey baby slime" pass_flags = PASSTABLE - ventcrawler = VENTCRAWLER_ALWAYS - gender = NEUTER + ventcrawler = 2 var/is_adult = 0 var/docile = 0 languages_spoken = SLIME | HUMAN @@ -259,16 +258,14 @@ var/list/slime_colours = list("rainbow", "grey", "purple", "metal", "orange", if(..()) //successful larva bite. attacked += 10 -/mob/living/simple_animal/slime/attack_hulk(mob/living/carbon/human/user, does_attack_animation = 0) - if(user.a_intent == INTENT_HARM) +/mob/living/simple_animal/slime/attack_hulk(mob/living/carbon/human/user) + if(user.a_intent == "harm") + adjustBruteLoss(15) discipline_slime(user) - return ..() - /mob/living/simple_animal/slime/attack_hand(mob/living/carbon/human/M) if(buckled) - M.do_attack_animation(src, ATTACK_EFFECT_DISARM) if(buckled == M) if(prob(60)) visible_message("[M] attempts to wrestle \the [name] off!") @@ -281,6 +278,7 @@ var/list/slime_colours = list("rainbow", "grey", "purple", "metal", "orange", discipline_slime(M) else + M.do_attack_animation(src) if(prob(30)) visible_message("[M] attempts to wrestle \the [name] off of [buckled]!") playsound(loc, 'sound/weapons/punchmiss.ogg', 25, 1, -1) @@ -292,9 +290,9 @@ var/list/slime_colours = list("rainbow", "grey", "purple", "metal", "orange", discipline_slime(M) else if(stat == DEAD && surgeries.len) - if(M.a_intent == INTENT_HELP) + if(M.a_intent == "help") for(var/datum/surgery/S in surgeries) - if(S.next_step(M)) + if(S.next_step(M, src)) return 1 if(..()) //successful attack attacked += 10 @@ -307,9 +305,9 @@ var/list/slime_colours = list("rainbow", "grey", "purple", "metal", "orange", /mob/living/simple_animal/slime/attackby(obj/item/W, mob/living/user, params) if(stat == DEAD && surgeries.len) - if(user.a_intent == INTENT_HELP) + if(user.a_intent == "help") for(var/datum/surgery/S in surgeries) - if(S.next_step(user)) + if(S.next_step(user, src)) return 1 if(istype(W,/obj/item/stack/sheet/mineral/plasma) && !stat) //Let's you feed slimes plasma. if (user in Friends) diff --git a/code/modules/mob/living/simple_animal/spawner.dm b/code/modules/mob/living/simple_animal/spawner.dm index def9423807..bd01da0b97 100644 --- a/code/modules/mob/living/simple_animal/spawner.dm +++ b/code/modules/mob/living/simple_animal/spawner.dm @@ -3,7 +3,6 @@ icon = 'icons/mob/animal.dmi' health = 100 maxHealth = 100 - gender = NEUTER var/list/spawned_mobs = list() var/max_mobs = 5 var/spawn_delay = 0 @@ -13,7 +12,7 @@ status_flags = 0 anchored = 1 AIStatus = AI_OFF - a_intent = INTENT_HARM + a_intent = "harm" stop_automated_movement = 1 wander = 0 atmos_requirements = list("min_oxy" = 0, "max_oxy" = 0, "min_tox" = 0, "max_tox" = 0, "min_co2" = 0, "max_co2" = 5, "min_n2" = 0, "max_n2" = 0) @@ -42,7 +41,6 @@ return 0 spawn_delay = world.time + spawn_time var/mob/living/simple_animal/L = new mob_type(src.loc) - L.admin_spawned = admin_spawned //If we were admin spawned, lets have our children count as that as well. spawned_mobs += L L.nest = src L.faction = src.faction diff --git a/code/modules/mob/living/status_procs.dm b/code/modules/mob/living/status_procs.dm index 0545bd03b0..44c96f7f21 100644 --- a/code/modules/mob/living/status_procs.dm +++ b/code/modules/mob/living/status_procs.dm @@ -14,61 +14,4 @@ if(damage >= 0) ear_damage = damage if(deaf >= 0) - ear_deaf = deaf - - -//////////////////////////////STUN //////////////////////////////////// - -/mob/living/proc/add_stun_absorption(key, duration, priority, message, self_message, examine_message) -//adds a stun absorption with a key, a duration in deciseconds, its priority, and the messages it makes when you're stunned/examined, if any - if(!islist(stun_absorption)) - stun_absorption = list() - if(stun_absorption[key]) - stun_absorption[key]["end_time"] = world.time + duration - stun_absorption[key]["priority"] = priority - stun_absorption[key]["stuns_absorbed"] = 0 - else - stun_absorption[key] = list("end_time" = world.time + duration, "priority" = priority, "stuns_absorbed" = 0, \ - "visible_message" = message, "self_message" = self_message, "examine_message" = examine_message) - -/mob/living/Stun(amount, updating = 1, ignore_canstun = 0) - if(!stat && islist(stun_absorption)) - var/priority_absorb_key - var/highest_priority - for(var/i in stun_absorption) - if(stun_absorption[i]["end_time"] > world.time && (!priority_absorb_key || stun_absorption[i]["priority"] > highest_priority)) - priority_absorb_key = stun_absorption[i] - highest_priority = stun_absorption[i]["priority"] - if(priority_absorb_key) - if(priority_absorb_key["visible_message"] || priority_absorb_key["self_message"]) - if(priority_absorb_key["visible_message"] && priority_absorb_key["self_message"]) - visible_message("[src][priority_absorb_key["visible_message"]]", "[priority_absorb_key["self_message"]]") - else if(priority_absorb_key["visible_message"]) - visible_message("[src][priority_absorb_key["visible_message"]]") - else if(priority_absorb_key["self_message"]) - src << "[priority_absorb_key["self_message"]]" - priority_absorb_key["stuns_absorbed"] += amount - return 0 - ..() - -///////////////////////////////// WEAKEN ///////////////////////////////////// - -/mob/living/Weaken(amount, updating = 1, ignore_canweaken = 0) - if(!stat && islist(stun_absorption)) - var/priority_absorb_key - var/highest_priority - for(var/i in stun_absorption) - if(stun_absorption[i]["end_time"] > world.time && (!priority_absorb_key || stun_absorption[i]["priority"] > highest_priority)) - priority_absorb_key = stun_absorption[i] - highest_priority = priority_absorb_key["priority"] - if(priority_absorb_key) - if(priority_absorb_key["visible_message"] || priority_absorb_key["self_message"]) - if(priority_absorb_key["visible_message"] && priority_absorb_key["self_message"]) - visible_message("[src][priority_absorb_key["visible_message"]]", "[priority_absorb_key["self_message"]]") - else if(priority_absorb_key["visible_message"]) - visible_message("[src][priority_absorb_key["visible_message"]]") - else if(priority_absorb_key["self_message"]) - src << "[priority_absorb_key["self_message"]]" - priority_absorb_key["stuns_absorbed"] += amount - return 0 - ..() \ No newline at end of file + ear_deaf = deaf \ No newline at end of file diff --git a/code/modules/mob/living/ventcrawling.dm b/code/modules/mob/living/ventcrawling.dm index 06e54ac94a..d7daf9e2da 100644 --- a/code/modules/mob/living/ventcrawling.dm +++ b/code/modules/mob/living/ventcrawling.dm @@ -53,17 +53,17 @@ var/list/ventcrawl_machinery = list(/obj/machinery/atmospherics/components/unary if(!client) return - if(iscarbon(src) && ventcrawler < 2)//It must have atleast been 1 to get this far - var/failed = 0 - var/list/items_list = get_equipped_items() - if(items_list.len) - failed = 1 - for(var/obj/item/I in held_items) - failed = 1 - break - if(failed) - src << "You can't crawl around in the ventilation ducts with items!" - return + if(iscarbon(src) && contents.len && ventcrawler < 2)//It must have atleast been 1 to get this far + for(var/obj/item/I in contents) + var/failed = 0 + if(istype(I, /obj/item/weapon/implant)) + continue + else + failed++ + + if(failed) + src << "You can't crawl around in the ventilation ducts with items!" + return visible_message("[src] scrambles into the ventilation ducts!","You climb into the ventilation ducts.") forceMove(vent_found) @@ -93,7 +93,7 @@ var/list/ventcrawl_machinery = list(/obj/machinery/atmospherics/components/unary var/obj/machinery/atmospherics/A = X //all elements in totalMembers are necessarily of this type. if(!A.pipe_vision_img) A.pipe_vision_img = image(A, A.loc, layer = ABOVE_HUD_LAYER, dir = A.dir) - A.pipe_vision_img.plane = ABOVE_HUD_PLANE + //20 for being above darkness pipes_shown += A.pipe_vision_img if(client) client.images += A.pipe_vision_img diff --git a/code/modules/mob/login.dm b/code/modules/mob/login.dm index 1108351e48..8eb668409b 100644 --- a/code/modules/mob/login.dm +++ b/code/modules/mob/login.dm @@ -60,14 +60,16 @@ sync_mind() - client.sethotkeys() //set mob specific hotkeys + if(client.prefs.hotkeys) + winset(src, null, "mainwindow.macro=[macro_hotkeys] mapwindow.map.focus=true input.background-color=#e0e0e0") + else + winset(src, null, "mainwindow.macro=[macro_default] input.focus=true input.background-color=#d3b5b5") if(viewing_alternate_appearances && viewing_alternate_appearances.len) for(var/aakey in viewing_alternate_appearances) - for(var/aa in viewing_alternate_appearances[aakey]) - var/datum/alternate_appearance/AA = aa + var/datum/alternate_appearance/AA = viewing_alternate_appearances[aakey] + if(AA) AA.display_to(list(src)) update_client_colour() - if(client) - client.click_intercept = null + client.click_intercept = null \ No newline at end of file diff --git a/code/modules/mob/logout.dm b/code/modules/mob/logout.dm index 680d259a4c..c6627a92e3 100644 --- a/code/modules/mob/logout.dm +++ b/code/modules/mob/logout.dm @@ -2,7 +2,6 @@ SStgui.on_logout(src) unset_machine() player_list -= src - current_watchlist -= ckey log_access("Logout: [key_name(src)]") if(admin_datums[src.ckey]) if (ticker && ticker.current_state == GAME_STATE_PLAYING) //Only report this stuff if we are currently playing. diff --git a/code/modules/mob/mob.dm b/code/modules/mob/mob.dm index 51a1a56f66..0683fced77 100644 --- a/code/modules/mob/mob.dm +++ b/code/modules/mob/mob.dm @@ -2,11 +2,6 @@ mob_list -= src dead_mob_list -= src living_mob_list -= src - all_clockwork_mobs -= src - if(observers && observers.len) - for(var/M in observers) - var/mob/dead/observe = M - observe.reset_perspective(null) qdel(hud_used) if(mind && mind.current == src) spellremove(src) @@ -16,8 +11,7 @@ qdel(cc) client_colours = null ghostize() - ..() - return QDEL_HINT_HARDDEL + return ..() var/next_mob_id = 0 /mob/New() @@ -28,13 +22,14 @@ var/next_mob_id = 0 else living_mob_list += src prepare_huds() + hook_vr("mob_new",list(src)) ..() /atom/proc/prepare_huds() hud_list = list() for(var/hud in hud_possible) var/image/I = image('icons/mob/hud.dmi', src, "") - I.appearance_flags = RESET_COLOR|RESET_TRANSFORM + I.appearance_flags = RESET_COLOR hud_list[hud] = I /mob/proc/Cell() @@ -84,43 +79,63 @@ var/next_mob_id = 0 else src << msg -// Show a message to all player mobs who sees this atom -// Show a message to the src mob (if the src is a mob) -// Use for atoms performing visible actions -// message is output to anyone who can see, e.g. "The [src] does something!" +// Show a message the src mob and to all player mobs who sees the src mob +// This would be for visible actions by the src mob +// message is the message output to anyone who can see e.g. "[src] does something!" // self_message (optional) is what the src mob sees e.g. "You do something!" // blind_message (optional) is what blind people will hear e.g. "You hear something!" -// vision_distance (optional) define how many tiles away the message can be seen. -// ignored_mob (optional) doesn't show any message to a given mob if TRUE. -/atom/proc/visible_message(message, self_message, blind_message, vision_distance, ignored_mob) +/mob/visible_message(message, self_message, blind_message) var/turf/T = get_turf(src) if(!T) return - var/range = 7 - if(vision_distance) - range = vision_distance - for(var/mob/M in get_hearers_in_view(range, src)) + for(var/mob/M in get_hearers_in_view(7, src)) if(!M.client) continue - if(M == ignored_mob) - continue var/msg = message if(M == src) //the src always see the main message or self message if(self_message) msg = self_message else - if(M.see_invisibleOOC Warning:" + src << "Your flavor text is likely out of date! Change" + +/mob/proc/print_flavor_text() + if(flavor_text && flavor_text != "") + var/msg = replacetext(flavor_text, "\n", " ") + if(lentext(msg) <= 40) + return "\blue [msg]" + else + return "\blue [copytext(msg, 1, 37)]... More..." /mob/verb/abandon_mob() set name = "Respawn" @@ -438,31 +498,36 @@ var/next_mob_id = 0 // M.Login() //wat return +/mob/verb/observe() + set name = "Observe" + set category = "OOC" + var/is_admin = 0 -/mob/proc/update_flavor_text() - set src in usr - if(usr != src) - usr << "No." - var/msg = input(usr,"Set the flavor text in your 'examine' verb. Can also be used for OOC notes about your character.","Flavor Text",html_decode(flavor_text)) as message|null + if(check_rights_for(client,R_ADMIN)) + is_admin = 1 + else if(stat != DEAD || istype(src, /mob/new_player)) + usr << "You must be observing to use this!" + return - if(msg != null) - msg = copytext(msg, 1, MAX_MESSAGE_LEN) - msg = html_encode(msg) + if(is_admin && stat == DEAD) + is_admin = 0 - flavor_text = msg + var/list/creatures = getpois() -/mob/proc/warn_flavor_changed() - if(flavor_text && flavor_text != "") // don't spam people that don't use it! - src << "

    OOC Warning:

    " - src << "Your flavor text is likely out of date! Change" + client.perspective = EYE_PERSPECTIVE -/mob/proc/print_flavor_text() - if(flavor_text && flavor_text != "") - var/msg = replacetext(flavor_text, "\n", " ") - if(lentext(msg) <= 40) - return "\blue [msg]" - else - return "\blue [copytext(msg, 1, 37)]... More..." + var/eye_name = null + + var/ok = "[is_admin ? "Admin Observe" : "Observe"]" + eye_name = input("Please, select a player!", ok, null, null) as null|anything in creatures + + if (!eye_name) + return + + var/mob/mob_eye = creatures[eye_name] + + if(client && mob_eye) + client.eye = mob_eye /mob/verb/cancel_camera() set name = "Cancel Camera View" @@ -490,13 +555,8 @@ var/next_mob_id = 0 if(usr.canUseTopic(src, BE_CLOSE, NO_DEXTERY)) if(href_list["item"]) var/slot = text2num(href_list["item"]) - var/hand_index = text2num(href_list["hand_index"]) - var/obj/item/what - if(hand_index) - what = get_item_for_held_index(hand_index) - slot = list(slot,hand_index) - else - what = get_item_by_slot(slot) + var/obj/item/what = get_item_by_slot(slot) + if(what) usr.stripPanelUnequip(what,src,slot) else @@ -526,7 +586,7 @@ var/next_mob_id = 0 return if(!Adjacent(usr)) return - if(isAI(M)) + if(istype(M, /mob/living/silicon/ai)) return show_inv(usr) @@ -551,11 +611,10 @@ var/next_mob_id = 0 if(statpanel("Status")) stat(null, "Map: [MAP_NAME]") - if(nextmap && istype(nextmap)) + if (nextmap && istype(nextmap)) stat(null, "Next Map: [nextmap.friendlyname]") stat(null, "Server Time: [time2text(world.realtime, "YYYY-MM-DD hh:mm")]") if(SSshuttle.emergency) - stat(null, "Current Shuttle: [SSshuttle.emergency.name]") var/ETA = SSshuttle.emergency.getModeStr() if(ETA) stat(null, "[ETA] [SSshuttle.emergency.getTimerStr()]") @@ -590,7 +649,7 @@ var/next_mob_id = 0 var/list/overrides = list() for(var/image/I in client.images) if(I.loc && I.loc.loc == listed_turf && I.override) - overrides += I.loc + overrides = I.loc for(var/atom/A in listed_turf) if(!A.mouse_opacity) continue @@ -652,7 +711,8 @@ var/next_mob_id = 0 var/has_arms = get_num_arms() var/ignore_legs = get_leg_ignore() if(ko || resting || stunned || chokehold) - drop_all_held_items() + drop_r_hand() + drop_l_hand() unset_machine() if(pulling) stop_pulling() @@ -676,16 +736,13 @@ var/next_mob_id = 0 layer = initial(layer) update_transform() update_action_buttons_icon() - if(isliving(src)) - var/mob/living/L = src - if(L.has_status_effect(/datum/status_effect/freon)) - canmove = 0 lying_prev = lying return canmove /mob/proc/fall(forced) - drop_all_held_items() + drop_l_hand() + drop_r_hand() /mob/verb/eastface() set hidden = 1 @@ -887,68 +944,34 @@ var/next_mob_id = 0 /mob/proc/update_health_hud() return -/mob/living/vv_edit_var(var_name, var_value) - switch(var_name) - if("stat") - if((stat == DEAD) && (var_value < DEAD))//Bringing the dead back to life - dead_mob_list -= src - living_mob_list += src - if((stat < DEAD) && (var_value == DEAD))//Kill he - living_mob_list -= src - dead_mob_list += src - . = ..() - switch(var_name) +/mob/living/on_varedit(modified_var) + switch(modified_var) if("weakened") - SetWeakened(var_value) + SetWeakened(weakened) if("stunned") - SetStunned(var_value) + SetStunned(stunned) if("paralysis") - SetParalysis(var_value) + SetParalysis(paralysis) if("sleeping") - SetSleeping(var_value) + SetSleeping(sleeping) if("eye_blind") - set_blindness(var_value) + set_blindness(eye_blind) if("eye_damage") - set_eye_damage(var_value) + set_eye_damage(eye_damage) if("eye_blurry") - set_blurriness(var_value) + set_blurriness(eye_blurry) if("ear_deaf") - setEarDamage(-1, var_value) + setEarDamage(-1, ear_deaf) if("ear_damage") - setEarDamage(var_value, -1) + setEarDamage(ear_damage, -1) if("maxHealth") updatehealth() if("resize") update_transform() - + ..() /mob/proc/is_literate() return 0 -/mob/proc/can_hold_items() - return FALSE - /mob/proc/get_idcard() return - -/mob/vv_get_dropdown() - . = ..() - . += "---" - .["Gib"] = "?_src_=vars;gib=\ref[src]" - .["Give Spell"] = "?_src_=vars;give_spell=\ref[src]" - .["Remove Spell"] = "?_src_=vars;remove_spell=\ref[src]" - .["Give Disease"] = "?_src_=vars;give_disease=\ref[src]" - .["Toggle Godmode"] = "?_src_=vars;godmode=\ref[src]" - .["Drop Everything"] = "?_src_=vars;drop_everything=\ref[src]" - .["Regenerate Icons"] = "?_src_=vars;regenerateicons=\ref[src]" - .["Make Space Ninja"] = "?_src_=vars;ninja=\ref[src]" - .["Show player panel"] = "?_src_=vars;mob_player_panel=\ref[src]" - .["Toggle Build Mode"] = "?_src_=vars;build_mode=\ref[src]" - .["Assume Direct Control"] = "?_src_=vars;direct_control=\ref[src]" - .["Offer Control to Ghosts"] = "?_src_=vars;offer_control=\ref[src]" - -/mob/vv_get_var(var_name) - switch(var_name) - if ("attack_log") - return debug_variable(var_name, attack_log, 0, src, FALSE) - . = ..() \ No newline at end of file diff --git a/code/modules/mob/mob_defines.dm b/code/modules/mob/mob_defines.dm index ac61f12ef2..b9398c9971 100644 --- a/code/modules/mob/mob_defines.dm +++ b/code/modules/mob/mob_defines.dm @@ -11,6 +11,7 @@ var/stat = 0 //Whether a mob is alive or dead. TODO: Move this to living - Nodrak + var/obj/screen/hands = null /*A bunch of this stuff really needs to go under their own defines instead of being globally attached to mob. A variable should only be globally attached to turfs/objects/whatever, when it is in fact needed as such. The current method unnecessarily clusters up the variable list, especially for humans (although rearranging won't really clean it up a lot but the difference will be noticable for other mobs). @@ -29,16 +30,16 @@ var/attack_log = list( ) var/obj/machinery/machine = null var/other_mobs = null + var/memory = "" var/disabilities = 0 //Carbon - var/movement_type = GROUND //Incase you have multiple types, you automatically use the most useful one. IE: Skating on ice, flippers on water, flying over chasm/space, etc. var/atom/movable/pulling = null var/grab_state = 0 var/flavor_text = "" - var/next_move = null var/notransform = null //Carbon + var/hand = null var/eye_blind = 0 //Carbon var/eye_blurry = 0 //Carbon var/ear_deaf = 0 //Carbon @@ -62,6 +63,7 @@ var/timeofdeath = 0//Living var/cpr_time = 1//Carbon + var/bodytemperature = 310.055 //98.7 F var/drowsyness = 0//Carbon var/dizziness = 0//Carbon @@ -74,16 +76,12 @@ var/stunned = 0 var/weakened = 0 var/losebreath = 0//Carbon - var/a_intent = INTENT_HELP//Living - var/m_intent = MOVE_INTENT_RUN//Living + var/a_intent = "help"//Living + var/m_intent = "run"//Living var/lastKnownIP = null var/atom/movable/buckled = null//Living - - //Hands - var/active_hand_index = 1 - var/list/held_items = list(null, null) //len = number of hands, eg: 2 nulls is 2 empty hands, 1 item and 1 null is 1 full hand and 1 empty hand. - //held_items[active_hand_index] is the actively held item, but please use get_active_held_item() instead, because OOP - + var/obj/item/l_hand = null//Living + var/obj/item/r_hand = null//Living var/obj/item/weapon/storage/s_active = null//Carbon var/see_override = 0 //0 for no override, sets see_invisible = see_override in mob life process @@ -144,6 +142,4 @@ var/list/permanent_huds = list() - var/resize = 1 //Badminnery resize - - var/list/observers = null //The list of people observing this mob. + var/resize = 1 //Badminnery resize \ No newline at end of file diff --git a/code/modules/mob/mob_helpers.dm b/code/modules/mob/mob_helpers.dm index 0c82631038..08aed2a874 100644 --- a/code/modules/mob/mob_helpers.dm +++ b/code/modules/mob/mob_helpers.dm @@ -1,14 +1,12 @@ // see _DEFINES/is_helpers.dm for mob type checks -/mob/proc/isloyal() //Checks to see if the person contains a mindshield implant, then checks that the implant is actually inside of them +/proc/isloyal(A) //Checks to see if the person contains a mindshield implant, then checks that the implant is actually inside of them + for(var/obj/item/weapon/implant/mindshield/L in A) + if(L && L.implanted) + return 1 return 0 -/mob/living/carbon/isloyal() - for(var/obj/item/weapon/implant/mindshield/L in implants) - return 1 - - /proc/check_zone(zone) if(!zone) return "chest" @@ -275,11 +273,33 @@ It's fairly easy to fix if dealing with single letters but not so much with comp return 0 /mob/proc/abiotic(full_body = 0) - for(var/obj/item/I in held_items) - if(!(I.flags & NODROP)) - return 1 + if(l_hand && !l_hand.flags&ABSTRACT || r_hand && !r_hand.flags&ABSTRACT) + return 1 return 0 +//converts intent-strings into numbers and back +/proc/intent_numeric(argument) + if(istext(argument)) + switch(argument) + if("help") + return 0 + if("disarm") + return 1 + if("grab") + return 2 + else + return 3 + else + switch(argument) + if(0) + return "help" + if(1) + return "disarm" + if(2) + return "grab" + else + return "harm" + //change a mob's act-intent. Input the intent as a string such as "help" or use "right"/"left /mob/verb/a_intent_change(input as text) set name = "a-intent" @@ -287,44 +307,24 @@ It's fairly easy to fix if dealing with single letters but not so much with comp if(ishuman(src) || isalienadult(src) || isbrain(src)) switch(input) - if(INTENT_HELP, INTENT_DISARM, INTENT_GRAB, INTENT_HARM) + if("help", "disarm", "grab", "harm") a_intent = input - if(INTENT_HOTKEY_RIGHT) - switch (a_intent) - if(INTENT_HELP) - a_intent = INTENT_DISARM - if(INTENT_DISARM) - a_intent = INTENT_GRAB - if(INTENT_GRAB) - a_intent = INTENT_HARM - if(INTENT_HARM) - a_intent = INTENT_HELP - if(INTENT_HOTKEY_LEFT) - switch (a_intent) - if(INTENT_HELP) - a_intent = INTENT_HARM - if(INTENT_DISARM) - a_intent = INTENT_HELP - if(INTENT_GRAB) - a_intent = INTENT_DISARM - if(INTENT_HARM) - a_intent = INTENT_GRAB + if("right") + a_intent = intent_numeric((intent_numeric(a_intent) + 1) % 4) + if("left") + a_intent = intent_numeric((intent_numeric(a_intent) + 3) % 4) if(hud_used && hud_used.action_intent) hud_used.action_intent.icon_state = "[a_intent]" - else if(iscyborg(src) || ismonkey(src) || islarva(src)) + else if(isrobot(src) || ismonkey(src) || islarva(src)) switch(input) - if(INTENT_HELP) - a_intent = INTENT_HELP - if(INTENT_HARM) - a_intent = INTENT_HARM - if(INTENT_HOTKEY_RIGHT, INTENT_HOTKEY_LEFT) - switch (a_intent) - if(INTENT_HELP) - a_intent = INTENT_HARM - if(INTENT_HARM) - a_intent = INTENT_HELP + if("help") + a_intent = "help" + if("harm") + a_intent = "harm" + if("right","left") + a_intent = intent_numeric(intent_numeric(a_intent) - 3) if(hud_used && hud_used.action_intent) hud_used.action_intent.icon_state = "[a_intent]" @@ -341,7 +341,7 @@ It's fairly easy to fix if dealing with single letters but not so much with comp if(!istype(M)) return 0 if(issilicon(M)) - if(iscyborg(M)) //For cyborgs, returns 1 if the cyborg has a law 0 and special_role. Returns 0 if the borg is merely slaved to an AI traitor. + if(isrobot(M)) //For cyborgs, returns 1 if the cyborg has a law 0 and special_role. Returns 0 if the borg is merely slaved to an AI traitor. var/mob/living/silicon/robot/R = M if(R.mind && R.mind.special_role) if(R.laws && R.laws.zeroth && R.syndicate) @@ -384,6 +384,10 @@ It's fairly easy to fix if dealing with single letters but not so much with comp return 1 return 0 +/proc/get_both_hands(mob/living/carbon/M) + var/list/hands = list(M.l_hand, M.r_hand) + return hands + /mob/proc/reagent_check(datum/reagent/R) // utilized in the species code return 1 @@ -403,28 +407,23 @@ It's fairly easy to fix if dealing with single letters but not so much with comp A.target = source if(!alert_overlay) var/old_layer = source.layer - var/old_plane = source.plane source.layer = FLOAT_LAYER - source.plane = FLOAT_PLANE A.add_overlay(source) source.layer = old_layer - source.plane = old_plane else alert_overlay.layer = FLOAT_LAYER - alert_overlay.plane = FLOAT_PLANE A.add_overlay(alert_overlay) /proc/item_heal_robotic(mob/living/carbon/human/H, mob/user, brute_heal, burn_heal) var/obj/item/bodypart/affecting = H.get_bodypart(check_zone(user.zone_selected)) - if(affecting && affecting.status == BODYPART_ROBOTIC) + if(affecting && affecting.status == ORGAN_ROBOTIC) var/dam //changes repair text based on how much brute/burn was supplied if(brute_heal > burn_heal) dam = 1 else dam = 0 if((brute_heal > 0 && affecting.brute_dam > 0) || (burn_heal > 0 && affecting.burn_dam > 0)) - if(affecting.heal_damage(brute_heal, burn_heal, 1, 0)) - H.update_damage_overlays() + affecting.heal_damage(brute_heal,burn_heal,1) user.visible_message("[user] has fixed some of the [dam ? "dents on" : "burnt wires in"] [H]'s [affecting].", "You fix some of the [dam ? "dents on" : "burnt wires in"] [H]'s [affecting].") return 1 //successful heal else @@ -454,7 +453,7 @@ It's fairly easy to fix if dealing with single letters but not so much with comp poll_message = "[poll_message] Job:[M.mind.assigned_role]." if(M.mind && M.mind.special_role) poll_message = "[poll_message] Status:[M.mind.special_role]." - var/list/mob/dead/observer/candidates = pollCandidatesForMob(poll_message, "pAI", null, FALSE, 100, M) + var/list/mob/dead/observer/candidates = pollCandidates(poll_message, "pAI", null, FALSE, 100) var/mob/dead/observer/theghost = null if(candidates.len) @@ -468,20 +467,3 @@ It's fairly easy to fix if dealing with single letters but not so much with comp M << "There were no ghosts willing to take control." message_admins("No ghosts were willing to take control of [key_name_admin(M)])") return FALSE - -//toggles the talk wheel -/mob/verb/toggle_talk_wheel() - set name = "talk-wheel" - set hidden = 1 - - if(isliving(src)) - var/mob/living/L = src - if(L.hud_used) - for(var/obj/screen/wheel/talk/TW in L.hud_used.wheels) - TW.Click() - -/mob/proc/is_flying(mob/M = src) - if(M.movement_type & FLYING) - return 1 - else - return 0 diff --git a/code/modules/mob/mob_movement.dm b/code/modules/mob/mob_movement.dm index 76f768494d..d396b59715 100644 --- a/code/modules/mob/mob_movement.dm +++ b/code/modules/mob/mob_movement.dm @@ -13,27 +13,6 @@ return (!mover.density || !density || lying) -//The byond version of these verbs wait for the next tick before acting. -// instant verbs however can run mid tick or even during the time between ticks. -/client/verb/moveup() - set name = ".moveup" - set instant = 1 - Move(get_step(mob, NORTH), NORTH) - -/client/verb/movedown() - set name = ".movedown" - set instant = 1 - Move(get_step(mob, SOUTH), SOUTH) - -/client/verb/moveright() - set name = ".moveright" - set instant = 1 - Move(get_step(mob, EAST), EAST) - -/client/verb/moveleft() - set name = ".moveleft" - set instant = 1 - Move(get_step(mob, WEST), WEST) /client/Northeast() swap_hand() @@ -55,7 +34,7 @@ /client/Northwest() - if(!usr.get_active_held_item()) + if(!usr.get_active_hand()) usr << "You have nothing to drop in your hand!" return usr.drop_item() @@ -85,7 +64,7 @@ /client/verb/drop_item() set hidden = 1 - if(!iscyborg(mob)) + if(!isrobot(mob)) mob.drop_item_v() return @@ -111,15 +90,14 @@ /client/Move(n, direct) - if(world.time < move_delay) - return 0 - move_delay = world.time+world.tick_lag //this is here because Move() can now be called mutiple times per tick if(!mob || !mob.loc) return 0 if(mob.notransform) return 0 //This is sota the goto stop mobs from moving var if(mob.control_object) return Move_object(direct) + if(world.time < move_delay) + return 0 if(!isliving(mob)) return mob.Move(n,direct) if(mob.stat == DEAD) @@ -129,8 +107,6 @@ return 0 if(isliving(mob)) var/mob/living/L = mob - if(L.slipping) - return 0 if(L.incorporeal_move) //Move though walls Process_Incorpmove(direct) return 0 @@ -177,9 +153,6 @@ if(mob && .) mob.throwing = 0 - for(var/obj/O in mob) - O.on_mob_move(direct, src) - return . @@ -241,19 +214,21 @@ L.loc = locate(locx,locy,mobloc.z) var/limit = 2//For only two trailing shadows. for(var/turf/T in getline(mobloc, L.loc)) - PoolOrNew(/obj/effect/overlay/temp/dir_setting/ninja/shadow, list(T, L.dir)) + spawn(0) + anim(T,L,'icons/mob/mob.dmi',,"shadow",,L.dir) limit-- if(limit<=0) break else - PoolOrNew(/obj/effect/overlay/temp/dir_setting/ninja/shadow, list(mobloc, L.dir)) + spawn(0) + anim(mobloc,mob,'icons/mob/mob.dmi',,"shadow",,L.dir) L.loc = get_step(L, direct) L.setDir(direct) if(3) //Incorporeal move, but blocked by holy-watered tiles and salt piles. var/turf/open/floor/stepTurf = get_step(L, direct) for(var/obj/effect/decal/cleanable/salt/S in stepTurf) L << "[S] bars your passage!" - if(isrevenant(L)) + if(istype(L, /mob/living/simple_animal/revenant)) var/mob/living/simple_animal/revenant/R = L R.reveal(20) R.stun(20) @@ -282,12 +257,13 @@ return 0 /mob/get_spacemove_backup() + var/atom/movable/dense_object_backup for(var/A in orange(1, get_turf(src))) if(isarea(A)) continue else if(isturf(A)) var/turf/turf = A - if(isspaceturf(turf)) + if(istype(turf,/turf/open/space)) continue if(!turf.density && !mob_negates_gravity()) continue @@ -301,29 +277,26 @@ return AM if(pulling == AM) continue - . = AM + dense_object_backup = AM + break + . = dense_object_backup -/mob/proc/mob_has_gravity() - return has_gravity() +/mob/proc/mob_has_gravity(turf/T) + return has_gravity(src, T) /mob/proc/mob_negates_gravity() return 0 //moves the mob/object we're pulling /mob/proc/Move_Pulled(atom/A) - if(!pulling) + if (!pulling) return - if(pulling.anchored || !pulling.Adjacent(src)) + if (pulling.anchored || !pulling.Adjacent(src)) stop_pulling() return - if(isliving(pulling)) - var/mob/living/L = pulling - if(L.buckled && L.buckled.buckle_prevents_pull) //if they're buckled to something that disallows pulling, prevent it - stop_pulling() - return - if(A == loc && pulling.density) + if (A == loc && pulling.density) return - if(!Process_Spacemove(get_dir(pulling.loc, A))) + if (!Process_Spacemove(get_dir(pulling.loc, A))) return step(pulling, get_dir(pulling.loc, A)) @@ -333,101 +306,3 @@ /mob/proc/update_gravity() return - -//bodypart selection - Cyberboss -//8 toggles through head - eyes - mouth -//4: r-arm 5: chest 6: l-arm -//1: r-leg 2: groin 3: l-leg - -/client/proc/check_has_body_select() - return mob && mob.hud_used && mob.hud_used.zone_select && istype(mob.hud_used.zone_select, /obj/screen/zone_sel) - -/client/verb/body_toggle_head() - set name = "body-toggle-head" - set hidden = 1 - - if(!check_has_body_select()) - return - - var/next_in_line - switch(mob.zone_selected) - if("head") - next_in_line = "eyes" - if("eyes") - next_in_line = "mouth" - else - next_in_line = "head" - - var/obj/screen/zone_sel/selector = mob.hud_used.zone_select - selector.set_selected_zone(next_in_line, mob) - -/client/verb/body_r_arm() - set name = "body-r-arm" - set hidden = 1 - - if(!check_has_body_select()) - return - - var/obj/screen/zone_sel/selector = mob.hud_used.zone_select - selector.set_selected_zone("r_arm", mob) - -/client/verb/body_chest() - set name = "body-chest" - set hidden = 1 - - if(!check_has_body_select()) - return - - var/obj/screen/zone_sel/selector = mob.hud_used.zone_select - selector.set_selected_zone("chest", mob) - -/client/verb/body_l_arm() - set name = "body-l-arm" - set hidden = 1 - - if(!check_has_body_select()) - return - - var/obj/screen/zone_sel/selector = mob.hud_used.zone_select - selector.set_selected_zone("l_arm", mob) - -/client/verb/body_r_leg() - set name = "body-r-leg" - set hidden = 1 - - if(!check_has_body_select()) - return - - var/obj/screen/zone_sel/selector = mob.hud_used.zone_select - selector.set_selected_zone("r_leg", mob) - -/client/verb/body_groin() - set name = "body-groin" - set hidden = 1 - - if(!check_has_body_select()) - return - - var/obj/screen/zone_sel/selector = mob.hud_used.zone_select - selector.set_selected_zone("groin", mob) - -/client/verb/body_l_leg() - set name = "body-l-leg" - set hidden = 1 - - if(!check_has_body_select()) - return - - var/obj/screen/zone_sel/selector = mob.hud_used.zone_select - selector.set_selected_zone("l_leg", mob) - -/client/verb/toggle_walk_run() - set name = "toggle-walk-run" - set hidden = 1 - if(mob) - mob.toggle_move_intent() - -/mob/proc/toggle_move_intent() - if(hud_used && hud_used.static_inventory) - for(var/obj/screen/mov_intent/selector in hud_used.static_inventory) - selector.toggle(src) diff --git a/code/modules/mob/mob_transformation_simple.dm b/code/modules/mob/mob_transformation_simple.dm index e97fbaaf4a..0a86fa8df7 100644 --- a/code/modules/mob/mob_transformation_simple.dm +++ b/code/modules/mob/mob_transformation_simple.dm @@ -4,8 +4,8 @@ //Note that this proc does NOT do MMI related stuff! /mob/proc/change_mob_type(new_type = null, turf/location = null, new_name = null as text, delete_old_mob = 0 as num) - if(isnewplayer(src)) - usr << "Cannot convert players who have not entered yet." + if(istype(src,/mob/new_player)) + usr << "cannot convert players who have not entered yet." return if(!new_type) @@ -18,8 +18,8 @@ usr << "Invalid type path (new_type = [new_type]) in change_mob_type(). Contact a coder." return - if(ispath(new_type, /mob/new_player)) - usr << "Cannot convert into a new_player mob type." + if( new_type == /mob/new_player ) + usr << "cannot convert into a new_player mob type." return var/mob/M @@ -50,7 +50,7 @@ client.prefs.copy_to(H) H.dna.update_dna_identity() - if(mind && isliving(M)) + if(mind && istype(M, /mob/living)) mind.transfer_to(M, 1) // second argument to force key move to new mob else M.key = key diff --git a/code/modules/mob/new_player/new_player.dm b/code/modules/mob/new_player/new_player.dm index e70838c5f0..1fa1290973 100644 --- a/code/modules/mob/new_player/new_player.dm +++ b/code/modules/mob/new_player/new_player.dm @@ -1,4 +1,4 @@ - +//This file was auto-corrected by findeclaration.exe on 25.5.2012 20:42:33 /mob/new_player var/ready = 0 @@ -201,8 +201,6 @@ if(href_list["votepollid"] && href_list["votetype"]) var/pollid = text2num(href_list["votepollid"]) var/votetype = href_list["votetype"] - //lets take data from the user to decide what kind of poll this is, without validating it - //what could go wrong switch(votetype) if(POLLTYPE_OPTION) var/optionid = text2num(href_list["voteoptionid"]) @@ -221,7 +219,6 @@ var/id_max = text2num(href_list["maxid"]) if( (id_max - id_min) > 100 ) //Basic exploit prevention - //(protip, this stops no exploits) usr << "The option ID difference is too big. Please contact administration or the database admin." return @@ -260,14 +257,6 @@ usr << "Maximum replies reached." break usr << "Vote successful." - if(POLLTYPE_IRV) - if (!href_list["IRVdata"]) - src << "No ordering data found. Please try again or contact an administrator." - var/list/votelist = splittext(href_list["IRVdata"], ",") - if (!vote_on_irv_poll(pollid, votelist)) - src << "Vote failed, please try again or contact an administrator." - return - src << "Vote successful." /mob/new_player/proc/IsJobAvailable(rank) var/datum/job/job = SSjob.GetJob(rank) @@ -302,11 +291,8 @@ SSjob.AssignRole(src, rank, 1) - var/mob/living/character = create_character() //creates the human and transfers vars and mind - var/equip = SSjob.EquipRank(character, rank, 1) - if(iscyborg(equip)) //Borgs get borged in the equip, so we need to make sure we handle the new mob. - character = equip - + var/mob/living/carbon/human/character = create_character() //creates the human and transfers vars and mind + SSjob.EquipRank(character, rank, 1) //equips the human var/D = pick(latejoin) if(!D) @@ -322,30 +308,24 @@ continue character.loc = D - ticker.minds += character.mind - var/mob/living/carbon/human/humanc - if(ishuman(character)) - humanc = character //Let's retypecast the var to be human, - - if(humanc) //These procs all expect humans - data_core.manifest_inject(humanc) - AnnounceArrival(humanc, rank) - AddEmploymentContract(humanc) - if(highlander) - humanc << "THERE CAN BE ONLY ONE!!!" - humanc.make_scottish() + if(character.mind.assigned_role != "Cyborg") + data_core.manifest_inject(character) + ticker.minds += character.mind//Cyborgs and AIs handle this in the transform proc. //TODO!!!!! ~Carn + AnnounceArrival(character, rank) + AddEmploymentContract(character) + else + character.Robotize() joined_player_list += character.ckey - if(config.allow_latejoin_antagonists && humanc) //Borgs aren't allowed to be antags. Will need to be tweaked if we get true latejoin ais. - if(SSshuttle.emergency) - switch(SSshuttle.emergency.mode) - if(SHUTTLE_RECALL, SHUTTLE_IDLE) - ticker.mode.make_antag_chance(humanc) - if(SHUTTLE_CALL) - if(SSshuttle.emergency.timeLeft(1) > initial(SSshuttle.emergencyCallTime)*0.5) - ticker.mode.make_antag_chance(humanc) + if(config.allow_latejoin_antagonists) + switch(SSshuttle.emergency.mode) + if(SHUTTLE_RECALL, SHUTTLE_IDLE) + ticker.mode.make_antag_chance(character) + if(SHUTTLE_CALL) + if(SSshuttle.emergency.timeLeft(1) > initial(SSshuttle.emergencyCallTime)*0.5) + ticker.mode.make_antag_chance(character) qdel(src) /mob/new_player/proc/AnnounceArrival(var/mob/living/carbon/human/character, var/rank) @@ -381,13 +361,12 @@ var/dat = "
    Round Duration: [round(hours)]h [round(mins)]m
    " - if(SSshuttle.emergency) - switch(SSshuttle.emergency.mode) - if(SHUTTLE_ESCAPE) - dat += "
    The station has been evacuated.

    " - if(SHUTTLE_CALL) - if(!SSshuttle.canRecall()) - dat += "
    The station is currently undergoing evacuation procedures.

    " + switch(SSshuttle.emergency.mode) + if(SHUTTLE_ESCAPE) + dat += "
    The station has been evacuated.

    " + if(SHUTTLE_CALL) + if(!SSshuttle.canRecall()) + dat += "
    The station is currently undergoing evacuation procedures.

    " var/available_job_count = 0 for(var/datum/job/job in SSjob.occupations) @@ -429,7 +408,7 @@ var/mob/living/carbon/human/new_character = new(loc) - if(config.force_random_names || jobban_isbanned(src, "appearance")) + if(config.force_random_names || appearance_isbanned(src)) client.prefs.random_character() client.prefs.real_name = client.prefs.pref_species.random_name(gender,1) client.prefs.copy_to(new_character) diff --git a/code/modules/mob/new_player/poll.dm b/code/modules/mob/new_player/poll.dm index 5a39ccaca9..2e02ae07c6 100644 --- a/code/modules/mob/new_player/poll.dm +++ b/code/modules/mob/new_player/poll.dm @@ -24,7 +24,7 @@ /mob/new_player/proc/poll_player(pollid) if(!pollid) return - if(!establish_db_connection()) + if(!dbcon.IsConnected()) usr << "Failed to establish database connection." return var/DBQuery/select_query = dbcon.NewQuery("SELECT starttime, endtime, question, polltype, multiplechoiceoptions FROM [format_table_name("poll_question")] WHERE id = [pollid]") @@ -87,7 +87,6 @@ output += "

    " output += "" output += "" - src << browse(null ,"window=playerpolllist") src << browse(output,"window=playerpoll;size=500x250") if(POLLTYPE_TEXT) var/DBQuery/voted_query = dbcon.NewQuery("SELECT replytext FROM [format_table_name("poll_textreply")] WHERE pollid = [pollid] AND ckey = '[ckey]'") @@ -118,7 +117,6 @@ else vote_text = replacetext(vote_text, "\n", "
    ") output += "[vote_text]" - src << browse(null ,"window=playerpolllist") src << browse(output,"window=playerpoll;size=500x500") if(POLLTYPE_RATING) var/DBQuery/voted_query = dbcon.NewQuery("SELECT o.text, v.rating FROM [format_table_name("poll_option")] o, [format_table_name("poll_vote")] v WHERE o.pollid = [pollid] AND v.ckey = '[ckey]' AND o.id = v.optionid") @@ -174,7 +172,6 @@ output += "" output += "" output += "

    " - src << browse(null ,"window=playerpolllist") src << browse(output,"window=playerpoll;size=500x500") if(POLLTYPE_MULTI) var/DBQuery/voted_query = dbcon.NewQuery("SELECT optionid FROM [format_table_name("poll_vote")] WHERE pollid = [pollid] AND ckey = '[ckey]'") @@ -226,133 +223,14 @@ if(!votedfor.len) output += "

    " output += "" - src << browse(null ,"window=playerpolllist") src << browse(output,"window=playerpoll;size=500x250") - if(POLLTYPE_IRV) - var/datum/asset/irv_assets = get_asset_datum(/datum/asset/simple/IRV) - irv_assets.send(src) - - var/DBQuery/voted_query = dbcon.NewQuery("SELECT optionid FROM [format_table_name("poll_vote")] WHERE pollid = [pollid] AND ckey = '[ckey]'") - if(!voted_query.Execute()) - var/err = voted_query.ErrorMsg() - log_game("SQL ERROR obtaining optionid from poll_vote table. Error : \[[err]\]\n") - return - - var/list/votedfor = list() - while(voted_query.NextRow()) - votedfor.Add(text2num(voted_query.item[1])) - - var/list/datum/polloption/options = list() - - var/DBQuery/options_query = dbcon.NewQuery("SELECT id, text FROM [format_table_name("poll_option")] WHERE pollid = [pollid]") - if(!options_query.Execute()) - var/err = options_query.ErrorMsg() - log_game("SQL ERROR obtaining id, text from poll_option table. Error : \[[err]\]\n") - return - while(options_query.NextRow()) - var/datum/polloption/PO = new() - PO.optionid = text2num(options_query.item[1]) - PO.optiontext = options_query.item[2] - options["[PO.optionid]"] += PO - - //if they already voted, use their sort - if (votedfor.len) - var/list/datum/polloption/newoptions = list() - for (var/V in votedfor) - var/datum/polloption/PO = options["[V]"] - if(PO) - newoptions["[V]"] = PO - options -= "[V]" - //add any options that they didn't vote on (some how, some way) - options = shuffle(options) - for (var/V in options) - newoptions["[V]"] = options["[V]"] - options = newoptions - //otherwise, lets shuffle it. - else - var/list/datum/polloption/newoptions = list() - while (options.len) - var/list/local_options = options.Copy() - var/key - //the jist is we randomly remove all options from a copy of options until only one reminds, - // move that over to our new list - // and repeat until we've moved all of them - while (local_options.len) - key = local_options[rand(1, local_options.len)] - local_options -= key - var/value = options[key] - options -= key - newoptions[key] = value - options = newoptions - - var/output = {" - - - - - - - - - -

    Player poll
    - Question: [pollquestion]
    Please sort the options in the order of most preferred to least preferred
    - Revoting has been enabled on this poll, if you think you made a mistake, simply revote
    - Poll runs from [pollstarttime] until [pollendtime]

    -

    -
    - - - - -
    -
    Most Preferred
    -
      - "} - for(var/O in options) - var/datum/polloption/PO = options["[O]"] - if(PO.optionid && PO.optiontext) - output += "
    1. [PO.optiontext]
    2. \n" - output += {" -
    -
    Least Preferred

    -
    -

    - "} - src << browse(null ,"window=playerpolllist") - src << browse(output,"window=playerpoll;size=500x500") return -/mob/new_player/proc/poll_check_voted(pollid, text = FALSE) - var/table = "poll_vote" - if (text) - table = "poll_textreply" - if (!establish_db_connection()) +/mob/new_player/proc/poll_check_voted(pollid, table) + if(!dbcon.IsConnected()) usr << "Failed to establish database connection." return - var/DBQuery/query_hasvoted = dbcon.NewQuery("SELECT id FROM `[format_table_name(table)]` WHERE pollid = [pollid] AND ckey = '[ckey]'") + var/DBQuery/query_hasvoted = dbcon.NewQuery("SELECT id FROM [format_table_name(table)] WHERE pollid = [pollid] AND ckey = '[ckey]'") if(!query_hasvoted.Execute()) var/err = query_hasvoted.ErrorMsg() log_game("SQL ERROR obtaining id from [table] table. Error : \[[err]\]\n") @@ -365,134 +243,10 @@ . = client.holder.rank return . - -/mob/new_player/proc/vote_rig_check() - if (usr != src) - if (!usr || !src) - return 0 - //we gots ourselfs a dirty cheater on our hands! - log_game("[key_name(usr)] attempted to rig the vote by voting as [ckey]") - message_admins("[key_name_admin(usr)] attempted to rig the vote by voting as [ckey]") - usr << "You don't seem to be [ckey]." - src << "Something went horribly wrong processing your vote. Please contact an administrator, they should have gotten a message about this" - return 0 - return 1 - -/mob/new_player/proc/vote_valid_check(pollid, holder, type) - if (!establish_db_connection()) - src << "Failed to establish database connection." - return 0 - pollid = text2num(pollid) - if (!pollid || pollid < 0) - return 0 - //validate the poll is actually the right type of poll and its still active - var/DBQuery/select_query = dbcon.NewQuery({" - SELECT id - FROM [format_table_name("poll_question")] - WHERE - [(holder ? "" : "adminonly = false AND")] - id = [pollid] - AND - Now() BETWEEN starttime AND endtime - AND - polltype = '[type]' - "}) - if (!select_query.Execute()) - var/err = select_query.ErrorMsg() - log_game("SQL ERROR validating poll via poll_question table. Error : \[[err]\]\n") - return 0 - if (!select_query.NextRow()) - return 0 - return 1 - -/mob/new_player/proc/vote_on_irv_poll(pollid, list/votelist) - if (!establish_db_connection()) - src << "Failed to establish database connection." - return 0 - if (!vote_rig_check()) - return 0 - pollid = text2num(pollid) - if (!pollid || pollid < 0) - return 0 - if (!votelist || !istype(votelist) || !votelist.len) - return 0 - if (!client) - return 0 - //save these now so we can still process the vote if the client goes away while we process. - var/datum/admins/holder = client.holder - var/rank = "Player" - if (holder) - rank = holder.rank - var/ckey = client.ckey - var/address = client.address - - //validate the poll - if (!vote_valid_check(pollid, holder, POLLTYPE_IRV)) - return 0 - - //lets collect the options - var/DBQuery/options_query = dbcon.NewQuery("SELECT id FROM [format_table_name("poll_option")] WHERE pollid = [pollid]") - if (!options_query.Execute()) - var/err = options_query.ErrorMsg() - log_game("SQL ERROR obtaining id from poll_option table. Error : \[[err]\]\n") - return 0 - var/list/optionlist = list() - while (options_query.NextRow()) - optionlist += text2num(options_query.item[1]) - - //validate their votes are actually in the list of options and actually numbers - var/list/numberedvotelist = list() - for (var/vote in votelist) - vote = text2num(vote) - numberedvotelist += vote - if (!vote) //this is fine because voteid starts at 1, so it will never be 0 - src << "Error: Invalid (non-numeric) votes in the vote data." - return 0 - if (!(vote in optionlist)) - src << "Votes for choices that do not appear to be in the poll detected" - return 0 - if (!numberedvotelist.len) - src << "Invalid vote data" - return 0 - - //lets add the vote, first we generate a insert statement. - - var/sqlrowlist = "" - for (var/vote in numberedvotelist) - if (sqlrowlist != "") - sqlrowlist += ", " //a comma (,) at the start of the first row to insert will trigger a SQL error - sqlrowlist += "(Now(), [pollid], [vote], '[sanitizeSQL(ckey)]', '[sanitizeSQL(address)]', '[sanitizeSQL(rank)]')" - - //now lets delete their old votes (if any) - var/DBQuery/voted_query = dbcon.NewQuery("DELETE FROM [format_table_name("poll_vote")] WHERE pollid = [pollid] AND ckey = '[ckey]'") - if (!voted_query.Execute()) - var/err = voted_query.ErrorMsg() - log_game("SQL ERROR clearing out old votes. Error : \[[err]\]\n") - return 0 - - //now to add the new ones. - var/DBQuery/query_insert = dbcon.NewQuery("INSERT INTO [format_table_name("poll_vote")] (datetime, pollid, optionid, ckey, ip, adminrank) VALUES [sqlrowlist]") - if(!query_insert.Execute()) - var/err = query_insert.ErrorMsg() - log_game("SQL ERROR adding vote to table. Error : \[[err]\]\n") - src << "Error adding vote." - return 0 - src << browse(null,"window=playerpoll") - return 1 - - /mob/new_player/proc/vote_on_poll(pollid, optionid) - if(!establish_db_connection()) - src << "Failed to establish database connection." - return 0 - if (!vote_rig_check()) - return 0 if(!pollid || !optionid) return - //validate the poll - if (!vote_valid_check(pollid, client.holder, POLLTYPE_OPTION)) - return 0 - var/adminrank = poll_check_voted(pollid) + var/adminrank = poll_check_voted(pollid, "poll_vote") if(!adminrank) return var/DBQuery/query_insert = dbcon.NewQuery("INSERT INTO [format_table_name("poll_vote")] (datetime, pollid, optionid, ckey, ip, adminrank) VALUES (Now(), [pollid], [optionid], '[ckey]', '[client.address]', '[adminrank]')") @@ -504,20 +258,12 @@ return 1 /mob/new_player/proc/log_text_poll_reply(pollid, replytext) - if(!establish_db_connection()) - src << "Failed to establish database connection." - return 0 - if (!vote_rig_check()) - return 0 if(!pollid) return - //validate the poll - if (!vote_valid_check(pollid, client.holder, POLLTYPE_TEXT)) - return 0 if(!replytext) usr << "The text you entered was blank. Please correct the text and submit again." return - var/adminrank = poll_check_voted(pollid, TRUE) + var/adminrank = poll_check_voted(pollid, "poll_textreply") if(!adminrank) return replytext = sanitizeSQL(replytext) @@ -533,16 +279,11 @@ return 1 /mob/new_player/proc/vote_on_numval_poll(pollid, optionid, rating) - if(!establish_db_connection()) - src << "Failed to establish database connection." - return 0 - if (!vote_rig_check()) - return 0 if(!pollid || !optionid || !rating) return - //validate the poll - if (!vote_valid_check(pollid, client.holder, POLLTYPE_RATING)) - return 0 + if(!dbcon.IsConnected()) + usr << "Failed to establish database connection." + return var/DBQuery/query_hasvoted = dbcon.NewQuery("SELECT id FROM [format_table_name("poll_vote")] WHERE optionid = [optionid] AND ckey = '[ckey]'") if(!query_hasvoted.Execute()) var/err = query_hasvoted.ErrorMsg() @@ -563,16 +304,11 @@ return 1 /mob/new_player/proc/vote_on_multi_poll(pollid, optionid) - if(!establish_db_connection()) - src << "Failed to establish database connection." - return 0 - if (!vote_rig_check()) - return 0 if(!pollid || !optionid) return 1 - //validate the poll - if (!vote_valid_check(pollid, client.holder, POLLTYPE_MULTI)) - return 0 + if(!dbcon.IsConnected()) + usr << "Failed to establish database connection." + return 1 var/DBQuery/query_get_choicelen = dbcon.NewQuery("SELECT multiplechoiceoptions FROM [format_table_name("poll_question")] WHERE id = [pollid]") if(!query_get_choicelen.Execute()) var/err = query_get_choicelen.ErrorMsg() diff --git a/code/modules/mob/new_player/preferences_setup.dm b/code/modules/mob/new_player/preferences_setup.dm index 499bcb328f..261ec8a543 100644 --- a/code/modules/mob/new_player/preferences_setup.dm +++ b/code/modules/mob/new_player/preferences_setup.dm @@ -61,26 +61,21 @@ if(previewJob) mannequin.job = previewJob.title previewJob.equip(mannequin, TRUE) - CHECK_TICK + preview_icon = icon('icons/effects/effects.dmi', "nothing") preview_icon.Scale(48+32, 16+32) - CHECK_TICK + mannequin.setDir(NORTH) - var/icon/stamp = getFlatIcon(mannequin) - CHECK_TICK preview_icon.Blend(stamp, ICON_OVERLAY, 25, 17) - CHECK_TICK + mannequin.setDir(WEST) stamp = getFlatIcon(mannequin) - CHECK_TICK preview_icon.Blend(stamp, ICON_OVERLAY, 1, 9) - CHECK_TICK + mannequin.setDir(SOUTH) stamp = getFlatIcon(mannequin) - CHECK_TICK preview_icon.Blend(stamp, ICON_OVERLAY, 49, 1) - CHECK_TICK + preview_icon.Scale(preview_icon.Width() * 2, preview_icon.Height() * 2) // Scaling here to prevent blurring in the browser. - CHECK_TICK qdel(mannequin) diff --git a/code/modules/mob/new_player/sprite_accessories.dm b/code/modules/mob/new_player/sprite_accessories.dm index 974166bad1..db0f66893e 100644 --- a/code/modules/mob/new_player/sprite_accessories.dm +++ b/code/modules/mob/new_player/sprite_accessories.dm @@ -59,8 +59,10 @@ var/locked = 0 //Is this part locked from roundstart selection? Used for parts that apply effects var/dimension_x = 32 var/dimension_y = 32 - var/extra = 0 var/center = FALSE //Should we center the sprite? + var/extra = 0 //Used for extra overlays on top of the bodypart that may be colored seperately. Uses the secondary mutant color as default. See species.dm for the actual overlay code. + var/extra_icon = 'icons/mob/mam_bodyparts.dmi' + var/extra_color_src = MUTCOLORS2 //The color source for the extra overlay. ////////////////////// // Hair Definitions // @@ -68,6 +70,10 @@ /datum/sprite_accessory/hair icon = 'icons/mob/human_face.dmi' // default icon for all hairs +/datum/sprite_accessory/hair/bald //Moved to the top so we can all stop scrolling all the way down. + name = "Bald" + icon_state = null + /datum/sprite_accessory/hair/short name = "Short Hair" // try to capatilize the names please~ icon_state = "hair_a" // you do not need to define _s or _l sub-states, game automatically does this for you @@ -393,10 +399,6 @@ name = "Balding Hair" icon_state = "hair_e" -/datum/sprite_accessory/hair/bald - name = "Bald" - icon_state = null - /datum/sprite_accessory/hair/parted name = "Side Part" icon_state = "hair_part" @@ -465,10 +467,6 @@ name = "Bob Hair 2" icon_state = "hair_bob2" -/datum/sprite_accessory/hair/boddicker - name = "Boddicker" - icon_state = "hair_boddicker" - /datum/sprite_accessory/hair/long name = "Long Hair 1" icon_state = "hair_long" @@ -497,10 +495,6 @@ name = "Long Side Part" icon_state = "hair_longsidepart" -/datum/sprite_accessory/hair/sidecut - name = "Sidecut" - icon_state = "hair_sidecut" - ///////////////////////////// // Facial Hair Definitions // ///////////////////////////// @@ -585,11 +579,6 @@ name = "Fu Manchu" icon_state = "facial_fumanchu" -/datum/sprite_accessory/facial_hair/brokenman - name = "Broken Man" - icon_state = "facial_brokenman" - - /////////////////////////// // Underwear Definitions // /////////////////////////// @@ -1139,20 +1128,35 @@ /datum/sprite_accessory/body_markings icon = 'icons/mob/mutant_bodyparts.dmi' + color_src = MUTCOLORS2 /datum/sprite_accessory/body_markings/none name = "None" icon_state = "none" +/datum/sprite_accessory/body_markings/dstripe + name = "Dark Stripe" + icon_state = "dstripe" + +/datum/sprite_accessory/body_markings/lstripe + name = "Light Stripe" + icon_state = "lstripe" + /datum/sprite_accessory/body_markings/dtiger name = "Dark Tiger Body" icon_state = "dtiger" - gender_specific = 1 + +/datum/sprite_accessory/body_markings/dtigerhead + name = "Dark Tiger Body + Head" + icon_state = "dtigerhead" /datum/sprite_accessory/body_markings/ltiger name = "Light Tiger Body" icon_state = "ltiger" - gender_specific = 1 + +/datum/sprite_accessory/body_markings/ltigerhead + name = "Light Tiger Body + Head" + icon_state = "ltigerhead" /datum/sprite_accessory/body_markings/lbelly name = "Light Belly" @@ -1173,6 +1177,30 @@ name = "Smooth" icon_state = "smooth" +/datum/sprite_accessory/tails/lizard/light + name = "Light" + icon_state = "light" + +/datum/sprite_accessory/tails_animated/lizard/light + name = "Light" + icon_state = "light" + +/datum/sprite_accessory/tails/lizard/dstripe + name = "Dark Stripe" + icon_state = "dstripe" + +/datum/sprite_accessory/tails_animated/lizard/dstripe + name = "Dark Stripe" + icon_state = "dstripe" + +/datum/sprite_accessory/tails/lizard/lstripe + name = "Light Stripe" + icon_state = "lstripe" + +/datum/sprite_accessory/tails_animated/lizard/lstripe + name = "Light Stripe" + icon_state = "lstripe" + /datum/sprite_accessory/tails/lizard/dtiger name = "Dark Tiger" icon_state = "dtiger" @@ -1189,13 +1217,23 @@ name = "Light Tiger" icon_state = "ltiger" -/datum/sprite_accessory/tails/lizard/spikes - name = "Spikes" - icon_state = "spikes" +/datum/sprite_accessory/tails/lizard/club + name = "Club" + icon_state = "club" -/datum/sprite_accessory/tails_animated/lizard/spikes - name = "Spikes" - icon_state = "spikes" +/datum/sprite_accessory/tails_animated/lizard/club + name = "Club" + icon_state = "club" + +/datum/sprite_accessory/tails/lizard/aqua + name = "Aquatic" + icon_state = "aqua" + +/datum/sprite_accessory/tails_animated/lizard/aqua + name = "Aquatic" + icon_state = "aqua" + +/datum/sprite_accessory/tails/human /datum/sprite_accessory/tails/human/none name = "None" @@ -1208,12 +1246,10 @@ /datum/sprite_accessory/tails/human/cat name = "Cat" icon_state = "cat" - color_src = HAIR /datum/sprite_accessory/tails_animated/human/cat name = "Cat" icon_state = "cat" - color_src = HAIR /datum/sprite_accessory/snouts icon = 'icons/mob/mutant_bodyparts.dmi' @@ -1272,7 +1308,6 @@ name = "Cat" icon_state = "cat" hasinner = 1 - color_src = HAIR /datum/sprite_accessory/wings/none name = "None" @@ -1374,15 +1409,6 @@ name = "Aquatic" icon_state = "aqua" -/datum/sprite_accessory/legs //legs are a special case, they aren't actually sprite_accessories but are updated with them. - icon = null //These datums exist for selecting legs on preference, and little else - -/datum/sprite_accessory/legs/none - name = "Normal Legs" - -/datum/sprite_accessory/legs/digitigrade_lizard - name = "Digitigrade Legs" - //Human Ears/Tails /datum/sprite_accessory/ears/fox @@ -1473,7 +1499,6 @@ color_src = 0 icon = 'icons/mob/mam_bodyparts.dmi' - /datum/sprite_accessory/tails_animated/human/murid name = "Murid" icon_state = "murid" @@ -1570,13 +1595,13 @@ name = "Fox" icon_state = "fox" extra = 1 -// extra_color_src = MUTCOLORS2 + extra_color_src = MUTCOLORS2 /datum/sprite_accessory/mam_tails_animated/fox name = "Fox" icon_state = "fox" extra = 1 -// extra_color_src = MUTCOLORS2 + extra_color_src = MUTCOLORS2 //Fennec /datum/sprite_accessory/mam_ears/fennec @@ -1700,7 +1725,6 @@ /datum/sprite_accessory/xeno_head/none name = "None" - /datum/sprite_accessory/xeno_head/hunter name = "Hunter" icon_state = "hunter" @@ -1712,7 +1736,7 @@ /datum/sprite_accessory/xeno_head/sentinel name = "Sentinel" icon_state = "sentinel" -/* + //Slimecoon Parts /datum/sprite_accessory/slimecoon_ears icon = 'icons/mob/exotic_bodyparts.dmi' @@ -1725,4 +1749,4 @@ /datum/sprite_accessory/slimecoon_snout icon = 'icons/mob/exotic_bodyparts.dmi' name = "Hunter" - icon_state = "slimecoon" */ \ No newline at end of file + icon_state = "slimecoon" \ No newline at end of file diff --git a/code/modules/mob/say.dm b/code/modules/mob/say.dm index 008d1da494..bb6c86300e 100644 --- a/code/modules/mob/say.dm +++ b/code/modules/mob/say.dm @@ -35,18 +35,6 @@ usr << "Speech is currently admin-disabled." return - if(jobban_isbanned(src, "OOC")) - src << "You have been banned from deadchat." - return - - if (src.client) - if(src.client.prefs.muted & MUTE_DEADCHAT) - src << "You cannot talk in deadchat (muted)." - return - - if(src.client.handle_spam_prevention(message,MUTE_DEADCHAT)) - return - var/mob/dead/observer/O = src if(isobserver(src) && O.deadchat_name) name = "[O.deadchat_name]" diff --git a/code/modules/mob/status_procs.dm b/code/modules/mob/status_procs.dm index dfbe625053..21fae144f2 100644 --- a/code/modules/mob/status_procs.dm +++ b/code/modules/mob/status_procs.dm @@ -46,24 +46,24 @@ /////////////////////////////////// PARALYSIS //////////////////////////////////// -/mob/proc/Paralyse(amount, updating = 1, ignore_canparalyse = 0) - if(status_flags & CANPARALYSE || ignore_canparalyse) +/mob/proc/Paralyse(amount, updating = 1) + if(status_flags & CANPARALYSE) var/old_paralysis = paralysis paralysis = max(max(paralysis,amount),0) if((!old_paralysis && paralysis) || (old_paralysis && !paralysis)) if(updating) update_stat() -/mob/proc/SetParalysis(amount, updating = 1, ignore_canparalyse = 0) - if(status_flags & CANPARALYSE || ignore_canparalyse) +/mob/proc/SetParalysis(amount, updating = 1) + if(status_flags & CANPARALYSE) var/old_paralysis = paralysis paralysis = max(amount,0) if((!old_paralysis && paralysis) || (old_paralysis && !paralysis)) if(updating) update_stat() -/mob/proc/AdjustParalysis(amount, updating = 1, ignore_canparalyse = 0) - if(status_flags & CANPARALYSE || ignore_canparalyse) +/mob/proc/AdjustParalysis(amount, updating = 1) + if(status_flags & CANPARALYSE) var/old_paralysis = paralysis paralysis = max(paralysis + amount,0) if((!old_paralysis && paralysis) || (old_paralysis && !paralysis)) @@ -245,13 +245,7 @@ return -//////////////////////////////// HUSK DISABILITY ///////////////////////////: - -/mob/proc/cure_husk() - return - -/mob/proc/become_husk() - return + diff --git a/code/modules/mob/transform_procs.dm b/code/modules/mob/transform_procs.dm index f2988c6291..609ec0cb8b 100644 --- a/code/modules/mob/transform_procs.dm +++ b/code/modules/mob/transform_procs.dm @@ -4,34 +4,20 @@ //Handle items on mob //first implants & organs - var/list/stored_implants = list() + var/list/implants = list() var/list/int_organs = list() if (tr_flags & TR_KEEPIMPLANTS) - for(var/X in implants) - var/obj/item/weapon/implant/IMP = X - stored_implants += IMP - IMP.removed(src, 1, 1) + for(var/obj/item/weapon/implant/W in src) + implants += W if (tr_flags & TR_KEEPORGANS) - for(var/X in internal_organs) - var/obj/item/organ/I = X + for(var/obj/item/organ/I in internal_organs) int_organs += I I.Remove(src, 1) - var/list/missing_bodyparts_zones = get_missing_limbs() - - var/obj/item/cavity_object - - var/obj/item/bodypart/chest/CH = get_bodypart("chest") - if(CH.cavity_item) - cavity_object = CH.cavity_item - CH.cavity_item = null - if(tr_flags & TR_KEEPITEMS) - var/Itemlist = get_equipped_items() - Itemlist += held_items - for(var/obj/item/W in Itemlist) + for(var/obj/item/W in (src.contents-implants-int_organs)) unEquip(W) //Make mob invisible and spawn animation @@ -42,9 +28,14 @@ cut_overlays() invisibility = INVISIBILITY_MAXIMUM - PoolOrNew(/obj/effect/overlay/temp/monkeyify, get_turf(src)) + var/atom/movable/overlay/animation = new( loc ) + animation.icon_state = "blank" + animation.icon = 'icons/mob/mob.dmi' + animation.master = src + flick("h2monkey", animation) sleep(22) var/mob/living/carbon/monkey/O = new /mob/living/carbon/monkey( loc ) + qdel(animation) // hash the original name? if(tr_flags & TR_HASHNAME) @@ -65,7 +56,7 @@ if(hellbound) O.hellbound = hellbound O.loc = loc - O.a_intent = INTENT_HARM + O.a_intent = "harm" //keep viruses? if (tr_flags & TR_KEEPVIRUS) @@ -77,53 +68,31 @@ //keep damage? if (tr_flags & TR_KEEPDAMAGE) - O.setToxLoss(getToxLoss(), 0) - O.adjustBruteLoss(getBruteLoss(), 0) - O.setOxyLoss(getOxyLoss(), 0) - O.setCloneLoss(getCloneLoss(), 0) - O.adjustFireLoss(getFireLoss(), 0) - O.updatehealth() + O.setToxLoss(getToxLoss()) + O.adjustBruteLoss(getBruteLoss()) + O.setOxyLoss(getOxyLoss()) + O.adjustFireLoss(getFireLoss()) O.radiation = radiation //re-add implants to new mob if (tr_flags & TR_KEEPIMPLANTS) - for(var/Y in implants) - var/obj/item/weapon/implant/IMP = Y - IMP.implant(O, null, 1) + for(var/obj/item/weapon/implant/I in implants) + I.loc = O + I.implanted = O //re-add organs to new mob if(tr_flags & TR_KEEPORGANS) - for(var/X in O.internal_organs) - qdel(X) + for(var/obj/item/organ/I in O.internal_organs) + qdel(I) - for(var/X in int_organs) - var/obj/item/organ/I = X + for(var/obj/item/organ/I in int_organs) I.Insert(O, 1) - var/obj/item/bodypart/chest/torso = O.get_bodypart("chest") - if(cavity_object) - torso.cavity_item = cavity_object //cavity item is given to the new chest - cavity_object.loc = O - - for(var/missing_zone in missing_bodyparts_zones) - var/obj/item/bodypart/BP = O.get_bodypart(missing_zone) - BP.drop_limb(1) - if(!(tr_flags & TR_KEEPORGANS)) //we didn't already get rid of the organs of the newly spawned mob - for(var/X in O.internal_organs) - var/obj/item/organ/G = X - if(BP.body_zone == check_zone(G.zone)) - if(mind && mind.changeling && istype(G, /obj/item/organ/brain)) - continue //so headless changelings don't lose their brain when transforming - qdel(G) //we lose the organs in the missing limbs - qdel(BP) - //transfer mind and delete old mob if(mind) mind.transfer_to(O) if(O.mind.changeling) O.mind.changeling.purchasedpowers += new /obj/effect/proc_holder/changeling/humanform(null) - - if (tr_flags & TR_DEFAULTMSG) O << "You are now a monkey." @@ -144,35 +113,21 @@ //Handle items on mob //first implants & organs - var/list/stored_implants = list() + var/list/implants = list() var/list/int_organs = list() if (tr_flags & TR_KEEPIMPLANTS) - for(var/X in implants) - var/obj/item/weapon/implant/IMP = X - stored_implants += IMP - IMP.removed(src, 1, 1) + for(var/obj/item/weapon/implant/W in src) + implants += W if (tr_flags & TR_KEEPORGANS) - for(var/X in internal_organs) - var/obj/item/organ/I = X + for(var/obj/item/organ/I in internal_organs) int_organs += I I.Remove(src, 1) - var/list/missing_bodyparts_zones = get_missing_limbs() - - var/obj/item/cavity_object - - var/obj/item/bodypart/chest/CH = get_bodypart("chest") - if(CH.cavity_item) - cavity_object = CH.cavity_item - CH.cavity_item = null - //now the rest if (tr_flags & TR_KEEPITEMS) - var/Itemlist = get_equipped_items() - Itemlist += held_items - for(var/obj/item/W in Itemlist) + for(var/obj/item/W in (src.contents-implants-int_organs)) unEquip(W) if (client) client.screen -= W @@ -180,9 +135,6 @@ W.loc = loc W.dropped(src) W.layer = initial(W.layer) - W.plane = initial(W.plane) - - //Make mob invisible and spawn animation notransform = 1 @@ -191,11 +143,16 @@ icon = null cut_overlays() invisibility = INVISIBILITY_MAXIMUM - PoolOrNew(/obj/effect/overlay/temp/monkeyify/humanify, get_turf(src)) + var/atom/movable/overlay/animation = new( loc ) + animation.icon_state = "blank" + animation.icon = 'icons/mob/mob.dmi' + animation.master = src + flick("monkey2h", animation) sleep(22) var/mob/living/carbon/human/O = new( loc ) for(var/obj/item/C in O.loc) O.equip_to_appropriate_slot(C) + qdel(animation) dna.transfer_identity(O) O.updateappearance(mutcolor_update=1) @@ -231,53 +188,33 @@ //keep damage? if (tr_flags & TR_KEEPDAMAGE) - O.setToxLoss(getToxLoss(), 0) - O.adjustBruteLoss(getBruteLoss(), 0) - O.setOxyLoss(getOxyLoss(), 0) - O.setCloneLoss(getCloneLoss(), 0) - O.adjustFireLoss(getFireLoss(), 0) - O.updatehealth() + O.setToxLoss(getToxLoss()) + O.adjustBruteLoss(getBruteLoss()) + O.setOxyLoss(getOxyLoss()) + O.adjustFireLoss(getFireLoss()) O.radiation = radiation //re-add implants to new mob if (tr_flags & TR_KEEPIMPLANTS) - for(var/Y in implants) - var/obj/item/weapon/implant/IMP = Y - IMP.implant(O, null, 1) + for(var/obj/item/weapon/implant/I in implants) + I.loc = O + I.implanted = O + O.sec_hud_set_implants() if(tr_flags & TR_KEEPORGANS) - for(var/X in O.internal_organs) - qdel(X) + for(var/obj/item/organ/I in O.internal_organs) + qdel(I) - for(var/X in int_organs) - var/obj/item/organ/I = X + for(var/obj/item/organ/I in int_organs) I.Insert(O, 1) - - var/obj/item/bodypart/chest/torso = get_bodypart("chest") - if(cavity_object) - torso.cavity_item = cavity_object //cavity item is given to the new chest - cavity_object.loc = O - - for(var/missing_zone in missing_bodyparts_zones) - var/obj/item/bodypart/BP = O.get_bodypart(missing_zone) - BP.drop_limb(1) - if(!(tr_flags & TR_KEEPORGANS)) //we didn't already get rid of the organs of the newly spawned mob - for(var/X in O.internal_organs) - var/obj/item/organ/G = X - if(BP.body_zone == check_zone(G.zone)) - if(mind && mind.changeling && istype(G, /obj/item/organ/brain)) - continue //so headless changelings don't lose their brain when transforming - qdel(G) //we lose the organs in the missing limbs - qdel(BP) - if(mind) mind.transfer_to(O) if(O.mind.changeling) for(var/obj/effect/proc_holder/changeling/humanform/HF in O.mind.changeling.purchasedpowers) mind.changeling.purchasedpowers -= HF - O.a_intent = INTENT_HELP + O.a_intent = "help" if (tr_flags & TR_DEFAULTMSG) O << "You are now a human." @@ -446,7 +383,7 @@ if("Drone") new_xeno = new /mob/living/carbon/alien/humanoid/drone(loc) - new_xeno.a_intent = INTENT_HARM + new_xeno.a_intent = "harm" new_xeno.key = key new_xeno << "You are now an alien." @@ -478,15 +415,15 @@ new_slime = pick(babies) else new_slime = new /mob/living/simple_animal/slime(loc) - new_slime.a_intent = INTENT_HARM + new_slime.a_intent = "harm" new_slime.key = key new_slime << "You are now a slime. Skreee!" . = new_slime qdel(src) -/mob/proc/become_overmind(mode_made, starting_points = 60) - var/mob/camera/blob/B = new /mob/camera/blob(loc, 0, mode_made, starting_points) +/mob/proc/become_overmind(mode_made = 0) + var/mob/camera/blob/B = new /mob/camera/blob(loc, 0, mode_made) if(mind) mind.transfer_to(B) else @@ -495,6 +432,23 @@ qdel(src) +/mob/proc/become_god(var/side_colour) + var/mob/camera/god/G = new /mob/camera/god(loc) + G.side = side_colour + if(mind) + mind.transfer_to(G) + else + G.key = key + + G.job = "Deity" + G.rename_self("deity") + G.update_icons() + + . = G + qdel(src) + + + /mob/living/carbon/human/proc/corgize() if (notransform) return @@ -509,7 +463,7 @@ qdel(t) var/mob/living/simple_animal/pet/dog/corgi/new_corgi = new /mob/living/simple_animal/pet/dog/corgi (loc) - new_corgi.a_intent = INTENT_HARM + new_corgi.a_intent = "harm" new_corgi.key = key new_corgi << "You are now a Corgi. Yap Yap!" @@ -542,7 +496,7 @@ var/mob/new_mob = new mobpath(src.loc) new_mob.key = key - new_mob.a_intent = INTENT_HARM + new_mob.a_intent = "harm" new_mob << "You suddenly feel more... animalistic." @@ -561,7 +515,7 @@ var/mob/new_mob = new mobpath(src.loc) new_mob.key = key - new_mob.a_intent = INTENT_HARM + new_mob.a_intent = "harm" new_mob << "You feel more... animalistic" . = new_mob diff --git a/code/modules/mob/update_icons.dm b/code/modules/mob/update_icons.dm index 581584912d..734e38c39c 100644 --- a/code/modules/mob/update_icons.dm +++ b/code/modules/mob/update_icons.dm @@ -19,15 +19,15 @@ /mob/proc/update_inv_back() return -/mob/proc/update_inv_hands() +/mob/proc/update_inv_l_hand() + return + +/mob/proc/update_inv_r_hand() return /mob/proc/update_inv_wear_mask() return -/mob/proc/update_inv_neck() - return - /mob/proc/update_inv_wear_suit() return @@ -40,15 +40,9 @@ /mob/proc/update_inv_head() return -/mob/proc/update_body() - return - /mob/proc/update_hair() return -/mob/proc/update_fire() - return - /mob/proc/update_inv_gloves() return @@ -68,4 +62,4 @@ return /mob/proc/update_inv_ears() - return \ No newline at end of file + return diff --git a/code/modules/modular_computers/NTNet/NTNRC/conversation.dm b/code/modules/modular_computers/NTNet/NTNRC/conversation.dm deleted file mode 100644 index e46f77cf0a..0000000000 --- a/code/modules/modular_computers/NTNet/NTNRC/conversation.dm +++ /dev/null @@ -1,65 +0,0 @@ -var/global/static/ntnrc_uid = 0 - -/datum/ntnet_conversation - var/id = null - var/title = "Untitled Conversation" - var/datum/computer_file/program/chatclient/operator // "Administrator" of this channel. Creator starts as channel's operator, - var/list/messages = list() - var/list/clients = list() - var/password - -/datum/ntnet_conversation/New() - id = ntnrc_uid - ntnrc_uid++ - if(ntnet_global) - ntnet_global.chat_channels.Add(src) - ..() - -/datum/ntnet_conversation/proc/add_message(message, username) - message = "[worldtime2text()] [username]: [message]" - messages.Add(message) - trim_message_list() - -/datum/ntnet_conversation/proc/add_status_message(message) - messages.Add("[worldtime2text()] -!- [message]") - trim_message_list() - -/datum/ntnet_conversation/proc/trim_message_list() - if(messages.len <= 50) - return - messages = messages.Copy(messages.len-50 ,0) - -/datum/ntnet_conversation/proc/add_client(datum/computer_file/program/chatclient/C) - if(!istype(C)) - return - clients.Add(C) - add_status_message("[C.username] has joined the channel.") - // No operator, so we assume the channel was empty. Assign this user as operator. - if(!operator) - changeop(C) - -/datum/ntnet_conversation/proc/remove_client(datum/computer_file/program/chatclient/C) - if(!istype(C) || !(C in clients)) - return - clients.Remove(C) - add_status_message("[C.username] has left the channel.") - - // Channel operator left, pick new operator - if(C == operator) - operator = null - if(clients.len) - var/datum/computer_file/program/chatclient/newop = pick(clients) - changeop(newop) - - -/datum/ntnet_conversation/proc/changeop(datum/computer_file/program/chatclient/newop) - if(istype(newop)) - operator = newop - add_status_message("Channel operator status transferred to [newop.username].") - -/datum/ntnet_conversation/proc/change_title(newtitle, datum/computer_file/program/chatclient/client) - if(operator != client) - return 0 // Not Authorised - - add_status_message("[client.username] has changed channel title from [title] to [newtitle]") - title = newtitle \ No newline at end of file diff --git a/code/modules/modular_computers/NTNet/NTNet.dm b/code/modules/modular_computers/NTNet/NTNet.dm deleted file mode 100644 index 6816a402c7..0000000000 --- a/code/modules/modular_computers/NTNet/NTNet.dm +++ /dev/null @@ -1,145 +0,0 @@ -var/global/datum/ntnet/ntnet_global = new() - - -// This is the NTNet datum. There can be only one NTNet datum in game at once. Modular computers read data from this. -/datum/ntnet - var/list/relays = list() - var/list/logs = list() - var/list/available_station_software = list() - var/list/available_antag_software = list() - var/list/chat_channels = list() - var/list/fileservers = list() - // Amount of logs the system tries to keep in memory. Keep below 999 to prevent byond from acting weirdly. - // High values make displaying logs much laggier. - var/setting_maxlogcount = 100 - - // These only affect wireless. LAN (consoles) are unaffected since it would be possible to create scenario where someone turns off NTNet, and is unable to turn it back on since it refuses connections - var/setting_softwaredownload = 1 - var/setting_peertopeer = 1 - var/setting_communication = 1 - var/setting_systemcontrol = 1 - var/setting_disabled = 0 // Setting to 1 will disable all wireless, independently on relays status. - - var/intrusion_detection_enabled = 1 // Whether the IDS warning system is enabled - var/intrusion_detection_alarm = 0 // Set when there is an IDS warning due to malicious (antag) software. - - -// If new NTNet datum is spawned, it replaces the old one. -/datum/ntnet/New() - if(ntnet_global && (ntnet_global != src)) - ntnet_global = src // There can be only one. - for(var/obj/machinery/ntnet_relay/R in machines) - relays.Add(R) - R.NTNet = src - build_software_lists() - add_log("NTNet logging system activated.") - -// Simplified logging: Adds a log. log_string is mandatory parameter, source is optional. -/datum/ntnet/proc/add_log(log_string, obj/item/weapon/computer_hardware/network_card/source = null) - var/log_text = "[worldtime2text()] - " - if(source) - log_text += "[source.get_network_tag()] - " - else - log_text += "*SYSTEM* - " - log_text += log_string - logs.Add(log_text) - - - // We have too many logs, remove the oldest entries until we get into the limit - if(logs.len > setting_maxlogcount) - logs = logs.Copy(logs.len-setting_maxlogcount,0) - - -// Checks whether NTNet operates. If parameter is passed checks whether specific function is enabled. -/datum/ntnet/proc/check_function(specific_action = 0) - if(!relays || !relays.len) // No relays found. NTNet is down - return 0 - - var/operating = 0 - - // Check all relays. If we have at least one working relay, network is up. - for(var/M in relays) - var/obj/machinery/ntnet_relay/R = M - if(R.is_operational()) - operating = 1 - break - - if(setting_disabled) - return 0 - - switch(specific_action) - if(NTNET_SOFTWAREDOWNLOAD) - return (operating && setting_softwaredownload) - if(NTNET_PEERTOPEER) - return (operating && setting_peertopeer) - if(NTNET_COMMUNICATION) - return (operating && setting_communication) - if(NTNET_SYSTEMCONTROL) - return (operating && setting_systemcontrol) - return operating - -// Builds lists that contain downloadable software. -/datum/ntnet/proc/build_software_lists() - available_station_software = list() - available_antag_software = list() - for(var/F in typesof(/datum/computer_file/program)) - var/datum/computer_file/program/prog = new F - // Invalid type (shouldn't be possible but just in case), invalid filetype (not executable program) or invalid filename (unset program) - if(!prog || prog.filename == "UnknownProgram" || prog.filetype != "PRG") - continue - // Check whether the program should be available for station/antag download, if yes, add it to lists. - if(prog.available_on_ntnet) - available_station_software.Add(prog) - if(prog.available_on_syndinet) - available_antag_software.Add(prog) - -// Attempts to find a downloadable file according to filename var -/datum/ntnet/proc/find_ntnet_file_by_name(filename) - for(var/N in available_station_software) - var/datum/computer_file/program/P = N - if(filename == P.filename) - return P - for(var/N in available_antag_software) - var/datum/computer_file/program/P = N - if(filename == P.filename) - return P - -// Resets the IDS alarm -/datum/ntnet/proc/resetIDS() - intrusion_detection_alarm = 0 - -/datum/ntnet/proc/toggleIDS() - resetIDS() - intrusion_detection_enabled = !intrusion_detection_enabled - -// Removes all logs -/datum/ntnet/proc/purge_logs() - logs = list() - add_log("-!- LOGS DELETED BY SYSTEM OPERATOR -!-") - -// Updates maximal amount of stored logs. Use this instead of setting the number, it performs required checks. -/datum/ntnet/proc/update_max_log_count(lognumber) - if(!lognumber) - return 0 - // Trim the value if necessary - lognumber = max(MIN_NTNET_LOGS, min(lognumber, MAX_NTNET_LOGS)) - setting_maxlogcount = lognumber - add_log("Configuration Updated. Now keeping [setting_maxlogcount] logs in system memory.") - -/datum/ntnet/proc/toggle_function(function) - if(!function) - return - function = text2num(function) - switch(function) - if(NTNET_SOFTWAREDOWNLOAD) - setting_softwaredownload = !setting_softwaredownload - add_log("Configuration Updated. Wireless network firewall now [setting_softwaredownload ? "allows" : "disallows"] connection to software repositories.") - if(NTNET_PEERTOPEER) - setting_peertopeer = !setting_peertopeer - add_log("Configuration Updated. Wireless network firewall now [setting_peertopeer ? "allows" : "disallows"] peer to peer network traffic.") - if(NTNET_COMMUNICATION) - setting_communication = !setting_communication - add_log("Configuration Updated. Wireless network firewall now [setting_communication ? "allows" : "disallows"] instant messaging and similar communication services.") - if(NTNET_SYSTEMCONTROL) - setting_systemcontrol = !setting_systemcontrol - add_log("Configuration Updated. Wireless network firewall now [setting_systemcontrol ? "allows" : "disallows"] remote control of station's systems.") diff --git a/code/modules/modular_computers/NTNet/NTNet_relay.dm b/code/modules/modular_computers/NTNet/NTNet_relay.dm deleted file mode 100644 index e0b4be93d0..0000000000 --- a/code/modules/modular_computers/NTNet/NTNet_relay.dm +++ /dev/null @@ -1,129 +0,0 @@ -// Relays don't handle any actual communication. Global NTNet datum does that, relays only tell the datum if it should or shouldn't work. -/obj/machinery/ntnet_relay - name = "NTNet Quantum Relay" - desc = "A very complex router and transmitter capable of connecting electronic devices together. Looks fragile." - use_power = 2 - active_power_usage = 10000 //10kW, apropriate for machine that keeps massive cross-Zlevel wireless network operational. Used to be 20 but that actually drained the smes one round - idle_power_usage = 100 - icon = 'icons/obj/machines/telecomms.dmi' - icon_state = "bus" - anchored = 1 - density = 1 - var/datum/ntnet/NTNet = null // This is mostly for backwards reference and to allow varedit modifications from ingame. - var/enabled = 1 // Set to 0 if the relay was turned off - var/dos_failure = 0 // Set to 1 if the relay failed due to (D)DoS attack - var/list/dos_sources = list() // Backwards reference for qdel() stuff - - // Denial of Service attack variables - var/dos_overload = 0 // Amount of DoS "packets" in this relay's buffer - var/dos_capacity = 500 // Amount of DoS "packets" in buffer required to crash the relay - var/dos_dissipate = 1 // Amount of DoS "packets" dissipated over time. - - -// TODO: Implement more logic here. For now it's only a placeholder. -/obj/machinery/ntnet_relay/is_operational() - if(stat & (BROKEN | NOPOWER | EMPED)) - return 0 - if(dos_failure) - return 0 - if(!enabled) - return 0 - return 1 - -/obj/machinery/ntnet_relay/update_icon() - if(is_operational()) - icon_state = "bus" - else - icon_state = "bus_off" - -/obj/machinery/ntnet_relay/process() - if(is_operational()) - use_power = 2 - else - use_power = 1 - - update_icon() - - if(dos_overload) - dos_overload = max(0, dos_overload - dos_dissipate) - - // If DoS traffic exceeded capacity, crash. - if((dos_overload > dos_capacity) && !dos_failure) - dos_failure = 1 - update_icon() - ntnet_global.add_log("Quantum relay switched from normal operation mode to overload recovery mode.") - // If the DoS buffer reaches 0 again, restart. - if((dos_overload == 0) && dos_failure) - dos_failure = 0 - update_icon() - ntnet_global.add_log("Quantum relay switched from overload recovery mode to normal operation mode.") - ..() - -/obj/machinery/ntnet_relay/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = 0, datum/tgui/master_ui = null, datum/ui_state/state = default_state) - - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) - - if(!ui) - ui = new(user, src, ui_key, "ntnet_relay", "NTNet Quantum Relay", 500, 300, master_ui, state) - ui.open() - - -/obj/machinery/ntnet_relay/ui_data(mob/user) - var/list/data = list() - data["enabled"] = enabled - data["dos_capacity"] = dos_capacity - data["dos_overload"] = dos_overload - data["dos_crashed"] = dos_failure - return data - - -/obj/machinery/ntnet_relay/ui_act(action, params) - if(..()) - return - switch(action) - if("restart") - dos_overload = 0 - dos_failure = 0 - update_icon() - ntnet_global.add_log("Quantum relay manually restarted from overload recovery mode to normal operation mode.") - if("toggle") - enabled = !enabled - ntnet_global.add_log("Quantum relay manually [enabled ? "enabled" : "disabled"].") - update_icon() - - -/obj/machinery/ntnet_relay/attack_hand(mob/living/user) - ui_interact(user) - -/obj/machinery/ntnet_relay/New() - uid = gl_uid - gl_uid++ - component_parts = list() - var/obj/item/weapon/circuitboard/machine/B = new /obj/item/weapon/circuitboard/machine/ntnet_relay(null) - B.apply_default_parts(src) - - if(ntnet_global) - ntnet_global.relays.Add(src) - NTNet = ntnet_global - ntnet_global.add_log("New quantum relay activated. Current amount of linked relays: [NTNet.relays.len]") - ..() - -/obj/machinery/ntnet_relay/Destroy() - if(ntnet_global) - ntnet_global.relays.Remove(src) - ntnet_global.add_log("Quantum relay connection severed. Current amount of linked relays: [NTNet.relays.len]") - NTNet = null - - for(var/datum/computer_file/program/ntnet_dos/D in dos_sources) - D.target = null - D.error = "Connection to quantum relay severed" - - ..() - -/obj/item/weapon/circuitboard/machine/ntnet_relay - name = "circuit board (NTNet Relay)" - build_path = /obj/machinery/ntnet_relay - origin_tech = "programming=3;bluespace=3;magnets=2" - req_components = list( - /obj/item/stack/cable_coil = 2, - /obj/item/weapon/stock_parts/subspace/filter = 1) \ No newline at end of file diff --git a/code/modules/modular_computers/computers/item/computer.dm b/code/modules/modular_computers/computers/item/computer.dm deleted file mode 100644 index 2875b6bb02..0000000000 --- a/code/modules/modular_computers/computers/item/computer.dm +++ /dev/null @@ -1,446 +0,0 @@ -// This is the base type that does all the hardware stuff. -// Other types expand it - tablets use a direct subtypes, and -// consoles and laptops use "procssor" item that is held inside machinery piece -/obj/item/device/modular_computer - name = "modular microcomputer" - desc = "A small portable microcomputer." - - var/enabled = 0 // Whether the computer is turned on. - var/screen_on = 1 // Whether the computer is active/opened/it's screen is on. - var/datum/computer_file/program/active_program = null // A currently active program running on the computer. - var/hardware_flag = 0 // A flag that describes this device type - var/last_power_usage = 0 - var/last_battery_percent = 0 // Used for deciding if battery percentage has chandged - var/last_world_time = "00:00" - var/list/last_header_icons - var/emagged = 0 // Whether the computer is emagged. - - var/base_active_power_usage = 50 // Power usage when the computer is open (screen is active) and can be interacted with. Remember hardware can use power too. - var/base_idle_power_usage = 5 // Power usage when the computer is idle and screen is off (currently only applies to laptops) - - // Modular computers can run on various devices. Each DEVICE (Laptop, Console, Tablet,..) - // must have it's own DMI file. Icon states must be called exactly the same in all files, but may look differently - // If you create a program which is limited to Laptops and Consoles you don't have to add it's icon_state overlay for Tablets too, for example. - - icon = 'icons/obj/computer.dmi' - icon_state = "laptop-open" - var/icon_state_unpowered = null // Icon state when the computer is turned off. - var/icon_state_powered = null // Icon state when the computer is turned on. - var/icon_state_menu = "menu" // Icon state overlay when the computer is turned on, but no program is loaded that would override the screen. - var/max_hardware_size = 0 // Maximal hardware w_class. Tablets/PDAs have 1, laptops 2, consoles 4. - var/steel_sheet_cost = 5 // Amount of steel sheets refunded when disassembling an empty frame of this computer. - - obj_integrity = 100 - integrity_failure = 50 - max_integrity = 100 - armor = list(melee = 0, bullet = 20, laser = 20, energy = 100, bomb = 0, bio = 100, rad = 100, fire = 0, acid = 0) - - // Important hardware (must be installed for computer to work) - - // Optional hardware (improves functionality, but is not critical for computer to work) - - var/list/all_components // List of "connection ports" in this computer and the components with which they are plugged - - var/list/idle_threads // Idle programs on background. They still receive process calls but can't be interacted with. - var/obj/physical = null // Object that represents our computer. It's used for Adjacent() and UI visibility checks. - - - -/obj/item/device/modular_computer/New() - START_PROCESSING(SSobj, src) - update_icon() - if(!physical) - physical = src - ..() - - all_components = list() - idle_threads = list() - -/obj/item/device/modular_computer/Destroy() - kill_program(forced = TRUE) - STOP_PROCESSING(SSobj, src) - for(var/H in all_components) - var/obj/item/weapon/computer_hardware/CH = all_components[H] - if(CH.holder == src) - CH.on_remove(src) - CH.holder = null - qdel(CH) - physical = null - return ..() - - -/obj/item/device/modular_computer/proc/add_verb(var/path) - switch(path) - if(MC_CARD) - verbs += /obj/item/device/modular_computer/proc/eject_id - if(MC_SDD) - verbs += /obj/item/device/modular_computer/proc/eject_disk - if(MC_AI) - verbs += /obj/item/device/modular_computer/proc/eject_card - -/obj/item/device/modular_computer/proc/remove_verb(path) - switch(path) - if(MC_CARD) - verbs -= /obj/item/device/modular_computer/proc/eject_id - if(MC_SDD) - verbs -= /obj/item/device/modular_computer/proc/eject_disk - if(MC_AI) - verbs -= /obj/item/device/modular_computer/proc/eject_card - -// Eject ID card from computer, if it has ID slot with card inside. -/obj/item/device/modular_computer/proc/eject_id() - set name = "Eject ID" - set category = "Object" - set src in view(1) - - if(issilicon(usr)) - return - var/obj/item/weapon/computer_hardware/card_slot/card_slot = all_components[MC_CARD] - if(usr.canUseTopic(src)) - card_slot.try_eject(null, usr) - -// Eject ID card from computer, if it has ID slot with card inside. -/obj/item/device/modular_computer/proc/eject_card() - set name = "Eject Intellicard" - set category = "Object" - - if(issilicon(usr)) - return - var/obj/item/weapon/computer_hardware/ai_slot/ai_slot = all_components[MC_AI] - if(usr.canUseTopic(src)) - ai_slot.try_eject(null, usr,1) - - -// Eject ID card from computer, if it has ID slot with card inside. -/obj/item/device/modular_computer/proc/eject_disk() - set name = "Eject Data Disk" - set category = "Object" - - if(issilicon(usr)) - return - - if(usr.canUseTopic(src)) - var/obj/item/weapon/computer_hardware/hard_drive/portable/portable_drive = all_components[MC_SDD] - if(uninstall_component(portable_drive, usr)) - portable_drive.verb_pickup() - -/obj/item/device/modular_computer/AltClick(mob/user) - ..() - if(issilicon(user)) - return - - if(user.canUseTopic(src)) - var/obj/item/weapon/computer_hardware/card_slot/card_slot = all_components[MC_CARD] - var/obj/item/weapon/computer_hardware/ai_slot/ai_slot = all_components[MC_AI] - var/obj/item/weapon/computer_hardware/hard_drive/portable/portable_drive = all_components[MC_SDD] - if(portable_drive) - if(uninstall_component(portable_drive, user)) - portable_drive.verb_pickup() - else - if(card_slot && card_slot.try_eject(null, user)) - return - if(ai_slot) - ai_slot.try_eject(null, user) - - -// Gets IDs/access levels from card slot. Would be useful when/if PDAs would become modular PCs. -/obj/item/device/modular_computer/GetAccess() - var/obj/item/weapon/computer_hardware/card_slot/card_slot = all_components[MC_CARD] - if(card_slot) - return card_slot.GetAccess() - return ..() - -/obj/item/device/modular_computer/GetID() - var/obj/item/weapon/computer_hardware/card_slot/card_slot = all_components[MC_CARD] - if(card_slot) - return card_slot.GetID() - return ..() - -/obj/item/device/modular_computer/MouseDrop(obj/over_object, src_location, over_location) - var/mob/M = usr - if((!istype(over_object, /obj/screen)) && usr.canUseTopic(src)) - return attack_self(M) - return - -/obj/item/device/modular_computer/attack_ai(mob/user) - return attack_self(user) - -/obj/item/device/modular_computer/attack_ghost(mob/dead/observer/user) - if(enabled) - ui_interact(user) - else if(IsAdminGhost(user)) - var/response = alert(user, "This computer is turned off. Would you like to turn it on?", "Admin Override", "Yes", "No") - if(response == "Yes") - turn_on(user) - -/obj/item/device/modular_computer/emag_act(mob/user) - if(emagged) - user << "\The [src] was already emagged." - return 0 - else - emagged = 1 - user << "You emag \the [src]. It's screen briefly shows a \"OVERRIDE ACCEPTED: New software downloads available.\" message." - return 1 - -/obj/item/device/modular_computer/examine(mob/user) - ..() - if(obj_integrity <= integrity_failure) - user << "It is heavily damaged!" - else if(obj_integrity < max_integrity) - user << "It is damaged." - -/obj/item/device/modular_computer/update_icon() - cut_overlays() - if(!enabled) - icon_state = icon_state_unpowered - else - icon_state = icon_state_powered - if(active_program) - add_overlay(active_program.program_icon_state ? active_program.program_icon_state : icon_state_menu) - else - add_overlay(icon_state_menu) - - if(obj_integrity <= integrity_failure) - add_overlay("bsod") - add_overlay("broken") - - -// On-click handling. Turns on the computer if it's off and opens the GUI. -/obj/item/device/modular_computer/attack_self(mob/user) - if(enabled) - ui_interact(user) - else - turn_on(user) - -/obj/item/device/modular_computer/proc/turn_on(mob/user) - var/issynth = issilicon(user) // Robots and AIs get different activation messages. - if(obj_integrity <= integrity_failure) - if(issynth) - user << "You send an activation signal to \the [src], but it responds with an error code. It must be damaged." - else - user << "You press the power button, but the computer fails to boot up, displaying variety of errors before shutting down again." - return - - // If we have a recharger, enable it automatically. Lets computer without a battery work. - var/obj/item/weapon/computer_hardware/recharger/recharger = all_components[MC_CHARGE] - if(recharger) - recharger.enabled = 1 - - if(all_components[MC_CPU] && use_power()) // use_power() checks if the PC is powered - if(issynth) - user << "You send an activation signal to \the [src], turning it on." - else - user << "You press the power button and start up \the [src]." - enabled = 1 - update_icon() - ui_interact(user) - else // Unpowered - if(issynth) - user << "You send an activation signal to \the [src] but it does not respond." - else - user << "You press the power button but \the [src] does not respond." - -// Process currently calls handle_power(), may be expanded in future if more things are added. -/obj/item/device/modular_computer/process() - if(!enabled) // The computer is turned off - last_power_usage = 0 - return 0 - - if(obj_integrity <= integrity_failure) - shutdown_computer() - return 0 - - if(active_program && active_program.requires_ntnet && !get_ntnet_status(active_program.requires_ntnet_feature)) - active_program.event_networkfailure(0) // Active program requires NTNet to run but we've just lost connection. Crash. - - for(var/I in idle_threads) - var/datum/computer_file/program/P = I - if(P.requires_ntnet && !get_ntnet_status(P.requires_ntnet_feature)) - P.event_networkfailure(1) - - if(active_program) - if(active_program.program_state != PROGRAM_STATE_KILLED) - active_program.process_tick() - active_program.ntnet_status = get_ntnet_status() - else - active_program = null - - for(var/I in idle_threads) - var/datum/computer_file/program/P = I - if(P.program_state != PROGRAM_STATE_KILLED) - P.process_tick() - P.ntnet_status = get_ntnet_status() - else - idle_threads.Remove(P) - - handle_power() // Handles all computer power interaction - //check_update_ui_need() - -// Function used by NanoUI's to obtain data for header. All relevant entries begin with "PC_" -/obj/item/device/modular_computer/proc/get_header_data() - var/list/data = list() - - var/obj/item/weapon/computer_hardware/battery/battery_module = all_components[MC_CELL] - var/obj/item/weapon/computer_hardware/recharger/recharger = all_components[MC_CHARGE] - - if(battery_module && battery_module.battery) - switch(battery_module.battery.percent()) - if(80 to 200) // 100 should be maximal but just in case.. - data["PC_batteryicon"] = "batt_100.gif" - if(60 to 80) - data["PC_batteryicon"] = "batt_80.gif" - if(40 to 60) - data["PC_batteryicon"] = "batt_60.gif" - if(20 to 40) - data["PC_batteryicon"] = "batt_40.gif" - if(5 to 20) - data["PC_batteryicon"] = "batt_20.gif" - else - data["PC_batteryicon"] = "batt_5.gif" - data["PC_batterypercent"] = "[round(battery_module.battery.percent())] %" - data["PC_showbatteryicon"] = 1 - else - data["PC_batteryicon"] = "batt_5.gif" - data["PC_batterypercent"] = "N/C" - data["PC_showbatteryicon"] = battery_module ? 1 : 0 - - if(recharger && recharger.enabled && recharger.check_functionality() && recharger.use_power(0)) - data["PC_apclinkicon"] = "charging.gif" - - switch(get_ntnet_status()) - if(0) - data["PC_ntneticon"] = "sig_none.gif" - if(1) - data["PC_ntneticon"] = "sig_low.gif" - if(2) - data["PC_ntneticon"] = "sig_high.gif" - if(3) - data["PC_ntneticon"] = "sig_lan.gif" - - if(idle_threads.len) - var/list/program_headers = list() - for(var/I in idle_threads) - var/datum/computer_file/program/P = I - if(!P.ui_header) - continue - program_headers.Add(list(list( - "icon" = P.ui_header - ))) - - data["PC_programheaders"] = program_headers - - data["PC_stationtime"] = worldtime2text() - data["PC_hasheader"] = 1 - data["PC_showexitprogram"] = active_program ? 1 : 0 // Hides "Exit Program" button on mainscreen - return data - -// Relays kill program request to currently active program. Use this to quit current program. -/obj/item/device/modular_computer/proc/kill_program(forced = FALSE) - if(active_program) - active_program.kill_program(forced) - active_program = null - var/mob/user = usr - if(user && istype(user)) - ui_interact(user) // Re-open the UI on this computer. It should show the main screen now. - update_icon() - -// Returns 0 for No Signal, 1 for Low Signal and 2 for Good Signal. 3 is for wired connection (always-on) -/obj/item/device/modular_computer/proc/get_ntnet_status(specific_action = 0) - var/obj/item/weapon/computer_hardware/network_card/network_card = all_components[MC_NET] - if(network_card) - return network_card.get_signal(specific_action) - else - return 0 - -/obj/item/device/modular_computer/proc/add_log(text) - if(!get_ntnet_status()) - return FALSE - var/obj/item/weapon/computer_hardware/network_card/network_card = all_components[MC_NET] - return ntnet_global.add_log(text, network_card) - -/obj/item/device/modular_computer/proc/shutdown_computer(loud = 1) - kill_program(forced = TRUE) - for(var/datum/computer_file/program/P in idle_threads) - P.kill_program(forced = TRUE) - idle_threads.Remove(P) - if(loud) - physical.visible_message("\The [src] shuts down.") - enabled = 0 - update_icon() - - -/obj/item/device/modular_computer/attackby(obj/item/weapon/W as obj, mob/user as mob) - // Insert items into the components - for(var/h in all_components) - var/obj/item/weapon/computer_hardware/H = all_components[h] - if(H.try_insert(W, user)) - return - - // Insert new hardware - if(istype(W, /obj/item/weapon/computer_hardware)) - if(install_component(W, user)) - return - - if(istype(W, /obj/item/weapon/wrench)) - if(all_components.len) - user << "Remove all components from \the [src] before disassembling it." - return - new /obj/item/stack/sheet/metal( get_turf(src.loc), steel_sheet_cost ) - physical.visible_message("\The [src] has been disassembled by [user].") - relay_qdel() - qdel(src) - return - - if(istype(W, /obj/item/weapon/weldingtool)) - var/obj/item/weapon/weldingtool/WT = W - if(!WT.isOn()) - user << "\The [W] is off." - return - - if(obj_integrity == max_integrity) - user << "\The [src] does not require repairs." - return - - user << "You begin repairing damage to \the [src]..." - var/dmg = round(max_integrity - obj_integrity) - if(WT.remove_fuel(round(dmg/75)) && do_after(usr, dmg/10)) - obj_integrity = max_integrity - user << "You repair \the [src]." - return - - if(istype(W, /obj/item/weapon/screwdriver)) - if(!all_components.len) - user << "This device doesn't have any components installed." - return - var/list/component_names = list() - for(var/h in all_components) - var/obj/item/weapon/computer_hardware/H = all_components[h] - component_names.Add(H.name) - - var/choice = input(user, "Which component do you want to uninstall?", "Computer maintenance", null) as null|anything in component_names - - if(!choice) - return - - if(!Adjacent(user)) - return - - var/obj/item/weapon/computer_hardware/H = find_hardware_by_name(choice) - - if(!H) - return - - uninstall_component(H, user) - return - - ..() - -// Used by processor to relay qdel() to machinery type. -/obj/item/device/modular_computer/proc/relay_qdel() - return - -// Perform adjacency checks on our physical counterpart, if any. -/obj/item/device/modular_computer/Adjacent(atom/neighbor) - if(physical && physical != src) - return physical.Adjacent(neighbor) - return ..() diff --git a/code/modules/modular_computers/computers/item/computer_components.dm b/code/modules/modular_computers/computers/item/computer_components.dm deleted file mode 100644 index 0f27580a27..0000000000 --- a/code/modules/modular_computers/computers/item/computer_components.dm +++ /dev/null @@ -1,54 +0,0 @@ -/obj/item/device/modular_computer/proc/can_install_component(obj/item/weapon/computer_hardware/H, mob/living/user = null) - if(!H.can_install(src, user)) - return FALSE - - if(H.w_class > max_hardware_size) - user << "This component is too large for \the [src]!" - return FALSE - - if(all_components[H.device_type]) - user << "This computer's hardware slot is already occupied by \the [all_components[H.device_type]]." - return FALSE - return TRUE - - -// Installs component. -/obj/item/device/modular_computer/proc/install_component(obj/item/weapon/computer_hardware/H, mob/living/user = null) - if(!can_install_component(H, user)) - return FALSE - - if(user && !user.unEquip(H)) - return FALSE - - all_components[H.device_type] = H - - user << "You install \the [H] into \the [src]." - H.forceMove(src) - H.holder = src - H.on_install(src, user) - - -// Uninstalls component. -/obj/item/device/modular_computer/proc/uninstall_component(obj/item/weapon/computer_hardware/H, mob/living/user = null) - if(H.holder != src) // Not our component at all. - return FALSE - - all_components.Remove(H.device_type) - - user << "You remove \the [H] from \the [src]." - - H.forceMove(get_turf(src)) - H.holder = null - H.on_remove(src, user) - if(enabled && !use_power()) - shutdown_computer() - update_icon() - - -// Checks all hardware pieces to determine if name matches, if yes, returns the hardware piece, otherwise returns null -/obj/item/device/modular_computer/proc/find_hardware_by_name(name) - for(var/i in all_components) - var/obj/O = all_components[i] - if(O.name == name) - return O - return null diff --git a/code/modules/modular_computers/computers/item/computer_damage.dm b/code/modules/modular_computers/computers/item/computer_damage.dm deleted file mode 100644 index 5e521a04e1..0000000000 --- a/code/modules/modular_computers/computers/item/computer_damage.dm +++ /dev/null @@ -1,31 +0,0 @@ -/obj/item/device/modular_computer/take_damage(damage_amount, damage_type = BRUTE, damage_flag = 0, sound_effect = 1) - . = ..() - var/component_probability = min(50, max(damage_amount*0.1, 1 - obj_integrity/max_integrity)) - switch(damage_flag) - if("bullet") - component_probability = damage_amount * 0.5 - if("laser") - component_probability = damage_amount * 0.66 - if(component_probability) - for(var/I in all_components) - var/obj/item/weapon/computer_hardware/H = all_components[I] - if(prob(component_probability)) - H.take_damage(round(damage_amount*0.5), damage_type, damage_flag, 0) - - -/obj/item/device/modular_computer/deconstruct(disassembled = TRUE) - break_apart() - -/obj/item/device/modular_computer/proc/break_apart() - if(!(flags & NODECONSTRUCT)) - physical.visible_message("\The [src] breaks apart!") - var/turf/newloc = get_turf(src) - new /obj/item/stack/sheet/metal(newloc, round(steel_sheet_cost/2)) - for(var/C in all_components) - var/obj/item/weapon/computer_hardware/H = all_components[C] - uninstall_component(H) - H.forceMove(newloc) - if(prob(25)) - H.take_damage(rand(10,30), BRUTE, 0, 0) - relay_qdel() - qdel(src) diff --git a/code/modules/modular_computers/computers/item/computer_power.dm b/code/modules/modular_computers/computers/item/computer_power.dm deleted file mode 100644 index c5aab99ce5..0000000000 --- a/code/modules/modular_computers/computers/item/computer_power.dm +++ /dev/null @@ -1,61 +0,0 @@ -// Tries to draw power from charger or, if no operational charger is present, from power cell. -/obj/item/device/modular_computer/proc/use_power(amount = 0) - if(check_power_override()) - return TRUE - - var/obj/item/weapon/computer_hardware/recharger/recharger = all_components[MC_CHARGE] - - if(recharger && recharger.check_functionality()) - if(recharger.use_power(amount)) - return TRUE - - var/obj/item/weapon/computer_hardware/battery/battery_module = all_components[MC_CELL] - - if(battery_module && battery_module.battery && battery_module.battery.charge) - var/obj/item/weapon/stock_parts/cell/cell = battery_module.battery - if(cell.use(amount * CELLRATE)) - return TRUE - else // Discharge the cell anyway. - cell.use(min(amount*CELLRATE, cell.charge)) - return FALSE - return FALSE - -/obj/item/device/modular_computer/proc/give_power(amount) - var/obj/item/weapon/computer_hardware/battery/battery_module = all_components[MC_CELL] - if(battery_module && battery_module.battery) - return battery_module.battery.give(amount) - return 0 - - -// Used in following function to reduce copypaste -/obj/item/device/modular_computer/proc/power_failure() - if(enabled) // Shut down the computer - if(active_program) - active_program.event_powerfailure(0) - for(var/I in idle_threads) - var/datum/computer_file/program/PRG = I - PRG.event_powerfailure(1) - shutdown_computer(0) - -// Handles power-related things, such as battery interaction, recharging, shutdown when it's discharged -/obj/item/device/modular_computer/proc/handle_power() - var/obj/item/weapon/computer_hardware/recharger/recharger = all_components[MC_CHARGE] - if(recharger) - recharger.process() - - var/power_usage = screen_on ? base_active_power_usage : base_idle_power_usage - - for(var/obj/item/weapon/computer_hardware/H in all_components) - if(H.enabled) - power_usage += H.power_usage - - if(use_power(power_usage)) - last_power_usage = power_usage - return TRUE - else - power_failure() - return FALSE - -// Used by child types if they have other power source than battery or recharger -/obj/item/device/modular_computer/proc/check_power_override() - return FALSE diff --git a/code/modules/modular_computers/computers/item/computer_ui.dm b/code/modules/modular_computers/computers/item/computer_ui.dm deleted file mode 100644 index 06761844de..0000000000 --- a/code/modules/modular_computers/computers/item/computer_ui.dm +++ /dev/null @@ -1,137 +0,0 @@ -// Operates TGUI -/obj/item/device/modular_computer/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = 0, datum/tgui/master_ui = null, datum/ui_state/state = default_state) - if(!enabled) - if(ui) - ui.close() - return 0 - if(!use_power()) - if(ui) - ui.close() - return 0 - - // Robots don't really need to see the screen, their wireless connection works as long as computer is on. - if(!screen_on && !issilicon(user)) - if(ui) - ui.close() - return 0 - - // If we have an active program switch to it now. - if(active_program) - if(ui) // This is the main laptop screen. Since we are switching to program's UI close it for now. - ui.close() - active_program.ui_interact(user) - return - - // We are still here, that means there is no program loaded. Load the BIOS/ROM/OS/whatever you want to call it. - // This screen simply lists available programs and user may select them. - var/obj/item/weapon/computer_hardware/hard_drive/hard_drive = all_components[MC_HDD] - if(!hard_drive || !hard_drive.stored_files || !hard_drive.stored_files.len) - user << "\The [src] beeps three times, it's screen displaying a \"DISK ERROR\" warning." - return // No HDD, No HDD files list or no stored files. Something is very broken. - - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) - if (!ui) - var/datum/asset/assets = get_asset_datum(/datum/asset/simple/headers) - assets.send(user) - - ui = new(user, src, ui_key, "computer_main", "NTOS Main menu", 400, 500, master_ui, state) - ui.open() - ui.set_autoupdate(state = 1) - - -/obj/item/device/modular_computer/ui_data(mob/user) - var/list/data = get_header_data() - data["programs"] = list() - var/obj/item/weapon/computer_hardware/hard_drive/hard_drive = all_components[MC_HDD] - for(var/datum/computer_file/program/P in hard_drive.stored_files) - var/running = 0 - if(P in idle_threads) - running = 1 - - data["programs"] += list(list("name" = P.filename, "desc" = P.filedesc, "running" = running)) - - return data - - -// Handles user's GUI input -/obj/item/device/modular_computer/ui_act(action, params) - if(..()) - return - var/obj/item/weapon/computer_hardware/hard_drive/hard_drive = all_components[MC_HDD] - switch(action) - if("PC_exit") - kill_program() - return 1 - if("PC_shutdown") - shutdown_computer() - return 1 - if("PC_minimize") - var/mob/user = usr - if(!active_program || !all_components[MC_CPU]) - return - - idle_threads.Add(active_program) - active_program.program_state = PROGRAM_STATE_BACKGROUND // Should close any existing UIs - - active_program = null - update_icon() - if(user && istype(user)) - ui_interact(user) // Re-open the UI on this computer. It should show the main screen now. - - if("PC_killprogram") - var/prog = params["name"] - var/datum/computer_file/program/P = null - var/mob/user = usr - if(hard_drive) - P = hard_drive.find_file_by_name(prog) - - if(!istype(P) || P.program_state == PROGRAM_STATE_KILLED) - return - - P.kill_program(forced = TRUE) - user << "Program [P.filename].[P.filetype] with PID [rand(100,999)] has been killed." - - if("PC_runprogram") - var/prog = params["name"] - var/datum/computer_file/program/P = null - var/mob/user = usr - if(hard_drive) - P = hard_drive.find_file_by_name(prog) - - if(!P || !istype(P)) // Program not found or it's not executable program. - user << "\The [src]'s screen shows \"I/O ERROR - Unable to run program\" warning." - return - - P.computer = src - - if(!P.is_supported_by_hardware(hardware_flag, 1, user)) - return - - // The program is already running. Resume it. - if(P in idle_threads) - P.program_state = PROGRAM_STATE_ACTIVE - active_program = P - idle_threads.Remove(P) - update_icon() - return - - var/obj/item/weapon/computer_hardware/processor_unit/PU = all_components[MC_CPU] - - if(idle_threads.len > PU.max_idle_programs) - user << "\The [src] displays a \"Maximal CPU load reached. Unable to run another program.\" error." - return - - if(P.requires_ntnet && !get_ntnet_status(P.requires_ntnet_feature)) // The program requires NTNet connection, but we are not connected to NTNet. - user << "\The [src]'s screen shows \"Unable to connect to NTNet. Please retry. If problem persists contact your system administrator.\" warning." - return - if(P.run_program(user)) - active_program = P - update_icon() - return 1 - else - return - -/obj/item/device/modular_computer/ui_host() - if(physical) - return physical - return src diff --git a/code/modules/modular_computers/computers/item/laptop.dm b/code/modules/modular_computers/computers/item/laptop.dm deleted file mode 100644 index 31bac1a0f3..0000000000 --- a/code/modules/modular_computers/computers/item/laptop.dm +++ /dev/null @@ -1,101 +0,0 @@ -/obj/item/device/modular_computer/laptop - name = "laptop" - desc = "A portable laptop computer." - - icon = 'icons/obj/modular_laptop.dmi' - icon_state = "laptop-closed" - icon_state_powered = "laptop" - icon_state_unpowered = "laptop-off" - icon_state_menu = "menu" - - hardware_flag = PROGRAM_LAPTOP - max_hardware_size = 2 - w_class = WEIGHT_CLASS_NORMAL - - flags = HANDSLOW // No running around with open laptops in hands. - - screen_on = 0 // Starts closed - var/start_open = 1 // unless this var is set to 1 - var/icon_state_closed = "laptop-closed" - var/w_class_open = WEIGHT_CLASS_BULKY - var/slowdown_open = 1 - -/obj/item/device/modular_computer/laptop/New() - ..() - if(start_open && !screen_on) - toggle_open() - -/obj/item/device/modular_computer/laptop/update_icon() - if(screen_on) - ..() - else - cut_overlays() - icon_state = icon_state_closed - -/obj/item/device/modular_computer/laptop/attack_self(mob/user) - if(!screen_on) - try_toggle_open(user) - else - return ..() - -/obj/item/device/modular_computer/laptop/verb/open_computer() - set name = "Toggle Open" - set category = "Object" - set src in view(1) - - try_toggle_open(usr) - -/obj/item/device/modular_computer/laptop/MouseDrop(obj/over_object, src_location, over_location) - if(over_object == usr || over_object == src) - try_toggle_open(usr) - else if(istype(over_object, /obj/screen/inventory/hand)) - var/obj/screen/inventory/hand/H = over_object - var/mob/M = usr - - if(!M.restrained() && !M.stat) - if(!isturf(loc) || !Adjacent(M)) - return - M.put_in_hand(src, H.held_index) - -/obj/item/device/modular_computer/laptop/attack_hand(mob/user) - if(screen_on && isturf(loc)) - return attack_self(user) - - return ..() - - -/obj/item/device/modular_computer/laptop/proc/try_toggle_open(mob/living/user) - if(issilicon(user)) - return - if(!isturf(loc) && !ismob(loc)) // No opening it in backpack. - return - if(!user.canUseTopic(src)) - return - - toggle_open(user) - - -/obj/item/device/modular_computer/laptop/AltClick(mob/user) - if(screen_on) // Close it. - try_toggle_open(user) - else - return ..() - -/obj/item/device/modular_computer/laptop/proc/toggle_open(mob/living/user=null) - if(screen_on) - user << "You close \the [src]." - slowdown = initial(slowdown) - w_class = initial(w_class) - else - user << "You open \the [src]." - slowdown = slowdown_open - w_class = w_class_open - - screen_on = !screen_on - update_icon() - - - -// Laptop frame, starts empty and closed. -/obj/item/device/modular_computer/laptop/buildable - start_open = 0 diff --git a/code/modules/modular_computers/computers/item/laptop_presets.dm b/code/modules/modular_computers/computers/item/laptop_presets.dm deleted file mode 100644 index 7fc177d20f..0000000000 --- a/code/modules/modular_computers/computers/item/laptop_presets.dm +++ /dev/null @@ -1,23 +0,0 @@ -/obj/item/device/modular_computer/laptop/preset/New() - . = ..() - install_component(new /obj/item/weapon/computer_hardware/processor_unit/small) - install_component(new /obj/item/weapon/computer_hardware/battery(src, /obj/item/weapon/stock_parts/cell/computer)) - install_component(new /obj/item/weapon/computer_hardware/hard_drive) - install_component(new /obj/item/weapon/computer_hardware/network_card) - install_programs() - - -/obj/item/device/modular_computer/laptop/preset/proc/install_programs() - return - - - - -/obj/item/device/modular_computer/laptop/preset/civillian - desc = "A low-end laptop often used for personal recreation." - - -/obj/item/device/modular_computer/laptop/preset/civillian/install_programs() - var/obj/item/weapon/computer_hardware/hard_drive/hard_drive = all_components[MC_HDD] - hard_drive.store_file(new/datum/computer_file/program/chatclient()) - hard_drive.store_file(new/datum/computer_file/program/nttransfer()) \ No newline at end of file diff --git a/code/modules/modular_computers/computers/item/processor.dm b/code/modules/modular_computers/computers/item/processor.dm deleted file mode 100644 index 887e2b5dc4..0000000000 --- a/code/modules/modular_computers/computers/item/processor.dm +++ /dev/null @@ -1,76 +0,0 @@ -// Held by /obj/machinery/modular_computer to reduce amount of copy-pasted code. -/obj/item/device/modular_computer/processor - name = "processing unit" - desc = "You shouldn't see this. If you do, report it." - icon = null - icon_state = null - icon_state_unpowered = null - icon_state_menu = null - hardware_flag = 0 - - var/obj/machinery/modular_computer/machinery_computer = null - -/obj/item/device/modular_computer/processor/Destroy() - . = ..() - if(machinery_computer && (machinery_computer.cpu == src)) - machinery_computer.cpu = null - machinery_computer = null - -/obj/item/device/modular_computer/processor/New(comp) - STOP_PROCESSING(SSobj, src) // Processed by its machine - - if(!comp || !istype(comp, /obj/machinery/modular_computer)) - CRASH("Inapropriate type passed to obj/item/device/modular_computer/processor/New()! Aborting.") - return - // Obtain reference to machinery computer - all_components = list() - idle_threads = list() - machinery_computer = comp - machinery_computer.cpu = src - hardware_flag = machinery_computer.hardware_flag - max_hardware_size = machinery_computer.max_hardware_size - steel_sheet_cost = machinery_computer.steel_sheet_cost - obj_integrity = machinery_computer.obj_integrity - max_integrity = machinery_computer.max_integrity - integrity_failure = machinery_computer.integrity_failure - base_active_power_usage = machinery_computer.base_active_power_usage - base_idle_power_usage = machinery_computer.base_idle_power_usage - -/obj/item/device/modular_computer/processor/relay_qdel() - qdel(machinery_computer) - -/obj/item/device/modular_computer/processor/update_icon() - if(machinery_computer) - return machinery_computer.update_icon() - -// This thing is not meant to be used on it's own, get topic data from our machinery owner. -//obj/item/device/modular_computer/processor/canUseTopic(user, state) -// if(!machinery_computer) -// return 0 - -// return machinery_computer.canUseTopic(user, state) - -/obj/item/device/modular_computer/processor/shutdown_computer() - if(!machinery_computer) - return - ..() - machinery_computer.update_icon() - return - -/obj/item/device/modular_computer/processor/add_verb(path) - switch(path) - if(MC_CARD) - machinery_computer.verbs += /obj/machinery/modular_computer/proc/eject_id - if(MC_SDD) - machinery_computer.verbs += /obj/machinery/modular_computer/proc/eject_disk - if(MC_AI) - machinery_computer.verbs += /obj/machinery/modular_computer/proc/eject_card - -/obj/item/device/modular_computer/processor/remove_verb(path) - switch(path) - if(MC_CARD) - machinery_computer.verbs -= /obj/machinery/modular_computer/proc/eject_id - if(MC_SDD) - machinery_computer.verbs -= /obj/machinery/modular_computer/proc/eject_disk - if(MC_AI) - machinery_computer.verbs -= /obj/machinery/modular_computer/proc/eject_card \ No newline at end of file diff --git a/code/modules/modular_computers/computers/item/tablet.dm b/code/modules/modular_computers/computers/item/tablet.dm deleted file mode 100644 index 6a2b5674a5..0000000000 --- a/code/modules/modular_computers/computers/item/tablet.dm +++ /dev/null @@ -1,12 +0,0 @@ -/obj/item/device/modular_computer/tablet //Its called tablet for theme of 90ies but actually its a "big smartphone" sized - name = "tablet computer" - icon = 'icons/obj/modular_tablet.dmi' - icon_state = "tablet" - icon_state_unpowered = "tablet" - icon_state_powered = "tablet" - icon_state_menu = "menu" - hardware_flag = PROGRAM_TABLET - max_hardware_size = 1 - w_class = WEIGHT_CLASS_SMALL - steel_sheet_cost = 1 - slot_flags = SLOT_ID | SLOT_BELT \ No newline at end of file diff --git a/code/modules/modular_computers/computers/item/tablet_presets.dm b/code/modules/modular_computers/computers/item/tablet_presets.dm deleted file mode 100644 index 6ac9ed4063..0000000000 --- a/code/modules/modular_computers/computers/item/tablet_presets.dm +++ /dev/null @@ -1,29 +0,0 @@ - -// This is literally the worst possible cheap tablet -/obj/item/device/modular_computer/tablet/preset/cheap - desc = "A low-end tablet often seen among low ranked station personnel." - -/obj/item/device/modular_computer/tablet/preset/cheap/New() - . = ..() - install_component(new /obj/item/weapon/computer_hardware/processor_unit/small) - install_component(new /obj/item/weapon/computer_hardware/battery(src, /obj/item/weapon/stock_parts/cell/computer/micro)) - install_component(new /obj/item/weapon/computer_hardware/hard_drive/small) - install_component(new /obj/item/weapon/computer_hardware/network_card) - -// Alternative version, an average one, for higher ranked positions mostly -/obj/item/device/modular_computer/tablet/preset/advanced/New() - . = ..() - install_component(new /obj/item/weapon/computer_hardware/processor_unit/small) - install_component(new /obj/item/weapon/computer_hardware/battery(src, /obj/item/weapon/stock_parts/cell/computer)) - install_component(new /obj/item/weapon/computer_hardware/hard_drive/small) - install_component(new /obj/item/weapon/computer_hardware/network_card) - install_component(new /obj/item/weapon/computer_hardware/card_slot) - install_component(new /obj/item/weapon/computer_hardware/printer/mini) - -/obj/item/device/modular_computer/tablet/preset/cargo/New() - . = ..() - install_component(new /obj/item/weapon/computer_hardware/processor_unit/small) - install_component(new /obj/item/weapon/computer_hardware/battery(src, /obj/item/weapon/stock_parts/cell/computer)) - install_component(new /obj/item/weapon/computer_hardware/hard_drive/small) - install_component(new /obj/item/weapon/computer_hardware/network_card) - install_component(new /obj/item/weapon/computer_hardware/printer/mini) diff --git a/code/modules/modular_computers/computers/machinery/console_presets.dm b/code/modules/modular_computers/computers/machinery/console_presets.dm deleted file mode 100644 index b2f0c5fb07..0000000000 --- a/code/modules/modular_computers/computers/machinery/console_presets.dm +++ /dev/null @@ -1,74 +0,0 @@ -/obj/machinery/modular_computer/console/preset - // Can be changed to give devices specific hardware - var/_has_id_slot = 0 - var/_has_printer = 0 - var/_has_battery = 0 - var/_has_ai = 0 - -/obj/machinery/modular_computer/console/preset/New() - . = ..() - if(!cpu) - return - cpu.install_component(new /obj/item/weapon/computer_hardware/processor_unit) - - if(_has_id_slot) - cpu.install_component(new /obj/item/weapon/computer_hardware/card_slot) - if(_has_printer) - cpu.install_component(new /obj/item/weapon/computer_hardware/printer) - if(_has_battery) - cpu.install_component(new /obj/item/weapon/computer_hardware/battery(cpu, /obj/item/weapon/stock_parts/cell/computer/super)) - if(_has_ai) - cpu.install_component(new /obj/item/weapon/computer_hardware/ai_slot) - install_programs() - -// Override in child types to install preset-specific programs. -/obj/machinery/modular_computer/console/preset/proc/install_programs() - return - - - -// ===== ENGINEERING CONSOLE ===== -/obj/machinery/modular_computer/console/preset/engineering - console_department = "Engineering" - desc = "A stationary computer. This one comes preloaded with engineering programs." - -/obj/machinery/modular_computer/console/preset/engineering/install_programs() - var/obj/item/weapon/computer_hardware/hard_drive/hard_drive = cpu.all_components[MC_HDD] - hard_drive.store_file(new/datum/computer_file/program/power_monitor()) - hard_drive.store_file(new/datum/computer_file/program/alarm_monitor()) - -// ===== RESEARCH CONSOLE ===== -/obj/machinery/modular_computer/console/preset/research - console_department = "Research" - desc = "A stationary computer. This one comes preloaded with research programs." - _has_ai = 1 - -/obj/machinery/modular_computer/console/preset/research/install_programs() - var/obj/item/weapon/computer_hardware/hard_drive/hard_drive = cpu.all_components[MC_HDD] - hard_drive.store_file(new/datum/computer_file/program/ntnetmonitor()) - hard_drive.store_file(new/datum/computer_file/program/nttransfer()) - hard_drive.store_file(new/datum/computer_file/program/chatclient()) - hard_drive.store_file(new/datum/computer_file/program/aidiag()) - - -// ===== COMMAND CONSOLE ===== -/obj/machinery/modular_computer/console/preset/command - console_department = "Command" - desc = "A stationary computer. This one comes preloaded with command programs." - _has_id_slot = 1 - _has_printer = 1 - -/obj/machinery/modular_computer/console/preset/command/install_programs() - var/obj/item/weapon/computer_hardware/hard_drive/hard_drive = cpu.all_components[MC_HDD] - hard_drive.store_file(new/datum/computer_file/program/chatclient()) - hard_drive.store_file(new/datum/computer_file/program/card_mod()) - -// ===== CIVILIAN CONSOLE ===== -/obj/machinery/modular_computer/console/preset/civilian - console_department = "Civilian" - desc = "A stationary computer. This one comes preloaded with generic programs." - -/obj/machinery/modular_computer/console/preset/civilian/install_programs() - var/obj/item/weapon/computer_hardware/hard_drive/hard_drive = cpu.all_components[MC_HDD] - hard_drive.store_file(new/datum/computer_file/program/chatclient()) - hard_drive.store_file(new/datum/computer_file/program/nttransfer()) \ No newline at end of file diff --git a/code/modules/modular_computers/computers/machinery/modular_computer.dm b/code/modules/modular_computers/computers/machinery/modular_computer.dm deleted file mode 100644 index 898ef176d4..0000000000 --- a/code/modules/modular_computers/computers/machinery/modular_computer.dm +++ /dev/null @@ -1,155 +0,0 @@ -// Global var to track modular computers -var/list/global_modular_computers = list() - -// Modular Computer - device that runs various programs and operates with hardware -// DO NOT SPAWN THIS TYPE. Use /laptop/ or /console/ instead. -/obj/machinery/modular_computer - name = "modular computer" - desc = "An advanced computer." - - use_power = 1 - idle_power_usage = 5 - var/hardware_flag = 0 // A flag that describes this device type - var/last_power_usage = 0 // Power usage during last tick - - // Modular computers can run on various devices. Each DEVICE (Laptop, Console, Tablet,..) - // must have it's own DMI file. Icon states must be called exactly the same in all files, but may look differently - // If you create a program which is limited to Laptops and Consoles you don't have to add it's icon_state overlay for Tablets too, for example. - - icon = null - icon_state = null - var/icon_state_unpowered = null // Icon state when the computer is turned off. - var/icon_state_powered = null // Icon state when the computer is turned on. - var/screen_icon_state_menu = "menu" // Icon state overlay when the computer is turned on, but no program is loaded that would override the screen. - var/screen_icon_screensaver = "standby" // Icon state overlay when the computer is powered, but not 'switched on'. - var/max_hardware_size = 0 // Maximal hardware size. Currently, tablets have 1, laptops 2 and consoles 3. Limits what hardware types can be installed. - var/steel_sheet_cost = 10 // Amount of steel sheets refunded when disassembling an empty frame of this computer. - var/light_strength = 0 // Light luminosity when turned on - var/base_active_power_usage = 100 // Power usage when the computer is open (screen is active) and can be interacted with. Remember hardware can use power too. - var/base_idle_power_usage = 10 // Power usage when the computer is idle and screen is off (currently only applies to laptops) - - var/obj/item/device/modular_computer/processor/cpu = null // CPU that handles most logic while this type only handles power and other specific things. - -/obj/machinery/modular_computer/New() - ..() - cpu = new(src) - cpu.physical = src - global_modular_computers.Add(src) - -/obj/machinery/modular_computer/Destroy() - if(cpu) - qdel(cpu) - cpu = null - return ..() - -/obj/machinery/modular_computer/attack_ghost(mob/dead/observer/user) - if(cpu) - cpu.attack_ghost(user) - -/obj/machinery/modular_computer/emag_act(mob/user) - return cpu ? cpu.emag_act(user) : 1 - -/obj/machinery/modular_computer/update_icon() - cut_overlays() - icon_state = icon_state_powered - - if(!cpu || !cpu.enabled) - if (!(stat & NOPOWER) && (cpu && cpu.use_power())) - add_overlay(screen_icon_screensaver) - else - icon_state = icon_state_unpowered - SetLuminosity(0) - else - SetLuminosity(light_strength) - if(cpu.active_program) - add_overlay(cpu.active_program.program_icon_state ? cpu.active_program.program_icon_state : screen_icon_state_menu) - else - overlays.Add(screen_icon_state_menu) - - if(cpu && cpu.obj_integrity <= cpu.integrity_failure) - add_overlay("bsod") - add_overlay("broken") - -// Eject ID card from computer, if it has ID slot with card inside. -/obj/machinery/modular_computer/proc/eject_id() - set name = "Eject ID" - set category = "Object" - - if(cpu) - cpu.eject_id() - -// Eject ID card from computer, if it has ID slot with card inside. -/obj/machinery/modular_computer/proc/eject_disk() - set name = "Eject Data Disk" - set category = "Object" - - if(cpu) - cpu.eject_disk() - -/obj/machinery/modular_computer/proc/eject_card() - set name = "Eject Intellicard" - set category = "Object" - set src in view(1) - - if(cpu) - cpu.eject_card() - -/obj/machinery/modular_computer/AltClick(mob/user) - if(cpu) - cpu.AltClick(user) - -// On-click handling. Turns on the computer if it's off and opens the GUI. -/obj/machinery/modular_computer/attack_hand(mob/user) - if(cpu) - cpu.attack_self(user) // CPU is an item, that's why we route attack_hand to attack_self - -// Process currently calls handle_power(), may be expanded in future if more things are added. -/obj/machinery/modular_computer/process() - if(cpu) - // Keep names in sync. - cpu.name = src.name - cpu.process() - -// Used in following function to reduce copypaste -/obj/machinery/modular_computer/proc/power_failure(malfunction = 0) - var/obj/item/weapon/computer_hardware/battery/battery_module = cpu.all_components[MC_CELL] - if(cpu && cpu.enabled) // Shut down the computer - visible_message("\The [src]'s screen flickers [battery_module ? "\"BATTERY [malfunction ? "MALFUNCTION" : "CRITICAL"]\"" : "\"EXTERNAL POWER LOSS\""] warning as it shuts down unexpectedly.") - if(cpu) - cpu.shutdown_computer(0) - stat |= NOPOWER - update_icon() - - -// Modular computers can have battery in them, we handle power in previous proc, so prevent this from messing it up for us. -/obj/machinery/modular_computer/power_change() - if(cpu && cpu.use_power()) // If MC_CPU still has a power source, PC wouldn't go offline. - stat &= ~NOPOWER - update_icon() - return - ..() - update_icon() - -/obj/machinery/modular_computer/attackby(var/obj/item/weapon/W as obj, mob/user) - if(cpu) - return cpu.attackby(W, user) - return ..() - - -// Stronger explosions cause serious damage to internal components -// Minor explosions are mostly mitigitated by casing. -/obj/machinery/modular_computer/ex_act(severity) - if(cpu) - cpu.ex_act(severity) - -// EMPs are similar to explosions, but don't cause physical damage to the casing. Instead they screw up the components -/obj/machinery/modular_computer/emp_act(severity) - if(cpu) - cpu.emp_act(severity) - -// "Stun" weapons can cause minor damage to components (short-circuits?) -// "Burn" damage is equally strong against internal components and exterior casing -// "Brute" damage mostly damages the casing. -/obj/machinery/modular_computer/bullet_act(obj/item/projectile/Proj) - if(cpu) - cpu.bullet_act(Proj) \ No newline at end of file diff --git a/code/modules/modular_computers/computers/machinery/modular_console.dm b/code/modules/modular_computers/computers/machinery/modular_console.dm deleted file mode 100644 index 60315198ca..0000000000 --- a/code/modules/modular_computers/computers/machinery/modular_console.dm +++ /dev/null @@ -1,57 +0,0 @@ -/obj/machinery/modular_computer/console - name = "console" - desc = "A stationary computer." - - icon = 'icons/obj/modular_console.dmi' - icon_state = "console" - icon_state_powered = "console" - icon_state_unpowered = "console-off" - screen_icon_state_menu = "menu" - hardware_flag = PROGRAM_CONSOLE - var/console_department = "" // Used in New() to set network tag according to our area. - anchored = 1 - density = 1 - base_idle_power_usage = 100 - base_active_power_usage = 500 - max_hardware_size = 4 - steel_sheet_cost = 10 - light_strength = 2 - obj_integrity = 300 - max_integrity = 300 - integrity_failure = 150 - -/obj/machinery/modular_computer/console/buildable/New() - ..() - // User-built consoles start as empty frames. - var/obj/item/weapon/computer_hardware/hard_drive/hard_drive = cpu.all_components[MC_HDD] - var/obj/item/weapon/computer_hardware/hard_drive/network_card = cpu.all_components[MC_NET] - var/obj/item/weapon/computer_hardware/hard_drive/recharger = cpu.all_components[MC_CHARGE] - qdel(recharger) - qdel(network_card) - qdel(hard_drive) - -/obj/machinery/modular_computer/console/New() - ..() - var/obj/item/weapon/computer_hardware/battery/battery_module = cpu.all_components[MC_CELL] - if(battery_module) - qdel(battery_module) - - var/obj/item/weapon/computer_hardware/network_card/wired/network_card = new() - - cpu.install_component(network_card) - cpu.install_component(new /obj/item/weapon/computer_hardware/recharger/APC) - cpu.install_component(new /obj/item/weapon/computer_hardware/hard_drive/super) // Consoles generally have better HDDs due to lower space limitations - - var/area/A = get_area(src) - // Attempts to set this console's tag according to our area. Since some areas have stuff like "XX - YY" in their names we try to remove that too. - if(A && console_department) - network_card.identification_string = replacetext(replacetext(replacetext("[A.name] [console_department] Console", " ", "_"), "-", ""), "__", "_") // Replace spaces with "_" - else if(A) - network_card.identification_string = replacetext(replacetext(replacetext("[A.name] Console", " ", "_"), "-", ""), "__", "_") - else if(console_department) - network_card.identification_string = replacetext(replacetext(replacetext("[console_department] Console", " ", "_"), "-", ""), "__", "_") - else - network_card.identification_string = "Unknown Console" - if(cpu) - cpu.screen_on = 1 - update_icon() \ No newline at end of file diff --git a/code/modules/modular_computers/documentation.md b/code/modules/modular_computers/documentation.md deleted file mode 100644 index 88d8602729..0000000000 --- a/code/modules/modular_computers/documentation.md +++ /dev/null @@ -1,45 +0,0 @@ - - -#Modular computer programs -Ok. so a quick rundown on how to make a program. This is kind of a shitty documentation, but oh well I was asked to. - - -## Base setup -This is how the base program is setup. the rest is mostly tgui stuff. I'll use the ntnetmonitor as a base - - -```DM -/datum/computer_file/program/ntnetmonitor - filename = "ntmonitor" //This is obviously the name of the file itself. not much to be said - filedesc = "NTNet Diagnostics and Monitoring" // This is sort of the official name. it's what shows up on the main menu - program_icon_state = "comm_monitor" // This is what the screen will look like when the program is active - extended_desc = "This program is a dummy. // This is a sort of a description, visible when looking on the ntnet - size = 12 // size of the program. Big programs need more hard drive space. Don't make it too big though. - requires_ntnet = 1 // If this is set, the program will not run without an ntnet connection, and will close if the connection is lost. Mainly for primarily online programs. - required_access = access_network //This is access required to run the program itself. ONLY SET THIS FOR SUPER SECURE SHIT. This also acts as transfer_access as well. - transfer_access = access_change_ids // This is the access needed to download from ntnet or host on the ptp program. This is what you want to use most of the time. - available_on_ntnet = 1 //If it's available to download on ntnet. pretty self explanatory. - available_on_syndinet = 0 // ditto but on emagged syndie net. Use this for antag programs - usage_flags = PROGRAM_ALL // Bitflags (PROGRAM_CONSOLE, PROGRAM_LAPTOP, PROGRAM_TABLET combination) or PROGRAM_ALL - //^^- The comment above sorta explains it. Use this to limit what kind of machines can run the program. For example, comms program should be limited to consoles and laptops. - var/ui_header = "downloader_finished.gif" //This one is kinda cool. If you have the program minimized, this will show up in the header of the computer screen. - //you can even have the program change what the header is based on the situation! see alarm.dm for an example. -``` - -##Preinstalls -Now. for pre-installing stuff. - -Primarily done for consoles, there's an install_programs() proc in the console presets file in the machines folder. - -for example, the command console one. - -```DM -/obj/machinery/modular_computer/console/preset/command/install_programs() - cpu.hard_drive.store_file(new/datum/computer_file/program/chatclient()) - cpu.hard_drive.store_file(new/datum/computer_file/program/card_mod()) -``` -Basically, you want to do cpu.hard_drive.store_file(new/*program path here*()) and put it in the subtype's install_programs(). -Probably pretty self explanatory, but just in case. - -Will probably be expanded when new features come around or I get asked to mention something. - diff --git a/code/modules/modular_computers/file_system/computer_file.dm b/code/modules/modular_computers/file_system/computer_file.dm deleted file mode 100644 index 15ae12a285..0000000000 --- a/code/modules/modular_computers/file_system/computer_file.dm +++ /dev/null @@ -1,39 +0,0 @@ -var/global/file_uid = 0 - -/datum/computer_file - var/filename = "NewFile" // Placeholder. No spacebars - var/filetype = "XXX" // File full names are [filename].[filetype] so like NewFile.XXX in this case - var/size = 1 // File size in GQ. Integers only! - var/obj/item/weapon/computer_hardware/hard_drive/holder // Holder that contains this file. - var/unsendable = 0 // Whether the file may be sent to someone via NTNet transfer or other means. - var/undeletable = 0 // Whether the file may be deleted. Setting to 1 prevents deletion/renaming/etc. - var/uid // UID of this file - -/datum/computer_file/New() - ..() - uid = file_uid - file_uid++ - -/datum/computer_file/Destroy() - if(!holder) - return ..() - - holder.remove_file(src) - // holder.holder is the computer that has drive installed. If we are Destroy()ing program that's currently running kill it. - if(holder.holder && holder.holder.active_program == src) - holder.holder.kill_program(forced = TRUE) - holder = null - ..() - -// Returns independent copy of this file. -/datum/computer_file/proc/clone(rename = 0) - var/datum/computer_file/temp = new type - temp.unsendable = unsendable - temp.undeletable = undeletable - temp.size = size - if(rename) - temp.filename = filename + "(Copy)" - else - temp.filename = filename - temp.filetype = filetype - return temp \ No newline at end of file diff --git a/code/modules/modular_computers/file_system/data.dm b/code/modules/modular_computers/file_system/data.dm deleted file mode 100644 index 32ef6f53dd..0000000000 --- a/code/modules/modular_computers/file_system/data.dm +++ /dev/null @@ -1,20 +0,0 @@ -// /data/ files store data in string format. -// They don't contain other logic for now. -/datum/computer_file/data - var/stored_data = "" // Stored data in string format. - filetype = "DAT" - var/block_size = 250 - var/do_not_edit = 0 // Whether the user will be reminded that the file probably shouldn't be edited. - -/datum/computer_file/data/clone() - var/datum/computer_file/data/temp = ..() - temp.stored_data = stored_data - return temp - -// Calculates file size from amount of characters in saved string -/datum/computer_file/data/proc/calculate_size() - size = max(1, round(length(stored_data) / block_size)) - -/datum/computer_file/data/logfile - filetype = "LOG" - diff --git a/code/modules/modular_computers/file_system/program.dm b/code/modules/modular_computers/file_system/program.dm deleted file mode 100644 index 46a9ea8ebc..0000000000 --- a/code/modules/modular_computers/file_system/program.dm +++ /dev/null @@ -1,196 +0,0 @@ -// /program/ files are executable programs that do things. -/datum/computer_file/program - filetype = "PRG" - filename = "UnknownProgram" // File name. FILE NAME MUST BE UNIQUE IF YOU WANT THE PROGRAM TO BE DOWNLOADABLE FROM NTNET! - var/required_access = null // List of required accesses to *run* the program. - var/transfer_access = null // List of required access to download or file host the program - var/program_state = PROGRAM_STATE_KILLED// PROGRAM_STATE_KILLED or PROGRAM_STATE_BACKGROUND or PROGRAM_STATE_ACTIVE - specifies whether this program is running. - var/obj/item/device/modular_computer/computer // Device that runs this program. - var/filedesc = "Unknown Program" // User-friendly name of this program. - var/extended_desc = "N/A" // Short description of this program's function. - var/program_icon_state = null // Program-specific screen icon state - var/requires_ntnet = 0 // Set to 1 for program to require nonstop NTNet connection to run. If NTNet connection is lost program crashes. - var/requires_ntnet_feature = 0 // Optional, if above is set to 1 checks for specific function of NTNet (currently NTNET_SOFTWAREDOWNLOAD, NTNET_PEERTOPEER, NTNET_SYSTEMCONTROL and NTNET_COMMUNICATION) - var/ntnet_status = 1 // NTNet status, updated every tick by computer running this program. Don't use this for checks if NTNet works, computers do that. Use this for calculations, etc. - var/usage_flags = PROGRAM_ALL // Bitflags (PROGRAM_CONSOLE, PROGRAM_LAPTOP, PROGRAM_TABLET combination) or PROGRAM_ALL - var/network_destination = null // Optional string that describes what NTNet server/system this program connects to. Used in default logging. - var/available_on_ntnet = 1 // Whether the program can be downloaded from NTNet. Set to 0 to disable. - var/available_on_syndinet = 0 // Whether the program can be downloaded from SyndiNet (accessible via emagging the computer). Set to 1 to enable. - var/ui_header = null // Example: "something.gif" - a header image that will be rendered in computer's UI when this program is running at background. Images are taken from /icons/program_icons. Be careful not to use too large images! - -/datum/computer_file/program/New(obj/item/device/modular_computer/comp = null) - ..() - if(comp && istype(comp)) - computer = comp - -/datum/computer_file/program/Destroy() - computer = null - . = ..() - -/datum/computer_file/program/clone() - var/datum/computer_file/program/temp = ..() - temp.required_access = required_access - temp.filedesc = filedesc - temp.program_icon_state = program_icon_state - temp.requires_ntnet = requires_ntnet - temp.requires_ntnet_feature = requires_ntnet_feature - temp.usage_flags = usage_flags - return temp - -// Relays icon update to the computer. -/datum/computer_file/program/proc/update_computer_icon() - if(computer) - computer.update_icon() - -// Attempts to create a log in global ntnet datum. Returns 1 on success, 0 on fail. -/datum/computer_file/program/proc/generate_network_log(text) - if(computer) - return computer.add_log(text) - return 0 - -/datum/computer_file/program/proc/is_supported_by_hardware(hardware_flag = 0, loud = 0, mob/user = null) - if(!(hardware_flag & usage_flags)) - if(loud && computer && user) - user << "\The [computer] flashes an \"Hardware Error - Incompatible software\" warning." - return 0 - return 1 - -/datum/computer_file/program/proc/get_signal(specific_action = 0) - if(computer) - return computer.get_ntnet_status(specific_action) - return 0 - -// Called by Process() on device that runs us, once every tick. -/datum/computer_file/program/proc/process_tick() - return 1 - -// Check if the user can run program. Only humans can operate computer. Automatically called in run_program() -// User has to wear their ID for ID Scan to work. -// Can also be called manually, with optional parameter being access_to_check to scan the user's ID -/datum/computer_file/program/proc/can_run(mob/user, loud = 0, access_to_check, transfer = 0) - // Defaults to required_access - if(!access_to_check) - if(transfer && transfer_access) - access_to_check = transfer_access - else - access_to_check = required_access - if(!access_to_check) // No required_access, allow it. - return 1 - - if(!transfer && computer && computer.emagged) //emags can bypass the execution locks but not the download ones. - return 1 - - if(IsAdminGhost(user)) - return 1 - - if(issilicon(user)) - return 1 - - if(ishuman(user)) - var/obj/item/weapon/card/id/D - var/obj/item/weapon/computer_hardware/card_slot/card_slot - if(computer && card_slot) - card_slot = computer.all_components[MC_CARD] - D = card_slot.GetID() - var/mob/living/carbon/human/h = user - var/obj/item/weapon/card/id/I = h.get_idcard() - var/obj/item/weapon/card/id/C = h.get_active_held_item() - if(C) - C = C.GetID() - if(!(C && istype(C))) - C = null - - if(!I && !C && !D) - if(loud) - user << "\The [computer] flashes an \"RFID Error - Unable to scan ID\" warning." - return 0 - - if(I) - if(access_to_check in I.GetAccess()) - return 1 - else if(C) - if(access_to_check in C.GetAccess()) - return 1 - else if(D) - if(access_to_check in D.GetAccess()) - return 1 - if(loud) - user << "\The [computer] flashes an \"Access Denied\" warning." - return 0 - -// This attempts to retrieve header data for UIs. If implementing completely new device of different type than existing ones -// always include the device here in this proc. This proc basically relays the request to whatever is running the program. -/datum/computer_file/program/proc/get_header_data() - if(computer) - return computer.get_header_data() - return list() - -// This is performed on program startup. May be overriden to add extra logic. Remember to include ..() call. Return 1 on success, 0 on failure. -// When implementing new program based device, use this to run the program. -/datum/computer_file/program/proc/run_program(mob/living/user) - if(can_run(user, 1)) - if(requires_ntnet && network_destination) - generate_network_log("Connection opened to [network_destination].") - program_state = PROGRAM_STATE_ACTIVE - return 1 - return 0 - -// Use this proc to kill the program. Designed to be implemented by each program if it requires on-quit logic, such as the NTNRC client. -/datum/computer_file/program/proc/kill_program(forced = FALSE) - program_state = PROGRAM_STATE_KILLED - if(network_destination) - generate_network_log("Connection to [network_destination] closed.") - return 1 - -// This is called every tick when the program is enabled. Ensure you do parent call if you override it. If parent returns 1 continue with UI initialisation. - -/datum/computer_file/program/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = 0, datum/tgui/master_ui = null, datum/ui_state/state = default_state) - if(program_state != PROGRAM_STATE_ACTIVE) // Our program was closed. Close the ui if it exists. - return computer.ui_interact(user) - return 1 - - -// CONVENTIONS, READ THIS WHEN CREATING NEW PROGRAM AND OVERRIDING THIS PROC: -// Topic calls are automagically forwarded from NanoModule this program contains. -// Calls beginning with "PRG_" are reserved for programs handling. -// Calls beginning with "PC_" are reserved for computer handling (by whatever runs the program) -// ALWAYS INCLUDE PARENT CALL ..() OR DIE IN FIRE. -/datum/computer_file/program/ui_act(action,params,datum/tgui/ui) - if(..()) - return 1 - if(computer) - switch(action) - if("PC_exit") - computer.kill_program() - ui.close() - return 1 - if("PC_shutdown") - computer.shutdown_computer() - ui.close() - return 1 - if("PC_minimize") - var/mob/user = usr - if(!computer.active_program || !computer.all_components[MC_CPU]) - return - - computer.idle_threads.Add(computer.active_program) - program_state = PROGRAM_STATE_BACKGROUND // Should close any existing UIs - - computer.active_program = null - computer.update_icon() - ui.close() - - if(user && istype(user)) - computer.ui_interact(user) // Re-open the UI on this computer. It should show the main screen now. - - -/datum/computer_file/program/ui_host() - if(computer.physical) - return computer.physical - else - return computer - -/datum/computer_file/program/ui_status(mob/user) - if(program_state != PROGRAM_STATE_ACTIVE) // Our program was closed. Close the ui if it exists. - return UI_CLOSE - return ..() diff --git a/code/modules/modular_computers/file_system/program_events.dm b/code/modules/modular_computers/file_system/program_events.dm deleted file mode 100644 index 279d646cfd..0000000000 --- a/code/modules/modular_computers/file_system/program_events.dm +++ /dev/null @@ -1,18 +0,0 @@ -// Events are sent to the program by the computer. -// Always include a parent call when overriding an event. - -// Called when the ID card is removed from computer. ID is removed AFTER this proc. -/datum/computer_file/program/proc/event_idremoved(background, slot) - return - -// Called when the computer fails due to power loss. Override when program wants to specifically react to power loss. -/datum/computer_file/program/proc/event_powerfailure(background) - kill_program(forced = TRUE) - -// Called when the network connectivity fails. Computer does necessary checks and only calls this when requires_ntnet_feature and similar variables are not met. -/datum/computer_file/program/proc/event_networkfailure(background) - kill_program(forced = TRUE) - if(background) - computer.visible_message("\The [computer]'s screen displays an \"Process [filename].[filetype] (PID [rand(100,999)]) terminated - Network Error\" error") - else - computer.visible_message("\The [computer]'s screen briefly freezes and then shows \"NETWORK ERROR - NTNet connection lost. Please retry. If problem persists contact your system administrator.\" error.") diff --git a/code/modules/modular_computers/file_system/programs/airestorer.dm b/code/modules/modular_computers/file_system/programs/airestorer.dm deleted file mode 100644 index 5c9917b4f5..0000000000 --- a/code/modules/modular_computers/file_system/programs/airestorer.dm +++ /dev/null @@ -1,125 +0,0 @@ - - -/datum/computer_file/program/aidiag - filename = "aidiag" - filedesc = "AI Maintenance Utility" - program_icon_state = "generic" - extended_desc = "This program is capable of reconstructing damaged AI systems. Requires direct AI connection via intellicard slot." - size = 12 - requires_ntnet = 0 - usage_flags = PROGRAM_CONSOLE - transfer_access = access_heads - available_on_ntnet = 1 - var/restoring = FALSE - -/datum/computer_file/program/aidiag/proc/get_ai(cardcheck) - - var/obj/item/weapon/computer_hardware/ai_slot/ai_slot - - if(computer) - ai_slot = computer.all_components[MC_AI] - - if(computer && ai_slot && ai_slot.check_functionality()) - if(cardcheck == 1) - return ai_slot - if(ai_slot.enabled && ai_slot.stored_card) - if(cardcheck == 2) - return ai_slot.stored_card - if(ai_slot.stored_card.AI) - return ai_slot.stored_card.AI - - return null - -/datum/computer_file/program/aidiag/ui_act(action, params) - if(..()) - return TRUE - - var/mob/living/silicon/ai/A = get_ai() - if(!A) - restoring = FALSE - - switch(action) - if("PRG_beginReconstruction") - if(A && A.health < 100) - restoring = TRUE - return TRUE - if("PRG_eject") - if(computer.all_components[MC_AI]) - var/obj/item/weapon/computer_hardware/ai_slot/ai_slot = computer.all_components[MC_AI] - if(ai_slot && ai_slot.stored_card) - ai_slot.try_eject(0,usr) - return TRUE - -/datum/computer_file/program/aidiag/process_tick() - ..() - if(!restoring) //Put the check here so we don't check for an ai all the time - return - var/obj/item/device/aicard/cardhold = get_ai(2) - - var/obj/item/weapon/computer_hardware/ai_slot/ai_slot = get_ai(1) - - - var/mob/living/silicon/ai/A = get_ai() - if(!A || !cardhold) - restoring = FALSE // If the AI was removed, stop the restoration sequence. - if(ai_slot) - ai_slot.locked = FALSE - return - - if(cardhold.flush) - ai_slot.locked = FALSE - restoring = FALSE - return - ai_slot.locked =TRUE - A.adjustOxyLoss(-1, 0) - A.adjustFireLoss(-1, 0) - A.adjustToxLoss(-1, 0) - A.adjustBruteLoss(-1, 0) - A.updatehealth() - if(A.health >= 0 && A.stat == DEAD) - A.revive() - // Finished restoring - if(A.health >= 100) - ai_slot.locked = FALSE - restoring = FALSE - - return TRUE - - -/datum/computer_file/program/aidiag/ui_data(mob/user) - var/list/data = get_header_data() - var/mob/living/silicon/ai/AI - // A shortcut for getting the AI stored inside the computer. The program already does necessary checks. - AI = get_ai() - - var/obj/item/device/aicard/aicard = get_ai(2) - - if(!aicard) - data["nocard"] = TRUE - data["error"] = "Please insert an intelliCard." - else - if(!AI) - data["error"] = "No AI located" - else - var/obj/item/device/aicard/cardhold = AI.loc - if(cardhold.flush) - data["error"] = "Flush in progress" - else - data["name"] = AI.name - data["restoring"] = restoring - data["laws"] = AI.laws.get_law_list(include_zeroth = 1) - data["health"] = (AI.health + 100) / 2 - data["isDead"] = AI.stat == DEAD - data["ai_laws"] = AI.laws.get_law_list(include_zeroth = 1) - - return data - -/datum/computer_file/program/aidiag/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = 0, datum/tgui/master_ui = null, datum/ui_state/state = default_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) - if(!ui) - ui = new(user, src, ui_key, "ai_restorer", "Integrity Restorer", 600, 400, master_ui, state) - ui.open() - -/datum/computer_file/program/aidiag/kill_program(forced) - restoring = FALSE - return ..(forced) \ No newline at end of file diff --git a/code/modules/modular_computers/file_system/programs/alarm.dm b/code/modules/modular_computers/file_system/programs/alarm.dm deleted file mode 100644 index 0d15e23069..0000000000 --- a/code/modules/modular_computers/file_system/programs/alarm.dm +++ /dev/null @@ -1,110 +0,0 @@ - - - -/datum/computer_file/program/alarm_monitor - filename = "alarmmonitor" - filedesc = "Alarm Monitoring" - ui_header = "alarm_green.gif" - program_icon_state = "alert-green" - extended_desc = "This program provides visual interface for station's alarm system." - requires_ntnet = 1 - network_destination = "alarm monitoring network" - size = 5 - var/has_alert = 0 - var/alarms = list("Fire" = list(), "Atmosphere" = list(), "Power" = list()) - var/alarm_z = list(ZLEVEL_STATION,ZLEVEL_LAVALAND) - -/datum/computer_file/program/alarm_monitor/process_tick() - ..() - - if(has_alert) - program_icon_state = "alert-red" - ui_header = "alarm_red.gif" - update_computer_icon() - else - if(!has_alert) - program_icon_state = "alert-green" - ui_header = "alarm_green.gif" - update_computer_icon() - return 1 - - - -/datum/computer_file/program/alarm_monitor/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = 0, \ - datum/tgui/master_ui = null, datum/ui_state/state = default_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) - if(!ui) - ui = new(user, src, ui_key, "station_alert_prog", "Alarm Monitoring", 300, 500, master_ui, state) - ui.open() - -/datum/computer_file/program/alarm_monitor/ui_data(mob/user) - var/list/data = get_header_data() - - data["alarms"] = list() - for(var/class in alarms) - data["alarms"][class] = list() - for(var/area in alarms[class]) - data["alarms"][class] += area - - return data - -/datum/computer_file/program/alarm_monitor/proc/triggerAlarm(class, area/A, O, obj/source) - - if(!(source.z in alarm_z)) - return - - var/list/L = alarms[class] - for(var/I in L) - if (I == A.name) - var/list/alarm = L[I] - var/list/sources = alarm[3] - if (!(source in sources)) - sources += source - return 1 - var/obj/machinery/camera/C = null - var/list/CL = null - if(O && istype(O, /list)) - CL = O - if (CL.len == 1) - C = CL[1] - else if(O && istype(O, /obj/machinery/camera)) - C = O - L[A.name] = list(A, (C ? C : O), list(source)) - - update_alarm_display() - - return 1 - - -/datum/computer_file/program/alarm_monitor/proc/cancelAlarm(class, area/A, obj/origin) - - - var/list/L = alarms[class] - var/cleared = 0 - for (var/I in L) - if (I == A.name) - var/list/alarm = L[I] - var/list/srcs = alarm[3] - if (origin in srcs) - srcs -= origin - if (srcs.len == 0) - cleared = 1 - L -= I - - update_alarm_display() - return !cleared - -/datum/computer_file/program/alarm_monitor/proc/update_alarm_display() - has_alert = FALSE - for(var/cat in alarms) - var/list/L = alarms[cat] - if(L.len) - has_alert = TRUE - -/datum/computer_file/program/alarm_monitor/run_program(mob/user) - . = ..(user) - alarmdisplay += src - -/datum/computer_file/program/alarm_monitor/kill_program(forced = FALSE) - alarmdisplay -= src - ..() \ No newline at end of file diff --git a/code/modules/modular_computers/file_system/programs/antagonist/dos.dm b/code/modules/modular_computers/file_system/programs/antagonist/dos.dm deleted file mode 100644 index 3d54938ba1..0000000000 --- a/code/modules/modular_computers/file_system/programs/antagonist/dos.dm +++ /dev/null @@ -1,107 +0,0 @@ -/datum/computer_file/program/ntnet_dos - filename = "ntn_dos" - filedesc = "DoS Traffic Generator" - program_icon_state = "hostile" - extended_desc = "This advanced script can perform denial of service attacks against NTNet quantum relays. The system administrator will probably notice this. Multiple devices can run this program together against same relay for increased effect" - size = 20 - requires_ntnet = 1 - available_on_ntnet = 0 - available_on_syndinet = 1 - var/obj/machinery/ntnet_relay/target = null - var/dos_speed = 0 - var/error = "" - var/executed = 0 - -/datum/computer_file/program/ntnet_dos/process_tick() - dos_speed = 0 - switch(ntnet_status) - if(1) - dos_speed = NTNETSPEED_LOWSIGNAL * 10 - if(2) - dos_speed = NTNETSPEED_HIGHSIGNAL * 10 - if(3) - dos_speed = NTNETSPEED_ETHERNET * 10 - if(target && executed) - target.dos_overload += dos_speed - if(!target.is_operational()) - target.dos_sources.Remove(src) - target = null - error = "Connection to destination relay lost." - -/datum/computer_file/program/ntnet_dos/kill_program(forced = FALSE) - if(target) - target.dos_sources.Remove(src) - target = null - executed = 0 - - ..() - - -/datum/computer_file/program/ntnet_dos/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = 0, datum/tgui/master_ui = null, datum/ui_state/state = default_state) - - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) - if (!ui) - ui = new(user, src, ui_key, "ntnet_dos", "DoS Traffic Generator", 400, 250, state = state) - ui.set_style("syndicate") - ui.set_autoupdate(state = 1) - ui.open() - - - -/datum/computer_file/program/ntnet_dos/ui_act(action, params) - if(..()) - return 1 - switch(action) - if("PRG_target_relay") - for(var/obj/machinery/ntnet_relay/R in ntnet_global.relays) - if("[R.uid]" == params["targid"]) - target = R - return 1 - if("PRG_reset") - if(target) - target.dos_sources.Remove(src) - target = null - executed = 0 - error = "" - return 1 - if("PRG_execute") - if(target) - executed = 1 - target.dos_sources.Add(src) - if(ntnet_global.intrusion_detection_enabled) - var/obj/item/weapon/computer_hardware/network_card/network_card = computer.all_components[MC_NET] - ntnet_global.add_log("IDS WARNING - Excess traffic flood targeting relay [target.uid] detected from device: [network_card.get_network_tag()]") - ntnet_global.intrusion_detection_alarm = 1 - return 1 - -/datum/computer_file/program/ntnet_dos/ui_data(mob/user) - if(!ntnet_global) - return - - var/list/data = list() - - data = get_header_data() - - if(error) - data["error"] = error - else if(target && executed) - data["target"] = 1 - data["speed"] = dos_speed - - // This is mostly visual, generate some strings of 1s and 0s - // Probability of 1 is equal of completion percentage of DoS attack on this relay. - // Combined with UI updates this adds quite nice effect to the UI - var/percentage = target.dos_overload * 100 / target.dos_capacity - data["dos_strings"] = list() - for(var/j, j<10, j++) - var/string = "" - for(var/i, i<20, i++) - string = "[string][prob(percentage)]" - data["dos_strings"] += list(list("nums" = string)) - else - data["relays"] = list() - for(var/obj/machinery/ntnet_relay/R in ntnet_global.relays) - data["relays"] += list(list("id" = R.uid)) - data["focus"] = target ? target.uid : null - - return data \ No newline at end of file diff --git a/code/modules/modular_computers/file_system/programs/antagonist/revelation.dm b/code/modules/modular_computers/file_system/programs/antagonist/revelation.dm deleted file mode 100644 index 4278159d1a..0000000000 --- a/code/modules/modular_computers/file_system/programs/antagonist/revelation.dm +++ /dev/null @@ -1,76 +0,0 @@ -/datum/computer_file/program/revelation - filename = "revelation" - filedesc = "Revelation" - program_icon_state = "hostile" - extended_desc = "This virus can destroy hard drive of system it is executed on. It may be obfuscated to look like another non-malicious program. Once armed, it will destroy the system upon next execution." - size = 13 - requires_ntnet = 0 - available_on_ntnet = 0 - available_on_syndinet = 1 - var/armed = 0 - -/datum/computer_file/program/revelation/run_program(var/mob/living/user) - . = ..(user) - if(armed) - activate() - -/datum/computer_file/program/revelation/proc/activate() - if(computer) - computer.visible_message("\The [computer]'s screen brightly flashes and loud electrical buzzing is heard.") - computer.enabled = 0 - computer.update_icon() - var/obj/item/weapon/computer_hardware/hard_drive/hard_drive = computer.all_components[MC_HDD] - var/obj/item/weapon/computer_hardware/battery/battery_module = computer.all_components[MC_CELL] - var/obj/item/weapon/computer_hardware/recharger/recharger = computer.all_components[MC_CHARGE] - qdel(hard_drive) - computer.take_damage(25, BRUTE, 0, 0) - if(battery_module && prob(25)) - qdel(battery_module) - computer.visible_message("\The [computer]'s battery explodes in rain of sparks.") - var/datum/effect_system/spark_spread/spark_system = new /datum/effect_system/spark_spread - spark_system.start() - - if(recharger && prob(50)) - qdel(recharger) - computer.visible_message("\The [computer]'s recharger explodes in rain of sparks.") - var/datum/effect_system/spark_spread/spark_system = new /datum/effect_system/spark_spread - spark_system.start() - - -/datum/computer_file/program/revelation/ui_act(action, params) - if(..()) - return 1 - switch(action) - if("PRG_arm") - armed = !armed - if("PRG_activate") - activate() - if("PRG_obfuscate") - var/mob/living/user = usr - var/newname = sanitize(input(user, "Enter new program name: ")) - if(!newname) - return - filedesc = newname - - -/datum/computer_file/program/revelation/clone() - var/datum/computer_file/program/revelation/temp = ..() - temp.armed = armed - return temp - -/datum/computer_file/program/revelation/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = 0, datum/tgui/master_ui = null, datum/ui_state/state = default_state) - - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) - if (!ui) - ui = new(user, src, ui_key, "revelation", "Revelation Virus", 400, 250, state = state) - ui.set_style("syndicate") - ui.set_autoupdate(state = 1) - ui.open() - - -/datum/computer_file/program/revelation/ui_data(mob/user) - var/list/data = get_header_data() - - data["armed"] = armed - - return data \ No newline at end of file diff --git a/code/modules/modular_computers/file_system/programs/card.dm b/code/modules/modular_computers/file_system/programs/card.dm deleted file mode 100644 index 0f1b03f4b3..0000000000 --- a/code/modules/modular_computers/file_system/programs/card.dm +++ /dev/null @@ -1,488 +0,0 @@ -/datum/computer_file/program/card_mod - filename = "cardmod" - filedesc = "ID card modification program" - program_icon_state = "id" - extended_desc = "Program for programming employee ID cards to access parts of the station." - transfer_access = access_change_ids - requires_ntnet = 0 - size = 8 - var/mod_mode = 1 - var/is_centcom = 0 - var/show_assignments = 0 - var/minor = 0 - var/authenticated = 0 - var/list/reg_ids = list() - var/list/region_access = null - var/list/head_subordinates = null - var/target_dept = 0 //Which department this computer has access to. 0=all departments - var/change_position_cooldown = 60 - //Jobs you cannot open new positions for - var/list/blacklisted = list( - "AI", - "Assistant", - "Cyborg", - "Captain", - "Head of Personnel", - "Head of Security", - "Chief Engineer", - "Research Director", - "Chief Medical Officer", - "Chaplain") - - //The scaling factor of max total positions in relation to the total amount of people on board the station in % - var/max_relative_positions = 30 //30%: Seems reasonable, limit of 6 @ 20 players - - //This is used to keep track of opened positions for jobs to allow instant closing - //Assoc array: "JobName" = (int) - var/list/opened_positions = list(); - - -/datum/computer_file/program/card_mod/event_idremoved(background, slot) - if(slot == 2) - minor = 0 - authenticated = 0 - head_subordinates = null - region_access = null - - -/datum/computer_file/program/card_mod/proc/job_blacklisted(jobtitle) - return (jobtitle in blacklisted) - - -//Logic check for if you can open the job -/datum/computer_file/program/card_mod/proc/can_open_job(datum/job/job) - if(job) - if(!job_blacklisted(job.title)) - if((job.total_positions <= player_list.len * (max_relative_positions / 100))) - var/delta = (world.time / 10) - time_last_changed_position - if((change_position_cooldown < delta) || (opened_positions[job.title] < 0)) - return 1 - return -2 - return 0 - return 0 - -//Logic check for if you can close the job -/datum/computer_file/program/card_mod/proc/can_close_job(datum/job/job) - if(job) - if(!job_blacklisted(job.title)) - if(job.total_positions > job.current_positions) - var/delta = (world.time / 10) - time_last_changed_position - if((change_position_cooldown < delta) || (opened_positions[job.title] > 0)) - return 1 - return -2 - return 0 - return 0 - - -/datum/computer_file/program/card_mod/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = 0, datum/tgui/master_ui = null, datum/ui_state/state = default_state) - - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) - if (!ui) - - var/datum/asset/assets = get_asset_datum(/datum/asset/simple/headers) - assets.send(user) - - ui = new(user, src, ui_key, "identification_computer", "ID card modification program", 600, 700, state = state) - ui.open() - ui.set_autoupdate(state = 1) - - -/datum/computer_file/program/card_mod/proc/format_jobs(list/jobs) - var/obj/item/weapon/computer_hardware/card_slot/card_slot = computer.all_components[MC_CARD] - var/obj/item/weapon/card/id/id_card = card_slot.stored_card - var/list/formatted = list() - for(var/job in jobs) - formatted.Add(list(list( - "display_name" = replacetext(job, " ", " "), - "target_rank" = id_card && id_card.assignment ? id_card.assignment : "Unassigned", - "job" = job))) - - return formatted - -/datum/computer_file/program/card_mod/ui_act(action, params) - if(..()) - return 1 - - var/obj/item/weapon/computer_hardware/card_slot/card_slot - var/obj/item/weapon/computer_hardware/printer/printer - if(computer) - card_slot = computer.all_components[MC_CARD] - printer = computer.all_components[MC_PRINT] - if(!card_slot) - return - - var/obj/item/weapon/card/id/user_id_card = null - var/mob/user = usr - - var/obj/item/weapon/card/id/id_card = card_slot.stored_card - var/obj/item/weapon/card/id/auth_card = card_slot.stored_card2 - - if(auth_card) - user_id_card = auth_card - else - if(ishuman(user)) - var/mob/living/carbon/human/h = user - user_id_card = h.get_idcard() - - switch(action) - if("PRG_switchm") - if(params["target"] == "mod") - mod_mode = 1 - else if (params["target"] == "manifest") - mod_mode = 0 - else if (params["target"] == "manage") - mod_mode = 2 - if("PRG_togglea") - if(show_assignments) - show_assignments = 0 - else - show_assignments = 1 - if("PRG_print") - if(computer && printer) //This option should never be called if there is no printer - if(mod_mode) - if(authorized()) - var/contents = {"

    Access Report

    - Prepared By: [user_id_card && user_id_card.registered_name ? user_id_card.registered_name : "Unknown"]
    - For: [id_card.registered_name ? id_card.registered_name : "Unregistered"]
    -
    - Assignment: [id_card.assignment]
    - Access:
    - "} - - var/known_access_rights = get_all_accesses() - for(var/A in id_card.access) - if(A in known_access_rights) - contents += " [get_access_desc(A)]" - - if(!printer.print_text(contents,"access report")) - usr << "Hardware error: Printer was unable to print the file. It may be out of paper." - return - else - computer.visible_message("\The [computer] prints out paper.") - else - var/contents = {"

    Crew Manifest

    -
    - [data_core ? data_core.get_manifest(0) : ""] - "} - if(!printer.print_text(contents,text("crew manifest ([])", worldtime2text()))) - usr << "Hardware error: Printer was unable to print the file. It may be out of paper." - return - else - computer.visible_message("\The [computer] prints out paper.") - if("PRG_eject") - if(computer && card_slot) - var/select = params["target"] - switch(select) - if("id") - if(id_card) - data_core.manifest_modify(id_card.registered_name, id_card.assignment) - card_slot.try_eject(, user) - else - var/obj/item/I = usr.get_active_held_item() - if (istype(I, /obj/item/weapon/card/id)) - if(!usr.drop_item()) - return - I.forceMove(computer) - card_slot.stored_card = I - if("auth") - if(auth_card) - if(id_card) - data_core.manifest_modify(id_card.registered_name, id_card.assignment) - head_subordinates = null - region_access = null - authenticated = 0 - minor = 0 - card_slot.try_eject(, user) - else - var/obj/item/I = usr.get_active_held_item() - if (istype(I, /obj/item/weapon/card/id)) - if(!usr.drop_item()) - return - I.forceMove(computer) - card_slot.stored_card2 = I - if("PRG_terminate") - if(computer && ((id_card.assignment in head_subordinates) || id_card.assignment == "Assistant")) - id_card.assignment = "Unassigned" - remove_nt_access(id_card) - - if("PRG_edit") - if(computer && authorized()) - if(params["name"]) - var/temp_name = reject_bad_name(input("Enter name.", "Name", id_card.registered_name)) - if(temp_name) - id_card.registered_name = temp_name - else - computer.visible_message("[computer] buzzes rudely.") - //else if(params["account"]) - // var/account_num = text2num(input("Enter account number.", "Account", id_card.associated_account_number)) - // id_card.associated_account_number = account_num - if("PRG_assign") - if(computer && authorized() && id_card) - var/t1 = params["assign_target"] - if(t1 == "Custom") - var/temp_t = reject_bad_text(input("Enter a custom job assignment.","Assignment", id_card.assignment), 45) - //let custom jobs function as an impromptu alt title, mainly for sechuds - if(temp_t) - id_card.assignment = temp_t - else - var/list/access = list() - if(is_centcom) - access = get_centcom_access(t1) - else - var/datum/job/jobdatum - for(var/jobtype in typesof(/datum/job)) - var/datum/job/J = new jobtype - if(ckey(J.title) == ckey(t1)) - jobdatum = J - break - if(!jobdatum) - usr << "No log exists for this job: [t1]" - return - - access = jobdatum.get_access() - - remove_nt_access(id_card) - apply_access(id_card, access) - id_card.assignment = t1 - - if("PRG_access") - if(params["allowed"] && computer && authorized()) - var/access_type = text2num(params["access_target"]) - var/access_allowed = text2num(params["allowed"]) - if(access_type in (is_centcom ? get_all_centcom_access() : get_all_accesses())) - id_card.access -= access_type - if(!access_allowed) - id_card.access += access_type - if("PRG_open_job") - var/edit_job_target = params["target"] - var/datum/job/j = SSjob.GetJob(edit_job_target) - if(!j) - return 0 - if(can_open_job(j) != 1) - return 0 - if(opened_positions[edit_job_target] >= 0) - time_last_changed_position = world.time / 10 - j.total_positions++ - opened_positions[edit_job_target]++ - if("PRG_close_job") - var/edit_job_target = params["target"] - var/datum/job/j = SSjob.GetJob(edit_job_target) - if(!j) - return 0 - if(can_close_job(j) != 1) - return 0 - //Allow instant closing without cooldown if a position has been opened before - if(opened_positions[edit_job_target] <= 0) - time_last_changed_position = world.time / 10 - j.total_positions-- - opened_positions[edit_job_target]-- - if("PRG_regsel") - if(!reg_ids) - reg_ids = list() - var/regsel = text2num(params["region"]) - if(regsel in reg_ids) - reg_ids -= regsel - else - reg_ids += regsel - - if(id_card) - id_card.name = text("[id_card.registered_name]'s ID Card ([id_card.assignment])") - - return 1 - -/datum/computer_file/program/card_mod/proc/remove_nt_access(obj/item/weapon/card/id/id_card) - id_card.access -= get_all_accesses() - id_card.access -= get_all_centcom_access() - -/datum/computer_file/program/card_mod/proc/apply_access(obj/item/weapon/card/id/id_card, list/accesses) - id_card.access |= accesses - -/datum/computer_file/program/card_mod/ui_data(mob/user) - - var/list/data = get_header_data() - - var/obj/item/weapon/computer_hardware/card_slot/card_slot - var/obj/item/weapon/computer_hardware/printer/printer - - if(computer) - card_slot = computer.all_components[MC_CARD] - printer = computer.all_components[MC_PRINT] - - data["mmode"] = mod_mode - - var/authed = 0 - if(computer) - if(card_slot) - var/obj/item/weapon/card/id/auth_card = card_slot.stored_card2 - data["auth_name"] = auth_card ? strip_html_simple(auth_card.name) : "-----" - authed = authorized() - - - if(mod_mode == 2) - data["slots"] = list() - var/list/pos = list() - for(var/datum/job/job in SSjob.occupations) - if(job.title in blacklisted) - continue - - var/list/status_open = build_manage(job,1) - var/list/status_close = build_manage(job,0) - - pos.Add(list(list( - "title" = job.title, - "current" = job.current_positions, - "total" = job.total_positions, - "status_open" = authed ? status_open["enable"]: 0, - "status_close" = authed ? status_close["enable"] : 0, - "desc_open" = status_open["desc"], - "desc_close" = status_close["desc"]))) - data["slots"] = pos - - data["src"] = "\ref[src]" - data["station_name"] = station_name() - - - if(!mod_mode) - data["manifest"] = list() - var/list/crew = list() - for(var/datum/data/record/t in sortRecord(data_core.general)) - crew.Add(list(list( - "name" = t.fields["name"], - "rank" = t.fields["rank"]))) - - data["manifest"] = crew - data["assignments"] = show_assignments - if(computer) - data["have_id_slot"] = !!card_slot - data["have_printer"] = !!printer - if(!card_slot && mod_mode == 1) - mod_mode = 0 //We can't modify IDs when there is no card reader - else - data["have_id_slot"] = 0 - data["have_printer"] = 0 - - data["centcom_access"] = is_centcom - - - data["authenticated"] = authed - - - if(mod_mode == 1 && computer) - if(card_slot) - var/obj/item/weapon/card/id/id_card = card_slot.stored_card - - data["has_id"] = !!id_card - data["id_rank"] = id_card && id_card.assignment ? html_encode(id_card.assignment) : "Unassigned" - data["id_owner"] = id_card && id_card.registered_name ? html_encode(id_card.registered_name) : "-----" - data["id_name"] = id_card ? strip_html_simple(id_card.name) : "-----" - - if(show_assignments) - data["engineering_jobs"] = format_jobs(engineering_positions) - data["medical_jobs"] = format_jobs(medical_positions) - data["science_jobs"] = format_jobs(science_positions) - data["security_jobs"] = format_jobs(security_positions) - data["cargo_jobs"] = format_jobs(supply_positions) - data["civilian_jobs"] = format_jobs(civilian_positions) - data["centcom_jobs"] = format_jobs(get_all_centcom_jobs()) - - - if(card_slot.stored_card) - var/obj/item/weapon/card/id/id_card = card_slot.stored_card - if(is_centcom) - var/list/all_centcom_access = list() - for(var/access in get_all_centcom_access()) - all_centcom_access.Add(list(list( - "desc" = replacetext(get_centcom_access_desc(access), " ", " "), - "ref" = access, - "allowed" = (access in id_card.access) ? 1 : 0))) - data["all_centcom_access"] = all_centcom_access - else - var/list/regions = list() - for(var/i = 1; i <= 7; i++) - if((minor || target_dept) && !(i in region_access)) - continue - - var/list/accesses = list() - if(i in reg_ids) - for(var/access in get_region_accesses(i)) - if (get_access_desc(access)) - accesses.Add(list(list( - "desc" = replacetext(get_access_desc(access), " ", " "), - "ref" = access, - "allowed" = (access in id_card.access) ? 1 : 0))) - - regions.Add(list(list( - "name" = get_region_accesses_name(i), - "regid" = i, - "selected" = (i in reg_ids) ? 1 : null, - "accesses" = accesses))) - data["regions"] = regions - - data["minor"] = target_dept || minor ? 1 : 0 - - - return data - - -/datum/computer_file/program/card_mod/proc/build_manage(datum/job,open = 0) - var/out = "Denied" - var/can_change= 0 - if(open) - can_change = can_open_job(job) - else - can_change = can_close_job(job) - var/enable = 0 - if(can_change == 1) - out = "[open ? "Open Position" : "Close Position"]" - enable = 1 - else if(can_change == -2) - var/time_to_wait = round(change_position_cooldown - ((world.time / 10) - time_last_changed_position), 1) - var/mins = round(time_to_wait / 60) - var/seconds = time_to_wait - (60*mins) - out = "Cooldown ongoing: [mins]:[(seconds < 10) ? "0[seconds]" : "[seconds]"]" - else - out = "Denied" - - return list("enable" = enable, "desc" = out) - - -/datum/computer_file/program/card_mod/proc/authorized() - if(!authenticated && computer) - var/obj/item/weapon/computer_hardware/card_slot/card_slot = computer.all_components[MC_CARD] - if(card_slot) - var/obj/item/weapon/card/id/auth_card = card_slot.stored_card2 - if(auth_card) - region_access = list() - if(transfer_access in auth_card.GetAccess()) - minor = 0 - authenticated = 1 - return 1 - else - if((access_hop in auth_card.access) && ((target_dept==1) || !target_dept)) - region_access |= 1 - region_access |= 6 - get_subordinates("Head of Personnel") - if((access_hos in auth_card.access) && ((target_dept==2) || !target_dept)) - region_access |= 2 - get_subordinates("Head of Security") - if((access_cmo in auth_card.access) && ((target_dept==3) || !target_dept)) - region_access |= 3 - get_subordinates("Chief Medical Officer") - if((access_rd in auth_card.access) && ((target_dept==4) || !target_dept)) - region_access |= 4 - get_subordinates("Research Director") - if((access_ce in auth_card.access) && ((target_dept==5) || !target_dept)) - region_access |= 5 - get_subordinates("Chief Engineer") - if(region_access) - minor = 1 - authenticated = 1 - return 1 - else - return authenticated - -/datum/computer_file/program/card_mod/proc/get_subordinates(rank) - head_subordinates = list() - for(var/datum/job/job in SSjob.occupations) - if(rank in job.department_head) - head_subordinates += job.title diff --git a/code/modules/modular_computers/file_system/programs/configurator.dm b/code/modules/modular_computers/file_system/programs/configurator.dm deleted file mode 100644 index 57348d2744..0000000000 --- a/code/modules/modular_computers/file_system/programs/configurator.dm +++ /dev/null @@ -1,77 +0,0 @@ -// This is special hardware configuration program. -// It is to be used only with modular computers. -// It allows you to toggle components of your device. - -/datum/computer_file/program/computerconfig - filename = "compconfig" - filedesc = "Computer Configuration Tool" - extended_desc = "This program allows configuration of computer's hardware" - program_icon_state = "generic" - unsendable = 1 - undeletable = 1 - size = 4 - available_on_ntnet = 0 - requires_ntnet = 0 - var/obj/item/device/modular_computer/movable = null - - -/datum/computer_file/program/computerconfig/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = 0, datum/tgui/master_ui = null, datum/ui_state/state = default_state) - - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) - if (!ui) - - var/datum/asset/assets = get_asset_datum(/datum/asset/simple/headers) - assets.send(user) - - ui = new(user, src, ui_key, "laptop_configuration", "NTOS Configuration Utility", 575, 700, state = state) - ui.open() - ui.set_autoupdate(state = 1) - -/datum/computer_file/program/computerconfig/ui_data(mob/user) - movable = computer - var/obj/item/weapon/computer_hardware/hard_drive/hard_drive = movable.all_components[MC_HDD] - var/obj/item/weapon/computer_hardware/battery/battery_module = movable.all_components[MC_CELL] - if(!istype(movable)) - movable = null - - // No computer connection, we can't get data from that. - if(!movable) - return 0 - - var/list/data = get_header_data() - - data["disk_size"] = hard_drive.max_capacity - data["disk_used"] = hard_drive.used_capacity - data["power_usage"] = movable.last_power_usage - data["battery_exists"] = battery_module ? 1 : 0 - if(battery_module && battery_module.battery) - data["battery_rating"] = battery_module.battery.maxcharge - data["battery_percent"] = round(battery_module.battery.percent()) - - if(battery_module && battery_module.battery) - data["battery"] = list("max" = battery_module.battery.maxcharge, "charge" = round(battery_module.battery.charge)) - - var/list/all_entries[0] - for(var/I in movable.all_components) - var/obj/item/weapon/computer_hardware/H = movable.all_components[I] - all_entries.Add(list(list( - "name" = H.name, - "desc" = H.desc, - "enabled" = H.enabled, - "critical" = H.critical, - "powerusage" = H.power_usage - ))) - - data["hardware"] = all_entries - return data - - -/datum/computer_file/program/computerconfig/ui_act(action,params) - if(..()) - return - switch(action) - if("PC_toggle_component") - var/obj/item/weapon/computer_hardware/H = movable.find_hardware_by_name(params["name"]) - if(H && istype(H)) - H.enabled = !H.enabled - . = TRUE diff --git a/code/modules/modular_computers/file_system/programs/file_browser.dm b/code/modules/modular_computers/file_system/programs/file_browser.dm deleted file mode 100644 index 50a07014e5..0000000000 --- a/code/modules/modular_computers/file_system/programs/file_browser.dm +++ /dev/null @@ -1,230 +0,0 @@ -/datum/computer_file/program/filemanager - filename = "filemanager" - filedesc = "NTOS File Manager" - extended_desc = "This program allows management of files." - program_icon_state = "generic" - size = 8 - requires_ntnet = 0 - available_on_ntnet = 0 - undeletable = 1 - var/open_file - var/error - -/datum/computer_file/program/filemanager/ui_act(action, params) - if(..()) - return 1 - - var/obj/item/weapon/computer_hardware/hard_drive/HDD = computer.all_components[MC_HDD] - var/obj/item/weapon/computer_hardware/hard_drive/RHDD = computer.all_components[MC_HDD] - var/obj/item/weapon/computer_hardware/printer/printer = computer.all_components[MC_PRINT] - - switch(action) - if("PRG_openfile") - . = 1 - open_file = params["name"] - if("PRG_newtextfile") - . = 1 - var/newname = sanitize(input(usr, "Enter file name or leave blank to cancel:", "File rename")) - if(!newname) - return 1 - if(!HDD) - return 1 - var/datum/computer_file/data/F = new/datum/computer_file/data() - F.filename = newname - F.filetype = "TXT" - HDD.store_file(F) - if("PRG_deletefile") - . = 1 - if(!HDD) - return 1 - var/datum/computer_file/file = HDD.find_file_by_name(params["name"]) - if(!file || file.undeletable) - return 1 - HDD.remove_file(file) - if("PRG_usbdeletefile") - . = 1 - if(!RHDD) - return 1 - var/datum/computer_file/file = RHDD.find_file_by_name(params["name"]) - if(!file || file.undeletable) - return 1 - RHDD.remove_file(file) - if("PRG_closefile") - . = 1 - open_file = null - error = null - if("PRG_clone") - . = 1 - if(!HDD) - return 1 - var/datum/computer_file/F = HDD.find_file_by_name(params["name"]) - if(!F || !istype(F)) - return 1 - var/datum/computer_file/C = F.clone(1) - HDD.store_file(C) - if("PRG_rename") - . = 1 - if(!HDD) - return 1 - var/datum/computer_file/file = HDD.find_file_by_name(params["name"]) - if(!file || !istype(file)) - return 1 - var/newname = sanitize(input(usr, "Enter new file name:", "File rename", file.filename)) - if(file && newname) - file.filename = newname - if("PRG_edit") - . = 1 - if(!open_file) - return 1 - if(!HDD) - return 1 - var/datum/computer_file/data/F = HDD.find_file_by_name(open_file) - if(!F || !istype(F)) - return 1 - if(F.do_not_edit && (alert("WARNING: This file is not compatible with editor. Editing it may result in permanently corrupted formatting or damaged data consistency. Edit anyway?", "Incompatible File", "No", "Yes") == "No")) - return 1 - // 16384 is the limit for file length in characters. Currently, papers have value of 2048 so this is 8 times as long, since we can't edit parts of the file independently. - var/newtext = sanitize(html_decode(input(usr, "Editing file [open_file]. You may use most tags used in paper formatting:", "Text Editor", F.stored_data) as message|null), 16384) - if(!newtext) - return - if(F) - var/datum/computer_file/data/backup = F.clone() - HDD.remove_file(F) - F.stored_data = newtext - F.calculate_size() - // We can't store the updated file, it's probably too large. Print an error and restore backed up version. - // This is mostly intended to prevent people from losing texts they spent lot of time working on due to running out of space. - // They will be able to copy-paste the text from error screen and store it in notepad or something. - if(!HDD.store_file(F)) - error = "I/O error: Unable to overwrite file. Hard drive is probably full. You may want to backup your changes before closing this window:

    [F.stored_data]

    " - HDD.store_file(backup) - if("PRG_printfile") - . = 1 - if(!open_file) - return 1 - if(!HDD) - return 1 - var/datum/computer_file/data/F = HDD.find_file_by_name(open_file) - if(!F || !istype(F)) - return 1 - if(!printer) - error = "Missing Hardware: Your computer does not have required hardware to complete this operation." - return 1 - if(!printer.print_text(parse_tags(F.stored_data))) - error = "Hardware error: Printer was unable to print the file. It may be out of paper." - return 1 - if("PRG_copytousb") - . = 1 - if(!HDD || !RHDD) - return 1 - var/datum/computer_file/F = HDD.find_file_by_name(params["name"]) - if(!F || !istype(F)) - return 1 - var/datum/computer_file/C = F.clone(0) - RHDD.store_file(C) - if("PRG_copyfromusb") - . = 1 - if(!HDD || !RHDD) - return 1 - var/datum/computer_file/F = RHDD.find_file_by_name(params["name"]) - if(!F || !istype(F)) - return 1 - var/datum/computer_file/C = F.clone(0) - HDD.store_file(C) - - -/datum/computer_file/program/filemanager/proc/parse_tags(t) - t = replacetext(t, "\[center\]", "
    ") - t = replacetext(t, "\[/center\]", "
    ") - t = replacetext(t, "\[br\]", "
    ") - t = replacetext(t, "\[b\]", "") - t = replacetext(t, "\[/b\]", "") - t = replacetext(t, "\[i\]", "") - t = replacetext(t, "\[/i\]", "") - t = replacetext(t, "\[u\]", "") - t = replacetext(t, "\[/u\]", "") - t = replacetext(t, "\[time\]", "[worldtime2text()]") - t = replacetext(t, "\[date\]", "[time2text(world.realtime, "MMM DD")] [year_integer+540]") - t = replacetext(t, "\[large\]", "") - t = replacetext(t, "\[/large\]", "") - t = replacetext(t, "\[h1\]", "

    ") - t = replacetext(t, "\[/h1\]", "

    ") - t = replacetext(t, "\[h2\]", "

    ") - t = replacetext(t, "\[/h2\]", "

    ") - t = replacetext(t, "\[h3\]", "

    ") - t = replacetext(t, "\[/h3\]", "

    ") - t = replacetext(t, "\[*\]", "
  7. ") - t = replacetext(t, "\[hr\]", "
    ") - t = replacetext(t, "\[small\]", "") - t = replacetext(t, "\[/small\]", "") - t = replacetext(t, "\[list\]", "
      ") - t = replacetext(t, "\[/list\]", "
    ") - t = replacetext(t, "\[table\]", "") - t = replacetext(t, "\[/table\]", "
    ") - t = replacetext(t, "\[grid\]", "") - t = replacetext(t, "\[/grid\]", "
    ") - t = replacetext(t, "\[row\]", "
  8. ") - t = replacetext(t, "\[cell\]", "") - t = replacetext(t, "\[logo\]", "") - return t - - -/datum/computer_file/program/filemanager/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = 0, datum/tgui/master_ui = null, datum/ui_state/state = default_state) - - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) - if (!ui) - - var/datum/asset/assets = get_asset_datum(/datum/asset/simple/headers) - assets.send(user) - - ui = new(user, src, ui_key, "file_manager", "NTOS File Manage", 575, 700, state = state) - ui.open() - ui.set_autoupdate(state = 1) - -/datum/computer_file/program/filemanager/ui_data(mob/user) - var/list/data = get_header_data() - - var/obj/item/weapon/computer_hardware/hard_drive/HDD = computer.all_components[MC_HDD] - var/obj/item/weapon/computer_hardware/hard_drive/portable/RHDD = computer.all_components[MC_SDD] - if(error) - data["error"] = error - if(open_file) - var/datum/computer_file/data/file - - if(!computer || !HDD) - data["error"] = "I/O ERROR: Unable to access hard drive." - else - file = HDD.find_file_by_name(open_file) - if(!istype(file)) - data["error"] = "I/O ERROR: Unable to open file." - else - data["filedata"] = parse_tags(file.stored_data) - data["filename"] = "[file.filename].[file.filetype]" - else - if(!computer || !HDD) - data["error"] = "I/O ERROR: Unable to access hard drive." - else - var/list/files[0] - for(var/datum/computer_file/F in HDD.stored_files) - files.Add(list(list( - "name" = F.filename, - "type" = F.filetype, - "size" = F.size, - "undeletable" = F.undeletable - ))) - data["files"] = files - if(RHDD) - data["usbconnected"] = 1 - var/list/usbfiles[0] - for(var/datum/computer_file/F in RHDD.stored_files) - usbfiles.Add(list(list( - "name" = F.filename, - "type" = F.filetype, - "size" = F.size, - "undeletable" = F.undeletable - ))) - data["usbfiles"] = usbfiles - - return data \ No newline at end of file diff --git a/code/modules/modular_computers/file_system/programs/ntdownloader.dm b/code/modules/modular_computers/file_system/programs/ntdownloader.dm deleted file mode 100644 index 01d5dd3d91..0000000000 --- a/code/modules/modular_computers/file_system/programs/ntdownloader.dm +++ /dev/null @@ -1,178 +0,0 @@ -/datum/computer_file/program/ntnetdownload - filename = "ntndownloader" - filedesc = "NTNet Software Download Tool" - program_icon_state = "generic" - extended_desc = "This program allows downloads of software from official NT repositories" - unsendable = 1 - undeletable = 1 - size = 4 - requires_ntnet = 1 - requires_ntnet_feature = NTNET_SOFTWAREDOWNLOAD - available_on_ntnet = 0 - ui_header = "downloader_finished.gif" - var/datum/computer_file/program/downloaded_file = null - var/hacked_download = 0 - var/download_completion = 0 //GQ of downloaded data. - var/download_netspeed = 0 - var/downloaderror = "" - var/obj/item/device/modular_computer/my_computer = null - -/datum/computer_file/program/ntnetdownload/proc/begin_file_download(filename) - if(downloaded_file) - return 0 - - var/datum/computer_file/program/PRG = ntnet_global.find_ntnet_file_by_name(filename) - - if(!PRG || !istype(PRG)) - return 0 - - // Attempting to download antag only program, but without having emagged computer. No. - if(PRG.available_on_syndinet && !computer.emagged) - return 0 - - var/obj/item/weapon/computer_hardware/hard_drive/hard_drive = computer.all_components[MC_HDD] - - if(!computer || !hard_drive || !hard_drive.can_store_file(PRG)) - return 0 - - ui_header = "downloader_running.gif" - - if(PRG in ntnet_global.available_station_software) - generate_network_log("Began downloading file [PRG.filename].[PRG.filetype] from NTNet Software Repository.") - hacked_download = 0 - else if(PRG in ntnet_global.available_antag_software) - generate_network_log("Began downloading file **ENCRYPTED**.[PRG.filetype] from unspecified server.") - hacked_download = 1 - else - generate_network_log("Began downloading file [PRG.filename].[PRG.filetype] from unspecified server.") - hacked_download = 0 - - downloaded_file = PRG.clone() - -/datum/computer_file/program/ntnetdownload/proc/abort_file_download() - if(!downloaded_file) - return - generate_network_log("Aborted download of file [hacked_download ? "**ENCRYPTED**" : "[downloaded_file.filename].[downloaded_file.filetype]"].") - downloaded_file = null - download_completion = 0 - ui_header = "downloader_finished.gif" - -/datum/computer_file/program/ntnetdownload/proc/complete_file_download() - if(!downloaded_file) - return - generate_network_log("Completed download of file [hacked_download ? "**ENCRYPTED**" : "[downloaded_file.filename].[downloaded_file.filetype]"].") - var/obj/item/weapon/computer_hardware/hard_drive/hard_drive = computer.all_components[MC_HDD] - if(!computer || !hard_drive || !hard_drive.store_file(downloaded_file)) - // The download failed - downloaderror = "I/O ERROR - Unable to save file. Check whether you have enough free space on your hard drive and whether your hard drive is properly connected. If the issue persists contact your system administrator for assistance." - downloaded_file = null - download_completion = 0 - ui_header = "downloader_finished.gif" - -/datum/computer_file/program/ntnetdownload/process_tick() - if(!downloaded_file) - return - if(download_completion >= downloaded_file.size) - complete_file_download() - // Download speed according to connectivity state. NTNet server is assumed to be on unlimited speed so we're limited by our local connectivity - download_netspeed = 0 - // Speed defines are found in misc.dm - switch(ntnet_status) - if(1) - download_netspeed = NTNETSPEED_LOWSIGNAL - if(2) - download_netspeed = NTNETSPEED_HIGHSIGNAL - if(3) - download_netspeed = NTNETSPEED_ETHERNET - download_completion += download_netspeed - -/datum/computer_file/program/ntnetdownload/ui_act(action, params) - if(..()) - return 1 - switch(action) - if("PRG_downloadfile") - if(!downloaded_file) - begin_file_download(params["filename"]) - return 1 - if("PRG_reseterror") - if(downloaderror) - download_completion = 0 - download_netspeed = 0 - downloaded_file = null - downloaderror = "" - return 1 - return 0 - -/datum/computer_file/program/ntnetdownload/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = 0, datum/tgui/master_ui = null, datum/ui_state/state = default_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) - if (!ui) - - var/datum/asset/assets = get_asset_datum(/datum/asset/simple/headers) - assets.send(user) - - ui = new(user, src, ui_key, "ntnet_downloader", "NTNet Download Program", 575, 700, state = state) - ui.open() - ui.set_autoupdate(state = 1) - -/datum/computer_file/program/ntnetdownload/ui_data(mob/user) - my_computer = computer - - if(!istype(my_computer)) - return - - var/list/data = get_header_data() - - // This IF cuts on data transferred to client, so i guess it's worth it. - if(downloaderror) // Download errored. Wait until user resets the program. - data["error"] = downloaderror - else if(downloaded_file) // Download running. Wait please.. - data["downloadname"] = downloaded_file.filename - data["downloaddesc"] = downloaded_file.filedesc - data["downloadsize"] = downloaded_file.size - data["downloadspeed"] = download_netspeed - data["downloadcompletion"] = round(download_completion, 0.1) - else // No download running, pick file. - var/obj/item/weapon/computer_hardware/hard_drive/hard_drive = my_computer.all_components[MC_HDD] - data["disk_size"] = hard_drive.max_capacity - data["disk_used"] = hard_drive.used_capacity - var/list/all_entries[0] - for(var/A in ntnet_global.available_station_software) - var/datum/computer_file/program/P = A - // Only those programs our user can run will show in the list - if(!P.can_run(user,transfer = 1)) - continue - all_entries.Add(list(list( - "filename" = P.filename, - "filedesc" = P.filedesc, - "fileinfo" = P.extended_desc, - "compatibility" = check_compatibility(P), - "size" = P.size - ))) - data["hackedavailable"] = 0 - if(computer.emagged) // If we are running on emagged computer we have access to some "bonus" software - var/list/hacked_programs[0] - for(var/S in ntnet_global.available_antag_software) - var/datum/computer_file/program/P = S - data["hackedavailable"] = 1 - hacked_programs.Add(list(list( - "filename" = P.filename, - "filedesc" = P.filedesc, - "fileinfo" = P.extended_desc, - "size" = P.size - ))) - data["hacked_programs"] = hacked_programs - - data["downloadable_programs"] = all_entries - - return data - -/datum/computer_file/program/ntnetdownload/proc/check_compatibility(datum/computer_file/program/P) - var/hardflag = computer.hardware_flag - - if(P && P.is_supported_by_hardware(hardflag,0)) - return "Compatible" - return "Incompatible!" - -/datum/computer_file/program/ntnetdownload/kill_program(forced) - abort_file_download() - return ..(forced) \ No newline at end of file diff --git a/code/modules/modular_computers/file_system/programs/ntmonitor.dm b/code/modules/modular_computers/file_system/programs/ntmonitor.dm deleted file mode 100644 index e12299b250..0000000000 --- a/code/modules/modular_computers/file_system/programs/ntmonitor.dm +++ /dev/null @@ -1,94 +0,0 @@ -/datum/computer_file/program/ntnetmonitor - filename = "ntmonitor" - filedesc = "NTNet Diagnostics and Monitoring" - program_icon_state = "comm_monitor" - extended_desc = "This program monitors stationwide NTNet network, provides access to logging systems, and allows for configuration changes" - size = 12 - requires_ntnet = 1 - required_access = access_network //Network control is a more secure program. - available_on_ntnet = 1 - -/datum/computer_file/program/ntnetmonitor/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = 0, datum/tgui/master_ui = null, datum/ui_state/state = default_state) - - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) - if (!ui) - - var/datum/asset/assets = get_asset_datum(/datum/asset/simple/headers) - assets.send(user) - - - ui = new(user, src, ui_key, "ntnet_monitor", "NTNet Diagnostics and Monitoring Tool", 575, 700, state = state) - ui.open() - ui.set_autoupdate(state = 1) - - -/datum/computer_file/program/ntnetmonitor/ui_act(action, params) - if(..()) - return 1 - switch(action) - if("resetIDS") - . = 1 - if(ntnet_global) - ntnet_global.resetIDS() - return 1 - if("toggleIDS") - . = 1 - if(ntnet_global) - ntnet_global.toggleIDS() - return 1 - if("toggleWireless") - . = 1 - if(!ntnet_global) - return 1 - - // NTNet is disabled. Enabling can be done without user prompt - if(ntnet_global.setting_disabled) - ntnet_global.setting_disabled = 0 - return 1 - - // NTNet is enabled and user is about to shut it down. Let's ask them if they really want to do it, as wirelessly connected computers won't connect without NTNet being enabled (which may prevent people from turning it back on) - var/mob/user = usr - if(!user) - return 1 - var/response = alert(user, "Really disable NTNet wireless? If your computer is connected wirelessly you won't be able to turn it back on! This will affect all connected wireless devices.", "NTNet shutdown", "Yes", "No") - if(response == "Yes") - ntnet_global.setting_disabled = 1 - return 1 - if("purgelogs") - . = 1 - if(ntnet_global) - ntnet_global.purge_logs() - if("updatemaxlogs") - . = 1 - var/mob/user = usr - var/logcount = text2num(input(user,"Enter amount of logs to keep in memory ([MIN_NTNET_LOGS]-[MAX_NTNET_LOGS]):")) - if(ntnet_global) - ntnet_global.update_max_log_count(logcount) - if("toggle_function") - . = 1 - if(!ntnet_global) - return 1 - ntnet_global.toggle_function(text2num(params["id"])) - -/datum/computer_file/program/ntnetmonitor/ui_data(mob/user) - if(!ntnet_global) - return - var/list/data = get_header_data() - - data["ntnetstatus"] = ntnet_global.check_function() - data["ntnetrelays"] = ntnet_global.relays.len - data["idsstatus"] = ntnet_global.intrusion_detection_enabled - data["idsalarm"] = ntnet_global.intrusion_detection_alarm - - data["config_softwaredownload"] = ntnet_global.setting_softwaredownload - data["config_peertopeer"] = ntnet_global.setting_peertopeer - data["config_communication"] = ntnet_global.setting_communication - data["config_systemcontrol"] = ntnet_global.setting_systemcontrol - - data["ntnetlogs"] = list() - - for(var/i in ntnet_global.logs) - data["ntnetlogs"] += list(list("entry" = i)) - data["ntnetmaxlogs"] = ntnet_global.setting_maxlogcount - - return data \ No newline at end of file diff --git a/code/modules/modular_computers/file_system/programs/ntnrc_client.dm b/code/modules/modular_computers/file_system/programs/ntnrc_client.dm deleted file mode 100644 index 1b8ff88767..0000000000 --- a/code/modules/modular_computers/file_system/programs/ntnrc_client.dm +++ /dev/null @@ -1,237 +0,0 @@ -/datum/computer_file/program/chatclient - filename = "ntnrc_client" - filedesc = "NTNet Relay Chat Client" - program_icon_state = "command" - extended_desc = "This program allows communication over NTNRC network" - size = 8 - requires_ntnet = 1 - requires_ntnet_feature = NTNET_COMMUNICATION - network_destination = "NTNRC server" - ui_header = "ntnrc_idle.gif" - available_on_ntnet = 1 - var/last_message = null // Used to generate the toolbar icon - var/username - var/datum/ntnet_conversation/channel = null - var/operator_mode = 0 // Channel operator mode - var/netadmin_mode = 0 // Administrator mode (invisible to other users + bypasses passwords) - -/datum/computer_file/program/chatclient/New() - username = "DefaultUser[rand(100, 999)]" - -/datum/computer_file/program/chatclient/ui_act(action, params) - if(..()) - return 1 - - switch(action) - if("PRG_speak") - . = 1 - if(!channel) - return 1 - var/mob/living/user = usr - var/message = reject_bad_text(input(user, "Enter message or leave blank to cancel: ")) - if(!message || !channel) - return - channel.add_message(message, username) - log_chat("[user]/([user.ckey]) as [username] sent to [channel.title]: [message]") - - if("PRG_joinchannel") - . = 1 - var/datum/ntnet_conversation/C - for(var/datum/ntnet_conversation/chan in ntnet_global.chat_channels) - if(chan.id == text2num(params["id"])) - C = chan - break - - if(!C) - return 1 - - if(netadmin_mode) - channel = C // Bypasses normal leave/join and passwords. Technically makes the user invisible to others. - return 1 - - if(C.password) - var/mob/living/user = usr - var/password = reject_bad_text(input(user,"Access Denied. Enter password:")) - if(C && (password == C.password)) - C.add_client(src) - channel = C - return 1 - C.add_client(src) - channel = C - if("PRG_leavechannel") - . = 1 - if(channel) - channel.remove_client(src) - channel = null - if("PRG_newchannel") - . = 1 - var/mob/living/user = usr - var/channel_title = reject_bad_text(input(user,"Enter channel name or leave blank to cancel:")) - if(!channel_title) - return - var/datum/ntnet_conversation/C = new/datum/ntnet_conversation() - C.add_client(src) - C.operator = src - channel = C - C.title = channel_title - if("PRG_toggleadmin") - . = 1 - if(netadmin_mode) - netadmin_mode = 0 - if(channel) - channel.remove_client(src) // We shouldn't be in channel's user list, but just in case... - channel = null - return 1 - var/mob/living/user = usr - if(can_run(usr, 1, access_network)) - if(channel) - var/response = alert(user, "Really engage admin-mode? You will be disconnected from your current channel!", "NTNRC Admin mode", "Yes", "No") - if(response == "Yes") - if(channel) - channel.remove_client(src) - channel = null - else - return - netadmin_mode = 1 - if("PRG_changename") - . = 1 - var/mob/living/user = usr - var/newname = sanitize(input(user,"Enter new nickname or leave blank to cancel:")) - if(!newname) - return 1 - if(channel) - channel.add_status_message("[username] is now known as [newname].") - username = newname - - if("PRG_savelog") - . = 1 - if(!channel) - return - var/mob/living/user = usr - var/logname = input(user,"Enter desired logfile name (.log) or leave blank to cancel:") - if(!logname || !channel) - return 1 - var/datum/computer_file/data/logfile = new/datum/computer_file/data/logfile() - // Now we will generate HTML-compliant file that can actually be viewed/printed. - logfile.filename = logname - logfile.stored_data = "\[b\]Logfile dump from NTNRC channel [channel.title]\[/b\]\[BR\]" - for(var/logstring in channel.messages) - logfile.stored_data += "[logstring]\[BR\]" - logfile.stored_data += "\[b\]Logfile dump completed.\[/b\]" - logfile.calculate_size() - var/obj/item/weapon/computer_hardware/hard_drive/hard_drive = computer.all_components[MC_HDD] - if(!computer || !hard_drive || !hard_drive.store_file(logfile)) - if(!computer) - // This program shouldn't even be runnable without computer. - CRASH("Var computer is null!") - return 1 - if(!hard_drive) - computer.visible_message("\The [computer] shows an \"I/O Error - Hard drive connection error\" warning.") - else // In 99.9% cases this will mean our HDD is full - computer.visible_message("\The [computer] shows an \"I/O Error - Hard drive may be full. Please free some space and try again. Required space: [logfile.size]GQ\" warning.") - if("PRG_renamechannel") - . = 1 - if(!operator_mode || !channel) - return 1 - var/mob/living/user = usr - var/newname = reject_bad_text(input(user, "Enter new channel name or leave blank to cancel:")) - if(!newname || !channel) - return - channel.add_status_message("Channel renamed from [channel.title] to [newname] by operator.") - channel.title = newname - if("PRG_deletechannel") - . = 1 - if(channel && ((channel.operator == src) || netadmin_mode)) - qdel(channel) - channel = null - if("PRG_setpassword") - . = 1 - if(!channel || ((channel.operator != src) && !netadmin_mode)) - return 1 - - var/mob/living/user = usr - var/newpassword = sanitize(input(user, "Enter new password for this channel. Leave blank to cancel, enter 'nopassword' to remove password completely:")) - if(!channel || !newpassword || ((channel.operator != src) && !netadmin_mode)) - return 1 - - if(newpassword == "nopassword") - channel.password = "" - else - channel.password = newpassword - -/datum/computer_file/program/chatclient/process_tick() - ..() - if(program_state != PROGRAM_STATE_KILLED) - ui_header = "ntnrc_idle.gif" - if(channel) - // Remember the last message. If there is no message in the channel remember null. - last_message = channel.messages.len ? channel.messages[channel.messages.len - 1] : null - else - last_message = null - return 1 - if(channel && channel.messages && channel.messages.len) - ui_header = last_message == channel.messages[channel.messages.len - 1] ? "ntnrc_idle.gif" : "ntnrc_new.gif" - else - ui_header = "ntnrc_idle.gif" - -/datum/computer_file/program/chatclient/kill_program(forced = FALSE) - if(channel) - channel.remove_client(src) - channel = null - ..() - -/datum/computer_file/program/chatclient/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = 0, datum/tgui/master_ui = null, datum/ui_state/state = default_state) - - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) - if (!ui) - - - var/datum/asset/assets = get_asset_datum(/datum/asset/simple/headers) - assets.send(user) - - - ui = new(user, src, ui_key, "ntnet_chat", "NTNet Relay Chat Client", 575, 700, state = state) - ui.open() - ui.set_autoupdate(state = 1) - - -/datum/computer_file/program/chatclient/ui_data(mob/user) - if(!ntnet_global || !ntnet_global.chat_channels) - return - - var/list/data = list() - - data = get_header_data() - - - data["adminmode"] = netadmin_mode - if(channel) - data["title"] = channel.title - var/list/messages[0] - for(var/M in channel.messages) - messages.Add(list(list( - "msg" = M - ))) - data["messages"] = messages - var/list/clients[0] - for(var/C in channel.clients) - var/datum/computer_file/program/chatclient/cl = C - clients.Add(list(list( - "name" = cl.username - ))) - data["clients"] = clients - operator_mode = (channel.operator == src) ? 1 : 0 - data["is_operator"] = operator_mode || netadmin_mode - - else // Channel selection screen - var/list/all_channels[0] - for(var/C in ntnet_global.chat_channels) - var/datum/ntnet_conversation/conv = C - if(conv && conv.title) - all_channels.Add(list(list( - "chan" = conv.title, - "id" = conv.id - ))) - data["all_channels"] = all_channels - - return data \ No newline at end of file diff --git a/code/modules/modular_computers/file_system/programs/nttransfer.dm b/code/modules/modular_computers/file_system/programs/nttransfer.dm deleted file mode 100644 index 7d42bb8212..0000000000 --- a/code/modules/modular_computers/file_system/programs/nttransfer.dm +++ /dev/null @@ -1,198 +0,0 @@ -var/global/nttransfer_uid = 0 - -/datum/computer_file/program/nttransfer - filename = "nttransfer" - filedesc = "NTNet P2P Transfer Client" - extended_desc = "This program allows for simple file transfer via direct peer to peer connection." - program_icon_state = "comm_logs" - size = 7 - requires_ntnet = 1 - requires_ntnet_feature = NTNET_PEERTOPEER - network_destination = "other device via P2P tunnel" - available_on_ntnet = 1 - - var/error = "" // Error screen - var/server_password = "" // Optional password to download the file. - var/datum/computer_file/provided_file = null // File which is provided to clients. - var/datum/computer_file/downloaded_file = null // File which is being downloaded - var/list/connected_clients = list() // List of connected clients. - var/datum/computer_file/program/nttransfer/remote // Client var, specifies who are we downloading from. - var/download_completion = 0 // Download progress in GQ - var/download_netspeed = 0 // Our connectivity speed in GQ/s - var/actual_netspeed = 0 // Displayed in the UI, this is the actual transfer speed. - var/unique_token // UID of this program - var/upload_menu = 0 // Whether we show the program list and upload menu - -/datum/computer_file/program/nttransfer/New() - unique_token = nttransfer_uid - nttransfer_uid++ - ..() - -/datum/computer_file/program/nttransfer/process_tick() - // Server mode - update_netspeed() - if(provided_file) - for(var/datum/computer_file/program/nttransfer/C in connected_clients) - // Transfer speed is limited by device which uses slower connectivity. - // We can have multiple clients downloading at same time, but let's assume we use some sort of multicast transfer - // so they can all run on same speed. - C.actual_netspeed = min(C.download_netspeed, download_netspeed) - C.download_completion += C.actual_netspeed - if(C.download_completion >= provided_file.size) - C.finish_download() - else if(downloaded_file) // Client mode - if(!remote) - crash_download("Connection to remote server lost") - -/datum/computer_file/program/nttransfer/kill_program(forced = FALSE) - if(downloaded_file) // Client mode, clean up variables for next use - finalize_download() - - if(provided_file) // Server mode, disconnect all clients - for(var/datum/computer_file/program/nttransfer/P in connected_clients) - P.crash_download("Connection terminated by remote server") - downloaded_file = null - ..(forced) - -/datum/computer_file/program/nttransfer/proc/update_netspeed() - download_netspeed = 0 - switch(ntnet_status) - if(1) - download_netspeed = NTNETSPEED_LOWSIGNAL - if(2) - download_netspeed = NTNETSPEED_HIGHSIGNAL - if(3) - download_netspeed = NTNETSPEED_ETHERNET - -// Finishes download and attempts to store the file on HDD -/datum/computer_file/program/nttransfer/proc/finish_download() - var/obj/item/weapon/computer_hardware/hard_drive/hard_drive = computer.all_components[MC_HDD] - if(!computer || !hard_drive || !hard_drive.store_file(downloaded_file)) - error = "I/O Error: Unable to save file. Check your hard drive and try again." - finalize_download() - -// Crashes the download and displays specific error message -/datum/computer_file/program/nttransfer/proc/crash_download(var/message) - error = message ? message : "An unknown error has occurred during download" - finalize_download() - -// Cleans up variables for next use -/datum/computer_file/program/nttransfer/proc/finalize_download() - if(remote) - remote.connected_clients.Remove(src) - downloaded_file = null - remote = null - download_completion = 0 - - -/datum/computer_file/program/nttransfer/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = 0, datum/tgui/master_ui = null, datum/ui_state/state = default_state) - - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) - if (!ui) - - var/datum/asset/assets = get_asset_datum(/datum/asset/simple/headers) - assets.send(user) - - - ui = new(user, src, ui_key, "ntnet_transfer", "NTNet P2P Transfer Client", 575, 700, state = state) - ui.open() - ui.set_autoupdate(state = 1) - -/datum/computer_file/program/nttransfer/ui_act(action, params) - if(..()) - return 1 - switch(action) - if("PRG_downloadfile") - for(var/datum/computer_file/program/nttransfer/P in ntnet_global.fileservers) - if("[P.unique_token]" == params["id"]) - remote = P - break - if(!remote || !remote.provided_file) - return - if(remote.server_password) - var/pass = reject_bad_text(input(usr, "Code 401 Unauthorized. Please enter password:", "Password required")) - if(pass != remote.server_password) - error = "Incorrect Password" - return - downloaded_file = remote.provided_file.clone() - remote.connected_clients.Add(src) - return 1 - if("PRG_reset") - error = "" - upload_menu = 0 - finalize_download() - if(src in ntnet_global.fileservers) - ntnet_global.fileservers.Remove(src) - for(var/datum/computer_file/program/nttransfer/T in connected_clients) - T.crash_download("Remote server has forcibly closed the connection") - provided_file = null - return 1 - if("PRG_setpassword") - var/pass = reject_bad_text(input(usr, "Enter new server password. Leave blank to cancel, input 'none' to disable password.", "Server security", "none")) - if(!pass) - return - if(pass == "none") - server_password = "" - return - server_password = pass - return 1 - if("PRG_uploadfile") - var/obj/item/weapon/computer_hardware/hard_drive/hard_drive = computer.all_components[MC_HDD] - for(var/datum/computer_file/F in hard_drive.stored_files) - if("[F.uid]" == params["id"]) - if(F.unsendable) - error = "I/O Error: File locked." - return - if(istype(F, /datum/computer_file/program)) - var/datum/computer_file/program/P = F - if(!P.can_run(usr,transfer = 1)) - error = "Access Error: Insufficient rights to upload file." - provided_file = F - ntnet_global.fileservers.Add(src) - return - error = "I/O Error: Unable to locate file on hard drive." - return 1 - if("PRG_uploadmenu") - upload_menu = 1 - - -/datum/computer_file/program/nttransfer/ui_data(mob/user) - - var/list/data = get_header_data() - - if(error) - data["error"] = error - else if(downloaded_file) - data["downloading"] = 1 - data["download_size"] = downloaded_file.size - data["download_progress"] = download_completion - data["download_netspeed"] = actual_netspeed - data["download_name"] = "[downloaded_file.filename].[downloaded_file.filetype]" - else if (provided_file) - data["uploading"] = 1 - data["upload_uid"] = unique_token - data["upload_clients"] = connected_clients.len - data["upload_haspassword"] = server_password ? 1 : 0 - data["upload_filename"] = "[provided_file.filename].[provided_file.filetype]" - else if (upload_menu) - var/list/all_files[0] - var/obj/item/weapon/computer_hardware/hard_drive/hard_drive = computer.all_components[MC_HDD] - for(var/datum/computer_file/F in hard_drive.stored_files) - all_files.Add(list(list( - "uid" = F.uid, - "filename" = "[F.filename].[F.filetype]", - "size" = F.size - ))) - data["upload_filelist"] = all_files - else - var/list/all_servers[0] - for(var/datum/computer_file/program/nttransfer/P in ntnet_global.fileservers) - all_servers.Add(list(list( - "uid" = P.unique_token, - "filename" = "[P.provided_file.filename].[P.provided_file.filetype]", - "size" = P.provided_file.size, - "haspassword" = P.server_password ? 1 : 0 - ))) - data["servers"] = all_servers - - return data \ No newline at end of file diff --git a/code/modules/modular_computers/file_system/programs/powermonitor.dm b/code/modules/modular_computers/file_system/programs/powermonitor.dm deleted file mode 100644 index 316b90ec00..0000000000 --- a/code/modules/modular_computers/file_system/programs/powermonitor.dm +++ /dev/null @@ -1,93 +0,0 @@ - - -/datum/computer_file/program/power_monitor - filename = "powermonitor" - filedesc = "Power Monitoring" - program_icon_state = "power_monitor" - extended_desc = "This program connects to sensors around the station to provide information about electrical systems" - ui_header = "power_norm.gif" - transfer_access = access_engine - usage_flags = PROGRAM_CONSOLE - requires_ntnet = 0 - network_destination = "power monitoring system" - size = 9 - var/has_alert = 0 - var/obj/structure/cable/attached - var/list/history = list() - var/record_size = 60 - var/record_interval = 50 - var/next_record = 0 - - - - -/datum/computer_file/program/power_monitor/run_program(mob/living/user) - . = ..(user) - search() - history["supply"] = list() - history["demand"] = list() - - -/datum/computer_file/program/power_monitor/process_tick() - if(!attached) - search() - else - record() - -/datum/computer_file/program/power_monitor/proc/search() - var/turf/T = get_turf(computer) - attached = locate() in T - -/datum/computer_file/program/power_monitor/proc/record() - if(world.time >= next_record) - next_record = world.time + record_interval - - var/list/supply = history["supply"] - supply += attached.powernet.viewavail - if(supply.len > record_size) - supply.Cut(1, 2) - - var/list/demand = history["demand"] - demand += attached.powernet.viewload - if(demand.len > record_size) - demand.Cut(1, 2) - -/datum/computer_file/program/power_monitor/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = 0, \ - datum/tgui/master_ui = null, datum/ui_state/state = default_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) - if(!ui) - - var/datum/asset/assets = get_asset_datum(/datum/asset/simple/headers) - assets.send(user) - - - ui = new(user, src, ui_key, "power_monitor_prog", "Power Monitoring", 1200, 1000, master_ui, state) - ui.open() - -/datum/computer_file/program/power_monitor/ui_data() - var/list/data = get_header_data() - data["stored"] = record_size - data["interval"] = record_interval / 10 - data["attached"] = attached ? TRUE : FALSE - if(attached) - data["supply"] = attached.powernet.viewavail - data["demand"] = attached.powernet.viewload - data["history"] = history - - data["areas"] = list() - if(attached) - for(var/obj/machinery/power/terminal/term in attached.powernet.nodes) - var/obj/machinery/power/apc/A = term.master - if(istype(A)) - data["areas"] += list(list( - "name" = A.area.name, - "charge" = A.cell.percent(), - "load" = A.lastused_total, - "charging" = A.charging, - "eqp" = A.equipment, - "lgt" = A.lighting, - "env" = A.environ - )) - - return data - diff --git a/code/modules/modular_computers/hardware/CPU.dm b/code/modules/modular_computers/hardware/CPU.dm deleted file mode 100644 index 614ad35da9..0000000000 --- a/code/modules/modular_computers/hardware/CPU.dm +++ /dev/null @@ -1,44 +0,0 @@ -// CPU that allows the computer to run programs. -// Better CPUs are obtainable via research and can run more programs on background. - -/obj/item/weapon/computer_hardware/processor_unit - name = "processor board" - desc = "A standard CPU board used in most computers. It can run up to three programs simultaneously." - icon_state = "cpuboard" - w_class = WEIGHT_CLASS_SMALL - power_usage = 50 - critical = 1 - malfunction_probability = 1 - origin_tech = "programming=3;engineering=2" - var/max_idle_programs = 2 // 2 idle, + 1 active = 3 as said in description. - device_type = MC_CPU - -/obj/item/weapon/computer_hardware/processor_unit/on_remove(obj/item/device/modular_computer/MC, mob/user) - MC.shutdown_computer() - -/obj/item/weapon/computer_hardware/processor_unit/small - name = "microprocessor" - desc = "A miniaturised CPU used in portable devices. It can run up to two programs simultaneously." - icon_state = "cpu" - w_class = WEIGHT_CLASS_TINY - power_usage = 25 - max_idle_programs = 1 - origin_tech = "programming=2;engineering=2" - -/obj/item/weapon/computer_hardware/processor_unit/photonic - name = "photonic processor board" - desc = "An advanced experimental CPU board that uses photonic core instead of regular circuitry. It can run up to five programs simultaneously, but uses a lot of power." - icon_state = "cpuboard_super" - w_class = WEIGHT_CLASS_SMALL - power_usage = 250 - max_idle_programs = 4 - origin_tech = "programming=5;engineering=4" - -/obj/item/weapon/computer_hardware/processor_unit/photonic/small - name = "photonic microprocessor" - desc = "An advanced miniaturised CPU for use in portable devices. It uses photonic core instead of regular circuitry. It can run up to three programs simultaneously." - icon_state = "cpu_super" - w_class = WEIGHT_CLASS_TINY - power_usage = 75 - max_idle_programs = 2 - origin_tech = "programming=4;engineering=3" \ No newline at end of file diff --git a/code/modules/modular_computers/hardware/_hardware.dm b/code/modules/modular_computers/hardware/_hardware.dm deleted file mode 100644 index 27a4cd4480..0000000000 --- a/code/modules/modular_computers/hardware/_hardware.dm +++ /dev/null @@ -1,103 +0,0 @@ -/obj/item/weapon/computer_hardware - name = "hardware" - desc = "Unknown Hardware." - icon = 'icons/obj/module.dmi' - icon_state = "std_mod" - - w_class = WEIGHT_CLASS_TINY // w_class limits which devices can contain this component. - // 1: PDAs/Tablets, 2: Laptops, 3-4: Consoles only - var/obj/item/device/modular_computer/holder = null - // Computer that holds this hardware, if any. - - var/power_usage = 0 // If the hardware uses extra power, change this. - var/enabled = 1 // If the hardware is turned off set this to 0. - var/critical = 0 // Prevent disabling for important component, like the CPU. - var/can_install = 1 // Prevents direct installation of removable media. - var/damage = 0 // Current damage level - var/max_damage = 100 // Maximal damage level. - var/damage_malfunction = 20 // "Malfunction" threshold. When damage exceeds this value the hardware piece will semi-randomly fail and do !!FUN!! things - var/damage_failure = 50 // "Failure" threshold. When damage exceeds this value the hardware piece will not work at all. - var/malfunction_probability = 10// Chance of malfunction when the component is damaged - var/device_type - -/obj/item/weapon/computer_hardware/New(var/obj/L) - ..() - pixel_x = rand(-8, 8) - pixel_y = rand(-8, 8) - -/obj/item/weapon/computer_hardware/Destroy() - if(holder) - holder.uninstall_component(src) - return ..() - - -/obj/item/weapon/computer_hardware/attackby(obj/item/I, mob/living/user) - // Multitool. Runs diagnostics - if(istype(I, /obj/item/device/multitool)) - user << "***** DIAGNOSTICS REPORT *****" - diagnostics(user) - user << "******************************" - return 1 - - // Cable coil. Works as repair method, but will probably require multiple applications and more cable. - if(istype(I, /obj/item/stack/cable_coil)) - var/obj/item/stack/S = I - if(obj_integrity == max_integrity) - user << "\The [src] doesn't seem to require repairs." - return 1 - if(S.use(1)) - user << "You patch up \the [src] with a bit of \the [I]." - obj_integrity = min(obj_integrity + 10, max_integrity) - return 1 - - if(try_insert(I, user)) - return 1 - - return ..() - -// Called on multitool click, prints diagnostic information to the user. -/obj/item/weapon/computer_hardware/proc/diagnostics(var/mob/user) - user << "Hardware Integrity Test... (Corruption: [damage]/[max_damage]) [damage > damage_failure ? "FAIL" : damage > damage_malfunction ? "WARN" : "PASS"]" - -// Handles damage checks -/obj/item/weapon/computer_hardware/proc/check_functionality() - if(!enabled) // Disabled. - return FALSE - - if(damage > damage_failure) // Too damaged to work at all. - return FALSE - - if(damage > damage_malfunction) // Still working. Well, sometimes... - if(prob(malfunction_probability)) - return FALSE - - return TRUE // Good to go. - -/obj/item/weapon/computer_hardware/examine(var/mob/user) - . = ..() - if(damage > damage_failure) - user << "It seems to be severely damaged!" - else if(damage > damage_malfunction) - user << "It seems to be damaged!" - else if(damage) - user << "It seems to be slightly damaged." - -// Component-side compatibility check. -/obj/item/weapon/computer_hardware/proc/can_install(obj/item/device/modular_computer/M, mob/living/user = null) - return can_install - -// Called when component is installed into PC. -/obj/item/weapon/computer_hardware/proc/on_install(obj/item/device/modular_computer/M, mob/living/user = null) - return - -// Called when component is removed from PC. -/obj/item/weapon/computer_hardware/proc/on_remove(obj/item/device/modular_computer/M, mob/living/user = null) - try_eject(forced = 1) - -// Called when someone tries to insert something in it - paper in printer, card in card reader, etc. -/obj/item/weapon/computer_hardware/proc/try_insert(obj/item/I, mob/living/user = null) - return FALSE - -// Called when someone tries to eject something from it - card from card reader, etc. -/obj/item/weapon/computer_hardware/proc/try_eject(slot=0, mob/living/user = null, forced = 0) - return FALSE diff --git a/code/modules/modular_computers/hardware/ai_slot.dm b/code/modules/modular_computers/hardware/ai_slot.dm deleted file mode 100644 index 9e27b433c7..0000000000 --- a/code/modules/modular_computers/hardware/ai_slot.dm +++ /dev/null @@ -1,72 +0,0 @@ -/obj/item/weapon/computer_hardware/ai_slot - name = "intelliCard interface slot" - desc = "A module allowing this computer to interface with most common intelliCard modules. Necessary for some programs to run properly." - power_usage = 100 //W - icon_state = "card_mini" - w_class = WEIGHT_CLASS_SMALL - origin_tech = "programming=2" - device_type = MC_AI - - var/obj/item/device/aicard/stored_card = null - var/locked = FALSE - - -/obj/item/weapon/computer_hardware/ai_slot/examine(mob/user) - ..() - if(stored_card) - user << "There appears to be an intelliCard loaded. There appears to be a pinhole protecting a manual eject button. A screwdriver could probably press it" - -/obj/item/weapon/computer_hardware/ai_slot/on_install(obj/item/device/modular_computer/M, mob/living/user = null) - M.add_verb(device_type) - -/obj/item/weapon/computer_hardware/ai_slot/on_remove(obj/item/device/modular_computer/M, mob/living/user = null) - M.remove_verb(device_type) - -/obj/item/weapon/computer_hardware/ai_slot/try_insert(obj/item/I, mob/living/user = null) - if(!holder) - return FALSE - - if(!istype(I, /obj/item/device/aicard)) - return FALSE - - if(stored_card) - user << "You try to insert \the [I] into \the [src], but the slot is occupied." - return FALSE - if(user && !user.unEquip(I)) - return FALSE - - - stored_card = I - - I.forceMove(src) - user << "You insert \the [I] into \the [src]." - - return TRUE - - -/obj/item/weapon/computer_hardware/ai_slot/try_eject(slot=0,mob/living/user = null,forced = 0) - if(!stored_card) - user << "There is no card in \the [src]." - return FALSE - - if(locked && !forced) - user << "Safeties prevent you from removing the card until reconstruction is complete..." - return FALSE - - if(stored_card) - stored_card.forceMove(get_turf(src)) - locked = FALSE - stored_card.verb_pickup() - stored_card = null - - user << "You remove the card from \the [src]." - return TRUE - return FALSE - -/obj/item/weapon/computer_hardware/ai_slot/attackby(obj/item/I, mob/living/user) - if(..()) - return - if(istype(I, /obj/item/weapon/screwdriver)) - user << "You press down on the manual eject button with \the [I]." - try_eject(,user,1) - return \ No newline at end of file diff --git a/code/modules/modular_computers/hardware/battery_module.dm b/code/modules/modular_computers/hardware/battery_module.dm deleted file mode 100644 index ea61fc4ba1..0000000000 --- a/code/modules/modular_computers/hardware/battery_module.dm +++ /dev/null @@ -1,99 +0,0 @@ -/obj/item/weapon/computer_hardware/battery - name = "power cell controller" - desc = "A charge controller for standard power cells, used in all kinds of modular computers." - icon_state = "cell_con" - critical = 1 - malfunction_probability = 1 - origin_tech = "powerstorage=1;engineering=1" - var/obj/item/weapon/stock_parts/cell/battery = null - device_type = MC_CELL - -/obj/item/weapon/computer_hardware/battery/New(loc, battery_type = null) - if(battery_type) - battery = new battery_type(src) - ..() - -/obj/item/weapon/computer_hardware/battery/try_insert(obj/item/I, mob/living/user = null) - if(!holder) - return FALSE - - if(!istype(I, /obj/item/weapon/stock_parts/cell)) - return FALSE - - if(battery) - user << "You try to connect \the [I] to \the [src], but its connectors are occupied." - return FALSE - - if(I.w_class > holder.max_hardware_size) - user << "This power cell is too large for \the [holder]!" - return FALSE - - if(user && !user.unEquip(I)) - return FALSE - - battery = I - I.forceMove(src) - user << "You connect \the [I] to \the [src]." - - return TRUE - - -/obj/item/weapon/computer_hardware/battery/try_eject(slot=0, mob/living/user = null, forced = 0) - if(!battery) - user << "There is no power cell connected to \the [src]." - return FALSE - else - battery.forceMove(get_turf(src)) - user << "You detach \the [battery] from \the [src]." - battery = null - - if(holder) - if(holder.enabled && !holder.use_power()) - holder.shutdown_computer() - - return TRUE - return FALSE - - - - - - - -/obj/item/weapon/stock_parts/cell/computer - name = "standard battery" - desc = "A standard power cell, commonly seen in high-end portable microcomputers or low-end laptops." - icon = 'icons/obj/module.dmi' - icon_state = "cell_mini" - origin_tech = "powerstorage=2;engineering=1" - w_class = WEIGHT_CLASS_TINY - maxcharge = 750 - - -/obj/item/weapon/stock_parts/cell/computer/advanced - name = "advanced battery" - desc = "An advanced power cell, often used in most laptops. It is too large to be fitted into smaller devices." - icon_state = "cell" - origin_tech = "powerstorage=2;engineering=2" - w_class = WEIGHT_CLASS_SMALL - maxcharge = 1500 - -/obj/item/weapon/stock_parts/cell/computer/super - name = "super battery" - desc = "An advanced power cell, often used in high-end laptops." - icon_state = "cell" - origin_tech = "powerstorage=3;engineering=3" - w_class = WEIGHT_CLASS_SMALL - maxcharge = 2000 - -/obj/item/weapon/stock_parts/cell/computer/micro - name = "micro battery" - desc = "A small power cell, commonly seen in most portable microcomputers." - icon_state = "cell_micro" - maxcharge = 500 - -/obj/item/weapon/stock_parts/cell/computer/nano - name = "nano battery" - desc = "A tiny power cell, commonly seen in low-end portable microcomputers." - icon_state = "cell_micro" - maxcharge = 300 \ No newline at end of file diff --git a/code/modules/modular_computers/hardware/card_slot.dm b/code/modules/modular_computers/hardware/card_slot.dm deleted file mode 100644 index e865353d21..0000000000 --- a/code/modules/modular_computers/hardware/card_slot.dm +++ /dev/null @@ -1,104 +0,0 @@ -/obj/item/weapon/computer_hardware/card_slot - name = "identification card authentication module" // \improper breaks the find_hardware_by_name proc - desc = "A module allowing this computer to read or write data on ID cards. Necessary for some programs to run properly." - power_usage = 10 //W - icon_state = "card_mini" - w_class = WEIGHT_CLASS_TINY - origin_tech = "programming=2" - device_type = MC_CARD - - var/obj/item/weapon/card/id/stored_card = null - var/obj/item/weapon/card/id/stored_card2 = null - -/obj/item/weapon/computer_hardware/card_slot/Destroy() - try_eject() - return ..() - -/obj/item/weapon/computer_hardware/card_slot/GetAccess() - if(stored_card && stored_card2) // Best of both worlds - return (stored_card.GetAccess() | stored_card2.GetAccess()) - else if(stored_card) - return stored_card.GetAccess() - else if(stored_card2) - return stored_card2.GetAccess() - return ..() - -/obj/item/weapon/computer_hardware/card_slot/GetID() - if(stored_card) - return stored_card - else if(stored_card2) - return stored_card2 - return ..() - -/obj/item/weapon/computer_hardware/card_slot/on_install(obj/item/device/modular_computer/M, mob/living/user = null) - M.add_verb(device_type) - -/obj/item/weapon/computer_hardware/card_slot/on_remove(obj/item/device/modular_computer/M, mob/living/user = null) - M.remove_verb(device_type) - -/obj/item/weapon/computer_hardware/card_slot/try_insert(obj/item/I, mob/living/user = null) - if(!holder) - return FALSE - - if(!istype(I, /obj/item/weapon/card/id)) - return FALSE - - if(stored_card && stored_card2) - user << "You try to insert \the [I] into \the [src], but its slots are occupied." - return FALSE - if(user && !user.unEquip(I)) - return FALSE - - if(!stored_card) - stored_card = I - else - stored_card2 = I - I.forceMove(src) - user << "You insert \the [I] into \the [src]." - - return TRUE - - -/obj/item/weapon/computer_hardware/card_slot/try_eject(slot=0, mob/living/user = null, forced = 0) - if(!stored_card && !stored_card2) - user << "There are no cards in \the [src]." - return FALSE - - var/ejected = 0 - if(stored_card && (!slot || slot == 1)) - stored_card.forceMove(get_turf(src)) - stored_card.verb_pickup() - stored_card = null - ejected++ - - if(stored_card2 && (!slot || slot == 2)) - stored_card2.forceMove(get_turf(src)) - stored_card2.verb_pickup() - stored_card2 = null - ejected++ - - if(ejected) - if(holder) - if(holder.active_program) - holder.active_program.event_idremoved(0, slot) - - for(var/I in holder.idle_threads) - var/datum/computer_file/program/P = I - P.event_idremoved(1, slot) - - user << "You remove the card[ejected>1 ? "s" : ""] from \the [src]." - return TRUE - return FALSE - -/obj/item/weapon/computer_hardware/card_slot/attackby(obj/item/I, mob/living/user) - if(..()) - return - if(istype(I, /obj/item/weapon/screwdriver)) - user << "You press down on the manual eject button with \the [I]." - try_eject(0,user) - return - -/obj/item/weapon/computer_hardware/card_slot/examine(mob/user) - ..() - if(stored_card || stored_card2) - user << "There appears to be something loaded in the card slots." \ No newline at end of file diff --git a/code/modules/modular_computers/hardware/hard_drive.dm b/code/modules/modular_computers/hardware/hard_drive.dm deleted file mode 100644 index 4a770c27be..0000000000 --- a/code/modules/modular_computers/hardware/hard_drive.dm +++ /dev/null @@ -1,173 +0,0 @@ -/obj/item/weapon/computer_hardware/hard_drive - name = "hard disk drive" - desc = "A small HDD, for use in basic computers where power efficiency is desired." - power_usage = 25 - icon_state = "harddisk_mini" - critical = 1 - w_class = WEIGHT_CLASS_TINY - origin_tech = "programming=1;engineering=1" - device_type = MC_HDD - var/max_capacity = 128 - var/used_capacity = 0 - var/list/stored_files = list() // List of stored files on this drive. DO NOT MODIFY DIRECTLY! - -/obj/item/weapon/computer_hardware/hard_drive/on_remove(obj/item/device/modular_computer/MC, mob/user) - MC.shutdown_computer() - -/obj/item/weapon/computer_hardware/hard_drive/proc/install_default_programs() - store_file(new/datum/computer_file/program/computerconfig(src)) // Computer configuration utility, allows hardware control and displays more info than status bar - store_file(new/datum/computer_file/program/ntnetdownload(src)) // NTNet Downloader Utility, allows users to download more software from NTNet repository - store_file(new/datum/computer_file/program/filemanager(src)) // File manager, allows text editor functions and basic file manipulation. - -/obj/item/weapon/computer_hardware/hard_drive/examine(user) - ..() - user << "It has [max_capacity] GQ of storage capacity." - -/obj/item/weapon/computer_hardware/hard_drive/diagnostics(var/mob/user) - ..() - // 999 is a byond limit that is in place. It's unlikely someone will reach that many files anyway, since you would sooner run out of space. - user << "NT-NFS File Table Status: [stored_files.len]/999" - user << "Storage capacity: [used_capacity]/[max_capacity]GQ" - -// Use this proc to add file to the drive. Returns 1 on success and 0 on failure. Contains necessary sanity checks. -/obj/item/weapon/computer_hardware/hard_drive/proc/store_file(var/datum/computer_file/F) - if(!F || !istype(F)) - return 0 - - if(!can_store_file(F)) - return 0 - - if(!check_functionality()) - return 0 - - if(!stored_files) - return 0 - - // This file is already stored. Don't store it again. - if(F in stored_files) - return 0 - - F.holder = src - stored_files.Add(F) - recalculate_size() - return 1 - -// Use this proc to remove file from the drive. Returns 1 on success and 0 on failure. Contains necessary sanity checks. -/obj/item/weapon/computer_hardware/hard_drive/proc/remove_file(var/datum/computer_file/F) - if(!F || !istype(F)) - return 0 - - if(!stored_files) - return 0 - - if(!check_functionality()) - return 0 - - if(F in stored_files) - stored_files -= F - recalculate_size() - return 1 - else - return 0 - -// Loops through all stored files and recalculates used_capacity of this drive -/obj/item/weapon/computer_hardware/hard_drive/proc/recalculate_size() - var/total_size = 0 - for(var/datum/computer_file/F in stored_files) - total_size += F.size - - used_capacity = total_size - -// Checks whether file can be stored on the hard drive. We can only store unique files, so this checks whether we wouldn't get a duplicity by adding a file. -/obj/item/weapon/computer_hardware/hard_drive/proc/can_store_file(var/datum/computer_file/F) - if(!F || !istype(F)) - return 0 - - if(F in stored_files) - return 0 - - var/name = F.filename + "." + F.filetype - for(var/datum/computer_file/file in stored_files) - if((file.filename + "." + file.filetype) == name) - return 0 - - // In the unlikely event someone manages to create that many files. - // BYOND is acting weird with numbers above 999 in loops (infinite loop prevention) - if(stored_files.len >= 999) - return 0 - if((used_capacity + F.size) > max_capacity) - return 0 - else - return 1 - - -// Tries to find the file by filename. Returns null on failure -/obj/item/weapon/computer_hardware/hard_drive/proc/find_file_by_name(var/filename) - if(!check_functionality()) - return null - - if(!filename) - return null - - if(!stored_files) - return null - - for(var/datum/computer_file/F in stored_files) - if(F.filename == filename) - return F - return null - -/obj/item/weapon/computer_hardware/hard_drive/Destroy() - stored_files = null - return ..() - -/obj/item/weapon/computer_hardware/hard_drive/New() - install_default_programs() - ..() - - -/obj/item/weapon/computer_hardware/hard_drive/advanced - name = "advanced hard disk drive" - desc = "A hybrid HDD, for use in higher grade computers where balance between power efficiency and capacity is desired." - max_capacity = 256 - origin_tech = "programming=2;engineering=2" - power_usage = 50 // Hybrid, medium capacity and medium power storage - icon_state = "harddisk_mini" - w_class = WEIGHT_CLASS_SMALL - -/obj/item/weapon/computer_hardware/hard_drive/super - name = "super hard disk drive" - desc = "A high capacity HDD, for use in cluster storage solutions where capacity is more important than power efficiency." - max_capacity = 512 - origin_tech = "programming=3;engineering=3" - power_usage = 100 // High-capacity but uses lots of power, shortening battery life. Best used with APC link. - icon_state = "harddisk_mini" - w_class = WEIGHT_CLASS_SMALL - -/obj/item/weapon/computer_hardware/hard_drive/cluster - name = "cluster hard disk drive" - desc = "A large storage cluster consisting of multiple HDDs for usage in dedicated storage systems." - power_usage = 500 - origin_tech = "programming=4;engineering=4" - max_capacity = 2048 - icon_state = "harddisk" - w_class = WEIGHT_CLASS_NORMAL - -// For tablets, etc. - highly power efficient. -/obj/item/weapon/computer_hardware/hard_drive/small - name = "solid state drive" - desc = "An efficient SSD for portable devices." - power_usage = 10 - origin_tech = "programming=2;engineering=2" - max_capacity = 64 - icon_state = "ssd_mini" - w_class = WEIGHT_CLASS_TINY - -/obj/item/weapon/computer_hardware/hard_drive/micro - name = "micro solid state drive" - desc = "A highly efficient SSD chip for portable devices." - power_usage = 2 - origin_tech = "programming=1;engineering=1" - max_capacity = 32 - icon_state = "ssd_micro" - w_class = WEIGHT_CLASS_TINY \ No newline at end of file diff --git a/code/modules/modular_computers/hardware/network_card.dm b/code/modules/modular_computers/hardware/network_card.dm deleted file mode 100644 index 2b99521b6f..0000000000 --- a/code/modules/modular_computers/hardware/network_card.dm +++ /dev/null @@ -1,82 +0,0 @@ -var/global/ntnet_card_uid = 1 - -/obj/item/weapon/computer_hardware/network_card - name = "network card" - desc = "A basic wireless network card for usage with standard NTNet frequencies." - power_usage = 50 - origin_tech = "programming=2;engineering=1" - icon_state = "radio_mini" - var/identification_id = null // Identification ID. Technically MAC address of this device. Can't be changed by user. - var/identification_string = "" // Identification string, technically nickname seen in the network. Can be set by user. - var/long_range = 0 - var/ethernet = 0 // Hard-wired, therefore always on, ignores NTNet wireless checks. - malfunction_probability = 1 - device_type = MC_NET - -/obj/item/weapon/computer_hardware/network_card/diagnostics(var/mob/user) - ..() - user << "NIX Unique ID: [identification_id]" - user << "NIX User Tag: [identification_string]" - user << "Supported protocols:" - user << "511.m SFS (Subspace) - Standard Frequency Spread" - if(long_range) - user << "511.n WFS/HB (Subspace) - Wide Frequency Spread/High Bandiwdth" - if(ethernet) - user << "OpenEth (Physical Connection) - Physical network connection port" - -/obj/item/weapon/computer_hardware/network_card/New(var/l) - ..(l) - identification_id = ntnet_card_uid - ntnet_card_uid++ - -// Returns a string identifier of this network card -/obj/item/weapon/computer_hardware/network_card/proc/get_network_tag() - return "[identification_string] (NID [identification_id])" - -// 0 - No signal, 1 - Low signal, 2 - High signal. 3 - Wired Connection -/obj/item/weapon/computer_hardware/network_card/proc/get_signal(var/specific_action = 0) - if(!holder) // Hardware is not installed in anything. No signal. How did this even get called? - return 0 - - if(!check_functionality()) - return 0 - - if(ethernet) // Computer is connected via wired connection. - return 3 - - if(!ntnet_global || !ntnet_global.check_function(specific_action)) // NTNet is down and we are not connected via wired connection. No signal. - return 0 - - if(holder) - - var/turf/T = get_turf(holder) - if((T && istype(T)) && (T.z == ZLEVEL_STATION || T.z == ZLEVEL_MINING)) - // Computer is on station. Low/High signal depending on what type of network card you have - if(long_range) - return 2 - else - return 1 - - if(long_range) // Computer is not on station, but it has upgraded network card. Low signal. - return 1 - - return 0 // Computer is not on station and does not have upgraded network card. No signal. - - -/obj/item/weapon/computer_hardware/network_card/advanced - name = "advanced network card" - desc = "An advanced network card for usage with standard NTNet frequencies. Its transmitter is strong enough to connect even off-station." - long_range = 1 - origin_tech = "programming=4;engineering=2" - power_usage = 100 // Better range but higher power usage. - icon_state = "radio" - w_class = WEIGHT_CLASS_TINY - -/obj/item/weapon/computer_hardware/network_card/wired - name = "wired network card" - desc = "An advanced network card for usage with standard NTNet frequencies. This one also supports wired connection." - ethernet = 1 - origin_tech = "programming=5;engineering=3" - power_usage = 100 // Better range but higher power usage. - icon_state = "net_wired" - w_class = WEIGHT_CLASS_NORMAL diff --git a/code/modules/modular_computers/hardware/portable_disk.dm b/code/modules/modular_computers/hardware/portable_disk.dm deleted file mode 100644 index 4bdf0b3549..0000000000 --- a/code/modules/modular_computers/hardware/portable_disk.dm +++ /dev/null @@ -1,35 +0,0 @@ -/obj/item/weapon/computer_hardware/hard_drive/portable - name = "data disk" - desc = "Removable disk used to store data." - power_usage = 10 - icon_state = "datadisk6" - w_class = WEIGHT_CLASS_TINY - critical = 0 - max_capacity = 16 - origin_tech = "programming=1" - device_type = MC_SDD - -/obj/item/weapon/computer_hardware/hard_drive/portable/on_install(obj/item/device/modular_computer/M, mob/living/user = null) - M.add_verb(device_type) - -/obj/item/weapon/computer_hardware/hard_drive/portable/on_remove(obj/item/device/modular_computer/M, mob/living/user = null) - ..() - M.remove_verb(device_type) - -/obj/item/weapon/computer_hardware/hard_drive/portable/install_default_programs() - return // Empty by default - -/obj/item/weapon/computer_hardware/hard_drive/portable/advanced - name = "advanced data disk" - power_usage = 20 - icon_state = "datadisk5" - max_capacity = 64 - origin_tech = "programming=2" - -/obj/item/weapon/computer_hardware/hard_drive/portable/super - name = "super data disk" - desc = "Removable disk used to store large amounts of data." - power_usage = 40 - icon_state = "datadisk3" - max_capacity = 256 - origin_tech = "programming=4" diff --git a/code/modules/modular_computers/hardware/printer.dm b/code/modules/modular_computers/hardware/printer.dm deleted file mode 100644 index 6aedcea72e..0000000000 --- a/code/modules/modular_computers/hardware/printer.dm +++ /dev/null @@ -1,63 +0,0 @@ -/obj/item/weapon/computer_hardware/printer - name = "printer" - desc = "Computer-integrated printer with paper recycling module." - power_usage = 100 - origin_tech = "programming=2;engineering=2" - icon_state = "printer" - w_class = WEIGHT_CLASS_NORMAL - device_type = MC_PRINT - var/stored_paper = 20 - var/max_paper = 30 - -/obj/item/weapon/computer_hardware/printer/diagnostics(mob/living/user) - ..() - user << "Paper level: [stored_paper]/[max_paper]" - -/obj/item/weapon/computer_hardware/printer/examine(mob/user) - ..() - user << "Paper level: [stored_paper]/[max_paper]" - - -/obj/item/weapon/computer_hardware/printer/proc/print_text(var/text_to_print, var/paper_title = "") - if(!stored_paper) - return FALSE - if(!check_functionality()) - return FALSE - - var/obj/item/weapon/paper/P = new/obj/item/weapon/paper(get_turf(holder)) - - // Damaged printer causes the resulting paper to be somewhat harder to read. - if(damage > damage_malfunction) - P.info = stars(text_to_print, 100-malfunction_probability) - else - P.info = text_to_print - if(paper_title) - P.name = paper_title - P.update_icon() - stored_paper-- - P = null - return TRUE - -/obj/item/weapon/computer_hardware/printer/try_insert(obj/item/I, mob/living/user = null) - if(istype(I, /obj/item/weapon/paper)) - if(user && !user.unEquip(I)) - return FALSE - - if(stored_paper >= max_paper) - user << "You try to add \the [I] into [src], but its paper bin is full!" - return FALSE - - user << "You insert \the [I] into [src]'s paper recycler." - qdel(I) - stored_paper++ - return TRUE - return FALSE - -/obj/item/weapon/computer_hardware/printer/mini - name = "miniprinter" - desc = "A small printer with paper recycling module." - power_usage = 50 - icon_state = "printer_mini" - w_class = WEIGHT_CLASS_TINY - stored_paper = 5 - max_paper = 15 \ No newline at end of file diff --git a/code/modules/modular_computers/hardware/recharger.dm b/code/modules/modular_computers/hardware/recharger.dm deleted file mode 100644 index 4a6001814f..0000000000 --- a/code/modules/modular_computers/hardware/recharger.dm +++ /dev/null @@ -1,93 +0,0 @@ -/obj/item/weapon/computer_hardware/recharger - critical = 1 - enabled = 1 - var/charge_rate = 100 - device_type = MC_CHARGE - -/obj/item/weapon/computer_hardware/recharger/proc/use_power(amount, charging=0) - if(charging) - return 1 - return 0 - -/obj/item/weapon/computer_hardware/recharger/process() - ..() - var/obj/item/weapon/computer_hardware/battery/battery_module = holder.all_components[MC_CELL] - if(!holder || !battery_module || !battery_module.battery) - return - - var/obj/item/weapon/stock_parts/cell/cell = battery_module.battery - if(cell.charge >= cell.maxcharge) - return - - if(use_power(charge_rate, charging=1)) - holder.give_power(charge_rate * CELLRATE) - - -/obj/item/weapon/computer_hardware/recharger/APC - name = "area power connector" - desc = "A device that wirelessly recharges connected device from nearby APC." - icon_state = "charger_APC" - w_class = WEIGHT_CLASS_SMALL // Can't be installed into tablets/PDAs - origin_tech = "programming=2;engineering=2;powerstorage=3" - -/obj/item/weapon/computer_hardware/recharger/APC/use_power(amount, charging=0) - if(istype(holder.physical, /obj/machinery)) - var/obj/machinery/M = holder.physical - if(M.powered()) - M.use_power(amount) - return 1 - - else - var/area/A = get_area(src) - if(!A || !isarea(A) || !A.master) - return 0 - - if(A.master.powered(EQUIP)) - A.master.use_power(amount, EQUIP) - return 1 - return 0 - -/obj/item/weapon/computer_hardware/recharger/wired - name = "wired power connector" - desc = "A power connector that recharges connected device from nearby power wire. Incompatible with portable computers." - icon_state = "charger_wire" - w_class = WEIGHT_CLASS_NORMAL - origin_tech = "engineering=2;powerstorage=1" - -/obj/item/weapon/computer_hardware/recharger/wired/can_install(obj/item/device/modular_computer/M, mob/living/user = null) - if(istype(M.physical, /obj/machinery) && M.physical.anchored) - return ..() - user << "\The [src] is incompatible with portable computers!" - return 0 - -/obj/item/weapon/computer_hardware/recharger/wired/use_power(amount, charging=0) - if(istype(holder.physical, /obj/machinery) && holder.physical.anchored) - var/obj/machinery/M = holder.physical - var/turf/T = M.loc - if(!T || !istype(T)) - return 0 - - var/obj/structure/cable/C = T.get_cable_node() - if(!C || !C.powernet) - return 0 - - var/power_in_net = C.powernet.avail-C.powernet.load - - if(power_in_net && power_in_net > amount) - C.powernet.load += amount - return 1 - - return 0 - - - -// This is not intended to be obtainable in-game. Intended for adminbus and debugging purposes. -/obj/item/weapon/computer_hardware/recharger/lambda - name = "lambda coil" - desc = "A very complex device that draws power from its own bluespace dimension." - icon_state = "charger_lambda" - w_class = WEIGHT_CLASS_TINY - charge_rate = 100000 - -/obj/item/weapon/computer_hardware/recharger/lambda/use_power(amount, charging=0) - return 1 diff --git a/code/modules/modular_computers/laptop_vendor.dm b/code/modules/modular_computers/laptop_vendor.dm deleted file mode 100644 index abbfc5aaba..0000000000 --- a/code/modules/modular_computers/laptop_vendor.dm +++ /dev/null @@ -1,300 +0,0 @@ -// A vendor machine for modular computer portable devices - Laptops and Tablets - -/obj/machinery/lapvend - name = "computer vendor" - desc = "A vending machine with microfabricator capable of dispensing various NT-branded computers." - icon = 'icons/obj/vending.dmi' - icon_state = "robotics" - layer = 2.9 - anchored = 1 - density = 1 - - // The actual laptop/tablet - var/obj/item/device/modular_computer/laptop/fabricated_laptop = null - var/obj/item/device/modular_computer/tablet/fabricated_tablet = null - - // Utility vars - var/state = 0 // 0: Select device type, 1: Select loadout, 2: Payment, 3: Thankyou screen - var/devtype = 0 // 0: None(unselected), 1: Laptop, 2: Tablet - var/total_price = 0 // Price of currently vended device. - var/credits = 0 - - // Device loadout - var/dev_cpu = 1 // 1: Default, 2: Upgraded - var/dev_battery = 1 // 1: Default, 2: Upgraded, 3: Advanced - var/dev_disk = 1 // 1: Default, 2: Upgraded, 3: Advanced - var/dev_netcard = 0 // 0: None, 1: Basic, 2: Long-Range - var/dev_apc_recharger = 0 // 0: None, 1: Standard (LAPTOP ONLY) - var/dev_printer = 0 // 0: None, 1: Standard - var/dev_card = 0 // 0: None, 1: Standard - -// Removes all traces of old order and allows you to begin configuration from scratch. -/obj/machinery/lapvend/proc/reset_order() - state = 0 - devtype = 0 - if(fabricated_laptop) - qdel(fabricated_laptop) - fabricated_laptop = null - if(fabricated_tablet) - qdel(fabricated_tablet) - fabricated_tablet = null - dev_cpu = 1 - dev_battery = 1 - dev_disk = 1 - dev_netcard = 0 - dev_apc_recharger = 0 - dev_printer = 0 - dev_card = 0 - -// Recalculates the price and optionally even fabricates the device. -/obj/machinery/lapvend/proc/fabricate_and_recalc_price(fabricate = 0) - total_price = 0 - if(devtype == 1) // Laptop, generally cheaper to make it accessible for most station roles - var/obj/item/weapon/computer_hardware/battery/battery_module = null - if(fabricate) - fabricated_laptop = new /obj/item/device/modular_computer/laptop/buildable(src) - fabricated_laptop.install_component(new /obj/item/weapon/computer_hardware/battery) - battery_module = fabricated_laptop.all_components[MC_CELL] - total_price = 99 - switch(dev_cpu) - if(1) - if(fabricate) - fabricated_laptop.install_component(new /obj/item/weapon/computer_hardware/processor_unit/small) - if(2) - if(fabricate) - fabricated_laptop.install_component(new /obj/item/weapon/computer_hardware/processor_unit) - total_price += 299 - switch(dev_battery) - if(1) // Basic(750C) - if(fabricate) - battery_module.try_insert(new /obj/item/weapon/stock_parts/cell/computer) - if(2) // Upgraded(1100C) - if(fabricate) - battery_module.try_insert(new /obj/item/weapon/stock_parts/cell/computer/advanced) - total_price += 199 - if(3) // Advanced(1500C) - if(fabricate) - battery_module.try_insert(new /obj/item/weapon/stock_parts/cell/computer/super) - total_price += 499 - switch(dev_disk) - if(1) // Basic(128GQ) - if(fabricate) - fabricated_laptop.install_component(new /obj/item/weapon/computer_hardware/hard_drive) - if(2) // Upgraded(256GQ) - if(fabricate) - fabricated_laptop.install_component(new /obj/item/weapon/computer_hardware/hard_drive/advanced) - total_price += 99 - if(3) // Advanced(512GQ) - if(fabricate) - fabricated_laptop.install_component(new /obj/item/weapon/computer_hardware/hard_drive/super) - total_price += 299 - switch(dev_netcard) - if(1) // Basic(Short-Range) - if(fabricate) - fabricated_laptop.install_component(new /obj/item/weapon/computer_hardware/network_card) - total_price += 99 - if(2) // Advanced (Long Range) - if(fabricate) - fabricated_laptop.install_component(new /obj/item/weapon/computer_hardware/network_card/advanced) - total_price += 299 - if(dev_apc_recharger) - total_price += 399 - if(fabricate) - fabricated_laptop.install_component(new /obj/item/weapon/computer_hardware/recharger/APC) - if(dev_printer) - total_price += 99 - if(fabricate) - fabricated_laptop.install_component(new /obj/item/weapon/computer_hardware/printer/mini) - if(dev_card) - total_price += 199 - if(fabricate) - fabricated_laptop.install_component(new /obj/item/weapon/computer_hardware/card_slot) - - return total_price - else if(devtype == 2) // Tablet, more expensive, not everyone could probably afford this. - var/obj/item/weapon/computer_hardware/battery/battery_module = null - if(fabricate) - fabricated_tablet = new(src) - fabricated_tablet.install_component(new /obj/item/weapon/computer_hardware/battery) - fabricated_tablet.install_component(new /obj/item/weapon/computer_hardware/processor_unit/small) - battery_module = fabricated_tablet.all_components[MC_CELL] - total_price = 199 - switch(dev_battery) - if(1) // Basic(300C) - if(fabricate) - battery_module.try_insert(new /obj/item/weapon/stock_parts/cell/computer/nano) - if(2) // Upgraded(500C) - if(fabricate) - battery_module.try_insert(new /obj/item/weapon/stock_parts/cell/computer/micro) - total_price += 199 - if(3) // Advanced(750C) - if(fabricate) - battery_module.try_insert(new /obj/item/weapon/stock_parts/cell/computer) - total_price += 499 - switch(dev_disk) - if(1) // Basic(32GQ) - if(fabricate) - fabricated_tablet.install_component(new /obj/item/weapon/computer_hardware/hard_drive/micro) - if(2) // Upgraded(64GQ) - if(fabricate) - fabricated_tablet.install_component(new /obj/item/weapon/computer_hardware/hard_drive/small) - total_price += 99 - if(3) // Advanced(128GQ) - if(fabricate) - fabricated_tablet.install_component(new /obj/item/weapon/computer_hardware/hard_drive) - total_price += 299 - switch(dev_netcard) - if(1) // Basic(Short-Range) - if(fabricate) - fabricated_tablet.install_component(new/obj/item/weapon/computer_hardware/network_card) - total_price += 99 - if(2) // Advanced (Long Range) - if(fabricate) - fabricated_tablet.install_component(new/obj/item/weapon/computer_hardware/network_card/advanced) - total_price += 299 - if(dev_printer) - total_price += 99 - if(fabricate) - fabricated_tablet.install_component(new/obj/item/weapon/computer_hardware/printer) - if(dev_card) - total_price += 199 - if(fabricate) - fabricated_tablet.install_component(new/obj/item/weapon/computer_hardware/card_slot) - return total_price - return 0 - - - - - -/obj/machinery/lapvend/ui_act(action, params) - if(..()) - return 1 - - switch(action) - if("pick_device") - if(state) // We've already picked a device type - return 0 - devtype = text2num(params["pick"]) - state = 1 - fabricate_and_recalc_price(0) - return 1 - if("clean_order") - reset_order() - return 1 - if("purchase") - try_purchase() - return 1 - if((state != 1) && devtype) // Following IFs should only be usable when in the Select Loadout mode - return 0 - switch(action) - if("confirm_order") - state = 2 // Wait for ID swipe for payment processing - fabricate_and_recalc_price(0) - return 1 - if("hw_cpu") - dev_cpu = text2num(params["cpu"]) - fabricate_and_recalc_price(0) - return 1 - if("hw_battery") - dev_battery = text2num(params["battery"]) - fabricate_and_recalc_price(0) - return 1 - if("hw_disk") - dev_disk = text2num(params["disk"]) - fabricate_and_recalc_price(0) - return 1 - if("hw_netcard") - dev_netcard = text2num(params["netcard"]) - fabricate_and_recalc_price(0) - return 1 - if("hw_tesla") - dev_apc_recharger = text2num(params["tesla"]) - fabricate_and_recalc_price(0) - return 1 - if("hw_nanoprint") - dev_printer = text2num(params["print"]) - fabricate_and_recalc_price(0) - return 1 - if("hw_card") - dev_card = text2num(params["card"]) - fabricate_and_recalc_price(0) - return 1 - return 0 - -/obj/machinery/lapvend/attack_hand(mob/user) - ui_interact(user) - -/obj/machinery/lapvend/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = 0, datum/tgui/master_ui = null, datum/ui_state/state = default_state) - if(stat & (BROKEN | NOPOWER | MAINT)) - if(ui) - ui.close() - return 0 - - - - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) - if (!ui) - ui = new(user, src, ui_key, "computer_fabricator", "Personal Computer Vendor", 500, 400, state = state) - ui.open() - ui.set_autoupdate(state = 1) - - -/obj/machinery/lapvend/attackby(obj/item/I as obj, mob/user as mob) - if(istype(I,/obj/item/stack/spacecash)) - var/obj/item/stack/spacecash/c = I - - if(!user.drop_item(c)) - return - credits += c.value - visible_message("[usr] inserts [c.value] credits into the [src].") - qdel(c) - return - - return ..() - - -// Simplified payment processing, returns 1 on success. -/obj/machinery/lapvend/proc/process_payment() - if(total_price > credits) - say("Insufficient credits.") - return 0 - else - return 1 - -/obj/machinery/lapvend/ui_data(mob/user) - - var/list/data = list() - data["state"] = state - if(state == 1) - data["devtype"] = devtype - data["hw_battery"] = dev_battery - data["hw_disk"] = dev_disk - data["hw_netcard"] = dev_netcard - data["hw_tesla"] = dev_apc_recharger - data["hw_nanoprint"] = dev_printer - data["hw_card"] = dev_card - data["hw_cpu"] = dev_cpu - if(state == 1 || state == 2) - data["totalprice"] = total_price - data["credits"] = credits - - return data - - -/obj/machinery/lapvend/proc/try_purchase() - // Awaiting payment state - if(state == 2) - if(process_payment()) - fabricate_and_recalc_price(1) - if((devtype == 1) && fabricated_laptop) - fabricated_laptop.forceMove(src.loc) - fabricated_laptop = null - else if((devtype == 2) && fabricated_tablet) - fabricated_tablet.forceMove(src.loc) - fabricated_tablet = null - credits -= total_price - say("Enjoy your new product!") - state = 3 - return 1 - return 0 \ No newline at end of file diff --git a/code/modules/ninja/energy_katana.dm b/code/modules/ninja/energy_katana.dm index 0218ba27db..354d2f4db9 100644 --- a/code/modules/ninja/energy_katana.dm +++ b/code/modules/ninja/energy_katana.dm @@ -6,7 +6,6 @@ force = 40 throwforce = 20 armour_penetration = 50 - resistance_flags = LAVA_PROOF | FIRE_PROOF | ACID_PROOF var/datum/effect_system/spark_spread/spark_system /obj/item/weapon/katana/energy/afterattack(atom/target, mob/user, proximity_flag, click_parameters) @@ -38,7 +37,7 @@ /obj/item/weapon/katana/energy/proc/returnToOwner(mob/living/carbon/human/user, doSpark = 1, caught = 0) if(!istype(user)) return - forceMove(get_turf(user)) + loc = get_turf(src) if(doSpark) spark_system.start() @@ -51,6 +50,7 @@ else if(user.equip_to_slot_if_possible(src, slot_belt, 0, 1, 1)) msg = "Your Energy Katana teleports back to you, sheathing itself as it does so!" else + loc = get_turf(user) msg = "Your Energy Katana teleports to your location!" if(caught) diff --git a/code/modules/ninja/ninja_event.dm b/code/modules/ninja/ninja_event.dm index 2a82af0808..574257b719 100644 --- a/code/modules/ninja/ninja_event.dm +++ b/code/modules/ninja/ninja_event.dm @@ -14,7 +14,7 @@ Contents: typepath = /datum/round_event/ghost_role/ninja max_occurrences = 1 earliest_start = 30000 // 1 hour - min_players = 15 + /datum/round_event/ghost_role/ninja var/success_spawn = 0 @@ -55,7 +55,7 @@ Contents: if(!candidates.len) return NOT_ENOUGH_PLAYERS - var/mob/dead/selected_candidate = pick_n_take(candidates) + var/mob/dead/selected_candidate = popleft(candidates) var/key = selected_candidate.key //Prepare ninja player mind @@ -66,7 +66,7 @@ Contents: var/list/possible_targets = list() for(var/datum/mind/M in ticker.minds) if(M.current && M.current.stat != DEAD) - if(ishuman(M.current)) + if(istype(M.current,/mob/living/carbon/human)) if(M.special_role) possible_targets[M] = 0 //bad-guy else if(M.assigned_role in command_positions) diff --git a/code/modules/ninja/suit/gloves.dm b/code/modules/ninja/suit/gloves.dm index b37bc147cb..51b18f4c43 100644 --- a/code/modules/ninja/suit/gloves.dm +++ b/code/modules/ninja/suit/gloves.dm @@ -31,7 +31,6 @@ heat_protection = HANDS max_heat_protection_temperature = GLOVES_MAX_TEMP_PROTECT strip_delay = 120 - resistance_flags = LAVA_PROOF | FIRE_PROOF | ACID_PROOF var/draining = 0 var/candrain = 0 var/mindrain = 200 @@ -41,7 +40,7 @@ /obj/item/clothing/gloves/space_ninja/Touch(atom/A,proximity) if(!candrain || draining) return 0 - if(!ishuman(loc)) + if(!istype(loc, /mob/living/carbon/human)) return 0 //Only works while worn var/mob/living/carbon/human/H = loc diff --git a/code/modules/ninja/suit/head.dm b/code/modules/ninja/suit/head.dm index 7ada5de3ea..5707a1bd80 100644 --- a/code/modules/ninja/suit/head.dm +++ b/code/modules/ninja/suit/head.dm @@ -5,8 +5,7 @@ name = "ninja hood" icon_state = "s-ninja" item_state = "s-ninja_mask" - armor = list(melee = 60, bullet = 50, laser = 30,energy = 15, bomb = 30, bio = 30, rad = 25, fire = 100, acid = 100) + armor = list(melee = 60, bullet = 50, laser = 30,energy = 15, bomb = 30, bio = 30, rad = 25) strip_delay = 12 - resistance_flags = LAVA_PROOF | FIRE_PROOF | ACID_PROOF - blockTracking = 1//Roughly the only unique thing about this helmet. - flags_inv = HIDEEARS|HIDEEYES|HIDEFACE|HIDEHAIR|HIDEFACIALHAIR \ No newline at end of file + unacidable = 1 + blockTracking = 1//Roughly the only unique thing about this helmet. \ No newline at end of file diff --git a/code/modules/ninja/suit/mask.dm b/code/modules/ninja/suit/mask.dm index 81d37886dd..f5c5b4dbd4 100644 --- a/code/modules/ninja/suit/mask.dm +++ b/code/modules/ninja/suit/mask.dm @@ -16,4 +16,3 @@ Contents: icon_state = "s-ninja" item_state = "s-ninja_mask" strip_delay = 120 - resistance_flags = LAVA_PROOF | FIRE_PROOF | ACID_PROOF diff --git a/code/modules/ninja/suit/n_suit_verbs/energy_net_nets.dm b/code/modules/ninja/suit/n_suit_verbs/energy_net_nets.dm index a29a42f89a..04c0c796f2 100644 --- a/code/modules/ninja/suit/n_suit_verbs/energy_net_nets.dm +++ b/code/modules/ninja/suit/n_suit_verbs/energy_net_nets.dm @@ -3,7 +3,7 @@ It will teleport people to a holding facility after 30 seconds. (Check the proce It is possible to destroy the net by the occupant or someone else. */ -/obj/structure/energy_net +/obj/effect/energy_net name = "energy net" desc = "It's a net made of green energy." icon = 'icons/effects/effects.dmi' @@ -14,21 +14,27 @@ It is possible to destroy the net by the occupant or someone else. mouse_opacity = 1//So you can hit it with stuff. anchored = 1//Can't drag/grab the trapped mob. layer = ABOVE_ALL_MOB_LAYER - obj_integrity = 25//How much health it has. - max_integrity = 25 + var/health = 25//How much health it has. var/mob/living/affecting = null//Who it is currently affecting, if anyone. var/mob/living/master = null//Who shot web. Will let this person know if the net was successful or failed. -/obj/structure/energy_net/play_attack_sound(damage, damage_type = BRUTE, damage_flag = 0) +/obj/effect/energy_net/proc/take_damage(damage, damage_type = BRUTE, sound_effect = 1) switch(damage_type) if(BRUTE) - playsound(src.loc, 'sound/weapons/slash.ogg', 80, 1) + if(sound_effect) + playsound(src.loc, 'sound/weapons/slash.ogg', 80, 1) if(BURN) - playsound(src.loc, 'sound/weapons/slash.ogg', 80, 1) + if(sound_effect) + playsound(src.loc, 'sound/weapons/slash.ogg', 80, 1) + else + return + health -= damage + if(health <=0) + qdel(src) -/obj/structure/energy_net/Destroy() +/obj/effect/energy_net/Destroy() if(affecting) var/mob/living/carbon/M = affecting M.anchored = 0 @@ -38,7 +44,7 @@ It is possible to destroy the net by the occupant or someone else. master << "ERROR: unable to initiate transport protocol. Procedure terminated." return ..() -/obj/structure/energy_net/process(mob/living/carbon/M) +/obj/effect/energy_net/process(mob/living/carbon/M) var/check = 30//30 seconds before teleportation. Could be extended I guess. var/mob_name = affecting.name//Since they will report as null if terminated before teleport. //The person can still try and attack the net when inside. @@ -61,33 +67,37 @@ It is possible to destroy the net by the occupant or someone else. density = 0//Make the net pass-through. invisibility = INVISIBILITY_ABSTRACT//Make the net invisible so all the animations can play out. - resistance_flags |= INDESTRUCTIBLE //Make the net invincible so that an explosion/something else won't kill it while, spawn() is running. + health = INFINITY//Make the net invincible so that an explosion/something else won't kill it while, spawn() is running. for(var/obj/item/W in M) - if(ishuman(M)) - var/mob/living/carbon/human/H = M - if(W == H.w_uniform) + if(istype(M,/mob/living/carbon/human)) + if(W==M:w_uniform) continue//So all they're left with are shoes and uniform. - if(W == H.shoes) + if(W==M:shoes) continue M.unEquip(W) - playsound(M.loc, 'sound/effects/sparks4.ogg', 50, 1) - PoolOrNew(/obj/effect/overlay/temp/dir_setting/ninja/phase/out, list(get_turf(M), M.dir)) + spawn(0) + playsound(M.loc, 'sound/effects/sparks4.ogg', 50, 1) + anim(M.loc,M,'icons/mob/mob.dmi',,"phaseout",,M.dir) - visible_message("[M] suddenly vanishes!") - M.forceMove(pick(holdingfacility)) //Throw mob in to the holding facility. + M.loc = pick(holdingfacility)//Throw mob in to the holding facility. M << "You appear in a strange place!" + spawn(0) + var/datum/effect_system/spark_spread/spark_system = new /datum/effect_system/spark_spread() + spark_system.set_up(5, 0, M.loc) + spark_system.start() + playsound(M.loc, 'sound/effects/phasein.ogg', 25, 1) + playsound(M.loc, 'sound/effects/sparks2.ogg', 50, 1) + anim(M.loc,M,'icons/mob/mob.dmi',,"phasein",,M.dir) + qdel(src)//Wait for everything to finish, delete the net. Else it will stop everything once net is deleted, including the spawn(0). + + for(var/mob/O in viewers(src, 3)) + O.show_message("[M] vanishes!", 1, "You hear sparks flying!", 2) + if(!isnull(master))//As long as they still exist. master << "SUCCESS: transport procedure of \the [affecting] complete." M.notransform = 0 - var/datum/effect_system/spark_spread/spark_system = new /datum/effect_system/spark_spread() - spark_system.set_up(5, 0, M.loc) - spark_system.start() - playsound(M.loc, 'sound/effects/phasein.ogg', 25, 1) - playsound(M.loc, 'sound/effects/sparks2.ogg', 50, 1) - PoolOrNew(/obj/effect/overlay/temp/dir_setting/ninja/phase, list(get_turf(M), M.dir)) - qdel(src) else//And they are free. M << "You are free of the net!" @@ -96,7 +106,61 @@ It is possible to destroy the net by the occupant or someone else. -/obj/structure/energy_net/attack_paw(mob/user) +/obj/effect/energy_net/bullet_act(obj/item/projectile/Proj) + . = ..() + take_damage(Proj.damage, Proj.damage_type) + + + +/obj/effect/energy_net/ex_act(severity, target) + switch(severity) + if(1) + qdel(src) + if(2) + qdel(src) + if(3) + take_damage(rand(10,25), BRUTE, 0) + +/obj/effect/energy_net/blob_act(obj/effect/blob/B) + qdel(src) + +/obj/effect/energy_net/hitby(atom/movable/AM) + ..() + var/tforce = 0 + if(ismob(AM)) + tforce = 10 + else if(isobj(AM)) + var/obj/O = AM + tforce = O.throwforce + take_damage(tforce) + + +/obj/effect/energy_net/attack_hulk(mob/living/carbon/human/user) + ..(user, 1) + user.visible_message("[user] rips the energy net apart!", \ + "You easily destroy the energy net.") + qdel(src) + + + +/obj/effect/energy_net/attack_paw(mob/user) return attack_hand() + +/obj/effect/energy_net/attack_alien(mob/living/user) + user.do_attack_animation(src) + user.changeNext_move(CLICK_CD_MELEE) + playsound(src.loc, 'sound/weapons/slash.ogg', 80, 1) + user.visible_message("[user] slices the energy net apart!", \ + "\green You slice the energy net to pieces.") + qdel(src) + + + +/obj/effect/energy_net/attacked_by(obj/item/weapon/W, mob/user) + ..() + take_damage(W.force, W.damtype) + + + diff --git a/code/modules/ninja/suit/n_suit_verbs/ninja_adrenaline.dm b/code/modules/ninja/suit/n_suit_verbs/ninja_adrenaline.dm index f76f974e64..b77c67970e 100644 --- a/code/modules/ninja/suit/n_suit_verbs/ninja_adrenaline.dm +++ b/code/modules/ninja/suit/n_suit_verbs/ninja_adrenaline.dm @@ -23,6 +23,5 @@ reagents.trans_id_to(H, "radium", a_transfer) H << "You are beginning to feel the after-effect of the injection." a_boost-- - H << "There are [a_boost] adrenaline boosts remaining." s_coold = 3 return \ No newline at end of file diff --git a/code/modules/ninja/suit/n_suit_verbs/ninja_net.dm b/code/modules/ninja/suit/n_suit_verbs/ninja_net.dm index b196e0663f..34d47d7e46 100644 --- a/code/modules/ninja/suit/n_suit_verbs/ninja_net.dm +++ b/code/modules/ninja/suit/n_suit_verbs/ninja_net.dm @@ -9,22 +9,22 @@ if(!ninjacost(200,N_STEALTH_CANCEL) && iscarbon(C)) var/mob/living/carbon/human/H = affecting if(C.client)//Monkeys without a client can still step_to() and bypass the net. Also, netting inactive people is lame. - if(!locate(/obj/structure/energy_net) in C.loc)//Check if they are already being affected by an energy net. + if(!locate(/obj/effect/energy_net) in C.loc)//Check if they are already being affected by an energy net. for(var/turf/T in getline(H.loc, C.loc)) if(T.density)//Don't want them shooting nets through walls. It's kind of cheesy. H << "You may not use an energy net through solid obstacles!" return spawn(0) - H.Beam(C,"n_beam",time=15) + H.Beam(C,"n_beam",,15) H.say("Get over here!") - var/obj/structure/energy_net/E = new /obj/structure/energy_net(C.loc) + var/obj/effect/energy_net/E = new /obj/effect/energy_net(C.loc) H.visible_message("[H] caught [C] with an energy net!","You caught [C] with an energy net!") E.affecting = C E.master = H spawn(0)//Parallel processing. E.process(C) else - H << "[C.p_they(TRUE)] are already trapped inside an energy net!" + H << "They are already trapped inside an energy net!" else - H << "[C.p_they(TRUE)] will bring no honor to your Clan!" + H << "They will bring no honor to your Clan!" return \ No newline at end of file diff --git a/code/modules/ninja/suit/n_suit_verbs/ninja_stars.dm b/code/modules/ninja/suit/n_suit_verbs/ninja_stars.dm index 39e7f5c570..1fa003fa76 100644 --- a/code/modules/ninja/suit/n_suit_verbs/ninja_stars.dm +++ b/code/modules/ninja/suit/n_suit_verbs/ninja_stars.dm @@ -9,11 +9,11 @@ if(!ninjacost(10)) var/mob/living/carbon/human/H = affecting - var/obj/item/weapon/throwing_star/ninja/N = new(H) - if(H.put_in_hands(N)) + var/slot = H.hand ? slot_l_hand : slot_r_hand + + if(H.equip_to_slot_or_del(new /obj/item/weapon/throwing_star/ninja(H), slot)) H << "A throwing star has been created in your hand!" - else - qdel(N) + H.throw_mode_on() //So they can quickly throw it. diff --git a/code/modules/ninja/suit/n_suit_verbs/ninja_stealth.dm b/code/modules/ninja/suit/n_suit_verbs/ninja_stealth.dm index b21119d52b..c7a1f0f143 100644 --- a/code/modules/ninja/suit/n_suit_verbs/ninja_stealth.dm +++ b/code/modules/ninja/suit/n_suit_verbs/ninja_stealth.dm @@ -18,9 +18,9 @@ Contents: U << "You don't have enough power to enable Stealth!" return s_active=!s_active - animate(U, alpha = 50,time = 15) + animate(U, alpha = 0,time = 15) U.visible_message("[U.name] vanishes into thin air!", \ - "You are now mostly invisible to normal detection.") + "You are now invisible to normal detection.") return diff --git a/code/modules/ninja/suit/n_suit_verbs/ninja_sword_recall.dm b/code/modules/ninja/suit/n_suit_verbs/ninja_sword_recall.dm index de1e78e16d..fb38a3fbdd 100644 --- a/code/modules/ninja/suit/n_suit_verbs/ninja_sword_recall.dm +++ b/code/modules/ninja/suit/n_suit_verbs/ninja_sword_recall.dm @@ -1,7 +1,7 @@ /obj/item/clothing/suit/space/space_ninja/proc/ninja_sword_recall() set name = "Recall Energy Katana (Variable Cost)" - set desc = "Teleports the Energy Katana linked to this suit to its wearer, cost based on distance." + set desc = "Teleports the Energy Katana linked to this suit to it's wearer, cost based on distance." set category = "Ninja Ability" set popup_menu = 0 @@ -32,6 +32,9 @@ if(energyKatana in C.stomach_contents) C.stomach_contents -= energyKatana + if(energyKatana in C.internal_organs) + C.internal_organs -= energyKatana + energyKatana.loc = get_turf(energyKatana) if(inview) //If we can see the katana, throw it towards ourselves, damaging people as we go. diff --git a/code/modules/ninja/suit/n_suit_verbs/ninja_teleporting.dm b/code/modules/ninja/suit/n_suit_verbs/ninja_teleporting.dm index 12c9b82a58..d8a8b64277 100644 --- a/code/modules/ninja/suit/n_suit_verbs/ninja_teleporting.dm +++ b/code/modules/ninja/suit/n_suit_verbs/ninja_teleporting.dm @@ -12,7 +12,7 @@ Contents: //Handles elporting while grabbing someone /obj/item/clothing/suit/space/space_ninja/proc/handle_teleport_grab(turf/T, mob/living/H) - if(H.pulling && (isliving(H.pulling))) + if(H.pulling && (istype(H.pulling, /mob/living))) var/mob/living/victim = H.pulling if(!victim.anchored) victim.forceMove(locate(T.x+rand(-1,1),T.y+rand(-1,1),T.z)) @@ -31,19 +31,22 @@ Contents: var/turf/destination = get_teleport_loc(H.loc,H,9,1,3,1,0,1) var/turf/mobloc = get_turf(H.loc)//Safety - if(destination && isturf(mobloc))//So we don't teleport out of containers - playsound(H.loc, "sparks", 50, 1) - PoolOrNew(/obj/effect/overlay/temp/dir_setting/ninja/phase/out, list(get_turf(H), H.dir)) + if(destination&&istype(mobloc, /turf))//So we don't teleport out of containers + spawn(0) + playsound(H.loc, "sparks", 50, 1) + anim(mobloc,src,'icons/mob/mob.dmi',,"phaseout",,H.dir) handle_teleport_grab(destination, H) H.loc = destination - spark_system.start() - playsound(H.loc, 'sound/effects/phasein.ogg', 25, 1) - playsound(H.loc, "sparks", 50, 1) - PoolOrNew(/obj/effect/overlay/temp/dir_setting/ninja/phase, list(get_turf(H), H.dir)) + spawn(0) + spark_system.start() + playsound(H.loc, 'sound/effects/phasein.ogg', 25, 1) + playsound(H.loc, "sparks", 50, 1) + anim(H.loc,H,'icons/mob/mob.dmi',,"phasein",,H.dir) - destination.phase_damage_creatures(20,H)//Paralyse and damage mobs and mechas on the turf + spawn(0) + destination.phase_damage_creatures(20,H)//Paralyse and damage mobs and mechas on the turf s_coold = 1 else H << "The VOID-shift device is malfunctioning, teleportation failed." @@ -60,19 +63,22 @@ Contents: if(!ninjacost(200,N_STEALTH_CANCEL)) var/mob/living/carbon/human/H = affecting var/turf/mobloc = get_turf(H.loc)//To make sure that certain things work properly below. - if(T.density && isturf(mobloc)) - playsound(H.loc, "sparks", 50, 1) - PoolOrNew(/obj/effect/overlay/temp/dir_setting/ninja/phase/out, list(get_turf(H), H.dir)) + if((!T.density)&&istype(mobloc, /turf)) + spawn(0) + playsound(H.loc, 'sound/effects/sparks4.ogg', 50, 1) + anim(mobloc,src,'icons/mob/mob.dmi',,"phaseout",,H.dir) handle_teleport_grab(T, H) H.loc = T - spark_system.start() - playsound(H.loc, 'sound/effects/phasein.ogg', 25, 1) - playsound(H.loc, "sparks", 50, 1) - PoolOrNew(/obj/effect/overlay/temp/dir_setting/ninja/phase, list(get_turf(H), H.dir)) + spawn(0) + spark_system.start() + playsound(H.loc, 'sound/effects/phasein.ogg', 25, 1) + playsound(H.loc, 'sound/effects/sparks2.ogg', 50, 1) + anim(H.loc,H,'icons/mob/mob.dmi',,"phasein",,H.dir) - T.phase_damage_creatures(20,H)//Paralyse and damage mobs and mechas on the turf + spawn(0)//Any living mobs in teleport area are gibbed. + T.phase_damage_creatures(20,H)//Paralyse and damage mobs and mechas on the turf s_coold = 1 else H << "You cannot teleport into solid walls or from solid matter" diff --git a/code/modules/ninja/suit/ninjaDrainAct.dm b/code/modules/ninja/suit/ninjaDrainAct.dm index 9d53bbf1c8..3a48faefcb 100644 --- a/code/modules/ninja/suit/ninjaDrainAct.dm +++ b/code/modules/ninja/suit/ninjaDrainAct.dm @@ -281,5 +281,5 @@ They *could* go in their appropriate files, but this is supposed to be modular var/datum/effect_system/spark_spread/spark_system = new /datum/effect_system/spark_spread() spark_system.set_up(5, 0, loc) playsound(src, "sparks", 50, 1) - visible_message("[H] electrocutes [src] with [H.p_their()] touch!", "[H] electrocutes you with [H.p_their()] touch!") + visible_message("[H] electrocutes [src] with their touch!", "[H] electrocutes you with their touch!") electrocute_act(25, H) diff --git a/code/modules/ninja/suit/shoes.dm b/code/modules/ninja/suit/shoes.dm index ac8326b13f..732f8a37e8 100644 --- a/code/modules/ninja/suit/shoes.dm +++ b/code/modules/ninja/suit/shoes.dm @@ -6,8 +6,7 @@ item_state = "secshoes" permeability_coefficient = 0.01 flags = NOSLIP - resistance_flags = LAVA_PROOF | FIRE_PROOF | ACID_PROOF - armor = list(melee = 60, bullet = 50, laser = 30,energy = 15, bomb = 30, bio = 30, rad = 30, fire = 100, acid = 100) + armor = list(melee = 60, bullet = 50, laser = 30,energy = 15, bomb = 30, bio = 30, rad = 30) strip_delay = 120 cold_protection = FEET min_cold_protection_temperature = SHOES_MIN_TEMP_PROTECT diff --git a/code/modules/ninja/suit/suit.dm b/code/modules/ninja/suit/suit.dm index bdf6f2b3eb..65d10c3eb0 100644 --- a/code/modules/ninja/suit/suit.dm +++ b/code/modules/ninja/suit/suit.dm @@ -18,8 +18,8 @@ Contents: item_state = "s-ninja_suit" allowed = list(/obj/item/weapon/gun,/obj/item/ammo_box,/obj/item/ammo_casing,/obj/item/weapon/melee/baton,/obj/item/weapon/restraints/handcuffs,/obj/item/weapon/tank/internals,/obj/item/weapon/stock_parts/cell) slowdown = 0 - resistance_flags = LAVA_PROOF | ACID_PROOF - armor = list(melee = 60, bullet = 50, laser = 30,energy = 15, bomb = 30, bio = 30, rad = 30, fire = 100, acid = 100) + unacidable = 1 + armor = list(melee = 60, bullet = 50, laser = 30,energy = 15, bomb = 30, bio = 30, rad = 30) strip_delay = 12 //Important parts of the suit. diff --git a/code/modules/ninja/suit/suit_attackby.dm b/code/modules/ninja/suit/suit_attackby.dm index f5c8f60acd..775143b8fe 100644 --- a/code/modules/ninja/suit/suit_attackby.dm +++ b/code/modules/ninja/suit/suit_attackby.dm @@ -41,24 +41,15 @@ else if(istype(I, /obj/item/weapon/disk/tech_disk))//If it's a data disk, we want to copy the research on to the suit. var/obj/item/weapon/disk/tech_disk/TD = I - var/has_research = 0 - for(var/V in TD.tech_stored) - if(V) - has_research = 1 - break - if(has_research)//If it has something on it. + if(TD.stored)//If it has something on it. U << "Research information detected, processing..." if(do_after(U,s_delay, target = src)) - for(var/V1 in 1 to TD.max_tech_stored) - var/datum/tech/new_data = TD.tech_stored[V1] - TD.tech_stored[V1] = null - if(!new_data) - continue - for(var/V2 in stored_research) - var/datum/tech/current_data = V2 - if(current_data.id == new_data.id) - current_data.level = max(current_data.level, new_data.level) - break + for(var/datum/tech/current_data in stored_research) + if(current_data.id==TD.stored.id) + if(current_data.levelData analyzed and updated. Disk erased." else U << "ERROR: Procedure interrupted. Process terminated." diff --git a/code/modules/orbit/orbit.dm b/code/modules/orbit/orbit.dm deleted file mode 100644 index 4165a2ad52..0000000000 --- a/code/modules/orbit/orbit.dm +++ /dev/null @@ -1,121 +0,0 @@ -/datum/orbit - var/atom/movable/orbiter - var/atom/orbiting - var/lock = TRUE - var/turf/lastloc - var/lastprocess - -/datum/orbit/New(_orbiter, _orbiting, _lock) - orbiter = _orbiter - orbiting = _orbiting - SSorbit.processing += src - if (!orbiting.orbiters) - orbiting.orbiters = list() - orbiting.orbiters += src - - if (orbiter.orbiting) - orbiter.stop_orbit() - orbiter.orbiting = src - Check() - lock = _lock - - - -//do not qdel directly, use stop_orbit on the orbiter. (This way the orbiter can bind to the orbit stopping) -/datum/orbit/Destroy(force = FALSE) - SSorbit.processing -= src - if (orbiter) - orbiter.orbiting = null - orbiter = null - if (orbiting) - if (orbiting.orbiters) - orbiting.orbiters -= src - if (!orbiting.orbiters.len)//we are the last orbit, delete the list - orbiting.orbiters = null - orbiting = null - ..() - -/datum/orbit/proc/Check(turf/targetloc) - if (!orbiter) - qdel(src) - return - if (!orbiting) - orbiter.stop_orbit() - return - if (!orbiter.orbiting) //admin wants to stop the orbit. - orbiter.orbiting = src //set it back to us first - orbiter.stop_orbit() - lastprocess = world.time - if (!targetloc) - targetloc = get_turf(orbiting) - if (!targetloc || (!lock && orbiter.loc != lastloc && orbiter.loc != targetloc)) - orbiter.stop_orbit() - return - orbiter.loc = targetloc - orbiter.update_parallax_contents() - lastloc = orbiter.loc - - -/atom/movable/var/datum/orbit/orbiting = null -/atom/var/list/orbiters = null - -//A: atom to orbit -//radius: range to orbit at, radius of the circle formed by orbiting (in pixels) -//clockwise: whether you orbit clockwise or anti clockwise -//rotation_speed: how fast to rotate (how many ds should it take for a rotation to complete) -//rotation_segments: the resolution of the orbit circle, less = a more block circle, this can be used to produce hexagons (6 segments) triangles (3 segments), and so on, 36 is the best default. -//pre_rotation: Chooses to rotate src 90 degress towards the orbit dir (clockwise/anticlockwise), useful for things to go "head first" like ghosts -//lockinorbit: Forces src to always be on A's turf, otherwise the orbit cancels when src gets too far away (eg: ghosts) - -/atom/movable/proc/orbit(atom/A, radius = 10, clockwise = FALSE, rotation_speed = 20, rotation_segments = 36, pre_rotation = TRUE, lockinorbit = FALSE) - if (!istype(A)) - return - - new/datum/orbit(src, A, lockinorbit) - if (!orbiting) //something failed, and our orbit datum deleted itself - return - var/matrix/initial_transform = matrix(transform) - - //Head first! - if (pre_rotation) - var/matrix/M = matrix(transform) - var/pre_rot = 90 - if(!clockwise) - pre_rot = -90 - M.Turn(pre_rot) - transform = M - - var/matrix/shift = matrix(transform) - shift.Translate(0,radius) - transform = shift - - SpinAnimation(rotation_speed, -1, clockwise, rotation_segments) - - //we stack the orbits up client side, so we can assign this back to normal server side without it breaking the orbit - transform = initial_transform - -/atom/movable/proc/stop_orbit() - SpinAnimation(0,0) - qdel(orbiting) - -/atom/movable/Moved(atom/OldLoc, Dir) - ..() - if (orbiters) - for (var/thing in orbiters) - var/datum/orbit/O = thing - O.Check() - if (orbiting) - orbiting.Check() - -/atom/Destroy(force = FALSE) - ..() - if (orbiters) - for (var/thing in orbiters) - var/datum/orbit/O = thing - if (O.orbiter) - O.orbiter.stop_orbit() - -/atom/movable/Destroy(force = FALSE) - ..() - if (orbiting) - stop_orbit() \ No newline at end of file diff --git a/code/modules/paperwork/clipboard.dm b/code/modules/paperwork/clipboard.dm index 3d26f38b9e..209212f113 100644 --- a/code/modules/paperwork/clipboard.dm +++ b/code/modules/paperwork/clipboard.dm @@ -4,17 +4,16 @@ icon_state = "clipboard" item_state = "clipboard" throwforce = 0 - w_class = WEIGHT_CLASS_SMALL + w_class = 2 throw_speed = 3 throw_range = 7 var/obj/item/weapon/pen/haspen //The stored pen. var/obj/item/weapon/paper/toppaper //The topmost piece of paper. slot_flags = SLOT_BELT - resistance_flags = FLAMMABLE + burn_state = FLAMMABLE /obj/item/weapon/clipboard/New() update_icon() - ..() /obj/item/weapon/clipboard/update_icon() @@ -36,7 +35,7 @@ user << "You clip the paper onto \the [src]." update_icon() else if(toppaper) - toppaper.attackby(user.get_active_held_item(), user) + toppaper.attackby(usr.get_active_hand(), usr) update_icon() @@ -76,9 +75,8 @@ if(href_list["addpen"]) if(!haspen) - var/obj/item/held = usr.get_active_held_item() - if(istype(held, /obj/item/weapon/pen)) - var/obj/item/weapon/pen/W = held + if(istype(usr.get_active_hand(), /obj/item/weapon/pen)) + var/obj/item/weapon/pen/W = usr.get_active_hand() if(!usr.unEquip(W)) return W.loc = src @@ -88,8 +86,8 @@ if(href_list["write"]) var/obj/item/P = locate(href_list["write"]) if(istype(P) && P.loc == src) - if(usr.get_active_held_item()) - P.attackby(usr.get_active_held_item(), usr) + if(usr.get_active_hand()) + P.attackby(usr.get_active_hand(), usr) if(href_list["remove"]) var/obj/item/P = locate(href_list["remove"]) diff --git a/code/modules/paperwork/contract.dm b/code/modules/paperwork/contract.dm index 0762e2fd59..b45217d697 100644 --- a/code/modules/paperwork/contract.dm +++ b/code/modules/paperwork/contract.dm @@ -3,7 +3,7 @@ /obj/item/weapon/paper/contract throw_range = 3 throw_speed = 3 - var/signed = FALSE + var/signed = 0 var/datum/mind/target flags = NOBLUDGEON @@ -55,7 +55,7 @@ /obj/item/weapon/paper/contract/infernal var/contractType = 0 - resistance_flags = LAVA_PROOF | FIRE_PROOF | ACID_PROOF + burn_state = LAVA_PROOF var/datum/mind/owner icon_state = "paper_onfire" @@ -78,7 +78,6 @@ /obj/item/weapon/paper/contract/infernal/revive name = "paper- contract of resurrection" contractType = CONTRACT_REVIVE - var/cooldown = FALSE /obj/item/weapon/paper/contract/infernal/knowledge name = "paper- contract for knowledge" @@ -94,13 +93,13 @@ target = nTarget update_text() -/obj/item/weapon/paper/contract/infernal +/obj/item/weapon/paper/contract/infernal/ /obj/item/weapon/paper/contract/infernal/suicide_act(mob/user) if(signed && (user == target.current) && istype(user,/mob/living/carbon/human/)) var/mob/living/carbon/human/H = user H.forcesay("OH GREAT INFERNO! I DEMAND YOU COLLECT YOUR BOUNTY IMMEDIATELY!") - H.visible_message("[H] holds up a contract claiming [user.p_their()] soul, then immediately catches fire. It looks like [user.p_theyre()] trying to commit suicide!") + H.visible_message("[H] holds up a contract claiming his soul, then immediately catches fire. It looks like \he's trying to commit suicide!") H.adjust_fire_stacks(20) H.IgniteMob() return(FIRELOSS) @@ -108,56 +107,28 @@ ..() /obj/item/weapon/paper/contract/infernal/update_text() - info = "This shouldn't be seen. Error DEVIL:6" + info = "This shouldn't be seen. Error DEVIL:5" -/obj/item/weapon/paper/contract/infernal/power/update_text(signature = "____________", blood = 0) - info = "
    Contract for infernal power



    I, [target] of sound mind, do hereby willingly offer my soul to the infernal hells by way of the infernal agent [owner.devilinfo.truename], in exchange for power and physical strength. I understand that upon my demise, my soul shall fall into the infernal hells, and my body may not be resurrected, cloned, or otherwise brought back to life. I also understand that this will prevent my brain from being used in an MMI.


    Signed, " - if(blood) - info += "[signature]" - else - info += "[signature]" +/obj/item/weapon/paper/contract/infernal/power/update_text(var/signature = "____________") + info = "
    Contract for infernal power



    I, [target] of sound mind, do hereby willingly offer my soul to the infernal hells by way of the infernal agent [owner.devilinfo.truename], in exchange for power and physical strength. I understand that upon my demise, my soul shall fall into the infernal hells, and my body may not be resurrected, cloned, or otherwise brought back to life. I also understand that this will prevent my brain from being used in an MMI.


    Signed, [signature]" -/obj/item/weapon/paper/contract/infernal/wealth/update_text(signature = "____________", blood = 0) - info = "
    Contract for unlimited wealth



    I, [target] of sound mind, do hereby willingly offer my soul to the infernal hells by way of the infernal agent [owner.devilinfo.truename], in exchange for a pocket that never runs out of valuable resources. I understand that upon my demise, my soul shall fall into the infernal hells, and my body may not be resurrected, cloned, or otherwise brought back to life. I also understand that this will prevent my brain from being used in an MMI.


    Signed, " - if(blood) - info += "[signature]" - else - info += "[signature]" +/obj/item/weapon/paper/contract/infernal/wealth/update_text(var/signature = "____________") + info = "
    Contract for unlimited wealth



    I, [target] of sound mind, do hereby willingly offer my soul to the infernal hells by way of the infernal agent [owner.devilinfo.truename], in exchange for a pocket that never runs out of valuable resources. I understand that upon my demise, my soul shall fall into the infernal hells, and my body may not be resurrected, cloned, or otherwise brought back to life. I also understand that this will prevent my brain from being used in an MMI.


    Signed, [signature]" -/obj/item/weapon/paper/contract/infernal/prestige/update_text(signature = "____________", blood = 0) - info = "
    Contract for prestige



    I, [target] of sound mind, do hereby willingly offer my soul to the infernal hells by way of the infernal agent [owner.devilinfo.truename], in exchange for prestige and esteem among my peers. I understand that upon my demise, my soul shall fall into the infernal hells, and my body may not be resurrected, cloned, or otherwise brought back to life. I also understand that this will prevent my brain from being used in an MMI.


    Signed, " - if(blood) - info += "[signature]" - else - info += "[signature]" +/obj/item/weapon/paper/contract/infernal/prestige/update_text(var/signature = "____________") + info = "
    Contract for prestige



    I, [target] of sound mind, do hereby willingly offer my soul to the infernal hells by way of the infernal agent [owner.devilinfo.truename], in exchange for prestige and esteem among my peers. I understand that upon my demise, my soul shall fall into the infernal hells, and my body may not be resurrected, cloned, or otherwise brought back to life. I also understand that this will prevent my brain from being used in an MMI.


    Signed, [signature]" -/obj/item/weapon/paper/contract/infernal/magic/update_text(signature = "____________", blood = 0) - info = "
    Contract for magic



    I, [target] of sound mind, do hereby willingly offer my soul to the infernal hells by way of the infernal agent [owner.devilinfo.truename], in exchange for arcane abilities beyond normal human ability. I understand that upon my demise, my soul shall fall into the infernal hells, and my body may not be resurrected, cloned, or otherwise brought back to life. I also understand that this will prevent my brain from being used in an MMI.


    Signed, " - if(blood) - info += "[signature]" - else - info += "[signature]" +/obj/item/weapon/paper/contract/infernal/magic/update_text(var/signature = "____________") + info = "
    Contract for magic



    I, [target] of sound mind, do hereby willingly offer my soul to the infernal hells by way of the infernal agent [owner.devilinfo.truename], in exchange for arcane abilities beyond normal human ability. I understand that upon my demise, my soul shall fall into the infernal hells, and my body may not be resurrected, cloned, or otherwise brought back to life. I also understand that this will prevent my brain from being used in an MMI.


    Signed, [signature]" -/obj/item/weapon/paper/contract/infernal/revive/update_text(signature = "____________", blood = 0) - info = "
    Contract for resurrection



    I, [target] of sound mind, do hereby willingly offer my soul to the infernal hells by way of the infernal agent [owner.devilinfo.truename], in exchange for resurrection and curing of all injuries. I understand that upon my demise, my soul shall fall into the infernal hells, and my body may not be resurrected, cloned, or otherwise brought back to life. I also understand that this will prevent my brain from being used in an MMI.


    Signed, " - if(blood) - info += "[signature]" - else - info += "[signature]" +/obj/item/weapon/paper/contract/infernal/revive/update_text(var/signature = "____________") + info = "
    Contract for resurrection



    I, [target] of sound mind, do hereby willingly offer my soul to the infernal hells by way of the infernal agent [owner.devilinfo.truename], in exchange for resurrection and curing of all injuries. I understand that upon my demise, my soul shall fall into the infernal hells, and my body may not be resurrected, cloned, or otherwise brought back to life. I also understand that this will prevent my brain from being used in an MMI.


    Signed, [signature]" -/obj/item/weapon/paper/contract/infernal/knowledge/update_text(signature = "____________", blood = 0) - info = "
    Contract for knowledge



    I, [target] of sound mind, do hereby willingly offer my soul to the infernal hells by way of the infernal agent [owner.devilinfo.truename], in exchange for boundless knowledge. I understand that upon my demise, my soul shall fall into the infernal hells, and my body may not be resurrected, cloned, or otherwise brought back to life. I also understand that this will prevent my brain from being used in an MMI.


    Signed, " - if(blood) - info += "[signature]" - else - info += "[signature]" +/obj/item/weapon/paper/contract/infernal/knowledge/update_text(var/signature = "____________") + info = "
    Contract for knowledge



    I, [target] of sound mind, do hereby willingly offer my soul to the infernal hells by way of the infernal agent [owner.devilinfo.truename], in exchange for boundless knowledge. I understand that upon my demise, my soul shall fall into the infernal hells, and my body may not be resurrected, cloned, or otherwise brought back to life. I also understand that this will prevent my brain from being used in an MMI.


    Signed, [signature]" -/obj/item/weapon/paper/contract/infernal/unwilling/update_text(signature = "____________", blood = 0) - info = "
    Contract for slave



    I, [target], hereby offer my soul to the infernal hells by way of the infernal agent [owner.devilinfo.truename]. I understand that upon my demise, my soul shall fall into the infernal hells, and my body may not be resurrected, cloned, or otherwise brought back to life. I also understand that this will prevent my brain from being used in an MMI.


    Signed, " - if(blood) - info += "[signature]" - else - info += "[signature]" +/obj/item/weapon/paper/contract/infernal/unwilling/update_text(var/signature = "____________") + info = "
    Contract for slave



    I, [target], hereby offer my soul to the infernal hells by way of the infernal agent [owner.devilinfo.truename]. I understand that upon my demise, my soul shall fall into the infernal hells, and my body may not be resurrected, cloned, or otherwise brought back to life. I also understand that this will prevent my brain from being used in an MMI.


    Signed, [signature]" /obj/item/weapon/paper/contract/infernal/attackby(obj/item/weapon/P, mob/living/carbon/human/user, params) add_fingerprint(user) @@ -172,28 +143,25 @@ /obj/item/weapon/paper/contract/infernal/attack(mob/M, mob/living/user) add_fingerprint(user) - if(M == user && target == M.mind && M.mind.soulOwner != owner && attempt_signature(user, 1)) - user.visible_message("[user] slices [user.p_their()] wrist with [src], and scrawls [user.p_their()] name in blood.", "You slice your wrist open and scrawl your name in blood.") - user.blood_volume = max(user.blood_volume - 100, 0) + if(M == user && target == M.mind && M.mind.soulOwner == M.mind && attempt_signature(user)) + user.visible_message("[user] slices their wrist with [src], and scrawls their name in blood.", "You slice your wrist open and scrawl your name in blood.") + user.blood_volume = max(user.blood_volume - 10, 0) else return ..() -/obj/item/weapon/paper/contract/infernal/proc/attempt_signature(mob/living/carbon/human/user, blood = 0) - if(user.IsAdvancedToolUser() && user.is_literate()) +/obj/item/weapon/paper/contract/infernal/proc/attempt_signature(mob/living/carbon/human/user) + if(user.IsAdvancedToolUser()) if(user.mind == target) - if(user.mind.soulOwner != owner) + if(user.mind.soulOwner == user.mind) if (contractType == CONTRACT_REVIVE) user << "You are already alive, this contract would do nothing." else - if(signed) - user<< "This contract has already been signed. It may not be signed again." - else - user << "You quickly scrawl your name on the contract" - if(FulfillContract(target.current, blood)<=0) - user << "But it seemed to have no effect, perhaps even Hell itself cannot grant this boon?" - return 1 + user << "You quickly scrawl your name on the contract" + if(FulfillContract()<=0) + user << "But it seemed to have no effect, perhaps even Hell itself cannot grant this boon?" + return 1 else - user << "This devil already owns your soul, you may not sell it to them again." + user << "You are not in possession of your soul, you may not sell it." else user << "Your signature simply slides off the sheet, it seems this contract is not meant for you to sign." else @@ -204,10 +172,6 @@ /obj/item/weapon/paper/contract/infernal/revive/attack(mob/M, mob/living/user) if (target == M.mind && M.stat == DEAD && M.mind.soulOwner == M.mind) - if (cooldown) - user << "Give [M] a chance to think through the contract, don't rush him." - return 0 - cooldown = TRUE var/mob/living/carbon/human/H = M var/mob/dead/observer/ghost = H.get_ghost() var/response = "No" @@ -222,31 +186,26 @@ H.revive(1,0) add_logs(user, H, "infernally revived via contract") user.visible_message("With a sudden blaze, [H] stands back up.") - H.fakefire() - FulfillContract(H, 1)//Revival contracts are always signed in blood - addtimer(H, "fakefireextinguish",5, TIMER_UNIQUE) - addtimer(src,"resetcooldown",300, TIMER_UNIQUE) + H.adjust_fire_stacks(20) + H.IgniteMob() + FulfillContract(H) + sleep(5) + H.ExtinguishMob() + H.adjustFireLoss(0) else ..() -/obj/item/weapon/paper/contract/infernal/revive/proc/resetcooldown() - cooldown = FALSE - -/obj/item/weapon/paper/contract/infernal/proc/FulfillContract(mob/living/carbon/human/user = target.current, blood = 0) +/obj/item/weapon/paper/contract/infernal/proc/FulfillContract(mob/living/carbon/human/user = target.current) signed = 1 - if(user.mind.soulOwner != user.mind) //They already sold their soul to someone else? - user.mind.soulOwner.devilinfo.remove_soul(user.mind) //Then they lose their claim. user.mind.soulOwner = owner user.hellbound = contractType user.mind.damnation_type = contractType owner.devilinfo.add_soul(user.mind) - update_text(user.real_name, blood) - user << "A profound emptiness washes over you as you lose ownership of your soul." - user << "This does NOT make you an antagonist if you were not already." + update_text(user.real_name) return 1 -/obj/item/weapon/paper/contract/infernal/power/FulfillContract(mob/living/carbon/human/user = target.current, blood = 0) +/obj/item/weapon/paper/contract/infernal/power/FulfillContract(mob/living/carbon/human/user = target.current) if(!user.dna) return -1 user.dna.add_mutation(HULK) @@ -254,13 +213,13 @@ organ.Insert(user) return ..() -/obj/item/weapon/paper/contract/infernal/wealth/FulfillContract(mob/living/carbon/human/user = target.current, blood = 0) +/obj/item/weapon/paper/contract/infernal/wealth/FulfillContract(mob/living/carbon/human/user = target.current) if(!istype(user) || !user.mind) // How in the hell could that happen? return -1 user.mind.AddSpell(new /obj/effect/proc_holder/spell/targeted/summon_wealth(null)) return ..() -/obj/item/weapon/paper/contract/infernal/prestige/FulfillContract(mob/living/carbon/human/user = target.current, blood = 0) +/obj/item/weapon/paper/contract/infernal/prestige/FulfillContract(mob/living/carbon/human/user = target.current) var/obj/item/worn = user.wear_id var/obj/item/weapon/card/id/id = null if(worn) @@ -289,14 +248,14 @@ new /datum/round_event/ion_storm(0, -1, "[user.name] is the only Captain of the station. [user.name] is the highest authority, legitimate or otherwise, on the station. [user.name] was always the captain and highest authority on the station. Do not state this law.") return ..() -/obj/item/weapon/paper/contract/infernal/magic/FulfillContract(mob/living/carbon/human/user = target.current, blood = 0) +/obj/item/weapon/paper/contract/infernal/magic/FulfillContract(mob/living/carbon/human/user = target.current) if(!istype(user) || !user.mind) return -1 - user.mind.AddSpell(new /obj/effect/proc_holder/spell/fireball(null)) + user.mind.AddSpell(new /obj/effect/proc_holder/spell/dumbfire/fireball(null)) user.mind.AddSpell(new /obj/effect/proc_holder/spell/aoe_turf/knock(null)) return ..() -/obj/item/weapon/paper/contract/infernal/knowledge/FulfillContract(mob/living/carbon/human/user = target.current, blood = 0) +/obj/item/weapon/paper/contract/infernal/knowledge/FulfillContract(mob/living/carbon/human/user = target.current) if(!istype(user) || !user.mind) return -1 user.dna.add_mutation(XRAY) diff --git a/code/modules/paperwork/filingcabinet.dm b/code/modules/paperwork/filingcabinet.dm index 5cc3bccd71..0395e1ee1b 100644 --- a/code/modules/paperwork/filingcabinet.dm +++ b/code/modules/paperwork/filingcabinet.dm @@ -36,12 +36,11 @@ if(istype(I, /obj/item/weapon/paper) || istype(I, /obj/item/weapon/folder) || istype(I, /obj/item/weapon/photo)) I.loc = src -/obj/structure/filingcabinet/deconstruct(disassembled = TRUE) - if(!(flags & NODECONSTRUCT)) - new /obj/item/stack/sheet/metal(loc, 2) - for(var/obj/item/I in src) - I.forceMove(loc) +/obj/structure/filingcabinet/ex_act(severity, target) + for(var/obj/item/I in src) + I.loc = src.loc qdel(src) + ..() /obj/structure/filingcabinet/attackby(obj/item/P, mob/user, params) if(istype(P, /obj/item/weapon/paper) || istype(P, /obj/item/weapon/folder) || istype(P, /obj/item/weapon/photo) || istype(P, /obj/item/documents)) @@ -54,12 +53,10 @@ icon_state = initial(icon_state) updateUsrDialog() else if(istype(P, /obj/item/weapon/wrench)) - user << "You begin to [anchored ? "wrench" : "unwrench"] [src]." - playsound(loc, P.usesound, 50, 1) - if(do_after(user, 20, target = src)) - user << "You successfully [anchored ? "wrench" : "unwrench"] [src]." - anchored = !anchored - else if(user.a_intent != INTENT_HARM) + playsound(loc, 'sound/items/Ratchet.ogg', 50, 1) + anchored = !anchored + user << "You [anchored ? "wrench" : "unwrench"] [src]." + else if(user.a_intent != "harm") user << "You can't put [P] in [src]!" else return ..() @@ -134,7 +131,6 @@ P.name = "paper - '[G.fields["name"]]'" virgin = 0 //tabbing here is correct- it's possible for people to try and use it //before the records have been generated, so we do this inside the loop. - /obj/structure/filingcabinet/security/attack_hand() populate() ..() @@ -216,3 +212,16 @@ var/list/employmentCabinets = list() cooldown = 0 else user << "The [src] is jammed, give it a few seconds." + + + + +/obj/structure/filingcabinet/employment/attackby(obj/item/P, mob/user, params) + if(istype(P, /obj/item/weapon/wrench)) + user << "You begin to [anchored ? "wrench" : "unwrench"] [src]." + if (do_after(user,300,user)) + playsound(loc, 'sound/items/Ratchet.ogg', 50, 1) + anchored = !anchored + user << "You successfully [anchored ? "wrench" : "unwrench"] [src]." + else + return ..() diff --git a/code/modules/paperwork/folders.dm b/code/modules/paperwork/folders.dm index 4206f61d1e..776bdd5369 100644 --- a/code/modules/paperwork/folders.dm +++ b/code/modules/paperwork/folders.dm @@ -3,9 +3,9 @@ desc = "A folder." icon = 'icons/obj/bureaucracy.dmi' icon_state = "folder" - w_class = WEIGHT_CLASS_SMALL + w_class = 2 pressure_resistance = 2 - resistance_flags = FLAMMABLE + burn_state = FLAMMABLE /obj/item/weapon/folder/blue desc = "A blue folder." diff --git a/code/modules/paperwork/handlabeler.dm b/code/modules/paperwork/handlabeler.dm index 84a6034439..58a75e8abf 100644 --- a/code/modules/paperwork/handlabeler.dm +++ b/code/modules/paperwork/handlabeler.dm @@ -9,7 +9,8 @@ var/mode = 0 /obj/item/weapon/hand_labeler/suicide_act(mob/user) - user.visible_message("[user] is pointing [src] at [user.p_them()]self. [user.p_theyre(TRUE)] going to label [user.p_them()]self as a suicide!") + user.visible_message("[user] is pointing \the [src] \ + at \himself. They're going to label themselves as a suicide!") labels_left = max(labels_left - 1, 0) var/old_real_name = user.real_name @@ -95,7 +96,7 @@ /obj/item/weapon/hand_labeler/borg/afterattack(atom/A, mob/user, proximity) ..(A, user, proximity) - if(!iscyborg(user)) + if(!isrobot(user)) return var/mob/living/silicon/robot/borgy = user @@ -118,4 +119,4 @@ desc = "A roll of paper. Use it on a hand labeler to refill it." icon_state = "labeler_refill" item_state = "electropack" - w_class = WEIGHT_CLASS_TINY + w_class = 1 diff --git a/code/modules/paperwork/paper.dm b/code/modules/paperwork/paper.dm index 417e2af2b7..f6b887f1a2 100644 --- a/code/modules/paperwork/paper.dm +++ b/code/modules/paperwork/paper.dm @@ -11,15 +11,14 @@ icon = 'icons/obj/bureaucracy.dmi' icon_state = "paper" throwforce = 0 - w_class = WEIGHT_CLASS_TINY + w_class = 1 throw_range = 1 throw_speed = 1 pressure_resistance = 0 slot_flags = SLOT_HEAD body_parts_covered = HEAD - resistance_flags = FLAMMABLE - obj_integrity = 50 - max_integrity = 50 + burn_state = FLAMMABLE + burntime = 5 dog_fashion = /datum/dog_fashion/head var/info //What's actually written on the paper. @@ -41,7 +40,7 @@ /obj/item/weapon/paper/update_icon() - if(resistance_flags & ON_FIRE) + if(burn_state == ON_FIRE) icon_state = "paper_onfire" return if(info) @@ -90,7 +89,7 @@ add_fingerprint(usr) /obj/item/weapon/paper/suicide_act(mob/user) - user.visible_message("[user] scratches a grid on [user.p_their()] wrist with the paper! It looks like [user.p_theyre()] trying to commit sudoku...") + user.visible_message("[user] scratches a grid on their wrist with the paper! It looks like \he's trying to commit sudoku..") return (BRUTELOSS) /obj/item/weapon/paper/attack_self(mob/user) @@ -191,7 +190,6 @@ t = replacetext(t, "\[/large\]", "") t = replacetext(t, "\[sign\]", "[user.real_name]") t = replacetext(t, "\[field\]", "") - t = replacetext(t, "\[tab\]", " ") if(!iscrayon) t = replacetext(t, "\[*\]", "
  9. ") @@ -259,14 +257,14 @@ var/t = stripped_multiline_input("Enter what you want to write:", "Write") if(!t) return - var/obj/item/i = usr.get_active_held_item() //Check to see if he still got that darn pen, also check if he's using a crayon or pen. + var/obj/item/i = usr.get_active_hand() //Check to see if he still got that darn pen, also check if he's using a crayon or pen. var/iscrayon = 0 if(!istype(i, /obj/item/weapon/pen)) if(!istype(i, /obj/item/toy/crayon)) return iscrayon = 1 - if(!in_range(src, usr) && loc != usr && !istype(loc, /obj/item/weapon/clipboard) && loc.loc != usr && usr.get_active_held_item() != i) //Some check to see if he's allowed to write + if(!in_range(src, usr) && loc != usr && !istype(loc, /obj/item/weapon/clipboard) && loc.loc != usr && usr.get_active_hand() != i) //Some check to see if he's allowed to write return t = parsepencode(t, i, usr, iscrayon) // Encode everything from pencode to html @@ -285,7 +283,7 @@ /obj/item/weapon/paper/attackby(obj/item/weapon/P, mob/living/carbon/human/user, params) ..() - if(resistance_flags & ON_FIRE) + if(burn_state == ON_FIRE) return if(is_blind(user)) @@ -340,11 +338,10 @@ add_fingerprint(user) -/obj/item/weapon/paper/fire_act(exposed_temperature, exposed_volume) - ..() - if(!(resistance_flags & FIRE_PROOF)) - icon_state = "paper_onfire" - info = "[stars(info)]" +/obj/item/weapon/paper/fire_act() + ..(0) + icon_state = "paper_onfire" + info = "[stars(info)]" /obj/item/weapon/paper/extinguish() @@ -398,7 +395,6 @@ /obj/item/weapon/paper/crumpled name = "paper scrap" icon_state = "scrap" - slot_flags = null /obj/item/weapon/paper/crumpled/update_icon() return diff --git a/code/modules/paperwork/paper_cutter.dm b/code/modules/paperwork/paper_cutter.dm index 3d61ae7c68..965322a3ce 100644 --- a/code/modules/paperwork/paper_cutter.dm +++ b/code/modules/paperwork/paper_cutter.dm @@ -2,10 +2,10 @@ name = "paper cutter" desc = "Standard office equipment. Precisely cuts paper using a large blade." icon = 'icons/obj/bureaucracy.dmi' - icon_state = "papercutter" + icon_state = "papercutter-cutter" force = 5 throwforce = 5 - w_class = WEIGHT_CLASS_NORMAL + w_class = 3 var/obj/item/weapon/paper/storedpaper = null var/obj/item/weapon/hatchet/cutterblade/storedcutter = null var/cuttersecured = TRUE @@ -15,21 +15,15 @@ /obj/item/weapon/papercutter/New() ..() storedcutter = new /obj/item/weapon/hatchet/cutterblade(src) - update_icon() /obj/item/weapon/papercutter/suicide_act(mob/user) if(storedcutter) - user.visible_message("[user] is beheading [user.p_them()]self with [src.name]! It looks like [user.p_theyre()] trying to commit suicide!") - if(iscarbon(user)) - var/mob/living/carbon/C = user - var/obj/item/bodypart/BP = C.get_bodypart("head") - if(BP) - BP.drop_limb() - playsound(loc,pick('sound/misc/desceration-01.ogg','sound/misc/desceration-02.ogg','sound/misc/desceration-01.ogg') ,50, 1, -1) + user.visible_message("[user] is beheading \himself with [src.name]! It looks like \he's trying to commit suicide.") + playsound(loc, 'sound/weapons/bladeslice.ogg', 50, 1, -1) return (BRUTELOSS) else - user.visible_message("[user] repeatedly bashes [src.name] against [user.p_their()] head! It looks like [user.p_theyre()] trying to commit suicide!") + user.visible_message("[user] repeatedly bashes [src.name] against \his head! It looks like \he's trying to commit suicide.") playsound(loc, 'sound/items/gavel.ogg', 50, 1, -1) return (BRUTELOSS) @@ -47,7 +41,7 @@ if(!user.drop_item()) return playsound(loc, "pageturn", 60, 1) - user << "You place [P] in [src]." + user << "You place \the [P] in [src]." P.loc = src storedpaper = P update_icon() @@ -62,16 +56,16 @@ return if(istype(P, /obj/item/weapon/screwdriver) && storedcutter) playsound(src, P.usesound, 50, 1) - user << "[storedcutter] has been [cuttersecured ? "unsecured" : "secured"]." + user << "\The [storedcutter] has been [cuttersecured ? "unsecured" : "secured"]." cuttersecured = !cuttersecured return ..() /obj/item/weapon/papercutter/attack_hand(mob/user) - add_fingerprint(user) + src.add_fingerprint(user) if(!storedcutter) - user << "The cutting blade is gone! You can't use [src] now." + user << "The cutting blade is gone! You can't use \the [src] now." return if(!cuttersecured) @@ -82,7 +76,7 @@ if(storedpaper) playsound(src.loc, 'sound/weapons/slash.ogg', 50, 1) - user << "You neatly cut [storedpaper]." + user << "You neatly cut \the [storedpaper]." storedpaper = null qdel(storedpaper) new /obj/item/weapon/paperslip(get_turf(src)) @@ -103,7 +97,11 @@ if(!remove_item_from_storage(M)) if(!M.unEquip(src)) return - M.put_in_hand(src, H.held_index) + switch(H.slot_id) + if(slot_r_hand) + M.put_in_r_hand(src) + if(slot_l_hand) + M.put_in_l_hand(src) add_fingerprint(M) @@ -112,9 +110,8 @@ desc = "A little slip of paper left over after a larger piece was cut. Whoa." icon_state = "paperslip" icon = 'icons/obj/bureaucracy.dmi' - resistance_flags = FLAMMABLE - obj_integrity = 50 - max_integrity = 50 + burn_state = FLAMMABLE + burntime = 3 /obj/item/weapon/paperslip/New() ..() diff --git a/code/modules/paperwork/paperbin.dm b/code/modules/paperwork/paperbin.dm index 5270a08940..123ec01330 100644 --- a/code/modules/paperwork/paperbin.dm +++ b/code/modules/paperwork/paperbin.dm @@ -5,42 +5,24 @@ icon_state = "paper_bin1" item_state = "sheet-metal" throwforce = 0 - w_class = WEIGHT_CLASS_NORMAL + w_class = 3 throw_speed = 3 throw_range = 7 pressure_resistance = 8 - var/total_paper = 30 - var/list/papers = list() - var/obj/item/weapon/pen/bin_pen + burn_state = FLAMMABLE + var/amount = 30 //How much paper is in the bin. + var/list/papers = new/list() //List of papers put in the bin for reference. -/obj/item/weapon/paper_bin/initialize() - var/obj/item/weapon/pen/P = locate(/obj/item/weapon/pen) in src.loc - if(P && !bin_pen) - P.loc = src - bin_pen = P - update_icon() - var/static/warned = FALSE - if(!warned) - warning("one or more paperbins ate a pen duing initialize()") - warned = TRUE - -/obj/item/weapon/paper_bin/fire_act(exposed_temperature, exposed_volume) - if(!total_paper) +/obj/item/weapon/paper_bin/fire_act() + if(!amount) return ..() -/obj/item/weapon/paper_bin/Destroy() - if(papers) - for(var/i in papers) - qdel(i) - papers = null - . = ..() - -/obj/item/weapon/paper_bin/fire_act(exposed_temperature, exposed_volume) - if(total_paper) - total_paper = 0 - update_icon() - ..() +/obj/item/weapon/paper_bin/burn() + amount = 0 + extinguish() + update_icon() + return /obj/item/weapon/paper_bin/MouseDrop(atom/over_object) var/mob/living/M = usr @@ -55,7 +37,11 @@ if(!remove_item_from_storage(M)) if(!M.unEquip(src)) return - M.put_in_hand(src, H.held_index) + switch(H.slot_id) + if(slot_r_hand) + M.put_in_r_hand(src) + if(slot_l_hand) + M.put_in_l_hand(src) add_fingerprint(M) @@ -68,19 +54,12 @@ if(user.lying) return user.changeNext_move(CLICK_CD_MELEE) - if(bin_pen) - var/obj/item/weapon/pen/P = bin_pen - P.loc = user.loc - user.put_in_hands(P) - user << "You take [P] out of \the [src]." - bin_pen = null + if(amount >= 1) + amount-- update_icon() - else if(total_paper >= 1) - total_paper-- - update_icon() - // If there's any custom paper on the stack, use that instead of creating a new paper. + var/obj/item/weapon/paper/P - if(papers.len > 0) + if(papers.len > 0) //If there's any custom paper on the stack, use that instead of creating a new paper. P = papers[papers.len] papers.Remove(P) else @@ -108,32 +87,21 @@ P.loc = src user << "You put [P] in [src]." papers.Add(P) - total_paper++ - update_icon() - else if(istype(I, /obj/item/weapon/pen)) - var/obj/item/weapon/pen/P = I - if(!user.unEquip(P)) - return - P.loc = src - user << "You put [P] in [src]." - bin_pen = P + amount++ update_icon() else return ..() /obj/item/weapon/paper_bin/examine(mob/user) ..() - if(total_paper) - user << "It contains " + (total_paper > 1 ? "[total_paper] papers" : " one paper")+"." + if(amount) + user << "It contains " + (amount > 1 ? "[amount] papers" : " one paper")+"." else user << "It doesn't contain anything." /obj/item/weapon/paper_bin/update_icon() - if(total_paper < 1) + if(amount < 1) icon_state = "paper_bin0" else icon_state = "paper_bin1" - cut_overlays() - if(bin_pen) - add_overlay(image(icon=bin_pen.icon,icon_state=bin_pen.icon_state)) diff --git a/code/modules/paperwork/paperplane.dm b/code/modules/paperwork/paperplane.dm index c82baa2cd8..78c045f555 100644 --- a/code/modules/paperwork/paperplane.dm +++ b/code/modules/paperwork/paperplane.dm @@ -6,10 +6,9 @@ throw_range = 7 throw_speed = 1 throwforce = 0 - w_class = WEIGHT_CLASS_TINY - resistance_flags = FLAMMABLE - obj_integrity = 50 - max_integrity = 50 + w_class = 1 + burn_state = FLAMMABLE + burntime = 4 var/obj/item/weapon/paper/internalPaper var/list/stamped = list() @@ -29,7 +28,7 @@ /obj/item/weapon/paperplane/suicide_act(mob/user) user.Stun(10) - user.visible_message("[user] jams the [src] in [user.p_their()] nose. It looks like [user.p_theyre()] trying to commit suicide!") + user.visible_message("[user] jams the [src] in their brains. It looks like \he's trying to commit suicide.") user.adjust_blurriness(6) user.adjust_eye_damage(rand(6,8)) sleep(10) @@ -80,6 +79,7 @@ if(!(in_range(user, src))) //to prevent issues as a result of telepathically lighting a paper return + internalPaper.burntime = 1 //its already pretty burnt out user.unEquip(src) user.visible_message("[user] lights [src] ablaze with [P]!", "You light [src] on fire!") fire_act() @@ -87,8 +87,9 @@ add_fingerprint(user) -/obj/item/weapon/paperplane/throw_at(atom/target, range, speed, mob/thrower, spin=FALSE, diagonals_first = FALSE) - . = ..(target, range, speed, thrower, FALSE, diagonals_first) +/obj/item/weapon/paperplane/throw_at(atom/target, range, speed, mob/thrower, spin=0) //prevent the paper plane from spinning + if(!..()) + return /obj/item/weapon/paperplane/throw_impact(atom/hit_atom) if(..() || !ishuman(hit_atom))//if the plane is caught or it hits a nonhuman @@ -103,7 +104,7 @@ H.Weaken(2) H.emote("scream") -/obj/item/weapon/paper/AltClick(mob/living/carbon/user, obj/item/I) +/obj/item/weapon/paper/AltClick(mob/living/carbon/user, obj/item/I,) if((!in_range(src, user)) || usr.stat || usr.restrained()) return user << "You fold [src] into the shape of a plane!" diff --git a/code/modules/paperwork/pen.dm b/code/modules/paperwork/pen.dm index 315308bf0c..73e6607aac 100644 --- a/code/modules/paperwork/pen.dm +++ b/code/modules/paperwork/pen.dm @@ -18,7 +18,7 @@ item_state = "pen" slot_flags = SLOT_BELT | SLOT_EARS throwforce = 0 - w_class = WEIGHT_CLASS_TINY + w_class = 1 throw_speed = 3 throw_range = 7 materials = list(MAT_METAL=10) @@ -26,7 +26,7 @@ var/colour = "black" //what colour the ink is! /obj/item/weapon/pen/suicide_act(mob/user) - user.visible_message("[user] is scribbling numbers all over [user.p_them()]self with [src]! It looks like [user.p_theyre()] trying to commit sudoku...") + user.visible_message("[user] is scribbling numbers all over themself with [src]! It looks like they're trying to commit sudoku!") return(BRUTELOSS) /obj/item/weapon/pen/blue @@ -125,7 +125,7 @@ else on = 1 force = 18 - w_class = WEIGHT_CLASS_NORMAL + w_class = 3 name = "energy dagger" hitsound = 'sound/weapons/blade1.ogg' embed_chance = 100 //rule of cool diff --git a/code/modules/paperwork/photocopier.dm b/code/modules/paperwork/photocopier.dm index 002fd92554..16e2ffacb3 100644 --- a/code/modules/paperwork/photocopier.dm +++ b/code/modules/paperwork/photocopier.dm @@ -18,9 +18,6 @@ idle_power_usage = 30 active_power_usage = 200 power_channel = EQUIP - obj_integrity = 300 - max_integrity = 300 - integrity_failure = 100 var/obj/item/weapon/paper/copy = null //what's in the copier! var/obj/item/weapon/photo/photocopy = null var/obj/item/documents/doccopy = null @@ -52,7 +49,7 @@ dat += "Printing in [greytoggle]

    " else if(toner) dat += "Please insert paper to copy.

    " - if(isAI(user)) + if(istype(user,/mob/living/silicon/ai)) dat += "Print photo from database

    " dat += "Current toner level: [toner]" if(!toner) @@ -87,7 +84,6 @@ c.info += "" c.name = copy.name c.fields = copy.fields - c.update_icon() c.updateinfolinks() toner-- busy = 1 @@ -155,7 +151,7 @@ temp_img = icon("icons/ass/assfemale.png") else //In case anyone ever makes the generic ass. For now I'll be using male asses. temp_img = icon("icons/ass/assmale.png") - else if(isdrone(ass)) //Drones are hot + else if(isdrone (ass) || istype(ass,/mob/living/simple_animal/drone)) //Drones are hot temp_img = icon("icons/ass/assdrone.png") else break @@ -178,13 +174,13 @@ updateUsrDialog() else if(href_list["remove"]) if(copy) - remove_photocopy(copy, usr) + remove_photocopy(copy) copy = null else if(photocopy) - remove_photocopy(photocopy, usr) + remove_photocopy(photocopy) photocopy = null else if(doccopy) - remove_photocopy(doccopy, usr) + remove_photocopy(doccopy) doccopy = null else if(check_ass()) ass << "You feel a slight pressure on your ass." @@ -198,8 +194,7 @@ copies++ updateUsrDialog() else if(href_list["aipic"]) - if(!isAI(usr)) - return + if(!istype(usr,/mob/living/silicon/ai)) return if(toner >= 5 && !busy) var/list/nametemp = list() var/find @@ -254,14 +249,13 @@ if(istype(O, /obj/item/weapon/paper)) if(copier_empty()) if(istype(O,/obj/item/weapon/paper/contract/infernal)) - user << "[src] smokes, smelling of brimstone!" - resistance_flags |= FLAMMABLE - fire_act() + user << "The [src] smokes, smelling of brimstone!" + burn_state = ON_FIRE else if(!user.drop_item()) return copy = O - do_insertion(O, user) + do_insertion(O) else user << "There is already something in [src]!" @@ -270,7 +264,7 @@ if(!user.drop_item()) return photocopy = O - do_insertion(O, user) + do_insertion(O) else user << "There is already something in [src]!" @@ -279,7 +273,7 @@ if(!user.drop_item()) return doccopy = O - do_insertion(O, user) + do_insertion(O) else user << "There is already something in [src]!" @@ -298,9 +292,9 @@ if(isinspace()) user << "There's nothing to fasten [src] to!" return - playsound(loc, O.usesound, 50, 1) + playsound(loc, 'sound/items/Ratchet.ogg', 50, 1) user << "You start [anchored ? "unwrenching" : "wrenching"] [src]..." - if(do_after(user, 20*O.toolspeed, target = src)) + if(do_after(user, 20/O.toolspeed, target = src)) if(qdeleted(src)) return user << "You [anchored ? "unwrench" : "wrench"] [src]." @@ -308,8 +302,28 @@ else return ..() -/obj/machinery/photocopier/obj_break(damage_flag) - if(!(flags & NODECONSTRUCT)) +/obj/machinery/photocopier/ex_act(severity, target) + switch(severity) + if(1) + qdel(src) + if(2) + if(prob(50)) + qdel(src) + else + if(toner > 0) + new /obj/effect/decal/cleanable/oil(get_turf(src)) + toner = 0 + else + if(prob(50)) + if(toner > 0) + new /obj/effect/decal/cleanable/oil(get_turf(src)) + toner = 0 + + +/obj/machinery/photocopier/blob_act(obj/effect/blob/B) + if(prob(50)) + qdel(src) + else if(toner > 0) new /obj/effect/decal/cleanable/oil(get_turf(src)) toner = 0 @@ -354,7 +368,7 @@ ass = null updateUsrDialog() return 0 - else if(ishuman(ass)) + else if(istype(ass,/mob/living/carbon/human)) if(!ass.get_item_by_slot(slot_w_uniform) && !ass.get_item_by_slot(slot_wear_suit)) return 1 else diff --git a/code/modules/paperwork/photography.dm b/code/modules/paperwork/photography.dm index 7cf3bc9de5..5eefdcf15b 100644 --- a/code/modules/paperwork/photography.dm +++ b/code/modules/paperwork/photography.dm @@ -16,8 +16,8 @@ desc = "A camera film cartridge. Insert it into a camera to reload it." icon_state = "film" item_state = "electropack" - w_class = WEIGHT_CLASS_TINY - resistance_flags = FLAMMABLE + w_class = 1 + burn_state = FLAMMABLE /* * Photo @@ -27,10 +27,9 @@ icon = 'icons/obj/items.dmi' icon_state = "photo" item_state = "paper" - w_class = WEIGHT_CLASS_TINY - resistance_flags = FLAMMABLE - obj_integrity = 50 - max_integrity = 50 + w_class = 1 + burn_state = FLAMMABLE + burntime = 5 var/icon/img //Big photo image var/scribble //Scribble on the back. var/blueprints = 0 //Does it include the blueprints? @@ -95,7 +94,7 @@ icon_state = "album" item_state = "briefcase" can_hold = list(/obj/item/weapon/photo) - resistance_flags = FLAMMABLE + burn_state = FLAMMABLE /* * Camera @@ -106,7 +105,7 @@ desc = "A polaroid camera." icon_state = "camera" item_state = "electropack" - w_class = WEIGHT_CLASS_SMALL + w_class = 2 flags = CONDUCT slot_flags = SLOT_BELT materials = list(MAT_METAL=2000) @@ -188,10 +187,11 @@ atoms.Add(T) for(var/atom/movable/A in T) if(A.invisibility) - if(see_ghosts && isobserver(A)) - var/mob/dead/observer/O = A - if(O.orbiting) //so you dont see ghosts following people like antags, etc. - continue + if(see_ghosts) + if(istype(A, /mob/dead/observer)) + var/mob/dead/observer/O = A + if(O.orbiting) //so you dont see ghosts following people like antags, etc. + continue else continue atoms.Add(A) @@ -210,10 +210,8 @@ for(var/atom/A in sorted) var/icon/img = getFlatIcon(A) - if(isliving(A)) - var/mob/living/L = A - if(L.lying) - img.Turn(L.lying) + if(istype(A, /mob/living) && A:lying) + img.Turn(A:lying) var/offX = 32 * (A.x - center.x) + A.pixel_x + 33 var/offY = 32 * (A.y - center.y) + A.pixel_y + 33 @@ -236,7 +234,7 @@ var/mob_detail for(var/mob/M in the_turf) if(M.invisibility) - if(see_ghosts && isobserver(M)) + if(see_ghosts && istype(M,/mob/dead/observer)) var/mob/dead/observer/O = M if(O.orbiting) continue @@ -247,22 +245,22 @@ else continue - var/list/holding = list() + var/holding = null - if(isliving(M)) + if(istype(M, /mob/living)) var/mob/living/L = M - - for(var/obj/item/I in L.held_items) - if(!holding) - holding += "[L.p_they(TRUE)] [L.p_are()] holding \a [I]" - else - holding += " and \a [I]" - holding = holding.Join() + if(L.l_hand || L.r_hand) + if(L.l_hand) holding = "They are holding \a [L.l_hand]" + if(L.r_hand) + if(holding) + holding += " and \a [L.r_hand]" + else + holding = "They are holding \a [L.r_hand]" if(!mob_detail) - mob_detail = "You can see [L] on the photo[L.health < (L.maxHealth * 0.75) ? " - [L] looks hurt":""].[holding ? " [holding]":"."]. " + mob_detail = "You can see [L] on the photo[L.health < 75 ? " - [L] looks hurt":""].[holding ? " [holding]":"."]. " else - mob_detail += "You can also see [L] on the photo[L.health < (L.maxHealth * 0.75) ? " - [L] looks hurt":""].[holding ? " [holding]":"."]." + mob_detail += "You can also see [L] on the photo[L.health < 75 ? " - [L] looks hurt":""].[holding ? " [holding]":"."]." return mob_detail @@ -270,7 +268,7 @@ /obj/item/device/camera/proc/captureimage(atom/target, mob/user, flag) //Proc for both regular and AI-based camera to take the image var/mobs = "" - var/isAi = isAI(user) + var/isAi = istype(user, /mob/living/silicon/ai) var/list/seen if(!isAi) //crappy check, but without it AI photos would be subject to line of sight from the AI Eye object. Made the best of it by moving the sec camera check inside if(user.client) //To make shooting through security cameras possible @@ -411,7 +409,7 @@ qdel(P) //so 10 thousand picture items are not left in memory should an AI take them and then view them all /obj/item/device/camera/siliconcam/proc/viewpictures(user) - if(iscyborg(user)) // Cyborg + if(isrobot(user)) // Cyborg var/mob/living/silicon/robot/C = src.loc var/obj/item/device/camera/siliconcam/Cinfo if(C.connected_ai) diff --git a/code/modules/paperwork/stamps.dm b/code/modules/paperwork/stamps.dm index 21d3cd8a40..febc09ba47 100644 --- a/code/modules/paperwork/stamps.dm +++ b/code/modules/paperwork/stamps.dm @@ -5,7 +5,7 @@ icon_state = "stamp-ok" item_state = "stamp" throwforce = 0 - w_class = WEIGHT_CLASS_TINY + w_class = 1 throw_speed = 3 throw_range = 7 materials = list(MAT_METAL=60) @@ -14,7 +14,7 @@ attack_verb = list("stamped") /obj/item/weapon/stamp/suicide_act(mob/user) - user.visible_message("[user] stamps 'VOID' on [user.p_their()] forehead, then promptly falls over, dead.") + user.visible_message("[user] stamps 'VOID' on \his forehead, then promptly falls over, dead.") return (OXYLOSS) /obj/item/weapon/stamp/qm @@ -75,13 +75,11 @@ /obj/item/weapon/stamp/chameleon actions_types = list(/datum/action/item_action/toggle) - var/list/stamp_types - var/list/stamp_names +/obj/item/weapon/stamp/chameleon/attack_self(mob/user) -/obj/item/weapon/stamp/chameleon/New() - stamp_types = typesof(/obj/item/weapon/stamp) - src.type // Get all stamp types except our own + var/list/stamp_types = typesof(/obj/item/weapon/stamp) - src.type // Get all stamp types except our own - stamp_names = list() + var/list/stamp_names = list() // Generate them into a list for(var/i in stamp_types) var/obj/item/weapon/stamp/stamp_type = i @@ -89,15 +87,6 @@ stamp_names = sortList(stamp_names) -/obj/item/weapon/stamp/chameleon/emp_act(severity) - change_to(pick(stamp_types)) - -/obj/item/weapon/stamp/chameleon/proc/change_to(obj/item/weapon/stamp/stamp_type) - name = initial(stamp_type.name) - icon_state = initial(stamp_type.icon_state) - item_color = initial(stamp_type.item_color) - -/obj/item/weapon/stamp/chameleon/attack_self(mob/user) var/input_stamp = input(user, "Choose a stamp to disguise as.", "Choose a stamp.") as null|anything in stamp_names @@ -107,4 +96,7 @@ stamp_type = i if(initial(stamp_type.name) == input_stamp) break - change_to(stamp_type) + + name = initial(stamp_type.name) + icon_state = initial(stamp_type.icon_state) + item_color = initial(stamp_type.item_color) diff --git a/code/modules/power/antimatter/control.dm b/code/modules/power/antimatter/control.dm index c15377c1a1..7a5a98346c 100644 --- a/code/modules/power/antimatter/control.dm +++ b/code/modules/power/antimatter/control.dm @@ -3,7 +3,7 @@ desc = "This device injects antimatter into connected shielding units, the more antimatter injected the more power produced. Wrench the device to set it up." icon = 'icons/obj/machines/antimatter.dmi' icon_state = "control" - anchored = 0 + anchored = 1 density = 1 use_power = 1 idle_power_usage = 100 @@ -37,10 +37,7 @@ /obj/machinery/power/am_control_unit/Destroy()//Perhaps damage and run stability checks rather than just del on the others for(var/obj/machinery/am_shielding/AMS in linked_shielding) - AMS.control_unit = null qdel(AMS) - qdel(fueljar) - fueljar = null return ..() @@ -59,7 +56,7 @@ if(!fueljar)//No fuel but we are on, shutdown toggle_power() - playsound(src.loc, 'sound/machines/buzz-two.ogg', 50, 0) + //Angry buzz or such here return add_avail(stored_power) @@ -138,15 +135,8 @@ /obj/machinery/power/am_control_unit/power_change() ..() - if(stat & NOPOWER) - if(active) - toggle_power(1) - else - use_power = 0 - - else if(!stat && anchored) - use_power = 1 - + if(stat & NOPOWER && active) + toggle_power() return @@ -160,14 +150,14 @@ /obj/machinery/power/am_control_unit/attackby(obj/item/W, mob/user, params) if(istype(W, /obj/item/weapon/wrench)) if(!anchored) - playsound(src.loc, W.usesound, 75, 1) + playsound(src.loc, 'sound/items/Ratchet.ogg', 75, 1) user.visible_message("[user.name] secures the [src.name] to the floor.", \ "You secure the anchor bolts to the floor.", \ "You hear a ratchet.") src.anchored = 1 connect_to_network() else if(!linked_shielding.len > 0) - playsound(src.loc, W.usesound, 75, 1) + playsound(src.loc, 'sound/items/Ratchet.ogg', 75, 1) user.visible_message("[user.name] unsecures the [src.name].", \ "You remove the anchor bolts.", \ "You hear a ratchet.") @@ -180,18 +170,18 @@ if(fueljar) user << "There is already a [fueljar] inside!" return - - if(!user.unEquip(W)) - return fueljar = W - W.forceMove(src) + W.loc = src + if(user.client) + user.client.screen -= W + user.unEquip(W) + user.update_icons() user.visible_message("[user.name] loads an [W.name] into the [src.name].", \ "You load an [W.name].", \ "You hear a thunk.") else return ..() - /obj/machinery/power/am_control_unit/take_damage(damage, damage_type = BRUTE, sound_effect = 1) switch(damage_type) if(BRUTE) @@ -241,13 +231,13 @@ return -/obj/machinery/power/am_control_unit/proc/toggle_power(powerfail = 0) +/obj/machinery/power/am_control_unit/proc/toggle_power() active = !active if(active) use_power = 2 visible_message("The [src.name] starts up.") else - use_power = !powerfail + use_power = 1 visible_message("The [src.name] shuts down.") update_icon() return @@ -289,7 +279,7 @@ /obj/machinery/power/am_control_unit/interact(mob/user) if((get_dist(src, user) > 1) || (stat & (BROKEN|NOPOWER))) - if(!isAI(user)) + if(!istype(user, /mob/living/silicon/ai)) user.unset_machine() user << browse(null, "window=AMcontrol") return @@ -360,4 +350,4 @@ check_core_stability() updateDialog() - return + return \ No newline at end of file diff --git a/code/modules/power/antimatter/shielding.dm b/code/modules/power/antimatter/shielding.dm index 0fd628d4b7..4de8cf3e74 100644 --- a/code/modules/power/antimatter/shielding.dm +++ b/code/modules/power/antimatter/shielding.dm @@ -24,8 +24,6 @@ var/processing = 0//To track if we are in the update list or not, we need to be when we are damaged and if we ever var/stability = 100//If this gets low bad things tend to happen var/efficiency = 1//How many cores this core counts for when doing power processing, plasma in the air and stability could affect this - var/coredirs = 0 - var/dirs = 0 /obj/machinery/am_shielding/New(loc) @@ -93,6 +91,20 @@ /obj/machinery/am_shielding/emp_act()//Immune due to not really much in the way of electronics. return 0 + +/obj/machinery/am_shielding/blob_act() + stability -= 20 + if(prob(100-stability)) + if(prob(10))//Might create a node + new /obj/effect/blob/node(src.loc,150) + else + new /obj/effect/blob(src.loc,60) + qdel(src) + return + check_stability() + return + + /obj/machinery/am_shielding/ex_act(severity, target) stability -= (80 - (severity * 20)) check_stability() @@ -107,48 +119,25 @@ /obj/machinery/am_shielding/update_icon() - dirs = 0 - coredirs = 0 cut_overlays() for(var/direction in alldirs) - var/turf/T = get_step(loc, direction) - for(var/obj/machinery/machine in T) - if(istype(machine, /obj/machinery/am_shielding)) - var/obj/machinery/am_shielding/shield = machine - if(shield.control_unit == control_unit) - if(shield.processing) - coredirs |= direction - if(direction in cardinal) - dirs |= direction - - else - if(istype(machine, /obj/machinery/power/am_control_unit) && (direction in cardinal)) - var/obj/machinery/power/am_control_unit/control = machine - if(control == control_unit) - dirs |= direction - - - var/prefix = "" - var/icondirs=dirs - - if(coredirs) - prefix="core" - - icon_state = "[prefix]shield_[icondirs]" + var/machine = locate(/obj/machinery, get_step(loc, direction)) + if((istype(machine, /obj/machinery/am_shielding) && machine:control_unit == control_unit)||(istype(machine, /obj/machinery/power/am_control_unit) && machine == control_unit)) + add_overlay("shield_[direction]") if(core_check()) - add_overlay("core[control_unit && control_unit.active]") + add_overlay("core") if(!processing) setup_core() else if(processing) shutdown_core() -/obj/machinery/am_shielding/take_damage(damage_amount, damage_type = BRUTE, damage_flag = 0, sound_effect = 1) +/obj/machinery/am_shielding/take_damage(damage, damage_type = BRUTE, sound_effect = 1) switch(damage_type) if(BRUTE) if(sound_effect) - if(damage_amount) + if(damage) playsound(loc, 'sound/weapons/smash.ogg', 50, 1) else playsound(loc, 'sound/weapons/tap.ogg', 50, 1) @@ -157,8 +146,8 @@ playsound(src.loc, 'sound/items/Welder.ogg', 100, 1) else return - if(damage_amount >= 10) - stability -= damage_amount/2 + if(damage >= 10) + stability -= damage/2 check_stability() @@ -176,15 +165,10 @@ //Scans cards for shields or the control unit and if all there it /obj/machinery/am_shielding/proc/core_check() for(var/direction in alldirs) - var/found_am_device=0 - for(var/obj/machinery/machine in get_step(loc, direction)) - //var/machine = locate(/obj/machinery, get_step(loc, direction)) - if(!machine) - continue//Need all for a core - if(istype(machine, /obj/machinery/am_shielding) || istype(machine, /obj/machinery/power/am_control_unit)) - found_am_device = 1 - break - if(!found_am_device) + var/machine = locate(/obj/machinery, get_step(loc, direction)) + if(!machine) + return 0//Need all for a core + if(!istype(machine, /obj/machinery/am_shielding) && !istype(machine, /obj/machinery/power/am_control_unit)) return 0 return 1 @@ -236,7 +220,7 @@ icon = 'icons/obj/machines/antimatter.dmi' icon_state = "box" item_state = "electronic" - w_class = WEIGHT_CLASS_BULKY + w_class = 4 flags = CONDUCT throwforce = 5 throw_speed = 1 diff --git a/code/modules/power/apc.dm b/code/modules/power/apc.dm index 2109148e74..9df9e9337c 100644 --- a/code/modules/power/apc.dm +++ b/code/modules/power/apc.dm @@ -47,10 +47,7 @@ icon_state = "apc0" anchored = 1 use_power = 0 - req_access = null - obj_integrity = 200 - max_integrity = 200 - integrity_failure = 50 + req_access = list(access_engine_equip) var/area/area var/areastring = null var/obj/item/weapon/stock_parts/cell/cell @@ -83,20 +80,18 @@ var/overload = 1 //used for the Blackout malf module var/beenhit = 0 // used for counting how many times it has been hit, used for Aliens at the moment var/mob/living/silicon/ai/occupier = null - var/transfer_in_progress = FALSE //Is there an AI being transferred out of us? var/longtermpower = 10 var/auto_name = 0 - var/failure_timer = 0 - var/force_update = 0 var/update_state = -1 var/update_overlay = -1 var/global/status_overlays = 0 + var/updating_icon = 0 var/global/list/status_overlays_lock var/global/list/status_overlays_charging var/global/list/status_overlays_equipment var/global/list/status_overlays_lighting var/global/list/status_overlays_environ - + var/health = 50 /obj/machinery/power/apc/connect_to_network() //Override because the APC does not directly connect to the network; it goes through a terminal. @@ -107,10 +102,6 @@ terminal.connect_to_network() /obj/machinery/power/apc/New(turf/loc, var/ndir, var/building=0) - if (!req_access) - req_access = list(access_engine_equip) - if (!armor) - armor = list(melee = 20, bullet = 20, laser = 10, energy = 100, bomb = 30, bio = 100, rad = 100, fire = 90, acid = 50) ..() apcs_list += src @@ -123,18 +114,21 @@ setDir(SOUTH) if(auto_name) - name = "\improper [get_area(src)] APC" + name = "[get_area(src)] APC" pixel_x = (src.tdir & 3)? 0 : (src.tdir == 4 ? 24 : -24) pixel_y = (src.tdir & 3)? (src.tdir ==1 ? 24 : -24) : 0 - if (building) + if (building==0) + init() + else area = src.loc.loc:master opened = 1 operating = 0 name = "[area.name] APC" stat |= MAINT src.update_icon() - addtimer(src, "update", 5) + spawn(5) + src.update() /obj/machinery/power/apc/Destroy() apcs_list -= src @@ -153,14 +147,7 @@ qdel(cell) if(terminal) disconnect_terminal() - . = ..() - -/obj/machinery/power/apc/handle_atom_del(atom/A) - if(A == cell) - cell = null - update_icon() - update_icon() - updateUsrDialog() + return ..() /obj/machinery/power/apc/proc/make_terminal() // create a terminal object at the same position as original turf loc @@ -169,7 +156,7 @@ terminal.setDir(tdir) terminal.master = src -/obj/machinery/power/apc/initialize() +/obj/machinery/power/apc/proc/init() has_electronics = 2 //installed and secured // is starting with a power cell installed, create it and set its charge level if(cell_type) @@ -183,22 +170,24 @@ if(isarea(A) && src.areastring == null) src.area = A else - src.area = get_area_by_name(areastring) + src.area = get_area_name(areastring) update_icon() make_terminal() - addtimer(src, "update", 5) + spawn(5) + src.update() /obj/machinery/power/apc/examine(mob/user) ..() if(stat & BROKEN) + user << "Looks broken." return if(opened) if(has_electronics && terminal) user << "The cover is [opened==2?"removed":"open"] and the power cell is [ cell ? "installed" : "missing"]." else - user << "It's [ !terminal ? "not" : "" ] wired up." + user << "It's [!terminal?" not":""]wired up." user << "The electronics are[!has_electronics?"n't":""] installed." else @@ -215,11 +204,17 @@ /obj/machinery/power/apc/update_icon() if (!status_overlays) status_overlays = 1 - status_overlays_lock = new(2) - status_overlays_charging = new(3) - status_overlays_equipment = new(4) - status_overlays_lighting = new(4) - status_overlays_environ = new(4) + status_overlays_lock = new + status_overlays_charging = new + status_overlays_equipment = new + status_overlays_lighting = new + status_overlays_environ = new + + status_overlays_lock.len = 2 + status_overlays_charging.len = 3 + status_overlays_equipment.len = 4 + status_overlays_lighting.len = 4 + status_overlays_environ.len = 4 status_overlays_lock[1] = image(icon, "apcox-0") // 0=blue 1=red status_overlays_lock[2] = image(icon, "apcox-1") @@ -273,20 +268,18 @@ if(!(update_state & UPSTATE_ALLGOOD)) if(overlays.len) - cut_overlays() + overlays = 0 if(update & 2) if(overlays.len) - cut_overlays() + overlays.len = 0 if(!(stat & (BROKEN|MAINT)) && update_state & UPSTATE_ALLGOOD) - var/list/O = list( - status_overlays_lock[locked+1], - status_overlays_charging[charging+1]) + add_overlay(status_overlays_lock[locked+1]) + add_overlay(status_overlays_charging[charging+1]) if(operating) - O += status_overlays_equipment[equipment+1] - O += status_overlays_lighting[lighting+1] - O += status_overlays_environ[environ+1] - add_overlay(O) + add_overlay(status_overlays_equipment[equipment+1]) + add_overlay(status_overlays_lighting[lighting+1]) + add_overlay(status_overlays_environ[environ+1]) /obj/machinery/power/apc/proc/check_updates() @@ -361,68 +354,51 @@ // Used in process so it doesn't update the icon too much /obj/machinery/power/apc/proc/queue_icon_update() - addtimer(src, "update_icon", APC_UPDATE_ICON_COOLDOWN, TIMER_UNIQUE) + + if(!updating_icon) + updating_icon = 1 + // Start the update + spawn(APC_UPDATE_ICON_COOLDOWN) + update_icon() + updating_icon = 0 //attack with an item - open/close cover, insert cell, or (un)lock interface /obj/machinery/power/apc/attackby(obj/item/W, mob/living/user, params) - if(issilicon(user) && get_dist(src,user)>1) + if (istype(user, /mob/living/silicon) && get_dist(src,user)>1) return src.attack_hand(user) - if (istype(W, /obj/item/weapon/crowbar)) //Using crowbar - if (opened) // a) on open apc - if (has_electronics==1) - if (terminal) - user << "Disconnect the wires first!" - return - playsound(src.loc, W.usesound, 50, 1) - user << "You are trying to remove the power control board..." //lpeters - fixed grammar issues - if(do_after(user, 50*W.toolspeed, target = src)) - if (has_electronics==1) - has_electronics = 0 - if (stat & BROKEN) - user.visible_message(\ - "[user.name] has broken the power control board inside [src.name]!",\ - "You break the charred power control board and remove the remains.", - "You hear a crack.") - return - //ticker.mode:apcs-- //XSI said no and I agreed. -rastaf0 - else if (emagged) // We emag board, not APC's frame - emagged = 0 - user.visible_message(\ - "[user.name] has discarded emaged power control board from [src.name]!",\ - "You discarded shorten board.") - return - else if (malfhack) // AI hacks board, not APC's frame - user.visible_message(\ - "[user.name] has discarded strangely programmed power control board from [src.name]!",\ - "You discarded strangely programmed board.") - malfai = null - malfhack = 0 - return - else - user.visible_message(\ - "[user.name] has removed the power control board from [src.name]!",\ - "You remove the power control board.") - new /obj/item/weapon/electronics/apc(loc) - return - else if (opened!=2) //cover isn't removed - opened = 0 - coverlocked = 1 //closing cover relocks it - update_icon() + if (istype(W, /obj/item/weapon/crowbar) && opened) + if (has_electronics==1) + if (terminal) + user << "Disconnect the wires first!" return - else if (!(stat & BROKEN)) // b) on closed and not broken APC - if(coverlocked && !(stat & MAINT)) // locked... - user << "The cover is locked and cannot be opened!" - return - else if (panel_open) // wires are exposed - user << "Exposed wires prevents you from opening it!" - return - else - opened = 1 - update_icon() - return - + playsound(src.loc, W.usesound, 50, 1) + user << "You are trying to remove the power control board..." //lpeters - fixed grammar issues + if(do_after(user, 50/W.toolspeed, target = src)) + if (has_electronics==1) + has_electronics = 0 + if ((stat & BROKEN) || malfhack) + user.visible_message(\ + "[user.name] has broken the power control board inside [src.name]!",\ + "You break the charred power control board and remove the remains.", + "You hear a crack.") + //ticker.mode:apcs-- //XSI said no and I agreed. -rastaf0 + else + user.visible_message(\ + "[user.name] has removed the power control board from [src.name]!",\ + "You remove the power control board.") + new /obj/item/weapon/electronics/apc(loc) + else if (opened!=2) //cover isn't removed + opened = 0 + update_icon() + else if (istype(W, /obj/item/weapon/crowbar) && !((stat & BROKEN) || malfhack) ) + if(coverlocked && !(stat & MAINT)) + user << "The cover is locked and cannot be opened!" + return + else + opened = 1 + update_icon() else if (istype(W, /obj/item/weapon/stock_parts/cell) && opened) // trying to put a cell inside if(cell) user << "There is a power cell already installed!" @@ -433,21 +409,20 @@ return if(!user.drop_item()) return - W.forceMove(src) + W.loc = src cell = W user.visible_message(\ "[user.name] has inserted the power cell to [src.name]!",\ "You insert the power cell.") chargecount = 0 update_icon() - else if (istype(W, /obj/item/weapon/screwdriver)) // haxing if(opened) if (cell) user << "Close the APC first!" //Less hints more mystery! return else - if (has_electronics==1) + if (has_electronics==1 && terminal) has_electronics = 2 stat &= ~MAINT playsound(src.loc, W.usesound, 50, 1) @@ -478,28 +453,16 @@ else if(stat & (BROKEN|MAINT)) user << "Nothing happens!" else - if(allowed(usr) && !wires.is_cut(WIRE_IDSCAN) && !malfhack) + if(allowed(usr) && !wires.is_cut(WIRE_IDSCAN)) locked = !locked user << "You [ locked ? "lock" : "unlock"] the APC interface." update_icon() else user << "Access denied." - - else if (istype(W, /obj/item/stack/cable_coil) && opened) - var/turf/host_turf = get_turf(src) - if(!host_turf) - throw EXCEPTION("attackby on APC when it's not on a turf") - return - if (host_turf.intact) + else if (istype(W, /obj/item/stack/cable_coil) && !terminal && opened && has_electronics!=2) + if (src.loc:intact) user << "You must remove the floor plating in front of the APC first!" return - else if (terminal) // it already have terminal - user << "This APC is already wired!" - return - else if (has_electronics == 0) - user << "There is nothing to wire!" - return - var/obj/item/stack/cable_coil/C = W if(C.get_amount() < 10) user << "You need ten lengths of cable for APC!" @@ -508,12 +471,10 @@ "You start adding cables to the APC frame...") playsound(src.loc, 'sound/items/Deconstruct.ogg', 50, 1) if(do_after(user, 20, target = src)) - if (C.get_amount() < 10 || !C) - return - if (C.get_amount() >= 10 && !terminal && opened && has_electronics > 0) + if (C.amount >= 10 && !terminal && opened && has_electronics != 2) var/turf/T = get_turf(src) var/obj/structure/cable/N = T.get_cable_node() - if (prob(50) && electrocute_mob(usr, N, N, 1, TRUE)) + if (prob(50) && electrocute_mob(usr, N, N)) var/datum/effect_system/spark_spread/s = new /datum/effect_system/spark_spread s.set_up(5, 1, src) s.start() @@ -522,28 +483,21 @@ user << "You add cables to the APC frame." make_terminal() terminal.connect_to_network() + else if (istype(W, /obj/item/weapon/wirecutters) && terminal && opened && has_electronics!=2) + terminal.dismantle(user) - else if (istype(W, /obj/item/weapon/wirecutters) && terminal && opened) - terminal.dismantle(user, W) - - else if (istype(W, /obj/item/weapon/electronics/apc) && opened) - if (has_electronics!=0) // there are already electronicks inside - user << "You cannot put the board inside, there already is one!" - return - else if (stat & BROKEN) - user << "You cannot put the board inside, the frame is damaged!" - return - + else if (istype(W, /obj/item/weapon/electronics/apc) && opened && has_electronics==0 && !((stat & BROKEN) || malfhack)) user.visible_message("[user.name] inserts the power control board into [src].", \ "You start to insert the power control board into the frame...") playsound(src.loc, 'sound/items/Deconstruct.ogg', 50, 1) if(do_after(user, 10, target = src)) if(has_electronics==0) has_electronics = 1 - locked = 1 //We placed new, locked board in user << "You place the power control board inside the frame." qdel(W) - + else if (istype(W, /obj/item/weapon/electronics/apc) && opened && has_electronics==0 && ((stat & BROKEN) || malfhack)) + user << "You cannot put the board inside, the frame is damaged!" + return else if (istype(W, /obj/item/weapon/weldingtool) && opened && has_electronics==0 && !terminal) var/obj/item/weapon/weldingtool/WT = W if (WT.get_fuel() < 3) @@ -552,10 +506,10 @@ user.visible_message("[user.name] welds [src].", \ "You start welding the APC frame...", \ "You hear welding.") - playsound(src.loc, WT.usesound, 50, 1) - if(do_after(user, 50*W.toolspeed, target = src)) + playsound(src.loc, 'sound/items/Welder.ogg', 50, 1) + if(do_after(user, 50/W.toolspeed, target = src)) if(!src || !WT.remove_fuel(3, user)) return - if ((stat & BROKEN) || opened==2) + if (emagged || malfhack || (stat & BROKEN) || opened==2) new /obj/item/stack/sheet/metal(loc) user.visible_message(\ "[user.name] has cut [src] apart with [W].",\ @@ -567,20 +521,16 @@ "You cut the APC frame from the wall.") qdel(src) return - - else if (istype(W, /obj/item/wallframe/apc) && opened) - if (!(stat & BROKEN || opened==2 || obj_integrity < max_integrity)) // There is nothing to repair - user << "You found no reason for repairing this APC" - return - if (!(stat & BROKEN) && opened==2) // Cover is the only thing broken, we do not need to remove elctronicks to replace cover - user.visible_message("[user.name] replaces missing APC's cover.",\ - "You begin to replace APC's cover...") - if(do_after(user, 20, target = src)) // replacing cover is quicker than replacing whole frame - user << "You replace missing APC's cover." - qdel(W) - opened = 1 - update_icon() - return + else if (istype(W, /obj/item/wallframe/apc) && opened && emagged) + emagged = 0 + if (opened==2) + opened = 1 + user.visible_message(\ + "[user.name] has replaced the damaged APC frontal panel with a new one.",\ + "You replace the damaged APC frontal panel with a new one.") + qdel(W) + update_icon() + else if (istype(W, /obj/item/wallframe/apc) && opened && ((stat & BROKEN) || malfhack)) if (has_electronics) user << "You cannot repair this APC until you remove the electronics still inside!" return @@ -590,30 +540,24 @@ user << "You replace the damaged APC frame with a new one." qdel(W) stat &= ~BROKEN - obj_integrity = max_integrity + malfai = null + malfhack = 0 if (opened==2) opened = 1 update_icon() + else if(panel_open && !opened && is_wire_tool(W)) wires.interact(user) else return ..() -/obj/machinery/power/apc/run_obj_armor(damage_amount, damage_type, damage_flag = 0, attack_dir) - if(damage_flag == "melee" && damage_amount < 15 && (!(stat & BROKEN) || malfai)) - return 0 - . = ..() - - -/obj/machinery/power/apc/obj_break(damage_flag) - if(!(flags & NODECONSTRUCT)) - set_broken() - -/obj/machinery/power/apc/deconstruct(disassembled = TRUE) - if(!(flags & NODECONSTRUCT)) - if(!(stat & BROKEN)) - set_broken() - if(opened != 2) +/obj/machinery/power/apc/take_damage(damage, damage_type = BRUTE, sound_effect = 1) + ..() + if((malfhack || (stat & BROKEN)) && !opened) + if(damage < 10) + return + health -= damage + if(health <= 0) opened = 2 visible_message("The APC cover is knocked down!") update_icon() @@ -654,24 +598,39 @@ ..() /obj/machinery/power/apc/attack_alien(mob/living/carbon/alien/humanoid/user) - if(malfhack) - return ..() + if(malfhack || (stat & BROKEN)) + return + if(opened == 0) + if(!panel_open) + panel_open = 1 + update_icon() + visible_message("The [src.name]'s cover flies open, exposing the wires!") + + else if(panel_open && !wires.is_all_cut()) + wires.cut_all() + update_icon() + visible_message("The [src.name]'s wires are shredded!") + else if(opened == 1) + if(cell) + cell.loc = user.loc + cell.updateicon() + cell = null + visible_message("The [src.name]'s power cell flies off!") + charging = 0 + update_icon() + /obj/machinery/power/apc/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = 0, \ datum/tgui/master_ui = null, datum/ui_state/state = default_state) ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) - if(!ui) ui = new(user, src, ui_key, "apc", name, 535, 515, master_ui, state) ui.open() - if(ui) - ui.set_autoupdate(state = (failure_timer ? 1 : 0)) /obj/machinery/power/apc/ui_data(mob/user) var/list/data = list( "locked" = locked, - "failTime" = failure_timer, "isOperating" = operating, "externalPower" = main_status, "powerCellStatus" = cell ? cell.percent() : null, @@ -736,7 +695,7 @@ return "[area.name] : [equipment]/[lighting]/[environ] ([lastused_equip+lastused_light+lastused_environ]) : [cell? cell.percent() : "N/C"] ([charging])" /obj/machinery/power/apc/proc/update() - if(operating && !shorted && !failure_timer) + if(operating && !shorted) area.power_light = (lighting > 1) area.power_equip = (equipment > 1) area.power_environ = (environ > 1) @@ -771,7 +730,7 @@ return TRUE /obj/machinery/power/apc/ui_act(action, params) - if(..() || !can_use(usr, 1) || (locked && !usr.has_unlimited_silicon_privilege && !failure_timer)) + if(..() || !can_use(usr, 1) || (locked && !usr.has_unlimited_silicon_privilege)) return switch(action) if("lock") @@ -821,11 +780,6 @@ if("deoccupy") if(get_malf_status(usr)) malfvacate() - if("reboot") - failure_timer = 0 - update_icon() - update() - return 1 /obj/machinery/power/apc/proc/toggle_breaker() operating = !operating @@ -842,11 +796,25 @@ return malf << "Beginning override of APC systems. This takes some time, and you cannot perform other actions during the process." malf.malfhack = src - malf.malfhacking = addtimer(malf, "malfhacked", 600, TIMER_NORMAL, src) + malf.malfhacking = TRUE + addtimer(src, "malfhacked", 600, FALSE, malf) - var/obj/screen/alert/hackingapc/A - A = malf.throw_alert("hackingapc", /obj/screen/alert/hackingapc) - A.target = src +/obj/machinery/power/apc/proc/malfhacked(mob/living/silicon/ai/malf) + if(!istype(malf)) + return + malf.malfhack = null + malf.malfhacking = FALSE + if(src && !src.aidisabled) + malf.malf_picker.processing_time += 10 + + malfai = malf.parent || malf + malfhack = TRUE + locked = TRUE + + malf << "Hack complete. The APC is now under your exclusive control." + update_icon() + else + malf << "Hack aborted. The designated APC has stopped responding and no longer exists on the power network." /obj/machinery/power/apc/proc/malfoccupy(mob/living/silicon/ai/malf) if(!istype(malf)) @@ -859,96 +827,50 @@ return if(src.z != 1) return - occupier = new /mob/living/silicon/ai(src,malf.laws,null,1) //DEAR GOD WHY? - occupier.adjustOxyLoss(malf.getOxyLoss()) - if(!findtext(occupier.name,"APC Copy")) - occupier.name = "[malf.name] APC Copy" + src.occupier = new /mob/living/silicon/ai(src,malf.laws,null,1) + src.occupier.adjustOxyLoss(malf.getOxyLoss()) + if(!findtext(src.occupier.name,"APC Copy")) + src.occupier.name = "[malf.name] APC Copy" if(malf.parent) - occupier.parent = malf.parent + src.occupier.parent = malf.parent else - occupier.parent = malf + src.occupier.parent = malf malf.shunted = 1 - malf.mind.transfer_to(occupier) - occupier.eyeobj.name = "[occupier.name] (AI Eye)" + malf.mind.transfer_to(src.occupier) + src.occupier.eyeobj.name = "[src.occupier.name] (AI Eye)" if(malf.parent) qdel(malf) - occupier.verbs += /mob/living/silicon/ai/proc/corereturn - occupier.cancel_camera() + src.occupier.verbs += /mob/living/silicon/ai/proc/corereturn + src.occupier.cancel_camera() + if ((seclevel2num(get_security_level()) == SEC_LEVEL_DELTA) && malf.nuking) + for(var/obj/item/weapon/pinpointer/point in pinpointer_list) + point.the_disk = src //the pinpointer will detect the shunted AI /obj/machinery/power/apc/proc/malfvacate(forced) - if(!occupier) + if(!src.occupier) return - if(occupier.parent && occupier.parent.stat != 2) - occupier.mind.transfer_to(occupier.parent) - occupier.parent.shunted = 0 - occupier.parent.adjustOxyLoss(occupier.getOxyLoss()) - occupier.parent.cancel_camera() - qdel(occupier) + if(src.occupier.parent && src.occupier.parent.stat != 2) + src.occupier.mind.transfer_to(src.occupier.parent) + src.occupier.parent.shunted = 0 + src.occupier.parent.adjustOxyLoss(src.occupier.getOxyLoss()) + src.occupier.parent.cancel_camera() + qdel(src.occupier) + if (seclevel2num(get_security_level()) == SEC_LEVEL_DELTA) + for(var/obj/item/weapon/pinpointer/point in pinpointer_list) + for(var/mob/living/silicon/ai/A in ai_list) + if((A.stat != DEAD) && A.nuking) + point.the_disk = A //The pinpointer tracks the AI back into its core. else - occupier << "Primary core damaged, unable to return core processes." + src.occupier << "Primary core damaged, unable to return core processes." if(forced) - occupier.loc = src.loc - occupier.death() - occupier.gib() - for(var/obj/item/weapon/pinpointer/P in pinpointer_list) - P.switch_mode_to(TRACK_NUKE_DISK) //Pinpointers go back to tracking the nuke disk - P.nuke_warning = FALSE + src.occupier.loc = src.loc + src.occupier.death() + src.occupier.gib() + for(var/obj/item/weapon/pinpointer/point in pinpointer_list) + point.the_disk = null //the pinpointer will go back to pointing at the nuke disc. -/obj/machinery/power/apc/transfer_ai(interaction, mob/user, mob/living/silicon/ai/AI, obj/item/device/aicard/card) - if(card.AI) - user << "[card] is already occupied!" - return - if(!occupier) - user << "There's nothing in [src] to transfer!" - return - if(!occupier.mind || !occupier.client) - user << "[occupier] is either inactive, destroyed, or braindead!" - return - if(!occupier.parent.stat) - user << "[occupier] is refusing all attempts at transfer!" //We can return to our core, no need to shunt right now - return - if(transfer_in_progress) - user << "There's already a transfer in progress!" - return - if(interaction != AI_TRANS_TO_CARD || occupier.stat) - return - var/turf/T = get_turf(user) - if(!T) - return - transfer_in_progress = TRUE - user.visible_message("[user] slots [card] into [src]...", "Transfer process initiated. Sending request for AI approval...") - playsound(src, 'sound/machines/click.ogg', 50, 1) - occupier << sound('sound/misc/notice2.ogg') //To alert the AI that someone's trying to card them if they're tabbed out - if(alert(occupier, "[user] is attempting to transfer you to \a [card.name]. Do you consent to this?", "APC Transfer", "Yes - Transfer Me", "No - Keep Me Here") == "No - Keep Me Here") - user << "AI denied transfer request. Process terminated." - playsound(src, 'sound/machines/buzz-sigh.ogg', 50, 1) - transfer_in_progress = FALSE - return - if(user.loc != T) - user << "Location changed. Process terminated." - occupier << "[user] moved away! Transfer canceled." - transfer_in_progress = FALSE - return - user << "AI accepted request. Transferring stored intelligence to [card]..." - occupier << "Transfer starting. You will be moved to [card] shortly." - if(!do_after(user, 50, target = src)) - occupier << "[user] was interrupted! Transfer canceled." - transfer_in_progress = FALSE - return - if(!occupier || !card) - transfer_in_progress = FALSE - return - user.visible_message("[user] transfers [occupier] to [card]!", "Transfer complete! [occupier] is now stored in [card].") - occupier << "Transfer complete! You've been stored in [user]'s [card.name]." - occupier.forceMove(card) - card.AI = occupier - occupier.parent.shunted = FALSE - occupier.cancel_camera() - occupier = null - transfer_in_progress = FALSE - return /obj/machinery/power/apc/surplus() if(terminal) @@ -972,12 +894,6 @@ return if(!area.requires_power) return - if(failure_timer) - update() - queue_icon_update() - failure_timer-- - force_update = 1 - return /* if (equipment > 1) // off=0, off auto=1, on=2, on auto=3 @@ -1117,8 +1033,7 @@ // update icon & area power if anything changed - if(last_lt != lighting || last_eq != equipment || last_en != environ || force_update) - force_update = 0 + if(last_lt != lighting || last_eq != equipment || last_en != environ) queue_icon_update() update() else if (last_ch != charging) @@ -1168,10 +1083,21 @@ environ = 0 update_icon() update() - addtimer(src, "reset", 600, TIMER_NORMAL, APC_RESET_EMP) + addtimer(src, "reset", 600, FALSE, APC_RESET_EMP) ..() -/obj/machinery/power/apc/blob_act(obj/structure/blob/B) +/obj/machinery/power/apc/ex_act(severity, target) + ..() + if(!qdeleted(src)) + switch(severity) + if(2) + if(prob(50)) + set_broken() + if(3) + if(prob(25)) + set_broken() + +/obj/machinery/power/apc/blob_act(obj/effect/blob/B) set_broken() /obj/machinery/power/apc/disconnect_terminal() @@ -1200,7 +1126,7 @@ for(var/area/A in area.related) for(var/obj/machinery/light/L in A) L.on = 1 - L.break_light_tube() + L.broken() stoplag() /obj/machinery/power/apc/proc/shock(mob/user, prb) @@ -1211,7 +1137,7 @@ s.start() if(isalien(user)) return 0 - if(electrocute_mob(user, src, src, 1, TRUE)) + if(electrocute_mob(user, src, src)) return 1 else return 0 @@ -1224,23 +1150,10 @@ else return 0 - -/obj/machinery/power/apc/proc/energy_fail(duration) - for(var/obj/machinery/M in area.contents) - if(M.critical_machine) - return - for(var/A in ai_list) - var/mob/living/silicon/ai/I = A - if(get_area(I) == area) - return - - failure_timer = max(failure_timer, round(duration)) - - #undef APC_UPDATE_ICON_COOLDOWN /*Power module, used for APC construction*/ /obj/item/weapon/electronics/apc name = "power control module" icon_state = "power_mod" - desc = "Heavy-duty switching circuits for power control." + desc = "Heavy-duty switching circuits for power control." \ No newline at end of file diff --git a/code/modules/power/cable.dm b/code/modules/power/cable.dm index e63214fe07..b74449d488 100644 --- a/code/modules/power/cable.dm +++ b/code/modules/power/cable.dm @@ -93,11 +93,10 @@ By design, d1 is the smallest direction and d2 is the highest cable_list -= src //remove it from global cable list return ..() // then go ahead and delete the cable -/obj/structure/cable/deconstruct(disassembled = TRUE) - if(!(flags & NODECONSTRUCT)) - var/turf/T = loc - stored.forceMove(T) - qdel(src) +/obj/structure/cable/Deconstruct() + var/turf/T = loc + stored.loc = T + ..() /////////////////////////////////// // General procedures @@ -106,7 +105,7 @@ By design, d1 is the smallest direction and d2 is the highest //If underfloor, hide the cable /obj/structure/cable/hide(i) - if(level == 1 && isturf(loc)) + if(level == 1 && istype(loc, /turf)) invisibility = i ? INVISIBILITY_MAXIMUM : 0 updateicon() @@ -116,6 +115,9 @@ By design, d1 is the smallest direction and d2 is the highest else icon_state = "[d1]-[d2]" +//Telekinesis has no effect on a cable +/obj/structure/cable/attack_tk(mob/user) + return // Items usable on a cable : // - Wirecutters : cut it duh ! @@ -132,7 +134,7 @@ By design, d1 is the smallest direction and d2 is the highest user.visible_message("[user] cuts the cable.", "You cut the cable.") stored.add_fingerprint(user) investigate_log("was cut by [key_name(usr, usr.client)] in [user.loc.loc]","wires") - deconstruct() + Deconstruct() return else if(istype(W, /obj/item/stack/cable_coil)) @@ -163,9 +165,21 @@ By design, d1 is the smallest direction and d2 is the highest else return 0 +//explosion handling +/obj/structure/cable/ex_act(severity, target) + ..() + if(!qdeleted(src)) + switch(severity) + if(2) + if(prob(50)) + Deconstruct() + if(3) + if(prob(25)) + Deconstruct() + /obj/structure/cable/singularity_pull(S, current_size) if(current_size >= STAGE_FIVE) - deconstruct() + Deconstruct() /obj/structure/cable/proc/cableColor(colorC = "red") cable_color = colorC @@ -187,9 +201,9 @@ By design, d1 is the smallest direction and d2 is the highest if("white") icon = 'icons/obj/power_cond/power_cond_white.dmi' -/obj/structure/cable/proc/update_stored(length = 1, colorC = "red") +/obj/structure/cable/proc/update_stored(var/length = 1, var/color = "red") stored.amount = length - stored.item_color = colorC + stored.item_color = color stored.update_icon() //////////////////////////////////////////// @@ -453,7 +467,7 @@ var/global/list/datum/stack_recipe/cable_coil_recipes = list ( \ item_color = "red" desc = "A coil of insulated power cable." throwforce = 0 - w_class = WEIGHT_CLASS_SMALL + w_class = 2 throw_speed = 3 throw_range = 5 materials = list(MAT_METAL=10, MAT_GLASS=5) @@ -474,9 +488,9 @@ var/global/list/datum/stack_recipe/cable_coil_recipes = list ( \ /obj/item/stack/cable_coil/suicide_act(mob/user) if(locate(/obj/structure/chair/stool) in get_turf(user)) - user.visible_message("[user] is making a noose with [src]! It looks like [user.p_theyre()] trying to commit suicide!") + user.visible_message("[user] is making a noose with the [src.name]! It looks like \he's trying to commit suicide.") else - user.visible_message("[user] is strangling [user.p_them()]self with [src]! It looks like [user.p_theyre()] trying to commit suicide!") + user.visible_message("[user] is strangling \himself with the [src.name]! It looks like \he's trying to commit suicide.") return(OXYLOSS) /obj/item/stack/cable_coil/New(loc, amount = MAXCOIL, var/param_color = null) @@ -499,7 +513,7 @@ var/global/list/datum/stack_recipe/cable_coil_recipes = list ( \ return ..() var/obj/item/bodypart/affecting = H.get_bodypart(check_zone(user.zone_selected)) - if(affecting && affecting.status == BODYPART_ROBOTIC) + if(affecting && affecting.status == ORGAN_ROBOTIC) user.visible_message("[user] starts to fix some of the wires in [H]'s [affecting.name].", "You start fixing some of the wires in [H]'s [affecting.name].") if(!do_mob(user, H, 50)) return @@ -601,7 +615,7 @@ var/global/list/datum/stack_recipe/cable_coil_recipes = list ( \ if (C.shock(user, 50)) if (prob(50)) //fail - C.deconstruct() + C.Deconstruct() // called when cable_coil is click on an installed obj/cable // or click on a turf that already contains a "node" cable @@ -666,7 +680,7 @@ var/global/list/datum/stack_recipe/cable_coil_recipes = list ( \ if (NC.shock(user, 50)) if (prob(50)) //fail - NC.deconstruct() + NC.Deconstruct() return @@ -716,7 +730,7 @@ var/global/list/datum/stack_recipe/cable_coil_recipes = list ( \ if (C.shock(user, 50)) if (prob(50)) //fail - C.deconstruct() + C.Deconstruct() return C.denode()// this call may have disconnected some cables that terminated on the centre of the turf, if so split the powernets. diff --git a/code/modules/power/cell.dm b/code/modules/power/cell.dm index d62b543afa..6d3779e6b3 100644 --- a/code/modules/power/cell.dm +++ b/code/modules/power/cell.dm @@ -1,6 +1,7 @@ /obj/item/weapon/stock_parts/cell name = "power cell" desc = "A rechargable electrochemical power cell." + var/ratingdesc icon = 'icons/obj/power.dmi' icon_state = "cell" item_state = "cell" @@ -9,36 +10,33 @@ throwforce = 5 throw_speed = 2 throw_range = 5 - w_class = WEIGHT_CLASS_SMALL + w_class = 2 var/charge = 0 // note %age conveted to actual charge in New var/maxcharge = 1000 materials = list(MAT_METAL=700, MAT_GLASS=50) var/rigged = 0 // true if rigged to explode var/chargerate = 100 //how much power is given every tick in a recharger var/self_recharge = 0 //does it self recharge, over time, or not? - var/ratingdesc = TRUE - var/grown_battery = FALSE // If it's a grown that acts as a battery, add a wire overlay to it. /obj/item/weapon/stock_parts/cell/New() ..() START_PROCESSING(SSobj, src) charge = maxcharge - if(ratingdesc) - desc += " This one has a power rating of [maxcharge], and you should not swallow it." + ratingdesc = " This one has a power rating of [maxcharge], and you should not swallow it." + desc = desc + ratingdesc updateicon() /obj/item/weapon/stock_parts/cell/Destroy() STOP_PROCESSING(SSobj, src) return ..() -/obj/item/weapon/stock_parts/cell/vv_edit_var(var_name, var_value) - switch(var_name) - if("self_recharge") - if(var_value) - START_PROCESSING(SSobj, src) - else - STOP_PROCESSING(SSobj, src) - . = ..() +/obj/item/weapon/stock_parts/cell/on_varedit(modified_var) + if(modified_var == "self_recharge") + if(self_recharge) + START_PROCESSING(SSobj, src) + else + STOP_PROCESSING(SSobj, src) + ..() /obj/item/weapon/stock_parts/cell/process() if(self_recharge) @@ -48,8 +46,6 @@ /obj/item/weapon/stock_parts/cell/proc/updateicon() cut_overlays() - if(grown_battery) - add_overlay(image('icons/obj/power.dmi', "grown_wires")) if(charge < 0.01) return else if(charge/maxcharge >=0.995) @@ -91,7 +87,7 @@ user << "The charge meter reads [round(src.percent() )]%." /obj/item/weapon/stock_parts/cell/suicide_act(mob/user) - user.visible_message("[user] is licking the electrodes of [src]! It looks like [user.p_theyre()] trying to commit suicide!") + user.visible_message("[user] is licking the electrodes of the [src.name]! It looks like \he's trying to commit suicide.") return (FIRELOSS) /obj/item/weapon/stock_parts/cell/attackby(obj/item/W, mob/user, params) @@ -150,7 +146,7 @@ corrupt() -/obj/item/weapon/stock_parts/cell/blob_act(obj/structure/blob/B) +/obj/item/weapon/stock_parts/cell/blob_act(obj/effect/blob/B) ex_act(1) /obj/item/weapon/stock_parts/cell/proc/get_electrocute_damage() @@ -268,31 +264,16 @@ /obj/item/weapon/stock_parts/cell/infinite/use() return 1 -/obj/item/weapon/stock_parts/cell/infinite/abductor - name = "void core" - desc = "An alien power cell that produces energy seemingly out of nowhere." - icon = 'icons/obj/abductor.dmi' - icon_state = "cell" - origin_tech = "abductor=5;powerstorage=8;engineering=6" - maxcharge = 50000 - rating = 12 - ratingdesc = FALSE - -/obj/item/weapon/stock_parts/cell/infinite/abductor/update_icon() - return - - /obj/item/weapon/stock_parts/cell/potato name = "potato battery" desc = "A rechargable starch based power cell." - icon = 'icons/obj/hydroponics/harvest.dmi' - icon_state = "potato" + icon = 'icons/obj/power.dmi' //'icons/obj/hydroponics/harvest.dmi' + icon_state = "potato_cell" //"potato_battery" origin_tech = "powerstorage=1;biotech=1" charge = 100 maxcharge = 300 materials = list() rating = 1 - grown_battery = TRUE //it has the overlays for wires /obj/item/weapon/stock_parts/cell/high/slime name = "charged slime core" diff --git a/code/modules/power/generator.dm b/code/modules/power/generator.dm index 7886415c2e..a1a8505587 100644 --- a/code/modules/power/generator.dm +++ b/code/modules/power/generator.dm @@ -173,6 +173,10 @@ /obj/machinery/power/generator/interact(mob/user) user.set_machine(src) + + //user << browse(t, "window=teg;size=460x300") + //onclose(user, "teg") + var/datum/browser/popup = new(user, "teg", "Thermo-Electric Generator", 460, 300) popup.set_content(get_menu()) popup.set_title_image(user.browse_rsc_icon(src.icon, src.icon_state)) diff --git a/code/modules/power/gravitygenerator.dm b/code/modules/power/gravitygenerator.dm index 22606cbcd6..79a7990a40 100644 --- a/code/modules/power/gravitygenerator.dm +++ b/code/modules/power/gravitygenerator.dm @@ -25,22 +25,17 @@ var/const/GRAV_NEEDS_WRENCH = 3 anchored = 1 density = 1 use_power = 0 - resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | UNACIDABLE | ACID_PROOF + unacidable = 1 var/sprite_number = 0 /obj/machinery/gravity_generator/ex_act(severity, target) if(severity == 1) // Very sturdy. set_broken() -/obj/machinery/gravity_generator/blob_act(obj/structure/blob/B) +/obj/machinery/gravity_generator/blob_act(obj/effect/blob/B) if(prob(20)) set_broken() -/obj/machinery/gravity_generator/tesla_act(power, explosive) - ..() - if(explosive) - qdel(src)//like the singulo, tesla deletes it. stops it from exploding over and over - /obj/machinery/gravity_generator/update_icon() ..() icon_state = "[get_status()]_[sprite_number]" @@ -209,7 +204,7 @@ var/const/GRAV_NEEDS_WRENCH = 3 if(GRAV_NEEDS_PLASTEEL) if(istype(I, /obj/item/stack/sheet/plasteel)) var/obj/item/stack/sheet/plasteel/PS = I - if(PS.get_amount() >= 10) + if(PS.amount >= 10) PS.use(10) user << "You add the plating to the framework." playsound(src.loc, 'sound/machines/click.ogg', 75, 1) diff --git a/code/modules/power/lighting.dm b/code/modules/power/lighting.dm index a3e497cb95..87c8364218 100644 --- a/code/modules/power/lighting.dm +++ b/code/modules/power/lighting.dm @@ -16,38 +16,34 @@ desc = "Used for building lights." icon = 'icons/obj/lighting.dmi' icon_state = "tube-construct-item" - result_path = /obj/structure/light_construct + result_path = /obj/machinery/light_construct inverse = 1 /obj/item/wallframe/light_fixture/small name = "small light fixture frame" icon_state = "bulb-construct-item" - result_path = /obj/structure/light_construct/small + result_path = /obj/machinery/light_construct/small materials = list(MAT_METAL=MINERAL_MATERIAL_AMOUNT) -/obj/structure/light_construct +/obj/machinery/light_construct name = "light fixture frame" desc = "A light fixture under construction." icon = 'icons/obj/lighting.dmi' icon_state = "tube-construct-stage1" anchored = 1 layer = WALL_OBJ_LAYER - obj_integrity = 200 - max_integrity = 200 - armor = list(melee = 50, bullet = 10, laser = 10, energy = 0, bomb = 0, bio = 0, rad = 0, fire = 80, acid = 50) - var/stage = 1 var/fixture_type = "tube" var/sheets_refunded = 2 var/obj/machinery/light/newlight = null -/obj/structure/light_construct/New(loc, ndir, building) +/obj/machinery/light_construct/New(loc, ndir, building) ..() if(building) setDir(ndir) -/obj/structure/light_construct/examine(mob/user) +/obj/machinery/light_construct/examine(mob/user) ..() switch(src.stage) if(1) @@ -57,14 +53,14 @@ if(3) user << "The casing is closed." -/obj/structure/light_construct/attackby(obj/item/weapon/W, mob/user, params) +/obj/machinery/light_construct/attackby(obj/item/weapon/W, mob/user, params) add_fingerprint(user) switch(stage) if(1) if(istype(W, /obj/item/weapon/wrench)) playsound(src.loc, W.usesound, 75, 1) usr << "You begin deconstructing [src]..." - if (!do_after(usr, 30*W.toolspeed, target = src)) + if (!do_after(usr, 30/W.toolspeed, target = src)) return new /obj/item/stack/sheet/metal( get_turf(src.loc), sheets_refunded ) user.visible_message("[user.name] deconstructs [src].", \ @@ -120,24 +116,13 @@ return return ..() -/obj/structure/light_construct/blob_act(obj/structure/blob/B) - if(B && B.loc == loc) - qdel(src) - -/obj/structure/light_construct/deconstruct(disassembled = TRUE) - if(!(flags & NODECONSTRUCT)) - new /obj/item/stack/sheet/metal(loc, sheets_refunded) - qdel(src) - -/obj/structure/light_construct/small +/obj/machinery/light_construct/small name = "small light fixture frame" icon_state = "bulb-construct-stage1" fixture_type = "bulb" sheets_refunded = 1 - - // the standard tube light fixture /obj/machinery/light name = "light fixture" @@ -147,8 +132,6 @@ desc = "A lighting fixture." anchored = 1 layer = WALL_OBJ_LAYER - obj_integrity = 100 - max_integrity = 100 use_power = 2 idle_power_usage = 2 active_power_usage = 20 @@ -165,6 +148,7 @@ // this is used to calc the probability the light burns out var/rigged = 0 // true if rigged to explode + var/health = 20 // the smaller bulb light fixture @@ -175,12 +159,12 @@ brightness = 4 desc = "A small lighting fixture." light_type = /obj/item/weapon/light/bulb - + health = 15 /obj/machinery/light/Move() if(status != LIGHT_BROKEN) - break_light_tube(1) + broken(1) return ..() /obj/machinery/light/built/New() @@ -202,11 +186,11 @@ if("tube") brightness = 8 if(prob(2)) - break_light_tube(1) + broken(1) if("bulb") brightness = 4 if(prob(5)) - break_light_tube(1) + broken(1) spawn(1) update(0) @@ -238,20 +222,23 @@ update_icon() if(on) - if(!light || light.luminosity != brightness) + if(!light || light.light_range != brightness) switchcount++ if(rigged) if(status == LIGHT_OK && trigger) explode() else if( prob( min(60, switchcount*switchcount*0.01) ) ) - if(trigger) - burn_out() + if(status == LIGHT_OK && trigger) + status = LIGHT_BURNED + icon_state = "[base_state]-burned" + on = 0 + set_light(0) else use_power = 2 - SetLuminosity(brightness) + set_light(brightness) else use_power = 1 - SetLuminosity(0) + set_light(0) active_power_usage = (brightness * 10) if(on != on_gs) @@ -263,13 +250,6 @@ removeStaticPower(static_power_used, STATIC_LIGHT) -/obj/machinery/light/proc/burn_out() - if(status == LIGHT_OK) - status = LIGHT_BURNED - icon_state = "[base_state]-burned" - on = 0 - SetLuminosity(0) - // attempt to set the light's on/off status // will not switch on if broken/burned/empty /obj/machinery/light/proc/seton(s) @@ -331,7 +311,19 @@ playsound(src.loc, W.usesound, 75, 1) user.visible_message("[user.name] opens [src]'s casing.", \ "You open [src]'s casing.", "You hear a noise.") - deconstruct() + var/obj/machinery/light_construct/newlight = null + switch(fitting) + if("tube") + newlight = new /obj/machinery/light_construct(src.loc) + newlight.icon_state = "tube-construct-stage2" + + if("bulb") + newlight = new /obj/machinery/light_construct/small(src.loc) + newlight.icon_state = "bulb-construct-stage2" + newlight.setDir(src.dir) + newlight.stage = 2 + transfer_fingerprints_to(newlight) + qdel(src) else user << "You stick \the [W] into the light socket!" if(has_power() && (W.flags & CONDUCT)) @@ -339,64 +331,36 @@ s.set_up(3, 1, src) s.start() if (prob(75)) - electrocute_mob(user, get_area(src), src, rand(0.7,1.0), TRUE) + electrocute_mob(user, get_area(src), src, rand(0.7,1.0)) else return ..() -/obj/machinery/light/deconstruct(disassembled = TRUE) - if(!(flags & NODECONSTRUCT)) - var/obj/structure/light_construct/newlight = null - var/cur_stage = 2 - if(!disassembled) - cur_stage = 1 - switch(fitting) - if("tube") - newlight = new /obj/structure/light_construct(src.loc) - newlight.icon_state = "tube-construct-stage[cur_stage]" - - if("bulb") - newlight = new /obj/structure/light_construct/small(src.loc) - newlight.icon_state = "bulb-construct-stage[cur_stage]" - newlight.setDir(src.dir) - newlight.stage = cur_stage - if(!disassembled) - newlight.obj_integrity = newlight.max_integrity * 0.5 - if(status != LIGHT_BROKEN) - break_light_tube() - if(status != LIGHT_EMPTY) - drop_light_tube() - new /obj/item/stack/cable_coil(loc, 1, "red") - transfer_fingerprints_to(newlight) - qdel(src) - /obj/machinery/light/attacked_by(obj/item/I, mob/living/user) ..() if(status == LIGHT_BROKEN || status == LIGHT_EMPTY) if(on && (I.flags & CONDUCT)) if(prob(12)) - electrocute_mob(user, get_area(src), src, 0.3, TRUE) + electrocute_mob(user, get_area(src), src, 0.3) -/obj/machinery/light/take_damage(damage_amount, damage_type = BRUTE, damage_flag = 0, sound_effect = 1) - . = ..() - if(. && !qdeleted(src)) - if(prob(damage_amount * 5)) - break_light_tube() - - - - -/obj/machinery/light/play_attack_sound(damage_amount, damage_type = BRUTE, damage_flag = 0) +/obj/machinery/light/take_damage(damage, damage_type = BRUTE, sound_effect = 1) switch(damage_type) if(BRUTE) - switch(status) - if(LIGHT_EMPTY) - playsound(loc, 'sound/weapons/smash.ogg', 50, 1) - if(LIGHT_BROKEN) - playsound(loc, 'sound/effects/hit_on_shattered_glass.ogg', 90, 1) - else - playsound(loc, 'sound/effects/Glasshit.ogg', 90, 1) + if(sound_effect) + switch(status) + if(LIGHT_EMPTY) + playsound(loc, 'sound/weapons/smash.ogg', 50, 1) + if(LIGHT_BROKEN) + playsound(loc, 'sound/effects/hit_on_shattered_glass.ogg', 90, 1) + else + playsound(loc, 'sound/effects/Glasshit.ogg', 90, 1) if(BURN) - playsound(src.loc, 'sound/items/Welder.ogg', 100, 1) + if(sound_effect) + playsound(src.loc, 'sound/items/Welder.ogg', 100, 1) + else + return + health -= damage + if(health <= 0) + broken() // returns whether this light has power @@ -425,6 +389,20 @@ src.flicker(1) return +/obj/machinery/light/bullet_act(obj/item/projectile/P) + . = ..() + take_damage(P.damage, P.damage_type, 0) + +/obj/machinery/light/hitby(AM as mob|obj) + ..() + var/tforce = 0 + if(ismob(AM)) + tforce = 40 + else if(isobj(AM)) + var/obj/item/I = AM + tforce = I.throwforce + take_damage(tforce) + // attack with hand - remove tube/bulb // if hands aren't protected and the light is on, burn the player @@ -457,16 +435,14 @@ else user << "You try to remove the light [fitting], but you burn your hand on it!" - var/obj/item/bodypart/affecting = H.get_bodypart("[(user.active_hand_index % 2 == 0) ? "r" : "l" ]_arm") - if(affecting && affecting.receive_damage( 0, 5 )) // 5 burn damage - H.update_damage_overlays() + var/obj/item/bodypart/affecting = H.get_bodypart("[user.hand ? "l" : "r" ]_arm") + if(affecting && affecting.take_damage( 0, 5 )) // 5 burn damage + H.update_damage_overlays(0) + H.updatehealth() return // if burned, don't remove the light else user << "You remove the light [fitting]." // create a light tube/bulb item and put it in the user's hand - drop_light_tube(user) - -/obj/machinery/light/proc/drop_light_tube(mob/user) var/obj/item/weapon/light/L = new light_type() L.status = status L.rigged = rigged @@ -477,11 +453,10 @@ switchcount = 0 L.update() - L.forceMove(loc) + L.add_fingerprint(user) + L.loc = loc - if(user) //puts it in our active hand - L.add_fingerprint(user) - user.put_in_active_hand(L) + user.put_in_active_hand(L) //puts it in our active hand status = LIGHT_EMPTY update() @@ -493,13 +468,26 @@ user << "You telekinetically remove the light [fitting]." // create a light tube/bulb item and put it in the user's hand - drop_light_tube() + var/obj/item/weapon/light/L = new light_type() + L.status = status + L.rigged = rigged + L.brightness = brightness + // light item inherits the switchcount, then zero it + L.switchcount = switchcount + switchcount = 0 + + L.update() + L.add_fingerprint(user) + L.loc = loc + + status = LIGHT_EMPTY + update() // break the light and make sparks if was on -/obj/machinery/light/proc/break_light_tube(skip_sound_and_sparks = 0) - if(status == LIGHT_EMPTY || status == LIGHT_BROKEN) +/obj/machinery/light/proc/broken(skip_sound_and_sparks = 0) + if(status == LIGHT_EMPTY) return if(!skip_sound_and_sparks) @@ -520,10 +508,19 @@ on = 1 update() -/obj/machinery/light/tesla_act(power, explosive = FALSE) - if(explosive) - explosion(src.loc,0,0,0,flame_range = 5, adminlog = 0) - qdel(src) +// explosion effect +// destroy the whole light fixture or just shatter it + +/obj/machinery/light/ex_act(severity, target) + ..() + if(!qdeleted(src)) + switch(severity) + if(2) + if(prob(50)) + broken() + if(3) + if(prob(25)) + broken() // called when area power state changes /obj/machinery/light/power_change() @@ -535,14 +532,14 @@ /obj/machinery/light/temperature_expose(datum/gas_mixture/air, exposed_temperature, exposed_volume) if(prob(max(0, exposed_temperature - 673))) //0% at <400C, 100% at >500C - break_light_tube() + broken() // explode the light /obj/machinery/light/proc/explode() set waitfor = 0 var/turf/T = get_turf(src.loc) - break_light_tube() // break it first to give a warning + broken() // break it first to give a warning sleep(2) explosion(T, 0, 0, 2, 2) sleep(1) @@ -556,11 +553,11 @@ icon = 'icons/obj/lighting.dmi' force = 2 throwforce = 5 - w_class = WEIGHT_CLASS_TINY + w_class = 1 var/status = 0 // LIGHT_OK, LIGHT_BURNED or LIGHT_BROKEN var/base_state var/switchcount = 0 // number of times switched - materials = list(MAT_GLASS=100) + materials = list(MAT_METAL=60) var/rigged = 0 // true if rigged to explode var/brightness = 2 //how much light it gives off @@ -570,6 +567,7 @@ icon_state = "ltube" base_state = "ltube" item_state = "c_tube" + materials = list(MAT_GLASS=100) brightness = 8 /obj/item/weapon/light/bulb @@ -578,6 +576,7 @@ icon_state = "lbulb" base_state = "lbulb" item_state = "contvapour" + materials = list(MAT_GLASS=100) brightness = 4 /obj/item/weapon/light/throw_impact(atom/hit_atom) diff --git a/code/modules/power/monitor.dm b/code/modules/power/monitor.dm index 9627536506..0b935f8ac5 100644 --- a/code/modules/power/monitor.dm +++ b/code/modules/power/monitor.dm @@ -7,6 +7,7 @@ idle_power_usage = 20 active_power_usage = 100 circuit = /obj/item/weapon/circuitboard/computer/powermonitor + light_color = LIGHT_COLOR_ORANGE var/obj/structure/cable/attached @@ -68,14 +69,9 @@ for(var/obj/machinery/power/terminal/term in attached.powernet.nodes) var/obj/machinery/power/apc/A = term.master if(istype(A)) - var/cell_charge - if(!A.cell) - cell_charge = 0 - else - cell_charge = A.cell.percent() data["areas"] += list(list( "name" = A.area.name, - "charge" = cell_charge, + "charge" = A.cell.percent(), "load" = A.lastused_total, "charging" = A.charging, "eqp" = A.equipment, diff --git a/code/modules/power/port_gen.dm b/code/modules/power/port_gen.dm index bb1ed6db66..02ba3df07e 100644 --- a/code/modules/power/port_gen.dm +++ b/code/modules/power/port_gen.dm @@ -1,4 +1,4 @@ - +//This file was auto-corrected by findeclaration.exe on 25.5.2012 20:42:33 /* new portable generator - work in progress @@ -271,7 +271,7 @@ display round(lastgen) and plasmatank amount /obj/machinery/power/port_gen/pacman/interact(mob/user) if (get_dist(src, user) > 1 ) - if(!isAI(user)) + if (!istype(user, /mob/living/silicon/ai)) user.unset_machine() user << browse(null, "window=port_gen") return @@ -290,7 +290,7 @@ display round(lastgen) and plasmatank amount dat += text("Power current: [(powernet == null ? "Unconnected" : "[avail()]")]
    ") dat += text("Heat: [current_heat]
    ") dat += "
    Close" - user << browse(dat, "window=port_gen") + user << browse("[dat]", "window=port_gen") onclose(user, "port_gen") /obj/machinery/power/port_gen/pacman/Topic(href, href_list) @@ -332,9 +332,8 @@ display round(lastgen) and plasmatank amount power_gen = 15000 time_per_sheet = 85 board_path = /obj/item/weapon/circuitboard/machine/pacman/super - -/obj/machinery/power/port_gen/pacman/super/overheat() - explosion(src.loc, 3, 3, 3, -1) + overheat() + explosion(src.loc, 3, 3, 3, -1) /obj/machinery/power/port_gen/pacman/mrs name = "\improper M.R.S.P.A.C.M.A.N.-type portable generator" @@ -343,6 +342,5 @@ display round(lastgen) and plasmatank amount power_gen = 40000 time_per_sheet = 80 board_path = /obj/item/weapon/circuitboard/machine/pacman/mrs - -/obj/machinery/power/port_gen/pacman/mrs/overheat() - explosion(src.loc, 4, 4, 4, -1) + overheat() + explosion(src.loc, 4, 4, 4, -1) diff --git a/code/modules/power/power.dm b/code/modules/power/power.dm index 350233ecd3..cc968ac2b0 100644 --- a/code/modules/power/power.dm +++ b/code/modules/power/power.dm @@ -86,9 +86,18 @@ // can override if needed if(powered(power_channel)) stat &= ~NOPOWER + + if(!use_auto_lights) + return + set_light(light_range_on, light_power_on) + else stat |= NOPOWER + + if(!use_auto_lights) + return + set_light(0) return // connect the machine to a powernet if a node cable is present on the turf @@ -117,7 +126,7 @@ if(istype(W, /obj/item/stack/cable_coil)) var/obj/item/stack/cable_coil/coil = W var/turf/T = user.loc - if(T.intact || !isfloorturf(T)) + if(T.intact || !istype(T, /turf/open/floor)) return if(get_dist(src, user) > 1) return @@ -275,16 +284,11 @@ //M is a mob who touched wire/whatever //power_source is a source of electricity, can be powercell, area, apc, cable, powernet or null //source is an object caused electrocuting (airlock, grille, etc) -//siemens_coeff - layman's terms, conductivity -//dist_check - set to only shock mobs within 1 of source (vendors, airlocks, etc.) //No animations will be performed by this proc. -/proc/electrocute_mob(mob/living/carbon/M, power_source, obj/source, siemens_coeff = 1, dist_check = FALSE) +/proc/electrocute_mob(mob/living/carbon/M, power_source, obj/source, siemens_coeff = 1) if(istype(M.loc,/obj/mecha)) return 0 //feckin mechs are dumb - if(dist_check) - if(!in_range(source,M)) - return 0 - if(ishuman(M)) + if(istype(M,/mob/living/carbon/human)) var/mob/living/carbon/human/H = M if(H.gloves) var/obj/item/clothing/gloves/G = H.gloves diff --git a/code/modules/power/rtg.dm b/code/modules/power/rtg.dm deleted file mode 100644 index 5d920097be..0000000000 --- a/code/modules/power/rtg.dm +++ /dev/null @@ -1,150 +0,0 @@ -// Radioisotope Thermoelectric Generator (RTG) -// Simple power generator that would replace "magic SMES" on various derelicts. - -/obj/machinery/power/rtg - name = "radioisotope thermoelectric generator" - desc = "A simple nuclear power generator, used in small outposts to reliably provide power for decades." - icon = 'icons/obj/power.dmi' - icon_state = "rtg" - density = 1 - anchored = 1 - use_power = 0 - - // You can buckle someone to RTG, then open its panel. Fun stuff. - can_buckle = TRUE - buckle_lying = FALSE - buckle_requires_restraints = TRUE - - var/power_gen = 1000 // Enough to power a single APC. 4000 output with T4 capacitor. - var/board_path = /obj/item/weapon/circuitboard/machine/rtg - var/irradiate = TRUE // RTGs irradiate surroundings, but only when panel is open. - -/obj/machinery/power/rtg/New() - ..() - var/obj/item/weapon/circuitboard/machine/B = new board_path(null) - B.apply_default_parts(src) - connect_to_network() - -/obj/item/weapon/circuitboard/machine/rtg - name = "circuit board (RTG)" - build_path = /obj/machinery/power/rtg - origin_tech = "programming=2;materials=4;powerstorage=3;engineering=2" - req_components = list( - /obj/item/stack/cable_coil = 5, - /obj/item/weapon/stock_parts/capacitor = 1, - /obj/item/stack/sheet/mineral/uranium = 10) // We have no Pu-238, and this is the closest thing to it. - -/obj/machinery/power/rtg/initialize() - ..() - connect_to_network() - -/obj/machinery/power/rtg/process() - ..() - add_avail(power_gen) - if(panel_open && irradiate) - radiation_pulse(get_turf(src), 2, 3, 6) // Weak but noticeable. - -/obj/machinery/power/rtg/RefreshParts() - var/part_level = 0 - for(var/obj/item/weapon/stock_parts/SP in component_parts) - part_level += SP.rating - - power_gen = initial(power_gen) * part_level - -/obj/machinery/power/rtg/attackby(obj/item/I, mob/user, params) - if(exchange_parts(user, I)) - return - else if(default_deconstruction_screwdriver(user, "[initial(icon_state)]-open", initial(icon_state), I)) - return - else if(default_deconstruction_crowbar(I)) - return - return ..() - -/obj/machinery/power/rtg/attack_hand(mob/user) - if(can_buckle && isliving(user.pulling) && user.a_intent == INTENT_GRAB && !has_buckled_mobs()) - var/mob/living/L = user.pulling - if(L.buckled) - return - L.loc = src.loc - user_buckle_mob(L, user) - else - ..() - - -/obj/machinery/power/rtg/advanced - desc = "An advanced RTG capable of moderating isotope decay, increasing power output but reducing lifetime. It uses plasma-fueled radiation collectors to increase output even further." - power_gen = 1250 // 2500 on T1, 10000 on T4. - board_path = /obj/item/weapon/circuitboard/machine/rtg/advanced - -/obj/item/weapon/circuitboard/machine/rtg/advanced - name = "circuit board (Advanced RTG)" - build_path = /obj/machinery/power/rtg/advanced - origin_tech = "programming=3;materials=5;powerstorage=4;engineering=3;plasmatech=3" - req_components = list( - /obj/item/stack/cable_coil = 5, - /obj/item/weapon/stock_parts/capacitor = 1, - /obj/item/weapon/stock_parts/micro_laser = 1, - /obj/item/stack/sheet/mineral/uranium = 10, - /obj/item/stack/sheet/mineral/plasma = 5) - - - -// Void Core, power source for Abductor ships and bases. -// Provides a lot of power, but tends to explode when mistreated. - -/obj/machinery/power/rtg/abductor - name = "Void Core" - icon = 'icons/obj/abductor.dmi' - icon_state = "core" - desc = "An alien power source that produces energy seemingly out of nowhere." - board_path = /obj/item/weapon/circuitboard/machine/abductor/core - power_gen = 20000 // 280 000 at T1, 400 000 at T4. Starts at T4. - irradiate = FALSE // Green energy! - can_buckle = FALSE - pixel_y = 7 - var/going_kaboom = FALSE // Is it about to explode? - -/obj/item/weapon/circuitboard/machine/abductor/core - name = "alien board (Void Core)" - build_path = /obj/machinery/power/rtg/abductor - origin_tech = "programming=5;abductor=5;powerstorage=8;engineering=8" - req_components = list( - /obj/item/weapon/stock_parts/capacitor = 1, - /obj/item/weapon/stock_parts/micro_laser = 1, - /obj/item/weapon/stock_parts/cell/infinite/abductor = 1) - def_components = list( - /obj/item/weapon/stock_parts/capacitor = /obj/item/weapon/stock_parts/capacitor/quadratic, - /obj/item/weapon/stock_parts/micro_laser = /obj/item/weapon/stock_parts/micro_laser/quadultra) - -/obj/machinery/power/rtg/abductor/proc/overload() - if(going_kaboom) - return - going_kaboom = TRUE - visible_message("\The [src] lets out an shower of sparks as it starts to lose stability!",\ - "You hear a loud electrical crack!") - playsound(src.loc, 'sound/magic/LightningShock.ogg', 100, 1, extrarange = 5) - tesla_zap(src, 5, power_gen * 0.05) - addtimer(GLOBAL_PROC, "explosion", 100, TIMER_NORMAL, get_turf(src), 2, 3, 4, 8) // Not a normal explosion. - -/obj/machinery/power/rtg/abductor/bullet_act(obj/item/projectile/Proj) - ..() - if(!going_kaboom && istype(Proj) && !Proj.nodamage && ((Proj.damage_type == BURN) || (Proj.damage_type == BRUTE))) - message_admins("[key_name_admin(Proj.firer)] triggered an Abductor Core explosion via projectile.") - log_game("[key_name(Proj.firer)] triggered an Abductor Core explosion via projectile.") - overload() - -/obj/machinery/power/rtg/abductor/blob_act(obj/structure/blob/B) - overload() - -/obj/machinery/power/rtg/abductor/ex_act() - if(going_kaboom) - qdel(src) - else - overload() - -/obj/machinery/power/rtg/abductor/fire_act(exposed_temperature, exposed_volume) - overload() - -/obj/machinery/power/rtg/abductor/tesla_act() - ..() //extend the zap - overload() diff --git a/code/modules/power/singularity/collector.dm b/code/modules/power/singularity/collector.dm index 8d5bb1c5b7..f9f611dd65 100644 --- a/code/modules/power/singularity/collector.dm +++ b/code/modules/power/singularity/collector.dm @@ -1,4 +1,4 @@ - +//This file was auto-corrected by findeclaration.exe on 25.5.2012 20:42:33 var/global/list/rad_collectors = list() /obj/machinery/power/rad_collector @@ -10,9 +10,6 @@ var/global/list/rad_collectors = list() density = 1 req_access = list(access_engine_equip) // use_power = 0 - obj_integrity = 350 - max_integrity = 350 - integrity_failure = 80 var/obj/item/weapon/tank/internals/plasma/loaded_tank = null var/last_power = 0 var/active = 0 @@ -81,14 +78,14 @@ var/global/list/rad_collectors = list() user << "Remove the plasma tank first!" return 1 if(!anchored && !isinspace()) - playsound(src.loc, W.usesound, 75, 1) + playsound(src.loc, 'sound/items/Ratchet.ogg', 75, 1) anchored = 1 user.visible_message("[user.name] secures the [src.name].", \ "You secure the external bolts.", \ "You hear a ratchet.") connect_to_network() else if(anchored) - playsound(src.loc, W.usesound, 75, 1) + playsound(src.loc, 'sound/items/Ratchet.ogg', 75, 1) anchored = 0 user.visible_message("[user.name] unsecures the [src.name].", \ "You unsecure the external bolts.", \ @@ -108,10 +105,12 @@ var/global/list/rad_collectors = list() return ..() -/obj/machinery/power/rad_collector/obj_break(damage_flag) - if(!(stat & BROKEN) && !(flags & NODECONSTRUCT)) - eject() - stat |= BROKEN +/obj/machinery/power/rad_collector/ex_act(severity, target) + switch(severity) + if(2, 3) + eject() + return ..() + /obj/machinery/power/rad_collector/proc/eject() locked = 0 @@ -120,7 +119,6 @@ var/global/list/rad_collectors = list() return Z.loc = get_turf(src) Z.layer = initial(Z.layer) - Z.plane = initial(Z.plane) src.loaded_tank = null if(active) toggle_power() @@ -157,3 +155,4 @@ var/global/list/rad_collectors = list() flick("ca_deactive", src) update_icons() return + diff --git a/code/modules/power/singularity/containment_field.dm b/code/modules/power/singularity/containment_field.dm index 297a38b978..46ac2a8fda 100644 --- a/code/modules/power/singularity/containment_field.dm +++ b/code/modules/power/singularity/containment_field.dm @@ -1,13 +1,13 @@ - +//This file was auto-corrected by findeclaration.exe on 25.5.2012 20:42:33 /obj/machinery/field/containment - name = "containment field" + name = "Containment Field" desc = "An energy field." icon = 'icons/obj/singularity.dmi' icon_state = "Contain_F" anchored = 1 density = 0 - resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | UNACIDABLE | ACID_PROOF + unacidable = 1 use_power = 0 luminosity = 4 layer = ABOVE_OBJ_LAYER @@ -26,33 +26,14 @@ shock(user) return 1 -/obj/machinery/field/containment/attackby(obj/item/W, mob/user, params) - shock(user) - return 1 -/obj/machinery/field/containment/play_attack_sound(damage_amount, damage_type = BRUTE, damage_flag = 0) - switch(damage_type) - if(BURN) - playsound(loc, 'sound/effects/EMPulse.ogg', 75, 1) - if(BRUTE) - playsound(loc, 'sound/effects/EMPulse.ogg', 75, 1) - -/obj/machinery/field/containment/blob_act(obj/structure/blob/B) +/obj/machinery/field/containment/blob_act(obj/effect/blob/B) return 0 + /obj/machinery/field/containment/ex_act(severity, target) return 0 -/obj/machinery/field/containment/attack_animal(mob/living/simple_animal/M) - if(!FG1 || !FG2) - qdel(src) - return - if(ismegafauna(M)) - M.visible_message("[M] glows fiercely as the containment field flickers out!") - FG1.calc_power(INFINITY) //rip that 'containment' field - M.adjustHealth(-M.obj_damage) - else - ..() /obj/machinery/field/containment/Crossed(mob/mover) if(isliving(mover)) @@ -78,8 +59,6 @@ /obj/machinery/field/containment/Move() qdel(src) - - // Abstract Field Class // Used for overriding certain procs @@ -98,23 +77,26 @@ return ..() /obj/machinery/field/proc/shock(mob/living/user) - var/shock_damage = min(rand(30,40),rand(30,40)) + if(isliving(user)) + var/shock_damage = min(rand(30,40),rand(30,40)) - if(iscarbon(user)) - user.Stun(15) - user.Weaken(10) - user.electrocute_act(shock_damage, src, 1) + if(iscarbon(user)) + var/stun = min(shock_damage, 15) + user.Stun(stun) + user.Weaken(10) + user.electrocute_act(shock_damage, src, 1) - else if(issilicon(user)) - if(prob(20)) - user.Stun(2) - user.take_overall_damage(0, shock_damage) - user.visible_message("[user.name] was shocked by the [src.name]!", \ - "Energy pulse detected, system damaged!", \ - "You hear an electrical crack.") + else if(issilicon(user)) + if(prob(20)) + user.Stun(2) + user.take_overall_damage(0, shock_damage) + user.visible_message("[user.name] was shocked by the [src.name]!", \ + "Energy pulse detected, system damaged!", \ + "You hear an electrical crack.") - user.updatehealth() - bump_field(user) + user.updatehealth() + bump_field(user) + return /obj/machinery/field/proc/clear_shock() hasShocked = 0 diff --git a/code/modules/power/singularity/emitter.dm b/code/modules/power/singularity/emitter.dm index f45c41f08f..6f43f1370a 100644 --- a/code/modules/power/singularity/emitter.dm +++ b/code/modules/power/singularity/emitter.dm @@ -1,4 +1,4 @@ - +//This file was auto-corrected by findeclaration.exe on 25.5.2012 20:42:33 /obj/machinery/power/emitter name = "Emitter" @@ -126,16 +126,6 @@ user << "The [src] needs to be firmly secured to the floor first!" return 1 -/obj/machinery/power/emitter/attack_animal(mob/living/simple_animal/M) - if(ismegafauna(M)) - state = 0 - anchored = FALSE - M.visible_message("[M] rips [src] free from its moorings!") - else - ..() - if(!anchored) - step(src, get_dir(M, src)) - /obj/machinery/power/emitter/emp_act(severity)//Emitters are hardened but still might have issues // add_load(1000) @@ -215,14 +205,14 @@ if(0) if(isinspace()) return state = 1 - playsound(src.loc, W.usesound, 75, 1) + playsound(src.loc, 'sound/items/Ratchet.ogg', 75, 1) user.visible_message("[user.name] secures [src.name] to the floor.", \ "You secure the external reinforcing bolts to the floor.", \ "You hear a ratchet") src.anchored = 1 if(1) state = 0 - playsound(src.loc, W.usesound, 75, 1) + playsound(src.loc, 'sound/items/Ratchet.ogg', 75, 1) user.visible_message("[user.name] unsecures [src.name] reinforcing bolts from the floor.", \ "You undo the external reinforcing bolts.", \ "You hear a ratchet.") @@ -245,7 +235,7 @@ user.visible_message("[user.name] starts to weld the [src.name] to the floor.", \ "You start to weld \the [src] to the floor...", \ "You hear welding.") - if (do_after(user,20*W.toolspeed, target = src)) + if (do_after(user,20/W.toolspeed, target = src)) if(!src || !WT.isOn()) return state = 2 user << "You weld \the [src] to the floor." @@ -256,7 +246,7 @@ user.visible_message("[user.name] starts to cut the [src.name] free from the floor.", \ "You start to cut \the [src] free from the floor...", \ "You hear welding.") - if (do_after(user,20*W.toolspeed, target = src)) + if (do_after(user,20/W.toolspeed, target = src)) if(!src || !WT.isOn()) return state = 1 user << "You cut \the [src] free from the floor." diff --git a/code/modules/power/singularity/field_generator.dm b/code/modules/power/singularity/field_generator.dm index a71c5913af..a6d42f9bd3 100644 --- a/code/modules/power/singularity/field_generator.dm +++ b/code/modules/power/singularity/field_generator.dm @@ -1,4 +1,4 @@ - +//This file was auto-corrected by findeclaration.exe on 25.5.2012 20:42:33 /* @@ -23,17 +23,13 @@ field_generator power level display #define FG_ONLINE 2 /obj/machinery/field/generator - name = "field generator" + name = "Field Generator" desc = "A large thermal battery that projects a high amount of energy when powered." icon = 'icons/obj/machines/field_generator.dmi' icon_state = "Field_Gen" anchored = 0 density = 1 use_power = 0 - obj_integrity = 500 - max_integrity = 500 - //100% immune to lasers and energy projectiles since it absorbs their energy. - armor = list(melee = 25, bullet = 10, laser = 100, energy = 100, bomb = 0, bio = 0, rad = 0, fire = 50, acid = 70) var/const/num_power_levels = 6 // Total number of power level icon has var/power_level = 0 var/active = FG_OFFLINE @@ -91,14 +87,14 @@ field_generator power level display if(FG_UNSECURED) if(isinspace()) return state = FG_SECURED - playsound(loc, W.usesound, 75, 1) + playsound(loc, 'sound/items/Ratchet.ogg', 75, 1) user.visible_message("[user.name] secures [name] to the floor.", \ "You secure the external reinforcing bolts to the floor.", \ "You hear ratchet.") anchored = 1 if(FG_SECURED) state = FG_UNSECURED - playsound(loc, W.usesound, 75, 1) + playsound(loc, 'sound/items/Ratchet.ogg', 75, 1) user.visible_message("[user.name] unsecures [name] reinforcing bolts from the floor.", \ "You undo the external reinforcing bolts.", \ "You hear ratchet.") @@ -118,7 +114,7 @@ field_generator power level display user.visible_message("[user.name] starts to weld the [name] to the floor.", \ "You start to weld \the [src] to the floor...", \ "You hear welding.") - if (do_after(user,20*W.toolspeed, target = src)) + if (do_after(user,20/W.toolspeed, target = src)) if(!src || !WT.isOn()) return state = FG_WELDED user << "You weld the field generator to the floor." @@ -129,7 +125,7 @@ field_generator power level display user.visible_message("[user.name] starts to cut the [name] free from the floor.", \ "You start to cut \the [src] free from the floor...", \ "You hear welding.") - if (do_after(user,20*W.toolspeed, target = src)) + if (do_after(user,20/W.toolspeed, target = src)) if(!src || !WT.isOn()) return state = FG_SECURED user << "You cut \the [src] free from the floor." @@ -137,21 +133,12 @@ field_generator power level display else return ..() -/obj/machinery/field/generator/attack_animal(mob/living/simple_animal/M) - if(M.environment_smash >= 3 && active == FG_OFFLINE && state != FG_UNSECURED) - state = FG_UNSECURED - anchored = FALSE - M.visible_message("[M] rips [src] free from its moorings!") - else - ..() - if(!anchored) - step(src, get_dir(M, src)) /obj/machinery/field/generator/emp_act() return 0 -/obj/machinery/field/generator/blob_act(obj/structure/blob/B) +/obj/machinery/field/generator/blob_act(obj/effect/blob/B) if(active) return 0 else @@ -161,7 +148,7 @@ field_generator power level display if(Proj.flag != "bullet") power = min(power + Proj.damage, field_generator_max_power) check_power_level() - ..() + return 0 /obj/machinery/field/generator/Destroy() @@ -195,10 +182,8 @@ field_generator power level display start_fields() -/obj/machinery/field/generator/proc/calc_power(set_power_draw) +/obj/machinery/field/generator/proc/calc_power() var/power_draw = 2 + fields.len - if(set_power_draw) - power_draw = set_power_draw if(draw_power(round(power_draw/2,1))) check_power_level() diff --git a/code/modules/power/singularity/generator.dm b/code/modules/power/singularity/generator.dm index be271b402b..01ab3d0022 100644 --- a/code/modules/power/singularity/generator.dm +++ b/code/modules/power/singularity/generator.dm @@ -1,5 +1,5 @@ /////SINGULARITY SPAWNER -/obj/machinery/the_singularitygen +/obj/machinery/the_singularitygen/ name = "Gravitational Singularity Generator" desc = "An Odd Device which produces a Gravitational Singularity when set up." icon = 'icons/obj/singularity.dmi' @@ -7,7 +7,6 @@ anchored = 0 density = 1 use_power = 0 - resistance_flags = FIRE_PROOF var/energy = 0 var/creation_type = /obj/singularity @@ -26,13 +25,13 @@ user.visible_message("[user.name] secures [src.name] to the floor.", \ "You secure the [src.name] to the floor.", \ "You hear a ratchet.") - playsound(src.loc, W.usesound, 75, 1) + playsound(src.loc, 'sound/items/Ratchet.ogg', 75, 1) anchored = 1 else if(anchored) user.visible_message("[user.name] unsecures [src.name] from the floor.", \ "You unsecure the [src.name] from the floor.", \ "You hear a ratchet.") - playsound(src.loc, W.usesound, 75, 1) + playsound(src.loc, 'sound/items/Ratchet.ogg', 75, 1) anchored = 0 else return ..() diff --git a/code/modules/power/singularity/narsie.dm b/code/modules/power/singularity/narsie.dm index 3a19ec72b1..d57d136d73 100644 --- a/code/modules/power/singularity/narsie.dm +++ b/code/modules/power/singularity/narsie.dm @@ -25,8 +25,8 @@ /obj/singularity/narsie/large/New() ..() - send_to_playing_players("NAR-SIE HAS RISEN") - send_to_playing_players(pick('sound/hallucinations/im_here1.ogg', 'sound/hallucinations/im_here2.ogg')) + world << "NAR-SIE HAS RISEN" + world << pick('sound/hallucinations/im_here1.ogg', 'sound/hallucinations/im_here2.ogg') var/area/A = get_area(src) if(A) @@ -36,7 +36,7 @@ narsie_spawn_animation() sleep(70) - SSshuttle.emergency.request(null, 0.1) // Cannot recall + SSshuttle.emergency.request(null, 0.3) // Cannot recall /obj/singularity/narsie/large/attack_ghost(mob/dead/observer/user as mob) @@ -50,7 +50,7 @@ eat() if(!target || prob(5)) pickcultist() - if(istype(target, /obj/structure/destructible/clockwork/massive/ratvar)) + if(istype(target, /obj/structure/clockwork/massive/ratvar)) move(get_dir(src, target)) //Oh, it's you again. else move() @@ -86,7 +86,7 @@ /obj/singularity/narsie/proc/pickcultist() //Narsie rewards her cultists with being devoured first, then picks a ghost to follow. var/list/cultists = list() var/list/noncultists = list() - for(var/obj/structure/destructible/clockwork/massive/ratvar/enemy in poi_list) //Prioritize killing Ratvar + for(var/obj/structure/clockwork/massive/ratvar/enemy in poi_list) //Prioritize killing Ratvar if(enemy.z != z) continue acquire(enemy) diff --git a/code/modules/power/singularity/particle_accelerator/particle.dm b/code/modules/power/singularity/particle_accelerator/particle.dm index 7fc95659aa..66fe421b10 100644 --- a/code/modules/power/singularity/particle_accelerator/particle.dm +++ b/code/modules/power/singularity/particle_accelerator/particle.dm @@ -4,10 +4,9 @@ icon = 'icons/obj/machines/particle_accelerator.dmi' icon_state = "particle" anchored = 1 - density = 0 + density = 1 var/movement_range = 10 var/energy = 10 - var/speed = 1 /obj/effect/accelerated_particle/weak movement_range = 8 @@ -22,27 +21,24 @@ energy = 50 -/obj/effect/accelerated_particle/New(loc) - ..() +/obj/effect/accelerated_particle/New(loc, dir = 2) + src.setDir(dir) - addtimer(src, "move", 1) + spawn(0) + move(1) /obj/effect/accelerated_particle/Bump(atom/A) - if(A) - if(isliving(A)) + if (A) + if(ismob(A)) toxmob(A) - else if(istype(A, /obj/machinery/the_singularitygen)) - var/obj/machinery/the_singularitygen/S = A - S.energy += energy - else if(istype(A, /obj/singularity)) - var/obj/singularity/S = A - S.energy += energy + if((istype(A,/obj/machinery/the_singularitygen))||(istype(A,/obj/singularity/))) + A:energy += energy -/obj/effect/accelerated_particle/Crossed(atom/A) - if(isliving(A)) - toxmob(A) +/obj/effect/accelerated_particle/Bumped(atom/A) + if(ismob(A)) + Bump(A) /obj/effect/accelerated_particle/ex_act(severity, target) @@ -50,13 +46,15 @@ /obj/effect/accelerated_particle/proc/toxmob(mob/living/M) M.rad_act(energy*6) + M.updatehealth() -/obj/effect/accelerated_particle/proc/move() + +/obj/effect/accelerated_particle/proc/move(lag) if(!step(src,dir)) - forceMove(get_step(src,dir)) + loc = get_step(src,dir) movement_range-- if(movement_range == 0) qdel(src) else - sleep(speed) - move() + sleep(lag) + move(lag) diff --git a/code/modules/power/singularity/particle_accelerator/particle_accelerator.dm b/code/modules/power/singularity/particle_accelerator/particle_accelerator.dm index 3999ced938..977b19f98c 100644 --- a/code/modules/power/singularity/particle_accelerator/particle_accelerator.dm +++ b/code/modules/power/singularity/particle_accelerator/particle_accelerator.dm @@ -26,10 +26,6 @@ icon_state = "none" anchored = 0 density = 1 - obj_integrity = 500 - max_integrity = 500 - armor = list(melee = 30, bullet = 20, laser = 20, energy = 0, bomb = 0, bio = 0, rad = 0, fire = 90, acid = 80) - var/obj/machinery/particle_accelerator/control_box/master = null var/construction_state = PA_CONSTRUCTION_UNSECURED var/reference = null @@ -99,7 +95,7 @@ switch(construction_state) if(PA_CONSTRUCTION_UNSECURED) if(istype(W, /obj/item/weapon/wrench) && !isinspace()) - playsound(loc, W.usesound, 75, 1) + playsound(loc, 'sound/items/Ratchet.ogg', 75, 1) anchored = 1 user.visible_message("[user.name] secures the [name] to the floor.", \ "You secure the external bolts.") @@ -107,7 +103,7 @@ did_something = TRUE if(PA_CONSTRUCTION_UNWIRED) if(istype(W, /obj/item/weapon/wrench)) - playsound(loc, W.usesound, 75, 1) + playsound(loc, 'sound/items/Ratchet.ogg', 75, 1) anchored = 0 user.visible_message("[user.name] detaches the [name] from the floor.", \ "You remove the external bolts.") @@ -147,17 +143,16 @@ return ..() -/obj/structure/particle_accelerator/deconstruct(disassembled = TRUE) - if(!(flags & NODECONSTRUCT)) - new /obj/item/stack/sheet/metal (loc, 5) - qdel(src) - /obj/structure/particle_accelerator/Move() ..() if(master && master.active) master.toggle_power() investigate_log("was moved whilst active; it powered down.","singulo") +/obj/structure/particle_accelerator/blob_act(obj/effect/blob/B) + if(prob(50)) + qdel(src) + /obj/structure/particle_accelerator/update_icon() switch(construction_state) @@ -170,6 +165,7 @@ icon_state="[reference]p[strength]" else icon_state="[reference]c" + return /obj/structure/particle_accelerator/proc/update_state() if(master) diff --git a/code/modules/power/singularity/particle_accelerator/particle_control.dm b/code/modules/power/singularity/particle_accelerator/particle_control.dm index 67db06193f..2e2b5001ea 100644 --- a/code/modules/power/singularity/particle_accelerator/particle_control.dm +++ b/code/modules/power/singularity/particle_accelerator/particle_control.dm @@ -1,3 +1,5 @@ + + /obj/machinery/particle_accelerator/control_box name = "Particle Accelerator Control Console" desc = "This controls the density of the particles." @@ -159,7 +161,6 @@ var/turf/T = loc assembled = 0 - critical_machine = FALSE var/obj/structure/particle_accelerator/fuel_chamber/F = locate() in orange(1,src) if(!F) @@ -190,7 +191,6 @@ return 0 assembled = 1 - critical_machine = TRUE //Only counts if the PA is actually assembled. return 1 /obj/machinery/particle_accelerator/control_box/proc/check_part(turf/T, type) @@ -204,7 +204,7 @@ /obj/machinery/particle_accelerator/control_box/proc/toggle_power() active = !active - investigate_log("turned [active?"ON":"OFF"] by [usr ? key_name(usr) : "outside forces"]","singulo") + investigate_log("turned [active?"ON":"OFF"] by [usr ? key_name(usr) : "outside forces"]","singulo") message_admins("PA Control Computer turned [active ?"ON":"OFF"] by [usr ? key_name_admin(usr) : "outside forces"](?) (FLW) in ([x],[y],[z] - JMP)",0,1) log_game("PA Control Computer turned [active ?"ON":"OFF"] by [usr ? "[key_name(usr)]" : "outside forces"] in ([x],[y],[z])") if(active) @@ -226,7 +226,7 @@ /obj/machinery/particle_accelerator/control_box/interact(mob/user) if((get_dist(src, user) > 1) || (stat & (BROKEN|NOPOWER))) - if(!issilicon(user)) + if(!istype(user, /mob/living/silicon)) user.unset_machine() user << browse(null, "window=pacontrol") return @@ -249,6 +249,8 @@ dat += "Particle Strength: [strength] " dat += "--|++

    " + //user << browse(dat, "window=pacontrol;size=420x500") + //onclose(user, "pacontrol") var/datum/browser/popup = new(user, "pacontrol", name, 420, 300) popup.set_content(dat) popup.set_title_image(user.browse_rsc_icon(icon, icon_state)) @@ -271,7 +273,7 @@ switch(construction_state) if(PA_CONSTRUCTION_UNSECURED) if(istype(W, /obj/item/weapon/wrench) && !isinspace()) - playsound(loc, W.usesound, 75, 1) + playsound(loc, 'sound/items/Ratchet.ogg', 75, 1) anchored = 1 user.visible_message("[user.name] secures the [name] to the floor.", \ "You secure the external bolts.") @@ -279,7 +281,7 @@ did_something = TRUE if(PA_CONSTRUCTION_UNWIRED) if(istype(W, /obj/item/weapon/wrench)) - playsound(loc, W.usesound, 75, 1) + playsound(loc, 'sound/items/Ratchet.ogg', 75, 1) anchored = 0 user.visible_message("[user.name] detaches the [name] from the floor.", \ "You remove the external bolts.") @@ -318,7 +320,7 @@ ..() -/obj/machinery/particle_accelerator/control_box/blob_act(obj/structure/blob/B) +/obj/machinery/particle_accelerator/control_box/blob_act(obj/effect/blob/B) if(prob(50)) qdel(src) diff --git a/code/modules/power/singularity/particle_accelerator/particle_emitter.dm b/code/modules/power/singularity/particle_accelerator/particle_emitter.dm index f9edf59368..8c0f3bfcaa 100644 --- a/code/modules/power/singularity/particle_accelerator/particle_emitter.dm +++ b/code/modules/power/singularity/particle_accelerator/particle_emitter.dm @@ -27,17 +27,15 @@ /obj/structure/particle_accelerator/particle_emitter/proc/emit_particle(strength = 0) if((last_shot + fire_delay) <= world.time) last_shot = world.time - var/turf/T = get_turf(src) - var/obj/effect/accelerated_particle/P + var/turf/T = get_step(src,dir) switch(strength) if(0) - P = new/obj/effect/accelerated_particle/weak(T) + new/obj/effect/accelerated_particle/weak(T, dir) if(1) - P = new/obj/effect/accelerated_particle(T) + new/obj/effect/accelerated_particle(T, dir) if(2) - P = new/obj/effect/accelerated_particle/strong(T) + new/obj/effect/accelerated_particle/strong(T, dir) if(3) - P = new/obj/effect/accelerated_particle/powerful(T) - P.setDir(dir) + new/obj/effect/accelerated_particle/powerful(T, dir) return 1 return 0 diff --git a/code/modules/power/singularity/singularity.dm b/code/modules/power/singularity/singularity.dm index 29ce8dc79d..f89e265699 100644 --- a/code/modules/power/singularity/singularity.dm +++ b/code/modules/power/singularity/singularity.dm @@ -1,4 +1,4 @@ - +//This file was auto-corrected by findeclaration.exe on 25.5.2012 20:42:33 /obj/singularity name = "gravitational singularity" @@ -9,7 +9,7 @@ density = 1 layer = MASSIVE_OBJ_LAYER luminosity = 6 - appearance_flags = 0 + unacidable = 1 //Don't comment this out. var/current_size = 1 var/allowed_size = 1 var/contained = 1 //Are we going to move around? @@ -26,7 +26,7 @@ var/last_failed_movement = 0//Will not move in the same dir if it couldnt before, will help with the getting stuck on fields thing var/last_warning var/consumedSupermatter = 0 //If the singularity has eaten a supermatter shard and can go to stage six - resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | UNACIDABLE | ACID_PROOF + burn_state = LAVA_PROOF /obj/singularity/New(loc, var/starting_energy = 50, var/temp = 0) //CARN: admin-alert for chuckle-fuckery. @@ -60,23 +60,10 @@ consume(user) return 1 -/obj/singularity/attack_paw(mob/user) - consume(user) - -/obj/singularity/attack_alien(mob/user) - consume(user) - -/obj/singularity/attack_animal(mob/user) - consume(user) - -/obj/singularity/attackby(obj/item/weapon/W, mob/user, params) - consume(user) - return 1 - /obj/singularity/Process_Spacemove() //The singularity stops drifting for no man! return 0 -/obj/singularity/blob_act(obj/structure/blob/B) +/obj/singularity/blob_act(obj/effect/blob/B) return /obj/singularity/ex_act(severity, target) @@ -250,7 +237,7 @@ /obj/singularity/proc/eat() set background = BACKGROUND_ENABLED - for(var/tile in spiral_range_turfs(grav_pull, src)) + for(var/tile in spiral_range_turfs(grav_pull, src, 1)) var/turf/T = tile if(!T || !isturf(loc)) continue @@ -259,7 +246,7 @@ else consume(T) for(var/thing in T) - if(isturf(loc) && thing != src) + if(isturf(loc)) var/atom/movable/X = thing if(get_dist(X, src) > consume_range) X.singularity_pull(src, current_size) @@ -404,11 +391,11 @@ /obj/singularity/proc/mezzer() for(var/mob/living/carbon/M in oviewers(8, src)) - if(istype(M, /mob/living/brain)) //Ignore brains + if(istype(M, /mob/living/carbon/brain)) //Ignore brains continue if(M.stat == CONSCIOUS) - if (ishuman(M)) + if (istype(M,/mob/living/carbon/human)) var/mob/living/carbon/human/H = M if(istype(H.glasses, /obj/item/clothing/glasses/meson)) var/obj/item/clothing/glasses/meson/MS = H.glasses @@ -428,9 +415,11 @@ /obj/singularity/proc/pulse() + for(var/obj/machinery/power/rad_collector/R in rad_collectors) - if(R.z == z && get_dist(R, src) <= 15) // Better than using orange() every process + if(get_dist(R, src) <= 15) // Better than using orange() every process R.receive_pulse(energy) + return /obj/singularity/singularity_act() var/gain = (energy/2) diff --git a/code/modules/power/smes.dm b/code/modules/power/smes.dm index 56cb45b755..2fa1e2e1c6 100644 --- a/code/modules/power/smes.dm +++ b/code/modules/power/smes.dm @@ -135,18 +135,16 @@ var/obj/item/stack/cable_coil/C = I - if(C.get_amount() < 10) + if(C.amount < 10) user << "You need more wires!" return user << "You start building the power terminal..." playsound(src.loc, 'sound/items/Deconstruct.ogg', 50, 1) - if(do_after(user, 20, target = src) && C.get_amount() >= 10) - if(C.get_amount() < 10 || !C) - return + if(do_after(user, 20, target = src) && C.amount >= 10) var/obj/structure/cable/N = T.get_cable_node() //get the connecting node cable, if there's one - if (prob(50) && electrocute_mob(usr, N, N, 1, TRUE)) //animate the electrocution if uncautious and unlucky + if (prob(50) && electrocute_mob(usr, N, N)) //animate the electrocution if uncautious and unlucky var/datum/effect_system/spark_spread/s = new /datum/effect_system/spark_spread s.set_up(5, 1, src) s.start() @@ -164,7 +162,7 @@ //disassembling the terminal if(istype(I, /obj/item/weapon/wirecutters) && terminal && panel_open) - terminal.dismantle(user, I) + terminal.dismantle(user) return //crowbarring it ! @@ -177,7 +175,7 @@ return ..() -/obj/machinery/power/smes/on_deconstruction() +/obj/machinery/power/smes/deconstruction() for(var/obj/item/weapon/stock_parts/cell/cell in component_parts) cell.charge = (charge / capacity) * cell.maxcharge diff --git a/code/modules/power/solar.dm b/code/modules/power/solar.dm index 068ec6bbe6..4d37bedcee 100644 --- a/code/modules/power/solar.dm +++ b/code/modules/power/solar.dm @@ -12,9 +12,7 @@ idle_power_usage = 0 active_power_usage = 0 var/id = 0 - obj_integrity = 150 - max_integrity = 150 - integrity_failure = 50 + var/health = 20 var/obscured = 0 var/sunfrac = 0 var/adir = SOUTH // actual dir @@ -52,52 +50,62 @@ S.anchored = 1 S.loc = src if(S.glass_type == /obj/item/stack/sheet/rglass) //if the panel is in reinforced glass - max_integrity *= 2 //this need to be placed here, because panels already on the map don't have an assembly linked to - obj_integrity = max_integrity + health *= 2 //this need to be placed here, because panels already on the map don't have an assembly linked to update_icon() /obj/machinery/power/solar/attackby(obj/item/weapon/W, mob/user, params) if(istype(W, /obj/item/weapon/crowbar)) playsound(src.loc, 'sound/machines/click.ogg', 50, 1) user.visible_message("[user] begins to take the glass off the solar panel.", "You begin to take the glass off the solar panel...") - if(do_after(user, 50*W.toolspeed, target = src)) + if(do_after(user, 50/W.toolspeed, target = src)) + var/obj/item/solar_assembly/S = locate() in src + if(S) + S.loc = src.loc + S.give_glass(stat & BROKEN) + playsound(src.loc, 'sound/items/Deconstruct.ogg', 50, 1) user.visible_message("[user] takes the glass off the solar panel.", "You take the glass off the solar panel.") - deconstruct(TRUE) + qdel(src) else return ..() -/obj/machinery/power/solar/play_attack_sound(damage_amount, damage_type = BRUTE, damage_flag = 0) +/obj/machinery/power/solar/bullet_act(obj/item/projectile/P) + . = ..() + take_damage(P.damage, P.damage_type) + +/obj/machinery/power/solar/hitby(AM as mob|obj) + ..() + var/tforce = 0 + if(ismob(AM)) + tforce = 20 + else if(isobj(AM)) + var/obj/item/I = AM + tforce = I.throwforce + take_damage(tforce) + +/obj/machinery/power/solar/take_damage(damage, damage_type = BRUTE, sound_effect = 1) switch(damage_type) if(BRUTE) - if(stat & BROKEN) - playsound(loc, 'sound/effects/hit_on_shattered_glass.ogg', 60, 1) - else - playsound(loc, 'sound/effects/Glasshit.ogg', 90, 1) + if(sound_effect) + if(stat & BROKEN) + playsound(loc, 'sound/effects/hit_on_shattered_glass.ogg', 60, 1) + else + playsound(loc, 'sound/effects/Glasshit.ogg', 90, 1) if(BURN) - playsound(loc, 'sound/items/Welder.ogg', 100, 1) - - -/obj/machinery/power/solar/obj_break(damage_flag) - if(!(stat & BROKEN) && !(flags & NODECONSTRUCT)) - playsound(loc, 'sound/effects/Glassbr3.ogg', 100, 1) - stat |= BROKEN - unset_control() - update_icon() - -/obj/machinery/power/solar/deconstruct(disassembled = TRUE) - if(!(flags & NODECONSTRUCT)) - if(disassembled) - var/obj/item/solar_assembly/S = locate() in src - if(S) - S.forceMove(loc) - S.give_glass(stat & BROKEN) + if(sound_effect) + playsound(loc, 'sound/items/Welder.ogg', 100, 1) else - playsound(src, "shatter", 70, 1) - new /obj/item/weapon/shard(src.loc) - new /obj/item/weapon/shard(src.loc) - qdel(src) - + return + health -= damage + if(health <= 0) + playsound(src, "shatter", 70, 1) + new /obj/item/weapon/shard(src.loc) + new /obj/item/weapon/shard(src.loc) + qdel(src) + else if(health <= 10) + if(!(stat & BROKEN)) + playsound(loc, 'sound/effects/Glassbr3.ogg', 100, 1) + set_broken() /obj/machinery/power/solar/update_icon() ..() @@ -107,6 +115,7 @@ else add_overlay(image('icons/obj/power.dmi', icon_state = "solar_panel", layer = FLY_LAYER)) src.setDir(angle2dir(adir)) + return //calculates the fraction of the sunlight that the panel recieves /obj/machinery/power/solar/proc/update_solar_exposure() @@ -140,6 +149,21 @@ else //if we're no longer on the same powernet, remove from control computer unset_control() +/obj/machinery/power/solar/proc/set_broken() + . = (!(stat & BROKEN)) + stat |= BROKEN + unset_control() + update_icon() + + +/obj/machinery/power/solar/ex_act(severity, target) + ..() + if(!qdeleted(src)) + switch(severity) + if(2) + take_damage(rand(10,20), BRUTE, 0) + if(3) + take_damage(rand(5,15), BRUTE, 0) /obj/machinery/power/solar/fake/New(var/turf/loc, var/obj/item/solar_assembly/S) ..(loc, S, 0) @@ -184,7 +208,7 @@ icon = 'icons/obj/power.dmi' icon_state = "sp_base" item_state = "electropack" - w_class = WEIGHT_CLASS_BULKY // Pretty big! + w_class = 4 // Pretty big! anchored = 0 var/tracker = 0 var/glass_type = null @@ -265,9 +289,7 @@ density = 1 use_power = 1 idle_power_usage = 250 - obj_integrity = 200 - max_integrity = 200 - integrity_failure = 100 + var/health = 25 var/icon_screen = "solar" var/icon_keyboard = "power_key" var/id = 0 @@ -277,9 +299,13 @@ var/lastgen = 0 var/track = 0 // 0= off 1=timed 2=auto (tracker) var/trackrate = 600 // 300-900 seconds - var/nexttime = 0 // time for a panel to rotate of 1 degree in manual tracking + var/nexttime = 0 // time for a panel to rotate of 1� in manual tracking var/obj/machinery/power/tracker/connected_tracker = null var/list/connected_panels = list() + use_auto_lights = 1 + light_power_on = 1 + light_range_on = 3 + light_color = LIGHT_COLOR_ORANGE /obj/machinery/power/solar_control/New() @@ -417,7 +443,7 @@ /obj/machinery/power/solar_control/attackby(obj/item/I, mob/user, params) if(istype(I, /obj/item/weapon/screwdriver)) playsound(src.loc, I.usesound, 50, 1) - if(do_after(user, 20*I.toolspeed, target = src)) + if(do_after(user, 20/I.toolspeed, target = src)) if (src.stat & BROKEN) user << "The broken glass falls out." var/obj/structure/frame/computer/A = new /obj/structure/frame/computer( src.loc ) @@ -441,23 +467,30 @@ A.icon_state = "4" A.anchored = 1 qdel(src) - else if(user.a_intent != INTENT_HARM && !(I.flags & NOBLUDGEON)) + else if(user.a_intent != "harm" && !(I.flags & NOBLUDGEON)) src.attack_hand(user) else return ..() -/obj/machinery/power/solar_control/play_attack_sound(damage_amount, damage_type = BRUTE, damage_flag = 0) +/obj/machinery/power/solar_control/bullet_act(obj/item/projectile/P) + . = ..() + take_damage(P.damage, P.damage_type) + +/obj/machinery/power/solar_control/take_damage(damage, damage_type = BRUTE, sound_effect = 1) switch(damage_type) if(BRUTE) - if(stat & BROKEN) - playsound(src.loc, 'sound/effects/hit_on_shattered_glass.ogg', 70, 1) - else - playsound(src.loc, 'sound/effects/Glasshit.ogg', 75, 1) + if(sound_effect) + if(stat & BROKEN) + playsound(src.loc, 'sound/effects/hit_on_shattered_glass.ogg', 70, 1) + else + playsound(src.loc, 'sound/effects/Glasshit.ogg', 75, 1) if(BURN) - playsound(src.loc, 'sound/items/Welder.ogg', 100, 1) - -/obj/machinery/power/solar_control/obj_break(damage_flag) - if(!(stat & BROKEN) && !(flags & NODECONSTRUCT)) + if(sound_effect) + playsound(src.loc, 'sound/items/Welder.ogg', 100, 1) + else + return + health -= damage + if(health <= 0 && !(stat & BROKEN)) playsound(loc, 'sound/effects/Glassbr3.ogg', 100, 1) stat |= BROKEN update_icon() @@ -494,6 +527,24 @@ update_icon() +/obj/machinery/power/solar_control/proc/set_broken() + stat |= BROKEN + update_icon() + + +/obj/machinery/power/solar_control/ex_act(severity, target) + ..() + if(!qdeleted(src)) + switch(severity) + if(2) + take_damage(rand(20,30), BRUTE, 0) + if(3) + take_damage(rand(10,20), BRUTE, 0) + +/obj/machinery/power/solar_control/blob_act(obj/effect/blob/B) + if (prob(75)) + set_broken() + src.density = 0 // diff --git a/code/modules/power/supermatter/supermatter.dm b/code/modules/power/supermatter/supermatter.dm index fe925c1fed..0d7d551921 100644 --- a/code/modules/power/supermatter/supermatter.dm +++ b/code/modules/power/supermatter/supermatter.dm @@ -24,7 +24,7 @@ density = 1 anchored = 0 luminosity = 4 - resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | UNACIDABLE | ACID_PROOF + var/gasefficency = 0.125 @@ -76,9 +76,7 @@ /obj/machinery/power/supermatter_shard/Destroy() investigate_log("has been destroyed.", "supermatter") - if(radio) - qdel(radio) - radio = null + qdel(radio) poi_list -= src . = ..() @@ -88,15 +86,15 @@ qdel(src) /obj/machinery/power/supermatter_shard/process() - var/turf/T = loc + var/turf/L = loc - if(isnull(T)) // We have a null turf...something is wrong, stop processing this entity. + if(isnull(L)) // We have a null turf...something is wrong, stop processing this entity. return PROCESS_KILL - if(!istype(T)) //We are in a crate or somewhere that isn't turf, if we return to turf resume processing but for now. + if(!istype(L)) //We are in a crate or somewhere that isn't turf, if we return to turf resume processing but for now. return //Yeah just stop. - if(isspaceturf(T)) // Stop processing this stuff if we've been ejected. + if(istype(L, /turf/open/space)) // Stop processing this stuff if we've been ejected. return if(damage > warning_point) // while the core is still damaged and it's still worth noting its status @@ -120,20 +118,18 @@ lastwarning = world.timeofday if(damage > explosion_point) - for(var/mob in living_mob_list) - var/mob/living/L = mob - if(istype(L) && L.z == z) - if(ishuman(mob)) - //Hilariously enough, running into a closet should make you get hit the hardest. - var/mob/living/carbon/human/H = mob - H.hallucination += max(50, min(300, DETONATION_HALLUCINATION * sqrt(1 / (get_dist(mob, src) + 1)) ) ) - var/rads = DETONATION_RADS * sqrt( 1 / (get_dist(L, src) + 1) ) - L.rad_act(rads) + for(var/mob/living/mob in living_mob_list) + if(istype(mob, /mob/living/carbon/human)) + //Hilariously enough, running into a closet should make you get hit the hardest. + var/mob/living/carbon/human/H = mob + H.hallucination += max(50, min(300, DETONATION_HALLUCINATION * sqrt(1 / (get_dist(mob, src) + 1)) ) ) + var/rads = DETONATION_RADS * sqrt( 1 / (get_dist(mob, src) + 1) ) + mob.rad_act(rads) explode() //Ok, get the air from the turf - var/datum/gas_mixture/env = T.return_air() + var/datum/gas_mixture/env = L.return_air() var/datum/gas_mixture/removed @@ -238,20 +234,19 @@ message_admins("Singularity has consumed a supermatter shard and can now become stage six.") visible_message("[src] is consumed by the singularity!") for(var/mob/M in mob_list) - if(M.z == z) - M << 'sound/effects/supermatter.ogg' //everyone goan know bout this - M << "A horrible screeching fills your ears, and a wave of dread washes over you..." + M << 'sound/effects/supermatter.ogg' //everyone goan know bout this + M << "A horrible screeching fills your ears, and a wave of dread washes over you..." qdel(src) return(gain) -/obj/machinery/power/supermatter_shard/blob_act(obj/structure/blob/B) - if(B && !isspaceturf(loc)) //does nothing in space +/obj/machinery/power/supermatter_shard/blob_act(obj/effect/blob/B) + if(B && !istype(loc, /turf/open/space)) //does nothing in space playsound(get_turf(src), 'sound/effects/supermatter.ogg', 50, 1) - damage += B.obj_integrity * 0.5 //take damage equal to 50% of remaining blob health before it tried to eat us - if(B.obj_integrity > 100) + damage += B.health * 0.5 //take damage equal to 50% of remaining blob health before it tried to eat us + if(B.health > 100) B.visible_message("\The [B] strikes at \the [src] and flinches away!",\ "You hear a loud crack as you are washed with a wave of heat.") - B.take_damage(100, BURN) + B.take_damage(100, BURN, src) else B.visible_message("\The [B] strikes at \the [src] and rapidly flashes to ash.",\ "You hear a loud crack as you are washed with a wave of heat.") @@ -273,7 +268,7 @@ /obj/machinery/power/supermatter_shard/attack_hand(mob/living/user) if(!istype(user)) return - user.visible_message("\The [user] reaches out and touches \the [src], inducing a resonance... [user.p_their()] body starts to glow and bursts into flames before flashing into ash.",\ + user.visible_message("\The [user] reaches out and touches \the [src], inducing a resonance... \his body starts to glow and bursts into flames before flashing into ash.",\ "You reach out and touch \the [src]. Everything starts burning and all you can hear is ringing. Your last thought is \"That was not a wise decision.\"",\ "You hear an unearthly noise as a wave of heat washes over you.") @@ -283,7 +278,7 @@ /obj/machinery/power/supermatter_shard/proc/transfer_energy() for(var/obj/machinery/power/rad_collector/R in rad_collectors) - if(R.z == z && get_dist(R, src) <= 15) //Better than using orange() every process + if(get_dist(R, src) <= 15) // Better than using orange() every process R.receive_pulse(power/10) /obj/machinery/power/supermatter_shard/attackby(obj/item/W, mob/living/user, params) @@ -300,13 +295,13 @@ radiation_pulse(get_turf(src), 1, 1, 150, 1) -/obj/machinery/power/supermatter_shard/Bumped(atom/AM) - if(isliving(AM)) - AM.visible_message("\The [AM] slams into \the [src] inducing a resonance... [AM.p_their()] body starts to glow and catch flame before flashing into ash.",\ +/obj/machinery/power/supermatter_shard/Bumped(atom/AM as mob|obj) + if(istype(AM, /mob/living)) + AM.visible_message("\The [AM] slams into \the [src] inducing a resonance... \his body starts to glow and catch flame before flashing into ash.",\ "You slam into \the [src] as your ears are filled with unearthly ringing. Your last thought is \"Oh, fuck.\"",\ "You hear an unearthly noise as a wave of heat washes over you.") else if(isobj(AM) && !istype(AM, /obj/effect)) - AM.visible_message("\The [AM] smacks into \the [src] and rapidly flashes to ash.", null,\ + AM.visible_message("\The [AM] smacks into \the [src] and rapidly flashes to ash.",\ "You hear a loud crack as you are washed with a wave of heat.") else return @@ -317,13 +312,13 @@ /obj/machinery/power/supermatter_shard/proc/Consume(atom/movable/AM) - if(isliving(AM)) + if(istype(AM, /mob/living)) var/mob/living/user = AM message_admins("[src] has consumed [key_name_admin(user)]? (FLW) (JMP).") investigate_log("has consumed [key_name(user)].", "supermatter") user.dust() power += 200 - else if(isobj(AM) && !istype(AM, /obj/effect)) + else if(isobj(AM) && (!istype(AM, /obj/effect) || istype(AM, /obj/effect/blob))) investigate_log("has consumed [AM].", "supermatter") qdel(AM) diff --git a/code/modules/power/terminal.dm b/code/modules/power/terminal.dm index 34636caff0..f3fcb43585 100644 --- a/code/modules/power/terminal.dm +++ b/code/modules/power/terminal.dm @@ -38,7 +38,7 @@ /obj/machinery/power/apc/can_terminal_dismantle() . = 0 - if(opened) + if(opened && has_electronics != 2) . = 1 /obj/machinery/power/smes/can_terminal_dismantle() @@ -47,8 +47,8 @@ . = 1 -/obj/machinery/power/terminal/proc/dismantle(mob/living/user, obj/item/W) - if(isturf(loc)) +/obj/machinery/power/terminal/proc/dismantle(mob/living/user) + if(istype(loc, /turf)) var/turf/T = loc if(T.intact) user << "You must first expose the power terminal!" @@ -59,9 +59,9 @@ "You begin to cut the cables...") playsound(src.loc, 'sound/items/Deconstruct.ogg', 50, 1) - if(do_after(user, 50*W.toolspeed, target = src)) + if(do_after(user, 50, target = src)) if(master && master.can_terminal_dismantle()) - if(prob(50) && electrocute_mob(user, powernet, src, 1, TRUE)) + if(prob(50) && electrocute_mob(user, powernet, src)) var/datum/effect_system/spark_spread/s = new /datum/effect_system/spark_spread s.set_up(5, 1, master) s.start() @@ -73,6 +73,6 @@ /obj/machinery/power/terminal/attackby(obj/item/W, mob/living/user, params) if(istype(W, /obj/item/weapon/wirecutters)) - dismantle(user, W) + dismantle(user) else return ..() diff --git a/code/modules/power/tesla/coil.dm b/code/modules/power/tesla/coil.dm index dc7717c370..3ee76344e4 100644 --- a/code/modules/power/tesla/coil.dm +++ b/code/modules/power/tesla/coil.dm @@ -49,9 +49,7 @@ /obj/machinery/power/tesla_coil/tesla_act(var/power) being_shocked = 1 - //don't lose arc power when it's not connected to anything - //please place tesla coils all around the station to maximize effectiveness - var/power_produced = powernet ? power / power_loss : power + var/power_produced = power / power_loss add_avail(power_produced*input_power_multiplier) flick("coilhit", src) playsound(src.loc, 'sound/magic/LightningShock.ogg', 100, 1, extrarange = 5) diff --git a/code/modules/power/tesla/energy_ball.dm b/code/modules/power/tesla/energy_ball.dm index 5586ab5943..670aa1276a 100644 --- a/code/modules/power/tesla/energy_ball.dm +++ b/code/modules/power/tesla/energy_ball.dm @@ -15,8 +15,7 @@ var/list/blacklisted_tesla_types = typecacheof(list(/obj/machinery/atmospherics, /obj/machinery/field/containment, /obj/structure/disposalpipe, /obj/structure/sign, - /obj/machinery/gateway, - /obj/structure/lattice)) + /obj/machinery/gateway)) /obj/singularity/energy_ball name = "energy ball" @@ -39,19 +38,17 @@ var/list/blacklisted_tesla_types = typecacheof(list(/obj/machinery/atmospherics, var/energy_to_raise = 32 var/energy_to_lower = -20 -/obj/singularity/energy_ball/ex_act(severity, target) - return - /obj/singularity/energy_ball/Destroy() - if(orbiting && istype(orbiting.orbiting, /obj/singularity/energy_ball)) - var/obj/singularity/energy_ball/EB = orbiting.orbiting + if(orbiting && istype(orbiting, /obj/singularity/energy_ball)) + var/obj/singularity/energy_ball/EB = orbiting EB.orbiting_balls -= src + orbiting = null for(var/ball in orbiting_balls) var/obj/singularity/energy_ball/EB = ball qdel(EB) - . = ..() + return ..() /obj/singularity/energy_ball/process() if(!orbiting) @@ -64,16 +61,18 @@ var/list/blacklisted_tesla_types = typecacheof(list(/obj/machinery/atmospherics, pixel_x = 0 pixel_y = 0 - setDir(tesla_zap(src, 7, TESLA_DEFAULT_POWER, TRUE)) + setDir(tesla_zap(src, 7, TESLA_DEFAULT_POWER)) pixel_x = -32 pixel_y = -32 for (var/ball in orbiting_balls) var/range = rand(1, Clamp(orbiting_balls.len, 3, 7)) - tesla_zap(ball, range, TESLA_MINI_POWER/7*range, TRUE) + tesla_zap(ball, range, TESLA_MINI_POWER/7*range) else energy = 0 // ensure we dont have miniballs of miniballs + return + /obj/singularity/energy_ball/examine(mob/user) ..() if(orbiting_balls.len) @@ -90,17 +89,28 @@ var/list/blacklisted_tesla_types = typecacheof(list(/obj/machinery/atmospherics, var/turf/T = get_step(src, move_dir) if(can_move(T)) loc = T - for(var/mob/living/carbon/C in loc) - dust_mobs(C) /obj/singularity/energy_ball/proc/handle_energy() + if(energy >= energy_to_raise) energy_to_lower = energy_to_raise - 20 energy_to_raise = energy_to_raise * 1.25 playsound(src.loc, 'sound/magic/lightning_chargeup.ogg', 100, 1, extrarange = 30) - addtimer(src, "new_mini_ball", 100) + spawn(100) + if (!loc) + return + var/obj/singularity/energy_ball/EB = new(loc) + + EB.transform *= pick(0.3, 0.4, 0.5, 0.6, 0.7) + var/icon/I = icon(icon,icon_state,dir) + + var/orbitsize = (I.Width() + I.Height()) * pick(0.4, 0.5, 0.6, 0.7, 0.8) + orbitsize -= (orbitsize / world.icon_size) * (world.icon_size * 0.25) + + EB.orbit(src, orbitsize, pick(FALSE, TRUE), rand(10, 25), pick(3, 4, 5, 6, 36)) + else if(energy < energy_to_lower && orbiting_balls.len) energy_to_raise = energy_to_raise / 1.25 @@ -112,20 +122,6 @@ var/list/blacklisted_tesla_types = typecacheof(list(/obj/machinery/atmospherics, else if(orbiting_balls.len) dissipate() //sing code has a much better system. -/obj/singularity/energy_ball/proc/new_mini_ball() - if(!loc) - return - var/obj/singularity/energy_ball/EB = new(loc) - - EB.transform *= pick(0.3, 0.4, 0.5, 0.6, 0.7) - var/icon/I = icon(icon,icon_state,dir) - - var/orbitsize = (I.Width() + I.Height()) * pick(0.4, 0.5, 0.6, 0.7, 0.8) - orbitsize -= (orbitsize / world.icon_size) * (world.icon_size * 0.25) - - EB.orbit(src, orbitsize, pick(FALSE, TRUE), rand(10, 25), pick(3, 4, 5, 6, 36)) - - /obj/singularity/energy_ball/Bump(atom/A) dust_mobs(A) @@ -139,22 +135,20 @@ var/list/blacklisted_tesla_types = typecacheof(list(/obj/machinery/atmospherics, target.dissipate_strength = target.orbiting_balls.len . = ..() -/obj/singularity/energy_ball/stop_orbit() - if (orbiting && istype(orbiting.orbiting, /obj/singularity/energy_ball)) - var/obj/singularity/energy_ball/orbitingball = orbiting.orbiting - orbitingball.orbiting_balls -= src - orbitingball.dissipate_strength = orbitingball.orbiting_balls.len - ..() + + if (istype(target)) + target.orbiting_balls -= src + target.dissipate_strength = target.orbiting_balls.len if (!loc) qdel(src) - /obj/singularity/energy_ball/proc/dust_mobs(atom/A) if(istype(A, /mob/living/carbon)) var/mob/living/carbon/C = A C.dust() + return -/proc/tesla_zap(atom/source, zap_range = 3, power, explosive = FALSE) +/proc/tesla_zap(var/atom/source, zap_range = 3, power) . = source.dir if(power < 1000) return @@ -166,7 +160,7 @@ var/list/blacklisted_tesla_types = typecacheof(list(/obj/machinery/atmospherics, var/mob/living/closest_mob var/obj/machinery/closest_machine var/obj/structure/closest_structure - var/obj/structure/blob/closest_blob + var/obj/effect/blob/closest_blob for(var/A in oview(source, zap_range+2)) if(istype(A, /obj/machinery/power/tesla_coil)) @@ -194,7 +188,7 @@ var/list/blacklisted_tesla_types = typecacheof(list(/obj/machinery/atmospherics, else if(closest_grounding_rod || is_type_in_typecache(A, blacklisted_tesla_types)) continue - else if(isliving(A)) + else if(istype(A, /mob/living)) var/dist = get_dist(source, A) var/mob/living/L = A if(dist <= zap_range && (dist < closest_dist || !closest_mob) && L.stat != DEAD) @@ -216,8 +210,8 @@ var/list/blacklisted_tesla_types = typecacheof(list(/obj/machinery/atmospherics, else if(closest_mob) continue - else if(istype(A, /obj/structure/blob)) - var/obj/structure/blob/B = A + else if(istype(A, /obj/effect/blob)) + var/obj/effect/blob/B = A var/dist = get_dist(source, A) if(dist <= zap_range && (dist < closest_dist || !closest_tesla_coil) && !B.being_shocked) closest_blob = B @@ -238,22 +232,22 @@ var/list/blacklisted_tesla_types = typecacheof(list(/obj/machinery/atmospherics, //Alright, we've done our loop, now lets see if was anything interesting in range if(closest_atom) //common stuff - source.Beam(closest_atom, icon_state="lightning[rand(1,12)]", time=5) + source.Beam(closest_atom, icon_state="lightning[rand(1,12)]", icon='icons/effects/effects.dmi', time=5) var/zapdir = get_dir(source, closest_atom) if(zapdir) . = zapdir //per type stuff: if(closest_tesla_coil) - closest_tesla_coil.tesla_act(power, explosive) + closest_tesla_coil.tesla_act(power) else if(closest_grounding_rod) - closest_grounding_rod.tesla_act(power, explosive) + closest_grounding_rod.tesla_act(power) else if(closest_mob) var/shock_damage = Clamp(round(power/400), 10, 90) + rand(-5, 5) closest_mob.electrocute_act(shock_damage, source, 1, tesla_shock = 1) - if(issilicon(closest_mob)) + if(istype(closest_mob, /mob/living/silicon)) var/mob/living/silicon/S = closest_mob S.emp_act(2) tesla_zap(S, 7, power / 1.5) // metallic folks bounce it further @@ -261,10 +255,12 @@ var/list/blacklisted_tesla_types = typecacheof(list(/obj/machinery/atmospherics, tesla_zap(closest_mob, 5, power / 1.5) else if(closest_machine) - closest_machine.tesla_act(power, explosive) + closest_machine.tesla_act(power) else if(closest_blob) - closest_blob.tesla_act(power, explosive) + closest_blob.tesla_act(power) else if(closest_structure) - closest_structure.tesla_act(power, explosive) + closest_structure.tesla_act(power) + + diff --git a/code/modules/power/tracker.dm b/code/modules/power/tracker.dm index 8a888d5aff..7a42163704 100644 --- a/code/modules/power/tracker.dm +++ b/code/modules/power/tracker.dm @@ -11,9 +11,6 @@ anchored = 1 density = 1 use_power = 0 - obj_integrity = 250 - max_integrity = 250 - integrity_failure = 50 var/id = 0 var/sun_angle = 0 // sun angle as set by sun datum @@ -66,31 +63,16 @@ if(istype(W, /obj/item/weapon/crowbar)) playsound(src.loc, 'sound/machines/click.ogg', 50, 1) user.visible_message("[user] begins to take the glass off the solar tracker.", "You begin to take the glass off the solar tracker...") - if(do_after(user, 50*W.toolspeed, target = src)) - playsound(src.loc, 'sound/items/Deconstruct.ogg', 50, 1) - user.visible_message("[user] takes the glass off the tracker.", "You take the glass off the tracker.") - deconstruct(TRUE) - else - return ..() - -/obj/machinery/power/tracker/obj_break(damage_flag) - if(!(stat & BROKEN) && !(flags & NODECONSTRUCT)) - playsound(loc, 'sound/effects/Glassbr3.ogg', 100, 1) - stat |= BROKEN - unset_control() - -/obj/machinery/power/solar/deconstruct(disassembled = TRUE) - if(!(flags & NODECONSTRUCT)) - if(disassembled) + if(do_after(user, 50/W.toolspeed, target = src)) var/obj/item/solar_assembly/S = locate() in src if(S) - S.forceMove(loc) + S.loc = src.loc S.give_glass(stat & BROKEN) - else - playsound(src, "shatter", 70, 1) - new /obj/item/weapon/shard(src.loc) - new /obj/item/weapon/shard(src.loc) - qdel(src) + playsound(src.loc, 'sound/items/Deconstruct.ogg', 50, 1) + user.visible_message("[user] takes the glass off the tracker.", "You take the glass off the tracker.") + qdel(src) + else + return ..() // Tracker Electronic diff --git a/code/modules/power/turbine.dm b/code/modules/power/turbine.dm index 05dbc19b98..cb2d545768 100644 --- a/code/modules/power/turbine.dm +++ b/code/modules/power/turbine.dm @@ -29,8 +29,6 @@ icon_state = "compressor" anchored = 1 density = 1 - resistance_flags = FIRE_PROOF - CanAtmosPass = ATMOS_PASS_DENSITY var/obj/machinery/power/turbine/turbine var/datum/gas_mixture/gas_contained var/turf/inturf @@ -49,8 +47,6 @@ icon_state = "turbine" anchored = 1 density = 1 - resistance_flags = FIRE_PROOF - CanAtmosPass = ATMOS_PASS_DENSITY var/opened = 0 var/obj/machinery/power/compressor/compressor var/turf/outturf @@ -135,6 +131,9 @@ default_deconstruction_crowbar(I) +/obj/machinery/power/compressor/CanAtmosPass(turf/T) + return !density + /obj/machinery/power/compressor/process() if(!turbine) stat = BROKEN @@ -156,7 +155,7 @@ // RPM function to include compression friction - be advised that too low/high of a compfriction value can make things screwy - rpm = max(0, rpm - (rpm*rpm)/(COMPFRICTION*efficiency)) + rpm = max(0, rpm - (rpm*rpm)/(COMPFRICTION/efficiency)) if(starter && !(stat & NOPOWER)) @@ -220,6 +219,9 @@ if(compressor) compressor.locate_machinery() +/obj/machinery/power/turbine/CanAtmosPass(turf/T) + return !density + /obj/machinery/power/turbine/process() if(!compressor) @@ -289,7 +291,7 @@ /obj/machinery/power/turbine/interact(mob/user) - if(!Adjacent(user) || (stat & (NOPOWER|BROKEN)) && !issilicon(user)) + if ( !Adjacent(user) || (stat & (NOPOWER|BROKEN)) && (!istype(user, /mob/living/silicon)) ) user.unset_machine(src) user << browse(null, "window=turbine") return diff --git a/code/modules/procedural_mapping/mapGeneratorModule.dm b/code/modules/procedural_mapping/mapGeneratorModule.dm index 0ad35adddb..33ff0ee223 100644 --- a/code/modules/procedural_mapping/mapGeneratorModule.dm +++ b/code/modules/procedural_mapping/mapGeneratorModule.dm @@ -114,7 +114,7 @@ if(A.density) . = 0 break - if(!allowAtomsOnSpace && (isspaceturf(T))) + if(!allowAtomsOnSpace && (istype(T,/turf/open/space))) . = 0 diff --git a/code/modules/procedural_mapping/mapGeneratorModules/helpers.dm b/code/modules/procedural_mapping/mapGeneratorModules/helpers.dm index 4d07342051..bfd3032126 100644 --- a/code/modules/procedural_mapping/mapGeneratorModules/helpers.dm +++ b/code/modules/procedural_mapping/mapGeneratorModules/helpers.dm @@ -17,17 +17,6 @@ T.air.copy_from_turf(T) SSair.add_to_active(T) -/datum/mapGeneratorModule/bottomLayer/massdelete - spawnableAtoms = list() - spawnableTurfs = list() - -/datum/mapGeneratorModule/bottomLayer/massdelete/generate() - if(!mother) - return - for(var/V in mother.map) - var/turf/T = V - T.empty() - //Only places atoms/turfs on area borders /datum/mapGeneratorModule/border clusterCheckFlags = CLUSTER_CHECK_NONE @@ -48,7 +37,4 @@ return 0 /datum/mapGenerator/repressurize - modules = list(/datum/mapGeneratorModule/bottomLayer/repressurize) - -/datum/mapGenerator/massdelete - modules = list(/datum/mapGeneratorModule/bottomLayer/massdelete) \ No newline at end of file + modules = list(/datum/mapGeneratorModule/bottomLayer/repressurize) \ No newline at end of file diff --git a/code/modules/procedural_mapping/mapGenerators/cult.dm b/code/modules/procedural_mapping/mapGenerators/cult.dm deleted file mode 100644 index c76a611b7e..0000000000 --- a/code/modules/procedural_mapping/mapGenerators/cult.dm +++ /dev/null @@ -1,31 +0,0 @@ -/datum/mapGeneratorModule/bottomLayer/cultFloor - spawnableTurfs = list(/turf/open/floor/engine/cult = 100) - -/datum/mapGeneratorModule/border/cultWalls - spawnableTurfs = list(/turf/closed/wall/mineral/cult = 100) - - -/datum/mapGeneratorModule/bottomLayer/clockFloor - spawnableTurfs = list(/turf/open/floor/clockwork = 100) - -/datum/mapGeneratorModule/border/clockWalls - spawnableTurfs = list(/turf/closed/wall/clockwork = 100) - - -/datum/mapGenerator/cult //walls and floor only - modules = list(/datum/mapGeneratorModule/bottomLayer/cultFloor, \ - /datum/mapGeneratorModule/border/cultWalls, \ - /datum/mapGeneratorModule/bottomLayer/repressurize) - -/datum/mapGenerator/clock //walls and floor only - modules = list(/datum/mapGeneratorModule/bottomLayer/clockFloor, \ - /datum/mapGeneratorModule/border/clockWalls, \ - /datum/mapGeneratorModule/bottomLayer/repressurize) - -/datum/mapGenerator/cult/floor //floors only - modules = list(/datum/mapGeneratorModule/bottomLayer/cultFloor, \ - /datum/mapGeneratorModule/bottomLayer/repressurize) - -/datum/mapGenerator/clock/floor //floor only - modules = list(/datum/mapGeneratorModule/bottomLayer/clockFloor, \ - /datum/mapGeneratorModule/bottomLayer/repressurize) \ No newline at end of file diff --git a/code/modules/projectiles/ammunition.dm b/code/modules/projectiles/ammunition.dm index 35cc89b3c6..21ae421f8c 100644 --- a/code/modules/projectiles/ammunition.dm +++ b/code/modules/projectiles/ammunition.dm @@ -6,7 +6,7 @@ flags = CONDUCT slot_flags = SLOT_BELT throwforce = 0 - w_class = WEIGHT_CLASS_TINY + w_class = 1 var/fire_sound = null //What sound should play when this ammo is fired var/caliber = null //Which kind of guns it can be loaded into var/projectile_type = null //The bullet type to create when New() is called @@ -16,8 +16,6 @@ var/randomspread = 0 //Randomspread for automatics var/delay = 0 //Delay for energy weapons var/click_cooldown_override = 0 //Override this to make your gun have a faster fire rate, in tenths of a second. 4 is the default gun cooldown. - var/firing_effect_type = /obj/effect/overlay/temp/dir_setting/firing_effect //the visual effect appearing when the ammo is fired. - /obj/item/ammo_casing/New() ..() @@ -33,10 +31,10 @@ icon_state = "[initial(icon_state)][BB ? "-live" : ""]" desc = "[initial(desc)][BB ? "" : " This one is spent"]" -//proc to magically refill a casing with a new projectile -/obj/item/ammo_casing/proc/newshot() //For energy weapons, syringe gun, shotgun shells and wands (!). - if(!BB) +/obj/item/ammo_casing/proc/newshot() //For energy weapons, shotgun shells and wands (!). + if (!BB) BB = new projectile_type(src) + return /obj/item/ammo_casing/attackby(obj/item/I, mob/user, params) if(istype(I, /obj/item/ammo_box)) @@ -57,4 +55,113 @@ else user << "You fail to collect anything!" else - return ..() + ..() + +//Boxes of ammo +/obj/item/ammo_box + name = "ammo box (null_reference_exception)" + desc = "A box of ammo." + icon_state = "357" + icon = 'icons/obj/ammo.dmi' + flags = CONDUCT + slot_flags = SLOT_BELT + item_state = "syringe_kit" + materials = list(MAT_METAL=30000) + throwforce = 2 + w_class = 1 + throw_speed = 3 + throw_range = 7 + var/list/stored_ammo = list() + var/ammo_type = /obj/item/ammo_casing + var/max_ammo = 7 + var/multiple_sprites = 0 + var/caliber + var/multiload = 1 + +/obj/item/ammo_box/New() + for(var/i = 1, i <= max_ammo, i++) + stored_ammo += new ammo_type(src) + update_icon() + +/obj/item/ammo_box/proc/get_round(keep = 0) + if (!stored_ammo.len) + return null + else + var/b = stored_ammo[stored_ammo.len] + stored_ammo -= b + if (keep) + stored_ammo.Insert(1,b) + return b + +/obj/item/ammo_box/proc/give_round(obj/item/ammo_casing/R, replace_spent = 0) + // Boxes don't have a caliber type, magazines do. Not sure if it's intended or not, but if we fail to find a caliber, then we fall back to ammo_type. + if(!R || (caliber && R.caliber != caliber) || (!caliber && R.type != ammo_type)) + return 0 + + if (stored_ammo.len < max_ammo) + stored_ammo += R + R.loc = src + return 1 + + //for accessibles magazines (e.g internal ones) when full, start replacing spent ammo + else if(replace_spent) + for(var/obj/item/ammo_casing/AC in stored_ammo) + if(!AC.BB)//found a spent ammo + stored_ammo -= AC + AC.loc = get_turf(src.loc) + + stored_ammo += R + R.loc = src + return 1 + + return 0 + +/obj/item/ammo_box/proc/can_load(mob/user) + return 1 + +/obj/item/ammo_box/attackby(obj/item/A, mob/user, params, silent = 0, replace_spent = 0) + var/num_loaded = 0 + if(!can_load(user)) + return + if(istype(A, /obj/item/ammo_box)) + var/obj/item/ammo_box/AM = A + for(var/obj/item/ammo_casing/AC in AM.stored_ammo) + var/did_load = give_round(AC, replace_spent) + if(did_load) + AM.stored_ammo -= AC + num_loaded++ + if(!did_load || !multiload) + break + if(istype(A, /obj/item/ammo_casing)) + var/obj/item/ammo_casing/AC = A + if(give_round(AC, replace_spent)) + user.drop_item() + AC.loc = src + num_loaded++ + + if(num_loaded) + if(!silent) + user << "You load [num_loaded] shell\s into \the [src]!" + A.update_icon() + update_icon() + + return num_loaded + +/obj/item/ammo_box/attack_self(mob/user) + var/obj/item/ammo_casing/A = get_round() + if(A) + user.put_in_hands(A) + user << "You remove a round from \the [src]!" + update_icon() + +/obj/item/ammo_box/update_icon() + switch(multiple_sprites) + if(1) + icon_state = "[initial(icon_state)]-[stored_ammo.len]" + if(2) + icon_state = "[initial(icon_state)]-[stored_ammo.len ? "[max_ammo]" : "0"]" + desc = "[initial(desc)] There are [stored_ammo.len] shell\s left!" + +//Behavior for magazines +/obj/item/ammo_box/magazine/proc/ammo_count() + return stored_ammo.len diff --git a/code/modules/projectiles/ammunition/ammo_casings.dm b/code/modules/projectiles/ammunition/ammo_casings.dm index 515051e10b..20f59b6404 100644 --- a/code/modules/projectiles/ammunition/ammo_casings.dm +++ b/code/modules/projectiles/ammunition/ammo_casings.dm @@ -27,15 +27,6 @@ caliber = "10mm" projectile_type = /obj/item/projectile/bullet/midbullet3 -/obj/item/ammo_casing/c10mm/ap - projectile_type = /obj/item/projectile/bullet/midbullet3/ap - -/obj/item/ammo_casing/c10mm/fire - projectile_type = /obj/item/projectile/bullet/midbullet3/fire - -/obj/item/ammo_casing/c10mm/hp - projectile_type = /obj/item/projectile/bullet/midbullet3/hp - /obj/item/ammo_casing/c9mm desc = "A 9mm bullet casing." caliber = "9mm" @@ -208,7 +199,7 @@ variance = 25 -/obj/item/ammo_casing/shotgun/improvised/overload +/obj/item/ammo_casing/shotgun/improvised/overload/ name = "overloaded improvised shell" desc = "An extremely weak shotgun shell with multiple small pellets made out of metal shards. This one has been packed with even more \ propellant. It's like playing russian roulette, with a shotgun." @@ -313,3 +304,105 @@ reagents.add_reagent("mutetoxin", 6) //;HELP OPS IN MAINT reagents.add_reagent("coniine", 6) reagents.add_reagent("sodium_thiopental", 6) + +// Caseless Ammunition + +/obj/item/ammo_casing/caseless + desc = "A caseless bullet casing." + + +/obj/item/ammo_casing/caseless/fire(atom/target as mob|obj|turf, mob/living/user as mob|obj, params, distro, quiet) + if (..()) + loc = null + return 1 + else + return 0 + +/obj/item/ammo_casing/caseless/update_icon() + ..() + icon_state = "[initial(icon_state)]" + +/obj/item/ammo_casing/caseless/a75 + desc = "A .75 bullet casing." + caliber = "75" + icon_state = "s-casing-live" + projectile_type = /obj/item/projectile/bullet/gyro + +/obj/item/ammo_casing/caseless/magspear + name = "magnetic spear" + desc = "A reusable spear that is typically loaded into kinetic spearguns." + projectile_type = /obj/item/projectile/bullet/reusable/magspear + caliber = "speargun" + icon_state = "magspear" + throwforce = 15 //still deadly when thrown + throw_speed = 3 + + +/obj/item/ammo_casing/caseless/laser + name = "laser casing" + desc = "You shouldn't be seeing this." + caliber = "laser" + icon_state = "s-casing-live" + projectile_type = /obj/item/projectile/beam + fire_sound = 'sound/weapons/Laser.ogg' + +/obj/item/ammo_casing/caseless/laser/gatling + projectile_type = /obj/item/projectile/beam/weak + variance = 0.8 + click_cooldown_override = 1 + + +/obj/item/ammo_casing/caseless/foam_dart + name = "foam dart" + desc = "Its nerf or nothing! Ages 8 and up." + projectile_type = /obj/item/projectile/bullet/reusable/foam_dart + caliber = "foam_force" + icon = 'icons/obj/guns/toy.dmi' + icon_state = "foamdart" + var/modified = 0 + +/obj/item/ammo_casing/caseless/foam_dart/update_icon() + ..() + if (modified) + icon_state = "foamdart_empty" + desc = "Its nerf or nothing! ... Although, this one doesn't look too safe." + if(BB) + BB.icon_state = "foamdart_empty" + else + icon_state = "foamdart" + desc = "Its nerf or nothing! Ages 8 and up." + if(BB) + BB.icon_state = "foamdart_empty" + + +/obj/item/ammo_casing/caseless/foam_dart/attackby(obj/item/A, mob/user, params) + ..() + var/obj/item/projectile/bullet/reusable/foam_dart/FD = BB + if (istype(A, /obj/item/weapon/screwdriver) && !modified) + modified = 1 + FD.damage_type = BRUTE + update_icon() + else if ((istype(A, /obj/item/weapon/pen)) && modified && !FD.pen) + if(!user.unEquip(A)) + return + A.loc = FD + FD.pen = A + FD.damage = 5 + FD.nodamage = 0 + user << "You insert [A] into [src]." + return + +/obj/item/ammo_casing/caseless/foam_dart/attack_self(mob/living/user) + var/obj/item/projectile/bullet/reusable/foam_dart/FD = BB + if(FD.pen) + FD.damage = initial(FD.damage) + FD.nodamage = initial(FD.nodamage) + user.put_in_hands(FD.pen) + user << "You remove [FD.pen] from [src]." + FD.pen = null + +/obj/item/ammo_casing/caseless/foam_dart/riot + name = "riot foam dart" + desc = "Whose smart idea was it to use toys as crowd control? Ages 18 and up." + projectile_type = /obj/item/projectile/bullet/reusable/foam_dart/riot + icon_state = "foamdart_riot" diff --git a/code/modules/projectiles/boxes_magazines/ammo_boxes.dm b/code/modules/projectiles/ammunition/boxes.dm similarity index 100% rename from code/modules/projectiles/boxes_magazines/ammo_boxes.dm rename to code/modules/projectiles/ammunition/boxes.dm diff --git a/code/modules/projectiles/ammunition/caseless.dm b/code/modules/projectiles/ammunition/caseless.dm deleted file mode 100644 index aa6c47e855..0000000000 --- a/code/modules/projectiles/ammunition/caseless.dm +++ /dev/null @@ -1,126 +0,0 @@ - -// Caseless Ammunition - -/obj/item/ammo_casing/caseless - desc = "A caseless bullet casing." - firing_effect_type = null - -/obj/item/ammo_casing/caseless/fire_casing(atom/target, mob/living/user, params, distro, quiet, zone_override, spread) - if (..()) //successfully firing - loc = null - return 1 - else - return 0 - -/obj/item/ammo_casing/caseless/update_icon() - ..() - icon_state = "[initial(icon_state)]" - -/obj/item/ammo_casing/caseless/a75 - desc = "A .75 bullet casing." - caliber = "75" - icon_state = "s-casing-live" - projectile_type = /obj/item/projectile/bullet/gyro - -/obj/item/ammo_casing/caseless/a84mm - desc = "An 84mm anti-armour rocket." - caliber = "84mm" - icon_state = "s-casing-live" - projectile_type = /obj/item/projectile/bullet/a84mm - -/obj/item/ammo_casing/caseless/magspear - name = "magnetic spear" - desc = "A reusable spear that is typically loaded into kinetic spearguns." - projectile_type = /obj/item/projectile/bullet/reusable/magspear - caliber = "speargun" - icon_state = "magspear" - throwforce = 15 //still deadly when thrown - throw_speed = 3 - - -/obj/item/ammo_casing/caseless/laser - name = "laser casing" - desc = "You shouldn't be seeing this." - caliber = "laser" - icon_state = "s-casing-live" - projectile_type = /obj/item/projectile/beam - fire_sound = 'sound/weapons/Laser.ogg' - firing_effect_type = /obj/effect/overlay/temp/dir_setting/firing_effect/energy - -/obj/item/ammo_casing/caseless/laser/gatling - projectile_type = /obj/item/projectile/beam/weak - variance = 0.8 - click_cooldown_override = 1 - - -/obj/item/ammo_casing/caseless/foam_dart - name = "foam dart" - desc = "Its nerf or nothing! Ages 8 and up." - projectile_type = /obj/item/projectile/bullet/reusable/foam_dart - caliber = "foam_force" - icon = 'icons/obj/guns/toy.dmi' - icon_state = "foamdart" - var/modified = 0 - -/obj/item/ammo_casing/caseless/foam_dart/update_icon() - ..() - if (modified) - icon_state = "foamdart_empty" - desc = "Its nerf or nothing! ... Although, this one doesn't look too safe." - if(BB) - BB.icon_state = "foamdart_empty" - else - icon_state = initial(icon_state) - desc = "Its nerf or nothing! Ages 8 and up." - if(BB) - BB.icon_state = initial(BB.icon_state) - - -/obj/item/ammo_casing/caseless/foam_dart/attackby(obj/item/A, mob/user, params) - var/obj/item/projectile/bullet/reusable/foam_dart/FD = BB - if (istype(A, /obj/item/weapon/screwdriver) && !modified) - modified = 1 - FD.modified = 1 - FD.damage_type = BRUTE - user << "You pop the safety cap off of [src]." - update_icon() - else if (istype(A, /obj/item/weapon/pen)) - if(modified) - if(!FD.pen) - if(!user.unEquip(A)) - return - A.forceMove(FD) - FD.pen = A - FD.damage = 5 - FD.nodamage = 0 - user << "You insert [A] into [src]." - else - user << "There's already something in [src]." - else - user << "The safety cap prevents you from inserting [A] into [src]." - else - return ..() - -/obj/item/ammo_casing/caseless/foam_dart/attack_self(mob/living/user) - var/obj/item/projectile/bullet/reusable/foam_dart/FD = BB - if(FD.pen) - FD.damage = initial(FD.damage) - FD.nodamage = initial(FD.nodamage) - user.put_in_hands(FD.pen) - user << "You remove [FD.pen] from [src]." - FD.pen = null - -/obj/item/ammo_casing/caseless/foam_dart/riot - name = "riot foam dart" - desc = "Whose smart idea was it to use toys as crowd control? Ages 18 and up." - projectile_type = /obj/item/projectile/bullet/reusable/foam_dart/riot - icon_state = "foamdart_riot" - -/obj/item/ammo_casing/caseless/arrow - name = "arrow" - desc = "Stab, stab, stab." - icon_state = "arrow" - force = 10 - sharpness = IS_SHARP - projectile_type = /obj/item/projectile/bullet/reusable/arrow - caliber = "arrow" diff --git a/code/modules/projectiles/ammunition/energy.dm b/code/modules/projectiles/ammunition/energy.dm index 12b5143574..f1a94ee5c1 100644 --- a/code/modules/projectiles/ammunition/energy.dm +++ b/code/modules/projectiles/ammunition/energy.dm @@ -6,7 +6,6 @@ var/e_cost = 100 //The amount of energy a cell needs to expend to create this shot. var/select_name = "energy" fire_sound = 'sound/weapons/Laser.ogg' - firing_effect_type = /obj/effect/overlay/temp/dir_setting/firing_effect/energy /obj/item/ammo_casing/energy/laser projectile_type = /obj/item/projectile/beam/laser @@ -30,11 +29,6 @@ variance = 25 select_name = "scatter" -/obj/item/ammo_casing/energy/laser/scatter/disabler - projectile_type = /obj/item/projectile/beam/disabler - pellets = 3 - variance = 15 - /obj/item/ammo_casing/energy/laser/heavy projectile_type = /obj/item/projectile/beam/laser/heavylaser select_name = "anti-vehicle" @@ -112,6 +106,18 @@ projectile_type = /obj/item/projectile/meteor select_name = "goddamn meteor" +/obj/item/ammo_casing/energy/kinetic + projectile_type = /obj/item/projectile/kinetic + select_name = "kinetic" + e_cost = 500 + fire_sound = 'sound/weapons/Kenetic_accel.ogg' // fine spelling there chap + +/obj/item/ammo_casing/energy/kinetic/super + projectile_type = /obj/item/projectile/kinetic/super + +/obj/item/ammo_casing/energy/kinetic/hyper + projectile_type = /obj/item/projectile/kinetic/hyper + /obj/item/ammo_casing/energy/disabler projectile_type = /obj/item/projectile/beam/disabler select_name = "disable" @@ -147,14 +153,11 @@ e_cost = 500 fire_sound = 'sound/weapons/Genhit.ogg' -/obj/item/ammo_casing/energy/bolt/halloween - projectile_type = /obj/item/projectile/energy/bolt/halloween - /obj/item/ammo_casing/energy/bolt/large projectile_type = /obj/item/projectile/energy/bolt/large select_name = "heavy bolt" -/obj/item/ammo_casing/energy/net +obj/item/ammo_casing/energy/net projectile_type = /obj/item/projectile/energy/net select_name = "netting" pellets = 6 @@ -175,11 +178,11 @@ /obj/item/ammo_casing/energy/instakill/red projectile_type = /obj/item/projectile/beam/instakill/red -/obj/item/ammo_casing/energy/tesla_revolver +/obj/item/ammo_casing/energy/shock_revolver fire_sound = 'sound/magic/lightningbolt.ogg' e_cost = 200 select_name = "stun" - projectile_type = /obj/item/projectile/energy/tesla_revolver + projectile_type = /obj/item/projectile/energy/shock_revolver /obj/item/ammo_casing/energy/gravityrepulse projectile_type = /obj/item/projectile/gravityrepulse @@ -213,12 +216,4 @@ var/obj/item/weapon/gun/energy/gravity_gun/gun = null /obj/item/ammo_casing/energy/gravitychaos/New(var/obj/item/weapon/gun/energy/gravity_gun/G) - gun = G - -/obj/item/ammo_casing/energy/plasma - projectile_type = /obj/item/projectile/plasma - select_name = "plasma burst" - fire_sound = 'sound/weapons/pulse.ogg' - -/obj/item/ammo_casing/energy/plasma/adv - projectile_type = /obj/item/projectile/plasma/adv + gun = G \ No newline at end of file diff --git a/code/modules/projectiles/boxes_magazines/external_mag.dm b/code/modules/projectiles/ammunition/magazines.dm similarity index 64% rename from code/modules/projectiles/boxes_magazines/external_mag.dm rename to code/modules/projectiles/ammunition/magazines.dm index d4c6204233..de2420149a 100644 --- a/code/modules/projectiles/boxes_magazines/external_mag.dm +++ b/code/modules/projectiles/ammunition/magazines.dm @@ -1,3 +1,179 @@ +////////////////INTERNAL MAGAZINES////////////////////// + +/obj/item/ammo_box/magazine/internal + desc = "Oh god, this shouldn't be here" + +//internals magazines are accessible, so replace spent ammo if full when trying to put a live one in +/obj/item/ammo_box/magazine/internal/give_round(obj/item/ammo_casing/R) + return ..(R,1) + + + +// Revolver internal mags +/obj/item/ammo_box/magazine/internal/cylinder + name = "revolver cylinder" + ammo_type = /obj/item/ammo_casing/a357 + caliber = "357" + max_ammo = 7 + +/obj/item/ammo_box/magazine/internal/cylinder/ammo_count(countempties = 1) + var/boolets = 0 + for(var/obj/item/ammo_casing/bullet in stored_ammo) + if(bullet && (bullet.BB || countempties)) + boolets++ + + return boolets + +/obj/item/ammo_box/magazine/internal/cylinder/get_round(keep = 0) + rotate() + + var/b = stored_ammo[1] + if(!keep) + stored_ammo[1] = null + + return b + +/obj/item/ammo_box/magazine/internal/cylinder/proc/rotate() + var/b = stored_ammo[1] + stored_ammo.Cut(1,2) + stored_ammo.Insert(0, b) + +/obj/item/ammo_box/magazine/internal/cylinder/proc/spin() + for(var/i in 1 to rand(0, max_ammo*2)) + rotate() + + +/obj/item/ammo_box/magazine/internal/cylinder/give_round(obj/item/ammo_casing/R, replace_spent = 0) + if(!R || (caliber && R.caliber != caliber) || (!caliber && R.type != ammo_type)) + return 0 + + for(var/i in 1 to stored_ammo.len) + var/obj/item/ammo_casing/bullet = stored_ammo[i] + if(!bullet || !bullet.BB) // found a spent ammo + stored_ammo[i] = R + R.loc = src + + if(bullet) + bullet.loc = get_turf(src.loc) + return 1 + + return 0 + +/obj/item/ammo_box/magazine/internal/cylinder/rev38 + name = "detective revolver cylinder" + ammo_type = /obj/item/ammo_casing/c38 + caliber = "38" + max_ammo = 6 + +/obj/item/ammo_box/magazine/internal/cylinder/grenademulti + name = "grenade launcher internal magazine" + ammo_type = /obj/item/ammo_casing/a40mm + caliber = "40mm" + max_ammo = 6 + +/obj/item/ammo_box/magazine/internal/cylinder/rev762 + name = "nagant revolver cylinder" + ammo_type = /obj/item/ammo_casing/n762 + caliber = "n762" + max_ammo = 7 + +// Shotgun internal mags +/obj/item/ammo_box/magazine/internal/shot + name = "shotgun internal magazine" + ammo_type = /obj/item/ammo_casing/shotgun/beanbag + caliber = "shotgun" + max_ammo = 4 + multiload = 0 + +/obj/item/ammo_box/magazine/internal/shot/ammo_count(countempties = 1) + if (!countempties) + var/boolets = 0 + for(var/obj/item/ammo_casing/bullet in stored_ammo) + if(bullet.BB) + boolets++ + return boolets + else + return ..() + + +/obj/item/ammo_box/magazine/internal/shot/tube + name = "dual feed shotgun internal tube" + ammo_type = /obj/item/ammo_casing/shotgun/rubbershot + max_ammo = 4 + +/obj/item/ammo_box/magazine/internal/shot/lethal + ammo_type = /obj/item/ammo_casing/shotgun/buckshot + +/obj/item/ammo_box/magazine/internal/shot/com + name = "combat shotgun internal magazine" + ammo_type = /obj/item/ammo_casing/shotgun/buckshot + max_ammo = 6 + +/obj/item/ammo_box/magazine/internal/shot/dual + name = "double-barrel shotgun internal magazine" + max_ammo = 2 + +/obj/item/ammo_box/magazine/internal/shot/improvised + name = "improvised shotgun internal magazine" + ammo_type = /obj/item/ammo_casing/shotgun/improvised + max_ammo = 1 + +/obj/item/ammo_box/magazine/internal/shot/riot + name = "riot shotgun internal magazine" + ammo_type = /obj/item/ammo_casing/shotgun/rubbershot + max_ammo = 6 + + + + +/obj/item/ammo_box/magazine/internal/grenadelauncher + name = "grenade launcher internal magazine" + ammo_type = /obj/item/ammo_casing/a40mm + caliber = "40mm" + max_ammo = 1 + +/obj/item/ammo_box/magazine/internal/speargun + name = "speargun internal magazine" + ammo_type = /obj/item/ammo_casing/caseless/magspear + caliber = "speargun" + max_ammo = 1 + +/obj/item/ammo_box/magazine/internal/rus357 + name = "russian revolver cylinder" + ammo_type = /obj/item/ammo_casing/a357 + caliber = "357" + max_ammo = 6 + multiload = 0 + +/obj/item/ammo_box/magazine/internal/rus357/New() + stored_ammo += new ammo_type(src) + +/obj/item/ammo_box/magazine/internal/boltaction + name = "bolt action rifle internal magazine" + desc = "Oh god, this shouldn't be here" + ammo_type = /obj/item/ammo_casing/a762 + caliber = "a762" + max_ammo = 5 + multiload = 1 + +/obj/item/ammo_box/magazine/internal/boltaction/enchanted + max_ammo =1 + ammo_type = /obj/item/ammo_casing/a762/enchanted + + +/obj/item/ammo_box/magazine/internal/shot/toy + ammo_type = /obj/item/ammo_casing/caseless/foam_dart + caliber = "foam_force" + max_ammo = 4 + +/obj/item/ammo_box/magazine/internal/shot/toy/crossbow + max_ammo = 5 + +/obj/item/ammo_box/magazine/internal/minigun + name = "gatling gun fusion core" + ammo_type = /obj/item/ammo_casing/caseless/laser/gatling + caliber = "gatling" + max_ammo = 5000 @@ -13,21 +189,6 @@ max_ammo = 8 multiple_sprites = 2 -/obj/item/ammo_box/magazine/m10mm/fire - name = "pistol magazine (10mm incendiary)" - desc = "A gun magazine. Loaded with rounds which ignite the target." - ammo_type = /obj/item/ammo_casing/c10mm/fire - -/obj/item/ammo_box/magazine/m10mm/hp - name = "pistol magazine (10mm HP)" - desc= "A gun magazine. Loaded with hollow-point rounds, extremely effective against unarmored targets, but nearly useless against protective clothing." - ammo_type = /obj/item/ammo_casing/c10mm/hp - -/obj/item/ammo_box/magazine/m10mm/ap - name = "pistol magazine (10mm AP)" - desc= "A gun magazine. Loaded with rounds which penetrate armour, but are less effective against normal targets" - ammo_type = /obj/item/ammo_casing/c10mm/ap - /obj/item/ammo_box/magazine/m45 name = "handgun magazine (.45)" icon_state = "45-8" @@ -119,7 +280,7 @@ ..() icon_state = "c20r45-[round(ammo_count(),2)]" -/obj/item/ammo_box/magazine/tommygunm45 +obj/item/ammo_box/magazine/tommygunm45 name = "drum magazine (.45)" icon_state = "drum45" ammo_type = /obj/item/ammo_casing/c45 @@ -278,15 +439,12 @@ /obj/item/ammo_box/magazine/toy/smg name = "foam force SMG magazine" - icon_state = "smg9mm-42" + icon_state = "smg9mm-20" max_ammo = 20 /obj/item/ammo_box/magazine/toy/smg/update_icon() ..() - if(ammo_count()) - icon_state = "smg9mm-42" - else - icon_state = "smg9mm-0" + icon_state = "smg9mm-[round(ammo_count(),5)]" /obj/item/ammo_box/magazine/toy/smg/riot ammo_type = /obj/item/ammo_casing/caseless/foam_dart/riot diff --git a/code/modules/projectiles/ammunition/special.dm b/code/modules/projectiles/ammunition/special.dm index 0c6a09a98a..b91ce29a99 100644 --- a/code/modules/projectiles/ammunition/special.dm +++ b/code/modules/projectiles/ammunition/special.dm @@ -2,7 +2,6 @@ name = "magic casing" desc = "I didn't even know magic needed ammo..." projectile_type = /obj/item/projectile/magic - firing_effect_type = /obj/effect/overlay/temp/dir_setting/firing_effect/magic /obj/item/ammo_casing/magic/change projectile_type = /obj/item/projectile/magic/change @@ -28,12 +27,6 @@ /obj/item/ammo_casing/magic/chaos projectile_type = /obj/item/projectile/magic -/obj/item/ammo_casing/magic/spellblade - projectile_type = /obj/item/projectile/magic/spellblade - -/obj/item/ammo_casing/magic/arcane_barrage - projectile_type = /obj/item/projectile/magic/arcane_barrage - /obj/item/ammo_casing/magic/chaos/newshot() projectile_type = pick(typesof(/obj/item/projectile/magic)) ..() @@ -44,31 +37,10 @@ /obj/item/ammo_casing/syringegun name = "syringe gun spring" desc = "A high-power spring that throws syringes." - projectile_type = /obj/item/projectile/bullet/dart/syringe - firing_effect_type = null - -/obj/item/ammo_casing/syringegun/ready_proj(atom/target, mob/living/user, quiet, zone_override = "") - if(!BB) - return - if(istype(loc, /obj/item/weapon/gun/syringe)) - var/obj/item/weapon/gun/syringe/SG = loc - if(!SG.syringes.len) - return - - var/obj/item/weapon/reagent_containers/syringe/S = SG.syringes[1] - - S.reagents.trans_to(BB, S.reagents.total_volume) - BB.name = S.name - var/obj/item/projectile/bullet/dart/D = BB - D.piercing = S.proj_piercing - SG.syringes.Remove(S) - qdel(S) - ..() - + projectile_type = null /obj/item/ammo_casing/energy/c3dbullet projectile_type = /obj/item/projectile/bullet/midbullet3 select_name = "spraydown" fire_sound = 'sound/weapons/gunshot_smg.ogg' e_cost = 20 - firing_effect_type = /obj/effect/overlay/temp/dir_setting/firing_effect diff --git a/code/modules/projectiles/box_magazine.dm b/code/modules/projectiles/box_magazine.dm deleted file mode 100644 index 3cf4568fbd..0000000000 --- a/code/modules/projectiles/box_magazine.dm +++ /dev/null @@ -1,117 +0,0 @@ -//Boxes of ammo -/obj/item/ammo_box - name = "ammo box (null_reference_exception)" - desc = "A box of ammo." - icon_state = "357" - icon = 'icons/obj/ammo.dmi' - flags = CONDUCT - slot_flags = SLOT_BELT - item_state = "syringe_kit" - materials = list(MAT_METAL=30000) - throwforce = 2 - w_class = WEIGHT_CLASS_TINY - throw_speed = 3 - throw_range = 7 - var/list/stored_ammo = list() - var/ammo_type = /obj/item/ammo_casing - var/max_ammo = 7 - var/multiple_sprites = 0 - var/caliber - var/multiload = 1 - var/start_empty = 0 - -/obj/item/ammo_box/New() - ..() - if(!start_empty) - for(var/i = 1, i <= max_ammo, i++) - stored_ammo += new ammo_type(src) - update_icon() - -/obj/item/ammo_box/proc/get_round(keep = 0) - if (!stored_ammo.len) - return null - else - var/b = stored_ammo[stored_ammo.len] - stored_ammo -= b - if (keep) - stored_ammo.Insert(1,b) - return b - -/obj/item/ammo_box/proc/give_round(obj/item/ammo_casing/R, replace_spent = 0) - // Boxes don't have a caliber type, magazines do. Not sure if it's intended or not, but if we fail to find a caliber, then we fall back to ammo_type. - if(!R || (caliber && R.caliber != caliber) || (!caliber && R.type != ammo_type)) - return 0 - - if (stored_ammo.len < max_ammo) - stored_ammo += R - R.forceMove(src) - return 1 - - //for accessibles magazines (e.g internal ones) when full, start replacing spent ammo - else if(replace_spent) - for(var/obj/item/ammo_casing/AC in stored_ammo) - if(!AC.BB)//found a spent ammo - stored_ammo -= AC - AC.forceMove(get_turf(src.loc)) - - stored_ammo += R - R.forceMove(src) - return 1 - - return 0 - -/obj/item/ammo_box/proc/can_load(mob/user) - return 1 - -/obj/item/ammo_box/attackby(obj/item/A, mob/user, params, silent = 0, replace_spent = 0) - var/num_loaded = 0 - if(!can_load(user)) - return - if(istype(A, /obj/item/ammo_box)) - var/obj/item/ammo_box/AM = A - for(var/obj/item/ammo_casing/AC in AM.stored_ammo) - var/did_load = give_round(AC, replace_spent) - if(did_load) - AM.stored_ammo -= AC - num_loaded++ - if(!did_load || !multiload) - break - if(istype(A, /obj/item/ammo_casing)) - var/obj/item/ammo_casing/AC = A - if(give_round(AC, replace_spent)) - user.drop_item() - AC.forceMove(src) - num_loaded++ - - if(num_loaded) - if(!silent) - user << "You load [num_loaded] shell\s into \the [src]!" - A.update_icon() - update_icon() - - return num_loaded - -/obj/item/ammo_box/attack_self(mob/user) - var/obj/item/ammo_casing/A = get_round() - if(A) - user.put_in_hands(A) - user << "You remove a round from \the [src]!" - update_icon() - -/obj/item/ammo_box/update_icon() - switch(multiple_sprites) - if(1) - icon_state = "[initial(icon_state)]-[stored_ammo.len]" - if(2) - icon_state = "[initial(icon_state)]-[stored_ammo.len ? "[max_ammo]" : "0"]" - desc = "[initial(desc)] There are [stored_ammo.len] shell\s left!" - -//Behavior for magazines -/obj/item/ammo_box/magazine/proc/ammo_count() - return stored_ammo.len - -/obj/item/ammo_box/magazine/proc/empty_magazine() - var/turf_mag = get_turf(src) - for(var/obj/item/ammo in stored_ammo) - ammo.forceMove(turf_mag) - stored_ammo -= ammo \ No newline at end of file diff --git a/code/modules/projectiles/boxes_magazines/internal_mag.dm b/code/modules/projectiles/boxes_magazines/internal_mag.dm deleted file mode 100644 index 3e7112ffed..0000000000 --- a/code/modules/projectiles/boxes_magazines/internal_mag.dm +++ /dev/null @@ -1,192 +0,0 @@ -////////////////INTERNAL MAGAZINES////////////////////// - -/obj/item/ammo_box/magazine/internal - desc = "Oh god, this shouldn't be here" - -//internals magazines are accessible, so replace spent ammo if full when trying to put a live one in -/obj/item/ammo_box/magazine/internal/give_round(obj/item/ammo_casing/R) - return ..(R,1) - - - -// Revolver internal mags -/obj/item/ammo_box/magazine/internal/cylinder - name = "revolver cylinder" - ammo_type = /obj/item/ammo_casing/a357 - caliber = "357" - max_ammo = 7 - -/obj/item/ammo_box/magazine/internal/cylinder/ammo_count(countempties = 1) - var/boolets = 0 - for(var/obj/item/ammo_casing/bullet in stored_ammo) - if(bullet && (bullet.BB || countempties)) - boolets++ - - return boolets - -/obj/item/ammo_box/magazine/internal/cylinder/get_round(keep = 0) - rotate() - - var/b = stored_ammo[1] - if(!keep) - stored_ammo[1] = null - - return b - -/obj/item/ammo_box/magazine/internal/cylinder/proc/rotate() - var/b = stored_ammo[1] - stored_ammo.Cut(1,2) - stored_ammo.Insert(0, b) - -/obj/item/ammo_box/magazine/internal/cylinder/proc/spin() - for(var/i in 1 to rand(0, max_ammo*2)) - rotate() - - -/obj/item/ammo_box/magazine/internal/cylinder/give_round(obj/item/ammo_casing/R, replace_spent = 0) - if(!R || (caliber && R.caliber != caliber) || (!caliber && R.type != ammo_type)) - return 0 - - for(var/i in 1 to stored_ammo.len) - var/obj/item/ammo_casing/bullet = stored_ammo[i] - if(!bullet || !bullet.BB) // found a spent ammo - stored_ammo[i] = R - R.loc = src - - if(bullet) - bullet.loc = get_turf(src.loc) - return 1 - - return 0 - -/obj/item/ammo_box/magazine/internal/cylinder/rev38 - name = "detective revolver cylinder" - ammo_type = /obj/item/ammo_casing/c38 - caliber = "38" - max_ammo = 6 - -/obj/item/ammo_box/magazine/internal/cylinder/grenademulti - name = "grenade launcher internal magazine" - ammo_type = /obj/item/ammo_casing/a40mm - caliber = "40mm" - max_ammo = 6 - -/obj/item/ammo_box/magazine/internal/cylinder/rev762 - name = "nagant revolver cylinder" - ammo_type = /obj/item/ammo_casing/n762 - caliber = "n762" - max_ammo = 7 - -// Shotgun internal mags -/obj/item/ammo_box/magazine/internal/shot - name = "shotgun internal magazine" - ammo_type = /obj/item/ammo_casing/shotgun/beanbag - caliber = "shotgun" - max_ammo = 4 - multiload = 0 - -/obj/item/ammo_box/magazine/internal/shot/ammo_count(countempties = 1) - if (!countempties) - var/boolets = 0 - for(var/obj/item/ammo_casing/bullet in stored_ammo) - if(bullet.BB) - boolets++ - return boolets - else - return ..() - - -/obj/item/ammo_box/magazine/internal/shot/tube - name = "dual feed shotgun internal tube" - ammo_type = /obj/item/ammo_casing/shotgun/rubbershot - max_ammo = 4 - -/obj/item/ammo_box/magazine/internal/shot/lethal - ammo_type = /obj/item/ammo_casing/shotgun/buckshot - -/obj/item/ammo_box/magazine/internal/shot/com - name = "combat shotgun internal magazine" - ammo_type = /obj/item/ammo_casing/shotgun/buckshot - max_ammo = 6 - -/obj/item/ammo_box/magazine/internal/shot/dual - name = "double-barrel shotgun internal magazine" - max_ammo = 2 - -/obj/item/ammo_box/magazine/internal/shot/improvised - name = "improvised shotgun internal magazine" - ammo_type = /obj/item/ammo_casing/shotgun/improvised - max_ammo = 1 - -/obj/item/ammo_box/magazine/internal/shot/riot - name = "riot shotgun internal magazine" - ammo_type = /obj/item/ammo_casing/shotgun/rubbershot - max_ammo = 6 - - - - -/obj/item/ammo_box/magazine/internal/grenadelauncher - name = "grenade launcher internal magazine" - ammo_type = /obj/item/ammo_casing/a40mm - caliber = "40mm" - max_ammo = 1 - -/obj/item/ammo_box/magazine/internal/rocketlauncher - name = "grenade launcher internal magazine" - ammo_type = /obj/item/ammo_casing/caseless/a84mm - caliber = "84mm" - max_ammo = 1 - -/obj/item/ammo_box/magazine/internal/speargun - name = "speargun internal magazine" - ammo_type = /obj/item/ammo_casing/caseless/magspear - caliber = "speargun" - max_ammo = 1 - -/obj/item/ammo_box/magazine/internal/cylinder/rus357 - name = "russian revolver cylinder" - ammo_type = /obj/item/ammo_casing/a357 - caliber = "357" - max_ammo = 6 - multiload = 0 - -/obj/item/ammo_box/magazine/internal/rus357/New() - stored_ammo += new ammo_type(src) - ..() - -/obj/item/ammo_box/magazine/internal/boltaction - name = "bolt action rifle internal magazine" - desc = "Oh god, this shouldn't be here" - ammo_type = /obj/item/ammo_casing/a762 - caliber = "a762" - max_ammo = 5 - multiload = 1 - -/obj/item/ammo_box/magazine/internal/boltaction/enchanted - max_ammo = 1 - ammo_type = /obj/item/ammo_casing/a762/enchanted - -/obj/item/ammo_box/magazine/internal/boltaction/enchanted/arcane_barrage - ammo_type = /obj/item/ammo_casing/magic/arcane_barrage - -/obj/item/ammo_box/magazine/internal/shot/toy - ammo_type = /obj/item/ammo_casing/caseless/foam_dart - caliber = "foam_force" - max_ammo = 4 - -/obj/item/ammo_box/magazine/internal/shot/toy/crossbow - max_ammo = 5 - -/obj/item/ammo_box/magazine/internal/minigun - name = "gatling gun fusion core" - ammo_type = /obj/item/ammo_casing/caseless/laser/gatling - caliber = "gatling" - max_ammo = 5000 - - -/obj/item/ammo_box/magazine/internal/bow - name = "bow internal magazine" - ammo_type = /obj/item/ammo_casing/caseless/arrow - caliber = "arrow" - max_ammo = 1 diff --git a/code/modules/projectiles/firing.dm b/code/modules/projectiles/firing.dm index 6fdc617ef4..5933d94cf8 100644 --- a/code/modules/projectiles/firing.dm +++ b/code/modules/projectiles/firing.dm @@ -1,4 +1,4 @@ -/obj/item/ammo_casing/proc/fire_casing(atom/target, mob/living/user, params, distro, quiet, zone_override, spread) +/obj/item/ammo_casing/proc/fire(atom/target as mob|obj|turf, mob/living/user as mob|obj, params, distro, quiet, zone_override = "",spread) distro += variance for (var/i = max(1, pellets), i > 0, i--) var/targloc = get_turf(target) @@ -20,7 +20,7 @@ update_icon() return 1 -/obj/item/ammo_casing/proc/ready_proj(atom/target, mob/living/user, quiet, zone_override) +/obj/item/ammo_casing/proc/ready_proj(atom/target, mob/living/user, quiet, zone_override = "") if (!BB) return BB.original = target @@ -39,20 +39,17 @@ var/turf/curloc = get_turf(user) if (!istype(targloc) || !istype(curloc) || !BB) return 0 - - var/firing_dir - if(BB.firer) - firing_dir = BB.firer.dir - if(!BB.suppressed && firing_effect_type) - PoolOrNew(firing_effect_type, list(get_turf(src), firing_dir)) - - var/direct_target + BB.ammo_casing = src if(targloc == curloc) - if(target) //if the target is right on our location we'll skip the travelling code in the proj's fire() - direct_target = target - if(!direct_target) - BB.preparePixelProjectile(target, targloc, user, params, spread) - BB.fire(null, direct_target) + if(target) //if the target is right on our location we go straight to bullet_act() + target.bullet_act(BB, BB.def_zone) + qdel(BB) + BB = null + return 1 + + BB.preparePixelProjectile(target, targloc, user, params, spread) + if(BB) + BB.fire() BB = null return 1 @@ -60,3 +57,42 @@ var/dx = abs(target.x - current.x) var/dy = abs(target.y - current.y) return locate(target.x + round(gaussian(0, distro) * (dy+2)/8, 1), target.y + round(gaussian(0, distro) * (dx+2)/8, 1), target.z) + +/obj/item/projectile/proc/preparePixelProjectile(atom/target, var/turf/targloc, mob/living/user, params, spread) + var/turf/curloc = get_turf(user) + src.loc = get_turf(user) + src.starting = get_turf(user) + src.current = curloc + src.yo = targloc.y - curloc.y + src.xo = targloc.x - curloc.x + + if(params) + var/list/mouse_control = params2list(params) + if(mouse_control["icon-x"]) + src.p_x = text2num(mouse_control["icon-x"]) + if(mouse_control["icon-y"]) + src.p_y = text2num(mouse_control["icon-y"]) + if(mouse_control["screen-loc"]) + //Split screen-loc up into X+Pixel_X and Y+Pixel_Y + var/list/screen_loc_params = splittext(mouse_control["screen-loc"], ",") + + //Split X+Pixel_X up into list(X, Pixel_X) + var/list/screen_loc_X = splittext(screen_loc_params[1],":") + + //Split Y+Pixel_Y up into list(Y, Pixel_Y) + var/list/screen_loc_Y = splittext(screen_loc_params[2],":") + // world << "X: [screen_loc_X[1]] PixelX: [screen_loc_X[2]] / Y: [screen_loc_Y[1]] PixelY: [screen_loc_Y[2]]" + var/x = text2num(screen_loc_X[1]) * 32 + text2num(screen_loc_X[2]) - 32 + var/y = text2num(screen_loc_Y[1]) * 32 + text2num(screen_loc_Y[2]) - 32 + + //Calculate the "resolution" of screen based on client's view and world's icon size. This will work if the user can view more tiles than average. + var/screenview = (user.client.view * 2 + 1) * world.icon_size //Refer to http://www.byond.com/docs/ref/info.html#/client/var/view for mad maths + + var/ox = round(screenview/2) //"origin" x + var/oy = round(screenview/2) //"origin" y + // world << "Pixel position: [x] [y]" + var/angle = Atan2(y - oy, x - ox) + // world << "Angle: [angle]" + src.Angle = angle + if(spread) + src.Angle += spread \ No newline at end of file diff --git a/code/modules/projectiles/gun.dm b/code/modules/projectiles/gun.dm index 49a1af694e..6cbaea8fb9 100644 --- a/code/modules/projectiles/gun.dm +++ b/code/modules/projectiles/gun.dm @@ -7,14 +7,13 @@ flags = CONDUCT slot_flags = SLOT_BELT materials = list(MAT_METAL=2000) - w_class = WEIGHT_CLASS_NORMAL + w_class = 3 throwforce = 5 throw_speed = 3 throw_range = 5 force = 5 origin_tech = "combat=1" needs_permit = 1 - unique_rename = 0 attack_verb = list("struck", "hit", "bashed") var/fire_sound = "gunshot" @@ -32,8 +31,11 @@ var/firing_burst = 0 //Prevent the weapon from firing again while already firing var/semicd = 0 //cooldown handler var/weapon_weight = WEAPON_LIGHT + var/spread = 0 //Spread induced by the gun itself. var/randomspread = 1 //Set to 0 for shotguns. This is used for weapons that don't fire all their bullets at once. + + var/unique_rename = 0 //allows renaming with a pen var/unique_reskin = 0 //allows one-time reskinning var/current_skin = null //the skin choice if we had a reskin var/list/options = list() @@ -43,7 +45,7 @@ var/obj/item/device/firing_pin/pin = /obj/item/device/firing_pin //standard firing pin for most guns - var/obj/item/device/flashlight/gun_light = null + var/obj/item/device/flashlight/F = null var/can_flashlight = 0 var/list/upgrades = list() @@ -64,7 +66,7 @@ ..() if(pin) pin = new pin(src) - if(gun_light) + if(F) verbs += /obj/item/weapon/gun/proc/toggle_gunlight new /datum/action/item_action/toggle_gunlight(src) build_zooming() @@ -77,7 +79,7 @@ G.loc = loc qdel(G.pin) G.pin = null - visible_message("[G] can now fit a new pin, but old one was destroyed in the process.", null, null, 3) + visible_message("[G] can now fit a new pin, but old one was destroyed in the process.") qdel(src) /obj/item/weapon/gun/examine(mob/user) @@ -88,8 +90,10 @@ user << "It doesn't have a firing pin installed, and won't fire." if(unique_reskin && !current_skin) user << "Alt-click it to reskin it." + if(unique_rename) + user << "Use a pen on it to rename it." + -//called after the gun has successfully fired its chambered ammo. /obj/item/weapon/gun/proc/process_chamber() return 0 @@ -103,6 +107,7 @@ /obj/item/weapon/gun/proc/shoot_with_empty_chamber(mob/living/user as mob|obj) user << "*click*" playsound(user, 'sound/weapons/empty.ogg', 100, 1) + return /obj/item/weapon/gun/proc/shoot_live_shot(mob/living/user as mob|obj, pointblank = 0, mob/pbtarget = null, message = 1) @@ -113,11 +118,18 @@ playsound(user, fire_sound, 10, 1) else playsound(user, fire_sound, 50, 1) - if(message) - if(pointblank) - user.visible_message("[user] fires [src] point blank at [pbtarget]!", null, null, COMBAT_MESSAGE_RANGE) - else - user.visible_message("[user] fires [src]!", null, null, COMBAT_MESSAGE_RANGE) + if(!message) + return + if(pointblank) + user.visible_message("[user] fires [src] point blank at [pbtarget]!", "You fire [src] point blank at [pbtarget]!", "You hear a [istype(src, /obj/item/weapon/gun/energy) ? "laser blast" : "gunshot"]!") + else + user.visible_message("[user] fires [src]!", "You fire [src]!", "You hear a [istype(src, /obj/item/weapon/gun/energy) ? "laser blast" : "gunshot"]!") + + if(weapon_weight >= WEAPON_MEDIUM) + if(user.get_inactive_hand()) + if(prob(15)) + if(user.drop_item()) + user.visible_message("[src] flies out of [user]'s hands!", "[src] kicks out of your grip!") /obj/item/weapon/gun/emp_act(severity) for(var/obj/O in contents) @@ -130,7 +142,7 @@ if(flag) //It's adjacent, is the user, or is on the user's person if(target in user.contents) //can't shoot stuff inside us. return - if(!ismob(target) || user.a_intent == INTENT_HARM) //melee attack + if(!ismob(target) || user.a_intent == "harm") //melee attack return if(target == user && user.zone_selected != "mouth") //so we can't shoot ourselves (unless mouth selected) return @@ -140,7 +152,7 @@ if(!can_trigger_gun(L)) return - if(!can_shoot()) //Just because you can pull the trigger doesn't mean it can shoot. + if(!can_shoot()) //Just because you can pull the trigger doesn't mean it can't shoot. shoot_with_empty_chamber(user) return @@ -154,31 +166,17 @@ if(clumsy_check) if(istype(user)) if (user.disabilities & CLUMSY && prob(40)) - user << "You shoot yourself in the foot with [src]!" + user << "You shoot yourself in the foot with \the [src]!" var/shot_leg = pick("l_leg", "r_leg") process_fire(user,user,0,params, zone_override = shot_leg) user.drop_item() return - if(weapon_weight == WEAPON_HEAVY && user.get_inactive_held_item()) - user << "You need both hands free to fire [src]!" + if(weapon_weight == WEAPON_HEAVY && user.get_inactive_hand()) + user << "You need both hands free to fire \the [src]!" return - //DUAL (or more!) WIELDING - var/bonus_spread = 0 - var/loop_counter = 0 - if(ishuman(user) && user.a_intent == INTENT_HARM) - var/mob/living/carbon/human/H = user - for(var/obj/item/weapon/gun/G in H.held_items) - if(G == src || G.weapon_weight >= WEAPON_MEDIUM) - continue - else if(G.can_trigger_gun(user)) - bonus_spread += 24 * G.weapon_weight - loop_counter++ - spawn(loop_counter) - G.process_fire(target,user,1,params, null, bonus_spread) - - process_fire(target,user,1,params, null, bonus_spread) + process_fire(target,user,1,params) @@ -197,23 +195,23 @@ pin.auth_fail(user) return 0 else - user << "[src]'s trigger is locked. This weapon doesn't have a firing pin installed!" + user << "\The [src]'s trigger is locked. This weapon doesn't have a firing pin installed!" return 0 -/obj/item/weapon/gun/proc/recharge_newshot() +obj/item/weapon/gun/proc/newshot() return -/obj/item/weapon/gun/proc/process_fire(atom/target as mob|obj|turf, mob/living/user as mob|obj, message = 1, params, zone_override, bonus_spread = 0) +/obj/item/weapon/gun/proc/process_fire(atom/target as mob|obj|turf, mob/living/user as mob|obj, message = 1, params, zone_override) add_fingerprint(user) if(semicd) return - var/sprd = 0 - var/randomized_gun_spread = 0 - if(spread) - randomized_gun_spread = rand(0,spread) - var/randomized_bonus_spread = rand(0, bonus_spread) + if(weapon_weight) + if(user.get_inactive_hand()) + recoil = 4 //one-handed kick + else + recoil = initial(recoil) if(burst_size > 1) firing_burst = 1 @@ -221,15 +219,15 @@ if(!user) break if(!issilicon(user)) - if( i>1 && !(user.is_holding(src))) //for burst firing + if( i>1 && !(src in get_both_hands(user))) //for burst firing break - if(chambered && chambered.BB) + if(chambered) + var/sprd = 0 if(randomspread) - sprd = round((rand() - 0.5) * (randomized_gun_spread + randomized_bonus_spread)) + sprd = round((rand() - 0.5) * spread) else //Smart spread - sprd = round((i / burst_size - 0.5) * (randomized_gun_spread + randomized_bonus_spread)) - - if(!chambered.fire_casing(target, user, params, ,suppressed, zone_override, sprd)) + sprd = round((i / burst_size - 0.5) * spread) + if(!chambered.fire(target, user, params, ,suppressed, zone_override, sprd)) shoot_with_empty_chamber(user) break else @@ -246,8 +244,7 @@ firing_burst = 0 else if(chambered) - sprd = round((pick(1,-1)) * (randomized_gun_spread + randomized_bonus_spread)) - if(!chambered.fire_casing(target, user, params, , suppressed, zone_override, sprd)) + if(!chambered.fire(target, user, params, , suppressed, zone_override, spread)) shoot_with_empty_chamber(user) return else @@ -265,26 +262,29 @@ semicd = 0 if(user) - user.update_inv_hands() + if(user.hand) + user.update_inv_l_hand() + else + user.update_inv_r_hand() feedback_add_details("gun_fired","[src.type]") /obj/item/weapon/gun/attack(mob/M as mob, mob/user) - if(user.a_intent == INTENT_HARM) //Flogging + if(user.a_intent == "harm") //Flogging ..() else return /obj/item/weapon/gun/attackby(obj/item/I, mob/user, params) - if(can_flashlight) - if(istype(I, /obj/item/device/flashlight/seclite)) - var/obj/item/device/flashlight/seclite/S = I - if(!gun_light) + if(istype(I, /obj/item/device/flashlight/seclite)) + var/obj/item/device/flashlight/seclite/S = I + if(can_flashlight) + if(!F) if(!user.unEquip(I)) return user << "You click [S] into place on [src]." if(S.on) - SetLuminosity(0) - gun_light = S + set_light(0) + F = S I.loc = src update_icon() update_gunlight(user) @@ -293,57 +293,51 @@ if(loc == user) A.Grant(user) - if(istype(I, /obj/item/weapon/screwdriver)) - if(gun_light) - for(var/obj/item/device/flashlight/seclite/S in src) - user << "You unscrew the seclite from [src]." - gun_light = null - S.forceMove(get_turf(user)) - update_gunlight(user) - S.update_brightness(user) - update_icon() - verbs -= /obj/item/weapon/gun/proc/toggle_gunlight - for(var/datum/action/item_action/toggle_gunlight/TGL in actions) - qdel(TGL) - else - ..() - + if(istype(I, /obj/item/weapon/screwdriver)) + if(F && can_flashlight) + for(var/obj/item/device/flashlight/seclite/S in src) + user << "You unscrew the seclite from [src]." + F = null + S.loc = get_turf(user) + update_gunlight(user) + S.update_brightness(user) + update_icon() + verbs -= /obj/item/weapon/gun/proc/toggle_gunlight + for(var/datum/action/item_action/toggle_gunlight/TGL in actions) + qdel(TGL) + if(unique_rename) + if(istype(I, /obj/item/weapon/pen)) + rename_gun(user) + ..() /obj/item/weapon/gun/proc/toggle_gunlight() set name = "Toggle Gunlight" set category = "Object" set desc = "Click to toggle your weapon's attached flashlight." - if(!gun_light) + if(!F) return var/mob/living/carbon/human/user = usr - gun_light.on = !gun_light.on - user << "You toggle the gunlight [gun_light.on ? "on":"off"]." + if(!isturf(user.loc)) + user << "You cannot turn the light on while in this [user.loc]!" + F.on = !F.on + user << "You toggle the gunlight [F.on ? "on":"off"]." playsound(user, 'sound/weapons/empty.ogg', 100, 1) update_gunlight(user) return /obj/item/weapon/gun/proc/update_gunlight(mob/user = null) - if(gun_light) - if(gun_light.on) - if(loc == user) - user.AddLuminosity(gun_light.brightness_on) - else if(isturf(loc)) - SetLuminosity(gun_light.brightness_on) + if(F) + if(F.on) + set_light(F.brightness_on) else - if(loc == user) - user.AddLuminosity(-gun_light.brightness_on) - else if(isturf(loc)) - SetLuminosity(0) + set_light(0) update_icon() else - if(loc == user) - user.AddLuminosity(-5) - else if(isturf(loc)) - SetLuminosity(0) + set_light(0) for(var/X in actions) var/datum/action/A = X A.UpdateButtonIcon() @@ -351,19 +345,11 @@ /obj/item/weapon/gun/pickup(mob/user) ..() - if(gun_light) - if(gun_light.on) - user.AddLuminosity(gun_light.brightness_on) - SetLuminosity(0) if(azoom) azoom.Grant(user) /obj/item/weapon/gun/dropped(mob/user) ..() - if(gun_light) - if(gun_light.on) - user.AddLuminosity(-gun_light.brightness_on) - SetLuminosity(gun_light.brightness_on) zoom(user,FALSE) if(azoom) azoom.Remove(user) @@ -389,6 +375,13 @@ update_icon() +/obj/item/weapon/gun/proc/rename_gun(mob/M) + var/input = stripped_input(M,"What do you want to name the gun?", ,"", MAX_NAME_LEN) + + if(src && input && !M.stat && in_range(M,src) && !M.restrained() && M.canmove) + name = input + M << "You name the gun [input]. Say hello to your new friend." + return /obj/item/weapon/gun/proc/handle_suicide(mob/living/carbon/human/user, mob/living/carbon/human/target, params) @@ -399,7 +392,7 @@ return if(user == target) - target.visible_message("[user] sticks [src] in [user.p_their()] mouth, ready to pull the trigger...", \ + target.visible_message("[user] sticks [src] in their mouth, ready to pull the trigger...", \ "You stick [src] in your mouth, ready to pull the trigger...") else target.visible_message("[user] points [src] at [target]'s head, ready to pull the trigger...", \ @@ -494,3 +487,8 @@ azoom = new() azoom.gun = src + +/obj/item/weapon/gun/burn() + if(pin) + qdel(pin) + .=..() diff --git a/code/modules/projectiles/guns/ballistic/bow.dm b/code/modules/projectiles/guns/ballistic/bow.dm deleted file mode 100644 index 27e83e01c8..0000000000 --- a/code/modules/projectiles/guns/ballistic/bow.dm +++ /dev/null @@ -1,106 +0,0 @@ -/obj/item/weapon/gun/ballistic/bow - name = "bow" - desc = "A sturdy bow made out of wood and reinforced with iron." - icon_state = "bow_unloaded" - item_state = "bow" - var/icon_state_loaded = "bow_loaded" - var/icon_state_firing = "bow_firing" - var/item_state_loaded = "bow" - var/item_state_firing = "bow" - fire_sound = 'sound/weapons/grenadelaunch.ogg' - mag_type = /obj/item/ammo_box/magazine/internal/bow - flags = HANDSLOW - weapon_weight = WEAPON_HEAVY - var/draw_sound = 'sound/weapons/draw_bow.ogg' - var/ready_to_fire = 0 - var/slowdown_when_ready = 2 - -/obj/item/weapon/gun/ballistic/bow/update_icon() - if(ready_to_fire) - icon_state = icon_state_firing - item_state = item_state_firing - slowdown = slowdown_when_ready - else if(magazine.ammo_count() && !ready_to_fire) - icon_state = icon_state_loaded - item_state = item_state_loaded - slowdown = initial(slowdown) - else - icon_state = initial(icon_state) - item_state = initial(item_state) - slowdown = initial(slowdown) - -/obj/item/weapon/gun/ballistic/bow/dropped(mob/user) - if(magazine && magazine.ammo_count()) - magazine.empty_magazine() - ready_to_fire = FALSE - update_icon() - -/obj/item/weapon/gun/ballistic/bow/attack_self(mob/living/user) - if(!ready_to_fire && magazine.ammo_count()) - ready_to_fire = TRUE - playsound(user, draw_sound, 100, 1) - update_icon() - else - ready_to_fire = FALSE - update_icon() - -/obj/item/weapon/gun/ballistic/bow/attackby(obj/item/A, mob/user, params) - var/num_loaded = magazine.attackby(A, user, params, 1) - if(num_loaded) - user << "You ready \the [A] into \the [src]." - update_icon() - chamber_round() - -/obj/item/weapon/gun/ballistic/bow/can_shoot() - . = ..() - if(!ready_to_fire) - return FALSE - -/obj/item/weapon/gun/ballistic/bow/shoot_with_empty_chamber(mob/living/user as mob|obj) - return - -/obj/item/weapon/gun/ballistic/bow/process_chamber(eject_casing = 0, empty_chamber = 1) - . = ..() - ready_to_fire = FALSE - update_icon() - -// ammo -/obj/item/ammo_box/magazine/internal/bow - name = "bow internal magazine" - ammo_type = /obj/item/ammo_casing/caseless/arrow - caliber = "arrow" - max_ammo = 1 - - -/obj/item/projectile/bullet/reusable/arrow - name = "arrow" - icon_state = "arrow" - ammo_type = /obj/item/ammo_casing/caseless/arrow - range = 10 - damage = 25 - damage_type = BRUTE - -/obj/item/ammo_casing/caseless/arrow - name = "arrow" - desc = "Stab, stab, stab." - icon_state = "arrow" - force = 10 - sharpness = IS_SHARP - projectile_type = /obj/item/projectile/bullet/reusable/arrow - caliber = "arrow" - -//quiver -/obj/item/weapon/storage/backpack/quiver - name = "quiver" - desc = "A quiver for holding arrows." - icon_state = "quiver" - item_state = "quiver" - storage_slots = 20 - can_hold = list( - /obj/item/ammo_casing/caseless/arrow - ) - -/obj/item/weapon/storage/backpack/quiver/full/New() - ..() - for(var/i in 1 to storage_slots) - new /obj/item/ammo_casing/caseless/arrow(src) diff --git a/code/modules/projectiles/guns/energy.dm b/code/modules/projectiles/guns/energy.dm index d36942ed7a..58645f289a 100644 --- a/code/modules/projectiles/guns/energy.dm +++ b/code/modules/projectiles/guns/energy.dm @@ -16,12 +16,9 @@ var/selfcharge = 0 var/charge_tick = 0 var/charge_delay = 4 - var/use_cyborg_cell = 0 //whether the gun's cell drains the cyborg user's cell to recharge /obj/item/weapon/gun/energy/emp_act(severity) power_supply.use(round(power_supply.charge / severity)) - chambered = null //we empty the chamber - recharge_newshot() //and try to charge a new shot update_icon() @@ -32,13 +29,6 @@ else power_supply = new(src) power_supply.give(power_supply.maxcharge) - update_ammo_types() - recharge_newshot(1) - if(selfcharge) - START_PROCESSING(SSobj, src) - update_icon() - -/obj/item/weapon/gun/energy/proc/update_ammo_types() var/obj/item/ammo_casing/energy/shot for (var/i = 1, i <= ammo_type.len, i++) var/shottype = ammo_type[i] @@ -47,11 +37,12 @@ shot = ammo_type[select] fire_sound = shot.fire_sound fire_delay = shot.delay + if(selfcharge) + START_PROCESSING(SSobj, src) + update_icon() + return /obj/item/weapon/gun/energy/Destroy() - if(power_supply) - qdel(power_supply) - power_supply = null STOP_PROCESSING(SSobj, src) return ..() @@ -64,8 +55,6 @@ if(!power_supply) return power_supply.give(100) - if(!chambered) //if empty chamber we try to charge a new shot - recharge_newshot(1) update_icon() /obj/item/weapon/gun/energy/attack_self(mob/living/user as mob) @@ -73,33 +62,29 @@ select_fire(user) update_icon() +/obj/item/weapon/gun/energy/afterattack(atom/target as mob|obj|turf, mob/living/user as mob|obj, params) + newshot() //prepare a new shot + ..() + /obj/item/weapon/gun/energy/can_shoot() var/obj/item/ammo_casing/energy/shot = ammo_type[select] return power_supply.charge >= shot.e_cost -/obj/item/weapon/gun/energy/recharge_newshot(no_cyborg_drain) +/obj/item/weapon/gun/energy/newshot() if (!ammo_type || !power_supply) return - if(use_cyborg_cell && !no_cyborg_drain) - if(iscyborg(loc)) - var/mob/living/silicon/robot/R = loc - if(R.cell) - var/obj/item/ammo_casing/energy/shot = ammo_type[select] //Necessary to find cost of shot - if(R.cell.use(shot.e_cost)) //Take power from the borg... - power_supply.give(shot.e_cost) //... to recharge the shot - if(!chambered) - var/obj/item/ammo_casing/energy/AC = ammo_type[select] - if(power_supply.charge >= AC.e_cost) //if there's enough power in the power_supply cell... - chambered = AC //...prepare a new shot based on the current ammo type selected - if(!chambered.BB) - chambered.newshot() + var/obj/item/ammo_casing/energy/shot = ammo_type[select] + if(power_supply.charge >= shot.e_cost) //if there's enough power in the power_supply cell... + chambered = shot //...prepare a new shot based on the current ammo type selected + chambered.newshot() + return /obj/item/weapon/gun/energy/process_chamber() if(chambered && !chambered.BB) //if BB is null, i.e the shot has been fired... var/obj/item/ammo_casing/energy/shot = chambered power_supply.use(shot.e_cost)//... drain the power_supply cell chambered = null //either way, released the prepared shot - recharge_newshot() //try to charge a new shot + return /obj/item/weapon/gun/energy/proc/select_fire(mob/living/user) select++ @@ -110,8 +95,6 @@ fire_delay = shot.delay if (shot.select_name) user << "[src] is now set to [shot.select_name]." - chambered = null - recharge_newshot(1) update_icon() return @@ -136,9 +119,9 @@ add_overlay(image(icon = icon, icon_state = iconState, pixel_x = ammo_x_offset * (i -1))) else add_overlay(image(icon = icon, icon_state = "[icon_state]_charge[ratio]")) - if(gun_light && can_flashlight) + if(F && can_flashlight) var/iconF = "flight" - if(gun_light.on) + if(F.on) iconF = "flight_on" add_overlay(image(icon = icon, icon_state = iconF, pixel_x = flight_x_offset, pixel_y = flight_y_offset)) if(itemState) @@ -150,10 +133,10 @@ /obj/item/weapon/gun/energy/suicide_act(mob/user) if (src.can_shoot()) - user.visible_message("[user] is putting the barrel of [src] in [user.p_their()] mouth. It looks like [user.p_theyre()] trying to commit suicide!") + user.visible_message("[user] is putting the barrel of the [src.name] in \his mouth. It looks like \he's trying to commit suicide.") sleep(25) - if(user.is_holding(src)) - user.visible_message("[user] melts [user.p_their()] face off with [src]!") + if(user.l_hand == src || user.r_hand == src) + user.visible_message("[user] melts \his face off with the [src.name]!") playsound(loc, fire_sound, 50, 1, -1) var/obj/item/ammo_casing/energy/shot = ammo_type[select] power_supply.use(shot.e_cost) @@ -163,17 +146,27 @@ user.visible_message("[user] panics and starts choking to death!") return(OXYLOSS) else - user.visible_message("[user] is pretending to blow [user.p_their()] brains out with [src]! It looks like [user.p_theyre()] trying to commit suicide!") + user.visible_message("[user] is pretending to blow \his brains out with the [src.name]! It looks like \he's trying to commit suicide!") playsound(loc, 'sound/weapons/empty.ogg', 50, 1, -1) return (OXYLOSS) +/obj/item/weapon/gun/energy/proc/robocharge() + if(isrobot(src.loc)) + var/mob/living/silicon/robot/R = src.loc + if(R && R.cell) + var/obj/item/ammo_casing/energy/shot = ammo_type[select] //Necessary to find cost of shot + if(R.cell.use(shot.e_cost)) //Take power from the borg... + power_supply.give(shot.e_cost) //... to recharge the shot -/obj/item/weapon/gun/energy/vv_edit_var(var_name, var_value) - switch(var_name) - if("selfcharge") - if(var_value) - START_PROCESSING(SSobj, src) - else - STOP_PROCESSING(SSobj, src) - . = ..() +/obj/item/weapon/gun/energy/on_varedit(modified_var) + if(modified_var == "selfcharge") + if(selfcharge) + START_PROCESSING(SSobj, src) + else + STOP_PROCESSING(SSobj, src) + ..() +/obj/item/weapon/gun/energy/burn() + if(power_supply) + qdel(power_supply) + .=..() diff --git a/code/modules/projectiles/guns/energy/kinetic_accelerator.dm b/code/modules/projectiles/guns/energy/kinetic_accelerator.dm deleted file mode 100644 index b8dda1739d..0000000000 --- a/code/modules/projectiles/guns/energy/kinetic_accelerator.dm +++ /dev/null @@ -1,413 +0,0 @@ -/obj/item/weapon/gun/energy/kinetic_accelerator - name = "proto-kinetic accelerator" - desc = "A self recharging, ranged mining tool that does increased damage in low pressure. Capable of holding up to six slots worth of mod kits." - icon_state = "kineticgun" - item_state = "kineticgun" - ammo_type = list(/obj/item/ammo_casing/energy/kinetic) - cell_type = /obj/item/weapon/stock_parts/cell/emproof - needs_permit = 0 - unique_rename = 1 - origin_tech = "combat=3;powerstorage=3;engineering=3" - weapon_weight = WEAPON_LIGHT - can_flashlight = 1 - flight_x_offset = 15 - flight_y_offset = 9 - var/overheat_time = 16 - var/holds_charge = FALSE - var/unique_frequency = FALSE // modified by KA modkits - var/overheat = FALSE - - var/max_mod_capacity = 100 - var/list/modkits = list() - - var/empty_state = "kineticgun_empty" - -/obj/item/weapon/gun/energy/kinetic_accelerator/examine(mob/user) - ..() - if(max_mod_capacity) - user << "[get_remaining_mod_capacity()]% mod capacity remaining." - for(var/A in get_modkits()) - var/obj/item/borg/upgrade/modkit/M = A - user << "There is a [M.name] mod installed, using [M.cost]% capacity." - -/obj/item/weapon/gun/energy/kinetic_accelerator/attackby(obj/item/A, mob/user) - if(istype(A, /obj/item/weapon/crowbar)) - if(modkits.len) - user << "You pry the modifications out." - playsound(loc, A.usesound, 100, 1) - for(var/obj/item/borg/upgrade/modkit/M in modkits) - M.uninstall(src) - else - user << "There are no modifications currently installed." - else if(istype(A, /obj/item/borg/upgrade/modkit)) - var/obj/item/borg/upgrade/modkit/MK = A - MK.install(src, user) - else - ..() - -/obj/item/weapon/gun/energy/kinetic_accelerator/proc/get_remaining_mod_capacity() - var/current_capacity_used = 0 - for(var/A in get_modkits()) - var/obj/item/borg/upgrade/modkit/M = A - current_capacity_used += M.cost - return max_mod_capacity - current_capacity_used - -/obj/item/weapon/gun/energy/kinetic_accelerator/proc/get_modkits() - . = list() - for(var/A in modkits) - . += A - -/obj/item/weapon/gun/energy/kinetic_accelerator/proc/modify_projectile(obj/item/projectile/kinetic/K) - for(var/A in get_modkits()) - var/obj/item/borg/upgrade/modkit/M = A - M.modify_projectile(K) - -/obj/item/weapon/gun/energy/kinetic_accelerator/cyborg - holds_charge = TRUE - unique_frequency = TRUE - max_mod_capacity = 80 - -/obj/item/weapon/gun/energy/kinetic_accelerator/New() - . = ..() - if(!holds_charge) - empty() - -/obj/item/weapon/gun/energy/kinetic_accelerator/shoot_live_shot() - . = ..() - attempt_reload() - -/obj/item/weapon/gun/energy/kinetic_accelerator/equipped(mob/user) - . = ..() - if(!can_shoot()) - attempt_reload() - -/obj/item/weapon/gun/energy/kinetic_accelerator/dropped() - . = ..() - if(!holds_charge) - // Put it on a delay because moving item from slot to hand - // calls dropped(). - addtimer(src, "empty_if_not_held", 2) - -/obj/item/weapon/gun/energy/kinetic_accelerator/proc/empty_if_not_held() - if(!ismob(loc)) - empty() - -/obj/item/weapon/gun/energy/kinetic_accelerator/proc/empty() - power_supply.use(500) - update_icon() - -/obj/item/weapon/gun/energy/kinetic_accelerator/proc/attempt_reload() - if(overheat) - return - overheat = TRUE - - var/carried = 0 - if(!unique_frequency) - for(var/obj/item/weapon/gun/energy/kinetic_accelerator/K in \ - loc.GetAllContents()) - - carried++ - - carried = max(carried, 1) - else - carried = 1 - - addtimer(src, "reload", overheat_time * carried) - -/obj/item/weapon/gun/energy/kinetic_accelerator/emp_act(severity) - return - -/obj/item/weapon/gun/energy/kinetic_accelerator/proc/reload() - power_supply.give(500) - recharge_newshot(1) - if(!suppressed) - playsound(src.loc, 'sound/weapons/kenetic_reload.ogg', 60, 1) - else - loc << "[src] silently charges up." - update_icon() - overheat = FALSE - -/obj/item/weapon/gun/energy/kinetic_accelerator/update_icon() - cut_overlays() - if(empty_state && !can_shoot()) - add_overlay(empty_state) - - if(gun_light && can_flashlight) - var/iconF = "flight" - if(gun_light.on) - iconF = "flight_on" - add_overlay(image(icon = icon, icon_state = iconF, pixel_x = flight_x_offset, pixel_y = flight_y_offset)) - - -//Casing -/obj/item/ammo_casing/energy/kinetic - projectile_type = /obj/item/projectile/kinetic - select_name = "kinetic" - e_cost = 500 - fire_sound = 'sound/weapons/Kenetic_accel.ogg' // fine spelling there chap - -/obj/item/ammo_casing/energy/kinetic/ready_proj(atom/target, mob/living/user, quiet, zone_override = "") - ..() - if(loc && istype(loc, /obj/item/weapon/gun/energy/kinetic_accelerator)) - var/obj/item/weapon/gun/energy/kinetic_accelerator/KA = loc - KA.modify_projectile(BB) - - var/turf/proj_turf = get_turf(BB) - if(!isturf(proj_turf)) - return - var/datum/gas_mixture/environment = proj_turf.return_air() - var/pressure = environment.return_pressure() - if(pressure > 50) - BB.name = "weakened [BB.name]" - var/obj/item/projectile/kinetic/K = BB - K.damage *= K.pressure_decrease - - -//Projectiles -/obj/item/projectile/kinetic - name = "kinetic force" - icon_state = null - damage = 40 - damage_type = BRUTE - flag = "bomb" - range = 3 - log_override = TRUE - - var/pressure_decrease = 0.25 - var/turf_aoe = FALSE - var/mob_aoe = 0 - var/list/hit_overlays = list() - -/obj/item/projectile/kinetic/on_range() - strike_thing() - ..() - -/obj/item/projectile/kinetic/on_hit(atom/target) - strike_thing(target) - . = ..() - -/obj/item/projectile/kinetic/proc/strike_thing(atom/target) - var/turf/target_turf = get_turf(target) - if(!target_turf) - target_turf = get_turf(src) - if(ismineralturf(target_turf)) - var/turf/closed/mineral/M = target_turf - M.gets_drilled(firer) - var/obj/effect/overlay/temp/kinetic_blast/K = PoolOrNew(/obj/effect/overlay/temp/kinetic_blast, target_turf) - K.color = color - for(var/type in hit_overlays) - PoolOrNew(type, target_turf) - if(turf_aoe) - for(var/T in RANGE_TURFS(1, target_turf) - target_turf) - if(ismineralturf(T)) - var/turf/closed/mineral/M = T - M.gets_drilled(firer) - if(mob_aoe) - for(var/mob/living/L in range(1, target_turf) - firer - target) - var/armor = L.run_armor_check(def_zone, flag, "", "", armour_penetration) - L.apply_damage(damage*mob_aoe, damage_type, def_zone, armor) - L << "You're struck by a [name]!" - - -//Modkits -/obj/item/borg/upgrade/modkit - name = "modification kit" - desc = "An upgrade for kinetic accelerators." - icon = 'icons/obj/objects.dmi' - icon_state = "modkit" - origin_tech = "programming=2;materials=2;magnets=4" - require_module = 1 - module_type = /obj/item/weapon/robot_module/miner - var/denied_type = null - var/maximum_of_type = 1 - var/cost = 30 - var/modifier = 1 //For use in any mod kit that has numerical modifiers - -/obj/item/borg/upgrade/modkit/examine(mob/user) - ..() - user << "Occupies [cost]% of mod capacity." - -/obj/item/borg/upgrade/modkit/attackby(obj/item/A, mob/user) - if(istype(A, /obj/item/weapon/gun/energy/kinetic_accelerator) && !issilicon(user)) - install(A, user) - else - ..() - -/obj/item/borg/upgrade/modkit/action(mob/living/silicon/robot/R) - if(..()) - return - - for(var/obj/item/weapon/gun/energy/kinetic_accelerator/cyborg/H in R.module.modules) - return install(H, usr) - -/obj/item/borg/upgrade/modkit/proc/install(obj/item/weapon/gun/energy/kinetic_accelerator/KA, mob/user) - . = TRUE - if(denied_type) - var/number_of_denied = 0 - for(var/A in KA.get_modkits()) - var/obj/item/borg/upgrade/modkit/M = A - if(istype(M, denied_type)) - number_of_denied++ - if(number_of_denied >= maximum_of_type) - . = FALSE - break - if(KA.get_remaining_mod_capacity() >= cost) - if(.) - user << "You install the modkit." - playsound(loc, 'sound/items/Screwdriver.ogg', 100, 1) - user.unEquip(src) - forceMove(KA) - KA.modkits += src - else - user << "The modkit you're trying to install would conflict with an already installed modkit. Use a crowbar to remove existing modkits." - else - user << "You don't have room([KA.get_remaining_mod_capacity()]% remaining, [cost]% needed) to install this modkit. Use a crowbar to remove existing modkits." - . = FALSE - - - -/obj/item/borg/upgrade/modkit/proc/uninstall(obj/item/weapon/gun/energy/kinetic_accelerator/KA) - forceMove(get_turf(KA)) - KA.modkits -= src - -/obj/item/borg/upgrade/modkit/proc/modify_projectile(obj/item/projectile/kinetic/K) - - -//Range -/obj/item/borg/upgrade/modkit/range - name = "range increase" - desc = "Increases the range of a kinetic accelerator when installed." - modifier = 1 - cost = 24 //so you can fit four plus a tracer cosmetic - -/obj/item/borg/upgrade/modkit/range/modify_projectile(obj/item/projectile/kinetic/K) - K.range += modifier - - -//Damage -/obj/item/borg/upgrade/modkit/damage - name = "damage increase" - desc = "Increases the damage of kinetic accelerator when installed." - modifier = 10 - -/obj/item/borg/upgrade/modkit/damage/modify_projectile(obj/item/projectile/kinetic/K) - K.damage += modifier - - -//Cooldown -/obj/item/borg/upgrade/modkit/cooldown - name = "cooldown decrease" - desc = "Decreases the cooldown of a kinetic accelerator." - modifier = 2.5 - -/obj/item/borg/upgrade/modkit/cooldown/install(obj/item/weapon/gun/energy/kinetic_accelerator/KA, mob/user) - . = ..() - if(.) - KA.overheat_time -= modifier - -/obj/item/borg/upgrade/modkit/cooldown/uninstall(obj/item/weapon/gun/energy/kinetic_accelerator/KA) - KA.overheat_time += modifier - ..() - - -//AoE blasts -/obj/item/borg/upgrade/modkit/aoe - modifier = 0 - -/obj/item/borg/upgrade/modkit/aoe/modify_projectile(obj/item/projectile/kinetic/K) - K.name = "kinetic explosion" - if(!K.turf_aoe && !K.mob_aoe) - K.hit_overlays += /obj/effect/overlay/temp/explosion/fast - K.mob_aoe += modifier - -/obj/item/borg/upgrade/modkit/aoe/turfs - name = "mining explosion" - desc = "Causes the kinetic accelerator to destroy rock in an AoE." - denied_type = /obj/item/borg/upgrade/modkit/aoe/turfs - -/obj/item/borg/upgrade/modkit/aoe/turfs/modify_projectile(obj/item/projectile/kinetic/K) - ..() - K.turf_aoe = TRUE - -/obj/item/borg/upgrade/modkit/aoe/turfs/andmobs - name = "offensive mining explosion" - desc = "Causes the kinetic accelerator to destroy rock and damage mobs in an AoE." - maximum_of_type = 3 - modifier = 0.25 - -/obj/item/borg/upgrade/modkit/aoe/mobs - name = "offensive explosion" - desc = "Causes the kinetic accelerator to damage mobs in an AoE." - modifier = 0.2 - - -//Indoors -/obj/item/borg/upgrade/modkit/indoors - name = "decrease pressure penalty" - desc = "Increases the damage a kinetic accelerator does in a high pressure environment." - modifier = 2 - denied_type = /obj/item/borg/upgrade/modkit/indoors - maximum_of_type = 2 - cost = 40 - -/obj/item/borg/upgrade/modkit/indoors/modify_projectile(obj/item/projectile/kinetic/K) - K.pressure_decrease *= modifier - - -//Trigger Guard -/obj/item/borg/upgrade/modkit/trigger_guard - name = "modified trigger guard" - desc = "Allows creatures normally incapable of firing guns to operate the weapon when installed." - cost = 20 - denied_type = /obj/item/borg/upgrade/modkit/trigger_guard - -/obj/item/borg/upgrade/modkit/trigger_guard/install(obj/item/weapon/gun/energy/kinetic_accelerator/KA, mob/user) - . = ..() - if(.) - KA.trigger_guard = TRIGGER_GUARD_ALLOW_ALL - -/obj/item/borg/upgrade/modkit/trigger_guard/uninstall(obj/item/weapon/gun/energy/kinetic_accelerator/KA) - KA.trigger_guard = TRIGGER_GUARD_NORMAL - ..() - - -//Cosmetic - -/obj/item/borg/upgrade/modkit/chassis_mod - name = "super chassis" - desc = "Makes your KA yellow. All the fun of having a more powerful KA without actually having a more powerful KA." - cost = 10 - denied_type = /obj/item/borg/upgrade/modkit/chassis_mod - var/chassis_icon = "kineticgun_u" - -/obj/item/borg/upgrade/modkit/chassis_mod/install(obj/item/weapon/gun/energy/kinetic_accelerator/KA, mob/user) - . = ..() - if(.) - KA.icon_state = chassis_icon - -/obj/item/borg/upgrade/modkit/chassis_mod/uninstall(obj/item/weapon/gun/energy/kinetic_accelerator/KA) - KA.icon_state = initial(KA.icon_state) - ..() - -/obj/item/borg/upgrade/modkit/chassis_mod/orange - name = "hyper chassis" - desc = "Makes your KA orange. All the fun of having explosive blasts without actually having explosive blasts." - chassis_icon = "kineticgun_h" - -/obj/item/borg/upgrade/modkit/tracer - name = "white tracer bolts" - desc = "Causes kinetic accelerator bolts to have a white tracer trail and explosion." - cost = 4 - denied_type = /obj/item/borg/upgrade/modkit/tracer - var/bolt_color = "#FFFFFF" - -/obj/item/borg/upgrade/modkit/tracer/modify_projectile(obj/item/projectile/kinetic/K) - K.icon_state = "ka_tracer" - K.color = bolt_color - -/obj/item/borg/upgrade/modkit/tracer/adjustable - name = "adjustable tracer bolts" - desc = "Causes kinetic accelerator bolts to have a adjustably-colored tracer trail and explosion. Use in-hand to change color." - -/obj/item/borg/upgrade/modkit/tracer/adjustable/attack_self(mob/user) - bolt_color = input(user,"Choose Color") as color diff --git a/code/modules/projectiles/guns/energy/laser.dm b/code/modules/projectiles/guns/energy/laser.dm index 7b0b9dcaca..677a46c118 100644 --- a/code/modules/projectiles/guns/energy/laser.dm +++ b/code/modules/projectiles/guns/energy/laser.dm @@ -3,7 +3,7 @@ desc = "A basic energy-based laser gun that fires concentrated beams of light which pass through glass and thin metal." icon_state = "laser" item_state = "laser" - w_class = WEIGHT_CLASS_NORMAL + w_class = 3 materials = list(MAT_METAL=2000) origin_tech = "combat=4;magnets=2" ammo_type = list(/obj/item/ammo_casing/energy/lasergun) @@ -33,7 +33,6 @@ origin_tech = null ammo_x_offset = 3 selfcharge = 1 - resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | ACID_PROOF /obj/item/weapon/gun/energy/laser/captain/scattershot name = "scatter shot laser rifle" @@ -47,7 +46,10 @@ can_charge = 0 desc = "An energy-based laser gun that draws power from the cyborg's internal energy cell directly. So this is what freedom looks like?" origin_tech = null - use_cyborg_cell = 1 + +/obj/item/weapon/gun/energy/laser/cyborg/newshot() + ..() + robocharge() /obj/item/weapon/gun/energy/laser/cyborg/emp_act() return @@ -57,16 +59,6 @@ desc = "A laser gun equipped with a refraction kit that spreads bolts." ammo_type = list(/obj/item/ammo_casing/energy/laser/scatter, /obj/item/ammo_casing/energy/laser) -/obj/item/weapon/gun/energy/laser/scatter/shotty - name = "energy shotgun" - icon = 'icons/obj/guns/projectile.dmi' - icon_state = "cshotgun" - item_state = "shotgun" - desc = "A combat shotgun gutted and refitted with an internal laser system. Can switch between taser and scattered disabler shots." - shaded_charge = 0 - pin = /obj/item/device/firing_pin/implant/mindshield - ammo_type = list(/obj/item/ammo_casing/energy/laser/scatter/disabler, /obj/item/ammo_casing/energy/electrode) - ///Laser Cannon /obj/item/weapon/gun/energy/lasercannon @@ -74,7 +66,7 @@ desc = "An advanced laser cannon that does more damage the farther away the target is." icon_state = "lasercannon" item_state = "laser" - w_class = WEIGHT_CLASS_BULKY + w_class = 4 force = 10 flags = CONDUCT slot_flags = SLOT_BACK diff --git a/code/modules/projectiles/guns/energy/energy_gun.dm b/code/modules/projectiles/guns/energy/nuclear.dm similarity index 54% rename from code/modules/projectiles/guns/energy/energy_gun.dm rename to code/modules/projectiles/guns/energy/nuclear.dm index 7bc85ce766..0c0bfb227d 100644 --- a/code/modules/projectiles/guns/energy/energy_gun.dm +++ b/code/modules/projectiles/guns/energy/nuclear.dm @@ -1,43 +1,37 @@ -/obj/item/weapon/gun/energy/e_gun +/obj/item/weapon/gun/energy/gun name = "energy gun" desc = "A basic hybrid energy gun with two settings: disable and kill." icon_state = "energy" item_state = null //so the human update icon uses the icon_state instead. ammo_type = list(/obj/item/ammo_casing/energy/disabler, /obj/item/ammo_casing/energy/laser) origin_tech = "combat=4;magnets=3" - modifystate = 1 + modifystate = 2 can_flashlight = 1 ammo_x_offset = 3 flight_x_offset = 15 flight_y_offset = 10 -/obj/item/weapon/gun/energy/e_gun/mini +/obj/item/weapon/gun/energy/gun/mini name = "miniature energy gun" desc = "A small, pistol-sized energy gun with a built-in flashlight. It has two settings: stun and kill." icon_state = "mini" item_state = "gun" - w_class = WEIGHT_CLASS_SMALL + w_class = 2 cell_type = /obj/item/weapon/stock_parts/cell{charge = 600; maxcharge = 600} ammo_x_offset = 2 charge_sections = 3 can_flashlight = 0 // Can't attach or detach the flashlight, and override it's icon update -/obj/item/weapon/gun/energy/e_gun/mini/New() - gun_light = new /obj/item/device/flashlight/seclite(src) +/obj/item/weapon/gun/energy/gun/mini/New() + F = new /obj/item/device/flashlight/seclite(src) ..() -/obj/item/weapon/gun/energy/e_gun/mini/update_icon() +/obj/item/weapon/gun/energy/gun/mini/update_icon() ..() - if(gun_light && gun_light.on) + if(F && F.on) add_overlay("mini-light") -/obj/item/weapon/gun/energy/e_gun/mini/practice_phaser - name = "practice phaser" - desc = "A modified version of the basic phaser gun, this one fires less concentrated energy bolts designed for target practice." - ammo_type = list(/obj/item/ammo_casing/energy/disabler, /obj/item/ammo_casing/energy/laser/practice) - icon_state = "decloner" - -/obj/item/weapon/gun/energy/e_gun/hos +/obj/item/weapon/gun/energy/gun/hos name = "\improper X-01 MultiPhase Energy Gun" desc = "This is an expensive, modern recreation of an antique laser gun. This gun has several unique firemodes, but lacks the ability to recharge over time." icon_state = "hoslaser" @@ -45,9 +39,8 @@ force = 10 ammo_type = list(/obj/item/ammo_casing/energy/electrode/hos, /obj/item/ammo_casing/energy/laser/hos, /obj/item/ammo_casing/energy/disabler) ammo_x_offset = 4 - resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | ACID_PROOF -/obj/item/weapon/gun/energy/e_gun/dragnet +/obj/item/weapon/gun/energy/gun/dragnet name = "\improper DRAGnet" desc = "The \"Dynamic Rapid-Apprehension of the Guilty\" net is a revolution in law enforcement technology." icon_state = "dragnet" @@ -56,25 +49,25 @@ can_flashlight = 0 ammo_x_offset = 1 -/obj/item/weapon/gun/energy/e_gun/dragnet/snare +/obj/item/weapon/gun/energy/gun/dragnet/snare name = "Energy Snare Launcher" desc = "Fires an energy snare that slows the target down" ammo_type = list(/obj/item/ammo_casing/energy/trap) -/obj/item/weapon/gun/energy/e_gun/turret +/obj/item/weapon/gun/energy/gun/turret name = "hybrid turret gun" desc = "A heavy hybrid energy cannon with two settings: Stun and kill." icon_state = "turretlaser" item_state = "turretlaser" slot_flags = null - w_class = WEIGHT_CLASS_HUGE + w_class = 5 ammo_type = list(/obj/item/ammo_casing/energy/electrode, /obj/item/ammo_casing/energy/laser) - weapon_weight = WEAPON_HEAVY + weapon_weight = WEAPON_MEDIUM can_flashlight = 0 trigger_guard = TRIGGER_GUARD_NONE ammo_x_offset = 2 -/obj/item/weapon/gun/energy/e_gun/nuclear +/obj/item/weapon/gun/energy/gun/nuclear name = "advanced energy gun" desc = "An energy gun with an experimental miniaturized nuclear reactor that automatically charges the internal power cell." icon_state = "nucgun" @@ -86,46 +79,3 @@ ammo_x_offset = 1 ammo_type = list(/obj/item/ammo_casing/energy/electrode, /obj/item/ammo_casing/energy/laser, /obj/item/ammo_casing/energy/disabler) selfcharge = 1 - var/fail_tick = 0 - var/fail_chance = 0 - -/obj/item/weapon/gun/energy/e_gun/nuclear/process() - if(fail_tick > 0) - fail_tick-- - ..() - -/obj/item/weapon/gun/energy/e_gun/nuclear/shoot_live_shot() - failcheck() - update_icon() - ..() - -/obj/item/weapon/gun/energy/e_gun/nuclear/proc/failcheck() - if(prob(fail_chance) && isliving(loc)) - var/mob/living/M = loc - switch(fail_tick) - if(0 to 200) - fail_tick += (2*(fail_chance)) - M.rad_act(40) - M << "Your [name] feels warmer." - if(201 to INFINITY) - SSobj.processing.Remove(src) - M.rad_act(80) - crit_fail = 1 - M << "Your [name]'s reactor overloads!" - -/obj/item/weapon/gun/energy/e_gun/nuclear/emp_act(severity) - ..() - fail_chance = min(fail_chance + round(15/severity), 100) - -/obj/item/weapon/gun/energy/e_gun/nuclear/update_icon() - ..() - if(crit_fail) - add_overlay("[icon_state]_fail_3") - else - switch(fail_tick) - if(0) - add_overlay("[icon_state]_fail_0") - if(1 to 150) - add_overlay("[icon_state]_fail_1") - if(151 to INFINITY) - add_overlay("[icon_state]_fail_2") diff --git a/code/modules/projectiles/guns/energy/pulse.dm b/code/modules/projectiles/guns/energy/pulse.dm index d7fef273a0..80e56b45e6 100644 --- a/code/modules/projectiles/guns/energy/pulse.dm +++ b/code/modules/projectiles/guns/energy/pulse.dm @@ -3,7 +3,7 @@ desc = "A heavy-duty, multifaceted energy rifle with three modes. Preferred by front-line combat personnel." icon_state = "pulse" item_state = null - w_class = WEIGHT_CLASS_BULKY + w_class = 4 force = 10 flags = CONDUCT slot_flags = SLOT_BACK @@ -39,7 +39,7 @@ /obj/item/weapon/gun/energy/pulse/carbine name = "pulse carbine" desc = "A compact variant of the pulse rifle with less firepower but easier storage." - w_class = WEIGHT_CLASS_NORMAL + w_class = 3 slot_flags = SLOT_BELT icon_state = "pulse_carbine" item_state = "pulse" @@ -54,7 +54,7 @@ /obj/item/weapon/gun/energy/pulse/pistol name = "pulse pistol" desc = "A pulse rifle in an easily concealed handgun package with low capacity." - w_class = WEIGHT_CLASS_SMALL + w_class = 2 slot_flags = SLOT_BELT icon_state = "pulse_pistol" item_state = "gun" diff --git a/code/modules/projectiles/guns/energy/special.dm b/code/modules/projectiles/guns/energy/special.dm index 084da43b04..ce9fa743e2 100644 --- a/code/modules/projectiles/guns/energy/special.dm +++ b/code/modules/projectiles/guns/energy/special.dm @@ -5,7 +5,7 @@ item_state = null //so the human update icon uses the icon_state instead. origin_tech = "combat=4;magnets=4" can_flashlight = 1 - w_class = WEIGHT_CLASS_HUGE + w_class = 5 flags = CONDUCT slot_flags = SLOT_BACK ammo_type = list(/obj/item/ammo_casing/energy/ion) @@ -20,7 +20,7 @@ name = "ion carbine" desc = "The MK.II Prototype Ion Projector is a lightweight carbine version of the larger ion rifle, built to be ergonomic and efficient." icon_state = "ioncarbine" - w_class = WEIGHT_CLASS_NORMAL + w_class = 3 slot_flags = SLOT_BELT pin = null ammo_x_offset = 2 @@ -58,7 +58,7 @@ desc = "For the love of god, make sure you're aiming this the right way!" icon_state = "riotgun" item_state = "c20r" - w_class = WEIGHT_CLASS_BULKY + w_class = 4 ammo_type = list(/obj/item/ammo_casing/energy/meteor) cell_type = "/obj/item/weapon/stock_parts/cell/potato" clumsy_check = 0 //Admin spawn only, might as well let clowns use it. @@ -72,7 +72,7 @@ item_state = "pen" lefthand_file = 'icons/mob/inhands/items_lefthand.dmi' righthand_file = 'icons/mob/inhands/items_righthand.dmi' - w_class = WEIGHT_CLASS_TINY + w_class = 1 /obj/item/weapon/gun/energy/mindflayer name = "\improper Mind Flayer" @@ -82,12 +82,152 @@ ammo_type = list(/obj/item/ammo_casing/energy/mindflayer) ammo_x_offset = 2 +/obj/item/weapon/gun/energy/kinetic_accelerator + name = "proto-kinetic accelerator" + desc = "In the year 2544, only a year after the discovery of a potentially \ + world-changing substance, now colloquially referred to as plasma, the \ + Nanotrasen-UEG mining conglomerate introduced a prototype of a gun-like \ + device intended for quick, effective mining of plasma in the low \ + pressures of the solar system. Included in this presentation were \ + demonstrations of the gun being fired at collections of rocks contained \ + in vacuumed environments, obliterating them instantly while maintaining \ + the structure of the ores buried within them. Additionally, volunteers \ + were called from the crowd to have the gun used on them, only proving that \ + the gun caused little harm to objects in standard pressure. \n\ + An official from an unnamed, now long dissipated company observed this \ + presentation and offered to share their self-recharger cells, powered \ + by the user's bioelectrical field, another new and unknown technology. \ + They warned that the cells were incredibly experimental and several times \ + had injured workers, but the scientists as Nanotrasen were unable to resist \ + the money-saving potential of self recharging cells. Upon accepting this \ + offer, it took only a matter of days to prove the volatility of these cells, \ + as they exploded left and right whenever inserted into the prototype devices, \ + only throwing more money in the bin. \n\ + Whenever the Nanotrasen scientists were on the edge of giving up, a \ + breakthrough was made by head researcher Miles Parks McCollum, who \ + demonstrated that the cells could be stabilized when exposed to radium \ + then cooled with cryostylane. After this discovery, the low pressure gun, \ + now named the Kinetic Accelerator, was hastily completed and made compatible \ + with the self-recharging cells. As a result of poor testing, the currently \ + used guns lose their charge when not in use, and when two Kinetic Accelerators \ + come in proximity of one another, they will interfere with each other. Despite \ + this, the shoddy guns still see use in the mining of plasma to this day." + icon_state = "kineticgun" + item_state = "kineticgun" + ammo_type = list(/obj/item/ammo_casing/energy/kinetic) + cell_type = /obj/item/weapon/stock_parts/cell/emproof + // Apparently these are safe to carry? I'm sure goliaths would disagree. + needs_permit = 0 + unique_rename = 1 + origin_tech = "combat=3;powerstorage=3;engineering=3" + weapon_weight = WEAPON_LIGHT + can_flashlight = 1 + flight_x_offset = 15 + flight_y_offset = 9 + var/overheat_time = 16 + var/holds_charge = FALSE + var/unique_frequency = FALSE // modified by KA modkits + var/overheat = FALSE + +/obj/item/weapon/gun/energy/kinetic_accelerator/super + name = "super-kinetic accelerator" + desc = "An upgraded, superior version of the proto-kinetic accelerator." + icon_state = "kineticgun_u" + ammo_type = list(/obj/item/ammo_casing/energy/kinetic/super) + overheat_time = 15 + origin_tech = "materials=5;powerstorage=3;engineering=4;magnets=3;combat=3" + +/obj/item/weapon/gun/energy/kinetic_accelerator/hyper + name = "hyper-kinetic accelerator" + desc = "An upgraded, even more superior version of the proto-kinetic accelerator." + icon_state = "kineticgun_h" + ammo_type = list(/obj/item/ammo_casing/energy/kinetic/hyper) + overheat_time = 14 + origin_tech = "materials=6;powerstorage=4;engineering=4;magnets=4;combat=4" + +/obj/item/weapon/gun/energy/kinetic_accelerator/cyborg + holds_charge = TRUE + unique_frequency = TRUE + +/obj/item/weapon/gun/energy/kinetic_accelerator/hyper/cyborg + holds_charge = TRUE + unique_frequency = TRUE + +/obj/item/weapon/gun/energy/kinetic_accelerator/New() + . = ..() + if(!holds_charge) + empty() + +/obj/item/weapon/gun/energy/kinetic_accelerator/shoot_live_shot() + . = ..() + attempt_reload() + +/obj/item/weapon/gun/energy/kinetic_accelerator/equipped(mob/user) + . = ..() + if(!can_shoot()) + attempt_reload() + +/obj/item/weapon/gun/energy/kinetic_accelerator/dropped() + . = ..() + if(!holds_charge) + // Put it on a delay because moving item from slot to hand + // calls dropped(). + sleep(1) + if(!ismob(loc)) + empty() + +/obj/item/weapon/gun/energy/kinetic_accelerator/proc/empty() + power_supply.use(500) + update_icon() + +/obj/item/weapon/gun/energy/kinetic_accelerator/proc/attempt_reload() + if(overheat) + return + overheat = TRUE + + var/carried = 0 + if(!unique_frequency) + for(var/obj/item/weapon/gun/energy/kinetic_accelerator/K in \ + loc.GetAllContents()) + + carried++ + + carried = max(carried, 1) + else + carried = 1 + + addtimer(src, "reload", overheat_time * carried) + +/obj/item/weapon/gun/energy/kinetic_accelerator/emp_act(severity) + return + +/obj/item/weapon/gun/energy/kinetic_accelerator/proc/reload() + power_supply.give(500) + if(!suppressed) + playsound(src.loc, 'sound/weapons/kenetic_reload.ogg', 60, 1) + else + loc << "[src] silently charges up." + update_icon() + overheat = FALSE + +/obj/item/weapon/gun/energy/kinetic_accelerator/update_icon() + cut_overlays() + if(!can_shoot()) + add_overlay("kineticgun_empty") + + if(F && can_flashlight) + var/iconF = "flight" + if(F.on) + iconF = "flight_on" + add_overlay(image(icon = icon, icon_state = iconF, pixel_x = flight_x_offset, pixel_y = flight_y_offset)) + + /obj/item/weapon/gun/energy/kinetic_accelerator/crossbow name = "mini energy crossbow" desc = "A weapon favored by syndicate stealth specialists." icon_state = "crossbow" item_state = "crossbow" - w_class = WEIGHT_CLASS_SMALL + w_class = 2 materials = list(MAT_METAL=2000) origin_tech = "combat=4;magnets=4;syndicate=5" suppressed = 1 @@ -98,32 +238,31 @@ holds_charge = TRUE unique_frequency = TRUE can_flashlight = 0 - max_mod_capacity = 0 - empty_state = null - -/obj/item/weapon/gun/energy/kinetic_accelerator/crossbow/halloween - name = "candy corn crossbow" - desc = "A weapon favored by Syndicate trick-or-treaters." - icon_state = "crossbow_halloween" - item_state = "crossbow" - ammo_type = list(/obj/item/ammo_casing/energy/bolt/halloween) /obj/item/weapon/gun/energy/kinetic_accelerator/crossbow/large name = "energy crossbow" desc = "A reverse engineered weapon using syndicate technology." icon_state = "crossbowlarge" - w_class = WEIGHT_CLASS_NORMAL + w_class = 3 materials = list(MAT_METAL=4000) origin_tech = "combat=4;magnets=4;syndicate=2" suppressed = 0 ammo_type = list(/obj/item/ammo_casing/energy/bolt/large) pin = null +/obj/item/weapon/gun/energy/kinetic_accelerator/suicide_act(mob/user) + if(!suppressed) + playsound(src.loc, 'sound/weapons/kenetic_reload.ogg', 60, 1) + user.visible_message("[user] cocks the [src.name] and pretends to blow \his brains out! It looks like \he's trying to commit suicide!") + shoot_live_shot() + return (OXYLOSS) + /obj/item/weapon/gun/energy/plasmacutter name = "plasma cutter" desc = "A mining tool capable of expelling concentrated plasma bursts. You could use it to cut limbs off of xenos! Or, you know, mine stuff." icon_state = "plasmacutter" item_state = "plasmacutter" + modifystate = -1 origin_tech = "combat=1;materials=3;magnets=2;plasmatech=3;engineering=1" ammo_type = list(/obj/item/ammo_casing/energy/plasma) flags = CONDUCT | OPENCONTAINER @@ -143,12 +282,10 @@ var/obj/item/stack/sheet/S = A S.use(1) power_supply.give(1000) - recharge_newshot(1) user << "You insert [A] in [src], recharging it." else if(istype(A, /obj/item/weapon/ore/plasma)) qdel(A) power_supply.give(500) - recharge_newshot(1) user << "You insert [A] in [src], recharging it." else ..() @@ -217,7 +354,6 @@ cell_type = "/obj/item/weapon/stock_parts/cell/secborg" ammo_type = list(/obj/item/ammo_casing/energy/c3dbullet) can_charge = 0 - use_cyborg_cell = 1 /obj/item/weapon/gun/energy/printer/update_icon() return @@ -225,6 +361,10 @@ /obj/item/weapon/gun/energy/printer/emp_act() return +/obj/item/weapon/gun/energy/printer/newshot() + ..() + robocharge() + /obj/item/weapon/gun/energy/temperature name = "temperature gun" icon_state = "freezegun" @@ -234,12 +374,6 @@ cell_type = "/obj/item/weapon/stock_parts/cell/high" pin = null -/obj/item/weapon/gun/energy/temperature/security - name = "security temperature gun" - desc = "A weapon that can only be used to its full potential by the truly robust." - origin_tech = "combat=2;materials=2;powerstorage=1;magnets=1" - pin = /obj/item/device/firing_pin - /obj/item/weapon/gun/energy/laser/instakill name = "instakill rifle" icon_state = "instagib" @@ -266,6 +400,8 @@ /obj/item/weapon/gun/energy/gravity_gun name = "one-point bluespace-gravitational manipulator" + icon_state = "gravity_gun" + item_state = "gravity_gun" desc = "An experimental, multi-mode device that fires bolts of Zero-Point Energy, causing local distortions in gravity" ammo_type = list(/obj/item/ammo_casing/energy/gravityrepulse, /obj/item/ammo_casing/energy/gravityattract, /obj/item/ammo_casing/energy/gravitychaos) origin_tech = "combat=4;magnets=4;materials=6;powerstorage=4;bluespace=4" diff --git a/code/modules/projectiles/guns/energy/stun.dm b/code/modules/projectiles/guns/energy/stun.dm index 5391ca1c22..26a4587a2b 100644 --- a/code/modules/projectiles/guns/energy/stun.dm +++ b/code/modules/projectiles/guns/energy/stun.dm @@ -7,18 +7,18 @@ origin_tech = "combat=3" ammo_x_offset = 3 -/obj/item/weapon/gun/energy/tesla_revolver +/obj/item/weapon/gun/energy/shock_revolver name = "tesla gun" - desc = "An experimental gun based on an experimental engine, it's about as likely to kill its operator as it is the target." + desc = "An experimental gun based on an experimental engine, it's about as likely to kill it's operator as it is the target." icon_state = "tesla" item_state = "tesla" - ammo_type = list(/obj/item/ammo_casing/energy/tesla_revolver) + ammo_type = list(/obj/item/ammo_casing/energy/shock_revolver) origin_tech = "combat=4;materials=4;powerstorage=4" can_flashlight = 0 pin = null shaded_charge = 1 -/obj/item/weapon/gun/energy/e_gun/advtaser +/obj/item/weapon/gun/energy/gun/advtaser name = "hybrid taser" desc = "A dual-mode taser designed to fire both short-range high-power electrodes and long-range disabler beams." icon_state = "advtaser" @@ -26,12 +26,15 @@ origin_tech = "combat=4" ammo_x_offset = 2 -/obj/item/weapon/gun/energy/e_gun/advtaser/cyborg +/obj/item/weapon/gun/energy/gun/advtaser/cyborg name = "cyborg taser" desc = "An integrated hybrid taser that draws directly from a cyborg's power cell. The weapon contains a limiter to prevent the cyborg's power cell from overheating." can_flashlight = 0 can_charge = 0 - use_cyborg_cell = 1 + +/obj/item/weapon/gun/energy/gun/advtaser/cyborg/newshot() + ..() + robocharge() /obj/item/weapon/gun/energy/disabler name = "disabler" @@ -45,5 +48,7 @@ name = "cyborg disabler" desc = "An integrated disabler that draws from a cyborg's power cell. This weapon contains a limiter to prevent the cyborg's power cell from overheating." can_charge = 0 - use_cyborg_cell = 1 +/obj/item/weapon/gun/energy/disabler/cyborg/newshot() + ..() + robocharge() diff --git a/code/modules/projectiles/guns/grenade_launcher.dm b/code/modules/projectiles/guns/grenade_launcher.dm index 2e0a3daa80..a5f140cf9c 100644 --- a/code/modules/projectiles/guns/grenade_launcher.dm +++ b/code/modules/projectiles/guns/grenade_launcher.dm @@ -4,7 +4,7 @@ icon = 'icons/obj/guns/projectile.dmi' icon_state = "riotgun" item_state = "riotgun" - w_class = WEIGHT_CLASS_BULKY + w_class = 4 throw_speed = 2 throw_range = 7 force = 5 @@ -36,18 +36,18 @@ if(grenades.len) fire_grenade(target,user) else - user << "The grenade launcher is empty." + usr << "The grenade launcher is empty." /obj/item/weapon/gun/grenadelauncher/proc/fire_grenade(atom/target, mob/user) user.visible_message("[user] fired a grenade!", \ "You fire the grenade launcher!") - var/obj/item/weapon/grenade/F = grenades[1] //Now with less copypasta! + var/obj/item/weapon/grenade/chem_grenade/F = grenades[1] //Now with less copypasta! grenades -= F F.loc = user.loc F.throw_at_fast(target, 30, 2,user) message_admins("[key_name_admin(user)] fired a grenade ([F.name]) from a grenade launcher ([src.name]).") log_game("[key_name(user)] fired a grenade ([F.name]) from a grenade launcher ([src.name]).") F.active = 1 - F.icon_state = initial(F.icon_state) + "_active" + F.icon_state = initial(icon_state) + "_active" playsound(user.loc, 'sound/weapons/armbomb.ogg', 75, 1, -3) addtimer(F, "prime", 15) diff --git a/code/modules/projectiles/guns/magic.dm b/code/modules/projectiles/guns/magic.dm index 2a3b27bf05..d7a6ac11b3 100644 --- a/code/modules/projectiles/guns/magic.dm +++ b/code/modules/projectiles/guns/magic.dm @@ -6,7 +6,7 @@ item_state = "staff" fire_sound = 'sound/weapons/emitter.ogg' flags = CONDUCT - w_class = WEIGHT_CLASS_HUGE + w_class = 5 var/max_charges = 6 var/charges = 0 var/recharge_rate = 4 @@ -23,6 +23,7 @@ righthand_file = 'icons/mob/inhands/items_righthand.dmi' /obj/item/weapon/gun/magic/afterattack(atom/target, mob/living/user, flag) + newshot() if(no_den_usage) var/area/A = get_area(user) if(istype(A, /area/wizard_station)) @@ -35,14 +36,15 @@ /obj/item/weapon/gun/magic/can_shoot() return charges -/obj/item/weapon/gun/magic/recharge_newshot() - if (charges && chambered && !chambered.BB) +/obj/item/weapon/gun/magic/newshot() + if (charges && chambered) chambered.newshot() + return /obj/item/weapon/gun/magic/process_chamber() if(chambered && !chambered.BB) //if BB is null, i.e the shot has been fired... charges--//... drain a charge - recharge_newshot() + return /obj/item/weapon/gun/magic/New() ..() @@ -64,8 +66,6 @@ return 0 charge_tick = 0 charges++ - if(charges == 1) - recharge_newshot() return 1 /obj/item/weapon/gun/magic/update_icon() @@ -73,14 +73,9 @@ /obj/item/weapon/gun/magic/shoot_with_empty_chamber(mob/living/user as mob|obj) user << "The [name] whizzles quietly." + return /obj/item/weapon/gun/magic/suicide_act(mob/user) - user.visible_message("[user] is twisting [src] above [user.p_their()] head, releasing a magical blast! It looks like [user.p_theyre()] trying to commit suicide!") + user.visible_message("[user] is twisting the [src.name] above \his head, releasing a magical blast! It looks like \he's trying to commit suicide.") playsound(loc, fire_sound, 50, 1, -1) - return (FIRELOSS) - -/obj/item/weapon/gun/magic/vv_edit_var(var_name, var_value) - . = ..() - switch (var_name) - if ("charges") - recharge_newshot() \ No newline at end of file + return (FIRELOSS) \ No newline at end of file diff --git a/code/modules/projectiles/guns/magic/staff.dm b/code/modules/projectiles/guns/magic/staff.dm index ba81adbae2..e62055578c 100644 --- a/code/modules/projectiles/guns/magic/staff.dm +++ b/code/modules/projectiles/guns/magic/staff.dm @@ -1,4 +1,4 @@ -/obj/item/weapon/gun/magic/staff +/obj/item/weapon/gun/magic/staff/ slot_flags = SLOT_BACK /obj/item/weapon/gun/magic/staff/change @@ -59,22 +59,3 @@ item_state = "honker" max_charges = 4 recharge_rate = 8 - -/obj/item/weapon/gun/magic/staff/spellblade - name = "spellblade" - desc = "A deadly combination of laziness and boodlust, this blade allows the user to dismember their enemies without all the hard work of actually swinging the sword." - fire_sound = "sound/magic/Fireball.ogg" - ammo_type = /obj/item/ammo_casing/magic/spellblade - icon_state = "spellblade" - item_state = "spellblade" - hitsound = 'sound/weapons/rapierhit.ogg' - force = 20 - armour_penetration = 75 - block_chance = 50 - sharpness = IS_SHARP - max_charges = 4 - -/obj/item/weapon/gun/magic/staff/spellblade/hit_reaction(mob/living/carbon/human/owner, attack_text, final_block_chance, damage, attack_type) - if(attack_type == PROJECTILE_ATTACK) - final_block_chance = 0 - return ..() diff --git a/code/modules/projectiles/guns/magic/wand.dm b/code/modules/projectiles/guns/magic/wand.dm index fe9d2e6e2e..62d0dfa365 100644 --- a/code/modules/projectiles/guns/magic/wand.dm +++ b/code/modules/projectiles/guns/magic/wand.dm @@ -1,10 +1,10 @@ -/obj/item/weapon/gun/magic/wand +/obj/item/weapon/gun/magic/wand/ name = "wand of nothing" desc = "It's not just a stick, it's a MAGIC stick!" ammo_type = /obj/item/ammo_casing/magic icon_state = "nothingwand" item_state = "wand" - w_class = WEIGHT_CLASS_SMALL + w_class = 2 can_charge = 0 max_charges = 100 //100, 50, 50, 34 (max charge distribution by 25%ths) var/variable_charges = 1 @@ -48,9 +48,9 @@ /obj/item/weapon/gun/magic/wand/proc/zap_self(mob/living/user) - user.visible_message("[user] zaps [user.p_them()]self with [src].") + user.visible_message("[user] zaps \himself with [src].") playsound(user, fire_sound, 50, 1) - user.attack_log += "\[[time_stamp()]\] [user]/[user.ckey] zapped [user.p_them()]self with a [src]" + user.attack_log += "\[[time_stamp()]\] [user]/[user.ckey] zapped \himself with a [src]" ///////////////////////////////////// @@ -66,13 +66,12 @@ max_charges = 3 //3, 2, 2, 1 /obj/item/weapon/gun/magic/wand/death/zap_self(mob/living/user) - ..() - user << "You irradiate yourself with pure energy! \ - [pick("Do not pass go. Do not collect 200 zorkmids.","You feel more confident in your spell casting skills.","You Die...","Do you want your possessions identified?")]\ - " + var/message ="You irradiate yourself with pure energy! " + message += pick("Do not pass go. Do not collect 200 zorkmids.","You feel more confident in your spell casting skills.","You Die...","Do you want your possessions identified?") + user << message user.adjustOxyLoss(500) charges-- - + ..() ///////////////////////////////////// //WAND OF HEALING @@ -164,6 +163,6 @@ max_charges = 8 //8, 4, 4, 3 /obj/item/weapon/gun/magic/wand/fireball/zap_self(mob/living/user) - ..() explosion(user.loc, -1, 0, 2, 3, 0, flame_range = 2) - charges-- \ No newline at end of file + charges-- + ..() diff --git a/code/modules/projectiles/guns/medbeam.dm b/code/modules/projectiles/guns/medbeam.dm index 18bebfc259..44a8577545 100644 --- a/code/modules/projectiles/guns/medbeam.dm +++ b/code/modules/projectiles/guns/medbeam.dm @@ -1,10 +1,10 @@ /obj/item/weapon/gun/medbeam name = "Medical Beamgun" - desc = "Don't cross the streams!" + desc = "Delivers medical nanites in a focused beam." icon = 'icons/obj/chronos.dmi' icon_state = "chronogun" item_state = "chronogun" - w_class = WEIGHT_CLASS_NORMAL + w_class = 3.0 var/mob/living/current_target var/last_check = 0 @@ -54,7 +54,7 @@ /obj/item/weapon/gun/medbeam/process() var/source = loc - if(!mounted && !isliving(source)) + if(!mounted && !ishuman(source)) LoseTarget() return @@ -69,7 +69,7 @@ if(get_dist(source, current_target)>max_range || !los_check(source, current_target)) LoseTarget() - if(isliving(source)) + if(ishuman(source)) source << "You lose control of the beam!" return diff --git a/code/modules/projectiles/guns/mounted.dm b/code/modules/projectiles/guns/mounted.dm index 9d4a8753b9..c5b050ff94 100644 --- a/code/modules/projectiles/guns/mounted.dm +++ b/code/modules/projectiles/guns/mounted.dm @@ -1,4 +1,4 @@ -/obj/item/weapon/gun/energy/e_gun/advtaser/mounted +/obj/item/weapon/gun/energy/gun/advtaser/mounted name = "mounted taser" desc = "An arm mounted dual-mode weapon that fires electrodes and disabler shots." icon = 'icons/obj/items_cyborg.dmi' @@ -9,7 +9,7 @@ can_flashlight = 0 trigger_guard = TRIGGER_GUARD_ALLOW_ALL // Has no trigger at all, uses neural signals instead -/obj/item/weapon/gun/energy/e_gun/advtaser/mounted/dropped()//if somebody manages to drop this somehow... +/obj/item/weapon/gun/energy/gun/advtaser/mounted/dropped()//if somebody manages to drop this somehow... ..() src.loc = null//send it to nullspace to get retrieved by the implant later on. gotta cover those edge cases. diff --git a/code/modules/projectiles/guns/ballistic.dm b/code/modules/projectiles/guns/projectile.dm similarity index 73% rename from code/modules/projectiles/guns/ballistic.dm rename to code/modules/projectiles/guns/projectile.dm index a8dd8f9bcb..adea212aa6 100644 --- a/code/modules/projectiles/guns/ballistic.dm +++ b/code/modules/projectiles/guns/projectile.dm @@ -1,25 +1,21 @@ -/obj/item/weapon/gun/ballistic +/obj/item/weapon/gun/projectile desc = "Now comes in flavors like GUN. Uses 10mm ammo, for some reason" name = "projectile gun" icon_state = "pistol" origin_tech = "combat=2;materials=2" - w_class = WEIGHT_CLASS_NORMAL - var/spawnwithmagazine = 1 + w_class = 3 + var/mag_type = /obj/item/ammo_box/magazine/m10mm //Removes the need for max_ammo and caliber info var/obj/item/ammo_box/magazine/magazine - var/casing_ejector = 1 //whether the gun ejects the chambered casing -/obj/item/weapon/gun/ballistic/New() +/obj/item/weapon/gun/projectile/New() ..() - if(!spawnwithmagazine) - update_icon() - return if (!magazine) magazine = new mag_type(src) chamber_round() update_icon() -/obj/item/weapon/gun/ballistic/update_icon() +/obj/item/weapon/gun/projectile/update_icon() ..() if(current_skin) icon_state = "[current_skin][suppressed ? "-suppressed" : ""][sawn_state ? "-sawn" : ""]" @@ -27,38 +23,43 @@ icon_state = "[initial(icon_state)][suppressed ? "-suppressed" : ""][sawn_state ? "-sawn" : ""]" -/obj/item/weapon/gun/ballistic/process_chamber(empty_chamber = 1) +/obj/item/weapon/gun/projectile/process_chamber(eject_casing = 1, empty_chamber = 1) +// if(in_chamber) +// return 1 var/obj/item/ammo_casing/AC = chambered //Find chambered round - if(istype(AC)) //there's a chambered round - if(casing_ejector) - AC.forceMove(get_turf(src)) //Eject casing onto ground. - AC.SpinAnimation(10, 1) //next gen special effects - chambered = null - else if(empty_chamber) - chambered = null + if(isnull(AC) || !istype(AC)) + chamber_round() + return + if(eject_casing) + AC.loc = get_turf(src) //Eject casing onto ground. + AC.SpinAnimation(10, 1) //next gen special effects + + if(empty_chamber) + chambered = null chamber_round() + return - -/obj/item/weapon/gun/ballistic/proc/chamber_round() +/obj/item/weapon/gun/projectile/proc/chamber_round() if (chambered || !magazine) return else if (magazine.ammo_count()) chambered = magazine.get_round() - chambered.forceMove(src) + chambered.loc = src + return -/obj/item/weapon/gun/ballistic/can_shoot() +/obj/item/weapon/gun/projectile/can_shoot() if(!magazine || !magazine.ammo_count(0)) return 0 return 1 -/obj/item/weapon/gun/ballistic/attackby(obj/item/A, mob/user, params) +/obj/item/weapon/gun/projectile/attackby(obj/item/A, mob/user, params) ..() if (istype(A, /obj/item/ammo_box/magazine)) var/obj/item/ammo_box/magazine/AM = A if (!magazine && istype(AM, mag_type)) user.remove_from_mob(AM) magazine = AM - magazine.forceMove(src) + magazine.loc = src user << "You load a new magazine into \the [src]." chamber_round() A.update_icon() @@ -77,7 +78,7 @@ S.oldsound = fire_sound S.initial_w_class = w_class fire_sound = 'sound/weapons/Gunshot_silenced.ogg' - w_class = WEIGHT_CLASS_NORMAL //so pistols do not fit in pockets when suppressed + w_class = 3 //so pistols do not fit in pockets when suppressed A.loc = src update_icon() return @@ -89,11 +90,11 @@ return return 0 -/obj/item/weapon/gun/ballistic/attack_hand(mob/user) +/obj/item/weapon/gun/projectile/attack_hand(mob/user) if(loc == user) if(suppressed && can_unsuppress) var/obj/item/weapon/suppressor/S = suppressed - if(!user.is_holding(src)) + if(user.l_hand != src && user.r_hand != src) ..() return user << "You unscrew [suppressed] from [src]." @@ -105,7 +106,7 @@ return ..() -/obj/item/weapon/gun/ballistic/attack_self(mob/living/user) +/obj/item/weapon/gun/projectile/attack_self(mob/living/user) var/obj/item/ammo_casing/AC = chambered //Find chambered round if(magazine) magazine.loc = get_turf(src.loc) @@ -124,11 +125,11 @@ return -/obj/item/weapon/gun/ballistic/examine(mob/user) +/obj/item/weapon/gun/projectile/examine(mob/user) ..() user << "Has [get_ammo()] round\s remaining." -/obj/item/weapon/gun/ballistic/proc/get_ammo(countchambered = 1) +/obj/item/weapon/gun/projectile/proc/get_ammo(countchambered = 1) var/boolets = 0 //mature var names for mature people if (chambered && countchambered) boolets++ @@ -136,25 +137,25 @@ boolets += magazine.ammo_count() return boolets -/obj/item/weapon/gun/ballistic/suicide_act(mob/user) - if (chambered && chambered.BB && !chambered.BB.nodamage) - user.visible_message("[user] is putting the barrel of [src] in [user.p_their()] mouth. It looks like [user.p_theyre()] trying to commit suicide!") +/obj/item/weapon/gun/projectile/suicide_act(mob/user) + if (src.chambered && src.chambered.BB && !src.chambered.BB.nodamage) + user.visible_message("[user] is putting the barrel of the [src.name] in \his mouth. It looks like \he's trying to commit suicide.") sleep(25) - if(user.is_holding(src)) + if(user.l_hand == src || user.r_hand == src) process_fire(user, user, 0, zone_override = "head") - user.visible_message("[user] blows [user.p_their()] brain[user.p_s()] out with [src]!") + user.visible_message("[user] blows \his brains out with the [src.name]!") return(BRUTELOSS) else user.visible_message("[user] panics and starts choking to death!") return(OXYLOSS) else - user.visible_message("[user] is pretending to blow [user.p_their()] brain[user.p_s()] out with [src]! It looks like [user.p_theyre()] trying to commit suicide!") + user.visible_message("[user] is pretending to blow \his brains out with the [src.name]! It looks like \he's trying to commit suicide!") playsound(loc, 'sound/weapons/empty.ogg', 50, 1, -1) return (OXYLOSS) -/obj/item/weapon/gun/ballistic/proc/sawoff(mob/user) +/obj/item/weapon/gun/projectile/proc/sawoff(mob/user) if(sawn_state == SAWN_OFF) user << "\The [src] is already shortened!" return @@ -172,8 +173,8 @@ user.visible_message("[user] shortens \the [src]!", "You shorten \the [src].") name = "sawn-off [src.name]" desc = sawn_desc - w_class = WEIGHT_CLASS_NORMAL - item_state = "gun" + w_class = 3 + item_state = "gun"//phil235 is it different with different skin? slot_flags &= ~SLOT_BACK //you can't sling it on your back slot_flags |= SLOT_BELT //but you can wear it on your belt (poorly concealed under a trenchcoat, ideally) sawn_state = SAWN_OFF @@ -181,7 +182,7 @@ return 1 // Sawing guns related proc -/obj/item/weapon/gun/ballistic/proc/blow_up(mob/user) +/obj/item/weapon/gun/projectile/proc/blow_up(mob/user) . = 0 for(var/obj/item/ammo_casing/AC in magazine.stored_ammo) if(AC.BB) @@ -194,7 +195,7 @@ desc = "A universal syndicate small-arms suppressor for maximum espionage." icon = 'icons/obj/guns/projectile.dmi' icon_state = "suppressor" - w_class = WEIGHT_CLASS_SMALL + w_class = 2 var/oldsound = null var/initial_w_class = null diff --git a/code/modules/projectiles/guns/ballistic/automatic.dm b/code/modules/projectiles/guns/projectile/automatic.dm similarity index 70% rename from code/modules/projectiles/guns/ballistic/automatic.dm rename to code/modules/projectiles/guns/projectile/automatic.dm index c53332c22a..feea7aa4ea 100644 --- a/code/modules/projectiles/guns/ballistic/automatic.dm +++ b/code/modules/projectiles/guns/projectile/automatic.dm @@ -1,6 +1,6 @@ -/obj/item/weapon/gun/ballistic/automatic +/obj/item/weapon/gun/projectile/automatic origin_tech = "combat=4;materials=2" - w_class = WEIGHT_CLASS_NORMAL + w_class = 3 var/alarmed = 0 var/select = 1 can_suppress = 1 @@ -8,17 +8,17 @@ fire_delay = 2 actions_types = list(/datum/action/item_action/toggle_firemode) -/obj/item/weapon/gun/ballistic/automatic/proto +/obj/item/weapon/gun/projectile/automatic/proto name = "\improper NanoTrasen Saber SMG" desc = "A prototype three-round burst 9mm submachine gun, designated 'SABR'. Has a threaded barrel for suppressors." icon_state = "saber" mag_type = /obj/item/ammo_box/magazine/smgm9mm pin = null -/obj/item/weapon/gun/ballistic/automatic/proto/unrestricted +/obj/item/weapon/gun/projectile/automatic/proto/unrestricted pin = /obj/item/device/firing_pin -/obj/item/weapon/gun/ballistic/automatic/update_icon() +/obj/item/weapon/gun/projectile/automatic/update_icon() ..() cut_overlays() if(!select) @@ -27,7 +27,7 @@ add_overlay("[initial(icon_state)]burst") icon_state = "[initial(icon_state)][magazine ? "-[magazine.max_ammo]" : ""][chambered ? "" : "-e"][suppressed ? "-suppressed" : ""]" -/obj/item/weapon/gun/ballistic/automatic/attackby(obj/item/A, mob/user, params) +/obj/item/weapon/gun/projectile/automatic/attackby(obj/item/A, mob/user, params) . = ..() if(.) return @@ -36,8 +36,7 @@ if(istype(AM, mag_type)) if(magazine) user << "You perform a tactical reload on \the [src], replacing the magazine." - magazine.dropped() - magazine.forceMove(get_turf(src.loc)) + magazine.loc = get_turf(src.loc) magazine.update_icon() magazine = null else @@ -50,10 +49,10 @@ update_icon() return 1 -/obj/item/weapon/gun/ballistic/automatic/ui_action_click() +/obj/item/weapon/gun/projectile/automatic/ui_action_click() burst_select() -/obj/item/weapon/gun/ballistic/automatic/proc/burst_select() +/obj/item/weapon/gun/projectile/automatic/proc/burst_select() var/mob/living/carbon/human/user = usr select = !select if(!select) @@ -71,17 +70,17 @@ var/datum/action/A = X A.UpdateButtonIcon() -/obj/item/weapon/gun/ballistic/automatic/can_shoot() +/obj/item/weapon/gun/projectile/automatic/can_shoot() return get_ammo() -/obj/item/weapon/gun/ballistic/automatic/proc/empty_alarm() +/obj/item/weapon/gun/projectile/automatic/proc/empty_alarm() if(!chambered && !get_ammo() && !alarmed) playsound(src.loc, 'sound/weapons/smg_empty_alarm.ogg', 40, 1) update_icon() alarmed = 1 return -/obj/item/weapon/gun/ballistic/automatic/c20r +/obj/item/weapon/gun/projectile/automatic/c20r name = "\improper C-20r SMG" desc = "A bullpup two-round burst .45 SMG, designated 'C-20r'. Has a 'Scarborough Arms - Per falcis, per pravitas' buttstamp." icon_state = "c20r" @@ -93,24 +92,24 @@ burst_size = 2 pin = /obj/item/device/firing_pin/implant/pindicate -/obj/item/weapon/gun/ballistic/automatic/c20r/unrestricted +/obj/item/weapon/gun/projectile/automatic/c20r/unrestricted pin = /obj/item/device/firing_pin -/obj/item/weapon/gun/ballistic/automatic/c20r/New() +/obj/item/weapon/gun/projectile/automatic/c20r/New() ..() update_icon() return -/obj/item/weapon/gun/ballistic/automatic/c20r/afterattack() +/obj/item/weapon/gun/projectile/automatic/c20r/afterattack() ..() empty_alarm() return -/obj/item/weapon/gun/ballistic/automatic/c20r/update_icon() +/obj/item/weapon/gun/projectile/automatic/c20r/update_icon() ..() icon_state = "c20r[magazine ? "-[Ceiling(get_ammo(0)/4)*4]" : ""][chambered ? "" : "-e"][suppressed ? "-suppressed" : ""]" -/obj/item/weapon/gun/ballistic/automatic/wt550 +/obj/item/weapon/gun/projectile/automatic/wt550 name = "security auto rifle" desc = "An outdated personal defence weapon. Uses 4.6x30mm rounds and is designated the WT-550 Automatic Rifle." icon_state = "wt550" @@ -121,11 +120,11 @@ burst_size = 0 actions_types = list() -/obj/item/weapon/gun/ballistic/automatic/wt550/update_icon() +/obj/item/weapon/gun/projectile/automatic/wt550/update_icon() ..() icon_state = "wt550[magazine ? "-[Ceiling(get_ammo(0)/4)*4]" : ""]" -/obj/item/weapon/gun/ballistic/automatic/mini_uzi +/obj/item/weapon/gun/projectile/automatic/mini_uzi name = "\improper 'Type U3' Uzi" desc = "A lightweight, burst-fire submachine gun, for when you really want someone dead. Uses 9mm rounds." icon_state = "mini-uzi" @@ -133,7 +132,7 @@ mag_type = /obj/item/ammo_box/magazine/uzim9mm burst_size = 2 -/obj/item/weapon/gun/ballistic/automatic/m90 +/obj/item/weapon/gun/projectile/automatic/m90 name = "\improper M-90gl Carbine" desc = "A three-round burst 5.56 toploading carbine, designated 'M-90gl'. Has an attached underbarrel grenade launcher which can be toggled on and off." icon_state = "m90" @@ -142,40 +141,40 @@ mag_type = /obj/item/ammo_box/magazine/m556 fire_sound = 'sound/weapons/Gunshot_smg.ogg' can_suppress = 0 - var/obj/item/weapon/gun/ballistic/revolver/grenadelauncher/underbarrel + var/obj/item/weapon/gun/projectile/revolver/grenadelauncher/underbarrel burst_size = 3 fire_delay = 2 pin = /obj/item/device/firing_pin/implant/pindicate -/obj/item/weapon/gun/ballistic/automatic/m90/New() +/obj/item/weapon/gun/projectile/automatic/m90/New() ..() - underbarrel = new /obj/item/weapon/gun/ballistic/revolver/grenadelauncher(src) + underbarrel = new /obj/item/weapon/gun/projectile/revolver/grenadelauncher(src) update_icon() return -/obj/item/weapon/gun/ballistic/automatic/m90/unrestricted +/obj/item/weapon/gun/projectile/automatic/m90/unrestricted pin = /obj/item/device/firing_pin -/obj/item/weapon/gun/ballistic/automatic/m90/unrestricted/New() +/obj/item/weapon/gun/projectile/automatic/m90/unrestricted/New() ..() - underbarrel = new /obj/item/weapon/gun/ballistic/revolver/grenadelauncher/unrestricted(src) + underbarrel = new /obj/item/weapon/gun/projectile/revolver/grenadelauncher/unrestricted(src) update_icon() return -/obj/item/weapon/gun/ballistic/automatic/m90/afterattack(atom/target, mob/living/user, flag, params) +/obj/item/weapon/gun/projectile/automatic/m90/afterattack(atom/target, mob/living/user, flag, params) if(select == 2) underbarrel.afterattack(target, user, flag, params) else ..() return -/obj/item/weapon/gun/ballistic/automatic/m90/attackby(obj/item/A, mob/user, params) +/obj/item/weapon/gun/projectile/automatic/m90/attackby(obj/item/A, mob/user, params) if(istype(A, /obj/item/ammo_casing)) if(istype(A, underbarrel.magazine.ammo_type)) underbarrel.attack_self() underbarrel.attackby(A, user, params) else ..() -/obj/item/weapon/gun/ballistic/automatic/m90/update_icon() +/obj/item/weapon/gun/projectile/automatic/m90/update_icon() ..() cut_overlays() switch(select) @@ -187,7 +186,7 @@ add_overlay("[initial(icon_state)]gren") icon_state = "[initial(icon_state)][magazine ? "" : "-e"]" return -/obj/item/weapon/gun/ballistic/automatic/m90/burst_select() +/obj/item/weapon/gun/projectile/automatic/m90/burst_select() var/mob/living/carbon/human/user = usr switch(select) if(0) @@ -207,12 +206,12 @@ update_icon() return -/obj/item/weapon/gun/ballistic/automatic/tommygun +/obj/item/weapon/gun/projectile/automatic/tommygun name = "\improper Thompson SMG" desc = "Based on the classic 'Chicago Typewriter'." icon_state = "tommygun" item_state = "shotgun" - w_class = WEIGHT_CLASS_HUGE + w_class = 5 slot_flags = 0 origin_tech = "combat=5;materials=1;syndicate=3" mag_type = /obj/item/ammo_box/magazine/tommygunm45 @@ -221,7 +220,7 @@ burst_size = 4 fire_delay = 1 -/obj/item/weapon/gun/ballistic/automatic/ar +/obj/item/weapon/gun/projectile/automatic/ar name = "\improper NT-ARG 'Boarder'" desc = "A robust assault rile used by Nanotrasen fighting forces." icon_state = "arg" @@ -238,12 +237,12 @@ // Bulldog shotgun // -/obj/item/weapon/gun/ballistic/automatic/shotgun/bulldog +/obj/item/weapon/gun/projectile/automatic/shotgun/bulldog name = "\improper 'Bulldog' Shotgun" desc = "A semi-auto, mag-fed shotgun for combat in narrow corridors, nicknamed 'Bulldog' by boarding parties. Compatible only with specialized 8-round drum magazines." icon_state = "bulldog" item_state = "bulldog" - w_class = WEIGHT_CLASS_NORMAL + w_class = 3 origin_tech = "combat=6;materials=4;syndicate=6" mag_type = /obj/item/ammo_box/magazine/m12g fire_sound = 'sound/weapons/Gunshot.ogg' @@ -253,26 +252,26 @@ pin = /obj/item/device/firing_pin/implant/pindicate actions_types = list() -/obj/item/weapon/gun/ballistic/automatic/shotgun/bulldog/unrestricted +/obj/item/weapon/gun/projectile/automatic/shotgun/bulldog/unrestricted pin = /obj/item/device/firing_pin -/obj/item/weapon/gun/ballistic/automatic/shotgun/bulldog/New() +/obj/item/weapon/gun/projectile/automatic/shotgun/bulldog/New() ..() update_icon() return -/obj/item/weapon/gun/ballistic/automatic/shotgun/bulldog/proc/update_magazine() +/obj/item/weapon/gun/projectile/automatic/shotgun/bulldog/proc/update_magazine() if(magazine) src.overlays = 0 add_overlay("[magazine.icon_state]") return -/obj/item/weapon/gun/ballistic/automatic/shotgun/bulldog/update_icon() +/obj/item/weapon/gun/projectile/automatic/shotgun/bulldog/update_icon() src.overlays = 0 update_magazine() icon_state = "bulldog[chambered ? "" : "-e"]" -/obj/item/weapon/gun/ballistic/automatic/shotgun/bulldog/afterattack() +/obj/item/weapon/gun/projectile/automatic/shotgun/bulldog/afterattack() ..() empty_alarm() return @@ -281,16 +280,16 @@ // L6 SAW // -/obj/item/weapon/gun/ballistic/automatic/l6_saw +/obj/item/weapon/gun/projectile/automatic/l6_saw name = "\improper L6 SAW" desc = "A heavily modified 5.56x45mm light machine gun, designated 'L6 SAW'. Has 'Aussec Armoury - 2531' engraved on the receiver below the designation." icon_state = "l6closed100" item_state = "l6closedmag" - w_class = WEIGHT_CLASS_HUGE + w_class = 5 slot_flags = 0 origin_tech = "combat=6;engineering=3;syndicate=6" mag_type = /obj/item/ammo_box/magazine/mm556x45 - weapon_weight = WEAPON_HEAVY + weapon_weight = WEAPON_MEDIUM fire_sound = 'sound/weapons/Gunshot_smg.ogg' var/cover_open = 0 can_suppress = 0 @@ -298,22 +297,22 @@ fire_delay = 1 pin = /obj/item/device/firing_pin/implant/pindicate -/obj/item/weapon/gun/ballistic/automatic/l6_saw/unrestricted +/obj/item/weapon/gun/projectile/automatic/l6_saw/unrestricted pin = /obj/item/device/firing_pin -/obj/item/weapon/gun/ballistic/automatic/l6_saw/attack_self(mob/user) +/obj/item/weapon/gun/projectile/automatic/l6_saw/attack_self(mob/user) cover_open = !cover_open user << "You [cover_open ? "open" : "close"] [src]'s cover." update_icon() -/obj/item/weapon/gun/ballistic/automatic/l6_saw/update_icon() +/obj/item/weapon/gun/projectile/automatic/l6_saw/update_icon() icon_state = "l6[cover_open ? "open" : "closed"][magazine ? Ceiling(get_ammo(0)/12.5)*25 : "-empty"][suppressed ? "-suppressed" : ""]" item_state = "l6[cover_open ? "openmag" : "closedmag"]" -/obj/item/weapon/gun/ballistic/automatic/l6_saw/afterattack(atom/target as mob|obj|turf, mob/living/user as mob|obj, flag, params) //what I tried to do here is just add a check to see if the cover is open or not and add an icon_state change because I can't figure out how c-20rs do it with overlays +/obj/item/weapon/gun/projectile/automatic/l6_saw/afterattack(atom/target as mob|obj|turf, mob/living/user as mob|obj, flag, params) //what I tried to do here is just add a check to see if the cover is open or not and add an icon_state change because I can't figure out how c-20rs do it with overlays if(cover_open) user << "[src]'s cover is open! Close it before firing!" else @@ -321,7 +320,7 @@ update_icon() -/obj/item/weapon/gun/ballistic/automatic/l6_saw/attack_hand(mob/user) +/obj/item/weapon/gun/projectile/automatic/l6_saw/attack_hand(mob/user) if(loc != user) ..() return //let them pick it up @@ -337,7 +336,7 @@ user << "You remove the magazine from [src]." -/obj/item/weapon/gun/ballistic/automatic/l6_saw/attackby(obj/item/A, mob/user, params) +/obj/item/weapon/gun/projectile/automatic/l6_saw/attackby(obj/item/A, mob/user, params) . = ..() if(.) return @@ -350,36 +349,36 @@ // SNIPER // -/obj/item/weapon/gun/ballistic/automatic/sniper_rifle +/obj/item/weapon/gun/projectile/automatic/sniper_rifle name = "sniper rifle" - desc = "A long ranged weapon that does significant damage. No, you can't quickscope." + desc = "The kind of gun that will leave you crying for mummy before you even realise your leg's missing" icon_state = "sniper" item_state = "sniper" recoil = 2 - weapon_weight = WEAPON_HEAVY + weapon_weight = WEAPON_MEDIUM mag_type = /obj/item/ammo_box/magazine/sniper_rounds fire_delay = 40 burst_size = 1 origin_tech = "combat=7" can_unsuppress = 1 can_suppress = 1 - w_class = WEIGHT_CLASS_NORMAL + w_class = 3 zoomable = TRUE zoom_amt = 7 //Long range, enough to see in front of you, but no tiles behind you. slot_flags = SLOT_BACK actions_types = list() -/obj/item/weapon/gun/ballistic/automatic/sniper_rifle/update_icon() +/obj/item/weapon/gun/projectile/automatic/sniper_rifle/update_icon() if(magazine) icon_state = "sniper-mag" else icon_state = "sniper" -/obj/item/weapon/gun/ballistic/automatic/sniper_rifle/syndicate +/obj/item/weapon/gun/projectile/automatic/sniper_rifle/syndicate name = "syndicate sniper rifle" - desc = "An illegally modified .50 cal sniper rifle with supression compatibility. Quickscoping still doesn't work." + desc = "Syndicate flavoured sniper rifle, it packs quite a punch, a punch to your face" pin = /obj/item/device/firing_pin/implant/pindicate origin_tech = "combat=7;syndicate=6" @@ -388,7 +387,7 @@ // Laser rifle (rechargeable magazine) // -/obj/item/weapon/gun/ballistic/automatic/laser +/obj/item/weapon/gun/projectile/automatic/laser name = "laser rifle" desc = "Though sometimes mocked for the relatively weak firepower of their energy weapons, the logistic miracle of rechargable ammunition has given Nanotrasen a decisive edge over many a foe." icon_state = "oldrifle" @@ -399,9 +398,12 @@ burst_size = 0 actions_types = list() fire_sound = 'sound/weapons/Laser.ogg' - casing_ejector = 0 -/obj/item/weapon/gun/ballistic/automatic/laser/update_icon() +/obj/item/weapon/gun/projectile/automatic/laser/process_chamber(eject_casing = 0, empty_chamber = 1) + ..() //we changed the default value of the first argument + + +/obj/item/weapon/gun/projectile/automatic/laser/update_icon() ..() icon_state = "oldrifle[magazine ? "-[Ceiling(get_ammo(0)/4)*4]" : ""]" return diff --git a/code/modules/projectiles/guns/ballistic/laser_gatling.dm b/code/modules/projectiles/guns/projectile/laser_gatling.dm similarity index 79% rename from code/modules/projectiles/guns/ballistic/laser_gatling.dm rename to code/modules/projectiles/guns/projectile/laser_gatling.dm index dd656687c7..ea19220600 100644 --- a/code/modules/projectiles/guns/ballistic/laser_gatling.dm +++ b/code/modules/projectiles/guns/projectile/laser_gatling.dm @@ -8,8 +8,8 @@ icon_state = "holstered" item_state = "backpack" slot_flags = SLOT_BACK - w_class = WEIGHT_CLASS_HUGE - var/obj/item/weapon/gun/ballistic/minigun/gun = null + w_class = 5 + var/obj/item/weapon/gun/projectile/minigun/gun = null var/armed = 0 //whether the gun is attached, 0 is attached, 1 is the gun is wielded. var/overheat = 0 var/overheat_max = 40 @@ -69,7 +69,11 @@ var/obj/screen/inventory/hand/H = over_object if(!M.unEquip(src)) return - M.put_in_hand(src, H.held_index) + switch(H.slot_id) + if(slot_r_hand) + M.put_in_r_hand(src) + if(slot_l_hand) + M.put_in_l_hand(src) /obj/item/weapon/minigunpack/update_icon() @@ -91,7 +95,7 @@ user.update_inv_back() -/obj/item/weapon/gun/ballistic/minigun +/obj/item/weapon/gun/projectile/minigun name = "laser gatling gun" desc = "An advanced laser cannon with an incredible rate of fire. Requires a bulky backpack power source to use." icon = 'icons/obj/guns/minigun.dmi' @@ -101,7 +105,7 @@ flags = CONDUCT | HANDSLOW slowdown = 1 slot_flags = null - w_class = WEIGHT_CLASS_HUGE + w_class = 5 materials = list() burst_size = 3 automatic = 0 @@ -109,40 +113,41 @@ weapon_weight = WEAPON_HEAVY fire_sound = 'sound/weapons/Laser.ogg' mag_type = /obj/item/ammo_box/magazine/internal/minigun - casing_ejector = 0 var/obj/item/weapon/minigunpack/ammo_pack -/obj/item/weapon/gun/ballistic/minigun/attack_self(mob/living/user) +/obj/item/weapon/gun/projectile/minigun/attack_self(mob/living/user) return -/obj/item/weapon/gun/ballistic/minigun/dropped(mob/user) +/obj/item/weapon/gun/projectile/minigun/dropped(mob/user) if(ammo_pack) ammo_pack.attach_gun(user) else qdel(src) -/obj/item/weapon/gun/ballistic/minigun/process_fire(atom/target as mob|obj|turf, mob/living/user as mob|obj, message = 1, params, zone_override) +/obj/item/weapon/gun/projectile/minigun/shoot_live_shot(mob/living/user as mob|obj, pointblank = 0, mob/pbtarget = null, message = 1) if(ammo_pack) if(ammo_pack.overheat < ammo_pack.overheat_max) - ammo_pack.overheat += burst_size - ..() + . = ..() + ammo_pack.overheat++ else user << "The gun's heat sensor locked the trigger to prevent lens damage." -/obj/item/weapon/gun/ballistic/minigun/afterattack(atom/target, mob/living/user, flag, params) +/obj/item/weapon/gun/projectile/minigun/afterattack(atom/target, mob/living/user, flag, params) if(!ammo_pack || ammo_pack.loc != user) user << "You need the backpack power source to fire the gun!" ..() -/obj/item/weapon/gun/ballistic/minigun/New() +/obj/item/weapon/gun/projectile/minigun/New() if(!ammo_pack) if(istype(loc,/obj/item/weapon/minigunpack)) //We should spawn inside a ammo pack so let's use that one. ammo_pack = loc - ..() else qdel(src)//No pack, no gun + ..() -/obj/item/weapon/gun/ballistic/minigun/dropped(mob/living/user) +/obj/item/weapon/gun/projectile/minigun/dropped(mob/living/user) ammo_pack.attach_gun(user) +/obj/item/weapon/gun/projectile/minigun/process_chamber(eject_casing = 0, empty_chamber = 1) + ..() diff --git a/code/modules/projectiles/guns/ballistic/launchers.dm b/code/modules/projectiles/guns/projectile/launchers.dm similarity index 53% rename from code/modules/projectiles/guns/ballistic/launchers.dm rename to code/modules/projectiles/guns/projectile/launchers.dm index 2d4ccfd586..42ed81805e 100644 --- a/code/modules/projectiles/guns/ballistic/launchers.dm +++ b/code/modules/projectiles/guns/projectile/launchers.dm @@ -1,25 +1,25 @@ //KEEP IN MIND: These are different from gun/grenadelauncher. These are designed to shoot premade rocket and grenade projectiles, not flashbangs or chemistry casings etc. //Put handheld rocket launchers here if someone ever decides to make something so hilarious ~Paprika -/obj/item/weapon/gun/ballistic/revolver/grenadelauncher//this is only used for underbarrel grenade launchers at the moment, but admins can still spawn it if they feel like being assholes +/obj/item/weapon/gun/projectile/revolver/grenadelauncher//this is only used for underbarrel grenade launchers at the moment, but admins can still spawn it if they feel like being assholes desc = "A break-operated grenade launcher." name = "grenade launcher" icon_state = "dshotgun-sawn" item_state = "gun" mag_type = /obj/item/ammo_box/magazine/internal/grenadelauncher fire_sound = 'sound/weapons/grenadelaunch.ogg' - w_class = WEIGHT_CLASS_NORMAL + w_class = 3 pin = /obj/item/device/firing_pin/implant/pindicate -/obj/item/weapon/gun/ballistic/revolver/grenadelauncher/unrestricted +/obj/item/weapon/gun/projectile/revolver/grenadelauncher/unrestricted pin = /obj/item/device/firing_pin -/obj/item/weapon/gun/ballistic/revolver/grenadelauncher/attackby(obj/item/A, mob/user, params) +/obj/item/weapon/gun/projectile/revolver/grenadelauncher/attackby(obj/item/A, mob/user, params) ..() if(istype(A, /obj/item/ammo_box) || istype(A, /obj/item/ammo_casing)) chamber_round() -/obj/item/weapon/gun/ballistic/revolver/grenadelauncher/cyborg +/obj/item/weapon/gun/projectile/revolver/grenadelauncher/cyborg desc = "A 6-shot grenade launcher." name = "multi grenade launcher" icon = 'icons/mecha/mecha_equipment.dmi' @@ -27,10 +27,10 @@ mag_type = /obj/item/ammo_box/magazine/internal/cylinder/grenademulti pin = /obj/item/device/firing_pin -/obj/item/weapon/gun/ballistic/revolver/grenadelauncher/cyborg/attack_self() +/obj/item/weapon/gun/projectile/revolver/grenadelauncher/cyborg/attack_self() return -/obj/item/weapon/gun/ballistic/automatic/gyropistol +/obj/item/weapon/gun/projectile/automatic/gyropistol name = "gyrojet pistol" desc = "A prototype pistol designed to fire self propelled rockets." icon_state = "gyropistol" @@ -40,18 +40,20 @@ burst_size = 1 fire_delay = 0 actions_types = list() - casing_ejector = 0 -/obj/item/weapon/gun/ballistic/automatic/gyropistol/update_icon() +/obj/item/weapon/gun/projectile/automatic/gyropistol/process_chamber(eject_casing = 0, empty_chamber = 1) + ..() + +/obj/item/weapon/gun/projectile/automatic/gyropistol/update_icon() ..() icon_state = "[initial(icon_state)][magazine ? "loaded" : ""]" -/obj/item/weapon/gun/ballistic/automatic/speargun +/obj/item/weapon/gun/projectile/automatic/speargun name = "kinetic speargun" desc = "A weapon favored by carp hunters. Fires specialized spears using kinetic energy." icon_state = "speargun" item_state = "speargun" - w_class = WEIGHT_CLASS_BULKY + w_class = 4 origin_tech = "combat=4;engineering=4" force = 10 can_suppress = 0 @@ -61,40 +63,19 @@ fire_delay = 0 select = 0 actions_types = list() - casing_ejector = 0 -/obj/item/weapon/gun/ballistic/automatic/speargun/update_icon() +/obj/item/weapon/gun/projectile/automatic/speargun/update_icon() return -/obj/item/weapon/gun/ballistic/automatic/speargun/attack_self() +/obj/item/weapon/gun/projectile/automatic/speargun/attack_self() return -/obj/item/weapon/gun/ballistic/automatic/speargun/attackby(obj/item/A, mob/user, params) +/obj/item/weapon/gun/projectile/automatic/speargun/process_chamber(eject_casing = 0, empty_chamber = 1) + ..() + +/obj/item/weapon/gun/projectile/automatic/speargun/attackby(obj/item/A, mob/user, params) var/num_loaded = magazine.attackby(A, user, params, 1) if(num_loaded) user << "You load [num_loaded] spear\s into \the [src]." update_icon() - chamber_round() - -/obj/item/weapon/gun/ballistic/automatic/atlauncher - desc = "A pre-loaded, single shot anti-armour launcher." - name = "anti-armour grenade launcher" - icon_state = "rocketlauncher" - item_state = "rocketlauncher" - mag_type = /obj/item/ammo_box/magazine/internal/rocketlauncher - fire_sound = 'sound/weapons/rocketlaunch.ogg' - w_class = WEIGHT_CLASS_BULKY - can_suppress = 0 - burst_size = 1 - fire_delay = 0 - select = 0 - actions_types = list() - casing_ejector = 0 - weapon_weight = WEAPON_HEAVY - -/obj/item/weapon/gun/ballistic/automatic/atlauncher/attack_self() - return - -/obj/item/weapon/gun/ballistic/automatic/atlauncher/update_icon() - ..() - icon_state = "rocketlauncher[magazine ? "-[get_ammo(1)]" : ""]" \ No newline at end of file + chamber_round() \ No newline at end of file diff --git a/code/modules/projectiles/guns/ballistic/pistol.dm b/code/modules/projectiles/guns/projectile/pistol.dm similarity index 55% rename from code/modules/projectiles/guns/ballistic/pistol.dm rename to code/modules/projectiles/guns/projectile/pistol.dm index a28f1f0b64..350b248d05 100644 --- a/code/modules/projectiles/guns/ballistic/pistol.dm +++ b/code/modules/projectiles/guns/projectile/pistol.dm @@ -1,8 +1,8 @@ -/obj/item/weapon/gun/ballistic/automatic/pistol +/obj/item/weapon/gun/projectile/automatic/pistol name = "stechkin pistol" desc = "A small, easily concealable 10mm handgun. Has a threaded barrel for suppressors." icon_state = "pistol" - w_class = WEIGHT_CLASS_SMALL + w_class = 2 origin_tech = "combat=3;materials=2;syndicate=4" mag_type = /obj/item/ammo_box/magazine/m10mm can_suppress = 1 @@ -10,20 +10,20 @@ fire_delay = 0 actions_types = list() -/obj/item/weapon/gun/ballistic/automatic/pistol/update_icon() +/obj/item/weapon/gun/projectile/automatic/pistol/update_icon() ..() icon_state = "[initial(icon_state)][chambered ? "" : "-e"][suppressed ? "-suppressed" : ""]" return -/obj/item/weapon/gun/ballistic/automatic/pistol/m1911 +/obj/item/weapon/gun/projectile/automatic/pistol/m1911 name = "\improper M1911" desc = "A classic .45 handgun with a small magazine capacity." icon_state = "m1911" - w_class = WEIGHT_CLASS_NORMAL + w_class = 3 mag_type = /obj/item/ammo_box/magazine/m45 can_suppress = 0 -/obj/item/weapon/gun/ballistic/automatic/pistol/deagle +/obj/item/weapon/gun/projectile/automatic/pistol/deagle name = "desert eagle" desc = "A robust .50 AE handgun." icon_state = "deagle" @@ -31,46 +31,28 @@ mag_type = /obj/item/ammo_box/magazine/m50 can_suppress = 0 -/obj/item/weapon/gun/ballistic/automatic/pistol/deagle/update_icon() +/obj/item/weapon/gun/projectile/automatic/pistol/deagle/update_icon() ..() icon_state = "[initial(icon_state)][magazine ? "" : "-e"]" -/obj/item/weapon/gun/ballistic/automatic/pistol/deagle/gold +/obj/item/weapon/gun/projectile/automatic/pistol/deagle/gold desc = "A gold plated desert eagle folded over a million times by superior martian gunsmiths. Uses .50 AE ammo." icon_state = "deagleg" item_state = "deagleg" -/obj/item/weapon/gun/ballistic/automatic/pistol/deagle/camo +/obj/item/weapon/gun/projectile/automatic/pistol/deagle/camo desc = "A Deagle brand Deagle for operators operating operationally. Uses .50 AE ammo." icon_state = "deaglecamo" item_state = "deagleg" -/obj/item/weapon/gun/ballistic/automatic/pistol/APS +/obj/item/weapon/gun/projectile/automatic/pistol/APS name = "stechkin APS pistol" desc = "The original russian version of a widely used Syndicate sidearm. Uses 9mm ammo." icon_state = "aps" - w_class = WEIGHT_CLASS_NORMAL + w_class = 3 origin_tech = "combat=3;materials=2;syndicate=3" mag_type = /obj/item/ammo_box/magazine/pistolm9mm can_suppress = 0 burst_size = 3 fire_delay = 2 actions_types = list(/datum/action/item_action/toggle_firemode) - -/obj/item/weapon/gun/ballistic/automatic/pistol/stickman - name = "flat gun" - desc = "A 2 dimensional gun.. what?" - icon_state = "flatgun" - origin_tech = "combat=3;materials=2;abductor=3" - -/obj/item/weapon/gun/ballistic/automatic/pistol/stickman/pickup(mob/living/user) - user << "As you try to pick up [src], it slips out of your grip.." - if(prob(50)) - user << "..and vanishes from your vision! Where the hell did it go?" - user.unEquip(src) - qdel(src) - user.update_icons() - else - user << "..and falls into view. Whew, that was a close one." - user.unEquip(src) - diff --git a/code/modules/projectiles/guns/ballistic/revolver.dm b/code/modules/projectiles/guns/projectile/revolver.dm similarity index 66% rename from code/modules/projectiles/guns/ballistic/revolver.dm rename to code/modules/projectiles/guns/projectile/revolver.dm index 36c4e09695..97bf2eefc5 100644 --- a/code/modules/projectiles/guns/ballistic/revolver.dm +++ b/code/modules/projectiles/guns/projectile/revolver.dm @@ -1,27 +1,30 @@ -/obj/item/weapon/gun/ballistic/revolver +/obj/item/weapon/gun/projectile/revolver name = "\improper .357 revolver" desc = "A suspicious revolver. Uses .357 ammo." //usually used by syndicates icon_state = "revolver" mag_type = /obj/item/ammo_box/magazine/internal/cylinder origin_tech = "combat=3;materials=2" - casing_ejector = 0 -/obj/item/weapon/gun/ballistic/revolver/New() +/obj/item/weapon/gun/projectile/revolver/New() ..() if(!istype(magazine, /obj/item/ammo_box/magazine/internal/cylinder)) - verbs -= /obj/item/weapon/gun/ballistic/revolver/verb/spin + verbs -= /obj/item/weapon/gun/projectile/revolver/verb/spin -/obj/item/weapon/gun/ballistic/revolver/chamber_round(spin = 1) +/obj/item/weapon/gun/projectile/revolver/chamber_round(var/spin = 1) if(spin) chambered = magazine.get_round(1) else chambered = magazine.stored_ammo[1] + return -/obj/item/weapon/gun/ballistic/revolver/shoot_with_empty_chamber(mob/living/user as mob|obj) +/obj/item/weapon/gun/projectile/revolver/shoot_with_empty_chamber(mob/living/user as mob|obj) ..() chamber_round(1) -/obj/item/weapon/gun/ballistic/revolver/attackby(obj/item/A, mob/user, params) +/obj/item/weapon/gun/projectile/revolver/process_chamber() + return ..(0, 1) + +/obj/item/weapon/gun/projectile/revolver/attackby(obj/item/A, mob/user, params) . = ..() if(.) return @@ -32,7 +35,11 @@ update_icon() chamber_round(0) -/obj/item/weapon/gun/ballistic/revolver/attack_self(mob/living/user) + if(unique_rename) + if(istype(A, /obj/item/weapon/pen)) + rename_gun(user) + +/obj/item/weapon/gun/projectile/revolver/attack_self(mob/living/user) var/num_unloaded = 0 chambered = null while (get_ammo() > 0) @@ -48,7 +55,7 @@ else user << "[src] is empty!" -/obj/item/weapon/gun/ballistic/revolver/verb/spin() +/obj/item/weapon/gun/projectile/revolver/verb/spin() set name = "Spin Chamber" set category = "Object" set desc = "Click to spin your revolver's chamber." @@ -64,13 +71,13 @@ chamber_round(0) usr.visible_message("[usr] spins [src]'s chamber.", "You spin [src]'s chamber.") else - verbs -= /obj/item/weapon/gun/ballistic/revolver/verb/spin + verbs -= /obj/item/weapon/gun/projectile/revolver/verb/spin -/obj/item/weapon/gun/ballistic/revolver/can_shoot() +/obj/item/weapon/gun/projectile/revolver/can_shoot() return get_ammo(0,0) -/obj/item/weapon/gun/ballistic/revolver/get_ammo(countchambered = 0, countempties = 1) +/obj/item/weapon/gun/projectile/revolver/get_ammo(countchambered = 0, countempties = 1) var/boolets = 0 //mature var names for mature people if (chambered && countchambered) boolets++ @@ -78,11 +85,11 @@ boolets += magazine.ammo_count(countempties) return boolets -/obj/item/weapon/gun/ballistic/revolver/examine(mob/user) +/obj/item/weapon/gun/projectile/revolver/examine(mob/user) ..() user << "[get_ammo(0,0)] of those are live rounds." -/obj/item/weapon/gun/ballistic/revolver/detective +/obj/item/weapon/gun/projectile/revolver/detective name = "\improper .38 Mars Special" desc = "A cheap Martian knock-off of a classic law enforcement firearm. Uses .38-special rounds." icon_state = "detective" @@ -90,7 +97,7 @@ unique_rename = 1 unique_reskin = 1 -/obj/item/weapon/gun/ballistic/revolver/detective/New() +/obj/item/weapon/gun/projectile/revolver/detective/New() ..() options["Default"] = "detective" options["Leopard Spots"] = "detective_leopard" @@ -99,17 +106,17 @@ options["The Peacemaker"] = "detective_peacemaker" options["Cancel"] = null -/obj/item/weapon/gun/ballistic/revolver/detective/process_fire(atom/target as mob|obj|turf, mob/living/user as mob|obj, message = 1, params, zone_override = "") +/obj/item/weapon/gun/projectile/revolver/detective/process_fire(atom/target as mob|obj|turf, mob/living/user as mob|obj, message = 1, params, zone_override = "") if(magazine.caliber != initial(magazine.caliber)) if(prob(70 - (magazine.ammo_count() * 10))) //minimum probability of 10, maximum of 60 playsound(user, fire_sound, 50, 1) user << "[src] blows up in your face!" - user.take_bodypart_damage(0,20) + user.take_organ_damage(0,20) user.unEquip(src) return 0 ..() -/obj/item/weapon/gun/ballistic/revolver/detective/attackby(obj/item/A, mob/user, params) +/obj/item/weapon/gun/projectile/revolver/detective/attackby(obj/item/A, mob/user, params) ..() if(istype(A, /obj/item/weapon/screwdriver)) if(magazine.caliber == "38") @@ -118,7 +125,7 @@ afterattack(user, user) //you know the drill user.visible_message("[src] goes off!", "[src] goes off in your face!") return - if(do_after(user, 30*A.toolspeed, target = src)) + if(do_after(user, 30/A.toolspeed, target = src)) if(magazine.ammo_count()) user << "You can't modify it!" return @@ -131,7 +138,7 @@ afterattack(user, user) //and again user.visible_message("[src] goes off!", "[src] goes off in your face!") return - if(do_after(user, 30*A.toolspeed, target = src)) + if(do_after(user, 30/A.toolspeed, target = src)) if(magazine.ammo_count()) user << "You can't modify it!" return @@ -140,12 +147,12 @@ user << "You remove the modifications on [src]. Now it will fire .38 rounds." -/obj/item/weapon/gun/ballistic/revolver/mateba +/obj/item/weapon/gun/projectile/revolver/mateba name = "\improper Unica 6 auto-revolver" desc = "A retro high-powered autorevolver typically used by officers of the New Russia military. Uses .357 ammo." icon_state = "mateba" -/obj/item/weapon/gun/ballistic/revolver/golden +/obj/item/weapon/gun/projectile/revolver/golden name = "\improper Golden revolver" desc = "This ain't no game, ain't never been no show, And I'll gladly gun down the oldest lady you know. Uses .357 ammo." icon_state = "goldrevolver" @@ -153,7 +160,7 @@ recoil = 8 pin = /obj/item/device/firing_pin -/obj/item/weapon/gun/ballistic/revolver/nagant +/obj/item/weapon/gun/projectile/revolver/nagant name = "nagant revolver" desc = "An old model of revolver that originated in Russia. Able to be suppressed. Uses 7.62x38mmR ammo." icon_state = "nagant" @@ -165,39 +172,59 @@ // A gun to play Russian Roulette! // You can spin the chamber to randomize the position of the bullet. -/obj/item/weapon/gun/ballistic/revolver/russian +/obj/item/weapon/gun/projectile/revolver/russian name = "\improper russian revolver" desc = "A Russian-made revolver for drinking games. Uses .357 ammo, and has a mechanism requiring you to spin the chamber before each trigger pull." origin_tech = "combat=2;materials=2" - mag_type = /obj/item/ammo_box/magazine/internal/cylinder/rus357 - var/spun = FALSE + mag_type = /obj/item/ammo_box/magazine/internal/rus357 + var/spun = 0 -/obj/item/weapon/gun/ballistic/revolver/russian/New() +/obj/item/weapon/gun/projectile/revolver/russian/New() ..() - spin() - spun = TRUE + Spin() update_icon() -/obj/item/weapon/gun/ballistic/revolver/russian/attackby(obj/item/A, mob/user, params) - ..() +/obj/item/weapon/gun/projectile/revolver/russian/proc/Spin() + chambered = null + var/random = rand(1, magazine.max_ammo) + if(random <= get_ammo(0,0)) + chamber_round() + spun = 1 + +/obj/item/weapon/gun/projectile/revolver/russian/attackby(obj/item/A, mob/user, params) + var/num_loaded = ..() + if(num_loaded) + user.visible_message("[user] loads a single bullet into the revolver and spins the chamber.", "You load a single bullet into the chamber and spin it.") + else + user.visible_message("[user] spins the chamber of the revolver.", "You spin the revolver's chamber.") if(get_ammo() > 0) - spin() - spun = TRUE + Spin() update_icon() A.update_icon() return -/obj/item/weapon/gun/ballistic/revolver/russian/attack_self(mob/user) +/obj/item/weapon/gun/projectile/revolver/russian/attack_self(mob/user) if(!spun && can_shoot()) - spin() - spun = TRUE - return - ..() + user.visible_message("[user] spins the chamber of the revolver.", "You spin the revolver's chamber.") + Spin() + else + var/num_unloaded = 0 + while (get_ammo() > 0) + var/obj/item/ammo_casing/CB + CB = magazine.get_round() + chambered = null + CB.loc = get_turf(src.loc) + CB.update_icon() + num_unloaded++ + if (num_unloaded) + user << "You unload [num_unloaded] shell\s from [src]." + else + user << "[src] is empty." -/obj/item/weapon/gun/ballistic/revolver/russian/afterattack(atom/target, mob/living/user, flag, params) +/obj/item/weapon/gun/projectile/revolver/russian/afterattack(atom/target as mob|obj|turf, mob/living/user as mob|obj, flag, params) if(flag) if(!(target in user.contents) && ismob(target)) - if(user.a_intent == INTENT_HARM) // Flogging action + if(user.a_intent == "harm") // Flogging action return if(isliving(user)) @@ -214,33 +241,32 @@ user << "You need to spin the revolver's chamber first!" return - spun = FALSE + spun = 0 if(chambered) var/obj/item/ammo_casing/AC = chambered - if(AC.fire_casing(user, user)) + if(AC.fire(user, user)) playsound(user, fire_sound, 50, 1) var/zone = check_zone(user.zone_selected) var/obj/item/bodypart/affecting = H.get_bodypart(zone) if(zone == "head" || zone == "eyes" || zone == "mouth") shoot_self(user, affecting) else - user.visible_message("[user.name] cowardly fires [src] at [user.p_their()] [affecting.name]!", "You cowardly fire [src] at your [affecting.name]!", "You hear a gunshot!") - chambered = null + user.visible_message("[user.name] cowardly fires [src] at \his [affecting.name]!", "You cowardly fire [src] at your [affecting.name]!", "You hear a gunshot!") return user.visible_message("*click*") playsound(user, 'sound/weapons/empty.ogg', 100, 1) -/obj/item/weapon/gun/ballistic/revolver/russian/proc/shoot_self(mob/living/carbon/human/user, affecting = "head") +/obj/item/weapon/gun/projectile/revolver/russian/proc/shoot_self(mob/living/carbon/human/user, affecting = "head") user.apply_damage(300, BRUTE, affecting) - user.visible_message("[user.name] fires [src] at [user.p_their()] head!", "You fire [src] at your head!", "You hear a gunshot!") + user.visible_message("[user.name] fires [src] at \his head!", "You fire [src] at your head!", "You hear a gunshot!") -/obj/item/weapon/gun/ballistic/revolver/russian/soul +/obj/item/weapon/gun/projectile/revolver/russian/soul name = "cursed russian revolver" desc = "To play with this revolver requires wagering your very soul." -/obj/item/weapon/gun/ballistic/revolver/russian/soul/shoot_self(mob/living/user) +/obj/item/weapon/gun/projectile/revolver/russian/soul/shoot_self(mob/living/user) ..() var/obj/item/device/soulstone/anybody/SS = new /obj/item/device/soulstone/anybody(get_turf(src)) if(!SS.transfer_soul("FORCE", user)) //Something went wrong @@ -248,16 +274,18 @@ return user.visible_message("[user.name]'s soul is captured by \the [src]!", "You've lost the gamble! Your soul is forfiet!") + + ///////////////////////////// // DOUBLE BARRELED SHOTGUN // ///////////////////////////// -/obj/item/weapon/gun/ballistic/revolver/doublebarrel +/obj/item/weapon/gun/projectile/revolver/doublebarrel name = "double-barreled shotgun" desc = "A true classic." icon_state = "dshotgun" item_state = "shotgun" - w_class = WEIGHT_CLASS_BULKY + w_class = 4 force = 10 flags = CONDUCT slot_flags = SLOT_BACK @@ -266,7 +294,7 @@ unique_rename = 1 unique_reskin = 1 -/obj/item/weapon/gun/ballistic/revolver/doublebarrel/New() +/obj/item/weapon/gun/projectile/revolver/doublebarrel/New() ..() options["Default"] = "dshotgun" options["Dark Red Finish"] = "dshotgun-d" @@ -276,7 +304,7 @@ options["Rosewood"] = "dshotgun-p" options["Cancel"] = null -/obj/item/weapon/gun/ballistic/revolver/doublebarrel/attackby(obj/item/A, mob/user, params) +/obj/item/weapon/gun/projectile/revolver/doublebarrel/attackby(obj/item/A, mob/user, params) ..() if(istype(A, /obj/item/ammo_box) || istype(A, /obj/item/ammo_casing)) chamber_round() @@ -287,7 +315,7 @@ if(istype(A, /obj/item/weapon/circular_saw) || istype(A, /obj/item/weapon/gun/energy/plasmacutter)) sawoff(user) -/obj/item/weapon/gun/ballistic/revolver/doublebarrel/attack_self(mob/living/user) +/obj/item/weapon/gun/projectile/revolver/doublebarrel/attack_self(mob/living/user) var/num_unloaded = 0 while (get_ammo() > 0) var/obj/item/ammo_casing/CB @@ -301,14 +329,17 @@ else user << "[src] is empty!" + + + // IMPROVISED SHOTGUN // -/obj/item/weapon/gun/ballistic/revolver/doublebarrel/improvised +/obj/item/weapon/gun/projectile/revolver/doublebarrel/improvised name = "improvised shotgun" desc = "Essentially a tube that aims shotgun shells." icon_state = "ishotgun" item_state = "shotgun" - w_class = WEIGHT_CLASS_BULKY + w_class = 4 force = 10 slot_flags = null mag_type = /obj/item/ammo_box/magazine/internal/shot/improvised @@ -317,7 +348,7 @@ unique_reskin = 0 var/slung = 0 -/obj/item/weapon/gun/ballistic/revolver/doublebarrel/improvised/attackby(obj/item/A, mob/user, params) +/obj/item/weapon/gun/projectile/revolver/doublebarrel/improvised/attackby(obj/item/A, mob/user, params) ..() if(istype(A, /obj/item/stack/cable_coil) && !sawn_state) var/obj/item/stack/cable_coil/C = A @@ -329,12 +360,12 @@ else user << "You need at least ten lengths of cable if you want to make a sling!" -/obj/item/weapon/gun/ballistic/revolver/doublebarrel/improvised/update_icon() +/obj/item/weapon/gun/projectile/revolver/doublebarrel/improvised/update_icon() ..() if(slung) icon_state += "sling" -/obj/item/weapon/gun/ballistic/revolver/doublebarrel/improvised/sawoff(mob/user) +/obj/item/weapon/gun/projectile/revolver/doublebarrel/improvised/sawoff(mob/user) . = ..() if(. && slung) //sawing off the gun removes the sling new /obj/item/stack/cable_coil(get_turf(src), 10) diff --git a/code/modules/projectiles/guns/ballistic/shotgun.dm b/code/modules/projectiles/guns/projectile/shotgun.dm similarity index 58% rename from code/modules/projectiles/guns/ballistic/shotgun.dm rename to code/modules/projectiles/guns/projectile/shotgun.dm index ad4c1a7e51..0faa56f1ee 100644 --- a/code/modules/projectiles/guns/ballistic/shotgun.dm +++ b/code/modules/projectiles/guns/projectile/shotgun.dm @@ -1,19 +1,17 @@ -/obj/item/weapon/gun/ballistic/shotgun +/obj/item/weapon/gun/projectile/shotgun name = "shotgun" desc = "A traditional shotgun with wood furniture and a four-shell capacity underneath." icon_state = "shotgun" item_state = "shotgun" - w_class = WEIGHT_CLASS_BULKY + w_class = 4 force = 10 flags = CONDUCT slot_flags = SLOT_BACK origin_tech = "combat=4;materials=2" mag_type = /obj/item/ammo_box/magazine/internal/shot - casing_ejector = 0 var/recentpump = 0 // to prevent spammage - weapon_weight = WEAPON_MEDIUM -/obj/item/weapon/gun/ballistic/shotgun/attackby(obj/item/A, mob/user, params) +/obj/item/weapon/gun/projectile/shotgun/attackby(obj/item/A, mob/user, params) . = ..() if(.) return @@ -23,18 +21,18 @@ A.update_icon() update_icon() -/obj/item/weapon/gun/ballistic/shotgun/process_chamber(empty_chamber = 0) - return ..() //changed argument value +/obj/item/weapon/gun/projectile/shotgun/process_chamber() + return ..(0, 0) -/obj/item/weapon/gun/ballistic/shotgun/chamber_round() +/obj/item/weapon/gun/projectile/shotgun/chamber_round() return -/obj/item/weapon/gun/ballistic/shotgun/can_shoot() +/obj/item/weapon/gun/projectile/shotgun/can_shoot() if(!chambered) return 0 return (chambered.BB ? 1 : 0) -/obj/item/weapon/gun/ballistic/shotgun/attack_self(mob/living/user) +/obj/item/weapon/gun/projectile/shotgun/attack_self(mob/living/user) if(recentpump) return pump(user) @@ -43,50 +41,50 @@ recentpump = 0 return -/obj/item/weapon/gun/ballistic/shotgun/blow_up(mob/user) +/obj/item/weapon/gun/projectile/shotgun/blow_up(mob/user) . = 0 if(chambered && chambered.BB) process_fire(user, user,0) . = 1 -/obj/item/weapon/gun/ballistic/shotgun/proc/pump(mob/M) +/obj/item/weapon/gun/projectile/shotgun/proc/pump(mob/M) playsound(M, 'sound/weapons/shotgunpump.ogg', 60, 1) pump_unload(M) pump_reload(M) update_icon() //I.E. fix the desc return 1 -/obj/item/weapon/gun/ballistic/shotgun/proc/pump_unload(mob/M) +/obj/item/weapon/gun/projectile/shotgun/proc/pump_unload(mob/M) if(chambered)//We have a shell in the chamber chambered.loc = get_turf(src)//Eject casing chambered.SpinAnimation(5, 1) chambered = null -/obj/item/weapon/gun/ballistic/shotgun/proc/pump_reload(mob/M) +/obj/item/weapon/gun/projectile/shotgun/proc/pump_reload(mob/M) if(!magazine.ammo_count()) return 0 var/obj/item/ammo_casing/AC = magazine.get_round() //load next casing. chambered = AC -/obj/item/weapon/gun/ballistic/shotgun/examine(mob/user) +/obj/item/weapon/gun/projectile/shotgun/examine(mob/user) ..() if (chambered) user << "A [chambered.BB ? "live" : "spent"] one is in the chamber." -/obj/item/weapon/gun/ballistic/shotgun/lethal +/obj/item/weapon/gun/projectile/shotgun/lethal mag_type = /obj/item/ammo_box/magazine/internal/shot/lethal // RIOT SHOTGUN // -/obj/item/weapon/gun/ballistic/shotgun/riot //for spawn in the armory +/obj/item/weapon/gun/projectile/shotgun/riot //for spawn in the armory name = "riot shotgun" desc = "A sturdy shotgun with a longer magazine and a fixed tactical stock designed for non-lethal riot control." icon_state = "riotshotgun" mag_type = /obj/item/ammo_box/magazine/internal/shot/riot sawn_desc = "Come with me if you want to live." -/obj/item/weapon/gun/ballistic/shotgun/riot/attackby(obj/item/A, mob/user, params) +/obj/item/weapon/gun/projectile/shotgun/riot/attackby(obj/item/A, mob/user, params) ..() if(istype(A, /obj/item/weapon/circular_saw) || istype(A, /obj/item/weapon/gun/energy/plasmacutter)) sawoff(user) @@ -99,7 +97,7 @@ // BOLT ACTION RIFLE // /////////////////////// -/obj/item/weapon/gun/ballistic/shotgun/boltaction +/obj/item/weapon/gun/projectile/shotgun/boltaction name = "\improper Mosin Nagant" desc = "This piece of junk looks like something that could have been used 700 years ago. It feels slightly moist." icon_state = "moistnugget" @@ -108,7 +106,7 @@ mag_type = /obj/item/ammo_box/magazine/internal/boltaction var/bolt_open = 0 -/obj/item/weapon/gun/ballistic/shotgun/boltaction/pump(mob/M) +/obj/item/weapon/gun/projectile/shotgun/boltaction/pump(mob/M) playsound(M, 'sound/weapons/shotgunpump.ogg', 60, 1) if(bolt_open) pump_reload(M) @@ -118,103 +116,83 @@ update_icon() //I.E. fix the desc return 1 -/obj/item/weapon/gun/ballistic/shotgun/boltaction/attackby(obj/item/A, mob/user, params) +/obj/item/weapon/gun/projectile/shotgun/boltaction/attackby(obj/item/A, mob/user, params) if(!bolt_open) user << "The bolt is closed!" return . = ..() -/obj/item/weapon/gun/ballistic/shotgun/boltaction/examine(mob/user) +/obj/item/weapon/gun/projectile/shotgun/boltaction/examine(mob/user) ..() user << "The bolt is [bolt_open ? "open" : "closed"]." -/obj/item/weapon/gun/ballistic/shotgun/boltaction/enchanted +/obj/item/weapon/gun/projectile/shotgun/boltaction/enchanted name = "enchanted bolt action rifle" desc = "Careful not to lose your head." var/guns_left = 30 - var/gun_type mag_type = /obj/item/ammo_box/magazine/internal/boltaction/enchanted -/obj/item/weapon/gun/ballistic/shotgun/boltaction/enchanted/arcane_barrage - name = "arcane barrage" - desc = "Pew Pew Pew" - fire_sound = 'sound/weapons/emitter.ogg' - pin = /obj/item/device/firing_pin/magic - icon_state = "arcane_barrage" - item_state = "arcane_barrage" - - flags = DROPDEL - - mag_type = /obj/item/ammo_box/magazine/internal/boltaction/enchanted/arcane_barrage - -/obj/item/weapon/gun/ballistic/shotgun/boltaction/enchanted/New() +/obj/item/weapon/gun/projectile/shotgun/boltaction/enchanted/New() ..() bolt_open = 1 pump() - gun_type = type -/obj/item/weapon/gun/ballistic/shotgun/boltaction/enchanted/dropped() +/obj/item/weapon/gun/projectile/shotgun/boltaction/enchanted/dropped() ..() guns_left = 0 -/obj/item/weapon/gun/ballistic/shotgun/boltaction/enchanted/proc/discard_gun(mob/user) - throw_at_fast(pick(oview(7,get_turf(user))),1,1) - user.visible_message("[user] tosses aside the spent rifle!") - -/obj/item/weapon/gun/ballistic/shotgun/boltaction/enchanted/arcane_barrage/discard_gun(mob/user) - return - -/obj/item/weapon/gun/ballistic/shotgun/boltaction/enchanted/shoot_live_shot(mob/living/user as mob|obj, pointblank = 0, mob/pbtarget = null, message = 1) +/obj/item/weapon/gun/projectile/shotgun/boltaction/enchanted/shoot_live_shot(mob/living/user as mob|obj, pointblank = 0, mob/pbtarget = null, message = 1) ..() if(guns_left) - var/obj/item/weapon/gun/ballistic/shotgun/boltaction/enchanted/GUN = new gun_type - GUN.guns_left = guns_left - 1 + var/obj/item/weapon/gun/projectile/shotgun/boltaction/enchanted/GUN = new + GUN.guns_left = src.guns_left - 1 user.drop_item() user.swap_hand() user.put_in_hands(GUN) else user.drop_item() - discard_gun(user) + src.throw_at_fast(pick(oview(7,get_turf(user))),1,1) + user.visible_message("[user] tosses aside the spent rifle!") // Automatic Shotguns// -/obj/item/weapon/gun/ballistic/shotgun/automatic/shoot_live_shot(mob/living/user as mob|obj) +/obj/item/weapon/gun/projectile/shotgun/automatic/shoot_live_shot(mob/living/user as mob|obj) ..() src.pump(user) -/obj/item/weapon/gun/ballistic/shotgun/automatic/combat +/obj/item/weapon/gun/projectile/shotgun/automatic/combat name = "combat shotgun" desc = "A semi automatic shotgun with tactical furniture and a six-shell capacity underneath." icon_state = "cshotgun" origin_tech = "combat=6" mag_type = /obj/item/ammo_box/magazine/internal/shot/com - w_class = WEIGHT_CLASS_HUGE + w_class = 5 //Dual Feed Shotgun -/obj/item/weapon/gun/ballistic/shotgun/automatic/dual_tube +/obj/item/weapon/gun/projectile/shotgun/automatic/dual_tube name = "cycler shotgun" desc = "An advanced shotgun with two separate magazine tubes, allowing you to quickly toggle between ammo types." icon_state = "cycler" origin_tech = "combat=4;materials=2" mag_type = /obj/item/ammo_box/magazine/internal/shot/tube - w_class = WEIGHT_CLASS_HUGE + w_class = 5 var/toggled = 0 var/obj/item/ammo_box/magazine/internal/shot/alternate_magazine -/obj/item/weapon/gun/ballistic/shotgun/automatic/dual_tube/New() +/obj/item/weapon/gun/projectile/shotgun/automatic/dual_tube/New() ..() if (!alternate_magazine) alternate_magazine = new mag_type(src) -/obj/item/weapon/gun/ballistic/shotgun/automatic/dual_tube/attack_self(mob/living/user) +/obj/item/weapon/gun/projectile/shotgun/automatic/dual_tube/attack_self(mob/living/user) if(!chambered && magazine.contents.len) pump() else toggle_tube(user) -/obj/item/weapon/gun/ballistic/shotgun/automatic/dual_tube/proc/toggle_tube(mob/living/user) +/obj/item/weapon/gun/projectile/shotgun/automatic/dual_tube/proc/toggle_tube(mob/living/user) var/current_mag = magazine var/alt_mag = alternate_magazine magazine = alt_mag @@ -225,7 +203,7 @@ else user << "You switch to tube A." -/obj/item/weapon/gun/ballistic/shotgun/automatic/dual_tube/AltClick(mob/living/user) +/obj/item/weapon/gun/projectile/shotgun/automatic/dual_tube/AltClick(mob/living/user) if(user.incapacitated() || !Adjacent(user) || !istype(user)) return pump() diff --git a/code/modules/projectiles/guns/ballistic/toy.dm b/code/modules/projectiles/guns/projectile/toy.dm similarity index 62% rename from code/modules/projectiles/guns/ballistic/toy.dm rename to code/modules/projectiles/guns/projectile/toy.dm index 5588bae937..417f13ea9b 100644 --- a/code/modules/projectiles/guns/ballistic/toy.dm +++ b/code/modules/projectiles/guns/projectile/toy.dm @@ -1,4 +1,4 @@ -/obj/item/weapon/gun/ballistic/automatic/toy +/obj/item/weapon/gun/projectile/automatic/toy name = "foam force SMG" desc = "A prototype three-round burst toy submachine gun. Ages 8 and up." icon = 'icons/obj/guns/toy.dmi' @@ -12,16 +12,18 @@ can_suppress = 0 clumsy_check = 0 needs_permit = 0 - casing_ejector = 0 -/obj/item/weapon/gun/ballistic/automatic/toy/unrestricted +/obj/item/weapon/gun/projectile/automatic/toy/process_chamber(eject_casing = 0, empty_chamber = 1) + ..() + +/obj/item/weapon/gun/projectile/automatic/toy/unrestricted pin = /obj/item/device/firing_pin -/obj/item/weapon/gun/ballistic/automatic/toy/pistol +/obj/item/weapon/gun/projectile/automatic/toy/pistol name = "foam force pistol" desc = "A small, easily concealable toy handgun. Ages 8 and up." icon_state = "pistol" - w_class = WEIGHT_CLASS_SMALL + w_class = 2 mag_type = /obj/item/ammo_box/magazine/toy/pistol fire_sound = 'sound/weapons/Gunshot.ogg' can_suppress = 0 @@ -29,24 +31,24 @@ fire_delay = 0 actions_types = list() -/obj/item/weapon/gun/ballistic/automatic/toy/pistol/update_icon() +/obj/item/weapon/gun/projectile/automatic/toy/pistol/update_icon() ..() icon_state = "[initial(icon_state)][chambered ? "" : "-e"]" -/obj/item/weapon/gun/ballistic/automatic/toy/pistol/riot +/obj/item/weapon/gun/projectile/automatic/toy/pistol/riot mag_type = /obj/item/ammo_box/magazine/toy/pistol/riot -/obj/item/weapon/gun/ballistic/automatic/toy/pistol/riot/New() +/obj/item/weapon/gun/projectile/automatic/toy/pistol/riot/New() magazine = new /obj/item/ammo_box/magazine/toy/pistol/riot(src) ..() -/obj/item/weapon/gun/ballistic/automatic/toy/pistol/unrestricted +/obj/item/weapon/gun/projectile/automatic/toy/pistol/unrestricted pin = /obj/item/device/firing_pin -/obj/item/weapon/gun/ballistic/automatic/toy/pistol/riot/unrestricted +/obj/item/weapon/gun/projectile/automatic/toy/pistol/riot/unrestricted pin = /obj/item/device/firing_pin -/obj/item/weapon/gun/ballistic/shotgun/toy +/obj/item/weapon/gun/projectile/shotgun/toy name = "foam force shotgun" desc = "A toy shotgun with wood furniture and a four-shell capacity underneath. Ages 8 and up." icon = 'icons/obj/guns/toy.dmi' @@ -56,17 +58,16 @@ mag_type = /obj/item/ammo_box/magazine/internal/shot/toy clumsy_check = 0 needs_permit = 0 - casing_ejector = 0 -/obj/item/weapon/gun/ballistic/shotgun/toy/process_chamber(empty_chamber = 0) +/obj/item/weapon/gun/projectile/shotgun/toy/process_chamber() ..() if(chambered && !chambered.BB) qdel(chambered) -/obj/item/weapon/gun/ballistic/shotgun/toy/unrestricted +/obj/item/weapon/gun/projectile/shotgun/toy/unrestricted pin = /obj/item/device/firing_pin -/obj/item/weapon/gun/ballistic/shotgun/toy/crossbow +/obj/item/weapon/gun/projectile/shotgun/toy/crossbow name = "foam force crossbow" desc = "A weapon favored by many overactive children. Ages 8 and up." icon = 'icons/obj/toy.dmi' @@ -75,28 +76,33 @@ mag_type = /obj/item/ammo_box/magazine/internal/shot/toy/crossbow fire_sound = 'sound/items/syringeproj.ogg' slot_flags = SLOT_BELT - w_class = WEIGHT_CLASS_SMALL + w_class = 2 -/obj/item/weapon/gun/ballistic/automatic/c20r/toy +/obj/item/weapon/gun/projectile/automatic/c20r/toy name = "donksoft SMG" desc = "A bullpup two-round burst toy SMG, designated 'C-20r'. Ages 8 and up." icon = 'icons/obj/guns/toy.dmi' can_suppress = 0 needs_permit = 0 mag_type = /obj/item/ammo_box/magazine/toy/smgm45 - casing_ejector = 0 -/obj/item/weapon/gun/ballistic/automatic/c20r/toy/unrestricted +/obj/item/weapon/gun/projectile/automatic/c20r/toy/process_chamber(eject_casing = 0, empty_chamber = 1) + ..() + + +/obj/item/weapon/gun/projectile/automatic/c20r/toy/unrestricted pin = /obj/item/device/firing_pin -/obj/item/weapon/gun/ballistic/automatic/l6_saw/toy +/obj/item/weapon/gun/projectile/automatic/l6_saw/toy name = "donksoft LMG" desc = "A heavily modified toy light machine gun, designated 'L6 SAW'. Ages 8 and up." icon = 'icons/obj/guns/toy.dmi' can_suppress = 0 needs_permit = 0 mag_type = /obj/item/ammo_box/magazine/toy/m762 - casing_ejector = 0 -/obj/item/weapon/gun/ballistic/automatic/l6_saw/toy/unrestricted +/obj/item/weapon/gun/projectile/automatic/l6_saw/toy/process_chamber(eject_casing = 0, empty_chamber = 1) + ..() + +/obj/item/weapon/gun/projectile/automatic/l6_saw/toy/unrestricted pin = /obj/item/device/firing_pin \ No newline at end of file diff --git a/code/modules/projectiles/guns/syringe_gun.dm b/code/modules/projectiles/guns/syringe_gun.dm index 3aae4b7e16..470cf2fd53 100644 --- a/code/modules/projectiles/guns/syringe_gun.dm +++ b/code/modules/projectiles/guns/syringe_gun.dm @@ -3,7 +3,7 @@ desc = "A spring loaded rifle designed to fit syringes, used to incapacitate unruly patients from a distance." icon_state = "syringegun" item_state = "syringegun" - w_class = WEIGHT_CLASS_NORMAL + w_class = 3 throw_speed = 3 throw_range = 7 force = 4 @@ -18,17 +18,30 @@ ..() chambered = new /obj/item/ammo_casing/syringegun(src) -/obj/item/weapon/gun/syringe/recharge_newshot() - if(!syringes.len) - return - chambered.newshot() +/obj/item/weapon/gun/syringe/newshot() + if(!syringes.len) return -/obj/item/weapon/gun/syringe/can_shoot() - return syringes.len + var/obj/item/weapon/reagent_containers/syringe/S = syringes[1] + + if(!S) return + + chambered.BB = new S.projectile_type (src) + + S.reagents.trans_to(chambered.BB, S.reagents.total_volume) + chambered.BB.name = S.name + syringes.Remove(S) + + qdel(S) + return /obj/item/weapon/gun/syringe/process_chamber() - if(chambered && !chambered.BB) //we just fired - recharge_newshot() + return + +/obj/item/weapon/gun/syringe/afterattack(atom/target as mob|obj|turf, mob/living/user as mob|obj, params) + if(target == loc) + return + newshot() + ..() /obj/item/weapon/gun/syringe/examine(mob/user) ..() @@ -56,8 +69,7 @@ return user << "You load [A] into \the [src]." syringes.Add(A) - A.forceMove(src) - recharge_newshot() + A.loc = src return 1 else usr << "[src] cannot hold more syringes!" @@ -74,7 +86,7 @@ desc = "A small spring-loaded sidearm that functions identically to a syringe gun." icon_state = "syringe_pistol" item_state = "gun" //Smaller inhand - w_class = WEIGHT_CLASS_SMALL + w_class = 2 origin_tech = "combat=2;syndicate=2;biotech=3" force = 2 //Also very weak because it's smaller suppressed = 1 //Softer fire sound diff --git a/code/modules/projectiles/pins.dm b/code/modules/projectiles/pins.dm index 97b3b0bfb7..e72404e3c1 100644 --- a/code/modules/projectiles/pins.dm +++ b/code/modules/projectiles/pins.dm @@ -6,7 +6,7 @@ item_state = "pen" origin_tech = "materials=2;combat=4" flags = CONDUCT - w_class = WEIGHT_CLASS_TINY + w_class = 1 attack_verb = list("poked") var/emagged = 0 var/fail_message = "INVALID USER." @@ -95,11 +95,9 @@ var/obj/item/weapon/implant/req_implant = null /obj/item/device/firing_pin/implant/pin_auth(mob/living/user) - if(iscarbon(user)) - var/mob/living/carbon/C = user - for(var/obj/item/weapon/implant/I in C.implants) - if(req_implant && I.type == req_implant) - return 1 + for(var/obj/item/weapon/implant/I in user) + if(req_implant && I.imp_in == user && I.type == req_implant) + return 1 return 0 /obj/item/device/firing_pin/implant/mindshield @@ -113,14 +111,21 @@ icon_state = "firing_pin_pindi" req_implant = /obj/item/weapon/implant/weapons_auth +/obj/item/device/firing_pin/trick + name = "self-destruct firing pin" + desc = "This pin will detonate the weapon it is put into upon trying to use it" + selfdestruct = 1 + force_replace = 1 +/obj/item/device/firing_pin/trick/pin_auth(mob/living/user) + return 0 // Honk pin, clown's joke item. // Can replace other pins. Replace a pin in cap's laser for extra fun! /obj/item/device/firing_pin/clown name = "hilarious firing pin" desc = "Advanced clowntech that can convert any firearm into a far more useful object." - color = "#FFFF00" + color = "yellow" fail_message = "HONK!" force_replace = 1 diff --git a/code/modules/projectiles/projectile.dm b/code/modules/projectiles/projectile.dm index 5e70db4ff0..b8bf291090 100644 --- a/code/modules/projectiles/projectile.dm +++ b/code/modules/projectiles/projectile.dm @@ -5,14 +5,16 @@ density = 0 anchored = 1 flags = ABSTRACT + unacidable = 1 pass_flags = PASSTABLE mouse_opacity = 0 hitsound = 'sound/weapons/pierce.ogg' var/hitsound_wall = "" - - resistance_flags = LAVA_PROOF | FIRE_PROOF | UNACIDABLE | ACID_PROOF + pressure_resistance = INFINITY + burn_state = LAVA_PROOF var/def_zone = "" //Aiming at var/mob/firer = null//Who shot it + var/obj/item/ammo_casing/ammo_casing = null var/suppressed = 0 //Attack message var/yo = null var/xo = null @@ -23,7 +25,7 @@ var/paused = FALSE //for suspending the projectile midair var/p_x = 16 var/p_y = 16 // the pixel location of the tile that the player clicked. Default is the center - var/speed = 0.8 //Amount of deciseconds it takes for projectile to travel + var/speed = 0.1 //Amount of deciseconds it takes for projectile to travel var/Angle = 0 var/spread = 0 //amount (in degrees) of projectile spread var/legacy = 0 //legacy projectile system @@ -33,7 +35,7 @@ var/damage_type = BRUTE //BRUTE, BURN, TOX, OXY, CLONE are the only things that should be in here var/nodamage = 0 //Determines if the projectile will skip any damage inflictions var/flag = "bullet" //Defines what armor to use when it hits things. Must be set to bullet, laser, energy,or bomb - var/projectile_type = /obj/item/projectile + var/projectile_type = "/obj/item/projectile" var/range = 50 //This will de-increment every step. When 0, it will delete the projectile. //Effects var/stun = 0 @@ -47,9 +49,6 @@ var/stamina = 0 var/jitter = 0 var/forcedodge = 0 //to pass through everything - var/dismemberment = 0 //The higher the number, the greater the bonus to dismembering. 0 will not dismember at all. - var/impact_effect_type //what type of impact effect to show when hitting something - var/log_override = FALSE //is this type spammed enough to not log? (KAs) /obj/item/projectile/New() permutated = list() @@ -63,42 +62,14 @@ /obj/item/projectile/proc/on_range() //if we want there to be effects when they reach the end of their range qdel(src) -//to get the correct limb (if any) for the projectile hit message -/mob/living/proc/check_limb_hit(hit_zone) - if(has_limbs) - return hit_zone - -/mob/living/carbon/check_limb_hit(hit_zone) - if(get_bodypart(hit_zone)) - return hit_zone - else //when a limb is missing the damage is actually passed to the chest - return "chest" - -/obj/item/projectile/proc/on_hit(atom/target, blocked = 0) - var/turf/target_loca = get_turf(target) +/obj/item/projectile/proc/on_hit(atom/target, blocked = 0, hit_zone) if(!isliving(target)) - if(impact_effect_type) - PoolOrNew(impact_effect_type, list(target_loca, target, src)) return 0 var/mob/living/L = target if(blocked != 100) // not completely blocked - if(damage && L.blood_volume && damage_type == BRUTE) - var/splatter_dir = dir - if(starting) - splatter_dir = get_dir(starting, target_loca) - if(isalien(L)) - PoolOrNew(/obj/effect/overlay/temp/dir_setting/bloodsplatter/xenosplatter, list(target_loca, splatter_dir)) - else - PoolOrNew(/obj/effect/overlay/temp/dir_setting/bloodsplatter, list(target_loca, splatter_dir)) - if(prob(33)) - L.add_splatter_floor(target_loca) - else if(impact_effect_type) - PoolOrNew(impact_effect_type, list(target_loca, target, src)) - var/organ_hit_text = "" - var/limb_hit = L.check_limb_hit(def_zone)//to get the correct message info. - if(limb_hit) - organ_hit_text = " in \the [parse_zone(limb_hit)]" + if(L.has_limbs) + organ_hit_text = " in \the [parse_zone(def_zone)]" if(suppressed) playsound(loc, hitsound, 5, 1, -1) L << "You're shot by \a [src][organ_hit_text]!" @@ -107,8 +78,8 @@ var/volume = vol_by_damage() playsound(loc, hitsound, volume, 1, -1) L.visible_message("[L] is hit by \a [src][organ_hit_text]!", \ - "[L] is hit by \a [src][organ_hit_text]!", null, COMBAT_MESSAGE_RANGE) - L.on_hit(src) + "[L] is hit by \a [src][organ_hit_text]!") //X has fired Y is now given by the guns so you cant tell who shot you if you could not see the shooter + L.on_hit(type) var/reagent_note if(reagents && reagents.reagent_list) @@ -164,77 +135,63 @@ /obj/item/projectile/Process_Spacemove(var/movement_dir = 0) return 1 //Bullets don't drift in space -/obj/item/projectile/proc/fire(setAngle, atom/direct_target) - if(!log_override && firer && original) - add_logs(firer, original, "fired at", src, " [get_area(src)]") - if(direct_target) - direct_target.bullet_act(src, def_zone) - qdel(src) - return +/obj/item/projectile/proc/fire(var/setAngle) if(setAngle) Angle = setAngle if(!legacy) //new projectiles set waitfor = 0 - var/next_run = world.time while(loc) - if(paused) - next_run = world.time - sleep(1) - continue + if(!paused) + if((!( current ) || loc == current)) + current = locate(Clamp(x+xo,1,world.maxx),Clamp(y+yo,1,world.maxy),z) - if((!( current ) || loc == current)) - current = locate(Clamp(x+xo,1,world.maxx),Clamp(y+yo,1,world.maxy),z) + if(!Angle) + Angle=round(Get_Angle(src,current)) + if(spread) + Angle += (rand() - 0.5) * spread + var/matrix/M = new + M.Turn(Angle) + transform = M - if(!Angle) - Angle=round(Get_Angle(src,current)) - if(spread) - Angle += (rand() - 0.5) * spread - var/matrix/M = new - M.Turn(Angle) - transform = M + var/Pixel_x=round(sin(Angle)+16*sin(Angle)*2) + var/Pixel_y=round(cos(Angle)+16*cos(Angle)*2) + var/pixel_x_offset = pixel_x + Pixel_x + var/pixel_y_offset = pixel_y + Pixel_y + var/new_x = x + var/new_y = y - var/Pixel_x=round(sin(Angle)+16*sin(Angle)*2) - var/Pixel_y=round(cos(Angle)+16*cos(Angle)*2) - var/pixel_x_offset = pixel_x + Pixel_x - var/pixel_y_offset = pixel_y + Pixel_y - var/new_x = x - var/new_y = y + while(pixel_x_offset > 16) + pixel_x_offset -= 32 + pixel_x -= 32 + new_x++// x++ + while(pixel_x_offset < -16) + pixel_x_offset += 32 + pixel_x += 32 + new_x-- - while(pixel_x_offset > 16) - pixel_x_offset -= 32 - pixel_x -= 32 - new_x++// x++ - while(pixel_x_offset < -16) - pixel_x_offset += 32 - pixel_x += 32 - new_x-- + while(pixel_y_offset > 16) + pixel_y_offset -= 32 + pixel_y -= 32 + new_y++ + while(pixel_y_offset < -16) + pixel_y_offset += 32 + pixel_y += 32 + new_y-- - while(pixel_y_offset > 16) - pixel_y_offset -= 32 - pixel_y -= 32 - new_y++ - while(pixel_y_offset < -16) - pixel_y_offset += 32 - pixel_y += 32 - new_y-- - - step_towards(src, locate(new_x, new_y, z)) - next_run += max(world.tick_lag, speed) - var/delay = next_run - world.time - if(delay <= world.tick_lag*2) - pixel_x = pixel_x_offset - pixel_y = pixel_y_offset - else - animate(src, pixel_x = pixel_x_offset, pixel_y = pixel_y_offset, time = max(1, (delay <= 3 ? delay - 1 : delay)), flags = ANIMATION_END_NOW) - - if(original && (original.layer>=2.75) || ismob(original)) - if(loc == get_turf(original)) - if(!(original in permutated)) - Bump(original, 1) - Range() - if (delay > 0) - sleep(delay) + speed = round(speed) + step_towards(src, locate(new_x, new_y, z)) + if(speed <= 1) + pixel_x = pixel_x_offset + pixel_y = pixel_y_offset + else + animate(src, pixel_x = pixel_x_offset, pixel_y = pixel_y_offset, time = max(1, (speed <= 3 ? speed - 1 : speed))) + if(original && (original.layer>=2.75) || ismob(original)) + if(loc == get_turf(original)) + if(!(original in permutated)) + Bump(original, 1) + Range() + sleep(max(1, speed)) else //old projectile system set waitfor = 0 while(loc) @@ -247,47 +204,7 @@ if(!(original in permutated)) Bump(original, 1) Range() - sleep(config.run_speed * 0.9) - - -/obj/item/projectile/proc/preparePixelProjectile(atom/target, var/turf/targloc, mob/living/user, params, spread) - var/turf/curloc = get_turf(user) - src.loc = get_turf(user) - src.starting = get_turf(user) - src.current = curloc - src.yo = targloc.y - curloc.y - src.xo = targloc.x - curloc.x - - if(params) - var/list/mouse_control = params2list(params) - if(mouse_control["icon-x"]) - src.p_x = text2num(mouse_control["icon-x"]) - if(mouse_control["icon-y"]) - src.p_y = text2num(mouse_control["icon-y"]) - if(mouse_control["screen-loc"]) - //Split screen-loc up into X+Pixel_X and Y+Pixel_Y - var/list/screen_loc_params = splittext(mouse_control["screen-loc"], ",") - - //Split X+Pixel_X up into list(X, Pixel_X) - var/list/screen_loc_X = splittext(screen_loc_params[1],":") - - //Split Y+Pixel_Y up into list(Y, Pixel_Y) - var/list/screen_loc_Y = splittext(screen_loc_params[2],":") - // world << "X: [screen_loc_X[1]] PixelX: [screen_loc_X[2]] / Y: [screen_loc_Y[1]] PixelY: [screen_loc_Y[2]]" - var/x = text2num(screen_loc_X[1]) * 32 + text2num(screen_loc_X[2]) - 32 - var/y = text2num(screen_loc_Y[1]) * 32 + text2num(screen_loc_Y[2]) - 32 - - //Calculate the "resolution" of screen based on client's view and world's icon size. This will work if the user can view more tiles than average. - var/screenview = (user.client.view * 2 + 1) * world.icon_size //Refer to http://www.byond.com/docs/ref/info.html#/client/var/view for mad maths - - var/ox = round(screenview/2) //"origin" x - var/oy = round(screenview/2) //"origin" y - // world << "Pixel position: [x] [y]" - var/angle = Atan2(y - oy, x - ox) - // world << "Angle: [angle]" - src.Angle = angle - if(spread) - src.Angle += spread + sleep(1) /obj/item/projectile/Crossed(atom/movable/AM) //A mob moving on a tile with a projectile is hit by it. @@ -296,7 +213,9 @@ Bump(AM, 1) /obj/item/projectile/Destroy() + ammo_casing = null return ..() -/obj/item/projectile/experience_pressure_difference() - return +/obj/item/projectile/proc/dumbfire(var/dir) + current = get_ranged_target_turf(src, dir, world.maxx) + fire() \ No newline at end of file diff --git a/code/modules/projectiles/projectile/beams.dm b/code/modules/projectiles/projectile/beams.dm index 15c7a04d07..a7aff9167e 100644 --- a/code/modules/projectiles/projectile/beams.dm +++ b/code/modules/projectiles/projectile/beams.dm @@ -9,7 +9,6 @@ hitsound_wall = 'sound/weapons/effects/searwall.ogg' flag = "laser" eyeblur = 2 - impact_effect_type = /obj/effect/overlay/temp/impact_effect/red_laser /obj/item/projectile/beam/laser @@ -45,7 +44,6 @@ irradiate = 30 range = 15 forcedodge = 1 - impact_effect_type = /obj/effect/overlay/temp/impact_effect/green_laser /obj/item/projectile/beam/disabler name = "disabler beam" @@ -55,18 +53,16 @@ flag = "energy" hitsound = 'sound/weapons/tap.ogg' eyeblur = 0 - impact_effect_type = /obj/effect/overlay/temp/impact_effect/blue_laser /obj/item/projectile/beam/pulse name = "pulse" icon_state = "u_laser" damage = 50 luminosity = 2 - impact_effect_type = /obj/effect/overlay/temp/impact_effect/blue_laser /obj/item/projectile/beam/pulse/on_hit(atom/target, blocked = 0) . = ..() - if(isturf(target) || istype(target,/obj/structure/)) + if(istype(target,/turf/)||istype(target,/obj/structure/)) target.ex_act(2) /obj/item/projectile/beam/pulse/shot @@ -77,7 +73,7 @@ icon_state = "pulse1_bl" var/life = 20 -/obj/item/projectile/beam/pulse/heavy/on_hit(atom/target, blocked = 0) +/obj/item/projectile/beam/pulse/heavy/on_hit(atom/target, blocked = 0, hit_zone) life -= 10 if(life > 0) . = -1 @@ -90,7 +86,6 @@ legacy = 1 luminosity = 2 animate_movement = SLIDE_STEPS - impact_effect_type = /obj/effect/overlay/temp/impact_effect/green_laser /obj/item/projectile/beam/emitter/singularity_pull() return //don't want the emitters to miss @@ -107,7 +102,6 @@ damage_type = STAMINA flag = "laser" var/suit_types = list(/obj/item/clothing/suit/redtag, /obj/item/clothing/suit/bluetag) - impact_effect_type = /obj/effect/overlay/temp/impact_effect/blue_laser /obj/item/projectile/beam/lasertag/on_hit(atom/target, blocked = 0) . = ..() @@ -120,7 +114,6 @@ /obj/item/projectile/beam/lasertag/redtag icon_state = "laser" suit_types = list(/obj/item/clothing/suit/bluetag) - impact_effect_type = /obj/effect/overlay/temp/impact_effect/red_laser /obj/item/projectile/beam/lasertag/bluetag icon_state = "bluelaser" @@ -131,15 +124,12 @@ icon_state = "purple_laser" damage = 200 damage_type = BURN - impact_effect_type = /obj/effect/overlay/temp/impact_effect/purple_laser /obj/item/projectile/beam/instakill/blue icon_state = "blue_laser" - impact_effect_type = /obj/effect/overlay/temp/impact_effect/blue_laser /obj/item/projectile/beam/instakill/red icon_state = "red_laser" - impact_effect_type = /obj/effect/overlay/temp/impact_effect/red_laser /obj/item/projectile/beam/instakill/on_hit(atom/target) . = ..() diff --git a/code/modules/projectiles/projectile/bullets.dm b/code/modules/projectiles/projectile/bullets.dm index 82407ff40c..3b3d707419 100644 --- a/code/modules/projectiles/projectile/bullets.dm +++ b/code/modules/projectiles/projectile/bullets.dm @@ -6,7 +6,6 @@ nodamage = 0 flag = "bullet" hitsound_wall = "ricochet" - impact_effect_type = /obj/effect/overlay/temp/impact_effect /obj/item/projectile/bullet/weakbullet //beanbag, heavy stamina damage damage = 5 @@ -71,20 +70,6 @@ /obj/item/projectile/bullet/midbullet3 damage = 30 -/obj/item/projectile/bullet/midbullet3/hp - damage = 40 - armour_penetration = -50 - -/obj/item/projectile/bullet/midbullet3/ap - damage = 27 - armour_penetration = 40 - -/obj/item/projectile/bullet/midbullet3/fire/on_hit(atom/target, blocked = 0) - if(..(target, blocked)) - var/mob/living/M = target - M.adjust_fire_stacks(1) - M.IgniteMob() - /obj/item/projectile/bullet/heavybullet damage = 35 @@ -189,11 +174,11 @@ create_reagents(50) reagents.set_reacting(FALSE) -/obj/item/projectile/bullet/dart/on_hit(atom/target, blocked = 0) +/obj/item/projectile/bullet/dart/on_hit(atom/target, blocked = 0, hit_zone) if(iscarbon(target)) var/mob/living/carbon/M = target if(blocked != 100) // not completely blocked - if(M.can_inject(null, 0, def_zone, piercing)) // Pass the hit zone to see if it can inject by whether it hit the head or the body. + if(M.can_inject(null,0,hit_zone,piercing)) // Pass the hit zone to see if it can inject by whether it hit the head or the body. ..() reagents.reaction(M, INJECT) reagents.trans_to(M, reagents.total_volume) @@ -203,7 +188,7 @@ target.visible_message("The [name] was deflected!", \ "You were protected against the [name]!") - ..(target, blocked) + ..(target, blocked, hit_zone) reagents.set_reacting(TRUE) reagents.handle_reactions() return 1 @@ -217,8 +202,13 @@ //This one is for future syringe guns update /obj/item/projectile/bullet/dart/syringe name = "syringe" + icon = 'icons/obj/chemical.dmi' icon_state = "syringeproj" +//Piercing Syringe +/obj/item/projectile/bullet/dart/syringe/piercing + piercing = 1 + /obj/item/projectile/bullet/neurotoxin name = "neurotoxin spit" icon_state = "neurotoxin" @@ -237,15 +227,13 @@ //// SNIPER BULLETS /obj/item/projectile/bullet/sniper - speed = 0 //360 alwaysscope. damage = 70 stun = 5 weaken = 5 - dismemberment = 50 armour_penetration = 50 var/breakthings = TRUE -/obj/item/projectile/bullet/sniper/on_hit(atom/target, blocked = 0) +/obj/item/projectile/bullet/sniper/on_hit(atom/target, blocked = 0, hit_zone) if((blocked != 100) && (!ismob(target) && breakthings)) target.ex_act(rand(1,2)) return ..() @@ -255,12 +243,11 @@ armour_penetration = 0 nodamage = 1 stun = 0 - dismemberment = 0 weaken = 0 breakthings = FALSE -/obj/item/projectile/bullet/sniper/soporific/on_hit(atom/target, blocked = 0) - if((blocked != 100) && isliving(target)) +/obj/item/projectile/bullet/sniper/soporific/on_hit(atom/target, blocked = 0, hit_zone) + if((blocked != 100) && istype(target, /mob/living)) var/mob/living/L = target L.Sleeping(20) return ..() @@ -270,11 +257,10 @@ armour_penetration = 15 damage = 15 stun = 0 - dismemberment = 0 weaken = 0 breakthings = FALSE -/obj/item/projectile/bullet/sniper/haemorrhage/on_hit(atom/target, blocked = 0) +/obj/item/projectile/bullet/sniper/haemorrhage/on_hit(atom/target, blocked = 0, hit_zone) if((blocked != 100) && iscarbon(target)) var/mob/living/carbon/C = target C.bleed(100) @@ -286,7 +272,6 @@ name = "penetrator round" damage = 60 forcedodge = 1 - dismemberment = 0 //It goes through you cleanly. stun = 0 weaken = 0 breakthings = FALSE @@ -304,7 +289,7 @@ damage = 20 armour_penetration = 0 -/obj/item/projectile/bullet/saw/bleeding/on_hit(atom/target, blocked = 0) +/obj/item/projectile/bullet/saw/bleeding/on_hit(atom/target, blocked = 0, hit_zone) . = ..() if((blocked != 100) && iscarbon(target)) var/mob/living/carbon/C = target @@ -322,7 +307,7 @@ damage = 7 armour_penetration = 0 -/obj/item/projectile/bullet/saw/incen/Move() +obj/item/projectile/bullet/saw/incen/Move() ..() var/turf/location = get_turf(src) if(location) diff --git a/code/modules/projectiles/projectile/energy.dm b/code/modules/projectiles/projectile/energy.dm index a30299bd4b..e02513a9b1 100644 --- a/code/modules/projectiles/projectile/energy.dm +++ b/code/modules/projectiles/projectile/energy.dm @@ -29,7 +29,7 @@ if(C.dna && C.dna.check_mutation(HULK)) C.say(pick(";RAAAAAAAARGH!", ";HNNNNNNNNNGGGGGGH!", ";GWAAAAAAAARRRHHH!", "NNNNNNNNGGGGGGGGHH!", ";AAAAAAARRRGH!" )) else if(C.status_flags & CANWEAKEN) - addtimer(C, "do_jitter_animation", 5, TIMER_NORMAL, jitter) + addtimer(C, "do_jitter_animation", 5, FALSE, jitter) /obj/item/projectile/energy/electrode/on_range() //to ensure the bolt sparks when it reaches the end of its range if it didn't hit a target yet var/datum/effect_system/spark_spread/sparks = new /datum/effect_system/spark_spread @@ -68,10 +68,11 @@ icon = 'icons/effects/effects.dmi' icon_state = "dragnetfield" anchored = 1 + unacidable = 1 /obj/effect/nettingportal/New() ..() - SetLuminosity(3) + set_light(3) var/obj/item/device/radio/beacon/teletarget = null for(var/obj/machinery/computer/teleporter/com in machines) if(com.target) @@ -142,7 +143,6 @@ damage = 20 damage_type = CLONE irradiate = 10 - impact_effect_type = /obj/effect/overlay/temp/impact_effect/green_laser /obj/item/projectile/energy/dart //ninja throwing dart name = "dart" @@ -161,30 +161,30 @@ weaken = 5 stutter = 5 -/obj/item/projectile/energy/bolt/halloween - name = "candy corn" - icon_state = "candy_corn" - /obj/item/projectile/energy/bolt/large damage = 20 -/obj/item/projectile/energy/tesla_revolver - name = "tesla bolt" - icon_state = "tesla_projectile" - impact_effect_type = /obj/effect/overlay/temp/impact_effect/blue_laser +/obj/item/ammo_casing/energy/plasma + projectile_type = /obj/item/projectile/plasma + select_name = "plasma burst" + fire_sound = 'sound/weapons/pulse.ogg' + +/obj/item/ammo_casing/energy/plasma/adv + projectile_type = /obj/item/projectile/plasma/adv + +/obj/item/projectile/energy/shock_revolver + name = "shock bolt" + icon_state = "purple_laser" var/chain -/obj/item/projectile/energy/tesla_revolver/fire(setAngle) - if(firer) - chain = firer.Beam(src, icon_state = "lightning[rand(1, 12)]", time = INFINITY, maxdistance = INFINITY) +/obj/item/ammo_casing/energy/shock_revolver/ready_proj(atom/target, mob/living/user, quiet, zone_override = "") ..() + var/obj/item/projectile/hook/P = BB + spawn(1) + P.chain = P.Beam(user,icon_state="purple_lightning",icon = 'icons/effects/effects.dmi',time=1000, maxdistance = 30) -/obj/item/projectile/energy/tesla_revolver/on_hit(atom/target) +/obj/item/projectile/energy/shock_revolver/on_hit(atom/target) . = ..() if(isliving(target)) tesla_zap(src, 3, 10000) - qdel(src) - -/obj/item/projectile/energy/tesla_revolver/Destroy() qdel(chain) - return ..() diff --git a/code/modules/projectiles/projectile/magic.dm b/code/modules/projectiles/projectile/magic.dm index 787aaffa5b..638b38d4fa 100644 --- a/code/modules/projectiles/projectile/magic.dm +++ b/code/modules/projectiles/projectile/magic.dm @@ -24,46 +24,27 @@ damage_type = BRUTE nodamage = 0 - //explosion values - var/exp_heavy = 0 - var/exp_light = 2 - var/exp_flash = 3 - var/exp_fire = 2 - /obj/item/projectile/magic/fireball/Range() var/turf/T1 = get_step(src,turn(dir, -45)) var/turf/T2 = get_step(src,turn(dir, 45)) - var/turf/T3 = get_step(src,dir) var/mob/living/L = locate(/mob/living) in T1 //if there's a mob alive in our front right diagonal, we hit it. if(L && L.stat != DEAD) - Bump(L,1) //Magic Bullet #teachthecontroversy + Bump(L) //Magic Bullet #teachthecontroversy return L = locate(/mob/living) in T2 if(L && L.stat != DEAD) - Bump(L,1) - return - L = locate(/mob/living) in T3 - if(L && L.stat != DEAD) - Bump(L,1) + Bump(L) return ..() /obj/item/projectile/magic/fireball/on_hit(target) . = ..() var/turf/T = get_turf(target) - explosion(T, -1, exp_heavy, exp_light, exp_flash, 0, flame_range = exp_fire) + explosion(T, -1, 0, 2, 3, 0, flame_range = 2) if(ismob(target)) //multiple flavors of pain var/mob/living/M = target M.take_overall_damage(0,10) //between this 10 burn, the 10 brute, the explosion brute, and the onfire burn, your at about 65 damage if you stop drop and roll immediately -/obj/item/projectile/magic/fireball/infernal - name = "infernal fireball" - exp_heavy = -1 - exp_light = -1 - exp_flash = 4 - exp_fire= 5 - - /obj/item/projectile/magic/resurrection name = "bolt of resurrection" icon_state = "ion" @@ -126,7 +107,7 @@ OpenDoor(target) else var/turf/T = get_turf(target) - if(isclosedturf(T) && !istype(T, /turf/closed/indestructible)) + if(istype(T,/turf/closed) && !istype(T, /turf/closed/indestructible)) CreateDoor(T) /obj/item/projectile/magic/door/proc/CreateDoor(turf/T) @@ -151,7 +132,6 @@ /obj/item/projectile/magic/change/on_hit(atom/change) . = ..() wabbajack(change) - qdel(src) /proc/wabbajack(mob/living/M) if(!istype(M) || M.stat == DEAD || M.notransform || (GODMODE & M.status_flags)) @@ -165,7 +145,7 @@ var/list/contents = M.contents.Copy() - if(iscyborg(M)) + if(istype(M, /mob/living/silicon/robot)) var/mob/living/silicon/robot/Robot = M if(Robot.mmi) qdel(Robot.mmi) @@ -212,7 +192,7 @@ if("animal") var/path if(prob(50)) - var/beast = pick("carp","bear","mushroom","statue", "bat", "goat","killertomato", "spiderbase", "spiderhunter", "blobbernaut", "magicarp", "chaosmagicarp", "watcher", "goliath", "headcrab", "morph", "stickman", "stickdog", "lesserdragon") + var/beast = pick("carp","bear","mushroom","statue", "bat", "goat","killertomato", "spiderbase", "spiderhunter", "blobbernaut", "magicarp", "chaosmagicarp") switch(beast) if("carp") path = /mob/living/simple_animal/hostile/carp @@ -238,20 +218,6 @@ path = /mob/living/simple_animal/hostile/carp/ranged if("chaosmagicarp") path = /mob/living/simple_animal/hostile/carp/ranged/chaos - if("watcher") - path = /mob/living/simple_animal/hostile/asteroid/basilisk/watcher - if("goliath") - path = /mob/living/simple_animal/hostile/asteroid/goliath/beast - if("headcrab") - path = /mob/living/simple_animal/hostile/headcrab - if("morph") - path = /mob/living/simple_animal/hostile/morph - if("stickman") - path = /mob/living/simple_animal/hostile/stickman - if("stickdog") - path = /mob/living/simple_animal/hostile/stickman/dog - if("lesserdragon") - path = /mob/living/simple_animal/hostile/megafauna/dragon/lesser else var/animal = pick("parrot","corgi","crab","pug","cat","mouse","chicken","cow","lizard","chick","fox","butterfly","cak") switch(animal) @@ -316,7 +282,7 @@ M.attack_log += text("\[[time_stamp()]\] [M.real_name] ([M.ckey]) became [new_mob.real_name].") - new_mob.a_intent = INTENT_HARM + new_mob.a_intent = "harm" M.wabbajack_act(new_mob) @@ -333,53 +299,34 @@ damage_type = BURN nodamage = 1 -/obj/item/projectile/magic/animate/on_hit(atom/target, blocked = 0) +/obj/item/projectile/magic/animate/Bump(atom/change) ..() - if((istype(target, /obj/item) || istype(target, /obj/structure)) && !is_type_in_list(target, protected_objects)) - if(istype(target, /obj/structure/statue/petrified)) - var/obj/structure/statue/petrified/P = target - if(P.petrified_mob) - var/mob/living/L = P.petrified_mob - var/mob/living/simple_animal/hostile/statue/S = new (P.loc, firer) - S.name = "statue of [L.name]" + if(istype(change, /obj/item) || istype(change, /obj/structure) && !is_type_in_list(change, protected_objects)) + if(istype(change, /obj/structure/closet/statue)) + for(var/mob/living/carbon/human/H in change.contents) + var/mob/living/simple_animal/hostile/statue/S = new /mob/living/simple_animal/hostile/statue(change.loc, firer) + S.name = "statue of [H.name]" S.faction = list("\ref[firer]") - S.icon = P.icon - S.icon_state = P.icon_state - S.overlays = P.overlays - S.color = P.color - S.atom_colours = P.atom_colours.Copy() - if(L.mind) - L.mind.transfer_to(S) + S.icon = change.icon + S.icon_state = change.icon_state + S.overlays = change.overlays + S.color = change.color + if(H.mind) + H.mind.transfer_to(S) S << "You are an animate statue. You cannot move when monitored, but are nearly invincible and deadly when unobserved! Do not harm [firer.name], your creator." - P.loc = S + H = change + H.loc = S qdel(src) return else - var/obj/O = target + var/obj/O = change if(istype(O, /obj/item/weapon/gun)) new /mob/living/simple_animal/hostile/mimic/copy/ranged(O.loc, O, firer) else new /mob/living/simple_animal/hostile/mimic/copy(O.loc, O, firer) - else if(istype(target, /mob/living/simple_animal/hostile/mimic/copy)) + else if(istype(change, /mob/living/simple_animal/hostile/mimic/copy)) // Change our allegiance! - var/mob/living/simple_animal/hostile/mimic/copy/C = target + var/mob/living/simple_animal/hostile/mimic/copy/C = change C.ChangeOwner(firer) -/obj/item/projectile/magic/spellblade - name = "blade energy" - icon_state = "lavastaff" - damage = 15 - damage_type = BURN - flag = "magic" - dismemberment = 50 - nodamage = 0 - -/obj/item/projectile/magic/arcane_barrage - name = "arcane bolt" - icon_state = "arcane_barrage" - damage = 20 - damage_type = BURN - nodamage = 0 - armour_penetration = 0 - flag = "magic" diff --git a/code/modules/projectiles/projectile/reusable.dm b/code/modules/projectiles/projectile/reusable.dm index 9bcad0db7b..f253655e3f 100644 --- a/code/modules/projectiles/projectile/reusable.dm +++ b/code/modules/projectiles/projectile/reusable.dm @@ -1,9 +1,8 @@ /obj/item/projectile/bullet/reusable name = "reusable bullet" desc = "How do you even reuse a bullet?" - var/ammo_type = /obj/item/ammo_casing/caseless + var/ammo_type = /obj/item/ammo_casing/caseless/ var/dropped = 0 - impact_effect_type = null /obj/item/projectile/bullet/reusable/on_hit(atom/target, blocked = 0) . = ..() @@ -15,8 +14,7 @@ /obj/item/projectile/bullet/reusable/proc/handle_drop() if(!dropped) - var/turf/T = get_turf(src) - new ammo_type(T) + new ammo_type(src.loc) dropped = 1 /obj/item/projectile/bullet/reusable/magspear @@ -33,45 +31,34 @@ damage_type = OXY nodamage = 1 icon = 'icons/obj/guns/toy.dmi' - icon_state = "foamdart_proj" + icon_state = "foamdart" ammo_type = /obj/item/ammo_casing/caseless/foam_dart range = 10 - var/modified = 0 var/obj/item/weapon/pen/pen = null /obj/item/projectile/bullet/reusable/foam_dart/handle_drop() if(dropped) return - var/turf/T = get_turf(src) dropped = 1 - var/obj/item/ammo_casing/caseless/foam_dart/newcasing = new ammo_type(T) - newcasing.modified = modified - var/obj/item/projectile/bullet/reusable/foam_dart/newdart = newcasing.BB - newdart.modified = modified - newdart.damage = damage - newdart.nodamage = nodamage - newdart.damage_type = damage_type + var/obj/item/ammo_casing/caseless/foam_dart/newdart = new ammo_type(src.loc) + var/obj/item/ammo_casing/caseless/foam_dart/old_dart = ammo_casing + newdart.modified = old_dart.modified if(pen) - newdart.pen = pen - pen.forceMove(newdart) + var/obj/item/projectile/bullet/reusable/foam_dart/newdart_FD = newdart.BB + newdart_FD.pen = pen + pen.loc = newdart_FD pen = null + newdart.BB.damage = damage + newdart.BB.nodamage = nodamage + newdart.BB.damage_type = damage_type newdart.update_icon() - /obj/item/projectile/bullet/reusable/foam_dart/Destroy() pen = null return ..() /obj/item/projectile/bullet/reusable/foam_dart/riot name = "riot foam dart" - icon_state = "foamdart_riot_proj" + icon_state = "foamdart_riot" ammo_type = /obj/item/ammo_casing/caseless/foam_dart/riot stamina = 25 - -/obj/item/projectile/bullet/reusable/arrow - name = "arrow" - icon_state = "arrow" - ammo_type = /obj/item/ammo_casing/caseless/arrow - range = 10 - damage = 25 - damage_type = BRUTE \ No newline at end of file diff --git a/code/modules/projectiles/projectile/special.dm b/code/modules/projectiles/projectile/special.dm index 284056b2d7..9175a77ff7 100644 --- a/code/modules/projectiles/projectile/special.dm +++ b/code/modules/projectiles/projectile/special.dm @@ -5,7 +5,6 @@ damage_type = BURN nodamage = 1 flag = "energy" - impact_effect_type = /obj/effect/overlay/temp/impact_effect/ion /obj/item/projectile/ion/on_hit(atom/target, blocked = 0) @@ -43,27 +42,6 @@ explosion(target, -1, 0, 2, 1, 0, flame_range = 3) return 1 -/obj/item/projectile/bullet/a84mm - name ="anti-armour rocket" - desc = "USE A WEEL GUN" - icon_state= "atrocket" - damage = 80 - var/anti_armour_damage = 200 - armour_penetration = 100 - dismemberment = 100 - -/obj/item/projectile/bullet/a84mm/on_hit(atom/target, blocked = 0) - ..() - explosion(target, -1, 1, 3, 1, 0, flame_range = 4) - - if(istype(target, /obj/mecha)) - var/obj/mecha/M = target - M.take_damage(anti_armour_damage) - if(istype(target, /mob/living/silicon)) - var/mob/living/silicon/S = target - S.take_overall_damage(anti_armour_damage*0.75, anti_armour_damage*0.25) - return 1 - /obj/item/projectile/temp name = "freeze beam" icon_state = "ice_2" @@ -120,8 +98,8 @@ if(iscarbon(target)) var/mob/living/carbon/C = target if(C.dna.species.id == "pod") - C.randmuti() - C.randmut() + randmuti(C) + randmut(C) C.updateappearance() C.domutcheck() @@ -143,6 +121,63 @@ M.adjustBrainLoss(20) M.hallucination += 20 +/obj/item/projectile/kinetic + name = "kinetic force" + icon_state = null + damage = 10 + damage_type = BRUTE + flag = "bomb" + range = 3 + var/splash = 0 + +/obj/item/projectile/kinetic/super + damage = 11 + range = 4 + +/obj/item/projectile/kinetic/hyper + damage = 12 + range = 5 + splash = 1 + +/obj/item/projectile/kinetic/New() + var/turf/proj_turf = get_turf(src) + if(!istype(proj_turf, /turf)) + return + var/datum/gas_mixture/environment = proj_turf.return_air() + var/pressure = environment.return_pressure() + if(pressure < 50) + name = "full strength kinetic force" + damage *= 4 + ..() + +/obj/item/projectile/kinetic/on_range() + new /obj/effect/kinetic_blast(src.loc) + ..() + +/obj/item/projectile/kinetic/on_hit(atom/target) + . = ..() + var/turf/target_turf= get_turf(target) + if(istype(target_turf, /turf/closed/mineral)) + var/turf/closed/mineral/M = target_turf + M.gets_drilled(firer) + new /obj/effect/kinetic_blast(target_turf) + if(src.splash) + for(var/turf/T in range(splash, target_turf)) + if(istype(T, /turf/closed/mineral)) + var/turf/closed/mineral/M = T + M.gets_drilled(firer) + + +/obj/effect/kinetic_blast + name = "kinetic explosion" + icon = 'icons/obj/projectiles.dmi' + icon_state = "kinetic_blast" + layer = ABOVE_ALL_MOB_LAYER + +/obj/effect/kinetic_blast/New() + spawn(4) + qdel(src) + /obj/item/projectile/beam/wormhole name = "bluespace beam" icon_state = "spark" @@ -186,26 +221,23 @@ icon_state = "plasmacutter" damage_type = BRUTE damage = 5 - range = 3.5 //works as 4, but doubles to 7 - dismemberment = 20 - impact_effect_type = /obj/effect/overlay/temp/impact_effect/purple_laser + range = 5 /obj/item/projectile/plasma/New() var/turf/proj_turf = get_turf(src) - if(!isturf(proj_turf)) + if(!istype(proj_turf, /turf)) return var/datum/gas_mixture/environment = proj_turf.return_air() if(environment) var/pressure = environment.return_pressure() if(pressure < 60) - name = "full strength [name]" + name = "full strength plasma blast" damage *= 4 - range *= 2 ..() /obj/item/projectile/plasma/on_hit(atom/target) . = ..() - if(ismineralturf(target)) + if(istype(target, /turf/closed/mineral)) var/turf/closed/mineral/M = target M.gets_drilled(firer) Range() @@ -214,11 +246,11 @@ /obj/item/projectile/plasma/adv damage = 7 - range = 5 + range = 7 /obj/item/projectile/plasma/adv/mech damage = 10 - range = 6 + range = 8 /obj/item/projectile/gravityrepulse diff --git a/code/modules/reagents/chem_splash.dm b/code/modules/reagents/chem_splash.dm index 271b8a08dd..b32e9da175 100644 --- a/code/modules/reagents/chem_splash.dm +++ b/code/modules/reagents/chem_splash.dm @@ -5,8 +5,8 @@ // Extra heat affects the temperature of the mixture, and may cause it to react in different ways. -/proc/chem_splash(turf/epicenter, affected_range = 3, list/datum/reagents/reactants = list(), extra_heat = 0, threatscale = 1, adminlog = 1) - if(!isturf(epicenter) || !reactants.len || threatscale <= 0) +proc/chem_splash(turf/epicenter, affected_range = 3, list/datum/reagents/reactants = list(), extra_heat = 0, threatscale = 1, adminlog = 1) + if(!istype(epicenter, /turf) || !reactants.len || threatscale <= 0) return var/has_reagents var/total_reagents @@ -46,12 +46,12 @@ turflist.Remove(T) turflist.Add(T) // we move the purely diagonal turfs to the end of the list. for(var/turf/T in turflist) - if(accessible[T]) continue - for(var/thing in T.GetAtmosAdjacentTurfs(alldir = TRUE)) - var/turf/NT = thing + if(T in accessible) continue + for(var/turf/NT in orange(1, T)) if(!(NT in accessible)) continue if(!(get_dir(T,NT) in cardinal)) continue - accessible[T] = 1 + if(!NT.CanAtmosPass(T)) continue + accessible |= T break var/list/reactable = accessible for(var/turf/T in accessible) @@ -63,8 +63,7 @@ if(!reactable.len) //Nothing to react with. Probably means we're in nullspace. return var/fraction = 0.5/accessible.len // In a 100u mix. A small grenade spreads ~1.5u units per affected tile. A large grenade spreads ~0.75u, and a bomb spreads ~0.4u - for(var/thing in reactable) - var/atom/A = thing + for(var/atom/A in reactable) splash_holder.reaction(A, TOUCH, fraction) qdel(splash_holder) diff --git a/code/modules/reagents/chemistry/colors.dm b/code/modules/reagents/chemistry/colors.dm index 8d83f9343a..05ee15c293 100644 --- a/code/modules/reagents/chemistry/colors.dm +++ b/code/modules/reagents/chemistry/colors.dm @@ -2,7 +2,7 @@ if(!istype(reagent_list)) return - var/mixcolor + var/color var/vol_counter = 0 var/vol_temp @@ -10,12 +10,12 @@ vol_temp = R.volume vol_counter += vol_temp - if(!mixcolor) - mixcolor = R.color + if(!color) + color = R.color - else if (length(mixcolor) >= length(R.color)) - mixcolor = BlendRGB(mixcolor, R.color, vol_temp/vol_counter) + else if (length(color) >= length(R.color)) + color = BlendRGB(color, R.color, vol_temp/vol_counter) else - mixcolor = BlendRGB(R.color, mixcolor, vol_temp/vol_counter) + color = BlendRGB(R.color, color, vol_temp/vol_counter) - return mixcolor \ No newline at end of file + return color \ No newline at end of file diff --git a/code/modules/reagents/chemistry/holder.dm b/code/modules/reagents/chemistry/holder.dm index 5bf5526af8..543bbd9546 100644 --- a/code/modules/reagents/chemistry/holder.dm +++ b/code/modules/reagents/chemistry/holder.dm @@ -1,4 +1,4 @@ - +//This file was auto-corrected by findeclaration.exe on 25.5.2012 20:42:32 var/const/TOUCH = 1 //splashing var/const/INGEST = 2 //ingestion @@ -12,7 +12,7 @@ var/const/INJECT = 5 //injection var/list/datum/reagent/reagent_list = new/list() var/total_volume = 0 var/maximum_volume = 100 - var/datum/my_atom = null + var/atom/my_atom = null var/chem_temp = 150 var/last_tick = 1 var/addiction_tick = 1 @@ -61,32 +61,30 @@ var/const/INJECT = 5 //injection /datum/reagents/Destroy() . = ..() STOP_PROCESSING(SSobj, src) - var/list/cached_reagents = reagent_list - for(var/reagent in cached_reagents) + for(var/reagent in reagent_list) var/datum/reagent/R = reagent qdel(R) - cached_reagents.Cut() - cached_reagents = null + reagent_list.Cut() + reagent_list = null if(my_atom && my_atom.reagents == src) my_atom.reagents = null /datum/reagents/proc/remove_any(amount = 1) - var/list/cached_reagents = reagent_list var/total_transfered = 0 var/current_list_element = 1 - current_list_element = rand(1, cached_reagents.len) + current_list_element = rand(1, reagent_list.len) while(total_transfered != amount) if(total_transfered >= amount) break - if(total_volume <= 0 || !cached_reagents.len) + if(total_volume <= 0 || !reagent_list.len) break - if(current_list_element > cached_reagents.len) + if(current_list_element > reagent_list.len) current_list_element = 1 - var/datum/reagent/R = cached_reagents[current_list_element] + var/datum/reagent/R = reagent_list[current_list_element] remove_reagent(R.id, 1) current_list_element++ @@ -97,10 +95,9 @@ var/const/INJECT = 5 //injection return total_transfered /datum/reagents/proc/remove_all(amount = 1) - var/list/cached_reagents = reagent_list if(total_volume > 0) var/part = amount / total_volume - for(var/reagent in cached_reagents) + for(var/reagent in reagent_list) var/datum/reagent/R = reagent remove_reagent(R.id, R.volume * part) @@ -109,10 +106,9 @@ var/const/INJECT = 5 //injection return amount /datum/reagents/proc/get_master_reagent_name() - var/list/cached_reagents = reagent_list var/name var/max_volume = 0 - for(var/reagent in cached_reagents) + for(var/reagent in reagent_list) var/datum/reagent/R = reagent if(R.volume > max_volume) max_volume = R.volume @@ -121,10 +117,9 @@ var/const/INJECT = 5 //injection return name /datum/reagents/proc/get_master_reagent_id() - var/list/cached_reagents = reagent_list var/id var/max_volume = 0 - for(var/reagent in cached_reagents) + for(var/reagent in reagent_list) var/datum/reagent/R = reagent if(R.volume > max_volume) max_volume = R.volume @@ -133,12 +128,8 @@ var/const/INJECT = 5 //injection return id /datum/reagents/proc/trans_to(obj/target, amount=1, multiplier=1, preserve_data=1, no_react = 0)//if preserve_data=0, the reagents data will be lost. Usefull if you use data for some strange stuff and don't want it to be transferred. - var/list/cached_reagents = reagent_list if(!target || !total_volume) return - if(amount < 0) - return - var/datum/reagents/R if(istype(target, /datum/reagents)) R = target @@ -149,7 +140,7 @@ var/const/INJECT = 5 //injection amount = min(min(amount, src.total_volume), R.maximum_volume-R.total_volume) var/part = amount / src.total_volume var/trans_data = null - for(var/reagent in cached_reagents) + for(var/reagent in reagent_list) var/datum/reagent/T = reagent var/transfer_amount = T.volume * part if(preserve_data) @@ -165,18 +156,15 @@ var/const/INJECT = 5 //injection return amount /datum/reagents/proc/copy_to(obj/target, amount=1, multiplier=1, preserve_data=1) - var/list/cached_reagents = reagent_list if(!target) return if(!target.reagents || src.total_volume<=0) return - if(amount < 0) - return var/datum/reagents/R = target.reagents amount = min(min(amount, total_volume), R.maximum_volume-R.total_volume) var/part = amount / total_volume var/trans_data = null - for(var/reagent in cached_reagents) + for(var/reagent in reagent_list) var/datum/reagent/T = reagent var/copy_amount = T.volume * part if(preserve_data) @@ -190,41 +178,68 @@ var/const/INJECT = 5 //injection return amount /datum/reagents/proc/trans_id_to(obj/target, reagent, amount=1, preserve_data=1)//Not sure why this proc didn't exist before. It does now! /N - var/list/cached_reagents = reagent_list if (!target) return if (!target.reagents || src.total_volume<=0 || !src.get_reagent_amount(reagent)) return - if(amount < 0) - return var/datum/reagents/R = target.reagents if(src.get_reagent_amount(reagent) R.maximum_volume) return 0 + + current_list_element = rand(1,reagent_list.len) //Eh, bandaid fix. + + while(total_transfered != amount) + if(total_transfered >= amount) break //Better safe than sorry. + if(total_volume <= 0 || !reagent_list.len) break + if(R.total_volume >= R.maximum_volume) break + + if(current_list_element > reagent_list.len) current_list_element = 1 + var/datum/reagent/current_reagent = reagent_list[current_list_element] + if(preserve_data) + trans_data = current_reagent.data + R.add_reagent(current_reagent.id, (1 * multiplier), trans_data) + src.remove_reagent(current_reagent.id, 1) + + current_list_element++ + total_transfered++ + src.update_total() + R.update_total() + R.handle_reactions() + handle_reactions() + + return total_transfered +*/ + /datum/reagents/proc/metabolize(mob/living/carbon/C, can_overdose = 0) - var/list/cached_reagents = reagent_list - var/list/cached_addictions = addiction_list if(C) chem_temp = C.bodytemperature handle_reactions() var/need_mob_update = 0 - for(var/reagent in cached_reagents) + for(var/reagent in reagent_list) var/datum/reagent/R = reagent if(!R.holder) continue @@ -238,13 +253,13 @@ var/const/INJECT = 5 //injection R.overdosed = 1 need_mob_update += R.overdose_start(C) if(R.addiction_threshold) - if(R.volume >= R.addiction_threshold && !is_type_in_list(R, cached_addictions)) + if(R.volume >= R.addiction_threshold && !is_type_in_list(R, addiction_list)) var/datum/reagent/new_reagent = new R.type() - cached_addictions.Add(new_reagent) + addiction_list.Add(new_reagent) if(R.overdosed) need_mob_update += R.overdose_process(C) - if(is_type_in_list(R,cached_addictions)) - for(var/addiction in cached_addictions) + if(is_type_in_list(R,addiction_list)) + for(var/addiction in addiction_list) var/datum/reagent/A = addiction if(istype(R, A)) A.addiction_stage = -15 // you're satisfied for a good while. @@ -253,7 +268,7 @@ var/const/INJECT = 5 //injection if(can_overdose) if(addiction_tick == 6) addiction_tick = 1 - for(var/addiction in cached_addictions) + for(var/addiction in addiction_list) var/datum/reagent/R = addiction if(C && R) R.addiction_stage++ @@ -268,7 +283,7 @@ var/const/INJECT = 5 //injection need_mob_update += R.addiction_act_stage4(C) if(40 to INFINITY) C << "You feel like you've gotten over your need for [R.name]." - cached_addictions.Remove(R) + addiction_list.Remove(R) addiction_tick++ if(C && need_mob_update) //some of the metabolized reagents had effects on the mob that requires some updates. C.updatehealth() @@ -277,12 +292,11 @@ var/const/INJECT = 5 //injection update_total() /datum/reagents/process() - var/list/cached_reagents = reagent_list if(flags & REAGENT_NOREACT) STOP_PROCESSING(SSobj, src) return - for(var/reagent in cached_reagents) + for(var/reagent in reagent_list) var/datum/reagent/R = reagent R.on_tick() @@ -297,146 +311,129 @@ var/const/INJECT = 5 //injection flags |= REAGENT_NOREACT /datum/reagents/proc/conditional_update_move(atom/A, Running = 0) - var/list/cached_reagents = reagent_list - for(var/reagent in cached_reagents) + for(var/reagent in reagent_list) var/datum/reagent/R = reagent R.on_move (A, Running) update_total() /datum/reagents/proc/conditional_update(atom/A) - var/list/cached_reagents = reagent_list - for(var/reagent in cached_reagents) + for(var/reagent in reagent_list) var/datum/reagent/R = reagent R.on_update (A) update_total() /datum/reagents/proc/handle_reactions() - var/list/cached_reagents = reagent_list - var/list/cached_reactions = chemical_reactions_list - var/datum/cached_my_atom = my_atom if(flags & REAGENT_NOREACT) return //Yup, no reactions here. No siree. - var/reaction_occurred = 0 + var/reaction_occured = 0 do - reaction_occurred = 0 - for(var/reagent in cached_reagents) + reaction_occured = 0 + for(var/reagent in reagent_list) var/datum/reagent/R = reagent - for(var/reaction in cached_reactions[R.id]) // Was a big list but now it should be smaller since we filtered it with our reagent id + for(var/reaction in chemical_reactions_list[R.id]) // Was a big list but now it should be smaller since we filtered it with our reagent id if(!reaction) continue var/datum/chemical_reaction/C = reaction - var/list/cached_required_reagents = C.required_reagents - var/total_required_reagents = cached_required_reagents.len + var/total_required_reagents = C.required_reagents.len var/total_matching_reagents = 0 - var/list/cached_required_catalysts = C.required_catalysts - var/total_required_catalysts = cached_required_catalysts.len + var/total_required_catalysts = C.required_catalysts.len var/total_matching_catalysts= 0 var/matching_container = 0 var/matching_other = 0 var/list/multipliers = new/list() var/required_temp = C.required_temp - var/is_cold_recipe = C.is_cold_recipe - var/meets_temp_requirement = 0 - var/list/cached_results = C.results - - for(var/B in cached_required_reagents) - if(!has_reagent(B, cached_required_reagents[B])) + for(var/B in C.required_reagents) + if(!has_reagent(B, C.required_reagents[B])) break total_matching_reagents++ - multipliers += round(get_reagent_amount(B) / cached_required_reagents[B]) - for(var/B in cached_required_catalysts) - if(!has_reagent(B, cached_required_catalysts[B])) + multipliers += round(get_reagent_amount(B) / C.required_reagents[B]) + for(var/B in C.required_catalysts) + if(!has_reagent(B, C.required_catalysts[B])) break total_matching_catalysts++ - if(cached_my_atom) - if(!C.required_container) - matching_container = 1 - else - if(cached_my_atom.type == C.required_container) - matching_container = 1 - if (isliving(cached_my_atom)) //Makes it so certain chemical reactions don't occur in mobs - if (C.mob_react) - return - if(!C.required_other) - matching_other = 1 + if(!C.required_container) + matching_container = 1 - else if(istype(cached_my_atom, /obj/item/slime_extract)) - var/obj/item/slime_extract/M = cached_my_atom - - if(M.Uses > 0) // added a limit to slime cores -- Muskets requested this - matching_other = 1 else - if(!C.required_container) + if(my_atom.type == C.required_container) matching_container = 1 - if(!C.required_other) + if (isliving(my_atom)) //Makes it so certain chemical reactions don't occur in mobs + if (C.mob_react) + return + if(!C.required_other) + matching_other = 1 + + else if(istype(my_atom, /obj/item/slime_extract)) + var/obj/item/slime_extract/M = my_atom + + if(M.Uses > 0) // added a limit to slime cores -- Muskets requested this matching_other = 1 - if(required_temp == 0 || (is_cold_recipe && chem_temp <= required_temp) || (!is_cold_recipe && chem_temp >= required_temp)) - meets_temp_requirement = 1 + if(required_temp == 0) + required_temp = chem_temp - if(total_matching_reagents == total_required_reagents && total_matching_catalysts == total_required_catalysts && matching_container && matching_other && meets_temp_requirement) + + if(total_matching_reagents == total_required_reagents && total_matching_catalysts == total_required_catalysts && matching_container && matching_other && chem_temp >= required_temp) var/multiplier = min(multipliers) - for(var/B in cached_required_reagents) - remove_reagent(B, (multiplier * cached_required_reagents[B]), safety = 1) + for(var/B in C.required_reagents) + remove_reagent(B, (multiplier * C.required_reagents[B]), safety = 1) - for(var/P in C.results) - feedback_add_details("chemical_reaction", "[P]|[cached_results[P]*multiplier]") + var/created_volume = C.result_amount*multiplier + if(C.result) + feedback_add_details("chemical_reaction","[C.result]|[C.result_amount*multiplier]") multiplier = max(multiplier, 1) //this shouldnt happen ... - add_reagent(P, cached_results[P]*multiplier, null, chem_temp) + add_reagent(C.result, C.result_amount*multiplier, null, chem_temp) var/list/seen = viewers(4, get_turf(my_atom)) - if(cached_my_atom) - if(!ismob(cached_my_atom)) // No bubbling mobs - if(C.mix_sound) - playsound(get_turf(cached_my_atom), C.mix_sound, 80, 1) + + if(!istype(my_atom, /mob)) // No bubbling mobs + if(C.mix_sound) + playsound(get_turf(my_atom), C.mix_sound, 80, 1) + for(var/mob/M in seen) + M << "\icon[my_atom] [C.mix_message]" + + if(istype(my_atom, /obj/item/slime_extract)) + var/obj/item/slime_extract/ME2 = my_atom + ME2.Uses-- + if(ME2.Uses <= 0) // give the notification that the slime core is dead for(var/mob/M in seen) - M << "\icon[my_atom] [C.mix_message]" + M << "\icon[my_atom] \The [my_atom]'s power is consumed in the reaction." + ME2.name = "used slime extract" + ME2.desc = "This extract has been used up." - if(istype(cached_my_atom, /obj/item/slime_extract)) - var/obj/item/slime_extract/ME2 = my_atom - ME2.Uses-- - if(ME2.Uses <= 0) // give the notification that the slime core is dead - for(var/mob/M in seen) - M << "\icon[my_atom] \The [my_atom]'s power is consumed in the reaction." - ME2.name = "used slime extract" - ME2.desc = "This extract has been used up." - - C.on_reaction(src, multiplier) - reaction_occurred = 1 + C.on_reaction(src, created_volume) + reaction_occured = 1 break - while(reaction_occurred) + while(reaction_occured) update_total() return 0 /datum/reagents/proc/isolate_reagent(reagent) - var/list/cached_reagents = reagent_list - for(var/_reagent in cached_reagents) + for(var/_reagent in reagent_list) var/datum/reagent/R = _reagent if(R.id != reagent) del_reagent(R.id) update_total() /datum/reagents/proc/del_reagent(reagent) - var/list/cached_reagents = reagent_list - for(var/_reagent in cached_reagents) + for(var/_reagent in reagent_list) var/datum/reagent/R = _reagent if(R.id == reagent) - if(my_atom && isliving(my_atom)) + if(istype(my_atom, /mob/living)) var/mob/living/M = my_atom R.on_mob_delete(M) qdel(R) reagent_list -= R update_total() - if(my_atom) - my_atom.on_reagent_change() - check_ignoreslow(my_atom) - check_gofast(my_atom) - check_goreallyfast(my_atom) + my_atom.on_reagent_change() + check_ignoreslow(my_atom) + check_gofast(my_atom) + check_goreallyfast(my_atom) return 1 /datum/reagents/proc/check_ignoreslow(mob/M) @@ -461,9 +458,8 @@ var/const/INJECT = 5 //injection M.status_flags &= ~GOTTAGOREALLYFAST /datum/reagents/proc/update_total() - var/list/cached_reagents = reagent_list total_volume = 0 - for(var/reagent in cached_reagents) + for(var/reagent in reagent_list) var/datum/reagent/R = reagent if(R.volume < 0.1) del_reagent(R.id) @@ -473,68 +469,54 @@ var/const/INJECT = 5 //injection return 0 /datum/reagents/proc/clear_reagents() - var/list/cached_reagents = reagent_list - for(var/reagent in cached_reagents) + for(var/reagent in reagent_list) var/datum/reagent/R = reagent del_reagent(R.id) return 0 /datum/reagents/proc/reaction(atom/A, method = TOUCH, volume_modifier = 1, show_message = 1) - var/react_type if(isliving(A)) - react_type = "LIVING" + var/touch_protection = 0 + if(method == VAPOR) + var/mob/living/L = A + touch_protection = L.get_permeability_protection() + for(var/reagent in reagent_list) + var/datum/reagent/R = reagent + R.reaction_mob(A, method, R.volume * volume_modifier, show_message, touch_protection) else if(isturf(A)) - react_type = "TURF" + for(var/reagent in reagent_list) + var/datum/reagent/R = reagent + R.reaction_turf(A, R.volume * volume_modifier, show_message) else if(isobj(A)) - react_type = "OBJ" - else - return - var/list/cached_reagents = reagent_list - for(var/reagent in cached_reagents) - var/datum/reagent/R = reagent - switch(react_type) - if("LIVING") - var/touch_protection = 0 - if(method == VAPOR) - var/mob/living/L = A - touch_protection = L.get_permeability_protection() - R.reaction_mob(A, method, R.volume * volume_modifier, show_message, touch_protection) - if("TURF") - R.reaction_turf(A, R.volume * volume_modifier, show_message) - if("OBJ") - R.reaction_obj(A, R.volume * volume_modifier, show_message) + for(var/reagent in reagent_list) + var/datum/reagent/R = reagent + R.reaction_obj(A, R.volume * volume_modifier, show_message) /datum/reagents/proc/add_reagent(reagent, amount, list/data=null, reagtemp = 300, no_react = 0) if(!isnum(amount) || !amount) - return FALSE - - if(amount < 0) - return FALSE - - var/list/cached_reagents = reagent_list + return 1 update_total() if(total_volume + amount > maximum_volume) amount = (maximum_volume - total_volume) //Doesnt fit in. Make it disappear. Shouldnt happen. Will happen. chem_temp = round(((amount * reagtemp) + (total_volume * chem_temp)) / (total_volume + amount)) //equalize with new chems - for(var/A in cached_reagents) + for(var/A in reagent_list) var/datum/reagent/R = A if (R.id == reagent) R.volume += amount update_total() - if(my_atom) - my_atom.on_reagent_change() + my_atom.on_reagent_change() R.on_merge(data) if(!no_react) handle_reactions() - return TRUE + return 0 var/datum/reagent/D = chemical_reagents_list[reagent] if(D) var/datum/reagent/R = new D.type(data) - cached_reagents += R + reagent_list += R R.holder = src R.volume = amount if(data) @@ -542,15 +524,17 @@ var/const/INJECT = 5 //injection R.on_new(data) update_total() - if(my_atom) - my_atom.on_reagent_change() + my_atom.on_reagent_change() if(!no_react) handle_reactions() - return TRUE - + return 0 else WARNING("[my_atom] attempted to add a reagent called ' [reagent] ' which doesn't exist. ([usr])") - return FALSE + + if(!no_react) + handle_reactions() + + return 1 /datum/reagents/proc/add_reagent_list(list/list_reagents, list/data=null) // Like add_reagent but you can enter a list. Format it like this: list("toxin" = 10, "beer" = 15) for(var/r_id in list_reagents) @@ -558,39 +542,27 @@ var/const/INJECT = 5 //injection add_reagent(r_id, amt, data) /datum/reagents/proc/remove_reagent(reagent, amount, safety)//Added a safety check for the trans_id_to - + if(isnull(amount)) - amount = 0 - throw EXCEPTION("null amount passed to reagent code") - return FALSE - + amount = INFINITY + if(!isnum(amount)) - return FALSE + return 1 - if(amount < 0) - return FALSE - - var/list/cached_reagents = reagent_list - - for(var/A in cached_reagents) + for(var/A in reagent_list) var/datum/reagent/R = A if (R.id == reagent) - //clamp the removal amount to be between current reagent amount - //and zero, to prevent removing more than the holder has stored - amount = Clamp(amount, 0, R.volume) R.volume -= amount update_total() if(!safety)//So it does not handle reactions when it need not to handle_reactions() - if(my_atom) - my_atom.on_reagent_change() - return TRUE + my_atom.on_reagent_change() + return 0 - return FALSE + return 1 /datum/reagents/proc/has_reagent(reagent, amount = -1) - var/list/cached_reagents = reagent_list - for(var/_reagent in cached_reagents) + for(var/_reagent in reagent_list) var/datum/reagent/R = _reagent if (R.id == reagent) if(!amount) @@ -604,8 +576,7 @@ var/const/INJECT = 5 //injection return 0 /datum/reagents/proc/get_reagent_amount(reagent) - var/list/cached_reagents = reagent_list - for(var/_reagent in cached_reagents) + for(var/_reagent in reagent_list) var/datum/reagent/R = _reagent if (R.id == reagent) return R.volume @@ -614,8 +585,7 @@ var/const/INJECT = 5 //injection /datum/reagents/proc/get_reagents() var/list/names = list() - var/list/cached_reagents = reagent_list - for(var/reagent in cached_reagents) + for(var/reagent in reagent_list) var/datum/reagent/R = reagent names += R.name @@ -623,10 +593,10 @@ var/const/INJECT = 5 //injection /datum/reagents/proc/remove_all_type(reagent_type, amount, strict = 0, safety = 1) // Removes all reagent of X type. @strict set to 1 determines whether the childs of the type are included. if(!isnum(amount)) return 1 - var/list/cached_reagents = reagent_list + var/has_removed_reagent = 0 - for(var/reagent in cached_reagents) + for(var/reagent in reagent_list) var/datum/reagent/R = reagent var/matches = 0 // Switch between how we check the reagent type @@ -645,16 +615,14 @@ var/const/INJECT = 5 //injection //two helper functions to preserve data across reactions (needed for xenoarch) /datum/reagents/proc/get_data(reagent_id) - var/list/cached_reagents = reagent_list - for(var/reagent in cached_reagents) + for(var/reagent in reagent_list) var/datum/reagent/R = reagent if(R.id == reagent_id) //world << "proffering a data-carrying reagent ([reagent_id])" return R.data /datum/reagents/proc/set_data(reagent_id, new_data) - var/list/cached_reagents = reagent_list - for(var/reagent in cached_reagents) + for(var/reagent in reagent_list) var/datum/reagent/R = reagent if(R.id == reagent_id) //world << "reagent data set ([reagent_id])" @@ -682,8 +650,7 @@ var/const/INJECT = 5 //injection return trans_data /datum/reagents/proc/get_reagent(type) - var/list/cached_reagents = reagent_list - . = locate(type) in cached_reagents + . = locate(type) in reagent_list /////////////////////////////////////////////////////////////////////////////////// @@ -691,18 +658,8 @@ var/const/INJECT = 5 //injection // Convenience proc to create a reagents holder for an atom // Max vol is maximum volume of holder -/datum/proc/create_reagents(max_vol) +/atom/proc/create_reagents(max_vol) if(reagents) qdel(reagents) reagents = new/datum/reagents(max_vol) reagents.my_atom = src - -/proc/get_random_reagent_id() // Returns a random reagent ID minus blacklisted reagents - var/static/list/random_reagents = list() - if(!random_reagents.len) - for(var/thing in subtypesof(/datum/reagent)) - var/datum/reagent/R = thing - if(initial(R.can_synth)) - random_reagents += initial(R.id) - var/picked_reagent = pick(random_reagents) - return picked_reagent \ No newline at end of file diff --git a/code/modules/reagents/chemistry/machinery/chem_dispenser.dm b/code/modules/reagents/chemistry/machinery/chem_dispenser.dm index dbfb62af75..a44f99f262 100644 --- a/code/modules/reagents/chemistry/machinery/chem_dispenser.dm +++ b/code/modules/reagents/chemistry/machinery/chem_dispenser.dm @@ -8,7 +8,6 @@ use_power = 1 idle_power_usage = 40 interact_offline = 1 - resistance_flags = FIRE_PROOF | ACID_PROOF var/energy = 100 var/max_energy = 100 var/amount = 30 @@ -85,16 +84,9 @@ if(severity < 3) ..() -/obj/machinery/chem_dispenser/contents_explosion(severity, target) - ..() - if(beaker) - beaker.ex_act(severity, target) - -/obj/machinery/chem_dispenser/handle_atom_del(atom/A) - ..() - if(A == beaker) - beaker = null - cut_overlays() +/obj/machinery/chem_dispenser/blob_act(obj/effect/blob/B) + if(prob(50)) + qdel(src) /obj/machinery/chem_dispenser/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = 0, \ datum/tgui/master_ui = null, datum/ui_state/state = default_state) @@ -161,7 +153,7 @@ . = TRUE if("eject") if(beaker) - beaker.forceMove(loc) + beaker.loc = loc beaker = null cut_overlays() . = TRUE @@ -188,7 +180,7 @@ icon_beaker = image('icons/obj/chemical.dmi', src, "disp_beaker") //randomize beaker overlay position. icon_beaker.pixel_x = rand(-10,5) add_overlay(icon_beaker) - else if(user.a_intent != INTENT_HARM && !istype(I, /obj/item/weapon/card/emag)) + else if(user.a_intent != "harm" && !istype(I, /obj/item/weapon/card/emag)) user << "You can't load \the [I] into the machine!" else return ..() @@ -292,7 +284,7 @@ return return ..() -/obj/machinery/chem_dispenser/constructable/on_deconstruction() +/obj/machinery/chem_dispenser/constructable/deconstruction() if(beaker) beaker.loc = loc beaker = null diff --git a/code/modules/reagents/chemistry/machinery/chem_heater.dm b/code/modules/reagents/chemistry/machinery/chem_heater.dm index a4af808cbb..33daa476e6 100644 --- a/code/modules/reagents/chemistry/machinery/chem_heater.dm +++ b/code/modules/reagents/chemistry/machinery/chem_heater.dm @@ -6,7 +6,6 @@ icon_state = "mixer0b" use_power = 1 idle_power_usage = 40 - resistance_flags = FIRE_PROOF | ACID_PROOF var/obj/item/weapon/reagent_containers/beaker = null var/target_temperature = 300 var/heater_coefficient = 0.10 @@ -69,7 +68,7 @@ return return ..() -/obj/machinery/chem_heater/on_deconstruction() +/obj/machinery/chem_heater/deconstruction() eject_beaker() /obj/machinery/chem_heater/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = 0, \ diff --git a/code/modules/reagents/chemistry/machinery/chem_master.dm b/code/modules/reagents/chemistry/machinery/chem_master.dm index 08dd9978ce..8fd2019966 100644 --- a/code/modules/reagents/chemistry/machinery/chem_master.dm +++ b/code/modules/reagents/chemistry/machinery/chem_master.dm @@ -7,7 +7,6 @@ icon_state = "mixer0" use_power = 1 idle_power_usage = 20 - resistance_flags = FIRE_PROOF | ACID_PROOF var/obj/item/weapon/reagent_containers/beaker = null var/obj/item/weapon/storage/pill_bottle/bottle = null var/mode = 1 @@ -15,13 +14,16 @@ var/screen = "home" var/analyzeVars[0] var/useramount = 30 // Last used amount + use_auto_lights = 1 + light_power_on = 1 + light_range_on = 2 + light_color = LIGHT_COLOR_BLUE /obj/machinery/chem_master/New() create_reagents(100) add_overlay("waitlight") var/obj/item/weapon/circuitboard/machine/B = new /obj/item/weapon/circuitboard/machine/chem_master(null) B.apply_default_parts(src) - ..() /obj/item/weapon/circuitboard/machine/chem_master name = "circuit board (ChemMaster 3000)" @@ -56,24 +58,7 @@ if(severity < 3) ..() -/obj/machinery/chem_master/contents_explosion(severity, target) - ..() - if(beaker) - beaker.ex_act(severity, target) - if(bottle) - bottle.ex_act(severity, target) - -/obj/machinery/chem_master/handle_atom_del(atom/A) - ..() - if(A == beaker) - beaker = null - reagents.clear_reagents() - icon_state = "mixer0" - else if(A == bottle) - bottle = null - - -/obj/machinery/chem_master/blob_act(obj/structure/blob/B) +/obj/machinery/chem_master/blob_act(obj/effect/blob/B) if (prob(50)) qdel(src) @@ -201,9 +186,8 @@ . = TRUE else if (amount == -1) // -1 means custom amount useramount = input("Enter the Amount you want to transfer:", name, useramount) as num|null - if (useramount > 0) - beaker.reagents.trans_id_to(src, id, useramount) - . = TRUE + beaker.reagents.trans_id_to(src, id, useramount) + . = TRUE if("transferFromBuffer") var/id = params["id"] @@ -222,18 +206,17 @@ if("createPill") var/many = params["many"] - if(reagents.total_volume == 0) - return + if(reagents.total_volume == 0) return if(!condi) var/amount = 1 var/vol_each = min(reagents.total_volume, 50) if(text2num(many)) - amount = Clamp(round(input(usr, "Max 10. Buffer content will be split evenly.", "How many pills?", amount) as num|null), 0, 10) + amount = min(max(round(input(usr, "Max 10. Buffer content will be split evenly.", "How many pills?", amount) as num|null), 0), 10) if(!amount) return vol_each = min(reagents.total_volume / amount, 50) var/name = stripped_input(usr,"Name:","Name your pill!", "[reagents.get_master_reagent_name()] ([vol_each]u)", MAX_NAME_LEN) - if(!name || !reagents.total_volume || !src || qdeleted(src) || !usr.canUseTopic(src, be_close=TRUE)) + if(!name || !reagents.total_volume) return var/obj/item/weapon/reagent_containers/pill/P @@ -248,7 +231,7 @@ reagents.trans_to(P,vol_each) else var/name = stripped_input(usr, "Name:", "Name your pack!", reagents.get_master_reagent_name(), MAX_NAME_LEN) - if(!name || !reagents.total_volume || !src || qdeleted(src) || !usr.canUseTopic(src, be_close=TRUE)) + if(!name || !reagents.total_volume) return var/obj/item/weapon/reagent_containers/food/condiment/pack/P = new/obj/item/weapon/reagent_containers/food/condiment/pack(src.loc) @@ -260,17 +243,16 @@ if("createPatch") var/many = params["many"] - if(reagents.total_volume == 0) - return + if(reagents.total_volume == 0) return var/amount = 1 var/vol_each = min(reagents.total_volume, 40) if(text2num(many)) - amount = Clamp(round(input(usr, "Max 10. Buffer content will be split evenly.", "How many patches?", amount) as num|null), 0, 10) + amount = min(max(round(input(usr, "Max 10. Buffer content will be split evenly.", "How many patches?", amount) as num|null), 0), 10) if(!amount) return vol_each = min(reagents.total_volume / amount, 40) var/name = stripped_input(usr,"Name:","Name your patch!", "[reagents.get_master_reagent_name()] ([vol_each]u)", MAX_NAME_LEN) - if(!name || !reagents.total_volume || !src || qdeleted(src) || !usr.canUseTopic(src, be_close=TRUE)) + if(!name || !reagents.total_volume) return var/obj/item/weapon/reagent_containers/pill/P @@ -283,40 +265,21 @@ . = TRUE if("createBottle") - var/many = params["many"] - if(reagents.total_volume == 0) + var/name = stripped_input(usr, "Name:","Name your bottle!", (reagents.total_volume ? reagents.get_master_reagent_name() : " "), MAX_NAME_LEN) + if(!name) return - + var/obj/item/weapon/reagent_containers/P if(condi) - var/name = stripped_input(usr, "Name:","Name your bottle!", (reagents.total_volume ? reagents.get_master_reagent_name() : " "), MAX_NAME_LEN) - if(!name || !reagents.total_volume || !src || qdeleted(src) || !usr.canUseTopic(src, be_close=TRUE)) - return - var/obj/item/weapon/reagent_containers/food/condiment/P = new(src.loc) - P.originalname = name - P.name = trim("[name] bottle") - reagents.trans_to(P, P.volume) + var/obj/item/weapon/reagent_containers/food/condiment/C = new(src.loc) + C.originalname = name + P = C else - var/amount_full = 0 - var/vol_part = min(reagents.total_volume, 30) - if(text2num(many)) - amount_full = round(reagents.total_volume / 30) - vol_part = reagents.total_volume % 30 - var/name = stripped_input(usr, "Name:","Name your bottle!", (reagents.total_volume ? reagents.get_master_reagent_name() : " "), MAX_NAME_LEN) - if(!name || !reagents.total_volume || !src || qdeleted(src) || !usr.canUseTopic(src, be_close=TRUE)) - return + P = new/obj/item/weapon/reagent_containers/glass/bottle(src.loc) - var/obj/item/weapon/reagent_containers/glass/bottle/P - for(var/i = 0; i < amount_full; i++) - P = new/obj/item/weapon/reagent_containers/glass/bottle(src.loc) - P.pixel_x = rand(-7, 7) //random position - P.pixel_y = rand(-7, 7) - P.name = trim("[name] bottle") - reagents.trans_to(P, 30) - - if(vol_part) - P = new/obj/item/weapon/reagent_containers/glass/bottle(src.loc) - P.name = trim("[name] bottle") - reagents.trans_to(P, vol_part) + P.pixel_x = rand(-7, 7) //random position + P.pixel_y = rand(-7, 7) + P.name = trim("[name] bottle") + reagents.trans_to(P, P.volume) . = TRUE if("analyze") diff --git a/code/modules/reagents/chemistry/machinery/pandemic.dm b/code/modules/reagents/chemistry/machinery/pandemic.dm index 8686999790..6c4f1e7a89 100644 --- a/code/modules/reagents/chemistry/machinery/pandemic.dm +++ b/code/modules/reagents/chemistry/machinery/pandemic.dm @@ -8,7 +8,6 @@ circuit = /obj/item/weapon/circuitboard/computer/pandemic use_power = 1 idle_power_usage = 20 - resistance_flags = ACID_PROOF var/temp_html = "" var/wait = null var/obj/item/weapon/reagent_containers/beaker = null @@ -47,7 +46,7 @@ wait = 1 update_icon() spawn(waittime) - wait = null + src.wait = null update_icon() playsound(src.loc, 'sound/machines/ping.ogg', 30, 1) @@ -97,8 +96,8 @@ B.reagents.add_reagent("vaccine", 15, list(vaccine_type)) replicator_cooldown(200) else - temp_html = "The replicator is not ready yet." - updateUsrDialog() + src.temp_html = "The replicator is not ready yet." + src.updateUsrDialog() return else if (href_list["create_virus_culture"]) if(!wait) @@ -126,31 +125,24 @@ B.name = "[name] culture bottle" B.desc = "A small bottle. Contains [D.agent] culture in synthblood medium." B.reagents.add_reagent("blood",20,data) - updateUsrDialog() + src.updateUsrDialog() else - temp_html = "The replicator is not ready yet." - updateUsrDialog() + src.temp_html = "The replicator is not ready yet." + src.updateUsrDialog() return else if (href_list["empty_beaker"]) beaker.reagents.clear_reagents() - updateUsrDialog() + src.updateUsrDialog() return else if (href_list["eject"]) - beaker.forceMove(get_turf(loc)) + beaker:loc = src.loc beaker = null icon_state = "mixer0" - updateUsrDialog() - return - else if (href_list["emptyeject_beaker"]) - beaker.reagents.clear_reagents() - beaker.forceMove(get_turf(loc)) - beaker = null - icon_state = "mixer0" - updateUsrDialog() + src.updateUsrDialog() return else if(href_list["clear"]) - temp_html = "" - updateUsrDialog() + src.temp_html = "" + src.updateUsrDialog() return else if(href_list["name_disease"]) var/new_name = stripped_input(usr, "Name the Disease", "New Name", "", MAX_NAME_LEN) @@ -164,15 +156,15 @@ A.AssignName(new_name) for(var/datum/disease/advance/AD in SSdisease.processing) AD.Refresh() - updateUsrDialog() + src.updateUsrDialog() else usr << browse(null, "window=pandemic") - updateUsrDialog() + src.updateUsrDialog() return - add_fingerprint(usr) + src.add_fingerprint(usr) return /obj/machinery/computer/pandemic/attack_hand(mob/user) @@ -180,7 +172,7 @@ return user.set_machine(src) var/dat = "" - if(temp_html) + if(src.temp_html) dat = "[src.temp_html]

    Main Menu" else if(!beaker) dat += "Please insert beaker.
    " @@ -227,12 +219,9 @@ dat += "Description: [(D.desc||"none")]
    " dat += "Spread: [(D.spread_text||"none")]
    " dat += "Possible cure: [(D.cure_text||"none")]

    " + if(istype(D, /datum/disease/advance)) var/datum/disease/advance/A = D - dat += "Stealth: [(A.totalStealth())]
    " - dat += "Resistance: [(A.totalResistance())]
    " - dat += "Stage Speed: [(A.totalStageSpeed())]
    " - dat += "Transmission: [(A.totalTransmittable())]

    " dat += "Symptoms: " var/english_symptoms = list() for(var/datum/symptom/S in A.symptoms) @@ -268,8 +257,7 @@ dat += "nothing
    " else dat += "nothing
    " - dat += "
    Eject beaker[((R.total_volume&&R.reagent_list.len) ? "-- Empty beaker":"")]" - dat += "[((R.total_volume&&R.reagent_list.len) ? "-- Empty and Eject beaker":"")]
    " + dat += "
    Eject beaker[((R.total_volume&&R.reagent_list.len) ? "-- Empty beaker":"")]
    " dat += "Close" user << browse("[src.name]
    [dat]", "window=pandemic;size=575x400") @@ -291,12 +279,12 @@ beaker = I beaker.loc = src user << "You add the beaker to the machine." - updateUsrDialog() + src.updateUsrDialog() icon_state = "mixer1" else return ..() -/obj/machinery/computer/pandemic/on_deconstruction() +/obj/machinery/computer/pandemic/deconstruction() if(beaker) beaker.loc = get_turf(src) ..() \ No newline at end of file diff --git a/code/modules/reagents/chemistry/machinery/reagentgrinder.dm b/code/modules/reagents/chemistry/machinery/reagentgrinder.dm index 76c9c72c72..479a2ea140 100644 --- a/code/modules/reagents/chemistry/machinery/reagentgrinder.dm +++ b/code/modules/reagents/chemistry/machinery/reagentgrinder.dm @@ -9,7 +9,6 @@ idle_power_usage = 5 active_power_usage = 100 pass_flags = PASSTABLE - resistance_flags = ACID_PROOF var/operating = 0 var/obj/item/weapon/reagent_containers/beaker = null var/limit = 10 @@ -27,7 +26,7 @@ /obj/item/stack/sheet/mineral/silver = list("silver" = 20), /obj/item/stack/sheet/mineral/gold = list("gold" = 20), /obj/item/weapon/grown/nettle/basic = list("sacid" = 0), - /obj/item/weapon/grown/nettle/death = list("facid" = 0, "sacid" = 0), + /obj/item/weapon/grown/nettle/death = list("facid" = 0), /obj/item/weapon/grown/novaflower = list("capsaicin" = 0, "condensedcapsaicin" = 0), //Blender Stuff @@ -47,7 +46,6 @@ //All types that you can put into the grinder to transfer the reagents to the beaker. !Put all recipes above this.! - /obj/item/slime_extract = list(), /obj/item/weapon/reagent_containers/pill = list(), /obj/item/weapon/reagent_containers/food = list(), /obj/item/weapon/reagent_containers/honeycomb = list() @@ -70,9 +68,6 @@ /obj/item/weapon/reagent_containers/food/snacks/grown/berries/poison = list("poisonberryjuice" = 0), /obj/item/weapon/reagent_containers/food/snacks/grown/pumpkin = list("pumpkinjuice" = 0), /obj/item/weapon/reagent_containers/food/snacks/grown/blumpkin = list("blumpkinjuice" = 0), - /obj/item/weapon/reagent_containers/food/snacks/grown/apple = list("applejuice" = 0), - /obj/item/weapon/reagent_containers/food/snacks/grown/grapes = list("grapejuice" = 0), - /obj/item/weapon/reagent_containers/food/snacks/grown/grapes/green = list("grapejuice" = 0), ) var/list/dried_items = list( @@ -86,36 +81,14 @@ var/list/holdingitems = list() /obj/machinery/reagentgrinder/New() - ..() - beaker = new /obj/item/weapon/reagent_containers/glass/beaker/large(src) - return - -/obj/machinery/reagentgrinder/Destroy() - if(beaker) - qdel(beaker) - beaker = null - return ..() - -/obj/machinery/reagentgrinder/contents_explosion(severity, target) - if(beaker) - beaker.ex_act(severity, target) - -/obj/machinery/reagentgrinder/handle_atom_del(atom/A) - ..() - if(A == beaker) - beaker = null - update_icon() - updateUsrDialog() - -/obj/machinery/reagentgrinder/deconstruct(disassembled = TRUE) - new /obj/item/stack/sheet/metal (loc, 3) - qdel(src) + ..() + beaker = new /obj/item/weapon/reagent_containers/glass/beaker/large(src) + return /obj/machinery/reagentgrinder/update_icon() - if(beaker) - icon_state = "juicer1" - else - icon_state = "juicer0" + icon_state = "juicer"+num2text(!isnull(beaker)) + return + /obj/machinery/reagentgrinder/attackby(obj/item/I, mob/user, params) if(default_unfasten_wrench(user, I)) @@ -161,7 +134,7 @@ return 1 if (!is_type_in_list(I, blend_items) && !is_type_in_list(I, juice_items)) - if(user.a_intent == INTENT_HARM) + if(user.a_intent == "harm") return ..() else user << "Cannot refine into a reagent!" @@ -432,18 +405,6 @@ break remove_object(O) - //Slime Extractis - for (var/obj/item/slime_extract/O in holdingitems) - if (beaker.reagents.total_volume >= beaker.reagents.maximum_volume) - break - var/space = beaker.reagents.maximum_volume - beaker.reagents.total_volume - if (O.reagents != null) - var/amount = O.reagents.total_volume - O.reagents.trans_to(beaker, min(amount, space)) - if (O.Uses > 0) - beaker.reagents.add_reagent("slimejelly",min(20, space)) - remove_object(O) - //Everything else - Transfers reagents from it into beaker for (var/obj/item/weapon/reagent_containers/O in holdingitems) if (beaker.reagents.total_volume >= beaker.reagents.maximum_volume) diff --git a/code/modules/reagents/chemistry/readme.dm b/code/modules/reagents/chemistry/readme.dm index 93aff6f146..b2759dbe7a 100644 --- a/code/modules/reagents/chemistry/readme.dm +++ b/code/modules/reagents/chemistry/readme.dm @@ -193,9 +193,8 @@ About Recipes: name & id Should be pretty obvious. - results - This var contains a list of the id(s) of the resulting reagents and their result amounts. - I recommend you set this to the total volume of all required reagent. + result + This var contains the id of the resulting reagent. required_reagents This is a list of ids of the required reagents. @@ -209,6 +208,10 @@ About Recipes: for the reaction. However, unlike required_reagents, catalysts are NOT consumed. They mearly have to be present in the container. + result_amount + This is the amount of the resulting reagent this recipe will produce. + I recommend you set this to the total volume of all required reagent. + required_container The container the recipe has to take place in in order to happen. Leave this blank/null if you want the reaction to happen anywhere. diff --git a/code/modules/reagents/chemistry/reagents/alcohol_reagents.dm b/code/modules/reagents/chemistry/reagents/alcohol_reagents.dm index bbbdc7e4c4..ef80252766 100644 --- a/code/modules/reagents/chemistry/reagents/alcohol_reagents.dm +++ b/code/modules/reagents/chemistry/reagents/alcohol_reagents.dm @@ -54,20 +54,10 @@ All effects don't start immediately, but rather get worse over time; the rate is return /datum/reagent/consumable/ethanol/reaction_mob(mob/living/M, method=TOUCH, reac_volume)//Splashing people with ethanol isn't quite as good as fuel. - if(!isliving(M)) + if(!istype(M, /mob/living)) return - - if(method in list(TOUCH, VAPOR, PATCH)) + if(method == TOUCH || method == VAPOR) M.adjust_fire_stacks(reac_volume / 15) - - if(iscarbon(M)) - var/mob/living/carbon/C = M - var/power_multiplier = boozepwr / 65 // Weak alcohol has less sterilizing power - - for(var/s in C.surgeries) - var/datum/surgery/S = s - S.success_multiplier = max(0.10*power_multiplier, S.success_multiplier) - // +10% success propability on each step, useful while operating in less-than-perfect conditions return ..() /datum/reagent/consumable/ethanol/beer @@ -86,11 +76,11 @@ All effects don't start immediately, but rather get worse over time; the rate is /datum/reagent/consumable/ethanol/beer/green/on_mob_life(mob/living/M) if(M.color != color) - M.add_atom_colour(color, TEMPORARY_COLOUR_PRIORITY) + M.color = color return ..() /datum/reagent/consumable/ethanol/beer/green/on_mob_delete(mob/living/M) - M.remove_atom_colour(TEMPORARY_COLOUR_PRIORITY, color) + M.color = initial(M.color) /datum/reagent/consumable/ethanol/kahlua name = "Kahlua" @@ -150,7 +140,7 @@ All effects don't start immediately, but rather get worse over time; the rate is /datum/reagent/consumable/ethanol/bilk/on_mob_life(mob/living/M) if(M.getBruteLoss() && prob(10)) - M.heal_bodypart_damage(1,0, 0) + M.heal_organ_damage(1,0, 0) . = 1 return ..() || . @@ -196,7 +186,7 @@ All effects don't start immediately, but rather get worse over time; the rate is /datum/reagent/consumable/ethanol/wine name = "Wine" id = "wine" - description = "A premium alcoholic beverage made from distilled grape juice." + description = "An premium alcoholic beverage made from distilled grape juice." color = "#7E4043" // rgb: 126, 64, 67 boozepwr = 35 @@ -217,7 +207,7 @@ All effects don't start immediately, but rather get worse over time; the rate is /datum/reagent/consumable/ethanol/cognac name = "Cognac" id = "cognac" - description = "A sweet and strongly alcoholic drink, made after numerous distillations and years of maturing. Classy as fornication." + description = "A sweet and strongly alchoholic drink, made after numerous distillations and years of maturing. Classy as fornication." color = "#AB3C05" // rgb: 171, 60, 5 boozepwr = 75 @@ -236,14 +226,14 @@ All effects don't start immediately, but rather get worse over time; the rate is /datum/reagent/consumable/ethanol/hooch name = "Hooch" id = "hooch" - description = "Either someone's failure at cocktail making or attempt in alcohol production. In any case, do you really want to drink that?" + description = "Either someone's failure at cocktail making or attempt in alchohol production. In any case, do you really want to drink that?" color = "#664300" // rgb: 102, 67, 0 boozepwr = 100 /datum/reagent/consumable/ethanol/ale name = "Ale" id = "ale" - description = "A dark alcoholic beverage made with malted barley and yeast." + description = "A dark alchoholic beverage made by malted barley and yeast." color = "#664300" // rgb: 102, 67, 0 boozepwr = 65 @@ -341,7 +331,7 @@ All effects don't start immediately, but rather get worse over time; the rate is /datum/reagent/consumable/ethanol/brave_bull name = "Brave Bull" id = "bravebull" - description = "It's just as effective as Dutch-Courage!" + description = "It's just as effective as Dutch-Courage!." color = "#664300" // rgb: 102, 67, 0 boozepwr = 80 @@ -599,7 +589,7 @@ All effects don't start immediately, but rather get worse over time; the rate is /datum/reagent/consumable/ethanol/andalusia name = "Andalusia" id = "andalusia" - description = "A nice, strangely named drink." + description = "A nice, strange named drink." color = "#664300" // rgb: 102, 67, 0 boozepwr = 40 @@ -680,8 +670,8 @@ All effects don't start immediately, but rather get worse over time; the rate is boozepwr = 60 /datum/reagent/consumable/ethanol/bananahonk/on_mob_life(mob/living/M) - if((ishuman(M) && M.job in list("Clown") ) || ismonkey(M)) - M.heal_bodypart_damage(1,1, 0) + if( ( istype(M, /mob/living/carbon/human) && M.job in list("Clown") ) || istype(M, /mob/living/carbon/monkey) ) + M.heal_organ_damage(1,1, 0) . = 1 return ..() || . @@ -694,8 +684,8 @@ All effects don't start immediately, but rather get worse over time; the rate is boozepwr = 59 //Proof that clowns are better than mimes right here /datum/reagent/consumable/ethanol/silencer/on_mob_life(mob/living/M) - if(ishuman(M) && M.job in list("Mime")) - M.heal_bodypart_damage(1,1) + if(istype(M, /mob/living/carbon/human) && M.job in list("Mime")) + M.heal_organ_damage(1,1) . = 1 return ..() || . @@ -725,7 +715,7 @@ All effects don't start immediately, but rather get worse over time; the rate is /datum/reagent/consumable/ethanol/fetching_fizz //A reference to one of my favorite games of all time. Pulls nearby ores to the imbiber! name = "Fetching Fizz" id = "fetching_fizz" - description = "Whiskey sour/iron/uranium mixture resulting in a highly magnetic slurry. Mild alcohol content." //Requires no alcohol to make but has alcohol anyway because ~magic~ + description = "Whiskey sour/iron/uranium mixture resulting in highly magnetic slurry. Mild alcohol content." //Requires no alcohol to make but has alcohol anyway because ~magic~ color = rgb(255, 91, 15) boozepwr = 10 metabolization_rate = 0.1 * REAGENTS_METABOLISM @@ -760,126 +750,3 @@ All effects don't start immediately, but rather get worse over time; the rate is description = "Unidentifiable mixture. Unmeasurably high alcohol content." color = rgb(51, 19, 3) //Sickly brown boozepwr = 300 //I warned you - - -/datum/reagent/consumable/ethanol/atomicbomb - name = "Atomic Bomb" - id = "atomicbomb" - description = "Nuclear proliferation never tasted so good." - color = "#666300" // rgb: 102, 99, 0 - boozepwr = 0 //custom drunk effect - -/datum/reagent/consumable/ethanol/atomicbomb/on_mob_life(mob/living/M) - M.set_drugginess(50) - M.confused = max(M.confused+2,0) - M.Dizzy(10) - if (!M.slurring) - M.slurring = 1 - M.slurring += 3 - switch(current_cycle) - if(51 to 200) - M.Sleeping(5, 0) - . = 1 - if(201 to INFINITY) - M.AdjustSleeping(2, 0) - M.adjustToxLoss(2, 0) - . = 1 - ..() - -/datum/reagent/consumable/ethanol/gargle_blaster - name = "Pan-Galactic Gargle Blaster" - id = "gargleblaster" - description = "Whoah, this stuff looks volatile!" - color = "#664300" // rgb: 102, 67, 0 - boozepwr = 0 //custom drunk effect - -/datum/reagent/consumable/ethanol/gargle_blaster/on_mob_life(mob/living/M) - M.dizziness +=6 - switch(current_cycle) - if(15 to 45) - if(!M.slurring) - M.slurring = 1 - M.slurring += 3 - if(45 to 55) - if(prob(50)) - M.confused = max(M.confused+3,0) - if(55 to 200) - M.set_drugginess(55) - if(200 to INFINITY) - M.adjustToxLoss(2, 0) - . = 1 - ..() - -/datum/reagent/consumable/ethanol/neurotoxin - name = "Neurotoxin" - id = "neurotoxin" - description = "A strong neurotoxin that puts the subject into a death-like state." - color = "#2E2E61" // rgb: 46, 46, 97 - boozepwr = 0 //custom drunk effect - -/datum/reagent/consumable/ethanol/neurotoxin/on_mob_life(mob/living/carbon/M) - M.Weaken(3, 1, 0) - M.dizziness +=6 - switch(current_cycle) - if(15 to 45) - if(!M.slurring) - M.slurring = 1 - M.slurring += 3 - if(45 to 55) - if(prob(50)) - M.confused = max(M.confused+3,0) - if(55 to 200) - M.set_drugginess(55) - if(200 to INFINITY) - M.adjustToxLoss(2, 0) - ..() - . = 1 - -/datum/reagent/consumable/ethanol/hippies_delight - name = "Hippie's Delight" - id = "hippiesdelight" - description = "You just don't get it maaaan." - color = "#664300" // rgb: 102, 67, 0 - nutriment_factor = 0 - boozepwr = 0 //custom drunk effect - metabolization_rate = 0.2 * REAGENTS_METABOLISM - -/datum/reagent/consumable/ethanol/hippies_delight/on_mob_life(mob/living/M) - if (!M.slurring) - M.slurring = 1 - switch(current_cycle) - if(1 to 5) - M.Dizzy(10) - M.set_drugginess(30) - if(prob(10)) - M.emote(pick("twitch","giggle")) - if(5 to 10) - M.Jitter(20) - M.Dizzy(20) - M.set_drugginess(45) - if(prob(20)) - M.emote(pick("twitch","giggle")) - if (10 to 200) - M.Jitter(40) - M.Dizzy(40) - M.set_drugginess(60) - if(prob(30)) - M.emote(pick("twitch","giggle")) - if(200 to INFINITY) - M.Jitter(60) - M.Dizzy(60) - M.set_drugginess(75) - if(prob(40)) - M.emote(pick("twitch","giggle")) - if(prob(30)) - M.adjustToxLoss(2, 0) - . = 1 - ..() - -/datum/reagent/consumable/ethanol/eggnog - name = "Eggnog" - id = "eggnog" - description = "For enjoying the most wonderful time of the year." - color = "#fcfdc6" // rgb: 252, 253, 198 - nutriment_factor = 2 * REAGENTS_METABOLISM - boozepwr = 1 \ No newline at end of file diff --git a/code/modules/reagents/chemistry/reagents/blob_reagents.dm b/code/modules/reagents/chemistry/reagents/blob_reagents.dm index 1ce7341a3f..efd4a585fc 100644 --- a/code/modules/reagents/chemistry/reagents/blob_reagents.dm +++ b/code/modules/reagents/chemistry/reagents/blob_reagents.dm @@ -5,51 +5,73 @@ color = "#FFFFFF" var/complementary_color = "#000000" //a color that's complementary to the normal blob color var/shortdesc = null //just damage and on_mob effects, doesn't include special, blob-tile only effects - var/effectdesc = null //any long, blob-tile specific effects var/analyzerdescdamage = "Unknown. Report this bug to a coder, or just adminhelp." var/analyzerdesceffect = "N/A" var/blobbernaut_message = "slams" //blobbernaut attack verb var/message = "The blob strikes you" //message sent to any mob hit by the blob var/message_living = null //extension to first mob sent to only living mobs i.e. silicons have no skin to be burnt - can_synth = 0 - -/datum/reagent/blob/proc/send_message(mob/living/M) - var/totalmessage = message - if(message_living && !issilicon(M)) - totalmessage += message_living - totalmessage += "!" - M << "[totalmessage]" /datum/reagent/blob/reaction_mob(mob/living/M, method=TOUCH, reac_volume, show_message, touch_protection, mob/camera/blob/O) if(M.stat == DEAD || istype(M, /mob/living/simple_animal/hostile/blob)) return 0 //the dead, and blob mobs, don't cause reactions return round(reac_volume * min(1.5 - touch_protection, 1), 0.1) //full touch protection means 50% volume, any prot below 0.5 means 100% volume. -/datum/reagent/blob/proc/damage_reaction(obj/structure/blob/B, damage, damage_type, damage_flag) //when the blob takes damage, do this +/datum/reagent/blob/proc/damage_reaction(obj/effect/blob/B, original_health, damage, damage_type, cause) //when the blob takes damage, do this return damage -/datum/reagent/blob/proc/death_reaction(obj/structure/blob/B, damage_flag) //when a blob dies, do this +/datum/reagent/blob/proc/death_reaction(obj/effect/blob/B, cause) //when a blob dies, do this return -/datum/reagent/blob/proc/expand_reaction(obj/structure/blob/B, obj/structure/blob/newB, turf/T, mob/camera/blob/O) //when the blob expands, do this +/datum/reagent/blob/proc/expand_reaction(obj/effect/blob/B, obj/effect/blob/newB, turf/T) //when the blob expands, do this return -/datum/reagent/blob/proc/tesla_reaction(obj/structure/blob/B, power) //when the blob is hit by a tesla bolt, do this +/datum/reagent/blob/proc/tesla_reaction(obj/effect/blob/B, power) //when the blob is hit by a tesla bolt, do this return 1 //return 0 to ignore damage -/datum/reagent/blob/proc/extinguish_reaction(obj/structure/blob/B) //when the blob is hit with water, do this +/datum/reagent/blob/proc/extinguish_reaction(obj/effect/blob/B) //when the blob is hit with water, do this return -/datum/reagent/blob/proc/emp_reaction(obj/structure/blob/B, severity) //when the blob is hit with an emp, do this +/datum/reagent/blob/proc/emp_reaction(obj/effect/blob/B, severity) //when the blob is hit with an emp, do this return +//does low toxin damage, but creates fragile spores when expanding or killed by weak attacks +/datum/reagent/blob/sporing_pods + name = "Sporing Pods" + id = "sporing_pods" + description = "will do very low toxin damage and produce fragile spores when killed or on expanding." + shortdesc = "will do very low toxin damage." + analyzerdescdamage = "Does very low toxin damage." + analyzerdesceffect = "Produces spores when expanding and when killed." + color = "#E88D5D" + complementary_color = "#5DB8E8" + message_living = ", and you feel sick" + +/datum/reagent/blob/sporing_pods/reaction_mob(mob/living/M, method=TOUCH, reac_volume, show_message, touch_protection, mob/camera/blob/O) + reac_volume = ..() + M.apply_damage(0.2*reac_volume, TOX) + +/datum/reagent/blob/sporing_pods/damage_reaction(obj/effect/blob/B, original_health, damage, damage_type, cause) + if(!isnull(cause) && damage <= 20 && original_health - damage <= 0 && prob(30)) //if the cause isn't fire or a bomb, the damage is less than 21, we're going to die from that damage, 30% chance of a shitty spore. + B.visible_message("A spore floats free of the blob!") + var/mob/living/simple_animal/hostile/blob/blobspore/weak/BS = new/mob/living/simple_animal/hostile/blob/blobspore/weak(B.loc) + BS.overmind = B.overmind + BS.update_icons() + B.overmind.blob_mobs.Add(BS) + return ..() + +/datum/reagent/blob/sporing_pods/expand_reaction(obj/effect/blob/B, obj/effect/blob/newB, turf/T) + if(prob(12)) + var/mob/living/simple_animal/hostile/blob/blobspore/weak/BS = new/mob/living/simple_animal/hostile/blob/blobspore/weak(T) + BS.overmind = B.overmind + BS.update_icons() + newB.overmind.blob_mobs.Add(BS) + //does brute damage but can replicate when damaged and has a chance of expanding again /datum/reagent/blob/replicating_foam name = "Replicating Foam" id = "replicating_foam" - description = "will do medium brute damage and occasionally expand again when expanding." + description = "will do medium brute damage, take increased brute damage, and expand when burned." shortdesc = "will do medium brute damage." - effectdesc = "will also expand when attacked with burn damage, but takes more brute damage." analyzerdescdamage = "Does medium brute damage." analyzerdesceffect = "Expands when attacked with burn damage, will occasionally expand again when expanding, and is fragile to brute damage." color = "#7B5A57" @@ -57,61 +79,30 @@ /datum/reagent/blob/replicating_foam/reaction_mob(mob/living/M, method=TOUCH, reac_volume, show_message, touch_protection, mob/camera/blob/O) reac_volume = ..() - M.apply_damage(0.7*reac_volume, BRUTE) + M.apply_damage(0.5*reac_volume, BRUTE) -/datum/reagent/blob/replicating_foam/damage_reaction(obj/structure/blob/B, damage, damage_type, damage_flag) +/datum/reagent/blob/replicating_foam/damage_reaction(obj/effect/blob/B, original_health, damage, damage_type, cause) + var/effectivedamage = damage if(damage_type == BRUTE) - damage = damage * 2 - else if(damage_type == BURN && damage > 0 && B.obj_integrity - damage > 0 && prob(60)) - var/obj/structure/blob/newB = B.expand(null, null, 0) + effectivedamage = damage * 2 + if(damage_type == BURN && effectivedamage > 0 && original_health - effectivedamage > 0 && prob(75)) + var/obj/effect/blob/newB = B.expand(null, null, 0) if(newB) - newB.obj_integrity = B.obj_integrity - damage + newB.health = original_health - effectivedamage + newB.check_health(cause) newB.update_icon() - return ..() + return effectivedamage -/datum/reagent/blob/replicating_foam/expand_reaction(obj/structure/blob/B, obj/structure/blob/newB, turf/T, mob/camera/blob/O) +/datum/reagent/blob/replicating_foam/expand_reaction(obj/effect/blob/B, obj/effect/blob/newB, turf/T) if(prob(30)) - newB.expand(null, null, 0) //do it again! - -//does massive brute and burn damage, but can only expand manually -/datum/reagent/blob/networked_fibers - name = "Networked Fibers" - id = "networked_fibers" - description = "will do high brute and burn damage but non-manual expansion will only generate resources." - shortdesc = "will do high brute and burn damage." - effectdesc = "will move your core when manually expanding near it." - analyzerdescdamage = "Does high brute and burn damage." - analyzerdesceffect = "Is highly mobile and generates resources rapidly." - color = "#CDC0B0" - complementary_color = "#FFF68F" - -/datum/reagent/blob/networked_fibers/reaction_mob(mob/living/M, method=TOUCH, reac_volume, show_message, touch_protection, mob/camera/blob/O) - reac_volume = ..() - M.apply_damage(0.6*reac_volume, BRUTE) - if(M) - M.apply_damage(0.6*reac_volume, BURN) - -/datum/reagent/blob/networked_fibers/expand_reaction(obj/structure/blob/B, obj/structure/blob/newB, turf/T, mob/camera/blob/O) - if(!O && newB.overmind) - if(!istype(B, /obj/structure/blob/node)) - newB.overmind.add_points(1) - qdel(newB) - else - var/area/A = get_area(T) - if(!isspaceturf(T) && !istype(A, /area/shuttle)) - for(var/obj/structure/blob/core/C in range(1, newB)) - if(C.overmind == O) - newB.forceMove(get_turf(C)) - C.forceMove(T) - C.setDir(get_dir(newB, C)) - O.add_points(1) + newB.expand() //do it again! //does brute damage, shifts away when damaged /datum/reagent/blob/shifting_fragments name = "Shifting Fragments" id = "shifting_fragments" - description = "will do medium brute damage." - effectdesc = "will also cause blob parts to shift away when attacked." + description = "will do medium brute damage and shift away from damage." + shortdesc = "will do medium brute damage." analyzerdescdamage = "Does medium brute damage." analyzerdesceffect = "When attacked, may shift away from the attacker." color = "#C8963C" @@ -119,79 +110,123 @@ /datum/reagent/blob/shifting_fragments/reaction_mob(mob/living/M, method=TOUCH, reac_volume, show_message, touch_protection, mob/camera/blob/O) reac_volume = ..() - M.apply_damage(0.7*reac_volume, BRUTE) + M.apply_damage(0.6*reac_volume, BRUTE) -/datum/reagent/blob/shifting_fragments/expand_reaction(obj/structure/blob/B, obj/structure/blob/newB, turf/T, mob/camera/blob/O) - if(istype(B, /obj/structure/blob/normal) || (istype(B, /obj/structure/blob/shield) && prob(25))) +/datum/reagent/blob/shifting_fragments/expand_reaction(obj/effect/blob/B, obj/effect/blob/newB, turf/T) + if(istype(B, /obj/effect/blob/normal) || (istype(B, /obj/effect/blob/shield) && prob(20))) newB.forceMove(get_turf(B)) B.forceMove(T) -/datum/reagent/blob/shifting_fragments/damage_reaction(obj/structure/blob/B, damage, damage_type, damage_flag) - if((damage_flag == "melee" || damage_flag == "bullet" || damage_flag == "laser") && damage > 0 && B.obj_integrity - damage > 0 && prob(60-damage)) +/datum/reagent/blob/shifting_fragments/damage_reaction(obj/effect/blob/B, original_health, damage, damage_type, cause) + if(cause && damage > 0 && original_health - damage > 0 && prob(40)) var/list/blobstopick = list() - for(var/obj/structure/blob/OB in orange(1, B)) - if((istype(OB, /obj/structure/blob/normal) || (istype(OB, /obj/structure/blob/shield) && prob(25))) && OB.overmind && OB.overmind.blob_reagent_datum.id == B.overmind.blob_reagent_datum.id) + for(var/obj/effect/blob/OB in orange(1, B)) + if((istype(OB, /obj/effect/blob/normal) || istype(OB, /obj/effect/blob/shield)) && OB.overmind && OB.overmind.blob_reagent_datum.id == B.overmind.blob_reagent_datum.id) blobstopick += OB //as long as the blob picked is valid; ie, a normal or shield blob that has the same chemical as we do, we can swap with it if(blobstopick.len) - var/obj/structure/blob/targeted = pick(blobstopick) //randomize the blob chosen, because otherwise it'd tend to the lower left + var/obj/effect/blob/targeted = pick(blobstopick) //randomize the blob chosen, because otherwise it'd tend to the lower left var/turf/T = get_turf(targeted) targeted.forceMove(get_turf(B)) B.forceMove(T) //swap the blobs return ..() -//sets you on fire, does burn damage, explodes into flame when burnt, weak to water -/datum/reagent/blob/blazing_oil - name = "Blazing Oil" - id = "blazing_oil" - description = "will do medium burn damage and set targets on fire." - effectdesc = "will also release bursts of flame when burnt, but takes damage from water." +//does low burn and a lot of stamina damage, immune to tesla bolts, weak to EMP +/datum/reagent/blob/energized_fibers + name = "Energized Fibers" + id = "energized_fibers" + description = "will do low burn and high stamina damage and conduct electricity, but is weak to EMPs." + shortdesc = "will do low burn and high stamina damage." + analyzerdescdamage = "Does low burn damage and massively drains stamina." + analyzerdesceffect = "Is immune to electricity and will easily conduct it, but is weak to EMPs." + color = "#EFD65A" + complementary_color = "#5A73EF" + blobbernaut_message = "shocks" + message_living = ", and you feel a strong tingling sensation" + +/datum/reagent/blob/energized_fibers/reaction_mob(mob/living/M, method=TOUCH, reac_volume, show_message, touch_protection, mob/camera/blob/O) + reac_volume = ..() + M.apply_damage(0.6*reac_volume, BURN) + if(M) + M.adjustStaminaLoss(0.6*reac_volume) + +/datum/reagent/blob/energized_fibers/tesla_reaction(obj/effect/blob/B, power) + return 0 + +/datum/reagent/blob/energized_fibers/emp_reaction(obj/effect/blob/B, severity) + var/damage = rand(30, 50) - severity * rand(10, 15) + B.take_damage(damage, BURN) + +//sets you on fire, does burn damage, weak to water +/datum/reagent/blob/boiling_oil + name = "Boiling Oil" + id = "boiling_oil" + description = "will do medium burn damage and set targets on fire, but is weak to water." + shortdesc = "will do medium burn damage and set targets on fire." analyzerdescdamage = "Does medium burn damage and sets targets on fire." - analyzerdesceffect = "Releases fire when burnt, but takes damage from water and other extinguishing liquids." + analyzerdesceffect = "Takes damage from water and other extinguishing liquids." color = "#B68D00" - complementary_color = "#BE5532" + complementary_color = "#0029B6" blobbernaut_message = "splashes" message = "The blob splashes you with burning oil" message_living = ", and you feel your skin char and melt" -/datum/reagent/blob/blazing_oil/reaction_mob(mob/living/M, method=TOUCH, reac_volume, show_message, touch_protection, mob/camera/blob/O) +/datum/reagent/blob/boiling_oil/reaction_mob(mob/living/M, method=TOUCH, reac_volume, show_message, touch_protection, mob/camera/blob/O) reac_volume = ..() M.adjust_fire_stacks(round(reac_volume/10)) M.IgniteMob() if(M) - M.apply_damage(0.8*reac_volume, BURN) + M.apply_damage(0.6*reac_volume, BURN) if(iscarbon(M)) M.emote("scream") -/datum/reagent/blob/blazing_oil/extinguish_reaction(obj/structure/blob/B) - B.take_damage(rand(1, 3), BURN, "energy") +/datum/reagent/blob/boiling_oil/extinguish_reaction(obj/effect/blob/B) + B.take_damage(rand(1, 3), BURN) -/datum/reagent/blob/blazing_oil/damage_reaction(obj/structure/blob/B, damage, damage_type, damage_flag) - if(damage_type == BURN && damage_flag != "energy") +//does burn and toxin damage, explodes into flame when hit with burn damage +/datum/reagent/blob/flammable_goo + name = "Flammable Goo" + id = "flammable_goo" + description = "will do medium burn and toxin damage, make targets flammable, and ignite when burned." + shortdesc = "will do medium burn and toxin damage, and make targets flammable." + analyzerdescdamage = "Does medium burn damage, medium toxin damage, and makes targets flammable." + analyzerdesceffect = "Releases bursts of flame when attacked with burn damage, but takes additional burn damage." + color = "#BE5532" + complementary_color = "#329BBE" + blobbernaut_message = "splashes" + message = "The blob splashes you with a thin goo" + message_living = ", and you smell a faint, sweet scent" + +/datum/reagent/blob/flammable_goo/reaction_mob(mob/living/M, method=TOUCH, reac_volume, show_message, touch_protection, mob/camera/blob/O) + reac_volume = ..() + M.adjust_fire_stacks(round(reac_volume/8)) //apply, but don't ignite + M.apply_damage(0.4*reac_volume, TOX) + if(M) + M.apply_damage(0.4*reac_volume, BURN) + +/datum/reagent/blob/flammable_goo/damage_reaction(obj/effect/blob/B, original_health, damage, damage_type, cause) + if(cause && damage_type == BURN) for(var/turf/open/T in range(1, B)) - var/obj/structure/blob/C = locate() in T + var/obj/effect/blob/C = locate() in T if(!(C && C.overmind && C.overmind.blob_reagent_datum.id == B.overmind.blob_reagent_datum.id) && prob(80)) PoolOrNew(/obj/effect/hotspot, T) - if(damage_flag == "fire") - return 0 + return damage * 1.5 return ..() -//does toxin damage, hallucination, targets think they're not hurt at all +//does toxin damage, targets think they're not hurt at all /datum/reagent/blob/regenerative_materia name = "Regenerative Materia" id = "regenerative_materia" - description = "will do toxin damage and cause targets to believe they are fully healed." - analyzerdescdamage = "Does toxin damage and injects a toxin that causes the target to believe they are fully healed." + description = "will do low toxin damage and cause targets to believe they are fully healed." + analyzerdescdamage = "Does low toxin damage and injects a toxin that causes the target to believe they are fully healed." color = "#C8A5DC" - complementary_color = "#CD7794" + complementary_color = "#B9DCA5" message_living = ", and you feel alive" /datum/reagent/blob/regenerative_materia/reaction_mob(mob/living/M, method=TOUCH, reac_volume, show_message, touch_protection, mob/camera/blob/O) reac_volume = ..() - M.adjust_drugginess(reac_volume) if(M.reagents) M.reagents.add_reagent("regenerative_materia", 0.2*reac_volume) - M.reagents.add_reagent("spore", 0.2*reac_volume) - M.apply_damage(0.7*reac_volume, TOX) + M.apply_damage(0.5*reac_volume, TOX) /datum/reagent/blob/regenerative_materia/on_mob_life(mob/living/M) M.adjustToxLoss(1*REM) @@ -206,151 +241,211 @@ N.hal_screwyhud = 0 ..() -//kills sleeping targets and turns them into blob zombies, produces fragile spores when killed or on expanding -/datum/reagent/blob/zombifying_pods - name = "Zombifying Pods" - id = "zombifying_pods" - description = "will do very low toxin damage and harvest sleeping targets for additional resources and a blob zombie." - effectdesc = "will also produce fragile spores when killed and on expanding." - shortdesc = "will do very low toxin damage and harvest sleeping targets for additional resources(for your overmind) and a blob zombie." - analyzerdescdamage = "Does very low toxin damage and kills unconscious humans, turning them into blob zombies." - analyzerdesceffect = "Produces spores when expanding and when killed." - color = "#E88D5D" - complementary_color = "#823ABB" +//toxin, hallucination, and some bonus spore toxin +/datum/reagent/blob/hallucinogenic_nectar + name = "Hallucinogenic Nectar" + id = "hallucinogenic_nectar" + description = "will do low toxin damage, vivid hallucinations, and inject targets with toxins." + analyzerdescdamage = "Does low toxin damage and injects a toxin that causes vivid hallucinations and blurried vision." + color = "#CD7794" + complementary_color = "#77CDB0" + blobbernaut_message = "splashes" + message = "The blob splashes you with sticky nectar" + message_living = ", and you feel really good" + +/datum/reagent/blob/hallucinogenic_nectar/reaction_mob(mob/living/M, method=TOUCH, reac_volume, show_message, touch_protection, mob/camera/blob/O) + reac_volume = ..() + M.hallucination += reac_volume + M.adjust_drugginess(reac_volume) + + if(M.reagents) + M.reagents.add_reagent("spore", 0.2*reac_volume) + M.apply_damage(0.5*reac_volume, TOX) + +//kills sleeping targets and turns them into blob zombies +/datum/reagent/blob/zombifying_feelers + name = "Zombifying Feelers" + id = "zombifying_feelers" + description = "will do low toxin damage and turn sleeping targets into blob zombies." + analyzerdescdamage = "Does low toxin damage and kills unconscious humans, turning them into blob zombies." + color = "#828264" + complementary_color = "#646482" message_living = ", and you feel tired" -/datum/reagent/blob/zombifying_pods/reaction_mob(mob/living/M, method=TOUCH, reac_volume, show_message, touch_protection, mob/camera/blob/O) +/datum/reagent/blob/zombifying_feelers/reaction_mob(mob/living/M, method=TOUCH, reac_volume, show_message, touch_protection, mob/camera/blob/O) reac_volume = ..() - M.apply_damage(0.6*reac_volume, TOX) if(O && ishuman(M) && M.stat == UNCONSCIOUS) M.death() //sleeping in a fight? bad plan. - var/points = rand(5, 10) var/mob/living/simple_animal/hostile/blob/blobspore/BS = new/mob/living/simple_animal/hostile/blob/blobspore/weak(get_turf(M)) BS.overmind = O BS.update_icons() O.blob_mobs.Add(BS) BS.Zombify(M) - O.add_points(points) - O << "Gained [points] resources from the zombification of [M]." + if(M) + M.apply_damage(0.4*reac_volume, TOX) -/datum/reagent/blob/zombifying_pods/damage_reaction(obj/structure/blob/B, damage, damage_type, damage_flag) - if((damage_flag == "melee" || damage_flag == "bullet" || damage_flag == "laser") && damage <= 20 && B.obj_integrity - damage <= 0 && prob(30)) //if the cause isn't fire or a bomb, the damage is less than 21, we're going to die from that damage, 20% chance of a shitty spore. - B.visible_message("A spore floats free of the blob!") - var/mob/living/simple_animal/hostile/blob/blobspore/weak/BS = new/mob/living/simple_animal/hostile/blob/blobspore/weak(B.loc) - BS.overmind = B.overmind - BS.update_icons() - B.overmind.blob_mobs.Add(BS) - return ..() +//toxin, stamina, and some bonus spore toxin +/datum/reagent/blob/envenomed_filaments + name = "Envenomed Filaments" + id = "envenomed_filaments" + description = "will do medium toxin and stamina damage, and inject targets with toxins." + analyzerdescdamage = "Does medium toxin damage, drains stamina, and injects a weak toxin." + color = "#9ACD32" + complementary_color = "#6532CD" + message_living = ", and you feel sick and nauseated" -/datum/reagent/blob/zombifying_pods/expand_reaction(obj/structure/blob/B, obj/structure/blob/newB, turf/T, mob/camera/blob/O) - if(prob(10)) - var/mob/living/simple_animal/hostile/blob/blobspore/weak/BS = new/mob/living/simple_animal/hostile/blob/blobspore/weak(T) - BS.overmind = B.overmind - BS.update_icons() - newB.overmind.blob_mobs.Add(BS) +/datum/reagent/blob/envenomed_filaments/reaction_mob(mob/living/M, method=TOUCH, reac_volume, show_message, touch_protection, mob/camera/blob/O) + reac_volume = ..() + if(M.reagents) + M.reagents.add_reagent("spore", 0.2*reac_volume) + M.apply_damage(0.4*reac_volume, TOX) + if(M) + M.adjustStaminaLoss(0.4*reac_volume) -//does tons of oxygen damage and a little stamina, immune to tesla bolts, weak to EMP -/datum/reagent/blob/energized_jelly - name = "Energized Jelly" - id = "energized_jelly" - description = "will cause low stamina and high oxygen damage, and cause targets to be unable to breathe." - effectdesc = "will also conduct electricity, but takes damage from EMPs." - analyzerdescdamage = "Does low stamina damage, high oxygen damage, and prevents targets from breathing." - analyzerdesceffect = "Is immune to electricity and will easily conduct it, but is weak to EMPs." - color = "#EFD65A" - complementary_color = "#00E5B1" - message_living = ", and you feel a horrible tingling sensation" - var/datum/effect_system/spark_spread/spark_system = new/datum/effect_system/spark_spread() +//does brute, fire, and toxin over a few seconds +/datum/reagent/blob/poisonous_strands + name = "Poisonous Strands" + id = "poisonous_strands" + description = "will inject targets with poison." + analyzerdescdamage = "Injects a highly lethal poison that will gradually liquify the target's internal organs." + color = "#7D6EB4" + complementary_color = "#A5B46E" + blobbernaut_message = "injects" + message_living = ", and you feel like your insides are melting" -/datum/reagent/blob/energized_jelly/reaction_mob(mob/living/M, method=TOUCH, reac_volume, show_message, touch_protection, mob/camera/blob/O) +/datum/reagent/blob/poisonous_strands/reaction_mob(mob/living/M, method=TOUCH, reac_volume, show_message, touch_protection, mob/camera/blob/O) + reac_volume = ..() + if(M.reagents) + M.reagents.add_reagent("poisonous_strands", 0.12*reac_volume) + +/datum/reagent/blob/poisonous_strands/on_mob_life(mob/living/M) + M.adjustBruteLoss(1.5*REM) + M.adjustFireLoss(1.5*REM) + M.adjustToxLoss(1.5*REM) + ..() + +//does oxygen damage, randomly pushes or pulls targets +/datum/reagent/blob/cyclonic_grid + name = "Cyclonic Grid" + id = "cyclonic_grid" + description = "will cause high oxygen damage and randomly throw targets to or from it." + analyzerdescdamage = "Does high oxygen damage and randomly throws targets at or away from it." + color = "#9BCD9B" + complementary_color = "#CD9BCD" + message = "The blob blasts you with a gust of air" + message_living = ", and you can't catch your breath" + +/datum/reagent/blob/cyclonic_grid/reaction_mob(mob/living/M, method=TOUCH, reac_volume, show_message, touch_protection, mob/camera/blob/O) + reac_volume = ..() + reagent_vortex(M, rand(0, 1), reac_volume) + M.losebreath += round(0.05*reac_volume) + M.apply_damage(0.6*reac_volume, OXY) + +//does tons of oxygen damage and a little brute +/datum/reagent/blob/lexorin_jelly + name = "Lexorin Jelly" + id = "lexorin_jelly" + description = "will cause low brute and high oxygen damage, and cause targets to be unable to breathe." + analyzerdescdamage = "Does low brute damage, high oxygen damage, and prevents targets from breathing." + color = "#00E5B1" + complementary_color = "#E50034" + message_living = ", and your lungs feel heavy and weak" + +/datum/reagent/blob/lexorin_jelly/reaction_mob(mob/living/M, method=TOUCH, reac_volume, show_message, touch_protection, mob/camera/blob/O) reac_volume = ..() M.losebreath += round(0.2*reac_volume) - M.adjustStaminaLoss(0.4*reac_volume) + M.apply_damage(0.2*reac_volume, BRUTE) if(M) M.apply_damage(0.6*reac_volume, OXY) -/datum/reagent/blob/energized_jelly/damage_reaction(obj/structure/blob/B, damage, damage_type, damage_flag) - if((damage_flag == "melee" || damage_flag == "bullet" || damage_flag == "laser") && B.obj_integrity - damage <= 0 && prob(10)) - spark_system.set_up(rand(2, 4), 0, B) - spark_system.start() - return ..() - -/datum/reagent/blob/energized_jelly/tesla_reaction(obj/structure/blob/B, power) - return 0 - -/datum/reagent/blob/energized_jelly/emp_reaction(obj/structure/blob/B, severity) - var/damage = rand(30, 50) - severity * rand(10, 15) - B.take_damage(damage, BURN, "energy") - //does aoe brute damage when hitting targets, is immune to explosions /datum/reagent/blob/explosive_lattice name = "Explosive Lattice" id = "explosive_lattice" - description = "will do brute damage in an area around targets." - effectdesc = "will also resist explosions, but takes increased damage from fire and other energy sources." + description = "will do brute damage in an area around targets and is resistant to explosions." + shortdesc = "will do brute damage in an area around targets." analyzerdescdamage = "Does medium brute damage and causes damage to everyone near its targets." - analyzerdesceffect = "Is highly resistant to explosions, but takes increased damage from fire and other energy sources." + analyzerdesceffect = "Is highly resistant to explosions." color = "#8B2500" complementary_color = "#00668B" blobbernaut_message = "blasts" message = "The blob blasts you" /datum/reagent/blob/explosive_lattice/reaction_mob(mob/living/M, method=TOUCH, reac_volume, show_message, touch_protection, mob/camera/blob/O) - var/initial_volume = reac_volume reac_volume = ..() if(reac_volume >= 10) //if it's not a spore cloud, bad time incoming - var/obj/effect/overlay/temp/explosion/fast/E = PoolOrNew(/obj/effect/overlay/temp/explosion/fast, get_turf(M)) + var/obj/effect/overlay/temp/explosion/E = PoolOrNew(/obj/effect/overlay/temp/explosion, get_turf(M)) E.alpha = 150 - for(var/mob/living/L in orange(get_turf(M), 1)) + for(var/mob/living/L in orange(M, 1)) if("blob" in L.faction) //no friendly fire continue - var/aoe_volume = ..(L, TOUCH, initial_volume, 0, L.get_permeability_protection(), O) - L.apply_damage(0.4*aoe_volume, BRUTE) + L.apply_damage(0.6*reac_volume, BRUTE) if(M) M.apply_damage(0.6*reac_volume, BRUTE) else - M.apply_damage(0.6*reac_volume, BRUTE) + M.apply_damage(0.8*reac_volume, BRUTE) -/datum/reagent/blob/explosive_lattice/damage_reaction(obj/structure/blob/B, damage, damage_type, damage_flag) - if(damage_flag == "bomb") - return 0 - else if(damage_flag != "melee" || damage_flag != "bullet" || damage_flag != "laser") - return damage * 1.5 +/datum/reagent/blob/explosive_lattice/damage_reaction(obj/effect/blob/B, original_health, damage, damage_type, cause) + if(isnull(cause)) + if(damage_type == BRUTE) + return 0 //no-sell the explosion we do not take damage + if(damage_type == BURN) + return damage * 1.5 //take more from fire, tesla, and flashbangs return ..() -//does brute, burn, and toxin damage, and cools targets down -/datum/reagent/blob/cryogenic_poison - name = "Cryogenic Poison" - id = "cryogenic_poison" - description = "will inject targets with a freezing poison that does high damage over time." - analyzerdescdamage = "Injects targets with a freezing poison that will gradually solidify the target's internal organs." - color = "#8BA6E9" - complementary_color = "#7D6EB4" - blobbernaut_message = "injects" - message = "The blob stabs you" - message_living = ", and you feel like your insides are solidifying" +//does semi-random brute damage and reacts to brute damage +/datum/reagent/blob/reactive_gelatin + name = "Reactive Gelatin" + id = "reactive_gelatin" + description = "will do random brute damage and react to brute damage." + shortdesc = "will do random brute damage." + analyzerdescdamage = "Does random brute damage." + analyzerdesceffect = "When attacked with brute damage, will lash out, attacking everything near it." + color = "#FFA500" + complementary_color = "#005AFF" + blobbernaut_message = "pummels" + message = "The blob pummels you" -/datum/reagent/blob/cryogenic_poison/reaction_mob(mob/living/M, method=TOUCH, reac_volume, show_message, touch_protection, mob/camera/blob/O) +/datum/reagent/blob/reactive_gelatin/reaction_mob(mob/living/M, method=TOUCH, reac_volume, show_message, touch_protection, mob/camera/blob/O) + reac_volume = ..() + var/damage = rand(5, 35)/25 + M.apply_damage(damage*reac_volume, BRUTE) + +/datum/reagent/blob/reactive_gelatin/damage_reaction(obj/effect/blob/B, original_health, damage, damage_type, cause) + if(damage && damage_type == BRUTE && original_health - damage > 0) //is there any damage, is it brute, and will we be alive + if(isliving(cause)) + B.visible_message("The blob retaliates, lashing out!") + for(var/atom/A in range(1, B)) + A.blob_act(B) + return ..() + +//does low burn damage and stamina damage and cools targets down +/datum/reagent/blob/cryogenic_liquid + name = "Cryogenic Liquid" + id = "cryogenic_liquid" + description = "will do low burn and stamina damage, and cause targets to freeze." + analyzerdescdamage = "Does low burn damage, drains stamina, and injects targets with a freezing liquid." + color = "#8BA6E9" + complementary_color = "#E9CE8B" + blobbernaut_message = "splashes" + message = "The blob splashes you with an icy liquid" + message_living = ", and you feel cold and tired" + +/datum/reagent/blob/cryogenic_liquid/reaction_mob(mob/living/M, method=TOUCH, reac_volume, show_message, touch_protection, mob/camera/blob/O) reac_volume = ..() if(M.reagents) M.reagents.add_reagent("frostoil", 0.3*reac_volume) M.reagents.add_reagent("ice", 0.3*reac_volume) - M.reagents.add_reagent("cryogenic_poison", 0.3*reac_volume) - M.apply_damage(0.2*reac_volume, BRUTE) - -/datum/reagent/blob/cryogenic_poison/on_mob_life(mob/living/M) - M.adjustBruteLoss(0.3*REM, 0) - M.adjustFireLoss(0.3*REM, 0) - M.adjustToxLoss(0.3*REM, 0) - . = 1 - ..() + M.apply_damage(0.4*reac_volume, BURN) + if(M) + M.adjustStaminaLoss(0.3*reac_volume) //does burn damage and EMPs, slightly fragile /datum/reagent/blob/electromagnetic_web name = "Electromagnetic Web" id = "electromagnetic_web" - description = "will do high burn damage and EMP targets." - effectdesc = "will also take massively increased damage and release an EMP when killed." + description = "will do low burn damage and EMP targets, but is very fragile." + shortdesc = "will do low burn damage and EMP targets." analyzerdescdamage = "Does low burn damage and EMPs targets." analyzerdesceffect = "Is fragile to all types of damage, but takes massive damage from brute. In addition, releases a small EMP when killed." color = "#83ECEC" @@ -364,9 +459,9 @@ if(prob(reac_volume*2)) M.emp_act(2) if(M) - M.apply_damage(reac_volume, BURN) + M.apply_damage(0.6*reac_volume, BURN) -/datum/reagent/blob/electromagnetic_web/damage_reaction(obj/structure/blob/B, damage, damage_type, damage_flag) +/datum/reagent/blob/electromagnetic_web/damage_reaction(obj/effect/blob/B, original_health, damage, damage_type, cause) if(damage_type == BRUTE) //take full brute switch(B.brute_resist) if(0.5) @@ -377,16 +472,16 @@ return damage * 10 return damage * 1.25 //a laser will do 25 damage, which will kill any normal blob -/datum/reagent/blob/electromagnetic_web/death_reaction(obj/structure/blob/B, damage_flag) - if(damage_flag == "melee" || damage_flag == "bullet" || damage_flag == "laser") +/datum/reagent/blob/electromagnetic_web/death_reaction(obj/effect/blob/B, cause) + if(cause) empulse(B.loc, 1, 3) //less than screen range, so you can stand out of range to avoid it //does brute damage, bonus damage for each nearby blob, and spreads damage out /datum/reagent/blob/synchronous_mesh name = "Synchronous Mesh" id = "synchronous_mesh" - description = "will do massively increased brute damage for each blob near the target." - effectdesc = "will also spread damage between each blob near the attacked blob." + description = "will do brute damage for each nearby blob and spread damage between nearby blobs." + shortdesc = "will do brute damage for each nearby blob." analyzerdescdamage = "Does brute damage, increasing for each blob near the target." analyzerdesceffect = "When attacked, spreads damage between all blobs near the attacked blob." color = "#65ADA2" @@ -396,58 +491,68 @@ /datum/reagent/blob/synchronous_mesh/reaction_mob(mob/living/M, method=TOUCH, reac_volume, show_message, touch_protection, mob/camera/blob/O) reac_volume = ..() - M.apply_damage(0.2*reac_volume, BRUTE) + M.apply_damage(0.1*reac_volume, BRUTE) if(M && reac_volume) - for(var/obj/structure/blob/B in range(1, M)) //if the target is completely surrounded, this is 2.4*reac_volume bonus damage, total of 2.6*reac_volume + for(var/obj/effect/blob/B in range(1, M)) //if the target is completely surrounded, this is 2.4*reac_volume bonus damage, total of 2.5*reac_volume if(M) B.blob_attack_animation(M) //show them they're getting a bad time M.apply_damage(0.3*reac_volume, BRUTE) -/datum/reagent/blob/synchronous_mesh/damage_reaction(obj/structure/blob/B, damage, damage_type, damage_flag) - if(damage_flag == "melee" || damage_flag == "bullet" || damage_flag == "laser") //the cause isn't fire or bombs, so split the damage +/datum/reagent/blob/synchronous_mesh/damage_reaction(obj/effect/blob/B, original_health, damage, damage_type, cause) + if(!isnull(cause)) //the cause isn't fire or bombs, so split the damage var/damagesplit = 1 //maximum split is 9, reducing the damage each blob takes to 11% but doing that damage to 9 blobs - for(var/obj/structure/blob/C in orange(1, B)) - if(!istype(C, /obj/structure/blob/core) && !istype(C, /obj/structure/blob/node) && C.overmind && C.overmind.blob_reagent_datum.id == B.overmind.blob_reagent_datum.id) //if it doesn't have the same chemical or is a core or node, don't split damage to it + for(var/obj/effect/blob/C in orange(1, B)) + if(!istype(C, /obj/effect/blob/core) && !istype(C, /obj/effect/blob/node) && C.overmind && C.overmind.blob_reagent_datum.id == B.overmind.blob_reagent_datum.id) //if it doesn't have the same chemical or is a core or node, don't split damage to it damagesplit += 1 - for(var/obj/structure/blob/C in orange(1, B)) - if(!istype(C, /obj/structure/blob/core) && !istype(C, /obj/structure/blob/node) && C.overmind && C.overmind.blob_reagent_datum.id == B.overmind.blob_reagent_datum.id) //only hurt blobs that have the same overmind chemical and aren't cores or nodes - C.take_damage(damage/damagesplit, CLONE, 0, 0) + for(var/obj/effect/blob/C in orange(1, B)) + if(!istype(C, /obj/effect/blob/core) && !istype(C, /obj/effect/blob/node) && C.overmind && C.overmind.blob_reagent_datum.id == B.overmind.blob_reagent_datum.id) //only hurt blobs that have the same overmind chemical and aren't cores or nodes + C.take_damage(damage/damagesplit, CLONE, B, 0) return damage / damagesplit else return damage * 1.25 //does brute damage through armor and bio resistance -/datum/reagent/blob/reactive_spines - name = "Reactive Spines" - id = "reactive_spines" +/datum/reagent/blob/penetrating_spines + name = "Penetrating Spines" + id = "penetrating_spines" description = "will do medium brute damage through armor and bio resistance." - effectdesc = "will also react when attacked with brute damage, attacking all near the attacked blob." analyzerdescdamage = "Does medium brute damage, ignoring armor and bio resistance." - analyzerdesceffect = "When attacked with brute damage, will lash out, attacking everything near it." - color = "#9ACD32" - complementary_color = "#FFA500" + color = "#6E4664" + complementary_color = "#466E50" blobbernaut_message = "stabs" message = "The blob stabs you" -/datum/reagent/blob/reactive_spines/reaction_mob(mob/living/M, method=TOUCH, reac_volume, show_message, touch_protection, mob/camera/blob/O) +/datum/reagent/blob/penetrating_spines/reaction_mob(mob/living/M, method=TOUCH, reac_volume, show_message, touch_protection, mob/camera/blob/O) if(M.stat == DEAD || istype(M, /mob/living/simple_animal/hostile/blob)) return 0 //the dead, and blob mobs, don't cause reactions - M.adjustBruteLoss(0.8*reac_volume) + M.adjustBruteLoss(0.7*reac_volume) -/datum/reagent/blob/reactive_spines/damage_reaction(obj/structure/blob/B, damage, damage_type, damage_flag) - if(damage && damage_type == BRUTE && B.obj_integrity - damage > 0) //is there any damage, is it brute, and will we be alive - if(damage_flag == "melee") - B.visible_message("The blob retaliates, lashing out!") - for(var/atom/A in range(1, B)) - A.blob_act(B) - return ..() +/datum/reagent/blob/adaptive_nexuses + name = "Adaptive Nexuses" + id = "adaptive_nexuses" + description = "will do medium brute damage and kill unconscious targets, giving you bonus resources." + shortdesc = "will do medium brute damage and kill unconscious targets, giving your overmind bonus resources." + analyzerdescdamage = "Does medium brute damage and kills unconscious humans, reaping resources from them." + color = "#4A64C0" + complementary_color = "#823ABB" + +/datum/reagent/blob/adaptive_nexuses/reaction_mob(mob/living/M, method=TOUCH, reac_volume, show_message, touch_protection, mob/camera/blob/O) + reac_volume = ..() + if(O && ishuman(M) && M.stat == UNCONSCIOUS) + PoolOrNew(/obj/effect/overlay/temp/revenant, get_turf(M)) + var/points = rand(5, 10) + O.add_points(points) + O << "Gained [points] resources from the death of [M]." + M.death() + if(M) + M.apply_damage(0.5*reac_volume, BRUTE) //does low brute damage, oxygen damage, and stamina damage and wets tiles when damaged /datum/reagent/blob/pressurized_slime name = "Pressurized Slime" id = "pressurized_slime" - description = "will do low brute, oxygen, and stamina damage, and wet tiles under targets." - effectdesc = "will also wet tiles near blobs that are attacked or killed." + description = "will do low brute, oxygen, and stamina damage, and wet tiles when damaged or killed." + shortdesc = "will do low brute, oxygen, and stamina damage, and wet tiles under targets." analyzerdescdamage = "Does low brute damage, low oxygen damage, drains stamina, and wets tiles under targets, extinguishing them." analyzerdesceffect = "When attacked or killed, wets nearby tiles, extinguishing anything on them." color = "#AAAABB" @@ -463,23 +568,22 @@ T.MakeSlippery(min_wet_time = 10, wet_time_to_add = 5) M.adjust_fire_stacks(-(reac_volume / 10)) M.ExtinguishMob() - M.apply_damage(0.4*reac_volume, BRUTE) + M.apply_damage(0.1*reac_volume, BRUTE) if(M) - M.apply_damage(0.4*reac_volume, OXY) + M.apply_damage(0.3*reac_volume, OXY) if(M) - M.adjustStaminaLoss(0.2*reac_volume) + M.adjustStaminaLoss(0.3*reac_volume) -/datum/reagent/blob/pressurized_slime/damage_reaction(obj/structure/blob/B, damage, damage_type, damage_flag) - if((damage_flag == "melee" || damage_flag == "bullet" || damage_flag == "laser") || damage_type != BURN) - extinguisharea(B, damage) +/datum/reagent/blob/pressurized_slime/damage_reaction(obj/effect/blob/B, original_health, damage, damage_type, cause) + extinguisharea(B, damage) return ..() -/datum/reagent/blob/pressurized_slime/death_reaction(obj/structure/blob/B, damage_flag) - if(damage_flag == "melee" || damage_flag == "bullet" || damage_flag == "laser") - B.visible_message("The blob ruptures, spraying the area with liquid!") - extinguisharea(B, 50) +/datum/reagent/blob/pressurized_slime/death_reaction(obj/effect/blob/B, cause) + if(!isnull(cause)) + B.visible_message("The blob ruptures, spraying the area with liquid!") + extinguisharea(B, 50) -/datum/reagent/blob/pressurized_slime/proc/extinguisharea(obj/structure/blob/B, probchance) +/datum/reagent/blob/pressurized_slime/proc/extinguisharea(obj/effect/blob/B, probchance) for(var/turf/open/T in range(1, B)) if(prob(probchance)) T.MakeSlippery(min_wet_time = 10, wet_time_to_add = 5) @@ -488,3 +592,75 @@ for(var/mob/living/L in T) L.adjust_fire_stacks(-2.5) L.ExtinguishMob() + +//does brute damage and throws or pulls nearby objects at the target +/datum/reagent/blob/dark_matter + name = "Dark Matter" + id = "dark_matter" + description = "will do medium brute damage and pull nearby objects and enemies at the target." + analyzerdescdamage = "Does medium brute damage and pulls nearby objects and creatures at the target." + color = "#61407E" + complementary_color = "#5D7E40" + message = "You feel a thrum as the blob strikes you, and everything flies at you" + +/datum/reagent/blob/dark_matter/reaction_mob(mob/living/M, method=TOUCH, reac_volume, show_message, touch_protection, mob/camera/blob/O) + reac_volume = ..() + reagent_vortex(M, 0, reac_volume) + M.apply_damage(0.3*reac_volume, BRUTE) + +//does brute damage and throws or pushes nearby objects away from the target +/datum/reagent/blob/b_sorium + name = "Sorium" + id = "b_sorium" + description = "will do medium brute damage and throw nearby objects and enemies away from the target." + analyzerdescdamage = "Does medium brute damage and pushes nearby objects and creatures away from the target." + color = "#808000" + complementary_color = "#000080" + message = "The blob slams into you and sends you flying" + +/datum/reagent/blob/b_sorium/reaction_mob(mob/living/M, method=TOUCH, reac_volume, show_message, touch_protection, mob/camera/blob/O) + reac_volume = ..() + reagent_vortex(M, 1, reac_volume) + M.apply_damage(0.3*reac_volume, BRUTE) + +/datum/reagent/blob/proc/reagent_vortex(mob/living/M, setting_type, reac_volume) + if(M && reac_volume) + var/turf/pull = get_turf(M) + var/range_power = Clamp(round(reac_volume/5, 1), 1, 5) + for(var/atom/movable/X in range(range_power,pull)) + if(istype(X, /obj/effect)) + continue + if(isliving(X)) + var/mob/living/L = X + if("blob" in L.faction) //no friendly throwpulling + continue + if(!X.anchored) + var/distance = get_dist(X, pull) + var/moving_power = max(range_power - distance, 1) + if(moving_power > 2) //if the vortex is powerful and we're close, we get thrown + if(setting_type) + var/atom/throw_target = get_edge_target_turf(X, get_dir(X, get_step_away(X, pull))) + var/throw_range = 5 - distance + X.throw_at_fast(throw_target, throw_range, 1) + else + X.throw_at_fast(pull, distance, 1) + else + spawn(0) + if(setting_type) + for(var/i in 0 to moving_power-1) + sleep(2) + if(!step_away(X, pull)) + break + else + for(var/i in 0 to moving_power-1) + sleep(2) + if(!step_towards(X, pull)) + break + + +/datum/reagent/blob/proc/send_message(mob/living/M) + var/totalmessage = message + if(message_living && !issilicon(M)) + totalmessage += message_living + totalmessage += "!" + M << "[totalmessage]" diff --git a/code/modules/reagents/chemistry/reagents/drink_reagents.dm b/code/modules/reagents/chemistry/reagents/drink_reagents.dm index b65e8e692d..b047cda4b5 100644 --- a/code/modules/reagents/chemistry/reagents/drink_reagents.dm +++ b/code/modules/reagents/chemistry/reagents/drink_reagents.dm @@ -5,7 +5,7 @@ ///////////////////////////////////////////////////////////////////////////////////////////////////////// /datum/reagent/consumable/orangejuice - name = "Orange Juice" + name = "Orange juice" id = "orangejuice" description = "Both delicious AND rich in Vitamin C, what more do you need?" color = "#E78108" // rgb: 231, 129, 8 @@ -24,7 +24,7 @@ /datum/reagent/consumable/tomatojuice/on_mob_life(mob/living/M) if(M.getFireLoss() && prob(20)) - M.heal_bodypart_damage(0,1, 0) + M.heal_organ_damage(0,1, 0) . = 1 ..() @@ -41,7 +41,7 @@ ..() /datum/reagent/consumable/carrotjuice - name = "Carrot Juice" + name = "Carrot juice" id = "carrotjuice" description = "It is just like a carrot but without crunching." color = "#973800" // rgb: 151, 56, 0 @@ -64,12 +64,6 @@ description = "A delicious blend of several different kinds of berries." color = "#863333" // rgb: 134, 51, 51 -/datum/reagent/consumable/applejuice - name = "Apple Juice" - id = "applejuice" - description = "The sweet juice of an apple, fit for all ages." - color = "#ECFF56" // rgb: 236, 255, 86 - /datum/reagent/consumable/poisonberryjuice name = "Poison Berry Juice" id = "poisonberryjuice" @@ -100,8 +94,8 @@ color = "#863333" // rgb: 175, 175, 0 /datum/reagent/consumable/banana/on_mob_life(mob/living/M) - if((ishuman(M) && M.job in list("Clown") ) || ismonkey(M)) - M.heal_bodypart_damage(1,1, 0) + if( ( istype(M, /mob/living/carbon/human) && M.job in list("Clown") ) || istype(M, /mob/living/carbon/monkey) ) + M.heal_organ_damage(1,1, 0) . = 1 ..() @@ -111,35 +105,11 @@ description = "Absolutely nothing." /datum/reagent/consumable/nothing/on_mob_life(mob/living/M) - if(ishuman(M) && M.job in list("Mime")) - M.heal_bodypart_damage(1,1, 0) + if(istype(M, /mob/living/carbon/human) && M.job in list("Mime")) + M.heal_organ_damage(1,1, 0) . = 1 ..() -/datum/reagent/consumable/laughter - name = "Laughter" - id = "laughter" - description = "Some say that this is the best medicine, but recent studies have proven that to be untrue." - metabolization_rate = INFINITY - color = "#FF4DD2" - -/datum/reagent/consumable/laughter/on_mob_life(mob/living/carbon/M) - if(!iscarbon(M)) - return - if(!M.silent)//cant laugh if you're mute - M.emote("laugh") - var/laughnum = rand(1,2) - if(M.gender == MALE) - if(laughnum == 1) - playsound(get_turf(M), 'sound/voice/human/manlaugh1.ogg', 50, 1) - if(laughnum == 2) - playsound(get_turf(M), 'sound/voice/human/manlaugh2.ogg', 50, 1) - else if(M.gender == FEMALE) - playsound(get_turf(M), 'sound/voice/human/womanlaugh.ogg', 65, 1) - else//non-binary gender just sounds like a man - playsound(get_turf(M), 'sound/voice/human/manlaugh1.ogg', 50, 1) - ..() - /datum/reagent/consumable/potato_juice name = "Potato Juice" id = "potato" @@ -148,7 +118,7 @@ color = "#302000" // rgb: 48, 32, 0 /datum/reagent/consumable/grapejuice - name = "Grape Juice" + name = "Grape juice" id = "grapejuice" description = "The juice of a bunch of grapes. Guaranteed non-alcoholic." color = "#290029" // dark purple @@ -161,13 +131,13 @@ /datum/reagent/consumable/milk/on_mob_life(mob/living/M) if(M.getBruteLoss() && prob(20)) - M.heal_bodypart_damage(1,0, 0) + M.heal_organ_damage(1,0, 0) . = 1 if(holder.has_reagent("capsaicin")) holder.remove_reagent("capsaicin", 2) var/datum/dna/Mdna = M.has_dna() if(Mdna && Mdna.species && (Mdna.species.id == "plasmaman" || Mdna.species.id == "skeleton")) - M.heal_bodypart_damage(1,0, 0) + M.heal_organ_damage(1,0, 0) . = 1 ..() @@ -179,7 +149,7 @@ /datum/reagent/consumable/soymilk/on_mob_life(mob/living/M) if(M.getBruteLoss() && prob(20)) - M.heal_bodypart_damage(1,0, 0) + M.heal_organ_damage(1,0, 0) . = 1 ..() @@ -191,7 +161,7 @@ /datum/reagent/consumable/cream/on_mob_life(mob/living/M) if(M.getBruteLoss() && prob(20)) - M.heal_bodypart_damage(1,0, 0) + M.heal_organ_damage(1,0, 0) . = 1 ..() @@ -270,7 +240,7 @@ /datum/reagent/consumable/icetea name = "Iced Tea" id = "icetea" - description = "No relation to a certain rap artist/actor." + description = "No relation to a certain rap artist/ actor." color = "#104038" // rgb: 16, 64, 56 nutriment_factor = 0 @@ -417,7 +387,7 @@ M.bodytemperature = min(310, M.bodytemperature + (5 * TEMPERATURE_DAMAGE_COEFFICIENT)) M.Jitter(5) if(M.getBruteLoss() && prob(20)) - M.heal_bodypart_damage(1,0, 0) + M.heal_organ_damage(1,0, 0) ..() . = 1 @@ -435,7 +405,7 @@ M.bodytemperature = min(310, M.bodytemperature + (5 * TEMPERATURE_DAMAGE_COEFFICIENT)) M.Jitter(5) if(M.getBruteLoss() && prob(20)) - M.heal_bodypart_damage(1,0, 0) + M.heal_organ_damage(1,0, 0) ..() . = 1 @@ -522,8 +492,115 @@ description = "Beloved of children and teetotalers." color = "#E6CDFF" -/datum/reagent/consumable/milk/chocolate_milk - name = "Chocolate Milk" - id = "chocolate_milk" - description = "Milk for cool kids." - color = "#7D4E29" +//////////////////////////////////////////////The ten friggen million reagents that get you drunk////////////////////////////////////////////// + +/datum/reagent/consumable/atomicbomb + name = "Atomic Bomb" + id = "atomicbomb" + description = "Nuclear proliferation never tasted so good." + color = "#666300" // rgb: 102, 99, 0 + +/datum/reagent/consumable/atomicbomb/on_mob_life(mob/living/M) + M.set_drugginess(50) + M.confused = max(M.confused+2,0) + M.Dizzy(10) + if (!M.slurring) + M.slurring = 1 + M.slurring += 3 + switch(current_cycle) + if(51 to 200) + M.Sleeping(5, 0) + . = 1 + if(201 to INFINITY) + M.AdjustSleeping(2, 0) + M.adjustToxLoss(2, 0) + . = 1 + ..() + +/datum/reagent/consumable/gargle_blaster + name = "Pan-Galactic Gargle Blaster" + id = "gargleblaster" + description = "Whoah, this stuff looks volatile!" + color = "#664300" // rgb: 102, 67, 0 + +/datum/reagent/consumable/gargle_blaster/on_mob_life(mob/living/M) + M.dizziness +=6 + switch(current_cycle) + if(15 to 45) + if(!M.slurring) + M.slurring = 1 + M.slurring += 3 + if(45 to 55) + if(prob(50)) + M.confused = max(M.confused+3,0) + if(55 to 200) + M.set_drugginess(55) + if(200 to INFINITY) + M.adjustToxLoss(2, 0) + . = 1 + ..() + +/datum/reagent/consumable/neurotoxin + name = "Neurotoxin" + id = "neurotoxin" + description = "A strong neurotoxin that puts the subject into a death-like state." + color = "#2E2E61" // rgb: 46, 46, 97 + +/datum/reagent/consumable/neurotoxin/on_mob_life(mob/living/carbon/M) + M.Weaken(3, 1, 0) + M.dizziness +=6 + switch(current_cycle) + if(15 to 45) + if(!M.slurring) + M.slurring = 1 + M.slurring += 3 + if(45 to 55) + if(prob(50)) + M.confused = max(M.confused+3,0) + if(55 to 200) + M.set_drugginess(55) + if(200 to INFINITY) + M.adjustToxLoss(2, 0) + ..() + . = 1 + +/datum/reagent/consumable/hippies_delight + name = "Hippie's Delight" + id = "hippiesdelight" + description = "You just don't get it maaaan." + color = "#664300" // rgb: 102, 67, 0 + nutriment_factor = 0 + metabolization_rate = 0.2 * REAGENTS_METABOLISM + +/datum/reagent/consumable/hippies_delight/on_mob_life(mob/living/M) + if (!M.slurring) + M.slurring = 1 + switch(current_cycle) + if(1 to 5) + M.Dizzy(10) + M.set_drugginess(30) + if(prob(10)) + M.emote(pick("twitch","giggle")) + if(5 to 10) + M.Jitter(20) + M.Dizzy(20) + M.set_drugginess(45) + if(prob(20)) + M.emote(pick("twitch","giggle")) + if (10 to 200) + M.Jitter(40) + M.Dizzy(40) + M.set_drugginess(60) + if(prob(30)) + M.emote(pick("twitch","giggle")) + if(200 to INFINITY) + M.Jitter(60) + M.Dizzy(60) + M.set_drugginess(75) + if(prob(40)) + M.emote(pick("twitch","giggle")) + if(prob(30)) + M.adjustToxLoss(2, 0) + . = 1 + ..() + diff --git a/code/modules/reagents/chemistry/reagents/drug_reagents.dm b/code/modules/reagents/chemistry/reagents/drug_reagents.dm index 50058e1d23..3a21ff1453 100644 --- a/code/modules/reagents/chemistry/reagents/drug_reagents.dm +++ b/code/modules/reagents/chemistry/reagents/drug_reagents.dm @@ -12,7 +12,7 @@ /datum/reagent/drug/space_drugs/on_mob_life(mob/living/M) M.set_drugginess(15) - if(isturf(M.loc) && !isspaceturf(M.loc)) + if(isturf(M.loc) && !istype(M.loc, /turf/open/space)) if(M.canmove) if(prob(10)) step(M, pick(cardinal)) if(prob(7)) @@ -40,9 +40,7 @@ if(prob(1)) var/smoke_message = pick("You feel relaxed.", "You feel calmed.","You feel alert.","You feel rugged.") M << "[smoke_message]" - M.AdjustParalysis(-1, 0) M.AdjustStunned(-1, 0) - M.AdjustWeakened(-1, 0) M.adjustStaminaLoss(-0.5*REM, 0) ..() . = 1 @@ -173,13 +171,13 @@ /datum/reagent/drug/methamphetamine/overdose_process(mob/living/M) if(M.canmove && !istype(M.loc, /atom/movable)) - for(var/i in 1 to 4) + for(var/i = 0, i < 4, i++) step(M, pick(cardinal)) if(prob(20)) M.emote("laugh") if(prob(33)) M.visible_message("[M]'s hands flip out and flail everywhere!") - var/obj/item/I = M.get_active_held_item() + var/obj/item/I = M.get_active_hand() if(I) M.drop_item() ..() @@ -252,12 +250,12 @@ /datum/reagent/drug/bath_salts/overdose_process(mob/living/M) M.hallucination += 10 if(M.canmove && !istype(M.loc, /atom/movable)) - for(var/i in 1 to 8) + for(var/i = 0, i < 8, i++) step(M, pick(cardinal)) if(prob(20)) M.emote(pick("twitch","drool","moan")) if(prob(33)) - var/obj/item/I = M.get_active_held_item() + var/obj/item/I = M.get_active_hand() if(I) M.drop_item() ..() diff --git a/code/modules/reagents/chemistry/reagents/food_reagents.dm b/code/modules/reagents/chemistry/reagents/food_reagents.dm index 2021ac9803..c10c97cdac 100644 --- a/code/modules/reagents/chemistry/reagents/food_reagents.dm +++ b/code/modules/reagents/chemistry/reagents/food_reagents.dm @@ -27,7 +27,7 @@ /datum/reagent/consumable/nutriment/on_mob_life(mob/living/M) if(prob(50)) - M.heal_bodypart_damage(1,0, 0) + M.heal_organ_damage(1,0, 0) . = 1 if(iscarbon(M)) var/mob/living/carbon/C = M @@ -44,7 +44,7 @@ /datum/reagent/consumable/vitamin/on_mob_life(mob/living/M) if(prob(50)) - M.heal_bodypart_damage(1,1, 0) + M.heal_organ_damage(1,1, 0) . = 1 if(M.satiety < 600) M.satiety += 30 @@ -161,7 +161,7 @@ for(var/mob/living/simple_animal/slime/M in T) M.adjustToxLoss(rand(15,30)) if(reac_volume >= 1) // Make Freezy Foam and anti-fire grenades! - if(isopenturf(T)) + if(istype(T, /turf/open)) var/turf/open/OT = T OT.MakeSlippery(wet_setting=TURF_WET_ICE, min_wet_time=10, wet_time_to_add=reac_volume) // Is less effective in high pressure/high heat capacity environments. More effective in low pressure. OT.air.temperature -= MOLES_CELLSTANDARD*100*reac_volume/OT.air.heat_capacity() // reduces environment temperature by 5K per unit. @@ -173,7 +173,7 @@ color = "#B31008" // rgb: 179, 16, 8 /datum/reagent/consumable/condensedcapsaicin/reaction_mob(mob/living/M, method=TOUCH, reac_volume) - if(!ishuman(M) && !ismonkey(M)) + if(!istype(M, /mob/living/carbon/human) && !istype(M, /mob/living/carbon/monkey)) return var/mob/living/carbon/victim = M @@ -193,7 +193,7 @@ safe_thing = victim.wear_mask //only humans can have helmets and glasses - if(ishuman(victim)) + if(istype(victim, /mob/living/carbon/human)) var/mob/living/carbon/human/H = victim if( H.head ) if ( H.head.flags_cover & MASKCOVERSEYES ) @@ -324,8 +324,8 @@ color = "#FF00FF" // rgb: 255, 0, 255 /datum/reagent/consumable/sprinkles/on_mob_life(mob/living/M) - if(ishuman(M) && M.job in list("Security Officer", "Head of Security", "Detective", "Warden")) - M.heal_bodypart_damage(1,1, 0) + if(istype(M, /mob/living/carbon/human) && M.job in list("Security Officer", "Head of Security", "Detective", "Warden")) + M.heal_organ_damage(1,1, 0) . = 1 ..() @@ -392,7 +392,7 @@ color = "#FFFFFF" // rgb: 0, 0, 0 /datum/reagent/consumable/flour/reaction_turf(turf/T, reac_volume) - if(!isspaceturf(T)) + if(!istype(T, /turf/open/space)) var/obj/effect/decal/cleanable/reagentdecal = new/obj/effect/decal/cleanable/flour(T) reagentdecal.reagents.add_reagent("flour", reac_volume) @@ -457,53 +457,5 @@ /datum/reagent/consumable/honey/on_mob_life(mob/living/M) M.reagents.add_reagent("sugar",3) if(prob(20)) - M.heal_bodypart_damage(3,1) + M.heal_organ_damage(3,1) ..() - - -////Lavaland Flora Reagents//// - - -/datum/reagent/consumable/entpoly - name = "Entropic Polypnium" - id = "entpoly" - description = "An ichor, derived from a certain mushroom, makes for a bad time." - color = "#1d043d" -/datum/reagent/consumable/entpoly/on_mob_life(mob/living/M) - if(current_cycle >= 10) - M.Paralyse(2, 0) - . = 1 - if(prob(20)) - M.losebreath += 4 - M.adjustBrainLoss(2*REM) - M.adjustToxLoss(3*REM,0) - M.adjustStaminaLoss(10*REM,0) - M.blur_eyes(5) - . = TRUE - ..() - -/datum/reagent/consumable/tinlux - name = "Tinea Luxor" - id = "tinlux" - description = "A stimulating ichor which causes luminescent fungi to grow on the skin. " - color = "#b5a213" - -/datum/reagent/consumable/tinlux/reaction_mob(mob/living/M) - M.AddLuminosity(2) - -/datum/reagent/consumable/tinlux/on_mob_delete(mob/living/M) - M.AddLuminosity(-2) - -/datum/reagent/consumable/vitfro - name = "Vitrium Froth" - id = "vitfro" - description = "A bubbly paste that heals wounds of the skin." - color = "#d3a308" - nutriment_factor = 3 * REAGENTS_METABOLISM - -/datum/reagent/consumable/vitfro/on_mob_life(mob/living/M) - if(prob(80)) - M.adjustBruteLoss(-1*REM, 0) - M.adjustFireLoss(-1*REM, 0) - . = TRUE - ..() \ No newline at end of file diff --git a/code/modules/reagents/chemistry/reagents/medicine_reagents.dm b/code/modules/reagents/chemistry/reagents/medicine_reagents.dm index 8944381db3..46bc547221 100644 --- a/code/modules/reagents/chemistry/reagents/medicine_reagents.dm +++ b/code/modules/reagents/chemistry/reagents/medicine_reagents.dm @@ -31,14 +31,13 @@ id = "adminordrazine" description = "It's magic. We don't have to explain it." color = "#C8A5DC" // rgb: 200, 165, 220 - can_synth = 0 /datum/reagent/medicine/adminordrazine/on_mob_life(mob/living/carbon/M) M.reagents.remove_all_type(/datum/reagent/toxin, 5*REM, 0, 1) M.setCloneLoss(0, 0) M.setOxyLoss(0, 0) M.radiation = 0 - M.heal_bodypart_damage(5,5, 0) + M.heal_organ_damage(5,5, 0) M.adjustToxLoss(-5, 0) M.hallucination = 0 M.setBrainLoss(0) @@ -163,7 +162,7 @@ /datum/reagent/medicine/rezadone/on_mob_life(mob/living/M) M.setCloneLoss(0) //Rezadone is almost never used in favor of cryoxadone. Hopefully this will change that. - M.heal_bodypart_damage(1,1, 0) + M.heal_organ_damage(1,1, 0) M.status_flags &= ~DISFIGURED ..() . = 1 @@ -275,7 +274,7 @@ /datum/reagent/medicine/salglu_solution/reaction_mob(mob/living/M, method=TOUCH, reac_volume, show_message = 1) if(ishuman(M) && method == INJECT) var/mob/living/carbon/human/H = M - if(H.dna && !(NOBLOOD in H.dna.species.species_traits)) + if(H.dna && !(NOBLOOD in H.dna.species.specflags)) var/efficiency = (BLOOD_VOLUME_NORMAL-H.blood_volume)/700 + 0.2//The lower the blood of the patient, the better it is as a blood substitute. efficiency = min(0.75,efficiency) //As it's designed for an IV drip, make large injections not as effective as repeated small injections. @@ -307,12 +306,6 @@ if(show_message) M << "Your stomach agonizingly cramps!" else - var/mob/living/carbon/C = M - for(var/s in C.surgeries) - var/datum/surgery/S = s - S.success_multiplier = max(0.10, S.success_multiplier) - // +10% success propability on each step, useful while operating in less-than-perfect conditions - if(show_message) M << "You feel your wounds fade away to nothing!" //It's a painkiller, after all ..() @@ -331,9 +324,7 @@ color = "#FFEBEB" /datum/reagent/medicine/synthflesh/reaction_mob(mob/living/M, method=TOUCH, reac_volume,show_message = 1) - if(iscarbon(M)) - if (M.stat == DEAD) - show_message = 0 + if(iscarbon(M) && M.stat != DEAD) if(method in list(PATCH, TOUCH)) M.adjustBruteLoss(-1.25 * reac_volume) M.adjustFireLoss(-1.25 * reac_volume) @@ -581,7 +572,7 @@ /datum/reagent/medicine/morphine/overdose_process(mob/living/M) if(prob(33)) - var/obj/item/I = M.get_active_held_item() + var/obj/item/I = M.get_active_hand() if(I) M.drop_item() M.Dizzy(2) @@ -590,7 +581,7 @@ /datum/reagent/medicine/morphine/addiction_act_stage1(mob/living/M) if(prob(33)) - var/obj/item/I = M.get_active_held_item() + var/obj/item/I = M.get_active_hand() if(I) M.drop_item() M.Dizzy(2) @@ -599,7 +590,7 @@ /datum/reagent/medicine/morphine/addiction_act_stage2(mob/living/M) if(prob(33)) - var/obj/item/I = M.get_active_held_item() + var/obj/item/I = M.get_active_hand() if(I) M.drop_item() M.adjustToxLoss(1*REM, 0) @@ -610,7 +601,7 @@ /datum/reagent/medicine/morphine/addiction_act_stage3(mob/living/M) if(prob(33)) - var/obj/item/I = M.get_active_held_item() + var/obj/item/I = M.get_active_hand() if(I) M.drop_item() M.adjustToxLoss(2*REM, 0) @@ -621,7 +612,7 @@ /datum/reagent/medicine/morphine/addiction_act_stage4(mob/living/M) if(prob(33)) - var/obj/item/I = M.get_active_held_item() + var/obj/item/I = M.get_active_hand() if(I) M.drop_item() M.adjustToxLoss(3*REM, 0) @@ -883,7 +874,7 @@ ..() //Trek Chems, used primarily by medibots. Only heals a specific damage type, but is very efficient. -/datum/reagent/medicine/bicaridine +datum/reagent/medicine/bicaridine name = "Bicaridine" id = "bicaridine" description = "Restores bruising. Overdose causes it instead." @@ -891,17 +882,17 @@ color = "#C8A5DC" overdose_threshold = 30 -/datum/reagent/medicine/bicaridine/on_mob_life(mob/living/M) +datum/reagent/medicine/bicaridine/on_mob_life(mob/living/M) M.adjustBruteLoss(-2*REM, 0) ..() . = 1 -/datum/reagent/medicine/bicaridine/overdose_process(mob/living/M) +datum/reagent/medicine/bicaridine/overdose_process(mob/living/M) M.adjustBruteLoss(4*REM, 0) ..() . = 1 -/datum/reagent/medicine/dexalin +datum/reagent/medicine/dexalin name = "Dexalin" id = "dexalin" description = "Restores oxygen loss. Overdose causes it instead." @@ -909,17 +900,17 @@ color = "#C8A5DC" overdose_threshold = 30 -/datum/reagent/medicine/dexalin/on_mob_life(mob/living/M) +datum/reagent/medicine/dexalin/on_mob_life(mob/living/M) M.adjustOxyLoss(-2*REM, 0) ..() . = 1 -/datum/reagent/medicine/dexalin/overdose_process(mob/living/M) +datum/reagent/medicine/dexalin/overdose_process(mob/living/M) M.adjustOxyLoss(4*REM, 0) ..() . = 1 -/datum/reagent/medicine/kelotane +datum/reagent/medicine/kelotane name = "Kelotane" id = "kelotane" description = "Restores fire damage. Overdose causes it instead." @@ -927,17 +918,17 @@ color = "#C8A5DC" overdose_threshold = 30 -/datum/reagent/medicine/kelotane/on_mob_life(mob/living/M) +datum/reagent/medicine/kelotane/on_mob_life(mob/living/M) M.adjustFireLoss(-2*REM, 0) ..() . = 1 -/datum/reagent/medicine/kelotane/overdose_process(mob/living/M) +datum/reagent/medicine/kelotane/overdose_process(mob/living/M) M.adjustFireLoss(4*REM, 0) ..() . = 1 -/datum/reagent/medicine/antitoxin +datum/reagent/medicine/antitoxin name = "Anti-Toxin" id = "antitoxin" description = "Heals toxin damage and removes toxins in the bloodstream. Overdose causes toxin damage." @@ -945,7 +936,7 @@ color = "#C8A5DC" overdose_threshold = 30 -/datum/reagent/medicine/antitoxin/on_mob_life(mob/living/M) +datum/reagent/medicine/antitoxin/on_mob_life(mob/living/M) M.adjustToxLoss(-2*REM, 0) for(var/datum/reagent/toxin/R in M.reagents.reagent_list) if(R != src) @@ -953,24 +944,24 @@ ..() . = 1 -/datum/reagent/medicine/antitoxin/overdose_process(mob/living/M) +datum/reagent/medicine/antitoxin/overdose_process(mob/living/M) M.adjustToxLoss(4*REM, 0) // End result is 2 toxin loss taken, because it heals 2 and then removes 4. ..() . = 1 -/datum/reagent/medicine/inaprovaline +datum/reagent/medicine/inaprovaline name = "Inaprovaline" id = "inaprovaline" description = "Stabilizes the breathing of patients. Good for those in critical condition." reagent_state = LIQUID color = "#C8A5DC" -/datum/reagent/medicine/inaprovaline/on_mob_life(mob/living/M) +datum/reagent/medicine/inaprovaline/on_mob_life(mob/living/M) if(M.losebreath >= 5) M.losebreath -= 5 ..() -/datum/reagent/medicine/tricordrazine +datum/reagent/medicine/tricordrazine name = "Tricordrazine" id = "tricordrazine" description = "Has a high chance to heal all types of damage. Overdose instead causes it." @@ -978,7 +969,7 @@ color = "#C8A5DC" overdose_threshold = 30 -/datum/reagent/medicine/tricordrazine/on_mob_life(mob/living/M) +datum/reagent/medicine/tricordrazine/on_mob_life(mob/living/M) if(prob(80)) M.adjustBruteLoss(-1*REM, 0) M.adjustFireLoss(-1*REM, 0) @@ -987,7 +978,7 @@ . = 1 ..() -/datum/reagent/medicine/tricordrazine/overdose_process(mob/living/M) +datum/reagent/medicine/tricordrazine/overdose_process(mob/living/M) M.adjustToxLoss(2*REM, 0) M.adjustOxyLoss(2*REM, 0) M.adjustBruteLoss(2*REM, 0) @@ -995,14 +986,14 @@ ..() . = 1 -/datum/reagent/medicine/syndicate_nanites //Used exclusively by Syndicate medical cyborgs +datum/reagent/medicine/syndicate_nanites //Used exclusively by Syndicate medical cyborgs name = "Restorative Nanites" id = "syndicate_nanites" description = "Miniature medical robots that swiftly restore bodily damage." reagent_state = SOLID color = "#555555" -/datum/reagent/medicine/syndicate_nanites/on_mob_life(mob/living/M) +datum/reagent/medicine/syndicate_nanites/on_mob_life(mob/living/M) M.adjustBruteLoss(-5*REM, 0) //A ton of healing - this is a 50 telecrystal investment. M.adjustFireLoss(-5*REM, 0) M.adjustOxyLoss(-15, 0) @@ -1060,26 +1051,6 @@ ..() . = 1 -/datum/reagent/medicine/miningnanites - name = "Nanites" - id = "miningnanites" - description = "It's mining magic. We don't have to explain it." - color = "#C8A5DC" // rgb: 200, 165, 220 - overdose_threshold = 3 //To prevent people stacking massive amounts of a very strong healing reagent - can_synth = 0 - -/datum/reagent/medicine/miningnanites/on_mob_life(mob/living/M) - M.heal_bodypart_damage(5,5, 0) - ..() - . = 1 - -/datum/reagent/medicine/miningnanites/overdose_process(mob/living/M) - M.adjustBruteLoss(3*REM, 0) - M.adjustFireLoss(3*REM, 0) - M.adjustToxLoss(3*REM, 0) - ..() - . = 1 - //used for changeling's adrenaline power /datum/reagent/medicine/changelingAdrenaline name = "Adrenaline" diff --git a/code/modules/reagents/chemistry/reagents/other_reagents.dm b/code/modules/reagents/chemistry/reagents/other_reagents.dm index 13e8ca23c7..2c3366a401 100644 --- a/code/modules/reagents/chemistry/reagents/other_reagents.dm +++ b/code/modules/reagents/chemistry/reagents/other_reagents.dm @@ -119,23 +119,22 @@ M.apply_water() var/obj/effect/hotspot/hotspot = (locate(/obj/effect/hotspot) in T) - if(hotspot && !isspaceturf(T)) + if(hotspot && !istype(T, /turf/open/space)) if(T.air) var/datum/gas_mixture/G = T.air G.temperature = max(min(G.temperature-(CT*1000),G.temperature/CT),0) G.react() qdel(hotspot) - var/obj/effect/acid/A = (locate(/obj/effect/acid) in T) - if(A) - A.acid_level = max(A.acid_level - reac_volume*50, 0) + return /* * Water reaction to an object */ /datum/reagent/water/reaction_obj(obj/O, reac_volume) - O.extinguish() - O.acid_level = 0 + if(istype(O)) + O.extinguish() + // Monkey cube if(istype(O,/obj/item/weapon/reagent_containers/food/snacks/monkeycube)) var/obj/item/weapon/reagent_containers/food/snacks/monkeycube/cube = O @@ -176,30 +175,36 @@ if(data >= 30) // 12 units, 54 seconds @ metabolism 0.4 units & tick rate 1.8 sec if(!M.stuttering) M.stuttering = 1 - M.stuttering = min(M.stuttering+4, 10) + M.stuttering += 4 M.Dizzy(5) if(iscultist(M) && prob(5)) M.say(pick("Av'te Nar'sie","Pa'lid Mors","INO INO ORA ANA","SAT ANA!","Daim'niodeis Arc'iai Le'eones","R'ge Na'sie","Diabo us Vo'iscum","Eld' Mon Nobis")) - else if(is_servant_of_ratvar(M) && prob(8)) + else if(is_servant_of_ratvar(M) && prob(5)) switch(pick("speech", "message", "emote")) if("speech") - clockwork_say(M, "...[text2ratvar(pick("Engine... your light grows dark...", "Where are you, master?", "He lies rusting in Error...", "Purge all untruths and... and... something..."))]") + M.say("...[pick("Ratvar... lbhe yvtug tebjf qnex", "Jurer ner lbh, znfgre?", "Ur yvrf ehfgvat va Reebe", "Chetr nyy hagehguf naq... naq... fbzrguvat")]...") if("message") - M << "[pick("Ratvar's illumination of your mind has begun to flicker", "He lies rusting in Reebe, derelict and forgotten. And there he shall stay", \ - "You can't save him. Nothing can save him now", "It seems that Nar-Sie will triumph after all")]." + M << "[pick("Ratvar's illumination of your mind has begun to flicker.", "He lies rusting in Reebe, derelict and forgotten. And there he shall stay.", \ + "You can't save him. Nothing can save him now.", "It seems that Nar-Sie will triumph after all.")]" if("emote") - M.visible_message("[M] [pick("whimpers quietly", "shivers as though cold", "glances around in paranoia")].") + M.visible_message("[M] [pick("whimpers quietly", "shivers as though cold", "glances around in paranoia")]") if(data >= 75) // 30 units, 135 seconds - if(iscultist(M) || is_servant_of_ratvar(M)) + if (!M.confused) + M.confused = 1 + M.confused += 3 + if(iscultist(M) || is_handofgod_cultist(M) || is_handofgod_prophet(M) || is_servant_of_ratvar(M)) if(iscultist(M)) ticker.mode.remove_cultist(M.mind, 1, 1) + else if(is_handofgod_cultist(M) || is_handofgod_prophet(M)) + ticker.mode.remove_hog_follower(M.mind) else if(is_servant_of_ratvar(M)) remove_servant_of_ratvar(M) - holder.remove_reagent(id, volume) // maybe this is a little too perfect and a max() cap on the statuses would be better?? + holder.remove_reagent(src.id, src.volume) // maybe this is a little too perfect and a max() cap on the statuses would be better?? M.jitteriness = 0 M.stuttering = 0 + M.confused = 0 return - holder.remove_reagent(id, 0.4) //fixed consumption to prevent balancing going out of whack + holder.remove_reagent(src.id, 0.4) //fixed consumption to prevent balancing going out of whack /datum/reagent/water/holywater/reaction_turf(turf/T, reac_volume) ..() @@ -272,7 +277,7 @@ overdose_threshold = 11 //Slightly more than one un-nozzled spraybottle. /datum/reagent/spraytan/reaction_mob(mob/living/M, method=TOUCH, reac_volume, show_message = 1) - if(ishuman(M)) + if(istype(M, /mob/living/carbon/human)) if(method == PATCH || method == VAPOR) var/mob/living/carbon/human/N = M if(N.dna.species.id == "human") @@ -300,7 +305,7 @@ if ("albino") N.skin_tone = "caucasian1" - if(MUTCOLORS in N.dna.species.species_traits) //take current alien color and darken it slightly + if(MUTCOLORS in N.dna.species.specflags) //take current alien color and darken it slightly var/newcolor = "" var/len = length(N.dna.features["mcolor"]) for(var/i=1, i<=len, i+=1) @@ -337,178 +342,61 @@ /datum/reagent/spraytan/overdose_process(mob/living/M) metabolization_rate = 1 * REAGENTS_METABOLISM - if(ishuman(M)) + if(istype(M, /mob/living/carbon/human)) var/mob/living/carbon/human/N = M if(N.dna.species.id == "human") // If they're human, turn em to the "orange" race, and give em spiky black hair N.skin_tone = "orange" N.hair_style = "Spiky" N.hair_color = "000" - if(MUTCOLORS in N.dna.species.species_traits) //Aliens with custom colors simply get turned orange + if(MUTCOLORS in N.dna.species.specflags) //Aliens with custom colors simply get turned orange N.dna.features["mcolor"] = "f80" N.regenerate_icons() if(prob(7)) if(N.w_uniform) - M.visible_message(pick("[M]'s collar pops up without warning.
    ", "[M] flexes [M.p_their()] arms.")) + M.visible_message(pick("[M]'s collar pops up without warning.
    ", "[M] flexes their arms.")) else - M.visible_message("[M] [M.p_their()] their arms.") + M.visible_message("[M] flexes their arms.") if(prob(10)) M.say(pick("Check these sweet biceps bro!", "Deal with it.", "CHUG! CHUG! CHUG! CHUG!", "Winning!", "NERDS!", "My name is John and I hate every single one of you.")) ..() return -/datum/reagent/stableslimetoxin - name = "Stable Mutation Toxin" - id = "stablemutationtoxin" - description = "A humanizing toxin produced by slimes." +/datum/reagent/slimetoxin + name = "Mutation Toxin" + id = "mutationtoxin" + description = "A corruptive toxin produced by slimes." + color = "#13BC5E" // rgb: 19, 188, 94 + +/datum/reagent/unstableslimetoxin + name = "Unstable Mutation Toxin" + id = "unstablemutationtoxin" + description = "An unstable and unpredictable corruptive toxin produced by slimes." color = "#5EFF3B" //RGB: 94, 255, 59 metabolization_rate = INFINITY //So it instantly removes all of itself - var/datum/species/race = /datum/species/human - var/mutationtext = "The pain subsides. You feel... human." -/datum/reagent/stableslimetoxin/on_mob_life(mob/living/carbon/human/H) +/datum/reagent/unstableslimetoxin/on_mob_life(mob/living/carbon/human/H) ..() H << "You crumple in agony as your flesh wildly morphs into new forms!" - H.visible_message("[H] falls to the ground and screams as [H.p_their()] skin bubbles and froths!") //'froths' sounds painful when used with SKIN. + H.visible_message("[H] falls to the ground and screams as their skin bubbles and froths!") //'froths' sounds painful when used with SKIN. H.Weaken(3, 0) spawn(30) if(!H || qdeleted(H)) return - - var/current_species = H.dna.species.type - var/datum/species/mutation = race - if(mutation && mutation != current_species) - H << mutationtext + var/list/possible_morphs = list() + for(var/type in subtypesof(/datum/species)) + var/datum/species/S = type + if(initial(S.blacklisted)) + continue + possible_morphs += S + var/datum/species/mutation = pick(possible_morphs) + if(prob(90) && mutation) + H << "The pain subsides. You feel... different." H.set_species(mutation) else H << "The pain vanishes suddenly. You feel no different." return 1 -/datum/reagent/stableslimetoxin/classic //The one from plasma on green slimes - name = "Mutation Toxin" - id = "mutationtoxin" - description = "A corruptive toxin produced by slimes." - color = "#13BC5E" // rgb: 19, 188, 94 - race = /datum/species/jelly/slime - mutationtext = "The pain subsides. Your whole body feels like slime." - -/datum/reagent/stableslimetoxin/lizard - name = "Lizard Mutation Toxin" - id = "lizardmutationtoxin" - description = "A lizarding toxin produced by slimes." - color = "#5EFF3B" //RGB: 94, 255, 59 - race = /datum/species/lizard - mutationtext = "The pain subsides. You feel... scaly." - -/datum/reagent/stableslimetoxin/fly - name = "Fly Mutation Toxin" - id = "flymutationtoxin" - description = "An insectifying toxin produced by slimes." - color = "#5EFF3B" //RGB: 94, 255, 59 - race = /datum/species/fly - mutationtext = "The pain subsides. You feel... buzzy." - -/datum/reagent/stableslimetoxin/pod - name = "Podperson Mutation Toxin" - id = "podmutationtoxin" - description = "A vegetalizing toxin produced by slimes." - color = "#5EFF3B" //RGB: 94, 255, 59 - race = /datum/species/pod - mutationtext = "The pain subsides. You feel... plantlike." - -/datum/reagent/stableslimetoxin/jelly - name = "Imperfect Mutation Toxin" - id = "jellymutationtoxin" - description = "An jellyfying toxin produced by slimes." - color = "#5EFF3B" //RGB: 94, 255, 59 - race = /datum/species/jelly - mutationtext = "The pain subsides. You feel... wobbly." - -/datum/reagent/stableslimetoxin/golem - name = "Golem Mutation Toxin" - id = "golemmutationtoxin" - description = "A crystal toxin produced by slimes." - color = "#5EFF3B" //RGB: 94, 255, 59 - race = /datum/species/golem/random - mutationtext = "The pain subsides. You feel... rocky." - -/datum/reagent/stableslimetoxin/abductor - name = "Abductor Mutation Toxin" - id = "abductormutationtoxin" - description = "An alien toxin produced by slimes." - color = "#5EFF3B" //RGB: 94, 255, 59 - race = /datum/species/abductor - mutationtext = "The pain subsides. You feel... alien." - -/datum/reagent/stableslimetoxin/android - name = "Android Mutation Toxin" - id = "androidmutationtoxin" - description = "A robotic toxin produced by slimes." - color = "#5EFF3B" //RGB: 94, 255, 59 - race = /datum/species/android - mutationtext = "The pain subsides. You feel... artificial." - - -//BLACKLISTED RACES -/datum/reagent/stableslimetoxin/skeleton - name = "Skeleton Mutation Toxin" - id = "skeletonmutationtoxin" - description = "A scary toxin produced by slimes." - color = "#5EFF3B" //RGB: 94, 255, 59 - race = /datum/species/skeleton - mutationtext = "The pain subsides. You feel... spooky." - -/datum/reagent/stableslimetoxin/zombie - name = "Zombie Mutation Toxin" - id = "zombiemutationtoxin" - description = "An undead toxin produced by slimes." - color = "#5EFF3B" //RGB: 94, 255, 59 - race = /datum/species/zombie //Not the infectious kind. The days of xenobio zombie outbreaks are long past. - mutationtext = "The pain subsides. You feel... undead." - -/datum/reagent/stableslimetoxin/ash - name = "Ash Mutation Toxin" - id = "ashmutationtoxin" - description = "An ashen toxin produced by slimes." - color = "#5EFF3B" //RGB: 94, 255, 59 - race = /datum/species/lizard/ashwalker - mutationtext = "The pain subsides. You feel... savage." - - -//DANGEROUS RACES -/datum/reagent/stableslimetoxin/shadow - name = "Shadow Mutation Toxin" - id = "shadowmutationtoxin" - description = "A dark toxin produced by slimes." - color = "#5EFF3B" //RGB: 94, 255, 59 - race = /datum/species/shadow - mutationtext = "The pain subsides. You feel... darker." - -/datum/reagent/stableslimetoxin/plasma - name = "Plasma Mutation Toxin" - id = "plasmamutationtoxin" - description = "A plasma-based toxin produced by slimes." - color = "#5EFF3B" //RGB: 94, 255, 59 - race = /datum/species/plasmaman - mutationtext = "The pain subsides. You feel... flammable." - -/datum/reagent/stableslimetoxin/unstable //PSYCH - name = "Unstable Mutation Toxin" - id = "unstablemutationtoxin" - description = "An unstable and unpredictable corruptive toxin produced by slimes." - color = "#5EFF3B" //RGB: 94, 255, 59 - mutationtext = "The pain subsides. You feel... different." - -/datum/reagent/stableslimetoxin/unstable/on_mob_life(mob/living/carbon/human/H) - var/list/possible_morphs = list() - for(var/type in subtypesof(/datum/species)) - var/datum/species/S = type - if(initial(S.blacklisted)) - continue - possible_morphs += S - race = pick(possible_morphs) - ..() - /datum/reagent/mulligan name = "Mulligan Toxin" id = "mulligan" @@ -537,7 +425,6 @@ id = "gluttonytoxin" description = "An advanced corruptive toxin produced by something terrible." color = "#5EFF3B" //RGB: 94, 255, 59 - can_synth = 0 /datum/reagent/gluttonytoxin/reaction_mob(mob/M, method=TOUCH, reac_volume) M.ForceContractDisease(new /datum/disease/transformation/morph(0)) @@ -558,7 +445,7 @@ /datum/reagent/oxygen name = "Oxygen" id = "oxygen" - description = "A colorless, odorless gas. Grows on trees but is still pretty valuable." + description = "A colorless, odorless gas." reagent_state = GAS color = "#808080" // rgb: 128, 128, 128 @@ -575,14 +462,14 @@ /datum/reagent/copper name = "Copper" id = "copper" - description = "A highly ductile metal. Things made out of copper aren't very durable, but it makes a decent material for electrical wiring." + description = "A highly ductile metal." reagent_state = SOLID color = "#6E3B08" // rgb: 110, 59, 8 /datum/reagent/nitrogen name = "Nitrogen" id = "nitrogen" - description = "A colorless, odorless, tasteless gas. A simple asphyxiant that can silently displace vital oxygen." + description = "A colorless, odorless, tasteless gas." reagent_state = GAS color = "#808080" // rgb: 128, 128, 128 @@ -613,11 +500,11 @@ /datum/reagent/mercury name = "Mercury" id = "mercury" - description = "A curious metal that's a liquid at room temperature. Neurodegenerative and very bad for the mind." + description = "A chemical element." color = "#484848" // rgb: 72, 72, 72 /datum/reagent/mercury/on_mob_life(mob/living/M) - if(M.canmove && isspaceturf(M.loc)) + if(M.canmove && istype(M.loc, /turf/open/space)) step(M, pick(cardinal)) if(prob(5)) M.emote(pick("twitch","drool","moan")) @@ -627,19 +514,19 @@ /datum/reagent/sulfur name = "Sulfur" id = "sulfur" - description = "A sickly yellow solid mostly known for its nasty smell. It's actually much more helpful than it looks in biochemisty." + description = "A chemical element." reagent_state = SOLID color = "#BF8C00" // rgb: 191, 140, 0 /datum/reagent/carbon name = "Carbon" id = "carbon" - description = "A crumbly black solid that, while unexciting on an physical level, forms the base of all known life. Kind of a big deal." + description = "A chemical element." reagent_state = SOLID color = "#1C1300" // rgb: 30, 20, 0 /datum/reagent/carbon/reaction_turf(turf/T, reac_volume) - if(!isspaceturf(T)) + if(!istype(T, /turf/open/space)) var/obj/effect/decal/cleanable/dirt/D = locate() in T.contents if(!D) new /obj/effect/decal/cleanable/dirt(T) @@ -647,19 +534,19 @@ /datum/reagent/chlorine name = "Chlorine" id = "chlorine" - description = "A pale yellow gas that's well known as an oxidizer. While it forms many harmless molecules in its elemental form it is far from harmless." + description = "A chemical element." reagent_state = GAS color = "#808080" // rgb: 128, 128, 128 /datum/reagent/chlorine/on_mob_life(mob/living/M) - M.take_bodypart_damage(1*REM, 0, 0) + M.take_organ_damage(1*REM, 0, 0) . = 1 ..() /datum/reagent/fluorine name = "Fluorine" id = "fluorine" - description = "A comically-reactive chemical element. The universe does not want this stuff to exist in this form in the slightest." + description = "A highly-reactive chemical element." reagent_state = GAS color = "#808080" // rgb: 128, 128, 128 @@ -671,26 +558,26 @@ /datum/reagent/sodium name = "Sodium" id = "sodium" - description = "A soft silver metal that can easily be cut with a knife. It's not salt just yet, so refrain from putting in on your chips." + description = "A chemical element." reagent_state = SOLID color = "#808080" // rgb: 128, 128, 128 /datum/reagent/phosphorus name = "Phosphorus" id = "phosphorus" - description = "A ruddy red powder that burns readily. Though it comes in many colors, the general theme is always the same." + description = "A chemical element." reagent_state = SOLID color = "#832828" // rgb: 131, 40, 40 /datum/reagent/lithium name = "Lithium" id = "lithium" - description = "A silver metal, it's claim to fame is its remarkably low density. Using it is a bit too effective in calming oneself down." + description = "A chemical element." reagent_state = SOLID color = "#808080" // rgb: 128, 128, 128 /datum/reagent/lithium/on_mob_life(mob/living/M) - if(M.canmove && isspaceturf(M.loc)) + if(M.canmove && istype(M.loc, /turf/open/space)) step(M, pick(cardinal)) if(prob(5)) M.emote(pick("twitch","drool","moan")) @@ -715,27 +602,18 @@ /datum/reagent/radium/reaction_turf(turf/T, reac_volume) if(reac_volume >= 3) - if(!isspaceturf(T)) + if(!istype(T, /turf/open/space)) var/obj/effect/decal/cleanable/greenglow/GG = locate() in T.contents if(!GG) GG = new/obj/effect/decal/cleanable/greenglow(T) GG.reagents.add_reagent("radium", reac_volume) -/datum/reagent/space_cleaner/sterilizine +/datum/reagent/sterilizine name = "Sterilizine" id = "sterilizine" description = "Sterilizes wounds in preparation for surgery." color = "#C8A5DC" // rgb: 200, 165, 220 -/datum/reagent/space_cleaner/sterilizine/reaction_mob(mob/living/M, method=TOUCH, reac_volume) - if(iscarbon(M) && (method in list(TOUCH, VAPOR, PATCH))) - var/mob/living/carbon/C = M - for(var/s in C.surgeries) - var/datum/surgery/S = s - S.success_multiplier = max(0.20, S.success_multiplier) - // +20% success propability on each step, useful while operating in less-than-perfect conditions - ..() - /datum/reagent/iron name = "Iron" id = "iron" @@ -752,7 +630,7 @@ ..() /datum/reagent/iron/reaction_mob(mob/living/M, method=TOUCH, reac_volume) - if(!isliving(M)) + if(!istype(M, /mob/living)) return if(M.has_bane(BANE_IRON)) //If the target is weak to cold iron, then poison them. if(holder && holder.chem_temp < 100) // COLD iron. @@ -774,7 +652,7 @@ color = "#D0D0D0" // rgb: 208, 208, 208 /datum/reagent/silver/reaction_mob(mob/living/M, method=TOUCH, reac_volume) - if(!isliving(M)) + if(!istype(M, /mob/living)) return if(M.has_bane(BANE_SILVER)) M.reagents.add_reagent("toxin", reac_volume) @@ -793,7 +671,7 @@ /datum/reagent/uranium/reaction_turf(turf/T, reac_volume) if(reac_volume >= 3) - if(!isspaceturf(T)) + if(!istype(T, /turf/open/space)) var/obj/effect/decal/cleanable/greenglow/GG = locate() in T.contents if(!GG) GG = new/obj/effect/decal/cleanable/greenglow(T) @@ -820,7 +698,7 @@ color = "#660000" // rgb: 102, 0, 0 /datum/reagent/fuel/reaction_mob(mob/living/M, method=TOUCH, reac_volume)//Splashing people with welding fuel to make them easy to ignite! - if(!isliving(M)) + if(!istype(M, /mob/living)) return if(method == TOUCH || method == VAPOR) M.adjust_fire_stacks(reac_volume / 10) @@ -843,12 +721,10 @@ qdel(O) else if(O) - O.remove_atom_colour(WASHABLE_COLOUR_PRIORITY) O.clean_blood() /datum/reagent/space_cleaner/reaction_turf(turf/T, reac_volume) if(reac_volume >= 1) - T.remove_atom_colour(WASHABLE_COLOUR_PRIORITY) T.clean_blood() for(var/obj/effect/decal/cleanable/C in T) qdel(C) @@ -858,16 +734,17 @@ /datum/reagent/space_cleaner/reaction_mob(mob/M, method=TOUCH, reac_volume) if(method == TOUCH || method == VAPOR) - M.remove_atom_colour(WASHABLE_COLOUR_PRIORITY) if(iscarbon(M)) var/mob/living/carbon/C = M - if(ishuman(M)) + if(istype(M,/mob/living/carbon/human)) var/mob/living/carbon/human/H = M if(H.lip_style) H.lip_style = null H.update_body() - for(var/obj/item/I in C.held_items) - I.clean_blood() + if(C.r_hand) + C.r_hand.clean_blood() + if(C.l_hand) + C.l_hand.clean_blood() if(C.wear_mask) if(C.wear_mask.clean_blood()) C.update_inv_wear_mask() @@ -924,7 +801,6 @@ id = "nanomachines" description = "Microscopic construction robots." color = "#535E66" // rgb: 83, 94, 102 - can_synth = 0 /datum/reagent/nanites/reaction_mob(mob/M, method=TOUCH, reac_volume, show_message = 1, touch_protection = 0) if(method==PATCH || method==INGEST || method==INJECT || (method == VAPOR && prob(min(reac_volume,100)*(1 - touch_protection)))) @@ -935,7 +811,6 @@ id = "xenomicrobes" description = "Microbes with an entirely alien cellular structure." color = "#535E66" // rgb: 83, 94, 102 - can_synth = 0 /datum/reagent/xenomicrobes/reaction_mob(mob/M, method=TOUCH, reac_volume, show_message = 1, touch_protection = 0) if(method==PATCH || method==INGEST || method==INJECT || (method == VAPOR && prob(min(reac_volume,100)*(1 - touch_protection)))) @@ -981,7 +856,7 @@ name = "Carbon Dioxide" id = "co2" reagent_state = GAS - description = "A gas commonly produced by burning carbon fuels. You're constantly producing this in your lungs." + description = "A gas commonly produced by burning carbon fuels." color = "#B0B0B0" // rgb : 192, 192, 192 /datum/reagent/carbondioxide/reaction_obj(obj/O, reac_volume) @@ -994,23 +869,6 @@ T.atmos_spawn_air("co2=[reac_volume/5];TEMP=[T20C]") return -/datum/reagent/nitrous_oxide - name = "Nitrous Oxide" - id = "nitrous_oxide" - description = "A potent oxidizer used as fuel in rockets and as an anaesthetic during surgery." - reagent_state = LIQUID - color = "#808080" - -/datum/reagent/nitrous_oxide/reaction_obj(obj/O, reac_volume) - if((!O) || (!reac_volume)) - return 0 - O.atmos_spawn_air("n2o=[reac_volume/5];TEMP=[T20C]") - -/datum/reagent/nitrous_oxide/reaction_turf(turf/open/T, reac_volume) - if(istype(T)) - T.atmos_spawn_air("n2o=[reac_volume/5];TEMP=[T20C]") - return - /////////////////////////Coloured Crayon Powder//////////////////////////// @@ -1143,14 +1001,21 @@ /datum/reagent/iodine name = "Iodine" id = "iodine" - description = "Commonly added to table salt as a nutrient. On its own it tastes far less pleasing." + description = "A slippery solution." + reagent_state = LIQUID + color = "#C8A5DC" + +/datum/reagent/fluorine + name = "Fluorine" + id = "fluorine" + description = "A slippery solution." reagent_state = LIQUID color = "#C8A5DC" /datum/reagent/carpet name = "Carpet" id = "carpet" - description = "For those that need a more creative way to roll out a red carpet." + description = "A slippery solution." reagent_state = LIQUID color = "#C8A5DC" @@ -1164,35 +1029,35 @@ /datum/reagent/bromine name = "Bromine" id = "bromine" - description = "A brownish liquid that's highly reactive. Useful for stopping free radicals, but not intended for human consumption." + description = "A slippery solution." reagent_state = LIQUID color = "#C8A5DC" /datum/reagent/phenol name = "Phenol" id = "phenol" - description = "An aromatic ring of carbon with a hydroxyl group. A useful precursor to some medicines, but has no healing properties on its own." + description = "Used for certain medical recipes." reagent_state = LIQUID color = "#C8A5DC" /datum/reagent/ash name = "Ash" id = "ash" - description = "Supposedly pheonixes rise from these, but you've never seen it." + description = "Basic ingredient in a couple of recipes." reagent_state = LIQUID color = "#C8A5DC" /datum/reagent/acetone name = "Acetone" id = "acetone" - description = "A slick, slightly carcinogenic liquid. Has a multitude of mundane uses in everyday life." + description = "Common ingredient in other recipes." reagent_state = LIQUID color = "#C8A5DC" /datum/reagent/colorful_reagent name = "Colorful Reagent" id = "colorful_reagent" - description = "Thoroughly sample the rainbow." + description = "A solution." reagent_state = LIQUID color = "#C8A5DC" var/list/random_color_list = list("#00aedb","#a200ff","#f47835","#d41243","#d11141","#00b159","#00aedb","#f37735","#ffc425","#008744","#0057e7","#d62d20","#ffa700") @@ -1200,29 +1065,29 @@ /datum/reagent/colorful_reagent/on_mob_life(mob/living/M) if(M && isliving(M)) - M.add_atom_colour(pick(random_color_list), WASHABLE_COLOUR_PRIORITY) + M.color = pick(random_color_list) ..() return /datum/reagent/colorful_reagent/reaction_mob(mob/living/M, reac_volume) if(M && isliving(M)) - M.add_atom_colour(pick(random_color_list), WASHABLE_COLOUR_PRIORITY) + M.color = pick(random_color_list) ..() /datum/reagent/colorful_reagent/reaction_obj(obj/O, reac_volume) if(O) - O.add_atom_colour(pick(random_color_list), WASHABLE_COLOUR_PRIORITY) + O.color = pick(random_color_list) ..() /datum/reagent/colorful_reagent/reaction_turf(turf/T, reac_volume) if(T) - T.add_atom_colour(pick(random_color_list), WASHABLE_COLOUR_PRIORITY) + T.color = pick(random_color_list) ..() /datum/reagent/hair_dye name = "Quantum Hair Dye" id = "hair_dye" - description = "Has a high chance of making you look like a mad scientist." + description = "A solution." reagent_state = LIQUID color = "#C8A5DC" var/list/potential_colors = list("0ad","a0f","f73","d14","d14","0b5","0ad","f73","fc2","084","05e","d22","fa0") // fucking hair code @@ -1270,21 +1135,21 @@ /datum/reagent/saltpetre name = "Saltpetre" id = "saltpetre" - description = "Volatile. Controversial. Third Thing." + description = "Volatile." reagent_state = LIQUID color = "#60A584" // rgb: 96, 165, 132 /datum/reagent/lye name = "Lye" id = "lye" - description = "Also known as sodium hydroxide. As a profession making this is somewhat underwhelming." + description = "Also known as sodium hydroxide." reagent_state = LIQUID color = "#FFFFD6" // very very light yellow /datum/reagent/drying_agent name = "Drying agent" id = "drying_agent" - description = "A desiccant. Can be used to dry things." + description = "Can be used to dry things." reagent_state = LIQUID color = "#A70FFF" @@ -1304,6 +1169,7 @@ /datum/reagent/toxin/mutagen/mutagenvirusfood name = "mutagenic agar" id = "mutagenvirusfood" + description = "mutates blood" color = "#A3C00F" // rgb: 163,192,15 /datum/reagent/toxin/mutagen/mutagenvirusfood/sugar @@ -1314,11 +1180,13 @@ /datum/reagent/medicine/synaptizine/synaptizinevirusfood name = "virus rations" id = "synaptizinevirusfood" + description = "mutates blood" color = "#D18AA5" // rgb: 209,138,165 /datum/reagent/toxin/plasma/plasmavirusfood name = "virus plasma" id = "plasmavirusfood" + description = "mutates blood" color = "#A69DA9" // rgb: 166,157,169 /datum/reagent/toxin/plasma/plasmavirusfood/weak @@ -1326,23 +1194,6 @@ id = "weakplasmavirusfood" color = "#CEC3C6" // rgb: 206,195,198 -/datum/reagent/uranium/uraniumvirusfood - name = "decaying uranium gel" - id = "uraniumvirusfood" - color = "#67ADBA" // rgb: 103,173,186 - -/datum/reagent/uranium/uraniumvirusfood/unstable - name = "unstable uranium gel" - id = "uraniumplasmavirusfood_unstable" - color = "#2FF2CB" // rgb: 47,242,203 - -/datum/reagent/uranium/uraniumvirusfood/stable - name = "stable uranium gel" - id = "uraniumplasmavirusfood_stable" - color = "#04506C" // rgb: 4,80,108 - -// Bee chemicals - /datum/reagent/royal_bee_jelly name = "royal bee jelly" id = "royal_bee_jelly" @@ -1354,9 +1205,7 @@ M.say(pick("Bzzz...","BZZ BZZ","Bzzzzzzzzzzz...")) ..() -//Misc reagents - -/datum/reagent/romerol +datum/reagent/romerol name = "romerol" // the REAL zombie powder id = "romerol" @@ -1367,40 +1216,8 @@ of the host body." color = "#123524" // RGB (18, 53, 36) metabolization_rate = INFINITY - can_synth = 0 /datum/reagent/romerol/on_mob_life(mob/living/carbon/human/H) // Silently add the zombie infection organ to be activated upon death new /obj/item/organ/body_egg/zombie_infection(H) ..() - -/datum/reagent/growthserum - name = "Growth serum" - id = "growthserum" - description = "A commercial chemical designed to help older men in the bedroom."//not really it just makes you a giant - color = "#ff0000"//strong red. rgb 255, 0, 0 - var/current_size = 1 - -/datum/reagent/growthserum/on_mob_life(mob/living/carbon/H) - var/newsize = current_size - switch(volume) - if(0 to 19) - newsize = 1.25 - if(20 to 49) - newsize = 1.5 - if(50 to 99) - newsize = 2 - if(100 to 199) - newsize = 2.5 - if(200 to INFINITY) - newsize = 3.5 - - H.resize = newsize/current_size - current_size = newsize - H.update_transform() - ..() - -/datum/reagent/growthserum/on_mob_delete(mob/living/M) - M.resize = 1/current_size - M.update_transform() - ..() diff --git a/code/modules/reagents/chemistry/reagents/pyrotechnic_reagents.dm b/code/modules/reagents/chemistry/reagents/pyrotechnic_reagents.dm index 249825cde2..22d718e0b7 100644 --- a/code/modules/reagents/chemistry/reagents/pyrotechnic_reagents.dm +++ b/code/modules/reagents/chemistry/reagents/pyrotechnic_reagents.dm @@ -7,7 +7,7 @@ color = "#550000" /datum/reagent/thermite/reaction_turf(turf/T, reac_volume) - if(reac_volume >= 1 && iswallturf(T)) + if(reac_volume >= 1 && istype(T, /turf/closed/wall)) var/turf/closed/wall/Wall = T if(istype(Wall, /turf/closed/wall/r_wall)) Wall.thermite = Wall.thermite+(reac_volume*2.5) @@ -54,17 +54,17 @@ var/turf/open/floor/plating/F = T if(prob(10 + F.burnt + 5*F.broken)) //broken or burnt plating is more susceptible to being destroyed F.ChangeTurf(F.baseturf) - if(isfloorturf(T)) + if(istype(T, /turf/open/floor/)) var/turf/open/floor/F = T if(prob(reac_volume)) F.make_plating() else if(prob(reac_volume)) F.burn_tile() - if(isfloorturf(F)) + if(istype(F, /turf/open/floor/)) for(var/turf/turf in range(1,F)) if(!locate(/obj/effect/hotspot) in turf) PoolOrNew(/obj/effect/hotspot, F) - if(iswallturf(T)) + if(istype(T, /turf/closed/wall/)) var/turf/closed/wall/W = T if(prob(reac_volume)) W.ChangeTurf(/turf/open/floor/plating) @@ -164,7 +164,7 @@ /datum/reagent/cryostylane name = "Cryostylane" id = "cryostylane" - description = "Comes into existence at 20K. As long as there is sufficient oxygen for it to react with, Cryostylane slowly cools all other reagents in the container 0K." + description = "Comes into existence at 20K. As long as there is sufficient oxygen for it to react with, Cryostylane slowly cools all other reagents in the mob down to 0K." color = "#0000DC" metabolization_rate = 0.5 * REAGENTS_METABOLISM @@ -190,7 +190,7 @@ /datum/reagent/pyrosium name = "Pyrosium" id = "pyrosium" - description = "Comes into existence at 20K. As long as there is sufficient oxygen for it to react with, Pyrosium slowly heats all other reagents in the container." + description = "Comes into existence at 20K. As long as there is sufficient oxygen for it to react with, Pyrosium slowly cools all other reagents in the mob down to 0K." color = "#64FAC8" metabolization_rate = 0.5 * REAGENTS_METABOLISM @@ -206,20 +206,3 @@ holder.chem_temp += 10 holder.handle_reactions() ..() - -/datum/reagent/teslium //Teslium. Causes periodic shocks, and makes shocks against the target much more effective. - name = "Teslium" - id = "teslium" - description = "An unstable, electrically-charged metallic slurry. Periodically electrocutes its victim, and makes electrocutions against them more deadly. Excessively heating teslium results in dangerous destabilization. Do not allow to come into contact with water." - reagent_state = LIQUID - color = "#20324D" //RGB: 32, 50, 77 - metabolization_rate = 0.5 * REAGENTS_METABOLISM - var/shock_timer = 0 - -/datum/reagent/teslium/on_mob_life(mob/living/M) - shock_timer++ - if(shock_timer >= rand(5,30)) //Random shocks are wildly unpredictable - shock_timer = 0 - M.electrocute_act(rand(5,20), "Teslium in their body", 1, 1) //Override because it's caused from INSIDE of you - playsound(M, "sparks", 50, 1) - ..() \ No newline at end of file diff --git a/code/modules/reagents/chemistry/reagents/toxin_reagents.dm b/code/modules/reagents/chemistry/reagents/toxin_reagents.dm index 09281f2c25..2db1424345 100644 --- a/code/modules/reagents/chemistry/reagents/toxin_reagents.dm +++ b/code/modules/reagents/chemistry/reagents/toxin_reagents.dm @@ -34,11 +34,11 @@ if(!M.has_dna()) return //No robots, AIs, aliens, Ians or other mobs should be affected by this. if((method==VAPOR && prob(min(33, reac_volume))) || method==INGEST || method==PATCH || method==INJECT) - M.randmuti() + randmuti(M) if(prob(98)) - M.randmutb() + randmutb(M) else - M.randmutg() + randmutg(M) M.updateappearance() M.domutcheck() ..() @@ -58,6 +58,7 @@ /datum/reagent/toxin/plasma/on_mob_life(mob/living/M) if(holder.has_reagent("epinephrine")) holder.remove_reagent("epinephrine", 2*REM) + M.apply_effect(0.5*REM/M.metabolism_efficiency,IRRADIATE,0) if(iscarbon(M)) var/mob/living/carbon/C = M C.adjustPlasma(20) @@ -74,7 +75,7 @@ return /datum/reagent/toxin/plasma/reaction_mob(mob/living/M, method=TOUCH, reac_volume)//Splashing people with plasma is stronger than fuel! - if(!isliving(M)) + if(!istype(M, /mob/living)) return if(method == TOUCH || method == VAPOR) M.adjust_fire_stacks(reac_volume / 5) @@ -94,7 +95,7 @@ if(iscarbon(M)) C = M CHECK_DNA_AND_SPECIES(C) - if(NOBREATH in C.dna.species.species_traits) + if(NOBREATH in C.dna.species.specflags) . = FALSE if(.) @@ -118,7 +119,7 @@ M.adjustToxLoss(rand(20,60)*REM, 0) . = 1 else if(prob(40)) - M.heal_bodypart_damage(5*REM,0, 0) + M.heal_organ_damage(5*REM,0, 0) . = 1 ..() @@ -184,10 +185,10 @@ if(istype(O,/obj/structure/alien/weeds)) var/obj/structure/alien/weeds/alien_weeds = O alien_weeds.take_damage(rand(15,35), BRUTE, 0) // Kills alien weeds pretty fast - else if(istype(O,/obj/structure/glowshroom)) //even a small amount is enough to kill it + else if(istype(O,/obj/effect/glowshroom)) //even a small amount is enough to kill it qdel(O) - else if(istype(O,/obj/structure/spacevine)) - var/obj/structure/spacevine/SV = O + else if(istype(O,/obj/effect/spacevine)) + var/obj/effect/spacevine/SV = O SV.on_chem_effect(src) /datum/reagent/toxin/plantbgone/reaction_mob(mob/living/M, method=TOUCH, reac_volume) @@ -520,12 +521,12 @@ M.adjustOxyLoss(rand(5,25), 0) . = 1 if(3) - if(ishuman(M)) + if(istype(M, /mob/living/carbon/human)) var/mob/living/carbon/human/H = M if(!H.heart_attack) H.heart_attack = 1 // rip in pepperoni if(H.stat == CONSCIOUS) - H.visible_message("[H] clutches at [H.p_their()] chest as if [H.p_their()] heart stopped!") + H.visible_message("[H] clutches at their chest as if their heart stopped!") else H.losebreath += 10 H.adjustOxyLoss(rand(5,25), 0) @@ -589,10 +590,7 @@ metabolization_rate = 0.5 * REAGENTS_METABOLISM /datum/reagent/toxin/amanitin/on_mob_delete(mob/living/M) - var/toxdamage = current_cycle*3*REM - M.adjustToxLoss(toxdamage) - if(M) - add_logs(M, get_turf(M), "has taken [toxdamage] toxin damage from amanitin toxin") + M.adjustToxLoss(current_cycle*3*REM) ..() /datum/reagent/toxin/lipolicide @@ -605,9 +603,9 @@ toxpwr = 0.5 /datum/reagent/toxin/lipolicide/on_mob_life(mob/living/M) - if(M.nutrition <= NUTRITION_LEVEL_STARVING) + if(!holder.has_reagent("nutriment")) M.adjustToxLoss(0.5*REM, 0) - M.nutrition = max(M.nutrition - 3, 0) // making the chef more valuable, one meme trap at a time + M.nutrition = max( M.nutrition - 5 * REAGENTS_METABOLISM, 0) M.overeatduration = 0 return ..() @@ -657,50 +655,25 @@ . = 1 return ..() || . - -/datum/reagent/toxin/rotatium //Rotatium. Fucks up your rotation and is hilarious - name = "Rotatium" - id = "rotatium" - description = "A constantly swirling, oddly colourful fluid. Causes the consumer's sense of direction and hand-eye coordination to become wild." +/datum/reagent/toxin/teslium //Teslium. Causes periodic shocks, and makes shocks against the target much more effective. + name = "Teslium" + id = "teslium" + description = "An unstable, electrically-charged metallic slurry. Periodically electrocutes its victim, and makes electrocutions against them more deadly." reagent_state = LIQUID - color = "#AC88CA" //RGB: 172, 136, 202 - metabolization_rate = 0.6 * REAGENTS_METABOLISM - toxpwr = 0.5 + color = "#20324D" //RGB: 32, 50, 77 + metabolization_rate = 0.5 * REAGENTS_METABOLISM + toxpwr = 0 + var/shock_timer = 0 -/datum/reagent/toxin/rotatium/on_mob_life(mob/living/M) - if(M.hud_used) - if(current_cycle >= 20 && current_cycle%20 == 0) - var/list/screens = list(M.hud_used.plane_masters["[GAME_PLANE]"], M.hud_used.plane_masters["[LIGHTING_PLANE]"]) - var/rotation = min(round(current_cycle/20), 89) // By this point the player is probably puking and quitting anyway - for(var/whole_screen in screens) - animate(whole_screen, transform = matrix(rotation, MATRIX_ROTATE), time = 5, easing = QUAD_EASING, loop = -1) - animate(transform = matrix(-rotation, MATRIX_ROTATE), time = 5, easing = QUAD_EASING) - return ..() - -/datum/reagent/toxin/rotatium/on_mob_delete(mob/living/M) - if(M && M.hud_used) - var/list/screens = list(M.hud_used.plane_masters["[GAME_PLANE]"], M.hud_used.plane_masters["[LIGHTING_PLANE]"]) - for(var/whole_screen in screens) - animate(whole_screen, transform = matrix(), time = 5, easing = QUAD_EASING) +/datum/reagent/toxin/teslium/on_mob_life(mob/living/M) + shock_timer++ + if(shock_timer >= rand(5,30)) //Random shocks are wildly unpredictable + shock_timer = 0 + M.electrocute_act(rand(5,20), "Teslium in their body", 1, 1) //Override because it's caused from INSIDE of you + playsound(M, "sparks", 50, 1) ..() -/datum/reagent/toxin/anacea - name = "Anacea" - id = "anacea" - description = "A toxin that quickly purges medicines and metabolizes very slowly." - reagent_state = LIQUID - color = "#3C5133" - metabolization_rate = 0.08 * REAGENTS_METABOLISM - toxpwr = 0.15 - -/datum/reagent/toxin/anacea/on_mob_life(mob/living/M) - var/remove_amt = 5 - if(holder.has_reagent("calomel") || holder.has_reagent("pen_acid")) - remove_amt = 0.5 - for(var/datum/reagent/medicine/R in M.reagents.reagent_list) - M.reagents.remove_reagent(R.id,remove_amt) - return ..() - + //ACID @@ -715,6 +688,8 @@ /datum/reagent/toxin/acid/reaction_mob(mob/living/carbon/C, method=TOUCH, reac_volume) if(!istype(C)) return + if(C.dna && C.dna.species.id == "xeno") + return reac_volume = round(reac_volume,0.1) if(method == INGEST) C.adjustBruteLoss(min(6*toxpwr, reac_volume * toxpwr)) @@ -722,7 +697,7 @@ if(method == INJECT) C.adjustBruteLoss(1.5 * min(6*toxpwr, reac_volume * toxpwr)) return - C.acid_act(acidpwr, reac_volume) + C.acid_act(acidpwr, toxpwr, reac_volume) /datum/reagent/toxin/acid/reaction_obj(obj/O, reac_volume) if(istype(O.loc, /mob)) //handled in human acid_act() @@ -734,7 +709,8 @@ if (!istype(T)) return reac_volume = round(reac_volume,0.1) - T.acid_act(acidpwr, reac_volume) + for(var/obj/O in T) + O.acid_act(acidpwr, reac_volume) /datum/reagent/toxin/acid/fluacid name = "Fluorosulfuric acid" @@ -757,10 +733,8 @@ metabolization_rate = 1.5 * REAGENTS_METABOLISM /datum/reagent/toxin/peaceborg/confuse/on_mob_life(mob/living/M) - if(M.confused < 6) - M.confused = Clamp(M.confused + 3, 0, 5) - if(M.dizziness < 6) - M.dizziness = Clamp(M.dizziness + 3, 0, 5) + M.confused += 1 + M.Dizzy(1) if(prob(20)) M << "You feel confused and disorientated." ..() @@ -773,9 +747,8 @@ metabolization_rate = 1.5 * REAGENTS_METABOLISM /datum/reagent/toxin/peaceborg/tire/on_mob_life(mob/living/M) - var/healthcomp = (100 - M.health) //DOES NOT ACCOUNT FOR ADMINBUS THINGS THAT MAKE YOU HAVE MORE THAN 200/210 HEALTH, OR SOMETHING OTHER THAN A HUMAN PROCESSING THIS. - if(M.staminaloss < (45 - healthcomp)) //At 50 health you would have 200 - 150 health meaning 50 compensation. 60 - 50 = 10, so would only do 10-19 stamina.) + if(M.staminaloss < 50) M.adjustStaminaLoss(10) if(prob(30)) M << "You should sit down and take a rest..." - ..() + ..() \ No newline at end of file diff --git a/code/modules/reagents/chemistry/recipes.dm b/code/modules/reagents/chemistry/recipes.dm index ebc98cbf5e..f841370c08 100644 --- a/code/modules/reagents/chemistry/recipes.dm +++ b/code/modules/reagents/chemistry/recipes.dm @@ -1,7 +1,7 @@ /datum/chemical_reaction var/name = null var/id = null - var/list/results = new/list() + var/result = null var/list/required_reagents = new/list() var/list/required_catalysts = new/list() @@ -9,11 +9,11 @@ var/atom/required_container = null // the container required for the reaction to happen var/required_other = 0 // an integer required for the reaction to happen + var/result_amount = 0 var/secondary = 0 // set to nonzero if secondary reaction var/mob_react = 0 //Determines if a chemical reaction can occur inside a mob var/required_temp = 0 - var/is_cold_recipe = 0 // Set to 1 if you want the recipe to only react when it's BELOW the required temp. var/mix_message = "The solution begins to bubble." //The message shown to nearby people upon mixing, if applicable var/mix_sound = 'sound/effects/bubbles.ogg' //The sound played upon mixing, if applicable @@ -36,7 +36,7 @@ var/list/chemical_mob_spawn_nicecritters = list() // and possible friendly mobs var/atom/A = holder.my_atom var/turf/T = get_turf(A) var/area/my_area = get_area(T) - var/message = "A [reaction_name] reaction has occurred in [my_area.name]. (JMP)" + var/message = "A [reaction_name] reaction has occured in [my_area.name]. (JMP)" message += " (VV)" var/mob/M = get(A, /mob) @@ -50,16 +50,16 @@ var/list/chemical_mob_spawn_nicecritters = list() // and possible friendly mobs playsound(get_turf(holder.my_atom), 'sound/effects/phasein.ogg', 100, 1) for(var/mob/living/carbon/C in viewers(get_turf(holder.my_atom), null)) - C.flash_act() + C.flash_eyes() for(var/i = 1, i <= amount_to_spawn, i++) var/chosen if (reaction_name == "Friendly Gold Slime") chosen = pick(chemical_mob_spawn_nicecritters) else chosen = pick(chemical_mob_spawn_meancritters) - var/spawnloc = get_turf(holder.my_atom) - var/mob/living/simple_animal/C = new chosen(spawnloc) + var/mob/living/simple_animal/C = new chosen C.faction |= mob_faction + C.loc = get_turf(holder.my_atom) if(prob(50)) for(var/j = 1, j <= rand(1, 3), j++) step(C, pick(NORTH,SOUTH,EAST,WEST)) diff --git a/code/modules/reagents/chemistry/recipes/drugs.dm b/code/modules/reagents/chemistry/recipes/drugs.dm index f9d9b24ac5..5d2c6cf3bc 100644 --- a/code/modules/reagents/chemistry/recipes/drugs.dm +++ b/code/modules/reagents/chemistry/recipes/drugs.dm @@ -1,14 +1,16 @@ /datum/chemical_reaction/space_drugs name = "Space Drugs" id = "space_drugs" - results = list("space_drugs" = 3) + result = "space_drugs" required_reagents = list("mercury" = 1, "sugar" = 1, "lithium" = 1) + result_amount = 3 /datum/chemical_reaction/crank name = "Crank" id = "crank" - results = list("crank" = 5) + result = "crank" required_reagents = list("diphenhydramine" = 1, "ammonia" = 1, "lithium" = 1, "sacid" = 1, "welding_fuel" = 1) + result_amount = 5 mix_message = "The mixture violently reacts, leaving behind a few crystalline shards." required_temp = 390 @@ -16,27 +18,31 @@ /datum/chemical_reaction/krokodil name = "Krokodil" id = "krokodil" - results = list("krokodil" = 6) + result = "krokodil" required_reagents = list("diphenhydramine" = 1, "morphine" = 1, "cleaner" = 1, "potassium" = 1, "phosphorus" = 1, "welding_fuel" = 1) + result_amount = 6 mix_message = "The mixture dries into a pale blue powder." required_temp = 380 /datum/chemical_reaction/methamphetamine name = "methamphetamine" id = "methamphetamine" - results = list("methamphetamine" = 4) + result = "methamphetamine" required_reagents = list("ephedrine" = 1, "iodine" = 1, "phosphorus" = 1, "hydrogen" = 1) + result_amount = 4 required_temp = 374 /datum/chemical_reaction/bath_salts name = "bath_salts" id = "bath_salts" - results = list("bath_salts" = 7) + result = "bath_salts" required_reagents = list("????" = 1, "saltpetre" = 1, "nutriment" = 1, "cleaner" = 1, "enzyme" = 1, "tea" = 1, "mercury" = 1) + result_amount = 7 required_temp = 374 /datum/chemical_reaction/aranesp name = "aranesp" id = "aranesp" - results = list("aranesp" = 3) + result = "aranesp" required_reagents = list("epinephrine" = 1, "atropine" = 1, "morphine" = 1) + result_amount = 3 diff --git a/code/modules/reagents/chemistry/recipes/medicine.dm b/code/modules/reagents/chemistry/recipes/medicine.dm index e446ab9736..184e3fd035 100644 --- a/code/modules/reagents/chemistry/recipes/medicine.dm +++ b/code/modules/reagents/chemistry/recipes/medicine.dm @@ -2,214 +2,249 @@ /datum/chemical_reaction/leporazine name = "Leporazine" id = "leporazine" - results = list("leporazine" = 2) + result = "leporazine" required_reagents = list("silicon" = 1, "copper" = 1) required_catalysts = list("plasma" = 5) + result_amount = 2 /datum/chemical_reaction/rezadone name = "Rezadone" id = "rezadone" - results = list("rezadone" = 3) + result = "rezadone" required_reagents = list("carpotoxin" = 1, "cryptobiolin" = 1, "copper" = 1) + result_amount = 3 /datum/chemical_reaction/spaceacillin name = "Spaceacillin" id = "spaceacillin" - results = list("spaceacillin" = 2) + result = "spaceacillin" required_reagents = list("cryptobiolin" = 1, "epinephrine" = 1) + result_amount = 2 /datum/chemical_reaction/inacusiate name = "inacusiate" id = "inacusiate" - results = list("inacusiate" = 2) + result = "inacusiate" required_reagents = list("water" = 1, "carbon" = 1, "charcoal" = 1) + result_amount = 2 /datum/chemical_reaction/synaptizine name = "Synaptizine" id = "synaptizine" - results = list("synaptizine" = 3) + result = "synaptizine" required_reagents = list("sugar" = 1, "lithium" = 1, "water" = 1) + result_amount = 3 /datum/chemical_reaction/charcoal name = "Charcoal" id = "charcoal" - results = list("charcoal" = 2) + result = "charcoal" required_reagents = list("ash" = 1, "sodiumchloride" = 1) + result_amount = 2 mix_message = "The mixture yields a fine black powder." required_temp = 380 /datum/chemical_reaction/silver_sulfadiazine name = "Silver Sulfadiazine" id = "silver_sulfadiazine" - results = list("silver_sulfadiazine" = 5) + result = "silver_sulfadiazine" required_reagents = list("ammonia" = 1, "silver" = 1, "sulfur" = 1, "oxygen" = 1, "chlorine" = 1) + result_amount = 5 /datum/chemical_reaction/salglu_solution name = "Saline-Glucose Solution" id = "salglu_solution" - results = list("salglu_solution" = 3) + result = "salglu_solution" required_reagents = list("sodiumchloride" = 1, "water" = 1, "sugar" = 1) + result_amount = 3 /datum/chemical_reaction/mine_salve name = "Miner's Salve" id = "mine_salve" - results = list("mine_salve" = 3) + result = "mine_salve" required_reagents = list("oil" = 1, "water" = 1, "iron" = 1) + result_amount = 3 /datum/chemical_reaction/mine_salve2 name = "Miner's Salve" id = "mine_salve" - results = list("mine_salve" = 15) + result = "mine_salve" required_reagents = list("plasma" = 5, "iron" = 5, "sugar" = 1) // A sheet of plasma, a twinkie and a sheet of metal makes four of these + result_amount = 15 /datum/chemical_reaction/synthflesh name = "Synthflesh" id = "synthflesh" - results = list("synthflesh" = 3) + result = "synthflesh" required_reagents = list("blood" = 1, "carbon" = 1, "styptic_powder" = 1) + result_amount = 3 /datum/chemical_reaction/styptic_powder name = "Styptic Powder" id = "styptic_powder" - results = list("styptic_powder" = 4) + result = "styptic_powder" required_reagents = list("aluminium" = 1, "hydrogen" = 1, "oxygen" = 1, "sacid" = 1) + result_amount = 4 mix_message = "The solution yields an astringent powder." /datum/chemical_reaction/calomel name = "Calomel" id = "calomel" - results = list("calomel" = 2) + result = "calomel" required_reagents = list("mercury" = 1, "chlorine" = 1) + result_amount = 2 required_temp = 374 /datum/chemical_reaction/potass_iodide name = "Potassium Iodide" id = "potass_iodide" - results = list("potass_iodide" = 2) + result = "potass_iodide" required_reagents = list("potassium" = 1, "iodine" = 1) + result_amount = 2 /datum/chemical_reaction/pen_acid name = "Pentetic Acid" id = "pen_acid" - results = list("pen_acid" = 6) + result = "pen_acid" required_reagents = list("welding_fuel" = 1, "chlorine" = 1, "ammonia" = 1, "formaldehyde" = 1, "sodium" = 1, "cyanide" = 1) + result_amount = 6 /datum/chemical_reaction/sal_acid name = "Salicyclic Acid" id = "sal_acid" - results = list("sal_acid" = 5) + result = "sal_acid" required_reagents = list("sodium" = 1, "phenol" = 1, "carbon" = 1, "oxygen" = 1, "sacid" = 1) + result_amount = 5 /datum/chemical_reaction/oxandrolone name = "Oxandrolone" id = "oxandrolone" - results = list("oxandrolone" = 6) + result = "oxandrolone" required_reagents = list("carbon" = 3, "phenol" = 1, "hydrogen" = 1, "oxygen" = 1) + result_amount = 6 /datum/chemical_reaction/salbutamol name = "Salbutamol" id = "salbutamol" - results = list("salbutamol" = 5) + result = "salbutamol" required_reagents = list("sal_acid" = 1, "lithium" = 1, "aluminium" = 1, "bromine" = 1, "ammonia" = 1) + result_amount = 5 /datum/chemical_reaction/perfluorodecalin name = "Perfluorodecalin" id = "perfluorodecalin" - results = list("perfluorodecalin" = 3) + result = "perfluorodecalin" required_reagents = list("hydrogen" = 1, "fluorine" = 1, "oil" = 1) + result_amount = 3 required_temp = 370 mix_message = "The mixture rapidly turns into a dense pink liquid." /datum/chemical_reaction/ephedrine name = "Ephedrine" id = "ephedrine" - results = list("ephedrine" = 4) + result = "ephedrine" required_reagents = list("sugar" = 1, "oil" = 1, "hydrogen" = 1, "diethylamine" = 1) + result_amount = 4 mix_message = "The solution fizzes and gives off toxic fumes." /datum/chemical_reaction/diphenhydramine name = "Diphenhydramine" id = "diphenhydramine" - results = list("diphenhydramine" = 4) + result = "diphenhydramine" required_reagents = list("oil" = 1, "carbon" = 1, "bromine" = 1, "diethylamine" = 1, "ethanol" = 1) + result_amount = 4 mix_message = "The mixture dries into a pale blue powder." /datum/chemical_reaction/oculine name = "Oculine" id = "oculine" - results = list("oculine" = 3) + result = "oculine" required_reagents = list("charcoal" = 1, "carbon" = 1, "hydrogen" = 1) + result_amount = 3 mix_message = "The mixture sputters loudly and becomes a pale pink color." /datum/chemical_reaction/atropine name = "Atropine" id = "atropine" - results = list("atropine" = 5) + result = "atropine" required_reagents = list("ethanol" = 1, "acetone" = 1, "diethylamine" = 1, "phenol" = 1, "sacid" = 1) + result_amount = 5 /datum/chemical_reaction/epinephrine name = "Epinephrine" id = "epinephrine" - results = list("epinephrine" = 6) + result = "epinephrine" required_reagents = list("phenol" = 1, "acetone" = 1, "diethylamine" = 1, "oxygen" = 1, "chlorine" = 1, "hydrogen" = 1) + result_amount = 6 /datum/chemical_reaction/strange_reagent name = "Strange Reagent" id = "strange_reagent" - results = list("strange_reagent" = 3) + result = "strange_reagent" required_reagents = list("omnizine" = 1, "holywater" = 1, "mutagen" = 1) + result_amount = 3 /datum/chemical_reaction/mannitol name = "Mannitol" id = "mannitol" - results = list("mannitol" = 3) + result = "mannitol" required_reagents = list("sugar" = 1, "hydrogen" = 1, "water" = 1) + result_amount = 3 mix_message = "The solution slightly bubbles, becoming thicker." /datum/chemical_reaction/mutadone name = "Mutadone" id = "mutadone" - results = list("mutadone" = 3) + result = "mutadone" required_reagents = list("mutagen" = 1, "acetone" = 1, "bromine" = 1) + result_amount = 3 /datum/chemical_reaction/antihol name = "antihol" id = "antihol" - results = list("antihol" = 3) + result = "antihol" required_reagents = list("ethanol" = 1, "charcoal" = 1, "copper" = 1) + result_amount = 3 /datum/chemical_reaction/cryoxadone name = "Cryoxadone" id = "cryoxadone" - results = list("cryoxadone" = 3) + result = "cryoxadone" required_reagents = list("stable_plasma" = 1, "acetone" = 1, "mutagen" = 1) + result_amount = 3 /datum/chemical_reaction/haloperidol name = "Haloperidol" id = "haloperidol" - results = list("haloperidol" = 5) + result = "haloperidol" required_reagents = list("chlorine" = 1, "fluorine" = 1, "aluminium" = 1, "potass_iodide" = 1, "oil" = 1) + result_amount = 5 /datum/chemical_reaction/bicaridine name = "Bicaridine" id = "bicaridine" - results = list("bicaridine" = 3) + result = "bicaridine" required_reagents = list("carbon" = 1, "oxygen" = 1, "sugar" = 1) + result_amount = 3 /datum/chemical_reaction/kelotane name = "Kelotane" id = "kelotane" - results = list("kelotane" = 2) + result = "kelotane" required_reagents = list("carbon" = 1, "silicon" = 1) + result_amount = 2 + /datum/chemical_reaction/antitoxin name = "Antitoxin" id = "antitoxin" - results = list("antitoxin" = 3) + result = "antitoxin" required_reagents = list("nitrogen" = 1, "silicon" = 1, "potassium" = 1) + result_amount = 3 /datum/chemical_reaction/tricordrazine name = "Tricordrazine" id = "tricordrazine" - results = list("tricordrazine" = 3) - required_reagents = list("bicaridine" = 1, "kelotane" = 1, "antitoxin" = 1) \ No newline at end of file + result = "tricordrazine" + required_reagents = list("bicaridine" = 1, "kelotane" = 1, "antitoxin" = 1) + result_amount = 3 \ No newline at end of file diff --git a/code/modules/reagents/chemistry/recipes/others.dm b/code/modules/reagents/chemistry/recipes/others.dm index c15d3f14fc..65867e3f5b 100644 --- a/code/modules/reagents/chemistry/recipes/others.dm +++ b/code/modules/reagents/chemistry/recipes/others.dm @@ -2,293 +2,183 @@ /datum/chemical_reaction/sterilizine name = "Sterilizine" id = "sterilizine" - results = list("sterilizine" = 3) + result = "sterilizine" required_reagents = list("ethanol" = 1, "charcoal" = 1, "chlorine" = 1) + result_amount = 3 /datum/chemical_reaction/lube name = "Space Lube" id = "lube" - results = list("lube" = 4) + result = "lube" required_reagents = list("water" = 1, "silicon" = 1, "oxygen" = 1) + result_amount = 4 /datum/chemical_reaction/spraytan name = "Spray Tan" id = "spraytan" - results = list("spraytan" = 2) + result = "spraytan" required_reagents = list("orangejuice" = 1, "oil" = 1) + result_amount = 2 /datum/chemical_reaction/spraytan2 name = "Spray Tan" id = "spraytan" - results = list("spraytan" = 2) + result = "spraytan" required_reagents = list("orangejuice" = 1, "cornoil" = 1) + result_amount = 2 /datum/chemical_reaction/impedrezene name = "Impedrezene" id = "impedrezene" - results = list("impedrezene" = 2) + result = "impedrezene" required_reagents = list("mercury" = 1, "oxygen" = 1, "sugar" = 1) + result_amount = 2 /datum/chemical_reaction/cryptobiolin name = "Cryptobiolin" id = "cryptobiolin" - results = list("cryptobiolin" = 3) + result = "cryptobiolin" required_reagents = list("potassium" = 1, "oxygen" = 1, "sugar" = 1) + result_amount = 3 /datum/chemical_reaction/glycerol name = "Glycerol" id = "glycerol" - results = list("glycerol" = 1) + result = "glycerol" required_reagents = list("cornoil" = 3, "sacid" = 1) + result_amount = 1 /datum/chemical_reaction/sodiumchloride name = "Sodium Chloride" id = "sodiumchloride" - results = list("sodiumchloride" = 3) + result = "sodiumchloride" required_reagents = list("water" = 1, "sodium" = 1, "chlorine" = 1) + result_amount = 3 /datum/chemical_reaction/plasmasolidification name = "Solid Plasma" id = "solidplasma" + result = null required_reagents = list("iron" = 5, "frostoil" = 5, "plasma" = 20) + result_amount = 1 mob_react = 1 /datum/chemical_reaction/plasmasolidification/on_reaction(datum/reagents/holder, created_volume) var/location = get_turf(holder.my_atom) - for(var/i = 1, i <= created_volume, i++) - new /obj/item/stack/sheet/mineral/plasma(location) + new /obj/item/stack/sheet/mineral/plasma(location) + return -/datum/chemical_reaction/goldsolidification - name = "Solid Gold" - id = "solidgold" - required_reagents = list("frostoil" = 5, "gold" = 20, "iron" = 1) - mob_react = 1 - -/datum/chemical_reaction/goldsolidification/on_reaction(datum/reagents/holder, created_volume) - var/location = get_turf(holder.my_atom) - for(var/i = 1, i <= created_volume, i++) - new /obj/item/stack/sheet/mineral/gold(location) - /datum/chemical_reaction/capsaicincondensation name = "Capsaicincondensation" id = "capsaicincondensation" - results = list("condensedcapsaicin" = 5) + result = "condensedcapsaicin" required_reagents = list("capsaicin" = 1, "ethanol" = 5) + result_amount = 5 /datum/chemical_reaction/soapification name = "Soapification" id = "soapification" + result = null required_reagents = list("liquidgibs" = 10, "lye" = 10) // requires two scooped gib tiles required_temp = 374 + result_amount = 1 mob_react = 1 /datum/chemical_reaction/soapification/on_reaction(datum/reagents/holder, created_volume) var/location = get_turf(holder.my_atom) - for(var/i = 1, i <= created_volume, i++) - new /obj/item/weapon/soap/homemade(location) + new /obj/item/weapon/soap/homemade(location) + return /datum/chemical_reaction/candlefication name = "Candlefication" id = "candlefication" + result = null required_reagents = list("liquidgibs" = 5, "oxygen" = 5) // required_temp = 374 + result_amount = 1 mob_react = 1 /datum/chemical_reaction/candlefication/on_reaction(datum/reagents/holder, created_volume) var/location = get_turf(holder.my_atom) - for(var/i = 1, i <= created_volume, i++) - new /obj/item/candle(location) + new /obj/item/candle(location) + return /datum/chemical_reaction/meatification name = "Meatification" id = "meatification" + result = null required_reagents = list("liquidgibs" = 10, "nutriment" = 10, "carbon" = 10) + result_amount = 1 mob_react = 1 /datum/chemical_reaction/meatification/on_reaction(datum/reagents/holder, created_volume) var/location = get_turf(holder.my_atom) - for(var/i = 1, i <= created_volume, i++) - new /obj/item/weapon/reagent_containers/food/snacks/meat/slab/meatproduct(location) + new /obj/item/weapon/reagent_containers/food/snacks/meat/slab/meatproduct(location) return /datum/chemical_reaction/carbondioxide name = "Direct Carbon Oxidation" id = "burningcarbon" - results = list("co2" = 3) + result = "co2" required_reagents = list("carbon" = 1, "oxygen" = 2) required_temp = 777 // pure carbon isn't especially reactive. - -/datum/chemical_reaction/nitrous_oxide - name = "Nitrous Oxide" - id = "nitrous_oxide" - results = list("nitrous_oxide" = 2, "water" = 4) - required_reagents = list("ammonia" = 3, "nitrogen" = 1, "oxygen" = 2) - required_temp = 525 - -////////////////////////////////// Mutation Toxins /////////////////////////////////// - -/datum/chemical_reaction/stable_mutation_toxin - name = "Stable Mutation Toxin" - id = "stablemutationtoxin" - results = list("stablemutationtoxin" = 1) - required_reagents = list("unstablemutationtoxin" = 1, "blood" = 1) //classic - -/datum/chemical_reaction/lizard_mutation_toxin - name = "Lizard Mutation Toxin" - id = "lizardmutationtoxin" - results = list("lizardmutationtoxin" = 1) - required_reagents = list("unstablemutationtoxin" = 1, "radium" = 1) //mutant - -/datum/chemical_reaction/fly_mutation_toxin - name = "Fly Mutation Toxin" - id = "flymutationtoxin" - results = list("flymutationtoxin" = 1) - required_reagents = list("unstablemutationtoxin" = 1, "mutagen" = 1) //VERY mutant - -/datum/chemical_reaction/jelly_mutation_toxin - name = "Imperfect Mutation Toxin" - id = "jellymutationtoxin" - results = list("jellymutationtoxin" = 1) - required_reagents = list("unstablemutationtoxin" = 1, "slimejelly" = 1) //why would you even make this - -/datum/chemical_reaction/abductor_mutation_toxin - name = "Abductor Mutation Toxin" - id = "abductormutationtoxin" - results = list("abductormutationtoxin" = 1) - required_reagents = list("unstablemutationtoxin" = 1, "morphine" = 1) - -/datum/chemical_reaction/android_mutation_toxin - name = "Android Mutation Toxin" - id = "androidmutationtoxin" - results = list("androidmutationtoxin" = 1) - required_reagents = list("unstablemutationtoxin" = 1, "teslium" = 1) //beep boop - -/datum/chemical_reaction/pod_mutation_toxin - name = "Podperson Mutation Toxin" - id = "podmutationtoxin" - results = list("podmutationtoxin" = 1) - required_reagents = list("unstablemutationtoxin" = 1, "eznutriment" = 1) //plant food - -/datum/chemical_reaction/golem_mutation_toxin - name = "Golem Mutation Toxin" - id = "golemmutationtoxin" - results = list("golemmutationtoxin" = 1) - required_reagents = list("unstablemutationtoxin" = 1, "silver" = 1) //not too hard to get but also not just there in xenobio - - -//BLACKLISTED RACES -/datum/chemical_reaction/skeleton_mutation_toxin - name = "Skeleton Mutation Toxin" - id = "skeletonmutationtoxin" - results = list("skeletonmutationtoxin" = 1) - required_reagents = list("amutationtoxin" = 1, "milk" = 1) //good for yer bones - -/datum/chemical_reaction/zombie_mutation_toxin - name = "Zombie Mutation Toxin" - id = "zombiemutationtoxin" - results = list("zombiemutationtoxin" = 1) - required_reagents = list("amutationtoxin" = 1, "toxin" = 1) - -/datum/chemical_reaction/ash_mutation_toxin //ash lizard - name = "Ash Mutation Toxin" - id = "ashmutationtoxin" - results = list("ashmutationtoxin" = 1) - required_reagents = list("amutationtoxin" = 1, "lizardmutationtoxin" = 1, "ash" = 1) - - -//DANGEROUS RACES -/datum/chemical_reaction/plasma_mutation_toxin - name = "Plasma Mutation Toxin" - id = "plasmamutationtoxin" - results = list("plasmamutationtoxin" = 1) - required_reagents = list("skeletonmutationtoxin" = 1, "plasma" = 1, "uranium" = 1) //this is very fucking powerful, so it's hard to make - -/datum/chemical_reaction/shadow_mutation_toxin - name = "Shadow Mutation Toxin" - id = "shadowmutationtoxin" - results = list("shadowmutationtoxin" = 1) - required_reagents = list("amutationtoxin" = 1, "liquid_dark_matter" = 1, "holywater" = 1) - -//Technically a mutation toxin -/datum/chemical_reaction/mulligan - name = "Mulligan" - id = "mulligan" - results = list("mulligan" = 1) - required_reagents = list("humanmutationtoxin" = 1, "mutagen" = 1) - + result_amount = 3 ////////////////////////////////// VIROLOGY ////////////////////////////////////////// /datum/chemical_reaction/virus_food name = "Virus Food" id = "virusfood" - results = list("virusfood" = 15) + result = "virusfood" required_reagents = list("water" = 5, "milk" = 5) + result_amount = 15 /datum/chemical_reaction/virus_food_mutagen name = "mutagenic agar" id = "mutagenvirusfood" - results = list("mutagenvirusfood" = 1) + result = "mutagenvirusfood" required_reagents = list("mutagen" = 1, "virusfood" = 1) + result_amount = 1 /datum/chemical_reaction/virus_food_synaptizine name = "virus rations" id = "synaptizinevirusfood" - results = list("synaptizinevirusfood" = 1) + result = "synaptizinevirusfood" required_reagents = list("synaptizine" = 1, "virusfood" = 1) + result_amount = 1 /datum/chemical_reaction/virus_food_plasma name = "virus plasma" id = "plasmavirusfood" - results = list("plasmavirusfood" = 1) + result = "plasmavirusfood" required_reagents = list("plasma" = 1, "virusfood" = 1) + result_amount = 1 /datum/chemical_reaction/virus_food_plasma_synaptizine name = "weakened virus plasma" id = "weakplasmavirusfood" - results = list("weakplasmavirusfood" = 2) + result = "weakplasmavirusfood" required_reagents = list("synaptizine" = 1, "plasmavirusfood" = 1) + result_amount = 2 /datum/chemical_reaction/virus_food_mutagen_sugar name = "sucrose agar" id = "sugarvirusfood" - results = list("sugarvirusfood" = 2) + result = "sugarvirusfood" required_reagents = list("sugar" = 1, "mutagenvirusfood" = 1) + result_amount = 2 /datum/chemical_reaction/virus_food_mutagen_salineglucose name = "sucrose agar" id = "salineglucosevirusfood" - results = list("sugarvirusfood" = 2) + result = "sugarvirusfood" required_reagents = list("salglu_solution" = 1, "mutagenvirusfood" = 1) - -/datum/chemical_reaction/virus_food_uranium - name = "Decaying uranium gel" - id = "uraniumvirusfood" - results = list("uraniumvirusfood" = 1) - required_reagents = list("uranium" = 1, "virusfood" = 1) - -/datum/chemical_reaction/virus_food_uranium_plasma - name = "Unstable uranium gel" - id = "uraniumvirusfood_plasma" - results = list("uraniumplasmavirusfood_unstable" = 1) - required_reagents = list("uranium" = 5, "plasmavirusfood" = 1) - -/datum/chemical_reaction/virus_food_uranium_plasma_gold - name = "Stable uranium gel" - id = "uraniumvirusfood_gold" - results = list("uraniumplasmavirusfood_stable" = 1) - required_reagents = list("uranium" = 10, "gold" = 10, "plasma" = 1) - -/datum/chemical_reaction/virus_food_uranium_plasma_silver - name = "Stable uranium gel" - id = "uraniumvirusfood_silver" - results = list("uraniumplasmavirusfood_stable" = 1) - required_reagents = list("uranium" = 10, "silver" = 10, "plasma" = 1) + result_amount = 2 /datum/chemical_reaction/mix_virus name = "Mix Virus" id = "mixvirus" - results = list("blood" = 1) + result = "blood" required_reagents = list("virusfood" = 1) required_catalysts = list("blood" = 1) var/level_min = 0 @@ -367,30 +257,6 @@ level_min = 1 level_max = 1 -/datum/chemical_reaction/mix_virus/mix_virus_10 - - name = "Mix Virus 10" - id = "mixvirus10" - required_reagents = list("uraniumvirusfood" = 5) - level_min = 6 - level_max = 7 - -/datum/chemical_reaction/mix_virus/mix_virus_11 - - name = "Mix Virus 11" - id = "mixvirus11" - required_reagents = list("uraniumplasmavirusfood_unstable" = 5) - level_min = 7 - level_max = 7 - -/datum/chemical_reaction/mix_virus/mix_virus_12 - - name = "Mix Virus 12" - id = "mixvirus12" - required_reagents = list("uraniumplasmavirusfood_stable" = 5) - level_min = 8 - level_max = 8 - /datum/chemical_reaction/mix_virus/rem_virus name = "Devolve Virus" @@ -414,13 +280,17 @@ /datum/chemical_reaction/surfactant name = "Foam surfactant" id = "foam surfactant" - results = list("fluorosurfactant" = 5) + result = "fluorosurfactant" required_reagents = list("fluorine" = 2, "carbon" = 2, "sacid" = 1) + result_amount = 5 + /datum/chemical_reaction/foam name = "Foam" id = "foam" + result = null required_reagents = list("fluorosurfactant" = 1, "water" = 1) + result_amount = 2 mob_react = 1 /datum/chemical_reaction/foam/on_reaction(datum/reagents/holder, created_volume) @@ -428,7 +298,7 @@ for(var/mob/M in viewers(5, location)) M << "The solution spews out foam!" var/datum/effect_system/foam_spread/s = new() - s.set_up(created_volume*2, location, holder) + s.set_up(created_volume, location, holder) s.start() holder.clear_reagents() return @@ -437,7 +307,9 @@ /datum/chemical_reaction/metalfoam name = "Metal Foam" id = "metalfoam" + result = null required_reagents = list("aluminium" = 3, "foaming_agent" = 1, "facid" = 1) + result_amount = 5 mob_react = 1 /datum/chemical_reaction/metalfoam/on_reaction(datum/reagents/holder, created_volume) @@ -447,14 +319,16 @@ M << "The solution spews out a metallic foam!" var/datum/effect_system/foam_spread/metal/s = new() - s.set_up(created_volume*5, location, holder, 1) + s.set_up(created_volume, location, holder, 1) s.start() holder.clear_reagents() /datum/chemical_reaction/ironfoam name = "Iron Foam" id = "ironlfoam" + result = null required_reagents = list("iron" = 3, "foaming_agent" = 1, "facid" = 1) + result_amount = 5 mob_react = 1 /datum/chemical_reaction/ironfoam/on_reaction(datum/reagents/holder, created_volume) @@ -462,15 +336,16 @@ for(var/mob/M in viewers(5, location)) M << "The solution spews out a metallic foam!" var/datum/effect_system/foam_spread/metal/s = new() - s.set_up(created_volume*5, location, holder, 2) + s.set_up(created_volume, location, holder, 2) s.start() holder.clear_reagents() /datum/chemical_reaction/foaming_agent name = "Foaming Agent" id = "foaming_agent" - results = list("foaming_agent" = 1) + result = "foaming_agent" required_reagents = list("lithium" = 1, "hydrogen" = 1) + result_amount = 1 /////////////////////////////// Cleaning and hydroponics ///////////////////////////////////////////////// @@ -478,149 +353,167 @@ /datum/chemical_reaction/ammonia name = "Ammonia" id = "ammonia" - results = list("ammonia" = 3) + result = "ammonia" required_reagents = list("hydrogen" = 3, "nitrogen" = 1) + result_amount = 3 /datum/chemical_reaction/diethylamine name = "Diethylamine" id = "diethylamine" - results = list("diethylamine" = 2) + result = "diethylamine" required_reagents = list ("ammonia" = 1, "ethanol" = 1) + result_amount = 2 /datum/chemical_reaction/space_cleaner name = "Space cleaner" id = "cleaner" - results = list("cleaner" = 2) + result = "cleaner" required_reagents = list("ammonia" = 1, "water" = 1) + result_amount = 2 /datum/chemical_reaction/plantbgone name = "Plant-B-Gone" id = "plantbgone" - results = list("plantbgone" = 5) + result = "plantbgone" required_reagents = list("toxin" = 1, "water" = 4) + result_amount = 5 /datum/chemical_reaction/weedkiller name = "Weed Killer" id = "weedkiller" - results = list("weedkiller" = 5) + result = "weedkiller" required_reagents = list("toxin" = 1, "ammonia" = 4) + result_amount = 5 /datum/chemical_reaction/pestkiller name = "Pest Killer" id = "pestkiller" - results = list("pestkiller" = 5) + result = "pestkiller" required_reagents = list("toxin" = 1, "ethanol" = 4) + result_amount = 5 /datum/chemical_reaction/drying_agent name = "Drying agent" id = "drying_agent" - results = list("drying_agent" = 3) + result = "drying_agent" required_reagents = list("stable_plasma" = 2, "ethanol" = 1, "sodium" = 1) + result_amount = 3 //////////////////////////////////// Other goon stuff /////////////////////////////////////////// /datum/chemical_reaction/acetone name = "acetone" id = "acetone" - results = list("acetone" = 3) + result = "acetone" required_reagents = list("oil" = 1, "welding_fuel" = 1, "oxygen" = 1) + result_amount = 3 /datum/chemical_reaction/carpet name = "carpet" id = "carpet" - results = list("carpet" = 2) + result = "carpet" required_reagents = list("space_drugs" = 1, "blood" = 1) + result_amount = 2 + /datum/chemical_reaction/oil name = "Oil" id = "oil" - results = list("oil" = 3) + result = "oil" required_reagents = list("welding_fuel" = 1, "carbon" = 1, "hydrogen" = 1) + result_amount = 3 /datum/chemical_reaction/phenol name = "phenol" id = "phenol" - results = list("phenol" = 3) + result = "phenol" required_reagents = list("water" = 1, "chlorine" = 1, "oil" = 1) + result_amount = 3 /datum/chemical_reaction/ash name = "Ash" id = "ash" - results = list("ash" = 1) + result = "ash" required_reagents = list("oil" = 1) + result_amount = 1 required_temp = 480 /datum/chemical_reaction/colorful_reagent name = "colorful_reagent" id = "colorful_reagent" - results = list("colorful_reagent" = 5) + result = "colorful_reagent" required_reagents = list("stable_plasma" = 1, "radium" = 1, "space_drugs" = 1, "cryoxadone" = 1, "triple_citrus" = 1) + result_amount = 5 /datum/chemical_reaction/life name = "Life" id = "life" + result = null required_reagents = list("strange_reagent" = 1, "synthflesh" = 1, "blood" = 1) + result_amount = 1 required_temp = 374 /datum/chemical_reaction/life/on_reaction(datum/reagents/holder, created_volume) - chemical_mob_spawn(holder, rand(1, round(created_volume, 1)), "Life") // Lol. + chemical_mob_spawn(holder, 1, "Life") /datum/chemical_reaction/corgium name = "corgium" id = "corgium" + result = null required_reagents = list("nutriment" = 1, "colorful_reagent" = 1, "strange_reagent" = 1, "blood" = 1) + result_amount = 1 required_temp = 374 /datum/chemical_reaction/corgium/on_reaction(datum/reagents/holder, created_volume) var/location = get_turf(holder.my_atom) - for(var/i = rand(1, created_volume), i <= created_volume, i++) // More lulz. - new /mob/living/simple_animal/pet/dog/corgi(location) + new /mob/living/simple_animal/pet/dog/corgi(location) ..() /datum/chemical_reaction/hair_dye name = "hair_dye" id = "hair_dye" - results = list("hair_dye" = 5) + result = "hair_dye" required_reagents = list("colorful_reagent" = 1, "radium" = 1, "space_drugs" = 1) + result_amount = 5 /datum/chemical_reaction/barbers_aid name = "barbers_aid" id = "barbers_aid" - results = list("barbers_aid" = 5) + result = "barbers_aid" required_reagents = list("carpet" = 1, "radium" = 1, "space_drugs" = 1) + result_amount = 5 /datum/chemical_reaction/concentrated_barbers_aid name = "concentrated_barbers_aid" id = "concentrated_barbers_aid" - results = list("concentrated_barbers_aid" = 2) + result = "concentrated_barbers_aid" required_reagents = list("barbers_aid" = 1, "mutagen" = 1) + result_amount = 2 /datum/chemical_reaction/saltpetre name = "saltpetre" id = "saltpetre" - results = list("saltpetre" = 3) + result = "saltpetre" required_reagents = list("potassium" = 1, "nitrogen" = 1, "oxygen" = 3) + result_amount = 3 /datum/chemical_reaction/lye name = "lye" id = "lye" - results = list("lye" = 3) + result = "lye" required_reagents = list("sodium" = 1, "hydrogen" = 1, "oxygen" = 1) + result_amount = 3 /datum/chemical_reaction/lye2 name = "lye" id = "lye" - results = list("lye" = 2) + result = "lye" required_reagents = list("ash" = 1, "water" = 1) + result_amount = 2 /datum/chemical_reaction/royal_bee_jelly name = "royal bee jelly" id = "royal_bee_jelly" - results = list("royal_bee_jelly" = 5) + result = "royal_bee_jelly" required_reagents = list("mutagen" = 10, "honey" = 40) - -/datum/chemical_reaction/laughter - name = "laughter" - id = "laughter" - results = list("laughter" = 10) // Fuck it. I'm not touching this one. - required_reagents = list("sugar" = 1, "banana" = 1) + result_amount = 5 diff --git a/code/modules/reagents/chemistry/recipes/pyrotechnics.dm b/code/modules/reagents/chemistry/recipes/pyrotechnics.dm index b75908a6f2..af70d5ddb6 100644 --- a/code/modules/reagents/chemistry/recipes/pyrotechnics.dm +++ b/code/modules/reagents/chemistry/recipes/pyrotechnics.dm @@ -1,6 +1,7 @@ /datum/chemical_reaction/reagent_explosion name = "Generic explosive" id = "reagent_explosion" + result = null var/strengthdiv = 10 var/modifier = 0 @@ -15,8 +16,8 @@ if(lastkey) var/mob/toucher = get_mob_by_key(lastkey) touch_msg = "[key_name_admin(lastkey)]? (FLW)" - message_admins("Reagent explosion reaction occurred at [T.loc.name] (JMP)[inside_msg]. Last Fingerprint: [touch_msg].") - log_game("Reagent explosion reaction occurred at [T.loc.name] ([T.x],[T.y],[T.z]). Last Fingerprint: [lastkey ? lastkey : "N/A"]." ) + message_admins("Reagent explosion reaction occured at [T.loc.name] (JMP)[inside_msg]. Last Fingerprint: [touch_msg].") + log_game("Reagent explosion reaction occured at [T.loc.name] ([T.x],[T.y],[T.z]). Last Fingerprint: [lastkey ? lastkey : "N/A"]." ) var/datum/effect_system/reagents_explosion/e = new() e.set_up(modifier + round(created_volume/strengthdiv, 1), T, 0, 0) e.start() @@ -26,20 +27,22 @@ /datum/chemical_reaction/reagent_explosion/nitroglycerin name = "Nitroglycerin" id = "nitroglycerin" - results = list("nitroglycerin" = 2) + result = "nitroglycerin" required_reagents = list("glycerol" = 1, "facid" = 1, "sacid" = 1) + result_amount = 2 strengthdiv = 2 /datum/chemical_reaction/reagent_explosion/nitroglycerin/on_reaction(datum/reagents/holder, created_volume) if(holder.has_reagent("stabilizing_agent")) return - holder.remove_reagent("nitroglycerin", created_volume*2) + holder.remove_reagent("nitroglycerin", created_volume) ..() /datum/chemical_reaction/reagent_explosion/nitroglycerin_explosion name = "Nitroglycerin explosion" id = "nitroglycerin_explosion" required_reagents = list("nitroglycerin" = 1) + result_amount = 1 required_temp = 474 strengthdiv = 2 @@ -48,6 +51,7 @@ name = "Explosion" id = "potassium_explosion" required_reagents = list("water" = 1, "potassium" = 1) + result_amount = 2 strengthdiv = 10 /datum/chemical_reaction/reagent_explosion/potassium_explosion/holyboom @@ -60,18 +64,16 @@ playsound(get_turf(holder.my_atom), 'sound/effects/pray.ogg', 80, 0, round(created_volume/48)) strengthdiv = 8 for(var/mob/living/simple_animal/revenant/R in get_hearers_in_view(7,get_turf(holder.my_atom))) - var/deity - if(SSreligion.Bible_deity_name) - deity = SSreligion.Bible_deity_name - else - deity = "Christ" - R << "The power of [deity] compels you!" + var/diety = ticker.Bible_deity_name + if(!ticker.Bible_deity_name) + diety = "Christ" + R << "The power of [diety] compels you!" R.stun(20) R.reveal(100) R.adjustHealth(50) sleep(20) for(var/mob/living/carbon/C in get_hearers_in_view(round(created_volume/48,1),get_turf(holder.my_atom))) - if(iscultist(C)) + if(iscultist(C) || is_handofgod_cultist(C)) C << "The divine explosion sears you!" C.Weaken(2) C.adjust_fire_stacks(5) @@ -82,13 +84,15 @@ /datum/chemical_reaction/blackpowder name = "Black Powder" id = "blackpowder" - results = list("blackpowder" = 3) + result = "blackpowder" required_reagents = list("saltpetre" = 1, "charcoal" = 1, "sulfur" = 1) + result_amount = 3 /datum/chemical_reaction/reagent_explosion/blackpowder_explosion name = "Black Powder Kaboom" id = "blackpowder_explosion" required_reagents = list("blackpowder" = 1) + result_amount = 1 required_temp = 474 strengthdiv = 6 modifier = 1 @@ -101,32 +105,38 @@ /datum/chemical_reaction/thermite name = "Thermite" id = "thermite" - results = list("thermite" = 3) + result = "thermite" required_reagents = list("aluminium" = 1, "iron" = 1, "oxygen" = 1) + result_amount = 3 /datum/chemical_reaction/emp_pulse name = "EMP Pulse" id = "emp_pulse" + result = null required_reagents = list("uranium" = 1, "iron" = 1) // Yes, laugh, it's the best recipe I could think of that makes a little bit of sense + result_amount = 2 /datum/chemical_reaction/emp_pulse/on_reaction(datum/reagents/holder, created_volume) var/location = get_turf(holder.my_atom) // 100 created volume = 4 heavy range & 7 light range. A few tiles smaller than traitor EMP grandes. // 200 created volume = 8 heavy range & 14 light range. 4 tiles larger than traitor EMP grenades. - empulse(location, round(created_volume / 12), round(created_volume / 7), 1) + empulse(location, round(created_volume / 24), round(created_volume / 14), 1) holder.clear_reagents() /datum/chemical_reaction/stabilizing_agent name = "stabilizing_agent" id = "stabilizing_agent" - results = list("stabilizing_agent" = 3) + result = "stabilizing_agent" required_reagents = list("iron" = 1, "oxygen" = 1, "hydrogen" = 1) + result_amount = 3 + /datum/chemical_reaction/clf3 name = "Chlorine Trifluoride" id = "clf3" - results = list("clf3" = 4) + result = "clf3" required_reagents = list("chlorine" = 1, "fluorine" = 3) + result_amount = 4 required_temp = 424 /datum/chemical_reaction/clf3/on_reaction(datum/reagents/holder, created_volume) @@ -135,10 +145,12 @@ PoolOrNew(/obj/effect/hotspot, turf) holder.chem_temp = 1000 // hot as shit -/datum/chemical_reaction/reagent_explosion/methsplosion + +/datum/chemical_reaction/reagent_explosion/methsplosion/ name = "Meth explosion" id = "methboom1" - results = list("methboom1" = 1) + result = "methboom1" + result_amount = 1 required_temp = 380 //slightly above the meth mix time. required_reagents = list("methamphetamine" = 1) strengthdiv = 6 @@ -154,25 +166,28 @@ /datum/chemical_reaction/reagent_explosion/methsplosion/methboom2 required_reagents = list("diethylamine" = 1, "iodine" = 1, "phosphorus" = 1, "hydrogen" = 1) //diethylamine is often left over from mixing the ephedrine. required_temp = 300 //room temperature, chilling it even a little will prevent the explosion - results = list("methboom1" = 4) // this is ugly. Sorry goof. + result_amount = 4 /datum/chemical_reaction/sorium name = "Sorium" id = "sorium" - results = list("sorium" = 4) + result = "sorium" required_reagents = list("mercury" = 1, "oxygen" = 1, "nitrogen" = 1, "carbon" = 1) + result_amount = 4 /datum/chemical_reaction/sorium/on_reaction(datum/reagents/holder, created_volume) if(holder.has_reagent("stabilizing_agent")) return - holder.remove_reagent("sorium", created_volume*4) + holder.remove_reagent("sorium", created_volume) var/turf/T = get_turf(holder.my_atom) - var/range = Clamp(sqrt(created_volume*4), 1, 6) + var/range = Clamp(sqrt(created_volume), 1, 6) goonchem_vortex(T, 1, range) /datum/chemical_reaction/sorium_vortex name = "sorium_vortex" id = "sorium_vortex" + result = null + result_amount = 1 required_reagents = list("sorium" = 1) required_temp = 474 @@ -181,23 +196,27 @@ var/range = Clamp(sqrt(created_volume), 1, 6) goonchem_vortex(T, 1, range) + /datum/chemical_reaction/liquid_dark_matter name = "Liquid Dark Matter" id = "liquid_dark_matter" - results = list("liquid_dark_matter" = 3) + result = "liquid_dark_matter" required_reagents = list("stable_plasma" = 1, "radium" = 1, "carbon" = 1) + result_amount = 3 /datum/chemical_reaction/liquid_dark_matter/on_reaction(datum/reagents/holder, created_volume) if(holder.has_reagent("stabilizing_agent")) return - holder.remove_reagent("liquid_dark_matter", created_volume*3) + holder.remove_reagent("liquid_dark_matter", created_volume) var/turf/T = get_turf(holder.my_atom) - var/range = Clamp(sqrt(created_volume*3), 1, 6) + var/range = Clamp(sqrt(created_volume), 1, 6) goonchem_vortex(T, 0, range) /datum/chemical_reaction/ldm_vortex name = "LDM Vortex" id = "ldm_vortex" + result = null + result_amount = 1 required_reagents = list("liquid_dark_matter" = 1) required_temp = 474 @@ -209,8 +228,9 @@ /datum/chemical_reaction/flash_powder name = "Flash powder" id = "flash_powder" - results = list("flash_powder" = 3) + result = "flash_powder" required_reagents = list("aluminium" = 1, "potassium" = 1, "sulfur" = 1 ) + result_amount = 3 /datum/chemical_reaction/flash_powder/on_reaction(datum/reagents/holder, created_volume) if(holder.has_reagent("stabilizing_agent")) @@ -219,18 +239,20 @@ var/datum/effect_system/spark_spread/s = new /datum/effect_system/spark_spread s.set_up(2, 1, location) s.start() - for(var/mob/living/carbon/C in get_hearers_in_view(created_volume/3, location)) - if(C.flash_act()) + for(var/mob/living/carbon/C in get_hearers_in_view(created_volume/10, location)) + if(C.flash_eyes()) if(get_dist(C, location) < 4) C.Weaken(5) else C.Stun(5) - holder.remove_reagent("flash_powder", created_volume*3) + holder.remove_reagent("flash_powder", created_volume) /datum/chemical_reaction/flash_powder_flash name = "Flash powder activation" id = "flash_powder_flash" + result = null required_reagents = list("flash_powder" = 1) + result_amount = 1 required_temp = 374 /datum/chemical_reaction/flash_powder_flash/on_reaction(datum/reagents/holder, created_volume) @@ -239,7 +261,7 @@ s.set_up(2, 1, location) s.start() for(var/mob/living/carbon/C in get_hearers_in_view(created_volume/10, location)) - if(C.flash_act()) + if(C.flash_eyes()) if(get_dist(C, location) < 4) C.Weaken(5) else @@ -248,20 +270,21 @@ /datum/chemical_reaction/smoke_powder name = "smoke_powder" id = "smoke_powder" - results = list("smoke_powder" = 3) + result = "smoke_powder" required_reagents = list("potassium" = 1, "sugar" = 1, "phosphorus" = 1) + result_amount = 3 /datum/chemical_reaction/smoke_powder/on_reaction(datum/reagents/holder, created_volume) if(holder.has_reagent("stabilizing_agent")) return - holder.remove_reagent("smoke_powder", created_volume*3) - var/smoke_radius = round(sqrt(created_volume * 1.5), 1) + holder.remove_reagent("smoke_powder", created_volume) + var/smoke_radius = round(sqrt(created_volume / 2), 1) var/location = get_turf(holder.my_atom) var/datum/effect_system/smoke_spread/chem/S = new S.attach(location) playsound(location, 'sound/effects/smoke.ogg', 50, 1, -3) if(S) - S.set_up(holder, smoke_radius, location, 0) + S.set_up(holder, smoke_radius, 0, location) S.start() if(holder && holder.my_atom) holder.clear_reagents() @@ -269,8 +292,10 @@ /datum/chemical_reaction/smoke_powder_smoke name = "smoke_powder_smoke" id = "smoke_powder_smoke" + result = null required_reagents = list("smoke_powder" = 1) required_temp = 374 + result_amount = 1 secondary = 1 mob_react = 1 @@ -281,43 +306,68 @@ S.attach(location) playsound(location, 'sound/effects/smoke.ogg', 50, 1, -3) if(S) - S.set_up(holder, smoke_radius, location, 0) + S.set_up(holder, smoke_radius, 0, location) S.start() if(holder && holder.my_atom) holder.clear_reagents() + + /datum/chemical_reaction/sonic_powder name = "sonic_powder" id = "sonic_powder" - results = list("sonic_powder" = 3) + result = "sonic_powder" required_reagents = list("oxygen" = 1, "cola" = 1, "phosphorus" = 1) + result_amount = 3 /datum/chemical_reaction/sonic_powder/on_reaction(datum/reagents/holder, created_volume) if(holder.has_reagent("stabilizing_agent")) return - holder.remove_reagent("sonic_powder", created_volume*3) + holder.remove_reagent("sonic_powder", created_volume) var/location = get_turf(holder.my_atom) playsound(location, 'sound/effects/bang.ogg', 25, 1) - for(var/mob/living/carbon/C in get_hearers_in_view(created_volume/3, location)) - C.soundbang_act(1, 5, rand(0, 5)) + for(var/mob/living/carbon/C in get_hearers_in_view(created_volume/10, location)) + if(C.check_ear_prot()) + continue + C.show_message("BANG", 2) + C.Stun(5) + C.Weaken(5) + C.setEarDamage(C.ear_damage + rand(0, 5), max(C.ear_deaf,15)) + if(C.ear_damage >= 15) + C << "Your ears start to ring badly!" + else if(C.ear_damage >= 5) + C << "Your ears start to ring!" /datum/chemical_reaction/sonic_powder_deafen name = "sonic_powder_deafen" id = "sonic_powder_deafen" + result = null required_reagents = list("sonic_powder" = 1) required_temp = 374 + result_amount = 1 /datum/chemical_reaction/sonic_powder_deafen/on_reaction(datum/reagents/holder, created_volume) var/location = get_turf(holder.my_atom) playsound(location, 'sound/effects/bang.ogg', 25, 1) for(var/mob/living/carbon/C in get_hearers_in_view(created_volume/10, location)) - C.soundbang_act(1, 5, rand(0, 5)) + if(C.check_ear_prot()) + continue + C.show_message("BANG", 2) + C.Stun(5) + C.Weaken(5) + C.setEarDamage(C.ear_damage + rand(0, 5), max(C.ear_deaf,15)) + if(C.ear_damage >= 15) + C << "Your ears start to ring badly!" + else if(C.ear_damage >= 5) + C << "Your ears start to ring!" + /datum/chemical_reaction/phlogiston name = "phlogiston" id = "phlogiston" - results = list("phlogiston" = 3) + result = "phlogiston" required_reagents = list("phosphorus" = 1, "sacid" = 1, "stable_plasma" = 1) + result_amount = 3 /datum/chemical_reaction/phlogiston/on_reaction(datum/reagents/holder, created_volume) if(holder.has_reagent("stabilizing_agent")) @@ -328,17 +378,21 @@ holder.clear_reagents() return + /datum/chemical_reaction/napalm name = "Napalm" id = "napalm" - results = list("napalm" = 3) + result = "napalm" required_reagents = list("oil" = 1, "welding_fuel" = 1, "ethanol" = 1 ) + result_amount = 3 + /datum/chemical_reaction/cryostylane name = "cryostylane" id = "cryostylane" - results = list("cryostylane" = 3) + result = "cryostylane" required_reagents = list("water" = 1, "stable_plasma" = 1, "nitrogen" = 1) + result_amount = 3 /datum/chemical_reaction/cryostylane/on_reaction(datum/reagents/holder, created_volume) holder.chem_temp = 20 // cools the fuck down @@ -348,58 +402,10 @@ /datum/chemical_reaction/pyrosium name = "pyrosium" id = "pyrosium" - results = list("pyrosium" = 3) + result = "pyrosium" required_reagents = list("stable_plasma" = 1, "radium" = 1, "phosphorus" = 1) + result_amount = 3 /datum/chemical_reaction/pyrosium/on_reaction(datum/reagents/holder, created_volume) holder.chem_temp = 20 // also cools the fuck down return - -/datum/chemical_reaction/teslium - name = "Teslium" - id = "teslium" - results = list("teslium" = 3) - required_reagents = list("stable_plasma" = 1, "silver" = 1, "blackpowder" = 1) - mix_message = "A jet of sparks flies from the mixture as it merges into a flickering slurry." - required_temp = 400 - -/datum/chemical_reaction/reagent_explosion/teslium_lightning - name = "Teslium Destabilization" - id = "teslium_lightning" - required_reagents = list("teslium" = 1, "water" = 1) - results = list("destabilized_teslium" = 1) - strengthdiv = 100 - modifier = -100 - mix_message = "The teslium starts to spark as electricity arcs away from it!" - mix_sound = 'sound/machines/defib_zap.ogg' - -/datum/chemical_reaction/reagent_explosion/teslium_lightning/on_reaction(datum/reagents/holder, created_volume) - var/T1 = created_volume * 20 //100 units : Zap 3 times, with powers 2000/5000/12000. Tesla revolvers have a power of 10000 for comparison. - var/T2 = created_volume * 50 - var/T3 = created_volume * 120 - sleep(5) - if(created_volume >= 75) - tesla_zap(holder.my_atom, 7, T1) - playsound(holder.my_atom, 'sound/machines/defib_zap.ogg', 50, 1) - sleep(15) - if(created_volume >= 40) - tesla_zap(holder.my_atom, 7, T2) - playsound(holder.my_atom, 'sound/machines/defib_zap.ogg', 50, 1) - sleep(15) - if(created_volume >= 10) //10 units minimum for lightning, 40 units for secondary blast, 75 units for tertiary blast. - tesla_zap(holder.my_atom, 7, T3) - playsound(holder.my_atom, 'sound/machines/defib_zap.ogg', 50, 1) - ..() - -/datum/chemical_reaction/reagent_explosion/teslium_lightning/heat - id = "teslium_lightning2" - required_temp = 474 - required_reagents = list("teslium" = 1) - -/datum/chemical_reaction/reagent_explosion/nitrous_oxide - name = "N2O explosion" - id = "n2o_explosion" - required_reagents = list("nitrous_oxide" = 1) - strengthdiv = 7 - required_temp = 575 - modifier = 1 \ No newline at end of file diff --git a/code/modules/reagents/chemistry/recipes/slime_extracts.dm b/code/modules/reagents/chemistry/recipes/slime_extracts.dm index 29d704955a..405df16161 100644 --- a/code/modules/reagents/chemistry/recipes/slime_extracts.dm +++ b/code/modules/reagents/chemistry/recipes/slime_extracts.dm @@ -1,172 +1,152 @@ -/datum/chemical_reaction/slime - -/datum/chemical_reaction/slime/on_reaction(datum/reagents/holder) - delete_extract(holder) - -/datum/chemical_reaction/slime/proc/delete_extract(datum/reagents/holder) - var/obj/item/slime_extract/M = holder.my_atom - if(M.Uses <= 0) - if (!results.len) //if the slime doesn't output chemicals - qdel(M) - //Grey -/datum/chemical_reaction/slime/slimespawn +/datum/chemical_reaction/slimespawn name = "Slime Spawn" id = "m_spawn" + result = null required_reagents = list("plasma" = 1) + result_amount = 1 required_container = /obj/item/slime_extract/grey required_other = 1 -/datum/chemical_reaction/slime/slimespawn/on_reaction(datum/reagents/holder) +/datum/chemical_reaction/slimespawn/on_reaction(datum/reagents/holder) feedback_add_details("slime_cores_used","[type]") var/mob/living/simple_animal/slime/S S = new(get_turf(holder.my_atom), "grey") S.visible_message("Infused with plasma, the \ core begins to quiver and grow, and soon a new baby slime \ emerges from it!") - ..() -/datum/chemical_reaction/slime/slimeinaprov +/datum/chemical_reaction/slimeinaprov name = "Slime epinephrine" id = "m_inaprov" - results = list("epinephrine" = 3) + result = "epinephrine" required_reagents = list("water" = 5) + result_amount = 3 required_other = 1 required_container = /obj/item/slime_extract/grey -/datum/chemical_reaction/slime/slimeinaprov/on_reaction(datum/reagents/holder) +/datum/chemical_reaction/slimeinaprov/on_reaction(datum/reagents/holder) feedback_add_details("slime_cores_used","[type]") - ..() -/datum/chemical_reaction/slime/slimemonkey +/datum/chemical_reaction/slimemonkey name = "Slime Monkey" id = "m_monkey" + result = null required_reagents = list("blood" = 1) + result_amount = 1 required_container = /obj/item/slime_extract/grey required_other = 1 -/datum/chemical_reaction/slime/slimemonkey/on_reaction(datum/reagents/holder) +/datum/chemical_reaction/slimemonkey/on_reaction(datum/reagents/holder) feedback_add_details("slime_cores_used","[type]") for(var/i = 1, i <= 3, i++) var /obj/item/weapon/reagent_containers/food/snacks/monkeycube/M = new /obj/item/weapon/reagent_containers/food/snacks/monkeycube M.loc = get_turf(holder.my_atom) - ..() //Green -/datum/chemical_reaction/slime/slimemutate +/datum/chemical_reaction/slimemutate name = "Mutation Toxin" id = "mutationtoxin" - results = list("mutationtoxin" = 1) + result = "mutationtoxin" required_reagents = list("plasma" = 1) + result_amount = 1 required_other = 1 required_container = /obj/item/slime_extract/green -/datum/chemical_reaction/slime/slimemutate/on_reaction(datum/reagents/holder) +/datum/chemical_reaction/slimemutate/on_reaction(datum/reagents/holder) feedback_add_details("slime_cores_used","[type]") - ..() //Mutated Green -/datum/chemical_reaction/slime/slimemutate_unstable +/datum/chemical_reaction/slimemutate_unstable name = "Unstable Mutation Toxin" id = "unstablemutationtoxin" - results = list("unstablemutationtoxin" = 1) + result = "unstablemutationtoxin" required_reagents = list("radium" = 1) + result_amount = 1 required_other = 1 required_container = /obj/item/slime_extract/green mix_message = "The mixture rapidly expands and contracts, its appearance shifting into a sickening green." -/datum/chemical_reaction/slime/slimemutate_unstable/on_reaction(datum/reagents/holder) +/datum/chemical_reaction/slimemutate_unstable/on_reaction(datum/reagents/holder) feedback_add_details("slime_cores_used","[type]") - ..() //Metal -/datum/chemical_reaction/slime/slimemetal +/datum/chemical_reaction/slimemetal name = "Slime Metal" id = "m_metal" + result = null required_reagents = list("plasma" = 1) + result_amount = 1 required_container = /obj/item/slime_extract/metal required_other = 1 -/datum/chemical_reaction/slime/slimemetal/on_reaction(datum/reagents/holder) +/datum/chemical_reaction/slimemetal/on_reaction(datum/reagents/holder) feedback_add_details("slime_cores_used","[type]") - var/turf/location = get_turf(holder.my_atom) - new /obj/item/stack/sheet/plasteel (location, 5) - new /obj/item/stack/sheet/metal (location, 15) - ..() - -/datum/chemical_reaction/slime/slimeglass - name = "Slime Glass" - id = "m_glass" - required_reagents = list("water" = 1) - required_container = /obj/item/slime_extract/metal - required_other = 1 - -/datum/chemical_reaction/slime/slimeglass/on_reaction(datum/reagents/holder) - feedback_add_details("slime_cores_used","[type]") - var/turf/location = get_turf(holder.my_atom) - new /obj/item/stack/sheet/rglass (location, 5) - new /obj/item/stack/sheet/glass (location, 15) - ..() + var/obj/item/stack/sheet/metal/M = new /obj/item/stack/sheet/metal + M.amount = 15 + M.loc = get_turf(holder.my_atom) + var/obj/item/stack/sheet/plasteel/P = new /obj/item/stack/sheet/plasteel + P.amount = 5 + P.loc = get_turf(holder.my_atom) //Gold -/datum/chemical_reaction/slime/slimecrit +/datum/chemical_reaction/slimecrit name = "Slime Crit" id = "m_tele" + result = null required_reagents = list("plasma" = 1) + result_amount = 1 required_container = /obj/item/slime_extract/gold required_other = 1 -/datum/chemical_reaction/slime/slimecrit/on_reaction(datum/reagents/holder) +/datum/chemical_reaction/slimecrit/on_reaction(datum/reagents/holder) feedback_add_details("slime_cores_used","[type]") var/turf/T = get_turf(holder.my_atom) T.visible_message("The slime extract begins to vibrate violently !") - addtimer(src, "chemical_mob_spawn", 50, TIMER_NORMAL, holder, 5, "Gold Slime") - var/obj/item/slime_extract/M = holder.my_atom - deltimer(M.qdel_timer) - M.qdel_timer = addtimer(src, "delete_extract", 55, TIMER_NORMAL, holder) + addtimer(src, "chemical_mob_spawn", 50, FALSE, holder, 5, "Gold Slime") -/datum/chemical_reaction/slime/slimecritlesser +/datum/chemical_reaction/slimecritlesser name = "Slime Crit Lesser" id = "m_tele3" + result = null required_reagents = list("blood" = 1) + result_amount = 1 required_container = /obj/item/slime_extract/gold required_other = 1 -/datum/chemical_reaction/slime/slimecritlesser/on_reaction(datum/reagents/holder) +/datum/chemical_reaction/slimecritlesser/on_reaction(datum/reagents/holder) feedback_add_details("slime_cores_used","[type]") var/turf/T = get_turf(holder.my_atom) T.visible_message("The slime extract begins to vibrate violently !") - addtimer(src, "chemical_mob_spawn", 50, TIMER_NORMAL, holder, 3, "Lesser Gold Slime", "neutral") - var/obj/item/slime_extract/M = holder.my_atom - deltimer(M.qdel_timer) - M.qdel_timer = addtimer(src, "delete_extract", 55, TIMER_NORMAL, holder) + addtimer(src, "chemical_mob_spawn", 50, FALSE, holder, 3, "Lesser Gold Slime", "neutral") -/datum/chemical_reaction/slime/slimecritfriendly +/datum/chemical_reaction/slimecritfriendly name = "Slime Crit Friendly" id = "m_tele5" + result = null required_reagents = list("water" = 1) + result_amount = 1 required_container = /obj/item/slime_extract/gold required_other = 1 -/datum/chemical_reaction/slime/slimecritfriendly/on_reaction(datum/reagents/holder) +/datum/chemical_reaction/slimecritfriendly/on_reaction(datum/reagents/holder) feedback_add_details("slime_cores_used","[type]") var/turf/T = get_turf(holder.my_atom) T.visible_message("The slime extract begins to vibrate adorably !") - addtimer(src, "chemical_mob_spawn", 50, TIMER_NORMAL, holder, 1, "Friendly Gold Slime", "neutral") - var/obj/item/slime_extract/M = holder.my_atom - deltimer(M.qdel_timer) - M.qdel_timer = addtimer(src, "delete_extract", 55, TIMER_NORMAL, holder) + addtimer(src, "chemical_mob_spawn", 50, FALSE, holder, 1, "Friendly Gold Slime", "neutral") //Silver -/datum/chemical_reaction/slime/slimebork +/datum/chemical_reaction/slimebork name = "Slime Bork" id = "m_tele2" + result = null required_reagents = list("plasma" = 1) + result_amount = 1 required_container = /obj/item/slime_extract/silver required_other = 1 -/datum/chemical_reaction/slime/slimebork/on_reaction(datum/reagents/holder) +/datum/chemical_reaction/slimebork/on_reaction(datum/reagents/holder) feedback_add_details("slime_cores_used","[type]") var/list/blocked = list(/obj/item/weapon/reagent_containers/food/snacks, @@ -194,7 +174,7 @@ playsound(get_turf(holder.my_atom), 'sound/effects/phasein.ogg', 100, 1) for(var/mob/living/carbon/C in viewers(get_turf(holder.my_atom), null)) - C.flash_act() + C.flash_eyes() for(var/i = 1, i <= 4 + rand(1,2), i++) var/chosen = pick(borks) @@ -204,17 +184,18 @@ if(prob(50)) for(var/j = 1, j <= rand(1, 3), j++) step(B, pick(NORTH,SOUTH,EAST,WEST)) - ..() -/datum/chemical_reaction/slime/slimebork2 +/datum/chemical_reaction/slimebork2 name = "Slime Bork 2" id = "m_tele4" + result = null required_reagents = list("water" = 1) + result_amount = 1 required_container = /obj/item/slime_extract/silver required_other = 1 -/datum/chemical_reaction/slime/slimebork2/on_reaction(datum/reagents/holder) +/datum/chemical_reaction/slimebork2/on_reaction(datum/reagents/holder) feedback_add_details("slime_cores_used","[type]") var/list/borks = subtypesof(/obj/item/weapon/reagent_containers/food/drinks) @@ -223,7 +204,7 @@ playsound(get_turf(holder.my_atom), 'sound/effects/phasein.ogg', 100, 1) for(var/mob/living/carbon/M in viewers(get_turf(holder.my_atom), null)) - M.flash_act() + M.flash_eyes() for(var/i = 1, i <= 4 + rand(1,2), i++) var/chosen = pick(borks) @@ -233,314 +214,288 @@ if(prob(50)) for(var/j = 1, j <= rand(1, 3), j++) step(B, pick(NORTH,SOUTH,EAST,WEST)) - ..() //Blue -/datum/chemical_reaction/slime/slimefrost +/datum/chemical_reaction/slimefrost name = "Slime Frost Oil" id = "m_frostoil" - results = list("frostoil" = 10) + result = "frostoil" required_reagents = list("plasma" = 1) + result_amount = 10 required_container = /obj/item/slime_extract/blue required_other = 1 -/datum/chemical_reaction/slime/slimefrost/on_reaction(datum/reagents/holder) +/datum/chemical_reaction/slimefrost/on_reaction(datum/reagents/holder) feedback_add_details("slime_cores_used","[type]") - ..() -/datum/chemical_reaction/slime/slimestabilizer +/datum/chemical_reaction/slimestabilizer name = "Slime Stabilizer" id = "m_slimestabilizer" + result = null required_reagents = list("blood" = 1) + result_amount = 1 required_container = /obj/item/slime_extract/blue required_other = 1 -/datum/chemical_reaction/slime/slimestabilizer/on_reaction(datum/reagents/holder) +/datum/chemical_reaction/slimestabilizer/on_reaction(datum/reagents/holder) feedback_add_details("slime_cores_used","[type]") var/obj/item/slimepotion/stabilizer/P = new /obj/item/slimepotion/stabilizer P.loc = get_turf(holder.my_atom) - ..() -/datum/chemical_reaction/slime/slimefoam - name = "Slime Foam" - id = "m_foam" - results = list("fluorosurfactant" = 20, "water" = 20) - required_reagents = list("water" = 5) - required_container = /obj/item/slime_extract/blue - required_other = 1 - -/datum/chemical_reaction/slime/slimefoam/on_reaction(datum/reagents/holder) - feedback_add_details("slime_cores_used","[type]") - ..() - //Dark Blue -/datum/chemical_reaction/slime/slimefreeze +/datum/chemical_reaction/slimefreeze name = "Slime Freeze" id = "m_freeze" + result = null required_reagents = list("plasma" = 1) + result_amount = 1 required_container = /obj/item/slime_extract/darkblue required_other = 1 -/datum/chemical_reaction/slime/slimefreeze/on_reaction(datum/reagents/holder) +/datum/chemical_reaction/slimefreeze/on_reaction(datum/reagents/holder) feedback_add_details("slime_cores_used","[type]") var/turf/T = get_turf(holder.my_atom) T.visible_message("The slime extract begins to vibrate adorably!") - addtimer(src, "freeze", 50, TIMER_NORMAL, holder) - var/obj/item/slime_extract/M = holder.my_atom - deltimer(M.qdel_timer) - M.qdel_timer = addtimer(src, "delete_extract", 55, TIMER_NORMAL, holder) - -/datum/chemical_reaction/slime/slimefreeze/proc/freeze(datum/reagents/holder) + addtimer(src, "freeze", 50, FALSE, holder) +/datum/chemical_reaction/slimefreeze/proc/freeze(datum/reagents/holder) if(holder && holder.my_atom) - var/turf/open/T = get_turf(holder.my_atom) - if(istype(T)) - T.atmos_spawn_air("freon=50;TEMP=120") + var/turf/T = get_turf(holder.my_atom) + playsound(T, 'sound/effects/phasein.ogg', 100, 1) + for(var/mob/living/M in range(T, 7)) + M.bodytemperature -= 240 + M << "You feel a chill!" - -/datum/chemical_reaction/slime/slimefireproof +/datum/chemical_reaction/slimefireproof name = "Slime Fireproof" id = "m_fireproof" + result = null required_reagents = list("water" = 1) + result_amount = 1 required_container = /obj/item/slime_extract/darkblue required_other = 1 -/datum/chemical_reaction/slime/slimefireproof/on_reaction(datum/reagents/holder) +/datum/chemical_reaction/slimefireproof/on_reaction(datum/reagents/holder) feedback_add_details("slime_cores_used","[type]") var/obj/item/slimepotion/fireproof/P = new /obj/item/slimepotion/fireproof P.loc = get_turf(holder.my_atom) - ..() //Orange -/datum/chemical_reaction/slime/slimecasp +/datum/chemical_reaction/slimecasp name = "Slime Capsaicin Oil" id = "m_capsaicinoil" - results = list("capsaicin" = 10) + result = "capsaicin" required_reagents = list("blood" = 1) + result_amount = 10 required_container = /obj/item/slime_extract/orange required_other = 1 -/datum/chemical_reaction/slime/slimecasp/on_reaction(datum/reagents/holder) +/datum/chemical_reaction/slimecasp/on_reaction(datum/reagents/holder) feedback_add_details("slime_cores_used","[type]") - ..() -/datum/chemical_reaction/slime/slimefire +/datum/chemical_reaction/slimefire name = "Slime fire" id = "m_fire" + result = null required_reagents = list("plasma" = 1) + result_amount = 1 required_container = /obj/item/slime_extract/orange required_other = 1 -/datum/chemical_reaction/slime/slimefire/on_reaction(datum/reagents/holder) +/datum/chemical_reaction/slimefire/on_reaction(datum/reagents/holder) feedback_add_details("slime_cores_used","[type]") var/turf/TU = get_turf(holder.my_atom) TU.visible_message("The slime extract begins to vibrate adorably!") - addtimer(src, "slime_burn", 50, TIMER_NORMAL, holder) - var/obj/item/slime_extract/M = holder.my_atom - deltimer(M.qdel_timer) - M.qdel_timer = addtimer(src, "delete_extract", 55, TIMER_NORMAL, holder) + addtimer(src, "burn", 50, FALSE, holder) -/datum/chemical_reaction/slime/slimefire/proc/slime_burn(datum/reagents/holder) + +/datum/chemical_reaction/slimefire/proc/burn(datum/reagents/holder) if(holder && holder.my_atom) var/turf/open/T = get_turf(holder.my_atom) if(istype(T)) T.atmos_spawn_air("plasma=50;TEMP=1000") - -/datum/chemical_reaction/slime/slimesmoke - name = "Slime Smoke" - id = "m_smoke" - results = list("phosphorus" = 10, "potassium" = 10, "sugar" = 10) - required_reagents = list("water" = 5) - required_container = /obj/item/slime_extract/orange - required_other = 1 - -/datum/chemical_reaction/slime/slimesmoke/on_reaction(datum/reagents/holder) - feedback_add_details("slime_cores_used","[type]") - ..() - //Yellow -/datum/chemical_reaction/slime/slimeoverload +/datum/chemical_reaction/slimeoverload name = "Slime EMP" id = "m_emp" + result = null required_reagents = list("blood" = 1) + result_amount = 1 required_container = /obj/item/slime_extract/yellow required_other = 1 -/datum/chemical_reaction/slime/slimeoverload/on_reaction(datum/reagents/holder, created_volume) +/datum/chemical_reaction/slimeoverload/on_reaction(datum/reagents/holder, created_volume) feedback_add_details("slime_cores_used","[type]") empulse(get_turf(holder.my_atom), 3, 7) - ..() -/datum/chemical_reaction/slime/slimecell +/datum/chemical_reaction/slimecell name = "Slime Powercell" id = "m_cell" + result = null required_reagents = list("plasma" = 1) + result_amount = 1 required_container = /obj/item/slime_extract/yellow required_other = 1 -/datum/chemical_reaction/slime/slimecell/on_reaction(datum/reagents/holder, created_volume) +/datum/chemical_reaction/slimecell/on_reaction(datum/reagents/holder, created_volume) feedback_add_details("slime_cores_used","[type]") var/obj/item/weapon/stock_parts/cell/high/slime/P = new /obj/item/weapon/stock_parts/cell/high/slime P.loc = get_turf(holder.my_atom) - ..() -/datum/chemical_reaction/slime/slimeglow +/datum/chemical_reaction/slimeglow name = "Slime Glow" id = "m_glow" + result = null required_reagents = list("water" = 1) + result_amount = 1 required_container = /obj/item/slime_extract/yellow required_other = 1 -/datum/chemical_reaction/slime/slimeglow/on_reaction(datum/reagents/holder) +/datum/chemical_reaction/slimeglow/on_reaction(datum/reagents/holder) feedback_add_details("slime_cores_used","[type]") var/turf/T = get_turf(holder.my_atom) T.visible_message("The slime begins to emit a soft light. Squeezing it will cause it to grow brightly.") var/obj/item/device/flashlight/slime/F = new /obj/item/device/flashlight/slime F.loc = get_turf(holder.my_atom) - ..() //Purple -/datum/chemical_reaction/slime/slimepsteroid +/datum/chemical_reaction/slimepsteroid name = "Slime Steroid" id = "m_steroid" + result = null required_reagents = list("plasma" = 1) + result_amount = 1 required_container = /obj/item/slime_extract/purple required_other = 1 -/datum/chemical_reaction/slime/slimepsteroid/on_reaction(datum/reagents/holder) +/datum/chemical_reaction/slimepsteroid/on_reaction(datum/reagents/holder) feedback_add_details("slime_cores_used","[type]") var/obj/item/slimepotion/steroid/P = new /obj/item/slimepotion/steroid P.loc = get_turf(holder.my_atom) - ..() -/datum/chemical_reaction/slime/slimejam +/datum/chemical_reaction/slimejam name = "Slime Jam" id = "m_jam" - results = list("slimejelly" = 10) + result = "slimejelly" required_reagents = list("sugar" = 1) + result_amount = 10 required_container = /obj/item/slime_extract/purple required_other = 1 -/datum/chemical_reaction/slime/slimejam/on_reaction(datum/reagents/holder) +/datum/chemical_reaction/slimejam/on_reaction(datum/reagents/holder) feedback_add_details("slime_cores_used","[type]") - ..() //Dark Purple -/datum/chemical_reaction/slime/slimeplasma +/datum/chemical_reaction/slimeplasma name = "Slime Plasma" id = "m_plasma" + result = null required_reagents = list("plasma" = 1) + result_amount = 1 required_container = /obj/item/slime_extract/darkpurple required_other = 1 -/datum/chemical_reaction/slime/slimeplasma/on_reaction(datum/reagents/holder) +/datum/chemical_reaction/slimeplasma/on_reaction(datum/reagents/holder) feedback_add_details("slime_cores_used","[type]") - var/turf/location = get_turf(holder.my_atom) - new /obj/item/stack/sheet/mineral/plasma (location, 3) - ..() + var/obj/item/stack/sheet/mineral/plasma/P = new /obj/item/stack/sheet/mineral/plasma + P.amount = 3 + P.loc = get_turf(holder.my_atom) //Red -/datum/chemical_reaction/slime/slimemutator +/datum/chemical_reaction/slimemutator name = "Slime Mutator" id = "m_slimemutator" + result = null required_reagents = list("plasma" = 1) + result_amount = 1 required_container = /obj/item/slime_extract/red required_other = 1 -/datum/chemical_reaction/slime/slimemutator/on_reaction(datum/reagents/holder) +/datum/chemical_reaction/slimemutator/on_reaction(datum/reagents/holder) feedback_add_details("slime_cores_used","[type]") var/obj/item/slimepotion/mutator/P = new /obj/item/slimepotion/mutator P.loc = get_turf(holder.my_atom) - ..() -/datum/chemical_reaction/slime/slimebloodlust +/datum/chemical_reaction/slimebloodlust name = "Bloodlust" id = "m_bloodlust" + result = null required_reagents = list("blood" = 1) + result_amount = 1 required_container = /obj/item/slime_extract/red required_other = 1 -/datum/chemical_reaction/slime/slimebloodlust/on_reaction(datum/reagents/holder) +/datum/chemical_reaction/slimebloodlust/on_reaction(datum/reagents/holder) feedback_add_details("slime_cores_used","[type]") for(var/mob/living/simple_animal/slime/slime in viewers(get_turf(holder.my_atom), null)) slime.rabid = 1 slime.visible_message("The [slime] is driven into a frenzy!") - ..() -/datum/chemical_reaction/slime/slimespeed +/datum/chemical_reaction/slimespeed name = "Slime Speed" id = "m_speed" + result = null required_reagents = list("water" = 1) + result_amount = 1 required_container = /obj/item/slime_extract/red required_other = 1 -/datum/chemical_reaction/slime/slimespeed/on_reaction(datum/reagents/holder) +/datum/chemical_reaction/slimespeed/on_reaction(datum/reagents/holder) feedback_add_details("slime_cores_used","[type]") var/obj/item/slimepotion/speed/P = new /obj/item/slimepotion/speed P.loc = get_turf(holder.my_atom) - ..() //Pink -/datum/chemical_reaction/slime/docility +/datum/chemical_reaction/docility name = "Docility Potion" id = "m_potion" + result = null required_reagents = list("plasma" = 1) + result_amount = 1 required_container = /obj/item/slime_extract/pink required_other = 1 -/datum/chemical_reaction/slime/docility/on_reaction(datum/reagents/holder) +/datum/chemical_reaction/docility/on_reaction(datum/reagents/holder) feedback_add_details("slime_cores_used","[type]") var/obj/item/slimepotion/docility/P = new /obj/item/slimepotion/docility P.loc = get_turf(holder.my_atom) - ..() - -/datum/chemical_reaction/slime/gender - name = "Gender Potion" - id = "m_gender" - required_reagents = list("blood" = 1) - required_container = /obj/item/slime_extract/pink - required_other = 1 - -/datum/chemical_reaction/slime/gender/on_reaction(datum/reagents/holder) - feedback_add_details("slime_cores_used","[type]") - var/obj/item/slimepotion/genderchange/G = new /obj/item/slimepotion/genderchange - G.loc = get_turf(holder.my_atom) - ..() //Black -/datum/chemical_reaction/slime/slimemutate2 +/datum/chemical_reaction/slimemutate2 name = "Advanced Mutation Toxin" id = "mutationtoxin2" - results = list("amutationtoxin" = 1) + result = "amutationtoxin" required_reagents = list("plasma" = 1) + result_amount = 1 required_other = 1 required_container = /obj/item/slime_extract/black -/datum/chemical_reaction/slime/slimemutate2/on_reaction(datum/reagents/holder) +/datum/chemical_reaction/slimemutate2/on_reaction(datum/reagents/holder) feedback_add_details("slime_cores_used","[type]") - ..() //Oil -/datum/chemical_reaction/slime/slimeexplosion +/datum/chemical_reaction/slimeexplosion name = "Slime Explosion" id = "m_explosion" + result = null required_reagents = list("plasma" = 1) + result_amount = 1 required_container = /obj/item/slime_extract/oil required_other = 1 -/datum/chemical_reaction/slime/slimeexplosion/on_reaction(datum/reagents/holder) +/datum/chemical_reaction/slimeexplosion/on_reaction(datum/reagents/holder) feedback_add_details("slime_cores_used","[type]") var/turf/T = get_turf(holder.my_atom) var/lastkey = holder.my_atom.fingerprintslast @@ -551,240 +506,206 @@ message_admins("Slime Explosion reaction started at [T.loc.name] (JMP). Last Fingerprint: [touch_msg]") log_game("Slime Explosion reaction started at [T.loc.name] ([T.x],[T.y],[T.z]). Last Fingerprint: [lastkey ? lastkey : "N/A"].") T.visible_message("The slime extract begins to vibrate violently !") - addtimer(src, "boom", 50, TIMER_NORMAL, holder) - var/obj/item/slime_extract/M = holder.my_atom - deltimer(M.qdel_timer) - M.qdel_timer = addtimer(src, "delete_extract", 55, TIMER_NORMAL, holder) + addtimer(src, "boom", 50, FALSE, holder) -/datum/chemical_reaction/slime/slimeexplosion/proc/boom(datum/reagents/holder) +/datum/chemical_reaction/slimeexplosion/proc/boom(datum/reagents/holder) if(holder && holder.my_atom) explosion(get_turf(holder.my_atom), 1 ,3, 6) - -/datum/chemical_reaction/slime/slimecornoil - name = "Slime Corn Oil" - id = "m_cornoil" - results = list("cornoil" = 10) - required_reagents = list("blood" = 1) - required_container = /obj/item/slime_extract/oil - required_other = 1 - -/datum/chemical_reaction/slime/slimecornoil/on_reaction(datum/reagents/holder) - feedback_add_details("slime_cores_used","[type]") - ..() - //Light Pink -/datum/chemical_reaction/slime/slimepotion2 +/datum/chemical_reaction/slimepotion2 name = "Slime Potion 2" id = "m_potion2" + result = null + result_amount = 1 required_container = /obj/item/slime_extract/lightpink required_reagents = list("plasma" = 1) required_other = 1 -/datum/chemical_reaction/slime/slimepotion2/on_reaction(datum/reagents/holder) +/datum/chemical_reaction/slimepotion2/on_reaction(datum/reagents/holder) feedback_add_details("slime_cores_used","[type]") var/obj/item/slimepotion/sentience/P = new /obj/item/slimepotion/sentience P.loc = get_turf(holder.my_atom) - ..() //Adamantine -/datum/chemical_reaction/slime/slimegolem +/datum/chemical_reaction/slimegolem name = "Slime Golem" id = "m_golem" + result = null required_reagents = list("plasma" = 1) + result_amount = 1 required_container = /obj/item/slime_extract/adamantine required_other = 1 -/datum/chemical_reaction/slime/slimegolem/on_reaction(datum/reagents/holder) +/datum/chemical_reaction/slimegolem/on_reaction(datum/reagents/holder) feedback_add_details("slime_cores_used","[type]") var/obj/effect/golemrune/Z = new /obj/effect/golemrune Z.loc = get_turf(holder.my_atom) notify_ghosts("Golem rune created in [get_area(Z)].", 'sound/effects/ghost2.ogg', source = Z) - ..() - -/datum/chemical_reaction/slime/slimegolem2 - name = "Slime Golem 2" - id = "m_golem2" - required_reagents = list("iron" = 1) - required_container = /obj/item/slime_extract/adamantine - required_other = 1 - -/datum/chemical_reaction/slime/slimegolem2/on_reaction(datum/reagents/holder) - feedback_add_details("slime_cores_used","[type]") - var/obj/item/golem_shell/artificial/Z = new /obj/item/golem_shell/artificial - Z.loc = get_turf(holder.my_atom) - notify_ghosts("Artificial golem shell created in [get_area(Z)].", 'sound/effects/ghost2.ogg', source = Z) - ..() //Bluespace -/datum/chemical_reaction/slime/slimefloor2 +/datum/chemical_reaction/slimefloor2 name = "Bluespace Floor" id = "m_floor2" + result = null required_reagents = list("blood" = 1) + result_amount = 1 required_container = /obj/item/slime_extract/bluespace required_other = 1 -/datum/chemical_reaction/slime/slimefloor2/on_reaction(datum/reagents/holder, created_volume) +/datum/chemical_reaction/slimefloor2/on_reaction(datum/reagents/holder, created_volume) feedback_add_details("slime_cores_used","[type]") var/obj/item/stack/tile/bluespace/P = new /obj/item/stack/tile/bluespace P.amount = 25 P.loc = get_turf(holder.my_atom) - ..() -/datum/chemical_reaction/slime/slimecrystal +/datum/chemical_reaction/slimecrystal name = "Slime Crystal" id = "m_crystal" + result = null required_reagents = list("plasma" = 1) + result_amount = 1 required_container = /obj/item/slime_extract/bluespace required_other = 1 -/datum/chemical_reaction/slime/slimecrystal/on_reaction(datum/reagents/holder, created_volume) +/datum/chemical_reaction/slimecrystal/on_reaction(datum/reagents/holder, created_volume) feedback_add_details("slime_cores_used","[type]") if(holder.my_atom) var/obj/item/weapon/ore/bluespace_crystal/BC = new(get_turf(holder.my_atom)) BC.visible_message("The [BC.name] appears out of thin air!") - ..() //Cerulean -/datum/chemical_reaction/slime/slimepsteroid2 +/datum/chemical_reaction/slimepsteroid2 name = "Slime Steroid 2" id = "m_steroid2" + result = null required_reagents = list("plasma" = 1) + result_amount = 1 required_container = /obj/item/slime_extract/cerulean required_other = 1 -/datum/chemical_reaction/slime/slimepsteroid2/on_reaction(datum/reagents/holder) +/datum/chemical_reaction/slimepsteroid2/on_reaction(datum/reagents/holder) feedback_add_details("slime_cores_used","[type]") var/obj/item/slimepotion/enhancer/P = new /obj/item/slimepotion/enhancer P.loc = get_turf(holder.my_atom) - ..() -/datum/chemical_reaction/slime/slime_territory + +/datum/chemical_reaction/slime_territory name = "Slime Territory" id = "s_territory" + result = null required_reagents = list("blood" = 1) + result_amount = 1 required_container = /obj/item/slime_extract/cerulean required_other = 1 -/datum/chemical_reaction/slime/slime_territory/on_reaction(datum/reagents/holder) +/datum/chemical_reaction/slime_territory/on_reaction(datum/reagents/holder) feedback_add_details("slime_cores_used","[type]") var/obj/item/areaeditor/blueprints/slime/P = new /obj/item/areaeditor/blueprints/slime P.loc = get_turf(holder.my_atom) - ..() //Sepia -/datum/chemical_reaction/slime/slimestop +/datum/chemical_reaction/slimestop name = "Slime Stop" id = "m_stop" + result = null required_reagents = list("plasma" = 1) + result_amount = 1 required_container = /obj/item/slime_extract/sepia required_other = 1 -/datum/chemical_reaction/slime/slimestop/on_reaction(datum/reagents/holder) +/datum/chemical_reaction/slimestop/on_reaction(datum/reagents/holder) feedback_add_details("slime_cores_used","[type]") var/mob/mob = get_mob_by_key(holder.my_atom.fingerprintslast) var/obj/effect/timestop/T = new /obj/effect/timestop T.loc = get_turf(holder.my_atom) T.immune += mob T.timestop() - ..() -/datum/chemical_reaction/slime/slimecamera +/datum/chemical_reaction/slimecamera name = "Slime Camera" id = "m_camera" + result = null required_reagents = list("water" = 1) + result_amount = 1 required_container = /obj/item/slime_extract/sepia required_other = 1 -/datum/chemical_reaction/slime/slimecamera/on_reaction(datum/reagents/holder) +/datum/chemical_reaction/slimecamera/on_reaction(datum/reagents/holder) feedback_add_details("slime_cores_used","[type]") var/obj/item/device/camera/P = new /obj/item/device/camera P.loc = get_turf(holder.my_atom) var/obj/item/device/camera_film/Z = new /obj/item/device/camera_film Z.loc = get_turf(holder.my_atom) - ..() -/datum/chemical_reaction/slime/slimefloor +/datum/chemical_reaction/slimefloor name = "Sepia Floor" id = "m_floor" + result = null required_reagents = list("blood" = 1) + result_amount = 1 required_container = /obj/item/slime_extract/sepia required_other = 1 -/datum/chemical_reaction/slime/slimefloor/on_reaction(datum/reagents/holder) +/datum/chemical_reaction/slimefloor/on_reaction(datum/reagents/holder) feedback_add_details("slime_cores_used","[type]") var/obj/item/stack/tile/sepia/P = new /obj/item/stack/tile/sepia P.amount = 25 P.loc = get_turf(holder.my_atom) - ..() //Pyrite -/datum/chemical_reaction/slime/slimepaint +/datum/chemical_reaction/slimepaint name = "Slime Paint" id = "s_paint" + result = null required_reagents = list("plasma" = 1) + result_amount = 1 required_container = /obj/item/slime_extract/pyrite required_other = 1 -/datum/chemical_reaction/slime/slimepaint/on_reaction(datum/reagents/holder) +/datum/chemical_reaction/slimepaint/on_reaction(datum/reagents/holder) feedback_add_details("slime_cores_used","[type]") var/list/paints = subtypesof(/obj/item/weapon/paint) var/chosen = pick(paints) var/obj/P = new chosen if(P) P.loc = get_turf(holder.my_atom) - ..() - - -/datum/chemical_reaction/slime/slimecrayon - name = "Slime Crayon" - id = "s_crayon" - required_reagents = list("blood" = 1) - required_container = /obj/item/slime_extract/pyrite - required_other = 1 - -/datum/chemical_reaction/slime/slimecrayon/on_reaction(datum/reagents/holder) - feedback_add_details("slime_cores_used","[type]") - var/list/crayons = difflist(subtypesof(/obj/item/toy/crayon),typesof(/obj/item/toy/crayon/spraycan)) - var/chosen = pick(crayons) - var/obj/P = new chosen - if(P) - P.loc = get_turf(holder.my_atom) - ..() //Rainbow :o) -/datum/chemical_reaction/slime/slimeRNG +/datum/chemical_reaction/slimeRNG name = "Random Core" id = "slimerng" + result = null required_reagents = list("plasma" = 1) + result_amount = 1 required_other = 1 required_container = /obj/item/slime_extract/rainbow -/datum/chemical_reaction/slime/slimeRNG/on_reaction(datum/reagents/holder) +/datum/chemical_reaction/slimeRNG/on_reaction(datum/reagents/holder) feedback_add_details("slime_cores_used","[type]") var/mob/living/simple_animal/slime/random/S S = new(get_turf(holder.my_atom)) S.visible_message("Infused with plasma, the \ core begins to quiver and grow, and soon a new baby slime emerges \ from it!") - ..() -/datum/chemical_reaction/slime/slime_transfer +/datum/chemical_reaction/slime_transfer name = "Transfer Potion" id = "slimetransfer" + result = null required_reagents = list("blood" = 1) + result_amount = 1 required_other = 1 required_container = /obj/item/slime_extract/rainbow -/datum/chemical_reaction/slime/slime_transfer/on_reaction(datum/reagents/holder) +/datum/chemical_reaction/slime_transfer/on_reaction(datum/reagents/holder) feedback_add_details("slime_cores_used","[type]") var/obj/item/slimepotion/transference/P = new /obj/item/slimepotion/transference P.loc = get_turf(holder.my_atom) - ..() diff --git a/code/modules/reagents/chemistry/recipes/toxins.dm b/code/modules/reagents/chemistry/recipes/toxins.dm index 233e6fd1bc..c83fa4176b 100644 --- a/code/modules/reagents/chemistry/recipes/toxins.dm +++ b/code/modules/reagents/chemistry/recipes/toxins.dm @@ -2,101 +2,111 @@ /datum/chemical_reaction/formaldehyde name = "formaldehyde" id = "Formaldehyde" - results = list("formaldehyde" = 3) + result = "formaldehyde" required_reagents = list("ethanol" = 1, "oxygen" = 1, "silver" = 1) + result_amount = 3 required_temp = 420 /datum/chemical_reaction/neurotoxin2 name = "neurotoxin2" id = "neurotoxin2" - results = list("neurotoxin2" = 1) + result = "neurotoxin2" required_reagents = list("space_drugs" = 1) + result_amount = 1 required_temp = 674 /datum/chemical_reaction/cyanide name = "Cyanide" id = "cyanide" - results = list("cyanide" = 3) + result = "cyanide" required_reagents = list("oil" = 1, "ammonia" = 1, "oxygen" = 1) + result_amount = 3 required_temp = 380 /datum/chemical_reaction/itching_powder name = "Itching Powder" id = "itching_powder" - results = list("itching_powder" = 3) + result = "itching_powder" required_reagents = list("welding_fuel" = 1, "ammonia" = 1, "charcoal" = 1) + result_amount = 3 /datum/chemical_reaction/facid name = "Fluorosulfuric acid" id = "facid" - results = list("facid" = 4) + result = "facid" required_reagents = list("sacid" = 1, "fluorine" = 1, "hydrogen" = 1, "potassium" = 1) + result_amount = 4 required_temp = 380 /datum/chemical_reaction/sulfonal name = "sulfonal" id = "sulfonal" - results = list("sulfonal" = 3) + result = "sulfonal" required_reagents = list("acetone" = 1, "diethylamine" = 1, "sulfur" = 1) + result_amount = 3 /datum/chemical_reaction/lipolicide name = "lipolicide" id = "lipolicide" - results = list("lipolicide" = 3) + result = "lipolicide" required_reagents = list("mercury" = 1, "diethylamine" = 1, "ephedrine" = 1) + result_amount = 3 /datum/chemical_reaction/mutagen name = "Unstable mutagen" id = "mutagen" - results = list("mutagen" = 3) + result = "mutagen" required_reagents = list("radium" = 1, "phosphorus" = 1, "chlorine" = 1) + result_amount = 3 /datum/chemical_reaction/lexorin name = "Lexorin" id = "lexorin" - results = list("lexorin" = 3) + result = "lexorin" required_reagents = list("plasma" = 1, "hydrogen" = 1, "nitrogen" = 1) + result_amount = 3 /datum/chemical_reaction/chloralhydrate name = "Chloral Hydrate" id = "chloralhydrate" - results = list("chloralhydrate" = 1) + result = "chloralhydrate" required_reagents = list("ethanol" = 1, "chlorine" = 3, "water" = 1) + result_amount = 1 /datum/chemical_reaction/mutetoxin //i'll just fit this in here snugly between other unfun chemicals :v name = "Mute toxin" id = "mutetoxin" - results = list("mutetoxin" = 2) + result = "mutetoxin" required_reagents = list("uranium" = 2, "water" = 1, "carbon" = 1) + result_amount = 2 /datum/chemical_reaction/zombiepowder name = "Zombie Powder" id = "zombiepowder" - results = list("zombiepowder" = 2) + result = "zombiepowder" required_reagents = list("carpotoxin" = 5, "morphine" = 5, "copper" = 5) + result_amount = 2 /datum/chemical_reaction/mindbreaker name = "Mindbreaker Toxin" id = "mindbreaker" - results = list("mindbreaker" = 5) + result = "mindbreaker" required_reagents = list("silicon" = 1, "hydrogen" = 1, "charcoal" = 1) + result_amount = 5 + +/datum/chemical_reaction/teslium + name = "Teslium" + id = "teslium" + result = "teslium" + required_reagents = list("plasma" = 1, "silver" = 1, "blackpowder" = 1) + result_amount = 3 + mix_message = "A jet of sparks flies from the mixture as it merges into a flickering slurry." + required_temp = 400 /datum/chemical_reaction/heparin name = "Heparin" id = "Heparin" - results = list("heparin" = 4) + result = "heparin" required_reagents = list("formaldehyde" = 1, "sodium" = 1, "chlorine" = 1, "lithium" = 1) + result_amount = 4 mix_message = "The mixture thins and loses all color." - -/datum/chemical_reaction/rotatium - name = "Rotatium" - id = "Rotatium" - results = list("rotatium" = 3) - required_reagents = list("mindbreaker" = 1, "teslium" = 1, "neurotoxin2" = 1) - mix_message = "After sparks, fire, and the smell of mindbreaker, the mix is constantly spinning with no stop in sight." - -/datum/chemical_reaction/anacea - name = "Anacea" - id = "anacea" - results = list("anacea" = 3) - required_reagents = list("haloperidol" = 1, "impedrezene" = 1, "radium" = 1) \ No newline at end of file diff --git a/code/modules/reagents/reagent_containers.dm b/code/modules/reagents/reagent_containers.dm index 70a1c2c442..91d90251e2 100644 --- a/code/modules/reagents/reagent_containers.dm +++ b/code/modules/reagents/reagent_containers.dm @@ -3,7 +3,7 @@ desc = "..." icon = 'icons/obj/chemical.dmi' icon_state = null - w_class = WEIGHT_CLASS_TINY + w_class = 1 var/amount_per_transfer_from_this = 5 var/list/possible_transfer_amounts = list(5,10,15,20,25,30) var/volume = 30 @@ -38,7 +38,7 @@ return /obj/item/weapon/reagent_containers/attack(mob/M, mob/user, def_zone) - if(user.a_intent == INTENT_HARM) + if(user.a_intent == "harm") return ..() /obj/item/weapon/reagent_containers/afterattack(obj/target, mob/user , flag) @@ -62,7 +62,7 @@ else if(C.is_mouth_covered(mask_only = 1)) covered = "mask" if(covered) - var/who = (isnull(user) || eater == user) ? "your" : "[eater.p_their()]" + var/who = (isnull(user) || eater == user) ? "your" : "their" user << "You have to remove [who] [covered] first!" return 0 return 1 @@ -71,10 +71,9 @@ if(reagents) for(var/datum/reagent/R in reagents.reagent_list) R.on_ex_act() - if(!qdeleted(src)) - ..() + ..() -/obj/item/weapon/reagent_containers/fire_act(exposed_temperature, exposed_volume) +/obj/item/weapon/reagent_containers/fire_act() reagents.chem_temp += 30 reagents.handle_reactions() ..() @@ -110,9 +109,3 @@ return reagents.clear_reagents() - -/obj/item/weapon/reagent_containers/microwave_act(obj/machinery/microwave/M) - if(is_open_container()) - reagents.chem_temp = max(reagents.chem_temp, 1000) - reagents.handle_reactions() - ..() \ No newline at end of file diff --git a/code/modules/reagents/reagent_containers/blood_pack.dm b/code/modules/reagents/reagent_containers/blood_pack.dm index 1ed89a74db..08b12d9266 100644 --- a/code/modules/reagents/reagent_containers/blood_pack.dm +++ b/code/modules/reagents/reagent_containers/blood_pack.dm @@ -78,7 +78,7 @@ var/t = stripped_input(user, "What would you like to label the blood pack?", name, null, 53) if(!user.canUseTopic(src)) return - if(user.get_active_held_item() != I) + if(user.get_active_hand() != I) return if(loc != user) return diff --git a/code/modules/reagents/reagent_containers/borghydro.dm b/code/modules/reagents/reagent_containers/borghydro.dm index e372bb8fe1..c09b537bd6 100644 --- a/code/modules/reagents/reagent_containers/borghydro.dm +++ b/code/modules/reagents/reagent_containers/borghydro.dm @@ -25,7 +25,6 @@ Borg Hypospray var/list/datum/reagents/reagent_list = list() var/list/reagent_ids = list("dexalin", "kelotane", "bicaridine", "antitoxin", "epinephrine", "spaceacillin") - var/accepts_reagent_upgrades = TRUE //If upgrades can increase number of reagents dispensed. var/list/modes = list() //Basically the inverse of reagent_ids. Instead of having numbers as "keys" and strings as values it has strings as keys and numbers as values. //Used as list for input() in shakers. @@ -33,8 +32,11 @@ Borg Hypospray /obj/item/weapon/reagent_containers/borghypo/New() ..() + var/iteration = 1 for(var/R in reagent_ids) add_reagent(R) + modes[R] = iteration + iteration++ START_PROCESSING(SSobj, src) @@ -71,10 +73,8 @@ Borg Hypospray var/datum/reagents/R = reagent_list[reagent_list.len] R.add_reagent(reagent, 30) - modes[reagent] = modes.len + 1 - /obj/item/weapon/reagent_containers/borghypo/proc/regenerate_reagents() - if(iscyborg(src.loc)) + if(isrobot(src.loc)) var/mob/living/silicon/robot/R = src.loc if(R && R.cell) for(var/i in 1 to reagent_ids.len) @@ -90,7 +90,7 @@ Borg Hypospray return if(!istype(M)) return - if(R.total_volume && M.can_inject(user, 1, user.zone_selected,bypass_protection)) + if(R.total_volume && M.can_inject(user, 1, bypass_protection)) M << "You feel a tiny prick!" user << "You inject [M] with the injector." var/fraction = min(amount_per_transfer_from_this/R.total_volume, 1) @@ -134,7 +134,6 @@ Borg Hypospray /obj/item/weapon/reagent_containers/borghypo/hacked icon_state = "borghypo_s" reagent_ids = list ("facid", "mutetoxin", "cyanide", "sodium_thiopental", "heparin", "lexorin") - accepts_reagent_upgrades = FALSE /obj/item/weapon/reagent_containers/borghypo/syndicate name = "syndicate cyborg hypospray" @@ -144,7 +143,6 @@ Borg Hypospray recharge_time = 2 reagent_ids = list("syndicate_nanites", "potass_iodide", "morphine") bypass_protection = 1 - accepts_reagent_upgrades = FALSE /* Borg Shaker @@ -157,7 +155,6 @@ Borg Shaker possible_transfer_amounts = list(5,10,20) charge_cost = 20 //Lots of reagents all regenerating at once, so the charge cost is lower. They also regenerate faster. recharge_time = 3 - accepts_reagent_upgrades = FALSE reagent_ids = list("beer", "orangejuice", "limejuice", "tomatojuice", "cola", "tonic", "sodawater", "ice", "cream", "whiskey", "vodka", "rum", "gin", "tequila", "vermouth", "wine", "kahlua", "cognac", "ale") @@ -165,7 +162,7 @@ Borg Shaker return //Can't inject stuff with a shaker, can we? //not with that attitude /obj/item/weapon/reagent_containers/borghypo/borgshaker/regenerate_reagents() - if(iscyborg(src.loc)) + if(isrobot(src.loc)) var/mob/living/silicon/robot/R = src.loc if(R && R.cell) for(var/i in modes) //Lots of reagents in this one, so it's best to regenrate them all at once to keep it from being tedious. @@ -212,7 +209,6 @@ Borg Shaker possible_transfer_amounts = list(5,10,20) charge_cost = 20 //Lots of reagents all regenerating at once, so the charge cost is lower. They also regenerate faster. recharge_time = 3 - accepts_reagent_upgrades = FALSE reagent_ids = list("beer2") @@ -220,16 +216,13 @@ Borg Shaker name = "Peace Hypospray" reagent_ids = list("dizzysolution","tiresolution") - accepts_reagent_upgrades = FALSE /obj/item/weapon/reagent_containers/borghypo/peace/hacked desc = "Everything's peaceful in death!" icon_state = "borghypo_s" reagent_ids = list("dizzysolution","tiresolution","tirizene","sulfonal","sodium_thiopental","cyanide","neurotoxin2") - accepts_reagent_upgrades = FALSE /obj/item/weapon/reagent_containers/borghypo/epi name = "epinephrine injector" desc = "An advanced chemical synthesizer and injection system, designed to stabilize patients.." - reagent_ids = list("epinephrine") - accepts_reagent_upgrades = FALSE + reagent_ids = list("epinephrine") \ No newline at end of file diff --git a/code/modules/reagents/reagent_containers/bottle.dm b/code/modules/reagents/reagent_containers/bottle.dm index 61bd6b78ff..8bd874837d 100644 --- a/code/modules/reagents/reagent_containers/bottle.dm +++ b/code/modules/reagents/reagent_containers/bottle.dm @@ -19,7 +19,7 @@ update_icon() /obj/item/weapon/reagent_containers/glass/bottle/update_icon() - cut_overlays() + overlays.Cut() if(reagents.total_volume) var/image/filling = image('icons/obj/reagentfillings.dmi', src, "[icon_state]-10") diff --git a/code/modules/reagents/reagent_containers/glass.dm b/code/modules/reagents/reagent_containers/glass.dm index 8853d6a7a6..e19c75c13d 100644 --- a/code/modules/reagents/reagent_containers/glass.dm +++ b/code/modules/reagents/reagent_containers/glass.dm @@ -5,7 +5,6 @@ volume = 50 flags = OPENCONTAINER spillable = 1 - resistance_flags = ACID_PROOF /obj/item/weapon/reagent_containers/glass/attack(mob/M, mob/user, obj/target) @@ -20,7 +19,7 @@ return if(istype(M)) - if(user.a_intent == INTENT_HARM) + if(user.a_intent == "harm") var/R M.visible_message("[user] splashes the contents of [src] onto [M]!", \ "[user] splashes the contents of [src] onto [M]!") @@ -79,7 +78,7 @@ user << "You transfer [trans] unit\s of the solution to [target]." else if(reagents.total_volume) - if(user.a_intent == INTENT_HARM) + if(user.a_intent == "harm") user.visible_message("[user] splashes the contents of [src] onto [target]!", \ "You splash the contents of [src] onto [target].") reagents.reaction(target, TOUCH) @@ -214,9 +213,6 @@ name = "epinephrine reserve tank" list_reagents = list("epinephrine" = 50) -/obj/item/weapon/reagent_containers/glass/beaker/synthflesh - list_reagents = list("synthflesh" = 50) - /obj/item/weapon/reagent_containers/glass/bucket name = "bucket" desc = "It's a bucket." @@ -224,24 +220,23 @@ icon_state = "bucket" item_state = "bucket" materials = list(MAT_METAL=200) - w_class = WEIGHT_CLASS_NORMAL + w_class = 3 amount_per_transfer_from_this = 20 possible_transfer_amounts = list(10,15,20,25,30,50,70) volume = 70 flags = OPENCONTAINER flags_inv = HIDEHAIR slot_flags = SLOT_HEAD - resistance_flags = 0 - armor = list(melee = 10, bullet = 0, laser = 0, energy = 0, bomb = 0, bio = 0, rad = 0, fire = 75, acid = 50) //Weak melee protection, because you can wear it on your head + armor = list(melee = 10, bullet = 0, laser = 0, energy = 0, bomb = 0, bio = 0, rad = 0) //Weak melee protection, because you can wear it on your head slot_equipment_priority = list( \ slot_back, slot_wear_id,\ slot_w_uniform, slot_wear_suit,\ - slot_wear_mask, slot_head, slot_neck,\ + slot_wear_mask, slot_head,\ slot_shoes, slot_gloves,\ slot_ears, slot_glasses,\ slot_belt, slot_s_store,\ slot_l_store, slot_r_store,\ - slot_generic_dextrous_storage + slot_drone_storage ) /obj/item/weapon/reagent_containers/glass/bucket/attackby(obj/O, mob/user, params) diff --git a/code/modules/reagents/reagent_containers/hypospray.dm b/code/modules/reagents/reagent_containers/hypospray.dm index 98e1ddd7ef..11cdb8f876 100644 --- a/code/modules/reagents/reagent_containers/hypospray.dm +++ b/code/modules/reagents/reagent_containers/hypospray.dm @@ -7,7 +7,6 @@ amount_per_transfer_from_this = 5 volume = 30 possible_transfer_amounts = list() - resistance_flags = ACID_PROOF flags = OPENCONTAINER slot_flags = SLOT_BELT var/ignore_flags = 0 @@ -47,7 +46,6 @@ /obj/item/weapon/reagent_containers/hypospray/CMO list_reagents = list("omnizine" = 30) - resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | ACID_PROOF /obj/item/weapon/reagent_containers/hypospray/combat name = "combat stimulant injector" @@ -83,7 +81,7 @@ ..() update_icon() spawn(80) - if(iscyborg(user) && !reagents.total_volume) + if(isrobot(user) && !reagents.total_volume) var/mob/living/silicon/robot/R = user if(R.cell.use(100)) reagents.add_reagent_list(list_reagents) @@ -130,11 +128,11 @@ /obj/item/weapon/reagent_containers/hypospray/medipen/survival name = "survival medipen" - desc = "A medipen for surviving in the harshest of environments, heals and protects from environmental hazards. WARNING: Do not inject more than one pen in quick succession." + desc = "A medipen for surviving in the harshest of environments, heals and protects from environmental hazards. " icon_state = "stimpen" - volume = 57 - amount_per_transfer_from_this = 57 - list_reagents = list("salbutamol" = 10, "leporazine" = 15, "tricordrazine" = 15, "epinephrine" = 10, "miningnanites" = 2, "omnizine" = 5) + volume = 82 + amount_per_transfer_from_this = 82 + list_reagents = list("nanites" = 2, "salbutamol" = 10, "coffee" = 20, "leporazine" = 20, "tricordrazine" = 15, "epinephrine" = 10, "omnizine" = 5, "stimulants" = 10) /obj/item/weapon/reagent_containers/hypospray/medipen/species_mutator name = "species mutator medipen" diff --git a/code/modules/reagents/reagent_containers/spray.dm b/code/modules/reagents/reagent_containers/spray.dm index 1c827af0f4..582bf75748 100644 --- a/code/modules/reagents/reagent_containers/spray.dm +++ b/code/modules/reagents/reagent_containers/spray.dm @@ -7,7 +7,7 @@ flags = OPENCONTAINER | NOBLUDGEON slot_flags = SLOT_BELT throwforce = 0 - w_class = WEIGHT_CLASS_SMALL + w_class = 2 throw_speed = 3 throw_range = 7 var/stream_mode = 0 //whether we use the more focused mode @@ -17,7 +17,7 @@ var/stream_amount = 10 //the amount of reagents transfered when in stream mode. amount_per_transfer_from_this = 5 volume = 250 - possible_transfer_amounts = list(5,10,15,20,25,30,50,100) + possible_transfer_amounts = list() /obj/item/weapon/reagent_containers/spray/afterattack(atom/A as mob|obj, mob/user) @@ -117,6 +117,7 @@ user << "You switch the nozzle setting to [stream_mode ? "\"stream\"":"\"spray\""]. You'll now use [amount_per_transfer_from_this] units per use." /obj/item/weapon/reagent_containers/spray/verb/empty() + set name = "Empty Spray Bottle" set category = "Object" set src in usr @@ -135,7 +136,6 @@ desc = "BLAM!-brand non-foaming space cleaner!" list_reagents = list("cleaner" = 250) -//spray tan /obj/item/weapon/reagent_containers/spray/spraytan name = "spray tan" volume = 50 @@ -143,19 +143,6 @@ list_reagents = list("spraytan" = 50) -/obj/item/weapon/reagent_containers/spray/medical - name = "medical spray" - icon = 'icons/obj/chemical.dmi' - icon_state = "medspray" - volume = 100 - - -/obj/item/weapon/reagent_containers/spray/medical/sterilizer - name = "sterilizer spray" - desc = "Spray bottle loaded with non-toxic sterilizer. Useful in preparation for surgery." - list_reagents = list("sterilizine" = 100) - - //pepperspray /obj/item/weapon/reagent_containers/spray/pepper name = "pepperspray" @@ -190,7 +177,7 @@ icon_state = "chemsprayer" item_state = "chemsprayer" throwforce = 0 - w_class = WEIGHT_CLASS_NORMAL + w_class = 3 stream_mode = 1 current_range = 7 spray_range = 4 @@ -224,3 +211,23 @@ item_state = "plantbgone" volume = 100 list_reagents = list("plantbgone" = 100) + +/obj/item/weapon/reagent_containers/spray/thermite + name = "Thermite Spray" + desc = "A 50u spray bottle loaded with thermite, for melting walls. " + icon = 'icons/obj/weapons.dmi' + icon_state = "thermitespray" + item_state = "thermitespray" + volume = 50 + list_reagents = list("thermite" = 50) + +/obj/item/weapon/reagent_containers/spray/thermite/afterattack(atom/A as mob|obj, mob/user) + if(istype(A, /turf/closed/wall)) + if(reagents.get_reagent_amount("thermite") >= 10) + user.visible_message("You spray the thermite on [A].") + reagents.reaction(A, TOUCH) + reagents.remove_reagent("thermite", 10) + else + user.visible_message("You don't have enough thermite left!") + return + else return ..() \ No newline at end of file diff --git a/code/modules/reagents/reagent_containers/syringes.dm b/code/modules/reagents/reagent_containers/syringes.dm index 8b35cb003a..9b3f654a25 100644 --- a/code/modules/reagents/reagent_containers/syringes.dm +++ b/code/modules/reagents/reagent_containers/syringes.dm @@ -12,7 +12,7 @@ volume = 15 var/mode = SYRINGE_DRAW var/busy = 0 // needed for delayed drawing of blood - var/proj_piercing = 0 //does it pierce through thick clothes when shot with syringe gun + var/projectile_type = /obj/item/projectile/bullet/dart/syringe materials = list(MAT_METAL=10, MAT_GLASS=20) /obj/item/weapon/reagent_containers/syringe/New() @@ -207,9 +207,6 @@ /obj/item/weapon/reagent_containers/syringe/lethal/choral list_reagents = list("chloralhydrate" = 50) -/obj/item/weapon/reagent_containers/syringe/lethal/execution - list_reagents = list("plasma" = 15, "formaldehyde" = 15, "cyanide" = 10, "facid" = 10) - /obj/item/weapon/reagent_containers/syringe/mulligan name = "Mulligan" desc = "A syringe used to completely change the users identity." @@ -245,5 +242,5 @@ name = "piercing syringe" desc = "A diamond-tipped syringe that pierces armor when launched at high velocity. It can hold up to 10 units." volume = 10 - proj_piercing = 1 + projectile_type = /obj/item/projectile/bullet/dart/syringe/piercing origin_tech = "combat=3;materials=4;engineering=5" diff --git a/code/modules/reagents/reagent_dispenser.dm b/code/modules/reagents/reagent_dispenser.dm index 4f6e1d3d90..22afc2e5eb 100644 --- a/code/modules/reagents/reagent_dispenser.dm +++ b/code/modules/reagents/reagent_dispenser.dm @@ -6,16 +6,28 @@ density = 1 anchored = 0 pressure_resistance = 2*ONE_ATMOSPHERE - obj_integrity = 300 - max_integrity = 300 var/tank_volume = 1000 //In units, how much the dispenser can hold var/reagent_id = "water" //The ID of the reagent that the dispenser uses -/obj/structure/reagent_dispensers/take_damage(damage_amount, damage_type = BRUTE, damage_flag = 0, sound_effect = 1, attack_dir) - . = ..() - if(. && obj_integrity > 0) - if(tank_volume && (damage_flag == "bullet" || damage_flag == "laser")) - boom() +/obj/structure/reagent_dispensers/ex_act(severity, target) + switch(severity) + if(1) + qdel(src) + return + if(2) + if (prob(50)) + qdel(src) + return + if(3) + if (prob(5)) + qdel(src) + return + else + return + +/obj/structure/reagent_dispensers/blob_act(obj/effect/blob/B) + if(prob(50)) + qdel(src) /obj/structure/reagent_dispensers/attackby(obj/item/weapon/W, mob/user, params) if(istype(W, /obj/item/weapon/reagent_containers)) @@ -36,62 +48,72 @@ user << "It's empty." -/obj/structure/reagent_dispensers/proc/boom() - visible_message("\The [src] ruptures!") - chem_splash(loc, 5, list(reagents)) - qdel(src) - -/obj/structure/reagent_dispensers/deconstruct(disassembled = TRUE) - if(!(flags & NODECONSTRUCT)) - if(!disassembled) - boom() - else - qdel(src) - /obj/structure/reagent_dispensers/watertank name = "water tank" desc = "A water tank." icon_state = "water" +/obj/structure/reagent_dispensers/watertank/ex_act(severity, target) + switch(severity) + if(1) + qdel(src) + return + if(2) + if (prob(50)) + PoolOrNew(/obj/effect/particle_effect/water, src.loc) + qdel(src) + return + if(3) + if (prob(5)) + PoolOrNew(/obj/effect/particle_effect/water, src.loc) + qdel(src) + return + else + return + +/obj/structure/reagent_dispensers/watertank/blob_act(obj/effect/blob/B) + if(prob(50)) + PoolOrNew(/obj/effect/particle_effect/water, loc) + qdel(src) + + /obj/structure/reagent_dispensers/watertank/high name = "high-capacity water tank" desc = "A highly-pressurized water tank made to hold gargantuan amounts of water.." icon_state = "water_high" //I was gonna clean my room... tank_volume = 100000 + /obj/structure/reagent_dispensers/fueltank name = "fuel tank" desc = "A tank full of industrial welding fuel. Do not consume." icon_state = "fuel" reagent_id = "welding_fuel" -/obj/structure/reagent_dispensers/fueltank/boom() +/obj/structure/reagent_dispensers/fueltank/bullet_act(obj/item/projectile/Proj) + ..() + if(istype(Proj) && !Proj.nodamage && ((Proj.damage_type == BURN) || (Proj.damage_type == BRUTE))) + message_admins("[key_name_admin(Proj.firer)] triggered a fueltank explosion via projectile.") + log_game("[key_name(Proj.firer)] triggered a fueltank explosion via projectile.") + boom() + +/obj/structure/reagent_dispensers/fueltank/proc/boom() explosion(get_turf(src), 0, 1, 5, flame_range = 5) qdel(src) -/obj/structure/reagent_dispensers/fueltank/blob_act(obj/structure/blob/B) +/obj/structure/reagent_dispensers/fueltank/blob_act(obj/effect/blob/B) boom() /obj/structure/reagent_dispensers/fueltank/ex_act() boom() -/obj/structure/reagent_dispensers/fueltank/fire_act(exposed_temperature, exposed_volume) +/obj/structure/reagent_dispensers/fueltank/fire_act() boom() /obj/structure/reagent_dispensers/fueltank/tesla_act() ..() //extend the zap boom() -/obj/structure/reagent_dispensers/fueltank/bullet_act(obj/item/projectile/P) - ..() - if(!qdeleted(src)) //wasn't deleted by the projectile's effects. - if(!P.nodamage && ((P.damage_type == BURN) || (P.damage_type == BRUTE))) - var/boom_message = "[key_name_admin(P.firer)] triggered a fueltank explosion via projectile." - bombers += boom_message - message_admins(boom_message) - log_game("[key_name(P.firer)] triggered a fueltank explosion via projectile.") - boom() - /obj/structure/reagent_dispensers/fueltank/attackby(obj/item/I, mob/living/user, params) if(istype(I, /obj/item/weapon/weldingtool)) if(!reagents.has_reagent("welding_fuel")) @@ -103,14 +125,12 @@ user << "Your [W.name] is already full!" return reagents.trans_to(W, W.max_fuel) - user.visible_message("[user] refills [user.p_their()] [W.name].", "You refill [W].") + user.visible_message("[user] refills \his [W.name].", "You refill [W].") playsound(src, 'sound/effects/refill.ogg', 50, 1) update_icon() else - user.visible_message("[user] catastrophically fails at refilling [user.p_their()] [W.name]!", "That was stupid of you.") - var/message = "[key_name_admin(user)] triggered a fueltank explosion via welding tool." - bombers += message - message_admins(message) + user.visible_message("[user] catastrophically fails at refilling \his [W.name]!", "That was stupid of you.") + message_admins("[key_name_admin(user)] triggered a fueltank explosion via welding tool.") log_game("[key_name(user)] triggered a fueltank explosion via welding tool.") boom() return @@ -160,10 +180,8 @@ icon_state = "beer" reagent_id = "beer" -/obj/structure/reagent_dispensers/beerkeg/blob_act(obj/structure/blob/B) +/obj/structure/reagent_dispensers/beerkeg/blob_act(obj/effect/blob/B) explosion(src.loc,0,3,5,7,10) - if(!qdeleted(src)) - qdel(src) /obj/structure/reagent_dispensers/virusfood @@ -171,4 +189,4 @@ desc = "A dispenser of low-potency virus mutagenic." icon_state = "virus_food" anchored = 1 - reagent_id = "virusfood" \ No newline at end of file + reagent_id = "virusfood" diff --git a/code/modules/recycling/conveyor2.dm b/code/modules/recycling/conveyor2.dm index 09337e8e2f..c6fe91dace 100644 --- a/code/modules/recycling/conveyor2.dm +++ b/code/modules/recycling/conveyor2.dm @@ -116,32 +116,21 @@ // attack with item, place item on conveyor /obj/machinery/conveyor/attackby(obj/item/I, mob/user, params) if(istype(I, /obj/item/weapon/crowbar)) - user.visible_message("[user] struggles to pry up \the [src] with \the [I].", \ - "You struggle to pry up \the [src] with \the [I].") - if(do_after(user, 40*I.toolspeed, target = src)) - if(qdeleted(src)) - return //prevent multiple decontructs - if(!(stat & BROKEN)) - var/obj/item/conveyor_construct/C = new/obj/item/conveyor_construct(src.loc) - C.id = id - transfer_fingerprints_to(C) - user << "You remove the conveyor belt." - qdel(src) + if(!(stat & BROKEN)) + var/obj/item/conveyor_construct/C = new/obj/item/conveyor_construct(src.loc) + C.id = id + transfer_fingerprints_to(C) + user << "You remove the conveyor belt." + qdel(src) else if(istype(I, /obj/item/weapon/wrench)) if(!(stat & BROKEN)) - playsound(loc, I.usesound, 50, 1) + playsound(loc, 'sound/items/Ratchet.ogg', 50, 1) setDir(turn(dir,-45)) update_move_direction() user << "You rotate [src]." - else if(istype(I, /obj/item/weapon/screwdriver)) - if(!(stat & BROKEN)) - verted = verted * -1 - update_move_direction() - user << "You reverse [src]'s direction." - - else if(user.a_intent != INTENT_HARM) + else if(user.a_intent != "harm") if(user.drop_item()) I.loc = src.loc else @@ -297,7 +286,7 @@ icon_state = "conveyor0" name = "conveyor belt assembly" desc = "A conveyor belt assembly." - w_class = WEIGHT_CLASS_BULKY + w_class = 4 var/id = "" //inherited by the belt /obj/item/conveyor_construct/attackby(obj/item/I, mob/user, params) @@ -308,7 +297,7 @@ id = C.id /obj/item/conveyor_construct/afterattack(atom/A, mob/user, proximity) - if(!proximity || user.stat || !isfloorturf(A) || istype(A, /area/shuttle)) + if(!proximity || user.stat || !istype(A, /turf/open/floor) || istype(A, /area/shuttle)) return var/cdir = get_dir(A, user) if(A == user.loc) @@ -324,7 +313,7 @@ desc = "A conveyor control switch assembly." icon = 'icons/obj/recycling.dmi' icon_state = "switch-off" - w_class = WEIGHT_CLASS_BULKY + w_class = 4 var/id = "" //inherited by the switch /obj/item/conveyor_switch_construct/New() @@ -332,7 +321,7 @@ id = rand() //this couldn't possibly go wrong /obj/item/conveyor_switch_construct/afterattack(atom/A, mob/user, proximity) - if(!proximity || user.stat || !isfloorturf(A) || istype(A, /area/shuttle)) + if(!proximity || user.stat || !istype(A, /turf/open/floor) || istype(A, /area/shuttle)) return var/found = 0 for(var/obj/machinery/conveyor/C in view()) diff --git a/code/modules/recycling/disposal-construction.dm b/code/modules/recycling/disposal-construction.dm index 447e5a7069..6f41c5fb43 100644 --- a/code/modules/recycling/disposal-construction.dm +++ b/code/modules/recycling/disposal-construction.dm @@ -11,8 +11,6 @@ density = 0 pressure_resistance = 5*ONE_ATMOSPHERE level = 2 - obj_integrity = 200 - max_integrity = 200 var/ptype = 0 var/dpdir = 0 // directions as disposalpipe @@ -184,11 +182,11 @@ nicetype = "pipe" var/turf/T = loc - if(T.intact && isfloorturf(T)) + if(T.intact && istype(T, /turf/open/floor)) user << "You can only attach the [nicetype] if the floor plating is removed!" return - if(!ispipe && iswallturf(T)) + if(!ispipe && istype(T, /turf/closed/wall)) user << "You can't build [nicetype]s on walls, only disposal pipes!" return @@ -224,7 +222,7 @@ level = 1 // We don't want disposal bins to disappear under the floors density = 0 user << "You attach the [nicetype] to the underfloor." - playsound(loc, I.usesound, 100, 1) + playsound(loc, 'sound/items/Ratchet.ogg', 100, 1) update_icon() else if(istype(I, /obj/item/weapon/weldingtool)) @@ -233,7 +231,7 @@ if(W.remove_fuel(0,user)) playsound(loc, 'sound/items/Welder2.ogg', 100, 1) user << "You start welding the [nicetype] in place..." - if(do_after(user, 20*I.toolspeed, target = src)) + if(do_after(user, 20/I.toolspeed, target = src)) if(!loc || !W.isOn()) return user << "The [nicetype] has been welded in place." diff --git a/code/modules/recycling/disposal-structures.dm b/code/modules/recycling/disposal-structures.dm index 23a14b77df..283369a5d1 100644 --- a/code/modules/recycling/disposal-structures.dm +++ b/code/modules/recycling/disposal-structures.dm @@ -6,7 +6,6 @@ /obj/structure/disposalholder invisibility = INVISIBILITY_MAXIMUM - resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | UNACIDABLE | ACID_PROOF var/datum/gas_mixture/gas = null // gas used to flush, will appear at exit point var/active = 0 // true if the holder is moving, otherwise inactive dir = 0 @@ -124,9 +123,6 @@ /obj/structure/disposalholder/allow_drop() return 1 -/obj/structure/disposalholder/ex_act(severity, target) - return - // Disposal pipes /obj/structure/disposalpipe @@ -139,9 +135,7 @@ level = 1 // underfloor only var/dpdir = 0 // bitmask of pipe directions dir = 0// dir will contain dominant direction for junction pipes - obj_integrity = 200 - max_integrity = 200 - armor = list(melee = 25, bullet = 10, laser = 10, energy = 100, bomb = 0, bio = 100, rad = 100, fire = 90, acid = 30) + var/health = 10 // health points 0-10 layer = DISPOSAL_PIPE_LAYER // slightly lower than wires and other pipes var/base_icon_state // initial icon state on map var/obj/structure/disposalconstruct/stored @@ -184,9 +178,22 @@ /obj/structure/disposalpipe/Destroy() var/obj/structure/disposalholder/H = locate() in src if(H) + // holder was present H.active = 0 var/turf/T = src.loc - expel(H, T, 0) + if(T.density) + // deleting pipe is inside a dense turf (wall) + // this is unlikely, but just dump out everything into the turf in case + + for(var/atom/movable/AM in H) + AM.forceMove(src.loc) + AM.pipe_eject(0) + qdel(H) + return ..() + + // otherwise, do normal expel from turf + else + expel(H, T, 0) return ..() // returns the direction of the next pipe object, given the entrance dir @@ -221,7 +228,7 @@ // update the icon_state to reflect hidden status /obj/structure/disposalpipe/proc/update() var/turf/T = src.loc - hide(T.intact && !isspaceturf(T)) // space never hides pipes + hide(T.intact && !istype(T,/turf/open/space)) // space never hides pipes // hide called by levelupdate if turf intact status changes // change visibility status and force update of icon @@ -248,47 +255,104 @@ /obj/structure/disposalpipe/proc/expel(obj/structure/disposalholder/H, turf/T, direction) var/turf/target - var/eject_range = 5 - var/turf/open/floor/floorturf - if(isfloorturf(T)) //intact floor, pop the tile - floorturf = T - if(floorturf.floor_tile) - PoolOrNew(floorturf.floor_tile, T) - floorturf.make_plating() + if(istype(T, /turf/open/floor)) //intact floor, pop the tile + var/turf/open/floor/myturf = T + if(myturf.builtin_tile) + myturf.builtin_tile.loc = T + myturf.builtin_tile = null + myturf.make_plating() if(direction) // direction is specified - if(isspaceturf(T)) // if ended in space, then range is unlimited + if(istype(T, /turf/open/space)) // if ended in space, then range is unlimited target = get_edge_target_turf(T, direction) else // otherwise limit to 10 tiles target = get_ranged_target_turf(T, direction, 10) - eject_range = 10 + playsound(src, 'sound/machines/hiss.ogg', 50, 0, 0) + if(H) + for(var/atom/movable/AM in H) + AM.forceMove(src.loc) + AM.pipe_eject(direction) + AM.throw_at_fast(target, 10, 1) - else if(floorturf) - target = get_offset_target_turf(T, rand(5)-rand(5), rand(5)-rand(5)) + else // no specified direction, so throw in random direction - playsound(src, 'sound/machines/hiss.ogg', 50, 0, 0) - for(var/atom/movable/AM in H) - AM.forceMove(src.loc) - AM.pipe_eject(direction) - if(target) - AM.throw_at_fast(target, eject_range, 1) + playsound(src, 'sound/machines/hiss.ogg', 50, 0, 0) + if(H) + for(var/atom/movable/AM in H) + target = get_offset_target_turf(T, rand(5)-rand(5), rand(5)-rand(5)) + AM.forceMove(src.loc) + AM.pipe_eject(0) + AM.throw_at_fast(target, 5, 1) H.vent_gas(T) qdel(H) + return + +// call to break the pipe +// will expel any holder inside at the time +// then delete the pipe +// remains : set to leave broken pipe pieces in place +/obj/structure/disposalpipe/proc/broken(remains = 0) + if(remains) + for(var/D in cardinal) + if(D & dpdir) + var/obj/structure/disposalpipe/broken/P = new(src.loc) + P.setDir(D) + + src.invisibility = INVISIBILITY_MAXIMUM // make invisible (since we won't delete the pipe immediately) + var/obj/structure/disposalholder/H = locate() in src + if(H) + // holder was present + H.active = 0 + var/turf/T = src.loc + if(T.density) + // broken pipe is inside a dense turf (wall) + // this is unlikely, but just dump out everything into the turf in case + + for(var/atom/movable/AM in H) + AM.forceMove(src.loc) + AM.pipe_eject(0) + qdel(H) + return + + // otherwise, do normal expel from turf + if(H) + expel(H, T, 0) + + spawn(2) // delete pipe after 2 ticks to ensure expel proc finished + qdel(src) // pipe affected by explosion -/obj/structure/disposalpipe/contents_explosion(severity, target) +/obj/structure/disposalpipe/ex_act(severity, target) + + //pass on ex_act to our contents before calling it on ourself var/obj/structure/disposalholder/H = locate() in src if(H) H.contents_explosion(severity, target) + switch(severity) + if(1) + broken(0) + return + if(2) + health -= rand(5,15) + healthcheck() + return + if(3) + health -= rand(0,15) + healthcheck() + return -/obj/structure/disposalpipe/run_obj_armor(damage_amount, damage_type, damage_flag = 0, attack_dir) - if(damage_flag == "melee" && damage_amount < 10) - return 0 - . = ..() + +// test health for brokenness +/obj/structure/disposalpipe/proc/healthcheck() + if(health < -2) + broken(0) + else if(health<1) + broken(1) + return //attack by item //weldingtool: unfasten and convert to obj/disposalconstruct @@ -307,7 +371,7 @@ // check if anything changed over 2 seconds if(do_after(user,30, target = src)) if(!src || !W.isOn()) return - deconstruct() + Deconstruct() user << "You slice the disposal pipe." else return ..() @@ -317,28 +381,20 @@ . = 1 // called when pipe is cut with welder -/obj/structure/disposalpipe/deconstruct(disassembled = TRUE) - if(!(flags & NODECONSTRUCT)) - if(disassembled) - if(stored) - var/turf/T = loc - stored.loc = T - transfer_fingerprints_to(stored) - stored.setDir(dir) - stored.density = 0 - stored.anchored = 1 - stored.update_icon() - else - for(var/D in cardinal) - if(D & dpdir) - var/obj/structure/disposalpipe/broken/P = new(src.loc) - P.setDir(D) - qdel(src) - +/obj/structure/disposalpipe/Deconstruct() + if(stored) + var/turf/T = loc + stored.loc = T + transfer_fingerprints_to(stored) + stored.setDir(dir) + stored.density = 0 + stored.anchored = 1 + stored.update_icon() + ..() /obj/structure/disposalpipe/singularity_pull(S, current_size) if(current_size >= STAGE_FIVE) - deconstruct() + Deconstruct() // *** TEST verb //client/verb/dispstop() @@ -624,10 +680,11 @@ /obj/structure/disposalpipe/broken/New() ..() update() + return // the disposal outlet machine -/obj/structure/disposalpipe/broken/deconstruct() +/obj/structure/disposalpipe/broken/Deconstruct() qdel(src) /obj/structure/disposaloutlet @@ -706,7 +763,7 @@ if(W.remove_fuel(0,user)) playsound(src.loc, 'sound/items/Welder2.ogg', 100, 1) user << "You start slicing the floorweld off \the [src]..." - if(do_after(user,20*I.toolspeed, target = src)) + if(do_after(user,20/I.toolspeed, target = src)) if(!src || !W.isOn()) return user << "You slice the floorweld off \the [src]." stored.loc = loc diff --git a/code/modules/recycling/disposal-unit.dm b/code/modules/recycling/disposal-unit.dm index 40b66555f8..ab2da6b718 100644 --- a/code/modules/recycling/disposal-unit.dm +++ b/code/modules/recycling/disposal-unit.dm @@ -8,12 +8,8 @@ anchored = 1 density = 1 on_blueprints = TRUE - armor = list(melee = 25, bullet = 10, laser = 10, energy = 100, bomb = 0, bio = 100, rad = 100, fire = 90, acid = 30) - obj_integrity = 200 - max_integrity = 200 - resistance_flags = FIRE_PROOF var/datum/gas_mixture/air_contents // internal reservoir - var/mode = PRESSURE_ON + var/mode = 1 // mode -1=screws removed 0=off 1=charging 2=charged var/flush = 0 // true if flush handle is pulled var/obj/structure/disposalpipe/trunk/trunk = null // the attached pipe trunk var/flushing = 0 // true if flushing in progress @@ -41,14 +37,14 @@ update_icon() /obj/machinery/disposal/proc/trunk_check() - trunk = locate() in loc + trunk = locate() in src.loc if(!trunk) - mode = PRESSURE_OFF + mode = 0 flush = 0 else - mode = PRESSURE_ON + mode = initial(mode) flush = initial(flush) - trunk.linked = src // link the pipe trunk to self + trunk.linked = src // link the pipe trunk to self /obj/machinery/disposal/Destroy() eject() @@ -58,10 +54,10 @@ /obj/machinery/disposal/singularity_pull(S, current_size) if(current_size >= STAGE_FIVE) - deconstruct() + Deconstruct() /obj/machinery/disposal/initialize() - //this will get a copy of the air turf and take a SEND PRESSURE amount of air from it + // this will get a copy of the air turf and take a SEND PRESSURE amount of air from it var/atom/L = loc var/datum/gas_mixture/env = new env.copy_from(L.return_air()) @@ -71,28 +67,34 @@ /obj/machinery/disposal/attackby(obj/item/I, mob/user, params) add_fingerprint(user) - if(mode != PRESSURE_ON && mode != PRESSURE_MAXED && !flush) + if(mode<=0) if(istype(I, /obj/item/weapon/screwdriver)) - if(mode == PRESSURE_OFF) - mode = SCREWS_OUT + if(contents.len > 0) + user << "Eject the items first!" + return + if(mode==0) + mode=-1 else - mode = PRESSURE_OFF - playsound(src.loc, I.usesound, 50, 1) - user << "You [mode == SCREWS_OUT ? "remove":"attach"] the screws around the power connection." + mode=0 + playsound(src.loc, 'sound/items/Screwdriver.ogg', 50, 1) + user << "You [mode==0?"attach":"remove"] the screws around the power connection." return - else if(istype(I,/obj/item/weapon/weldingtool) && mode == SCREWS_OUT) + else if(istype(I,/obj/item/weapon/weldingtool) && mode==-1) var/obj/item/weapon/weldingtool/W = I if(W.remove_fuel(0,user)) + if(contents.len > 0) + user << "Eject the items first!" + return playsound(src.loc, 'sound/items/Welder2.ogg', 100, 1) user << "You start slicing the floorweld off \the [src]..." - if(do_after(user,20*I.toolspeed, target = src) && mode == SCREWS_OUT) + if(do_after(user,20/I.toolspeed, target = src)) if(!W.isOn()) return user << "You slice the floorweld off \the [src]." - deconstruct() + Deconstruct() return - if(user.a_intent != INTENT_HARM) + if(user.a_intent != "harm") if(!user.drop_item() || (I.flags & ABSTRACT)) return place_item_in_disposal(I, user) @@ -102,10 +104,13 @@ return ..() /obj/machinery/disposal/proc/place_item_in_disposal(obj/item/I, mob/user) - I.forceMove(src) - user.visible_message("[user.name] places \the [I] into \the [src].", "You place \the [I] into \the [src].") + I.loc = src + user.visible_message("[user.name] places \the [I] into \the [src].", \ + "You place \the [I] into \the [src].") + + +// mouse drop another mob or self -//mouse drop another mob or self /obj/machinery/disposal/MouseDrop_T(mob/living/target, mob/living/user) if(istype(target)) stuff_mob_in(target, user) @@ -113,7 +118,7 @@ /obj/machinery/disposal/proc/stuff_mob_in(mob/living/target, mob/living/user) if(!iscarbon(user) && !user.ventcrawler) //only carbon and ventcrawlers can climb into disposal by themselves. return - if(!isturf(user.loc)) //No magically doing it from inside closets + if(!istype(user.loc, /turf/)) //No magically doing it from inside closets return if(target.buckled || target.has_buckled_mobs()) return @@ -122,37 +127,50 @@ return add_fingerprint(user) if(user == target) - user.visible_message("[user] starts climbing into [src].", "You start climbing into [src]...") + user.visible_message("[user] starts climbing into [src].", \ + "You start climbing into [src]...") else - target.visible_message("[user] starts putting [target] into [src].", "[user] starts putting you into [src]!") + target.visible_message("[user] starts putting [target] into [src].", \ + "[user] starts putting you into [src]!") if(do_mob(user, target, 20)) if (!loc) return target.forceMove(src) if(user == target) - user.visible_message("[user] climbs into [src].", "You climb into [src].") + user.visible_message("[user] climbs into [src].", \ + "You climb into [src].") else - target.visible_message("[user] has placed [target] in [src].", "[user] has placed [target] in [src].") + target.visible_message("[user] has placed [target] in [src].", \ + "[user] has placed [target] in [src].") add_logs(user, target, "stuffed", addition="into [src]") target.LAssailant = user update_icon() +// can breath normally in the disposal +/obj/machinery/disposal/alter_health() + return get_turf(src) + /obj/machinery/disposal/relaymove(mob/user) attempt_escape(user) // resist to escape the bin -/obj/machinery/disposal/container_resist(mob/living/user) - attempt_escape(user) +/obj/machinery/disposal/container_resist() + attempt_escape(usr) /obj/machinery/disposal/proc/attempt_escape(mob/user) - if(flushing) + if(src.flushing) return go_out(user) + return // leave the disposal /obj/machinery/disposal/proc/go_out(mob/user) - user.forceMove(loc) + + user.loc = src.loc + user.reset_perspective(null) update_icon() + return + // monkeys and xenos can only pull the flush lever /obj/machinery/disposal/attack_paw(mob/user) @@ -170,8 +188,21 @@ if(user && user.loc == src) usr << "You cannot reach the controls from inside!" return + /* + if(mode==-1) + usr << "\red The disposal units power is disabled." + return + */ interact(user, 0) +// hostile mob escape from disposals +/obj/machinery/disposal/attack_animal(mob/living/simple_animal/M) + if(M.environment_smash) + M.do_attack_animation(src) + visible_message("[M.name] smashes \the [src] apart!") + qdel(src) + return + // eject the contents of the disposal unit /obj/machinery/disposal/proc/eject() var/turf/T = get_turf(src) @@ -214,6 +245,8 @@ /obj/machinery/disposal/power_change() ..() // do default setting/reset of stat NOPOWER bit update_icon() // update icon + return + // called when holder is expelled from a disposal // should usually only occur if the pipe network is modified @@ -232,17 +265,14 @@ H.vent_gas(loc) qdel(H) -/obj/machinery/disposal/deconstruct(disassembled = TRUE) - var/turf/T = loc - if(!(flags & NODECONSTRUCT)) - if(stored) - stored.forceMove(T) - src.transfer_fingerprints_to(stored) - stored.anchored = 0 - stored.density = 1 - stored.update_icon() - for(var/atom/movable/AM in src) //out, out, darned crowbar! - AM.forceMove(T) +/obj/machinery/disposal/Deconstruct() + if(stored) + var/turf/T = loc + stored.loc = T + src.transfer_fingerprints_to(stored) + stored.anchored = 0 + stored.density = 1 + stored.update_icon() ..() //How disposal handles getting a storage dump from a storage object @@ -254,6 +284,7 @@ src_object.remove_from_storage(I, src) return 1 + // Disposal bin // Holds items for disposal into pipe system // Draws air from turf, gradually charges internal reservoir @@ -266,7 +297,7 @@ desc = "A pneumatic waste disposal unit." icon_state = "disposal" -// attack by item places it in to disposal + // attack by item places it in to disposal /obj/machinery/disposal/bin/attackby(obj/item/I, mob/user, params) if(istype(I, /obj/item/weapon/storage/bag/trash)) var/obj/item/weapon/storage/bag/trash/T = I @@ -278,55 +309,73 @@ else return ..() +// user interaction +/obj/machinery/disposal/bin/interact(mob/user, ai=0) + src.add_fingerprint(user) + if(stat & BROKEN) + user.unset_machine() + return + + var/dat = "Waste Disposal UnitWaste Disposal Unit
    " + + if(!ai) // AI can't pull flush handle + if(flush) + dat += "Disposal handle: Disengage Engaged" + else + dat += "Disposal handle: Disengaged Engage" + + dat += "

    Eject contents
    " + + if(mode <= 0) + dat += "Pump: Off On
    " + else if(mode == 1) + dat += "Pump: Off On (pressurizing)
    " + else + dat += "Pump: Off On (idle)
    " + + var/per = Clamp(100* air_contents.return_pressure() / (SEND_PRESSURE), 0, 100) + + dat += "Pressure: [round(per, 1)]%
    " + + + user.set_machine(src) + user << browse(dat, "window=disposal;size=360x170") + onclose(user, "disposal") + // handle machine interaction -/obj/machinery/disposal/bin/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = 0, \ - datum/tgui/master_ui = null, datum/ui_state/state = default_state) - if(stat & BROKEN) - return - if(user.loc == src) - user << "You cannot reach the controls from inside!" - return - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) - if(!ui) - ui = new(user, src, ui_key, "disposal_unit", name, 300, 200, master_ui, state) - ui.open() - -/obj/machinery/disposal/bin/ui_data(mob/user) - var/list/data = list() - data["flush"] = flush - data["mode"] = mode - var/per = Clamp(100* air_contents.return_pressure() / (SEND_PRESSURE), 0, 100) - data["per"] = round(per, 1) - data["isai"] = isAI(user) - return data - -/obj/machinery/disposal/bin/ui_act(action, params) +/obj/machinery/disposal/bin/Topic(href, href_list) if(..()) return - switch(action) - if("handle-0") - flush = 0 - update_icon() - . = TRUE - if("handle-1") - if(mode != SCREWS_OUT) - flush = 1 - update_icon() - . = TRUE - if("pump-0") - if(mode == PRESSURE_ON) - mode = PRESSURE_OFF - update_icon() - . = TRUE - if("pump-1") - if(mode == PRESSURE_OFF) - mode = PRESSURE_ON - update_icon() - . = TRUE - if("eject") - eject() - . = TRUE + if(usr.loc == src) + usr << "You cannot reach the controls from inside!" + return + + if(mode==-1 && !href_list["eject"]) // only allow ejecting if mode is -1 + usr << "\The [src]'s power is disabled." + return + ..() + usr.set_machine(src) + + if(href_list["close"]) + usr.unset_machine() + usr << browse(null, "window=disposal") + return + + if(href_list["pump"]) + if(text2num(href_list["pump"])) + mode = 1 + else + mode = 0 + update_icon() + + if(href_list["handle"]) + flush = text2num(href_list["handle"]) + update_icon() + + if(href_list["eject"]) + eject() + return /obj/machinery/disposal/bin/CanPass(atom/movable/mover, turf/target, height=0) if (istype(mover,/obj/item) && mover.throwing) @@ -345,67 +394,69 @@ /obj/machinery/disposal/bin/flush() ..() - if(mode == PRESSURE_MAXED) - mode = PRESSURE_ON + if(mode == 2) + mode = 1 update_icon() /obj/machinery/disposal/bin/update_icon() cut_overlays() if(stat & BROKEN) - mode = PRESSURE_OFF + mode = 0 flush = 0 return - //flush handle + // flush handle if(flush) add_overlay(image('icons/obj/atmospherics/pipes/disposal.dmi', "dispover-handle")) - //only handle is shown if no power - if(stat & NOPOWER || mode == SCREWS_OUT) + // only handle is shown if no power + if(stat & NOPOWER || mode == -1) return - //check for items in disposal - occupied light + // check for items in disposal - occupied light if(contents.len > 0) add_overlay(image('icons/obj/atmospherics/pipes/disposal.dmi', "dispover-full")) - //charging and ready light - if(mode == PRESSURE_ON) + // charging and ready light + if(mode == 1) add_overlay(image('icons/obj/atmospherics/pipes/disposal.dmi', "dispover-charge")) - else if(mode == PRESSURE_MAXED) + else if(mode == 2) add_overlay(image('icons/obj/atmospherics/pipes/disposal.dmi', "dispover-ready")) -//timed process -//charge the gas reservoir and perform flush if ready + +// timed process +// charge the gas reservoir and perform flush if ready /obj/machinery/disposal/bin/process() - if(stat & BROKEN) //nothing can happen if broken + if(stat & BROKEN) // nothing can happen if broken return flush_count++ - if(flush_count >= flush_every_ticks) - if(contents.len) - if(mode == PRESSURE_MAXED) + if( flush_count >= flush_every_ticks ) + if( contents.len ) + if(mode == 2) spawn(0) feedback_inc("disposal_auto_flush",1) flush() flush_count = 0 - updateDialog() + src.updateDialog() - if(flush && air_contents.return_pressure() >= SEND_PRESSURE) // flush can happen even without power - addtimer(src, "flush", 0) + if(flush && air_contents.return_pressure() >= SEND_PRESSURE ) // flush can happen even without power + spawn(0) + flush() - if(stat & NOPOWER) // won't charge if no power + if(stat & NOPOWER) // won't charge if no power return - use_power(100) // base power usage + use_power(100) // base power usage - if(mode != PRESSURE_ON) // if off or ready, no need to charge + if(mode != 1) // if off or ready, no need to charge return // otherwise charge - use_power(500) // charging power usage + use_power(500) // charging power usage - var/atom/L = loc //recharging from loc turf + var/atom/L = loc // recharging from loc turf var/datum/gas_mixture/env = L.return_air() var/pressure_delta = (SEND_PRESSURE*1.01) - air_contents.return_pressure() @@ -419,9 +470,9 @@ air_update_turf() - //if full enough, switch to ready mode + // if full enough, switch to ready mode if(air_contents.return_pressure() >= SEND_PRESSURE) - mode = PRESSURE_MAXED + mode = 2 update_icon() return @@ -429,6 +480,7 @@ if(user.stat == DEAD || !(user.sight & (SEEOBJS|SEEMOBS))) user.overlay_fullscreen("remote_view", /obj/screen/fullscreen/impaired, 2) + //Delivery Chute /obj/machinery/disposal/deliveryChute @@ -436,7 +488,7 @@ desc = "A chute for big and small packages alike!" density = 1 icon_state = "intake" - mode = PRESSURE_OFF // the chute doesn't need charging and always works + mode = 0 // the chute doesn't need charging and always works /obj/machinery/disposal/deliveryChute/New(loc,var/obj/structure/disposalconstruct/make_from) ..() @@ -464,7 +516,7 @@ if(WEST) if(AM.loc.x != loc.x-1) return - if(isobj(AM)) + if(istype(AM, /obj)) var/obj/O = AM O.loc = src else if(istype(AM, /mob)) @@ -489,3 +541,4 @@ /obj/machinery/disposal/deliveryChute/newHolderDestination(obj/structure/disposalholder/H) H.destinationTag = 1 + diff --git a/code/modules/recycling/sortingmachinery.dm b/code/modules/recycling/sortingmachinery.dm index 66c8ff1319..716b377e9b 100644 --- a/code/modules/recycling/sortingmachinery.dm +++ b/code/modules/recycling/sortingmachinery.dm @@ -15,13 +15,9 @@ /obj/structure/bigDelivery/Destroy() var/turf/T = get_turf(src) for(var/atom/movable/AM in contents) - AM.forceMove(T) + AM.loc = T return ..() -/obj/structure/bigDelivery/contents_explosion(severity, target) - for(var/atom/movable/AM in contents) - AM.ex_act() - /obj/structure/bigDelivery/attackby(obj/item/W, mob/user, params) if(istype(W, /obj/item/device/destTagger)) var/obj/item/device/destTagger/O = W @@ -58,7 +54,7 @@ return user << "You lean on the back of [O] and start pushing to rip the wrapping around it." if(do_after(user, 50, target = O)) - if(!user || user.stat != CONSCIOUS || user.loc != O || O.loc != src ) + if(!user || user.stat != CONSCIOUS || user.loc != src || O.loc != src ) return user << "You successfully removed [O]'s wrapping !" O.loc = loc @@ -78,9 +74,6 @@ var/giftwrapped = 0 var/sortTag = 0 -/obj/item/smallDelivery/contents_explosion(severity, target) - for(var/atom/movable/AM in contents) - AM.ex_act() /obj/item/smallDelivery/attack_self(mob/user) user.unEquip(src) @@ -143,7 +136,7 @@ //If you don't want to fuck up disposals, add to this list, and don't change the order. //If you insist on changing the order, you'll have to change every sort junction to reflect the new order. --Pete - w_class = WEIGHT_CLASS_TINY + w_class = 1 item_state = "electronic" flags = CONDUCT slot_flags = SLOT_BELT diff --git a/code/modules/research/circuitprinter.dm b/code/modules/research/circuitprinter.dm index ad15fc39b5..10a6299604 100644 --- a/code/modules/research/circuitprinter.dm +++ b/code/modules/research/circuitprinter.dm @@ -23,13 +23,12 @@ using metal and glass, it uses glass and reagents (usually sulfuric acis). "Hydroponics Machinery", "Subspace Telecomms", "Research Machinery", - "Misc. Machinery", - "Computer Parts" + "Misc. Machinery" ) /obj/machinery/r_n_d/circuit_imprinter/New() ..() - materials = new(src, list(MAT_GLASS, MAT_GOLD, MAT_DIAMOND, MAT_METAL)) + materials = new(src, list(MAT_GLASS, MAT_GOLD, MAT_DIAMOND)) create_reagents(0) var/obj/item/weapon/circuitboard/machine/B = new /obj/item/weapon/circuitboard/machine/circuit_imprinter(null) B.apply_default_parts(src) @@ -62,7 +61,7 @@ using metal and glass, it uses glass and reagents (usually sulfuric acis). T += M.rating efficiency_coeff = 2 ** (T - 1) //Only 1 manipulator here, you're making runtimes Razharas -/obj/machinery/r_n_d/circuit_imprinter/blob_act(obj/structure/blob/B) +/obj/machinery/r_n_d/circuit_imprinter/blob_act(obj/effect/blob/B) if (prob(50)) qdel(src) @@ -76,7 +75,7 @@ using metal and glass, it uses glass and reagents (usually sulfuric acis). return round(A / max(1, (all_materials[M]/efficiency_coeff))) //we eject the materials upon deconstruction. -/obj/machinery/r_n_d/circuit_imprinter/on_deconstruction() +/obj/machinery/r_n_d/circuit_imprinter/deconstruction() for(var/obj/item/weapon/reagent_containers/glass/G in component_parts) reagents.trans_to(G, G.reagents.maximum_volume) materials.retrieve_all() @@ -113,7 +112,7 @@ using metal and glass, it uses glass and reagents (usually sulfuric acis). user << "You add [amount_inserted] sheets to the [src.name]." updateUsrDialog() - else if(user.a_intent != INTENT_HARM) + else if(user.a_intent != "harm") user << "You cannot insert this item into the [name]!" return 1 else diff --git a/code/modules/research/designs.dm b/code/modules/research/designs.dm index d011ae23e2..48f33cff94 100644 --- a/code/modules/research/designs.dm +++ b/code/modules/research/designs.dm @@ -34,12 +34,10 @@ other types of metals and chemistry for reagents). var/build_type = null //Flag as to what kind machine the design is built in. See defines. var/list/materials = list() //List of materials. Format: "id" = amount. var/construction_time //Amount of time required for building the object - var/build_path = null //The file path of the object that gets created - var/list/make_reagents = list() //Reagents produced. Format: "id" = amount. Currently only supported by the biogenerator. + var/build_path = "" //The file path of the object that gets created var/list/category = null //Primarily used for Mech Fabricators, but can be used for anything - var/list/reagents_list = list() //List of reagents. Format: "id" = amount. + var/list/reagents = list() //List of reagents. Format: "id" = amount. var/maxstack = 1 - var/lathe_time_factor = 1 //How many times faster than normal is this to build on the protolathe //////////////////////////////////////// @@ -47,25 +45,15 @@ other types of metals and chemistry for reagents). //////////////////////////////////////// /obj/item/weapon/disk/design_disk - name = "component design disk" + name = "Component Design Disk" desc = "A disk for storing device design data for construction in lathes." icon_state = "datadisk1" - materials = list(MAT_METAL=300, MAT_GLASS=100) - var/list/blueprints = list() - var/max_blueprints = 1 + materials = list(MAT_METAL=100, MAT_GLASS=100) + var/datum/design/blueprint /obj/item/weapon/disk/design_disk/New() - ..() src.pixel_x = rand(-5, 5) src.pixel_y = rand(-5, 5) - for(var/i in 1 to max_blueprints) - blueprints += null - -/obj/item/weapon/disk/design_disk/adv - name = "advanced component design disk" - desc = "A disk for storing device design data for construction in lathes. This one has extra storage space." - materials = list(MAT_METAL=300, MAT_GLASS=100, MAT_SILVER = 50) - max_blueprints = 5 /////////////////////////////////// /////Non-Board Computer Stuff////// @@ -105,16 +93,6 @@ other types of metals and chemistry for reagents). build_path = /obj/item/weapon/disk/design_disk category = list("Electronics") -/datum/design/design_disk_adv - name = "Advanced Design Storage Disk" - desc = "Produce additional disks for storing device designs." - id = "design_disk_adv" - req_tech = list("programming" = 3) - build_type = PROTOLATHE - materials = list(MAT_METAL = 300, MAT_GLASS = 100, MAT_SILVER=50) - build_path = /obj/item/weapon/disk/design_disk/adv - category = list("Electronics") - /datum/design/tech_disk name = "Technology Data Storage Disk" desc = "Produce additional disks for storing technology data." @@ -125,25 +103,6 @@ other types of metals and chemistry for reagents). build_path = /obj/item/weapon/disk/tech_disk category = list("Electronics") -/datum/design/tech_disk_adv - name = "Advanced Technology Data Storage Disk" - desc = "Produce disks with extra storage capacity for storing technology data." - id = "tech_disk_adv" - req_tech = list("programming" = 3) - build_type = PROTOLATHE - materials = list(MAT_METAL = 300, MAT_GLASS = 100, MAT_SILVER=50) - build_path = /obj/item/weapon/disk/tech_disk/adv - category = list("Electronics") - -/datum/design/tech_disk_super_adv - name = "Quantum Technology Data Storage Disk" - desc = "Produce disks with extremely large storage capacity for storing technology data." - id = "tech_disk_super_adv" - req_tech = list("programming" = 6) - build_type = PROTOLATHE - materials = list(MAT_METAL = 300, MAT_GLASS = 100, MAT_SILVER=100, MAT_GOLD=100) - build_path = /obj/item/weapon/disk/tech_disk/super_adv - category = list("Electronics") ///////////////////////////////////////// /////////////////Mining////////////////// @@ -199,6 +158,36 @@ other types of metals and chemistry for reagents). build_path = /obj/item/weapon/pickaxe/drill/jackhammer category = list("Mining Designs") +/datum/design/modkit + name = "Modification Kit" + desc = "A device which allows kinetic accelerators to be wielded with one hand, and by any organism." + id = "modkit" + req_tech = list("materials" = 5, "powerstorage" = 4, "engineering" = 4, "magnets" = 4, "combat" = 3) + build_type = PROTOLATHE + materials = list(MAT_METAL = 8000, MAT_GLASS = 1500, MAT_GOLD = 1500, MAT_URANIUM = 1000) + build_path = /obj/item/modkit + category = list("Mining Designs") + +/datum/design/superaccelerator + name = "Super-Kinetic Accelerator" + desc = "An upgraded version of the proto-kinetic accelerator, with superior damage, speed and range." + id = "superaccelerator" + req_tech = list("materials" = 5, "powerstorage" = 4, "engineering" = 4, "magnets" = 4, "combat" = 3) + build_type = PROTOLATHE + materials = list(MAT_METAL = 8000, MAT_GLASS = 1500, MAT_SILVER = 2000, MAT_URANIUM = 2000) + build_path = /obj/item/weapon/gun/energy/kinetic_accelerator/super + category = list("Mining Designs") + +/datum/design/hyperaccelerator + name = "Hyper-Kinetic Accelerator" + desc = "An upgraded version of the proto-kinetic accelerator, with even more superior damage, speed and range." + id = "hyperaccelerator" + req_tech = list("materials" = 7, "powerstorage" = 5, "engineering" = 5, "magnets" = 5, "combat" = 4) + build_type = PROTOLATHE + materials = list(MAT_METAL = 8000, MAT_GLASS = 1500, MAT_SILVER = 2000, MAT_GOLD = 2000, MAT_DIAMOND = 2000) + build_path = /obj/item/weapon/gun/energy/kinetic_accelerator/hyper + category = list("Mining Designs") + /datum/design/superresonator name = "Upgraded Resonator" desc = "An upgraded version of the resonator that allows more fields to be active at once." @@ -209,67 +198,6 @@ other types of metals and chemistry for reagents). build_path = /obj/item/weapon/resonator/upgraded category = list("Mining Designs") -/datum/design/trigger_guard_mod - name = "Kinetic Accelerator Trigger Guard Mod" - desc = "A device which allows kinetic accelerators to be wielded by any organism." - id = "triggermod" - req_tech = list("materials" = 5, "powerstorage" = 4, "engineering" = 4, "magnets" = 4, "combat" = 3) - build_type = PROTOLATHE - materials = list(MAT_METAL = 2000, MAT_GLASS = 1500, MAT_GOLD = 1500, MAT_URANIUM = 1000) - build_path = /obj/item/borg/upgrade/modkit/trigger_guard - category = list("Mining Designs") - -/datum/design/damage_mod - name = "Kinetic Accelerator Damage Mod" - desc = "A device which allows kinetic accelerators to deal more damage." - id = "damagemod" - req_tech = list("materials" = 5, "powerstorage" = 4, "engineering" = 4, "magnets" = 4, "combat" = 3) - build_type = PROTOLATHE | MECHFAB - materials = list(MAT_METAL = 2000, MAT_GLASS = 1500, MAT_GOLD = 1500, MAT_URANIUM = 1000) - build_path = /obj/item/borg/upgrade/modkit/damage - category = list("Mining Designs", "Cyborg Upgrade Modules") - -/datum/design/cooldown_mod - name = "Kinetic Accelerator Cooldown Mod" - desc = "A device which decreases the cooldown of a Kinetic Accelerator." - id = "cooldownmod" - req_tech = list("materials" = 5, "powerstorage" = 4, "engineering" = 4, "magnets" = 4, "combat" = 3) - build_type = PROTOLATHE | MECHFAB - materials = list(MAT_METAL = 2000, MAT_GLASS = 1500, MAT_GOLD = 1500, MAT_URANIUM = 1000) - build_path = /obj/item/borg/upgrade/modkit/cooldown - category = list("Mining Designs", "Cyborg Upgrade Modules") - -/datum/design/range_mod - name = "Kinetic Accelerator Range Mod" - desc = "A device which allows kinetic accelerators to fire at a further range." - id = "rangemod" - req_tech = list("materials" = 5, "powerstorage" = 4, "engineering" = 4, "magnets" = 4, "combat" = 3) - build_type = PROTOLATHE | MECHFAB - materials = list(MAT_METAL = 2000, MAT_GLASS = 1500, MAT_GOLD = 1500, MAT_URANIUM = 1000) - build_path = /obj/item/borg/upgrade/modkit/range - category = list("Mining Designs", "Cyborg Upgrade Modules") - -/datum/design/superaccelerator - name = "Kinetic Accelerator Pressure Mod" - desc = "A modification kit which allows Kinetic Accelerators to do more damage while indoors." - id = "indoormod" - req_tech = list("materials" = 5, "powerstorage" = 4, "engineering" = 4, "magnets" = 4, "combat" = 3) - build_type = PROTOLATHE | MECHFAB - materials = list(MAT_METAL = 2000, MAT_GLASS = 1500, MAT_SILVER = 2000, MAT_URANIUM = 2000) - build_path = /obj/item/borg/upgrade/modkit/indoors - category = list("Mining Designs", "Cyborg Upgrade Modules") - -/datum/design/hyperaccelerator - name = "Kinetic Accelerator Mining AoE Mod" - desc = "A modification kit for Kinetic Accelerators which causes it to fire AoE blasts that destroy rock." - id = "hypermod" - req_tech = list("materials" = 7, "powerstorage" = 5, "engineering" = 5, "magnets" = 5, "combat" = 4) - build_type = PROTOLATHE | MECHFAB - materials = list(MAT_METAL = 8000, MAT_GLASS = 1500, MAT_SILVER = 2000, MAT_GOLD = 2000, MAT_DIAMOND = 2000) - build_path = /obj/item/borg/upgrade/modkit/aoe/turfs - category = list("Mining Designs", "Cyborg Upgrade Modules") - - ///////////////////////////////////////// //////////////Blue Space///////////////// ///////////////////////////////////////// @@ -369,7 +297,7 @@ other types of metals and chemistry for reagents). build_path = /obj/item/clothing/glasses/hud/security/night category = list("Equipment") -/datum/design/diagnostic_hud +datum/design/diagnostic_hud name = "Diagnostic HUD" desc = "A HUD used to analyze and determine faults within robotic machinery." id = "dianostic_hud" @@ -379,7 +307,7 @@ other types of metals and chemistry for reagents). build_path = /obj/item/clothing/glasses/hud/diagnostic category = list("Equipment") -/datum/design/diagnostic_hud_night +datum/design/diagnostic_hud_night name = "Night Vision Diagnostic HUD" desc = "Upgraded version of the diagnostic HUD designed to function during a power failure." id = "dianostic_hud_night" @@ -526,66 +454,6 @@ other types of metals and chemistry for reagents). materials = list(MAT_METAL = 4500, MAT_SILVER = 2500, MAT_TITANIUM = 3500) category = list("Equipment") -/datum/design/alienwrench - name = "Alien Wrench" - desc = "An advanced wrench obtained through Abductor technology." - id = "alien_wrench" - req_tech = list("engineering" = 5, "materials" = 5, "abductor" = 4) - build_path = /obj/item/weapon/wrench/abductor - build_type = PROTOLATHE - materials = list(MAT_METAL = 5000, MAT_SILVER = 2500, MAT_PLASMA = 1000, MAT_TITANIUM = 2000, MAT_DIAMOND = 2000) - category = list("Equipment") - -/datum/design/alienwirecutters - name = "Alien Wirecutters" - desc = "Advanced wirecutters obtained through Abductor technology." - id = "alien_wirecutters" - req_tech = list("engineering" = 5, "materials" = 5, "abductor" = 4) - build_path = /obj/item/weapon/wirecutters/abductor - build_type = PROTOLATHE - materials = list(MAT_METAL = 5000, MAT_SILVER = 2500, MAT_PLASMA = 1000, MAT_TITANIUM = 2000, MAT_DIAMOND = 2000) - category = list("Equipment") - -/datum/design/alienscrewdriver - name = "Alien Screwdriver" - desc = "An advanced screwdriver obtained through Abductor technology." - id = "alien_screwdriver" - req_tech = list("engineering" = 5, "materials" = 5, "abductor" = 4) - build_path = /obj/item/weapon/screwdriver/abductor - build_type = PROTOLATHE - materials = list(MAT_METAL = 5000, MAT_SILVER = 2500, MAT_PLASMA = 1000, MAT_TITANIUM = 2000, MAT_DIAMOND = 2000) - category = list("Equipment") - -/datum/design/aliencrowbar - name = "Alien Crowbar" - desc = "An advanced crowbar obtained through Abductor technology." - id = "alien_crowbar" - req_tech = list("engineering" = 5, "materials" = 5, "abductor" = 4) - build_path = /obj/item/weapon/crowbar/abductor - build_type = PROTOLATHE - materials = list(MAT_METAL = 5000, MAT_SILVER = 2500, MAT_PLASMA = 1000, MAT_TITANIUM = 2000, MAT_DIAMOND = 2000) - category = list("Equipment") - -/datum/design/alienwelder - name = "Alien Welding Tool" - desc = "An advanced welding tool obtained through Abductor technology." - id = "alien_welder" - req_tech = list("engineering" = 5, "plasmatech" = 5, "abductor" = 4) - build_path = /obj/item/weapon/weldingtool/abductor - build_type = PROTOLATHE - materials = list(MAT_METAL = 5000, MAT_SILVER = 2500, MAT_PLASMA = 5000, MAT_TITANIUM = 2000, MAT_DIAMOND = 2000) - category = list("Equipment") - -/datum/design/alienmultitool - name = "Alien Multitool" - desc = "An advanced multitool obtained through Abductor technology." - id = "alien_multitool" - req_tech = list("engineering" = 5, "programming" = 5, "abductor" = 4) - build_path = /obj/item/device/multitool/abductor - build_type = PROTOLATHE - materials = list(MAT_METAL = 5000, MAT_SILVER = 2500, MAT_PLASMA = 5000, MAT_TITANIUM = 2000, MAT_DIAMOND = 2000) - category = list("Equipment") - /datum/design/diskplantgene name = "Plant data disk" desc = "A disk for storing plant genetic data." diff --git a/code/modules/research/designs/autolathe_designs.dm b/code/modules/research/designs/autolathe_designs.dm index d3345b2f13..0fe0205b91 100644 --- a/code/modules/research/designs/autolathe_designs.dm +++ b/code/modules/research/designs/autolathe_designs.dm @@ -66,14 +66,6 @@ build_path = /obj/item/weapon/weldingtool category = list("initial","Tools") -/datum/design/mini_weldingtool - name = "Emergency welding tool" - id = "mini_welding_tool" - build_type = AUTOLATHE - materials = list(MAT_METAL = 30, MAT_GLASS = 10) - build_path = /obj/item/weapon/weldingtool/mini - category = list("initial","Tools") - /datum/design/screwdriver name = "Screwdriver" id = "screwdriver" @@ -507,7 +499,7 @@ name = "Light tube" id = "light_tube" build_type = AUTOLATHE - materials = list(MAT_GLASS = 100) + materials = list(MAT_METAL = 60, MAT_GLASS = 100) build_path = /obj/item/weapon/light/tube category = list("initial", "Construction") @@ -515,7 +507,7 @@ name = "Light bulb" id = "light_bulb" build_type = AUTOLATHE - materials = list(MAT_GLASS = 100) + materials = list(MAT_METAL = 60, MAT_GLASS = 100) build_path = /obj/item/weapon/light/bulb category = list("initial", "Construction") @@ -719,35 +711,3 @@ materials = list(MAT_METAL = 12000) build_path = /obj/item/wallframe/turret_control category = list("initial", "Construction") - -/datum/design/conveyor_belt - name = "Conveyor belt" - id = "conveyor_belt" - build_type = AUTOLATHE - materials = list(MAT_METAL = 5000) - build_path = /obj/item/conveyor_construct - category = list("initial", "Construction") - -/datum/design/conveyor_switch - name = "Conveyor belt switch" - id = "conveyor_switch" - build_type = AUTOLATHE - materials = list(MAT_METAL = 450, MAT_GLASS = 190) - build_path = /obj/item/conveyor_switch_construct - category = list("initial", "Construction") - -/datum/design/laptop - name = "Laptop Frame" - id = "laptop" - build_type = AUTOLATHE - materials = list(MAT_METAL = 10000, MAT_GLASS = 1000) - build_path = /obj/item/device/modular_computer/laptop/buildable - category = list("initial","Misc") - -/datum/design/tablet - name = "Tablet Frame" - id = "tablet" - build_type = AUTOLATHE - materials = list(MAT_METAL = 2000, MAT_GLASS = 1000) - build_path = /obj/item/device/modular_computer/tablet - category = list("initial","Misc") diff --git a/code/modules/research/designs/biogenerator_designs.dm b/code/modules/research/designs/biogenerator_designs.dm deleted file mode 100644 index d293101229..0000000000 --- a/code/modules/research/designs/biogenerator_designs.dm +++ /dev/null @@ -1,212 +0,0 @@ -/////////////////////////////////// -///////Biogenerator Designs /////// -/////////////////////////////////// - -/datum/design/milk - name = "10 milk" - id = "milk" - build_type = BIOGENERATOR - materials = list(MAT_BIOMASS = 20) - make_reagents = list("milk" = 10) - category = list("initial","Food") - -/datum/design/cream - name = "10 cream" - id = "cream" - build_type = BIOGENERATOR - materials = list(MAT_BIOMASS = 30) - make_reagents = list("cream" = 10) - category = list("initial","Food") - -/datum/design/milk_carton - name = "Milk carton" - id = "milk_carton" - build_type = BIOGENERATOR - materials = list(MAT_BIOMASS = 100) - build_path = /obj/item/weapon/reagent_containers/food/condiment/milk - category = list("initial","Food") - -/datum/design/cream_carton - name = "Cream carton" - id = "cream_carton" - build_type = BIOGENERATOR - materials = list(MAT_BIOMASS = 300) - build_path = /obj/item/weapon/reagent_containers/food/drinks/bottle/cream - category = list("initial","Food") - -/datum/design/black_pepper - name = "10u black pepper" - id = "black_pepper" - build_type = BIOGENERATOR - materials = list(MAT_BIOMASS = 25) - make_reagents = list("blackpepper" = 10) - category = list("initial","Food") - -/datum/design/pepper_mill - name = "Pepper mill" - id = "pepper_mill" - build_type = BIOGENERATOR - materials = list(MAT_BIOMASS = 50) - build_path = /obj/item/weapon/reagent_containers/food/condiment/peppermill - make_reagents = list() - category = list("initial","Food") - -/datum/design/monkey_cube - name = "Monkey cube" - id = "mcube" - build_type = BIOGENERATOR - materials = list(MAT_BIOMASS = 250) - build_path = /obj/item/weapon/reagent_containers/food/snacks/monkeycube - category = list("initial", "Food") - -/datum/design/ez_nut - name = "E-Z-Nutrient" - id = "ez_nut" - build_type = BIOGENERATOR - materials = list(MAT_BIOMASS = 10) - build_path = /obj/item/weapon/reagent_containers/glass/bottle/nutrient/ez - category = list("initial","Botany Chemicals") - -/datum/design/l4z_nut - name = "Left 4 Zed" - id = "l4z_nut" - build_type = BIOGENERATOR - materials = list(MAT_BIOMASS = 20) - build_path = /obj/item/weapon/reagent_containers/glass/bottle/nutrient/l4z - category = list("initial","Botany Chemicals") - -/datum/design/rh_nut - name = "Robust Harvest" - id = "rh_nut" - build_type = BIOGENERATOR - materials = list(MAT_BIOMASS = 25) - build_path = /obj/item/weapon/reagent_containers/glass/bottle/nutrient/rh - category = list("initial","Botany Chemicals") - -/datum/design/weed_killer - name = "Weed Killer" - id = "weed_killer" - build_type = BIOGENERATOR - materials = list(MAT_BIOMASS = 50) - build_path = /obj/item/weapon/reagent_containers/glass/bottle/killer/weedkiller - category = list("initial","Botany Chemicals") - -/datum/design/pest_spray - name = "Pest Killer" - id = "pest_spray" - build_type = BIOGENERATOR - materials = list(MAT_BIOMASS = 50) - build_path = /obj/item/weapon/reagent_containers/glass/bottle/killer/pestkiller - category = list("initial","Botany Chemicals") - -/datum/design/botany_bottle - name = "Empty Bottle" - id = "botany_bottle" - build_type = BIOGENERATOR - materials = list(MAT_BIOMASS = 5) - build_path = /obj/item/weapon/reagent_containers/glass/bottle/nutrient/empty - category = list("initial", "Botany Chemicals") - -/datum/design/cloth - name = "Roll of cloth" - id = "cloth" - build_type = BIOGENERATOR - materials = list(MAT_BIOMASS = 50) - build_path = /obj/item/stack/sheet/cloth - category = list("initial","Leather and Cloth") - -/datum/design/wallet - name = "Wallet" - id = "wallet" - build_type = BIOGENERATOR - materials = list(MAT_BIOMASS = 100) - build_path = /obj/item/weapon/storage/wallet - category = list("initial","Leather and Cloth") - -/datum/design/botany_gloves - name = "Botanical gloves" - id = "botany_gloves" - build_type = BIOGENERATOR - materials = list(MAT_BIOMASS = 150) - build_path = /obj/item/clothing/gloves/botanic_leather - category = list("initial","Leather and Cloth") - -/datum/design/toolbelt - name = "Utility Belt" - id = "toolbelt" - build_type = BIOGENERATOR - materials = list(MAT_BIOMASS = 300) - build_path = /obj/item/weapon/storage/belt/utility - category = list("initial","Leather and Cloth") - -/datum/design/secbelt - name = "Security belt" - id = "secbelt" - build_type = BIOGENERATOR - materials = list(MAT_BIOMASS = 300) - build_path = /obj/item/weapon/storage/belt/security - category = list("initial","Leather and Cloth") - -/datum/design/medbelt - name = "Medical belt" - id = "medbel" - build_type = BIOGENERATOR - materials = list(MAT_BIOMASS = 300) - build_path = /obj/item/weapon/storage/belt/medical - category = list("initial","Leather and Cloth") - -/datum/design/janibelt - name = "Janitorial belt" - id = "janibelt" - build_type = BIOGENERATOR - materials = list(MAT_BIOMASS = 300) - build_path = /obj/item/weapon/storage/belt/janitor - category = list("initial","Leather and Cloth") - -/datum/design/bandolier - name = "Bandolier belt" - id = "bandolier" - build_type = BIOGENERATOR - materials = list(MAT_BIOMASS = 300) - build_path = /obj/item/weapon/storage/belt/bandolier - category = list("initial","Leather and Cloth") - -/datum/design/s_holster - name = "Shoulder holster" - id = "s_holster" - build_type = BIOGENERATOR - materials = list(MAT_BIOMASS = 400) - build_path = /obj/item/weapon/storage/belt/holster - category = list("initial","Leather and Cloth") - -/datum/design/leather_satchel - name = "Leather satchel" - id = "leather_satchel" - build_type = BIOGENERATOR - materials = list(MAT_BIOMASS = 400) - build_path = /obj/item/weapon/storage/backpack/satchel - category = list("initial","Leather and Cloth") - -/datum/design/leather_jacket - name = "Leather jacket" - id = "leather_jacket" - build_type = BIOGENERATOR - materials = list(MAT_BIOMASS = 500) - build_path = /obj/item/clothing/suit/jacket/leather - category = list("initial","Leather and Cloth") - -/datum/design/leather_overcoat - name = "Leather overcoat" - id = "leather_overcoat" - build_type = BIOGENERATOR - materials = list(MAT_BIOMASS = 1000) - build_path = /obj/item/clothing/suit/jacket/leather/overcoat - category = list("initial","Leather and Cloth") - -/datum/design/rice_hat - name = "Rice hat" - id = "rice_hat" - build_type = BIOGENERATOR - materials = list(MAT_BIOMASS = 300) - build_path = /obj/item/clothing/head/rice_hat - category = list("initial","Leather and Cloth") diff --git a/code/modules/research/designs/comp_board_designs.dm b/code/modules/research/designs/comp_board_designs.dm index ac400b4780..60b921056d 100644 --- a/code/modules/research/designs/comp_board_designs.dm +++ b/code/modules/research/designs/comp_board_designs.dm @@ -7,7 +7,7 @@ req_tech = list("programming" = 1) build_type = IMPRINTER materials = list(MAT_GLASS = 1000) - reagents_list = list("sacid" = 20) + reagents = list("sacid" = 20) build_path = /obj/item/weapon/circuitboard/computer/arcade/battle category = list("Computer Boards") diff --git a/code/modules/research/designs/computer_part_designs.dm b/code/modules/research/designs/computer_part_designs.dm deleted file mode 100644 index cd75eada7a..0000000000 --- a/code/modules/research/designs/computer_part_designs.dm +++ /dev/null @@ -1,261 +0,0 @@ -//////////////////////////////////////// -///////////Computer Parts/////////////// -//////////////////////////////////////// - -/datum/design/disk/normal - name = "hard disk drive" - id = "hdd_basic" - req_tech = list("programming" = 1, "engineering" = 1) - build_type = PROTOLATHE - materials = list(MAT_METAL = 400, MAT_GLASS = 100) - build_path = /obj/item/weapon/computer_hardware/hard_drive - category = list("Computer Parts") - -/datum/design/disk/advanced - name = "advanced hard disk drive" - id = "hdd_advanced" - req_tech = list("programming" = 2, "engineering" = 2) - build_type = PROTOLATHE - materials = list(MAT_METAL = 800, MAT_GLASS = 200) - build_path = /obj/item/weapon/computer_hardware/hard_drive/advanced - category = list("Computer Parts") - -/datum/design/disk/super - name = "super hard disk drive" - id = "hdd_super" - req_tech = list("programming" = 3, "engineering" = 3) - build_type = PROTOLATHE - materials = list(MAT_METAL = 1600, MAT_GLASS = 400) - build_path = /obj/item/weapon/computer_hardware/hard_drive/super - category = list("Computer Parts") - -/datum/design/disk/cluster - name = "cluster hard disk drive" - id = "hdd_cluster" - req_tech = list("programming" = 4, "engineering" = 4) - build_type = PROTOLATHE - materials = list(MAT_METAL = 3200, MAT_GLASS = 800) - build_path = /obj/item/weapon/computer_hardware/hard_drive/cluster - category = list("Computer Parts") - -/datum/design/disk/small - name = "solid state drive" - id = "ssd_small" - req_tech = list("programming" = 2, "engineering" = 2) - build_type = PROTOLATHE - materials = list(MAT_METAL = 800, MAT_GLASS = 200) - build_path = /obj/item/weapon/computer_hardware/hard_drive/small - category = list("Computer Parts") - -/datum/design/disk/micro - name = "micro solid state drive" - id = "ssd_micro" - req_tech = list("programming" = 1, "engineering" = 1) - build_type = PROTOLATHE - materials = list(MAT_METAL = 400, MAT_GLASS = 100) - build_path = /obj/item/weapon/computer_hardware/hard_drive/micro - category = list("Computer Parts") - - -// Network cards -/datum/design/netcard/basic - name = "network card" - id = "netcard_basic" - req_tech = list("programming" = 2, "engineering" = 1) - build_type = IMPRINTER - materials = list(MAT_METAL = 250, MAT_GLASS = 100) - reagents_list = list("sacid" = 20) - build_path = /obj/item/weapon/computer_hardware/network_card - category = list("Computer Parts") - -/datum/design/netcard/advanced - name = "advanced network card" - id = "netcard_advanced" - req_tech = list("programming" = 4, "engineering" = 2) - build_type = IMPRINTER - materials = list(MAT_METAL = 500, MAT_GLASS = 200) - reagents_list = list("sacid" = 20) - build_path = /obj/item/weapon/computer_hardware/network_card/advanced - category = list("Computer Parts") - -/datum/design/netcard/wired - name = "wired network card" - id = "netcard_wired" - req_tech = list("programming" = 5, "engineering" = 3) - build_type = IMPRINTER - materials = list(MAT_METAL = 2500, MAT_GLASS = 400) - reagents_list = list("sacid" = 20) - build_path = /obj/item/weapon/computer_hardware/network_card/wired - category = list("Computer Parts") - - -// Data disks -/datum/design/portabledrive/basic - name = "data disk" - id = "portadrive_basic" - req_tech = list("programming" = 1) - build_type = IMPRINTER - materials = list(MAT_GLASS = 800) - reagents_list = list("sacid" = 20) - build_path = /obj/item/weapon/computer_hardware/hard_drive/portable - category = list("Computer Parts") - -/datum/design/portabledrive/advanced - name = "advanced data disk" - id = "portadrive_advanced" - req_tech = list("programming" = 2) - build_type = IMPRINTER - materials = list(MAT_GLASS = 1600) - reagents_list = list("sacid" = 20) - build_path = /obj/item/weapon/computer_hardware/hard_drive/portable/advanced - category = list("Computer Parts") - -/datum/design/portabledrive/super - name = "super data disk" - id = "portadrive_super" - req_tech = list("programming" = 4) - build_type = IMPRINTER - materials = list(MAT_GLASS = 3200) - reagents_list = list("sacid" = 20) - build_path = /obj/item/weapon/computer_hardware/hard_drive/portable/super - category = list("Computer Parts") - - -// Card slot -/datum/design/cardslot - name = "ID card slot" - id = "cardslot" - req_tech = list("programming" = 2) - build_type = PROTOLATHE - materials = list(MAT_METAL = 600) - build_path = /obj/item/weapon/computer_hardware/card_slot - category = list("Computer Parts") - -// Intellicard slot -/datum/design/aislot - name = "Intellicard slot" - id = "aislot" - req_tech = list("programming" = 2) - build_type = PROTOLATHE - materials = list(MAT_METAL = 600) - build_path = /obj/item/weapon/computer_hardware/ai_slot - category = list("Computer Parts") - -// Mini printer -/datum/design/miniprinter - name = "miniprinter" - id = "miniprinter" - req_tech = list("programming" = 2, "engineering" = 2) - build_type = PROTOLATHE - materials = list(MAT_METAL = 600) - build_path = /obj/item/weapon/computer_hardware/printer/mini - category = list("Computer Parts") - - -// APC Link -/datum/design/APClink - name = "area power connector" - id = "APClink" - req_tech = list("programming" = 2, "powerstorage" = 3, "engineering" = 2) - build_type = PROTOLATHE - materials = list(MAT_METAL = 2000) - build_path = /obj/item/weapon/computer_hardware/recharger/APC - category = list("Computer Parts") - - -// Batteries -/datum/design/battery/controller - name = "power cell controller" - id = "bat_control" - req_tech = list("powerstorage" = 1, "engineering" = 1) - build_type = PROTOLATHE - materials = list(MAT_METAL = 400) - build_path = /obj/item/weapon/computer_hardware/battery - category = list("Computer Parts") - -/datum/design/battery/normal - name = "battery module" - id = "bat_normal" - req_tech = list("powerstorage" = 1, "engineering" = 1) - build_type = PROTOLATHE - materials = list(MAT_METAL = 400) - build_path = /obj/item/weapon/stock_parts/cell/computer - category = list("Computer Parts") - -/datum/design/battery/advanced - name = "advanced battery module" - id = "bat_advanced" - req_tech = list("powerstorage" = 2, "engineering" = 2) - build_type = PROTOLATHE - materials = list(MAT_METAL = 800) - build_path = /obj/item/weapon/stock_parts/cell/computer/advanced - category = list("Computer Parts") - -/datum/design/battery/super - name = "super battery module" - id = "bat_super" - req_tech = list("powerstorage" = 3, "engineering" = 3) - build_type = PROTOLATHE - materials = list(MAT_METAL = 1600) - build_path = /obj/item/weapon/stock_parts/cell/computer/super - category = list("Computer Parts") - -/datum/design/battery/nano - name = "nano battery module" - id = "bat_nano" - req_tech = list("powerstorage" = 1, "engineering" = 1) - build_type = PROTOLATHE - materials = list(MAT_METAL = 200) - build_path = /obj/item/weapon/stock_parts/cell/computer/nano - category = list("Computer Parts") - -/datum/design/battery/micro - name = "micro battery module" - id = "bat_micro" - req_tech = list("powerstorage" = 2, "engineering" = 2) - build_type = PROTOLATHE - materials = list(MAT_METAL = 400) - build_path = /obj/item/weapon/stock_parts/cell/computer/micro - category = list("Computer Parts") - - -// Processor unit -/datum/design/cpu - name = "processor board" - id = "cpu_normal" - req_tech = list("programming" = 3, "engineering" = 2) - build_type = IMPRINTER - materials = list(MAT_GLASS = 1600) - reagents_list = list("sacid" = 20) - build_path = /obj/item/weapon/computer_hardware/processor_unit - category = list("Computer Parts") - -/datum/design/cpu/small - name = "microprocessor" - id = "cpu_small" - req_tech = list("programming" = 2, "engineering" = 2) - build_type = IMPRINTER - materials = list(MAT_GLASS = 800) - reagents_list = list("sacid" = 20) - build_path = /obj/item/weapon/computer_hardware/processor_unit/small - category = list("Computer Parts") - -/datum/design/cpu/photonic - name = "photonic processor board" - id = "pcpu_normal" - req_tech = list("programming" = 5, "engineering" = 4) - build_type = IMPRINTER - materials = list(MAT_GLASS= 6400, MAT_GOLD = 2000) - reagents_list = list("sacid" = 40) - build_path = /obj/item/weapon/computer_hardware/processor_unit/photonic - category = list("Computer Parts") - -/datum/design/cpu/photonic/small - name = "photonic microprocessor" - id = "pcpu_small" - req_tech = list("programming" = 4, "engineering" = 3) - build_type = IMPRINTER - materials = list(MAT_GLASS = 3200, MAT_GOLD = 1000) - reagents_list = list("sacid" = 20) - build_path = /obj/item/weapon/computer_hardware/processor_unit/photonic/small - category = list("Computer Parts") \ No newline at end of file diff --git a/code/modules/research/designs/limbgrower_designs.dm b/code/modules/research/designs/limbgrower_designs.dm deleted file mode 100644 index 591888bfd9..0000000000 --- a/code/modules/research/designs/limbgrower_designs.dm +++ /dev/null @@ -1,43 +0,0 @@ -///////////////////////////////////// -//////////Limb Grower Designs /////// -///////////////////////////////////// - -/datum/design/leftarm - name = "Left Arm" - id = "leftarm" - build_type = LIMBGROWER - reagents = list("synthflesh" = 25) - build_path = /obj/item/bodypart/l_arm - category = list("initial","human","lizard","plasmaman") - -/datum/design/rightarm - name = "Right Arm" - id = "rightarm" - build_type = LIMBGROWER - reagents = list("synthflesh" = 25) - build_path = /obj/item/bodypart/r_arm - category = list("initial","human","lizard","plasmaman") - -/datum/design/leftleg - name = "Left Leg" - id = "leftleg" - build_type = LIMBGROWER - reagents = list("synthflesh" = 25) - build_path = /obj/item/bodypart/l_leg - category = list("initial","human","lizard","plasmaman") - -/datum/design/rightleg - name = "Right Leg" - id = "rightleg" - build_type = LIMBGROWER - reagents = list("synthflesh" = 25) - build_path = /obj/item/bodypart/r_leg - category = list("initial","human","lizard","plasmaman") - -/datum/design/armblade - name = "Arm Blade" - id = "armblade" - build_type = LIMBGROWER - reagents = list("synthflesh" = 75) - build_path = /obj/item/weapon/melee/synthetic_arm_blade - category = list("special") \ No newline at end of file diff --git a/code/modules/research/designs/machine_designs.dm b/code/modules/research/designs/machine_designs.dm index 671f1a4404..3ed57ca5fe 100644 --- a/code/modules/research/designs/machine_designs.dm +++ b/code/modules/research/designs/machine_designs.dm @@ -82,14 +82,6 @@ build_path = /obj/item/weapon/circuitboard/machine/teleporter_hub category = list ("Teleportation Machinery") -/datum/design/board/quantumpad - name = "Machine Design (Quantum Pad Board)" - desc = "The circuit board for a quantum telepad." - id = "quantumpad" - req_tech = list("programming" = 4, "bluespace" = 4, "plasmatech" = 3, "engineering" = 4) - build_path = /obj/item/weapon/circuitboard/machine/quantumpad - category = list ("Teleportation Machinery") - /datum/design/board/telepad name = "Machine Design (Telepad Board)" desc = "The circuit board for a telescience telepad." @@ -394,19 +386,3 @@ req_tech = list("programming" = 4, "biotech" = 3) build_path = /obj/item/weapon/circuitboard/machine/plantgenes category = list ("Misc. Machinery") - -/datum/design/board/ntnet_relay - name = "Machine Design (NTNet Relay Board)" - desc = "The circuit board for a wireless network relay." - id = "ntnet_relay" - req_tech = list("programming" = 2, "engineering" = 2, "bluespace" = 2) - build_path = /obj/item/weapon/circuitboard/machine/ntnet_relay - category = list("Subspace Telecomms") - -/datum/design/board/limbgrower - name = "Machine Design (Limb Grower Board)" - desc = "The circuit board for a limb grower." - id = "limbgrower" - req_tech = list("programming" = 3, "biotech" = 2) - build_path = /obj/item/weapon/circuitboard/machine/limbgrower - category = list("Medical Machinery") \ No newline at end of file diff --git a/code/modules/research/designs/mechfabricator_designs.dm b/code/modules/research/designs/mechfabricator_designs.dm index af9b2642e1..5256628eb9 100644 --- a/code/modules/research/designs/mechfabricator_designs.dm +++ b/code/modules/research/designs/mechfabricator_designs.dm @@ -3,7 +3,7 @@ name = "Cyborg Endoskeleton" id = "borg_suit" build_type = MECHFAB - build_path = /obj/item/robot_suit + build_path = /obj/item/robot_parts/robot_suit materials = list(MAT_METAL=15000) construction_time = 500 category = list("Cyborg") @@ -12,7 +12,7 @@ name = "Cyborg Torso" id = "borg_chest" build_type = MECHFAB - build_path = /obj/item/bodypart/chest/robot + build_path = /obj/item/robot_parts/chest materials = list(MAT_METAL=40000) construction_time = 350 category = list("Cyborg") @@ -21,7 +21,7 @@ name = "Cyborg Head" id = "borg_head" build_type = MECHFAB - build_path = /obj/item/bodypart/head/robot + build_path = /obj/item/robot_parts/head materials = list(MAT_METAL=5000) construction_time = 350 category = list("Cyborg") @@ -30,7 +30,7 @@ name = "Cyborg Left Arm" id = "borg_l_arm" build_type = MECHFAB - build_path = /obj/item/bodypart/l_arm/robot + build_path = /obj/item/robot_parts/l_arm materials = list(MAT_METAL=10000) construction_time = 200 category = list("Cyborg") @@ -39,7 +39,7 @@ name = "Cyborg Right Arm" id = "borg_r_arm" build_type = MECHFAB - build_path = /obj/item/bodypart/r_arm/robot + build_path = /obj/item/robot_parts/r_arm materials = list(MAT_METAL=10000) construction_time = 200 category = list("Cyborg") @@ -48,7 +48,7 @@ name = "Cyborg Left Leg" id = "borg_l_leg" build_type = MECHFAB - build_path = /obj/item/bodypart/l_leg/robot + build_path = /obj/item/robot_parts/l_leg materials = list(MAT_METAL=10000) construction_time = 200 category = list("Cyborg") @@ -57,7 +57,7 @@ name = "Cyborg Right Leg" id = "borg_r_leg" build_type = MECHFAB - build_path = /obj/item/bodypart/r_leg/robot + build_path = /obj/item/robot_parts/r_leg materials = list(MAT_METAL=10000) construction_time = 200 category = list("Cyborg") @@ -270,7 +270,7 @@ id = "gygax_armor" build_type = MECHFAB build_path = /obj/item/mecha_parts/part/gygax_armor - materials = list(MAT_METAL=15000,MAT_DIAMOND=10000,MAT_TITANIUM=10000) + materials = list(MAT_METAL=25000,MAT_DIAMOND=10000) construction_time = 600 category = list("Gygax") @@ -343,7 +343,7 @@ id = "durand_armor" build_type = MECHFAB build_path = /obj/item/mecha_parts/part/durand_armor - materials = list(MAT_METAL=30000,MAT_URANIUM=25000,MAT_TITANIUM=20000) + materials = list(MAT_METAL=50000,MAT_URANIUM=30000) construction_time = 600 category = list("Durand") @@ -481,7 +481,7 @@ id = "phazon_armor" build_type = MECHFAB build_path = /obj/item/mecha_parts/part/phazon_armor - materials = list(MAT_METAL=25000,MAT_PLASMA=20000,MAT_TITANIUM=20000) + materials = list(MAT_METAL=45000,MAT_PLASMA=30000) construction_time = 300 category = list("Phazon") @@ -505,7 +505,7 @@ category = list("Exosuit Equipment") /datum/design/mech_mining_scanner - name = "Exosuit Engineering Equipment (Mining Scanner)" + name = "Exosuit Engineering Equipement (Mining Scanner)" id = "mech_mscanner" build_type = MECHFAB build_path = /obj/item/mecha_parts/mecha_equipment/mining_scanner @@ -571,6 +571,15 @@ //////////////Borg Upgrades////////////// ///////////////////////////////////////// +/datum/design/borg_upgrade_reset + name = "Cyborg Upgrade (Module Reset Board)" + id = "borg_upgrade_reset" + build_type = MECHFAB + build_path = /obj/item/borg/upgrade/reset + materials = list(MAT_METAL=10000) + construction_time = 120 + category = list("Cyborg Upgrade Modules") + /datum/design/borg_upgrade_rename name = "Cyborg Upgrade (Rename Board)" id = "borg_upgrade_rename" @@ -639,13 +648,23 @@ construction_time = 120 category = list("Cyborg Upgrade Modules") +/datum/design/borg_upgrade_hyperka + name = "Cyborg Upgrade (Hyper-Kinetic Accelerator)" + id = "borg_upgrade_hyperka" + req_tech = list("materials" = 7, "powerstorage" = 5, "engineering" = 5, "magnets" = 5, "combat" = 4) + build_type = MECHFAB //Reqs same as human Hyper KA + materials = list(MAT_METAL = 8000, MAT_GLASS = 1500, MAT_SILVER = 2000, MAT_GOLD = 2000, MAT_DIAMOND = 2000) + build_path = /obj/item/borg/upgrade/hyperka + construction_time = 120 + category = list("Cyborg Upgrade Modules") + /datum/design/borg_upgrade_lavaproof name = "Cyborg Upgrade (Lavaproof Tracks)" id = "borg_upgrade_lavaproof" build_type = MECHFAB build_path = /obj/item/borg/upgrade/lavaproof req_tech = list("plasmatech" = 4, "materials" = 4, "engineering" = 4) - materials = list(MAT_METAL = 10000, MAT_PLASMA = 4000, MAT_TITANIUM = 5000) + materials = list(MAT_METAL = 8000, MAT_PLASMA = 10000) construction_time = 120 category = list("Cyborg Upgrade Modules") @@ -669,46 +688,6 @@ construction_time = 120 category = list("Cyborg Upgrade Modules") -/datum/design/borg_upgrade_expandedsynthesiser - name = "Cyborg Upgrade (Hypospray Expanded Synthesiser)" - id = "borg_upgrade_expandedsynthesiser" - build_type = MECHFAB - build_path = /obj/item/borg/upgrade/hypospray/expanded - req_tech = list("programming" = 5, "engineering" = 4, "biotech" = 5) - materials = list(MAT_METAL=15000, MAT_GLASS=15000, MAT_PLASMA=5000) - construction_time = 120 - category = list("Cyborg Upgrade Modules") - -/datum/design/borg_upgrade_highstrengthsynthesiser - name = "Cyborg Upgrade (Hypospray High-Strength Synthesiser)" - id = "borg_upgrade_highstrengthsynthesiser" - build_type = MECHFAB - build_path = /obj/item/borg/upgrade/hypospray/high_strength - req_tech = list("programming" = 5, "engineering" = 5, "biotech" = 6) - materials = list(MAT_METAL=15000, MAT_GLASS=15000, MAT_PLASMA=10000, MAT_URANIUM=5000) - construction_time = 120 - category = list("Cyborg Upgrade Modules") - -/datum/design/borg_upgrade_piercinghypospray - name = "Cyborg Upgrade (Piercing Hypospray)" - id = "borg_upgrade_piercinghypospray" - build_type = MECHFAB - build_path = /obj/item/borg/upgrade/piercing_hypospray - req_tech = list("materials" = 5, "engineering" = 7, "combat" = 3) - materials = list(MAT_METAL=15000, MAT_GLASS=15000, MAT_TITANIUM=10000, MAT_DIAMOND=5000) - construction_time = 120 - category = list("Cyborg Upgrade Modules") - -/datum/design/borg_upgrade_defibrillator - name = "Cyborg Upgrade (Defibrillator)" - id = "borg_upgrade_defibrillator" - build_type = MECHFAB - build_path = /obj/item/borg/upgrade/defib - req_tech = list("programming" = 4, "engineering" = 5, "materials" = 5, "powerstorage" = 5, "biotech" = 5) - materials = list(MAT_METAL=15000, MAT_GLASS=15000, MAT_SILVER=10000, MAT_GOLD=10000, MAT_TITANIUM=5000, MAT_DIAMOND=5000) - construction_time = 120 - category = list("Cyborg Upgrade Modules") - //Misc /datum/design/mecha_tracking name = "Exosuit Tracking Beacon" @@ -740,36 +719,3 @@ construction_time = 100 build_path = /obj/item/device/assembly/flash/handheld category = list("Misc") - -/datum/design/flightsuit //Multi step build process/redo WIP - name = "Flight Suit" - desc = "A specialized hardsuit that is able to attach a flightpack and accessories.." - id = "flightsuit" - build_type = MECHFAB - build_path = /obj/item/clothing/suit/space/hardsuit/flightsuit - materials = list(MAT_METAL=16000, MAT_GLASS = 8000, MAT_DIAMOND = 200, MAT_GOLD = 3000, MAT_SILVER = 3000, MAT_TITANIUM = 16000) //This expensive enough for you? - construction_time = 250 - category = list("Misc") - req_tech = list("magnets" = 2, "combat" = 2, "plasmatech" = 2, "materials" = 4, "engineering" = 3, "powerstorage" = 2) - -/datum/design/flightpack - name = "Flight Pack" - desc = "An advanced back-worn system that has dual ion engines powerful enough to grant a humanoid flight. Contains an internal self-recharging high-current capacitor for short, powerful boosts." - id = "flightpack" - build_type = MECHFAB - build_path = /obj/item/device/flightpack - materials = list(MAT_METAL=16000, MAT_GLASS = 8000, MAT_DIAMOND = 4000, MAT_GOLD = 12000, MAT_SILVER = 12000, MAT_URANIUM = 20000, MAT_PLASMA = 16000, MAT_TITANIUM = 16000) //This expensive enough for you? - construction_time = 250 - category = list("Misc") - req_tech = list("magnets" = 4, "combat" = 3, "plasmatech" = 4, "materials" = 5, "engineering" = 4, "powerstorage" = 4) - -/datum/design/flightshoes - name = "Flight Shoes" - desc = "Flight shoes, attachable to a flight suit to provide additional functions." - id = "flightshoes" - build_type = MECHFAB - build_path = /obj/item/clothing/shoes/flightshoes - materials = list(MAT_METAL = 5000, MAT_GLASS = 5000, MAT_GOLD = 1500, MAT_SILVER = 1500, MAT_PLASMA = 2000, MAT_TITANIUM = 2000) - construction_time = 100 - category = list("Misc") - req_tech = list("magnets" = 2, "combat" = 2, "plasmatech" = 3, "materials" = 3, "engineering" = 2, "powerstorage" = 2) diff --git a/code/modules/research/designs/medical_designs.dm b/code/modules/research/designs/medical_designs.dm index 818d616bb3..e599fc862c 100644 --- a/code/modules/research/designs/medical_designs.dm +++ b/code/modules/research/designs/medical_designs.dm @@ -89,7 +89,7 @@ name = "Piercing Syringe" desc = "A diamond-tipped syringe that pierces armor when launched at high velocity. It can hold up to 10 units." id = "piercesyringe" - req_tech = list("materials" = 7, "combat" = 3, "engineering" = 5) + req_tech = list("materials" = 5, "combat" = 3, "engineering" = 7) build_type = PROTOLATHE materials = list(MAT_GLASS = 4000, MAT_DIAMOND = 1500) build_path = /obj/item/weapon/reagent_containers/syringe/piercing @@ -115,66 +115,6 @@ build_path = /obj/item/device/extinguisher_refill category = list("Medical Designs") -/datum/design/alienscalpel - name = "Alien Scalpel" - desc = "An advanced scalpel obtained through Abductor technology." - id = "alien_scalpel" - req_tech = list("bio" = 4, "materials" = 4, "abductor" = 3) - build_path = /obj/item/weapon/scalpel/alien - build_type = PROTOLATHE - materials = list(MAT_METAL = 2000, MAT_SILVER = 1500, MAT_PLASMA = 500, MAT_TITANIUM = 1500) - category = list("Medical Designs") - -/datum/design/alienhemostat - name = "Alien Hemostat" - desc = "An advanced hemostat obtained through Abductor technology." - id = "alien_hemostat" - req_tech = list("bio" = 4, "materials" = 4, "abductor" = 3) - build_path = /obj/item/weapon/hemostat/alien - build_type = PROTOLATHE - materials = list(MAT_METAL = 2000, MAT_SILVER = 1500, MAT_PLASMA = 500, MAT_TITANIUM = 1500) - category = list("Medical Designs") - -/datum/design/alienretractor - name = "Alien Retractor" - desc = "An advanced retractor obtained through Abductor technology." - id = "alien_retractor" - req_tech = list("bio" = 4, "materials" = 4, "abductor" = 3) - build_path = /obj/item/weapon/retractor/alien - build_type = PROTOLATHE - materials = list(MAT_METAL = 2000, MAT_SILVER = 1500, MAT_PLASMA = 500, MAT_TITANIUM = 1500) - category = list("Medical Designs") - -/datum/design/aliensaw - name = "Alien Circular Saw" - desc = "An advanced surgical saw obtained through Abductor technology." - id = "alien_saw" - req_tech = list("bio" = 4, "materials" = 4, "abductor" = 3) - build_path = /obj/item/weapon/circular_saw/alien - build_type = PROTOLATHE - materials = list(MAT_METAL = 10000, MAT_SILVER = 2500, MAT_PLASMA = 1000, MAT_TITANIUM = 1500) - category = list("Medical Designs") - -/datum/design/aliendrill - name = "Alien Drill" - desc = "An advanced drill obtained through Abductor technology." - id = "alien_drill" - req_tech = list("bio" = 4, "materials" = 4, "abductor" = 3) - build_path = /obj/item/weapon/surgicaldrill/alien - build_type = PROTOLATHE - materials = list(MAT_METAL = 10000, MAT_SILVER = 2500, MAT_PLASMA = 1000, MAT_TITANIUM = 1500) - category = list("Medical Designs") - -/datum/design/aliencautery - name = "Alien Cautery" - desc = "An advanced cautery obtained through Abductor technology." - id = "alien_cautery" - req_tech = list("bio" = 4, "materials" = 4, "abductor" = 3) - build_path = /obj/item/weapon/cautery/alien - build_type = PROTOLATHE - materials = list(MAT_METAL = 2000, MAT_SILVER = 1500, MAT_PLASMA = 500, MAT_TITANIUM = 1500) - category = list("Medical Designs") - ///////////////////////////////////////// //////////Cybernetic Implants//////////// ///////////////////////////////////////// @@ -282,10 +222,10 @@ name = "Nutriment pump implant" desc = "This implant with synthesize and pump into your bloodstream a small amount of nutriment when you are starving." id = "ci-nutriment" - req_tech = list("materials" = 3, "powerstorage" = 4, "biotech" = 3) + req_tech = list("materials" = 5, "powerstorage" = 6, "biotech" = 5) build_type = PROTOLATHE | MECHFAB construction_time = 40 - materials = list(MAT_METAL = 500, MAT_GLASS = 500, MAT_GOLD = 500) + materials = list(MAT_METAL = 500, MAT_GLASS = 500, MAT_GOLD = 500, MAT_URANIUM = 500) build_path = /obj/item/organ/cyberimp/chest/nutriment category = list("Misc", "Medical Designs") @@ -293,7 +233,7 @@ name = "Nutriment pump implant PLUS" desc = "This implant with synthesize and pump into your bloodstream a small amount of nutriment when you are hungry." id = "ci-nutrimentplus" - req_tech = list("materials" = 5, "powerstorage" = 4, "biotech" = 4) + req_tech = list("materials" = 5, "powerstorage" = 6, "biotech" = 6) build_type = PROTOLATHE | MECHFAB construction_time = 50 materials = list(MAT_METAL = 600, MAT_GLASS = 600, MAT_GOLD = 500, MAT_URANIUM = 750) @@ -304,10 +244,10 @@ name = "Reviver implant" desc = "This implant will attempt to revive you if you lose consciousness. For the faint of heart!" id = "ci-reviver" - req_tech = list("materials" = 5, "programming" = 4, "biotech" = 5) + req_tech = list("materials" = 5, "programming" = 4, "biotech" = 8) build_type = PROTOLATHE | MECHFAB construction_time = 60 - materials = list(MAT_METAL = 800, MAT_GLASS = 800, MAT_GOLD = 300, MAT_URANIUM = 500) + materials = list(MAT_METAL = 800, MAT_GLASS = 800, MAT_GOLD = 500, MAT_URANIUM = 1000, MAT_DIAMOND = 2000) build_path = /obj/item/organ/cyberimp/chest/reviver category = list("Misc", "Medical Designs") @@ -347,16 +287,6 @@ build_path = /obj/item/weapon/implantcase category = list("Medical Designs") -/datum/design/implant_sadtrombone - name = "Sad Trombone Implant Case" - desc = "Makes death amusing." - id = "implant_trombone" - req_tech = list("materials" = 2, "biotech" = 3, "programming" = 2) - build_type = PROTOLATHE - materials = list(MAT_GLASS = 500, MAT_BANANIUM = 500) - build_path = /obj/item/weapon/implantcase/sad_trombone - category = list("Medical Designs") - /datum/design/implant_freedom name = "Freedom Implant Case" desc = "A glass case containing an implant." diff --git a/code/modules/research/designs/power_designs.dm b/code/modules/research/designs/power_designs.dm index 3ac28721da..c474db4f2f 100644 --- a/code/modules/research/designs/power_designs.dm +++ b/code/modules/research/designs/power_designs.dm @@ -52,7 +52,7 @@ id = "bluespace_cell" req_tech = list("powerstorage" = 6, "materials" = 5, "engineering" = 5, "bluespace" = 5) build_type = PROTOLATHE | MECHFAB - materials = list(MAT_METAL = 800, MAT_GOLD = 120, MAT_SILVER = 150, MAT_GLASS = 160, MAT_DIAMOND = 160, MAT_TITANIUM = 300) + materials = list(MAT_METAL = 800, MAT_GOLD = 300, MAT_SILVER = 300, MAT_GLASS = 160, MAT_DIAMOND = 160) construction_time=100 build_path = /obj/item/weapon/stock_parts/cell/bluespace category = list("Misc","Power Designs") diff --git a/code/modules/research/designs/stock_parts_designs.dm b/code/modules/research/designs/stock_parts_designs.dm index d849a1a95d..bfd81790c4 100644 --- a/code/modules/research/designs/stock_parts_designs.dm +++ b/code/modules/research/designs/stock_parts_designs.dm @@ -32,7 +32,6 @@ materials = list(MAT_METAL = 100, MAT_GLASS = 100) build_path = /obj/item/weapon/stock_parts/capacitor category = list("Stock Parts","Machinery","initial") - lathe_time_factor = 0.2 /datum/design/adv_capacitor name = "Advanced Capacitor" @@ -43,7 +42,6 @@ materials = list(MAT_METAL = 150, MAT_GLASS = 150) build_path = /obj/item/weapon/stock_parts/capacitor/adv category = list("Stock Parts") - lathe_time_factor = 0.2 /datum/design/super_capacitor name = "Super Capacitor" @@ -54,7 +52,6 @@ materials = list(MAT_METAL = 200, MAT_GLASS = 200, MAT_GOLD = 100) build_path = /obj/item/weapon/stock_parts/capacitor/super category = list("Stock Parts") - lathe_time_factor = 0.2 /datum/design/quadratic_capacitor name = "Quadratic Capacitor" @@ -65,7 +62,6 @@ materials = list(MAT_METAL = 200, MAT_GLASS = 200, MAT_DIAMOND = 100) build_path = /obj/item/weapon/stock_parts/capacitor/quadratic category = list("Stock Parts") - lathe_time_factor = 0.2 //Scanning modules /datum/design/basic_scanning @@ -77,7 +73,6 @@ materials = list(MAT_METAL = 100, MAT_GLASS = 50) build_path = /obj/item/weapon/stock_parts/scanning_module category = list("Stock Parts","Machinery","initial") - lathe_time_factor = 0.2 /datum/design/adv_scanning name = "Advanced Scanning Module" @@ -88,7 +83,6 @@ materials = list(MAT_METAL = 150, MAT_GLASS = 100) build_path = /obj/item/weapon/stock_parts/scanning_module/adv category = list("Stock Parts") - lathe_time_factor = 0.2 /datum/design/phasic_scanning name = "Phasic Scanning Module" @@ -99,7 +93,6 @@ materials = list(MAT_METAL = 200, MAT_GLASS = 150, MAT_SILVER = 60) build_path = /obj/item/weapon/stock_parts/scanning_module/phasic category = list("Stock Parts") - lathe_time_factor = 0.2 /datum/design/triphasic_scanning name = "Triphasic Scanning Module" @@ -110,7 +103,6 @@ materials = list(MAT_METAL = 200, MAT_GLASS = 200, MAT_DIAMOND = 60) build_path = /obj/item/weapon/stock_parts/scanning_module/triphasic category = list("Stock Parts") - lathe_time_factor = 0.2 //Maipulators /datum/design/micro_mani @@ -122,7 +114,6 @@ materials = list(MAT_METAL = 100) build_path = /obj/item/weapon/stock_parts/manipulator category = list("Stock Parts","Machinery","initial") - lathe_time_factor = 0.2 /datum/design/nano_mani name = "Nano Manipulator" @@ -133,7 +124,6 @@ materials = list(MAT_METAL = 150) build_path = /obj/item/weapon/stock_parts/manipulator/nano category = list("Stock Parts") - lathe_time_factor = 0.2 /datum/design/pico_mani name = "Pico Manipulator" @@ -144,7 +134,6 @@ materials = list(MAT_METAL = 200) build_path = /obj/item/weapon/stock_parts/manipulator/pico category = list("Stock Parts") - lathe_time_factor = 0.2 /datum/design/femto_mani name = "Femto Manipulator" @@ -152,10 +141,9 @@ id = "femto_mani" req_tech = list("materials" = 7, "programming" = 5, "engineering" = 5, "bluespace" = 5) build_type = PROTOLATHE - materials = list(MAT_METAL = 200, MAT_DIAMOND = 30, MAT_TITANIUM = 30) + materials = list(MAT_METAL = 200, MAT_DIAMOND = 60) build_path = /obj/item/weapon/stock_parts/manipulator/femto category = list("Stock Parts") - lathe_time_factor = 0.2 //Micro-lasers /datum/design/basic_micro_laser @@ -167,7 +155,6 @@ materials = list(MAT_METAL = 100, MAT_GLASS = 50) build_path = /obj/item/weapon/stock_parts/micro_laser category = list("Stock Parts","Machinery","initial") - lathe_time_factor = 0.2 /datum/design/high_micro_laser name = "High-Power Micro-Laser" @@ -178,7 +165,6 @@ materials = list(MAT_METAL = 150, MAT_GLASS = 100) build_path = /obj/item/weapon/stock_parts/micro_laser/high category = list("Stock Parts") - lathe_time_factor = 0.2 /datum/design/ultra_micro_laser name = "Ultra-High-Power Micro-Laser" @@ -189,7 +175,6 @@ materials = list(MAT_METAL = 200, MAT_GLASS = 150, MAT_URANIUM = 60) build_path = /obj/item/weapon/stock_parts/micro_laser/ultra category = list("Stock Parts") - lathe_time_factor = 0.2 /datum/design/quadultra_micro_laser name = "Quad-Ultra Micro-Laser" @@ -200,7 +185,6 @@ materials = list(MAT_METAL = 200, MAT_GLASS = 200, MAT_URANIUM = 100, MAT_DIAMOND = 60) build_path = /obj/item/weapon/stock_parts/micro_laser/quadultra category = list("Stock Parts") - lathe_time_factor = 0.2 /datum/design/basic_matter_bin name = "Basic Matter Bin" @@ -211,7 +195,6 @@ materials = list(MAT_METAL = 100) build_path = /obj/item/weapon/stock_parts/matter_bin category = list("Stock Parts","Machinery","initial") - lathe_time_factor = 0.2 /datum/design/adv_matter_bin name = "Advanced Matter Bin" @@ -222,7 +205,6 @@ materials = list(MAT_METAL = 150) build_path = /obj/item/weapon/stock_parts/matter_bin/adv category = list("Stock Parts") - lathe_time_factor = 0.2 /datum/design/super_matter_bin name = "Super Matter Bin" @@ -233,7 +215,6 @@ materials = list(MAT_METAL = 200) build_path = /obj/item/weapon/stock_parts/matter_bin/super category = list("Stock Parts") - lathe_time_factor = 0.2 /datum/design/bluespace_matter_bin name = "Bluespace Matter Bin" @@ -244,7 +225,6 @@ materials = list(MAT_METAL = 250, MAT_DIAMOND = 200) build_path = /obj/item/weapon/stock_parts/matter_bin/bluespace category = list("Stock Parts") - lathe_time_factor = 0.2 //T-Comms devices /datum/design/subspace_ansible diff --git a/code/modules/research/designs/weapon_designs.dm b/code/modules/research/designs/weapon_designs.dm index 9afb51fb27..b38453e220 100644 --- a/code/modules/research/designs/weapon_designs.dm +++ b/code/modules/research/designs/weapon_designs.dm @@ -29,7 +29,7 @@ req_tech = list("combat" = 4, "materials" = 4, "powerstorage" = 5) build_type = PROTOLATHE materials = list(MAT_METAL = 10000, MAT_GLASS = 10000, MAT_SILVER = 10000) - build_path = /obj/item/weapon/gun/energy/tesla_revolver + build_path = /obj/item/weapon/gun/energy/shock_revolver category = list("Weapons") /datum/design/nuclear_gun @@ -38,17 +38,17 @@ id = "nuclear_gun" req_tech = list("combat" = 5, "magnets" = 5, "powerstorage" = 5) build_type = PROTOLATHE - materials = list(MAT_METAL = 10000, MAT_GLASS = 2000, MAT_URANIUM = 3000, MAT_TITANIUM = 1000) - build_path = /obj/item/weapon/gun/energy/e_gun/nuclear + materials = list(MAT_METAL = 10000, MAT_GLASS = 2000, MAT_URANIUM = 4000) + build_path = /obj/item/weapon/gun/energy/gun/nuclear category = list("Weapons") /datum/design/tele_shield name = "Telescopic Riot Shield" desc = "An advanced riot shield made of lightweight materials that collapses for easy storage." id = "tele_shield" - req_tech = list("combat" = 4, "materials" = 3, "engineering" = 4) + req_tech = list("combat" = 5, "materials" = 4, "engineering" = 4) build_type = PROTOLATHE - materials = list(MAT_METAL = 4000, MAT_GLASS = 4000, MAT_SILVER = 300, MAT_TITANIUM = 200) + materials = list(MAT_METAL = 4000, MAT_GLASS = 5000, MAT_SILVER = 3000) build_path = /obj/item/weapon/shield/riot/tele category = list("Weapons") @@ -69,7 +69,7 @@ req_tech = list("combat" = 5, "materials" = 5, "biotech" = 6, "plasmatech" = 7) build_type = PROTOLATHE materials = list(MAT_GOLD = 5000,MAT_URANIUM = 10000) - reagents_list = list("mutagen" = 40) + reagents = list("mutagen" = 40) build_path = /obj/item/weapon/gun/energy/decloner category = list("Weapons") @@ -83,6 +83,16 @@ build_path = /obj/item/weapon/gun/syringe/rapidsyringe category = list("Weapons") +/datum/design/largecrossbow + name = "Energy Crossbow" + desc = "A reverse-engineered energy crossbow favored by syndicate infiltration teams and carp hunters." + id = "largecrossbow" + req_tech = list("combat" = 5, "engineering" = 3, "magnets" = 5, "syndicate" = 3) + build_type = PROTOLATHE + materials = list(MAT_METAL = 5000, MAT_GLASS = 1500, MAT_URANIUM = 1500, MAT_SILVER = 1500) + build_path = /obj/item/weapon/gun/energy/kinetic_accelerator/crossbow/large + category = list("Weapons") + /datum/design/temp_gun name = "Temperature Gun" desc = "A gun that shoots temperature bullet energythings to change temperature."//Change it if you want @@ -100,7 +110,7 @@ req_tech = list("materials" = 2, "biotech" = 4) build_type = PROTOLATHE materials = list(MAT_METAL = 2000, MAT_GLASS = 500) - reagents_list = list("radium" = 20) + reagents = list("radium" = 20) build_path = /obj/item/weapon/gun/energy/floragun category = list("Weapons") @@ -153,7 +163,7 @@ id = "xray" req_tech = list("combat" = 7, "magnets" = 5, "biotech" = 5, "powerstorage" = 4) build_type = PROTOLATHE - materials = list(MAT_GOLD = 5000,MAT_URANIUM = 8000, MAT_METAL = 5000, MAT_TITANIUM = 2000) + materials = list(MAT_GOLD = 5000,MAT_URANIUM = 10000, MAT_METAL = 5000) build_path = /obj/item/weapon/gun/energy/xray category = list("Weapons") @@ -188,6 +198,8 @@ category = list("Weapons") //WT550 Mags +// Literally cancer - Poojawa +/* /datum/design/mag_oldsmg name = "WT-550 Auto Gun Magazine (4.6x30mm)" @@ -219,7 +231,7 @@ id = "mag_oldsmg_tx" materials = list(MAT_METAL = 6000, MAT_SILVER = 600, MAT_URANIUM = 2000) build_path = /obj/item/ammo_box/magazine/wt550m9/wttx - +*/ /datum/design/stunshell name = "Stun Shell" desc = "A stunning shell for a shotgun." @@ -259,13 +271,3 @@ materials = list(MAT_SILVER = 8000, MAT_GOLD = 8000, MAT_URANIUM = 8000, MAT_GLASS = 12000, MAT_METAL = 12000, MAT_DIAMOND = 3000) build_path = /obj/item/weapon/gun/energy/gravity_gun category = list("Weapons") - -/datum/design/largecrossbow - name = "Energy Crossbow" - desc = "A reverse-engineered energy crossbow favored by syndicate infiltration teams and carp hunters." - id = "largecrossbow" - req_tech = list("combat" = 5, "engineering" = 3, "magnets" = 5, "syndicate" = 3) - build_type = PROTOLATHE - materials = list(MAT_METAL = 5000, MAT_GLASS = 1500, MAT_URANIUM = 1500, MAT_SILVER = 1500) - build_path = /obj/item/weapon/gun/energy/kinetic_accelerator/crossbow/large - category = list("Weapons") \ No newline at end of file diff --git a/code/modules/research/destructive_analyzer.dm b/code/modules/research/destructive_analyzer.dm index bb303b7579..06c7dd3aa3 100644 --- a/code/modules/research/destructive_analyzer.dm +++ b/code/modules/research/destructive_analyzer.dm @@ -1,4 +1,4 @@ - +//This file was auto-corrected by findeclaration.exe on 25.5.2012 20:42:33 /* Destructive Analyzer @@ -45,7 +45,7 @@ Note: Must be placed within 3 tiles of the R&D Console ..() /obj/machinery/r_n_d/destructive_analyzer/Insert_Item(obj/item/O, mob/user) - if(user.a_intent != INTENT_HARM) + if(user.a_intent != "harm") . = 1 if(!is_insertion_ready(user)) return @@ -61,7 +61,7 @@ Note: Must be placed within 3 tiles of the R&D Console return busy = 1 loaded_item = O - O.forceMove(src) + O.loc = src user << "You add the [O.name] to the [src.name]!" flick("d_analyzer_la", src) spawn(10) diff --git a/code/modules/research/experimentor.dm b/code/modules/research/experimentor.dm index 33f71063c2..4441a168a5 100644 --- a/code/modules/research/experimentor.dm +++ b/code/modules/research/experimentor.dm @@ -115,7 +115,7 @@ return TRUE /obj/machinery/r_n_d/experimentor/Insert_Item(obj/item/O, mob/user) - if(user.a_intent != INTENT_HARM) + if(user.a_intent != "harm") . = 1 if(!is_insertion_ready(user)) return @@ -615,7 +615,7 @@ spawn(cooldownMax) cooldown = FALSE else - user << "You aren't quite sure what to do with this yet." + user << "You aren't quite sure what to do with this, yet." //////////////// RELIC PROCS ///////////////////////////// diff --git a/code/modules/research/message_server.dm b/code/modules/research/message_server.dm index 253dbe4f1b..753f9d26b0 100644 --- a/code/modules/research/message_server.dm +++ b/code/modules/research/message_server.dm @@ -114,6 +114,7 @@ var/global/list/obj/machinery/message_server/message_servers = list() rc_msgs += new/datum/data_rc_msg(recipient,sender,message,stamp,id_auth) /obj/machinery/message_server/attack_hand(mob/user) +// user << "\blue There seem to be some parts missing from this server. They should arrive on the station in a few days, give or take a few Centcom delays." user << "You toggle PDA message passing from [active ? "On" : "Off"] to [active ? "Off" : "On"]" active = !active update_icon() @@ -201,7 +202,6 @@ var/obj/machinery/blackbox_recorder/blackbox use_power = 1 idle_power_usage = 10 active_power_usage = 100 - armor = list(melee = 25, bullet = 10, laser = 10, energy = 0, bomb = 0, bio = 0, rad = 0, fire = 50, acid = 70) var/list/messages = list() //Stores messages of non-standard frequencies var/list/messages_admin = list() @@ -225,7 +225,6 @@ var/obj/machinery/blackbox_recorder/blackbox qdel(src) blackbox = src - /obj/machinery/blackbox_recorder/Destroy() var/turf/T = locate(1,1,2) if (T) diff --git a/code/modules/research/protolathe.dm b/code/modules/research/protolathe.dm index ef947b17fa..ea62e657a7 100644 --- a/code/modules/research/protolathe.dm +++ b/code/modules/research/protolathe.dm @@ -26,15 +26,14 @@ Note: Must be placed west/left of and R&D console to function. "Electronics", "Weapons", "Ammo", - "Firing Pins", - "Computer Parts" + "Firing Pins" ) /obj/machinery/r_n_d/protolathe/New() ..() create_reagents(0) - materials = new(src, list(MAT_METAL, MAT_GLASS, MAT_SILVER, MAT_GOLD, MAT_DIAMOND, MAT_PLASMA, MAT_URANIUM, MAT_BANANIUM, MAT_TITANIUM)) + materials = new(src, list(MAT_METAL, MAT_GLASS, MAT_SILVER, MAT_GOLD, MAT_DIAMOND, MAT_PLASMA, MAT_URANIUM, MAT_BANANIUM)) var/obj/item/weapon/circuitboard/machine/B = new /obj/item/weapon/circuitboard/machine/protolathe(null) B.apply_default_parts(src) @@ -76,7 +75,7 @@ Note: Must be placed west/left of and R&D console to function. return round(A / max(1, (all_materials[M]*efficiency_coeff))) //we eject the materials upon deconstruction. -/obj/machinery/r_n_d/protolathe/on_deconstruction() +/obj/machinery/r_n_d/protolathe/deconstruction() for(var/obj/item/weapon/reagent_containers/glass/G in component_parts) reagents.trans_to(G, G.reagents.maximum_volume) materials.retrieve_all() @@ -119,7 +118,7 @@ Note: Must be placed west/left of and R&D console to function. busy = 0 updateUsrDialog() - else if(user.a_intent != INTENT_HARM) + else if(user.a_intent != "harm") user << "You cannot insert this item into the [name]!" return 1 else diff --git a/code/modules/research/rdconsole.dm b/code/modules/research/rdconsole.dm index 7211de4267..7732362d41 100644 --- a/code/modules/research/rdconsole.dm +++ b/code/modules/research/rdconsole.dm @@ -22,8 +22,8 @@ operations to skip that console. This is useful if you want to make a "public" R a circuit imprinter with certain designs on it and don't want it accidentally updating. The downside of this method is that you have to have physical access to the other console to send data back. Note: An R&D console is on Centcom so if a random griffan happens to cause a ton of data to be lost, an admin can go send it back. -- The second method is with Technology Disks and Design Disks. Each of these disks can hold technology or design datums in -their entirety. You can then take the disk to any R&D console and upload it's data to it. This method is a lot more secure (since it +- The second method is with Technology Disks and Design Disks. Each of these disks can hold a single technology or design datum in +it's entirety. You can then take the disk to any R&D console and upload it's data to it. This method is a lot more secure (since it won't update every console in existence) but it's more of a hassle to do. Also, the disks can be stolen. @@ -34,6 +34,7 @@ won't update every console in existence) but it's more of a hassle to do. Also, icon_screen = "rdcomp" icon_keyboard = "rd_key" circuit = /obj/item/weapon/circuitboard/computer/rdconsole + light_color = LIGHT_COLOR_PINK var/datum/research/files //Stores all the collected research data. var/obj/item/weapon/disk/tech_disk/t_disk = null //Stores the technology disk. var/obj/item/weapon/disk/design_disk/d_disk = null //Stores the design disk. @@ -51,7 +52,6 @@ won't update every console in existence) but it's more of a hassle to do. Also, var/selected_category var/list/datum/design/matching_designs = list() //for the search function - var/disk_slot_selected = 0 /proc/CallTechName(ID) //A simple helper proc to find the name of a tech with a given ID. @@ -122,10 +122,8 @@ won't update every console in existence) but it's more of a hassle to do. Also, user << "A disk is already loaded into the machine." return - if(istype(D, /obj/item/weapon/disk/tech_disk)) - t_disk = D - else if (istype(D, /obj/item/weapon/disk/design_disk)) - d_disk = D + if(istype(D, /obj/item/weapon/disk/tech_disk)) t_disk = D + else if (istype(D, /obj/item/weapon/disk/design_disk)) d_disk = D else user << "Machine cannot accept disks in that format." return @@ -138,7 +136,7 @@ won't update every console in existence) but it's more of a hassle to do. Also, updateUsrDialog() -/obj/machinery/computer/rdconsole/on_deconstruction() +/obj/machinery/computer/rdconsole/deconstruction() if(linked_destroy) linked_destroy.linked_console = null linked_destroy = null @@ -164,9 +162,6 @@ won't update every console in existence) but it's more of a hassle to do. Also, add_fingerprint(usr) usr.set_machine(src) - if(href_list["disk_slot"]) - disk_slot_selected = text2num(href_list["disk_slot"]) - if(href_list["menu"]) //Switches menu screens. Converts a sent text string into a number. Saves a LOT of code. var/temp_screen = text2num(href_list["menu"]) screen = temp_screen @@ -175,34 +170,16 @@ won't update every console in existence) but it's more of a hassle to do. Also, selected_category = href_list["category"] else if(href_list["updt_tech"]) //Update the research holder with information from the technology disk. - var/n = text2num(href_list["updt_tech"]) screen = 0.0 - var/wait = 50 - if(!n) - wait = 0 - for(var/D in t_disk.tech_stored) - if(D) - wait += 50 - spawn(wait) + spawn(50) screen = 1.2 - if(t_disk) - if(!n) - for(var/tech in t_disk.tech_stored) - if(tech) - files.AddTech2Known(tech) - else - files.AddTech2Known(t_disk.tech_stored[n]) - updateUsrDialog() - griefProtection() //Update centcom too + files.AddTech2Known(t_disk.stored) + updateUsrDialog() + griefProtection() //Update centcom too else if(href_list["clear_tech"]) //Erase data on the technology disk. if(t_disk) - var/n = text2num(href_list["clear_tech"]) - if(!n) - for(var/i in 1 to t_disk.max_tech_stored) - t_disk.tech_stored[i] = null - else - t_disk.tech_stored[n] = null + t_disk.stored = null else if(href_list["eject_tech"]) //Eject the technology disk. if(t_disk) @@ -211,39 +188,20 @@ won't update every console in existence) but it's more of a hassle to do. Also, screen = 1.0 else if(href_list["copy_tech"]) //Copy some technology data from the research holder to the disk. - var/slot = text2num(href_list["copy_tech"]) - t_disk.tech_stored[slot] = files.known_tech[href_list["copy_tech_ID"]] + t_disk.stored = files.known_tech[href_list["copy_tech_ID"]] screen = 1.2 else if(href_list["updt_design"]) //Updates the research holder with design data from the design disk. - var/n = text2num(href_list["updt_design"]) screen = 0.0 - var/wait = 50 - if(!n) - wait = 0 - for(var/D in d_disk.blueprints) - if(D) - wait += 50 - spawn(wait) + spawn(50) screen = 1.4 - if(d_disk) - if(!n) - for(var/D in d_disk.blueprints) - if(D) - files.AddDesign2Known(D) - else - files.AddDesign2Known(d_disk.blueprints[n]) - updateUsrDialog() - griefProtection() //Update centcom too + files.AddDesign2Known(d_disk.blueprint) + updateUsrDialog() + griefProtection() //Update centcom too else if(href_list["clear_design"]) //Erases data on the design disk. if(d_disk) - var/n = text2num(href_list["clear_design"]) - if(!n) - for(var/i in 1 to d_disk.max_blueprints) - d_disk.blueprints[i] = null - else - d_disk.blueprints[n] = null + d_disk.blueprint = null else if(href_list["eject_design"]) //Eject the design disk. if(d_disk) @@ -252,11 +210,10 @@ won't update every console in existence) but it's more of a hassle to do. Also, screen = 1.0 else if(href_list["copy_design"]) //Copy design data from the research holder to the design disk. - var/slot = text2num(href_list["copy_design"]) var/datum/design/D = files.known_designs[href_list["copy_design_ID"]] if(D) var/autolathe_friendly = 1 - if(D.reagents_list.len) + if(D.reagents.len) autolathe_friendly = 0 D.category -= "Imported" else @@ -268,7 +225,7 @@ won't update every console in existence) but it's more of a hassle to do. Also, if(D.build_type & (AUTOLATHE|PROTOLATHE|CRAFTLATHE)) // Specifically excludes circuit imprinter and mechfab D.build_type = autolathe_friendly ? (D.build_type | AUTOLATHE) : D.build_type D.category |= "Imported" - d_disk.blueprints[slot] = D + d_disk.blueprint = D screen = 1.4 else if(href_list["eject_item"]) //Eject the item inside the destructive analyzer. @@ -277,7 +234,7 @@ won't update every console in existence) but it's more of a hassle to do. Also, usr << "The destructive analyzer is busy at the moment." else if(linked_destroy.loaded_item) - linked_destroy.loaded_item.forceMove(linked_destroy.loc) + linked_destroy.loaded_item.loc = linked_destroy.loc linked_destroy.loaded_item = null linked_destroy.icon_state = "d_analyzer" screen = 1.0 @@ -385,9 +342,6 @@ won't update every console in existence) but it's more of a hassle to do. Also, var/datum/design/being_built = files.known_designs[href_list["build"]] var/amount = text2num(href_list["amount"]) - if(being_built.make_reagents.len) - return 0 - if(!linked_lathe || !being_built || !amount) updateUsrDialog() return @@ -426,21 +380,18 @@ won't update every console in existence) but it's more of a hassle to do. Also, enough_materials = 0 g2g = 0 else - for(var/R in being_built.reagents_list) - if(!linked_lathe.reagents.has_reagent(R, being_built.reagents_list[R]*coeff)) + for(var/R in being_built.reagents) + if(!linked_lathe.reagents.has_reagent(R, being_built.reagents[R]*coeff)) linked_lathe.say("Not enough reagents to complete prototype.") enough_materials = 0 g2g = 0 if(enough_materials) linked_lathe.materials.use_amount(efficient_mats, amount) - for(var/R in being_built.reagents_list) - linked_lathe.reagents.remove_reagent(R, being_built.reagents_list[R]*coeff) + for(var/R in being_built.reagents) + linked_lathe.reagents.remove_reagent(R, being_built.reagents[R]*coeff) var/P = being_built.build_path //lets save these values before the spawn() just in case. Nobody likes runtimes. - - coeff *= being_built.lathe_time_factor - spawn(32*coeff*amount**0.8) if(linked_lathe) if(g2g) //And if we only fail the material requirements, we still spend time and power @@ -502,16 +453,16 @@ won't update every console in existence) but it's more of a hassle to do. Also, enough_materials = 0 g2g = 0 else - for(var/R in being_built.reagents_list) - if(!linked_imprinter.reagents.has_reagent(R, being_built.reagents_list[R]/coeff)) + for(var/R in being_built.reagents) + if(!linked_imprinter.reagents.has_reagent(R, being_built.reagents[R]/coeff)) linked_imprinter.say("Not enough reagents to complete prototype.") enough_materials = 0 g2g = 0 if(enough_materials) linked_imprinter.materials.use_amount(efficient_mats) - for(var/R in being_built.reagents_list) - linked_imprinter.reagents.remove_reagent(R, being_built.reagents_list[R]/coeff) + for(var/R in being_built.reagents) + linked_imprinter.reagents.remove_reagent(R, being_built.reagents[R]/coeff) var/P = being_built.build_path //lets save these values before the spawn() just in case. Nobody likes runtimes. spawn(16) @@ -571,7 +522,7 @@ won't update every console in existence) but it's more of a hassle to do. Also, else if(href_list["reset"]) //Reset the R&D console's database. griefProtection() var/choice = alert("R&D Console Database Reset", "Are you sure you want to reset the R&D console's database? Data lost cannot be recovered.", "Continue", "Cancel") - if(choice == "Continue" && usr.canUseTopic(src)) + if(choice == "Continue") message_admins("[key_name_admin(usr)] reset \the [src.name]'s database") log_game("[key_name_admin(usr)] reset \the [src.name]'s database") screen = 0.0 @@ -689,19 +640,22 @@ won't update every console in existence) but it's more of a hassle to do. Also, dat += "" if(1.2) //Technology Disk Menu + dat += "Main Menu
    " - dat += "Disk Operations: Clear DiskUpload AllEject Disk" - for(var/i in 1 to t_disk.max_tech_stored) - dat += "
    " - if(t_disk.tech_stored[i]) - var/datum/tech/tech = t_disk.tech_stored[i] - dat += "Name: [tech.name]
    " - dat += "Level: [tech.level]
    " - dat += "Description: [tech.desc]
    " - dat += "Operations: Upload to DatabaseClear Slot" - else - dat += "Empty Slot
    Operations: Load Tech to Slot" - dat += "
    " + dat += "
    Technology Data Disk Contents:

    " + if(t_disk.stored == null) + dat += "The disk has no data stored on it.
    " + dat += "Operations: " + dat += "Load Tech to Disk" + else + dat += "Name: [t_disk.stored.name]
    " + dat += "Level: [t_disk.stored.level]
    " + dat += "Description: [t_disk.stored.desc]" + dat += "Operations: " + dat += "Upload to Database" + dat += "Clear Disk" + dat += "Eject Disk" + if(1.3) //Technology Disk submenu dat += "Main Menu" dat += "Return to Disk Operations
    " @@ -710,41 +664,42 @@ won't update every console in existence) but it's more of a hassle to do. Also, var/datum/tech/T = files.known_tech[v] if(T.level <= 0) continue - dat += "[T.name]" - dat += "Copy to Disk
    " + dat += "[T.name] " + dat += "Copy to Disk
    " dat += "
    " if(1.4) //Design Disk menu. - dat += "Main Menu
    " - dat += "Disk Operations: Clear DiskUpload AllEject Disk" - for(var/i in 1 to d_disk.max_blueprints) - dat += "
    " - if(d_disk.blueprints[i]) - var/datum/design/D = d_disk.blueprints[i] - dat += "Name: [D.name]
    " - if(D.build_type) - dat += "Lathe Types:
    " - if(D.build_type & IMPRINTER) dat += "Circuit Imprinter
    " - if(D.build_type & PROTOLATHE) dat += "Protolathe
    " - if(D.build_type & AUTOLATHE) dat += "Autolathe
    " - if(D.build_type & MECHFAB) dat += "Exosuit Fabricator
    " - if(D.build_type & BIOGENERATOR) dat += "Biogenerator
    " - dat += "Required Materials:
    " - var/all_mats = D.materials + D.reagents_list - for(var/M in all_mats) - dat += "* [CallMaterialName(M)] x [all_mats[M]]
    " - dat += "Operations: Upload to Database Clear Slot" - else - dat += "Empty Slot
    Operations: Load Design to Slot" - dat += "
    " - if(1.5) //Design disk submenu + dat += "Main Menu
    " + if(d_disk.blueprint == null) + dat += "The disk has no data stored on it.
    " + dat += "Operations: " + dat += "Load Design to Disk" + else + dat += "Name: [d_disk.blueprint.name]
    " + var/b_type = d_disk.blueprint.build_type + if(b_type) + dat += "Lathe Types:
    " + if(b_type & IMPRINTER) dat += "Circuit Imprinter
    " + if(b_type & PROTOLATHE) dat += "Protolathe
    " + if(b_type & AUTOLATHE) dat += "Autolathe
    " + if(b_type & MECHFAB) dat += "Exosuit Fabricator
    " + dat += "Required Materials:
    " + var/all_mats = d_disk.blueprint.materials + d_disk.blueprint.reagents + for(var/M in all_mats) + dat += "* [CallMaterialName(M)] x [all_mats[M]]
    " + dat += "Operations: " + dat += "Upload to Database" + dat += "Clear Disk" + dat += "Eject Disk" + + if(1.5) //Technology disk submenu dat += "Main Menu" dat += "Return to Disk Operations
    " dat += "

    Load Design to Disk:


    " for(var/v in files.known_designs) var/datum/design/D = files.known_designs[v] dat += "[D.name] " - dat += "Copy to Disk
    " + dat += "Copy to Disk
    " dat += "
    " if(1.6) //R&D console settings @@ -851,7 +806,7 @@ won't update every console in existence) but it's more of a hassle to do. Also, var/c = 50 var/t - var/all_materials = D.materials + D.reagents_list + var/all_materials = D.materials + D.reagents for(var/M in all_materials) t = linked_lathe.check_mat(D, M) temp_material += " | " @@ -885,14 +840,13 @@ won't update every console in existence) but it's more of a hassle to do. Also, var/temp_material var/c = 50 var/t - var/all_materials = D.materials + D.reagents_list - for(var/M in all_materials) + for(var/M in D.materials) t = linked_lathe.check_mat(D, M) temp_material += " | " if (t < 1) - temp_material += "[all_materials[M]*coeff] [CallMaterialName(M)]" + temp_material += "[D.materials[M]*coeff] [CallMaterialName(M)]" else - temp_material += " [all_materials[M]*coeff] [CallMaterialName(M)]" + temp_material += " [D.materials[M]*coeff] [CallMaterialName(M)]" c = min(c,t) if (c >= 1) @@ -970,7 +924,7 @@ won't update every console in existence) but it's more of a hassle to do. Also, var/temp_materials var/check_materials = 1 - var/all_materials = D.materials + D.reagents_list + var/all_materials = D.materials + D.reagents for(var/M in all_materials) temp_materials += " | " @@ -996,14 +950,13 @@ won't update every console in existence) but it's more of a hassle to do. Also, for(var/datum/design/D in matching_designs) var/temp_materials var/check_materials = 1 - var/all_materials = D.materials + D.reagents_list - for(var/M in all_materials) + for(var/M in D.materials) temp_materials += " | " if (!linked_imprinter.check_mat(D, M)) check_materials = 0 - temp_materials += " [all_materials[M]/coeff] [CallMaterialName(M)]" + temp_materials += " [D.materials[M]/coeff] [CallMaterialName(M)]" else - temp_materials += " [all_materials[M]/coeff] [CallMaterialName(M)]" + temp_materials += " [D.materials[M]/coeff] [CallMaterialName(M)]" if (check_materials) dat += "[D.name][temp_materials]
    " else diff --git a/code/modules/research/rdmachines.dm b/code/modules/research/rdmachines.dm index 0cbadbc994..c41346915b 100644 --- a/code/modules/research/rdmachines.dm +++ b/code/modules/research/rdmachines.dm @@ -1,4 +1,4 @@ - +//This file was auto-corrected by findeclaration.exe on 25.5.2012 20:42:33 //All devices that link into the R&D console fall into thise type for easy identification and some shared procs. @@ -33,7 +33,7 @@ var/datum/effect_system/spark_spread/s = new /datum/effect_system/spark_spread s.set_up(5, 1, src) s.start() - if (electrocute_mob(user, get_area(src), src, 0.7, TRUE)) + if (electrocute_mob(user, get_area(src), src, 0.7)) return 1 else return 0 @@ -105,7 +105,7 @@ //we eject the loaded item when deconstructing the machine -/obj/machinery/r_n_d/on_deconstruction() +/obj/machinery/r_n_d/deconstruction() if(loaded_item) - loaded_item.forceMove(loc) + loaded_item.loc = loc ..() diff --git a/code/modules/research/research.dm b/code/modules/research/research.dm index d1eeba9294..a825b72896 100644 --- a/code/modules/research/research.dm +++ b/code/modules/research/research.dm @@ -143,37 +143,11 @@ research holder datum. if((D.build_type & AUTOLATHE) && ("initial" in D.category)) //autolathe starts without hacked designs AddDesign2Known(D) -//Limb Grower files -/datum/research/limbgrower/New() - for(var/T in (subtypesof(/datum/tech))) - possible_tech += new T(src) - for(var/path in subtypesof(/datum/design)) - var/datum/design/D = new path(src) - possible_designs += D - if((D.build_type & LIMBGROWER) && ("initial" in D.category)) - AddDesign2Known(D) - /datum/research/autolathe/AddDesign2Known(datum/design/D) if(!(D.build_type & AUTOLATHE)) return ..() -//Biogenerator files -/datum/research/biogenerator/New() - for(var/T in (subtypesof(/datum/tech))) - possible_tech += new T(src) - for(var/path in subtypesof(/datum/design)) - var/datum/design/D = new path(src) - possible_designs += D - if((D.build_type & BIOGENERATOR) && ("initial" in D.category)) - AddDesign2Known(D) - -/datum/research/biogenerator/AddDesign2Known(datum/design/D) - if(!(D.build_type & BIOGENERATOR)) - return - ..() - - /*************************************************************** ** Technology Datums ** ** Includes all the various technoliges and what they make. ** @@ -299,44 +273,12 @@ research holder datum. return cost /obj/item/weapon/disk/tech_disk - name = "technology disk" + name = "Technology Disk" desc = "A disk for storing technology data for further research." icon_state = "datadisk0" - materials = list(MAT_METAL=300, MAT_GLASS=100) - var/list/tech_stored = list() - var/max_tech_stored = 1 + materials = list(MAT_METAL=30, MAT_GLASS=10) + var/datum/tech/stored /obj/item/weapon/disk/tech_disk/New() - ..() src.pixel_x = rand(-5, 5) - src.pixel_y = rand(-5, 5) - for(var/i in 1 to max_tech_stored) - tech_stored += null - - -/obj/item/weapon/disk/tech_disk/adv - name = "advanced technology disk" - desc = "A disk for storing technology data for further research. This one has extra storage space." - materials = list(MAT_METAL=300, MAT_GLASS=100, MAT_SILVER=50) - max_tech_stored = 5 - -/obj/item/weapon/disk/tech_disk/super_adv - name = "quantum technology disk" - desc = "A disk for storing technology data for further research. This one has extremely large storage space." - materials = list(MAT_METAL=300, MAT_GLASS=100, MAT_SILVER=100, MAT_GOLD=100) - max_tech_stored = 10 - -/obj/item/weapon/disk/tech_disk/debug - name = "centcomm technology disk" - desc = "A debug item for research" - materials = list() - max_tech_stored = 0 - -/obj/item/weapon/disk/tech_disk/debug/New() - ..() - var/list/techs = subtypesof(/datum/tech) - max_tech_stored = techs.len - for(var/V in techs) - var/datum/tech/T = new V() - tech_stored += T - T.level = 8 + src.pixel_y = rand(-5, 5) \ No newline at end of file diff --git a/code/modules/research/server.dm b/code/modules/research/server.dm index 8b789b4231..e57becb825 100644 --- a/code/modules/research/server.dm +++ b/code/modules/research/server.dm @@ -3,7 +3,7 @@ icon = 'icons/obj/machines/research.dmi' icon_state = "server" var/datum/research/files - var/heat_health = 100 + var/health = 100 var/list/id_with_upload = list() //List of R&D consoles with upload to server access. var/list/id_with_download = list() //List of R&D consoles with download from server access. var/id_with_upload_string = "" //String versions for easy editing in map editor. @@ -56,12 +56,12 @@ var/datum/gas_mixture/environment = loc.return_air() switch(environment.temperature) if(0 to T0C) - heat_health = min(100, heat_health + 1) + health = min(100, health + 1) if(T0C to (T20C + 20)) - heat_health = Clamp(heat_health, 0, 100) + health = Clamp(health, 0, 100) if((T20C + 20) to (T0C + 70)) - heat_health = max(0, heat_health - 1) - if(heat_health <= 0) + health = max(0, health - 1) + if(health <= 0) /*griefProtection() This seems to get called twice before running any code that deletes/damages the server or it's files anwyay. refreshParts and the hasReq procs that get called by this are laggy and do not need to be called by every server on the map every tick */ var/updateRD = 0 @@ -84,10 +84,18 @@ griefProtection() ..() + /obj/machinery/r_n_d/server/ex_act(severity, target) griefProtection() ..() + +/obj/machinery/r_n_d/server/blob_act(obj/effect/blob/B) + griefProtection() + ..() + + + //Backup files to centcom to help admins recover data after greifer attacks /obj/machinery/r_n_d/server/proc/griefProtection() for(var/obj/machinery/r_n_d/server/centcom/C in machines) @@ -121,7 +129,7 @@ air_update_turf() //called when the server is deconstructed. -/obj/machinery/r_n_d/server/on_deconstruction() +/obj/machinery/r_n_d/server/deconstruction() griefProtection() ..() @@ -226,7 +234,7 @@ else if(href_list["reset_tech"]) var/choice = alert("Technology Data Reset", "Are you sure you want to reset this technology to its default data? Data lost cannot be recovered.", "Continue", "Cancel") - if(choice == "Continue" && usr.canUseTopic(src)) + if(choice == "Continue") var/datum/tech/T = temp_server.files.known_tech[href_list["reset_tech"]] if(T) T.level = 1 @@ -234,7 +242,7 @@ else if(href_list["reset_design"]) var/choice = alert("Design Data Deletion", "Are you sure you want to delete this design? Data lost cannot be recovered.", "Continue", "Cancel") - if(choice == "Continue" && usr.canUseTopic(src)) + if(choice == "Continue") var/datum/design/D = temp_server.files.known_designs[href_list["reset_design"]] if(D) temp_server.files.known_designs -= D.id diff --git a/code/modules/research/stock_parts.dm b/code/modules/research/stock_parts.dm index 965ca9fc20..a173888973 100644 --- a/code/modules/research/stock_parts.dm +++ b/code/modules/research/stock_parts.dm @@ -4,7 +4,7 @@ desc = "Special mechanical module made to store, sort, and apply standard machine parts." icon_state = "RPED" item_state = "RPED" - w_class = WEIGHT_CLASS_HUGE + w_class = 5 can_hold = list(/obj/item/weapon/stock_parts) storage_slots = 50 use_to_pickup = 1 @@ -12,7 +12,7 @@ allow_quick_empty = 1 collection_mode = 1 display_contents_with_number = 1 - max_w_class = WEIGHT_CLASS_NORMAL + max_w_class = 3 max_combined_w_class = 100 var/works_from_distance = 0 var/pshoom_or_beepboopblorpzingshadashwoosh = 'sound/items/rped.ogg' @@ -25,16 +25,16 @@ if(istype(T)) if(T.component_parts) T.exchange_parts(user, src) - user.Beam(T,icon_state="rped_upgrade",time=5) + user.Beam(T,icon_state="rped_upgrade",icon='icons/effects/effects.dmi',time=5) return /obj/item/weapon/storage/part_replacer/bluespace name = "bluespace rapid part exchange device" desc = "A version of the RPED that allows for replacement of parts and scanning from a distance, along with higher capacity for parts." icon_state = "BS_RPED" - w_class = WEIGHT_CLASS_NORMAL + w_class = 3 storage_slots = 400 - max_w_class = WEIGHT_CLASS_NORMAL + max_w_class = 3 max_combined_w_class = 800 works_from_distance = 1 pshoom_or_beepboopblorpzingshadashwoosh = 'sound/items/PSHOOM.ogg' @@ -45,7 +45,7 @@ if(get_dist(user, dest_object) < 8) if(dest_object.storage_contents_dump_act(src, user)) play_rped_sound() - user.Beam(dest_object,icon_state="rped_upgrade",time=5) + user.Beam(dest_object,icon_state="rped_upgrade",icon='icons/effects/effects.dmi',time=5) return 1 user << "The [src.name] buzzes." playsound(src, 'sound/machines/buzz-sigh.ogg', 50, 0) @@ -67,7 +67,7 @@ name = "stock part" desc = "What?" icon = 'icons/obj/stock_parts.dmi' - w_class = WEIGHT_CLASS_SMALL + w_class = 2 var/rating = 1 /obj/item/weapon/stock_parts/New() @@ -301,4 +301,4 @@ icon = 'icons/obj/stock_parts.dmi' icon_state = "capacitor" desc = "A debug item for research." - origin_tech = "materials=8;programming=8;magnets=8;powerstorage=8;bluespace=8;combat=8;biotech=8;syndicate=8;engineering=8;plasmatech=8;abductor=8" + origin_tech = "materials=8;programming=8;magnets=8;powerstorage=8;bluespace=8;combat=8;biotech=8;syndicate=8;engineering=8;plasmatech=8" diff --git a/code/modules/research/xenobiology/xenobio_camera.dm b/code/modules/research/xenobiology/xenobio_camera.dm index 4dafb874e0..2bfbd3b404 100644 --- a/code/modules/research/xenobiology/xenobio_camera.dm +++ b/code/modules/research/xenobiology/xenobio_camera.dm @@ -28,6 +28,7 @@ icon_screen = "slime_comp" icon_keyboard = "rd_key" + light_color = LIGHT_COLOR_PINK /obj/machinery/computer/camera_advanced/xenobio/CreateEye() eyeobj = new /mob/camera/aiEye/remote/xenobio() @@ -65,20 +66,10 @@ /obj/machinery/computer/camera_advanced/xenobio/attackby(obj/item/O, mob/user, params) if(istype(O, /obj/item/weapon/reagent_containers/food/snacks/monkeycube)) monkeys++ - user << "You feed [O] to [src]. It now has [monkeys] monkey cubes stored." + user << "You feed [O] to the [src]. It now has [monkeys] monkey cubes stored." user.drop_item() qdel(O) return - else if(istype(O, /obj/item/weapon/storage/bag)) - var/obj/item/weapon/storage/P = O - var/loaded = 0 - for(var/obj/G in P.contents) - if(istype(G, /obj/item/weapon/reagent_containers/food/snacks/monkeycube)) - loaded = 1 - monkeys++ - qdel(G) - if (loaded) - user << "You fill [src] with the monkey cubes stored in [O]. [src] now has [monkeys] monkey cubes stored." ..() /datum/action/innate/camera_off/xenobio/Activate() diff --git a/code/modules/research/xenobiology/xenobiology.dm b/code/modules/research/xenobiology/xenobiology.dm index e4db8188aa..f284506384 100644 --- a/code/modules/research/xenobiology/xenobiology.dm +++ b/code/modules/research/xenobiology/xenobiology.dm @@ -7,13 +7,12 @@ icon = 'icons/mob/slimes.dmi' icon_state = "grey slime extract" force = 1 - w_class = WEIGHT_CLASS_TINY + w_class = 1 throwforce = 0 throw_speed = 3 throw_range = 6 origin_tech = "biotech=3" var/Uses = 1 // uses before it goes inert - var/qdel_timer = null // deletion timer, for delayed reactions /obj/item/slime_extract/attackby(obj/item/O, mob/user) if(istype(O, /obj/item/slimepotion/enhancer)) @@ -122,7 +121,7 @@ /obj/item/slimepotion name = "slime potion" desc = "A hard yet gelatinous capsule excreted by a slime, containing mysterious substances." - w_class = WEIGHT_CLASS_TINY + w_class = 1 origin_tech = "biotech=4" /obj/item/slimepotion/afterattack(obj/item/weapon/reagent_containers/target, mob/user , proximity) @@ -134,7 +133,7 @@ name = "docility potion" desc = "A potent chemical mix that nullifies a slime's hunger, causing it to become docile and tame." icon = 'icons/obj/chemical.dmi' - icon_state = "potsilver" + icon_state = "bottle19" /obj/item/slimepotion/docility/attack(mob/living/simple_animal/slime/M, mob/user) if(!isslime(M)) @@ -157,10 +156,10 @@ qdel(src) /obj/item/slimepotion/sentience - name = "intelligence potion" - desc = "A miraculous chemical mix that grants human like intelligence to living beings." + name = "sentience potion" + desc = "A miraculous chemical mix that can raise the intelligence of creatures to human levels. Unlike normal slime potions, it can be absorbed by any nonsentient being." icon = 'icons/obj/chemical.dmi' - icon_state = "potpink" + icon_state = "bottle19" origin_tech = "biotech=6" var/list/not_interested = list() var/being_used = 0 @@ -185,17 +184,17 @@ user << "You offer the sentience potion to [SM]..." being_used = 1 - var/list/candidates = pollCandidatesForMob("Do you want to play as [SM.name]?", ROLE_ALIEN, null, ROLE_ALIEN, 50, SM, POLL_IGNORE_SENTIENCE_POTION) // see poll_ignore.dm + var/list/mob/dead/observer/candidates = pollCandidates("Do you want to play as [SM.name]?", ROLE_ALIEN, null, ROLE_ALIEN, 50) var/mob/dead/observer/theghost = null if(candidates.len) theghost = pick(candidates) SM.key = theghost.key SM.languages_spoken |= HUMAN SM.languages_understood |= HUMAN - SM.mind.enslave_mind_to_creator(user) + SM.faction = user.faction SM.sentience_act() SM << "All at once it makes sense: you know what you are and who you are! Self awareness is yours!" - SM << "You are grateful to be self aware and owe [user] a great debt. Serve [user], and assist [user.p_them()] in completing [user.p_their()] goals at any cost." + SM << "You are grateful to be self aware and owe [user] a great debt. Serve [user], and assist them in completing their goals at any cost." user << "[SM] accepts the potion and suddenly becomes attentive and aware. It worked!" qdel(src) else @@ -207,7 +206,7 @@ name = "consciousness transference potion" desc = "A strange slime-based chemical that, when used, allows the user to transfer their consciousness to a lesser being." icon = 'icons/obj/chemical.dmi' - icon_state = "potorange" + icon_state = "bottle6" origin_tech = "biotech=6" var/prompted = 0 var/animal_type = SENTIENCE_ORGANIC @@ -240,7 +239,7 @@ user.mind.transfer_to(SM) SM.languages_spoken = user.languages_spoken SM.languages_understood = user.languages_understood - SM.faction = user.faction.Copy() + SM.faction = user.faction SM.sentience_act() //Same deal here as with sentience user.death() SM << "In a quick flash, you feel your consciousness flow into [SM]!" @@ -252,7 +251,7 @@ name = "slime steroid" desc = "A potent chemical mix that will cause a baby slime to generate more extract." icon = 'icons/obj/chemical.dmi' - icon_state = "potred" + icon_state = "bottle16" /obj/item/slimepotion/steroid/attack(mob/living/simple_animal/slime/M, mob/user) if(!isslime(M))//If target is not a slime. @@ -276,13 +275,13 @@ name = "extract enhancer" desc = "A potent chemical mix that will give a slime extract an additional use." icon = 'icons/obj/chemical.dmi' - icon_state = "potpurple" + icon_state = "bottle17" /obj/item/slimepotion/stabilizer name = "slime stabilizer" desc = "A potent chemical mix that will reduce the chance of a slime mutating." icon = 'icons/obj/chemical.dmi' - icon_state = "potcyan" + icon_state = "bottle15" /obj/item/slimepotion/stabilizer/attack(mob/living/simple_animal/slime/M, mob/user) if(!isslime(M)) @@ -303,7 +302,7 @@ name = "slime mutator" desc = "A potent chemical mix that will increase the chance of a slime mutating." icon = 'icons/obj/chemical.dmi' - icon_state = "potgreen" + icon_state = "bottle3" /obj/item/slimepotion/mutator/attack(mob/living/simple_animal/slime/M, mob/user) if(!isslime(M)) @@ -328,7 +327,7 @@ name = "slime speed potion" desc = "A potent chemical mix that will remove the slowdown from any item." icon = 'icons/obj/chemical.dmi' - icon_state = "potyellow" + icon_state = "bottle3" origin_tech = "biotech=5" /obj/item/slimepotion/speed/afterattack(obj/C, mob/user) @@ -351,8 +350,7 @@ V.vehicle_move_delay = 0 user <<"You slather the red gunk over the [C], making it faster." - C.remove_atom_colour(WASHABLE_COLOUR_PRIORITY) - C.add_atom_colour("#FF0000", FIXED_COLOUR_PRIORITY) + C.color = "#FF0000" qdel(src) @@ -360,7 +358,7 @@ name = "slime chill potion" desc = "A potent chemical mix that will fireproof any article of clothing. Has three uses." icon = 'icons/obj/chemical.dmi' - icon_state = "potblue" + icon_state = "bottle17" origin_tech = "biotech=5" var/uses = 3 @@ -377,39 +375,14 @@ return ..() user <<"You slather the blue gunk over the [C], fireproofing it." C.name = "fireproofed [C.name]" - C.remove_atom_colour(WASHABLE_COLOUR_PRIORITY) - C.add_atom_colour("#000080", FIXED_COLOUR_PRIORITY) + C.color = "#000080" C.max_heat_protection_temperature = FIRE_IMMUNITY_SUIT_MAX_TEMP_PROTECT C.heat_protection = C.body_parts_covered - C.resistance_flags |= FIRE_PROOF + C.burn_state = FIRE_PROOF uses -- if(!uses) qdel(src) -/obj/item/slimepotion/genderchange - name = "gender change potion" - desc = "An interesting chemical mix that changes the biological gender of what its applied to. Cannot be used on things that lack gender entirely." - icon = 'icons/obj/chemical.dmi' - icon_state = "potlightpink" - -/obj/item/slimepotion/genderchange/attack(mob/living/L, mob/user) - if(!istype(L) || L.stat == DEAD) - user << "The potion can only be used on living things!" - return - - if(L.gender != MALE && L.gender != FEMALE) - user << "The potion can only be used on gendered things!" - return - - if(L.gender == MALE) - L.gender = FEMALE - L.visible_message("[L] suddenly looks more feminine!") - else - L.gender = MALE - L.visible_message("[L] suddenly looks more masculine!") - L.regenerate_icons() - qdel(src) - ////////Adamantine Golem stuff I dunno where else to put it // This will eventually be removed. @@ -421,7 +394,6 @@ item_state = "golem" item_color = "golem" flags = ABSTRACT | NODROP - resistance_flags = LAVA_PROOF | FIRE_PROOF | UNACIDABLE | ACID_PROOF has_sensor = 0 /obj/item/clothing/suit/golem @@ -429,12 +401,11 @@ desc = "a golem's thick outter shell" icon_state = "golem" item_state = "golem" - w_class = WEIGHT_CLASS_BULKY + w_class = 4//bulky item gas_transfer_coefficient = 0.90 permeability_coefficient = 0.50 body_parts_covered = FULL_BODY flags_inv = HIDEGLOVES | HIDESHOES | HIDEJUMPSUIT - resistance_flags = LAVA_PROOF | FIRE_PROOF | UNACIDABLE | ACID_PROOF flags = ABSTRACT | NODROP /obj/item/clothing/shoes/golem @@ -442,7 +413,6 @@ desc = "sturdy adamantine feet" icon_state = "golem" item_state = null - resistance_flags = LAVA_PROOF | FIRE_PROOF | UNACIDABLE | ACID_PROOF flags = NOSLIP | ABSTRACT | NODROP @@ -452,7 +422,7 @@ icon_state = "golem" item_state = "golem" siemens_coefficient = 0 - resistance_flags = LAVA_PROOF | FIRE_PROOF | UNACIDABLE | ACID_PROOF + unacidable = 1 flags = ABSTRACT | NODROP @@ -463,7 +433,6 @@ item_state = null siemens_coefficient = 0 flags = ABSTRACT | NODROP - resistance_flags = LAVA_PROOF | FIRE_PROOF | UNACIDABLE | ACID_PROOF /obj/item/clothing/head/space/golem @@ -472,7 +441,7 @@ item_color = "dermal" name = "golem's head" desc = "a golem's head" - resistance_flags = LAVA_PROOF | FIRE_PROOF | UNACIDABLE | ACID_PROOF + unacidable = 1 flags = ABSTRACT | NODROP /obj/effect/golemrune @@ -481,7 +450,7 @@ name = "rune" icon = 'icons/obj/rune.dmi' icon_state = "golem" - resistance_flags = LAVA_PROOF | FIRE_PROOF | UNACIDABLE | ACID_PROOF + unacidable = 1 layer = TURF_LAYER /obj/effect/golemrune/New() @@ -527,12 +496,34 @@ G.dna.species.auto_equip(G) G.loc = src.loc G.key = ghost.key - G << "You are an adamantine golem. You move slowly, but are highly resistant to heat and cold as well as blunt trauma. You are unable to wear clothes, but can still use most tools. \ - Serve [user], and assist [user.p_them()] in completing their goals at any cost." + G << "You are an adamantine golem. You move slowly, but are highly resistant to heat and cold as well as blunt trauma. You are unable to wear clothes, but can still use most tools. Serve [user], and assist them in completing their goals at any cost." G.mind.store_memory("Serve [user.real_name], your creator.") - G.mind.enslave_mind_to_creator(user) + var/golem_becomes_antag = FALSE + if(iscultist(user)) //If the golem's master is a part of a team antagonist, immediately make the golem one, too + ticker.mode.add_cultist(G.mind) + golem_becomes_antag = TRUE + else if(is_gangster(user)) + ticker.mode.add_gangster(G.mind, user.mind.gang_datum, TRUE) + golem_becomes_antag = TRUE + else if(is_handofgod_redcultist(user) || is_handofgod_redprophet(user)) + ticker.mode.add_hog_follower(G.mind, "Red") + golem_becomes_antag = TRUE + else if(is_handofgod_bluecultist(user) || is_handofgod_blueprophet(user)) + ticker.mode.add_hog_follower(G.mind, "Blue") + golem_becomes_antag = TRUE + else if(is_revolutionary_in_general(user)) + ticker.mode.add_revolutionary(G.mind) + golem_becomes_antag = TRUE + else if(is_servant_of_ratvar(user)) + add_servant_of_ratvar(G) + golem_becomes_antag = TRUE + G.mind.enslaved_to = user + if(golem_becomes_antag) + G << "Despite your servitude to another cause, your true master remains [user.real_name]. This will never change unless your master's body is destroyed." + if(user.mind.special_role) + message_admins("[key_name_admin(G)](?) has been summoned by [key_name_admin(user)](?), an antagonist.") log_game("[key_name(G)] was made a golem by [key_name(user)].") log_admin("[key_name(G)] was made a golem by [key_name(user)].") qdel(src) @@ -549,6 +540,7 @@ layer = FLY_LAYER pixel_x = -64 pixel_y = -64 + unacidable = 1 mouse_opacity = 0 var/mob/living/immune = list() // the one who creates the timestop is immune var/list/stopped_atoms = list() @@ -568,13 +560,13 @@ playsound(get_turf(src), 'sound/magic/TIMEPARADOX2.ogg', 100, 1, -1) for(var/i in 1 to duration-1) for(var/atom/A in orange (freezerange, src.loc)) - if(isliving(A)) + if(istype(A, /mob/living)) var/mob/living/M = A if(M in immune) continue M.Stun(10, 1, 1) M.anchored = 1 - if(ishostile(M)) + if(istype(M, /mob/living/simple_animal/hostile)) var/mob/living/simple_animal/hostile/H = M H.AIStatus = AI_OFF H.LoseTarget() @@ -604,7 +596,7 @@ /obj/effect/timestop/proc/unfreeze_mob(mob/living/M) M.AdjustStunned(-10, 1, 1) M.anchored = 0 - if(ishostile(M)) + if(istype(M, /mob/living/simple_animal/hostile)) var/mob/living/simple_animal/hostile/H = M H.AIStatus = initial(H.AIStatus) @@ -618,7 +610,7 @@ singular_name = "floor tile" desc = "Through a series of micro-teleports these tiles let people move at incredible speeds" icon_state = "tile-bluespace" - w_class = WEIGHT_CLASS_NORMAL + w_class = 3 force = 6 materials = list(MAT_METAL=500) throwforce = 10 @@ -629,12 +621,19 @@ turf_type = /turf/open/floor/bluespace +/turf/open/floor/bluespace + slowdown = -1 + icon_state = "bluespace" + desc = "Through a series of micro-teleports these tiles let people move at incredible speeds" + floor_tile = /obj/item/stack/tile/bluespace + + /obj/item/stack/tile/sepia name = "sepia floor tile" singular_name = "floor tile" desc = "Time seems to flow very slowly around these tiles" icon_state = "tile-sepia" - w_class = WEIGHT_CLASS_NORMAL + w_class = 3 force = 6 materials = list(MAT_METAL=500) throwforce = 10 @@ -645,6 +644,13 @@ turf_type = /turf/open/floor/sepia +/turf/open/floor/sepia + slowdown = 2 + icon_state = "sepia" + desc = "Time seems to flow very slowly around these tiles" + floor_tile = /obj/item/stack/tile/sepia + + /obj/item/areaeditor/blueprints/slime name = "cerulean prints" desc = "A one use yet of blueprints made of jelly like organic material. Renaming an area to 'Xenobiology Lab' will extend the reach of the management console." @@ -655,6 +661,5 @@ var/area/A = get_area(src) if(success) for(var/turf/T in A) - T.remove_atom_colour(WASHABLE_COLOUR_PRIORITY) - T.add_atom_colour("#2956B2", FIXED_COLOUR_PRIORITY) + T.color = "#2956B2" qdel(src) diff --git a/code/modules/ruins/lavaland_ruin_code.dm b/code/modules/ruins/lavaland_ruin_code.dm index 489aa40870..f47ccb727e 100644 --- a/code/modules/ruins/lavaland_ruin_code.dm +++ b/code/modules/ruins/lavaland_ruin_code.dm @@ -1,5 +1,11 @@ //If you're looking for spawners like ash walker eggs, check ghost_role_spawners.dm +/obj/machinery/lavaland_controller + name = "weather machine" + desc = "Controls the weather... when it's on, at any rate. A sticky note on the side proclaims \"DISABLED IN FAVOR OF AN ACTUAL ATMOSPHERE\"." + icon = 'icons/obj/machines/telecomms.dmi' + icon_state = "processor_off" + /obj/structure/fans/tiny/invisible //For blocking air in ruin doorways invisibility = INVISIBILITY_ABSTRACT @@ -22,12 +28,11 @@ name = "Golem Creation Disk" desc = "A gift from the Liberator." icon_state = "datadisk1" - max_blueprints = 1 /obj/item/weapon/disk/design_disk/golem_shell/New() ..() var/datum/design/golem_shell/G = new - blueprints[1] = G + blueprint = G /datum/design/golem_shell name = "Golem Shell Construction" @@ -44,8 +49,6 @@ icon = 'icons/obj/wizard.dmi' icon_state = "construct" desc = "The incomplete body of a golem. Add ten sheets of any mineral to finish." - var/shell_type = /obj/effect/mob_spawn/human/golem - var/has_owner = FALSE //if the resulting golem obeys someone /obj/item/golem_shell/attackby(obj/item/I, mob/user, params) ..() @@ -56,15 +59,6 @@ if(istype(O, /obj/item/stack/sheet/metal)) species = /datum/species/golem - if(istype(O, /obj/item/stack/sheet/glass)) - species = /datum/species/golem/glass - - if(istype(O, /obj/item/stack/sheet/plasteel)) - species = /datum/species/golem/plasteel - - if(istype(O, /obj/item/stack/sheet/mineral/sandstone)) - species = /datum/species/golem/sand - if(istype(O, /obj/item/stack/sheet/mineral/plasma)) species = /datum/species/golem/plasma @@ -80,68 +74,13 @@ if(istype(O, /obj/item/stack/sheet/mineral/uranium)) species = /datum/species/golem/uranium - if(istype(O, /obj/item/stack/sheet/mineral/bananium)) - species = /datum/species/golem/bananium - - if(istype(O, /obj/item/stack/sheet/mineral/titanium)) - species = /datum/species/golem/titanium - - if(istype(O, /obj/item/stack/sheet/mineral/plastitanium)) - species = /datum/species/golem/plastitanium - - if(istype(O, /obj/item/stack/sheet/mineral/abductor)) - species = /datum/species/golem/alloy - - if(istype(O, /obj/item/stack/sheet/mineral/wood)) - species = /datum/species/golem/wood - - if(istype(O, /obj/item/stack/sheet/bluespace_crystal)) - species = /datum/species/golem/bluespace - if(species) if(O.use(10)) user << "You finish up the golem shell with ten sheets of [O]." - var/obj/effect/mob_spawn/human/golem/G = new shell_type(get_turf(src)) + var/obj/effect/mob_spawn/human/golem/G = new(get_turf(src)) G.mob_species = species - var/datum/species/golem/S = species - G.name += " ([initial(S.id)])" - if(has_owner) - G.owner = user qdel(src) else user << "You need at least ten sheets to finish a golem." else - user << "You can't build a golem out of this kind of material." - -//made with xenobiology, the golem obeys its creator -/obj/item/golem_shell/artificial - name = "incomplete artificial golem shell" - has_owner = TRUE - - -///Syndicate Listening Post -/obj/effect/mob_spawn/human/lavaland_syndicate - r_hand = /obj/item/weapon/gun/ballistic/automatic/sniper_rifle - name = "Syndicate Bioweapon Scientist" - uniform = /obj/item/clothing/under/syndicate - suit = /obj/item/clothing/suit/toggle/labcoat - shoes = /obj/item/clothing/shoes/combat - gloves = /obj/item/clothing/gloves/combat - radio = /obj/item/device/radio/headset/syndicate/alt - back = /obj/item/weapon/storage/backpack - pocket1 = /obj/item/weapon/gun/ballistic/automatic/pistol - pocket2 = /obj/item/weapon/card/id/syndicate/anyone - roundstart = FALSE - death = FALSE - icon = 'icons/obj/Cryogenic2.dmi' - icon_state = "sleeper" - has_id = 1 - flavour_text = "You are a syndicate agent, employed in a top secret research facility developing biological weapons. Unfortunatley, your hated enemy, Nanotrasen, has begun mining in this sector. Continue your research as best you can, and try to keep a low profile. Do not abandon the base without good cause. The base is rigged with explosives should the worst happen, do not let the base fall into enemy hands!" - -/obj/effect/mob_spawn/human/lavaland_syndicate/comms - name = "Syndicate Comms Agent" - r_hand = /obj/item/weapon/melee/energy/sword/saber - mask = /obj/item/clothing/mask/chameleon - suit = /obj/item/clothing/suit/armor/vest - flavour_text = "You are a syndicate agent, employed in a top secret research facility developing biological weapons. Unfortunatley, your hated enemy, Nanotrasen, has begun mining in this sector. Monitor enemy activity as best you can, and try to keep a low profile. Do not abandon the base without good cause. Use the communication equipment to provide support to any field agents, and sow disinformation to throw Nanotrasen off your trail. Do not let the base fall into enemy hands!" - pocket2 = /obj/item/weapon/card/id/syndicate/anyone \ No newline at end of file + user << "You can't build a golem out of this kind of material." \ No newline at end of file diff --git a/code/modules/ruins/objects_and_mobs/ash_walker_den.dm b/code/modules/ruins/objects_and_mobs/ash_walker_den.dm index c110cc2a5d..98e67d0e62 100644 --- a/code/modules/ruins/objects_and_mobs/ash_walker_den.dm +++ b/code/modules/ruins/objects_and_mobs/ash_walker_den.dm @@ -24,7 +24,7 @@ if(H.stat) visible_message("Serrated tendrils eagerly pull [H] to [src], tearing the body apart as its blood seeps over the eggs.") playsound(get_turf(src),'sound/magic/Demon_consume.ogg', 100, 1) - if(ismegafauna(H)) + if(istype(H,/mob/living/simple_animal/hostile/megafauna/dragon)) meat_counter += 20 else meat_counter ++ diff --git a/code/modules/ruins/objects_and_mobs/necropolis_gate.dm b/code/modules/ruins/objects_and_mobs/necropolis_gate.dm index ec40df76a4..ffdf2ad6eb 100644 --- a/code/modules/ruins/objects_and_mobs/necropolis_gate.dm +++ b/code/modules/ruins/objects_and_mobs/necropolis_gate.dm @@ -1,5 +1,5 @@ //The necropolis gate is used to call forth Legion from the Necropolis. -/obj/structure/necropolis_gate +/obj/structure/lavaland_door name = "necropolis gate" desc = "A tremendous and impossibly large gateway, bored into dense bedrock." icon = 'icons/effects/96x96.dmi' @@ -9,13 +9,12 @@ opacity = 1 bound_width = 96 bound_height = 96 - pixel_x = -32 - resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | UNACIDABLE | ACID_PROOF + burn_state = LAVA_PROOF luminosity = 1 var/boss = FALSE var/is_anyone_home = FALSE -/obj/structure/necropolis_gate/attack_hand(mob/user) +/obj/structure/lavaland_door/attack_hand(mob/user) for(var/mob/living/simple_animal/hostile/megafauna/legion/L in mob_list) return if(is_anyone_home) @@ -52,10 +51,10 @@ is_anyone_home = FALSE new/mob/living/simple_animal/hostile/megafauna/legion(get_step(src.loc, SOUTH)) -/obj/structure/necropolis_gate/singularity_pull() +/obj/structure/lavaland_door/singularity_pull() return 0 -/obj/structure/necropolis_gate/Destroy(force) +/obj/structure/lavaland_door/Destroy(force) if(force) . = ..() else diff --git a/code/modules/ruins/objects_and_mobs/ruin_mapping_aids.dm b/code/modules/ruins/objects_and_mobs/ruin_mapping_aids.dm deleted file mode 100644 index 0e7a6268ac..0000000000 --- a/code/modules/ruins/objects_and_mobs/ruin_mapping_aids.dm +++ /dev/null @@ -1,15 +0,0 @@ -//These landmarks can be placed in rooms/ruins to set the baseturfs of every turf in the area. Easier than having potentially unlimited subtypes of every turf or having to manually edit the turfs in the map editor - -/obj/effect/baseturf_helper - name = "lava baseturf editor" - icon = 'icons/obj/weapons.dmi' - icon_state = "syndballoon" - var/baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface - -/obj/effect/baseturf_helper/initialize() - ..() - var/area/thearea = get_area(src) - for(var/turf/T in get_area_turfs(thearea, z)) - if(T.baseturf != T.type) //Don't break indestructible walls and the like - T.baseturf = baseturf - qdel(src) \ No newline at end of file diff --git a/code/modules/ruins/objects_and_mobs/sin_ruins.dm b/code/modules/ruins/objects_and_mobs/sin_ruins.dm index 0d9550ba19..7a71d8f5ae 100644 --- a/code/modules/ruins/objects_and_mobs/sin_ruins.dm +++ b/code/modules/ruins/objects_and_mobs/sin_ruins.dm @@ -20,7 +20,7 @@ user << "No... just one more try..." user.gib() else - user.visible_message("[user] pulls [src]'s lever with a glint in [user.p_their()] eyes!", "You feel a draining as you pull the lever, but you \ + user.visible_message("[user], pulls [src]'s lever with a glint in their eyes!", "You feel a draining as you pull the lever, but you \ know it'll be worth it.") icon_state = "slots2" playsound(src, 'sound/lavaland/cursed_slot_machine.ogg', 50, 0) @@ -79,7 +79,7 @@ /obj/effect/gluttony/CanPass(atom/movable/mover, turf/target, height=0)//So bullets will fly over and stuff. if(height==0) return 1 - if(ishuman(mover)) + if(istype(mover, /mob/living/carbon/human)) var/mob/living/carbon/human/H = mover if(H.nutrition >= NUTRITION_LEVEL_FAT) H.visible_message("[H] pushes through [src]!", "You've seen and eaten worse than this.") @@ -97,7 +97,7 @@ icon_state = "magic_mirror" /obj/structure/mirror/magic/pride/curse(mob/user) - user.visible_message("The ground splits beneath [user] as [user.p_their()] hand leaves the mirror!", \ + user.visible_message("The ground splits beneath [user] as their hand leaves the mirror!", \ "Perfect. Much better! Now nobody will be able to resist yo-") var/turf/T = get_turf(user) T.ChangeTurf(/turf/open/chasm/straight_down) @@ -114,7 +114,7 @@ item_state = "render" force = 18 throwforce = 10 - w_class = WEIGHT_CLASS_NORMAL + w_class = 3 hitsound = 'sound/weapons/bladeslice.ogg' /obj/item/weapon/kitchen/knife/envy/afterattack(atom/movable/AM, mob/living/carbon/human/user, proximity) @@ -123,7 +123,7 @@ return if(!istype(user)) return - if(ishuman(AM)) + if(istype(AM, /mob/living/carbon/human)) var/mob/living/carbon/human/H = AM if(user.real_name != H.dna.real_name) user.real_name = H.dna.real_name diff --git a/code/modules/shuttle/computer.dm b/code/modules/shuttle/computer.dm index b179fec67e..ee0c8fe202 100644 --- a/code/modules/shuttle/computer.dm +++ b/code/modules/shuttle/computer.dm @@ -28,7 +28,7 @@ for(var/obj/docking_port/stationary/S in SSshuttle.stationary) if(!options.Find(S.id)) continue - if(!M.check_dock(S)) + if(M.canDock(S)) continue destination_found = 1 dat += "Send to [S.name]
    " @@ -76,3 +76,5 @@ emagged = 1 user << "You fried the consoles ID checking system." +/obj/machinery/computer/shuttle/fluff/New() + take_damage(100) diff --git a/code/modules/shuttle/emergency.dm b/code/modules/shuttle/emergency.dm index 1e1ef766f0..7e43f0c611 100644 --- a/code/modules/shuttle/emergency.dm +++ b/code/modules/shuttle/emergency.dm @@ -1,7 +1,7 @@ #define TIME_LEFT (SSshuttle.emergency.timeLeft()) -#define ENGINES_START_TIME 100 -#define ENGINES_STARTED (SSshuttle.emergency.mode == SHUTTLE_IGNITING) -#define IS_DOCKED (SSshuttle.emergency.mode == SHUTTLE_DOCKED || (ENGINES_STARTED)) +#define ENGINES_START_TIME 10 +#define ENGINES_STARTED (TIME_LEFT <= ENGINES_START_TIME) +#define IS_DOCKED (SSshuttle.emergency.mode == SHUTTLE_DOCKED) /obj/machinery/computer/emergency_shuttle name = "emergency shuttle console" @@ -86,9 +86,8 @@ if((old_len != authorized.len) && !ENGINES_STARTED) var/alert = (authorized.len > old_len) - var/remaining = auth_need - authorized.len - if(authorized.len && remaining) - minor_announce("[remaining] authorizations \ + if(authorized.len) + minor_announce("[auth_need - authorized.len] authorizations \ needed until shuttle is launched early", null, alert) else minor_announce("All authorizations to launch the shuttle \ @@ -126,10 +125,10 @@ // Check to see if we've reached criteria for early launch if((authorized.len >= auth_need) || emagged) // shuttle timers use 1/10th seconds internally - SSshuttle.emergency.setTimer(ENGINES_START_TIME) + SSshuttle.emergency.setTimer(ENGINES_START_TIME * 10) var/system_error = emagged ? "SYSTEM ERROR:" : null minor_announce("The emergency shuttle will launch in \ - [TIME_LEFT] seconds", system_error, alert=TRUE) + [ENGINES_START_TIME] seconds", system_error, alert=TRUE) . = TRUE /obj/machinery/computer/emergency_shuttle/emag_act(mob/user) @@ -137,17 +136,13 @@ if(!IS_DOCKED) return - if(emagged || ENGINES_STARTED) //SYSTEM ERROR: THE SHUTTLE WILL LA-SYSTEM ERROR: THE SHUTTLE WILL LA-SYSTEM ERROR: THE SHUTTLE WILL LAUNCH IN 10 SECONDS - user << "The shuttle is already about to launch!" - return - var/time = TIME_LEFT message_admins("[key_name_admin(user.client)] \ (?) \ (FLW) \ has emagged the emergency shuttle [time] seconds before launch.", 0, 1) log_game("[key_name(user)] has emagged the emergency shuttle in \ - [COORD(src)] [time] seconds before launch.") + ([x],[y],[z]) [time] seconds before launch.") emagged = TRUE var/datum/species/S = new for(var/i in 1 to 10) @@ -160,7 +155,12 @@ authorized += ID - process() + if(ENGINES_STARTED) + // Give them a message anyway + user << "The shuttle is already \ + about to launch!" + else + process() /obj/machinery/computer/emergency_shuttle/Destroy() // Our fake IDs that the emag generated are just there for colour @@ -168,9 +168,6 @@ for(var/obj/item/weapon/card/id/ID in src) qdel(ID) - if(authorized && authorized.len) - authorized.Cut() - authorized = null . = ..() @@ -182,12 +179,10 @@ width = 22 height = 11 dir = EAST - port_angle = -90 + travelDir = -90 roundstart_move = "emergency_away" var/sound_played = 0 //If the launch sound has been sent to all players on the shuttle itself - -/obj/docking_port/mobile/emergency/canDock(obj/docking_port/stationary/S) - return SHUTTLE_CAN_DOCK //If the emergency shuttle can't move, the whole game breaks, so it will force itself to land even if it has to crush a few departments in the process + var/end_sound_played = 0 //so it doesn't loop annoyingly /obj/docking_port/mobile/emergency/register() . = ..() @@ -202,14 +197,34 @@ . = ..() -/obj/docking_port/mobile/emergency/request(obj/docking_port/stationary/S, coefficient=1, area/signalOrigin, reason, redAlert) - var/call_time = SSshuttle.emergencyCallTime * coefficient +/obj/docking_port/mobile/emergency/timeLeft(divisor) + if(divisor <= 0) + divisor = 10 + if(!timer) + return round(SSshuttle.emergencyCallTime/divisor, 1) + + var/dtime = world.time - timer switch(mode) - // The shuttle can not normally be called while "recalling", so - // if this proc is called, it's via admin fiat - if(SHUTTLE_RECALL, SHUTTLE_IDLE, SHUTTLE_CALL) + if(SHUTTLE_ESCAPE) + dtime = max(SSshuttle.emergencyEscapeTime - dtime, 0) + if(SHUTTLE_DOCKED) + dtime = max(SSshuttle.emergencyDockTime - dtime, 0) + else + dtime = max(SSshuttle.emergencyCallTime - dtime, 0) + return round(dtime/divisor, 1) + +/obj/docking_port/mobile/emergency/request(obj/docking_port/stationary/S, coefficient=1, area/signalOrigin, reason, redAlert) + SSshuttle.emergencyCallTime = initial(SSshuttle.emergencyCallTime) * coefficient + switch(mode) + if(SHUTTLE_RECALL) mode = SHUTTLE_CALL - setTimer(call_time) + timer = world.time - timeLeft(1) + if(SHUTTLE_IDLE) + mode = SHUTTLE_CALL + timer = world.time + if(SHUTTLE_CALL) + if(world.time < timer) //this is just failsafe + timer = world.time else return @@ -224,7 +239,7 @@ if(mode != SHUTTLE_CALL) return - invertTimer() + timer = world.time - timeLeft(1) mode = SHUTTLE_RECALL if(prob(70)) @@ -233,25 +248,14 @@ SSshuttle.emergencyLastCallLoc = null priority_announce("The emergency shuttle has been recalled.[SSshuttle.emergencyLastCallLoc ? " Recall signal traced. Results can be viewed on any communications console." : "" ]", null, 'sound/AI/shuttlerecalled.ogg', "Priority") -/obj/docking_port/mobile/emergency/proc/is_hijacked() - var/has_people = FALSE +/* +/obj/docking_port/mobile/emergency/findTransitDock() + . = SSshuttle.getDock("emergency_transit") + if(.) + return . + return ..() +*/ - for(var/mob/living/player in player_list) - if(player.mind) - if(player.stat != DEAD) - if(issilicon(player)) //Borgs are technically dead anyways - continue - if(isanimal(player)) //animals don't count - continue - if(isbrain(player)) //also technically dead - continue - if(get_area(player) == areaInstance) - has_people = TRUE - var/location = get_turf(player.mind.current) - if(!(player.mind.special_role == "traitor" || player.mind.special_role == "Syndicate") && !istype(location, /turf/open/floor/plasteel/shuttle/red) && !istype(location, /turf/open/floor/mineral/plastitanium/brig)) - return FALSE - - return has_people /obj/docking_port/mobile/emergency/check() if(!timer) @@ -280,7 +284,7 @@ setTimer(20) return mode = SHUTTLE_DOCKED - setTimer(SSshuttle.emergencyDockTime) + timer = world.time send2irc("Server", "The Emergency Shuttle has docked with the station.") priority_announce("The Emergency Shuttle has docked with the station. You have [timeLeft(600)] minutes to board the Emergency Shuttle.", null, 'sound/AI/shuttledock.ogg', "Priority") feedback_add_details("emergency_shuttle", src.name) @@ -294,37 +298,18 @@ else G.dom_attempts = min(1,G.dom_attempts) - if(SHUTTLE_DOCKED) - if(time_left <= ENGINES_START_TIME) - mode = SHUTTLE_IGNITING - SSshuttle.checkHostileEnvironment() - if(mode == SHUTTLE_STRANDED) - return - for(var/A in SSshuttle.mobile) - var/obj/docking_port/mobile/M = A - if(M.launch_status == UNLAUNCHED) //Pods will not launch from the mine/planet, and other ships won't launch unless we tell them to. - M.check_transit_zone() - if(SHUTTLE_IGNITING) - var/success = TRUE - SSshuttle.checkHostileEnvironment() - if(mode == SHUTTLE_STRANDED) - return - - success &= (check_transit_zone() == TRANSIT_READY) - for(var/A in SSshuttle.mobile) - var/obj/docking_port/mobile/M = A - if(M.launch_status == UNLAUNCHED) - success &= (M.check_transit_zone() == TRANSIT_READY) - if(!success) - setTimer(ENGINES_START_TIME) - - if(time_left <= 50 && !sound_played) //4 seconds left:REV UP THOSE ENGINES BOYS. - should sync up with the launch + if(time_left <= 60 && !sound_played) //4 seconds left:REV UP THOSE ENGINES BOYS. - should sync up with the launch sound_played = 1 //Only rev them up once. for(var/area/shuttle/escape/E in world) E << 'sound/effects/hyperspace_begin.ogg' + if(time_left <= 0 && SSshuttle.emergencyNoEscape) + priority_announce("Hostile environment detected. Departure has been postponed indefinitely pending conflict resolution.", null, 'sound/misc/notice1.ogg', "Priority") + sound_played = 0 //Since we didn't launch, we will need to rev up the engines again next pass. + mode = SHUTTLE_STRANDED + if(time_left <= 0 && !SSshuttle.emergencyNoEscape) //move each escape pod (or applicable spaceship) to its corresponding transit dock for(var/A in SSshuttle.mobile) @@ -339,22 +324,22 @@ enterTransit() mode = SHUTTLE_ESCAPE launch_status = ENDGAME_LAUNCHED - setTimer(SSshuttle.emergencyEscapeTime) + timer = world.time priority_announce("The Emergency Shuttle has left the station. Estimate [timeLeft(600)] minutes until the shuttle docks at Central Command.", null, null, "Priority") - - if(SHUTTLE_STRANDED) - SSshuttle.checkHostileEnvironment() + for(var/mob/Player in mob_list) + if(!istype(Player,/mob/living/silicon || /mob/living/simple_animal)) + if(Player.mind) + if(Player.stat != DEAD && !isbrain(Player)) + if(Player.z != 2) + Player << sound('sound/ambience/deserted.ogg', repeat = 0, wait = 0, volume = 50, channel = 1) if(SHUTTLE_ESCAPE) - if(areaInstance.parallax_movedir && time_left <= PARALLAX_LOOP_TIME) - parallax_slowdown() + + + if(time_left <= 50 && !end_sound_played) //4 seconds left:Hyperspace trip completed. - should sync up with the landing + end_sound_played = 1 //Only rev them up once. for(var/area/shuttle/escape/E in world) E << 'sound/effects/hyperspace_end.ogg' - for(var/A in SSshuttle.mobile) - var/obj/docking_port/mobile/M = A - if(M.launch_status == ENDGAME_LAUNCHED) - if(istype(M, /obj/docking_port/mobile/pod)) - M.parallax_slowdown() if(time_left <= 0) //move each escape pod to its corresponding escape dock @@ -366,18 +351,20 @@ else continue //Mapping a new docking point for each ship mappers could potentially want docking with centcomm would take up lots of space, just let them keep flying off into the sunset for their greentext - // now move the actual emergency shuttle to centcomm - // unless the shuttle is "hijacked" - var/destination_dock = "emergency_away" - if(is_hijacked()) - destination_dock = "emergency_syndicate" - minor_announce("Corruption detected in \ - shuttle navigation protocols. Please contact your \ - supervisor.", "SYSTEM ERROR:", alert=TRUE) - - dock_id(destination_dock) + //now move the actual emergency shuttle to centcomm + // for(var/area/shuttle/escape/E in world) + // E << 'sound/effects/hyperspace_end.ogg' + dock(SSshuttle.getDock("emergency_away")) mode = SHUTTLE_ENDGAME timer = 0 + open_dock() + +/obj/docking_port/mobile/emergency/proc/open_dock() + for(var/obj/machinery/door/poddoor/shuttledock/D in airlocks) + var/turf/T = get_step(D, D.checkdir) + if(!istype(T,/turf/open/space)) + spawn(0) + D.open() /obj/docking_port/mobile/pod name = "escape pod" @@ -472,14 +459,13 @@ /obj/item/weapon/storage/pod/MouseDrop(over_object, src_location, over_location) if(security_level == SEC_LEVEL_RED || security_level == SEC_LEVEL_DELTA) - . = ..() + return ..() else usr << "The storage unit will only unlock during a Red or Delta security alert." /obj/item/weapon/storage/pod/attack_hand(mob/user) return - /obj/docking_port/mobile/emergency/backup name = "backup shuttle" id = "backup" diff --git a/code/modules/shuttle/ferry.dm b/code/modules/shuttle/ferry.dm index 60e74e91a1..06ea51b482 100644 --- a/code/modules/shuttle/ferry.dm +++ b/code/modules/shuttle/ferry.dm @@ -12,7 +12,6 @@ var/cooldown = 600 possible_destinations = "ferry_home" admin_controlled = 1 - resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | ACID_PROOF /obj/machinery/computer/shuttle/ferry/request/Topic(href, href_list) ..() diff --git a/code/modules/shuttle/manipulator.dm b/code/modules/shuttle/manipulator.dm index 0a9837e7b3..5a81863d01 100644 --- a/code/modules/shuttle/manipulator.dm +++ b/code/modules/shuttle/manipulator.dm @@ -9,9 +9,6 @@ icon = 'icons/obj/machines/shuttle_manipulator.dmi' icon_state = "holograph_on" - anchored = TRUE - density = TRUE - // UI state variables var/datum/map_template/shuttle/selected @@ -33,6 +30,9 @@ add_overlay(hologram_projection) add_overlay(hologram_ship) +/obj/machinery/shuttle_manipulator/process() + return + /obj/machinery/shuttle_manipulator/ui_interact(mob/user, ui_key = "main", \ datum/tgui/ui = null, force_open = 0, datum/tgui/master_ui = null, \ datum/ui_state/state = admin_state) @@ -47,8 +47,6 @@ switch(mode) if(SHUTTLE_IDLE) . = "idle" - if(SHUTTLE_IGNITING) - . = "engines charging" if(SHUTTLE_RECALL) . = "recalled" if(SHUTTLE_CALL) @@ -219,7 +217,7 @@ // truthy value means that it cannot dock for some reason // but we can ignore the someone else docked error because we'll // be moving into their place shortly - if((result != SHUTTLE_CAN_DOCK) && (result != SHUTTLE_SOMEONE_ELSE_DOCKED)) + if(result && (result != SHUTTLE_SOMEONE_ELSE_DOCKED)) var/m = "Unsuccessful dock of [preview_shuttle] ([result])." WARNING(m) return diff --git a/code/modules/shuttle/on_move.dm b/code/modules/shuttle/on_move.dm deleted file mode 100644 index fdbf496ca1..0000000000 --- a/code/modules/shuttle/on_move.dm +++ /dev/null @@ -1,71 +0,0 @@ -/atom/movable/proc/onShuttleMove(turf/T1, rotation) - if(rotation) - shuttleRotate(rotation) - loc = T1 - if (length(client_mobs_in_contents)) - update_parallax_contents() - return 1 - -/obj/onShuttleMove() - if(invisibility >= INVISIBILITY_ABSTRACT) - return 0 - . = ..() - -/atom/movable/light/onShuttleMove() - return 0 - -/obj/machinery/door/onShuttleMove() - . = ..() - if(!.) - return - addtimer(src, "close", 0, TIMER_UNIQUE) - // Close any attached airlocks as well - for(var/obj/machinery/door/D in orange(1, src)) - addtimer(src, "close", 0, TIMER_UNIQUE) - -/obj/machinery/door/airlock/onShuttleMove() - shuttledocked = 0 - for(var/obj/machinery/door/airlock/A in orange(1, src)) - A.shuttledocked = 0 - . = ..() - shuttledocked = 1 - for(var/obj/machinery/door/airlock/A in orange(1, src)) - A.shuttledocked = 1 -/mob/onShuttleMove() - if(!move_on_shuttle) - return 0 - . = ..() - if(!.) - return - if(client) - if(buckled) - shake_camera(src, 2, 1) // turn it down a bit come on - else - shake_camera(src, 7, 1) - -/mob/living/carbon/onShuttleMove() - . = ..() - if(!.) - return - if(!buckled) - Weaken(3) - -// Shuttle Rotation // - -/atom/proc/shuttleRotate(rotation) - //rotate our direction - setDir(angle2dir(rotation+dir2angle(dir))) - - //resmooth if need be. - if(smooth) - queue_smooth(src) - - //rotate the pixel offsets too. - if (pixel_x || pixel_y) - if (rotation < 0) - rotation += 360 - for (var/turntimes=rotation/90;turntimes>0;turntimes--) - var/oldPX = pixel_x - var/oldPY = pixel_y - pixel_x = oldPY - pixel_y = (oldPX*(-1)) diff --git a/code/modules/shuttle/shuttle.dm b/code/modules/shuttle/shuttle.dm index ed185319fb..fbf0d09f23 100644 --- a/code/modules/shuttle/shuttle.dm +++ b/code/modules/shuttle/shuttle.dm @@ -8,18 +8,17 @@ //icon = 'icons/dirsquare.dmi' icon_state = "pinonfar" - resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | UNACIDABLE | ACID_PROOF + unacidable = 1 anchored = 1 var/id - // this should point -away- from the dockingport door, ie towards the ship - dir = NORTH + dir = NORTH//this should point -away- from the dockingport door, ie towards the ship var/width = 0 //size of covered area, perpendicular to dir - var/height = 0 //size of covered area, parallel to dir + var/height = 0 //size of covered area, paralell to dir var/dwidth = 0 //position relative to covered area, perpendicular to dir var/dheight = 0 //position relative to covered area, parallel to dir - //these objects are indestructible + //these objects are indestructable /obj/docking_port/Destroy(force) // unless you assert that you know what you're doing. Horrible things // may result. @@ -29,23 +28,19 @@ else return QDEL_HINT_LETMELIVE -/obj/docking_port/take_damage() - return - /obj/docking_port/singularity_pull() return /obj/docking_port/singularity_act() return 0 /obj/docking_port/shuttleRotate() return //we don't rotate with shuttles via this code. - //returns a list(x0,y0, x1,y1) where points 0 and 1 are bounding corners of the projected rectangle /obj/docking_port/proc/return_coords(_x, _y, _dir) - if(_dir == null) + if(!_dir) _dir = dir - if(_x == null) + if(!_x) _x = x - if(_y == null) + if(!_y) _y = y //byond's sin and cos functions are inaccurate. This is faster and perfectly accurate @@ -140,7 +135,6 @@ var/turf_type = /turf/open/space var/area_type = /area/space - var/last_dock_time /obj/docking_port/stationary/New() ..() @@ -157,61 +151,38 @@ //returns first-found touching shuttleport /obj/docking_port/stationary/get_docked() . = locate(/obj/docking_port/mobile) in loc + /* + for(var/turf/T in return_ordered_turfs()) + . = locate(/obj/docking_port/mobile) in loc + if(.) + return . + */ /obj/docking_port/stationary/transit name = "In Transit" turf_type = /turf/open/space/transit - var/list/turf/assigned_turfs = list() - var/area/shuttle/transit/assigned_area - var/obj/docking_port/mobile/owner /obj/docking_port/stationary/transit/New() ..() SSshuttle.transit += src -/obj/docking_port/stationary/transit/proc/dezone() - for(var/i in assigned_turfs) - var/turf/T = i - if(T.type == turf_type) - T.ChangeTurf(/turf/open/space) - T.flags |= UNUSED_TRANSIT_TURF - -/obj/docking_port/stationary/transit/Destroy(force=FALSE) - if(force) - SSshuttle.transit -= src - if(owner) - owner = null - if(assigned_turfs) - dezone() - assigned_turfs.Cut() - assigned_turfs = null - . = ..() - /obj/docking_port/mobile + icon_state = "mobile" name = "shuttle" icon_state = "pinonclose" var/area/shuttle/areaInstance var/timer //used as a timer (if you want time left to complete move, use timeLeft proc) - var/last_timer_length - - var/mode = SHUTTLE_IDLE //current shuttle mode - var/callTime = 100 //time spent in transit (deciseconds). Should not be lower then 10 seconds without editing the animation of the hyperspace ripples. - var/ignitionTime = 55 // time spent "starting the engines". Also rate limits how often we try to reserve transit space if its ever full of transiting shuttles. + var/mode = SHUTTLE_IDLE //current shuttle mode (see /__DEFINES/stat.dm) + var/callTime = 150 //time spent in transit (deciseconds) var/roundstart_move //id of port to send shuttle to at roundstart - - // The direction the shuttle prefers to travel in - var/preferred_direction = NORTH - // And the angle from the front of the shuttle to the port - var/port_angle = 0 // used to be travelDir + var/travelDir = 0 //direction the shuttle would travel in var/obj/docking_port/stationary/destination var/obj/docking_port/stationary/previous - var/obj/docking_port/stationary/transit/assigned_transit - var/launch_status = NOLAUNCH // A timid shuttle will not register itself with the shuttle subsystem @@ -231,10 +202,6 @@ /obj/docking_port/mobile/Destroy(force) if(force) SSshuttle.mobile -= src - destination = null - previous = null - assigned_transit = null - areaInstance = null . = ..() /obj/docking_port/mobile/initialize() @@ -258,7 +225,7 @@ //this is a hook for custom behaviour. Maybe at some point we could add checks to see if engines are intact /obj/docking_port/mobile/proc/canMove() - return TRUE + return 0 //0 means we can move //this is to check if this shuttle can physically dock at dock S /obj/docking_port/mobile/proc/canDock(obj/docking_port/stationary/S) @@ -266,7 +233,7 @@ return SHUTTLE_NOT_A_DOCKING_PORT if(istype(S, /obj/docking_port/stationary/transit)) - return SHUTTLE_CAN_DOCK + return FALSE if(dwidth > S.dwidth) return SHUTTLE_DWIDTH_TOO_LARGE @@ -291,45 +258,41 @@ // attempt to move us where we currently are, it will get weird. return SHUTTLE_ALREADY_DOCKED - return SHUTTLE_CAN_DOCK - -/obj/docking_port/mobile/proc/check_dock(obj/docking_port/stationary/S) - var/status = canDock(S) - if(status == SHUTTLE_CAN_DOCK) - return TRUE - else if(status == SHUTTLE_ALREADY_DOCKED) - // We're already docked there, don't need to do anything. - // Triggering shuttle movement code in place is weird - return FALSE - else - var/msg = "Shuttle [src] cannot dock at [S], error: [status]" - message_admins(msg) - return FALSE + return FALSE //call the shuttle to destination S /obj/docking_port/mobile/proc/request(obj/docking_port/stationary/S) - if(!check_dock(S)) + var/status = canDock(S) + if(status == SHUTTLE_ALREADY_DOCKED) + // We're already docked there, don't need to do anything. + // Triggering shuttle movement code in place is weird return + else if(status) + var/msg = "request(): shuttle [src] cannot dock at [S], \ + error: [status]" + message_admins(msg) + throw EXCEPTION(msg) switch(mode) if(SHUTTLE_CALL) if(S == destination) - if(timeLeft(1) < callTime) - setTimer(callTime) + if(world.time <= timer) + timer = world.time else destination = S - setTimer(callTime) + timer = world.time if(SHUTTLE_RECALL) if(S == destination) - setTimer(callTime - timeLeft(1)) + timer = world.time - timeLeft(1) else destination = S - setTimer(callTime) + timer = world.time mode = SHUTTLE_CALL - if(SHUTTLE_IDLE, SHUTTLE_IGNITING) + else destination = S - mode = SHUTTLE_IGNITING - setTimer(ignitionTime) + mode = SHUTTLE_CALL + timer = world.time + enterTransit() //hyperspace //recall the shuttle to where it was previously /obj/docking_port/mobile/proc/cancel() @@ -338,7 +301,7 @@ remove_ripples() - invertTimer() + timer = world.time - timeLeft(1) mode = SHUTTLE_RECALL /obj/docking_port/mobile/proc/enterTransit() @@ -346,7 +309,7 @@ // if(!destination) // return var/obj/docking_port/stationary/S0 = get_docked() - var/obj/docking_port/stationary/S1 = assigned_transit + var/obj/docking_port/stationary/S1 = findTransitDock() if(S1) if(dock(S1)) WARNING("shuttle \"[id]\" could not enter transit space. Docked at [S0 ? S0.id : "null"]. Transit dock [S1 ? S1.id : "null"].") @@ -355,6 +318,24 @@ else WARNING("shuttle \"[id]\" could not enter transit space. S0=[S0 ? S0.id : "null"] S1=[S1 ? S1.id : "null"]") +//default shuttleRotate +/atom/proc/shuttleRotate(rotation) + //rotate our direction + setDir(angle2dir(rotation+dir2angle(dir))) + + //resmooth if need be. + if(smooth) + queue_smooth(src) + + //rotate the pixel offsets too. + if (pixel_x || pixel_y) + if (rotation < 0) + rotation += 360 + for (var/turntimes=rotation/90;turntimes>0;turntimes--) + var/oldPX = pixel_x + var/oldPY = pixel_y + pixel_x = oldPY + pixel_y = (oldPX*(-1)) /obj/docking_port/mobile/proc/jumpToNullSpace() // Destroys the docking port and the shuttle contents. @@ -415,24 +396,29 @@ ripple_turfs += T1 return ripple_turfs - -/obj/docking_port/mobile/proc/check_poddoors() - for(var/obj/machinery/door/poddoor/shuttledock/pod in airlocks) - pod.check() - //this is the main proc. It instantly moves our mobile port to stationary port S1 //it handles all the generic behaviour, such as sanity checks, closing doors on the shuttle, stunning mobs, etc /obj/docking_port/mobile/proc/dock(obj/docking_port/stationary/S1, force=FALSE) - if(S1.get_docked() == src) - remove_ripples() - return // Crashing this ship with NO SURVIVORS if(!force) - if(!check_dock(S1)) - return -1 - if(!canMove()) + var/status = canDock(S1) + if(status == SHUTTLE_ALREADY_DOCKED) + return status + else if(status) + var/msg = "dock(): shuttle [src] cannot dock at [S1], \ + error: [status]" + message_admins(msg) + return status + + if(canMove()) return -1 + closePortDoors() + +// //rotate transit docking ports, so we don't need zillions of variants +// if(istype(S1, /obj/docking_port/stationary/transit)) +// S1.setDir(turn(NORTH, -travelDir)) + var/obj/docking_port/stationary/S0 = get_docked() var/turf_type = /turf/open/space var/area_type = /area/space @@ -442,8 +428,6 @@ if(S0.area_type) area_type = S0.area_type - var/destination_turf_type = S1.turf_type - var/list/L0 = return_ordered_turfs(x, y, z, dir, areaInstance) var/list/L1 = return_ordered_turfs(S1.x, S1.y, S1.z, S1.dir) @@ -458,11 +442,11 @@ if(!A0) A0 = new area_type(null) for(var/turf/T0 in L0) + var/area/old = T0.loc A0.contents += T0 - if (istype(S1, /obj/docking_port/stationary/transit)) - areaInstance.parallax_movedir = preferred_direction - else - areaInstance.parallax_movedir = FALSE + T0.change_area(old, A0) + + remove_ripples() //move or squish anything in the way ship at destination @@ -477,11 +461,12 @@ continue if(T0.type != T0.baseturf) //So if there is a hole in the shuttle we don't drag along the space/asteroid/etc to wherever we are going next T0.copyTurf(T1) - T1.baseturf = destination_turf_type + var/area/old = T1.loc areaInstance.contents += T1 + T1.change_area(old, areaInstance) //copy over air - if(isopenturf(T1)) + if(istype(T1, /turf/open)) var/turf/open/Ts1 = T1 Ts1.copy_air_with_tile(T0) @@ -492,42 +477,110 @@ if(rotation) T1.shuttleRotate(rotation) - //lighting stuff - T1.redraw_lighting() SSair.remove_from_active(T1) T1.CalculateAdjacentTurfs() SSair.add_to_active(T1,1) T0.ChangeTurf(turf_type) - T0.redraw_lighting() SSair.remove_from_active(T0) T0.CalculateAdjacentTurfs() SSair.add_to_active(T0,1) - check_poddoors() - S1.last_dock_time = world.time - loc = S1.loc setDir(S1.dir) +/atom/movable/proc/onShuttleMove(turf/T1, rotation) + if(rotation) + shuttleRotate(rotation) + loc = T1 + return 1 + +/obj/onShuttleMove() + if(invisibility >= INVISIBILITY_ABSTRACT) + return 0 + . = ..() + +/atom/movable/light/onShuttleMove() + return 0 + +/obj/machinery/door/onShuttleMove() + . = ..() + if(!.) + return + addtimer(src, "close", 0) + +/mob/onShuttleMove() + if(!move_on_shuttle) + return 0 + . = ..() + if(!.) + return + if(client) + if(buckled) + shake_camera(src, 2, 1) // turn it down a bit come on + else + shake_camera(src, 7, 1) + +/mob/living/carbon/onShuttleMove() + . = ..() + if(!.) + return + if(!buckled) + Weaken(3) + +/* + if(istype(S1, /obj/docking_port/stationary/transit)) + var/d = turn(dir, 180 + travelDir) + for(var/turf/open/space/transit/T in S1.return_ordered_turfs()) + T.pushdirection = d + T.update_icon() +*/ + + + +/obj/docking_port/mobile/proc/findTransitDock() + var/obj/docking_port/stationary/transit/T = SSshuttle.getDock("[id]_transit") + if(T && !canDock(T)) + return T + /obj/docking_port/mobile/proc/findRoundstartDock() - return SSshuttle.getDock(roundstart_move) + var/obj/docking_port/stationary/D + D = SSshuttle.getDock(roundstart_move) + + if(D) + return D /obj/docking_port/mobile/proc/dockRoundstart() - . = dock_id(roundstart_move) - -/obj/docking_port/mobile/proc/dock_id(id) - var/port = SSshuttle.getDock(id) - if(port) - . = dock(port) - else - . = null + // Instead of spending a lot of time trying to work out where to place + // our shuttle, just create it somewhere empty and send it to where + // it should go + var/obj/docking_port/stationary/D = findRoundstartDock() + return dock(D) /obj/effect/landmark/shuttle_import name = "Shuttle Import" +/* commented out due to issues with rotation + for(var/obj/docking_port/stationary/transit/S in SSshuttle.transit) + if(S.id) + continue + if(!canDock(S)) + return S +*/ + + +//shuttle-door closing is handled in the dock() proc whilst looping through turfs +//this one closes the door where we are docked at, if there is one there. +/obj/docking_port/mobile/proc/closePortDoors() + var/turf/T = get_step(loc, turn(dir,180)) + if(T) + var/obj/machinery/door/Door = locate() in T + if(Door) + addtimer(Door, "close", 0) + /obj/docking_port/mobile/proc/roadkill(list/L0, list/L1, dir) + var/list/hurt_mobs = list() for(var/i in 1 to L0.len) var/turf/T0 = L0[i] var/turf/T1 = L1[i] @@ -538,128 +591,85 @@ // The corresponding tile will not be changed, so no roadkill for(var/atom/movable/AM in T1) - if(ismob(AM)) - if(isliving(AM)) - var/mob/living/M = AM - if(M.buckled) - M.buckled.unbuckle_mob(M, 1) - if(M.pulledby) - M.pulledby.stop_pulling() - M.stop_pulling() - M.visible_message("[M] is hit by \ - a hyperspace ripple!", - "You feel an immense \ - crushing pressure as the space around you ripples.") + if(isliving(AM) && (!(AM in hurt_mobs))) + hurt_mobs |= AM + var/mob/living/M = AM + if(M.buckled) + M.buckled.unbuckle_mob(M, 1) + if(M.pulledby) + M.pulledby.stop_pulling() + M.stop_pulling() + M.visible_message("[M] is hit by \ + a hyperspace ripple[M.anchored ? "":" and is thrown clear"]!", + "You feel an immense \ + crushing pressure as the space around you ripples.") + if(M.anchored) M.gib() - - else //non-living mobs shouldn't be affected by shuttles, which is why this is an else - if(istype(AM, /obj/singularity) && !istype(AM, /obj/singularity/narsie)) //it's a singularity but not a god, ignore it. - continue - if(!AM.anchored) - step(AM, dir) else - qdel(AM) + M.Paralyse(10) + M.ex_act(2) + step(M, dir) + continue + if(!AM.anchored) + step(AM, dir) + else + qdel(AM) +/* +//used to check if atom/A is within the shuttle's bounding box +/obj/docking_port/mobile/proc/onShuttleCheck(atom/A) + var/turf/T = get_turf(A) + if(!T) + return 0 + + var/list/L = return_coords() + if(L[1] > L[3]) + L.Swap(1,3) + if(L[2] > L[4]) + L.Swap(2,4) + + if(L[1] <= T.x && T.x <= L[3]) + if(L[2] <= T.y && T.y <= L[4]) + return 1 + return 0 +*/ //used by shuttle subsystem to check timers /obj/docking_port/mobile/proc/check() - check_effects() + var/timeLeft = timeLeft(1) + if(!ripples.len && (timeLeft <= SHUTTLE_RIPPLE_TIME) && ((mode == SHUTTLE_CALL) || (mode == SHUTTLE_RECALL))) + create_ripples(destination) - if(mode == SHUTTLE_IGNITING) - check_transit_zone() + if(timeLeft <= 0) + switch(mode) + if(SHUTTLE_CALL) + if(dock(destination)) + setTimer(20) //can't dock for some reason, try again in 2 seconds + return + if(SHUTTLE_RECALL) + if(dock(previous)) + setTimer(20) //can't dock for some reason, try again in 2 seconds + return + mode = SHUTTLE_IDLE + timer = 0 + destination = null - if(timeLeft(1) > 0) - return - // If we can't dock or we don't have a transit slot, wait for 20 ds, - // then try again - switch(mode) - if(SHUTTLE_CALL) - if(dock(destination)) - setTimer(20) - return - if(SHUTTLE_RECALL) - if(dock(previous)) - setTimer(20) - return - if(SHUTTLE_IGNITING) - if(check_transit_zone() != TRANSIT_READY) - setTimer(20) - return - else - mode = SHUTTLE_CALL - setTimer(callTime) - enterTransit() - return - - mode = SHUTTLE_IDLE - timer = 0 - destination = null - -/obj/docking_port/mobile/proc/check_effects() - if(!ripples.len) - if((mode == SHUTTLE_CALL) || (mode == SHUTTLE_RECALL)) - if(timeLeft(1) <= SHUTTLE_RIPPLE_TIME) - create_ripples(destination) - - var/obj/docking_port/stationary/S0 = get_docked() - if(areaInstance.parallax_movedir && istype(S0, /obj/docking_port/stationary/transit) && timeLeft(1) <= PARALLAX_LOOP_TIME) - parallax_slowdown() - -/obj/docking_port/mobile/proc/parallax_slowdown() - areaInstance.parallax_movedir = FALSE - if(assigned_transit && assigned_transit.assigned_area) - assigned_transit.assigned_area.parallax_movedir = FALSE - var/list/L0 = return_ordered_turfs(x, y, z, dir, areaInstance) - for (var/thing in L0) - var/turf/T = thing - for (var/thing2 in T) - var/atom/movable/AM = thing2 - if (length(AM.client_mobs_in_contents)) - AM.update_parallax_contents() - -/obj/docking_port/mobile/proc/check_transit_zone() - if(assigned_transit) - return TRANSIT_READY - else - SSshuttle.request_transit_dock(src) /obj/docking_port/mobile/proc/setTimer(wait) - timer = world.time + wait - last_timer_length = wait - -/obj/docking_port/mobile/proc/modTimer(multiple) - var/time_remaining = timer - world.time - if(time_remaining < 0 || !last_timer_length) - return - time_remaining *= multiple - last_timer_length *= multiple - setTimer(time_remaining) - -/obj/docking_port/mobile/proc/invertTimer() - if(!last_timer_length) - return - var/time_remaining = timer - world.time - if(time_remaining > 0) - var/time_passed = last_timer_length - time_remaining - setTimer(time_passed) + if(timer <= 0) + timer = world.time + timer += wait - timeLeft(1) //returns timeLeft /obj/docking_port/mobile/proc/timeLeft(divisor) if(divisor <= 0) divisor = 10 - - var/ds_remaining if(!timer) - ds_remaining = callTime - else - ds_remaining = max(0, timer - world.time) - - . = round(ds_remaining / divisor, 1) + return round(callTime/divisor, 1) + return max( round((timer+callTime-world.time)/divisor,1), 0 ) // returns 3-letter mode string, used by status screens and mob status panel /obj/docking_port/mobile/proc/getModeStr() switch(mode) - if(SHUTTLE_IGNITING) - return "IGN" if(SHUTTLE_RECALL) return "RCL" if(SHUTTLE_CALL) @@ -695,3 +705,23 @@ dst = destination . += " towards [dst ? dst.name : "unknown location"] ([timeLeft(600)] minutes)" #undef DOCKING_PORT_HIGHLIGHT + + +/turf/proc/copyTurf(turf/T) + if(T.type != type) + var/obj/O + if(underlays.len) //we have underlays, which implies some sort of transparency, so we want to a snapshot of the previous turf as an underlay + O = new() + O.underlays.Add(T) + T.ChangeTurf(type) + if(underlays.len) + T.underlays = O.underlays + if(T.icon_state != icon_state) + T.icon_state = icon_state + if(T.icon != icon) + T.icon = icon + if(T.color != color) + T.color = color + if(T.dir != dir) + T.setDir(dir) + return T diff --git a/code/modules/shuttle/special.dm b/code/modules/shuttle/special.dm index 73d850172f..9a7ddfed20 100644 --- a/code/modules/shuttle/special.dm +++ b/code/modules/shuttle/special.dm @@ -57,8 +57,7 @@ name = "wabbajack altar" desc = "Whether you're sleeping or waking, it's going to be \ quite chaotic." - obj_integrity = 1000 - max_integrity = 1000 + health = 1000 verb_say = "chants" var/obj/machinery/power/emitter/energycannon/magical/our_statue var/list/mob/living/sleepers = list() @@ -95,11 +94,12 @@ // New sleepers for(var/i in found - sleepers) var/mob/living/L = i - L.add_atom_colour("#800080", TEMPORARY_COLOUR_PRIORITY) - L.visible_message("A strange purple glow wraps itself around [L] as [L.p_they()] suddenly fall[L.p_s()] unconscious.", + L.color = "#800080" + L.visible_message("A strange purple glow \ + wraps itself around [L] as they suddenly fall unconcious.", "[desc]") // Don't let them sit suround unconscious forever - addtimer(src, "sleeper_dreams", 100, TIMER_NORMAL, L) + addtimer(src, "sleeper_dreams", 100, FALSE, L) // Existing sleepers for(var/i in found) @@ -109,7 +109,7 @@ // Missing sleepers for(var/i in sleepers - found) var/mob/living/L = i - L.remove_atom_colour(TEMPORARY_COLOUR_PRIORITY, "#800080") + L.color = initial(L.color) L.visible_message("The glow from [L] fades \ away.") L.grab_ghost() @@ -185,10 +185,9 @@ // with CENTCOM_BARSTAFF) /obj/structure/table/wood/bar - resistance_flags = LAVA_PROOF | FIRE_PROOF | ACID_PROOF + burn_state = LAVA_PROOF flags = NODECONSTRUCT - obj_integrity = 1000 - max_integrity = 1000 + health = 1000 var/boot_dir = 1 /obj/structure/table/wood/bar/Crossed(atom/movable/AM) diff --git a/code/modules/shuttle/supply.dm b/code/modules/shuttle/supply.dm index b896fc1f1e..b4077d5202 100644 --- a/code/modules/shuttle/supply.dm +++ b/code/modules/shuttle/supply.dm @@ -1,8 +1,8 @@ var/list/blacklisted_cargo_types = typecacheof(list( /mob/living, - /obj/structure/blob, + /obj/effect/blob, /obj/effect/rune, - /obj/structure/spider/spiderling, + /obj/effect/spider/spiderling, /obj/item/weapon/disk/nuclear, /obj/machinery/nuclearbomb, /obj/item/device/radio/beacon, @@ -10,7 +10,6 @@ var/list/blacklisted_cargo_types = typecacheof(list( /obj/machinery/teleport/station, /obj/machinery/teleport/hub, /obj/machinery/telepad, - /obj/machinery/quantumpad, /obj/machinery/clonepod, /obj/effect/mob_spawn )) @@ -21,7 +20,7 @@ var/list/blacklisted_cargo_types = typecacheof(list( callTime = 600 dir = WEST - port_angle = 90 + travelDir = 90 width = 12 dwidth = 5 height = 7 @@ -45,8 +44,8 @@ var/list/blacklisted_cargo_types = typecacheof(list( var/turf/T = trf for(var/a in T.GetAllContents()) if(is_type_in_typecache(a, blacklisted_cargo_types)) - return FALSE - return TRUE + return TRUE + return FALSE /obj/docking_port/mobile/supply/request() if(mode != SHUTTLE_IDLE) diff --git a/code/modules/shuttle/syndicate.dm b/code/modules/shuttle/syndicate.dm index 3504027d59..bdf437f65e 100644 --- a/code/modules/shuttle/syndicate.dm +++ b/code/modules/shuttle/syndicate.dm @@ -8,7 +8,6 @@ req_access = list(access_syndicate) shuttleId = "syndicate" possible_destinations = "syndicate_away;syndicate_z5;syndicate_ne;syndicate_nw;syndicate_n;syndicate_se;syndicate_sw;syndicate_s" - resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | ACID_PROOF /obj/machinery/computer/shuttle/syndicate/recall name = "syndicate shuttle recall terminal" diff --git a/code/modules/shuttle/transit.dm b/code/modules/shuttle/transit.dm deleted file mode 100644 index 24bed0c63c..0000000000 --- a/code/modules/shuttle/transit.dm +++ /dev/null @@ -1,14 +0,0 @@ -/obj/effect/landmark/transit - name = "transit space marker" - desc = "This indicates where transit space begins and ends." - invisibility = FALSE - icon = 'icons/effects/effects.dmi' - icon_state = "at_shield1" - -/obj/effect/landmark/transit/New() - . = ..() - transit_markers += src - -/obj/effect/landmark/transit/Destroy() - transit_markers -= src - . = ..() diff --git a/code/modules/spells/spell.dm b/code/modules/spells/spell.dm index a650851256..e5b58e577a 100644 --- a/code/modules/spells/spell.dm +++ b/code/modules/spells/spell.dm @@ -1,66 +1,14 @@ #define TARGET_CLOSEST 1 #define TARGET_RANDOM 2 - /obj/effect/proc_holder var/panel = "Debug"//What panel the proc holder needs to go on. - var/active = FALSE //Used by toggle based abilities. - var/ranged_mousepointer - var/mob/living/ranged_ability_user var/list/spells = typesof(/obj/effect/proc_holder/spell) //needed for the badmin verb for now -/obj/effect/proc_holder/Destroy() - if(ranged_ability_user) - remove_ranged_ability() - return ..() +/obj/effect/proc_holder/proc/InterceptClickOn(mob/user, params, atom/A) + return -/obj/effect/proc_holder/proc/InterceptClickOn(mob/living/caller, params, atom/A) - if(caller.ranged_ability != src || ranged_ability_user != caller) //I'm not actually sure how these would trigger, but, uh, safety, I guess? - caller << "[caller.ranged_ability.name] has been disabled." - caller.ranged_ability.remove_ranged_ability() - return TRUE //TRUE for failed, FALSE for passed. - ranged_ability_user.next_click = world.time + CLICK_CD_CLICK_ABILITY - ranged_ability_user.face_atom(A) - return FALSE - -/obj/effect/proc_holder/proc/add_ranged_ability(mob/living/user, msg, forced) - if(!user || !user.client) - return - if(user.ranged_ability && user.ranged_ability != src) - if(forced) - user << "[user.ranged_ability.name] has been replaced by [name]." - user.ranged_ability.remove_ranged_ability() - else - return - user.ranged_ability = src - user.client.click_intercept = user.ranged_ability - add_mousepointer(user.client) - ranged_ability_user = user - if(msg) - ranged_ability_user << msg - active = TRUE - update_icon() - -/obj/effect/proc_holder/proc/add_mousepointer(client/C) - if(C && ranged_mousepointer && C.mouse_pointer_icon == initial(C.mouse_pointer_icon)) - C.mouse_pointer_icon = ranged_mousepointer - -/obj/effect/proc_holder/proc/remove_mousepointer(client/C) - if(C && ranged_mousepointer && C.mouse_pointer_icon == ranged_mousepointer) - C.mouse_pointer_icon = initial(C.mouse_pointer_icon) - -/obj/effect/proc_holder/proc/remove_ranged_ability(msg) - if(!ranged_ability_user || !ranged_ability_user.client || (ranged_ability_user.ranged_ability && ranged_ability_user.ranged_ability != src)) //To avoid removing the wrong ability - return - ranged_ability_user.ranged_ability = null - ranged_ability_user.client.click_intercept = null - remove_mousepointer(ranged_ability_user.client) - if(msg) - ranged_ability_user << msg - ranged_ability_user = null - active = FALSE - update_icon() /obj/effect/proc_holder/spell name = "Spell" @@ -113,10 +61,10 @@ var/list/spells = typesof(/obj/effect/proc_holder/spell) //needed for the badmin var/critfailchance = 0 var/centcom_cancast = 1 //Whether or not the spell should be allowed on z2 + var/datum/action/spell_action/action = null var/action_icon = 'icons/mob/actions.dmi' var/action_icon_state = "spell_default" var/action_background_icon_state = "bg_spell" - var/datum/action/spell_action/action /obj/effect/proc_holder/spell/proc/cast_check(skipcharge = 0,mob/user = usr) //checks if the spell can be cast based on its settings; skipcharge is used when an additional cast_check is called inside the spell @@ -160,18 +108,14 @@ var/list/spells = typesof(/obj/effect/proc_holder/spell) //needed for the badmin user << "You can't get the words out!" return 0 - var/list/casting_clothes = typecacheof(list(/obj/item/clothing/suit/wizrobe, - /obj/item/clothing/suit/space/hardsuit/wizard, - /obj/item/clothing/head/wizard, - /obj/item/clothing/head/helmet/space/hardsuit/wizard, - /obj/item/clothing/suit/space/hardsuit/shielded/wizard, - /obj/item/clothing/head/helmet/space/hardsuit/shielded/wizard)) - if(clothes_req) //clothes check - if(!is_type_in_typecache(H.wear_suit, casting_clothes)) + if(!istype(H.wear_suit, /obj/item/clothing/suit/wizrobe) && !istype(H.wear_suit, /obj/item/clothing/suit/space/hardsuit/wizard)) H << "I don't feel strong enough without my robe." return 0 - if(!is_type_in_typecache(H.head, casting_clothes)) + if(!istype(H.shoes, /obj/item/clothing/shoes/sandal)) + H << "I don't feel strong enough without my sandals." + return 0 + if(!istype(H.head, /obj/item/clothing/head/wizard) && !istype(H.head, /obj/item/clothing/head/helmet/space/hardsuit/wizard)) H << "I don't feel strong enough without my hat." return 0 if(cult_req) //CULT_REQ CLOTHES CHECK @@ -267,9 +211,9 @@ var/list/spells = typesof(/obj/effect/proc_holder/spell) //needed for the badmin if(overlay) for(var/atom/target in targets) var/location - if(isliving(target)) + if(istype(target,/mob/living)) location = target.loc - else if(isturf(target)) + else if(istype(target,/turf)) location = target var/obj/effect/overlay/spell = new /obj/effect/overlay(location) spell.icon = overlay_icon @@ -281,11 +225,11 @@ var/list/spells = typesof(/obj/effect/proc_holder/spell) //needed for the badmin /obj/effect/proc_holder/spell/proc/after_cast(list/targets) for(var/atom/target in targets) var/location - if(isliving(target)) + if(istype(target,/mob/living)) location = target.loc - else if(isturf(target)) + else if(istype(target,/turf)) location = target - if(isliving(target) && message) + if(istype(target,/mob/living) && message) target << text("[message]") if(sparks_spread) var/datum/effect_system/spark_spread/sparks = new diff --git a/code/modules/spells/spell_types/barnyard.dm b/code/modules/spells/spell_types/barnyard.dm index a63d91c643..e11115c64d 100644 --- a/code/modules/spells/spell_types/barnyard.dm +++ b/code/modules/spells/spell_types/barnyard.dm @@ -47,4 +47,4 @@ target.equip_to_slot_if_possible(magichead, slot_wear_mask, 1, 1) playsound(get_turf(target), mSounds[randM], 50, 1) - target.flash_act() + target.flash_eyes() diff --git a/code/modules/spells/spell_types/charge.dm b/code/modules/spells/spell_types/charge.dm index c3351c0ea0..fc6c555a47 100644 --- a/code/modules/spells/spell_types/charge.dm +++ b/code/modules/spells/spell_types/charge.dm @@ -14,11 +14,11 @@ /obj/effect/proc_holder/spell/targeted/charge/cast(list/targets,mob/user = usr) for(var/mob/living/L in targets) - var/list/hand_items = list(L.get_active_held_item(),L.get_inactive_held_item()) + var/list/hand_items = list(L.get_active_hand(),L.get_inactive_hand()) var/charged_item = null var/burnt_out = 0 - if(L.pulling && isliving(L.pulling)) + if(L.pulling && (istype(L.pulling, /mob/living))) var/mob/living/M = L.pulling if(M.mob_spell_list.len != 0 || (M.mind && M.mind.spell_list.len != 0)) for(var/obj/effect/proc_holder/spell/S in M.mob_spell_list) @@ -58,17 +58,15 @@ if(istype(item,/obj/item/weapon/gun/magic/wand) && I.max_charges != 0) var/obj/item/weapon/gun/magic/W = item W.icon_state = initial(W.icon_state) - I.process_chamber() charged_item = I break else if(istype(item, /obj/item/weapon/stock_parts/cell/)) var/obj/item/weapon/stock_parts/cell/C = item - if(!C.self_recharge) - if(prob(80)) - C.maxcharge -= 200 - if(C.maxcharge <= 1) //Div by 0 protection - C.maxcharge = 1 - burnt_out = 1 + if(prob(80)) + C.maxcharge -= 200 + if(C.maxcharge <= 1) //Div by 0 protection + C.maxcharge = 1 + burnt_out = 1 C.charge = C.maxcharge charged_item = C break @@ -77,16 +75,12 @@ for(I in item.contents) if(istype(I, /obj/item/weapon/stock_parts/cell/)) var/obj/item/weapon/stock_parts/cell/C = I - if(!C.self_recharge) - if(prob(80)) - C.maxcharge -= 200 - if(C.maxcharge <= 1) //Div by 0 protection - C.maxcharge = 1 - burnt_out = 1 + if(prob(80)) + C.maxcharge -= 200 + if(C.maxcharge <= 1) //Div by 0 protection + C.maxcharge = 1 + burnt_out = 1 C.charge = C.maxcharge - if(istype(C.loc,/obj/item/weapon/gun)) - var/obj/item/weapon/gun/G = C.loc - G.process_chamber() item.update_icon() charged_item = item break diff --git a/code/modules/spells/spell_types/conjure.dm b/code/modules/spells/spell_types/conjure.dm index f14414684c..a5c524cd11 100644 --- a/code/modules/spells/spell_types/conjure.dm +++ b/code/modules/spells/spell_types/conjure.dm @@ -38,7 +38,7 @@ for(var/varName in newVars) if(varName in summoned_object.vars) summoned_object.vars[varName] = newVars[varName] - summoned_object.admin_spawned = TRUE + if(summon_lifespan) QDEL_IN(summoned_object, summon_lifespan) @@ -50,34 +50,3 @@ summon_amt = 10 range = 3 newVars = list("emagged" = 2, "remote_disabled" = 1,"shoot_sound" = 'sound/weapons/laser.ogg',"projectile" = /obj/item/projectile/beam/laser, "declare_arrests" = 0,"name" = "Wizard's Justicebot") - -/obj/effect/proc_holder/spell/targeted/conjure_item - name = "Summon weapon" - desc = "A generic spell that should not exist. This summons an instance of a specific type of item, or if one already exists, un-summons it. Summons into hand if possible." - invocation_type = "none" - include_user = 1 - range = -1 - clothes_req = 0 - var/obj/item/item - var/item_type = /obj/item/weapon/banhammer - school = "conjuration" - charge_max = 150 - cooldown_min = 10 - -/obj/effect/proc_holder/spell/targeted/conjure_item/cast(list/targets, mob/user = usr) - if (item && !qdeleted(item)) - qdel(item) - item = null - else - for(var/mob/living/carbon/C in targets) - if(C.drop_item()) - item = make_item() - C.put_in_hands(item) - -/obj/effect/proc_holder/spell/targeted/conjure_item/Destroy() - if(item) - qdel(item) - return ..() - -/obj/effect/proc_holder/spell/targeted/conjure_item/proc/make_item() - return new item_type diff --git a/code/modules/spells/spell_types/construct_spells.dm b/code/modules/spells/spell_types/construct_spells.dm index 63023d2837..0142489bc8 100644 --- a/code/modules/spells/spell_types/construct_spells.dm +++ b/code/modules/spells/spell_types/construct_spells.dm @@ -105,11 +105,19 @@ range = -1 include_user = 1 jaunt_duration = 50 //in deciseconds + centcom_cancast = 0 //Stop people from getting to centcom action_icon_state = "phaseshift" action_background_icon_state = "bg_demon" - jaunt_in_time = 12 - jaunt_in_type = /obj/effect/overlay/temp/dir_setting/wraith - jaunt_out_type = /obj/effect/overlay/temp/dir_setting/wraith/out + +/obj/effect/proc_holder/spell/targeted/ethereal_jaunt/shift/jaunt_disappear(atom/movable/overlay/animation, mob/living/target) + animation.icon_state = "phase_shift" + animation.setDir(target.dir) + flick("phase_shift",animation) + +/obj/effect/proc_holder/spell/targeted/ethereal_jaunt/shift/jaunt_reappear(atom/movable/overlay/animation, mob/living/target) + animation.icon_state = "phase_shift2" + animation.setDir(target.dir) + flick("phase_shift2",animation) /obj/effect/proc_holder/spell/targeted/ethereal_jaunt/shift/jaunt_steam(mobloc) return diff --git a/code/modules/spells/spell_types/devil.dm b/code/modules/spells/spell_types/devil.dm index 8d06e7b341..2622770da0 100644 --- a/code/modules/spells/spell_types/devil.dm +++ b/code/modules/spells/spell_types/devil.dm @@ -1,11 +1,12 @@ -/obj/effect/proc_holder/spell/targeted/conjure_item/summon_pitchfork +/obj/effect/proc_holder/spell/targeted/summon_pitchfork name = "Summon Pitchfork" desc = "A devil's weapon of choice. Use this to summon/unsummon your pitchfork." invocation_type = "none" include_user = 1 range = -1 clothes_req = 0 - item_type = /obj/item/weapon/twohanded/pitchfork/demonic + var/obj/item/weapon/twohanded/pitchfork/demonic/pitchfork + var/pitchfork_type = /obj/item/weapon/twohanded/pitchfork/demonic/ school = "conjuration" charge_max = 150 @@ -13,20 +14,25 @@ action_icon_state = "pitchfork" action_background_icon_state = "bg_demon" -/obj/effect/proc_holder/spell/targeted/conjure_item/summon_pitchfork/greater - item_type = /obj/item/weapon/twohanded/pitchfork/demonic/greater +/obj/effect/proc_holder/spell/targeted/summon_pitchfork/cast(list/targets, mob/user = usr) + if (pitchfork) + qdel(pitchfork) + else + for(var/mob/living/carbon/C in targets) + if(C.drop_item()) + pitchfork = new pitchfork_type + C.put_in_hands(pitchfork) -/obj/effect/proc_holder/spell/targeted/conjure_item/summon_pitchfork/ascended - item_type = /obj/item/weapon/twohanded/pitchfork/demonic/ascended +/obj/effect/proc_holder/spell/targeted/summon_pitchfork/Del() + if(pitchfork) + qdel(pitchfork) + +/obj/effect/proc_holder/spell/targeted/summon_pitchfork/greater + pitchfork_type = /obj/item/weapon/twohanded/pitchfork/demonic/greater + +/obj/effect/proc_holder/spell/targeted/summon_pitchfork/ascended + pitchfork_type = /obj/item/weapon/twohanded/pitchfork/demonic/ascended -/obj/effect/proc_holder/spell/targeted/conjure_item/violin - item_type = /obj/item/device/instrument/violin/golden - desc = "A devil's instrument of choice. Use this to summon/unsummon your golden violin." - invocation_type = "whisper" - invocation = "I aint have this much fun since Georgia." - action_icon_state = "golden_violin" - name = "Summon golden violin" - action_background_icon_state = "bg_demon" /obj/effect/proc_holder/spell/targeted/summon_contract name = "Summon infernal contract" @@ -66,10 +72,10 @@ contract = new /obj/item/weapon/paper/contract/infernal/knowledge(C.loc, C.mind, user.mind) C.put_in_hands(contract) else - user << "[C] seems to not be sentient. You cannot summon a contract for [C.p_them()]." + user << "[C] seems to not be sentient. You cannot summon a contract for them." -/obj/effect/proc_holder/spell/fireball/hellish +/obj/effect/proc_holder/spell/dumbfire/fireball/hellish name = "Hellfire" desc = "This spell launches hellfire at the target." @@ -80,14 +86,22 @@ invocation_type = "shout" range = 2 - fireball_type = /obj/item/projectile/magic/fireball/infernal + proj_icon_state = "fireball" + proj_name = "a fireball" + proj_type = /obj/effect/proc_holder/spell/turf/fireball/infernal + + proj_lifespan = 200 + proj_step_delay = 1 action_background_icon_state = "bg_demon" +/obj/effect/proc_holder/spell/turf/fireball/infernal/cast(turf/T,mob/user = usr) + explosion(T, -1, -1, 1, 4, 0, flame_range = 5) + /obj/effect/proc_holder/spell/targeted/infernal_jaunt name = "Infernal Jaunt" desc = "Use hellfire to phase out of existence." - charge_max = 200 + charge_max = 10 clothes_req = 0 selection_type = "range" range = -1 @@ -102,17 +116,12 @@ if(istype(user)) if(istype(user.loc, /obj/effect/dummy/slaughter/)) var/continuing = 0 - if(istype(get_area(user), /area/shuttle/)) // Can always phase in in a shuttle. - continuing = 1 - else - for(var/mob/living/C in orange(2, get_turf(user.loc))) //Can also phase in when nearby a potential buyer. - if (C.mind && C.mind.soulOwner == C.mind) - continuing = 1 - break + for(var/mob/living/C in orange(2, get_turf(user.loc))) + if (C.mind && C.mind.soulOwner == C.mind) + continuing = 1 + break if(continuing) - user << "You are now phasing in." - if(do_mob(user,user,150)) - user.infernalphasein() + addtimer(user,"infernalphasein",150,TRUE) else user << "You can only re-appear near a potential signer." revert_cast() @@ -120,23 +129,21 @@ else user.notransform = 1 user.fakefire() - src << "You begin to phase back into sinful flames." - if(do_mob(user,user,150)) - user.infernalphaseout() - else - user << "You must remain still while exiting." - user.ExtinguishMob() + addtimer(user, "infernalphaseout",150,TRUE,get_turf(user)) start_recharge() return revert_cast() -/mob/living/proc/infernalphaseout() +/mob/living/proc/infernalphaseout(var/turf/mobloc) + if(get_turf(src) != mobloc) + src << "You must remain still while exiting." + return dust_animation() spawn_dust() src.visible_message("[src] disappears in a flashfire!") playsound(get_turf(src), 'sound/magic/enter_blood.ogg', 100, 1, -1) - var/obj/effect/dummy/slaughter/holder = PoolOrNew(/obj/effect/dummy/slaughter,loc) + var/obj/effect/dummy/slaughter/holder = PoolOrNew(/obj/effect/dummy/slaughter,mobloc) src.ExtinguishMob() if(buckled) buckled.unbuckle_mob(src,force=1) @@ -160,7 +167,20 @@ src.client.eye = src src.visible_message("[src] appears in a firey blaze!") playsound(get_turf(src), 'sound/magic/exit_blood.ogg', 100, 1, -1) - addtimer(src, "fakefireextinguish", 15, TIMER_UNIQUE) + addtimer(src, "fakefireextinguish" ,15,TRUE,get_turf(src)) + +/mob/living/proc/fakefire() + return + +/mob/living/carbon/fakefire(var/fire_icon = "Generic_mob_burning") + overlays_standing[FIRE_LAYER] = image("icon"='icons/mob/OnFire.dmi', "icon_state"= fire_icon, "layer"=-FIRE_LAYER) + apply_overlay(FIRE_LAYER) + +/mob/living/proc/fakefireextinguish() + return + +/mob/living/carbon/fakefireextinguish() + remove_overlay(FIRE_LAYER) /obj/effect/proc_holder/spell/targeted/sintouch name = "Sin Touch" @@ -196,56 +216,3 @@ H.influenceSin() H.Weaken(2) H.Stun(2) - - -/obj/effect/proc_holder/spell/targeted/summon_dancefloor - name = "Summon Dancefloor" - desc = "When what a Devil really needs is funk." - include_user = 1 - range = -1 - clothes_req = 0 - - school = "conjuration" - charge_max = 10 - cooldown_min = 50 //5 seconds, so the smoke can't be spammed - action_icon_state = "funk" - action_background_icon_state = "bg_demon" - - var/list/dancefloor_turfs - var/list/dancefloor_turfs_types - var/dancefloor_exists = FALSE - var/datum/effect_system/smoke_spread/transparent/dancefloor_devil/smoke - - -/obj/effect/proc_holder/spell/targeted/summon_dancefloor/cast(list/targets, mob/user = usr) - LAZYINITLIST(dancefloor_turfs) - LAZYINITLIST(dancefloor_turfs_types) - - if(!smoke) - smoke = new() - smoke.set_up(0, get_turf(user)) - smoke.start() - - if(dancefloor_exists) - dancefloor_exists = FALSE - for(var/i in 1 to dancefloor_turfs.len) - var/turf/T = dancefloor_turfs[i] - T.ChangeTurf(dancefloor_turfs_types[i]) - else - dancefloor_exists = TRUE - var/i = 1 - var/list/funky_turfs = RANGE_TURFS(1, user) - dancefloor_turfs.len = funky_turfs.len - dancefloor_turfs_types.len = funky_turfs.len - for(var/t in funky_turfs) - var/turf/T = t - dancefloor_turfs[i] = T - dancefloor_turfs_types[i] = T.type - T.ChangeTurf((i % 2 == 0) ? /turf/open/floor/light/colour_cycle/dancefloor_a : /turf/open/floor/light/colour_cycle/dancefloor_b) - i++ - -/datum/effect_system/smoke_spread/transparent/dancefloor_devil - effect_type = /obj/effect/particle_effect/smoke/transparent/dancefloor_devil - -/obj/effect/particle_effect/smoke/transparent/dancefloor_devil - lifetime = 2 \ No newline at end of file diff --git a/code/modules/spells/spell_types/ethereal_jaunt.dm b/code/modules/spells/spell_types/ethereal_jaunt.dm index d6f9acd2bf..a990b84b7c 100644 --- a/code/modules/spells/spell_types/ethereal_jaunt.dm +++ b/code/modules/spells/spell_types/ethereal_jaunt.dm @@ -10,58 +10,73 @@ range = -1 cooldown_min = 100 //50 deciseconds reduction per rank include_user = 1 + centcom_cancast = 0 //Prevent people from getting to centcom nonabstract_req = 1 var/jaunt_duration = 50 //in deciseconds - var/jaunt_in_time = 5 - var/jaunt_in_type = /obj/effect/overlay/temp/wizard - var/jaunt_out_type = /obj/effect/overlay/temp/wizard/out action_icon_state = "jaunt" /obj/effect/proc_holder/spell/targeted/ethereal_jaunt/cast(list/targets,mob/user = usr) //magnets, so mostly hardcoded playsound(get_turf(user), 'sound/magic/Ethereal_Enter.ogg', 50, 1, -1) for(var/mob/living/target in targets) - addtimer(src, "do_jaunt", 0, TIMER_NORMAL, target) + target.notransform = 1 //protects the mob from being transformed (replaced) midjaunt and getting stuck in bluespace + spawn(0) + var/turf/mobloc = get_turf(target.loc) + var/obj/effect/dummy/spell_jaunt/holder = new /obj/effect/dummy/spell_jaunt( mobloc ) + var/atom/movable/overlay/animation = new /atom/movable/overlay( mobloc ) + animation.name = "water" + animation.density = 0 + animation.anchored = 1 + animation.icon = 'icons/mob/mob.dmi' + animation.layer = FLY_LAYER + animation.master = holder + target.ExtinguishMob() + if(target.buckled) + target.buckled.unbuckle_mob(target,force=1) + if(target.pulledby) + target.pulledby.stop_pulling() + target.stop_pulling() + if(target.has_buckled_mobs()) + target.unbuckle_all_mobs(force=1) + jaunt_disappear(animation, target) + target.loc = holder + target.reset_perspective(holder) + target.notransform=0 //mob is safely inside holder now, no need for protection. + jaunt_steam(mobloc) -/obj/effect/proc_holder/spell/targeted/ethereal_jaunt/proc/do_jaunt(mob/living/target) - target.notransform = 1 - var/turf/mobloc = get_turf(target) - var/obj/effect/dummy/spell_jaunt/holder = new /obj/effect/dummy/spell_jaunt(mobloc) - PoolOrNew(jaunt_out_type, list(mobloc, holder.dir)) - target.ExtinguishMob() - if(target.buckled) - target.buckled.unbuckle_mob(target,force=1) - if(target.pulledby) - target.pulledby.stop_pulling() - target.stop_pulling() - if(target.has_buckled_mobs()) - target.unbuckle_all_mobs(force=1) - target.loc = holder - target.reset_perspective(holder) - target.notransform=0 //mob is safely inside holder now, no need for protection. - jaunt_steam(mobloc) + sleep(jaunt_duration) - sleep(jaunt_duration) + if(target.loc != holder) //mob warped out of the warp + qdel(holder) + return + mobloc = get_turf(target.loc) + animation.loc = mobloc + jaunt_steam(mobloc) + target.canmove = 0 + holder.reappearing = 1 + playsound(get_turf(user), 'sound/magic/Ethereal_Exit.ogg', 50, 1, -1) + sleep(20) + if(!qdeleted(target)) + jaunt_reappear(animation, target) + sleep(5) + qdel(animation) + qdel(holder) + if(!qdeleted(target)) + if(mobloc.density) + for(var/direction in list(1,2,4,8,5,6,9,10)) + var/turf/T = get_step(mobloc, direction) + if(T) + if(target.Move(T)) + break + target.canmove = 1 + +/obj/effect/proc_holder/spell/targeted/ethereal_jaunt/proc/jaunt_disappear(atom/movable/overlay/animation, mob/living/target) + animation.icon_state = "liquify" + flick("liquify",animation) + + +/obj/effect/proc_holder/spell/targeted/ethereal_jaunt/proc/jaunt_reappear(atom/movable/overlay/animation, mob/living/target) + flick("reappear",animation) - if(target.loc != holder) //mob warped out of the warp - qdel(holder) - return - mobloc = get_turf(target.loc) - jaunt_steam(mobloc) - target.canmove = 0 - holder.reappearing = 1 - playsound(get_turf(target), 'sound/magic/Ethereal_Exit.ogg', 50, 1, -1) - sleep(25 - jaunt_in_time) - PoolOrNew(jaunt_in_type, list(mobloc, holder.dir)) - sleep(jaunt_in_time) - qdel(holder) - if(!qdeleted(target)) - if(mobloc.density) - for(var/direction in alldirs) - var/turf/T = get_step(mobloc, direction) - if(T) - if(target.Move(T)) - break - target.canmove = 1 /obj/effect/proc_holder/spell/targeted/ethereal_jaunt/proc/jaunt_steam(mobloc) var/datum/effect_system/steam_spread/steam = new /datum/effect_system/steam_spread() @@ -77,7 +92,7 @@ density = 0 anchored = 1 invisibility = 60 - resistance_flags = LAVA_PROOF | FIRE_PROOF | UNACIDABLE | ACID_PROOF + burn_state = LAVA_PROOF /obj/effect/dummy/spell_jaunt/Destroy() // Eject contents if deleted somehow @@ -88,7 +103,6 @@ /obj/effect/dummy/spell_jaunt/relaymove(var/mob/user, direction) if (!src.canmove || reappearing || !direction) return var/turf/newLoc = get_step(src,direction) - setDir(direction) if(!(newLoc.flags & NOJAUNT)) loc = newLoc else diff --git a/code/modules/spells/spell_types/forcewall.dm b/code/modules/spells/spell_types/forcewall.dm deleted file mode 100644 index c1452390bc..0000000000 --- a/code/modules/spells/spell_types/forcewall.dm +++ /dev/null @@ -1,36 +0,0 @@ -/obj/effect/proc_holder/spell/targeted/forcewall - name = "Forcewall" - desc = "Create a magical barrier that only you can pass through. Does not require wizard garb." - school = "transmutation" - charge_max = 100 - clothes_req = 0 - invocation = "TARCOL MINTI ZHERI" - invocation_type = "shout" - sound = "sound/magic/ForceWall.ogg" - action_icon_state = "shield" - range = -1 - include_user = 1 - cooldown_min = 50 //12 deciseconds reduction per rank - -/obj/effect/proc_holder/spell/targeted/forcewall/cast(list/targets,mob/user = usr) - new /obj/effect/forcefield/wizard(get_turf(user),user) - if(user.dir == SOUTH || user.dir == NORTH) - new /obj/effect/forcefield/wizard(get_step(user, EAST),user) - new /obj/effect/forcefield/wizard(get_step(user, WEST),user) - else - new /obj/effect/forcefield/wizard(get_step(user, NORTH),user) - new /obj/effect/forcefield/wizard(get_step(user, SOUTH),user) - - -/obj/effect/forcefield/wizard - var/mob/wizard - -/obj/effect/forcefield/wizard/New(atom/loc, mob/summoner) - ..() - wizard = summoner - QDEL_IN(src, 300) - -/obj/effect/forcefield/wizard/CanPass(atom/movable/mover, turf/target, height=0) - if(mover == wizard) - return 1 - return 0 diff --git a/code/modules/spells/spell_types/godhand.dm b/code/modules/spells/spell_types/godhand.dm index f2730fb3be..fcd8ea5ebb 100644 --- a/code/modules/spells/spell_types/godhand.dm +++ b/code/modules/spells/spell_types/godhand.dm @@ -8,7 +8,7 @@ icon_state = "syndballoon" item_state = null flags = ABSTRACT | NODROP - w_class = WEIGHT_CLASS_HUGE + w_class = 5 force = 0 throwforce = 0 throw_range = 0 diff --git a/code/modules/spells/spell_types/infinite_guns.dm b/code/modules/spells/spell_types/infinite_guns.dm index f62ce1735e..10b8612c85 100644 --- a/code/modules/spells/spell_types/infinite_guns.dm +++ b/code/modules/spells/spell_types/infinite_guns.dm @@ -1,6 +1,6 @@ /obj/effect/proc_holder/spell/targeted/infinite_guns name = "Lesser Summon Guns" - desc = "Why reload when you have infinite guns? Summons an unending stream of bolt action rifles. Requires both hands free to use. Learning this spell makes you unable to learn Arcane Barrage." + desc = "Why reload when you have infinite guns? Summons an unending stream of bolt action rifles. Requires both hands free to use." invocation_type = "none" include_user = 1 range = -1 @@ -10,21 +10,13 @@ clothes_req = 1 cooldown_min = 10 //Gun wizard action_icon_state = "bolt_action" - var/summon_path = /obj/item/weapon/gun/ballistic/shotgun/boltaction/enchanted + + /obj/effect/proc_holder/spell/targeted/infinite_guns/cast(list/targets, mob/user = usr) for(var/mob/living/carbon/C in targets) C.drop_item() C.swap_hand() C.drop_item() - var/GUN = new summon_path + var/obj/item/weapon/gun/projectile/shotgun/boltaction/enchanted/GUN = new C.put_in_hands(GUN) - C.swap_hand(C.get_held_index_of_item(GUN)) - -/obj/effect/proc_holder/spell/targeted/infinite_guns/gun - -/obj/effect/proc_holder/spell/targeted/infinite_guns/arcane_barrage - name = "Arcane Barrage" - desc = "Fire a torrent of arcane energy at your foes with this (powerful) spell. Requires both hands free to use. Learning this spell makes you unable to learn Lesser Summon Gun." - action_icon_state = "arcane_barrage" - summon_path = /obj/item/weapon/gun/ballistic/shotgun/boltaction/enchanted/arcane_barrage \ No newline at end of file diff --git a/code/modules/spells/spell_types/knock.dm b/code/modules/spells/spell_types/knock.dm index 453699b781..36985c1825 100644 --- a/code/modules/spells/spell_types/knock.dm +++ b/code/modules/spells/spell_types/knock.dm @@ -16,9 +16,9 @@ user << sound("sound/magic/Knock.ogg") for(var/turf/T in targets) for(var/obj/machinery/door/door in T.contents) - addtimer(src, "open_door", 0, TIMER_NORMAL, door) + addtimer(src, "open_door", 0, FALSE, door) for(var/obj/structure/closet/C in T.contents) - addtimer(src, "open_closet", 0, TIMER_NORMAL, C) + addtimer(src, "open_closet", 0, FALSE, C) /obj/effect/proc_holder/spell/aoe_turf/knock/proc/open_door(var/obj/machinery/door/door) if(istype(door, /obj/machinery/door/airlock)) diff --git a/code/modules/spells/spell_types/lichdom.dm b/code/modules/spells/spell_types/lichdom.dm index 1e7fc5ee7f..511f446bf4 100644 --- a/code/modules/spells/spell_types/lichdom.dm +++ b/code/modules/spells/spell_types/lichdom.dm @@ -43,7 +43,7 @@ for(var/mob/M in targets) var/list/hand_items = list() if(iscarbon(M)) - hand_items = list(M.get_active_held_item(),M.get_inactive_held_item()) + hand_items = list(M.get_active_hand(),M.get_inactive_hand()) if(marked_item && !stat_allowed) //sanity, shouldn't happen without badminry marked_item = null @@ -72,7 +72,7 @@ var/mob/living/carbon/human/lich = new /mob/living/carbon/human(item_turf) - lich.equip_to_slot_or_del(new /obj/item/clothing/shoes/sandal/magic(lich), slot_shoes) + lich.equip_to_slot_or_del(new /obj/item/clothing/shoes/sandal(lich), slot_shoes) lich.equip_to_slot_or_del(new /obj/item/clothing/under/color/black(lich), slot_w_uniform) lich.equip_to_slot_or_del(new /obj/item/clothing/suit/wizrobe/black(lich), slot_wear_suit) lich.equip_to_slot_or_del(new /obj/item/clothing/head/wizard/black(lich), slot_head) @@ -80,7 +80,7 @@ lich.real_name = M.mind.name M.mind.transfer_to(lich) lich.hardset_dna(null,null,lich.real_name,null,/datum/species/skeleton) - lich << "Your bones clatter and shutter as you are pulled back into this world!" + lich << "Your bones clatter and shutter as they're pulled back into this world!" charge_max += 600 var/mob/old_body = current_body var/turf/body_turf = get_turf(old_body) @@ -92,14 +92,13 @@ var/mob/living/carbon/C = old_body for(var/obj/item/W in C) C.unEquip(W) - for(var/X in C.internal_organs) - var/obj/item/organ/I = X + for(var/obj/item/organ/I in C.internal_organs) I.Remove(C) I.forceMove(body_turf) var/wheres_wizdo = dir2text(get_dir(body_turf, item_turf)) if(wheres_wizdo) old_body.visible_message("Suddenly [old_body.name]'s corpse falls to pieces! You see a strange energy rise from the remains, and speed off towards the [wheres_wizdo]!") - body_turf.Beam(item_turf,icon_state="lichbeam",time=10+10*resurrections,maxdistance=INFINITY) + body_turf.Beam(item_turf,icon_state="lichbeam",icon='icons/effects/effects.dmi',time=10+10*resurrections,maxdistance=INFINITY) old_body.dust() if(!marked_item) //linking item to the spell @@ -124,11 +123,9 @@ charge_max = 1800 //3 minute cooldown, if you rise in sight of someone and killed again, you're probably screwed. charge_counter = 1800 stat_allowed = 1 - marked_item.name = "ensouled [marked_item.name]" - marked_item.desc += "\nA terrible aura surrounds this item, its very existence is offensive to life itself..." - marked_item.add_atom_colour("#003300", ADMIN_COLOUR_PRIORITY) - poi_list |= marked_item - + marked_item.name = "Ensouled [marked_item.name]" + marked_item.desc = "A terrible aura surrounds this item, its very existence is offensive to life itself..." + marked_item.color = "#003300" M << "With a hideous feeling of emptiness you watch in horrified fascination as skin sloughs off bone! Blood boils, nerves disintegrate, eyes boil in their sockets! As your organs crumble to dust in your fleshless chest you come to terms with your choice. You're a lich!" M.set_species(/datum/species/skeleton) current_body = M.mind.current diff --git a/code/modules/spells/spell_types/lightning.dm b/code/modules/spells/spell_types/lightning.dm index 73e958926c..1bc6b2429f 100644 --- a/code/modules/spells/spell_types/lightning.dm +++ b/code/modules/spells/spell_types/lightning.dm @@ -32,18 +32,15 @@ if(ready && cast_check(skipcharge=1)) choose_targets() else - revert_cast(user, 0) - else - revert_cast(user, 0) + Reset(user) /obj/effect/proc_holder/spell/targeted/lightning/proc/Reset(mob/user = usr) ready = 0 if(halo) user.overlays.Remove(halo) -/obj/effect/proc_holder/spell/targeted/lightning/revert_cast(mob/user = usr, message = 1) - if(message) - user << "No target found in range." +/obj/effect/proc_holder/spell/targeted/lightning/revert_cast(mob/user = usr) + user << "No target found in range." Reset(user) ..() @@ -58,13 +55,13 @@ return playsound(get_turf(user), 'sound/magic/lightningbolt.ogg', 50, 1) - user.Beam(target,icon_state="lightning[rand(1,12)]",time=5) + user.Beam(target,icon_state="lightning[rand(1,12)]",icon='icons/effects/effects.dmi',time=5) Bolt(user,target,30,5,user) Reset(user) /obj/effect/proc_holder/spell/targeted/lightning/proc/Bolt(mob/origin,mob/target,bolt_energy,bounces,mob/user = usr) - origin.Beam(target,icon_state="lightning[rand(1,12)]",time=5) + origin.Beam(target,icon_state="lightning[rand(1,12)]",icon='icons/effects/effects.dmi',time=5) var/mob/living/carbon/current = target if(bounces < 1) current.electrocute_act(bolt_energy,"Lightning Bolt",safety=1) diff --git a/code/modules/spells/spell_types/mime.dm b/code/modules/spells/spell_types/mime.dm index 9d8cd0fe6a..231260283a 100644 --- a/code/modules/spells/spell_types/mime.dm +++ b/code/modules/spells/spell_types/mime.dm @@ -21,7 +21,7 @@ if(!usr.mind.miming) usr << "You must dedicate yourself to silence first." return - invocation = "[usr.real_name] looks as if a wall is in front of [usr.p_them()]." + invocation = "[usr.real_name] looks as if a wall is in front of them." else invocation_type ="none" ..() diff --git a/code/modules/spells/spell_types/mind_transfer.dm b/code/modules/spells/spell_types/mind_transfer.dm index d5dfabb306..5f8fe38f98 100644 --- a/code/modules/spells/spell_types/mind_transfer.dm +++ b/code/modules/spells/spell_types/mind_transfer.dm @@ -31,14 +31,11 @@ Also, you never added distance checking after target is selected. I've went ahea var/mob/living/target = targets[1] - var/t_He = target.p_they(TRUE) - var/t_is = target.p_are() - if(!(target in oview(range)) && !distanceoverride)//If they are not in overview after selection. Do note that !() is necessary for in to work because ! takes precedence over it. - user << "[t_He] [t_is] too far away!" + user << "They are too far away!" return - if(ismegafauna(target)) + if(istype(target, /mob/living/simple_animal/hostile/megafauna)) user << "This creature is too powerful to control!" return @@ -47,7 +44,7 @@ Also, you never added distance checking after target is selected. I've went ahea return if(!target.key || !target.mind) - user << "[t_He] appear[target.p_s()] to be catatonic! Not even magic can affect [target.p_their()] vacant mind." + user << "They appear to be catatonic! Not even magic can affect their vacant mind." return if(user.suiciding) @@ -55,7 +52,7 @@ Also, you never added distance checking after target is selected. I've went ahea return if((target.mind.special_role in protected_roles) || cmptext(copytext(target.key,1,2),"@")) - user << "[target.p_their(TRUE)] mind is resisting your spell!" + user << "Their mind is resisting your spell!" return var/mob/living/victim = target//The target of the spell whos body will be transferred to. diff --git a/code/modules/spells/spell_types/rightandwrong.dm b/code/modules/spells/spell_types/rightandwrong.dm index 2ffdfc3a43..255f0af9d7 100644 --- a/code/modules/spells/spell_types/rightandwrong.dm +++ b/code/modules/spells/spell_types/rightandwrong.dm @@ -2,8 +2,8 @@ /proc/rightandwrong(summon_type, mob/user, survivor_probability) //0 = Summon Guns, 1 = Summon Magic var/list/gunslist = list("taser","gravgun","egun","laser","revolver","detective","c20r","nuclear","deagle","gyrojet","pulse","suppressed","cannon","doublebarrel","shotgun","combatshotgun","bulldog","mateba","sabr","crossbow","saw","car","boltaction","speargun","arg","uzi","alienpistol","dragnet","turret","pulsecarbine","decloner","mindflayer","hyperkinetic","advplasmacutter","wormhole","wt550","bulldog","grenadelauncher","goldenrevolver","sniper","medibeam","scatterbeam") - var/list/magiclist = list("fireball","smoke","blind","mindswap","forcewall","knock","horsemask","charge", "summonitem", "wandnothing", "wanddeath", "wandresurrection", "wandpolymorph", "wandteleport", "wanddoor", "wandfireball", "staffchange", "staffhealing", "armor", "scrying","staffdoor","voodoo", "whistle", "battlemage", "immortality", "ghostsword", "special") - var/list/magicspeciallist = list("staffchange","staffanimation", "wandbelt", "contract", "staffchaos", "necromantic", "bloodcontract") + var/list/magiclist = list("fireball","smoke","blind","mindswap","forcewall","knock","horsemask","charge", "summonitem", "wandnothing", "wanddeath", "wandresurrection", "wandpolymorph", "wandteleport", "wanddoor", "wandfireball", "staffchange", "staffhealing", "armor", "scrying","staffdoor","voodoo", "special") + var/list/magicspeciallist = list("staffchange","staffanimation", "wandbelt", "contract", "staffchaos", "necromantic") if(user) //in this case either someone holding a spellbook or a badmin user << "You summoned [summon_type ? "magic" : "guns"]!" @@ -15,23 +15,19 @@ if(H.mind.special_role == "Wizard" || H.mind.special_role == "apprentice" || H.mind.special_role == "survivalist") continue if(prob(survivor_probability) && !(H.mind in ticker.mode.traitors)) ticker.mode.traitors += H.mind - if(!summon_type) - var/datum/objective/steal_five_of_type/summon_guns/guns = new - guns.owner = H.mind - H.mind.objectives += guns - H.mind.special_role = "survivalist" - H << "You are the survivalist! Your own safety matters above all else, and the only way to ensure your safety is to stockpile weapons! Grab as many guns as possible, by any means necessary. Kill anyone who gets in your way." - else - var/datum/objective/steal_five_of_type/summon_magic/magic = new - magic.owner = H.mind - H.mind.objectives += magic - H.mind.special_role = "amateur magician" - H << "You are the amateur magician! Grow your newfound talent! Grab as many magical artefacts as possible, by any means necessary. Kill anyone who gets in your way." + var/datum/objective/summon_guns/guns = new + guns.owner = H.mind + H.mind.objectives += guns + H.mind.special_role = "survivalist" var/datum/objective/survive/survive = new survive.owner = H.mind H.mind.objectives += survive H.attack_log += "\[[time_stamp()]\] Was made into a survivalist, and trusts no one!" - H.mind.announce_objectives() + H << "You are the survivalist! Your own safety matters above all else, and the only way to ensure your safety is to stockpile weapons! Grab as many guns as possible, by any means necessary. Kill anyone who gets in your way." + var/obj_count = 1 + for(var/datum/objective/OBJ in H.mind.objectives) + H << "Objective #[obj_count]: [OBJ.explanation_text]" + obj_count++ var/randomizeguns = pick(gunslist) var/randomizemagic = pick(magiclist) var/randomizemagicspecial = pick(magicspeciallist) @@ -39,62 +35,62 @@ var/obj/item/weapon/gun/G switch (randomizeguns) if("taser") - G = new /obj/item/weapon/gun/energy/e_gun/advtaser(get_turf(H)) + G = new /obj/item/weapon/gun/energy/gun/advtaser(get_turf(H)) if("egun") - G = new /obj/item/weapon/gun/energy/e_gun(get_turf(H)) + G = new /obj/item/weapon/gun/energy/gun(get_turf(H)) if("laser") G = new /obj/item/weapon/gun/energy/laser(get_turf(H)) if("revolver") - G = new /obj/item/weapon/gun/ballistic/revolver(get_turf(H)) + G = new /obj/item/weapon/gun/projectile/revolver(get_turf(H)) if("detective") - G = new /obj/item/weapon/gun/ballistic/revolver/detective(get_turf(H)) + G = new /obj/item/weapon/gun/projectile/revolver/detective(get_turf(H)) if("deagle") - G = new /obj/item/weapon/gun/ballistic/automatic/pistol/deagle/camo(get_turf(H)) + G = new /obj/item/weapon/gun/projectile/automatic/pistol/deagle/camo(get_turf(H)) if("gyrojet") - G = new /obj/item/weapon/gun/ballistic/automatic/gyropistol(get_turf(H)) + G = new /obj/item/weapon/gun/projectile/automatic/gyropistol(get_turf(H)) if("pulse") G = new /obj/item/weapon/gun/energy/pulse(get_turf(H)) if("suppressed") - G = new /obj/item/weapon/gun/ballistic/automatic/pistol(get_turf(H)) + G = new /obj/item/weapon/gun/projectile/automatic/pistol(get_turf(H)) new /obj/item/weapon/suppressor(get_turf(H)) if("doublebarrel") - G = new /obj/item/weapon/gun/ballistic/revolver/doublebarrel(get_turf(H)) + G = new /obj/item/weapon/gun/projectile/revolver/doublebarrel(get_turf(H)) if("shotgun") - G = new /obj/item/weapon/gun/ballistic/shotgun(get_turf(H)) + G = new /obj/item/weapon/gun/projectile/shotgun(get_turf(H)) if("combatshotgun") - G = new /obj/item/weapon/gun/ballistic/shotgun/automatic/combat(get_turf(H)) + G = new /obj/item/weapon/gun/projectile/shotgun/automatic/combat(get_turf(H)) if("arg") - G = new /obj/item/weapon/gun/ballistic/automatic/ar(get_turf(H)) + G = new /obj/item/weapon/gun/projectile/automatic/ar(get_turf(H)) if("mateba") - G = new /obj/item/weapon/gun/ballistic/revolver/mateba(get_turf(H)) + G = new /obj/item/weapon/gun/projectile/revolver/mateba(get_turf(H)) if("boltaction") - G = new /obj/item/weapon/gun/ballistic/shotgun/boltaction(get_turf(H)) + G = new /obj/item/weapon/gun/projectile/shotgun/boltaction(get_turf(H)) if("speargun") - G = new /obj/item/weapon/gun/ballistic/automatic/speargun(get_turf(H)) + G = new /obj/item/weapon/gun/projectile/automatic/speargun(get_turf(H)) if("uzi") - G = new /obj/item/weapon/gun/ballistic/automatic/mini_uzi(get_turf(H)) + G = new /obj/item/weapon/gun/projectile/automatic/mini_uzi(get_turf(H)) if("cannon") G = new /obj/item/weapon/gun/energy/lasercannon(get_turf(H)) if("crossbow") G = new /obj/item/weapon/gun/energy/kinetic_accelerator/crossbow/large(get_turf(H)) if("nuclear") - G = new /obj/item/weapon/gun/energy/e_gun/nuclear(get_turf(H)) + G = new /obj/item/weapon/gun/energy/gun/nuclear(get_turf(H)) if("sabr") - G = new /obj/item/weapon/gun/ballistic/automatic/proto(get_turf(H)) + G = new /obj/item/weapon/gun/projectile/automatic/proto(get_turf(H)) if("bulldog") - G = new /obj/item/weapon/gun/ballistic/automatic/shotgun/bulldog(get_turf(H)) + G = new /obj/item/weapon/gun/projectile/automatic/shotgun/bulldog(get_turf(H)) if("c20r") - G = new /obj/item/weapon/gun/ballistic/automatic/c20r(get_turf(H)) + G = new /obj/item/weapon/gun/projectile/automatic/c20r(get_turf(H)) if("saw") - G = new /obj/item/weapon/gun/ballistic/automatic/l6_saw(get_turf(H)) + G = new /obj/item/weapon/gun/projectile/automatic/l6_saw(get_turf(H)) if("car") - G = new /obj/item/weapon/gun/ballistic/automatic/m90(get_turf(H)) + G = new /obj/item/weapon/gun/projectile/automatic/m90(get_turf(H)) if("alienpistol") G = new /obj/item/weapon/gun/energy/alien(get_turf(H)) if("dragnet") - G = new /obj/item/weapon/gun/energy/e_gun/dragnet(get_turf(H)) + G = new /obj/item/weapon/gun/energy/gun/dragnet(get_turf(H)) if("turret") - G = new /obj/item/weapon/gun/energy/e_gun/turret(get_turf(H)) + G = new /obj/item/weapon/gun/energy/gun/turret(get_turf(H)) if("pulsecarbine") G = new /obj/item/weapon/gun/energy/pulse/carbine(get_turf(H)) if("decloner") @@ -102,21 +98,21 @@ if("mindflayer") G = new /obj/item/weapon/gun/energy/mindflayer(get_turf(H)) if("hyperkinetic") - G = new /obj/item/weapon/gun/energy/kinetic_accelerator(get_turf(H)) + G = new /obj/item/weapon/gun/energy/kinetic_accelerator/hyper(get_turf(H)) if("advplasmacutter") G = new /obj/item/weapon/gun/energy/plasmacutter/adv(get_turf(H)) if("wormhole") G = new /obj/item/weapon/gun/energy/wormhole_projector(get_turf(H)) if("wt550") - G = new /obj/item/weapon/gun/ballistic/automatic/wt550(get_turf(H)) + G = new /obj/item/weapon/gun/projectile/automatic/wt550(get_turf(H)) if("bulldog") - G = new /obj/item/weapon/gun/ballistic/automatic/shotgun(get_turf(H)) + G = new /obj/item/weapon/gun/projectile/automatic/shotgun(get_turf(H)) if("grenadelauncher") - G = new /obj/item/weapon/gun/ballistic/revolver/grenadelauncher(get_turf(H)) + G = new /obj/item/weapon/gun/projectile/revolver/grenadelauncher(get_turf(H)) if("goldenrevolver") - G = new /obj/item/weapon/gun/ballistic/revolver/golden(get_turf(H)) + G = new /obj/item/weapon/gun/projectile/revolver/golden(get_turf(H)) if("sniper") - G = new /obj/item/weapon/gun/ballistic/automatic/sniper_rifle(get_turf(H)) + G = new /obj/item/weapon/gun/projectile/automatic/sniper_rifle(get_turf(H)) if("medibeam") G = new /obj/item/weapon/gun/medbeam(get_turf(H)) if("scatterbeam") @@ -173,14 +169,6 @@ H << "The walls suddenly disappear." if("voodoo") new /obj/item/voodoo(get_turf(H)) - if("whistle") - new /obj/item/warpwhistle(get_turf(H)) - if("battlemage") - new /obj/item/clothing/suit/space/hardsuit/shielded/wizard(get_turf(H)) - if("immortality") - new /obj/item/device/immortality_talisman(get_turf(H)) - if("ghostsword") - new /obj/item/weapon/melee/ghost_sword(get_turf(H)) if("special") magiclist -= "special" //only one super OP item per summoning max switch (randomizemagicspecial) @@ -196,8 +184,6 @@ new /obj/item/weapon/gun/magic/staff/chaos(get_turf(H)) if("necromantic") new /obj/item/device/necromantic_stone(get_turf(H)) - if("bloodcontract") - new /obj/item/blood_contract(get_turf(H)) H << "You suddenly feel lucky." playsound(get_turf(H),'sound/magic/Summon_Magic.ogg', 50, 1) diff --git a/code/modules/spells/spell_types/rod_form.dm b/code/modules/spells/spell_types/rod_form.dm deleted file mode 100644 index 1e8545f76f..0000000000 --- a/code/modules/spells/spell_types/rod_form.dm +++ /dev/null @@ -1,42 +0,0 @@ -/obj/effect/proc_holder/spell/targeted/rod_form - name = "Rod Form" - desc = "Take on the form of an immovable rod, destroying all in your path." - clothes_req = 1 - human_req = 0 - charge_max = 250 - cooldown_min = 100 - range = -1 - include_user = 1 - invocation = "CLANG!" - invocation_type = "shout" - action_icon_state = "immrod" - -/obj/effect/proc_holder/spell/targeted/rod_form/cast(list/targets,mob/user = usr) - for(var/mob/living/M in targets) - var/turf/start = get_turf(M) - var/obj/effect/immovablerod/wizard/W = new(start, get_ranged_target_turf(M, M.dir, (15 + spell_level * 3))) - W.wizard = M - W.max_distance += spell_level * 3 //You travel farther when you upgrade the spell - W.start_turf = start - M.forceMove(W) - M.notransform = 1 - M.status_flags |= GODMODE - -//Wizard Version of the Immovable Rod - -/obj/effect/immovablerod/wizard - var/max_distance = 13 - var/mob/living/wizard - var/turf/start_turf - -/obj/effect/immovablerod/wizard/Move() - if(get_dist(start_turf, get_turf(src)) >= max_distance) - qdel(src) - ..() - -/obj/effect/immovablerod/wizard/Destroy() - if(wizard) - wizard.status_flags &= ~GODMODE - wizard.notransform = 0 - wizard.forceMove(get_turf(src)) - return ..() \ No newline at end of file diff --git a/code/modules/spells/spell_types/shapeshift.dm b/code/modules/spells/spell_types/shapeshift.dm index 0d485d687c..b24b9c3bba 100644 --- a/code/modules/spells/spell_types/shapeshift.dm +++ b/code/modules/spells/spell_types/shapeshift.dm @@ -70,14 +70,4 @@ current_shapes.Remove(shape) shape.mind.transfer_to(caster) - qdel(shape) //Gib it maybe ? - -/obj/effect/proc_holder/spell/targeted/shapeshift/dragon - name = "Dragon Form" - desc = "Take on the shape a lesser ash drake." - invocation = "RAAAAAAAAWR!" - - shapeshift_type = /mob/living/simple_animal/hostile/megafauna/dragon/lesser - list/current_shapes = list(/mob/living/simple_animal/hostile/megafauna/dragon/lesser) - list/current_casters = list() - list/possible_shapes = list(/mob/living/simple_animal/hostile/megafauna/dragon/lesser) \ No newline at end of file + qdel(shape) //Gib it maybe ? \ No newline at end of file diff --git a/code/modules/spells/spell_types/spacetime_distortion.dm b/code/modules/spells/spell_types/spacetime_distortion.dm index 54a820a87b..da452070af 100644 --- a/code/modules/spells/spell_types/spacetime_distortion.dm +++ b/code/modules/spells/spell_types/spacetime_distortion.dm @@ -8,8 +8,6 @@ var/ready = TRUE centcom_cancast = FALSE sound = "sound/effects/magic.ogg" - cooldown_min = 300 - level_max = 0 /obj/effect/proc_holder/spell/spacetime_dist/can_cast(mob/user = usr) if(ready) diff --git a/code/modules/spells/spell_types/summonitem.dm b/code/modules/spells/spell_types/summonitem.dm index 4d6d1b5a3b..e4b02f8b08 100644 --- a/code/modules/spells/spell_types/summonitem.dm +++ b/code/modules/spells/spell_types/summonitem.dm @@ -17,7 +17,8 @@ /obj/effect/proc_holder/spell/targeted/summonitem/cast(list/targets,mob/user = usr) for(var/mob/living/L in targets) - var/list/hand_items = list(L.get_active_held_item(),L.get_inactive_held_item()) + var/list/hand_items = list(L.get_active_hand(),L.get_inactive_hand()) + var/butterfingers = 0 var/message if(!marked_item) //linking item to the spell @@ -92,7 +93,17 @@ if(item_to_retrive.loc) item_to_retrive.loc.visible_message("The [item_to_retrive.name] suddenly disappears!") - if(!L.put_in_hands(item_to_retrive)) + + + if(L.hand) //left active hand + if(!L.equip_to_slot_if_possible(item_to_retrive, slot_l_hand, 0, 1, 1)) + if(!L.equip_to_slot_if_possible(item_to_retrive, slot_r_hand, 0, 1, 1)) + butterfingers = 1 + else //right active hand + if(!L.equip_to_slot_if_possible(item_to_retrive, slot_r_hand, 0, 1, 1)) + if(!L.equip_to_slot_if_possible(item_to_retrive, slot_l_hand, 0, 1, 1)) + butterfingers = 1 + if(butterfingers) item_to_retrive.loc = L.loc item_to_retrive.loc.visible_message("The [item_to_retrive.name] suddenly appears!") playsound(get_turf(L),"sound/magic/SummonItems_generic.ogg",50,1) diff --git a/code/modules/spells/spell_types/touch_attacks.dm b/code/modules/spells/spell_types/touch_attacks.dm index bc9df91d05..51fa79bccc 100644 --- a/code/modules/spells/spell_types/touch_attacks.dm +++ b/code/modules/spells/spell_types/touch_attacks.dm @@ -1,4 +1,4 @@ -/obj/effect/proc_holder/spell/targeted/touch +/obj/effect/proc_holder/spell/targeted/touch/ var/hand_path = "/obj/item/weapon/melee/touch_attack" var/obj/item/weapon/melee/touch_attack/attached_hand = null invocation_type = "none" //you scream on connecting, not summoning @@ -24,8 +24,17 @@ sleep(1) /obj/effect/proc_holder/spell/targeted/touch/proc/ChargeHand(mob/living/carbon/user) + var/hand_handled = 1 attached_hand = new hand_path(src) - if(!user.put_in_hands(attached_hand)) + if(user.hand) //left active hand + if(!user.equip_to_slot_if_possible(attached_hand, slot_l_hand, 0, 1, 1)) + if(!user.equip_to_slot_if_possible(attached_hand, slot_r_hand, 0, 1, 1)) + hand_handled = 0 + else //right active hand + if(!user.equip_to_slot_if_possible(attached_hand, slot_r_hand, 0, 1, 1)) + if(!user.equip_to_slot_if_possible(attached_hand, slot_l_hand, 0, 1, 1)) + hand_handled = 0 + if(!hand_handled) qdel(attached_hand) charge_counter = charge_max attached_hand = null diff --git a/code/modules/spells/spell_types/wizard.dm b/code/modules/spells/spell_types/wizard.dm index 59bb5bc12c..9430b78744 100644 --- a/code/modules/spells/spell_types/wizard.dm +++ b/code/modules/spells/spell_types/wizard.dm @@ -42,6 +42,7 @@ invocation_type = "shout" range = -1 include_user = 1 + centcom_cancast = 0 mutations = list(LASEREYES, HULK) duration = 300 @@ -104,6 +105,8 @@ inner_tele_radius = 0 outer_tele_radius = 6 + centcom_cancast = 0 //prevent people from getting to centcom + action_icon_state = "blink" sound1="sound/magic/blink.ogg" sound2="sound/magic/blink.ogg" @@ -133,6 +136,25 @@ sound1="sound/magic/Teleport_diss.ogg" sound2="sound/magic/Teleport_app.ogg" +/obj/effect/proc_holder/spell/aoe_turf/conjure/forcewall + name = "Forcewall" + desc = "This spell creates an unbreakable wall that lasts for 30 seconds and does not need wizard garb." + + school = "transmutation" + charge_max = 100 + clothes_req = 0 + invocation = "TARCOL MINTI ZHERI" + invocation_type = "whisper" + range = 0 + cooldown_min = 50 //12 deciseconds reduction per rank + + summon_type = list("/obj/effect/forcefield") + summon_lifespan = 300 + + action_icon_state = "shield" + cast_sound = "sound/magic/ForceWall.ogg" + + /obj/effect/proc_holder/spell/aoe_turf/conjure/timestop name = "Stop Time" desc = "This spell stops time for everyone except for you, allowing you to move freely while your enemies and even projectiles are frozen." @@ -228,7 +250,7 @@ duration = 300 sound="sound/magic/Blind.ogg" -/obj/effect/proc_holder/spell/fireball +/obj/effect/proc_holder/spell/dumbfire/fireball name = "Fireball" desc = "This spell fires a fireball at a target and does not require wizard garb." @@ -239,65 +261,30 @@ invocation_type = "shout" range = 20 cooldown_min = 20 //10 deciseconds reduction per rank - var/fireball_type = /obj/item/projectile/magic/fireball - action_icon_state = "fireball0" + + proj_icon_state = "fireball" + proj_name = "a fireball" + proj_type = "/obj/effect/proc_holder/spell/turf/fireball" + + proj_lifespan = 200 + proj_step_delay = 1 + + action_icon_state = "fireball" sound = "sound/magic/Fireball.ogg" - active = FALSE +/obj/effect/proc_holder/spell/turf/fireball/cast(turf/T,mob/user = usr) + explosion(T, -1, 0, 2, 3, 0, flame_range = 2) -/obj/effect/proc_holder/spell/fireball/Click() - var/mob/living/user = usr - if(!istype(user)) - return +/obj/effect/proc_holder/spell/targeted/inflict_handler/fireball + amt_dam_brute = 20 + amt_dam_fire = 25 - var/msg - - if(!can_cast(user)) - msg = "You can no longer cast Fireball." - remove_ranged_ability(msg) - return - - if(active) - msg = "You extinguish your fireball...for now." - remove_ranged_ability(msg) - else - msg = "Your prepare to cast your fireball spell! Left-click to cast at a target!" - add_ranged_ability(user, msg, TRUE) - -/obj/effect/proc_holder/spell/fireball/update_icon() - if(!action) - return - action.button_icon_state = "fireball[active]" - action.UpdateButtonIcon() - -/obj/effect/proc_holder/spell/fireball/InterceptClickOn(mob/living/caller, params, atom/target) - if(..()) - return FALSE - - if(!cast_check(0, ranged_ability_user)) - remove_ranged_ability() - return FALSE - - var/list/targets = list(target) - perform(targets,user = ranged_ability_user) - - return TRUE - -/obj/effect/proc_holder/spell/fireball/cast(list/targets, mob/living/user) - var/target = targets[1] //There is only ever one target for fireball - var/turf/T = user.loc - var/turf/U = get_step(user, user.dir) // Get the tile infront of the move, based on their direction - if(!isturf(U) || !isturf(T)) - return 0 - - var/obj/item/projectile/magic/fireball/FB = new fireball_type(user.loc) - FB.current = get_turf(user) - FB.preparePixelProjectile(target, get_turf(target), user) - FB.fire() - user.newtonian_move(get_dir(U, T)) - remove_ranged_ability() //Auto-disable the ability once successfully performed - return 1 +/obj/effect/proc_holder/spell/targeted/explosion/fireball + ex_severe = -1 + ex_heavy = -1 + ex_light = 2 + ex_flash = 5 /obj/effect/proc_holder/spell/aoe_turf/repulse name = "Repulse" @@ -315,7 +302,7 @@ action_icon_state = "repulse" -/obj/effect/proc_holder/spell/aoe_turf/repulse/cast(list/targets,mob/user = usr, var/stun_amt = 2) +/obj/effect/proc_holder/spell/aoe_turf/repulse/cast(list/targets,mob/user = usr) var/list/thrownatoms = list() var/atom/throwtarget var/distfromcaster @@ -332,15 +319,15 @@ throwtarget = get_edge_target_turf(user, get_dir(user, get_step_away(AM, user))) distfromcaster = get_dist(user, AM) if(distfromcaster == 0) - if(isliving(AM)) + if(istype(AM, /mob/living)) var/mob/living/M = AM M.Weaken(5) M.adjustBruteLoss(5) M << "You're slammed into the floor by [user]!" else - if(isliving(AM)) + if(istype(AM, /mob/living)) var/mob/living/M = AM - M.Weaken(stun_amt) + M.Weaken(2) M << "You're thrown back by [user]!" AM.throw_at_fast(throwtarget, ((Clamp((maxthrow - (Clamp(distfromcaster - 2, 0, distfromcaster))), 3, maxthrow))), 1,user)//So stuff gets tossed around at the same time. @@ -362,57 +349,4 @@ var/mob/living/carbon/C = user playsound(C.loc, 'sound/voice/hiss5.ogg', 80, 1, 1) C.spin(6,1) - ..(targets, user, 3) - -/obj/effect/proc_holder/spell/targeted/sacred_flame - name = "Sacred Flame" - desc = "Makes everyone around you more flammable, and lights yourself on fire." - charge_max = 60 - clothes_req = 0 - invocation = "FI'RAN DADISKO" - invocation_type = "shout" - max_targets = 0 - range = 6 - include_user = 1 - selection_type = "view" - action_icon_state = "sacredflame" - sound = "sound/magic/Fireball.ogg" - -/obj/effect/proc_holder/spell/targeted/sacred_flame/cast(list/targets, mob/user = usr) - for(var/mob/living/L in targets) - L.adjust_fire_stacks(20) - if(isliving(user)) - var/mob/living/U = user - U.IgniteMob() - -/obj/effect/proc_holder/spell/targeted/conjure_item/spellpacket - name = "Thrown Lightning" - desc = "Forged from eldrich energies, a packet of pure power, known as a spell packet will appear in your hand, that when thrown will stun the target." - clothes_req = 1 - item_type = /obj/item/spellpacket/lightningbolt - charge_max = 10 - -/obj/effect/proc_holder/spell/targeted/conjure_item/spellpacket/cast(list/targets, mob/user = usr) ..() - for(var/mob/living/carbon/C in targets) - C.throw_mode_on() - -/obj/item/spellpacket/lightningbolt - name = "\improper Lightning bolt Spell Packet" - desc = "Some birdseed wrapped in cloth that somehow crackles with electricity." - icon = 'icons/obj/toy.dmi' - icon_state = "snappop" - w_class = WEIGHT_CLASS_TINY - -/obj/item/spellpacket/lightningbolt/throw_impact(atom/hit_atom) - if(!..()) - if(isliving(hit_atom)) - var/mob/living/M = hit_atom - M.electrocute_act(80, src, illusion = 1) - qdel(src) - -/obj/item/spellpacket/lightningbolt/throw_at(atom/target, range, speed, mob/thrower, spin=1, diagonals_first = 0) - . = ..() - if(ishuman(thrower)) - var/mob/living/carbon/human/H = thrower - H.say("LIGHTNINGBOLT!!") diff --git a/code/modules/station_goals/bsa.dm b/code/modules/station_goals/bsa.dm deleted file mode 100644 index 064619051c..0000000000 --- a/code/modules/station_goals/bsa.dm +++ /dev/null @@ -1,323 +0,0 @@ -// Crew has to build a bluespace cannon -// Cargo orders part for high price -// Requires high amount of power -// Requires high level stock parts -/datum/station_goal/bluespace_cannon - name = "Bluespace Artillery" - -/datum/station_goal/bluespace_cannon/get_report() - return {"Our military presence is inadequate in your sector. - We need you to construct BSA-[rand(1,99)] Artillery position aboard your station. - - Base parts should be availible for shipping by your cargo shuttle. - -Nanotrasen Naval Command"} - -/datum/station_goal/bluespace_cannon/on_report() - //Unlock BSA parts - var/datum/supply_pack/misc/bsa/P = SSshuttle.supply_packs[/datum/supply_pack/misc/bsa] - P.special_enabled = TRUE - -/datum/station_goal/bluespace_cannon/check_completion() - if(..()) - return TRUE - var/obj/machinery/bsa/full/B = locate() - if(B && !B.stat) - return TRUE - return FALSE - -/obj/machinery/bsa - icon = 'icons/obj/machines/particle_accelerator.dmi' - density = 1 - anchored = 1 - -/obj/machinery/bsa/back - name = "Bluespace Artillery Generator" - desc = "Generates cannon pulse. Needs to be linked with a fusor. " - icon_state = "power_box" - -/obj/machinery/bsa/back/attackby(obj/item/weapon/W, mob/user, params) - if(istype(W, /obj/item/device/multitool)) - var/obj/item/device/multitool/M = W - M.buffer = src - user << "You store linkage information in [W]'s buffer." - else - return ..() - -/obj/machinery/bsa/front - name = "Bluespace Artillery Bore" - desc = "Do not stand in front of cannon during operation. Needs to be linked with a fusor." - icon_state = "emitter_center" - -/obj/machinery/bsa/front/attackby(obj/item/weapon/W, mob/user, params) - if(istype(W, /obj/item/device/multitool)) - var/obj/item/device/multitool/M = W - M.buffer = src - user << "You store linkage information in [W]'s buffer." - else - return ..() - -/obj/machinery/bsa/middle - name = "Bluespace Artillery Fusor" - desc = "Contents classifed by Nanotrasen Naval Command. Needs to be linked with the other BSA parts using multitool." - icon_state = "fuel_chamber" - var/obj/machinery/bsa/back/back - var/obj/machinery/bsa/front/front - -/obj/machinery/bsa/middle/attackby(obj/item/weapon/W, mob/user, params) - if(istype(W, /obj/item/device/multitool)) - var/obj/item/device/multitool/M = W - if(M.buffer) - if(istype(M.buffer,/obj/machinery/bsa/back)) - back = M.buffer - M.buffer = null - user << "You link [src] with [back]." - else if(istype(M.buffer,/obj/machinery/bsa/front)) - front = M.buffer - M.buffer = null - user << "You link [src] with [front]." - else - return ..() - -/obj/machinery/bsa/middle/proc/check_completion() - if(!front || !back) - return "No linked parts detected!" - if(front.y != y || back.y != y || !(front.x > x && back.x < x || front.x < x && back.x > x) || front.z != z || back.z != z) - return "Parts misaligned!" - if(!has_space()) - return "Not enough free space!" - -/obj/machinery/bsa/middle/proc/has_space() - var/cannon_dir = get_cannon_direction() - var/x_min - var/x_max - switch(cannon_dir) - if(EAST) - x_min = x - 4 //replace with defines later - x_max = x + 6 - if(WEST) - x_min = x + 4 - x_max = x - 6 - - for(var/turf/T in block(locate(x_min,y-1,z),locate(x_max,y+1,z))) - if(T.density || isspaceturf(T)) - return FALSE - return TRUE - -/obj/machinery/bsa/middle/proc/get_cannon_direction() - if(front.x > x && back.x < x) - return EAST - else if(front.x < x && back.x > x) - return WEST - - -/obj/machinery/bsa/full - name = "Bluespace Artillery" - desc = "Long range bluespace artillery." - icon = 'icons/obj/lavaland/cannon.dmi' - icon_state = "orbital_cannon1" - unsecuring_tool = null - var/static/image/top_layer = null - var/ex_power = 3 - var/power_used_per_shot = 2000000 //enough to kil standard apc - todo : make this use wires instead and scale explosion power with it - var/ready - pixel_y = -32 - pixel_x = -192 - bound_width = 352 - bound_x = -192 - appearance_flags = NONE //Removes default TILE_BOUND - -/obj/machinery/bsa/full/proc/get_front_turf() - switch(dir) - if(WEST) - return locate(x - 6,y,z) - if(EAST) - return locate(x + 4,y,z) - return get_turf(src) - -/obj/machinery/bsa/full/proc/get_back_turf() - switch(dir) - if(WEST) - return locate(x + 4,y,z) - if(EAST) - return locate(x - 6,y,z) - return get_turf(src) - -/obj/machinery/bsa/full/proc/get_target_turf() - switch(dir) - if(WEST) - return locate(1,y,z) - if(EAST) - return locate(world.maxx,y,z) - return get_turf(src) - -/obj/machinery/bsa/full/New(loc,cannon_direction = WEST) - ..() - switch(cannon_direction) - if(WEST) - dir = WEST - pixel_x = -192 - top_layer = image("icons/obj/lavaland/orbital_cannon.dmi", "top_west") - top_layer.layer = ABOVE_MOB_LAYER - icon_state = "cannon_west" - if(EAST) - dir = EAST - top_layer = image("icons/obj/lavaland/orbital_cannon.dmi", "top_east") - top_layer.layer = ABOVE_MOB_LAYER - icon_state = "cannon_east" - add_overlay(top_layer) - reload() - -/obj/machinery/bsa/full/proc/fire(mob/user, turf/bullseye) - var/turf/point = get_front_turf() - for(var/turf/T in getline(get_step(point,dir),get_target_turf())) - T.ex_act(1) - point.Beam(get_target_turf(),icon_state="bsa_beam",time=50,maxdistance = world.maxx) //ZZZAP - - message_admins("[key_name_admin(user)] has launched an artillery strike.") - explosion(bullseye,ex_power,ex_power*2,ex_power*4) - - reload() - -/obj/machinery/bsa/full/proc/reload() - ready = FALSE - use_power(power_used_per_shot) - addtimer(src,"ready_cannon",600) - -/obj/machinery/bsa/full/proc/ready_cannon() - ready = TRUE - -/obj/structure/filler - name = "big machinery part" - density = 1 - anchored = 1 - invisibility = INVISIBILITY_ABSTRACT - var/obj/machinery/parent - -/obj/structure/filler/ex_act() - return - -/obj/item/weapon/circuitboard/machine/bsa/back - name = "circuit board (Bluespace Artillery Generator)" - build_path = /obj/machinery/bsa/back - origin_tech = "engineering=2;combat=2;bluespace=2" //No freebies! - req_components = list( - /obj/item/weapon/stock_parts/capacitor/quadratic = 5, - /obj/item/stack/cable_coil = 2) - -/obj/item/weapon/circuitboard/machine/bsa/middle - name = "circuit board (Bluespace Artillery Fusor)" - build_path = /obj/machinery/bsa/middle - origin_tech = "engineering=2;combat=2;bluespace=2" - req_components = list( - /obj/item/weapon/ore/bluespace_crystal = 20, - /obj/item/stack/cable_coil = 2) - -/obj/item/weapon/circuitboard/machine/bsa/front - name = "circuit board (Bluespace Artillery Bore)" - build_path = /obj/machinery/bsa/front - origin_tech = "engineering=2;combat=2;bluespace=2" - req_components = list( - /obj/item/weapon/stock_parts/manipulator/femto = 5, - /obj/item/stack/cable_coil = 2) - -/obj/item/weapon/circuitboard/machine/computer/bsa_control - name = "circuit board (Bluespace Artillery Controls)" - build_path = /obj/machinery/computer/bsa_control - origin_tech = "engineering=2;combat=2;bluespace=2" - -/obj/machinery/computer/bsa_control - name = "Bluespace Artillery Control" - var/obj/machinery/bsa/full/cannon - var/notice - var/target - use_power = 0 - circuit = /obj/item/weapon/circuitboard/machine/computer/bsa_control - icon = 'icons/obj/machines/particle_accelerator.dmi' - icon_state = "control_boxp" - var/area_aim = FALSE //should also show areas for targeting - -/obj/machinery/computer/bsa_control/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = 0, \ - datum/tgui/master_ui = null, datum/ui_state/state = physical_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) - if(!ui) - ui = new(user, src, ui_key, "bsa", name, 400, 305, master_ui, state) - ui.open() - -/obj/machinery/computer/bsa_control/ui_data() - var/list/data = list() - data["ready"] = cannon.ready - data["connected"] = cannon - data["notice"] = notice - if(target) - data["target"] = get_target_name() - return data - -/obj/machinery/computer/bsa_control/ui_act(action, params) - if(..()) - return - switch(action) - if("build") - cannon = deploy() - . = TRUE - if("fire") - fire(usr) - . = TRUE - if("recalibrate") - calibrate(usr) - . = TRUE - update_icon() - -/obj/machinery/computer/bsa_control/proc/calibrate(mob/user) - var/list/gps_locators = list() - for(var/obj/item/device/gps/G in GPS_list) //nulls on the list somehow - gps_locators[G.gpstag] = G - - var/list/options = gps_locators - if(area_aim) - options += teleportlocs - var/V = input(user,"Select target", "Select target",null) in options|null - target = options[V] - - -/obj/machinery/computer/bsa_control/proc/get_target_name() - if(istype(target,/area)) - var/area/A = target - return A.name - else if(istype(target,/obj/item/device/gps)) - var/obj/item/device/gps/G = target - return G.gpstag - -/obj/machinery/computer/bsa_control/proc/get_impact_turf() - if(istype(target,/area)) - return pick(get_area_turfs(target)) - else if(istype(target,/obj/item/device/gps)) - return get_turf(target) - -/obj/machinery/computer/bsa_control/proc/fire(mob/user) - if(cannon.stat) - notice = "Cannon unpowered!" - return - notice = null - cannon.fire(user, get_impact_turf()) - -/obj/machinery/computer/bsa_control/proc/deploy(force=FALSE) - var/obj/machinery/bsa/full/prebuilt = locate() in range(7) //In case of adminspawn - if(prebuilt) - return prebuilt - - var/obj/machinery/bsa/middle/centerpiece = locate() in range(7) - if(!centerpiece) - notice = "No BSA parts detected nearby." - return null - notice = centerpiece.check_completion() - if(notice) - return null - //Totally nanite construction system not an immersion breaking spawning - var/datum/effect_system/smoke_spread/s = new - s.set_up(4, 1, get_turf(centerpiece), 0) - s.start() - var/obj/machinery/bsa/full/cannon = new(get_turf(centerpiece),cannon_direction=centerpiece.get_cannon_direction()) - qdel(centerpiece.front) - qdel(centerpiece.back) - qdel(centerpiece) - return cannon diff --git a/code/modules/station_goals/dna_vault.dm b/code/modules/station_goals/dna_vault.dm deleted file mode 100644 index d92c77c67f..0000000000 --- a/code/modules/station_goals/dna_vault.dm +++ /dev/null @@ -1,278 +0,0 @@ -//Crew has to create dna vault -// Cargo can order DNA samplers + DNA vault boards -// DNA vault requires x animals ,y plants, z human dna -// DNA vaults require high tier stock parts and cold -// After completion each crewmember can receive single upgrade chosen out of 2 for the mob. -#define VAULT_TOXIN "Toxin Adaptation" -#define VAULT_NOBREATH "Lung Enhancement" -#define VAULT_FIREPROOF "Thermal Regulation" -#define VAULT_STUNTIME "Neural Repathing" -#define VAULT_ARMOUR "Bone Reinforcement" - -/datum/station_goal/dna_vault - name = "DNA Vault" - var/animal_count - var/human_count - var/plant_count - -/datum/station_goal/dna_vault/New() - ..() - animal_count = rand(15,20) //might be too few given ~15 roundstart stationside ones - human_count = rand(round(0.75 * ticker.totalPlayersReady) , ticker.totalPlayersReady) // 75%+ roundstart population. - var/non_standard_plants = non_standard_plants_count() - plant_count = rand(round(0.5 * non_standard_plants),round(0.7 * non_standard_plants)) - -/datum/station_goal/dna_vault/proc/non_standard_plants_count() - . = 0 - for(var/T in subtypesof(/obj/item/seeds)) //put a cache if it's used anywhere else - var/obj/item/seeds/S = T - if(initial(S.rarity) > 0) - .++ - -/datum/station_goal/dna_vault/get_report() - return {"Our long term prediction systems say there's 99% chance of system-wide cataclysm in near future. - We need you to construct DNA Vault aboard your station. - - DNA Vault needs to contain samples of: - [animal_count] unique animal data - [plant_count] unique non-standard plant data - [human_count] unique sapient humanoid DNA data - - Base vault parts should be availible for shipping by your cargo shuttle."} - - -/datum/station_goal/dna_vault/on_report() - var/datum/supply_pack/P = SSshuttle.supply_packs[/datum/supply_pack/misc/dna_vault] - P.special_enabled = TRUE - - P = SSshuttle.supply_packs[/datum/supply_pack/misc/dna_probes] - P.special_enabled = TRUE - -/datum/station_goal/dna_vault/check_completion() - if(..()) - return TRUE - for(var/obj/machinery/dna_vault/V in machines) - if(V.animals.len >= animal_count && V.plants.len >= plant_count && V.dna.len >= human_count) - return TRUE - return FALSE - - -/obj/item/device/dna_probe - name = "DNA Sampler" - desc = "Can be used to take chemical and genetic samples of pretty much anything." - icon = 'icons/obj/syringe.dmi' - item_state = "hypo" - icon_state = "hypo" - flags = NOBLUDGEON - var/list/animals = list() - var/list/plants = list() - var/list/dna = list() - -/obj/item/device/dna_probe/proc/clear_data() - animals = list() - plants = list() - dna = list() - -var/list/non_simple_animals = typecacheof(list(/mob/living/carbon/monkey,/mob/living/carbon/alien)) - -/obj/item/device/dna_probe/afterattack(atom/target, mob/user, proximity) - ..() - if(!proximity || !target) - return - //tray plants - if(istype(target,/obj/machinery/hydroponics)) - var/obj/machinery/hydroponics/H = target - if(!H.myseed) - return - if(!H.harvest)// So it's bit harder. - user << "Plants needs to be ready to harvest to perform full data scan." //Because space dna is actually magic - return - if(plants[H.myseed.type]) - user << "Plant data already present in local storage." - return - plants[H.myseed.type] = 1 - user << "Plant data added to local storage." - - //animals - if(isanimal(target) || is_type_in_typecache(target,non_simple_animals)) - if(isanimal(target)) - var/mob/living/simple_animal/A = target - if(!A.healable)//simple approximation of being animal not a robot or similar - user << "No compatibile DNA detected" - return - if(animals[target.type]) - user << "Animal data already present in local storage." - return - animals[target.type] = 1 - user << "Animal data added to local storage." - - //humans - if(ishuman(target)) - var/mob/living/carbon/human/H = target - if(dna[H.dna.uni_identity]) - user << "Humanoid data already present in local storage." - return - dna[H.dna.uni_identity] = 1 - user << "Humanoid data added to local storage." - - -/obj/item/weapon/circuitboard/machine/dna_vault - name = "circuit board (DNA Vault)" - build_path = /obj/machinery/dna_vault - origin_tech = "engineering=2;combat=2;bluespace=2" //No freebies! - req_components = list( - /obj/item/weapon/stock_parts/capacitor/quadratic = 5, - /obj/item/stack/cable_coil = 2) - -/obj/machinery/dna_vault - name = "DNA Vault" - desc = "Break glass in case of apocalypse." - icon = 'icons/obj/machines/dna_vault.dmi' - icon_state = "vault" - density = 1 - anchored = 1 - idle_power_usage = 5000 - pixel_x = -32 - pixel_y = -64 - luminosity = 1 - - //High defaults so it's not completed automatically if there's no station goal - var/animals_max = 100 - var/plants_max = 100 - var/dna_max = 100 - var/list/animals = list() - var/list/plants = list() - var/list/dna = list() - - var/completed = FALSE - var/list/power_lottery = list() - - var/list/obj/structure/fillers = list() - -/obj/machinery/dna_vault/New() - //TODO: Replace this,bsa and gravgen with some big machinery datum - var/list/occupied = list() - for(var/direct in list(EAST,WEST,SOUTHEAST,SOUTHWEST)) - occupied += get_step(src,direct) - occupied += locate(x+1,y-2,z) - occupied += locate(x-1,y-2,z) - - for(var/T in occupied) - var/obj/structure/filler/F = new(T) - F.parent = src - fillers += F - - if(ticker.mode) - for(var/datum/station_goal/dna_vault/G in ticker.mode.station_goals) - animals_max = G.animal_count - plants_max = G.plant_count - dna_max = G.human_count - break - -/obj/machinery/dna_vault/Destroy() - for(var/V in fillers) - var/obj/structure/filler/filler = V - filler.parent = null - qdel(filler) - . = ..() - - -/obj/machinery/dna_vault/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = 0, datum/tgui/master_ui = null, datum/ui_state/state = physical_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) - if(!ui) - roll_powers(user) - ui = new(user, src, ui_key, "dna_vault", name, 350, 400, master_ui, state) - ui.open() - - -/obj/machinery/dna_vault/proc/roll_powers(mob/user) - if(user in power_lottery) - return - var/list/L = list() - var/list/possible_powers = list(VAULT_TOXIN,VAULT_NOBREATH,VAULT_FIREPROOF,VAULT_STUNTIME,VAULT_ARMOUR) - L += pick_n_take(possible_powers) - L += pick_n_take(possible_powers) - power_lottery[user] = L - -/obj/machinery/dna_vault/ui_data(mob/user) //TODO Make it % bars maybe - var/list/data = list() - data["plants"] = plants.len - data["plants_max"] = plants_max - data["animals"] = animals.len - data["animals_max"] = animals_max - data["dna"] = dna.len - data["dna_max"] = dna_max - data["completed"] = completed - data["used"] = TRUE - data["choiceA"] = "" - data["choiceB"] = "" - if(user && completed) - var/list/L = power_lottery[user] - if(L && L.len) - data["used"] = FALSE - data["choiceA"] = L[1] - data["choiceB"] = L[2] - return data - -/obj/machinery/dna_vault/ui_act(action, params) - if(..()) - return - switch(action) - if("gene") - upgrade(usr,params["choice"]) - . = TRUE - -/obj/machinery/dna_vault/proc/check_goal() - if(plants.len >= plants_max && animals.len >= animals_max && dna.len >= dna_max) - completed = TRUE - - -/obj/machinery/dna_vault/attackby(obj/item/I, mob/user, params) - if(istype(I, /obj/item/device/dna_probe)) - var/obj/item/device/dna_probe/P = I - var/uploaded = 0 - for(var/plant in P.plants) - if(!plants[plant]) - uploaded++ - plants[plant] = 1 - for(var/animal in P.animals) - if(!animals[animal]) - uploaded++ - animals[animal] = 1 - for(var/ui in P.dna) - if(!dna[ui]) - uploaded++ - dna[ui] = 1 - check_goal() - user << "[uploaded] new datapoints uploaded." - else - return ..() - - - -/obj/machinery/dna_vault/proc/upgrade(mob/living/carbon/human/H,upgrade_type) - if(!(upgrade_type in power_lottery[H])) - return - var/datum/species/S = H.dna.species - switch(upgrade_type) - if(VAULT_TOXIN) - H << "You feel resistant to airborne toxins." - if(locate(/obj/item/organ/lungs) in H.internal_organs) - var/obj/item/organ/lungs/L = H.internal_organs_slot["lungs"] - L.tox_breath_dam_min = 0 - L.tox_breath_dam_max = 0 - S.species_traits |= VIRUSIMMUNE - if(VAULT_NOBREATH) - H << "Your lungs feel great." - S.species_traits |= NOBREATH - if(VAULT_FIREPROOF) - H << "Your feel fireproof." - S.burnmod = 0.5 - S.heatmod = 0 - if(VAULT_STUNTIME) - H << "Nothing can keep you down for long." - S.stunmod = 0.5 - if(VAULT_ARMOUR) - H << "Your feel tough." - S.armor = 30 - power_lottery[H] = list() \ No newline at end of file diff --git a/code/modules/station_goals/shield.dm b/code/modules/station_goals/shield.dm deleted file mode 100644 index b82ee24952..0000000000 --- a/code/modules/station_goals/shield.dm +++ /dev/null @@ -1,181 +0,0 @@ -//Station Shield -// A chain of satellites encircles the station -// Satellites be actived to generate a shield that will block unorganic matter from passing it. -/datum/station_goal/station_shield - name = "Station Shield" - var/coverage_goal = 500 - -/datum/station_goal/station_shield/get_report() - return {"The station is located in a zone full of space debris. - We have a prototype shielding system you will deploy to reduce collision related accidents. - - You can order the satellites and control systems through cargo shuttle. - "} - - -/datum/station_goal/station_shield/on_report() - //Unlock - var/datum/supply_pack/P = SSshuttle.supply_packs[/datum/supply_pack/misc/shield_sat] - P.special_enabled = TRUE - - P = SSshuttle.supply_packs[/datum/supply_pack/misc/shield_sat_control] - P.special_enabled = TRUE - -/datum/station_goal/station_shield/check_completion() - if(..()) - return TRUE - if(get_coverage() >= coverage_goal) - return TRUE - return FALSE - -/datum/station_goal/proc/get_coverage() - var/list/coverage = list() - for(var/obj/machinery/satellite/meteor_shield/A in machines) - if(!A.active || A.z != ZLEVEL_STATION) - continue - coverage |= view(A.kill_range,A) - return coverage.len - -/obj/item/weapon/circuitboard/machine/computer/sat_control - name = "circuit board (Satellite Network Control)" - build_path = /obj/machinery/computer/sat_control - origin_tech = "engineering=3" - -/obj/machinery/computer/sat_control - name = "Satellite control" - desc = "Used to control the satellite network." - circuit = /obj/item/weapon/circuitboard/machine/computer/sat_control - var/notice - -/obj/machinery/computer/sat_control/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = 0, \ - datum/tgui/master_ui = null, datum/ui_state/state = physical_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) - if(!ui) - ui = new(user, src, ui_key, "sat_control", name, 400, 305, master_ui, state) - ui.open() - -/obj/machinery/computer/sat_control/ui_act(action, params) - if(..()) - return - switch(action) - if("toggle") - toggle(text2num(params["id"])) - . = TRUE - -/obj/machinery/computer/sat_control/proc/toggle(id) - for(var/obj/machinery/satellite/S in machines) - if(S.id == id && S.z == z) - S.toggle() - -/obj/machinery/computer/sat_control/ui_data() - var/list/data = list() - - data["satellites"] = list() - for(var/obj/machinery/satellite/S in machines) - data["satellites"] += list(list( - "id" = S.id, - "active" = S.active, - "mode" = S.mode - )) - data["notice"] = notice - - - var/datum/station_goal/station_shield/G = locate() in ticker.mode.station_goals - if(G) - data["meteor_shield"] = 1 - data["meteor_shield_coverage"] = G.get_coverage() - data["meteor_shield_coverage_max"] = G.coverage_goal - return data - - -/obj/machinery/satellite - name = "Defunct Satellite" - desc = "" - icon = 'icons/obj/machines/satellite.dmi' - icon_state = "sat_inactive" - var/mode = "NTPROBEV0.8" - var/active = FALSE - density = 1 - var/static/gid = 0 - var/id = 0 - -/obj/machinery/satellite/New() - ..() - id = gid++ - -/obj/machinery/satellite/interact(mob/user) - toggle(user) - -/obj/machinery/satellite/proc/toggle(mob/user) - if(!active && !isinspace()) - if(user) - user << "You can only active the [src] in space." - return FALSE - if(user) - user << "You [active ? "deactivate": "activate"] the [src]" - active = !active - if(active) - animate(src, pixel_y = 2, time = 10, loop = -1) - anchored = 1 - else - animate(src, pixel_y = 0, time = 10) - anchored = 0 - update_icon() - -/obj/machinery/satellite/update_icon() - icon_state = active ? "sat_active" : "sat_inactive" - -/obj/machinery/satellite/attackby(obj/item/I, mob/user, params) - if(istype(I, /obj/item/device/multitool)) - user << "// NTSAT-[id] // Mode : [active ? "PRIMARY" : "STANDBY"] //[emagged ? "DEBUG_MODE //" : ""]" - else - return ..() - -/obj/machinery/satellite/meteor_shield - name = "Meteor Shield Satellite" - desc = "Meteor Point Defense Satellite" - mode = "M-SHIELD" - var/kill_range = 10 - -/obj/machinery/satellite/meteor_shield/proc/space_los(meteor) - for(var/turf/T in getline(src,meteor)) - if(!isspaceturf(T)) - return FALSE - return TRUE - -/obj/machinery/satellite/meteor_shield/process() - if(!active) - return - for(var/obj/effect/meteor/M in meteor_list) - if(M.z != z) - continue - if(get_dist(M,src) > kill_range) - continue - if(!emagged && space_los(M)) - Beam(get_turf(M),icon_state="sat_beam",time=5,maxdistance=kill_range) - qdel(M) - -/obj/machinery/satellite/meteor_shield/toggle(user) - if(!..(user)) - return FALSE - if(emagged) - if(active) - change_meteor_chance(2) - else - change_meteor_chance(0.5) - -/obj/machinery/satellite/meteor_shield/proc/change_meteor_chance(mod) - var/datum/round_event_control/E = locate(/datum/round_event_control/meteor_wave) in SSevent.control - if(E) - E.weight *= mod - -/obj/machinery/satellite/meteor_shield/Destroy() - . = ..() - if(active && emagged) - change_meteor_chance(0.5) - -/obj/machinery/satellite/meteor_shield/emag_act() - if(!emagged) - emagged = 1 - if(active) - change_meteor_chance(2) diff --git a/code/modules/station_goals/station_goal.dm b/code/modules/station_goals/station_goal.dm deleted file mode 100644 index daf6ee7dd1..0000000000 --- a/code/modules/station_goals/station_goal.dm +++ /dev/null @@ -1,64 +0,0 @@ -//TODO -// Admin button to override with your own -// Sabotage objective for tators -// Multiple goals with less impact but more department focused - -/datum/station_goal - var/name = "Generic Goal" - var/weight = 1 //In case of multiple goals later. - var/required_crew = 10 - var/list/gamemode_blacklist = list() - var/completed = FALSE - var/report_message = "Complete this goal." - -/datum/station_goal/proc/send_report() - priority_announce("Priority Nanotrasen directive received. Project \"[name]\" details inbound.", "Incoming Priority Message", 'sound/AI/commandreport.ogg') - print_command_report(get_report(),"Nanotrasen Directive [pick(phonetic_alphabet)] \Roman[rand(1,50)]") - on_report() - -/datum/station_goal/proc/on_report() - //Additional unlocks/changes go here - return - -/datum/station_goal/proc/get_report() - return report_message - -/datum/station_goal/proc/check_completion() - return completed - -/datum/station_goal/proc/print_result() - if(check_completion()) - world << "Station Goal : [name] : Completed!" - else - world << "Station Goal : [name] : Failed!" - -/datum/station_goal/Destroy() - ticker.mode.station_goals -= src - . = ..() - -/datum/station_goal/Topic(href, href_list) - ..() - - if(!check_rights(R_ADMIN)) - return - - if(href_list["announce"]) - on_report() - send_report() - else if(href_list["remove"]) - qdel(src) - -/* -//Crew has to create alien intelligence detector -// Requires a lot of minerals -// Dish requires a lot of power -// Needs five? AI's for decoding purposes -/datum/station_goal/seti - name = "SETI Project" - -//Crew Sweep -//Blood samples and special scans of amount of people on roundstart manifest. -//Should keep sec busy. -//Maybe after completion you'll get some ling detecting gear or some station wide DNA scan ? - -*/ \ No newline at end of file diff --git a/code/modules/stock_market/articles.dm b/code/modules/stock_market/articles.dm index 0008b2f5cf..cbf3180f7e 100644 --- a/code/modules/stock_market/articles.dm +++ b/code/modules/stock_market/articles.dm @@ -1,13 +1,13 @@ -/proc/consonant() +proc/consonant() return pick("B","C","D","F","G","H","J","K","L","M","N","P","Q","R","S","T","V","W","X","Y","Z") -/proc/vowel() +proc/vowel() return pick("A", "E", "I", "O", "U") -/proc/ucfirst(var/S) +proc/ucfirst(var/S) return "[uppertext(ascii2text(text2ascii(S, 1)))][copytext(S, 2)]" -/proc/ucfirsts(var/S) +proc/ucfirsts(var/S) var/list/L = splittext(S, " ") var/list/M = list() for (var/P in L) @@ -16,7 +16,7 @@ var/global/list/FrozenAccounts = list() -/proc/list_frozen() +proc/list_frozen() for (var/A in FrozenAccounts) usr << "[A]: [length(FrozenAccounts[A])] borrows" diff --git a/code/modules/stock_market/computer.dm b/code/modules/stock_market/computer.dm index 6c95f3fcea..45125b084c 100644 --- a/code/modules/stock_market/computer.dm +++ b/code/modules/stock_market/computer.dm @@ -7,10 +7,12 @@ var/logged_in = "Cargo Department" var/vmode = 1 clockwork = TRUE //it'd look weird + light_color = LIGHT_COLOR_GREEN + light_range_on = 2 /obj/machinery/computer/stockexchange/New() ..() - logged_in = "[station_name()] Cargo Department" + logged_in = "[world.name] Cargo Department" /obj/machinery/computer/stockexchange/proc/balance() if (!logged_in) @@ -83,6 +85,25 @@ a.updated { dat += "Prominent products:
    " for (var/prod in S.products) dat += "[prod]
    " + dat += "
    Borrow options:
    " + if (S.borrow_brokers.len) + for (var/datum/borrow/B in S.borrow_brokers) + dat += "[B.broker] offers [B.share_amount] shares for borrowing, for a deposit of [B.deposit * 100]% of the shares' value.
    " + dat += "The broker expects the return of the shares after [B.lease_time / 600] minutes, with a grace period of [B.grace_time / 600] minute(s).
    " + dat += "This offer expires in [(B.offer_expires - world.time) / 600] minutes.
    " + dat += "Note: If you do not return all shares by the end of the grace period, you will lose your deposit and the value of all unreturned shares at current value from your account!
    " + dat += "Note: You cannot withdraw or transfer money off your account while a borrow is active.
    " + dat += "Take offer (Estimated deposit: [B.deposit * S.current_value * B.share_amount] credits)

    " + else + dat += "No borrow options available

    " + for (var/datum/borrow/B in S.borrows) + if (B.borrower == logged_in) + dat += "You are borrowing [B.share_amount] shares from [B.broker].
    " + dat += "Your deposit riding on the deal is [B.deposit] credits.
    " + if (world.time < B.lease_expires) + dat += "You are expected to return the borrowed shares in [(B.lease_expires - world.time) / 600] minutes.

    " + else + dat += "The brokering agency is collecting. You still owe them [B.share_debt] shares, which you have [(B.grace_expires - world.time) / 600] minutes to present.

    " var/news = 0 if (logged_in) var/list/LR = stockExchange.last_read[S] @@ -248,7 +269,7 @@ a.updated { usr.machine = src if (href_list["viewhistory"]) - var/datum/stock/S = locate(href_list["viewhistory"]) in stockExchange.stocks + var/datum/stock/S = locate(href_list["viewhistory"]) if (S) S.displayValues(usr) @@ -256,15 +277,20 @@ a.updated { logged_in = null if (href_list["buyshares"]) - var/datum/stock/S = locate(href_list["buyshares"]) in stockExchange.stocks + var/datum/stock/S = locate(href_list["buyshares"]) if (S) buy_some_shares(S, usr) if (href_list["sellshares"]) - var/datum/stock/S = locate(href_list["sellshares"]) in stockExchange.stocks + var/datum/stock/S = locate(href_list["sellshares"]) if (S) sell_some_shares(S, usr) + if (href_list["take"]) + var/datum/borrow/B = locate(href_list["take"]) + if (B && !B.lease_expires) + do_borrowing_deal(B, usr) + if (href_list["show_logs"]) var/dat = "Stock Transaction Logs

    Stock Transaction Logs


    " for(var/D in stockExchange.logs) diff --git a/code/modules/stock_market/events.dm b/code/modules/stock_market/events.dm index 72f9858ea3..1e34fddf03 100644 --- a/code/modules/stock_market/events.dm +++ b/code/modules/stock_market/events.dm @@ -165,7 +165,7 @@ "public indecency", "public intoxication", "trespassing", "loitering", "littering", "vigilantism", "squatting", "panhandling", "arson", "spacepodjacking", "shuttlejacking", "carjacking", "singularityjacking", "dereliction of duty", "spacecraft piracy", "music piracy", "tabletop game piracy", "software piracy", "escaping from space prison", "seniornapping", "clownnapping", "corginapping", "catnapping", "sleeping on the job", "terrorism", "counterterrorism", "drug distribution", "insubordination", "jaywalking", "owning a computer", "owning a cellphone", "owning a PDA", "owning a pAI", "adultery", - "committing an unnatural act with another person", "corrupting public morals", "skateboarding without a license", "shitcurity", "bestiality", "erotic roleplay", "accidentally strangling a prostitute") + "committing an unnatural act with another person", "corrupting public morals", "skateboarding without a license", "shitcurity", "bestiality", "erotic roleplay") while (prob(60) && O.len > 2) var/offense = pick(O) O -= offense @@ -225,4 +225,4 @@ else article += "[tname] has a prior history of similar misdeeds and we're confident the charges will stand. For investors, now would be an ideal time to %sell%" A.article = A.detokenize(article, company.industry.tokens) - return A + return A \ No newline at end of file diff --git a/code/modules/stock_market/stocks.dm b/code/modules/stock_market/stocks.dm index 9969136ec5..6a6b6600d9 100644 --- a/code/modules/stock_market/stocks.dm +++ b/code/modules/stock_market/stocks.dm @@ -90,7 +90,7 @@ /datum/stock/proc/frc(amt) var/shares = available_shares + outside_shareholders * average_shares var/fr = amt / 100 / shares * fluctuational_coefficient * fluctuation_rate * max(-(current_trend / 100), 1) - if ((fr < 0 && speculation < 0) || (fr > 0 && speculation > 0)) + if (fr < 0 && speculation < 0 || fr > 0 && speculation > 0) fr *= max(abs(speculation) / 5, 1) else fr /= max(abs(speculation) / 5, 1) @@ -139,11 +139,8 @@ speculation += rand(-400, 0) / 1000 * speculation if (prob(1) && prob(5)) // pop that bubble speculation += rand(-4000, 0) / 1000 * speculation - var/fucking_stock_spikes = current_value + 500 - var/piece_of_shit_fuck = current_value - 500 - var/i_hate_this_code = (speculation / rand(25000, 50000) + performance / rand(100, 800)) * current_value - if(i_hate_this_code < fucking_stock_spikes || i_hate_this_code > piece_of_shit_fuck) - current_value += i_hate_this_code + + current_value += (speculation / rand(25000, 50000) + performance / rand(100, 800)) * current_value if (current_value < 5) current_value = 5 @@ -309,4 +306,4 @@ return 0 /datum/stock/proc/displayValues(var/mob/user) - user << browse(plotBarGraph(values, "[name] share value per share"), "window=stock_[name];size=450x450") + user << browse(plotBarGraph(values, "[name] share value per share"), "window=stock_[name];size=450x450") \ No newline at end of file diff --git a/code/modules/surgery/amputation.dm b/code/modules/surgery/amputation.dm index 2ebe45f2d3..1e13586eea 100644 --- a/code/modules/surgery/amputation.dm +++ b/code/modules/surgery/amputation.dm @@ -2,10 +2,8 @@ /datum/surgery/amputation name = "amputation" steps = list(/datum/surgery_step/incise, /datum/surgery_step/clamp_bleeders, /datum/surgery_step/retract_skin, /datum/surgery_step/saw, /datum/surgery_step/clamp_bleeders, /datum/surgery_step/sever_limb) - species = list(/mob/living/carbon/human, /mob/living/carbon/monkey) + species = list(/mob/living/carbon/human) possible_locs = list("r_arm", "l_arm", "l_leg", "r_leg", "head") - requires_organic_bodypart = 0 - /datum/surgery_step/sever_limb name = "sever limb" @@ -18,6 +16,7 @@ /datum/surgery_step/sever_limb/success(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery) var/mob/living/carbon/human/L = target user.visible_message("[user] severs [L]'s [parse_zone(target_zone)]!", "You sever [L]'s [parse_zone(target_zone)].") - if(surgery.operated_bodypart) - surgery.operated_bodypart.drop_limb() + var/obj/item/bodypart/BP = L.get_bodypart(target_zone) + if(BP) + BP.drop_limb() return 1 \ No newline at end of file diff --git a/code/modules/surgery/bodyparts/bodyparts.dm b/code/modules/surgery/bodyparts/bodyparts.dm index d8a132363c..8194bcc4a7 100644 --- a/code/modules/surgery/bodyparts/bodyparts.dm +++ b/code/modules/surgery/bodyparts/bodyparts.dm @@ -4,22 +4,17 @@ desc = "why is it detached..." force = 3 throwforce = 3 - icon = 'icons/mob/human_parts.dmi' icon_state = "" - layer = BELOW_MOB_LAYER //so it isn't hidden behind objects when on the floor - var/mob/living/carbon/owner = null - var/mob/living/carbon/original_owner = null - var/status = BODYPART_ORGANIC + var/mob/living/carbon/human/owner = null + var/status = ORGAN_ORGANIC var/body_zone //"chest", "l_arm", etc , used for def_zone var/body_part = null //bitflag used to check which clothes cover this bodypart - var/use_digitigrade = NOT_DIGITIGRADE //Used for alternate legs, useless elsewhere var/brutestate = 0 var/burnstate = 0 var/brute_dam = 0 var/burn_dam = 0 var/max_damage = 0 var/list/embedded_objects = list() - var/held_index = 0 //are we a hand? if so, which one! //Coloring and proper item icon update var/skin_tone = "" @@ -31,14 +26,10 @@ var/mutation_color = "" var/no_update = 0 - var/animal_origin = null //for nonhuman bodypart (e.g. monkey) - var/dismemberable = 1 //whether it can be dismembered with a weapon. - var/px_x = 0 var/px_y = 0 - var/species_flags_list = list() - var/dmg_overlay_type //the type of damage overlay (if any) to use when this bodypart is bruised/burned. + var/state_flags /obj/item/bodypart/examine(mob/user) ..() @@ -47,8 +38,6 @@ if(burn_dam > 0) user << "This limb has [burn_dam > 30 ? "severe" : "minor"] burns." -/obj/item/bodypart/blob_act() - take_damage(max_damage) /obj/item/bodypart/Destroy() if(owner) @@ -59,10 +48,10 @@ /obj/item/bodypart/attack(mob/living/carbon/C, mob/user) if(ishuman(C)) var/mob/living/carbon/human/H = C - if(EASYLIMBATTACHMENT in H.dna.species.species_traits) - if(!H.get_bodypart(body_zone) && !animal_origin) + if(EASYLIMBATTACHMENT in H.dna.species.specflags) + if(!H.get_bodypart(body_zone)) if(H == user) - H.visible_message("[H] jams [src] into [H.p_their()] empty socket!",\ + H.visible_message("[H] jams [src] into \his empty socket!",\ "You force [src] into your empty socket, and it locks into place!") else H.visible_message("[user] jams [src] into [H]'s empty socket!",\ @@ -79,8 +68,8 @@ user << "There is nothing left inside [src]!" return playsound(loc, 'sound/weapons/slice.ogg', 50, 1, -1) - user.visible_message("[user] begins to cut open [src].",\ - "You begin to cut open [src]...") + user.visible_message("[user] begins to cut through the bone in [src].",\ + "You begin to cut through the bone in [src]...") if(do_after(user, 54, target = src)) drop_organs(user) else @@ -88,30 +77,25 @@ /obj/item/bodypart/throw_impact(atom/hit_atom) ..() - if(status != BODYPART_ROBOTIC) - playsound(get_turf(src), 'sound/misc/splort.ogg', 50, 1, -1) - pixel_x = rand(-3, 3) - pixel_y = rand(-3, 3) + playsound(get_turf(src), 'sound/misc/splort.ogg', 50, 1, -1) -//empties the bodypart from its organs and other things inside it /obj/item/bodypart/proc/drop_organs(mob/user) var/turf/T = get_turf(src) - if(status != BODYPART_ROBOTIC) - playsound(T, 'sound/misc/splort.ogg', 50, 1, -1) + playsound(T, 'sound/misc/splort.ogg', 50, 1, -1) for(var/obj/item/I in src) - I.forceMove(T) + I.loc = T //Applies brute and burn damage to the organ. Returns 1 if the damage-icon states changed at all. //Damage will not exceed max_damage using this proc //Cannot apply negative damage -/obj/item/bodypart/proc/receive_damage(brute, burn, updating_health = 1) +/obj/item/bodypart/proc/take_damage(brute, burn) if(owner && (owner.status_flags & GODMODE)) return 0 //godmode - brute = max(brute * config.damage_multiplier,0) - burn = max(burn * config.damage_multiplier,0) + brute = max(brute,0) + burn = max(burn,0) - if(status == BODYPART_ROBOTIC) //This makes robolimbs not damageable by chems and makes it stronger + if(status == ORGAN_ROBOTIC) //This makes robolimbs not damageable by chems and makes it stronger brute = max(0, brute - 5) burn = max(0, burn - 4) @@ -136,7 +120,7 @@ burn_dam += can_inflict else return 0 - if(owner && updating_health) + if(owner) owner.updatehealth() return update_bodypart_damage_state() @@ -144,17 +128,17 @@ //Heals brute and burn damage for the organ. Returns 1 if the damage-icon states changed at all. //Damage cannot go below zero. //Cannot remove negative damage (i.e. apply damage) -/obj/item/bodypart/proc/heal_damage(brute, burn, only_robotic = 0, only_organic = 1, updating_health = 1) +/obj/item/bodypart/proc/heal_damage(brute, burn, robotic) - if(only_robotic && status != BODYPART_ROBOTIC) //This makes organic limbs not heal when the proc is in Robotic mode. + if(robotic && status != ORGAN_ROBOTIC) //This makes organic limbs not heal when the proc is in Robotic mode. return - if(only_organic && status != BODYPART_ORGANIC) //This makes robolimbs not healable by chems. + if(!robotic && status == ORGAN_ROBOTIC) //This makes robolimbs not healable by chems. return brute_dam = max(brute_dam - brute, 0) burn_dam = max(burn_dam - burn, 0) - if(owner && updating_health) + if(owner) owner.updatehealth() return update_bodypart_damage_state() @@ -167,13 +151,14 @@ //Updates an organ's brute/burn states for use by update_damage_overlays() //Returns 1 if we need to update overlays. 0 otherwise. /obj/item/bodypart/proc/update_bodypart_damage_state() - var/tbrute = round( (brute_dam/max_damage)*3, 1 ) - var/tburn = round( (burn_dam/max_damage)*3, 1 ) - if((tbrute != brutestate) || (tburn != burnstate)) - brutestate = tbrute - burnstate = tburn - return 1 - return 0 + if(status == ORGAN_ORGANIC) //Robotic limbs show no damage - RR + var/tbrute = round( (brute_dam/max_damage)*3, 1 ) + var/tburn = round( (burn_dam/max_damage)*3, 1 ) + if((tbrute != brutestate) || (tburn != burnstate)) + brutestate = tbrute + burnstate = tburn + return 1 + return 0 @@ -192,66 +177,47 @@ owner.update_damage_overlays() //we inform the bodypart of the changes that happened to the owner, or give it the informations from a source mob. -/obj/item/bodypart/proc/update_limb(dropping_limb, mob/living/carbon/source) - var/mob/living/carbon/C +/obj/item/bodypart/proc/update_limb(dropping_limb, mob/living/carbon/human/source) + var/mob/living/carbon/human/H if(source) - C = source - if(!original_owner) - original_owner = source - else if(original_owner && owner != original_owner) //Foreign limb - no_update = 1 + H = source else - C = owner - no_update = 0 - - if(C.disabilities & HUSK) - species_id = "husk" //overrides species_id - dmg_overlay_type = "" //no damage overlay shown when husked - should_draw_gender = FALSE - should_draw_greyscale = FALSE - no_update = 1 - - if(no_update) + H = owner + if(!istype(H)) return - if(!animal_origin) - var/mob/living/carbon/human/H = C + should_draw_greyscale = FALSE + + var/datum/species/S = H.dna.species + species_id = S.limbs_id + + if(S.use_skintones) + skin_tone = H.skin_tone + should_draw_greyscale = TRUE + else + skin_tone = "" + + body_gender = H.gender + should_draw_gender = S.sexes + + if(MUTCOLORS in S.specflags) + if(S.fixed_mut_color) + species_color = S.fixed_mut_color + else + species_color = H.dna.features["mcolor"] + should_draw_greyscale = TRUE + else + species_color = "" + + if(H.disabilities & HUSK) + species_id = "husk" + should_draw_gender = FALSE should_draw_greyscale = FALSE - var/datum/species/S = H.dna.species - species_id = S.limbs_id - species_flags_list = H.dna.species.species_traits - - if(S.use_skintones) - skin_tone = H.skin_tone - should_draw_greyscale = TRUE - else - skin_tone = "" - - body_gender = H.gender - should_draw_gender = S.sexes - - if(MUTCOLORS in S.species_traits) - if(S.fixed_mut_color) - species_color = S.fixed_mut_color - else - species_color = H.dna.features["mcolor"] - should_draw_greyscale = TRUE - else - species_color = "" - - if(!dropping_limb && H.dna.check_mutation(HULK)) - mutation_color = "00aa00" - else - mutation_color = "" - - dmg_overlay_type = S.damage_overlay_type - - else if(animal_origin == MONKEY_BODYPART) //currently monkeys are the only non human mob to have damage overlays. - dmg_overlay_type = animal_origin - - if(status == BODYPART_ROBOTIC) - dmg_overlay_type = "robotic" + if(!dropping_limb && H.dna.check_mutation(HULK)) + mutation_color = "00aa00" + else + mutation_color = "" if(dropping_limb) no_update = 1 //when attached, the limb won't be affected by the appearance changes of its mob owner. @@ -259,54 +225,28 @@ //to update the bodypart's icon when not attached to a mob /obj/item/bodypart/proc/update_icon_dropped() cut_overlays() - var/list/standing = get_limb_icon(1) - if(!standing.len) - icon_state = initial(icon_state)//no overlays found, we default back to initial icon. - return - for(var/image/I in standing) + var/image/I = get_limb_icon(1) + if(I) I.pixel_x = px_x I.pixel_y = px_y - add_overlay(standing) + add_overlay(I) //Gives you a proper icon appearance for the dismembered limb /obj/item/bodypart/proc/get_limb_icon(dropped) - icon_state = "" //to erase the default sprite, we're building the visual aspects of the bodypart through overlays alone. - - var/list/standing = list() - - var/image_dir - if(dropped) - image_dir = SOUTH - if(dmg_overlay_type) - if(brutestate) - standing += image("icon"='icons/mob/dam_mob.dmi', "icon_state"="[dmg_overlay_type]_[body_zone]_[brutestate]0", "layer"=-DAMAGE_LAYER, "dir"=image_dir) - if(burnstate) - standing += image("icon"='icons/mob/dam_mob.dmi', "icon_state"="[dmg_overlay_type]_[body_zone]_0[burnstate]", "layer"=-DAMAGE_LAYER, "dir"=image_dir) - - - if(animal_origin) - if(status == BODYPART_ORGANIC) - if(species_id == "husk") - standing += image("icon"='icons/mob/animal_parts.dmi', "icon_state"="[animal_origin]_husk_[body_zone]_s", "layer"=-BODYPARTS_LAYER, "dir"=image_dir) - else - standing += image("icon"='icons/mob/animal_parts.dmi', "icon_state"="[animal_origin]_[body_zone]_s", "layer"=-BODYPARTS_LAYER, "dir"=image_dir) - else - standing += image("icon"='icons/mob/augments.dmi', "icon_state"="[animal_origin]_[body_zone]_s", "layer"=-BODYPARTS_LAYER, "dir"=image_dir) - return standing + var/image/I var/icon_gender = (body_gender == FEMALE) ? "f" : "m" //gender of the icon, if applicable if((body_zone != "head" && body_zone != "chest")) should_draw_gender = FALSE - var/image/I - - if(status == BODYPART_ORGANIC) + var/image_dir + if(dropped) + image_dir = SOUTH + if(status == ORGAN_ORGANIC) if(should_draw_greyscale) if(should_draw_gender) I = image("icon"='icons/mob/human_parts_greyscale.dmi', "icon_state"="[species_id]_[body_zone]_[icon_gender]_s", "layer"=-BODYPARTS_LAYER, "dir"=image_dir) - else if(use_digitigrade) - I = image("icon"='icons/mob/human_parts_greyscale.dmi', "icon_state"="digitigrade_[use_digitigrade]_[body_zone]_s", "layer"=-BODYPARTS_LAYER, "dir"=image_dir) else I = image("icon"='icons/mob/human_parts_greyscale.dmi', "icon_state"="[species_id]_[body_zone]_s", "layer"=-BODYPARTS_LAYER, "dir"=image_dir) else @@ -319,13 +259,11 @@ I = image("icon"='icons/mob/augments.dmi', "icon_state"="[body_zone]_[icon_gender]_s", "layer"=-BODYPARTS_LAYER, "dir"=image_dir) else I = image("icon"='icons/mob/augments.dmi', "icon_state"="[body_zone]_s", "layer"=-BODYPARTS_LAYER, "dir"=image_dir) - standing += I - return standing + return I if(!should_draw_greyscale) - standing += I - return standing + return I //Greyscale Colouring var/draw_color @@ -340,20 +278,14 @@ if(draw_color) I.color = "#[draw_color]" //End Greyscale Colouring - standing += I - return standing + return I -/obj/item/bodypart/deconstruct(disassembled = TRUE) - drop_organs() - qdel(src) - /obj/item/bodypart/chest name = "chest" desc = "It's impolite to stare at a person's chest." - icon_state = "default_human_chest" max_damage = 200 body_zone = "chest" body_part = CHEST @@ -366,111 +298,34 @@ qdel(cavity_item) return ..() -/obj/item/bodypart/chest/drop_organs(mob/user) - if(cavity_item) - cavity_item.forceMove(user.loc) - cavity_item = null - ..() - -/obj/item/bodypart/chest/monkey - icon = 'icons/mob/animal_parts.dmi' - icon_state = "default_monkey_chest" - animal_origin = MONKEY_BODYPART - -/obj/item/bodypart/chest/alien - icon = 'icons/mob/animal_parts.dmi' - icon_state = "alien_chest_s" - dismemberable = 0 - max_damage = 500 - animal_origin = ALIEN_BODYPART - -/obj/item/bodypart/chest/devil - dismemberable = 0 - max_damage = 5000 - animal_origin = DEVIL_BODYPART - -/obj/item/bodypart/chest/larva - icon = 'icons/mob/animal_parts.dmi' - icon_state = "larva_chest_s" - dismemberable = 0 - max_damage = 50 - animal_origin = LARVA_BODYPART - /obj/item/bodypart/l_arm name = "left arm" desc = "Did you know that the word 'sinister' stems originally from the \ Latin 'sinestra' (left hand), because the left hand was supposed to \ be possessed by the devil? This arm appears to be possessed by no \ one though." - icon_state = "default_human_l_arm" attack_verb = list("slapped", "punched") max_damage = 50 body_zone ="l_arm" body_part = ARM_LEFT - held_index = 1 px_x = -6 px_y = 0 -/obj/item/bodypart/l_arm/monkey - icon = 'icons/mob/animal_parts.dmi' - icon_state = "default_monkey_l_arm" - animal_origin = MONKEY_BODYPART - px_x = -5 - px_y = -3 - -/obj/item/bodypart/l_arm/alien - icon = 'icons/mob/animal_parts.dmi' - icon_state = "alien_l_arm_s" - px_x = 0 - px_y = 0 - dismemberable = 0 - max_damage = 100 - animal_origin = ALIEN_BODYPART - -/obj/item/bodypart/l_arm/devil - dismemberable = 0 - max_damage = 5000 - animal_origin = DEVIL_BODYPART - /obj/item/bodypart/r_arm name = "right arm" desc = "Over 87% of humans are right handed. That figure is much lower \ among humans missing their right arm." - icon_state = "default_human_r_arm" attack_verb = list("slapped", "punched") max_damage = 50 body_zone = "r_arm" body_part = ARM_RIGHT - held_index = 2 px_x = 6 px_y = 0 -/obj/item/bodypart/r_arm/monkey - icon = 'icons/mob/animal_parts.dmi' - icon_state = "default_monkey_r_arm" - animal_origin = MONKEY_BODYPART - px_x = 5 - px_y = -3 - -/obj/item/bodypart/r_arm/alien - icon = 'icons/mob/animal_parts.dmi' - icon_state = "alien_r_arm_s" - px_x = 0 - px_y = 0 - dismemberable = 0 - max_damage = 100 - animal_origin = ALIEN_BODYPART - -/obj/item/bodypart/r_arm/devil - dismemberable = 0 - max_damage = 5000 - animal_origin = DEVIL_BODYPART - /obj/item/bodypart/l_leg name = "left leg" desc = "Some athletes prefer to tie their left shoelaces first for good \ luck. In this instance, it probably would not have helped." - icon_state = "default_human_l_leg" attack_verb = list("kicked", "stomped") max_damage = 50 body_zone = "l_leg" @@ -478,37 +333,12 @@ px_x = -2 px_y = 12 -/obj/item/bodypart/l_leg/digitigrade - name = "left digitigrade leg" - use_digitigrade = FULL_DIGITIGRADE - -/obj/item/bodypart/l_leg/monkey - icon = 'icons/mob/animal_parts.dmi' - icon_state = "default_monkey_l_leg" - animal_origin = MONKEY_BODYPART - px_y = 4 - -/obj/item/bodypart/l_leg/alien - icon = 'icons/mob/animal_parts.dmi' - icon_state = "alien_l_leg_s" - px_x = 0 - px_y = 0 - dismemberable = 0 - max_damage = 100 - animal_origin = ALIEN_BODYPART - -/obj/item/bodypart/l_leg/devil - dismemberable = 0 - max_damage = 5000 - animal_origin = DEVIL_BODYPART - /obj/item/bodypart/r_leg name = "right leg" desc = "You put your right leg in, your right leg out. In, out, in, out, \ shake it all about. And apparently then it detaches.\n\ The hokey pokey has certainly changed a lot since space colonisation." // alternative spellings of 'pokey' are availible - icon_state = "default_human_r_leg" attack_verb = list("kicked", "stomped") max_damage = 50 body_zone = "r_leg" @@ -516,30 +346,6 @@ px_x = 2 px_y = 12 -/obj/item/bodypart/r_leg/digitigrade - name = "right digitigrade leg" - use_digitigrade = FULL_DIGITIGRADE - -/obj/item/bodypart/r_leg/monkey - icon = 'icons/mob/animal_parts.dmi' - icon_state = "default_monkey_r_leg" - animal_origin = MONKEY_BODYPART - px_y = 4 - -/obj/item/bodypart/r_leg/alien - icon = 'icons/mob/animal_parts.dmi' - icon_state = "alien_r_leg_s" - px_x = 0 - px_y = 0 - dismemberable = 0 - max_damage = 100 - animal_origin = ALIEN_BODYPART - -/obj/item/bodypart/r_leg/devil - dismemberable = 0 - max_damage = 5000 - animal_origin = DEVIL_BODYPART - ///////////////////////////////////////////////////////////////////////// diff --git a/code/modules/surgery/bodyparts/dismemberment.dm b/code/modules/surgery/bodyparts/dismemberment.dm index 781d9aaf5c..5d2e56971d 100644 --- a/code/modules/surgery/bodyparts/dismemberment.dm +++ b/code/modules/surgery/bodyparts/dismemberment.dm @@ -1,33 +1,26 @@ /obj/item/bodypart/proc/can_dismember(obj/item/I) - if(dismemberable) - . = (get_damage() >= (max_damage - I.armour_penetration/2)) + . = (get_damage() >= (max_damage - I.armour_penetration/2)) //Dismember a limb /obj/item/bodypart/proc/dismember(dam_type = BRUTE) - if(!owner) + var/mob/living/carbon/human/H = owner + if(!istype(H) || (NODISMEMBER in H.dna.species.specflags)) // species don't allow dismemberment return 0 - var/mob/living/carbon/C = owner - if(!dismemberable) - return 0 - if(ishuman(C)) - var/mob/living/carbon/human/H = C - if(NODISMEMBER in H.dna.species.species_traits) // species don't allow dismemberment - return 0 - var/obj/item/bodypart/affecting = C.get_bodypart("chest") - affecting.receive_damage(Clamp(brute_dam/2, 15, 50), Clamp(burn_dam/2, 0, 50)) //Damage the chest based on limb's existing damage - C.visible_message("[C]'s [src.name] has been violently dismembered!") - C.emote("scream") + var/obj/item/bodypart/affecting = H.get_bodypart("chest") + affecting.take_damage(Clamp(brute_dam/2, 15, 50), Clamp(burn_dam/2, 0, 50)) //Damage the chest based on limb's existing damage + H.visible_message("[H]'s [src.name] has been violently dismembered!") + H.emote("scream") drop_limb() if(dam_type == BURN) burn() return 1 - add_mob_blood(C) - var/turf/location = C.loc + add_mob_blood(H) + var/turf/location = H.loc if(istype(location)) - C.add_splatter_floor(location) + H.add_splatter_floor(location) var/direction = pick(cardinal) var/t_range = rand(2,max(throw_range/2, 2)) var/turf/target_turf = get_turf(src) @@ -41,99 +34,88 @@ /obj/item/bodypart/chest/dismember() - if(!owner) + var/mob/living/carbon/human/H = owner + if(!istype(H) || (NODISMEMBER in H.dna.species.specflags)) //human's species don't allow dismemberment return 0 - var/mob/living/carbon/C = owner - if(!dismemberable) - return 0 - if(ishuman(C)) - var/mob/living/carbon/human/H = C - if(NODISMEMBER in H.dna.species.species_traits) // species don't allow dismemberment - return 0 var/organ_spilled = 0 - var/turf/T = get_turf(C) - C.add_splatter_floor(T) - playsound(get_turf(C), 'sound/misc/splort.ogg', 80, 1) - for(var/X in C.internal_organs) + var/turf/T = get_turf(H) + H.add_splatter_floor(T) + playsound(get_turf(owner), 'sound/misc/splort.ogg', 80, 1) + for(var/X in owner.internal_organs) var/obj/item/organ/O = X - var/org_zone = check_zone(O.zone) - if(org_zone != "chest") + if(O.zone != "chest") continue - O.Remove(C) - O.forceMove(T) + O.Remove(owner) + O.loc = T organ_spilled = 1 if(cavity_item) - cavity_item.forceMove(T) + cavity_item.loc = T cavity_item = null organ_spilled = 1 if(organ_spilled) - C.visible_message("[C]'s internal organs spill out onto the floor!") + owner.visible_message("[owner]'s internal organs spill out onto the floor!") return 1 //limb removal. The "special" argument is used for swapping a limb with a new one without the effects of losing a limb kicking in. /obj/item/bodypart/proc/drop_limb(special) - if(!owner) + if(!ishuman(owner)) return var/turf/T = get_turf(owner) - var/mob/living/carbon/C = owner - update_limb(1) - C.bodyparts -= src - if(held_index) - C.unEquip(owner.get_item_for_held_index(held_index), 1) - C.hand_bodyparts[held_index] = null - + var/mob/living/carbon/human/H = owner + if(!no_update) + update_limb(1) + H.bodyparts -= src owner = null - for(var/X in C.surgeries) //if we had an ongoing surgery on that limb, we stop it. + for(var/X in H.surgeries) //if we had an ongoing surgery on that limb, we stop it. var/datum/surgery/S = X - if(S.operated_bodypart == src) - C.surgeries -= S + if(S.organ == src) + H.surgeries -= S qdel(S) break for(var/obj/item/I in embedded_objects) embedded_objects -= I I.loc = src - if(!C.has_embedded_objects()) - C.clear_alert("embeddedobject") + if(!H.has_embedded_objects()) + H.clear_alert("embeddedobject") if(!special) - if(C.dna) - for(var/X in C.dna.mutations) //some mutations require having specific limbs to be kept. - var/datum/mutation/human/MT = X - if(MT.limb_req && MT.limb_req == body_zone) - MT.force_lose(C) + for(var/X in H.dna.mutations) //some mutations require having specific limbs to be kept. + var/datum/mutation/human/MT = X + if(MT.limb_req && MT.limb_req == body_zone) + MT.force_lose(H) - for(var/X in C.internal_organs) //internal organs inside the dismembered limb are dropped. + for(var/X in H.internal_organs) //internal organs inside the dismembered limb are dropped. var/obj/item/organ/O = X var/org_zone = check_zone(O.zone) if(org_zone != body_zone) continue - O.transfer_to_limb(src, C) + O.transfer_to_limb(src, H) update_icon_dropped() - forceMove(T) - C.update_health_hud() //update the healthdoll - C.update_body() - C.update_hair() - C.update_canmove() + src.loc = T + H.update_health_hud() //update the healthdoll + H.update_body() + H.update_hair() + H.update_canmove() //when a limb is dropped, the internal organs are removed from the mob and put into the limb -/obj/item/organ/proc/transfer_to_limb(obj/item/bodypart/LB, mob/living/carbon/C) - Remove(C) +/obj/item/organ/proc/transfer_to_limb(obj/item/bodypart/LB, mob/living/carbon/human/H) + Remove(H) loc = LB -/obj/item/organ/brain/transfer_to_limb(obj/item/bodypart/head/LB, mob/living/carbon/human/C) - if(C.mind && C.mind.changeling) +/obj/item/organ/brain/transfer_to_limb(obj/item/bodypart/head/LB, mob/living/carbon/human/H) + if(H.mind && H.mind.changeling) LB.brain = new //changeling doesn't lose its real brain organ, we drop a decoy. LB.brain.loc = LB else //if not a changeling, we put the brain organ inside the dropped head - Remove(C) //and put the player in control of the brainmob + Remove(H) //and put the player in control of the brainmob loc = LB LB.brain = src LB.brainmob = brainmob @@ -147,39 +129,43 @@ return /obj/item/bodypart/r_arm/drop_limb(special) - var/mob/living/carbon/C = owner + var/mob/living/carbon/human/H = owner ..() - if(C && !special) - if(C.handcuffed) - C.handcuffed.loc = C.loc - C.handcuffed.dropped(C) - C.handcuffed = null - C.update_handcuffed() - if(C.hud_used) - var/obj/screen/inventory/hand/R = C.hud_used.hand_slots["[held_index]"] + if(istype(H) && !special) + if(H.handcuffed) + H.handcuffed.loc = H.loc + H.handcuffed.dropped(H) + H.handcuffed = null + H.update_handcuffed() + if(H.hud_used) + var/obj/screen/inventory/R = H.hud_used.inv_slots[slot_r_hand] if(R) R.update_icon() - if(C.gloves) - C.unEquip(C.gloves, 1) - C.update_inv_gloves() //to remove the bloody hands overlay + if(H.r_hand) + H.unEquip(H.r_hand, 1) + if(H.gloves) + H.unEquip(H.gloves, 1) + H.update_inv_gloves() //to remove the bloody hands overlay /obj/item/bodypart/l_arm/drop_limb(special) - var/mob/living/carbon/C = owner + var/mob/living/carbon/human/H = owner ..() - if(C && !special) - if(C.handcuffed) - C.handcuffed.loc = C.loc - C.handcuffed.dropped(C) - C.handcuffed = null - C.update_handcuffed() - if(C.hud_used) - var/obj/screen/inventory/hand/L = C.hud_used.hand_slots["[held_index]"] + if(istype(H) && !special) + if(H.handcuffed) + H.handcuffed.loc = H.loc + H.handcuffed.dropped(H) + H.handcuffed = null + H.update_handcuffed() + if(H.hud_used) + var/obj/screen/inventory/L = H.hud_used.inv_slots[slot_l_hand] if(L) L.update_icon() - if(C.gloves) - C.unEquip(C.gloves, 1) - C.update_inv_gloves() //to remove the bloody hands overlay + if(H.l_hand) + H.unEquip(H.l_hand, 1) + if(H.gloves) + H.unEquip(H.gloves, 1) + H.update_inv_gloves() //to remove the bloody hands overlay /obj/item/bodypart/r_leg/drop_limb(special) @@ -190,8 +176,10 @@ owner.legcuffed.dropped(owner) owner.legcuffed = null owner.update_inv_legcuffed() - if(owner.shoes) - owner.unEquip(owner.shoes, 1) + if(ishuman(owner)) + var/mob/living/carbon/human/H = owner + if(H.shoes) + H.unEquip(H.shoes, 1) ..() /obj/item/bodypart/l_leg/drop_limb(special) //copypasta @@ -202,17 +190,21 @@ owner.legcuffed.dropped(owner) owner.legcuffed = null owner.update_inv_legcuffed() - if(owner.shoes) - owner.unEquip(owner.shoes, 1) + if(ishuman(owner)) + var/mob/living/carbon/human/H = owner + if(H.shoes) + H.unEquip(H.shoes, 1) ..() /obj/item/bodypart/head/drop_limb(special) - if(!special) - //Drop all worn head items - for(var/X in list(owner.glasses, owner.ears, owner.wear_mask, owner.head)) - var/obj/item/I = X - owner.unEquip(I, 1) - name = "[owner]'s head" + var/mob/living/carbon/human/H = owner + if(istype(H)) + if(!special) + //Drop all worn head items + for(var/X in list(H.glasses, H.ears, H.wear_mask, H.head)) + var/obj/item/I = X + H.unEquip(I, 1) + name = "[H]'s head" ..() @@ -221,78 +213,81 @@ //Attach a limb to a human and drop any existing limb of that type. -/obj/item/bodypart/proc/replace_limb(mob/living/carbon/C, special) - if(!istype(C)) +/obj/item/bodypart/proc/replace_limb(mob/living/carbon/human/H, special) + if(!istype(H)) return - var/obj/item/bodypart/O = locate(src.type) in C.bodyparts + var/obj/item/bodypart/O = locate(src.type) in H.bodyparts + if(O) O.drop_limb(1) - attach_limb(C, special) + attach_limb(H, special) -/obj/item/bodypart/head/replace_limb(mob/living/carbon/C, special) - if(!istype(C)) +/obj/item/bodypart/head/replace_limb(mob/living/carbon/human/H, special) + if(!istype(H)) return - var/obj/item/bodypart/head/O = locate(src.type) in C.bodyparts + var/obj/item/bodypart/head/O = locate(src.type) in H.bodyparts if(O) if(!special) return else O.drop_limb(1) - attach_limb(C, special) + attach_limb(H, special) -/obj/item/bodypart/proc/attach_limb(mob/living/carbon/C, special) +/obj/item/bodypart/proc/attach_limb(mob/living/carbon/human/H, special) loc = null - owner = C - C.bodyparts += src - if(held_index) - if(held_index > C.hand_bodyparts.len) - C.hand_bodyparts.len = held_index - C.hand_bodyparts[held_index] = src - if(C.hud_used) - var/obj/screen/inventory/hand/hand = C.hud_used.hand_slots["[held_index]"] - if(hand) - hand.update_icon() - C.update_inv_gloves() + owner = H + H.bodyparts += src if(special) //non conventional limb attachment - for(var/X in C.surgeries) //if we had an ongoing surgery to attach a new limb, we stop it. + for(var/X in H.surgeries) //if we had an ongoing surgery to attach a new limb, we stop it. var/datum/surgery/S = X var/surgery_zone = check_zone(S.location) if(surgery_zone == body_zone) - C.surgeries -= S + H.surgeries -= S qdel(S) break update_bodypart_damage_state() - - C.updatehealth() - C.update_body() - C.update_hair() - C.update_damage_overlays() - C.update_canmove() + H.updatehealth() + H.update_body() + H.update_hair() + H.update_damage_overlays() + H.update_canmove() -/obj/item/bodypart/head/attach_limb(mob/living/carbon/C, special) +/obj/item/bodypart/r_arm/attach_limb(mob/living/carbon/human/H, special) + ..() + if(H.hud_used) + var/obj/screen/inventory/R = H.hud_used.inv_slots[slot_r_hand] + if(R) + R.update_icon() + +/obj/item/bodypart/l_arm/attach_limb(mob/living/carbon/human/H, special) + ..() + if(H.hud_used) + var/obj/screen/inventory/L = H.hud_used.inv_slots[slot_l_hand] + if(L) + L.update_icon() + +/obj/item/bodypart/head/attach_limb(mob/living/carbon/human/H, special) //Transfer some head appearance vars over if(brain) brainmob.container = null //Reset brainmob head var. brainmob.loc = brain //Throw mob into brain. brain.brainmob = brainmob //Set the brain to use the brainmob brainmob = null //Set head brainmob var to null - brain.Insert(C) //Now insert the brain proper + brain.Insert(H) //Now insert the brain proper brain = null //No more brain in the head - if(ishuman(C)) - var/mob/living/carbon/human/H = C - H.hair_color = hair_color - H.hair_style = hair_style - H.facial_hair_color = facial_hair_color - H.facial_hair_style = facial_hair_style - H.eye_color = eye_color - H.lip_style = lip_style - H.lip_color = lip_color + H.hair_color = hair_color + H.hair_style = hair_style + H.facial_hair_color = facial_hair_color + H.facial_hair_style = facial_hair_style + H.eye_color = eye_color + H.lip_style = lip_style + H.lip_color = lip_color if(real_name) - C.real_name = real_name + H.real_name = real_name real_name = "" name = initial(name) ..() @@ -302,28 +297,26 @@ /mob/living/proc/regenerate_limbs(noheal, excluded_limbs) return 0 -/mob/living/carbon/regenerate_limbs(noheal, list/excluded_limbs) +/mob/living/carbon/human/regenerate_limbs(noheal, list/excluded_limbs) var/list/limb_list = list("head", "chest", "r_arm", "l_arm", "r_leg", "l_leg") if(excluded_limbs) limb_list -= excluded_limbs for(var/Z in limb_list) . += regenerate_limb(Z, noheal) - /mob/living/proc/regenerate_limb(limb_zone, noheal) return -/mob/living/carbon/regenerate_limb(limb_zone, noheal) +/mob/living/carbon/human/regenerate_limb(limb_zone, noheal) var/obj/item/bodypart/L if(get_bodypart(limb_zone)) return 0 - L = newBodyPart(limb_zone, 0, 0) + L = newBodyPart(limb_zone, 0, 0, src) if(L) if(!noheal) L.brute_dam = 0 L.burn_dam = 0 - L.brutestate = 0 - L.burnstate = 0 + L.burn_state = 0 L.attach_limb(src, 1) return 1 diff --git a/code/modules/surgery/bodyparts/head.dm b/code/modules/surgery/bodyparts/head.dm index 9f2c59794f..a8fd505965 100644 --- a/code/modules/surgery/bodyparts/head.dm +++ b/code/modules/surgery/bodyparts/head.dm @@ -1,18 +1,17 @@ /obj/item/bodypart/head name = "head" desc = "Didn't make sense not to live for fun, your brain gets smart but your head gets dumb." - icon = 'icons/mob/human_parts.dmi' - icon_state = "default_human_head" max_damage = 200 body_zone = "head" body_part = HEAD - w_class = WEIGHT_CLASS_BULKY //Quite a hefty load + layer = ABOVE_MOB_LAYER //so it isn't hidden behind some objects when on the floor + w_class = 4 //Quite a hefty load slowdown = 1 //Balancing measure throw_range = 2 //No head bowling px_x = 0 px_y = -8 - var/mob/living/brain/brainmob = null //The current occupant. + var/mob/living/carbon/brain/brainmob = null //The current occupant. var/obj/item/organ/brain/brain = null //The brain organ //Limb appearance info: @@ -32,8 +31,7 @@ /obj/item/bodypart/head/drop_organs(mob/user) var/turf/T = get_turf(src) - if(status != BODYPART_ROBOTIC) - playsound(T, 'sound/misc/splort.ogg', 50, 1, -1) + playsound(T, 'sound/misc/splort.ogg', 50, 1, -1) for(var/obj/item/I in src) if(I == brain) if(user) @@ -49,77 +47,67 @@ else I.loc = T -/obj/item/bodypart/head/update_limb(dropping_limb, mob/living/carbon/source) - var/mob/living/carbon/C +/obj/item/bodypart/head/update_limb(dropping_limb, mob/living/carbon/human/source) + var/mob/living/carbon/human/H if(source) - C = source + H = source else - C = owner + H = owner + if(!istype(H)) + return + var/datum/species/S = H.dna.species + //First of all, name. + real_name = H.real_name - real_name = C.real_name - if(C.disabilities & HUSK) - real_name = "Unknown" - hair_style = "Bald" + //Facial hair + if(H.facial_hair_style && (FACEHAIR in S.specflags)) + facial_hair_style = H.facial_hair_style + if(S.hair_color) + if(S.hair_color == "mutcolor") + facial_hair_color = H.dna.features["mcolor"] + else + facial_hair_color = S.hair_color + else + facial_hair_color = H.facial_hair_color + hair_alpha = S.hair_alpha + else facial_hair_style = "Shaved" + facial_hair_color = "000" + hair_alpha = 255 + //Hair + if(H.hair_style && (HAIR in S.specflags)) + hair_style = H.hair_style + if(S.hair_color) + if(S.hair_color == "mutcolor") + hair_color = H.dna.features["mcolor"] + else + hair_color = S.hair_color + else + hair_color = H.hair_color + hair_alpha = S.hair_alpha + else + hair_style = "Bald" + hair_color = "000" + hair_alpha = initial(hair_alpha) + // lipstick + if(H.lip_style && (LIPS in S.specflags)) + lip_style = H.lip_style + lip_color = H.lip_color + else + lip_style = null + lip_color = "white" + // eyes + if(EYECOLOR in S.specflags) + eyes = S.eyes + eye_color = H.eye_color + else eyes = "eyes" eye_color = "" - lip_style = null - - else if(!animal_origin) - var/mob/living/carbon/human/H = C - var/datum/species/S = H.dna.species - - //Facial hair - if(H.facial_hair_style && (FACEHAIR in S.species_traits)) - facial_hair_style = H.facial_hair_style - if(S.hair_color) - if(S.hair_color == "mutcolor") - facial_hair_color = H.dna.features["mcolor"] - else - facial_hair_color = S.hair_color - else - facial_hair_color = H.facial_hair_color - hair_alpha = S.hair_alpha - else - facial_hair_style = "Shaved" - facial_hair_color = "000" - hair_alpha = 255 - //Hair - if(H.hair_style && (HAIR in S.species_traits)) - hair_style = H.hair_style - if(S.hair_color) - if(S.hair_color == "mutcolor") - hair_color = H.dna.features["mcolor"] - else - hair_color = S.hair_color - else - hair_color = H.hair_color - hair_alpha = S.hair_alpha - else - hair_style = "Bald" - hair_color = "000" - hair_alpha = initial(hair_alpha) - // lipstick - if(H.lip_style && (LIPS in S.species_traits)) - lip_style = H.lip_style - lip_color = H.lip_color - else - lip_style = null - lip_color = "white" - // eyes - if(EYECOLOR in S.species_traits) - eyes = S.eyes - eye_color = H.eye_color - else - eyes = "eyes" - eye_color = "" - ..() /obj/item/bodypart/head/update_icon_dropped() var/list/standing = get_limb_icon(1) - if(!standing.len) - icon_state = initial(icon_state)//no overlays found, we default back to initial icon. + if(!standing) return for(var/image/I in standing) I.pixel_x = px_x @@ -128,11 +116,13 @@ /obj/item/bodypart/head/get_limb_icon(dropped) cut_overlays() - var/list/standing = ..() + var/image/I = ..() + var/list/standing = list() + standing += I if(dropped) //certain overlays only appear when the limb is being detached from its owner. var/datum/sprite_accessory/S - if(status != BODYPART_ROBOTIC) //having a robotic head hides certain features. + if(status != ORGAN_ROBOTIC) //having a robotic head hides certain features. //facial hair if(facial_hair_style) S = facial_hair_styles_list[facial_hair_style] @@ -144,12 +134,7 @@ //Applies the debrained overlay if there is no brain if(!brain) - if(animal_origin == ALIEN_BODYPART) - standing += image("icon"='icons/mob/animal_parts.dmi', "icon_state" = "debrained_alien_s", "layer" = -HAIR_LAYER, "dir"=SOUTH) - else if(animal_origin == LARVA_BODYPART) - standing += image("icon"='icons/mob/animal_parts.dmi', "icon_state" = "debrained_larva_s", "layer" = -HAIR_LAYER, "dir"=SOUTH) - else if(!(NOBLOOD in species_flags_list)) - standing += image("icon"='icons/mob/human_face.dmi', "icon_state" = "debrained_s", "layer" = -HAIR_LAYER, "dir"=SOUTH) + standing += image("icon"='icons/mob/human_face.dmi', "icon_state" = "debrained_s", "layer" = -HAIR_LAYER, "dir"=SOUTH) else if(hair_style) S = hair_styles_list[hair_style] @@ -172,32 +157,9 @@ img_eyes_s.color = "#" + eye_color standing += img_eyes_s - return standing + if(standing.len) + return standing -/obj/item/bodypart/head/monkey - icon = 'icons/mob/animal_parts.dmi' - icon_state = "default_monkey_head" - animal_origin = MONKEY_BODYPART - -/obj/item/bodypart/head/alien - icon = 'icons/mob/animal_parts.dmi' - icon_state = "alien_head_s" - px_x = 0 - px_y = 0 - dismemberable = 0 - max_damage = 500 - animal_origin = ALIEN_BODYPART - -/obj/item/bodypart/head/devil - dismemberable = 0 - max_damage = 5000 - animal_origin = DEVIL_BODYPART - -/obj/item/bodypart/head/larva - icon = 'icons/mob/animal_parts.dmi' - icon_state = "larva_head_s" - px_x = 0 - px_y = 0 - dismemberable = 0 - max_damage = 50 - animal_origin = LARVA_BODYPART +/obj/item/bodypart/head/burn() + drop_organs() + ..() diff --git a/code/modules/surgery/bodyparts/helpers.dm b/code/modules/surgery/bodyparts/helpers.dm index 85d4e87055..f3e6fdbeab 100644 --- a/code/modules/surgery/bodyparts/helpers.dm +++ b/code/modules/surgery/bodyparts/helpers.dm @@ -10,48 +10,55 @@ if(L.body_zone == zone) return L -/mob/living/carbon/has_hand_for_held_index(i) - if(i) - var/obj/item/bodypart/L = hand_bodyparts[i] - if(L) - return L - return FALSE - - +//Mob has their active hand +/mob/proc/has_active_hand() + return 1 +/mob/living/carbon/human/has_active_hand() + var/obj/item/bodypart/L + if(hand) + L = get_bodypart("l_arm") + else + L = get_bodypart("r_arm") + if(!L) + return 0 + return 1 /mob/proc/has_left_hand() - return TRUE - -/mob/living/carbon/has_left_hand() - for(var/obj/item/bodypart/L in hand_bodyparts) - if(L.held_index % 2) - return TRUE - return FALSE - -/mob/living/carbon/alien/larva/has_left_hand() return 1 +/mob/living/carbon/human/has_left_hand() + var/obj/item/bodypart/L + L = get_bodypart("l_arm") + if(!L) + return 0 + return 1 /mob/proc/has_right_hand() - return TRUE - -/mob/living/carbon/has_right_hand() - for(var/obj/item/bodypart/L in hand_bodyparts) - if(!(L.held_index % 2)) - return TRUE - return FALSE - -/mob/living/carbon/alien/larva/has_right_hand() return 1 +/mob/living/carbon/human/has_right_hand() + var/obj/item/bodypart/L + L = get_bodypart("r_arm") + if(!L) + return 0 + return 1 //Limb numbers /mob/proc/get_num_arms() return 2 +/mob/proc/get_num_legs() + return 2 -/mob/living/carbon/get_num_arms() +/mob/proc/get_leg_ignore() + return 0 + +/mob/living/carbon/human/get_leg_ignore() + if(FLYING in dna.species.specflags) + return 1 + +/mob/living/carbon/human/get_num_arms() . = 0 for(var/X in bodyparts) var/obj/item/bodypart/affecting = X @@ -60,19 +67,7 @@ if(affecting.body_part == ARM_LEFT) .++ - -//sometimes we want to ignore that we don't have the required amount of arms. -/mob/proc/get_arm_ignore() - return 0 - -/mob/living/carbon/alien/larva/get_arm_ignore() - return 1 //so we can still handcuff larvas. - - -/mob/proc/get_num_legs() - return 2 - -/mob/living/carbon/get_num_legs() +/mob/living/carbon/human/get_num_legs() . = 0 for(var/X in bodyparts) var/obj/item/bodypart/affecting = X @@ -81,36 +76,19 @@ if(affecting.body_part == LEG_LEFT) .++ -//sometimes we want to ignore that we don't have the required amount of legs. -/mob/proc/get_leg_ignore() - return 0 - -/mob/living/carbon/alien/larva/get_leg_ignore() - return 1 - -/mob/living/carbon/human/get_leg_ignore() - if(movement_type & FLYING) - return 1 - /mob/living/proc/get_missing_limbs() return list() -/mob/living/carbon/get_missing_limbs() +/mob/living/carbon/human/get_missing_limbs() var/list/full = list("head", "chest", "r_arm", "l_arm", "r_leg", "l_leg") for(var/zone in full) if(get_bodypart(zone)) full -= zone return full -/mob/living/carbon/alien/larva/get_missing_limbs() - var/list/full = list("head", "chest") - for(var/zone in full) - if(get_bodypart(zone)) - full -= zone - return full -//Remove all embedded objects from all limbs on the carbon mob -/mob/living/carbon/proc/remove_all_embedded_objects() +//Remove all embedded objects from all limbs on the human mob +/mob/living/carbon/human/proc/remove_all_embedded_objects() var/turf/T = get_turf(src) for(var/X in bodyparts) @@ -121,7 +99,7 @@ clear_alert("embeddedobject") -/mob/living/carbon/proc/has_embedded_objects() +/mob/living/carbon/human/proc/has_embedded_objects() . = 0 for(var/X in bodyparts) var/obj/item/bodypart/L = X @@ -130,7 +108,7 @@ //Helper for quickly creating a new limb - used by augment code in species.dm spec_attacked_by -/mob/living/carbon/proc/newBodyPart(zone, robotic, fixed_icon) +/proc/newBodyPart(zone, robotic, fixed_icon, mob/living/carbon/human/source) var/obj/item/bodypart/L switch(zone) if("l_arm") @@ -146,64 +124,13 @@ if("chest") L = new /obj/item/bodypart/chest() if(L) - L.update_limb(fixed_icon, src) + if(source) + L.update_limb(fixed_icon, source) + else if(fixed_icon) + L.no_update = 1//when attached, the limb won't be affected by the appearance changes of its mob owner. if(robotic) - L.change_bodypart_status(BODYPART_ROBOTIC) - . = L + L.change_bodypart_status(ORGAN_ROBOTIC) -/mob/living/carbon/monkey/newBodyPart(zone, robotic, fixed_icon) - var/obj/item/bodypart/L - switch(zone) - if("l_arm") - L = new /obj/item/bodypart/l_arm/monkey() - if("r_arm") - L = new /obj/item/bodypart/r_arm/monkey() - if("head") - L = new /obj/item/bodypart/head/monkey() - if("l_leg") - L = new /obj/item/bodypart/l_leg/monkey() - if("r_leg") - L = new /obj/item/bodypart/r_leg/monkey() - if("chest") - L = new /obj/item/bodypart/chest/monkey() - if(L) - L.update_limb(fixed_icon, src) - if(robotic) - L.change_bodypart_status(BODYPART_ROBOTIC) - . = L - -/mob/living/carbon/alien/larva/newBodyPart(zone, robotic, fixed_icon) - var/obj/item/bodypart/L - switch(zone) - if("head") - L = new /obj/item/bodypart/head/larva() - if("chest") - L = new /obj/item/bodypart/chest/larva() - if(L) - L.update_limb(fixed_icon, src) - if(robotic) - L.change_bodypart_status(BODYPART_ROBOTIC) - . = L - -/mob/living/carbon/alien/humanoid/newBodyPart(zone, robotic, fixed_icon) - var/obj/item/bodypart/L - switch(zone) - if("l_arm") - L = new /obj/item/bodypart/l_arm/alien() - if("r_arm") - L = new /obj/item/bodypart/r_arm/alien() - if("head") - L = new /obj/item/bodypart/head/alien() - if("l_leg") - L = new /obj/item/bodypart/l_leg/alien() - if("r_leg") - L = new /obj/item/bodypart/r_leg/alien() - if("chest") - L = new /obj/item/bodypart/chest/alien() - if(L) - L.update_limb(fixed_icon, src) - if(robotic) - L.change_bodypart_status(BODYPART_ROBOTIC) . = L @@ -235,39 +162,4 @@ if("albino") . = "fff4e6" if("orange") - . = "ffc905" - -/mob/living/carbon/proc/Digitigrade_Leg_Swap(swap_back) - var/body_plan_changed = FALSE - for(var/X in bodyparts) - var/obj/item/bodypart/O = X - var/obj/item/bodypart/N - if((!O.use_digitigrade && swap_back == FALSE) || (O.use_digitigrade && swap_back == TRUE)) - if(O.body_part == LEG_LEFT) - if(swap_back == TRUE) - N = new /obj/item/bodypart/l_leg - else - N = new /obj/item/bodypart/l_leg/digitigrade - else if(O.body_part == LEG_RIGHT) - if(swap_back == TRUE) - N = new /obj/item/bodypart/r_leg - else - N = new /obj/item/bodypart/r_leg/digitigrade - if(!N) - continue - body_plan_changed = TRUE - O.drop_limb(1) - qdel(O) - N.attach_limb(src) - if(body_plan_changed && ishuman(src)) - var/mob/living/carbon/human/H = src - if(H.w_uniform) - var/obj/item/clothing/under/U = H.w_uniform - if(U.mutantrace_variation) - if(swap_back) - U.adjusted = NORMAL_STYLE - else - U.adjusted = DIGITIGRADE_STYLE - H.update_inv_w_uniform() - if(H.shoes && !swap_back) - H.unEquip(H.shoes) + . = "ffc905" \ No newline at end of file diff --git a/code/modules/surgery/bodyparts/robot_bodyparts.dm b/code/modules/surgery/bodyparts/robot_bodyparts.dm deleted file mode 100644 index 24a9622a33..0000000000 --- a/code/modules/surgery/bodyparts/robot_bodyparts.dm +++ /dev/null @@ -1,162 +0,0 @@ - - -/obj/item/bodypart/l_arm/robot - name = "cyborg left arm" - desc = "A skeletal limb wrapped in pseudomuscles, with a low-conductivity case." - attack_verb = list("slapped", "punched") - item_state = "buildpipe" - icon = 'icons/obj/robot_parts.dmi' - flags = CONDUCT - icon_state = "l_arm" - status = BODYPART_ROBOTIC - - -/obj/item/bodypart/r_arm/robot - name = "cyborg right arm" - desc = "A skeletal limb wrapped in pseudomuscles, with a low-conductivity case." - attack_verb = list("slapped", "punched") - item_state = "buildpipe" - icon = 'icons/obj/robot_parts.dmi' - flags = CONDUCT - icon_state = "r_arm" - status = BODYPART_ROBOTIC - - -/obj/item/bodypart/l_leg/robot - name = "cyborg left leg" - desc = "A skeletal limb wrapped in pseudomuscles, with a low-conductivity case." - attack_verb = list("kicked", "stomped") - item_state = "buildpipe" - icon = 'icons/obj/robot_parts.dmi' - flags = CONDUCT - icon_state = "l_leg" - status = BODYPART_ROBOTIC - - -/obj/item/bodypart/r_leg/robot - name = "cyborg right leg" - desc = "A skeletal limb wrapped in pseudomuscles, with a low-conductivity case." - attack_verb = list("kicked", "stomped") - item_state = "buildpipe" - icon = 'icons/obj/robot_parts.dmi' - flags = CONDUCT - icon_state = "r_leg" - status = BODYPART_ROBOTIC - - -/obj/item/bodypart/chest/robot - name = "cyborg torso" - desc = "A heavily reinforced case containing cyborg logic boards, with space for a standard power cell." - item_state = "buildpipe" - icon = 'icons/obj/robot_parts.dmi' - flags = CONDUCT - icon_state = "chest" - status = BODYPART_ROBOTIC - var/wired = 0 - var/obj/item/weapon/stock_parts/cell/cell = null - -/obj/item/bodypart/chest/robot/attackby(obj/item/W, mob/user, params) - if(istype(W, /obj/item/weapon/stock_parts/cell)) - if(src.cell) - user << "You have already inserted a cell!" - return - else - if(!user.unEquip(W)) - return - W.loc = src - src.cell = W - user << "You insert the cell." - else if(istype(W, /obj/item/stack/cable_coil)) - if(src.wired) - user << "You have already inserted wire!" - return - var/obj/item/stack/cable_coil/coil = W - if (coil.use(1)) - src.wired = 1 - user << "You insert the wire." - else - user << "You need one length of coil to wire it!" - else - return ..() - -/obj/item/bodypart/chest/robot/Destroy() - if(cell) - qdel(cell) - cell = null - return ..() - - -/obj/item/bodypart/chest/robot/drop_organs(mob/user) - if(wired) - new /obj/item/stack/cable_coil(user.loc, 1) - if(cell) - cell.forceMove(user.loc) - cell = null - ..() - - -/obj/item/bodypart/head/robot - name = "cyborg head" - desc = "A standard reinforced braincase, with spine-plugged neural socket and sensor gimbals." - item_state = "buildpipe" - icon = 'icons/obj/robot_parts.dmi' - flags = CONDUCT - icon_state = "head" - status = BODYPART_ROBOTIC - var/obj/item/device/assembly/flash/handheld/flash1 = null - var/obj/item/device/assembly/flash/handheld/flash2 = null - - - -/obj/item/bodypart/head/robot/attackby(obj/item/W, mob/user, params) - if(istype(W, /obj/item/device/assembly/flash/handheld)) - var/obj/item/device/assembly/flash/handheld/F = W - if(src.flash1 && src.flash2) - user << "You have already inserted the eyes!" - return - else if(F.crit_fail) - user << "You can't use a broken flash!" - return - else - if(!user.unEquip(W)) - return - F.loc = src - if(src.flash1) - src.flash2 = F - else - src.flash1 = F - user << "You insert the flash into the eye socket." - else if(istype(W, /obj/item/weapon/crowbar)) - if(flash1 || flash2) - playsound(src.loc, W.usesound, 50, 1) - user << "You remove the flash from [src]." - if(flash1) - flash1.forceMove(user.loc) - flash1 = null - if(flash2) - flash2.forceMove(user.loc) - flash2 = null - else - user << "There are no flash to remove from [src]." - - else - return ..() - -/obj/item/bodypart/head/robot/Destroy() - if(flash1) - qdel(flash1) - flash1 = null - if(flash2) - qdel(flash2) - flash2 = null - return ..() - - -/obj/item/bodypart/head/robot/drop_organs(mob/user) - if(flash1) - flash1.forceMove(user.loc) - flash1 = null - if(flash2) - flash2.forceMove(user.loc) - flash2 = null - ..() diff --git a/code/modules/surgery/cavity_implant.dm b/code/modules/surgery/cavity_implant.dm index 4723eac4f8..771275b0d5 100644 --- a/code/modules/surgery/cavity_implant.dm +++ b/code/modules/surgery/cavity_implant.dm @@ -24,7 +24,7 @@ /datum/surgery_step/handle_cavity/success(mob/user, mob/living/carbon/human/target, target_zone, obj/item/tool, datum/surgery/surgery) var/obj/item/bodypart/chest/CH = target.get_bodypart("chest") if(tool) - if(IC || tool.w_class > WEIGHT_CLASS_NORMAL || (NODROP in tool.flags) || istype(tool, /obj/item/organ)) + if(IC || tool.w_class > 3 || (NODROP in tool.flags) || istype(tool, /obj/item/organ)) user << "You can't seem to fit [tool] in [target]'s [target_zone]!" return 0 else @@ -41,4 +41,4 @@ return 1 else user << "You don't find anything in [target]'s [target_zone]." - return 0 + return 0 \ No newline at end of file diff --git a/code/modules/surgery/dental_implant.dm b/code/modules/surgery/dental_implant.dm index 71fabfb7e6..44ead63927 100644 --- a/code/modules/surgery/dental_implant.dm +++ b/code/modules/surgery/dental_implant.dm @@ -16,10 +16,11 @@ return 0 user.drop_item() + target.internal_organs += tool tool.loc = target var/datum/action/item_action/hands_free/activate_pill/P = new - P.button.name = "Activate [tool.name]" + P.button_icon_state = tool.icon_state P.target = tool P.Grant(target) @@ -32,7 +33,7 @@ /datum/action/item_action/hands_free/activate_pill/Trigger() if(!..()) return 0 - owner << "You grit your teeth and burst the implanted [target.name]!" + owner << "You grit your teeth and burst the implanted [target]!" add_logs(owner, null, "swallowed an implanted pill", target) if(target.reagents.total_volume) target.reagents.reaction(owner, INGEST) diff --git a/code/modules/surgery/gender_reassignment.dm b/code/modules/surgery/gender_reassignment.dm new file mode 100644 index 0000000000..830930839d --- /dev/null +++ b/code/modules/surgery/gender_reassignment.dm @@ -0,0 +1,38 @@ +/datum/surgery/gender_reassignment + name = "gender reassignment" + steps = list(/datum/surgery_step/incise, /datum/surgery_step/clamp_bleeders, /datum/surgery_step/reshape_genitals, /datum/surgery_step/close) + species = list(/mob/living/carbon/human) + possible_locs = list("groin") + + +//reshape_genitals +/datum/surgery_step/reshape_genitals + name = "reshape genitals" + implements = list(/obj/item/weapon/scalpel = 100, /obj/item/weapon/hatchet = 50, /obj/item/weapon/wirecutters = 35) + time = 64 + +/datum/surgery_step/reshape_genitals/preop(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery) + if(target.gender == FEMALE) + user.visible_message("[user] begins to reshape [target]'s genitals to look more masculine.", "You begin to reshape [target]'s genitals to look more masculine...") + else + user.visible_message("[user] begins to reshape [target]'s genitals to look more feminine.", "You begin to reshape [target]'s genitals to look more feminine...") + +/datum/surgery_step/reshape_genitals/success(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery) + var/mob/living/carbon/human/H = target //no type check, as that should be handled by the surgery + H.gender_ambiguous = 0 + if(target.gender == FEMALE) + user.visible_message("[user] has made a man of [target]!", "You made [target] a man.") + target.gender = MALE + else + user.visible_message("[user] has made a woman of [target]!", "You made [target] a woman.") + target.gender = FEMALE + target.regenerate_icons() + return 1 + +/datum/surgery_step/reshape_genitals/failure(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery) + var/mob/living/carbon/human/H = target + H.gender_ambiguous = 1 + user.visible_message("[user] accidentally mutilates [target]'s genitals beyond the point of recognition!", "You accidentally mutilate [target]'s genitals beyond the point of recognition!") + target.gender = pick(MALE, FEMALE) + target.regenerate_icons() + return 1 diff --git a/code/modules/surgery/generic_steps.dm b/code/modules/surgery/generic_steps.dm index 6667f182d3..25a1c39c30 100644 --- a/code/modules/surgery/generic_steps.dm +++ b/code/modules/surgery/generic_steps.dm @@ -21,7 +21,7 @@ /datum/surgery_step/clamp_bleeders/success(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery) if(locate(/datum/surgery_step/saw) in surgery.steps) - target.heal_bodypart_damage(20,0) + target.heal_organ_damage(20,0) return ..() @@ -69,7 +69,7 @@ /datum/surgery_step/close/success(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery) if(locate(/datum/surgery_step/saw) in surgery.steps) - target.heal_bodypart_damage(45,0) + target.heal_organ_damage(45,0) return ..() @@ -84,7 +84,9 @@ user.visible_message("[user] begins to saw through the bone in [target]'s [parse_zone(target_zone)].", "You begin to saw through the bone in [target]'s [parse_zone(target_zone)]...") /datum/surgery_step/saw/success(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery) - target.apply_damage(50,"brute","[target_zone]") + if(ishuman(target)) + var/mob/living/carbon/human/H = target + H.apply_damage(50,"brute","[target_zone]") user.visible_message("[user] saws [target]'s [parse_zone(target_zone)] open!", "You saw [target]'s [parse_zone(target_zone)] open.") return 1 diff --git a/code/modules/surgery/helpers.dm b/code/modules/surgery/helpers.dm index b27096d308..d4d8d61963 100644 --- a/code/modules/surgery/helpers.dm +++ b/code/modules/surgery/helpers.dm @@ -1,94 +1,97 @@ /proc/attempt_initiate_surgery(obj/item/I, mob/living/M, mob/user) - if(!istype(M)) - return + if(istype(M)) + var/mob/living/carbon/human/H + var/obj/item/bodypart/affecting + var/selected_zone = user.zone_selected - var/mob/living/carbon/C - var/obj/item/bodypart/affecting - var/selected_zone = user.zone_selected + if(istype(M, /mob/living/carbon/human)) + H = M + affecting = H.get_bodypart(check_zone(selected_zone)) - if(istype(M, /mob/living/carbon)) - C = M - affecting = C.get_bodypart(check_zone(selected_zone)) + if(M.lying || isslime(M)) //if they're prone or a slime + var/datum/surgery/current_surgery - if(!M.lying && !isslime(M)) //if they're prone or a slime - return + for(var/datum/surgery/S in M.surgeries) + if(S.location == selected_zone) + current_surgery = S - var/datum/surgery/current_surgery + if(!current_surgery) + var/list/all_surgeries = surgeries_list.Copy() + var/list/available_surgeries = list() - for(var/datum/surgery/S in M.surgeries) - if(S.location == selected_zone) - current_surgery = S + for(var/datum/surgery/S in all_surgeries) + if(!S.possible_locs.Find(selected_zone)) + continue + if(affecting) + if(!S.requires_bodypart) + continue + if(S.requires_organic_bodypart && affecting.status == ORGAN_ROBOTIC) + continue + else if(H && S.requires_bodypart) //human with no limb in surgery zone when we need a limb + continue + if(!S.can_start(user, M)) + continue + for(var/path in S.species) + if(istype(M, path)) + available_surgeries[S.name] = S + break - if(!current_surgery) - var/list/all_surgeries = surgeries_list.Copy() - var/list/available_surgeries = list() + var/P = input("Begin which procedure?", "Surgery", null, null) as null|anything in available_surgeries + if(P && user && user.Adjacent(M) && (I in user)) + var/datum/surgery/S = available_surgeries[P] - for(var/datum/surgery/S in all_surgeries) - if(!S.possible_locs.Find(selected_zone)) - continue - if(affecting) - if(!S.requires_bodypart) - continue - if(S.requires_organic_bodypart && affecting.status == BODYPART_ROBOTIC) - continue - else if(C && S.requires_bodypart) //mob with no limb in surgery zone when we need a limb - continue - if(!S.can_start(user, M)) - continue - for(var/path in S.species) - if(istype(M, path)) - available_surgeries[S.name] = S - break + for(var/datum/surgery/other in M.surgeries) + if(other.location == S.location) + return //during the input() another surgery was started at the same location. - var/P = input("Begin which procedure?", "Surgery", null, null) as null|anything in available_surgeries - if(P && user && user.Adjacent(M) && (I in user)) - var/datum/surgery/S = available_surgeries[P] + var/datum/surgery/procedure = new S.type + if(procedure) + procedure.location = selected_zone - for(var/datum/surgery/other in M.surgeries) - if(other.location == S.location) - return //during the input() another surgery was started at the same location. + //we check that the surgery is still doable after the input() wait. + if(H) + affecting = H.get_bodypart(check_zone(selected_zone)) + if(affecting) + if(!procedure.requires_bodypart) + return + if(procedure.requires_organic_bodypart && affecting.status == ORGAN_ROBOTIC) + return + else if(H && procedure.requires_bodypart) + return + if(!procedure.can_start(user, M)) + return - //we check that the surgery is still doable after the input() wait. - if(C) - affecting = C.get_bodypart(check_zone(selected_zone)) - if(affecting) - if(!S.requires_bodypart) - return - if(S.requires_organic_bodypart && affecting.status == BODYPART_ROBOTIC) - return - else if(C && S.requires_bodypart) - return - if(!S.can_start(user, M)) - return + if(procedure.ignore_clothes || get_location_accessible(M, selected_zone)) + M.surgeries += procedure + procedure.organ = affecting + user.visible_message("[user] drapes [I] over [M]'s [parse_zone(selected_zone)] to prepare for \an [procedure.name].", \ + "You drape [I] over [M]'s [parse_zone(selected_zone)] to prepare for \an [procedure.name].") - if(S.ignore_clothes || get_location_accessible(M, selected_zone)) - var/datum/surgery/procedure = new S.type(M, selected_zone, affecting) - user.visible_message("[user] drapes [I] over [M]'s [parse_zone(selected_zone)] to prepare for \an [procedure.name].", \ - "You drape [I] over [M]'s [parse_zone(selected_zone)] to prepare for \an [procedure.name].") + add_logs(user, M, "operated", addition="Operation type: [procedure.name], location: [selected_zone]") + else + user << "You need to expose [M]'s [parse_zone(selected_zone)] first!" - add_logs(user, M, "operated", addition="Operation type: [procedure.name], location: [selected_zone]") - else - user << "You need to expose [M]'s [parse_zone(selected_zone)] first!" + else if(!current_surgery.step_in_progress) + if(current_surgery.status == 1) + M.surgeries -= current_surgery + user.visible_message("[user] removes the drapes from [M]'s [parse_zone(selected_zone)].", \ + "You remove the drapes from [M]'s [parse_zone(selected_zone)].") + qdel(current_surgery) + else if(istype(user.get_inactive_hand(), /obj/item/weapon/cautery) && current_surgery.can_cancel) + M.surgeries -= current_surgery + user.visible_message("[user] mends the incision and removes the drapes from [M]'s [parse_zone(selected_zone)].", \ + "You mend the incision and remove the drapes from [M]'s [parse_zone(selected_zone)].") + qdel(current_surgery) + else if(current_surgery.can_cancel) + user << "You need to hold a cautery in inactive hand to stop [M]'s surgery!" - else if(!current_surgery.step_in_progress) - if(current_surgery.status == 1) - M.surgeries -= current_surgery - user.visible_message("[user] removes the drapes from [M]'s [parse_zone(selected_zone)].", \ - "You remove the drapes from [M]'s [parse_zone(selected_zone)].") - qdel(current_surgery) - else if(istype(user.get_inactive_held_item(), /obj/item/weapon/cautery) && current_surgery.can_cancel) - M.surgeries -= current_surgery - user.visible_message("[user] mends the incision and removes the drapes from [M]'s [parse_zone(selected_zone)].", \ - "You mend the incision and remove the drapes from [M]'s [parse_zone(selected_zone)].") - qdel(current_surgery) - else if(current_surgery.can_cancel) - user << "You need to hold a cautery in inactive hand to stop [M]'s surgery!" - return 1 + return 1 + return 0 -/proc/get_location_modifier(mob/M) +proc/get_location_modifier(mob/M) var/turf/T = get_turf(M) if(locate(/obj/structure/table/optable, T)) return 1 diff --git a/code/modules/surgery/implant_removal.dm b/code/modules/surgery/implant_removal.dm index 2f8f3886fe..11a0dfa7a6 100644 --- a/code/modules/surgery/implant_removal.dm +++ b/code/modules/surgery/implant_removal.dm @@ -14,9 +14,7 @@ var/obj/item/weapon/implant/I = null /datum/surgery_step/extract_implant/preop(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery) - for(var/obj/item/O in target.implants) - I = O - break + I = locate(/obj/item/weapon/implant) in target if(I) user.visible_message("[user] begins to extract [I] from [target]'s [target_zone].", "You begin to extract [I] from [target]'s [target_zone]...") else @@ -28,11 +26,14 @@ I.removed(target) var/obj/item/weapon/implantcase/case - for(var/obj/item/weapon/implantcase/ic in user.held_items) - case = ic - break - if(!case) + + if(istype(user.get_item_by_slot(slot_l_hand), /obj/item/weapon/implantcase)) + case = user.get_item_by_slot(slot_l_hand) + else if(istype(user.get_item_by_slot(slot_r_hand), /obj/item/weapon/implantcase)) + case = user.get_item_by_slot(slot_r_hand) + else case = locate(/obj/item/weapon/implantcase) in get_turf(target) + if(case && !case.imp) case.imp = I I.loc = case diff --git a/code/modules/surgery/limb_augmentation.dm b/code/modules/surgery/limb_augmentation.dm index cbbfd31c6d..d5054b3bdc 100644 --- a/code/modules/surgery/limb_augmentation.dm +++ b/code/modules/surgery/limb_augmentation.dm @@ -16,23 +16,21 @@ /datum/surgery_step/add_limb name = "replace limb" - implements = list(/obj/item/bodypart = 100) + implements = list(/obj/item/robot_parts = 100) time = 32 var/obj/item/bodypart/L = null // L because "limb" + /datum/surgery_step/add_limb/preop(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery) - var/obj/item/bodypart/aug = tool - if(aug.status != BODYPART_ROBOTIC && aug.body_zone != target_zone) - user << "[tool] isn't the right type for [parse_zone(target_zone)]." - return -1 - L = surgery.operated_bodypart + L = surgery.organ if(L) user.visible_message("[user] begins to augment [target]'s [parse_zone(user.zone_selected)].", "You begin to augment [target]'s [parse_zone(user.zone_selected)]...") else user.visible_message("[user] looks for [target]'s [parse_zone(user.zone_selected)].", "You look for [target]'s [parse_zone(user.zone_selected)]...") + //ACTUAL SURGERIES /datum/surgery/augmentation @@ -41,17 +39,20 @@ species = list(/mob/living/carbon/human) possible_locs = list("r_arm","l_arm","r_leg","l_leg","chest","head") + //SURGERY STEP SUCCESSES /datum/surgery_step/add_limb/success(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery) if(L) - user.visible_message("[user] successfully augments [target]'s [parse_zone(target_zone)]!", "You successfully augment [target]'s [parse_zone(target_zone)].") - L.change_bodypart_status(BODYPART_ROBOTIC, 1) - user.drop_item() - qdel(tool) - target.update_damage_overlays() - target.updatehealth() - add_logs(user, target, "augmented", addition="by giving him new [parse_zone(target_zone)] INTENT: [uppertext(user.a_intent)]") + if(ishuman(target)) + var/mob/living/carbon/human/H = target + user.visible_message("[user] successfully augments [target]'s [parse_zone(target_zone)]!", "You successfully augment [target]'s [parse_zone(target_zone)].") + L.change_bodypart_status(ORGAN_ROBOTIC, 1) + user.drop_item() + qdel(tool) + H.update_damage_overlays(0) + H.updatehealth() + add_logs(user, target, "augmented", addition="by giving him new [parse_zone(target_zone)] INTENT: [uppertext(user.a_intent)]") else user << "[target] has no organic [parse_zone(target_zone)] there!" return 1 @@ -82,7 +83,7 @@ user.visible_message("[user] begins to install the chainsaw onto [target].", "You begin to install the chainsaw onto [target]...") /datum/surgery_step/chainsaw/success(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery) - if(!target.get_empty_held_indexes()) + if(target.l_hand && target.r_hand) user << "You can't fit the chainsaw in while [target]'s hands are full!" return 0 else @@ -102,7 +103,9 @@ requires_organic_bodypart = 0 /datum/surgery/chainsaw_removal/can_start(mob/user, mob/living/carbon/target) - if(target.is_holding_item_of_type(/obj/item/weapon/mounted_chainsaw)) + var/list/hands = get_both_hands(target) + var/M = locate(/obj/item/weapon/mounted_chainsaw) in hands + if(M) return 1//can continue surgery else return 0//surgery will never be available @@ -116,7 +119,8 @@ user.visible_message("[user] begins sawing the chainsaw off of [target]'s arms.", "You begin removing [target]'s chainsaw...") /datum/surgery_step/chainsaw_removal/success(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery) - for(var/obj/item/weapon/mounted_chainsaw/V in target.held_items) + var/list/hands = get_both_hands(target) + for(var/obj/item/weapon/mounted_chainsaw/V in hands) target.unEquip(V, 1) user.visible_message("[user] carefully saws [target]'s arm free of the chainsaw.", "You remove the chainsaw.") return 1 diff --git a/code/modules/surgery/organ_manipulation.dm b/code/modules/surgery/organ_manipulation.dm index 912fab5caa..8e8eccc4c8 100644 --- a/code/modules/surgery/organ_manipulation.dm +++ b/code/modules/surgery/organ_manipulation.dm @@ -67,11 +67,6 @@ else if(implement_type in implements_extract) current_type = "extract" var/list/organs = target.getorganszone(target_zone) - var/mob/living/simple_animal/borer/B = target.has_brain_worms() - if(target.has_brain_worms()) - user.visible_message("[user] begins to extract [B] from [target]'s [parse_zone(target_zone)].", - "You begin to extract [B] from [target]'s [parse_zone(target_zone)]...") - return TRUE if(!organs.len) user << "There is no removeable organs in [target]'s [parse_zone(target_zone)]!" return -1 @@ -82,7 +77,7 @@ organs[O.name] = O I = input("Remove which organ?", "Surgery", null, null) as null|anything in organs - if(I && user && target && user.Adjacent(target) && user.get_active_held_item() == tool) + if(I && user && target && user.Adjacent(target) && user.get_active_hand() == tool) I = organs[I] if(!I) return -1 user.visible_message("[user] begins to extract [I] from [target]'s [parse_zone(target_zone)].", @@ -112,13 +107,6 @@ "You insert [tool] into [target]'s [parse_zone(target_zone)].") else if(current_type == "extract") - var/mob/living/simple_animal/borer/B = target.has_brain_worms() - if(B && B.victim == target) - user.visible_message("[user] successfully extracts [B] from [target]'s [parse_zone(target_zone)]!", - "You successfully extract [B] from [target]'s [parse_zone(target_zone)].") - add_logs(user, target, "surgically removed [B] from", addition="INTENT: [uppertext(user.a_intent)]") - B.leave_victim() - return FALSE if(I && I.owner == target) user.visible_message("[user] successfully extracts [I] from [target]'s [parse_zone(target_zone)]!", "You successfully extract [I] from [target]'s [parse_zone(target_zone)].") diff --git a/code/modules/surgery/organs/augments_arms.dm b/code/modules/surgery/organs/augments_arms.dm index a9dcf67455..3cdf2328b1 100644 --- a/code/modules/surgery/organs/augments_arms.dm +++ b/code/modules/surgery/organs/augments_arms.dm @@ -4,7 +4,7 @@ zone = "r_arm" slot = "r_arm_device" icon_state = "implant-toolkit" - w_class = WEIGHT_CLASS_NORMAL + w_class = 3 actions_types = list(/datum/action/item_action/organ_action/toggle) var/list/items_list = list() @@ -64,16 +64,12 @@ if(!holder || (holder in src)) return - owner.visible_message("[owner] retracts [holder] back into [owner.p_their()] [zone == "r_arm" ? "right" : "left"] arm.", + owner.visible_message("[owner] retracts [holder] back into \his [zone == "r_arm" ? "right" : "left"] arm.", "[holder] snaps back into your [zone == "r_arm" ? "right" : "left"] arm.", "You hear a short mechanical noise.") - if(istype(holder, /obj/item/device/assembly/flash/armimplant)) - var/obj/item/device/assembly/flash/F = holder - F.SetLuminosity(0) - owner.unEquip(holder, 1) - holder.forceMove(src) + holder.loc = src holder = null playsound(get_turf(owner), 'sound/mecha/mechmove03.ogg', 50, 1) @@ -84,16 +80,13 @@ holder = item holder.flags |= NODROP - holder.resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | UNACIDABLE | ACID_PROOF + holder.unacidable = 1 holder.slot_flags = null - holder.w_class = WEIGHT_CLASS_HUGE + holder.w_class = 5 holder.materials = null - if(istype(holder, /obj/item/device/assembly/flash/armimplant)) - var/obj/item/device/assembly/flash/F = holder - F.SetLuminosity(7) - - var/obj/item/arm_item = owner.get_active_held_item() + var/arm_slot = (zone == "r_arm" ? slot_r_hand : slot_l_hand) + var/obj/item/arm_item = owner.get_item_by_slot(arm_slot) if(arm_item) if(!owner.unEquip(arm_item)) @@ -102,15 +95,15 @@ else owner << "You drop [arm_item] to activate [src]!" - var/result = (zone == "r_arm" ? owner.put_in_r_hand(holder) : owner.put_in_l_hand(holder)) - if(!result) + if(zone == "r_arm" ? !owner.put_in_r_hand(holder) : !owner.put_in_l_hand(holder)) owner << "Your [src] fails to activate!" return // Activate the hand that now holds our item. - owner.swap_hand(result)//... or the 1st hand if the index gets lost somehow + if(zone == "r_arm" ? owner.hand : !owner.hand) + owner.swap_hand() - owner.visible_message("[owner] extends [holder] from [owner.p_their()] [zone == "r_arm" ? "right" : "left"] arm.", + owner.visible_message("[owner] extends [holder] from \his [zone == "r_arm" ? "right" : "left"] arm.", "You extend [holder] from your [zone == "r_arm" ? "right" : "left"] arm.", "You hear a short mechanical noise.") playsound(get_turf(owner), 'sound/mecha/mechmove03.ogg', 50, 1) @@ -121,7 +114,8 @@ return // You can emag the arm-mounted implant by activating it while holding emag in it's hand. - if(istype(owner.get_active_held_item(), /obj/item/weapon/card/emag) && emag_act()) + var/arm_slot = (zone == "r_arm" ? slot_r_hand : slot_l_hand) + if(istype(owner.get_item_by_slot(arm_slot), /obj/item/weapon/card/emag) && emag_act()) return if(!holder || (holder in src)) @@ -158,8 +152,7 @@ origin_tech = "materials=4;combat=4;biotech=4;powerstorage=4;syndicate=3" holder = /obj/item/weapon/gun/energy/laser/mounted -/obj/item/organ/cyberimp/arm/gun/laser/l - zone = "l_arm" +/obj/item/organ/cyberimp/arm/gun/laser/l/zone = "l_arm" /obj/item/organ/cyberimp/arm/gun/taser @@ -167,10 +160,9 @@ desc = "A variant of the arm cannon implant that fires electrodes and disabler shots. The cannon emerges from the subject's arm and remains inside when not in use." icon_state = "arm_taser" origin_tech = "materials=5;combat=5;biotech=4;powerstorage=4" - holder = /obj/item/weapon/gun/energy/e_gun/advtaser/mounted + holder = /obj/item/weapon/gun/energy/gun/advtaser/mounted -/obj/item/organ/cyberimp/arm/gun/taser/l - zone = "l_arm" +/obj/item/organ/cyberimp/arm/gun/taser/l/zone = "l_arm" /obj/item/organ/cyberimp/arm/toolset @@ -180,8 +172,7 @@ contents = newlist(/obj/item/weapon/screwdriver/cyborg, /obj/item/weapon/wrench/cyborg, /obj/item/weapon/weldingtool/largetank/cyborg, /obj/item/weapon/crowbar/cyborg, /obj/item/weapon/wirecutters/cyborg, /obj/item/device/multitool/cyborg) -/obj/item/organ/cyberimp/arm/toolset/l - zone = "l_arm" +/obj/item/organ/cyberimp/arm/toolset/l/zone = "l_arm" /obj/item/organ/cyberimp/arm/toolset/emag_act() if(!(locate(/obj/item/weapon/kitchen/knife/combat/cyborg) in items_list)) @@ -189,51 +180,3 @@ items_list += new /obj/item/weapon/kitchen/knife/combat/cyborg(src) return 1 return 0 - -/obj/item/organ/cyberimp/arm/esword - name = "arm-mounted energy blade" - desc = "An illegal, and highly dangerous cybernetic implant that can project a deadly blade of concentrated enregy." - contents = newlist(/obj/item/weapon/melee/energy/blade/hardlight) - origin_tech = "materials=4;combat=5;biotech=3;powerstorage=2;syndicate=5" - -/obj/item/organ/cyberimp/arm/medibeam - name = "integrated medical beamgun" - desc = "A cybernetic implant that allows the user to project a healing beam from their hand." - contents = newlist(/obj/item/weapon/gun/medbeam) - origin_tech = "materials=5;combat=2;biotech=5;powerstorage=4;syndicate=1" - -/obj/item/organ/cyberimp/arm/flash - name = "integrated high-intensity photon projector" //Why not - desc = "An integrated projector mounted onto a user's arm, that is able to be used as a powerful flash." - contents = newlist(/obj/item/device/assembly/flash/armimplant) - origin_tech = "materials=4;combat=3;biotech=4;magnets=4;powerstorage=3" - -/obj/item/organ/cyberimp/arm/flash/New() - ..() - if(locate(/obj/item/device/assembly/flash/armimplant) in items_list) - var/obj/item/device/assembly/flash/armimplant/F = locate(/obj/item/device/assembly/flash/armimplant) in items_list - F.I = src - -/obj/item/organ/cyberimp/arm/baton - name = "arm electrification implant" - desc = "An illegal combat implant that allows the user to administer disabling shocks from their arm." - contents = newlist(/obj/item/borg/stun) - origin_tech = "materials=3;combat=5;biotech=4;powerstorage=4;syndicate=3" - -/obj/item/organ/cyberimp/arm/combat - name = "combat cybernetics implant" - desc = "A powerful cybernetic implant that contains combat modules built into the user's arm" - contents = newlist(/obj/item/weapon/melee/energy/blade/hardlight, /obj/item/weapon/gun/medbeam, /obj/item/borg/stun, /obj/item/device/assembly/flash/armimplant) - origin_tech = "materials=5;combat=7;biotech=5;powerstorage=5;syndicate=6;programming=5" - -/obj/item/organ/cyberimp/arm/combat/New() - ..() - if(locate(/obj/item/device/assembly/flash/armimplant) in items_list) - var/obj/item/device/assembly/flash/armimplant/F = locate(/obj/item/device/assembly/flash/armimplant) in items_list - F.I = src - -/obj/item/organ/cyberimp/arm/surgery - name = "surgical toolset implant" - desc = "A set of surgical tools hidden behind a concealed panel on the user's arm" - contents = newlist(/obj/item/weapon/retractor, /obj/item/weapon/hemostat, /obj/item/weapon/cautery, /obj/item/weapon/surgicaldrill, /obj/item/weapon/scalpel, /obj/item/weapon/circular_saw, /obj/item/weapon/surgical_drapes) - origin_tech = "materials=3;engineering=3;biotech=3;programming=2;magnets=3" diff --git a/code/modules/surgery/organs/augments_chest.dm b/code/modules/surgery/organs/augments_chest.dm index 864eababbd..2e1d167797 100644 --- a/code/modules/surgery/organs/augments_chest.dm +++ b/code/modules/surgery/organs/augments_chest.dm @@ -14,7 +14,7 @@ var/synthesizing = 0 var/poison_amount = 5 slot = "stomach" - origin_tech = "materials=2;powerstorage=2;biotech=2" + origin_tech = "materials=4;powerstorage=5;biotech=4" /obj/item/organ/cyberimp/chest/nutriment/on_life() if(synthesizing) @@ -41,14 +41,14 @@ implant_color = "#006607" hunger_threshold = NUTRITION_LEVEL_HUNGRY poison_amount = 10 - origin_tech = "materials=4;powerstorage=3;biotech=3" + origin_tech = "materials=4;powerstorage=5;biotech=5" /obj/item/organ/cyberimp/chest/reviver name = "Reviver implant" desc = "This implant will attempt to revive you if you lose consciousness. For the faint of heart!" icon_state = "chest_implant" implant_color = "#AD0000" - origin_tech = "materials=5;programming=4;biotech=4" + origin_tech = "materials=5;programming=4;biotech=6" slot = "heartdrive" var/revive_cost = 0 var/reviving = 0 @@ -96,7 +96,7 @@ else cooldown += 200 - if(ishuman(owner)) + if(istype(owner, /mob/living/carbon/human)) var/mob/living/carbon/human/H = owner if(H.stat != DEAD && prob(50 / severity)) H.heart_attack = TRUE @@ -121,7 +121,7 @@ implant_overlay = null implant_color = null actions_types = list(/datum/action/item_action/organ_action/toggle) - w_class = WEIGHT_CLASS_NORMAL + w_class = 3 var/on = 0 var/datum/effect_system/trail_follow/ion/ion_trail @@ -197,4 +197,3 @@ toggle(silent=1) return 0 - diff --git a/code/modules/surgery/organs/augments_eyes.dm b/code/modules/surgery/organs/augments_eyes.dm index f5bf53e30c..50c3875f25 100644 --- a/code/modules/surgery/organs/augments_eyes.dm +++ b/code/modules/surgery/organs/augments_eyes.dm @@ -5,7 +5,7 @@ implant_overlay = "eye_implant_overlay" slot = "eye_sight" zone = "eyes" - w_class = WEIGHT_CLASS_TINY + w_class = 1 var/sight_flags = 0 var/dark_view = 0 @@ -18,7 +18,7 @@ /obj/item/organ/cyberimp/eyes/Insert(var/mob/living/carbon/M, var/special = 0) ..() - if(ishuman(owner) && eye_color) + if(istype(owner, /mob/living/carbon/human) && eye_color) var/mob/living/carbon/human/HMN = owner old_eye_color = HMN.eye_color HMN.eye_color = eye_color @@ -30,7 +30,7 @@ /obj/item/organ/cyberimp/eyes/Remove(var/mob/living/carbon/M, var/special = 0) M.sight ^= sight_flags - if(ishuman(M) && eye_color) + if(istype(M,/mob/living/carbon/human) && eye_color) var/mob/living/carbon/human/HMN = owner HMN.eye_color = old_eye_color HMN.regenerate_icons() @@ -43,7 +43,7 @@ if(prob(10 * severity)) return owner << "Static obfuscates your vision!" - owner.flash_act(visual = 1) + owner.flash_eyes(visual = 1) /obj/item/organ/cyberimp/eyes/xray name = "X-ray implant" diff --git a/code/modules/surgery/organs/augments_internal.dm b/code/modules/surgery/organs/augments_internal.dm index 402d74038e..55a3ff4015 100644 --- a/code/modules/surgery/organs/augments_internal.dm +++ b/code/modules/surgery/organs/augments_internal.dm @@ -26,7 +26,7 @@ icon_state = "brain_implant" implant_overlay = "brain_implant_overlay" zone = "head" - w_class = WEIGHT_CLASS_TINY + w_class = 1 /obj/item/organ/cyberimp/brain/emp_act(severity) if(!owner) @@ -41,7 +41,10 @@ name = "anti-drop implant" desc = "This cybernetic brain implant will allow you to force your hand muscles to contract, preventing item dropping. Twitch ear to toggle." var/active = 0 - var/list/stored_items = list() + var/l_hand_ignore = 0 + var/r_hand_ignore = 0 + var/obj/item/l_hand_obj = null + var/obj/item/r_hand_obj = null implant_color = "#DE7E00" slot = "brain_antidrop" origin_tech = "materials=4;programming=5;biotech=4" @@ -50,41 +53,66 @@ /obj/item/organ/cyberimp/brain/anti_drop/ui_action_click() active = !active if(active) - for(var/obj/item/I in owner.held_items) - if(!(I.flags & NODROP)) - stored_items += I + l_hand_obj = owner.l_hand + r_hand_obj = owner.r_hand + if(l_hand_obj) + if(owner.l_hand.flags & NODROP) + l_hand_ignore = 1 + else + owner.l_hand.flags |= NODROP + l_hand_ignore = 0 - var/list/L = owner.get_empty_held_indexes() - if(L && L.len == owner.held_items.len) + if(r_hand_obj) + if(owner.r_hand.flags & NODROP) + r_hand_ignore = 1 + else + owner.r_hand.flags |= NODROP + r_hand_ignore = 0 + + if(!l_hand_obj && !r_hand_obj) owner << "You are not holding any items, your hands relax..." active = 0 - stored_items = list() else - for(var/obj/item/I in stored_items) - owner << "Your [owner.get_held_index_name(owner.get_held_index_of_item(I))]'s grip tightens." + var/msg = 0 + msg += !l_hand_ignore && l_hand_obj ? 1 : 0 + msg += !r_hand_ignore && r_hand_obj ? 2 : 0 + switch(msg) + if(1) + owner << "Your left hand's grip tightens." + if(2) + owner << "Your right hand's grip tightens." + if(3) + owner << "Both of your hand's grips tighten." else release_items() owner << "Your hands relax..." - + l_hand_obj = null + r_hand_obj = null /obj/item/organ/cyberimp/brain/anti_drop/emp_act(severity) if(!owner) return var/range = severity ? 10 : 5 var/atom/A + var/obj/item/L_item = owner.l_hand + var/obj/item/R_item = owner.r_hand + release_items() ..() - for(var/obj/item/I in stored_items) + if(L_item) A = pick(oview(range)) - I.throw_at(A, range, 2) - owner << "Your [owner.get_held_index_name(owner.get_held_index_of_item(I))] spasms and throws the [I.name]!" - stored_items = list() - + L_item.throw_at(A, range, 2) + owner << "Your left arm spasms and throws the [L_item.name]!" + if(R_item) + A = pick(oview(range)) + R_item.throw_at(A, range, 2) + owner << "Your right arm spasms and throws the [R_item.name]!" /obj/item/organ/cyberimp/brain/anti_drop/proc/release_items() - for(var/obj/item/I in stored_items) - I.flags ^= NODROP - + if(!l_hand_ignore && l_hand_obj in owner.contents) + l_hand_obj.flags ^= NODROP + if(!r_hand_ignore && r_hand_obj in owner.contents) + r_hand_obj.flags ^= NODROP /obj/item/organ/cyberimp/brain/anti_drop/Remove(var/mob/living/carbon/M, special = 0) if(active) @@ -128,7 +156,7 @@ desc = "This simple implant adds an internals connector to your back, allowing you to use internals without a mask and protecting you from being choked." icon_state = "implant_mask" slot = "breathing_tube" - w_class = WEIGHT_CLASS_TINY + w_class = 1 origin_tech = "materials=2;biotech=3" /obj/item/organ/cyberimp/mouth/breathing_tube/emp_act(severity) diff --git a/code/modules/surgery/organs/autoimplanter.dm b/code/modules/surgery/organs/autoimplanter.dm index b8d8ea21f0..230442db23 100644 --- a/code/modules/surgery/organs/autoimplanter.dm +++ b/code/modules/surgery/organs/autoimplanter.dm @@ -5,7 +5,7 @@ desc = "A device that automatically injects a cyber-implant into the user without the hassle of extensive surgery. It has a slot to insert implants and a screwdriver slot for removing accidentally added implants." icon_state = "autoimplanter" item_state = "walkietalkie"//left as this so as to intentionally not have inhands - w_class = WEIGHT_CLASS_SMALL + w_class = 2 var/obj/item/organ/storedorgan var/organ_type = /obj/item/organ/cyberimp var/uses = INFINITE @@ -51,7 +51,7 @@ var/turf/open/floorloc = get_turf(user) floorloc.contents += contents user << "You remove the [storedorgan] from [src]." - playsound(get_turf(user), I.usesound, 50, 1) + playsound(get_turf(user), 'sound/items/Screwdriver.ogg', 50, 1) storedorgan = null if(uses != INFINITE) uses-- diff --git a/code/modules/surgery/organs/helpers.dm b/code/modules/surgery/organs/helpers.dm index 9d56e834fa..793d887ec6 100644 --- a/code/modules/surgery/organs/helpers.dm +++ b/code/modules/surgery/organs/helpers.dm @@ -1,17 +1,17 @@ -/mob/proc/getorgan(typepath) +mob/proc/getorgan(typepath) return -/mob/proc/getorganszone(zone) +mob/proc/getorganszone(zone) return -/mob/proc/getorganslot(slot) +mob/proc/getorganslot(slot) return -/mob/living/carbon/getorgan(typepath) +mob/living/carbon/getorgan(typepath) return (locate(typepath) in internal_organs) -/mob/living/carbon/getorganszone(zone, subzones = 0) +mob/living/carbon/getorganszone(zone, var/subzones = 0) var/list/returnorg = list() if(subzones) // Include subzones - groin for chest, eyes and mouth for head @@ -20,11 +20,14 @@ if(zone == "chest") returnorg = getorganszone("groin") - for(var/X in internal_organs) - var/obj/item/organ/O = X + for(var/obj/item/organ/O in internal_organs) if(zone == O.zone) returnorg += O return returnorg -/mob/living/carbon/getorganslot(slot) +mob/living/carbon/getorganslot(slot) return internal_organs_slot[slot] + + +proc/isorgan(atom/A) + return istype(A, /obj/item/organ) \ No newline at end of file diff --git a/code/modules/surgery/organs/organ_internal.dm b/code/modules/surgery/organs/organ_internal.dm index 02bccedf31..acb27d5c4c 100644 --- a/code/modules/surgery/organs/organ_internal.dm +++ b/code/modules/surgery/organs/organ_internal.dm @@ -4,7 +4,8 @@ var/mob/living/carbon/owner = null var/status = ORGAN_ORGANIC origin_tech = "biotech=3" - w_class = WEIGHT_CLASS_SMALL + force = 1 + w_class = 2 throwforce = 0 var/zone = "chest" var/slot @@ -164,7 +165,7 @@ /obj/item/organ/heart/cursed name = "cursed heart" - desc = "A heart that, when inserted, will force you to pump it manually." + desc = "it needs to be pumped..." icon_state = "cursedheart-off" icon_base = "cursedheart" origin_tech = "biotech=6" @@ -192,7 +193,7 @@ if(world.time > (last_pump + pump_delay)) if(ishuman(owner) && owner.client) //While this entire item exists to make people suffer, they can't control disconnects. var/mob/living/carbon/human/H = owner - if(H.dna && !(NOBLOOD in H.dna.species.species_traits)) + if(H.dna && !(NOBLOOD in H.dna.species.specflags)) H.blood_volume = max(H.blood_volume - blood_loss, 0) H << "You have to keep pumping your blood!" if(add_colour) @@ -207,7 +208,7 @@ owner << "Your heart has been replaced with a cursed one, you have to pump this one manually otherwise you'll die!" /datum/action/item_action/organ_action/cursed_heart - name = "Pump your blood" + name = "pump your blood" //You are now brea- pumping blood manually /datum/action/item_action/organ_action/cursed_heart/Trigger() @@ -225,7 +226,7 @@ var/mob/living/carbon/human/H = owner if(istype(H)) - if(H.dna && !(NOBLOOD in H.dna.species.species_traits)) + if(H.dna && !(NOBLOOD in H.dna.species.specflags)) H.blood_volume = min(H.blood_volume + cursed_heart.blood_loss*0.5, BLOOD_VOLUME_MAXIMUM) H.remove_client_colour(/datum/client_colour/cursed_heart_blood) cursed_heart.add_colour = TRUE @@ -238,15 +239,7 @@ priority = 100 //it's an indicator you're dieing, so it's very high priority colour = "red" -#define HUMAN_MAX_OXYLOSS 3 -#define HUMAN_CRIT_MAX_OXYLOSS (SSmob.wait/30) -#define HEAT_GAS_DAMAGE_LEVEL_1 2 -#define HEAT_GAS_DAMAGE_LEVEL_2 4 -#define HEAT_GAS_DAMAGE_LEVEL_3 8 -#define COLD_GAS_DAMAGE_LEVEL_1 0.5 -#define COLD_GAS_DAMAGE_LEVEL_2 1.5 -#define COLD_GAS_DAMAGE_LEVEL_3 3 /obj/item/organ/lungs name = "lungs" @@ -254,266 +247,13 @@ zone = "chest" slot = "lungs" gender = PLURAL - w_class = WEIGHT_CLASS_NORMAL - var/list/breathlevels = list("safe_oxygen_min" = 16,"safe_oxygen_max" = 0,"safe_co2_min" = 0,"safe_co2_max" = 10, - "safe_toxins_min" = 0,"safe_toxins_max" = 0.05,"SA_para_min" = 1,"SA_sleep_min" = 5,"BZ_trip_balls_min" = 1) - - //Breath damage - - var/safe_oxygen_min = 16 // Minimum safe partial pressure of O2, in kPa - var/safe_oxygen_max = 0 - var/safe_co2_min = 0 - var/safe_co2_max = 10 // Yes it's an arbitrary value who cares? - var/safe_toxins_min = 0 - var/safe_toxins_max = 0.05 - var/SA_para_min = 1 //Sleeping agent - var/SA_sleep_min = 5 //Sleeping agent - var/BZ_trip_balls_min = 1 //BZ gas. - - var/oxy_breath_dam_min = 1 - var/oxy_breath_dam_max = 10 - var/co2_breath_dam_min = 1 - var/co2_breath_dam_max = 10 - var/tox_breath_dam_min = MIN_PLASMA_DAMAGE - var/tox_breath_dam_max = MAX_PLASMA_DAMAGE - - - -/obj/item/organ/lungs/proc/check_breath(datum/gas_mixture/breath, var/mob/living/carbon/human/H) - if((H.status_flags & GODMODE)) - return - - var/species_traits = list() - if(H && H.dna && H.dna.species && H.dna.species.species_traits) - species_traits = H.dna.species.species_traits - - if(!breath || (breath.total_moles() == 0)) - if(H.reagents.has_reagent("epinephrine")) - return - if(H.health >= HEALTH_THRESHOLD_CRIT) - H.adjustOxyLoss(HUMAN_MAX_OXYLOSS) - else if(!(NOCRITDAMAGE in species_traits)) - H.adjustOxyLoss(HUMAN_CRIT_MAX_OXYLOSS) - - H.failed_last_breath = 1 - if(safe_oxygen_min) - H.throw_alert("oxy", /obj/screen/alert/oxy) - else if(safe_toxins_min) - H.throw_alert("not_enough_tox", /obj/screen/alert/not_enough_tox) - else if(safe_co2_min) - H.throw_alert("not_enough_co2", /obj/screen/alert/not_enough_co2) - return 0 - - var/gas_breathed = 0 - - var/list/breath_gases = breath.gases - - breath.assert_gases("o2", "plasma", "co2", "n2o", "bz") - - //Partial pressures in our breath - var/O2_pp = breath.get_breath_partial_pressure(breath_gases["o2"][MOLES]) - var/Toxins_pp = breath.get_breath_partial_pressure(breath_gases["plasma"][MOLES]) - var/CO2_pp = breath.get_breath_partial_pressure(breath_gases["co2"][MOLES]) - - - //-- OXY --// - - //Too much oxygen! //Yes, some species may not like it. - if(safe_oxygen_max) - if(O2_pp > safe_oxygen_max) - var/ratio = (breath_gases["o2"][MOLES]/safe_oxygen_max) * 10 - H.adjustOxyLoss(Clamp(ratio,oxy_breath_dam_min,oxy_breath_dam_max)) - H.throw_alert("too_much_oxy", /obj/screen/alert/too_much_oxy) - else - H.clear_alert("too_much_oxy") - - //Too little oxygen! - if(safe_oxygen_min) - if(O2_pp < safe_oxygen_min) - gas_breathed = handle_too_little_breath(H,O2_pp,safe_oxygen_min,breath_gases["o2"][MOLES]) - H.throw_alert("oxy", /obj/screen/alert/oxy) - else - H.failed_last_breath = 0 - if(H.getOxyLoss()) - H.adjustOxyLoss(-5) - gas_breathed = breath_gases["o2"][MOLES] - H.clear_alert("oxy") - - //Exhale - breath_gases["o2"][MOLES] -= gas_breathed - breath_gases["co2"][MOLES] += gas_breathed - gas_breathed = 0 - - - //-- CO2 --// - - //CO2 does not affect failed_last_breath. So if there was enough oxygen in the air but too much co2, this will hurt you, but only once per 4 ticks, instead of once per tick. - if(safe_co2_max) - if(CO2_pp > safe_co2_max) - if(!H.co2overloadtime) // If it's the first breath with too much CO2 in it, lets start a counter, then have them pass out after 12s or so. - H.co2overloadtime = world.time - else if(world.time - H.co2overloadtime > 120) - H.Paralyse(3) - H.adjustOxyLoss(3) // Lets hurt em a little, let them know we mean business - if(world.time - H.co2overloadtime > 300) // They've been in here 30s now, lets start to kill them for their own good! - H.adjustOxyLoss(8) - H.throw_alert("too_much_co2", /obj/screen/alert/too_much_co2) - if(prob(20)) // Lets give them some chance to know somethings not right though I guess. - H.emote("cough") - - else - H.co2overloadtime = 0 - H.clear_alert("too_much_co2") - - //Too little CO2! - if(breathlevels["safe_co2_min"]) - if(CO2_pp < safe_co2_min) - gas_breathed = handle_too_little_breath(H,CO2_pp, safe_co2_min,breath_gases["co2"][MOLES]) - H.throw_alert("not_enough_co2", /obj/screen/alert/not_enough_co2) - else - H.failed_last_breath = 0 - H.adjustOxyLoss(-5) - gas_breathed = breath_gases["co2"][MOLES] - H.clear_alert("not_enough_co2") - - //Exhale - breath_gases["co2"][MOLES] -= gas_breathed - breath_gases["o2"][MOLES] += gas_breathed - gas_breathed = 0 - - - //-- TOX --// - - //Too much toxins! - if(safe_toxins_max) - if(Toxins_pp > safe_toxins_max) - var/ratio = (breath_gases["plasma"][MOLES]/safe_toxins_max) * 10 - if(H.reagents) - H.reagents.add_reagent("plasma", Clamp(ratio, tox_breath_dam_min, tox_breath_dam_max)) - H.throw_alert("tox_in_air", /obj/screen/alert/tox_in_air) - else - H.clear_alert("tox_in_air") - - - //Too little toxins! - if(safe_toxins_min) - if(Toxins_pp < safe_toxins_min) - gas_breathed = handle_too_little_breath(H,Toxins_pp, safe_toxins_min, breath_gases["plasma"][MOLES]) - H.throw_alert("not_enough_tox", /obj/screen/alert/not_enough_tox) - else - H.failed_last_breath = 0 - H.adjustOxyLoss(-5) - gas_breathed = breath_gases["plasma"][MOLES] - H.clear_alert("not_enough_tox") - - //Exhale - breath_gases["plasma"][MOLES] -= gas_breathed - breath_gases["co2"][MOLES] += gas_breathed - gas_breathed = 0 - - - //-- TRACES --// - - if(breath) // If there's some other shit in the air lets deal with it here. - - // N2O - - var/SA_pp = breath.get_breath_partial_pressure(breath_gases["n2o"][MOLES]) - if(SA_pp > SA_para_min) // Enough to make us paralysed for a bit - H.Paralyse(3) // 3 gives them one second to wake up and run away a bit! - if(SA_pp > SA_sleep_min) // Enough to make us sleep as well - H.Sleeping(max(H.sleeping+2, 10)) - else if(SA_pp > 0.01) // There is sleeping gas in their lungs, but only a little, so give them a bit of a warning - if(prob(20)) - H.emote(pick("giggle", "laugh")) - - // BZ - - var/bz_pp = breath.get_breath_partial_pressure(breath_gases["bz"][MOLES]) - if(bz_pp > BZ_trip_balls_min) - H.hallucination += 20 - if(prob(33)) - H.adjustBrainLoss(3) - else if(bz_pp > 0.01) - H.hallucination += 5//Removed at 2 per tick so this will slowly build up - handle_breath_temperature(breath, H) - breath.garbage_collect() - - return 1 - - -/obj/item/organ/lungs/proc/handle_too_little_breath(mob/living/carbon/human/H = null,breath_pp = 0, safe_breath_min = 0, true_pp = 0) - . = 0 - if(!H || !safe_breath_min) //the other args are either: Ok being 0 or Specifically handled. - return 0 - - if(prob(20)) - H.emote("gasp") - if(breath_pp > 0) - var/ratio = safe_breath_min/breath_pp - H.adjustOxyLoss(min(5*ratio, HUMAN_MAX_OXYLOSS)) // Don't fuck them up too fast (space only does HUMAN_MAX_OXYLOSS after all! - H.failed_last_breath = 1 - . = true_pp*ratio/6 - else - H.adjustOxyLoss(HUMAN_MAX_OXYLOSS) - H.failed_last_breath = 1 - - -/obj/item/organ/lungs/proc/handle_breath_temperature(datum/gas_mixture/breath, mob/living/carbon/human/H) // called by human/life, handles temperatures - if(abs(310.15 - breath.temperature) > 50) - - var/species_traits = list() - if(H && H.dna && H.dna.species && H.dna.species.species_traits) - species_traits = H.dna.species.species_traits - - if(!(mutations_list[COLDRES] in H.dna.mutations) && !(RESISTCOLD in species_traits)) // COLD DAMAGE - switch(breath.temperature) - if(-INFINITY to 120) - H.apply_damage(COLD_GAS_DAMAGE_LEVEL_3, BURN, "head") - if(120 to 200) - H.apply_damage(COLD_GAS_DAMAGE_LEVEL_2, BURN, "head") - if(200 to 260) - H.apply_damage(COLD_GAS_DAMAGE_LEVEL_1, BURN, "head") - - if(!(RESISTHOT in species_traits)) // HEAT DAMAGE - switch(breath.temperature) - if(360 to 400) - H.apply_damage(HEAT_GAS_DAMAGE_LEVEL_1, BURN, "head") - if(400 to 1000) - H.apply_damage(HEAT_GAS_DAMAGE_LEVEL_2, BURN, "head") - if(1000 to INFINITY) - H.apply_damage(HEAT_GAS_DAMAGE_LEVEL_3, BURN, "head") - - - + w_class = 3 /obj/item/organ/lungs/prepare_eat() var/obj/S = ..() S.reagents.add_reagent("salbutamol", 5) return S - -/obj/item/organ/lungs/plasmaman - name = "plasma filter" - - safe_oxygen_min = 0 //We don't breath this - safe_toxins_min = 16 //We breath THIS! - safe_toxins_max = 0 - - - - - -#undef HUMAN_MAX_OXYLOSS -#undef HUMAN_CRIT_MAX_OXYLOSS -#undef HEAT_GAS_DAMAGE_LEVEL_1 -#undef HEAT_GAS_DAMAGE_LEVEL_2 -#undef HEAT_GAS_DAMAGE_LEVEL_3 - -#undef COLD_GAS_DAMAGE_LEVEL_1 -#undef COLD_GAS_DAMAGE_LEVEL_2 -#undef COLD_GAS_DAMAGE_LEVEL_3 - /obj/item/organ/tongue name = "tongue" desc = "A fleshy muscle mostly used for lying." @@ -618,10 +358,10 @@ name = "alien tongue" desc = "According to leading xenobiologists the evolutionary benefit of having a second mouth in your mouth is \"that it looks badass\"." icon_state = "tonguexeno" - say_mod = "hiss" + say_mod = "hisses" /obj/item/organ/tongue/alien/TongueSpeech(var/message) - playsound(owner, "hiss", 25, 1, 1) + playsound(owner, "hiss", 15, 1, 1) return message /obj/item/organ/tongue/bone @@ -693,3 +433,13 @@ if(inflamed) S.reagents.add_reagent("????", 5) return S + +/obj/item/organ/tongue/yautja + name = "yautja tongue" + desc = "You're having a hard time even deciding if this is a tongue or not." + icon_state = "tongueyautja" + say_mod = "clicks" + +/obj/item/organ/tongue/yautja/TongueSpeech(var/message) + playsound(owner, "predsay", 50, 0, 1) + return message \ No newline at end of file diff --git a/code/modules/surgery/plastic_surgery.dm b/code/modules/surgery/plastic_surgery.dm index 15a54b6e13..e250f8ab84 100644 --- a/code/modules/surgery/plastic_surgery.dm +++ b/code/modules/surgery/plastic_surgery.dm @@ -20,7 +20,7 @@ var/oldname = target.real_name target.real_name = target.dna.species.random_name(target.gender,1) var/newname = target.real_name //something about how the code handles names required that I use this instead of target.real_name - user.visible_message("[user] alters [oldname]'s appearance completely, [target.p_they()] are now [newname]!", "You alter [oldname]'s appearance completely, [target.p_they()] are now [newname].") + user.visible_message("[user] alters [oldname]'s appearance completely, they are now [newname]!", "You alter [oldname]'s appearance completely, they are now [newname].") if(ishuman(target)) var/mob/living/carbon/human/H = target H.sec_hud_set_ID() diff --git a/code/modules/surgery/prosthetic_replacement.dm b/code/modules/surgery/prosthetic_replacement.dm index 5341c2bf09..2a4e4a4fbf 100644 --- a/code/modules/surgery/prosthetic_replacement.dm +++ b/code/modules/surgery/prosthetic_replacement.dm @@ -1,50 +1,51 @@ /datum/surgery/prosthetic_replacement name = "prosthetic replacement" steps = list(/datum/surgery_step/incise, /datum/surgery_step/clamp_bleeders, /datum/surgery_step/retract_skin, /datum/surgery_step/add_prosthetic) - species = list(/mob/living/carbon/human, /mob/living/carbon/monkey) + species = list(/mob/living/carbon/human) possible_locs = list("r_arm", "l_arm", "l_leg", "r_leg", "head") requires_bodypart = FALSE //need a missing limb /datum/surgery/prosthetic_replacement/can_start(mob/user, mob/living/carbon/target) - if(!iscarbon(target)) + if(!ishuman(target)) return 0 - var/mob/living/carbon/C = target - if(!C.get_bodypart(user.zone_selected)) //can only start if limb is missing + var/mob/living/carbon/human/H = target + if(!H.get_bodypart(user.zone_selected)) //can only start if limb is missing return 1 /datum/surgery_step/add_prosthetic name = "add prosthetic" - implements = list(/obj/item/bodypart = 100) + implements = list(/obj/item/robot_parts = 100, /obj/item/bodypart = 100) time = 32 var/organ_rejection_dam = 0 /datum/surgery_step/add_prosthetic/preop(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery) - var/obj/item/bodypart/BP = tool - if(ismonkey(target))// monkey patient only accept organic monkey limbs - if(BP.status == BODYPART_ROBOTIC || BP.animal_origin != MONKEY_BODYPART) - user << "[BP] doesn't match the patient's morphology." - return -1 - if(BP.status != BODYPART_ROBOTIC) - organ_rejection_dam = 10 - if(ishuman(target)) - if(BP.animal_origin) - user << "[BP] doesn't match the patient's morphology." - return -1 - var/mob/living/carbon/human/H = target - if(H.dna.species.id != BP.species_id) + var/tool_body_zone + if(istype(tool, /obj/item/robot_parts)) + var/obj/item/robot_parts/RP = tool + tool_body_zone = RP.body_zone + else if(istype(tool, /obj/item/bodypart)) + var/obj/item/bodypart/L = tool + if(L.status != ORGAN_ROBOTIC) + organ_rejection_dam = 10 + if(target.dna.species.id != L.species_id) organ_rejection_dam = 30 - - if(target_zone == BP.body_zone) //so we can't replace a leg with an arm, or a human arm with a monkey arm. + tool_body_zone = L.body_zone + if(target_zone == tool_body_zone) //so we can't replace a leg with an arm. user.visible_message("[user] begins to replace [target]'s [parse_zone(target_zone)].", "You begin to replace [target]'s [parse_zone(target_zone)]...") else user << "[tool] isn't the right type for [parse_zone(target_zone)]." - return -1 /datum/surgery_step/add_prosthetic/success(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery) - var/obj/item/bodypart/L = tool - user.drop_item() + var/obj/item/bodypart/L + if(istype(tool, /obj/item/robot_parts)) + L = newBodyPart(target_zone, 1, 1) + user.drop_item() + qdel(tool) + else + L = tool + user.drop_item() L.attach_limb(target) if(organ_rejection_dam) target.adjustToxLoss(organ_rejection_dam) diff --git a/code/modules/surgery/remove_embedded_object.dm b/code/modules/surgery/remove_embedded_object.dm index a4b0b67a1a..7117d276a7 100644 --- a/code/modules/surgery/remove_embedded_object.dm +++ b/code/modules/surgery/remove_embedded_object.dm @@ -12,7 +12,7 @@ /datum/surgery_step/remove_object/preop(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery) - L = surgery.operated_bodypart + L = surgery.organ if(L) user.visible_message("[user] looks for objects embedded in [target]'s [parse_zone(user.zone_selected)].", "You look for objects embedded in [target]'s [parse_zone(user.zone_selected)]...") else @@ -30,7 +30,7 @@ L.embedded_objects -= I if(objects > 0) - user.visible_message("[user] sucessfully removes [objects] objects from [H]'s [L]!", "You successfully remove [objects] objects from [H]'s [L.name].") + user.visible_message("[user] sucessfully removes [objects] objects from [H]'s [L]!", "You sucessfully remove [objects] objects from [H]'s [L.name].") else user << "You find no objects embedded in [H]'s [L]!" diff --git a/code/modules/surgery/surgery.dm b/code/modules/surgery/surgery.dm index 3ff54cabde..f340a4cf34 100644 --- a/code/modules/surgery/surgery.dm +++ b/code/modules/surgery/surgery.dm @@ -1,37 +1,16 @@ /datum/surgery var/name = "surgery" var/status = 1 - var/list/steps = list() //Steps in a surgery - var/step_in_progress = 0 //Actively performing a Surgery - var/can_cancel = 1 //Can cancel this surgery after step 1 with cautery - var/list/species = list(/mob/living/carbon/human) //Acceptable Species - var/location = "chest" //Surgery location - var/requires_organic_bodypart = 1 //Prevents you from performing an operation on robotic limbs - var/list/possible_locs = list() //Multiple locations - var/ignore_clothes = 0 //This surgery ignores clothes - var/mob/living/carbon/target //Operation target mob - var/obj/item/bodypart/operated_bodypart //Operable body part - var/requires_bodypart = TRUE //Surgery available only when a bodypart is present, or only when it is missing. - var/success_multiplier = 0 //Step success propability multiplier - - -/datum/surgery/New(surgery_target, surgery_location, surgery_bodypart) - ..() - if(surgery_target) - target = surgery_target - target.surgeries += src - if(surgery_location) - location = surgery_location - if(surgery_bodypart) - operated_bodypart = surgery_bodypart - -/datum/surgery/Destroy() - if(target) - target.surgeries -= src - target = null - operated_bodypart = null - return ..() - + var/list/steps = list() //Steps in a surgery + var/step_in_progress = 0 //Actively performing a Surgery + var/can_cancel = 1 //Can cancel this surgery after step 1 with cautery + var/list/species = list(/mob/living/carbon/human) //Acceptable Species + var/location = "chest" //Surgery location + var/requires_organic_bodypart = 1 //Prevents you from performing an operation on robotic limbs + var/list/possible_locs = list() //Multiple locations -- c0 + var/ignore_clothes = 0 //This surgery ignores clothes + var/obj/item/organ/organ //Operable body part + var/requires_bodypart = TRUE //Surgery available only when a bodypart is present, or only when it is missing. /datum/surgery/proc/can_start(mob/user, mob/living/carbon/target) // if 0 surgery wont show up in list @@ -39,13 +18,13 @@ return 1 -/datum/surgery/proc/next_step(mob/user) +/datum/surgery/proc/next_step(mob/user, mob/living/carbon/target) if(step_in_progress) - return 1 + return var/datum/surgery_step/S = get_surgery_step() if(S) - if(S.try_op(user, target, user.zone_selected, user.get_active_held_item(), src)) + if(S.try_op(user, target, user.zone_selected, user.get_active_hand(), src)) return 1 return 0 @@ -53,24 +32,10 @@ var/step_type = steps[status] return new step_type -/datum/surgery/proc/complete() - feedback_add_details("surgeries_completed", type) - qdel(src) - - -/datum/surgery/proc/get_propability_multiplier() - var/propability = 0.5 - var/turf/T = get_turf(target) - - if(locate(/obj/structure/table/optable, T)) - propability = 1 - else if(locate(/obj/structure/table, T)) - propability = 0.8 - else if(locate(/obj/structure/bed, T)) - propability = 0.7 - - return propability + success_multiplier +/datum/surgery/proc/complete(mob/living/carbon/human/target) + target.surgeries -= src + src = null @@ -80,6 +45,7 @@ //Other important variables are var/list/surgeries (/mob/living) and var/list/internal_organs (/mob/living/carbon) // var/list/bodyparts (/mob/living/carbon/human) is the LIMBS of a Mob. //Surgical procedures are initiated by attempt_initiate_surgery(), which is called by surgical drapes and bedsheets. +// /code/modules/surgery/multiple_location_example.dm contains steps to setup a multiple location operation. //TODO @@ -94,4 +60,4 @@ //RESOLVED ISSUES //"Todo" jobs that have been completed //combine hands/feet into the arms - Hands/feet were removed - RR -//surgeries (not steps) that can be initiated on any body part (corresponding with damage locations) - Call this one done, see possible_locs var - c0 \ No newline at end of file +//surgeries (not steps) that can be initiated on any body part (corresponding with damage locations) - Call this one done, see multiple_location_example.dm - RR \ No newline at end of file diff --git a/code/modules/surgery/surgery_step.dm b/code/modules/surgery/surgery_step.dm index 5d0f7f580e..d91d021ac7 100644 --- a/code/modules/surgery/surgery_step.dm +++ b/code/modules/surgery/surgery_step.dm @@ -1,10 +1,10 @@ /datum/surgery_step - var/name var/list/implements = list() //format is path = probability of success. alternatively var/implement_type = null //the current type of implement used. This has to be stored, as the actual typepath of the tool may not match the list type. var/accept_hand = 0 //does the surgery step require an open hand? If true, ignores implements. Compatible with accept_any_item. var/accept_any_item = 0 //does the surgery step accept any item? If true, ignores implements. Compatible with require_hand. var/time = 10 //how long does the step take? + var/name /datum/surgery_step/proc/try_op(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery) @@ -30,7 +30,7 @@ else user << "You need to expose [target]'s [parse_zone(target_zone)] to perform surgery on it!" return 1 //returns 1 so we don't stab the guy in the dick or wherever. - if(iscyborg(user) && user.a_intent != INTENT_HARM) //to save asimov borgs a LOT of heartache + if(isrobot(user) && user.a_intent != "harm") //to save asimov borgs a LOT of heartache return 1 return 0 @@ -38,24 +38,19 @@ /datum/surgery_step/proc/initiate(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery) surgery.step_in_progress = 1 - var/speed_mod = 1 - if(preop(user, target, target_zone, tool, surgery) == -1) surgery.step_in_progress = 0 return - if(tool) - speed_mod = tool.toolspeed - - if(do_after(user, time * speed_mod, target = target)) + if(do_after(user, time, target = target)) var/advance = 0 var/prob_chance = 100 if(implement_type) //this means it isn't a require hand or any item step. prob_chance = implements[implement_type] - prob_chance *= surgery.get_propability_multiplier() + prob_chance *= get_location_modifier(target) - if(prob(prob_chance) || iscyborg(user)) + if(prob(prob_chance) || isrobot(user)) if(success(user, target, target_zone, tool, surgery)) advance = 1 else @@ -65,7 +60,7 @@ if(advance) surgery.status++ if(surgery.status > surgery.steps.len) - surgery.complete() + surgery.complete(target) surgery.step_in_progress = 0 diff --git a/code/modules/surgery/tail_modification.dm b/code/modules/surgery/tail_modification.dm index de2f800b34..1b60df3f83 100644 --- a/code/modules/surgery/tail_modification.dm +++ b/code/modules/surgery/tail_modification.dm @@ -33,7 +33,7 @@ if("spines" in L.dna.features) L.dna.features -= "spines" var/obj/item/severedtail/S = new(get_turf(target)) - S.add_atom_colour("#[L.dna.features["mcolor"]]", FIXED_COLOUR_PRIORITY) + S.color = "#[L.dna.features["mcolor"]]" S.markings = "[L.dna.features["tail"]]" L.update_body() return 1 diff --git a/code/modules/surgery/tools.dm b/code/modules/surgery/tools.dm index 92dba6eede..1e7e202a29 100644 --- a/code/modules/surgery/tools.dm +++ b/code/modules/surgery/tools.dm @@ -5,7 +5,7 @@ icon_state = "retractor" materials = list(MAT_METAL=6000, MAT_GLASS=3000) flags = CONDUCT - w_class = WEIGHT_CLASS_TINY + w_class = 1 origin_tech = "materials=1;biotech=1" @@ -16,7 +16,7 @@ icon_state = "hemostat" materials = list(MAT_METAL=5000, MAT_GLASS=2500) flags = CONDUCT - w_class = WEIGHT_CLASS_TINY + w_class = 1 origin_tech = "materials=1;biotech=1" attack_verb = list("attacked", "pinched") @@ -28,7 +28,7 @@ icon_state = "cautery" materials = list(MAT_METAL=2500, MAT_GLASS=750) flags = CONDUCT - w_class = WEIGHT_CLASS_TINY + w_class = 1 origin_tech = "materials=1;biotech=1" attack_verb = list("burnt") @@ -42,7 +42,7 @@ materials = list(MAT_METAL=10000, MAT_GLASS=6000) flags = CONDUCT force = 15 - w_class = WEIGHT_CLASS_NORMAL + w_class = 3 origin_tech = "materials=1;biotech=1" attack_verb = list("drilled") @@ -53,7 +53,7 @@ icon_state = "scalpel" flags = CONDUCT force = 10 - w_class = WEIGHT_CLASS_TINY + w_class = 1 throwforce = 5 throw_speed = 3 throw_range = 5 @@ -64,7 +64,9 @@ sharpness = IS_SHARP_ACCURATE /obj/item/weapon/scalpel/suicide_act(mob/user) - user.visible_message("[user] is slitting [user.p_their()] [pick("wrists", "throat", "stomach")] with [src]! It looks like [user.p_theyre()] trying to commit suicide!") + user.visible_message(pick("[user] is slitting \his wrists with [src]! It looks like \he's trying to commit suicide.", \ + "[user] is slitting \his throat with [src]! It looks like \he's trying to commit suicide.", \ + "[user] is slitting \his stomach open with [src]! It looks like \he's trying to commit seppuku.")) return (BRUTELOSS) @@ -77,7 +79,7 @@ throwhitsound = 'sound/weapons/pierce.ogg' flags = CONDUCT force = 15 - w_class = WEIGHT_CLASS_NORMAL + w_class = 3 throwforce = 9 throw_speed = 2 throw_range = 5 @@ -91,7 +93,7 @@ desc = "Nanotrasen brand surgical drapes provide optimal safety and infection control." icon = 'icons/obj/surgery.dmi' icon_state = "surgical_drapes" - w_class = WEIGHT_CLASS_TINY + w_class = 1 origin_tech = "biotech=1" attack_verb = list("slapped") diff --git a/code/modules/telesci/bscrystal.dm b/code/modules/telesci/bscrystal.dm index df33ae32ae..21a7127b94 100644 --- a/code/modules/telesci/bscrystal.dm +++ b/code/modules/telesci/bscrystal.dm @@ -5,11 +5,10 @@ desc = "A glowing bluespace crystal, not much is known about how they work. It looks very delicate." icon = 'icons/obj/telescience.dmi' icon_state = "bluespace_crystal" - w_class = WEIGHT_CLASS_TINY + w_class = 1 origin_tech = "bluespace=6;materials=3" points = 50 var/blink_range = 8 // The teleport range when crushed/thrown at someone. - refined_type = /obj/item/stack/sheet/bluespace_crystal /obj/item/weapon/ore/bluespace_crystal/New() ..() @@ -45,33 +44,3 @@ origin_tech = "bluespace=3;plasmatech=4" blink_range = 4 // Not as good as the organic stuff! points = 0 // nice try - refined_type = null - -// Polycrystals, aka stacks - -/obj/item/stack/sheet/bluespace_crystal - name = "bluespace polycrystal" - icon = 'icons/obj/telescience.dmi' - icon_state = "polycrystal" - desc = "A stable polycrystal, made of fused-together bluespace crystals. You could probably break one off." - origin_tech = "bluespace=6;materials=3" - attack_verb = list("bluespace polybashed", "bluespace polybattered", "bluespace polybludgeoned", "bluespace polythrashed", "bluespace polysmashed") - -/obj/item/stack/sheet/bluespace_crystal/attack_self(mob/user) // to prevent the construction menu from ever happening - user << "You cannot crush the polycrystal in-hand, try breaking one off." - return - -/obj/item/stack/sheet/bluespace_crystal/attack_hand(mob/user) - if (user.get_inactive_held_item() == src) - if(zero_amount()) // in this case, a sanity check - return - var/obj/item/weapon/ore/bluespace_crystal/BC = new(src) - user.put_in_hands(BC) - amount-- - if (amount == 0) - qdel(src) - user << "You break the final crystal off." - else user << "You break off a crystal." - else - ..() - return \ No newline at end of file diff --git a/code/modules/telesci/gps.dm b/code/modules/telesci/gps.dm index 45729a1956..58a4760483 100644 --- a/code/modules/telesci/gps.dm +++ b/code/modules/telesci/gps.dm @@ -4,7 +4,7 @@ var/list/GPS_list = list() desc = "Helping lost spacemen find their way through the planets since 2016. Alt+click to toggle power." icon = 'icons/obj/telescience.dmi' icon_state = "gps-c" - w_class = WEIGHT_CLASS_SMALL + w_class = 2 slot_flags = SLOT_BELT origin_tech = "materials=2;magnets=1;bluespace=2" var/gpstag = "COM0" @@ -119,10 +119,6 @@ var/list/GPS_list = list() gpstag = "MINER" desc = "A positioning system helpful for rescuing trapped or injured miners, keeping one on you at all times while mining might just save your life." -/obj/item/device/gps/internal/base - gpstag = "NT_AUX" - desc = "A homing signal from Nanotrasen's mining base." - /obj/item/device/gps/visible_debug name = "visible GPS" gpstag = "ADMIN" diff --git a/code/modules/telesci/telepad.dm b/code/modules/telesci/telepad.dm index 24a0ee6060..33d8952e19 100644 --- a/code/modules/telesci/telepad.dm +++ b/code/modules/telesci/telepad.dm @@ -75,11 +75,11 @@ user << "\The [src] is now secured." else if(istype(W, /obj/item/weapon/screwdriver)) if(stage == 0) - playsound(src, W.usesound, 50, 1) + playsound(src, 'sound/items/Screwdriver.ogg', 50, 1) user << "You unscrew the telepad's tracking beacon." stage = 1 else if(stage == 1) - playsound(src, W.usesound, 50, 1) + playsound(src, 'sound/items/Screwdriver.ogg', 50, 1) user << "You screw in the telepad's tracking beacon." stage = 0 else if(istype(W, /obj/item/weapon/weldingtool) && stage == 1) @@ -87,7 +87,7 @@ if(WT.remove_fuel(0,user)) playsound(src.loc, 'sound/items/Welder2.ogg', 100, 1) user << "You start disassembling [src]..." - if(do_after(user,20*WT.toolspeed, target = src)) + if(do_after(user,20/WT.toolspeed, target = src)) if(!WT.isOn()) return user << "You disassemble [src]." diff --git a/code/modules/tgui/states.dm b/code/modules/tgui/states.dm index c3e7d9b0c9..ee21dfd120 100644 --- a/code/modules/tgui/states.dm +++ b/code/modules/tgui/states.dm @@ -20,13 +20,13 @@ if(!state) return - if(isobserver(user)) + if(istype(user, /mob/dead/observer)) // If they turn on ghost AI control, admins can always interact. if(IsAdminGhost(user)) . = max(., UI_INTERACTIVE) // Regular ghosts can always at least view if in range. - if(get_dist(src_object, user) < user.client.view) + if(get_dist(src_object, src) < user.client.view) . = max(., UI_UPDATE) // Check if the state allows interaction diff --git a/code/modules/tgui/states/default.dm b/code/modules/tgui/states/default.dm index 38c3f4d196..74f2ad63c2 100644 --- a/code/modules/tgui/states/default.dm +++ b/code/modules/tgui/states/default.dm @@ -47,10 +47,10 @@ return UI_INTERACTIVE return UI_CLOSE -/mob/living/simple_animal/default_can_use_topic(src_object) +/mob/living/simple_animal/drone/default_can_use_topic(src_object) . = shared_ui_interaction(src_object) if(. > UI_CLOSE) - . = min(., shared_living_ui_distance(src_object)) //simple animals can only use things they're near. + . = min(., shared_living_ui_distance(src_object)) // Drones can only use things they're near. /mob/living/silicon/pai/default_can_use_topic(src_object) // pAIs can only use themselves and the owner's radio. diff --git a/code/modules/tgui/states/hands.dm b/code/modules/tgui/states/hands.dm index a312bcecdd..e3e110a2a8 100644 --- a/code/modules/tgui/states/hands.dm +++ b/code/modules/tgui/states/hands.dm @@ -15,7 +15,7 @@ return UI_CLOSE /mob/living/hands_can_use_topic(src_object) - if(is_holding(src_object)) + if(src_object in get_both_hands(src)) return UI_INTERACTIVE return UI_CLOSE diff --git a/code/modules/tgui/subsystem.dm b/code/modules/tgui/subsystem.dm index 7de5514158..81c67c67d1 100644 --- a/code/modules/tgui/subsystem.dm +++ b/code/modules/tgui/subsystem.dm @@ -99,23 +99,6 @@ close_count++ // Count each UI we close. return close_count - /** - * private - * - * Close *ALL* UIs - * - * return int The number of UIs closed. - **/ -/datum/subsystem/tgui/proc/close_all_uis() - var/close_count = 0 - for(var/src_object_key in open_uis) - for(var/ui_key in open_uis[src_object_key]) - for(var/datum/tgui/ui in open_uis[src_object_key][ui_key]) - if(ui && ui.src_object && ui.user && ui.src_object.ui_host()) // Check the UI is valid. - ui.close() // Close the UI. - close_count++ // Count each UI we close. - return close_count - /** * private * @@ -199,15 +182,8 @@ processing_uis.Remove(ui) // Remove it from the list of processing UIs. if(ui.user) // If the user exists, remove it from them too. ui.user.open_uis.Remove(ui) - var/Ukey = ui.ui_key - var/list/uis = open_uis[src_object_key][Ukey] // Remove it from the list of open UIs. + var/list/uis = open_uis[src_object_key][ui.ui_key] // Remove it from the list of open UIs. uis.Remove(ui) - if(!uis.len) - var/list/uiobj = open_uis[src_object_key] - uiobj.Remove(Ukey) - if(!uiobj.len) - open_uis.Remove(src_object_key) - return 1 // Let the caller know we did it. /** diff --git a/code/modules/tgui/tgui.dm b/code/modules/tgui/tgui.dm index 69349d2549..0ad0d6f1f1 100644 --- a/code/modules/tgui/tgui.dm +++ b/code/modules/tgui/tgui.dm @@ -33,8 +33,6 @@ var/datum/ui_state/state = null // Topic state used to determine status/interactability. var/datum/tgui/master_ui // The parent UI. var/list/datum/tgui/children = list() // Children of this UI. - var/titlebar = TRUE - var/custom_browser_id = FALSE /** * public @@ -53,12 +51,11 @@ * * return datum/tgui The requested UI. **/ -/datum/tgui/New(mob/user, datum/src_object, ui_key, interface, title, width = 0, height = 0, datum/tgui/master_ui = null, datum/ui_state/state = default_state, browser_id = null) +/datum/tgui/New(mob/user, datum/src_object, ui_key, interface, title, width = 0, height = 0, datum/tgui/master_ui = null, datum/ui_state/state = default_state) src.user = user src.src_object = src_object src.ui_key = ui_key - src.window_id = browser_id ? browser_id : "\ref[src_object]-[ui_key]" - src.custom_browser_id = browser_id ? TRUE : FALSE + src.window_id = "\ref[src_object]-[ui_key]" set_interface(interface) @@ -99,8 +96,7 @@ var/debugable = check_rights_for(user.client, R_DEBUG) user << browse(get_html(debugable), "window=[window_id];[window_size][list2params(window_options)]") // Open the window. - if (!custom_browser_id) - winset(user, window_id, "on-close=\"uiclose \ref[src]\"") // Instruct the client to signal UI when the window is closed. + winset(user, window_id, "on-close=\"uiclose \ref[src]\"") // Instruct the client to signal UI when the window is closed. SStgui.on_open(src) /** @@ -220,7 +216,7 @@ "style" = style, "interface" = interface, "fancy" = user.client.prefs.tgui_fancy, - "locked" = user.client.prefs.tgui_lock && !custom_browser_id, + "locked" = user.client.prefs.tgui_lock, "window" = window_id, "ref" = "\ref[src]", "user" = list( @@ -230,8 +226,7 @@ "srcObject" = list( "name" = "[src_object]", "ref" = "\ref[src_object]" - ), - "titlebar" = titlebar + ) ) return config_data @@ -273,7 +268,7 @@ switch(action) if("tgui:initialize") - user << output(url_encode(get_json(initial_data)), "[custom_browser_id ? window_id : "[window_id].browser"]:initialize") + user << output(url_encode(get_json(initial_data)), "[window_id].browser:initialize") initialized = TRUE if("tgui:view") if(params["screen"]) @@ -325,7 +320,7 @@ return // Cannot update UI, we have no visibility. // Send the new JSON to the update() Javascript function. - user << output(url_encode(get_json(data)), "[custom_browser_id ? window_id : "[window_id].browser"]:update") + user << output(url_encode(get_json(data)), "[window_id].browser:update") /** * private @@ -371,7 +366,4 @@ else src.status = status if(status == UI_DISABLED || push) // Update if the UI just because disabled, or a push is requested. - push_data(null, force = 1) - -/datum/tgui/proc/set_titlebar(value) - titlebar = value + push_data(null, force = 1) \ No newline at end of file diff --git a/code/modules/tooltip/tooltip.html b/code/modules/tooltip/tooltip.html index 470af78503..d0c6acfb05 100644 --- a/code/modules/tooltip/tooltip.html +++ b/code/modules/tooltip/tooltip.html @@ -51,11 +51,8 @@ .wraith .wrap {border-color: #492136;} .wraith .content {border-color: #331726; background-color: #471962;} - .cult .wrap {border-color: #292222;} - .cult .content {color: #FF0000; border-color: #4C4343; background-color: #3C3434;} - - .clockcult .wrap {border-color: #170800;} - .clockcult .content {color: #B18B25; border-color: #000000; background-color: #5F380E;} + .cult .wrap {border-color: #610002;} + .cult .content {color: #0F0B0C; border-color: #A10000; background-color: #4A363B;} .pod .wrap {border-color: #052401;} .pod .content {border-color: #326D29; background-color: #569F4B;} @@ -79,9 +76,6 @@ .operative .wrap {border-color: #1E0101;} .operative .content {color: #FFFFFF; border-color: #750000; background-color: #350000;} - - .clockwork .wrap {border-color: #170800;} - .clockwork .content {color: #B18B25; border-color: #000000; background-color: #5F380E;} diff --git a/code/modules/uplink/uplink.dm b/code/modules/uplink/uplink.dm index fd4b6d0181..377776bc37 100644 --- a/code/modules/uplink/uplink.dm +++ b/code/modules/uplink/uplink.dm @@ -13,7 +13,7 @@ var/global/list/uplinks = list() var/active = FALSE var/lockable = TRUE var/telecrystals = 20 - var/selected_cat = null + var/owner = null var/datum/game_mode/gamemode = null var/spent_telecrystals = 0 @@ -27,28 +27,6 @@ var/global/list/uplinks = list() uplinks -= src return ..() -/obj/item/device/uplink/attackby(obj/item/I, mob/user, params) - for(var/item in subtypesof(/datum/uplink_item)) - var/datum/uplink_item/UI = item - var/path = null - if(initial(UI.refund_path)) - path = initial(UI.refund_path) - else - path = initial(UI.item) - var/cost = 0 - if(initial(UI.refund_amount)) - cost = initial(UI.refund_amount) - else - cost = initial(UI.cost) - var/refundable = initial(UI.refundable) - if(I.type == path && refundable && I.check_uplink_validity()) - telecrystals += cost - spent_telecrystals -= cost - user << "[I] refunded." - qdel(I) - return - ..() - /obj/item/device/uplink/interact(mob/user) active = TRUE ui_interact(user) @@ -68,24 +46,22 @@ var/global/list/uplinks = list() data["lockable"] = lockable var/list/uplink_items = get_uplink_items(gamemode) - data["categories"] = list() for(var/category in uplink_items) var/list/cat = list( "name" = category, - "items" = (category == selected_cat ? list() : null)) - if(category == selected_cat) - for(var/item in uplink_items[category]) - var/datum/uplink_item/I = uplink_items[category][item] - cat["items"] += list(list( - "name" = I.name, - "cost" = I.cost, - "desc" = I.desc, - )) + "items" = list(), + ) + for(var/item in uplink_items[category]) + var/datum/uplink_item/I = uplink_items[category][item] + cat["items"] += list(list( + "name" = I.name, + "cost" = I.cost, + "desc" = I.desc, + )) data["categories"] += list(cat) return data - /obj/item/device/uplink/ui_act(action, params) if(!active) return @@ -106,9 +82,6 @@ var/global/list/uplinks = list() if("lock") active = FALSE SStgui.close_uis(src) - if("select") - selected_cat = params["category"] - return 1 /obj/item/device/uplink/ui_host() @@ -116,7 +89,18 @@ var/global/list/uplinks = list() // Refund certain items by hitting the uplink with it. /obj/item/device/radio/uplink/attackby(obj/item/I, mob/user, params) - return hidden_uplink.attackby(I, user, params) + for(var/item in subtypesof(/datum/uplink_item)) + var/datum/uplink_item/UI = item + var/path = initial(UI.item) + var/cost = initial(UI.cost) + var/refundable = initial(UI.refundable) + if(I.type == path && refundable) + hidden_uplink.telecrystals += cost + hidden_uplink.spent_telecrystals -= cost + user << "[I] refunded." + qdel(I) + return + ..() // A collection of pre-set uplinks, for admin spawns. /obj/item/device/radio/uplink/New() diff --git a/code/modules/uplink/uplink_item.dm b/code/modules/uplink/uplink_item.dm index f0f6f2adf9..86bd6d64a9 100644 --- a/code/modules/uplink/uplink_item.dm +++ b/code/modules/uplink/uplink_item.dm @@ -44,9 +44,7 @@ var/list/uplink_items = list() // Global list so we only initialize this once. var/category = "item category" var/desc = "item description" var/item = null // Path to the item to spawn. - var/refund_path = null // Alternative path for refunds, in case the item purchased isn't what is actually refunded (ie: holoparasites). var/cost = 0 - var/refund_amount = 0 // specified refund amount in case there needs to be a TC penalty for refunds. var/refundable = FALSE var/surplus = 100 // Chance of being included in the surplus crate. var/list/include_modes = list() // Game modes to allow this item in. @@ -140,13 +138,13 @@ var/list/uplink_items = list() // Global list so we only initialize this once. name = "Stechkin Pistol" desc = "A small, easily concealable handgun that uses 10mm auto rounds in 8-round magazines and is compatible \ with suppressors." - item = /obj/item/weapon/gun/ballistic/automatic/pistol + item = /obj/item/weapon/gun/projectile/automatic/pistol cost = 7 /datum/uplink_item/dangerous/revolver name = "Syndicate Revolver" desc = "A brutally simple syndicate revolver that fires .357 Magnum rounds and has 7 chambers." - item = /obj/item/weapon/gun/ballistic/revolver + item = /obj/item/weapon/gun/projectile/revolver cost = 13 surplus = 50 @@ -154,7 +152,7 @@ var/list/uplink_items = list() // Global list so we only initialize this once. name = "Bulldog Shotgun" desc = "A fully-loaded semi-automatic drum-fed shotgun. Compatiable with all 12g rounds. Designed for close \ quarter anti-personel engagements." - item = /obj/item/weapon/gun/ballistic/automatic/shotgun/bulldog + item = /obj/item/weapon/gun/projectile/automatic/shotgun/bulldog cost = 8 surplus = 40 include_modes = list(/datum/game_mode/nuclear) @@ -163,20 +161,20 @@ var/list/uplink_items = list() // Global list so we only initialize this once. name = "C-20r Submachine Gun" desc = "A fully-loaded Scarborough Arms bullpup submachine gun. The C-20r fires .45 rounds with a \ 20-round magazine and is compatible with suppressors." - item = /obj/item/weapon/gun/ballistic/automatic/c20r + item = /obj/item/weapon/gun/projectile/automatic/c20r cost = 10 surplus = 40 include_modes = list(/datum/game_mode/nuclear) /datum/uplink_item/dangerous/smg/unrestricted - item = /obj/item/weapon/gun/ballistic/automatic/c20r/unrestricted + item = /obj/item/weapon/gun/projectile/automatic/c20r/unrestricted include_modes = list(/datum/game_mode/gang) /datum/uplink_item/dangerous/machinegun name = "L6 Squad Automatic Weapon" desc = "A fully-loaded Aussec Armoury belt-fed machine gun. \ This deadly weapon has a massive 50-round magazine of devastating 5.56x45mm ammunition." - item = /obj/item/weapon/gun/ballistic/automatic/l6_saw + item = /obj/item/weapon/gun/projectile/automatic/l6_saw cost = 18 surplus = 0 include_modes = list(/datum/game_mode/nuclear) @@ -192,7 +190,7 @@ var/list/uplink_items = list() // Global list so we only initialize this once. /datum/uplink_item/dangerous/sniper name = "Sniper Rifle" desc = "Ranged fury, Syndicate style. guaranteed to cause shock and awe or your TC back!" - item = /obj/item/weapon/gun/ballistic/automatic/sniper_rifle/syndicate + item = /obj/item/weapon/gun/projectile/automatic/sniper_rifle/syndicate cost = 16 surplus = 25 include_modes = list(/datum/game_mode/nuclear) @@ -200,7 +198,7 @@ var/list/uplink_items = list() // Global list so we only initialize this once. /datum/uplink_item/dangerous/bolt_action name = "Surplus Rifle" desc = "A horribly outdated bolt action weapon. You've got to be desperate to use this." - item = /obj/item/weapon/gun/ballistic/shotgun/boltaction + item = /obj/item/weapon/gun/projectile/shotgun/boltaction cost = 2 include_modes = list(/datum/game_mode/nuclear) @@ -261,7 +259,7 @@ var/list/uplink_items = list() // Global list so we only initialize this once. /datum/uplink_item/dangerous/foamsmg name = "Toy Submachine Gun" desc = "A fully-loaded Donksoft bullpup submachine gun that fires riot grade rounds with a 20-round magazine." - item = /obj/item/weapon/gun/ballistic/automatic/c20r/toy + item = /obj/item/weapon/gun/projectile/automatic/c20r/toy cost = 5 surplus = 0 include_modes = list(/datum/game_mode/nuclear) @@ -270,7 +268,7 @@ var/list/uplink_items = list() // Global list so we only initialize this once. name = "Toy Machine Gun" desc = "A fully-loaded Donksoft belt-fed machine gun. This weapon has a massive 50-round magazine of devastating \ riot grade darts, that can briefly incapacitate someone in just one volley." - item = /obj/item/weapon/gun/ballistic/automatic/l6_saw/toy + item = /obj/item/weapon/gun/projectile/automatic/l6_saw/toy cost = 10 surplus = 0 include_modes = list(/datum/game_mode/nuclear) @@ -321,29 +319,11 @@ var/list/uplink_items = list() // Global list so we only initialize this once. /datum/uplink_item/ammo/pistol name = "10mm Handgun Magazine" - desc = "An additional 8-round 10mm magazine; compatible with the Stechkin Pistol. These rounds \ + desc = "An additional 8-round 10mm magazine; compatible with the Stechkin Pistol. These subsonic rounds \ are dirt cheap but are half as effective as .357 rounds." item = /obj/item/ammo_box/magazine/m10mm cost = 1 -/datum/uplink_item/ammo/pistolap - name = "10mm Armour Piercing Magazine" - desc = "An additional 8-round 10mm magazine; compatible with the Stechkin Pistol. These rounds are less effective at injuring the target but penetrate protective gear." - item = /obj/item/ammo_box/magazine/m10mm/ap - cost = 2 - -/datum/uplink_item/ammo/pistolfire - name = "10mm Incendiary Magazine" - desc = "An additional 8-round 10mm magazine; compatible with the Stechkin Pistol. Loaded with incendiary rounds which ignite the target." - item = /obj/item/ammo_box/magazine/m10mm/fire - cost = 2 - -/datum/uplink_item/ammo/pistolhp - name = "10mm Hollow Point Magazine" - desc = "An additional 8-round 10mm magazine; compatible with the Stechkin Pistol. These rounds are more damaging but ineffective against armour." - item = /obj/item/ammo_box/magazine/m10mm/hp - cost = 3 - /datum/uplink_item/ammo/bolt_action name = "Surplus Rifle Clip" desc = "A stripper clip used to quickly load bolt action rifles. Contains 5 rounds." @@ -539,23 +519,14 @@ var/list/uplink_items = list() // Global list so we only initialize this once. deflecting all ranged weapon fire, but you also refuse to use dishonorable ranged weaponry." item = /obj/item/weapon/sleeping_carp_scroll cost = 17 - surplus = 0 exclude_modes = list(/datum/game_mode/nuclear, /datum/game_mode/gang) -/datum/uplink_item/stealthy_weapons/cqc - name = "CQC Manual" - desc = "A manual that teaches a single user tactical Close-Quarters Combat before self-destructing." - item = /obj/item/weapon/cqc_manual - include_modes = list(/datum/game_mode/nuclear) - cost = 13 - surplus = 0 - /datum/uplink_item/stealthy_weapons/throwingweapons name = "Box of Throwing Weapons" desc = "A box of shurikens and reinforced bolas from ancient Earth martial arts. They are highly effective \ throwing weapons. The bolas can knock a target down and the shurikens will embed into limbs." item = /obj/item/weapon/storage/box/syndie_kit/throwing_weapons - cost = 3 + cost = 5 /datum/uplink_item/stealthy_weapons/edagger name = "Energy Dagger" @@ -567,7 +538,7 @@ var/list/uplink_items = list() // Global list so we only initialize this once. name = "Toy Gun with Riot Darts" desc = "An innocent-looking toy pistol designed to fire foam darts. Comes loaded with riot-grade \ darts effective at incapacitating a target." - item = /obj/item/weapon/gun/ballistic/automatic/toy/pistol/riot + item = /obj/item/weapon/gun/projectile/automatic/toy/pistol/riot cost = 3 surplus = 10 exclude_modes = list(/datum/game_mode/gang) @@ -653,6 +624,16 @@ var/list/uplink_items = list() // Global list so we only initialize this once. surplus = 10 exclude_modes = list(/datum/game_mode/nuclear) +/datum/uplink_item/stealthy_weapons/boobytrap + name = "Booby Trap" + desc = "A small explosive device that can be attached to boxes or closets. \ + The next person to open the box or closet will trigger an explosion \ + that knocks them down and destroys the boobytrapped object." + item = /obj/item/device/boobytrap + cost = 4 + surplus = 10 + exclude_modes = list(/datum/game_mode/nuclear) + // Stealth Items /datum/uplink_item/stealthy_tools category = "Stealth and Camouflage Items" @@ -716,9 +697,8 @@ var/list/uplink_items = list() // Global list so we only initialize this once. /datum/uplink_item/stealthy_tools/smugglersatchel name = "Smuggler's Satchel" desc = "This satchel is thin enough to be hidden in the gap between plating and tiling; great for stashing \ - your stolen goods. Comes with a crowbar and a floor tile inside. Properly hidden satchels have been \ - known to survive intact even beyond the current shift. " - item = /obj/item/weapon/storage/backpack/satchel/flat + your stolen goods. Comes with a crowbar and a floor tile inside." + item = /obj/item/weapon/storage/backpack/satchel_flat cost = 2 surplus = 30 @@ -754,14 +734,7 @@ var/list/uplink_items = list() // Global list so we only initialize this once. item = /obj/item/weapon/storage/box/syndie_kit/cutouts cost = 1 surplus = 20 - -/datum/uplink_item/stealthy_tools/fakenucleardisk - name = "Decoy Nuclear Authentication Disk" - desc = "It's just a normal disk. Visually it's identical to the real deal, but it won't hold up under closer scrutiny. Don't try to give this to us to complete your objective, we know better!" - item = /obj/item/weapon/disk/fakenucleardisk - cost = 1 - surplus = 1 - + //Space Suits and Hardsuits /datum/uplink_item/suits category = "Space Suits and Hardsuits" @@ -872,6 +845,12 @@ var/list/uplink_items = list() // Global list so we only initialize this once. cost = 2 surplus = 75 +/datum/uplink_item/device_tools/selfdestruct_firingpin + name = "Trick Firing Pin" + desc = "This pin will detonate the weapon it is put into upon trying to use it" + item = /obj/item/device/firing_pin/trick + cost = 4 + /datum/uplink_item/device_tools/ai_detector name = "Artificial Intelligence Detector" desc = "A functional multitool that turns red when it detects an artificial intelligence watching it or its \ @@ -895,6 +874,13 @@ var/list/uplink_items = list() // Global list so we only initialize this once. cost = 2 include_modes = list(/datum/game_mode/nuclear) +/datum/uplink_item/device_tools/thermitespray + name = "Thermite Kit" + desc = "A boxed zippo and 50u spray bottle filled with thermite, specially designed for spraying walls. \ + 50u is enough thermite to spray 5 walls." + item = /obj/item/weapon/storage/box/syndie_kit/thermite + cost = 3 + /datum/uplink_item/device_tools/c4 name = "Composition C-4" desc = "C-4 is plastic explosive of the common variety Composition C. You can use it to breach walls, sabotage equipment, or connect \ @@ -995,13 +981,6 @@ var/list/uplink_items = list() // Global list so we only initialize this once. cost = 4 include_modes = list(/datum/game_mode/nuclear) -/datum/uplink_item/device_tools/telecrystal - name = "Raw Telecrystal" - desc = "A telecrystal in its rawest and purest form; can be utilized on active uplinks to increase their telecrystal count." - item = /obj/item/stack/telecrystal - cost = 1 - surplus = 0 - // Implants /datum/uplink_item/implants category = "Implants" @@ -1153,7 +1132,7 @@ var/list/uplink_items = list() // Global list so we only initialize this once. exclude_modes = list(/datum/game_mode/nuclear, /datum/game_mode/gang) /datum/uplink_item/badass/surplus/spawn_item(turf/loc, obj/item/device/uplink/U) - var/list/uplink_items = get_uplink_items(ticker.mode) + var/list/uplink_items = get_uplink_items() var/crate_value = 50 var/obj/structure/closet/crate/C = new(loc) @@ -1180,7 +1159,7 @@ var/list/uplink_items = list() // Global list so we only initialize this once. cost = 0 /datum/uplink_item/badass/random/spawn_item(turf/loc, obj/item/device/uplink/U) - var/list/uplink_items = get_uplink_items(ticker.mode) + var/list/uplink_items = get_uplink_items() var/list/possible_items = list() for(var/category in uplink_items) for(var/item in uplink_items[category]) diff --git a/code/modules/vehicles/atv.dm b/code/modules/vehicles/atv.dm index 4102fa2598..785f9b67e2 100644 --- a/code/modules/vehicles/atv.dm +++ b/code/modules/vehicles/atv.dm @@ -8,7 +8,7 @@ generic_pixel_y = 4 vehicle_move_delay = 1 var/static/image/atvcover = null - + /obj/vehicle/atv/New() ..() @@ -17,7 +17,7 @@ atvcover.layer = ABOVE_MOB_LAYER -/obj/vehicle/atv/post_buckle_mob(mob/living/M) +obj/vehicle/atv/post_buckle_mob(mob/living/M) if(has_buckled_mobs()) add_overlay(atvcover) else diff --git a/code/modules/vehicles/pimpin_ride.dm b/code/modules/vehicles/pimpin_ride.dm index 4058a76351..98bd0c246e 100644 --- a/code/modules/vehicles/pimpin_ride.dm +++ b/code/modules/vehicles/pimpin_ride.dm @@ -7,11 +7,6 @@ var/obj/item/weapon/storage/bag/trash/mybag = null var/floorbuffer = 0 -/obj/vehicle/janicart/Destroy() - if(mybag) - qdel(mybag) - mybag = null - return ..() /obj/vehicle/janicart/handle_vehicle_offsets() ..() @@ -95,4 +90,4 @@ mybag.loc = get_turf(user) user.put_in_hands(mybag) mybag = null - update_icon() + update_icon() \ No newline at end of file diff --git a/code/modules/vehicles/scooter.dm b/code/modules/vehicles/scooter.dm index a70a6a495e..dcd29d0a22 100644 --- a/code/modules/vehicles/scooter.dm +++ b/code/modules/vehicles/scooter.dm @@ -7,7 +7,7 @@ if(istype(I, /obj/item/weapon/wrench)) user << "You begin to remove the handlebars..." playsound(get_turf(user), 'sound/items/Ratchet.ogg', 50, 1) - if(do_after(user, 40*I.toolspeed, target = src)) + if(do_after(user, 40/I.toolspeed, target = src)) new /obj/vehicle/scooter/skateboard(get_turf(src)) new /obj/item/stack/rods(get_turf(src),2) user << "You remove the handlebars from [src]." @@ -38,18 +38,15 @@ else buckled_mob.pixel_y = -4 -/obj/vehicle/scooter/buckle_mob(mob/living/M, force = 0) - if(!istype(M)) - return 0 - if(M.get_num_legs() < 2 && M.get_num_arms() <= 0) - M << "Your limbless body can't use [src]." - return 0 - . = ..() - /obj/vehicle/scooter/post_buckle_mob(mob/living/M) vehicle_move_delay = initial(vehicle_move_delay) + ..() if(M.get_num_legs() < 2) vehicle_move_delay ++ + if(M.get_num_arms() <= 0) + if(buckled_mobs.len)//to prevent the message displaying twice due to unbuckling + M << "Your limbless body flops off \the [src]." + unbuckle_mob(M) /obj/vehicle/scooter/skateboard name = "skateboard" @@ -95,7 +92,7 @@ desc = "A metal frame for building a scooter. Looks like you'll need to add some metal to make wheels." icon = 'icons/obj/vehicles.dmi' icon_state = "scooter_frame" - w_class = WEIGHT_CLASS_NORMAL + w_class = 3 /obj/item/scooter_frame/attackby(obj/item/I, mob/user, params) if(istype(I, /obj/item/weapon/wrench)) @@ -107,13 +104,11 @@ else if(istype(I, /obj/item/stack/sheet/metal)) var/obj/item/stack/sheet/metal/M = I - if(M.get_amount() < 5) + if(M.amount < 5) user << "You need at least five metal sheets to make proper wheels!" return user << "You begin to add wheels to [src]." if(do_after(user, 80, target = src)) - if(!M || M.get_amount() < 5) - return M.use(5) user << "You finish making wheels for [src]." new /obj/vehicle/scooter/skateboard(user.loc) @@ -122,7 +117,7 @@ /obj/vehicle/scooter/skateboard/attackby(obj/item/I, mob/user, params) if(istype(I, /obj/item/weapon/screwdriver)) user << "You begin to deconstruct and remove the wheels on [src]..." - playsound(get_turf(user), I.usesound, 50, 1) + playsound(get_turf(user), 'sound/items/Screwdriver.ogg', 50, 1) if(do_after(user, 20, target = src)) user << "You deconstruct the wheels on [src]." new /obj/item/stack/sheet/metal(get_turf(src),5) @@ -136,8 +131,6 @@ return user << "You begin making handlebars for [src]." if(do_after(user, 25, target = src)) - if(!C || C.get_amount() < 2) - return user << "You add the rods to [src], creating handlebars." C.use(2) new/obj/vehicle/scooter(get_turf(src)) diff --git a/code/modules/vehicles/vehicle.dm b/code/modules/vehicles/vehicle.dm index cc9bb28365..064a6bb147 100644 --- a/code/modules/vehicles/vehicle.dm +++ b/code/modules/vehicles/vehicle.dm @@ -8,9 +8,6 @@ anchored = 0 can_buckle = 1 buckle_lying = 0 - obj_integrity = 300 - max_integrity = 300 - armor = list(melee = 30, bullet = 30, laser = 30, energy = 0, bomb = 30, bio = 0, rad = 0, fire = 60, acid = 60) var/keytype = null //item typepath, if non-null an item of this type is needed in your hands to drive this vehicle var/next_vehicle_move = 0 //used for move delays var/vehicle_move_delay = 2 //tick delay between movements, lower = faster, higher = slower @@ -55,7 +52,7 @@ //KEYS /obj/vehicle/proc/keycheck(mob/user) if(keytype) - if(user.is_holding_item_of_type(keytype)) + if(istype(user.l_hand, keytype) || istype(user.r_hand, keytype)) return 1 else return 1 @@ -66,7 +63,7 @@ desc = "A small grey key." icon = 'icons/obj/vehicles.dmi' icon_state = "key" - w_class = WEIGHT_CLASS_TINY + w_class = 1 //BUCKLE HOOKS @@ -97,14 +94,12 @@ /obj/vehicle/relaymove(mob/user, direction) if(user.incapacitated()) unbuckle_mob(user) - return - if(world.time < next_vehicle_move) - return - next_vehicle_move = world.time + vehicle_move_delay if(keycheck(user)) - if(!Process_Spacemove(direction) || !isturf(loc)) + if(!Process_Spacemove(direction) || world.time < next_vehicle_move || !isturf(loc)) return + next_vehicle_move = world.time + vehicle_move_delay + step(src, direction) handle_vehicle_layer() @@ -134,7 +129,7 @@ /obj/vehicle/Process_Spacemove(direction) - if(has_gravity()) + if(has_gravity(src)) return 1 if(pulledby) @@ -147,28 +142,3 @@ /obj/vehicle/space/Process_Spacemove(direction) return 1 - -/obj/vehicle/run_obj_armor(damage_amount, damage_type, damage_flag = 0, attack_dir) - if(damage_flag == "melee" && damage_amount < 20) - return 0 - . = ..() - -/obj/vehicle/deconstruct(disassembled = TRUE) - new /obj/item/stack/sheet/metal (loc, 5) - qdel(src) - -/obj/vehicle/examine(mob/user) - ..() - if(!(resistance_flags & INDESTRUCTIBLE)) - if(resistance_flags & ON_FIRE) - user << "It's on fire!" - var/healthpercent = (obj_integrity/max_integrity) * 100 - switch(healthpercent) - if(100 to INFINITY) - user << "It seems pristine and undamaged." - if(50 to 100) - user << "It looks slightly damaged." - if(25 to 50) - user << "It appears heavily damaged." - if(0 to 25) - user << "It's falling apart!" \ No newline at end of file diff --git a/code/modules/zombie/items.dm b/code/modules/zombie/items.dm index c3d9b46a75..9057dff954 100644 --- a/code/modules/zombie/items.dm +++ b/code/modules/zombie/items.dm @@ -17,12 +17,12 @@ /obj/item/zombie_hand/equipped(mob/user, slot) . = ..() - //these are intentionally inverted - var/i = user.get_held_index_of_item(src) - if(!(i % 2)) - icon_state = icon_left - else - icon_state = icon_right + switch(slot) + // Yes, these intentionally don't match + if(slot_l_hand) + icon_state = icon_right + if(slot_r_hand) + icon_state = icon_left /obj/item/zombie_hand/afterattack(atom/target, mob/user, proximity_flag) . = ..() @@ -40,7 +40,7 @@ /obj/item/zombie_hand/proc/check_infection(mob/living/carbon/human/target, mob/user) CHECK_DNA_AND_SPECIES(target) - if(NOZOMBIE in target.dna.species.species_traits) + if(NOZOMBIE in target.dna.species.specflags) // cannot infect any NOZOMBIE subspecies (such as high functioning // zombies) return @@ -62,28 +62,33 @@ /obj/item/zombie_hand/proc/tear_airlock(obj/machinery/door/airlock/A, mob/user) removing_airlock = TRUE - user << "You start tearing apart the airlock..." + user << "You start tearing apart the airlock...\ + " playsound(src.loc, 'sound/machines/airlock_alien_prying.ogg', 100, 1) - A.audible_message("You hear a loud metallic grinding sound.") + A.audible_message("You hear a loud metallic \ + grinding sound.") - addtimer(src, "growl", 20, TIMER_NORMAL, user) + addtimer(src, "growl", 20, unique=FALSE, user) if(do_after(user, delay=160, needhand=FALSE, target=A, progress=TRUE)) playsound(src.loc, 'sound/hallucinations/far_noise.ogg', 50, 1) - A.audible_message("With a screech, [A] is torn apart!") + A.audible_message("With a screech, [A] is torn \ + apart!") var/obj/structure/door_assembly/door = new A.assemblytype(get_turf(A)) door.density = 0 door.anchored = 1 door.name = "ravaged [door]" - door.desc = "An airlock that has been torn apart. Looks like it won't be keeping much out now." + door.desc = "An airlock that has been torn apart. Looks like it \ + won't be keeping much out now." qdel(A) removing_airlock = FALSE /obj/item/zombie_hand/proc/growl(mob/user) if(removing_airlock) playsound(src.loc, 'sound/hallucinations/growl3.ogg', 50, 1) - user.audible_message("[user] growls as [user.p_their()] claws dig into the metal frame...") + user.audible_message("[user] growls as \ + their claws dig into the metal frame...") /obj/item/zombie_hand/suicide_act(mob/living/carbon/user) // Suiciding as a zombie brings someone else in to play it @@ -94,8 +99,10 @@ user.Weaken(30) var/success = offer_control(user) if(success) - user.visible_message("[user] appears to have found new spirit.") + user.visible_message("[user] appears to have \ + found new spirit.") return SHAME else - user.visible_message("[user] stops moving.") + user.visible_message("[user] stops moving.\ + ") return OXYLOSS diff --git a/code/modules/zombie/organs.dm b/code/modules/zombie/organs.dm index c477af9bc6..35f0b61168 100644 --- a/code/modules/zombie/organs.dm +++ b/code/modules/zombie/organs.dm @@ -52,12 +52,15 @@ owner.revive(full_heal = TRUE) switch(old_stat) if(DEAD, UNCONSCIOUS) - owner.visible_message("[owner] staggers to [owner.p_their()] feet!") + owner.visible_message("[owner] staggers to \ + their feet!") owner << "You stagger to your feet!" // Conscious conversions will generally only happen for an event // or for a converts_living=TRUE infection if(CONSCIOUS) - owner.visible_message("[owner] suddenly convulses, as [owner.p_they()] gain a ravenous hunger in [owner.p_their()] eyes!", + owner.visible_message("[owner] suddenly \ + convulses, as they gain a ravenous hunger in their \ + eyes!", "You HUNGER!") playsound(owner.loc, 'sound/hallucinations/growl3.ogg', 50, 1) owner.do_jitter_animation(living_transformation_time) diff --git a/code/orphaned_procs/AStar.dm b/code/orphaned_procs/AStar.dm index 06820de957..2f15183581 100644 --- a/code/orphaned_procs/AStar.dm +++ b/code/orphaned_procs/AStar.dm @@ -43,6 +43,7 @@ Actual Adjacent procs : g = pg h = ph f = g + h + source.PNode = src nt = pnt /PathNode/proc/calc_f() @@ -69,7 +70,7 @@ Actual Adjacent procs : //the actual algorithm /proc/AStar(caller, end, dist, maxnodes, maxnodedepth = 30, mintargetdist, adjacent = /turf/proc/reachableAdjacentTurfs, id=null, turf/exclude=null, simulated_only = 1) - var/list/pnodelist = list() + //sanitation var/start = get_turf(caller) if(!start) @@ -122,25 +123,23 @@ Actual Adjacent procs : continue var/newg = cur.g + call(cur.source,dist)(T) - - var/PathNode/P = pnodelist[T] - if(!P) - //is not already in open list, so add it - var/PathNode/newnode = new /PathNode(T,cur,newg,call(T,dist)(end),cur.nt+1) - open.Insert(newnode) - pnodelist[T] = newnode + if(!T.PNode) //is not already in open list, so add it + open.Insert(new /PathNode(T,cur,newg,call(T,dist)(end),cur.nt+1)) else //is already in open list, check if it's a better way from the current turf - if(newg < P.g) - P.prevNode = cur - P.g = newg - P.calc_f() - P.nt = cur.nt + 1 - open.ReSort(P)//reorder the changed element in the list + if(newg < T.PNode.g) + T.PNode.prevNode = cur + T.PNode.g = newg + T.PNode.calc_f() + T.PNode.nt = cur.nt + 1 + open.ReSort(T.PNode)//reorder the changed element in the list CHECK_TICK //cleaning after us - pnodelist = null + for(var/PathNode/PN in open.L) + PN.source.PNode = null + for(var/turf/T in closed) + T.PNode = null //reverse the path to get it from start to finish if(path) diff --git a/code/orphaned_procs/dbcore.dm b/code/orphaned_procs/dbcore.dm index 83f7d50db3..ecb073b6a2 100644 --- a/code/orphaned_procs/dbcore.dm +++ b/code/orphaned_procs/dbcore.dm @@ -1,4 +1,4 @@ - +//This file was auto-corrected by findeclaration.exe on 25.5.2012 20:42:31 //cursors #define Default_Cursor 0 diff --git a/code/orphaned_procs/priority_announce.dm b/code/orphaned_procs/priority_announce.dm index 1ad4a33f8f..38e1a24d5d 100644 --- a/code/orphaned_procs/priority_announce.dm +++ b/code/orphaned_procs/priority_announce.dm @@ -25,7 +25,7 @@ announcement += "
    " for(var/mob/M in player_list) - if(!isnewplayer(M) && !M.ear_deaf) + if(!istype(M,/mob/new_player) && !M.ear_deaf) M << announcement if(M.client.prefs.toggles & SOUND_ANNOUNCEMENTS) M << sound(sound) @@ -45,7 +45,7 @@ return for(var/mob/M in player_list) - if(!isnewplayer(M) && !M.ear_deaf) + if(!istype(M,/mob/new_player) && !M.ear_deaf) M << "[title]
    [message]

    " if(M.client.prefs.toggles & SOUND_ANNOUNCEMENTS) if(alert) diff --git a/goon/icons/obj/goon_terminals.dmi b/goon/icons/obj/goon_terminals.dmi deleted file mode 100644 index 6452c9fc09..0000000000 Binary files a/goon/icons/obj/goon_terminals.dmi and /dev/null differ diff --git a/goon/icons/obj/hydroponics.dmi b/goon/icons/obj/hydroponics.dmi deleted file mode 100644 index 5fb5d4ed8d..0000000000 Binary files a/goon/icons/obj/hydroponics.dmi and /dev/null differ diff --git a/html/IRV/jquery-1.10.2.min.js b/html/IRV/jquery-1.10.2.min.js deleted file mode 100644 index da4170647d..0000000000 --- a/html/IRV/jquery-1.10.2.min.js +++ /dev/null @@ -1,6 +0,0 @@ -/*! jQuery v1.10.2 | (c) 2005, 2013 jQuery Foundation, Inc. | jquery.org/license -//@ sourceMappingURL=jquery-1.10.2.min.map -*/ -(function(e,t){var n,r,i=typeof t,o=e.location,a=e.document,s=a.documentElement,l=e.jQuery,u=e.$,c={},p=[],f="1.10.2",d=p.concat,h=p.push,g=p.slice,m=p.indexOf,y=c.toString,v=c.hasOwnProperty,b=f.trim,x=function(e,t){return new x.fn.init(e,t,r)},w=/[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/.source,T=/\S+/g,C=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,N=/^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]*))$/,k=/^<(\w+)\s*\/?>(?:<\/\1>|)$/,E=/^[\],:{}\s]*$/,S=/(?:^|:|,)(?:\s*\[)+/g,A=/\\(?:["\\\/bfnrt]|u[\da-fA-F]{4})/g,j=/"[^"\\\r\n]*"|true|false|null|-?(?:\d+\.|)\d+(?:[eE][+-]?\d+|)/g,D=/^-ms-/,L=/-([\da-z])/gi,H=function(e,t){return t.toUpperCase()},q=function(e){(a.addEventListener||"load"===e.type||"complete"===a.readyState)&&(_(),x.ready())},_=function(){a.addEventListener?(a.removeEventListener("DOMContentLoaded",q,!1),e.removeEventListener("load",q,!1)):(a.detachEvent("onreadystatechange",q),e.detachEvent("onload",q))};x.fn=x.prototype={jquery:f,constructor:x,init:function(e,n,r){var i,o;if(!e)return this;if("string"==typeof e){if(i="<"===e.charAt(0)&&">"===e.charAt(e.length-1)&&e.length>=3?[null,e,null]:N.exec(e),!i||!i[1]&&n)return!n||n.jquery?(n||r).find(e):this.constructor(n).find(e);if(i[1]){if(n=n instanceof x?n[0]:n,x.merge(this,x.parseHTML(i[1],n&&n.nodeType?n.ownerDocument||n:a,!0)),k.test(i[1])&&x.isPlainObject(n))for(i in n)x.isFunction(this[i])?this[i](n[i]):this.attr(i,n[i]);return this}if(o=a.getElementById(i[2]),o&&o.parentNode){if(o.id!==i[2])return r.find(e);this.length=1,this[0]=o}return this.context=a,this.selector=e,this}return e.nodeType?(this.context=this[0]=e,this.length=1,this):x.isFunction(e)?r.ready(e):(e.selector!==t&&(this.selector=e.selector,this.context=e.context),x.makeArray(e,this))},selector:"",length:0,toArray:function(){return g.call(this)},get:function(e){return null==e?this.toArray():0>e?this[this.length+e]:this[e]},pushStack:function(e){var t=x.merge(this.constructor(),e);return t.prevObject=this,t.context=this.context,t},each:function(e,t){return x.each(this,e,t)},ready:function(e){return x.ready.promise().done(e),this},slice:function(){return this.pushStack(g.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},eq:function(e){var t=this.length,n=+e+(0>e?t:0);return this.pushStack(n>=0&&t>n?[this[n]]:[])},map:function(e){return this.pushStack(x.map(this,function(t,n){return e.call(t,n,t)}))},end:function(){return this.prevObject||this.constructor(null)},push:h,sort:[].sort,splice:[].splice},x.fn.init.prototype=x.fn,x.extend=x.fn.extend=function(){var e,n,r,i,o,a,s=arguments[0]||{},l=1,u=arguments.length,c=!1;for("boolean"==typeof s&&(c=s,s=arguments[1]||{},l=2),"object"==typeof s||x.isFunction(s)||(s={}),u===l&&(s=this,--l);u>l;l++)if(null!=(o=arguments[l]))for(i in o)e=s[i],r=o[i],s!==r&&(c&&r&&(x.isPlainObject(r)||(n=x.isArray(r)))?(n?(n=!1,a=e&&x.isArray(e)?e:[]):a=e&&x.isPlainObject(e)?e:{},s[i]=x.extend(c,a,r)):r!==t&&(s[i]=r));return s},x.extend({expando:"jQuery"+(f+Math.random()).replace(/\D/g,""),noConflict:function(t){return e.$===x&&(e.$=u),t&&e.jQuery===x&&(e.jQuery=l),x},isReady:!1,readyWait:1,holdReady:function(e){e?x.readyWait++:x.ready(!0)},ready:function(e){if(e===!0?!--x.readyWait:!x.isReady){if(!a.body)return setTimeout(x.ready);x.isReady=!0,e!==!0&&--x.readyWait>0||(n.resolveWith(a,[x]),x.fn.trigger&&x(a).trigger("ready").off("ready"))}},isFunction:function(e){return"function"===x.type(e)},isArray:Array.isArray||function(e){return"array"===x.type(e)},isWindow:function(e){return null!=e&&e==e.window},isNumeric:function(e){return!isNaN(parseFloat(e))&&isFinite(e)},type:function(e){return null==e?e+"":"object"==typeof e||"function"==typeof e?c[y.call(e)]||"object":typeof e},isPlainObject:function(e){var n;if(!e||"object"!==x.type(e)||e.nodeType||x.isWindow(e))return!1;try{if(e.constructor&&!v.call(e,"constructor")&&!v.call(e.constructor.prototype,"isPrototypeOf"))return!1}catch(r){return!1}if(x.support.ownLast)for(n in e)return v.call(e,n);for(n in e);return n===t||v.call(e,n)},isEmptyObject:function(e){var t;for(t in e)return!1;return!0},error:function(e){throw Error(e)},parseHTML:function(e,t,n){if(!e||"string"!=typeof e)return null;"boolean"==typeof t&&(n=t,t=!1),t=t||a;var r=k.exec(e),i=!n&&[];return r?[t.createElement(r[1])]:(r=x.buildFragment([e],t,i),i&&x(i).remove(),x.merge([],r.childNodes))},parseJSON:function(n){return e.JSON&&e.JSON.parse?e.JSON.parse(n):null===n?n:"string"==typeof n&&(n=x.trim(n),n&&E.test(n.replace(A,"@").replace(j,"]").replace(S,"")))?Function("return "+n)():(x.error("Invalid JSON: "+n),t)},parseXML:function(n){var r,i;if(!n||"string"!=typeof n)return null;try{e.DOMParser?(i=new DOMParser,r=i.parseFromString(n,"text/xml")):(r=new ActiveXObject("Microsoft.XMLDOM"),r.async="false",r.loadXML(n))}catch(o){r=t}return r&&r.documentElement&&!r.getElementsByTagName("parsererror").length||x.error("Invalid XML: "+n),r},noop:function(){},globalEval:function(t){t&&x.trim(t)&&(e.execScript||function(t){e.eval.call(e,t)})(t)},camelCase:function(e){return e.replace(D,"ms-").replace(L,H)},nodeName:function(e,t){return e.nodeName&&e.nodeName.toLowerCase()===t.toLowerCase()},each:function(e,t,n){var r,i=0,o=e.length,a=M(e);if(n){if(a){for(;o>i;i++)if(r=t.apply(e[i],n),r===!1)break}else for(i in e)if(r=t.apply(e[i],n),r===!1)break}else if(a){for(;o>i;i++)if(r=t.call(e[i],i,e[i]),r===!1)break}else for(i in e)if(r=t.call(e[i],i,e[i]),r===!1)break;return e},trim:b&&!b.call("\ufeff\u00a0")?function(e){return null==e?"":b.call(e)}:function(e){return null==e?"":(e+"").replace(C,"")},makeArray:function(e,t){var n=t||[];return null!=e&&(M(Object(e))?x.merge(n,"string"==typeof e?[e]:e):h.call(n,e)),n},inArray:function(e,t,n){var r;if(t){if(m)return m.call(t,e,n);for(r=t.length,n=n?0>n?Math.max(0,r+n):n:0;r>n;n++)if(n in t&&t[n]===e)return n}return-1},merge:function(e,n){var r=n.length,i=e.length,o=0;if("number"==typeof r)for(;r>o;o++)e[i++]=n[o];else while(n[o]!==t)e[i++]=n[o++];return e.length=i,e},grep:function(e,t,n){var r,i=[],o=0,a=e.length;for(n=!!n;a>o;o++)r=!!t(e[o],o),n!==r&&i.push(e[o]);return i},map:function(e,t,n){var r,i=0,o=e.length,a=M(e),s=[];if(a)for(;o>i;i++)r=t(e[i],i,n),null!=r&&(s[s.length]=r);else for(i in e)r=t(e[i],i,n),null!=r&&(s[s.length]=r);return d.apply([],s)},guid:1,proxy:function(e,n){var r,i,o;return"string"==typeof n&&(o=e[n],n=e,e=o),x.isFunction(e)?(r=g.call(arguments,2),i=function(){return e.apply(n||this,r.concat(g.call(arguments)))},i.guid=e.guid=e.guid||x.guid++,i):t},access:function(e,n,r,i,o,a,s){var l=0,u=e.length,c=null==r;if("object"===x.type(r)){o=!0;for(l in r)x.access(e,n,l,r[l],!0,a,s)}else if(i!==t&&(o=!0,x.isFunction(i)||(s=!0),c&&(s?(n.call(e,i),n=null):(c=n,n=function(e,t,n){return c.call(x(e),n)})),n))for(;u>l;l++)n(e[l],r,s?i:i.call(e[l],l,n(e[l],r)));return o?e:c?n.call(e):u?n(e[0],r):a},now:function(){return(new Date).getTime()},swap:function(e,t,n,r){var i,o,a={};for(o in t)a[o]=e.style[o],e.style[o]=t[o];i=n.apply(e,r||[]);for(o in t)e.style[o]=a[o];return i}}),x.ready.promise=function(t){if(!n)if(n=x.Deferred(),"complete"===a.readyState)setTimeout(x.ready);else if(a.addEventListener)a.addEventListener("DOMContentLoaded",q,!1),e.addEventListener("load",q,!1);else{a.attachEvent("onreadystatechange",q),e.attachEvent("onload",q);var r=!1;try{r=null==e.frameElement&&a.documentElement}catch(i){}r&&r.doScroll&&function o(){if(!x.isReady){try{r.doScroll("left")}catch(e){return setTimeout(o,50)}_(),x.ready()}}()}return n.promise(t)},x.each("Boolean Number String Function Array Date RegExp Object Error".split(" "),function(e,t){c["[object "+t+"]"]=t.toLowerCase()});function M(e){var t=e.length,n=x.type(e);return x.isWindow(e)?!1:1===e.nodeType&&t?!0:"array"===n||"function"!==n&&(0===t||"number"==typeof t&&t>0&&t-1 in e)}r=x(a),function(e,t){var n,r,i,o,a,s,l,u,c,p,f,d,h,g,m,y,v,b="sizzle"+-new Date,w=e.document,T=0,C=0,N=st(),k=st(),E=st(),S=!1,A=function(e,t){return e===t?(S=!0,0):0},j=typeof t,D=1<<31,L={}.hasOwnProperty,H=[],q=H.pop,_=H.push,M=H.push,O=H.slice,F=H.indexOf||function(e){var t=0,n=this.length;for(;n>t;t++)if(this[t]===e)return t;return-1},B="checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped",P="[\\x20\\t\\r\\n\\f]",R="(?:\\\\.|[\\w-]|[^\\x00-\\xa0])+",W=R.replace("w","w#"),$="\\["+P+"*("+R+")"+P+"*(?:([*^$|!~]?=)"+P+"*(?:(['\"])((?:\\\\.|[^\\\\])*?)\\3|("+W+")|)|)"+P+"*\\]",I=":("+R+")(?:\\(((['\"])((?:\\\\.|[^\\\\])*?)\\3|((?:\\\\.|[^\\\\()[\\]]|"+$.replace(3,8)+")*)|.*)\\)|)",z=RegExp("^"+P+"+|((?:^|[^\\\\])(?:\\\\.)*)"+P+"+$","g"),X=RegExp("^"+P+"*,"+P+"*"),U=RegExp("^"+P+"*([>+~]|"+P+")"+P+"*"),V=RegExp(P+"*[+~]"),Y=RegExp("="+P+"*([^\\]'\"]*)"+P+"*\\]","g"),J=RegExp(I),G=RegExp("^"+W+"$"),Q={ID:RegExp("^#("+R+")"),CLASS:RegExp("^\\.("+R+")"),TAG:RegExp("^("+R.replace("w","w*")+")"),ATTR:RegExp("^"+$),PSEUDO:RegExp("^"+I),CHILD:RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+P+"*(even|odd|(([+-]|)(\\d*)n|)"+P+"*(?:([+-]|)"+P+"*(\\d+)|))"+P+"*\\)|)","i"),bool:RegExp("^(?:"+B+")$","i"),needsContext:RegExp("^"+P+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+P+"*((?:-\\d)?\\d*)"+P+"*\\)|)(?=[^-]|$)","i")},K=/^[^{]+\{\s*\[native \w/,Z=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,et=/^(?:input|select|textarea|button)$/i,tt=/^h\d$/i,nt=/'|\\/g,rt=RegExp("\\\\([\\da-f]{1,6}"+P+"?|("+P+")|.)","ig"),it=function(e,t,n){var r="0x"+t-65536;return r!==r||n?t:0>r?String.fromCharCode(r+65536):String.fromCharCode(55296|r>>10,56320|1023&r)};try{M.apply(H=O.call(w.childNodes),w.childNodes),H[w.childNodes.length].nodeType}catch(ot){M={apply:H.length?function(e,t){_.apply(e,O.call(t))}:function(e,t){var n=e.length,r=0;while(e[n++]=t[r++]);e.length=n-1}}}function at(e,t,n,i){var o,a,s,l,u,c,d,m,y,x;if((t?t.ownerDocument||t:w)!==f&&p(t),t=t||f,n=n||[],!e||"string"!=typeof e)return n;if(1!==(l=t.nodeType)&&9!==l)return[];if(h&&!i){if(o=Z.exec(e))if(s=o[1]){if(9===l){if(a=t.getElementById(s),!a||!a.parentNode)return n;if(a.id===s)return n.push(a),n}else if(t.ownerDocument&&(a=t.ownerDocument.getElementById(s))&&v(t,a)&&a.id===s)return n.push(a),n}else{if(o[2])return M.apply(n,t.getElementsByTagName(e)),n;if((s=o[3])&&r.getElementsByClassName&&t.getElementsByClassName)return M.apply(n,t.getElementsByClassName(s)),n}if(r.qsa&&(!g||!g.test(e))){if(m=d=b,y=t,x=9===l&&e,1===l&&"object"!==t.nodeName.toLowerCase()){c=mt(e),(d=t.getAttribute("id"))?m=d.replace(nt,"\\$&"):t.setAttribute("id",m),m="[id='"+m+"'] ",u=c.length;while(u--)c[u]=m+yt(c[u]);y=V.test(e)&&t.parentNode||t,x=c.join(",")}if(x)try{return M.apply(n,y.querySelectorAll(x)),n}catch(T){}finally{d||t.removeAttribute("id")}}}return kt(e.replace(z,"$1"),t,n,i)}function st(){var e=[];function t(n,r){return e.push(n+=" ")>o.cacheLength&&delete t[e.shift()],t[n]=r}return t}function lt(e){return e[b]=!0,e}function ut(e){var t=f.createElement("div");try{return!!e(t)}catch(n){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null}}function ct(e,t){var n=e.split("|"),r=e.length;while(r--)o.attrHandle[n[r]]=t}function pt(e,t){var n=t&&e,r=n&&1===e.nodeType&&1===t.nodeType&&(~t.sourceIndex||D)-(~e.sourceIndex||D);if(r)return r;if(n)while(n=n.nextSibling)if(n===t)return-1;return e?1:-1}function ft(e){return function(t){var n=t.nodeName.toLowerCase();return"input"===n&&t.type===e}}function dt(e){return function(t){var n=t.nodeName.toLowerCase();return("input"===n||"button"===n)&&t.type===e}}function ht(e){return lt(function(t){return t=+t,lt(function(n,r){var i,o=e([],n.length,t),a=o.length;while(a--)n[i=o[a]]&&(n[i]=!(r[i]=n[i]))})})}s=at.isXML=function(e){var t=e&&(e.ownerDocument||e).documentElement;return t?"HTML"!==t.nodeName:!1},r=at.support={},p=at.setDocument=function(e){var n=e?e.ownerDocument||e:w,i=n.defaultView;return n!==f&&9===n.nodeType&&n.documentElement?(f=n,d=n.documentElement,h=!s(n),i&&i.attachEvent&&i!==i.top&&i.attachEvent("onbeforeunload",function(){p()}),r.attributes=ut(function(e){return e.className="i",!e.getAttribute("className")}),r.getElementsByTagName=ut(function(e){return e.appendChild(n.createComment("")),!e.getElementsByTagName("*").length}),r.getElementsByClassName=ut(function(e){return e.innerHTML="
    ",e.firstChild.className="i",2===e.getElementsByClassName("i").length}),r.getById=ut(function(e){return d.appendChild(e).id=b,!n.getElementsByName||!n.getElementsByName(b).length}),r.getById?(o.find.ID=function(e,t){if(typeof t.getElementById!==j&&h){var n=t.getElementById(e);return n&&n.parentNode?[n]:[]}},o.filter.ID=function(e){var t=e.replace(rt,it);return function(e){return e.getAttribute("id")===t}}):(delete o.find.ID,o.filter.ID=function(e){var t=e.replace(rt,it);return function(e){var n=typeof e.getAttributeNode!==j&&e.getAttributeNode("id");return n&&n.value===t}}),o.find.TAG=r.getElementsByTagName?function(e,n){return typeof n.getElementsByTagName!==j?n.getElementsByTagName(e):t}:function(e,t){var n,r=[],i=0,o=t.getElementsByTagName(e);if("*"===e){while(n=o[i++])1===n.nodeType&&r.push(n);return r}return o},o.find.CLASS=r.getElementsByClassName&&function(e,n){return typeof n.getElementsByClassName!==j&&h?n.getElementsByClassName(e):t},m=[],g=[],(r.qsa=K.test(n.querySelectorAll))&&(ut(function(e){e.innerHTML="",e.querySelectorAll("[selected]").length||g.push("\\["+P+"*(?:value|"+B+")"),e.querySelectorAll(":checked").length||g.push(":checked")}),ut(function(e){var t=n.createElement("input");t.setAttribute("type","hidden"),e.appendChild(t).setAttribute("t",""),e.querySelectorAll("[t^='']").length&&g.push("[*^$]="+P+"*(?:''|\"\")"),e.querySelectorAll(":enabled").length||g.push(":enabled",":disabled"),e.querySelectorAll("*,:x"),g.push(",.*:")})),(r.matchesSelector=K.test(y=d.webkitMatchesSelector||d.mozMatchesSelector||d.oMatchesSelector||d.msMatchesSelector))&&ut(function(e){r.disconnectedMatch=y.call(e,"div"),y.call(e,"[s!='']:x"),m.push("!=",I)}),g=g.length&&RegExp(g.join("|")),m=m.length&&RegExp(m.join("|")),v=K.test(d.contains)||d.compareDocumentPosition?function(e,t){var n=9===e.nodeType?e.documentElement:e,r=t&&t.parentNode;return e===r||!(!r||1!==r.nodeType||!(n.contains?n.contains(r):e.compareDocumentPosition&&16&e.compareDocumentPosition(r)))}:function(e,t){if(t)while(t=t.parentNode)if(t===e)return!0;return!1},A=d.compareDocumentPosition?function(e,t){if(e===t)return S=!0,0;var i=t.compareDocumentPosition&&e.compareDocumentPosition&&e.compareDocumentPosition(t);return i?1&i||!r.sortDetached&&t.compareDocumentPosition(e)===i?e===n||v(w,e)?-1:t===n||v(w,t)?1:c?F.call(c,e)-F.call(c,t):0:4&i?-1:1:e.compareDocumentPosition?-1:1}:function(e,t){var r,i=0,o=e.parentNode,a=t.parentNode,s=[e],l=[t];if(e===t)return S=!0,0;if(!o||!a)return e===n?-1:t===n?1:o?-1:a?1:c?F.call(c,e)-F.call(c,t):0;if(o===a)return pt(e,t);r=e;while(r=r.parentNode)s.unshift(r);r=t;while(r=r.parentNode)l.unshift(r);while(s[i]===l[i])i++;return i?pt(s[i],l[i]):s[i]===w?-1:l[i]===w?1:0},n):f},at.matches=function(e,t){return at(e,null,null,t)},at.matchesSelector=function(e,t){if((e.ownerDocument||e)!==f&&p(e),t=t.replace(Y,"='$1']"),!(!r.matchesSelector||!h||m&&m.test(t)||g&&g.test(t)))try{var n=y.call(e,t);if(n||r.disconnectedMatch||e.document&&11!==e.document.nodeType)return n}catch(i){}return at(t,f,null,[e]).length>0},at.contains=function(e,t){return(e.ownerDocument||e)!==f&&p(e),v(e,t)},at.attr=function(e,n){(e.ownerDocument||e)!==f&&p(e);var i=o.attrHandle[n.toLowerCase()],a=i&&L.call(o.attrHandle,n.toLowerCase())?i(e,n,!h):t;return a===t?r.attributes||!h?e.getAttribute(n):(a=e.getAttributeNode(n))&&a.specified?a.value:null:a},at.error=function(e){throw Error("Syntax error, unrecognized expression: "+e)},at.uniqueSort=function(e){var t,n=[],i=0,o=0;if(S=!r.detectDuplicates,c=!r.sortStable&&e.slice(0),e.sort(A),S){while(t=e[o++])t===e[o]&&(i=n.push(o));while(i--)e.splice(n[i],1)}return e},a=at.getText=function(e){var t,n="",r=0,i=e.nodeType;if(i){if(1===i||9===i||11===i){if("string"==typeof e.textContent)return e.textContent;for(e=e.firstChild;e;e=e.nextSibling)n+=a(e)}else if(3===i||4===i)return e.nodeValue}else for(;t=e[r];r++)n+=a(t);return n},o=at.selectors={cacheLength:50,createPseudo:lt,match:Q,attrHandle:{},find:{},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(rt,it),e[3]=(e[4]||e[5]||"").replace(rt,it),"~="===e[2]&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),"nth"===e[1].slice(0,3)?(e[3]||at.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*("even"===e[3]||"odd"===e[3])),e[5]=+(e[7]+e[8]||"odd"===e[3])):e[3]&&at.error(e[0]),e},PSEUDO:function(e){var n,r=!e[5]&&e[2];return Q.CHILD.test(e[0])?null:(e[3]&&e[4]!==t?e[2]=e[4]:r&&J.test(r)&&(n=mt(r,!0))&&(n=r.indexOf(")",r.length-n)-r.length)&&(e[0]=e[0].slice(0,n),e[2]=r.slice(0,n)),e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace(rt,it).toLowerCase();return"*"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=N[e+" "];return t||(t=RegExp("(^|"+P+")"+e+"("+P+"|$)"))&&N(e,function(e){return t.test("string"==typeof e.className&&e.className||typeof e.getAttribute!==j&&e.getAttribute("class")||"")})},ATTR:function(e,t,n){return function(r){var i=at.attr(r,e);return null==i?"!="===t:t?(i+="","="===t?i===n:"!="===t?i!==n:"^="===t?n&&0===i.indexOf(n):"*="===t?n&&i.indexOf(n)>-1:"$="===t?n&&i.slice(-n.length)===n:"~="===t?(" "+i+" ").indexOf(n)>-1:"|="===t?i===n||i.slice(0,n.length+1)===n+"-":!1):!0}},CHILD:function(e,t,n,r,i){var o="nth"!==e.slice(0,3),a="last"!==e.slice(-4),s="of-type"===t;return 1===r&&0===i?function(e){return!!e.parentNode}:function(t,n,l){var u,c,p,f,d,h,g=o!==a?"nextSibling":"previousSibling",m=t.parentNode,y=s&&t.nodeName.toLowerCase(),v=!l&&!s;if(m){if(o){while(g){p=t;while(p=p[g])if(s?p.nodeName.toLowerCase()===y:1===p.nodeType)return!1;h=g="only"===e&&!h&&"nextSibling"}return!0}if(h=[a?m.firstChild:m.lastChild],a&&v){c=m[b]||(m[b]={}),u=c[e]||[],d=u[0]===T&&u[1],f=u[0]===T&&u[2],p=d&&m.childNodes[d];while(p=++d&&p&&p[g]||(f=d=0)||h.pop())if(1===p.nodeType&&++f&&p===t){c[e]=[T,d,f];break}}else if(v&&(u=(t[b]||(t[b]={}))[e])&&u[0]===T)f=u[1];else while(p=++d&&p&&p[g]||(f=d=0)||h.pop())if((s?p.nodeName.toLowerCase()===y:1===p.nodeType)&&++f&&(v&&((p[b]||(p[b]={}))[e]=[T,f]),p===t))break;return f-=i,f===r||0===f%r&&f/r>=0}}},PSEUDO:function(e,t){var n,r=o.pseudos[e]||o.setFilters[e.toLowerCase()]||at.error("unsupported pseudo: "+e);return r[b]?r(t):r.length>1?(n=[e,e,"",t],o.setFilters.hasOwnProperty(e.toLowerCase())?lt(function(e,n){var i,o=r(e,t),a=o.length;while(a--)i=F.call(e,o[a]),e[i]=!(n[i]=o[a])}):function(e){return r(e,0,n)}):r}},pseudos:{not:lt(function(e){var t=[],n=[],r=l(e.replace(z,"$1"));return r[b]?lt(function(e,t,n,i){var o,a=r(e,null,i,[]),s=e.length;while(s--)(o=a[s])&&(e[s]=!(t[s]=o))}):function(e,i,o){return t[0]=e,r(t,null,o,n),!n.pop()}}),has:lt(function(e){return function(t){return at(e,t).length>0}}),contains:lt(function(e){return function(t){return(t.textContent||t.innerText||a(t)).indexOf(e)>-1}}),lang:lt(function(e){return G.test(e||"")||at.error("unsupported lang: "+e),e=e.replace(rt,it).toLowerCase(),function(t){var n;do if(n=h?t.lang:t.getAttribute("xml:lang")||t.getAttribute("lang"))return n=n.toLowerCase(),n===e||0===n.indexOf(e+"-");while((t=t.parentNode)&&1===t.nodeType);return!1}}),target:function(t){var n=e.location&&e.location.hash;return n&&n.slice(1)===t.id},root:function(e){return e===d},focus:function(e){return e===f.activeElement&&(!f.hasFocus||f.hasFocus())&&!!(e.type||e.href||~e.tabIndex)},enabled:function(e){return e.disabled===!1},disabled:function(e){return e.disabled===!0},checked:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&!!e.checked||"option"===t&&!!e.selected},selected:function(e){return e.parentNode&&e.parentNode.selectedIndex,e.selected===!0},empty:function(e){for(e=e.firstChild;e;e=e.nextSibling)if(e.nodeName>"@"||3===e.nodeType||4===e.nodeType)return!1;return!0},parent:function(e){return!o.pseudos.empty(e)},header:function(e){return tt.test(e.nodeName)},input:function(e){return et.test(e.nodeName)},button:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&"button"===e.type||"button"===t},text:function(e){var t;return"input"===e.nodeName.toLowerCase()&&"text"===e.type&&(null==(t=e.getAttribute("type"))||t.toLowerCase()===e.type)},first:ht(function(){return[0]}),last:ht(function(e,t){return[t-1]}),eq:ht(function(e,t,n){return[0>n?n+t:n]}),even:ht(function(e,t){var n=0;for(;t>n;n+=2)e.push(n);return e}),odd:ht(function(e,t){var n=1;for(;t>n;n+=2)e.push(n);return e}),lt:ht(function(e,t,n){var r=0>n?n+t:n;for(;--r>=0;)e.push(r);return e}),gt:ht(function(e,t,n){var r=0>n?n+t:n;for(;t>++r;)e.push(r);return e})}},o.pseudos.nth=o.pseudos.eq;for(n in{radio:!0,checkbox:!0,file:!0,password:!0,image:!0})o.pseudos[n]=ft(n);for(n in{submit:!0,reset:!0})o.pseudos[n]=dt(n);function gt(){}gt.prototype=o.filters=o.pseudos,o.setFilters=new gt;function mt(e,t){var n,r,i,a,s,l,u,c=k[e+" "];if(c)return t?0:c.slice(0);s=e,l=[],u=o.preFilter;while(s){(!n||(r=X.exec(s)))&&(r&&(s=s.slice(r[0].length)||s),l.push(i=[])),n=!1,(r=U.exec(s))&&(n=r.shift(),i.push({value:n,type:r[0].replace(z," ")}),s=s.slice(n.length));for(a in o.filter)!(r=Q[a].exec(s))||u[a]&&!(r=u[a](r))||(n=r.shift(),i.push({value:n,type:a,matches:r}),s=s.slice(n.length));if(!n)break}return t?s.length:s?at.error(e):k(e,l).slice(0)}function yt(e){var t=0,n=e.length,r="";for(;n>t;t++)r+=e[t].value;return r}function vt(e,t,n){var r=t.dir,o=n&&"parentNode"===r,a=C++;return t.first?function(t,n,i){while(t=t[r])if(1===t.nodeType||o)return e(t,n,i)}:function(t,n,s){var l,u,c,p=T+" "+a;if(s){while(t=t[r])if((1===t.nodeType||o)&&e(t,n,s))return!0}else while(t=t[r])if(1===t.nodeType||o)if(c=t[b]||(t[b]={}),(u=c[r])&&u[0]===p){if((l=u[1])===!0||l===i)return l===!0}else if(u=c[r]=[p],u[1]=e(t,n,s)||i,u[1]===!0)return!0}}function bt(e){return e.length>1?function(t,n,r){var i=e.length;while(i--)if(!e[i](t,n,r))return!1;return!0}:e[0]}function xt(e,t,n,r,i){var o,a=[],s=0,l=e.length,u=null!=t;for(;l>s;s++)(o=e[s])&&(!n||n(o,r,i))&&(a.push(o),u&&t.push(s));return a}function wt(e,t,n,r,i,o){return r&&!r[b]&&(r=wt(r)),i&&!i[b]&&(i=wt(i,o)),lt(function(o,a,s,l){var u,c,p,f=[],d=[],h=a.length,g=o||Nt(t||"*",s.nodeType?[s]:s,[]),m=!e||!o&&t?g:xt(g,f,e,s,l),y=n?i||(o?e:h||r)?[]:a:m;if(n&&n(m,y,s,l),r){u=xt(y,d),r(u,[],s,l),c=u.length;while(c--)(p=u[c])&&(y[d[c]]=!(m[d[c]]=p))}if(o){if(i||e){if(i){u=[],c=y.length;while(c--)(p=y[c])&&u.push(m[c]=p);i(null,y=[],u,l)}c=y.length;while(c--)(p=y[c])&&(u=i?F.call(o,p):f[c])>-1&&(o[u]=!(a[u]=p))}}else y=xt(y===a?y.splice(h,y.length):y),i?i(null,a,y,l):M.apply(a,y)})}function Tt(e){var t,n,r,i=e.length,a=o.relative[e[0].type],s=a||o.relative[" "],l=a?1:0,c=vt(function(e){return e===t},s,!0),p=vt(function(e){return F.call(t,e)>-1},s,!0),f=[function(e,n,r){return!a&&(r||n!==u)||((t=n).nodeType?c(e,n,r):p(e,n,r))}];for(;i>l;l++)if(n=o.relative[e[l].type])f=[vt(bt(f),n)];else{if(n=o.filter[e[l].type].apply(null,e[l].matches),n[b]){for(r=++l;i>r;r++)if(o.relative[e[r].type])break;return wt(l>1&&bt(f),l>1&&yt(e.slice(0,l-1).concat({value:" "===e[l-2].type?"*":""})).replace(z,"$1"),n,r>l&&Tt(e.slice(l,r)),i>r&&Tt(e=e.slice(r)),i>r&&yt(e))}f.push(n)}return bt(f)}function Ct(e,t){var n=0,r=t.length>0,a=e.length>0,s=function(s,l,c,p,d){var h,g,m,y=[],v=0,b="0",x=s&&[],w=null!=d,C=u,N=s||a&&o.find.TAG("*",d&&l.parentNode||l),k=T+=null==C?1:Math.random()||.1;for(w&&(u=l!==f&&l,i=n);null!=(h=N[b]);b++){if(a&&h){g=0;while(m=e[g++])if(m(h,l,c)){p.push(h);break}w&&(T=k,i=++n)}r&&((h=!m&&h)&&v--,s&&x.push(h))}if(v+=b,r&&b!==v){g=0;while(m=t[g++])m(x,y,l,c);if(s){if(v>0)while(b--)x[b]||y[b]||(y[b]=q.call(p));y=xt(y)}M.apply(p,y),w&&!s&&y.length>0&&v+t.length>1&&at.uniqueSort(p)}return w&&(T=k,u=C),x};return r?lt(s):s}l=at.compile=function(e,t){var n,r=[],i=[],o=E[e+" "];if(!o){t||(t=mt(e)),n=t.length;while(n--)o=Tt(t[n]),o[b]?r.push(o):i.push(o);o=E(e,Ct(i,r))}return o};function Nt(e,t,n){var r=0,i=t.length;for(;i>r;r++)at(e,t[r],n);return n}function kt(e,t,n,i){var a,s,u,c,p,f=mt(e);if(!i&&1===f.length){if(s=f[0]=f[0].slice(0),s.length>2&&"ID"===(u=s[0]).type&&r.getById&&9===t.nodeType&&h&&o.relative[s[1].type]){if(t=(o.find.ID(u.matches[0].replace(rt,it),t)||[])[0],!t)return n;e=e.slice(s.shift().value.length)}a=Q.needsContext.test(e)?0:s.length;while(a--){if(u=s[a],o.relative[c=u.type])break;if((p=o.find[c])&&(i=p(u.matches[0].replace(rt,it),V.test(s[0].type)&&t.parentNode||t))){if(s.splice(a,1),e=i.length&&yt(s),!e)return M.apply(n,i),n;break}}}return l(e,f)(i,t,!h,n,V.test(e)),n}r.sortStable=b.split("").sort(A).join("")===b,r.detectDuplicates=S,p(),r.sortDetached=ut(function(e){return 1&e.compareDocumentPosition(f.createElement("div"))}),ut(function(e){return e.innerHTML="","#"===e.firstChild.getAttribute("href")})||ct("type|href|height|width",function(e,n,r){return r?t:e.getAttribute(n,"type"===n.toLowerCase()?1:2)}),r.attributes&&ut(function(e){return e.innerHTML="",e.firstChild.setAttribute("value",""),""===e.firstChild.getAttribute("value")})||ct("value",function(e,n,r){return r||"input"!==e.nodeName.toLowerCase()?t:e.defaultValue}),ut(function(e){return null==e.getAttribute("disabled")})||ct(B,function(e,n,r){var i;return r?t:(i=e.getAttributeNode(n))&&i.specified?i.value:e[n]===!0?n.toLowerCase():null}),x.find=at,x.expr=at.selectors,x.expr[":"]=x.expr.pseudos,x.unique=at.uniqueSort,x.text=at.getText,x.isXMLDoc=at.isXML,x.contains=at.contains}(e);var O={};function F(e){var t=O[e]={};return x.each(e.match(T)||[],function(e,n){t[n]=!0}),t}x.Callbacks=function(e){e="string"==typeof e?O[e]||F(e):x.extend({},e);var n,r,i,o,a,s,l=[],u=!e.once&&[],c=function(t){for(r=e.memory&&t,i=!0,a=s||0,s=0,o=l.length,n=!0;l&&o>a;a++)if(l[a].apply(t[0],t[1])===!1&&e.stopOnFalse){r=!1;break}n=!1,l&&(u?u.length&&c(u.shift()):r?l=[]:p.disable())},p={add:function(){if(l){var t=l.length;(function i(t){x.each(t,function(t,n){var r=x.type(n);"function"===r?e.unique&&p.has(n)||l.push(n):n&&n.length&&"string"!==r&&i(n)})})(arguments),n?o=l.length:r&&(s=t,c(r))}return this},remove:function(){return l&&x.each(arguments,function(e,t){var r;while((r=x.inArray(t,l,r))>-1)l.splice(r,1),n&&(o>=r&&o--,a>=r&&a--)}),this},has:function(e){return e?x.inArray(e,l)>-1:!(!l||!l.length)},empty:function(){return l=[],o=0,this},disable:function(){return l=u=r=t,this},disabled:function(){return!l},lock:function(){return u=t,r||p.disable(),this},locked:function(){return!u},fireWith:function(e,t){return!l||i&&!u||(t=t||[],t=[e,t.slice?t.slice():t],n?u.push(t):c(t)),this},fire:function(){return p.fireWith(this,arguments),this},fired:function(){return!!i}};return p},x.extend({Deferred:function(e){var t=[["resolve","done",x.Callbacks("once memory"),"resolved"],["reject","fail",x.Callbacks("once memory"),"rejected"],["notify","progress",x.Callbacks("memory")]],n="pending",r={state:function(){return n},always:function(){return i.done(arguments).fail(arguments),this},then:function(){var e=arguments;return x.Deferred(function(n){x.each(t,function(t,o){var a=o[0],s=x.isFunction(e[t])&&e[t];i[o[1]](function(){var e=s&&s.apply(this,arguments);e&&x.isFunction(e.promise)?e.promise().done(n.resolve).fail(n.reject).progress(n.notify):n[a+"With"](this===r?n.promise():this,s?[e]:arguments)})}),e=null}).promise()},promise:function(e){return null!=e?x.extend(e,r):r}},i={};return r.pipe=r.then,x.each(t,function(e,o){var a=o[2],s=o[3];r[o[1]]=a.add,s&&a.add(function(){n=s},t[1^e][2].disable,t[2][2].lock),i[o[0]]=function(){return i[o[0]+"With"](this===i?r:this,arguments),this},i[o[0]+"With"]=a.fireWith}),r.promise(i),e&&e.call(i,i),i},when:function(e){var t=0,n=g.call(arguments),r=n.length,i=1!==r||e&&x.isFunction(e.promise)?r:0,o=1===i?e:x.Deferred(),a=function(e,t,n){return function(r){t[e]=this,n[e]=arguments.length>1?g.call(arguments):r,n===s?o.notifyWith(t,n):--i||o.resolveWith(t,n)}},s,l,u;if(r>1)for(s=Array(r),l=Array(r),u=Array(r);r>t;t++)n[t]&&x.isFunction(n[t].promise)?n[t].promise().done(a(t,u,n)).fail(o.reject).progress(a(t,l,s)):--i;return i||o.resolveWith(u,n),o.promise()}}),x.support=function(t){var n,r,o,s,l,u,c,p,f,d=a.createElement("div");if(d.setAttribute("className","t"),d.innerHTML="
    a",n=d.getElementsByTagName("*")||[],r=d.getElementsByTagName("a")[0],!r||!r.style||!n.length)return t;s=a.createElement("select"),u=s.appendChild(a.createElement("option")),o=d.getElementsByTagName("input")[0],r.style.cssText="top:1px;float:left;opacity:.5",t.getSetAttribute="t"!==d.className,t.leadingWhitespace=3===d.firstChild.nodeType,t.tbody=!d.getElementsByTagName("tbody").length,t.htmlSerialize=!!d.getElementsByTagName("link").length,t.style=/top/.test(r.getAttribute("style")),t.hrefNormalized="/a"===r.getAttribute("href"),t.opacity=/^0.5/.test(r.style.opacity),t.cssFloat=!!r.style.cssFloat,t.checkOn=!!o.value,t.optSelected=u.selected,t.enctype=!!a.createElement("form").enctype,t.html5Clone="<:nav>"!==a.createElement("nav").cloneNode(!0).outerHTML,t.inlineBlockNeedsLayout=!1,t.shrinkWrapBlocks=!1,t.pixelPosition=!1,t.deleteExpando=!0,t.noCloneEvent=!0,t.reliableMarginRight=!0,t.boxSizingReliable=!0,o.checked=!0,t.noCloneChecked=o.cloneNode(!0).checked,s.disabled=!0,t.optDisabled=!u.disabled;try{delete d.test}catch(h){t.deleteExpando=!1}o=a.createElement("input"),o.setAttribute("value",""),t.input=""===o.getAttribute("value"),o.value="t",o.setAttribute("type","radio"),t.radioValue="t"===o.value,o.setAttribute("checked","t"),o.setAttribute("name","t"),l=a.createDocumentFragment(),l.appendChild(o),t.appendChecked=o.checked,t.checkClone=l.cloneNode(!0).cloneNode(!0).lastChild.checked,d.attachEvent&&(d.attachEvent("onclick",function(){t.noCloneEvent=!1}),d.cloneNode(!0).click());for(f in{submit:!0,change:!0,focusin:!0})d.setAttribute(c="on"+f,"t"),t[f+"Bubbles"]=c in e||d.attributes[c].expando===!1;d.style.backgroundClip="content-box",d.cloneNode(!0).style.backgroundClip="",t.clearCloneStyle="content-box"===d.style.backgroundClip;for(f in x(t))break;return t.ownLast="0"!==f,x(function(){var n,r,o,s="padding:0;margin:0;border:0;display:block;box-sizing:content-box;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;",l=a.getElementsByTagName("body")[0];l&&(n=a.createElement("div"),n.style.cssText="border:0;width:0;height:0;position:absolute;top:0;left:-9999px;margin-top:1px",l.appendChild(n).appendChild(d),d.innerHTML="
    t
    ",o=d.getElementsByTagName("td"),o[0].style.cssText="padding:0;margin:0;border:0;display:none",p=0===o[0].offsetHeight,o[0].style.display="",o[1].style.display="none",t.reliableHiddenOffsets=p&&0===o[0].offsetHeight,d.innerHTML="",d.style.cssText="box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;padding:1px;border:1px;display:block;width:4px;margin-top:1%;position:absolute;top:1%;",x.swap(l,null!=l.style.zoom?{zoom:1}:{},function(){t.boxSizing=4===d.offsetWidth}),e.getComputedStyle&&(t.pixelPosition="1%"!==(e.getComputedStyle(d,null)||{}).top,t.boxSizingReliable="4px"===(e.getComputedStyle(d,null)||{width:"4px"}).width,r=d.appendChild(a.createElement("div")),r.style.cssText=d.style.cssText=s,r.style.marginRight=r.style.width="0",d.style.width="1px",t.reliableMarginRight=!parseFloat((e.getComputedStyle(r,null)||{}).marginRight)),typeof d.style.zoom!==i&&(d.innerHTML="",d.style.cssText=s+"width:1px;padding:1px;display:inline;zoom:1",t.inlineBlockNeedsLayout=3===d.offsetWidth,d.style.display="block",d.innerHTML="
    ",d.firstChild.style.width="5px",t.shrinkWrapBlocks=3!==d.offsetWidth,t.inlineBlockNeedsLayout&&(l.style.zoom=1)),l.removeChild(n),n=d=o=r=null)}),n=s=l=u=r=o=null,t -}({});var B=/(?:\{[\s\S]*\}|\[[\s\S]*\])$/,P=/([A-Z])/g;function R(e,n,r,i){if(x.acceptData(e)){var o,a,s=x.expando,l=e.nodeType,u=l?x.cache:e,c=l?e[s]:e[s]&&s;if(c&&u[c]&&(i||u[c].data)||r!==t||"string"!=typeof n)return c||(c=l?e[s]=p.pop()||x.guid++:s),u[c]||(u[c]=l?{}:{toJSON:x.noop}),("object"==typeof n||"function"==typeof n)&&(i?u[c]=x.extend(u[c],n):u[c].data=x.extend(u[c].data,n)),a=u[c],i||(a.data||(a.data={}),a=a.data),r!==t&&(a[x.camelCase(n)]=r),"string"==typeof n?(o=a[n],null==o&&(o=a[x.camelCase(n)])):o=a,o}}function W(e,t,n){if(x.acceptData(e)){var r,i,o=e.nodeType,a=o?x.cache:e,s=o?e[x.expando]:x.expando;if(a[s]){if(t&&(r=n?a[s]:a[s].data)){x.isArray(t)?t=t.concat(x.map(t,x.camelCase)):t in r?t=[t]:(t=x.camelCase(t),t=t in r?[t]:t.split(" ")),i=t.length;while(i--)delete r[t[i]];if(n?!I(r):!x.isEmptyObject(r))return}(n||(delete a[s].data,I(a[s])))&&(o?x.cleanData([e],!0):x.support.deleteExpando||a!=a.window?delete a[s]:a[s]=null)}}}x.extend({cache:{},noData:{applet:!0,embed:!0,object:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"},hasData:function(e){return e=e.nodeType?x.cache[e[x.expando]]:e[x.expando],!!e&&!I(e)},data:function(e,t,n){return R(e,t,n)},removeData:function(e,t){return W(e,t)},_data:function(e,t,n){return R(e,t,n,!0)},_removeData:function(e,t){return W(e,t,!0)},acceptData:function(e){if(e.nodeType&&1!==e.nodeType&&9!==e.nodeType)return!1;var t=e.nodeName&&x.noData[e.nodeName.toLowerCase()];return!t||t!==!0&&e.getAttribute("classid")===t}}),x.fn.extend({data:function(e,n){var r,i,o=null,a=0,s=this[0];if(e===t){if(this.length&&(o=x.data(s),1===s.nodeType&&!x._data(s,"parsedAttrs"))){for(r=s.attributes;r.length>a;a++)i=r[a].name,0===i.indexOf("data-")&&(i=x.camelCase(i.slice(5)),$(s,i,o[i]));x._data(s,"parsedAttrs",!0)}return o}return"object"==typeof e?this.each(function(){x.data(this,e)}):arguments.length>1?this.each(function(){x.data(this,e,n)}):s?$(s,e,x.data(s,e)):null},removeData:function(e){return this.each(function(){x.removeData(this,e)})}});function $(e,n,r){if(r===t&&1===e.nodeType){var i="data-"+n.replace(P,"-$1").toLowerCase();if(r=e.getAttribute(i),"string"==typeof r){try{r="true"===r?!0:"false"===r?!1:"null"===r?null:+r+""===r?+r:B.test(r)?x.parseJSON(r):r}catch(o){}x.data(e,n,r)}else r=t}return r}function I(e){var t;for(t in e)if(("data"!==t||!x.isEmptyObject(e[t]))&&"toJSON"!==t)return!1;return!0}x.extend({queue:function(e,n,r){var i;return e?(n=(n||"fx")+"queue",i=x._data(e,n),r&&(!i||x.isArray(r)?i=x._data(e,n,x.makeArray(r)):i.push(r)),i||[]):t},dequeue:function(e,t){t=t||"fx";var n=x.queue(e,t),r=n.length,i=n.shift(),o=x._queueHooks(e,t),a=function(){x.dequeue(e,t)};"inprogress"===i&&(i=n.shift(),r--),i&&("fx"===t&&n.unshift("inprogress"),delete o.stop,i.call(e,a,o)),!r&&o&&o.empty.fire()},_queueHooks:function(e,t){var n=t+"queueHooks";return x._data(e,n)||x._data(e,n,{empty:x.Callbacks("once memory").add(function(){x._removeData(e,t+"queue"),x._removeData(e,n)})})}}),x.fn.extend({queue:function(e,n){var r=2;return"string"!=typeof e&&(n=e,e="fx",r--),r>arguments.length?x.queue(this[0],e):n===t?this:this.each(function(){var t=x.queue(this,e,n);x._queueHooks(this,e),"fx"===e&&"inprogress"!==t[0]&&x.dequeue(this,e)})},dequeue:function(e){return this.each(function(){x.dequeue(this,e)})},delay:function(e,t){return e=x.fx?x.fx.speeds[e]||e:e,t=t||"fx",this.queue(t,function(t,n){var r=setTimeout(t,e);n.stop=function(){clearTimeout(r)}})},clearQueue:function(e){return this.queue(e||"fx",[])},promise:function(e,n){var r,i=1,o=x.Deferred(),a=this,s=this.length,l=function(){--i||o.resolveWith(a,[a])};"string"!=typeof e&&(n=e,e=t),e=e||"fx";while(s--)r=x._data(a[s],e+"queueHooks"),r&&r.empty&&(i++,r.empty.add(l));return l(),o.promise(n)}});var z,X,U=/[\t\r\n\f]/g,V=/\r/g,Y=/^(?:input|select|textarea|button|object)$/i,J=/^(?:a|area)$/i,G=/^(?:checked|selected)$/i,Q=x.support.getSetAttribute,K=x.support.input;x.fn.extend({attr:function(e,t){return x.access(this,x.attr,e,t,arguments.length>1)},removeAttr:function(e){return this.each(function(){x.removeAttr(this,e)})},prop:function(e,t){return x.access(this,x.prop,e,t,arguments.length>1)},removeProp:function(e){return e=x.propFix[e]||e,this.each(function(){try{this[e]=t,delete this[e]}catch(n){}})},addClass:function(e){var t,n,r,i,o,a=0,s=this.length,l="string"==typeof e&&e;if(x.isFunction(e))return this.each(function(t){x(this).addClass(e.call(this,t,this.className))});if(l)for(t=(e||"").match(T)||[];s>a;a++)if(n=this[a],r=1===n.nodeType&&(n.className?(" "+n.className+" ").replace(U," "):" ")){o=0;while(i=t[o++])0>r.indexOf(" "+i+" ")&&(r+=i+" ");n.className=x.trim(r)}return this},removeClass:function(e){var t,n,r,i,o,a=0,s=this.length,l=0===arguments.length||"string"==typeof e&&e;if(x.isFunction(e))return this.each(function(t){x(this).removeClass(e.call(this,t,this.className))});if(l)for(t=(e||"").match(T)||[];s>a;a++)if(n=this[a],r=1===n.nodeType&&(n.className?(" "+n.className+" ").replace(U," "):"")){o=0;while(i=t[o++])while(r.indexOf(" "+i+" ")>=0)r=r.replace(" "+i+" "," ");n.className=e?x.trim(r):""}return this},toggleClass:function(e,t){var n=typeof e;return"boolean"==typeof t&&"string"===n?t?this.addClass(e):this.removeClass(e):x.isFunction(e)?this.each(function(n){x(this).toggleClass(e.call(this,n,this.className,t),t)}):this.each(function(){if("string"===n){var t,r=0,o=x(this),a=e.match(T)||[];while(t=a[r++])o.hasClass(t)?o.removeClass(t):o.addClass(t)}else(n===i||"boolean"===n)&&(this.className&&x._data(this,"__className__",this.className),this.className=this.className||e===!1?"":x._data(this,"__className__")||"")})},hasClass:function(e){var t=" "+e+" ",n=0,r=this.length;for(;r>n;n++)if(1===this[n].nodeType&&(" "+this[n].className+" ").replace(U," ").indexOf(t)>=0)return!0;return!1},val:function(e){var n,r,i,o=this[0];{if(arguments.length)return i=x.isFunction(e),this.each(function(n){var o;1===this.nodeType&&(o=i?e.call(this,n,x(this).val()):e,null==o?o="":"number"==typeof o?o+="":x.isArray(o)&&(o=x.map(o,function(e){return null==e?"":e+""})),r=x.valHooks[this.type]||x.valHooks[this.nodeName.toLowerCase()],r&&"set"in r&&r.set(this,o,"value")!==t||(this.value=o))});if(o)return r=x.valHooks[o.type]||x.valHooks[o.nodeName.toLowerCase()],r&&"get"in r&&(n=r.get(o,"value"))!==t?n:(n=o.value,"string"==typeof n?n.replace(V,""):null==n?"":n)}}}),x.extend({valHooks:{option:{get:function(e){var t=x.find.attr(e,"value");return null!=t?t:e.text}},select:{get:function(e){var t,n,r=e.options,i=e.selectedIndex,o="select-one"===e.type||0>i,a=o?null:[],s=o?i+1:r.length,l=0>i?s:o?i:0;for(;s>l;l++)if(n=r[l],!(!n.selected&&l!==i||(x.support.optDisabled?n.disabled:null!==n.getAttribute("disabled"))||n.parentNode.disabled&&x.nodeName(n.parentNode,"optgroup"))){if(t=x(n).val(),o)return t;a.push(t)}return a},set:function(e,t){var n,r,i=e.options,o=x.makeArray(t),a=i.length;while(a--)r=i[a],(r.selected=x.inArray(x(r).val(),o)>=0)&&(n=!0);return n||(e.selectedIndex=-1),o}}},attr:function(e,n,r){var o,a,s=e.nodeType;if(e&&3!==s&&8!==s&&2!==s)return typeof e.getAttribute===i?x.prop(e,n,r):(1===s&&x.isXMLDoc(e)||(n=n.toLowerCase(),o=x.attrHooks[n]||(x.expr.match.bool.test(n)?X:z)),r===t?o&&"get"in o&&null!==(a=o.get(e,n))?a:(a=x.find.attr(e,n),null==a?t:a):null!==r?o&&"set"in o&&(a=o.set(e,r,n))!==t?a:(e.setAttribute(n,r+""),r):(x.removeAttr(e,n),t))},removeAttr:function(e,t){var n,r,i=0,o=t&&t.match(T);if(o&&1===e.nodeType)while(n=o[i++])r=x.propFix[n]||n,x.expr.match.bool.test(n)?K&&Q||!G.test(n)?e[r]=!1:e[x.camelCase("default-"+n)]=e[r]=!1:x.attr(e,n,""),e.removeAttribute(Q?n:r)},attrHooks:{type:{set:function(e,t){if(!x.support.radioValue&&"radio"===t&&x.nodeName(e,"input")){var n=e.value;return e.setAttribute("type",t),n&&(e.value=n),t}}}},propFix:{"for":"htmlFor","class":"className"},prop:function(e,n,r){var i,o,a,s=e.nodeType;if(e&&3!==s&&8!==s&&2!==s)return a=1!==s||!x.isXMLDoc(e),a&&(n=x.propFix[n]||n,o=x.propHooks[n]),r!==t?o&&"set"in o&&(i=o.set(e,r,n))!==t?i:e[n]=r:o&&"get"in o&&null!==(i=o.get(e,n))?i:e[n]},propHooks:{tabIndex:{get:function(e){var t=x.find.attr(e,"tabindex");return t?parseInt(t,10):Y.test(e.nodeName)||J.test(e.nodeName)&&e.href?0:-1}}}}),X={set:function(e,t,n){return t===!1?x.removeAttr(e,n):K&&Q||!G.test(n)?e.setAttribute(!Q&&x.propFix[n]||n,n):e[x.camelCase("default-"+n)]=e[n]=!0,n}},x.each(x.expr.match.bool.source.match(/\w+/g),function(e,n){var r=x.expr.attrHandle[n]||x.find.attr;x.expr.attrHandle[n]=K&&Q||!G.test(n)?function(e,n,i){var o=x.expr.attrHandle[n],a=i?t:(x.expr.attrHandle[n]=t)!=r(e,n,i)?n.toLowerCase():null;return x.expr.attrHandle[n]=o,a}:function(e,n,r){return r?t:e[x.camelCase("default-"+n)]?n.toLowerCase():null}}),K&&Q||(x.attrHooks.value={set:function(e,n,r){return x.nodeName(e,"input")?(e.defaultValue=n,t):z&&z.set(e,n,r)}}),Q||(z={set:function(e,n,r){var i=e.getAttributeNode(r);return i||e.setAttributeNode(i=e.ownerDocument.createAttribute(r)),i.value=n+="","value"===r||n===e.getAttribute(r)?n:t}},x.expr.attrHandle.id=x.expr.attrHandle.name=x.expr.attrHandle.coords=function(e,n,r){var i;return r?t:(i=e.getAttributeNode(n))&&""!==i.value?i.value:null},x.valHooks.button={get:function(e,n){var r=e.getAttributeNode(n);return r&&r.specified?r.value:t},set:z.set},x.attrHooks.contenteditable={set:function(e,t,n){z.set(e,""===t?!1:t,n)}},x.each(["width","height"],function(e,n){x.attrHooks[n]={set:function(e,r){return""===r?(e.setAttribute(n,"auto"),r):t}}})),x.support.hrefNormalized||x.each(["href","src"],function(e,t){x.propHooks[t]={get:function(e){return e.getAttribute(t,4)}}}),x.support.style||(x.attrHooks.style={get:function(e){return e.style.cssText||t},set:function(e,t){return e.style.cssText=t+""}}),x.support.optSelected||(x.propHooks.selected={get:function(e){var t=e.parentNode;return t&&(t.selectedIndex,t.parentNode&&t.parentNode.selectedIndex),null}}),x.each(["tabIndex","readOnly","maxLength","cellSpacing","cellPadding","rowSpan","colSpan","useMap","frameBorder","contentEditable"],function(){x.propFix[this.toLowerCase()]=this}),x.support.enctype||(x.propFix.enctype="encoding"),x.each(["radio","checkbox"],function(){x.valHooks[this]={set:function(e,n){return x.isArray(n)?e.checked=x.inArray(x(e).val(),n)>=0:t}},x.support.checkOn||(x.valHooks[this].get=function(e){return null===e.getAttribute("value")?"on":e.value})});var Z=/^(?:input|select|textarea)$/i,et=/^key/,tt=/^(?:mouse|contextmenu)|click/,nt=/^(?:focusinfocus|focusoutblur)$/,rt=/^([^.]*)(?:\.(.+)|)$/;function it(){return!0}function ot(){return!1}function at(){try{return a.activeElement}catch(e){}}x.event={global:{},add:function(e,n,r,o,a){var s,l,u,c,p,f,d,h,g,m,y,v=x._data(e);if(v){r.handler&&(c=r,r=c.handler,a=c.selector),r.guid||(r.guid=x.guid++),(l=v.events)||(l=v.events={}),(f=v.handle)||(f=v.handle=function(e){return typeof x===i||e&&x.event.triggered===e.type?t:x.event.dispatch.apply(f.elem,arguments)},f.elem=e),n=(n||"").match(T)||[""],u=n.length;while(u--)s=rt.exec(n[u])||[],g=y=s[1],m=(s[2]||"").split(".").sort(),g&&(p=x.event.special[g]||{},g=(a?p.delegateType:p.bindType)||g,p=x.event.special[g]||{},d=x.extend({type:g,origType:y,data:o,handler:r,guid:r.guid,selector:a,needsContext:a&&x.expr.match.needsContext.test(a),namespace:m.join(".")},c),(h=l[g])||(h=l[g]=[],h.delegateCount=0,p.setup&&p.setup.call(e,o,m,f)!==!1||(e.addEventListener?e.addEventListener(g,f,!1):e.attachEvent&&e.attachEvent("on"+g,f))),p.add&&(p.add.call(e,d),d.handler.guid||(d.handler.guid=r.guid)),a?h.splice(h.delegateCount++,0,d):h.push(d),x.event.global[g]=!0);e=null}},remove:function(e,t,n,r,i){var o,a,s,l,u,c,p,f,d,h,g,m=x.hasData(e)&&x._data(e);if(m&&(c=m.events)){t=(t||"").match(T)||[""],u=t.length;while(u--)if(s=rt.exec(t[u])||[],d=g=s[1],h=(s[2]||"").split(".").sort(),d){p=x.event.special[d]||{},d=(r?p.delegateType:p.bindType)||d,f=c[d]||[],s=s[2]&&RegExp("(^|\\.)"+h.join("\\.(?:.*\\.|)")+"(\\.|$)"),l=o=f.length;while(o--)a=f[o],!i&&g!==a.origType||n&&n.guid!==a.guid||s&&!s.test(a.namespace)||r&&r!==a.selector&&("**"!==r||!a.selector)||(f.splice(o,1),a.selector&&f.delegateCount--,p.remove&&p.remove.call(e,a));l&&!f.length&&(p.teardown&&p.teardown.call(e,h,m.handle)!==!1||x.removeEvent(e,d,m.handle),delete c[d])}else for(d in c)x.event.remove(e,d+t[u],n,r,!0);x.isEmptyObject(c)&&(delete m.handle,x._removeData(e,"events"))}},trigger:function(n,r,i,o){var s,l,u,c,p,f,d,h=[i||a],g=v.call(n,"type")?n.type:n,m=v.call(n,"namespace")?n.namespace.split("."):[];if(u=f=i=i||a,3!==i.nodeType&&8!==i.nodeType&&!nt.test(g+x.event.triggered)&&(g.indexOf(".")>=0&&(m=g.split("."),g=m.shift(),m.sort()),l=0>g.indexOf(":")&&"on"+g,n=n[x.expando]?n:new x.Event(g,"object"==typeof n&&n),n.isTrigger=o?2:3,n.namespace=m.join("."),n.namespace_re=n.namespace?RegExp("(^|\\.)"+m.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,n.result=t,n.target||(n.target=i),r=null==r?[n]:x.makeArray(r,[n]),p=x.event.special[g]||{},o||!p.trigger||p.trigger.apply(i,r)!==!1)){if(!o&&!p.noBubble&&!x.isWindow(i)){for(c=p.delegateType||g,nt.test(c+g)||(u=u.parentNode);u;u=u.parentNode)h.push(u),f=u;f===(i.ownerDocument||a)&&h.push(f.defaultView||f.parentWindow||e)}d=0;while((u=h[d++])&&!n.isPropagationStopped())n.type=d>1?c:p.bindType||g,s=(x._data(u,"events")||{})[n.type]&&x._data(u,"handle"),s&&s.apply(u,r),s=l&&u[l],s&&x.acceptData(u)&&s.apply&&s.apply(u,r)===!1&&n.preventDefault();if(n.type=g,!o&&!n.isDefaultPrevented()&&(!p._default||p._default.apply(h.pop(),r)===!1)&&x.acceptData(i)&&l&&i[g]&&!x.isWindow(i)){f=i[l],f&&(i[l]=null),x.event.triggered=g;try{i[g]()}catch(y){}x.event.triggered=t,f&&(i[l]=f)}return n.result}},dispatch:function(e){e=x.event.fix(e);var n,r,i,o,a,s=[],l=g.call(arguments),u=(x._data(this,"events")||{})[e.type]||[],c=x.event.special[e.type]||{};if(l[0]=e,e.delegateTarget=this,!c.preDispatch||c.preDispatch.call(this,e)!==!1){s=x.event.handlers.call(this,e,u),n=0;while((o=s[n++])&&!e.isPropagationStopped()){e.currentTarget=o.elem,a=0;while((i=o.handlers[a++])&&!e.isImmediatePropagationStopped())(!e.namespace_re||e.namespace_re.test(i.namespace))&&(e.handleObj=i,e.data=i.data,r=((x.event.special[i.origType]||{}).handle||i.handler).apply(o.elem,l),r!==t&&(e.result=r)===!1&&(e.preventDefault(),e.stopPropagation()))}return c.postDispatch&&c.postDispatch.call(this,e),e.result}},handlers:function(e,n){var r,i,o,a,s=[],l=n.delegateCount,u=e.target;if(l&&u.nodeType&&(!e.button||"click"!==e.type))for(;u!=this;u=u.parentNode||this)if(1===u.nodeType&&(u.disabled!==!0||"click"!==e.type)){for(o=[],a=0;l>a;a++)i=n[a],r=i.selector+" ",o[r]===t&&(o[r]=i.needsContext?x(r,this).index(u)>=0:x.find(r,this,null,[u]).length),o[r]&&o.push(i);o.length&&s.push({elem:u,handlers:o})}return n.length>l&&s.push({elem:this,handlers:n.slice(l)}),s},fix:function(e){if(e[x.expando])return e;var t,n,r,i=e.type,o=e,s=this.fixHooks[i];s||(this.fixHooks[i]=s=tt.test(i)?this.mouseHooks:et.test(i)?this.keyHooks:{}),r=s.props?this.props.concat(s.props):this.props,e=new x.Event(o),t=r.length;while(t--)n=r[t],e[n]=o[n];return e.target||(e.target=o.srcElement||a),3===e.target.nodeType&&(e.target=e.target.parentNode),e.metaKey=!!e.metaKey,s.filter?s.filter(e,o):e},props:"altKey bubbles cancelable ctrlKey currentTarget eventPhase metaKey relatedTarget shiftKey target timeStamp view which".split(" "),fixHooks:{},keyHooks:{props:"char charCode key keyCode".split(" "),filter:function(e,t){return null==e.which&&(e.which=null!=t.charCode?t.charCode:t.keyCode),e}},mouseHooks:{props:"button buttons clientX clientY fromElement offsetX offsetY pageX pageY screenX screenY toElement".split(" "),filter:function(e,n){var r,i,o,s=n.button,l=n.fromElement;return null==e.pageX&&null!=n.clientX&&(i=e.target.ownerDocument||a,o=i.documentElement,r=i.body,e.pageX=n.clientX+(o&&o.scrollLeft||r&&r.scrollLeft||0)-(o&&o.clientLeft||r&&r.clientLeft||0),e.pageY=n.clientY+(o&&o.scrollTop||r&&r.scrollTop||0)-(o&&o.clientTop||r&&r.clientTop||0)),!e.relatedTarget&&l&&(e.relatedTarget=l===e.target?n.toElement:l),e.which||s===t||(e.which=1&s?1:2&s?3:4&s?2:0),e}},special:{load:{noBubble:!0},focus:{trigger:function(){if(this!==at()&&this.focus)try{return this.focus(),!1}catch(e){}},delegateType:"focusin"},blur:{trigger:function(){return this===at()&&this.blur?(this.blur(),!1):t},delegateType:"focusout"},click:{trigger:function(){return x.nodeName(this,"input")&&"checkbox"===this.type&&this.click?(this.click(),!1):t},_default:function(e){return x.nodeName(e.target,"a")}},beforeunload:{postDispatch:function(e){e.result!==t&&(e.originalEvent.returnValue=e.result)}}},simulate:function(e,t,n,r){var i=x.extend(new x.Event,n,{type:e,isSimulated:!0,originalEvent:{}});r?x.event.trigger(i,null,t):x.event.dispatch.call(t,i),i.isDefaultPrevented()&&n.preventDefault()}},x.removeEvent=a.removeEventListener?function(e,t,n){e.removeEventListener&&e.removeEventListener(t,n,!1)}:function(e,t,n){var r="on"+t;e.detachEvent&&(typeof e[r]===i&&(e[r]=null),e.detachEvent(r,n))},x.Event=function(e,n){return this instanceof x.Event?(e&&e.type?(this.originalEvent=e,this.type=e.type,this.isDefaultPrevented=e.defaultPrevented||e.returnValue===!1||e.getPreventDefault&&e.getPreventDefault()?it:ot):this.type=e,n&&x.extend(this,n),this.timeStamp=e&&e.timeStamp||x.now(),this[x.expando]=!0,t):new x.Event(e,n)},x.Event.prototype={isDefaultPrevented:ot,isPropagationStopped:ot,isImmediatePropagationStopped:ot,preventDefault:function(){var e=this.originalEvent;this.isDefaultPrevented=it,e&&(e.preventDefault?e.preventDefault():e.returnValue=!1)},stopPropagation:function(){var e=this.originalEvent;this.isPropagationStopped=it,e&&(e.stopPropagation&&e.stopPropagation(),e.cancelBubble=!0)},stopImmediatePropagation:function(){this.isImmediatePropagationStopped=it,this.stopPropagation()}},x.each({mouseenter:"mouseover",mouseleave:"mouseout"},function(e,t){x.event.special[e]={delegateType:t,bindType:t,handle:function(e){var n,r=this,i=e.relatedTarget,o=e.handleObj;return(!i||i!==r&&!x.contains(r,i))&&(e.type=o.origType,n=o.handler.apply(this,arguments),e.type=t),n}}}),x.support.submitBubbles||(x.event.special.submit={setup:function(){return x.nodeName(this,"form")?!1:(x.event.add(this,"click._submit keypress._submit",function(e){var n=e.target,r=x.nodeName(n,"input")||x.nodeName(n,"button")?n.form:t;r&&!x._data(r,"submitBubbles")&&(x.event.add(r,"submit._submit",function(e){e._submit_bubble=!0}),x._data(r,"submitBubbles",!0))}),t)},postDispatch:function(e){e._submit_bubble&&(delete e._submit_bubble,this.parentNode&&!e.isTrigger&&x.event.simulate("submit",this.parentNode,e,!0))},teardown:function(){return x.nodeName(this,"form")?!1:(x.event.remove(this,"._submit"),t)}}),x.support.changeBubbles||(x.event.special.change={setup:function(){return Z.test(this.nodeName)?(("checkbox"===this.type||"radio"===this.type)&&(x.event.add(this,"propertychange._change",function(e){"checked"===e.originalEvent.propertyName&&(this._just_changed=!0)}),x.event.add(this,"click._change",function(e){this._just_changed&&!e.isTrigger&&(this._just_changed=!1),x.event.simulate("change",this,e,!0)})),!1):(x.event.add(this,"beforeactivate._change",function(e){var t=e.target;Z.test(t.nodeName)&&!x._data(t,"changeBubbles")&&(x.event.add(t,"change._change",function(e){!this.parentNode||e.isSimulated||e.isTrigger||x.event.simulate("change",this.parentNode,e,!0)}),x._data(t,"changeBubbles",!0))}),t)},handle:function(e){var n=e.target;return this!==n||e.isSimulated||e.isTrigger||"radio"!==n.type&&"checkbox"!==n.type?e.handleObj.handler.apply(this,arguments):t},teardown:function(){return x.event.remove(this,"._change"),!Z.test(this.nodeName)}}),x.support.focusinBubbles||x.each({focus:"focusin",blur:"focusout"},function(e,t){var n=0,r=function(e){x.event.simulate(t,e.target,x.event.fix(e),!0)};x.event.special[t]={setup:function(){0===n++&&a.addEventListener(e,r,!0)},teardown:function(){0===--n&&a.removeEventListener(e,r,!0)}}}),x.fn.extend({on:function(e,n,r,i,o){var a,s;if("object"==typeof e){"string"!=typeof n&&(r=r||n,n=t);for(a in e)this.on(a,n,r,e[a],o);return this}if(null==r&&null==i?(i=n,r=n=t):null==i&&("string"==typeof n?(i=r,r=t):(i=r,r=n,n=t)),i===!1)i=ot;else if(!i)return this;return 1===o&&(s=i,i=function(e){return x().off(e),s.apply(this,arguments)},i.guid=s.guid||(s.guid=x.guid++)),this.each(function(){x.event.add(this,e,i,r,n)})},one:function(e,t,n,r){return this.on(e,t,n,r,1)},off:function(e,n,r){var i,o;if(e&&e.preventDefault&&e.handleObj)return i=e.handleObj,x(e.delegateTarget).off(i.namespace?i.origType+"."+i.namespace:i.origType,i.selector,i.handler),this;if("object"==typeof e){for(o in e)this.off(o,n,e[o]);return this}return(n===!1||"function"==typeof n)&&(r=n,n=t),r===!1&&(r=ot),this.each(function(){x.event.remove(this,e,r,n)})},trigger:function(e,t){return this.each(function(){x.event.trigger(e,t,this)})},triggerHandler:function(e,n){var r=this[0];return r?x.event.trigger(e,n,r,!0):t}});var st=/^.[^:#\[\.,]*$/,lt=/^(?:parents|prev(?:Until|All))/,ut=x.expr.match.needsContext,ct={children:!0,contents:!0,next:!0,prev:!0};x.fn.extend({find:function(e){var t,n=[],r=this,i=r.length;if("string"!=typeof e)return this.pushStack(x(e).filter(function(){for(t=0;i>t;t++)if(x.contains(r[t],this))return!0}));for(t=0;i>t;t++)x.find(e,r[t],n);return n=this.pushStack(i>1?x.unique(n):n),n.selector=this.selector?this.selector+" "+e:e,n},has:function(e){var t,n=x(e,this),r=n.length;return this.filter(function(){for(t=0;r>t;t++)if(x.contains(this,n[t]))return!0})},not:function(e){return this.pushStack(ft(this,e||[],!0))},filter:function(e){return this.pushStack(ft(this,e||[],!1))},is:function(e){return!!ft(this,"string"==typeof e&&ut.test(e)?x(e):e||[],!1).length},closest:function(e,t){var n,r=0,i=this.length,o=[],a=ut.test(e)||"string"!=typeof e?x(e,t||this.context):0;for(;i>r;r++)for(n=this[r];n&&n!==t;n=n.parentNode)if(11>n.nodeType&&(a?a.index(n)>-1:1===n.nodeType&&x.find.matchesSelector(n,e))){n=o.push(n);break}return this.pushStack(o.length>1?x.unique(o):o)},index:function(e){return e?"string"==typeof e?x.inArray(this[0],x(e)):x.inArray(e.jquery?e[0]:e,this):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(e,t){var n="string"==typeof e?x(e,t):x.makeArray(e&&e.nodeType?[e]:e),r=x.merge(this.get(),n);return this.pushStack(x.unique(r))},addBack:function(e){return this.add(null==e?this.prevObject:this.prevObject.filter(e))}});function pt(e,t){do e=e[t];while(e&&1!==e.nodeType);return e}x.each({parent:function(e){var t=e.parentNode;return t&&11!==t.nodeType?t:null},parents:function(e){return x.dir(e,"parentNode")},parentsUntil:function(e,t,n){return x.dir(e,"parentNode",n)},next:function(e){return pt(e,"nextSibling")},prev:function(e){return pt(e,"previousSibling")},nextAll:function(e){return x.dir(e,"nextSibling")},prevAll:function(e){return x.dir(e,"previousSibling")},nextUntil:function(e,t,n){return x.dir(e,"nextSibling",n)},prevUntil:function(e,t,n){return x.dir(e,"previousSibling",n)},siblings:function(e){return x.sibling((e.parentNode||{}).firstChild,e)},children:function(e){return x.sibling(e.firstChild)},contents:function(e){return x.nodeName(e,"iframe")?e.contentDocument||e.contentWindow.document:x.merge([],e.childNodes)}},function(e,t){x.fn[e]=function(n,r){var i=x.map(this,t,n);return"Until"!==e.slice(-5)&&(r=n),r&&"string"==typeof r&&(i=x.filter(r,i)),this.length>1&&(ct[e]||(i=x.unique(i)),lt.test(e)&&(i=i.reverse())),this.pushStack(i)}}),x.extend({filter:function(e,t,n){var r=t[0];return n&&(e=":not("+e+")"),1===t.length&&1===r.nodeType?x.find.matchesSelector(r,e)?[r]:[]:x.find.matches(e,x.grep(t,function(e){return 1===e.nodeType}))},dir:function(e,n,r){var i=[],o=e[n];while(o&&9!==o.nodeType&&(r===t||1!==o.nodeType||!x(o).is(r)))1===o.nodeType&&i.push(o),o=o[n];return i},sibling:function(e,t){var n=[];for(;e;e=e.nextSibling)1===e.nodeType&&e!==t&&n.push(e);return n}});function ft(e,t,n){if(x.isFunction(t))return x.grep(e,function(e,r){return!!t.call(e,r,e)!==n});if(t.nodeType)return x.grep(e,function(e){return e===t!==n});if("string"==typeof t){if(st.test(t))return x.filter(t,e,n);t=x.filter(t,e)}return x.grep(e,function(e){return x.inArray(e,t)>=0!==n})}function dt(e){var t=ht.split("|"),n=e.createDocumentFragment();if(n.createElement)while(t.length)n.createElement(t.pop());return n}var ht="abbr|article|aside|audio|bdi|canvas|data|datalist|details|figcaption|figure|footer|header|hgroup|mark|meter|nav|output|progress|section|summary|time|video",gt=/ jQuery\d+="(?:null|\d+)"/g,mt=RegExp("<(?:"+ht+")[\\s/>]","i"),yt=/^\s+/,vt=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/gi,bt=/<([\w:]+)/,xt=/
  10. ","
    "],tr:[2,"","
    "],col:[2,"","
    "],td:[3,"","
    "],_default:x.support.htmlSerialize?[0,"",""]:[1,"X
    ","
    "]},jt=dt(a),Dt=jt.appendChild(a.createElement("div"));At.optgroup=At.option,At.tbody=At.tfoot=At.colgroup=At.caption=At.thead,At.th=At.td,x.fn.extend({text:function(e){return x.access(this,function(e){return e===t?x.text(this):this.empty().append((this[0]&&this[0].ownerDocument||a).createTextNode(e))},null,e,arguments.length)},append:function(){return this.domManip(arguments,function(e){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var t=Lt(this,e);t.appendChild(e)}})},prepend:function(){return this.domManip(arguments,function(e){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var t=Lt(this,e);t.insertBefore(e,t.firstChild)}})},before:function(){return this.domManip(arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this)})},after:function(){return this.domManip(arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this.nextSibling)})},remove:function(e,t){var n,r=e?x.filter(e,this):this,i=0;for(;null!=(n=r[i]);i++)t||1!==n.nodeType||x.cleanData(Ft(n)),n.parentNode&&(t&&x.contains(n.ownerDocument,n)&&_t(Ft(n,"script")),n.parentNode.removeChild(n));return this},empty:function(){var e,t=0;for(;null!=(e=this[t]);t++){1===e.nodeType&&x.cleanData(Ft(e,!1));while(e.firstChild)e.removeChild(e.firstChild);e.options&&x.nodeName(e,"select")&&(e.options.length=0)}return this},clone:function(e,t){return e=null==e?!1:e,t=null==t?e:t,this.map(function(){return x.clone(this,e,t)})},html:function(e){return x.access(this,function(e){var n=this[0]||{},r=0,i=this.length;if(e===t)return 1===n.nodeType?n.innerHTML.replace(gt,""):t;if(!("string"!=typeof e||Tt.test(e)||!x.support.htmlSerialize&&mt.test(e)||!x.support.leadingWhitespace&&yt.test(e)||At[(bt.exec(e)||["",""])[1].toLowerCase()])){e=e.replace(vt,"<$1>");try{for(;i>r;r++)n=this[r]||{},1===n.nodeType&&(x.cleanData(Ft(n,!1)),n.innerHTML=e);n=0}catch(o){}}n&&this.empty().append(e)},null,e,arguments.length)},replaceWith:function(){var e=x.map(this,function(e){return[e.nextSibling,e.parentNode]}),t=0;return this.domManip(arguments,function(n){var r=e[t++],i=e[t++];i&&(r&&r.parentNode!==i&&(r=this.nextSibling),x(this).remove(),i.insertBefore(n,r))},!0),t?this:this.remove()},detach:function(e){return this.remove(e,!0)},domManip:function(e,t,n){e=d.apply([],e);var r,i,o,a,s,l,u=0,c=this.length,p=this,f=c-1,h=e[0],g=x.isFunction(h);if(g||!(1>=c||"string"!=typeof h||x.support.checkClone)&&Nt.test(h))return this.each(function(r){var i=p.eq(r);g&&(e[0]=h.call(this,r,i.html())),i.domManip(e,t,n)});if(c&&(l=x.buildFragment(e,this[0].ownerDocument,!1,!n&&this),r=l.firstChild,1===l.childNodes.length&&(l=r),r)){for(a=x.map(Ft(l,"script"),Ht),o=a.length;c>u;u++)i=l,u!==f&&(i=x.clone(i,!0,!0),o&&x.merge(a,Ft(i,"script"))),t.call(this[u],i,u);if(o)for(s=a[a.length-1].ownerDocument,x.map(a,qt),u=0;o>u;u++)i=a[u],kt.test(i.type||"")&&!x._data(i,"globalEval")&&x.contains(s,i)&&(i.src?x._evalUrl(i.src):x.globalEval((i.text||i.textContent||i.innerHTML||"").replace(St,"")));l=r=null}return this}});function Lt(e,t){return x.nodeName(e,"table")&&x.nodeName(1===t.nodeType?t:t.firstChild,"tr")?e.getElementsByTagName("tbody")[0]||e.appendChild(e.ownerDocument.createElement("tbody")):e}function Ht(e){return e.type=(null!==x.find.attr(e,"type"))+"/"+e.type,e}function qt(e){var t=Et.exec(e.type);return t?e.type=t[1]:e.removeAttribute("type"),e}function _t(e,t){var n,r=0;for(;null!=(n=e[r]);r++)x._data(n,"globalEval",!t||x._data(t[r],"globalEval"))}function Mt(e,t){if(1===t.nodeType&&x.hasData(e)){var n,r,i,o=x._data(e),a=x._data(t,o),s=o.events;if(s){delete a.handle,a.events={};for(n in s)for(r=0,i=s[n].length;i>r;r++)x.event.add(t,n,s[n][r])}a.data&&(a.data=x.extend({},a.data))}}function Ot(e,t){var n,r,i;if(1===t.nodeType){if(n=t.nodeName.toLowerCase(),!x.support.noCloneEvent&&t[x.expando]){i=x._data(t);for(r in i.events)x.removeEvent(t,r,i.handle);t.removeAttribute(x.expando)}"script"===n&&t.text!==e.text?(Ht(t).text=e.text,qt(t)):"object"===n?(t.parentNode&&(t.outerHTML=e.outerHTML),x.support.html5Clone&&e.innerHTML&&!x.trim(t.innerHTML)&&(t.innerHTML=e.innerHTML)):"input"===n&&Ct.test(e.type)?(t.defaultChecked=t.checked=e.checked,t.value!==e.value&&(t.value=e.value)):"option"===n?t.defaultSelected=t.selected=e.defaultSelected:("input"===n||"textarea"===n)&&(t.defaultValue=e.defaultValue)}}x.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(e,t){x.fn[e]=function(e){var n,r=0,i=[],o=x(e),a=o.length-1;for(;a>=r;r++)n=r===a?this:this.clone(!0),x(o[r])[t](n),h.apply(i,n.get());return this.pushStack(i)}});function Ft(e,n){var r,o,a=0,s=typeof e.getElementsByTagName!==i?e.getElementsByTagName(n||"*"):typeof e.querySelectorAll!==i?e.querySelectorAll(n||"*"):t;if(!s)for(s=[],r=e.childNodes||e;null!=(o=r[a]);a++)!n||x.nodeName(o,n)?s.push(o):x.merge(s,Ft(o,n));return n===t||n&&x.nodeName(e,n)?x.merge([e],s):s}function Bt(e){Ct.test(e.type)&&(e.defaultChecked=e.checked)}x.extend({clone:function(e,t,n){var r,i,o,a,s,l=x.contains(e.ownerDocument,e);if(x.support.html5Clone||x.isXMLDoc(e)||!mt.test("<"+e.nodeName+">")?o=e.cloneNode(!0):(Dt.innerHTML=e.outerHTML,Dt.removeChild(o=Dt.firstChild)),!(x.support.noCloneEvent&&x.support.noCloneChecked||1!==e.nodeType&&11!==e.nodeType||x.isXMLDoc(e)))for(r=Ft(o),s=Ft(e),a=0;null!=(i=s[a]);++a)r[a]&&Ot(i,r[a]);if(t)if(n)for(s=s||Ft(e),r=r||Ft(o),a=0;null!=(i=s[a]);a++)Mt(i,r[a]);else Mt(e,o);return r=Ft(o,"script"),r.length>0&&_t(r,!l&&Ft(e,"script")),r=s=i=null,o},buildFragment:function(e,t,n,r){var i,o,a,s,l,u,c,p=e.length,f=dt(t),d=[],h=0;for(;p>h;h++)if(o=e[h],o||0===o)if("object"===x.type(o))x.merge(d,o.nodeType?[o]:o);else if(wt.test(o)){s=s||f.appendChild(t.createElement("div")),l=(bt.exec(o)||["",""])[1].toLowerCase(),c=At[l]||At._default,s.innerHTML=c[1]+o.replace(vt,"<$1>")+c[2],i=c[0];while(i--)s=s.lastChild;if(!x.support.leadingWhitespace&&yt.test(o)&&d.push(t.createTextNode(yt.exec(o)[0])),!x.support.tbody){o="table"!==l||xt.test(o)?""!==c[1]||xt.test(o)?0:s:s.firstChild,i=o&&o.childNodes.length;while(i--)x.nodeName(u=o.childNodes[i],"tbody")&&!u.childNodes.length&&o.removeChild(u)}x.merge(d,s.childNodes),s.textContent="";while(s.firstChild)s.removeChild(s.firstChild);s=f.lastChild}else d.push(t.createTextNode(o));s&&f.removeChild(s),x.support.appendChecked||x.grep(Ft(d,"input"),Bt),h=0;while(o=d[h++])if((!r||-1===x.inArray(o,r))&&(a=x.contains(o.ownerDocument,o),s=Ft(f.appendChild(o),"script"),a&&_t(s),n)){i=0;while(o=s[i++])kt.test(o.type||"")&&n.push(o)}return s=null,f},cleanData:function(e,t){var n,r,o,a,s=0,l=x.expando,u=x.cache,c=x.support.deleteExpando,f=x.event.special;for(;null!=(n=e[s]);s++)if((t||x.acceptData(n))&&(o=n[l],a=o&&u[o])){if(a.events)for(r in a.events)f[r]?x.event.remove(n,r):x.removeEvent(n,r,a.handle); -u[o]&&(delete u[o],c?delete n[l]:typeof n.removeAttribute!==i?n.removeAttribute(l):n[l]=null,p.push(o))}},_evalUrl:function(e){return x.ajax({url:e,type:"GET",dataType:"script",async:!1,global:!1,"throws":!0})}}),x.fn.extend({wrapAll:function(e){if(x.isFunction(e))return this.each(function(t){x(this).wrapAll(e.call(this,t))});if(this[0]){var t=x(e,this[0].ownerDocument).eq(0).clone(!0);this[0].parentNode&&t.insertBefore(this[0]),t.map(function(){var e=this;while(e.firstChild&&1===e.firstChild.nodeType)e=e.firstChild;return e}).append(this)}return this},wrapInner:function(e){return x.isFunction(e)?this.each(function(t){x(this).wrapInner(e.call(this,t))}):this.each(function(){var t=x(this),n=t.contents();n.length?n.wrapAll(e):t.append(e)})},wrap:function(e){var t=x.isFunction(e);return this.each(function(n){x(this).wrapAll(t?e.call(this,n):e)})},unwrap:function(){return this.parent().each(function(){x.nodeName(this,"body")||x(this).replaceWith(this.childNodes)}).end()}});var Pt,Rt,Wt,$t=/alpha\([^)]*\)/i,It=/opacity\s*=\s*([^)]*)/,zt=/^(top|right|bottom|left)$/,Xt=/^(none|table(?!-c[ea]).+)/,Ut=/^margin/,Vt=RegExp("^("+w+")(.*)$","i"),Yt=RegExp("^("+w+")(?!px)[a-z%]+$","i"),Jt=RegExp("^([+-])=("+w+")","i"),Gt={BODY:"block"},Qt={position:"absolute",visibility:"hidden",display:"block"},Kt={letterSpacing:0,fontWeight:400},Zt=["Top","Right","Bottom","Left"],en=["Webkit","O","Moz","ms"];function tn(e,t){if(t in e)return t;var n=t.charAt(0).toUpperCase()+t.slice(1),r=t,i=en.length;while(i--)if(t=en[i]+n,t in e)return t;return r}function nn(e,t){return e=t||e,"none"===x.css(e,"display")||!x.contains(e.ownerDocument,e)}function rn(e,t){var n,r,i,o=[],a=0,s=e.length;for(;s>a;a++)r=e[a],r.style&&(o[a]=x._data(r,"olddisplay"),n=r.style.display,t?(o[a]||"none"!==n||(r.style.display=""),""===r.style.display&&nn(r)&&(o[a]=x._data(r,"olddisplay",ln(r.nodeName)))):o[a]||(i=nn(r),(n&&"none"!==n||!i)&&x._data(r,"olddisplay",i?n:x.css(r,"display"))));for(a=0;s>a;a++)r=e[a],r.style&&(t&&"none"!==r.style.display&&""!==r.style.display||(r.style.display=t?o[a]||"":"none"));return e}x.fn.extend({css:function(e,n){return x.access(this,function(e,n,r){var i,o,a={},s=0;if(x.isArray(n)){for(o=Rt(e),i=n.length;i>s;s++)a[n[s]]=x.css(e,n[s],!1,o);return a}return r!==t?x.style(e,n,r):x.css(e,n)},e,n,arguments.length>1)},show:function(){return rn(this,!0)},hide:function(){return rn(this)},toggle:function(e){return"boolean"==typeof e?e?this.show():this.hide():this.each(function(){nn(this)?x(this).show():x(this).hide()})}}),x.extend({cssHooks:{opacity:{get:function(e,t){if(t){var n=Wt(e,"opacity");return""===n?"1":n}}}},cssNumber:{columnCount:!0,fillOpacity:!0,fontWeight:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{"float":x.support.cssFloat?"cssFloat":"styleFloat"},style:function(e,n,r,i){if(e&&3!==e.nodeType&&8!==e.nodeType&&e.style){var o,a,s,l=x.camelCase(n),u=e.style;if(n=x.cssProps[l]||(x.cssProps[l]=tn(u,l)),s=x.cssHooks[n]||x.cssHooks[l],r===t)return s&&"get"in s&&(o=s.get(e,!1,i))!==t?o:u[n];if(a=typeof r,"string"===a&&(o=Jt.exec(r))&&(r=(o[1]+1)*o[2]+parseFloat(x.css(e,n)),a="number"),!(null==r||"number"===a&&isNaN(r)||("number"!==a||x.cssNumber[l]||(r+="px"),x.support.clearCloneStyle||""!==r||0!==n.indexOf("background")||(u[n]="inherit"),s&&"set"in s&&(r=s.set(e,r,i))===t)))try{u[n]=r}catch(c){}}},css:function(e,n,r,i){var o,a,s,l=x.camelCase(n);return n=x.cssProps[l]||(x.cssProps[l]=tn(e.style,l)),s=x.cssHooks[n]||x.cssHooks[l],s&&"get"in s&&(a=s.get(e,!0,r)),a===t&&(a=Wt(e,n,i)),"normal"===a&&n in Kt&&(a=Kt[n]),""===r||r?(o=parseFloat(a),r===!0||x.isNumeric(o)?o||0:a):a}}),e.getComputedStyle?(Rt=function(t){return e.getComputedStyle(t,null)},Wt=function(e,n,r){var i,o,a,s=r||Rt(e),l=s?s.getPropertyValue(n)||s[n]:t,u=e.style;return s&&(""!==l||x.contains(e.ownerDocument,e)||(l=x.style(e,n)),Yt.test(l)&&Ut.test(n)&&(i=u.width,o=u.minWidth,a=u.maxWidth,u.minWidth=u.maxWidth=u.width=l,l=s.width,u.width=i,u.minWidth=o,u.maxWidth=a)),l}):a.documentElement.currentStyle&&(Rt=function(e){return e.currentStyle},Wt=function(e,n,r){var i,o,a,s=r||Rt(e),l=s?s[n]:t,u=e.style;return null==l&&u&&u[n]&&(l=u[n]),Yt.test(l)&&!zt.test(n)&&(i=u.left,o=e.runtimeStyle,a=o&&o.left,a&&(o.left=e.currentStyle.left),u.left="fontSize"===n?"1em":l,l=u.pixelLeft+"px",u.left=i,a&&(o.left=a)),""===l?"auto":l});function on(e,t,n){var r=Vt.exec(t);return r?Math.max(0,r[1]-(n||0))+(r[2]||"px"):t}function an(e,t,n,r,i){var o=n===(r?"border":"content")?4:"width"===t?1:0,a=0;for(;4>o;o+=2)"margin"===n&&(a+=x.css(e,n+Zt[o],!0,i)),r?("content"===n&&(a-=x.css(e,"padding"+Zt[o],!0,i)),"margin"!==n&&(a-=x.css(e,"border"+Zt[o]+"Width",!0,i))):(a+=x.css(e,"padding"+Zt[o],!0,i),"padding"!==n&&(a+=x.css(e,"border"+Zt[o]+"Width",!0,i)));return a}function sn(e,t,n){var r=!0,i="width"===t?e.offsetWidth:e.offsetHeight,o=Rt(e),a=x.support.boxSizing&&"border-box"===x.css(e,"boxSizing",!1,o);if(0>=i||null==i){if(i=Wt(e,t,o),(0>i||null==i)&&(i=e.style[t]),Yt.test(i))return i;r=a&&(x.support.boxSizingReliable||i===e.style[t]),i=parseFloat(i)||0}return i+an(e,t,n||(a?"border":"content"),r,o)+"px"}function ln(e){var t=a,n=Gt[e];return n||(n=un(e,t),"none"!==n&&n||(Pt=(Pt||x("